kernel-devel-4.18.0-519.el8 <><  HEz<<<<e8_W U]$| TY?cO@vr3yϠ ⍣,hUWgBϗ`.&?YYwn#ġA\~6ާ Oc15o  ̺IvE.ՂVjjM^+Sw=W*(cz~F|"J A j"[]+Jv<4@De%Za]̆O>y" uFo\RCwښ=׫ 'M*6?{5֚TnEj1'D]Z&#:a~ۦYXòkcIِIzK-psJnd$K :zb21BޏdP{W~O1ҽbѾ&aA~ISvpك\ .r *fNRfЭaYK20t ;I#umàܺ8F\E\=:izhS989f2e916ef8645d330cdc36e9ef29aabe5692ab6cc35d3f476d4948f80a1de2854969746f0bd048e94b2e081338849577abce5b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b7b3bfd931f2d8d02b61ecfeffb157848839005589e3dc89c8f6251b7585ef02c92bfd2f31c14a8cf3caa4acf3a59681023100f53f2b7159d0ed5f881955b013a7dbd8e87852ac883cf25f7d851db5908d84d1d2192fb68aef988cb466181b0ee073930302047c435bb500673065023030dbd29481726b8ce9de0d6afe8325471cb74138a364c277881d3a552d30e6fb14e9187700a8a8c3c2bdf65dcded38b4023100abc9171935d9a125644bf556c3af8ce7aa39711fc9adda77798904384f92c8ad5175cd5f3d6fd7804cdb978c935458450302047c435bb50066306402302d034ca63381aab8bd9d5f3de33f96d899a467481dd4506bdc3f06c4f39ce70b987b176600023a30ea84f88bed374fc00230732576505551a62f17bc021f9220111460f74012f5df23f6e84b4b9cfd520e0a0d09ac1fc71a18f6f24a8c18078418040302047c435bb50067306502310080cd75b2fa7b2eb8bffce5085afb0581d7499df24b6d3043a374b6b58fd020f2a035a2083c75dd68be85a29ec2e7beb30230159888a3da041bdbcbb8e1d3ed58b6a609159b3f3fdc19797297fc92374fd904dfcaf026aa0215ff1013a82c2acb334d0302047c435bb500683066023100be2a2e7d9624aaaaf7beb212585c4d0bbc84f128a5a8278765ec983007dc78a07f9a7c0f5fa093474a39811e3c799886023100bf14a46c3dcf73269cd6bbdc1b1dbba4aa890bbfd2d3767d5e571a4b3ace1a5a58a5e1b554e203d178512ce99f6dd92c0302047c435bb500663064023066c8a670676a603f12138756cc24b7a8b2bceb380074debc490d40a08c243b6c6225a139b7ae237b871451346cc5a7c9023042764f4da12db451dc4a3b5e9838cced6b712c4770b5028402533fdfe6677953507e4651950db47dc1a185938ebd35460302047c435bb500683066023100b1dd99b481e0ed067c82b89a18e521ec4bb3ce1438b003ab500311635140cc435b6475a4a012492f7b2946d8b807e85b023100c09afb63cdb3942ea4cdc24b8bc3cb4470bd244078cecc413b3cdee319c70568614ccdecb8f0198115ea04be60cb4e850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ad5fff372cde2c4d735661fb6f14cfc88cb5d07ff30a19896bfe7c45336e4a95a21903b28e3c97c116efd8c91c9bcc4202302b760f3a98484ff837b04373ca2f461e5a502682d4a63aab253d6e07406c81128b44d45642f4989700b0eb7fc9237a990302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023014f1fcccee17b1b5e7b2e91e47c4e577c765db0155981309e7155068d0c0ef00f10d2ea6462b6cc27177b9e431a39691023100913c285a462a4e94496198d3f9aa58d9fcabb82d3f5fb77a188eac924f74cd2838847f565618c613f2a9216c03796f6c0302047c435bb500673065023100d1d9b360fc3b1458f198719b41ff497fef20392e379fe8dd5fb0bfb896b80323d0289256d5c8014c378976804a962c4c02300c49a40af7db4fc38feba0e5b3334ed60c7226f759735d77cdd3478d4fd2f41eb785df163e6e242687cefdd8f53c86880302047c435bb5006630640230371bfc80c74844f2bf744cde38f9ce977d8f45fbff21f33ecf748a0616063dd71ab814815a8c22c7ef8ba324d5eae89a02303f559608a51a0df6296ecac56277df988a82f303fc2f2451be6867ef6cbc3dae2c1ce3e8bc9015832142f200390fa7ba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c24b59bbe2f7b8f6c8bade13fc05d46c922142797e057773a2dde69cddde9e257f44de5c522e39e57fb2f828527ebce502305cd75107ba4ba18c1db969e46546b733417462813a4b8d79408aef6ca94e0f4e48991765ee9eb3860e46784af5e5cbff0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023041d5800f6c1d1dc2b3d861b99f69d5942d308ac0b8adfc808caaa41dfcf3007d29344530890149a2e8277f472cd5c6aa023100a2162325fe3ae14f282065106dd7345030d468192c5f9c6e0dcf057958adc833db65b7b81a97ffc61fc3f77d2db3e96a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e569eb99b566c395e8106eebf215e3365b4784c8a794eae11e5d34c7c275cb49084bb8fb27b56b03761dce505d1b5409023100d1c164e98381e68185af5b1685ea77c2ab2f0372462b3fafd1a24d2dff70e1cc704248b13f5dfb63e1862f69ba899a6d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310091ccab4731d6088fa6cc813aa9e76a36310e39a04fe7e3d2147f3481089a2c61955559498db38bc8c8d4cd00212bcee4023100d3e50cfa2aeba651a252ada6b47e5ac1869ee475588fd7323f3d9462c51e4b206bc4a9b198a0643f7004664f57e355220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310084f6490e4907ab0038b74f78252037917d50050a498c933da8d76f4d1064147d2d8fac4ca349b4962a43d7d3af444e77023005b50a3185b67205c089bc118b49f882e578a3e87ff24b5341ccf84d4543789565bc5fefe7d910c54ffb1b40370625300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303fcc4405c39286d6bd4644cb839889174a05aea28b58c06e3417ae8cf411e314fef7840e03f435c28186fa70c39014f20230790f144148013b970a242a317b8267873424be4f4ba051a14644ca4deb9bfaf10218439c5b9bbb424c2e692f8afc4f460302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fa435da2bd1ff0b1529fcfea10e2e299bf82e0113566074b9eccc686946512755fb85367c3213d3dee8f4d9c0a1ab57402307824666454cf74e19ec10f5ebf3f9b506efda48634f939ece569c8f9366fb778510e0ff4c1e69168eec2db2e547a9f5d0302047c435bb5006730650231009126ad88a89246e852696d1f663f098d8f1cbec9dddc0a26f16812d4356b02ebc6858c29c6c16e50a724a92ec5b6ab5302306711c5f0dbe3d03c5bbbe1f3bf34de77bbb2b2693342c8644c9d08cd5d9e0d09b32724cdad31ff106449702c9a56e7300302047c435bb500673065023100f9604a23f3636269c42fa7fbf5edfc60634a5a137de1f36ac1ce86ca00680ef7b83245740ead63b47b3676808159e03102307c5394648302a27f0ee0f5e05fa54227679680f5d039f2f61a55d9b94750cea0fa77096508a9c5b5a1b304f0c5510abd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e59d4e9408eae7c89492c3885086ca3d0a45e8dbfa9b842939a5dca9fc880fa46cfdeb38c34f837c277b0a66771a6dcb023100e11888f4ece3df4a3c0e776b297e81ad46795fff017b46a382ecad1644dafdcb2e81980029ddac6863994d8e9ef1b5be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008bc63c9a947ff040c1b1872a80ef603c5a987837f7bede0596a2d66d866d064d821ee46701372b8832c9697f756ea17a023035ac61b62eda5a7db6cbb65249b4669a6f757dc4f4548666611be63dae7be0732596e8a0c594d74edef288998883e3a70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306127ca0df68e7bfe1ab8cccfceb687437b3a76d1411de91b6773e8ec909061bc4a329926947f4e02c9bf66bd1294d9fe023100f282788066914723b179a74ed3c1d8dc000771409c19ec35e45175926427a63e170e8eea0820a57ec1bb1481ece817e90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230478548a29d6523794f0db5a805124b714b49dbded8ff642eb21c157ac50b8285a9a8a69d8d8abbf0bc5832a9cc0e40c40230629fffe0b6b2e031032197ba7e3b60feaf0ce714677bf273598f6cb089c55091c3af9661d91704a682c49c1850c2b79e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b2954a587613daa414638cacbec320a2f1ec5b715e24918bf4c064bb782127fe9a5c7208ee1d3c84bf220750c5c240720231009572c29a82e5e0ce61384f7c6a7364799895577f18ec7b48495577a479cc94fb2c340544c2d5c611070f86249bc1a3b00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230653d3843e5234a98283d8219d54528150688f0b93066d5719ab55bfb86614aabea89f10a4a3195e1542be4092333c5ca023100ce35a3568a59a1971a37fa8b47f83615ef8b359400c02421cdad0934878d583c7c661dad7fe0c5a4068806f292e41ea70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d90a21b88abe31b5af12c2d741bcf1b1509733c64aa9d3226ff46745736fdb79f44aa9dfc1ab370aaca048010b7c3e940230606c4f52abbf6ce08cbdf6b27c70f9337fa2f630c77ec4b4f44127acc458809517a11eacaaa98ee131aced36443bf6840302047c435bb500683066023100c3805540f36b35bf6acbd3d2067b1d8a780796454e22e317408be7cb5c2e0b3face30436035885631422673f1577ce45023100a8f10e94ffcd392ecf44a5bc6da5b822080e55513a2153bc489580498e8f533341cd6e9d83b973b45578c7992fb6cd1b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009ef803f9c189374e195d048ac08ab4d0dea5c2fb3c011c4349299d0e00e5fe6d0bdafa41a75d3f4598df709ae65db12702306191c3b857930bffcdbd181d5c1c5ce88d3f2415cc6ed1d5a7ea0d9d87e2468e10eb5f610d450b8330e9a28f52fae20d0302047c435bb500673065023100c495d4f836cf32b3d7ee98d5a101f3c39e5027fc85b889e4ba0009044aee1687f410d82afaf7c4ee1e9f3336727d2a7702302aa8a1e75d4bae23785ed630248caddf294080bda4cdc2f768b241bf20031a363b5fb6010406fffab8a316611a64c68e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304c2a8a352b6346c30ea2abffd894a756c905afe472af2c9da3c6e3a7b7c5c66a857f4c1345f90855e877ee7076c4e2fe023100a49c00686e734feb041ba89c934270edbf77634d0ad853e1811ff0f92f74191cdfdcd0fce82f71a5279fc2d88cc33f390302047c435bb500683066023100bed3d1ff437a7ecd63c38649cfb5ade89ca0cb351f248f59a33502adbfb838af3b279c08f73eb1a57fbf052853029afb023100f1094c9c6d90e9b1b1dda8f70ca572f80d5ba0bb817530936f8a89dafdd5d511302eec8fab2f565b19ee34aff5e064d10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a403924defc6cf302c6b93d2a739c14de20802df4f52d25467cfd1f7b0ad49b80f0345610dd3b6af782e3003bf0ce21a023100ff94a7c1b337e41958c63510b5316a11629dbee510feb363995f3589df7bfba1f43bae69501bad935d0a141e72f3868f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302311032f2e39aec9f2bc4e438763d793746a89ff1f2df81bcfe1112e73843b850652a31eaaeb3865ab02c246ccfaa15f0231009957ed3542cbd67c7574d2a69db434aa94d13aa84ab58d716d69106378627b3e4915b750cfd564bb18cd21a59e3f89f20302047c435bb50067306502302ea418f70eeb00baf24f1984fe3a4d2e3d6516c2b7e30f14b6c117a46715b11baaf3eefa5cab75af9e57140837a35322023100fd78ea67a2ab750fb5807e63b0eb03c7296bbf20ba00d884916d25485f8b13e1242847e5a3e7bc9625c1c3d1a8a940190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b6bf0f5b9dc827bb315d59621c6130eb9b2aac18cb6c06b176157c00a98113ba7df5b4eb2def6e602b32657adab608a602302f6c27297d393c8116fa3bca65aa9f2307d1f6182536548d290ad383ada938c28ed10ea5fc5172218896b67bd22055930302047c435bb5006730650230616e894a9e4289b2ec237f159c2523adcd0b22016f3362297db7b633cb0b71ba7b71048e56d4463e2354bdd1a60721f8023100fb801d8500afdd497270717bf33471cf9ff5e0d63b52a1768eca2ab2866e7474ac54d43db916b602798ea00e70d8ae010302047c435bb5006630640230584a60cdd5ca409b832364c0ef3da7d1f3ca68bb1e0c42da6ab9ce355571fb5e518ea07525fa24461368a2219b6a0ae3023012f4fb148d39eb440e2a374af27eb80884d651d7c0ee09662bb1735d0ecd243fcfb7f363a92d4465de821851bf1b2d610302047c435bb500673065023072d189e70789e93ae09864b6eb7c33ae3a4452c33c0b9abec3cfa81b3cd774b455a17fedb79435865b4c49138bf3017b023100df4c2a3eb7bce2867a84ee744b53b2b6ae38c4ae0288f595e2b0fa13a210a432b706a56fd83a264fc7f27de23195b3e40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023018939c525be23069621fee420c41dbcb43c26dca777ad0fc842e92f29db9a87a2c1b32b0918dc6ddee17cd7f4b6908d30231009a0d5e4810eb71cf576ed443274a2a720fe84a7eac0a4f4f3c4b3d3fa4f0cd560e9e6bffd25e0537b96e91af6180a1420302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a7419d030a046dd0c4f396dd7a5604368ee0b744cb13662b29aed26be126202deb68ca2e1438a01bb118598da1ecb32102306a1d044d2623a9fcd05486c429e4c3fb6789058804994d4d1a74f9e10e5d60681f8d357b702962ce1c8128ad38eadd970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300f735ca3af305d37000dea67d1a16d7bbe90a16f6569dce46fda63f0690e96c48f8420b3a97eac3e62bca068727c8a37023100b138330df7e7c94c7581ca5ae116f763c3def545b404fae24ef97b8c1d819cea5f66f79503a3cda9f2815458ee5b42300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c967c73dc2179de2c673b335d7bc7937d45b7a09337bc8e7970143f9a7648393292ec8dd02d776afb776999d3c99aa1b023100c46293b2924126b8773d05c1007ec732fda844a688209ba75528601201549b072b5ba8f396617b397de349f382c38cf90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e50bcdd5bc1da4c1ec0e97fc4ab4452009a790f00482b6261cf5878b312a51e64f09e9cd4bc3ac5b0ea5876af8e8716902306b4b283620ecf6577ecdbeb2507682702a6f289c2cc6d3d428eeef2c0d813dc7833afb5351b9e84c0a886b842cee1ea10302047c435bb50067306502310098e17fe127b326cb6f1fffb3fa9249dd6464020f9281aa095bc6e499c7ed6715445381c688e1b61beae2225b71153a04023068cee3f3ed4e24f4e8e5c2a8658e2c9269974fb813b081d5875e1eaa4c733393fb6d1f10eb1c59521015ea7d697320140302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c6779a8dcc53eaadffa7f6fb3237f433a15cca59f67380a53357cc2c79f0852247e09c64d3bc4a49511e753d8f16ee4402305c770c20acb028dea11b8bdf4d816eabdfd25c8442cd88d2ab186abd372dda3d56647e2d35ff562af5b20cceb9a0b1c40302047c435bb50067306502310081f4029d954b96b3392c8fdf276d99eff482d4ea16488d76853c725f96f2ce5f2e080ba385dd05bcbfc785adb4b0fb6c02303e683bf8337ee67dc5bd5c067ac61b89966eadc934158fd01cebec5ab9980b7fe1d58a21f5697b59e09b7257821033820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c88e9149b1177b81911c687cd3c87efea3ea38144430e631fcb72b8136f9cb0c8453491612dcef1495094c565cacdba7023017564562d657aff90d345903d80cc25b78f420cd3d97d729f744eabb07c715b1ff0fa07278497395482be3a7d4925a7b0302047c435bb500673065023025b0ac64614ce03ef8dbd5372a3a570f4ef7743161709980bf579d506099133e96797ace580292952d2230f16926ba5a023100b2603aff892f2e5d500c2c00c56010e7dfbec67acccecc32000ef714d00af950282aeb1f6e116abfe816c2818273a66d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023014db9c7df40ac7b7f869bcbdd2d4231f35f1fc5e72ae49215ef9cca522f09f8e9389a7648f66390edde1e275be9fcf4d02300109415da4f514c596d87f9427fbc6ba63200ba08aaea96254e32c8bcec7bd5402318438759ab6f164c04e46441686ed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a2937e3bd86068f059760a09383b55ff7fe7fcc8b5a5a1ca329aa568f2079a212b723022d3f0bc8cf806f8177cfc3c8802307392540df74ed7dd0696b19c1bbf8a6ccb82147ff3d8580bd1326fd614c2143ed978d737744a77931e3ae0bec69be4f30302047c435bb500683066023100a4df446c4f920b2cfeec8575da261119ac3300441e1c93d989710cb07907a30463cfb652c21976e5243acc62101e53b9023100da4a9d7741b8c0f219b378e83a272b1601125638f93386fe0774fc5e973ec38445fa6b81067d13fe9c8ff93fa4e688650302047c435bb5006730650230427b81146b1a92cb97b0588002fa2ddce23e2a5d8528c32c63315a03d9b3cdd6bfaefa0b1ea3bbdf1b9595f6cafbc796023100d6437b29d49a0ec75d481065f23a78580f4178fd0488d1a0854ad2a412b0568b74dd859d223a713a74e84bea1e2743c20302047c435bb500673065023100ab1240866941be5ad94d8793ec435b1116303d2c2680e3891912fcef651c777e6207744942f5780fde6c32e8faf48303023031104fbe370f9b84e0ac778767e38af365f03d823afec2990a48be96d593896af86fb598949caaaeb2c8067f4e251bd70302047c435bb5006830660231008a4ecd58d8c11ee61f592ec2a228b2efb4a661d4acde8fa0c86da59fab895eb4b83aa0ded283c2e6bd7ea1eff76f8647023100d60d06013157f79f62ea4c8ac51603dbb45744822847b1b7ee9631b120b760574b2e480528b0405680d7e8f29303df9f0302047c435bb500683066023100ffe0e135ecc01d74ae38117cd32952e1604bbcd132e036f8569e14ea3670929712b5b0e4b8d7c30f45d2c230a420d91b023100d8bc0ba3fe61ca8ac07fccb9668ede1b366e818f57ccb338c50de048afc54a22a3314fb0abb0534a0b5494145f05f9380302047c435bb50066306402305e27ab915f074c730ac00412d0d2d1e8c35d660959336f16ae4279b80a35d9a29115e982a97de65d323bff39765cb6e902302513d28adbb0e3de0d9126f40a4f642bafdbc74d72131b90d6035b3a78ada83b4790b7df4b1a00253324d57f4320c7e60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023079cfc3ed265aff6aa1ae1da7b20739ad27a3c26ae57ce33bcf56dcebaaf305cb417b4895d7c81af38a0c4e85a6d8ef15023100b6a3ed167ac2ba276c971d16e66a53133ea23dab7266914d864cc62758ec12f0084b65d0633f7ba3a0542250ec77b6930302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cef4dc69341c2f3a6393d0f582f4b34bca8978fc92a5b3b5c66180c8abd980a091fcf2fede0e0ae06e35a1bbe52e645d023100bafc555c7403ccab8733ba16415ea26ce6ae27d32b2274629233b99decf9df2cf0dc2a857758bae9ef39ca6d8c7573ab0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303683d2f63738ad62b2a22d66d8bccb2a9be8b19c0a49dea33f73b35dc37530018b16ac33c599d4aca047f6f8f82ae5e7023100d25c1b5db3fd87be3214eca0a680c4ee35aca245f04d3d9cc7edba2c29a848d3692fd708128afd2e11d569c8bac553c10302047c435bb500673065023004813b5bc62152982037acb1e97843fe235bbcdd1a20399d6ccb714c41e2fc718d5626c2c24ebcf865ca020f8139dcc7023100fdaa6b041db7aebd2cd571227932435341cdf586bdb2e0a3784ace68196f4f08520989bc09a28145ac8ae6a951b75b120302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307709c2b95e2cb20837ae2ed6df449e45c4ae5cbb97d57f64a703d0ecbd4696b2042d842abdce827b8d41efc6aa44f78c023100c973ff5636beeaaa6a5716b27e4128017efba6969857cee4678cb5b4b2cb8132b41e8b3e2bb9c11efd2bef8ee3ec21220302047c435bb50066306402301b4af97871dd331e9f4439ff78e9d1252e1cfa8eea7ef550eb1f8ab9e19829236655f4ed36076485d1a55d00f29e7cce023076e8fe1014e08fea9cd3bbf156c42e8d233512edf8bbe9543bd1f7c344eee4fea64ac76a9a76dfd5509d3570708f60460302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f5f3c5ed8ccf38ed124d8b65bdcbc5520913e73afc1eb7ffcb748b137ec1097ac1c9bc5ed5dbb5011e3b0b1319214b7f023100a44e4897cef5cff03a482250c012a7019080b0680d9c90395ec012f417043090f0c85946ecd2390bd74b675dffa458690302047c435bb500673065023100aae6e5f96f0eb7fff9d6fb3a72a9d2f0620163e670352779789ed5ac0078491a0a32f7b5bb46c7ecc840d4b7bd9275ce02307d4fd8a40a5384b66f9c799fe72e144b8121477f2f09aa793501fd0f2814d25a55fda37d52ad5a12c23490c05e179d840302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e6ba3d860ebcbbfea978abae77fee7feb41482bff49bf2fd565ce6044741e9e5729a0b4c3ee9bc8df2aa8d6e219f9d06023100a703d66b8661d6d71ce34d10e6b6deabc033f328362f3c5c41a864cc12805a81a36f2849c306e25734e684fc04cd9b5f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e9c03ff22377d95b1852ebfb8feaf5e8c2ca3c733fdf729579894ec1ba5941916ea0c9b6c255e877fcc07d3c34d71ee7023100b44aa7b94b74e6c6112a72c93428bb111169eeb89791e1138d932d5cd1d0e6ef93bc277f1f5d6511da4fce675befb6540302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c0cc3559383e9fa742010436577743193de1476d8e2c625cd3ea2e69699b4ae2185a9a4564de9715d54d55498ae6eade023100d5265bd97b742adc4e370db5e3605b86e88a947c13c7f7f8b103a0543810c49f5324bb7b41a2d873fad30554d09ffece0302047c435bb50067306502310090090deb12f17552a5618ee294888fc00529571bb649ddb429bcebdc6e650a94c04e0f78f791258aa116e2294a40736a02300608fd484398beec8951f1698eb6a926eaa93c7a0b6e38b79c07edf3af333a907c746f5640141f808e0ee7da0730a6e40302047c435bb500673065023100d9b2a4476daa21675872f6364d2c8c351a579cc5598b721e49211942a8e0e686666a71e087445a740ccec8c5eaf09e8f02301d9e7b620e615685bb2eb124dcb05424f4092d10d36cad80e41d8a7232c0db21e4fb40acef6cc10ea3419824d04d48d50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310085658ae8e2365cdc0198b2807cd5820b345deebd5f61e51144fb8b55720ecfc863f2c843b9091487fef6a9d4c8d64ca4023012399a26a82ba0a37b11df2dba5b721df95fc59c41ea66b14db58c28970c561d9c133b7a9027abbb05741942033a8c750302047c435bb500663064023016c1d4d3d33ffb64b7a413a562263e786f1219cd16188b627021f3b5e35149b4a91adc5ed91eeadfe01cd4721af8d65202306f122de5ef12570a5cd7f95a50bd8a803a9157e448e664bbffb0465e83a5d4384663431cad12eca3b9de1eae75405cf60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e72602c1ebc3d6ff7a88d828ff3e185cce537ee04c33ed59ac65b833d865213bc71e4fb65c7ee6f31a291cef923b6e3a0230035977f8daaddde07e9b0cc742ea7616ea49d28f6a1ba74741460deeb184d9e6379dde3094afc1721f293ca7673d21060302047c435bb500673065023100a071c2fd0255b48d24745c2aa4b2c417a366722e1f00e796f420e355106c6b59ea3572e2d5c2a0d137f1736d18cf597d02305002956baabf36ddc9b0cb310ce1c0fb776324a38a309f61515922754cd49dda565dc88e5952058d4a3994f929e11b7a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023020538a0003063d7b417df21fb1dce20fe2c35c3562caa77c32eeb3e93f0da0ee81bef35138d311beb158e9ab0540110e0231008d12a71a739f5e34484935306d043787a1b057cbecb7c0385cd9dc482025bed17b6296f7d75d0bb4fec55e4edbafd3db0302047c435bb5006830660231008db7a4e477f4c72c80445859e64e7fca359d2258cfd548c29605c8eb132cd71f5731c82c4482a9687a27e1b90ac587f7023100912e6a0512acbcd60f0097bce2cd98ab2bb7b938289350c80f624bfdac18672f7d3780a1b0870f9f75b73d4a6b14bc820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c0eb3f3a77a2a0d8defb846115df39f2efb0d70513923f2e72a63b24a013e69412e31881a40461b65d097cbd3550712802302f9190c21c49055a913cc072a38d11acb2afa1afd74024320a6245c8f85ba121ad0a91b4844253e0e5d201cf07a77aea0302047c435bb50067306502310093ab26c7114c7294a8975d145db7684a250126923b2a4aa97c21575e687b5f4765d8412747933b6ec8e9df38293f19c8023039bfcc067c5fcef6a85f5017b6befc1d599ff2aaf5ac0855c1c644f984f3bcaf804a71a3f9b993d9a8af3491ee0cd1700302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a5cbe749fdd6d97dd9806e6f986cbdf55128ac7cc3a29b2a1b4f4d28a9a55e79e9569fa3758db659feff5103baa07c37023100a5f5e014dd84a218ae59ebd4d46c44b3275b4b0213f587594f2ef98fe444484a06a474329f15666826eb108aa2df66960302047c435bb500683066023100b6b7cd526fc481e8259f42dbfd5d806296d97e1463042e1ddaea3681028ebd4d3a441c140905774b78e575b4e3f88daa023100bc9f145ad16c2f35a6dd66bd7ca952ffd9cc0067fac1528075301a3a8edc549013c28560c47f78490345a74c199dae2f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023014c27c528905ccc0561a952d92bc5b569f9e19be3f5e876fb27cffbc03e22776e99a78cc6e0787910bfc09dffdf089d702303b29ea1640b7e3ed1238be4b813319432965f361a490104b8ab6d43aba7a2c52be3307624987ce0e7bafaa7d585323e90302047c435bb50066306402302876500605df1bb15ca18be2e55acab4703cd51426cb9cb053ed3e24dffdd3f71391cb40be7f41e6da3e465b327c75e102306101e4464063f9c36daeccaf23d2bda60d88f8ddc0d2efd0c3bdc5f263f3a15f6bb2f40b3787433c8d7d1f12bf41bb590302047c435bb500673065023100f564678de39fc2fcc991f2e4d2b35e0453aa80bcd99fe62b2e9aa620bbee30a7c022312e316799d3765117ad674d1ec902304ac99df8a56bc3009f29bbeac90e77ebd9c861d9c99a11caa007c65a292b0fdb261a7241fb987deb9d551c0ad67550580302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023065f81594b00f26a094a315934780a8678494888cdd4354c68f4a5ee2c026e784bb03d038ae1b1ba290586efb308504b80231009a7b4c0c0d2d2e7399da0a3085833acc987a20adcc87d17035b991faf778a293e9a28a741b3811dba1bed7fa9b67e1420302047c435bb50067306502310092a7c088e5d98b3cd30fc8efac38c7b2b5f818b578a7a1b3251e8106fdb1d38573dab5b9a93cdbadfb5c077a59735ec1023067c0b07d746990d1b98fd11b70e82f2820f995fcea750782514743af0f317d14e936e562b1c5831e355152b1edc4b2560302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f128bb0f37348d9f4936b58e6acd4379ea18516c95eb0992415e464a1919329bbf9eda6b36a3682f7c83334ee41c21e4023079eb54a086d85102f00a93f245cb22dab75466228e20ee6782fd65a6ea4493c60c77bd0828817a560d8aba83e25b3e2e0302047c435bb500673065023100d3ccf3d72eb653a636ff02e755b69a5d91a5baf3a5a94c6eff11bbe055dffd453040a91be585706d6dd3cf9ddef6d9980230576264cfc0b3905af7e1f24a8bcb8c65d9635136dd95e0dcac513c452f6c4e76f6592c9841d026fe836ca69269af032b0302047c435bb5006830660231009b321e504cfc3e9098a7b747213e51a3246318bc7b2f0f4536ec7c187eadb0185005723b7a3963f48fac1e555c2c3a63023100c79df69037eb803d0b7f92e74402873236b9eb0398f588f6109bed6c734c77c6837de54ae59818d72479f421782f1bb40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bade6626ee409f6b20661b0034384c2ca84d4a16c449f0609b1e19f7f50f1fc010ddaa9cc6e21f7d188684c944f5b5ce023100d2cd3654ea519e6706030f7c298e302f6bdeb77d7e8b87b76e841e524588f26cc48125fbec192e8fb2839862c4a14db70302047c435bb50067306502305b99f81d936d85ecb03b27cf22322154aaa40f978f681261b7287401283290ae8f63101d03de877bc96c1c3ff360ef07023100a150381a24c4e314c28da3cd81ff557f5da69bdbb7b757daa3a0dbf8e8b7150de22b64fd46dcbf2048491e3b5109b4b90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303b776b5cf23632c5488497e40d76839b059baae6163c8fd2761522f9d5e4cb6f038802a162773df5e538f0fd5fb345a602306bbce506c29fcafcbde21d3ce1e97b30d5af746bdb6dd86f65c155ac69eebb1fdbc2a316a02096182cc947c1a40d19250302047c435bb500673065023100d9b2a4476daa21675872f6364d2c8c351a579cc5598b721e49211942a8e0e686666a71e087445a740ccec8c5eaf09e8f02301d9e7b620e615685bb2eb124dcb05424f4092d10d36cad80e41d8a7232c0db21e4fb40acef6cc10ea3419824d04d48d50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023021bac0b24cebf36b8a9abaa31a2eba1c275dfbbf0de3b64afdf79188bec2e4a361a6b3090a16a59457fe658427458bb2023100fa9822bee383d7d3fc3550410cb4da44bb9777beda70981d445b98bb354d0d0d2d1ab3af3ba9e56dd5097a83182c7a8c0302047c435bb500673065023100c72a1bc82c28ac8e8b20a330a39cf76b632689083a9ab33a18be6df3f5471dc0db181e2f27bb274a284abf7bfd307be402306a06f4ce3a67faaffacb30afa0e333a1f55073b17e9cddef30be59657165cbe679891ad2306c945230b67a7cb09846700302047c435bb5006830660231009ff4ee44e9906a78f41c28875e63f20a647d95b2efae887e40962c2e65447ed99b3216ce9dbad4a7e0507589c20d152f023100ec5fb07e0df8d22e9566076d706d2356b1005dce9551ee5b51a745bf3aa6e9617ec0f1924f1bb809041855eff08ea0010302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ee4ebee51841cf4ff380ed30e3936c2a886d1b8a5ed359f57a67191fe2f86dbe65535bdc0e10c20587b852e92b53909d02305fb2a54d13df6dd92627da78ba354d11fbc4992e53732ad1774c3a40aafb3de967f46807aa103ab8d5aae15ae6f5c4a00302047c435bb50066306402304cbf6c1b33b21cb621f47b7461226de9edbd2652c70743af91f165e8e7ae18e080e411aff1bf107e4f2cf7dc0ff82e7402306af8582ef86f20d545f933ac5a1022c827fd69a7945fd88bf44b3b496f13b631caa618e7f9a173a5c31b6bb2469fd9ba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310095a8234e6b93ef1d2c07d274bf9bdca7268bba4d0ac499dddd350b3c396c2bf34dfbd74c293ab595a256b37ebfee4e2d023100b3464768fd42d8b8b3e8becf7ec50fdb583a3f92de237693aab07619a575d0d53da95a1165c75cc49d083729bd2307030302047c435bb500673065023100cc347d5b748e02199ffb31fca76a57bed9a476bad9d191b3684792ce9252d1a34defbc628fc13003d694d0b7453a86d90230406ea47ce9cf48d66e29546afd0c9ba5462dae115cb69e48f08986cd02ae388e02d3e7b8a0c6a70624703882209250660302047c435bb500663064023022d3f097f3fbce86b2d03a915f60167c1a050464c9c45c5a08bd41348b2ad5f26eb45d7cf671c2a8fbb5d8cbe30b10e4023072a7e220880a062c76e630639aebaf8b0966b45dd068d530dcd7b05a2cd4acc3cf67032ad165fa6d07c6e6bd6e2132a60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230482ee99546134ffde7ef7093d8e7917ce692657e6054a8981536ead55bc4ef6c065521fa7ea2a895cc94a85fa033f0090230678282e0af8466e74163d4b15b66b3388611f3019c65b258e55fd1a1514e91b853284f398012ac8d39f6748e2c9cc8340302047c435bb500683066023100a8d0714500201802c7014ef20a1b8ba4418b1997e0317daa0876b354fa1b4bb78d814331876f1dd39dc08faf7dc58974023100a677e23a3109d67fdf3516789bbd808ddd7b0370d0998f34ebc2420f069bdff93d05df6d6cec321c14750f7772615bf80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302c88cb4db5ff7ccced8be8fac16f844a96ce6e49a22606ec937f236fc85de74960e4f2874e0af5cbcc96df9645f9ae56023100f25dc28550e762920d560d9006aecc924aa48691af8550127bd35195dd9ff441f0ae67070722d9d00cf77802f4ed60820302047c435bb5006730650230030d238237e84a5e2eb155e5a0ed3c3876df03ca117dc6dafd8c6dbb6e6457d7f78ecfd39dce28b626f2c6c509607e8a023100ae5ae81a4d73dca5f75bca793edf73f2cadcb1d6d60c96a75382bab6fd71f3ceab2ba7f9e5f10b6b982f0a0f2546f9a20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230793f61781b04160006263606071ec89d233391e0308a12e2447877651cafa15093f2c9831b9ffc297c222b007d895441023100ce2936ef306efd5fbcca69b7c1d31f0576742fe338e56375194f8a3aa9ec414d13a4eb3135d74d67e3503a213d0cbb6b0302047c435bb500683066023100b6d3821b4fa893be7b3e68263c512640183fc8852542fdcbc5f1e2dba0fcdbe31a3b13a49c17131a1771369eb43387dd023100a50ab287de9745d8679335dfc3fbb6727f9fe06969b05cd978f9245543eaf3f6f3e34ff485e285c95aa589cbb39a182d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306d493115c661e1762d8c836e38d88adeed8cf09353cff0f6fe5e7f0cf80360ca9e618e74c2fd801cadfc7fdc91a7ebb2023033aaa56f0f39a052e39ca1bca5d7972b17d24b77fa49e012bf329b3b8c8d82db60c6326b4d45dc8c64c046da35a165e20302047c435bb5006730650231008deeaae3608c8c8379be785e17fdc98f51a0d8222845a086deefadc2d08a64e232d4ee8c4e229ad62db625e8b83bfe9b023075ee6e183bb55bb70d76cb9fd2d857bf1cb9b153d1439228a76e5531128122fb79bd6037ffe611943c0fb72503229e620302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b58ef5d5a02c28d0eaebd46066908704f5f5f15cdbe19f256e029ab8dd84ec867768c10bd93a62bcdaf846b678f2c9ef023100a1426a243f51d72075bcbc9f0f75359befc714419a8acde25687548c053e3dd0b4d4af8f58772220bb89a3a64480ef510302047c435bb500673065023059ac737d2a0e941cc904e706254bb0f8ec736d28f4bbbba428eccff176222724005e98b4e31059722b674d10e4e1065a023100858b7d81af25144d8b1d836daa8e86304da50657695387abfe5c490f881fe078f72e960021062b20df131e23e5f886ed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bf9608503c979a69ec160e21561a9c62dba71f112e3d8a8bdc43b41f8ce33b19dd3be26168f09224f6f09de7f792ba450230087b75114b5385a646d502de9e65fdddb5ee9e2d9a0c222f9d68518c79866bcadf79a543cd46972f02fb05015f8b130d0302047c435bb5006630640230159541dbaaa4c63cf152d17f04f4c4e223b66d4c8ece026022a6ed0bd4321291de31adffcfbb26b814ae3619fb81a85902300da1024a5b3afb8692ff15925bbfb3ea0b142a74aa47668873974436806e7bf88e34140322c1d0940e9c670dd92be0bf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cde248cb2b25a4cdeeabb03b218c78bee25ef2c734dc91fb9a273e3b85c09d9d77bd38c7078a1aa7c4d0f0b2fb177a42023100d0c69e04bcef18448633473d6f731ef17cd55359567427395099a9579961db6746179e451cd32ffc9d2729dfc0d8856e0302047c435bb50068306602310092761b958cc163eb653917c1744625c48699acac8ae8c434a9f9e53e0e3826618d319a13b1b8161905b3eab80b073134023100a1c650709744f9bd492554859c48db5d21cb149306ee867cc3b4d06032827ec3bef07067810b529ad77074677e7933850302047c435bb5006630640230246a6384b2074a4a9501b63d3f968a8c36ee91a86402f335f1a477d909adb2f6f3a8a581ee4a0a144b176c4760443684023046c7233477f391dace407736912077003fa61d699e4cd696de30ddd90cddaaf6aa8eadbdd3f976321b869bb54b63b36c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f4e21be1cbff189ab9001742d9dff95ea38f1bae74a2054891ece0284593e7c0c0ad2ab74b523ede5bcf4b9c17d6f79702300f230029e698c2ba8174ec5ffb9e7a198b50a1b037ed2dc4eca1a0a6b18b044868b4599a0937a2deb0f82b72972ecd500302047c435bb5006730650231008d99d295b9565f2d25b3b45e2a716f0c18b3d4828da1f8b637ba1e0524890afce0f857b658fa7f81b6fc28774826f75f023057a300fb083d4f8a9115773eb026a786ac8c5b7c05bc6d375773183d2e2b8e9a82e3c1e3844e92904d9589e40544bf090302047c435bb500683066023100b2de3b3476fde2699008e1aa28fbd22c4a228b97057b31dff591617edd13d2c8a1dfdfe71d71409cfdbec9772b4513e7023100fdd44bd24695a304a717764118a06749c1e6e52bbfda1c104c830bbc69b5fd1e15d98b78e19988b30c5ba7fe241f44500302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009dddb2e011cb2d354f536a89413e8c57fe8b6096ebb4d9c6d08ec715f94f5865e4dea4bd8b28b247164cd646ea55267f023100f7d94a10963cf7426a5fef0d4dd21000440bea5a5675a51d0185d15ccdd3fe46bc014206afb32d5f4f08e4d2fa67998d0302047c435bb500663064023046fd3e52dcb5d02e2ed404d0b90b2a5acc3573ef07f8ef98b4692c66cc3c5d7dd32e4a288e6a61a7a9a05bc75bff0f3d02306a6f7989b6f35fe6a89f75a88aa85b7a66b8246490a4a36de6bf2102320d3a386f16e5421291e72b60cdfb9bf5cf5ebd0302047c435bb5006830660231009b321e504cfc3e9098a7b747213e51a3246318bc7b2f0f4536ec7c187eadb0185005723b7a3963f48fac1e555c2c3a63023100c79df69037eb803d0b7f92e74402873236b9eb0398f588f6109bed6c734c77c6837de54ae59818d72479f421782f1bb40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301876a143de509262cfae0b2d3e512741e8dae5039a0ae3863d4f4051ff6328a0fa8e55d1941ff36200d76cca77f9aa3b02302f261ec4e98b07f14ae26120762a918d35f236bffd5e4917cc0f504f52dae17fa4302c427b582fc19abe41273ac77f940302047c435bb500673065023100f551c29aac581a2d3b00b5b2f7be417774cc404255aa1fb362bd5db270d5e3cf7ecc3b2cc8489db665e8c965982925780230480731431580e2aa1b05b0e1ac8db2682809ac656996d61b5a45a2ba6651125508e04eaa2e9bbc49e3111258820344bd0302047c435bb5006830660231008041bf092645ee1dcc4bc19906bae539801ce884b952c21db0cbfd9620e4620c0055b2cd97535f952e7475321e0e3466023100cda040fb4f8125ba4035c8b912815a56f4d1f2e44358c460c5f734805a217205e9310ed56aef22f1e5d5747ddd304d990302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300946e974eabef13ca0337d036511cd08c78e8f2398f628b0094bdb8ee6375d3798003319ae74108c2d0c3a089965b5f20231009f081d56f2a7c95bd6979931c7ec30c194a967d89cc5142f025b2dcc3484b4f2d10b62bc2d319d12a638dc6c9036f5a20302047c435bb500673065023036359c0f750c50e7b73719c998cd9c76a570ae84554db1893f24544587b0cb9be6055ebd69ad17c36e46350998cf4412023100ec7875c480589326cfc80ba9334ff4f13014ce9028693168ed033a5ae491b4fd3de3f04a08c8e826eeae71706d20c9540302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dd29afcb405bfb628dce4aeb06c3ab7f0fa05ae0d7f6b712edf225848c256d872a0beb10135be2199df4d7d800fe104e023100f30be2342256e588fd871d29d5aa394dec0a9fea4d5d5ef7176447d12d27c76aa1a0a25906288e9499670e34308fc5f40302047c435bb500683066023100cea54c04160334abf296fc390444481955ea69ab4b7cb4fdd2c64f95b55d5f3685e3c56475be611bb99b7ec54be2ce8a023100d450853b18c17160c61c64c761efaea77935ddf3886ff3252b0476dc9bc29a8da9eaa32ac8d60adf1a818205d89fc05a0302047c435bb500673065023100970657d12e33aaf9f793ef1365e6ad23fb932e43fdfc456d0571533c7a6cdad7459decde2278b4b33ae841bb344f381e02303cf87c11835b72be23db19a615dfec5474c42f7fb7f259c4a294a2cef17a0d73a2a5044ae466bb455ce6f8d92d5c3d420302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f8000938668238474b1afc33b9c2cf4a3704f565c8a582692aa8546084b1bb56a18761f3b850cfd5dc0e679054456c550230660cc33e0b9d86cc6c1a82be3292f26a5d4f20a49c2943defb33dd23935b5e78ff67e0a5c165dea968438be7b9ec4c810302047c435bb500673065023100d9b2a4476daa21675872f6364d2c8c351a579cc5598b721e49211942a8e0e686666a71e087445a740ccec8c5eaf09e8f02301d9e7b620e615685bb2eb124dcb05424f4092d10d36cad80e41d8a7232c0db21e4fb40acef6cc10ea3419824d04d48d50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f8cf11e2765a3e7b86d39ecac1a024740f22640cd65d34cacc5d71a5b49b89622011427a8285654c840898d8e7e6098602310095583da71bdcb22df692353fbd7614a3c821f4f6a7c52fb32a6cb3dd36760572b7b606907240d3167482d13bf56c6e9a0302047c435bb50066306402302521829df2b544194f6304b243dbcf9440617382bdf8a676bde1e586a5c624ae7950111187c9eacf10275772efb55f6602305936fec8bdfeb9d22394d6f0ea3529e41761f48fcaf96707c4be26a11eea43734f7e759cb1999dd8f31c0082a77481cb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023037d3b606be76bbf0c9c9dbfa086c1023be7305e870b8de9f9c8cde91dec2c3cece2792edcfe1fad087b00ae88145569e0230071b8cd33e7b07dea61f30b9d4bb54e26316e7d66b6113954d0d22893e29e4a230336f1b332450a3c819fd090b9a55b80302047c435bb5006730650230401bcd56a3f2ee1e8551fcd9db0735990ffaba51d174b01b201a4bc9c887aad14653ac07cabb5f181989bab1f8a2b3ef023100a4d36e6f01f628ccfb1ae1ce2a9d11aaff5f1739de45e891c75563cad2f58c9d4057aaf85dc0e8a069bc52c0b0f6318c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023032ed4fccd3e20ef60fe2c860d0eb9a18c7040c2d0fac60a9d311a7b43af7b9a0fda1160de82791e065ca336dafca30e8023036aa643e1c10bab5648a07cc650cd25ee07ea5c915c7f0401c21655aed063ee3c64c377a79edd7b239035ea42ec92d420302047c435bb500663064023001e63ebef52d8d93ce5c6959994a3730b21a4c69ef0ef5f3a8e7d2caa6a9a291fddc2130d0987fea5d09f18fd9aad3920230663743eaace9cca0cc4d4c15f3244dbddbfc5300e297884865a703e2aac6439755977569fae65e4028a46fc03659db870302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023078372c57bd8c8431e230a5561241998b853a134d3ffbb17022fd0fd485d16bb40bcb36e0c487ddbbdd7b9181f3bad4700231009dde3964ebddec2dd2b7d532ed99028ce8c0c11c61a04873400c2cd3ae8f15788e628a36daf91434ef9c6a5d46ec2eaf0302047c435bb5006730650231009eea554b29f234ddc7937946dcf33fc13522a163664e46106d1d5f49f16dd00e1190eea805b9b6b78a7f0f7dcde9cae60230598a4204429c8f6e861388e8079fc96513e3342c73d623b44668dbb3e0eb8bc339791b39c0814a23384188c58b0bf6740302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100edbe784dc10a648ca0053c79cef326420006c5b2a012b02d829ec9e619064d939db254c2339b27f2de13567aabc0cc2b023020533daa66d074bf667e2eb7ac480bcaf946459a3963bf077fe200f4f58bedbbaccd3cdfcfe2f255b321fab8c739f38f0302047c435bb500663064023050f40cef9432dbdc4ea18f96f6a96e7a7f2f2036e9db58979a4e02a8cc501ae01ac869936bf324448eb13ccf91d9dc9102306ab763eae6a97a4e970bc5debe462b02f2b5183753cf573d1731db56171014bf094c15b1c426bc41c4261b46f3ccdd680302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023015723960cc56f380429487f7b599d8a658e4f0227ef67b0aa2ef3d1ac3659b181b1c9fab39b53e408f2e06f870282a9102307b5eac71d403e01f538a015eb923d4e1876f57e230d75a9f37dad5b767746b6474eec975c0394ea395aeb744fa0b132f0302047c435bb500683066023100a17355ef05abb0c37f50c817922ca87584a75eb6a51d12af260d3dd16c1735b79ebdc42ed2ae89dbf065741ff84263600231009d0488c4c10d620a2b4a4e1dd22c27d075f602772a5019d012b4d0d238fe2ba31862a67f03c2cd31f35057a4033a9d540302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023064a597c6e393756f220ca1e5392a307d5622a72fd183ec9772ddbcc557b72212227f8b1e8603c92dd219cf53883049c9023100fdeb4584dda8f76782cbfcf288bf415333e5dd08beb26e8d8b89e7d4bd9b4c8903f3c82221e05fa7759896ca00fa7a2f0302047c435bb50068306602310089560943c4ab4ea4e5df1b34baf38734b5d4f8545a6923e724043b331fd674c6243a9cf5886cb311e0b11c8e44d0a83e023100f92b80a9b7c462f045b660a087744564c60cc1f1a779afc6930d96ad70bc413b2e7515e6952ffe2e2fa475dae096867d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a994168e0868fde45d79862cfba1fd7f4c608fcfb2fbb3be90392293068df3f4388f2c4db55e7f2c3ca2b03699af377f023100be24a1400fb8dcb7db132584cc633a8a4f55aa82978800fa1aff3b84d995898012e78341474c672407adbfd2fa4e0db20302047c435bb500673065023100a95e195855a01e7287fe5e46d7224ae31509aa57b9671cbe9d279319061f8a8db6a3041737f10814c1559a5a67fb7a1002300fc006762f71cb44dbbedbe147ab258e57a5c5fd625edd4e562d3bb2e3c1e9818da96c54f9cc4d9bebb2a29d0934f9aa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023067e8b7610cde4025373e1422fc0602e35c9a9b0d9b74166a07ddf57add8a0d3e520553d2ad9194a9f114c3ba41bb90db023100dd7f9f080a0a19a47db978c4ef8bd5191e7711b9ca984f01afde72914a6e27488843825e694c64c992d2ce1f599c450d0302047c435bb500673065023100e9897bf396ea0c9044436cc16bf6561676b6632c2b0c2072881e37be44bae4c95556eeb401d2343f480eaacec980c2f102306203f327c24e15669bca3132f546791e07b465a67c912402244f382b3c7dec1092afd4e0a49eb98702c8c81c6e99bbbf0302047c435bb500673065023100f2c50aa981132dd8e3925eca125877122d3f9bd8ad46f4ab604b2bd0bee79cb57052ed21db8dac93e50b39c99b12cb1602301910763576bba1ecc6ac537f888a79ead707b61ef6f81affd09eea098cff66945cccb74fbcb4e787fdae16ba9ccb06a10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cec2877a32a262591701a671753d9bc619413ee0b635714d452005455d5c6487ef68ebacc425a61f960bfde2ed6367fb023100da2c54536ac86bbf6e0159fa996c7961e0d3d5d52215707b0400c94bf4941e49ed5b0f0858133f8f60b3c2156fd3260b0302047c435bb500683066023100d62b90248393395d5906efdd9e59b11553e39e607d686a1fb9841819d0141a804544dbbdd0870c603f0a454310ef2310023100b5a7ab9114733f2087e2683e3a589c8cf5a288e4ec7850596483cd959f4ff7676ad92cac5b68b9ed04ff01473bacd1ca0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009666dea276ef8a9a8310e231a2c496f7d76682ab2d6454c0362a3e2417a54b66ba926f97c03682ebe05fc376fb64643702302daf8a42a2f4d1e25d885bb57b27867c26edfd307310953088b0f13e42a8e5eff8cc9ee2fedd489588fd9d1d05980fcc0302047c435bb500673065023100d7c4f19fdeb8d25c0037cddaa1f021818902502fed0a682d1a4f7a225be432a12b84201702d2b4f80b2f4f9306e5737f0230464f8ff9a24f7d338f4a2b40a48788e9b3d8c7211f443a1cef92185245f9d8a5334c9e0c354d3d11669a5fd60e00f9820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e753039f7ecfc515c1e266298af49e4a4f70d849190241919438f93d044e3b83054955522298872f0fe3c8f6a5e963a90230509a1f98f3e72509d2ab4488ae0abbac99ec2b1b8cdb5468657a938615bbe94c049294cc986f53f4d62f3e7e023896810302047c435bb50067306502302c5fcdfd1fddf2380a8ba32feed2890dcb57da75a417a1f2f2aed2913607404568add02f001a061457fd5edef41dc433023100bece35aa5d6435c166b9d299fc7433ff3115084bffd6393d53b34bcff8624b83cfb5f3777cc26c73ebd18c6367db85190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c4f36683b2ab6dc118ba8499070fae3accf1adb525eab0ee3cb717440730cf52c50e10485e17ea13c281a479b84906b302303d050b9e3371a2703ca03931f9ce1abe6d428e045a8533458d26ce9ddeb400d62d56dcc7cc8fa2cdd2d0443d75750ced0302047c435bb50067306502307c6e1a65a9aa12d62ae3b790cd58aa095b7e0f3e528aefdfeae50fb72ed5528b2fe226a82c0461c0c1896d3cd88f60fe023100802b9b8652e87fc9974ab92327aab08ad4f9182099a68a3cbfa8798d9e9f0862956fb8de17a7df5df7ff80b82c0b5c4b0302047c435bb500683066023100dc941e5fa8cab25a6d38f3e6a3f02bf2c54c255da81e02f05857b1e7789a7dec6d8ce9a4bab904ca9de15cd08a0f135c023100be4107aabdff4ea47ba6d716e868070398b82df526a4b1627ab42172b1bba27b33c34c0957eceb88221a02e7f07039220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e79626684d7c5f6fc1dd5633b8e2252f077a2a7dfd36aaf576ff3d9ed72385e4c807f5bb461916c30f0afe31f2778d73023100925893520c0c5153435fa3cb88e034d042a2380d81160d0df5168e669e5e06e1e4322713ed787a4e40049893ee678e340302047c435bb50066306402303adca8746e73c4c964c3e35b6cc3162e4b0881ba29f12f8e74558421cc16867bd3a6e0a0f7c1c7efe09fe5252f6d4d060230441ff475f51616d60e1359cbdc317cd94ddea6692d6f4ffef5130b8c0eba4c3d1d2494015c59d574b1727b8a084661ab0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100be119eb473341a39874fa258e16765b9240f5201d7a3cc8631b70206cd9c0b807f0e072b48c7cfcb0621f6ea5c3efd690230272a022e1a239d745a984e8d517d1e4b10c1a4f5eb284120d56fe05a6a5513ab3c46cff50f385fbd86a70fcd260905240302047c435bb500683066023100afea2c29ef77d64b9fee92ad8bbdb59e075cfc4b190248bbc1219c977bc0b8f9a07abed48df99e2d6f3aa8c727487f46023100e25ef398f79e4a7246d63ce4f47860211f13e54385d2f77820542d38c983fa8bc4e4e34df5e3bc98994c135d7f5103d00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023002f4c839e9aac4db1ba99e65f2e3be1347cbaf1a61f05b34d2cdc65cd5ce5ca1ec77579ee733f051e49dcc739962ed7e02302792cfb33dc9050f4c391f6b6d1c5c8ad41e5b21d3a28c0340e7a62bf43c666df31852fa50f2679442ea33fc8b12f2270302047c435bb500673065023100f97b4bfc9defa974e11b9f9b49c4bab65faa426f1e770045210344429ecb9adf969949b184582fb9039285de12c4fef002305381bfe35aa39264b27cf64768d7051c4bac93b7fc259b79bd5b98cc6118a1f0390badb44575a45fd2275c6483be2ef80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c0e96fcebbe2838f23a6132cd7592dd0a758186b02b98261cc555f62b6f26d8f23b60c27ecd41032a73ec822bc80eb6d023010653dedf355208a7c2ad6fedbbd6ceac17d4c5705ef9069b0df2419836f9143b4a2c23f3dfb9da3e218782d6b8512110302047c435bb50067306502304fab5bd6f75df8d5a61734533344a93f0419917a2ac7113e319b426e7c3074f07dac7429e61ef1b55b9a1393eab14eaa023100a9502051dc01c41bdd664038d7e7b5f1bb682af8e22d89c3ce84defcdbacb05b60df5c8e67ba8877604f8647338766c10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fd5acb505c5dbbdb86ffabea91a2b93d3396a0fb15bba221cc9168742471c98939f2d03b857c71a29190b7bef3123b8f023100d8b45802975251e96d3d473bdf6e948325d43cb95ee1b9ae750b09ce3304418ca00480d21bf4c67572a6bafb045aab3b0302047c435bb500663064023029ce0b2972bdaf62fbed99fcfbaacb2d25631b24d498fa2644440b8debbaf7606368c8866b9b7d51331db56b9d8091aa02305a3dc9664d16a951a3f33e2e12d57f9db4bd7d9b2b88dfd6e46472f9c5bcdaf5d41a0c1d61feee8c777903213a80c2cc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e946d9720718af2e5be39899a5299a406168c1d773b42196c4f46b005caf49d1169d2c911a896e955a57106930141897023100bb637b701dc53062afa353116d5dddb08854fb955a8fd4c9b02b0ae13aff39690785a2e8038c1eb682bf26fae5cd75730302047c435bb50066306402302df6ecc062363e7d65dfcb7872dc2510d2faf1169c8c9c3c2bf144aabf762f6b1872f095edecdaff495b808fbe6f4b90023026c31588978389dc61d4c1ddc472cc566921606e1bcf57a61b0f1a2e29980bc1bf99919df6c30de9b9cd74f9fe9758cd0302047c435bb5006830660231009694f8cd9f5f69c5f11453c7fcfa623184fbbd359ac6b24dcb574864c4a2f8c0f2a0463ed23629f6247b26bb2b8c6939023100f88d21fe7e3edcff08a34b71a0525e317a5ed2c151c6d43e6e4b97ad23c81563589ced0c107e34fab5795877fda3c1340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e128d2b1d63cb243d04329b968d9440afa1682eecce20cc007c5592d4cbbb935873d99c6043a3ea9c1f8d183f8a02e49023100e43ba5c12dc10d7cc0322c35d4f5a596da626818103ae7ca7e6a88e30375fb95e5f8f4680f2fb1068b5ff1ae12ed9f4d0302047c435bb500673065023100d59d491159dc6a417380b8b552847aae9bcb56ce07bffdfa2e37f86c9ae7439946133ecf131a7210adfeb0e005f1f66b02304c42f81867dd41b67ff2db1e3abe9236c4d501cabc11e6858153c56d425f69063fcfbe390f40ed7d227fd519b2a931390302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023052fca148cb48faded7f0982a907f9e573bd120576c1f61e634c36b98627b39e7e325c050522cceea906c8d3944701372023100da1d4318a912c5bb7a3cfb7b19245b1a014770afdd22c78df048c2f4205814195b7fae8d88a37d3a45c162462f2235950302047c435bb50067306502306279e0134cfd489a3a1b92ea8715d62af800c6f46b7b5db1227f0cc2b8bf39351586a1c79ba6ffe6bd49ea0e2f66a9eb023100b575533b021b4e037e6aee4e6ea72c477514a807160a7d2258a40ce3906551b912e2ff1832de820f6fbc70717dd1d2b60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310098e6cdb54ca11ffd4fba09e4c2e20c44eda88eb58e119ebdac527520f27d818338d44fec916bc7083c994708f745a1f002306fc52ef06b860db8dfc29694f6a7626048386edc3de54f27b12dd33af4624b4934a484c0f35316a5294d0293668188740302047c435bb500673065023100e3253fb2f279f4b28d8b53ffe2d8248751b1376cf31a6c51ef460bbafaaf4acd6c5491710f047bcfcac5d0bb44e68aea023051004d62568fd4aafda03b71ad5257308c23201d904ec06d5ba43588602c29fb7fb173982a0cbac3aa6072c18babc8510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310098c2e4457cedab379e31ba6ad760b357887496c7bfb779d6a73eba8481e2ec86985cfcc7816037b9835c6b028af78eed023100e67a25d5384e6d5bf57bc6cd50f34af01a0e8d943155ca30acd0eeacf3ad5f4e884f2b3e5de3cf436b3b21368561c2a50302047c435bb5006630640230073101d83d369d7fc5d8962864456cd730517862c34a65571709f4afdcb97d15fa02f4515621b03ade6d2e52a00ef59902304fa5f799e2d862c42f15b85ab1c938f253db5107dce1bbd412b578c4c0572ea429f04515072ea2e96393540bdf719d230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ffa6709b565817964e109ae6cff5d028347225483b1d9645749b63548e20102234cad18f6539f7639b6e273814eea52002304457298d9fb95a1f25d5afafe34a939b07d4785ae836eec9ccb9a512181aca8305536445ee4ff5c379a7012ec018753f0302047c435bb500683066023100803c1447f67e18bf849f87aa78067d18b29958b8f4bfd71f082dc1fdba0106642f9b3ad944800ccd5f079d27d7abfbba023100dbfd6efbddd9c6359fc2a5e6223bad4a29c3d6069024249d70af3d482358e5d46ac98503fe027a0c40188b79cf6c56820302047c435bb500683066023100d802adcdd40969b286ddbcaf597fab66f8a3ffb5eb20e5c1f807fea162a8526e3fa926f912388a59e7c0a14aa764ceb1023100eac242ba51f500b9ac3c7a3b18dcca32d1aa8dd5ce9101ecdcff1c7c5fdb4d7d73ec88d54405d546c3c3770dcc553cc10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f5301f3710ea1600959f51fccbf2d3f9d0dafeca1bbdbc949b34e683b6386c806c6450fcd476f7f9c19b1bd6018b8ef30230384e54f82d4425a176a2032723ee829a4cb5fb76e65a5094f154ab93c7999aff60ecca7ae696ed70c30e4d88140fb8e70302047c435bb500683066023100e021a3c680455cb470c6768ae4371d60c549cd04cfb3fb25cf595b655b71dce5327e7b178257cb62278d79e465d9bc6b023100ceb414afea39e8d7ee35f02bbb60da05fbeb449c3951f243b626df8718105e3a781186a951d90a123d10efc9be50140e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306a611e79ee01d2b2585d30202481392ba04f539775a779b3a8cda45b9b53eb5f68bdee7397a31d38bd6ba9d71be65916023100d515efeb080d33f6027f9a1fa3d84e2776426d2155ffc43f12576fbeef8fccda4549c13f6a087becf73c4618a75dae110302047c435bb500683066023100e84978f9cb171e3ef22a1941432b9d83aa69c483ffadd176191043e1f6d52a2585b9ea30558b6813ef4c75efcfe05097023100d3a3df4c20f2cb596c64fa12ab8208132361c7fa308c735ecd8f18c93cbdc2b0e9410281baea69b00fdae811209a06290302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302e9988579cdf5cd34cd6fcfc995bffc146cb444dff1ef2961ae9fb461ab8bb89064f17195284746255afb9f76c23268502304363558493792b59e959be82aa46637086a552fef92e5098f58db2524d543562ee389edd13f1d2e099075d5d2f2510860302047c435bb50067306502301d22148dbbc19cd0f07eff2b5b0e639551018c12599d133bdab99e1c9d5df7676a4a11aad31c8589f43395c9f492a59602310099be8903c35f494057b3372d0e6ee0fec50d7d331461dda1ce3ec1cb527506028c77df7f72fbca4279daaafb4a8195a80302047c435bb500673065023100aea3fd4c7a54856c5c8447b0d38ff161815f3af039111731d95e485658e3efeeaa0539d14234c47dea394bfbd3ffac2402306efabbe7b6946e864961f601cbb6e94d058b9bf62b497421a87afd07103bea75babb033566a778595e1710edabf03a6a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c2cb7831a5840ba279b81dcd0be6ca0733c60262d14ac0602590bf32d3bc3d139b60f41248b37e0c20128cd2ae4857a60230687e85e1cff60d1ac5906ab296e7521641351419089c51816577a4934742c4dce5a07935fc1d8dc7cff09390b96d12960302047c435bb50067306502300f70ed64207e25ba76ad1ec366530c26ab350aae224d05371c8716b45860844d779d18832e2698f0ee998e4c55c3b2cb023100a4f1286626460d66c9039354e969262673d898d5ea43d892ecd73a8b408177172972ad55f4a2ce07cb497b7403e03db10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230740648d689cf6d57682ead653c4fdf8e01a17041ee191465e080a6727828b22035b7e005e7e5e722ea0e76871904b4bf023100b7e364f156e608eddfd3cab506e45e6a973a3b0e47130a26521b2bc8fcd25703fa19f7e17bf09deb14ce0dcc1a89d3f70302047c435bb50066306402303c81e7c9ec405cea32da85de258946e4f5473997e9a22dbd144b3598a20106573d14a31664b9bce686925ace8a6cb77f02305eaca9bee85030146d64e08505c26b03a07bf26d688586ed6b16fbaa02c520078b0ab334af90e3960254955a4aa4f0240302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a57cf7fbeafb949bf94bfa2427183afb73129d7c7be44018333182699aa7af2a129d73bc994ca6a6520a4eb8ab41077b023100ff332734afe146809812d79514a6dad52dbb0ea167911324c2c32956d01c0527876339b15cdaf4437a3534ad783671be0302047c435bb500683066023100bc7059965074dd3dcda1ac659f3691acaa9967a4f20cfad2575f2a90d0c9fcfe7f5093435311e3050ba6d76735c373ab023100b924efacea3e629d0d660e58977b0300fe718864f80e2436ec2ced8a5a097af0b58ec0f4bce6edb5fa9ba8826632cb8c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301e518d195cbe7dc20bc5be21ebde0e24076504487ada8bb2dd454971777d1f3db4f5d5e4accf131aa372a4b0102f24b7023100f6878546d9e3caf979fa0dc30432a5183dcd43c8db21285898a54b2fc1c31b046440529c14b8e408b0dd73d71490dc360302047c435bb500683066023100c73a35cc8c5d410908f32cc58a185cf9a51c1931a3ab3ae427ac3a503638dffc2257e71d45fecc25ea4711c770cfc3140231009f84fd2a8ee8098ecf177b33746bd2864659b1fe2963460b239151b77b8405e7600a264ec4d1296af67ce61980df1edb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009195f481aea3c6d28af8a565e1eb3f9344e7ffbaa5580b2b50ce09d5fcd7984ae9c93131aef25d68efeac69ba6744e18023046ccbd76c0512c1c6eb7b5c8f9beeabf40e2a784e8d7633f5830c23c33cccc97e93c9ada5da198420b479bd2f0e49a4b0302047c435bb500673065023100f8000938668238474b1afc33b9c2cf4a3704f565c8a582692aa8546084b1bb56a18761f3b850cfd5dc0e679054456c550230660cc33e0b9d86cc6c1a82be3292f26a5d4f20a49c2943defb33dd23935b5e78ff67e0a5c165dea968438be7b9ec4c810302047c435bb500673065023100d9b2a4476daa21675872f6364d2c8c351a579cc5598b721e49211942a8e0e686666a71e087445a740ccec8c5eaf09e8f02301d9e7b620e615685bb2eb124dcb05424f4092d10d36cad80e41d8a7232c0db21e4fb40acef6cc10ea3419824d04d48d50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307d221b2fed68942870570ecb6199ca30a66ba485830595235f1706c16085e6f326bf50d471f8c94a3a33c7d5ca726703023100d6b89566a5e9088850d358ac9e74d9470f1bc32185a7369c39264f1fd68372ce50edf04a7ce31ebdbe5eb729c0e883820302047c435bb500663064023019d407cff2b88de869fa3d6b92a079b8ba1bd38e84d1b0d27bf5e57e5333014706414045b36358e190872efff7cb425602301e3b9c8a4f78dfe078efedc57d464ee4bc83ab5392dcf74736a0c86bffeda7873eea49635bcf553ee73e6167ddc8b9990302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305eeff98cbb8248ce08d2c6d0ac5c953c605a0cab1dc457a4149876aed2f091d6724682ddeb5ac91b9015b1f5af6534ec023100c69fe7ffef0b01258c368f2642f8a895d5116d42bae7548c8213f086b220eaf92df7faff6e871436df95a8968fcb94ab0302047c435bb500663064023014813a78bb4f51a111ad60427dba5c7808b09b44c59f134716299b077b415f8d4ebb84daa67e5297132ead04c16891c90230179b047997f4034ab3e47d7109f2520a7eea6ff643ad847deb4e9852112f351f81f89f51753f6de173d3442f8c2de7760302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310090ed0e0420f190ac751a98a103c8d21fec497e7832dc5c4a41ce355798ac6e644c689034c2d2e4ac3cfbce304502afcc02310098320e5b30d173259e0ae5942a437cb3b3210ee96469101780e58bcdc62bd2d439ed3295b1bc2280ad241ebf620d8ae40302047c435bb5006730650230336f7c054a4b28b4566976d5cea286c5fe1b9a4db392d0118d3d6c9bb63a080cee2200072bc2b6b5c26ca421f78116dd023100b28a609218b8c0a766fe0ae772cef7834ea554aa9e6afc5cf693be0b43a444f6b11c5be10ea6a0c89c7236fdfccdf9e00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b99520ff3f8181cdc938d0f62e6d9f0e73fbacb9b66036d9e982866d347fdfa46b52140399e436beab79e1809634f81702310080bca16cec874f7ab40fee0aa44445eae396a07bf7bf5e385259d7a9e274210cf9e9c15d36e1df913b22b6ec965d30120302047c435bb500673065023100c53290d3cf3c89a4f26b8c58c2eb51f91ad40257581b2be326555dda3b027e0a0d4a7ea7ab6bd1c65a59c366411f8a1b02304809d98451f6189763ee89d54478cf718c1961c7d5f82ca2087342a156f56664908d7bba92c0e4290fb325165f21af020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c3b69574a16443a427be08c406bde84d2426e6f0165882a737413d8c769ddc9ae576580e0b57336eadda0b0b5bca0306023100b3b28eaceb9abd103f3a98d3a103642b438d6a3e59b009c6d1849be693210d0aff77a297f3393a5d90b3d954545d3c9f0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bbec5e932adfa2aef7c744d64f77947f98a2a8a771cadc46ef2bb9358975714381c77cc059badc38916993b969ca1e3e02302a060d25f87a3745ebd9955cd853d366ccbdee54056c97d1eca745348c1a33dcd2ff10f560e3e69a925daf74e809cec60302047c435bb50066306402300559043b2d8b3fadea7f7b919fd5346d0368c2810090c98b7cc07d9cb7f29216296ddd2d3fd2850ec747deebbaee60d902306247a893adb4b1879996cfec6330757272c2b4d32e468177aafd70ddea93c887b7948d2a9fb7df5ce2e166ee9f9a4b6a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100adfe201109923c4ff9ad808ef6c9e75386556255669e579ff0164ce9c3698ce0f550fe5f006dd26ace9e731e04ecc00802300ebc0bd95fb66b5d50f46ec5ff50b11290f953cbe6ea76fb3f02422845e165fa4159baae897268208f58d7f1af1cdd6d0302047c435bb50068306602310097bdfdae7d71647943eeeb7a57f3e2883b0b92b2aa07d8a88b9187b26da9aa7133404f47f865c3cb1e9f43363a509d92023100996283be6565d248836c4f67237bcec39331de89ea00c3725dd1c74d38577615125a7657871446833bf69c867c9fab8b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230551bf6b03855403f3c932937dcf5c0eabd8d92373965b82231ac1992a45420165753690c5fbf9c404c4b332e5b78ab64023100fed0fd16701e5b82de274508cb19136195b8d35d75c7ca7e72d263d76aef0b6bf13da833ec226019e83e91f0b86dea180302047c435bb5006730650231009c93b0fc0eac42f22e26c4ce47962901f8359ec7d791789e5238acaf8b4b63e87905869e786207b2b71b790383b8528b02300f274a33430eed161bcad7535f61086aad5432f213379ae4200c9f734a4ee71f5ac89a7c6406d677b6a8587c8d4fc5fe0302047c435bb500673065023100d9b2a4476daa21675872f6364d2c8c351a579cc5598b721e49211942a8e0e686666a71e087445a740ccec8c5eaf09e8f02301d9e7b620e615685bb2eb124dcb05424f4092d10d36cad80e41d8a7232c0db21e4fb40acef6cc10ea3419824d04d48d50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100eb2a489cdc58b1c7d6859385ffa65b65910b5b430d3606da6578fdf00c970f13c5828a236c8b50dc958fb8e335b603a3023100855ee4d385f1762fd81f90755aa62bbb4906b001fffb68e8fc3fff30503ec7d1068bf2bf76798168a0acba53b15938b90302047c435bb5006730650230685ed2edd7c10d7dcad61b92ed103e24758d273640fbb787389533bcf757455c1a5ce60903a190ac9917807d5daa86a5023100dde271a8ae5843ed6894982d6d25b13dd006ed1a08a20e0aa9e36d6910d4f48d3962154f46dcffa22f7fe3f92b08c0c80302047c435bb500683066023100eccf49e43349df24046ff2928ddb1184c9622005e3ba11cbf6bdf8ec8a859a775d1a6798fbdb951d23e29a28b1ad890e023100bed2afe448cbc628771aeefd621874421525a30a48794fb1704981a70c4128c1fda6d1523c79cca398aad1b0099d1f520302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300b49edf582978e51147bbe34fdf3447a151ed775d6a3fde2c33d2046cde7049bfa9fd4d0ad0e11925b25ad044bf28f10023100d1b13797436a90f6892a9dfaa02a62e07bc4ddd189b002b7aed0d0ba91bf70fc35a0261c47410ae56e0b41e8869ef6870302047c435bb5006730650230366bf772f34605b363cbf1aa65aacdca55781813c60930dfda71efc8b11b11bc5b4fe08360bf996e04f09ae3e829c32f023100a311b7948e815d5d355373a5276ff6f8bd4cef84fd743d49d5030600502fe1836182db6af84947260a4f069d0a6489010302047c435bb500673065023100a8883951dabe1b546a45bc96e681ba7e996315c2d5ba08ae975cdc23e3569533705fc07f1a5319efac2bd4ff17a12d7602307ece6461523efa77394fe824e28092e9a492b6b621f4e6548a7a9d877b14e5df02f14b5f7afe9580320f50a2dbe62bfb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023064b3772c345a04f9a7f0a5ab5ec4327cafbe25921a3b5a7969534c3fe9d89d57099c0f85e32164f9f166270b3c99c3480231008a36bf010b602d25f7a97edc77a02cab0011f321fea9304e37814733fbf12f4495c9a069bfa7a2ca22f0f92d236637cb0302047c435bb500683066023100e9e56fc8d072d08f09e0091c0ad785a25a7c3cdb242dd95655e3ba8d90a4c326b377ac36ffb924b4477f19a23cccdf2c023100b2d2cce2c898e7fbd553f1dd483ac444d444a9fc07e9a2d88a1b7102f162387972d6bf68c509b5b241ca1ca758e4ebd50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c31f263fc6a6d2b1a86c0979bc5cc9b3c5a11f3e5593af92238158549afe84af16322d5e3731f7d3e96b1e54ef60371f02306289678d1a65f94fd8d67650a6ae1016fd99ab3f210e37ecadc69f8f7fe2be8a4814f240e94b59de96fdd04e28e7f1510302047c435bb500683066023100dccb879c5c5a76b5e7838c55ef099ff365b413053f0c5be3ebb944a0d54ff7fd59f31c384e4d8e8e1e84dbf11c675363023100c55d64f53af8b02d73d7045911cb019a3fe776ec9c4a4e93dbd3394ed8524c6a3468dfbc838d3ada5900b0610d9c0ba10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b5dbdf9f366b1eb151bdcb42784ab3fdc9485c7ba63ab9de474cabd5f59ad489d811bc2211465854fd46c8e8935f27b602307d8c17cd717cfee286bb1812ef8e66ae38133812f63c54133eb56f9178bba3718ec82e33ce203825f486961f2512ad220302047c435bb500683066023100cd7d1de324eb83b270d12d860d7f9a27f0ae2a3634d56abe71f17c9690db827de73cb86a611c14eea428bc48e6e4f87f023100d7d4830cc3baa16db77fc843cf29ff541660ca060bbf8c6ab33cda9f7d3527bfc87262322c9c04fc6308e45c4b0c57fa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a2fda79225890786c151640abe4e9fe592226d43a067fb891ec02f8121174487e7d219f1eeb372836201d6e0abf6c737023100917c570d4a1eeae347823520c94373af2900a8821b69544a1af5cb8aa522c4310a250ac63481bc1dd5871b238aab508a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008f3cfb38f81fa12c6177543c8e382c67db17dbb5fd22df050105f3dd58c8a9574a8e494d4975e255a629ef38ca4684f6023100c8011d81888c974ae1cfa09d049669f5070e0fcb12a103cbabfa89c14acaa137969930ba87de82e7c7ab0d2d43346c210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230125258ae5cd95ae13e9a6513586f62831e935a2264a19baac02522ff57e036e499b42e3357adcf0badc253e756f346a80231009c7f0617dff005703a28d0c0062f12e06140e785847339c3e8314a69669b4e47d6ee42c9a08ea06238043b5d8cc3f3970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230634bf8b92a83f1889838159da76649ef789efaab2350311c3c2e59bc3927c653f422f6799e30a0cdfc4cd38b4d7a467f0230302ef5f49b9375a21e5fe08391e16ff2b0bfa61324ac01c7188bf683831db0afb61f32059e91234e53971a99a23455cf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304bddcc0bc2de4a793478e1342b87d0a419f1b52a752890a664ffc12b5f523305c727dcfd2b1af3713fd9e1405896166502305fae54fe2dca9674b52f1ea91f239d38550d90962529c9dea5874452c1100c61c8529576bd12ef4d6f676fc6f1bd2db50302047c435bb500683066023100ca22b74a7cc82cead4d73339c051258580a6ff0df5fe3bd66b8f08ae4ba0294f16358ecf0c7dfac5200f0c9ebf9b8171023100da150d5d47cbd035a02f493874493c802291604e94d7a075292b425d08be4c499578246bd697d66cb0a945c68a1105d40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023017be43a1b77dda64eaaed34e897b36d20865d85598dc1ba5cd2217cb748fe6a2de06485757aeca1714f27c7d0a3af06d02301f796ac754d77605b875fd6072514db7697812ff597f54edf491c0799724e79ed9c192ef6f36aa8efba31fa0e417d61f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009571db3238d6eefa8ec94b5b3d05d4bb044aeb5a3ad5a6b8df54477954027422c9bda42f25444778b84f748dbab7f48c023100a5cc93f7181489223dc061b957584005cdad78ffba1b714dcd42c3a7d10fbc14bfc8ba4d5a0690ad1d202ece4a6ed96b0302047c435bb500673065023007fe0a9543f6321c293e380927797fce03d75e60084fddc77ee1513ba109a5c056d73dc60406fb66eb8d62e4d4572da5023100f74c6dda044cc9dba28ce8ea7c516ca83e6f2c5b919bc783cf14059dff9d758265cf9a8d3506100c1fcac171e39f16690302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cdf8c0029d218621b55127fe72a2d8440aeffa6a94f1ce9261f8b369c322335b71e14359463ba765bda9b512d28885dd023100d3c1ab82301613c20a0846ad60c6c1dc06c59669a233393b4445feb086596a40d66455ad59a99d0f500831dd06b40cc00302047c435bb5006730650230113790ffdc270dd6d07f9ae1d12ae66f709226d238036e69ff6706bfd9cf4a6e34667a50bb755291d4cee7e7b0b5b4ed0231008f47fad218825c7f3da56b820214651c26cccafcffa1579ef9f1423c552e578c02bb528134f58553bae35ff40fd629930302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a5262eb51a2e81bca5f8823164805773b21714d5e30b9021b2af92493dd5c22f8ddcbf3e807fa8b85a5e4618f9439b95023100808710dc3269fa41ff5b7b1c0401ed57fbc236b85368d8c5ef5fba60bcb9401ec8fbf3b934f55ac0bf28eecbbcd3c3ef0302047c435bb500673065023060ff963c651d1103aa4ca4ef8091079c0e565458039a18f561cd44855f52e85806dfe97a2eaedfad7765ba737dc4d59102310098db87663bb5ea1e22bb457f33879fd2f12b11e84942a218c466368838f9431052e3a6a5a74a5d6d8e3a67eaa5b2629a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dadd07153ff003c18a69718bc0b061af4e180fb871699c664af1efa0b04e5bfe2935ec8e9f3c43994997766d9280391c023100e2b2c1db1ebf4c00ad6afc113690fe8975ce27b195138c532de247a68e32041fe91a6d4b2e980f78fb602662b19fd1d90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304bf2f8870327cd87dd9a529c3bd9fed71132b8d3c78538d36bff8c6cf7fc0d2c96830ef81dccb09006bbbb598878b207023020b70b6149d3a9d7e89e7ce700577ac787380ec5dfdd762577e0de566b8c03535721773e97c8dbd709fc5e23e4e0bb100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230084c2b4007bcffe403b32853fbfbd73b2ee4b43204493f40ad87a986ce24e27e5f384b9ce4d36048bb1fbce044c8951b023100d70a4df1e65b30df81499950a7fd1ff234f5aa1f7bf90167cc1e9d52ad9db44f972f354fe28ea90e8ecc8fe49c2f9fb30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307db52a50c8c35dceae9d3024289e11c08504141d70fb450571b2c97f41dfb7f4ad3df1778f8aeb417aeafc9178a1042d02310087433e86ecb4962e92027d1d4886356d1002141eba5c65a9fe6e75a4ae4e093b901246ce3ee5a43a6a48a4281b8dc63f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307e067b4873bedef31cbfd229363f22bfd5f25dabc39866143547f0f7a3dce19140d8638910f3d271c23fa0db5d009f44023063dbacb8ef066544ada01be7471d964776a1fdb953df35564285425bc33cab8bff2edeed2eb461198388dfb1157ca6e30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023037c47ebecd255399019d18738c55acfe7213ec6f2090c2b0b167834588af31755813bff5fb7fb5a907b54a57eea32d67023036f436f3f3ecfb6f6cbe9bd4325612b7c8563b6286d16a8869917a832064596a94de48aa499bbe246466e2207d4cce460302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305eca881007b59167e3177604aef0c59e0d7aef5e08643b31c1b4a2f9538da0f89776449acdf991ba944b66899d217671023100b83d3a33eed0e15e8aac1330e412e0db00b61472afbdf40fb49456e59d6422c3605ddcf67f856a60388fe5064aec2c6e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dfe5ac6ebfbd0764c4658a65b58d0910089063913f4536eb7319cf5ce40b4cddee5d5decd0d16b10bfb179685259eef70230020f6ebacc799260af2a9878bb0809992568f398d2a5df56117c6a386c9a8ea08997a71d36df6d5cc35b98872ce23a240302047c435bb500673065023100d011fee82904504ffcc567db1219ea0bc81d7045e5a8bebfe0fd6f474f57fb46d9d83d0cf99c39f1c728abc9f5b587200230700e1b45194f9dd3f81ae063a91a5e4e51b84cc17b7798253c81d409dc5fe954d5380ab434c663d1c53a315c86d87ef60302047c435bb500673065023022e52a264f010b99afa70babe6388fde3b5384a023a0c1c99f282a830b8bba5588620119d2681ee4d4627c3546420a2d0231008cb16ea4a7d8600bf2572090997aea626aa2e5cbf126c492f4449e278c18ce69eb664ce9280e3138799fff7afdaee89e0302047c435bb50067306502305e516d1ee3cb5c0b376b979ced86c450ff9544222c51ea22aedf5a5a77be41215be6d40d54fbb3ead2ee099b7eec3a8702310093d6a39901634d171807b8313e80ab1363d269bef029a7492c1ed31453baaa35df3638e631c2baf1db9ba6e5379d68b80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302b7a7075fc4b6af4ed00cfac5d34cf298db53b602e5f15759257dc9b7211f8da0ccc4aef0526353e70e205196f4c7b700230484665a074356674173017061ce3ab1873427197db146f3d6c55d9644804a24e9d533745695f73bac367b75d555ffe1e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d99485f8dcc7aa1bc2e3dfe42e37bdfb34583af7506f60eef31244f87a62dc9989d92c4173d598065b955839c083af63023100acd064790eac44b5ee8450d9630b943f5f800d0b67be77e98e596b63cd69ac9676652603c5050fd471d73c2583b0e02b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023076c642bb434c4a5856eaac2800e49098fdbcbb2741419a41001020c54c101b0225731802617c0fc8ef450af4a38ed4cc0231009a9c5a2c30b90d66af6578ecdb84e65f5d3297e3af7958588cd4dde76150836b21448705a77132e37cd32e18900be1580302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f23cb9ea2c642e4e34fda2e379400f21e23083e458dae80207c563ceaeabcecf887070b1fd40a9f6a07c498b51bd3eb50231009ba7d4bd1bbf505b38d9b3fc104c62f305e26213e7c3acf204c97d7b57db5623c5fd013fa13d556be7557e09cde2cd920302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023071ce33721431a326408371c7c61baf130c8db72fb9a2d8aa33b2395e14fa3d844345e739316ecd68488c55b011f8a93b023100b62867b6b30a1a576144d356e525b1a10fd168e092363b6c582e19fdf2649e6d5442acb10df78349412719a282419d2e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009d1f5e23ed0368a652e23fd0ed9b102d53d1a3896d4b90b8aee3dffde1bc99b2b504069e157b38947ac8567ed331de8a02302337f3a7e5a9ddb3be71919ed6bfdbd8e4134dc0585ebcb6872f81bf08e24f8da823f5fd256ce0910bd15a5d62ff77f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100aa1067cb5fd831966167ded9e8c8e0658b9bc5533bd9b97a1de1aaae29fa5838599cecab9df4c8775924b35117c7815f023100f52e4cca2df144b3b148ba80560ebf63458f58765f9db5c4da3921bdde9617dc7e3036e26bc28cd2f3f0c8363d89046f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b7eaaa9ab7e476031f571d345a7762f3eddd0032466cf16eb32d7b1456a08d57c704e7413ce1129fcc38d8841478b420023100d38d9b77bf650070330feb854f9955047dee6bfbb552bc9dff0f99b5d7d3a6fe8f179aa8c5ffa77a3ef55a2b49de8ebd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303009fed7bb47bd495dc33cff8758c7d9b233c4a82f633b1361f77b26914e451670d680735ec0826524a214d74109649e023100db125587959043affb51522c1991c4ed0dc03c68865abaa91621a491832bf51917124dad3f49b2b759bee0ce0e8fed180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230105caa2fff0fb33672e2d5f1b4e0f82b1e19d5800ff08eb8e826f8ac8a3735d03fa4f06bc93a2410fb3cef379b94a62c02300f7e0e451bc97ffa23e5244fd7da880863a4f9a2ef71db86c597bec560af6a250f7fdd56e9975d50045cb917ecc8c5de0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306eb8ae11e1ba7a7091c7dcaaa59a5bcab4b45f41657ea582fdaf2a3d0b97b437169cb32b1a9565aa4d46c4492e96364c023100a388ac0819dc383ec697b2262dceded24682d547cb9e9b140e9dd16f1f007dd200328d1a6a2759f100a9bcb6b1bbd3ad0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230491959cab666bf83470a83e5794d7888e06500565db706d2e4ccb5d5e306644677ff25090649fd7f074c53c1e35ed5d302301efd371ff2e585454baf30f41cc0059e67ee322f2f930dbc784c1f7c89cedd96daa8bf3bb3a37423cbdae1ac8346f3af0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fdaaa38e304d1611996e3f6c64c66b76ee0de371a10057183649f5265e922968eed7364e677f0b6f55b10b62567dd902023100ea827b19d2e922c4d537909c3b82a65cfb91a43cdf53ae7c21c7fda3333efd5debc1eccb9b125e37e1134861dc515ec50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009ebfa5ae8646d0f585b00b19f923f7baba3aaf8404bbdb74b934eb636a7f1a1b41a1254d2076c315a9c27f8a31736890023100a6b9ed458d3da58305e4c1e35d2b2b083ba2ecdd778e2db563963ae7b65e5276d3bca4d704529a790b6ca63186134ded0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023028743506a7fa44d50723c58f146110a6664f57746b3b554ca5577ee095ef0dd4e7ff6ecb5c3cf89e1ef37a46e183831802301b96b494253108fa05c7f300b5d92e4e4c84e23ee7745c0466e793a39621951e7e3d9a409d6adb0c133fdb68019d057c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008fca947fd9a087ce69eb9f520b502d9d9b2909582677b1d49e57028307b69d6ad2de61f9f2ea8a4e7ed01c132d7e24a2023100f5bbc1a327cd05905f9574a79927a87b871b89c65556a1ed9305ee321f48f39898ecd8f791498ce36681ad9836d20c2b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310099ab810893e077e56a72f5c1fa22cc99c9e0276537f52de52dc52003780a3e6c4a8af300a590aa10a8965700a674f05b0231008b2bb45209b610abd362057e95fa834a5d1ed4c00d08220a39dd339582fe7d1e6194aa63d48ecc1f1ec52cefc5dfa7840302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100efac7fb13a9be509db5bcdc6e0601931cf978fd702b23eb733b56b27ce83baea74295430c2b7fa7b302480c8de6311a202307150ea6a993bba6929cf41a102a358329aec4bc30fb36055faf9ed4453b67fa6ce142cbf58bf8440a7b36366ceaede970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304e8a525fdbab35222424d479399a4e8430b3111fe0b71ada8a209155daf23d423fd4e69d7e54c02ff2170ba5dd2d3ff1023015e76922caeb586995cba1a795b84eb7f12854f9c50afdce6e7a20fe770d9107c0f7e53a50c567da91122f7a406555ba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b2da9f3f382a73acec4371a26fa4971a1d72abb4666af92226e190b97a36727c6ba74f176967f123df90aaa0af0c337802302ce4b7468c97f4fbd7b0caa32043815772999da29ebce1895454ec237d860f0d866b285482b6957dae272d460ee9d1590302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009c8fd096515e84fd91ccf3dba793230cd149022dec23c283984ce31b5a57419295edc9c9ef8a7f0ffc0cb72b42cbc869023100e42490a16fedaa3e3e2e4b71092d060707136e10cf29528b8c678068c45eb2a0abaa43af600bf87a2a999e15967575b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230708834449c6b9dad932940a4001c3333593041b9ab315df075942daa3621059c58f9b3ea1b5cc6a71462677c3fa13612023020b350a144cc3007622b297b3c1fdd38db07376329c3e4a889673a9b6cd5d6e22205c0489a4e588fa3b0994b07d77ce30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b3516d2c473895263b41b749502b0ccf8b4a7867f7d252ccceb8d7b055c14d1bfafdbe24255977890e6b5d6e5f7a33ec02310081c06ba8cf1181ccf5d492e1fb103a4edc37872adaf457051b176f64858b02866e1e31a7ba77dd52ce85b94cbb2f4bcd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a148473687b38f8f895aec1fe8f71a7c83fd9dbaef3ccc496ccbdc75da45710a0abeb48d4078cd63ad1cf0f96a392137023100b0bfddd4f19c382ea02ff7db1a5e49da69133a2d0ce185be56b25d1abc810f747f73a2f45a922892fd3ca6d1d575d69f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b5ba30b79841461d6dcb3ea2ef763084d952794cdd1bfdc3fab67ec55e9bb6899d1ba822d1e3cb675322ad5226117e4d023100ed30796cd0c67f000687b91ba4b0ca6725d893d50a1ca990ca48cb2500e95a3af62d26a1040f13163b38a251543906a00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023031d5fae127e82e607f84f3b0f76b9d7fe5341f079ef6986d58667e00b85e2b8c0cefbe8335789797b398f6c114c00d710230685464f3c4af39b6b5d07f5191b3137da5ec1d47afa760cc994546ae283585c11598e7698986394c3e1a0e495b2368840302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e26a4a09d5251917fe378cedc3f21e7bff689ed397bb4d11d9c4b3e04c70a41e466bbd12cf157ff6bdc477f961bfdfe70231008feb03898d697a61902159419ea306c1091844022d469b9c4f550b48c4d9bd63346bdb69cb9c26ab7a6b193bbf38cfe10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023065cd802df5e2063c48b4cd1397444eb215b390fe4718dfcaced1668bcc0112c0acf57b826a4427a9ffac4fe9e2487897023100fee8989e2b3deb864f3a7ba9806068bed8eed46a0452d33566054af4cd77ed00229f1a4f5c952d0115dd2d17077c08350302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dbff841b9177a41d1736086e5a9196cafffe264903a07a0d3bb9b6865e8ca677cc9ea51ad584d9fdf6183908a7a3186d023100a9b36159366f4e96873cd4cfc00bc106e959b4d054176b1eb4bda987495acf1d219c1089838ab984eb7d980fccbf29820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023063a51888614c1bd0eb67b804d49f39592953b20b2d5e3cffdf75190cad7dd52be53ddc001d369fe7af7dbf075ddc41bf02310093f27143da5cfddc90df94cd32dcdfb01884a3b912bf9c7d270a0271a1d909ffd5e4bc677cc56a75b8929543bc75975d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c50d669af2939721ed2b0e448b93703d08ec8683894fe56ba90a2f23e92719160cb6faeeb19e0104fa81ea0813d1ad1e023100b39f670ccc99c43fcc44cdb4a5656115dd3b877c16a0e78b6da07a5286f0c8ff3c006784585a780b4fa806452746281e0302047c435bb500673065023100d1a3e0480eee75b99dd5285cf94ae16d8e1b6193f75c38d2c7e0af73158175da4fad01dc8d5571c0fd2c5ab135243a9602304c9b27e0a8c6678389c00bb85cbf15615b78d544977e6ecff5e87715ce0d4c9db7e359f28b9d11f595743d35fa5ba4800302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303294ad3ee19bc2cd7565fe5bbcdec3748bea1cf154b252ac1466810685f96375c813f8c7e3441102ed183883663ecbeb023059279661124c173a03ff5e7e1b9b336357d0bc75adbc2ce31f5f5e683d2eba9f2a411c2eac6b4372176e24ce3f0a3c370302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023027586d0c42bee576656495db767738e57ef9709acf0e90c1e7903250950f7eb1efd46426c042da6e928507bac0471c4d023010bc103fee3f4080ab156b233975968783ca6ddb430b144e84dec4c72ea4ab3b9e039e89b61649b4f89eeeb9e2a113a90302047c435bb5006630640230105b22e884ef52d24e7a5e053c28d4d99cb1e2f9083adb9b65d9b3d2afa9d2dc31e46f1cfb9b3bd1e10fd18e87adea5902303b86a620c480ac9f3ce5798bb23ce6f89423afad2c6bbc4b528e10153f47d93ac93c95edcbcd8f43ee1e1cdd0c386fa00302047c435bb50066306402306125166906238081fb8877f9d2de5298f7746fd2804039d42d7cec8fead1ef6a6d6481bf6f821c2bd624c141f48c719802307a2fa11f458d9cf4a050f8ea34db9507d62f0cf1ca60f5da32e0d31b46a649ccc59a85efa78ef89b49b88c3b938bb2a60302047c435bb5006730650230711ef934d3a3c3fcbf69146b47d7be7ba0a3946acc391b0808ec62511b04cdef92678e8ee4501846095d2672a7cfece6023100ec44cf35dec1f3c92e5fa943a7bd63114aca7a110b132c10d9fa767916ba2f0518892209e139f9a76ffe3e2565679c0d0302047c435bb5006730650231009f3a1c2e7fb852183311daba9564ac4e81c0f53cc11441c377c7b4607cefb2a40c906ded766cfb0ca322441df288a90802303b49261c43e5b9566babd39a9fe69d7524648175f67fc68d6889a8122e5d5e736ccec4759ca6e998e3d9de3a8a983c620302047c435bb5006730650230656b2561cd9c1e1b1fef645b7ae0c6ce9f343e55a9726fe548bb2d0bb2730ddc686100ba8a863caae4d9319e2d821cae0231008eef92b0a451e4ce1361883db8541894ac505e67778095ac1bd2315b226c15d980d3e3f718d303072c152ada6e90ee130302047c435bb500663064023026b7d0a36ee4f0e81bc672185137753100f9c8832f5556fce1fd05d67f7d9b12f330082de559404c22489190d74928ef023005f123b32f396bd1d0681f075340ab23e0df13d1ae2a14cf36995d1cc996af430f1ccbcec2058eca797010df641804810302047c435bb500673065023100efb5e917d1efc36ce0b2be81761d4be837b7a7dc6df1334fefe4e00fc34aca5ab345438ceaafe39eac8f39b45fee3aa302306db00903daec422ed38538b34f79e60b716ca237f62e0db3c8bc445ed8af4cf4024b8dae4212d00fc7a0e68d4d16e8400302047c435bb50066306402303b571701d888117eaf75a5535bb72269ad747b6070ac0ff3729a8a62176fbb66cfbd8da8a2ce29e127c15e190ab4deff02305ebc5840d75bbef2eacae5f7cc17a7e864bc75e47ff30a74dadd181145ed07121addd0c934a86f6335712adefef1320b0302047c435bb500683066023100a814d56d71155567d525c4f71a2b9a79f6df99049b6fb1f24d3bac1c1683c53404904645aa3adaba04eee52f0691104f023100986df7e56606a63b385640859dfc758b4d5c03c1515e492bfe9d759e6b5573ec98f1aef806d049b6fa173e720e5d5a1e0302047c435bb500683066023100a8069a6dde7144cfac46051dd68943a7b480376e95204691f33072cbb55fff2768f3aba5dc799e37a7518401515123e4023100b104c221daad01dac097c7b0788bfcec4faeb608426b4b8a803e608208058239a275dc956d1f7f097aaf43b026280bf00302047c435bb500673065023041d2b52cb208cc7115719e4bc96eb930fbbada493bce2eb71698c11b5513869fffa33d318c28a2fe82f65b0ce69a4e49023100b20130b632b98cb7a68b09afcd4afdf690af6c393f98c4b98f9dfa3ce26025bc0ebbb94eb92ee5b30793db2919b127530302047c435bb50066306402301d9e8ca7ddaef7329caec99215e8af71220fdf152b58f4b015ed9de105631b565e6232567272d9094a98d971f776464402302ce1a337b0261966f0999a294cf1c7954ee3bf586b8b10ba900e4fe3313b4f1563ff78d55adbaa9380daf23d771b73490302047c435bb5006730650230724142b10fce1cac8e2cb3d4b6bd26405a35481ee3c196d47e96d4574299fa1684dbee81da9f6e4392f05642084165690231009630d1beaac5d45ae1f325e85e21c73b4daaa2a29bd60c94e6b96048f3d78a528bf15541cff85e883022ce9c9e0c11510302047c435bb500663064023010512f0fd22ea21f2420025247f0a615d58da4503ce19653194ceca516ed42388203f6d2114eb70f163b96d3e5b8c379023033bd628671c333988e9114c1b75e4da4e0464502fc8fca459670d017184e38012147f09da326ce9d0856191ab8c47dbf0302047c435bb50066306402305c87d37e4d67b979281eb3d8f187d7c4164234c7caa1fe61c6ff020b9c2f3705e6935bb44abfc7c41a9f8f294bb4bc79023018b1742bbbde8ed9f5eda9ffbbd57ab924236915625a58f1c73e394aa8dfdc77254b466280c747138590a29082d9fb560302047c435bb5006730650230287b4f089b7cee17b2e2bda8ad6519b7b25469b6e6fb736f02ffefa96e49759da68cb5275fa2b7d194badaa648aa8e1c023100b1765038a11a113293aeb0525c0346504be126e8a2dce445f568a624235b1e66fd25188096f7ec11b276a9c75e8c15760302047c435bb500663064023034a3ac1e7cc577898111cfe7134815e4519ec64ba9bd86d013e72b8f5afea45864d99fe84c2d4925734fb9a46b7fe118023058a0c6a501df028c19948522c9ee3460d6fb728ce6b780ae147af88871c6adc25b57616833b87b64e1b4945f1f7b92310302047c435bb500673065023100a27bea88db799a0fc555dc6f8b83329cc2a9483bc1782ce9676d302c47f17f1febbd2abe2baf93ca42e3f44f8470b7c3023043c2eb2439d7ac6135d7b3506db983640704e8f6ceb63541d9d44d03b28bc7e2d05f34b9409a54a51109a38b5192f1b10302047c435bb50067306502304957e711eab82bc2401eee84ab3ad82c2efd33a559102b14ba188b49d39f1babda5907b58bce93956bb91705642b4a63023100fca5b58d848505594bb6dbb7fcd77b5c92da074c4dc799669e644eccb4afa7098cbc922344e770f50743a34faa8e33de0302047c435bb500673065023100b8b479dea35f06cd4e985dc9505b4c41c08813f8331e0d894d20be7c3c54b33aa4cf992e5b9a8e8be0740ac85689dd3b023004c277085867bf71def1f218534f5f54642042d4ad17bd7e150c18737cc08c39f8d440d6b8324cdabc5611ff5ad2b1770302047c435bb50067306502307d27aaf844a5e631fe30186d561a879b3b240c4f0bf2180f458c5492e2eb5f693d11341131a158ffd737c73d366210be0231008dc52f387c5665e59994bad41baf493ae272c73b81aed4d56a500a0adba6272f91b694b1c8fed756a3c8903115f1c8610302047c435bb50067306502310083e63b48ed5303712ef3ad49f0bc211cd2b63073117f44f3a05c4225bcac6fd372ab45c79394bb71e72c6c4b41cc7127023054bd31171b3226af478a922f8ecbb35dbb34838dd70479d1d2a12cef37991dca4773bb3aeada06482128d1e80f2ed1a00302047c435bb50066306402302ed0e4336efecb108bc4218bfd170dbd57ba033be7942b89bb456ff082e169d1bdc0747168f0c590a5e3eba62cb4a1a502302453d99add1f9ecc581c9e79e0f71ba645ce57cc8f7cd0d229c8f154f9e459e835de134607245c74bd7cbbca17d3c9530302047c435bb500663064023005d1e366b8ff4bf0e24ceb2bab167a14b0849f8ada8dd914c7a008179a7d87447dbcf82b4c6f64f8d1b3a15c09fa312302301266cf54202f5dc9470b4aa6db0c860bcb108dcde93323649ff12786cbe2b3b142cd282bbf4ecc46019999cc4dae599e0302047c435bb5006730650231009dda03e26d877781d2b03e39d1af9087a7a46469ea8b76ca1814bbfded5d7c9898b6054880ebbafdd1edae50fdcedb4c0230137b6028298fa8edc50667a13247ad44d1a6a64635961778587d6073e86eaa0b5cebcaa732e1685512fa8a32778d1ad40302047c435bb500663064023022d666d2519485615c2ba1c8f792a5835c23d33f3faccd3aab708ab97302d1005e1f92fd5a43b4f4b9501ce52ec7c3780230245521046aff48126645ad3f37d61c01ceca4e81b08828c207176b3b516a6dfac316d90bfa63c44bc384bc35a24127360302047c435bb5006730650230453d6a504ddb52567a9cccec92fd72884de345ff05f357dabb5d9363dbaadf6993ade3f385a48a3f0b154f01a343a5b5023100b25b35bd975cd20387b4d0ceede4b4b54c210e5dcc20720066c09312260c87e5a14cf0f2e63c56575d48d87c3a0d41aa0302047c435bb50067306502310097fbd5191af84bb0f93c36de1f8a6bfb1e8ae271b8c19e8b73b088eb7e2324fb8dd217b7b5e28a39c8a69e18ebaf9809023028b322bd1d01ffc010d1cfd007cca7aa3f92239a46f4deff238eb4afd8cf8cf3f78f31f8e5bcdb3dd8c105df78a1c7000302047c435bb500663064023001499941095e3dcec1765d53297c75db8229e8fbbfd6dacc411d74ee1f6e51bf28d68e306031e5b2015e2131945d32dd02301eeeede1230a0046fe31cfeb55c17bfc0feedc78ee144bf453f7e7e78415cf7b8575b1fb4cc4f399812e5ffd22d3381a0302047c435bb50066306402304d5d998779542706a6b6bb5b98fec848e6ad8f1c95b27218ff63ef932f9126081a8aa0e0e65d9ed040d81c30bf211a63023050dec269cafa48e918a53b36d375d9b8ef61cf4a36982d7df3fede93557605273b001915d317e7b82282377c981e5df80302047c435bb500683066023100b25e0ec5a07aa419d7dd66816dbe8376d37a53bb01e8ffbb101be28f15e2883a021d3c6e8691865c2f0dbe02aa3ac9f4023100aafb9a4d9a036315ec23a4fefdacc2e871252570caf95cee9c9088ef6bd7e7c68939b7ea26cf8da298f14e6945e1a5c40302047c435bb50067306502307955f83e9557a276d5e4d3ed649d04082785cb8ee038d21adc56acb3f5e07e50b425f0aef1d53953f3e09a81daed1800023100e4d7e3a9d4bb20e460a801bccee36a416b31f031188df4566c78e23d6ea36757b3f25a9ed2dfa01d4b6c06daa3d525300302047c435bb500683066023100e07a5536ddcd554ebeec7dd851aafb34efaf45049c200552a367cd04f09a4c588e367382904b4e7956f5b076fd250070023100a1d03cc708c531d58872d1c5bba723976a6ee947b02fb95ec80edc74afc9b379985fc03bb4dac22293a218ea9b06e7f30302047c435bb500683066023100883f4e9c621d210df0932f857121e1b8fbc458d7148252e4983a8cb197dfef9186b5174d3feef59a87b5edc34d717169023100929327eb7c58bf5c6154b92ff6a4052af00f3000cf27823d978ed61013a39963ef0fe6e53a4ed77e7dbbceeddc0046170302047c435bb50066306402305073cca05a71525da8fdd3945f922ba758655e26e0b4c40bf8a60d4b53510b2743874ff1c1d1ccd35684eef1733251fb02302f29b8f45c3fe8855fd50170063f5b38b96abfc8514f024f30807a548dae3d40383b379c258ce392b2ffedaf5f4f20360302047c435bb50066306402300ea7e59f98a3f0bcaf250674c937fadad00ef71f231d2df0e671744a8c6c937465a14952392dc75ca3968e804a087b20023049733ec6050a5f63a0be06dc49b0f900de08bbcca1795bb29d3b9ff91833895dad7151b72f3f55521bf3e004153889290302047c435bb500673065023100b14689c7af8542c4b4ea8bd88c1eb8cd77ee29acba3ddb1fc25c34a320d2f4bbab1bd976c7073aae3b3cb047e1c0c587023047f9bfdfe3e52298fd57d9835342af3c314c7ae0e1ea8f7679eae76e50fecc1d5f350835c78989e944f809088b7bb09d0302047c435bb500673065023100f8e8559bd19666c39109e641444a795e0a2aafa600a231808220b55be184b972dd393ee89f9fe5606645aa8aae40edd80230540a989afc0a1eefc61192fc3d3c6a18f1e5b45e45f77116089b2c956e21ba6917eb61af82e59d0049b25c34f52860c60302047c435bb5006730650231009d15ec31c88a1abf91f3fa0131bcc92db8b3fd7867ab1bd169bb9c8ab63a532ab9ec45215813c59ff1ed62247aa4687902301ff03cb0615390e35a4a9fc2968bb39bfef5ea6950e3b505ff906f106c251d11fca35ff4f1ab21b43e47afbf6d42af550302047c435bb500683066023100fc87efd3c4bf19b80487ff174a73002188832642cda9912f27c95f4f42c61966c1c36595e9e77a6b4ba0c00de280156b023100e9bfaa2715102b24aeff752e67d73d5b800f7f32ee9d37c3356b881615d3fc904adc277d21c5bbb9f629972e543dfcd70302047c435bb500673065023100ce463f34c3f81a2b8b2cd9462c0a3e811a03937a53b8e36ce8619a7f4b7057e259e6a31e944ce28c26ee882a8315e3ea02306431b2ef6de1f9a705cdfbac89b9dec27ec4558e80d328e1f8c5e6212d0e5a84ac82527a6f68ed8eeeb2eab19a31b87c0302047c435bb500663064023015f941410086f6e72ec315965d3b9f7c94d822bf29a25215afa01d9ec7c0310596e365deb4b1db0b79e096047c3d5be502307bb8087f9f259ea3bd63285b41c54b4743757b2b94f0816bf3a227ed7c69df1a13e6d5ac8d0a09b6e8d8cdcf8027d0ab0302047c435bb50067306502304be83dff6866dea56472d9cdf7570ff5db272fdbc1002ac928e7dec658c45cfaf4b5e875da3ea9229d93503e9dcd58a0023100f4efe024ede6aa063119e08e1471645bf313c4a128e6e1122216bdafb3402195148e595aa09ac86283af899a4058ee340302047c435bb500683066023100b4f29bc4c81ce738b2bb71a713db8250d53ba4809f46b2759fd57d907f57bc568dcfa3fdfac590c1718b8b497186d8e3023100f2cc6a4419e37aab2eee9ee9fa9955c6b1dfa0ea0610c992d70657077ab08e5cc79db009801a152bb09370a442cd391e0302047c435bb50067306502303d38d75f8989f0b42c414c55714314fe90f941832b55d88773982798f7062d9d069a87516995d220bc90a4630b424303023100d03abc2d195d713e1d024c3fe135c4c4f53e1de3a550f13a0f15fd347d4de9ee6bad8eaaa8ecd739f8afa35dc59cbbd90302047c435bb50067306502304bd70c6c7ec3438e25e479c1ea66a66614811ee9fc0104e2f79e23e277d169f8ce84a99fb37a53cb1170fe974d1533f8023100b82e89cfcdd8335ba1f8a0552fe582fefa521c78dcab0d6a7b418effa133fbca24c8483d889244eb038f6582a682e2c20302047c435bb500673065023009ff4fd54d2b3e3f828b77a7aeb64b0d55c50af6ec784b6b8bb88793b51f2cd28e827572c03adff8888b571817ba8a3d0231008893ce52ef33f1a46d4b5816fe26b6e1135927300ef428feefb714f434f330359ec2350c71f5101f7302917b53f608000302047c435bb5006730650230679b2c1311a9a5e4528bb9e8aae2d05b93646dc146e0293bc11585ef5cf5286e99cc0e0804737383a6df5840e952013602310091953dec0bb4fc615f8f1363f065b8038eb601eb8530547fb2410905500055ba33c1d25f482311929e0976fc3e0f766b0302047c435bb500673065023100ab369419527149064b9d052e682768927e02e721fd64b147e72f7790d90dd5fc75292442992fb3a1a41c05498ecaaeeb02307d3f2e1d88c6aa6fcf5ffc2367d7924674b9ce82ffae916eadf529f7e3c54523dd543fc6668c5f263e6aaba1f072e2bc0302047c435bb500673065023100f1ffa0bcfb2a1d66723ed7c323e6fcf8f0e3d4dd8e1f7c135852d395219db93948a3a68dae3136f5ba0e8a213295b61c02307a751648d9a5b6bf7e2d6a14c1ede0e5bc1c2df1c78b7fdd43e797fdafa77b7df638c170f4d99db52bdf4aa86953528b0302047c435bb50066306402300d897ff78559a9e525a716cf956016ab0b71924a1412f8aa3b3dc48c692e25f0e1277df182d61f96db0a3ec410ac6bec0230326066a92da5006287d3375283657a9ce106db2a552ef44ddaf58b965252523124d1822e721257cdf8e57348f9f6b4b70302047c435bb500683066023100e363cc00bb8fb2498de1906b29d1a70951cc48db6fd4a4ea1f39c3d5bf8bc866dbf97f273e56157745f825d6ca1ee66d023100dc2812b46cae43fdf073113b4a8f60377d4cbebb19acd563b15d98e6372fedab9c13bcdcd7c0d2af94deb726957a33410302047c435bb500663064023047998a4426b8f3017c22fd1ea5e537cd801b3ddbb9ee7403e1db26f7c47b503fd4b02d0a5ae67bae27d3585bf5bb3d780230569dd8f14ae3dcba48d109f630d3ad13d9ee2db937955fc0545a1f187ee32460edcc9870268829461e914e373f30f0be0302047c435bb500673065023031fda6155b727e3070e7c531cee28b165a02c33337e78583c2523b321354bbd92242b7c430007f8dd4b501c7abf76a130231009ce1e11bdb5d8fa49dedc1a8b1f9d71745ec222c34a1da1f6ed2335ae610966ea322222b93b83cc66f3d6bc5abac7f670302047c435bb500673065023055c94a36e003f6314fdbbb1764d9419355273c293c0a9b0d7d64896d68a96c80dfa7ee80acd240ec7e9ba9c2803d0369023100af3c51f5aea1652c8d86049eb6b9e3daed09d66d6d6cad0cd98c4488b15a03bba2b368f9c8b0a28dea34f3c541e2f2b00302047c435bb500663064023047bb0fac2439e571784efb9f6d6a6f4b181080092097a04d721b7b535898e4fca2bee8dee747e58db32373eb772429ac02303aca198bf1593ea705f26665427935082b54131b5c8fb015283a1c78f9d96b98c6a44cbe5facdb8f11b8412ebe03e2390302047c435bb5006830660231009b7967cc7baf94ab195a178d129c7c16638073554454faf3b1d88c1ff9bd0c58687cb1942b71a79a822e6b8739073268023100c61fb5c0a348097aafc21fe10b6d903bfab1fb5fc922c244f169a999da3c953c7fd186701ea4ccac109e589cd7e54a360302047c435bb50067306502303c5216177fe3188a9988478454a2dec9b24d8c6862b379b0d8f3e577059635a8872a0ddbf8cf5af8ef2ffca0b77bc14c023100ed97c821b8ff9cc0ba9c91da619393b747b44f5af7258480bb1a06f43d29656e7b1d113b4b432c9519fbcc07397f60680302047c435bb50067306502304eb19ae9f2547fef026ac1da7eb65d05287370284f93de3095f57a52ebcb8a23e1d06802385b68e9bc2d9b02f33730bc023100e576734e3a32e583a53af5e374db7599c8741d93a353462b513d7a4870833962550cf87b95429d1c274d28b07aa141d70302047c435bb50068306602310097245d9f49b277fc4d5c99ca746d31d6713e88c272e9f52913575b8b62257879e665dadace4e4454ad08a4d605338633023100f271b05b1bdfc3066d590dcc073065b1eca67bb9f8695e2a4a46af7ef670955023dee93a3dc48ea6d5903b2f98609b1a0302047c435bb500683066023100bd0f060011f4d690d78f79f82010c290085946551f4fd543b3a8c91af23ddcbedac74388cea78c8b8781894af7ad7d21023100849e6b1ba5cbb10a5c58aafaa0c0cefa606b35b9b63e1e945e6e9972a6f4f7e8c180e711a75e50f77b3262cc5fd274490302047c435bb50066306402305aaaecbbf2aac614a91b305d7822b39de0b786efd25b6eaf5b0f735cb5d3b4f44a9059f0b6e12685b84d5c4cdb795af3023002a8f1ee921a43f78cb9c0bd8f7262ae4b8b0742f56e54b8db32a046e4d42b6c5f95559bacb72097ca385e460718de550302047c435bb500673065023100a883a30adaec5974cbabeb41ec6f9fad7356f35b1699583251c98f7870b58356b2d5a2c95cdac4121dbfbc56a9468ecf02304435745562c39c7cb225ecc1a6088aac24de0197a098d66759b9c5ea9ec68d38b6f7464c8803d6044df9c25fda1b5a600302047c435bb50067306502305ccf233f12f1df9247c5238acda140fff72f8ccbeffd2b910c4ce7927793d7023a9a01aed0fa13c0804b46d50928f5f10231009bbd77380bf619aa94076c41167d5ddd31b815d597026d7748a85edb0f10200b8194b1ab702c2c092bf1c357c04b2a370302047c435bb50067306502304f3363ecb5690af2f01ec176533b731c6f4590b58139ddf77fe567753ecc45efe977709e10187a96ca16f985d1de041e023100deae1f66b05e2e282ab28f20205fd9a2df95814305550e394a5358ff0c3af9f626ae3161b00debecb26807fe3170917a0302047c435bb5006830660231008725accd9b99f0bc083406797b580caddec4c097ac297f60cd0fd8dd0c97a09e1504077fb8e1c50c5c888b365c070102023100a9013b919db7897242d99c6b5f59e9bf1e737cfcdcdfefa8bc9304160cb661a872d3146ad25f62bdbb54508b58cbf90d0302047c435bb50066306402301020abaaf78afbba0749eb27bdb26bc4f6e968a5ad9b5e6a4a99d81b7aa7024c68c7e0a2b8dacc2048688737b44dffaf0230182cf298013c8cf8daa5fc8962592f781125e7dff1066b985242265d70260e946b809f34df31ada4a741d588e74920220302047c435bb50067306502301fbfe8f3e47f20c6c24215cc2c5e06a13c8772ea60bbb747f529f1f1057b319ccc40a5ecd138905ff170151af0a970b3023100c3ef7a749ba7c7bf5d9cb0fc2b18fa976c9c640a4af54d02288f563f2a98a2a3b412dc8c25fbf3c3542097c918539ad80302047c435bb5006630640230407600d7d49a378324ef6f2d80086b38af85516b79ef1b3cb6cc31a65a84da5e24e72ac7511bfcc742112ec0331cd8d702307289ece41cd650666f24e732eb0f451b11641339c234fd8d0ca983eeb67cd67085e3422055053df09ea843b7ea27d9490302047c435bb50067306502301462854a1d2f59be57b68207788ea0b8448ed7ecf82c166f442230a65792a0c46fbc9bbff821ae065b9861f523ea96ed023100ff4518c5a264e410071c6e1c1a96eae3b496c7d7c47713bd03768b8e8e1fb33fbc09bcf972652c1abe193aa3eba6da150302047c435bb500673065023035fa2a70d7bc6f504fb89deec55165e5d7b1cc662354e82e297957147fa46df8c6e3d46c446696b595183d8bad86d41d023100c8cff7abee7ae153bfd665a21eceabc207d019e44cadf1a4623fe13249bd46f19f211847e2f71d7cf86e04dca37614040302047c435bb500683066023100bf49f67096a27dfdb1604b502c55d7ba29fbde585e07a2a24523e210d5cb32da6aa160a6a3651b16d6e0ff2ed51988ba0231008a223982cfccb111c3866523ca526e1e1e9cfb1713e3634dabf05df5b4b7faca24420f8f946f5c9e285aadbc2ae88bbc0302047c435bb500683066023100b37975a24cab76ccf6d2952c35a9e81f515de274db0097d39a09a1993bbc2597850fcf13fc32d98a4c9b7e8677d39a35023100969e8c640de428ad73d6af671c8d20924641dc027bd485bf869adfc7283d681aa8b5ac2fae154522aa85c442221e4f210302047c435bb50067306502304c41ea13d68c55734a7b1691eaffda118cb6872b9fb097885557c5d8e4b6222f963b7d87234f667a548a34abf761f3a4023100fcfd5bf96c026461cbcbb85a18206a7a3f1972a89e2fbe88102443059b307f9ad1c4bbe20e56335057bfdde523487b450302047c435bb500683066023100de86edb1604f002b9b87b453c24adf92fe07af358a30e13a5abfda1fde721c0a8451ee56e899f9fe09fcec3ef7f60f20023100f544ae56eb0c570b95d9bf75eda84e4da8300945285a341d559b51cf1327b15458cc8d841d83bd95bfe30b480519ed090302047c435bb500673065023100ec6fda7a2377ff842861965af0800281841132840b7119e1d440eaab01f2fe29ae4551c473dd40a46536fedc4dafecd002301ce902d5f08204d7f07a620868f0c881769d9bb8f2d77d7e6fa45f3ff93d97b0b31fb3e0aed7fc1cb43ba4e912d222f10302047c435bb50067306502300ddc86d408adda96051635ef17c1d93a5d74a689e6064ee8e40b9e677e03b9a1530ff64743103fe91092546d2c3a5d49023100c3f59e893545db2feef38db1bb1c346d8b8d6329ec40b78d7411bf583f62b6295bca6b18044d67b8b134c600a8a641b30302047c435bb50066306402301b7c571b468af7e128bab62ba52c88ca2d24ec641f4bdaf0dc78154491450e49503630486457ed63f30017c77fef11f802307c28081be9a88377c7b1034434e0e5cd513aa7a77a713b23f3390c93351c9534cdb0beaa4321c54a4457bd6f749640fd0302047c435bb500683066023100dfcfd8db96b2dc24a82670915c8417e30758effcdc0bf23b09e372e922589d1d47aa9a98069ab3ed2a8c4b6b52471024023100b727787dfcda8f094eb09d9ce3fbd49dce4b1cfa7081b7a807c6b1b9c44cd9e3749ee0bde9143796aa179b40c041be5c0302047c435bb500683066023100c70258c0f664c7dccc798a4fcf927574bf5e6b05ec4bcc1d7000814af8ab28d75e59a96bbbf4256018ecba36574d8649023100f81ba508b225fec5f27c53cb0eb2a504b504f4a126f7817c651750aa508bec6aa9adbca18323d883fe14d74479e6bf230302047c435bb500683066023100d3aa5ab216cc4ae226c407ea63bb8c1c1f4a2c7a02883d9b76bbc90efe27bcc9511dd07434042ebe21b517680cbff505023100b76b121335a0eb9562ed23ee815aeea62ed13ecb032f0bb916c4fb4be1572a816a5026912323bf426583c52426fb2d560302047c435bb5006630640230691e5eb4f5fc2a82e329d364b377b2d197f9f0286dbc7f2a139bc4458c6e090705f80ace5c8f7659925843135840701202306bae4c6965b792a273ed8f2ea3e72543a80ab56427481e8faa650c6a580ae59a52e99cc91bc41301e559606dc03aca2b0302047c435bb50067306502301846c1b385207e711ba06939499b9e472a75d1d2f956e36c9b25bfde1e799942f481364955e9ec18f2432aaf05b25cbe023100dcd90e11ea14b6d7e421eceecbd99cfd3370eb1e0da5eba008e312711718882338de3079e09626b60fd1df31f33d014b0302047c435bb500683066023100dfd56f206e44ddc46c7ba72f6ff394cee29345ed1ab136fbb0adbcb86b0495c5ad77c9a7011eb60ff5076746bb0c22ee02310093eb20a75abc6c42719be47068c8a61cd3ec396d874394976793232c3ba8fbac1dae73d63ca36cdc7a1f22ddb5ebedeb0302047c435bb50067306502310090d9de79b5d660f9c3307a47084808fb5b030ad9efa24ad455663388611a87af1daa2acd59fa56cd4dbb20056310b2ff023075e5e0a5925885105dc807a389f4910be1dc8f2e438b9cb39f733816b7be26a30675736a2effa7a56f60cfefdf14216d0302047c435bb50067306502304f640f1911f5e0ab089aace941164417039d132178acec9b26e130b17220479ddd2ec9f5d3479d6cfa03cf200323265e0231008ce72077f128367b8fd7a3bef112a6013b4eb8f5b048daac14eba295cf0edb6f1bb3217fe8ff11e625216b674fd714250302047c435bb50068306602310088e8788591f3a640ea7c39757201fff762ac99f5096310a444acbee06c8147af98fcd32763cfa1729e69bf086dae2c10023100c77315e353a54fe5108ba37b2f72afd04a13072d586897905faa7f8a4f33d58f56cff2da142112a459b6b8312f9f43c10302047c435bb500673065023005180e77535083dc3586a2501e7c51a75c20b7878966a9b788063dc9f1d2e89e44209827208f024594f921281031cf4c023100d5ae01c90b930f862f0736bc5b847b6f03c88094a18f27a4de4abe0513727163cab5d3a301ea07e334e621dbe24e43530302047c435bb50066306402307ab29f96573e6c579b4c5042e1a46c98f9cab01fed2b1004ff2d703886c5513ef842048dfac05aef7a6266ce9429111502305fb97a84dc072f0c63eac941f1cede1b05772ca1506db8bbb20b17e3ec098360a9cdde7413b69b729f52329726ba57e50302047c435bb5006830660231009e83de88853f6ad7efe1320da30af434ce605b3c7cbd0be224aa756181877c370a59bfc4e0364bb40daf04ac9b362c9a023100aa9bd057fbced442b940d14b7a2362f9ce270c42921494f2cb6426e8f07e741d659a8e1169fb8382d9eb0d00634ba6800302047c435bb500663064023055555f03407f714c7a18840c176bd927f710fa7a94cba1a423a9ee506296c2160a7c7a4510de661fbd27f63b86e8ce6502302a317876b0cd424465e9f075741c24b743db64883e8722974c6f5bfdbae9f6814671cbec72ffa9d462ea570c031997040302047c435bb500683066023100a2c3f7b1b7a01eff90eea521668d24a4b7478ad2440be5c5e11f00ffcbac830a3d40e0a541b107e4bb486af2ff08ab0c023100c12a4df02fdcb91bceb60833d492872ac5577de4321a6509eed172cb0d626ae5da5997cf6622cd4b1686d2148fdc1f360302047c435bb5006730650231009be05a9984a72c3d0e9e096a7ec6b6ac72ed7369553585e780c5c87dc43de5d11a7059b6d3e22d3a8bede4035f07af3202303ab0b80c33929bfc1d72179b5df42403aa3370c15f924822d818ed2be69e449a2090bb2dee2f1f58539f4444e07d312b0302047c435bb500683066023100ac93fe9c33e835302fe5c117909d471c7e661b0e3ef2471aaede8e00d0097a2eb68bf3665db9678e9222aa20753f618f023100b79c355db464fe04091486ab9d503360e1c4df334cd1cfed26a13d21e9cbe52d893b130455d47dc25bdf528d6a36d5ed0302047c435bb500663064023060942593036dbed7905d226ac162a49e56183e4402646744ece3f0ccab1937bd812a98a8cb176aa95f680d8d1677583c023026cfd446a0332154499ab56a1b80bfe95e7fa8c7d530aecb6312716035fa6555ee80dd7f62172013079362a4054fe0050302047c435bb50067306502304dc1d8a1353d3675a23c4f35e9bbb3a9b6eff44f64a6bd5183b646ef36eed152f5c4f9925a93f6095ca59c338f4f6c67023100f62c459165e30f82d8ed9061b96ebc1b9e3dcb1fef57841a8b7dd8adb40f7726a59a2feabff4da62b1a7bc1c8acf64e30302047c435bb500683066023100eba6390135ffa210ce3e5a1118c41ed46b7c1933187f6960dd1a1ab2068ae52ed269f8ae7e6d59306cd7dbc593c0384c023100c09764928ace4e9b764d3de1e636b69f92ffc1724676be8ca86d8cd6d23d7de30064e40a8470e4c0de54703fbf0cac9a0302047c435bb50067306502306c4484de258f6bac85ada9802cc41b724ed3a055f640807e5ba67d5c56413043fe365b5983cd81d0a68567f20209608e023100f537edd1d2bebdd1a7cc0be3822e0344dddbcbc0c157ff273cd53f069715e31ab0230732ad29230a434b9f556dbe915d0302047c435bb500683066023100c4e1085dca9d1fe3675dcbc05781910cdf72f522c41235293d147a9e380abe978adc4d3cc738028896dd1a8d24848b53023100cf0be3aeea7a5dbfcfb8ac9a57eee3edf523f5fc5b35b5debe13007037864c9c162d0de09e34c4423d5dfe03849468590302047c435bb500673065023100aaac7d235a4ca4097d05b347dfd2bd67ee46b50feef50664d1992abfb51810f123bb435684f4ca87c205123976db7c1102301a10d6898ba366bc230865799f6d6a6ae24ccd0c9c2e623ee21d674734e0745ec53e72a08034753b1eb29555cf6e17950302047c435bb50067306502305a9c10f6567d148b4b3a1064d994a3eb0467a6f6123114552e0ab28f9416ea5517d489c0652424cc1d7cc823c99f54c8023100bf35d4493926b17fb7f42cbb857cbaddebbe3e8a7cb6be964cd4984d0daf575c4ff24f55fc436324180dea05c2654d0d0302047c435bb50067306502307562289895893a771362af7fb07ee0358050f7df861b7c2fef4594ec5f5feb37ac8badb782b5a8cfec9a3b994520b5e9023100c586cb322a69634231dbdf0992e3e0ad7233911817ad1cefac7204508b46eac8bccff96a463f75f4b7932f8ca7b090ae0302047c435bb500673065023048c44221e7b2b9a87c2ec4c4a43f5c5984206d14af5521d98c32d4a8fb51c57d3eda190307c14251e2abebb782de9208023100b3e5077c9445cde5d47107fea975692b1857d55de98bc1424ad67d381caa56df38becda1385cab5615628d1bd49d6adb0302047c435bb5006730650231008aeed1128e1719fd01f094200357e3263ebcee71b5850a46a79330d9e8e7d1d959cae824594f193406acc40d655cfb2e023016745c74bc95fb467825f08d5356222df839c5c4b4ccb5e97c6d4aeffa3195bfae75064521777638046f02c2109cf7b70302047c435bb500673065023100f2f4bc3787828f1440d75c5ea3702842f657c94a26b6903dee0e8753174f823d8075c29f1d47f7404d054e586ebe4c1602302c8136c2c50aefab90fe90783664d9e19c435a5207cc00a8bdf6494af24ffd9f24921a0caf1238bdb696a35b900870e50302047c435bb50066306402305daa004ad39d0bb63be9194d0244004b36f482073ac8fb0cf8f3827cf4bd238d61d7741b9d8ead41e000babb3d34c31a023004bc3e69c33d561fe4fcf93d425a20f8db1ed6c7bdbdcc8fdd925e30e40d7b7ff154ad3c30028e34c62f6389dfaee4040302047c435bb500663064023019adf4fa6469ef83acae1300d951980c9b96e3fafd2847737e644c346e5edcb4846a043b545c65fa0744e9643f2bf84c02307afea00373b5bed43a72770695fba8fc7610925f812592c41e70b871156a81f74dc478cef7ef2df0d69ca77fb31611e20302047c435bb500673065023100d9835cfe407e393807a1f66e4f6a88f52a6a0d635dae7d02720ba88db2ff9fc53d88c264187e959e3cb61b41c8a3a447023030e630bede73bcbee35cacd3344621ded6e51b55565a7b4c391b70266ecb47b530c0004d69420a9770438f7f1f4c95450302047c435bb500683066023100ba8877f15e3d9365ee0a1c64c59a3098a241182bee1f6640ec8ac72c64e91a08e32a407c790894829bd79887ec46ad97023100e442035803dda919b6fada7d413622803d55e054d3871afea049cf39cf94c929e1302ec33f88bd5a5b6dd3d8ccda8a710302047c435bb50067306502305e0d049441d8437d025c4139833b247b6fad46bb5816f0cfefdd6eeb730142560ad0ae6a32c77765f14f9750d12e327a0231009d50b8d633748afbf33b476654ecf4b9b0649104237858ebb06e3b8f9111d1afd92672ab71f015ef8699d1d45bf9ace10302047c435bb500673065023100d30373394b82bd0d0af2d9ba34b9a0a4840b56b2820374b7a0da3ac8d9b40679ed8d0e086bece540798bd2371d303efe0230510d1b52c59d998209427bccff6512b0d8710cf9fa4c020c74a429b9b0ec54f9ce833f795f789ea4b7bd909c3383f2d40302047c435bb50067306502301eeaca900e76d6912a84b21bcf684ca7d92953ae86c037ef4f0f4de7551efc0a70b9ed25368385e47bf8d7031e5226eb023100a2b0fc66a62d5cdbba153959e8ec974cf8101a0dd6c9f8e7b5145ed457218521417423a89a2e3cb2b3e6c744a3654f880302047c435bb5006730650231009fac25623e802abb2702fd4c09cb64579b949804b5f6f57e9478c9d57105f5cd465d84b9299acb10d6988dd525fb9ca60230412927d861185ad4703e282ee9918960cb0c64cfcbc4f30fbca82ff649231491e930b270ade793667c679bc6235043d10302047c435bb500673065023074eb0f20e17d7a15533895861dd44622fdc57856e08c57e0a00fb4dba1259531f8f013a6cf8021788f4abca7665fad7602310083fdc35e3de6d11afed42b82c85ae30827cc2e537003d2b291d3f3a9a570040697f467412330e77f8a78b64982ee49650302047c435bb500673065023100f037db830fee71a0a931af3ffac904d850681a751b09d34c00627880c57420463d5312fd0a2c710be0025f18ceb7f53e02307e5459f7b4ff21c5ab91d62d2ad82ecd80098159b10c244b383f1623f6adb7b680e307eecd1c2ec1799986def640fb9d0302047c435bb500683066023100e938fb2576194feb533f61edac5dde89a33711713e06eb36922cf4dcf300987d58e3198e4373c65f7def84f977987fda023100f30dfc40e4ba25e632a7a393ec0138c4ce419aa7bbcd3c383e5f92bd8c29023bf11c800d8bad725a592320165435ecfd0302047c435bb50066306402307fdaca5eb8f8931b6c0bdb1dacc14e9db1084d0636cf6f8f85a5b5ff8b0e66fbf2bdd276d75005b01e2b74bee51fe4e7023053050ea12cce0834028a1888fbdc220e1c21fe3cb8c2d2b7af8fc6f7d6ab138ac74baf4a2d13b9fefaa0f3298c4a83750302047c435bb50066306402304cc7ce01cc1844a16493749797d3ccd406781faa172b7dbe13343c5acab889719ebd3a731e28fb635b10dd7f5beaa28e023047d6b068ffdcea903213b5eb5bca42d3c3f814f616b795b04350a8bbf3be1d5cf63d787a4e591ce30f9971285ef9d8860302047c435bb500663064023010a435bd1cf90fe37a49e30803c2db9075ed873e5794f5661c41da63977fa0235b692c2b3ee6fb87b18ee9de67cb01ff02306160234f7b72a25abbab16aa91ef53450936894a03947e0c45727fd812ad2e7d64a44bf4da66746027bc66bb5f47d5b20302047c435bb5006730650231008c081f55ce1d456ea02de1cf282b62217ae83edb970e50884bd5b434cdd9bae6356e523cf08efa48fdddb166f53ff697023040fc6bb67f278ec9afcc647abfd98072bb39898390dc575c487ae88df40f89fed5c6826b67b02bfb49072ca105890c930302047c435bb50066306402301d89c09ef9b396ac91752a04553f31b8cb48959271c388a4ec5fb92f7de258e9ff1466e8c63be90263fb6b6b60bad9320230242d567c909fdee0c310046be146d7d3c4b05c493d0b211cca3878365f702a86710731a8f85c8f39701fcce02181a4640302047c435bb50067306502307e185f821fbc07fe577b7f3ba7eb4ad1c6b6266384c477526bcf5ca2129cfcf72c9168d3778b8d8105e325f132840f27023100dcb499c854f346508fe2b0fa9a2e7526897effc016dc57bd4c66898195b31d300c8a5885aaa62b386409ab43517454770302047c435bb500673065023100cb9e4a593658bbc93ffb915d9e3d2027e2a8097571e7482623ef407b05296119f5d29de47c7796a8c7f05d06c015d5e302305539c77321cf30e4fd2f0ce2849096d9135c1007dd7c556b4b5e262caa92915194c2a496a87af94f5d93904d896690090302047c435bb50066306402306414e858725ba7198e56934e13ce9c8e12613dd576d1b5aace208c91e32af2b144abd589096baad28891d110aa2288e40230719429672c49d30fb5342224815db182e3be15f8df6e519a30a7ffb956ec3d86e5f39dc0bceb9efe9ea42738e8d33cde0302047c435bb50067306502307b1a9328f99880fd04f4539f3940a3dc6cfd36cf5ba99e462d6c549e75106b6835e467f40c4e1e25d6ee2f1c3b1b0efa02310085a7bc788e856ee25962c3e5c3bb1c4622eeb9c0e033f35f62bf4bcda3751233e8e64727ed5b0bdca70c4990ab2c62f10302047c435bb50066306402301bedf66bda7468873c74ffaa322867a7d69e11744d7e36909c628df8489111fccf6778e233de9588862c278165c2b6e8023019b27f15251394067b02350cbe8f938f56f6c5963154270a4babe0495c9fa1ec47565bfb4c9ca8b1cdb9665e3d351b220302047c435bb50067306502307cff15cbe6d9db8fd8a39938998820812bda864ae6783ea00a546371a5229e46affe62503ab5d86da450b877f58c2fcb0231009aa7522e3d86ca8f1dc1b2ca2e61de4160c7005465fe7cbce4a845d1f538d79a556f398c28d9d6a1cabe4d8a65cc31430302047c435bb500663064023020fddec48e5121bd306d0093d84a1ada611553a2137c2db31202b649b2c02bb1748e9954d467c210107e63c0ccf7b13402300a5817f82bca07473e102b5df083f178b7f9f145a4ff2f3ee9b5b7d3d8bba301adcd5566791ec23a45cb137c7b6f8eb70302047c435bb500683066023100a844eb060086b40e6dccf0f3511b3411418c5e48fe0db40ed43c62993da97e54d9c53c9204b42b914df946e80501bf4402310080346604ca1a8db6436441326ce54d7fd82c83e60dd4dfa2693f28d34d13bb9a20079a6229b62a3abc8f7e1c6a455a0b0302047c435bb50066306402306bba0a3f27cc396533e8fdb629821f8715c321edb6d58b170edeca94530aa9d875f20bc4904fc54a7c49fe83f99f21fa0230212774f5bb87daf9e3ec0b7f366a02d3f855bb79adb57b4e43dd5f074b812730c357dc01e18897a7a83aaba7386b80190302047c435bb5006630640230617dd1185e43e955ee2c0ab817a00b3454da9ffe918a469bfe6906f1105ffef81b111fd9cfbb2cfab32bf40f4f83fb320230763619afac75bc3954cacf3b3bdb725371cc4061065a2a32ba7c1b108b3b882a68729e14f2fe74d7a31000b82f7ea1940302047c435bb500673065023100adb774fc2cc35457739688ac79f9abb6319337d947d76fb5cebbf69f8270c24ae6e869374cafcec193de854a2a5a4bf6023029d8d2424995f8280314437b5bfdd3321f2818f58eafbe4dd944ad865440993621540f85439e4f00389d36cfcbace6f30302047c435bb500683066023100b506a0e57bddfd3a3a6e8ef4b702c5ff3dbacaecbb28086682d8487e9eb73e94589dfea86a961056e2cc9c0b7b94f04b023100d97fbe999cb4eec482a735e2eabc66e1228ca2385ea2ec0dfc7874ba4775a567fa182aba2f902ea1953886b7f54647e90302047c435bb500673065023100dd7056b9fa1f3dac8c8cd3e6fd5a5083c34bf11a327cdf1ba397473488621fcc2e22daf4926f540fe843bc2ebac8e661023006156f0af212e65f1007497ab5da26065e59624ad15b169b1ce7907d9890b5723ee80032609dad2afcb0c7deb28fdeef0302047c435bb50067306502302bc893dea1009686569c94715cc30c021c9cac92e1ee9386420e8bf196252fd3f0daf395c46177170baa9c88cc96388b023100a66665640c5cd4114c538ef1a3c7037c655f22a760b8fa359f4e9de6e952bb496caa28052d09d60472e4513932730bd50302047c435bb500663064023069f9036c6ccb0aaa946ea0b001fc3499cefcd4b2564f5fabc2778eedab70dcb2751d0a7a6b011f70e01d8f59849ce45e0230371754c6318f5145fc975768a35f996df0a13f626ebcf3c5b9f5ba67c2ddf894fa6c04563c3dbc7f9e9830e3eb503bf70302047c435bb500683066023100ed6ebc93980dfaf5009b2786391ff4424087863a4a2fd44ce93a53d6f133fa521c04386a5f810780533a089692a86411023100cc0456e1aeb75fd60a6e95b02bde841a4eda912f82cdb0f758901e8dabc7c4e1235ab49a3c8c1e6e8f34ce7b54332cc40302047c435bb500663064023013fe31e00c6005f8aee4be852b9c61d25f0a0f22eae856d09e9d492ad12dee4e08df95b994d9a7e86c40dfcd4133c39202303bd62784a17ebb5735960d3396e3fdb72daf291cd2e95e31893aadcde96ca59cf87ce288dad30222155e30c2e3089eca0302047c435bb50067306502302a30d0eec5428120c55d3fe1dec99f5ddc627895f33abb7eaf22e069c8b5d1166612581ca37b886169d6dd9580bc6c950231009dac15b98f536f5a80729cc2f18a538db9da9f4d73dab93c50f845ede241d599417e27ff39aeb01d8936ada4dd9aa9700302047c435bb50068306602310093168f9dea5a2465d98ab3b9e0d78115135a8134393e539637a94f94dc0db7003a36f591bab9b9160abdc665ea98fb00023100dc0ebc89a7c807304527ad6a340b1ce608f3a32008906e3229237da5a00042c59e839bda234d22905fd763ca12b2127b0302047c435bb5006830660231009c325e852eaa104112595eeb70808c9f3d92184174082b5e8833673b44a83ca614835f5a1aa7e893b1d4669bf5338131023100b2c28ce71c5cc78d771b0a0335a9de4ecf9c02e070c7ac1126b167d4b510fbbf5e41f2fef2275413bace55670e71cd240302047c435bb500673065023011aea1c1695f3782c621b7436f9b3ed96e762ba5d2064b7d4db429f185e104281b40dd82a124cccf4a97a4ffc1f858400231009683e5068833300f9950b69fce60c8372b045f28b568157e8fc575d75472d5c405d71a0bbde237ea9eaeff507691464d0302047c435bb50066306402304d1de6bb5cdf86826e99f2ed38be04c75f257b086b33e56361bf1e8e21ee5e552788aa5a1e47243deb2f36e2337417370230362f90846e50dbcc960556164c7d23dfeffd3a75cb3335d5bfd5b193d16b5ba005523583204a27d2ffc61643d76322e60302047c435bb500673065023025019d864902c49e40977fe18358988991d875e6ab90a92e9e5077001943e49a80196054cc15b2e4a58a8847b73d595a023100d51092b8b53bbe53404f5a9329be7fa6157ce2708a602221cacdcfb544dcdb1a56c6211ff5dd3326f47a29eff8a119300302047c435bb5006730650231008af52b635b73a4cd2f62b42cc3aefa40c943a3fb7138f9703ce322ece8e5cfb7734ce43ab64001bcc213853d5bea68d702302acaf368ae425114e6e370589dbcca7844ecbde29a106f05162de7f4917dcf6c3fcb578ec254d848ad8aa3657794e7090302047c435bb50067306502300880f95373a7eebc936c8ea7a74b224130002ebe2236c15e525e58b078929c2651e1b937fc531bbf6c8d8cc5b2a2186e023100b80da459004a04467553c2499b8363ef7ce0208179b6a27699c3361e115ce3083c08863ae9efa09541474faccf8d094d0302047c435bb5006830660231009a26ca32c6ebbfefda08f4b1db5198b7104a427a1a970b540db33d0ea3ef1e6c2fece36b54b8834fd76e8d41cc50305702310081918388417a1b45438ee4ec40726f5e889cd5ea6fea1ab62d9ce51e168ffca90daacc1865be1c5656f6d3b22eb7e66a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302d73af35515f609104b1e6015a43995fa42d2f27487e7bf5af9c8616be782ec6df0e2c12421109ae54fb900ed346050802310090f821b98d68d447a38fce1d8da23ffd3055c5ade17bbef41c45d1197b6e8bcc364f43aa3a7ed8b8ebd807e05bd362d10302047c435bb50067306502307f183b7430d2c944a77a84b7e7913f251c9b343d0a50a5c909d51acf516cbd0475109432f460e7badd87dc951e6b97b1023100fd2f4a8b91ef3f2ba09ead925882d206c378003de04169483f685d2f5c86650649a592700c3654a5e8c8641410e6fbb90302047c435bb500683066023100ffa9c9db91ee1ea9e907292a58527632efb0fec18d265e01e27d6335219c03318ca388e8823d4f6c97a4d2c28d4a638e023100c49abdda9174eb2551dec4b349ece5778e83a38d22d58bfc05f32b9ec30130520e92f18ba1ba7f4d229ee119acab76910302047c435bb500683066023100de7787e768c59d7d78477703cf2ec8af033282b644edf5ce8877026bc27797fb2aeccd700199b6450bac947fa0fce006023100b2487cb0fc9e4491b237b0b3c88a549d404873c6e72bcf237c9534c6e2d35bc1ef2e80eb7102d6f0850d0fdb6e4b21d50302047c435bb500683066023100cac7eefa2f1bd26593c9a9b6675e3e0140374a87bb0d528f93b11942a3eaa655d5a53d28ef5f27780b37caf02aaebc89023100e07e0083632534607afe6b2c8c7ca7152329fdd5d7f2a210bf36fcfe5ab5e031ad8b2dbdd8b63100639747c38b62b0dc0302047c435bb50067306502306b1ab42a4caeaec34e1082a95e13e433c9bbe03e0d045fa65faeb73102a84609775f76a9dae45a5541ffb929427eb178023100e79ff3d93d5fe2a09ff0893ec868e6c0620ee709440b42b1f238dff0a16de25498b502d5ca9956c4800e947413cee1390302047c435bb5006730650230302486d9fc3a928a52a825555606afa5d2ae40c57d0e75182efc1b31a5ad712285b8af188f8ca61debae22608920fe73023100c5a24984903a86094f214c5eafcc1dfff08b0e3d715837b18597c94123bc0ca6f2acf40c8c497d5bd8304d9f4edd69800302047c435bb500683066023100fd2645ce2fad2271b17a972d511f6fac20124c4301e29a5ca9cc466e01ecff08ad3bf343d10243b77b062c5868306627023100ea63da0699ea48c03b5a15c5c8a42facf1bef91fb9a5aef70f777abef4b21f86d4ad28516b930bccd36327f2a55137ad0302047c435bb500673065023070a8a25f92c862454778b74df16c5355d8e7ea0739f4e6cb261a4f34f3b9cbd0b017300816b7f10e460ab53fc0c2126c023100c05f932c1da51a54d8d726528220ea918ce2f3ca96d712f5342581516ff26c7e5d1fdea4ad2bfd1241549ebf6812dbcb0302047c435bb50066306402305f4cf5efa7cc3543dacdbb49e47ffcc02146b88aed6cead0615d2f4933d555d7fdbe2159a2223854fd728290a3a2146602305f650d257e4df018122059ecd51a86bdcb75314ad2a749163a0bd9121bcdfc0bf5bfecf2044c938fb1635f3ab280a8df0302047c435bb5006630640230211f1af5dcb8fed3d07d571da6aa0f0a53d721dac71d0a942a85ea6983a2d06cc1b78bf76b3d4d673ccb27f8272ae866023023cc528e135bcfc3b9ea120bede777f0c8bde75afe41d9e62be9a78504f881bbd113392cb9116580eab5128486b8eb660302047c435bb50067306502303992d100eaae70c73375929701894f1e524ff9028ae47e0f69108bff9592403501cd505058d0ab8a92ba7a46ee027931023100818d444ec43b7998e3c4ac178ed44d557b011b5a8b9feba28dfdcc48ca5eddb26c330ab76019b19009155be734ba338a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230200339d2ed6122fce3f4cf1e1bbbbf66a2e290b65d2af68b5bc5df3b99bf3996f6dc7da9c8e0bc4ab567eb3ab3fb6f1c023100e8f10c01d678cf42d074cec670e3ead5a27e3c6f2a269fc1ea244d587c3f0ff0f19c3ff1b80d1e4cfd6c61ff7a077d530302047c435bb500683066023100a4df446c4f920b2cfeec8575da261119ac3300441e1c93d989710cb07907a30463cfb652c21976e5243acc62101e53b9023100da4a9d7741b8c0f219b378e83a272b1601125638f93386fe0774fc5e973ec38445fa6b81067d13fe9c8ff93fa4e688650302047c435bb5006730650230427b81146b1a92cb97b0588002fa2ddce23e2a5d8528c32c63315a03d9b3cdd6bfaefa0b1ea3bbdf1b9595f6cafbc796023100d6437b29d49a0ec75d481065f23a78580f4178fd0488d1a0854ad2a412b0568b74dd859d223a713a74e84bea1e2743c20302047c435bb500673065023100ab1240866941be5ad94d8793ec435b1116303d2c2680e3891912fcef651c777e6207744942f5780fde6c32e8faf48303023031104fbe370f9b84e0ac778767e38af365f03d823afec2990a48be96d593896af86fb598949caaaeb2c8067f4e251bd70302047c435bb5006830660231008a4ecd58d8c11ee61f592ec2a228b2efb4a661d4acde8fa0c86da59fab895eb4b83aa0ded283c2e6bd7ea1eff76f8647023100d60d06013157f79f62ea4c8ac51603dbb45744822847b1b7ee9631b120b760574b2e480528b0405680d7e8f29303df9f0302047c435bb500683066023100ffe0e135ecc01d74ae38117cd32952e1604bbcd132e036f8569e14ea3670929712b5b0e4b8d7c30f45d2c230a420d91b023100d8bc0ba3fe61ca8ac07fccb9668ede1b366e818f57ccb338c50de048afc54a22a3314fb0abb0534a0b5494145f05f9380302047c435bb500683066023100ebaaf93d3170f4d4ffa41bc85a96335c5d4de3264f46e86d7b32b1d4c9812804751e2961928a6a01d12aa4a0e26cd143023100acbaf065f1e958ea36158169f7397ccdabe645ae977edf2afcd3b63117e6f54cfc1bf443c84e73d20631b4b28261a7360302047c435bb5006730650230258f9d7725ba670015b4ea384ea7f64fb58c47771688cce6dd0f9a35fef169ef726c195cb44d2f4aec06c11ac2154b5c023100cd4786cc83861da0a6c38610a4c5e8cfc7cec01214b6873a800737674738ae5ef5c4702ee3fcb61c30c036d143ddee990302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c2fdd7bb0c9947863af676d10fdab7847db24e46362274b2c84f3821c0e910b2ded7a8385403224a08e239e503359e68023100a4109e892a6cc547e9ccddea066cce6870d54a527e91df10c60f34cd6b5b586dacdf9649fcf55ccfe43cc30a0be4f01e0302047c435bb5006730650231008cdd3c745fc3dbfaf79bb388c9a58e7899beb225d3a900e6ed678afe6348f3b760d0d080315d278730637bce1ff8122f02304892962a636ffce2f6a2f003c3f5860a814010e11570373682017e03efe5134be5d78d7fd18f6041c7c641253bc72e2d0302047c435bb50066306402307dd99fa637e954b4d6cb0eb3675037276a8bf10cb157b6414e3708fc98eb67f2b2b945545d976616a0455520a1413a3c0230310d6359e1c2d883606f51e2034556a5908267a14f18c3cfcd8d94c5c3d08538c8f6a51fd5db2e6f981a43bd8ea2c6200302047c435bb50067306502303c94c6beb38616705917cfa5aacc71f8a89397b197faad0c6cce9819482cd491fb4a73cec1d62fde942daf88bc482b870231009aa3214a5cb1fac02eedeed2e029a69a0aa9ad38a7592f93777aaa663785db7279b0e562715a8afbe683d7ac0a9b14c90302047c435bb5006630640230589149fea63363d5aa36a9b94cb4fb58ea7bd89e513b9bc833ddb365596790fffcadcdb5fd6798daaf1da7f21cec8be00230230694b5d9f86af26f3f2b2422a13e31fb1aa881b33e700724d53a998d71310281229bdbc21c0f7ddc8234260a3c88c10302047c435bb500683066023100f10bb8cb1b9a9fbce65ea5772c47480d6ff371acc7febc3fe59b934a26b00b487a8d16a14e27ff5f869c2023b574aeed02310097a8a54789fa5aa437d41db19abbd2cf9749fa479ad1f014fc7ba80b9e827cbc436bf7aba0a98301b9f9d27d48dd47ea0302047c435bb500673065023100b22bbd52ada7ee404adea317baf1eb883cbf1c055a2a53cc413661f986dc1cf4c8631741ea2e967713c66c03654075fd023057560a82eb26094bf94c77236ef999b85f4998228f8639a33326044d3abd99f3bc35c9d3fb8e53f894d71e372144e2cc0302047c435bb5006730650230496fe386d2c209c2db5af2b98218daec41861fa2bdf2cb4dadf71b3a1761b783bb66498a724da9f9fdd671c17baf7d88023100a3468ffb504d2023067cafa52dba454bf135df819c7a4bc19390c794356c66e0c719f2fe74652985c3f811a9e7e7bad50302047c435bb500673065023100ef9050f1b5c05fe51c036aff20c10194f662d1e7af5f2a86679c45f1bd954bbdc9190fa8f11ec480b6b0c055ba8f271c023029825e73859f78568bd94f967d071fa509d5da23340b5d8d6ab1b6b1a8c374a34fb8bf5a4b7751da8800ed4fbbf9fca90302047c435bb5006730650230650832287d13d23886b4152bb8d3b0963b557e1d81114f9c8aad97609ee27162c85dce8b0215c0de768c7fdacdc44b6b023100c94103b4f77742e066c97623ccf44f056395b4298be425c1cf12c17f3cc63409145bfde30877bddcf81e3c7cb1f11a550302047c435bb5006830660231009a860a21bbed4f1e1e35b7899e94a80d48789f4171a6f5ffb44ea592959592e9fc7d0bf8b24d434eefeb7a8f82056076023100f8af1ca468832ae797c372431ac3b32eb34630050d2a03c63d950da2a9f240628d9ee28c6405c9871a44b752196dfea00302047c435bb500683066023100f1f7bfc58fea67fb97e6a75630a0ba36946d1d1a645bf02bd6276095661ae2aaec8fe0e7b63e92f5d84c76cb29b8ca85023100af9b84c93fb575746b7cf3db6cae4697e7d192020fdd39d92754e681a0acb2ad74804f740ec7e8d443654f531f3252f00302047c435bb500663064023045d5e68cba85bed1cfe25c9dddf2ed287b914d1079f16c50c216080292c0d46bf78684eeca00c87c6d590604a80326ff0230617091d4073ab9b9c11ab4594b36fb1cc32c58c74f52b9951696678acf5db37273db331ab50cf3140b9105ddb0ab53f10302047c435bb500683066023100c5c11e8467f76c07eb10bd5550525a18b944516ef06045717e2d444644f509fc58c14b576fdd80ff507ad1da40876e32023100c9ae79469dc121575bd5bb9d13e71d1ec3f1248dfde99300f85052bff5cc87ccaebcb98e7a327898a4c479db46c099940302047c435bb5006730650231009b3fa1427ced31d99bd9a113c1d0f1ea1c125f4df2c080cbfc67e25bcc1797715bb8fdafa319830424ec4362f8f2da7a0230244521e7bacf351da9ee036079ba639771685b254a133024045666df8f66206e652a22b1d0629bfce16cfa3077fa3eee0302047c435bb5006830660231009e1015dc965f70d3c075ab2e6fa2b3b6c2181cfd0d6e334051039089689f5b4449e8336d876799386b131f18e1eac74a023100dd5de9c59c0c3642245eb8da9d460101f479275a63fd97ca4acd7503a0e6aaf03054e3a15a42580c68b56a2a53a23fdf0302047c435bb50067306502307a5f26f625d82e1c28eb91662a8e5f9558985cf5bf4c2165c113afd13865ff5083f53f81da02a7d34742a6c588db007c023100e603008ecb24526b6be08f220c82f4e3b56b9047a482da2fb31c9f0e0180ce177780fdc0804370e0c31756d3bd5a1dd40302047c435bb500663064023064aae2fb4b2a3a188f3b826b5666ccab022989dfdae788249fce70ab184114532bd73fa53b9dae741153fe2dc27635070230732f623db38b66cb19800642198218f76a03087e4a891c5d5c8a30f459d44d97cf00c865ae6da10bd7846004846d2a8c0302047c435bb5006630640230281ca7ddfb040a96d11208bfa6e09f28e92862b3712f743869b77f20c5a9661eb641cac613f5a37379aa481a4eb6719e02303e5347447a9f35f24d493e2c7545c06c07aa7e4d34ef863e02b563c031d9765c17d032d190647e013e2362dad911cbc50302047c435bb5006730650230389393230e9f4e066aec3ff4c07e185a5656275be5715c32fd92a6561fff896b1e5fabcb98e914c88e11267c24b6883f023100baac2bedf59b28c9b4e58b3aae743f99e29477019e9420a7af46c91776dfb2e569aad1a29e6daf4115988f6d08d826e90302047c435bb500673065023072ff04b1984f8ade0394bdce3ffb0349328bb8f993f33dc94cb48cc111350d17e0a36b132b3a2141e377caf03aafb2eb023100e81a05b154435c01bc8f13aca9e54d248e9267b27b82d98b89af8c7a074a27f825f7b0ec7094a3c30cd7c263ac2a46110302047c435bb50067306502305c30b727d745ae733116a2ba16968936f8199db4f14a15d2464e2bea08e849d8965c9c850f91812621ba80acc37e430a023100a781969b355a5b61bb71c51e24b5951bf9bfff792a09bdc7c1b883f28b89ed7dfac6bc451a1b7bfa2ee70e593b3783ff0302047c435bb500673065023100d30eaea5ff6661451b7330edaa301f5544a026e74366a9a3ddbad01411bf71c23625b039e6fe9ed821d07677bc62ac1c02307e8a08495c62754aff84a72e2fb218c62327cc66bc6d6778eb8fcfa3c7598c68b61b963940beac408d15307708fe06990302047c435bb50065306302301ffd3afac6b25f19e56e3dedc15d06a2c6c23ae7e843c95a08d02aeaa5f51331bdf14bee403f6802021ba8f332c31966022f1c36de71bbf64d4e3ec18c2f52950aa81cfb9b1cba50d660c4cf301a1c76f92479bb87f621de4f7f12ff0637deab9a0302047c435bb500673065023011a2ed26b7c754a9bcb8170883351709265391330a1e522544f00dd2c29a54281a88bd0775a1ec73f2bb739efca62850023100c9f655601a0b74d3808b4cfaf31f223026af11194df4e63ed80b3ac1db4c0bd13f765b2d2e17d1aa072216c65d70a3970302047c435bb50067306502303a06a68299f73c762586cb4adebcc72530a387d2d1f1bec367b9441785ed953de3ce77aa3f4e161344188bdc50010a68023100f51cd5b03d125714396ac945a5dc43e048acbc8eaba11961b3b6349dccbb27b390e162bfb262173d4e910d48a90b96fe0302047c435bb5006630640230256c2baa4d31b852c39eeffa1ea8fb335a90bc76806bd12244536d889041535f3552fb627b2600da6600f565821b01550230574f12787691298d4962b37f0502eb415905225711b7537524cf2da763dc41b208457035e828f534288b52b3b4c4b48d0302047c435bb50067306502310094b94ee2b92650211846a59f33fd2753df6ad13d0c94363222b68fec76c61e3ae51d2b5708b3fabad6364d1b575cdcaf0230275bf00b1036dd194869d04918ad04f99f8980fe6a10b7047105d793d13f9619bd97e51787c2c775667c88e29b7612ee0302047c435bb50066306402307ed9645804f0766404ef2ed906f94c5c920b3b666071c022dc6d80d706f26ddbaae108657f7d75ab047f89b8f680aae90230574ad0f059b38eb2de56a4d98ff5baff05f5377733dc4bab497ce96187fa96f13ad6b9dda0ad26f36cb1a4a07dd0b7a10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305d7c704123d658c9e2cb6beee04b37aeed2c17d8a7949e007728ba120e558f49e2f07f0b0a665f98080762fd2df5a3da023100ae9313da0e960aaf5f42ed1b4b66c3a8048f054b48efec23e50f8920a05cae503c9ba316f0d542e1d1ca91c36e340a8d0302047c435bb500663064023065c00d43ceb461285078cbb1f896341d71248f2cc7928db6b957cccdfe26699a433da118e6e3f60071a16a9af4dadd82023049ab82816c5340c4f90321ec34a28aa653026991396a5ee009f49ba236f596fe775d044eee6fa127ac6599dbdfb0a1990302047c435bb500673065023100e82e0e668faef8bddd31ff75a6b996b14c7b642c74cf855c19d87975b5611b38dfb9b8abefafba4daad143b3872d8d950230401a79232ceee26b6155e0a3ac451cd29cec556a69bb74be102b1d636a0e9d52592da52ec0c29193607e71cc4454427c0302047c435bb5006830660231009ee0fbe14596e15b0e3a9a676544c1cc9d53aafa36849231d81d8ad129d8e4d603c1b138559bce6678a5704d92d03518023100b2825f979186a3a7618c1304083c1ff9466c3bc4ecfb104cbf03827cea0524bbecd7623ea43ab4874166a7fad118d8710302047c435bb50066306402305088d2f1d5adad58905d9766ae4efbbd5363fbe2afcc98df5db9996ef0fa7f1ff2ae811c8febed7124c928ac057cd6a002304526de46661857b4a2bf7b3b99733b3b9296c9f80c00c492951463b12b42a64c2b14ae2d4a93820fbbee28795a57c5600302047c435bb5006630640230735f1db14069a4e6fb154db61110e85209a1a3fc6a9cbdb486b7af4fc532987e75ae23c9c95ed2850ef8a136fe54693f02300e5975c3f8076a6739186b408233206d14aecd232db9c8a5c4b4cf8dea4c626ee0172dc0df9812323737f2e7478a93e30302047c435bb50067306502310092988b92f5ed4e592598f85d25ce716c67ff9cf48e4c15e711b633dccbe5ca9ce7e12de239a51e185a7d705bccdea020023026033de50d2b910f2f19e08cc89d6a23c58760570f936ca11136cad9d74bdd1900efacf9519023489ce8c378505c22090302047c435bb500683066023100838dbfdd4f594409cb3ef6392108fb7847bcd79a52ff69818333bef5d922cd53b86c3313030f295418a7aae1999d809a023100994490d726fd7fba8a4c3107e7fceec95cff37e9ab3d6931bc1ec6efd389a41e28abf398c902f60f8922635609f85b020302047c435bb500673065023100f10b979488e93af88d446dfee7adfcedff9c6007388f81cf0869827bca91833b3f37bf6bd56a3f285565f937929f76b702300f475283493307c1ce94dc20c4ba8f36254670ae36e8110be9c1b054129f1502e5853085aa3f85586de537fba2a667540302047c435bb500673065023018e30ac3c0d9b3fd5149d1ca0ab9ceb5e50405137a333ea917d10368bc058a1c6f9984a2fcc36571c7d4b87ffa152f9b0231008a5d0cf8aee714b7de2f7c3ca26419e0bb2c6449af8575203478e3b292e26a6acbb0f04fcf99d0e5610dde33459eee7b0302047c435bb500673065023100b17d313d485af1c35e900b8601e78ac9fd4276eab04f41d1e815bf5adee852e61bbd25902245af15d04be58f3782a679023034304b412014e033c3cfcb332cdbd23342fbd4d59a4f59a1901040fcfa15563ca28b8759ee6d0a0115bd264b9b76a9360302047c435bb50066306402304c0bd623857d54bcb93477732acfb44077f47ce52cab5f2f3b38f0400ddd28fa9cc4d6d1cc8a127c3c6fa554cd625a970230124f996d96d43abcba22bed9820f6f414d6c3ab0df3374fbd080a791e264ccbcdd5acc5d835685dc78204f866865f28b0302047c435bb500673065023100cd23f558c7a6b2e02f711f0b15d8143392f2ed8c756c289fdd33a27ccbb81ff6f2ab8f50bb3d13a3e6bd4e0d28aaa51002301612503fc477dee31e9dd93b061c6b4a9f1a8bb0c7469673136385c25abac26039fd660d497fbf5873b3289dbf30fba30302047c435bb50067306502306bb1d716cc996380fe6f1021f1e3ecf151e6939e846a3bf24e4edc108bd3094ead8b7f59974347b2817b7fd88a68ffd5023100d600aadd7a4e97750cb90869736245fe11acbf48158073e462069a4f5cb1fe92004e2cda457d69f2cac49d136e48a96e0302047c435bb500673065023100902fb0ba20f23b92b83ab5d3573829074972e1fec659bee85ea5ef3d3567242c35e36e3b36f4f5cf281162033ae6402002302d5ea392e677109c7a7320d3c22a9d6c418613763de688126b0162be1528700b30de57a78503243807a25e4a0f75b3820302047c435bb500683066023100df99f3572b253212a5414f5bdd16b1d8f815bf8adff87830b5881a772173638fc930bb29c92e21729381b13f337fea86023100915db5ba3ae1d21c6b9272270e032de17b49f03e1ad0d78f01433fec9d70c70dcbe1bd032cf2195fb379ae9a63d6d3250302047c435bb500673065023040abaaad3f765c29900edf86c98e4dffd6baadc44c6a97d1b9b5a958fe0f463d5e25852f228021062ebcbf232c16e1b7023100e0c2882d72c6e98b4d72776afbfa5e0193414d53ec17d218484710faa833d2b6390b5c0230aa08077856fb339c9008ad0302047c435bb500663064023035f3f324be764ff8dba66a38c4b7a3a96d1560676e4a5bfc39a47b22dfc36899a809ff613ed7a6c2c3f35a62971d40c9023007b1d45ad3e8f4b1eccafefc1a87d413379a3235c76b44c4597f3b6f4766c8ae2f6c70e60cbc2a988b4ff84678e9dcb60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d5dd38baeb70b5a43b64e984d51b51244e519d18799ffb28180454023e08804a72b3612c85a56035beec74576cda32a0230624c9c337ab0bdcaa8d13784b4dd74df77748d69c8cc2f5de61b20e3a7fd2d9a3a759d92fd7d295343f04241fe64ba390302047c435bb500683066023100914f30f87833e3dfce72febeac684493129af6f0cc81a282bc994c84cc747966736cd51a164b8337b6d811c22c77f7940231009828cd40bfdb651718cee3bc6bc6cbb610d4b2319c3977ae1533d7dbf8fc21bc909c9177a3f0d8900a2e3a8b12d8d6da0302047c435bb50067306502303f9e33c2cef5cd2607e7e03d12b3620f606db47ac8682c46c440fbbff008647e7a8ebec6a2a5b300f99df3ee72eee1a2023100c92ff5c5d4406823b821bf480153a4238fe3e47d9aa1207fa5fdd0a940aea60c13608e2521be175e17560c83126ea1f60302047c435bb500673065023100e0b55c916fae6e08dc35b6aa79eb6bf060f6b4fdfaf384a9674f07753d5bfd577690abf2d9ab6b610e272526bc8554670230142421364e10c9a4e285de2692e47dd6fd9055529faa3086fa8841f4da1e940c83bfe01b5862ae9a3f2ef89e69ed9c7b0302047c435bb500683066023100922682cf2b480a8964d2935b8dc126a71cfda4ab242d105798a7e2f3c4cc746e6c12cf7129c1311d4f799a7b31c80347023100fec6f24532169558c9e8649ac3afac9b7a12ccbbd1871bd2f0abe36a5b569c8cf393c61470efff10bfbc1a08648c2a430302047c435bb500683066023100882aaf91430a57727c70dd6673ee7630eb55f5e93f97dcef6a4c8dd03fea9801deb75a568a16d2f050117a8d8a79ffa4023100a5c637e6faedb3ccd0250d7f2aa184d1abcc453c44eb5073cb77e8ac67625746398e0ce8b778e674c5f9046f6d76284e0302047c435bb500673065023100b0c3074debc1d67e03bd21b745ba065c934be8a6dd198a480abf2bff059d1ced47203e38c6d0312867e571c2a184fc1202304a6faa6867a7668d48789915745b3d27850c6396e0344ebfe0c92c32c89dd322521a68cdf3f97150ce70f0fdf6bfc5af0302047c435bb500663064023063d4d1326552d98850e648d6bd417ef2857e80a32537153d43fd36fef1374db29f1f8d10d7fb74b5724d067a1912ab9e02307e005c882268a4eba82728ef5ed20a224b0ef6fbafcc30d63be550122f72d19743b22621adeefe8c1cfb65bc18efa2d70302047c435bb50067306502304fb0309c4b0c65fa44ef20e65c609144384a987bbda3315d9902f5af8f6594465ce603a72ec3bc661d8481eb9fd2ff5e023100adb485410d8bb0266799062d6ba88f4192d17ba81e9ac9a91d078a850bcea516874094efaa0f77a7b07a3e592b1822900302047c435bb50067306502300cb149dcfb55b513aa357633ef0177abe2217dfd63a6b2b693ab716a6241c5e8f8ad065cd104b6291161d9548b8f7c93023100c1bae5b55669499fb4405adabc3e4ed623f8810efdba044229c5ee0f7b73295edc578969a505a75ec9bcf4e855cc7b500302047c435bb500683066023100d02e17b9ef92ca1383d3c819d51bcedb4a745d48a9a1296c1c780e15625c14e7816c91af5fab2dcbf48b9c1e69716def023100a7daf4242a96a80d2edd4893f9413e9048fd3b322f2bfe49c931eb960c28a09b0d6cf36fc19dc0e07d2195d283fc86440302047c435bb500673065023100bb59ee5152c9ff2402dd7a7f08d461e5f06b087bf547318b8c72bfb0390815a36bab8b5b759cb953adc8f2247ed51e900230302012cb6f42468cbabdcfb6bf87ff6510d4f80934fba66c9c67f4a7517cd364bc755f650e3809b27dcc4214c00b1b3d0302047c435bb500673065023100e4b39dbc3db2d2373e5d9c828ba2ea83b01b8e867a7214dc8965042bc45b610901f792a9559e74e56cc852f9bd314c20023019ad7253f7f99b7e24cd1d762da38b71e085f1643d47aac662b18cd8da09fa015b80fcb74a87fad6185b1fc04c042dea0302047c435bb500683066023100e2e3de8fa931d146ca6c70df03a22d607797b620aec4117f6e9dc8c696f2ff0fbef5d61d1fcdca943defed119113e88202310084bb7c061001f5a32ff867c72b29ad25ac70aac99df53b8d617e55e010200fc292973f3a10eeee888e54dd285fe438dd0302047c435bb50067306502302bca4bb301dafbe3e0eb1de119c8ccc6e29c223aa5b90acf7a845b68afa3d9b72e5c489d132d93e4fc9fed779645cfc9023100fd7de9443770b30bdbfa304f0198498ff7c27fecec4196661c3ee976f84ffda53adc03de97a0049959148400e9163d170302047c435bb500673065023100deb4919a9168e084a64f3c5eeb96e199f5a79cdf017bc9a799990e4a6b6e2002c6fb29cdf3775ab4463e7478e7ef992002303543fa54a489a489009007ef18d0c3c9062474095095b4caf561eb58d55a57f7dc697579efbed6510b1a8f1350e6639e0302047c435bb500673065023100f04d7a112c276bc98b2e46ede6e3cc7fb25807fea7ea143caa389dfb564179217e4c2fed39e1896d3154ff517e939b8602302be7eae7796b9b54672dc4f2e6316cd1dec48fb785ff88fd6b52071fac5f5d2790f43f92192583344d92b902eda50fe80302047c435bb500683066023100c89c0bb85eb17d91667cbc58eb34b90d43fbc2d6139e3bc7ffce68c0764af8e94c9a454d4076a7d2fbac669835ccdea60231009e217291fb37ef8b38c182e181579f77eaeddf603bfe2c007bff76ae617d351e154c4af064a7500056517159d775b1f00302047c435bb500673065023100a23979577fd43e1c1700af73a1b09971e7a77d34574e113f6ccaa5264a5829c2595afe6979636c7fd9434416764492600230787bd763186aac66d52fb5f1493b1801872947590c1ba8594ca671a19a6fa11068e6baef567863d84e203faf491a9a6c0302047c435bb50066306402302111220a1a16c57269c0b635c6f449ea49c95032fc9f684b9ca46f9f2ebf7caea7731b73080d180b62ef429c881a240702306c0e2d85d0bd8a880892c826bc01cccfd081c254b72fa2a5241357a2b76739824425be9fe803b66f449bc763038878d80302047c435bb5006630640230604e49ab73b4a81b779b9dbc9297456c6977f04389ed6239b2430451ccd75e2b6f572ce6ddaa9e0fd63cca04a29d915502301f3cfcbdcfe38a237ce10230e7242fa186346f5055061568d5e30e502914cbee7a48084ac64e91010b5f6126cc7cfdf30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023071e2ee45e3d97783db18e3011e408f741c613f8a03f97280979ebadad6e4d64afc0462c50f28fcf4028f78b540445af9023100d713af39d9b7c07d9dc79450f4fa27788b0f019b33a2ef802e98838adab619c36c63783e8a900cb839fecc3ba3800bf30302047c435bb50067306502302cf218559860fadf18f7548d760ad174ac59f247a2369ea8888ec8dfe1413bf3a9335892e8dc22e0adf2834416e59a4002310085eea2f678c9095d54057c1b7275e61746a4db832390833908ebe5f56cbce1c20ddd067af19ecb518089e8ae609c32200302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c155acf49d7534971128b0a318d9e067dc9fc62bf33bdce0ef14d569f15f907c076287b70a3b5fe7e1c5dc3fe58cee3a0230091fed2918ee3d0e94a9dde0c95894e306d4ad7e5c76b3b331881d7e584f83d3d85ced34858cc1fd2d5954bb01a619b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b8ddfcbfec37c1a733f6f28ab0d1c4439c62ceab04f441674686d2c837d96b4031c627a49125d0697366b4080b2c2dd7023027983a038fa8c3ccfaef9bd080a920be99158b70755a5fa7b764300a30be8df1f98adc378da0d9f296c279295b79e9ca0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c61ffabd5d12541b17e42499172e36408c4424fafce1f987fbbaf4cd1219adf3c171329544228dbc3b0179b3de94a0fb02307269baa5072cf20088036b07c46f2f22fef43b5f825ed01dba5efeab1c02ca7309fce3486846cc7fadfbc80feee2178d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008b46c21164ae247674e6f6d2a19e7e695980640928277b479ad4808c7a2790cd4dd9341e36b82a9843d15800aa72ab0302307b8cbe0e55ab3422d2a4bb75be60ef457d6280d62ff64948630f1574d2bf9f486bd5995ab645ade4c4e90b030b6e10ee0302047c435bb500683066023100fc7fff91ce86af0cc4cb7a8d26cb8c3ab845303c3836be99f051387f1889ac0a44bac076c931477ffafcd2a3821ec39b023100dce529ad1c46c9a144b989b58e87bf6e4a0a585de0033ca23eac965e5de35fe9f86cb1e7d5492d428fcec36e0ae662530302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009f615fa03f6c9e53a9eb0ab3baa0c5a12922da8a844c6d61fbe0b4b439c702a1a310546bf874e031eabc8f0ca16e6d29023044d32aa1b46ffbdeb9e1898f183545c5434b08924354dceb89630aba1ae231d23f0d4b66d2fd072aadd9effa22bfdb3c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009f8991cbf4cd42beaef7f449266560e8b0dd8974b558059d56a088dce0d2be0ad2bb5fd14d8b85232adc4b7e99d83d0302307a64447d96af0bd5db6c9fbade0f1147a095db8c9a918b5dd076bcbe226d52cec93b33b195e731486b5cc2fa27c6b5710302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008b06f6cb245acbd492592af4e9f6fd87848fc4f060d4e5b4dea3db70fd0455bea6ea321469377e58f4496841adf6fae7023064853fc268a343fb4f2c01427621a3f130dd37140b9d57a9b1c3ac3331a587b14ca229233d92afe4bc86ff7c9c6687470302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023015abe38eb8859ba2a26fbee95bce708215d0fa9bac4eaa6112ea32bd903b191d8be56f992dacb51495fe7973788c2919023100df0ed3c8c88dfb2a815e034fb21c591a32256687094144c28c3db4cb669021f3a57c4a11736c2bc978c8864016c1622b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a67f0c215723866147590581729ed2bbe91e728dbbc9af4a827084dc74023c4e6067fbac3905278e7fe84c6e06c952ab02301bf565402189c7259c24a4848334b765af3920421cf1ddae7e1d54f82c6deb781faee51c135ec35b3e073a04ee5115d60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023031091e1bcb12a0bcb0bb846b486b55fbb48921b041c6cf0f9b2d2e52065215a6a2918ab5c971d71a9505ac76279c2bd8023100c85346966e8ef29866e398258ac882faf0b4811f266f71d30a174eef62893d9a4a698bde5d6bab7903496618d33496980302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f6fc9ebefa52c24d672f3568dc3377a1f79710062b3347ab4fddf4de73d978dc7f83db381ef4d692f7275bfda5febaec023100a2ce61cd3a3362619f6b7e368af113466f12a1122c533bf5230612e9b22257b23c4a1d35ffa8be8dc2d6b96fb62f83c20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023068183055c516fd6d64ab49520fbb9722abeb5b5c64f7ef1b794fcfe2a699d2dc46b474fcbd06caeb158194dc23e5c632023100ade10da851950ef2e65dc0e9da26ccad202dbdb04b0b580f42e239075db43cbcb86d8f206e8475f27bbf43a0ee2678dd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bd1710601aecdd535c46a4d9d1c00e4e22bd505070425dd6e6ffdc8425f88b5e2fbf41c7891b4bb5802a157fe9d93d91023100c86da7e172df237f9b90cc3754eeb8e6f1ff193aef57e744482d26f8e7522495de78eefcd7f2691ee6fe66a4f9bd77860302047c435bb500673065023100ec1b0430d4024d08fdd6e1545df4ee067a52fac467ed25b0bfbdde09b81d650ea0dd1dc26913683da40a3ff5f374c22302303a42c2685d2c4b0980f90c52474637f15fb44481e304c5807d52a775f13f61a546978cbdc7a530ee2869aaf186fa33ab0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009ba9ad1e94834bdcf814ef075da8d44c4adb860e69ffea2d866fafe71307dc1f5babe555591293b0c7b1bbf546fdc80102302b49248b950bf76dc91ea6f0bdfabd227489736a249e1c9052e24ad910419ee328b9d87dd7561906f6ee4113436d912d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230733ff47c3458b624c02e4861cf460409809db738c06957999cd5f87ef8160044d3ad7239f07e15d482928f5012e75361023100ca5f69405f6bb58af3754b044fbbdeacf41570a8ad7c58731cfa6340ee4a96afd80dc482aca116676e076fc7d2c6e7550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008afd11c23aecd61857bc0f9d6c2203d5d8e8ae602d941c071bab6a2ca4f9959fcd7945b2cf55d2fd64d9b768859707be023100c5caa44e9c90e973fa11cfda7e35a0479975c89e5b6e5e2e23e1c6c6ed99db4dcbae73f15b95c98f155a50863424b1230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303970ba0c354ea053d8c249536ce3cada7acdec33775bd4f5d51ad392e7b8568cbc6ddbf2873b7de9c0cf9a46c9b23cd3023100c73583ffd070b145d06094fa0a6b7ace3fbcffc5b5c4c6a122a1ed06fbc6d0d3f52539a5d74c5eec2b483bd8b14bd6df0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230127f0498c98b6efc4dbfd59dc017af57f2dc10f14a2814a7cb95fe3af762b217b8d7a46a729da11cc9f46d42584e29c202306537fbe5c4e7d37a63736d2f09bbd6ae8519680385fe4992ece8a6897d803697034317b7f66d32b193a7d86c5130aaba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fe3532077bf54b90a3db1e70d9bf2d5ab48b1307458f4ec4b734e871ec99c1d51845dbad54cbe4e865fdd93eb5950f140230051d48cd6d5ec7f1b2e45a1f5b636d4b8174f01746670084e0ecf562e5b2b9126b7218f128f1af9ae0203e9a1b6f49430302047c435bb5006730650231009db43ed7acf57fbf1d98fd1f2cc47efde22dec5294eed205bbd189ae3c115f8d3e3cd50e1c1ffa3c17fb65dd1aec67360230742f2e50375c957e010c310946d59cc0bfa4727d62b0b41ea995e9bb9f26e7ba9fc7c41d1a484c95092343b9aee158520302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009d5b8e3075f7ab1345b1cccf557333497d615e36873aefc6ef4a25280c9191d7c102a0369467d60de5ed6cad19ef7666023007d599a2e62cd0ee5044172f407b1c54eda6b186c92f1b10c2060539c77d9d75e9a047f5167f07ed61e3160529dca8eb0302047c435bb500683066023100c7bdaeeca226f8fe815ae6a052b3d642a77a32fe3eaaa4e5eddb513bf128db82f4d3980a1079673d35acf840b098e1b60231008eba072ea58eb60571a64513f6072c2abe74314ec9dcdacd7092163ee4246ed631a2a1ebbc4de0e9cecfec3a2d4e75390302047c435bb500683066023100b71cfa9995dbcd455ce8857df9648b294f9bc9cff8fc2f737160600ccd621cf949a7df320c680ac4cf1b9b5f9ed3b1cb0231009e14209cccc169c61cc4b6edfc76a1c43866b2e4de96229f8cfc1b4acc733715bafeccedc3be999767c08b8457c7fd9e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307e19f17310a4f87a7f3e37077bf577e1dafe0a513a6d78f2eb9a65193292d9b7bbd4de9f0c5ab4a7a40ccd6e661a2186023100e9ad112a69f709b40ed21de71566b67b23f8dcfae003bddc7ec76e054ce5655082e02eda0d5d8ba7a9638a49abf265480302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d3db99d890d106aa673ddf169d406f0c8dc17b0955513451710817d4072787e4be856ec24925a8006fbf965695f9e2ac023100e6f030c3eb65ab9f02d02e6faac37c7acd6e6f04bda8cf5970ab4143f093a3759ee75b72db5f9c19dab420b25809db180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303d9261ab8ceb21723195429b1dc9e5020d2e68bdb42186f1d536742329f5ea269136cf09a121b56d7b154c51a712b86a0230101eb13a3bdf6278a9120085db465de46e18d4190981202edd243cf67a8ac819afdbf197c5fe23d284d2077a45664c7c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b98df95e1ac95337f560b6da08ea22fe749c82fc826f2bc05dc9bc89a7e712d201002e55f451a1f637648e05983a7ca5023035cdcdf47d7c2f4e810c7a1732367d3f5e98c3b436a6fb4bb11b703066798b2737862aab14907cda61d0a2300de99a910302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306da61337c27cd9bd0f91d232eed973a57738dba85b2ebacb6581bdd00a0b8271bffda3ec3544e5214e014f8778b3553202301ac6ca953c1b4c073ea2445e7271b809c1dfadbd8dcc66a66708440484e6e1e4d2e77bca833f45bf1d26d0a6ae6b2c450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bee3db8b49d670a452bc4e0d7851afabc88ebdba170dd9d27c5c43d7aac209e2c009f72950d9443fd51fc1f40deb2dc702310082b26d4ed738c45fd4519e6409cf6f650c41ccf9226f6a9490c9a45e9e620748d1bdf507a9b82c0af51fa952dfe553480302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303b8c7b9f4dc51228d9eb228aef71c6d159e020c82eab1e93e1a6abbdf83c23eecafbda58482f1057349367364ddf718d02300c4f4444723afc914b6d5a4f45f6e1ef9326ef38512602f205c9ab7c626db577e59561115616b4c7ba87d3d09631e6b50302047c435bb500683066023100d67144c209a427d550cbaa583575cdd66f58cd86de0689d34ce8743591555809c199bab55bfac5832ca9daf37f294ef9023100ad95d41a5014fdf95e62196665d456fa59ec7f8472dd57fcadaedd3be4976be6310c59cda7e55e5985b77529ea836b220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306d84998efffa86cb7c4f01e4da1a8753399121b293d86e9a1c9ae774fedf5eb3e4b2d74ffdccb116167a3189a640c5000230152ac5a70b07eb3d9a93fad05be49d3244912287c6bcf4776bf16fa29ec631b8c20588b6467d0825e039963db87f73cf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c9c5a7884b0701739f6b377c4525b69d59fe0a28deb58c7267d3a53efb179f0637ae3ec38ee07bb040fd65e7cdefabe2023100fafe27076090881340ca0bed0b5bf62e936a2e27ea1f5996b731fee0ada583be880229e215d90bd526fa4a33c45f4c840302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ff835784a799c4bde3f817e68b1f950cfd3957e04947747688cd7b12c9d4384a4724e9b9a5d4de51df2c5b2d7b57da87023100d4a8ed034dee612faaac402270ac6e261ec4de57a31236b42a1d17eaf5a09e8b728c0ea80ce83ee895f22118405f61f70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023009f636afdca73dec903922f9d82b3e41768a14f6e0680a2877a288794d08aa1166fcda9ffe215c458f87d26690726f64023100f082c34f385d5ddcb507c237f74b975abb57c6c4370191253e395feba25a935799f734cd4476c7be599ee5ef0f50a6cb0302047c435bb500673065023100afa6b3c76cfdc0a1ccdd1be638fcb6f7974ba064935e4c5f05fe17e5f9ec824038195f2623927f3188eda698459efefa023005dd108e5b39e70d67d68c8d6c56b4c5d56c95f9b2ce78a90c9c4e1ab3b9a92dd52414f72dc41644ba3f0a80574dfba60302047c435bb500683066023100d1be2dd9a81b8f29fee0f44c7874b1b1f49cf3238a4aecb3ade4a2fb20955dbc0a1b484f83f6ae04d05982cc0c543c8c023100a81555f8739e3b4fd5d5a94c4a3c726014e331bf8eeac6aa49f6f1c27fde3965558e701dc9e736c5bf3a1f41a7e44e930302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a05f07302c8acf1e94dcf8b21f85ef011c0ef324106d5431d4dc921ed87ab360200639da0921382284ffd7700ecb37650230377ce7c683b4a93524a58cfe4bfa1defa5bb8e5561f9870f026e480786a4210c3bafaae85c72223a4c66f7d1af56ec850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230372f7129a4fae3e3556a76d144649c9d902d4fc1954113cf247031bcf98441251e5150d6ed0c5d1bd0a9af8d10b8f8ae02302e37e05584ea46e61b669300f4de5d17e230ff74d074033cf28e4bb4023c275755d1aeda7ad25bac065c35570128f2d30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023029ee6255dfce5218c490825878b13d35dc183d6daeae29cf4851f41cc677ada367a435f4a5a79a718d85d59e5f53918e023100d75c03b3fa4ecd7b4e2e5ebb03aa11e901e3f75a6e5c84db597b98837cccec991e571d586090ab1175a1052944e934780302047c435bb50067306502307e730d5e5642c733f1d5ba55958abd70c2af013a11e62acc73865014a47905fed706d568199a438a15e885633eeff6cd023100e50a777eb6b36edabd84fa73cfec3f131b59ca6b4482ae9964a448ffdbb5afc06da90b0fa6e93ef91384f15ae9bc97030302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a67ab7daa98477773e1640fe3e54aa3119c7ae02e7aaa9d25549fca0d682c3bb197ca8058eaf4456e75ec49e3dcf6247023100baa0ee96075b4fb46b4b6291dd65e92166aebaa8f4d9abce0a5c6631ada14016cba62beeda73ab876bc3838a8627b8cc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e31b973b109a7748b62797bbcf66bf9d1cf5619db8e0f7fd203fc9908fc04dfebca3f48ceff7b535f3ef3bbd4a15705d02305d5df24682dbb1dd827dc904b1134f6200ed43530a846763844b56c4a6732b2e4d4234830218e6a8b8c0f5004f76d3660302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302bae985296d58bf157c4ee2a5de4f68968269b61f160e11dd214009436a650a8750f3bcc37a9975fc08b8dabfc707ef902307a70e35a8c7fa5209d7e2e13c75e3361059fc968275ef3055c5548eb60169ee73b629f40bc948d52ea18358d19e741720302047c435bb500673065023100875511a219de28524d5f7de757c65c8f74bc95b714f3dfdba09fd1ae28b99974734c215c05fd2a8f93676400c9d86387023004193b7f74aeb028003981e7bcbf6475651a54771eef87909707b154432fc4b271dff8b58e075a06eec0f02c338a5a510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b03b312c00f2112bed07badf645af96ff382680803fffb911f986e913b1f5c406fc368641ef27b59096a0e708416440a023100f64aa1654b6c68eebde6585b1e177a2ccf28d1675f9b12db652cd6c3985a41a944e2ee3e4f4de027b28956d04ec99dfd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fd4783c73c884e50a644355dffb440fd4fc8190a7b8b31d5b28bc0e018c6838ff1e9b2019b7fd0e4ddaa2b80234619fc023074d871622b08fad43f0a7b6080891b1ec990e197c3b27013df7726d98f23323be606a8bc9c7685999e8285377ac6d07a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306b027d0681af5471f302ed6b98cb142259f07064a3293d11ba9f339ec50d40721597b286393c033a87f2ae14f9978e93023100d83dd6993782bc903179722510e00158cc0c2af677e6031788ee528aeac30e03a5fe11e5fc8d8dbdec5cfb4f2f1cc2ee0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100933e5e3c62f710a226e4a80e1059769784b949824b730c9118034e57d67ccf513bd5b5f306b3334af0f274cbb36b954f023100aa875c743216a99f6c30a13fa44258185dea81e2236df0dbd95feca6c2e967c6428184a1ed3acf1801c485b6b4bd8ffd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d299b27cbd3e7adc5d4145eafd2f51cc51b61bd5630506d7a92361310f422280a79a4b0dff70a1d5acdf1eabcb638c280230435ffdb7d8632af7afd221741620d50988e80d8362ee1a3b853b2b29ecaadc73ff4a678ced7b67ad99e018c3b140ec9d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305029e5e163e4b5c55217dfde23d6703b3b4bdac49e1305d6d585da99d75a4808fa34573d98df4e16389b9fb0bc63f7f0023023b929a1c0bf05034553cc5a01a92d2faa03d3a53befec193dce24f4286b1bf47c82d53ef5befaa467aa8c2f64639f2d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307c428b61d11f86fd05ec1da7ee57945ac80f665090a6cc5043408e0bfdf43f16502109160e78cdd5bcdc6ade22f1538d0230331469adc0a3cbd078f4eb0bb48e842b8c6a5e0d4a06c7c90be3dc0c46ec4cc663607af9c9d8819261f2069092b474b80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230091c9e24d0f98c10aaab1473f854e92cf3de1d774593f3c1b1510d1287a52fefb8dce184682a0cc1859da1598fefb5e9023100c47bbf68dcfe82033d01d018339d799f4ce4a9eac71148f95526b1cfcc610cdba2c6232544c9e36adf786956360020660302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ed99729c8bdd04507e7a8dd503de9b06fde9d07334df9310788d5efdbd88d3a621524f04e05966a2c7ff3a698bd5d9da023055d18ff1c4f519fab5c7e709d0bd0699a1fc7297993366339c777473faa55f728491b72454d2a6cacfe73b6e3f8382230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009c2493b5bc5e35446333b96b10615561092aa3cb9b1e22a84d366b05cb13c06eefb693a338db461dcbb54324b8cc6b88023073c394c67f2c1aebf7a48191666512eee17f8ce170b5b45c7c9c4079b5a3bab6687f6b51e487b15b71cc4bce974dc35a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fdb2940bfc0cd76e86f55bafe1bf2d6f39a81c1b98ce1a7be54e6ac751a332290746f7f7629d4c90cdff237e431374ac02305f94c5e623c2170ba0b38c3827f5385458ccc099c4a4d9b979e707f1ef9856fbe82daa6965fe5cdff7b019d5ac4cbabe0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300a44778ca73931f3dab31720c9827dbb0b961c2d902faafb0b4634305dacfe0387dd84c3fae4d903da61857d21f38bf4023100bd0982dfcf9c26782f4b941cc8734236d8ba12eb7d12fe7eb49ca526e03a7873e9c7638dd7f63dc588821596167b240a0302047c435bb50068306602310097fbaa9ccac895524db4790b2250524394122086e9180b59155281f7079c3e23e79df9ee4ee1a942b57fb44a0b154ed5023100f5127a28ca7fa34bb026a55861fb67901d211d30ea6f2d671b08bb69695ac3007a2f9119225ca061681d7047451d9b5e0302047c435bb500683066023100b34f5862a61a490c8180b459183c2cb8bf134f4134352ac9f37240a6ea223e30898a61b702a94289fc6c0e0e501120c6023100a286b0bcc40ad755c999dd59db19f93ea10530ca0e57b6ed159736d9031ddc612157e3f88d6c5ddf4604ced37b10c4700302047c435bb500683066023100fdeb465d2685447624dfb64886f9f8e28d7e14cefee52ef0c132813e7c45ea000b77e8bdfb3751a3ef2572eeb96d8068023100aed2179ac6aaa626496177a998d2ca7c80ef05e6610220b2778b40a73e7ecfb2aed7ceca56dee16c7ef80e05e66e190f0302047c435bb50067306502302dba398c778ac49aad87dec92e43aff5a528f61c1b3476e04dfa9b2c37e1e8e1054d9d675a6eddf433b188f005954ada023100fabaeed849b2be504e2d223ba01e9e83033bcf5f39d5f92775d2fc7fceb98ce8e9aee37078c70bc6a446abbdcff1a5810302047c435bb5006730650230704620b592e28dd56b3ffb0bfb8a3c5d93b8eb43770c4a8a73d4c20e09dad18b7474dd598278b2a99e924735b01cc9b00231008cc8b49e57ebc0ebf4ef069dee8eda1a54f436e264935c6bb50dd2bb7dda246808a4c4d616de15d6c0b0a2be6cbae1a10302047c435bb50067306502305216610135fd40fe58856c5e8721217d43d9203b87f032fc64f3d2d4e48ec23ffd191a5478834a5d1177e4b76cdf0841023100a6d5ae138e51c8f53b1f6b048d785e30552bf284366af0ce8aa765d02c4229faf4c8c6442a65335d5d1a1d7e250238e00302047c435bb500683066023100ccba700606e990efeec040c1b6ac209c90d1c9366fd3beda3cc453fcacf1c9f592889a314a808e5709a2945707b0da4d023100bf6d54370449986a7ad697d958041e89c44f67106a05a6a2df1e1356f27c8f020f5780407c3c63386fa08f8f56685ca90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b080142a9472dd3dacd7b7c350697cf2a621251a90b8ce0c1af5df1fc838f6c331c12d91fb4654d84a726f67c6118e0202304120e7bf8041bace1d590fe02c05a3a96836f7649ba2ccf93d06dbfd2553a7ce16075479e81d492d28acfa8e1dc688aa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230382918fe725aaab8efc540d95b3b103ae521c66fc8d132469fc8f74595af6e9fef0229aa5fbe726ab51e1f82bb21ce3f023100a8e96dcefaaea662b657dfb5a96ce75ca28ff8bedeee36efc2a55a9191212847989248e62b6beb1d0cdc16902fa8306a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230621ee3f288caf20dae27dae545360f6e1b0912de7a9f056fede189348fb144c485ae06a7facdb5057acd094a474e3f2b0230753fb44ab8dde2bafaefe89f3519e2c5340c2f0d6eaac012a7f348ddcd2e0bc5a7cf5f34a350a6d50684813976ede7f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a943018c9f1b2c6adfd3105eaccda5fbb7424de61a501a6ecdd0756138741aabea5cbdd6789bcd59b43ffa9e9f576c2f02303e93f516c4d80225456641dc08bcdfcbac3a9e1089abfd8f18fd119abf944f1bdbc379a354f56a1acc1c1755c1d92a760302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023038bedc45cdf588883db201b2ce09a5cf2527b5f716ddfcca479c08f7e763efe9c941f37051dec2b2b7c2f993b00d964d0230462304b68a12d614de8a5677b255394a7ed61803f4cd16ed7cda0ec81487194bd6c250058aa0ffb5a59d827dba0e1ed10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304be590ce93e95dc41af58b8fc2011408c37922223b59b04a3ce4e70efa5febd9d1069f7930300892127784152c711b9502306f2f157b512d7104130a2ffbf0dd3e550ef1d7c78797bbeec4013d43e186191198ed663ea88bb0a5c8bf880d06a536c90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100af268c51cb97b56a7fb2921f38ad13f6af7194139a45a755479a00a95d34abc27a2cf41b510947de0413cde9bf6053cb02307706be2de7e9175bef27798a0cb820e6ae5538ba9d85442f0ca5594b2ee17047c287c09441d7f4d587f6849a297cb8b30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b7cd5d5daf0df845506827d2bd93c2e26159bb1e41f24b1bd954e5d1ffa323a26a2e669bf79fadbb03b2d8a10a46b69a023009c76ba4bc7bc869e6455a562005263929a56060a961baf3f92be8fb4e62bddb33794aa27bde74430e90c37c226c28b30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f59b1351a517563fef2a8de70f68b16865ecad22dff80a20934ad22ca70e5bb77a28c802cff0a2db45806774777740d3023100825e4f9008f32d0ee2d197f1faa458a1b30780a956cce09421536c06316f62bce35d36e9c0ffc44e8c18f05086ffae3d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305e629afe5df24ea1c55337ab8ad8ae08af0d28d43318f3ab0ec3c6097b84d0c793d7f3bdfc1b21fa8f981106eb0f31c7023034ac2accf7b2416b3df79fc8f74d1934122acb979830d41fc8a3f4c266276fb11a9c79d104d9b2667f64e5944cd125f40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100998b98eb21e5b931eff9263565dd5153be3d77efe4473670f3c5a8fd2ee305220f4aa44deff56ee90f796a34c5332dec023072b5e6cebd6bc0c41fa00c6665d9ffb29b1a73b9285933c1d4ce34e76d98c211ec9679c62d4001c1758c10ca4b4e66be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100adfe47a96abf93bf21a9c8dfb5a27a900b185c98a67e87ffa146e855d24101295ba387b1086088b71b539aa40674fa8d02304fce479b351e38496b7748e6cb72f8c55b3e2885bf7cbb6b85e129be4103ab181255e29fdd209bac2b76f1736e3d6f120302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230670f5b1188c445117c04f1e45768f4fc6f1dcf0cf483e63116451410cdd047ca390d23e5705ed931dad9dd48553b0a4402305e9180acfbbc93804673d6f37efea330705148c63c87c0632327ca05193c2db870408f2c3289bcd0d496361862cdf7dc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b26f8df96801bc683954fbca8b15709737af406eca1cc2ae905a9a9cb2f8a7f9c6ef4beab2f4405e42c816f355850042023100f4104d892bfa128733d5183c2be3866aa677f6fea066ff4fb0b6fdc6b90a538172683674262670785603179901d04e9e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b74d39a43fe2b04da602712dd4b193cbc0dc177968b0c3cbe38ddf60eb430e5e559de6174d851dbeb439416e2bafec71023044212ecd2cac2466dffed8491fcb36230944c01464b529d3b86c7fa00d7a49c388f5b87cb8ba65dbdc4fadf50bcc6ffa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230207b4beb56321c4e661af5c00a5285726de47674693a6e4d4a260a319686b6f6af2bacf627e8c85251a5af506d19c96c02301e21ae819629c2ef1828334b3d75d823d59d9dd866d0a56abb172bb7e2a4929c51a11f9eaeba10fd19a73dd2af30c6200302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100be5e42e5ef4627a44d30295e1fe8120aa89854560b3585888ca5b1b017a8d576815e9eb00342084a63f50b7dd42910bc02306b58857a22afe55c4439c089836f664c8bd4e1c0f48a122d51bcaf80f9c12bb7d657a97a88a76d9a643154ba1cf8c39f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b5468738116af9982e8b46fca3458f0f49865bffa2e5b575b64f84722095d32d5f439f1aa4cc9d4c7901d3fa475cf5f902305b9f51d81b74d96f65bec19efc639348f9e4e561118ec9be633a9bd376b882125c78812ea2a2fc100c8138fe0b17bf560302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b2fe7a10b78a040a0d9b0b5a35319a8d278cb65a0b0a1dc2e20b9e384a7b8620e93547ac45e9029b01b8327ba6ee65bd02302ce3768783bf1ab59e4228264dbeb1a5415ad141f9b427550a55e0e69f58b8096fd7f07eae863b4f064fc0dc67abbe7d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009cc8a047ccd0ebd8d2fae8af80d535c09d90a163a443274d7ba5c3afa1b01c40dde05454b1e5488427fabe8776345bf10230234bda86710f8e9ecd26c86d9e9e02d585fa07e80c7f592cb8257fe968f9061774c7b4051b6f102d03c8c6df5140cfbd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fc8b6e061c1a7fc5c0b8af778c72a3b3f36c05c4e6926cd6be3ecf14ed8313fe9236758958b52f2b4925ea9c4398601202300c7d83f4bf28b6595288977a86141b309641dd5840e6d683217da06ff74914c563ec9bbb27f34f10b3b3fd3ff2464d740302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023070967b25b5244faf5bc2b953f0317df0650cbd702f15a5810ca337ae52f156d0291a7c919e07866ad0247deb2fd371ec023100d25f7f55641f65fbbf71b45d4b76071c6169aa23aafa123a899500698ed9106dc24d0b389564cf6180337794aeb1080f0302047c435bb500683066023100c08c8d9086ed5bc0e9c05255b9129015c36484837882edd35b370e028955cdafb12bb5d45f0ece4e103c56403d579171023100de08f2e4cf9e138ef4d80e9b6e1a3edff55caead387a86575fee3fc2e8b63ba62dd7429598f37b89f7e36c52dddd62600302047c435bb50067306502307545571e3d047d8c1ea7185b9e625ccc4e83c52cee5f5dde8fa6ea1663d441d8c09abaccec783ecc99f013f2c872d045023100d5028effee622dae5eba0a12583d2e0cc3b443e25527baec862b4fab7c574d957e643f0527d62dad8ae8582bf28200e30302047c435bb50066306402306150dd6f0bd74f30e10ef835367765bb5dbe55f4cc3a661ab1f0442b02b37ec1a412f29c95460e6a38ecbad0161a993c02304836b0e2cdca6505e6e5ea18590e10aa96b2743c3dba3d37542506481555283d735f9c65f4d0aefcc9a15fef5f96a0c20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230719ef254acd78a70b05c4342972d9bc5d1e2fec1bc41b84684c80e6b5ae4aed8ae9d7e4ce91896e4aee633f257e23bf5023100e073c937806369e1a9f05a04d9074cd01349770b370845b5a025fdf9217422874cf435d0c84ca721cfdea758e380e3300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b59272fd362a97b76748f37f341f03fac2007e5fc3a98ddfddaee5320b6c73cf8b3f471ea70fca88b8a36035d6524805023100b352b7b27522bfc45ff5b809b8ad1d53a8d9eecb1708ff89d9086a4a61805696e38d33de008bb50b3ba9af50fa6ca9a80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a126278428db39974caa38bbf30b65a34b4c20c5dc9f17d9e3b3f1e0eece51d0372ec8752f1b077e4ad8252ef92ae25c0230759f318d95bb24e19535250fd6be3516c2b78669fe054f31a035530eafeab0b632830d0ac36eb1874f1cbcb643cdc7ef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d78e3975350a99f61cf64b2ebe9d38905e24520fe48065e6632ffdfe7a66f6bc6977af00363ae5aefc220e774bd03c4f023004a9a131fcd38a15f0625bfeb0e0db081e2cdaaba24d002dd9a628a2e2e5f904fabfb9850b3956e88405efb63be5e1040302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023079400b123b52ee30329f0a99ffd6d8fed7a11554701cd9f17c49d4ee959dfdb640b7d78a33db617615f79fa29acdd69b02307d1ff0bdd858a38f819a0afdceda5c3ad7face5c2b1bee30a3b1424c41bbe0d253312b3efd997cc55a6bd4872b1ed8940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a5eb90e8ad268fd727b68e4009437386d05849584f5f15d64419d2c06ca475fafb1ffe585f064d746403e1c09ea31338023100b238f75e00910fce625d7d03c3b975284140fb2a3a8daa7321cf210e94fffa586da7e10e9c438c75934cb3b1537fea950302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bfea84ba1100100f4676e45043c8998da9971a1ef0602db0c81a48c3a7766ce7dd636f57d48b3a51af80f086925c117802304ea42dd8e58975325e863815eff1db98fce2f1fa574fc517b7237ce764b20aae540753b4deefc8507334585f8e2b08d30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023057a0c9583f18c1baf2f492ebde58458d9cca40c6766458883dbe70e37c8c31972a0487241a69fe70a400194c43c98b1702300d440532767f71558bc4a3b7eff5783ad4673fa838170ef3f01f39d4708df03d9ec2a86294961a050298548119f7d09c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023039ed3e606e905fe4c20b06ca609cb0228b17b994bad3fb12813a3e0553724621a0c8ea3b8e62e0f0b0ab27d4333a342502306ae9c226baeca3fb354081e7b92f8d58f729ff202045408c81d996b14da45e5620bcf3b437a05c75431c560c80a501660302047c435bb500673065023100a6249e359b653106abc5c182f05a55a6d2f6041aee9bf9be5639b9d9f615077d75f288fa5796abc3d3cb02231aa9c83a02301d99a5ef326c0332461a8cc11573ce4dbcb9c87742e9023b672c364008caff296fc53f01843a1c4f697e7233752a79090302047c435bb50067306502305b03e14707557161cd8df305ccb7fadfc8aaf9effd3a65bfc8fc2176b892fb1602b3cdb6cacaa48f2e5f6fb11f17943b023100cafdc4195bcb4f5bf0073e37a7f49f742e32d5ede769c5df2957377f123b8bbcdd10ee1ef5074c0669c8fcba3bd044f40302047c435bb500673065023100911c5900afadb7b15d2a4490c1165e7c3bba0745040d4156db094834211d64462fd1a11c6726ac6db6089301ba3315c602302e3e85705936b03aea36f16494f30469eb5a09a1deef4c014521560a568b2f1e38c6a51faf913cc9b2b05c273f9fa0080302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c30917c1baa1f5122f63320a15148b63d44eb44ba9a72b63fddbf6bf0b00818a067b9fb0c8e927addcf3ca32a4f1c62702305e28a391c9ef28e36516f8787c9929338d6e0243b64176a21a29ecf94d4ac2ac3a0e229434af5cd3e3c3e960cd39a2db0302047c435bb500683066023100c1ede9ee193ece6aabee29ca8bbc8bb2f0e9faa93719b387d97212873f9ab9c7d92641e53c84b2a44e8ffd28ccad7928023100d45368fb690433a837698520b38effe14b62e63253f9c1e6be84724f60a4620857b7a80d3fb8560b8f3aea1f5e40937e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302c412e20d34ddf88f9105d88cd7d0819626e45905af0cc18134c36e6f0b1eb5280ee6f6efc3cd547d9fd9d7f278a926602306a20f1f2dfc0a9b04e22a0eeda940a0fd6f3f39af3c461dea7aff02ea4d65b2fbb5b6f0fc6ad4a060eae9fabc9ed49a90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307665b2b2b362f278d5f18223dc5504c27bb3a247040415c5557739babc0a40a3909e82d7500cf0d8740f1f7226b4c69f023100fb34b356497fd8871e42a3138d6a8787e0968799cd78e392f7e387e2ec4d174a5a1f2dc8a7e114226323782940ec078f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023041ebb875b1c4bdee3bc9155244496068eefe0193109559757a4a4774b48eb0b644e322b6401e48abce879edcc1c98add02306dbe20448b8671d36e0d80479089506ca0c6dd60e4f1962ff4739e06adf5e7c5479fcede50b9ce1306bdbf41c6f6509e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302d463ca1704fcbf761e47c1145667b22a3f5c8aa3bfc324b69d55d5337af3794ca90277f43d1c390dc9406a7045c0dfb02300c176518805cd33f0fa40479c66f565e57acbd573a1c133375442ff145004861e87dfc0683028fd6f3510a71cce0697e0302047c435bb50066306402307f1516708537765799db6e7bc2897d9cd1337f2289b8508b70cb42153c6313a6a25b3effe0efdf1fb3bb14b15e2e46b4023000b33e75c4360ebd5ac1824f235208549ff1bfc9d1370e372e8367d9fd9effb2cedb3c7a2780504ce483ca04ea0671740302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305dc4ba9a422c12a43492004cc979be13cb4800540c4853ba4b536cb5784c7c2711649197ac235225a310014cac36f2d8023100ad691fbe319a90905c46464a0758caae60484d97c164aa55cc77ec6266ef37b05f21b703980dade6bdbd8b3cfec6ef640302047c435bb500683066023100d636aa5ccc4577d2ef4119ed633b1d413f94681f9e586269e829b604798c571d4755bf832d9107a8689d2e63e64b4cf5023100833f4dfd8cf31e4f77767d989e61e5b88aa2d7cf0d33697d5fb36b076ce3d94fe4ce083c368573610657da2bf6dd16ee0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f0f8e323d51349f8152af5d25cc58baea0f0a763c34ca84231dbc2dea8a6696b91e25ca09d721ec8654932ed92bde3a202306916df9eb89121dfe738886b74e3c642de1e7c4910d1acd51e0d7d3def0652cd8d641fe7ece6286faab205c070c4544f0302047c435bb50066306402306251ef73ad329dfaf6b63b18ae07ab47e703cf6b60392cc143678d58634b2d7a7650d14fc75f246f95ef449af178c86702303366ec82c901a1f4094fef4baf9b5d19993e603302358bf59dea0abbddc66b44f18d6f051565d35991927754f108cb030302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230631ebae08b4099e5b78164b10a8633221b7fed0d692323fb5f374130348da793b7f6284c85bc360b63b12373ac9765a702304e5188ee9cd9cec73a12dc994c9017065a45ea0e1bbc20e2a17df580e7cd2ec7445d349b8f198071f77a95d0efbf0d7f0302047c435bb5006730650231008ca78901e22626632ac220ef8367ac2618f8d1b130737e6fc6f119400fcc3d052d4d0a459057f1f8ff990b01b4e6ed14023017c6d05882ccd283d628283857a59c66cf811617e46f5cd4cf395c03582556e58f0272a049e5fdac2c4aa3eea8b3d94b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f031670b4aee811091572012629e12d8a3218a279ee2be6e596a359a487272b9857b6b637674b1619576b5dba998d011023100ade718212bbc80304c428e57627e874131dcc18e8dc5ba16064e8bd7718d17fd012799ec8113231e7c67998b387ed9460302047c435bb500673065023100d4d5f26894c9604983225426b518e49c8215caa48c0f5f36a87b9f61318f43f7fb5ff8f691206a8058efed71ca67788e02300c4af634dce11ee6551e803129a16abc59639ac0e32ed01737b4e91a5c080fb232ffb431010b31b5bb9bf76d2402922c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230328b14e25ee64a11c8e2963f3ce1780eff018533602ae2eca888d2a51b35764f606c413ff8f6467c10420c7f57c34c91023100c1194871fdeffee144d1f4e73aad46cb5c9b000fa1adbc132e5f72fb4f47657669a6cf2351c427559f0eab7384db9a8b0302047c435bb500673065023100af62d58e65ec2ae4f23b24c56c292b248001b7b1e6cd73d3b95ec6c1a042dfe3f37011ad2d1a56529e3e0f84e3ade5f1023035817a15f84eb33ff67a0a51191be7b13fb871667029b55d3f29bf9153eae1bd62bfd450b4cbf2b35c9708569b3d05490302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aaad64bb9cf033f7ed3d8b5e63ccf5db6a2250523c68d5293c44e0bdaa542b1f54abfeca805e2423f26526e2a3a3ffab02303182e528e358429f65a162c84db0a6b2e1bcb065f2fc852181520d2f6187316622391f0ccb46976ab4e7d1d602a63e020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e5157ebc26c768b2029a260da4582bb2533313fdf5bee81ab0d95d2a40c7fb0581a0fc183dc930cd0454dd42c481a1e8023100dca8ecb33cc313cc94f37bc0cbdfada1ebf156b2ddecbeedb8afe9aa60362f4e0539da0bfaca9147dcdcec4b46e232ab0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230225439a1aacc6255b410d778d04f51bc294209c51a8b3de14601ed8fccf67323c800e3b178d048f60c06fd134b642166023100bc98fea309b1c8da52e5976c50e41784798d03535fa84e1ef83edb3dd33b40aead843d3602f93af70bb744ccc747bfe10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008d85b8144fb1df6ccc1bfee39ade7e8fc8959072b39842c34051802f67ae721d9579946f17558fda9dff16ce24b024be02310098df5966b22580345947ff06409a360a37d88e77d4e0e5d2a91eed3cff007e79969f283412e6c3c8c38ca5e5d07856020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cd6f7e7acc2240b60875ded1327309d29d0c9ada6e0899c808178c57f0cf2a4a450808859a120038d122b2de33ef492a0230780328c9510c219d8ec02e7f0882b240b38a7b5aaa2b8aa259fb89a11142726f5a54465300dbe829577368f5d63497650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ae88176fb2e299d7cb26b74779930c4d69b055618e5a12328c6d61dc6b9f91c734c8173118a46186246bb2c2331005a4023038a95d77ae4935a22333aaf60938fa26120b8b7ff0916d61ba013d6eff2ee572a5174a0576770edd3b79b6d145ad06450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230383b2a3555f651e0cbd4c7d89bfa79cd4fa2a377f581a885702fabb7120ae05c1a7122490a89753b572b7fc5c7bbedca023100d242997d43ec73729ebb937998c70376d273310e70a63125c7b538c2fb923960cbd56939c2c18149006df92f8af4b7fa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230439601faba5bfa578372e37e818fe46d142599882e61f2f9875ad863ff185cc711c57ba1aeed4d3ccf2de4b441934c350230703eb3a09dbe4073665da2ae242d0c946a805e9ae874248b7ff2767912eb844a6ffe0230d68146b35661aae644246c020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009abad78ff9390be0242c2167ca00cb43ebc2be261d6c48208dd5da858ba1ce565053a808fda245831ff02878efdc42c9023100ce869a7040fc5a2e519b5dea23861b291753c3d1933557e4c30390c9b02200291617f9699b3fd3f13710e2a17f67671e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bfc59f0d4deb8681c986c14b2971ff26311bde7383449267a4de29948227a1f4057b2ebe9e18e1c2cc6ad00370af410c023054ab63d82176c60cb9cf0170d8b62fe186e2e8661a277e4e5f5152051288ebd07a53fe06120120af19713a7fb7821bd30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100854448db5c46776157de44d63e923ca0ae03410dd6ef3e1e90aaad787d79e5a2307fc2a896caa8f23b64ce219c1fc4b2023100979b11b890c9359c923900287685c4d87af88bb20be1b37a48a61be7dcf7676731b51a30433cace3e5b55dc1a1b46be70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023077ff85bc0af50c26283cf72594eb1ed199e66baacc9f59da551b9103bab604882f6af6c228c4b9768ae2812aec49918002306324b6b89be271d92b065d49124575323a2157aeb8dfd3081223a64f47b43f6f796e8fdecf286b608c9cf8f6f0446a3c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b218f48422b9222c379a0378ca6d9aced7d86d9c94616be37676a8ffc2fc969f3b60981625282e6d61219e4a05da5201023100a312be33afc9220da3527ba5f6983a091a94b4ad976b264d9ab64b94428ccb6f6c5d5f7f4a1b0671cd669ae603d0a56e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f75e1130193e8eecdc1ccd15bd0fb4d1788f276931280baed6c92e394148954051d3545a946e3e1579d7f10ea325b6f9023051fda45ee6be585446d35fdb0af32d2499ff51d70a80622eac54200ea2ee64dfe5444995255792c45896291c63c4822c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230193e73f2b06adafef01ea6159ccd9c98c36025b5ca0796eda63f410f0f94e683a5a310fe0801d7ff09d8bdeabc343aa5023100f5dc88d69452d2b706e74001eacf60ffc923e9c6cdc12a89df90f47923e47605a8af39b1ec7ac3ba2c49b4f4cca48f4e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c77999d1040a6fb2a79ec5310502558ff874bdc64a0e9de4f9772082d3e94d520e5055b6d57cdccfb3083ddb7cb705f902307e5e2b55930b951b09fd1f39cc870489c5f18d5fa2a99f8eb8bf39e9f7e7ba52b037d8aa2cb9a5a676ad4cc891c9f3650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009e21e667e1d969079b275acae8c0d431ceb3d6e22adef9dae41ba42f7bc92be6ff48e5f83bb032bad4be4ce5d53f0579023100e07d0c631547d22c085b0579fcc9f3a40dd3eb79ee5321c253f0a12915f843e8c3e45be167e96448f348b39d581ca05c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023014d44a739dffe495b57aeac3c7ee31dd8d9ae1c5016cd8b8ec818f03f7b33886554dbb4457b1cecfcc23ee1cc279ac650230343c8ba0f24c5efef36e6635fbb62ddffece7190b2d02b467f517740353d9d5272240268a08ad26a0cfe50e2ce3535ca0302047c435bb50066306402307acf758a54ea9d1e8fc573da161ecd4ba504f016a92c5c135dec15a02476a4c333108882341daafc29b53f5e88b24d8702303dac48bd1c00cc01c0df106b3f2c4b7a0faf4001d163ebe57a3d0613966aba6a51d7deb63e0bbfdd273b31c9bcc10add0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230321cb0a23b64dde5f0810b9e8720cb3fa77c02b1ab62f0f908a5e75c04f6b13ed4b61e6faa79861a32c7bc36dff81325023020a2324b1a4d4caf1e0d3193946da5da556adbe6fba9de5913e882bb93b472ebcb880abb9ab3b8f5545ad05510b481f10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009517b7a3d8f3091692650f6f048711e28712de83150ff77fde10db0eebb5314632d8eca6ccfe5c08fc7f8ecbd345e36402304f7454dfb4ab8b0c757d97fa056709bd925c7bc14e9a4d861e2b640097bae8f6c5f616b878b7db560dd83fedbf33ccb40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302166aea40438ba985182986825e0453aefd676b5bcff3405cdaec901d7a99621124571f80efff6743349a1c102c53578023100ed3f9fb400afda48a967a02ebd6da0807d95adf04b78bf7f909bf454b7487b1a5cfe9bba870b126794542a5536e191340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230164dc8fb379475f82ba17d33dbaac6b29bacdc9fa60b78222fc5b73d36f3e2343fae36f923fcbb5b6464a5a0ecfff97d023021b97438f5bd56e179f10188a7c76c243a4a8a8d1977f3ca7d702cd09ae51046ca327bf765bd777aaab3be038c9ff0140302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023025db9ccfc04460fce9ae10853c78cd804af22d1ca64458d60449db8b57b93154e390156be72b23da5b4b1d9aafb2aacd023100980e069fc07b3681cb59013d64457ca1f3691215142701450bc7458bd3db966d2764b5f60993c6fa9002fe20d02c085d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100874784063e795dfe37866242a8d842596fc6ebd5a9c99ec7abf7dd40764a130b1fafa953f86aed720965bc6138a63dd10230246abc4736cb64d50e0608cd549d6a2bd8b4d773e3e8efcc96168eb261ab5168b367986297cf140a8713636aa284dba40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310094f9a1d9d1056d57753837470bf7b5a098c84e98288ad9dbc90321e220171c1d78fa6097db3d889ce89c607078bf62f302302d9de26c023fe534b2bce828a303d1fdab4fa632f2c7ec196459e2a466ba946bc35427fee42b8520b2f686f01e1a8a680302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100afe535cab435548170a1dbdb0d8b90a37ab51f1c70e3f30190015cca86b06e73cf6785d508f8b7bcb77ce358cfb9c5a5023018d12d005a0ab2fc1e2c8c52ebe9a1cb74396e7564551f0cd4090e4b25910bea9970bb695a701b0fa67601cddab515430302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230065a74a02219fb76e9781d6dde06415df5a38515a41906b6a4cd02ef00334dad46848999dd652bb00effd4482d5cc5f9023100f0d64adad96fb0d80d42383efbc36272bb77fe3c73b05929d38be6a63ee93efc9a6e58d3cddd0b7fcf452803b232b7b00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302c017e600b890d8dc060dcf18db378e44b79b3e97e3fa6374d87df16a826f9121a6bb8f1f8a663d8b85a7591749c52be023100ca96f135334a37e1258f45fea54c58a5f36ad9f77e8f06cc3eb29af43c9cd3a1a571154ae7318d2769f27399a97096f40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f8d3cb0ef6806257448d1145719808a170c1dd105777161a16cb03708a6705ef6b21c8a74c739e142bdd5d5795211e6c023100db524ed3f27578cfd40ea989e42811ada4ccce7cec06d64321e60b6f507061ed8a3350c0e248ea2a280c4af2356adb880302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f6bfa479966c14b65ef77a80d75f392243599df1ac54001fff13f05f6627b97b05dd998ca11e19fabd4eafc97819c5b40231009e690d6333df251bfdc411852e03389a46b6632627c47b1c495cf79255ef41fc20ab7d80c18876e085b0e21b2b0a13d10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306a610fdcb7deeea5f5e124822016efcf9cef8a6677bdc6eeaafa0763102efe4dd33744e630401ee260a12877a50e8b1602310098351c057a350c8ea78d32e56ada58d2b615edbfd9c331e426a50d12deb066a8b6f9f54225659216003c344639d7c7740302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ffd5fca71d1ade27893cb97834887662a36dd2add60fbe3ae4f3f91ca9ca6b0f9bccc30735a4da5466bbaaf924b2b859023100a154deb4c6f9c9210b3390571d68d46fed9361ca4c89375b2dd623c2dbf8c72246c3bc70299363126150f5408e419f630302047c435bb500683066023100ff39c8d7e05c740347bbbcfbed17eb59ac833e406316d48e84e03ff7a7ea58ddae9edb265ba664e8daa4429d7271113b023100ce57339e0cd5a48c0e8b575dc3446e892a1ac4a08a8c4b4781e8d2cae37cee9768290a4f9e606dec5d69a9a14811c7220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a113065700ecebf0069bc3349d418058760bf25723eaa0bfe070a639cfe9dfc2729676ab524544efd330782cb398e702023100a538dae3f9aaae636a6645fb8604c9cf4c5b5811ad427e63f30e906c6da38dac7741aeca927b9cefefaf9465c0bd1e240302047c435bb500673065023050c27f3866d531dc3654a4ce028c951bd4f9bac8b1ebaf61e3de38e2edc82cec56d3f5b269c45cdb683efaa24e376635023100b840e9fee58cabeb82d1d188736d7bbb10aaf37a26fd4266bdfeec04d03dfd0d26542f139c7308073fd851db9262f0330302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008db5d17981b945de7f1c01155aae1c3be75fa762586ca876cea3212a28e5c9e867399561b8536650d684099bbbee4cdf0230070ccdeaafc1a1b0bd31f459a6dac8fd6dd6d92b30decbe3650243f75f5976c782a4f95cf38d611a4730451063a922980302047c435bb50067306502305c2dc91dfde95860d71f7821a1b491c7e9d7b053cafa8020946b467918ae79eb568f739fff9c3d0be7a8b6dd5608b1c7023100f80df3e0bcb7cdad19281131317a3e261396da82ba9869a9f24bc44c2e0566c47cf385bda3803b4a9d9307c5b70271800302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306a389adeda29b37c9056eea91bbb7450876904c4ba06161f1fa27e436041db9a66a5939ad574d6d96998c1495ed8ec7e02303c08a498fffe7e8a48a3728e4832b01e958f61b0c48105e7c81b457b8f32412fd3368ccfe1de0313760dcea22a6a9be20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e473beeafa38f97427dc740d8c84220c0259546b9d291e2df4cce201746475dfb4f08326a03afa85e1a087c55b97e7c3023057dca8d7b736cf56876c7a1bf9de7f4d48eee0c0c5c6285a773398b9a3a71a91df931b38c098e77b5045f3ef365287ad0302047c435bb50067306502305f2c7667a01ae0b19f18d1e3a5f875a9992541f367fa458ea1913651b793bbeedbf8c147ccd34c745c1b4dd9977c0e8b023100a35cb7b6d17a9a58d978f0db638cb970baed8ca4433f25485a5178ecfc13599aa89c56dcaa0a571143031538467f6a2d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300685a2f6db37690faad42dd89f8dce16961f3dd3d324ed0947380b7d9c218ad3b91b0501d30e9709ee17546f680601a80230237d431b6e3092153e7ab5cfa1490107c88688c84141f0910d7a509e785ffc8856abd575bce4a44526160676169794920302047c435bb50066306402300dd6ab6fd87da5534b4adacb9e920370df47ac0a7f3759b74b387d6c9f5da1bab7d1fff27e81163d3f12bcf628e2d311023058705e03603ca9080454440377f7bd53db380e4d5261dff04954161265ebbc102f12a1c6c0710173a1941aeb4091d3560302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a34b2ce3e10e4cebd3e4e45c432685e3bfb11d9f4f5e84fe0741511f9502558eefdef76a315d3d2bf8ae503dbc87c1df023015560b9a90515d639e142a2e3e07640e1d3ddc9676906dd02b6a32b806ef05513a767afb4fe43785e09eaf6abbb6f52a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307e364e517d1de391655c671a230fdd3deaa146f52bc177b596bef84f8282bad972ffd56f88b8e5b5ac5bbe9be5392ce702310096c5eb1f928afa47747f46f53897ad6fc75d747dc1e4d998f67efeff4fb364205174c7bcc509015080746b89f95358690302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b63f99d98cc844e1996150c7e1d13a838420bb71e1a881821d521df424f0b5f179ba6d7c82cd3678655b941166c6080a023100f5fccd1d2c248ac2137ecf1b30885d9bcead58dd1193f4e94e11261dd200b10197cf92ff3930887f27122a30ac1e5e220302047c435bb500663064023075f1398054319bf247df21a8d2258e4322fb4505c36fd701b187b3b155ccbcc69134ff418629b5e1d36c880e25ece04802307dbbb734e7a3970eb8cecbe106d84bdb1c298838b19af4d21c8648e390ce2ba0d3f89037d952d2b38d9ed68c3fac549c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230454189671d218bd25b64a4f05d2bae3896a8e898891203d4e5df33edd52e9816fae240c87da5e7b3b486e58bd25c7aca02303d82303a9569d55789402aaf5494481274f30efb8244469d31b2c6b8d9e61472394da834d44b88f967d8aca8224c344f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304900bd13b35e21ffdf1a122837cf8d75f1cf0f631689fea587b2c2f9be3419bcb4beb29500b892623895bef7d1f772cc023100d0580d8ead3698b59320858e48255f95d8e4c77e7f4f567930441462b0d4df0f11ce62634cdaa2dea4fa33ec97d96f0d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023044256d2b4a7381608804c7534d537c4be5b28e10a70bd54cdef52d1be3f743f2905c49646b10054865a604bfa141e579023100e4766d261dd3620ee746fbbaddffb66662ace92f6c4ce1ac1b6e27008b1fbd554d784e6015f2567d417d429d7ff79fe20302047c435bb500673065023100d470840d729754d3f51d1f6fe1ee10119e1fab0c85903f56090c38d4eba74eef2bdbd5c9f5ff0c16697130cfc383c18402300490807eb8ccb0210cb9f99de2cd6bf7aad78fe464f9d937a7127755e0697f7c2aa122310fc0f6e51af3c22f6338dbc40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100931a7a2901c35382bebd7e83c333ec9755d70cbfc1581868bebcc532388735f5ae4a4fca26f40f261849c0dc8cfb53320230178bcf5526dc17a5ff989027ce8dbd9960f8187b84eccde45a167303878c00da49560318b9500189fafb9bca0589ee290302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230065d8e79b7e9bc97a6349e4be08e12c61efad0f9fd15f0cfb4a6d583cae917e351bed919696b155c8ad2af5bc37cd60d02304daf9f2f71f76026d33244834a6736455193aa40c2c685039abf629a695978889aa7753bf41c3e1362d3190d8ee02c1b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b4305405ac013c30cda6992646c8f1d62faaa10b9f695ded232610d6ebaeaf1aef97f275dfadbca221476b4ec09c0c950230113d44c1a35be4d64bd50c403b31a7f35855a485afff6e4c6841d92e17e1990c9d9fb5dc9a15886b71143f49247bd2ec0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023077b6504feee0fd7baf03510fe42bd0bb25f3eddc2e49079dc399036b19afd955cf7caff2ed2ddc31bbdf710995acbbfd023067c3c97ca1cbee76a6133f4d8994ab8581480c0ecc1a55448849ae6104df3996e531bc5f2577322960d6d704125b726b0302047c435bb500683066023100bad1b77baec7cb8a1ef01a7e6b4aeb1c92dd4aa5ae3d60e85d279e36e47a48de7222b2e144c65a7a244633c37efa2cb0023100c6b4c9d1ead0d6827bf39966d900ed2861ff4dec737530f3859337aeffd9c44d8091f33e653acb01f0936af952db99c20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305f0b9ae597c29e2a2213ed62f9c23590a9e79fbb5002a5f3580ae5a69190a44b7983171f90239d8a5f11b98ef87a45bc023100f9d42e7fad88443904e6e654035def5282538b0130f71221bf4ad1a33f694df35973ec873f507bbaa5a0192e9c12c49d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023048bfa889698757d1526b813a91817f8cc1d59bcf203a335b2692fc1f2fa86c50c8196105b9063858a12d83efeb24179b023100ba3e73e9dfb21d126f3d17d90cd1a1bcaacba6ab3dca5713748a2d98b1aa444c0dce2fb753bf462ded7310f6eaa3b0d60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023036058965509e0315a3d1cf53021ffa6bcd22d3399fdd8d06571af2cb86b52dbb8d3220b087eacfde3cc055b764c4bfa5023015cb088e7fa44df2bbdac8a8cab5d2e2510fa90c1552471548135fc0f5138d4f91e3f0c3b7f79a3896a5ae0e2bef04320302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302b9aff9415dc9a99edbf3dfe30d7178c787eba57b4bff07a9322f3b3f6b3be6c3c06aa7b538e60801ce7b8f671614410023100a1dd81f36b4332b9eb67b90fc8d4f8b6dc7c7c8c931ef4a9f60cedf2781fd48244eef41ef8f6fda9873e0b6a0afa9f470302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bd47566e74bcabf3471da5c31999ba8726b8a76135f8e5131113fce4772f6f4f651aad0b35b9b6300dfd72941b68ad1a023026143bb3a03771190348f6d3c5f5f8d36bf42da2d2b84486ab657b0c36ba18c06eab1026399b08a59c324b00701a4e260302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b646da60c776fac06a477c710b2ddbdb2659e92a67f996045247835d2514fe8a14a59a60b84613072aeb3ebec25f3953023100d2f2ad914c88684f31ea9534fe58250ca1cd750a81de913604051d4f353d27d58540bde4f5b676acecc6623cf8bbc5c70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023033c451352e0c59e647230c65e99aa675a9c5ad87aab469381fcecd8a77a3b7a4cda8a2c5a68ae4787b4824637314454d02305291cd29c397e9d0632dd2e2e9f6f7e443a13c75d6a0be40056f0fe86b715d80c6350dfd077faabd0b4ef99d217705da0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310086ddad23af0e47ec33bb553105c8497b05c9f09ee3e9033f2fc4958e32fc64cf51495ed7e65b991a4910b187b4d6ea2c023100aaeacc32c9e5b3e42f9dcbfcb5c58dba555e99ca315ea39d5b8b250cfcb4f33d0efeca4cac323b6e273f08e1637872c30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aed30dd2542cf90e33d1066f87ea1cb35f7359eaaccba3fcd2dab77f92a190105caa767d93fd475d7656b6cb2043b3df023011bc9774839724fe0d0db336a0ea02d9ae0d2f06f1ca6326563b367f3538a0e72318ca7ea680b29691c5e3bf17a068790302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bbd9434e56189c81093a963394c18db6befd2be4044ea60c7fcbed1c7ad46658da72748e7a0c2ba9e95d52ba867dbba0023100835bda64edfb1d6eab0a736a440265198f04bdfc0be7a8a689df3a8b1d012839e68def3b5388d741cae906167ac00e050302047c435bb500683066023100d083ad51f4e576121ecc54c6085ab1bbdd5cecadb8b097bc3e3d647a0a0f74d6ff10da89671537cf62d11c74da91a6b2023100df4ef0954371070177e59a2ae43e02cbefa4c072cf913ef1483c4e6952e33b5352dc2fa9413a2f3ab3f34b8e71dddd340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cb049150b8ff1349b278752ae4b15827861493dbbaaf62cd6e76bd130c172604ab20c7fd44f4114704fe63e60fa4643002305dc03f5fec250174fe07464b02d48dd52631167745f26096cc022c7faa1db9ecec44f2a9236bfac5670d8bacbb2804e00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a4d0478ce4d9fcbe1ec080dc333395fb5effc2be68120dd226b8c6433bf094fe4d4fcbb3bec7729c6cb74e5c8f47b843023011bec5937d6f2a63f1b8e779d3ee87013b89f44220566de857c59ba7e7a27b1062926a94e334245bbc7748a937ae1b1e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300ce269a487da98b207932465d16441c817d91010d4649c9bf8d9520292325cd1fe44cbf2ce28e84b07aefe78505bab39023039d87c01b560d52bb7584ccb17166af3c37cf7f801c3a237f2f821488eb3df2ce0afe8ffbfe0533b190bc287ec06d2f10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230744f31214ee0e5cfed7d334cf226c56e1bf2f109d3bf468d42b5b775659895f4cb888b18c7d15163b0f2b2af2c165441023100a002114f8712d2fc0d91545dee1cff43e9ffdd55696a53c500fda75bf0512be98fcdb38c90a68d54c7b2f6b584eb882e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b290ed84918361e68c6c0210b8e4b8eca4393cec900d6f74f1614b32bc3cdf60d59fb348a76be1017a8b18ce9e81cad4023100a404a7f3b78e8db8745fe5c110ceebc43e289d38fbd4be8cbbb3911c354e016e13560aecc7e8c9cb6db3c736a4a4b6410302047c435bb50066306402307d896ca42bc634c69ad98a703e94e4d050c2c3177f5318427323092220bd37b42a43a4df37b75dfdc1934e5362f4238f023009603bad2cf73167ee4a260eb9f045ae367896365fe4531cb702053e7eab95ba1b6582cfbcb62f6c79f8335895fd164a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310086be7a874f9b0ccb70b80ece8fd5e894e099dfef5206cb816067bca2b9c0d5cd2ee9a7f232c03ab88b336b47476b5409023100a2ab7583cd557b56600d817f1267908f4b4e5ce1b78af56f9286258f5c07870856e58136268b35ba61212d023f1821d80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023074f0e3c2d8e318ad9e82d57ecba0477c35d0d4bb2dc0320ed36f01bd95592bb99d9320a859024ef89fee39dce9ba313c02310092a4f5e8a7ff073175c188b64692630df1f6028d5f1ef96d9a1b18bc5e7e1fda317edd6ffd844cce726d842d61e1c64c0302047c435bb5006730650230578803ca7f27f9e7af80574045bd216eeca46a6b4bc7a67a49b38d9ebaf2a1f9a2726a8e707dc258196ba63f594be69c023100935db10388a778dbe9adc2747895823a3de64d2bc622c5b21c855f4a267cdf8f6b2d4d6a5c6a4c8eec569ed16dbb1be70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300500da18e80d72ac87511519011ecd8e7bffca827cf00f8ba27ed9d712841c531f512e51fa2d48a5de89aa1dd45a0d20023066934f0ad4d1ed57be417206314161a8b61fdc86a88bb7ab5fa15091d6cdf266a43f77cfbeb3db841d4d966614a8d9390302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306c382ef1aef4a8f4ad8b1aeb6b641c58f8e69ea2a4994c9d882c85f7bb2190a00c85f038bee677e2e751a329e06a8a30023100e538b440c1a0ec3922ac59cdc3cdaf2108674802175bf91c6eef061d676e6b5a959a24b7c14528182a21b6709ea54dc50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100eea4770fc08c83fb2763ce84bf06487c73282a304300a4ba8e9e0a419fbc7fc996b8a68adb4481135f123736815441d9023039ecbeb3eded5073d8a600fa65675647cb21625d4a04da8b7d22163e2454c657fb5fbb520b4f1d19ada53cd29b6d40290302047c435bb5006730650230312a40b753ad00b666bd285e08b8abd90d250e5dbe296007206807f6af591bd0c9fe457bc49924e019f1ffc743c6da9b023100a21ba6a887176d5d094839ef042d4f078db258a2e8f7af7cf28244686da5c35a5cdee30ca3aba99331fb2339dbf5da450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023022009350de64e11aee7f347cf7ce058aaa2f90b90a860f7d409bc91dd4b9d7a8c3d92da764bded68549f7131bff5689b02305150d82e779d89eac39431981afd2f34cb511832baea1b911ab617913e6ab79dbad11d058f414d407ac22c86d06d372f0302047c435bb50067306502303dad0578e5317f8b80b952b10218703d1bfdc5b89edd78d019997ccfee760eae02a302a132a526581fef333abe3a6199023100eb16b3816bc79023a0a8c350e6d33ca95a0aa13eb5297c96a266ada725cefcb72ab927a3459715d1d30256ad45fb62480302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306ac9ec0bb8b10da7f5ceaadb2eb015231f3ba64bf35d5ee8b3009a5163ac2e39046eaa2eb99b7ec3f29d6b2a643ac4d7023024d7f196720c580179f615f3b35d022df518a9cb66fe6f484ba880344dc97d52f7d8084d72cc8fa0ca5a2250ca1fb2a20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307511eb8d3d092d04d58117dc68048120afa66912b8e4e0ecd063996298a6aa037bd0056f48c9c4a931364c4a7cb4f95d023100d6ea462756818562ab054cd1779a662f4131cbae6561dd9a3cecdd165e471abb5575ac7237a281f27399f2cf50cc98cc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b277e3ea7c0e8bbd103590a9467d90590afb3c388e5b018d0c7dc1c6b368332c437115b9fae3042a30e4437a574494e1023100c6e6f401bd83292d2ac19d5d939bb2ce97842c76d6782e6fd0b378beb3b544acfae511971a61dbc60ccf67aad10ff5ad0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023024568d5b68998673658178fa8e1b1c3d30cfb0c860c09b0e630e224c19ec84ada30c3b474d051095848d0c05fc267237023050bea003d7c45e65bbfddd0e1c87e2c70b91d0018f7fd860eafae95e02e29527e5d163d4718a7c1b1fd0f9dfffc948630302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230181bcb69aad436732439a2dd74fa4b44779bf6e2694c10ce1fda47e2a329d2599b6671674ed8019f7824e1f3534a42ae023100dfc1f880690ab1d61210b9655c291bd757c9d69b15ddc627570c1f9dd85b5ac6fd03d9b37258b1627a3e69ec7a8ae5080302047c435bb500673065023100d92be47ccd539b8dc5fa2d4a1841c19048c002c2172e6bf2f29ffde99110d316feec9109c6b66a61b2d7e253e957195b0230318e2c88301a29c8f67f0dfee3789785b92771d8daedefdaf4e7b06b57c4912332acfbbf4720a100930efacf537ac5f90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304a77eef53e9c0ffe1df7693da9581ca3305a35973a375370f82181f7c880cd2a0e9cec3135c554f650c6781ee45a70ba0231009b656b488b69429e8a26ace9c42196a6ac90eb03132a90da964fee30935a4c5f65395feb7d0bf4eae3cbff2d751b0fd10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023046ac3f0eb2666b9ebc0617419f4af999f6f38bc8a9ade532b66175f453f82dbad6078dfcd7dc51b66e0fb8864625f5630230795b8301eced05852d2ff23d25d1476c79d4dd0c8de04d95544bdf874c0daf4f55c900902f5d2fbdafe5f44a51db381c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301a6e43dff64bdde5b392489fc4991939726728c49e7376449c8d5981a1417f2b40b61a3b0ae988d409bf144b5ae9ccc9023071fbe86823a78343ae16c863686b2eed00ffeb79d7a9f7959360d949a63eb07c020de1773d81b4536ac67a417da897470302047c435bb500683066023100a0382d8d2cf82acc62f670f6dca474950a5fd2bc3db30d7c4598960bf9317f11a14fe9c6880283521a9182dcbea23375023100b49212050720b17c32a5e4c9a06fa6bc1b3b37832afc1f87c25f3feb3187e9aedb1a16094854410b1731d711c627f8dd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100939a95162fca188752374282d3519ed64443bb6e2261d9b6dfd06a89b76fe2db0e37b1a82bd99aedb6a6cb3313829339023100e87124c39007714fbc7a7dde3d4fb6f75096d041180b23760f2c09c3b6a042281133b1f84f761cb365adf4bb215e569c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009ca680a85fe0b27d691d0b9c4d79424d3f7a3f2f3abb32b3270ca6bf5bc69c8eca00a939b0f485aaaea6f749a6bffd5a023100bb329cc8a3df7d9bc835e1546038d97bb7b68662092b51413364e5844284821a57739458c51898b8893ab596923886810302047c435bb500683066023100a15ba94f4e6ee80f86d7ae943842cbb2e24ae3cb361e8434cbefd50a50464fab791fa58cd7b4ee13526de859c2694f25023100d58e8922b9147c46f94d8bc1baffef9580d7782b2cff942d4de70a6f6beb5f10c112f1225d538d360d7416e8ac2954400302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aac7bca7bf29675ef2cd99faa1608c393851bf8eba8102530a1230884a0b82e5c53f499de3f3df5676db656eb97f848d02307372e08d55b699af09a374fd72770763fcc18f18d52b8f7f731363f776acfcd58bb63921f02b5eb71f661b56d1fc57580302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bad97d017551554f73294c2c49085fa0491e77743016bab350f6c080b3c8be2e54bb50c1d41815c2dfbabc00943749500231009687ec20b3a0089156a8baf2cedbd3b6cde67071ca05084e00eff0837a45ae6023fe244b923c89c1b126f54775724ae30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aac7bca7bf29675ef2cd99faa1608c393851bf8eba8102530a1230884a0b82e5c53f499de3f3df5676db656eb97f848d02307372e08d55b699af09a374fd72770763fcc18f18d52b8f7f731363f776acfcd58bb63921f02b5eb71f661b56d1fc57580302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009856956bf73f9eb98312ba509dd9bc471d62aab7b979ad9c69af186dfa91c59e7722ac55a512db2435ce966f1a2c5a7c023100abd4606d5b294f6de0abb8a396fcf79e0db1d1e5223f0f47d6cf08721b2ad70245172156e32b71f23b15687a8fa2eb4e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023040ec3838a25bb6d5a0e1d4da39bbd10a04b63ad206aa5d674c7bcdd42c8dd20dcf2fd4c776f6ddbaf7f285bde75f2193023100c20edf93b90eec637347aba29a7b4d39875324b03b3c568aa410b2d4f2e6494338b13b05bc3aa3dd471d6b9e8b608e750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023055ac3a388b5efbe425d2085de3b471f6b8d9330188d7ae02b392eb8787cadace5040f58f57d0e80e113ef139e2c7cdbd023100ae64c965cc26a34859bdf0a503327172db05e5a33816d0c2bebdcf887c47b2fef736de481ce46da4f3d831201a6149f70302047c435bb500673065023056b99ff0b7c2afdab37ecfa45c1415875b7e1315f1ffc7df33385beb6c2c727dc2148ff30fcae8d53271fc6da8d6188b023100c10caf68b128a9c8043dd2d7a59b36618550e0c8bedb65be2f64aea293a652d2e383accba25279867f4b8c1b4d984f7e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302ed84c68b3c1d3f6078bb46feb79403189ade828398ee7cd819c23f04ff41dc413ae9035ab79f11172873897c8705b68023100c8e27abd432493b213c3cbcdb6a22c721fe1e7d78dfdfed38a1db165b72222bcc48186d58b75ea161efdd20a2f972c9a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023055639d1ee4ae6aad87a23b1434b0bfe66417ce7ffd72f639175f7644c95f3b39f780a5d421c29c75ca05f91833cb524a023045a99d293b6b063f9b646303370748fa6ab57cc1b55522aaf3341b8c3b4144a2334bf9cbcf9fe48eac1822104b64e2dd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230029b6be4e4e49b91e614e6e37403569fb279ac83571b01b5798e3c0d5c73bcfc3f4bc887e8965df2c76cb252a6b5d6ba0230784ce71c90e5619768728d968f7c45a7d3bbf49d139dae5e9db82d77119f3c84993628dd5037f1829dc70246e6899de30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230029b6be4e4e49b91e614e6e37403569fb279ac83571b01b5798e3c0d5c73bcfc3f4bc887e8965df2c76cb252a6b5d6ba0230784ce71c90e5619768728d968f7c45a7d3bbf49d139dae5e9db82d77119f3c84993628dd5037f1829dc70246e6899de30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023019abc5215e04cf4b51bf7f4b8f54cbed0efe7cb7e919df183904c70f308aec6ec3fa787b33a938a632d03ad7edbdf979023048fd5eb3a54308ba12eba419c388041ebd21517a66c69a9d638420e3b266d2ef2477ecaf32bef041103fb92ad34adbb40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d8d466e2a925789d09f9316cc9557bb1fe3225fc8f8c5b97cbfcb1fe8bda6680050be21c8cf09b1faf69715d14c8aa36023061d13f34de7ab7de2ccebfb82ea2012984736bbe944b5e14810412e809a07cd4d1ddd9648bff3888e7f5b0ff4e1222950302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300135faad4c5ed0813bf60cde5eb3124367585beced021a5e9874627ba3c8053b42f3a4cdb92d32619e2dbde28bde9501023100cb749ec5424025d717f1dac93aa79c73aa7a8350e46c661e385f1804412e1fdd12458fa31a736a1895e8826b7ee8a9180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c5b260ba75bb187ab36686962f67138b06e949fadd98f4261a4fc2a021b7faf9bb62efdd9d3ba315d588f6d73100bac4023038c491a6e7519ffc6ba9d02a7ef13a2eac241466ca44462f33ef57df11e51b3519a2592a6191c8ae4444aef5bdc082240302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306855d7e08cf233d60229ce4dc70f1cc047d3c1a17944bc38331b70560cd916d2aa272802115e0a1809cf90aba2dc0abd023100f422f27f937c21cd31ea514ebef49d32b99b0e5ca56f8a9e286bd37cf6576b5e137b358855a5e2bd6538ea77bedf19650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301386e55ca4d4b52c3fc787408572a562ae21facef19aecb9ff52cc08c6f9bdb73d42d11732393f7606dfcc5c6ba096f6023066f8afc7919c418a34be7efe1058454215c0ed789c4bf287289e50f3edb14e1b83081ef5fdfaeba4b345789341bf461a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306249922c79355ee2243ec832d4bcd2ad3c3ecf6766561841ee61c2f54eeb9f9f108d4bfc0faaf2d0422697f22d0819eb02304a62f592e2718a98501a0ea0d7b66ac138077b99ab8d698ff0913d25e18dd4a231bfc59562319f108aa2f01fdae344150302047c435bb500673065023100bba504f6ea299f70b2d37e97f7690cf5f28c0882153c941db361db29335fb2a622a3b6e42dacd83f2a462119972f693302302043ed0c42ddf884fe526424c29afb3ea870aa7c676cfd02a1ac469f83a2083547a53c36a858fffc6255bcf339d7bbd00302047c435bb500683066023100aef8eaa5abb34ef98f883f7d67fc85cff1acace094b20f6d5a3fd202434f61cbc9a2302f54b743e31c9d5f7bbd2ec1be023100ccd4cdb44fe580c077a6733d12667f28490a95a6f054ee98bdf86e129bf6becf7ba70921414846e52866acf80390a5150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a84015001dc6ea500638c65cbc04520348dd58c2a032e1d1e78534247b28c796f1c57b0b4014812f3d744aa23254fd1502303a31dcb440915146e515b16e3d5f53828578369eed2e8d7d87096881ac610e26dd92c7a70a310548c95f36c10603b4ef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a8adf76c3f3b2275229932249ca8d8f6f3b3be30c9ede2d80a3de4c02e1d0d12547cc35abf154bc5949a6faefc37d8600230707e41e3507b73d296b3d5e15b7ddd55c52317783333e4752ffd6372e3507b0f6d3f31c47d05deed59b3c9a34c7a35770302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306f7e8f5614d9935a5c7d3ea8ba684b836299ef825a97b2116a939ba0f2671935c047390b0d1b22a28e37a89f9599923702301afd0532d18b959d12d4f290c4a8c7c9f36fb25d77a16d07f3449a0333b92e835c4033af80e48f841e71e6418726fd0c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023063752084e875f52e6d59d8af8dc57270d9a8e09de01da546d8210f2809693c4191010ffd002f7c69925aeeaa8c063149023100978bfbd4efc3c97e8d0ded7ca4923c2246ed2a8f27b9c041e539c5538e961a4401f772797c160c144cbaafd978013dc60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310085720b39296c80f878e55f804560083127147c1a47580b6970fa5c63e44994435819b501432346bf89e3f7bfbf22a6ef023100a86e41263f9a6ad4ced27cd529e27518dfc154e1dd5519adfeab63b3d9312cbbc37ad9afce6f24dcfbfb50fa7429ef9d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ed5507d2e3db3530378599a0e39f273ab6149650c15d1d57ccdffd756aff2c24e8be9d9462c8a5423c1687dff0a4946b023004aae43ca0a4314032c30c527071bad9679cfbd5b0dd27215f0a13cab76ea367e2596d46203c951efe18f8e1688d512e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230441deba3ac4775def8d9bdc18dc768e7626622ec4920593179996f753bf48fd813dc4a209b26ea01c4c8067f776cda2e023100da2e28dd7277107a45ff60307c04c581be13d57657220fa76e8f6e6fd6932eea3c47c235528b67ae044022213f86835c0302047c435bb500673065023100e988490f046f2d8e06fcf4509e18a874406803a8dac8dd5122048ad2442d65f1120173b7b53e8aeddfff9064ec25bd0c023035dfd6b57b23b186b41213268feccf2dda9849bcafa425fdb4cb96bcd1a917b8fd13f6fa79aa066528cd154865e441390302047c435bb500673065023100e4f272884acc64b5a1fa5f26a601633ec122b3097a7a5c6e05ea9a17229d010aa325360b041cee5307da6c0297d3453d02305d3edc815a92653ac653076a4e4bd733e0fa1073abdf7821a10e2424377d8c57a90d34911f191f16daf29f42c67c9ba70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f27261c67f81d26605312367cacbc521ffa0e149a62298e83d1a8dde1826709ab619c2ff5bdad5f7980a599cd194b6d7023100ea2416f24daf6141d07a5bdd804ca2554da637be172cdd289d4fda64fc703ab74b487526cb090b631a90c3afde47ac2c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ff2ea5a2e55375d4762807cbd13e4670166233c3ea68e62f2929c1386d181005127119cc90313066e9f22b2f9bcfedcb0230711b2f6c33ca1fea6b010a6cd88781524b72fab93604af3244f39af87e74752357c0619408308691bf6e174c60eaa39e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307d489483d32361fa4a18f9a4345f4f7eb7e72ffc642428957a8b69d9e89f4945df14253f8d02642a14a6598ade68878d023100d49a2a9271289cacbf3d86f4cec9989e72692800cae661e867cedf9ba1498a1f60274441ba8b9e02c3593137ef31efa70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302ecde32082929eb58af03103aae0f2f884bab3f5249b1239ed1d76344a399f82f22c96f6bdf47b5fa18e7ea5a7c58dfb023100809b323106d5b72da1977bd7a4f1abd5545f9cc5acfc55f8b8b887c224f792fa8892607af4a73defca192ef4034ea7f50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aa0ed7061d711170b792ceefac43652614bcc263d271677558bf1b0f8e5ca2c958627e0e50574b0ebe153c9bddcf8aac023030938cf94490c446dc37cc8647451df1ccae5c20452508fbb0220cf95850969c879597dbcc92519293d959b62dafbe4e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023025da402c231b73ea61472fa7689aa0f0ca3e416a71d70defeaadf3c86ec883095e56402d2d57900ed09d7cf3ae3eb40b02301c2dcdc3668ed8164e87d60bf40bfa9d487877b03e487038db5be266d9388d43ff05c534a529b6ea5da36c3cab67ead10302047c435bb500683066023100d7eb9d6ea74dc4b60af470baf3ea31883bc35659cccae7b6f4d3e55b9e44b45ee71a66d5edb172eb3db1e2d77ba1de5c02310083f17dd4132424f3bc5509dad1e083de836e466c7023db9e377163e155b00bd1ed12a5bdba2c2545100d9409d7a8b6080302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100faf2866211514873da4a3d76582b3ae974f9561eb6d482b2ec043bd2004dbefa95055645764ae1a1d7e95ba536cdd52602302cc5dd31842d571d3c0853814e5e7f9783a56300cfb902f5f90828b7602bb5c4f610fb83774ad787f73ca92a7e38633d0302047c435bb50067306502304260731af26dbc84de454f78733ddf8bd0f5a56861bb97ed6018f1f95d528e2cd938e44a56fad7c2c3b14030e33648c8023100e0e5282cc509df94d3d8df3271c5044609713b90c1d27ba8f6f8cd4b58bea5d408ae8135823f3c4495892c80114cf5d80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304faa785f517426d46ded9b8917ccb0911fbc7c840a9377f346909564d8df076fe61c8cf59f1e2c9a1e5a250f60710c32023100b21e3a1d8e2771892fc2bcc1df3ce73d7f9c4fb68f10c067454b345e90e9ad73f859893056834a366ea03651756d45ca0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c1915e75b2d3631bdf139bb706cbf02e329a90dfbcef6adecee1ace7b663ee853cfbd17c27842fbadfa4f2e0fecc288e023014db0616367c592488ec2fe3dd71d2c3a1b26827b7ad701d4724fbd863d4b1c8b1108bb5dcf05ab642ddc665405e7a5b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c61fcbd182806375d31a0e827817f4ff9654504737979e854ab8b338e99aaaf29e0389573825ab7d7545c3ca74aa7ace0230430a26ac8ecf5364736018faa8feeae2f645cbc09330ed25f97cf2220c38e4471fe0d509feb49dbb0b57f8f8e26d6fb90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306a394b045b92d361a5fdfc623a7001e20ea19d2ac6668098ae58c2c9b388fabf3524a9c24e5bca0eae946bdab22808b202301358626ba4610ea2bb2ae6e06926fb9376821c91061ef553d3ddd8ac8df80d049442bdaa94ce45c5859e1973b4d285de0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023050d6d90edd55d9f10e0c238c695a6e27777d80cd1c5ac651b08cdee5ecf6498426fd024a63e74a1a924d1ab0bd1bd7350230186149a4024d7c806096eac8fa6fc522d59b94b9ca7038b52270c3e19022869451e23e6a67f7963e01130cb8b68cac410302047c435bb500673065023100c0644e2c8a8e959a1952805171c77f29296b6d06f5de221636b1ba5d98b021fada7ac1d5fd9477b31cc07e8f29c21932023070adfb5d56339d3bf0b70ccb8e8c47d7902bbaca0c9b768c56435c0fb5f91d013238a5b4d6d77e43334a8867a9ea91260302047c435bb500663064023009063e8b283f8df1db2f189524fd72060b137224c2b77f779db2c825532b7d16195c38832f7ec622e1a32e3c9312ec6802304d07385f5a7103277fc977e6c30b8ccb9c13c5f7caa7a0274f255d0fe0010658c15ade6620034330d6fcb50b539efbbd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fbd3cf79877dfb374e4cf32e163c8af63fcab8bd0fa6643cba53105915bb41c0cb6099004a4184becc9a165049217931023033e20498e9bc6c1d9bcd54e57a1d6d1b0342698169280e37f9d01da83bb0b75dd7cee9422b82386726ddf453c11dd6020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a47b20a4292d9981f6ce126c20a08123bc019dc86b581d7df12221418a5ceea6ffc1fc8984aa9022261a0e3a07a9ac7902304e8c32215aed49d49febdd1861f23650c682301ca6ac9fc4168fd626ea6c67b409d6367ba4b7908198b09d7cdd469a0f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303063bb20d4fe674f3493a3994ba9696f86439f76179c9bed94029fc44797f90b1401e9ab393daa734ddef1cd6b039e54023100a7654a9fbfd014cc9da1ae3ab963598d8f0a1d6dd64fbe291b87b4edbc6c9487e2db39be66ac0ba8031b317d61e4071f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a2cd8de32b0e114e91266df464a62fc5c5a82dc41e307540ba59e8e636743882b7e5f3179ca9b308332f3f0ac7c075c5023100bbe02c521ca39298390b5a72a61f1a6271142a41bfcd54eab3db54a00d2c62c487673ae51e8b0a0bad16ee7316d601d30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a093b70ad5d8446f5e8ad1891d267759bc24c35880ce8f55c4885e7461e6787c4ca5a8e84d343f0219d775427c3620bd023100b90859ce4aa8745feca5e85ad577567b86e4036375f1abfcd083ebbb28422a1d6652812858f6e1dbfcf8986589280e9c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c13914c1e509e4f5ba394f0afa9c6eeb021691140b676a6d2e6f8b3b95d0e02b2509b05cb25bce66949e7674f18615f202305848aa568dce2cee5203c12e8b93d4eb4072d6310c597470f7052e4238341eb5c13011430228d135d9240ec8ba5467c70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008535e02668c4febec383d560842184316074ca9ed46643ac99ac091bc3a32821d13f0a4ea02537c876d71c701ea19ff902306bcec77cf71a747a0fa64690d45e0b2a148559a664ee6fe45d12bff7e24b908aec15df236e102a6b6e6758eff5dff3970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008e8f2c11cd7495a4525cf0e317c35e6f14df64c4cf8945da993a10625262397281280b51ff95b06a84e012b55f926ec302310091d196e1158a4531a0a5570dca9db4868df8d4983f0b2e2a6d9d16885dc1d50a483a23a1c89042179776b9accb22e8b30302047c435bb500673065023100e2bad37061b3aa013652543602b42c12bf2ac21e52b803d10c638ea2d37b122535831c9eeb140239a4a960192b50641b023009c3d59f2a54d4216d1c5ef08f7081fc3494ba472601ebe91209ac28af379a78b83b0a2c985bed66f177b07e71f2aebe0302047c435bb500683066023100a298eed67a101aa40f2a915962fbd800aed93771ec92ccf67cc50c2d6759aa45dc359a7e6d584f64777c1db64791c3620231008d30a706500b808fc627c3c85149a6ec1bb686b23269e0be00b4fdd81b74e1048784d7e87c6b44e90eade8b9d70960e90302047c435bb50067306502300db4851f517bc90ba855080950e771b23ebb0d28c69cfc920ace907a9198250353f720a1f1870a37c19934ad5474cdaf023100aa376d2626d9d1aa8d33b05e6a0c4604f31f5374c3363f8381c6ceac5cc00d23054c247a294111fd2b52a27d4f8983d80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d125a017da1339f073c6b8a0c6e237d26c90caaeeed8434a199993ea349cae4f730f3a867b734fac9135f34bf6f75cfb023100e5820ce7a1e2c9e30d0a1b8423e19ffcd8a2660f965e7cd9c7db143103a1eaab91f8645a49a1b5d419f48457eb8286e90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230543629d94b366b32e2bf67ae474e44b15687489e6ab4f525467196e86f54c954f2a470a1ea253b1b0fa65b8c6eca1fd9023008060cb7f319198d3374521bd6b6d5e28da0782a829fdc369a93bc5c8ade93c51afb59e54e05591b58ce05476b539be80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023000ef55885bf053e5baf108366bd71f8964bde4584538a0b611150e48ffb5f3d9f317519cd6f96e752d85bb990d480f24023100c7f9f66476dc18484223374bef3c5dda29e77bb93b9c941440f8ef9b8a68c63569b79d8043bbaf9fbb60e37240bb32d60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303ab07e0971a0cef349ddadb35993b9a2af849c494a2880a7d8b7bb0eaa86c385949babb01c0ff0bd9980e1fcf0eee0030230697cff8fcddc5033663eab39c38303518c20c7b77af5a557e041f67585ffc24465c4ce593ebe6e5156376bfbe00b1a120302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304ab0d9c952d7cf97ca47c513e3b6bef23b9e7ca1aae8af80438bafc75ca001127121741aabe453a8c7257a2ca1cd0e1d023100e21a0c2f7f14973df6d24bfba1c5aeaecfaa7e178d196b73946b202db6960319346a463fde3b7d553fe146c6ad878e890302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307a2554d8516c1866976b9cfa9ba8c771212bd78a72dc02951a7300457b118a5bb98910040d670d35f1a8b6e026d8754502310083a259a2085f858405f013016b3329016632e3926e8496e3392d94007773952e7b3f18e53df5184fdc7b7ea4f2efe6e00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a899d6406a7ffc5b61835bb24081485ff30141589755d5b7c5a51b079e1199b12664b64cf3650424692c38918ae43130023100c090e013312fcff79ce9813c96cd8e7c7ff63bf40ac6d8fc76d43010dace50a630f53f9834349c29a7bcc944460ff5820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230104fe1500ce92a1b3ca444a07336cd56a0e54af75c3a86a8f4c565e826e7ecc2d9625ef114ecc45236ad23d1f210b3e1023100c8af1621143da683174f65518aefa7d8632062c215aefe88b651fe171a299c8c0b7b6fd17a07ad69402ad678a8108bb10302047c435bb500683066023100abb4d5fa6f60baa6bb937d7ec6162bb0fe6800167b6c6079d403dd022ac1d78ae3fd774bba0da126208bd74771962397023100e3afd215bd4717564556052dcd39c5d1206b54db07a991be9cc9671dc9ff9e4e48c254b28fe45ecbe8cb7137986dd1a30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307a7e37983569e5f15a58c134ffe7f1fc4d24e979b8d79ec102a3e24f58d62fcda16daaae3c4d505de2324c10eb34e64902301c16cb26982d68f406632374906157cfbefd711cab61ca598ebef6ecd11e7eea7f2cf753870efa7930080b23875f5e5e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023079b360d28a5f1eeaf660b491d278f7f1fa64920b79b04e264073c915b8d8dda85dd85a2d1d6581597ef6587fd5e537640230282cc4941cc019aeb82ad441ced0353b4c17c04881432270b09ef4f7909e9214f8a4f35820979e41ab53e98f70d44c2a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e409fca3eba6358d0682448d078b3c405543dc4661716b91c9a27529350cb2c94f0e62d9d4ddaab75d3ace1c7ef6d46a023100bdce223f839bf3a2d37a524080b81379c9b4dbb6860369fa9d2572e202102499582e1d758845b3eaa9e4248df80332a60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310098fda928dd5ccbe565e0b887f3bc1eef609c4941e19005fe7e35046450cf5f6a14843a49698ac852f57127257b5672d802304397402414f7f78be6f486e84769dbacc84b939007ba7a38b56a1bf574e459cf75aead3683356da6300424e87629937c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cd3857f2f2778707ea0212420b338ec0bfe6b7e9e040b391b0ca651dd529f1170a735f5598d285c0aa96a5a55aa7d9e8023030069ed878aac4ebfa71f9aab4bc24ff95b7997aa02c7d07f74e781918de09342c353e6fded03bd58a01cc824db6e4c70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100985df0270f4d9206efe8278feb9a81ff739f5b0292366aa235b7e4a299b697c8f20b472a53ffada53b4aaf5363950abf023005ef0f063ecb2d1db8c0396cbcc1cfc349acfcef4e07c305ff3e38c58935ef66a8c2a676f96044db4bf4b2554a0491960302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008bc8028d53b3c8228470d1f97353f8acb607b3be3e4df6c932f5f8e611ea95107519a10b07175e633a09ea59eec903cb0231008b7d0ebdee954d1fd113b5f79a03c8eea6dc9be61ad9ff57cfdc6bbd3a544757a99a6eae636a834cfc2a8792c464d88b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008a2903cf070f94e0714c7daca7d88f9e6865f7d8c2d250f33ed4ee395ff58e238337a6e236c3d5271b9b574246abafcf02301223dbbee0490c774d75fc9cb517e0eb1e44f943dd64da2e61c11e7dc81bce3f5858fea480b943d173d2a1f6c2fc634a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305a9795f2fb7e5e861bd4b11c5675e48ca5a4c7a3dd772e234cbd5b8bd46eb049df6e216fde98afe5e071075ce68043f4023100f7cd69464eb58e3938cb1ba586abe4788e1df388a14ead25eb2a922e12c7f93d919679c6f51de14fae26024a7ed0894f0302047c435bb50067306502302c90146fa2eeba9562107651e0dc456a2e338e44098668c813e5e9154ec17903343c1793e924f5aa908c13271e41f091023100960bc855ec85f6f620bd3a55bcd845c65f8cfd89fb407ba1a2645d2dabb8b9ddc94b9d2222949e061a976b2277c37d2d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305876bd1ad20ecb3e088506cd1ffe641e6810502bdfbffeeb958ec31563ff2a163ea522a8a063edee2da7c86a39874c78023100f571ed07d2d6d44c1b5f53a6bccd3debe65637485408abf2876b05465360a6da8125e7b1a56e768735f7c1a12c25fe260302047c435bb50066306402302e3fe6d7b7d00a5541778325d6023311911c553bbd3adfd05b3b47d4d820e15df25b6289fba36edfe9d355d8a523045102304f2ac2803fc8ed905127ecc7a387351c2362b1d892bf23ca461d2bfb4c1b0562e11986c34d19cc8585c67a0a325406ba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230728e8f450d5c32f88c393e7c22959125a3b79e3615338c8c3754c1b265ae333105f357f559fcdd06124842667aced08f023100a07377d1d04c7ff9077d75826d095448f45ab7ca6811edeb29378d22a974affdf6fc8b0063f6ce3cd5a708726de70ce40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c85ac820d5db2441bc637b3dfb87f215ca5ca9dcfb4940d4655f82b0f729e51c6d42f9fe4d64dd3f2e64c8b532deb1f5023100ea745f5df253ae2b44e20f68d6ff0cc45a3ff3d54b9f4895cd1aa0caede1da3b58ac08e57d974b0c043f2658af5874870302047c435bb50066306402306d849a25048403386084029944599f8bb4c5c1fcc46fc16d9446df8afe401dcf17e8beffb4765ed96040e186a76023b502301f1cce990da66a893b40acd6442449afa73ef7c730a4f04be172820c66f9402c6e6f0b87512e9876e9e174444f85b1480302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302ee6d046e00749e183d6aa78cfb09c4ae87dadb00768ecd140053949700dfbfe78cc3cf370f115975a85d497a738307f02302e9a9ef018baffc2b6905b227c9db2a234ae6a9dbf23fe7e5bd0850a77372b11cc7c2aabe7f8223c76ef7ef27db39e440302047c435bb500683066023100b209636b430d3d84389b708f7debc792b66de4d74b1893be34c83ded77f7f6da6026488b9a1cc237be05704c0b7c6894023100e984b0cbb0293bc84a70d8171e0fade010d348a50ff772f232d64c5701c2316bb58f3b58ee85bd65cd26fe934474e4970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023046a551ea5502291d158337f0ace628cfe931aa265360c55e0ef068a91ae07e60b2ac3103eb302d6f7be1c98415625ec5023070f005619f7314eb7237ac0e535d5330ba91ea51e08f55e414981c287b666c63124f1c69bd84f31927e626ca6cd12b2a0302047c435bb500673065023100e13062bf0d82e5c7553e50194036e88426fa293448f84cb703183b61a39e08014e30cfe94240c2f731039200c2708dc5023016c74eec4d92df4d43b1829bd976c8d9d636836ce317027bb6ddfe68ec0106927c55f52f5d5a61c51fa0af4a5647074b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307c34d9cc12fd7125470a79637da9b36d1679f1e61f5e55ef5a6810505599f406ea6706a2a8f187b01aa9d184e657952f02307ade0452bf4dbbc0e308b0dcbed12644258ddde99c2559cd1f85a9996736586792aec49c4b416f1ed4e1a966b6a027cb0302047c435bb50066306402306252408fd205c4c3a11ac09cedac003d16ecefd7eb00ae8934b180b7fb78bae9253b0f43a17da7fc0a469ec17c08599d02300270fbaf77f8d002a8ebe66a05f642fde4be17d24488aee5a90b40d32313621c74fa3eb0f53b33929e650d06a4491b450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e3089c6a12f300f41ada59839254baaac5202cfa4901e5c8b95ef3ac4b325592ad7b00cef477eb40fe560466c2e4ccc3023100d7bbafbc8884c1174c6347f93574dc1bc6f68798d3eb6218f235f7da5dffa0508f447d9c4cf4e12f5c60dffccbe098ec0302047c435bb5006730650230798c46f9db6b0164e05b1b294b1d71f260a07e42c59c60da59f39d612d9d9dfd6fcca59318c0ce9ae85fc318a8f2cb51023100b94aac72ffa98688ada3431689cb01caabf5ab753dc369eef21e16c97d29a2ec0a1b7cf131b63ce6ef857717a9c4f8040302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a5ea5a38f9d9d74f60dac0880c6b9aaaaa624571e3a3ffd7b21987937a9cc1b7d6d16c1f011ce5728bbc2d1ca998a7aa023100f9975bc6289a06656ad905a39f8710127b9f0f8a7a98e2366141fd9154969938179048029238cb6ba6d7b209978857a80302047c435bb500663064023017505313735d90dc45e28d28b484fa76f2affb1e2b0811ef89a2e751aee0ce0361682141c6ec98eb9beb77836311ed16023008a58f2aa638dff0e9f9b998491d0878e1aeb2f9c876e1c0e13dc3b682623c57a3e621fd58661bb19c55c10b599dddfc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100de987a71cbce8f743627157598746fb73d7bc173ba062bab84a44d2856589380b98d7628b8e6eb97d3c4a538f6f237a1023100c690d81cd87e49ecd4ad8a6546c3c5b1d95f2246499d293db80b83a5b3ed4d32ed4afcc22ae9b6ab97c2a0cd57227a1b0302047c435bb500683066023100dc00d191ddde7b90e1c447493685e6ae522ff3a32e6aa4e49ac39b84cdd3e1d5c2c4e077b4f27d0d7fe8c925e926024902310085e35630c383f272546909baab37c806c437b3e32fe50daf3f5a5e3550ef104dbf554fe302d3a594ec18a526cf0b71280302047c435bb500663064023077045ae44f7cd2c36cb96302d2ae0b621da6e1c51b1cdc31cf5677aee3933f3975c4222df508107f2fd9ff23e6a31d1502305a79447477eb4a4492f82f7954147065e27658ff93e8c87c63d17b93b692a68ed19aee5c430da03559d282c7afc2d56f0302047c435bb5006730650231009c2663390a650de28cf560232bb2b0630e674980f5ef70c695c94a2e7d00236d2abbe252f5c237e47458aed4936a8e9002306344c32110cd8cdda9b761cac514b2f39ac519cd9110077a8f03207f1c26a9053d1b5213657b00a52ec6ad6dd10c078d0302047c435bb500673065023100eb5d1863872750cfff40e6e8c15b0e399162d495326088a7e78d0c2f7b1da8bccc19bddbf68bc5d9550f42c8ffc299830230177e9bf74073d9a95c19e61f15255eea90565d5488c4edfa6c09524146f1bbe5f22f3f6c71d5455bceab4e5065ca0cbd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301ea91fd9513b127c2094eeafac39fd660314cbc9b377598e1f4d1b14e9372f6ad987ce2340f308e7fbd1fadc2c8b58bf02306b4ab1cbf7a3ded9dc8377ec96c5cb8c5b99a7489c5cc9761826500ac2bfd4c8d8475d5cbe12ea3b959f4d01efdfadad0302047c435bb5006830660231009e3e6ffd5c835cd709f0b6c6d97000ebed987c6232f527c986e3d5bee3d7b329b5276400531354fe3a64acb5a0af1dc0023100e5472cc4fadfdf6cf8fbb1cfce322371724da4a0ded98fe7b7be7835d7be93a02796e88ae43c1c89f4170ae82787922d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306024d83a0cd0497e7afc488080a8074561f9b4da7304db6e190fe841629630b1e899740474df1fb1b6a03b67db63cfc102304e6618025f44783b4d212435f815cb337c8f7bd1aa49a9191d263c76f3bfc46ff612e3ed2cd73cd9705ac13a425c5b390302047c435bb500663064023052e57c040d6d0e9a0381a67fe431a4a676c5166436ea94797bea97c93cdf9a0051f3b15d243f8a7e1b4331c0dcfb0a0c0230187983ef838fab07919b43f5dcae068caf9576c10a9001db1d6d4e74e7c9043329cd2bd8b9e3eb64f6ceaa4938808cde0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230112d71f3a94633136b8dbdf6141166f8ff92ec2e22bc82cbd64be5ce6b473411cccd89173c94693099f480fa003ff71602300aa1acef9833ba9ec377fce5704c567743491883e9cb125767dc9023e376f68f7e4b8513b2252e893bba7b2c019ccd520302047c435bb50066306402300ff35b538ea799d4d95826ed5687d6bea93bbff8fab4048658ddd6cea520ced36fca9ba377856cdbf7eeb51a600dd11402300af125d38e63351217a554961a1c9b65b4ec0a5666e9ca6ecca051f764407382b0da90b90239b06b9dc0f08e829982a20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023033313968f149203813dcf023afaa34137ce91693833dd559d846024ccb46f8af5d0ca988159914ebc46524aba18f0daf023100fb48972f14dcc5a40c77bb4f30f54b1d3153db1c221084453d3c51d6efb6274a74365dbb300cceca584ab788a131bf3a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023044b0c372663b134f7f906f25536c3e65a4e7fb3d4618102cb0cce910816b6a2e7d44b84359f2bc35006f97d116b5665c02305cf4a4af2a78d5d769f7e290077adf038de0ccd59b9346282b75618500fdecf675af8ee09822301c7dd80b65a4e715130302047c435bb50067306502305f1fb2e34b3cf553b96678398f221e8fa2090a044ca409d36cd3329ec3848cbbb04d4e69a5d69f8ef8c30cd4560615f8023100b1d4c683094329d307349fd0db2fedcd49d5020fbf1a99248b2f77f0c4c584082e5ab17ec1d24da9b52455f499751f290302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009cdbee76199209e70cf7c041782dc7fe50069c97e3786b5d95dc505e3d6b0a8c13e1f61b985a03bc1cf9957a16f59f78023100c107ab8bda3155a48e8a7ef856556db8c8fcc7cb9032bb62faf2ecb3d747806fe3d5a9b258a4cb1ae2a96b5fec8d5ee90302047c435bb500673065023100bd504da88ae20d5154785f2b4f0a504ffd00c301e015d0fec5054eaf529f274e21a52fcb90c013a7e500cf971924636f02300aceb5efb690e3c3053cf861ff149502596c334e05729ef2a6f3894aa6c36124a4c0b665061e192766a1df2be7e0d9990302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100defb7ce00bb183314c61fa5cf21c85db9caaf469ea56646937aa7f15128ce23e03f1ccff556f2530fb8888fa62a71cbe0230339435448a12bb181ee8a6b935802d32b7a81b51e65edb2619efc5aa84e0666aaf9868b03aee83d4f1c18eb5cb6c69520302047c435bb500683066023100acbcf577bc19e155a708db347972a16a4e156e360134ef26ce53b61e65269542aceec5f32a7976b178db1d4430ab2fd9023100c33e52349362dc6e83d07a8964a3d331f8b067ba89eb3abc4f72ca150e4949b487ee6f81c1f2d0d5dd42a497b477f4f20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303e12901b10f795071b26463432708d4f93d3ed0ed7b82c412cb2d8d99c5c51ced45a036b63844f63d588d771a1c6482d023100a32062dbb8667ca8fbd2e672416140776c77244074ff1dbef5246407a4dd01e014e4d18c6842a4b98133144f0f72f2160302047c435bb500683066023100a8300ba01a56637e0104b460409623a4ead94b3f08ca7fb4f2b1e9546500d2b47e626da0b5063b045489ea3f80827d00023100deb7c452b435d0e9d49fd7ecf0a37a1c5eb1dd50058aec2e44c6094464c52d1db9e449adf1face46a8e6330724f61d2a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303ef17c250d0786f33c01e3e1efa67a9454023cf0ef6cfe40190849474d5501d1ac1d35937615eb7d9a40339a72e3169102304e287d4c61fab98871da01dbcf65f2e58fec600adfcba466d6ef68f3411688e5c43f1f1ed98520bd8a4a39a33c2678d20302047c435bb500683066023100ebce3537ad08f758e6e33c8230df30b3c89bbabf07db2a233dc05d626a6b6e67371e70c6535e5089995d548e9bf8e155023100f0dcc1ec897f218a94eff7b7fee4d7916ee24fe6ca57008b718845a41d79164f4dfbc4d001ff1d91f9b4e316c4819bac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023027247af58fb0ce3dd09f23a6d6d1b331a9f0cda82bd92cb974b7a305ccc60b3e5ebd69597ddcd4895dc6d7c662c0f8b0023100ad978eb66bdbf7ab98db9bd6caec408e7153edffce122d95bdd6d39166bbe12b965bbc57e986393e6a6ea71aa01bbe4a0302047c435bb500673065023100c0a2eae4588818e31a3619d1777e2b3640e595cb5919584e5009c7948ed4733dfa21d541ff69a6744690af883a990e76023016ddf5237c5a213a62c944dbda38b724ff2006596ff41bb415f8599e38306549618170286b4f8a82331d75ffed7b55660302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d22e392b08ad2e12ac44f8c045037453e617bff604bb7d49d54f7acb8803b294aa8cd4e08b34cdd97e31aa08b3093db3023048bdec513e96c11395871f47f3daf9ee40c9b5c4249d6160b0f32fe9e15b91994323724611cc029140d0daa3a84b46a90302047c435bb500673065023058f29111c82ad618495048984bd64435ac5efeb733842d2e44ca9dfda416aed1fa8cc0a822b4f487af1a0c200e699e72023100d6d1d32ff2f3fa741f45d8111248b6342f220c2bc0c837dba365fc9584f4cbc2f208422d1ea787f2cbeae6175ad06e6f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303d3744482436346621556884f2b5efbdfd7452b94bac526f3ed629e737745bce2d44bf8bca1c25a3f919c278cc90d4e402304648d077ceb423cfaa4652b2e544cde3ba677376068bd8fc63616ca8ef461578c8006dbf8c4a4036d71de639f62be7fb0302047c435bb500673065023100db7495fa3583bc593fc0528157153c1c83b4c3ec2097f619c5c92babb8a027e0e2d70a4a5a33b262101e71e6e42caf4302303581a25e797f4b34f093fef6c43183bc577b443554a667db4ab245a05d6b8b1b1ee1bb45b9e2a12de8234620fadb9b8f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301ef21f130c7d6d82c98725892a3ae43494e720f1685466a02eb4b0afa8ac88449fa0669dc3260f3284213d9b148cad77023100e6dab6d52a54a74c4539568bbd80d86b748f7f8a04671674ed221e20ecdfb0aafb1ab9b3243098ef1594c5de5af6ad340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d91d7110656ed339d7fb2d779fa99bd839b2e3b87712d11cc0b597fdddf2fc11bd72385f80edf5c44ebfb9e0d2e431dd0230305edb15a8ff9372cd6df8cba6333670562c683836587cc70335ac3fe88ee1fb390ac1ed322315acc01e29e7c6dea3de0302047c435bb50066306402305aa830479f028f7ededd645f242cda741a90ec242f610600e976a9945ebd67ad8a92781f5afd1cb6b0e25e02eb005bef023017b1c8add3da7b39b856d9bbe3ea00f3c02883c1df5918b8e155141294c3b2606dc50f834215e644fed7382a851d56840302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023073a4e1e2e82e8b981e8937bde9941d6a1f0b234aa6c004ce993f78a0cadc04534197056efdb7e01ff3e69c157cfedc1b023100b7379dda7490e16fc5f162f3ef1deb31a3facfc40445115188a2a27a25b182d98883238b6411ce94b08eba8640ddc5ee0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305b05e3fde2f434fb01f0b31a8b298072509a6bbd6ed590da678c480d5bf307b740d978e35d2ed572341e2b17ef2ea339023100b02cde114af0ebe1637abe6c06213e51aa0402a0648e4fe6f59228f31d54bda49d1b01223ce81d712de4e168d12904e00302047c435bb500673065023100fe074680443a6d23a62f67739278dadaf4f3696d28798a9b9ea01a56aa439d8e625d8ba3c7cb981dd6adbb58206d049d02304ded781f1dd9ab301b64512e298650980556af234b4f1077a81671178d7d5b3c775af8d586df6539c29621f25e8844740302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230288ac5b76aed3b41fe678e713829eae9745f26b3f463148d2cdcd494bb307eb47d8b5d623fed49a34afe5b3a03c0938f023100c8523d999d5e2b073ca35edcfee8d9b7eb45889e94efd93db01d81e709b33b20982a77e7ce9c463c7c4735b4d8fb91c10302047c435bb500673065023100d915383dd01141f4aea5ee082b1df5c869b3356506635a64c5dee57acbf823451e309529c9e95d1f4eb93589b7355ba702306dc76b0a3215c944d71fea44afb4de58628fa5c07b3c4c8f66dfdd948db4c94eee8fd102d2678546b4fd9c201f8859be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301c3f5d2f401c2a77aa22fe4f433448e07a7928357a75e57acdcf174b343e28f32eb7c8d16c0382b3ccc56ec4eb7340350230385aa635fde91292a10dd7f025484ec8cf18e0fec766efaaf3c5931e62f5cf4722eb82493d8d1c6ff3cb9fb24528c3b40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300105a36f2c146c03f112843e3eb2223a3a4cce0906b1aff236a9eaa79074036c064a9d2dbe830b826d49f613d051d07e023100ffff4f5e269039d8591e836596f03ded57ff469223a4f205e502213551d84d57d37f01dbdd52320382b61d5eba068a340302047c435bb500673065023100c4d947baf3c97bea87eed2505e4704e2a8cc48e3aa8733092397dbfad40d2c8ca5fba8842f8bca8b68b7612d3b1cc766023019aacc3152bf57febd135168a91fad0c47d493c82dc1a0e692734b3792ebad5fb337c88fd66006426e2234297cd300c20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c055184cb654239202bd2420fb44bd5f6fe40c789c7851dab7001de6d9267857652398ebf57f94624f203d332fd6bb3b023100813d563501bf767e8abea9078c85185bc02fd61a10751f701375dc8358e1190256508e9c111cb8984c05bfd55c4ea4f40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023063e4c9537ce948851c4839ad358f5f6294dd86a909e2c404b0155186a6f5e91ff37f43033a379fe14845e4b6152cf743023012220500328b6e86dbbcab2bbc18d13fc31d7cab2007da9cf4d6d754bb28de12ea20c61b3fb0f8676bb7ac2c588c438f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e38a727d0ad04ddf5c07700b0874aca3b4486bf05bc96eed3fb01aa9864af431e3338eed442b131167c0f83b3ac579a3023100b0c9f89bc2958aff0e449552e848a45e164619d7e8b516bba8450d137ecd9fe270280a22c90b8e3d2c8c7eedccb345700302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fbdb9c916c489369536fee6c4b2c0ee65ba6db740264b9ffd162ad8195ee25ac13ec84a1239c1abf2af3ca2e3a29deea0230277b4a7cd18c3d608927744a41215c3a5937ae2cbf3c92d790343b063dcf27584f2bea089271bcf180c7b4a93d9fa4230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008d8a7c47bfffc85b172ef05777808d74838fd3db09d4314faa52f3694fdcced1d2a25be9bfc30c5d7308fe6ce5e1ce9a0231009cd3f745e9eb0781fbb35a0dd5bbf0c916d86e3b64a0248c3b0eceb16a1204c77b32f2a57282bbd9676ea1060ee0ae640302047c435bb500673065023100be631ce40fe0d3899f2c500f804d3feb35e8811970eae5c6471348ee366ba7615068e6919fb43a450d8cdbf25aa2b57f0230422269282cf2bd752ab6600a80878d5bf4d665601e209a5553c434deb58d8a8fac7c788a55cb0f2404f76f71dac37fb90302047c435bb50067306502304d65dcf3eba9b874579a2f7777d5baaf55d2884332f2b8fbf74518ea2eb1b5548d3d5568ea721663ee0c50a016fadc01023100d9aa1735551d1483ec0ef56795216df47f21db0e71bb632b7da5be4edb4befca58a0fd4985cc4cad914e78b5089933db0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310085494c9f719f6d311e92b5e67b7cd5e9d566c88c54d89333746b225637934e27ad501b2ac7a1d8edb53b68527c14081c023100cc97f5c2b34bb40b554eb427f6ba20cecf44a2ab5077e43ad398ba81a5d352519d662afe56c1b53c1dbdee1f19cd79770302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e68a3abcfee9b23804bd7291160453e836d005f2ce367fbe3b7a5d3b11c66ab24a8aa00d817fe9bd14e759fad985765302303daf9cf2f01b4c64262e84a99db3bcff16231d455b661960584388e828a8c67056bf383807eba9edc79ac238b0a0bc9a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300f2cedd601cbdb66d427b95569b5a7469a932277573dbe4623d936263e2cbfa86ac28183738817e9f94e72e08cab6c9b02310088c8a4a66af3b9d8c7a94b853a559f0180f4bf26d4d2f10b999ad8fe03234127207cbb6e224edabebd3e14b7153bcc970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023020dacabb19952ab5100cf46ed1a610f386bcc39c2563ca75f38f182c98428bf4763d1b92e9821369d4cd4653f760bb5d0230065412ffeaa532dea73b01dfb4321ef4e1d56c8f44ef2f4d96d129b0099f5e0ccb7ad2bb4ca2311cce109ae1c012b0610302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b08daf7ac1a22c045a6396c7d07355ae16c0fdd6d9e6cea0f328f2026288f38bc15c373d4ecf6d7835ce621df869a3b8023100c4c4fa26b4ecb099ddf7a3fdf8f18728b54a959a1071aa86a6e4ff77b8625bd54cfd9c1eacdd39ed02b5325c2700f6770302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230780c2a562fbf8d6ef35f940d3eaea1771290ba57c349a02d4cedacabe69f9c248e5f1f64ed002d51be2f1939b26b1544023039deb20f3e1f95329e913a713b11be2c023ef524e18a209cd5cb9e975a0cfb08ebde900fa7f58f0091cc99b1926263ed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cadb8ac31c37440199df85d4bf586fc44d12bcf1154cd7d3b666c1edfaaea6135cba2e8263d42ba2d0f6cf2492f16db4023100c7030a7e72f225b3bfa753d191c3a6f5262575ee083d879f295ac1cc117705913ce1a0a4c0bc9164b9df9a288a7c506a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e75f657fe2662b2aef44c4d06134ba40402646d74b5b154ca05881c173ceaad5ff9e3aac2e87458bda92b6b6de646b850231009df9dee5d017b24162c6ba0b74bd1314fa01fb8b8ac0450ff4da16d84fac3077adb86ca9e5afbb615fc19076c434844f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023033d519d694a9778e7f2dcd60c9115b2da17ae3274a4a42aa1d2333a721e20a0b3c5b5cc6aa165050e19baae49faeea01023100acd725e8c2e7bfb3fa4f3d9764cfbfb96724b773d2b686f41d9a37ce90a590c0547abfff3cf6ad8cfe4f91151580773b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301f54cc1cc8abb2e87a716cfbc35c6ff5a5fc1857b581d42f989026dad471620a96faf71a516a197d86dcb3bd254890e8023100a59724d12758a79dbe4b1fecfc29fbf3cfcbbbb3f142333af6e72b8dd0faa79d3e3673b76c3456e32fd98002ff6dfc740302047c435bb500683066023100f6c301f96591cb22b248e96115b15d48cc775f8cfcef34759660d9b7ba23de76040f27d60ee4c72388c96c134d5a6dc302310090b7835e12cddc3d5e734c258b2e4f3348e49573d74e15403c707698c639db8141e0e41c863492dcd67503e2058fdfaa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307a39ec3aa871b58c156680f31c9a60310cb0a1b08c8fcc06b7edaafd2e7a38d4a5566911e2017c2b0273e5e15d26bc540230507bc901b8c7b28518e76c575a08dd4fc1200a1c73eb5b26fdf7f5d159d13a4b7b23aeb8a47cb1ccbd8c59b083dd61bb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230166c57229cccec3ef69be96158aedb32dc591aa275ae2587b8c69b897017ddca3eaf6ba963741fb67aae84c5832fac6502304b3b0928d93397b1b1f076b1d1d19ce0d5d4b49f73ab568cce054824b14b2c5fa5ea033628f997490ca09bd947b707710302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a36eefcf8bf29260698b2d2dae8affc586f5ed9858d7ff13e6737caa28598f936f0cd0ed09569dcc5f4b23d8b887ac50023003b97cc3e184362d2031d02e691aa3586096876a9278316a08ebe7a407ea86c2938d26fad7b93476fe4063fed23f53a20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230658bdb57a837b115b23d870bc9b29c6a3ba3024f7b6a6f9268f19439356778cd3bc43a336c235ae3cd07ba83752d2fda023100bd6297aa65c3954dd1b705d6db6ba7bce29706bd900f61b186db208c2e2f0e2db44a11a4f925ec593da9cbf974180a3d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e1b8f66b950355ecff62e52b8887446625ac22990e2c910e9275dafe8da028402d8fb3d715fe626249b76724ab208caa023100a2be369a2291961ca432aa63c58c060b8993dabbc1bd1de888e42dd53aef51594b9e2baea17277312e77c03fcdc9e8ed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e1a2a1f41391953a1a93c67e6a12a140b8268780835771ff79f178995561d73a7fa7431dd060cf9e9c618a21cdec89d4023035815f4e922d93214fe647c7858a4be11441875562a8b13b35275f2cc7b9ec15bc8b5ae5910027c7cf3daf4a72904e780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a1d5309595d5c007d07bd6f6a18f98d707ce5f74bfd5b8885ade81303e081c259943d2a8cf3a3d7496a8aa858dc0ecc502302b38513c8041653fde59da5b35c67f65c3bf95eb92be166939b9e3c1805cab12b57973ce27f7563b522111bae7446e060302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303fc4bb135793f766c40ac7585f96ceaa6278156e83398c9413ce95a7168c0cccb01b476afdf2c2a7e930ec3fcbad5e31023100b464df809fc2439c3a19d7bafe9607019de222ecd81f6a02f0a4ad6df4c8b8eaa2f8c0f082b52ba98e755bcb2cb23d270302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c129c20a9649083d7e59aa2b292fb4b67ce076fb9eeeb078bf4a86423802cde0fce5f8ce1374cb724c4e6317f6d0fc18023100e037013d2d3ef9e5735eedee25a495f431cb65f48077d8747f2fe313d6892c84bdcca0f38e2c4aeb38003aa80b6082a70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f941ded8bcf79a4e6f34e0a18fb9bb10f11102e17461a6aa557cf2d025c4a118ebce25909b1ec43c6c5dbf8ea2be85c80230780f7ea1a8b40734b9557176025a7c08bde63a2ca57a45433ed32146e089ee2139aa83aa150b4041a8219e26817a6a8e0302047c435bb5006730650230289be04b469b35cfcad642f60dc52dfed5f6ebc5d047e2f5c511d1707c9ead05c40929a4e9bb7c13efafeae8720811ce023100b2994b9445ed2d5051b45f700610d63162a424a312cf01eaefe8fc7c7dbf10a39ec1ab13d40eeb9392a4e71d76d1a0ea0302047c435bb50066306402303b4efdfd2473563aa87335631fc14cb794e1151a47e2ddad6682af1ee236ae9ef8e1cd60a1e4f3c736fd13a93c0d04e4023008c7365be26f296842b5bd5f05d357a7a5aa4e0eb39562950ebc3a607127aa78c253ca785f2b471e7523c2e46542953f0302047c435bb50066306402305e867509a684d2280bc63eba8edfe1104d9b005217af121d107231ac88e50aa3d5320215ed77b368e2b1c60ef2befcee023001f2747cf970c649e8b979ef41163f1d0d5b6c07fe859bb20d6cf83718b7013bd7af901a0ebe29714cfc88f7e44fd0850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230380bbad83681fbf5631d57ff2dd42f585c3538c47dbad7b7795a044dba1627826d656a1bdf289f2da53224e1957862b402306497a680810327f4a485ec161a148b10d6051de698b6549e90382f18f327e0120558c0dff934f93b9e014649d1bd45360302047c435bb50068306602310097090722e07144360c7435169614191d914ce5ca8f7a874f92e4606035d0cf8c3f1d477334b196eba11ed17457c2f583023100dd709e3a2c6ef675d7021e73f1f966e4edba6a8c99cf9ae278864b0361e5ff67f69031748bc332213cca2e1e6885ee3b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d0c0c554f48a1a1b0f0ef8ee73374f9b0fcdf1bbf87d2e324d005e853bb77954d2b7b8ef30fa6ebcfee378180b5019aa023100db089693445384d7d4c553c3d79a1bc347e9081d29f80986d1c82557a2c6f3965b8cd653d2912488f8d54f983384fe360302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cbf6fb26269a09a215477dbacb385218b623fb084320e4a0dd5f2b56dd355923adf46a406ce680dd4c57184fbcc223930230712d1cc6afa703721556d5e2ce618ebb3a688bb4724902463aa308895cea4b9383e70adfbf6a4d7c6ae38235f31fdf300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c7c64fa060eef594859f10040aca981cca6fcc58d4c7581837ffbf15187cd814322a59111a661a5d3b9d8409f0bb7380023100b4c338efee4ed3b1870e380e2fe8785063ce43bb2a41c16b6c6efb9c2cd0a89ee991c741f906f16880c1f039475dadf50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300937a1f8c216d8ae2082135a41cb9673c6437b97ac274fe2379de13d9f36d2d8dce6703cc5298afcc210a6e9f955227e023100c65a2ca33dd3c86ee0c42d8ed9ff509cde49ddf68d27286a72d1f2520901fdb4df6328e716619d3dabdbf83fe2b78b4a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230563aa83a2a2a50f0a49691ad4029fc33240f2a920f1693e26f785e19408af8be82208614b7c0cb6115529d077449124a0231009f8d7bfad33b258a820222da62e854820d588472c727dbecfc90506ba491b3991b243d81a80feb79c557ca50aa6fc2330302047c435bb500683066023100c290e6ebdf6b35e266b9c9cb56120b9e63f3fcb95ce229d68de7b4ea585c12237a1c7e62bb0e11addedf0187511d5222023100c6f02cc717cf7dbee253225100e9982c37e295aa37a8dfc6268f40f9bae992e4cb295ad482a597ab95974fba86c0da7e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cf00aee1e6632704cc6ba4da3336f6b91ec678ae54ecfe6375f2606e03bdd608f0ee3ff3185b7fdf24afd8286950c1cc02306ade07d20d42cedc3e8bcca03b674aa400ca643e49fd571db3ae8e84a2320e62e2f9cfc01062b1056f5912b2817fa6c60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e2cdb6266c922ea505d430e63a5720e14e1f018f79a7bfb9867246d4c9799a54061e93975b03908f151efb3b5f44b251023100c98858655518d97ca8e73a8246d21c43262d4f4c679c8303f15cbc230c99a0171296e1d241fcbb2b521865c5390d18540302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009bc63eda839b985349154800c55a57a0425059fa86ec91310d92c6d46ec8b22daee6dadc46d3935184667618d8a7664002304febc475956ca9943ac87bbf9baac9947b339723ed57bf21c6fe4ab3e9dd94f35ffc2860106d77a9677ab5c6ac711c640302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303f42413259c5ff66a264e5d192de65130e4809394fdd54d9b962e481f8c2accacffd9e95b1bb01d6981112889b605848023100c2a68797cd92787a2b2a7dc08b2691a4ca029b9b5e466b0dc39de63454be28ac6b22ee8d244363beea1c8aec8e5e27c20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023047ab62319faf8565949a171601cb2db1ecabd62dce668ecb22ad3bc8185af79b8bc78e808eac877d7a70e50978b25f25023034e078a08451e53a4f899a7dc82d095aece8ca9a8c2991cc27f9b2fe52c1f0d47526386971e7bd9c4b469e21408afbca0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a5f7ca73e928193d06c5b1528590ed2e5a600c4d60f8b68052c0976c414ddf64ba722d9744993b6a293b682981a9c59802310097f02c9ca5df2c708a1745272fab10d44d0a2ffc4a6993786c870bef35e1be2ec0737fd9b1bf60a5e56a40a988147ca40302047c435bb5006630640230659d1c8a32c01b98f979945c1d3b7c37e08fb7d634b4ce3a3437f13529309781901bab9ffac579aa728ab104698a1544023015f8dfeb8f346113fc0d62b2607bfe0f86f02de242a154d17a1c52b79e08fea58fc0397e13eed2b651845a92ebf4d4d80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ef55e02585c607c482a13208b11b60f6791a84402e569b38ac7eadb996efdd292a69c181c727246c11b1bd3d1ea3cc6b023100c79482965ae49b2c1158a43e3a7a7fd7b71c8f2e981401ce5684d89ddd9ac86f588ec46ba744822f284ca1601c6e044a0302047c435bb500673065023000f5dde6c1c527db645a800cc0cc8e2d82d4f43a1f984346026c6485ca456e23180b2329291015594c7d08b9dd6be572023100d5ecd540936ff361399ca177101a2c356aaa4bcad388bd8336a4b209c2f00296b9700bcbcc1dceaa4cf539cf77e345e90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d7c6b731f0236a29bc450e8823b4f4ffe859bd00f33cda4d974c8eb05254a604b5b64dd3e04c181b1b37bd0d397c9f1c02303e0570105ac7a8f88bfba73f3212d6ede5b03414183c00ecb8062552daa4d116b87f1933898f4153ac7b16306555830e0302047c435bb500673065023015a7e6b1716d197530434cc9ad5b366926db5f49c252f6f7e9ed034bd33a4f933dbeee14b000cc25cee6e2014bbe0001023100865daddc312749048946b35fae125694e6c2606f330f1abe64b39372ec93a3eeebf116b9a790deba4c0ef901a64558b00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a58f8b089e92f8af42be84055f6c0bf13bf46fb68f0139f59b66d380fbb1f3058441ffb781da21535e194ccb2383b7de0231008dccbaf7f59aeb47269b7e010861dafc30ac60b87043b713cc54e8b28da1ede61135dab847f4e64b6fdd43d500468c980302047c435bb500673065023100c4a90577fcb6ed551a41fc67d60272f9c54bc82a1233af58587dcd01779bf72acc453feb7dec989f7e0aca36c9689f400230735819d838c204572197b9afd76ec874ec9f35d26d74c8d8ed1019f6553f8ca2b13632ae28996af96cb629815beaa4870302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230362796dd74644e42a487cf4ee42378062176ffe0d1ed1e70365c9a383a0b97a9a8806cb4825e7680a130b3dda03255f6023100fce61384099d32fee3fd3bd271e16dda73b9c62666f17d883852804d1827aa8c39c3fb8fd1b47db33427988e613587fd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009f77c57b2d2407118153233369abc21af64466b2e42d7c99f803b0fddb1bbc5b18994e0f107bed5565829f084048ec930231008fe976bf98d3d354ebb66f0bb2cdd45ccccec55e47a0d19cba7570a2ceade522ea5d73327704bce8adcb837851b169c40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100aac8d3d9c9e7ff9d3e8a4f2cb9637296d7b26168e7f522788990daa75a838b8a005ba9f63b799dcc901bbe2e6c4b1854023100f790b4644e94811cd74fafa1cf1040141c13e445465ba487068eb08d28d415d20724576ebab78475d52b92b2cbab51900302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ecaaf0be211b67b9525f8d5e10fb416cb01727a3dee2c3222dbe3b23e82fbc5fb6f32c4ee4cd5bfb8c62d613e4d7edfd02300c3d4a7c996a491edb2b69bc6768794536f89d4ea73e798249e9c1fd92edbeaa848ce927fc4254bf1c4080a68e92fcc40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303fdb1a715f1a5eebbfa907354f36ab83b36a5e5e3cb0ecb5454a2d23735d9526ffa2495f205ddd8fc5d523b6c6ac3e58023100cf111c15ed5096212667419b14a8d3cf0b727a52dcf2b5edc69fe7a4c1e1f688c9af7ea5dd4020db6fe5fe81a64abf830302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310081dc620ca2e535b949f4964ce9bd637643dc3e30eab1578a76087d87ac6631e5fd568c104116cef2f21d5fa23108e020023100fbe9666305f3b058163e9131551b6889a69f22059b6b1dead623f13a32e62451d7dd94f5c5479e3669f45b88ed97892c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dc7315084e1017b9ec6859e9bf9a17cb821b57fd6b17317795939e73bf51abeb68c98f4d717bee574517cf7a0219c0c6023100a43f3e10e38777a4347a879f59cf5e7433c0504c41debf4b8e3caa108e0b9849ffa24ad7baaa102e9785d06833050d8f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023071dbffd90c85deb9454bf977cf7cbf4bf4dcf6ebb13ee356f146fdbaa6054840fc55962a8fa7c95d33b8ae405b92bc6c023059bfead2f493750f38a1a5c60b17b958027589452cf22dd6704f4440e6b43c39539e77694843e8639f7a0a8c099d90960302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306808b8a45a952b0cdbe5a360a8f99e59cef888694ba8beb3f80dcc19bfba3a52298e450d295da156c6e5e39198d83ca6023100d93d04aec443e40fd001eb482d70d38bd5e236a3e389da8deef16cc82c50230f16fd99b1be2b21f2b48a0b31dad34edf0302047c435bb50067306502300bbd19cc420fa963bf0eb8c729060788e8054c062757cdcda647ae7654f653207a5c4d95bcd07add141c2c533c5db65a023100a4e8b5fcafc111e2ba073275a0a8b3427b4358ff98f9e80ada3d6541dbe2dc7afedf362e69c3884ccbc96c38c01126cd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b6086519e29d57e169b80d4db036b103e77909a0e96757d123885989ded6459e90865e9cd8ddba00b4466c4e266d4e750230164207658f5fbe739b693613f24187118eadd6a4c421a1d76f2c95661600020dc4201f20cff975d671226f0cc31d933e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300ebb26682c63db5c36b065a7d6383a6aa4d8f6b5d018794a61bfe0236c0866e96424fcf8be0b86bcec56c83c231e8a9702307810d62a8de860bf88523736444b8e2c790600912895b2dfb22239ce52cad301f656a6e63244d5c004abdc040c0344d90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310098ca6bc760bdbe0042abc932f2cef055b486455280d5252dd8da0556c5000d89f612d02284b957d52bac83c6c7807951023100df0eadc65e3f8f7893ab798d6a9152232a13ec2835680386eedabb163445b5fcbdf10dd1cc0161dd0ed8e1fee65f95a10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b65b436660c58cf37e707532362577b6e209106cf892e98b4ed7daa7f8b43ad399b374234dd06a1bb90d6eeb113873da023017d808ffc0665553afe559044e7bb5f763ef6e764a6a3b50e434d83562c690cf360255769b39612f17b1e82cff799f500302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230583cb832d36e5d67f5cf1f814a6325d18687ad2a7b317ffa04ead6ffc1b0cfcc8c9a57aba44e7b810f7773696dd72f9502310088898bfbf124a2a544c073da0473586220b3d9e14a2ca4b222465728a55d093c1821b750060f042a0f80ac749c2c45f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b7a6f69177d2e53596ebf21e3ac941f0dd0f514bbd245641b1d9a968bc598c21986cc7883d3b82fcb5609cb6918731700231008cbed8249c4bedc184efd776f19f16750425990821b1e5153b3094063d78d408d572be0d3aa91c3d6232d9a1b45364e80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023028a98171ae77b7fc924f5b3a93e4d646d284fcdb5129f27149ff7f244318d76f482cd490b123949b8c52327ecc86cce902305533b75dbc114d230632117d18f73e1d2dcf9d4e4b97d4eb9834cb28561e988bde5d19309cbc886e3c053841ed29477f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dd18780c97d772941c6f12ebd2778170ea29f72f6eb64ad14fcbb0835d9b85bf7eb386eb7e89aeef4211f79eff506afe023056ef8407de52d9950c8a117a77bda2a9d1e302f5c6ec60b159b1e383f563eaac6f87692d6a8061f9af5b128758b7cb1a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230644172eb0ff35419011220c8146d816ea3c39285f7d17f59285ac3822e94e509336f0c0cfaced506ce8cfc97bb48bbb1023100e7321c7395156b4d629e066237a1cfad9cd0246f237dc8fea1ff931a49e5053a09117c80f2a5db29c34af1551c9c24720302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ccac252689c4b38cce95f726de83bc8b6baee9e4276768ef189d4e46567df41ed25302a1f7dca8008ab89d35e3e08bca02301104c128dc27f9c134886a385ec18a74888d70b343591b10c74f275b090c5a79fccd09bcdebdb85b0cdbc4c628aaeb230302047c435bb500673065023002112b71e860b932e8a3b1f5d540a900bd94d3564001ea7c5b7ecf4603fe2f303b12c22393e5a4018dc7fb5d2045346a023100aebf11b03a278ad34239d3771f16ca1c4c7637b53649812fd0b9e8ef8f5f671b6b7747fc34db3a44e2d6f5f751e1d0a40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023052f0d1e6774b83186bb2096f0f04c09ed637274232b1202a536ac44b9b17cc9f4ca50a11dc3749d94cffc47470ae9df902303fa8ad038564c4ed987c435bf33004d6bc674e0fd09746b3c7d327bef87de403d7536ef8b74bc8ecd6a6df4e2ba0cd670302047c435bb500683066023100c50e50178af9446cc5c2d71252056eff318b9afa14c2abef998ca3e518e8f96bf54b7fcf1f97a7a0c56162ce9764b6e202310090c5fa1d76fbf1fda0ffe8476672779b2b1d1c537bbd2a9dbe6e4da1ef166c37d8a4aa6f40c0d98c82f7aabefd920cf50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023010ab2ec3f8d266f36e5eeb1791217c3df0e143c5a9ac7a33d8939d35e99197dfdd74a467a6d67ea79f11234780a0ee17023100ee9b8ee52a440e9829e17277953b60ed223ff094d018c2828767837fd47ccfa0beb1bbcce31073a7db967ce26dec05be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304f41d64402ff81724c397e564bd047e87c03749211f8a2fb31588d47cabd88645a7ced7738bdc38e0dcebcfb615a8db0023008c8041560ed7ad04601de299a3f98cc0d2def582b849411edf3daab3613df94d3b76e34041d0c41b4fb137aa8bc9fe40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100eb6ceab015cf12ef89b6a618495ee1b1bb63cf9aea144ad7e8af7cb00435d890f50f882b4685284f20d182715558b081023100e9375c46693ef9f64d15c9fdeb5b4cd8f03d73aaebb94ef6257702a13e81bcad78f214187e237314a93ba8d1914171480302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dc312ccdac5a75fc086b4fadb0018f236d5b7ebc586b6b96fd86cc9ad61e8cacb3b445dd63dd71364154e568bdd82ec802300e40864979fa4bdebaf85678ff108e4907f4ed932111d4d2cda9f9e70a3a5d98a73fa5669efa81307fd93c6c41ba63350302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bcb24501f838f014daa042841b23be9b3be57c085041d72fbd0bfb893fd896a2d2e539a97ad269d5e3b1e3aea93ab449023051291dd90490b4a9c715e3ed59162dc1a18014de49932a185be19e8ac17b7ec4a696d88a8a17f56eef22359f582b85b60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302b35e22f4cbf63ab5356fcbbfb6870cf9b26f3f9295ad8b9aea2164dcb0bb7757c18f0ca31cbf5362b27a3b599555f1b02310085074b8831f1481dd61c6dac3232ebdad580f7aa6c6bffeeea98e1a7dcc1da63febcfa6c1450cfd46461112c33529cef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230580a79005c9cb0bb7e286c15d340d7240f81aedf65fc463fcbdf0b4b27f57e8111e0c5d5ee7a7f1ce66f902603402cc4023031e181bb37306126f513d7d0e3918410ec69f42bda66f6f4289c4026ea84b28ae4f08af59551cdd663c9b248b38c702e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a38a83dfa10db1a8e03a335b3a84f3548bc20769f0bccb90d78305e0bee2c073577e823ff1f4833873ba2b8c39fafbd9023100d2bdec5d85c7783afa80c1d6b9787027360ca688585f135e3a0e31e547e646c95401d342252b2474e79ba15abc83385a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305871ebe6c4673245f4423f8b4995e42de28a156d968516b4b3c3fe6e40e14b4ca2c5b815868f95ef200fb86421435aaa023100f4fe7d6e5879d2e1cb0862418761da272ee3af3815c2a59567c8c2e8973ad5ab7d9408e7ebdccc11f8681970d3ae0a760302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303472e7c3419092638cae34cac93aac242732efb81db0b11845a4bce404182d8ebfa1376dd681faa21657c12d87d905f8023079797807434eb125eb1eb35f753f7b6e573c7d66336028254b8ae80ac97c87f0fab1ddffaa0fa0a09707fa8a3b4ea5960302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304399f47454234204b2ad487cbfcbc2f85ece89dd21bd9e83eb0a64ebcf4873b208c7565a6df73bc8f78266942e09f52902306c14f1611ef82568989df8111046ec520de86770907d69b3756e6d6ad5176b2057b14edb40c1e5132c33605daae772730302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100859c88fb3b0a9b85ff72723efa5231a46a2da56954a63e74b1cea6ca27db3dc289f41e801a1442286b704d4ce66580f902303a6651c4b64709087136ce3bb1626585e1c932b2bef6691494f31daf273ae6f88aaf300f49798acdadb5501bc7849f1d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230237e96cacc77454015ab927efb08906f38ef74ddaef9e45e88cfb6fe7398c0b1ca55403f3f0c1e9e1b61e9563a998e56023100e8c4b869ca383452660a34af3bd3b95d8db9d1fc70f0247b57185a227efb5b6f40923d7bece9c5b927b93ee6fe29e4a10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023008eaa2f04202838c34cda51363a58c14cbe1cd43d2a139631c7e2ad9e2f129cf94bfad7292b2cc577369ab35c10345620230203320f48308fe9caa8220676da51cb1e4e3f9a55a6e564ad921049cbdb64246a6a891bc18ce0c87f1a04adf72cfa4c20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306544682827c18f1ad6ae658d0da4c4bbe683e9a4615f970c9f5cae9f7d9079f910c2a60df92291f0286f320313ed8486023100d8cd345496f928d3af5daee73a70eead6177f292a95425b02eecc59422857251fd8d42003aa59b42cd0d523fc1f5fae60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b01089b509be238e1346a8ccc203502265ebd6c793b12c17626aaa72f81ede2c4fb345bd4945f986c1c8acd88822f7a30230239c4e5a2db1aa18096a2b6ce048d716675bae259b60e8701d95e770cd5e3c890abbbe0b0d91c579fe81b689d192c3420302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023050c8be139fb3e7a9a2f1ad6d5e95de8f8789bece922827246abf7b950ddfba99f363ec8a7d97ff18cff6de562dda389c023100c851baf4f0ee861b91ae0bfd857e8f1533e9c39796ac586c74115587c8f18aee8e392c75328eb0c644ecaea1b337e1d00302047c435bb500673065023100c7206dcf2bce66749a6a5fe502a33a1fbd6293c41bbef953cd4478e7b3e8448c16c12dbb0072d76eadbe044b7046164502302fa65854030386f334c64588e258b7e12ebfa0b1c93904f01f72faffd775cd21befbf379696a4b6d5e9f393b96646f500302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023014ae4eed37d6728e6531e1917d823be9c0ee29a808d9ddbfe7a4bbf1c21c6b5eb49be34b56042efd7fe59fba85ca7266023100890a0509069bcebd128d52fc5b58947ce11c73a93cfd4483cf58051d7bcc803da8244d9e09c72cc4cb59a9f8caecc66c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310084523dbc40b03b2f038190d1d886472945bba4426b3a77db7a9f60a394a758f6a43f805ccc6d9a33871f2ac8df265388023100bf77fb5c16b1cc4f561a6582e922a78ce732d5fb301e971e5a6616cbe7811d32ed813c7d8b8d338bdf7b7a45192fb03b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023058d91f1711e4f2d421d492e021b48db9c7c923e171199e9b2e851f28ebe9e50f454b7850702463351a2d885b54ba149b023073ece172f9b172248b2f4a514d4790a5ff222e852bd46bcd035bb71b4dcdf5c982a484502efe4ce72161d8860f7f0ed50302047c435bb500673065023100c2da163cbc757be2e0d1aa12304fa8ca000619f3008c75bd44d6173349a5809606625cd714b766c3188325e06aaae22e0230695d04d3ce2e154095618fc769fa9365fe8ebc16436043a2a6a45faedcda2d4cc90d84d80053d757070fd05aa4784dab0302047c435bb50067306502300e3b509e29d6b8c085adfb9a6c4c157b2f103907d38410ae09144fefb35af3694692b81867230a31a0f1788dc741d14c02310093522a96e1963f10dd19938524a8b91caa6577f9ae5a3faf43507a7b5cb9e96f50dd449997641175d72b950b236a9b810302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100abcc13e90022f5af7eeca24f04267ee1f7d9f8c75818debeb8ed462c03b626dd9b3ac614c6725dd5ea64385f2dcf7350023100f3596440fa37e77b3968be3f4d995d3b4a7fe5a92a2f2b014c500f1716c8725af662c87109483744f739f25115c1ec5b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008fbb42c62e8a1add10e57cc306e974790018240968be0568e114d5a3e2581ee66b8616cd073f3ff2adc91e7f693e73a3023048c1aecea1ab24ab59c9927411a04a2af7bbfee8400b9ca928dc1cefb66083c30269d9c8bab9b1b30c84532bc8eb91300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230696730df798eae2d4b8cb4f01ec975942a14cbf55d4fd0807417b1d039c3ba4a27d2da1d66c565c273c71c8484013c5a0231008def1ef7450d5b602b7ca804ab884f72a3cce5181a252b4b4131affecc5151d68a5839b0fe31f700b1950873ee6c64f50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b89fd5e3ad84059e4448fb8533c4230a4411b7a5bcc251237c6d7a62e32245f0ad73a8028b47c07831bba21634b6cea302301add2fc9f77ac3b9124ce7b2858617a53fba1591f803b69e8ae0d71b7cec50aa1edbe867c66725316577d550864d9d150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230193bfe72c4c31a7cdb1eff0e446de04e604b99b4e07ff278c5d027e3b5f4e0f4d1312cea85c00c2cbaa14c9a7c7d91c10231009b381bce9c89222d52deb34d61729e8e0700df4bdd58959cee8c11deed804256b8836ced1d6fbaedfcfeddeb411962370302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304a9729273ce13a791cfb1d8173b5d9bcb0ce61d9d42bb4b6eac2ec018ff6743f56563bfa5ab32ca5ed6898bfcb95fc84023100b52d7f05f37dbc2b5b80f5ebb868aa85315ed0fee3591e8bbd6805afbf94a6b8143638b4a646e9cdde908c6cb9527c1f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f49a234556ee56eb8fee01aa13d9c17008c2822901e0996d5effe7efe2a6cc7a6f1323a8d0eef3b89e055ddd204f5c81023100f5fec846dc137f8a354919436699d30248939add5421e63c2c63af862f8cd69260e8fb8c85348d3429a1bcac458126960302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023039f77d13a023f972ff9828c608b668185f93d757ed1abe9c2ab202b591cc265dc39c2457ad9bded5653c7f5bdf70cc9402307f602007aae951c321e99bfb99a25af93b71180420fea98b946748736c9b9c491e84e233f4b6c16e6819d9e3966ae1ed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300e14406841da9c64d6a590f5568bd102f8b9bc00d40187c4a98d2b99eba0de8a703446c370da5f3cad3ba2686a4e62fd023017112d5502b337c50bc13008211ee20e8ec974bef3972c6595933820e6c7e882260c53b26f120e8e89a2e53dcf1f6a3f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ca9b24fbe88cf110d13a09bc3f9b654029579b09f4a850c15ab00a389d803d8bbb48bdc997f151a64afb6a8c952f0f6802301134a67a4d470a2fb8c479c5d59b0dab7ca1d3e38eed1542fae40c7cc1a330852f2923e0697818c7996a3fc45a0dd8b50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008992c162c6f83fa1fd018e5dcbad3fd09e75eef92ff86cf1abd4b2e37e10ab5037e067b62d655d402d2785b79e2a479802307235f2ab20f4f07e8020a8ce25fd7dc14919b880e29399dfebba6e5c6dbe7b59cf0ea132b4bd0052cee6f6f4e746f97c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306fa7afcc2fec30c275550d2f867e9f236d104ef6e1625f1b745ad1106eb58fb88146c71ad9fd5e7b736ac35ca9f003a2023100a51c5a801c8f25a24d7f8db301a128eac88cebab8b9c830e57ada8d8e9053b951cfb7a233fcee4d8f10b7d96aec9c3070302047c435bb5006730650231008f967a41b54eb1db8c1aa58eff9bc865e297a469de66717bfa2ad269e902a11cd23cfa9cf90be3139c13edcc6bd6a6fe0230286cc7516f07077a6ab8c163a11e615ac0afd0906f64a845afbae80481b9bf37811df5ad12290ee5bc94f155a71644ad0302047c435bb50066306402302a472613315a0edeeb46e58c17f8bfc56c9e205d99c7276b2937172f674f68451eab73b45ac6506bb1494e3b863c2e9002302d48e1f9d604a247bd8e5f4d105df1892eb4dde757ef2f4af014aa3a8c80fe257efae948844c3751decd6e050ea07e670302047c435bb500673065023063ed9308ce7d73c380527f3339dcd0a0bb925ec99d40a5d992d73aeab73dc8871b11c356155e6d2abb71e8c9c23b8eca023100ce014298c1cc0b13c6e40bbb38f0bd024ac15a9f7cebe8ec2c758f09f26c22eeabf53416996ab6e7b1b22bc402ca24240302047c435bb500673065023066d5236bdb7bbf19a3a2767e62af83d61211c46b1b32d4d9aa7344d8d68126410be7ab1484c9d7dc9cf371ea0b278482023100d14d6d4cd7c1e224cab3e8fdee937bb39e7dd602e60d712246b3bd5e057143e5883a803e04e99684ab24eeff5ac6eba30302047c435bb500673065023005645e6e8eda9376d996ac7651d2264d9985cd8f479f0947d6956ad917e0fa3969f6b887e081d937da78dcc5ec041cdd023100f8dfc623b48a3c1306a4075bab772da4417ff0ee1ea627eed408fd1b49fd9ad7194b4f27e779168268a3f3c67f2858c70302047c435bb50066306402306254a8f36862f204be75252e06c36abe1b0e7f17e7b0276273af935bdcff977eda969bc4cdda9789f8ed85b6332a902f02305807a350cb2c5adfd8947b0930398dc1a50c4a1f55c1e4bc0f0cf7130ddb8fa26aee8569e32f31635499f9dda1179fcf0302047c435bb500673065023004b38ad4cfd4ad54a46da6954ee764931a11ef004988899aad2dc891ac615d983b3ef5c451c9b3ba624850e2edfd31e5023100e51409a3b5cc09b640b831a6f1569aad6f23dab1c8e3bac7558cc24c418c6dc084d8ef5c888884bd4c7e272e749eeecc0302047c435bb500673065023100ed1a441120b2ac20914216fdadcdc3e4647c8615ce9d5759ff7c97c27de2149fd2483ef410daf02ad656602cf96347c1023001a51394c8bc8aa3f7ac8de68b4c6d5b8e33796b40742f6359206f28746b1ac3b40626420fcd5fb7867e859abd2d7b440302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023049d49143eb0778016e7a7a1de7138c5c5c5179c920c7655884a705504bec2ac5b47a3d6e5ce3bed58790073e0d3418a2023100c7143fd1f84bafbf0e330c8cb6bd1fabec8ff430fd2556e6008aae700da01d1fd9dbddf5c62bc3f7b389e97068ce368d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008eae9646c02c80de035e2d793e000362d7b143364038a1e641481c1a9a56ee3881fa69f026bc43dbbd36be795fc0053f023100e2945e1ca5b06a8ff81f48262816bf0defdfe5b1cbcf1cb8c4c6ed79cfb4e14887177cced20a8980f328043a5940d4430302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306a07cccfbc81c4c723090fa64986c3e96389dc749e9b06e5185ccbb6ba66f0232f75a578bf53c5ca66c3d95dfd44fbe0023100a2e2e012b88ba4fabd07872595258d16fc6b927bec9c4c603a29c12bd01fcb11d059559296f2fe2f13b3c3a63a022fdf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bfd5644cb2c187246860b449f284c1459d18c005a38e78c2499e932131a76b8323499c47736215e0e4447dfe9e8600810230769185db7aba1cd00bfcdb7e5d3f8d2ed68d0023b2da56e5a5b1d39a293a2ff37a989df4c8bedfce93a84e36a87a51bf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009ecf72eac30d653f349ad02960771f12678ce53f0abbe8f3fce43b3424c812cec92af0b62d63d7ff2b728d9c9014a37f023100edbb8981d28c32fa71bc6fbd406c6ca81e3c88ae91e1cbf0bc7233a00477d744eff48d7013831e13fa8e7d1ad39ec2790302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d25d7ed2727a3a1be4b030343de48089846c0e09cbd0be3aaf224f6f5f7237716f0e81b8966ae29e18b6fbb9be1c866d02302a637743aa0fb023e21a12fc9d6407c88f08d46619a0b8b4cd97dd2cc5bf281f54b94d949104f26dfb28cb85e8cca0c20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023012023f60e378677a552da333514341b7fa6ebbf119c35e1c61a460114e9070410f10d48f0d8b2674a9a784238a196953023041538a6638345f6d2b3535daebc7bf1c03c56321fe443cb32b65d630430253abd83de59c020c64ae8f3a3f29823a784a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f2ccfaa7f357d7e308eb240f6ce3dd9674ba6ac21c0cf694b80ed25243ac4552b0e86a7835e8298dcdcb3548af17e5af023033fff19b0f37a83a4c1feab54eabc86a4cd2e7e6df8180bbcecbb90a0d98a0831c2401f7c7dc34ba94fe9d087a4947e00302047c435bb500673065023100f89ce4941e7fdd238623a2d0f51fc60b27e08dc7f8196862f5b9067ff8bf4b3f2672c09402ea5021485b132f4af7a887023005a6da498cb982e8ae49a680efa9902f6f5c315d7b174a128669ab8c4195a1a26de299fa387ed2f569b5bdf50cb21c280302047c435bb500673065023100f0028566daba4ebfa2d31117fa6db61fb20523588794f5884f1d203ead941601469aea2a8e8f30fd72af77cc30c537e80230315bd02682a4bf7da76f65c117a4df55569fc9ed5f64a7ba8ff6b82e4fd901137f57c71d9ce77ae9872a51700ba661220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ddb27c3ef8a06a0d0a45485876d5850e5f9c7bb5dc6e7e886e923b8740ccfbdb688b9492d6e991b75f2739057657504902310092cd9870160cd01f4d281a112788fdbb8c30889791ed7826914a2ab4c3c91481fe3f7e849ecd04e4defada14078516810302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023000ae3e3904bf79c0e79447bde1d2ad38a26ace41e43ffafddc775127ed6ddea21ad962c06ecb9b7c65398663946ff3d9023100e8087c50e3ed01b22c01a65626027a6fdb6646397b9a10e6c32c31409ca87390673c62d3c3ee203f87127d5cdadbf3680302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100930f0e3d1a0d8356da99f16ca3398672dabd2bc79ae38fb50198f0cdbc0283f1db97d09aaae96501734f5b3dca5a0811023100e8f5eaa2bbb09c80edce0535c43f4c809fea2748bee7378c7d2c1bfa0ab19c57040c3d0cb1ba00a8e1b470a8c1fca0440302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023070e54d35104d211073028801704c6c029ba99ac093538724829971233313a90c86e00d3f6f2ff21687f5dd3e68ed568c0231009a40c0541d4395dfcd6f8b5845bcc189035e58a999725b10a4c565d6642ed972fea5ee97d1c1db94abf995d11c2c8ea40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023029cfce5fe1de894f792ae12f5741fe00da4cb947133fab3f73c3086252a1e0d5b783b89f9d6fb8cf8ccb1c80abf8ea08023100e509cdbfd4e28102e5876b2b4105a5a9d1a6052f1ece1b45c5094ba5da81eeb0cb18a6ad9617c79ec52a1571cbe36cc30302047c435bb500663064023023871cbfb305f6bf21ede4169e26834831e1135b2df8943ebc092d86ef45b3ec8d9cfd74cddfa9e96aeb9f098f030c77023011ad08a770867e83edcddcc76931b0379488259d4b61a61cf62a4f273699ab9b81059626c8bdbfe939b01095ce2c2b4b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a2112cc58e03d45245a2c2e3e60a56fe359d2497a6e7026326bd3c75174733628322ae3df2a61d03d891f3a9ab81be3c023100a11f17f5bd217afa3c9a139d4b0c86e2de7c1374d466e4efa97b7e210e42aeee29242740e0a0d8bc3d23edf5b053fe1d0302047c435bb50068306602310094016a53d57508e10b9c9c9e5cb21677952131c5caebd4cc1dfe009250a6cccf9a3f53934e4a6f7ae4c0a7e30fde2e2c023100a6ed43146a033e4d23e98a376bb79520de3bb702e9450140f418fa219cc84e3c7fe0130063634a0dc98b5cc7d4fe0b5b0302047c435bb50067306502301408981ea771c7fcbdb0d9d1e83e093602d64c6065607f441ef1d0ba27aaf114eae27f2d03b14abb2acf7112e7e36258023100f53faebc0c17b701664e629fe0c6beb275c7350ee07d82750edfef3643dbb3ed194c6a234e535b144d8e3a66d5f8c5100302047c435bb500673065023100b3251970a6bd7443391403acf5e3be197b05c28d290a2c2790d7c65a2aafff8a4fe0b588f4f79ab74d3b939b7104e77e02306c6bf278fcd2a53d77a0a4e6e864c297dfae80ae152143771d91e757272a0ac8dc11b5d77ca7e3bbb61ed4dce41faeee0302047c435bb5006630640230100626904d5b25240b7a12a57ceb42cdae197ba983c046de3247153ba46b02f26372777b1f9aeb10db79e54a15d6764902304cce7a8ebba01afa4705f8b606d6a56a4a82c16dc3da9fbfde071d17fe331196f147b9c4dc5790e21594e6469a9bceb80302047c435bb500673065023022e03117b706d3803f9052293e346a6607679f782c136fb55e811b4d2a528de13df7d1a41fb9a382dee30fbbfb4ef98d023100810b231a26ec010671380cacd9e5d5a9c6227eadbb3f90dc9d08aa49ff20f0a6fb76c5c2eb28571fc2f4117826dbab750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307c0f8acc3eb935000857e3e5c97720f557f5698190b58d4e42260b732cd2565785216077432bafa06a280b9cf3a9dd7f023100d4851c1b63e932cbb19eebe704fece9ef8dd732f36268f71fc21911a6350e7ef946e45e6959e511be11743584677495e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cfc3980e5f106949bd6a6c0a9c0ea8dafa9bffd464583616d1e2b71defd1baba5fb80a26d4c4da5b8ebd6775423dffba0231009d1d9ddc2455f503cf1cf71ecb79ccc7241b1d4a55565ec9ae1c6decd33e8f174270ad2d2dafb27ec6822f84bbb505420302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023060b5b9ccbb73b3a7e4938bdfc646ed257d39f07c08c2af1af477847918c8f2a2728bf8d2c56ee3493a51da6a44c91758023100a88711e4e8d2e68235cb5522a64305f07d18134c9df4eee168b2a90b12c698301ef063a167a4ac38a734b6992010781e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300795f2d1f5fff6742ce2f42cf830a11d9bd8b59d93e6da38ca7e7088951d012f3c6eea283b6ac0c4f8de21f781f29bf4023100ba102cf1c4d7e0ee50075a8d800cd14d2a2bc7619c41c55fe40eebd76096ced2e38d84f2d0030192053b3afcd1c6e6230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100edde1c5b572767732fa0ebe1d89565e3c8a8aac1dd2830833bcab760eb1184a7f85fc9106aaf7c1e73b530186f91834202306163aa33cb353fcfd02b85b1eae67f3e1b2f3765755f4be8b3b06e8f6afb46c8aaeeda5379246111446a4a60563599e90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307ad4d4aa25ce66bbaf83c8d8e84e1eec5a8800c714f98b8f1c760079dee839f95041b6d9f7fff46c8fcfec6115ef51cc0231008e7432e505cfcccc4d7d063081af952695f2a75e8a29fa438216c1cce65401730fd24a52abde48d65b7a579121ad9ad50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f685eb91eb65f51a90340507f656c82430846ecdd0fda8bf0db2f3b1a761be0b7e4a9fb63f722a9baee17f6bf68314c802310093bacc8e317daec2a7ad704d78bda21c09e97841ff166b826f0faab50cd9932b531e6b7ea0b8a9956a1928068dd0ec5a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301f6b49b037335c452dca0f3ea9056e9662dbbca1bd7ca916b0ad158f6f445c2123dea2c850bf956aae50eeaacad33b3a023079859f8b95d07562b33a8b082168568f6231d6718f5ceb27847bd202c7bcfb5da3686d7d78330fe2856537aab2226a9f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023061dfd0867bbff805e6593d5f68d1d1106adaff3f80f11bae607b51e4630a513c46f0c3f54a10b1fee2e6001e3fe17e58023100fdffe9734883b134d444fe0805513ef96c965e31358cce511219cc0bf7c6707ac0e27edea7574b82a2633ba004f4a1870302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307f7548428a8b552b6def44a49885c80a9175e941d4434b6764695b9b9346daeea9bfce20de03ba4eca3e3a377de8cf9802306336ac54cf458bf36c76bf4949bafafdcd36d65aa3652104d93fdb046718e93e8881d63b8c6e114e43f582797cc832e90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302a97b033893da806e5e4f0b9534f4f8a49bea52ce8935ab2881e1c0373e00c4b504119e32f678dcba9579ee3f8967d5b02302d790e989f769afacc9553c1577e2cc7d5449edeb0fbac1b5b8d71e37201ec61d6506039407d3248b400ee0d9b44c4d20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306bafe9c102b7184619c2353f770a175feaea861211c36cecf906e59ebf7f0bb7c7adac9ea734e19751501310fb667e40023100ad6582076001e7d381940b69e30dbe9ddef306583ac5e28b130c96cdff3839aef75599aa97409508f382fd6b374e8e760302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f41ba50138f0c9f3ece0044454eb2c5c3fb115c3b81f393a14ac9bcd5765010702f2d48e2c84b3033b0ab0156709167402303b4051eb8b89a4434815dd5a2b64b87542a955dbd664b747b459696c7642d42af302c641a3dc0033dfcb1061e258b11c0302047c435bb500683066023100d6ef3622c8efee82c3b91043d162fe59ca586a6a459c1099175c28c8168bebabd233703848ac5c55c214315b7d48fe99023100e1635be42f6f79e9d8d62e2fa5fdc0d05bfba059402bdf3cdb933f4ea2d1a562625db0c38bcf5797df34af4337f733e00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023030547535d7edc9d72a472f676e6e76517d7dc02fed6b885b740ce4122e6e6b8eadb8179b9844df5bcc2168f87ffd1df402307882c0c2a45b21a4d8cc0c96b1800d1139bd14c15c7f59ac02593c8f3ac49b00e1575caadbdd163c6f1c75c319d297980302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100929fc758d68e84d014bf4586dc33bcbaae83363ea0984a92e3f35090b8376bbed23afe13ec2c9fed4f39968d51481858023100f4fc16d56bd58d27ee59a209a0b67b9c055bde1a74e9212bde746fdd2d70c3566b6ec7b95abe877220844bfbd6a3becf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023023e34b1753a9e08260ce1426fe93900f75ffe5eb6da2b416adc5875453bf1f4403959acd3a51a6fba76a26247f9d796e023100993b2b03bdb57d1dca728cd69a4e3cd756086d131a97db55e5e239295df13b1f784efb62fd4743c2c2d66636ee5c44de0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008d0529fe4c648c4ae2b8961c57df8fb001dfee7b567ef00651332cf40ff963981584d6a3b7b858fb4ba98b9329b2099f02306f3822cab2df93f61751aa7a7b038a93dfd69ba9d0e115f8e1d2fd046777209f0542e9bacc256195e06635680c889d8a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c35a0583b845b86dcb7bcd33581b36ef89d2025d7ca561738e2ef172db3550529b3ff29a4dae4b5db4f795d20a6f765f023100da66c6f98ba55817ee00d0aca00a454dcdac392177eeee6dda5fa774f8c4cbe1fed8e42870e28ab607b0b25c1676c3570302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bbb00ba52a6f89409702febc9bd9875065416e0a3823a7e929cc361826c0cd614f76643d04ee41568df08b855775a7850231009d055525763050e10652c5093b656d0f7e9b5794c7a1798e3118778fd51d66fe86eea9c5a728c45b81eb6ea460adb9240302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310091a4530c25a8b2b721b75aeb3f19e8c4dbd4c01e89a273bfe848e3fe1604587cda18b297392a251bd185463649d13847023100ecad1ab8007719c4ead8b29f64414a2fe64e67fc0ef628a3c30bee1f0ac73c81b2f6a71e29f4dd4752956ceab39697420302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ecb8b419aa08d4981a5c1c3095491263996b99086736798ee3922883b82d9c08a5a897323b569e3383488268124798c2023100bb7f735e0653d1093e657da0fd07f652def4601f3359bddbde994f69548d159a95f5d618f71cf8c8d05ceb4ae546a4800302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023070a160f62481bc526c5a2614a4144923e5bc723b98fba4b55ba7be2861f653bce84f5319d846087d32cceb64d2d6dbef023100d1fc003cabc58411952c1af00c3b7fe915c0f8a5e65202c2a5a794d365f6196297187c84076e337845faef545ab967000302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300c0a4b2eb51e3e44b4c24fd357be6bf913f0f66b5a2ba0bd37b61de51aef55cf6da355c938e6ec1aba3dd5bc4b0ace1302304a05971b62746ccccee164e2239822b5cd010f8a28d1c4d7a8ec931ceb9106ac757b8848a04729264cb7cdc5c17c65ef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230436d2b37f701f50e9960995f425258c865d2dee7f05ad29e3bfeb6ce74e2e03eae02028c986d5a4d7dd119ce717b97e2023008a48fc21f422473345ec695a26ae386c86eeecf546bca0505d01a88e1b58ffddb587d69a029906e84f0fcf3115ef0a20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310099ad04597d2f4b17464fd0c642e173c2e0abdf2648d259ca062549ed67ffcd0305a93c436865b12cebd98e5883a1296402310094cf84df72541857dddf5fc722305cc3748468b4d0524819792f174e4c912825967725581b9fa389ec8201a2fbf06d670302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008c45995e2b1a6d92e1a90d546d80770c4223de4b25305d87346d0dc1d210432f1e379acbab2a034fa45dbf24edaee478023066065e56e17d41516ba1f3beef7c5efd8c157f33a507636eb841b03e71c6163cff4f8c1b144dcbb3ca82cd26c285ce500302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cc682c673683fa187b000d6582d86a7cf46aeb43a7eff49ca7889ba10cab443e3d6026c0bc2a774ad36517386f6d0b20023100f14e5f899df8a6417b26c62cd346964914602997d51411b702625678929910ca2a35d712dfdb878afaa38eabce1225c10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d4851934eabc420490e81d036b8336f1deacd3c6a941b9a1bcefaadb3a83e7656b9947fbdda8184c28892491ed88327302303125243d14ff7e9a2302632cf8b213bed5861987974ac8b9b100c45100a24b6844ef67ffe16e3c884335c48f1790c7540302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230235f43dfd588472fe4507136a8000cc2e168c67848ce8f4475c9d8357db5f9b1512409cae33033c55976a8a4db94d8c802302186c099de96cbee990f8f0e4372f80f06e70d56d57fc855dcac4c264687c929bf267c16531c64c573f2ef883065d7030302047c435bb50066306402302aa1e56868922e367f44fe6ad38dd9dbf2b19a52adf934781cce487aedf6e2a20be9f310147fa674f3aeb5816b3aed9a0230296a809e0e5d1d60b5ae610bc977e5e08faa0c8d142265cf19aabf1fe33cea01e2ea157be358d54e1de70a95679a5bee0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023067d98e4c2b9161aa55318f180888ce312a605b16fd01b69483773130d25a1009d99235876bc72caebee551825bc3658d023019103f3878fd3c6d50aed6e352e1225a0a5617d1a4d02b562ca7e82839c117b76a153720af67678f57cf487d0a8a6e5c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c040a13de67c9ce1b38261fd0b226ba07fb0744fae3949741212e0f383a57102986299fa749c6c79a2b5528e1cbf301a023100b1300dbdb19958b02c50b051a8f73244dc461fdaf6f31beb5ca0f35e4cf08010d8b7d4ab10afd9a9a060050f129d22a30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307c7e9bc2ae587efe47f728baf22db1c786091954a794c71a39b60ee1b37236bba2d4120a62b3362d15f980bd0f9d53dd02301913e9c89d709fd7a2f7679fbb3c5b1a6f8ec269b0c4d408ca9c731066eb5aa463c3f90dc9cf200abaa1cbd02fda7fd90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bd59a1fd0001a2fce71287c44cc15e33dc235a1f88e86aaa953097cfc6a6a689486dee725c45c8db23b26167699a07e4023062a52cdc4f4cf776aff00b9eebb9ecac6ef7c16e1b86b017b60ccb1cf2328477459992b55fc73bc6fd02ede3addf0bfb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310089b587838c676f2026414fa1feb9020aa25d65fb3c4790bb180a258eee261d76d3b803a5c436749857e38e838a5d694402304c94cb5cdf8842b73ed3251c676529c31698d1b8b60bdb76020679da75bc4388b0ce9d471a93338d3c2d812c2ec8f8ca0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bc4e1369f5e3c7b2f3bb649bf3e032c88e360a0c1490a2f4fbe08dab623bd0e837ee609f2c4a539c005ded2c6085c78802307fe2919577e62c0300d195f59d5d5a8140011e32833e9c206d2b8900a5201835049639c74eced58a5f30fce908dffd0e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f57afb01f87b45ad9011754b67cc2395d12b3f8571efc6827606f80d6b7760880b11e16f9bc08172479e832321fc99aa023100f67d07f5aa1048ea44bf3d1f27355f64f4643ba322715901d0b2db4709285b91461ee651df0c436137c17d4fdf6d80210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e1999e6491bb5f1fd656910357b80b711f4b23c5792304b8ea4f47cb559c39d27be2fd06ee471d0e60d6e4c85a445acb023043ead821dfd939a79730df77ffe9442e774d6d63fb90256631c713f3f3662a56c447f2126c22d9ce60b977cc3c64fda80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a75620856a3702ed5946f814bd8fb1e21a4e4aedfad197d2449e2c266dfa3bde7741fba52bae41456a654dd2864b1a55023100e09862e7ee998bbac5fd1e34cb32bfbdd4d810b1cdc012d03bf1b13a6e66765e83fb39e0711b297b49277441e01283be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ed5a723d5f78a507662d26ec2a909f7aa75516e036712e6cdf3dbf6bc8fee346ee7f5ec594d13691c07429fcc6b0914e023072e38c2df0ade58401d3f5d96e76068db6da9228013f4a416bc812f0112ade337b0b59c5b3cbd2537f6d16fafb5927fb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023048e113d53cdc823273ca71d5ead4fc9366184b68fe32439f86b3db42052b590cad18d805c6188b962bd0d47fc5b04d6402310097593ff048350cdf3c24adcd170ec4a6c0339b01cb2ea7c72f5dc81323e0503b8d5804adfa895f53558a55049fc24f120302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230522ea41c000f7bb160e3aef0f77ba4a884279806892dc7d7be9775b94f24571d4b6d8466c27d1ea35432da6e5b716f39023100c01fe2c174e0a32b8d9985552d05be35ead02e385137ebf996ce7518f86134f3039edad0a654629e3107212a27714e1c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023074aa1522fc63044dac4ca1b6aa5b0c109d2a31ac2031149b7c454809b9a5ec65a8eecb9bad5c1fb9a95987136878f4a302300aafe00ba141caf43da02bd55ef9d30e34b2e91672211484c1450befa961611716e6aec704c052df781dde229291b34d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b03868f54ba277a0e434700d7e5b33e9f8fce1b1b7118a27c2e1fff570f31528a64a073ac2a76801c29e251d98b8bbb102310092a7ae89caf13c9acdadb9c51ad3dd9e2347072d5dc178354ff6f043ed3b65f594ad991941c7f3b14b180d3c0e30d35d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023054aa185a0294eb40cfdf8f307c50684ad76e799e0ea4c542b8fd5fb741b7a98742f462d1e9077d87b851a790b27712ec02306d353f4e383cff755c53264be853888ccbbda24388f80fd772ff15cdd92deff23cb4b31cacb391051119c67780157ccc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f5c8ed08bfa6c2d6f40740b72718ae35de097ea36f28ebba376115a8e3b429c8545a9fe56c4cda833efb4c30469bf14002310087f16b57002e79713000a060b05979b842de38aff4605d4db8f3fac0444aec34bfaa91909d8566e4fd93ac080daa7bd30302047c435bb500663064023059375f8680b3ef8649911486ff3a879792376173c43ade7477cbeba1197b0164b130ca0e7e32f62268732ae886fce0ec0230555c942796660698fd420cde91050edfd230c4041d492971096d09cf172cc83323ab00700984c574c9c8c6ae1408c0780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009af874cea484e8daf8c0b6888be3163fddec8a7e46088ad96d63ac9fb6e806e9738a7b5af0c55a32c2e176ae66ef9e2a023100cf2e0e49a463ae8938ee68e531e7606cdcd57b2c4adbdc155a20dd3361f166ca78de0926eada409bb0b1be005d7c51680302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fbf332b1c3e30e92e907fd0a058ad36e2084fd1f441169976ba6fe48b0c383e5afebdecbacc44ad8185d827ddac48c24023079eb01b986cbc7f8692cefe48d40da79e01546276986f5f8614988384145a3a99189f14e40a690da2d53346fff70fe3c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305b0b9b724c0c736d9288a5799057e1b44c402b37ef13ef8162cca1708dfb50d627d17dea15395d643d3f0d717887add4023100a60ec81eaabbfb76d50e2e23e58903d6d9cd5e0d6a938058cba09194730298ae9de79205ace5b18691e316ef991463be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c0aa44fa116af34567169e04fe4019d427f4f50d72d7329a4c661dad9d67b71120ad2330468277a0e31c492be89c3d4002303dd50c183f4a6d15afb27b48e1e1a4d5cd34b9c8ac9b3e7c1f5b3ad7b7daac0774e58e5e8f9b271c05621c262f8fa01e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230224554233ad6192148fcce362cf67924f0c71443e85545eee3fc555735e209ea38fb63657991ce9e2d236a55116b65ae023065b0e5658849a62d0ad86113979070afc6de5bbac96672232cc238fb09b718796e10af2c5505cbb6c79a8097131cbb490302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230234ab7bd8a6cfca54c16965b716493c583e30ac42a075dd210f0ec1a5cea4e54eb83a16c071c49223d8c398cd522d685023100b4f25c81b304eed78a2a3b4ccb21f0bbb564d4a70b6a06221579d519136876575a3ca3c71561c44321a50054ab1884be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e7b15317bc3ea7fd13bec76828c48940222a009162b2653de01d71bb6d9b9c4fd05547a4c09c5cdfc9941d78a8e2ed7f023100e7609f40de32dafecb4428d8aa274f5ae482fd69e6e804a6537ecdf581d2a6c338ec135a10ea051291ce272536d1381c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304b6bc9fb1e8989a018f63bcd942bbdc63641a8048e80e3a8bafe23758c1df860b95c678ad55d12fdee9f5902d269261e0231009015d99007e02df5384976d473b4869365ea7f5383888589c17baa28e6033394eca454eb4b4549629fa2566331bd221c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302c7f9c4f8b022348e4d71cc2d5df1dc9296bd1cf3f8736be8932e3208f2439e8c66f458cd2971ebbec723fb21534c83902301882d819fe388721f1460c41198ea80d1316a6aec0d8e00dbf96ec37c25d4cfccd9f15789d23918f31a50599a89b46b30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023034105b96c551e147fb7e3c36ae0b0e6b557b1088156f21e077fb683e1e6b4cdb2baf29cb6fa185a86daddc088a08d243023100c16d7227e09770df077b438df1aaeb9fc8d13248da6ae431b65b50f6e42a6b9e7e4786e877d0aef15ee3dc151afaf77f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230526f414e897ccc170de15ce41fdeb6618049f4bb45d53c174ebd86af2e71469fd05522d28ea94a6a7602cb664d8b1aa6023100c00fed8b53eab3687d085c5118a6fd7811e03c56db3f4d9980d7d51fe246ad66eb58d2e550e5ce98a831bcf2b6ed67c00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230407945793b8892712554f55c00ce6eef278f337f5225659f40f51aff8fc01d22410393f41845915543850968c54293e0023100e788c3c901087fbaba64c13e6df6ebef432abd540411dfde345c80b3127cbcaeb4f636ef82fd0e4104abbd6baeb938780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b5061d331a852fb0932a4b5b1871c05e6d61c0806c35df73a43dc02c3458a1a04a3542b69449928ea52e7b4366ede862023068a4bf7364afb81b0138433386f918f69e8b3abb46e2ccf2a80e82d460a3c2f664a6eeaddf4ce8bb9385f2f5f5b7d8210302047c435bb500673065023100d1f41fe574c21e5b40bbc68daedaf0034919684ced1b02bc95af12e6eeccd2b5153a5a12c0a10d60661e21998cfcef4602303f6d859171471db93fb01a609bac6dde2b49fb5bb55a8776e6071f4d4faa425a0d2f5c1970ded9a99358511ec1a5125f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a3f5c39c503fc353b316efa9556fefe3162e81870dcde3c9201a0e2c726c92f1fd78cfda6daa6516acf668ff9be0a96a023100cffa3c39f9eb07347334eba3b0260dd86d565ca6299ebc4f199e5de360901f5449ed6289a7c7c739582c70b2b6537c660302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023052574c6d1e611b00726c7aaecdaa5ceac164ad925b198f23913f592e6980e03f7a3baab7191d039ca2a1e4b578569845023100cfd42d17c534412c7f031a43eee883d56218fa3316d63468c6f3420b4eb3140945908514d4d7a2892cc7543e21093ed70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305b304e9f0f9741dc3edf50783f665d0bd3382cb3f31eb01224b39d70849a9399a686107355c6e461bf0c3631bb4ffe6c023100d62b8e5903b0131e1bfc0deefa85980bf94ee2287e2b29f742a063901b535a69d7521a49238c729cc7524d0667b84fe80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f4e18d2160abcd4f488bd3aca5b0387e626c32cf0ae17a9114d7d22f6aa76cba0c1cd1029cfb385d7086ce274f1b7ea202306724bd7cea03d648fad2d3d53b9d1bf372fc764fdeae5300113d771e290cc6ffeed9339d5ab9325af3dab33d9e3b2c590302047c435bb500683066023100a2b3ce3a98bfe6abaa9f38dd39e6273fcfc0a08e8f306a39b5f52c661b32f359f7884cef02445717cc40ab1261cf6e5b023100e19b24e7789ee2179a441fa156f28dafa424e186739190b64152b60120b679a19763b3ddb8123f7f714b399cd23302e50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230319acfe05e85fbeb6f66b7e808d103d08f9733f7b91c68f2cfc1b4122186c094c02e6b6d4c961b7d9bafc31dc627df55023100cc3f4a7021c2c8e3aefb0e0e6b56967d06196c90e61306c9573701c3b117a365a7df6cbd088f9aac42b63512c3000f650302047c435bb50066306402306626939a0effda82f61cb70d145a7065f7baa37b78c7e74f39f649d3e3d0d3636fbbbbd9c70596dc6f49ac8da7aeb9f80230544749c6a7445f7cab9633b2ccaec36ad0e0b5845c64ae7538c217068dc298643f6ea1de2afea0b9ff344540ba83ec7b0302047c435bb50067306502301fc529a2f2d831392410b0fee07ac9c48c2260eb30f725cccad1bcd01caf9f5f466e3cbb95914b2dd399c17bdcce2899023100ed9ad23959cf3639906abeb3255a64b8f7c7292a74031aeda6e834abd129f723a89253dbfb1920c6448b90e51dc47bea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302f61f846118e0e9449c2d6299deb7f752bbd27be8e9d05105464e76a880f7dc8239c7aaab37307567977e306f8c0b454023076a772ed63cb517bfb950398b2989754906f18b8f925225102da7f2c33d97f36c35f8cbf4ab1d5e60e12905231e207690302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305dc77d305592ef6bd6be596d16e9de6ab04e3468d7b539c505f3d260cf6bfa9c55a2b4ae34865f12e99789008711a6da023100a71eac534af090b020a1d87303f643dfd943adcd1f5796dbef8f62c39cf514f0621a7f475dcf377e2959addc091bf8d60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304acb08b529d2ed3775a2dd0853dcdf8b74559e17b55fca8f40caf71b27545c863723e3efcacaf1e2038cbdca428441bd0231008999b6e28db175597d40e31d36692e1f2e6610e4031fbfc46cf9c0d0c0f0a1f4209fcbe3a94f0e59faf2ae46d2d27f400302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f5bb6449011636ffc34740bea15544ed89afd62731cd66cd524746576ae534727bc81aaf93d93b77814911c00a40eb6e023100b4678d1095a0dd8a9c9084e36833cbee22d683441709de2811157261afeb3e9b7edcea6fd4a909ece97e87d5d4b937190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d4da4ab367d5f2feacf3e8f232c20581bc622559916463658b2092e2b97483e0ef6420c1b0bb053a443ea29e2b17b20c023056686cc1b5ee031809ca2f7c7faaaabf1079743863736fc5675f32ebf16a8bd6dada38826d1ba01cd8f15febcd9cd0d80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306f96c4553744b88a22f2aeccb9981df7982fb89bffaefcdfbadb8b1ce687e64fe94f411e106230aed0477bc3b9f1a9eb023100bbf9278e52db24c032fce2d8ed2561ff3c05ca352dab66630b962cc983b13f3e2c622e953c0b9883771e003db58cb7ce0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230541664fca984ae1b69e27fcdad15cd8fd59d4140445510f701674851823bde0ca394f6c7ea311ad8e56eb619748250cf023020dd690698c89caceb67fae87794f606197594121f9a9d52897be9bae36a3ac56c2fec45dbe92e54c085a3871759bc9c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c9943bf1c7537591844cb73ac81dd1243fa816febc04414741abd143d1aff43a43a84ac4c80ef04ff47c1a40dcd4e6e5023031c8503a3049fa68307744b83e0fb1102c072b684ca540744c4c8d47ddf93afac9409bda3d93df5afb7994f2690391460302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b0f4145992d94fa2235bf66068541f9db36827c7170be3580191d2aba4bb77c84ed801d990eb9218b19a9218a5dca92b023065b9e480c9d317456d84a13e794132ef3cbfe7a8704311fcbc2dd8794623f5448a2d87773772608e23ee215f7a749d7e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301344d917723a6d42d88189dd3e4326da9bfd4bdf82290a79920c1cb306a9ec1364889c3e1b7cf67211d5c9a5a782040802302369df097f44e1a22db5f53990685c29be05d9604c6e2534b3590778d6e9162929f40fafc11ff959209feee8cf4c93c40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306d9e1e77684d7d51a696d7dab7d015d8f058ba8e434ac7314877c0c7526f7e8fa30e2d90ec95d7015d1da1312654a26002303dcb04fcb8266ae286688e065db789920737f4803f3ddf24dfb7c492e46a5c803a71393e9cf15f762a73ee71fd58218a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c3844cbf6efbd7cc4b958a16af7a4851495bcbbc24fe463ef15314f225132aa707f8cb107b9cf72346684e01092a187c023100d2ebf5f51f7c95beac127939733f3cc9f4fb246d24bc51d8eace05e9d18b98da63b9836e371e1d1a86a109198ccf4f1b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230111b5790fdfef9748451fa6012bc339bc9b73d970f08b4a0dfe918a46c07e9a6da8570e931f2e1ce38d456448cf5ef0d02302645a7470ce3c0ab8f55e451a0a087216af8e650c053d27a96e7f3e9e07e15cf71c5c80c440b48fcf21882889172c7600302047c435bb500683066023100de002c67212cfd1cb7a3ba095502281303b7c8d98068a9c88bc351c4ff3b89b09364e8de97429f2b7e86f3e3059f7ac40231009add9b6a0b1809976545ce02e7c479c2b2eeb1c5ee381a2627b4862c0b7f4397469569c3956ec0460891ea1cf5d3215e0302047c435bb50067306502310083c3a0f463c3cce1e0d42a75fbdcc333f704b434d3a9ffb29a5ed246798a39c6795a4801578e53b2d50bc247ef55a47d023040e37dc470793129d74b24a6b725a47d50b1dcadface9455f81c5eac5833a991c5d5838311baed74ed5aa0cacf2f11530302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aad3c0a2b645489f0491e7b724f2abe114a2d302338f3947a2f707125aaaf2ff9bc8a7f55972f8a984703ac35e4168170230787ffd499c246318f7a0e5318f0bfae4b839c9a629e74bbee025e3c4da0cdc0e1b4e9bae318c3e26da0dca4e19f47b770302047c435bb500673065023100f06e8b870d33653612157d5629dfe15bad3744180c0e2d9e29f8386dd96d05317b8bde136fa1af370842bcccceab6ea802304fb253bdf94b184b9f7140c2437d05416c1b2bcba86bf19bcc8e8f0cf858762866b27e909a7318e455626bdc6e71b13b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c164100b2a6c2691893f05b5793c620660e282c1d24c4b0c7ebd70da17a60cf8feea50420178d17207d0835d42ae2725023100b9ad618ec544d6c07f4abb42ae6bbc735291a487e39c79f9eb99f5e1b16ac33f45c55e747a3e3e9588514d7df0da43a00302047c435bb500683066023100ef6e860f2ca1b1ae809d4f4fe629224980e5ec99c46d822df32b42197f0fe38fb07cac1cafaafd7c499c269171175c33023100a2e76fbc976761a6a1e0b923f2a50d947f802f387bec486b3ea4aaee0753a836d771900e59587caea312fcca54cff6c80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009405fc3a5e205154541fb4caf4a1efbdb2b985ef8dc30c7bc71910fa69379ea7bece69080c48fb02377c5e7c3290080d023100b40fb4968b5f351e891bd21ca1503d831c449aa007f2d12579075ebbb0593239c27d1e4675df2301cdb14c34955771d40302047c435bb500663064023000a9f8af788f3110f6a16148f5d4037378bd81480df9f4c978514c926961763e3724411691ab3c02af815de16ac7854a02306471433985dae653906e169d06f65c2ef56bd7d4709072c4ceb7c3b6f3388f7ac86fe7dc2f3d39f0099c32b44506f22d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100def45557e63ad6f42dd408bb8344a9f5a69fd753f9f0dfea65caa9f3e0f46d9636ee26886411e8a2e3cf9d335dd2a6c20230525b350fa201bff92dd8cfc8e706923988316b1ba5523b057a7ca093102b11d849f052fb89bc66db2b857c3f39fcfe320302047c435bb500673065023060aa30f2bc915755a555b543ebcf2f6347f64af9a93ef9aa05ac433b29cb1de17dd7b8f0d39fba891cd4eb959cf5d840023100bcd9f9fd4a7cca184aca024d0f4a099eca82ea23884c92363687520a84fba63db13a16b00971faa3d5c057e499663f280302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230552e0893e3d7d3675ef6fe9504c2aff3bb53d56031f90db2b549aa5c71336ac553abd2ad252518e6b36a063130810827023100b1bac7f349538cf5a1f213492c550c713154061d9aab779e44a8261a8790e68583d3298f3d0b2b2f3502e6f9f6677d760302047c435bb500673065023004a333007f8b62f2e0f41dcf46e8c09bc539691e85c102966e0b75c09dbd156f98f1c606353eb0e0b5c09e7546228c4e023100a2f62aad051d002128bff3603fd20c3076a07838a0b0919b95d76fe7d57b8a940a97100c0ee40e663bee07a3716011150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306d511236c1392c5a8311eac6e6e5c7f6120de129074f04f4ef1a5c508221f6d780fa1ce060b9a436b51403700d06534f0230796efeeccd96abdab98c99e4115e7cc8708378ad71382488c8886369a56fa7f0627246f2e1966b0a1d1b3fd8171aac910302047c435bb500673065023100ff9781b8ca189d49d52065fea333e9bc4d1005bc77b0dd2ff3a4812b53cdd9d1a03cb5d4a9bffb7486d39beb6fe9665602304b141b7c2663bced8011d600f9778574d673b7332dabdf3bf4cd39be1be3bc5170bd3ed6ac5d00888e6d5674516a8f8e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bb1e0504f6bd7309fb384148e124d4fb4b6b080b615fb9b6a612c84351e9b9565e4f23013cc8f1a99a6249977e4c9136023100ce9902c372c11eb26ddc5387b435a49ccae533297c4a5f7932683c3238d61d1d67e39d2841ce82635b4d6c605d19c6c30302047c435bb5006730650231009286ea753a63a13c64c669ed944dd87cce557f27dede9cec4152df4c0916e0a8c85d6cca4e6a4f80e2ef4d1d1fac6f49023027277ca56758e30aa8a38a99de237d914c3f45813c376b716e63bc451a8e560c16d759558953e915f04485b5c7f685dd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a6911f5af55abfc8c33d82227074178df7dc2de465c1cbe9fa32253a048d8142c86a89a549d55914a56c88407eac969f02300885560480f6fc20282cca7d3bb676f1529606d001ac04e5849714809dfd523378d2c73eb77f4714377e3786539bb6350302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023011fa1be2ffdb0fb6add8f55cc692ae3422783c358f88e6df93b6964c50f56009e6bdc47ef1ed9d314063b59bcc1101dd023100e31a521b77c1fa7c038703b9888f5428eab63eb016cc6afdc4892b8ac7884016cdb50b338dee7ae2a1897249294beee70302047c435bb50067306502306c4f61d9bde98ca2de9e3198f644e73b10bc85ffc2e971bac458ac01b33366dc29b1978b67fa6ff9d56e839ce60d4361023100a72b61c05f3648164df97df58ce6c37693c8580f29e3dfc97d75d05923b6cfc1aacd0b94903a1e40a6cd07edda546bc40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301bd13ce13492ac8ad599b060fd02bf2e08d6173dcf4a7d04879c450c0b8237552a504bd1e3610f206d1d441f4c15d744023100f03f0aadce7c3437cbacf2494b34fe9045d713289659b4cb7e871d2144debe8ee64f3a4a4f5b02bd72ce802d89b133d70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301eb61f81948cd8140de8e3f1acb3eae5d23f3f3bdddc08ee7ef3928ee61dbb72d7e9a91d2be1d28ea50f59b37880bfe1023045dbb7ed8c963dadb84275297edd5898441f0fe3fa8a6f6b9fccdedd1392b94a900a31b8c2fb7fce66ceb30d7a3b9cd10302047c435bb50066306402301d46f94d5c2b525fca5463dc2baabc8fdd93ace63d9594189194ea645ce52d0bab37fef1af8a58cf38b132f9869812be023042f8966cfc7390649659d1ac85e0bf65d14a05ff3aee66b122a8065e877f3f271462ed86af9ad4494ae0134b44e063670302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230679d319586b8650f16bfb25781caa5c177f33bf08629d0440c4ec4a7ccdfc4f26c08b43ffda89b566f51a1ec3c605a5f023100e99df4ac24f81b7c7b81797b90186b9953ca357dd05283260599a3ded4e41b56aa2c0d40ff42dd1c13de14d1640b04920302047c435bb500653063022f01f35b9008ce7c8d37cf24f6f2e2195d869d2115939e7f65f27954ecff83ee367525974f5abc4820d25240e7b47d4202301bacb82490db569506d22a53f31ca1f49c05eb33fe9159071aad29824cce72247115b50a4aa6f29b968922e1206bfe6f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d2fc49d3d6adb155882b4e12133e82b32bbbacc2ca306b75fa907dba087ce763fba24cca783c675db384776e63c3079402305a314b14a7e4fff8380e5d1be4c810d8dee6121539015cd7fdd1c09c2cb04b58d213ce40408c51d2e85c09c3a5c9754f0302047c435bb500683066023100a84d9e55c3b33853b3e135f7214a892207df45f6fd998dbc2e169f9a4649463491daa5be2074fb9d39aad47fdc140bf5023100bc48a319744c63bf9dccf2d7039ac3964f1b3666470f8a9464fcddfb27e1aa833caeb8e4429e81f559d5fa59e958a93d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310089c77da8de1cfd6c039f1f2b35814b2caf8df7008d464b9ee9d6c42f45a03263f77dc3c4bdb3a0e64cf2147e76a13049023100e05db46b2043325f24863a61d13f2d54405fcbc33d163a08557963d503c81aa4e81aab81f2eaf5a85191bdb9f01841770302047c435bb500683066023100add009516a7b8937dd02ad2a727d61fe5cee8a23b6e29b0bc86f0ede12b58de432ac264d0f8ddfe5f5f797e0f251e1d7023100c69bced6f417b9bbc2b56deb72489807b5b7b300e8fc38fa365706102aa564b28cbee2c27352cb4368799486d038810f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f8b7f8b0b4363be1dc3b944cd64b2d7c902558a26d4d75e83468f0a292c35268fa1817f4c10434f50430abbdd264d7d502305919750ab85942cabbea310f42517ae24f9521862d7b1fb067d28eb970abe86a71422864d706728f3ea356ed2b3f37190302047c435bb50067306502310080ebb0a5ea49bd10e4900656dc90b66c5f0f9f80c34271060da3e4d4a4c837c34d104928a0626acd664c7d629845ef6f023003b520dd22078dc6869adb929d87a256ffae799a2f1508a50436b6582ad333812b6a7f3fe61ff203d936c3d93eb21c2a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100acc478dcca1ed0dc4569314c688c48189797eeaf345f8edd0ff138ba7856bc19093e7b0b22d52fa5dd4110c2bd741e2202302ba4246499a71f5039e0aa7fd16e9375c3eb0731b8e2e197ba4aa4ebabe70c9051e4aac6d15178e7089b3abfa4836ca00302047c435bb500683066023100e593693750d14de71b5b1fd6c6dc0d839885856c50ef7f01ac5852901c6735f9290f78ffb3c4d3dd06545eee800032240231009eb87e0b8bb369bfed5b070a61b3c034b24464722dd90d9152abdd75a74e6edb8f4e3bab7cc40184c86723e9cb76bd470302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305d8838405f234254cc0157835996d6a5448f9eae8f82372eac9ada565d31ca3514fda2a0e7684a85aa2502835169a86f02305a27d9f441dd29b19fb5b13f2f19e1564cb6aa670fbc637df62eaf62d741534fc2c8d1d02f61e22b68c6ab12bee6da380302047c435bb500683066023100e72723f0dfda7a807e6459a77aaf49f4c843a4c0a225709183ecebe4a16ea6a298ea3180fb2ae2805a6a1cae2159d3dd023100d8d56c18e2c114660854be838ef130ea362d01ec193d42fb0494334816027387fb77958f71abc1a9bd923bed81f25bea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100901c779a3cca991cdba3fd625b4c60aced23f800bbd65e025a2c85720bc28873573add95b7d6e10b129a8cdb92012b65023100bc3429293ebc9489adff9773d0bdf8ffab85c3b865a497532743edfd6cedcc22a2f8f8afcae9abb82e09a9d75ce08a520302047c435bb50067306502301e37e9c0d728246f023d58692f0c0e285a15b577199be220a9f796f9a6011a5cc0ad0135ab7063e9eea79cae214c025a023100b9715e888c32d218940f47610fa238979000fae596bda5319d0a81e8c7d768be1dcf5568fc3c32c5ac0351989ce5ab290302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230306b0f2a4c164daeec01819d08baae47deeb5d3d689a47dec84b1e5cdb67b3665d058268b777224b597b01d719635c43023051aeeb7b3454a31d72e3ae7e7216b60549bbc71aee485fdc62ed68dec0c98140ad2d76b4fec250a4116237adc7cf4da80302047c435bb50067306502307e1946f17235ed225b9939fbcef6b8d4d1ce42326d07bc64de0e790e59be70b1e4195759ff24842ab1be2e59f4bef821023100eedfbe3ddf594c47eca0411533385e7bfc8681e9e007850aec6313a63f2453892fe64a87396ee24a5efb1ddbe499cc510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023023e5c73246b05ed17f3f4242d89769954b490454eb49a25ee13f66d2647572cb817bce8f687c40fd9a02ba7e489e6e10023052eb703dd6ed8088fcb77cef51f22ee8105602780e650bede6d626168fe9bfbad8b5d5b34d6f43ad631679789ef9bee80302047c435bb50066306402301c2e07b8ce6935c00d485bfc591de71475a91233b277b7c3f6e7ecafe589df713e303c949bf5ffe03964138470c59f6902301f7363b085376037c9096600243fd0c0dd78b009cd6c708538e70dca7276a543bdb3b8eb3b7b0f37a40931debb57d84f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a5a88af0e3da5ec9f3a0b0e1e346d2dbf193f99af40a64d6586c2ae34bc575850b463eed151c394d7247bde74a99a57e02306d165bc52c230315a474a731394169eeb2ed3c079be8ae055d3611570f8086c1bd31c0d26ffff692df01549a4cf272da0302047c435bb500663064023016937e2a7a671bface1ccb83e85b5282d0a0a9d845faa060abe2ad4a54580e71f558b1a6ebb5eb2296dcf683304ba3b8023026bd83c9a03f6951a7a7c48468a703948ce1bed6bb6dabe55d89034a27655029a18984bd19524734a1f361fc541334480302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307aa5361e85f0ae385eabcaf52dcaaf161ecdd7c89cf3bdaff3e74a925ed2f3d4c1b21d31abcbd863943e497e3707f300023100c55f1c471ce38fdedd75d045c76682223a2f5a092aa7eb5c6e1d6d5559a604122224b9de89eb4ee3993798ae0f679fb50302047c435bb50066306402300b4f903dc4631f79e239d7db7e78468ab15d51416a160dd80f39ca296c9fdfd2867cb6ec75bce1b0a57b6667f80f7a1702306f23dbc3bbdfe6418579e6113e6de1131b805a9541a60906d9e068c9c339b5460d7bdcaa4c2925c498c432ff45e9d43f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023046f2078cdcb72f950a768e076d864aaa6054927313ded4cb1afd21a0a68c11cf10cd102abab80e7c75b4ebd86b79c7a2023074fa3133c033b95386db05855d6e5add0c9c61188450e930fd26cecb33131d2f2a01676aa2c40df4a5585c2bb6c49ba30302047c435bb500663064022f14d9c6f86ad22574c28b47029794853a3ef2f60a7ee92f2fcb6f69262cac8496c35cfc1be79102632df427adc00336023100ad00b20458761a8ce4c1aaaf7d616db5963fd66e7973ae815920106ab8257120251ab0723e02ae050ebded4824280df90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a85bc26d6b0cf62b7c0bee34c1236cee2e1cad689bed7322b2175fd68145ed17cd467f65ef8742497aa2973ee0c93c7c023042414911b7958b9e6243e45d3e198fd8d2a298fffdf66bf39858e90ce223ec37d5d80ab426b26c2f25a3a8739980e4dd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a0cc87b8f51641e08ae584f971ccccf0e9248be378f36220a628b957acf55b3fc422b065b2f88de419ac1f7aa8f3e61c023025aed6c8d47f7baf9a07fe9dda8f0b453f68e09a63f232dbec65b5b809f6413e1ebd77407df864f0f67e770b3d7639120302047c435bb5006630640230076377ee1b1321ce70224085fae8d9f38307fe2e9158c2806007cedbc19bcd24da0f8457657a51b7a0874d03e83c2caa023048d39101b5c4b52cd0331bac81f95ca460abb483ba3ce3be50568f19add8145bbbc1f55245aff480a387adb1ce84b9510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ef5faf15188aab525d36e1890774275bdda0039b610a1df7c29a118cd376bf17edf7a48a04bdd4b90da47e94a5b9546a023100d007dd1a299f5fc4de23abc47af857f40e0598b90ef6260c8cef5ad90a6ed0abacf9606d37dfa12bc8877ed2b07fdf8a0302047c435bb500683066023100d0f79f5d28d47b129016eb3882cf9e3389765701af9222fe32a94452e91cbbacec1cd4bbae36a5530b72e9b70812acc102310094af19c348fdeabceb2c020dd7a23ae1c31c4bacc2d2274414e4de65f97ea055ba4a1dc5bff5caa50c993360c3aff1eb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230729fb3aad3c960ac303d53d869d73ac1fcda28ee315a87d5ba20f88a0cf2a46590b83a0e3f099dd3f09dea7ddc2aae5c023100d9ed5fe0e3fc2849267f3e7833220bfa0286a6aa57affc00453cab71e606f8f14919d575752765cc9c6e8a89511b34d40302047c435bb50067306502304cabc0a209add79ea921a1b975800833083b5d06cf83a2a17cc9ffd9630033fc5d4feb26a9f0fdd97d71c3a82700e7e10231009a1f5cc705cd1024fd93d18c93621f73bb497985c5a24d3892ddce5e585c045ac443206e08ffb8d02289b1aef0a7300a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cae3c2388b194278e20c00c96f0845fce5d0d044f6c56d49aaa9df5497930305081039a58fc76d1e09c21d87e1fdd5c6023100824e3b52db23f6b47ac1ffdc1a34d920c26901defce684d94552cfc70b91aea49dcbe9ca5d9f34efd95c33e0483807530302047c435bb5006730650231009885dbc38e680b89d40985b75f79628b767dc4fe12412e8572195cd746e13c18280bc256bd218f47ce4dc3acf21b211202303432d680340f933976a22850883e8644e82334edc5c314da4effa506c27ec41d5f5213ccd1eca651346dc5657bb39a640302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023076aa595de6484ea274d54bb9c4652488807ae9b036ef7e22eb3db508647edf174466ec16927a503e428a5a57f182715c02310084b27157452fda61a32bcdc3cbef88d7b777c29c3b375eae9a2546e9b972d2ed8122a375ee386da9614c483934cd68750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023040604e67045ad95956bd915da53f0dc9e727cbe63e57624b79e2b7cda5413c72dcb88395ffb19280c60a67ccbd17778b023018be68394485e7eebb1a01368adf5f4c29366cc1884f6bbca70a82ce3c4f722093fdb5581ad2e9e2bb06d4f88d5e4b7d0302047c435bb500683066023100c535b4388fe60a71d2f61c6d1983db5120e1f0ba9c4f70a631f767d1737c32dd119c52571652c23e3d8bc8dbf84e8185023100e7227ef5c86c3e3b11aa81d535ff831f9b8dc5d800c954717df8f8b33e4d502b3b9507201fd049ccf9ed73898a8cb9be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230425a797345920f61fe4b8702847c4146f3fd7e5f1525e37904bdfb10a7b1eea36e6132525de259769b15b8353351cb04023008baf113a9f5b570c5787930c02e679d0b38d9fe56c60d754cfa4cb9e15f5345e85ae99217a0f684f3a1e988b4a403bc0302047c435bb500683066023100f3a7cea735b97f36cd1058ee36967235b90fc0026f79833f8395b3fdcdfdd5a06dac1f1f464a77cda7df309b3481abb3023100ab54f56f5146674e7e15d8984060c866c31de212a16657f752233c2a699c191640223a76153220b0c507bb4d42bb29b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023043c24db187350594725629dfcb52f8e2f3e38738b881564b8df5f83726193919cbd6cd8f051d9a6816f3d9f1f20adcd1023100cdd091eb7196943fff457141cd13fe71ac33d307bcdedb83476abc13e33394f6b5ebec44918be58303891f7f15a544ef0302047c435bb50066306402305d8bb08c3c82c629378123157f365067d6f6236b77f069b5ca92d19a17750edd93ea04ab3ebccbce23d35418e0678c110230244adc3a5b21aaeee3a0408895cda847d300549e662c9d07f14ca9a1e951d996069dae4787d8cfd265632fc2b4bc65980302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a1098b886ccc375cc8c80ce0d4d8ee63d7262e1752c3b20ec3d6dabb4b61a331f71b134878380c7cd92ad72f026a8c4c02307d53ad7807bbd40d3a3bffd841e99133a1c19e1e243d6577148f8db3fe1c761bb5e8c884f68f48a09ced75621af27d540302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302b160ff654fdac6fbc6f294b60ba588f0c3dc005f6a80d70ca73902eadf07dfb415d95da32c440ed71448d40f5be2caa023100d821809364caa9295b8690c98803369d8bfcbd187bf635422d906dde71d9328ab53bf525734e67530008408cc1d50fc80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dd40f2ac6ca360b31903a843095c0613365ab9d81518b84c52c9d25558ab51cb810871a4b0eb311b7f18b8625d37af6502303eef6b7c09071c005a3d61fbcb8a9da08d69c86412e4cf3eec2f44863bc8e2c60f6179926c17b8de491d4c604298545c0302047c435bb500683066023100b3be35377221b894d15614995bd9aaa533be6b22c987b3544e0a95b64eb7456e3c0478c1ec298c3c6584b0fb5ed72ce9023100d1ad8cfa0ef6338184320be28c092098c10e06a5ed17d9c7de33d616ed9e77e15aa0ae843f3c637dc123cc3c663fdb430302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023013e829e664695863f4abfb2d273d956a2fff4b77ae18614d670f2bf5da9ed8536ba3de81b19cdcaa498f1ff30d329e4a023100b1f4ab47da6057cb0ac93cffe42ac91802bc1f6d8df8dba57d621fa2826611a60029a0322ffe3b6486ce1008e59435110302047c435bb50066306402305a4eb71ca0aa5520d30f68cb3f985f0f09b03c3a97c172bdfc4d3ce2600f35d11923d50185543a2279edca4df6d3887402300d5b2738955a17ab0f24fe5c413f9796caab6b16e7fd3f1220d4040e6c2394bd4097acc7b3c319fe0331994dbb23c1fe0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310087f16161478a6e134a49456f86216aefe64fdfabda88b949f1941e1d91b86e5d0fb702bd7a492cb84f8f4048f991b47202307fd042ccea4cb8e67f25e08f9e2a4ffdf9805bee721339c46aeb83d196d1e42475cc5feb5665852fe3c244829ce01a130302047c435bb500673065023100fd74530b610ed20ca5d346bd98d7124b6e79941771853c07b38191eb784ee28931ebad00e0f75c7c9b79e8c963db507b02306e1e66a0d36c8e9c41ae18f78b986d74a036a576e024a3a003ac312e28bf21702179a24475727d0db234178a56dd550f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230626199c73a3920e212d1de6ad6d8f9a9359dbce09e1f927a3c4d9e1225cace0fa59e0d04d803aa7df8167fc64613d5c0023100f8fcc14bd20a0246adde5ae317ea9730243643bb867ae5831347e5aa1446281022ea0702b41ed530a4ef6c6c0181ee900302047c435bb500683066023100f3b6cba0841ab1c747eaef4b5e609ee184c293c8d7a01ab071d52068d28fffedf59c1a8f6481fbade58f42fa555241b702310099dac4cd6b4823cd9630937dfdeca02ef8f66cbb81ffdca9596425bfadd9a9288250e507da65627c0cb91d9e1d751d1a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f9cb48cd4929ff823ba63efa90afbc384d9dd3c588783261c759016820d1095c300afe95af086d2097c70ec4ece518b402304cdff344272011c2f4f6810e4c0aec6ff63ee6d79d267139cfd8d392d6142423593dfd83d5228c5756036dce18061f190302047c435bb50067306502304ad311953ce9b1db032ece03d353b0b536fc3f42b120600764418c2bc449f096c9276ee23ce899e4c6db5ce0baafb8c5023100fb99d1f3a8d9f326dacc881e37d09ae632101e57cbf3d7096b7c5b65911fe1803eeab34d31efef4b243bb22d465fb1650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230559c2cc7b56fa38881f55f6be973e85ec466737ee4fde4a2073074d6dd2111c7d21ac92aefae7b7bad09b5dff99c6db202307b77adec723f25b3bb0d1f627c277801c9ad61b5d28f8e5abd59cc25e6cddfaf61d3ce0b4824800baf2837941a38039a0302047c435bb5006830660231009eeb9b768cbd4c459d151effd1e7bbef33bd58bd23a1722e86c84d406b8ed1a81062855b709fe9830faccc3471333392023100bd01d3d4b3570b37fd38087125fe2ef1dc8b4e6afe3e0ce5cf9c03354fd28f94e31306580975908d1bb4be29b04288750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301db4913404ab55217bb769d5b4b720cf7fb7fc3abbc67bbb16a0012bcf9b170604b1dad185aab9cfa2e4e32084eecd08023100db3b359dc66fd556ef1b1d0e290c37ad2c83ef2687a08257298ab51d7a8ff74f662018ec84ee10ef8e059b8ecb633b0d0302047c435bb500673065023100c5f1a8d3d4aaf46a5f0ad4c04c6c7b6449bdaca2d31cb1cd3f73dccdcb105aaae5af1f1b7086dd65326ea8276fa3ba5502304a99aedb86729840c2ec29f03b07735d62d9243cc077b7b7615e1e6bbe44c7f47862cdffe8f63169f23e671df385ee5a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230489efce779ed01772bb4cf0c8dda80518293f9ac94ff3ea1b42c58e1b5fa80aeb3af2909c2414b6cf744528c82fb2df50230566694a99daadc364641a4f8ad81f83c2044c328e8fbe4e95b9750804100e5503f27194e46fd0c1d903cff4fe70a38940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302e721abe533de017346ced2efedb2289295c1a850d00f86cb6db0aa1fde2a6fde47183eec9c278ff8f05e3da3d33bd0e02307ea5aaab2724acc1b1d26ec104963c4de6ad852868057f7b4191b7007738ac4826e1da733da59c3fb967f2989793fd210302047c435bb50066306402300cb5be91b35fd86f39a26590a01111b9418f5c2e698d4c7bdb02e07ff26afc3dbe68612fed2d6817951d5d5dc7784db302303d02a63c049661db3a9bf2cbc3650350ff83a7d4b592030efc2076f4d913f44d122b465dc7f22d0d7b7acf19ac8d16e80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008a5afb5a35704a0a27ae3e64c25e077bce72753a91ce320626ed51622854db4acfeb44b2eba5f393791597ee82148ce7023070914565210ae8e3fa6dc221051c811460e6b278ef8e84340f51ce8f7c3b20cc4de7da046bb9e43ea83c5b951364f4510302047c435bb500673065023100c6a44362c70d5db787f768e4186e5074f5c0fea4410decdf6cf53ec94f8ed958863ccce1114cbfab522884d8e93da2690230799742150afb6466cfbd55f5336558e549119a57e94503c25fc419f5277ff1c261dd1195145fac6958df77cd3e3b77f40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023023e65cfce4ade389ec098c1b29c73803869035dc10be1f24aef77b902ecf78ba2e80e0488bd4abad1afcc2d118a6522002307c92c0a8d951e313a228638c0f990a98accd88b94e6b5e142430569ab24fa82747d233927b5c2ecccb1895d26a644eb70302047c435bb500673065023058c17c1a8b7add9a55f7977e6487159c862c16945705087c4a5f0504883a7a73ef5750e0e0b990169c644612732c6a01023100e26258db9150ca4c1d6b12b42ecaa3fd6e5e2f2a3263abdcf6d5eb199d8f1638b0b8693a9240eaaceaae989e7e2181f40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307f0bbbb299cda9590402cf11dd156da5ea04922e0e32ce1bc1c692fa3065f258ba16fc4b8ca82a7ee5d13cd4afbf3c7602307479006c15ebdf2603f015a885da00bcca953483c4553513ae17d3b47d2122807a32ef5a0fb7f0a35ec3ba21448ba8770302047c435bb500683066023100851c5f935d3f5c3fc581d94cda178907caf84491bf2210edc3b05352db12a9daa0b92e375441b070064023c5ea9486ac02310090527e9c9f2fcb77e1d498bae2ab61dd6b1b66c8555afde06a79aac59e6c0c435d8a4b9cafe441acbfa003ec0d3758be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302fcfebb2ba2b3e358f05ad61f3a6108641916d270cdb6bc3549acf60f29e740443c1dfce0663d5decb525d8b9277427902302239b7b8e0379787ef4d6121b095c5bcac3e474fe3c7a2c83f316e654ab28bfc79e8871e3a57f8a568e5146779c7dece0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023069f2d1d2d90d98db287d54d0751a8c0732e3199f0a93ea6aad3d373ff40448410922d18dbb9ad58ddd25124e60f68bf4023100c1bd960b53602f2ca25cf673617f8d9f4ba79d2f597a1a73a6bfbd3c1f2fa491271237a63f07549da9691a1c2335338c0302047c435bb500663064023011f4ce7104256dc667e3fb2dac4ffce6167c6aeb8c088037b6d7c40443dfd176f344a9dc185ad6f0257abe56e50121370230771d6768fe02d89ff0862eb14ab67cc11639bbef6472a5a11d6e4313b7ad66a5df9e31273f37f36d4057c4b495d64dc80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ab42eff451c103d6a669bd7c588531e4c2c64d451238543906d6c9babb6fe1f326db2796ab34d70bca5cdb94f266f3a5023045912b937180d5f6880e33dbc0122702b7ea01f55b29ad7ea3e0ab88e0b2b0a5680b58b01d4e9202acc9070e60621abc0302047c435bb500673065023100e7ec26e6edab53880abd41b88b2f38991b798e2f6f0381fbfe9a9ee2ccd03bdaac52dc0576e4e455a5fb68376754298f023016eacebd5ceeafa2c56252c0b9caefffe0a2e56c3b660f86614bef60b680e8835896ed2b2b814ab6c34d9bd1f295c8e90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f50ae862e2526886af6ef1da20dca059a4dee0aa604de726efbf6bce19542906283652f832e376117dd9106655a2794102305ada38ac55142de46a1e6ebaee682dcb358f32f3bc20d504ae14a1c35bf0eecf4ef45ab2b1c1453c0396eb5c1aecd3fe0302047c435bb50068306602310085fee6dd6c72b9cc6653f7ac761c9bf542af63f852f6a6dce67aff459d6bdf8b8461e02e4ddc3c18ab14137f5019471d023100acec0f4369ac98c7ae346d05d4fcbfa9e32772b1ccaacc160da3084900c454a45f28022a554f64e0fe018e997167bc510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b24fe71cb2a872341126efa50a96ffffe118dcfbf00e191d7624392129093d9b1e84d72cb70cde762403b2f0e0e049af023100d7c183bbaed21a5c2db3e35c411cf428df686026a16f9f48a1684b9eb4c2859bc77486996a5e7115f8f4721579b3ce5f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009eede878f5044e4d8eb409334ad5176127a76623293cc6d43162a170f8ffa10ce2f9459153d8ffb7c58a56556aebea4e023100eadfd1a5862d7e011dde3b7ef565370fb3898d6ef7c379a5ed010fa2cb4602d23a44e9d195c911d653419f4ec6f5e6c50302047c435bb5006830660231009ca22c15c225429eefb5430da913775675c53e87b6e0bf8d2bf79d01322a45def032a15033379e8aa07f6bcc9b1be299023100937d9c1ce323f4b62db4ce94aca85bbcce50ed04b1dab2d5d370f00f145b0241e0358050f7cc8285ff97149ea5795f050302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b4a20be36308e0fc4c95618de509af7b31deef7529a87ae8942c45d26d15fbb9a0c325f0e3d50453c3da3a6aabdf409602300386d500de837cc17210095a1ddab1c40387ad58eff94b01d87a7712440e024d4131ca7d02037b46c46fbb068a27143f0302047c435bb500683066023100b190cb05ea45575c072645506d8394650a5dae728c3f2e859c562d5d3c5d4cb3a8154abb5d82b75b2cbf9194d572262d023100800254caae72537663dee2fe6f776ebcd3385e9a5f7310e340ac7d5db32bb612ed09a5ed435d9cc484377319164ca4f60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f799dff76fc059d27a3d86212de8ffa06bfc07beb0f472257f3452298f488c9161ae4eaaa27799c5765cb2f1111b0284023100dd5820f6b80f3c8f0d08ebe6d76ddf68d467a46be70c7ee8310e11c1200240597318f66e084bcfddd352200005f5696b0302047c435bb500673065023076fa82282074be7be8a85777b10c9c2f8eb0407a898d4624997b7a17c4a085111fb6e0308983334474561cf09cf6f598023100f9cd73f0093c553982a8f54ae15850ba28cca1efc4c9af09b506845f903a1d0d8301606e8f0f34cbf2aa87e0de973ddb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d48c6269d2804f36f97d28557d5b27f73485b1c277895d56a9bd5751d7e6b77df8696d0ed5ac5c766c61c6ea31ec100802303a7df8cbeddfc49c05cb40ecb90baad7142bdd919153e8f012f87330a7da039f48db532ae0ee7c00ea2ad124d1c6f7ea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fbe59e75d5c85886b1d7d106910147d7a466d421ffb27fdca13018d83b56d1e5be88326e9084f68d71fdedc6537e470e023100a707479cd381aad5faca640032d11103de1d02603bb3c503c56d864ad93237be6bc75e80fe21ad29f5f49b34cba64d0b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aa2079feffdb3110b08aa5fc2be43f878a53c04b31b9fecb4adf0cab43e911af24462360ffe07854fa61c7fd92f621dd02301584268d96efe4967cd2f2ac4c7e375ba1a07bb5d3db473be674813db8952ccc417e833e8bdfaa3393d760e5864071b40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a274d3d6d8950e09abc87709ac8641711a42054adad62822efe396bf348b2eb40b096f9ea6830bc356793c99587751f6023073d8f72c0d363c17702b6296d3d5d6a4912d82770af0e55ccfe60e9580340debce587f75e13118426d28b7fde8939abc0302047c435bb500683066023100a83e50af8049299fd69ec8174e7d33d17ab5d2f7d0ac5c1de834655d55636c1a87e9513eacbb6548a77b0f2a73ae221f023100baad034b9430cf1368dd10b1f085213d19cf58e6dc6b4cf26dae69acb47181c780b95f2ca6bfba60357fe7aacb0f53a00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a55a6ac4607c82fd83f1fb43fa012cfd61adf5e6704c01d90b1f22d6beeb13b05907cafeb35861f174d3895aa558bf4e023066f6a333ab6bf2927b53e2bbfcbea2b210a6201bdcfabcc026cdb47fe485c9511a8cb60c75a281a8653cb90e9f2ccbac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f368835c63c474110424bfbb5e61cbc302a4b697c469ff49cbfcd8a8496e4b8c22741292aeb44c8cd6267d72b485102e023074f62e179fafa51a4106b5481b0e8fdea56ca5b62cee7762142c6664b7f01960bf26ab7fe843d4177f597f41d18b13cf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023014d14fa25b5f04b7b3cd6accf94724690b2ba94a442d362963e28cacb6ecdb830d485271e49506071ba1b345ebaf40960231008a9f4a3c67d4f4f8f785cfec2e952d1db0b8fdab0dd1aa38eeab3d239fa0d34486aa2ff5c49cc76ef459bb386b18e1dc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e1c8e48fecbe84c19db07724965f85f88063bfa16b9578b6b527424e452fe3fb40a2fd04c1882119decfd1e115bd173c02302fd61f4ca0e2844ee0144d62835c50befcae38d2a655fc8121319593103a286733787572956f5fa69c183423d3fb83710302047c435bb500673065023066b1ba7f38f46df5b9729da7f26fa290359d48b99a8222466bac0e965cee4bcc60b9eacee50f58425f32c3199a1b7fe70231008c121e27708bbd8f14258cd99b20f924c33f5c5d49054b6eaab8f12d20e3ab035a50812f733672cd14901e75f9af22d30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dba8c38ef7b77066fbddfb58caf299651b497047d69a36e290f960ef8cf1de44664b2311580ba9967c8c71696d0cfbfb02307d40dafdc30df75a0dc5a47205d78ed8880a7681138edd0618e33581df110eeca29c2770ea7788c4a4ccdef68687108c0302047c435bb5006830660231009cf173611a45d1ce94ae2c5cd25482b70eb632d159fc837ffd02f0529d6c3e92ac3de0766e3470f66f6550f5377a07ed023100d29857d80d6fd19a38d77da194de353cb1e39f5c55297d00c446ca0b923d235c802bc91f2e392512831b5b21215b94a90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303a5cfa42a32cb5ebc2dffc87df1631b570ea7c61d45ca1e31543b3b8cd74dab9fa7f3c8e170196081ae1b3aee88b740e023100f8102227f9b50406a9683f68b400ff8bb28085dba053907313d00781cbd0c0c89c9064a45c99c9aeff2236c0ab69c7d20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300e2ddb8e724504fd17440d947fe764f5c798d94bcc40f7e71509fcf58e2528e766f6fdbf32ad4e3ee7b37d7fd663b34e023100ad4fdd985dcd7dfbe61a898241b3a82c15c7143cff3da23891c99a587971d68e42171ecade8f251996afe26c0b40a4730302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a091cd57265c8e65d0067164f2dfe1f57f11a661307aa9d7e1c5063f5449753abee80d2e618b7614fecc66f0d93d0b9e02306ff1e6e396575053f0ad6c2e2bc5d820f3368fe517a83a672157d4d53c6a1345b9a1885a4033389c9a01db10fa1d1a030302047c435bb500673065023100acbc7562c9da6c5ead78f6d403c8112d4cc6cf66d84d0c668bc0421d575cceb26d70324769b7b9af9e90ee9cbc7d9b660230244d67f7f9c4652cdabf9b273f969810627a8f91db261d832a2cabc287653fa70dcf0dbdeb3d59377baa9caa73dab7340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305d69e529d81caa26555f4a8e9fdfcb842615d9ed820b0c454aff0e973178c1dd07b4503d825fffdc2719dfd47afb511b023100fac0ff38b1073dd0ea9740888dd77103b5791bb2b73ebeafcd62c8fe089ad5879ffebc4c18ed082ba6e4e7cc40a2b7250302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e7c34e9abacdffed59ac40055f6bba644e518ccc306ae5f76494c862ddf6fa2a8e06debddc109ef29ff05d810be30365023100fe7fa3f8420e692415ce76554995728323eb5705aee1c564ec0132471056b0b6908091e9549f01b233f7bb488e7eecdc0302047c435bb5006730650231009a56d9628b6076e863c79bdcf6318569c8c38a8206df239d839af2ac2ab8bfc9c1af970c775a6c7923f5b8151075c0c002302d802be01d0e343606e434503320346845f491a69bd7681d494d229733a62d810e428d0c775461a5757f47e8f18321730302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100af9ea420680d5e3174f7827ca9834b7e58cf0c936884b8ed4c2e6dec2c3d2dd998a6fb49c6a4b793bf104e067c20c2b9023100af12eec3c8f6b7ac8bde5d846642a4f72f8a2665bca97a6eaac8db9a1845e08586fd342f8e5d9b6c1f755df871f29b1e0302047c435bb50067306502305215a136b531988a342d021278a91ccf90e42762379720de0751a70ca81d017fc55d234b2ede26c976a1dc9c24545630023100ca5d4a5eed9d7a866acb08241ba0150dd84e8b3d2d419ca3115240b6b9de17f4207a7b9c2acef0c3035d0b6e0c82c82f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e0f407e1434a7ddcd73b6ac974640600d4aa56b751893fc49508e7f6296461c4b7b6d58ecb7fffe2a76403337f27758b02302c888277ec3b5e04ef75893896f9295040cfc657271ecf4f43ddadc76a0b9f430233cbbc2bc4d70ddc7cec659b5113630302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cf84d83afdbe8aba009d705f0210ad0642d7c3742bfb86512d281890610f791c58689777cc391f6034ccc8f75f49c950023100ba7edf8b7d425c80d16f7c0f52d6949c62e73ae15d27c0119cba133e610b9c11917bfade52a615d18325c228710513740302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a96a3619a455875b4f4dc5a4511ec4397938ee2ef9346baeb289be4f4f76050b942d94d43e32a948c47b7fe5f5de0b710230590cfaa6ed7e9384dc33a28e3204f6dc1cc4e5c801b1d7cbaec158587292398da09a9b70d85f3a15abd12d7cd00ad8210302047c435bb50067306502300ae478a265ade68510d030d71a75af525dff0ee8638316949a002f2fb91f27d8e70fc620067adaa7c401d888a61dbd11023100f8dc143da5f6a8c0c5e3895af7615cf893d3eab9bfffd5573069450c7e38b4e39d9cff6fcdc470ac942ebf8c010ae6d00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303e68907091598993410dc5840375a5ef96e16a1af8c3ebe49c409076f604af236d4fe69e2619c497868dfb8a0c2a7bdd023077018eb5f19e6987dbd6ae40c82f4abf79517887c3fb7f1591480b6b3f267649d2c0940925379b8e65c9e9f3f212bcfd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023008d1cd35c2f1e2c83668231aeb417499b74605152594e665d314a70299813542d625e2abc03aae68a11288afc7d4114402301b6c275004e4afd90e62592c8f6770f3486c7892c8b231e81f2b09bbd8026da8a3e4019a75a9c2229369ae5f3f0d23420302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c2a2cb4c47d650c0ea4914afad4227656ef8d9c505e82df3911559bf3d9c3c19f45973079acded6891187120ba6bb2f1023038dd5948ad2d5bc3102732430916383cede048187662d05c759c64cb6e4cafcc7656c4c0eb7be88a1dca8b0b3493c8d30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023012a46fed1a1a16986ac4c2f9cda84321ba7c610a6fe68554bf4b69ab91fbb7cfb11c15a42eccfda4cce5edd81eb42a8702303207e11dc99c0c20d550a3aec3df9699deebe4762036ffd0d3834f57016aab7b388644bf66114faf8b81063fc3a5a8fa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230023075b9ad880ea2b9551ade350f0c7660210e009f71d5308b2e45f48c22bf49521aaa7f6f030f9ef0aaa0a5b1ad8337023100bd48447b2a291f0e58427d73e175984e533da649220b78ebc8fd3cac37d6d14a93fcc8851dec30e1c328f0eecd060ff50302047c435bb50066306402301d9a7a6e3d3c11239b5db869d3a95dedf6763d9bda7ade6eac8a89c07dc1e06f0ec3dc24b809c3c3d5c3915f8e100fd6023044c53665f8a061bc0c36e39e5d1fbcf15795848e712e565b3cafc26b1330c7da78f9a920182a2a77738786bd3ede37bf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009f9747f5b2347b1d5406e8810dd88aeef9f8977bdb0dd283a08ff08433aa7bfe5201ec5f04a9b2ba2f62badfa35b24b2023100f2fae3ff78ea94b76d4c4080eda1fa8fff4d3714326cfa09a869bd611e78e9ad4d7780b9c08dfabc465a4be43ccc87f80302047c435bb50067306502301a03e0cf2c4a4750c9a2b137a8ae3e9b6cc97a167707faf9786242e40fc04475a4ee2198c8a5d7b7400ddf9f72f08416023100c549b8a756ad6f13f78704be0b243ce6340ca867eef33259a8dc482e40a6eeea9b4fa87622cf2a2baa7e37baefbf76150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304c918cef32619ce2fe27b11eae048cb5f60c21790362e593414d85222102f7e7d9b5650a04ca67dd4ca899e0e312f17302307723ea39df298b2a738c6a59e7bef2675473cd18c05d33b87d412ba22114e20244357180a3402427b9b4d1db06aafa4b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310086ffa834a4651d65cb377ddc2851493f2ec956b3f493bd328d42481aa6e9a57f169a67c40a03104a79e0d91a93640400023047f22515f1114a93c39dadfdcbb6c0497b376a140122f1ae5af9e548c652a7616a02caf1ec072447b515a46be039bded0302047c435bb50066306402303ef37219883d9ed668b1c3ca9b8e99710f38f10982d6b44dcfafbc72284d2197aba5b2c8c3d346db8aed35c1fce552410230318733ff4f5bcf76a6caa260a602f0f187fee466b26083754d4b89c3dd70ec312c5ee22efa0c12af65742c7fa75e69850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f2c5aa2863e240904ec7aaa91dd84df4e3bfc2999d6f6f560bf00ff590eebeb06f8490e59a4ad406677a78d932281fdd02302134900cd82605f1cf754b52e8aa830c85a06d3fe47222129e62ee986013bdd35ca3541300bd485b96d3dafe8935b1d20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307e21db0db3c04043398300f9298800b5ed87ad068085de3990fa0ab3517866b5d1ee1b843123cdb38474aae5142fae210230612b91d09f28051d62290786ff61eb1afe67deafe5276739bd29d80a0b672bfb8483af11067ff55869f3ec85a51e3d0e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230248cafe56414af6c8ab9c3c1de00c5a5318f43dfafbf507b3318d0058e5d3c2832359e76770901bef8dfe791e5437801023100f37dcd9917f4de39a317ebe038745e7aa66e32ed1db8cca0f2d8e7000bb40e3a16be931a50924fc214596bb788086c5b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307627457a05f781c211c6ca792ed88efdc4f8c7e258f7c7fa5cbd3e9a2bfe812eff41756e91ede8e2047cf801bed749d3023100bc802c3ea26520d8508c006329b80f1f0c0cc20b4ac8a41dded596441dc69cc4a07abb57b074ef8a74b7eb20cd0c7d9f0302047c435bb50067306502300d0e7a7903247fe6febcde3bc47bc73e0b33d0cf2689211528e51894435cdb2da6e2a794ca25d511251d668a02c7337f023100e339a71e2ec0edd1616c553f5014c57ea41b5aa65bbd59ec200b399a0176d7b41e3ec98e0289e86fa29bf823f8d341ea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305922c58a45313116f5eb9696180ad7da54da781e07d591109e29a448bb10d37806d2ccf5ed9da2274b91ee8010e1e201023014cedd9121703cd94dce9c53b9592280207ba0edd5c1fde985b397d4284de1aae079706aa2daf1461dd4117c698323910302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023042c5d2ed622b3b60ff9d00e27404431be9945436612c53d36ffd5368308e7bf65282e3c7fe04a8e8b193f5683f61b80602303011b74d93f4d16e8786ae6d14c7f33f9e6cec51c28019359081f601370c28c1d8ec49a0457d1e8f7ffafa8dca0acd7f0302047c435bb5006730650231009bdcaddce1f22fb37e7eb1b8798740b0ee265c139c84718569bdb40ae362c73971de240fff9a0b783f369275e3c5b2cb023077b5939b92ac530715a617d6779196877e6a974acbd8d1318489b608f0b2140b04907b9fc8751fbeb1ff0594d85319e10302047c435bb50067306502310099eede0da7ab6f0541417ec43f497537766523eaad7e6e7ac336340bc57e59bcc27f9e704c5a16c6bc401922fa9493f702302f811f17d33425f499bc8f97d0afa6eb32f2300afb813a03ed83c8f812c98890cfe21fa9c8c18be44388e5730ea43f340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306310102d092a414c2705071bcfd7de75209da9de6084ec279dbdf1c82e1ba09733b238e8b0c91a815b89fa5c3556d0ca023015e5f2668840302ee23853b9e7fdf89f23d0a6e811c03eab33b6bfabc40bc6f6c39923e0538bcbb7a388b29ff409dd240302047c435bb500673065023100efecd603b43759367cd9d84017eb250fdfcf4cb3fa30eee60c84c0fd72d11c1bdb16586b0c307594efeadcf3c6dbf4ed023075e90d686e342015e7d26eebe3aa842075a3effd81c8a1fa292c1462c00986a61fc1dffd7d4b9a9f89f31c8b1dcc14100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300d39b3f83905fb7d27fcd769c2a06b41508d9e088964d0cc2f15c66756e4e8cdeb4f22d8187f0d8f77da888b000723210231008fdd74957586dfd48348636eb03af5b1edc45624a20a9ffcd441f89a4b3578f303f7a7b61ac5a2315d8d87e40cc0e4b70302047c435bb50067306502306bc0d5e64d7e093662ee4a6f9ef89982e1593d22dc9184ea5ccd75c7294a872b1fa8b8de2d1f2d91021aeebb3205a4e6023100d715fbe9b0447b4b06d91eb490f326e22a4e30ddba8f59691a86ad664b7b377d3b9f8b897d3583ac1cd94656e51daf340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b150cd163c0a19c718e71ad8c1e66bea9cb1ba4f1e50822de566dde7a1b1e5f5e49e2db466287e5545695e605eb88c5f023100e8ff77ff45e1dbf1c5c51ec28dbdb54acb5aa6eec8988fc8ab7348a639737ea1fe828ec1243df69c875b65de1a36f4780302047c435bb5006730650231009b07882d191f060538f97dad60970c50f62442937244d6cb3c08837a0cd4541889e5ffcf7492fbd7d4e391da90f1e82102302549ba0098d20159307b9c70418fc2367ad202bffad58ac3b4a379eb6876818f65ccd933c66693f91a3a3bef08fdee710302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306bb089f2a0d97c57722677a67ec05fa0e4f0c0f41d63ff67bed0189a71a3b9a76786cd9c42a0383d49d5c615c4736a24023100d3f52b3c163a4dfe74291c0633d37ed411cbd002f0d69226a5ff3efe77f56e97a85bc91765638a4743ff778b8b6281330302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ff3046715a697310b3b78db4f23d2ac9d5fd64d8c1f89e3686f1f2786522c55772dcb1f772a5e20dca8f73b4a5edcfd5023100ca17fd50122312943d7d54f9dc655b0f3d73dbbfbcbcd42cf4e7dc61d7dc794859eb31ab48f1e899a552ec6288377ac00302047c435bb500673065023100c1dafea7b14d31e7b9ef17ca7a1b69228996b69cd3d06e3efacd76c62b7acdb1d1222b1f18d68b6f1598b8cdb6412a8d02305d0eae93ad3188fcc95dd040b9f80507a5100467ce9711ab0f28ba1baf215e28e5a1df8a4e34830d888c1fb1d135788d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023009d04642581387e31985f25a4d64694a590b0345b7c874dcde0d40939c5e3bc99ef6100022b716c3bf2106474310b5ef023057f512ce73b67e2d6c22eea47a47d7e07c9a4ec39f75f658625ed1650483bb00c270b58160bb6d64d19284fd01adfc9a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c70ee60ae7717850aa70e14d05aec5a67b233c2b13e31348f834d9d966acfba559171319279eb6067b8ac190b7095c760231008ab5fb4bfb60b38a9cff0494a91b48bb63362faaca0a75a98954380a8f1a2a047169affc5e1810a8177e80f676541bda0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ed6ed1f5e52e52041ed23a4bf2266b0fab8a678b413bbe3dea23b14e490a55610a085057f672566c4fb98808b179d269023100ca1f6836bfd11c3f5cca82a7cc4af2e2442eb1c68e1804d4f14f90745d33be74148461aa9940127a20de94f70131576e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a55752529cd9dc227322417e964b39777127ab2938e4c194b2de7d23eeb3d98657c53265842b9168b68c41b254b706bb023002f650b2c32709163387c2feb677d0959c1217f3f8bb17fef4889b74e1729247db3ddc4b772479bacc7b547c6d5291270302047c435bb50067306502305f20601c4fa0b9db9d807f41ffae2ba2f6b141e228b9765a35dae9f31c22582ce59ca37256d5b00735c5777393b48d25023100bd192a1a012c1d18e2efa354f0126988ef0208e4bd0a049b7b038f3b2681882f6bb152a9d2d9ec7e17fba42c4b73aad00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100938a64284c9059560e4089ace68198a77ad9da008534ed997ebffd19bd7b8ba6d5576858773258d594a21cb44653d27b0230485492e0da8a278600260c40461fef7857356c7c2ba4daf33e57d94170535e5caeb2905d2d25a69a986b7c8f2780d29f0302047c435bb5006830660231008ab37be51d262a7e5c62956ff6d958a66098862bfe5480944127d5150d2a8f704e6dbcefd09a3a2234fb347f76120358023100da7dda8eef2a6550b50e2cbda82aa00e935e6cceafe90bf75400f269c76a1d91672045b083ab6ef7d70abfe8aee789ad0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302154bec91dfeffa6c4c97bbab2b651ac59b56213d1e8feea60bbda6d88895a047dfec77d0ec331aec694dc07f6f5544f02301bb469db6edad0b2e3491c2a1e54fbcc7b63ea035ac92be4bb9cd1d3d7a387fde2617411e06aa4d9b59126433acdd94a0302047c435bb5006730650231009cafb6bdbb0e25c2a908c35d88988b3ab7069de06cd4778f77b812c93f767b64a29b22987b2a91b086ff1998ea02879e02303d8de7b44e410397a43f91e46149cecacddb7b4f52041aabd3aed3ebb835a0b4841146803ff32ea28b7f7e77771a60510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f4cf6b419309268966814eba3c68d0b2df49dcb8a292c0e9536d566b126eed1cc145b8486a8684b69c2289edc12cb1fe023077dc09c265e56c183814a685c99d40decc61ac900bfcd99427d50d2bde07ac0c7dabdc718a5e1b826d872d232fa0d8050302047c435bb50066306402306fc57734bf1ae1d203116805d29576c260badc5607fb5a8afe24dd0504e839e5cdf34140a9d3804657741e0379dc81e50230067407a09e2f5876482cbc93c780fc51b073755c1a4ffca2acd21777c87c8bdc89b853a1ba205f63e8498cb237ce924f0302047c435bb500663064023012044e8378563a6a8d5ca1148faefdbcedf27a1ea36e283189ada9595cb67d71756bc5123baed92b71050bdd6c4efcb002304ed4375c0457db1a7e3a67732603cab6549adc78ec1a4b1e4e9835918597a3ab5a5d87c4c9b075279a4657ae0c9b0d850302047c435bb500673065023066d3a4bed9dec16c38cc3b5d046602bb0c8a1f93fc4e6b332a499711de9c9ab332b853ce1e0c5f11cbaf018d94795cec02310089a4fbe53cbc476d7ac89e42bdbec4cf0ec6e74a0f8ca78989d41b41530826429eb3bca6bf5f7aa1816e0c9441e7654a0302047c435bb50066306402303ff1da1c4feaaa9979c6b64bfb2ec91c867f1cf5cf1ac7cfd3a18a4d4dbf427278c6f1ccdeccc7f04bb16d82d72c695202307f56ce0408b2dac00bd406903c0d3b77b82cf97ff02a0f97dca435e561706b8fba343530eba4fd6f4e785b582ef4fd410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bb7ae33e8032be49380e7ca2cefbc72ca23674f0f35fffb6993e1cfce3f5b1209c03aa9797284060ada2340bc5d0a80d023100ee0ab41dc3bf0287b19c3ca469eb6ce2bf947c950bcf68990b8fc1aabdd8c9fce03ed5a2dd8189e36f00e6d2e26f2a460302047c435bb5006730650230547f4f1b155a153e895e96aa10e6e11381d6c8d258133d061f9b8dfc24ca06bb61929b2345d8c25abc0599e294d1dc3e02310081242d9cac8f4de9a34aaeacdc6ca0aff3ec686acbe29831d88b7b65f65192364b8c7c4bd9d05a4e1d8118409b40b5cc0302047c435bb500673065023100856591eb79be171211d989ba280bed82836bea37b2ae40a924d88f58b9c7fb1d6ea1e14714e0bc2f11e80fbbb2483c16023072fdc9b21fc3b1e7929b2d1c6f0c92ce0771ab1278242709407807ef17494f1941ab512131c6033da3b4f9abb47603290302047c435bb5006730650231009367ef4089ac97ffdd04a0b6a200dffa8c7af7cc1c0fe196e076f0080afb898cce61fe0862a0af9d70248e7e3025ec5402303b38c7283eea1c1589c960d4d645cc2d01b3ed277339e4946463c4cb3f3978d0ab5df3d5682c4958c7c1e0c57706d5480302047c435bb50067306502302898b37b5a71d4fcc91010e0e30c1ab83159049b3c7ae8e684a20124be7051e1ce179ea383fffcb6c62923efb91dd2a6023100d122e3df1d868d38de2af5013c880d27edf48f791b8cb6ed11499caa545936d818ed2d33e1146b35a0f630a840ad89aa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a8a1857d4978dc063d744b9af7a7559400932945f0427cca50627e4620a33a71dd5edc533ce2b7111a4cac08b3a7576a023100f8e0ef3e8f1487529e80e80ab4ebbff566d480085add86a24a7aea0c66f718386c24d51be648cee9886e956d851251e00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230536b50fbce90874c85594f2239c100bf92ee11ac370f4e300e3485f69287cbe3044510af88b6b78d775f69b27a9239c2023100cfc91dbf934b1580e4adab523154f87c95cb47cb465cbe025ce408e38aa54879f2717d531b33300293208b86763bbaab0302047c435bb500683066023100fc866dcbddb92dfc8183fd0e7810c5f53da9b9e3a891857056159bd6a8bf52515b4cafde12e391e0abf8a86e2f18e194023100866e0c45b20f158f01e9fa486b761a2d107e51e5844d87fca14c6b35c234f156f3a3a837b3f5604b1b67a6e3192cccbe0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023063dcb282f7e17e9a07ef138cc404d72917f15e814d0f9a80d0dfed2487edd2a1b43c62f9260edea8966d07fd084ac06c023100efec62d745b1fd3c10c735c5bbe27c6a18c1e415d18a3f055bdd75f6ea586cd69afe62171667d32cdb2fd584f0b286600302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c256f38facbec460f0bb0cdb542c55f8217cc4164c7c29be2aa213c13ce1be63b2999d00fa2cb6af85c68aecc7bbb9360230787595da34553322684c3e7bdc46a2b02d756e3f732b7651ec3c8d4a5cd8fc423a59408dc0bc8b24a848f49c988edcf00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023079793de9cf9e892fb1e6609dd85034b732e5453473e7eddbf4b71fc0c1a91a1cafedc4e6d680d8e3c1783214dd9ab07e023100f8831f22e4ef427d4f61f5c701c3a166f1eb5ebbe3cf1cb24942f88d0041a3f28d20be569cec3d19685274ab524d1ff40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301685e32669a8e92584b72c71227b977c03617c4effbe7e22eeecf324868c677840c5f058edcadfeab68ef53c439296200230659d8ff51f7363d40279489a7c74579ca14ab1edb43726631fad0c109d70f04a2597c205ffc1846e99fc157de3f3ea900302047c435bb500663064023025a2b65308afa76dd5266f9966fb48c80542c2e3028832bd3aa14dc594c626fc518719ded491564308a20763354cb47e02307b23783b662727b2c6cbfb67d89273a438a5dc0a8e06c4a5b4cf409c035c356e7d258c3e2aef324349ed0c549980aac50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301991af53c183fd42ed06c2db24e1bbf814bce764a1d8c9af105c92dbff8811f67d79e473cb221bd925845f56244bd03a02307a6ff846db45b3d2da960ae3aabb3a2b761536a36b9a580bd3917318fa5328295d1e606a6574a5a18eb2ee4e5f643ac00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303fed87e3eac9c1a490f6540ca43a5f2290061305c5f96e3b579d5a7cc9007f063633337e80669f23b880ebb0b4927342023054db5c93884b9efb2dcf26c17af2e92c58954aeb895fe37c1e2a576988287aa7c6b75499961b8d3a67179d47803bbd7a0302047c435bb500683066023100d628a75aae3a42ffdc2b7e2d2e67858d574f9a4d6b3b4735a83db447f931d8a15d5b2dd9f033881a5b94621789d49a1f023100b39056323a686c7e4962c0129fe018cac3f0419dba99ebb40b8294e02146d65c9f957edf9278373a10501244c40bfb320302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ab12f37a099f9cf6530fbeb9bc932f5a2a630b6a70bf818c94bc375ea25b1c1d08eab36a2af29a9184267cdee4dd7dd3023100ea98ad70f287c31bf08a5a0f6983088bdb63dd81b4fa9ff266b51771daa2866dfddb0600a97ea4cb70db30ae4788f5950302047c435bb500683066023100c49028f044e4150cd6036c0790999dcd82b49bb663d69a9b9508e68f94ff0589c8541f24818854d7d5d8c80fc4acadaf0231008c29c5da2c1e08a6037ca380248985d55717f3705907e2c25d76f0566e7215f65a294bd343882931e701751616496fc00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230038899551375e2df71bebf49891a9706616e237e472662b20e7b3c9e6386134f2c5bd7e75b7753886e9ae9a45c7e17f4023100c47e6f0ab6e67ebe5be4d72ba8088fbb2b1e6f2f218cdae5f49f4a46245d2cfed116a3be28683a604313ccba8022ff2b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e070738c5a2982b8fb243a6695d32d5d4562d23d9aeaca3178976987970a1c240da2a4539f4991c0af2ad5d393800ebb023100f00362db269caff2c67f5d165279dc3ce53a9480b35dec611e0b8a855d71a0534dce2cfc43874eb6f7e0773b108048210302047c435bb500663064023030ba42bd8a0c4be39f9a56a4441dcec1d97980775b7bbf87e8d9bb9bbb91c52e18ffc86a4c05fcdfcea994b9a5deeb8302303be79994d32bf67e9a195331000601e4398a2420dddcfd424f3dd62f44116c0719dd28f5435449f3fdac14fe3c003c7e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c0dcd48236ad39aa78a68b46b97f5a335aa166e61d3e2ed2dc5b381d9f7f0c84f69d181848393b0c60a15eaae425287302310094874336e8b68058d6d275254758f4f6d3e6a2740a0f9bfb568cac3975a179ab617c154ac1d2a8a1762f6e0c59d764830302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a7ee0d5604cd968621a9a8977404210e2d54228522e6549d29838444516c6cdadbe23151e2edb4d2d8d64c52667a102b023100fce39e6bda5094579c6a001cd7f8b29d81d5405191a759f7a56b5b7e99064cb1e9046c4f2ac7cab49a1a39d8306da90f0302047c435bb500683066023100b2c365ee425a475af4d6c24fd9809be010f7b9fa19799fcce2797563c897a082c88a780ddaccea29fd119ccba66d8bcf0231008d8fa570fd21ff49084803b30edfc5146575ee0c485e8a4536081f2d5aabd7f75fc448166dd758e5f1a8c3e4c7a3f91d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300f742293997e6d0215df2f2996ca7cd86c886751740e7411ccf833c2e8fc39332b1caf9e2a0734bc1aaeaea4d52804df02302dcc5db17b54e02bc0d033ec8e1174c631d7c6b908a2a9212a80c643b6d4274d5fa01c6cb609df5804cf4e895a9f85b10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301682a90bf920a021aba4f0b7c505841834c29a9f901f9bc33885d03fed0e63acd4cf2db5f49ed7d04bd74881a3161414023022123b876b0de8fd777fe5580c032d96b8449cd45f6d453959c404cb954cf4c970d4850f68921e8cb3edb7ec39bc6b4a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c6af973033edec968e433f1bf89447188d1257cc3fa8302112e787d88662ec9138b0235d59909d208093993f537545a302305a8e42879d0bc417773dd1f8b7b78daa557f401d3e09dfbef08afba672b82c353249c2c73ada28b254465d637f6d7ddc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100be3cfd0c93c20be2adfc0c4deeba35149bc0c9e76f929d20ca1dc0ae079bb306dfa8e070897eb69945daeec2bb8b125c02303815b594f62b32d58a2036d633e00725d99516bad1151825fd56df92da8110ce1a93f1662def3c7a7c7a98a40432157e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307ee8adab60877914424d279521dc27b47c479bd6ddc8d65af40928651d570b25d8880c1c0054313248daeca99543d5e2023100c1da919d6fa02cd8190c0537617c54a9a637f61aa7aed02acf5f136c1dfef8e575936441bad47d3609a9cf5ca9b085ac0302047c435bb500673065023100b9b54da98c2b0017d55f36f347734a56c8660982495ef7e3712a272abbef4b11aff01a51357a09c10a323d9939a0f8c302301e14e4aa1850ca8d1fee444a092f2ff6fa9ed073ac7d829f6d24938bc71a83c8cdb8f0895c6c944195df650a48d6e0860302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009ba985f7657f79125f589bd94f4fd429732f235da56f8e7b0efb824f3469eb8383711d7b19ece8bedc172dcb5f179286023100fc939eef486dfa1c5dde8621c029bc198a533e6c1312f191b596f5ad145927cb7e9e35eafd6fe39250996be2c47ad29e0302047c435bb50066306402300c2ed2334733c9171d9eb06c2e2770f55990158e6c7be94064fce763f4fcae85857d12cd863594b316974d8afeecb67b02303d90982ca95c751d8b5fc3701441036cfb11ff838af261283a0f2ec441b73f3b7b8119b2da554821ec3b99abd56276040302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008d0bd4f2b36c20279ff679b69991cc4c47a40174e9770ac62069e47d1c0f2d012f1577e706a97de07d2b546d95ddba220230607c131f9241e3992ee4053502d143c4b9d9b732dfbaf693b56c3e615eddcf838f48cdd8ab79a84bf3c069bec08aa2260302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310096b25bdd84a1f5ff2f1549096975edc1eebcb7b46290f92bf3408c6c5c28c6c2ac6f211f66b1495d8f127027b63ec92902304cb1a37c62f4d6dfb4269896434d12ed3a25343516c5b2c4268a15761cbe321e92101578f99c86d9367214507813c2f60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e007bd2b00f136c0e3b2ba240c694eaa65f5e03bff5d11040fa68a3c262c29b6733df9a6afa3abe821b9798474eed2a002305a5c9e4bc314a3cdbc47998ab0d4949ef3ad05561004d115b11a86d9d2d5b23f53803e65b70c8f1d9d33d357db016bdd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230769839a4200c53e9ecb057fbb9aa829086c72f69bf2d65d0113d7cc6294a2fd7e11db1d49d19557c8930285c39d1e85002306f8cdf29fa8380397200ccf7e9434e1e97b31ff5cb8d02c39573f0a733844a8cc2392a600a59d1cb31324ce528aac9550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100840b8275fa2f76fd7fc6a575a25468a6c949ec98868889235997f7c8826d4f853a80f93a2e2573a04119e78b93b46072023100f8dc262e979e2a040f77744e2e84c14088c63afc0c21820a36cd1d3c633f990b97930c06d6315b497fa58d67a8c9c28e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b9b375d41fc792dc0549cb8dd529a70902bd3d31dc60308b4add8f94131b82834b51dd37029edcfc872eea324502bfe5023059eee1e33b6e6bbff66d2c9e3b0a0c3ae23578a76e4bc11599cad636a7b64bbfa66e18abd5c63bc7455614cbee99f0b20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ca10d6d6393c0d5ba7b7dfbe8be1afe356ccde1b2ac1da64960ffab4ed249341db9cc6a75c5d32aeb1a095ad01258f94023100f416f12953e305e066bf74a90473a9612d930ebf46d048c8463224fd0d83845a4706428d1a29ddcc0d6c5d46460d89820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300ab6d014523b1b6850609ba9686af90de8ba92d5425b475e35575d38b348582cab8eae115e64564eec685dc29481f12502300c22c989737a4162a950df8bedb636f62d12ff102672fbcc90067956ce8a83f84649ea76268674b9c2c747d62500f23c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304ccfb855cf142df295c645718bbb5b448112f906044ce6795ac7f520c4256c517c8cbbb70cd8de8638b7001623fcb06f0230369de1be7b9d3b868aad08e16389e4846030a3abf2672cc568bf9952354c1a5e40b1304daa98048b56c9042a68235b750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303b6dd77e9bcd7e110d491ef6daac83bf21e918d5719677d5ae7924d5a661b44a6d1f3f2f8dd299a1c2efc60893f6f644023100d948ded835133df487dd507c78ce1b00f3a61d73c4bfd2fd432b748c725d2da1abb54649cee3f680dcd466e554963af00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e269995a7847a53e969597c1bf3a17e31849ee8f9b3ec17d896d6625deebc47e9f6e03c7ef93c325f1bf85c3f05ce2ce023038d06be64edecea98ef0e3b32498e4cb93794b2e124a57cc1e0fd1ef91b9d4b94852e0670eb11b755beb9351ce554b980302047c435bb500683066023100b338ef7c1077c1446007c06a0ba386f64a7ec46960d86a48c0c7be9f18d6e33c0e1a3decf609f9be1f4fadbbaff1a2ff02310098268370d42fb46a788e9b998fad0fc7ada1362cdb9794b40b234ec8d781cc0e31f6e3c3b3b076e546dee8dd7bda660c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300a5a0b226e9b1e11565d0f0be13b5384a5ffb7b12b28e30a775da6308845df325b27c05f34bbe486ecead53891fb613a02306e0488502d6a816067d777f854dec6961cb0cefe14fc92e304ea0de031d87214759da932f00a2d62622f5c2f155a3b400302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aa6103f7cf26d60593388a018118f94097878acae32983e4fbd95b0afb54cd52b46242886bdf859f1d8fd3155c10774102301ba599a016d05e36b1397b6b3d1293a8f73dd559c28d850ba87a07ab924d93bb82b896c65f9ca2e493f654eaf83654490302047c435bb500683066023100c5a359790870a649d8682389e3674d6d5dfd85266eef7657572e326e1869b17159f5081d546195b271f5ab07b70b2010023100a316bc00b6fd9e660b0f362d94f8b2a61c2f61a0e3c7ae378152818db083a407c8efada1c9e61dc3203b9ee0106bf4fe0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300d3a3ef7a83e110931d886f5a9ac89954ee226f9aded677216e07dc27e37f2e9f5e013cb76a796077d864b88832fc96d0230362e9e23d33a1a663763188d9bf628eb6dc29258a25423aa3553d92e85ce02755648a2a61d3782658cc5830ceaf2a9a10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301d9a973d35d46a33fa3435bd39706191946cf8fe145b03c23cbb1480e1c66c444197a6f3fd0a45fcc36e4004fd53a2b102302beb2038be3cfb23adef3466982269333e5f041b5d1ac8df25a73c045c060bd86534f8e3fb54236b6771286d864b267c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230522fa375dd590809e55cab2a3d5ef2e00b849372033d9c693a1019a23ebac4bc6a2af5b2839c51e1909abbc47babd80c023100cae1dfaceeda0346b5bce6b5d82500d0ce632985f70a4ce05cc5ae4007ec0cd5f9b4d3e63dff87760aa5b951135273500302047c435bb5006730650230282dc577fbbe047dc8d973fa3fe0cc7e80b460d48e8b739e21b7f9189c7aa8c7eb03c79cdb59f5640dba4d70c83b604f023100d2af930508170518f442d5ffe3d8fce7a2240f4586e082ffe95e963d13f6fd23c48e24c38e59bed8d9730a3cf03ea5b20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302a0d97c824c18e6c8ce156b9a3ad8c5f5162c96eb9fb26dbcf8cbe0728091b6b71e72b4725b52f2e643523bab047aaaa02300f9051c0f0561f0283f9c37e6e4a5a8d8350a2d7f591f9e63eb693715fece84d6e29d6013cd57a957cb670413990ebed0302047c435bb500673065023100b31a74d01f63dc699408fe2f6edd940ca47fa666fb1a6e3b8babfbec8a135d22d3d403ecd5066671b6050491896fb8580230309d6e14b31037af64ca580939d59d38d1577c4b3af961e72566bfe32d5c9694697978e82cfaf490e0d995a021fd42e50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303e4600a1cd6e34041aaf2ad068889a1b6edc3a0bf289dd612c915cb14af22e7be40cfe2e54e262cf35dcaeb949597ddb02306952a11f5e7a68fc922b11466c0b81a857fb6e1c4de163a8f44d5e5db5b9b01a9942d1a39b49f34c6f5a3131663a93250302047c435bb500673065023100fa416573d070ed84db7cac61cbce5c06aaab80df7fbbe22df9285a5a82202108414a923a414445039a8ff8871623fe5d02300c724c0f7b5a3baa95ded9c803baa0748f53b5e7f885e475afd05872d1717af0dee7edc1a492318f8cc644993006291e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008063e0592f4d1defa188a7d8ae749f0dfdaf38322e9ea90c321ffec59293ea6a6efc0dbff0f665432378e526dfccae6a023039dd4bb2b9d1b2849d8d35ca2da07e3327bb24edc912e2e399463c63d1d106eeafe2cfde0c11fe657db183b258296c730302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023022df4a5b4a016ed0e034c81d22607412a2a2c7e79b9ae5211305402ce46de5d47135e63e9688ab23fa84433dc9183cd002310084a3a4627812bf5f761ba95f4948047d9e0d85c5c8389a717c8f16a4f83f94c32308782ff2f2c398c464c3484b631d550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310097c0ce15aef8dd4339587a93633b2295d16fe95a31e76350c24c481faa72a855feeb90def36193b9b0245ca7fb562d55023100a33028a5199393a1113052631bdca7d55d96ae9e3f7dcfead875739a5b1341050710c4786f5ed3fb2065f5a7e5b5f0760302047c435bb500673065023100b1a9a17d29a369f255448b352ea788f3270fb9a85824a5d6a1dacc6a96f283f03143e91b3bb37ca5aa8adfbc1552a10f02301d506608719e8bdea1028f1e631d0d43dc47064a9e8e621e6f8c23482003ba4c7fc33833a7e4cae6db9fa5c0bb88ba970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c5b730cd1963303e4cf040731c2d8b2511d8fcdbe6b342649edb5aa854b601de7afe1a9576b4a613e34da55ba5dc9dcf023100aaede727151b2c76a8d8d73a3c9567755d62e273d53bd2ce39a315e440e5c149b6617d5e5ae648f3cac56b44bd956b890302047c435bb500683066023100d65d01575b4752212d6780352e542e7cca7d560ac134b3d3dcbe096100ca666a4482ee2266ad2f87c2b1953cac6f79640231009d84cccf97e78168e02e228e5ddeca1a89366b1b2f47a9e5367d182a43a2170e757f24433c68547f79e6ff951585d3720302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306b8322b820ce96fd37eea2d59b0511687b6d23544f8e90064ceccdef9aa24bb5baf6d81f1ab16720f966306b6287f7ee02307800fab1fce5aae632d984cca96b9290e45c8ba43e9620eced6f7f2aae285b20fc402cda0a9ebf4943d128b9ede1c00f0302047c435bb50067306502310086649530cdc78fbb0a12cede506058590e1c7865d8c4fa1b7dd6dcf0e107306428f3643bb346136f304202719a308e2802301e0cd8b398efaed434ad97745062a5e3b206fc8634cb0b161f814626b11d021cd03304733065d5babc5c85c01e2137c20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300f963bd6b1112f2083cab0d13a7d92e4f53b24bd24078d79ee546ab550c6d8aa239f61f5cc83871937f72bb8ee1777b202302ee42ff001318e7a7906fd95f609486757c6ca52647a1ad5dc2bf0b97c174e09eeb86d1aecc4c55379c9e76767e210d50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f23eb82be34f36631f19106ba645af640b5f050f1809bf57c01b66a4bcd248bfa30f72e8f48e1b396b055da59cf79048023100a1ba153d82a13dd01fdd0c7a533afe183a3f77834a4ecffd36a21509697033e0c8c46bd31d1e18b7ec2091a68745afd10302047c435bb50067306502307ac8cd7161a52dba509b8fc7e780f9997fe73194d8dc3bb3ba65adac7c04fc7314789f971672c487a621e46323851272023100bb32cd3a56b223d434a4ecd671dfaeeb94fb4aeadc58e864fa9c104dddc654cf6a9870e2c3cd3828ed5b8ed3cf8876be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d8334af8ad7efc526ece44072f4006937984f316be496214b00563cfcf01f20d69dc4aa2ba04a89659fc2fea576c8d5a023100973d17d5cb73e88b5c5601dedcb1c6871bd23b617528c82b3b72e9a17280f0dd9c8d8ed5143295f98c11ebaa88b353270302047c435bb50066306402303d267196a1a6f378d6c91ceb0d7b0260b0c4f82a2e2e8bad7bfe8436ed210d670be8091ba84b07b550364358b4e3d6200230088a501319a055399a9bdb6bc71df37c48003a9671dbbad7c5720712f8338973b8d5d9071faab3d4df285e2edfda064a0302047c435bb50068306602310082df884bd7325577bb8d29fff5fb606147e60a9cf560fecb437d3416b56563167d113c7a1a95a70ab3c90ffc76326aa7023100bfe4795ea6574796a52bf26b5f7bbbf438cbba4d963afb7d0ab8a008e9de69f0f45cc923dfcd99231382785912b8efa10302047c435bb500683066023100dddc830dab4e4769ace3affd41ae22865d3d98f171b4683bb7bd988b2ada11c0923769047c34e9eef9c2c77e667b1b1e023100fe39920d08ce4bc85df77c73819f17fc838bbe40a41bb1a904ccbb00083b14511490e1e87617753e090c1400834c77250302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a359638559aae58d2d14cfa47b83c737598b7c5815b61ee4928901321051c36b7fed8ec2077b0b601f6598a3fbd2c7310230199e860f6359a844f3951ff582ac74ea725f35d4e62e80010b66f6f788a0e5041c0759f1a7693e94a7b82ed95fa116750302047c435bb50066306402307940a2ab910fb6827fb4b898aa0b9f0cb66140e6909b9cbbffca721d34aacffe710afee22e3112eead5d59be086bcb14023039b0a6fed1620e7f04cb94554c75a2ba12e66886bb07ad33adc3ddb6d5db1a2413fd8aeceee1c50188169f527879ce190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023056293884a024951bf4e5eff2ed5380ef5661b37539f2c3739427afea0aca206b59b36532e2154e5ba0f1abbdca5e160202303e7d7769372e0e0be601707da4ba45b94a1ee306defe21f03df3ad95d60c32311f42ea6e00efbc611292c5413cebda4f0302047c435bb500683066023100855aef6105b4b625bcfd0140365f4669f3746737e7689e74632c495f81096dfd31a61185d80d55e7cd21816e26f6b1f00231008371585d3145f2675626f5f3ad4c6eda74801bb0e1d05615fa1a9e31ed7409683feb1c56e6f162ddb048a953148f03900302047c435bb50067306502302b78564c54d46d82c07a3a3f7716052303b33f0d32c6bb8189845569d9a5e31fa1f50d3a084f6ffb99efa51847175e01023100b404922825c41699e6badf4d7d194aba648653a997056c4c90e0fa324926d49f1e4455e32e5c35edb94f3ca1182cfe7c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303b1b3077201097b9bb66d4a7d0d080e2721731614c24c0e86b85bbd75cc3fd78d7b7451e7a6437383fb3a5ae2720745802306f1f40d15a95c0c08f898b3881233a09fa1eecf6890727ba2b1f89cacb08a3fccff1b464d86a3a71f19ad1363362ba580302047c435bb500673065023100e13d59107aadd89e0f6aeca7af26023f5695b86ce1d040acd895a3c9cd1bd2fc5b7319768fb1ecec408df50fecc04c7a0230142ac59b756d60838881cbb2d8ad90e20fb4ae4834b451ab7e2c1cf1de68c4c345fee0b8003291b3fc75d543a67e79390302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306a895f51034848b0a5eb859d8e816d7433b3b59a4fc92d48687885f65f4e704092f50ba7915e29bfa3a3d77e4f1a2aab023100970075a4c663f9d9fcab71651c01e4b00a3d41894e40c9e63faf856ff18a03c607b5bf4cc4d23c6caa3552d3416ef8a30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301e14ff8bdbc57f2d35f153609b086a285a8810ecc96236d33910e9cd256dcaba120a5fe727dd0f248ecfe0c47a2cae800230279e5bcf3e44d4cf1dfd0e67a957f0c8dc4853477e75aeafab021e4be0102c7bc308f5eca955fbb020654cd695bd0a310302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023100ba557f2ce7fe51c03aa4e77f38276487adbf931e9ce53869d814c8b174a311f5941910eb6d0794fcaf28c32ada34722d022f0aa98097ac3b017056d3349e589627e537039d5afb13b04c28cb3968077df35e9867328aada67e440ead90140cd17a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306ef6441ce8c5c81f6cc9288a7ffc86b9a880d684078539724b5a9c84987bdd7fefc14e87846b91b252b9eb3ea6d747dd02305fc524a67af69be82dcbad819f129487254bb4433325313c4eab569b1b22ecdd6b9d2584deb42d32fd3124098bef915f0302047c435bb50067306502300edc42c7f9b2045931b5cb78aadb9f1a9974310e45e404be853a7e3cf8cc4a282c666de84117c37034a2ca5a8abf78d3023100e43249df9ef0e2e9f67c47f0ef205626aa1986654bdb18c110ea1ee4d0285f21fa0eefcd19b13b97ac8343ea2be2946f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008fd087b0cfff058286719daf1e7f9a90393913fc2c4e56dd5ec478cb03d5415041a153a799f1ed421efdc2b23b182546023100c05ef2bbaf296807ff51e95bfd4886af11fce707c6b23c21fe7e69f4804acf3eeacfb3dc9d80ca9ce08dd0817423c9180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b4aeef7c37849d05732bf21d5c6697bf0a5cbc842a2b6b16015dabc8484d7692808eaa5a36b818fb480c3475d05e53a402301b3686cb55a3af76d681a0a5ae1d7bf48b7ef8630c923d576c89490af808db20c141f420328d5e46002b4e734c1254000302047c435bb50066306402302a851a2e71a53bc264e754d269ac6744bda5af792f943d6283e0d278c84166037736e42c0fdc0e4da53ab8dd1671e5b4023078f1de0fe72c9f29337d84768b96dfa74c3d8cc923f5831a89dcd8c8a2816bdf6de837555b06a056531d286a32286b210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a87b04f63885efb0131b0862b8582d4d9eee51bf464267c8bebec6ca53b0b446487d74cf3c071737960e69ed302e98a602307c6480a4a59f1efb193d08d67157e010eea56236a0555a052ba579011a7e21f3718a881afe9b780d88104b85f26f46c40302047c435bb5006730650231009dbb719eec6aac39b6b9ba7b0a5f8f441b44a2f9776c3c105f850f35faf6f29cdf3a6afc5d9d86a98cd8f8902b17e3e60230260a2ac43f6005196b69c7b62b7e808ba880ee306a2fe9746a9ef17e6b84d3e53bd122ef352a1609a16bb9bb48f374bc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023045364b8e8379d4ca961fc316d1f21d1fc73c37974df3777c83520abd75944a3847339eafdeb1addc935f9fb4ff2890ac023100d9d3774aefcce3d20c7d0368d481652154a2adc34d8dcd97951847f2bcb433855e37aeb65ddb8de19ce4a38a1c1490a50302047c435bb500683066023100890f56590653d7d9f0305efd66f39f306cfb394eb1a6f24305b5c48b05e2b9a797bf6cf1325b3c206c5d542796a15d1b023100af8bd90517105e5c7402531834fd65cbcfec9c1794559e230e49ffc10f697225862058b5cff00c662584301f56554d190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e517ec399c6a3102ef8242dc04e473bf078abd9bc561fdb7940f7ee0a784b4da4ce15bacc70cb237a911fd5623f8615e0231008daeb85bc21d91c551375a8943d9a7408a83bbf5ede89b576f5e325a32a534cbe67a4977cba2d1a81660522dc784c5eb0302047c435bb50067306502304e3ad794be2a73d400ddd25b1ed557f5e766dd7b8ebb4f364d4f6d57ab785e3a85a749f1c65e30906479e74812278b74023100f1126a2f2a712720e4bae60005138defdff828782e1b8a98a9031e27802f77ff847bf46b7e094dcf6d0ee1a817b2c62e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e488ee44959b636afe46d52ba91adfdc799c999b54db01f0df7ff504491397fe1e7f8c3830e9d2d84e7a23bf16e4f60902300219eb1019a11de8c48d644854be79325373599dfce26d9c8c91bcd93e120bfe0be2ea631540607cea3605a9220bac5d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230211b28e5f3aa416d5a3352db52d74828b00b2c4f11f3b17d4fbf9d478f989627c00157b0dac63697dfe5a9abb9cd0c39023100ebc246e22de8ed30b06bdcd673e1f0c11fa3020dadb4d782a7c8f47a324c2e20c30585f39e35ac9ff56fc9988157258e0302047c435bb500673065023100e2922efac8e02d5ce06306d286c7ac65a4095a657dbed0bbb4c9ddd14cf2f920de35487eeb26b0a11b5d3d1a7289517402305356c1f85d1e5a8e3d86fb7101041afc1c823594e22adde1ca3cae651ee3d491b5c7fbdf6fefdfe9579794adf37275500302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b27642e4b97749ce56142d794b7d63eb0ef1d098356b97270e7415aa80b766ed046cf515ed88f1df5bb4a6710246600b02306c1810766118b44d60c8d42fadb72c76e0e374a4f7ddee33af1ad5b5049df97818c4e42cebaa29e9657359c1a135c5c10302047c435bb50067306502310084b50d97409d2af455b1198fd802f7fd27c3907abad05019140c815f7f8a3ff98f3636a718ec095c09a43d326080b8bd0230140c0fad703265ec5694dbd27d3b08aae464f29793e25594245389e865b55abfc93ec583fc9b0d5d8550f261100ca48a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023057997a9df90a0846a6155ae2676dbbd5c325ed4f2b023de62114db6abc41153c5fbf49e77cab8ba5298dab55d8e9be5402301b70a0ecae39fbc1e6a51168893407b122f16af76a57554e12c9a8fe6a8bb0e673ddd028984c146b71b6da25751cbadd0302047c435bb5006830660231009205992a318bf796bfabd453018bfddbd6efe6344d8702ac977917b119ba8a7f8b108240ea29e5557c7b7112db935738023100a1824e680c69bc124ba47c7537fdd7d4a13ffd1535cc6247d609cf107615d98b153ae0ea55a3f320fbe30070edb3e0970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008f94c0997440a5ad16573f3a94f4b21e06d2a2b1de7bbf7eef1f6535fd9cfae62dfbc61657815ac38aff2ea9f1c68c06023100d3c581df3a3c3152442e7441bfcca1f243187adadaa3aecd330fbb6e7e656b9c10acc3ce2bdcc025ad6e511231a2c4770302047c435bb500673065023100fcdccc66b23a0a27176117059a89abe74f4139f8deb29baa5138b269a239589623657a38db689e14d34830f11da0195b02306fc35efeec6e6f0e996d75ed3ec45e30bfd76f0dec7e4514e61432ff9f04d910d0e66032361e796937aa7165bac1487c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230017dccde5f93e6fbd0a5ae7d86352de49ac78d7fd7958cf17aaed8e636eba5d04b172c390adb55a6130d708e8928414f023100d4856ea45d4bfdd940bde63f45c15f405fdb711c47f80908e1263e8fe352103ddcec8e2131336d3093ee5a763ec962bb0302047c435bb5006730650230354d85d2ff46887ccdde1dd96ec6ecca04f7dec3f186a740d2b033a18c7cd0fba907b2c17f774d9f8fbc0341b0df25db023100eb3577252455e79e56f7ca9dbb804e9cef527bcb0368f356ec9221d41fc4e867a5b49e79e9dd436f439ae4189d8edfaa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d8101cc12683ddea0b872c4dfab7884a05847cbcaa710bd24c9fbdfed8f14466002dd20c0d45b2a8382b8631ff84cc3d023100be9b2098b1b80f436c7976eabbd44b170687bbbd155b741acc656daea18da9169bca9c5286ac468b9852af6bec6681040302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008013a0ae9e0ed7fa39c105cd4a4ea67c0df7e066db01707e2133ff68299aab559d4ca4949c87a5101911dca5198f321e023073932e12d73384d718f57006d333a42c4bf43527e2bca670bd93088301ecb0f9d3e6aad290dc4050ac949a56548a6ee30302047c435bb50067306502300a9cdaf5a12101bc18882c86071fc30509e996b2f29a97465bb5f7005cd9ee71065da655335d3a1b29389553f7f834d5023100ab619b90e97c78599f0862f5e39cf9fd41e0cdb50eff1f5bef40400993dee73c0e70f4dd38093ac87accc89377bc5e6e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310093f5b06adc405351e646a148b3a14b2376bd3522df0c9a69816f30626e183bfd9980a799355cc45b6d0f796d6eb50eb70230676e5e03c5eba8a96c143e685c27acd9e9fc4d876faa06cfca0469bb88d50aaff20ad019340f1c82a518f3587c5102d90302047c435bb5006730650230071ba5d17d0956e1aa92d44aa4ebec8adf5c15ca167e2c01833948a99f76b9e64c063458ae320445749cda38af5dd85202310090fe8949c459eef8d975aa80586d6f67e57363405ea5c2d287209d2871d5eb8ed1873a660cf6e24d5742ddc994a28df20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cb5d8545fd9e33ec743423afd6b0461f556528b1cec4def280584dd9cb23e05709d7e43bb6eb953e82a20140802659de02310083c83838798fea4600d3c6334ddf40be3e5d67d5c76cdcba4bbb2c957f53486b29cc1265071ace43168e5fa5eb164fe40302047c435bb500673065023074e416b224945e062452da8cdeeb45ca022ce7669057afca012db4c94643694901dcafcbc4e2d0dc00e4ceece66fa74f023100f5e1440f1b4d04047f7ae56ef739f2ed7088c794544f2b4927816d4679b4ed9fdf73dcb5b2e1813b494968cb0d4e47660302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230373ad498316df732e08d612442f39b3e34db2f12a3cf0bbcefd99e99e3ff79c271a5a70407ea37da6d3bb801f5f5072a023045751c826cab91f084a3cd198ba7791c99d1ee2c627680b8abd0f95e1f1a3c58ee5a1ebb20fceedeee4c98fc72d2fd180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b475ecc10b6260fe3ad68c8925ce911a5d66747797f2345a998ee2d4ffb689afa660c147a39d5daebce8deef85d2a80502307ad0f798c0125b7de405bd7520853e931bb5f7222ddc8c3eeed105e77c38948318bf578061dddef3558f3572eeb454cc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230021bdd70beb48ed9aef2b7f8cb65250b2dd4a97f0beb04d461dbcb49ad2ec43863c5077bd820f3a5289e6d63936926da02302d02da87b7b6b0f9d21232d31b4165e9d4b7e0956ecab048082260fa6152c40a2f9cbad3f11208c8071694b2d9c025400302047c435bb50066306402302f824638e6b684beccc8081a4b0edd3efe0681d981368832434a49ef07aa41dd04bad33064f0a9fa634aa53f4587b7d40230246a080b2e1c6c37d95d2db6024ab66914122c7c632b93518312d4e8214ee5c978eb497998c8e1ffc0a662e909caa46c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f522850ae20d7e7fe9e5b177b3a6d854794faf22b3969907d425ddbb6ded9aa7ebe970eefb4b3e0a20a86f0f14729371023100f33d34c6002914eef6c44785032af1d96c089fb95741c7484667ac15c58a621d259bae797c9baae7691752b1de8049380302047c435bb500683066023100d1fdb12fc88a2ceb1cf6bc99f76d4e93433bce906467c46e7a10440b9064dc5fab31b71e428927b6429474e699465444023100b9b8eba61aa2a381191752491e5002b0c26e442f235ef6cb875e467b5d5756c303de2117c2237f3cb02585c9b56ae8010302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009696b2227a22602a5ac21bef4a687a6e7d1c5d2a155cd20d5d7fc8398214f33505886045ded4ec0cb5a6a958acb3ee3d023100dba11d85a24adc4ed535da916a811dcec30d5bafcfaa2e46354c27f5309d5f4c81b86a098fcf8ace0830b1f46338f2e80302047c435bb500683066023100b4bd9a767d6ccf7c85618439601b64fe7bfac0aee94833d85374d91c48421ca8756b27ae6d4c626787877667fd7b7abb02310089bb4f9c0fd8765f10ed2ac960991de2729dcad3887566df0c8a521ae1e0de45a27f4b75d344721440bf4820d967f7510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c5cd5a0344bf627f2770bd2aa3b0b03c90c63f20f8bcf1acfc5cbfab9cfba68ef055d2474cb37d2abed46fc970717d2a02310099703c5d7dc36a2318c7aa3454a5a5754c5dc4d8470ac105592006e9a0edc3064d3b688096b1254e3377297a24a797370302047c435bb500673065023060f671fe7e451826c4faa26576b6c07d3c024bd5b2c84072377315afcb2e76342b128108d03743b0974b7784d31f60f4023100a9cb64cbc292dba1a9f0700893ac80ac716c04da5ebdb6bc2b84368f884c0c1366d5007b9c3e3ef1b80029e5df49bcd90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a5672278dbccc854e2531af8b33fac7949dab8df7c454a4eef77b15e224735d9a17a07c8709670215635b7b652f339cd023020b114e60804c5925de3a3566a4e47c6eef1391ae9c0e69c0c4229a5d397e83fd0c7465266234e5dc1793a1eb846b2f40302047c435bb5006730650230079619b7744ab651fe46158dbbe342165bcdd9bc1197dcb8e015be6a2435f27f82bc8bb58271d0e16987634469c87c970231008a25afd2ebaa0f1444a5dadc229c24bd4e5c11eabc6c90bc16de22b8878bdfad32d91fd0cf83d1cb17c0120a3429cbb80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d4018aed6dbc26aeb37170eee39299d4a8e20dffbcd75d0e31fe9f30aac180f1c4f6a3e20a73d1cb39de1ba87d29598f023100b1849c5e29cee89543576519ba87456d8854ef0143f000e02a2dfe9320411af8502ae2fc1de87dad6e957652cd4647770302047c435bb50066306402304e3311e7cfd78065a30b4692f518d8ad0260c6b957a5da1451e8db151670d1bcc05356ec006ffec7ab275a546598a78f0230465ae25f6333037e39b09bf20aa70c72d1e8d21bd1e78dfe20d1a750813b832012643691e43f8aacf61111d54e2ddf970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302017d872753db4cb8dd12fc62dab7d3183954261e6f4f876aebc8370abfdbb67a74d48df37b6f97093496bfe04815f4b0231008f08e1a1f1b51e8b1407ac405d6ccfdd6ba699b11a218563f6f0e26b77513912ccdda6301e2593656a51c51147be765d0302047c435bb50067306502306a06cbd3941006ae720540dde5dd8fe0ee920f940fc8bc9f92e163160cf7e83e1a608ada2c5f110a27abd900cc65dd0e023100f33c35dacca57534afd6967d178c89f4df712662285c384d0dd0cfaed224d71eec08e71b1ba0d50141e24682b0dd47cd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023073f4d7b35535d970721c2d10e361a898fc4eb92e58a88bd104750095693530a73a72412a4bb604acb1a9e0875985bb1d02301ac68a9c9adc9189af3953899399991675b25cfdd9bdc0dd3bc365beb27a9b7bf360efe5ff2f09216890227152a796020302047c435bb50066306402302e75883e9feaf88762634001aa7358bc7d66b3ae54473840e07bea1994e111ed50b1d85675fd93eac9a4267c2a320473023051dcca6cbc352ca0cb5ab85666e6d23747fec5383e33eecd565bf520e094aec24604fe095b61580950a7756d9c42e6ab0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300caf2810c2b60aeaf155555716d48f4327c47270e450d1675daa784530fda374931220ad998ac758aab1ae0e3e9cf0470231009cb9f639eb28cd9bea8eeadb05c53a164fcf9e48baaa9802f59444e1daf64e29518b514992f61532bf8bc88cb879c3870302047c435bb500673065023100e537022c366b8f9ffa66dd08fa96b7b8e65310d15007cc766f61d8ee1ae6bf9dc488ff0462edffcff0a7c5d0620d0e4302300bb4aa5e33ae6564b620d39b94066c06c20726972b7210dffac3113a3c9fde1d70011fb45aa7b269664f9701bc9336a00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230238fc709100013250207109cb7d66a66333c2127b289242d071fbae97b0c1c1fd81ee93b4b6dd870b195cb87f97cd10d02304d19311acbe9dbe5736d14b96e40a92984f583248cc54ef3351551e406d1fbec25b593967c01293c463eb455356594a80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023057f6ff26cdbcffb7b95b30de6664d53d79ee6361842cce60cd0278d1e6426f54d719ff00bca47e5c0b0c17280c6a1b7d023100ecf47df939d445aa4ad4c1b705e7899eac6b21ec7281af90759bf7ce9d8537f172aea9029a1b273d6d8c3c09f37dffda0302047c435bb500683066023100dab9334fab484f3a3815d4cc3b92b9bd3802fbe69e1822164e084db07824fbce286d6045fc3df18e5fbed5847f917eb6023100d380e1610dd352d052850813a0e8f5b67f0f111d602e812521fd579c7bb98531335f10ae0cdbd75a2e1c2cc6034314510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008a2580e4d9f4ab0810788da775838a5c624fc17f821934b4c52e4579231241b0cb6aa719c3b70b72e42d259468944028023059a1f37085737a0e9a64190f3e5d2883f6844ed347a9f906e4495d5e2e5d69d921a40734f212bdefe4eecf556d17ccfc0302047c435bb500683066023100feaa2d112bbb95d934be2863b83cc1ba8a3febb2a2ae0271bd182693c70cc56321a0cd7b709e81d9eadeb284aaba1f7f023100c9c217cb39fe162b0ab36fc781c4391b92b790a4415f31c9eb6685d8002458a360530f56ad4983f0ee5c59c7730ccadc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500653063022f30f2dafdb0f034e03bacdce9b21c73fc5c02efcaba1ea72979471d07df6a24caea785a335b8619846b97d80149829a023037c63ae62ea4a8e96abd96aae82458013c7cedae07b27d078534653513a79694f4b856a88515e85ca8daf94e4b0eef530302047c435bb500673065023047c403a66fbed77e57519b6e9f876115dffcaa53467bfb8669d0530f497881a36ecc23df92dbfd97a5a122242c7c6b55023100fc8768bdeb4de059b52dbb84968f0dcd879aedd90181403d28a7b362c0813d88e3df376104e7477b93a98f7423465a1f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230656e36caf0f2a1d5936c933d346d49797ab9df89b142d18958ab0ad3da80abac22968ff5a698d0d16bfd1ea1b7658950023100d1ef5ff4999013beada03e7a5cfbe52765f04eda60e959a32524f5292769b5d858cc66f732da0a1eab136961ab10de240302047c435bb500683066023100f3e7919ed7a5b8e2b1887da578f60301207b909253a50d1940e0860322a74491640ec2d5c1588a746db58b8d269b6427023100eda73ef5b12172deb6ae1c30e7d31ad24a12afc7ef624ff69fa3423d1d10ae16bdaadf2ca7bc4c4b2120b949be20b5eb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023041998912e0fbb2b71dcdfc65b8bfa6c290ac24a48afe87764923de2049d0ed10ef0b3d00365c865a8e1b2f119f7609ef023046471aab663e13d8a4364c23555ce56ba2cbaa76d008f964387f81cd0a6b1f59a2a055aaf1c66e9e3d6952178aafe2900302047c435bb500673065023100caa5005db48f47a9302c677ad654d703a62a74faef95f5a72992190570019ff8918668e772fa0ddfbbedf220e9a7f29a02301209556a6b1d9f53b826627bb2d30550e50618abf1be4ad6239bfc944c5f565ddd94c0dc9970363ae42db108eb148bd80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230271c9a031b0d5231b93c6a7f7d47a8bdf1529dd772d43475b3d452db92102df8130ebfe9652a60cbb3a2660c21a3442c023100dbd42b54ecca21c8c99e25fa4d3704b83888729212e7881a0dec62cd46d1649333463b8cd164861c4ed52032ba0e3df50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e25ef7caaf7cd0d39ea4046e72f57a643326867b43b75b54d2f39307003beb96f49a72edb473dc47bb46a2bc3e470336023041427c90496362444aaed85926f55e815b5662d5599cce3f84dfda2d2561c4ffe2db43164f9052de5548573ded5a675d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301ba637a2116d129f76ea048e7f304e86997073b111aa585a71c2d0067f8e75e8c30b5bdb6e6e1d0bceebf3f80b7d3173023019e7746172ecc5dfa313e04a75bdf3e61cdf2bbfbc62141e89c55fbdccec26c9d26aea999b8d57706b2b7f51e16673510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303de9bf020fc1a8796a259a1144f5278a2ccc7f1d99fa6dc7d1d786a698aabeaa4899d7f30401f09dba792546e60ee43202301cae81a130084813e9cc353596914993c78d7b475120b44dcb31d3eb4fc72af468cf72128d5b1c5298213297b1a9be6f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fbff668c60635c09258872166a0d7aa91146d7fc11b53c92a60a3641b0ab6c382b349e67dc5aad310fdc76ae5c9d6df4023100f30c6c3c6f8f1c6baa32689003ffbec68be83264523f4834731e24d3a4219af92e4ff91aa3d6e10820f75b4cf4e53da60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009c2bbde542d282a79f50a2acb0690f934068fc73e48daacfdafd34b780a71ae584005b1c71c1b88bdfe04923649a181102310098d4b250a20b4fe9e52afeb5776be8d935096d3235f4013e02c788f26e36281ef918614bccff8d0f7a1fd848c2ea6cbc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023073d14f26223862df425b19ba9c50b7e158bd2330f6a28d8f568f45725343bc09c4471f7d22e70b491b6e3b6d6028eb99023100fac2272ef8bd25e08eddcbd07af7f873aa6374673a3bbf44ce3b902dc7900f8b554edabd52322dbf4b0e23014e5e395c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305476abfe9113144bf6eed249cb01fe7e569ac83b5159c3aeb9a2c0bd73e820b8e15221c4fb4a1d98137d7f430e8adfe702304299c723de02532c3d114dfd16d5dc9ed63049c827e282ece45367927089f1dd0a7713c60f9d3a923a9a7ec1e18f30450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303a572fbef00d4850b30df825c4796b99bdc6bc1e25c312c39525b9298f068ad48c02efdac6fa22b0ce0dbba7f3036f84023100beb6a1cfb651f172ad27feda4a958912f43bc2f71a1e6a35bde0f30f3e5896b33fd283eeaa1ca3c73ac6a496ad48e9f60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310088e73bed95b021654d4f0c37a8da20df29396394124eaf47f819d47e2d9834b44b734a2cbc80c3c1b2756f50accc91f3023100cc0ea6cf4785facaba46a3104614e854f5622028280c8c476e05c969395051bf8ee8bb695a8eb2a7cfa772115e9d2bfe0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100903448181b7052d43902d5c1cd90eecc2ee2bc7c807aadb4c2e725e41d7a36725e75bafcc76dfdb2f59ae8c9c6267207023100c301fb21a2dabe1f4053299e6a404b6044f0a2d168b174ce0125874d8609b658e51339e2b8d0a30d2a0f4739b13bad9b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c14462ec88fab7eddb9e1dae69e1d1baa7ce7fe14ec2a4d500b0de74d16fbd2003f6ea767f643a08bc21a989147eb8bd0231009e4dfd08a19cc6f26af9a68cfc22c89c9fa84806cf54a86b1f3e0116cdbb577d735e46f43b970f86f6be61be29fd3ab90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306d6cc672d557f65aa64e9275a6a841c39ff7b9db31cf3234629e16ac6486e5b3d59622f60839202adf6bdfebf20daa08023100804b4664e27c4481fa053a2d0d030344f53f8d48901e0c4dccbec04dd4596374d7c05baed04bb59abeb0efae0e2b34750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023043a4796dee527448713303b1b0ac9c57bc35d0ced716810ef264eb29de8f23a0b34dbd676461b59d6a871e85a0889e8d023009835382022b756aa5fe47ac5b2b422e330dc915ec05e5e1ba9beebe00eb93b27fea28346e8a0fcf99a3c82b5f65b3f10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f2a840d3bf003cdc025190655d3f252a42340fd03e94aaf8369b338c56cca49f1555a1036116b451dd247d7c6421fb3802310093137cf050eb9e5209a4b8238c43fa4dd5be76ac7e4ce964e9e702d0ce88d33ca4e89064d54608bb4c3f6e752ae00f120302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230267ba47c54a6383d65587a4e3650f4e99c5b59bd00f315bb0b23465d978a64b7696f1ed0bf0c63f96905cbb4abdd92e3023100d6f8c277ce466085ea398d87525de8eabd38aea746cfd7ab48afac25e509947f33ed8e8f2537c76872c57c4001cd74ad0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023019c1c2d49cdf21e769af3e0c1b967bc69fcfd18204450a21603955072a92e9c4bac79cdeb5fd64d592fb4b2a54e7aee8023100e600a624e5e193198743520d22d4491f37f6202cb9f902d874bf707299971af90accb4e80232bba451ba17db289e31610302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307b6e209c046844dbed8e1dba29de755a1b2b56158f6385daccc632ad250dadb173a9f878ad1f91721b0332dd6a0732d5023046ff20f020a9709dee47a8d8f23ec147803609ee2508bbbceba132c11cba1f2f0e98b3c13b729259ccc92d6a4e066cd00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305b41a02db66a77167713f1772e18a66e6eb3db04a4b671a25c14a7e1bc2617612184e657266bb3b52b83096cd0c0b5e3023100eb788e3e93f0c5ebd722e8e6d96e4f1b2dda9b56ab3d698143c2e122b4066e4cf25ec2f38eb142d249065af9ee326ddb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303d0dfe6208139701551d32d2c9ac55f892744cc2d634097f7e2f3e96f355eeb93223b1d67e87f5f94adcf2b2399d1b62023100c83d1d708ad7a576d16e124e215c7bd2889892c3be7bc224f878dafeea62c695a572a36b1fe8ff8d575dc582d4db38e30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023035e304f584321c1a63e9109fae1d8a69fd11820e57851e9a4fc5abd1215b0f8b6dec2651a7af13abd2ad4219ffcc08ce02301fc5a4a3ab075308f26a1813ea7c1c80d668b063cd56f8217a2694fd264add008fec27fff6ed086d8de8014fb3eed5580302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023018b0d2926b820f5e2ef8ce6b0840648b5d1bd1ac33c175955f58e7401995abfcd7ab1347e8541bd90aa5f24f2d9745c102300ccffb590c7ac9db2f5036bea9c7b5390d8cf0ce26b2f57cc57090a52b7cc7a85f4532d46bb43bf1f9e3ee3db0989c580302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ce0e43773640bc8c6f7ec3abcf0b2dfbd63e04a83b5ee309be9a39e7ecf3946462cce088091bab404271d98a36161f0c023100d07c90ad2fcb77d19e755e8bc918022146e0c14bccab8bfcd5355f9a2d346c4f928f6831bdc8b4137f1da12b2de2d5cc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023007f7155375bc07c277982ec2f33d6fd01e6a2697ab5f5f7584978c7b658e571470a01fa8312e0128e632343b28eb0ca60230202e2daaae5010dcd65e5b3df2109c351273d5dbb683cb3301ef5b542b69ad34e0f1038b23a7c40c4688686bcc843b170302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a051a18e53fd0c9105a64748af57fd897313e76a0482280b5f003a1fbcbf6d58d8fb897da45e2f653a4a0a774d7676dc02301d1eba504acedccfc6888a01d196346911f3c84ddbe0e477461c5f7780327c1a25f239f84985e525285ba330fc6c54200302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307c40ce0516dcdc4b3628b66efe580e36fbf02bd8ce0c7cb4fc39c01e42f874ef035f7ab99368a633be8f7814d632bc4202302cf95f05e47dcdcf394bf1958ac2e675b1742d759fe215ac895563193bfe5dfd1fd06a854aceb04638e9915040571a590302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305e0581ebcf0f7608fac748d616828e84766832190c1c0633cc1ac0bafaea315340b80136385c7b4346712bfa603ae30a023100e3f9f8d1efd067f672d14f1817cd5c8cdd014e13a893ed42542b20be0eb64b0b4c48ceccfe8491d7945d5c3632379a130302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230021b9502c38ed410591e8f6e9a7981b257fc9dc5d9c5dbcb12a279f8abab84637d9e75c862d73ee7da6d9d1e7f34a08b023100ce71c22cf0340c1f4dfe6f9a8ac91dc2246d73e7fb4fd2935c4a5c128feeda7c4584745613b76eafe1fe29b1c30c4c2e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310089dc753fc066f222680b9b4606c806035617832fab739ca7b0c5754c48027454af4c12425c1e606028ef97c6def3000f023100ce5306f922fc66961f887b6215b56748dad6cfcc6e7d7918d8aee83b7a5598a17f5d81c31204305cffd5fddd3072b7c10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310098fa91547e25dce38c484de70802cde93672e6ed85a554eb4a03c1a4e40eaebe53703b51a988ec7fbde5fa33dc42e3c102303a96e88d1c34c56d62389d89a83798ed6a44c16ae0f1501f2c454fcba12fa6267aaa9ba59211ede74f2b2da94f3a48e40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310082fd5dc9a5d235906814acabbfedd467deae89310dcb58f079833dab186e9fd419c4401e38d6d433c2828729a7101b44023069c96cc4ce6ad6a5fdd2461aced329e48a00f147e76c4bd4d79517e2eb83d0c391dd31fb97ecb3ed55b9563090a056100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fa1b84143e72bd9d770a59844042ee2a4d45b0af6ff596aa28969bdce8a92c6aefb51fb45b3c857c35e9975b7641a92302310084672aec9f0251ae4e919c2344fb6fb49091946469a5cc31e1ce4106d68c5898f6f7ee57708d1f2367ea563917d9c65d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100feec30ac156a217e89a049fd1ed076376b02b424db4f17158823ca191fef34a88215e60267e6e9e6cdee4568dc5f8bee02305906baea4383a7bf5bc41b47a75c0f84ec209a71661556621e037099ade00005c939da13628e3708ad786cbcac3c9bd00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a9736c5c29216f33d70c356cb3c30f1926455be5b598050652489db15c605acdc2e23ed45422f2d450223537d70b46a5023019e6dbe6715869d51223e8f88371b09baeebfb461b8ff8b85b7f49e3e6980b0e6917da9f761db1d0e97333e6b848194e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100925e4fda86d5ce08b4af5481e76fbf9630de3dea563e6facb6d8552e7cf20ddae1035e7cc61cc39b310b33417cf52b9c0230460f18b2b723a8bf1ac91d4e4a898573b9938a264196303a136a756be7931ed80fe7f038d79ec9dc86bc1a81b41956310302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009143300dd7009e2981850e2ff830ef52bf863a029f380dfde278272cdaabf0c8e254c69017acbdd73f5b8ea8639564c80231009e02e0f0888f86b82c0003ae6aedf4775789314d4de96303d7ad57466f6cb4f72b274205465c16fa9ec07a2e6c63677d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301e66bc0c0f5b1329007dae611805438eb63a301d585c5481cca2ba5579a411c0865c99e984767ba953a83d2ed0980118023014d4dd90a936cb353cdb4a4708ab276a356aff20521168b8b7dc256b202d0f6aa4c38600e584310cc58fd11a187be8410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304556e5173976d869fbc2f0c00d52e7ecab7b282511d50d24502f71400862899644fdf96b843b6828e89ceff190192a0b0231008b130f84955d98ea7bd4f0394f2cecdeb95e80a63601c72bb7499a9a07fdd7bf0bc0a26a8e37f3c7e0d16982a4bf115e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300a20bf113b23f93bfca2b77d230be0da49fa8c6ea8a78d2d1889a1777755bc18039c6578724bcfda146663d4766126f9023055ca05df9fc9d20c8c693b795d129c6cf918f1c03298742158678d144d6e3c4700cb6b0c93565a95b4de2b788125b6f60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cbaa0475d00141c9bead90ccd517ba2592abcdc10e27f72de2129e3987291dc52b0c9319bd2d98e1e227cbd7f3304d430230550f60b65fc9ffc50b019f22ff33f9b2381ae2e067a9c1507d2a14dbc9883f3a7a9bb0befbfa90fd4a570d898607f3700302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ef5733dd25e7c4821eb99a3a07cb799f95b9cb5032472b63c73222055ca92d3f2309a82ab7596e951bcfedebd7d56d79023100e5e10951642e13717e0d5456ae4bce3a1da2b89debe9da3d91812f8cc7475f82b760736818867d8310ee0b85603168410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b97b0b1940cf66a27f66cbd354625ea3ba4ad1bfff95049c0203e3f63805cd1d8bde4a4cd5abc21ca03148a24d615e52023070e85a331756da80ce597d66ea2b9473202a9e62cd66aed13301cf2b636032615d0e4ce6d3d91eb92f79ab751a12305d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305f0fbe1245e907b2d308f818d80bd65660cde506494194e6626e0f25a38a18e384880f9f9733123edf63b3b46bc69479023100eb507bafbbc78f94095397844e1956e12e009fbe9974a9395c1f80ccd5c463ceef182739a1a8b7a6348a79028819a2ec0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307459ab51c1f031671af17460c2d410c1acdfb126f1e5a81a586f078fe02a3f0f5ffb1fe6abc573bfa8456bad3e15bad60231008602c1a439419750088344492c018ed5c97532c791db17246244d26511dad8b24910f80a494e9e0d9f8d3ed4092259370302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307263e31502e445ec6f3286e556c9465dec0a138aa0087f8258e8e0d5e3a5ba27cd87b362f32c42d7cbe29c1707a2b99c02302737e6e910b7b086eb89193aaf822764855b7f951f9dde7da75556eef26fcc799ff86077bcda2ba268014ed6cab695710302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230301709d58cf0ec8ef48efe40bf33b8cc0a52b9506f4b7791811b1d2728152bbb02d8b8697c94ad34078817c1c4f53102023079474430b4485e0435a0836e7987abae89e7b40bf2e68de4af48dfe458714188bf401e22a944da2457a067b27099365f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306084094b654218fa1cae2cfa3ec5fd54f9145cc843560deda11306f16ee19f8cb7304455a61bbb0b9f34144aeaf53d2d0231008c969b89d819226cd1703fe36cdf3760d03053e209a0d222dc78bf4930c70537f87599d0d9dccf0dc2e8e7e69e9e8a210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310093e50da3a67b9bba637a10cc854727fc43ed52b4d5c89a65637eb21ffc69ecaaaec946f01d05848a6e8657ce78e2b512023100fe55556b7acb57c46f8ec005c357ff05c10db4840e3531dc9c2d7f1d4900a35972dd13e7cde0da24710d211104ad7e4e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ad17d1dacd2578184e5030d7f4729c478657565fc3eb57f4aef8cddac2f5a15783edfcbfd6884ef5d9f94fd7f4f35992023100b02861617f0c1113290048d8f9b93c465a217349997940f7813044610050322e2a701153cac30a1b969132b766c4b72b0302047c435bb50067306502307c129870d8d3a1176a6cb43a54be070101462c8f8975c5b269d51f3677da7304a6500d8e6952c533fabd3b440ff79226023100e4ba1a1977fb7b4ab9a7fc359b90b3d5242c72eb201afe4df7aad35822c5ac9b9518bc4c608056826d09d0b8b39bf0c50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307fc4fee3d6024d4ee7de38b8d51006e81f737b9bf5c61fc90923d8987aa8f51efc11831390b4c96f132d3733d0945a4d02303588a8f700b18eaf9fc8e090e49dda0d4db44ea1c874a2349b124004ffc33ff83ab88b31b412521dc9fb1dd40b15df8b0302047c435bb5006730650231008acabfa8de58cdd8f2102ce34532ad1ce66b38776d41b652c6c523094c8d2d0d5dee192e93376493ba3870b31a64771302304485926a84e68d612e96f760d758e576083d46b82ed2419853b4a22a28d7ae4ef64ef65610f15948d6cfda37619c32780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100982d9adad001556047a5ae8b8b8840d9aecbb58e2b3f392038147eb07512c9244b1d6b78b8f14ff1f7554fccb8260c1b0230163835e376cecdde058987f8cad568d3ee15a1bd1f3407d0ad4146c02e9c9eef43ab0be6696df67eaaf987c9e64abc480302047c435bb500673065023004840c300adcac924addf57f4b0790d79be3ef10f2d4af6f7dffe75728f516ce522ac9f51d4bee84d0b5901ae005d6e6023100c8730291046ec3c14efdb990001820b19d2232f492550b55fda0bbdc5b0b115366b9a29e998ab7bea8d3c5fd52a8c1630302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bcf8d945e9a60681c24d2aa948b33b92a96e3dce227813c6fe0b638c78285744216bcf1f92708d582b1b7349b2f8de90023100abc6844380575702e4d46347c7462da9debe0ddd08aaea3396b7102747ed44ada25b6caf812b1690d8d6656f69627a100302047c435bb500683066023100847a355c4d98aff24a56be2d46964c3dab9bb69e1b5cad734e5318dd7c3d0ffd7d806a73f3f14a907830278b0fc2ae94023100d43eb91c2eaa0f72c892e5e53e80c3fb6e7d0b9731c98bb27471c0270ea637757487427152bb8783e710d6a28e2bf9bb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300b0e09e4b267e2d0eb55454c0b0bc81186e5a2498cd0f704cf169e76f474664a38b21e2c5b3c8393961d4647d8767ea702310087dbf94727a1cc80b60239aeb83b370bf73a1026a20d11fba5503e5db7e967e94009d5eabda82bd2b35ea88b34f2a05d0302047c435bb50067306502302b2a28d4243fe2d3abf5f61b644342a67c3e48be5fd8b609c743498b00799fe11bf37b30560b1bc1cdc6de365bf18ba202310086111360fbf4c514200d23ed6a7e61cfb6dc9da386dc8324b9e324b103f7b66c3c75744bd79a0dd5c2011cffed4e1cb60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ad19009e3372c41da72732289069d2513a6bd58ce20fed4e6a8b57f1ea32fa8a8a1a7767aed715748d14ca26e41aed590230108a1d6d862e94abe89b4dd90a76408325843f5125bb64c0010581827d17f32fcdad075cee5ba72ffa559600055b71820302047c435bb5006630640230475f926cc731dc63ad6c356fcd9a2547494e709d4ae6b5c4bcde79bfb40ce0d9616f41cd8178ce388db396ef742062a002303f3ae240d851a57a5528856f3a16dadb3361d91a17e7cf2ad0fd9ed9cfdddad2635f4402f9ee2777281e88affd71deea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302cab0fc9c5a31042b9689a197e8be9f2a58fadc47d1813d85cab0adbaebc3a5ec0470577bc272f510b683b099195354c023100945a6ae37f3b3bbdbe7c9e91d02e271f06c31d0fba72377a050e81811a67ff16455ceaf0696f81353f6853d2941578810302047c435bb500683066023100ee411652cc688461f26a54e74c25c526383228d6f3983780694d69a7e620b92867deb4143410bd514740cfceccb47980023100e5dcf47e3a7ff904f87077b369295fb34a7149cf893ffdeb50efe67cee4f9b0fa42f870518bf94f0d38c8ccf0591c0230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cdbd5cd1f9a3c8a73d111b5cb8baf26aee2c6e9f55b2c3c8ddd3601b5af1e36f242dc5d5bad399e065cede22dfbc0bd7023100af829589954db130fc04188db910b677da2f4c08f1c2e3b07e586aa6cfb21bf82349ba4278312f21d0e6bf8c90b8735a0302047c435bb500673065023100fd397db4f74f8ece605d8a133f68e30cebdc78bffbf5fbe769716a9136885b0b8bb98d5da5dba868c46067ad97c4022f0230190a7890d6440148ef3236c8559b45077797e0a92e6d955a2a542fbe33141b050130a42e78f32aaa1db008302caeea840302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009a4436652bfa5bbefa2397924758a20d99b94faa8e143e8c4e6dd202df7925a8abfd290a1225831cfaf1e96a477878a8023017d1570f473123daf090cd2c6bd0370db61516d88039f5d54cb81e5cfedb8431a024c4337250d01512ebeb87b531aa6d0302047c435bb50067306502302470a2aadb96b4db905ca38dea5d469566c402c3510502d1bfe850842b1a7155a26a99714a0798397494d7c9524ef93c023100a0b63f27322e82f70fbb536a43a7ce0dea3670060f8c19610c0d121643f56049ce775bfbc972f67d5bfe19a341213baf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008c002ab871bf320d8ec2fa53bcd45c4ad783076d39dbb792aa2dc7926674ba47c28636007be15b8128b95fa21a4e5e5e02301cfafec43391e1391874e99e8eebd41cb942bd17e54d296af71458ec15fc194e235ab0f9b532ccf68efb9457077af7dd0302047c435bb500673065023100cf2e0dfcd3d6522a11675183139a2b58fd5116ac85b4a00bc7aabf1e463cb966cc6a1b4b7fc015ab496b3954f8ca2cf40230632e2c288a544cd61202a3d1d72342c0ff71bcf2abc006539be7a220ed0fba3301e6ad7fbf4a623803d1d5585e18daae0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ef00fc42f5843edca0ae37f1a09d588e2eb0dbe147d0103a4c68521d4aa8f5d4438a313a4e5ff0643849f0c45fc2b9710231009c5134f62e447f86207df94c6a97eb17794da5a95b86e351752594fec91dfdf7f9674ca77286fb357f72487b3aac43d40302047c435bb50066306402302b9eaa102b869763fea2fc8e6fa9904c1015b8585c98a50bb5a3994e33037b15243b6d309c6e87076ce388352ccd7935023055bfffc6efcf84d539d3fb36ba795dbebc6b037c41aeed5b2ed654874b4c2269ac86942a66dfdb43abf69edbcd4c334a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304f88d4855efc4e126a497c21cc71fd5c7446cde7efac3824103a3d7c28517a8655afb592efd43bf3dcb42eba04a05067023050d61be93a15970f9d8830a490cff127ab2f886cbb1a8daf5a662e28af6e984b56cb327b38f7ecdc17f1471a1bd9cfcb0302047c435bb500673065023100f5bd2a9b741d21b346b832f418eda80763d51cc95617ddab9888a101d3b9caa762f3f3ee0194e03c8906ef9e2cef959202307242c2aba1b013e5c5be2bd5da091d1e8dab7158ec321e31c91f43b98acbb6970e6637bda64ae36d4052fc20b2c448220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008974fd5c6e84dfd3274424247c1059c168131797401886744d32179a176cead4ce47984781609ff8fc07a6caa5ba7e680230508040e77c6448c5363b2c89f57569b63aff02e4935e9238beedefbee756e3868dd1cfecea31e913566bfbb387183a0a0302047c435bb50066306402305a6fac4543501704069410f8409b3e4eca0693d8ee91b8ebb5de296d92461495fd37f62d6659177ec23bb74b557114eb023040e10709190a99977537e1e0a74f45a3aa00cc42b72bed092518b8e99c0820b26e445872b97cd3b4ef9b408eb6fdf8e70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230767249670579f65c7f6770f483b85e2a696559ff99066800b96e9101431a6fea27cdbdcdef9d5b88be135d8478ba657802300ed2055eddd7c05f2c8d650ef8b4ce5b7482f6fc8f65d14d4188cb999f041b9253c1d94b6405926840d8a617c791c51d0302047c435bb5006630640230161d5de0a3ab3b2d0ea98a35574ff875d7798d4cecd92408de41bc7771134b4a95b6b530bf24338a14cc3faad9a708ea023008333561b5b4883ea6a2eceaacf8f4cb5e034a43205e39bc322603dbc82daab9d17d99484d5e655187a818c071139d550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301103db8ab938b10ab9d79b18731e0c0a3a9d71ff71e8faeebda8363dbef696ec4669e7fb8d994aca4b8e7d51bf80ed81023100d188e889089ce841100c3c471479d0aa44dad297f7bd3e902bdbe8cdd907635afe739dc81d33c761981ab724ec6005610302047c435bb500683066023100c0af0fc909e1a0aa1c463b68ee9e78a85e7a2ed74a6cd9732fd941bfcfe399c2bfa4374abfe2c4fa38eed27fcbc8f7eb023100cf9d080fdd4643926004cbe7bd3c2194606126f0c4013aae8cfb8a1a52c54f61542b3bca44201c14075d0a11f986919b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023011f61020726e481dc388c4131178127b98036666d80e6bce0220dbef74b9ae503282388456f405bde455f6bdff02835a023100a99b5eed8bc83391325e145a026193ff960af53509b2eb5bcf616554c6067b91e0201c5360cf649e5fa3cabd2d92419b0302047c435bb500673065023012e13faec75e26734da2e817866920d511cfa87640c28ff0a8e7ba0280624b089838bb8c1f0070fa6955b9b09554f3b5023100ac4a9ed0d06e847a5903153c28af95872d2d46a5d6cc9cf06b2243fc9d46ff60c8bc78ad830db30a0fe8c780297d47ef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300a0cf4de84b8c88105655d6ffccca8eeb239e15f69af8f4ad959dbd7f1e2abd6f5601e2c8295f7cf17c61815c548046202304757cd92c0b2acae4e944b58d60ed323a106c0103caa0fc7ec98a330957a56deda9628e5a3b2a37c4b346a81da57ddc60302047c435bb5006830660231008c1bf02806bb2f50f41ae79f6ab7a48f40e73610fd0cd7b5e8797315fc57c413dd9f45913ff37afabe4c538fbe1df3b3023100a506e987f53269ee12ef41194c03b63e5427f2994e32b8af4b1240b45c95638c2ce1622306fdce9951b2a4af16a2d81b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d98ca5d6c434ad8a93dccbfd0b9617a752c2c948a192ea383f4e74968b5fec50d1c6ee76a3ffa98275e0e64baf91ef56023009dc08831a0ac441d1e93682356f04613741fd2a6e0746f3bca055aaf0cc546d52ec375c57d1ac287df65d53ceec65750302047c435bb500673065023021f9da0bd8cda7f177140bdd764812f68dde97ddd1833896ea3de705d5847f18947e3910ababdb1409cc15bb493979cb023100f84cbdd1e572a4667d3a89530271c7a71a7fbe776263185cf6d778c17373f24b1fa4f955291446998e1c3e58fd0c44100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e0eadc66eccde00db6f7718816da74245febdcd2d1294e3d3832e49d9278aa8cc3981382e3053bb8b2c9d80f548560140231009e7ad4158c7206642b779b304bbe29f1d9a821f95ae4fb8eebbd3f703bc52e2bdac927249a5a79398e5afc067fab42970302047c435bb500663064023001c86cb6f1db14c806201b8d37fa275329cdbd2403976b69b8b1539a00f59c80d5260bdc4dc4026baa5c9713074fcc26023000b95087eb4de4a3c8ea35e8a816ba269e010a8ab5b45a8fd7856311a61fb1ecdb5439fdc2449fbedc1d0d8976cbf5450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100df1297dfb3a4c9014d480fd2b3436f06099830da43201ebe4a77c10ad4d502e94f55b779c73dcce95ffde8bd50b2d68a023100fb569a48bd5a0d52de8065f78005b61369e53957cce32ecac094797cd98a493ee14b556972c7d569b90337785fb04f3c0302047c435bb50066306402306a61e5b633a4d9314840fe78f4379dd166e49a6a5fb2ce4a08909a4fee0010598feee4ae5acbf777e1fc5e929a66d36d02300553b0a3285b27eebb00cecf87216a58e39fc2b3114153dfabfbaf1609590b2284f30d904fa2d468994d609a19a217c30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230439fcdceb4bafe79e52bfd06bc9fe6ecf212d69a6423fb87e453ff630227c7be1f6b50b11e22d4639deec97d7213377302306e2e258297aa992098c6c957661297ed6d3a7632b44755b11d14e3e5a3de412161c312b9e70bc84b74b5bd77a2f5fd260302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301ada4af1a1ade6a2d78e56dd2ee96ca42971b1ef6a22f9aa92c3043d4cf2b506110c85d99ee9d882481c3fe61a3176b502307176c5f8040ea2b00feb2e8629068950fcade01528fd53640f1bded4edd7b8457ca84b243acd00a12d0cb7febd60fb920302047c435bb500673065023041b1b6efa45d3a0f5234347809dc34c29306b5dc47d3b63ecf135548b98ec8e510805dd6c2f9b6f7eed4a7dc2bb3c50b023100d6cb2989986580f50203df306c26b57fcc22401835074cec1eaca91cd1e64a409b2fda6140e07f39bf5dfed2004d79650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304f8efb060291be6b264f86e591befa0e7cc43a993f112fb87ec7d19498e0c320d69c58df28df32c63497206aa0f2cb92023100df85d17c8dd882e5489d1494534f5131e8f03d8a87fbe73964e87a3607cea5124a42c04eede18ebccae47d1f2bd5c8260302047c435bb5006630640230118024263ac361bff5dbb1be622bb9d789fb474dc5d4d80695c3ac9be3c103d9872ad650fb43376ebaf88e3d6f12c37a023041f9d6855774a476e58d1ed9a6f3a314804ac5038736b57097a3022d114c17fc2510881cb414cdfb9dff6fd883c3c10b0302047c435bb50067306502301260333d7eee0aebd541a381f72428d818a31166ceae0b971dc654dc6db34b50379cdbaf92850964edf3cb75de0e4fd7023100fd1ec313f0db366614cfa0765849ec783de4f682065c93ca3c3d162a0c608403ec0719a4fd39d0bb6bb97c5409cbec5f0302047c435bb500673065023031f811aa9359f0049d5c0edce93496a555b269e77a3333ca987381b3585e2029260a4de551c3e5154ca4ba9b7074f2b5023100a5c33a5f5338a3c87b304886f3f880632844853f82f73583e06b31c9fffa96af7f2143e590d3bd0223495a60cea82f500302047c435bb500673065023100ee07bd6109868e8f928a3d858f44744086a75a3f218ce5f6ca16d323bee23d007f7fd558c21a351299905734427eff17023020f0439ba19c5595368b9ddecc71d9f874e593e85fc809a3cf1ae906981db1c26b1ccc780e81b69658db32934e9192100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c8da02ea0d9e37b9484ec591140f674501d49615309d3da276d9f60f004815e52ff79c1da31b8ca2abfb5146af446ec00230726fd3ded0b701024b455a1110ccf1210de8c7df31c23c82921a14f988df105cb7a5d5a8572357b1ed98682cc8d949c70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230393229992193bd33362d8651b432cd35c33823cd407f38db21dece93dc4e14b0e488e67cd438df0f6d656cdec97a3abf02301c1cdf5cc331a0149ca49bdc5110325cd208373078a40428164e37a21ac6ca8455c7d4cd8d0432255ac5fef11c0ef5d30302047c435bb5006730650231008fa2f30f3bee039f06c460b3905f326b853935642f0d044a8266d47accea26d6e4e80bc377572bd61e1961a8ff94df2b02307879e5c784d99541ac25cdc2cb73ffd74603e10e9ad11dd7e68bd37f457043672f431dbc8f912d0fc9590d9ad3687b680302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230035d424295d19efcc13fa0a74edcf5a57f3c472288d0e72b50e62b6cdd0d656952a193416dca9c49e8081325fea6ecfa0230194a069a1615a6550385c775459a0fe925c22814731f91540140a99eb7ac5fab7797eae9326577541f7a8545523277540302047c435bb500683066023100c4ecd5819fa0941b6341296af31300ca458ffaf0991b3350b8a99f70444c5a75717224ec17d9e07f9a196eb427ac9f17023100c5f2e959ead372dfc63d5414dcf387f6c481910bf23e4fffa8ab6764bc383a6a55d0cdf885c7d2d926d10a99026109f10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230758ff2b0467af8bd51a7d8f11fc6c25fee7fc564da8289778aa04219b065ca07bdf92539b0d26a54e539208fef4be35402305af43666259e92f158778e3117ba1fd42fbe0d5f0ff28f60fc23ef4a84c873dd1e577dd5b7e48584c432f07664e162830302047c435bb500673065023063f19abe2a6e11308e2fd94451f634a8b025d55745c138f8c90c71ed8c9875d1615e20743bf49054b0f698ec9d4bddad02310086931dba7af388a9709ec0e51c7ce2899ab6d170df0a8c584b16eb7311aa82fbefe4ca415b2d595265c6399781b10e1d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d68c9e9dd09f884e76c153c57e80b19e209cf5bc804a0a3b67fee065f9d3a9d361877499bf78f389cb649a6421ad02fd023100c8d09accff61781a418cab161a7c0f9da8631d9af8ac68ac53e4c31ee957ea128b16a6ae9ca6018dee516048019cdda40302047c435bb500673065023100806635bf2be1198085ae455d37a255d7955edfafcb87b1fabd8efc4cfd6e62aee1f0684204771b6d6f3e1c0a964d0cd5023042756668f6eadd2109591e90544ea6503f119beee85f2b7782be3308572cc508507101fa12ee5fd796c35b004eda06020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305787204312969e0f4f53d47742c1cc9edfcaad33dc5e503e31958abf973cbaeefc6e0ef6b57c980df5a78c8d7bba67ef0230163d0918b1bfe598d9ebd24ce2fd86556bb4cbadf65b926bb50f76a89c0e5e373054d469c50e96ad202b87f59b3e13eb0302047c435bb500663064023027fe1e08d21f4a0c347baaa2fa85ddc167c0d3ddd9e20a4889c714e670c7842faac4193e3ed3de3c8122a8b7be7cbc0f02307eebd8e3c9f9cf2a636ba05d92364ad47fce3f625e2385ad7bdd7f5a9f21e080d1e921878ec97c77a7753e2e4c77badb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023003092ffc16dd7ca9b84b10dd532788a0d06eedf349351a0e87a3ec9388e35a3ea5113069548b743319f1cec5c29e03a7023031166df0b2199feb4b4b8214e22989957adfd813dd5e32e5c404e8fb18597653dc913aaca4ef0c395e79d531978092090302047c435bb500683066023100e8e49aa74996fe9f8f466d0ab02e74416d9c0b48303ad8d7970a8c846af2d3b7248d140548e162038eb364495becf3f5023100d22c42675ae5b9311621015f38ac409f1539d74339a47e3ace8269b11af4dac4831041af8b254de84f9c5916c0da7cb80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023057e4e0ed5590615095d40c408c51234b39fe426d24ea1489cc5ddc2b6b672699e4f7f5f5806ef7052bea7f6d36300db4023100b04d6859022e7cdb0d7b199a566fef90d970eb3b3ff303c3c8e33e745a9915348be8d4a790f6a392d7b1fec2bbf720e70302047c435bb500683066023100f5e22233dbf7d43e078372e7f9a00c40c410ccdd823bb02eae86936f17fe2670741393d066adca758f86264528160bea023100f0db46cd576cad57ac673de44d9d6252b572af59a4ccecb906c6d1d2e1f996c482943ac20b8e2a86a9891505dc3ddd420302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301df67bdfec164cbc3581322c80ee6a049c68f219590b6361d5bf31e2c68eb35991c0c448d8e20f283a24c7f4d13f23de023100d6747a875ae2558c0fc9be7854bc95c3ce51de27060857655aef7476e67e9d012d9d28f8bff937434c4f1b5cbaea0ed20302047c435bb500673065023100ac75de6aff8a97e632178c4e4e18cbd8ac075ce583e1220ca1ff8e83bcac0d12a115fc78e969c13b28542000f682327d02302a86dd2b9ecbe4e4eb32d5f07a9a32a9beadb7597464e7296058f317fc853c2b2432b7ffde710359aa1edf8bca1dd15b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305364e971f27fcdea2fa3b05dd047dbb8163c8d76394ec266e3d7a12c18346615b5a26afb88d4c258a834df02a1c450bf023100c7a6c04ea18d03a9f7daf80aaf0356fa903650a0e7568f8a6ca1d7c6457d55a835779b8eb19d5401f629adeb2e09f72f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ef0ead7d5e289129d466b2e26abe48f289d28df172ae35a57c25011fbd1f230ccd34131c569c611db2683797481b5e440230434692e0306a1d0ffd41aebd3134720549cf739b164878d40fa9a964b75e8de668b7b7c3d840df914d2c7f15ef6722da0302047c435bb500683066023100f213ef3676fd7a1ba4e389f0d4feaab30f8bb732181de02bde3bc9e4086d314ecc94b5bd471ad42632b9c6d1648fdb70023100bc86edc3f637e5019eb710640faecc3fd0fc305edab591d8d802ba1e5df4c798fa95801942310e99dd58c156984258360302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c6c3afe0d57a476c7d5eb30efd902a7f6196c61e5216464faf2ab05f8e89fd88a7b26c479b1dd01b464639e516d7c83f023100f367733e65272e54a9e2dac18b057d92d18c5654727adbaa627ab97c2882c7b6ebf7e0f1c4cae2ebb7dd729cc070518e0302047c435bb50068306602310087878f3906b3ee7b7e8261f08137cf6a1959d32ae3cfa26486457e84fbc9b31041a9576a80fe314a3ce540d5f1a6c169023100f774349f1ed4058c14374813488a836c5db60e1ff9a8b3eec31c432327cb8f144f18049595fd5c96ff08766a31f8d2020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ec3c8ea872417ca75969d3abe6d6bc578830b1c86dccc96cd987cfcd11cb66fda8edaffd6cba8e1f7cbe4b3f68d7c155023100c466bb728884a530e32ffcd4d4dd915667df4fdda4f0e40f21b6a0c2df414a0107516d7157f64efe0dcf0f27998785fd0302047c435bb5006730650230764b7096903b59fa9d8fe8cbf62b3bc011fb073ad7b5d303ca1203d0d5f410be12da9d9b2b861f3e98d1686a8286d4e7023100c7047e6e2826ffd1459072dcc9bbdc91b2efac5053e454947a7e18f33c8fd7970776d35b77e822e1fd5a3d553a3060f90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307505968c893886b62bd9d507bc41e94a775a59c22a8f81e1a708229a0d6f9aa3247c908de321b604bf2e80410f7483e60230316fc2b792ff781282f46d8d92ebd396b071e72e1739c523f8e660b605b59f18df7d94ffab246c162d4436343f56922d0302047c435bb5006630640230373b24746fa02a5e304728aa9911baaeedba3ac8ce31c9cdbc0c26aa98ea3c688a9f431a17d47253d80207baa695f1f30230099b483da03a950b3fdb55f49e0308b778d7da40fb7b1352050519c9fa04935158c6c9d0070f8ab93d59907f1faf0a430302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023032a491fca4a16381ba83e48d2d6bdce76259a4589f4cf0480792d2a6abd5eac40a0a710e7c76796054c9e577c4c5cae1023100ca25cb07b470c7b0e2be8b059cc8f7aa46f375796ad02cf6dac0f1bdeed163708e3c861943ab291020ee49e25e5c85380302047c435bb500673065023026c51d4f30af9709a5a25d803c9e296640af9183115439ddb2802790e354d7235fb35d3a1c4015bb0a15fac83e10408a02310091817374a753ea0cf18fcc06d9bc932ed2d8af42b5c489fdf9f751520b45780acb8fb1e2b0d492864840a91180d758f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023065e026fc4f2dcbbcb7d7fa61c7356d63398373557f889f609b38d768f4ea371f3bcb97a30a9bd0c31f6f23496d3a46ee02304ef025be7a7d54fff2c26821fe7d025d801824187b41cdb820b2ffa16c98edb3700effcda48827995bfa1a908d428d700302047c435bb500683066023100a52a66555cade56fd5c807145af56a31b70513dbf96efa7679009d239d1bdc054543490bf8daf544ac77984ce00adb34023100af2cbc407ecc1f472509d4f17d6b8d1b9aee90d7adbc79edb17adcc75c889e0e755aeb8c6af491249a640bb663e3cd2b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c84ccfdea89bffc9b35c7a7cfe3a4652c2b35d37512d0131eb9dee71ea0ff38a3875c5530c3e56b5b525206ff201a0d202310086221e012e5b6c1e3c80c648f61dddd6f830f4049deb242264d83267bb7094aebcefd74434fe53080e81c67bb17990650302047c435bb500683066023100c79c80b23cde31036797d1a6e275c4ec869a4def120a2f1239f201e9fda4e7a145b4f49b30d484fb45acad2f0d31f540023100c04a512ec09714624bf8a1350b75d14e384e467290fe3f68c47ac77cd521c0c5b7eba4dd42ccb729f1e052f6903b30b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303c1148f1d66ce81f967e04f6b7805f26b14394bd45ade569ec22c94c79fb100a7488ac303d8d1d012e16d5b1c1a50037023073e4a4264afd89227695aa7c654b16c2f7519fc2c7b96ae7498c16f4a4cc7913b8a8a20acdb8c3f8fa6f7b22e70dea6f0302047c435bb50067306502304f56d6ffbcc00c35ac6be975fb7a6f766785a7d2e4c53119fdf04ac9d87027308a7f0bbd2f8e6b3878d6e6e8cde08f0c023100b308a494c838aeba1a4cdf119e7e6d395c2766e5d42ecff14cdb859f86a668c6ca6a4f38114665c87474adb5309478050302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230431d2664f95c730b21fa19dcf32628a5844d596f492efff4a3d36d481e8863162b9f0755d47ac9ea0b45c7a1e78d2b4d023100bda662a44c5afd9c5dc0b23e819c39eac6bb4b41b12ed1a7205332acce2a439e2d352af2da67228d57a31c0cb8d22e080302047c435bb500683066023100c09df8b92af5617aedbdf70efda50970d1e42f5c6ca8e65b8c43866098fffd444c3513184c8fc3dee46475f3073dd7b20231009cc316ff86b662c542162915b22dee90fc8f350c4fbf95c6643f9c16a6aff37c262912643fb697e1296e721ee95cb65e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a44ff9e50e4a74c350e63e63c5e10c978c0f46e00f706bbd01719105f8d961f78363c866c1c938e817ac3a3011cc0ea70230304ee254d14619e7797ea3a71ad3ba9d799c0fd83ce04329396cb8ba50b37472ee50ed6582b744855a7277c94ef5bf740302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009cb7e944c73ca22e5846c9f87fc3cb944a6087050fd0f5e4fcf8fbee6649b5f92001bec9cf3925de43415a5baf61107f023056d2c457d8e191f89c3d6380b159591739462f338cde45a318cb8c42358a42a54afeba92bed11d2d3cf7ef11bc4061840302047c435bb500673065023070f04b130490cadbff066c6dde0038cb4c8097833159e718e458dea68c18d554dcbb3bb82abc81915af288d39e46745c023100cba0ffdad50b925f00c4fe40d2018d5a291ec8ebed2f946ad7cf25f13a9962490a84ad419c977536e88437465a4024c20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e0a37ad270710471660dd2a99a823feef83bdb10cbe570ec9bfecfce9bf2e99f0908c2b72c23125ade9bc505f309e65a023100fb03690c7e8d77dfbc25f0bd82a934ab1820ae457346e6aeaf59217a635708cea585e2392532f64e99eb79c368f1291a0302047c435bb500673065023047573d9d401a47794db7967254963136a60123a33734afdcfcf45fecb0190dac0fc5ea21eb6a1784801c7f40bf192aee0231008ba8b9d0248881dd8823bfb98c64c0730657f7d279ac355481e6ae7ff41bc88daef36e6118c8d1ed891c710c7c53a10a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c0c3304ebf96ad1944a97bbfda8c90efb59bd07203ca39abdf07239475d6a31b0013d445f682dc95e099f6556b47844a02304c8f1cd44a4663b4c96ca83c23bb907c3dc49bb8cc0306159520653e80695bc3676c0c34152b70585a1dabc83231d4190302047c435bb500663064023062a3832892d6c6d84c1df70be5f3704a364a6ee717303c3e306b711eca334f34ea409bb504f974be0c6b79766315734c023077a831301dbf15d9adf861d186a7e47d7977925cc7c0ac8defa365e87fae0d1f65aa12eafc71611c01ba7053fa97c8810302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023002563555daaeef6c75d374bb74344b8ee1301d199d2e54393ea25404a11f69c64bffb1475624129d2e305e5d3119c65d0231008e135db3c1af006362ec0619545e9760de9ee403139ecc11a559869c50568d95d2c87560a1e79ea7a22e236e4caac9320302047c435bb5006830660231008ece1fd5bea516710112681258619d283820337a8ecf9838d2f0056b80bd2f1d5a034747339cdadd287beab50e99e59b023100ae7dc984f4b74b81b9d70ab4995686696930a77245fb90d551cfd76cfc13c4e5edc86938e69559f3eddcbe1fd551f2440302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023038bfaf1e525c5f830c40ce322cdd9ad9c3ee38912ccde284e07497ea96dae79d75a27cff0615bceb6d51bc1af0e7b95202302761a2a3ff42f73dd1ed1856d46cb2fedfe9dfd1f035719eafc41a1a27f706b7e0db5b8a8c1ee49129ddc87e4f82e0ac0302047c435bb50068306602310090cb97bf5e8d8f1e87de71603e057440eb2f1b9f81c9cc5211b3a10f828b2a60a72832723cce3dd02caabf90fb3835ba023100abd83bb22dbb87d87dace1fc227b1a4cd1ecbd07e6d4022830aa457f585ea5676321617a8ef21a99c2ab382bbe7cd0950302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dd1341f1da23deb5dabcdc07d72bcbdff1a94b0fd85e6899949a29051aa5f4853b1450b17aaaef056e7e5215b9af63680231008f45882ad708b105b060c6c5991ecd4a92e030ee447bffc8d571a6ef409f878699cc54ff7c94ff9a9c032cf2162834770302047c435bb500673065023020fe1830303bb932404288cbb3495e5f7a0cac2d7f259cf1d8ed146ee495255d23d5f3b1975307641df52d5569a3632d02310080dc0845039bd3cd36310fe1a5e23d108a60e04909530ebdc630bc7b7473ea329b5fcd235712c34831061435c1acc7e60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301e9d5ccb4f5fdac2eb111e9bc4d7c08baf87a14902281eee86742ec042025813429d807a94b6f965acab903d7bd6ed26023026aa1d62da10f1202631e6bdc2c4adfe23b6a51b69ceeb038a40c7098dbe7a850ab68f65f3ce8b2757b6e09ac14373130302047c435bb500683066023100d698c584b2cf2274e47cdf1daf3887ffbe3ef65a64f1ea065c5eefa26151de8999a92ada9b68b312e8286b2e45756f93023100bc29d92a47f3c5c8d504ad63e3828271d1a6314987ec9050c64b38f5003176edba7e17e42d9d779e5e94ed061acc9fb70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b2d8b16178bd032cf5dc75a8e4fd486b3eb3a3c5cb413718198ecd76910c5e2efbbcadf040dbb883fb43219f86628f160230297e5b0a6e783e4fbc6478189122fa82b4058b92f385e8781885c01ed0fab735479c4b54cd1323dc2ad45b48f4dbf2700302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f74878df526809c878ae5fe0f7ed7ba76ab6e136dfcecb16aa3b9d606b61ed0776fbf2abc89274773de6d4f5c1af4c5b0230021265cb4308495d8d21a8677b82642bf7dcad983da900a091a36b89f339837a29b8b7edd6d8552c102b99ca3bf30d6a0302047c435bb5006830660231008e0bc9066725a3cadc9b0e5209585b9f07dd444e5da8e049e0582208280e50be7593f9b2ffba2b1d9422a0388e8b1c02023100d89d2fa715951d19fdb1a6728ff5341d2f06d1d2bb639ffead72bd4054945899f095cd630bf6fe2e5b7bb4d0ec5fb85f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230272caaa83a3178dfe872492d33f329e6892ee187fb203fd4f6b5c0c29b9710aea24ff1ca6e7fc1657fb5f5867e03f1ca023100ce77d5ca48765e638c8c6147069558a16381ed7ed24ae43e009c718749b11dc199ea76bc19ebfbaef2601540c7c17fe80302047c435bb5006730650231008de0d89e46c3d09986fd366d74ffa1c89f4ae9609209a94c73d9f988fe28228e74c1bc0cc44193bdf2d34934243120bb02302a0a7b817db05bdfee9e44337f858a005acc803de862f39744b83320618a04adb22ae04e3ab99a36422a49b8056d7ee90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306ed932718dea3d4116cb10a2a6f3fd57629a6ed081f93f75cf3525e5ae43006ae30004eeb6856ef4724279ccdb2602bb023100c42223a671df6fd39c391eda656c7d482911a02b77334d8b1905e99ce9249f99d735d8ff026e1bc4c3f1bc56c5f483ec0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023041a434bdf8e48f33c1c4b8599e1a85d87488cf9440574aeab6471623b42f57b73e6c25780e9f8fced2d26e2034b3688c023100a1f781558e2d75273f2c09a73ce2df5c75cfcab12a5635e106a1499dea9b7cd0e81ac42576f213b449c8e2a89fd2d2710302047c435bb500683066023100c17e6ee1d2f927ec9f5c8ab3d085fa7a797f4b56393e9e01347c22105bc4f7c009a5d88ea7dc47076c67b177f6305e31023100dee40954bb2b1e38911db6103c5ea1b8c5df8eab3bff14c03601b67e04e05044d1cabcca216ea849e1e473bcd7035baa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302db27144e42d493df8b5a67730eccf098ac6e8fe51dafc44b8fa65ef772130d01e3c144cb959026d4e8bc68b4bdb333f02304830a2e95381ffa1b21925b63a4862ec9efb8892b4329bf295645f07637a704657baee5944412f51429b374a93aa82730302047c435bb500673065023100fe6d19a2a6b16dbda3b6df54ef57789a01fc7e2abc99f049bbbd4ee2774595e0eb96d4a976269d32c847702d14a1e01c02306f23a6955a065de65310b59a99f609d6d1373c8b4f60d64ecd53044e54d15518166057ffe53f5b8b064554d4d66da9f40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100859ef0bdbd58e48b5e17156873daa141ac29eb04b7dbaf385a28b6274d380458af033f02cd724ad1457ade94ab59874b023100c4514de4e96129ace9f9863e931d9b380df1d1609abd133c40d156b869785331cb4b05179be154d4d3ee294850d955ec0302047c435bb500673065023100e45c8a0600cceb72d76354e4f2686a7d562876bdbba6823bb0ee2990e6eb198bf085e191df117f70c2ca2b9b80bdda0402307b6130a9abb5b2f370d95c97857b43ad20792c8cf9ce6abf9c35323700ec8c0cc91c7d7ec6ff51cec5987475b4a9f39d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303842bca35cf1a9633a39f8a2e7e2a9cd1f1f833ca45a6853c6b54350763b4851d65627855ec83ec1d5b02377efe0f146023001416601cc322ced738cdd6e3bd32db43fcd857f80827ed103344731664d931cd5ad81bef683d484ca68c6cbd9d160690302047c435bb5006830660231009863407173954438b7e137a0278bf334717f68360b89b4b6ea60ca22ab27f7eb7fe3bd2067da2f4dbd9f70af1a7297e1023100d85d5267e6e5900e12b9ad110d6446a96d28c33858acb6186007383f5bd521f150177ce6c09b44ed6f09f300c88d80d50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b9e4b7e705c6cf9d31d6f2b56d8e5de60c6f7cc7631d780e6bdd290b122295fcf81dc6bf91d848011eed19e7e3354ee6023100bbb2019df3c5d201b9124aa7ef78e867c24ad20147f7aa47f2622c9bcb65b1cde150f13e0a54695884e699481c0c6d390302047c435bb500683066023100f601f1159551d964e76e14d24fa22db564abf57c3187833cef844046baa2861603bd60dc085977dcda6e1224dfc97374023100f2807296ce216e28b70efd97034d7f15309dd785091ebfbb015265569e4fe998779f969e6c84bf065bd7bd17434479140302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307e3afe13072420b285861545900613e565c97f6ca13a108c52dbec820c6f267f1bd8e8772893e50cf3ec4e2b09d271b0023100dda06dd7219a03ffab7441d3b4b1af492ac5af214c463371576845b1d714e30eae3f08df9d9edf80ad186a0351febd7a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304ce7317ebb02287ff6d7d66f500c40f631a5ccbb1639c485f7cfc021ee4dccf20a8bffc12c162aeef01a628b66b43fad023100c7c17b79d97b4e73494b2865bd02abf6b9124eff1161451bafa9dd791cd7dfca4f5f410cdf95068998cd44619f48cfbe0302047c435bb500673065023100d9b2f5270d7c2e97edaa34dd51be0b72c3b810a4d2558e6c8e38df376a47ee525c7afc7a25734ab76ca3a76d6fffed1802304c396e8c6dae6bf468e74b2ff08fb7e480c2fd4048aead487d561d627f9deb4680cf5f1dae93133ebbc2f3ff258ded2e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302cc55cbf1cbba13bc3c9a8a105b4b1dbdf7a9acf9eb75fe37dd1b12b59b972046a9bf37aaea241fffe8f6508b38b40e00230223eced383330bf761c2313bef5535aa611f34022bbc0ab9087973fc7b15432bd89c49a6920c613659eddf97e194bca50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fb8cc428edc6a0aa13a24bbbe416b08956a9299b990ff2b36fc7c80a672fdb2ec4e2d38413dcc5b254c4194ee27a037a023100b8d1b851be8ce6042bb68bbbab3caa7f2aa1a01a9928f348e38edbb1ed484dea847a92a50b5203ee7d5f8edd2c0c06160302047c435bb500683066023100bdd55008f8d5631fbb74224c564edc8bf935fa3bb13e9b68bb77060f4e1f6a4b808f012f516bb777cde959a4957409b2023100b6652108dd1c227471cc385c004236bb1a4b7e5ff15ac2f39615c8e2cfb61e8bda6fbc73e21709b7bf6e6da7d2aedc910302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023028565c92d4df992ec14c875d24e6f93bcfa4ae25b92d5712479425ce2ba243bce75d68e10c04b3cb935a0c5dcba253da023100d0dd1b4e8c4c4eb47c9e7a6c1123ed6557ac14334fed671ea7783303f1105e5e5f933b9e535f7ba51ac8aa0cd36388070302047c435bb50067306502310081674100b0fac8c183c57f7122a42837a93e62bfea453a9439b233636d590ab3d6003c417b0dda4aac9276a8139e7967023013969b1a7a8076322c3f49e2de1073532462245f3f504250d11bb85e242f33f3c8a8d71a2e2aaf6b3069eca59083b4ab0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009e1565fe0c9e45aec048727be07bfa1620d15d25eebd625c455ca8291f3b11b04b8d66179dc14fc01d0ca391e47c486f02310085bc05c5a216ce873f6e30e54c89b430660f7e2959ac0c6200f8f162acf901d7ebf821189b80b9a6e1a7ff16596c49a40302047c435bb500683066023100fe1d5407f2651f45376e3be2f9b68e715888286da10385d84f60cb65fa833722c323e5ef842b074db2cda9a4ecf2c2ca023100842ae4d3e715cf253c3d02bffdebec2f09964e319aa38aaaad5c63c60e08413ec4542ab47e78a9e8501dba33bfdc7a540302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009866ac8fb8e7ef5e154257dd53aed6aa08881828d8d1282a5b42776d12ad2bb61f65c363f40dba2868e9d9ef97f8d482023100e2b366c06d2c09b63e43f397fcf9af38040bbc65f1f3c5518973487359892323c2d1ece99af3fb98909c07a2c0a275c30302047c435bb500683066023100a15948c11b59164e0ea5c2887be7c6f6cda962687a7914972feb18fd82ef5b59bc56ce19d01a333409a758780c2a1ea0023100e441862b32ee21cdb02a23e25f1df4e02deb706f554e9374f5d98b2e79bb5044b6638c61e101a2d94616c1e57f3942040302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ebaa3aa2bced2b7ebc142f5ad2cb521b8cc9c2dab6cdaf21fef660a9b5a9e5c4270f162d4b24cb5e4c00add28e6f2ea60230228ba8fd1c649ad645c1fb92490bc9fa159cf2baf81af72c64061e109c396238b9253011b992ce483a1e814087d16c600302047c435bb500683066023100e3f97a9a6b8aad67e5201b1b59a81f116860f3e8e27a9a16346031c266b1f8fb81acffc462c488ce43ac2f06f5dbfedf023100d6fab76be10c9fbb03b1eece36ddbff248b2dade6792885be73aa68930182677c0f61c4fd36430b9dc14b203feaf10cf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023016392e90a66e364897649009afc3097ca0da1742790e4a3129f8bf5865e633f6628488e613cfa427bf0d047e3b92a3c202301f29c03ee59824204212edd6044fca98d2b1cbc33dd159889d35f82dbdffb16e0135d503088a1b7ff390ce4432c6f8580302047c435bb500673065023100bf352e06a1676fe2bfcf48f5d187c614bcc760de1ba8d8e1a46be53f0f3c234fac4366601b3eb49ae544b02726ddff3902304560cd71f1250ebd8379e4008ae2e382c1a5f40e632a1a14f5dd46df77b315b776059b56e8aed48c7996f5f1e291f0af0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230669669ee5cf7bd3357f5aa8c8f3a51b8842d0d44c876bb3463f5c8db213b37cfbe8d5683ab1c3702d16b8e9f54d07762023046b97f989a48d20fd35900cba10689c563ca89f09dcb5f6e164a71f26d9a79cad45364f0626bfcba9da45a170bac0cd50302047c435bb500683066023100a4ffe3f6f16eda74d12daeb9460cf30bc2ce9af70550c4ccd46c990c5c39dc7a03b9674ba78511e9df5272e9a7ce5143023100bf76ea5377584f0edf05b8bb1228ca8e1e48bfc15da28efadbb09062efd9e9a93ebdd66b1f1118d7814967d43dc0a65b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a788a078aa9f7c064d1228dd9f06218604829a47740418f0359623a62ad33eeef0d8a79f87e5add2f0cd85e14177716a023100f5cc2763663eb51f82014e8fa68154b973b7a4a96fbbf2d3c93a513134580b34c2882dc1b8a4bee65617ec14fda6fb4a0302047c435bb500673065023026db2bb05491b4effe5f99bb0306fa95879bdbe67346cbc604c46a2918cb41fa170887d5cda6cb3d7ecb7c4df0aa0ed4023100d04ec57cc8be97c1cf5d5fcf551a6c35de9af787a31db2d6d5b44b15ef6aad8468795c27368308ffd719a3bb85b29d560302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d5f6328728cb2b3c42828bca2ea7210c20de9cfae702f2584b785c234ad27ff526f174453dd65b9cdf53f6693da135ea023057ab3e42293af36239aa5dbb0f2b38511d1316c3ec70e85d0fd997b8072d7fb8a7b6b6ad4f7f6fdecaf2d6406a8254b80302047c435bb500663064023059a02de995b67387348d07e723d75699fb1fe55c5f85737121ab1c381406cb1ae6380d38b931a35c6648c800bb0a7dc5023057563c51960d40110ff9d3e74f3c04a313e0fd4a8435db8598ef76745d7834243515be447d338e63e634a4bc4d262a700302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230436757307441c5a7062e3cee3409d1ad3c8ae483d66ecdc6a00b12e02b47df243df6a3cbd42c5a91a3371f1ec0e1754c023038597a5630ee3143e7fffed3563a7ed32ed40938f47779b794b472a1f4a96c7d8ba872982e08bbe89a9911a66903af9b0302047c435bb500683066023100ae3e3e11152879aa4e0036ac474f3a4b39b281e507961f747f3c00db64ccea73bdd58aa18203fd1b3a9e88ff2f1bc224023100b020b0355bbc08a511ba560d07475b32671388d39923c48b9c53bbfdf1154cc67e42e693f6ea5ea4f8f8018c5a55eeed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304d8eb9988f3750f355c548add19aa74bedc609a474df474a4dd67e86c9495facc23fb0eb1b2ee8a86ff2eaf2c90bd24f023100a5f5b1c7813b5ee11d9aec95d4e851ec64ec0e5a35ee5ca214b21bb52c7dc825c7f95dabc1f50782c713f9d5c34231260302047c435bb50066306402301c7061eab445d39ec0c4c965d8ec1df73b69ccac12cbedf9556631139b4c409f2a9f9a0d4413e113cc037a3781b7ceed023068aeaf9f65658ac6ccbc3a35382fa458ff13c2cc6e439c1438e6ea11b77e9d5c6e203e4640e07b31a6501671ed06eae10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302b0b47d945b12e86e7b6d2a4ca6b6d0a063b89d0704f0990b00f87b72dcc9364f3d211607222e1bfc8f7992f6316b84002307257c5adcd3599a50d58da19469d21b11adc44c750bd72aefedc4a1a9e14f00d3c5c8ce76a5068ba880de49e032918b50302047c435bb500673065023031dcc5ea31ae40b43d7a872b39f0581797482a0312b323d7285cf76755d9a73ca182d66f60a8bafa15ae9538bafb6df30231009d42f51c22d3ffb314987f9b909a219340106155a693eb326375bb8842504de30f5904ffc83e7de64969e038a2ef988d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e1d50922971f8db505f4bc6681d276bdd648bb812f179cbdfb2273837d017a5d6dd99e1e526eef131f5f8a8b93fd11080231009e9c37600111da89e205b562a933f798982d27f2cbbbe291c9dcc345fd2626ffc22f776ec8bfe676f2b0844ea6fadc2c0302047c435bb50067306502302167a0d57d3030d0fc4c1443630d42ede13e6e11ce2b256a53c57a77043b9d3fb0d77fb6e5f3852f3d5e5597652eb379023100d0bd0b913ea994d77014e1badda2792d98763ffc7c712a7463a8557876936cc84c040a4c9e0b4efaa66959f7c401def00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023019601df10469967305dd005fe9c59f5531ea9d4f5cfea08f17068ec9dbbc3cd213060cbeb69e58d17d557b6f7e62a4750231009cdc1651aa01736961c353b4c562b92e0a45ab54490f1e921adafc6d51d03d006968ddf53d8f49d8a20af1c1c238b6650302047c435bb50067306502303549044fad861e3dc850bd546f2e3085efcbd583065d610f3d774e45b2e697fc6eda8d71f328899ecbf204a5af4aba4a023100f72ab5a728062655910a0a6c7a7e6f0948139913e965a2db1dd784577ad73916a47c984e6bc9d97dde4626b573bb1a9e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304ccb595b5a328c122b62425abfbc71415eba3fd11a7cab3092b85ae8c2790e858af27653b8174efe0f94449a8e7d3193023100aecb54861c9f0132d87310728419e6537b9521ff5831b52a93613e98a77efb8ebd87ebb6c2e1381e5a35b566e689d20d0302047c435bb50067306502307e9364c911089435dec0d741f282e04146558c6a5212a86165175f5c5f0f5c18b6dc53b8666202731526762cf9f2e18a023100fe0439705cc2f6f1f30401e1aa0e9777b68f5a33bc5a15d4d13e74abbc229276fea20b414c474fc32e6970562e0fae240302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d2c2d3e97c53d8d2669380e82ba3d4879a1cb805b1ab42c0b796b82e13518f0f61eda9c80793d9375800036ff1a72cff023032fc09715ca1a8c389d24b894174bf5eeeeb938515e9ab5f647ee209689776d3ab5432df0ee0ddad8cd6dd9e55c9dc9f0302047c435bb5006630640230534e8dff766f605eb639803dc4712f74e572c9b2ace4e9abd5185f5a564e818cae410eeeee4dcca664fe7cbdb1d9e23502302a40106f999a99f5de3a2ac493c139ce2e03fef1d3cd66938e273aa7477ccb4d1f3e43191b4b88a69ce7e61f219b7fae0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303959f595ae2bf6746d96ed9ad8835d4f0c871227a36f7b0e07ad95517a847f0fd6b148299465418e18b878ce52d9da4e023100d475044be4d915417dc055372494c1b9fbc656eb966b78ea2f1c3b7f33f1e048b74ad69ddce380dcb999bab3b6eee3a60302047c435bb500683066023100e5a515c8be43efe47e4921bb63986f2107064702e551df1c5cde5b5d6831a4119cbe3e38654b325fe3ae0b55414e720602310097dbc128e17134ae160a697c26f5b974ef56e19c456da778b32944cc59310e8e637ef56c6c9e5cf7a90c4706fb2411bd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306158f376e064a71e4898acdfa4171b4324bdb27305bf097f6efdf8f7eb501f7e763216c4fe12b1540af7fcb7677c91e4023100c5f44182912aaf4d9f00ab78c119c2d30d05a300e802aa28590b6978e242afd424b28f11c9198bf6a362e4b7d0ac2de90302047c435bb5006730650230594397b543cdde6380f26245819e19cd19e965549286de3f0987ee8ffaae1d2e492582763ca808f45bd6f2c797b1912b0231008dc61ed75518fa68d3975018f69bd3c2f64ad504ed757d6d5a3a355b8886b756a0a6aa6e7da05b58f98d8d6b824fdaed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008bc621cd502caa02eee64a70371635f0e2477b19d2ebdc3595c5c15a05f863e42a0017fcfa1170927560ab9daa59c51c023100ce4633548dea9303e42b1898c00393ede640de5740885dea131f44a2ab16e93bfdbaf19d5dddc277173e53a38fa51b360302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306ee72a1fde4e7071b23f01d2916b3277f80bb58e8060ffc3e4669bc9673a67ff700cc6a662015d847716c9d3dc55129302310085ab796ad5c30262c31280cd988ff85c8534fce4e97fcc7583096530739915bd2adcea3b2f2447754b68a5cd708e49160302047c435bb500683066023100d6505a4ed4f74d09cfe20ffe11809d503950f2d030095d46cf7c629954c3543da7799eab5e5197060537edf0baa0187f023100ce8a3da9b7881ce5fa9a469c55541814217491c6cf0a9598618053afe11549daa2d556c4eb4c6a0a673bb2ad9ddaee620302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e6fae4955c85dd058bb5b591f937ca9d7b718d0966d7c942edfa67c80a72479743acdedae1d36cd99f4440cec25606ab0230359f7055d3b861e21b95942ebcd3206acc84787c46494ef095d52380f7d15004f3b3f058c949de84e00e6448ffb59c100302047c435bb5006730650231009a27b2c17cc78d41a6694a17152d407ab10712deea02bb15cd3612d2508919caf0b028c3181adf713b4ecc4a457b43710230446a56adc356be161710a1507c1907b7570d244cfab9e293eb0578faaf1c5d60c8860142845196ff2f4d2c8ba8e63c470302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302a43f6133b571858706e964398ed52482cc9287e2409610a35eb9511cd89524a8f884569a36f085a08eca3d54142c991023053114ce7a4c00359dbc02d8fcefff1f48b1309dd6fac187d50368b2f5ffd1503ab4502958a2345ac8313245a7354d4de0302047c435bb500673065023100eee3ad4014ba878c570167a08fe885fcbb816189680818896ef0537bcef064df355a9a7136e6d38765f06a5c5a3075c8023036aed16d61154a74a341e53109a21884295af7ce5fe95086c229804d4d6e7ef15ac186d6a8733826412cd94d282b56490302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230655d7825abd752d6f028bc2a91debd8b180c1ffd0cd12cfb36cef8c01138fb814e41c7066a0ad184ca22e4ccbc7f9649023100a7813d625f66fe815933a94ce0ebdf9cd85d36c8103033957b6005a83ebd29710a008a901917b9c8c488e175617269420302047c435bb500673065023100cd068b88a043cf9812c4862695ef2515b63c18667e5b8bdda3a19b1ec471d910fa2171a21d0476acf4c2fcdaf79cd09102304afe2ba692b509fb55530ee5c74f08baa1e5e013324caf458fba8834bf3c21253ba658743d6ebed9d7e75e125e08c8750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303648305a997e768c86f161659c4c31d7c5f25bea47f4f69d1b20fdc29054361f4debfb3ec84efab0c70e2de251b0bb1502307f50bcebea4b7f727ce5c9522954bc2aaaf911eea0696dbeedda6dd705b6d0e8ccf3794dae007a0eb7d1772c3c0971f70302047c435bb500683066023100d0ad3eb1c9e7f91e0ecab7eadf5a91046decda6370884c746ebfbac27010e3324cac4bb572c5cbd0a237c17bbfdd24d1023100936bd38426d99dfb63a743c5554029712f94def63b0888947f1eb8694420445c353dc7864d21ab091bc34d99fd3dddfa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023004d911b334491b088516f221baa18ed075b21ccaac7db4096e1298673d7b544e11013e519752941902d91cc94d0698e602302e4599153a3ec22b3245a330fda3fa7e8c1edc9c22e0ce8eb2f4997701969831c05d6f394965526fd16b41420181561f0302047c435bb50067306502307269c90f460e0c54990018744de5541e1d42ffabee4cedc33950537c315c92e0883518df171fd3831d80099f128627c0023100e51da3b63b7c6d541d32af9b3a3298d6cf2d5c02c4ab3b6a177327ab8cd0af7e25b69cc7f80b24addbf958a8c6caa4130302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023068dec3741fba7147ec76f74aa34ade6f6cd87f24128d66da95b742e53bbb0e90f1ed6c9f5b3265464c78e3765e9bdb740230743f76cc22d14716d00a0802376c1442ffec9841c11ee180a68fc0e7b5f917ffa0c55d9d5788102285612ad5d53c3d1b0302047c435bb500683066023100d7584cf5c44feaaa0682e999dbb81f042ed4a36914f7bac49d6bcbdf376aa23a701853760f24b3ffd3ef6b6f9a12ad1a023100f5888b71de885cd5b27e0998e1d353217bf5f8536f1195589a9d1a91833ea55008cace52910ab6aac8d23c9526fbe1b30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100888162883124891a2f4bad597de4c7538044ead39a71f8355886771e3e341bb892abdca71c32504417bb1f31a3abee3602306baaceb3de44944ad2fdec9182f54c9c5a5d03528f0b240a488fd1ef65a3b1175da4924d28bc2ebfcc85c1c54f9ce1c30302047c435bb50067306502300c9cdd603b5618fc9109fefa77b16bf1c6e6a12305bcc8e8d0c4721ef5b54cdc32d7f71efce35c277cd8f808089d2869023100844d0e1fa8b5e8e3dcb4e24638365162b3ebcf78725b6873736b46c543687deff6fc6b683356a1b45a7093baa08631cc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009a41a67cb1d1e78a24907cf6b8837749b5748419dbb49e5259086c6ddfc20736e9fbbea9c19601cae2bef1b2b75a139c02306bea11d1ccfa4240ef4a76101d11cf841607dd49ef25585a1f76e3bf5f22885ce78b67072ee96092c782f6e3afc8f96f0302047c435bb50066306402303407b1482400afa2298cd704aa0652fec0033d1f6936d52bfd876d6afa7993121a3bc22855b1c102c4ae56515023d064023058ed0dea5281051f75b42fb383ea710afd508927620dd2cbf90b9a88f78541e8224c4f9f2a451b4798c9f02d359f5fe80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009381d40f74cf8c905807e6d6bb5c55eb004c0d81b9da7df5288c8ec93ff8d67026c338301e5f6f4423f89a8980ebd53f023100ba0428a325e90d6432b141831b4651450322fd52754d8c1c97edd647dda07dab76d23cff98dec757ed9cf6486866fb170302047c435bb500673065023078041f2755c562f58f742983daba780f2874f9e8b24090421fd31b18d535d7c9a485b9aa020cb9a3408ba716fe5c8a5b023100df01307ccf51df1fd275029bd038c1029d92e2142b7d3a881c897b815bac4238c6a5600548c03e340149628019cb3e280302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a98812d57c3a335670f81031f54e09c83b3e43f5c2ab76ef3eab7569650500881bd3232d023e366660cd0bb20ecd89c023100d12cb800982be7a283eb9a626c39cb28ac5cb5d111f0d7745d9017b20444a5c723b4e39fe271c540f1866fa72c66f4950302047c435bb50066306402305b40159f61d2367008b321e0b3da9ba306740dc390ad70e46412245a9d9b2b53f71b077b6bead38265fed035a2101063023060fdfb5ad76e79529b0bf6b2e3ee51b0675e26a98877ed9d28cf07a23bf43c5cd2b9f66bfb225685f31f169a39b892d50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c7db10ed46169174deaed3c69cd6224a9dc84046a5363bc0aca9ea2559365e188d32579bf4bf1f2a3dbac833aabda67f02307f71461049cb9817f59b54e925f43d9fbf688a68dcfee1a913802e9e604b1215d012ecab1e242b99ec01da02c1e9779e0302047c435bb500673065023023a323498bdb5be77b03bf6887fe86645b5606dce7db076f9a195b61fef4336ba0378c4bdaddf08d1e745feb4da4217802310095aad5dcc608c5c38fc00597873942da4c1ed41d40856dc5296e2ce5b1c3f08c5392e3a6356e23ff9bfffc0a824038cc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ae11ae5128c0fab48027361a07c1b9c964398847a9e4eae6ff1d01163611c202172c7063967e7e03e8849a653b9b93aa02301ca7a576139280f6403007a1d29c4a4896eec202fcd819d10d5929a3674af8388c50a17e1e2ab696c67d2391b160ea100302047c435bb500683066023100e5eee73798738ec5afb1a8e8e9eaff6e38b701e5180566e7e949aafaa8da7d09137e8a6b2274b2ff70ce675103c662460231009b2d937220d890b52620c200ade6cbfb20299b8c26452eaa08e5dc9635019f096e26366c2868dec82ac28211dac0e1e90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009640ef5057a7a541c229f9136ad717a05ccf96b593c21c4d7a0b33ef2ca49beac3a862ed438e76ec294f82c3af3edc6502304a25b25b3aeaad58c9236691c062cd9338ae9bfd15d7a3cf8ed0193f08f281e5abeb32e58a5bfb8dd8c848a698d99a930302047c435bb500683066023100d69e3c160678e16b316dcfa2bad8b37428beda6ac588688f5c57c71773f84f5056646d4ffabaeebc5942a023b627880a023100f2c2276410c07b877aa94bc73105952e8b0927a0ce2a29b38dd66ca2662ae83f0b7de500b3defa793131334411a7d6c10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b2dbb2f54e8bd1e899133bf6cb82b8210e4d78fb26223ffb3b300ab2d2f594b45d126ab0f3a71f94e29a6f80a7acfd5f02304fa64e17ce0e682bf615a50ef22f02683592311f430de4f27aca7d28ea8683e6a97e30def6534e3234bed50b8d1221380302047c435bb500673065023100948f9d29a15fdd6b31ab9dabdae7e113a6bf56c6d29bb086790a7acd0378f3063795888375e1d51bf9c62054a187bfc502304da3cfd15b220b1e3e5b03207eaa75e078dc16c4a1697c37305d1045b8705ddd39d9a071b69fbcd7b20922d627864cb00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307e837a279d7fce0626785816a47ac790f47f7409f2802362cc795fef728b5e8d0a0fd8c204569a5a06f0cd5b06ebfaf102302ca6d2b47dd3b142dac8e2641e0d78fc68f5dd9db8a825b6fa2d6689dd92c2b4e06f9aa5dcc6e0818925b54b82566f160302047c435bb500673065023100e34129122d45ba1a935784ea9261e7ee07b747b4cb6b62a1cb0d8ac8569cf54c4f5776ecc385750615f70d95dd84613602307f1775ed4f0374659a622c41f5ac507a1e4b30d0ba8f8484d3eb296dd42a94490586915976d848a1f08eb6f4b23d764e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ee5907d0f35b0d9be9949466d7b1820c5bfc4c1a806e6dea8fc5d6a6b360a6d02a7c7d6d25a9841ae4831ac442f997cb023077489513a40613356e3f51b831e526c5fe999a527770c15b1c37f156d52993e64435828c08b5e463ce49e6b8b2664ab00302047c435bb500673065023100ea3754333e6032cd195a3e4931ed6ff30b27ac24a8f51270f73a55d18a7daf285d5bfd5877e7ef3a48e02adfcea49828023059dc7ccc5a5c289b09d1d01e27ed0229bc52902e821653e64ba928156c72132aa664545a3ef1b26a6bbe40510a391f630302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023057ed07eaf95a48e032c0085f14cdd3ef914cb4cd5ac9fda7b9b85e2981a3543def793d6262f3ac6459a074d1b68c5dae023043d3e3de9c6116b1f958ef5b9821fd9c7560ba16ce78c6c29b42be210b0c1ff9c18c7036c75e68829fddd4e3bf42a0b00302047c435bb500673065023025b3ebc2d9b7f4c3bbc911a6c5a64321d710858c20d1dda09c9029a878af422ea93201d410079b4eaedcde48fc85f282023100a5de2a91154ddaae1ddc82e16e440f99f1a673fb4b2344af02c79a402b7cdd7224b1d53dafbf7f9270fedd2e90623f350302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f07e5f6a5f6e2fbbd7004730ea9a95bcf903cbafb4335b250ac07d2f6fa368d6da9bcd588aae83fe4c694f8518ac896502302e1f18d94214dad9c28e8d616563baddfe919989253ef4d1a7c404a1230da5ccf2de5db7c0b36dddaf5b4fec698e0ed60302047c435bb50067306502304a3d5590282ebca508a6406a90e95f2cc3ed2911f6c248d8db848a4a89425bbd03e2f48bf06b765ea3662b2e21abb859023100e7e8f5ccf2d227a6716bafc8871eaa22f7d149c819073b0aaf8b852a7d9958a06a39e33d1708c3e8375f254c103b68060302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302cfd545d410dccb6bfc5db90c84dc7383dde356deedc7ec90168315e8f88b173086cbedea70d40f45c5337c3e1db4e5e023061fcf84d7f817ffb53f9a197a15f472725347e08f0654f3acdba4e7e9530c0e47d49a2d3be536b5bb2bdea01b67d9a030302047c435bb5006730650230617d9d7b178c9cd5d498a33316cec7d045fa8b24b06dff0234ea7a914a1c184c992d5e52322b373879c5807e714ce00a0231008ef30d3681e33d750e464c19b6c75f4813905798accb3e6bb148c832fb1878a6f3b5923b1e434ff931302145b6d6453c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023007d53f97672bf907bbe67563acaea83608c9a068b9165c4fe987ff69ed3f19ab230e015875d9178f16fbf8753e7456a302304b564255ab36fef874cb44972bd64a2dfb4e20490bc33823adca1bf3a6c5634b441d770c96e770dc70660684637e27ba0302047c435bb50067306502307026eee06fd189bac51e278720cd8a2638c607161af6a031ba40345fca752d97a82b1ecd3e001d8eb8c1ecc39da54da9023100a3a6f5886f102652f3ffd16751e5a856e43670e45a96e852c9765850ff4a7cc41ee5d1c4fb36b6326d8ca0779384a95e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300235ce5be502bf89ea884467ec3e1fbfdf1e253ef1ca716cec5cf36d034b8e29892d00afdad0f937378bb1a44195c0ae02310085094c2ceb11f60ad4f82b56186bf1c2d7ae988726c9433c5bf545c0081b0065a520ea0d52317299ff53286f83e7d1510302047c435bb500673065023100a8b374ddd072740fb5ee611cec87678b5170f55c8cfd0108e1c4b036a64668fb291dd7d12297e18204e79b18c3493ace023011576a57f5b5f3f9cb3b97940c631356e3af76a91d43a26ea7e5e30176abe987b52aa77590f3aa13492fdb62b91e98e30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023017354e71e895f048fffb51eee7c8942a3e6b74a00555ce518726d82a49efc72555bda23fa8583b64187314d9f408d03b02305e18004570f4792b9a285b9bf6431fde5db94d0fed894b892d5299e88ba6ab2bc9c395a16de676c93e5da2de7a4bf0510302047c435bb5006630640230244d349a88ca7b62d93d0af0281549b31dec6a4282a8d177bf9fe7f62141174ae5386388fd2eb582970a2da7ef8cb92302301dab8315efc43cee803368ca58809dfefaa62b97d2632a803b8deb5e15ce91a0c498e1579b65f7e86ea1dc4e1a58c8410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023003942745baf5b040e4f9a74cfa7fb95463dc3fd8c38571ae03a7e8922208599315625929e1ab9b624bf5a0bdf2c9bca2023100cc43f6a0198ad5cf282904da244582b40b2feb2f5435fc2b9bef71d68f438e1a3ce639bd4592c550a327bc0eb5402d2e0302047c435bb500663064023063f330a0d7908ac22104adc7d11867beddbe2c9fd092635b03053d8176818974ceee814995c7e6977d86ed29202c923f023015173027e26802d613d7301e36cc7e26278424d977491f6b5bb2c5549f486a4e45ca7c3c28aa7b17068fbf47e22cb8f10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302b7125b840e14d2c816536f45e588abf17fef1931a5909c0d5f224fb72cf56606455f1125cd50cf2f32bea7effb631a502305c7fe787199e8bb4ed3696ee9343b0eb0f037f5bc104072fdf2155ff9bfdc49247cbb96c87804624529173fd467b408e0302047c435bb50066306402303d92ebbb831bdef4df5ea9830c3adf15679b381360edc2c41e17384d3cb9e4ffcdcc7b7465b6c0834a13e3effbdd812302306a6acc7bebe96e521cf7d38fc82c8e84f28c80e61cafe5d3aebfeaffebad75ff1a75a7c6697064092968a8ce2119ffdd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a69fc690dd6b2d29ffe24f9865aa9211d51ea72543b80ae7732531a12e13d7cb6f526244138d387448ddb62ec9444e5302305519eb9c16e42d1cac9ae683bdb30b5d597e4140f1513ee80db7e9d5ed20cbb58611174663df249a4cd0c76103c1cd3e0302047c435bb500673065023074dc563e7d91bfed65ddcb169ae367c08abda9893202702c3125586e802506c5ffb7e94a36fc914c523794a80ab65931023100d2be1964076339145f170203d15b47e3b1a78fbc43115d93d8a153f72e478963494f52112699dc0526a5a4e54b021f300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303a9e7a964e9e2da2096412adf9208d71c2c186714ff701d08328691270fc98ef66fe15e8faf8845a4b464f7d5b6aea0c02310084cbff06f2aba584e6293b09a48f59ec8bbdd646f0ecdbaa054db5b3b8355b0e3a9f85dc57a5c9a187a0b63541acf62c0302047c435bb500673065023100e74e1c630df9343ebd6fae10281292303f3001cf0e01a170b71e04773360babaa20fb3c324a2537998f00b097035ee3a023009ad9b9ce3341f574f7a8db97b150679ce2da84c3a8dfed55e5fdfe1c19173ffbcee58a567b75eb89a30b28cd672a0230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d8998992f1ed3a74a1557ce90ff066722a8de20965a958fc30c8872779c1320d1ca2bcaa769cfa3269f083c7cf05edc4023007ecd5fbe7f4a5e31243ac9031be331ef58e75c0d90926f4b280a77b6fd563e9ef3e164e009854942720a34132955f710302047c435bb500683066023100e8187fa3cfc443aeb4fb7cf7e4286cc708f5649dbf25fb430aef0853bf7f4878b02eb9e6678934847eb543205b8c166f023100817ea9f407c982f120ac577ab416239f4b59f01327bc986d1609121911c567e5ccbc6620c69af3c5b9bbed1901db892f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307f68b747f2b03ea4727ceaca2d9372e363d99308dbc8cd3855f174eb2b9db555d0423909c8d41babc126ecfbd48877c7023068a2af1fdae8d074e6669a9223c80e164cb6847419a24abf73efac8eb602144a5ddf266f4620908d12f7a193530d027b0302047c435bb50066306402301c583a48809bc7339cac902c510d6b720a04272a53eb87f57fb03cd84545108b5bf20e88e39407db4c1222653a36b1de02302d0c2addb0af64eabf7ac5b2ef865342e651c645e6dc54bbd29e20d81d1f1d1db016c4ac1cf9e337e30144dced8d68ee0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e05e9a50ef92cef8f05b63b1232e7d8d207740f98841a50602e141600ca8a710883caabddd53bb66efcd1584c035a999023100fcc7ee3c8b12cb4fe7df7344d797b97d7b85e9a0f8141f3f40ce57a5c0072c786c108732ad73bd7b24ce0adf4a0a4aa90302047c435bb50067306502304c428c12124d3cbcfcbb4be7ca8e2ff0425299b2a061662f7ab16d903d085eab7fbb05847d9fdb5b0be867bad7b96991023100b34c7987ae7f6086988582f5b7643d056a845e685cecf15cef76413c0732f2c7e498a2d38aee283a9546ff7c8b89cd9c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d3c6502371dbf290eb9fc4b768d4966337e200b745f1d3c1873805eac3069c50943e49e56fabb06613f2a6aba5771e7002304b12389b43f4ed5fb4f2fb1bf2984fc7484429c3f90e949115de6be2bfec019b7028a8aa63796f4bceb666a246944ad30302047c435bb500673065023100c9623dddca23160c6218cf15bfe1ba25dd118486111152bb2fdcbe3c3973dc441d9a801854ae691ed0a57df14aef38ad0230068a0e4f2c1935f9a335291bd5341bee4a017490671a42cbea25afdca8fa9e2acc2af621dc44abd4918f104be9dc5a7a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306cc0b5f78ba048780b63371b53486761bd43fae27b124643359397f9fadb00a667dfb5991d327170d05715e5c085e7920231009daba3f2cc3ea86ac1e15340bd2ced02958d80c430c97cfbe7d8c9bcef396723e94c4a91fb66737b42144160a5afa4cf0302047c435bb500683066023100e2be8f8ecb9cb8e7a63e910e150aa6a327c8f9d43c764fb0b8f31317e06e1ccb94d966c8d52ff6c03c932c1c3b80d863023100e651d2d314e05c77a5c13ab6449e92ec4a92c66624b4af72f170a9fc5914420b83b0da8709ff11b9836290059a27539c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023065cddd9a2771a72741c0abd69d14c36351c504649ad2888aea7a9a8b3312bf51aa8c673e586b32e33a2a9f1ed55dea1d0230054c99bdd48aea5d1ea51aea6b22a9ae38e5cc3e9156d42ede8acc01085ce4d0e3300f6a2ba5218568f3e6514dcf480f0302047c435bb500683066023100e3b5ff57c8855ba9c278a661b247f77e19dd2f5e73266120b4849b9945dc61507b7c6e8c8931ca4ae31cb9d349a53b4c023100d55eb63c7a1a741b5a989c99cb55ebe522a3b5fa859971f5aa74aa53de48f12a9da5467929a29888976bd1351785199f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e92a36146b082d94aad87a5a6fc37dd243699a00c8ebcd405b38fe2c669aab0ce3fd98106c9affb59a48fcf377f451d4023047d3c4d3cea4f5b66cb256fc2038c850a0fb78c7a55efafdb10282844c73cccb28770e18162009f7776984641f3241d60302047c435bb500683066023100d5521180cdc2bb2c4d78ad38853839f855b89b72e814002d6f63f2a326ea24ee7eb90f7fe609da621aacd66fb8dda8d1023100a1d272eed18f032d997cd073bdaf30967e764016b41b36067ebd1c8ade3882e0641fc9b49267c2d98c4f60e69bb3a28c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a6167242af70ca998e1aee4228df97f5590fcdefa23b51dce3b58c064d6547208cbae83a1ed22792ca1fa758c957ce81023100a29686f8a300df000228691e38430d3ba40b44a7c4520c5216b065aefb6daad255b48a958297b2630ac1dcfb33a60c770302047c435bb50067306502306b2c4bf0b40f26a809563aa726680d335a65e9d467752514fb9df8bca02f10cca6808c9cc90a6354b2000952e51866ca023100ce1cd1905cbd989e130fc5d44800f3e702a9f786fe2a7e697e87c9d5c70662f2902103bc4c7c449cdc51c7700be446ea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ae231d2ca005673a152d276b2d4b9fec03163c01997771c6bfad4fb79d61210a1f5c2dc3652db4e1d4fbc49113efdfcd023046aa8cce449b66d88e38a56a427c5b58b128fa1cb1b64dabf86d08e780392046ff86a96b571b04682e7e0693ce2578450302047c435bb5006730650231008e381405499dfd2eb277eda404b0856315db0e60bf3aa11e4c5372573176ec8bc6454f085b401174bee6b3a5a1dc3d8e02303fb50ec87cd5634e8098c842b50cc9da7b9f9498e54ae19dd546067fa92eb46b530f8d253eb83e31391eb8dcd07b08fc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023001517269b1198a1d68aec2e595eeffedc3e2bb0282c66c0f2d876cf0efd7771f3a0c034dbcf0393d5a6c457d29f3839e023100b31e598fd3d1fb3829aecd06f7612ace6ccc577ac31a017ca45f8b41f0b1bb69a9642a54babd8dac8dff35d777be72e80302047c435bb500663064023016f71704f22548c836bd8eaf82f437100d0bf19cc31892c99b75c50205ed5f2ca0941b13bc2ee960722c2cc88497488a0230441fc9d3a8aee7898bc858f1b50179a18b6b9576ab1b1c08d17b6b66da2b8a0f9bfb664b6b01293b342f829363b5a9b90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c6a8b44f62807ced4efbb78025196fb8806481173c2635bf71f0c253f6217b026834324dbe26a70ca8bfa0c4839f62e0023044fdeec2f7f5c7bcc56d450f84c0cd31d1fd8faa9910850dba2a503c52bc286b6a049257bdcf0e44421ce590af675ba50302047c435bb50067306502302c3ef66c90db222078c9890638d0eb4fdad32bd2302b18a3e088bc7837ca86e6e3c5b748fd0c16a5aa8f215a1355fe30023100a880fea58c488bee46c0d020744d04a9921ef215a5673bc13733e8513832052d3fa7eb13bd8f0fed70fa14d0e21116a10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d4c84edb54931c03dd96afc98eae44bacad266eb29381893606e53dbb6c41aece0b44266ed06c3a6f68e5056d6f34679023100f4c0f22adc7821d284937ffacbbb66b57647beac607b4af5b4ee433941cb6b97722e926f7854013feaebb6090828396c0302047c435bb500673065023024fc809c4560c9641e75edd95cf4e68cc34cb0caab1e9b91a1aaee549056311b25c249e5c67ada5292ca4466b23577e8023100e09bddd801dea43042a74afc2ec3d5bbc5d6a5b892fb5e3acb85aa3e86c23c99d6e1c9db4959a90bded23bb855534eec0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a265234a0decf3782731e70022d5572b2ff920cb592a588b9f391817b4564d1a5edea3e32aaee090b4ef6102ea8ced2a02301a7e99b66cddc73d440e0f7152d4e5f70443d72610ae21d485f7279758559c275f3c8126790b3f49bfc6b70b0badbfe80302047c435bb500663064023014757d3c6fe2d97b28ce7865a2707549a0427ddb8c07c137d9f32dff33695cf5410f5a5ad330da7f432402a578aa8396023046ac9a8be697cc2645d94fbe67d851233b7b90a8ba939ef3099b2057689569ca4f8b702046300497b60c969e43d0e1720302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301b19f058edcfb4e214cd41e24fb3c745a8bef6324619aa6ff393e689e70b715773a9de1d551650c45ffae7798931e8aa023100f1b800e45736c8131331dacd7e32699384cba9cee788b40c06541741c6a8b08c2bb317a14a901c9a12e83a2d3932c0880302047c435bb500683066023100fb5c36a96456da795004f4787e733a8c9bac5dbe3e1e9eef70809e614e064ee458cc86ef984b797c29d801e71ce419dc023100a1a3885a58368eb46eeb1ac2fd4bf86ebd0814453000f782a9b464f41263b50f6328891b0f561939663b1e7949d53f3b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300acc39b2bf6c050cf80b234213add733659c65d8aa67ba905c97bdb75298c4214427ac3b70755ee44501ef27e25e31e8023048fc8d9994a6941781e7a4866c0d26795bcf5cf62319735dde02efd7eed05d9c835eeeea4570db19fd184b7e4a9248ae0302047c435bb500663064022f2186dd9c21531992b4a9456c2b0e4fc76c92a9b13dc975a997136807217c57f04fae15ae66d1db7b4b2ae3c337a1de023100d166eaaf6f16da1f50f2690b1f159102e9f885b2d09f216a9cb821756980b1dd7db9e174fadb0deb2c1750cf286231a70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b21eb2804c922988fc3c966da4c77215e56b0e42d7a3257769cde373910593e9bf4065f7523a338d56bfdf9e4f5f074002305b1aa1771a2cdd81dfc2c58dffb7299c32ea98a653456d728ba51c559d517811ad6994b562f0572caf3c0f6bcf8b39730302047c435bb500673065023100f747eebc37774e603bb14929be06e347bce1eafa1ec6bcf41ded09a17a130eba27551f0810eca42cad4b125cf283cd50023016ea7fe6e1914033ebe43bb74e43aae71892f3635062dd2b334d52618cd07ea26090e58ab5d11d72ac30bac0f3a7081e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c4bcb0b828ccdfa3e00ee492e77171c6aa66fa4a4c13756c5deb51001f1c0870a1c21527bc51d0cea72b734c7bd89e8e023100b67562b25baa6188b2fd4300ea32ace06e552b11a7f19e76af7217faa851da62940cbda333d411c9dca5d36236343a120302047c435bb50066306402307ca8bfead69dae57e5ede8b07a4fe30592866ceabeb86f110ee1d435bc9af3428fbde5a1f49f80e1bb0fd83c889d3fbe02306b523a1c833745a80dc9ada07e3f4540edc95efd7d9581d9e4c948a3aa9f2d6629633cafeb60dae15d60a52b9a4230bb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100db6b7602bb887cd3c44a1f39e4993bbdb405e27a1259c7fb7fd07675c8e23a5a6cc6cf86add8d388e2f9e676bbd26fdd02304042292c5e170d99ca619f006b8933f77a3fb8a4a8d2c7fe07fdaf4da07cd0d6d59e5ef1287c2b281a65c67db199e7e50302047c435bb500683066023100844e1083f9f05eb5e5df09cfc88add1d8981a0a82fe7cd926162310741d740b7ca70e0a4b31d661a1340ba55ed020cea023100b5a68364d031a86075ae898108078b5e9b94f180ceec754c97c0d977ab95517954d05e390090742ee07b2889fda0519b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100af438d440eb1ddf79907def3eeca3486c38fd08384a083a325b2b904ded2ea9527042ea41570abfe2befc23333ca4dab023063ebfcf97473194ffacd408db87b32bf77eb7b80ab88dfcfa24c473b729a14afb6d8e2e73c11411fc753299084464fc50302047c435bb500663064023046ef0ffffa3f2ec8457c17ce6a3b1708f1cbbec016c647753f4f12ae56967a3ccae65c25cb1b0d53d7b378ad27fde75b0230178fe194830fcca663766f23dafe1c86ab4b25f64bae729b45f811d7117a92ed4a8ab8c133f31adb2b69567e4b98ecfd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023029dbe1fa7a10346ee47c58f7e019a14fb7b01cba78e16db9bd62ed37f159af2a4b42a1798bef413aa7b9430d3fe54e6a023100a3540e062b1dc4772c5a93fd5a5c6890bad9cb44a1473a7f8a2ef59f397887e24c745a42d5dc2085a2ca34d6d0ef1efa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d2add97f46558c14ff4062ff40c4c87dd7a53027dc30ffd589d8ceb8e206c025ab8540304c4f2381ae578d3f1f235258023100d35393ce8d3ecbce465c585d6e10a72d6752bc6d04143c4bb45428a0262e2f3a1c00777807233abbe430aa5425320dc20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300ddeee1397e8acd5565a0b698d772a96076702b0e9ee39dc773e9a784348a5980639785248a6be9c0b9d29faae376aad02310092c8867880533e7f55c095b94b4b82884426b0785cadf4fe0c8ac7ab059d60213bd9f208260220dce773299aae4bb6cb0302047c435bb50067306502303720cb9c5430ac3cc071a3b6af51aae4d8f8b724387cdca17edfeadd7c0f20109d5837e09c702644b1bcf8e5a5c732ee023100aad0cf6c60d3569e1e60e4bbb9a95e04776916c50c00a12f75e84afb32a06ca1e30ceeac8223d137958c572eba2a3f180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303e0422544e2a93ad28b47c141238318a32ae2ab7ba1824468c860f5b2e770fd6bd13181e92dac00b969bc61ceab2b01602303a2cc4d7119e71da28f7212afa11d941ca131a885c47a6a4b1d8c6509d44818268947c1a7af9fa295fede1b321586c8c0302047c435bb500683066023100a0773c7c7d40679e96d45577ed183e4ac74795b96680c6669391928d0ad9f92f02ea214a7a4c039b957a3860c374c4e0023100b4e9ba9e4bfc05ed5c0b6426a5853ad3095dcc01947605b31901375d568682aacf90db62d7c00bcb64eba0be024b60b10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305575404e59b6645777e29d8e7352a55fded0302ec61c13f18e44449e6a0b938e7ea63340dc8b11a5097b750eccee5909023002d282101eeeca7129446f127dadee77555bcced2df9a8c49fcbc54dda9b94bff0c9eb837f4ce3f7a2e563287a42bf400302047c435bb50067306502300a470e8f584c3fdce539824942f28aab43acf96b3b5036a1b6b80e4646dca8b704c2b01284a18db2bb499a290b65005802310080d975a1fa745bbb8c21a80519184a2355c9443cda89c36ad0233da030a4e9d3fe0b81f0322a0d720bf765d1d8a846d10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023031c5fdf10e794fac1f1e7619b8ab3391eacd1498ab9a14f851ad8e2c6b0d1710706b746436ae81462dc033d36d8a60d402310095149fd5d422f621dc5286c448eb5a302bb9aed0321075bdb4e2e7794ccebcc2115cca5c03d94d39c190a389fbfb48060302047c435bb500683066023100d2597bc221f5d53ee8368dc8bcb0031862fe1ce9593c636fed9910ee3badce220a818b0a6fe145260e961031c9036c39023100facfd3158e568e0f6cb17822098ea6e653ab47da7d37ffeba0b39cc24d20f203a96f0f98ea2b7631619204efb7a0554d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023045ad6e7c67bc280aa80298e02dee244490a9c6dbe39bb66134558b13ff1b7c178f68a514d5ded0f45dc068d02fd619f102304afa5cb18fc21fcfd49578b7748286c1757c03e6c6833cb72bc7cc3ff38ef0855732e9397c82a25411fac6b6205c429a0302047c435bb50066306402303f24a3cf98bbb54ded456256f52f1e4df65d4db3126c1a32002aabb41341a05d0fcf1716f2c0487231d4e273521ee83802302a75f59f58dfdc23eda9b7293c3efe116cd6c0d188b60a94e663b101e3a5ba84b36253765d4a830c79a4c1639a61db190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230594059cae45cfc2b6b4b44667333a078f56bd2bd52ed592a4fae0192b457eba8bbb1216924be553e07f90ed55e985a3e023100e2085fd6a9bf652c89e421fdbb120583cbedf57a2988b3047a097ccc090b359de2283c2606615357b4e6af10eaa607050302047c435bb50066306402306e7195c6516459250d1431ec1a3e807407895a592adff24c81148ae2cd1bfc43505f9c86d944d73a73b2eb7ba2da235f02306f4e0bb9ede2cb2d015448c4bcdd9a6229e70ef944f4e0e283c42043f9a585b16c60c5874c20388b1eadd398879cad210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304006ab7b228774e0ff82e57edcc6104818c963fbfdbe831d865d91a9d57d02b906da9ada5254f00652d8881817d013bb023078fb53cfa625bd722b30d79a4725e690bb0bc7257efb663f94024ef649d7a3b052413d7063028f2f06125c5bdf3dd9160302047c435bb5006730650230091cd221e6c23fe6a4a9f32db5a95e20746f1e4cbc6a973a14615a6ce4c920d505911c492478579c93f7efce32d41dd3023100a0b10f315cb344169f3fb19464b2da23e2b7a0e6330fe58b66f38b2ed8b124835795fe6d352b823c429215cef77af3840302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100835a09ff8ce639935a7b9306881bb6165a90b4474bb249b6f930bdd1ea1caf86dcede2bc670ab6dbc8c10b221f647a64023100e6a7a6583bd15a394e9d43311ca72409abe7705fbeec4811b8264924f094f79ab4b6ebac51ffdcc862531c4e756a89bf0302047c435bb500673065023100f7b7da50650d57fd19e75e0c4ced1b2493d3838070694c6a768d55fa468eb318e64de95ff72d7f8b2b48a2a5bff77b9102307c8bb00a780fcf1c43431b20e12f3ba28f71ec70bfed9e8ea73b55a792cab5b86388a0cd194388c78877205d0e9c78800302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b7e0af17a99a08e3669a9bfda724d2ba0226932c213160a127e665786ef0642c07eb9470ce22ebf9cd28c149c3ef9a45023100b903ebf2e27c6ce7819e715655ee0cd94d9fcedb55c1649a896c6f0831590631932522d2b98bb0c9d8a13fdf28a04f880302047c435bb50067306502305b7857f9d02253c99bec76cb447179b6c194a474a4e93d73566b837212dd9799b558dbafde734573b8ccc275138744bd023100e300176effce511bfe69aa102ca58491fc8804ba80cd63c4b0fd08d06eb213d06408550810c9ce87086379bd8dcadd9d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d322c95086c7f2824d20db1aa4e1bff2cb5bca689a9993424a258f9e57aa496f27263820c04ac7fbecf859127a4a2fd502305d640bdcc70ace6cafe850ede8c517133089c1438cc4d1e4b785723e3a7b0371b4cccd4646fd4cd1991b6632547177ac0302047c435bb500683066023100b8c18af00e28b79e4524caabb1de00e6e58546d0ecae33dcf17643fee5fbc635111bc6ae11a5a88ded36b1c8bcfc3e16023100d22f2725bef5b0a072ac381dfcb139b6ee2c884ce589e3d077e055b860626447bfad9f8af146b7a09cf20ca1423fd9780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c26836013cf4904bd905dd6e2303157cdd9e07b9d83a11e69669edd715462b07c06aefecc0c66a9556ce7dd991855e7c023100d1c6b77a27db34d3acefd681317352749a604c8a22df35df5d8931a5b255b7074181b344e6124dad7b2309b9db5165af0302047c435bb50066306402307a9af2fcc9adecd206eb5d2b2ceb9e6cccb494a7d216d311cb81240acbab06a3e11e04222fd23e18e0333c8500fc547202300cc0023673982c26c61e906417afbb1659965aecca08fc155dd86dcbbaf6e56d4069af9a904d0e075ae46c3ac341bc020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e0ccaa9e5e45c237f3e0cceff19516bfb92ec163b77f3ab397a14f889037a44d62e2485470666c04e4ae3e4a55a27c12023072600fb2094368a1cb24df9dd8cee272da03a25720838aa80055c27d0c04477daadb569569fe7fcc71f55844303107290302047c435bb50066306402306a131c5aff93138b9376b127495066197c817bffdecc1ef4eade61b57b9e5cbe989c7b8b3cc6e01b4408df501272fa1d02301fbafa262e9876e23a8e65b9054cbca94da6ca5e522cd545540dda94a5495636566f9b45d32bd7b119028ae729ebec830302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008295696740e3ecab805979e4936dba814a231898e6ed9eea4d9e550cc7343f3a51b6507f64dd4b8dfc932b51fcbb8a64023100a16e5bbad8cc6b63148f4503be7500468ea070c9a4c3865ab382ef33711e3353158e84bcca65e45357dbd704c46bf6f90302047c435bb500673065023100f76dcb2388bd0e52ea2562c27542eb428bdd6510dd31ea822d3c75208264d11fecd7e70289b3a45fdc1cc0d319016531023044463bc8e68668b65f9639d74976887c82902e96920abcc4bf9ed4d789c67401390196ad33190499321a3be934fd46900302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304009eb363c325a7a1fe7786260d98da166ea38f601a642380313ad83834764e63b3ccdca5563b2ec4ddcc8402d13bf59023011458e2ad4d648b9116ba76c0c567168bcac1c15dc6b537f78152fb84dba7dbba639ca96a69f2ebdb95f7fa2281c20640302047c435bb500683066023100e478fbb4be4fed711e4d2fa4cd3fa6e4b5aa1bf7464a64d11a405bb1e3738e21b52ddd4258da835311642b6f7eaf6555023100cd9a3cf45f8e2ea4fc0d3e090ae758897194b9bf79e9f3e2a90232ec34d06406c3c037279501b76da7625b8a3f9ff2600302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f57ad130ad5781c56674be28a027baae843610837187a0b503359092bb550bd012c43b4492495ab0f2aab9e6f4048e5f023100eae52dfef6ce69859e6e405296c7bc0ca10210dbccd6e669c8a87a8a9b113268f2225408e56a50ddaafa0e6236e712090302047c435bb500673065023100ddeea2cbfaf5bd5f754d05028471e2d5b37aea060194c09770592696d4378dc124923dfc28343a1e666a359819d1780a02302115ae7337ce5e95776680d4573678820676128509c68d00e60e0681647c4982617dafdd6bc57ca1ea0898ac742c2d3b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303da661fc8a3416bc506d4e6af5932a1982781fe72ebff924539aa6465bd021e56c0971dbc755fc6ddeab039a0cea36850231009a26a873e44c3072a5ca6da565d1c4d1d937d2a3b9ac59fc9c934cf886b5b12c5e7343628f036b6fd5807082c37916410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a9c25803479323c354def796689e52be28910764a549f15fcd2c5dfef96068bd40a25ae82d4975167df32fa7f45398b5023100e12d043bc7a37ef772f46d9752e82beccfa31053441737894d901fd99f631d6e9b67ad6ddc9f36744de11566c0842a7f0302047c435bb500683066023100fb559b06b23dfafb1d22903394abf2e54e8cbb84b842fa28ca7b08deb33ad1354e82a71baffe4b90d778d600497e1882023100bfedb1df721ab11a2df1cb8519a78a69525d247a4cd63873fb90318d8f9fb4b8f2980df09a3dc208a59b32fd91f917f90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230541f370725db9c4a6b609185fac71c9418a279603ffedab08899cd97ee938fa74397abd6702c9970c96b59d24d970f5e02307bf1818b9307f18f1186823afee2cb1cd622a11343788a028956f3f546db013451efc51b1b031eec8b6f992ff05c8df20302047c435bb500673065023100d9cab58205676028654fd4bce547cef76e40857ff81ef847da64ef63a173c0c911877a98cda05a9042c2885db79e325f02303d513c6623d5168342bc499454cffa580a53ff9d0c043eb4568e222cc1c33c216aa143d6b9ee55b87011d83af2f27ab60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a8033c38acabcbd246f472234a3e419c9ec8b3fa1765ea900fc6d58b3f2c9cd32936e90cb22a2f036198e7c1bced963b023100fb16b74f90ce24c86acdcd32e92cbc24f99a9f3ea7be803b087d6d8c2117f1847a526a40fd623a54d934719a5a73c67b0302047c435bb50067306502302c4f55200d04023ab47e8c21e65680c23b6e425590573ca12fd8d77035808f646f6e79ea258560eb1ba487f6ea779508023100b3a2ed4d0dcee4e62985933dfaf3f319ddeb248688f1a0d49a8f42a02c859ecd670b2f847a8faef0084ff0f01b5038350302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a16fe4f41816a728afca6c7a8550e67e3222d8bf152c313b4347bd6b4764f73ff746f7e615f694df270eda35eddc715702306b0c239b6a0b83b189b49f545c0abf4511dfd4629b14d569bb358eb50c2b7a2d851bf8f7b7997afe79a7550fa1f1c7300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c3245afb9060b0e4781e8f827e86962774f0cbc618891d2728a57abf1b2e12907aef27c3ccf1027929f847460ebf12ed023100a7e7a2a11e6b91e761e6b94e21e6ec58b5debe94d1d645fc58fce586da1ff5b14a8f9b2620ca098fb5dd14d379fa63960302047c435bb5006830660231009ee2253b6134d1ab39da5dc05bc232a29e944343e4e2d18e34dad0037173d7e233cf508b6e6825434155e815f58a74da023100bd18f1644d5a4a3007745575a30c32c1b6be8ab49516a886f42ae14ca3951118625955c63bd9bc19a038c4f045d884700302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230121d0cc4e8f23ee912b2db5c558833cdc78f3fe9d3fa38a4c49774094534de57893bc169ac9ef6eae1debe31179ae43f023100d0b9aa62c1e3f9a208ae2f0518e1d0977222b8863968b477b995b6c0b7c24715fe74f97a5b830029ccc7580ae247a9a50302047c435bb50067306502300d6b1d9ba69cd0f86f6ce3e479e5c753c6b09c8b7a6f6f62e7376102b805f58722645a1a63c968a6ff451dd173977329023100c6cc00d6dd7c48213e3777f8a47556ae3dc5852a53eb5a3b4ac67dea71152fa9be73a186869d71e85891b70838f1398d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ecb13b1f06b189ac97fcfbb17e8e25cb8bbe21f25a4114550b178c5f7e12479dee06cfce40fe9430234b070d5fa778ca02307e5073e6082d6796e444ae2aac7cd8177945a7aad1d1af08de14f2c24c1728b406a446b1227aaa8029ecf6f70ffd88330302047c435bb50067306502302bbdead6ebcb186cadb10034a8c0018bdc14cc0c1711ff543d7f079fe1b834cf4425de599b56cb8e2aeb33143c06fdbe023100e1d19e08a8d8a7ff11f3561501bdb1338fff3da91cf9769cd52f0575133e6b5329f5e43cec6cf7129827da04caca56a00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c5faa6282e158bcfceae49ff0f59c1c5748bef35609a941a7a7781c582341f5bea1b044a76956a6128cf706e5b9a3cec02303ef5fc05b816b4e14f20e2e918e74b18e378760f88278e1be011fe24a4a9516e4a17de92e09782127dbcb8e5293c48900302047c435bb50066306402301cfeccd9a898033938be5cef4713210b0092a30f865162c3ac85d7274e58b022463ba149a8e2a8a2ec46d3b89baad6c1023066966c6f83a225b34f30f40b73d74164110dbdcca5010b3cc340194ebec4996dfece55280d53974d934ec648b4a2005f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023067cd7929bc3f17516ce2b04a2151dbd4d0e6ec53521936be11efc29b628deb990d751d960b2be422912af715b9a12e01023100c0b20b0d64ef0a061ec2a9573dd0b75dfcb7a70c3b34c90c72374003f0930301bf7c08303d21725871498bc19cef1acd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c57d6e63f7a3abd147add00fe65ed4a6d51f2af2d7983975ce7eae6beddb4487e773bc93fc5a71e76984d09a751155d602303491973991e8b18d19d9d7096b93d1e54444308250a9b52016d18e1606cae2c007cd924b6ad5a97e09ebf3914c592ee80302047c435bb50067306502305dbfbb60140515809186d5d15ac5b6edfc9c582b8876c77407225326c7c01347783fe8719e626e515bfad8e53d04935b0231009a0172f6e9a66cecd790b308376f848c265f1395dadfd10208498cced0b56069c0e24aa20b01296c33f5b55f5375b6f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303aa6187c204de847413a346c76394412a92d89215ca6d195ee7cc1c5208e1e7793f5546b674e441295b901fd2134c447023100c4386f51a012e23cbc7cd7fb2f55aae9e01e7f3d338383da9faaa88416dbe50ed5385ffffd61a4aa77684a06edfa98f50302047c435bb500673065023100c865b86870ebdf31280e2c08bbd46c89e9fac5a69f7e1f6310303e1fe41ca11561b00376b49b26159bfc2128e62a83c402301c7dc4589bd361c2883fb9cafa6fa6292be980f6db9465b13bb94eb3e3ae17f57c295f067821a46788e3e114c022a8780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302f9e0d3345754b953db06a307c78d7a54fe126ea1a1f9651bfb07c6fea9cbc61039cf26e6737c2ee19497612f5f9c184023100a3f355e02156027bd827a2dedc13a4efb814acc9f3250f2f10d73e4d5a3ec2b26248eb1020dea427f25f7901e01670790302047c435bb500673065023100f3cd22d4502bd0f97b6abee97ecee60dd739711da591f35b379b1e76962a1e40fa9c3d17d905bb006b0722b6aaa57bfd023066c271ecf8083d883ea871d2c760d1ef4b8897e55a9eb40c6ba172c1ba3afde0f22b14e56b62fd31f625a4956ca2905d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301da8b567b6bc708c4b922a1b9f01fc3be47ec01963f9f3950e3997686b1fbb66ea182e1cb855f8b998c55e2bb6637fd902306d4ca188a557733347ba07fecd4762d22a2089e74bf77a552b8bc44132e3e366db8e0101683ec60e74256b6f306652d50302047c435bb500663064023066afea4a9919d02b389a300548524c4c6d4c4599a280d99a8d6e771a8c6bd6c38ab430dd48260e0615d8122d666f32d80230566b9c8234968d447af69ee20fca8f00e2fa3acb84493d9d070545df5db88a6b89c075677aee3a98bba8934d2fb5fe120302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a6a7df114e77e798b2ed2f641e24cb08b952e108858f72680bddc092d8ea927cc216d4df68f1b336b2ea9a559fb33aa6023100e9a245ab73a7f239852fb2902d3c4e9761a9c8dba93e8bdf9a5f85ef107848abd3152d5c5b682e12ea6719dce626dc540302047c435bb500683066023100ecb166f15633f5c4aa55768045c8c1b4389e662f6508046e56df3e433ea9dc4017b0c35cd8c1258fc3232ab49486620f023100af322b5ec207d3a3616fa511242533335b98950a1f976d1c794e326d025f00cfad5f65d97ef6138b211dbab79beabfb10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009bb73395cb69f95c6514e2cbc87dca0aa38c1bad8209f4b924c0b5202c51ce627822f400bdf6cffb67abffc81a456355023020961252b9403228dc2af57e36818ec53498b28d8160c29cf0bd614c9709bb9e49e1c437c6098c895c4771fc008e64f40302047c435bb500683066023100a6dd83444bb58471b8f535b787ddf0c30be958a65452b2757d95bab0fc5f1c577654afca9e4cdc4f3f1d5fde415fb30d023100c6b16426bed9c83ebf115a136464a152385dc216c517a6be6d3cd85369a70cd88a4ff46b2d77ff05c699f23e0de602670302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a6abc544be81ee843f841d3a610ddf4bb384c1569e3ef61fdfbf1e08f54a96c4d154fe91d24616537828fb4c33c7dc8c023100c7f9479ff0e2f3f545c2e2339ffbf9cfb59ba04fa6c0566078cc97a56528f6bc458f8ac9a1083f5f0f4f5e396b660d670302047c435bb500663064023078c04a8bf001164e798c6cce98f08c0e11d547966534d35132bb059715fffb2cabeb94e2ae9971db32ec9383075dd98e02300edbd5cdc53c22e675b664b2b7c3cc29239d137a99e9e624b42c275dd55ff9bb1b58822045579cde75bf28aded9d496f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301ca287b55b5a7ef8280f19757356a9ea04020dd9d5f95a78e10216eb94607117765b75f4ff47877c4fe14b4e4b5e8fbc02305be4f3f0a431b59a3f4c17d41ad37a0973b849a558e7d49141cd201f40c4b6a87e31578a7395b0f07dff074ab648c0980302047c435bb5006630640230604dd9c31b32351c7bc713a309177fecf5fd7d2f905885c97cc73c85c2cbe6450b4ee9a9e1bdc26d9f83dfb048281bd602302dab93201509f4373902ddeba11cd677fd6285166f28618754d8b92eeec4832644db2b4401dd9986f9cebb571adfdf8d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301110c7bc8d40c6196c026250ca44aa0505bf3f2a2a11b8961e57d36a8bff8f2d0ad76ca5de1a6cb79207ab91f6f651c1023100d18c4136f24e1ee4220977659553c1ee5ccc795c48df78c36a03a60866e7dd4fdf59ba20153ba0fc885a458f28a2a82c0302047c435bb500673065023100ce7b477f7e309455169518ce33130f992af917697374ca562c765a0dcec51137c421566797d6af7d3003af24b5dcb8970230407b288d6f275abd75c869f6ed7d6dfc8d2f9a20bd585614f90e93ffcef8c882755f0e390d61bec66bf021843bf799a60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fd5336cbea66412d36d0b989ded66718a036cdad38607074b44dfa181fcca159e40fb6a9e06af7c05ad8759d1188abcf023100d2bbc094419e3eed3e4cffe535cb5b30c9126bf60ebe1d9660affd56c79750be3241a0808edfff37735623ca7aac58f10302047c435bb50067306502304e5dd03b9aeda9bb14f7f1965ff9443c9f080b624be1a78d4b7d0de468318c5bfcdab443f9be4d6d2b4683c23f7df9e0023100a423d8f75a305e53fb50fa823bea8ff9446cf09dc1f58a1a87f3b3b73d73ff199b11e6e93c457e17beabea9f42ff391d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306e1791c4a009505938e624d2dfe3619bde98261506054b1f83c65ad3cf7b2ccb8c2e6548313ad897c84665b6f1c81d1f023100e1f9e254b6f609177bd723d30b9e1385087e7e6d6f987ccf4d706bd89a29b1f4d3a649bb4bc518aacab372046cc09e140302047c435bb500673065023100c6fcb6c9bdaae09e228c94e66c72146ab91d073a96550aff931a201c5f55cf75ae04334f22be2d85a6c09f80b0f39b0702305cc3e2241d1373a8cedcf416f50c3b60d69ce3b913cfa678fbcca54c510884d101bf9e096a11ff0b5bf7060010386d080302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bf64873ff0bf8e73b159be65710b1499dd1e463246d4a8d18fe8bf747830c33f0008348635890f2cff7b5e2b7ae4fd83023100a4fdbdc3dca7e9b0fe289eb5beacd0e588590d135047b060979173caec8c25aa2da8084d7c00852270278ec2cb418fe60302047c435bb5006730650230373a49cb30c423d89802922d0a3fefe25ce9f8d83787e94d8da173c6803e703b7e6834e6716d0b4ef0dd9d6682b19426023100cc4ed32796174e11a6abf70cae741479780c0237a97159c2a6c5fbfad78742a965f8a9d2d27c77d97b9632822591a2230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b9109385b42f219735734d4edfe04d2ecd113b2261103aa70b39191f19fb8acf6a489639d7e202e7726bf9ebea3c236d02307b7f0ea71f5f751121abb20668706d6cf93a4fbbef14c1b002da98cd67fbee36a34ea259f180a1f93be08310a4e884b50302047c435bb50066306402302ee7cdd1971243880b035b08bcf642b992ba9fc1491ec2bdbf36b2f09a8a51f05aa6ec30c9c44478903a73eaa06cce7502307ac9c74c0012e11e90bc23b5a7e7de3248ac587578b9d966a01a56aee79a0f1eea26344605c76ffa73034b39e86caf9b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302f240b56562b6ffde0a8baf29570cc63f94c34fbe0b2c1fb7b26e3316dbf7615741c14dd00e9a5b39191a11684b57ed6023100aab9c8b2c24813fe9b58da9817bbfb9b4fcdc51e4de9139c793cc31131a77a3666679243d92e7576eda616581bdf47120302047c435bb5006730650230784a23ddeedbbe0fd1222e3254b3867feb341d323096cbc4ab4571f1fce9f6f36971c99788e95bb87dd7d18d7d917ff70231009765a146f2cb904b4f46f1afec23090545bd92ad74b4c5e0e4a4d589a452ceca95043ee271fdf9178d905b34609035280302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e2027c7ab4839973558f8277dd5da4cf0580ff5a71b1c90f8ac231fa7329d6a96e90477ab2d066bd2706f3cd2dc2e68f02306f85127fc4b2ccd0388f9b2ea77deeb0fadf970ff2fff085bfab13d45e925fc3a8913e92aaca8613178eccffdf6dc1fb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310087e891f3ce897e6de02ee6897f47e865c98732c64441470d76586008bb0865b761c6fcbbc91f3c48d1babd64f37d3aff023100e13fe59129b96f8ceedfc25b5427489374d6bc2e2427e644d2eb116819968c2c8295f0c39d7e6da2a4e69cd47bae1c2e0302047c435bb500663064023010e63fc3ea08436b012e399678fb9cb763cccaf58230f95af4017388c8410b76ce141d81cef4a5db1e6ec6ec06423be6023076fa018b5edd802b3eb247bd6575475b2ea2d144ce61f6d64532799f1220e38734d327d5e3190aa8c3fa88ccc5405cd20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ea0a1e86b69e7748db62472b8e3bf50914645d3415888bc79bb03125ab77d66bfd67348500f58158656c82c79bd5bd86023100d64490503317e1e475d5379bde82c928f6ef9e20b9849c2bbdbe499c78f47d8a902032055aaeee2fb49c8b7dea8a6b040302047c435bb500673065023100998c8ec156d13e99c9f2471abbbe3afed2de21e5a57f4287141bfa49129491b9c20fabaa29384c4bd90ff1e9002341db023024d2cbe64e601db60f6de94aa199ce0d51f84d0cdbdcc1e45c385002f94f9520ff6d1a39e4d0130eacae7824eaa8ef760302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a167b2b5d3ab40d1c80ad20b1e8a6335a2f9ee40bdbc8bdfa7a4f1d3f6e4f24ad35110ba286a66a0f0908190f66b382a02300aaeea51e42a569afb36f306dd7c1414e8af54101246263e14bdff45ffcdc7918488a43ee9137d95c2d33c7bbb472a900302047c435bb50066306402300284c3ea696ae91656b9f7aadfddcc00255ef26f32a0246c963e32f85eea3f909db712edf2ef396968115ab4ff16c02d02304dcfb13d6e6e05c9a331167313c791644bcebcdbbff5bc750dee3d41c4d4661d4871e2d4055926e99ac2d078a531521c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023079565564f160eb3abf032ccf2a4cd42692d9c2c34d22d5a9e80916a78ed42be0242af2a18295a3000fbb56911ab0c8090231009ede87c7493fbaa2600352c5faeb02320c8121021017b95c70795b5538eee6e1fbd5e47b51b59cadb5bd2992a75576d40302047c435bb5006730650230148ed819baaa658ba7c259bbc9a7e9f3d736316d453cf675d92ba7fbb75ddeac84270f62c53d2d9b89996a759a7943580231008d4261ebce9cf0afba8ec8b9f4c0afbd45a120fd03e43fb7003327192bcf68a0b3cdc56320af31c0cd12e3f4f7a5cae90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301b046d68ef1b918e5640c36f3251c22637d778a11e45cb76cb41b2590c1eda3fb8600daa7cdaa10843a2260e73f43d840230735dd5dac29b62ee595c78cc9612df0f615d17163db6b021b7b9dcad9454b67a2a092ad530ad6eba6f2b451702eca8820302047c435bb500683066023100c36d195538dcb981055883855d6b107ada9a660cb01b735c58025d6c7683b4ccc8fa88ad77503762d978bc7df6c5c0d2023100a446066f3a57a85453fd1facc28273e9591eda775fc9a633ff7404612319efe04d1f5c0706b924a95d40aee8118d11570302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310083a31b4ce8d2f10e183a56a89be05db2c070fcd60457ab6d3b8d7d5d6290c0275595dc90013b4cc056b984a2c41fef1d023100f1c785f05b3b18e0f8354e9ad076e268c4c199322ef67ced37f8e9fdbc20adcd680a9a424b4b2a8b537051988a1f715b0302047c435bb50067306502306b6b50bb73786c06fef6e9bf08f25128133b5056da5f32db76335ce25f5e16d01a0d037f4c8908bc98035fc3c4f17da8023100d68b3920fd3330b5f6fdc31079440c1b82370a7fefc12cbb09ee9ce3fbdbee60d2da7d41f75068b5e4b60b761ee26db00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b2154325d13f3f95fa16dbcef1807142d70610a18907623fe2ca6b1b91c543a36a3976b42b2f8487a1f8080dc10d5ae102307b91a04abf7c121999d5b4f9a10af7d1bb67e1bd94c93055111451b750293253f969645e1e10063deefce54ba24912340302047c435bb500673065023053ec83ba489c9584d151f9b059170b4dc4de8fa0719a70177bec6ff52f80503e7260fd6bb2ec7d5f6fc1e13404beed38023100b5c790b74eb53571d29fdff6e674c84db5e888ca4c31e813703c36fc5beb86e69db648d1623ed47e3241632f4c6e2c0e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cef204f93548c32eb6ff2e3dff5f30c21541fcc36e1816e99d6289a52b8ed81edd9e4973d283da2734d589187e7b48ea023100ea8a4a59f7fa469ea5a48d00d34f33126e57fc35c2399c2c16ddf0e2653244c6feceff0da7cfc263c2567a3d500aad020302047c435bb500683066023100dec02a6fb7f1a3aa2b0282caacdff59e66c4dc01d5b418f0e6788443307148665b6b7e74b15ec3e3b92bdda5a86c70e2023100e1df49f1dc771561f0eb9294704a799cbf004500445b279512364b1c73afaa6fe6d0e82f158472cb91695355b44d5a660302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100aeb773a49092c5b33a24c2d33914927bb0adaf2904869148595d62ed219f83ceb3aa942300edaf1ffe72de4ef3cce457023100c5f52b6d7642ab7736070cc14efc6a298ca20c9c7671f128c705201cb421d90ba0217ac0bed8f749b5bc41e14018e0320302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303b8b3d83d6dd2fb3a6aa5263afdad81ccc1d191bfb8dc54a19174c395b152b5f8911edda54d714ab90ae11e7ecbb773e023100cb003900f3125ad4e215e97f5029896dc79a1a119d8ab607f8e1c16cd11d5bf3cb216be8339177145fcdc8b88fbddb540302047c435bb500663064023074b300d3ebb3bd7de23b6dc732678ad64d9c5937754bc2f57f27b317474fed9faf367d78553a5c8f861da66e6b0db7730230692095f7d3c06c82b9de4a1401723d7f9f6908f577076644512c41625c967337f28734e6399841502d169ecdc5ca11340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009338bafff202b80e9b5efaf846604beb728831bf0ccf68691fd1998cb60372cf597760b0687f30943e3f7c791a0c60bc023014618c5f36a46a14291bf928b182f9018050f99df80aeb494a8aababa096d9c367c091591af500fd64495514015070150302047c435bb500673065023100f616d4c3708ed410d8d814e5579f5471454a3a4170ed149dc852a305d4bd07fc16d66f0eed791d171b23b732eb5f995c0230536bc762841dd2f11d409c3c6d19934b4451705339bb9f055387ad461e61a8af0d9432458de8ceed997faa933adc8eea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304be981a8b6c6773287bf536ead7fc81449b1174275718dadbeb2030fa1207cd80f24c0bdb82d96f3581b16ebd4ba851702303b3ef7fabbfc5d70d867d48c99d992b101f47e49781c39db2a0511dab65d7dc6c80b2265fd748be83c60731ddd69ddaa0302047c435bb500673065023100e3d6e33e7616792277817e07698c762c7a279f8721cdfa9e699f422913f22e9c644e41204839579c32c803606a54153402301cf2d8eb13e93d3a59e96d206900e64deb6b02e5dd13132bfc07aa847e609cfc91a843b4953740d69152b33dfba394120302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230346d02be8d48e9663b0de30760bab157427936107d9169d21ca5d0ba7ef53404334c04a5e5d7bd464598815be8a8004f023100fed25190f67c8a43aa3dd625036ca6b3da83cffd06c94d42cda0e8a5531eae7af39bc72dee5bf3b55b2014f2ac6c54340302047c435bb500683066023100a2e6fb3d551cbb70bba90868ef52b69da629a279c4328b93b822839f7701de885fb730dfa21955775fdeb410e8d8ae89023100e126eb4c832820cc4076c5f5ad60aa1a85d7deb7432b75864ee631a60b4fa7aa72800ee0fd94b58ffe2b3eb62a8a25110302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c441ff7ce5145108c7a72a366a724e3359b52d8d8e23ece341adaa56d9cb17ff34f2a1d2176d894615aeabc2981d73b2023100b885e29cbc24bd0f1a9ff058afc8a93f04b6905e371272978fd9e41c482b3659e10159cd762a5df06e88f49cef7d339b0302047c435bb500683066023100fdb4f303f73f7a47e55c76c430e72aab452fe8422a66fbd7f3bd33b0b46d5e9c735b6ceedef10b6e735766565394bc940231008d4e815a41dd3ace596ef8e9977fcca3a856238b82b58eff268942f1a52bc0d38ab2cda923d88bf905b60b4c63167afe0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a9f0c21066446e61be81fd36a317ada0d6ef4eb16e6f6aec74ff84416505b75152d41ac51f024465662aa4d4cb8ddca8023100bd666342c76ad421076f877bb4c1e4a22ac6bec83425fc5988434d176f2b2000987a0c833d4e4549ff24cc61e10f31c40302047c435bb50067306502301b513491b42a4cb48e18036906f87ed08729be2a9e77ef0f41ba353d474d108f986bbc81831516f759b615003b0e51f6023100e9a7cd7817ee814888734448e6f8ca75573c95fa9c11a8f6cf1abb8b9412526ce8c150cb36b86bd15557ed590907abee0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304f3d23ff7b2f1b135b35b751fb82548c295ff0b9307b795ef8842b33ed5761a7f50920f55196a7b58979b778e9a9b809023100c69eb01f9da859b7ce05bb1e10dd267cd7b7ccc17a5f467f621415c4fa68b220df162c91fb34cb733270f1236d7347420302047c435bb50067306502300e65933d88565f72054cd484bc8beff5d6ea5f823411f8844a250d0943d06731480bc7d3316ef704d1baa357027b5f9f023100cdee2e3fe69f68c3331315553fe037b579fd54ce82e1fb041273842f9d7870e0bedb88a5e7dc471faf1f24a43f7516e50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a8db4af1f993ada1d66747feb8e9285d4377172307a39c03fe13b38f5092a25e3646575d8899fd7c5daa4bb4b08d5bbf023100f1fa0a0f5179234fd2e5abc479ba0535caaef59b040e5e5bdacba248dd2d926971684156d8230ffeabd618b8d8491fd30302047c435bb50067306502301e13dde22560c32ee84a9e8218003a540ea7f36fb31082eb879d8bb8b583910c26251b9951ea939134718dd3cef5dc1f02310086c8f9349cda81b568cde27dbf2df3f0a732fe6cb4446dc8fcb2462d74f7c8e3e01293d6b2a0a8215f048e00a7b781d80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310084449073a967bdcddbce6218c62c8a5f691ff572149d47337fd96b384a769c8e58aed4ad234494ce6cd4dcc2721a2a3902300276739430a6c954f0a1eee0ca94f9f47eeda7a3aa5c9edee5116da0ff94ba0d82cd00f94bec9916fc6f7941e8d9e1060302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d4b165e6f570bc8e7c79c96085b485347ab2e203b3de834c4b86a612498832918451ab523ddf46d8d8af5ecdc8692872023100d53c94e22edf0204de558b32fc9770f20bb64491ae8d9197c4651c9a1cc45e62780b07541ef86aca7122adc8759539170302047c435bb5006630640230543874099788fe6219d1a789a7730a8286244e695563921a89122cb82d4674d413766ef558483a08ac658e93c65f6e71023021f32a3be9bafab58c2593515064b5578b0bcd5fe76fe94c6124d218bfd7602ca2bd23e7f34e60385488d94c358a08990302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306c112a137f54f3a1561dcb1e8751ca539e14a6d77559fa47d02ce31d2ab166cea5ad6421e03e1b792ac495f3a9b1de66023100e0037944067e4bc1cca4d29b471d4abc653ce3b823dcf43d959b82a002dd9877aae29f9874001695e799b3d0f2ab786c0302047c435bb5006730650230479026f5d843287f36cbd344a8350e5f94ab148cb1ca8cb1d2bcd570808daa1ea90810b52efff85b595f8e098e7f961602310097d3cbd829bbf28e55502c8fe9e2f01f466431b695e9ac58cedeef6019016bb620f28fbcf00baca0b4fb44f05d96096a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023032e25a616c0dba5b06ff3d190c0e07634a18af5f0b410c0fe26975d497b3209a15808d0f53357ba4cd6b194ec06e8e8f02304f3f1efc83d31430b8da6ba6488869c7484e696d5a991c33addb3966b793aeafa59d39ad6e60e2951d1276c7e0e27dbc0302047c435bb5006730650231009e996839e67148c86facc8b2f220370dbec0e6b56bb130ad1f0c783dd6d4e73e9746cdcd0e145b866828408d15fd59fe0230676095f240ec4c42d9f90fb34f3e335beb82d1c18f6d7329565dff3c064450ff0d9c3bca722cadcf1139b31b2dc0f7f70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301ad647a7368ce15b140c1c8cfe0e714ec612455198fbc7140f7241d8af6eb2249fb62103bda6d93e0677114ef494a57f02303568b0d5a4f53f489bff6a1795e709ab3055a7d6f81658f064ad2b665f10a0ad931873a03a6a751448908ab4e9d40d640302047c435bb5006830660231009bb919ceda430de85a18e7da246ab9d7b8b62d27292409966c76b8fef79202001a92a47addfa659c72f8307e3a8b4485023100e27b1daf9fabb941ea11f4b9b42b2dac70dc28849d10c0e32eb86aae53c67df422e84edfe5dcee8e7336338f1bd890bf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100848733a98cae3f63557a99a653727856903faccf48901c7e94701cb1b9628787a15fd12b86402235e98b0a1f58eac85f02300486c7a26c43321aba773477511d9a92e29c27b8a7862a563af3a0e1dc5a3bca75f65754eb3cdedc7cbe5881119973b10302047c435bb5006730650230654bee9315351b0cf5473f3ff91b14f2af01cfa87dfbbca1412eec3a6752c69c5ff389d6c1b2c4c573dca6685427c450023100c7d2666e00670d4aef651d790011fd93a41c5fcd8e543837347021002e1ea1c2a4d25e81d3b31a5c969c336d02c95dad0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023031d2d9b5ff386a750b3f1719ea88a3656762719f4d36ddf42f242fc82915feb6f5aa2e26c6fe5e1d55bd06e463fa4422023100db574cfac5548463c182fbe7ba4be8502e94e741d4ea1463b5117aca2dc432ae12cec20a254c9bec53fa76cc2d7d06790302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301fdaa20f39bbff13110c02d20d5c8f6ca46c79a7a9f66d99800b43ed515a1b0d1f4bd41c09cd5d5a6d9aa767f10602be023100c4647f64f8295bb5561cf98731f95bae87c929c0505df36466edbbfc153ae7958ea53c3ec703858fd34f2bde460e13500302047c435bb50068306602310087f27bdcbd7ef4553eb98a78e32761414f0ad8c6cd773c49dab0dd333a78ec6c8851ef244253515f0547599b8024ac26023100dd9da9b402112ae69dc3b62453a12cf5885b260e17c74eb9ab214a55154379c6b2acf39b556ab298950e3daf427bca1f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023063ecbcff1fcd766036a5af1808936d1676136d5c28a70baf1b7af4740d826bcafd0d930b160d4b402212d64332c7741f023100fd934830afa0b93198452fc8a921822e2c7e60dc2429dc670fb4d542e80e856851028c889588343ece6e97598059ccb40302047c435bb500673065023100fecc210cf8671ca1a3761d01022b96e20d5f866646decff3c9a82606e321c5cda0874be696b566bbceb0e5bd1401e5c802307ab642b4b4b257f0a16fe4fda9b4ba85609e037e9af7d20516befb2da50c93d09e6b02a7540a38c06521eaacf9c98a140302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b9590082521ee44e5b35a81204863bf4211254dd150fd02f2bbcf5f78c9e6125ae13c98dcf386f0b02f8257ca1d8c4fc023100fe8f18c055f41a8c7864b16279ea63037e775f96a0a8e41829c1e6780fc58aaed8f6ea997348faf5a4f452a2839dcc2c0302047c435bb5006630640230345a63cb01133687a73fb60428ad81512638e2b032193abea945fa7110aca016abb026b83341a337d80ea16d9a14783e0230346f0acd28773baebf0d3a02c3d8ba21ca2cc46227b90281291ab74d383d6aaf0a1bbbfb0350b4fe53775dd19f6be61b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c7c8a3fe8c67df9763b6371060d9f6dfbda84d3a18d6626b789cb5b88a530bce066f7f789c6513dccc96fdf322975d56023100b8f8d394a7f459530b3acb29e76c69dc9fb2f245153b05c005d5056234e3c9a591a8152e4a9bf8c2fc0be473ee6090e00302047c435bb500673065023100ce829fccfcadb52ed86ffe193a2cab280fc978c756df0a076895db61b1435088949ae44f7b4c74e7b00d6e7ae41237540230627c28ab4a990766353d5ed7ada659d18f18a23e0e52501b2a4595c62e8036ebd19b47448bb18ac174941d265e02cf150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e35e47280859aef306babcb2563a0dac0a38f4ce399eaf1889f610f052d66a52bf99163042bde3375c550c20f396631502301171d8f2571d6549b3bf0fa811c12777e284e8e14b373515f23e89801c32d55c3375cc037da220173db4ddc4088b0b540302047c435bb500673065023100dbc59a67016100fb5d268b9d61379af4b126a9d70915d2ec4b5e78a333f7448e44d8c66871455d7e888deacb710cc67602305eaa89db81ad4f22872cad7b45cec4f5d7f72ef51fe331d5b39898fba7f0e5ffd8a015b079e770d49c66bc53d4f121f10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023003ea17ad51bc3e333d09a093f714608ef578530d5a8b8152c9c0cbb6297fc925b2d5cb2b8239cd2fd3fbd513ab4cef66023034e7830a3666ef7a6ca8a696f910ee05c953341be0f65b6a511de68941dbd06102e68f381167e5fed5a103051a37f5210302047c435bb50066306402300d2c6865bbd9fa4fc462bea4e05bb210bb031aff8448d5a33b1bbdacf9695fbd99eba6b1167cbd0fa7877a9a8d412f43023034e5d2dcb8901f875dc5054633de231097138b0981ab69dde48e7faaf68ab0a0d767afdac2ed49878511dac6686eea9d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306329a366e0705366be3e103a74a92cda90fb55a9dd4758d4228b58fb05995250ac1d47753f8cbd19255d73791e01a6f5023020a03d73cf8cdcf9f728c2782d90ad2c55315d07fa72435cc396dc7b8c80ee97e9c79ca1b6ef40bc47092a27584c67430302047c435bb50066306402301914c7fc0c4fd445162c056d60b5ab5f4d5556503f1e5fd1c29fca9c0e20e74bd9b3f3ee30874749991afac3ca6a7df80230314e7e3231e652126bad9eef4b37cd3eb6256c520ef8b387ee06eab186ff03fc6d0edfd5384ce44a184bfd8adad3b7d00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023055f14665b0a79dedade424c8cb50cdef10e59ce023f4bc647e9137ae223f2638aa5116f3df9c2985cc4c8133c5eccd09023100a8d7a8e1d8ed855cbef6794842340adb397007868da521069a04a4167231c746ad1e3cc45df9f86a9e97d3a4ec2e8cba0302047c435bb500683066023100868f750cdd79fc35d3d970a9bee3fa875b54ed391244a9ecb229dea9e0a388daca15c5c23f3630409bfe2b3a8fa81d25023100b03e4102bcdb3acaf5977602f3cb877044f5b3124c3ace4d94cf8de7599ed8bf8006e5d9444cbef30d4490a99c5194530302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300cfacd8361f0589f9744384d87023c7ca25288e0b8bfb725a11847fff4c5d58fe68eaf16fd5a56f8c915097ad49087ef023100e119cff219c3afb5d61d72e1d369ef0a3a2e1f9fde10b2f49db957fe69059130675b8c71931647ecb5a7bce8d5478d550302047c435bb50067306502303b75c8d7357398570e6ef4774ee22e58ba5a1d8e983d34f81fc2d4c4ef7b1fb8674b09b1a38e55fdcba1cc22bb65032c02310089247dc5cf0c95e065a1af50acac0c1e655b8f02f2b2c2a10d09e624d2f33dee2734790e478b313d56c28a2be8b8827f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008f404ab3e73d74fbf4e9f233abf96e3eafc903d0c716c6d4dfdb289186b4e7fa3aecd9569826c1469bd6feb1c0750e660231009442fa0db473bea0da24abefa8baa4a85025d87d0fa02813d246b420fd648ed989aa754a51ab585a5da9089422dd7d420302047c435bb5006630640230340286da2dccdd3875a29679b0c3b1398b13b0f9f8a7c56851ac6c6a36fb6c1dcb86a86e0768b465c44ba00c6d83af3302305e2f8abf75cf1088cf2fa04099b4917a34b97fe1f113fcea29e37e1f0d19b8fe6db812174759da96219ec6428eb541fe0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008509fb08653e38f03242001877d7b8db80196020247700dfe72eb04594afffbeeb4811e45a238870e97f41535e72f6d3023002017c50c77b251e0ae9bf438fed20b6b313f345d6f01c4ce3e9c981615da377c749b97e7848887e94dc2f71d531adee0302047c435bb500683066023100da429eac977b18167cd8859e1f5061b316d848094ed4bcceddd7a7842e200da4b2f64dce24e64627875b654bfcef5d39023100b898ef64e2888d678610234aee3c05f67ebf6df02b8c8f8fef2b9ec15e85df01db4c5746e0c7a8e88ee9de5f26627b0a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d9399b57115618afde6e745f279572d3d9c484cb18128a44b6116ce23dbc7bce0978ee836124bd0398c471471a6365b8023100a40d7d0e7753bfd639080dbfb89bf0ccaf38b9b49a176790b91c8a77e3233e6af241918cbd23adb0f5d21be0e7d1280e0302047c435bb50066306402303945a264999f28975ea1109435e8422b5bcbaa914de056610afd7a18b2ecda95f0e9ddb282d75417fb618366439e073702302af45a0ecccecf311b5847455697592da0eb90bb37eadde5deeab07904ea069577ad5649ad678bea7e4de0d1a68e1f1a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ef497bfb0947bc647f3af21c48d58834f39a3143ef1b50460034f82cffca6345915e0b09f29d161f18f5259abb1aa80a023100b3cd5c1ce07a4b79cd71a75b6384643c51609dc8bcce06732a8d39491d3bdc3f14d5ecc1bc0fce3b75909a3bc6fbe8d60302047c435bb500683066023100eabf1b6abcf17f01108eba704e8475794fc33e584164991d67b30d0a1beb955bc08d75bf515a2347003acb190a89dd4b023100935feb97bb431486f97e72c61696b49479565200263e2a3ee91ee08652d6ee14891fba5fcd447e4e60e17c40a92990070302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b167d6ca90898691c076114af3bf92425a89eff7b0730d6817e403c9711175be08b9b0f0b3730e7aaa1febf56dc8b07102302c3544399caeb7eba4b75263ee0bd118392166ef8849e580ed7fb311e47c0e6632d89afd97378a361f719bd8f4b68f570302047c435bb500683066023100869b6ad581a9d0755963e337afe4aed24a264d183d75233ce1769e7be9860496829d334ee20eb49c829117f1b17efb7f023100eb7f2e35982e6300181dc6e87bbb150b19653943dea6b6d829951e5ea37ac2c692b923c93f71cd1c13b3dff086281a3e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f4b51241b927f9e29412b61c11209cc8b156427b82ae0a4e8afbd898c9b68f9f9fafcb80074b95e9ba20ec2ab82a592802307c3e3a9686cd7ec9bb9bcb0e60c13526673c7e80f9c5c439d806d0e5a0fcd631ad856cc47a4be783eafaa17d56fb9b6e0302047c435bb500673065023100bdea2ace7df82e212e46321d8126bc1a7ac64c16ed1914920b476c013c8f20af0430a91a4bae9b9d06cb781c793d36bf02305795d8e08fd68699838a129f0990e9f952063dd6c26071f624e9c4d0c46a8335bc1be47ee739bdc53edacd830aad0cb70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310096fc78d52745a4f0c05d4749ee3696e9df7fb27dae8d089b13eda4396a7ca40c9bda1cb404bda7d0653d1c98f7dd197d023100c4a4896db2ffe413887c9d400a1c1f17a9208c56ffb8af71d26f1ce1c8a931eb5666af0a485ac0ef0973aaccf793892f0302047c435bb500673065023100a372f0e8187a69fc6863c23bb36b43012b3f91cb17ffd0058684594cec5a9470d829daf112c94829f7cf9857e19fdc090230344d645a004bced00ae2ba17f5a957a077133bd250c3ec376e10587ae60c20d23cfd5f6f3fffe5b95198b5d37c060d290302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d5dd0eec9b7d37e22f93597ce8331ac74622a012920f9f801ddfba225e54a8ea903d6c33f51d3ff97d9915c4bc9023bb023100e04fddfcdc55f4f2408a42f76448f5743c15aa17ef872352cbc7a065ed707ea6f90f748dad87b642f05f5c924316d8850302047c435bb50067306502300d8ebf62cdf45db8f887177a30e2edb94b8aa6928a58396fc062c8685e2349d308e51989a7578ec0c496acf25f5129b0023100830b349b12f2a4076a6966397c4b45d012b26f59e6b5936e8c421d19a76489c01ce01d1adf9f932f9d26ac3b6d7ebc9e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302be79ca30ea88add4badb8b47dbe8375ae367b80b82ac788d8bad24fe1b1381d79e9d3250bb4d735b6334f438f35dd5c023003c1ae4c412ec097177465f5d4b651c3fe8a2a5e6ba117937ba4545770c5b05b331880651403aea6402a5a147f8e52870302047c435bb50066306402304872786812784dceb95f91f92140920c6130f96a4dcce6b53525ec3d6a5c68a86890f4c93ead139852f355cbfc72476602301808f658c6f2d2c744b8db3c42848cda97a3fbfed36faaf3ef9511f51256ba692418d7d57cd72675bb183b4b8ac353490302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023016af75ad9e6d7c9fa74967a98e62627d489b397f73f7f2c853c3e757fc3422250afeaeab1863eb5481d13d2b3a4a133b023100b9ac52a72fa31bf1b651d4ae6a6c3e2eac003b3b4a1b3b69b1f57b7fdde15c92772e8c6b4e680962a4edaa48f685246d0302047c435bb5006730650231009f93b6ad415d213b7433f3d82d72130a587573105acb59d0abf153ff0bf07a9622c4023d3be9ece05fb2dacda1a78357023038f198c3a49622b70b269c30510a721b07ad80d1ccb06a7d89e67bf7d0df2518e6e0aff9e44155066397124071ffa09e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bfa388847f4f342f62b7b8c99305fa62eeec93ccdc4897bf6c3ea0dd56aca0a675d65d511c0722654945253ebc8df4ee023025beb19b25d387f53d78845d724921fa88ad584ad74153ea0a0a6ec09a94b1d4ad92b0d6de9fd2546a7f4cf2a5dde9410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b025ead93e5c17b4b8baf62ae7cd3f75bfa1af97d12e06722779f11dfd170c61e567debb204afccd93c5d151888af5d5023100d34e930780dd805fbe93b08483cd4d58d365a5c87731bd2e7d027337589fe1ef456181ab95dc5b2f2d8b5653f5fab16b0302047c435bb500673065023100abcaedeb1db595caf9d37acdcd7417a93e204eeb9670fb7f4951bba8b67c0844a1551b046c37be5c3540100481f00f4702307178da955f76431df1c53bdbe04d3d0d987c97525661eeed718347a9eb3284ab8a29b6c45b3e9318ac24d9971a3352780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230683685576c4b6e732ff4b0232d1d15cd0c133f439a61b2904a44cf18b9a2649c407d03a83d728363f1c97d5ca3bc23bb023016416782d5c6987ea87bfb5d386e80d4f30f891ce849c0d45987040b87adcdf7d9522bbdabaa1620efc9be488733ce7b0302047c435bb500673065023100e2a440f8f4604f11f9b16eed663416ade7bb754ee7a4f4d138d3f4bd512666f7bc3ddc4985623aa291874bafe01255f902306fe3055cd4ba986f347ef0518110e07ebb85cb2dc144e26ee9e9427a738edb41778f86576363f21be51dc95a5b04a6da0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dc5cd1f9852e8eb44f4e7b016f6fc1bd523208944c2e52f75944147b5097b6ac51d026e601ca3cba3791e40cbc06077d023027d66f1cc1a4fdced7615646fce16700af71dbdede607e10f82712d2f23cc1719477823eafb6487a0fb1e9435c82d9ae0302047c435bb50066306402304dee24c1f70ed24029c70ffe40ae177a141d42268ca5ede808e01644a39f1a634af28730b1ecec1229ee1aef14535e3c02303fb2c825a3f7950915d6f673cff006a24686b6dbae1862237d5b37748b08bef11dfec81ef33c113a4129309d98826fde0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023022225b0b41e156cc47fc823c17fbbc701bbeb45a90fac86c356d5dbf5e019527cef5007b8a85e8c4a87fd782da4f4833023100a075fd86b80e08ee13a5eac066ef33922d53cc8f503830c07dc9b7ac58b54a1ac8d21ff57dd404a7b4f7df60e3728f1e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302db49e374eee916c0d47a669c08f86d948e3c14fdbdbb234103084dd1525472565322924071ec3e37decb96004b4411b023100e4833baae44b684b29a7fd09f62201a8cb90ce13383cb4e73c2648ce308307bedea61af2748b9d73e4a9aa256d52158f0302047c435bb5006730650231009a056442df9abca9afce6553ca3e63827f72e6acfb56410ff1c09866245c8bb397828d283cb63f4c2c70d2dc757d2fb20230502908204338a4be3d3aa6690fb4dde5fe419a15be5015921712480509b7482c53e39fe803f638c00c7dd7413c4458750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100afa95907293acd281a0c88265692aa7683ce8291ceff0d9852bc5d69d9fe377da8dda9e0123a6f2665f7defdad3e7c75023100b2769bbdfe4a60199060eda19beb2bd304e5423e0b040dd6744b51774251e6f1b7f351e2277795504a28840809811dac0302047c435bb500663064023052185030ed5058c65e75a396336b655bc20aad9837c99c25d8505069b17ca3620e81659214b45c3da49e4fa2ce30802b02302e3cafe11ae45de48458f8ff39ff49513c63c502c507c8eb9dff9f862bde55c85a91f9526dd95249b80e4e41652cfc050302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023016f3b1c9c0f86d1b3fb25770f26fe4937437a7a061ec5fa2b94fbbc15b92cbd386ce670911e961fe04e7bf06aae77244023031f78925dfeb9865842bdc0058c0126105eda50c609afbbd9b6157eba8ab79ac523a9463c3bf38b0e53ee7e2a010aee00302047c435bb5006830660231009ef98e48bc43b6b13ca9e1c4627dd65c5a79f959373e6250a1c6d9729d4c57232616972ac2302fe45e34aec7380d7373023100ca9d60758cc5c02316b748b01aa8e025510d9e541f01881aec36ef2c855417981bd7568e90958e3512ed603cf974c8b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e809bd517b9a0d637ac0b5c727af3f098c9797429c023fb037c784708137b55ea6adb4037edef8101ff36b8c6bf625c202305adb1aeb9c2cbe4f8d2472d95b188063af473bdf27997f89f26bfe4b3d79ebb1057138225ac1c4079a706df19be6de3f0302047c435bb500673065023034e994bc9f8e5c250967109ef7e602f3fd2b7055b2ec80b912404cb7f07aea97f70d10872343b3d7fdf751a6f3ddb6f1023100886dc1d346e228ae60ca03bdcd2646f6e449e416994f0184951403dfa4a8d876dfccb3d19d5e182cb6565c0738c11e640302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023077bd46499155f5aa81f0b11ed68c0ad27d4ad742b6e4944ef49c3222ffdab6b31c4a0ec406d57bd30686ea3aab05687e023100aadad1b3890a11356702ea35a69caf7da5dafb9121c1c3c1c28cc04e555480162651954486d50d75d7b430882ba8140e0302047c435bb500673065023100fb87fa54bde6ce78a597e928f0acff0feca1732b03831af3f04bf56693978d574cda8efe8ec7690f195fa6328e1530d0023067f618c74a2ec93e2ab258a03475cf54785e1d058355870a380cf5e49f2404d190ec90d57940fc5d4368e30d5c6c86020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306ee9867c05885232a74135940142ae0ddd7126c0907664b99ecec837a727c682e4a0450fc3d377574aca37ad13538cf4023100c5cb603f09cf89f80cbcb340ba43f6c39ef8af2ef82f7bc27ffbbe9d6d1a78bb156df366be3b99fa763c8240fe6170110302047c435bb500683066023100aed6f5173e77f8fcde15c00315505b66dade3374d2e01db018dc8a23f88b65dad73624e47ab0c8721eeecd54396f1c30023100f90dccb65966999f607f4be4b9768279fb945b47e024b2164307e4e5070d0093ec04989bc81bd04d52b6dce029e6bb4f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230403be626514343243029de3803930de7deafb44f69f1c33399f2d619ca40dc8421df898eea68ff69e6b759b3be888f2a023100f1e9fde6490d3b351bb8b58e0ace29a55edf998a9354d3f3b2e1dd527652fbbbdc35742eebad39fb33d109f981d5bc210302047c435bb500673065023100e8ce0680546da1c2d4b2007b4f02beed399ccb165934d9a127fddf6c73ab4fecacfbdc6c5c0c364003fbd87802c3cfc4023029b5c4093a068acd71e5afd649641e75ba4c3a7dd62dcb72e9e83914454b4255b672eb65f6bd0cae6f2cf2f5b92df3150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c654b3c53f81f5331f9f88503b6fca80e40a70bae4ea8ceda2a677d9b973cdb8649992db935b601e2cae82d906a2135002302fe702d50d45ca6270ea49dd36cac370cba3bb1b35cf1d19ee53b6ee7e2850a3a2cdb514583f392107d1cd2d4a39708a0302047c435bb50066306402300de95a109a2b5c453d84a2fdcb2e0f8b2eeca7370c53f26f0ad2f140b37d865f83c3156d405d52c6b6276e956259418d02305a332406e734f4ef83ed293a8ee07bfff51f61b42964ceca7e33a3f1b6520c84a7c015a249d33688bfe9d7bd3b586dd90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c2e5e728f501fe2f307f4f264b8a872aded3616dc834d63f8c412004d5d001ed7d656af000dc28863f4ddb47c81247e702310080057bc90dba7a232e9a9932a17b536e8134748e05f1f1785f335b42e87603537377ead54ba733f166f983e8bfec3b2a0302047c435bb500673065023100886b95e60db6f11a709f93677eb55bfad8c8973f4ff5dd3e6e341f3f8a53806588981593ee52436b76b2b744c4b3b33b02300a6893d8234d6405a998a2558d23971ff9f35d51fba6f0aa158c95c7f291a55a76e41275e709d5f49dd892dad53ec5700302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304df6261f28bfecc96ff884309fa24bba39b1a13cfe1629e626692598d9fbff6aa2be5fc73bea189a63fb9f1dd989b87602302593e5deee5b7b48f0bfd7d50c325e92b4327d6696bca13e79f8b3ea243c1d5413fba68b72a647b684a4510bf5d7b9ca0302047c435bb500673065023100b622dc6f13df40ccf0849bbb099affc647dc27c96f8660b69682908f992da0ca340f86ff1b00fd6aff48278c6a65323f02305e6542d15df0212463e9e5b6b88a50e82226f094445acace628e462737097253e5887ac54d689494e61b3a56878667da0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023021b69224ff4df686e28832432c9e977bc1f5ee7e357cb5fe3fc495a94e6903a99848103760ea5f12803ed7af82aac9cc02301f5639a9d24635f3afdee963c6847b47f1497d62edf108dc4cc908d124037811e25820330e936097c9e6f882d5fcce650302047c435bb500673065023005629a2a8c721b8ae0e408429cc067ccf433e33880f115167d4047f09ff206f28503a918f24d91c6700e1b6b1942c8b6023100e0d48b69b4ef4c858d6920b4e32b8fad4d4e6c7345dde5417895b1ac8bd6337916918d33c99ea7880dc4e24cd34476d90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230115270877befe2de3ca0cd04f684c5e8ec332207d06fd2d321c73fbff01775a13744ccb8b9136ed9e9dc659bd24e7ad102301822c5cc88c2529eb64a92e68fa23a7e70296f5af3f32251c44c24f3a3a24d02f8a5ed57d5a52bf24a74c308626b53a10302047c435bb500663064023023f741b74ec9201a3fd704c089b274d7ebd6c2df2ec1d5164535c2004e747bbcb036f4a3a21d5252721fff4b2e9a5caa0230148399b6c249b69c00bc72d3d98cc7d825842ee8e210d2ac6d011e027921cbf541e9dfa6466f23c53e0f2c290ae6edf10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ff6181fd601e06fd8c694e726deb39f717d4dfdc7424bc2cd4dd2e4948b810315eb55d9a5409dab00b8df700a3a49d24023100b3de61cb4d74b44338bede5786f80fcb598bc943ed13adac32173549c4115e84ab7fbe78d08503efdf9d5f2750e7304c0302047c435bb50066306402302b00dd2c46c38a6cc03f2bb88b6a7f10e7c2d1d4e7f3dfa1ef7abf8481ef966baf21729be29f108f3111a3312de07976023010e6931d1aa8d81fcd67aaaf4fc498a1a75dce97c5ea00c7e9a136b39e05be7e83b2e5c99c1efe6a1b8ba58cb632ead20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100eea7b129fdef957fc779488a604740cb28f8ef5bfe3fc15fea385a2413ba61393c24de63910a6df7e5a21ff6b91c83a8023100f9f5142fc404364f532a3ff38348d93c35b5230f255d0a19fb63f5dd46109d8f58770576860019b7eafc5fec7c8099c60302047c435bb50066306402307056a518b1c51741c1538dc24b0f8c1ce2fb7af680c373f3ea2aa1ac263ada9caab6d24beced0b6e02bc3643ffdf8f0e02300ff610cc0f3443bc26b527171f2ca61c62f60beab812ebb2adc24c4145ee06bb3ab76e6f7457bef0002f9f3bcb09d3330302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023025870463c6c6f62d06ffd8fba96594fe14142bd04f9ba986c6d2180e1eceda93f336612723f725f2f25555675a5ca24b023100c154ba142d3968ac4cc40575aceab6372a771e472dfd6c7949fd9d0681a676e631c0ce8b527c9441a6ad86333ead90480302047c435bb500663064023072f8876aeb4382b7f28a37c116308231776aaf4f084204117e21b9c2a81b5ed60eebd78cfa295d25f5397e2c7044bfde023063292c59fdf4568250852da360b8692d56906b6f1455455671af3d6bd8b2b6e2008a786ca8d6c8ecc84eb51f1ea13f5b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ba1427802a69f1bdfbcc94cc010425167d8f2a5c6b5db30de50ea6711a3b5cc7d4d458fc2084edaf2ba2da9c4075a68a02300647e229dc47b286048122901e1bf433229fcdf3d01182f2c9a43c1f98b241128dcbf50291dcedd338948164d9fdd73f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023048a46ad0d6566d1471335a9f960580bae8eb748d9cf01e5e3ae0d0ba1dd0c23fbc9931610d73259d4d8462219d4cb08e023100bafc35e3ee756524aa0a9c5b36832d89f857887555fe8319b03ad0fd84640d579e14ca432d5f99debdadbc14e4fbed9a0302047c435bb500673065023039ad0e2f11752e0841caf87a7b9debab4ca7f7b108e13e40e74eedfed758230ecfc6090ef1176b89da3bc756e4ae457b0231008d35d7bf1b6abaeb8608ba362153e7029d0b2957f600b30b94336d8da3b87cbf4b8e0c6b720c8fcad9acb71205a473160302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304550b51ae9927f4101a39e224f1220bbe4d5a1cff05d1082ded897169f307ac8afe520b066946bccd965d5cb9fd53b580230629660802f43ac55b521df75ddd2c7226213eeeb26e8a363bf9b99a77a981d6170c9b99fbe9ace5746e90bf344f6e0ff0302047c435bb5006730650230336c09fdda1fb9709a369262c100221692baeaf9c526c276a56228ccb55b09e9db501f4bd820c1006b9a8b1b2648faa2023100e2a2af8407b53b696f828ee5eff6740e12f23a81d6e1543a5ae81cb33c780d30104555e8817afb97ac7ed15cc5af0c740302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b0fa631848120cd0840d6f2b5d2c0fde5bc0fa40ccd533943744026b9c163336f07de06492e7a38e261df9af6571b854023100c7543144b97fbf9a8b474f39e4fbc70d2f97cd69a84dea5ec0b110f619984cdd2794f3746b967f79622aee390c47019e0302047c435bb500673065023100cc3c6f4bc16cfd314f8c82fe92a8c44f030d2713553f7d1bd4370346f7f09c3df28401fb68c0ce433ae84902c4724d6a02304fe7f9e73e1934ebc35a6f24b6a58e87141d838b4545aad8017a63291296a74782deca2c55ffff5e641a308165fa391e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303eba6a5f7cb720d28fe19ab829bae76a57d3ed549260387a124ffd339fab5ef70a57957a1d9754e189f656d86d2d277b023100e575052cd9327477babe6d41a6c3164502b54175c2905dd6ebe20bb9c425a4b3ef49bc761ff043135bf4b8581ee583f10302047c435bb500673065023100d35b0eca0e00bc3d839e95556fef07374e3ae3234a39ea7cdcef7223c68adb9661f3d95f43c5d4eef2a640485736e87802306d7081572a7c27c540a1df331f207054aaac021a7ad9c87eaa4a1b61ab52dd6ab33b3c4b0d61b56a4778cd9d7836dfce0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303cf68991d32731119ed33fcec6611b486403f4373fb71efd7b41cee758e178798b311c8b90084be5e91a335ece28ea7d02303b6c724f40e54c43df83b867c5a7cc9b47b1f38cbe51a77b981b8bccc516765b0643f75633e4834b6e48323b650d53570302047c435bb500683066023100df9b598fa1f2fceb6243bc240562588d6bc25767bc078a630f9b4c346cb7e18b897d32d87e77e8a4496f4c9c0356c70d023100d140f42379eaea4206b8401965547b3eee457ba6f23c0cd1a424d41684687e5f59b2ea320aa4f0858babc8bb915dce250302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230390e0bf743aee4b5f6f80643b3e017cb1cff8393a3ece5ed668d463490d2f58c5752130fd870f61959d4805544645a7202304b4c8e23cbf722447e226bef4a43528d2e19854615c8278c0601c94ebd669c29b7c2b6cbc52ac5c0297941b00cc981410302047c435bb5006730650231009432d1704fc68947b09924a52509ffad5a63fbda852578ce4421d86e927e6ead4cc68ec4e9bd27b301090aa3cded4ffa02301452e44a8fd854b85410a0771588c704f98d32e6972ba438dacf7c7887557c39ee37886e5935a08e800df647d320a6fd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023025c24f4a24410edd7be09d3b975599dc6fd67ce9e8594c385564eb869bccb1318fb17a8e90da32a42274dcfb6fceb8a7023100a95b6b48efeda7fbd3a02bd6299eadcd3c809ed224aef66dfa56c1c0944c9bb0192b8953d0c96e25ca7c1a61499aa4e00302047c435bb50066306402302cfc9cec257d1490bba63f1eef1fbac3ca0895801a341f17a8e8a334cfe5be962cc4f41ec8969fe5299c5abb1b47405a02307814491955d194a3af9dc7c203b2349363e86ae1d428ce2f9c3d9f7f6d71a2625e268e0a905199fe8e6bd958d78136be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100aeb3670bc51020ed6d09cb456b75d3de8c49c050e6239806bcf8195c63175b3b79477249366fa7d30d30b70f956f50e4023100998791038db2bc0cb06eac1b14f58a7e52946c6f8b373e5cbbd83109920f392254d09fceacbe84b0fb9e067300453a490302047c435bb500673065023100c8535795b6d983abf9805ac4b3e1c1c3cb30ea116176f0e4828de6941f51a7eeb1b3a66cf3b9b63a5e00ade602762b8d0230413e7f3059eb38406e9eab1deaf273a92c682e3d8b3e018cf715622e89e85292c3957f0f8b98310843966904ab3820400302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d50ff974d35c36fadded2946d3a07773cb9389ed584ec504442732cfc4ac6d34970a29133705a8052a3299c10af6c0a1023100bc445207c70483528cdbaa1658262b65f41834432175a0156460b2930356849764335ea370e5d456074de168186e400f0302047c435bb500673065023010f845a80d1362e4d86b7e130ef8668de045c6de02a2d4385057a59b301fed6a3aacee3e2690478d3cb036488041996702310085d6309b1447ab00dd7487d11230cb3496d17966a278b4f0bd1ba428c2cb6c3751b9a16bbd6069ba2dc89174cd26cdbf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303034829eee3f3a9ec37bea99ab73a5e4b824915bd90aec906fa4a43ea06e579fdbf118f89ecb08e6604928be14dc8e9d023051b8a9730ddc3c55b7204f512e0c4c639abe392a0256836767d3bc58254cf130bdc300142bc2cab8ee5f2ea3f879e03f0302047c435bb50067306502301f224f23b4e0efa4b3e548e3ecc5b52e9ab418c1a79eb8a713d1f6f2373ea031ee2449068b63e5b832000b79768021b3023100c7e1bd72e974b7184c380c37ea555a8dde393808914e27b0eec44793fa87e155ee7e20f953ac8d282c98301989d066400302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310099a050c55ea16d8fff2db1c305befaf783076bc3ef89ac761d3579e00cbe38e385ae17477b5a5de26519bca8d7b5d1b002302ddc4a14b46ad557e34b82c8d9b552bebf73a580cf85077e9d7a4d03ba56ddd3a29ec39303dbadd227bb700e0d34e3380302047c435bb50067306502305ba59fec5aed81f2dfef2108ae3a6595737f6c06b973d8a6bce25cd4e1c01a4396f312892e6ccd0827cee7ef9d6a46b7023100a75ca343bf9c67b8f4a5b670d2a6dc09928d4a856c272417ead3875a806d934ce8671d88969b469fa1daa1a39f7617e50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023008e77c6cfa0d3577669c64a39100ff4121aeef74b762ed0eff1fb07c6aa229b125ee8f5a1fb28f289d07f6730434f3f2023100e68675f636c74b16e60387702b60eba2e9c8866b471f3ccc69d14557d484b5a257006c9cf82363b5d4b74badc099d3290302047c435bb500673065023100acd672e6b8bfcfbda62522af22fc346d6332e1c75bedb0047bfca35d62b50b6f626f603af2775bdd3723a48ce910b993023079f9fe20782f3b88694bc18566cb635a3ecbcc8c98e2b5c410c547c9f7750e2c3b8331a60d65e59c82d7e833f7c516270302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304874b5d68bdcf337464f13a49d3b96afb986a9f9f004a1a3365f5da88f8ee909bfcabb37f56c38c006c94d87128d1e58023100ef3c53f60998194bbe2fe5d1a2c25a051bc3d575885689bbf881aa5d6577137de26e635d22c968ea633a3a2b69deb8fd0302047c435bb50067306502307fec461c9038dfe5f0d9f083d383fcd8d416ca7f5fb019df950c8af4adf59d441e97c8bb2a1d3a39827750439af56fa6023100a94013aed1f4a5dbc1684e05f8bbc775632dc3242c1109f27be75d975c33642f67e2d3c655d8edf17990e8688252d7b50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cae201980f2b68bb064ccef04b81e10f8d3c938ad6b58d1bd029df52b302916f3113bac52f0a4a89e0a79c11c34b00c0023100c1a85ce40c9a67851bda1f3e183292250bcd05845ef7c7eb0408f1a7553a02ae4fa30608c588a41fc7444c219bc81c4f0302047c435bb500673065023047c5508e44ed670433dd55b85964bd6f64cc7707cc3e41def01506d999fbe0d5312a4af0b9d05cde2015f500f4ab3def023100e52b518e3f6cee5952f251b7dfe3f235216e351a9c2a5cce1e345006e976b6ada93d01a28a00b43796a13b314e9834350302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307de55bc8eeaf72fac2fa974c237e23b01a2cea20f71bebcdefb2b32aa21cdca2dee452d78c443c3d4e7628231a11fc940230100bb392ca86441862e8b03b230fee074248cd558e8d840c3aee71503e3c8576095d67a2e1e07a7873961d9bc809d7980302047c435bb500663064023038717e3578392f4217ecfca4a7a8dd9175b2ee6e6d5d873efa83af33b3267391e4e02359821b89533fb59cd97db854b8023071957c8f5e120d53d4549793d57ec5846461b3fbfc36dec92ef6a6a5f8c63a2fac316f4b478fb8f8e7e55bf4782d9e810302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023064f65d667363347fcda21e7f0bb7a5f9f74c6cdf0f4f0bcb1ca2014164c33d6a4464ce76681db4d4e7bd5c9c54d64ffe023100e246ded5579197c48b479e84f0591627aa4a631d0eeff5213a267a334ee0ac15bfd2a49d3366e153588728faba1fe6200302047c435bb5006630640230678ddb88d19846c7ca6e3c670167ab649ae272dd92df3dea424a0d1480cfd55bdd98a3fd6ef5309faf63d9a12ca78fae02302ff90eb144954fe38fefeea78ffddaf7d8fdd34e3a0bf31457c6311608c09c5169b0f76b448ea3104ec60a2a73949df90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023019485fa72dd35101d7117f838351699cc88f9bb29be84d6597638adf31c9b1927eea5684668b62348d29d1d6f48eeae902300740cf2bee34648d2d9b5b4b9e1db7827846a0aab9230d82ddc0abbca2972ed3a965bd209f8522218758eeed86fffdb60302047c435bb500673065023019ca225a8b5fbe5dab939bdf3ff166dc7c614469809ff185ee31dfedf882d8d9fced5fb1ed496d6ead13b8c29aeb9540023100d7ffea9f662d849eb4c54fd31c42804dc1439a56a485d21b4a34ae3e4dd180b2a22ebffb970aa9d082a4b327a01c3b780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f4261d3c12c60ee88a9d56fad781a32fedf3ebffe4409a238625927bc76bba40381a6d8f3d7e72b1543bbde7dd42c8bf0230255b5566dd465976881c1854176f2c7f1cc78a700abfce8844ae6e55b212dff2c174c51e294eae1c7671bb6d491b608b0302047c435bb500673065023070c63b73e0d7c472c0f658038b69b8ee3e75ad42edc3a5248c0a62ea1f44861f6b21a79cf6a9dea45936df9ff7948082023100e1a14ce30f8d0c1c5488f9df3c83597a5974b12b92383f5b7676493d8b173487974fe1af4e2a91a87fb488dfb1445f5e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023020daeabdf88305a81b1eaaeaefb13957fdd222e42764c744df10eccf8bf2ad74bef2c4cf35feb9115b0ca926446152a10231009b5a617f274f14d5e7a3ae2a3090320c0a8d9d608bc65484216020b4f5119da59db7d36466dfe1750ea4c6c9ba2f64500302047c435bb500683066023100f63a27e69b7a94c4dca0d4b7676b215ee9136c588272bdbc01761c154f2f794b670af4a3081fd5755a13fddc78a908c3023100fa5aea82b9a27e2ea50aa6cdaa754bd4dcdfff25adeba81702e0b9f58c64ba2e91be7b440ced73afca14cbb72d8913640302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303d5b0334a0853b6e0a52a9be1689e6c0f2f0cffd50e0a66c21fff3ef95949893e19e6ca3dfb5acc3f06d74c58805a2cb02306886161da1b7e94dba4c3d108bdc57b2969893139b60883c4f97f07068088303e34992faba7312bd082df53aaafbc2440302047c435bb500663064023060b7da633edb2e2b6d72fbd0952598ee4ab2ea0be0ac2e2e029471abbf2df15c8e05163466c612d01806045087f94e9b02305891fe3a02cf980018db5368e513fc6ea8f79516a4886ba7de76b04f9ae703072a5cd90e21a97f758d9d596605e1f62c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304e7574390966b30f2aeb57a9e89521a98c006a64c24b6b19c475f5e348ee94c655e49304ef9fa00357f54696fa05a4090230010b0a4924ad48222352a79ec900a806919cbb398b56253b06c91abbf4d6c16bef37cf6747d8fc1ddd4d225ecef322910302047c435bb50066306402301fbcacfd23d17a3923f61428457cfa9c13a5d44601e52b43e3c9891ff4e6e2cfc7a28fadb8a0a3036539bf5f251651a3023049f1d906ec1817f20071cf6bfc5339e6e3fc95142f75430ea662d05e06a691e9d85fd760bf8905f907994a9c418e18be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023058eb8455d7636892aefb686cd4a825111420aaa4bdadd4068c91577cffe2b6e9fd1ba414c972cba95d48b9e596d32010023100ffc3889ac752a1cc88b4a959c4f767370929adfb424408db816ed904096039228f7165d1851b429ccae364382833b3dc0302047c435bb500673065023100c0fe3e2cb85f89b36e477ae60ac0e2aaca7c2d64bb5ccbaf10374f36665167473732454d14cc1c8da8a21fe916a5c75a0230248f8b0fae1640c5bfa3d675f11de9e333cfb27e46b30af51cc84a6b8d882bd8205a6a80657cd5affffa127d98ca87f00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310091fd799286005de43846680f453a0f8c2418e8c2df7948b14d4d1959a4e24fbcaa2f6167bc2e7b32d99c245783fb554a0230557b776326a3abc29095b0f1d5080023c796b77410923930063fa093b04a2a3eec8f32a2a57cc4c84c1f0576ee9ef4630302047c435bb500683066023100bdb15364850db4690f6f635079db221c9d98f085127f1949130bca9814f7d1e10b0733b807c49e5f3d6e5f56f2263d6d023100c876028d128db1bd92ce18fab45cac6c5fb1cd3867754cebb936caaec57954b467aa01fee53c52505c09ef91e96a59200302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310088268f6f8f51520569b8429b3b2a403e21113d143675b7fd6178cba001ec4af71aec8256552a391e2bd87977f9eb7124023100fa06768566911095b3798b909175862cf99359bdc813a8a332ecde562ab63abfc6ac2fd3f5a4850f5e5a14acb7eb28be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bb26d12c7c3c7157d8772243ed66eb68f94183f4ffeddbb9fb113e3e932fc7d4a9beecbc6e0b051e8023825a35168d53023040208f31457eea3b3448933bf22e156d9fcf5e0bad6e49ed7bb2c39c585d1607ad87a58fd868bd05c23cecde20a3d8cb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305caf59659c7ab5ab3059f3da0dfa2aa702ec4d366970e5bab905cca88142345667e26b190ccc364676ef9cd658fba71b023011cd19e7c2d9336db4b6005c2e2f66ee3a531ff63713e2cbd16a0d8e9f50450f3b6978b1b82c6e773c1066930e1027e10302047c435bb500683066023100f669a63f45fee1417a90eaa61e7002ac07ee7a2a94701650d2fad230ecb647c02478054d8bd30c8bed22bbd662128227023100d297b8921f230663addf3c57092fb5585fc6ee480d9c8dd9d554b3da4dace50e34a39094efa6f19f26d58c741d93bdad0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023054212eb13f554479be24eb24cf6aa86e63815f6da870a3c5795a19c920681c3d61d07042a3c05f8b56f7474b6169b40702305e9856293ee90a20d06cb6584499a4fc7dd58669b1e80a0e5188e0505e8cd3a1f18133aca106b610b38e9daec3fc5e110302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307ec27dc495258834226d88b65081605ca6e0c5d855697e26533e35e9e38600a3d82bfb7db17352447ac5a37a1a46f3250231009fed9b1f719eb91c84559fe402ad0207887a5601b0926debfe8445b9794e08b1965502f116aee9a6f5bb431365b32e420302047c435bb500673065023100d79ee5eec322325b771e6a67371309945f2a3d18840b33c8372a3f37d19cea64b782795725a8ab64a5f51bb776914c9702303b2397d8c20f58b3b99b30463bbc8c504be72fe16d0d5ca583f9cd7fed4e29de73bf4c640dbad947e54ed7d983fe61ba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b65f4d263d277f48ad0a0eb469fc12346b41be2b61ac4ac7bf181e39073ebda1a644989d8713b5510b39a719ed7a33da023052d93aee91b858ae00def6aa4dcce06a2826c3918e4193a383fd75db53111d6ae0e6774e2fc07cd389600b6acb3f29690302047c435bb50067306502300d8f89111d34a344631f1d14d0d3086792d69d16ff00f5940c522904cd5dffc8d2737514867702647417ec9e603ba93c0231009e0bfae2bc32deeac929409236f23b0ec333279a288c60f0bca48416befcfc245c32689223314ccf75b37525270558790302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306cd6d7225917bef33a297d6b8ce4f4c90ed45db8db107476e027c0c16051ca0ebdb8f4e0b00798e5e39f25ac8461258d0230242c24def7b176987cc07475a93c5e673ae4484ba2c10e84dc1f0d8fcc413d2f154b1e16881e31c888624c06b854c01e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ede80f781096b4edd174952df1cf88c74a9f8abc7d4906eff71d37ddd8d0e455d6bd4c5b8223f9fbf9dfa4bc471d0c5f02305bf4b12b9bbdd9b48c52d564e4ccfcd5733db3e6dbef9f7a66cd3479ff02b089f5a427bf301f19e8760260e3a84df9460302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aca9afec8c8262613a5d9535c04dcdaad1507df30c1f67195ff4aca2811f7e23f355c279997d6abd57206c82758fae3a02303d3724d9673920ed1548e2de9ab706c79d399a5547deca6af2ed703f8bb93f5207387af25ada909fe1ac01819522a8d30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307f7f27d711408e9f312b9813f122a4ad04aa797cae97eff2859303a2cef13dbdbc24b5b37ad7880c17c6e9df9167d6a90230430b7197ac2d839c096b5f390b5aa5520ef42fc617093600a4a436901a841b741be2161d8175533015dde43809c624450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100deff434017507bdd5d9253502e22292eb27a23a6c233ecf51c14740449eccf76be00dea17db6ac456256049647e2a550023100babf6cf37cdb1a5af95ee3def03768b2dc11dafa7480f5c8f7d87c3c351f587386b5eb42287715cf315905edfe56ef480302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e4a345c5d248665bdcf7503a44e776914b42e36204d5a29e0ff3fcdcd8e3085cf6f4726882800a4cb7dde015440ce52d023100e70557f47a5a2b760b1365cd37af2b7fd8cb90016646cb1c3948ef6ddfadbcc014e3bb4ae25ec562224021dd4a871d100302047c435bb50066306402307d3f729a41413e6171336272e348a032c4f629d3bcc8111355ac871aec23defb03c1c4c885bbcc8b43575966ddac3b2602303705a0b21a226d200b644e882266aedf104c77c403172fec00f84c15424257e21a219b71cea72a55aa09939fbd35832a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230382b9d8cd4c5d26acdf2378fbd4e4ddd24be0884f37d10780c5a834463d0a20491f7331971c8440c295bd46dd228b2ce023015b23fd11b40f8b819d9182ed345ed9093d903e215a8de5770dad10fec976a08235dd5fc4044f16a2b1a15084cf199270302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230332001c8cdda39ece416937c4419051dc0c71bc93595006a0543e46b70f30459259df8daa5695c3b6788ad383067961802303b8c80e44173b3b5c35ce170243b7dd059d5dd6b513994f524350b7c3bb2c2dff9d542aa393d0600b9f80a95dbaeb8040302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100de734bc20daf78c6c119ae86cf5d7989281b3f2d7f160fe1b56869c0aaf1a8c28db9c8322f9bddfc5d9346b564a9f676023100ec51574a7fce969327d119600150331fac8284d318617475c67d8434ef07020c27f65022a22ffe2669801e70cef72fd30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100da1f284714042a99922dfcecca0e9308a6d7e6f1717a959a627f017494ef149ca469cb41a23a4c11735ae346378ed72302306a56c9acc4143cafba4121bebc40afbd7cd6d984ea8b7bd049f3b746218c484fa73939053f6fccc4ddacbb7ebf22794a0302047c435bb5006830660231009b98889aea39f77d6aa616512fe80848428f0d79b1c42b8b1f624cd59fed92485e91bf724b5c855b069b5495cf8181300231009ea482be17c219c80600bd5ebef7c1d66ba5a79926395b9b826a9fe1da5a07c12f2a95efef569b46c02ee130eac086b00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305fa315310e50352d525abb6e9d005e018e82ffc44669176a1d458ca070d7c283e76cff994b0e608f80879e335c669bcf023100a7b0a09d8bb0fe297c2ea438f6e115ef0f86fd3a1565d86ffd7991ce493d05c2ab3cf9748cc39f269d97c7d2a86937640302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d33de1b5d3e36f16a746c9c6cbe123fdc0875da1655e7d168a65d08b1995e8d5a705c3e6cfe02a555a67d16153cdcac102306a82ea102e12e90251a163a3a1c70f346455556a9d992d016ca1b9fffb3d002976ec3c065e2fd3821bf3dc5a79c456ae0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008b090b993ce224ecd00f17a6df7d6f65909db8b43a558b997b406922f60ad75cadb64be9f8e6c553a3d2b05f76e76d8f02310091396d5725d8dadcc82cb12f75ec4542bf60842b632aeff31b9e3f2f3b6c6f5849f361d7a63a7d677ad868e1e0ed190e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c73e1a301c0dd1b7aacd0c49038b6b6c83e109bac4eb35393e92e03d645abe365b784d28d54b71985535ddaf5a535137023019acd1f2d0144d3313782dab4d717611d99628ef047727b9fcb1315de554bb796ca03aea483b3f267df8f7314ee6349a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303d9b6d1319ac37a799b1499d26952a984f47d698cf9fc15e37bf5b49742967b4dfb075c978a54c50f38393b620b0fb19023100faec2976852aefe56baccdf9a993053829b4e96a1aa97a6887482e651bc85ac93337044928fa05df769ed8d61efef9750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023001a5e871d8959ca78cb545a7b5123b52929d8f8fce2ad18510ed20721d4971ce3764d63cf94edaabfde47f84427b3eff0230080fabc76451d050dcd0118c78d7d5ab27ef7fe7a8f5dcc8ad3439cb9320c83e3691795a4cc6b60afe6ce944afd8709f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300c2f33127960321fc718d87b409d67d72e582808b33b4828957944df8d11f59dbf74a6bc54a2947bda2807844889418602300ad3941beb6b4248d6f23aa208270c481b34bc339c779f7452093cb3b6aa9520a531c05411c1ccfb29af1f3fab274d220302047c435bb50066306402306e543083297578cc09ae39c9ca2a8f08915d84bf1504fd2363946eb18dc0403ca43d9197561f7d8a5eeb7d7cb5bf0dd602306afc57709927d9e6c615983a6da0e73f97d7edef23204d1b576615117652399b40cb6e219800f208175368f8fc2c95ab0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300d943c98cbf00d394fe169246df746cc5fa582d67395914aeb6ef7523899eccc60da45299cae2ba3ba6cea9fc15146e702304d593092455d5b6afcdd4e5817e32ed8363a1d2b41518b8260417d925cf084645dbb27d1abb93ea53523c0d96717de670302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023056ca2cc955481b9f2c67c786e8603607d8fbc48e996cf0f2cfa2fd5b11c1a94027298f350975d777559e7a936fe7ea4d0230747316ccf3783f439e67073c8c373d2932f877745145a01ff3bd7b4260ce15cca5539ecb72144690d0d2b0b3f66884840302047c435bb50067306502302349ff722c3e5321d6f6ebd5f61cf1b7628ff1f4b2ab03d4ed9f9238e68045a8de570d011ed840599124acc650a5b825023100a47e51945c659d27d6311111817d31192b2666dde31ac92fd0455e2e19401b834bb463c39893752fe7594b62930952650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cda61046c1b51ce5a9637301ed23835b9ed92f78c96e39fdfb709636ed9d2a2bda553f94eca9be43f068d4df5aacfb9b023061f6ce71d8ca6b53040d14bbc1f253eeddd97e417218cb15b6a31453a4c976a3a69a9a47b0a7e0ff09f91ba3790a37b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100acd80255374959c6b3fdadff673c4d629c3e79fb5255c6656953920334d51404454c7b3eefbbb30bfec9173c51c68308023006b68e2478643121773956cd4c91a5dc8cc7904e6327abc6e2d117f2572e266b2f707127fb16eef3cbf7f72f27241e250302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304ff4599fe7e7cbaf1c4c3073bdad6207274f15ae56f785996c5b3b942d8a611e05d3f11a2688a427523ca9be2178701b02306a36864440d9d2c026d89a6899a56fa13e01b30e161d311d186bd420beeb605d5ca9567ba299d41ef2f07fd276fd61be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302bc36e3485a51b6bc3812f2333ad836b314420660023306e52ed8cc49cce59d8d0d6dd252f05e195fa14803c930bbe3202304061420680215094fe9d0b211dd1cc19e98bf477fa1350818ef9678713896ea8ea8f4ed96fee3373906b76092c24f2bd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a0a2e585d709814c4f338db90a14f12f1be0daeb9b4322539c886760277d8b8975c2e181448371b586092fab014913e3023100bb9805160c1c44f3b36b351c3d237dbcae6d5275c858f24f157e17c9a7f3809ed46267a9ac5f3a6bdec6ffbdcd8695780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e9bcb1b1ad10fa3be0ede90b4de1ad7f7e8367c7746ca0a5441c8988a959c6d24f14567af05bf5b276767cbe580c7f8a023100b659a691c78682830110d1fef96710b9b6cc3cac07f8a9035180f6ff0ad43f17778db028b2abccd89eec75d4c8cd02100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b2e3bd1abc3a47c10ea776cfee133f4ff1dd425bc1575d765f8d3aaace53863e23159c85b23b71558c723094c941a147023057d45002752164f14076725429d920a52a60c12a9b5a174ad70efced196245da5259388c5fb9f578f97238e109f86a730302047c435bb50066306402306e82e3dd3758ab5a3ee23a137fac2281ff30fbe3da14b33ae88d6c0c42158629390fbcd694641e4c738b83d5aff629e0023016a691b570e8e8c58f3cd3543786530d8578ae01d163f5d997e0b2107260e78dacb49c672d04a1ed716c01c57fee0d5a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e17389d9e6d32abe10ff1d87548223ba781161881cddbfadda34d0eaaecbb9fbc75b7f13c21d3c5a3a0e9c9fbd85f1480230574dc828c3b9dbe1b8e81b3e7afd4520acd1482c4f4c03974e19167e2d898f4eed04b5751cbd20f18229acac4e18f69f0302047c435bb500673065023062739dbafac97aa679be4a66a7c30a519164eadd91eae121305fa785761c1115cb7d8d2bcde4c52e4bd2b96345a716a60231008affef3adbd6bf39a75d6e35c4ea8f7800314a93aae97bd0f5e56eb159dd276fbb8952979cec69b76966711aed5c8dd00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023070ede8f5aee6f2e29c3f295f838dc453f3d78f5b5a9a584bedaa79ac27c8ccf9b918736772a6ec819fb1ec99d891e3af023100bc9a65dbbd8f854d18223037e52a7d337a4be14d77737ab45687aa730a3cc8ffdaf85e1c94939e9dafafb37c17d86f150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f7d593911dffe2b84cfd0afa3aadeaf6091c4fc200a7f16510c073509715a70002b76568009e768ac73203c92da81cfa023058caeeca16478692f0f635ea09e9c9fc9bd3061b0e15aec932a699fd4affb54c1fb526ddd53d0270de241dc5bb1092840302047c435bb500683066023100c5baeb7cbecadefdec889dcded34d0c32dca3ed9d29c40a287355320a06409238aa209ffa1df65225899c7604062e012023100e5d1b9fa888db79a3f053c611ee6455eef9f32bd59c15fa221f7556542401b75e43633f79251540abb71c0764baf9ea10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301c5a853dfd897cb61ecd2b0947f1a326adcbfb49f815c2d462ba5648dded055e7f36d16c9f52ba0c727cf40ff2129b4c023075d095a5d6c4ad64ab8346327eb7ee98e25d6dee17f1d79a61bcdb308985b9765d45948577236911fa734f987dafe1890302047c435bb500673065023100b578d7198864250dec4439f71dcb8584a192930f015836481b1d6455c228a188c9fdafd1fbf171568275ef4183c6190c0230431a6203a67ceff35d3aa4159419494aaae0d133bd3bdca6277d828829b8f95490f1b4f1f0fa20e27005641348f8d5220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a5ef8e5ebc4d6a3ca572f0da7d81646262db2e7fe474319c5f91fe95dbbe60f66040e1f04d599ba00c75eceafd758a88023100fc77be255069d1b1242a1e787785817fc2e969a9f1f6d9c7517988b104a8c06127d54f5fe48eac34a5c44d1fd6c9f97d0302047c435bb50066306402306061d0d157e2141f6543333567cf01d1a3f2756b270a63c8d71dd2a9e4d92adff88a55499a8bab370f83e6804841df3302304195b36a4ed90a328430027581b2584b85689282b5b51a5753d5fa862c7e991ba1b1967dc524313fc417d0d7638a6dd30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d5322c8a4aa1661ebbb6248ec5e5790996b1a1a54db904d7438c2fcb071c1b9c3183f86d34b65a4598ee3da4a23af923023100a8ee9ff72fcd6c4a6e4dff6f6c950e7cd0ac06e76e2102bf4b52f2ae87f5962e10a8a212291e90e389011accfaf503c90302047c435bb500673065023076fd382492e5b1bd1bbe6deaaa7e481fd8c224a27671f3135b98cfd794a9b60a49dbbb1b3a96e791cc9b4dc3de2f5f7b023100e358be7670de247ce54dcf1fc330d625f590429f12d54c1b7a6aefe42f7fec5688c9c893ea41f27e38d799fa78dc64080302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100847ac484d898b30a16d68d4b0bd94a7de6874539d28e6a595e856eec60e7856fa6d816ab57e4f92d000de8dfc3ebba1402301905ecb69918fcefe9d04aad4f2ca9306550a87224bc25490a5794335dda8a7b01b30801459caca602af2dec3a1f54ac0302047c435bb50067306502305a33d15e0138e9b0018620b7b9ac62b4dcb317d74f4da3e53c01937dbca1ba617fa620b6eb25d00d79db2fe5c9cd1e4e023100f91d36c8a26e7973f23d7b07b8fe20fc56cfc4d3cf08c2b67842c6f70a6b83c14e69006d9405c40c55f486f57c6f38ff0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b14419a41a49079bbe7ad0f61432c78775a873a111c9d6094232fd460594be899de447d159dd635688e7a688cf710e3d02303d63915960b5e97dd1b81e1f517e5acb17ee2759f399c2f51f08aa6990fba3fe7b1df2ba9878cf50f3e4b60e8e709b000302047c435bb50066306402302a46ece84fd3d10ae3b527753f066493e83fb207919d5d1604f9925de4806a713ab10b723ff9b115361b0e51d2bd800c0230097744954e70ee29f39e760eec89be31daa892c9f700105e78717c135c635b88caf7d3b845ae813c7ff507a7f69eeb790302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023029175eac476a578fba839eb782af1a686f85a099732ad2e0ced4286211d70eea26059ed59a3c2a705b67ff33ad2fe113023059256fccb5cce417e3633c35cfd066f2ad453963701e2caf12311ddee63ae5171f67387b0702586b40af1cc4eaf7b7260302047c435bb50066306402300fd97693e1134a55916e5f902f24ecd2f09c2aa5dba4608880dc05c778e26e06fc5f5a216542cdcf0a61819246547efd0230298e21b6e8484d55a0375a646bb6c6669d317b5cb6b94d31662c8fc342c13de0beeaff164c9c8822e38ae848c4c3b4f70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304b3f41fa286d096aaa95cb95fc25d7891dc5f41b0e56f8b566a87cdcb81497fe6bd85d6dcd0592f9ccc02b0c21eb6f5f0231008393f3ebe1238a7767c83fd6686f64c960e4f36889356b989a93d67568fe62276d62f8a4da44f2d377831f1338bb467a0302047c435bb5006730650230475b9126ed0397a85427e890910fd9dad7651e2dc55ca151a4ce2b31305c4ab3f131ffb0957b2bc49cb35541b06040f8023100dd36612da93d6f5dcefce9e91846e74251db4aaf5a75a77969d8f150e18311dcdd3e2d538a76edd54baa8e5f808369020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230318064b263f4e69ebe362e12ab820450fe4e7978af0b8414801c36a3810b0b8e9919a2ad45bb40fd4f14b60bd9ea37910230488a82c27ce7894761cb7ec5ea78266fcc366704958447fe719316178ced256436064d137f09a26feab29fb879d40cb50302047c435bb500673065023017c831f592bb03a5e96d41dc680f12202ee953e0c38f73b57934b2b17d17fc07ef3611e1db1fa6b4ba54a12b1522305f023100ca3d8dce9dcc73cad2396e835e735119bbee8f7df73e86f92bfe5258a32ea7281872a1acb23a89760b8dd32ad3ea62d90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b3ed2703c41bd8ebac34433f35648d51d22e9fd8ab1754d358b90597816b17a2fbdd13d92c4e81dae8992028802524040230730aec70b7c18dd0e615aeff891d9e725df26d0052f8869a337c58c89d4f397894dbb72a51850039ce646b9fea34c63f0302047c435bb50066306402307cb5bad7af43f1a51efb0d920aaa2f353981643c1ebac6a941d0c4b2b2a4b14fbb00ed4a05a801849cb4f903cdf1e6900230323a7e407524be3c57c4771a50e4244476dedd8f53dfb8ebe3093afbc21b19e785abde39689eb4aaac8fe9bde57c2f580302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300f18309645a70f9ea86ae0678df2bb50eea64cb966e71a5fd3a706761593fbd91651a67a7764167e044a82de8ea4a2ad023100ef18a1066a7663b7e43912d3058d80e516663368b3c9f87e58306b00f63f6ad686744cfb61ca6e1833379f4f6aac4c5c0302047c435bb5006630640230464de27a98b1108fd0b0c3143d4aef4b10fbb4b0bb63f7b8cdfc4c0d750aaf55ae306a1662afc6f2bca2ba820d437a5b0230383b68357bc0eaa8b13f3551526a7c0ac72b6441788b3f7f16a48595a8c1e983d024171be9d94cf17fd7e0af99cfc4920302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e013dae74e5482a25949e3e03b3e67c41c466acff557d9ad514128440128ce23ebda71af2fd930b6501bacdbf6173bcc0230738610c9a3ca0a097df610c2689e550068f04ed9949044b8406da447c1228ed2427ce05cbb692d72ff2bb08a1ba77de90302047c435bb5006730650230205b7648e058b5aa0672ccab50e660b0c11ab3dfa704435624e183ea6e053cd6058e5b822e615bac3a2bf0ed5c2fbd89023100b21897efa4b5f5c4be5e3ae6691868860583cf675da27ceed23e739efc0cd2ee07f8164c52e9e4c0cc4659c0c8b54dc70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310096332930161e81d53de5942a4ce6be8f1f0d1c2cbaa76e4caae8e4781d2a549c7a6a68cbd9d8fc1ef42ef8dcbbf06d0202304cf4e90c55ea8d2a02ea49d1de9af06d4e4baa9ca4103cb18708a564ff4838f131c309eb687dffb1697c416663aee68f0302047c435bb5006830660231008b83ee570236e28bb7b586e885a754669a70d3454a34c4563f09cf0a3e1da660b1137ad9c653c9735e08e050e8232af2023100d1a3ee6fbb17e255466678cfd6966495903293f2fecbd41288177c6dde563c8d8c0588dffabd9df37b438ceb332eed3d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023076b3e48bdbf9c6deaa51201a2838b945320cc345e80c549ba1213e447e06094066998e776c800d36d517d857d48fc385023100d1f8a85cc6320847f2c486bfae818245e9f6b92184db5a8642dd4b6c1d7feb0e2da41198a12ea7c5f3deceab839400a30302047c435bb500673065023100ef8d3d8564a795bc6d7a5ba1bac0de5fb76bdf9d62f9e9679e09b82c56e174676ed9ea836eae8a197c65d8cf221947260230520162c1b1d633dc15a942567e852b929dd5e0205fab27f91202957cff964e8b3d9de65d5566a61abc9ab8f93ed8c4340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302b53ddd4c1e773cb96f928ac30e22ebc895a094ec04414cfabfa7ba53052afc1ec095743a605ff66c02da720c0214f74023100b0d993ae80c78a2817884c7812d0dd503cc94ec95eb3b60f79fc83169fa58582028eab32045a25fa58f9bee1b7e2d47c0302047c435bb5006630640230102773e9493ffb75fe898317806f924bc65d8bd27563712d3fcbbe03036c82fd60cc8187651b74b185e0963d99c37fc902307e0560dedd3e4e75bf61ba11b517a7c239dff6eea6dad9b6b38b49ef93cdadfb9b6fe1fc19f51dd36b59c90e027ebaed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008a1aa1008828b48e42493d1279d286582bf5ed6a01e435ad45ab2c9f15562e8c1c813d7f0e693b9cb02a2bbd2d27022602306ab18ca12d6b849a5c124583c1a9e45d7e61579359ba73f006b4810c4e33bb98dc4182cd118325bfc38bb154d44d4f330302047c435bb50066306402307a7b5b1383ef0872d593747e43d34613dba909c8953fd7d32c5128048d5bb9f54610e4e2c242580b5baed729894a46cb023068a05db60359079b5836fd992f3d410dbaa226227d61a37f146681ed41820a0b385cc0bd0937adbf3101735209ad47aa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cb424aca78f73753683fef2016ba82faeffc6c62d72f3ba14cbfa09b63f3e9676257fcd5679ab85de513c2d2dc0f5921023100ddffc979102eba20ffaa4217e1c192348549aaafc58834d03bcfffc45cdd941149c31d8d223b2a1cc03fff8aa9175bfe0302047c435bb500673065023100c653a7416a98ccbd4448714d02ae330b02bd0fba2938948f6fd5562e08bd39a4c62fd665729d8ef2d4d68f55413e84d60230679ac8afd3ce14488fc78c767293022e2cb391b2cc0e5ac5e44a1a5f59d6d8ff987e0ab4a493425760ceef3cd58943170302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100939ef1366e066c8d3d1bab521add678144152830972144c35077df63263e9de8a26c63b50e21462cb1d62338678aea91023008fc7bae2278a16914c229ea81482e9bb49a330c634d5fa4cb6836757e720a1ca67b79d9c9bef292f6903888db012de60302047c435bb5006730650231009b24bee95d219171a5f46efd09618d3d8d8c0b0ceaf408c468df957f84bceb066d9e49f84c44a5fe9a760497278e23730230120a6b2ce09cc6213aec1f2d916e51680366dce36f76858d6baa9ba4135e7fd132b478da1cfc42c1fe0727b088df91960302047c435bb50066306402300e9aab2208cf0ad2ec9b026e219e3eb02302573e081a54b48125a1f6ff95e44144c400fdeadaaaa2a4b7126862b428c102305a1e3cfc8602cdc9cf78261b2e3cc17c262c0cc5e2535a065ff5ad288ab09fcc1b4dd7b4d717b58a9a763283fdd99abe0302047c435bb500673065023100963a24b2426b495f97d61c5886a8a6daad61449584dcc612251e0981e30236eeed0940c590d667331d69eb499738bedd023007944ae95b630b8f276e88b372852afb1330e16e0d399f027d5a0a689d5ef145b1505bdf6579b1fc9e2200415140a8300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303e1a421b9dda27d4066780c70b6275c90c84c76d924cc33c7d79637ea3f55447cbd92b42121d01d0dc0be8c09a9dfc87023100cf87db513dce27dba327c9a7154f76724e5b2138d065f25e29992ce310a248310bdc7e456ea50a3649b2b77e34b7ccc60302047c435bb500673065023100970adec41a6e5640393a8c8681c5e0a8df840ea49b6486f1ac2842d8d235f69ff51f30f628300c0f2d731493383bf87a023038b2d907e9677e41b5191b658419a8ed536588984d8eef956ed032a11ac828334bbaca94b2af6a8d2500f3eb0b914e5d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a0bb5ce2982622156e5eeedc1080d6bc693c05879cc1d557d29df789869ea3f207184db096aa1a25453aed0f8ab2daa5023071a40bcb98d8fcaae66e4170c46d076109e396fe08066a31abf570fd50c841d2ce6173a57147efa26dc03bcd63ee0a3d0302047c435bb500673065023021cc8c67a3e929e9627eb14ada61e1183de079f4fd88fb9034f667bc11cd37d8795795d9430d74d09b967fc91c3f6425023100b780f1e40e0a3e107c54378320825386cd3649d2b104c90960b1537db7b137cd0f86f49df7fba05cb62ec26014f79f240302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dbfc0f8e21336090f8ba0658ab6a1c6428ff6e06dc028475134ec96987331f662e1e471197c94f126ef87ab1fc029361023100d5bb5d0df4b8cd03878d43170831555fb37eda335691d4d3c1a192faa11df3fcce468061e15f58ea74c6a3f7fa70c21b0302047c435bb50067306502306750da48083f63b89d8f1066a9524ecfce58d7c93c3f118d54624837bed06d6aab9a570dd6bf93786e3a0d12af5b7f94023100a67b9f4120a8f2099fce4bc995bcda21bef474759d6ac4ae7ae2383c9e8e7e27ae915ebb34da6666502f7d3d2f7d9d950302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300d54c87511ce2d8b3e97f122207362aa8d43957d0602226fa555b93d983f4eaadacbc2ec72cb5141da1eb7ece4fc62d402301c3a29c76f9588bb022657f1adcc5420b5273374c849d1d68ab7a140218b8230148dfb84d887eeb24861a532b849f3780302047c435bb5006630640230042515a6f936d8da74178fb0971898d5f554203b72d35313ce10a556221d21da1e751632e9df2ff1f305ce1e643dd5cf023011083fd4e9094ada6a6fc97d806cf6b5fd8aeaa5fabe1b7b93ae216772263224cf1ce70e662f9d3c42149de08785ef4d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307be7ac6dbf3f7b8c02b2c049131d3e8c01b40d95de8020afaf8a4234bdbf9e70759bdd45e2f298c4cb1d35f286a508ef0230417298ce718cd3bc99988df5d73ed6acaffd58d372b9b23cbfa6e168b3dd016d259dc4d9a7ac00d8035f96f4f6ab13fc0302047c435bb500673065023001449dea7ed823971f64254b3a305d8d8d44ae497b7f93dc1954849a9c14b5a2c76afb2a36e1c07c44a10aab735cf462023100f9654a5bd61f45353cdf32e55cc5a75a04fd7583ed0cb0fcfc4b010be09d99b3accad6431df78ab972741694f3735a220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307742d41798d870db99f6d71297b431f9909f17c95de74fe4e80302b88d73ad6e4745827dac53b08ae9f0f768fe32b642023100ca33b55a1a89dfd4009b1637e99fe03ab4a2b7f3de24d17618c2af05ec3263500be39c60d69b281a163e119617fe8f400302047c435bb50066306402305bbd1e3804314960e12dfe30c78853989f7a10e177886d99ee05c85be2401d71fa44bd5b1200cf08e376d1b1041ff6e302306843fc9d49c8b6a458f6ee70f1237d9bdbcaa6ccc26c6b7477bae134703f5cad91d53cdd42bb4b8573a788d369b3b3fc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bd4c939c1743c1d51acefd3189abc389c2867d3ca65a3758c8cf3940794e9f6cca8fe75fdf8577c646fc32f08483e282023100b21f99b30db5bc92492b605ec4c5b50d1721d7900d6ae3fde841c6060455dc797d20bfbd0055d22e0f56bfb762755e530302047c435bb50067306502310081bd6dc47eb7e6edbbfe247f9a506c8a2a8d9f4f27380da377699e45fd1ec306037c3a57f8bd81c08b7e24ca6bc13cb70230666fc2505ef5733f0cb015dd408a82b1a0735a19c9541b0a95056b34460a7568e9bf95f9503ea889fd6afff64ad6d2e60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c35405ee7db9ab7051e6a5ee0c04f051368a252da0e0d9aa169f674067b8381af7cbd2fb487d2c5b317c2a0c9f29d60c0230562c45768f2d629bde449c9203266f4489401edf1b5cfe8bccdce0bae656379048a00a782eb43e2c5c96c0aa0872a6840302047c435bb5006830660231008e54bd54101cc615a85a805f257b6138dc77c06d54f0d622fa77e1f1aae229c39b064bd5b2602a747a2ae7e8bc2eca27023100808e0c2374dfc4f2121ec2e12d3fa10189ada572572f5bdb5f24605e4cff5ea5b696c471b842a729626310d73194e4d20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bc51e272781fe061e30828e459c61e495c70425f943df3019e2a5ec589053c28900b50e86f1cf6091d239d54fbf53d2a02301ba21853febe9d0b1d1de47d8dcf07b4592935a924e31ded7ca6fe7949263ce43ba997e68b5c1abbd82e8c1ac0f7d2af0302047c435bb50066306402300dff38239e4027f79b142e6d46f0bed6f4a1eda7ff852d848fe97a7a887a82fdd00bc96bf066720cdd773edb3997417e02307c65c0b38bc9fd9ed10a02907d7e2f08f053a5fbf12b7ba271520c968f75cb24b400c39e66e292826c757fe4847f332e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310091d72b5183942047ad9f6518d6884a52f8004a183801dbb49a6d8eadb571a2124c47e8bfab0722443154b904c745bb4702303322b84b80ddb8314d8bed35d07d0df213c80a27fcb07311a6f49e56e3ed214fe68c06c8696886ef438e88922ffd48700302047c435bb500673065023100b973d60eca4d913cefefbb63a0f7c610a98d167f2a00cfe760895bca2f7e85fefada22c1fc7f473bf51129dd4522137d023063db3c2d3858a18dff6a5b5e1b259cc1aeab6e118beb3b1e13def7a18d2638d33e5693aeafdd0ae9787f1e22fc5954b20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023067ea689725b4de92b087f5d69d25220ae0f64a29a9c84bf8ada2f26fb0e54e5484347d37b1a09c41d7eea9b7c6c8c02f02302e542dfa4978edb4a492c2a67fe0cf61bbb76ef6cf23035828f192299da9898684c7869b3c3560c5057c12bec464a2d70302047c435bb50066306402303b26a1c757fc8ef151a85ff0b09e067f5ef78462e39c2e10d88811c95478b2e37e4818ba2f8479b29c97a2d814a1f831023029ae3b3e51cdc89e7641c91aa99dbe6da274722bd25de27f13d7d76e97b1981dbdf809348c9fe7c46b2928cc50681ba10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023058f1eb90aea377739d3cf76949b934c1b98a75f43e19839714eeacd640c94d2185c9a34615f7c77cb7dc7e6c1699dba4023100eb654345f7ba419ba03fb8cef435d5b7d965e0cac1ae0db0104841791a893057ab37a9e077d81351e75cf37fd0bae7fd0302047c435bb50067306502301896a8892abbb6cd68aad1ae4cd1a3eafd033e00533bb156e0ac86ad02e0d4131487da695d077d6d647d4e1b42dba2a4023100de9e7fb2c12ea644132e42eafd5efe02ef4e6ec60fbbd192bfd384fb61e8c0e0b1b7da4ede93ceda854bdf858320944e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023022b0a578e53a9dd527dc98cc43a6dfd528b8f24bdbf48e09b278ea54b6d56b0e6c17e9c04c61c6cd72ee50ab128032d702302e3944a91af7f23a047a0b6b8803de5a76798d5c7bc01ef02b9a47bb5dded30f5fbe91e54752a745ec8e86ac0beef2570302047c435bb50067306502305c62eccd4eb1337bc371a8ae3b34ca7467761196c21a60824cfbe61679b346793005f84dc8de3f22680bd9392d05b3b8023100a959cde69dc1fdc6ff405c2f3dff182eff3e891dd08b56b65c54000de4327c9d571f21c6147ac293acb7906c784234b40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023058484e346217bcd4459ab068fa72cc2760a4101d52926e548909a74c6c94c09970ba28bbf7be46c84cff7e3bcc9cd922023100adb52779c3a6427f4aaad5493a28f04265a1a7914161212fda4e74012d5f8f34eaa521b35f1fd77e7564e7d9df3fbb560302047c435bb5006730650230287b89ee1159ae2ff188f904e4dd7e0ecf3c1415fd52287657405fd4514c62862895110affe2304f16047331dc29c325023100ff6058c8a6bab18dde39cff25180f5ea393f3d75d600bbab9c62277050c1d17b26cbe9fdac4192ed554b2b17abe2b4bb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ef4d09d86715fbb91ca45150ca9974fffda5ac4930e02b1de4a4177d0647591cb192de193139f20decca26289cf7b4f7023100a1d7b2b953d3de0f118bda052090c6398e723b7067fafdd5e62cbe10b9cb2b0bd2f0508e637dbb1fa8048420bdc8a68f0302047c435bb50067306502307f2757fc3f9acabee985564ac65919025c521e2dcfb12954e8f3c41d3550bdc39eb281f64c47574cb979f3483ff04eb7023100b976b29c1e266979480133c260c24ec87f11d6f2f52a4d174853ca2488aff51f6bc9fe56da999e8373412118654eff620302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023041eff403ef5acf44c753382ff34561e60564697137db8418d6e9e1474f795ab4d429447a33d4486907c741c61d4b49d7023100ce0f4d440f36f8d1a3f1061504b6c7272b14bff1be02cab56d2d64697f883c3dbbc98ddffc0abed366eadeab799dd75b0302047c435bb500673065023100888e12b7cbb19e3ffffc6b6f73b867b559c816b6d12de77cf4fc1dbd34151b5186feca24cbcb6e6d47918bcac93abace02300745a8df5f450aaf4b25a5c64b9ffea0885434ebd13b51708d1926ca4dbffdf746938f7d278a562326b60a3ea9e06fde0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310086bb10e38f09bcc4062a99578415a5f8e0cbccc537e7be4a9653b6fa9348bd8642ce2ffabd97a24e833679e643827737023100af83a99148e829484eb1a76573f08cc229d8d7cf023a47422cb4a37f453432dfb24cb404724328a6ac9c65ddcd20881c0302047c435bb5006630640230471b6350a327bc8c0c3251ccc4bbb16c809764288c9f92a20454716eabc1831b8cc23e34e704ddf2e10212ce52a63e0a0230187b1bbc2fa2e055e657157021227a2d8422e4ea89ad04e0969fd708b5fc4e1adcb01b09c6f2406e452ef63c7803ca220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023004527bdd55fc89d262d9a005ee65cd09caa1463d28ded42bb5b2041ef4aa6b26e912f8a7d9153a03f71d631278dccc5c023079696ef656d9ca4b1f91b5a9b26d6d797b278807295d09032f47b03bdbc405a17800f8ed7f8dfb7eee5b4c18c4dc24750302047c435bb500673065023100b690147875810bd64d439bd006d84a38bba74c4b916971717810b13f7d77b07cb46c3cc93120f9a440631bfed70af7c102304d41e1f5b689de61baeea57385ae8616b26a8de3c49444c55a1b3b4dac62cd8a778318dcb08006f9eae8071553cafac90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b11dbdbc5d1fa4505c376d137d65cdc19122600ce44e205ac09014a1640e483184a45654cc42f9ec30ade711829434b8023100957592909c5628ec62222e508a71024161325d9704d9a58b4bb4eb6cdb4ebfb38203e9203e400f98a5abfe8fbddad5360302047c435bb500663064023053ef8bdcbccd21421d569159b063df55c36ca89073cb144453adae20528859ceaf343332523f8071de3b87ba7dba45c0023052c6c7b196f7d1879badc839d447f1767141f917c2cc043098d5e17c492fed8b08fb87ec79d88e19c2ecb0a941a894dc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023058c671865c078f4324135878467d7fcbf613eb5909ffd51f9d7509017e0e1af002327ef9a1daeaee25003ac997eaf5510230304bdf35d1472b6aa8c6f154a034241f2548516643f2432702aea5ad64ffb35da6dc65eb4d2ef59a0eae4a5649999ef50302047c435bb500683066023100e2ea8d7af887505c699f5ea7d68d6b5c845c80770b46e8b499b7c414dd0348b3c858cff5649937995191a72ef6c1f024023100990f71eba85185657a0a61e6b9ec847327ebf7b82d862b523a1072dbd39683b86692b0434e660021be99f2849ec58d280302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307869a8060eb744ba667225ac425da43f69ae83a50b89bce2844c7cbaa9f31e282edd29f26770644a6064ae35c0c4295e02305da4bfc906b0b4dad1904c055157e5cffa4c0f97bc4456c8438cce32468e5991b73d3e6357575b4c85eeb56a329711830302047c435bb500673065023100fae947a412d13b488b4f178a078316240d23afbd137a9973106736c63c02dab38034e813dd343624b637dca69145b2f4023053acc5efafbd5bc5876fbf5813883dd6ce54ceec6b19edabb086b73c959f3720497e9ff11af18826e0d5607b980be0df0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009f535b267aa54df73b32c937b8f910a6a0dd524650bdd52c461c92776666a4a4964c4ac388ed87b3293b931206af5c4b02305cc400c885e124569e24490a9b8ca7f738261840728750481c7f502e67af3d017bd4d82558d26e45779d1e8afea52ae50302047c435bb500673065023100f3917ccdba59781a965d9ced08a178b966be4441a53238f00db42f1fc2f25f7213706e83253ac2716ac54b57a878e8ec0230249f5b368f1045d3eae5799be4da06b3859f4922e589c40920ef99ec0d2467c543e232e4b7224f28f9c51c4ad1a178490302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cb51b7f87e7381978fd1a3f734dfbed47814c789d5bb3f51a192020cbec910c7467f14a7ec76ff4b8be1028b9c1e679902310083eb25606b5207ea5aeb62231bcd65ce8b1c942c7aa728c0b27bdd0cb01b635d1a4d03ba7f868d3f5b33275544b83f860302047c435bb500663064023032a68e284a47d03452cf30ea560eac69b00160861d1b13ab051a6cb6cd6457f1fdac9baf9eeefe3c6caec76972d67e8e0230041715915aad4847796dd50cb98196b41145945c0fc33b7ae3e60bce6296fad241c8e827df5d4445c344e21153777c850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100eff7fe2648a844a40231aaf9ef4ab619acd7e59b0d6750e5a664983db7252a5aba2967644af86d0731d8a35d5590429c023100e42b2f6bb1e8c9c9eafcc23edb592cac6f055ff8289b7541e484d9a5d233ef739f1a963c5a0b03f09dc7a61cc41ae1230302047c435bb500683066023100a48adf4d51f85fc4c8da5e93cf095971c91d176832e30ef361032697d1975e55411fa7fb95bd9dab0e4faa71e7b2255802310091f6f0dcbf1cc941434fe43ce748e468bb5159bfe1dc1602d3629a98042eca4fdfbb2f8f6ff803e8b300c6469da2320a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300753bb0488b1031d1434ac049fd02ce74860a6520d2cee02212196745b720059c62ab56b692bad3c073b28bd9d58044502307b0fc81a1c4b403e2d334ef181dbf4bfd0e86da843ed605ed7268f3150b8746675dd11ef3f4681747f6a2831e152a3100302047c435bb50067306502300807ece9e808c9f5c3bfb90719bba9ab22be695ee92dd3d59ce0cace3ed85e7a70e1a31e55c400e4f7532029320f09af0231008e3484acc5a3e91bfb52dee4d4a7e702324eab527b0394798b7925ea1b2c9e5d9c185a4053d76e60be94f79c4b34ec530302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303a080297ec6bd164700307e40aba7c6c427f8b5d2a193990043d148d7f5163044a9b212155b393034a7dd2aceda593c4023100ae2af1afed505d64f9f0e5aa5e0b84208e7307d5c6d1b32eb67df3c2edb26941ec93590b2a1cdc042cc63030cc0151d30302047c435bb500683066023100b3355db976c652c41ed166c8f2d0c4cfdef5851e6b7aaf24d6cf15f5bc8e3d3c757c8055ebe1ead2886cf373935733c10231009cec324ac2e26c240090e14f6c2a4f541fd815d662f59ec2982cadb34d93d3b211c8eed3756a1ece3a03d98915c5c8850302047c435bb50066306402304b87eda2788232b89b3966febf7add203b73c7c01843329000aa890e54cea63d65d22a0fddf818e014b83c939f4cfd8c02306f8db29a2b7539772c1f7449e0164127c924a6481248ccac6ba700d393a77fc219b1653fe13d2b8c88c6e83c078a479e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230443512dd0fae1a87479cc4e699e35b6a6b3c948d20b42ad5c162471e2b09c66502f2e1673b419bb0c6802b31779a1aeb02301609e11ce252640764f7a32054c3ec5c3fca76e3135e211e98639fe4cae0e456a5299ef3cf3be7bce5c2c542007445c50302047c435bb50067306502310087793c06f5e1a7e02cbb493267b9bd5408ab403126cba9b84018fb8dcceb5066354d46daa2d88c838c3f0297b38fe7a702302350876bb652bcda69cd27fe56177987a43ba25fad9198bffe7985c24188ade3472d77701424eee96c886f519364bf4d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c501d1710b969319b5a17d09a8fa676e0782bd5a13cba2f8a66b74badc5c83a90d1beb4037ce1757ca07a5d89bcc717d023100b64cf63885e4315aa1a2f72172ffc9fa1315bdbe71623e4416fedb2e9ab762727da033b4a7939f75f3387d1a104dcd0c0302047c435bb500673065023001b6fbcba03376a61e35d4d5de6755e425bcaca16741dfd5f348e5786f128a84b4b73245ed3cf564a7ea9ee85f4fc67e023100ee24715c486e724de52ab3fa5afbef9367eb9f5d4b0cffbb2914c99b9047d1f1aa748077f816d8409026d03c826b156a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023069e4ddaf91a73e2ed71041e2cedfd7a18eb296ebb2c72d2642d42ff580412f5734e4a991145f9c2b4ec2d1d596867a8402304f04c78d542d2f45d79a0e1b4dd88f8d12c7d789f2a7d808aa9e438d72774f168389fbf8e3e3c69bc18660a1585b7edb0302047c435bb500673065023100eb28a4820190c80cdabfdb88b17259a826810f53b97592f561dd6195b619f8187012559fa8d1155dee8ea80d2f6ba21202303a3fd93f85d7d13cc178b91e207e2017a75e0e6b75cbb60d45b454bfe7fd3dbf830ee936176169ab0374ac2ecc7d25e40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023047d3d01f9e3936a24e8d97b1f5245e58527db86e159765e93ed9f01d67960c150536f2c3e04448ab8bcc7d903ebbd132023100f21754c1735e03b4a7d1d834f838e37f562690e94ea26fe4e74e07c6a48243108598a6ed1221a4323d213282d15735c10302047c435bb5006630640230357b320859b6c04fd33bd988be09708b485341233872b76af6a109d3dc754cb081eb20ecdf61dcb0a04ac99efe21f152023072ed55651532e4d9ac3aa249f8995253347ae9d64d2d09b0cab25c24837fec31ba3c2d2f96763ebf700c24475d6ec3c30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bec4a941a9012821c151defbae70bdbceda745e467ff18852fdd29dfcc0717f8d35c8ee70a76246992e33c1b250b936c023100eb5889e13c36285a9a637208b8da03edff73194cadfc49a8e1437e305c7fb2fb593d3c52acce6709556879f4ffa626c90302047c435bb500673065023100b375ae146bb5622880d88eb81fca898ee0b14a92da42d060061ea53c34253b11f737305ca640aacf1c146fcc1b60089b0230506ed8c9dc6d8e7f826c61aaad1a5c95967f797a53b933279be407d559d4cb704be9686d1bce33c6c5b0aa797416c5a30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009da873724e91365a7d397bc51a4ddc810b3f6233daa1430bfab2bff3692e27ea21c1ca4dea934251445ad24fc68da43a023100f4c90e61b3214c10d2afd0e83b71bb16abebd19bfa44ea56d3651c234ca9d67e1c09584fd3034472c75d0d926afc63a10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100955c750c72a35493ec51ead59ac294fd22ed13b209678bf822d0f245ea2431fbc71924d7faf29dee5e940ba00f73871802300a2d3bb0f69fd6592ef0886a45f0fea01992c84e86d1140ebae2957d209294a388b20666862a7cae8cd31582dc8d3e920302047c435bb50066306402301d3fc4c7a8dceab648a8ba33b6fef41d63ef8ec3074b72af8f07d33d07030cfe011457b436dca2e0e32c5406c2ad8e2a023070f9d60b1b775e842e67593ec6974793be20225da4fbc31fa090498eda3bf945ef1bbe902dcf33e72a00be913f74d9140302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c4b873d945a5841d389fc0a9c5c6e16cfb1b558c1a3af8f9b2c3854401c38a69702c59bcccdc418617dca3efca0cfa1e0230495a4e4fcf314bf6902a4fc63da83a18f440190d693131dfc7c23510e7d054b08252f485a104a2ac94a008e63da39b1e0302047c435bb50067306502306007e015539ca23b7884df7c0f8dbae503aef4baf2a4e651cb9f1274f5c02c47f2abcb7f8b1094bb45f968150ab577dd023100ac2f5152a782dbee88b3fc948b3ce9cc0d9160b49ee3e86720afb780599e83b2247967af1f4a5f8930358da5cac92cd20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301df7fde1523d52d1c00c19c22111a3e2d3a282e6f6a6e9e008f14977eec9b475d2034125cd18e0e96d9bb4916a5f4d2602310090f47bcede48dfcb3cbc0622ec50804435227d4e163a4758765020f7966e9e76b114de014c9c12a39b9909a23da3f0890302047c435bb500683066023100ec66c9df8271162eee808677b62a9b60c1cc5b53362b1923bc4d3bd956e1960d334d45cd61e3ca184a8b51dd5b0764d3023100c42551f12f79ddd85840d29705d290463a68b0a08da118cca41d92b5d36b79e8967a8f4d3c8b550fdd26dc680f4893d20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304da8e160b2409db213c6704d53def8c6b19492c73c4dde167659d7cfa73672200f72007011d40b384685a456878bfbf00231008dd44870e9a047998793b7019f62674c6f993e6a6050f2bd1127687ee2e373e8d9af2a07f526246c2c37529e7506002a0302047c435bb500673065023008e8eceeafee6b72c57d0bcc6230a1778846744ed2e114563a2a23541c8a3e1fab15dde2fdcb6a52767eda212d6ec0f6023100ea95d56a00c6735cba7be83226c8e81981f1d8ec86853b201d96343bdb1d7076c9f4f8c432098c63a64b14a60a4a55430302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d988069ffecf1f40e65f074ac9250ab3d071d254025702b4a7f44714204405c60c77172195b65ed21df0bd61b29fe63e023076808ed001a1758b746a8ab6420b51d7ed10b95a47e2824c8a6f07eee3bd489aa1b1036c27e708cada18b24da3ce27c50302047c435bb500663064023023dae84dab665c0816d90bd4e45f8a7b3248789c280e2101431445026ea41bfb113c43d212c7e7f4ce7d402e6cb66e8d0230427465fdd8f022ad763a96907a971bfe7a6eaeb8c532db9ec8b36a70146ecf0cf69885830a7db6b509af2fcb594a06a90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303e3c3df9f0063bd8cfe8b195d898a5266434ac50875a4ea779747a7c77f69785cfe79058875c17a711a31b11cb5308d90231009aa0a8b83daf22b58b7148507df493b22cee34c018eae973231b3d1b766ad6acac0b14d09e20735561f04a8c166dab640302047c435bb500683066023100ccf93912b2652bac6c662ce1e7cafbd6a9cafce84cfc53294d0b3631532a50ce31af5cf807aa14fc2f7c726f36d3b8fd023100dbd2b6d1cba4ea564f19b74cd60411ad7006468a7d3228be7d0561ce512665eaac82e14dc85d0687e82d2cda5ebbd1bf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b865dd26afe0bb943cd4790c9b580ede8b5e6f2618b4794ddcc8adafd5d4033538e629830dc24349187959d69fd88630023100996100b136094cad5f42c5be06ec6217a8bd2332f48b2388a86a06d17e014ef5e49e30d297eb160a869573f6096f65470302047c435bb500673065023057cae944e80a1a18f28047c11da76c2b83967b0fabf0091b17b54f669f0d021b9c81f294ebf3de1347b10d6cfe4eae62023100e3bab4c5f3c4088c8e69dbd21e46069a65e46c690168d7c3f30c4b45224cd8874daa25ae2c6c4cd7174a46cd84924af30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304accbb560b0e0275fd9abafd37b96001a51dd3c071ac35eacafefbc207653598f16d6b8b10be42c05f892d7d87a479a4023100cbd1408d90ac9c88986fb641049e3bba872fb2505cfc471b1928a797db1deb136fe770e33be42ce93966f24d62ca87d40302047c435bb50067306502304c6f4538b8ed8555c46f01d10645750e37ed07d52db88a5085d34d94355d12fa46d9d87ed42ac079c21ff002dbfa7c9a023100eee99fefee3a0a6eea842779919d0341501decaa278e158a3cf0b54f8cbb4a3b1a8fc7455a11fd501951fe9eb397c2bb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ab256107270bd5e60f1f1705b00cd0cfa80883c5c2664cd14a08d90276df7d14c8abd7c931a8e7420e9ea7094f17767d023100b8c42e3fa8f466bbdbc83008e55444cac290108c77251e3a1e36e14d5082af0d82abb978926f9e606f1e5b4b564a35c50302047c435bb50067306502307f0fe11c1f6cd3a948438e9a8d3cb6052158b712d235ca5414a82136c0193b9bbca44026f308483ad04c438cb45737a80231008a6eb54f2f4e405c1583fcc5919a20cac0deacd5715b69912854cfbf9ec35ce6381c02484df4f4aba9faf48f2581ac700302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230153b9522190f05c9d07f112e58928e3a32e8a9350be55f1440c2e58684acb84aea684af03ea91dbdb8603be1db8d5ac2023100f5d16e919d8ecf2553b5a06fb816350d1dacd6378aab7aba25f2cbf4cf0a6c2dad63229e1000d0a88dd2d0ec2fa5cce00302047c435bb500673065023100883b430dfe5ba198a049229ccf4f9c9ac3487797b486ab72de20cf35710e2eb330a30b16f303c9359e5fae4241c29522023035200792e2598775b98159fcb36c88d32a24da26aac55246859f3e318100caa7630e421499c3e3c3bd6e41323a8c54040302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300aa108a451c710ac590041a502dfe07a0b3aa3f583d585d7836fd3de5b9d49f69e4b7866d9e8dc8522883e55b9eb1e1e023100a0ad62c0728aed46f30881395b43d6707958ef977289e7b64deae9e604f8c261f7470b05bd04fa75c17f66a5fdd73da50302047c435bb500683066023100decad9bcd00665471164b96552e4334a75e965480585299e83a67731720e9a7997e5a53a91e5025aa5a1e4bbb3211236023100e16cf5216fc25a4bc645dd630972e1118167aad01aea708d92d6b1e94d15707287a9ef2595cb8cb318f96ff24f2a92b00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310090c7c28cabf9590d7ba02ec58a600c165e70edd8e62b071c0336e92e0030cbfc38782b64c1594f4797e0fa862fbe0c51023100f36e93a91665019cb9893683b57147547cd129ed842f14ff9c194e5e6e6da6ca7392e87056148e4ca7439e449d0157ca0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230239a7443246e173befc19ec6728a40cde2ba8e822b44918e21aed0447020ccde043c97fb8749dcba418f60126869a89c0231009cfc6467a2a7499eead1d60eb6d9d6409c0fef10bcd917f37001c9c53bd823b83e067d961fddb1ec58d19f17b274af6a0302047c435bb500673065023064c67bcf03bf5f19a6e866eac4442c2297b672510cbad49f2f3a542544f67d1c870c3559f5bd976cef9f4d4931257e0e023100b16a6de124f9258899bfc7bb3e93564d45ae64c8b1f782c2110faa6c4506a5f308837d3c946b52c4bcf6081e33aab9100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b947e7bb10155ae713eff79b345de591d81095fa2423bfb28839875a6e1907e6a3eb2b4bf4540296a07d0148acdec9f702310082340a1d68ecbecf88b5a0fffa28422d777f4b1a5b628eda7295703be867b36e9f4ef376ef009800f30969dfd03abf650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023048dc7e567e6aff1e1cd28318761a31fc519e836c1d83094d566525c3b15e490c289aa304436b4b39fb57ac187b614bf7023100d6a24935a6aba72acd7efe24ce4eefa5736a726543df8f20fc2be98d8d83b96293cacbe4a4c32a240861b192e1d773650302047c435bb500673065023020f335e4bd8d90be14430dda458d852e00d9785ed9fb6d74f9c8194f95363722d5c4215825d73ad8dd9bef52503ef71e023100e0bb815dcbb8b9fafb7a763d007b02cf702d5b9ce01fb89b0b2d0df5c9793cd4775d03b777a7b2a59b779cf20a2c9b5f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ffa0300a26609897c8964f9b8bb29fa8c2cfc9c78fe5bc56c29725980a0aa82b2be8735e73bd03a23024d49223a22848023100e9072115795c9d71df672c3c3ee450951c61d8c0cd3d95652287a1d12f9637ce1a509eaf8ea2f019d890b1c5b00ea6980302047c435bb500673065023048c7a56541a7ad8ad36b92dd31075c7652abec5ffd4ddd5cff3c0e7bd740ab3a4383e855b90639f298290d45b4d62043023100a1fdf69e743b4d82f8b08558369411231b01b556392539500ab23cfaaee68d4ccfffc38812a542c35f724b88b17672ad0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307d1f5dfaff36e9413fd6d4ea74ff4aca22825f16068af989755a9ad7094b225e846eb562ed8a012ca8c822d1ebf54951023100e0edff5b8d852361c94d2808c439a94c9414dffa9cd0a6f49e3f33d62bc7f7ab169a895735868cbebb8a2c6c141010b40302047c435bb50066306402305ae6f801f7eb6813daaee6651179d4dfe26d5880a31818017de8f35614b7f10ef28fe2a8e7d42db43acf58e682b9320d02303c9bf2f4e53e40619bca8c18d1e12699ed6083705368d5c7a45cde389141cf1e9fe01f1d018764944111d943548d28df0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310091fd420456399e0379bd49da9abf1f0636bb4b37a816f15e326196c368ca10081a83f96986596ab6158c6766adec96e6023100ad1cf0274e3f9fcef42d497ba96d0d71e2ef80b30fe7dd69f4e5b8d2bd79a2ee440c8689e6debcb27774d9511b953d8f0302047c435bb50068306602310086f356abd7efe166a1df67cc77c3c9cf14d548ab16ee974f514ce49c371b0fac5d194a64d9a69ecb04812e4885e5f6ee02310094d393c61579c62693b84fcc9e8cbe0973d56034fb2dca3aadf03a555fdaa1b8bb40658eb1d3a1df54f40773ffb86d350302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307ebfd601ec1cef7691716640c55cd40825d44debbb30db98644bdc870960fcd5c2dd56a6a6d5fc8dc01336435ae69ea5023007818fc899054ee888ecc8fabf8ec344bdcf18026d0ea520134d9eeb335e42ccb4060ccd05a6815f92fee60dbd0d6cef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f245ff3c400193eb11cf67fe52dee9798882631c454da1200ceb5b2f6a767fb1a3d3ce3baad49d59865e8a32131a95fc02306530022e0f47e0ec7c89867e36508c470ba673347cbc4a88a5c3b0fe45b03be4a96bbe0327513872fd21f956c4831b540302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009505e1d386eea37638eaf64e44ccf6a4aee4eb7de7779dc3356d47358024e9d58af1d8fa47c5e17d9ff5e6e48c252fb1023100d394bd3703c578316875eb50e58d26958bed71ff1ddef21689a3926907bdfebbf4a2ade452eca36c098a8e0ca05d02080302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bc057cef18f4f531d5e52f6d5992a506adc5a0989ec2c4afc9e5fca0e69efb1c14cd6e3cba6d30771e5cdcc00d83c53d023100b348d2caec31323104814f78d233afb4655b6dbbf93a819b3c0675ff88ac31e04f401f6bd7d51c16dbfcf5f1534dff7e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b65c91b49fff57948ae7eda30754192fa4889e3e72b656dd474271917ce2aa5edd2c7e2eedb6ac6d1279871d0226e7900230650ecbf6636b3d7a474a894ddef37b79f0511393530c8051aa64ab75ca286af1b6633ae84632162af4dcc172e1ae6d150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307de495b99531e0f07f1ef3e5cae810eed3085ca2b0bee14229389784c413d0d3349d2602cd1e7e5a3d206062b6f33dd3023100f7a5a34d14ab9ef51d52318a3c39b78839f88f1069d7c2f8dce7a7c4e7e4eb7161547e4fdf0aee7ef7304126e405d8790302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306df116217d40e2b3ee8ad193bd0c688afa0df5272e4aea19102c639ab2add84752259e2924c8a70f99fb96576603e72f02302973aa2bc58ae9873d29342a0d6f6c3079e98af15f08eb8aae9ca3b1de36af72cc467a4f9163ca72adebfb068ef410b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ce1bdfe2d468417e10982abc230463ce906f8ced463000606a1a9ae61a5899f59267d8d85c9975686cc05827e5a2f0fe023024c27a829e68067b8594c4aafceafe2af2726cc5074a8e591b99f8bd00281cd9c7d0cb6169bb0fcb265c2ffd794f0c5c0302047c435bb500683066023100dadcddc8c8375b7d16b770f7fc2c1148995afc1109da727e199c4e838e9e6ea57a9d7484d3f76c1e5c76663928c8ea650231009dc1a3cf13efe6b2aad659b5549ce1b5a6f82f9f08d3b7201f98be80168693fd9342c52d45b93ad85d821f7407736fd80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023034ab3b759d034d89be6809e8bc3f73519d3f4d0053ebc645686d7aefabfa937f3593cc082cdc849fcbd4c0b1cfef1861023057b0c1f4bda384efe8808b95aed14e944b9845add15b97a6835e4ff834dc7a31c1511a38f4f62ffd4a1cd834872fb2390302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009fd76af6ea8923f404693f144869215661d58b24ebb021d369c9511402a33fdd1b425e9a551b0edab534326be0a1178402303a8cc69460f9ddd7db69cd97f50f6bb1fca8df1c9714fea4d380501943f9b03df5381a54ab55a7d7b30b7fd0e8bd0dbf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023010f8ba330992bc231dab87e419b46e8974bde5fd90437cf13ed785b3b8baff364d88e2ae5639c89d53026596809df0e3023100e167c44c24832c1f1f4416eb2538ef0f6886bc9841286fb8b1433f824981278b6671113d419e08bcf1edf85ae53a76600302047c435bb5006830660231009054cd08b2742a910cccb393982fa9722d7f257d2dc53aa29cb500f04dacd82abafa28d687ad1e39042dc57d8097e788023100c52ec339b28fd1da7755cd35c89cba110981dd17440abaad6db4fcdca482e87da6b4a75a747681f0fe4daede17e11e910302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307c318c19fec0adeda2466195c82b05ce439f27d0562a5e2578e42ba385986e6f65df6e73397fbbf354464f313770d830023100e86eb4f2918a1d2ed1671310cf3cfa6c7bce05d3c42218e93fa06a41bc0b1b493fce973f5487f67ceb1acf4fd053855c0302047c435bb50066306402307428a407d4ec5dfdec198d4fefee470df83a3cff6d142bf070a09278ba8150afa0255e1496fd5fba89632653fa79dbc8023022b128538a4c6b3d054ac8c0711dc450abe92a93af837d7782c7c6a42c113edaba2dc641258086d7bbafd93dd0aac79e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fe207885d814ee8950d95f2718b1f34085536af7eee8cf32ef8fb59abc8a1fc979f44154c1ae6902e7dba3f0be0e93990231009256f1dbca26ee94507c39e85612c33337dc9c9b91eb6b58ad4fbb70463ed7f31ce097fe2b857f03b81a4ae0dd8457d80302047c435bb500663064023076ae47142642adcc0a80ccdfe7fee1188ff8e0b73c6161203d6c8272e34cba5b7faec095030c597de406e0566860baee023017e3b6b198b71d5949b5e21fd8995b1501c195bb9538ecaed6c6dee7b5251d0c79ec8fb573c901922a5e54e0a670c2790302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306f4fc5457ee3301c19cf1d0ead0b72349bee88a8b8bd42eb249565a178c84ee43c12a25adb2bd1005bb6231e5380c13c02301459b5eed67ccce575ad2e02fb7b8e3ba4153a0b8e98548fabcfd880928351412349623d24bbc515b58afbc3125fecc60302047c435bb50068306602310088991f3367552a24c510b10712658f3b3b6afc31f8a5c4844992e48f45c5b9f754d50f93af8eb367f15586c28ae50fc4023100820524618c2c45d129cab36403f1dd6f2ad63fd40ca5415caadbf766993c665893819b28b5d58f8790ce1bd02b3389e10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230274339d092c2cdb874546534a8aee6838a78c51b139e291febe1b105c51bc10dba6b8dbe809940e3bda4a861667b0bdb02310081cc149779fd9e7103719c04d540d6878151e959706cdf03a604f934cbe7f5237072c47ffb439ef656d2a257b12ec7870302047c435bb500673065023075107a63e2411ceb22578c896fe77b3573464ea5162ef4f74235054547281af712b581261c5a1e45f68d64726c1b43b2023100f4e853ec0d47e53db7636b38528dea6f0a1854e44059d55f80cdfba25d89c03a74d0cf57b9ecc000ef98852b5c2384da0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e98c8b6cc3fd448e2aebb4973a0400980c369b480b3ac2a1cb7be4a48854d88187465f08b47516f7cafce5ab6543e3730230732e052cb93609d3b59b79906029e597ba28b42640470e177de6085141212fcbb39bd7a25ed454afae43e0f9beda7f690302047c435bb500673065023100b379d8f9b59c9d1e9000c8e3411932b40007ea197539f4b0e5590cce9c5f4b0c53ffeff818b70f62fe1deafd401e642702302b0c5f7c376d14f0e8a375c35d2b34839da0641bbedf823841d96b826cb69f93a43982dda7f9277806a1013ea3f928310302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307a61dc4e2ac0d384342a6bdf8922bb33877ba055d4a26a6c2ae01eb0b0a4982d4f9dbd6a5a823e9630baff4e1e43480102307170f5e84cb52c732529944a42aa5b11cd5dc86192c7269e7f5adda293f2668dd8113ad3d2e9beb5399d57a77af930bb0302047c435bb500673065023100f3fa67a1d6c84e7b4d0e017365224964c86558112f2ab239d8c5c118c462cbe8295a4286b90f8ac3d17cc665f7dfc2ce02305ccfaf94b71ff03714a6fea10dbd4ad6fe5ecea09e3dec27959f27839b68c0350433586497d2ea4d1468b7fca45c655b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e6a8aed276f29f389ed5950f4608e2b1e4fdeefe1dc9015036581fd22b2ee741729e234d46579fc0c435ac29518626000230167f8760195cab04b4e07e1d772b05f75cf4dc6de4792c69515bc05917e5e660b59f588cf70a4f4bfbb7b1f79fab88990302047c435bb50067306502300ba8e2a2fc6dcb89998205675100eebf02c310c99661cd5f3f12729da679571c2b11158e8ba75af5670318e1f00342f6023100b41ee8b60e0446ef05e99146fb91005220c25f6ef8ca028692fb7c692daea0eff3196230f0e8835b08755fe3de3d37c80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301fda0b19d2053da28e608e5ac82de815277da218201c77e0f5267b1c8765aaa47c7356e812967aeab92232b144ab09e00231008f2845270d4ac652c5af84739d3bb9d9689818bace176d4cdb3a989cd5709953902455fb85e705b17eb49a426c5080ce0302047c435bb500683066023100b0246c71e6ea136bea2936b2c57ba1beb284eb4e7f41fedf5565c590575af2ee35205faaea284127d04773979b64292e023100d5208a035e72240e82b4d10bcaa47d5efa6b144ec9b72727b78cdfa165e852a6202b2f1d59df6ea1c01c0f9432a8d5fe0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f5cd22a8a1cb0a2415bbde10a6432de3619646eac46fdc946977ac2c90eefe26042503316c98a016c2dff0670783bbe60230699e08eae583a182994a7030fe0d1ac6349cf2fc1f13f1832195c3798ff7f10032281195505c129e3e52312541e2cb250302047c435bb50066306402303c5c69c12d6e9523a2d901dd72a01637b85bcf78b72f451552506ca11fb8965ab1f7c832aa5a0beccf61e90a275dbb4702307565c8a10cecac9ab644a3f0d2d57367b1c16fe4bf4145f643ef64d7f38c77ff78114e5bcd6c18708c1c2ff4c4db35770302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f00d03b3e76382f82e8beef45be014da118f4a2f09bd6b38b96365c23de7792e1c4578de76a4ba2eb73d0bd169d3540e02302b8f8da55dc11ea3172dfe09926eeaf67942f03b0820d125cb9de5b800df5557564c7afe048ecffb059fb1e5a300a5030302047c435bb5006730650230433c9fc2e86658309705091c143673259ceecff5e486a232929b20365b022c9d3ec43b044d844f7eedf924649f43cd42023100e03756cc93ab0c38a1074c0237ddbc2d8b6a3d7b28b3489353120ebdbeff8dc52c7738a83d5b36d8260b8f00cc76f3300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d8b06503b38b970ad5c0be3fcf461bb21361f9c78d33fe1e4734e62f0d5c79d2944ea09cd82c75571461ab3f7d2672ec02303b9ca4a7a24705e97d906c2afb91ef9d9527b7750e69fdcf82502790ac8adde80b6b1eeab030e8c6c74fd087feb90ac10302047c435bb500663064023001ff9605abb3e8caaa7decaa44b5b15e6cf25f130b616427de65d8dddef5369d52b533b3191c25fb537c1a4f16c152a802307a11fdfa38bcc69fd4eefe7dc66584dd909c5f2266ef1598b4abeea42203db1f1ae39e671a0961841c33b3e0930f0e540302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230696e10887e2022551844190deb2aad0e20cea99e573c0cba815da349fb55dca4d54c434a893206b670fa85e37bb60299023065b55acf14e345452d66defecc119ccf8a1f8f262385d124f672db6bcaebecb992457aa17564077c46aeb4c8f11e11fe0302047c435bb500683066023100c4a051e4b410d11451a170e8cffa76ee9ad9f2d353e9f3d12d924db722d1d4500a5cc36c5c8261a0b5dae5874740e3e702310094eea583a775e6bd39da166c6050915670ddb59ef1ca758f9fb1932968cbbffc63f7064db711a5ad26dcc17b224b42ec0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008029f588fa4234c1e4139c4ec1fd9f7639e4bf0f26e548a4efb9da60a5434d5aba74e2ae81ce7a75f13cf4d880389e1d02300f238839fcad208a23b8a1a3dab7d8b6b865e5e7a26756d62a7cb2f419d7912add5bde579280e2576bc62df28d39337c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306e8658d3e67601eefc1c580bceff6cdb2c8db0b9c4e50057aff7dd61325633432b938a5688890c012710e129e4fde454023034dd327fb701214732d63d3eb9b6141ac10bce0c36dc665b5efbf2e7fa508da34a5513cd777ccf2eff8b21d7b719216d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302218b6192e8525b70555790e6b4567937df2a17def9466ce0950d6544804f5de759fe75b997aedd091b8e62e5f91a4a8023100858af63015b3cc670f5baf2f81d614ecdddd69e3aa090542571ba9514197559e49b13eddd56eb2e982514ad0d2750c1b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303b5b178eb94c1facb75ef3531f00b6486527b7952fea9f92645cf172aa86da16cb85f84fc28617fca153bd86c4b4e01e023100e99fb6d8cb80343f6bd30c90903a5141f244ce09f4fe7f16437a0e1215f2115d2263994ba63885c32488ac39f799ee520302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d2609a6f5398ba2650bf2fe20d650c686e7a2feb8a6b5a3e4b49c6088270c06489366c6db23fb5074f03aab169e8d277023100ba1d655615fcd18ab4ec2f656d477fa3564557a618e9ece004a0557892d8c43e702e6e54cd39a761209810e5a04ad37a0302047c435bb5006630640230657104a2b21efc5f9c6e8f97c47169f2b31ed19d0b43098f99b35caeb46ae10ffe99d47e5b966892ae17be3ca69703d3023013c97815b45134d74112dda902657dcd9e768eba9904662b78f713648ce32d6ac53417497d89650d008f9190cbf475dc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a19a1cdfa0dad26e6685311e3eb40bd7b5d5a3a99d08be09032f83b619fbc658c366e1cd6c1bec9ddf95e2d468097f8023100cb70dec8127a128c63a897fcf3a9d0ed28f2cbf8bc9fe41b8093cd1d712e9e7f19a6ac49542ef92caecfb0c5bcc9be090302047c435bb50067306502301dde72af49f4c019a24c5b69f724ccfc723f42161073f04d994238141b430806ee3feb5bcdac7b775d78d1193a37035e023100f146b579420fffd479393def9a47fdb333df4cc4bd03885838da6a1ea1bb8cf8c6e0b9d5c82cc445a4a3625365f0a6130302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303c0b88b13e4539265106efb8e3bd8d75d168df97d4e663ef15d837f3757d695fc43590145c9d1447ef636d87c8d9d4f802305728641a3e75b4675e3460f5c1ba3b5ab9979f1305c2ea8ed5f34394f28736f8b1c564b8736cd3513388b093453cd0550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ce356e44def37391c405003077106cc8cc65a6f6baf49c4b7f4d91520836fd055f06318d2984880cc53675dbcd9eaaf402310090357b44014884442c1c696dd727df79493dc77ac34b0b6e27dbef5e34117fa235db8e935708800b5de99c931ff45fcc0302047c435bb500683066023100bcab81b10352fcaafdef1d2e9563aef22d56f1379b073dff1d9e87168c8dd43fe186e24d38b8fec4338b2c838fe3bae4023100fb1aa6eb2f759a4e01c7cae37b1cd4197a42b84cba0154cb7d09c5c276099cfade52f03ffd36c52a447c1b461dcffcf00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d34b16ec41ac5a576040785b511c17a960df02454fa5883c76351906105dbd65a3e06255088c319305506e8c8390dbac023042aa4c6bb18be36fc036792f9279ddef21669bcc1d265a13ab312429f5fd3e7adf92bfc4cfddfeaa65c448bbddb5db2f0302047c435bb500683066023100be491267c8e32e198a1404ba9d083ec1c90abd6fd843d88d821ef5da9c1cc5e35736d927b8c74d2c941ce3b9f33008bd023100d0adb882a1f277846c6e0a21c0b46def7f9e40ac12d3ff231d1a86d65c6de701e1d8962b0b077964dd5e17a7f4c5fd220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009f59af02edb0995d4ad6c3e1b1f29a7f6c536cde2962e9b04909e2c63fbeb20886760791a3414e9848c25acf46a2704c023100eeee7794a82f9aa500274c53bad14592e353062baf2ebacf8492820373de4f19fbdcbe7ebbed2e0e7cb3fcf0f0abc44c0302047c435bb500683066023100da478cc2483aadd63e830719b19c1b2f47fe97258e687718045e9dd980ecf78a3911a1ae34a3f2248275f08fe1a3b8730231008be6c4b8b8f16bd4e03864605bee90736c99eeb07fbf6dbfeb1b8b8353db9610c87987f7a0af47a384aa793d7583c1a00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304f74ee3068b7935b9236399bda359255abe81e3c1941aa8f8d52374d8b3a2fa16a1acb6b440d952d6629cb934f520b74023100e1341f6707a2a2c58c07306ed38167b8a94712ffb44f2592145b7611d158d70a23a172bc4795b6f29cfbce1558cd72870302047c435bb500673065023100f17c5f94edb3e00a471113b535aa2386b5691e42ac02f65390e55d3741d416b578f3bee12115fb518374b530e52a53b5023022c3421197e652c65d89138f6859615458be847b35b0fa948fab2ea14b6c5c7456a6fcf9f5165a10e91d08ab1df063550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301452fea4d2ae96388a329e167f88bf2fff2028fd52d9e694e3ebf647842a31313a07ea2a9c7d83226d450f23c7f3d54a02310083589d99fe034bf30152fac7b1cc454705e4669f6efeba976a11e3450c255c1c431dd381ff000a1706198dbd8c89ca790302047c435bb5006730650230044a21cb03136e9bf64ce08a5cf43503844fdabf3305735d19816d6c01be8a29befbf86e024a5c7be8759f1d4e6359ff023100eb4134bfd0b00181657710bf72f75bbfd99b3c190d5b20e83dd7729c0d7a48ec1d7cc5c0fc707180326bfce75dd4688c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a052c2dbe9f02b12394c3417a84c18672e37c7f31953d209695635f36fa68d887f05ad03ff0ada9899df0f9555184ae023100be2468b224dc2663bbbac16b8e0c0e9feb38096de94689cf2571cb4e1e3eab8bc54dc4dd6afb2732aed4ed08a3d099bf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306c605448ee612ac7ec95c90aeab1838e2ddd620ac209960bd0ae446f316f02db5f88fd3972d9f6e8d305390f1d884e2a023068d17eb379f96c6f506f1e3a1c7bfb07823f3d38e0ec267837836d6a7a2c1050275f9a5ed62f774770f1a9e470e50f950302047c435bb5006630640230258988a86fe38617db9817dcda5dbe72686556dd81a783c3895c39cb59b2dc6568bf3f8c514102057bc3710ef3bccd59023013ac80ab0fd8d9414f182800587c4a909d7c5d1075c228f6fb76e3ff42e1f330c55dd7cd94c46456a880f7838da0325d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303161cb0e0340bbc43bf9adcb12edaa31d89a4c59aac09b588d08588e1de0d72cc9d79e354c8b9e62672a1e8a640dfd820231009700899c022716d6b0febeb88d4e3104b50434412ed23427f9201b8d0ee0b8e8b7cd0feaa48d1b337b54a9f0c01893120302047c435bb500673065023100f40916fb39a91690df622990604b52297c70dd4d99cecff5a6c0a3deb099d5c78f66e6f2f591b0709e28f34f68cf0ef4023070d53dc7d3127ad692b7ad6c282068e145393b387f1c5cbc3a5c0ef0fa62a8a938bbcc7e6c3c78ba5935c7b006f7cdc50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305ccf8e497bac6cd6736feb8309db969fb2501a1622ab534e14538aab7d341878974f695e137a2eaf4e89d13b77492967023100a3cf34393d4edb2f3e551445a3d08aedd12d4ff339dddcb86e7d7f0e9812f6f62d06330f9deca2522bd9d13e0f96b38a0302047c435bb5006830660231009b85d845f56f9a8279902cc231e81a7fe39604b99c232adeac5d7a02dfb903f949efc627d1edb154419e9e7189fe546b02310098075f4cabcdf3aaa4e95b92282017a80a31258ebb1f74b38c8b79f5c94fd5ec6827f2e6077293f8185efe2408e547350302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a2dde541c0c63930560149b8abe8489d672dc38662e7daa255665ef58235284aa85dbaf9eea55de5ae107ed84d75c67023100af34be849a7153b4cbaaefbad2d475bfdc0211427015fd94e4fad350abf4bdcc41db03f20b2379e426da7a0c065053f60302047c435bb500663064023005ef1ec6bb69af5274a037f5f1b7d47ae6e4a14fd100189e729d180ad59e4929a09c98f15cd817bda82737e4078ee9f6023023c517a37b86a6514565f6f788769a41febcc9635235deef811dbbb8ffcffbb5dc1382df2cddfb4cd29f6ceca3f81fa10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b86efeebb8c166f0f1a2925df62dfb30630b0b62cf3cab999c82a355d9cbad288df0bc85cc10c4d8567f171dc5cc3d4902306f8a3343f335990389d98ec54ccbdd5ca3082dcfde08244c1a509845c5592e67438b1345a924b20617bc13cfaee9ccaf0302047c435bb50066306402307019d09cfa0b5241ec34ba01c0837cc2b2d41e14aea59b9c6589e16ca0cbecb9a4d3bb3b2f1e21aabf1a2410448bc89e02306fdafb4911fd33a4fc5af7b5e42fa861f35708c9fe5dac01b2786613d97037f53f732d8a583844f63b7725fb122d42e90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009a430a8a2cad5715b7cad5a682a9e03519dd9a1eb5d2a83ba93ad125e8006a9417f8b6f4c8c0d15db95113a5a199710a02302d32182b6ccbb6763bc6d0e6b8c56d888bf06feb40aa4761de3df4b3a0f7c69f54576a0092fb1b91ae7da396767265370302047c435bb500683066023100a3c136de7bf0a5945b66b419edde6544e746c78e15dda7cce2f8dea114ed47614a38f4483c108d480a4b9ed3890adbfb023100ca0ef4806c45039423a6450542aec6f727aeca9af5bb9838dbb98aab32e61c860c27615ca6a9bbe9ee1bd57d7c8741530302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c3f19037ac7b75ce7d7a1a5199b63c16ea556087e157b843c87092178b40b24025bd715df6c494b870fa794fcca2320f0230624f1b4b4860c2c96659994609e2d297145ceae07a3a9fab4bcf3e6ac5918fab6f5c2ae81ed85861fe2485951879363c0302047c435bb50067306502303cf7e9970a3011b60d0939dfa649952359d1c7c71fb5bd8dd932c65dbbc6f47bdd15b8c57fbb10252fc3282b1c275a12023100d7dab634caef5164ed1773ef84bb5f045bd9ab1ac222324b2ae6bd8fe9aff56361d4d0b237facd1e7945029b57abf3da0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023061eb64c6988ec6f75f5b7aeae5d8759a0cbb5f79a958626da60ea997494a148a7a5bbb3835b8167e887d358a697bab4b0230395dd3c7677e10c905340e6650cb8dd6e2dd9995febf0c942797cb52b89bfde0c8676bf64c67bb3b7de2d27c9375c8500302047c435bb500683066023100b8791ee79b833fc16f777132a457ea49142948990df9f69064a663411caba253218cf918bc6e5c47398b2283158afa6a02310096c74da98e2690eb35c34970e73477bb67a9ea677f82acda4bdb156e18547e442e4713e3d9cb71c21768b258022778a00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100db7885751d2b9c27f60b5c7dbc95a42aa9b16b073143a0ebef694bf955d03d769c6c6fc9bb00d58e546a31f483749132023100810de1f1fe9ff1de7ad2b1ef0b67c5653c8780fd7d09fd04173831462d61bb53c818902b8400a03440ec5118b39b05ad0302047c435bb500673065023057e7cd40aad583eaaf3710ed40c6d0372c7c65dbeeaf21c0496f89f65c3ad58e21fed6d1ff5f2a3da4047510316ddb7b023100c211c06c1f0147ab2da7fbdb856c71baab8be5894a2b2e180c1683ac4ade30dbfda82ee379bbfab261f3e666b6d41a250302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008199f0e95e23d46c30683dff7a2efafd238d9ecb1687c0d7603781b79adf116a8ba47430e74c98ea12744da95222c65b0230577364fb6e72c0176e5b00788f71a11d0b483b62c0b6865a2668d711c38ef601bfd408cc52aa410454fe6ad2d69a3f4c0302047c435bb5006630640230615a0d9ff1d042e48aefe1630f2eca2540890a93d00678bcdf469b01df4363763db0954114353945023713c26b92b57c023033ac8f75f34a4ee6510f2e994a6530a6d9f6987f3a0e9d8ef0ee5ff75d1d14dd1e10bda8245da774f7540e0265af617c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cc761abde21219c9a45a52bac552f84b2438544dfafed2f447b3159b01144065366886178f73c144221452f8dd5261d7023100b950242773585dfc1068bd95f9454dc1386d2dfb0dacfb94657c836e2d9f798a7c76638741bbe978333331cdf04858d60302047c435bb500673065023100ffe0a89f03b46365e4de35774dea1d38204aaa8a60288b9537c726fdcbe26e74a1fa78df0b6a41bea5c6f68366d670d502307e80677003b5111fca9d744643288477e7a8b1618437299b4960bce3034dc756734d9a0944a33bb8006f80eef447b3d80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f0c56ae8f7d4fb47bd30f68c254b5b2bdc7291ed78dfb8c57f03eb7d39c367e40776687823d7a30c1765445352fd0b9f0230160e68eeab543c71232b224ec8c862c17eef4b0385cff79e757921b4a3bc4cb8ffcd1684ba0b6ff7b3263bed216400700302047c435bb5006630640230020f85675b93941a26c70c2e7c8d5446432e9f10e05bbef8403fbd3eeeff48a95fa6332e9c2d8d9966588e9810d08f660230387f4ddc4ede705eaba59d8a62584a25f45b940f7091750be64215d9ab0aeb0b58c6263ee2f5860325c2980bee91c6960302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c66d39877718283f2d9507b19a040745e7f5da57a6ece7715dffecd43ce64396230cccca2b4e36c2dbb7c3dc5ca0c5c0023100ede40e886e76cfd7f264a161a393418eb0319cb8d18139cf63f7ae416f6fc1c8244387eaaa82f37a9a755dfe768d11470302047c435bb500683066023100a76534d181870b53576a8587710f3d77f681892461bdbb73bf104f4b9c2e559b7d164ef6b33108bc0d70394314912c5102310098ab77f7151a64ff3273127e09f1d606afaac0826930705d35ec0f71f683b70748f8c2314b6536f3c406396e02ccd70c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023052af06ef1bd5595c7ebcd1bdd71ec1e8a57d4ef451fb0b06fc40671a99e7a1386028f8234a4658200bb9f0b203f87196023100c27b853ff1badbdf195bdf93fa5a0406e664833c2301fbc2ab291274946ddc19bdbe90f81ef54865bafd2c9ae665630f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c9a471f495748f783acbcd8b7e8785f432d01bb398256f8e6543bec540b6a04bc712febc48ecb3158c514f7f02e2e997023100ca4b7788bbf4b8abeebfda7e1b007cd18d74472b359fcdc268632ad410bc7800a7f16a43a678a2fa71fc27eff281b1020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008f8f94b1b17ecf1e96275b41ebce287bdecc8ef590694c21041dbb1b10a94ce3deae4b65f849f3137e784a8a602f54bf0230687ca0951d6e06f40512995b780b5ad0f9a6d21a124a0440d49ad494f958f64c0271dcb9af18321a11518b38c557a19a0302047c435bb50067306502304e514c609307aa77ef07412bfa31a6719d3c387bcc2b7af446b60ad4594183043a00a864059335cebba61745bb1d7d8a0231009347420c1d5b16a4299f49fdc85ae316156900296984f93411e2d99c7ac21a1fa93d5792019489717cf8ec69402256fa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fdb10dc2da6873be1e3c00c7ec2622c7bc44ca27995cb9fb33026275cf21041106bbc7bc82b5c6bcc36846c15741f974023100eace379302de156dee778f9d6ef9b228d3b5ec81134ad203a65712b4330d9acce899fe95219dc9563a27accaf6f03eb90302047c435bb500683066023100ec05004eac61442794f3d7c055f17a84843b1d30b0faef85ca9f186e6ff9b474b475ae83df962104d12479daa8da8aff0231008250b409baf09e79aa38bd4f7e1ca67b179ed511b3204b2cf8c6670ea95088a195be47c73902745b505600ee500fce7a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cb34396e0261651be077b364059556ce570dfd77a1b8baf1bd0ff5f1f80b86a7e77be250c98214886cd008ef16e6717902301dddbc675ccbad76a081ddf2217ff9b8f8e5046d206f542d33e9ff89d103ae14996e6ff7c211d7a77980a1713de024860302047c435bb50067306502302d9a18f443bd26607a9776fe4a26b815f68d501378bb98bf22492f24b666f0f190c47bc1a0dc9225cede570d16b94b5d023100c0967d47ac561ec5c419e8a0b9ca7f7fa886fb251d47ae0df5744c97bf25d463d98ceed67ebff817cd7d37ac309526ca0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307aeef0da7fb25014dc44834f4a06a711b97bd3c13f8d8e363276b5dfe1ad1bc755f1b6000f7cdde11d5eeaded6a5886802310082b0db6ae3f0746955dfda03829f1204f483ff3eb4f4934531695d44582c86d7f36e69bf2839571fbf872f0ca798165a0302047c435bb500673065023100b1ad50dd3fb3b6ba26447663ce85dd01d4a5b7c7e372c7fbb836a9dc688c766d4e732ff6d88bd9cae69323e210d7e258023017125175b0de529e89a7fabf7c05882bc35aa32d75625b3c4eee403d49e6d9f752224dfdd69c6aaa97801ea5f6077a1d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023019f4d8103fa0276f4037bd1c152b227330c5ded66439af9604a6de497c67cfcb6166bddf7ade28889c8da0b2d51673fd02307d491cedb19ca553d2c0212321cff3903376cd2b6cf20b314d6f39f91bc9a9612ad10957c854d619dc264a474fbbe8730302047c435bb500683066023100ad8876e11459b0259d1a4d6b24064931ee646fdecacde130d86841634bec33e3050c150df1419238b1f4700ff3af5854023100cf3b3059fa80d76c492652e1de5d65f66961c6b7ad430361a4bd0478dc59cf4914c7e509c8178171285068cc0834a3560302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fd95224b618a6724619cd94378e19621815f588371fbb9c5d3047580b56dad6ebacb3e0dea34105e8f7d72a3ff11290d02302f8fbcd22f5e8a3a426745c224743e388734bd8fef4210911a5da2c5ad56f2dd5e47a95f87b0013e5c22a430c0d794f70302047c435bb500683066023100e496529f07160ff5f58fc8cc77ffaff48beddbf92923607e93d9be8647c7d1774d36dd5be4a9ebfcd08170f0706f5d840231009fb2ea1d6721887aac2acdf0d14e87cd45891dace0d143ed9deb27e1f2133c7306300abe2504607adcfd92a73e8cdb8d0302047c435bb500683066023100ee1515a94a4ec2788a3d1f2a09a3e4d63382dd0d24abc8f0ca16ef5fa8108897019825bb63a8ddeec9acb6d34a7f676b023100eeb5b4606167a7bd743d38d5eb9cc2ad08e9f525713610cd6f6032899ba32b3e644dc4c70e9eae545097caf510854f230302047c435bb500673065023100950fcae8272e604195160529b4a2ecb6d8cf2582ded96d0db3074a76df1beaa0ccddf8aca91f39a7a781414549df368d02300eb186e33b2a048f351dfb7037be09e5bb71894535b848bbd1534a92c8ee0d99ed99d8182979ee0ef04bd8423d447e520302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303053278442e8dbd594d3500443007c6701519c59a63b22a4a8165dbb0dc7c0ea364184db0db783b5293cb95eeeae5bfe023002c79e35001d007740c8bba3cecba36ce09e033504a9c1f1a0a31567720e1f0c1b9d6462e701e13ee27a46f03d2036e50302047c435bb500673065023100caf6b23614107686cb385350bb8741369b7d62c4dfa4724a94fb7b47e5cd71a759000a7eb61722c706ad09a8e01b40800230333276c3ecca3bc09a9c8c1d376d4adff4f584b216b4afa62838b062e74798a4921272f1ef4cc02a70ac1bcb2d945c940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310092d6822e6e75af4fab1dc4690e70c3a6efe30428fa82f26a6ef67550dca27ab9a24651a6b51ea775d4b3cc0cb53bebc6023100afaa0b1958bb7055fb6b709388051aed4c3819d4ee51cbbcc83da75e9cf9d1a573e7f4bf9a8ff6774b354d8fb16035180302047c435bb500683066023100b883f8383d11ea2423ab8289a810b6800d1ee4e540de31e41807f6424e34517bf26e8a64926ca6a356be2020f419e898023100f89fd8d1aa7fa78bb4e7e63e0fe03dd3b11d742db63665926a5dac34a6ef0ee85ee194d5cafbc6e4df95f8d7a11269080302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d20f8eba2e534db8597ba621afed9f4b1e324a2268a335e677feca2752f14979e501b852183b04f435b818058ec0a4600230103ea586b56d5c7892ad816b9b67d663405008bbb36cdb4c3a3415fc15bc0b8970a9ef91c53cb13b0de38707c8c7c2dd0302047c435bb500683066023100b51fbf002f366d49e04c6821e7d2ced64464300084388c27a56a548d49a1b6d0a155838800458c706a011adee9dfe21702310092f959acf19d165e3d17aebd7127ed4507b0da726dadcbd3fa55e4c8eab2774b9dd0f30fb91b2b991c606035c06234a30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230614586677c19976ecd78d195cface0040c5900372441516fbfb0e3d3ea323abb2bfb6d813933f4b10fa27cbadd9c883d0231008b74f57347f97cbc85115535cdb03c6c8228fe1af82ca0b3640ed824f4c0196c9f614e213310eb5dbb7d3072b023ce200302047c435bb50067306502306d74557111815948ebc881514c91f329362bd4411eb0b09be9f68c4d080bfa1369aac675d472d86ab096c873650d25b3023100d367901d63f0cb49c7a8bf4275e6e66eea4d2c00d41a874f1f860c936255fdd15014a4b82159e12ddfe3b6f4041b7bdd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305ce53ba8d14cdf80014679aaba579c5ce77bffba535d1a19d9cb77b4d5c07ffdb767198a120193b806058548224ca3d3023020f61b7df25411a20f053d14fedd2fefde3924bb405d40080147e76e806d43c001a12f34a27ca7ba56399cd92dea71a90302047c435bb500673065023100e2b94484fabd3339527fb995bfc1f4aca1978f55a77028e6500dbd8dd4daa0e22e5066bfc41b7e514dbaddb068d0eb7402303f2834d332136b5302b18cf8494153e3449dba9dce434669edcc5e232e924db21f82d4006de108c002c945491c3446000302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023064adfbb9e972d49e9d844dfd7e4fa87d2727eb1c7999ed42e1005cf988438ef48d18c76441df34444d50238b2e1134e90231009a6fb265ef5301e870ccd7a31340e7f9b1e825d68792fcca4dcce7d074d5514fb9e5925024848069ffec1305ffdfe36d0302047c435bb500663064023030b5b4484ca8052370fe6e2a48072829941d2bf418f57d8f921fbd2c7150fca4432d8b9bacb4a46ee086edfb4f2927da023015d5643168cad18a49f4bb4feaf69c4985443b435b1918bcf1e3c1ec283c091990d858eb9e7a3886563a2ee1edf58ce40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302ed12e68f2f1f9a89f3a818a630db83cb9e03940ae728f533e3040de2fdb9b6e4c141d8ad5a0184fa0f60d4abf067f2b02302e2f2d21e8831c2ec7fc388419c30c949dac68823b2157fb0123c1eb4bdc1da6c2c17d5d132cbb2f952879285b04052e0302047c435bb50066306402305797141ce783b2a8a373bf690b8673f95e0daba7b9df441da24a1bf07ac8cb902bfd2c84d677cbc2b7f63ab117891b14023038abb59d7f8847bc201ccdb4a09da4e4f36eb1559cf583a3f86a4f25503bb05fe5a91a3044856846b675bef4288d74e30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230391082066b804782f7b478fca79ee276da49e27980a0cfcd0a070bb56085b82470ad30c41e2acdb5917fe4d289b06fe4023100d298b4af70d0678e0893439912d69be31f31c4480ddd7d2a06d568d8b2fa980794acdf0daafb146c86d51f40cb0241420302047c435bb500683066023100a21052ae7530284b9ece3c72ffb789442db03b746e2a73d602923bef23c62b5cec77f71191523409c06a1f106225d420023100baa837f9b822bf6e0b4c91c140ea29af521b379b21225e1965161ac5d2f363c3c33f13e9b55c38552c7e56bda8ca6ba20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230746557f4b42f51b5f774b6e8acf5dac83811ee49f38a803859a58fc9a959ac986101ea66059305cf0d0230c8075396ce0230471f3b2eb7afee99a666a14c12befcc633f35c04aa84f266cdfadaffd8dca304705d200ed4ae3c07d21163d25711ade90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304afd55a2338fe073d900b1f2ead781b055f30f175dc6230afd341f5cf27cf3c747341b525eb45887f6a645050ec7deaa02305bf494c223d8fbe755eca96fb8b8b2194b8fcefc9aef73926cee916d3e155c095dc9a03a6c04237710552fcb639eed380302047c435bb500673065023011978956263e457d5637dfa320cbbc43938a8e20cbac5571e61c2935e4961aed6c7778d04ec63d37a5d6061cf6a3e03d023100f92a9eba546b3804bf2964a7eec0ca46f4020e87b85e05fc3d8edb976100195f79af45b24a07c52a1700eead55d2deaf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304e938de304ba4aa6039db67494e4f25d9274bde59233e9881d754f2cd6fb9842e173d40498712de4cd1becd7d59d896b023100964c22a3e95a7a172f64e50c22a52005f3b831caa26e10bcb65bad3c61556cd8438f2dfd0fa5f372ecb7761e9a1542170302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230299cc4c59ed531e83fce64f84c9d463612efe1f88712bf57a1cf6578defb410b2bff3c645814495c98d2977c29d6ff5e023100b012bce9c46e0ecd5ae0eaf78ce0df3dbcc00458edf59b27311dce6c999817a1cc42c378ffbc3f15e35c1de120e5d1180302047c435bb500683066023100c9094e13f2b33ec0d4235241648541cd00f466259efa906c07fea802f4b0424f3b3be761161f66f1e2793e1470526c9f023100f136af41445b2686a14de32b7ebd20077911f89df49cde1341f967fa15b5e1a53611a9d335f4f3fc01c2d34e605cc8370302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cc9d225a5d74c7c92b67db49d4cb5ba399b0de29473b3c7b2434e60401aa7b27e72eb84056e6e6f0ef3204d8860277c50231009d241160af942a1525bef8c57ab6d1637ea7c3364a1b46b6e5a37b4f4cde36cb8692d8e1cc6a0ac43676d32b7949112f0302047c435bb50066306402305c3fe8a0fbeb5f143295b8271efd9e7314ea26aa44362ec484afcd13e74450da0eab56cb835ac9d3b6c71f983f35e206023076a4d4d38387921d8e1d339ee95ee8214968b4854e1b6b930dc30a377df6ba38648de6dae3d4334c0b03eb1c9106a1a70302047c435bb500683066023100ac7ed14b0822f2edf561feac41d7995be4b762a2e5df0b48df918a63c1769585b7f8f61b572220ac10eaa7ef58303ce8023100d00d6f58e3d24b2aedb6fef4e233abb0f213127f4215527caa304a414052b0b4cace007ad5658c7aeb1f0566b549e61d0302047c435bb500673065023065b758160dbd3ffc7f7c28aab7451b1aa9285f99fc0e39d8836c8192889f151511336c4575537d36e89c138bfe6af0b5023100fca0a853751a58f6a38d67966b19b9829cc08a8ff9e529dc58065b0b07ab75e9f26fb8bbe6c30f15b1a2d518657f86e60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b133b124423d344ed2bb4707fa2c8057eb3a07feeb17b894ed644d0739cac143ad61a0a67c5f40293f9363c7e860ab2f023100820cb97582c4bfcd93f1c6316e8f24502393099ab54584d6cef09843808215e7439342b2f097c8278a715852766d877d0302047c435bb50066306402306336d695a0b80da2c8400471f65c71631af247a8d52ccbaf63004e9615d021fc1d976a4339d895f438e6231b007df981023021d2fc1cdcb0472bac31de62026465a66d1361d17796e51ea98ceecdaa415a3905b6f2487016605c354fae13ca44c5ae0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023062e51a439bc25a4f781147d521d4e9cd46182e8292b2688f504247c5b9abcf66aac57d9bf442fbe9c2846f29c1f08f00023100a8f2d146cde44f482d3c97ee31ed52001a79e34e80efa0fe5679e001be0243e35ba346273c08ea72390f2f1116831e190302047c435bb50066306402301e1fad4b354fdeb03fed9c0b0ccb6cfb7a19f8c3c16b8c914986fef0ecceee1d98c27391fe86078e462ee22dc9a023d502301971762d6ae336eae88fe57dd438f519251e7a8d053cea69557c7e2721f683b087f4ae255b2e615b4b5ffad420505af50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303bd1514f309caa4c54ce24fa371fa3d3104413215b84b1300664a601eae3ee68bb29004a0d6169218975f3905223642f023100a144119ada2980ae6a8ad672cf21f27c503957cc27293042710f496c8799b684992f33b48e2a4065556ac4083c0b789f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c934e86d826145995cc45d9d3cbe7cdd0c863b0db807b144c1a241b7ba61978141eea56857e6c9679d44190111bb8d89023100baee1baf3f0d0e00792b82690d6656b9cc3dbba4927a86a32217d901ba9bdebfcea96b3bfacac3a92177c77f4fb7193a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306251bce985f064a0221b220a31dee998740d99168e0ace9dbefc3e71feab20dabf13dd3df66ff40ab2074d9d8dedb8850230497c1a7fe5e0bb5cf8ca6c7dc11579fa2d8c9fd9cbb4b93e775ac91c325cff033cc55d70a7de78b1c97b306817a07f060302047c435bb500663064023005b37d8d2fc9828ea25c5570866893dd4d5fbb947e232090c4ff860ef3ffdd4763e4ba40fa65c538e82cdc70f3d3465b02304218b42ad70d9a267041617a0f8e9dd994ae19c28fbe61a479e3783b5f8869bdbe1ca7c1f472c16f90aab8f747b6745c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100be4989c54118cc084abcccb99efff42b63cf157cce69caa5001ea06628d75817b2c18d52c9a54fe832113384d9e880a70231009ba265e92055d8cb740dd602f9fa3c6d0f0410e6d07c181a86b2964d48bd61461bbdebf5d0b38866546b3d454434a8f30302047c435bb5006630640230166d7caedf4c85cabbf48d99b861adf5188705e88a9192ee3630662d8dd157d6769de28589c49eb88d9355c40442528202303bf1681df41380f16b9c2e1ed1c078ecbff6997d783dbbf556cc8056ed3fd5b8eeea0c960d7fd510d71c4d015080319b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bd797876f48737d9f8816272480097d4747dcb6138b9770d20bfa882a8d1b7215dc9979dc54d00ddb6113f56df82734002302938e97d88f8f350973d896a76dc67430c29d4382ce52d5c3c9493ebcd9d48ab1f9abc06f34a279edb9b775e9df4001e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230168e86160ceac86212f82ebafcc67261c23ecea27c44f7af0bd194c249fd94e24d6ce78f97cda89247fb0bbe3c6ce1d3023000f37cca69aff2943c46d8150d7a181fc29763089dbf218811f28ee1d3e3a76e7cca8e041608aec9f4c5d06ea227c6960302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b5a3d978ad4d40c63971f9abcb9c33f6812a03c1dd62761f2d84934d63d6fff1c1d3b7096250e3dbe3fd02d93db12b74023100bee57d8e340135f4864582cf4c203cfb62d279be211a6b287b55cc6efbb4f58deba9755dd90f3e3d398849c1ac8df65d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230487c6e3a6236f71b054eaf1886cee245077236b0d09716ba6cf1c43251df975ff537339258aef916655db995246e28460231008f05baf458bfcb8d7c2d48245fdb78f68b3b82bb052689e75fdb61eac6dd8d90d329415bc5db4b998d9e7e8664c53f550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023035498da1fe9614fcc1701c1505be88278fa23b35549bd6a3525d81a5cad9fb40aa97f26932c0d799ac1f46584b18159e023100cccccbb4da2f20785ef5b74e45a01d45be3d35711d6fbc40f1031030fd3a4f38c21524796e43840aebdc812dc1de8dec0302047c435bb500683066023100f15b18dfa7b8f92f6d8e9261b137b87410b084034dd4af564e252df8fd756693f3273b059939dde343efe230deb59e80023100c72e5a96a4dd590b7ea17b4a7e6fab212012b0907f04c1c7ed78a993cfa99882f34b34970770efc503183f2fad835c2a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bd9b52758f2c64e71a019d86dcd2320ef5f7af95d5a7922029597de75b38bbba98da851c6418d43e69e56aa7ce3cf690023014d98c7692ae8307c7a3926c0cf5c7796172bf3854034541ae3546c133dea38d5695e5f59f504f5ae17ade362a8f5fcc0302047c435bb500673065023017b749259022eabcf187f84cdbe43ac977534d57433c0d103d621325058a5704497cb58b5009a0ec0e30ad273f15ab19023100e648790e44a279a70dd6aa75e80d1058f38a6215b8eeb0f703ffa06b14c12a082d17820e8dbffae469a1e3ae21710cfc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bf65c5b6778c88186e206a62e49b0c87372df8990c56b087f177436cd1e42900aeab17b6b57ab26fae96457bf3eabaa6023072c42bdcafaf22c1abec4b2ce0ccb39d14ab6075d35fd9b3643da19468dcee2b3633c75a0b9c26d385717513d7f6f4c00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100eab104fa2a128804298e509000b1ade60540903a25561966328f0a433ac826e805126a2b175dbb8a7f291ca6cfda1f7f0230338cf5bd969f50f5bed9590573441885c45e96159ac973d4d694fa500a721a1d8dc02caa52074a9fa7195c3972235e2a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230706461da7f73332ca5757924e576c671fe81fe369d30dd4a3a10d220a095b9613aee6ecd0bef66d287103f3b66b1b9d8023100985ab01ea9c9d46c250b7654d077fffaac5907987ef761ca37ff962f50d56f1150380add654f45605658b1aefa0ac2620302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cf661d7c9adae0d0a3a9c397e713c0f8a1bc8d3f0bd85fe59589778740305a1732a6b829958731779d0a8f9ba939a1ca023100dc5dadc3996d0afede4c189ba7923852d22ba41a0ac6905d2b17de8f57fd4bd719c8f6ab067b2d6ba019ce103ad48cde0302047c435bb50067306502305fc471602d29f357244774023094bf0a716d210cb0224d0d02612e979b79488d5dbd12e6a06041a4f58cd9af73b7f674023100ccf47b89b072b29f44baf53679ebf78f1f96da8919efca82a6e02fca22a4e162b1f32135e3f5bd3887287bfeee8805d60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230243f1ac95f29ed231aad47e758963971e8d8b9b5daa0edf1e87147faf8cae8f088a3558cc098bd656a4cb50e47a0a09402306875405c1c6cdd9aec04721249c485fd2695360e5ae702ec580779333e7551c3523b5c8306601cdd3a21d1921c224c200302047c435bb500673065023100969318015967c93cfc65da28cf6940b891b46aa8dcb69a25f79d8e0cd448dd377de545bf8b3c5ab3eaa339793ff3324d02305d69ddd800dcee49866afc5506acce2e17d58d86561cda47386421ded7411b775b664e58d8ef7677ef6b9a42144710680302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f0bd63827a5a108321bc4f6bc3b17eb71dbee04b7228af96cb39a352e8501024a518058701a33911480ecd352ac4bb7d02307f96584d9fefe7d5694c13d4891c2adbee58f7672c9a9700f3e72b43d96f678a69812f831cac51b65f408c93fe3da6a00302047c435bb500683066023100d9816aa328eca217ed8bd60afb8982072f28008ada9dce08607fecffc013b4264e4db01a30a7fa4e0e2c28571a4a29ea023100d94b28fd3b31ed823aa2a94d7f01ad93e3af647d2a3975a186ecce2c26603d7a8c039264beb91be96913d77a6a1ffb810302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023048efd0b85f9aad63f18606e92da28ea7db1f396d4ba7b78f673129e8eb159c0cea2581575581927fd31562a69cd57cf6023100df061b51eb84df6472391e2616687e51d890f0da8de228089ba92da40bf23f7f833fb46133b182a8b00aa90c1415ccb10302047c435bb500673065023100fd441446d2c5402c60b90152c46ceeaeb33f926e3a1d36372bacaac4a1613f27f36ccd1a1ab4ecfb3ac940a8ed61542802303d89d1296d48a278a4176d597f0c9fbcf1c325c9285c4d030abcdf220b086f41723193455e76c5ca5859a8b11f9df24b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307d760a36309f96763aa087f50f68653db30e69c98e96fe8fb2bf882fd62f0c1e3a862f33563917a11fb79e8f3566cb3c023100980e4f232eebf0de4b5d7f6b6bdc1cd0e21a3d68b4f979e1045ea7e14aeccaa8adcbfa8a2da3a9c65a76ef414d5590a80302047c435bb50067306502301d9a307696d096872a1539bb6e6fe0867cc77aa9efb7f9cb82883ba2508b115750eeb8ba39ffc8c1c6d9dc2ed3513850023100f2663a19f255676f2a69fa51183d702c8ce8ff1836e0f911414e61a3e04639290e2056e6a5acbf03d80b943bad52350d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023044343284b7f5a214eb4f88e2d705579a0da9a39af18ae2b4ab148a2de05f68f40a0a15f4c9937e6c59edbedeb7deaf3c023100ad1609bd3a63aa041e9ebae73d86f83ff600bf277b4cca63b8cdda320dc9156a608509e92f6d3a1f50d510733834a0370302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a2fa17b3edbbaa94681633fa650929458c272e2f70adfcd1a313e68972829df0a9618668081ee0259e7674ac7357d3d502305fd3a244f64c44942a9dd043a80ce39319a16ec5c775eab2b82de853dca84c501a7247c48185ddaf2e2c292145b198b50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305db11b727be8b1519ac7b5b5d2d68f95ba3755b8ffcdd0976cdcd5616852c6872c16d0b83c9506f43a9e202b191d621f023010168ae1f26825f055a0cf43659711395072edcdd2c2f1e103b0f44284e989818f589f589824fb4d2ce2af9defc425780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023026a2d4832d0fb44e852c4ebcd3146ef02151d717f5bd6d77944273fa925279dc66e610ff55934a01b0843abfc968591a023100f864333a265835a3d5e62b70202014ab9dffc740d38527b97677cd674000fe29266baea738065ffc88ddbef7dfbd5fad0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ce5f1bdd81a24595fe78173de5f3fdf0f396975a8543ec55b9d0e91e8ba17dd728a2a010d8e87620411c681e0aceecf5023100e19b5fb9bb7fc3cc7c62bc576e9a77840b4ccf9976d94800fc86a08e99e3070daacec94f03d8bffd3606b36e3207bfe40302047c435bb50067306502304cd0101db0a924e323a06cc40af524039e3c1a44f4e86a6c6a32adeac3ab7244448cc69619c084a8799209f3910d2566023100aa0e496ce96433ee04dd69ab7598d5f2d94c4562a87fe1e0be7b8900d864e4baef12a201610ed10a6126114b9536ed320302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c58855528c925614068c08697a5b15f37bd7642fafb8d3d2688902d89a4a4ba34b756f07431fef4f311b5cdaeeb7e8ac023100bc7b34fd8d88e2881feb95424a43bf31324373cf6eeb09f1c13bd6def56aab871a2415fd922f0a24ddff57e1b61e85d00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302d129bb93134402d390b89d4ca6705c64abf16f699832a371d46f9db812ada91515a149784fe37901b7b8594c4ba31ba023100beefa45dea8f787f81b81bfd59ec909833521d1903e3f0085e9d2fae5cd98785f738d7c25ede2d2f7724fe4aa6a17cff0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300b544b5dd41dc0b894fe7a3528a5450d4059ce1cd3869ac492038f107f6a563cee819bccb3c4db735a7a88a2d16c0fab02301a9191ad86aae66db4605daa6fad5ddbced66d1870aaa20cbc27e78b43ae58665b545a43d0fb1329e077ae59451e6dca0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a363bc2faf0195b7b4aac68f6c5afa72b3924725fa2b3abbece458d37aaca8a100e8b0d817984b41bfc3cb0f69d9656702307f8df3448d93e0aef03402560d04ccedaa9458a4d360e7bfa8611c254e141e562d19582f58f752153faa3917093a4b870302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023050fdfe0993b02546b9dc26f7995618fe9069f46e7717b4515b8411801a763e2c247f26199ca7bc66d8f7cafa795739bd02303ab1cbbaa057ebdcf3e27eb2b321ea45d4b3d24709c572d45cf6213d46a1d5d8b1b5ac0956709394c76ff7552352b9a30302047c435bb50067306502301be89dbed8883fbc465fc2ff4f744789b4640984fd276625b03263defea954d43ff026ab8f187fddbc6369a413079686023100bc8bf44501900faf30e539f297a8fbe4070bb7f9d6c79e4e20b0ccfcb47be1da2ec40180dc0a4d6f8a18ec7b56a3c3a50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100be5420d0a1a0f3a64a9d5e5c042dea1ecc80ad49389e36ae8cf33c6310d1f73cb1b9b06d0fa663d3ad597ffbca76cb6e02300e0fe696d0c1c28c17602ac146f45bf16590e69c1b69ea56955b0760341eb83d928a3229d35b30e3180795877940c1370302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bbdced7d5c06e1a22e543431ff4bc05c77b3ecf9aedcbe13f5909778518ee7995e291ece733f8ee82422c639a31018ec023100df12c63d842e846df1a9b7289aced1e56131547bbcf8bd6ab7980a5dccf6e6cae89ada2a8f49c07b75906973ecc0ba570302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100caae4189799c7202919b108f53cb84f5bbc391ee021c251c8a25b6c8b71e874b6dab7ad5d34cef56b93fb99bdccf3e26023100b6dd7e2880b1e8c84304661e2af6e643642a61b160118c18e9a256836f2af8138b002045e7de43666e4ad390fd4ab6680302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023050bc05b6e04cffed87bb73bdc8b316763993dbc6fbdc2c098b3eb19d96c8ab3552dbf2dadb393ae559432a3516c5a73502304ca77c306fb8175e52c9668db9ba33ea0eeee62a1ec726b1bb7bb7ada60fe180683f70cf8376c437f086f4c3e95e13c60302047c435bb50066306402301031c9f704a9eeec23ffe0f719a8517cf9db1f3a5b45f656c059269204ac08dc6903558513930f31a6b7d59a06a2628702307656df1e4bb053f7477dfc5e88c1a7f49c509f1935f3acae1292ef77070b6c0806000b055d51eb911dccae3fddead7f00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023026ce91bc276c552b4dce719e5d9a20235e7ba73dc105d6dd8c9634808e88059b59f0e4ab6273f47875ac4de5ef62717b0230649d6b0396dcb8b2e8f0a604efae4dde20c98228c23e05f5592780088482a3cef3bde1cd7c881a891ca328d389038ec40302047c435bb500663064023063ed9784db50febcade71b54b33ce8eca197c54bb288e39a71a150af085d5101ccfa6e4657961e1144734b331ed337b00230745c3324ada858e316c1c7869201f273edeed2100379a59fd1f85c1c36c83e3f58e766b66c28999b88e9e06fbbffd6380302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304134b5a2547c1608ec7dbd7db1a4c7b4723e8e8f9d8e0cf18d2d0e0322e40079f0754ad11bad1a3bb4bef740db192cb2023100ea8d7f52561328af4a18dfc07c30dff4df8e56cf2e17cf275751e077ca816e6fc5e735affb56597ab84f42924803427e0302047c435bb5006730650230521c7061d6079359c607507c816dcf9ed2f375234acfe82b633646cc50bf3cf09ae57e92b945952d5a1b759609ee4f9f0231008c9bad0287b8803b54aa53453c78cc71be04e1a66d84b7606443edc7e7ece8f21f188c507a5d83eb13629649970c5f440302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303a8095424925d980aecc9e4e1ebeee503e875306abf93a2461786ff28740f798735e02e6f4a72c1a8d3ee959821f88a0023100ce4af145f31d56bbd0d12722d46ef68b39a5d43b436d9cd9a829a2c57382a288afbbaf015f3475918b156e4c682781d20302047c435bb50067306502303e85d6b50a35b2c4e552521c0300bb205323f694e00c3d3194c4cf36dce9fd3e0862bfcd95dd2acfdbbd11ec3e85443c023100d0a03cfcb7595e00d71c7afe554e67d40f9d86c337c3a13591c2199172098fc81370f4cc41cc8fd9c3a875aef7d5785b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302f3ba4db0d3eb4f892f488949362c7c9c8e7f54ec721143b549f820e1a1c049433aa4cacb71d0a573a49f4f81a92409e02310090ea0702abc89d826c8f3a4e81003f5a8517dc8eeb3f08880571ea14e834e15a91a6560b79666adda068b193fa307fc10302047c435bb500673065023100dbd2de84e353781c71dbdfac8744d7311cfbe205cc1d99c9a2876e3b64d2c1b0d3e68362bd6217a672f374dac05c731402305b5dc7af7a7f44b89c38bb39b744d2131078701cb7c61155b153e6e7480129c24e226ba0c0b0159f372a499a3d3442560302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b47d98d28a4b20ae15704350a35798185a2bd06fa48dc33665fbd9bb0cd42cadaa6216b029ec0523010e825f313b9f5f02300d339b2e89b6ab2139b0506398311ede0e9e5b941af4926f426152ae7a6b1c7c7864a12c5ea58076602824c348929cfb0302047c435bb50066306402300eb698e6c1673c53a7dfa7351f350881281db3f9862273bbb1c8dc1122d31822e0293662f6b3b9da3abb4ce2e9b83d16023000d019a33f164db95974b51e41b35d451c2c2d1e3eea7c52a8234a35d9baa9cfc47390a794b622a681e15402d76e5f380302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008f6bb9096062617e87f3d3ec242b4ca328c442f71aefdf8628a4af89dfada64bd13e5fbe4e4a5f064b7e8daefec8fd74023100af98bf2fb9e62e268d3567912246cd68b2d7207eb82da21695d8e80b627908856152c53e0a520af54c1b2777800fc00c0302047c435bb5006730650230294346ac7b5099bdbd347ca7d598799db622e96ae08074630e53c7d24b954b15b6e459dad6746eb13601187ec70ecd36023100b26c177f91243f054656249b72070ff51cb7603a8f9363170d8e75fa835688f5b649cadafe4a367947092103573c4b960302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009719ba449ba5a78b2f323d6c32d0e06b0277f093b72efaa1675bcfdebaafe93ce06559bb9dbd99055baf492d5703760302303d4ec0d3a0673d72eea147d8234ac4ba0188692857cbcff9595798fc50000761ff5caef2ecd31b07bf06dd17e8d514410302047c435bb500663064023015b0bb362edd65d99f50ac7f1bb12786206d2a47a5661970e602e0b3d6bec6331d161f00f97ce25278ebccf5ef06c2120230631f190f76d336ad6d7f4a93208ba1d74056b8dc0310b043092f3612d689d9e9f312d4f73192149d06f286be8d413e270302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cd7b05620285e21399babfbe55f7f4a4a6200316238a309142ed111092b0fbe83196dca91aa9851c83ffb1742917ed32023100d5e8666238c8ebfbb3dbf5fa27ce047f71d1c5a1a3595d16bceb57755ba158809fa6c8245f7043b58219625bc4ca451b0302047c435bb500683066023100cc5f892d84ea4d9c170ebe1e2287827a390401d7e3f7375b5c89b01ef9d08db85bf0646cc8153fe8700362ab8fa7f7d902310082cb94b0412fbaac404ff678997c9cc65995b62ce27001f20bde713a7f954b6973457492116d8cc76805049b6e17bcf60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e5c76a2ffd834292804bb04b1209ee47ff53d3300ff0a0c1ba681aab8343eed802f61115ba6f2dc3f4ff38ed8155becb023100b4ac4cc67899d7201bf6a1734efeb5dd88a268850faf7fce694c066e861b559e87abc1ce9d129e3a597a1bb2f715830f0302047c435bb5006730650230354856cba116d52b6b30c3a1c35e9d9ae1ef924b13e6cf0f1c7b193cbb5fe4a94ada183cd9be5bfa4fc1dba5aecd5507023100cd22ae17e493f4c3a3b3bee2580a7195f6bd1f430e62062d5fc3473cadece1835cb0a82c19e4a321176063f79fa14c340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302ce65685677e8aa9e2bb4fe01bc298ada7ee8a4a251b0014fbb4f9b0e42d4c7a699941b175add0abcfdd4a122dbc7eb502305956a2e2c5d02a4fb69e3022c4ab64dad1b9f1ef2478abb14052d7ae43984876d1a025bade1683ccab55cf030b6d5a110302047c435bb5006730650231008631670236920baf4b9639e4e60f9d924d9da5c62ae6e87b15ff2a445ba5ae0bd88caf3c2095d907a8874b8a44ce0dc002300a9fb24e6dcaad3b8bd65b316cde1fac0110ba8a30f735fb52839c0d074706d828452109bc3831b699174dd37e5567eb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300af2aa748c9953a1cb9cadd84c7387d1750446b24cd8fd1017f0039c74422dcb605240b7ce2c566972d72db8f5eae82b02306b2b7277185d462a655a7223454760b90c1c28ad64ab24bd335de38c39772074ca453ebb55151e4c6708d59b3f6b47680302047c435bb5006730650230193ac86ffb84e2f6c8955325b91483fb1bf9e9beb0c1771439b614d5d3895db0a7c5a3dff6177354590c4b2f2a9b2cd6023100d69a912bdd892e06a47195963d387dabd8220527f3431e2f1cdcd4133f1e7ff1c81c652b7013f520189cc229182b3dcb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300af46ecec9272e91c7259e8ef0c2054b35fdec8994a9e0f8c45018f17c4cc984e0df4a0b1ba9ad79fba26c3482bbfe98023100d79d72bd3a2e0700d7c7b6e430775d5676e5aa08d556fde5d95d5ed9662a6a26281b7d1b268e9636174805822bb2121d0302047c435bb500663064023015b59e4110091981d0d486f715bf9e26dc08898ca62806de3f888d0bccdedd5646b944e321b7fd17966cf23a5e401b5f023006b7f27e01a9aa8169b3b9509a4216dbbd0bd9db5a8de0ea3fb951976f0b594471c29ea1400a06b5ee3931abfecffa910302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230626c4b7eea524aa032da6d0a516de5cb10aa4f83917509bd7cd84e2265230f99b983ded566db7be683edd00dc4d90dfc023073a644d562ccff182d207b09181ba2c4e81499d0e20730bbc4e008b4db2a2b7964705b5cb5dd8de35274769dffb7ad780302047c435bb50067306502300da642be211fbd89f431c717ba52d8da05fd18376907ccb7b1171b431bf84beb225ba54d97f00dfdc6966d0d58c7af61023100ece8ad985f04717fd60f926274a3fb13276064a919a92cbd5274338e339dd4966062c77dbf94ba36797da0e92031ac860302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023025abedfa58fddc7ab3af336fee35f5a43bf89a9fb0b51cf25f902d47d8f88f467192da0c28b1aa4219829737f53542d802300b7022c778ddd6d7aca6aa2a9b06f9ad7c8f703424d2473b95b086167de9f77f7584c0ce84e2bed727edef19fd0001d20302047c435bb500673065023100cc19307cedbed6a4fb215076d185dbf5420632cda21f78f91eedc1939bcea948c5f53044da30509c898e8af2f0ad0c010230745698e9c471ff60dd9153c4174419a9a36bc0d4a79a9d8f5bf41bf4122c6bbfbd35b543872cd033090339c0006057610302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023067216621ad694bb9ca235ca86a96b844ef1fbda2133fb4a80e8d44b9829ecf1d65ff2dfc6ae380ba456099735893abda0231008a34c48e790a8a413d443d831910a18a713b7d4729ea2bc7133640c90147d6598f88ff47ef6f145a23681ae3eda51be80302047c435bb500673065023100ab218db33a884df03cfb213980be59c161001f2e65b1371be0c1024d03fc856ecf4989c58403eaa0ed221dbf9d681ad9023066c10f9551687551eba1c013339f8175fc84b1247c1414bb93b11cd2cb042d8241a446ba1590b1ee1af2881f1b38135d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100efe4379eb13f4e41cc8cfef287a7fbc7c872213bf60b39beab217c403a17388381a9d7b816c7c61c21bf21741338137602305da06d3188e672b25711ce6e43b94ca5b3f32114fdd3e389aedafa01176e86bf569c0f6ba1f708523c0b71bea904e4dc0302047c435bb500673065023100ea6cd86ef054ac45f1cd5dbc8a724ace27635459afb6cdc3d01b5fbe23df164e431c0e163eab7f1e7c78e373196612e30230323ffeec552462b075604d97b2ea8b65b8554d32f90269c15b1f3c64071171de19df90dbfd0141fe4c28e584f20208630302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cf5f6789af474f08bcfe8fa333af96c1b70d05a9a96043ad02b1cbe17e8f927772c65e23701cd5eb709d688989c35a03023100e0e218efc0f2a2e2015f8ec43292f64675239964fc9145a25d4f5c2e61ac91b5d18a55e6bb52206bfa826baa769be50c0302047c435bb5006730650231008dd1f02aff4961518778f49f03eb2e4b16c40ac2acbedef924c86cf24f4637fc57aba19b6a3bfd6b5fb8f8e7e8dc20a9023071d1eb0f3849e4a6e68cc9b692a33789db19be8794bdce52f4e46a24b834ef100296701b1ea83998581efcf28827fe7c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a51b34fa63bfb52bf0d8ed414435dc3740784de880a08e07df6bacaa7bedf149845aef20b4878fa2ddb534bef3b82361023100b4b8c04c9553d293d93535d852ae20423c99d41546dd71eea4656c2efe2e0e1419a61f381349f585da0b49a0e365c8d60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c9dd4e0fea74562fbcd679cbda629e32c219276be43a629424fb9a5a88615deb2a04cc222967648b0b06e7297aebf88b023100b41d09bf2cf745e50ed2213b8a5551f4f4b090670aba4b03eb1845d2b8fce667f52eb0abe6f401de9015505babfde1670302047c435bb5006630640230378a6e0a752fe5b275811bd6adb9072a03723da2bb82a6cca694a86d6430e42830f6f2c12a8798707b63b5f7799d42c7023077702787b049e74b94efa7fa283801dc74acec197cdc45cc4fc5dca95e6ee01cdb4f4f9ec140c39f96de7818eb50c2830302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f16ec85ce8f10965590ce480fc72c6d4edacc8ef1a5d0345a45b7565bc02ae05bd63d11acff73ae16247dccfe5c3505302304f36eb54be0d7a4798383bc08806a387f3a5420fce3d62e6c14dbbb70d87c407faad25786b2fe9b4098d8e64cfcb24340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100984aa985a9e78e772f3948567cbeacbc46d1f71ac8d3a9b56b32d0bbb5fa36f3cf96b7c226468ab37eb120f8f9190da302304e919b531589290b253a45e252c2367f7dc7a59da2d21f70ac69b6b916458fd73c2b99c6263c04ebea6582929647e0ef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d1676e562f314bb35e61696a5ae26325b7a282f7ab71ddae344c8b358e24fb46c3255e4a5b88cfde1ba12d6498acad95023005511a4eee5fb7284897ccdc488e7bc9d481766420b53595965cf5faef435288fe2e02abc100cdaf5e111cc4b61c66ba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023042dd39f5d67b62956e0395b2e1d6a389cce09c9410b3da503d965447a33da3ccd6c7dfcadde57e3da83b6241835e3b1502302262fd1fc59155ba3ccf86dd5a977bd65322898900dfd7641381a331cf6c691069ae13927904f991043aaa233babf1410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023063d3eab31d8ad80eddbfcb3b7daaba6af8713469190461652eafb6c2c237d4654f94f788e68781ef7b51f8da5fb95bb70230722b949f87254197bb896455c7dad59d9efd7b69130349a953d75e14975c790d7908d52f74201acd14cbe6f9f8d9dd1a0302047c435bb500673065023002c702bd916710e60256ad738afc791fae8696db10174a7605dfcbfcd343d6c592eaa4f6b2ebbf82bab83160f04fadf7023100a32aed9c5f72978934e497c57a33952e12e44d3c653b616d1eced81a41f1fe49d070529bc7f32afa838bdf1431069a3d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310088acceaec1f310637ae6cffbc0325e64bc09711b3128f564d004005af22ca18581b0fdd268a55f53eb2f0411a3456967023100ce3c1f92cad1bb1f2c85bb72823cd3285cae86acbdfc1581302acb41c8b547b646f756670753a1906489279e019595b10302047c435bb50067306502304f6246a12f1f520894300492c9ce294626a18e634476746b8696b101cb93a4f8739853ac777c44920f3fb1770bbacff502310082444e506d15008f494c9383a06874bc6cf7103f96b79ebcc53008dea3c446b6b5e672692d33a1f0ef4514bad2de711d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c38536d68da7d40f813c92cab75f8f62f17caf347325402a4f1635062b36f162e561c2b78188c781afcfbd92cf2e8573023100b13ea139553ad4357971f62cac04a2d482a340ab366160c9f80f03982eaf304372ad3b6366c20ff6dcb488ebfcba89770302047c435bb500683066023100b956662c85e62e34fe70685806ef3e858eb274b6048e2010ab4b5d007dce84a912aa4f20c17a9a85b73aa1b427db118d023100c35ebc0b45b93d74fd2b26f974fb2856f55056583106df46016d2cb800136476446168b80e8c767b7bc23ae5b8c8dcdb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307a51123d4ed9addbb6ed5a6c43e3dcebd0ea25a49cd20b4e7be4d129f8783892e8a1e09ac452ee10248d774d5017b0db023031b37662146d9983f514d49e07bfefcdb162403bb50bfe0fa36effdb8ec3f4bcb8743dc67897e22aa9a973eb9585d96e0302047c435bb500663064023036063499feddb1fce1a7ce596d200ab384193ebc67d2b042fef1f3e6a5eaba506cd73dc9c97a860be56613b03333131a023073c775372fa66e7024e4fcbafd9ff4f916f1683a501f3093aa932afb0c4f6427659822b2e39c7f850bf4f1a3aae7b2ba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023059a64ece86ea9a5eeb1f5af5c930f7391d79a3105a1d97a2470e0d9d7638d0fe3b28bda319ce9987d8e09479baad139e023100da24b0df37091191549e2bb34184244e7ec17ea35ab89224773c30ed07bb2f8eab1537775be7ed115eee4c724496fa590302047c435bb50067306502302713294e141d3424eff3cf1aa6f33de46c11f5ab4872bcbf25eb27184400dbb10a633e61976df379d701d4fd9056e7be023100b6d3dd2cd2a77321724229ad2313ab3e56abcbf8ffe6279a8606627cc5e9265f3aced036df9bddd02ddd2b67ee0c37190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f07c52598559bd2b2d9976ac7d757d738285626e94a07e67087fb6c61b44841cf5f59930b3fc6a5801928d5891357a5a02303dc4416212b69b14b54205a3c775055998b8e9f2d7a7c4aac1b8f0e1757ab9c34984d09239766499f01896072055790d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305f07753f3d1298acea406d684b6b8d250be7644a6a267a4fb1bca4085f3c2b4f2e8a5122f28a1541fd4a262a1f9dfc48023100c2e16f73124169605b0a654455563f797e45ba20f45bab7438f9dce7458fbb26da96cfaced9fcc88801cca5669f5ca760302047c435bb500673065023100912124f24e7e5b2369b8596e5bc444546855eea6a3e61fa7890b5c47c65f956180483597d459c4c9d710f8b48207b52a02303713a4c971543b2653d386156e18fa21ce7f4da7f3e78de0f594a5d64a99dc3c5cc340086e53c541ce6b4d84c0693a650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023060858006db8d60a5f4c0a6bc034e3d0bba75761fae712f0779b0b7209d6f73930fd5756f8c0704a7e0652b1fb3a876ba0231009eb6d16835cbd86b8f39cba95c41f40adab459dfa8f4da48f7349f9eaa00ef47e32f657c6159ef2e8b5e3910b25e01460302047c435bb500683066023100b1b53fd36206b6a3f32b30f0d5bb7addfbcf4f1fe5f407b4e9dfd9ec0900d4042f8d19474afe5ea8523d10acd7cafde6023100e8ae64064fbe70bc096575b57839410514f6b1c2c2826320be5aa474024d231351d79462d6be7c58598e9c797854a3a50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100995a9e96543c308672f35df27a570220ebde5bc4f7439b3f0e1f287a21d5fc13f7da9800015dfa6d7b87ea403ba0fb7d023052448aaa877d2d319a734a613a21df2fb15b2df0c33a3359a7fc40f6161bdd28887bf36ce34294568fac9b06c763fef00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b09120ddf447786ce27a07f8bbae57f14dba53a646212655ab775dec8431a3e5c5d2d71c3704797e428b2da443941adc0230460b796839a64288d7b996518f2e2fb9229ec6a0df56578e5adc9f68358f64909bc891cf0fa7cc5979cb25910d8d69510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300f9a641580eeebb4b457c4adb608114a864393ae692dff11a77ad8f00e742030f0927eddba68b3241e1e560e72a7a28a023100a67e49fb429055f3a7de8d7249395ec142a3c8d064785d61750376c25f083b22254d7e6e704df08199bd39783813ee220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310098000a66950983bab0282dda4da785b1127a81dd3eefcfc92ed0ace156e2a7da13c3761dc7771a4aeadeef970bfc6b77023100a846d20e2f3755db2aad2121b3999209529ff5e868327f3c848685c88888cdac814fbea0213b4192ec770f5b8ade29b00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f3b15be5cd99d61d610294f65d3af35015c2d50bbaccf3329f4d2d66369dcd909f54825d3873cb527c1627b263e98180023100c3d393d15b71b7adeace66fd08009e37741e8bb80ae4a1ac99eccce1ef2b541427ffe308821386e7a0b85a975707cdba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230251e17702d771b52912e666c0e7bf8380d97153c750d21d24a7358f79871ab9d2a4a8e18e82a5a24c3b3dbe34468604f023100a3ffd05a68875f7ddc6afa7d4f8abb75a16780c214cbbe7f1d67b4534e54a767c23bb170e9d4250fc9815b322a9eb21f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e76341640422bc31348a3bfb11e702a37cf12fdfcde694859b6c8c062a4ef393bdf9deb406448b44b19fbfa1a44fba7c023100a9299a1eb317d0ed4d98a5fe5a485a5397b0350699f3d6f3430f55fd30653be96ce1841bf90ca2506139aae79bb85a820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008ce34c9b480e2c9c86c677e9f96ef2a169582c9a32925a2b780dc72885203d18539cb1726609a7b2bdb648ad5275448d023100833a3edf3b6f41d5ae0f7ad363aa4de4b80060bef3f7114681ac6cb7ae9c137d66ad7e2820383aa8e92d9f67eccc6cfb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023079f50c1b987a178b9da7a5d95bac01ffe0d694285e4194d079993b4646318eb5ab52fb296cea01f37037b2343ee5752f023033dabc675a25fc3fdb7ad52b72253f3afe78fc4f5c2fec21a6ef84a4930bafffbfdea8d5a7a8718ebe6ec470765280890302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230042ae4b0a63d945f12de24c49a02742b9b17c35a36840e4226146f11d5852d7a92a2d01d3c11ac2effced1aacf23737a023100835f414061327d2e48b3f58acde0064331f60d2d94a88397ca5bea4572ecb0e4f40459bab4d9587eedb41d381113c11d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023061eb4ec0f2c19515fc3a1c38056f6063152987c61f9a8e4314c90ab69fb9293560ce63a5cb430289334d750a7070392202304ea0e4bad7ba9977eb3c3d5799fe41514e86859762d77f6423324164ba3753f1e7b6c50192f2a8a07e70f2b1c5817a9b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023035ffd15364a46af2ca76b3f351e375780d49149ebd42f2f69f893a3af7eae7661e0b44e2dc20f75796a82807b0c220ed023072b85cefea19e84a7b6f8527e3d6ddd9e75147f84980c5b6f87e32ff4a9a4f8281da03b395c61912efb3b6dce96eeb0a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023025d2c2a7d2a58426e1e05f58d4e848210833547e9c61171f7ffa65f41dd8c7bbc98e3a97f6fdc85a5f32d2b7fddfc1f70231009d1ebe2afa0efc2fbc6c4215ed87a7aaef7f289b9e29dec0c0c6c99a9c7297f4c5dbdf89cd4487e943f7aa14a416a0c40302047c435bb50067306502305f20c71730aa8e9ea3fa6a27f1815174fb34854346fdc70c7192e9f7a391ffc09eddd40a6ec00a4c3f94fc1e774d30f70231009940e90217cda1ff96245c9922b3cd249ce60a5f841bb23afec7e5e762b53030544696691e4b45e79a97c9a3a903a9da0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306284d7d4a574336b4de53e9de4a77982b98fc39e35b5b2711f1357b221f4d387bdfc8dbe5bab8727ef6fe81082694ca9023100cd2423e5b1aac2b507d0d78afc522fcfbb29c56f26082fa5bd362b51fce8b2a26f19918480d90646836049437311126a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023069d56619d2515ff59ae53b42634fa2672d3725cffbd89775262948bd33e7b1a39390ba2741d8f48dbe817b82789a4588023019a5c7275ac5126b519fe41bd21d7cef5dc91b7501d1015f0a456412d9dfc6789daf630495dee128643145fecf3a0eb20302047c435bb50067306502300fbd6fe6e7fef8b6488f80966a9dfbd3c616f92ad6a942055d9b4301e9ef58e83a09ec305636209dd57ded216a1f307d023100f648a6c5f14bb837966c578018b562008597629118c4f1d92a2a97c053fcf04727974092e0dd60e56d5eea65d87a04a40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310092dd794bfb024ab1dfd24c788c4d7f6636ce2ff319365e154d6faeeff35434ba0a7f023e820a47f6cbfc1488cffee8520230503cf6807aa05067f064dcc651a62ba64776d0fddef6af66832c9f2a8c467d6d995f1cfb10cd8a3df7e2836b3fac45ca0302047c435bb500673065023100f10e6afa5ce8db2e4e6b8b93af27432ef3901dc0250f95ce1907d6df9f816b089d660307bdd07fa8fbcd4183b149914402307bfaec55b556fd0219710e3f6f0b2c9c0c4ea9b9fb4ff0044cfdbed67e3016cbb77d6e0be459f857c5f8eb66249533d40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230458564e9a7af6a41c006c29a30844c6d1db157ba6cd0046beade50c808ae31e37ed16793509f11a231b38c6bd1dcacde02310084c49e565cd26d57b97b062f42320eaec02c5d781943f50c865175a560b7dc70a8ddaa29ddba84769d5c28c0893695fb0302047c435bb50067306502306dfc0553665ab2f262cf9b060e776480938828cb349f036b36ecfba37224bd0f74108b42789a7a4a3b9e8a403d57a2c2023100ae41f9ceca015335c245f72ced7d6b88e8e284ebf9e821540c567d337a9d84eb4de9516dc6de301aa8ccf163623382360302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307e92de3468bb43a4c0c99a4835f4c02db85ab388d6ab1bcec300a440efe4cc6d9b9d155e6373351b4628c45eabe1bf4c02302676a695259480e412596bdfca763df6abd5fb07252ec642429cc64257a77bb012183dcfaf1acf445fe3f4943c6ceb4b0302047c435bb500673065023100d3e6f38a6c9474dfdf0597c520178c77795ae581321c965b9d524d6956cf1db3fc613950242225ec023696eb484e533402302ca241f54878e8c3854425ab44680e41e813fc0bed2fd56dfc49b4120c9308a4f85bd0e2404b53320b3cf07df99183120302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307593fc9c9fd7394f136672f55956f9b0038c50fca30fda6a2d8ce6e97fadffcb7783d1758aab21c0206c70ed09f11123023100f08724fa61584c019bf08fe73d3d0a104334abaca3e79c6a90cb4c0b0f636fea73023b8f77472a7d2d4c3cf7454cc6ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307593fc9c9fd7394f136672f55956f9b0038c50fca30fda6a2d8ce6e97fadffcb7783d1758aab21c0206c70ed09f11123023100f08724fa61584c019bf08fe73d3d0a104334abaca3e79c6a90cb4c0b0f636fea73023b8f77472a7d2d4c3cf7454cc6ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307593fc9c9fd7394f136672f55956f9b0038c50fca30fda6a2d8ce6e97fadffcb7783d1758aab21c0206c70ed09f11123023100f08724fa61584c019bf08fe73d3d0a104334abaca3e79c6a90cb4c0b0f636fea73023b8f77472a7d2d4c3cf7454cc6ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023001d1fc6a1c2421b89827ba27452d600af79f1d02b4ab4ab3f2d046a7dc81cd9880e5b625d9eaf43064cf1a40fcd5c17902304450f5bcca3c282064b3cff8b541eb8ec97cb2071ec999848d0b4f9fbbb7a1819e3b6c340f0e500df18e16f9e43d1c180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307593fc9c9fd7394f136672f55956f9b0038c50fca30fda6a2d8ce6e97fadffcb7783d1758aab21c0206c70ed09f11123023100f08724fa61584c019bf08fe73d3d0a104334abaca3e79c6a90cb4c0b0f636fea73023b8f77472a7d2d4c3cf7454cc6ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008edd940d2c67eda98bc6b75c051282acdf05a3f9de256f90368a47241147e673763baa41c742462b8e5b09a68e475602023100c66fc70af7fa2c184c812df773af261d274064c840eccda3e4b04801acc1d80235fc0881c90e89853aaf7002e53004ce0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307593fc9c9fd7394f136672f55956f9b0038c50fca30fda6a2d8ce6e97fadffcb7783d1758aab21c0206c70ed09f11123023100f08724fa61584c019bf08fe73d3d0a104334abaca3e79c6a90cb4c0b0f636fea73023b8f77472a7d2d4c3cf7454cc6ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307593fc9c9fd7394f136672f55956f9b0038c50fca30fda6a2d8ce6e97fadffcb7783d1758aab21c0206c70ed09f11123023100f08724fa61584c019bf08fe73d3d0a104334abaca3e79c6a90cb4c0b0f636fea73023b8f77472a7d2d4c3cf7454cc6ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307593fc9c9fd7394f136672f55956f9b0038c50fca30fda6a2d8ce6e97fadffcb7783d1758aab21c0206c70ed09f11123023100f08724fa61584c019bf08fe73d3d0a104334abaca3e79c6a90cb4c0b0f636fea73023b8f77472a7d2d4c3cf7454cc6ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008edd940d2c67eda98bc6b75c051282acdf05a3f9de256f90368a47241147e673763baa41c742462b8e5b09a68e475602023100c66fc70af7fa2c184c812df773af261d274064c840eccda3e4b04801acc1d80235fc0881c90e89853aaf7002e53004ce0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f420b2f651227e7b96cc95b54b8f7a18fcab1c5964565ed26f5209a2af45329bbb913419ff3d45de626490da5f471086023100b0d885869dee4edba67489e563de2a6a9cc1cefc27b9baf70c2c2719e55d91c67b1c6fe0e4dc2489def9f46dd605dd0d0302047c435bb500673065023073efe7bc9d680e189d2d762637f1b09fbdd3c92761554a7fd4353262f6dbf9597f3837a48cfaf6a0e7ff5b253573b63b023100be2fecba3898d99b25fd875c31df15b96aec41d52bfa2cac073095a8f6f2f00fbe339b1a63b548817d3a4cd71dd717170302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c9ec6a4b320d4705fc98efcba1961e0ed7074fd0bfa7a766009c3e7c2ad11364c5c519fa1ef57b2ea40930177732803c02303c84370d80e93ab97cc85576f95bf2a3d6301ad7eb2fed218cd7ea7d3df2c733330877603fd33964a6051c82674b00450302047c435bb500683066023100a68ef1c993068b8a51960cdd3d11f1fe546763b1feb2d3c6bc8fd4f3ab814af909abef4915d6185004b01a3c30303567023100a793ff56a973c38572ab845e9bddbc25cf9578fbcf835f16084fe0db3bad168ec90f1d561e987d71bf66c9a702f437be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303e14c8b9692d7a3a720421c406686826cd087c18f7198cb03ce5b465e97ff882d521f706f087e7b4ef615cc540f23ba5023100cf67f761b30a1b441286530c861417a9caa54f9ec93fd9d1f63d4541d15b72476ea28646c2cb5db796c5a4c63b6b9aea0302047c435bb500663064022f1068c269ab8bd34e2973b27317e7a4a65eae24f192e059b7f2ee65bf11bd53e6b2cd319980d80c6bd96a2e6103522b023100ca0eebb44a853ff317cb88ec585bbd04bb00cba7d621ff6045ca31b08a61386e2c7b834363e1c9856e8ce2c0db0ec9340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300e94a40ee5f3bdb1392186b8e173468191252df8e66c60e22abbc9bd3bbf617f9357a57af6f58a2cd8c12e5e05cea27b023067924d4978035df8e0549416245c5f0e88ce1f47ab88f0002ee1f674537543dffbef7a2fc9052d2a50b7870e3b9b592a0302047c435bb500673065023058304496d4be78899c365ffdbfa4886df7873b35a544c0b0d76a76ec5624b1db33c52a9569620d4f5d0b1b002b9f62dc023100d3c2f039696ba62fdc037ca5f6ba24ea501d1d9a74ab824d610ed80c49f01329b3ebbeb00fecea1ef1847f8fc9954df80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100823b9f1d836c8fc3560abc6e085a33e783875acf31c04431aec6237fd8fd8e36a032faa003b207e4c4e0fddd7c9100b0023100e2c6bad07503442be1a281710173260bd02b7ae7597fd9d17cc51609d3e5f3a06d786c33299ee13bbc33cae7ea7002090302047c435bb500673065023100dc7542cd131ae4c42c59efea2a4890ecdf91a405918aefc7142014c8d4426d3f4baa7bcd95b3bcb4c71b06708d5baaf802301e43bd3b720cd4d06851b9057bdb207de2c2e508e56250d050fc10dd682145ea8665b00b5cb313dc0df59f71dae096e80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a400f9834da7551125466c22e8a4cb48e5dfd1d9a7b8b4ebf0b4f947cf960b14da95df93b9cb979d94d8f69d3500fcf5023100a0b08f363143e670b132240f5558526e96c9179a6f8897192020c3ff57cbdcd7f937b511b7c9d451fefd3f5be5feb04b0302047c435bb500673065023100b531cd2c2eaf93dfeb72e11c6ca2f2c1e7b3265f41f367d662eb33b2f5ea244435087876c4d79b659607935e5dbdf98802300354cd10b6ee2bf131bc6921c7cdd94ca85a1e1e88113451e1b55569880dd71a2487d169f896dc4ab655f486f8b69bfe0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230320c7173d0eded3ca578566abb3719ca4f33c1b047f52e1fd0acd5062aaf3d793d2b0bd415c18b98879d7f78ad1c6587023030cb8307fe4be0ee812017be20a56b5b8188f86d59d5e94567bfeb2fcdbff0900e8823726b00f53c484ec8e1c270ee0d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cbb6c3e9ed3b6f1d7ba8202d6176ae0f84532754312aafa50c4b59ac7b0c3587bbb227778db491d9007a6d43740c8ab1023051ab5df3f05722c996f8f4a086c23a3850e16ff137669b6bc04dfc6d32b48380d1ff60bbefbc6b343070f3691efd85ed0302047c435bb50066306402306b787b92419dfec2b0d21dddfe053c4d0d694594e1a5eee48f2e5a7f19cc2b74dc176e1463e040b51500f5f0a03c5f5f02303fdfced27f135c820aa2ed5a86744be8cdab6a51bba6e44a4988fd964f8b1ed7a68d797b2ccf7571f827ad0f599a32550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c0e3bef29f52ceacff7238b63dba81486d13b0542bc2546a2e38156aeecb1c5fbeef597874f83d5397cc51a2c019b2f7023100a409974e77d6ca7a08852d2d05a3ca67e724acdadabfd13114f364f536ead35d8b690217d8f9fee0f166ca0eb82b099b0302047c435bb500683066023100d0df35d6e3610ee6fd2d71db22d4cf76e4f36a606443502330e822f0963c98e97c6c5a954a64319da5e7c826b84c2e0f02310085f53e21e9cbf8a128ae724a6dccbfd1de0318b6018113af2a7fceaac0d43e15c73a40709611c20d360411e36d43afa30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b8561af581dbe49e5ed642e4328b52e41e6f9d8d9148a4f30cba4f41d5d7bdf11ddd62c5bab8d44774b10bcfbe658cc0023100e64e5ac2a1314f1639a5e52e7d4d3fa0f12569e36a18fb295a4a8cadfba1a5343f922bf4133df7cef5d97ef394ce23200302047c435bb50066306402306fa0f663f53c0069e94056248b93dbf80ea3aac9bbe2e50a01a981809713a9cd33c2b8da8ce8dc9b131aacd71edf98d902305e32f8fea0f92ebdbde150c3b0e5b8101947eeff87244dce0f40cd8ebb9dd219e0ecd651e9b02280c9c9e94061707f230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023007293555ec7739f10f168a14dc53074e4c68f25646bf7680b9f249d4b482c0869757bc749644d20dbf6474a5d4129e2d0231009ba4feb5ca40b21fee697f0bcb99993fd503d954f0d3c3e7d93ece3a4adf8daea1038aca1be9b02d572bb023924c21ce0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008a56382c3cfa49fe07869ca5c4f7599cdf52621807da3215d69f0e5c3944e758f8777c05243a2543b3534d130dfcd0e7023100ea46015621dce460f03b8fbc3d6554aa00eff37cbe17b9c1fd5c929612d8f59e663bef7e193d0bbd54a80c381f381d4c0302047c435bb50066306402303cc3d1cf04876997f7a21c73f986b8ecd63e1247243490b2d12ec666d38442d9663554f463e0545e81fa5acd9ea04e38023073c8e76caa3f5bbb571df8dde4152f2a9b3b7f4ed70ec9a2e6fea7d2a3c793443d7c68fed6c6e4db0c4c36bd83b3ac6f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dc60f9a0605b93fab6e04ae336ad0b21a8652f75765cc26576bbbeb0b28a70781c6cecab5f7445445f14ab3cf1f8ec9f023062d43eb0819e34e10fd76ce29cd248d21598cc8c01dd810b5115185c809599fbc73c0ffca40ed5b1a6b0ce2b86ba45570302047c435bb5006630640230424be54d7a16b191418d3e96d05280b0556c29ed59c861ce83e3964594f2d4acdc41b4f30c46a67c69f0333c850c10dd02301411a65c87cb9bf468484edcb137e6c868e5c1fd7a6d1c4caba1fb0ccada81078c239f0875595f257423c86c6921e51c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cfaa90b65aad91b6590ee0c36062931064ee41cc166ef064983e5c0545926e482fc84e725cf4cff9e090669cad505df502303fafc677dd7957b5e024c38a1106582aa3608ccc2379d7a6400b9c0848de959e6e08f2ce98a5a6851f8e8a023cdf398c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008133db5d40e8394bd31389150cc55af7243404bffd0e080fb930dbbaf0851c5767224ff68e26cc37d1741ee79c5520cf023100ca5a65bb7ebd9ff7d2e478ff148bb06c6aa2cc42ae12119f34004848b18b688bc8e64209638d14532d010650c96629660302047c435bb50066306402302e763eba7f7ce32b8f4c45b79bf46c20b626d48122c45c2b9bec1e154e22a2908487604623c7882f8618f1bf3139381a02304999299e1576d772f377e3af48502ff411093e3948f28e5bb76f6ce52b9cf559fc692aa4d00338a8802320c288cbb9b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023062ff0bdca463aa52b99def166a1f18839745cc0bc0c1c93ae2e654ea8d3873387164fa439b78959eed1d3c42360465d1023039828f14997a10cd1bef4b69c6ff2ddc3c297823bb053d7949eafb231e18d500f51b406b886b3eb3afc078d1693567770302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c934e86d826145995cc45d9d3cbe7cdd0c863b0db807b144c1a241b7ba61978141eea56857e6c9679d44190111bb8d89023100baee1baf3f0d0e00792b82690d6656b9cc3dbba4927a86a32217d901ba9bdebfcea96b3bfacac3a92177c77f4fb7193a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c934e86d826145995cc45d9d3cbe7cdd0c863b0db807b144c1a241b7ba61978141eea56857e6c9679d44190111bb8d89023100baee1baf3f0d0e00792b82690d6656b9cc3dbba4927a86a32217d901ba9bdebfcea96b3bfacac3a92177c77f4fb7193a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c934e86d826145995cc45d9d3cbe7cdd0c863b0db807b144c1a241b7ba61978141eea56857e6c9679d44190111bb8d89023100baee1baf3f0d0e00792b82690d6656b9cc3dbba4927a86a32217d901ba9bdebfcea96b3bfacac3a92177c77f4fb7193a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c934e86d826145995cc45d9d3cbe7cdd0c863b0db807b144c1a241b7ba61978141eea56857e6c9679d44190111bb8d89023100baee1baf3f0d0e00792b82690d6656b9cc3dbba4927a86a32217d901ba9bdebfcea96b3bfacac3a92177c77f4fb7193a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c934e86d826145995cc45d9d3cbe7cdd0c863b0db807b144c1a241b7ba61978141eea56857e6c9679d44190111bb8d89023100baee1baf3f0d0e00792b82690d6656b9cc3dbba4927a86a32217d901ba9bdebfcea96b3bfacac3a92177c77f4fb7193a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300e286cc30ccad564e158ed3729c22c7347bc691cf5481f37df12c1e565859cf10e42e964591c968ad6e069f70bab68050230753752bebaefc00b09a57e14bdda655592535d324ffec181aba729ced40533a37ba5202583d7f3cc94a06e33b940499f0302047c435bb500663064023036bea9cba8c197ee774185fa4dc73be78bb1259bbb5e586c571c40f5c60a8d286bda3efb940a68ba3b9aee6296c0184202301600bbfa88e402216a78a5c6a656986f1e75e9ec09f3ade119ff04add3b3b2a163fa955b99b8accb6c11f63d253300410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230686b2f66451acf4985136fda2c1cb4f90deca2ebb589072a357cf1a4d150e03293d81a86fc0eac49c0f9facc938cac70023100b88ddb1ba01788ee028d6aeb6d439f32c3d1404bbaec5000eefa7e508f4b2b87aa6b771ad88220af6a3c95931b0ec4dd0302047c435bb500673065023100ef0efbbe33cd7c9a27e4ade9e50c812e8d785ec89db23cd0c9958f20bc4ea28cc731db855c3417f8ea1c79e767446f670230532ad1d9fc3707d46c4f769a684b3d29ca2dbfea525408b938d316e9a589740eb84958dbbe8a9064b8f0d5147ef35c0a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a0260d743daccf075a5237052de9ee9bc689b956e2714074e5e44c500ba8b75c78a490475de4eebc365558aac16da6f502303c9fed94d8ce98515831c13c3a5be6efe9a2f009ad155f6ae448c57093b1f72903333d95f3c241480523fd1235df102f0302047c435bb500663064023029c299c78956b56f7379c6a9e002d18e911af1c378c569c9e8c2fdb25254324ae8f02bb7e0c5fc0eca790a09454339cc02300e02f065e1a9d808a204c3df9747536d5ffefa4d1e1adef4cf7c4dcf9533fd80d9a1658ac86ff4797ed53263f717a1a00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100929ec6dbfd1daf89bbf5b09ec52f6881a9464361154fd2d805328c0dd0ce8fb893b53642fe53fdb339448bb98850ec6b023034a83672c3cb151f94396d6424c7668584f34a2802eb81792a03056f0494f83dbf499fa150760a7635707db3eaf4b1cf0302047c435bb500683066023100f27e52550940537519324492241a8f649e21ff64f3163812540f068625843370fbb1152bf7188bbb993188f76b3672730231009e67842574b971fed1e691ccd62c4cc3fe271c4f211a29295bff77cee1855b5e7ff0abcbd621a1d7ca11e7d2b715678d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e3f8f586c7f19a68deabc4700eb85719a7574f9551b17f89bbab35b31cae1a5907a0d7998e72c7bfebcee192409cc242023100c5e1631005c68897f1b9f374081362e4c4bb3b122d77f4b5a43846c8d5887ee9320ab22a138867e3fee27fecbc73bd480302047c435bb500683066023100d36061d563fc2d785abac8a44e8b53c2aa25edb0b9755d04481ebf7ecea4795fa820ae3e08f9d38bf2a94722d6ad47fb023100ada19b3e1508effe730ca4f4c3ae65eb4fd86fe7123f803173c0a24dce502a097f049d8a566a9761126175b1d281c6260302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c44dc74e6f1e1084f89f83c439815ac392c02002892f8f2a1c21889975170972505a1a6eac60d38a29f15572e5e61374023075fb1a059690b6cfa5cfd528fb7363cd79808065434fb0488461395ca2fafe6f79803b60c994f3da6827030cc1892aec0302047c435bb50066306402301d3e605fa69fec3c6c23e5c3a7ba5a1878db945fb7c3f52c4090daeda955dc3dafa8225d7288fbb570addb770ecc3fcc0230722d7bd563e9b1160165d2509d160ae7b20e4c2fa159de069661b7514780006a0c8a35272fcb66900fe2030c9264651e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ecb0ec80f3fb8e9030bb43854fa54b9e34f91fd523a87478564be4fbd6abf7961dd1517219b9f2abe237e4359e6497df023062f1819368dba88362cd24febaa44da36e5723c180a891503c5ec57c493e7d73139bec7cabe7aeb17e65f6cbe186fa3d0302047c435bb50067306502302315412351af10148f65d5c7052de28c173d8c9546c043934ad3698209d92a0f5f9b22f46fd4dfea5795a49ebe5106ee023100fefd47e023c968b4b0dfac77a9ebefddee4f470ecc4e3c4137e87dabee4a22364d319523adef38c42edc67dbed90b7ef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023053c126d82760a27ddfb01551034530a4e9bc7e0da9e663305923c19df593c344155203945c20b83654b023b829305bde02304e9ffb2f146a7ecf86228634d29d069e796faf05356fd10f185c42da292a141585a897ead16944492e50f49f62593a650302047c435bb5006730650230374a7de1d8d3328a0bb1b265b64fb886791fe9b1911ebaf19863fa3816f31e2b248985b161d291387c645cc2764a4a12023100e8ebd0a368ee8a3d2c533ef0e926b56c23059d7ac83df51a80b471dfaede0219a7da1c295fa3ea72878e7fa4e22faf6b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c295dcb2fb25d11979a8646456a7b58cbbafeba2ddf61105e8e6f0c24033fbc049375c2b5f15c87dbfe158426570496c023100ca34d5c7c4a90cca83ad372e3068a19ce6165878d9c0b2b550246308aa28ea6fae43f206e89747010931de64a08dbc800302047c435bb50067306502303e118c6f2a0003d5a8aa74bf8cf43e61a635c18afa06ad72f247e193d740682805d2fba00e2fd9704c519ffb6e89f7da023100eb359e474b31c9f1a5d151d6d78ebc4893cf371ed5bb3a01f88a5babe9b581847509c2c0301943a2b6342d62287deb230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d3249ed93236c5a746e8772f87c63600c48aa1e25859121f29e8a714d0cf133d80c5ad80e5bdc393df515f2e94de024302310093ad9942389cb8de5456dd5adb9d92e21cc3fed2db939c3d720abbb5b6ed71355c956b8e396f88d70d9fe5bc2023f9030302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310092f6b110d7c36b02e505d5c37cab7bb5de7bd166199d3daef2ab9a2ab8697ac8fe5ca4951144155357f8b5b5c3065b0a02302101348d840b42d09cb55b453cd9cd88813dd3fb2cef550e355775e40370f66ab5d9ffaedd88f85bbf5805addd1339670302047c435bb5006630640230615f84f7e98476e9bc6030a9338bf92797a66981858fbb27a42c6d775c6aafabaa41ab036822d9a119fd2880be963c8e02304513ab8e119334dfc45795884e9e1cd1430c8ee360e1f5068673ab385450c4739a34a015415b5622d3f7115cb6371fa90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008dfd86c986207e2855e8fa944345dadfb7fc0ff2e28b8db5d4774371a5c84912e45913f17948506d724c25336c9b7c940230483eb014fc1fbda0d6d55f6163ba6f61bff670b61829f4b8410a93c53d147d3d1ccbf4cc35151cd96543234988972cf50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a42409225dd3b8014bbf866dc3d89a83ae3f35d959cdbe4ca9c35ae2dcff7be7c639c9ca67bec2da1908cd04debd011f0230193586656768cda522d5f10c168754ea5a33024041ac34816e2c9959123b426b84ffe5b4e904382df4664bf447ceb1a80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023055624538b703cb9358e9a4a1f0c9519ff8028933651aab16bef28b19d74ae939f96271d1cd8c4a6a127f178f9912f6c302310097354392480416b94ea80b11ba518725e119bf07dab4f6ad7028b645cfd83cf5846bb19747681d0ebc81d8a64d422d450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d081904fe45e5d0a617069c08f08714a99aade9587775f49b5afd4912f190db274ec19a60a8a810f40af5ae0bd8ab624023100d4fc6729ebc58318de9b6c989593da76ea31d1a9622c562ac4dd3fd5d75ad6cd035d6a0c6fae8a6355663e4e7a3a041f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c464929f8a2e6c3290e808d09be529a5d97d403469eae882edfcee1caa1bab1085d096c050bb85f0a286cabcdd9d1ae902301a8e5da89609d7df0867c4bc835caf5ff26d6e450239a8b9d3a01674027420eac83fecdd6130ab51393f19bf7e9880720302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009ad756487e729a2de24036da5aec1faa57e0dae8d6aafa1039192e8cc90c593104258897171ca2574a6265c06451861902306e8b7e748c5b6244f1823cb13abcb6ea40c8a8bdd62eee081a9f29f090c33dfa431507e4a748479e04edac1e9554ad5e0302047c435bb500683066023100b45853097c7966d22a128f8ba8a36cd18b81f18322fd763b823ce6d964a20a0ff619614d02cde4249787f84761c82c12023100bd4257af425608b331d128e36b26ca24da22a2d8c1fedc73bb1e5a52aa2b5fa0c28a8b4eb8baecb0624bb0865e6f92ba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023051df325ee0c02e99d88bea96c19c6b9f3f9e97f4bf21bc8e61acfc0714b6dbdee75cd23c1a376608d2425c1eb6dab127023036ce7103f03fb05adef6e0271ac539c257dcd73c5ca88962013091df134e6a18a7f10ff9bacac16f0113e7309186cc8e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fdf10ac54e09da321d928e7793de4a7f5f20683136cd614b73021c640eedca2b2d349f189032ac803cd4a8c590b7fe33023100aa159c3357bdb4daa09bf91dc2bb464676f42cae3ccfa0e1f75f2286c16753bc7068a089c8220c5266b3bbc1bc7cfd1d0302047c435bb5006730650231009e3c36e1f8be4bf79367b2d93e7496ed58b7f0468db68bbba11f1b5a271925d280c1b7e99b3441256e98c44e2fbddbe40230726e416cacb0becb8771c994100bd74bb5b7d750791ca82693732a9fa8d64db6ca110740762a5b99907f442b9747b4a20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023055ee343edd17b5ec5013cd0af6da2b016912880b9d8b21763c27e94eca53753bcf03a8adb0af32b84192c3d54a27e5e6023052e5fa785cc94d98169eb3051b3311a88f649b06c0bc9ded5ffb8b7cc98a08fbf4c8616f9d9862a03e9aeb28f5917c6b0302047c435bb5006630640230026533ad4f3d12f557ad1c8a4e720f9490c29ab886aad588018b5e9210508a48e28169233b86a6166ffc5772d6c2a8720230386d03938417a6f3042eadedf382a479679236e7a7eda1f37123031b39752be00341c5226e25588ca90d0406a03fd9740302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303f95305e54654bd2f365008955b4973401b08a7c7accfff415a7866bd6a0d07b832ea873cb580cedb068c84c0c251c57023100fd918656495e83ac71a24636f4c69e6222dd472688439e3941418cb023642b59494cbb01206efefbbfa8470a4b90305c0302047c435bb50067306502301f008b0f3c74d9cd6a1d3083d0083c26d7a3756e713bc8851d005e715f38ae03504cbb54d07f3188b47608dc34c0239a023100d3f0131782faed4b06930b9da0fb8a40c6f87db521762ba504379549e89b704d2b4094d5931b2009a273d4bb0d9861d30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e200d0d9462df8b8082af896c85bfd601b8ac5f84b3788966f8e0a84c30465c8e242c77bf50d1100bf67a5fbf9fe7a47023100cee758fc4ae29e3c9b40b72653dd94818338e6bbf73d168ff748b5dd048829f29862f6d4881f39848d83ddc8e3d288960302047c435bb50066306402302fdc244decd52750919169b8d549952b079758ef912c716bd42f950b36c23df91cf7adab187776be4e2c7299fe0421e502305fbb2337d45cad292ca20c459ba4a3ee32558fe87a583a9166b24f4c5f78c1d5acf1c496b0fab72ee9bebeacc7ac72900302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305583dd1fa819274bf8c709b2d904d68b036f78d56de8c4d60ef3dd4fb06c31c1a0092643be9699b0c98a2e1c50fc94b802305adc8d235779bd08e9d9a44d69858764079fd9bd09702e233490e71334d5c822643dc22976a6080f67ee7ea15d3e23170302047c435bb500673065023100a1c59829a77feb59776d2794583b63ec99a6ee55f764ce7f996305e3c6b0e8982535f7691612f9e77557db962d20012002301e3e86aad1548927468b67f295cff03a0492ae96d6e4bc881aef21eda938aed40f0ba1eb4218b46cd7c92a01951f19360302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e3150878af2feb78312c07ea5805fe46ebf95e8e7b278f69fbbcbc628033860faab3a22d939fb4a4c682ae04372f550202310088ed2a9eb4b9f1529c4a67ec3f98bcec07732108bd08c4b0fb93fd64c4f5ab6c23b484bc2307d166d42d138514d82ca30302047c435bb50067306502303ad4815e27c0b3e2a7f426a9a34ab82ec183e6d9bec3ab18e784db471c836e14c64456837eb7a1146590e83af411f69b023100acc4b1837c1847a7e1a4691cb5b303929aa1f29a0b5022484cf3f579352f11faaa686c2fe23da48c7b110350333d87f70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a708cb21da52dc91019b86ae21e3e80829d2c48ce8d0ad2a56addae7d1973b368aee31c3c74138d31c5cce81e3aee470023043f0a741f4f531baae37b5e078b2151b2d1776e1ced20542961bd6ec2b5920207468e79b6e6f852355efd024b812e1e90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c0e25d63f6e41f7b63f61f0399a3b832707754768f837e5fb89d050cafabd1611b829d3a801e17832bcc80bf5724f9ee0231008b52c916564bc135f2e9326e23ba821b9db778e38e401bfe7dfa1f0b7d7a586067717a2035bb77dd3f871998180a36410302047c435bb50067306502301da29884f89f0b431911a71d7b1a74a73ae200269621dab9823563a29b1e949c0634a9602e8644510e2ecc706b369651023100fbd9369b37a63ae8f742cc403e9c6286b9ff9c4a5e4faa4de87bb3a076b6c12b2534dededcc55f29ff0c39ba0f161d930302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c36ff6f8ad7911769591504c3e4dec6d09257f69b5b70bf598bd0782e0f1b9139e3393057f1ddafb15d12c0388d43c19023037eada08a59f20b55d57fce40e3e90e4a4b041b3050639ee65806570dff20245ff69875d466deff12978abf86f1d8ab90302047c435bb500683066023100e1ea26c29a43a986d71a202069cca09d849aa4aaa327e3e3a64b1888b530344e1e120c52320eaf1fc4cc6b82166abd6002310081ea1f9b0c02015b1cc2a051e987c9c3c4c7181ea7f911835bc1365842ff3e479a6b12138f6b4ae2f7204fdc82e6b8920302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023007427ffff3da737214a7a49d2452f9cd931a71bbcb0e735f76e183a85975088f1f200f7827ec1aa60a61db40ee337084023100d4eab63a396ba3883aa2357d80ccb59a37a2943bc5fd80e0d08fb1fc6ad7df23e4888a44ba0451bbcfe54c02527500250302047c435bb5006730650230405bfccad1a79fa70338feccd68499316368649fbf5fd0891e9e9fde3ca44c83fcb464fa08c332680f6713415f450588023100a1c47c98702224a0e469e07b086bec5c155e93b18858ea1be35d2322a977c6820317e4a5f43315155ad0a0558a4d68550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023055fe7dd2b346431c223bcc0c971c7102105e2eba1db4eb9339b32dcfe50217e2ae5f3510155394846f2e68f1efd5442102310086dcc2eda997b13e44ac2d10532a6c6fa115ef7323f2a73cc9e454ae03f3a868a551f402c7b339d8ef525ea664b284cd0302047c435bb50067306502307847bc857e53a4a6942d5fc4863c6152210b889aea6a39e89dd1e403a7fe2edf8305eec6bb51bdcf520d60166c759e6c023100a9dca6afa8267bc48f18dc2aac3f4a1856b1664920657bace9b30bef62f951380c3b7d503d0c27c4b4bb3d41e38443df0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ffd5f663a76fa6a2deb8561615c9d3a45bb5f0070fff70762dcc1d37ac64f51abb3ceb09acc737d65e8f0c09be194d3102300f95cef925e1f17c784e6268bc8a07d9321753943766c632fa36c0b9c2ebe790336c1a7b09adae4a5154dec6e200bc890302047c435bb500673065023064b18abbba57758ab2ff95ceca037159741f24d7f843137d40c1e3a2f72faf1a6e546286bde10b7792e885ddb6dc35250231009e0f0b7a252ad98f1719dd42fd1adeb050aabc1ba9dd51ba0e84281fa75fc0ba3ceecb8f1e452343761ab855cefab36e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d3b62cf3f9088098a554a957f3ac8182f02cec0e3ba281142e7c3805a822f2d2097a718d3f369a8613999f03fbf7a513023100a224c189dfa03573005a9e870d39d054d54d36f5f1a93b42805eb1d60725464d70045d49ea7cd0dc27e0a69e8a9748e20302047c435bb500683066023100b53c3df6d30b6909d7721c46e55e367fcf0285ac5788274a86be2669a4a5edf2299c3574f91ec457b631b711c01eeb46023100fceee985554280d48458f59cf855b9690fdbf7875f0487088cf33906e81026fe785d5efe79c5469474d0a0972f42aecb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304038565e4f6f20dd4a97068c336c89b506294a5200150fc4558b6a81653590f22931d7b1e551dac239a226e395bd755a023100cd23d7dd15ffe3ba9e3d679644759a4bbf0bf0584c7d1f7be8bc35f5d40d410bf56ddff7b9c4e7713a7c1cb47b20a98e0302047c435bb50066306402306cc1284ae2d952ff451dd28433d4f697553ae3272d709764f1080e630645b798448b8df26ccf1b3f55ec879e356f655c023063bb685bc0f2b0f1f36b28b1e6a72564339f1d081fe3d6a48030525dd5a807892c663ef0f73946d940310e17462d874c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230783724b6f8f5e8f4bc7e29064120d36235d4bbe6024c685dfc03cfce759f00f11b03e16e160c2c75b112221a046f4285023100c18cea931925f5a8ed2b5697bf1b6b71463e5d28dea59200b49fd0617830cfd9563b52b5504f6564fe38649a6655ad720302047c435bb5006730650230126cf47e6b988f65e010a59053d85aeb0b7c72ebcfb97c8c0ad7c6056186c69e43b8fe6aa110ee394f7e6ae65d7327f90231008eb5e9101df78caf22d9e7e7e1e079974f25b8e68d4df40d149514df761bf94ea5393a6545e3d49b978c35d705f4ba4e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c874c67973d7fd875aedc99a3c653734216211002282368419380d90f70b7cbcd2df9aa2183558cf0d01e255e808baea02304c7e09079d5f80e5c9fca8ca17c8b98926869527799cdc4455a400d69cfd738bb8e550b77f1b53456b9373fc2fb2aa190302047c435bb500673065023100a53079eeae837f20bbab773873a23af49abc0b66a0797da76a5841018a45385438e3d2e07ab8217f60402b47e26eac7b02306e755475cddcdc5c2e5388dd86371b7b4a5e9e8dbe64527eab54dea15cf9274df5e8d788d41333b4b1c90563dec791c80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ef16b357be037d123f26d9be872401fbab8318770e2dde99bccc41126a47197e365e76af97e30c035ed1dcd297f0332802304eb2dde73e32a6d9427fab8fa725bfe8df07d1a35b27489a5450935cf2d7441001fcdeeab2a8e4e08319e2be8d37dbf00302047c435bb500673065023100f381ad5bd2bc37f6bd76ee0e10292e92c89ad0240966290619455cc184f3e9ba83380e2eaba454db8aa15e72fe3a1eae02301475e9a351a90347cd6f1434e926af5cfd416c579076abe08fcb5d406d39bb84fc758ffeb85800d2bda99b61e32d8efa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100951feee99bc71d0c4a49b9dbfc31cc485175c6783314d9e49bf55fa8f49bfe5314726089298c859ff1112a1dcbc6c130023100dddc259f7703fac091bac8f229d78d3fec8e7f43570ff41d74f71830a1c8ba6ca986a59398b76f8a6a476acb50665b6e0302047c435bb50067306502305d6852715976310c2bd799ef821ae3c9cacaba69f7cca5d014d94c3f8d85d41e51f66a0b2e4e052b092c8b25d98f4664023100f732cffd22089763491298f60fbde70da3b63416cb7e3d0dc9dd4e26d54099fa6b4ce9d4f9ff978b461745084439f7ec0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304201ccede5665d694182c37763d5769cafbaf5a3ce82cc72a1d2616ba21d50415eecd6a4b423cdb80af1c33637c86e29023100ae7286ae44072d5d872704c78e4f2fe8088ca9b2da222b83432cbb6c774a3033ce34bb098d33dce11232ce2f5fb192340302047c435bb500683066023100f9ae18ece8245831aa94093de44af231349a2e1d81cad146ac460bb3a19a60261c2f66b8d4908431f9351855c582cb7f023100f0fd90a3f5bc5a2e80f3d6ef1c518eb5d92da0cab9879e38754f21cf2e2bcd5b5432b21bc67a849654ea669c415643e70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310085032407dc77cd97649a0cd45a685c02d059bcd6fff5b979f848e6d2c653df8b90bc22ae8b3dd757a368f8136de9781f023100dab784b7a6f0f5b846ca78f0d78e3a8c097bdde2704d7a89e593f0ce171b46b451cca6eacb30c540db3094565191c3390302047c435bb50066306402300c08e3e187e92fc1f15a4a6894ccd7cf676ad9398339e0e8518a4ad9a6006e36bab70ff10505fe1f7d966711e445522a02306b7892d3cead21062866c2301d3f5d44501e7dd7a1e30cedab2fc96616445d642dc1505b32fd1163d0a419723c1996320302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a3f17379ffb5cdcdb792c75e4aa62e3a59f247a3a1907dfc75edc5285ce6cfc3653458af00319d0ebb7dc2c0c9cc34800230428bd7b71547c1c533860a923189f3874aaa52f672398a53f91751e7b18485620b0cc572ea72fc26a07cfed6616cb00f0302047c435bb500673065023100887ecdf810a291306b389022784d256459e4710b0e4e5469a914865e72444c03d29f09a845ed6d663c77899a9fe9eea702307b1f99934343f37a934ca700cc0839c8760e15dbbc331e6b59d53b01e865a0ed16a5b51408e6a50d0d7b56063826fba80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aeb87d699cf9d6556b894e16c7b9b980b55489fcaddfa7439bafbca4a8de50166f11b13f8e956e3626fc93340ea9629e023005d90c21ccdfd1eb347b5e6f6c1a569fa615c2d5d809906865e7b95ce171d0f28947d6a084d9e5bf4e0cbc341cef35bb0302047c435bb50068306602310091b75337e8804ac2808c114929695f5a30969cd1d5365abc46f5b7bfb3d76cccbace208edc1c72fda9620b7c251ff4bf023100f0c800b904e998a0c421ecccbe40abb16d65af32ccba86ab77ea8129d15d4a15f841fcc845b8705a98902d010b531e680302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b35b997c23b1d0a05db27152bea14c3d83a4fb25331ae3485092bdae6c95c7b3fe154ecfbb9f3b21575189b4a6d1341a02301e646c9b780884f68a365458b27d88eb81177e3172883571ec8f0fcfc2e1e417967b29d9d1a8b2cad897237324cc8ad20302047c435bb5006730650230067fa1f8623f4670df44851dfc16582d102f5effe3571c439e8715f4424bf588f97c3dbcedb5f4d9d4b632e4b7ac9b6f023100c4b62dea9138af71ae4beaae9b1b262d07e87a5289405c05c63e833b7c5a29098f9d4411ccedd51fe314607aa3294a750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230431c9b1cbe2747ee72cd0568e6772aa078d8133fd7414c9f2adaf1fb97e9b2fa9e2553ecc7c2a1d9870d4adda493a0740230254f47357e988bc6d995aba70ec15f7757df988e223eb3914e33f1589dbe7af9f07c55f1d04e99fba555bc87f14906440302047c435bb50066306402302ed50305b1777d2164c50fefd9f27857c1b4a67db3dc6b47d22af79524d1202570c5b3aa751c41e3e7a2211b2611bc2f023026ce369865f6b48a44cbaa729d30e5743291f2ba9ba7ab58e3bdf3766a3c4945116d18c90d1eaf57f3f675dca73ee7970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c2db77a2c3940ebd5620217819b5e0d5cfa6909906d482cdd4f95608314914a77050b0024005fe5aa2ddcee00469b569023100e1d0038e3c0851e853a09bae8477fe6ef5f662a800d3ff736de1503fdaaeafc26267cd88217ac98088692fb0dcb234a50302047c435bb500673065023100b35efe8dbdb49d0fa357c26b8b079fdbcc6e157452f8444d55212079e2a63a5d04abaa380641318c75dbe3d663f89dc60230185b88435477440f5b3d126a2fa5783d97c0fda163e5282306dece6ba6a78ff630fed80026de490f34d0cebdb84c1b2e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307bb35bf957651d9070ebdc38137a703e52ead855f598108afc73b4698c87973684912dc54898fca7a88a07192fdb8ee8023100a4fa4574d7d255255b47717b9be33cdf3870174b1f690fbd5c65c8f18eb1720a84614bf367cb0d8fad3eed4c635829a80302047c435bb50066306402301f3f1011f7a74374a2e47b8b7b51be7f5c916e5e333fffdd04771d057682ab4efe01a4259e8d2fa18ad85954ed01fe0c023026f73cbaeec56dac7fe02e609b78bab57ae1ab264e3300e4e6abcb1f1468eda268dfd579c171c5aafc35377aec9ef8810302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302ff924f9a4c76405ec8bfed88a0392354ff3c426bf3faefcf1690cfb101db35eaf2454f64a9aab851da910e352ef9b7a023100ce4732ec0828be87293729e5234261ad65fe526148eb86d26726d50a748097be71abaf802da74873c9dc25484fa842cc0302047c435bb500683066023100f89871619200e3e6a82726c3e765019c6dc5bd90d6e7f1c1ad88fd250ca939e390f139c9bf62e4129e144098ac5eb98e023100c8a853f8db00476f742f1c8dc3bcc6338de10ba20813aac2a710ab1f54502b7b01c9d1f9604ab89f3279b1e3964dc18d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a199b67dde0662e861e578718c3a845191a803e13fca8fc71c4271eba0e042f38b4838397aa81496fc3ddee108ad56ab0231009746febcd15ac02abc437fcaa9c85670eead56e3895e54908e3bc0f48ee8d031f4c45c6c921ac692da5a54bedd0afa9a0302047c435bb500683066023100854c0a3921fdce5d826edd4687fe4863e25d7c27f61eabb9ad237267526857cdfd6527433c4cd666c3c258698310de4f023100a12e59311d0c6ed782f2e61c64f7a8854a3ec380f55147bccc18a017b49d3d54b45e61acaa53c7ba1e6818f20503fc800302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cc91af3ee058530771df16d44874dac849d99de9c61b1016d3dce3fc5e8ee6f9abe280d8084ae7fc97357104b60b96af0231008478018bad5a54ce538377c4ed5abd844e74bd74604219e9b441d114ee8c184fc86711fc36462bdf3c964558caab96b20302047c435bb5006830660231009be21d7cf51cb78e12d591717148902f523d64ead21cf63a68828aeb2df68d1511e19b69e1a8f1bd5670c21a5c291e9f023100b3ebb168900d52eda0800e1cf3a7d53044b163d7694a6efccb907e7afb54fb48ec1681f0ef1d4aed0604709cd87f0a930302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230066296fb1ab072a08cf91dba4f16afeda743327d3e2660e51df4da14076b640fffb9e4d30d62757525efbc1dedebf27b02302add56e99789427433acf7502d36acf46b68e345739cc60a0afad9fbc5d14b99977c4175ce7ff543c20a0d7e4d9588fd0302047c435bb50067306502306187b236d25e815d11bdbd1cd9b4eef44877bd8d23daeeaae024537dd7ebd03d6d4fd3c13315b88ff06633e00aa44df70231008f64c7f9edbf62d0c0e1c9b57ae14440ba3d302d0ec4a8424e424e83e3c576250b3683f2b4812388361067ed4bef060f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bd253adb2ef124e38dd0814b2c0cf43bc45077a542bb2ec23fd0ec48a3b2034092f45c6c18e022053787abb05d3acac4023100e8751b11fc9a8298ca1f77cac52ae110ec1b77741c2ab39f5958c2fd1c6db29d3fddb3d751f26db676803f2e34ad538b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dce6ec20c6bafb38e96619fb772740f8bc4b863a75aae7de6a1e26de0ef2dd251c6550386e20209d73aa4b52a14fdb4f023100993874583e7f8ea2d8d43a7b5bc179c92d3eefc16315b83a4644e2453e9435841204a7995eb45902d086120aea8637d10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a7ef2ae46549f05889c40d7c5d253253ef19f799cbd0d64ce097ed9622a7cec0dc3db2d8fb06c923d570be1478fa778023100e6b4e9dd5fbc2658e454bf918060a0d6f0835578cfc299515239f6cb31a136534eff29d6bf77f046f3c9dc5628cc62040302047c435bb50067306502302d766960f3cfb7342274d7eb7301dc4e38e57e9c7de39f60fb0fc64882f7fe097d76ac9a4d178f4151a97a2832ddf17c023100b4a729eacb18723f5f8f04c8d22463aaed1e748ce6b1df09b5158b0965cadd884e652c5a62ed2c5ba9f7b413a301d3310302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023003f3e7259335f8649d019e625b3b0232f5dd0481df0d1c8c57e6647b650e5118b4bb4c5867225788ef9cf08b8ddad28502303c53c2a26f8e775b2859e0626473c41f23a1fb02240a71283706945b95ccb4e747b81c01bb2c3f3cb5f53cc81c90af470302047c435bb500683066023100df79376619be1711450263e37e188a27a4a9b8b451f57f133c8595dc24bf5653e25c20719eff8a3178a2d1daf936787c023100d7848acafccce4f7667a9e35a66ec732c7aee1367763b6d8e45d1cdeba00425fe7dec283b78359ee3ad16236287f24b20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230383de2a0f66f977b2738378e186bbcb84fa5a97333c7cbd33a8cb11b1ae2dd2de793530f03bb1d5b11d9a28ffd7958b402310080af3e1313fae3d6a85a09518e7faaf5fa9e7a1d10ec6168f30481106603b5229c30d0e37e2147de52a4fb5ef7a3adfd0302047c435bb500673065023100e7cf5c9252a79ecfb690990fc3d8559c3725bd05bb972bd7fa530fd9ea8b3de7c669c79d74407467cf8d85efc5e8ab7f023005005d89045cafae495481a7f47d677f08868397389105fe4e5ffd22d65b919eea1c4734ff9e93a866b0fce02f59e6400302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301a07b49979e8543d4f49b66a9d03c69898b1949140753e5e2f68d6f03916869ae1ec53adca2eeeba0884514a521cfb5102305b1dad6d8b316b474916a46afbc41e6ac4c0a5ad18e4036507cb5c9c7e381ff535299ca10b72f6411ad88931a0274ca70302047c435bb50066306402305eca2852df395373be5a2f117d62c9cbb92baffc7a5d6c79d32c1238aaab7fe24110f1800d51e1e534d0a1acc1f60bf702307f5d13ee553218f46a3ac1b2164e0abe841f22aff10577f93ad2356644e52dddae241ad05770df1453b8c4c53fb5a0ed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100809093a572d66c27aee6f545fce1510c6d6b723bc9bb87baf12f94fb30440be8f06b057bbad46a591db0379ce535985102307171c89c6bb65b9700f5a8e921049509b486c7b6ab16f2f5e5a741e8532ddef0a449d5ff10fdf4c35b5c04b8687e6e310302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023051a88586d72e511744bfe7eacbd7c574f6f490c224d6b6de123827f67d9cad014b439bf8a1ae7c5a015ffd6b5b0a2277023100d476b253fa3f1ac003de171205c095a82fa2344a044af6c1a145fe65b5fdbefc7428604193708d55b54233b3d14f41ad0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b9d776cff8a10dfccd0f6108b3e30396fba99b47772f3fccdc5fd7112333d4389cd5cd2ddd1d4c2e79263f86ec6304ef023100dfd190c35b5be1668ac2a5fd1006dd0e0c2730581715f937281e729852d810851d14fce0b66c852003bef4ceba50fb910302047c435bb500683066023100a50e860d131af60bb842ea31325b09edf73a480c94828fe1e62783dfeb27dbbd92d97fb4563520b8a271b0ce4c15e18a023100b410c70490eb6df35ed51506fbeccb743a47ee2eb8fd095abe8874113094c5d168de11c4a52f8cc41c25dd29deffb04f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305f1d961ca9bcc9dbedc860aebdf0bc5b2763922f08b35f547c1a12634ca3e469b7caa4e37d68370ca3d562f258404f6e02305b72880121f44ebd05c86137252ab37c11e9b0b949977ac8fee675d91813f78146771e18207bbbc2ba46af44f0f594050302047c435bb50067306502301f88473052af19b1bfa37992694e6cbee86145b30de74302ffe3c2627655eb9e0b2208e30134b3780368d697fb07654e023100fef7aaad19e067c7e11097b8c3a143b05dc2891e9e03314d2e7cbb63fb9f192656d7173266211af5635bbd0eb53679280302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008ab244ecec7368b2ecb75934dfdd1ab83bb0a7ce1d652a8e28c1427b17594604abe8842b5d45506d5829264308b668dd023100c82a7e77a10d4ab14c0d17b07fd6340160c0f461c456775169bc48ab781745ec42f1d2916085ed84a0bfe229ab3125830302047c435bb5006830660231009d2f1265649869147063a16e1b5f3c767facbce236a938d8e20e238295d48a39b016559dcaea11bbedcc7e0eec3eeb2402310089705ea34b909e354e834cd47d56a63ad670450d4bdef0606b6831f4af48f2c48af5d36f175f75ee8206dd5117fd26290302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023020242bd64e32a6647afff34706d3a33be1172dec9d80eb116e5ffa07a98cae32e9913943584ebe0c0c48141558dd3ba1023100ecad26bf06ddac3c4370ef799738dd265d7bdfcd48c5abf99426f271c215827b83935083b3b6cc13600df0265eaf04930302047c435bb5006630640230500ff530729f9b5f9226e7a99e1e1cc62bbbaa9b47489585f485fe6708bef7c54f4c602642e97066a7d2d2ff5355cbae0230783da6474d413da1f908c4542f927dc9b3d46c159fae8c610bcb5500a079cd0a3bb10f5179dcfa927059a8b35c4c50b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100848c9c561790ed2866e241d6490464ca28a3cdefee56c176c6b35bacd399392ec8be0f41ff36be8b92ee479ae33e8332023100910a12f630396af0ab03f1651313930161d5f1ba39766969d71aee343d4459e788b05401618de63363b644eacfa8d7450302047c435bb500683066023100f7d2b8fd9a86796db343e473cbe1b5580e1987f10bea16141301c4d65046fccae57350da2457a670618b8b6d5ebd05a7023100aa55ecb8b67a8c8683ab77816ca78d433e243daf1b921123610b617d24f0c27d8424621067e961903e3a6a78976ae9060302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301127cfa37b90e1e14e90d04d1fedf7a5b5f6bc7d58546dfd6aa3c19905a0a7abcbee2ca338d05542582639a303c513a7023070d49b0bb7deaf493560685914601059877ebea9bc401514c4fd7c18b529b5ba15c7e1c4a88ab718003e4c1d4f689a070302047c435bb500673065023100a88646293413c9c5cba300a1de549f61ccb7ce4a1279ee9cc33cf0bcb470071667a9ae1c0fea704678eca02833d2601b02307632829cd6611c1a1181312a2fd6c2df27e1dd4b98152ad9da55618f762eda35650e78099ab994d0d797ca4f79e45e3c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100de4cb9fac2dcbb80aa751bc98671a6008ad642e93a548ada22f6c9163b1fd0b2e50f088bfd05b876047587321628f4ba023100e8000a138bddc9d5bc09fcacc4ccc3de6240ad8c1800fee806cdb32daf9aa3d30acf8f2ccb845b716712cfe5d91c85ab0302047c435bb50067306502310097c2c4ebb937e353159ed424bf39c35786f10a2199dbd4d98b385cd4307089646c27220d21f039e0e707f735ed7c636e02306a8d079189aef3a7bf672929fe6422ef1565d76b9c7e2cfbfac5c281947cc85794651c8225f5830db757452164f2108e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a1d039421cae29ff8817c7931bd5c20cce45d4fcbea0e56fe874945e3bf35b4fc41b8ebe8c5d0fa5cd226762db2f3535023100f7dd9673698d4ba0bde22aac6e58e364f8f9988001ac4ac8614be5521112fd8469768253f194997c453cf95f3c33b69a0302047c435bb5006630640230634af9243a154755d24b48b5c5a9f31b1084095dbc8596d9dac1e74ecdede83f0b02c1a7cc482ce8812fb55d7a7c0adf02306c6c4f93d8a89e48fc63f2976f9da09bce657610e52de711d716e789cf010d6308697211f65ed15dc4d815e60d6dbfc20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303763651f60826d4a9e3f6ede9d025ff2e1d1719cffc9c6c40d297e7e056c7d55576f051de2a59fde3d117fede9921e53023061eaa73f7e2bda6e43f7c178b887c1de5a18867106c78eda8a6fae2c08f6e490ca537a2f5a995d7095227fafab1398eb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e518315f5dca2a4dbba1ac3e029c57256009922f8e288e6be544c61b684f6f9b759e81634738f8bce7475287a05dadcf023100b1d94e21dcce5dc1fce5b70bd23b8a6dc020cd3e75f8ddecc1796a2dc8d6217ab485cfdaf3b8594cae1488c45cb4c8a90302047c435bb500673065023100a0473f924b78fba806b57c529ea679f2ea4993bc66dd2059609ac5a9871bce1b4aa7880df96c08657b6a730e41cbc54d023009a8e4869a7da65015022c3c9dfdc27ccccb03e9d4bb1d0789c24ba028f83fa4b2025a02d0618f5d9758d19fb59102bf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023045d4f6ef4792464f0e23bfce7616c3f95fe9ec4478c323839174e7f079046720be2431e01b5642afb90615813e80f80502300d248e8f93e6c4f6522f93afec29a07faff492ac9cedc34a7ccd719d4064b47b0d63345952dc5c73687960b33d9ff2f50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303a65e8fb2d0a7dc3fa14e4476e311f3e12fe9304e586c78e3aa7d07fdf32cc55b38b151da58f25ff22c4f1f1401f51f002304022829092d2288eff7aa5de52437396a3c8013728a61ec33e1a97f945f33310de0b0a6fa3b253bb6820f40a05a115060302047c435bb500673065023100b53a12a1125a5a2707543f54d83c4d515968cf381378ece5bfd3493d58267d4a292be6caef7f1eb63bdb4523176b7cf00230014f5b44bc4631ff9ca099e3d209b00679a4051cc26f0636c76e26c8f7bc853704f1454ef2ab752d4b173e4219a07f750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302f8f5b606a4b52d1c6becd50b51f27421997dc1edc107a8125751c0b8e74c7930eba81e323b8e5104fa0f2fefc780855023038dda2e51c2a995fc81e0963064662cf8f96e851788694ca262f243fa407538bd5b15aa80847a39eceec6d4dad5df4fe0302047c435bb500683066023100a48ae8935ac79c5fcae646bf1e41f623705f75d904d9785b25cbf491238bd4068121ce23cfcce057ee62af2ba47524de023100c3f2ed1041dea28192edbc5fdfa44f879203d751d178b7db11fc8bb8dc9cdf0ccfb39352f525a6dd1e0cda1fda49ee7d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230520b9de21149894d16f59d3b366eed5cdbf383a72ae0786297593cf2e80f38e938c3c27fde57a2be22fbd0104ae3a5c1023100bd17c53bd7d10d2cd4eeb2b6c0c77ddc8f64fbe5dcb5df49878020404f9a2756546774b6dec038fd21b066cb8ba7366b0302047c435bb500683066023100f54d8d668b1d5e896d4f0af4573832cce04baad2b6bfefc99a92a79a863c8be8c764bac58ff25e0f0c26e2270023d901023100e135ae1bacc8762bb71befaebbfd675bf79325eee2363d66400aac9163a9cb8eceb2960279b651a943cdc323529fd0fc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f4628c994e3dc12b9330a32c7ecb74a76764034b36aad2e3412c42e514fe15cdfc45095b311c5799782f8985a64f3a11023100c4bc8b5d725d0d07b33ecc453d1a09aaa3e929206f6a84a78a25eca487b11437c6dbad7931cbf3110eed58c851da585f0302047c435bb50066306402300162ac1f1307dca1bce17168d6c4653925a2ed38250f8faf3962bf8af9d3351771773e821b39c563a82defcff239708e0230791dc71063b7e974a1a30f715e320510430bc0489341198b7feb42959a8dea813ca2596e12cea0a7d2843c3b311dd7de0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d778162766576efeb1326b17367c2070da5a58c63e5bcf7f70102ead54d8953dc17a9455b7c183bc1e4bf743134e83a2023100f5c7c0de5532e77a8bd9709c468e4b2a35c10b8fe4b3bd495697394b8e1c38139df19a67cf6851cf3464a874a2e492570302047c435bb50067306502305c06b4f2ab29629184782e0e380f61af338e7fcad5ce9c23490b9efd862faec8cb4fd0705bd9809b047da6cbb6462c62023100b93b69f25df3de732f1c35ae04086f9b5735e8a81129d29985ed6fc10fde0c5ae1e65ecc05eaf860c3a15abe8535429f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c6911ad249f29bd2904507bc937b0f9371527b348f316e7f1c6c43554e0ebbc3b179d1f441aaadb0b5ce54ca30c14b5e02307fd6c881399bdca8b26afb77157bff4361c456f50ded54c1d457084350ba219d7f77d03482c42e0171e20d2a7e738dd80302047c435bb500683066023100defd2728944034a6028f0648b1fdff0263163a8e0a28fa3ef6c0a5c10b14c0ddc3a1fc0a31fbb919d6e5d26ff400053c023100f069ae14c95e4e765c763e08ebfc9715e9f3addfbd7b58f36190da7b33a0e8f223c3aecba1aaa1be6f1a0c19da268f4c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a87815f278c26e030e29ff5cffcb3f96f7f272454989b883123a10eae3d96efdc2d460bbe0eae63566f6c5f2e28108d30230544d3e8f3224715f928de27cdd509b41316a58b8f1d057ea9d8e160db22d33a0a1bbfa2c79ba44dc1361176cbf0532cb0302047c435bb5006830660231009d0287de64ba8fe41796b275876f47f55e27eddaa92ad5ec56220e5f91bd5e9a94e376592707a79a384faad9bb2b695f023100a55f373804bb98b16b6a6dd87d95331afa8d85ed0ff2362c60b1091fb304b62c4d03f2ff02f347e408833a5ce5fc7e310302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c591aa1e62f4fac4dc66e4156460f3b593b0f47e1f7560edc787dabdf58db63bb0286ec50feed0b70c975ef043efee5c02306b22400bfe545ed1aafadc504a80995fe7dfd5ff6ec499a9782e62731f3b64eac126e30454bb6c9f04221939dd25948d0302047c435bb50067306502303c0a2bc1f289ef8cb0f020bc79c74b408ac10fd183c47a02e69cc3eaf091ed9b7ffb02bb981731b987f330cc34edbbbe023100a56c5c18fcf97bc6e1f612639aecafb59a75b5d7a579c6f625041d46fe872cd8025ec0f87aa60120852bf412f1ff88bd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009b059fc8eccc0ed1aaf62b7b5c3ea38ef09738d615ef8377db4e781bcabc4379d69a944f9d1ec0e64f6e9fb6af1f3934023100841622b294f0bcde5b0607a9176d817c908ab5874aaa4ad4d69617a213183ae19dcd4c9186e22c2bd26e9f441cf8e59a0302047c435bb500673065023100e7c0209551c815fcf0516d12f513e740d42bf95673427ba2c70660819c87210e771013aabb969ae2cf593de5b37ac182023020eec3a375f13d91e64bdac3c71daeac0853cb27c929d295153136ec09c5b240bddb816c8c270132aeb4af23f90e21b90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c9e9d24ff30cd31ff635af06f6c74ecd0d69913a693a9aab9fe9426a0abe36e9d5365aa840f40a5ca7611052c57a80d40231009d642ff571dec882ec671bf929dc2ca5c67f589ce3922a2640d88b7764c3e2ff14dd6331e4de9a1cf9a9cc0b19c56c030302047c435bb500683066023100c17b9d9c0cb58d8b72ff00a25fe1e3e8f6df3a6ed9b75ee67df2798cd5e44bef72f32fb93b579d62d944e51feb73ad0a023100b48cc67cf92ed518c548b9197814d910b5cd2abd78ebb73b7dcaf66477d622a47601171a8b7c5a40dd7a88d9acd6b6730302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b03d59ff0cdf02107f540e8451c253a21f7b284115773e93322ff8cf0d1d613b662503533fbb9f1e93a2061b1d87a9b00231008de711beee8f6d4e1041118e8aed334b77ce3e5ac5e139a79431262e5c10aaef73933f77b37040a18fa05a7eb59911930302047c435bb50068306602310091a642a886b0a38b1df98e8debca7c943254b80d3b112f18c924ab3c9d249b783fdaa815b26e1c1f058c4583114c5d8502310085878468bd0dc8887a97e3c41a98d039d4dc7d9957ae6dcf0491248d9d72f1a87a8e3fceb10a4220a850650f6a48ff3d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023034a4f533a6e068bd32e1638f011a1dfc70f0e25fc4c7a64c975748ff44fcadebdbe931bd756563d4e4b1b36a81830d9f023100dd723eb1a023ee1379d8971c391c51cc0332985f4eb5c01e44d069ce3186b3ce8a6762ed6a4e6714e1dede1d61afbf1d0302047c435bb500663064023038ff3b045de242abc49e95f47986ccf122e26a704270f825870ef50596a876c360e97d084d538df912b9d77ef20d5df0023043b239ccf85e5c0cf3d34395e5215202d93623c2db6590c1622aa5fc064695d4980bfab6ee6c501873f7f3d9511495ca0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f1e63edf9132f34cf96aeacae6a041a81f228c3446124237a5aa149948d81f3f91e5c20afab35d8535b34b609f5c0cdb02304f681d233adde901372ce00b0f810f890af2885aed219503cd8b26ab788f6051e1e15106cd26f655046b46488872e8130302047c435bb500673065023000aaba894155a7819aaa419f22cd3a30fc9f7622f1bd5a5a64a1fae2a8442ab729abc9ab74ad835353b8debb479b62e402310089e2ba7a0efaecfd84df7ee1fe58e7ff497d33a23722f5252835ddc1628a7eb0e5db0c039f608de4140d2431f5d173af0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100eec041436b1554b5dcb8b86da83325ef3d8f912cbf029bc24a83dbaff00fb1af43ce4e1e7de4ee90083bd825ebc04b760231009678d2a52824c81b70614f7cbf179e5ee204da666bbe315edcaba509d2b091672dcb92a9e23c9e525141cb480f77fc330302047c435bb500673065023100d5ee9f9345d1a669d088435ac402f66a386ba17e97724eaa260864e20845e81faf8684152b3dae2e4de41c8ca4686f650230156e40c73f089c08e54a7cabaf5936087ca8b98bf1ce3eaead2e467bb07cf9f23482eea2a01abeab0243f47d666c51e50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a42c8213b76835c7c1a86653369750371400a16c4c182cb09b6424ea8f2b4a885aea8ba30d06e86d8872627c86883644023100e6442d8d356b4ed878dd432ac7c4f856c840583f176f2fa3d089a70abac0538cf101fd87de7553e2977e3e64995dd9a00302047c435bb5006830660231008686e624842fcee5541b9179c58a7db0a3ead636d8bf90ab7b608ba12e318deed988d1e01ea56e92119830d12da17faa023100dd2012c12a6afc79928746be7dba3e7c795256c87ff32ab40bcaaa433608b209d2dfda825cfc2ad76fd0f488f61de18b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023003fb405ed2dd24491f4d233dec3077f2df84002698d40649b656fdd352cf431295079640ce72c5815d547ca62956f7c4023055c6ffd4f2a361ab2f8cf04856160422a451ca4f3a740fd42951a840dbd39e8c51d73dadb7045b3ac8a0f5765aa133350302047c435bb500663064023047fd61bbcee1c7b978a5ae63f30f99241397daf8fd6842ded8d6cfea582d2951c48059c4b04eda71589471bacdf3ece702304f3fedc5c6173b722c94a7eb581c254a2a28e9c36b6c70cc8aec1309847bb64accc52c159ce4b3d7cd4e0535214115710302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023024b3a93bc3ce549a7748d9f6393960a2c75f72dfe8830a556a46b8810762243c871d45a50f332b754c2836e95696b9e902310091ad60c8159ebc5325e7e8eeac8530418b890d631498e7d1d69c21046c664ed65d19b6d92d98b1effdac08e8dd8e8a8b0302047c435bb500663064023028baa4103a85f8f12bc4387ada536d2b931f34b550168990d7846401e7712b7a30763ab1225e1103f1ca97868c06682f02301bd7bcd571713e8e505c096cb82de2b27868166fba67479c445d914044840f7277cb708404d6b8a0b0c8bd43f7a1fff40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230510b4941ccf535cf67bbb67204625ad0dba57871958e1dae43ad12101b38035be543cb49fd51bc1450925de35e7da7b5023060cae1aa6ce1c18ff259f25dbc1bdf563c3501d7a484b6e698ca1a4f88978e65aaef23aaf11f9444d317f0618b12a0040302047c435bb500683066023100f4a4efb279c701d6fd414c3a0577fde942ad4963ce587c505ef68d76544168b6edaef9d5287e6f61fccc12898e281841023100ef7f53c5a1bfdc172b66aa5c946bd7904ab6d612e25ca76816c0d735e345f1fb074b341719948a6fefcd0f9a522d76b00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023002beb1e5a7c748ac991df834674149a27b9d5d585e62509bc86193a87c9a3cd61ef05c3e84b69f2da8b4b1362349b58b0230752739280db168bc093c328a77b83b3b8615caad3e3124b942a07d52831fc2c14b7dd84949f98c722c22032fbccc24a50302047c435bb500673065023100b3396142eab9ee0ac2c66b78e538afc6c1678a64c22541ac3912c1a99ab653f7fa130e1968d2170fba9e27558e18a89702300be88992c450184e3549ced2a6a5e7fd52671c3639db91ab9422d48a410285aab3f8b9149998ab352cefa16c0be63e410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301cc64177359810d113e35cabb32092ba04767d6b7359194cc96160726fb96897aa67cf2c38e17668cc768c8bbbfc885402302591f7b865f4b56909be250d83a45c526490cd22357649080066a1587b5779acac4502338a2007c2c993762d5ae6d19c0302047c435bb50067306502300c1203d1939ecd68f174c76d34e51e884449e68b54faafdc64f248b9aa07b72124e7fb2663e1cb6269895dda092f768c023100b82872e987906eea226739db00c2f06579adf010d0d69cd5921f6dc3161414aea28069dba9c73bf62353e8bb0687b8d40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305c01e8bc2e5238a458d75fd59e3b97de9ffe39604302e684e08b8fdb9b4ddd97ba218c5a5f665fa16fdb8c859811dfb6023045624f7fd0485a06e003b9df01e9b328ef7e27c307a5ac25bcf8b31cb856612dab7f9beef0e953f4bcc368dd844ba48c0302047c435bb500673065023079da5abdee831b0ce45313117b984dcdaf03e1506b6b5ed46aaba4e5af18a5a857072fcae083930778c09d7921efdeb9023100879c3ccb4c4e56cd5c09b16d4c2a49c125a2533ebc4787c7889b3e01e748fbf037798ea5985729d5046637121e26137b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302caceca9b52844e517602056782cbc2110948c2083c3b358ec5b08aa971da063e52b925720260ca21f05b120a8b2e765023100abd05747b07009be0365fd3c5adbdebf41a2db3d15fe4019f4274a58c2213024f373a46055338792e4d5226b593880300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f9bdd1bcda1344fd1f80a8a5486a040f698255c64797bcb559cd64677bafa102d7ac9f254d8602534a0afa76dee4d228023100b9e8ceb895049db93db2674c0f8ba5675932a715f7edad72af5f77a73d2ea5eca8a154d74655a63c8ef930d5bb4b0e730302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008779d0dfed9f557da836325fc44ec79606457ccaa59aaf26a4b30e6b1769a8af0778957d9eab46f7559cec87b5a7e2b4023033b87963ebf31b7b97a159cf35750ea5c0c9f045d4265263b00a7bf7f0cef7fb1e6a05335183dbf60ef842ffdd9f42fb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307ae696b52abe7981cfb7adccf707c1d8fd4acc784139c4f3ff706e2138710b33bd5b9bf3229c15d8a7e34eb0941063e00230723c264dc1aa5aa7f70847c33077145a52e38e3fc51a1d4072bc10f9e0b5c52bcca36be8f1be83a2c6090182b265f9e40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302e925027ad3c310b2091b31e55018a5508efedb7be74871ed6599dd975cb82c5b1a31245f20c24d527106ec1ad098672023100d97acf0e6eecd7c3e300450a3e6c25e4583dd19bd4080486751aacc49389de6eced38adeae6b576070ed2ad4fdb027990302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023017e3b09019a43aca19ef61c389c1213210b084b0fad38518a2c186cebb77e675ddf1a7083f8df8d84fc29f82d7c5a6c0023100c717277eef8df9ce2e4fd20a9b75239460f44c7ebff9385576905d12fb0fe787e1d243e7129cce890b416684150a7b880302047c435bb500663064023068052bc083a955e12ce78ef163a0fee9b4cd090a887559da5ba111976b3aca32500c8927152beb4732a373978ec58db202301e7a65560baf4b8e38f995de52d010eb1c5349e5b7f9b5311ed408110deaeb584d9764ba9e40aa9a099cc6d900c48fde0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c7fbb15044c19eb375a66db772a78cd70628cd56bef8ad1ac295e41bde5e461304e63f6b5dca71fa287733c983a0cbb1023012b72ecf77f29af24053a155800567010db728f37547f67eabd9d7f55cc80a14ec0117b21fa140f5062e4c1111f847d50302047c435bb50068306602310099549fb80614295f5509e89b135d887c0d2528ac9ef5e2511b0ee2a1dc5734c15be4c67f2ff7d19a2d5a4a6b020f182e023100a59662a46207e44abcd88537d3804de3a38d595a5db9c26f5a812e2dd2b0d27d9add5af78862f977e67c2a7811c1aeb90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303f39cb373747522bdd54ceb289f55396c4b21a4a6b300fb1e91a4a04abadea5004105bb3fbbc715b29c83128f70ac25f0230151a19f992c022fadb86cbb656022eaf2b66498bc788c1cc6f3681c4d5e3347535cdfecb8cb694979425f3fd5930bcba0302047c435bb500673065023100dd04dc955d4d468284b685c8d16cff766d52a92da46f7a67410a8fe430001ad15d0b7440dae387e08f3aabb80c28b97e02303d8156c57a5b45167d24be296935857bbde556119a6c61895b99dc77b9aba1012e1362405218a20e9c0af56e3149bbb50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b495e4cb1d8a2b454a327fed64fce30f3bc714d2b7cea1b4041a3bbb8ae77351d7eb39e6550af874eaefb96cea0bbf9202310083a4907ccf3f2d2e41871794ec23f940a68f7d121a616464a422e80e3317f23e23986cb54aac2dab1f510053462327c40302047c435bb500673065023100c6d9d7b9ff8704272ac1455d60be8c909a15bbd969cdf7b7aca6594cdf95b267938a126f029436681170749bb2d099820230725cbaacee1a2c26838fe61bb66474d926525081a1955e09984b2c60d11e9d6cd2eb25b80e84489df22af07aac4ef3c50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009fb281455c0e77447b795feb91bafb31833a5f9b9ae3db3009472976bc4a90a25e4d9a0565b317d11527a2e4fb45db3a023100e0f1a18293722b282a2647355440b59c4706610c88f9e78923dfef635d556851685b40de03b2877a3a2cb4b5520b4b860302047c435bb500663064023001b0c10833442161195d2b11c6055d41e43ba370773e1ad0c5257f6b0d4d4a2824064fc439d992dbddf14bd3eb52754902305684ea45ee1a4877ac4540e579258c9ea0bba5ccf609f6e427e6d68f193d6dff6dcbaedc80fc0a65a5ef3707f114b87b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100eba35c85ac744b37420937a64498d64ce50530f2a22eb1f715da3a3c1f510dd1c77fd98e2857291e4e7ab775e2d350b80230102e553305314381fc4c76157dbe196eaf936df351b5826d84943ac2ddb5762c2c13514f5bc0ebdfb6bbf5cb598669270302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c6f6184078d69eebddcbe083a87d6d54dacb8e21d798e27f48e6b3e216aa80ad3662adca90ffc1ea00f5b6ecc150c1a202310091896e4605f623a9d8cf53a8f706b3f52f141e49641c27791466aa140856e085e2985cd65e85186c898306d61dbbe8d00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f0695bf07357080ee45dbd6e06ad51b7dde1a7c4d87f61b606bc81a2575247e45283e2616f3fae74c7ac846426e49bde0230728e5f5bf6a25163424f4476571fb88fc7365d00cc9faa12c3efee97cc05c163f8cff4010b6a33d806dbca2d61f86e1d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230013701589c43b98c0bace9aa62f6c391e9c3bbfbcc25c5ab3caae5613b168162104cb908549af615193b425028212bd10230038eac6cce723dcde40bb8e142b165be8948968d2efc01021994d6292c61b5939ca163032a4433d309b89a183649be580302047c435bb50066306402301cb1ee50433c34b854609beab528e61ee81c2928d0c6a00e9a22df7ec9dec4cc81fe0bb358613822915f36c509b0634202307333dfc37633e2674d572655521c1e95949df12ff23e9f321725dfa72405949486c3cc4e82480b2eb9de745701bf717f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a36343c68f8f8fc4e1ecfd8a983eb16000e4167b22d451adce43de7eccf578be12e58d1579fc3abcf5970c7403c4b83a0231009ff35f64fcdac9f61c7cb3c833629b25ced96c6bbf0a613bf5bf786384dc73ae5f6b60e2856c1725ec3cb25a607cae4e0302047c435bb500663064023004d68b152aba77c27034f34335ef5748311be4cadb4e20a8d12c1f4fff04b119f3d96698caff0b68a14936c4cadd799402307d5f05c925d546ca16fb5004feba046a11da255ec840533e15b764c51bef0fe040b8fd4f51c01c582207623be21e903c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301533d744ca5e286b3d6ab4d0b5d174895d04a840552e5b89cdd83be83f082d142539e5d639688506fc44a3c275c731800230719de6ab098b12fb00d4988324feab23db3f7ea7caac8d78ccdbc8866e24b0699eb5fa3c06174b234d9c7fe79ec5e34d0302047c435bb5006730650231008417c125d8747c6bcb7cd8d1fb2199373204a0f938dcf7f9bc7ca53fd6068b1b0e21dd66377e3fa49c4e28bee29f3eba02307c6ed7befc06d36c981bdb37c3926f9e9f331bb6927040dc4eb7c82d45e315d12f5c0bbab1895b26791f23edfdaadd640302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023078e59c3596a4b162fcd0a36ebf0985d9969722061fe6ab2b28a6d4003a245729e198df1be66882ed6fa2e5752d6d1e28023026cdf3488653bd7cbb7cee7c6317cfd90ba1c37bc5f40c38578c6d3969cb6016705bc8dd102415b4fec718e448543ceb0302047c435bb50066306402303016774346826dc9b31897af977ad33fa3983cc0e349c03bf16d468d215cb1cedc2ce34a5f54e54c0c237c8367d67eda0230210b21a8a90ee139dc912274e18d239803f8ea024b6272a210ac3a704ac4e3ddfd700926a513bc5155a53b42992cd3f60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023034fd3645d00a1f8b9482b718e0cedc399ed086a334e0b3810d47f3e30469cb1c03371f0309bc4ce113bf8f9195366aa402303cdb0301b9daee78b1cc7b9edfc5f47fcd03f883c6618a6702815e5c405632ee853f5e5aa4d63528642556de2c705d4c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b73af81b8861a1369e2f6f6a35d3cb3de3783dc15857d1cbb18a833ef65fcc641bf60018d1f307cffd6ca5ff1f82ef1102307e6cbed20c1772bc4fb199549e4ce3d4d3fc3dc85db2c65d241e943009755cf8b68fc1df95023edc6e39f242e1a818a70302047c435bb50067306502305e4d8de71fb3790012ed5fb4fdbf0ba369836bd9853c03c77160571cb62bbb14385094183a3323f2264a5c204c26fa7f023100db0e830ba3316cfce6bd1c93e139ce2fde0e370051bb481894d781906989e058983e58dfc4e9bdfd31191ef2fab9c2a10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305b4d873a6f2f1cbc63b34e8e3c11cdc64b943928196b7412e3628a772d306a225ab6f7c82e5d89e3b9c7d6b9d393ab2902303e3b0f0b410ee914694b7ccf9142d136f222ed4037ef713f7f0e81085b444f833050ec40bace291c8d065ad1da1739020302047c435bb500673065023100df908a0c5ce71ed231350c1fb9d8c3cc23e3ef3e4e1b4db33b7d1618abc3961ea1a0be7a3e6847cb3b4fffeeab52147402304951038475ba7ec995330a5716cc593f1ea48a4f69bf4ed2749faa54163e1c554bb0c275e5b1ee8d1f613f498a15c90c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304b5849954d1383fd0b819a0a76f9e285dd78b0cec392b8d41781af4316ce208894b444b6c541bbfab84819e4f25bd8ac02310090fc04558cd9e7c69034b3b857e28fdba7628258fe98fbad0f5cbf37d3854ddbd11fe903b34de31e52209a8dac566af40302047c435bb500663064023034a751ab8ee0881dbbb5c0012953ad020c6ca217a9a4fc1d6d8a88403ffd5c41ecb46c95b364db7176db8f03fa029b6e02306a382b88772708801367f5c9d23628732363148144b01c9e8d6648464da704462687dd744f555eb738571030f6fd86bf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f7ccedfe0aebdf1e16c0f8785a80ca4a4fc7f56c919251efedb81876d0682cd7bdfcba76a1b8db9f651105b4c1977853023100f8fadb02de3231f71c08be2f2bb32cbd0b7148cf4ee1f46c9bc696e11c04fa78ff215deaac73755ede0db83f8a91afc40302047c435bb5006730650230134484faa90c8c51cae18fa49d57236a6fa450dec89fe50e457707d0c7777f04daf0988334978d217ce0c69b660c4f930231009d2c2f68bb4a2a0a8982587fd4866fae07235998cd1086653071276fad6fa9eb72b0e68c897135167ecd645d729fd4d20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310097bd9a125bf0b4a915fb0871d4f504fbd2a9526a8106f3213d41613345f23a1cc7369bb50728c4ab4c194157003cdadf023100fe173a40d9e5516b454bfed8557fd75653316457b2aa5359f4ab65571b38395af0ee320027e787a9bb49b1604ca35daa0302047c435bb500683066023100e1832bb912acc996eaec676b218f1ef3bf7fc92957346e91c7ba1312a185184cea23a603af2d95505be20e9757c69ae2023100ddc1e60f3168e7fb6eb56f0148ec4d43420b18a74681249d787e7bc0a36b3a1e7217ce8c5a946132e2c41f4d6d715a9e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009db086d34e6ec2d903f7a92035015479550a77f9ee67e6d455b689e4ca5df81b902b666594057dca1700a43a8f6bd052023100e0956ed69f7f86310192249350ebe23640769f802d5470e0c1eef02b3ab9dd27070920aa5c94dbf72103947acfbf29e00302047c435bb500673065023100e65d4ac69186b93bd18dbbf9092a37f2861c1dc3bfed2205df3137e8f4885bc3540d28d97432d7f22aea8b19c50cec8e02305ab18179e675c44ac4444013abefdbb91da1397fdb83e86936adfe82110b96507e2286d7c47d027efe95a7a5c8e6e4b20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230470d765c17bb6a978e1448ed99612dd58862e7b5c6e81f463bd8947329ab2a185b5d5c395e1893b9bda242b10a14063a02301ff90eedfa4b2a8fee17218d0f153d29582cdb272647cb1472160fee0c7900b242f3f410ddc64961363fda86101a6cd90302047c435bb500673065023100aad388e26f62a885b03916b46620062f2e2914fd20c0113864b179490cdd528d1fdda1887f22e73d363d7de97a5e16c80230364665ea398dca6ba6aa954c30dfa0912d6de8df8fb962f5f4d7a338882126eac47de44e767fb9585adee808be663dc10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023028f0b3fbebbdea33e6ab737a9e3422c4414b3d8b122760cafe659552275e3e804a50486a3252c7059a01bab14e6c2c7f023100b32d1018c1e3cef4ceb20b3a3c2a3e4441d638893eb201de5126b6db85d2c9dcf78036dd1888d9216807a43b6e3b706e0302047c435bb500683066023100d1bb0c3292a23c1012f3d5cb6b5f9ef2a558b68499115adfbaf8d152bdd661610af99b31c1a1f0cafc958b04a2f44ade023100c52d4593ac391a1cebb60907df6dcec9615206edf178937d0aa583b60a9ab06c45ebee36090f30f69e84c239af9def130302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023074374f34ea1be6c1541c52a5fa16fb4fd73a911df7534a386320730bef6ce50976b6240d4253b7ce45ae6e601fc76e2c023100e1b63b0865b189c98ae11c44bacdfb372b5ccd5a938c644570aa9201332c495c64321f7f5a1439c6a0967e1d999a686d0302047c435bb5006730650230397c9fabd9d6c6cdb7ac6102db5c187b61442bf6716d807ca26c79976e47dd804413f14d4a5207b5fa7a7e4b8ab2298e023100bf5c5ada5c5d80e510fc1572aa5b8cdb5b656226c02f78dd2f367fe98acf0528968d4117339184dfde7464ca184742130302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500653063022f3a3b4921a8df5ad428db79addb83d1ec365d4be3751b164bba91df440b484bd6de4faa02bd4ff97e3ff0eecd1b542f02305e802b65059f476280bb4ec37a7cc03079233aeaf259ea75b5f8a9a89ce9f00a5c604f421a0611bbad80285dc7dbad2a0302047c435bb5006730650231009c5f15d4841c89eb9fe422a5ee94ec3e474aec9aaa7b8fac5921e6d3e38d174fbbf160b3ba1490e2b460be51a094f2f9023063e7725a8244a13dfa156d6e3ca335cfb817978a461bca8610012f121f526fc48bda611d36d617c70f747217e47c8b770302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008db5df8accf51acf1687f080e14b0244666f33053def8843925e58886b701fdf00ff528896b3d1643f8cebf24a8dccc302302417e11188115f41fee1754679f48123a165d8584f32629d06a372c448b918a222b0a4df6803a51bd264021c6bc442920302047c435bb50067306502300432b1ed1d7272d6d718a2009ce097e859b7c1ddc1ed420308bf85bbb8b4c621ab3aef27d89e1e4df99a103b3aafec54023100da03a1e47adf396415e9259dc9a403de371dee0d3f6e46f58615ecbcd06f7c12165ffe2dcb30dc842b0ddbf72e8aff8c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100af70a11415c387a35c21fa5d0dcd33019db8d7c6bc251b8bef48e659c92525fe9cfb4c27b9aa4e6c092e605fffacaed7023100bac0277ee4ff2a04446104e424769b3f2b536280d4af1f4d4f8ec7c98a94d56945bd07b9702d633ff0e4f672c701e2780302047c435bb500673065023100f4ef793fb5da0ebeba34045e761028cd738084ac5584d4f85c3d411cd22ae270dd5502158bc636decc6d89edceb14377023009e1ffcc7bce77e888269dabdc5aed5f89c3b3a55f2533864d3d033eef6b3ca04c0153356a477ddd1082c8e50fa074db0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310085c48941889f5a7f9b4c160770c5db94593f0841c455d3e93913d3cab63b9e11ca6667924b09cfa1ce977c12ab4167c00230649e12eff3efab5509fc188b696c91c8479f5e3a1a3a4f063910fa59e3dbca6a25f89e67891d2456b9627c84f8ab52620302047c435bb500673065023038520be4c18cf663c5dad228ba1f1a03caba5c3bf5ecf672fb3e263179248048458512e9865371209e1875b668604335023100b84b882e8c82b3072b7d08f5e6200de18fa47e09db7c74c0638490678e942ec60b0b0ce440f67e80540cbf3f13d860f10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e510be7eccff409a39d0ad35dc2e515fa94a3068813162f8092e5f10e590070ba3374742565b07bcfa6610cb524afd99023100cb969f4f98c4892ac680b32cda98fac97e2bc103335589dbcabb8b60ed157560206ac2d617b600f53deaf88d11716d580302047c435bb500673065023100ab36ae95cc898449f0c82483d3f40f32e254acafb739d54b59cdd119c3aa68888a7ede49821bfdc1f7520eda002d4a94023003da0b96be753c9891a3a6e233467c979ba55e75309d6ac732de55aa94529d8e5bd621d561ec6005ff08a4c0ab23094b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305390d633f1488588384b0267c645d62a60d4c34f9dfcb0d956cb97e08f962a9c06a386a0246d28f9c4a71d545a1b508b02304b06e001cc6b663c93d29f33347b7cf2ae577753bc8c3921f2ff990db33fa26adb26f4c6cd74b1bbb1d98f1f3a61e1480302047c435bb500673065023017f3d4e5c883db95aeea13a4f39e6f09929b320c6538601fe6543a24071b6a63a969e304085e8de8f11df17a139b27c1023100f7dbaf56b6ab5a4b18dfdc0a4d4dbaabfce6fc878218d1971190532958c1abed9d90d1362f82895951418452b1b4e1970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100984a003b61ce80356157346b3b1c7b88153a2bdae19e266ef8f51ec978813fb34648d541929cbcc18c4281620846c3b5023024d32fb3f446cb02f60d24be7d52cff91291efdc56fc2c7032b15c4056f02a91aa622d1eb48a85b918200d54092e7fd50302047c435bb500663064023033596f753ab2ce9b08944b6a51ef77b21225500e05856ff012fdd0cbec2b6e39890e1ae4ddcd082235861865196349410230674c9f47a81a189e043392b3451d1d6d92eda8cf1afad79928b224fa3f4ebc45eb49cf8fec184717811e7aa1c80ee39b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303fbd4b48cbf3e0129cc1ab0ac77ed08759312f5cecf28a7fc932e524d884ab92514587b487259b110664717ec8dfea1702300c10417c950e8ba5065ea12da259c7c0e67a87d17e69de70189fd1da1211887c310b689cc6c35f1fd931c3add8fb093f0302047c435bb500663064023050d16c6f2cfdeafc44fed5bf74cca521dee6b593b2adfc480282e88eaa70da55dadf808421f36e6090d45eaa0b697963023042c017281763105fde91e18d94d42b8470263dfded5adabde380efe3191e9a2832091cd431eff74efb9f42235d72fb370302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307497045ae72ec1dda8afac92519266be9277991e31fcf965f87b2dd114d1b5b19c87dc36fae7a60ad29bf43058e1ff5502310084b73512de2c5cfe371e1471341aca512122ad9732c386f4213efa1ccfb71a2820aaba595da7e92819f8f4c0b47ee0110302047c435bb500673065023100ae9a37005fc7ecda2d33901eea3de168ada71bef38c7dc9339f8b57102da4112142690206e624bf066714a884811529c023052b007dcf3536898584487c7cd7e90144c2589ec8a50eefa970d7a0403486db8a86ed16095af50189e117b0579f2724c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023009460724ea34c03829db0c8576328f330b4ca51bc3496d40fe96a94f1cb3d15b06a751f1059ad85c8b053f688f5db3b60230668111b7bff1abc678af62ad1a9a8c7525aaec5abc43534c34ed8cbc648d6d4c24b3d2b42f9e0be95e4db24d98a8ac130302047c435bb50066306402305ba891e274dabda5c8f46f0ed438bc947d95fc8309d17a7c1627b1fcc771b5765351dca4534fc6453320c517712724b6023023a27aaf7c0a9afade3d24cb3e793115aaaec7a01fd001df0057ff2c162d87e8b9b4498a2eb39d84cbbfe8f4d0b2abe30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304fd918a0c8ffd0b2015b1cbe15f7057399e2610ee8390a32ee534a35c5c3f14fa78b0a40d3e0dde27421769c251dd73302301492105930be8c5ffabc192ca96a1c78a4a13bb894f28207610ee48cd95762b1d85297fc39084b3fcbc5f79dabe469b00302047c435bb50067306502301f9a395b356e7e331985960ab8f4be3336917487aef1f3049a1800a1c1817deec1bba8a365893fb4bba0a33a4cc9394b023100bef2f02d121da1a0375bdb4e9d92551e18e1e257392c3881fded052e25225c6b8aeebbe300bb7940a0374117aac1e8d60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023005705c48d7302e8a534f7f19a9e9d978c0d3db8ce7def5f7572d83006758891ed65d720b39421630cd23a02ebadc7761023100cff38f628ba2ca888a3696fbbb576eb1db426b5d4ca12afdd4c239eb9256efaff4993f1f2cae51dc7ed87f12836f8f7a0302047c435bb500673065023079d18b97ef6e947ba09a3c38f71a2743b60fca34ea83f8d5f6ec933680a75c0e323f7421c83b36e217c4341f0169344a023100e4523bae79ec1626148c87380e4e3dba4631d5e6e6bd2f3f47ec0b2bf533972ecc06a5f80a0cdcc72a96d81686d68ff80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300e68d116855d99a9c137992ed765a0b50af7c48ccfd206cd9e7d620146dcf50bf17f9e2f74fa472c3e173bb29a41378c023100c859c89de0083fb0f0c143784c8c32910974d776307f5dca7239effc8c8d6efc18e6fc5c6ef04563bec60e8c21367daa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b5413cc4b97112fef4108bc8b7bc77cf83c54545c6cbe72243d0f89ddf7a97bd681e3ade8a6c0149c7d0e13c9ba2813a023100fa1f38ca35c0976ee0c0a908ca82d557464155d37d21f6c37dc573082b61cf3fdd5b863fa6de60281390fd8695fa55440302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d676a4e3b9b2476f3b7160430bd52d7a65cfc490041977d2bb4605476ff3fd4bfb01847b8f9357cf3847d7903025592902306a8d52e5066afd799465ee88863e4d81a3c4ce2aebbfb120378afd859c55136658db955cee385de4eff3b1e923d274d10302047c435bb50066306402307ab06eaeaf5328b3331445ba647d49782ba09371bbb6a835ff25970d5dd7b8aff3c7d2c0e725f5feebfe59e221e01f9302305c4d3901ec05ae0e42d1112621cb78ecffa726ea16ecba8222843ea382ec712dece1da4d7fa830bf64b83b13b6c8e90b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230610927c1f409d97abec86abd8dba76de15a2f6ad82b8fd40cbe7ac7fb78b718257a8c545e5011f378351a5e4f2714cac023041edae1339ebe29c35eb0f617aaee561fa6d06b757cbed666eab7dcf350c56ac575664b3982f48b289b859bb6a8dd09f0302047c435bb500673065023100ba090fd540abfbd0b9858cae9a279a877f29e3dfb9ff207139862e5dcf2b36ef4b69a59fb76225acdc60246f68d3ebf402305e63a2a4926318c1e77efd62bbcb6a2e9999eceb49ee3ac5413295f74419828317173b4ea93b6879ce26bb8e736c92410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303da57fe509d4342a4e5f52e4b2340c7db8b7ba06490b4f7763acc48498ae5ac362453a29adba7a410c1bfbcc8864c6d802307063d06896e821850343870746fc4b7d1da24b59e5b719c0c2490de5531ce5af9e9b16abef42468cc0ed07b8b078a60d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d97fb836502d3ec4d282abfc249f0b72c2539770e75e7c5b8d1124978565386b8b24e782df75afd1fa2d476a6f69ac80023058a274e824ac9e29ca3f8ae1c1d5c54b22c2435d752da332d9dd7baea18f0f5f6a1cc4f7be0c16e02883e27c9a3c75ea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100877a4cc20ce00cc2258fd1207100eeb4b495138cf45c0f24f2832cf121d72d4cbfdb4db506ccb675e7e3990049ca28c3023100b9196662ef35eebfd83088d58eebec879f0b27e6564f509dac17a2b65f5e5fa2660c100af551492e2d6f933a4cfe51c00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230356e5435920dc8bbb4d24661ab5f221c03b3b69e5bc3852b56d560b6b7c85027cb1f69437e0e266e5be67441147df174023100e3f1a2df26d1e7f403987de1adcf69a334fb566b136d6bace1a60ecf7db80dd28596c3339103c1adb6ca0f36d3dfd2c60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b87a5aae55b658ac21fc1eb8e60887015fce226509b800a3341d2016e6047bf15dae2491fa660d238a9c0f4b712395e60231009fd2a69ad40e0d1a0b67ff307dd9271ac32c1f389d51162604f7c2a53a5e65b49cafab584b5ec4ed5ebdbf329c97cb6a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008e9f7cd4f7e90b67627cf6a488cadf8e8f110f2380a0efb496628a83659129d12d695f5d61f0efc5f13ea887f970d134023041658364922a11c095c634828bcc39d83b16725bb431cf346439290002052006e25eed2d849fbb5f2b4456d9041feadc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023024fc68632b7f61c76842e8591555fe3d3cd2c6eaa5f6650b86a91091e5256133f28bff0565a1b7e6e5ae7156fb72773702304b0531645af991cf97c8472ddb2941afc885b209c1d7df0bbed03e3251d97752d1a958b9c577f4465a1ce0794ac59f8f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a791ab55d801d08e574107908b145fc61349f58cc1485f8294eaaa90469359bf37f6a9fe7e3b632a515deabcfe0019bb0231009cd81167f7718756b0af2b1b0de6c41577f5518f7b24e8e47f972600a09c53e218a49879debf5393107b77a3e0ca56d80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009458cc9fc3d0e30d02da81276ab0500c68d8b00239ab184d2eebf170ba50064cddab5ee7625cafaa95b4ba998afc1c1f023072a8b7921ff4383a16f7c013836ff9d54fb4b0bccc8df3201c8d914cd6bd076df05f170301b44f4d7a11c1ddee93c0c40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023037adb4770ca0d7bf7d77b36220d63dc4d821e2488538db150a72e14356776ba9991b369b4769e3e12058b471a1d9070b0231009ca150a18076ec541b124956487403f3fa12786aadd2eca208dee11b6b5e8d71fcfa087980f98e278bbb6e838838796a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306c017b1fc019608e42193856173f850a4a4874bff46e2e9d0c1cb9b5ff9a1529fd7f2c791fc2ad46053cdabc1808e23f023100d2e0ee1401f3e87487d17ec817acb836783fde6dd7de839bb9e145a420761b0b49fdb56e915877ae9b1e60709bf4199c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305bdca787de1d4c126b2249e3631e174c3703c80b2327c4573e6da424503d71436c3377662d0a8757185ce41b912f3249023100ff6be96c85c5a0f6ce086992d0c09800e6ebc1e53052b6a638592dd6c77605d92c1089562d064fb0fc625baf1b1c76f50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cf3a270528200ac9eddf74fe919ec94dca139d48437ff5250601281eea2833034a0114e3a13454f376d52e4c287b52bb023037fdf76bd1ab5ad10f605736f0f763138a263455cfee25173980257fcd9841fb9e6ad4596dbcd6544a94d78d94e425590302047c435bb500683066023100bfba67f4a2ab944c2abf111f6dd9f2b8bc4e3de7ce7a4853d1a626762084384b891310cf09b0d6665af0355e7c2351630231009eeefaf8481918fe75e5fc150e3cf0957391608ba2d5d406a60a65eae2c1f6bd2f60928685e65ad9c6982ba879bc867d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c2f1626c09993b249f3a05fddc7bde7e66c1f7abc92a420df3476f6d8ff1b629de0fec25ab111df55707c09eca240fbf0231009ea52efd666de24eaf8daf82941513c4ff15bd029cb9f019c847cd4e6b5f1be9d7b5811186d6884cbdfb56d4db9fcd750302047c435bb50066306402304682c772ea1cce2bd988ea26332a0d4f3d110f0fe709168284b0fdcb3333dd5c74e5a48f8bb2d6c4a8ca654e7e55542902306114ac55b57cd39236ab7136025def1313960cd206fe3603362cb2f5ad703b42d13d57c45d3ce4cb7f126a778b1469460302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fc758d8a714be2eca6c3a59f9e9b67e901ced3bada66f0a8a74c12c862bb8bb0c2dcf195b5de8a6e46feab05eb9c8e5e0230375ce337ada163999d18448368092474d8dc8f91f6ed45bae80baf1a3bf00901589a4da0df742654161effa7af46ab590302047c435bb50067306502303ce33b6452a00ec6af9dd317c4580187fbe00998232d7ed2af032b4b8493e2416a513338259158091bfebd4644e1dcaa023100e4fc6ef3ba16708caa95800de7798ffdb64c7b959cb2820aa0455f7e49e3005cb1f8fc2804993a950c6cf49e702814fb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009f98aebe78fa25c621bde9e60b4ba876377564e2ac2632663377be1c5d267aa14bfb223dc90e0db3b9afc43e35ca4b4a02300dcf5b861350cddaa7802b5f79a7215f6f97e2f57f093804e53a28470eef7e9c8bae3d6ed5b0a5ded706f72ffd39560b0302047c435bb50067306502304f1ce62d64d3632b5a95cf4649b96b21af3c8ceb5dd57ef5c42524d1259ac72a2cabfbddac52af7338566f81e6c12ff8023100cd3d4f37efd7e38aaa94bbc56136ff0fa01eedf44b8f69412d2d3d6733a67e477a51743c8942d0aace63f8401eb5f13e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230215ed24e7d871896474a22085d5cb25496b9a11351f37b83d313141e859a43b7c9bf5822f1e3ba5b3fa48d5d9f1d61c902305600b811b162d586be00176e58f1306af9c71066ccbf7e457dac80b12f663276cdce5fc1383a949201441c977fbf3c390302047c435bb5006830660231009cdaebafff298c90adc9b09e812ed3e13bb66f2189b76289c73d1daac16dcd741fa20814d2615f8560f269fd284a8925023100a68d67d3050a0d60ebabc910d544b8761c9322d55191b0610123eb49605057334740d439bef7d292c5e44286a7261d270302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f63c12d6e2c3509d1f1b78e51879786d67d8ccb107a787ba359a4fb0e217833ba8c3fa4a58d3f7d51c9e6187b2f203ed0230578fdaead057c3e0a656587eb3300fec8f6adda700b90f76ab8ae526dee2a86e94c698859d60813af22de72ba205b1a30302047c435bb50067306502302a344ed9d40f71d9e072280d9cc21c1357e847cba2d1b8142c88db42c90788fd0bda48b387cef52f786a7a2e023228e802310093281257f5f3260cdfe014f6cd5ead8b909f5865d3bf7845a3ef67546213117cc9e96a638ac1dd2dd774b432394162320302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307972be7e205a6e0f45c7f7437152a667df45264c49ba7c8d16add2d170e443badf1806126c4977d08c19209fce61c722023100b25e3197c3e36bf5be7633fb27a9f5c53e53eda18bd2abd8bf5e983ad6d1c9c678b229dc1ba8c9dd6a217df60bfe9be30302047c435bb500673065023100c7af2c8224fee1bc3db47cd3d9f4e2a6acee92a8b73f2b8b9cf1a074157e497b9133d3732cfe591657d084df84a3fd6902305c0cea0f09c9b0571db638ea0e71488a93ead459ad95c4726cdf51abca2d15f55d85ff714efa84af58ba4496b98290ef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d00e8a29602b1a89ee3b81cc52f62a6b72a2cf7e4d47945c5def3e7bde7e85b5f0f6973f061614b68cacc0c9bc34973f023100a180faee0c73bfeb625e6702414f96195a722579eef4fd5ec92fefee07529c043ae399e39c64b246a62fe9b3e55104ea0302047c435bb500683066023100cf4a53110d95b9e93db2b1a31a23044b4087d408d0ceeb184801016a5e4395a61966dab3fa2c9912d434ba96b706d2540231008f327a3790c5eeeb721291a2a966d60d6a79e7e0248fa2bbcaddba26a28753b038beb6ba88c8937d4fea81d4c27331f90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230542180358973e14028f58f0bd236670e061ad78ce494aa14260e70058bee46f971dafef68ddbe25a0d59957716bd6b9802304522b2a8c68d7c82342ed2c78ee559bd09a62c792fa737434c1e9ccbd47bb236f86b28747ce1af9da8e9b2ce348ec3690302047c435bb5006630640230605aac06fb67f1180f1af322d9ee418b090f4b9383a42e7b349013a442f173aa1ddffd05f2ba8c3673dfcd39f36d020502304d990fc1b3899740e0a2fd284bff0c9e16110618474b3d0307233216a9ff41d878e0945fe0e83fdd8803cb3d9550d7cd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310087c1a7a529b55f2a3e57df9a1cb41896fc122225409e8f4e03f67aa73f85bff586fe9b1cf3a97af16dcdb2c50574877a02310099186a828efd2f2ee4442dca5f482ac9ebadc6ec2b3d116d334b97683ece9de779f04d116ba08f0be0276609a02c52d90302047c435bb500673065023100d06d4120a7f64d393ac95ebed0c784375fb672bb338c8359451d33daedcb3317da6cb0af52d1317d5cc6e26fc704ac3702301172791158b49db47252d33bcf2d71303f1fb4777fac1cf20676907123932e0db2e1cca83b23c34942a06a36fe0a18650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b96c692fc0df3e33f1775a196c35f4694aceb5ecada1fdc229b93381f3767f58e767fa1b282f5890cd20036c4c91d1d30230448a258cd98210ccf6ad85e0e19abe3cfc3abeb163d5e870ec17564d7b168264bf60b2dfc474146c31eb245d81e88bfd0302047c435bb50066306402300599ac54e79aaf69bb7aa6c0561fbb83f911c3ec6f636ea68fefac777337a782898ae102aee8be6c6acfe5f58f18e37402302515c022a38b2074bbda3daea1b779df9b45223f95c415bc13000e71cad50fe00e626640f17b746d3dc76ea9d32a20400302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023074fc7d2dc69fa696944419f4ae3cec90bbff121184913d02807b054d7c32d1e4fb6d0411b5ccb5ff6a23becdcd63c3e6023025e5a9b39c650a9bf4c7851b726e329b6e13a1861e25462e60546bf4d2f6699f0a05530710960383739ed4a5e1db758e0302047c435bb500673065023100f76951c989df3100c01793b4217a9e2329df0b231b54e059d38ebfa42dcaf3f62e15c0b3920a5109f4712d365c872ce502302916f8cea28973a5cf9090cfbf8dffc60e91f2c4b19f5228361225fcf03ca660d59b4d91fc63ea4b4dbb103687dd0e620302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303e332c9bd8f070c3823d49f1fbdb28e9323c93a76ae77613b13be5def987b8973fa05a438a078ef931263cc61e5c900f02307aea07f8cbe3982ed05c4eed7e58562b8d9970d2c2d80a0feaa78501a42829bb7b9a270bf65eec75fe85ece24867bc2d0302047c435bb500683066023100e96b18267011bced229cabe44532b0c17de15a82c7108a3faf86810333bc166c9e338dfd1a581156bfd68f884431ed91023100d6a93b2ad6cb15f82868a395d73ed21c19663ebfa983ac7ab2071226648a82fb21213a32065b4244335dee4e5b6e7be90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230625c75c3a74ebca3591cb2263758710e16110ce0527af006edd9bfbd26df558413d5a442bd8965bf220fd59c9326e1d2023100f39841188b855a7c180f77f9af66426473ae918f945e0c0189ce9523ca86ce809993806cc7b4c96ff3925e7f973579ad0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023023d0f3d2e3fe4336aa169acedb402a6e38f4fc30e6ad9a3b8a05f204545286f23bfa6e40442dc52d480b99209f36150e023021603d2a1be55c4531cba0eebb8fc0cdb1f678b00fa32bbaca3691c6ee8d949920156bdcfe5a43333fa2c14734a777ab0302047c435bb50067306502310080195b7e8a62d04b6066abd2075266dcc11a69a563dfd34bbfebc17250a4cc0d5322b2a0bc55301ee02132ccf790e8aa02303c0d79463432432e2ec72b77646c5c363b8e3db608b0512eceb60b9b65d2473188ba87d00f07b0f64e11f6dcdf30e6df0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230280f9c0de459d47cd0af2ec0482a4341c2d9b5b4b0818979f185a585b52370017f0599269a788768f614e29e81524e6e0230395b5f2fdd49a876d75838786b57a976da8a600a40fac294caf30ab6ba93f01d9b8a962385de81844eda9271abc917b40302047c435bb5006630640230688e37eeb8f735b8124c107275bb02db05e5554df2dc2e1cb260f50aaf0850025f36159f0e94a9b1a92c30f58a1c125a02302a5ebe507cf85da63d379c5fca52f05ee648095308db25581ba6042f6833e24a84efd038dde53286bdb5f1cd1b8f4ccd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305a24ff59a116888024337594256ded95da0389e1ca04a96841450edb3ba16ef6e0d05020fcacbcd7690d88402a58ea6702304ae556597e6e5d34ce885afe20358062ccd9e99efe58c7fe4f9a40c7befab3198f4144f7218b108d3048b7217e9480930302047c435bb500673065023100f47004f5b648e1ad0d1c09b31c273458d93a63730702a92d0fd5dafc028769b8a3239fc5608f9bce94d8787891889e450230128c8843a159777d8aede3eb5fb6aa3151fe1eb7bfae90d98cbe57869727b70ab6b8e59c05c9fed6ebda6e1e74e1213d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d290e8ddd135fd4cf3fab3092c6204b02c11aa3ce319e71e12e358b71cf84c9fced29a242931cc6f2a36c5a45768be4a023100d372db636fe975c962f5fc493eeefb7c795f65f24cdab942cf16e55b25dbb3a486c83e51c33f28fb5eb1c905427860f50302047c435bb500673065023100f943b3dc50bfcec92a3cc7a128e8a359f28d8d963b56e60a74c67133c0589a38b29ab4121a82b4db837cb120ff3528ba02307ca6a9d09f47b77d766e5468cd691de8220286bcc8142bfc72b19f40aecde5ca4e6922dddf1ec1be1aa9de651ede153e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023000fc317011ab47a0c8aa062149e4edb2c916fa7afc7565708eb60c9b0301f1931aef4804e489296b4449e715fb34f20a023100c8dd66bf3a5c063b8c74d23364da2347cbc6328aa5d1ce82b0aa43d07a365ce6258e649dc8323c9ffb84e1b44710ed270302047c435bb50067306502302c27a4c316ba431b7a131d511e82788fd7677ed0b60c1fbcd3a96be25633fbe7ba8a8c13a38c4ad0a2a0d998a2d4049a023100fdfaa56d994c3bbc16f9b6f1877c09eb4e169416ebd8d0a895591b6c5d963d94a0731fd38b70bea5067443d8e64b9f9f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100966ebd9fb7c2b152bf324f238cb8fb707144dc85f53bbe8e8a33b9598acbae140f8fd05063a3db98b52b370d1b73be220231009a6d088d53062aa3f84b70c4a199e087f063acc5a0a5e344d50126b86a25f9ec57e66acf5ddc5170e3c999cf05a73b3b0302047c435bb500673065023071d101e9fc4880387287628a636d2419d3b85093dd64ebd94ce1121aeda8cc56fe2dc83f33c4da4378433997f64aebcc023100f7ae22816099d16cb71454517cbe9fb04731d608bcb70d11ab6bac8a7157d763268013da9ac5b614e60aa059b8f919860302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bb342c84d61e9b43606f7887dade506cd387b89b3dc8157ba146aa3b6b18242575c8dd35b9cf8c56a7b8a7a62719aba502310098acbee64ab03ca3785e8f8bd17f14b65e211215299b4042d2b370b11186bf905747f001f23f3589ccbd2ab31c0118ea0302047c435bb500663064023065b70da70e53a7ea824694617d13095c710308fe03ccc014871090e80fdce0a282a013f8acdaf7aa5d229c61b09e623f02302d1790ae073573ade9996e5b25e65ee77d3fa1f12068f31a8b1df41a376c09adde7207e8ad82d7a707c0f29f15bb04a30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023035b093ebe0ed266a7b07441ea078de5046714a4d253a7acf8eb6f9dae23a66c29b9c46773e78a768b6e5863a352072e5023100e0218d352935f2f40e3065953859127755238c789d65fdfc7072e4f610fa5f5a440bd6b35bf5a956330716a8c5fb42a50302047c435bb50066306402303ece9aacbb4ee7a1806a48349b476e2f59194aee8bf3200c0c75757a066214be6c0266f2273efcc450f255a3341f07750230785e6bc157dba0a9f9bf5e2f19c34d5f2b1e0ec394ea8d9602440a91752caa193afa92cdf3a44b25629d44048de5892d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023035d23d39fc4c945f88f377184f11d37ece26a1c82f19a031f2c3c515c8540d22ebf42418559a060af1dd13f062ba59660230361467b0fd3034ac4f128eb2baaa76978ccd859883ef3828fb917156225909604d386d5a26bcff8b2ab572f2c58162960302047c435bb500683066023100af15e6f0a6bc3c1986f9fe12ea4b1c8b2232868e8bbbcc57eb9f13fb19ba761d820f491cab48b29857de44bd927495dd023100f8d8e1af435babacb62740c5ba3924b53bbbc5704522827246f7c035fa0cfbc03d6bdb77e063abb1c8d79bea4d4e13180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301bee79758c683109ffd4c50b8fbf53d0a20df50479775f175aea6fd8656bc604931d12300c651fde0923cca997049f31023100d48a6d03f59108dd8dd2abdab6089c535bad911cf3a24c3920dafa1181f55737b6ed912c916bc0770dd1893ab7aa222e0302047c435bb500673065023100a25ba8d57c76638440f566a4de6d5769dcd0ab46d565bd981865e0d2d84dc42dd2af5f8a9fbee7354625059ab2200a930230165f2c3ab419d39d1095fd5a912a27aa0ee36268c0dc310eedb804cef399a5df210bbe805c387be1996c9228c033ce5e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dc9a12170363fc7f5638275f2b3aa37173690827da13e5ed6c9db035786aef0020d98101d8b04cfeb8b1fccbdd0a2690023100a98f3ed2ef9d9de2b244e921eeb50ebaa098d6c0dd21e64ac530c4fa3474d03cc52c0fd3c348a20ca1d678747c35171e0302047c435bb50067306502305390f2ff2b1e0861fc1421edb50b7c65dfe59974681239108af0eaec43d462adbeb2c559c1b2e3e296472d32df0cad48023100b2d58806a1f1de51aeb656e671c99357a50effcbd60f1f84fdb5d458cb174becbb9e00720d0c02f2b0b6d17ae881491c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c61dd12d2ad7a5357c0beab02a4441a85201000010117c5b21177cbb6e33aef470bba7275e8fa92d5d4579d3d9ebdeb6023100bfef1b33e27746d024dc8656e86d66018d4f048403776f2db7ef921d20ca4fc0ddf3538d2b6ece7b24b5c159ef2f4e110302047c435bb500683066023100fe1b38338cbc62536fcfc23d46c992efdd72425c435c79ec486f6dff6059729c5f6ea84784f1c9f23e50748a571c5b41023100c2ed92df46184beac2ae81dfeb53f160e4ed163400ff66a752263debffe7f95ad610712cc90a77e9aa1f8cb065a1d6ab0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023070bf9c79faa903d336280e569c339347f569c36545a12ab1063f210a0c9e4424bea23972689b2d28d60c7995601cbdae02304a33552332f9ae5a2d606c7bd439a508d5763843295b4f975254d3e1ac3d093e73f147db485b63b4d2f59bb90935a4020302047c435bb5006730650230567de1f6304a6a89a553577cec856abf2acfc2931001b9220ab045da6a6b41dec63ae102920f9b0ab0a1a47379a38772023100903647e813723cbf974c6d88a40245614307e4d22894e2f706a05847f59da95adba2c244b1011d0136e30222fae7ed9c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307b04696d8297dc7cb021091a2172fb199cd5c4defa3308bb8f791f56f02c46d56317711888e6dddb899a80aef39ad43802307608d4e09bf51a6d2ba2b751a3e330f01dcefa6c4808daa66d2756ac857c023c1565ae3b29b52e030296fd5262cca3930302047c435bb500683066023100ad7a3ff0a3316a58285d922263c462b7e3a4a18ef19f1f54eb326352c2a098677cc6a2b66c7a37a0831d04ecf3649f0b0231008361c492bb20b5a93dfeca2932806d4e20640abcd33d3cfa459881bc431af6111cd164641c12db71996112f9c6301da10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f233878dfe6cd64043cc48f40a601ed280c94b6fbc1d04de2e517c80a8f2d1b13486e967e6ae7a5bafdb3b88e3ce183d02304c396a04e87759f8e5bb22dafc64b78f0b01493783a5a8685f77c9fa1f725835f1bf17b8686c120f3a565c422e4abf010302047c435bb500663064023055d297348f261becb359fbe29c5bdb7ed1ae8f68bb72607e014c0adc541cd38b596c9b718578f676df850a86a675874e02304a16363c8ec7c63b29692f94ab103461725d8b4936a024329ce6272876fa887b153967de3156bd4e178e294e5b04f6ff0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306891cc833b37671b531aa584f92040f54ec990ef36f2500d882226e2a806b7fc6525da3d31423966c18eaf90e83db8100231009ee90bd27af343342aeb9e6548ce95d43c1c65df71a7cc221ee008f310187c4e2c50a4f58e47d64f633374b26d51baf00302047c435bb50067306502303b19151e833c7632c76d10094625baf7b0394863f974e502668611d8693b6762b0e53371986a1b7d3e87544bce2c9555023100c9b0fe0c726169b2431a1a32a1ba8c559d6d0f556bc1002557358f5428a82d9ee6297494a072c8cc4665fd719d4da2f40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023032be906c06a8da401c6c03b1966351a3ac5f502153400ed643a133c7ad844578fb3f2c367ff709d96c47fd3431e6c8ba02301787ac4338709c00f881f380a8c3eb1569308af726ff119ac174a113dd58ba62ee1fc094f2a22da9246cef115628342b0302047c435bb500673065023100983d023d13628cff7f639ec30e8e0139e984f2565a8970c311697932ef2a3cd3c30baaed3be30d5468b1353220f4fc5e02303ced4d7e1612e893f1494507bb3eb7d411fc415e7006884d364db3e4b98c19971dd308eb55fa5fceea9e6bd35ade98e10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302f03b56b0048b7b219130dc3c6758552131495eff526406a687cdde053d285a431dc2fb43f2423964948efa0e1c7e4aa0230143afca342683d8faa402ef62c5e6bcd57dd9e5224a8d35bbb6263ba5960059d8aeccc28cd24b72dd316223f6cbe9acb0302047c435bb500673065023100adb8f92c64cb8784cc70cfa16321659558be15bf23d5ec27727fe178825b9b81bd5bbe0f7e772b1c6d691253b11e506d02300acd145f5a6e3d169be925920370bd31601e7be7b14e562b760c69a2690bdae3da5aca0e24495ca41ff01ae0c99373520302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306186ca3b29ec4a2631a457fc3aefbad0bbf04eed1dcc7d330c260e920cabe278439df7a25aab47d9f2eb0691a42d54eb023100b8b09e4c77eb9c11a1c79e82d3b53bca26eed939637b0eea1e4f8555a6e64996110477cbfeab9749da7cdfae84818b400302047c435bb50068306602310095509ee28c9a3607058ef1d175c108e7302429750ad1204517582a81a34c52457eeb3c7fb6fb018109f6538df0843735023100f84d2558598e32098db8a5dfcb287e950ad15896202fbdfe8654aa3bd8334547fd558a839cc06c30d20bcf4db1f3fd6c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100feb64e1b9d635e97e69dc9850c4334403d44ff8d55b2c1e1c735f00acdef6d6432c4c8e07d2579428b68c29f96ba7822023069e450ebb6f81e495a8642af5975b967d31b12524337f868f2663b3bc21037efd46afcf5887000e6b51a99975fce2ccb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fc414c6faa60f0dff3c7efe6c05d2775a6779f1f9dfa1ba331ba9b1af0d45a68f7f4f81689a27733ab596c41831900ae02306e8fa60d2b9da1b50f2e153b4ffc9d6381c91a5335318db840935ecde0ab62862919c61bfbb30935133dbe89a29e60ea0302047c435bb50067306502310090a22f9b8056d34542916c1d1fe016cdc34d7b9c964dbc6002b2dd485aeadbc6fb1b6b532effaf6d03557d1a8fe6533402302a388896e8ae8dc24338d348c46052a11f0ddd6d551b3595e0eaf93e246ea1e22a031d583337b972de13b89f1339782d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307304a636f55911dfa67b91c890a84e725a4dd1b5c02c100f4ac8a64c8ede356e061e08757ee35dc23c6b844fc686f3e9023100f393cbb5e48ab7fd56ffb99853e2aa72a673d8f8f245456696d8699e9d32eb3d36945fe953685e7ba4434b72a6869e070302047c435bb500673065023100f35fc9d07d7cc35386e39a400c590fd6d93b2e967f616a17e97cb6dda46a3886c02a1b6adedec6f4d3ea5ca9e773e62a02302cd6f98c4610c79e10b277e77e44a92d2183d1a4a93231cfb5715a786bc873804b68ebc4d3c97dce8a15a689e825ea5d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305609490b70b45ebd9f4234fe6a42a3add0d75d146389d264d3c93e25aa7730ac7912b8fc45dd64fd2f7c812abcd9e8010230336af8d0d401293aa6354354815b9acee142f0d537bcdf51a6ee92d14dbffb46a4f30378d92f50848535e8d9add2dd790302047c435bb5006630640230701c47258560e7cfd402530733456358de9f24714335152b989d9e0bbdf0520a9a0baf75d794f9d927c9b9a0ccd9008702303a7e01e47ed541ea67f57bbee001fa498ea5cff31065101dc234c83b1728734594362a34db8c06dc96916f29dab908a50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b32f76d66398aae0bbc6bb684c633d3b2bd36003855c83730c78ba29ec0c75a802f8e6387db29ab292ca78f25b2c5014023100c618bc766b43d9fd35bb764fc7aa18692ed3dbc7cee465698d69e90d194ee7717a70a20b2c388332b7f2cd696db17fa20302047c435bb50067306502310083cdf9a50fbcbded6bd62bc00cc76a7407403f9c63303e51f06ecaa086bcf00d1c9085a64352e4347ee16e8cad64971202302b40466cfe6f5467b478ded78676d182d28b82bfc8b8d5f97a8d0bf9487ba137bcec5a906fc3bbaa9adcfd2a7793a5f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ac6bf496814f8f8cd0e64eca52e963620b902da74e2ed5778c2d249ddada42c18065d48b21dd90d929ddb84b6844b396023100b6e49747f37e60a70be033c810e20aafddb16fca7b19b88a7c55d43f1d0b845e550a573e0726caa5d29c8b17cdc13c740302047c435bb500673065023035e4eba5b2f67e53c61eb8ce49795d3c6a50b1104f33935b5ae8e5cf0d414a8f567d7519942cb49817d72ac067571124023100cfaff8f018b934629351515bc28e22a6750b975a14161144dec6c70c37cb3c3eaf19e617b894def84b492dcb12bae2b20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303257760770c6f09d99ae591bd83ce93210abf127825ceabd362f8c4ea50eecddbac786d560c7f0d7c6275e7fd08a4c9c023100f632627b02f0e683da95f622b3d42f7bcca27d552ee6c05fd16aa24df505d47511a5e8ffbd27d640c30b5cb2abe15b310302047c435bb500673065023100bb515a4a712f9a8fbd438c6bec9978787de47467f14ad1a4981876025da2cb32af5111be35f5bde3f049a7e9a475793402303a45cb7f5343c98c8f72c4ccb5123206b7e120506dcc7f3602500384cda6115a31280f21d1359417d35d096912d14b2e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301997f86a4c06c1851938383bff770356243c54b37d15a4844382e55be0aec1952c39cdb14d9494e81ebdbb4baa81a73c023006c51554bd57a58b3b62625ecc1a18220341c1075fa5c293487c6ea03e88290dd1c53275fef3676df4af814a3fbaf4370302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100884b1c3f186cf9eac26712cf53a1c1ebb686524a4eecb79fea96724ccb4075b541cc4ce2e10a4cc13194f880c68c80a502310083938d3497e10fb2957c27c4ab990dd0b07f12923ec489b9ee34eac64ee4c479df17d363a9a650121f506893e49149170302047c435bb50067306502302c53f0180977b18982e0fc67dc1ff9e30d53530c4ec3b24b9c7e42b4008e1e13db9b68317b1407e404cc9a0172f0a47b0231008c8150b125fadf15f78542480c1e19c84cad9fdbb4c35a8341e455abd826a00ae02cf8fba474dcde327a3c7104ddad000302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300586fb5205ad54c8dff0d98ebf022c89f102a32734daeecb38a750a6cd7591221e7c5ac3f24a5d7ffadb2069b6e7a18e023031c3092381361e822e8c7be6415978716ee0f8b054ee755c4b8340b883f0ffbb26c546c647a5790a278e4f6c584525280302047c435bb5006830660231009f337ee911fb352070d06d2fa8d13d3f67aeb829709be1ea22c51a84c2d00b15e4f13fdbc46745a24b0f521145cf972b023100cab2c9c595a36612711be76a7693a813e0e057669bc11e98e2986e40fd8c59cc54d178627e183195544f914a4e9c33510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300ed05e631c93b5ae4afef4ace37774aee1d206b49f212a8be01cfe2346fb608214f1f7b559a6d0456c7cf2060d5d596d023100f78bb317abdff931347059be399d64ee8c1b8b84e52c136f856d59e52334bd36b80c0d602c2c7aaf3af32ba2d26437390302047c435bb50067306502305c1c1ce0096a23023ba1fda21e41aa0f2c021a1fb0ff1b0d5351ef7f91efb7845762a80f88ef1729c4338422e160c83c023100fec111355813c49b821dc28899b669a93f746c3ba9e1c56dba32673523389b31dd921df62b0d972f45e142c4d69d45940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307ea49c31f78610bb13ce93ca6c74bcdcf47de21ba168fd18eb34b30ae796732e6092ca115d185142a98f45dbd7056e4e023100c7301ed9981ead0b3f230fce5159d08f11f9e0e050b9590d8145c2ab386431462be02baefe2e9858532a1bd8cf87e2cb0302047c435bb500673065023050e197f1ff6719410fc81d3accfb56b899e173238785cd72eeee3585fc55d8a2f0b12e41f3fdfbcd7e8d10a071af7260023100ef52882e1e21f7e08946772575b7b1a62b28dc396b13e9c3d14c908bbb1ece019211b1b54b14d52beacaa659c1e1ab230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023034d28920495489aec987965ed26fbb5ff78b8ad9d41d8256546c22c9b3cee9447f48aac8a867fa05d147ef402a4148810231008d2ee3d5d564a0cc64f73ce27ed3f2e4c5c1b15adf36b9c73fbfdc2ad72c30cfe296bd503da9bd3ce30d334aabb3b2e50302047c435bb50066306402307a602589db651bdc92d80a50ae2b9b19cb1963eb32cfcca6b8be73504092b57170403c5d258eb86faed33dd953ff23d602307f538af143885cf778149131cb3d82a94795de6e58bbe953a379062180e030902ce74b36d69dee42a86391492c2f56560302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a8971710f00d931d3aadd8d8604ce725b4168aa79fbc8b68c49dd7510f02184da89ad233bd81daf47ff7bc9a5843a7860230741f1104fe1b5dcf6a9f63ebfd8ef391aebc17c1a312ae8339eb1cbc758581dc2a79d343e8dcf54361576c517e556cdf0302047c435bb500663064023014b2b08d7a98d09a43bd0eb668da4d0a5f95cea815b454ab60de25fbfc9c9e0da556ed9f70491b5e764bb525155d700b023019e54b15f54558a285d361b6ec373a36b4c98994959bf5518f93751571c83c00a2e82d2fd8ba15f12cdd3b94cf6be8430302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305319c62f9468cbd043386427ed688a3e11fceea45da986a0dc6d52ca96645952e303eb3e8d69b0847c9243a7ddb18a9902301b2c4dc7e4306fbfe94232dbe03e0b7afe7d23c88fd0c92fea7e81c576dd5e831b5e3211302cd28485f3c8f76dd68a0a0302047c435bb500673065023100dd27013b8d02ac0c5c1b74dbd0612a2ede7cc8a079177c8c74d10e559b0c242e0058d9d7e31ab46f8facdd829f7180d60230436f5ff01b628b5b5156261b1e32ca5a5cd1d5d3bc94aeb84e5ca36815593a408c2a803ed3a45c3fb19b44d1510de15a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c88164e9ea405a003fa2e6c4e0b9f04092b33b13b0418fb01414415cd200f8ae9ec5e6cf1adc518ae3d10db3a29e0968023100bec841b87453ffefe0b7399439bd73e48dc4aeb44af00e061fc29929a48b752d88225c142fa8609ef51adc7bebbe6c9c0302047c435bb5006730650230066e1dc45101254d0b9f69159323de20ea91be0849d71facc57b6a4d3fccb1537969ca16941e2c931b340f35e35382df023100f1d681842ee11bd64f5bbe98f61fb0bd022ac78ffa362fe7c4c4177fa9fc4b99aa370d56e426adfb2a4a6d31b86444610302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cbf95942edc4d9abf46e9a1e319a5be2c10a78098e3e83376c3ccebb963d3da38af9b94b2091a64bd91f8b2777e89a8802306868791d2ae98b2a89a0908fcce20c638ae0663b848b33e691764a00f3a8797e021b9223cea6e4a3348f872e0025251a0302047c435bb500683066023100a934c7c1fec5d75ac17ea67006da22f0f15bbd3de721179d5dfaa8070c67cb678ef6dbfcab4739eeaa542c051ad4bd0d023100b62d1144f79be009e4254712207a15e8ca6683f1a11d0196be5a61d3a61846c18c7831a3e4cf583f127b955dc70bf9320302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e64582267b94b03e6991e1bb8de3f539a982ae74afffcbdb8004657e69c082132e44e999dedf64b74183842f3c3096f1023028cb1bfd242d5238470e6caab1f4190db411b8e8b19091a3b0725e9acb524f54f5ae5c8c3c37c113fbe3d4b02d221ec20302047c435bb500673065023055da68f471024410755f2fbcf4ded80b9d99db7d9b1f205a35640054a007c193fa29252ccc24d7f4011f2e5dab8c67e3023100dc9efb991ccd45b2c55b65ab49c988200319b695569472f6964d1b1768ea71a8bfeca93f4d24f1ea53a0555c1926fc950302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100da8f6f411b17fce650ffd09aa2c24b1c6b7683936e01389bdbbe50106e02c2ff4391647c6522987f937e967b7f67bdd1023100f9948707a14f610df737c811097ccb7a21715b7841fe79995e03a5dd7867bd1c34fe0b63ed5cb3435c23552f4a7c304e0302047c435bb50067306502306719290814ed37ba31e07f864a3e39b7006597c717d43c1e5e359dfcb6dfc8192c4c209ed9cd2cb084ba97a3c17898ff023100c69c9f7a796c7b0fd222378bc91ad7e255979226762dd7c54eb2e3905967ca3cee50435476990f453c819b69020d7b0c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300ab319a8b3058d91aa77af97e8dc34953471b066c7c21e6ce41ccb0ff8b6ce71eb1b5c31c6ae9efdb31427b0dd900948023045489a6ef65b5e4c9baccdec1b2870a247480124bd7ef229517e5e7774005421ebde75e0e09029da0f7aa78f5284d5ff0302047c435bb50067306502310090b23e88554acf593875f1e7e819dae1a00a52beebf58d1a0585dc84641cfa638d75c3fec3df0aa5da8d9ecb19732d9a02302d4ca9314a2b77e4fcd381b31e4c88dd482d69c3fe43e3dfb6525cd2f7ad8d4bb47a7610843cc993148fdaa9c0ff731b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302ae7de9575573ce5991bc460f82456ad649bfbcbd63b7867370aa9771bf7b3f76524fa30aa76caacc692860a706b7ec702302d53e3a11223601ed5328fd27a69e407c8979772b91214e50de493c7fdea4e09cba6c4560b2a827ff69c9559774f88740302047c435bb5006630640230509cdc84b862db7d5d77e861c95533b3091e16dc041fc363d6b64f1cc1719fd3f18308487f6099f99341f25773a45b3902306a5abcba777d7496484da1632bf27d0dd964eae96a9ab3ca4f2b7c77f90371b93c929b13a9e4fec07d0d5d61c96cc0470302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f04c6320c235adc02f18907fdfcdfce3cb9075ce8610d97c231b0fa89053f10a37b669c73d16f59d28362beead0e8f27023100c7eee345a340b61926575cf08440f868b012abeb3d6b9bb3870f5e1d075cfdaca151d6c5db857b7f48f3a70cc892327e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a19be90b104858c0536a7b291c5ef3409d1e02584b8d43eca894123bf4836cd041af5ee168c0615de9155852060e4ca7023100f84e717417f45ad9acb0f3ea5aa130e899746d682bfca0c35f9031b70803bf48de1eedf3fec6f008d15baa71f4482a090302047c435bb500673065023100994817344d42b3ec73466f624d0bfab6cd43d42d87c7cee2127c6b7182c423e074381185e6a5c69c14330ccc5fe8620a0230189b63652e50b8d4a77a76c56203bb69be08dfbecdcf5a647bfe3b0046a790d22a5cf700123862c0d80da350c86c957d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230778a0474ebd767bda9e5557b3788fecfca00f07da77e31ddf5e8388a287ba4eb26090177d087b9aacb0b49d8175162d4023100cd52af19033499378c110ba6ae47d2238a3bc1f2811df221c141666bad368eed5774001f5b749d672d4f6f228029020e0302047c435bb500673065023100b30e019d51eeb5b47d58f6490ac85acded79d69e7f39617b35475ca59751762151478893ec40242b2c2b8b5e3ec55c5402301ee60237c1e09c4b45d1b444704311278025e85eaf6c370d8d1648c407adadd86d0f60da062e2a6456b8900376210f1d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230562d3db59423f0da9e0077eedb473c2cd39dad981be7cd1be592be6730a3d54c44a8aee8a070f65c2d12038b418ae56b0231008be15fc9b1f5cf84334e658fa700e3f079a657688826c72078dbf4fda6ede8b02b38d9f18ed874cc7fb727f3cb5c2a460302047c435bb500673065023005f098aab90b7a08a476700791c94f6346f8053edbde295072b0309199551ef86cc4e9488501b515dc8b34719fbd628202310087c08953e5445983dc0b53146a3b0e59caa5d31d546df7ae2a09fb022e77b6c2beced7effb586b2c0d386a38d7c24a3f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008b270477c533a4f703118302cff210f23ee44cbf645e59dbb34150c257ed45abbd1fff08e28ee873530f4806fcc0492c02303b5464f361c85c42cfec0bff366726ced628ee35a69456880a4714f6b178f0eaa8498e3b447d9379a71915e5b78c7ec20302047c435bb5006630640230123c67de64db4a6deed3eedc9435b476d5b452a737ab95f3aca1418a1c1020bba2c6ea629de43d071d77b31f0b87646a02302547db3a0e0b8f5350a57cefb519c600dc844a63069bf78cbd903ab590be2854c65e7b4fd4b48d903fdaf0c65d164bcd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dc93c33e3f5f97857d4226604f7d9e05abb54e9f22d6de082a7100dee4eb746114ee91fc30ae45a07a7f1f3450194b60023100eefd04d269b326e1db01d4a2eb7c9fd40cbb62bc6c4c80729d54bbbb9648bc03b3743f3bb2a33f6be7c4fcc26e6667110302047c435bb500663064023031f6037ef18460adb3e495735e5c295545cc37213be61652fe300e05b99c8adb0717a62337c90fc9d2c0579cacd5182a02303d821edeba43c9e31986070f67dc41c89917699b67af110589faa1e8c508bc1bd16540f6e2afdbbacc492381c8f84a920302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301d2c06321e8ca30305de46c0f973c8a963716cbcba04d29189521e5628c8bac2bc9d121d7c2e8748d2f044399825c61c02306c92f9118d97007a609f1a44ecf6cf7f3d4d1bf9a93579f4397634b336a065ec540548d405a435e82da2eaec87afc7b70302047c435bb50066306402300615e77353fe68a665c8ee8a1634f5666c58ae9562ed4030bbadc2a81fb705fef65f5afc552467f47f94ca6f4c6455f7023038580d9d87250ac22b29c67e27242014c78ea843135dd538111cf218f97f8e5bd63e6be77ddf5883090b306ac8f6b6e20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e7e150ffa94e00d7b369e8da682cbcd55013285a4804a1d3c28c3e39c0e6416992965c539fc5c46fd9652c238d27ea0f023100defec7fdc01c8d870286c9cfa8e74be35e919424e26e8012002516669dd32e5f8b95d708d5960419326d2697a3b2c09e0302047c435bb50067306502300b367358cc71afa8f0f2c385320f9e87b68189ac30d7eba15aa030d124b75ac754a11af0a466e5b6ba72b2c77bfd98d4023100b06ba676ba75873138e65e6c056d59c582d61eda3e86eda7314a350c2703ec4fd21f0426f9b336a6c5a1dd87ca8587860302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302adceb26c17b918c3835d6377566d2f4cd1f80b59be9a6a663726452dcac8051f08eebbdebcd122bcc74ca113f97a99502304c083b3d6490120522f677c7b7dbfe8471eb0f966204aa103e39970e79ad98cb0f06effd801c77e66970f96169c0e7df0302047c435bb5006730650230414357e204814827fd99ba3ea06940a63b07cdf0458012f7b28b8187101c29c0a540f5a8e1e224cf1b0b27c6e315b92e02310086e7f8505bb32575bb593090f0436f8cac83216fa7a4035357f5a49b7e0141041478fdaae91b06cb546c7b597dfa41070302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300659abf9db2bf78ac0c6f3ab55000680be8b498d387f0efdd909a2ea2c3936e0e297e4df38b9842d96de20469b7fa7900230304f3f7517b5726d6dfefeeeffe3adb845bc9c9886be1e4de09c4fef1de2b517d147e65ee9ca7adf6525605b91c11bdf0302047c435bb500673065023100d1f918b9deede07ab913ea4b6a9b8ab1ea00e363ae71b655fc6705c503bbe7742d733472030dd3bd0613e90e9947de6602305f4bc362aa24a8714ed49ba4961bc9265bfe4685a386ccba38cb69328d9c4a150d43a9fd340669f60b1e18ba1adef4940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230426662c30e5720b1cda213599b411bb67a354ef92c710f4d90a2778b6111b3947fb846c3709ef7d3eab9e327bafe022a023078d585455b3eb371e8107e9e59fe7899ba1cc3724dc238aa6680e8659ba5906a077a83a92bfbab86528b979755db72e50302047c435bb5006730650231009de09dbd0b877e4f8f4c9427d417db815ee61c20201ec3a1e8ef99edd675170cc53bac173b768398f07e4107216ebbec0230440eaef74aea0f82766936e8541e0890d17106b89a7795c0fa9aabbbb9bbfcd39c76a7482cf65abdb3273532de49bcb00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305d8d4cacb758df688161358b283db94cb9d61f15f530dd367d30dce48bd171c7cb78fba070cdec2c2e0ca4c04bfa45e702305049434f29f32705acaf6d67b3823d1ff2e0a5d81b73fa8441def02410911e0a6638e93d106851849171f9e0354f87280302047c435bb500663064023043761287f0d1a5a2ade48b07442380d66a6c911ee87af616f2c48b2eb9f2b65ce629a57de214287d626e225b754d17f40230447028f51aaa925681a23d402df7b45509f86163bde66d04bc6bb326a4f63faf36f7dbfa0b05239511cd1ea3b319b20e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100de027c434ec23bdbba821c53aca28441cba76f6918781f57dd02c5d82f4edeef6a911cc80f342a7637957fc9733e220f023060f9d6ea6ab8aaf2a8aa4d070c8495a2df51c10aa3a69a4d9630ab7e6ff3fff0798374f969adda18cd1679df17846d050302047c435bb500683066023100bb15dc9ea2e8e03764da0ba1f7341fd8c7f1506346693b6f07fd9788261b0a358ba024eb53bde8366faf8f986fb979270231009be500fd70c2c77789f70b1d0022609c8f1a290dd7e40fea86217085e2847f38ea8da6ecb151e81cc76b7d020701f8510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023023c6c2d231b8094eed566d29bab4a7ad5fbc36779731582bd2b80638eb454a77320e8febc32468eb983b91f12ba8da15023100fd5c2feece49a9d30b2ccd6b4571161602659a613e8f3256630c57571d1c00b7fa3d15447acfbc0d20b205ffb66acc750302047c435bb500673065023100c9612f3ad2ba17ec1e4d4d08bdb9325996402ec15cb5a829c0aced93197c25901aff6739aee6dc7c52c8894340dffb69023008995f4e8c0ae6a3154d217e3d9a8432f577d3cea2ff5a1118f489ced3032273bdccc42323799bb0fe9a03a9127185fe0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ca79bb35acbb382d86762814f9260c0afbee302bb8b5191e05f4b3f41bcd7c26e70a473ce05bdf5fd49f10bb80bc917802306fb3a0062319bd0853b4e9b7856389d2a869e8eed25737dbb880f2dc10e41d5e3f9d884355528d5cc0620b3eea9dc8e30302047c435bb500683066023100dba0b201230be305f2ef321e93d54d3fb01c1fd28641d894f023f8c6e1da8592ed75db6fabc8fcb442e638e664d154de023100fb36a00a7ea87588e4fb5903931b4da279f12f1e77abef6a90d46ede9d3a0c62e02dc8ecf446d178d19154e385e7473c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306fe1beb1b4f988806c9031ff1fd5b1ac0fad2ebfa7287092014c3afb2fff53a6a3c94321456dc860ff6331f070e7dba4023100a99729e2f075563960c1210c40182ab4076aeb2a7a9a53dc40b1c45ff6e959ef2ce98120a46a2652b777ec76237907850302047c435bb500673065023100d4ab49cb954269f3a0b8c3396fd2b664f236d459f96e8e8fbbde83aa20e73aa6e16cbf5be2b3d65dfde605eac1cdb854023070a8b0d99bb7e20d67778a91363559e4d1bf63d5574c8b875151bcb1da9a0d8d1f0f955929e6e6c73934b3ecb805b41f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ad4ae76b4490a85b76ea08598d224838a6a846b19364a93626aa3ddf839b5b6745c1533ee0ee05ef9a4884e37bba1c6802301513aa1ef930a04bea2c6bd5396ec9945650e2596c27d57ca47ef3121bfe019acf74ca07c17fe6b8e085258d7c15db170302047c435bb5006830660231009d3bdd0cb03b815f46514be7734b173d59c7bc916083d0f0770eb662ed14388a78145b425dc033c90e2cb92b66755727023100c5a14dbcc32a5923b0c29646b80cfb532d2a714a36467fd12b4b3b0561f556d16721dc92c92a6203ea53ee59aa8c6c190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302727e970034159151db0f45aff1595be14946f595ae6fecfd2947f9778a3c82d19eb79846362a2c18fa62aa9ff347167023100eefc90d6c91aa7b0ad8ad2d541b7cf8c054b2441cc71a7a3f8684484537e71c61ae05f3a0fe98cfe51bc9a3b5503f7a40302047c435bb50067306502310091527e8b0833939799945c62ec71eb2dfb06d77417fe45b448816a7685f56eaa4a60e394ae7551b0ddf077331a0aac1b023067963546fd5f16db4cb721fed1ae38bac53587855a869632a071880b98f3aa3812f9f686e64bba2108c11ffc9d54248e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305387a36fabb2a067b67080b6a012c95dbcaea697c18de7a3af358dc037403e506dfb7a6cbf072da30a0776afc8500b41023100dc14b4ab122f889b67d1ab5e6102bb3f1f9fff6546bcaf8876bfd002beab256524033a4d23316b9881898b09a9dbd8c60302047c435bb5006730650231009235602401cdfc2f5a67742b47d72a82c240973822f37784a78c137a69e16f65eb50d5243a9a46ed6b6087949267f26602304cb59feda7e9da267c20ea6b1945a5df7af8b8b4996434ca2e2470eee3bbec4f4abca6e4c36f3b995586e44c0d1511940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100abf84efb2611caa7cb4bb968b79c66fb30786b35d7c5df971807cace013af3e616bc6e54c0f20f699468e6e3e891d5d3023100c41cb4e4edfe82f6c8139ada42656ca56a3e298924a6dab7fc8c10f7b08ff655518ac7d10b220f0b978dd64c2d502d6d0302047c435bb50067306502300c3cd85a4e2a3c55dcade3b3f7777bbcf31530b646f9c6e69cb9efa18731b869417d3b937e380f824178e4a6f40e344b02310087f63b063f24e152200076158ea7e1304b90a6844ded1645dd5dca4da2a6b7596deae64a38519a425748a3a40abc0aa30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e497593c5fa6bb960312836b9b8ce75d4b7fe61b7a7228c64631d575de2a7898452290780c1ff715c0d28b0e4f65d6c102306ed12c9c2d674415447bda6a39df89af6bd51aed76f94090520f65568ff293c941ad42d7ac0e6b813a0bafbfc82988d70302047c435bb50067306502302ec7e1f99a3350a02e5f65384e47faebc53d5c35b7da38c4ce6d0a9170a6bb2be1361ada81981a55a13c30d47b6caf15023100df477e5db2c0dc848ddfd3c3468d7b0cd3e086f4f682c9deaca2b42c303152a1e0675b5e635106756c02e2881197c6850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023032f03cd4f5dec3c5e3d972f318428608dc2d648d95607d756d76f65b083f5c62376e92dda847837a9a3f4d262a0cec790230761404e567b62193e73bfd206a5818f8304e8915b753d837b11c7856b83fc4437be8d0397ca22c62b13425ed09ae9f300302047c435bb500663064023010c76b626f70ca94f36ff89e851341597439fc3e82607672b845f7fd06c4e3b7d809b1eb90ae959aa0993e7ee8edb86802301320b1b754ac0cbd80c3ad41ae308add5ef03aa8fa152f98fb84520fcc46f87acb101c8f321610aed0c42d69adfc7b650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e2fe6628498f39df8dc2bd90029c67128ded95ac8e7aa8cddc79bd463186fdc1c9f84a4285f05b0318f9fb96430cb639023100ea75db2476ce13b8af89f37ef2aac601b155d45b1f83242cff80da9a4dc715d939bfbfa8e4c7ca133dddea2a9ebb4c830302047c435bb50066306402305084327ffd79059a81991d0914b48cfc03c94e881e7c7849a379fea4532ff2e6515ca0a54a27e10ce7b30c3927f08bc50230281299aaed702f51efce82f563adde0a0bfe90edcb284cf92c4ffee9ed13af7f98b5c03f7adf83d2ad6817986fb999850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023005eeabd01cf0b25647ffb23db63e4845f3f41a21aafaed4b27cf3d9d8a7186d049d81b91372c55d3289f771fb878ad0f023039b5e55892dba3e1213741f5e888d457a09ce676cbca9f8ecfbda2214387e15752e9db3bcffa32cf1e15598593691d0e0302047c435bb5006730650231009fb663b17ca2f8f4dfe93438f307a1316eb28b3087dd257e5dab1d29117408baedf1553ac7e2dbc4186a523dca152e4d023061ccc41de1b95d2726002e80587d8b9ffa63b05b72969b50153ad58180ce75e4aed2421ad85b7371c56e1116636792f00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301939dd7484beeb72527123344de2673141028b334ad6246329607e4b2c09d1c4c5c3a39a73b9e13dcff1eac88d55d8ee023100a1d2686f1f187da01a4652bd9af66fc38a9e6514dcd6e764648d4912ecd218ab28455bae11b9d416291c918db5017c5c0302047c435bb50066306402300c6d6cc10c2097a4a92fc9f128c1b9f9e482b4eaa91b969784999f96b8595a248ce201c3a3eb875de8f4904f3bceaa850230792228170cc4dd365f5cdc86e69b54100b92f02a44346dadfdabd773eae4b8179341133385fd38b1c924a0bb789b65a50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d8c2791ccdbac905177d99995a82583c098533653712d59dab6a5e28156da95e6c1ec0ce51a3c0d2a0c8935dc9c57edd023100b2e17c3a5cf79b223b0cd9a3156a6b12af7a909e28f684115c22c596dfad6d8d2c7762e97054c9480d2395471274f87a0302047c435bb5006630640230408abe26e4f1703dfd6294c9404abe71bdee0933b8305f548a8a4e11f35aa174b2f3af61462b02d42b431116f671474702302d9cfbafc6078fa699ce5afd89e837493bb65f758e8dd5135a6f7b54cfbdeb6c54fcf1a5c9345085155bd1079053841f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310088b4d7faefc31e7403306055bab4011adda011fc2434e14a9ab2df335c8f1792b03ba50e2732c531163da9c71626f0d502305c2fbb857e20d23350cb098cd24fd2d5ca2a0f803ab910e79927f8504a7382a2b6218a866f24c065029ed6d0f92282380302047c435bb500673065023100cacea6e8b0065c37bd5fc6c8981d00828be1ba5dc139691236ed2319b9a4018a95623d2d81cc1de359c0457a6a7624d502305fd76cfea6349190747d909cb3deabb9eeaf15c13464dd7f0b8cb4ae2fae517394e763d925aedd5d500a9b6d3b46cc070302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302cc39c12aa00ac7ff40a481b6020db5f95f608a5d747d79f156c3ee601dfb272c046d87ddff9fc90b60a3da93dfc6b53023100c045011ad1d89a92d4c9232dad3227e9b1ebf3e89ed8fd72f8b71e36d3971977b687bc400f84dcc2b4bdcd55d2a734270302047c435bb5006730650230478b602dad2d28f00ef4008bf0c12452629bf1efe78572bf42a05086368a896e842423a7f00d0dbe14a6831839eb037e02310091d4efe784df03938544bf0db542bd3aa211fb11ddecd99d102a76db1f841861274d68fd0b5b8739338770038e3594450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009f6b15ce34b76f356ebee3ee1db1d7f8552662f828ea10ccb4c607a92559329c1fe5530c4097203c10c182543e63149702310085cda6a1229ec00dcfb591042a5b1e78ac3043a7f0cdaa167d7bc2823f2346be8ed36ee524e158b62bdcdaef372bd23a0302047c435bb50067306502302a19dee16f81557db1a9ca91b7900433932987c0d14231004ac151e282a25034875fbfdf57c0f7dcb4aca8546b05725b023100b7602b0cfbc02569a0aae54ef17c2dc8bafd9254809f5f3710ba3c503427d64feb3841b025ef29809e51df458aa0ee6e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302ea736db7513f58359b57f0a3b9caafb30216aa243667dae5ad52ec03d40165e82ce81aa4351243f6b4b8610357dcb2b023100f2a0346d2ec34208077b970b667ab49243deac09028dded662937827b5b009e10b9bba04f17c09c818508abad01b29460302047c435bb50067306502304446ee8b77554d963cdf3b496bebc88e2e03298092071343225bf181cae382512fc1a8d82765dbd3f00834111c36ef7c023100ecb86e44799907c03362073a14a9340ef0e1a43595ea1fddebb40eb8d52814d1df2788c45aa4a44c4f7c11b6ac4518010302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023026073996c65552fe30b808fdabfa68fa0ccc4e878eab387e2908ea0242b2c77c0c27f65ce402dd352f895e292af1d108023002988379b6d99bbccefd7335319f6015d4d08f43e32bc6e19e3bd7d653f0f40a21376e546674a60a683e1df7428e07a70302047c435bb50066306402306d7a6ed45c0bfa9e755f46e11dc54471068f8833d9f6fafa0fd54b7a377405272e1f99ed3f70d2caa792f089d2a8cf8f02307c94f3baf9dd995e8307bb83e064bf0866043f220fc656d6e5f85b6743f668d912ef013730143313c9a1dba66a24cdcc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e34dc5d26868ae50f6a0279fce2f707b1610267c68dba35413f83666fb2018cec1c96ce178029f83fe1d22a6df3f0900023100994f348f871e5ff5ebf2ab44e8ef3cdc9c0b35fced27a02a002baf8dc623e67ed30feba0cb07a34524cd7459a769d9dd0302047c435bb500663064023073be0391c2e1ded56ec01b28a36777b1236f48e34a12d84d275e0e726c72554cb86c9be48a1a83ac4bf81ca28922cbc102303326e7b81e78e7985d44deae80c6f4db35ce668ac116f6ac4f75312c45566873f352f957d4ae82b30932f9b11046ac590302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d5f0ac9315e985049cfeb054776625e20357bb34970db51dac492706dfdc92d140ca98e54d580954a68e18e30af3a761023100e63581fac4ee37e9350efe3bad689a2c385a2c11777f2db1939e289b097cec370496a713f40614abd074db2fc3728f660302047c435bb500683066023100d54437477f0b6af951bb395f1e5933276d7bd1a0dbf8ac739528c51ca2d08cf1b15bd38fcd862205d51ba697b44c31d7023100bff5cdf38c553b07151d871bd8c9e7ea8901709dfc64640963b7ab8efc177ffc0180d4f629205e505df400ec05a509310302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302271be1ca662ac7d7a9884858fc3a0e8e1b8d7b6c942e1498a579d7e18c4a34852510b1d3073dac8e8fcb59f88bbc5d5023100feae4e8fea5aa2fedd2f4c1608ba7fb0391556ec73e380f3893949a6fc72368ea8b293035acef651702270e3352a46680302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f7d933f9af36d16c931b425dbc452d5ccce8f3be11ed9823d7f5f6347650383fbf99b16e7429839a41daafcb6599c7560230442cfb33fe3597c2dd2cf449cd4122fca5ca5641e96d0b463793606597a203d9c580f369672947aeb9cffe0828f2d69f0302047c435bb500673065023031961303e1e190be602c1f97ef2cf89f036728c6d9d08c9924fe909571237d8a444d877edb620b7dc958eae53921aae2023100c9facefefa2bae501721f6962ffa06fde825d8f567228cb65bbfaa757324bbc143bf226dbce869d93bfd90b792851fd30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230268db35b0d89389c75927012e0e565b38ba27b7894b8aa515c11120b1274b55695fc8937c28b2d0dcba7d5fe1159a9f5023100d135233c58c985fab6304200fb6cb62527a1d5fb041ed7faedfadf93f090dae6170edd6653325c3d3053027de282368b0302047c435bb500673065023100b69f2773daec4fc4e8bcdb806dcc8083ccbb7f6508b746ef805c08a2e1d6da335554430fbe0f080ecd867ee02137d6010230598af020674d64d966e19d20101487d0e9de1c643fc3ccf938d4f4a4bb2841c8d3a22927a38044086db0e43b557c70fa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e8704125781f1c5ea4a6e14c4255f2ba0419327340aff55fc3ad6d3a53c93a8e0b8900abf82acbe16c25f0f03b15e1ed023020ff8d4baaafab5cbba5e816e1c47e99cdf6b3a55036df8f1d62dfbfb179767e0080215bb44a36613d64cda7079d82e00302047c435bb500663064023025f75f776ec092881ae0ce4ead0f7fd40214b0bb2f3553fec8550a8cebe8034a75b45730e6b00eaeb847f2b62bc1c8cd02301b669be7d041bff1991b6be2ef845885803801625ee3d945e452aadd24f707a5c98b2d80096a01405d15abff780d333a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b19190c2d7807ca94b6b599623ec569b33082b8f4dd76466a6a7923fbaf8607ac11d6aa1e1ac6819600d1eb752aa7fe302302620b8957b5a8cfc3fdcbdf88d8f1e3957c8a238fbf28c47851222f4c4619779f16aa35b86e8d5c45373c29f61ba9dfc0302047c435bb5006830660231009cdc3ab3ab86dd542634e345e484460933a7e63c3020b50b57fcf51a9dbe1f6dff3a8b4d67894ef051843761ab33a011023100e1c68210fc3e024b316c28ed877215a07c72674af4f7acec2bd9f7be421ad7a7ecdfaaa3065bc19a0a448882d8fad2820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a652453937036de26d773173202d61b0c4a404e03d6dc7ca75541c95b4bb5a27785dad59cd6d7b23cc6f25e9105965d8023057a6e8869e07eb159a8d4f448ad247657bcb10ae575e068d7218c1fb4de407fbdb8dad98598b8a0c4e3ed556980ef7750302047c435bb500663064023062600e5a2ba4ab7ce73a37e0825cdc2972a7cf6d2572264b91c32c9b85f91e6043969fce5341748cbd19b4f06e5353b702304dfefce02887e5f54d29d4f221c75dacb2f42d7b70ffc636b1255adcc6cc304ed90ec2a70abb422bf943ac6bc66bd0090302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fbc0dcc9cc2a7d7112d7a7cdc461bcc2dbbdc15a9ccee2c23607f3cf834318643a67267f198966e23e689ad38716f8f0023100e5541575a7177d97e635049cae5d639eb5502dae6be6b29b29754ca23b786f5c3f960096e6bc7b3df0d865237cb34a850302047c435bb5006630640230734b318246964fe4e28327ccc6b48deea5b66681e959a747b8b8e1af4810d94d84b2b9a5ada67eb42e1eeccc4b76bd4402304c00d07a504d1c264501212031050d9e834b74e1ea361ef19af82ad7a193cfd8c9c346f1fa2511b277fe5ecfa8598f210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023027f7284e21f8ad60b569f54f8b43169ebc79ee69fec5bb3c03a9f5cb1d5f682c77038fb0ce03a879c318dd03d4a20e1c023050ef0186ff389c4bfe04e8f0a05f46a48d985af3e5bf956b90e6e475b36e4a75bee0da4866fb81963772571fd6f67a550302047c435bb5006730650231008fdb0ce9e0215d17b9e750e0003a72f9ff9e1f69c8d6d97f56ee745c42b9b53c2e52e3d93daa1c5b7357a4f3e13b02e10230038e26143c370fc4618919f37d28a0353feb8c60f61d08682b8a1ec36a7a1357a8da7ca5e1923b5f911ec80240543e5d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230685b9fe0fecb192d2fb6efff1e3fddf0393c7298afd24c055a9615ae6f4becb98c37b3a3acffc93e89d178380aa9e33c023100918e28d6a3dd1d4a18690fdbe2ab774401422ca3e5efd1dacd996e4ccb7a2100e9bb9fbe8f3018b76ded32746b71537a0302047c435bb50067306502302dce82ac2f3b3d99521ae4f3adbd9de93cef30311cc9039be3fb2250750a22a4f643ae06ce3e4042ecaac40a60990a09023100cd5a740a491acff241650f60b3bee8ba6a545dfbb8996468b1e10824e4f1786626a5c96dc269f0122a8041819f5499220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e7688dc37c819530de735fe7173e501b72115ada02fae38d8f3701146827d5bd36820aa1a14b497f015ab1ace1e3bcb0023053a14faf5640d3cc0ee5ce319857fb203169bd22ce6baa0f0cb41cc367d2a08aafb4e7e59decafddb81b9389380089950302047c435bb500683066023100ef96ed094908262804857ccf9c9c25c5057aa923c13558778a5eac56ce4d1a39998ff73b8bf77e0ff7f7b20e3ab59f11023100d7bc3515b50914e06de179d4f5416e18c947f6876af6b40a6a69809e379bcfc6b0b6233d773352c3b83b981437474be30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023033b0571d4bf05be1c033abd4a41df88ac370b49333821b0b954af30811ab97e2a8a7b47b8edcb182660b8a9d28c830d702306efb1565b7fd1977fc14df643c38f76162cb106a50ff426e38285aa47255abd3f6ade4a4bb4ad6690ca866ac2ad4166b0302047c435bb500663064023067e17699250a344f08c362f981c44c341a1c38dd0ea64a2b1f21b73bb3d6feddaf85b46bcb51ba1310587df9e609345402303bbd1e5ed0e80e55248664abbffaa703de3003f75105d580df1f73138955663a5e14ed7a7fd99930f8402b1b69106e470302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f62d5a4f65f997bd6f67d9ccd268d8e5999ecd70c3572c613693d7238af84d6f347bcdf8f9d17a731ed72a0838c932ee0231009b7c835bb70fc2e5dd5039ed3db224e10b5dd87d75ad1c9961d98616bad2a9ba72a4f3e2c3e36f5718d3da5c74c64fb00302047c435bb500673065023100d8b098c3fc538c90ed3bb07bdaa233c0a8742827fd467cdab336c813cb6555ea587855442ef5f06de249589847448aee023053b358bcd0c4fd8582bd5b1fd31e0c58eab412292111206e6d7045d41921d77bfb2f2626e9e66e02240bf2ad2d0de88a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f5bcdeca78e34ebfbed217a4fe1a65cbd91499af6983fc92aa5d4ceb5befebd4eff78b8ee0227a0d834b286cdcb8e2cd02310091830a52147b991e7f43088754c6fb955de1239a2752eed2f1bc507619c156119fe22fc3641142f3327c6bdf2c9d7c470302047c435bb500663064023036be5603de9a5c53c731346c5905bccb09e4d7d705645934004cdc40f03445835ed7142c818d1736abe528ddacc08bf302307000683aaece621db27b2c297f7e30bb694cd5aa9defa6d9792a864ce984ee5eb5428e65c3125248af41f2e91275aae90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230247c31ebf23b7227b60aa207f492fc4f13fca3c9de69e445fcff825ae1decc44163be66b247176074335a7a009f5cae102303b34f5e9aa9d5f27b4bc1cf58ebed3e87a6821ac70764c4fac903e557071eacba8ed85779940494d31bc9ea6114b43fb0302047c435bb5006630640230521f92dcd8c775bde5e356c41d80b378c62adb0d1df214e3f4fb5cbd27543d09a301356342ce51893a7d5ba3380bf0df0230670b82f0a50ef1a17804e4c408ba78c841ef53e4ee448a6cae6d9c11ddee32f9114bb3060dfa17d10736f4ae7ecc272c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100eea7081bd67a5e194c0d3b1f71e46984bece256582b8e287c30a1b3d367cb53e1456aef2a57d66109dd85f763ed760af023100d98ff5a94f58f0d4ed4fc32aa5c0e345d858a28db7e70719f781dbdc0adb70891a191630bcb076f1a69d78552f6e8bfe0302047c435bb500683066023100e3e03e3c5d8dd47295bf79960ee8b782b98def039ff7c49b031cec978e0241b088ae585cb96d14fcbb74566b68e69e6a023100f3c4736034c34cfad0e7de26f3e12a6e82134439f41c855fbe9cea0555b40b8d5f7dc9d4725dd4c411f1fa76df2f0fdf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310093befd7962d57a387c39621922a7c2c21f692c2d359d1dde4a01862a41bc459e6f83d7ea43700e70ebec63556274b0e70231008c33cab3636831c7194cc2caff1b3058f163eff40dce5772c3994594ea3945527065c419da916d731e41010864d991b10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304cc44638d884f8aed173d451c1561283b01d8ad8f6be4e3605a6826481f185d14417e90d06a3d8f8c4d530e175fc080b023100f130a34e9df0f8ddb4f71fba298f7a0e17f36c9914bd1738020f5c4fd16fea7b1e45a8978abfe63df00ee78bd957ac4f0302047c435bb50067306502303e3b4ab4dfc8c1e84c71d36eed975686d21a20b642c6baf30cdf6086960dd2ebc6865c9d4857ded9dcdf89213f1e7882023100d39d46005ac069c8323c547a80746d57d05373a93d2ff2a1705e816357ddc2683bbb87f0382364b254dc18e17bebab870302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a8448ab36cb84c72910466a6dfff4270291ebd084ec830e60d8ef519034c52ab6050dbaedd1660fb41d6009070a22ca402304d5ac0c9606257e70988fb76b9dfd07f3dd06986dd607ec497ec2676979fc54616c9c7e061e8b4b087b1c86d3264e6010302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cf3c25574128cee2d4b9e86cc1c4d2631f342fd9d74df432599f32c79b67d6d64672659cf811e1d4601ede03fca53d2602302ab99220bbaea47a9ae4d9b8a393d1cac0ace149033e1f120de2d1dd1fc4ac2e95991d263bb155cb4ff50e39d0770eea0302047c435bb500673065023100e93120471b03d72c83ac9362859e5f9c65c421935fd829757d1bebc483e31479ce3d1da8ffa39d1e55f69d1ca0f6a1ec02304195457abba1d33ab6e7d36de6f0f4f807192ee5f8012a2dbf0efd9fa245588916199c762e10f863ebc4ceb50a3f4f670302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b40b4f7bafc3a79bbc617928df77b93823e0342fa0e1698fc2a8802c85aaf1345b467462b6a29c7a55e7605b87b132d3023100e44d1e3d2ef0a249ab2ee3145504b0304487759c3f5ff2d73082db6e3291d32b4edcf1bfd8befdd01341310178bc029f0302047c435bb500663064023018d934b53b4d476cece5042762589eabd0633ee9c2cfc6b7b84f7e952a0cbb43496164d9e5a8b700aba08f37050671ae02301dc39fe27bc4c41ba91f781ef0cb4fd21ed996a07572534ce43d85cb5d21795bb070195dad6536665b129ba43cac50b00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023029dd9c29a309f2db8b36bc5c796ed5a95e9664a812fb0e05d00c4dad6222070dd0fe3eab9337ea9d399aece4c692bec80230015781023ce1229e9df08d66e06821d141ec9d56e8824b4c47db18379c6da2ede6e0e5c4173b928aa6ecb0cef98bba7b0302047c435bb500673065023100954518e7ee2ba3f0d3f052c2c88d83903ed9631a4ecdfa37aac5121555060486db873e0010c712e8065e49dc639bd4270230325f007864fdbdb47cb8b9c8f929c7d6edea75ec1599d2d7475c8898253acd18a1361da55dcedd3b34c36816f49bdeb40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cd9d2610ff44b7f722746dffbf969144a5d8c22ea5a559e0a26c4d5ce71a8b851253f92526ab133a5cfd2b7711f17469023100975223b531513f2fa55f9830b1717bdba97baa47582e0d871d62f0c94ededc26b2e9053ee232f8cc428520fc9adbb4b40302047c435bb500683066023100b1f8e791c194b73100a060bbd25d85a2fd76c6cfbcbc2c92d1500e05fb91e81557e31295cef6a0b0e2b355041d3558c802310085e3b07bd58f2df94ab17e34695c5c3aba841a20a848810c7df1da3b7afb28286b2bf4468a599180db378f9e818adc920302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100feb627f2b7f5de827bfd1ea2d078f51c3c5ae8f0c3280156ec7b803bca9456f10b49670f3b01eb8c378cd3eb6102d93402307fbf7647d5697039b919aa5c644e087d73bc8838e6da4970cd822a12a3cab84af8643768ba3aaa9301f8d4b4486e507f0302047c435bb500673065023100f6559d3041ff6874a14f6e2387e01860387a0e2becc0b10f6f5fe3226682e741da234477e3e01eed22bcb8756db417b5023019eb11a6c632351cf143aedaf85c2d3122898ddeb983eb8c3fde539af072e49e0220b6a90b6afb737279f6b272b5a9130302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306e8fe48ede87fd67ef26c2a4c85e50c95747c436dbdbfea351bc5b1372b3d01ccef9524520d27d9317a65be001efd70b02303979a19185da961a21b13362ec14a68342faa357d556d41375c362c8cb4e325976777a3ca4ac6f5e34cff791ba23a6a10302047c435bb500663064023006afc8a6cf1b559ac2e66deeed316cee39801a23f3f4a38efea265ec16596171bef02fa22413341ee42103713af05cd502307f36066c7815849b13195181f799f8e07c7170ac5427d2b268b6f5d911277ffdc5d1f7ea63cdb0c127041f3be45a42560302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cc8d49d298be08062b4a7d86661cbbb69b3d77e40acb3932ef62f898efde74c4ef8f171ea53ebfebf0b669a85a8c1100023100cd3b4c93cf27266c575c960db79bdbbbaf0aa2731c637e5638329a2489df5748f6a30416de28e5bc4fb370e574c871640302047c435bb500673065023100896732cf8f5933c991596101d6233ecb5da30faa5842e563f7c56df1667c75d70f6448fb695fb9b5f3f2a0ef67464d01023014d5cd51cd9a70661eef1100713b07ddde444c7d737b4b098bde17fdc9348f00aea4a31df633816d9ba1aa18dbc2aff20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dca4ac76b00a48122b06019142d147f081ffbd54e77869f423819134518b87982dc9a9650f9bbd51af3c3350b5b3cdfe02305e89a7b201e63964eaa4d9659358f9bca4ec47e034a3ce7868c67dd262190c61ea58a2e31a4f267fb924b683f3536a830302047c435bb50066306402305c4a80c489d75cc4975517e2d1cfb4dd7eab5912d7f0926e7d732878084045209ec36ead0699c7c11bbe8c8c279abd2102304986b8d13b2a3d6c23b5dfc195ac788eaaa5a320de30d81e9b88463c359cc3e5c4f1d13263760066caaf48b2a1e1136f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a8973dd8397b6e63a8b0ee3f93583e742341d5ad38b857af53fe4745f5b60418f2b45020384d5554ec5eac5cb25c018d02305c7f16c55aa106674aede947409b876f0188d8e4de2758b595836dd90f208f0c01f67effa7895e18adf42eeec2403a3b0302047c435bb500673065023100d2503f9244c138cb70c0a89aae1e3bd859f61cce66c5192b42d6a808ce2b7328bf5f6f5dab90a0eb055a81a46f52d3d90230701cd932709adbb9f7da7526386243d22eda2e41f6645048cd28540e40d2d1d5f9433adb249a4780a732642a516f34940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023007d18334008bea1c8723aecc5906cff25f15624b118a97df3baf18664812b0f48bc58114b5a0a2f3db52514249f4105d02306300e42f7e0e59ce2bfc5d7bd735fd4986b891a4ef10e9041b413414f5ef5040c83e49262ef8c618e47fd57a797606330302047c435bb500673065023100fde9660575b2ce086c9ec8dc11cec13f3b836b4d71eb9f12dc5c065e0303ed10f85f5daa37fb2fe51c0d105ffa8979ad02303e21a2a85523457234803dd68860f22eb5988e50d256ad4999a9ed88fc3234e068e559349f5b5debfc4e0e89837fcc7c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301996e50149779c39c76dfc3326b8cfb4b4a6277661954d208bd0c8e49f6e72254d65cd7ef998692b53399b6253dfab470230656bcbb88ff90f5b1cf93b177f5e718c3088289c1540e10b05072313fcafedde244ce81466b2eb68f8561b04a8e3c1510302047c435bb5006730650231008ae62339c23f80a2415711ac7fbdcc44be6a22c8e3b3e3575c9565d31464315e3d755d32a07da5b888e8745936ee4de00230297191280d232ab8b638c405174b6a2b83c8c1d6866163e545be559d247c41c8986e88c91be8428b53d5798b1c54ddad0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dd6f71cb502e0adfa0a8dc53e91493420caec216dae3d14a2e2a091c7b6776cc6c7337efc1c6eafe6c5eb82f6aed953c023100bf9649e19140d3286c70fe4b86dc281e638e4467eda571d2d90cd1f31eaf195f7b3c865ec989834f51756a335190612b0302047c435bb50066306402301acca91cdf293860310b69276970298023ef5400086f8ffa7544fd3adab0afe69f42e05c248bd56013bc12ab2ebdea0502307055651babb823d3516ed36a9dded1ff52ef8663ce397ca0f4d2be2acff7431b13604b3f0f9fe8ec5850296f321800c50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304efdf6f12d4234f6a23ec526f89d28a53edfff95681ea07d1ffeb23b09ce9841cb23cff08e9b8e690d751d76ad4540f10230042609f2e31c1f90211e80457676f425fdb3468b92d31c655381cf41e31f001cb68a10b1d514d82d3de42d8c7fc2560e0302047c435bb500663064023001158e1b80ace459efb28a1afc65067661bff857088ac27694e2fa89c61cf511a935af469a568ffb5dc60134f265810702302c2e21995db3bbd8f7e0fbb4708cba5306ffeaf10dcb5d9b19c9eddb7c3c2281e6412c4bca92a451ccd819bb872ef7dc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300267e57f02d962a2ad61847f7e233c1ba2db1a52b1a4cf61af5bb6b5fad6ee4e2c6574c65261da73f57c3d01329e0ddf023021c194784f517775ec943b9e39901786a6cd2c8393f60267a656ac5d81504e6b03153edbcb00b87303f3d2ba77d6c84c0302047c435bb5006730650231009df0d94dc07c6e4aee6caa7ede735049ff1eb8b556c0d9d734187227df72300706632a5ea615dab31748aeaf0ec627620230525be763aa0ef32fc9586bcc47c5e2dfdd20a244d75c28b5dc13268ce2ae0afc01ff3d67ca9d283b5eb2762c9101c5c70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230636921f9e48db7d6dba65cb8c1db1a52493a6c37632009d63b1537ff6d2029971b207a16ca7a45e6b5408325bf4fd3c002306ea09f8972686cfd9554f9bd326dc2af908918f17573e355e18eb9d067f0dc9c96b6bc88b4277bcf3c700d9e2c06f86a0302047c435bb50068306602310087420c4143affc88a9789add8cb4909331da06a6bc650acb73f86ca00ba8793bb180b3fc739daed8dc0c4fcdaaf2c357023100948d63ce1714fc3bab678345246e6504d5249a0369117504a633f4dcaba6420c9936169c5c1a37720dbf240c0781dcb60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023007e2a803ef163816f89f6966d8738fd1dfc2fda901b77fb76a16834910395325500c133921a0782de6c02e23f8d76d96023100b070b9c93f255e8712d6edad22653f611bd823ce01495450e98ef3b15eff6ba1b23511c702e4376a1b883935c1ef3ce00302047c435bb500663064023013e06ad0fa0918ce57dfe9e46d5a40fc695515626904b4f751b2e1f0d1a1bd2efc405e54daa7d8addc449df1ab66a61902303186eedec56da67401cdb05e68ecb8cf4c0e9e21d33c441b42e204600ffbc6af2844a273a5917b93c1e7e7ce63da9dd30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008927b850928a49321381362f1aaed98450245405a68c8d9ee2b71904321b9ac34b9b7c4ab6ebe8d3dc830d28c7913363023100bff7fe3a53e0aa07ed8859fc230bf463a550924a7b307501bc3e39d72d8d895960134aa1f7a001a225ded8834629b5ff0302047c435bb5006630640230799db7a92d32b0be1a545d11df8616160aab58f584e18a1a588474217589b14eb19cced0a181fcf0e7b6c5c123ff0ea7023012ae9edead7d649a7f8b0b63423e3362b8a86c254b440bab8115908e8d4044a04d421b4965e2bec6a90ac124e080ce6d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307068d8456e997148315271ff20c69f3822b75c9a3e7d0b3aaf853bb501c526a7be824d5840830e88b6b18533bec72d9b02304e125fc1b7f46a58d07047a9b8c42168f568fc322338618bb0ccb5c10f3d817e154db146ac1afedd1b879902a9c300db0302047c435bb50066306402303a1fe286fa418dfa08c0446ffe39bc91d5787904cb9823cf017848588536ff465b174f3896ff00049ea6d3422f57d5f402300fbf7927ab59f3899681daabf6a22a1dbad6852da8012d2903659158361c3b00d1d550e9ff00dbd60ac61721b264eca30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100aab548157e8f069de5b31f8ed4906f4fe2f45d446c3191ba456c0c05c1d9a716046d3ef6dc1320f7252d970197cefbc10231008f650fb60220b702c5cf7a9e4be047dd4f2ec371d3d279f7469e199c8f9c9f9a92520822bd0a0dc67d39fdb986a550300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300b22d34b7f80fece11e12d2aaecf7bf8d56e34fdeba26bbc09a4215610702847fbdc766064348a48f78c4e0b08c17f120231008de80464f5fe54f91bf9b92c44d67ebd8cf78254b2cf4a67bcead5d6898005c7932f0be1af19c754e67c79dc9897995c0302047c435bb5006730650230114bb5ff8c2754a53124b9b7e8502cfec193201f3e22e5a6115da23459eeb189dc3affe3944193ef9197f86476780b9f023100f5d01478e584b3aea6ccf10d7dd612c957a1ff614f59db4b931ce750c1f7d1e5642118bd6d44e9cb53c83d1b0bbdf7ce0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cac47f153353889d6b61ef9cc72ed2c29a8891a8c0a5a31d7de1d3645ea62bbcb1ae020865b48691ad0d2b7d7336854d02310098f5ccf5b4c6596d934aa16feb18cb45cec54c238d92cfc230f8da22146046155d82d5095648b421b124acb4eb9707360302047c435bb5006730650230721e738ad71e319b9597ae2b5968834b00bc1e2d87b971e547e100ed80047cdcef2b906db76989e3693b3eb2cae3489c023100ba7945c621fb2c996e1ac2b6d87f05706639017480405b2ab32e30262ce15fe4b4a59a73d9aed974eb923e024ac2a1fb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ed49e50c993f2656ee1773bc165d377715162505fe47a5d8f23c694c134bf2f17589b55987b8bf70daca61ae3f3608e70230375917a9bc30838e5a2bfd3a43927ac09bac6d30f3e3e94b3ba390148daf56b60bbfb39d73bd4c4fdb9ee94635e36c1a0302047c435bb500683066023100e08880d0c688679312381d2e7ae8c6f57a7ac334c29ac6bb3103814e1faa833c880171e18825b6a5a986d90fe5f09f940231008e6173f5d030fb6a2d32e8ffef7322da6ae86ad0f57c6995d604bee8b53cdf80bd0d7ebfa3791354a80a2580e1001e260302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305a04de67c0bd2bfd8b29bdda7862a52ed9b619a9c3c7f8af7260e61dc3b96a539be8db669a7a32a3c33ce67167056b01023026e2b83e5d5bfc8c30d866ddeb390046888008650d8a0534e4d9b2cd42f891796f779f914af4bbb48771ef68ebad4b1e0302047c435bb5006630640230337d651bd57ffe40f2cdbf79dc33b0271e0cc914b88ee03aae5e9fad5c2f5ab8ad6c7c220c013cc38ece156dd1a626a202302c42c6975639c1c18144cdf053a090d9aa1a305e74d1e546d5fce3a185e2e04006a6762fe23ff12b78955bc9d92260bc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cc7a8eb37433d50a2bc111312eb76d8399c19155ce60867308a7f8512324a0cb551d4b8b4a1ae1a9e33f31ff8f8bf1a5023043e734e0a0efb2bb9c64314990d6fde10627632520efc079ab5d865dac248e5e7d4bd1b52a7f85eebcc1299305ad73a40302047c435bb50066306402302ea1d21fe036a9e8b8247e27f86accc2059b69c331083a3a8fa05340c5bbba8fba68377160c66a8a22a3eadb8f5a61f202301d9415d1cb7349b906acdb8f94a6bfb0cd21eb603d0f4acc9f137a5d1f6f033157a2c0813ee50ab445e315b7a92539b00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d4bbec1faad1d16775cb6e65e33330056af3208636b2bc4f8bcef36da8995386c6016102cbc908624010103d5c7b720d023042f0309878d4cc922ba3b340c28bdce034bf6459362d73f150d5c24676f77c25407f3d19dca46c21f506db779f4a1fa90302047c435bb500663064023040e645ca4724c04fe599194471eecb6d85e8a81c52bc660f90b59702920cb8ea090b2d7a892e5f433cd01ae74a1cfe42023032b10402a7fae31976fdc93528a9a7db07a05b36d6acac4d11ca0e5f51cf7f35d4d6492add4caa8773cb1dc7bfca58bd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310094bb597c6470b8c43bf8a138e070746fead866646b578eada231fcdbadc60b768d239d88b585062fa1084a6d4eaeee01023100c34d1f2378ca254d28ed332028adbd67da86db965750d417751b1c1f5337c88b9902e26dd5cc92590215bbc5688cd1cb0302047c435bb50066306402307729332681381ea330a1e929befd65e2cad54c3f69687167a13c9c1981d935ac508b56fbed1c9d77470f52841165f4d0023031e03e18d9a6177653a141069ba065d7a442ad3e90c62afcf71617831e63f3d1747591f9ae41577fb9e16ba7cb4b3b4e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306f2773f157cb0eca9f2488688ab26faa1c569805f869906436a4a696c58f4c015ed590d6a054ecb0ca0bfa8ee5307def023100fb54fab9a126c18ef0ed3a1c5eaeef0acd0c91e5c6a905e8e9674aff93879305308c4cb65c886fb2e938ee2571f34c650302047c435bb500663064023015f2950b43e2b03e315b79e0e8e4783b812b235b96ba6bb58cf59078ff4877f5de65f09b502f8379c555ac75aed2c2450230415dd6250c7ee4ddecdc8255f9286693a8859b5d4edf2434f3ce385a9250a5e9d6b1446516988a80dadb79fd0aa59aed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023049667c0702df4859153f2153fee9122ddd38afb36d41ed132230fc92f7d75dda9e67e7517b3b3c14aa787e43d21e0500023100a136fc601d5584de2fda4c099c754f43aa091b84117456739543dca4f13b2ce47cee767f966b3e2ef84e90b378190e2d0302047c435bb500673065023100d9f908f063839ecee3002514a086b7357b3265a74d3bd151a241d14044315599f7c5088e110c92936eae075d50c2ad3c02300fa63cce7e45dcc98456f2b9fce06713f73ec980151ac79671782ea4c1b3bc31b3547638456d49e304034b7edad1b8850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230255c0034659cb24516dadd736a81bc8812ef53dae34363d6f5c331af4ba451545adcfbf09d3572651818cb2d82ca38ed023100febd1d680e0cb0cb63636b22eca54d70143fe3aed90324d5a187b32776f83d846ff07c683ae6e67be6af137c699333130302047c435bb50067306502304e64576c41f5c619f7cf7adcc908b58574c05f56026feaa0e61b53dc96787b1cce2aac46c1f3e678a9fa52dcca51209d02310099a16efe3c8adab3bfe61d125bfaec3cbf7afee214ff772421cf71f79ff9606b2e997acd168ed3dfb783f88e7dd4ac530302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009a8718075d42df12ef28041a199d643e30d6af6af03e807c0f0e30596ee9b646cad9f8b206f5f52f0d2f7396685f9eec02301370c5554a66448761af3f2334d446aec83fdcce568d3b12ac258bb57c1c24b8e6de20b3c75a45015cc2a763b1f2e6770302047c435bb500673065023100aad9243ccc521bd97ed982d6383aae04cfe1244df7f5beab464841e6f6071ffae03f46a8285089fb2875bf8a2eb3172002302668b9ca1bf6f63e35946af3590af432a1dd7b9d8ab5136ed42ca8c8ce18f0376aa9bab79957667720f0f79bdea573010302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023039fe7565a277c9ab1540df064b822ebda9bcecec66f918afa5ab3ea40a06d5bd8722af65f0b591c8247893ea47f433dd02306b7dd9b88cd71aaa062c42fcc9c84dc229df9559880b2af4cc9d04c039e9edeb5a35fea4c5a687c8881120203b88220c0302047c435bb500673065023100e146203ac6c7cbfda318dcda24d95cda8a4f3c6f797328ad129bafefaa278954eb9be1b1c8034edb58eac14f7052189c02307e863c911f0cdfa7a84dcc38e73262ccb0aca6fb2eaa99f86dc8bbe60e4174f2b3f9360e29d6f6fad8cc634e50288c3a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230506e61f239419d785997bd12445f0dd1cc6b5224e5938ffdd8634041255af42418a794522d1a2c409b2356944b9aca04023100988dcfff9f3cb4ab1d5f155c05115f28831ab0525d8f9053ba25a7275e6f29d2662577c1249f72a41de79e28a56245570302047c435bb500673065023100fa85772391b1dd1eda82db930a0df88ce92865d06a562127cd7bc56b9bb6f66126404fb1263975b1733bde301fea68d902306eac397bf7acf20fdbd00bb0f249b41eace707fd0298444aac9e2849bb8199f8bb2a5f7d46a3d99283b88aebde2d6ad80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306be6bd7b0467c6f343f1002a796e8adce75bfe1a94f2e2eca7e947e5d161a6b16efe76f2cfef6dc024cf1fac1fc951f2023100be017ccb7bfe47def0c1d84857449f370918919a6c81204f4249f80c734f641e636219a7eb89087254c4eb6e16cfdd460302047c435bb500673065023100e347837068d7257eeabf877f1a2784cdf41b5beea70c8e9918f8b3f943cfcfe713daf5680e42e3be59ec50c65e21dad702301c53be84a14b2594f8ddb39a4bb7541bd77224c56143e138e4bdd35620fe1f2d3cdb95bdf88ce7fe7f0cf0618224a23f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023076d88b7331686ad7c933baf04da9d6e4ad545cba9685cdda582dc2ca41587f15bc1ebab1f4790e66787b0e677183d1f9023026e68a5b5a9ed23704f9e842ff2814cf49f5a481dcdd3e9e9b2ed25f5e80ad35ec5aa67d2f338a6ca650eff8697490dd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a8d27d84e18ea5239975bbdd3f18618403d7f20fe025b00e1b6c0a6061c8ca24f2219d4c9e02bd473f1833cfe9eaa78902305a36fac624c40a02d4dc6d189c761122941a0fd1daac9ce537d800aceee1655e2fbc7672f7e57f0a56a3599bc9920a1c0302047c435bb50066306402306a7e9895f491a1c980c7a1e090fde688d9b662189ee7c2d687e2709e54323b2a11ee5f91f26e277e95b8c8d6e7179a31023069c0857260010e8f20043510436c09ff1401dcf99e46af35cc09813286deaf1c32dfd038565fe44386b6a9f96939121f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301141bcc2473c4bda7649d59b352c03e3a99dd828db9dce881dc5bef5df748137a99e65d0fce53704d97312731714bd69023034b78420033251b193989da105689158bc2a5571f3f48eb503ee922e9f04b503370f5799261f39477686ef45476d30600302047c435bb50067306502305d62762b30414a67ad1412b3714e5f9f338d702b5bc1b015d858f1227451a61c0eeef640db30d0c0b4ef45de15829636023100927105d429896acc8a14e7be783db8df5c0e0640edff37661293c729745733321e34c3bf0c43ec6c41e3d5bb19d441fb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023044ded77215267adac859719d108023b2badbb2c2213c26b9cd97ce63f43d9e530f54966c4586ee3cf42d85d45f46634d023100fd83c5b3d997374e55d2269801301ef22830d7f5cd06b7d4c2b8cb765f7530419b491733c3ad87a52d02a37bb1be31950302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302fcbfdf2e75c1de02cc68bbed89f33b3604f9f8a9be41209d35a0dbea38b08c16e4081437c1557589ebf79390f07b619023100a2a9558fc10000022ef81a10f7d5ea6c3653feb7ebc16b936f09e4217c4b7ae45d03e773ffaff35ad3d0c6009b62e14a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f2f575c20b0af32975cf7a3fa6617a33d8e7f4c6bbb4150450d744ce7f443724d294009d7606edcc66a91a45dc2ce611023100feff3bcf3002cd9a04a058479f08e22640d1e27d63d48027c76c540e6313945ece6afd669de57e93958db0a9862058820302047c435bb5006730650231008dc142a5b748fd1cb1a1d3192dfc0dee9597a5a29746c6daa333f886170b7bd7f926e11e05870fabeb3d7dea8631331002300a78d8ba05beedd1f4ba58446e9296970ce221a933374bb3a7dd86f81d97d773c73cfa9521225cac97bacb65ed24d1cc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023057cbb5d058468787374679f2084ae1a26259cf09552904aa23fa9938cdec8df3b5c795cd6c3b84ad93dbd62f23ee7e3d023100db1e934cb3abef1bd1e25a1af44fc96ccbe7a1766f177297db7c1f138ec236ba44b320c446f1676ca80640940c095bd40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dd4f8ba32af02b0c135e525ca515d1a8b9fde9ce46b03f81f3491ab1f96f2e028ae03391b22673f3a4932a89fba657d5023100e34cd8fb40bbbc6e279556fcf184c6354d752449a497764ed144a0ebad2ff5543c7f993ced512f36a58165d2dc463fd00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d8bb889cda02911ae2294484d888d747e4e376ffa260b9e382cc04a41f8ad9abb3400d00bfbd0bf4b238b7182d60d744023100e01a2348bae52397ec3779f03ffdc368f4b7514ef8b4e3909687e50dd5d5a6582ddfb8ed2ccee411776ef83b4ba2064b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023041ece5ae88d3a014ac2c7fb850bee13a3c88dfb26b1df6c8ee5321243e645436293474ecf4cadddfbe66d8c151105c4502306195b456a0368a53e26058b069cc1e814761061190d52fc638496e1912f761b93d7dbb8696bb0c99d624a0d2063fc0260302047c435bb50066306402304a03a8dac9b60a91bb126d345a38cb7a78cfb81d2f17ad0826b31f9fdc7fd5d9ddd0a5ce9a7c50d9726b2cfea2823a780230312d5af10dd7543d09496a6e48e85d552cb94f3c6f9f46aa042fbaa95f2c4fde24c7b85ab0599b2464e91048ecb7c2640302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310094594404cbea1a6b060b803e88a6a46018b17c55f9a7f7f264a56467b39bd66b9d83d42d8af15a1400aef8cc871ce29e023100a9324eebefedf4b582195e4e5f1681a4480ce8465deeba6bc1d7b47f757757bee030494fe7ccb45924e55f87f351d5970302047c435bb500663064023012ba1f8572b2d64315b41f7cf84ce644fd008a5c5e70c694480e86b9d9ee9b651fb961e54ef4b5a5aa4d9cc266a9e2250230083a8738e09e3b0450a00cce957d8d27a9dbce1cee426edfdd1d42984be84b8bc8c4f4d909e58e2538b1542998e51eb80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a41b4a216b97381b1ade6708bb83bda68f4b3b76a650d3bff737f09709dc3c183c3aa1fe36ad27631b570ee8f17d4ddd02301f3f9dccd751384b7aaea35f2aea686c115ca44fb909e6e3df36463a24520667e04f647d0bedda8d696f1f1a1cc22d070302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307e9ad16d67cedb3a414bdeef11689687f076302ff188fe6a00d73633f908933ad3973ab930f2068213b0b491a8362b130231009d3c46a674c5393a719cd3a14ac922489cb125fa547d43f82f31f0f5faeeda51dbcb047ae7b424d5297a82a2c931b53c0302047c435bb5006630640230253418de224baf6c8ff5995052df89a698710abb5e97e653f20e95b4e6d1580dc989c2194114db847281965a42e962f702306f1df85ee18e8c2a8c182b328e3042003b57921ac6a337d4fb60621af50c55025c59f7548bd2fe923c28f7407c0fc7550302047c435bb500673065023100ccf8cc50d67637c7f9f74c32fe602ba432be49cccbe4a1668193bfd6f01c42850f505c86fbba1e09578b54df1cf7a3ab023076ba2cc82661e6781297ee0a019639a514b1f5d8f4b7b8abf59c3ffec4c14eec843dd7d22c8bd7f3408e301ac570c58f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230744f583ddfb26ed2a42fcea3f50def74bb9f9a29f4df90d63fa216f272946942ad55c098de498d6aaef80e4983e4a24c023100b43bbf4dda61bbbc8318514472d3254c4cae18a5b6aba15f1a8a8029499faceb701f605b79edfc50a8d0d1a9ce9b15370302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fed1eb62eb5c6b3b44788eaf7647c0977ab9e1c6807c43ca5a7627ca25cf822ecaa99d99f2e07c26d6ac812de4ab55db023065897810d20200f9205ff36eb6df14137c79e87963e0a89225e512ae5a1e416f7d247de318b66b2297e82823411d01c70302047c435bb50068306602310091a02fcd4587c4f907118f20c2f1dc5f2280c4b5f72e193b285523ea0a486c68fbf6d3b0b08e869435962c2d02fe1948023100ab922b9016ab3eb278ccd955ba83d797f45e9b702b81a4368c42c3ec44741e6021bc826e41151312ad9bf97d4ce3ec2e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100db041ef4f7ca2177f2a0ffd8258d4b57a8f154934da7ed6af92b2a5fc34d9f5ae3398a3da15472e9760270e1f5c0b51e02301a15c09e08fedadda35e8d6096075b5a345c3dc04f4f6ebd3d72f1db0c439ec34e9d0f1e6a48e8ebf23a670bff8423e20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bf03c737797c768e8b9298940574376d156d61b53cbccd4d3699dd96b744736f7563e7d2a1d409a434f816d942ffc13202305c6e6430317097c977deed269ee23aea429e753c26f8865a3606ce5110176a67b90dbef821447deb5eb7c92b0a69007a0302047c435bb500673065023100c855d745a2b5102601c982f40087212fa037d67e4c9753dd747370fefd91c4f31a45810e3a944beae067b28b5f1dc5d5023079fd6809b41c94548d65ffdc20009ba937449d6ad7c63de0415ab0f6d8a3de5f431dab36fbcfe74fdc95cc64ecbb075a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dd32b28cab5ab106ce28cf9e2cbd7d9a96a5cc72536a90338c413b8d4e826f9ab8cbf22483d4a4dd1c7bd7796f75c71b023100b1349578fd2814c1abce89d1f5c6902df38135f53a7222c1236533d9474b7b34abc95ae8e06779456a41b27c914e2cd70302047c435bb500673065023100de0c9ede7d309a298fac6ed57e7e885e2a64bc5f4888654dc0837d2b2c69f0081ee225415c825a8208377646de15b2ca02304a7dfa36fa80dc29bd0f165e4d12b2e5f13e2132089f4554bb0150541fdab9a1a4f856fc6eb3b1e02538ff5bcfbf409a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b7d9b991ef519cbb53f20c2dd8c6806a44406ed7ffd9216b2dc4287a2cd5c0bf83b0ceb410d986f3b8b27c7ce54d16ec023100aac6c4c0107c0663b021ae9ff93c57dd5937f2e242305f3a1acef79ee5ba5af9aabfa26d3a17837e2d7ef91159d488b10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a563357433aa908097b469e630e7caa57fb936a089b37c8cb1034aba07c40dec34a9df237596d7889172399804757010023100d3183ca90e5704364711adb1015f156a9e5fbbaeaa95d6e36b84003f8250bcefafeeffa64bce3a84ad0686330fa51b370302047c435bb50067306502302edae80eeecada8f47dd0814ac89c5956332c72afa2df834c2bdef2b751175fd0bd750ca747cd1e929512026538c83920231008c449a77497af679641755783e24658a3382430e5f409d682daf1c12ffe0f16e7bf642ad526e000b1306f703ebb314bd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e969190806158891db7a5f7cb27a720cbe99c63e4869d36e18cbdaa0b80bb871a0fc6cc68b1f8a2f4ced55f9ca52617702310086e17d7c7fba8d94d83e33a18860e2ddc3715bb28c5f7166e2655d6fb3e59726e27541ef68ef0a1ef85c2ceb597751d50302047c435bb50067306502301adb99952cb7d0f8fceb011b3db23dd1522151ed063641c2520fc474ad07cf31d8e6c0d868a27a0e5e23122648f87654023100a9f138f79980e3645dee9fa15127170fe3c7341bafd6f126691a5fb79061db4c7e2b8ece0ce65dfd69b40a7ddf24298b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302fa0e59b34d192e9097a0e3968ec49a691813e4737dad47ba42b4f3575d5a84ada96821a689547e84e915d6664b1b9f5023100cde8a5f7504a390d9db3c276303455b2f662b27e394d27ffc3f804c402137df532fc3f0883f74f3c1e166ceef60be30e0302047c435bb500683066023100ce34cedb98151e2c3ba3c9399686418b36b45112d8d57042b8335bc78e1b79e0b24d9bf4fd108dd9b73300a4f673e5fa023100f78e46556aa1f954cd84da6e715531ece625ff96577095d1e3a09594600ffafb60f7d5051462900f7191b07c076e3ce10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230105ef849814cc71e5e071d7bd2c3a51dc74859c471f0d84550559ebff1842adc8c8c9e631cdd4c7e88e10e917c294bf9023050d32a42c76b2a855b582d0399d917ccc707c6074ca600fcb3ac0a5cd308be223ed35c337a48207308d032cd3bcd4cb30302047c435bb500663064023010bdc75a9fcdd35640674ca591c575def567fe445ddc072dde52b54711ebd22015f81746cb4c14db6f3f21c24fb410860230038ae1a31b954505daba1ea50b82e5975fdd9df8c7b0433ba0d161830ffa34294d27f43f720296ce93d83a2fd491fe020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a58c5106d4e0e583524934513fbd8d72d495be8856e1bd454f498b5d1e9a52d787c5235a22951f01d49b467754a46e3c02303e6f3c79310b6970dedef3be4c2a5d536f394c85b42c75180c7ed92848635ebf4fd1f234ecb22f477cb8b4fc59d8393a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306bfce010740d2fec3b56829979d78017694910854822e2664b6ce6ca0665d98ca52502e3bcb1a25f99ff2f0708b4bca8023100c6cff9e9abb7e53840b8559e94a2a0a52e25a25c14a3853e9ba82ccf9ad5d970079f0bd94ebbe0797742128a3d338fc80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301671379f61e6ea30fae121e807de88164e78af973d31738e42eab0cb5498a4a7506bb88a5aa46b274635d50b2378055b023100be1f2f6e54cbcf2f5fdc1260a996f8bbaaedb74bed00f6b081d684923cd21b1fe738b1de80c8e0d2a4f2b374dbb01e370302047c435bb500673065023054247ab2508e3a9ea7c1210cea535be9418cc7f9971dae68fbb435fc09a691e093b09ceb64c8207d1b6eb69b1d65e80f023100f74594413a1bd102b2c4c9474745d07da51decea659e6afcc4210e62a2071cf9b9e817b79d11591496d0801aa7270a7c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a226630909df2759e694ba4f545be5084b742621b755d2dd1f490dc24e9d67718317d481eea9688865ef9451222d93fd023023408265b43958495d2a4b3f63c580f6f8722698384fbf91e16fdfabed54345e44f8845317d63eb198be2c50ce314a0a0302047c435bb500673065023100c0b3bde732135eee3092aa280b4e9eb9f5fe6a010f333c8c55116f4c47659410f27f6eb615c98150e60c1408bd63edbe023052cf812e21f19d8ca985f978e4504d9d1abf5602697ab46bb1f8bff6a288fe343aa633d000c0ff9badc87a079c0b298e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302ca0a5e34283c611bb08da3fea7a22177602513b864719a93b727ae033ca373cf06d0484e58a12de45f844cbdb9a1dd0023016905c310ed13eff484ee2993e6a5d35188594e6d558bdf144a59bbecf0e93fc6ccd121efa8014c31e1fbba5597428830302047c435bb500673065023100bad32a4d19c7932568b53f026bcc7ad04a4f6cebd398fa5b0d336da4855b417c523dbfbc760d762b5a0a5c97c81950270230754b466be7e90b397e31441d7466e7651a2a8786e963a0bd683ebee9360063b2ddf1dc4e27a22cf2ae052de27bffdd3e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ef7c3e524040f58ccca42eecd2feee576fc43cb7ce708f0bbea5801eb01bb79368624ea2128e20100ec511ee8f46155102307cc8f6a8a71357226dfcfd7d13d68746dd59f01cf4c46f1bd82deee816ddcbbd869b85678b1c815fa5d34d689b6e93460302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305d324e6e98b5ca5b95bfd706d90dfb96892ebb1d9ea3411f171294cd44fcfc56b5d2bdabd865db0e98911a7a6a18e8ab023100fda1a9ce36aa3cd29122fadbdd7b50c987099d353e4c8c372019df60cf38ba59967a76e8cdddeac02ac343833599a9640302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008d3fae3d5a4d5e2a05ce9dda9a97d86179223f222d25eb6008e155f3293d97dfb3eb36dcca1c61cd80d7841e3959f4f90231008ef26d80a7847624eee609874dbaec7b6885bcd91bd78b221649e9a3c4f47f0040ec0458ffd88547600bff58b1c00a050302047c435bb500663064023002b06782cc929a4f477a4af55ded08ed1110393f859543f2ffdafa498247a490d3b288af1654ef51fa82136411b2c44102307100d1594db9f42247d2845db6fda8b9c2d14974f62cbafd5a33c859a2b3ce5986419c2481a6f15b378a5470d38e30bc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303651283687f0f8340a2ee9d231860b420020975afba43d1fe24f6d3767f0cf2c9a2457dc7d7841efa06e5abbdc71fed7023026ec133671e5246bd9e5bf9f4a58353c6a883711d7dad6730dca5bb7e727b145f2d75f889f0d55d719bf664239408f800302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e1c36e12563ca3b346c006d1ebf90b58c85b8c4c6e30691c2eb391a5f863ec92639b27b0c810321661a1a705f1d4c3e3023100af207a3b1dcfd49d88f185d17b43e8cdea8806ff2e75043fcd8686ee3b1753363a0ba2053d5c52cb3764bb938ff5895c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023047a4abe2c94bc4acf32082a9ce4f5167dcf9c9cd5decc0441db36a8f521e75b216777e40b5720a1fb243a0657634c59402304fdbb928f7ecf3d2e53b967e2c9e642ceafcc2d9edd6c1da6240722d09359ea01efc3eb0d79c6510e1b77d84510d7a1c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100eb3514ab43a1dd04f2910b9688af810f0a405f9a2d23a3ca395a958f88030c934a84eb1db6fc9422b8bb3837cc7010e2023100e7f84ec556110cc6adb8b61d66abad3242d7597ff85b1868158abac95379d93dbbd5480ef64ed6ae489eef09fa1e29c50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d2eb5188b2651e26c904c00aee34b3fda874cf3af60f9e2515b788288939178155703a4d647d3b4d9806d251ac60ae94023000d6a4fd00d93cd4a2f5c5bef1d32f72a079ae9710e4ebd28213e9b6a8a7e3ab4a82c6f2a1c88dcd96a1c50e7d6aedb60302047c435bb500683066023100aa05e9b6d7387f74c9a1081eb7342038a619e9e469e50aca57e0af31bf4b95725c9878568ae3882f98522a109fd49a390231008ee3dee0c22f32fb9cd057552e56dc74114b73d9f3f02680c5a80342af9e16a77aaef21464d1b502d84622dd640131090302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dd820dc6b1ebd08d03f1fa334763442f0dc25a8bbf271d751048e707ed1d715a7afd6ecaa4d26f3ec003bccd6fc3fa39023045d4f7e4af34d6625febbeade0dc9a1a8eb145c77df8b266025aeea25cfbb1f92478efe167b746b4c586495fe5badbfb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100834d87b862ebb7c08da1555ab631e709526b741d00e7ab6e0eea9abc69926f8611eabe9f130e197788c9056dfca6ccdb023100df945f06da957020c0bfdacbd01beb230822dbd07658579d82b5dfb4bada8e31214e83c422e1463802cee1cc4b81ae880302047c435bb500663064023017509b9eeda83d64c07bce1ef7897b5ff26e0c7b7d95c450a8f2a6e8a4fbd2d95cf6fdfff6a749c28e022b5ac1e8e28b023045e091273ccdefa0a9f97cc852b8c75574af0d9ad5a661ffb629f2b9c9bb96e6cf4e17655a034f1d8512919cd5d2dc230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305d4fb7095615bbbd3461114198f5040ef2d739f45780bf7f6816e7cd3e277336bf498a92a756b13d3d6181a70dae416b023033ad0890ea06c96cc4c0afd85d9c18feee353e7cbdcc8e096389add0ad3c7dd5582a1ea583e6a8a8375f9a7e7988583b0302047c435bb50067306502310088d09d216d91db19175f326167f2fc62ec9dc0dcfb184a22bea0ca17cb5a5522e641aa7517a3c7d0e84e2b478839d5260230088d1986c92ec3eea8f2a01d3a569c60f8e6c0e2916bd581dab0857e1cb7670682388e11a24cdb035901c36e07c387370302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b441f86c4b847ca45fa4ffac0b11eba777cf91f5b4cfd652c41582757f290597a1d1826563d612f0549d99e441c711c00230041c885ec3296a04699d974160272c845fcb05c416c7e07f087f138e58ecb36f0e47706573ceb981330e691b319951350302047c435bb500673065023100b21df0ac2f5fb8a4c06deeea94b50e19024f86f484ba88047cb22707481b1afde83960b3a9b2e55222523f1b0275a4e3023072f8444353084face313c5b297ae402439f883543a1064618e3e81e742d18fd2cdb2ee774f1c63bf10932a122ace1d100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d117312b7f5e1a8ddfa8b33b7ae1e22f60f3b9d029caeaf5b8da509fe61def3cad92481134c3a09920b24ec3cfd31712023100ab7ab492675f9964e08a2ae56607ca835f63f67b05bd6fff85ec531957f98a1a63d7ed10d1e2227ec9b2c676dc0df3420302047c435bb500663064023004be7298fe4c7a25c1b129b4d06138a00d52dbff5d7669de624f80a9f7659bb90f7ede45b631165144db526fa822e151023062774a4c18b86a5e0ee4825aa87a7370d03983aa07b4500f651be9c5bbd642bbee325cfceb66277746469b1fa2ba9bf20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d587d519777b5ae5c605a4d9eb69dfe6d173672d11a6953c8b2ea2cea71a7b7b5dbbe19f83fb4fd9071433bba1d2eafc023100b6767df01eb498f48c20f5f282c6262dc1429439b48f17a4c3fdf0596540271efd990947b711caf292492dae343950260302047c435bb500663064023003788b60febd7f566ac8404a2b8b5d2de4654c8a4f0a7cd1dc9d306a0356deabd95c5dc87f16d9a4e79bfe3f9a7d527302305bfb7684f77025433a7779d5f1bf1edcdecba53a20a3e3858d542ef1512f1979c9710408f60ef1b214dd065447b4d4b80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023000a9b61836f0b16b0a1671fd257a7ab79bbedd1ebf55964eb462cd8903bba53164bc6db232ddd96b2499e0283af8a98f0230558e539a01a184efd1a74bad860ae5d0ab7d6e47603430ad428eb1306ab333fdfcdad9d500eee475e4481146dd97b1a60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b551443be3ef87e0b714a474d10945c9dedf2a7c5d00953bcf8eb413d0bf2589dc34ac7e53cb6a73ec99a74cfc0f203d02302a4af1179a8b452b6b3aec938a481e9cc72d67a47dec4e522127f22ec7097ca7bb24b6e9e8e136a1bae8fed28c5dd8190302047c435bb500663064023064025ad3992c480d729804f19642812a8e5fd034c3269bdfe6b3631a01679009bbb8ca50e910714984e5c1f384f53bc6023046f88cae0e1156e405e2b2730f7c9cd2e5bf32ff858ef4abef2fa79b2bffd9b92be80a65a7f61c79463780dc4c766ec80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e86cc1f8cb13e50ff2d191cd12d6ceb426552e79e07c609f632171172a2660ac27c1ceb88f28fba413a887f86568775f023100ac6265cb082de6bd7ff77baf239f9252a59070f66001c78ac984a3f4d54c5da9ca27a50cbe529845f40831f19eda6f1c0302047c435bb50067306502302b77a9219ff7c38e54df815120abc93a7b6342ccf5d4ed8d917a6b2977a865ae96ee81ac433599aff72b9d69f6cc4c88023100f6ddaace8d317bc7b1bcb34ae5d8c67810c35be8319efc4ecd4496025dd23623bd547580463879fad1281d5b72fdc5340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302dcb2703a9e9e31241ddc39762473b1cc6432e5e709c0f3296823ddc195abffd7380f76ba31742089af6b2a6ec37759f02302bcc66d8b5e13dde23421fdc79c48118b6d96cd149cd210f05d7c9a760577b60eee9a6a2a136b8280eba59c07634e1630302047c435bb500673065023100c568e5775f292d7a18989c46758a280487922cfd95f240a9a963cc97d849b33e3559f2529d84fb06225ad01368334aa702303417762fb2326ce4f537d5d2480fb348ea5c6342540ff068194e8457d1574b1866af34c35b1cae1d0198bdce957dbc780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023042460ccf046e7943ead85971981975f8a7f43114f03bd51a9b25ba7ecb48d78bf26089b3467577396fc0fa9e0d5c3c3502310081b080f77d184a1115dcbd979e55acc6368d11432a24bb70e978163f0cb359ff4e46ae13b1985b52b39ff3da8b189e450302047c435bb5006730650230715b236a432a3b565e4555e181bc62ff48e121437332359d924d9f6c67a7578c9711799948ee490b8cbb255f6ae16f43023100ff89b63ae45753fc295b93386843cfbd73197aca330adbb636ba9e492d0ce2e1b630de5535113302f9aa2debb73bbf310302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ca7a4c62365669472a89091f929345eda5d501b03b01e6d8273984b55954c14727f7072b2092d85d8987c5f612edf0d0023050ff6d37a2058d89877c9f93714e576beec05978edaacd13edd724820ead64931adde94a39de656aefc67833bba395090302047c435bb5006730650230132b9d1c6cd35d54dcfb1212eff6ac1cb3fd5dce3d8a1878590440e6ed07fb3e2b559e7197c745a8200b8a5bb2163561023100872e40ebdf053555e65e9f9c5e7200080cf97d1b0da6d4a1be46a3abb8eac37af4679028062e694566675be319ae74100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230609a8a7b27fdb2c85ab2196ce44e929ff34fae6ff1813fd00bc48937b406bbf3793998e196bae9c8e4ace1a5356332c7023100faa250614bd006460c3222d67e911ca6989c3c99adc11973b8659db9a18c7266af66f00ce3baa41e4aa79fec9c713ab40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302e3b0142c01a63e62ceabc087b19f628f11ee2a7272b51b93623a9353e5b82278e9a557c9668a734a6bbf5af2da9f30e023100ec860e28a1c170b60ad2fc17518a4c318e87861645d04295ca9ba2251bb05838e8e636fbd27d0a7e4d80363a88b5bc960302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303f08b3ca709973f2ff8edb0b9f1c0abd7d2d8fcadf053a618625786d9044f2c6e3d252d6c732f87a7bef7392d47d121e023100f1d6f9ac6f8481b1428e09368117938b72ad14a104c6e50a2adf8580d4e4d012bf47b64d444b1cd56bea70c78be9907c0302047c435bb500673065023100fb7ff30d5e427d91cd2dd67f192bc31e5d3aad3e7ffa023cc558278514c0a51090e628f1c581d3f166742b34192c36b6023003983d56d36a1f60462decfc44fd03b55b456c693504fc183239e04a32dc821258e65ddf08db1d0dccbcbcd4fdd5af120302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023032941b9d8f7a9031b8239e0c5705590f15f0a29cbcec55bae2bfa1d4aab5dc9798093210f4939edf788f287e2f928221023100b0bc8eba24e4a3455c6f22929c0ba6a1f89eed7f8fc86bc66b860a94801e9b0eb350731e0340f519fb9a7b98f153e25c0302047c435bb500683066023100c2e0a9b12bfb44fc59c87c537b7c23fa7df212500b9b822be87365f7a9d000e499baa937adc53fcf954aa536278c8a0f023100e231310920acdaeea8746be8e6772da97063505eeaf469a4df26a787093b31fe557d5f74c1d42c45cec6f47423f3bc9f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302a5d2dda774446a224409682ffa2300195e6654acd89cdb4f6b1550f1d84050dd9d8c895fe120fe09ac827879d39bd6f02307d3af542013a364801aeab1fa04e93f6c295b9a49823ca4f0b036da8e29c9f23aec1897b60e8c295afc1c9781ea3704c0302047c435bb50067306502302cc3baedc814fa65d29114f2b46132b6b6fddfe9e91b9c8b3fd51065ce6fb608e11e6290cb92ef69776945081ca2b9ed023100d08d5eaaeec030ec9be7f38fc645dba251c98cf993e5c402462066ad40a73e5382b38ec1fe35ef2cc1fe8a901e3788bc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009661da3c22fa374dd8ab780f0fe3da13241449d2440f8fb24a1b37927d6414e8edfc05f089af742680fb2eaeff710d35023100fd68c80be2912d0e250080cadf14b42cd641216d329f51f9b7b74ad6dacf8a95c8504cc203de4cea92bfe33d237752390302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310093b16c15a2974f2298e9b68e07d4b9d185ddd5a14c16790e66e467a570dd50acb4f74026441ad64df78d06944aef25c70230054086ea76dcc933ea6ba021266533532bac86d19aa36bf0f4a76913507b00a33fbd08a84e435d14da0d2cf8dc013a770302047c435bb5006730650230573f1d01cc8777cdc39c727e43029eb488b58fd838a26837e83ff992bc2a4fc49cb0f888c5e705824f0b5750d7ff75a3023100ce123022ed831c97cad84a70fc744faee27eceee8d74a1c6495d2080ad56bd5684089e3b61d7c9b8ffe870a1e396cfa00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303ad0a8694dbe67af5669cd1fdc261ef711b6f0f367d90b5e102b3216419046e99f8b1918dd3187660edd874b86178f2f0231009729cd633b0089ec075935beb90eadcef592fe6afbb35637b6bf10596c737215195155b5bff314b13b838f4716bbe74c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c997a65862f6b5c7c1b1f068d6f55dee18b7543fce1f24b61037ad6d6f0d43568bf99d935ef6e5bf6f9da31f571e0f240231009ed83933e8e6696eb20b305c115349b65002761fbed9903825d5b89bb202c05e3b04d7e032d5153bf1cc025f2990d6e70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310084da1fc7d44bc9ac2db1a057560064a7554fe544e9226e0a439afffac320e3d2e53f2ff88ea25092c1dfa71f2044771d023100814353ab7acacdfb7284018a2692fac9497e968a10caad41d6e6f5c9e5919579b3ad9f75c47dbceb3614c53f706572fb0302047c435bb50066306402307a27bf854c1ba0f149504f3af43b2f585bd9b813e63147ccf2f739708768b759cb68d756e2e0c3afa12670f82c4849a502301a75daf0515abcc46d125aac7229a3d8089970fc036fb3dfbad77467a7b85d36dc1dc265b5d477fcd7031efeccecd7790302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100af6afc37c39a4cacdb4072450583de5e642266032b56d3ed44851c931416f3f103bdf96a3d0c29afafc31aa5200ba6a2023100bd0c361c64784d9699584f683510523667a4887cdc6b066286ba4ddbeb72ffb31fc465ac21e2934e1affeb244fbdda070302047c435bb500673065023023313c76e48e47ad136c87d9ecdc02dc5f07773341334cd78d7d0718875678eeaf187d873e5976dd52b4a4fa1fe02bdf023100a5e777091354e4c65bd9965f39c4c8d0733c841fb767f63167b60dff46741d2310a00b3a85e646664ea0f2f3d98922640302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023002181fe928c8a38e893953326700f8cabd2619d7bd12fb1ee276cfa103f010f94647171e5c4dd335bfd324b4747ff3ce02300f3e1519f88df279910c31144c550080ab963d5c10fbebf161e2870a4effe25cbc54278597a0ac72a66327177bca08ef0302047c435bb50066306402300ec0927f494a6de14fb220297eac12b139107c179d7a15d94e2b73923546e291c64bf52bf33de3d4303a1dca46c87a8e023066a9213129aa0c460c45d0fefab1e9a7102b54aae545b169e0208d31497936805e81b9fa1f525b862e4d69477273557b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009005ac28175be3abc4da91b30c9a0d511fee5ab190f0785d4a3d0a33a6f9bd4e0bbe54f946584707257a02050b4fdf940231008f9f3c3b4a24bb6113ee9d4ea8e3c8bbd57dcf23672d7f5c3c3b9e24638797d6811310e74f68874208b430a99a43c5ea0302047c435bb50068306602310093ea5bfea2faff8af54a7ffba03f81ce15f1748cbfbfe68fcd709229538c35e0c552be34d58ec0a03b763fc52985f9dc023100e8d1408e1a925bc991938b952450715f60c4e621cfa4459cc3d039731712212d870aa663878ddc438195574b0197b6400302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230154b6acada06a8b966042adc65711825f574d26c5c81726b65c244a750c4569a755a8b667d426038fe1ebd48c98521b502305542c078e2b9dc29c3fc25cb62e27852c6303d61c4e70f440e4eedbdf46ab691bd2d0cdcc94569d3137fe90642a787e00302047c435bb500663064023043a99093443c3a279660f01a607f61dc13b3e57c5eb9ec87978cc52bfa31ff911ca9dc16f34a1996c68f6d6885e225cd02304a3ff5d587c9c0b161a3cd7236959451b8bae9a0dfef38e836875627213ef3e64b641404964500bffaa21e8b2f0a4bd20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009d76fdf76878136f6651de418168450bf83573bffa211370b7fa90e484067928ac5ad81c31b5ca8d62f55fb4a0bfbe36023100b21dd92767827adda9ab34b456b14a6902a596a549d180884d5067b5f7229113ef201ae445c0a37a1f4d0383a645bd160302047c435bb500663064023029d7044d2e89a7885b91b9d688cea00e8a25687bb2eea562e196eceb6e0dbce65b4cd21ae5fd8f6dd67934d98d7030ee0230388eb8682162b183ef058faec83f5764998363599fccb6f38d3687e99a9af5080577e07af56260df1c55d496e5dc90eb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230486fb50f0433628d79d17572cf9a1feff270f4df2c99ff85081975cedf99edff3175874c164f95727b5a9a7b29a72a3f023100a8a7486d3cc15640d072f17b9be47cbb82b289f1699bdca98790deafa24c5b85232b5a64d688c1886e32ec113e40cb1d0302047c435bb500673065023100b954a0b50462af147025c58d14ae64f061ca3794bebb966853d9948be2e0a529e651a5ac4196a251aed31526df4e0b5d0230559450a0459f8be2fef78f300db4094a8d22d03122a85382e62b12bebce6319cd68c367d06b9c4e103a69d23bcedcd290302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c6ab3ffc9d60e5ebf3007c0534f3ec82bd1cec966a1ebcf96d3e2653c6b100537c1b8b1a53d497d05dceec7fe1777dc8023100c568950910f04808e4a41312e4c34b5871044b5a337a1d091244a8265253ddeb43eea69ae37eb20348f5d721112dde9e0302047c435bb50067306502306f8ef174b324b557f8cfd21345027480657ff830f1bc824857d989ac956eba36b1603ab8b9aa89db0acea3ec4a87babe023100cf5af930e3710cbdf8123de7f2b55c104dd3489fa7051e2a9cd17cf132cb2f6ddecfa49a1de0f5b13fc4d9b807b55f670302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310089897712429d3d0051ff424889bbfb9081a064a8be62366ad712695fa2ee3f204cbe2eea131a4f9518ccfde8992dc63b02305572eedd13c6fab23434fc05d36d310acd89ed7ea4c90d856150bdfcb089d13d8cce384fe9911cc70a987bafd789e2250302047c435bb500673065023100d8cfcf217a9874b00a4e973525931a576242260028bb6871c96bc279a73733fc2061e2a5121507dcbe0afac30cd18db3023064e3b06a1e1f95a22e5a75419f0aa7699483955b7535a97c40568abe7b211c7c561d6dbe0cbe0616596699870b61116c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a43014994b3eafd12eb9761f2c3b2c56315c038d420883c6740e85f1bc630dfa900fa82ff4939d739c0e9ce889e3ae0802306264328b7332ce004efa992cc514a80b077fd8eb4d9c56c6baa53e6af0334cb030ce0fc98adaf59986ff604cc31899700302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023026f4fd66319c5d075590a39c4d65be53497bd58c67b43f73a3009468b3872bd3658901723bad2ce44e40981028aaa4910230254e3c74dc3a80a2e9975c68686fce6fe57772e0d89ccd55a26f3056c3dd996fe2a36958102ea0afc19be1ed086f43ee0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301de17a3700d18a046ba9fa4ba818098a67771b3ccf5da83d8bdde28a298825e03ac018c43e1a2655903cca1978024323023100a3463997c878575ab6298e9f75f428777fd3ed35ef3ad5665c66f17bd3b9470e79aeb432c976ba129d16d5a887e55abe0302047c435bb500663064023078ecae23dad9f61b0b1f2d23df85c07250a9cbc794781a6ef7f7a5cc15be3d530de1e3d4a6d87d463b06964c13af678c02303863de2a5f40508abf69deba683010c4954732a3575d120456af089be567186edb1243499d330803948420b25a1b3c3a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310094435cee7a4d423ebcd6404d792041d7ab8528fda78958b5cf14f89c355c5d8b3f26c4a883da974d7c889c5bae3748cc0230669a4ec70a73a7866f8a6c9dfbc932f2c867b011b2a67042ff3ece9bb0e47c8bec6e449099b0ab47125750d6ab3ac07b0302047c435bb500683066023100f943fec59878a6c7dfba96634e8b32b986f438accd5cf6904050736044a02849d4132f69b1e862ed82854e32b86d287a023100db22319239ab3b3967a9ce49a27191776f762f8a27ba51daf966c0363c1536cf549e7455d56b985a836a6e9f940244f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230787303f88354473fbc001d6f0b54ed8b54a32df9614b3b93f9982b5cf57388cfa47992f81e499e2b962aa9ac7e0a850002306e74dbc4b4b3e41420e75e2f8784ba462c89c3881fd077361e089db031aefd1f0c37c34d206b0e8b0c77650bdf1d98600302047c435bb500673065023100d105f88b9c80a7187d0ec568ed32df4b321393a0fec6089da80038549df4ecf84979f9ddd842a9cc68317f8882c9e55702301b27fb805616c3093b958900a75189a32cf76d5ef5eacc466d056694c52abcdc473dc950d4f9ae95801b3e1efc19fe820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301e256d3964b7b15dc0c281cb9b5d8ad8bfc6a05aa87c8167b86bd489838a234ebb85e2936ec747cff6c4651c747c5502023100f1bf943d4b692636d89e373eb4db2530e00237fe1ed64dde16df2836b54b2a38e3ca611c1749559f2c49f6b9aa9fe2300302047c435bb50066306402304972078755c3be2d6170a3a4d65f0cffdfdcd01e09b61dc74302f5a76780f4cd02ec5a8c3d94a3aeedcf4e430b98e6f702306bebafad0936a6a480f87892b4082b86b5c14e111389d3810beaf7e93def062c5040e04d49014962af2730a43c9a8ea50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230028090b483cf209422eaa4c3809b5fc8534f48e0304168d32fc99900755ff0a669ef48743c293a986fb356d580335c0f0230274e46e64f379251eae6cc7c1bbc83a7b7eff15bb316203866593014da9ccfa82b53b0cacf2a9458375886eaf1a3e6c30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023046d4b2c8a0557862d873677a7d278e37e517c02dc8237ece97150ddc4ab1d8a9b2472cf5ce9dfb8cf346ed5d2521b6c0023100ab8bd29c85bc61b964be9778fae1be13f34c57106868935fe325034bd8b67b626aab46ce7916783f402801e72759259d0302047c435bb500683066023100a7069e10a67f5d7a61b32a0340ede1a026c0bf0b0d74e6fb3a638748753703f4d4ec6db7aadbf54de0e337812bfa0c3a023100841417e5ff5e89870933463db785ac5c0993044a69f77c41e823417dfef743a230db4b67d97cc47c6faa24d53b157b7b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307ee18fcba96195d43f66c7fc6fae1a567223ab366d70dbe47202d97e03c788c119b8aee2587eeb999abb692269f7d23c02300e19e423402b5195b39ca0af5ff3565629ee46f1ca67e4abfdf185f083b4cc4b36ba02a5969a16297b75d64b4ad0b1490302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fce9162ba0074b0ae846b160e8c30f0688384c3445ab358057d9daa8e7114d9a9c80f7b609fd726f281368a342fdbe4d02310090f5b6101af319d915ebf620d79bdf6de6df80de8c3db44baa49b945b87c199b59a649fcbd8090fc5d1ad8ad02cb15f10302047c435bb50067306502310098254ce0179ab9ede0022eb05af234570f3f7e6683f2028cc3d84196f59546ac5d26818a4b519e02ddabf476be1224a3023042147a27b792b3005c3de27bc32d4bc2f836dfe713c1575d63c85baea21539b6921b044b54e5df4787fee908a2f98a820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303501d05e30716f1b4407966635416abbd942395582a0d1527f82c88e41894d4ed208c0eb040bbd051790ef67879cb61b0231008aef4ad8acf7efed56d66593d74cc383326b9f52cfc65ae9169ba8754e66baedbe079fa0c10505241c9455e4ea37ad740302047c435bb500673065023100e9e3131f600a7e07d11bd771cfe044bf81a4efe9f096f77677b0e876ea6b74bc4200ce2a13751209480a3c152af30a6902307453165a0e3242a6eaecb0788b12beeb84ac1821f1071c54dd6a425a224dd2b2391796dbd57485ff6268ffcd1a82ae9d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f88eaddd44867f73fcc55929fec642f05e6d50ecbbff9da36fb463738c45bbba334f9de818760ea5e9d1a3481271c165023052b4324422a0aa6f526254f18f00328ec22cdf7bc14d5cd83c822927478667c22cc24af11fc9c9fc2ae7e9171a57bfe80302047c435bb5006730650230135619760b534acc4bb70c777514a13551583390d5964798ef9bce3993df6b5f34dc476b9a8e6400115b9b7f943f161902310080dbd3d8f8c0169caa3382ebfb1f7dd0b9a0981e596ee96df648ee9bbd605be33943aae5f3d5563d82c498f1073894620302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e83d75447e432ca11143c709de18c1a13ef2d7c57b63e6fd634e2ff92e2909c2fd62c1df1d57570890a4111ad576432f02305dc572439b7bd6e0aa10dc4cb76d5a6a67d185a7354fc0cef59f6a85cc00f07c54d6e18d96da02162330af4e02ba6cd10302047c435bb50067306502304a7c191903f8afc0d88c826b11f4731b85d4a7ef7379fe33169b3da8baa056ed33f5dcfc76f2893061c4a6a27de69da802310083258467f473eb13205cf4381cb75deb927f1600bcdebdb659ac1ddda8f211f737e31879413d6482fe8b3e3bffc90bf70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a0785b5d5f842cbae87e5a01b1b76bf2d815efa721c481a6497f85bf3e411de606cc226c1bf53e116d0e505f817f66c90230023c6c3671849c5dfd00a4ecba5ef9611f62820cf78fd5fd5ff6599def09f797e310ab471e8c791572e8c5893eaf0c1e0302047c435bb500683066023100f7dcd169a51c5783a5e3fcb1a7c94b387f9c5828eb699d378691927c7d29ce18cae8256d84d7a4bbb73dc66032896b81023100aec9d0f55b7aaf710d519886f6ede74a038ceb7ff8a1826c54d137335a0483bcb485a090a8d66904c9656e5587df0bd90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302064fb21ede8fd70fd8b90af14b711f88fc29a621904680448ebfec9aab2dd3839d9f8a566b5716d8bc4edc79f394cf50231008378c5cf0f52b0a59c11b7e1247d7f3579bcaa901cfc4efed076721c14def525ad0a2453a793f63219a50c1e22ab42030302047c435bb50068306602310091a0206b41fc1bfb971fc242114fbfdaf670c51175f3adbf433c0adc404ae26d216afe731694aa14940a2416bf6cdbb3023100dc9b876cc974d123cffd517e7f4e6b33b31af629c562bd01f51df3ef46f27f93c8814859b4256cdf1705762904e9efcf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303a3a60c755261521674cf8c56f5087a7134375f3df4787b3794c3d5ddd9c6b43f6a915fd51b28910b97b553864b7d5cb02305268065dcfc9a2ae72ca6abb9c1d5c51b899d83db4148bb1182ac97157976439164da76ff92013537161c47672669c670302047c435bb500663064023061876d07bc607c1ae01411858d07c9000318f9665295b26792c24902510d289002b0aff91f9dcf47b4d37ecde0cc1afc02305ac9edd0f633c179795cad61fc86a97db42325beb433845c523b4f0e3b09e9e389a1186625ada4d9993fbfc2af3f19b50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023042196af6f29ab6433142c2e45840fa2d3b5f726dd2127ab2b5bff9881d18cbd3e57ba23a4e552b38dce1f96f088a23c60231008c41e29f4bd743ebb6cfb29a3cb7f51d56e23e0365ec1ef4dc8d7f8a71227aaa449f0d1567a82e2102e5e15c75c52d940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305d66c240769c30040419c2ef0cfde7b895bb11e3e264ba20ea3514b2e4be7b1029bc7171cb826d98123785cd485b20eb023100fd419ab7be0afe224535500adf5b32878db0ce1993c3e58e689b1e7412c7778893a626db677f2a15b902ac0d529e779d0302047c435bb500683066023100cf5d64e7557b58180be05950258ec02a6398e80c03bec59ae15e637cbe4c448b23dd6f98c53a7d7b67062a325eb79ad3023100d9fcb1106f22f491f3a84ae50a99e44b9a8349fdbba2820279b4e80db16b15d7809e5b1ec9d1616cec4eb342f5983a5d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b1c2bf3e7230bb355a7131a11a921ff32a47ad12b5346046ae50a514e7d66b41ffa535ee98c2ee5da4cb5985015b93ba02310081a343777e6db6e8b00a4877c5081bde1b53b5f457b2b8fa5778f44982a25f1ee6568e77953d01b1898bd2810d5b62f10302047c435bb500663064023055b3bc6ac4c547f2b9925cb301e0837a381034d349eeb5a929a5f9b9bca0b13615cd6b3c1e8bd14bf82ad4eaeb34f86e023063f413c37c4642eaa359673089beaba16d3d84969cfac38cdf9489f3bc960dbb1a4f3b74c2f1871d1539b1876c6e58950302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d9286e8322a38af45fec90dd0ade8ea6f38c199afb3973989b3198de7b8c0edb1db4279aa42de9d9112389d3bbc4df7302302476ffb1447ac638605e68230ae74865a1ec8c7dfff787003483b918ba7df1932b81a9b95bc65833a9f6a0d8abfbdeb50302047c435bb5006630640230620128835a40ea7219e8c3942f5526230ef95b66b8cc1940ea44788bea193f52726c60651fff282800bf5b1984b22a0602305115ac494f4d3410fc51504a1c11a3daf474ea9d87fc23415d2dec49c230bcaddbe209c6abfff49c2e195f87760cf2dc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100be3e0bb9847c2b6ddf506aba1a8cea7d8054e232586bdd41e9cfaec0d78cd574126184fa46448aa32620581828fc3f590230211ff1202554c730452f4f87ea3814ec578b4245462c97d7a13c130be6d9537dd24f3b4f2cf513e9702412e2b66768580302047c435bb500673065023100f063e8bec671458565c220b1b61d59bb4209a20a8c5acd487426534099087e8d9fbad6cb396bae120d7d410193fc39c60230324ebc14cdd9aafb25701c16f98437e0d09931cb557c7bbba859a63912772dc1fd855a28d3ea4a99d829fead1f2f76ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303b4071edfcf2ce0ef4cd44515e12f8b75e3fbd72238d6e97a6ef592a5dee9a8128a2ac55f70dd40094f96f4d72d67e84023100fe2bf92cfb2f7eac931bde6164fef29b0c1e98d4f7bbc7b9fcdeb45ef6e510b3f9d1ac55683f848b049c7d977c846e540302047c435bb500673065023011895e254f32f3c1e45cec5d8673847a78ebb7b0981bc6c487cb266cd10cb615a116ec70ec24887de1bdd5887e15253c023100973ab06caefd10b0609b59095f8d18b5b985fe5fb850b4d8a27faea94bb38fe9400ff50183e58fe20d49d237704649600302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100caaa952366b5553f7f43c286dc28e756f8a52f3864e71aa1c5d17baf3c5a2d71dd10dd8a794490994e7f0644db7035780230252a4cade9e25206ad6bc4cc3f94d35a42c0b1028204c0a31e6db6480332adf31028f74379550e53aae5b27740db6c210302047c435bb5006730650230109876e2e4221d3e97d4494c3e0177f75442f32dbad04f71c09f05fd4e623d0f355fad7be1a906762a2b8720966ee090023100ed895ed70693a8edfb4dc67426d752098903e1fbb5e6dde8365a1ca3020c2903600df6ebeced43a34e055a7c1a94062c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310096a5a65aa074c3253235c54882aa4444987c0ffe0ae24a03b00543c2a901d511eac0632aed4a064de9f7b0995e03efe202304ae2818ef41fbc9717027efdaf7fe73f092f4411894164df0b7b7d5015d0b0e5aab46658595682331719602d209178150302047c435bb500663064023076c0dae42e52ea440ddeadf29da0ab45e5bcb2a8499da6d57e5ec0deaaeb296cd527b6f9932929fb2710e476ce11c88802305505599e1c9eef287fbaff6d7ce22da3e14a0d10fc882ab8a91bb135f2a6ca9a905fb49440bd82d8fea940c8c9dada1a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008a3d92a9f8c17e711f81564cae8c2e38a6715e65d99508d502631a78b6f6b92b7e4919e4757fcefa36ffde46ad98ddf7023100ed423bc5920fd20b5115a77df12f3c808b53663c4c2b6aad9ce63b9ae38b3bb29d49fe627554596499a5c9cd64347d440302047c435bb500673065023100b3b5c46b4dbc56d6d3aa38dc060a04dbd1c6ea854d9789ab1f7c47d09904ee1e2d6bedf5cceb9e8b41f362d55e5e37b1023063696cff9b8ad160d9c4d21b085cf0505c4747dfef7f2c8ed15a9578ea1921370251b9f11a4744fe1b411f7cec8368b60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f9a72189f8e6e8790c4c2b4972c5994ef4bece3c8363208547d49c587c6ffdf7e532f111c63a04bd34aacfe7c8c97dda023100ebd5e2376a09560654c5a2b4e0b0f18f83c3c4855058aab7d654d84bc582200719fad7480bf73abd81ffbb565aba898c0302047c435bb50066306402301fc2da71a84ef95f8664004740b2901baf9df24aa0096f0ff821b022e5af8e482355d834764f9185199b781874c5d77202305510d20704a8354a64846edd4590490fafcaba83819b991dba62ab623414ebcbf1dc2e8eecc1cf95e53749abd78e7f040302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cb1ce62fa1ab4113627a66659eeffe1aad46b14e2d06d3e0417f8724271f987aee17fea840388c4d106abc49878c9936023002b093513965cb27498fb3b747792c848f2aa21141c2904e2b3039c9d4b58ab744cf8ba4bb1d7b4abc3cdea0502910b50302047c435bb500673065023100f1f2dcc93621dfa994a9a23e9133478c18b78d745b21a132f799fef1682e1ed51a32b16af5db21eb24fd33cd5bfbab8b023034155a029be2aaa664c409395fa444a41520c4ecd3dfa9878988fddac755e4cc92adcb7cac2dec05700fdd39d1539c630302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023049b3998a92524adfe38405126ba52a02868f11aa798592a60d056e1e2579f4b3e0ea1133ca6777c6ad1409dcd80b9324023100e671fa153f8bd7a01718a976186a55bdc80f6cce9775612f856e6d1208c465407265f4f423d365a72a6c8eb7e0edbd870302047c435bb500673065023058846b93cde59f8a8c3f2b14f52e1123f77763b10045a287659de3a1593ffed1885aea4623142557bf546040d07ce09c023100b0da754457039a22b3fcedfc8b4a40bc3a78131cae1bc2bc3450342bec5182d11b5fb6004e2b358b73fbcd46e112210a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023000fc37cc1ca0d405e34199294cc2d25619127ae750bbca8a71513ff7a55f04ae58713ad8a5a74b633dc51b7c05d7bea4023100c8565a89f371ec819b0794c6eda8a5803f035cfe9c08d79c368558bab897732a299cad6de9017c80e259d9dec0d0215b0302047c435bb50067306502300bd38b8d49d1cbb6864f128df15740c59ecc39975fccba594379ec87b3aeec4ae1d338b05afd412a3d06a9fa4de8bf8d023100a5675383f353093b61c565379f738457c61b676f86d9632de541678f855b44dd2bc4e4168918171a73229fa2c932aa9a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009f6919dd331afdf7dad41736576f7f64bf48f3ff91ba611201cf91f7e1349e1f5b229d33a8ee78cec098d304d6e88643023100c2b302ef721431cc496840004037cb72871344503f1acb4683835b1f1bbdcebfc104ab0a72475ea701af45a9907e820b0302047c435bb5006630640230700dfdf5205af79b74ebf6946a74c2e687d1dc782753aac7d07bdd9d8fdc2edccc881d2c14178b5a19ff7c8530015bd60230156ea3cc38a7c041631300acd30849df8f5b0a09deb95c09e30fcf4d88935430163fe97a15c3c0c326d174660d160cbb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301243a394e37083e8d599cf1f8d9e7741c7cbbed096db435aba11f498a15dc84204e9cbe8e67aadcace796b900a0e05d4023100936e1bd9645767b8cb52055739dd80c77367105579e32718f04596168f391f6af9aa861b365a42e8c80babb5f5d3a3180302047c435bb5006730650230024a568c26182e3eeddd2fe15020b16c14e616034d97fa6deb911d51bdf7bf1aff1a975eab03d744c49fa01b00bedd71023100df79b9e80c1ae7ac82656b8689650788997b4aa72c5c880b31bed828dcfc5e70219ebf18144caa734403304acac584ae0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023024cd16ddd8667a57c7d2dfbfd22633d4018d9319abe301b72cbef7db443ce64e6220af99bbb31441fe1623e9fd78c9bc0230545707d5084b4eb4b340b4a86090d81c186867bdef333c6c738c06546fc35e66c2808cfc46b004058db8e581465924770302047c435bb500683066023100a179f6fd27b799d5f29eb286c99aa8063697e727137a291494e7b02fc4b81cdd62ad11d5a22e728fab849ec4ec49814c023100d84caf041324e55d22804cd45d45b37892b311902b8309504d488fc88c0342e8857e32114d94fd010673cff0185c9d5b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100da62250a20f4eed2525cbfb39221f30e80e1650d38dc0ebea5e2b94272a595f3ff9ebef6d12c677fef47b76c2f7e7da4023100b0e34f0d0e32965897f44772d6f8d764f5a168c369fa6f0ae7199ad18493529a07ade42972ed9653605c12e22cefad430302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307ef379c32646325f90f57cf23fc40c57be7a9773fc110d40dcd6c8f762a3c07e79b31ba6bdac5413537603fe29b599bd023100b63c9552766c2ab11afd7fb918d21fb866e0107f6cca9f36025feef68e6d273be6d550a9c8581812e2c81992083c85da0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e2fac300c16dd04480375681b5cce0afaf1510bbe38357e3d585954ac488ee78d94edf63f28e69e083e299aa711cdc01023040ea2b4cf1fc1ed4070fffdbe7caba95dcbd07b0e4edd40c7625b96f04bea5ba58500357d69b491a4c4c2c80c9ae8c8a0302047c435bb5006730650230689d21f9ad1c8fd8d676ee100dc4ec1cf5bf460bb88445500450d9e4854eb15bc4a08ea32384fb3efdb0cafe7c8281a2023100ebc8f03aef976001fb19ef2e0832d4c47ab77c8e171e580feafb468e0d7fdbc960d8af57da93c565e05aac721e5c5cba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230453f6ced293b3fee1fa4e11d685e90f24ead75e3dd70bf2533e5fa98df8e0a96f1751868cef22962b2b972bce307bb2302306154b88e285c928149be9cbc88a918254ee231653eaa3c72b0184f52bcfb9915826a827f8cf894a0c96a4d1a0cd5a42a0302047c435bb5006630640230753228b81a2fa91a4876c50ae55985dea99bdbf3d230f291cb6ebaeb1e7e500aee60e515c3ff32355f831a77fe7b1a71023030c1dd03e5755aef571f9279edd2ced9bca5d1187c25158df20aa8cfcae061a416c914aa14f9d927aa735aa24a805c230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023056752e76494531058600f0ca18f19d8a6e1f8ea0f1a1598f8d3878162cb2431283e82b2c576d2e6eeb84a34a10ce1bcf023100977c056511c610fdb61103aadac0709f8ae705fcb26ad9bbbd8e0572a263f8c6c50e8340114870ca9d12cd7b9ecc28010302047c435bb500683066023100fc002f6e8fdbf5d7137494b3b3b5b1d22d2ba70c670734fdfd5068d8223764cf3dc0cd13c2ee0a53a13685314d66ec33023100b698bd2a53b727d186083242453e321dc7da5c002f00b2c1820746a612e300a5eb4eb0f930297238ab1dd3fd34ce6a010302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230664c86ae8e0d27349cd70ca7c3b81f406ce30c56fb3016297386f6305af5b6fadf27bc0d34dcb7888a7d6e2de19ec03b023100ef7476c0b3bc3ea7efe26db97962bcfb80d99893dc33d40611209b3965658197f682a33345f8c1b9c2b97d81a20a34d40302047c435bb500663064023028dbfa9f26d590d12ba385cbae64b1012c5632069849a940ddd79ef367430188878243e29e049e069b8625fd8e93c67f0230127c0cd3ff7f17562dcbb097b5e58eecddad2c20b3e9c675537272fb60494fb53724e1406a51069669e637a4c4c2e2b20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310084a61cbd7e91c73e1869959267187083f5d33c734a9ace95bf2dad059458d3d5a19e9ecc5c2ac26e5a863953206c098c02307d49470411db57c5708115a608c988d01f7190b1c6730e007b778361d76fe8508a8f0fdd49cc2fa883fc14341aef68380302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300f56448c47d396883bdf5033917172b8cdbbdafd1f1abaec3e6f67a4d4c8cd2ae419ce3fd1a732f0b09eefe9d2df26b1023100ab6ade22a994cb4d4b61fc21e9e21c5227ea5ce00f4b4dc05a7953b7691c01bd20c09505ca7198478ab6e3219a80a5230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305458ba1a3b8ab9930b2172d774a38df87f860629d4113bf3b2a77dcb32d7b2ee78e4eec8bee1ea3c4c01129ece49a7840230441bbe2f2d4aa42eb8819a99b1e5f5e20793108025f4552efb7a984b7fa317d9100161659a8fba2c4630fdcea62eb9160302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302d2faf75d04e767834f4def81409e35c12815883c13a393a28a32aa3e14a982f26221f76e173ec52fa15b7679e7cc4b602301382806971e3e08cde4f37ed390efe3a06fabbffa098b23be2d062d3057840d9d67d24003e6b5d10c68b0d3b521b2f320302047c435bb500673065023100a8af7735116c921392c52092d0676334d7db569eac18b18a7342cd29e65ae01abd6c3d35d70818b9130c22a473cfbfe40230359f22251961e022e93d860a2c1b4b38f89dd1e57cb2a94b55b5215060da739bf76c9e85aaa8a449b80e6b16c7d928350302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305488e28bbc2f94004a7526a2f7cbe10d97d8d28da1563d3c04483019c694bbef3e1942a1a92a14e78a6e163251722a69023100b67a0eb0316aa6d0242f550f2fae3a3fd3f1437227deba866c4e9c4029a015b2508a5d09b5aba5fd0c106cb4c5559bcc0302047c435bb500673065023100a4853c73ff7b3b9a42c347409f6a6235cab79825c2bee095669a527895b1b1b15deca9ad300ffb4abacdc354b517bb2d0230287e4487dfc9c59959a0f345ca303ea23a1e376ee37fb85963861e9d06f0f363f6a1bf0106ebe1c09eb9cf21553402ce0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301755dc04a2d595fc38232b3fc52694bcaf3c1040eb65cd69835ca41773c774f0f2b93d79d13f006a647fe4326baa43ef0230236e504fe6f2eff0d3288d262a0b56473864312db46d6b7405f130853351a5e9019572ee03a5fc18e4ce3ea8b87d3ef60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f243d57746e6c37bfc52bb0a57cb276e07873c4608139a45973a14d74daa08aaeb46b1f437ca7f9cee175667e052a1ac0230198f17dacb601ae1b23d704bc71ed776becdbf50022ce9c288daeb78358c32a4486a3a858638623a3ac988121205cbd70302047c435bb50068306602310092fb062430df69a7f157dd3b53376b6f630ea98bbf64ec3487cc3b5d44ecedbac0e9d437e49b8fd7b242e8f800be3399023100d7f2800b591ee1430b9e9adf9858888c728b7432b19fdd5347badc825efcce4be16a60201b30cab84d5b7d10693cbc400302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023075a9a92dfcaf7330175524741e2eaef0100663dd5e9bda6748ad06547e4f284627afdbb3ff89f270700733238c305f050231008d2879e27c9167e99f33c04070e57edc3673bde4d5c6b243041f522fd58c84f97d75a3c281c137ac367a266075c7e08d0302047c435bb500683066023100cdf42bea53ea20c63348af96f45fd26728f3a5abfc0dc946f07dc85d289722758907a93eec7d09f1e0976277c76c54ea023100da1b0f84b41e0d376798bb72fa39c9c55847ec201fec061b3910354b536ef3d0ffafe839357cadf72ade499b10d12c340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023047f134dc54372708b8ed209064244ceaf6c4945e3739a03fedf788d18bb50e4790ad081e4f5544d4e49b6583ef2f706b023100bb77506f4a2f44afbed67c0435bb8b5bb9099ddc3353dc23545c2f7eb96fcbe438bd377d61de899656ef7c1364d9e83a0302047c435bb500683066023100d7f084e437003867d689cbb1f658c36a87799bf304a471ff3e763994a89c708314aadd49dbba4f99df353e7e9d87a7c9023100f9de9ca3cdafeabf747486f8cc9fe6380c5ced5fe95999f82f60902e8516979cceb2bb21889f486a513163e3a01d42fe0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303623f768b504a588df49afc244cc2654413dbdd684ca27ee1f9c5d69e9ca0596f01f9fe3b5e84ffd6aea2e3bff71955902300b28135b3604ec32829df68535ebc2820c130cea93e5d0169369e90adcfbf24b1cee4cc57f893fe52acbe472660759260302047c435bb50067306502302434fd921914f2498a418643a728849c3df5717b6472b30c2f998bb28105d25104c2ced6cca31be994cfad111a91a76a02310099377a842c75a34126a383fd1feae77cfa07786cd402c7b14d03a331fe24ba1241c4e546d639706a9bc9a88848509d970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d73d9aeb9181bc9fde031bf62fe00544dd1c2956ba27ee09e5395b5b72f462f2923a7a0aa340f1fb09fa55d1b32f698d0231009916d0181bb02ff8cdd79d76ef5783c961eb4a391dfc58fe9684646f92d1dec144855e3829b1a6bdb36ddd8704ab73210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302b6caeab55c72d1788623bb3953b9ae9406afacb80f18c0fde236cb684847babb4369db6436d16e26d499ad5c63dca9b0230196d603d1f1a34cb55545d1cb5f4144203c58fcde92ee072f2e133eb1fe70aa4e2ce2f2a6d8810f91bd1694e632a72820302047c435bb500683066023100a6d0d92a768b8912a49318425d8df7927ea8d024c05bff054b7d579ed6486bf410bc59434b96a376beea2a5c9ce9bf71023100b97764ebfcf06b28ea0e9a6a8113813ec6d52c53a6ebefd7971c5be3d0e58d182b4f0df16c997a9ec2570ee4a829f9210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100867910d149560b76d92cd868751e8a5832374d23197c1904756bcdb368bca333b12d4184f43864df34be4e095e58c005023100f679f3f61def11be18208e66324f6380a75fb20c8f95fe27a15aa275653c01d48cb9f4b46506f4be804f2c0e1521a2540302047c435bb50067306502302315f6a730f1daed14003974e4801af85a2bb9c5086740abf167ef1d5e1bc043e093f552070b85e2bb4be0433a4814aa023100aac7afbb1a7d5946f393d9649773fec6943eca00c2a1bf2a8ef20de2ff24b8ce0734e33119718945620a8f9d2a45198e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230451f4f1887e2ac2968bac87ebbfd62ce635f27e3e5a29687ceb41e3888c1ec2981faeddea789ef3322b3cd0081b0ed4602300c556ba52430342e453ad5fea61f47bf88820fca4ff7c81a4aa2c5aeb083c30f959a8419b2e43a4fa812b1260e253e4a0302047c435bb500673065023029dccfad146e9d0608904ec3491b0e649fbc6dae7321dc52f3d3e9c4271d8af9514ea26c4ec19acad970f5ecd670d660023100dc882aaa7605b1ed5b8b39b66be85cdbb73c29a937a4c063b370077a73bcede2c05bba112b5f732459ba734930f6a9430302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310085e0cbdd1c6c6cfcdc73b4f998bf46ea33387e302ad220927045de06121f604e8a999d9ab4059c1bbb5f7c311a9055c702301b168a9c60377d86214b4c25104e5fb886372e58c1090bcf7c9251e42bbc3ee58fda920ee69f4119d4e155f118bbf3d60302047c435bb500683066023100827f604a2c2769a079b4036dc81630f3b6f836123306938aa535cf2df51cf7e31e4fa0f0683222bf91e2caf155360065023100e6f533b89119862e75a87cb16ba562014c7963f801a6726a8b8ec9a5211eecdae62c0d8a4e956907b02100a3fb6f4d160302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ad7e331d62577e1112f1ea39c807cd199cd64e5bb3a7c5ab26270c9d41a17315599d06a3d899aafc3b01c7af2d1d36e002305386d3b0de7cd232258458b9704314c79f7bfd5b54a16abe3952eeedc62f132058c60db5e64ccea05f1c9075d207e3140302047c435bb500673065023100c28e8dafbc0fe8b5c620279ac9834a0e300327f3e641089851d3a0b09f36528de1ff98d6004de7d2ec5112d0dfb8016d023031e2d51e75029562b769e1b433623c5b56477a1f92153b45d0617c9d5dba550d0cc88aad6de1e6ec109fc7e1c41eb0000302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302f9e864ec15aca5c6383f28589b69914c5df02e266ee438dd0d4ea1c40e278f89dc55a44ba1d45fda17c441c48151e5c02307c5b7cd67a5fc43a6ab4a5dd0bdd5af61b5cf94b8fa0a0576e5213941b4ae902449fabb30d52bfa75a453ffe179a6a920302047c435bb500673065023100a48773955fa3b3f91bc0d52c0bcee7fdcb5c631aa4374448ef90be75f33019d6ff001344b9530248b4d4bc4e7f667b7702306712b27748143b5134b4334ae3c45c8f095c70e67569312dd116d601544427f68e6d8965c450b84378f56955c6cf93920302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230546bc4cbca8b167807be9b68f57accea78b70a884ab64790e0582c72d11c2becc0f9bdbb6a738df0666ca4d28aa2c2e8023100e09a784465a7a9a394455d6e252e33ebaa4da5531d297f66e485a7389fcc4fc1344a6c53e265819ca8690af5957de4620302047c435bb500673065023055104eb3b87f97dfa42e52a04d7e74661668cef6395d77009c410522f702d9a83186aa40bdca0dc9fe71964137df4578023100aa818220be49a21cf5bf9ca228138852fdf6fdda392cf0e6bfebf566f989ec71a68249d21c5ad7fdbdb1aaea8f108e4f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230341b60f778d5ac1c92b832c2da8d0c31370f91fb15e7f518fa3f5d69a98fd654d6cf48338ba5a828e34b2c731f3e3784023100f8b596416b9a2aae62f49ac9541bf70901e15124a275dbd287cd5db91ab7fa21edff3839c97504f3f873148a1ddb69220302047c435bb500683066023100c08a0e435fd11dd9ea998ef2976352f44d743c9e90c7ab995517c454eedcaeb4cabdac7710723f37fb23e63324bf0e13023100ee56546fba784586b1820318ccf8f03379d6244aa9a99c47c2d2507872a9fd132bfad64056862b7cc897e6b3052ea7ed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023038f4b1cd635924f6e6f574083d31a1e97dd888af243833e59dd81abfa283fdc6f98f0c9c10e464064cad83a4269e55ae0231008111b61ef44b2ff4c1c2f6a1bcce4bc1c0aa51649e37d334265401bc9aae4d09a362906f6ad8ce405742238af5b8c5e50302047c435bb500683066023100fb92606172026035e3f828e5ad6e62122de7139afcf24dd455eb0eb5eb5b4c989fb6151711dc80a7d49a02a961600dce023100de0052355fb2a533af595837dab0d61b696d6ea7f38d60e849236dd5ea706eb1ac5e26c99fb47ade5f26330c725240160302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dbee12d19f0bfb73f85f3e24522c2e2a05f5c3b902cf74e92b5a5011efd6b4d4cda8a917792bb8c264cbbcac1f91aa3302310097fe27eefbe4eac73847e2d285c8ac14e5f3cf50ee30eabdcd0334dc30effa6259d07fe3ea0754c2d36ee3dafc87e9f50302047c435bb5006730650230773875e4202ffdd0a0ac2fab97dae75647c24a1139da4382229458b091cfd86e83aea863377b6bd5838a7cf94e199825023100ea5f9dd1b3f1fe35acf33f63ff9e9d618acd889f89af714ac8e2dea32338d0b898a3153832539bf40711d23252b31cac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023047e870c2d8ebc8570dbe711fe9069373ce65d594d9788437d9bf703fc4011849591af370624071460aa83bcf4048be9b023100fc8ddec34bf55ddf74eb0638351ae17df70210af1e89f5ac0c78adea9cd62de4c28ef002aaf3f6e62a70a837e505a34b0302047c435bb500683066023100dbcbc85ea31cd6f23b525534e066ec62c3ef29002c7e5ddbeca6573094d392c2aea5083d5074537c92154c5c52413fb7023100e0049031eaf37ed09523bf716ba9e1a7f9bb5494444177f8691c90e322118b1046f91f36f963cfb7cc3d5146c42f690b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023015031fe65d10fda2558121dee7546e7d7c6563224f4bf9cbbc3a26c6d573812fd2be4af15117317fceb0409d5d77db4a023100f80b53294b9fc4fe5c7d646c09a3e4f966001b4c568a2b7f15599ccd8836995aa4fbe2952582c921d70e18f8d3ee562b0302047c435bb500673065023100c318acc4eda2c2f2bf28d7a8c8a474835cbb5276882a1271910f4b66b520374e5606a5fec23323c3e5eab386b2d3de8702306d05e0e334fc2de10f3271b360998e6a35509dd4097ba0af7205d398d2472a0136aa651499806900742b6e7fa8d80a1c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e5ecb282c273954fcba732d811e52c131220a9dc439ba13ed81ea7bd686cf06a4729681751e77817b1f1d12513a59fa0023003ec6f1be28fd231d49f7582d4acfb9ba468cacc9ec7cfa0535c1f3ba1cb025da3c9a70f2f008b86e46bf33035d13f6c0302047c435bb500673065023100b62f3e56e18f1bb32e1a4ed9e14d3acfa9b79f2ef24c03e2df92401763c4e1ec48dd66855594238b7056f79b877a2a150230718a253a0422aebfa1ac9cb92d497cb65d41e0414d533a66afda90a6d151af3b748fbc1efaaab8892a556c34e3f4f3600302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300c63fc5bfdab24720f238c47001e9047527d3f21324d218200e1de1fc0db376d895b615e862d02ba84f62be8a7d40787023100ad76756e5f75f5457a33c57afda363072755e7cb922726d838a07c67df8ee4405395fb6475008d974666792a520db9b40302047c435bb500683066023100ec0bbd898997375114b0ffca7c1ef85386c5fd1b102bcc7e313248c1cc1ec4f4d4207db4de330f8f404493136da459500231008d6c015112223eae200680c9ea74d0dc4c3a6ad893c97133057ace95c938f3f3f070b51e7ade8eda6c2e6c3aed27b2e40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d21d6c24c041b4404ae95977d23a855266f30ad592d5c5cdc12befa61b847a880dc8e13da74268ce83d0f958a7bb07f0023100cfadf90442c8767511636c91ece7c02a00da2be277095dd3c6c473f7060a5d7b1f5e5c4c61fcc9a5d62e08a7c575c8990302047c435bb500673065023000fa8ed5d432b46a45d454d448f6258f206cd323b6d39c90bce386a533e24129a74768bffa53d5e7d73677fdc4efb06b023100940143346b1a9301e195a8f15b35f6ec828b57a01cf9cf89fe2ba10ed1d60526567f5a3ac14bbea84de1ad133969846e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023001ad2324f5bc1976cb085dc1400d96975b01c21817f0f5641d5015be007fbf88f1fc0f94e296aaf374187f1d83a18129023054e09d5b843fd24e78b3c6e331a7d360957d85b5bac37f0a76e5771691d894d328734068e47e73601cdf01dfc556f96c0302047c435bb5006630640230529669c5d9182f158831f9188f1eacc5842b679aa22039a16902e5d0d219e3f3f53601e54f12bd6611664adf3ba683a102306b78b1f8e480c00adf57611a5dce6baf31d25cd321e2900f5345e20b96510c91261f91fb8eda0b367e110f1c8923862f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023041f641a17e2d566f0d1d865ddbea48f39f2552fcf4bc8ab6b8252ee52962b77a1767bd79d028aa059389b1ee9bc88d85023100e0c884518fa7237f584199a20e332b95ef94918a7acbedee1b4f75686d48df7441879f92147ec42c26c35ef63faa26d90302047c435bb50067306502306448ffd4e1fec7a90731cacb635c47074f67d27121f473a3b5742263506b7f14e5d30dae291934769a56fe1fb6c1340b023100a900a40222df50216b3cab0b6bfb10401d0193f993a42dc733bc75c1fd6ca5b8691f21c17401e36a84ba1ef506940e5a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023017a542f34c26c56cd1362922e5b0adcdeab3d9b25941b099915894ef852812f4f26cfdba677be4b16cd85508b384bdb5023100ab7d60109e818d3da83a3bbb7ae7ff923e0041ada9f65fe6ee92767ec3726f082a9c08e065f914ebdeaf88274adc66cf0302047c435bb50067306502305bd8825c109e588d8d965a01e2aec58494c7f570bd54f79ab026b99926d46d971bb994a89a12be83224ab349f48353c5023100d9e496ef80671327ce159a709be31ea31c3e3e7463c0c045f284f4b6ef08443a169bbe7802f77b6a553420a43fb29e800302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009eaa75e2ec286ec42cd40c8878b28d5fa31689908d3f88597631ba86f4fa0503bfefa0cf784971f73d5e64f7a70b8a0402303a18c742fad608070eafc3606fd67abbd965d13dd3e51d5c99b3c0e784daf1b3f1ece29c73918e2855d673e5905871060302047c435bb500683066023100f34d8d5d7490bb5ac2fc9758d91dabb17575ebec33dc08c30b395b81e788fb353d0b932a22e3a0830dcaaa09991d0ccf023100919b3113e3e906d3ac4f7b500cc207910030de08c1800b618aa778db6877632cdbccadd3732457c2e4b657be6819717b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ef91f2af9e9dcf090fed2371dc5667ba51124d9cdb7f68ba18c95f08046894a6d9fae0210b44ba4dc076fc9fcd2e58b8023075a21167aac4a781d48556cfc401f372f89aab927f6dd521866b605eef7cc7b8fccb96d2b73c61e4e8e1809d9258a2f80302047c435bb50066306402304dce9ddde6226b88b319823b4a93553a71f1fe77bf1666d98c272571a95405e0a4cb3d2a499b3374513b4b8e5917e1e30230645563a4feeee63cb86ddf083d22c0acecff501c8e1875ce052c4942cda1c8f8d8f59e704d9182002844ab779e9e0c8f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300333525bd14e2bc1f195b62a6fdfbaa73e4b43e392dce397b172e5408ae19070265133bb549996f405d140af0edfcf1f02304fa387c6c1502521a1ca1d15b01b9bb884cb802d2206ef3a5022116d1aba2995ebd13264b6dd702e95fa91b6fc8814e70302047c435bb500683066023100b4612949eb64682b2d9696088064de34c34c024509e85d1f615c985abf401b3c9a3ff483142d5489ec521e5d15f841e4023100fc1ddc802aa843e8785d918371ad0fcdd474954cc11723b6dc7a3c61032347cf0a39c6cdbfb2643fe6d1a0cfcce120fd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023068ea198d80cfdc5201b5c12853ee4704696f8408a93d731d5b3feef2a0212df78d370fd63ded1da72064eba7bd2cd15c023100e467af9da11c08550df739ff01646fe69276f6a8e2aacf7ec484c90f5d409c970524465780ef00bc214a9d7758de862e0302047c435bb500673065023100a8ddd5be0a6d34662aa9df69ec058b54224998a0c3ab18a1318a8c167715a8ab3a5dcb414f238cd8867d511ad6e58e01023039e72e1922118654a860885ca7d04b2adaeed2a5b520846f97c65ce96bcac801c1fbe1a1e534284a5c33d4cc19e3faaf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230591e2acacc68668e925d0d65f0d194bdf414d1a41eb4d9507184168358503f99b1dceadfe9efb7722367e41b5346974c023100b95481b216ca9c35016949ff46de6705d4c14492263333d1d99b8e9e1afa5fa4fee442b274cb3c1cf309b8b35f2d1bea0302047c435bb500663064023061ee879282e73a3774309e64a8d96a143b04cbe6e7f91d26b458b9d83db0f8b0efcc5d54e5c3dda3c464b4664d6643750230668ba404e54aa581efbbf3ca359988a81944dd15a3dbb3ede9687f2f3a8707dc8a4ba0dff7edb127fb65fb89e08330230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b46b390efc2e0104aa83d3598a373742b2d36092c56a9cde87acdec1f334ec5d0e04296f0c338b42b72e417b1b847428023100db4f4d9164eb3db1e4d1b03c296f5dd6fc2e24049349c76826fa72164218be9a2fc69c84f443d4432e944ba6e3bbf01a0302047c435bb50067306502305765d27ff7834804fbbfdf3c408a39f6323b76227f27e76ac74c4a09842032b2300e1c1a93fbb1dbd23082189f535285023100a00d7e5db148acfdbe2f9aa340d390c1a25c46dd503b2ea4045944fa042895c00c68a90b923006343ab833d6e425986a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023034266fe21eae39335edc9fbbe3e7d3050f1a8ac72e482ff4b149c6ecd7a6e6c0af6354c4345f76ce84550cdbca9ef885023100c006ab6bbfec99664d3b9bee61c68106c9f7a438a65629c6299c06f72a1207bb34b39c50b1dbe37403a832b59ff0a7580302047c435bb500673065023100faa5c652b2887318b974290a887314ee9bc06e4989a2342307cbcd77b2addb1d88912a0aa146e4c6a615da3d9c577a0502301a9ef3bc6c66186704d9f0116772d60356b033fc4648945cf821affdb78ab4b66553ad92950fcfd5a4b741c0c71715590302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d1a0f950296dbbbe0910d813ca5d3ec9a62266cc15308194491601ca663facd60b3dc0e79346bca2bdefddf929d000380230539387f404bbf0c5adfd4ef7d68dea2a2987465ee600946c37ff53a81bcfdd589978de924f448e229cbbfd2c11ec87970302047c435bb500663064023033679f6b2ef2f2af46fde70d1b3cd33a19cc95d02b3c07837809bcc195761f75d62ba9e361923c2b843c5e4b9275ea410230526e3f3fe696022969110d666bb5036fd647598692436ba689e235d50c0be7c76aed05ba75814f3756496b3897580af80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023031c743d0c093e02b442bd82d3ecb2d6d16588922a1448fbd18f3ad4bb880d7484b6360bdef7eb9c621a2255fd92d6204023100900204076cf395cd75c51e14b2fba72566c3781e89032038ad2ddbd5e0cf439e5ff493eaf94175ac6f5dbf008511b83e0302047c435bb5006630640230160499f05a80ee0dd6460a265b24105d931b17fb712310c30a0193ccbc89bd7409f6178723e6446f2810ee5c8ea4bce602304caeaa53a88c7cc9d8fb2b36cb5bfd0ed591ec6dd5aaac18c2743a7852afd203f2108b65aa22d688a9000d4df46c9b610302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ebe656883926811f12b753feb74391845322a1d926210bc66fc679b932c5af33a1808bf65d08f4dec20c4c792a783c85023038fa47f4cb7bc25f07c08365d97d7447159b8775e23027d83a341987210fcf88700a0e5e89620e0b81e69f74abf426180302047c435bb500673065023034aac78d34968f8c0a3e7d32062c5de7026f6f76794acf4d164a82ee033c358808fd002a1c6d3ec0cd1ce363e43a06600231009143dba1b2634d916ea5ea33a89a3991da76b78ed6311c1693f5f90ce84fa86287c7ff84a50ceda56824f65689c6de1f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100819f5ac90b788c020b441a437008c71e16c98b75dd47c327826da2eceb15ac3e17c010cc35448195a309088739cee482023100b2d81a6df62b4e9685524b7471934c2fc737fa05d3a7270c225f7499a22ba6c744a74c9bbd3ff966b6e67faac942c6080302047c435bb500683066023100f3bb94be21724efbda76d92b8e14d10d86513561dcd61185bf3987dbc33ea9c03d860d1c0c0fe2670a3ed1048d7da46c023100b53ab904f0d4a906994b285e4fc4fbc12aae8aa37cb29c51524777cc0fbe0e7e7dfef572811b9b8e1c4e53611a6ba57e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a5df441fdeaf6eca3836986b900c0d95341fbbccbb0e9b08f027dbcaa242b0a85b425e13c53f362b31d2cbad5782ce3402304c9cc2428e44639378f905495bf7d93fb852a152b2ab72c2a54a37ab6d663dc830dd4c8fc0be4792f6fe8447ae4bfa490302047c435bb50067306502306b87a46300ff476289367f885e993d499014a99bd665901175c8d856c08b48f6823a044df0122393c1d75fcd78e08d06023100e981f24d7ec0c5d0fca4a9ee880364a97eaad4d4f6899473a57df71f74cd111f632d6070d028b36b976b976bde2b8fd20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c4f950993749d08ef37511464d9aa67711025ef85e9507e93529578487a24918fc3f06d6819e4d1359f72991c6b818ac02303c4136277a090dae97608611ef78951f09fb9bcb5b00e29f4e5ab6a5597895bebf55b13e353828a123ecc5cfeffa1a410302047c435bb500673065023100d10186a9e7ebbb3a66c6bfc7a67d129cb02195b67ef3ac4b029f085757b26b7bcfa1d695e21eb3f170f4f5f85876073b023020dc8a22ddf8eb6ed941066146a985dd558aea870d26ddba99013c9978dce541d9f61838c1eebe2ba9c3e7ebff02e54b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023007caf8ab2f593599f695928da2ebdb4871e9ae6789bef45165fd4919a5491d068374859d595c74f9c827b29968aa4f9b023100a6d83be6ef05ca8b603c334977510dd736dd87ebfaa7133dffdcf546a1ae6a7bb5c104ebd3f634f545a81577f8d300af0302047c435bb50067306502302a92c423e24b42ca37c633c0749d6a2a6bb69d4eb4ab7b14abe9ab64032f22bef8b1805fef8c0ca1f6ef86e1f3057b240231008a2fed390155f0f41cd204944ece9f05c94a15800ddf0f3eb49cb8ec63e45099bb535fa7ee26e5cf79d30e2dd342739b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300148f987ffac9eb63ef52c9bd1e391599efbd3d776de5db083d344b35cb99e67c6fe0a2867f1212e6e6f576ed98b602b02302c8578a32a19e6f6715d208c4dcd83467b23332dba98063008496d77df0ae4c5cabff05b1594dba26070922c7926af110302047c435bb50067306502304e4da75a2aae9686ce04b920fa47ec6c218d7c16b2587a901090a319ad5fa07ab7b067afcd38659c0877e8269cd6212702310097916becb5cb0d764c1761816480f7c97c8df831ef093a22b78daf97fc2c799ffce59aa3b636f13b0bcddf1b6c6f9a2d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300dbafc11d157f7da0370075a3cf2b9e5199434131fd30c95fff381ec63830ee36cd6896e5bb55440d78830325176cb99023013bcce50435d2284e0678d2dee76392534690e69c90b834ad6a3dced8fc22bd9115fa4f8c3cd896a4fe6018655ad5da80302047c435bb50067306502301bdb13fdee138420435ba16082f0d67c52df5d962e3d40b6c786c67f0948ee5d60fd2d432476f18d5676d21f7cfa06ed023100e9ccf7eac815da952433813278e9cc9271f25d4bdc2d115908703d36dbaf8a21c15553230b3943e44f15a33c292eac7a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310097a65c06c3e97c720cef0f8eee906006750190d7e63fc04e0252b9a761bbc7430c8c76b94392b247042599a5a8d179fd0230247b67a7513a2920475b51cc0e2a7e385b1717e82621866307500c75d8362bbc77c654cc1799df3553a40ea812f6c0c90302047c435bb50066306402307179686713be8b6e1e8f89da0d87fc1fe5cfd1bd4da98d1d050f535a25344915498a462327f7ebaaff0f45137aedb518023044a606c928447ada7652e4b2169c08ef21dde8a86f9b2af664fde5f2f6b1816f67675ba5f5eee7a96bf07da4c8a0d0e50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f8b9f25bdd490b3cd316a39e5e7d01dd0d9029ccdda6d2d9dd4d9710aeccc17ee5af51a62550de9e8de5237d5f7c210a023061b63ef98c05970cff42e10077fc61a0798c9d9539838b4f498df4a3d673669bd85a3681647a21e856467d55b37c0a730302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f89a1f14e4fd8c70dde812c2b15b88db66e64f76729e8ee1358b01c85616e190b1ec5da63d9175aa39da21831d09cb56023100f28fd79bc6d2e9b239e42f33664ddec00b2b669211dc536984d109c7dc092c52cea21de37fc3c1a11886f843837cb82d0302047c435bb500673065023100f134b510185d12183cda9c421f9cf5e5f0c427f08fb1473d1ff591ff4748746947829dd5e8cb721b7ae6a5699ddc05f00230632d722581fa2b21e87b7b539403c041459ebe9bf5e95d0972459b0bdd45e79e59cb511e182204da94a187e1840b1a750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304eee89727ad08a371876850c7e5ef61d75fe22d8fa9e52342b092f1eb46b3bb208daf918caaf01d3359fc386320d8cb1023100d31b69e66450f9f323ac910a31c6f29b1934121be6647249f081912c345f2d93034b67739e07827d6c2d218bbf043c510302047c435bb500683066023100d1ab776267ba2f7bf10cf369a0ab9082a49f6bd40ab41e82be28b99af58dbef58f78321fb58702b23dfafa855fae69a2023100e304ff1be5b3c80dd6a1adeefd6f8adf76ea11dbce8f57b9ddc84dd5cbce872df1077d682d3f5879834af86adfcc82450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230123ba377a1693e9c0f216431648ba445af11e550fb0e3daa75ec71a63ebbedd41142a8a3547dd6744c3cc3251e8c4b8002302b62e87c5af83216e01d36189d7fe02a38316689b5bcd83100e9793fa4bd5974faec1a788d34a44928b9723d08eca9390302047c435bb500673065023071d94daf6aa7056a6c85310f71c7cc3d63a313cea55f63323c012304c967c6d1e05f876f33fb86fb2ffa9878455fea0c023100c62d77f082b41c96774340150a3b380742971f3913ad870f8f0b1e7a1730147f4cd7cb3305bda1cbae421fd9bac078a00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302622a23588d6c9fc605ca80a3df09bddb88ebd500092e556bb707c67f041a859263dd766a14fa9f24dae14557025af49023100f1108b1f32652df12243fe115a11f528002ff4898abd6836857cc4f5ee1c3e707168ddfc4c4d99f4d9739e4628fe97820302047c435bb50066306402302075560784ea49f10c7851154358240bc732e090914ab6acb323c44c11d8578aad80ab4c2a1ebee2d53f38567dfd8a4a02303f19f350d0e93b0b5275a4629ae03b177288f855ef44a3744739ec715ef03feb09151c49d8c6f0403e15f08735ffe3050302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303438cabb3d3345907a4d1bd7a459b5b20fec05d9cf0d9f41e8230883867562f4e6dfa586e14250656f918ba19ca2f5de023100b7c2d12ff81ae0e063496827a1d0c80a1941aee76992a36bcbc48cd7641127c698832e738905e352af934695e3caf7700302047c435bb500683066023100f4fc790f1cf6b2156d3552b09fb8943277234e1004b3f28eec690989bb87c60be4d8f491cd026db240789411aceda432023100a3ca938766d719bab1357d712a4e1dd5d19b416d6f9700f22a29e3c488e51eb5619a0fab38ac0165d48a0e5b9311c3930302047c435bb500683066023100e822beee7011c48f62f8e1d180047b47afa127b10d841c59453ba1d431f0d0c9fb25a9ae592221c2bfb9434a32b4c34a02310093844d6eafe876ab4e331f6022fea6639cd2f44dd38f07f704edc2287723474c6a8d4acbc4ceb3ac6655355d3a7cd7f80302047c435bb500683066023100d049f6a76bb6ec84f9433e9cbd1473dc1c7912e3d0d25e1cde3421a2f18430f7ecd798c307a715c51366f9983199ca7102310089dab6f1d516a073759eea41e1aa6ac43986c7656155495bd14dd5e084cc22e829c86b5eb303f69a541ce1f0951669200302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d1bc141fa36ce7e5c0c28f76bc000d91f7f6b7c78e6a6a5a8cbc87896299677ec3137f292e5d9d4713b3ebd9ce23a4f9023100db56c4b404fda0964925d218e867c9b1d7a158b7026a7d40c945d72105190253064368651fdd895e5165d428c6a541300302047c435bb50067306502305c3e157efa89a93f6ed78e139b32225b68fa941919a93c8f0313b9899925edbc66a48d7daf844fa23841b511ef9400630231008625142d0c6ee992038db08869be875de08db2e23240005fbd994d8630fe499fa7fba467bec53258ed4ba3a6b0a6af2a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fefd3b2d41395dfebea7dc3d8708fc142c2084c32f58634f32c5543c0073341229e79a108d305129b8a1f6c78a956be4023100d58ae8467d422debb723e26482cfe31e773916cdf609fdd7f0af2612fe392daf8ada2e921f4bf19b46990b0eab5eedc10302047c435bb50066306402304647aea59086b136c11f03cefd35dc082ee77c0fc91802de38e208c3071a0f379f0421f70805e846475f00ab53b1c6ee02307c39e867e90903bd88b9198bd4de0172a3a08e6ac16b5487d90bc3488c18d36361ac0df792caf2e25f46438b45a551290302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023044ebaed1f60c9034eee11dab9c6d5e869ca5d2e8e62ef75984e076ddd4fa0e27fda68052a1419452c78f59c47d223e7f023100f1d281328ecec7c152ade633549c3b12e5d1f9eae8a822f7a561688d3e4bf510d109ad26c1bfbf1222f2a13cfbb6a3390302047c435bb5006830660231008a862332e30f83ea845ce6c719f7672db5f5cdf029a4976eb7943be0b2aa29fe7d5f768fb3d55b99de521fcf449e01fd023100f6b17d65a20b405c01f76e9431168e467e67b129aab2ecc2fa99ff239357e274ea4ce64847f99bd8b7dc41cfd7e802380302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d1d695a7b31f57687602b80778b6112078ef6c769238f128d050aac1a8e59d7620cf54f2b191be91324f136e7d5771380230581a7f5de43fd9ce61abfe923e6984d1f2940a50fa6a0fb140f89d77c240e5982e87be5d4b2c9351bc450a899ccd9e570302047c435bb500683066023100c76982a5a05865ab6fc12ab57eb7b0620a59eea95135cc58c9f8aa39837ed463f212585142a7e179f68c54f697768b4f0231009a6dc57481094fe9ce262fbc47dac0146b96e849bc57893d50388dacfcd78a35e762eb017cdcad2d10f5459d120038d20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100949c8b8bf9089626dcdf5b82996996b250f6725c8b50b6dd5639b4eaac7c1c2d87f26661883bb44066bbb97f37e002060231009a7a903f56b78070ce6af5c9506e6d016b820c7ecbe7fe5377002f4a90ff505831f05bac151ec3dedc28830c3e362d1a0302047c435bb50067306502310098618aec070d66ecc1caeba1629a1cd8153737c436a2f43fc45c2c546a5699ebc1a6ea87e94a3961d35263abea1b504e02304208f12072e1d0a57abe1292c76d83174689fe7301f40e6038746735bb272c9c149787055ec74dc7a191d0e1878d47b00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dcd3fb90a87b032ab1ca47c323eca37ba8a9a46c96ce831a0e9a6f7bbdc326c8620da8ae7033b9d0a15bcc2a4c20be8a023100d430c56c0ad8815c6b05aaccf209dfe68ba8c2bf8fc8e23cdf7cd8901c621a149ea87de694f71afc9140ce5be0165a3c0302047c435bb500673065023100e344cb343723e140fb1847ab6030ab34d399ec731150896dff8760f02a63d4ed02854926396c97359da780ef54299d8e0230715649150fa37afb7b62b3da0347009fc42befd3eb2dbb3089cad0279c15ccce3e2906d6538ce2f55fc9ef8b62da07cb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023032d04a279da9c27e31624a87ed67362ea54f5c3379f25602f983d66cab3102f90cba373ffa9749842d232ae9637eb1ee02300a728153cf978715e0acea29cd1df5828b1cb988f24809ec32bebcca1d6e1dadbcf1c8b07e3926198cb93d5ed42467360302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306eb780f6d7e93b70ee900d6edc3e9ccf96d744b43657f3d4869d7738f6509b9bc223652c5a3c8312014ae1b587fa70e6023100c07c8caec8195711f4b9b1d35ece387666e98d84c0be59e46dbf8e87449aca6cff326ed4249fe8c64295e2fd84e5d85a0302047c435bb5006730650230123d367a6301788b4d74c9039b1830a9c398ec168d25d9ff8909e33612127fbcf9592dcef9cf22032ee937c4e4825f5c023100b78530e7ee008a30689e51f864c537c7c5d8921ac022a0804194409957aee1b287942a1c2ac235e60cafba8f7ddf6b060302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302f0c16c01021a6f4da37723b540713f8659301f7c365f489ed405ae2d045f18e88c23937ebfdb428d369c1647537d62c023038297df68801df4911db8717d1a29fd9f72f6ac98d56a2004699179f6108b326ec990eb7a025eece65837a793d15ec1b0302047c435bb50066306402305e1f1ff2cb02f47c39208f6884c140120e0af673f3900489133661b6ef7a9821b197afe2c2f18b7fede4ad5d4fb8b77a023046462d97106bbdcdf44ec428c921be55ad772dfd1e9216be764a74cb5b60eb897166cfc79b8aa418fc38947a290489870302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301517741edf74307a83516e4b5467034555b251b62001637c4dfbffb81a3503d589932d2824df25a77a50a2856dc90ad2023100827d5ee76acd2d8e1cb54afe5f0f88b400a16ecae86acf677714a4aa40f2b0508155b550520995c664cc5a1d1266d84d0302047c435bb500663064023047a1c078a0a6eba8e8490a298ee6c106565757ee75de0d904f8d09ae309ee950b7b697a4f7a07670eaf872840e970be7023008cffd44cb6266dd8ab49c53c1bf24f85fcfc8bcff979566e48dddbf44980336b72e987db1ae8623ad82ccbea8a0e1e50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100caa4141adfed50c4cbef373629dcda7609fa1c1ee0c12bd116ba1a768b68d578e69a0efa9521054324c8f4901fce532a023100dba2514c9eb5dc5cce582135032832197cbeed3f5428078264a20ba710720f6146501a06a677eac253aecfd27a6e91660302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310092eb4fcd66ce440878d4bc0c2544f8909e25975b69fd15703f1df32ad5be6db0ce6fbdeca7a1dc47d331c66c545edc7f023100a07539c9e837b40c45576c4cec4e5e9c02570a12212664b9ce8537a38728edaf4f2a6ff1261613067f79c40daaabe6bf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f71aab88c98f24eed2f6e5a1e851f2912e1d41970f76f83a4e7c2969c9bacbbc34e5abc2333d2f4c1b5732ddb6fbbd9c02303c6d33e20d5ab3e5b866467dc8a221333d37e20e24c9839fd496c66451f4593eac2e4985085841ccd5ccb2644b97609a0302047c435bb50066306402300f925425b863cb0253f7d3f75b0e9a9f6e8aed059dbdc952f19a0ab61a5b91a5a6c287ffc54a9ae2d88b6b724cd40ed802302936a93983ef2767a2771399b8148967a9e16ea92a3c977f8914acfd6a32610768765ddfb2afa7059ffd37c59ee5554f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305a7eff312e03536c9cf8e09380ca46075f938ac4dfcfc8d66c1e679083d81999118090c2429f30542b92dac9cb1f5e7b0230700f9b0fa4a05367d9d149a20ee9f58bbe40850371ee28c0c1ce7cb02e246c37fee02b7aa65956ac2a04b4810b7f59f30302047c435bb50068306602310096fc6f67e7badeef377ee4613375e54363e97c11304f9f638650c61e7088433a0edd464ab280ce477c9e9bc86cad443e023100c02099ec84b8ce4fba8c4f37348dcec0ec0ce7ab7942dc290d8c7d8b1216545833d135c9185645bf63596d21e331e57a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a9832394c5fbbed07fe3a239c4305bf2da4b7bdf62f15587bd1ce5f09c829db746bf318bb1895205269c10bb13a778d4023100c2e8fe1917ec6dec2340f358e66ce5b14b1c02576e8fcd124b0bb912e4233ffa4bb81d77728a1e487e23a976063922810302047c435bb50066306402303bb2d4f23d8ad83f6c9f3d5973fda261e517ae30fa92a949249e3878488fc85ed071b337a631b1bdf37a0ab79359263e02306617a5fe4b1f1f6e7366f8c56ff1663a951cdffdc8f8f087e395e719fd0dbf88d19f9748048a3493e5af8c8475703dc50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d2b72691c1f690a10e91e05d19d6fe884abb991f8400e342a5ca67e56eb10c22672cf3269cfbcb7a1b1c34c1ad0a44f2023100d513c49b55a9b9087d20afa705c8a14c108c63fdbbaaa40d9e449fe99dcdfb2134f78e2cbcd374ebec1877dc8164ead50302047c435bb5006630640230387b2f5ab2054315d8259182f41b3059e298837ab58f65e4ed57a561daf2383517574b2903b555e56c7a1b57365c131b02301e882b3977f617a052d598297c900ec5eda70b3a5014de326b595547b49ac217f39aa1d9b15bb813b65d76fb77619ff80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230313f7532b01003bc32877f4f8e720c8a274879475c54bdbe75dbe9f4ec64b2443f1e4869d5e3b4f5b2a419cfd581eac3023100bc3b85ff78945727df9d2b985d30370a7aa9c2bbd087d80cb59f89d72969b528d38a1fc2d5fbdc934b861e620a034fdd0302047c435bb500683066023100a369a2b9a8eb4677d36367ce4c0683a7cedf4403b760dd02fd1926d376f053a1c08a7870edca8f131f0c43c4b15c3894023100b6bbf3545e1a2cc809cfe028edb817d8dd9a5ae4254c61dcd411ea5a951a857b2dd397e9757ee7a193f407d68d0147fb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100954afbb30a84a0d9b7043db2e52de5d6b6de5cb1ea9a46ff7fc24230f4c5c310e81849f18959d54fe14356749748a232023100de0c699887c66e6476bc85bdd44718eaaac9d6fad4576545acd192940ecd51c976b15b5f81feddecfc0b749cd33003ee0302047c435bb50066306402302d2be49c249f8c9b70e8300eb948890784e71f263d069027f1bc0e9f5ce62c9d5268b08b542c1cb2c4ff953cb7d50795023043e6c9107f28ab4c4a4bf285977981123ec07866ca6536d85a9d3860bc7f543a269e0cffc026dddf756a46604d6319810302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100baa00a354a5942495abafba40a1c112518b399c85f96250076e3c786d328a979f30f0818e854e7e4a788a11908fad85d023100ec3b71c335f8245e1eaec196621a2fdd61ffabf8905cd742664d4d14b6d9cfe8851ae1ec097004917c41883367533f630302047c435bb500673065023100951bd12f73995b70161066288f84d301eb8d55096f6b10012ea808060588c2b1a80503479b5db5d21e296a89357f44b20230559ec5de772b436913679879b5442ff4eaf583ffdd8bc456dbd8413522a8e0ca262e97c1dd0f021237ba45d32eeb57ea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307efb21c9208175a78be6a6e354e3835b49e0f9b635b702ce2be6b4e870db454a14159a3b417dbfe7159e7c0ba60e6a26023100873158b951c5938a5f6b5c3b1b4aec7cbea3ad3f0c21553166ef938a44e41340a8ca1c863566bae1e24960f6b58ba3020302047c435bb50067306502305ea273e2537b23f42e27379f5857c99b1d83f76dfacd25a0a3bed1c16093e1668ce02962997168bfbb50677c6cedf8a9023100918c841c8450531786c2c525c57dcafde24d1373d4005369870319b91db7cafb3f02bc0de35c18ee6fedd16b524acd680302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d70826d73e5c6f04ce7f303e48e76fc52c121e191ef53f6d4883e83d5bd95203ff91aa40b428fa190bb1699608b743620231008cfaa37078a7b0f8bf71b11e827c27e0c6641215bdee61532c3b62f7a58e8c3ec211ff9a8e1cb6adb4ffe6cc9dd70e5f0302047c435bb500663064023003421870b5f7d597a3039271620cfbad375a9ace10c1bda1ac4697edc618b3d6a079bb0dd07f1da0939f819a17b2c99702302b4c936443dd9da31fdcb26efef8b8c0e33dc51f3279461c48bb67f0fa00f907b34d88d65cf491cddcd50cc93724ecb70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009177e5f49e9577a7f7346191033bd23a67e24a3335738a1e9afc1c70ced57736a41fd113bf5eeaf2ec19841c1b6cd3e6023100a43ec6a99fd19b08640b00b27e782ded47703b1172e5c148b7fd15cd5e4ad41cc508e8111951812deaefa449593724670302047c435bb50066306402300739619de455885bc821cb8d56157b2b22259e68397e8c6bdc1923b5152525e1bce9ceb768ee20ac46f92eda9571608a02307ab7cb472a783e08d7e8e3e7000c1042b4704e276e319073c5a6a98cbfb85ac8713f684d524d1c823bac4afb13a5ce130302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023017ce64f6a5822d678aceb447b75e8344b1c9062dfc2cfe3c9657f4ba58cdc13572875908226f89353329e05702c9754f023052db57c67ce1b8be85a58fe3d617827e4aef5e5f5fd02b8750e61c1a5ed6ca5397a950452d94e90b0d795f9493776ebb0302047c435bb500673065023021197ed581fb996d7de17a48c5d7871bdac0e1030741247aac5f51538011113a0fc84645b68460d0cf1467f11d730f47023100cc464e685363f6ac1d91e30906149d99643794ddaab0c2549ccd1b678775265def55ec4f2197ce776f90fc1fbb0360e60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dfa929788b05c7e1198a00428ce7bdc165ecceac9e2929a8139c73c45535307a52092160ed25c55b96c904b22c6918a90230796c9586ec0e0286faebba861db19fd5df81ff8a600b089d5c5965fe4b7d324173d7b731a1119adfff962e7432fca4ba0302047c435bb50067306502310096a75cf60f81f649988faa96ed76a013ac724b6e35fda0ab5df3b98e8b2013225bbefdbe57f0aaee0c05b291807671b502306551cc3008024e6821ccd8c1c824f0675212989cf04c4eb9caef7addd62107d53d2e8108b2dee5fded022fb63ac72c8a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100866b3bee930260ff2c2145594eb185de89e79eb3fcaf915c6325f577cf29aa5204bfc3a1c9f7d785b0b0340c2652a330023100fc650330b5f7492c4bb8dcec49358b3174feea624a92410d2ebd0ebec47f0e5b8ab552662696f98c1038d644eda70ae80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008e4f4fd63eaf0d543a0c9dfa05f4b71b1e86dbe3b800ab25aed885b355ddf7b996d2b2ab0f103bd092d17954336443ab023100f0a97b4e4a1ff7ae6a37d5ee8803e7587a68978107e0cc8e7166fa357ebfdda15d0b3b08c24a8d87bcc16ed6797b13510302047c435bb500673065023076ded8200a3eae16d8d6f20802bf41d18e766c9dd108395f1c8cf7412b5fe43a6c750e5518f6a07af6c8cefd96c180b8023100e298b73a88069f952bb24bb564a5cbee206702fb59f38e7443b68c64459071704b302bea3e02870d478fb57ff7fc8f690302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305204995a382fd5fd3dc377614c897fbd848745e9ad9e66cc5b6c741052c02c7060830fe83b6d3b82175fa43a8d60f78a023100a43db255669140463c709e8ca2bea9a38bca7b7e50d6bf507eeb8f083299a2d5753b4a799389a68e3b5c1ad2db957dd70302047c435bb500683066023100bc29af8219aee740950620a4e29b9d63399b50585815de7a4c4cc8e433e63cdc2e746ae4edad1e9aefa62379640df170023100aa9c616cab16fc1c8608c9be860d96a1ccce197c114ea09bd0a7ad705c86f43dbd8b88740db6020e3c2fa5edb112c3bd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b0c41b5da7abdaa926caa4e29c224f9f1ea4a7f2771c883e788507bac82e355411247d833d187ad77c7cf5b2083b221602307d77a2182f9d3bd769cc0516f06b34cfbdc250eb4c8a8aaec99dc227a59ba812edc20da779ceec6658d2c7607ee5eebf0302047c435bb500673065023065d32b15082a9ad0f1068195cda6736c4b17cf5ed18060cfa6c19b5faaf5c3f0b496360740c7cd3d6f00eddd76431f180231008e536da13aa15d3eb55e25cb777ca2e17dacb087e5bcc3362d95dc54cff06a84346261008d3b0bac844376c267badac00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303d85018171bbaa87449ce4a317fca9e8b0adc4474e822bac3583aa9364ee11b648c916257de0a709d378f6462d4d286c023025386b6d42fc5b0843635cde4bede623b69d63cab1c2eb3110c8f9d4509c5c37ce89525f1cecf46f4b01a722fab11e530302047c435bb500673065023100e181898c21f1609d706592ab076000e00a0783d0f3a47c46a90dc78a6d823eddfae5cbbaf5e3b404a9b9b95fb809bc0c023062eac5aae4d82c513efd0634d88af6045c2c9e69f88b7c2cacd58d1fe3cad98f6e32adc82b7dc1ee5b74a8db81e387f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ebf11bc5c99f08c4ca4078029d039592f4f6d9dce5deaed1853b561a853e67279db94034dd2d41daf91507d5bf401583023100c52461cc52fcb3aab7eb3ac0fe2a39d07f0e20d2ee6abb3b16393fa19c9eff7d524f79ac10db87f5096830af486c23ea0302047c435bb5006830660231008db4be1eadbda4fbaab6b7b5e78b7adcc50d7282cfe064494a65b00a663c0ea59127e937223fc7fd83da522af80affef023100e3d81e588da9f395c6c091f4f92c3f99f3a768c27437f8ee82dcf60516122cf13f91a933c872fa7c27c53e02f6f99bda0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230223f1d24699f8bada5796017e8554db0604e04d2b89c0391a8e083f98a416f09316c853637d5d7395029d7ac045ef39d023100a65ee8e95285a16ebe6694f2c8c2f25aaadc24be47a3710029ec99308acfda180964c0154c7c94f9caa2df83480cd2cc0302047c435bb500683066023100c94feec20a1e4c5b70eba2fc46f01906e71128198c27ff67b9751aec228fc5ae198ae5672cdbb8853d1c067b1b5a954a02310082bf3edad1d0ecde5e03023ce5b465ea3babab8b4127499a61214f6cdf1d20cdd9afc49fba8bb701c2c285c461d989440302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bc9ceae691e17208cc728295aaf8507488e45fd87d4b92c008feedae8820b4318a4f5271630b19c38fbb8d80da362545023030f7db9a7d75265328e3d59aceedb3b72785819aecb52a938db465778100581ec9949275aaf20e889dacbfd3f51c05ff0302047c435bb500673065023009c3fc49650f1d35da6c34fd62dc76a758113d28fbea5185488d6c69b082b2d21c8ee6aed925717e6a4cb00beb66c7f3023100bf5eb1d94c9e8e5a8b8c183651b2a772502d6959f65ec46895dc0d5c08c3da8b57a21e06c40e59a16445e597f40bf7ed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f4a116e1a7191f3bbb66c5dc46ab4303349c249e67487980a8665e2a16026b9588d906f39a32b4b6cf1652ebb2d11862023100e1faa38cd3378f395c6d66e97849ee7cd6c326eaac3e184a54166025fffd087d25fe6c5d63f89478c24416d6f0810dea0302047c435bb500683066023100b3fa641455657c70548b32d7819b5e023e5b1750463eb6a828c6281c3629109ec2f0fe772b5e368a0614c039bee9b307023100c00f6ad62cd7af9e626171c8b9ad06ff3266ae11fee329c88e216fab644b6f3bf02e7a26de53f85c7a221e3adab12b140302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305ee6a64fbb360be00e3911572aba21a0eef650da0148e5f5adbe7128040feee87283febbb303c5cd245debe8a1c9be7d023100c4c8d9a33d204f327fe268ed9c06eb31545e11ba7a36698676cc66fa50c45a38162f6073b222df833fd3da0ccb743c0a0302047c435bb500673065023063079567453b983cca378c37bd88c36ee2c1543eb2d7786442017a8affeab6cdafe2bd95852bc0c5540c83ee4fdceef7023100b91bcdc227564f6488ed1b6fa51346accd0a5aba252e7ac47b5224d728cd62e1869df1df5f4eb79ed6305e7b852dea6c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302e70a68bba6f8ea1800373dd8975682d2c84d6646cd90f9ad8e05f0ece534bab673df6b290e0c8c0a0b533f45d3645740231008f728e2c29ad8cc1a37401741de2f4e3d2eb9cf5dbe564abfc1966dbde56f14cfde16124ad21a6b981bbb064a8cef0a10302047c435bb50066306402302d0e9f474282c71ff32e6928413803f9483f79c20d0f1b368240b17dff812da3f87592ec04bd409f414f8ea99f4a034102300d3600bc61f096f63b83ce13d29ef31f48c3260e4ee0c565e878815f089e09305bc3b99e5b591fafb592c08f982d07e40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f94eeb3b34069034fb84f9d2cf56e521d52e7fa6942e1e2ce9dd926cd379cb4aeb31f3dc3e375612cf42aea2ed0ba74602310087014122bec2f9fc091c856dbf949e1e1020e29b4d14b1d1029af46adab3d2d15e8385719947f7c12b8f63715cfb1cc70302047c435bb500683066023100875f1e5846e43e8e18320831602c907f3d2d520eb7659ef10544e11d9f3b0a4644afcf4073832e844b3aadf1e977e47d023100f8cb5c16e305ee3f62766b60a427a7257897f4c6fdd9060933f53ada16cb847639a21109d950c2135e40cc27898e6c650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023076bf8d2fe2b63afe7e7a43d86514c4438a8b2a4fca9a6231ed0d6e7ddcd4c93b02a3309446e1deef826f6358484875c70230646664f4886306e042ac9ac08ac4513601b2f7e369297ee7392782ba562fdb6efe4570ddddee2ec263289c1d1ca8f4f70302047c435bb500673065023100e1d8acb439f259df1871b4cf526a0498eb3ce274e7ce98056943f28d71abe472f068281e4ad89b4d3df187ed9d419e2e02304904a6aad64da5967ef81f2f7e2294b1316e55d86d1789c9041094de6de46e57fcb9510a51f888c0c0c4d7dbbba6a9150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c0ed5e8bf3f9cc80b2f7f374856526a76834551ba869a8db0892b90fe64d7f95e25ce4f58c6e15f86d5e1abdeacbf6e102300702e1c612228d8cac34485505154454002012068a631cb4c872625fa4182ceef55aca4585fae752f36fa6e63446f3ef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f3437492023724c7f5e8ec2aca793a6036291d4ab6cffcb2fad9b8a781641c1ed75771e7330993913633de8ccf4b7140023100e9c222840aaadf8d4c494bec4e4b6ba05ed3ccab00fe8d16bfc5a3a3403c3925f2b68eb34795d845f873a79ed151a3c80302047c435bb5006730650230124022e12951e171a116c98d1e1474b015b695ae6919a32c6e24d21cf35b018f00a15ea075009dbf8e36dbb33610281f023100b93ab94b623579b72f2697d9dc2ba8be4f056d10b68c1e90bce6a979006a873c305d9d470e51021dc0f5a56b292da3250302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303693d057c33417478fdb03b1d4cc329c234b79f2be7f83e0478fd6dc571710b0770bdb0429691566ceceda98123f32490230557998b4a8224a09416faefaef544bd0700cf6d27c96cd7437d4c2179b57c8262815619e54fa6f8194d583ea84f5321c0302047c435bb50068306602310088dbb2616da250dba50df00445914a04bae932fa9a19b509717f017d889d311482611a03d2f5f99c81086620e648b018023100fa3a309f7a5ab1a52e593c5def58884d8eacfadcaf04fbf1aa921c686c59c73da8683ec8e8cc0fd655cb91952273cba50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230570782ce13cd76f9c6167ccf44a4834bd83cf8bd1ef17c0c0358485856d76ca909dd9a743dd097618a599f103e536c24023100970eb378403e4fdce60f98915d0d155f7e8d9fa87669a782b0e0c56f476653746876a01e9c87d5cc3a70a05552bf741b0302047c435bb500683066023100efc9293c456d395d2c4c529ca06a7d05604e786f1e7fd20798ff476b09620819709befe3f3b7083c06dd449a33b6bf87023100c72fc10bf8d3354141a03617b9b46e973dd9a9e449cd2899bf18e723f6c71ad0e433f70087717da6a0cb6928ba88a3180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023074d07874cf3c42719693bbb6f215bb86d3390ef98dfe1388fe5802e83c35559b094dd2df382154370db1f6c2f66559dd023100cc503f8b9b7b146fee8a0842374afd50a4ab0cb038bb510b7bcafa1f0733e07d30607beb21ea59f7ba2bcdc6d2b7d5ca0302047c435bb500673065023100c9ce5122c331d7c5a2304df6ac484cef3f3a73f3e89a89175844e84bf5d5794d23b8e23b1adc5cd902a2255715bb992a023048d0547b59b007e1328ab15ff464ef41e260e9a063603f11004a13924d44ab33196bef5727e1241db1f3c1f4404678e70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306c9903938e9a99cfb091c0baec311b62e1629ae6d1e79321a3f3affaefa573e2586f103bf3162146f8e937577c2ee57a02306d2b20eb5eff434787e8444c6f6ec6f51b1a562353ae56de139b13df88622d911e7464bd161985a7b407bf048db10cb90302047c435bb500673065023100c340c31dc1190b75d9c772bb9917dbd203963cb34a1779fdd34728547fd1442e9b25f20076392f61e15be704fe8c6a9302307ef18b1f50355bb4e35ad67b0c8a7a48c40ad67e7e90d6e2b07ae2262ce119ecdeb788e476504c16c7c13d8608a6c6e70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302413e628a82887abfe08e4a70563b64534c37341980a2896aace3c34f5ea914b31f5db5d59ffdf4ae849d09f46c2e6df02302197f79bbec0e93c07126bad796638465b9f6f0c3cecc3bad5b6c6a927ea22248f355634aa463f69b40baf972b5259c70302047c435bb50067306502300bb015cef73dd5f1a0f7fdd3f20270f4ead70e11386b159dfd51d3452e12ece65c1e667f79f1a2edcf8538fa03958991023100bcdd81c8a2d60da9f1530244fa536a2af9925a36960b82c92db1e7ddd394802f1643c5ecab9572cc8869d7530da46e920302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cf57d9d76a99a6386fd1c50729341275c599e590ad30ff0c678b436bdfd1cf8f237156d4490e2d781b1a4dd2959f2cd402310080e714ec3093c4bd82f8f57606289756c05c9e3da06a32b342805afcc22d38e874306c7cd8310be10f87b3e7187f67a00302047c435bb500673065023100ecb610f02f1e187757da2add80064937872c7d9c438c2b27c6a07f3d7c1408ca24c01d203c22bf77d1afc32fbb82554502301010676fadb9cdd6b222863396749152e18adc9c7781ebfeeae4de102ffd215dd18629626bb80f5b1370b8cd9ae855200302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023000ac80d447d28580e63ec3a145389fada63e9af1a176a09e679bbdb7b0c3158abfe874653de84776754f45817d7852f102307ca5a39e00af28446a1b05db5a9ee1a223fc826243b1f819ba494996579da57749ce22390db7970867f7a127a79b26600302047c435bb500673065023100a52c5f954fd2260909d368bf1a30c69b9edbe74aa9cc66c6e5dfe8fceca58b30d5070bdab30898fbd31c1de67d1422cf023071ca3724e3aefa7287316804d59107c070cee7e8664fbd292405cc7e59d7e44dc8c108af608aa7c986cf3d00c572ac1d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009a59841ccc4ad9e521fb93ece4888e91f74aafd685a5ad808e1d5a419d98eeaffafbc646ef4d74975c149f6c0f4d4c4c023074c85b87c08c96de4ccdcd72469beabca13c20376f0ffae638c210b2af67ad31c66714e67b7f67ada9c33d14a0064ef30302047c435bb500673065023056862f03fe1f4ef7aabe5a32b3d92db5cba2b090263789efa0a13a2bc1a3eee861f841205064e3f24971140c2154bd68023100ca5182da68ec4cbf2f97456f4c39e2c239c78c840a84d33dc36abac2aa91c6c92485dd6fd56d8583502675e39b63fa430302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d2d82a04ad49eed45002d7d3f7a902fe859e43941a66aec3e8bf8152450d5e8ed0ff3053c9bcf313460241e7d91171600231008999027b188a03bbb01cb95a2aa24d94e3db685bca1474d0ca633fb32561baeec960a0a918a5c807964d9f943f31a7ba0302047c435bb500673065023010a67a34c62542f0795ce5696785bb0625e0da7d6869db0d773e2439a405d62a01434969be2cdc835e3a0fd6b5d1185a023100af638169128dcfd19131244aa1c97d355010c5ede9123c3ab4f7d0c9ad43acdf52f33bf557cd44b66774cbeea0af738d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023063ee280a89e9b6423b4603175d6186b8f268caa6641ed822895b96da0108b89dc824bbc6fdac888e2b01b9297628baff02301bccb228cb802de1be4d181be081f140d1c8196ca8ea082a29bb02b8b7b1271dce0aec14f831578aedce49b91e081e150302047c435bb5006730650230185e85f9d7570199b13ec3416201649b816290076694f84fa276e558bc9151abf8947e28339c64d2747b6c41c531bfe7023100fac58feab92a3cbcda079f96988a988cf2c9e82280795e425b045cf5868405e1bc14deaaad386277412751b5320abfde0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300331dc4facae9aabfc510ffbb2a278def003658281f537769e56ac13c54efcfa3352c0dba7103363040865484f643c1b023034771f1c3847778759b476ca04790ef358e6367780d18bceeea8f6f3797f1bb74534be394775c93504f9207530d76ba50302047c435bb500683066023100f726599235e6ba749030481ac39a845c632689ae28bd07578e7f1e38664f089d8c225efed40080f51966096b2b7badc1023100ed4780ba652bf829bc9f4b6597121e651846ab8cae80ba6b8f34c272a86589b477b35132f2459c9fd34ff5c45ebc726f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f0760e24587684cf569ea1f83d04bd6085b458b727a95eaff91090141bf59efbed17e4f46ec3b80a021c3d76d20fb43902310083ed08ea0ffa30841a6ada1e878d5a11e35e5f2226273fc85c9358ecdc734b06246edbdf4d50d6638874ebdd4d0b39cf0302047c435bb50067306502301ed22693d9a98068078a2227f9d0fa4c41999bdf3107b2c9fd4f57d89a074c6b938373a8ec2757781179977ae1c1c510023100d22b81e09d0f4f954a67c8549060a58097a33643f36c1ffea61b4eb00d876d9c227d4713c204fc11c425667e5135ca560302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023025b6f5a35453de379873db47822789577c9644b756293eba42736c51a3882470649bdcfbf75ac5cd6076d62fc7d77f0d023047fa8001afb4e7c1e58df3392040bbee0b50700ffea9e0336bf61b1dcbdc80d8dbdfb504c7de8fe10386857fc922c1380302047c435bb50066306402302e40446a9f0ca1bba984a6ac51593b5f619e2d5f362897ed9b33a011137ddf7f696536947e5f9f3d8f6d3f763a4ef16d02301c4a597b246155bc211c8e80d310f289901545c6ece9f9cebcb36444bb8a20a8cde526ab14b8603ce272e877fa4889020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e3cf32b17e3810955c02e071beaa5b15af655a3b565cc3f6bd649453c1b17341156898c8ba4232c10b001d1bf54cdccd023040717f817307952d954b5939aae5e2ee5767cd4a1c4f1a377a0a886abe06321241d0163fbe8d18f79923490da9c398c80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b1dd4072b52335d5a2c450ae68d0e2d7800b546d2cded499ea3bb08597162e944fe22f3976a77e82ff09e451a72578970230762de8105762e219b7c511a68ca847df624c07307fbe2fa29c1415fce060822ff73dcc20949e57415c20c3a68209227a0302047c435bb50066306402305bf69b21d5575c16e22df3fcee29469bc34db74e834ebbc44c0e5254ee42faaa3077e3763e497610cd961466519d5ced02303665d037f63d7277da8b5479dae327ff4298087c16130ae77778ae6b6297af9be08760079c51fa9897b4d753490ba74e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cd5fd86c708ea7c33112f24b852658b1d93289ac8c3ce6d7f17ee846ed8b68274147e4004e7059b92ba09947425fd372023100e374c1a407c9b297acf7d55408121a4e210fb8a69d3eec35127f1effa6b291293d22046adfd20d88f0edb7e90446b6b40302047c435bb500673065023050b54ec14a71cb52955ee0dffa51450a847028465dd9990d799d95dfd6b35641fead1e8492f4016829394503c8710d7a02310089bf60cbd07f33770a273eff42aee42600cd10a7c1a82c2a6843226ae1695b3e258f246e37746db9bea5228e236c1a3a0302047c435bb500683066023100d9ebb4c2aa83588f3b99818f69c94d854120360d41d535db42ed8bca14b9e46c3ab3f3c7fbd1be6a4e06fad597ae71f50231008b50fcd7e877babe62297d7337b44730d799c38eb7f896a7fd911db5b281d31cec924fa24204a19e87d63caa25446bae0302047c435bb500673065023039915149c3ae761c2bfe11c1c95a2abfa0795af8d40f3ffd283a0dccc1af74b248350b0d59a122e3ba0c35676e03c832023100f60688dd302465b25921b85e14eb7633fec2407f1c93b3cc7e3b4bec190bbb29153a92a0ac1fd2da6bfed6e7087765a30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306a1efafc527ac63145b5f44bd0636ce2c7df180bb335544e09776d78d33070316ad3db88c92105dddb51582dd2940533023100f90700d92c35e761307490767c086bb18634a1e15a88bee4e62b66834ee87b1dad42e93e38fede40058a34ffab2ade2f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302b33d89134b98faf508e27520bd4e7e2dc0efa30c6c3d97ba97f7c0efe62b8cabaeaba0aded073533f789080222b26490230444b42e2256d98a683b1e27846e98b01bc40f81f37164466451a60d606839ad586c7d0545a1c27a3bdef53703eb4c6540302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a6a65ea2606bf5c33dd96bed83479c349a22985a30352f754286a9cdce5af11fdb63547b160526c85f295da3ca8675ab02304aa1854e5e3793fda01e58daf9979a17cf9d150ac533d5ad43854e62dc280e294ded3cdc5aa7ec0481d138c08f0b8a710302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c98540f71fa15bf2ebf6a12a9c3da6147f28b5fe11b22555ec2828129b317e1147c714c765c74fe071f13cbe46e7c5a5023100f6c1cad6a69c5180e10c5aa47c59ffd8e30755c587b40eff7d872ed5b8cd0b9d2423cd0471abe70e9e12b057c71f428e0302047c435bb50066306402307153e69128073ea53629a7a179e02d6a7f5e99ffe4d71237f0d4eb1b8aab9a2b39323db555fcaa716f777aa63222b83b023070951b2085dde5a7c8d09388e1d3f67de61ea4c09ef1165a1428e2043daefe6d562670acd616dd2b9a44954cb8cefa990302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306ccb98eb1a17953961fd711c9ea2f3b8fa1e4e615d31f39752543ff007fa80fa555d8d31a360c2bf6aafd4d437992529023100c133766a130cd5f11bffc31991b0a97cb8f6082017a4fc3813446c38d0dbacfc0ab9e4b5c1718afba494c895b329c7090302047c435bb500673065023047ed288a5108b3a87b43f7eabf109b972c890db0a1c4afd3d1dfe58bf801d9293a6db788daad2178520071361176408f023100f9c1017e7710df1ab766a6ac3a138d5de9bf4403a6a2e0b64e0cfc24c692bb603ebfa57b5be05380d9200701560977630302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100baa1eb91e3a5415836be8323854f58760658c6ddb631a124698f3f25d5f55910b3455ac614bfa1ca818ffbc6f4903ce2023100b65c5a8cff77099248e650ce1570367dca9bb0cf3843cd3f3839aa2cd20b383e3f1d5b33fd56865dd23ca16fe73a71600302047c435bb500673065023100df95ae73dce55a5788f68c623abcfe3351388432e1d907e12f3eb81faee69fe3adc2abfbda0beb664a77a3be8542498f023039d24cbc15fb35fbf1ee546479e7b002c885d69d80af313ae2fed19a30a20cdec5cdb8919804381a7ddcc2ef93e0528d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300384a26bb2264b71b2a89e6cb898e1c2f8bf62abfeb9f77c783f41eb09fd3b03987a6e351c8b97bdee72a0575bf1d32c02310092f32ebe9bcb9319d30d08aa15d3b3aae23a568bdfdb9e395ebaaa7541b69184f4d90d920c1ded53d236e51a1b75e7160302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303e9d589dbdd686bb72ffe1c7659ac4aae0cbf57415a3dacfc0c86119f1330033dc4e4a1eff42650aad217fb9ad70f837023002124b15584a4392d7f409f3009f2ec26a1e421f51e7d6e91983e467d93a57dd3eee6dfed86e997dfd0f0b5c0732c4e70302047c435bb50067306502305e61a5091367ecfed6b0c44ed58125e436194b02737bcdfbe6722639de40310e899d543e13992ad83ea922a1bfa859bb023100b54df37c7a6b38db15e1baf0a30274bf3faa61a54d06b552fdbf545097203fb093b6c803b2c36f260a25d504c3d102210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fd67b67dca216fe6b7f8a91e23298749eb80cfe92f750f80f66042a4efd01dcb988afd1aa5b7bac94061e98a1a91fdd6023100e3730c687868063e834fb02ca6600842bb8a4f221db0cfc11bd468c61d858054aa0739864ea2696f70ff3ed3a7f5acb40302047c435bb50068306602310099ef807db04b290732662d45ef8209fb0e955e5f5e06839cdacd729ed9e74fb2ee7878884fa5ac01f0639a03a27c999e023100c2b97d39da8c9af0e5a57574a761172e2186c54e5e21d5f8686cc933e9edb9cb4630d93c8b45ea82cda5131fedcb7ed80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230320c4907292b0703832755da627592b261cf231d47d5ca047d01294bfcf2224f031a9172ac223616914a26b13da67df9023100ac577aef6b81b26594fe3435cc2f253eb49851b173ca881520e63232176c195225f9197bf835b89807fb49cc5614e3e70302047c435bb500673065023021b5e5f128c9d817903f4938347d15a0523e3934b7f4e39429a7fc759efdfb6ae3f38c2aa35f2053fea9bc2decfa0938023100d4947a8b6d0a440dd2f14e82f87bab7121e4ab6f366725dbc55c7cff0ddc623ba00a1d4434270abcea9ead30dffc73df0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306ade43d602dce5b81a84df546b04a6b071cfd9f26d794fa9364fae3a0ab1de00ff9a4354bb8cde449cf964e743b48271023008ce23458d34bffe1a17fa603b1a4df7429f64c4e0e993a7e9dfd53848df84760560e5ec6b3af53d8a44ea41196d2a9f0302047c435bb50067306502301e8ab7d1c7dba61208272fe81aedccdc26d26b3321f51442e076dc960ccb588b12cbff7d3c054f888e6c9fe647d5ae59023100f974659bd7647db4c28caf30cbea823375bd2b130b3ba43704f86291cbaca0a2a32e6bacb1e1555887dae7eb889d48440302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023002c5a63e66aea50365421e177ec70337d9f9ce2eb30edd8f125592b9f17978f36db57c187bba29ee35e9056f59e9d29f023100b3d60e3c25b1441c701be5ce3a9c63c42bad66d56c3434e498fba6ebfe67ac8d4fe00e20c6f81223f7c66b83f8b36c250302047c435bb5006630640230576c2483c29d9270ae65ce1729a37b116157d944f480b2c42cad01cd54394e886c3bd68010f87f77a4590585cdff405d023058531ed9f30f3fb9ec30ffff5149acde891fdd4f98a5fe94ba0e841e9a79d86d1ef22650840f7f3d76695ca43674d99f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305f5c8f4227e7c873087dfc99548ecb01f139deb6508506ab22b2f8191c4fd350d6d773c7a910244c31203894ed316d960231009bd29053a23a83a1bf3ab57b04b82a2dc9cb7d22d79b2345c4c6d7a5c38192087894656121cfce03007d24a83bb0e40d0302047c435bb5006730650231008cc38c0b756a486594dea3a832f94b028a6cc34ddbc568040a222ad1a4cd8b92b0e87bfa23bbc6b2d97e55c58f944d29023064a29527f159713f0da5c81b2c7aeed9f41260dc6e9e777cf3530a43a433573259887064229a3bae48a6e0052049583f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230516d9bb99517bbced201ef111134a9b030564e84f84d551e6bffa7dab2a8efb74047bae54f93228c718dc9cf18a8fd7602306f6d5bc09b7ff95eae9d42103f69758228181709b99c7de94b0c81d1c37bead09d94d3372c6806ef0f86548f862c9e310302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302d1f22308a4220469ba8604d89acc3957fb3db5e82e5903365604c035329980f89ae0cf7d0f2298dec964f86af20f72d02306cc7adc030829235c7a22235a52b9beb4ded212736b080bf27a4a513a9ee043f9f21a0ea5d0ce0f522cff0af0b0c5dd90302047c435bb500673065023100dad4049ba21335cfec81eb5290494cc0677d8a9f6f8c03a92054ffa0b208bb3f053acaba83813b91adeaa1e0e1f50c6802302e3d1521d34a7153720465eeb3d2a549ad326817467f00a4435091c45d83256ed3039f7cebf79f7609d0c88822fbb1150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e9a5768000bfaa766457204182d0c69bfa3c7132e617910edd6416701de6d33431331e6e3656c92aea05ac54f07780a1023061c854d74b62ea1bdf6a68d2570b5b55ed8642b26de9ef0071a0a84d4c4fbbd23209a50f8970133b221acd5b3e9dcd7e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310089f29252a957f96ceb506e20e934270ffe90201f415e9c2e63e747b2d701919dfcafab8370eb4f230caa4b6819aa09bd0230127e865256a803a5bb0a1b4c8182b74b9a2f40bcc91489f6ca29b725bd64a46e67a4aec401f0fc9143ba8986f359036f0302047c435bb5006830660231008fade4726887cece7e0f2a4a7ab74e8188df6d1a14b0024718552a60de45bf71a54b9fe56d55ebcd8b4de8bbe7473eb2023100ec63a687162d3d210e49f69076d19b351bcb152d72e23256f558c6ae16ee0bbcd56df0e7e90c564ca2e713c61b7213050302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008a8c800de18d3456e7fe9333c55b81fdbcf0f3d0ec0f5546d229b968c6192fa721b4feb5fb7ab6a8e69d783cb32028b7023100ab155ba725c61f3544e25151772f28765498f5e5ff2682d20279e28c8c3e003051e8fed2a8ab4304bd2165fadbdb56240302047c435bb500683066023100dff287a55321801e72373e73ab7aa5d3768c244f15a2286b5f5136f564a388f65da3b2ce1590826ddf35d1e30a9836de023100dfdc2f7f546bfae535e961d15f264211581d137e1cc97035119b588e698403e0f08c73bf802d1cb7001b8e5f1525ae180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305e1851c582feb53a536ba4ec0bf79a8dd466ca1a9ef54c8864dbc9d958b49d1cde1043374bc10034d700f18851aa28880231009366a19c1e00c6993ac9bae51c1bdeed4ddad3bab3721680603271c3adb8c43f9db0f3087d89dc1a355480e3b98e14d60302047c435bb500673065023070d6f5d1d34f2ff5e737b5c3cd3fdcce0b360f7f8ec90b954e002fc846750407b5e6fa887060a32998f9e2abc3ac992502310098cce33d44bf9d23fdb6c1b97d388cd944f71e47799e9eafe8636fc348c29b96ab1760539635bdaf3d4ae685c714e9780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303b4cd7c5346ed150cd9e8e08f0a4a0510f856bfd3a9bfbb1f7ac6ed49140099fd2dd5710a052d46037d9053289003978023100a7b0d1a2a55ac7a24a87afb14b540a465843a13309bba80ee4f68185ff8ba47b7b521798bc37896afe7297ec959a4f150302047c435bb50067306502306e5c753fea89efb858fb4d47b1a01ce30e80c51e7f4d711f7b6936d1f992490c4131f816c1ea1bd386da684413216303023100f4b640305dac5ec2daf12bd38f929a4cf3e6738d3d4fad5db166c1649cb8d26b1262f286c14705104e1386a0f14459520302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b0de2cdc68a3ca4378cbf30055553a061798e04ace6d77f6239dcfc2861622bf4ac48edf0863c24f9dd090112c976cba02300b2a7782f2babd01c2cab5b47c2eb0512ee4e41e9a5018ccde0eadbaad2defe8b56e763c2122c99e85f07bc0de99a0530302047c435bb500663064023008084f208bd83f4dd1c23d3a86b134be279190a841233c8112e7452c66b9228f63f4f02ee74a79bbed5a247fc48b476202304ac941efe83962ee809ae108415b9ee4577cb86d8f7fe6783f682a10ce0c51e5dc1a0e457c0c66359729f1ee1a031be30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ae67c78944e5ca0ca1f78e30d02ae5e04b22c7c66d6433db310f6ce896ea2bd44bdd61d2ae7cb032ef5912fa2939e755023100d33b3f2e562d70d791116e42d0499e76f0fc9bbe77bac8f58810916edd10b2ba9ec13488c0fc09e287265e39fd692e410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009e2b5e4744d35e80ced75c8bedd0af20de5e88791caf8f9a8c6daca0cc409d6d74c109bd5946da51d080f7bfd8e3d50e023100841a65d004435559457a7961010c87667146d98100de4565bd0551cdc01f949abaef81cd3bd26082ae2f16dbe65f33f10302047c435bb50066306402306fbae264eaf1aa7b2faa87f7d9842656efa40aea1f2112a0c652dae7291c8fb1ce144dd43f7ad11ef51c13b0df7e6d2002301a28d3fe513f04ad222bd96e9ec6e87e68dffe95593e81109234de73740bf6d8d134cbdf0081aaaab41fad0bfaaa47780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064022f59dc25d88f32a2bfe4c8223efe77f2176e42b07f9eea7034ba594e2400b2c7a74752d9c4cc8185fdeebd82dea9a8b5023100ed986351b1e26f7bcbf76d39b1b9ec64b6c197299baf2d3c947d540592994cbeb081f73dc869f036ff514f3146f453b60302047c435bb500673065023100e8631402b613726acb17770d1d11af3215e5b8235bb2cb30f20962639d3b9f02b42feb184d850a8e7e788ba77583700402300fe04be57fc94ac91678a890fefed68c9bf7d6c37fb0eba2ba7fd48411f5fc3bb67e9774e062d13166c79faee1ebccf90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023044252b41d32132541e308f10c4be4d197a532a0f04cdc1183da764bd1af0db563757253fa143f5e2238075622c42f2e302305c371b00c5c921fe468260fcba41271cd3d2e44b04e46c52a67f0aa697c9034bf715c7c008a9a8caac5cecc62ddfe64d0302047c435bb50067306502303bb96bcc915b08cefa94a7de249e47b2d1376275174fc6a0500dfb624b17b2db8bee08170466a768851aec52ad9b198a023100a51ded7422f18dfb1949909a8c62e5fa3e372b60547d7a8c3ac8469625064002a9ef4e768237348a00fb5ec41b541a5c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023057962fa21b1652dfd1cc33025f49276a3dbbabd16016d575c813c246e1681de5ccb8becd3224bb8cdac20e8a415f6dca0231008088825067f62e072bf2419a2f9fce4aff4c89dbd74395c882d1bae792b2aca0bf0306a9233b15bcc86ba1ad439d9fc30302047c435bb50066306402307c9b534c742b7872765bd9ea6f8d95c4b3f0b2ca354ed1d61b6fc914a4c6d365c6d421586a530b0fa65ba4c49bee18920230282c4f6bbb656ade457df6096e5dadeb1f3dcddf7e43ec6702be8d761b9720cc592230dc6d9fe2e49d2bbaa1cc90dd380302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ef371a4fc7df4566b55978505d1d9de54abbbdca65e3a63489dd9265968547c8a5cd18a1d3bb352add7445fce33b03a002300b3261821eb240047f8c92400b1359a5fbef581605e27a92b44b7555a08b88416eda9a272bef87a77afd1f13df47fcd90302047c435bb500673065023100a5505aa9c6e811c53dd52338aeb0afb0ffcd38e6681aab2d120b500719fb5ff65ca04ec3207a444c1ce1a5518aadcd9f023015a237bfcc836c79fdc349d418b4def6064741875b03da27c11444163b3877ff5cb3d1902af11f8536ca9111d7cea9b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e027e143d49804604d85ef551c01eb888e95b491717caf56e37948aa7ac90fd84f5fcd9e2fe4730a9cceceb7d9b893d602302da30a90a09a88f9d48e2b6602a02efcdf849930002706c39797acccbb34afa3123164066073525b6953d77c1efcd88f0302047c435bb5006730650231008d9fff7302f43580c4a3ad2d5ed0884f94686ed1af405b224aaafa3d3b3aaf947aefbc994415043e9367f8a69b93a76402307aada5dced5c19aa2951c5490de80293f77bbb9a52126a844822cff14350403614eff79591efdf8c2bb6fb214f055f180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306b511ad2eef7736384b1ed5afcc6d0f695695d2db7556cb8ea1b6ee71b081efbf2f1559b25d5d05e5705763d8547bea502300d180041071aba89315a64970211f4ff3cb665aabefb38b150019661a1c59d9f1c5593142bdd590e525155e31941c9300302047c435bb500673065023100aeb0bfd88656b001124202b1806716e968cd2fdccd95f8de8a1b65c409d588b0485da6305dfbe75822f4031ed66ba68202300e84ce12fb56d59aa72754c851e49ed9368ea32f7f97a1d77d2c98a6c3c59cdda81f69df1ce70c8f78446a0e143b80dd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c69cd2ea0cc08ef9488ca9db809739c0c39fc7a461d97c5f0d86c747b7b8fbfa8e9bc04c3434171f7307a4c930a663f9023100ef999d3acd1e21feaae4301e6dd6d727a3ce81794e32cf5a36fc201d5c0dfd95637402ca25f31bdf315467725eaf8e7e0302047c435bb500663064023064649e728c56fc2dea46355d7c145b8fbecbe0b8ac70c32654798b4e2a110cb4b6eea3d6a4096dab6e16012b055d425102302d2e76558ce65010714f02153f5d31a4847a43eddac32994297ae19fcb1d9846ed4945f10025a44aa518e6d78986500c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230378819b8b866a891a0964e6726f43b98101b46c40c566476a99e9281bad774952f79452b18322f13b9de91408b596cac02305cc82a30743be29bdad2cfd55fccd48e5f8a5e66be8a7fd64c99ded41a7b8a6d2929bdd644739b17a219f9cc9d39612e0302047c435bb50067306502310099effb15e503623e3cef849bedd4586ea82d48a0a740f2f025e577a639c4b1b172632d5d3048d120dbb74d5b20c4abd6023052ace53e879fc2996666a566105bb7f04dfd829e201b3f410b3fea97ea2a517e97220f4f606b93c25aa3588d53e4cdb10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c17c6c4b0b14dcb0e762f07b649f00f3b3c49e850747078e2b4c0152b009f9420d4e77cfb5d200727d4e1b87a1f799210230097bcee1ce10a480a1156e1f5df616638cd44d540062e6722344b63973a1e65d55dd1cf2ccfead8650994265c34c31720302047c435bb5006630640230769c66e2d1326600832eb28ac5e2c361e564fcefa562dab08ed6c6d62051298793fd99c938a68124d6550942c6fe3f5e02305e429d9c1a3b7a171a75cf55723bc3c1c7adacefd0cb013237e65bb8c32d9e35b247e400430129260ea264e2e0ff4c270302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023003e1fcbe76e0116d5b046f8405af6ac669638fda2c37f5920a0517cdad70237a36980fcb9262d3194a5d60832ee2d399023070a0d98e8a729f20c3ebcb83a0f587a7d0b338264f902f82c6401331fa69adf2573fb448dad5ceb8cea05149a4c58de40302047c435bb500673065023025c94834fb5dd947cf2df6725ffb05776d4d13e74be1ccb8f316a1029bc8c77c71b923dffdd0bd12da91c2df12ab3bf8023100ecadb0ddfcdcd3401d628de886f97d450c2d3bced24e8c5da39e4c3a0387528738b619d7fb6966de43d976d4b544cbcc0302047c435bb500683066023100d63f0f7b3c86ab4a5eaffd0ad24c5a10f7a675c1db4f438d820855e9fd601e270432dc3f58f29370fb498d7e9ab6372b023100a5fca4e3af1814b04a5c477bcbdb8b383fa9a467b5434c593c6e0cc87e7e7202dfa6f175285cfeb5c77b371f07abe0fa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b6edd625c5d24d8a67f780e282b51ec2de2d549f635129a390edd0b0a73ab4d64c171f3de5856eb8a894c96cf997b826023100edd3b59456a38ccce63275fed446b5e79850f8cafc1301d196c8085a5423b2915ba8c6632433aca74dd2857a29324a870302047c435bb50068306602310094e7510c43a422f08cf932b10d93ad71fd538074cf77be8771c611c3cbe29885127393291ca7652f81126da3bb75b1cb023100c90c4ade8049491f683ef113486c6ce7c63343e9df475517bd75128f38b4687ec2957eceda96a2c5ad7e4c4ddcd43f970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ec7dfe9044737cf4e6eef6f8396b91bc05e477347ba6271cb3c719a090351103505792f3071ce0758755a50b10c9e91802300efa292c6067c8cfbd8687468c30734486127929384917adc20513059bd9871e5257681b01f60425a94ac67374ec156b0302047c435bb500683066023100b1829dd433731218552c0275643a2bb859f1b8c88af2fc1cd3d90d3268977ebb46b01d2e7f9cfa356c47acfe8e1672250231008bce864513bfbc92df1acfa7b5504b6b66b9869b010f732c0b4f494cc86240d171978b26cd3c1dd1615dc12e4f20a88a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b60bd1fbd146a4b2d6853c19c69b5dc7c7455c254b53e779e50444e0b8f0ffc7edcd9e7a0f9db92e2e7d69fabf5b92b902302eb4c88d43fb70ede798895d0be65d0f089e05c17d7e9bfb081cc3f78dd0ddfce2e9203a7ace06c472d0c4ac73fc43f20302047c435bb5006730650231008f0479d6fc540d4568aa57a2fb04764f2352dc4055b84f4e43460e363bd0292db4fe3b2393077fbab20eb228fe8db5f402301cf6bc37d7dca1482f143fe7db1eaf11b0c36c8631143bdd22b1c61470783c7a1d66da17733eec787c2b78056a3722c20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b22d970017d9b5e7de0158b456b274ff2f442c0710eedd9e16a94d2fa7c660ccd3bd097084c80f39fa2b29615ea702ac023100e6cbceec90664b6bc9e955f1d09ce40d0d873bc6cf9426057b2e4ce927086c7fc8a3eef4ea92484f6dcfe830f47fc4210302047c435bb500673065023100c55538ded7e64319d6dff9060ae21c0c16b264bbe596a3cce07b009facf2f0dc9aa0b7f954258fb489b7b9a3fd8ee61a02302d371b60e0588538b23cf9098a7a137094ec2ab0b3447dbea9234468160fe7b71d48915f13cdd1f51bf3a205480138200302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023060e13ce883ac2886d2fae2e75fc2d174616af28d53e1d7e8d49bf09683f26f2a774d327b30958ceb0d09dbb2ce1f8a39023067cd06e59723eb4a5a1825b3005669a587eda2d21839077358b9d553555082d43fdea05f6d67a5dc7d36beb74fd088280302047c435bb500673065023100b277b20ba831c73964673ffc42857b677e52e7da9e29e22a1693b38ff27523b8827bc284c4d53bf4087880dec617b4ec0230216f474f4992e9ffcede13282fc0564d8112a5d9e0f44ffcd1ad80be6c9460b693d6093962d057a4e1522d5431ef2b510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023074ab76dcfed9f76539f280a6df1deeef7375c3469aaf0dc5c07063968a06fc072b067f6af39fcb4ab823dfaa1cc942b0023100ae83c096f5d12e0caee0aa4b1a769abb3b2e1d2292ce8a03f4e30ce599adbdec41b21d20b34a0775fefeae4afd9d7e110302047c435bb500673065023100b724464e5bd1c65cbcfd75d9baefad301ab2cee36626264ff3b10b497d8af0024afb35c27f7a6c8d395069d45952da4b02302223e0f2640980a3a7184b18b7dfa11db4e41ef1b253743a3c7345c35680aa85b54d56d036df321759dfc2bf6592035f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bb705d66526ed9de2087ce2d51de981c02e9a1be957769cbc88de2dd2addce1d63168b79abafd24a23d70b56bbdcbfef023008379a23f74202dcd9aca147f18b58dbd123747f0551d4678f8a1c081fbe1fa0059f03cc043feee1191728e650c806010302047c435bb500683066023100a2e1ad6f89eaa1c7804f9f26301afd1284b72540bf7867e61c060df0b2bc951e13d7c78d10185ca62d24924862ba7feb02310092045255137339a3085e98f99f74e17eef76c71e9d374f54bb30b9b622f8b511cdf0b87f7c63317d3140af8804293e460302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230516ae6c1321a5e748190c98822b3ee81fb3c77d9c44a3c4030612f1cfc3ff47537b1b774fa0b11fc317e82f1334a50db02300935ee3f5ea73351bca00fb5710eaa9c622266ffe69a8cd824c6025858da0c46b9ea930bab4a6d0bf6b0c6adeb8fdeb70302047c435bb500673065023100ba45ad70a5906b2e7a93ad96409f72c6c26ac368a08a84c0c3defa6463bb7d3b2091b50f7891bcd5344be3ae80d21a8302301b21e386d86907c14e4aca9e94017dc4d85ead3713eabffc2b6f099671486c19cd6bb8f4688fd916065d13c47c4503570302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230013d394de696612346c52a7a181c2d96429f2c740de73753cb91899895fec7b71c68c093e0d94510e68b9740a801b95f02301542f8df6ad60a9b9a1a5fd1129ada9a42dd16fe1f338d1dfc52be45e551099def448295a192783634854f37b42ca2b30302047c435bb500683066023100b27ce5d78c5077f24e4d3c5d252206ad9427df69a99c8bf307ffab92c9b8a2fee955ee2f64e63436b86d063e6a89e8ba023100fd690ae9257bd0c392eac9f226957a3567016393cec63e17b40e174a06a34491abc04642e21bcf0e36b7c688de447d100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023051b85f790c478ac1415fc0779f20ea222cb7b98293ae15d3bc48e37da6d3eb3c555afe6416fdac6c7df43e647268253d023013fecc6bac905d6359dd2c56b5d54c8fadb7d21635532b73327df4687a85ab65708a22effbd4a4a16ba30578b44fe9590302047c435bb50066306402300f6b2ab15231d53c22a237a9f513206c466cb0a9c7095b31474cf5a972c8b6787247fdc07014d9251f2d28b932c701e8023049c2e1bc46ce4600b44b7b80afcc9edee70a3f67775fe050a2b4e6cd0380b4f64e28443d08fcdc8b3848c4ed9bfda6700302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230443699d4f739003daebcf184a50d8839eea2a7b8b9c8cea35afada2dc29bd90d7d57ba638b60ba91dc4c4e8dee8c0b18023100a5fef13368e05abfadc6dfffc1b95142fb01e89db96bfa55e7faaf68cbf0bcd349e46089bdd8a3d719282d9908414a550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307a63de3101e584361475266fafb5cd2dcd860451ede6d13ae38258c9789afd8bdd7e3fe4739a259025decc702a429a4202310080f8af528909ac8e65d8f9ecd1c4f19da41d75e09aa5f7627e6941626ec86b5ca82498c7868cbc7c8514c8a89fb87d1e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302999a2cd4897b2f6f1f52de08d6b784fbdc93c599d9a43ac70483ab3894cbb4e6e7173f7dbfb934fbc823017ae40aae1023100aee1db6dcf9032bdb6f9c3de3207157bbc730cc0005f6d4259bbf662dc5aa4368da64d7cbd8b31bc1e01e957d1a21fe10302047c435bb50067306502300ac89a405adfe92b48769a8c4f5170a029754df9c353942ca5e65b93090297a16ee9ac0a8fd80b82f6f0dab2e45d13af023100b5f699edbf0315b51c6f025b673894773b87b1a5ac1aa84275721812fec97e9c177d00082de02234d03277a7989d6eb10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008654d31e165cb4f43128164fec35bda9b7cfaf92a5f2551a20ba7818b4b2334fa438bca34c29b44610c4b432b0adbc200231008bba755adaa98d3bb01cc055a125a35c81bd1fd1b906c94c765d1dce9e4eeb3cbe5630ff70fc029006fd57eb0e0f96030302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009c5013a11ea3764cb84a2f96a19e147fc2da67007586ff4234d6db8a3723149b173f3e904892fd80abe39bbf38af003d02306ad86f70e0b2814b6427f332df1528f002779f4eddcf6946daf6c65bfb99b985ba602e1433ac1e9f95f458f8e45fd8f90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cd7dea0e5e2d77684ca8cc2c14c9cf15b344f08ae05f1cb2eb69babf50f82226f61958e2fff1fe939c92d0231eb17c2102301d57c5ccb77c31f1051585c1f0e344306642ad8532a7e55ec83bf7a77c0e99f85041ea66d23638100d865dd669cd40290302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023051b1df24a5f4de3e881a6fee101263123cfc1ff15a64ebd08b4d5b5fae803eba2feb39b5f50443503e347e794d8496440230520c9a6ac16333ed8d94b2872c0809a92631b47572a35f897143a88aacc0938655cd98c33401624f0c79b716c1bb3f470302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f9ecb67a38efe2204c7cc821990f5b14b69a483179936fef7f2e89dc6cf29152c9efbdcdd457ca3301ee97d323f6e26e02300ccdf918110a5dcd27ea428f49a160774d416da9ebe42dc8aac2dc42c352608880d68f78743bb9f04450679cf0ff74ae0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ab8fda14200d10e7ac961c1844f28866b30d287875484af63479b5c5d70e3eabd2b4f5cd2bb69313e1a5b8768fa4697c023001975167d36e7061384f9840566df57bbc9ed780c39ef009388b7144e85cb25a3f41cc50eb745f225afde54069bd3e530302047c435bb5006830660231008c9721ed4ac30f362b9b1649d5cb03936eec2e40970ee2bfce4f5dc6ec614b335667b332be766b350bc3545b3af298e9023100f98d808212b03c28139fa1fa7a9eb18f942c5814fc98b4c212f4ff953f2762018d4a06733666e603f2261be8fbee1fb80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d34cb8f5b4fba591664fd7abc24781dd3ae876de2bffe08243d62cbd88284f4cf6472c7c7b1411f1626b831a77144a4a023100a20932352cbd7d7cf48b034d5b3bb9e4175f458010850b07895f291220c75f48995230c12f64ada0ca092373584867ef0302047c435bb500673065023100feb0bdafd9ba9d1a79a7017270bbd3e1e52beddfdf279c6eb5420a8fa0447b9e0d1074b2d61ac4c7ca44ed8c016cb899023007a877124a6ce321271ebbe1fc04fa99edd14bc6cd8c122bb564ae24a352692d2dd738f3c9ada353ed7961707014a9e70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302f70b2689d10e38913fb926ea6e70e2fe50bb88fdb1a4c15759ca79ed45da44cfa7df031926c687c2e7efda4741ef53f0230228b0f2b4fc5cc71fdf6e452203e95798452c980e4981a65566a5f41ecb06546c913c4b86361953888c2457749ef8cd80302047c435bb50066306402307d67aa97e08bcd8dd90b4e2a865676073eb636c97b5fd0abe66648d78b45b7df7a308fe7300e3e1bb0b10f49796fdbc60230154d7aebf0b9769794d6c83c7e6d5c3bf9b64ccf63c81cd0aab58a58506403795d670590305a84f31da8f140a70ad8da0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023020664c1c4e3f9607af7d2a3118541062833bdc1f2c9b50c940ba354de8f3b04492dbaa1d1ed46c32bb3b28b07e451ed602302fab44dab113193d5c93507d0e6ed9bf92761ed1aac4d6f529697fc2961b9abf6030970c5eec0edd810393930fd1bfe30302047c435bb500683066023100f4787e2a47c7fabc23a878e0e8f75f4bb5a4568164f98ff07c17694a040d4b36f4f65feea79e58237be548246da21c0e023100aa28b80b8433240d7421ddea0a9fe6b91558a741fc4de49747e33754a19e6806060ca3dad9791d969347ad7afe233caf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d316292cc7cdf2fd6c158c66726632e34d35f2d1fbaeea79cc0e15a68d6d8040578559e28c76804aa9c3e01d27469adb023059b9b6d9dd1cf6c0d2c12157bb4b9879c9882d9af0b77c4b9cc33a9577ef3818e137dc2995496a160f64381f68af6a4e0302047c435bb500663064023032a00f7ab6f4919e1af20dfa744fd7cd9f1f03cbebc87796888af97f9e5d9219048a7779610e766eaa8421de6954ecfe0230352a6cc0596de2544127e56add023098b3608280d63873ea5c9e4e64166841cfca32fbcf0aec1471cf3ee0a168a372030302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100caca73b427f8c3f1831c402c67731beb9df4568c88a130b29cb6e63d576e471a7f2eefe127735af420db31115ed3b6a9023072abd9e2ab04f2fae66f9bb55395206118486090bbfc12769c0a5e6a3290829b7b39ec4074b5a732ca7b5ef338e825620302047c435bb500683066023100c14d85c2a9539d2898059c6314aefb70608168245cd57e7d13d11dedd80bd0e418284e6b2c45eb9fa1f3f3a34d80342e023100c2120e2f842879961a7c9e8dc5b7044b338fcd940a938dd6f8cec9b0a93bec167e6539f42dd11129d5371c8be6a03e7e0302047c435bb50066306402302e30c52621cd129ff70b95d6dacb6728014c61c7ece919e68a883b3c6978aabcb9d87acead278cb5ceb1ee488b85dc10023022b82407acf11cf095f84eb6a25b1ce083326f196e2056c4e4cd78447e64dc38fb0137b4fa2cd735633a5cc1447065b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023014b65d22d031a9a5c024f8a01474755c456771a47de2d72ecfcddc86d82c279ff50fb982ebd4ed37955d329cc6e6ea6d02302d1a9f8964d141559d7d072d4cf25682f1c3d2d9de13a60c4eff965e6746ca06ffbaa5876cefe0d35ba2fef17a43bb0e0302047c435bb500673065023078b09a388f30e9a18c9d4dd31d717d6257562f722ba70d6db4e9307e917b4685d3dc5585ea0dcbd69aabd0f7746e99c6023100a5069a11ff2a8ba03eeceb629f65639c2dbaec878919a10d3b015b90013d2107cc6ccf90f592d54b1eba96955417b7940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d47ee10031fcd49ad2be48256a414c6966a79b84ef9377ea4a2d89fee7527a190c6cf0755e9dd37264cde02328ab44502303bbc359374940b7747aaad283c66f02648a3dc381acaab14b8b7a276b13786772c9f2f52fa505a209aacd2c091ec851d0302047c435bb500683066023100fe161fddc7f368777b5c144208fd5c6de9281162d9ace1c324827d8adcb46553d1b7b6ca4535ce8712c04b1f87498add023100ac38cfc506abdff71790897df7db0ba2d5a6e33c0342f953eb90195967411c8ab4bc310d1d52cdcf4272a21a2aede5450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023052bd979808d7198dfe7e84fa43745ca5f2852efcb6e79aab65336cce715d3548620b728b3334f47caa20806f0df9cd0502307f6d1908457a7634fdedcfb0b9b01b3502ff5d55eeddee78bc94bb95a6c656a9cb82475c56101bbd9b50f0a98e68e32e0302047c435bb50067306502304573141572759370a4ba47cbd17bb1eb0cd5317a30e76ca0aaf76992e444c97b0b67abf0aae63570e724c75d38530f06023100f82aaa12129d2b2637106980af536f7afa65d7aefd21ce9a5320da8570c950eb094a2a08f1aa88b5c4df82da36911e9c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023035a4030a7d9974d545bcbc106a6185909a22e7fb58a244a8a37fdeb2ca57db17ff3a3dbbf95dba4ed0f887e930305040023100903bbeee7c6ac7969a6877265b22880187621b790fbac69e43cfb541b8d2ab2327c53572278b8778c76746db543f4b550302047c435bb5006830660231008e4afe826167e327b339e05cc955ba7bbc66de86a07a31935935b6277d89d0388e051e75791dbc4add9421a7e4fd03b4023100a41486db7f3f5542e625c945b856175bab024e50e14ae95614aee13a29ee2e5f31bc18cdfb7e363220a738cc930a22090302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aa1da5cc6968b0bbf51325a8399074b89bbcbdc57448d3471d590b2146c1689056e8b51e7046da980f3451e9924d5d2302303ad9933a123ef1772a86aa359657571d14f043f078d761cd3f94edf087ba0e470d1233cac784afe2d7ffb2456621a8240302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bf6d680af939b72ae528a65f46e976fd337efae65075aff91ca7c3897244b3626775c1011a4c54eb0b4769bbbcbe6b49023004200ac2f09f73e7cf329773fad148766215ea3fbe838a40337c2a716e635e0312df0fca980905b6261138937153ce2f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c1b722af93ca2578e4fa8a27b91b052243f33544f409761c01a3fac25563449f89c9ae834b4eedb764c98e2ae18f676f0231009f48016fcadff1633948641262d85a532b8a3c528d48a774bd582bc4ec58fbab8d0cfa6479d4e23a8bbbae1c80a640750302047c435bb50067306502306a0787109d0d0039a86afd40615e4851f4404558ee7b019a1ecc1031ffd690a7aa43772d51d603fbffefc54b066461b0023100d6269cfffc0a0c602ef5d3dc949185ceceba5b2c6b3eacbff28d19ca83cb9de1dc65a98b9386996e7cd38e5f1453f2ec0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300c03df00c7fb6af7d91baf13a7382bc91727ee0ba4436d12562cbeab1fd913f8691c1335658d28c2e9b685fabe27b22202310095c3b972b964f75bbc16e40e60d8458ee404c7e233880d882ae8db62e641e6bc465d8cae07b4863bd6dbd8d8a200a9740302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304c78e68b237db6bdfd452f4100a3b31fb21c9fbb5abb389b334dd266a7c89a7adc9f4d7d390c1bb980611162d9549da30230717b735c06727e0d0ac849550442e8fa8f8eaa1e5d86b9ba56a6a1f187fbb89022c33f4861408aab11687388fd987be30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ac50c2ea10db861ac5d623a14bb4726129f9acbc55ef02f357a390ca5b7ade4dffc120f28840dc7cd4a8845c49cdaaa2023015bd44fbf8b49cf7fea384734dfce8989f709bd34ed8ce28b47b834229b0e218e099c6228e2c4637c0c31a946b0b2e4c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c35c6e53390289a26d8dfcd58ee28daa97464a938ec65d02f30ac0b8d8aa8859c8fc6072388b24d5710d70b9f38e440c0231009eb32b094e44072fc15c9f67ca66b379e497e2b2f76af9430ab3fbbfb76b59f6cafac9dc96487b5c721a97c95aa563f20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230207443e278dea97545a454390678fad814c3f25db720e34272782031aa0405cb72611d385b0ca6358b91c41f9ee1eb7702302cbb8908d1a68791bb534b9a1c46b53e9a057654dd2c60c7cdb7687d7e82d791508e6dcfb4f8725c2e98b6f508a097ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307422cd204b07a61c747a0efd5527c36adee06e47797c48fc1ece348b193cc9e3bb68501fa67105112695be17c2efa761023100bcf3001db5c54f552103228fd837c50d0145fa198e720aff7bfd7e47b5c803baff8c7339339baf260f231a31c5a3cab80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023024cde4e2d4e44a265525a19e28b7160183b28682dd30193587483900c0956ee7745b347bc09df95f63c87e7413265ed802303d139e961fd030aa4220ee5a0aa47f8bb8039446c4468d4014141cdc274ea2a705c7d292370fbb6901d34a758fdfa4230302047c435bb500673065023100d91fa507812a03468f0d4c4d3e9aa5c6ec4353003ac1e018ff88ba9ed9ecc91456e74e5eb84a8c9dbb876eadc4a28eea0230792e6b430b857f46c39c574b772179c05b4eccdacdaecba576c80ad266ff341414e38d77f9dd92c61305b438360dbcd10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c4b8eb068faf5616029d1a2e63a5e2dc60b616a348e3dc31bd936a49cf9778746e86b3961a9cdee3637e4ff84a9912cd023100f3b6ed9eb732cf097b5dbc5f943114db2c58ce630e74a6bab5941d123e9b6759052f757b9986877f65ad8bcc434f18bb0302047c435bb500683066023100f7b4f32119d9966897f6b7843866e192e886f3b51ac1589becfbbc95732b5a78eaa6a557148630868f772202a80b5ab2023100a2835c5636c42f3bfd21f1109d9991666d9044c56012eb22f9877889d7cf04b745ed720ce00e4f97ab411dbb9553c8ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a86232bb6d9fa259e39e724ff1d825b10b85faa06e2c8881b57088f401462bd9a7413cdbac8bb7ae55711118b99806e802307e671a3c1b204e0d1296cfe04acc676b28e1fa37567c2973bf35f5860cd0402a4e1cf902a231a2a2ac796e3542cf4a130302047c435bb500673065023006c7e9a008b6b36e1b08652cab1f147f4eacb2ff8866f6b393f9605f91d87475753d76e3810d8d545522fc06e89dad93023100c6adedd9722dff5bb8ae6857e34b5f85e15cecacf90c29dfd4495a1e18de5b3ac8758824a3fa5484030d94480d27d0da0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ec39ccd9367820a0250963766d1220825d4107980720c33377c846a4701b598af47139c7a14e33dc376763634deb25bf02300f9844dea0fa65ca9cc8f4270a6589c3b2fae42ce44965acae8aaf82bc8ebca5c5281ed241b4292577eb5bbdf6ed26dc0302047c435bb50066306402300b15c4d48319810aa22a1795c8c6955856ec8d40b04b2883be272f51d05472fb549acc247b7d6f39684fe1e1d5ddf4d602307b37cae9a02a4f18b3f812f9b052202823d379a841977aad47651299b302759aba00de613e14bf3c5dc9f3e8ec04a9790302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230209f30fb09ca8a52d5c5cc93aa13c6db7e6dccead5d343ef465683c74994156854dfafa51747aae5257252b74096c802023100fbfb55baaabb0957e123d6e6247a9921a9eefa54b11d5387f34e277c0dba8d991becaf76d420a1441ed563b27dc53f840302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b7f4c33a0d95729c13fd734b0ac6000a99ede2bb8d5d6a5228c363db763f1738d8e80343c3241caac729f86636e2fcb7023100b085a2a4c32e655b6fef05edde6c3bbf58333735e5c89181b11d4a0c8d7bf26e7a7c9e5ec3fe0fdfd96a66e781bb76070302047c435bb50067306502306ff458427f921f00c94a2bbf668e7ad5d92fed0c32579c705ef900e0167ac04ab6d61dac4471d903c93cd884021e92af023100fdb0b9ba892faed77715d005770beef96cfeb395835e4e45d46063a5085afbb9bbaa6dcb654fb19bfeb84bb530367b1e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304ec8c954260c95f0479f13fcd3bfcc00bd18fb88210523d51388ac3389423819493d76f0b37185c79177aadc371bc986023100b9152974d339ad76f2ea4973159da2f2bc9cecfccc48009eafc3dfa75315b48410666ec10af34acd581c1fbdcb47ad900302047c435bb5006630640230190d7d73d554913725d1f389516e60ab54f4303f1cec00f1ce7a9d86168ebc121f99fdec81c6672e0563e4bb2746ee40023000d0b8a479a7af8cae65fbe9b3136e1d6eb2b36d7672025feb25c2766a4c57ffeb5504e4cb97b8dd844fd676b4b39b7d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023030a6ce6e707c4873329ddbe41b864697b1a7ff40d7255e470299f252c26ba736f70533bbd3b420e209fb44b0515ab71602300fec0ecad52eecf93a0f05cc71a6e66cdd66f8d5195d69093f0a47fa14ac3d01b1dfdfa2e06fe8191770402812efe8ed0302047c435bb50068306602310096816e3f5835c8e770e2306fa98bbf63978eb0adfb8153b9e21e83d9bbb967e91938db63e6df35d0c010e60a399e8b2f023100826e4c20d95ba65446998d036bcdb0cff0cdda251a28238642c200a7d56d10fac988ef2061d0611472f74dc7d7c1bb880302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100da68044365cb7df5f9e37b766b9674db43ec5430dcf47604bef25abb4b59ed184565ec2ec96cda91de4309a347978bf802306fc9be0baed12d94adcaad44d9fe7ba9f14fa2ce12606c3ca675898dd69cef97adc731dfe29aa400f0ee9ce3b411c23c0302047c435bb50068306602310096b2022f6e4abbfef29720ae5edd68d41fcc88e97d0c4532ae50271bdf54e29d9bd37e5ebff04d73c6ff665ec8413730023100d3dd7947fa39ab8efa9ba8e00bb1471a48066de21c639d267f0c7b14706d7a53b60754ebf1bcceda9aaef4a50512a52a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306f7cd1a501773a74d0b153b69f5c3454c3452ab805e9619d8e96161679acda02e70c1dd078728a06e1ff54921c48db52023067c2a2fbce989bdb3bb7b7c2922207106b364640e9afad326e5483ad3096cb2771b2c0cd840bbdd791a934770dc132280302047c435bb50066306402306dee30601768bfe0fa73d5813a4f665cc88f39a05f9b90a9a45062c633b2ed37dbf1b715519fa3f0867b74ca4b1964dc02304296627868a30ce72de5f0502d07f0e1bc0c6e5ce239b4704b91cfc4ba67bb3544d0679e61205f39d84633c770e240d10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c4da9998fd687d7b84830e3c21b1497ec855d4da7dfdb2f3aa1096a4357325b1e3667fb42c8c163e4b6444910070862b023100f61e4dc8cf006bd240d0cd62487e15d847f07248d8a65722985915a908dbd9fc4774b98b03a5aea490b26f05235814df0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306d2e51225e70dd02162432654bb237f59d3222581027a5956c3911d119c34ee99ecfaa2f953aec0712e70021fcccdd49023071764bc6ba179747ff9f4e598cbf360459a4b451cacb476abcbb1f195b01371d845f7cef1e59d36aaff17f21ab91a9070302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305f697708934534e16389839036a6d5c1b44e444ff98a8bba4643d0662b31d447c52e7e460aaa6d6377628709c3155910023073c4050893bcdef27df11e40803727e0662cd1152b83d653b2003f97d5fc910896f712d3f40b9c0b6385ce02a3df37bf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023046f9b55ce30a0925ec4eb727fcf156f6163d39a25419896e403b68f664f22f96d630e21a237a6843ea3871d4a92958120231009e673de8841a96f8bf06fc6551e57cfd34533c4ddb62a9fdc22f6497e3e4a207891d0a06479543f99497cc8c829e4d510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fa76fb7f709daface288fc512a999702fac5891241d5dca3e59acae3d0ea8dd2a309129c296a2742212c2ef56c1bf4240230247f2c041865a4c3482a49c24e4694cf80bb82984fa37daf4bc505a5781d3df2d540fd3c336f810a28a87a5206c583ea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023019f74fc627282e752cc50d8f690d71faa27860ea746d3c6bd39e9d5e0539f13e4a237e8cac4073066b47ab67de0ccf32023100bddcb300bfd64bb21cffd60ea767e07a38cc2fc314899b174d7519c868b8ee56cd25c3840496c98ab19254b7267d94430302047c435bb50066306402301c01bbea346a3881828d5c7c7d2394ad6e0a6962b4dbe5f07151cc511051e67fd6fbf4c8426103cc2190ebf100a46b7a02300a6b71a9430039a56805544c1df209f447b7ca2698b69d44389c66e4817e61bb4b6f28c8e088abf830c791d3e99ecff90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023061e69ba268e519229f565dd4ba5188ef2d540ba7428ae18130536753a2d35a76198a45ec530b456d8480ec239a5568d402304c11e84569ed85355b3630c5b6b8686be06ee0afb09a5d9bc30a51b761fa183190adbdc9d9211f8f42aba3640dff7f130302047c435bb500673065023100a78868f3b21f26402872516fabd10c65ee6ae8564c3651581ce9d8325f9de6617ccc10bd5f279e2efaff6bd2c0754510023019f25203e8dabf9f79457e81fd58dc901e394f984cd432acf40a56b24cab43d919e13507a5f52a81c08cc940f951a34f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023009807c2f5456b58f9a38bad81fb11dce37a90d3685e093d499aa0fac75c44c97b8622ff736152f006a0f8b19602fc0cf023100b31bc714c266897df571ec90a54a40f5caafffc4e2daaab8e2e1ff9f8091ae863a7b7980001bf56a3f4f10a48060f5710302047c435bb500673065023100c2479ed88b5c051c995ae1fc5b4b8161ff81bb476558cb92b86efa3380dae34a2073918799655161b1d59417fede69c50230628b746819117a18738bf57618c603bf598dc662445d893b891addc79bcad8b9b8afafefb04b29d727703299fe6f85df0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100943c15eaf3bd9993ebe2d8c69bf118f2ba739e1b903283e918749cc719df747ed0984610c424b509766d873e7a040ff7023100e84ccfa89e3ce17fd8148d5bdc94a7a6be417aeca0726d17cba36b3592b08f05c4972fb0b26d9968e46c5f8f7a273dbc0302047c435bb50067306502306b8e75476cd0844fa6ed3d17a58f716548a87d9f12a13d2be72d534f3f66b37035dc08ffc775c321a4d874ddeef1a353023100f8e668790b1df5f10848baa4ac2bc549462a4b94694c31b578e89b572a3f99bcdb4f8377c9d069e12fd7c08de9b48cfc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301478bbe4fe7d68b551213e3558e8a25d0b99d1a07afe1ebf9e86c103a9ddbb9d76700218e4429aaa49604cf66952ccf6023100e810c9a8d58b3657fa51b350f7de621b95c3840e9737b824c7808875e90fc81a1352d9d2ce8cdca1adfce4ba7df460b40302047c435bb50067306502305bd8fbee2412fc00fc841ad06be557976064300d58096a582c1f29e9617812b1b805961f469103f9bb5a1f25aca4b4b4023100dd9e12d0897223079ac2f49d765101e0fa5056f132a39b730742a1b7fc387b2a27e35f2c8474028877b7806863bd04220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f2f05d8862eb8da3bac40d6b9c2f1f267b5c32a52e0bcca7813573e21a98af752d3e776ee70b0b7722f0a05869925e9c02310095d37f92e5ecec00210a72084e8ebdb2a2e776abe8ac9eb48de6ef2aea89b590f7bb994a6a0c20222408f5d1d7d6f04d0302047c435bb50067306502300821c40797b522c7c98344f5be56b31907644a71c1e41cbc5cc5cea6a661cf009cc3a2e7ffd6f50b2ab5d824755ffeff0231009fc31a8b119b305b4e319f5c594f7f3080c13bcac20c787e075e043e4afcd29bfa007a07f07c84ec597148872a6453aa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c4d20c1d7483f90460ce1ad1d9826dc3b4e57c9c52a33fea831d9bda041d143fdacde0be9ef0e9d83cb5344e4f0f2b39023100837e494d4d2c69a47ad565884222a0d7dadfd87b0c5db3cce3fc9de0e78f2e9af95b6ed078ab5cb5829999b4b7f2e5540302047c435bb500683066023100f0f348119b1b3c6dddf17c630163829e5d0a067aecdd20cb41d0ba9b39ed328844a514410a9ffcf095f733de295e7fff023100c364f91d3d7145f3f84fb51a81e3d216572904f15db0b04261eae31037fce74f8b4205b3e3de8699072ae829d933fd550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ae103899219d322422bfd11c7ea6cd3f0217cd08a9895ae1046995970e944b4981f07f10c61cb63540f4d504b4337bf702304ef59f8b2c780f65ae40f88d25ed99399424a9c38836eaead0695812320a6a4c9569e654236e1349a678485e2e9616960302047c435bb500673065023100d27205b82398648ebb289b3ac2a790c911aa800474ef71449e08f60ffad4927217927afa19c3306c7f63c762866ad5c50230247de74e72fa101d25ae93984b186971161bfb8ab32ceba968930d650d1e2cbef31f3a745d8d77f576ffe59ed6947dd50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009dee0d5d031efb9e4843ee20ec3ca1ce0b1f1e1ba79ae4e6405e33f6c8b01e0d41cab85da0574a3b42febede7f9a140d02310082f2c28775ee90409ad2d68f11cface20c4aea79483ec48bff50f35e3e5b64c34a1a2d18b86a343ca1d2e32923bf2f4a0302047c435bb500663064023041c0300cda0f256972f5586bcfb618603488b6e7424ba14896d30d3bfe1f90804d4071311186166680fa4e7e46de82cd02302cd379b7892394837ed57b5026488adced3b448f8f04e5ef0ddd3e7a7bd141f605451dad36eb91880d159aff9a3bbefc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304d49a9d0735c4dc94e740f881a575a0b78854d95cad0db7b9d2efb6f5bd166de1093189a6721ea31e29b935bdbb333e4023100af93c37ffbaaf43ed146b7854fb03ca8d648688a54699a43eed9c24e555632352825ce42b855d55fab61187818d6c2e70302047c435bb50068306602310084de0bf0b8151c5f5d8333f16d625126091643533e354c063794205a9cf2ffdbf7f4a3dd4fa96576d75b2a1f30f478d8023100e888e034c370f8db01944ecf91bfc41c04b27288ae95bae29901f5ab70af8468e5ce3abf5adf48e6c42405f07555912b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c1fb39fe639247b2479a6f858760a7b0cf860ad636f1712e7aa5197623c6a1dbf43c34e0a510a81e54f1df4fea0361d302301fd109ddcae4d72a214eabd209083c806a38cc2b6e03ea6b6f7b112c1e93527bb039c920ca0875e6bb4b1572107d32480302047c435bb50067306502302375ea885bb8f2029ccd2e57d138c5faa910cbb30792a131e4c59fcadc6e0393635274b01666aa40a92c2256fe86c3b90231008a81fbfddc9723a0d578972fa580e56d308e8cdb741966216a94ac5d4316e6ae73d923546801231fb621519095af21e70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f7237e4954a203bdad9385218a8479b46519d786a52e5887ee8b3fa6fd407a580c60254e04e195489f906a52f23111a1023023c83583df70f3d87e61167051fec29dccfd36565f01bf5c41b4f5258c19b032e24e2a3d2bb996ea36c9b960842a90e20302047c435bb500673065023008f53f997ab0e4858d126e52f4a8e9a2b9a49de727441f75109d16eecda7d40f2db7e61cad1e1c4313ffa947f2593d90023100bf9ab7d98c18927db9295b41efacdb69ec8dbb2833ae87a63d3552c764cc969405b5a304458e505b10c62264acd8d5090302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d58a3f8bdb8ee863891a4badb2bcfca11f95d1b277ba63cdd9a4b327430317e7e5a9b3c60cd4f6d15567b6f70f98e8310230116acf9e7f94251646d0a13f626ad01af5fcf0d5866b30aed80a21e0ade1bd7a00486e832c6a6f1aedb1be5345a81cfd0302047c435bb500673065023100f4e4ed6f62dd763ae0065add87077f2b43bb2e5f97004daa956b95022e49dfe4ef113374eb6d37d4d2dafee8e5a1553102303e774fc644abd61da6ddff6a27091023e52b6410aec602fa7e2ff8a0081f490ad00d96d5d94798880ab1c56edaf67fca0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301f27ff1cd12e56f38b4286d949c66f1cb24fd9f29589d6809ca6157b82a1ebee3f3d5ca63861754a2b6589bcd5a044650231008452bf8cdea18d287dcea24a3cf5d3dc1da6b323011054b075af1be2fd549ec7892274198761fe09c7774b17e25a3c780302047c435bb50066306402307d66bf0cecb1733c0f67582f3c12457d16d274546a312b7c918a6e38c3696cee267acd7993b887cd9b05885171da8c0f0230009ec1abe4f2f8b9db166419c6fe4a70db7a866fd6c73b7c8451a3c5c0fd824770e9dec6758c0d7c047a4191f66e43ea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f1f634a4cc05da6f4f913f2b080885981f5a1a9aa120b8bd58acb315e6959b1690e3bafc378a639145f5391c7e1f7156023100cf848a7815096657bb821cd497fd73842ce90b233dcda07e4ad93b6535b819b160d8c75e3af1bd38565c26411920b9510302047c435bb50067306502302edfdf9c97a0e30c538a40e1bc33bb91db4a5ed2bdb6a12aff33dfc631a5f4a7560bac35dd3ac576c9c1317cd4c5c038023100de220661657834a28208723ea38b69f3bb7ba37aaf404c2c7f3ad5922ed93995730d5b7d62fc9755e2f2074ecf5e8ecf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306213beb0cb53ad1a004cd94eca5ed18a15e3697ffd5ff3b01aa457a09089061d57f842808bf1b30a53d6ea4858d342aa023100dc2b29138bd64be6c5eaec692d4612857b7d4f6b507b735f80a0777ed1764438e67b6c7c66577aff5cb85fc53ea1e3640302047c435bb50067306502304009d25b1439b844c814136f82f49f4f460d62aee64021a477e552ac88218f112764ca2cc7c3a5776e229fb90bd17b77023100a851d074bbf02cebdc1fd98ee4cb6de058fe942bd4fd7b9071c6200326c133540e973eb2a38a4546ffc8f7b6f4f383ff0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d57201176483bc5511b4988c9885cda737389cd611fef4822e3c7f4d2bbbf37c5d3c381aa8c15e51bb0815c63b466a94023100eaaf9e697148862c44a9e50275fab4091c6150f4259565f2d7e7adae3dfe4a58384b201de06fdd9168e0307bf12fce240302047c435bb50066306402301176000e67e11b48585832eda32a646cacd1abbbcd8a43140079986fdee050b0024b3cc77d0ddea6c223bfa221e88c2c02301c3f055f8ec0c6af561f54e27fec6301653d3bcd595c813bf00ecad43b75ce26af7e3fc5702aa26597e4c68013bf9d520302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301f04e52719bdee8f771711968387d9bc5ff89e71992d982ce343c2b87d607d0d2d8361ada0139201665c6e259c89a0b302310086a0ecf0003963bc8a6ad8f527e4c9d328e6b69248c4ec152962cf080a40e8ceb1db93bd0e721f9c5171502b30700cd00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100868d7d66b2bb35ca6ce76f09aafaf9ed04aef02e6d8fd7c51e61657bde9950ecfe369ff6ef349ec058e5b4018b6b6579023100f6b1864abb465a104f063be1b8afdfa1aa6d9a4af0437f9597f9158de1e4b4b16341fee51dab827fbb56008265bab0590302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023033f5bf1d128018703fc2b99991ab086864f0ce8e0038423aa2c52f50043adb9f77d77c6392ff79b74244599abbabe0520231008b420734f0c44c73b1d333e963cc131c4ad52e0c7d7dd783752556191838b7b20babe537eb65822ac4945ac133a512e90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100efa9ba113fb11e06b922912d81d693b8def77af4c37171f45037c1bbcc4109ab5883ea6d9c01cadc95866b9322cf3663023006dfa5dfd21d37533c3929786220cf0f196449bc18a5cf17f46515c7e178a92f641b6b0c17ee5115dbbd7805bde421f10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c6386c8ecfd925bb228011a9671e35f8659cae8e388af7c01ed6b74500df219402faa4f2d0480969904f9e8fd1029339023061e8e7ae97b73ebffaec6ce573c0fd7973e24cf288f084883ac83f24173298d0fe4d3432b475f5859d88230ed903d5400302047c435bb500683066023100977d7551e0a958ef454c9a01028273f03b88d058802447bb8ea47e6cd31500554760ac8089586dce37dc66c2ec6de446023100efbea05503280a6c47122cf37287bc7d24d6cc74a317d5b2162c2dba9dc37296abbd8be04a3318603cd5b096c1366daf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009be7bf36d8640773e78def1c636bf588e84f90b87f09a809c6798781a50c9e4d5d8513b5375e6fd5d0af9334464d090c023100bd6e99a0f8135a06b43b47468b43a6d85d1099ce519defa23d0b10377f2a998b458ba9f1742554c5f9ab8a223345c5850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fe026789dc27f530f8bef41369c83a1e6ee8628abed4e2d7e19d9642063cd6641c466204e48bfc3713b262ef92e1820302301d59873b9384099510224750fe5f3c006a0c954e530cd770bc2463060cfc5cadb314e7f27e5145b349e9adaee4647f8f0302047c435bb50067306502306614c1058d49d36261751f10ea048de525738a50c8fa53e03b3e64b62364f4170e92cf6fd973a8426cdfa8f0530a7c7602310081934123277769268b600c832c3e2f5952205d9317e4658748bca24ffcd51b37f0f1d10d18fe3a34b4c8d1d7df12f85e0302047c435bb500683066023100c36be89c0415f3d998f55dd51cd5522845772910bd43a9b6999530d8d6e56b3990bbbb78770a42e3b16bdcc2ed04e8d8023100ca00ae26cdc6995ff813f97176450789ebf8d91ca78b2bfc62974b794008cf5f3e113bac564e887b4bd673121001adca0302047c435bb500673065023079af89e329df917335242f5bf0501e19bee376d632672642bb930d13fce06d61694ea96b1f441483b976425035535f97023100f35c7b44f45fc9f8afddb25df009d7a5da2f9e9f02439dc33df140db8bbf205e39d4ff52827f2723e101d54853d1c22b0302047c435bb500673065023100ad186af3cc685879bc9fda4263574dea13e66c492d45609e8a8d2111c5b77dd4f70cf68bd86c93da91afed40450a249b02303aeaeb02e76f142794518d2653901e94126c75f7bc842a113f19b56d3597201eb7f30fbec7d1bf50661b6ef57aaf7a3b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310081a0d272422d43f7876bf2ef74b88c7597f5d850732cd2dd0de4e6778910d392765424aa97dd2f0a4d66f547b366464c023100adbdfdf8e44b62f5f9c2a00bfd1e4f49e47c3320047e47a89e9eb1ed74672702b08805d67d0d39d8498ff907c3ed3efa0302047c435bb50067306502301d2f7a7774a1269a077c85ed8f3e20c1d673e43b605075032e7416d032a3402979d12da77cd826c8ab452f4c617b1618023100808f31679071c6f01366af8b8e2830c9736c6ab462ba684d55408401c646229264b30eb09952fc8170d340458e5e8eeb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f9557d6f81cbdc825fa9674c06e136b20d8d75882b0f3328a14cc4667a65f4732f6681369413270f0474edde5a246373023100f5b3313d48281992837f1115c4fdc3c5e85a6b4a1a46413c809e5d1b39a8e6dc12668da329f84e74bcd997f7412b304d0302047c435bb500673065023100e2958eb0de680a76920c59b7f7141d5c06455b37b98002b8c957fc2a2b4f8ef8f9abb5bb9522af8ab0d6a3b6edd3a4a0023079ae8af5c7e57b86a0f76015b699c0502228b544bb93fb1735671ce65159c45eefa8fc3a539fec894a75d6d141a7775f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fc9ce721f5d40e06c17eb650f8e4449eb18dd8dec22faf23615c281305600cbeef00ce2f93514df3eea4ed6b05bbe997023100c6f16bd9f31f9d62d4a976fdbc2e2474a6bdf0bcc7a446f5950dcbaeb10a0dcdf55588028601eedc6bd9d9bbc86103180302047c435bb500673065023006b0d533280255894de7e5ee05dad601192e8cd28bd8d95cdfb3d64187609a39ebfcbf1f017aef8ba6df103fc5a328f5023100b03273b793723bec33519f7adcf142d96e3faa934d49f9ff5832dcbc60e38307f4bf32647df39a6cc7cb4fb41f3bcfce0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f6ab41eb649adfe13c959d70669d50b1af74e113c779a4a8a15503517af3881d0f2188cacb8f9267b15af2b7b5e9a9a6023100e73a40b0439fcfd5249d5a2899576b0f5051151112315a41ae1487bbf0393b1dfb2df2611ef672a8619d1232952d69090302047c435bb50066306402304bab14ccab24631169de7c44b410dcee07da79236f2f73ad5dfd1fa0c5d75bc1c0f1d78ea287665e12305194db283e3302305331c82e22d6a657c6cc9b8ddfb744c34e6a85929dfbe4e38ac4341f2cc765489311224e7dba2f2c214e27667a0444f80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c6e498584d8c80f5795ba9d8dbe8d35b81563ab8c7734c58fb474a1a757faa39f909a10679f5822d3977064f0d7cbf23023033d8191d99308b46e3cabf3c4ca129ae84f9b6b6ccc5f17f9b2ba39310da4669c770a75ae0609961ecfce58b08adb33b0302047c435bb5006630640230410a4acf2a2a23ba8dfd6aee3b63cc599d2c3abfbb7b4273eab98e3a79e291fb3d6c9b3360df5ec11aef307185bef16d023061b80513307a326bddbf485106502eb11d5ae17f0233245d1ec92194e0dba88794e14205f88c234d5390ec4a27afbfa10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305f9649eb8015871f362b259bebe4603005a39c22173fe6610de9743c83cdbbf05acc3ce3a33a193d9ebb4db81c46b7d602310093a4cd31f0cd10762786dcb86b48769eeb5d8d20e083e860b496e7e8b697de9680533941ae319915600f810ae7686a490302047c435bb500673065023013cc1c1ca0222785ccca884fb3ede8ddeec13a17119133453b9fa951e08900193886f77d2fc064a304c9a0dbb9fa116e023100a7751438a8a2f5584445256f3773226f59e60fd313b84e1459cb7effb0af1cf672e20f44509d188d2d6a3d28fd8dc81e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100da676417561db66c41940e7172d212299912818cc6d8f445ac727ef8bb434c7f173fc480f299d4ce015bbe7c9f58d62002301bff86454ad74c9b4caa6e8f269372cb5934263c40f720e96094de4f0c09a52e72e612f4414289466e64000a5db671ee0302047c435bb500683066023100d7b2651033813d73d755cf3f89bf1848845ef5deb0ec4f1ca1d5449d7905436441f828aab41b52507d02b42615403573023100bf0a79fb604c22820974bb704a0b4a327b8b676909bffed01600cd79ba092a1e2c0ccaf99c72d3ae350c2947bdbb162e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ea8b532ec88dfa18a9c79991a9f3b0be8cf8aebc3825355677e72250c6cbf0a1bc6935850a638a71acdb0ff11e8ad1ab0230773ee98733a85a295e3e5b46c9d534f3ee15b09973fc8c72181aa8766ac4baa40826bb794efba56a8960b84424947a8a0302047c435bb50066306402300e7ee00adc7082afbfdf51e15b22f8b15e1a7690a3efaad4781fbf172689e9f70997df9133e3c9524c5b07f0b8ca7c0d023049f86c36edd977712b67a1eaeb7e5db615f9384c459f31c35c2f37bfc86c15f199904a1b0ea6f7ada79572d06edf34820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d4eaeb0115105a13f27b2c581ba4d55df5239ea2f9b4dc599f6b95c8e66aaaaf8ee6c3564dbc9f5baee8446d0220643502304252bb626142a8536dc58570419b857de56e0b0bbd5ac05232959e77c085b05286cb26218a0103d40968202cd1b4c69a0302047c435bb500683066023100cfe5cc4c2d54a0f49796324db05887f83d300c646721f2daf2498f2d61c45d5c28777c02dca312a2b6b9d4f25fc1f9ba023100c21ca48bb321951581ffbb3baf5c4d31ebf865c56261aa9d28d6fd9f65dab887872fe0b2fb5af01d1c7d3af5e6287c7e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306e4460466865923fa9e9d9790324192a5af16ef3d14281109dfccccb052ced8d59052c18b194dc3420cc934edd82ddc7023100808113c701cda3ecb042624ce4a672c6d22abb85d188ff5fd2f561ff7640c1c6e1d98e19b0e0ac4021067fac03f2535c0302047c435bb50066306402304bd01f957b259f41f367aa0b156b52d43ec2ea82241549ea30aae74a40db385e0991b2b8bacd9a24313f04806f3baf3b023038374fc2e6cb63270a278e13332e8dcdfd78567a31c005a170a9dc496394cb3b6059cb8c3009e24eb69df723618b2f9d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100905b75b0209164c8cdc29d07727235de4add2a9f208da2b45a086131631ca69b1b27beb6bda9426229c0410389e60ec8023100e976f8c0006825b7ff1b97f0256230424a82fb6f988671b3d822250f2a6626f333f78e5476a807bb3d529173d1ee8d050302047c435bb500673065023100815ff9dfebecd6d16311955da41d73eeffda5840656f08f199af13c08c7252ee1a60be77e16631184645729d2299f286023006c407b0cb4e38eed0751c3087ff8e4ad3de9e74345a69490813db9f550c64dbb81a225d7ac5612bcadcf2ef8e0315790302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f79a59d8028d54092d253fb2b00cf05c43e26e573ed8ab1c6380789d85271606fb2916719e83ebb329c76f149149c75d023051fce41a853caf96d0cf8526d7e019926729f228ccd617d4a51b904adf6cf45f422e64c012c5bf20f7cc4c67aea6d2a00302047c435bb500673065023100f8688aeb0e47434207dc8ac98a1eb43d23de1a56ccd090050b86dc08e211078815d73578cd55500a274e0fd88db65c320230384e61d34bbb2b1ccb354b30583bf478ef53d72a1a0e91371ef81775a1b0c403ec831d34452c5d4bcc5030d99045e7760302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230729fb437ec7a42604c38fded68102d917fffe9b7115eca88cf4147bec4d60d5aec595adc852f868798761aaff54fba0502303a90dcb15b3a91e2aede03bea57b7817a525a407b9fa41a812c080a8e9f7ed943be5e185a676c0fffbb5c0fa65e6ae6a0302047c435bb50067306502306e153c119ba357153e2be525c36ed850b8aa1b69f217526df18e3325a1c0834a08214a7927cb1d1d8f00f3e144dd86f6023100d7212ef145cbb85d9e7ff6aa16576076717b899522024183c7d33226f48a1fc35c0eebda08abb87f095f41aa0c36fbd30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230422e9306895589fd73ee249b7424fbd3f37c84a572711692be7ddd28206c1ec1cedb64a30d1bfe9c8a85a8ae68b4c97a023100e3cc1a0f0c07499df15755174f9be0c4c0fdf28172ee756d29435f07fa480da6e57bf798e5aec24b95ee17b2ac121da20302047c435bb500673065023100d62886414487c423e87b132adcf495f581907d1aafd081cdb2e9f35ca2cbcda20d0d14c0b959c577f174e58213453182023035384258c60f738da6e6a5bf802290c576367669f6685393065435411f314468b8e8b861ab3da598f31ebfd70e4c498b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230483ddd04853807cd2566029a411087a75dce3d6cf4ea226a1c322e46b1b3f968f133c49342853a4f9838cd83ead465b0023019dd8bc2189754d5d5fb0872898c8fbd86fbf96d5efa17771b7a99369c0cc6863596a75998deb73380edfc2fa4c307450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b592f3803db9c0cdc66e9e3fdb3c4e328b108e69105e8f9d1f7892b4f54df99c8dd96f2545aa0790929bd5fcdfc49a2d02302a2425ff152f25cb90a027414c0c84decd4254e05cbf63c88a921c542c98fe1e97bba6ee6dc43cd6e5e296549f0cb9510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304355669c106e67d47385181d72946cca5003720ba6598a29729a71a75be8d0d132ad4feb9c4ce6136b30c8006c43cdff023100b89eb8146b80343b56ed88307164b61c02505314d3828a9a9709c0b1a73190535260fd9009e156c7ae600a4514a49d2c0302047c435bb500673065023100c3fd166d55ab07d3bf84c4ac5bb612b715f8cbfd4e0cc75c3165f0a3381a0e9ba06c2d2201fde606e3b543690afbfce402305a97bfd80baf40c76edd957042fcae41832b28a0102435de1849da816d5db223297659aee8a6abf463f181f47ffef7c60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008ac18c18d70f700ae4a903a4facbb0dbfde47d575f783cb8ec8c66815f8dc8194a99168aa54e2bcfea7560368c46071b02310089663307c733b660666b096835794e0a15e6ea46abe3f056e4af57187d411dfda54180bd4d46abf1ad8b455355810e2e0302047c435bb500683066023100f1f3777daf944de133fae6cfa2d52d856cd6aec068d1bbd3c1cfaa8bf2c89ebe61f2098e92534cf7d6860b71d4c39b7f023100a0d2d787140d49edea7e528ca4ef4002457df3a0f2b520d05a7e539f33e6558c01b63cdfa045aa23ac6b9fd2514111530302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023043371bfeaf3f66c785d2d09c6210c4d7eb5c1d45aab194e7f84238c8766871edea9d39208ecfdea805b5ffe6920679510230479b7fcab120d1314d7936f43dd55813edc057d40ffd6e6a061e63933f2af87a76fca8f81beecb483365b7585259d1d30302047c435bb500683066023100aa00beecf36d54aa736931c46446312be2b31bb655713c534f34aa6fe0f26a0087b7f107616ae9c2fce4d45d83e3a1f2023100961e4240fe0fa181e2e69aeb81fbc209fea3bb0728136c21b146e0d028a87d5f6ffd8b3bd59938df10c20c66b97bdb1d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023041f31c49a597f06af26c6c24cb5e46ce862bdae44543b030d0625fbc155af57b2b74005d1baa126bbc19508bea0832fc023100c877a1fd8626504e5c15d2665a32eb5def4a117efce2433134a2cd13abd9d5bb5a86cc00ff39193a0ed11b8d14f7c2fe0302047c435bb500663064023045e185a6d004199f60f673221408e1fb56bcb352bf987d4c91b8dd7c396c1ead2f737e4b314576f543e5bb6bfb6929c70230167503fb8df645692a87a9825dbe64fa1f8aa5ba4bc325302c639ca2961e5978f5f431870b41382b89fb524edc1625a00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023074519a6e0b5b38ca461f4524a32ba3bc1d3e1166302ba6769a7db2ca512c92222c6946ed718e39888b4d80bfe2704372023060e69c1abc76fe275ba690352898b02228fd346fc8922445401d0a4240416bd8a6e82d96452a015aaa426a77c3bf6fe60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100eb27ca787508fc4d9b336f9f99d4ef4384601f4903b5a99298d1d09d9f5930a25e4ab5d47ab6de08c04dfd6ca5c4cbbd023027a3fe25e49e8b03c8e687670f55e1eb109906167d8c7c679883d0325ae977116495ba6e96cb0f35b37585aefb1260bd0302047c435bb500673065023071a0f7b70e491e071d9f5dd5773a7f494880fec8f513dfcf0e0f445e6ac404625cb3e4f4c75c86e68e95ad9734f748de0231008d6bb7b952c9d9ec37946681cfb924957324a45ab598534d1836f6907e7a7f00e572378aae091138886bb31e86b1f0460302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302ef2b744430a0e637b82e59d4190ae942c7a426291358e9ee04b31be0384c9e4398e30552b845749e38b002085afdf8d02310081796ea937a0d9eb396f943bd0d8dc6aee41b7ba069919324636cbc11ad1b64756b9bdceae17a61acd7276cfd33f5f4b0302047c435bb500663064023063c8e41627d5bbc13a6c6f46c9d8d61f036c58dfc2ea9e7110cf444a574f4a2726f3a1f3d7eca6e0ac52f817f38c775002307df0ffb06369342982be5dbb46090ede9963805a91d6b9096bbe40adee472b4f0610b7a9da4c7f95b5d740d609412f130302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b00417e780b87853d24195fafe86bf84c3ced7e4bc6184608f0e69f174324559fd3379d012da0c1debf2354b4ecfd0f90231008c24fccb18d99a233658fcfd91fd590b729195fdc21784014d0282cbdd81275502151c16ccb72b76d92d2b0f1efa76940302047c435bb50066306402303864612e049c5533e6e9aafb62bc3c3f0c3a5cbbd2bbb2d43a17775018908d1ae60a460d036abb6dd46a9ce83edc18d7023046587d143b405682eb8bfe2edb3c7dc064f5a0ca84eb44d4f83482dafe3f2b620b9be181b6c734f2f215c94bdd2241910302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bb4c4f4e4ed87ad310685bfae0d31e101136415eff5f9a6fc8265b92ad548b5077501978faf37a1c0545a817819c5389023100f742ba888ab3feef879798ae628108c8793737d923227f14648694e7da2e8e198a3aa5b92867fda3b279edcb1788d1200302047c435bb50066306402300c233df259b6c22c76d85d42180759e1ca2577f12c2550113bc0df4d6752a8b12f31952cb8aa247eb0acea44ddb64bc002301fbcd9718ee12a5b52954e52da64a54ff3ce7e5763d809df9b61d32d9b0abcca762ea30dca8ad6cadc66b5bad622570d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a131df69b52b89e9384d6d01e0d53e589121d2e48f174a3d4bf0d81a02bf5420128f0f6d5f53d0ed8a74a421d7528873023100fa2f5f93a597ed5c067da83f52d682b768e40203102cf67748f0e0f7197e1adc2f8af93f9d25355826485beb397421390302047c435bb50067306502304a9edfe4fd477c0070a291d00a1ace9296b4abf2edc91580eca35b5d0b3088ff03ce770c95b7ae02900889e4ba16d7bc023100e036c4f97bdc84754ae47b10f2acb56d538fe21125e18162124cb8adc677e45f87740c926190200d83530bdf50f022730302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305ac9c7e6f6c89a4744cb01759b3fd2af2a237460c0222a7a7611b2f88c822d7574b95ffab821ad175a84e2dadda9ba55023100d791698ee256d10442d7a24cce9aa656360a6b04da186545dcb40c3be45ef9f091d537ce4befe83db54953953516b62b0302047c435bb500683066023100dffdd7d986d185fae45fdc0ff75223255586b41111c686fd1399165b6228b8a796de69adc3122c987a50b0292ad3251b023100cea52715d2f83d42a9931dae17bbc0e34c20b6d92ffa50d085831e81b51241f3e0112b15367f32e032af44e0da34c8aa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b7e41a56846567414eaf26e3112e25aff44944d746b485d17e650b07e5a1d7a9932b521ee5c53e43f461f707a79889e7023100890de7220c93087a4bf5d9fa382ec07f7c02a9ea9a9ed56717b0ed0dfdce52ae25b7e6e85a4a0f3c0a704a99d634b59f0302047c435bb500673065023100aa029b4e563802eb33b049b0c97444a412d5f03379b722f578e89a6a006062a82f7f5ccefacea85247d7db075838606f02302070145ee80d0596c84a660fc033dd060678dfed207c9814cdff239fec040f3377db1707986602662b4ea7751382428f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a14cf8f3765f84267501aa6140cd48e43ea62fd4cd749a3c1c5ea0a60d483d35d4b56bd820e91fef3e2438dcae50e1db023035d75d19f0df6d33d3364d9e5b47b692fe0369a440efe74dea76b8831c178c8a53c911b1d789f9603d650ee63f462acc0302047c435bb50066306402300fd63e3b3a2e422a66cb13ab37ea9ed6577ba202bb97b09dac9220c3accf0be5b4845a402dd5c2fceee964f7c555bd9802303f60364fbedce1ac38659410c1284d939ac5a00330785d885c2c06fbd3a5fc0d27f47af63cccb51a771887be15a535900302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301728781df3e65ab91a0eed51198a7b952272ccb85db24203f802c401f195e258d2bc8c3cd0beb1f357fa266291a975680230179b7d00ec9ecd975e71f962194a2bac0e584bf91adee393640837472160d913a49f980b9c79c7206f5ef1790afc31eb0302047c435bb500673065023100dffbe230980cb7023bed1774d06decb647c3a79716121f142b4772649ecc38b914f5f73a804cb8ee0eb9ed981dc4a28102303c7833891363c5c5901db13085a1256abd94528480e9b0f6c55adb02502bd054651e9a3055f72d8d691a413241635b9d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a8ad71713cc8433d5286faa0c7c3c91cf0af192c3ae0a5a0ffb35e6e958dc66024e831de9bd61aab30b5156e2ba92f0402306e7e74073999ee4dc0d568b5e7583dc4089271639faca1e8e072b84ca0e0218907fbbc16f548d13c76921b2eb26cf0730302047c435bb500663064023055a14621be4dc6d4f9912c9db5744c808a4c11306182777a9308457268d7122c0decec44b000a8975f6f75de682fac1202305fca2be90e4a9c08037fde7d85b27941f37b1aa2b64fb6b5bef0a71c4b4680a5dad6648917d6220f3c07c78015e7f5dc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b506f435f1899660de8c4266f8a7ec23bec85768b8deba066e97d870916f80f76771370ae684f46a3899a3c03d4c3b4d023100ab27f11038e2d9ffbb0cc88a5ff6c66da53caab494e559327c283b35b757dbffe922d348dbe029702f680a83eae388d00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d259b1d6bfa16d71be5e8d5746f6c1f87a4a4c14c3a18579b745c1b020c792103954d5d7ac5f40a6eb91bc9ee0231aa02306d540ea59e4bd99aea4754bda96ed6576729f497e215a08cdebeca0e1a6bc76861103f13dae081d506690967932d0bca0302047c435bb500663064023065c4106cc272e15c6f6ab0550180ee833277b9334bcf1344df8de94e8740f4520440705f7fc56ae1b44fdfe55cc2835a023031cef4537e4e6ac9a9b18de4b17d8907c983426a0d2992d925489de36e14764e115056f877650548ebfe60524c3831170302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310097f7e91e28eefc6ee365945c0c150639aebfda5baa33ec534cd2c6d2d68adf508bf15ecd3f353b3092aa264405dcb5050230262bbe63f2b92f62a84745189a92308e0eebb99b8d54048925822982d3ec92c94933e962194b4f8afa995382fdf437220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c4356719a8416e53e1e83e034c3f33840f2c90c97c58d9d537f4a0275fcc12eb8c15c0e113e10fc88ed3e430445d0f7502301767c1c416ecd81ed4ae3149ff7c599fd7b50ac0f69658c7925acf5eb63ce983c0325111c4c4d1684f109f176f061e300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e8e37a06c63f39d5aa3db14356abff75c3f2a6e298b9302fb696b3869b979ac1ca2c7dd90eba9c290faf03439c72dd9f02301db97800e199b75f3f413078a0603b198c4c80a690caf4307728db3402b2c5ca59cc9b310b9ef9aa2dc95215c68401d20302047c435bb5006630640230145e9016deb0502728632f45370eca49a833d1ede00d0df31b91468b9d9c668c7d591814eb8b2b4343259eff4658dc65023019144192caae5e6a95988700da52fe1414a3a1b876f54e7a81cb783c38637225713182d566da90bd891afe8276d7496e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304914f924d07e26697401be087ebadf5e60b01bcfadb3b1ac5571e2580db2b870c7b5af35af9147645ff5515e2c54e13f023100b3939e4b6e7438f2549a46fa1d445edc4085fd3e6367fd1f5f5bae96ce8b693e2beef3785c1c1290405ba2c8c8f3f5670302047c435bb500683066023100f92d9234da857b5bfb2d8e74b6ed9b14298e83499452bab8eca187945ce4f23e7818ecd472259f1fc72ebb85f41550de0231009db32137573e5508cf7b6e70a24091ce64363493401ca5446504315416ca1921fed816a33e4f1eabfef98a20962750380302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023073a7a740281ffbf28f5889d2b0969938c75b5f250245b4e367e4db08ec7029e3d1730c51e7716528af241d7b16bddb42023100a2c2125deb8ebaa29c16b46754adb43f78a2f14246671fd0557d5f3c0cbdc8cd6a2454c8f951ee26725b293fd9f0e88e0302047c435bb5006730650230726f3bcb38c3ecc606ed617a7f6f1547da85fe57cbdc1729906a173a7727274c42275c2c9bc1d9e394b36f3f3353c337023100bb95568b2cc88b06185dcd6bb9b59035bd64ed75fff0519d9f48c97589c647e34297ec740d2f00d8304d531f19e4c0c30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e163ccf8590946167e18893c355fa0f79c0e3119b0fea29b0e7c626ca4b66a455b00d8acac6322acf93f940cd5a43586023020b3ee718a0e644475f830a842c9916c05d97980dcb39a024506b679d8ca03dccbb6fc7f42d66a9e7512a42f2c978af80302047c435bb5006730650230064c24c5783d46ebf582ebcbcec9559d8cc3720ea5483fc7d94ec064150926ab6754094f9a34e655fb85158bc8595615023100e689f8976e921c7645db0e248ac52d92821ffb09ddadb8e051d72eb204597232dddc370c28db850a5e8b13ad43adb5290302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d49ca459d96545e3a5375ca7ecf91a2c9cd5dd9be14603593c9c7e8e007d53961dbde2d3a1311159ec7a663cde2e4fdb023048e6f955c6c0665f4410aa7561fde5db1235806ec5de42fa7f74995fc4d18a6904880e8b7ed5bd9309066020016f048b0302047c435bb500683066023100856215aca1ca07278f5edfc9ac0ac76b45db505a70d4f0129423cd9c5d65b6ea89f37afa8bc821c23246a5035523f714023100c86fbc079623f616f8cbad679027fb190c90a9df9336117b82de4b59d098574acfcf99854144b01255b847564115a4a40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f4919ad50cc6b5bac7368809d0ef5897a9ee8114f5eac51966afa1aecd0c427783cc5fa5d86387f556780e0dea77876202302297ad4006685b72979e0f46cffdd464c1380cf928554926a13e9748cf4e6843fd8724e3eafd0602f6ba1cc9904e615a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023063c8b06dad0023b5113ca54557e4061940ce64357f8c26c65461a9c9fbae9ba6d85c74972376e6cf46fb1e639674f21602302bcc4beaf092961f10490ca508419d45388f6c3590edb907e940df9745f2440ae8de7d8989683f993e7181691988161c0302047c435bb500683066023100bbfd85379bee0837547408df737308e26e47a3ccfbfa040f31ee973de8cd8ad0241fce724854eae419fc2d4a84045733023100f9ee98c6567a2dac88e4e402f6763978563a6ca8cc3632a878c2ba76e5a033826dc4f25dcf3c9e817954c24998d01e800302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303461c5501f2ad9aca3c176e42b3d3f062ff71be658dfa1cb5ec89c0e1b435abfef99950ec4cf18d089ee6eb139ae641402307def6fff03aa0530eeae6b1090649dbfc76190b20bddaef9e2e5d629827674b5f2bb241fba4f35a353caee996238629d0302047c435bb50067306502301f449837c34d2e5563daa40833de27f945128965cdad5be2775ba3025186d3778c8162d81b0dc32c7c6736325a4e71cb023100e55657e7fa27c149de6eeb62a4a650ac0d2028a176a3b035b6dd4ad74320bd5acfdd80dfd738f4cea88831321d02f7c40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e97748cfaeb884c178a0695a08c1fe9c8f70e6b4e5ff40ac80babccb9d46735e373ac4423b6814cbfe0f31c8dd83614a023100ac255df92ef3c82857e9981b57621ec7531511a98220e5c8ef8309a98d697fff4f0d51422fec47387ff11b4a0cc5fecb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a18ef2d5ae19a2eeadaf7a6902ab6a968f7411adeab903f63bfe6b726a0de97146f478fa94cc8e4b684cd0b07260ade7023100882a5d6f1ba06c03c1c2cfcb50acb020687cc0d02ac858f5355d31b338e8d01ae9c38389b566c9d2f60a0888f19a783d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023044d323466acd46a5fc61269de9fc6ec44de8c77bef22488f7adb412e6270ae86d49e4f0007b7643731e46fe39b6984e3023023aa8c87691da6f710964bee80fb08cd1f81e2fdcaeec8c6decdc889b6881e17c6cc7d2d5892d31b9499f9d4c7b207af0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023067e9e09dd21482d87799ffcf8d61a8b9232556f41d4d0dc1b46ed56fd3248c9e2a42a892ff5943cba45eee5406d63be20230656641a3b3253f65c0ff492f1fa49facc44def7cba3811b84a793498a9c0387351be0435490a436210f6e7a4140689a30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230139e3836b12198e922adf368a8cc37b2e7187f9e2c3e1e959f4b08aef31e3d2d9aa82ecd7ce5f09e5fdcd5b23979a84302303fcd6b27e9e7bc3b33cc789dfd1433edfad77d67182a8d57232b6808d19b5fe615b46c41695a05ee024f638fe48e97170302047c435bb50066306402307f2b6c5929f77a86691364e28c55a53c0b49441abae9e48f163847c2b0d2fa4f33f1995003412f590e81a353d8caf43802306db76aeb0940f25f47f7da5a3de8b9f5efaf248e044046a53448f3a0fbf9068702a0d9f584b942f2779d39383dbfc47f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100eb6271cdde40999899ed7b74cecbd7c0e5cedebb24a86e9c3c4e7e9b7eaafc595b4da7a490963d453184baf9bae39f2b0230304da2b96dc8f97afdf2d6a7f91710d699407f57a3f253aff12dee8b7fe93232830e4bf9ead7f890c1a860b76e10a4e10302047c435bb50066306402300a59da9ac8dd310142bc13605200a3699cf11f1c869829032136f3b944bb15599c253112337a071f9e6332f2ce7e38310230581d34014f12cb045ecc00dbeb7398e7fd3ad453d89885ec2f4185c3fba07413533fe585a052bfeb0e43970973830af40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e06691b9d49074aa6c2c5667a04b7011dcad41155bd827b96305644bf9c9279001bd4965450a257af9fee15730f85758023100e67162bf7b70d8a4147180d06035599a9bdf7867808135335b97948dba7e631a2cbd03d41c27db3018d532fbb24afaeb0302047c435bb5006630640230206958b5a11d7c72fad809cf66499eedcf8151f55b18c59c27fec8a653b70f780a532be62c609f591166852c6c17b36802301f82f32dd1c9fc4ecbcae3c6d5f2279dcb35887ee547ae0da5d913ddd85a9725876a6aeac9f3831af5b124edf9a054150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305b8ed19bc8f7c4b973dfded35d1c33c4ad662792e5e5e394fa590af2e9b174967d8edc9a4bcc2f19f77b70d6d36754710230434b3a08006b2ee28f74723c4e69d9b92beb33c41777872f6bfc0b14abc68b5a11e50c1a2a10dec08ad5aeea90eac5de0302047c435bb5006830660231009b86e1568d76e8147ed763a86a276b7f5078db7390331a0a50963ceb5d5f9b6e39273be3d75c64c9583db1b599427315023100a1263acc7244314c3eb60184a2d24c43c839c6ea9b41a6206b42d3a96af09e6143ded8fd11a3ab0424a8759a2b3745f60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304fa7c4263ab050d1b34875f60da5d7554ffe9d9efe9eb7dc978feba672b7ba5d2565b84c91caef1aae3a7183777226a30230053812446005373cb516fac09ea5157f738fa010988d1ce8ba018050d3882e9df36e176c7c5a46a8c360f3d344531f370302047c435bb5006730650231009cc316cfb7be4800d2133761ca3ded1413f04cd2492f8f8ad340666952ee0cb8e8c94368ae52f1a75b5b026e95ac89380230750585a25eb2941acc1cddc43eb568be83c6545642c3dc1b9dbfdf61d53bad4898484c38343c776ceaf79a5598e260e10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310081ae4ea1f856e10c73fd1dca0d1313441b0946bcc1da8bffeb09e6a963eeac3752b011143a10ced59f2d03ecd0615da00230635864399b2c59cb12559aec1982640d8364131ede4fa9de949891e068cdb81353050e43669239c1b4f1ae50edd0aeac0302047c435bb5006830660231008ddeca32a5fb82c9c48710edb993005a4c2f942a539944c8230de358e9c86ab9fb49f1c6c09a73f745fdf494cf59b991023100ae61719fd0012ace51c9bcb9a9982dc15fbbbe3b582cac9b149a296b9521021a080709c00af2ac6db800e2ed78071df30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230079a48d3619cfd217fb40bba3e7ec7d3bcfa54cb6b780cf369a5a65b57270dacd705ae42617c3651b4716aabb0764a01023100e1844e378d8c2c2844b5d0f43817e88ed2a12e8b4493ed1813ffe265107c769fd8da289113042c308051de1eb85a49150302047c435bb500673065023100da190dde683b9bdd816038a2bdd008fb279b160c8105c6d32721de2e51b0b13e07b193a312bb177c314bbae68f2ad5f70230284eafc0be8f732eaf0726a08d289847d19d0fda3477f675949b235a68360ca982d1403b1e43deb55759481c07a0d7ec0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009859f0be54665b756c6a2bced1b39bc0d7a301fd8870dce2840d78f1dff80c5029e07add931f7c4c7ab0c6f9d7d8d370023100df50b4f809d0ef4112b331fc2412e919908bd155310bf2b829882800103fea7ef4c4f0f04b313dfd35587cf4b4c1fa970302047c435bb5006630640230626e764da05d4abe1538609d3e694da56118f226a744a71129f7abf7f0b25dabe92677972dbdf486910525cef0232e12023055608b8bdc77d9595794cda52b7d94841ad8da4a9c4e8a523ad2c49a9b88d1a7885ccc6bf705c14c95dc4adb20de44d30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302acdb48715b2c7a0dc0114e3eaa19cfb9d83167c50338636650a59a1b81393c8155ab1b21b169d07a13707ce6e6d814b023100cce76d3c1de9fb5b09ba20056f7a8340f03ad135fbff959d868038f938c76b4d9ccbe64457505f9c2a50698d06118c3b0302047c435bb5006630640230575df1f9d3bb5aef00e64141c6d0da2b77e2e8d2cad739e9f4ac2a1afbd3a9ce4683b4d8b7ef34b9f052483c57c048280230758002a74865cbaf478a33c68c5ba29c1b9ca47ec32c52a9bb146daece23b3efdd09f4e3bc2cac696451d334cf168aa60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100eb4f2d78bda80aaed0354cea49f37f39850067d12d34938759d2047f74a7bf383e0a89dedba85e79157845f53d1e616d0231009cd4155abdd8201d3e2164bfc20486177c78eecde52fa3520d623c6d6cf1c4a772cba56f00457b2cadb327ef65e362720302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303962687d74e9d04903de341af36d0d5cb0eab0784c1d778a518ca19999d5d6cdf5486175fe5edeb1662c94ec123b2d2302307853d2b0db8dc8a9a9d83dc71d97a9992abe14686f0cf75c970a7caa25d7ed35a6dffc2e82e7c3a88d5f7b63f71a8a4c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303b61989fd33df52a930d3340ac0c68fe972179ca77868ca2f664a7fa0359ead3c9dd322cca125772816d38f328b8652b023100a249a50838da59d482dc598bcb18a0288a5cda8c91d8306b414feeaf72085b86f477b406b28c77239058958a8d5dc3df0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d039b92ea09dae0cabc55cccdb5cdd00fa110ffee7c498dfe351f14c04478d81c55b41be1324a9cb9ddbbf5904f09da0023100e9547ad8fd4426a4655805ed4c9bf375da35c9c04db3507bc2d51f25e275b7a9c3a33257090c75e3de0a1bf73558cfac0302047c435bb50066306402306e9f98766b0b4d62c7bfb6496298a6a8f870d198c2bb9a9a8a030584a04abaaa5d0b51443ba717d1d5b9002b24663bd2023056fa9de1696dc09f21b48e256f522fc251a2acae1eed1c397c29588f3a08b338218c8362c0648fd7405c9c49de6ef5b10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304b202ef5f58dfeccd3b4031298e1f4bcbafcfa5e7c9348ae12ad99695ed7c2513e90aab4727f491d168e17182bb8c5fa023000cc0bd285d48e2ff90a71620e04097cbbeafe1c42ae07d32bb3ae89ac393912dad43dfc4d5b17f9583cafda2700f73d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307597c8583d57864b027ce8ecb3133b4b30f03e163b609453e1e81a077a6462c0d855fedffdb5ac7a66c77ab297bc3c81023100b290b63f258efdab24c7ec1faf26a1709e68d2a8b90d8cf864bd40e5fd01ff0ce1559db8af454e1d963b97fcb43e4dd20302047c435bb5006830660231008adf6406af2fee93faef8358bc1d11b8c9b557dcbbf88ae8d3fb82122bd0f49745146ae8677860fb2e8e08445658bc64023100e24b460d4f5d19b57c4297375471a98820d968258a672c6786f520cc770aaaf344af96a69b95407b5425e3e77165be310302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230380e19b6ac0043b25027998014922b89a77777807ac36e89afccba8ec085a7228a7a3607ba30c47ad92b5197bdd19811023100ddfb27af9658be8e37f4a2f57aea9fd78699e5dd74141985f744b6022401162a7499541552c292be3c9188b1ed9fd1f10302047c435bb500663064023063d4c013958880a7b4c22564b7a8d20f9853c8baab8118a27f50501c3debb7781affbee273be7bfaa4763edfdf2d73e9023033c907f16ef201f8eb101a7610da02b46e6a87133ca19f54003d261f59e74fc68e7a8dd1508976f1227b1970891722300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a51d7338cdfb60ce500eb88908c6e01530f1356ee5496cbfbc4b6e616ec4dc9efe4b20353f5d7e4cf5d3e76cb27331c9023100bd452493e08355e34d54b45af703e8c580daabb79258b72fe5a82d9d930278a9b5b25c16125a50ef7a1415f91fbb9b420302047c435bb500683066023100cd6aa7776dfd8e31d540a7fbbf09fdf9121de97bcf043ef6b3daef2b61697ca70e30fbd96aa405289adce83d412a53b5023100ef7b86e038c510ee78ddf3bce174d48da9ccb93cb90c3075a3e88ff7704a321ef2c7d1fd4f0d6875c5305ff4815c39d10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305f426e92a8ec2b65a6410fb6973d8b2294f6608bbc0c6f2047187dbf5f3b731943c1855f7f2133d8baba8a4a5f763461023016890c25bc2d2574db028ece8b82719453ab8d3a3e9294f31e78bab7d67e0b45f57edf30634a67e6cb8bfa8719a1effa0302047c435bb50068306602310094e254d285d8fb7c08226e4ebdc7aaf2e8fc0850f37b0cc22d23ed3d89ac7a73bc3da520cc691a82817437948f4339210231008cae71243f77228d02ad3c130d03cc7d3c71b117b9d7c8f1742765f993b819a9bdd858c56f85a73dc9f82eacbf9c65970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009aefbe672d074c058e0c39cc36d6abeb3aa6fa9a0b206810481f815721800e60d459d086e4aeca44a6a24e4d48f35fdf02302d632fff8201af131d4b1b5f03f4e9ccbf7c6bf684e65eed6426465b65acec62f556e53dc07b4cdcc9e2d1ff49235e520302047c435bb5006630640230698091b4838e285936c1012957e30f3815e6cdbc661e363d54220d050abc407b7ce432471189f379584dcc11fa278ea502304ec674907bdbe7bbf85ef35cf7f5836d510813d027d9179b3db594811ad8ae61665f7dac8cce48f46a1420c44ddf93a20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230784fbdb7e6edc368b9df26f039fa7bf4cc58364f7c238774296df55de72ac7974bca92c2155864f2300eee14c3276b95023100d4ccdb585043d5eb304602bc787e91a7b31823ac62aa7cf9b30e133d513cce1dc23f1185d07339e0fc597f354e65e1830302047c435bb500673065023100815c973047bfbdc155d9c95f9f00fe54571bf124fde008331fe61965fcf76c9b844b7d9487bb5f9e5580cd2abb7f54540230517c7fe2b5e0af45fb543d19237eb80c4453c227993b8f2cdbc1f3bcf2948da95d4b2118d85889c57ee54ef5cbebb83f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b668e41376e50be6bab777c6743f0927fe7f28b99e0cffcd382f475c94fbc0fbbe5bc8ff3f777854488d82691f962caf023100e707e44d45eaf91a6848e959d0f6498cf21a9da4550c88cde6a686a2648c76ad7d0a0a89ee2d2847ebd4e9426fca3fca0302047c435bb500663064023013ef6efa54c95889aeefda7ca292528bfe9c594d4dfbe53184e759155f8d53c64b83be11c829e10fc11c90556f10aec50230698c21d3be6cc6f789ca482c1267d8b4c30f192c7a9e9c194438cacaee9e6ff812b4d092e34cc59503eb52519be0706c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100eebdfff01a2d658491a4da96f4e16bbbb845c4e03ba19d27371f788c8d03bfa9c816332a0f4431698795b75ebcdc4d0e023100bc2a888e4c8a72fe4d49f7a60b9286ddf56d0a113d1d27ed484ec19756ace0b3dc1a917c5154c58775562136e08bf4410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c612997d78acca0e003a206d1d34f76aacade453f0ddfd87a25170b001dce46e34f0b88a1ce9982fd357ac1447a9dd8b023100e78fec72e419bff5ab9d85ed14333cce05fc11d9330010ed43956bd96a9636ea60efc268ada9df96b0f1ed1952ace76d0302047c435bb50067306502300ea3066d47b784683beb06ed31846d348bf5a84152f119c70cbf85f455a2afa138202836fbb6ce40f3a3f250811baa4c023100fa675bc80ba278ae7e62837a4d16a02b2a466c05b9d12fa79a0cfa94245877723580f16c0a2e982b3152d063ac01c4d20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306584c7e8e48de39fea3083608d49d2e5537cbd0e64fc705592bbe1e22576dd4d1256bb83709f53c20b9965de86c879b902310094c1cc5f43bc6b78b419e20b47dc9ac0a202db662c28dc021850daa88223835e6d247c1962a2b7d2575c58acbf06f3930302047c435bb500683066023100eefd4801b5d864d2f270f025ff440d86b69f3b32a2e8d80129e0272220434f3a15895b983a43a1ab4bc034e3625f021e0231009bbfa4764488cf4379220dbe266a72702973f09a09f8d0c77601ddebb99aaa78e98cafe0babf3861caf7c2ebf9007d7f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aabf1ab9272c3630b2c62ae1dbc16846294f6ef1e9fe7aad0bb8a38391777eef23fbf5c44e4bc371906952f3de41e7fd02307a855cf02ec025cfc658d3a9e548a3378ababc23bbb0e0ed9cb61834904d796c0ff02e9720e582982b1a00cd74ada2770302047c435bb500683066023100a3fe6640fb493174e1b141c53abd829135efd19b3c8c2a3b0e60555050c5bc1b652d0a77c122a7a7235aed0952e367e102310096fdd09a8e0393deb7ba8b315d3704f3b363c9040fe9e2d6144afe9d69c850f98edf8c1adc19fb65cf56fec5424492ed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100954fdd84bac50df3cd56c0e2e0e5a1a6a5b3ac1f3df3454bbbdcb86779d302a2832fea587979501478a9e0b7dcf6f006023078bfd60afd60ea3df3e646446a2b79bc24c0e8a608e5a0d1633005b54a658c612c8c3c5c347ff56702ffb48b75db379a0302047c435bb500683066023100875b4eb538cc4e17d76757ee684791675066e015479047623d269c13aa1dfd44f9e0724dc7dcef2703513cd67f1e453d023100b254b76c3e6de50ab04dc7418e5ceeadd4b4b9c975a6b54506525aeae649a80a1d4b3d1ea10f9602802d61f03deb927a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230009d8a76322510abbfea04a2c73bd8c30e1811aa45505e7210ab2b0e8cf586fd66964b324446a546d17859021e989bbc023100dab033ab2a85c41d83f666b03a01c570e4cfa5e169a5ea281193f4f61f34ed22d8f25013ec04ed9aeecc4edda95fffb20302047c435bb50066306402306d41adfdd19b6148c88d4317ff4198a82fcbecd80e03384ada32336e3a1ca5cda399c7e8eaa5dd571fa3660e0632032902307093551bec6f39047382dbaac19e9d0167de42f69f6e265ec6f049b9e242ac23662ea64cd3b70985de06790a39f052300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310083a46cd693b86d9562b5fb3f6533e19a92e682a29d66f6af03530c3e8e50381bec3163ea33a5c028cfb097345d29842d0231009e83e7504aea675e1198d3cc34fd7efecca693d2d2e08c31f4bd63323f25b94568aaeec6dc3c57a7ef410c06b387020f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b64cdfc0494ed97b449bcda1a4269d96980ebd57476257a65db0457e6f987cb3a8dfdf78c602568fb9de9f8c8249e03c023100feb78b98d1ad8964eeeb0103439c431013c04cee5e32c47365002eaf7ea24453fb7e36131d7f96391f1da55db18585280302047c435bb500683066023100e84fe247b1c975737109c7bbe063107b97ece99131f69914ce29077aa5fd99b3928e70d2bfc13c13cb5224b14b4f653d023100c4235bb4ba77e46a01c5330483565a5e44f2b7fe76457004bab3f23d50200519e8f461a6d894271431b63357ea3e841d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023004f4793de3d52da54718b60cf1e4b87c008332f67644a44bb5dc8f9e567e5f3be3422181ef28474a6d953dd1222f80d3023036e6aec9268a6d1e9ea6c4468cae26608b66d86b2f26ce7080030423c3f7da183082d70da9843b397358fa0e3dd178610302047c435bb5006830660231008a6ba9e1762ca75b435f35f675b41761c425aa25e8b61e7e264ad74cd7c1bf38b010572ea044a2faeba55890cde98083023100fe179a16cf6ee0f8767a9ebfa799a2c74cbd4f980e5a6b2db1f620ca1081acbf148b30b40aeb1610c9c50bf46afebed90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310086aded3e16adc361924b9ba8be642e24394f367e8ab84ddef8dda8d6f7b0e9a20ee975f06d47e04e22d61672709ac7e702305fc09e33ccccfc0e476dee222060499ee1b6bcdd2bfbde91e70b12431e86695c8fe564159a08f946a3ee95f26509f1a40302047c435bb500683066023100d220f0ea688597849aac06f521591c40c0674c5c80a61c1386c25b61e8e3cf646542c9d8734ae1b7538b9a6139ee6534023100af2bd0722e580743c32acce6aa7c4ed3afb2093de1c57b51fcd4107739b9b0c05cf51b31ce7b5f39b4aec21924b57e7e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b68c8f38eb8c38b39f4662e513e21b1d5f969888f231928ae6631dab546553e5e59e40ad93efabcac470907240a7fc5f023100b67b0ea2b72f0b2d7910a7042c738b06230f7e5fe03fc12889af22e19a93d975669c43c2046759b5d5215be9bb48495f0302047c435bb5006730650230581a00ddfb41548cf6d82a5020587c790a5407aabd403022e30b6a28749114ed45c9a44aa14c93523a155031d6c2a874023100952e57a1f18c84087ea9fcc1fb7910621a6aebbe86243a12d7185a64b94d7703211bc1ed79f8e3b1710d21e10aa009020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310090bb9264957183c9b7f36a5fe61f144b48c5e782bb7c32edc383d98ed66d4e94a3b94233fb6b24e4f48181cc8ef62c3e023002f95595a2a2a9b403184a33e5b51678f8b024ffbfa8d0fc17971cce7b84fa0e32463e94cef56691b2b78c0f0ffe895b0302047c435bb50067306502303fc740ace915913e2e3423eb9abb2ad1f3b9db354a9966d73ddfa27579703351a1cca733ef832706d608a74e4bdbbd0f023100840a3926cd648720a4050d8ff733094128d1b68443c5fd9cd5a7db3eaf740b6023d94b42b1c685f805cfbdae0a255bf60302047c435bb50066306402307931b7603e474fc1cc7a392a1c2e4049d9c9c8403be4a3a7cd2bca572dde384806ddfa1aec0a26e1c7e3725766ee5f6b02306e1d2d2d50272f8910ba5e2516ae7deca9ddc94d0177044c44ba65c9850509641c07e6793ba2dc2dd3ed790198f022800302047c435bb5006730650230782cb03ef66408fc9699f0a0ef42989609386635c569a9c71704b9037ee326f34ceb100d1cf3967b08ef29603abb4999023100fd990392e4d07720af71669385e82c5d44a41f580b723e59de108cab8cca9e77632c041393366fa48c9dccc5e02e7ac90302047c435bb5006730650230277e97ed4e0c2edc1810c6aa802f8c632ee2660a8e2355f4130d3ca1b36f50b8863e46763a40c5850eedbace57be2f4d023100a21ae9b9f6697f8509813b8027251786c3d51c5974d1cad128138821e2d306ca0cd02e7ef037370a0d119d78b6fb01830302047c435bb500683066023100b77691a26efb1cebf0bca888a7822a391184fd454b25a431319470ea1d0ab57d8d3cf9ccb9e9e0fdb6b29511e3d193750231009bac99967b64ce772eb8e4f4e584f4542d99f97f787508536fa496ed299018820d601ae498515ff777f71167aed44dfc0302047c435bb500673065023047a509ceb4db16cd03678b6c081f8d42f0d0149f6506476b34c755580f1bd8e87b02d3ebb806284468949fed7a236a51023100aaf8f814c4f96ca360bf1881049e4411b852e31df13e26b8390e06ed07b521250a5d972433228f5abea9513b72f489f80302047c435bb5006730650230044974c3b093be98b83d763978a0bf7f5b557549dc3b6060c54eeb07b099c3b55e7437eb0af134219960522e7b78de55023100f7b1b42ee56af323d3cac7e0dbf833a0b359eb18106df373831ff971179d0405405a2a38e8bd30fc6762094fdcea95560302047c435bb500673065023100b56c570b45eba8f1e5415172992d1f876df67e20f3258e42cbad4220f1048f14cf4604b32276be3f8d8c0c07168e466d0230358e60d4866643cfb727cc3759e143d4f552847331a28fe044cc594cc62d868ae9acbe6bfddfc58602bd02acb43f439f0302047c435bb500663064023030e8daaa588c1d2e7aa482ce91a3845803ac7578e145e0f2e759873b2ae2ba7b05944e6cb2e59aab88df09d54d201ece02300e995cd029a0145f0c77dc3b50ed8670e321bdbd923791b7d3842e033a1ad46c3a2415a7817abcc2a8d2b2240ece98fb0302047c435bb50067306502301fd84e8ad4e94dd65a753cad232be08b2196b35bdb3d4148c5b5f3c08e5e9aa8467396dbaf39a769da7944495b71e640023100c37a377053407c55576f12c91612d8f76c11f4b45c0e74679e3e8fa81c585e62b8c38003103879b0df15b5380414f6ab0302047c435bb500673065023047a6c9644fc182af2e06ba842f0964595ce9b97a2d0ea5fee4535d9f1acd5003b0906f94653940712150bacb7d8df857023100abbf74a32d467736bfd802e227729acd710eb77f3134e7a848a4343e18b329370f571e7ebca5bc061ceb875c837d5b060302047c435bb500683066023100bd4710f4ec79a57672261d2652bf24b0bcbdba958336bd030091106bc4c4c61d81f9a14016ddd84f74946b7be5878ec0023100848bb79615eb5e4f2637c0523f82b14d633e704b810f1a319036bbfbc0504dad5fa612ef202f8c945676a32e30b924290302047c435bb500673065023100c8ec26b89f8ec062ef8413055fd75e3424c54fbebc24088c1632fe80d49a6fcf6ae30ee724639d376cfe6991fb5753e50230153322eef48530ac493b89345a02ed8f70ee4265a58e2133e83534c065e775ac74261e0772d6857bbb51029b7dd5886b0302047c435bb50067306502305ba6d71e1695ddc305a6c5a4bfb1262353a8db5a269b2f0484c252a7ea3b2ff362ecf70a9ca37e99d6344d9452b66f35023100de3d89c551f71e244e49319769753b7a9bc0601d0e3c554b2f4939d0a8dbb4b1b94e87754f2568da204f2d1dc66274560302047c435bb5006730650230497594d6ea6f741fbc83f313960008633ed5d9ed130cc05450f4aa61b68e599b0725ab2e6cd66f319c95d2f1514908ee023100b1e26b6d68768632278ec23aaa073f13340c622519443953671eadf0cca947b613c3fdf863656c29591dcdc3b051a2120302047c435bb500673065023100e06e2b584b260ac50a703b01218678506ac34644dc4cb56a99768d54d03c12d54b5a76bc7c49b636f641bb128c554b810230368b75d42197da7fa916622538cf33381f232eaf122456939a53e6df75e6fd0afc01479dc383c1e120be21c82ea5eb710302047c435bb50066306402302112b6c5af7924939345e7c238f4656273fc2edf07b61a418f2a8b72f6b69de29b7628441ce46bc7d94b96b8c7ed76e6023068506ba1c4371dace1f94bc7a0dcc1ecd2738d4c1691ad8b0c7facf0ed7a96075d27de2a94261f3d1084c7f70025fad80302047c435bb500673065023100a3acf4b722890b1f35fbf6ee0602a7616fec94ba557e796f73044791cfc61febb557d58a2520b3a111b7febb21930827023022318f098ba06f02d4df61de8576100ab579df16226bf96fb62e3b3db4c2397ff2b5a3982bc43e8d17a65e6a0ff06a8d0302047c435bb500673065023100c6343c4c8c570e404cf446eb6302029e09c80821c48314cf5e29eb2d3c5483c47d4223332c4404015ea852bc58aae8bf0230303c9eadb895d0a1a583d382742c91fc633b9c5bb57a70c5670e2cc64dadac7a0f4db7930eb20f0f9429d0713cf83a020302047c435bb50066306402306d3d1ca040fe620941d5ad19c78291a4b5339d5041e37796ba87605d94983225dfebbc3bbc687a076e5fc47ea240413b023029c699fadc17a4fddd87208623fc75e4ebd4ece2cafb1b3ba10bc1853e15e6ecd4b7e2655326d6e21138de3ae580eacd0302047c435bb5006730650231008d8686a330dd88bf38d63f2add574a36b6d66eb8bfb896829c4140549dc6b028bb49392a2b5f26ad201c02c1def6b2ab0230397478a50c3716c01cadd849caa250f3f940ee232d310c3a8ecf57ce74b6826b8bbe5fb9a54259d7edfc12cfc7166a510302047c435bb50067306502303eb53ba457a5fce09ba384f5ac79fe2476d2f6fe3d526505eac6e75d4aff2bc33e6a6b2e2468340f41ed2e34beaa616e023100a71868f7691a00ca5c98bd889dc757bdab3844e6325d94f90921059272f063e37ccc4250e9378fb94f0352f96e5334bf0302047c435bb500683066023100b5607f41cbbc4ea427836fd9f9efec13f8014b398df6a4f0ef48b3f1d9e5cf921285f1d0c7655b8b4fc3a590c74879b5023100957013e6a31f378a9675f2bbd19d36f1b5969ba0672b55580b8aff15fa2a1cfd2797079fba15ea8307f73a696aca554d0302047c435bb500673065023012cac3691347fb475adc82218fb05e55d32e5628205b84165d319468691abf89c07b3c034529b04cd4ac4aa471e05491023100ceb776f196fae6bc088f1207b77f0c0690c416b7b02997a374426ab4e5259eca2c313555bb6b887a6d9faae4754552c90302047c435bb500673065023100a96e4bb116ca41ed6414371f3932e4922d8f6aec7d26357846971ecbd64d6d3f6a818b2c2fcf7e7d4c9cb55238d20651023006db19e13a8da61cc6818d70c1be2caaebf63e5b860bcf676b32c5c82fda8539ae326de452b926eec016164d903c85cc0302047c435bb50067306502306dc304cfa192e914457e02713032835a532335a3887250818921761c0be3039bae5a8f6157e7379500200121aa09f8ff023100d8b8f2ccf1e025113ce1a8cedea7a02f5d5be701441d68f165edf0760a14c4e05b457a744e3c759b3584d1c9ffd300ea0302047c435bb50066306402302ed3c91f41f362fd02eb54a466cbd64a608ce61f93c2d797f8a1b5ad06d8706c10cd65ab786d196a6ff9dc22df928a920230258a7be141eeb90621df926c4bdbf0c757ce8f04519417d44b8beca237272d329158deb2fab96230cb47b7e07c4d87b10302047c435bb50067306502303b8cba0f504b1407fac40efb01f5efa642460baea633981320abf1172af0473f120771c9d9bc838c3ee22ab558c482000231009197cd71fb66331fa386b942a6c41574b2d951e0e0ad20a5efe65cc45a87959379fcbc6a5dc1dc767963a49acc06f0b00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b09fb11a678a4e7b9273de0b78cb42e9ac9bdac803ae5e19e3340ddee568a87c3fcfa6d21885d8a0a02d479214b9ad7d02310092dd6dd81a78196f81c41714bd3a3b56a14d6ebd0dd191e8c6da876b3b87f9788396aaa7ba45ea8401c3a02f9b609fb50302047c435bb500673065023100cd1ff48738cf24163e240287ec4df8411cf329dd20f7c04fa5e36044a2feb2d36a6e3dbf495778912f172ff13c39356b02305b4f859abf4c6c42e89044cb1ffcaf01bed1f69f06c130926f0dfdd9440089115c766a5d92fbf816963b5bba084bc47a0302047c435bb500673065023100f1d57e85dfd08aab587e628531f7cf687f877b9b69dbfe14630a9cb6a6b604e8d431dc57e7e7a2a30af55dc71685912a023012d384641e937c3d970d8a0a0256259ca0d44ebc278931824252264cc42f0511495e69890bcfe252bfb9224383ad623e0302047c435bb500673065023100b32c10860b00d45b64e8c17549fc9edceaa84e03f984d387b8b714ee27d0fcbcd964d1497dacb94939215d8a98b875f50230793b29f0ca88713e5c46459214082db4ac475f0d0fa9de9231abd02e2658fea5d6bf0f70391c2c8dde38363e8cb217060302047c435bb50067306502301408b32f71ca18368723d4c250f60f07c33fe439b89934f6d25c7996ce28f4fd436c3ebb2b06fc15df2674cf4564b6bb023100b024ea39d7775be8375dbc23667175e64feec0ec02bb37889ce213d7e6a02ed95c1a3067c791bdca95af282607d0133e0302047c435bb50066306402306f8a40ad8d0fe90270645113908d81ebc14461dab87c8b50b62395ea41a2023a6a122fae7c0eb7c1b40f5afb3ab70527023009eabd43ad30278efa724e8929dd65a9a1c8f312bfb74360b8cb75a20a2d6c976c1f8fb452114a3a68d43795a690a9600302047c435bb50067306502307ee3750c903a3de197cdd35b2141500fdc000cc5bc215eed43421641de066e8fbff7ce355d645d19d7273c91d80ac987023100f8471d664e0b75b1d09aea7d9dc90aa48c084da2831a1db5fe8f7a2920df992ab4a2a57615740d4a916d7f177376500c0302047c435bb500673065023100bee2c2f6e0ecbfbf0a7bbcc7d4404117a2bebf96fd398d089d24edf01592d19dc08fa5539ef9890880c1c085f13e3814023054d63229ab22622f4e6c6e44e9dae1a9a14c6fea2cbc63549efe6bcb74fcf2b2cdaddada676da3a5dfc0ecf8ffb8653d0302047c435bb50068306602310088791b5b59fda7df666c804b80f60a1a23b103ef439f2a09ef4637659c52fa378139891f8ec0ff1248844812af2ba5d90231008804b776e1e448516728ff02a2bc6b8428332e3707dff1d852e15683dafab3cff16dd0d22d34e0ae4da477807e8aecbb0302047c435bb5006630640230604e52c0cdf2c4849baa7362dfe2333601a90a369dde7945f0344ac33da32845957075c505e229015cf5454ea134e33402300cb4e4f42791a09ef53ff3d4a9412c0abad618c4b080451c46fabe61daebaff55899eef5f4fe97d63e13a058d7fbeda40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230719cb9a052e92779101b45e59aa7b79fcfea7dd8ccb8fcd64c4b3dd854170c2dfd05325a3ff12d20d883700df4f77eb8023065806c70afea1110314485d922a74ad990cdf0077644c1a16b93fa7b1c911da3866525058323682720501364549135940302047c435bb500673065023077bbd8f30615b35bdb8786db0f573529349f00da05fe6166b7bbca17ab37e4bde88b9f586c7c576fbd6462a014af54cf023100c044afe46dfac25d7583cfa3ed3477a9343b4a7b9e18c8f8151b2c3b0eef77d4d2bd158caf5f78d205e66c441760e6f20302047c435bb500673065023041d2b52cb208cc7115719e4bc96eb930fbbada493bce2eb71698c11b5513869fffa33d318c28a2fe82f65b0ce69a4e49023100b20130b632b98cb7a68b09afcd4afdf690af6c393f98c4b98f9dfa3ce26025bc0ebbb94eb92ee5b30793db2919b127530302047c435bb5006730650231008ddef6b898b445da35e7777092204cf33fd3af0dece8565ef9e94c78b49bc05a7ce998a292152668556f044d1d6450ce023010a97d4722df22e6085a0a458260b3e1958c21146ea01d34ae18fb47711598b5280da5fb833b20241cd404666ba644140302047c435bb5006630640230469cc2fb7167944ca113fb4edcd330b93a0c296ad1d170d32a9f3a3d0d80dcd427fce39650e566d4bd8c9a206f7ca497023054b0de39530d54dcf685e11f66fbf311a0caa13a47a58178396d5a00ac7ca22f60d09e6c91034c6d445bd3956aa58db50302047c435bb50066306402306e68c25310265da7531e720e68d8da2c1d719a29b366db6f90bef543bf1cb5d62d9d250a31c1de05b160e7eda60a1084023000fe3a021755d26cac6918196e61d198d0b847ba6916c4baecb14dfc61b0571b155c18600b32e733c8cea1da168c8b5e0302047c435bb500673065023100b36321aba271bd477e09f0166f2445ae8ec77dcb2ac85b42f2bf919546abca0e522d08822131cdf67183612d00ace368023072622f5d26e9483f0f8d21c264552c200d21c8b8144b2670880d4bc012ea2f7f6002376c21b4bcb440153f91d2291f3d0302047c435bb5006730650231008a26650b6d4e5c491e2df76aee258541adfd900d15b2a560eaa2a86ebf06f4c34d0ae2a3c19c1a9ea332432a26b1b00202306060c805b66d7f1a859ec2a65ef854f367fc05e5ca3d5ae23b499e12e3144aa5c907426c4d9fbd11226d2829827cb6f90302047c435bb500673065023100ce92eab56f75637b003e57c2b214f8239fa8e0a6c51c8277c8cbb0bbed93e1deca5b80cf83e8b8cc4aee6f7011271b8e023060d0a72accd9bccad034e0a35be4363a6904f17ce4aeced5b55215ec67c76504d5edc7e6de992253a87f74630a184dac0302047c435bb500673065023100c51883da7af83a79fcbc7c02b28fac96ed5c9b33b86116bf31057b678a0e8292d88068f045463e23889d1441a8171327023052894d4741e620456cd00134d0cabfafd2ed04d70add4bb9f73d8be7d613475f9dbf5c6d909cdad22815ac3868b6cd2d0302047c435bb500683066023100ec40ac1ac999b2c7f370c31673f237e9b7c2a9aef0efca5cf289b3ce803db7b27290a7f2e44caa6a8c32e5f6aff9108e023100b5f7044171ca92c837cec21098f46b5c28b07fc67e2be09459aa675bfca9558d6064b9539f0aaf8699240ec54d65c7d70302047c435bb50066306402302782159578b36c6c4ee0bde82c34be3174756e1fbbea830c502f4fbe90a084a0f3421135d39d0f54aaf47f595c8d2568023002ec794ab57a9dbfe9d17c09aa2e69bf23f84f31095aaf4fd342434b1d9eee81c499558bd541ecfe0cadf400bb6883f80302047c435bb5006630640230080637392c3f736768e6da97ade3e9b0618d46a1b7695c7141989d89739437a999a172b3842c96dcb93bb651e3a0ada902300245c9dcba7c1e924ada01c80d9e78fed020debf1e74e8f897df66aebfb7cde51731e364bfa13f2470c4f438ef4707130302047c435bb500673065023100ee1a9a8be03ad2fe44c32fc9a38222d6d20fcdcea222e590bf453d23ef84bd37a96e50f4f6eaa0581bddcbd1ab9ecdce02303b9ddf22b4c7a8414ce546aec9165182d2fdc998347e9c90f55d2595256e601c2cd45667a35653110299b6781639850b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305f81ec238d4801d9d0d34b2f9231429a588ea8dd8537597c5e9698dc64ab048a362d2ec2abc86104eaaa077e345660220231008eb5c64067017ac5a8f57a529e4b42e95339b73e15acf66c4a2817ee4861f78cfabda593286c9c2093dbdf4c5205abdc0302047c435bb500683066023100e94cfb671de9b916474f117cc3ce9888da47edb0c083ad2d6e224f98ccd6a27b172d4fbc48c5c41779149e146a3f9b6902310090eb5628cabcfdaa0c4e7389157f686add1983448c10de21dbce0d600186261ae2a31dcf698ea39710e4d7270d0a23ab0302047c435bb5006730650231009446304e83e0ff0f04e29f6970bb0d554346c4d2c3ad70a126b15f0b3a5a535be46be4501df10908bf83a6751c067ef602301b5d8e855967de9d1922fed1a07466ece3fdeae5547928efdb34f2a6d50cef1f2e9f8d8024ef4271659ce2288214b3410302047c435bb500683066023100843879f8ac359a7709a5c72de40e20fe653a089d822fdbacfea0d0d40e43b16222da77bdfa9a109b51c3e469454f3c7202310089b1a1078bd939b1d4458e30478c8452d5b67cee7ff90ec2ac8853e434ff1b3d03adb18670553ccda66b3f2ae4562d760302047c435bb500673065023100a35c7dd2c9cde6133ac898228b9f26ac55f093877e9637c7ebdde49e5b416b0392fd9f94b4908a1afb7f63b2a6b3f01502303de3b4bfefde0aef7ea995767c2acaad198905fa9d010347c0c167f253283b415db43f18769ec271322577b21f17dda20302047c435bb50066306402304569cafe0cd3fd2bcab91b5aef4de3b3d0badba61011474ea4087193f7d0e95c3256722a4dad93cc73682a3f8625ae91023079a7721a781089da6664601329b77a9ffaf1db99b6e464ecc5667a87226cf21a96fc55399ed6c199aba36ccd28f518b70302047c435bb500683066023100ca3bd5246662cdfba2fb190a3987c2dd1dd3c7468f52eeab4e63021cfc808164b3c5626ab50ab178f9c5d6143d64af9602310086c6eac35c84eb4a17227e867cd950f87d890c6b3e5381a2e50e10df115e17a5130b8991db7b3b408afd6a89c1c979c20302047c435bb500673065023100b66cf498ae8ca473018d9fe081ab7ffb9a966825816be602786cf739770bbaa97f65f27f7ce01826eb83678f7bf09c33023057681e7c03bc5202676cb1b0160e2a8e2dea67608f8539d8c8bc9adcfc9b15fd021046aff5a9dc35afcbc9fc867136dc0302047c435bb500673065023009fc3a10161e69191e1c5e865f137b7109d398a12087b7d395c09606ca3f95efa2fb880f389bff3e6ce6ca3cfc0edce6023100cfb1baf48b3b7dba403262a4930eacafe351b684ea3754479695dec26f2d66d7d3f8e3d308a60bfa0bac56a79490cf5a0302047c435bb500683066023100b34ac75f68ceb0eeb82184cfeb5926ec77eda09f16237a3c67a19791930306be7c38fafb626f3c7602764845ac40211002310087044cea657a0a9ba54aac62e3b9837eb73323f3a90c80b2c5c6e847cc931ccceaa1da30b839208d6ad4940bee2d14350302047c435bb50066306402300530ec12d30d97a81266d71d3ee40c4d5dc2b4caf3b9ba0bba7f9c3b420345e2d8a72e7a9af4cefc985a9e59a28fa2ec023071cac8dcdbd467bb34bb608e42cad42eb99c0aac56e6c7b5d054b0b7a1ee2de614d13ab6f5a5d5f9c8ea39525d54408e0302047c435bb5006730650230762de5a0b8e6fd549445821df6f16b187e29ef26a84686d02a25419e5f25b24b9ce1aba09fafa0077fd5da52e22ea3a2023100fd809936d05852c4c5132e0fdb2b9c7ec3f70c3a8707e8ea74948d54e34dd6a0782a803216b8e1d2471440ac61e3e1930302047c435bb50067306502305577fe27a5094bec8d7ab53a993255673fd3c28cfe93952284eca4237cbcbf9bf6b9f7cf975129c4209947611a0d47c00231009abb00057d8b63e4175b0176e2aa9cb15a95a6e199ff5009748c256948f429416700a28c8d559ecc238638d0e4f590620302047c435bb500673065023061ee5db5ab03d46c0877645d9e65eec45c26ac6dd2582ec5952e18910bdf590609e2f1102068baa73089734ec67f7b5f023100fe06c7607904c635ed2f31088d0865cdfabb59086c252536b201fcd7295cf1db67e3f52aa9a416cc3661e3c3bc3269b60302047c435bb5006730650230720237a7f4b11544a83ea2289efd9ebb0b39f9aa5892be5331cb43f7cc9cafd10f0566e7faf76fb10f3ebfd3521443ef023100dbd70ec0467c560205013a6de8b0473b4d9bfa7f1d0906fb83bbb85727b6bec73a2e41f56b8a436f2a54a3bf0d7eb9e00302047c435bb50067306502301fac18889aa12e9706bcf2015f9e64b07fe4ff0638c7c03a8588833110bab1dc3efe05a4063c0b2970a64a34c03359d8023100a85783f409b46f6b63547b7d654a42dbafb2ce58ba22c63c572643850897a4c0775f9cf26126adf8ef16ab696d5dfe450302047c435bb500673065023100995baf68de4159d06633032e10e2fc7838a46f52dcbf6530a1396af79ef0bafa9dd8a6d2a7dd8c42ebd929756071cad10230782d300c2dacc7817b8f3d6337e3b4cd61e8592a1e454e9aa422af1a19a32a326a427e9fb8717e596e61f3169543f3110302047c435bb500683066023100a788b9fdafe7d4e19e02fb73910e3fb13725e57364bbce397943dbeff4aeefc3c8b10ec5b0fdbfd574f7c8bcaac52e63023100a67431d85cb44eb6b929a73b54eae752f66f21fac04970f63f83276881ec113cdae3fb812d66ffa78f6a429de43953cd0302047c435bb500663064023006a6279f9a31ddded3db9336ae9d48d36f0fd5595b9ea72c9f740fcbceb82e556cd0a54e7b8308a1213241090381520502303e5d07afdb75618de7615218c0f58f6f070d23039c1af7ff088108c76090791f8a87f67e22e2a07ae64855ff2f29af090302047c435bb500673065023028ff23d1722972517966311e39b3ef4fbeb74f062ed1df7a44cd616bd19ae768805ab37865d81c45b2fa98dc7d5ec2e6023100df2a7d2ecb20d31f4133494585b24a5b386a43f9c9dd41d2f93430d4a931cf92ade7a546e22e6d9db33adfa2b78891000302047c435bb500683066023100f2ac75b6f397feb1029a4aadfd196fd4360a66dd0f64e4e8bc5656633cbaff1a4ad4f39da2f8cc370cba90ad20e77674023100e3547ea67b6e15b86d797a6436911962b6f17e92e28d03887f21e44e05f45ff87659f3991af74d953613857a71d94e630302047c435bb500673065023100b9a60ff3744b557a691b92e482a471840b7b7a36660b5326e422ac2c25b398f9e58b3ce007ca814de9fff3650bf1f2c302301149b09653b642a94b27c6d601b4448679b1ca5bcec1093e0cdeabbac8bed594d2c9c375f7ad5a9b7da2e97ab71904bc0302047c435bb5006730650230305f020cdd790d134f013226c31faab216d0e0961155f76ffbef8f2b08c397f23d13b25e3c31e64d99b032368f0e3c27023100e08d42d8b671eb20020a29b3b5eb33cea435aecb7878cd06889e7a3db11c691373ae5a43528384d88f9ed2bc687baac40302047c435bb500683066023100df2719d8508c233ed73cb43d6b6ca64ad6c68be44bb33a29a8cb9acfe6c8fb064ee011c732e8d16ff455f0c5b7308249023100c1ca93dc0ca82f1d373f7c1f7591a5fa6f53ca5d1de790b25989b6ef8de379a38b4772c1997f3659058705acc297cca60302047c435bb500683066023100f36ac1cd9dd2edb4217d671294d1271c1c70b2b820aab690ef8e3a6d3da5d2ac4efb060515f6094ed1328f18500c5f38023100e904a63e23a629c88b0568ebdadadb11ee9b285bc4516b28f8f16d63adf921f143dd92b324f7c06f95d2900f0bfa17270302047c435bb500673065023041098d8ede44dde04ccc358316040f8fdf1dd8df7248551d0caca5f3b5b2627002307a6cf150c43637daff7e2af49af20231009bc55b42bc4c69919a0db99864e31a86a7c3830fb062c1e0c306ef56ae88cad14879b323c5df8ea92901daabf5db1a930302047c435bb500683066023100b16ef6b0f01c00d3a7c8833c4cf625a243276c81eaa2a2a26911fa6137827d22de28e88fa1fa2ef3b088a7af4e331e67023100e3da1a17d48d11e5a73f37613bacc9ddc769cd5d4b0b48c25834747f7a2e96eebe9e515f2be084962a86d2b7cd75ee850302047c435bb50067306502310080adb4856214f92a51fe442245db01b27053454190891f647c7ea286023a075b7bc041e3e4bf3300d497c8e0a0a177ff02304e1ed7ba41b766714b7b582a2e24b5da0b406c6e260cdd82e4752c71dd003c7a56381e88516e8971294dedb5399d25fd0302047c435bb50066306402303b89763302625530223fc6d5beb399e190a96ffde5274f9376dfc82c7b0199e182d3ac90ee308628187cc88a591693900230391a7940446693557e629d94f2a1fad7c1d42f0dfaa1bc268d23cafcee876388f644a50456bbd1ba285ae564fc95fc530302047c435bb500683066023100bc062d4e0f1de7dcdf3577a31e703784848957c0d534184c4fc2e1e68f889094fb543b03d9f024291243e118b47063ce023100bda7c8bf0c467b11a3fb877345dbafa25327db528a11cf5622f38a2247df9fd613f30e0e971e9ab487b58d30ae0833d70302047c435bb500683066023100a6bc0f5e9166dfdbf9d1c3d637d4ecf3430622a2f8fdc4bd1fdc90ef718d2c0477577ceb1b72ad5dfd4462286375cc43023100b85fa940e5df7ab9234ec51c4f3d75780a74f057dfe8fe7d79b10f44ff91d7f06abb4ab72d8500202e014117de2f0f2f0302047c435bb50067306502305697f3abf13d421264619bffd8501dc90ee67f1bab9701257881fed9f4d59a0176e9392ac4a1ba87c39c464e5ea0b6ae023100bd128f93b4eff025f96c04940a5dbe57a41162876263fffabac40e7523ccc990853a820625a84ebabcb0bb884b73d19f0302047c435bb500673065023100e3ddf0a298102ab882915b0cc882c370f6962a191031bd353c05a3e4fcfbc199dca24b8e1d39fac666bba47c924b5b320230407bf0cb1b6ef3915b2734b771eb9a6d7d6d7949c38c357bc7b9af08c20687488023abd4b05d674eaae4d1dd25a3069e0302047c435bb500683066023100b99159db38b3c58c78f36c0e409eeb5c469d63500f47da771e3fb3a1798fff726a044a0a98bd2aa8f83cf11137f4e4d4023100b10e178d4645c00631194676689f8ca3117502d6ce5587aed1635bfc37f9788360bb815cefb7718f5376622d294c37e30302047c435bb500663064023004971c828f63ee13b788e8ccb45e7579a5acb195705ac6e3e48a28762157c37e89b815ac340539a7b30e1a21510ff08702301bf63b34e4d87dc025c7cc9c8e353b2e7888accffa60a052adffa1dfd1917d0828d844a8e1a18f242e15a4b6e21327580302047c435bb500663064022f574ae063b445dd3dffc1205aba960a96a8d4820cfb3528215932a00f85da73dd33e9b033cecfc867bcd5e592b3e3f1023100b87b86987203de1bb240a792f48823d0977f87cd36181122c59220e2cbcf67a1d2e4e069ce66d9468510f89c97ace6620302047c435bb50067306502306d4124d7563c197103e8c4a18e5603afc7d249e2aeb6ffe3d3005767848997fbe969f41b5841ed34deb514b5f66bff86023100c65bb8aa5392f96feb779e5a07a1fef381688f995df0d01e03631213c83f600cec70b4eb39d0c9730c2e68e8e8bc64510302047c435bb500673065023100a1f6667d4b9e5498d00edaf07e0d3dc0f6b77e367fc0d41c9aca2fecd4cd3b27be21c22af6f027d35e13931a4e143c0e02304f597338bacf2e64f9747abff6363cdd9b420af06562ed4d081fb0ff36291889456f3693f9fcc6db1dde69ce309966560302047c435bb500673065023049964f9d9fe38a5921e05e2409fcd4e3282dcba18c39587c6321a4b5e27d41c3ce26a9a67af0e20e9f5fc34dbb0750fb023100be0725cae51425ae3c1a998b09b3f9ae9c0511bd57da79d59607a6c693af14face3d96e230a9d597d6749d1b6f7915ad0302047c435bb50066306402304f2bafc5dc463278bad77d0ea37e03b8e9852de700ccb6c0ece223fcf75165d4e88f574654191cb7462ec59acccaaaa7023067440c07821d03971723ce75c2a57ce2aeb5ff3558c42850ed2d5b4a56b095e14beead5354bad8c395254e854706d46e0302047c435bb500663064023072ef7c70985194f122cc6b9c1d569fd16d8a994859b1e8ee8c18a1a0e225a58cacc08ab2bcf4aed077629350256a745b023056fae8c0fcd95782b513f5b245b6624bbf1e0912a6a1ea29fa147fab708aed37ae9555bc0778085cc7b31343089e7aca0302047c435bb500663064023037160d6c753ce055950a7311fb23a5f0961a83006de0272f8ffab407826b7d610d0551ad4835c8993baf1d2fd7a9d5ac02304f3b005982204225405e43c1fcbce4dd7de1c1dc0b70c06e087bd1cfe45d0dfe16dec9b0d0c6a861bec2077d3b5c908e0302047c435bb500683066023100ce7d8958c9a541ce13a663a8a4bac90cc74a3f22ab339718c45e46e0c4eeeb996e9f3fd426331ce7909e9b8c7a8c7106023100c35903ab4ed96912c0655cd7a868885074b0d71fdb32dcdba5d768060ca80087260ed626c4108fa221fa98afc8ac2ee90302047c435bb50066306402302fc236261edadd8863b2f27ec5aad4d83df3094cce3ab9daae82322c0fb7b3b7e821b6ccc904371fe4f8c388f0719c4502304115ea021cba728df653374227fdc274594b69cadd7e76c2cdb6cb982388d67ae0ff1f665175b9f3712cb5eb9a56aaa10302047c435bb5006630640230030441171c1d5e8c7cdd1a738ae56f4533d26b67a01ea5fe069651e3c546621d95f527490c4b90c6bd695e5c342dbf5b02307e2459c04b9013d4c32fa6bcbd89b1702c2a2daeaa67abeee5b87945e57f3e880d288a4a8176eef4ebff61ce3ffadf810302047c435bb50068306602310096ca96f609ede8273986134e0b728fa8df5b32994dbc37fa3c455df80c6186153d86cd28fece92804596f08d9c7b0398023100db281e13be9eaaa919042ef13129a9946db1ae9a153095b40efab7bc5128951a25486af9f65b423c05a83a3e629815890302047c435bb500663064023028ea3e4eea1347ef68769d8cb019a67106a8aa046a28bb5f0b19855a545df92722f53a788820ce77dd26deca8a48699b02300b6e82aa77f29f57a056458f4128fed2a77d9cda32d6138626a2f712da624bfb3ee167d46f461b003a167bdfc295f0c60302047c435bb50067306502304e99f13456ddd383b3be91b8a2e25064ffe4da2e1bb506e8b9490d2dbfdefe1f2fe98e047bde6c2bb9e7c0f4ea9b557c02310098d77447bec3040bc3efffe98c6f5ac01ba77020e6427078b1405c4b4bbf6544cd87e5e1a09c1dd34b387560268209180302047c435bb500673065023100c3de6a48f0d1c3a03f51f20c5e10b9abbb07c0e69e8bee5e8d7d6bbe0f7523dcba4b914f868126fe4b8a5644193aa36802306d06b9325fd3215c0236863e721347dfa03b558b5bb53eef6705a1a47bfb6eaa46f0956cdc3e540817d51c9758b309f50302047c435bb500683066023100892d4ff7ba627ba5354f0cf91aa309f603e50262573605e2a04fc400d0b40bfa76c7bb878cb8c7c936fc52242606cb47023100cb964f9c890596ea390c0d15e10442f5c7f30c75798942aff19824d084835ed5f79877709faff35c8e3f65c0ef3834fc0302047c435bb500663064023000c1caa28a5b40e490c807a2c41ad9e3d818b44bfc5767106ff5c8da7353eee608595ebe754ff47e4a7ca91296099b080230039a3e4dfb352b3b7c5abb6701c40cece8f477826d52138db0470ea3ee54f5511b128cf74a937e1df365781c7b7a14ee0302047c435bb5006630640230614ce753b1306d8ebe8796da2c9414abc50b81979424c3e894edec737f21ff94f42b1a6d81c0d5f45f9c6c12b1aa321b02302c443ab323c296e8c6c2823c5caab9f66db6be595678d59a25cd141cf8dc64e1e8300919f131d2073f162879373bd5580302047c435bb5006730650230205dfb088a7bb6279ffce52cd172b769dfa2b34083c0b18f0fc79bd27de7167625b7acdf6274fc07c05671d3040aa788023100c21850f6cfedc27c6cd916fa677fb53d3cc1151d836c447d5d1da410c80b309251d142967a5e557f83628a956e8c1a1c0302047c435bb500683066023100e700ecb590f931792ae1ac3ee7fe97ae37413544ede1bd9cbfab2e9b0a06c7b37eae2072d5d58de8c24889a356a25173023100e022064297f92af5285e6e73d8360df4f73a1394ccf80d6a8096cd32d3b87c2ce433542610268adb38dc51e41beacfea0302047c435bb5006830660231009c762014b56cd30b1ce717c3f8823bdf8ee35699cee31759c24e6e7f85f1a7d79d4507cf4fd86f8184ddf90ec679738b023100d2bb938ed4ead24d9a3928f3e028cfe4db4df1c0abc6c90b9a4346b265782d895bf55e30083a46d0cb04446e2b9fad030302047c435bb5006730650230247569bf611792aa8f166532599eab65de281d2f01cc3361468a009779fcafa494117e62687971c153e69c9f040f0a51023100e4c83e66fe20f9702018e1058b8f95ce724bd98d7e49ba97d9378267077f0d056f234076a15b42fd4306ac5e5268ee940302047c435bb5006830660231008928090dae91e8c30570b9596057ac1594755a1887cb43c7a7cbaa10280cdca988efb3bad4b9dc71b10e7545c95e375102310083932ab0b270017ed1d19ca8e9ca2c92598395fdad1121f7549cecfe5a244333b0f6fec82ccfe2c47e84d75634ff23990302047c435bb50067306502303b124d5c7cbf43d61359ad81b6064a38f6f2493eddf7885ebf0bc1c379d5242b994529e2a6f4abc651aa0b0b7e891ff2023100a989d9ba685887ae21fcca028415434f5cf8bd0ff0b696e9d4677b9b59972a13d14b1a76604e4181aa8d045e0482b6050302047c435bb500673065023100aaa7baf1d947586acf938cfbae1efb3287c2b9cca621d307016554c1f67a69bf57d9c9045c24d5c206497580bed389b70230629e4db4fa8a016e8b96df5bec1838e10a8945d30a421113a0b9cd6b97054a7c72843a0b36fe887ca567a666614468820302047c435bb50067306502310088a5bf5f00fb5fa5b781f1bb7a3d7070eb93ca746f1e3f2cc505767b6ef34a290cf4db1f0a4d609ffaea10f58712d2bd023027672fa1af22b23be8f75374c655a59f64302ff01775140a24b6a7e6f100e26705937e8aa29fc29e25ef333dbad8c89e0302047c435bb5006630640230676389d82cad97e85decc82769472787be4902da9ecfc63ab0f4f340cbac44e4cdf8624f872da2a83ce0c3c47ae5014a02300d71530c26aec17f9cf755ac5279239987ff5d54befec5f624936cea2397c1ad343f446f760285c373d9740cb404400f0302047c435bb50066306402307bec3cc870a4dfc6bafba7cc24958b31500f5d99412143678ac2d443ed1b2c3d4740ede4d1cbf4d3eca060fc2242cce802303d616181df792ae952c6f3fce77ae46c6dcd55a47d922c5801686904798040a09667cceb1ba5ed5ebce435612afc8d880302047c435bb500673065023008e5528bbc622a585f731f151e651023d3d9d6fa197d7bfaa463b29ba419cad16f41e0f6c881c3762ab9bfd03b24d025023100fad444bcf9769a76426928ef77dfb07e0ba6e350fc6ca89339b4f8f7c78f4daaf22d089726b24ae843deb8df8cdc659c0302047c435bb500683066023100be892b88ea775b2f5c7049a223a17dc051946dd39b781626c29fdfdfc9761c08b9a91dba3bbc2ea8713849ca674268710231008a9ba69cf5c716b79572f29646a4ab082cef2052947a806f92a875ba0f2a50bf90860890b9cd594658e4ad26ee0e7c6f0302047c435bb50067306502307662757c576150198b2458ef5df0365e0bb7b97fdfbd290f843fc9d6be789d27c417968365e07c907df1f5f582de3966023100ab587432f7869c2f22ee82d75c0f7a2d3b0ff2aeacc1797a3db18db917350da3ada533c397596e15d7e82fcd05d56a570302047c435bb500683066023100f1b6c1dd13d7009e54f5920d0259c8e39f7bc5d4646a32aae736dd201b8546baab37cf714a392ebf47296ca3c0f44deb023100e4e112619fb8b404f1f589b7bce89de887123074f267c75b01423480ec275e99edfaa9a4a7b0b74c2a5bddc1c0d85ffd0302047c435bb500673065023045dd49f07d855235a552dfa48e865a8f32558e08c59b8a0de53db12892772be9feaaa1fb44ac1763c545d977ad5c0d1d023100cc373adb76290ba5a6af07c81a2d329b42ad6f650018b502f33bd8a39077369ed95192b48dab11c436ef883f77c744dd0302047c435bb500673065023100f47dad79594cf35ce4b12ec7c45839b5e26f7c73f756d2bedeb0acf983d6d86351d29f6cea8158986e48682ded66c0610230668b87d0fef5566af19fb3d55ebb3b6e5c9ae3a56f5eb40bf1ede67252a84b1318c6fe48f671a997604f0e40b0b49b950302047c435bb500673065023100d2d143dde7fcade52a6dcf5d7b56a94345bac29a964d69e2ef167348ca56484204f3c9c30c8e0b641152938fc95667d20230624e4667eceffe6947d8f2a9ac317d76493e8520c0beacfd4a931cdbe4d44c96269c13eb7c2e5ec02baa285ebb7c250f0302047c435bb50067306502300961abc513034dc1cc7fe462f34d61ee33fbb78c40de1bd588b1947eb1535281755f669cea3d012af6dbee2986fd4793023100cab148b3bc4d561c3d0223f829fd521bc7336284a35eb640d5f9232d28afbf59cc0ceba03f38095581446be6ba22d5ee0302047c435bb500683066023100fb1a5ec572c5728c4f707fdf77a7215db28f5ec9a9f8012583ed08cd614f2b058c26c5ddbc23ba2598888645e8f6ffab023100eb3ab28a79140482655141b1a2b7b0ddf21725b14296a130a816299f23c991daa720d3c969e551c775d4e38505018fb50302047c435bb500663064023033ce5d9ad32b67fd6713a844ffd2fb3b5c349eca48b826694697e0c8b656201a636bfa9cb79f0192b5e3048ecb3015d7023070977b3ef2e4cab438313edc990fc3188c87f9de169e88fbf97ae823a155fa65566e04c7f5bd4e29849964fde51064d60302047c435bb50066306402301d1016b875f0012f58f0176e8bbbcac43fc078034929ebade9360ed50631da8324f4e54a2c4131efd9ea59f82ba082ff0230512bc155511dfdde6490d2e4adb41c91504bae4605ab0acd941bd6494ee7971f0d2b74cb0e87b1ba53a50d03bdfb93d10302047c435bb50067306502304b7085fa9d8b112652b2a9c3ee0a1dded12d0231a8095d55cf20d19dc52951f1d287fdb04c4a887009781ef151730774023100d37afb45c51cb1d5abdfc31d731c4b940544935ce3a6e2a4b17ab48d9ed7f52366a7f4dc4eb605af07983cc2296d9bde0302047c435bb500683066023100e6bb7980032d8bbb3f8605b8d5152fc8fe99718b913dc28219d7e6bb29bdc10c321169623e00299193c2ea82005cae5702310084e8ad0df68ac91ea297231e898db5abbcb4b479b1940ac98662a0d68a0ed4702bafdcdac71414da345de076c97a39de0302047c435bb500663064023012a598d6bba613b95150c82dd0bbb942de1e5dfe5de22faf0914de042784549ffee1fdbe8ac364c2896adceeb6e55e5c02307f5e3e67c183a445e4d0c2bb35fdaab538b3217eb14d609cc7abba934efc022d29821d809db7dff318b53b542fdd33d90302047c435bb5006730650230595269eec1827a4f8d010553bbe15c05c9ae9c8a9dc2bf3ab192c852e3b37ac5bf41b068005a9f4546fe0223a443d28e02310096d8cc46eb441acd2f5e17c1be2b5e36ad378ec0ea06719845fa9903400d88f3b0b324c7f4be74cc471b8fbebf8635760302047c435bb500683066023100eeb0faa1e8450a11585de9577d6ebf2a7d5b5f32ce54b2123124b857ca4a64e704f12a5750617669ceed31d9b7124d970231009e975b2a4e02770fb120a43dfc79d7a8915a3556dbd48dc6c8bf6741adb66895f8b8de6837e339f611b9bd5169d488750302047c435bb50066306402307079bee6d25002ed9f0d6bd56f13715281ef59292123766babe6b2ab0e70c9bd2555b77127524f9e95f3f981e2a279cc023005b0f4482ef4d1c654b93ee0e940efafc097e0d3ded4db99c682ec5abb829c52b1c512adf6f28e30f3b941675d00b1600302047c435bb500683066023100ae2157e96efd5f4e793407d5429253f9f2d7555f6d91f42ca9be037917e0f6d23e794c16eb288a588bfda70882febea50231008d002f231298c0ee1160df0e2fef66aa545e243becc5f1d7ef58af269dfdeca0191e5eab9978e92953acde7e7ce54b700302047c435bb500683066023100edaaf904f3a0d559239f3d165a8114785d675d29a8a841090b96baf9e921c865148e6865eae28afb08863ecc95a879730231009d464f3886c8a388a3828e7749c02cd537638944aaf5c3c1344c73b0e11bf1a91a1989389fc1d315c84cd517eef2bcc50302047c435bb50067306502302c397e867faf1201098ea7b538a86795265aeec42d3954c59bd3e882942b512151929fe05c66d9f4ea0f456148293004023100bfe0cee2739ff0deb051fd660fca8b8b95c1eaabb7e1e0d819c740fc450a78a59ff4db968191b106c337aaacd0d9b3830302047c435bb5006830660231009a8764406ff781661eb8cb14968ad8b3e9311becd6b4550e0546a30fa124074b17621d9366eac83470c5ecbc803c6ef5023100a3bf8f74ddfb852e483d750ede809ce82af3ac0e8fc67a9f6573f58c60e5b5cfa47d002776a966476dfeaa9c96e4c8610302047c435bb500683066023100baad87059b1f2e3946574cee533a72462ad1a8c9ff9a67ac8bcc885227133c899ebc00f8edfa30852dddf04b778e10e9023100dcd6a92083025c6f1fb4cdd9cef6ae4b2a008272ee2e31ae6b50d63ef8355126d9f781b8992742638744be759e85520a0302047c435bb500673065023100a1f14ff51a7861ddfdc7bc479399a932977e6ce7ed0fa28b7eee30917cb13ee19720050f232bcf3c411cae50f818d9630230196683ed6421cb80ae763d4c7874ce46434a5ad5199a242bdde262ca3bf263c688f0906ca5a266fb1625131aa34c02fa0302047c435bb500673065023069aefefb2f8afb9347ef98fa19706f841ef6fd1ad3ef3c58ba8efc126578d999353f384cc9dfaa0bd2c1298ac00975fd023100f51e5d8a91744d65114aefb79931e7ee7c8ece19cdbdb2ed98d6f26df2a0e17919e0d34012b25cea3262f9f621cbc99f0302047c435bb50067306502310099956d33c5b8d77fc30f468d4b01fd2fb9aea8c5cb77f13b84189107b9ceb06fe203790caecb9bcd597a84a07f9dddf102304b0d4b8fc104af351234074d6a7c6a4f062b868a8ac10af0fdd27eb042ca3ba792497d1ec32c59c2be05eb4c39215d550302047c435bb50067306502300b96ebefaca868e110cd018ed167950add18fc27b149233a7f53b41d607e941e9193df369a4826ec3bbf84c5be286829023100f27710cd0fc70559d702613a2441e46582ee356a7e1a3e9cd4002ccac994509ffc6d78cf155e1d0438deeb228068813e0302047c435bb50066306402303712b5e696d5d2ea65574ff909d2795a3512a4c61c21916f650fd8bc7c6b4345d49ec15c69c27276b71f9fef47d1019f02303d108515200055d41c2029b422e22593ad4323f64166ec24359ba24573ffaf40ab8d4840faa9d482e298d547af55fc0a0302047c435bb5006730650230056e08923d1c1a35a5d814e7f94771b8860d07a3699feeb1f7aaf3c5c920258c2d91464642363f751d202cb74508c4fc023100959584e1444b62a23c15b189fc40ae7fe031c9e8ce6c7a05db851406c40157d9e96ed207c4030fd0dc037ec406f62c9a0302047c435bb50066306402305c309dca0b5083d1ebdca2eb520a45249232be7e1e93dd49c169e2994b5250e63d650dc305cc41970bc2e5c1fc3749b00230012ce9444067dfa8e844e0effe7baea7a1808a6c4ef8e5d1b45f2e581cb67efbe1db73591368231061d4b19877e859840302047c435bb500673065023100d0b3d72a7187b5e2f1985a7e02f09ef592ee1f8ab2fdcf3ac96552e51cdfc7fc1b26296a8584b91f72192f6c35fbecc902301250b0753dc455ec23ec7b9bbdf01329ee8c9796adf6fd3b18a49439610c8ffa561ead4e70e94db3ec535efea7aa64360302047c435bb500683066023100b1021cb253624e8f663846a075fa5e1d6bd898e7c0535f1eaf77904b1ffd266261eb9a8657d2281c2ee9b578dae52e18023100b087254c26084af40e93f5e749bc57fbb9f0520c14414327e9c284a5fe7c70724b236cef4eab3545b67e2b252b8d865d0302047c435bb500663064023044a81a250126d52cf192cd793636af4c080a62ed8aa8f33e10a67f04ac39b03e67f36f03d78fc2193a937978a8ef9a73023016a7688fa937aa56117de9ae2c392bfbc15195da0fb5b20b8856647cfbd04f026a300192207e798c72e5611c7e9903fd0302047c435bb500683066023100885dc53637c12acd0a44001b2375db8c2cadcc9031d0799761bfb578b4596bf07e0d6184a17d224eaa14742b410db0cc023100ba82031d0711c5c38580e17fd5fd343ff0fef7ee81cd1e43788a6854216abb029b9cdf2405a5073fe94d573024d7e0820302047c435bb500683066023100aa1f2417af89751c2cdaa611d214958c1ca744aa4eb50934b255462d98677ed3aa23b6b58b5e760d02043c854f9f74e9023100f5af29d55e52f235a50547d3452d20e2b5172888ae587d4c5c11e2ec61f29d335be48e744f751ba2d1a5c1b38d80c4040302047c435bb50067306502301d62eb6001b2f863affb71197583a32a8a27f94f0b9057353042cac699de29f4239add2b20896bb1a0971810701ae7bb023100fab67684a879c88c638350a6b4015f8c97e342a5873bd362761b59fcfea155ad5bf219a5f8fb627cc242e052e5c25fc20302047c435bb500683066023100d3cb566ad786cba7f69b9c55e05f3e4f13d89f8b408c3a4b94db9536c41117e2a56217a72ecea024877e0f38ecd1ce5a02310098ec3833feed7585b1e48fe710dd7390b37e7dccbfe418dbcb8d378921aa4c3b4cf078ad8b437bb1b0eadf9846de892a0302047c435bb50067306502306b333a224ef508fbd9e41b0b3a62889a67b7704f43fb4a97acde4850ef62458e3d84f61d03d441d740c68507017a9066023100a6d212f7ecbef05c9aa0ffe022bad13ebaff07949a1b9ff7c46de5975cf9fdfb67d5582f0242af928b110f91beaf2f600302047c435bb5006730650230504283e15d9bbf246b0e59c17c1d65b1c5f3a1d75015b89f1518a82c929a58693c4e309b53be37fd3bcea57b80455413023100b941cc1ce283486647d1f4f1fc2a32eeb06a333c007df05c3fcc74f82de9a6bdcabb3bd991c7a1066e226ebc40c4e2870302047c435bb5006730650230425ff82c01ca03d3a296b9ff68f0fd6e671d299662de39f88f6720ec5edaf04f83af325d8e2a34503c12d3b00b40e853023100f184eae530f646d1f22ad7291565b35abf3c1a91633bd8ddb955b5424aa0cef1671793a66790a63564937e099cfe24bc0302047c435bb500673065023100ed7e9d42475c8396b81fcd1c06f852ccb83c01fe7878295c513dd7469d966cf44f0cb6ac84b0e57ac72ff6843066884e023018ce581570ac7a0ac8825410cc404bf7f92603255bb9d1ae1631bd6378eaf57e399b6779b8959ad336e528b395852b050302047c435bb500683066023100809ec9b85ea31348dc303164305030f366793cdea2457f55061f053a1cc06151ae1c1f52f9d20b43dfdae8fbae77f645023100f6476dea267d435e1a8bd151eb2b8a1505f91fe6c88675753d3f1b2b9612e1caa0843899b2cff01ee776f5e277c91d5c0302047c435bb500673065023100ae31b1d2ef8d4a80666f58e2aef395f0671a490869e4bdfc3c6ad7f0a25d0ff0dc24c8c9dccc4c9e7bd006139951bb1c02303ace7fe9ff1b972ecad321aec05f4d382c5677ed0484128b80b3444bd6c127c40ece915fd1035dd5bffe344d82073d020302047c435bb500673065023066761f1c1df5df53bd1b32c1986cbfd9acc6cdd63280bc35c191ff459c8165409f4cfa9bdf88cadd2b35796093942817023100833cc58a2794fa19bbb5e4793a81cbd1d84dfd3596113e476998e0aa0811f1564d4c87e72ba94f3afda130e9049a7d150302047c435bb500683066023100e61b0c72c5abd271c5c12bdbc10a75b6965e764161b2fa098bc217dac99eaa4017540ba2c61fa30235a4e4261d5dab97023100a129eb7626275eec21fcc82fcc9a066b24a3a5ecc512aaf531864ae9c046bc2e46546f123a110cd94f4ba131ff3893ed0302047c435bb50067306502300db1636765435184aa056b7856c3960ada66dc57e4ff3806be50d5c0a977b16235715f0534be96e4c680d686edb67e0802310081aee627dd4acbd0cc1f6085a0febb6084ebb661da0763761c103ba72d977072d9f422b8ba8c67c30a08212ca84dc0da0302047c435bb50067306502300bf3f8054cee314a39057de60b75d5583447d6d63de9ea30de5a3ec694dd30c2b2cc01989519cae7557fbeae6857ab7c023100e17a2a63f18b2139f33b3bb3a844c84a0680e3c0beb80aa3fe6c1596547fc8352de3c145fb2b455ce5c12b02e94992920302047c435bb500673065023010d2016bb03f72e3a7d82f547738815abeb92201fe5e982376b0562a710f60659d4425c8ec155be296a9ac90280a7da6023100f70631f542d72c39887c8732ed7b3f959b99518029ef5aaffd483340a649d8eb7ea79d066de8067abcd993df7543e7190302047c435bb500673065023100b11793dcdef4cbbc9ca69c5a92ae89dfa886f055145799a288b2d29acdfb97a3f013db8952c49cea3ce0e9673da28fc502304437e160881c23d0d9468a4a6a0323484aa04e887b1413cf73b2d3f65636a7d43866df7bd065f5c7850d486fb816c1940302047c435bb500673065023100d4e9d5b613067a8b98b835c7bb035d4109e62b18ae8a200949f6fc70ef6058617a49015c01f96895b2c4f0a049b14408023069e4c491e84aedc24e251857e4b517b073fd52d4b96931ecf2ad91080553cf7cd89dbb358c2be6f357ffba62800238840302047c435bb500663064023071fc905379bc12881079c92b49d04a355092bec9acf3c1b921386df2a05249cb8e0d10e78b83f37c30104cadfe0b4f960230680c678c7038f37bc1f07f0430916450f97e3c09dffd73568b1a01b3ac5f578c2161feada5a6c233e10fccbc19f927320302047c435bb500683066023100b79bf92544a181130c0339a53ad4bb3b80ccbdf9e44797bda34b01f82c42e36f9d472b9221c3d6bab94334be28df89aa023100e94e2316ec012654fe98b32894aee16574e62500fee301a5b13dfa9d59fc62ec556436281cbf4c5b247f524b90ca2bdd0302047c435bb50066306402306419b624167bc6cc13e4aef7f655b702e23ac3946583a2025d37ca9f8fc7539ef8baf10aa84ee3c3ec37d4cf6c596902023076213bdaa0b8b4f628e1d85cef298c165cfb2ab29a2704498f6e7c33e5c03ec2b6d92e47c206dd3edebce4e1e5cf9a480302047c435bb500683066023100d66189e67159b90455aa03bb08f1ec0def6bd42f144136c516d294975ab21d7047dbf2758a7b8d5c66d243b56fcb6289023100ecf5e61d6ca95c5c1304cae8df69760ab7d271c1c85ae444523e9e602bb7a54670bafc7ee60ef10b7e3968d4d836df210302047c435bb500673065023100950fc7d6c9014fb8d6ea1355ff1637dc9d6d39587d503c2894c86bfbb91da04849030f5ef3254c0821ae1f0822f261290230505833eb0aebf498dc306474f71bbd3431daf3c3d70f1bd023a12baf586fc89e66da712f6de1165864d942e7c6c593d80302047c435bb50067306502302941ec0f4c7dc4b41ffee262f2a1bd09df69ca5d552d75868933124db4406ea45d83f01256270cc476854fe604b88cf00231009ab38807369f708bc78363f60833654505a9970c17b89144fb74bbfbdcdf53ae00530f1122327208eeaf184d0dfd268a0302047c435bb500673065023100b039c3c7ae6d716c7a6e612f5306b17a342cdd0bffccbe0939fe8bf9d3c5f3477cfd5eb51df18f3b9bd491e64cbfedbf02307c538dfd19e49baf0ca1657dad44d9a51996fddec04c4a9c1ef55c8d8e0798a2454c62bfbc4943aede7b1cc8e1d068eb0302047c435bb50067306502304a2d076eeb7cf1c9bd6f85b048b09e1e7bebee4cbdff2e305dcca9dbd87bbb73d7f4ba9edb10aedd28fc0cb8aa8422dc023100ad8de4c4ed73e9a0f6fa945a30de02b50d54bb3d7b5a0a0cd6fea441442d9b989dba77c68a645f863c93f17f813731140302047c435bb500683066023100da89b2c8733bf2b8bd13571ecb612d677efefa201b91628723cbb086c9a916419e7f74f7244c2590e39367621aa7f2b50231009675666244d31a090cf7190a25c35bf2665695e5d3fca6e0534e41845871b81a7fb7a5eec49e04be46624338f73d448a0302047c435bb5006630640230253b8920ea20cb25aaa73a0d7fba30203a5b9e822734af10ea3ba5c21e40546b25fbc0247fa0efeea2ebdad6c483db0202304980aa05830a3be1ea011df927c77bff65ca45c6311f9baf6ada7fa914fd01a2cfc7ef064902e96986f446bb269f31240302047c435bb50066306402304369852e3fb611bd483d6146f65ec54bcce6f746ac7ed9597354b89223a1623afe1ae5ee3f7820db016bc60d4cfdeb5402304d46f9bfe45d6e614a9915528c1b45367cb3b3cd09bb4d598490334522f223fae99749836fb9457c6b7e6b15e77f25460302047c435bb500673065023100ff5d447897601e736e026f7a1aaf87a4f1bcc19da8e0ccc0aa5ef39d1ffad6d6e62d19c6609796a1e2b265203480b4df02300c8c9de823a7a031a6b089242413dbb8cffce2c585efdaadbd340977851967b18ccb1640bde68ac516113db02a11ad940302047c435bb500683066023100d5a153ef966fb4e74b9eb1c4e374f7bbf2c6ca1fbaba2eab92624ae806458c4447e4dcbb0178286b8076ef4801832ea30231009e0f8650b863769c6d0b26929a51cb242754492fcbc03649275ee14b05c5c419d0e17935e0237e218aa4caf4f5219d6a0302047c435bb50067306502301862d203f4bea29a080321679bd33fd6d3ef6dad16544df3b4347d04f84f0d6518e72658ca0fadcea7c9f41ceb8fe6e8023100e5cb04258cbcc0d4c3203c4166a209e2a82ccefc2e3ed5f9c1b7ee41048aa2b8ce84d5bf4b7e5b82c6943558c69014c10302047c435bb50066306402302e014ff36c43143d6c3b8505e246f677a97d158be27dc55ea0ee26ee439c276230820c1c18373da1c42e53c97a91564002300bbd0567cdb24f1d94ea370956e802c0d0d15bb9ab5002ecb48dacf2202b6d33d52710b7656f2f26b640965e8fc3425d0302047c435bb50067306502301e96f41c22d0646c00739e93f081a2de0c2cd53c1e73431d5bba556c51fc52e7258312082e6632c8f3d6bedde3cd1fb6023100d7c7bba20bfcd6e9b52ab5c2f2e4694561d8e606daa8f1d9226cc6a1bfaacccc91995aad8e8b1b0dadba2f1fe07f24b60302047c435bb5006730650230564328f29f314511ceb79348559cdd4558089683651208e1aa4549666aeb11eb9510648cc361206fd238d702f0fa6e610231009097a73d662751e0602a732f57bf0087e47f079b23ead1da4296458f28435c4af23e5b117dd8e1fee9498f4ab8ed7fac0302047c435bb50066306402307c53794ba5f79b13fdca8acf13fd2701af39e9afa2cd16e85b00e23b7908a86dfc570928a1b5d00ae776a8515bdca49c02303b5ff64509ace424ee623c4281ee55dc1d22ecf7023048ad8358d6bac2df070d470e3a7937bb7335a5544bb06ed25de10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fa6e7fe7cdfdb4471dce131bf0d7fe1f3df336d74b54a777effd416e4f71234afa8a827d82f7059528dfeb470b6e54e0023100ae19f282fd6c6d5d85b72f3e91d31f9d4e499a52e2165a6125f652bccc1cf2e1280f396eca2b6f38efc896f320e9e8da0302047c435bb50067306502300fab65f432b3d91ab06176d8be4755b8cbc17a0afe5a520e21a653d582e89075d911b8cffc97a3f017511cc944ca84e3023100c135f11142251d61a3fcac6efbbb5d66dd2554023fb1af49ff892019a21999732f2194699aedd9a21ec7562e7b3d0c4b0302047c435bb5006730650230009d0e409ea358892b8b9bda6235bc8fcf2befcda9505867a68d822950ae0b36be2e4e6ea6b87d53e6cfe60895ba09680231008f65e856f7267fbc9bd4a792ea97dae16e3c02fdfac2267f8c5034c97397891ade23e64eef8ff3970f1fdb5d082adf270302047c435bb5006730650231009271928533585f8e69f6403d88e7ff483778a4fc6bf19f7a96f39a26fe96f64d4ca43098654919799e58d1a8183555e002304777191eba9ffd13925a4778d4d93de2bad26ced22af18c754ebe2ac95dc9c69e937815502df0cd4e19d27f5ebc59e1b0302047c435bb500683066023100d590a8caffd1ba7f28431b025d50c3ae121cbbc61208c3a6acda1c81736172a2355d8d6b41b11e675345023c35c38d98023100870cef726bdff376659e82feac9f16a4e5c1db75554d28a783b9e68acd47a5e7735c4a4346faa199be7210b86cf520660302047c435bb5006730650230272d7c06c4d7d6728834e348594cc07876a952fb1763af4bd2eb21c7e35546640051591898e2b3ef0e2fc62eb355e25d023100ea7b540c63d709413d2a9580428d84f20cb3895b0c27f784be4b5ee16435b2477f37df5d1c052787b0013f9fd80d6c1f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305be834bf92e65e8a405cc5a6683619ebd59947fa8632223a52af9059ce2317b8eed98532057bb8075ab7d59c1622bef402305687b188e4a628700fd3b3dabcb2eecdf0c6688b80fca0887792af98e21729739becfec2e8fe3fdac2886c95ed931a890302047c435bb500673065023100f0918697dc7a9c36e033365fec5a3c86c7a34679c342b2c1c3be318a12cbb2de86be49139745783ecca0a5475b320e5f023043d954acd93dbca1a721d54a70355e8c244ceeccdb8f37c4aaf15f9b77c783b70d861421ff73cfc988dd5058a68997240302047c435bb500673065023010dc4306eed6b03623fc630592d93f3ce0719c62acb91434cb8561bd4050fc096df3c8f5afd3f97a5e2dd582d5af81c80231009722ad9b14b549cbbb3d12539c5d78565b5281a6e8e696305a3d29d99c1e4e3a2b6dc6562dd0d1f4ed1e47540103b4960302047c435bb500673065023100f37a07cc56c226b7ed112685760580fec042d854ca336c47f4767a103223a00dee4718b0eb82f37ed260e85852cc85d1023037b5e60ea387238463a42cfffaacd9771ec507c62dd0eee06f70df1dcf23539f340c050ea0ecf8eda9c6df72c5b6252a0302047c435bb500683066023100a40c84cee49c0c167c97082640510fd4c9f1accf8b09d2568b8719ecccfe98d9963a301d0fa820c57b04b268df394d33023100f9e0a48e9b32c18e94889b42aef99415538d58c9d25fc68c8b59ee369e4ed7e91a3424728ac296a36166d3f5171033970302047c435bb50067306502310090e0b2ae0a7839036ececc4ec05fb40f588319e0228aa66a95f90b8b989b65c2b56255f8f3145c4c45abeabdd004fdb502303d95dad280ca63a522955a2715f9d2e74a19c831e8b35d939cba6a78ea77198610e61afd80e46b78d36433d55002ca860302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb500683066023100b7b3bfd931f2d8d02b61ecfeffb157848839005589e3dc89c8f6251b7585ef02c92bfd2f31c14a8cf3caa4acf3a59681023100f53f2b7159d0ed5f881955b013a7dbd8e87852ac883cf25f7d851db5908d84d1d2192fb68aef988cb466181b0ee073930302047c435bb50067306502304e5bae57caba295edd13dfdd8d9a1d87bbe6db4b280d4a9cf7b40daf8091e003d7711fe10bbb8736a2c580796d7e0b7b023100ef53cd585835b8a1ecfdf50e64b61af6772676612ccda4d2ecb459228526436aa34998c5308302374978d847fe5e95360302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300943284cbd614de703805738988654263671a186c3b39eaa770f72846db9885490d46570df16f4d393c6ac361794fee1023100bb24bc34cb6a0942c0db12a70968828fe319f849b5a086c56be09058adc3b0eb270632494626a827eceef397b89950620302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502300b6b9ce9bae0503a6000cdd93f78e7a3dbd221fa44af4a9a7fa8da7a00091f136f133505a9f90bdc86dd2d1181d6fd5e023100868a0c2aaa62a79cd553b6182ad99fa56dbc32eaec1ed35b7aa30b0e950124cac5d3770135a8d3872c52ae5740965faa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d25a1b9c343fdffb2afa64e0dc06e017e9c6cea62f67c4aacb0bf4663d409bb970f6a99a43aa09412fc8bbaf979de5cc023100b23f0f44e59ce61238ec445a5951c05784335ea4d5643c2ddd8b9c741ae56ae2187e4d7756ca2d92df38a6121f71963d0302047c435bb50068306602310090a6e3b787c7847ceed807c3bd260491038e068f928f922387fe6dae62e3602ce334bbfc7662ff1b84335a96cd2c6560023100a98dc2fc439693073e9ac85892e10bb841011376c45a0390262bac3cb169a0d2db1f04909e8d895a782c1a3eec1b1f350302047c435bb5006730650230777fa8bee05a2ed9762b7750f0af367e663845e5e05bf428259eb2e7970ea4ec24f7d54284772ce926280f691a3dc21c023100a5584f6498a3ffaaac8dbbdc78ba7cb5beee0ec5482c18438dd5efa336586f657418496db41a4f07d9a99a79aa764e4c0302047c435bb500673065023100baa9d7f006b7bae95e0b51a99a3859d9142054ff26660b239e26965baa6ba02500d862a94e82d27049aa904a35f0ece80230608ceb31185e10bc0f769cd8f8764d89fe762c516594656f9d6294c27b5dc85533434414fb89e2ac3b28ab50e387292b0302047c435bb500683066023100e731cbad26f5de710fd1fc22669a31e0a725252cee1c72c338a87a69ed099a97f1459b7d72bac4103e53deccbcad27c9023100ca1deafde6a20e709a028f0007a9e1b222c00b2b99c29ef6ac036bbcaae045297f5afdf71d6d0e40b0a057f66bf50c1c0302047c435bb500663064023079d235d49cf961f9ac734ab3310460419e8ee0452748457c507c64438e80b2e3ddc006005efe3a594c2a8761e5dfd799023024f58648698c9a01b35d6358cfae89c9e967d465cb1d88016948b3e4b0ec09d0926d7c2bfc94da705e305d7820d81f980302047c435bb50067306502305cfd32fd1e17dcbab14b489180a8e304cf50b58bab53c4519a3cc3f1b103adf96fbaaedfdeeda5e64a236b5d1e585f18023100cff54ff3454221a368c9e4aff022e1a8279cebd376f6960af64edae006ae1366f738eefa6bc88f74eba82841931384bf0302047c435bb500683066023100ba71042e227357613fc5b1c97acfd23c5c0df545784806fd9d3337a96530de5273bab9d5c7078ca24918ab15dc368798023100826c3009da3aac8102e88cbfcd50cdbd8b1d3d5d20647d4959508ec2e5472975aedde368a06787a214514a63bf760ec80302047c435bb50067306502307a5564f19c49b4fc34c7257e5c72a99fe299a1b78b0e7dedc7d0f12a8aac590ae33f6212881c7521cd6f971c1f0ac45c0231008a60bc223a4e3be4f25e1d0d8b8627611ae04939a809a091c1d4eef639504a5f0c3284bae2f1d4cec0bca66c9beb454e0302047c435bb500673065023100d7c6b20ed28e17e164cd119d0e03ad969fab9803dbbd8e6c1dd69e4eb24d46062c1253d8445245d31b64a3e874b14c4602301d2a0362e3a84a73a064fec29f708c40ac481d2240b92acdefa73f5152dc9feccf03f229350547592d8ca63d1f6a0bf10302047c435bb50066306402300b04fd8f397edbe8ea453c4dedca8ab2027624effa68d4163abc2f9183f41cf1d2c08aaf167efe8ae188abb05e1955d10230342a82fcd43561821781572853f9695ca9294a527287d63036e2a36631da63f5a81d22fd1186c6064883932656b3acd10302047c435bb500673065023100e8098b629112ceca8c2a337e988ab4312b2aef52f2527a60e8bf8f77717367f3aaefccc36c01c5620acabfe6da9d51e7023066846af1d837df26683270cfd1c47905eabaf33954273c0e1a64628dcc9cdc6928c198d389531397d7e3b9dc9a3a3d2d0302047c435bb50067306502300e5757177d5d7fd08cb49c4e583565088c18c8f57644843bc1a4d0866054501fa663fd22d42a5d17b69a1d15d52c2b63023100d5ac5bdf2830270c562f3741b6d555c498361e9b3f29d23bd34c3b210d9488e07aff593840481fcf1e8532462538dfa30302047c435bb50066306402300ee95e8eafcef10f305ee9b80ce3cad7396680672fd7db42592754ede3baae0b72efd37231761cefd5415188b211582502305807c2a45b02334ac9aa4175eb9e98e566ddf6b2bd2a8333dd3ecdc584ff2f45f39da40c7afd41d3dd3d3648272a808f0302047c435bb5006730650231009bfe63191c85e64cbdaad47ceb00e8316c084fffa58f26329838c3fcbac9fead8702253b7b48c1a369f6780a540807b0023051738ae29c04aaccdbf669ea6149de1fba27fe6f6d4889ed33dc09f0c12df0601579af2e06d02e50be8da09fefffbe500302047c435bb5006630640230327f173fd65714921d32e17d6b71040dfeba30d91ca3ae542e2ce7242b5412024f76de0f96745b41aa6d73643f07e18502305046145e37fa6bb3337ede40e8601efcc1ab562ac6d5c06bf856c4a7fc9c459d3cde151dd9a05c8a5ec91423dceab3df0302047c435bb50067306502302930ff9ad6725ac34b1ed51681aac461cd5d4603e750009f839af60b4899fb9bb8ae9cbec57e7885691f8d428044eef5023100ff7de1dff3b7dabd4988eb3f106c71bf4ef8bb9df6133add7e06a50a7926884fc3be1565f20c01769b782ee58f42f5310302047c435bb5006830660231008e590ac6ec81845cab1a9009c998a6cb53efbf397007af26e86e43beb1d607dde128d38bef63a034f2031db9033ff57b023100fd87fc8ba6cbf9cc7aeeb88aacb3bf65ec41f0c1f02e1c1f65084c1c47f8cade13994da000ed0cb176b8c36e9fc67e0a0302047c435bb500673065023100f83ecc02f67f9ea4c6a60bb97808cfe9581eb76029fa80a673f3fd11c19f96617bf1421fe012d0e353e357b5f71ecc51023036afd4e1d995280f58893398fc67ba01d5ff88a7642e4b2b6a2db563dcca65b073b08b721b86d1531e693d3ff4dc0bd00302047c435bb5006730650230366ce1ec569152a9987f27e05b38cee4bf9a12f75ad49a10663ce2b27367f7f48ccec473b59900a7ae2bd49b72b2c63e023100bfbd6066d74354f80e1a936c2c5f53968a12c8026791e70bdd7c383ed162b6b7b7a03012b6ab129f94e6b8deaba8a2af0302047c435bb50067306502303a56bec88d025350bbab3f8bfecb39621576bb2fdeaeaa801c584c5f0046aafb60b8d5c95c579d5f59ad9f3adb104438023100b9f9ca100e0b9918299df05277ed97e9e2446517a51fc9be5d9a1cff805fa78dc7b365667832042653a2cff9144152270302047c435bb50066306402305d46be911273d2fa29765747c134374399afe998a94df66f166677114faef065f791e064edc9058d1d3bd177b4c13b2f023056713df891fad28e029afcd672ba9f8fd74ff9cba7b0b77cf8b1f577cdacca1f30b1333262e24e8235eb98ec2788fec10302047c435bb5006630640230625eb463065c029ca491bee5ab67855b1bc4647490872bc9e08e220ea379d5f28372acea654e4e4ac53512dc40740e60023028f995cd6f58335c8e34ee0d8b3be6ee0e31fdf92f1317598ef2fa52a01f183ffce3b0e04cb116a1d9238a271551499b0302047c435bb500683066023100a86e99c19874b58c2bfcf50bf06b66cc1402828863b6da10f9e7e3ce6b566141fd8a3c863e3227097ed21aed4aceef18023100944ebe83f23fa298e420e6a30bbd238fd6aac04c8ad6f3d07b1a4f4a9e5ddbf430821da699cb6a57174c2aef734117680302047c435bb500663064023074b8ac45e4df7c1f2a1a4847e6f65e376165bf0fc68b96221fe9c069e418b418e42a160816718a1859ebc22a8cf3719002307e96347e9e9519e27e6758a9c594c9e97bcf86348ea2d763d19568b5090d5529efbb907dc35faf4aa159a843911457d10302047c435bb50066306402305cb84e45554e1ee228ac2249b264fc66570aaebd8372e6999e3a54851b6fb3e08e545a85c7a1112ff299e3e416665649023065128de254cc80caff29e543fb40f77716f10fdaeac7769941a7db95afdaf17880ab30377ea56c82f6b4f51590fdd68e0302047c435bb50067306502301a9ce7bda1a1f1984acdc12b6af2cdd791ad241e4616d322d7721fc5e48224acebc77d3dec88b0c1110ca896d96b323a023100e83a2c9dc4fe879cc87b789dde69048aebcc6073a3628c0b4c9d425fee75c1bbac7180567679ccca49b6a6eca8bf59830302047c435bb50066306402300f1de6962249606ae7db3883dcc67612928049043336c088c4400cdf7cd9b1a18890b514dad238f10eaf2bc65130040502306425482fbbcaeb41e33e0eabd76eadf873694f6968d031b31279fcd0e045e56dccb04e2fca544be69735c6b8da4a7d950302047c435bb500683066023100946968dff06ba50807efe4f0e3114f4afce03862f8b53be80372c0e30328b336e631ed4a89123665d63e21f59db25bf4023100c80e072c1dce59559d780bdf4787de977f3a0c7d532c99fba5f25e68dc49470957518acdc685417fde6c2f409d0afd6b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e025ff906234f2ec21c1049cb914a882a14ffa8687797dab6e35d51d303f78c3a9434230948ef16ad60bfccd4069bc04023100f1d6e59dd87e7934a8f84c39979f9f1729e2ba05271eee583ca1dd99344c0c2834eb3c9eff26b427d0ac5c877a89cd0d0302047c435bb500673065023100aec787eab0ed7cd1d4db1579d99ff2540e0f6a5fe77259dfc7eb6ba989ff8398466fd24e6c967a1ac8028e28db515fca0230496375b1f147bcab5dc250a87bc1b94b8a3eac6e3c631eaf44888c9df738a0eb82de608b1021c06ff6d0510f3eafde050302047c435bb50067306502306d5bcdeae937e71fe14a520ad4a8c5a5f4dcad2272c38a20612a77763a52fe185cebc58940c82bcfdf37bbc13db9bc88023100fb3cdcf82b8db6e0d88b9a5c440b8e16cca2e39db977797ee48f729a2da12bc7ef52a70a0ed041d9549f19a2536ac1980302047c435bb50066306402305b79c5bea4885969e2dc03644ac32c113edee190b48a82b3b597156a68f3b82a3213e3f3c4ed57544d0d6143abc7d2f10230437b56a8410bf71b01fd3e8fcd9fe943f45737a82858bcef2f7da66de0ba96a636ff70fcb731253332160419e613d8290302047c435bb50067306502310099923fc4e1251f3dc6b167f89adba41b207f59921ebcc6aaf63a2d5d7eeaab7f74deae3e8c73a020c223d05801d66cf10230641c738c7865ffa809227848019d287dc28353ce270e86b47e652c995307bfb8b3862f37b6439baac5b67eb883b39e5d0302047c435bb500683066023100e230c554fb87065a0f3b183bd43eebc3f059ce65ff48d9a8f0b5990b0c46a976b88b1cb0a5af25578acdfbb9bf06a924023100ae077339eacfe52d322c35b3f742b9bc81de16deecfc7581e86595c43032d5e168139de28ba3a18dae1555d2d9a92cd20302047c435bb5006630640230398d197ac3bf9d7c4ce2b96f23c69204b11b2d4ea9f8946d71ffdacb0dec37cc9b8b4435b5f8b0d818af56f0b44781ab02301b16f66d63cd2f620c8247571ac91062994825b2294c7c8407c3391242af5e1852e4f7fa33b94c266bee1f52c33398db0302047c435bb500673065023100fd7fb20bc7363b2eeb97b3d4b5150bcda73c5b6c79717e48dd72a97ec0f32a933e16b652c05486aad89c786d822e46a20230703de91fc39f3fa5e33c0190c183256161979918a9ed79c6e8debd846534972843eddbe0d636431c1712deb320daab540302047c435bb500683066023100a876b4110870da8bd344f73b35e59025cbc4055001f9259dd16271280572242f90f9bdfda2a1a467f3cbb65bd2a98780023100b70d45d1e0a03e65cc901fb4287b29d7225b12403539032f961341a8c0fb4149c84d7b77fb4c41574a408f3e61360cc80302047c435bb500663064023059971308aebd359df938832ef523d3d91fc9fabe70845ea1dccde36cd3376726974ebfd1f142d6c8de6a26b61e561444023037d1720bb3c77159d93a20904797faf69a8090f5e4de188263ef4a1ad82f548a4d4ba17fd0ab13d5e9a41c5cd7a15f9d0302047c435bb500673065023100f216c6c26c5f24d57ad5defb871e9f49632f0ba39ffcb8abf89475466ee2ff768eed350f88d999d7fa4887583239782a02307d46e4a2852d995bd01cd8c61cb4c17dda05ca4a45dc3daf87e872b58f821536b0eca071a7f9edb290754133adf62e160302047c435bb500663064023005c1af1e8e5507a0d58f232c1431e8d6a681d9a7a03764e2eb3ab62b4f214a8863fd4e96d82002e05f5db836be47942802304af2595a9b5d88de9bcbf1ab4fb12e3b5b61d1c9d802ad4f4d015c11634828ba7f2dd785301aa14074d646f5dafd76f90302047c435bb5006730650230765f329f6ea12295ab3cc64f2343ccb5f072b96c7d1e11c6204a23f05c8a8e5db3e64af65068c7e6bc18ee479d48eec3023100deb9e10a7c51aec6dd0908bc50f5587cb5109e78f0dab04775dd5e456ef1e201b4b954f48f89801af5dbbe9953e5bbc10302047c435bb50067306502307c344ecf3ffc0702fd977fb98e8a651c18efbb8c707836fa4b87f47c7ee49c0f3f8396a3d8d339a00ce6b0568b1812e7023100e1126d47b603120d743f20b1b73248e66559046bcde44eca9e1d74b665b507c3470742099b97d4b013fedb5df2ab62480302047c435bb50066306402306d4e48e68238ddda0886fd9d5cc5c462001dec3a484c5d97e1bf733b8d1802e3b79642e5fdb8c143ed9119217f0b029d02300bd0b4f8b4927a04a09e96e1f4c81a3b2556ec6eb1af029f0852113d410d2aca210a8da797a3c3a2c059bbf9f3d9df720302047c435bb500673065023100e16ce64d05f4cba1654dfa720e059e7777d7180e0918e1342dabbb4d9f8ef872ad8f71d6e94cf492380ea9edba8d19a302302bbe4b1937bfd15498e006bd2a7b71bf6e538fe744b2408e79b9dc70084d83eb2647937e2cdc818b1bf3313032d9da4e0302047c435bb500673065023100ec08b314c7a398e07bf30bd2a2fc5f11314c45cf3948063abe7dc468f7adcd3ededc26c4f8c8f313ef2247e683249a4f02302e43a885f3b236b8a8be7771497de9d1fbdd580b48a45f5c206a8d66bd6832a92ee8f79a4fa40b4bfabc65f10196fb1f0302047c435bb5006730650231008110579cb1de8c772dfa2e2cbb522067d0e204c4e8d869b2800b082db2167131a1b5782b4433c3a00ceb6ea8e9f9080802301219b9653091ae7d550d2e5263edc42813a9ee330c5e8b01a17ebf0d3ad0bb4f71985afb85913539298467538c39a3a80302047c435bb500663064023014d0bc108cb23fd99b76c79c4e9306fb1b85b704aa984874f7fc00a17ee2908e4fe051cb6a2109aca4d637304c7e15c6023056a70fa61644096518b896b06643cef4ff77029020ac3507ea13ecce87e051bae403d724ca60bd18e96e3fb35d6758ba0302047c435bb500663064023059e6fef7750238f588c015ee0dc8570df3ac4298f6b1df8bc2011f8506e095aec72573749a014ef32ff941180dd6b129023009327c8079d2b03b0eb4a8a7f3ef15d3c2365d4d0ad3ed0ce51c0ab82918c92acde86f632e1c09f11143888e80946c9b0302047c435bb500673065023100bdfce9677394b24492111df9537fa444500d040cbb1a18c73ebeba576da8f76d42533bc3e24b9b88843538fd3c7e475b023026846f9cab4c8090f977de8046730134f188d1c6bdc9d69596b9efdfd3e75892a26b4bb8696d373ab55e6e1954e1fe7d0302047c435bb50067306502304c154b9536571e7dce93e3fe70c3b9081f42db224a71e7078568f66cf176ac5c3b765ca474f536956e580cc6bc0e6929023100f2fa6431b34f326d824da68168a73ac27e5bdd97649b729e018007549464dd6d94685d771cd20da84d0275fc9044a6d00302047c435bb5006730650230253888d63a38178988c2280cb9398fc2e851b7d0cef54345b7896b7b3d12a944bf9042642bd53b602c52b0380d36289c02310081cfaab4d51049324b5ca9fcdbf993f4616f827dec785182a2a13b9ecee6de8b5ee18b0271056d68f1ec57dfbcdbead90302047c435bb500663064022f469eb569e877355972b76aea1432e1535ac8e5eb803ce8e85e044db4f1bcee7560a05b1266562adf3f6c7ccada5558023100dcbec12bcf970cb93e92fb5418ca98c664da2c7bfead2699f6c23aedb546c76d751da672c4e946454c2a085c9f18f7880302047c435bb500663064023050022b72d3804b0b3626a2929d1b3891a6678893be23a1750a71b70a88a7e397bfa0c1cbc7569dd71b60f56287d6670d02304464ea552c64e2864198f1d8668a18c7771aabd71c8ff7a386dc09bfbf8d4e092adaf3cd4320078a448a2647c9c11c6f0302047c435bb50067306502307b8cce84ab6fb69a5da9bf5be81cca0475f342ef9668bb1bff547298d6b3485a025a636b6ec5cf917053d787050b0499023100e3d63d120868352d1bf98fa2b9db777f3aa73e9336afd832ff443e5cd748e31254273b66f8782bd41459741770faaea80302047c435bb500683066023100b0944c244badc5b39b5958a2d4a37975b927874ff9992858d7f04f9b4539052af2f52f378c4fb8e55a23538a8f74f9e10231008781fcf91baaf38d57f6dfc3bb9b1bcb5dd9aeff4862fdb04c2c048f9d557f159690903cc74e5534bb8d6a42f32d434c0302047c435bb5006730650230568d16cc2593fd0125e24832194d398f8262590af12ef2cb7f92d19e22d9923875ebfe61fb908730c79a0d77de321b76023100a7e45cd795d228525e8ce38c2218e5a66bf7114e6371b1cea3282ca5a75cecbb4c9705ef18e23ed4fff9b20c1e1bbfef0302047c435bb50067306502302c2eeb23ce2d6a6caea6d4db8055310ba2441839e79a0bb4cec6239d9ec18f7f5f938b25f76e0ea96d5bd59f616a8bd2023100bfc25a3913b472c4cf66adc33e34a3022be3241287df5a9b43a41b2efaeb9a4f3dc105a4887fb30f6a305e7d8c3c127e0302047c435bb50066306402302899b89c0de21791a8d9edbd8d60d3ffafa80c8e122bba39cc567301297d6565571a83dd244ed53029d5a595183c04be02305ca962951460eb5c6b2a9926ef525643b8f160dda6febe00595c08c3e33af91fc1a6e5dacb02a0ffd20044b74ef31ece0302047c435bb50067306502303f7122c370be08a273ff7c2e5e1ada0c1c6e719561bbe5f57c9e9050ece989401138680c17a0e90150d4ea9702b430f3023100d4e9a253c8b60759c403dbb3eeba331cec0e5481442670e639ce1fdc90ac1035362f8c2b866c036822e0377fd28d08f80302047c435bb500673065023100af94949c78f47fcdd2569e07d4524613ff165d690ad8df55a3e3319143333a9d3998876c5c4fbe3a6fb2ba02653e4a3a02303661817e0c216fad58c0d1409d535b9eb910d8df77be743c518e9d119770ecf53061ab4c1dbfad15b2a8467a29c98b4c0302047c435bb500683066023100dd5af09ade190c2448b4acd3b696d8149a4fe8d83313af1b13c1d5b901b9a484cee9886c4c2aadb06bf51d1f1991f27e023100f0ed3d6a337224923aaea686af75957de8a95eac0a762c0ade53ab5e2d34af38987895ffe4b05cba6472ba0fc4ede5380302047c435bb50066306402301daaa9a8a1ac829f12a845bc0d2e7886596c7146466badc6b9c58c14d0379e68705242da1d14b687040b3b5a9ed3903702302aa4050f4886bbf200ef28a1cff841f7e400ba3a4892d07863e1d3302b36f8216ed91e391f42314a203c4a957a2743410302047c435bb500673065023056f28b6e3b7f97c505a08bfdc5c12f9adfca33572eb43f184a57143f5c4310f8961e21f7de218799059f50eaad8b0fc902310089025b86ba17e6ea39f0200c5bcb7660a720cc4e0fba396c29f98fd9cbf3522ebbd76cba969847144bfe5a8a15c5d3b30302047c435bb500683066023100f0308c7ce775feec00367061682b4cab3ba6306d7691afd8ac7d6cc5410a8d9f70473aaa733116b193ffb7bf142b38ac023100be92be6f7ce967cd80b350259169b30341652d87641dd17249a0f6a940f224ea2d6af7c813b68a43f181ece8b7718a240302047c435bb500683066023100ac3ce909138ba0a88f78779996b9b0c7d469b82ec7f1c598a398ee86b98ceb5da8704e1653fee6dfd3b16d2bf1f11864023100d07500577dfbafdedb295f975c8c2c536805555c79b31101123781a491c874fb622cf7ca2fe8bec4d8565d66e795dee10302047c435bb50066306402302ee965b2274eb29224f685c462971cdb0755cebeaf0f46512d6edd21573c6d2f12aac95ffe4b3744b8991a7edfeb20e402300a38a164af200f8e2e970412d6fcd720b3f5ada66d77a551ed131c7e44002c4c2b38027554c5327d2d5e540fec87f0790302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e78ce1e6353891a6c5802a0f6d5680e35e72c2ac8e07c75f1ab192b2c88ad11b271ff7da1f66a2bb5c8bc6e5e19264890231009a4c5a4def3aa6d51ea925c101eed904af0d387c3bcfed03860d7f103d9b08e5622a89d30d91ad829c6a8db8def8bc120302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304e32dea0bc871ba7343e061b778e799360cfa8db32a8f1d2a960684e272f2cb6541eb616952cf5827c4414061699b83e023100d01e42610a2ffcd3e1ef3aedd4c365affd585c119f1b0f2d41a35c05bf1cfe2c08f777b0bd7b7db468576cff782873c50302047c435bb500683066023100ebcd1433d9a46a53dcf7093f5ae59bd6003dd3f4fe4d95fb0ae2b69b592a08847797e94ce1054d6e0248c63f46e89605023100e19a53927e35c563466233ff1aaf9ba73035c17bb44ddf3559f4c1e6e55cbb96fd65f5d956a55b9bf0fdacaadaedebe40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100de2a0eb897ea55f4fb7ad95a565730d34f22f0f72129f8ae41b92d8b541021714f0ed2cea6174848cde8ee6703a31cac02300953e9e892ac52c48f23981b6f0f4cb7367e681b6fd633a42c140e96ae474f60a2c9285a51a4a7edaf47b7879da5df4a0302047c435bb500673065023100dccc9880b1ad872294a1342089b410344296a94fcaf3a9f30f0143bff1b8e1176906fc42792bfd08fe34ad3808891a6d02302ce9c0d404dfb7dae3912acfb37c98eedd75f922fc9c501775b612dd8b46ed8a2b11e58f34b510d8a1fa0a57741aaef70302047c435bb500673065023100c7fff8cc582e18d35ec4af134129b04f4125d6c106b7d09632750ff31a9f1a8ab5c5b3de446694017ba9f39e886a65b9023008738358e9fc89fb8d05cef1cef67da8ae512304334b2238657d17d2c9bf322e8092f6dc636825fc3788f693216f80a60302047c435bb500663064023052e89309fc65964356767a572f9a2eaa357e69945d1435d515444ce00b553f04eb67258e1352a9601366ece7b198e1da023006824bdced9d6f04bee2dd1e3dcbfd695f8cafd506463ce894d82caf7c6b6f3fbc9abd177359d8e7de6c143797182a750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305a62f60ace53612d40d5268aaac2cd6fd150f3a07402bd1cd76fcee7709d1dc61960ffc1e1458703546828ed270948440231008fb1866de3ce8830ad1a94423cdb5e90f9245356ec8803d43adfa1485a069f5058273f2c9680b92a7dc2d4c78e9479550302047c435bb500673065023100889671d3c182bc9bd48c8dfc18a212284e73b3562b385335c92df9ae317b85db3c2988ee8eaf7b642b8793c06ba7790302307e3f19ea79967121ac6a98d1d7430d7707bcb43f5a033ed05e5bf52c9122e3a4aa72ba2f8d357dc339c27f16905214140302047c435bb5006830660231008ceaba8763b53ab4819f399607a4f41b4f8d7ba0a337c28e321f253b91834a64f618fe980f8eca596eb4044bc3e6c331023100fdf311cf8c2901333283901a36ceff405e4095d1116ee456f2c57c05b7d784a38df4b24c1604aa34ac5e06e164e281820302047c435bb500683066023100f9725313885e1f631a5b5cedee7eaaaf0d5e06deacb7817587798dca54c8d8e22adc7e639682c3aea56ec35fe457921c023100ce83b64eab41797ea56a839e129030080384929aa4cbbb1d6048b3ccd0f7e85ef302085b8a3f23a1c5e229b95da749d10302047c435bb500683066023100cd526fe72c8e544b4e50dec3b041efe32d4692df822137881dcf3b18729e1228f60dc82d2df330400eebe110a27be261023100c179e383f447d1485903b2b6645700265b8eb05de8a882d98a6ecf0b86247bb64793de1c6b922ef55e42bec4bfcdb8870302047c435bb50066306402303af0110a3bf7a60151858500f19a4ff8103a452887cd8269f68e30b9daf6d21ab66425b48da83e26620864f32a75dd70023061d15c5b3f00090d3e6939b7462506751d8366e9a84adbbf5e3092484298bdbbb5f8511dfd2d338d524dfc79fa29139b0302047c435bb500683066023100e9974413e395a857cfa8967fad7dc1fdf525d83784394927a518f45aeceb142f69ab223f85bfccd4837b82da0618ed3202310082035c8d896f987d17a97a77e6cdb6796f382fa80b47388ea5067cafd516581d661ccfdb88ec514a13a8993dbda534930302047c435bb500673065023031c810027a8a07a55dc111ace5860ac27f1e7d7b7c8fbb64f5aa02ae8e0c8238d24f6d53608532d41b457737447084c1023100b39509a97d741aeb102fa6461ea70bd57df89180f4bb46807405cab48bc5085c248e7b5f3bb5f86472febe1d1833ecbd0302047c435bb500673065023100eedb612a1da0fcd61c87b590a172ebe7ec83ef8bfe11a1f3f6fd7fd4e044719ea028d58f70554eeaa28fa63b8bcb7d1a023034ca6d87840d4847bac5184a1eb542d89e6ff6743c7739fe296595a3a2fe8df5639ba1cc85797e5be0ff913596cdcdca0302047c435bb5006830660231009eb7c9574e292fe3958f6274e7ce9db0cfc1181a0730ca2f8998ad5bd3939fae7d28183df5f8906fb80680d184362a6a023100bef1fc0795c4b2d65553f1544588a5723a3e8fd71573966efcac50a46796e3a8a8c800417a30e4284d5e72a6e7eae39d0302047c435bb50066306402300fb16e2e57af206c795253c0fb0c589efd76c9a171fac39cf43ebd83a3213dfa94902caeb423369271ba13059cd315f80230397baf90f6dcae2881749e5ee3e92b71f4bade745080fd968dbdb0420c0fa62802a0655d866bf4b25dae3c0d3dc61b860302047c435bb500683066023100e721ea7f56bb16dba98d5218687bf1b79b33a4c011cad5494bdc1519a0d76c406d5f75f35343e082178abda8723176cf023100c0867a05c3ff3d6c5c72fe046fbc23d22ae36d8bf3542e198570b45b9d2ff6569ac63ce08cbdcb9ba043eefa638f9f310302047c435bb5006730650231009c92f10edbf936d4de63aa0e80e21a1c96bfead0c1dc8327b6fc40d97061361b27468dcdb3521ef26d95309b2a9dccc30230015fb7475662469526d26f88d2857841102472e0d34a3d325a2253279be824728ba52208d14bd944c4bf660f0999e0700302047c435bb500683066023100bd417df11a99abc34eb164503deeec404d64f04e6398f3e6130eb50aa3cf6302b9a05abd2faf4ec783f14a018c32ea61023100d2ec90d90967bed8d106dad22eddc792046a658c83e748ce75ad24a4daedb1be69114c18496974b8ebe5b7ce9ee153140302047c435bb500673065023100bac66ed7e2b9870b7022263b7ebbf5317ddbac0838b33f6a93cbbbfa5526c64a531f33a969b43b34d3d4b6c380c43797023051b35cdad0e00bb8f0226161fcd72cc5c9ea1adf461dbdc37372a4eb6a73977c043ea3feacd123da3c91555b26d1f8b20302047c435bb50066306402306d4da16776b52bc7d047a221e94f28c11354be38375608402a00224dbb75c62740d75589ac3f7d4fc815f21c55e543ed0230247284f45e3fb201215c9823ac7cfa5249bd1f8ffaebbe2e7024cbe7611e69cbc0b2989af4f540ee2e83245c9a71cf970302047c435bb5006730650231008d0cf622b178d59316fc0619a59ef8ff68956ce4cc87a11befe444d50dbedeb40451246312f38c12146d8596f79f11820230180b8769568c370c11c7f8a944826f58e78166762e1bb8a2fcc187aa1b718eda8ced59b6941a3840b4377fbfd06c49ac0302047c435bb500673065023012b6e1196ad8686afa7b311adde8a5083499b93708522ba5ad42f9c8cb75f59783a454bfddc2fa6a87db6e4fb918398d023100f0fe3fc07c41468e46b1e5ae98efbef741bc1ccccc83fc0e9ba66c7f83297fa14d7375644edb74ebb9acdc8a2321d6f70302047c435bb5006830660231008487c8d6d0ef785fde479df1d0b29b81efdde9e9816945848f23715aa7054c6c61b5272521c20cc71325a8bc6a96a4a4023100df1571c159eee755c85bcc7893fc3a2a56a377f5f812f3f0ca158fef5c0d38b36d683ea463b3097399e403e70fa7bd430302047c435bb50067306502310095fd33d203ebd017bc8c718f5e238d5a03efc02e815f21c6cd3f3179198f6f72b23f6a3f879084a9cf6cd70239d282bc0230579ee5c35ae81a70925a27be463404314211fdf14a0d16aa34c548c6fe8a621657310e8418fb71fb4d1003387cfaf87b0302047c435bb500683066023100963a108da289e3d418ce654e3ea6eeb84954cf169b1c168defb36641a2fc4cc8260b42fd8e082e248d6fb9355d0b3adb023100bf3b2be2d1e24befde5fd2cc5fd57c80376b2c28461995f7938fbc724b0adf05190adc72a6d579082bdd3fd3f99c2ae40302047c435bb5006630640230572ac278292037113840601bc7eda7ffda5119e82fa88b5461b9db5358209f85fc987be314e9449bff096135901bc1120230107132c30818aa2a6915a5ff7190019a2a3b8c11177c07a60dbd3bdd1646e8b2bc44aa2187c359ddb06a3ee45f587a270302047c435bb5006730650230172863f8a7ea4ffaea2f9fa7c6abf242a42753df096b960fc7b76158799b13505ed897640d02c708c46586d3016756a3023100ec522b7e96454b049a525803546782590837d77153e4c53b08e82d90329c3e456e8b154028f2c9d28f8a1d3d975524d00302047c435bb50067306502300d03786fa447819a69e795aebdac948f697624946a2181caec1bf38ab96f13f9f569cf2dc8645501f04c9aba8c35da1c023100b6f87ac03ad9ff77c0d177ae5106f70c0953ef2a1e33807eb377a2e839be13983ddde4b5690c5450215bb2fa2ea759ca0302047c435bb50066306402306484fa06c7209f6551ac49a3a2a18740dd8d6f19d5136cf59d2cfa4f3b1c8c8b9416dad18535002cf341fc048050eefd0230301761362520185e766a3be96d117fd4f63b36ded74ba0ccf1e43e664a209bcc0377c4644515363b7a3275cfe96e25f80302047c435bb50067306502304dfb93cbedc4f1a6c127647852aa3a6caae019f959f83a0c6c423d8947b586338bd4db8f76354c23ee4a44658f28e0a80231009c1777c5ce00f2ae5e9604e7f2ee4d2adf0bc1aa30431e4b1c35a31c40e978bce99ba23ae9dfb861f977ba4b485aedbe0302047c435bb50067306502307a837117cd4f264850e6bf236cfd42ac225b3bac98304fef5520930379c294fe2a1eabad55e00fe229b3e62187de3fe5023100a7d1ad5b7068daf62318129e874cd82bda7fd0bbb689f9a444d1fd544e5371a504272d81da99ee1f4a8f6fb323b0b1010302047c435bb500683066023100ccb231c5286e9e4dafcd2fa2bd96ff14c88115ea271ff6d334b18e3a5e813443db11f649b91572325b1fecad13c3415e023100a93259b2b3df5141b1d75a42f0a5f96664bc422d18668e8aa00a49cb2f0d6b8de96985abbbcbeeccac99258277cd817d0302047c435bb5006730650230319c469215e2ef1fa8c1a33839b7a29026d23d89ae51001a5fc48b22b77ecdfc85ba94fc8e350589b23ba118ef9c05a60231008cce143857d5bdb2835570ca48c2980f65e0b07370279dd26331e10db17c22d156db0a8d1e8b60ced1ebda8289d74fe70302047c435bb50068306602310098832ea0bf26a7b1310a38a33e43621199950a0eccae744dd333ba61fd1710da3b40a2bc1eea6f7f3fc9fbf60bd1ef96023100c5dc80a980680cfdb2be6146707018de30a1a5284036abfba96b993415e4a5d522c64d332bf8f93a938fa77a77bd0cb10302047c435bb5006730650231009d7c374fbbf90213c80567b27a328e7d52381d3c6e04584d5832ce19fdfc9f3f29aca5c9fe6e5d03459d47c5fe1a155b02303c9070bc15c01f68acfcf567d7016b3d65d54e8b8fc3af4063c234f83dfda9bed280c7b012fcf5461ddce75717101d280302047c435bb50067306502305962cb914bf41cdff72079bcbb5b28efa71e4dff8ef5b87555e775465c02e6eba0a4c1e869e4a0357685c4da4d2f2446023100bf06984429120038335aa0e8556357059ef2340bb4eb5b14fec460f4ea29af42d990dcdc9db9a329e8d32d84b19dc2110302047c435bb5006730650231009db0ff57fb1955bfee98b46e5f10424323dd54e143fd5a9b47b8d9ac7952234dc415be74db5f0da555c1089c644b1e7602301df4e55726b2627d2aea4211b9d7c1f41ff9a53d168b60e4c4f149a6bba9b8ea689081db4a1af40e32166795032e7a560302047c435bb500683066023100c44c55a7efc2506008c063ea63d18827b842ee93fa4998e29289a186ec8d3451fd3c953255f677e5fc6e7d79af2ee0bc0231009047d1936bfd9e5c62ae2a69579318f1e8c121e4f24e148dda3d1f57965f443fd57012dd39ed0de01a943ef06fe7cb8f0302047c435bb50066306402305bd4be32729100db96043e5690d8c3a620ffc23092bb9cd47c88a08f05d8b935ea12e6b006c2ffaf5c6de481451a31810230516bb31bbed7cb76f7a851d6385cab90d3c5a83af1ce7032be63badfe97763276517501fab91e3d077e8dfca1fedcd550302047c435bb500683066023100f8ce95464256193e362f82cead454eb8e7dbcaa46613dc89b6f08b2544fab63ee3a12c6699c263eab54ed3357b7ae7170231009e624d92b99ef3ed89401de6a540865086d310c194bbb4b84e66d9fe8bf800db88fa67e02cedf699d8d19003765e4f4b0302047c435bb50067306502302b0e42ac09794f0d8fe835f67eca83c05ecbb1ee0b0053f24602e66c57d743066d8b7e5a28b6241e273b02016701e3aa023100d8cb7f7bd40860092e06f5cd37f1b285ee3d10afd26f9639f0ba861c6b0248af120aedc13730ed0c72574f2eb2653d730302047c435bb5006630640230482146a02c5d4285190593645ee32059121cd40f6cab1eb86e590d487c062c0472504694fe56faf18678ecc9061d69a10230414c8575ae2df7abe757d648ceca27ecadbd9dffbf60af240fc82e45ee2dab01dba27f412473766b67476b2d4c99c0710302047c435bb50067306502304add4eb68cddbb437f7bc12bdf4a1a7759de354622c16c31c25c853c38f0b8f2b7b14d5f542a970367e9747f971e465b023100de678891a3000820eec79dd73e564b7a38a4c00a5280c17a82000661a77956c55c031ed924330865c4e53237883786280302047c435bb50066306402305f1d962c77ae07db67d035e861bf9c9141e9ea7ff58c2cf92041bb114cf095b44e423338abbb93561b5fbdfe85bdd1b302304dde4c0db6432b04d4c30d8180103dade229ffe13003df50c66a7c6329130a0fb1d9de2e83095f2891673a8e8db23bf30302047c435bb50066306402300ef7fda6110762f8eaa380448be45a6977e2343f6030115199d59ed0e34b5566fbc20cc797f4bdfa30540a21442ce7d30230037453a56153ee45d6a4cab547ab8b8093d3e0b5d667965d30810f6b3c71b87687401da4ed88d46703c8bc5bbbf4373d0302047c435bb500683066023100b389c909f4a435b7f08198ffac53f17a761d15c6762303e4cbe4a2ebe95eeb67ddd4af6a80a6c85a42f773366517b8a8023100b59546353916ccab462ead1c01006b3546405147877efe9a56f76ccc823ef64c7057d0edbb8bfcd8334e2cd494b901000302047c435bb50066306402305d2c868c2c2508c3ed8487ada517f2ba51d987c70a63d1aa1b570f17c207e0f4b65dda2cb878765230e6a9c004ee082c02300d2513344337b709b9e8641e9a53f992db74317336c0892d2687ad0312b01e1bdfbc51a0e347647544336de372472c670302047c435bb50066306402300d051edbadadd19b17620fb36d133213933b13b2c402a69d926972d6b2728ffdee1a6b15c41fbfeac1fcf57adefa8c06023028a13d94e5a517db6cc8368616128a1cf75320048da5c498922cb116d8f7edd25818173fb3e349b525da8a4d22b8e7ba0302047c435bb500683066023100ea64fa89045c74af911377d3e8361070f81de45b0167941b9f23195545420c3db79470ad0ff1223b6d68a102f2e704ff0231009551f9be3974dd3ceca204379a215c4f6140d42ca89a31f3a42df3f082bc9cf9593ed71f18de481323e728e9c9ff58250302047c435bb500683066023100fa334d9c80046df9ae388400aa0e53af3b2df2c4d7c92cbb0b9fdcba94c5353664db296bd295a4acbe89b7c0d3be6416023100f45ce5f199f32288766a5a0485bad0162c43dacaa13fbabe150768e403d782491abf8dc31821f8c30dd04507dea185770302047c435bb50067306502301cf48fbd1155c553dcc094aaaded10e5298fb74c69ae609ccd1e67965d4c06807b22d6cdcb157e736d4ef2aff4228131023100ffaaae176a7bc86b0356b8afd533d3cabfda9a27a8a11a9bb0f88369c16408c71fed05f32977a57f9a58e9ee046d86890302047c435bb50066306402302eab08d0b9265e7f145b49614ab729a773e335638819f0b94ddd8996f05b61591cdf53ed6a73a3ff6ccef44b826b4e000230682945ad92b83d5d4a6a00c753dfcfd6eb63303e2472091d501dd7920f041c813e3d1c75e5e33a046460cecb0a75cffe0302047c435bb500663064023071e24f07729bcb8bdf8693699f8eb0fd48ec2600ab6f19d428aa92a1ee65b0c7fed84734d8b488ab8b2a2ba1916f0439023019d96fdbb43de3a4ac0063950c9b636e0db982b8fb2197cadfb8c799a973c541e92faa23073398a23138a72931b702e10302047c435bb500673065023100de4aaf8beadd1540001e8ad569b4d5d8be9b558b77d982d1d4123c0b78694741085a0b0b62aba0a85c3280a5eb0bda3a02301faceac1163b1af64b0b8e04aca185e46a61a59e8e48803a270442a4999f0458544f7d219eb61cfe1c93e43f5a9ca1290302047c435bb50067306502304bade9c49b879974895546590c4c8954082c77474375c788d379a6bc583c5757e55a63206aef8fa2ffdbdb078ae8b254023100eb172d0f859097d0e144d6bda3bd858d081dbe102a1d32e6903c8cb8eec30637de5cd662bccb3fa17cb0310b318e5ab70302047c435bb50066306402300effc0596c424da57b9659a6ce25681efb69b70e874d9e2f2fe765a4388745ff9b7914876993b32ffd1dfb4023cd476102307f5533c05ac4e348f92b9efc0529f3b172d1a6bf502beb1ecf2e71aa3ff9fd2cc1000332156a560599c1424fdc7a5ad20302047c435bb500683066023100ee277271d493783e83180c0288d89f75e732bd94ad36d710de3831ceb1badb179af1bc24a5d5df94d8dad3aaf2ee9e56023100d76541a5b5a8da9f4d161b5e593f29f477e57585bc733db5a5e7ca2129d6fdcc3b48de0f243e84f0153e4543351b9e740302047c435bb50066306402300f8ed5c657686eecd0f4df3e83dc43463ec757c5eb4c5ab01259ac769b568ed891b14084d56b90bc96b57ba3043be32f023049c2368308fa20509ba7eb4b7b0c85b314d2d449c8de61bed0f0d2b6db64fd49c6e3b7b0bfc0ff2a5e21538e2c899c150302047c435bb500673065023100eb03bdf80eabc613d70850db453c452ab299061424ef1a02bd124b954dc1e76512fc63014024af6861dc63d19f3e6e3d02304824f95248fdf8aded019eec4df9fa9a1399dc4cf42dcc1a0d13c2e7af7c40c341d619e3d36f603622bc7b5e620079d40302047c435bb500673065023100ba19cbefaa8e34993615d17ec07aa7751ab46708f4704868a9e9720505879b4bc2b606a4635e9449f423e6c9b41110de0230048773ace60b9908eed47169782f8f953b4d92382f12b4b15d79e3511a4d473cce7b4263b3e793c0666be99c97f115360302047c435bb500683066023100b8ddff0d6095265e1a63f38eb93a1c70b22f6496a69bfe2f8aecbdf3620e6e40956cc009ef49176132daff9132a6970d023100f8e2ab1ea6d1673cd67e88fc4bcd2fa33dd11efde82996c3c5d3edfa23005ab3597f5d0ddf2fddc5a4f195b7f0792b190302047c435bb500683066023100aed688e5b2509890016c70a4ad2271ad816aedc1454447267a7169b17ccdb82759506f245c3e56e505d999291537ec1f0231009bbcfe051aa3afa4114678480a7d317fcd6d9133cca28d29b9e1420c73784c929f9dbc2f314d6ec61c8a83048eddeb490302047c435bb500673065023048433ab061c0e3bc96362fd2c56819f68a940ac20c9fd378a449023fbfb19f7c0d782bceca6cab034af1ec1726863a70023100fc59a4e81c5707de4b0a7697b8436136247526c5ee515fcb81fc4bc9b9389ddb71404dd0e4f700424030d1755fbed7d30302047c435bb500663064023033cdfcb5bccaeb05369a87e690bce146b9e879161db4f2bccd74a0992f11a344266fe803721e446aaab27c1c97e60fab02305f647c8655ad7dd674e5e03b6cb1ebe27b33fb1c5881fd68a5a0d36c7f258c2b038ae65069bb4c0b7c56d2da72fb24880302047c435bb500663064023017e48efc0d5ba2cadbb0515892b98f3c2b5d611ae0b39560b9ae96155657bdb1f82268e734a9b184c98539cf9b9ac20302303491cceec41f14a23d92d08dec84a42600f46dd1ac0a2f43fc9954896242f9ae4a8b3a3a4c725cb75f19c7403837919b0302047c435bb500673065023011577f9d605592c841e028a921cf3196f82cb98317ab82d639d94464e9c5be8e3210778090a073b564215658398827d9023100ad1814ec573f4845e4300120445d3580e2832dac4ac939086ad69318531c4fe0cca22f9a3a82627c40a10ac94ad663890302047c435bb500663064023020cc1e728bf10a0158afe6d7fef2e011a53a6f3cc905eb9049cebee729b10766c26f7a1c0aa3c836e5f1adf0bb1eb67302307f584994e3de0f6428917a822a03ac319d20f64981c318326d72a1b6c733c069480793f7fee6dfc81ccf70d89861dbeb0302047c435bb500663064023062e37d770242b51fab3e814a60365dc7ba5e6f637c16e2e5139d762fe2a274a47abe7fc7a22f9868823e4a6e00c769fe0230703694443c7dba52076ec77866542eebb80075dbc4f462365eec09e836692434b26bc6b0db79ee36b2d093d463c089790302047c435bb5006730650230148c5bdce9d70a350ff66c3dd7026bf31a58ce2946bfc32682121456770e7dfa6a923c895e99710032a8a7c3b47705f4023100b55905d8688450040af743afc9eedf7e52df1fd027cad1fd2b4410c3c778b4b760bbbe4d563592b5f35d7a5e7e412d000302047c435bb500683066023100ff336b106f9a5a264d55cd96f3807b587a4afcf49f473aaf74fe5a9b12c43b4ca18d80c720a5e11232ff9de7dd5bdd6e023100d2a275142d16229d50a0a9d04102c65acbebf9a6fba3e429c710cea7bdc1b76ccccac969823c1cad9e4ae919ed0246ec0302047c435bb5006730650231008891d98d26036a6db7b427408fc2eb89042e765ab5405a9880e141e60a82ac2e3603ca5c72ee3866679945910d9e148e023038e847591a65a747adb2ac06ab3a531a8e9bf4ea9b50b6b8255aeb5c5d04f06d73a2a43b18d055dfaa543213a932ad9e0302047c435bb50067306502300b2d081d57b9c846137f71be3590c2dc51ae7757ed8830eaa98057535d2eca1ceb49693ddbb40c5a67440dbe9616a552023100ff18644678597c1ca7bef07b5021fe00cea16691eaffe2085d0f4fdb84d98b83789ce75314093bce5d42686b01ad075a0302047c435bb50066306402302ee5e1a073a1e5dea895038a051464237e5a7846468b3ec45ff1ac0e552c037fb48187e72accce75b2fbc1633922298402307ceaea747c7302ba5e6d86532766f328892d9150ad2bf10858d36795dcc7ab6c5478a56e739092f4c3c8fc6de7a4a2ec0302047c435bb500663064023042d5d795eba3f10b05b71ebc4e6c5caf2eab77489ae29e59ae01a70801dcc881aff45e9fad84a6626f055aac935bf4f702302c26083f38c1c0975edb37bd35257e0d407d71af36872cfa942eb5a5f840cba5f7ddbed3ff98d9d0f01b23b47084cf530302047c435bb500683066023100da916d4811efca492430fa1a94d3decde63886ab212736b5b69be415155c786a5eaf26dabda25e3c14bd1c356654a692023100e5fd9ad1224a1e5d31e2654414bef97c2d2eeb70f62caf1d576b7a04600645bea83114d231ae4380b52e30ec4ae71a3c0302047c435bb500683066023100d546cf6eb9a0a845c2093df9035743f189a77ea40a8fcc5035cc7b5b857ef2936795ff4f75fa61144e62f821fc1ba2e0023100a7e7bf924a2cc9aeb5198b14bd0f52d7e81a77eb32fd624e5e57b13572a2fa1e0a95cf54cbe2bea2f9fd6f659866f3630302047c435bb50067306502304a9bc98ba67fe9ef8baa6c1b7b1d4a6e3ce5d679405e953f0b6edeb23cc04cdcb910a9a3482848d419e7e078d88fe3430231008a7f35a1a9f29c25ab1b10a10e559c887439252136fe6542992a6df6cce2cfc1d213a66d2ed4eac99dd07c7662c22b340302047c435bb50067306502300a3f6be391fa44ad33b781166faedc90e3ca9e81c20270ece19319701284c16a9b385740d996cd4f5196474a98b8976d023100de3619ddde8e60587b354f43fe782a982e0e39c88361e98ae3fb5ee40d42aa2ebff557f1d15174319a90bd47ec31587f0302047c435bb500683066023100edcea8cd32885496512eaca9fe3c96a4d7310c642b9c4ff51551f64e0ab721d2439f4da0bd000e753286338720d10849023100c6cf406eafe1b20978d8428f1e43c2abda4bb0091376cab9bd00d21866af9a55e811a5f8bc03f0a738443ecc67d69de60302047c435bb500663064023039fdfdf30f9ebaa0e2ad32765b4f312dd88efb102b1319d5849fc1ce2cf51179c1254f9424c70c800abaf70680c66e5702300e4e1a21b39ff93902d261d770becfd92720d22703ea485a3e8a3e7330b7fcd5b8516b747cd250d652ffb952d60d5bc70302047c435bb500683066023100c51f50fd6b2a4784fea44220d0023ef04e4d2da3390c4d5dcba0a1bcb85fce4a1b92e458f6287f2ca97ea54aedca406d02310088be8df001f34586193075867e920e75f1192f4cf21733dbdaf43fe758f5a0f52797a9a5e29c86a407632f31b30aadb70302047c435bb500683066023100b252d0552b9af7918f468d550319685135e845852d65bab3d236da93e4444ee937219bfad89563f4efad31807d9efb46023100b29462d24d7082122429abd7842d79bb2fd68c75e40ab36d22b8d9ccbd175e1dbb9c3027fdc61193e11d455945663e120302047c435bb5006630640230584fbc768a25173968bf8c52be615cfe9796f51868c693c8255a0b0fbfceebb2c55403e00392555345d081cd9c5d3f370230388eea69ce27de75c2d5eb19788b6a031d05b846b353fd848a541d8ceb815e675de663d81f00e0504f0dbe3428fc6a190302047c435bb5006830660231008a676bde7c2ead60ffd6ceb24ddc21b3ac0f5f9cfae5b27a3c4b576e7be36280d2f723abc27578c0c81fa13a71aaa795023100efffda759fb7aa9beda9ad425cf31640d50782b8693a447f1c174a8e58039317bc00cfd7a92b913128023d1e7febdb190302047c435bb500673065023032626a1bffcf619b07a33227edf77b118580fd99df05655549ecbe807679224926058a526bc6e622b4424d2227fe4416023100dd3135fe7e89ae8311207465b112976b4d7b412b125a2841467d50c9a52a1e3181308ebc8a82cdaa706b729081f2287e0302047c435bb50067306502301f99d1020ada7a79135c52430d1e683de61690771f8b65f364dc3407752134a4ca451014d0a8bd8b4a06888f05056d020231009a481a7c6154e03da0ecfcdbe19d2f32276f4fe218c4a91bb2353bab5b9d7eef48bce8a7003ff3b78537f42160de53f70302047c435bb500683066023100cf702bdfdad204041d668cae561a50c00573ea82efa0eac187133ad0c502fe66f95f5d315d084257486bb47360aa4349023100e5377a40d23406e2276840dc9d2c1d24a0ab37f603c37eab13857df721e80731cd33dd55c08263aebcddf7eaf173f4ef0302047c435bb500673065023100c49794d952c0e3d42f906c73ef6a66679463d704b203f932806c42e32cdcaa68bc8c00cd77884eaa754628fefbfc0dec0230591229639160439afe083129c1e7f60bd1d32d7aa165748fddf3c630c3572006143da3e3dcae5d589a83aea2893b55450302047c435bb50066306402300b03f2731518cee49e9f38b66af3362ba555e68303ad4f03918caceb4eedd9ce6f8d55e6824c219c434130736cdb73a0023033445715e9b65d49e0cac9f49bedca58503520eaac165d52092c4a02065f3ed0d701986d112f92d3932942d68c4995890302047c435bb500683066023100a5084eafb4790e648f6ef9f3f7a9f4a90ced3e16b93a49e629b9ed9f2a56224c87baadad87a793ebbb04770fdd53b03502310098c778aae5fdec2968121f573fd9ae5311eb85298fe91d43ace0e8f89c098cf5553536cabeec41f2b95169309c08b58b0302047c435bb5006730650231008cc80dbf698dd850a63b50f14232112a047e84a5791d4b86378c3a2d74a67401054a36eaed621aaf13d47bb25d9c673202305029da802559da4b1c767f6b5bfab90f51387e7dec921e2389ff9ab3613eaa3f4464f2c2f9ff911cbf1a29cc68a9b5790302047c435bb5006730650230118365e8605844b41eb3c76078d8ba73862b989c6f8d35a99ee8b628227c573124d16988c5061f91178c412bad2bee700231008a18251d3f1e7bc0083010070b94fb8b4601390a1ef7b248d59b0857c65c390ccbdc9b57ff3fa07ab3089904207718080302047c435bb500683066023100af203a51b3040c35808549e6d4325e1cf7c9ad512a371ec295f6ae18ba6127bdfe5d776ea0f36cb6330ea54efe9be1ac023100d2bdcfb16604d081e47b0c045bfce77a719ccc56a152857cecaf5c75f80cd86ae034af03ebbf7639738afc81e85bde950302047c435bb500663064023005201df5058e5c4e455a8098276878211f7a7c3c513e46d1139d60d7a9c383d9b5e7188f3ec2ff9a68997d2517f22d8a023069ee425250fc7c915dc037dd262e6fde616871cd794950036c82b65cd3d91a0198fe01fdb8a40140cfbff0a176db2f6a0302047c435bb5006830660231008d6e8fee377a54a8af475933f3b5ab2a0f475aea0ed07552b45516d680f5b07625f488c0a84f17059da871f491ddad68023100a11005f12e96be608c4c9fd07375c5e1a1a86865fa97e1700ecb89968f0b06743673a602cdb41d0c9900381c402e61180302047c435bb500673065023100c65817dc520842138e57c379c45b7bdb310315d412aa9484ab20072b83c25e4752a937e347bcc0fd18b5d59c3d1c9cc7023055174bbabcbcc9c8d34c76985c9ff12e81d3976d335f7baf77fd9086447d9286d9347d8fcfa07564c3682763cc19b55e0302047c435bb500663064023060a418f9502a5c08ce1a868bd697c49411c88b82b18489ef258fba5fc1001050ce7b294021bc1665be12b308a764495c0230709b42cf5341e4fcd983f6c27bdb8942c4f17ff4152ee675bfd4c03ea8fb15be70315202c7fbf539cfa0687e0df62ba80302047c435bb50067306502310087143e2f59c3a73aa94f5400afd73503d229832d46b34c4d2c712bba233d0c703b3232b194ea6d00505a7adce8fa34cd02305143f427f90aa8c14de86de83261d4d85ef8efb4e380a39f4e1c5e112f62784119b1e58a8dbc6e416b86450e7e600b730302047c435bb500673065023100ab67500ecc91741f35fc13286e058120d52f21e37715f74a723beef0cc4fb6f51b05ac963d23e503c9d4d9e410e143a802305b550c4d614dce0dadfd37fef5fff6730217735e72e0a7b9bb31a19a593c03bc15dd59525d4b60b90ca3023a949d3dea0302047c435bb500673065023100d8fa8011d4bbf8c4c53e67b4defa5dc014b231347ffcaeae44da252ff1606ac5faa2d00aa48ef4cfb4ad7527d581fb2c02303c2bed7a338de57990ee95d19c56bdce609174a76134768bd226704a4f1ff16d1fbbfabb2332b368e520d9a50f52bff10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303e72768e8d51eace1a264871aab6fefc177bff06a4b62512859e07b94ff605972a94d9ff4b64be6ed97013b0a0933593023068d8307cccf4cc2cd273a0e04e00ee63424c3c64330b734fc043bd06406c1b1ebbf56df703e00eef9a01de63dbf9bd1b0302047c435bb500673065023100cd7844c4c1097f85ada1a419b0894d6825b3f18cf6af6754bb9f4c91131399f17f9410cdeb0bd943e723d1bb3f6f51f0023045e87599683e7df3764911daddbf546904288b8d25b162ef14cb8e959c81e1cf2050008e09405440b7699013f1e8bf110302047c435bb50066306402300294c541e65e11c96731a64f2c1c44990d349362e2f1c1e77f6933e566584b9a08df158103d2790b31cefe7a4c41df910230619f4ce86492bd5d7403c306d0215eb80c3f48e57267084e826d321fa8d1b70b8ae5ec5fb0986e5e3d293ab78b62642d0302047c435bb500683066023100bb990b24da60ac09d55c0167919896aa32179036441da6f6a89a315c83fe60a780e5cf56ff5a4207ac569d227b879907023100e3027252fae14d02759296d0f5fcaa3c60dace744185e313120b4686ebaa5bbab61f24ccaf00296883d90483cbc752d80302047c435bb50066306402305aa6de054a2fd5507c28a279771c6f61c66f75fb8d298f82d9188a3105987deee72a07a9f0b76f68e7bbd7949ea10ef602306278f63a995fca130e30f55ca450fe4322cdd8818e97f45db73b7c444ed55e2c7f402f52c5cd01afb2b14ec3753076e00302047c435bb500683066023100fb162f3757e5f1e37e1734c8e671866004de96bac3205f9044228230e1e36b6c513c0bf8e87f086e9116f2b6e871cd6e0231009859f3e71aaf15ba78ef6926ad57c64f4489253cd9d65b4c34bee81ad780fc2453269569d5644f8d71a4fac5f3ed996c0302047c435bb5006730650230038321c8e62f593f7d087b220dd14b7495a666ddfe7d7a97f19b3ecb609b7bbed57f98f5f1f012a9b7e6fda319ecc122023100a3b87c9cf09ce620f719197bdbd6781a57ddd9abdc7b8f9f8fceb8b4dc9a00bf4d4323fd6f64376ecc9ae2fa08e868320302047c435bb500673065023011e65831eb303905b12d502240a3d1873f43b09a1594b9d498f97bb4e4f51955d8b74a447cf6759e042e3a828d13b10f023100b14a96b15ea095e84b8f200f6c1d2a0118d83351565bb334a10796f2681d6db5dd8f7d4d37cc7cfc518524ffbab747bf0302047c435bb500663064023012f725e724695facf928ddb618065129a9243f8899d01ad24aa79feffea1f481255dd6c76a114fb588ca75e6701bd5440230209a71bfa46bbe967634a02f8ded8f87cf165118d3ef3822255e17a9ce73e3b570bd1da93dc0b94820b29ba101749c0f0302047c435bb50068306602310093e0be3267e58c1505b6bcf2d87ef6df6c09400b0bb544a5d54ce3dbea79c08dfaea9e0072570ef64a87b942b31cee73023100b13899ff9cf61c3bd9f878f409b3c7f8fa35a393f2e229db8c9488186a97e85492bd267d8e9113dd373433426de8290e0302047c435bb50068306602310080876f2625977a36fd10f31878686072e930bf4620fbf3ab7b9e45310c12a11b68f8026348f1406688971d6636411f57023100a0a99f3fb3d9e0c94938c5f3c4419ffe114307ec2c6cba71dca93ba231ce8fa956815902ccde08fb1578e30cc5b0aaac0302047c435bb500673065023100fb942692834df3346f687a847174b41b307ccdbd15ff6c5a25ec248067e49cd0fbc77b80eee8dcae8e7bf822dc4c78820230336268fff8891bb0aad0ba806bbd62e427323c059e04892ab371f818e554a02004237a22a36f8ab7441dd44fee6652550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008dc356fb5f010b8fb6b98a71cb612c322961553b9c3561eb15e83ede95b22f4a0ad16aa5786856df2fa9da127bfc72de02307142c842bfe0522d5c5f0375c277c03fb0ebaae539c247cfa470db5632e4f907627ae9ea2f46068d2a4e2ed4bf0f4c6e0302047c435bb500683066023100a332f65cb7e8bde3622598965de39b92a56b95fde5832d830c19dfa7f2e8c70eb0f145bcbe853bad74f164ae87c23c31023100cda3829b790ee32e3ac1868849502b68df853d5ec69c178bbfcd5ffede709296516b503e3569b6902ed3e6efef1a7f560302047c435bb500673065023100a08bdc65c18555eb16964247114ed0b858f1ed4607ef5e09e0c0eedb83313c856a3aa1393d52c3b7fc30f633ab85487302300796e236cdb53b563f99538004d9d6bf3336e079e1696d99abf83a024d9a355a4c44652a4f1609b8bcd978aac3a0f2db0302047c435bb500673065023100a7a7a2270910a49c94bef9e9875d05ac26cc7d65089c89bab7ca8ba3872e51bd1c70769af296597dab1cf6221a5f643702304140363d38cdb7dfd3e79652487c79b3900a43d1086c4f44fb950e6a176bf4d93e38ea20afbaedd9a427051181c3e0040302047c435bb500683066023100e5daded4ef4040dafaaf3cc1114cf4a0367091217ac7b90c6777b6384c93ecceb7e45279a3e48ac5125ede52f5abed6f023100abada1873a601ddcc1f3be437a604a4ffbf3f8c2f58a1106637a45d187170f1019867dcf9f6b37876bcf6d574a5406420302047c435bb50067306502305c8ee550583a67e30eaa7b0340e439625d698e4a00f813b2cfabda493a3012b7845ad9de0818f7fe90e0abee7c9a5e68023100e3c36f6f37ed9499f9cbdd4f4f90eedd4b385add9982cc804bc79ac3e1cae8c991996f6b008820849770e4d3291a75920302047c435bb5006830660231009e3259ae2424cdb2dd2ffff587916ed32ed87f275ccc7965ca708ae5b7653698293ca29cdb640ecafd9b34e3a6ef7a76023100ba1e414fd7dead8a32b3d40d7d4563bb5d362783267e632b3ee812e1bb0d0844c196cad8115606afc90bb1582a6444e00302047c435bb50066306402302660c003117ba2321cbea36f50d780dc54507026dcc876a0b70e81191393f623fcd67d9ff871902c8f4ea185c895e6af02300af89b1be114ae324d488501ce2434304cab4b4e7b448d65af118197b4d11d6174f0da6edd03b028c21592dc148c61b30302047c435bb500683066023100c1a7200eb22fe0605f0c7544ac0c867253caccbbea226bff052662d2e09ec9e6d76b8b7a86919e5ca2d403be9308d7a0023100a2284293eb150aa27479f84ea3a422041668148ccbe562bbf09452a682d7d1d68ab2f9e076949699e5f8778271e213ea0302047c435bb50066306402302734a81acacaa2d20f69f66f0534ff8ff563eccb59148e277ce2dd27f4685debfee220730f4cb5d6cad96601b39e3983023074df25920e3ad34aaa721f340e8998ca0205f21643ace728b85d238299d11c8d45aa204343de4171149bed66f030ea880302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100be46648bd2760ce2fff608f8283e0c4b128cba852152b949130cc326e5212b28330866101541d17bc56f14f50e8d3144023100986b401581b0469a5df2d5990769dab85bb6be6f8b0b725cce11239c3e86434c0aae610dccf13d2e9332e7c2f1812feb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b4e0eaf70259e8dc7e122c48d8a037f9b5b95c50abb7d6837b4eb58b959ad81e4cf59b76cadea6d56d023819501a6d7f023056c26177f26f49da136176e003963d1006a9618632addb875a7dce83eb8675994ef9c4e3130398df8207d7138f66d34e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301feb853e9f55c243da0de21d7b8fd3d9801fb33f370badf65d127f0f04db3269f0c88920142fdf115ea9d63bed77801e023100ee3bbfaedef6a7615ad42a4f3f3318acb446f7490758837b8e1aa6485499f3a89576256a92e57923560d2b59c2ed135f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307528e63f4129dbf3f15345db5092ead8db55f01905812074b5b27c0ef42d9b5ae2e83d6fa770761cc79f840ec48c3ef502306d14e909621aa948e83d53642542abe37007a4d515acdd604901db2cf4a45fe5a2c4f130f5a47c0146ecda7a8959cdbb0302047c435bb500683066023100b443ed5bf65751b0bc6f08d0bc3a73bbd54b570d20d56dd98711437868dbcd529177c8b6f50f57aa27ff6f0b4ff22bcb023100e269d375c8a2a9345ac2475ced88db7b5d90c389b229fde8f79e036663873517e7979f2e28acc72f6b359ac443549f220302047c435bb500673065023100bbd9dad74b2e3f8f8fefcb9cccb4ae4fe16f0142db90aa0814a699dd4296c5aad0ac397c1641fdb385191c02fb4234ae02300998f6aab9cc9ff25db4a829d1bb00bcbb9b82cae690195b6b6d93e0293c230f860b76be60cf39b425928f6d9ecadb0c0302047c435bb500683066023100a3d28f23aab2e758791a4d382f1f19dce9fcf1f142d4b6d0fa15888d33dc5595933cbfc9a5f8f83437d600827efc085a023100fac582da69350afec06b8466efc1583b04501b719f514e9935d7bb4696acdd21ed7132b03c1686de5049897a76aa27270302047c435bb500673065023100abccfe0fc5f706631081fc5d8be88e87bcbb3f6d0959bdef0ade6c815d87cb4f6856963ea584df8a2e36e2b4d6c170c202304e3b8ebc20aff64c258af040c1792f68c9cb94db5a6beac2698f3c20adeddd8eb98c5291e0bdfa92de02996f8de9a8a40302047c435bb50066306402307476e64a89d1679017cd264d9d295d116656727361609f15edbdfe0acc9a3e77f80f9946e00d32dc4c7ab47ced763c1c023050f33741112353290bfe282b0909d840a223ac12b67459fc0bc04b7d65af4d88676940e153200218a7151457395475ba0302047c435bb500683066023100f201a00ec637c526b2a34c1cc93510bf4dce91163696ac40703079bfed78d4e700d67a283464787930466927f44682660231009a3a91bc107b4675f40dc268007fe127c5c7429312de0c7679f0a7aae9e6335992669ce2f80e0255ce0fb327db585e620302047c435bb500683066023100844089f8c38a8df45a53e081a83111512c4fd754cd1705cee71808482a872c456ce6aa0d5960851db721b813237cc055023100b6475fa585e1866055d6847966668e2229412d0b57f3f433256e737182da8055c9f6fc3554627451008b85013e131a250302047c435bb500683066023100bcd8c52941669d879729ba9065fd953baef96b6286b7b121ddb759ff7600de836ebd98fba6b2020e0a1e0c690e8a0e91023100f6233a5981f6d72f579cbd6f9043e3ace5a4a0ddc6db644a56f7823dfce05769e2f069cfac079ba8373def7cefe5c5db0302047c435bb500663064023039f1455e1bad2517b625fc9eb0e352e36fc378930381ee9903bfced3faaad6e33f2daf005d09bfbed0af763577a94a76023002df4a97e324d6acc7b4c366f7e6135ef461ebd9a5c24e68ed619ad493a84980c450c7138b3c957f2729b6dc0572f0480302047c435bb50067306502307ad3b435f2269af0959f7a0b1e7409e760437e11cf831e9e71e7c5fdcc27087b043812fa8e0dbcf2823e6376fd2555620231009922005c30d331a83778e65993914a69e7611589144cb2f55cc4964c8b20132cb36e6d57a02f2ec193bd47b3071bbea70302047c435bb500673065023100bfc03f0694497cc33a72d59e57c81a2a77c11777c02b9710f0c01e3962a1ad5d1f41ed8864d807ccd501f1753f7de10d02306122414272c752bf276e36bb7743140337858b27fe6018ec93178038c04e66d4b91a46f702a53b6bf0d7e70af1a0764b0302047c435bb50066306402306e5efc54b36ea08ec3d992d478ac561926c7292491395784c5d5209fba8a49f502a4b42d6c632d5687291b1ec3ad917602301a8846e696b14214b0ef531cb547f439528c2aa9190f549bc4daa1f4a52fcf69a6a68e557714e176648ee772d098f4fd0302047c435bb500683066023100b15c199f06e1f46b73efe01c8ff3d036bc33416a144fb8398eba4ac84c4fcae4680f9540c0f60afa1c4c9a4f1b2fabfa02310090fdca7fab596c51cba23c73fb02cca9237556b9f04a4f64b8a84102f77441ff953eb25b6f0cbe99a82bc572a5caa6180302047c435bb500673065023100b4610f2db3f4be7ff360a2fa5224b8d44a5ba23c4feb0074d6621c713a36f628fb00e2869875a173a828e34c45490b5402306c6ab10677c54d229240f21b9100a39fe000505061f7b79d25754ca0266750682cfcf8a0f2eba10dcf85040a85e09b2a0302047c435bb50067306502306f8779b305ff3b12df17a9ddf83ef6b0ed1b6399d68d15e22507efb04eeed0c14b93c618164b1e65d0363c954aa8c866023100e6d9e224268f4754380795896d17e4cf275869cf0d0952fbafd5ad9ba328768fe93b5db74d488e11b5861fe5bcf41e930302047c435bb500673065023100cf22c90179907e7ce1575630df86b600a9fd2c422955fd61014ef767389cf7f933c00990416b7305eadaa80e6f76c6eb0230035b8b152f964b37e2d1141a9578dcf97df76bd9e8f47cb1ba03950a2effadd1144ada7bcfb89adde551bac4c4a8c7180302047c435bb500673065023100b5db64fdc3e2bc5de0acc64156cb3d39ca575cefd2a04056e6a420b87215a78b6357b020069e8e64e60ac60e76a6735502307bba665c988ac30e179a300933238ab453dd2060c5748d45faad074e485b4773ee691e7fad4344726512267c1e238f980302047c435bb50066306402303e288fee6be8a36f5dda46a220e175c000dd7b071e5df831aa6b619c92c921ca6db755735cae3b48fdaada36eef07f3d023043563451ace539dc39fbc6a204b4cd5fffdf6b793e483fa040a15b8de1bedb1f4787088ca9dda068078168d75fb5116f0302047c435bb500683066023100ce127004fdb4c8c4e3a99f44f767d0597afd2879292a77c079271d136a84012ff148b5bb7bb5f54e2a610e4f3d262fe9023100bd15afc20f586586d358b5b454f2a3abe705b4d5dade2f14cb02796b0654f8d56d3b4270170113f385665174288f5ccd0302047c435bb500673065023100bd713c709fe2448feee61efa558374ae7340799bc90e3bf9121864a0b3ddfab1d9840ce922739b50cd894687ae72cc5e02304bf3ef8a48a5d1f90ca366679c49f57596bb5c07ee2a958bbb581dd2b9af4aa90360b05e2bd93b0285ccda928ad04f2f0302047c435bb500683066023100db14e20e67edf48053d520a3260285a8285aed8b1bda9598cc1a09e723c12fdbbc5d57015dabb18fb8998cfb9e9dea92023100b1f4929787398b81ec1ccc15f6acf7f0672d6990ece9b2dac88d030973af6d1717f6b3c98226c45e99b830b8caf1a60f0302047c435bb50066306402304d02efcd737b6799bf988ea74a59e167944ce1b72bcbdb997c85093a8b5239d0eea3a322fd435c4d7fa6c97683d20f9702303d5ad2ab4ac5bf2470839e9845417235b77dc6271a141d19276e6e221446ff200b5ebca889f97ac56d82ca06004fc0e40302047c435bb50067306502304021d8b82342a1622d22718450d293553f92c52509121f2ad0974eef262098596fe29a87eab13977879e777fdc632d7702310087065c6b330dee56a4b660bab151b560b48a56f2d33f6b55d80625fe588d48d4c098d8ace76ffe32d8baf76a55b413880302047c435bb50066306402307d5610433f9c8b2c28d3d8ae041fa58b76dd89dbb6c6cf8fdb2edf4bc2356baba03a780c494aeb92d7cd1c83b14844c9023025a00af5d862edcaedf2093b124ab35ceb09b371410a9e80b4a668d5b231679d38c81cdcba74c34343723ab9b8ef31500302047c435bb500663064023028c4bdb70d88bb00b04404cdad102e9ed66ac109626c040df4080f114227a737627c375429f72395513c1ea79789b50d02306655362ac39e6ecca0fa8e150197d0018f0e1debc913ded18f22055a827338eb70959e66ffd885a25213c7d0cf445e360302047c435bb50067306502300c3707649c61590737a66b483b85003e84860c8ec212bf2f7403eb8761ba02250f7a2c7c9db989ed70bf210c5bf9f6c602310082b3a11e862b58fb7cc1a00fd062a4c30255d0c21d9f7ba440a74b637ad4b540cba16509b7b04f357fb351a6723cbcc00302047c435bb500683066023100e8e9159168003489fe025dbaaea81b2d2081e91ed29fa3d6338298167f44bd4e6752731c5ce47ed818d322fb2b958225023100b8296ffd147419b96c563442fe4e67b1c61556013ce7bcc05529c29312fb0623cb68e99d003388dee9649cc051a5f62c0302047c435bb5006630640230457102bc9abdae370db8b7089b8c3fd1b59f6cf6f353a9fe3c7a5192f99949c2decafde00570b642cd285d4d653ec5ec02307720657baf744755b0557ef2e8a339fd7cd9c05d10e21a069d2ad7e264ee479d45a002f50b696090dc307cc73ba831220302047c435bb5006730650230553d97f70ddc8846a61014a0b1d985e626a286f3ec8432ac65a512f45a3834aafecf7b715b8539c71506cdd617ede6b50231009597be39913e71856ab9eca2a988f6ce280ea603e4a37cf7fe0ab539ae77b90d1c566f7ff15905f841f29bf6b2784f900302047c435bb500673065023100d12229885204f0d60b1c2c01023efb72127236df18ed77c49e03363abcdde2553c166b50b0cad2be2d343c1ac1ddf89a023019f374257a0fc75b582b803704fc37661818d90baf5acc2e44427694899808c5807be43a55857eb8548d6d98bfb993020302047c435bb500673065023069425ca86142cfa9ea92fd6c0a3e01e46e25b26a4ea0ef4d2dcb537e0985906dfb8959b4407f10b5fc797d03fc711e6f023100e0193fbaa97ab707435a0c16eba8a2b294580d7b8d9bae890cef52815b5ba2f6862fee2aa89d054f94f23e70f1a7a72b0302047c435bb50067306502302edb8db9e7d34c250435d351b5078da709379bd6fe7a24015badf05783a91e72551fcdcfa5efb8af3809cd43ef24d77d0231009c0bc4e27088ff04f9feae29495145f4958c216023e72a25182176098cdc5ce714f12e36a76658d5867f63bca59ee8f80302047c435bb50067306502302af67c5748ab04b94f3d5dbcd129c8a6c445ec9627cf1b69b166e03b03c66f33903e4c62bad4af216215c20ed1e7a51e023100ccf44c83d577f633c418a855d27df64fd8b9ed6c21b335134dc34499d69846f9f912e7eb97f5125fbde87c21ec7e8a470302047c435bb500673065023100f2ec843d62085f4381ad28f3914f0bcc40036e8f198094e11bf01d3524d25bd4bcb550ca57034609114cb8d56101040802306755b59eb7f8f01089d7320db3e014719c55440229198f0c1241d6e6d128633c0bfc009801b8208247feb3502c4c5ec90302047c435bb50066306402302e7dac8f1a1df9be424443f297c15dce7cc48fd0fc5a745a2a2f1dd7f65c9157268c302eb3224ceb75421cb32ea72cbd023072df7a0a6e19b7d4a884207cafff167e1943bf9665fb49781dc954e1e842cd090f85a53597dae68ab26777676f062cd80302047c435bb5006730650230134a9d164160105ad21201baf0b1fa9f26fed13c6f8954aa27a8b1e511f0187563b7bf7ae9c3a2cbd7b3d189934d3d8c023100a7c00ad2d68521642654a802401fba879e21e5bb364dcb9f53cb1d3b3b02b8d3b7ef9d010e1d1c6e2f339365283cbd3f0302047c435bb500683066023100dadf3477a74b50e8b1e8ab535ac24fb31c91226a6846bcdb42bd5d5399b7cfb2bc27c5474db0ca6075bddf8bb7084d2c023100c2f23b74e1b2a096ac1227f0619aa17d952b4b23abb6ffb923231808d31e47a2ffdbb385a9f6f80d63ad54e4adbbc48f0302047c435bb5006730650231009feeccd307dc5de2d700cf515ce95319469024c2da54555327b9c6568d68c10c727d4fb05c72bd585e97726fd2c8946802303672c84aecd2f20b8109ea8f565af27aaffc88eb1be95e87c342fcf050b1365a9fbd45b10c59d5f8f92c0fa2c5b299ec0302047c435bb50067306502300fec686f0abdf7eb0dad8395944eb5b5481505570f846696410df9a60460ad31a11360ce8646d2a02865d7a248b3171f023100a80bf6118acfaccb9e5e76d41cc0a1e22a41d5d18dbbdead96ed13a0cb7b6e84efbc424deb2f6529dd5c52f73c89dbcb0302047c435bb500673065023100a7a92cbb8b5c2cff1892da07e1abdc0e08b563716557448c23f0f37387bec4ea02b7830069956d283bef97725d68ab8b02301b434a45fdc360c3e21448007ff19105f5e7824e9394a899203188325140ae72b18207062619bd3fdd0c550eef1aed400302047c435bb5006730650230016c8b34691d5b5f978a95fb54c55adb5b5eff50ea063ce464af840d5c14d81bc12fb6b71c8d3e5da6599590626ebe8c023100c447e11b54dda76e348b50011cdc12e591d23b0aba69bd86e5ddc1fac47e6c8cf8ffa91e6f357ef48a7c8535774b48220302047c435bb500683066023100aec59e0f16d391e6c07bc5b0f96ba75a75c9340ed7d2528444181d85cc3c023e53d8b180e86f0f8962c9caa28e3b58fa023100bfb67e33b71cb5f163ec8413f6fec4b0474fd821a5144d495f41add80991350fadbd8552cabc5b3fc30f1a30c6f0a85b0302047c435bb500683066023100ab78cb373a6ec480ff9bf95bb37adc9b8c3e5467958a1e2c4dbf14c2febfe565c70ddf967efa6d93b6c6a0175f0a0c37023100b3f31a4829899da9d2d1c9008ce7b5b991ad8f35ce78516f70201b6fa0b81df9d00121fca79ef0f11b6abbbe3be67a340302047c435bb5006730650230507f1411fc73239b68edcf15760af615adddbfa16a1c597185bb0b24b9608eee669b7e34bb73b6cec58926391b4ad626023100ea79e7597f7c87a8612e17b1fc6c2c5f84dfd7a8fab7b65356a8500d80353e15e467568c4491a51dd21d9558af2970a90302047c435bb500673065023100e55b80af10c8a415a0eaa0580177a9f766f830d776924b43a5b0c58c77253a77f6b9ee5703fe9be1eee8eb6d21f34d890230478ba15a711971196baed1fa3879bf7068d22a3236c0021f19e9ab637ef2c083cd37bc1ff9bd5f321866f832ba81d7f80302047c435bb500663064023066357b33199cc4f059d050c6b3c70fbe46870f35dc826723038add52768c878b97a5d94944af9dc79bcf17b601971ee602306c50b087311209b8698dfa43187c647ef8e579675ebc44326efc3a6afa16ce054ac82d7481b7a97607621a5a1111dc2f0302047c435bb500673065023008b838026e2ce97cb9e62d8222f905ef0b56d31105ab0a262b54c6785b8c44afd7897b3287696e1e88486b9fed00e1ce023100882ab2da8543984f3948e8733a60cd566c5b90102225f547223412929062c36151768328523de6198f6ffcfdfd159b7e0302047c435bb500673065023100a0d62a7be2cc6a4e8885dfbc824c3467048d20dbcdef5545059fcd2d0139a1930ad1c2b46383ad52245da2ec4d70239a02307bf8f75e8e07b745f827c4d827f663f7381cb4d15b8c072a0f0f3d6248ba19dc3f03b47bbdb06f257371899698a695a50302047c435bb50066306402304cb217b0ad7098fc7da7bd6f3f01db2ab614dd439bc4f0cd7291a00732e97ffb6260474c8f7ff677ae65b8e8c1e03b09023069bd3fb5302fbf4d1a107fef5f8f972943d2e35d578185252c1422baf065ad5cef5ba2f2ada0bffa1a4ab5f7698fb8dc0302047c435bb500683066023100f4f2e8c96718cab188e9def3f484701ba826446c8d960b093dadb3bfb17a73dc2fd289dbc692945d7b5a5ef7c981c1860231009b6a868e36c09121e5e42bd85b76145ba01dab9726a5882ab1abb33a93c47f6129165da986f5449af34c93d9d799acb70302047c435bb5006630640230075f807090ca4fcc356ddbaa60598d72b4a27b29b1f44523bcd45e672317dd1c79a3ed9fb9dea2fccc6a566f405923ff02302b8f575768f802e41a7f96f00fe433482bf69645f10eff90ed8de83860abcb10de4c53e890814266b5be53dc72c763150302047c435bb5006630640230634671f064f6470ac8e0e2f551d87b1ca432b5071cabec93c2c69c4bdcdbe0f9e3711fde8b975193c1cfdb482619b05c0230494c7d6254aafa916324b50882a3ca6762082ea36bba4e93431349562c915511319d30d3f94f34ad58ba2645bc2338430302047c435bb50068306602310086f704dbf1ffa63d7aaff971300c1de4bc90285291f0f4d905526cb5b1d846094bf4d89bc48410bbd923e4dd8e0e5f70023100dd70ace06243c45651e7926effbce5e5858d1bcd8ca76c6e26f8525f1e3c1ed23150a6c80e66b358b706472f0086086d0302047c435bb50067306502304b624a3305a0de0b4fba8132a1670b120f45427544341d9f643b23b829905f6c4c6798e9746ffb71a7d52084da60f780023100e7430621373341405a3febeb2df795af0f0d3cc9966c45044bb62a81ac85308105dfa58524a956604865e0147c63cc550302047c435bb500673065023100a0aa82dc2cb37dbb2cc2d7847358afaad1fff67491fb283ef65c5d06d217cf278e2fea53b0a8c09874ee8c54f1c34aa702305c05234a9e9245c58d32dd7402540f2da3966b62b517f58c48343726a0664d3b8e6c35b1f67d79552f47c90c4c10990b0302047c435bb500673065023100d81bd55e19d81789232d1ca6d79c5a9911f854b396cfad08c6d46befabf1087b33e4a700ee2b886f15657dcad8bf7ec902307f8465f7f70934a583a2e039919c81f87897e89a146416051f798049047b8e2b4b91639c60793bd699af1791554ed2b00302047c435bb500673065023100ae3d1506f2c202e549d9fb99ef86ece6fff18d57e888371ffb4200bf92cfa8a10269c4a3b4f2adb010f5046e90e01d000230050996b0b8d78fdd536eaa2e04ca9737beeeb82dc6b219caba5ac2a7f5874074e478eb5c4fa3b4af6e128a4ae467b4d30302047c435bb5006730650231009861f07db054816787ae86d873f091323f9873812d3d4085e8b0b3a0e08716159115e4e50bc6c596b9bf489202572f94023039644f1324409362f8ad3d286fbfed4139d95dc0e9df8ca46fcbfbed556da988e8e7dfb0aebac68b09a1d12dc60d357d0302047c435bb500663064023045e420dad5182a954cf62fd92c33fd63d0c4faed4c00a495ee9fe095ed7094c6c41051dadf374de441c3434e1f53d670023031b673f6f45bbd9ee44d3fb1d6dbcb4aa7eba700c9570a9887872f737a5292318ec2ab017fd1f52204005e119819461c0302047c435bb5006830660231008fdd68634e4b50f8c7fc5a19f76004406cd4ee0edfa090547a267ba8a36ced1893251f807a0e4d5dedb33487ea4acfb8023100c8c8a1afe5b3d80a91f99245090a377cc32d70830f38caaf924ea8535f9eafa800ecf37775cd90c79965c2c49bb340020302047c435bb500683066023100a02ff6a220eb983ae873417100d51f0c535e96fd8c49bec454f20873327ab94f01503579acd1ae6aabb61e21dd55bded023100ee02a97bb1a94202b345ffab7feb7db98dc005a79f42a7a8fe72f92e1669372d7ab25c50479f5f6a9fa4c6bd9c36d1fe0302047c435bb500673065023061798455e1e184fc5c98c27a64f1bddb7944ba73b6e51bf733175dccb3a2a286f89eaee72708458de85c09b018238134023100db28c4ba1be028097ec5dc9d64efd04404e27e686a47aca8920d5097ca5fbcf4d5d624144faad0ad8447d0a001de25890302047c435bb5006830660231009355b399904e51f65eda0acc99633c007636a4fa9b9f827beba17b6d3927f9e7a2ab6d111092eeead337ed532e0da49f023100f9a10ce0afdcb561683b72385a7d57f72bdb732a9230fe5309e286a96dcd3b5f71fbab3af88e07d1a484dfdcc01c80d10302047c435bb500673065023100d4eae6a7cc652bafaaa4cc75862f7200a58c5507134992548d2bfa1cb76364d50d6afa6c5d31a2a2df6567457486794202304b37ea86ff30ff095590593c72bfe13ac4d49ab3c16b2bae7ab439b821e52558f949d24d8747bdbd9523fedc401172640302047c435bb500673065023100bdeec69dcc495a2817329c1565fdaff8b6aa29d97e7b0faef79c74df19a22ccf08ced2919ebdf99ec68c74210f8d939a023061c3348ab8fd8a9a3671c616b0b791a7cb0107fca7054e4fc06ec592d302d5a20dac792cc73cd9935823d614bb4afc950302047c435bb5006730650230781d647aafe0ff608e154788ae83bceb9b3919cd6cd4b4e406b71486784a50def4232a91747b6dad04511c675146aef6023100c3c4b5f8659bbfc6b95fb68c56417b47163322e533c230e7378bafb8b01338a6674f369e105fe9056fd008dd0864dce40302047c435bb500683066023100cfeb9e37cdc6c5f12c180a37941a7b66cf628d66f935c0c75cf1e14e53029b8bcbfd9d6bde7787d0a815dc1c99ba157b023100980efa7a51297dcceff9c62be40fb4c0a307bd88d9c36860a575bd8e0b725908df57e1c6ec8d625ec30c7ef9abb1fbbd0302047c435bb50066306402305e95115b3df0f810c5facdf0846fc01e0bd64de4f9b525aa69d39a3d09b45368a610272b6c40f87d7cc15b89e37c708402303af427ee44dabec2288038a26e9a5d891a2ce3ec4fb3c1398defe10f617885f9513a8b600584a50796fb8ff33be5add50302047c435bb500683066023100944f6d8b583c219f73e770a7b6b41e23170f3117ee5e28a07601fccbdb5be957df52d88677cc0ce574140fc2ef6197e2023100c8e54c10eb87fdb9f209b4304a11fea918d716abd18127497947e2ee1a98b7ee4d0dd87d02be562feadbc465b6704ea70302047c435bb50067306502307fad079f4f05d57e003b399dfb8368899dd4428a9e7f1c7bc36237a1c6a512ac63fecf7f1daaa8fbc4be9c52fff37d2f0231009157fbe3a9853b18e947b37eb11a1cd14586e562d646231c8057af56cd91ecdafd00a6796f5f0455156c3d331df86d250302047c435bb50066306402303f140bd6e7719235f878bce3bb583099e45aaef69197878dbcb3d109af4067a05b102a79ab53c8976c563a701d0d1a5d023036a770b14a51dcd37148a96fe73a783fafeacf16c6bec33c99366968cdfb5b57daa7c3600a7436d999e95f37480cecaf0302047c435bb500673065023100d8fbf5ed434573cfd68d3037802d0b8c90b01375b8c3b9f27a004aed7010fbfc400048712e2d11e16a5883c552be1bad023026ba63dafded5eb1af90d651d49cffd4623e83fef4cd15a46cb504a1723cbfb5773cea318a9bc1e1948bef15b296c1a10302047c435bb50067306502303999205c7f912e49d6ee4b72d1a2710c091c66bf64cf78fbb51784587fe12933b243a50a3032e02690f1646127a944c7023100a6d7c88a8821b455dc27c806d8b1b7fd8c5074622703032668a1f08cf49df5225faf15d631f0eca878fb2c2ff4f3fef60302047c435bb50067306502310085246b400e2d0abc591db6fc4782b332b99f00f079d2aef457fc5812b1d52cd36071d25b3b284b948911400ee9211f51023021544d427ca07717e3664a7e8b7d337b7dfc00ef8088366b67a691cd3cf72d965cf5e5c6a89fda0ab651d6c98e166b570302047c435bb500683066023100fd382e9fafdc10c26bee586deb7669032a3556f62711b167ec3a3f685ad0a30cf563fd7184fe5ea9fc1afc5b10ba11eb023100da4e37ea19c28b8b80d4f3cf380ba9f436094637ecb32b6eaffae52c686dd2f84da16eb03dffc1966765c89fcadea27f0302047c435bb500683066023100b9764c0638fcfa4cde222ad942c601ea3ea26592f77ee1a00f054413524efabfc2c99884731f052b5cc75c0e02594b19023100bf6151eff2656fdded48720c0bd1cf5b6697240106aef2c70d3547345623a762452cbad13c4ac40e66b6e20350d56f390302047c435bb50066306402304dd70e2c22d93d1fd49ad4a918b00bc55353c7b5fc13febaad9b45e9f0166950075004fdefda6a19df8f97dd26ea92dc02305374e1c7a05581fa49d2e0d8bfe13993f6631ce75dac34a9c6f8cafcc50d6c5178d336ffc3bafc2533a3a66ffd4fa08d0302047c435bb500683066023100f3cf9c911b15f1233b741249ce761fd88badd2a1a09adcc9cd5b232201597cd976b8f9f54ddfec250d12e371fcbe64d2023100c05c428b9cd824bc99f3abb4bdba5c163a58ceffd6a451cb258efb87608153478d0bfcc9da2603fdf57b16cfe27c7e3f0302047c435bb500673065023054fc72de4cd32df49bd2c6482d7a43c64d00ea6accd36d94f8a6bcb69840d48fc3457f320817276c352b5f897b0b18c3023100f70178db74d1229036623099c09c350db098d7110590187b509d19d4bfed30606362d5becadb5ae86e53efe47572c2cd0302047c435bb5006630640230720b68dc22102fb7ba3f4f0111a0a3cc6951249c48fd49e185917003a15d6fa6fb4ec72e8a14b95ddc174b32a3e8862102305dc712bbd374a891d9d2dfe48142075b1e337954a0bc4f743e99db9ccef31609ddf135d64590b3cb3d2f229ac04212a20302047c435bb50067306502306f2233f404c5d933fe803e4672cc76c829f5a7a24704132a86ecc553dc8f21096087b9374bf77983756d75b63fc2eb20023100bbd34216a2e169f24d6757a171ad445d77f8d5e0c23e8c9f4afadb3498789daa27355cf30bfb4741445f0903d6c58c560302047c435bb50067306502307c7149943948e79135e4a3a9d0c9fc3d51026b4be773ced8da0fc4b6ddd954911d9a36562283022b4878133a61574c2e023100f5442c3ca8eb37074613a1e7f32fdab7bcd385f1aa91646e177b75188d8cd6f46457ee950d177566eb921fa7599d4c360302047c435bb50067306502300535d3f759260a00873bb909dd352c26786a7070a7a9495ff22dfd0bfe3c680c0696d355e83cc7108545d9b6ddec5547023100e5a1b23aa995934c65255e62166fe42b2a3e94239a2fbf8f9b3e9930f4606e7cc8697670731a3f16d78df1e6d9b5d3a00302047c435bb500683066023100b7ec3a6c10040fdd8bc6d1e8438afb280075ca0c49b9af5b8b185a7a12dda05c8a7c3a4642c8cc2932737e36d452e692023100afb8f4b127aa2877676202946170f23604f769ab07ad6be35b81aa49c43082a9dc7aa522b2dd205d2e91b93aff9822990302047c435bb500673065023100d5ba96830883dec6b32a3349ec37798f80ca95ae75100e1a52e0f654695d9d16a3bd43ba64f52f894766126cfd516317023057b939b552b0e9db2c98d381b323f30cc81f4b78c99e166afc254f565156562be1bf548f872e33af6d93ac8238768aeb0302047c435bb50067306502305eed644cd0458a8be92f3fa5d85ded7e1ed9c94ed018854f9d05c6dc0ed04c0bceea86afd5450a930958b1f5e8311f43023100fd45d65ceae2f154b3d7d3fb721fb63805ac6fa7b3fab3cb4b71cc7a519624867b64db3389a44d5b0e4f0d000ff86d640302047c435bb5006630640230530ded68c677ca3a7098f401a45576ed634e2cc73e9ebefce62f9be2bd159dc9b4d60daa2470d59ce0ddf48ad19af80502300bd3c1888d2797120c886a94116969c928e4c2a74eb57553eaf3e336a7041ad6ab3a0aa0682897e6aaf9f9cf31a471d10302047c435bb500663064023073993dc939aeefb1a64f626d81d897bff686a3e26ea5dd936cb296d3c5b6f23f2d079562428dbab8e5dd9908e0713a240230246be2c3416c14652fc4fae40b25ac310c66c8dfb0399bdd4f11208893942e3c1d908df2b73be69740311e5767d2c1080302047c435bb50066306402300c74ca621366304eddf1f72f83e6bdcdcaada7bb526fcf7607e6a31da72c55a4f422dd1bdd9e01a000302ee86fcca57d0230689ddcdacbfd875891158c4eeb0b645ea1c682653c9be25270de27806f100282e947a50fd47209e8eea190a5408980b00302047c435bb500673065023100988cfd94e8115c21256907aba35f053f813ea1a2b7c2877333951dbde114e1c9ac05ffd5bab2897d4375c326b31b38970230205305b439d774e1147e80c602c46d85d979290ca2e02a94382f348e83ce8ced82e550c1591a86751504cfed393a82230302047c435bb500683066023100f178bb323012ad9dd162aa216e2afa361b40a543c3ab3b46b3340fe9b6c41ff7e84f4cc6ab86bf1fb4165975f3b0ce9f023100f3c1895da611619cb6d7bba756cfdf8fa672002afbde5ffb0181f96a83d55f87c26cac662cf93e8e142d806cb89d5e770302047c435bb50067306502307516a9519f00ea8734e19897f3943d7ccf99baddeab43917bde21cb15392f60bf5e0f6eeabd819fde89dacc19e1e78eb023100b8cda5515c22aa0a4b13fadbaf8259882a5755528c3274fc410b76ccac4994d3f32264a45587b262762e838278d1fea30302047c435bb500663064023020c30b12b75f66c9b780f32d0883e0fd9dee056297291552e8e3d87cb0bd3019b8452d38ec2006b35f2afd6fed0316fc02305308932a0da8f826db2cc65898f9f87df82f4685a6c8aba8bc32686f53279fe66964ee13094ebd81857a19d74a48a70f0302047c435bb50066306402307d3b4641121b2c62aa75c4cc4718edf5e80f5f8a07de39903b75008362cb63b422d7bcc7f1a18d7aa89180e116e074fb023039c5f3398e783d4a8970748c1318d051d2f4ac86daf674594ead1f9a7e43a37fe4463975766cbb5caa0c2da25c4f6b110302047c435bb50066306402304809e314720152a46e9e4be6680104094887920fcf93ce9fcf53e41a924f8d9e710ab8bc387298762fe6abd64a0d0b020230393a52afba7d87a9d031b807c8ac7d69ddd4be3098df3cbaa6cb0a52fe835dcefc4eeed79b2a0892870a1b05cb99ce630302047c435bb50066306402301c7107b70960d95cac87d202b98679ce8f05068b27f69a74ad1b66d65151842e85764e2332566255c6b04867ee881c3602301618571f41ebe7f8789f3a6e4660a014a6081f417e07470549d26d05d6f653647624dfb6322fd23f302345b9ab3faa570302047c435bb500663064023054854059a7c0ebb38146ebdcd76ff26302b33236af4e7d12111c0e0bce4db8603676997efdf467012ef3608f1b94b942023053981ccd49f9626f2a977373d1d35e3fc1905c1b6d1c6eb66a03b6157921a1b300b37b0083bd99bfbc742cfe3326c4160302047c435bb50066306402305cf68f7f2e0178e135427bcaa61d8c6cc10d65dd0041201410f3ad6f53b644d3b9155b42e1b5acc80cebaae120f6149102305eec93a195b8770eaaf0f78d8f2a5180048a4f7e217ed122e10f4fbcdc930839ea247aeb45dd4b161da052925122cda60302047c435bb5006730650231008a5a0f4cc4c89606e1807951ff6cbd2e9da9a51f1d31edb047689b1efdb42d452079245652050c657f75d08e075a2ebb02305e03565fa113813be0a3c9c7ae4a2c713b102f510d863c4ff1ef7a695f145ed1c909aaac4fbf7a11378e7743d66e400e0302047c435bb5006630640230263879a04c15a2c378885008476aeb68cc8c82aadb53bf608c85872616699a7c8bf3fba14c23d48c24a705cc5c96fcf00230453ec1c2d8fce81da8fc48e67a568ce509107c61db547311089637781d7f2f9b27247f7f7225756306298d92044bc1530302047c435bb500683066023100f9fe4121a05c695ef6a185d67dbec6fccc7c52242ecb26ab54f9e09bc1018f53568c98b33f3f1096617eccb375884f16023100dacdcbb9bb9aa37345f5ff677a1012fab2374a46457c1bfa6f6dd211671f284911fe8815c8228f2eb65dbedee7176a270302047c435bb500673065023100d6178e8aa5c655383fc83c803c22290250dc4bdaba370dc3e75274302138f690fc8c3ecf96c421c66f0389831b8c396d02304809b1150ab87da11e7b86f1adf2b3b14ce21e52fe73e2513778acf90ec6778f981691cfe90d740a38895b9a1257b4eb0302047c435bb500673065023100ff241bfa2e5a98928e79a8bf189269d9e33fb583937fe260ef7af6e8fd2c0a1696b860551be5599bbe68e59403fe6b8502302230eab8fdaf565f0751a654cd49e21f527bd4dcb66476e40392b2ce21b435ef34dbba2b0cfcb21511804670580cf60c0302047c435bb500683066023100cd79a65343a167d8895cb1824628a2cba4b2878e2ea0c8241ff88346950188edc5bb595c17816b4cf861d9df89848652023100bf6c62f167d9137738d8370f979191c8fc376566fa1903c8ff67b9adcdca45de3b849a00a83f0c8e69310147ab0168440302047c435bb500673065023054d6c0b3f44c181bc62987b571a194966c13df7ebe05bde0486414dc9b7e77f5f65a7421111af6efb6a5a070eb8f83e5023100f9cfa02bfe522113936d17e3f03e27398be73bb345b171fc11e1abd4e8c8ece1901b2cb29a974c0ea4a353e2afab806d0302047c435bb500683066023100a80282e0983d12e2a59ee94756ce3fc928bba4a8f2dfc0c7833c9bad93398a401a66c95e99114fb58959c778dfcfb946023100ccc2b38c59b1d41550ad9a1d035955c4567975441b8d69564ecb77932ce059ed8086a42c62346ed5c84a21ee2928ed860302047c435bb500673065023100b28d7bdd87059eb5ec3e75064f44a005eec725cbd3c05c146770029d031fd13faee883361da5f152a75a506bd00c48cc02303561b09e28c13daa3ba0cb5144adb2d7a2c38e448b82f5974919f8395313e6691e1472e411a563b57aec66f5cba0a3920302047c435bb500683066023100dbaf15a03e902babc83909aa3fbefeaea892b612eafa887939631f361f15c064fbdf34a2d93cee82ba222a197183cf51023100fd60e244c846db3348f0833540604879e6b9b63d5996e1e1fb2019d3496fc592e2bea288af3867c14313fda2f03c3f450302047c435bb500663064023060d156a76b338632d1c75cfe55438688eaaf619b1ba753bfc300d8b63e965a6fac84be6a85634637235f93e5332fe4f0023022859f67035c90146828b9d424f1d5b106bd5eee4bafd5a9c5fc85bb9158b820cd7d931bf01f7b775ec803918751af0a0302047c435bb500673065023100873cf267f848d875a2bde6cf7b14741c46b1115718ae028e33be93cbff681f7a88ab028903a931eac40d23d786615c73023004fe6fbf99412179067a7adf847c8bf388381e140e9d226b98d0da8d8a48661c39e5f8a753e293f090b6569ae506ed000302047c435bb500673065023100ebc32d4b791b761596931f37e015487acd10eb1646902f703266b2a8bc06ab27f98f311f5af8bc9df8ac86c60b487b7302300b9846d9ee33d9c19da36f49a8dffa3a4e26aa180c0ad7a82c397bf9ca1821234d4c62d229b6ad42ebfa7064551b4dd00302047c435bb5006630640230008ad5bbca6902c0fe83ae88976442a1852ffeb7beb94847cb8f9e387c0c62368b088b51302abfd9512033ca16dd9c1b023054965c669351717836d17db662dc0344c097b26ee3bcab2dc680c01a4b51ec721785cd076fb44f76123aa127bcdad8ff0302047c435bb500673065023100fe043b1ec2b19898ebe05a257f2923822f83652ea142d1054a217488a6244281df89525e1ba205677b581c868f643da90230562186ae4757922049869b6fdfde70066a444892815ed7235138ef820e28b622b53b61cc3b1aefd12e5d2e82e08240d60302047c435bb500673065023100fdde687dbe3ff1906522e1c70e336b182659c58b7cab91076afc196d69bb76559ec995e64c6cac46e34834dd5e5eda9402303e1f3ec20b8700f8711a5cbf98ce83123564afa6582f3d686fc9be72d6f3a29ccac6c643b1161a2f93faa2e7f9cfe82f0302047c435bb500673065023100d684b7b6f746553e6751ab2e587c7b540958b84e27112ef39e1d0175f086ccbb207e2ae767c7896bab9f062888fc92910230258aefc59ce2cb2b20d2e20b6f3bb486e9321735057d72db87f566e770700eb3c6b52a68f25eb8543223cb21f8068ee70302047c435bb500683066023100a3e69c2ae37bb4208aa9139aad58e47b68d9fd48c09254683a763fe2b1fdbfb460460ef429d23374a7183be73afafd91023100b621839f3ade2ddc53f0d3db26d8b1cf1ee512d66fc5be998b671c700bda8d247201d6c6ceae6835af677f411e941ff50302047c435bb500673065023100fab5d17e3c4ab31a3ac4ec3390932dffc2c72b9a9bbecd5f9e5b532b89fcf45defe28d7c636544c7301621e2e34315d9023059df19c57c7a6fcfc0ccd6f353d7b28f18ae26560c264e30eae09bd5c726aa5d40ed62f857452447a8db4fcee00ce1630302047c435bb5006830660231008d9e55bc6ee7319902855b8a121fa14013c87479a1d826de33471a440f124866c1eb2f67202bf8dce29d6fbae49e38b50231009ccdd6133ce2ecbe8b175830bd22c01739d6ba5fad8a87cd4dd9d79002327a8a2b4d09ef419b354d1b96dd5f1fed83d30302047c435bb500683066023100fa3ed49947c2bd8edb4710128b34e839b29bda0631e1902c714b9a5348703ac7b0bf07714399614a7d77361516d3449e023100c5b391356b611053db7af7806eba9e1b511010add6196453833667c8dc923cc41b75925117ddfbb1d0e25596b09f639d0302047c435bb500673065023100ebf65498903a8bb8c4cdf2e612dc0f37a47b9e70705dd536140bab4400e8afe2006ef4bb8077025751b193b40495bc42023072e884301e36b89f9e23531705a4e832be30124a49a255850c311de4e5479f1de50a3d78465fba103f316193158a6fd80302047c435bb500663064023066d8bb1ab6aecd768d09364d2b893486b3a08003a398947849fa9e078074a63d88b90ef55687701621f69971488d149a02302f5a47a8c9cd3896e2fff18b8f85c5113dfc9bf5ea3c763ab851f4dc93e9146305aff00838eba3b1890ad043d20fc52c0302047c435bb500663064023022938b57fc6dc55f67999fa3cdb2545be8755f52096dbf6f92908bbcca97ca2f6206ed4b1a72e0b4cdb8554ee6b43dbb02301b44b3c32072f5f58b634d908c4703ae4058c3376a4647e5e626c6eb7222beea58ce816134847006d5671b92f81609850302047c435bb500683066023100c75fa1378dcd91c569d94692ff20801b6b2d2abe506be08e6a7d12698d60d2ed5ec2896bc1362e77eba99a9d6be754ff023100e71be9c5d07a68b6bc72cbdcf82584a71671266d17fe0c4a9915ac7a1a79671cf1e1ab9910fb18f18a7e04ef82d7ea330302047c435bb50067306502310084a1a4ff2c7317bad589c44c03a0c59df5a538da11a79f5f0380d73db4132bdf63b25bc4a0d325ab920072e20540aed1023050a0d3eee71ab71870df72e615586dfd8f7f9a90523ca97899f92079653b65840c6f1ea5fc447203e2ce62015b0094800302047c435bb500663064023011eb6b3b55ef25da500ef916a0b12686111f7efbbf368425c08a452ef232b8706a93b0a630b5e9b74f3afd4178f72b7c0230331ef6bc55234dba70b89bed87501d813b0374c8d047671751f6a8d88ec9b315e33c6de5173f77750707922d7a6fe0f90302047c435bb500663064023039fa076d3cf74d51be0870a94c8ca516fc580ff00b7c1c9a48bd87f8b9543a5f9313454ec6929aa2224a82e737c4bf68023056fed8c3ea2a8b20dc5fdafd53f3eb3b62c18af2282056a09cb13ac8fee90e4a96be3598092a3cb448928d2dcb6a09680302047c435bb500683066023100adbfa24c377ed85475fc67a618aa1427f769f766758d59557f3a749c18b7df8eb50d6bba9de7ad9f39c3ac0480cbbc7f023100efb902df80b1776a6a511a8e47522ffbada9f0e4b2de55a4d5f8ac8864b3ce0d406899c0e9cce0efbaeb52a8861db12c0302047c435bb50066306402301987922157684d0bc0ef72f8a5507115fe16ef62e6da6b5ce3d7de70c9dc7188f62b4218e54711dd718f5bc417a7beef02300ee2e931b2cec6dbd684c71beb1867bdfec66210509f52658dcf1a9a3ca113a2087dac84bb47838c14ef8b0a327d74460302047c435bb500683066023100f17e57f114c130690368bcedf332c14f7214d70e889e6ffcf6180c6f1767bd2a134790dded4685bc60185cb9aa2bcd89023100de025e38cc23cc1e447ab01f189fa34c25f298d8f0f5cdf694fa07bd1630ef85bd90dd59217e2d65d20340484638c07d0302047c435bb50067306502302b958d04419b33b40b1b397530f6a73246a6029f59703921545406fc6c962d2f589e1669de61c7c5b290841f8aa8c5d8023100d2584f85e2a76e0bf4d32bf4e1027fbbbca67f3f048318f35d7ae02195d4d4ee195d28ac4e8b3fbbcc233330d08bd1650302047c435bb5006730650230486c7a686630baa84b6a37bf31ec22aa5171d9735e4b5addbb539b3fdedf9f7dc95f399c20ab0f61d7daf26607bb550f02310087aa3bb5816b098e52623e6ab46c7a6a08043511f945d46641251ceecce7ce3b2b977eb3b327bb40ab2b2e4d539630ee0302047c435bb500683066023100d9d8fd4c65324814f7e60e21d00fd9b2bb7db2387c8e6ee9062f67a8c03bcc9b621dc3ea99a26b8a7cab37022f78e55402310082edea09c4d6be9e20bb48662d670c9915047cd97e8622b9b65f63b21a6939317ca197cd2d0b471d5814a0744592ecf20302047c435bb500683066023100f6b4218281cd31414150b6dfb1f15c72c17a4a9a1b80f9c0306c567cbfd3f5d4c38ac216282144fdfd5c3c705ab13317023100931824cf5cdce2a11fb524e11996ee6e484d5e53786787b15fbeaf09c8a54eb9ef4c04943a37dc03f65884b17d573bed0302047c435bb500683066023100cbf5d569440cf4cece15c2a2bf46be642289113d6a056d4cd8b90fa329e87f3625ae37c21013f787756ad9dcbd6e7742023100918b9b3b6a2f88a595bf45a66117b49b992105cb85c793df76d7e3d6c7a7eb1e1b508d287f8dc3c7d0a35185d86e61e80302047c435bb500673065023100dedfcc2621f18eb0661df4c173a836589cb9fee9ad9b6915a09b944f994222de51af0a4e615faf8d02a60245dfb884ea02304c17a5dd37d7092f9675d798f43a014e01b35dbc83e618b433f2db3e585cf0e0f7343a4cb614e8ffe97e89c480208f790302047c435bb5006730650230333e610a8dda025ee58e17ca93211dceb65281a9c77b8363045c85f38e9114ac1dae883d001b9b018ebe0edbde4f70cc02310096b38952012255177f7867ad595a4f14eba36828d505827b0b577301ef9b2ecb19ebe92842207069ea712b261993d16e0302047c435bb500673065023100fc5d182419432b187cfffe5e8d77b9b1fb11c71a44b279cde351c08f649e29582349b18f6da2f48c5ae6703cda77473602304c54002ecd8c3d17077167a7f5612c31675cc900f9e296f5b0f9e9c68eba82ed242fcbd97eacf94417294411caff625e0302047c435bb500683066023100d1acc26eae189e6b934a98826294fcb214f88f82afca9f473f993abd048decd66646fa38f257b42a0e7440a6d6905fdc0231008161c79a28a091ac07cd233116a63e5d2aa954a6756aa1f05956cb259488b7b51b0cdc948a9ac1dc40880072294264030302047c435bb50067306502306246c182d6a5067caf4039ef35fee0a832a03e1e96332891baa96211ea2535184e00aa151b33ab22fbbd57d6afffe644023100e6a36c0e06059183ceedfdde8699f0a6dc9943007e2ecde2895ed1cfde2d59910f7dedbef2ab9989935d94e264f9c04e0302047c435bb500673065023100ecca7f8169dda65a5ba88c5f3a2aef5453a907340cbadca6d31b571c4abcb0ab139c00a7fb02835a96c0eb574914245a023072048f997e2f8e6c98af33b47bd804c0f8eb8e4a28645f043700281c9e4676c584e4210659b3fe8a36a1eae04d9cc1b60302047c435bb500673065023100bf2974a488f02210128f1d458bc9fc3c7172b77256d967b1a470ceaff51a0e5e6937afcde74d6b2ab913ab14239257010230681b713368fd73d2f83dba579bff736cf456015c3ed1b9a4e0f4511c4411c63ebdba9542099071ec89a412ef7b3884340302047c435bb500683066023100ab9cbd643e785d6d5ec0c761df559a0f06483487a723625f0a1974ec26ffa518f88bf31067b1945dce1757564637b9ba023100a5f6335d17f5010487e671e19f0c9429852e4e0ab621891ba5917fd71f475e55789706927713c1973d0abb581f0db8990302047c435bb500683066023100b1977a5f15bc8160e79a15b3de8c7b6e1c5c13ffc3647901fecbb731d9ff986c0fc15348e65487a1f16f95c577ef4bb8023100f1fbf48d37caa79dc4525b2b80492e0c10be3edd7a574aafdf9c3cf1ee4e2f5158412eee6abaa6221b61c47868bad4d40302047c435bb500673065023012eea2fb553ab89787a2d7e8497b897e5d33b18639bd63c9ce9e6bd09661d2bb279a3b62a306d22fb10052aaac7ebf9f023100fe6f993642829ac9d656d7b632e2ceb55acbdb2b64280e097368a3c5ee1a53047a2e5ff6fa8c5844e42e1595216b13cf0302047c435bb5006830660231009a2ac20708754873cbc9767e1b504abde577be088bf0cd632262ce00407c4af72b480cbb18df7290b78231f15f526608023100ae4af2fa2566b1036ff68f5a707a4f80d93fabe3c2cb1a482128497979ea68b4e6fb4fe2ac812acfe42a8f062f8105fa0302047c435bb500683066023100f9c8436b0321de033f4c564b7f336c3acdc699b9302915e4df6d37994ac31a4c5b025cc5e256aa80f4ddbd8ada51d544023100f854cfab4a2040bf5783a1937e9a6be8110cfd7dae8cdcd12752f9bd104083ef6367ea2e09baf3add0b6fe5d7e503bd60302047c435bb500683066023100ab26d3e43cee96f6546a54c8554b575842fba5b601a8fbfa45f9c46575053e8696cae4d4c3e28f3a071f585a1c24aa81023100e6be4a6901406472b9103bbfe0fda3722b90fd0ce1a754daa7c7c5aac1a3048434c6cfdc5ee7d85ffef74e40024e17ea0302047c435bb500673065023100d9f4e41bd0a440c0bd77dcb00133d836df8bf245ac4ef0e029c3ed47ee1ba287af6dbc3628fc7c49f8281acd1a3c282602302244b0d59f06b9cb6b31486917e547bfc592964e1b409d0cb627f9faff98a4f633a3df1e4313b76226034ac296b9d9ab0302047c435bb500683066023100c0e43b2666d41bfd904dd9587a578b47f28084c48bc5b06e0600a17a414178319cc37d7b6fb0f8d17f09fe86cfdb4b4f02310081ba21f82c97b992330b8db453cd1749a922bdf7d50f5baa73e066274677c1aca441ad85c9d05909d7fc2f83ce40d8620302047c435bb500683066023100af4c13d9154a073ed7871937db0c2d9016371072bd7f52be9f7687c227f682eaf72c76c441a47cb655fdf6a39c73d9c0023100b0994717e47698ea779e1d34e7e3167743bbe625425bc083b0b3a26841a2d99d5d5a0a04558c7db6ec5bcaf945217bc90302047c435bb500673065023100ed78707203637c5e3643de3518928757000d97cf7d58b52058d5cf82cff379f5af6b9d4d41e8bc26f6f0c4e8f800105502303b247395e605d4a9fd3fda10e66c8f00ddf410fe2cd58932eca455f95faf2d6742c994043ba5a37fc721a36249b2295e0302047c435bb50066306402303b3225bd4e61ee137e6ad49b13c36067726ac4cdb8dab1b03e0243862d6f7d00a3e44425b7468dccc354e007709282ba023004505d7d6b5168f3fc45820cebfbee19a9b8720314704b566f058cbba238fd61ff6447e228cb3e0e4139329360f812850302047c435bb500673065023017be70a1085918336bc8929dadb9f1211284ee14497709487b9f6e989eeec9b9cf6c159dd3bc19b115cdd3fc1a68c13e023100d588b38317455a92fc023aa3d5e208e8e314d23451d05058a18a37163e3df4bddd84b79bf40202e1eb6f4b490d7e16920302047c435bb5006730650230247c955a8e48174bbd2aaef681e338e16966c51f0161b579e3bab0431452c9a357aaadbdc4bbcbf9a7c6c6ddce9854fe0231009a08701d92325cf31b7b5ee471ccbdb3252cdd0d72a03331f48ee3bae681d168097a0bc1b6c9149f580ff1677b82678e0302047c435bb50066306402303b2c9228bceb66026607c7f48dcab3a83e6e6daa8d1acdd7b64254bdf7f221c7f7e8b0c7d4326aed6624b2ce22c95d55023052c0bd9143de05cc8aa7d91c6668db24d7ca6d864d85cce8135b7e26376e25704fd3248cc55fe8df3dc95da0d0addf7f0302047c435bb5006630640230367ef15f26151c180c0fc72e3bbc32f710e06a2abfb17784b8032de92fbeb4ebb2f428603802873c02f74aa29f38207f023001a44624fb4b8fd7a5577ab30efb0c4f974ab5cf51b76c3ee4de5ea797bc220efd36145dea8d0e3869e1843ab4bee39b0302047c435bb50066306402305d25100a6e980292f05a78c83219dd49a509501b6ba647aab44a4b7a4fdd24205de718fa7addabdb2a5688f75da85df4023073006711fce196939cbffaed597ebcff2ba6bfe47e3d605b4b12c2800ed6662ba70984dfe67223b55b717f6e2ad78dc80302047c435bb500663064023077355e9bc4bed459d2f1779a08a6d02a50f55795dd0f822feb0572ccad1ef153bd987f3005bd199605f2a299a90573470230292707c5b40d05cc6f5a8e2d7dee8f967ff58c7192c9b354d1ec4d0ea96c2129726cca54df9a171bc052b8e9d3ee9fb50302047c435bb50066306402304e9960b146173959670f600db10bcaace2a7331bcc15ffdf0330d2efa833167054318cc5c8cd66ef0991a17cb5e284ae02303e47636f07d5732f8f6a54197046a1806907e4fe73aa3d06e157f8f8f321f61a330a3a03d89134b619b9b8bd1489e3a80302047c435bb5006730650230531d9e169d7e816c8f6cbec20a409028f74b507543ebfd2ea140bfd34183eb867ac1b0489d639bd814c1ac86d9f38584023100ac5928cb72b0389437756e0e0db7c0a040a216d4ae74e835148e68ff936f41f5ab12fc2009621a59009d9483afb6319a0302047c435bb500673065023015a36575edc53d10148ce8b128991b600fcaac43545a8422fb96d5d4263d01d6351553230af98e361e96663d32f1b7d6023100f3a9a75663c39283fc0f7ab66676af3bf50504ac27c786563bd5cae1b0a5a74c3187aedb14c75ecc8e0b7d54871bc9310302047c435bb500673065023100bb7b4bdaca9d645972b98b1af922eec286c113cc75a9bf10b6f5bf6fc55874cbc98b8102937e80444e15e45c7fc81ec7023004b57230ec3a99c16e6d3c1cf38a6765ec6fdda04fff441bed91668b2fce1fa0a532d8efefaac2f126b1d4aba423398c0302047c435bb500673065023100f0cb4e671d3752f01f4be22fec8951e6cd9d6097cebc2986351dae6ef908ff6e80361a5dac9389029077214097335c02023047ca74538b0b6ff4a1d60978716e2d863b11e3ce404b27031d453a1bf81600ba1be3ba451876abcfd7b013df4d6078a70302047c435bb5006730650230264983e50e984ae728804f6e4ea575087df3b14e1c0f9de7ae0c2a8e6069696df245eda52964683bcbf9b91b3878ca83023100a404bc4349eab2fe172bac80788055e200316715fd8ff1b118bb5ef5acd7e1a1de6eaca376b973b384da42bc5ec028d40302047c435bb500673065023100d8dad997cad080c3fda16ace88706c2b5b8c2834768ea77815050ea5daa06beb6b78cb4eac499b181f4ddf2255c17dec02301f6f23ff7e45614f866e5a4ff28d1fc4d44d8284c93791736007d5363813170f12d68f603e76746092b9fab0b95635480302047c435bb500683066023100b9bb3d3bb1c69491db5828c425435db39b28b816110c1be48b807cb0d1a86aeddb8b8cc1d3bfada47e67f14c223e2f3e023100badcad5529fb291a993fd44d643373b4851ba47792396c99d4ed035de0580988c6087ce85daf022e1efed94aaa574a880302047c435bb500673065023100c155c12fbb0e07717a2fc7852ffd040c7b213d6d55be524259c0aa24133348ea4d975bac7e1a5ac802d356511efe2c4c02305e195c68aeb7f56f802c0d9fe41b5534652dbbe0929d615770383f32845258d58edd00205f37eff1321067bf66bd10f10302047c435bb500683066023100e94c779d21517aeabf0ee357f7027a8f373f804b90df84813a2676a187a1f6991f810576c914b6a5c55b5cc2aac30e83023100917d5e1b3e5b7dbf96619c1994553a0167a39f6bcc39430c7d051ced3b71a2c40fbd72e654da7439d5db030f6785c5cb0302047c435bb5006730650231008bfe00bc922a5ea6e6146e2c34a699a484337d9bb3915a6bbe32ec31e1967459ee9b784b8e409bfe76c4f6c58aa4c32702305d70f49fc83063df50789cac32920241cf5559809c4e35705da6bace14ed6363ce81f7be9c479427973ed4ab06ea9e210302047c435bb500673065023100ac4cfb400c5bc2eb5f9f8a412bea9db65e12259222cb960026a34b199c9821b83837dba0081b11ff1b3274126a78df4f02304d4a3040bcd37a2cbdc56c27032d4d43a4fe572770836f9fd50ce8c1945c85c90d64fede281c53203ead21532e22ecb90302047c435bb500683066023100bc6496ace51aa8fa089cd3d7e11eadf27c0dd293e4de7d4296845bb6e90b458fd66bd38514cd9160489b751e8bc2cdb3023100cc4ddb777da5c02d326f24ac496d9f47e7f130b00194e6a9c0098d44c68e34444884db8ccf8483cf359465ad2d79fe9f0302047c435bb500673065023025a0ac0799b7f4bbcdfa7d9fd438c9fd79e54f20d562c1bf70bc9224fee23a47d59405327cfab53a8c4f1fec953931d50231008522e6915d65fc79ec45ec8d3b13f3fb70e8cd8154eac5de73bdaf9a45c56cf6d98d9fa2220b14495fd8d9851134c9a60302047c435bb50067306502307fbb8c3c6554834105f393d11567746fbc08c824c85846b15a77b9c14203b9ebfb375c2b42d7baf4281a7d5c03b3b641023100ec26898cf6c5fc244843e590b682c094b8c0daef39afd5f3a6e186d102bc9ca56851d9de6a50055f7336c9f95a40d5110302047c435bb500673065023100e7151582e9320197c31e782d7abe4b67b86a27bbd0c28f7babcb09f272b8a7e1418e36df08eb58e91e1f5161aa39b55f02304f70b2f574648f85b76a3f8e2ca783397574b83d395cee504afe9902b0cdab5d45dc0f08d12ebca9c5a469cdb01104200302047c435bb500663064023020d32be76ea361bf87d52028b50db04ecc1557284918b6dc867a6e1667e7baa0620efbfd24f575616f182a7b9a5c09d202307943fa980284dac135dad3753c8f3fa59dcd2a307d57607e6b481b411017f8c6f0460d6a897b92f0798c8d2d6fa665630302047c435bb500663064023048774218b60639093565d8efb178859283861673764141dcf00d53ab7168bd5a69dcd5416cf556852e87ec2967c184e402307670532ebb27073be8853529c25363bc67b4053d14f6cec1925c91b199a60b55d1a8b795fb2f4eb7e60fdf160f3c67b50302047c435bb50066306402305a309258414cc06906acfd6e0e26beb45ed0e49c96f5fd4b76c239614a82565b17eb9eab053d75074209f1126cdad69e02304596d6cdd6cae4706f297086c4a4e26132b537ddf54d63fac33eb11ef0c7908940e3060a2b29289452358c36152d5e920302047c435bb500663064023068e650057276ef60af7081ea6f47ed4ac0e6a28adbd8bbc23a21e0126e0113ddaf324634b064caad72fa4aff48881e5902300dddccfce43ce71becfabea2e262bca361e4a1cb55ec67d58d5092708bb1b6a35179f402ddc78c97f42b09140609e9350302047c435bb500673065023046d540a523bde12b2513fc771797bb9a5b5855ec502982b1b8354f76ec0ed17c0d8e1de630ce9e0059061d2ade5a9739023100f3a7caf02b239f5edac5c4c4da0083a1a5a16e7cbd27523efdb461d79b7a4149d70d326f57683cf2cfc7c1eb7d3b70800302047c435bb50067306502310088ea97459614de27e589e54a7b8a44af30ca32596b2c37e926e06f208f4aa0a995e16531e5579293323a19a47e56a8b60230728e8b2963760b6511bb79c2b91cb016871d5f5fdb00671a799e71030dec8408d8a1ca9f2eec1a0d8d148324a71270000302047c435bb50067306502310092884cbbd79e819ce1f30a3d86ce910b7dddaebb157d5141507f35124f5bef3358ff5b836f762c722ac6b1fc3941b3bb02300c042adbc3ca3cdcb68b45153651d2a0ea912f90d552ee5e14f5f95b78c6405a4662e95ac99bad867a38cbaf2e4a490a0302047c435bb500683066023100dae5c066bd51d9c9ca141b8e0d4a11dfb26a2f7341ab396cb7e6bbf1f090e1706f6a07a376557f5e4e84b0b29a32d08c023100d07cbfacc55424747b6561c79b34f3243c7a6d21bb54fb45ec77bae2e766d9f985f9e0767a1f60833b2c91e3e5b24ec50302047c435bb5006730650230029aa695e74c1537b34ff7910920efbe1f4ad6b0aa6fa6d804da031455b84cbad46faed046568eaa4669bba9431e3d7e023100ed86cab676558e633c2c177e207cee6f48e74ee50604aa1af8e63b572ce919dbdd2e50dc82d90dbce0ff301a4dcfee680302047c435bb500673065023100b9fba606bbd0bc644ea0fc5df629cedcedf8f5df147b01b255ec88e7caebdcfc934a546413b7acc03ac1a8766d8f70f9023002a8d127f260c21c6a82626d0ec52f0c5ab3f4ecd611d2298610f69e67add31405c4c7bbe4c80de24f8a79897e0dc3d20302047c435bb500683066023100f6ac6eb952a0a8fea78e80e0fa906f473ec43faf86216c71e443fb4222718c0cfa04af939f73fdeced323ce74b38827f023100cf65a876c96383b352d90d800c39efc0753b96e364471b6550f618d2b92ac45f62a52cc41b159accfd15b630c77f67cb0302047c435bb50067306502305c241b7967089342b1ad4d3db8080b466b148df6a2094cdfb1007b70164f28d0f082c206effdfa8f44f4a2c0d09fd699023100b74076b368d2eeed7f9c431351c3c87fdc40eabe6c25712f14038009904f8b8a09ede309329f954b72898f33cfe7c2930302047c435bb500673065023100cbb43f587179604bc33d7fc38307ea3b790813a8439e1e95255e162ed1efe2c56d372cc8456d5b8c6612b6d53dbd2c5c02306ff2de1c809a23d4ba5a59e1d9076da60fd9b713a65aa97fd15ec71997810efd89e46c97ffa5871948863cf7b1686d2d0302047c435bb500673065023100e014b25ea905834c6d60a6542e70dbf0c1a311fe25cbb97e528c43621139676423ee679762ad11b82f5be97b1a07c221023013e2a46fe52f6c779f55fcbca323020a538d7d259a9f6edc4100c726121e88a146a68255e97bd0e03e487b601df5c0580302047c435bb500673065023045b8bf7aa9c0c0b7047c4aee52b8978a57ab79217935bc0f8b3b930fd0b12c392072ce695d390e6aec8a15a3802d0d6802310087b84d0cee51ea7fb13893c020c22c87bbca07ac77d9d40a2be804c4d6ec1a342b714141fac2256da8c95d9af58516530302047c435bb500683066023100dfff2fb1dfc47ada6ff63ccffc484de90f36c9af9fd9170fde0b76d738526e2b4b9e9047df8ed94055f71b4b7e0141e4023100fddd59b9611b06dc53dbf15ce907641611b78912400114f778ec508b5d69daba54b9fc490c4b79c8fc4cab2ce833f8f30302047c435bb500663064023075e7348931b692490896969435380d33b819d52744e28edf34245e2f394c5b848568de7cd6caf02595c1cd7bfae6959e0230784d41a6887da42c330a1408216ac8dc9cb0e32df0b356906c17e3d128212db8f88fede7e0fc680e516bf9f934c3d9080302047c435bb500683066023100bdff01c71d9dee8b336a5000908f3f8e2bcf1e89cec96884f4e3fd98379b9a8394cbf669d28f5c037c00e7a445b01019023100fca57984c0bae6a8059ffa08b66da1b1ec45d0f44bcc5a691a147c04e7d5bf9c7ea121387e94420df85cde29e0236ee20302047c435bb500673065023100db86358e4f5547aeb497dbc27e37746a4ad0fce9892d654fa0ca92e2ad3ca659f6f0ee276b3906a5482734526910c17c02307ddab85c64e7b56d32cd903fec317754de4288501e1a05899cc13f676aba74c071b47f9bdb8ebb9d4bab22ccbc569f130302047c435bb50066306402307c7a22cbc78cf12132fc8f4967a9409c9483590efd2c4243cda2539508d608ac2912d0a9c61b528c3b6c063ad96b602202301f7f1478378dd33f643f0074dba0db8424fd44a9e3fb54803d63f23047883d1101acf6d6ed4d3938097f67385b887fb30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300438018b34882fca4962fe3fe676bae8cbfd565ac730de4e35f0d836c1f316e62025dabe0b40715541d113608404e33002306f57afeda66d392e615b24d5671ad67faa331d2074e8b3a4dd28408ae09237e7e84a332f90dd813bf27c510ee572e3b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008c2ea3f9fd302f9de911380ef443832a75f03ca07625e87e281c7d3f3cfb5141312c093241c1d80a35eaffcafd573b22023007d9d548c029a2e4104e929e7424e4576319e0819a5812c47b40dc52ce6a39162ddc7a0076d10764f6c741ed380833440302047c435bb500683066023100973eb4f68f93443b8335db604db2c972bd6e53ba3962b6b82df8485a5ca4405e1b89d6e33ba061550ec11709f27f8f53023100c6bdce10952810f6e50383464a5d9527d98f43cb2dc4762e240506b2d5424ffd0153ac645bce34359d60016e7aa773390302047c435bb500673065023100ade707e7f85a8f2c299d985018e806dfdffcee7fbe8313afcb3d57a1545785f6d37ad63a12683f6d6f770110772b7b27023027b424a020ead0a7f94970177e010fa0045a5c8e37894f8355eec00f9658b513637e4acb08f0cec1591e73d86ef0d5980302047c435bb500683066023100904be00e37fc823072a1dc1c85bc0debca370dbe64d8eda4786803da41d7b5ffbbd1afe54cce2e7e0150c18ee238915e023100ec5fb5519fe47ae8f467719dfadaba4a3dc6604ba781db58d5217a577c0c0e134c246ff2631da02a9c85a192ec162e1f0302047c435bb500663064023054ef2d552973e7cb6c53dd9afed8f3366354775c21760b2bd2c6cbad107d30ee620bf8426d10c34d6f2070219c50d71902305795f0ac50eb6d536b82735e565cdd0202faeb4752ffc8cd1b19e3bb2f2d59d9d723097910db2369f92e79701a81e0cb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230207886ed9ee8861b2394b923feeae94e6dff3f3fd8f9859436a2f79261100a64a6aec9e44d4795be4c93740469c0387c023002a00d62d198ea3a6c7213004cdedd1261d21daf20c27ae93f712c3199e9a5246ccb7eb566cf9013ca2ceaf0a43612b60302047c435bb500673065023100e4c2a8e4ba299b934a5c2b26d3d7314f27ff57eebb25eaec2429bfc5dd941ff29803f8bb15c651a51d28e7ed49a31029023061285b162447a69fd60a100a60c44c25d0e7e2ca447468e101829a7e7f6c7cf5910f06e9df2c7ef2c6d73b70197883870302047c435bb50066306402301b4260f1dd622d837164738b2112fb87733809fee8cdf1df21b2399ecc46689b4420e2892c350b4e654581d4f8d8aec902305dd5ee8557472656a8e5b9e23a25a39b6798166bfa78087ae8f0b9d68fd4020ec4475a08dcc5d2aee11037f5b19d2af00302047c435bb50066306402302605ff061f081e7b89d6588130a5b355cfc4c5abf889f6d03479b673f04dcf328ccabbb792d30000189d703dc5feaef602303f9370d351474a665e2d0dd8fcbabf46596fb935260a083cd4bbfa99623a7264059dfa8f081382906574a4d3f29739870302047c435bb500673065023100d921757c507695427944eaff87d7cae64d05704b99aef09fa125eb0fd144ab5df33a5cdff9b2137a91eb3879fca6f4750230705a9609e42a9f8684ee97fecbda56171a40acef6fcee3b363380dbacb08815def3a9d79a3ed0ec8c86861682538fab60302047c435bb50067306502304c2b431dcb6d5ec2796e15b58e15db4701746755975f9656d14ada6e9bfc7eedde0fa715533d7ecbbe3919aa315ad38c02310094a90f348292895c5be6d67c90d72589d8259f074a9a8d94fd3cfcd6df2a561e489206b918a2fa19d3fde9ff5e6bcf3c0302047c435bb500673065023011678bf195d19a951e243e21e9340c399c8e9457960cd0d19280ea945e0546a32bce1b5a65b372f26ac540764f22c485023100c078d7c5300d4c9ae30b105b608d67c325bed3e82ab8c3da9f58b5c2c96c7c7585d296ac8ed83d81ece3c8e8e47ff6c80302047c435bb500683066023100ac805272a7dd33ea31823729062d08beb4a54607e60a4d0ed404d937717f9dfc582bf1c129611adfb29b69eb260e363f023100cd6b3cf6bd6abd794d64cba75d84e0c69c4a48d1060544cddb796b54c489e524910ed36f18ee143cac77fdb610bedffc0302047c435bb50067306502306c3348af91a8658d039ff60a8478b64c43996c13fb64d24d7fa2a073b539230fe4bb131b5ea761cc0295e8f918c9b67e0231009fe513232d63c56452ed627ad0eaa78724a0ab9775ca47e1bd45022c0d433f3bead2011c8b0b389471f0aa2a0ea68f510302047c435bb50067306502310091741b90f1382cbd29e2b8e8a4fdce3fb332c206d8d0c16172bfb0a7193589418993ea6c3a9915aac73f44d8cffa17540230406c9e1cc133e6c9fd993bbaa723c7c4891e0a07341a3db5e5a65b6a11175d2f5ced3cc40436ff943571879607e174800302047c435bb5006730650230437775dccca2f870e5d81fddf1f8c9887848ee1a3e0b592584f0919a77a4745ce1d4f20f809779412219f0fa52ca6dac023100db4e454e51ba52cf6edd73798cdd9dd2f4f829ce846743f0441bfab2068e407f3089b53ca8e6b759ce8280c9c0ce23cb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023013d97aee7d3dc0b3e5655fe7e913734adf3b94e4d62be966a2d6190f39834c50608f1a98c43c47bb7adfd27142186f1502303dbf090ef2dc04dc2a2a3a13175d46d1ad4c03f047a625d6b708b95bd3e3e25d5a1e0a7a190215754eb58e8a885429710302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bc28f99d7a1438f1ed763d8f3891f03de1858e9d3594479ae0f7731d98ce6aafd6e5b350e08b3d90cdc9a2d8dbcad80d023100fdd8ecf8a9cedc7a3ae21dc8ba064859f405deed5461acb4b2b8cf597fa1cab733e36bae658bc36df3d6a7351937b6540302047c435bb5006730650230390656e87638bdf25aa0808a50e67d31395c43d0e9992496adbf80349b73fd829c5bfa7685dda82f8a9c6ad3358e5a0f0231009c79979ec13d7ebae1f266dbbd470ad1e3fa83eeaf447b63fcb03c41c9cc6b9d518b842118541a59abc728342734f13d0302047c435bb500683066023100ec78a1727315169c6b791503145e8be60d33d9ef92feccc280603882ba79dc90ed00deff31dbe02f8bd02d4b653ef3c7023100fe57e47913697d736a45e9339976dd824a324d6d18a59b8ae0978f6d051090d9eef9f3a6423007d1e8051f8674d168a30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ba839a6088f0026de8bbbea645c4646a6d6d05452ca992a7a9bc18264c7d08cabd0466bec36d59c82b54f1d940017f78023100b74506474e1a4d6fc4456626f24554bcacb4ded5b70c63f3f4db1c38a16152204bf441ffe63b29dd0276bb1f36f11d690302047c435bb500663064023018713f601a2a632ee331659abf93abc823c31e42f278dc2506c0de06c20dac401559d86387e926dda263fa0c0a3ca72e02301fc36d84c9114ea01dcf9566f78ec97b973263961fa965481a497ce738ea5e3a35455b0b25b454032561c5590c5a25f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f31a6dfbbe8bc8c2beeaadfa07b7a1f0c59f7fe66d505507e87587ceb226df5f111d00134f5d52167f4beef19cc61bdc0230284552728a09b329177808dcf3381b6f635a2f56d96c2eaa56e4a685326b7d0c45df5018449459fa1bd97d81b09a4c5d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f0451f7da2694c7ab1b682337b46cda608ee59396b63e83ad6a1dae8820da2837a91cbec97888f9ae8a600ba8c06529c023100b830aee2da153d2255f3f33ae46373577e1cca25af865d00d358acc36687bdbe8a40a5b70d6dfc98c7743d33fb8cd8d20302047c435bb50067306502304b48b8e807324457b91e41a795165749a0464868dc7325df58f416b12ae9fa2c29dc398455b2b6eedf11c5e623637500023100805f6bff70db01f3680f3d9cfd1a94022a741738d82a060307435eb379a8466fd2ab206161dcdf77ee6fb2790f99edee0302047c435bb500663064023064ad193e7aac58663bedfcb4f1df33430f0165f600accec4e7149cf13e71de1528195ad20d0f789def03a35ebdd07f3e02305719ddc476620758e5ae2fd90d2622aa74c5b3241a40dea127dc7729963b1a8190be84588b15a002bbed0b367730c9560302047c435bb500673065023100e77d962a4acf5cb585dec5b451c5fdab60c87b64eddc1913d13581cd68ef62a922e2e927fdc3e4350f24cc59c517d22c02307a6af990dc3c07c47d72dd3add4bc9e7c9d0940607085265fc33bf6e82700c0ac6495044a52b433b27c28e9661e7e0ec0302047c435bb50066306402302766049f26d847c90850301c5d5bf9738a50c97224881d7a76bdf411543804409539b87d6e4ea83c4f94b084d88f4d3a0230609864273cdfbc3cd951728ae4b1fde4ffc57273a6fad21c7328776fb812f38d1879c5b7abe254252df8a4e6ff79f7cf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e12ee76d7af9ff65108513b1a5f93e2ea9a9581d00a29c439467209cbd192b236e154acec6fa6f3a3d033ac93397f7a5023074924b531cf2fdf658675ea6cd694515cb978c54def7171c7a487656c7cfeafac1557e05aecb620e4ecd121cad64111d0302047c435bb5006730650231008a6a411c54126d446cd29dc5d0aef2c7627c0b333f8d4c7de78c809fa7456d967a57cf31b0cf01e99b4c30b1bdd2f2f702303720d9e06eb9330e7de565634aeee22095cd2d6af2c50193a3dc4c00a1e94c8a6e99f06cdcd72bf3c27bf792bb2ed50a0302047c435bb50067306502303a2fa7d1fb1fcf4ec6a33353eaa800543df35643d785daa78950da29aa5fbf786cff145ca0d373574fb6da2ac95381bf023100bb1fddb06b5a4e1319b2a9791601c3fdcc67da702530009ff548d150da0bf28a4af6f4023fc1b0e3078db6799e9705090302047c435bb500673065023100e33c6317bc81107a6c0d82ddb8483c4dc6c4ed5ace9c8a47adc2980ef8e733783d143d1e22000903790a0495fcd4da97023005ba414b805adabe8ac1c6ec268a6c8767ea05ca926251335a773a196a1e75c1687ea33eb48a6ded4e7d542a36a810c40302047c435bb500673065023100a30eba188f84dc25cb25c449d506f8af4b247b3af88f3b98bb9ce015da73e06739081f81b4c93b2931c1ec43fc64979602305684ac998dbed55e5762086609681d847ec761d83abc91eaf44f2966e6a4b81939db950501cab513456dbce86be6d5dc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cebaeb8708268a19927d8e1928a01d04656a41aed290ff5de487199b4f1868115a406111e8fcee2e98d94138eeab8f2c0230455988747fa7cfc87c9811395c7bfe2104bb0036dd9ef404e29cf6e6b01a36ab2c8964d4cd684a8e4f52ee821e22ad9c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c7d0e15aebe272cfc6fa67ae695feaa3c6f801f0ac32e46f3520ad02a945c23b1e5e190e3472c927469904f57840fada023074ce22b32caae8d0e21489e5a646383cce207dd6e4148f34887c2ea1a32eea516e52f1c5df7b20cdfbe7fde863d6f9e70302047c435bb500673065023005d440b634248090de86124c8d2c9909968bc472d0272e2625a1d1c92ce65fce20b3e2a95acb6beb05f2cb0cea0ed480023100ef8767dd05de2288a18449a0db3eb23f6b0e09d054c28aa0e4d7e705db24411a2b3f74c3a6d3e57f6e2f11bb6c1d5ce00302047c435bb500683066023100a4a1b03164d736a1f68e4132a25c39e3eb07c3205295ff5bddae28bdbd95d7374467cd9340d3abc53fb507f9040d41bd02310090067a97deb402522c5697f02934d4c08f8e0322ec478416d5e244d56c6b293aa534182ba4bb0c8de8477c087b31b8bf0302047c435bb50067306502303b93e5e616ae6b4035d00bc89e56c03145a867b7c31a724d0a847d1396b6973ac0b555f4abb8c816075de6951eb8f42f023100c3e3d1e805eb0384efcba0dc0d9866e80d2afe7bdfe03a218e580b86ff33304c9e2bb1511661b69749f321f0544b167f0302047c435bb500663064023048db1d3503fde447b827e6a4fb19ae6805a01983a697a03271eedc05c96c54bf25a2cf9c3a9b6277b83f0a0402f8ca620230056bfe7739fdc9948f5c6ef8a49d1a44eda9ec81b0c5bd1f66dcf302bcb7be89c8339031a85605597662c032a002b6c20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300b551ec14a23d5b92741b4f05735c9e1994615a297d37fb8014e8dc2be06234259f7a707a7f4d742358b1324f89bd65a023100a4ae14f11edf5d9b233faf70cd839288a07dc9ad2c8df1405b188caa0b40516ad044ac8c739c46bda78cd4aa7117c8d90302047c435bb5006830660231008ec455011e591cbe71e9e38fa210bab78e2abb9312ab09988bba33e26dbbd6cb3bfe043b1d175583a0b5892e4f208347023100c6c3ee57109fa4d8a95602c7dc24f9ef1661f8bde0d170b8f20c9fc548c3d48e52331b67b59ed3e8063c298cf59835e20302047c435bb500683066023100de3bb45eda2d6605cff221a29214b814a8519d82dbda82adb2f9fc44953703c654ec7efd8111ccc838698aaa808466dc023100c395f681431bb7b135c91b14340d2e835c80063f1e48eb93d02a2a74fd2a1e871aea256121ffe3a26d9cfc03729d109d0302047c435bb500683066023100f98f2025534c80b12ea9a373cffa08e53f73e47526b2ab109edbb9f77ba8781d89dedecbe0f80d0ed1d0f72cbcc453cf023100f1bc443a39dc845f140b40308b2a4b04d3f5a0b3cd7b57a1b1602a00f9d0a55be38b5b1f77cf4275e1eeae1940065c660302047c435bb50066306402307b6f821930ef9799b245f8e69636b2950439634f786c8f9d60b52f9022c4c19c0ea6a9d78779952069175bef754a364d023059a0174c3513fe2bc41e6a7d2f558cf9197273ae9404e42abcefd3f9f6f5862e45f6cb1b237ac94d961fdec040407c030302047c435bb500683066023100e3b433e6bcd28df61b78a5d369cbe01af5e09aa7b31ae9258aa02b5bc29f1d17c1d1e7434db0025fb0fdfdf324d3ab8c023100fc358f12870e09f71a41459562b6af889b1a1f6a58946c994a053924407ec2dd84add107e789933e2e40c3dd135d8af30302047c435bb500673065023100b6c4de2647cf22fca79c9eae11ab1e271a07c2d2a9ead9930163d3761c6000dc95b2f8ef4caaa986a0bd49e52ef40f4d02306b155a728a237135abc778b59dbfe14133d0f3f55fce0c2628c75dc37a3c9c6eb18a10838ec8ffd64c7e2d2a210ab0360302047c435bb500683066023100950891b8fb89c5c133c031294988548adde4fafff4f5267df082b98d8dc718b83f8d5828be5e3ede6573231df80d3ace023100aa8e1623fd47d05d40795303d8a3249a5d4472acac6758bb6171b0c0226dc877e88b55b18f3fa3461f08c5cfbf3989dd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fe54907ed299f41684776c3c221f45c86a1f59835d1ae714c6665ccec98a6d7864b15b9ac1df10e40e88b147bcbb97df023100b5fad075adf3a8c4fcc2aaf5a07992c12e08bcbd0ab83a7dc167c82a7540c210331a5eaa367e1a979e0c57b311dbcc2c0302047c435bb5006730650231009dd5f41a3b1022d89dc5a179f10757bb8c3309195501b88010e3f0c84cde52b5e766b7b1ceb5d6b1b39c589ca26a7a540230697dea4d878ef2609df8e00e7e2915beb8dfb6346d3c9d08690e2b2cf250f6c3ea7e5ebf9eb79b7f7401856e36a3e11b0302047c435bb500663064023025a6d4fd3ac0b3e16e410ede7999e4bb4562fdc13328585741b49204b5abdfdf800c347807f2623e5b0994d24b08b642023034a1ea8e86b40d37bae982faa6ad6ccd169ce3070fb9c013980e95e4d618d576bd96b19ab5516a2f19ebb9845accb4810302047c435bb50066306402301ac700c950afb3730a4058ced654a29603dafec7bdb38cbf74a209085f23ac4c29f126ddaa93e78236f1fff15e962e0402307460494962f7c8356931ce4c74eb97e408df4b25ac3d76989d755e90de8f121a5255a5f2356c8c13e3b550a384d4e9880302047c435bb50066306402302409898888da3bac61d4edc6cbe69742e2e8577a5154d6fc555bfaecdad7ae1bc0987066f5cfad4c78027ec5fe34dcad023077a17ba9c19eeeb4eaaa4b061e946396e6bd3a05131953e01c6fadd3c86ae8d9d8ef6336f834accfd6dbca8127abc6ee0302047c435bb500673065023100af5260e41262d6d4e9da5f825da9d11599f5a2d13afdb191f9b36f4fc36fe98d99ae4cb7c55e740e71f7a1f6f9b4866a0230309352ca2b2f178c689311bb21c532283462a0edceb7b56ffc3f4ab8e70b7f068992eed37eaaa724430c5348de869c1d0302047c435bb500673065023100dae156f59d678e31fcf4773c7b07367485cf21437251aa137e7049258cceaa5f336078500851a47b990738cc7f3c57cf02300f570f16f23f0258a557d5d4f8e84688453f8d01541b5305fba73df182751330f1b6fec2033816ffefcbe4c309e968a70302047c435bb50067306502304dbdf2246058f0492d3dba8854b65db11f879d7e9f5b07c5fe5682523d70a400e96421466d1629f4d1d4b9688b3d014e023100cf9392871aae5fffd256dd153a80daecc7207439b04837000900c292952325699eb78a265e6e7f5813e1049cd8d9c63c0302047c435bb500673065023100c4d0c81195553c18f138521f998f816d8f130b6dd43e3acead97176d06d026a00eaba5bba5bf34c0b7a847a3f69f7d9a023078e63abab8091b0e0e9326b2dd33fc7caa6ccfa6faf41399435ee106c49dbb7f5691a262fd45e1bc8e3627f5ddafbaae0302047c435bb5006830660231008cee5beb64bcd9a963e19b5d0e1ac1966885745d522f1c19f32daacfce682eba7f0b60b987d27dc90b6f9b80a82837690231008b65a8a53e7cd7c1f46f3dca4ba4d35e3b7e14d72070d39bffd4fa9aee9be5488c4d3250fdb3ea1dd873bc56499289f20302047c435bb500683066023100b594cb1ab30aaaaebb5c1505ae6c32a4d290d34dcafe30e41cecc625e7997aa14acd60e2e8f5009befb27d9e1d707d71023100feca624f2405181e82c6eb6bd69c9ac35cae7796d2ecd7d415dc9e3a3998d9e4685b866a5919e0c6bd8778b254963b400302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100847c966dae1a663a9de06ee9e797d0d1c956a1f4ff94fa57179bb96a8ee03c2db88ec48689390a19e34e682f4e843b4e023100dc26551be7484ce8a7702c019b54398555f0528cdffc2b19e479b94036319aecd81b1e641e714c3e96eb994c45463fbb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230378ef5e8bebcc6157ce18999af34f87cb7acbd613847d4cae137bea72a09f0d0248306443a92787a6d8ffef38aec000502300ea134d22008823751beb6c6eb1b497014abeba1b97759bc38e2857409a4c0c3f448680b22f9178239e7a80a074bd72a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310082018f9927d4b154604ca0f7ec2d13cd425b806cf668b7a46cffba87a4e1b45df6f7f95a03c855b23faa3baa9c591d81023033240ce758aac87350fb281d738dc3d3ef03ca815e63cbff7a76fd822eccfe027ddcbd8a0ba6d0d9396a41f2ef6009300302047c435bb50066306402303f6459972f729fb92ba12f615751dd9548df4e59cb73406e878115607e054273bd71c470edf34293489ec005ffc3a76d02300dc301978a29d81f95aedec888e2877330926812772ec60356f5062ef008558d5f9c8d432bfc84cfcc4941ee8df2375a0302047c435bb500673065023100e1ea7052580bbbc5ed921b03c67390683b47e114ec6176de7fa2bf5bc76d1eeedc49a7da4a5698dc3d87fe340b06a3860230746904f1fde26141e42684fc2131fdda9f64c1c38ccfb76453c3cbc8722b6b835f7f4af4b355b43904f5dc6a5812e1160302047c435bb500673065023100be1592d062a582cf347768c8cf1b8d666e34475da7b929d117d21040f103f8cd66822fc85173b044cd8109037032f7da023007ed3a6e2fecdc82616779616adba09b417124ff67380ce776ddc551a1e7cce9e5a806fa25a15f6a8a1008d8d25f44a30302047c435bb50067306502310090401cb693a59fc5f1cd27347875e8ab4100138e36624073e746210f68ceedb06c9270707a03d2866f408b5ad440bab302302707b5814f80d8f363dc00e42c7ee904188501cbd88874a7cf0260b52475de1b378e4cedfc57904ab9924333594a050f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a3bddc6cbf64281c4272b934cc2297d4c2c1223fcace8cf019924980cbe74bb015837c8b84bb916ad1aa027ea858acf002310086e2d0442fb3a5de41aac614118d21b35bda00b6b350dc80a2b7c3b19a863bf542d2b2cc9c33fa0e9dc966af57127e990302047c435bb500663064023064bc62ea467c2b4d69f6eb5bd30bedb53ad1a455eff34a770e057249f73c1944c702a511ac0f2b488b58aab44854de540230703965b301b7268c9b83e96f3106e16086db9df3412b049f955deb7ecf98cc722699ee1dca81ae024fa7abce197685ad0302047c435bb500683066023100acfe2dad3dca0a12685602b8d8aef46aa34572f801a506d67508ea664d27130e5558967439d6ba0cf153367947c3d0a2023100e4bb781a6466cfc440682ed4e9f3bc3f7b3613a5b1f1ea4ca5921763c68ed85f8776a2a1c08435127aa42973b208823f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306a417ed3c6fb734893a677783c3b7db325092e2b33ac37c529144ad6f7782cb820d7b31b11e36d7b6ce38ee68742b465023066868b78e2731338d203e526547df5d6ddce178be308f75f8e3b551725506731107a75a3afc03dd0790219c2ec74f79a0302047c435bb5006730650230665bf029543180892e559e1f80274e6b7db9ec1f4907fa40d740f58757658e5330545b6b9106ddac2fa0316825a7b3500231009bfdda875f283f62d7b5477bbc99f9bee13ac7ce4d4b28242bfe01cf75907e2a58bb9f558b17d4b9ef9db11c6275653c0302047c435bb500673065023042b14d232c25a2d45dce822904ff01401d1f86dab6d1172c65540e8d3c867d4ee08bb98dad641a033ea250f719220caf023100e4ddc71ec96aa3055ae5128ea1d2503b1049da2f0cacd85b8d441f6753c010f2a8884aba4c68caf46c5e2b3c08ce82600302047c435bb50067306502306220a4ca12788fab51dd51f270682d3ac68a7bb77105700c1508334691e73d7385992b3d7cddfadf9fb56a5ce72b4d0902310087d9a9e51fd0168b275c5f181cb8791f9efcb699f6d5a817e3936ad3e59fa8df0230fa406727810b650b8b7b8e3cfff10302047c435bb500663064023047a2122321bdfcbf41b33ccc29f326855df375fe92ed63900e7ae02eeecd32ad248a9efb15fdde1da2909da68a62fab90230115a50025dfdd32a7fff57e9f92f0848c23be5de10387736178925f02b237c60553d7b57094544e8b1b734196a9448b70302047c435bb500673065023077eae053ef6c0bc157d862ca2a4b90987339b22ad38dd17cc43bb3f3cb93dfe6eb034b536445cdfef2cb1d75d81b6076023100ca4beef7b80d3e3f8d1d4b67c3c4b19a800ce37729b637a69135a8ffc96d9ea1ff4bd8fd45bab0ff71e4ddf18f98b3560302047c435bb500673065023100887e4237caba9ee80d2130793ac390cd0360a4df4179f0c3283a421d00c2f4c4bc425cc68484d7fd12f14772a68530fa023039677db308064793a069ac577400496743e1b70e7e1343ebf1fe154da4eb3bcd87e2782bc405a6b5c7c7ebb6e33b81820302047c435bb50066306402305f72f49a4df5aa932ac81f385f34e40e8e79e7b7dce4e20cc597cd8d55422a08e386419de1f91fe07a959a8cfbca8ec1023037b96c627b4d53ea13f192882f8739e4e50a848d38b1af6556915035eee6d0eaf403c43fdf60e1cac279a85e0f0407de0302047c435bb50067306502310098d54d6849dd93d813ed2cf770fa9d9561e242b41a8f67dfc4641df7dc73f6c06d259e01bcfe611267d0a519d5a451e702307c266239c3fb5d35ac50432c4ea99f881c9576196d177ab5f0116aaa7b273a1a5ef343e154cae7db2df9514a3d8917100302047c435bb500673065023100c84232dc34d17c90cb00cb3184422dfd9bf6ca74a3ef44e407a265375070496dd503c77aaddbd9efda70d114491e72fd023070efe6b49ec2b9e945a676266c1b11fb6f831df9322971ceaec70c4607a29da668253e31167cd5442a4c0ee8768bfe2b0302047c435bb50067306502304d93c74d7538384b2e1b4ff11055ecc7cd0558c7d65389bdd5ab354ea3b2bc2330bd2a60d3851bd92a28dfd64b1337bf023100b987b503cf906f0f133587e81880bacee911fbef61099edc26720254e784d7c2a79877c38e1e85cc8fbc20b8bd980e9e0302047c435bb50068306602310085940b9a54688f48f7ad9f97c9d5af98d1c7107a48cb9d2d77a7c4685cd944649d6307c01fb038ec4dd6bb1d33a7b994023100d0d9e967eaebecde80b8a3b9dc4c9f768f98dc3801908ced8c3880cf3ac208676a318c5f895b641b1bb00fd00f4f9ecb0302047c435bb500683066023100dda41eb2b9df6859baa71d31432ac06f30c5d6b02fc3fba00c32406ddc4233e627384ef4c77e685b25600cd936cf839e023100ae4dc65e47b06c71459ade535dcdb5d99c5036ed2ebbf4cac816b86cd24a0216abff103b13c2322470b4e7ceb9151b000302047c435bb50067306502301ab23483a3d78a46ee6e8f3e408d0dc92f7201fac7c359a0f2c94489467b1d9e8bbe205e7b70cf62e9d471771c5062d8023100cd9cb868371af7980c2e6888e32bd994bdd4b4dfe2e1fa013547e89eeb9b5caff372611f666fef966664513f3d94d8cd0302047c435bb50066306402307f883ba5e10b91fd51991426cba5758f4eb3ed54abb0da42f30c5264133db83c89dd3756fc26490da6f7219525737a8b0230534d71f99af92b8e386464ee8812d3718907a5b467c63288c62cabc3251436cbdd0ff27c2cac695baa737593526fe4010302047c435bb50067306502304725ec563f3a78f49a6e5b0b3a18c9136e1b8e47b5ab65b8e9ac438577c90aa7b60fcbe40247b7c40f217e916f23f16d023100fe6b4222ad0adc95ca26731d795aa9fca3c3cc4bd86a98bc1dc54ae2d7ee772e89e1142cda16125b5e08d183c8d09e3a0302047c435bb500673065023079ae87bd6e40301530f93b626359f209024b1e7a867505438873ca1df94e5f3cf05880802e137f93ef4556b804ec0542023100e64c4b05e62448a49af3fcd76c06bee3b5a9b080930e70f29ba112c766fb88b6c0560a532e276e65f5c2f82519ac08910302047c435bb500683066023100ad894246a6121ab1957e8ae1b9fd9c59b483245d53d3b51473d95599740c72498dea580add36b49dc47a261d260c2e46023100e6be47a31ec81baeb3ed40b0d83a233759302789e3e67b30fe06f59cb001d150f5213b307753bd7de8e2227dffdf4a670302047c435bb50066306402304bb0d9b5ae175025b9a170321f01e253e273cd876610fbf0d698f25702dc8c8f7733a204a84a576d12dd9225ef214593023025974ca65fb14b31f125170b522328d2ce6e45fd498cc37948a77d302571672f0dc9240e5ab3dc67b0821b77c9bc91360302047c435bb500673065023100a1339e2e95586daf678a07b2229f598dbdc66bd4af9c9d5c2e20804637d4f243101ba115b7e14f9071f51bcc9e346f7e02301319e3bc9dbee67e19a91abd2a2365000e310e8a5278b6117130d10ff1e3f0950e9e85ce29fede95d896d100594392270302047c435bb500673065023100d62d3b1e7000be2ec7de3d83c53cd8118f2e9ca41f8e368ceb300f0b070a33b28710db21a032b5f19e67014f078a595902306ae1029db4260938547234eed2249a5613fbac0c87c8b6b6d12627b96ce6a81d8d12ffff203ce58f6b3344112ec16c6a0302047c435bb500673065023100c355b23bfe5029423288002b804715f73ed18a58eef75b27db1bb2ee28973d0e7925f1271c30df216cfee8a670719ebf02304246b5ec0263d81830503ae9264553546bf610c5ca7ab30bcf0964cf680eb8f834594978619889bd091cef740cec14fd0302047c435bb500673065023040c9f1308dc9ba0ed201bd46d6650bd589737db4adcb7cea91f5a593164fa709eec0c28e2e60fb82bf933d5d82abe917023100d9d81ef00d6cd82f0c205c21da1870a2972be57c6b34b1180a902f50e1b2621ea71510c0b9cdab82b15a09f9373cf28e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cd6275a1b8bc6cada90a10ea8b90796bad4e25bc7a0b77ced3727b6cf65f9252e89e39aa13ba2fb58d2bf7724be4dada0230010b9fbd74d1f0e4f12161799aa5f776385ee00c2cff4fb45fe9218e3f61547ecca3246816b773aad166dcb50ae09e680302047c435bb500683066023100e7dd0d5ba88ed1047328d650f99cec581106a822276d277b580cd9dcaad3d459963cbb30a3c24a2a2b6f5407353beef4023100848bcfc742485aaa686a3c35985a4e94d11b970623c14808bdb8ea629a6c7f9656e4bff82d2d9ed20348d63146373b460302047c435bb500673065023100e2a64dc92a70f6832dae16848000b626bf0be756febc2e86efbae8f48782034612d9d38aa50f47e63bd099568dbacae5023020562b97110ee232be4ef7789c00fbc0fb28e88fb25bfc6500270f1154b7998abd2feab8bd2a0a0207c91f97b555b4290302047c435bb50067306502300af37827d3b9fcd88c4f7aae35d4a89e1315b7b5ad1131b241611a8c199ba76165c8ecc0350edda09a1a1f0b708cb5bf023100af0d4a4bb710240652a0f9705cb58f63aa46a7966acc329324687004d9a2cdbca8d53874e5c1e0917dce1d2cde5281850302047c435bb500673065023100969579e984d4d58ee38cbc13c322214a04bb970263e33d8b5e52d0da9813a4aa9e11fc96db2847ca49a7a8a8268ebf17023054b95069d90b5cedcf4bfd3e1e23796570184a5b6e21736a97d1a58864362d91e00e793c756c505f8d8835e3bb6dfc8a0302047c435bb50066306402300a53aa932ba37501a44f63c53c19d51bb6e88d13e55ec96ecc97f58807daca2cf3b525c8eec2be0da9f669a27097bde002305dae3e27d6329ed867a0f891772d07571ac2c4bc2fe3ff0e30a019c23917d2936a82dc67ddc420732658843489120f340302047c435bb50066306402307bd203b2f49217a9223af7e90a1c70343eb91e215ef5ed67c0ee17349b8e218dcc69283d7147e57edead71592a7b74e0023026ae352386c9dded2677ecd0aa254d537337d867d1710bb9b943afbef29d8191c9599ed81f7491adc9faf5f8151606ef0302047c435bb5006630640230741cc42a2d63e1562320e228c5ff132e164a4f5ef23757eb2f7f31f97aa7b3c1e75754be244f90ea4f4a714dbae9ddf302307a89ca1a3582cd9a2c1881f34ec68679d78dabb3daf77226a8d2531f8d3d8e33e8a2afa52039c9f42f110a14ca4fe7b80302047c435bb500673065023100a3e79478004ea2c0f22769e703d578bb2398f23e2671d7be4ad8e2caded75d1c32d3557e67d1ac26826594743c263f8a02306a5612b5c8d95285ed29502b38cb9fb6726e5fda21d721559c08e81e57fafa3359b53620a6369052f9a59bcba27195c30302047c435bb500663064023018e00fc6c0607dc1409af1145e67bf3875f0d6d8adb1b83248b1cfb60bb5c9fa1bd96b97f4559545f77d43ae0c61e4d302300367dc0a41b2733e1c49d636b79a7ad83f1881ad2fc12924a84d37c20579704db57713d5a9e8462a81512f624597a2da0302047c435bb50067306502302412eb8eb4f5b337ae343fa1bd4bae9a51662c01a02d42baff236ccefa40b3d1f66f268fbe187f68623bf4f6355b7f3d023100d40e2b3c769260119f0618834443d9ed1abd3e92e68350fb6dd302276507c7b4f8c35eb7888123bcec608b5eb549b97b0302047c435bb50067306502302e7eb36a1bfe8cf1bf123194a089409f797ad6b03dca87c2201aee77c5cedf022bd2379f7cd48ab29a38da18f2276bb6023100f9d9058521f928320d1cc8948a82aaa7f5d4cba2475ea7f3f886c5f453841f0bb0f059d9d9090875eabca1278a8a675f0302047c435bb500673065023053a9615bfd4e8808f69152a7e4adf4b88ad6d4843adc63db384f2c319e01ac9111def0cb05d15b0b22cd31ca24ce4934023100cb5a707d6accddf190e2cf3a9a5a3f382b1e1bf70e3208c581515e9a5ce4259ac6bd58aa0d8b747d437c4eb7e0091b190302047c435bb500663064023058d0d15c6ef6f5697a15cfa416426caac62b97d1a7f3797301ad48030a8991934d74166d614f6a7a6f17403056dfe1b202300b13513ef702dfeff95e0a2134f841d91fd74237a6c729377c0fd889fcb559feaccc3c1fc42d760be7c39fccf26aafc50302047c435bb500673065023100eeba9fb8cd833dadaa286e2dfdda35f9bcf6220dcaf04ccf8ec592ecfdc001de2d93d27b7d9b7da9d2623aec18cd807502303e3704058f49b52d9149a405a62e96aec8ad78cf9b15b4724e3009f6b2787d00777c125cf6d6017eb8f2b682327623d30302047c435bb500673065023100cbfbf27fbcb2402a0e129f02f4a39203077df4e1d8b34497a41bdd44bb6f395c8e0f41d372426a6a62e5f4fb03c020b10230355e64f9473b4275d18fc66d0707247cefc0e956d956524a870a0ebb3298a9336222dc317e70388fca1603c5a127bec60302047c435bb500683066023100c8cbb197d322d1f0baa1954f04ed6682002f7e7049fc3507b7b60aaa4e6fd47aac5626766788d9f3abe33e595ce0ac87023100ce04e2e680bda77002839e9e3b2b895bc97faf848003224ce9c2e88a4c328486c971b18237378d96e25a775a182ab48b0302047c435bb5006630640230156400cc39fa973af3d8bb3f0d7c8f808303aea848129aca023c07e6292d7add18b3f88c1145badcdcd3187217e0813902304af3c051462a73f81ebe9a590b32c8411e8090e2f86b6b0ad65249d237c12758d4c3e390ed76c7a65931784a94df7b700302047c435bb50067306502304de4ca0e4855c4a826095035d7a73f9991c0107ee5ba9359016ef954837489845fdcc6ee65c384c2c4d0d706fc78698b023100f7f855ecbdff1d23aeb7594c81d557f1082ce8e23b94d805a796d2b55bad52f002a701186f15775aca4bcabe8eb5c9620302047c435bb500673065023100b7994195751389fc02b85f8c724a86711ac750cae19061ecc02f80eda24f88505bf377fa72bfbe3cf0dab6725f2a2e0b02302b0aa5a2e0473fb5be1dafb46ffa24f38e6f84c7f3efe5fe0d795088c43a994928526761f54990e28e08aa647717acb40302047c435bb500663064023073394e110e88ec2445169b57f5e09f380934db26245ca5ad0919d848c6c417c4b3be399380f131652e1bb8aed90f4e510230135616b71d84d77eb88b44b5a1aff296f00b5b63f43eba228fab6b3d6fa6af015a59eef1c1f4f1ec6117fb8d53aabdc60302047c435bb500683066023100d70a57c39c349f8b58e646f81fcd1fd3ed8335d918908d1815e9c6ff067aac1208b822df86dcc3bab1410d7d75f66c46023100b72be0b37a8ba02bbe8261348cd8629c0579a70d8b75dab7d26e0689e6f8629e36f14774c07232aa3d7169770a3a7b410302047c435bb500683066023100ce413626e1f593339f76bc1d0b2351a82357ab3d8fe892e7525115d9667ecaacf2e0a50766b23c72a4335e709cb9b420023100ea20eb606211522dbab99be9310f21738d595afccd3a1b152c65fdef1a1bd5a4199efaef0f49a94deb444ec4196549d60302047c435bb5006630640230134cd5e6d2c2f79f667c1db8d23224ecfa34cf0226e1de6277a8761e2095a672b6628875757913c2e98dee9777520340023029acaff079b846e691c041c3eb2b720ef3b21f46c0f1d877e33bfc4714f2c41ddf43fe753eb4ef10d7782da9236eb6a30302047c435bb50068306602310081650c14872c52b0f500d312a0e5b6b894e96f083657f9239668027603bb69cba4d76d9b76fced388684b1fc0a2595c302310083430f832028c144817801627e5f06d5d7c89a9abbf7f23692e29eac01980d6e52145852f4a7350e20b56a56101226cb0302047c435bb500673065023100fec9873ea110b5bd8d5cc5281e74dded7ca62ca29f514eb0f7b081c9320b171cbcd5b49a48ee1f978d349db234d6a49802300305fbe7251a112a99b654d4a224191f4ad9b72540b3b44eaa1c7f429413a2eba867af97738da5ff86030bb27e207c1b0302047c435bb50066306402306d15f89313968a2ac16e81ceea9d623bd5123b1f7d5d3ae3648a1d3aab7e36e080b3202e270f80cdde6fbfcc20a34cd5023022fe29ea63154a6cdef480d1b279052b90777fa0cac9e1bf0b329856b27ec41ca834ba0eb8292c4e0387ccc75a46389e0302047c435bb50067306502302f82c54903eac6faee592e8d651fbd1da0b4056fb8dd3ef983560942bc595173c918fabf31bd7cc365358aba6c2a3f28023100e7d87ddde9c7845975aece48031133ce633b63398644c5b8a013ec4829923ecc12f74c93aaa712ed3ad50ba2b0a8d5d60302047c435bb5006830660231008d16df4a790578402217d916bd7d69a089e34789be7614e3944ff151b4aa5918a582dae9fbf30aa7fff5a2f84e698381023100dce2bda27b2a172b79f4cd8eadd96372a5fc17671f9f7dfe67c3e9816fd1d78e946f52ed87d733f75ecd15d8d2d4bf5d0302047c435bb50067306502304a3201152ecb3c146c2aef799388d863a6d90544e50cf99fb40f879e3b8ad5a0f6e7a66319cf5e69b27bbaf62e6239b8023100db81e06ad30e8dbceeeb2a5cb46c0004010e23808614fe5d77d82e63e2b1b0d725680d8f708265373b7f34ea85cf62810302047c435bb500663064023062caec4288ef96d41e55f2ae344f7f4304fb51b29bd945e9673395aae982e4b9497a7c7f43a7946437da6700bddc9ab102301ba80f264d20767c5d56c507190e33d75794af89f63d872c0e8e6fbadead3366d2dee630ae97a6d7adee1835d8ef27200302047c435bb500673065023100f6b9c9f8011c5a4659937703c91af1d5ac234541c9f05e8060be33bdff0380670c8fed24581b3678131e1b2eed0593910230367de585c3d23837e872e201b964a5f8d171d7fbac7b7fc99a9dd53f89003d777456cbfe8cb0b92fe706e438e06aaf9a0302047c435bb500683066023100878b69c65f91b9f371cf8bda6ca5e2e51352a535ffbc853478a9ca93a7638d2acede67d002aa29bf8550a45f17c4b2ed023100c9536cab64af255d4a153368e2a4f966a0d38c6c234c077e7517bbd9151bf3fe9c256a0203f8bc23fdd4514f1c8d019c0302047c435bb500673065023069809c849408b168afc0c7e36fe7888c2753d6f05b0258a80c540205f2ace576f3e58cab78c5e9d2cc6ba71224d786a2023100e4d6497e3aefa69936ae8da59710b373691a6b58cee97ef8b71085d475bc172a0fd49b50493876e83639b914f069fac00302047c435bb500683066023100be35d95660417c06b8b94b9451517758cf0bcce0b901eeebe9856f19cfc8e67575c636d86798e665081d7890be24635b0231009d4a206aeafba912fbb6d19c8e0f13395444368f58516d19d95ec70b57ef57ddacf7dde26a9c7b896e13ebf1ad0191500302047c435bb500663064023049bf725a0be4054cf8989f5af4891c296526d2ca75351d8d71c64bec3b5b6a858acee1455fc84c14f28f50a3e686fca302307e8af56e5e100f6c1d235dee778a1beced20d820cd744f9e201d30a5e3dee214aeb6784fd83e7665444cc5842a2894190302047c435bb50066306402307a604a01ec658c186e8932ae3a9a68cfc71fca83414a589ffcc429ffc0539e57e7c646017869416eaceb094d1da0284902307fb26455c2ef95bcbbbf2aa19ef29d27131ad9c58904ee52a05fe47e2e5d4c865a6e0116af1ca28089c76f450aedc4760302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230062da6f3475a7b90d44d022452b1f456ba6f5b2305075a57218a76845bd04ef8f91dfa239669577627d1f9348998e81e0230567b748fcbc47b7d1eaa4916cc3fbba42452c79380d0fc135d796f7f5720bbabacdb14e04721702fe87af0c205ffd1760302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bf6448f84131d315c3279dce9bae88cfad9b83646db6006d65744e91401a1be9b6a1c1cde1c809cedb198664f1cb103702307a38bb0f8a9e2108b273c0b0f087c01eaca0222affa4a643518cc619728129ef713ad5b51683759f4e1646c9322cb28d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fb55849f73ff4731eaf2d194625ea7645f312719ab8f29b0e418624b1e2c5074d26db9ffa02b6d19747032af347a0c730231008e64057905a0832fff65b94f5e1da3d347101a5002d620ec14850a5b4899d87e0589b0c6b6647615e490083265757fb20302047c435bb500683066023100aeac8db705b5087b6cbb5742851a21c26fdcd87997c49052d2893bd55703515cb1a4306714533d4c0b7aa65da4314bc0023100804cb7f5841e63025f6572d53ad0cc7c21a1895123a8a9658e290b709fb4698c9e320cb709cbdfa6d4a85b2fb3e3dc320302047c435bb500683066023100c8e366018b207877d357974714c642af5b1f531977e29f1ad69bec4ec36c4dacd76b607bc0d76ed0f3b7da7657b2e57d023100f70718f5bbae77a3c1de806712932f8b4c4ca6e3a569111a529d99c84571d1e21cbf342e6646ed9811cad440411839300302047c435bb500673065023100dcac897cf0f3fc24bcf7483b3980431da173db3401ae1c5923086c89a1004b5173692e9ccc94e789898ed136074dfd7e023033e8fb5d0582382085a1a38ad345126329cb65ee25aab26ffc33b0664cf38e36cb951fa16c878879640c6773fce3c6140302047c435bb5006730650231008e9be544a15a3f0c46ab54e2d1b5ba4b203bcc2fe16da159b204ba05232283f77137e864cda083a090c1dffd5a1822c302301b7320126d7ab88ecbc951f87568d1e707b8e36e6bc68abd2bfc8f6dde72154759ef48fe71f06d8463a74b14aa2532070302047c435bb500673065023100b13de5a61209fd1d1adfac85b29a5a71945b89f9aed9c6eb236b971558705b3dc30492fdaa6dd9137ee5ad26156b7e13023013d51ff984d9914e8ecbb0c224235eb7853479e405d8b1082cd05004040b49d4c92aed6c7d3333998cbbfdb5dc63ce710302047c435bb50067306502304b4945b4807825c6bfe552280c64b5f85e7956af58296d40f923f1bba7163a21670d6d89f078c20f3b49a2d9a77d17ce023100b6153bef065ffd052c5dbae2cd628e99655ea64f28abc4eb20a9b4f1eada59fb237691dd3ffc1aa6d7ad7533c15af1870302047c435bb500683066023100f308b76c08c342ec4fd9944b66478c5eb626b1da509e78b9f5eb7963a4bfb86e6cccb0ab79e1669b19f0148cfe100a65023100f844c58e068a5bf1d96ad40d1462ccedc3da44790af79febed64a4707f82e7426e9d280dd04bdb2dfc06522012d153380302047c435bb500673065023100a764c61a4cbc9458b3b9e088bf969704ca5da3e12dcf74111a9fefd1bbae75f036466770688a655def68bf5f8db1d55502306272f858b56c05894ba15be568bbd90f78d88f9dfccb60c18b4c0a0f54351803528b0c9a1a2b528903771ace4964a8960302047c435bb500673065023076c70e4f8fed6f72f016c15c56ef1086533fe4527a3c75d842bddb8b83aa7a0e9831e9748662251b0ac465e63b79503e023100faf6f1ead6fce057433fe600a07ba2145394ff987e3c71e9c4c11652c505f8aa80f7ccb303e981e4dadad2ef6d8070c70302047c435bb50067306502304b556965feb9d2982b8f216813f1763c51c1b8f71008ee19748411a0e0d99bf0dd4fec0a3e763f67f20e00f61a69f80a023100e0791dd8e199d5e3c019eaf4f9f1ca0c1d6f2ebbb388d8354e4e41cd1a4f1206ff76652007d330d49cd7d460352636ff0302047c435bb50067306502307d582e507c0b851634d470788526de8285fb7c606df021f1fe5a0e1de74c16ee1244f1c778ef662517ed5e7a1ef9aa92023100a6ce6f5584f1580e109cfba815ee829d45cf81bf41568a967f4b1c73b3cb31d1501cdc4498cbe0141ce81c54fdc9295e0302047c435bb500673065023100ea9e5061029d920b7f4b60f3b4a1525bdcf0f0987d8a0454a3b51df516a32ef86bf81f4384e0e56913df07324f094dde023019676d3da06b55ca46917472922d26bb8338b76cd3edf524774ac9b53ea5a5b5ed5953b21eb8f18b406a6d64577ef0140302047c435bb500673065023100cca5f45dcea7aa980d483d3342e8cdf58464565a0db810eb6786428f082bf425bef7b103f010e8f8e29f82add4fac14702303109ae66f40491fdab1639b15b754e778a9844a23cdf4d61a30979c39c0cba25487ba0e6ceecf3439ab5d2f85828c0dd0302047c435bb50066306402302adaf0730bf610766a30f4e1f8eabf3322dd72ffe9e5016d7a87f4a49d720b25f9bac4695998da41ac30b617da0b659c023058c2f89dcaeebf4a70f491e6e94b174804a6207409972065f0868ac7b1d1a98c8ef3950bbd10427d105f7addfc5430380302047c435bb500673065023100cdac1b915f6a8500062abb6eb21aec5042f43b630f79ec320024f910af32f3c4f115991f19c1dc361049c80cb4b46e96023075814828dcf0dd5bf50374597caa3e3b98040f36e950a0029b41f707eff77b9107d6a06e8db2110f11805c178cd8e7fd0302047c435bb500683066023100b5a5e5ba5a64813b481a9b0f4821208730bb98d1dae0e6e0150f8c1ae5dd89584262182708a3cfa8f8ec72e8fdae066302310089ec9a17c5fb625295e3a44be9a3908388512f39d98a360b6f03a2d9e0142964f3c4765b0651389b8e80da76482255350302047c435bb50067306502306b44bab612e84a256a4ee2c7880c3b84e5f4e70362957d5e00542bbb25c3231c23f78f3f277c1ab1424f454f5a2f84b80231008699833fe2cae04634ddc807e47861a3344773aeba39f7a923f3fcb248edfc0db36533df0f3a05b5129ce2bbbb54ff580302047c435bb500683066023100e72357fd2efc3aa01a6a68018529eea2a9d82345c01d2a52cd679046a742c8cb97aa20f0a2933ce3d47bc8aac6406202023100fbc9a44d3bee083653e73deb1d3ebb0f9e7239345aa6d23aa31011bcd5049a5066a7ce89fe1d66652d3e7d42052c4e7a0302047c435bb50067306502306235168f6cf86f91b28f1d1d1f1dcbd01a923c637592e0182b751cef0310da683935d61877a6588451527f53fb727b940231008e681eee7e00a9d444110d02edee22f89a054c58c1bef53ad37be094f85173cc517fa4f6ac2c72d43f608c70e72174030302047c435bb500673065023100bb852bcdcfde1b934a4cf2fe816a95f8b5d13ba0bf1731e9dfe348238b77b285750034ec88987cfe2d3a80f1c15f131002303083bf7038a02593968ce0fcd582adabc29f069cd5a62be408846a6d5074dbb5e752044aa55fe2b41d412cf4188bf1990302047c435bb500683066023100e17aee0867320f904e0d466b8ffff69d8e20be80efdc3d9d1a428b8f8ff7ccb8890d1c68970674fa502bd7b47fc08e2e023100b12a94b0d0605adbf7caa06435eb6f1f0dccca7e8b895dcd467900f45dd0b53f56b9db49c87a58d8d643b94681ce171f0302047c435bb500683066023100d2683ff6b48e829e51d6b610c2f3808d90fc550149b54c8c765e1b852e66b028124bd183e1eb10cdee5cfc894c7ebc5a02310096f7ba3a0cd5686c20b26856eb40d2fbe292597939461c0014db7b6ebba4bfd9d0098b01b819d51b91b0f1f7dc2749500302047c435bb5006830660231009dad1a6029fbcaa818d1e5aa07ba8006a9b52b4a355d0b868476888d2a7158c8748c5585d52f17a33d0a505074843929023100f1a8249326c381526a5ddaa12142bfcee4c0608c7cbbc06e8e19ce81a97472e19b6809929a89be9ac014c054ee1ca3810302047c435bb500673065023100ff4fd7f7a780535f8d7d78f102ff90813f58deb99c02edd35cadf721ac18fa0ecbbfd9cab9920a136496b87edb7126b3023009aac5362b9bf42a7adbd5e4736a59449496b5c6761e4062a9b95481bd8d565f81b7d63974aaf5680b2a73ff7396ac760302047c435bb500673065023100ade158936fb8f91bbcab4d2eefbc454d5a2d7111c3c59ca8742f056dc21bc28728bcf9f625b037410e4c9ff4ba88c95f02303d4c1f0a1515c8d6830a2bf9d8540aa71805a269673c82c27f0ecd050874fb01546f314c8ac2459e2c014b8434c480750302047c435bb50067306502303d056593685a35bc19c95b1f544490c08b73e9f38c5a9eb3cc7f13ff3a5ca8672dd298bf5eb21aa3f6f4bc4699eb88c7023100f864f3af0f08001968e7d2c9d127f80715e0a57c0e44905ac3de3ef8eb3df4c00c1e93cee95b833f24397e5a41a2681c0302047c435bb500673065023100a91adb5b941b797a0ef111d946502532bd81bf2da36b198e0a70415ffb4a3aefd49dce80e7f31f3258cf551834a9840302306f9ac9e99e72e72357a293dc5fb654be608e9bdc481847463f64976acb9343c6885966480e8fa9da4930ddb364f6fffc0302047c435bb5006730650231009b94aa9b620e7841615f450af11848f71bb49e2ca87669237aa2d1b0418f13cf731bb045a7fb68168b5231a0e1dce2a902301c3111d13c0b06a93a2f2220e3fa6e3f7192baa5d58d93067533e84c2951723c746e56b8c60ca045b49bb501275f91d50302047c435bb50067306502302b61e4d85c79b3d00f0dccd06434ea4ef56abfcdb94a3dc649ab5ff50a507d3151df9cb217092c4b50a5de96634faea7023100f7c50ccfa3e8902b47ee4ba643764bce89e9adc4c878d82487df0f93854f669fb48e29b878ec67310c7cd41065c29d670302047c435bb500673065023062b59ea2d672a017fb5e5c77f1280ba27e81cbda7fbe4001282a514281d7667cf2cf088a50b6ce671c0f2ed502fc5cc1023100a5cb4840275b2738f47f3c030d2b4b5115e0289a6b1375b7166290d97f6ddd2370426cb97724cf717412738ff13863850302047c435bb500683066023100a6a9aa2dd22e6247d8930936f36adfa25d76f2dc98cceccc0c57bb65650640a82e597101c6017664d3d7b86925413c46023100d4fa5fbdeda68fd739c77cdf9a95c97f055de01c7280f1e85a49928828a73d202170a5c0c2bd4a05ea9eb4c49081a26e0302047c435bb5006830660231009e15bbb23e43a978cc9e417051ff7e882d4287484db3ff22ff7de3f7c4a752953e837c472e60b0d2b8e7a9f48c8c11b0023100bc172b83900f068bf485993016342d502926220e772585a9140a9480658eae7e8282171de5794f8d0df82d2ea09fcb990302047c435bb50067306502306e20533e3a2d13e7a57f3449c33a21bba06f6feac32e2bf64a3b09d386654ceac9a8194c28a8b8a2c21be473d5e97235023100cd684c3cf1350c1e13155739f9dfd6cb70c4fa0597efa143fd056d786a98321c78f28f0bce3f414548ce580054117cc50302047c435bb50066306402306c63e14fd71e24884ef494ea3d831fa500f889bf112afb8614a33091ef08dfe1cd96eff1f2d110a487d2fd0da877d50d0230292e69dc492027982388390971176ee14f5f622b27d8e81e28b74945d0492a4bc13571f21064800b20617da51faa35240302047c435bb500683066023100e1efeff87f960e7891faab0615f3b2bae6f7184834317334e35b5e137fa089e251ec91fbf23a46e2eb7aaf9de8b3c1930231009dd206db427590f95fc6062b86f4dbfb496ba579149f0df8f12f715a1ef9fdfa9901f56bcff656c30163683b75a8f4530302047c435bb50066306402306e15541ff788c6d9a9316e277bad5530a35c9641bbe121e5f70b90a0abdbe3773098b84be66d09239cb477ee7df093520230661f7b2884595c280c53ca3acd20059fe2a5b623b8e2c11496ae1053010b9802cf971bc4c21e44fb8570a6957d6b23360302047c435bb50067306502310088d4440f2c47f84c4fc7957b0c68777620e2cf75df790c9f5196261cd5443b6196088c02e3b22fae8d5d3e6c4b769e5f0230467a23c5566b9b797b44a142bb6e9ea91e97e8e605f74de95d0497e35349943032a18f6b0e67d0363b24c8bffefca9170302047c435bb50066306402300f007413454b5f88a0dc8607e5709f62b8bde67069e6c6f4ec6e75a3deac88c2962209d5e43570b8431fa701bbcb34d502302231ea51466cedad39b2bc60d4db6a62726b7b05737722e09784313abc51fd82462214a9af4749cc00ade40c808697010302047c435bb50067306502301b53dd09d350916da8b1a49023b17b4ce3aadf343300acdbf0e9b9f2e7918ff882559c8fd731666c582ab5056a2c0d12023100be2fbf47a33b8f354b473a4cfa1c0dc49ec59bd8849c89514072042f034683f8fcba837334fdbb4fe5ce70c3736590320302047c435bb500683066023100c446b8b3ecb93aa9a76b5060aefe78e41bf70415f6c876d663c189f6ed9b2c9199f3b81e1fe80d8998d8388a0519dbd6023100d1ac86b9dac0c7be03414e15622f45ee527a959a100ff328462c1ae874faa067027ada2c3473695b873e1dfeda5b8e420302047c435bb500663064023048b4bf9d9d1c7c93f4ea6a91a9383c96fc702eac38ba9b403bd93ac073b2d628a666db6621c92289d757c49207149e57023034fd6ca9ac5e54118216a05518b78e6858cec21125e7861a49bc04c4d43e94daeb6e2691daff57076c86b92bf24d5a850302047c435bb50067306502304fee1ed2dcc54b13cbfd40027d924e0d63331020b9b8bf88c7548c4045a326cf3dcde3bb113ce4829f720b16813ac885023100e71d9f8b6a23f2eff0e0a9388d02dddf5f426b749b146d088c95694705a59987e948a98911c13665be1f7815db71d9bb0302047c435bb50068306602310098fb29b67b426a3bbfc449e2f4ff6f94f89e300fb155048ab562cd3f36f135e2c39cba63cd35416af0b52428e2b6c0ec023100956d773eecfe37bb6e93d505a37fd7e8aeccd9ebc074f31e041438c29383df53b5e58af2b122ea295058c3a632d82f4c0302047c435bb500683066023100ba85ff89927ebea5833750d5ff0f299a7c474a95542c118505beca4ced891528c077c65f15d795c9553d1432ba5d2f9c0231009feef764be0a4ecaa8aa873a09976dd3bbde376d68772f33a04ef36fff36db75a4d908f7c093429629065b931b99c3a90302047c435bb500673065023100fcf1897e501ef02efd728337d997cb399a085c44d748067f0efb9070fdfd970547dc0af21f6e05d433b7d3ad061eea190230442d71a5787fa64a7fef7f5df588c6cfc18c189e9f273bc8d586d1cbd2ff0daf311ca3d1e3c70e82186d902eee07ed9c0302047c435bb500683066023100ea5bfff61b68be07f375ae27fbb20ad73932e655701c18a1f89a0758b0a513d571eb738d0b68c58758b0232945eeb65e02310084784f28bd0854dd70742743200db20edad49ed7cabea3541eb6f714bcb7c7220d8f44c5992c47841457a530a532a7df0302047c435bb500663064023067167976e48935255a72769feb75478696e8952e177def7dd97b6711390a5def72c76d9c8fc6df039be0e34bdad7903b023061fbac611433c77b23561fb553c2720900b63fed5783f0f4ecf5227f4127118f668b77a299b828b32acac3f6e715833b0302047c435bb500673065023004d861401daa2991f3f33a65864764792fe41bc0250fc3e7fc1f392279ee286740250fbc13d0bdb6d2964c8a654db26c0231008a6aeec2adc36bcbbd48cf06ef1c312036180b5da7ff1fd9347654487f324ac20c474559193ec60514a45e3b5ddd62970302047c435bb5006630640230772313a4971b8ef30faa2de0df554fc9e26ef817fc2c47e2d8e09d6f473db2bd8d31ffcbdf78266273dc838d9ad5968a023024604d51f9d2c696b9253d7e4061c80f5366a23b33c0bafc79f4fc40f7a9b995e5589842e477931d6de8eff7f1ccf4ce0302047c435bb500683066023100b2857ddb3c604677b9708d484db0fe7de82f638033389fc66066b9f86dde0a235934350bf47e95a41aa5f25c13291ed50231008a59cef333634151d4f7aaea876785990f6786ab29d22b2bf49b552c12cf98e05344a1f793608fedb41ca7890cbd76630302047c435bb50067306502307562f944471d6482519b34da4fb04b5be3c4be7e1ca1ebc6a17c310df9fddb8d2413cc7d036c1c3e0bbb257da60e075b023100f074c44a240fc88b35535b2bf7fa96ac492c0a2d8015585efce63333b663807188080d913f71646062b78ef6ffc2451d0302047c435bb50066306402304a5f73beb64899a16c0a6da36a6ecd8f0e59caddbd605fe195376f79ac715363e7c503b990fccc547ca5c59edf701816023041aa91c6e815ce4e7b21c1b5db5271065e5469aa1ad9e9e88cee563185486855f8830a65e049bb704eb95110a65ef8240302047c435bb500683066023100dd707378f158d4099d4fc1446291451fd91ccfc00a6a6ed818efde5b343722df6d64999c25a77bd73146b67b936ef04b0231008d1aa864241e6d31c022e8b7c32822557dc9ea524e6a8914a45e215da131a15ac0436f0801498a62ce9b1c22d0675c380302047c435bb50067306502303f3f6a29f4cb0171557e4555e0eaf2a4d1b15a2bc28653af1ff83fb1f9a7261fc8b7a5e399e94a39f4a66f008623547c023100cfa96d7f7deca9374980774932287aaaaf2eed8a5c875409ac73363dda41ded1aecebb183a5bd5d6401d040687bb65e30302047c435bb500683066023100c46abfe5ebd1abb3b910ffad583c3b73725d31b028ca7eb7defecd8de5d3891ddf4de4f23db1259773751cdae0b67c53023100d4173ef54b3f5fe5c2c0d4e90d26c0c7bc38c62c6607b8bdeff6d9439eed44754bf641dafb977088bf6f2820daac44180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ab53f5b15c756c3f7190373770bf15cebd26b54d1e5a7d24f1474b5cc574afa2056c0ab380aec50aad72a66f5c0b1cfb023100902b8ee32d6758aef9d4e9c19a7fba8cd2f8d20d9743fa89a40139701cda509c9a1db2bf327cc1c3a730f413ffdc54ed0302047c435bb50067306502300521051035c28e5e9b7951cf4e906c906c732e4643815bf092530588b18dae28e9f0e0c6a280a6b767cc7ec852c1dc18023100cf4bd3ec7ecb4f72ee4f2f97123208f28e6388371ef451fd33c0557b25b6aee0aff46b303735a9ab7094894da1baf36a0302047c435bb500663064023015d757974df9cffd9a7ad4b6891e6d12b037117348233348e3871878c3450e1780febdf6b7273678f6baeb85b9a8a5b8023062ab5dd424baedab874a3f11a85401cce03b57b19a584e94170482923ec3549a8c49b9d1bf1e33b72c09a3825af88c9b0302047c435bb500683066023100a09ebace65b307eebf7467733a1cddcee82e87157e175449c4ef15b1c9679e6a40da5ead09190ad86d7a21475f7f0be00231008183ccd05346dea4294b0480216ed39eec3f9006ae0ea12aa75ea379d87abd266483fea22c48d6f385dc1c0f32d3e1570302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302630097c4ee66f4146bf5f29a85e0735e54e37594dadb2a73c26ec14471df4204b03cc39cf05a16d89559ab0f97f8cf702307332d7716a800dcd8170a82121857a813ea6773bec4c945d848bc8231c69b9a79439260fcf1ec68a3252d52ee9568e5c0302047c435bb500663064023011863528fde4daab618cc3fc83b9bc46d61338f47699913f6af1e354986712e487e6ceff399d78e1064bcc2260cee62302307d2d2e81b10e8301cd0309edb107f439121ea205f1721abbd0e35964416c5b5ff68d0844ecc4863faca6673a28f00df90302047c435bb500673065023100dec7e2052ffee6a19992909161c1f386ba40954166beb54623a2d07972292cf129487ac09caa25f1b112e2f2c351dc5f023078fc21fdac8afc9b4fd01c120ab8a173f3276a99126f4694feab7a0e9e04f8f1b08c9d295dfbce15ca116e4f45aef4c80302047c435bb50067306502310085352d75e3efea58c199fe9b5a3504f269ba8ace4e886fb3d20d0d28517d3e9158f854a4c2e67c40fae85653410db33e02307d6f78201c8e446d68febaf4a7e588f5a4e3601887c143efbe0a400ef5aeaa0e5a4242097519ef3f5b95e5eddbc29f680302047c435bb5006630640230769208e7be55c34ee8e73fc5efd4bc8fdb1f2fa8aad4d8e177f6b4d086608d2489434045451ebceb4c8a84eac4807ad302302e5096909cdfd6324e4a2b2b05941e55d0d013de4b4e3757a1f88a55a0a1b5dc8b372e172a317ef26c279187635264790302047c435bb500683066023100ca0905154581c44fc9f421aefe05b9260e88679d019c0730016557dc726b14f6f4ef19bbb71e63426e23167246370e35023100df49fb274e4374226e5eead0d2f1a03d6069c0e13e6cc7c30938738616aa00e35e3d99a182baefd5e8c2084b204c66430302047c435bb50067306502302748a27111de046ea71623cabdb9dde69fb091915688dcb08e422c6fdc6a1ee9aab6d018fd42ac3bd7b8234f09139b1d023100ea13a3b4c92fabdabf6447acb3464b2ebfb8166b62393bcad51536d338ab279be703cf0129655834fc1a30ac1a3474350302047c435bb50067306502303439a9bf7b37867d2df10d6280d46093867cc0be6eef577bf6f6685203ceb50290831ec9e9c4da7bbe2de8ad91ba4d3602310089e7129e1b142f4d584eb304df1c71803ed4d84b151eaef45003616aa5fe76a6bac051ab35fe3a09f1c897e63041a89f0302047c435bb5006830660231009d018e4c9e8c09c86f045f030d4cdba547811d614ed01d0a4f0bf2917dc6f0977d029963d85b3dfabea3b29eb07e2a09023100b08970f7157c85840c2b435bd76d2ba93a4a1172e74d02947d5cb7c7524f92729536ee9f9c70568bcd851e4893366d8a0302047c435bb500683066023100c216102ff16837ecae7e205583fe34a8e5c584955cdfc3194694066ba4c57cac1e464cbcb6644f42d6d6358af80c0817023100a96246579d1469eb885bebd6758c3d37a39f8c43692a3c458b337f10a3d617c678ec1f2785cb41ac665e1e93b8b38b420302047c435bb500673065023100af6dd9c6c80909762e4b432ca0b560ddd502f5b05b3fd860dcc231981adff2e496f056602d3f2d521925b270e3c6ef5802301f9ad9d4bd5fd5666e83071f8c541473404e7c461ac9aba2375c7630bb57972f9d2a9d78a72f352577e113d1d44b33500302047c435bb500663064023021edeb29d2ba6f0522868ecd14495b5ff323cf0d21350479e04c5003393a5ce6afaa2b9935d9d29bfb9ffb76a2069260023071bd0d652b8f03fe29bae2f2d5579a9383fccbad4fcd20b0fd6d5e2885499b807a5fe19ae2438bbb1f6d410388f5a4330302047c435bb500683066023100a1696f0f7330cbc322067abc958556e662240423dbab5dfce75a113a3c0b4f544d06eb2323d3fe672d976780fc6ce3d0023100f9371acfe65fbfdf35297ef7ad20a4c35f6e200255a1728a78d211e9e0639404352ced2b9a79455220b184781db359350302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300fc8eb626bab0462f15b104b17dadb5fb41ad69516700fee48d03c6694251e19af7110a8a0fa1437ed452291300ce44a023100bded16a9c430c6fc4e1e3f70d31a2a4f7d0f4b40072b9332e72612e39f01cf0a6a8e06cccebe718dc61fc8a2cd387f150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023042e7c714026877a57a2a565b3c939b11681ce70ebfb62c346f6dd471ea12fd201e7d89ea14885ba7596677c0ff25884e0231009f60649c9e1dee063494ae547bbdcf20b4ca9e7bdfbe3cbcc8c253a28bbd45d1ab919a539327f02a7c063f21a50c3c710302047c435bb5006730650231008a859fc605f0b750a8a06c918ff6201c9b0e963f46118e8c2f41ac8093924538b5934f051e03b32af5efa6170f15309f02305f4ed28408080e8e84e10ed0d62a26c71a4cdddeaeb3a9dc4df292cce8ced755afbeffc4c2c639c376aa98b3fc8e3d150302047c435bb500673065023100f4e56a75a536b181b26c3285fdbd609057dafa3d3a3f43e6a15b9a656a09a3356a89ea095bd437efe8c0505f10c8d53102300edf028b3ae2b1a4584a817c6184128cc0e73d38000faee68b952faeadd4aeb96244e1000644ce0365181abcef4ee6ce0302047c435bb500673065023100e7feef84b5079b012bcf9d008747ebbcd0c12ddf52679de3f6fbd9e2a2d66277b7defe6e19a875c6ceb55a5eecc9052a0230210d460f63b304de8e6098de6b5c71466d9d837e0e3fae3892a9069a5c2eb1826a777f5a9ad5ff5bd8067c19fe28df3f0302047c435bb500673065023100b72fee0bc82944b5372da71a41d26ad8e15d780962f9417c7f8f3ba985c3b27ec4bc8f3da26b6d6ebe906cb6b8c16a5102304adadd4028645d89dcb642f581a6e6385271316bc125f3218e2409313adc8e21f488346997d9b6a3c6bfb06a645cbef50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300e475e6aec06de38edaaabb0e00c114e196c94f9ed6c8c808ec755dbcbea28c68768a278a284599125823c260f225302023100e4fef22e95315d8ee4a7a07c6f01f37dc6dc5516ebc52965768cdc3b57bdcfe0493ac014f4a432d6ae1f596a6124f2be0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aee5563830a590ea8ec8fb249d1c7f7e7c8415754c5ab22cc4a88edbe76d46be3181990f8959c51f216568e1cbe913600230377260d0ad18df0719579ad9809655ef62a5848e0eaafb7d1525e5bfad6a7cb6bd4c0aa2f63a0224160a49387d3058d90302047c435bb50066306402303ed452b292b2fe2105c213060f8ecd5e81bd0994f85fbd0d4d7291786029981ac94d514327e6633d08d9429bba213ee6023069798e7d9069411426d7e696be7676c7b691e9d3f37928bea57ef19bac1cdf2641c12675ac078ee7aba1e05f08f96d8f0302047c435bb500673065023100fc8da13f8395ce3d9902d41515233380df07450345605a29d63e1adf089670d9e20573131bdcabfbc7abd921e36d35df02302d9c54976357efb79d1c95110ea087048e041957218837b4b86b12e47f9a920c2114f9fe13caa8cf221b7c81afd2f18d0302047c435bb500673065023100d7e137925aaebd337bde3206a4f0115b55fb7bfbe75b4fc312cf9963276969a09eae05db4ad99a5d2db5797a1cedbf2b02303a1acffe013a38118c8d7a317300eb85f4eac14838559575fec3cf8d17ec2152ba27be41217e44d94ade51c3b75215a70302047c435bb5006630640230392c232af8cfa29a4c4dbf3f00ddf0efe118597aa4cd4d1d2457497e341e51e6747d76905e1641ae06f62c676426477e02304e18e85b6764b7f092e0fc487f4331a24e75670ef1f588a7fa2dcf481c2441a7109d8d964442c521ceee3a2583640d7a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009ae627df85af7850657c3f5d964a036a0f385f66917ced40a4957a558b47a3b7b5b3b9a76b64e5322db86fc8b7f103f5023100d58e6ff0ce98e34d26797773b262f76059789b42f0a4716dd3e22acb9856214d7170e7cfa3a8353bdf640430edc6e70b0302047c435bb50067306502306805c7a09dfa62a19c1ddfd1174b5d550056e2f083107a53dacc98ce5ace3c212934cf045de6146c1c685b2d909b18df023100afd2256360152c58d528ce6d3dcde1da0be9f21191757ea716e6134af3a7c9f9275d18ab6972c6135b5e0d418f1ae1e60302047c435bb500683066023100e013948b87fa773e3f47ec66f555f299b267d3dc8df06df9943208869dbf9063048762bea77ddd899cb50b5a472046b3023100f4055053dde1f5342d4c09d2f715170e151b2d5e3b15d839930a172ac89bd4be0bf042f9b12778f6ad69d1fbc4af1c180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b6dcca2251911d544542697efa9224c3a85ee8143f7fa0868b79891407ed6801004639e90eef79c05c1387e58e93d47f023100caabbc084c3218c3e664495684dab804e2ca9d9e79be0214908ff337ba86265bc4e685a7c8c1524bed4836949e0f5bc80302047c435bb50067306502304570c631349025e0fc33c4779528e2d844976106060b4a2984d755a2e724efba2b80b62c95b24e01e6182b6b5dcfc5af02310086f3ed9df034b9af89e863396018d809068d316327b370672fa5fadba50f473caecc6064438c5d6079c1cb691f0ac9a20302047c435bb500663064023032e49a8576d770efcf428fa66752f678ea2225be8b684b435fccd7c9961651da582ebc9d4e4fa35b0c57e7e5e6220cb00230503bc74c679d1611b641d862147f10dd0016c82d2c6b83a8f65c0e03ac04b0180c0eb905e64954b6b3857da6d248a7500302047c435bb50066306402305e6c6b1393f447c57bb146aeddbc6ab03af5447ef28bf1df8ab2a95691ba8e69e8a6657b3d86c068211c04f17c92612b02300432e1e31503f14f69d34f3715d4a90b2533c192d0df85dce8fd7263e752aeb7b4a3ff240e2bd20019f1540eb3ec29f80302047c435bb50067306502307ad26e3cab7e3e7acaf501f28179bbebbe7cc58386406a0b263e8e20c6de3170cf32b8e05ea265b7e9d857106e6c8a1e023100d3ae6ce958bbe5702079f972d4789eab66394c5a79c7b87f4b88d6e30af85fe9799344d4d0dfcddac74255557a6342000302047c435bb5006630640230268991021ac196762402c179b8d5680c9cdfb20a9d4afee4f6209df49623d87f162cadc5405e72c025da0f11d8e9e370023058bb3cfb63751de549f4fe443ab868b4a303ba20d35d0be48e5fc1613669e0a219ca158dd6ad722a7b2904b0dd1daafa0302047c435bb5006730650230282aae426732cd6f55632456b96b997eb4afc56afca891330cece63efd18b0696928047e05d6504f88a351b330b0bd07023100ce6dadcebbbea49fb84244f63e8297010e04ac701576adb9ebac6290c2fbe9e96ed3c2b497efb837b37f001fd9a953e20302047c435bb50067306502301cdc23412f2e6541ef932f4abcceed9ade165162bb43166696077a587ae502937a48391168798af577e9d79342957399023100e097be228dd4ddfde13e80b75d12548a92acb80a3b472ed496572f67af6f1f58070ccfb77dd30e28dad8cd83d9202f200302047c435bb500673065023100f600df0de8dfb6875153ad6308a4164a7f6cb7422739e05b8ee8d3bb7845df72dc8bb83125ae8071d1d7c598d8487fbf02303071a03cd94f7fdbb4d86ea389ba0908f9104cee54580805e93838f815e13b090b4f658611b52242d618222f446231610302047c435bb50066306402303b42feceaaeae31c400ab638d2d0b82acbfb48bf9117255aad46147fed8123776c14057e04ca1e1128c2cf420ce57abe023011cadaaa425fb49a5aad350dc1de4f120e36ebc4b2a5c708748616df3db32c30d01d91f5a88d6967669f469c7c6bb5ba0302047c435bb500673065023100ce70b1f3abcade378d1336400cddbefbbe0518d745828cfd03263979da00bc658ed6f4bd64203d5f81f350584bc3e789023016e648cf7f22b495d74f07f7202ac6ba60f134e037ef70e3e917286aa53c099c1954232488ff254bd8db07192be4dd710302047c435bb50067306502301dc948571064f808326c73b00b5ae1218dd07ce24fe68f5679fa0eb78b4e40939a303e8b7333efede4ca0e83151fe86a023100a3d2a84c263bec1364d2e60115da64491bcbeec8a54d440ad6142fb1de4b8fd2c019381662d1228af953a19ec38334c30302047c435bb500673065023076f357448606bb7148555553f6afd694226a4324ae878fe3d3e74ab332605a266940c643617d102758e4a5686399de4f023100a1cab65862239f9e8baaee2057a2eb35767292477dceeefb2881443c8a3ecab8165c73bf6bfda9f61c4ed3c9694057870302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023068ce61b38dfeec8510957e15d82a46f7a30a07c6c9efa7a049f66f2dae2b022432433bedd17286a5807cdb19e42815cb023037f1f075f267c4ec0380b49faf8a7713c0305460141bd611bdb0b75b4696a921077347b505d299c77e7ae988fa3301e70302047c435bb50067306502302baa3bdce8c208e11b8d5f556df72a12a56db33888e2142a26f1ed715d364d3d87964f7410abeec0f17ca4a86e4a4e3c02310091f473f4fd86fb91eb3a3e4c78dcf858a4991031a687c6e787e0ea298cdf3d536ed24644bc64b002033351c25b324f4f0302047c435bb500673065023016beeb059a20491d0d1492050354d04a3d85ad75684067ad12410ae635bbae5fa9e0392afaf5570f907a9ba652ee93ce023100b6f8d0dbe3c97ff5a0dee965756ffbaf0782022eb86f1ce6fe53ec0b7ff9f77f62b3265fac1c389c343287bba458f58d0302047c435bb50066306402304df2ca1b3c1c2639dcf3e963f9d0b5bff3aeed32ae7826ec7f9a82b72fa3293ee8c93e0b46f2a97e30e52ac31895291702303226ec973d0ecd5a1c659317c1f9157937f78c70974d8cc3be47b9ac85141e820a43b92bb2360783a4eb8c32633f21b30302047c435bb500673065023100a519c8219e4d47b8554e38d2d3089c22bc63e835b8d9364ec6337d48845c44346125c87ea1c352274ee0098c589c2fa502306f57f07672d5e8c5d678fb5441f9450f3346eec6a65fc2d6ac068874509c0dc4d077363fcfb9d7ab93a054ba424f01bc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008a55e6067ce47dbd2ab392f405f46b4e5cd588554efb18857731d7e49a329f8a7843fac2a8e54facd452fc7ccd77abab0231008cec8550b9c05086022656b3ea3f830813ef389976b82481a864e809eee2e7fc00433bf853bff613711b2873c15cc66d0302047c435bb5006730650231009f756407c66941b5201f5646ed1b04bf8cb8b2d6c9574361baa4fe8f57d8dcd5de0f2427206465e4059a03befe93f202023039f49f65839a500d8a5d67c00efb16e61b39519ab7dfc87ddb6e758517d59b61eb45385425c011ac53dfa69163d2f0b20302047c435bb50066306402303de5de85a0e0bff9dcafeaccac83d629b85aa7ee5c589521e3b7cac7e486e19bd30a22b3c8c049b574674c69719f882c02303064fc3e8b37f500a5542a3e7afee097ec221354c219b73e7a7a34c98038c884745d0183f2311c725526ac103bc6d4480302047c435bb500683066023100b22d75af903a84e23b318e248e189ed28ee445ca57d8a4eb4b6cf3b040abdcc131f4e29da3c272325aaef415bc7e113c023100c8747285550a6650ee10ef458a9f8cb29bce2eb9b4719bc6160037194bab1cc1ae34a889a3f143908a30514e985381cb0302047c435bb500673065023100ad816311effc7b939c5b1fb08078f5c13b6d82f9338853c6b2a6e73432c4e422817d642a087eba6798a22c54c8a4e70c023035eef43200e41db0e96c66a53f41bee2a38ce28c7c5c574b159557e2c0da9188b81696d9b5594593e68af63559c660770302047c435bb500683066023100fb46d40034a288b8717506a3a0573532212a32813c78deaa2abc07fdb9c129752959a3a98b76fe1ebe7e6dbef95d32f4023100ee41d7f71d99f837c3f226e214625ba96f7fb366196a0b2cb8b2572ce01b565078ac2471cc2e33d56e3d199564a0d8ef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fe8f26bc04d0bd5111f204d10b72587ed2a9d51b4e6565fa1901b7392facc405dbb901698c6cba17230035c73632968302304a185e2a305c0f792ce0378ca23919b91a3ed4708eac021f9bccc59946c801bc7e6a344658059c40165a9ee51a576a950302047c435bb50067306502306d987db99220baa7f757c5018f17c425f80908d0a54e9db5f284ad4ccbb7d0f78250fd3112746acf51ffd14eda627f7b023100fe78b4130c5b0aa03f993de1cd60824753b33d6bdfd860c3369750c7582d86246030be2be5ed6656f500e8a238c9dd7b0302047c435bb5006730650231009c2089ff4b088ac6008ee5e057a8225a0d01ca5a644198da8cf594c295981b8371ca07f9e47ffed3ab92dce6359faa1d023027a323e9cedc2ac82947b2f7b9ce0d27db98b11d63f33a0080f086d648d7dba93429708095ad252b9c4a63b678647aa80302047c435bb50067306502305e4e75c570f94bdc56d1f8e61bd22c9af3a6b95b99a16072694adbdce8d6d247cc9841fd63f4d972c9fa0ab1e922238c023100fc03d1ddda7175652006b73e15a6b8f82d1c800d3c2a7829c640a1ffea75a6348717c85d685ed87d206054da5971e5090302047c435bb50066306402307c9ee4bb68e803913bdd670f2503ecfb6983dc82dd6ebdabc21dd628947531312724238f6c02a8b03d037932af1d233a0230095ac2d9b82b051046ea227d1f1ea0ce50e1ecb1320bd4a1c871a7aeac119982bcf3b71ab48c7ebbc3a35be6e377c31f0302047c435bb5006730650231008c1136337da2b3e5e36d3568f77bc3defe2305422a1ef6cb201276975b010329c4884c31bb6568b1100e6175a2495bcb023071e8796f69a0ae1886130456b63aafe91a2322ed3a034eb28bac43fd9a37acc3ba848a5437d60fc45e402aee396eb3b30302047c435bb50066306402303ca7ee7431dba9507e79bc8c0755f1ef17b18b58fec627ae4d3e04d938648afd73e578aeed45a26afd9566ec88be22020230284f03440b4a2aaa737edab26891d655969f3cebf67c351d66ae6ad0dcca5b5a84b1cc5e82264d5ad4999ddfc69afda40302047c435bb500673065023100e4eff49a220a6bf542aa4917a3c586d1e65e2140e2a7d2ec3429cb8bf3e8e3a7ac9f6eef8d867d33d1dc999c08c1b66402307334f5f5a26647826dbe62f1f5bc01eef8e029abd84c23aea7d7458afdd3467c43e8d2f7d4e9ac060876a02bb906c3960302047c435bb500673065023100caddc93b13841faa466f1ebb9d16303430e35e457e2f097824e153528bedb3ff129e98326dad34bcbdba0bcfd88a35b20230068edc0f712fea4bbb8fa50123cbb7114ef9d19031bd786efa9e32612eee7ad7a0650a760d5c404692406fdc32e200080302047c435bb50066306402306b34b7110bc1dd8d0974948ff26aa3855d9d045a138aba2f4f1d4b96504f6b81d1af0bf500d298669633311e5a57e521023050fc52663befbf21f5d163d7f294e6da5bcc039669ddfd7593ca9b110f4fab32864fc8c59f3ad26096ab6413e82d66220302047c435bb500683066023100c8f0ebae589c4ddbba6a410a08c89a878f29fa93e12836ea6846d2c71440b2cb94fcd67f79c7406ea07c50cac3a82905023100e792ef1404803901b5b2cafe21b9f081da3a520c786f7634fd716296e8b6553b36a8e7328146dc659eb6885b886f65f70302047c435bb500673065023100b1300bce192c264da5b271cf08cebb65d4ebde834974bdf4ed4c3c2a9fc84394de83b21539c21764318de62de6f1bbf8023016898edcbdd5c03f161618c0a4a6a0c41656ab0a1e0b1c3b01665af7c3561ec4d99d3678dd18af055d17e39ce36e49350302047c435bb500673065023100ef95f931368224ba1165d0fe60e4b73f51a1d1378e19634913b3fbbaeef0a996e9245e19043b61a196ec23938c2e95b8023057cad22639518cacd7eb7ec0e3190cb5c406c2f197e3ca3b2b572c0e4515d535321b38138d4e48db2f50e128147bead60302047c435bb50066306402302448ad7e7a37f9a0e8cd2464031983c0ff9790d5009184fa08c5fec0b9c79794c4aeb0c993ee3f0b2315a0ea33f52dd9023078ee2c4bebe2a83e8016263ea6fcbef068072167d701e2f812824baac225026d6762ff08af341ab1d90fd39af13847cb0302047c435bb500673065023100c49cc2b03f18436b6a7bae69e120b5708ed4ebdd4a3733a50cab8ccaa69488718d30209868f54505afbd72138d7b571002303db873e5ae9990943eca141c6b0d5a42cc7f386db6f87aac934dbe8e7c791c75ae68828a11d736e609d79fd15ef511ab0302047c435bb5006730650230031a29430c92ae782a32b9c660153450019ae1e5e8365e9c2315db307b6f0c91d955b867b3ba8fc84b2318bd281a1fe9023100e20ee59da0dd99a7302fd27fa6e4a9235e670ccc45bfc56413b205b2e38438635a082193d7ff1428f0f48c38e993f28b0302047c435bb500683066023100969abf0cdcd97ce1c7c349a4477e1a3400dee4aa0de58794244f588e4356dfba032e8a3e9407d306412b1dfba2a58f220231008d6138a984271f958dccb76b9ec74349b929b37a4f048ac4c1c732026f7ae034628ddea2ccec3a208654d2f400a83af40302047c435bb500673065023100de8d3b413506536dff5d0e80d0b004e8c20dd7583eb4ff6762d66c33171f7f7aceeb96d504f299398b32456ff21ee69302300c1ac454c396f30b09794db12b38be06d3275f876f7d7b4c401cb7057fc9ce0eade4333e5d980450cfd20c0863a6510a0302047c435bb50067306502310092e8b6c182f53ae8737f3181c07221d277c9b2aa6742a21cec277d185d53ca814377d375e287447c7d5b657e2577c5910230370e446508e1dfcdf635e23c3a1f9698984bc902f31d149cfdc60a340e034e7af84fbfd1aa7bfb07f208a9eee880e2de0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230606c499bceec48aff0c536e4a6532bea1ccfad35b59d9e5af65791a8ce44c446d16fcbaa001b2b5214471f9c71dcf691023100ac038578d529d3554e533443e9fb8a9475c483f7fe227a517ff715731409bc1d8418c6186ff34076783a03892e0542910302047c435bb50066306402302d55a9cf1781857b009e81b020e13e4d9cd8db2061c84a37fb4c66018b2e62686b3a906cda471e88cbfa5c503b47cc8f0230169c822b845075b7df13366b97876388513af178596599c6bb4281540a09a0a2da42ccf4f855355d55cae689748acbc60302047c435bb500663064023003083cca4f3c6d3bdb7639e3aa49aacb58ff9bf0ff11253b4c3cd8ce67c7cd7f506a6191156999aab856d6c403bbfaf1023039467f05c5d93376d58bc59034b0860002a72c4caa502a4c56215f5fef9ed19b8f6a80d34668c726cf9a33a3770582fd0302047c435bb50066306402304cb901a4f0d7135d24861a6d433749e9f32b20c9dfa71894a3436d9c1836887d0877e1007495d32d49ba7afb1a080afc02307e6332980133774f72b622a735b5b463125b498c8769425602c4c2e07778b4e9ad9a244c7e4623800b456c6fd8a4add90302047c435bb50066306402305a10954fad230a6742f57f75769cf50219da10a73cc07fdd57bfee2e77de8bfe57169c42b99a3158537942eb96bac6dc023007a2e38225ba5d31b5815c12117ae1d3460035b35e48b6c28a63f305b4132355db3e9b2912a4bd84adf6da7d58d7f6df0302047c435bb500663064023038825c101fae99ad6752b08ddd69201c99c42fe3ae0fb37f27a574e2bb7ca920d1c920e4a5928702e5100a4b4388e3c902307729b542b0e0c71ea84bcd1be5010f713102a21ac0289ccccd2bb9f99dd8590effc786d96c7588952bbfc2fd4480a0ad0302047c435bb500673065023100a9e1480537ab6e603454126fc90e897415cab9f1c7d744ad9e301aab4a15ead22e05b2e35ed642e0a6e11852af991a3502306bfdf5df4e801d6b83ef21b04961fa85df441b822bc6ec47bba493c7e86d1cfa4683e587b50f243bb05925f6dff42c610302047c435bb500673065023041ef9d7adc684764a661d41265aceb35ebd3b75c285a10c3242c82a43a98da7cb28b46260b9d7874faf56c838e36d422023100eeedb4e2f05457db215336cdde508997dfb4ccfa166ee766dc153b853055684efd22e61bb02b34cf72d59a0b5ed4e4260302047c435bb500683066023100d4083c97c80c229f7ee9a134b6cceb2f60653ea659ce4f1426d270e6b16eed90f05b2ba2f30e91f01516171c7f35ae0a023100fb6af61523694b9d798c14a1d99e911a6c82108471d9a5a22397bd0f46bdc2a1d9623fd166e2e49722df97e87c2ded510302047c435bb5006630640230297eb5dc2d5697c42fafcc0c122010b4c12db850eab2493b2fce357f5ac73a53df8726c8759ba69fcb5cadca7f9d68a4023016b0b3131bc9676898fe7c81de7aa48174fd9222a8240cec5205c31968024329972028f4a6b3fc7bbfb15f76f79ce50e0302047c435bb500663064023022fdf3a67d1501a0e03e48b86bf4c61bdae084257d4925a152945b998df5e29549f7b65fae186b4bb4902db16bf0eabd02306d4bc530b608567ce2d90a2c3eaf1190661a8f4ba11b0b2ef7db0456b490a5c5131780c3b13e14a1e472d084b2b8a0900302047c435bb500673065023079b7f2e796612c33ab026e31919de7af5fa6811da0e490b319c2c90e1b2245dd98b82220b2129ae2495afdeab9005817023100fb3b2e8915f4ea9da4a3807feb99960a61d3cf54c351a1d5f64f8f9159b351e275deb55a75b261e75b739f9496e0cb490302047c435bb50066306402304061fb857f028c71c69d073d78d9000e85449dca6cbe9e96d6ab4780970f59ee7d9aca6a17525dd61bbc4c43d0813ae702301677fcb96b06ba0ead7e671744729bd636ae3468a4f3e3697c86949e21562cd7823e1897dc30fbae72bde28b747a09b50302047c435bb50066306402307bd8037a2bf5e2283bff51b2a98e7c453904936d06e47a38ac56a2d00a6cc0661efab078114c66ed05eb83ced49c930a0230209a711ba710c09fc7777825c8f132ac4acfb9776024eb7e093e88cdc42442cd53e469bcf1c4cb8446d7c69df7d2dce60302047c435bb50067306502302b391a08aacc02096d4bb9b8a981e5ddccb1d98c61861ac47068fd3f67576fe91cfeed981f45fed49a86fc0d4e6e2490023100ebf3a580c5eeb33e2f19b7fb7d4c69b9c4d86a287cf820dae472a8c1e972d5b13740c4dcdd805649928db6c54b03e4450302047c435bb500673065023100d1cc208f90eb9a9444b3d9a12883e90b6c5839871628df2b28c0b713a338b703b057df3e82f6d0a0a0f0220a19b87e8602301ecdc77cdda0213b532ef1d5a2be191a55a5054994d53d44c030e9a275bedc21824d0b563940172455f929d9e9ff23310302047c435bb500683066023100c6fbe3b100530cbb0e01c4e6685908c35aff9ea415e967c6562b56982dc8d3931e702b8593006738b21c91cf412b7abc02310080f672ce07f8f21ab62513606231a56eb04fa3ea183ebfbe096d1f7432e8a64404c79432f84be0bc2cca33b2dfed3f2d0302047c435bb500673065023100db5e0cf7ddfca03f099afc7d4eaac1b3500d02dde01efea3d8b753df4ed51d9193835f106b0e80c5329fa267e649202802300114842aff5314e78eef59da47eaf6863988b6001550096659b93aacfaaf2c68d9309ecbdf0b700bfd6413907f7e61440302047c435bb500673065023100fe024d57ced404131820604b5dbf9067d0c273f82fea58cc8725da8888e5830ea1d7479ef4083c70bcbb30fb4a5e8e2602300f77c9bd84d009b9f4aa8949e53c69d225c18dbe12ed6a0720a6009b418e013605cbf4ea1fc1c5fcbeff1d00ee9e5c8f0302047c435bb500673065023052fb09e81233ae176fe844130c34228ea7cfb2f937bad446f6a2f16f25a62ec19dd52c3cbbf081bc440faaaad070784c023100bda1e30b7e0ad96b0822f089c518bfd0fe7281fc88bb68f08ba18d39d8e14696618f4937ebf5a7f33048a8585c8ece0d0302047c435bb50067306502302733d9e96ef5297af1f5374fb52f453ba1ac2e71f294fa9b82365aee4f0af639b4efcd3ba05ade1de69dd91a0738086d023100d709cd877d8c705c16c7515a1ecc7984cc1d0ab8646546f285a15585f2a319c653df68f6ed7559dbd441540ef3c545e40302047c435bb500683066023100a4aaf5863d004d2fa192b05f13e75192ef651f2faf01edb877413e81f73b768b5655a5e9a5fe5625cec67cf735455e2e02310091d517615ed5c84c4314aec9dfc00cbf3d90da168d41951acbb76e5c49f6926a20e5d365c7e820ea831be92b7ad870740302047c435bb50067306502306a814d1cb545f0762462d3ed45109a4512f440d721dab0ca77e1859d90097ee339fdef1007c12184c136f2af9caee877023100f1d9abfd23f8ea51f537f62c3a9e0ad40b4d1deddc799cd9ea36f550c1295ba52706953e1d03285ba482de5dc6ceba1c0302047c435bb500673065023100e4263c3c0d1e5dd355fa2c4abcd51b033b1ab1e62931d600d4f005b02d16214d4944646a6599e7966b8b892092d048af02307ed6ede1c843debe173bcd32a12a5606f6a82eaa587a417b430c79c47b4fabb3c400a9822bd906bbc2bd9731879e93200302047c435bb500663064023002d57400e4ee1ad8a1ead4cd519a0bf2fd0c1e2fe2fe570d63cb1203414b6c841b5d176491c626a26494d59a329a085c02303d048bf830297d95763b474b2ff8fb671faec1df21d89a9cf6dfbfe89fee9dcc8135fc9c9d29ab58f56d48d25e4386350302047c435bb5006730650231008b97176b96bcb960e59a2634575a2769823d8ee873c4915f1c09ae63caba25b517f510d507ee7a4345af98a318e6177c02305283659bf45775ee984b1b03f749e7d0d0a8ef24cf03f70b1763aef9b3b0727952a64219f9b86aa7c482415b51fc0a770302047c435bb500663064023028b486a7f6fd79d21dd8c16b959d4fe2be9944339500ead42992869f3e6f47588b9623c23d626f1d35bed2729326d73402301ba0a6fa1fb50dc25bc479d26348305c6e4e7b201e85e146eaefbbe586eb2ebae093fed08984a24f5d5694ddc3eee1e40302047c435bb500683066023100c4423001a35fa4bdb48ff53656057554152295ccbac315359c5f5d18b5c4cd87339fe0dee4c4a4bbaa1ab9ed94dde8f6023100c3467034ea08c069453107f9894b244828e18cda2b32f80fa168b70cb6fed973159ab862684cb55ef5c85b4ead2171600302047c435bb500683066023100c2d2cc5fbee68847d58e2bfb2494348e63bb675fb11d6034437faa92afb890eebb0c2798034b71a31aafcb331c4c49cb023100acfc3d3f9c5ee2474c8e8f11012c32891f643b2e1bd7307f62bccf94cfd31f77365f41be200647fd1f141fac6df843a20302047c435bb5006630640230408436593366aba96e3550ec4fc2e6f377b0aceb455c59c7db10fe14ef4cda09b9c99a72d80994595f1d2bc8773a317b023031a883a3a962540277463f2916fb15eab104c6ab1e547750f83792eb5d6739b8b76dc5f3437bb7d927dcfc7ab4502bc90302047c435bb500673065023100d8e4a2ab31b57a19f06e554fb92afea729b760268a3507be35502864cd10ce04c6d0b0c5b939f4454171803c67f954170230501de4c609ab29ecb4ff6d318881c63e36933df33ef326e255d0817a320c5d66567ba91cf4b27c421b4a43eefb3f47d90302047c435bb500663064023060b5ba20c0415209653392821330995e15c18f8e034a92df3ca0bd3c3af6b8dc00ea52e4fc51e8846ea9f231162f7f4c023002e73a4281989ef348fb348a62704460526530d4eda4b5680f2df24d7dab1518f261cdb9751e2661606a2f7eb374a36a0302047c435bb500663064023011160b36c785602920d2f69d9dee1c892983e9afb1e527f590d34b0520c6e27c59f95a20f32c6cbeb19215908e9cdc6502306aff18015f155248ea885dfd397ed3f860ad354a4d06051d7f0d90a65c08f4740c742c76ddee5b133d518cece17d4f6a0302047c435bb500663064023067d0500b7efd62da49fef90fc378abe57825cf713fad6130be875a4d751716d3b0ba4755ed9d48cf8a57ba0f8cd3109b02304e1a16763bbf6b06e700553dca24335f617fa9a9f88e6a3de3d20e31af963ea4ef0f07aaecbc697c135f0307e06482ad0302047c435bb50066306402303524c2d2cf5962c2e92ad4f3a9651b7ffa95fea534aac17d4c48015a428f9f626f4c5e93c3dd8f1b32a62ac823b4a4a6023034aec4501ced8dd88982c740edb7ce0df3a00bdca37af020857883b4f359c65acb92fd99bc9f30e56e63b525b70a110e0302047c435bb500673065023100d0afdb51c054fa3fa0b7284dec8fcd8b40a34d7fb4ad49f6ba2f99a80ddab3234a2d450277cce26b362e6d8d0a7d904b02302e896dab952486f3824ae6f016c0632fa6bedba14eb1aae2dafc1cc339c9f2482a9dfe0292168149d505654872f61d630302047c435bb50066306402300e160c0bb3101ea70ab7f682bea05550bf2984ceb1867762b56735eca05aa4d7c071a891d1f3216320719951e5ba9e5402302e5efea0ee43aabcdea88ead0db0b29302b1cfa05dc702629161071a033653b222878f2b5b668856f43e212985c413fb0302047c435bb500683066023100da7289a0d258907b7850359e96fd1e2a9c8e09ddbb60626f61fbdf05bfb493b1df142b07d5971f0bc590810d187798ca023100981e4c8ef0bd77986fa3d081d8b28b4e8923a429e6a693242066eae354627ee2725bf813835a3b6bb3acf51f072244610302047c435bb500683066023100ad655c8da9d998d32261adc0574b515694e9f39b068df2170f75c7e9c5047508679af2ba67e169f191c9b0371e7fb7ac02310092085f0938737ecfa348681fc092ee0a7f8a1f569f2d1d8ac71c95a554f8179be7b2ae6475558e9e24ff065a2e0698e70302047c435bb500673065023064a1fcf65082344a03a9bee8924dbafa978a3b6d32339e01ec7d356b2852b72c773dcd4d5801d445828d7769694f4a7f023100ecf671ef5fd1de515b1a09806e43e12bc62fa8fc254faf59ec29324c3f74e2678a6ee60e9869c1daa6ebc402bc58b5740302047c435bb5006630640230756f87eee72c6c1f6e5f186867558b908d4dafa90e7f121286231438494478a8a7400938b75aadbe3874319024c3f6ac02300b0a3ccc0b50dd594d95ea2ba20ec372894e33c8f36477260c2791e7fbe379b79417fb63aaaaf41e96926693e869a9930302047c435bb500683066023100a16570f41fa7580f2311decc27959dc8640f1e94f272eb2dfa4f32b5c8393c7975124bbbc388db8fa1f94268c0360913023100ee2a9b194fb9509d616edfb70ec8dceeeb14ddd63ef3947deb42947af509c9352f305c37b213cdf03bec4d86497a70990302047c435bb500673065023100e0b379c9db7286d098eb31c976852890a1923890d05d6e11ee5c32a578a2909e66beb09560435e6c60549f3da119f12c0230389e3d79c9a8f42f91b5d181a6e4a35bef6bfc5a4630f5345848faaf0dc2c5d553c3010ba9f9a31bf307b66f78c4081e0302047c435bb500673065023100cddd9196f2740b587599e423a3d76a523cdd25e13993886a5fdfb570d078383a0e2befe7dedbe5ed476803d21116959002300cfe0d153c566be4d6bd20953731fafb926aea7f7675d015dbb4ef49f9038d82ed9f076181e33c5ed1f92df52bbca4c50302047c435bb5006730650230495727e3c78d8bd8b5964ed2289e3f3685ebc20e2d415c4dc9437f04016aa3fccb181b1b3f893a9014099d5e185503a8023100e5d7057db9190152214ba821a781ae02957ee077588f0d7515300f34d92825975dfbb26ffd1fc0d791becd44dede260d0302047c435bb500673065023100f0a3361a87396234f312ba381673355eb37a9deb0958f865a54949e4a1a131585bba8981a9c31a4a0078bd2e0ddf14350230695510e6eda5249340dae4c5e16b13a5e2db10aa7c849f8aeae51a78f1092844c050854c6b75eda4e8cad285f353bba80302047c435bb500683066023100b7de80700c5f36ccc434babfedeb3b46748de6074bc8a7b9c08b4a70734583002479e3918b022b424adeb99f15702562023100b95398327dfda0056a59eb29f80464e6cd7779ff86609b875a08563f25382ef0f6b32f8f4ceea7bc2c3af9acfa4d4d200302047c435bb500673065023054b1893b4d87d25ef677c4fcbab414f4db60ddc96655618dbb5f2edc6727cac0364226181fb0e17be40f042ffbbea13f023100813f567c983365681e0ca9e6dc292a57c7d3dda0113c7221b02dfff34d863f4b274ee5057d1f1a07707aa775e30675310302047c435bb500683066023100899d47d6a82fead236dd73d66a1f61060a2934e816e78c7e540d853f8ec2a4859a479185a7ba0a46feed017711dbd987023100f461420731f42a2d8a576faa218d394e661fc6a4bc02cd08fe2f63b115f16851bc094885cb8ac764109b11ab14cd274f0302047c435bb500673065023058da9354a908d9feda9e860d7c5d147b2770b767278ab44813e7dd674a294705f54040f200ed01b8ae3cb81d6844fa3c023100ef1862ccd8094a1c59604bd56cda15d2295583cdb64de159100aebe247ce28486849f0a297853d8146932fd41a30ff2f0302047c435bb500673065023100f6ac0a250ea23a2d6918d79cc5059daa3f90bab2aae9ae3469ea0caa7f2555857a11284f0bda3ab471006cd4cf7ef00c023074d82402468ecd55bf95bb67196e9d48a1e21db3d074becef9f42a3385bbd5238e9eb1f64ed141bc1378d70ef90fc2f80302047c435bb5006630640230649f659444ee2c95ea04d4e635a6f688a1327680e704e186a0c6f5803e300a261849b9584576b4c8b447fd9152614472023011bcfc32a7ea2e8737e8d6b6925615bbdb38de364b278d13e39f5393b532eb08c2bd1f949b4b1c889e4cebe74c2380c10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d907ca9586eb6b588bf0c3b5c3517b7005ebe310d75aa71573997bbf413ae6f01d60e163af12531edb32fa3c62f3eb24023100f9d9af39c1a9325ba53deabce24369ea9b7f17b20c63577c256b0b1c55d665e1b6588f36ed30fd3d4c4a037938ae49550302047c435bb50066306402306cdf20e2bc209088f3f5f591f06c64794bd34ed781b4eaaaea596bc71311ecb79f7c8a99466a577e2f11b068956208b0023001039505426d6b1a8f692ec3aedba310dd55351748d11dc8cc8b45ef16970529907146ff39c2e8daeca252d703d72bb90302047c435bb500683066023100a62e9e7f4ab1b2bb6ff0aafd4216d6d46b59bf9de6623fff3e823ece80460a89a532434bc5126ee78f3fb8997899b2e4023100921f1ef74530388e1e907df0bf51eed770833a49a419c29c56b6b8a1a26b423f1539ae2af50361474e6e203e1ae1a8100302047c435bb500683066023100a790190430796a00f5dd6f4ed9e7288316f32b8de61ca78587ffb07afcb43ddbcd53b59dc0aed54d480f934f1d4a7fa0023100826498518f44b0823b86eb1bf938d6d885a6b7ffbe38a29918f39a6c431c4eedea5026bb50907342663c72640357e9f80302047c435bb500663064023024fb7e49658358c06566d1b32e378462d59966b51ebe33e8adac1f19471377053f8c75a0f8212e46fd346099e1c5be110230307b2174aff19a4812fccc5611abb706b3cfadf36aa9025d9d908a927112417a5be3ce201cd8e9cd4261b47631b3b9810302047c435bb5006730650230747f6237963d0f0f56be47c0245588c52983f2ce349dd7e0dac3e0d8da26fd0bd5d73032794f27c0edc69044bc56f66b023100b40e71a01d9e819ba4d77dd715889a202e0a3b5ae17cbeb1ffc031552a92504eb78694f3b166c34c613ba1863a9568350302047c435bb500663064023030203b4da6c45714ae54c9127273c9518dfb63a868f0f1b15c96d3514338cea8e79638a77597d72704e28fed959306040230072b37ca87fcb2f6b04a0a99c9d5b2549cdb9604605cf1601e84633602fc84fa20424f88361feefcdaf37669756c93250302047c435bb50066306402302bf4a4b3c0957c381d11225b389d405ab753cded6ddfde3369311de49430b6cd4f3d979a9421b164461a0d1dbb62d8e502304eb05a24cd7469de0f74f5b6c9168429921bd614550e8bef9e1e791a3a4572a98713e5f9e9bc2ac790a7306b03dbb28a0302047c435bb500673065023100a45b698bac485f5d8e949b2f873a41b451239a4a769184e09ee11759eec89f84b1e2647a8a0d93db83774deacc82743502301456ad876cb0a3789c54e6642a98fb9dd87c6411f358f537ded5601b57dd907c86fca2c1b9aca9da8547626dc8b71d950302047c435bb500663064023044984ad65adc58fa5ef6c5ada772a07afe066b350e51a284ce5be6fa054337e534d7510745707f4eb2075dad7ac41eb302302d737362f9b5df31fbb3a13a4d0584c7794de8d3fe9147fe1e5040bc6dd26cf16fe6e21e7bc5b6294464ba3d7cf573120302047c435bb5006730650230795b450a38dad62db959b521c27bbcadce8b4483dc55ac43a6c7c91fc59bcc0797d632581e4fe8fe3151a50d1d438d3f023100c215de7d42ab3b42b499d33d39e7dbd2551fb614c43e27c4449b54d0f8afff00a60543264f4eecb89cf303225827543f0302047c435bb50067306502301d12505474594715daeffaf91be9d14343d6f5dcd1d66dc63029cca283ae8bad471489c9cd6eefbe9564381c009e6d82023100f906cf00cb9232190be16f50a654d376b3035a92faea5572e11395ea69fecfecb3fb58a9facf3ab1619312089be0d0f40302047c435bb500673065023100e584042e88bb58bef5b53d22cec8cce938f721d5826c80bc1022cc8734bb22002e50390167188bc59ef8c7f6813f1c3102306f85af72ebbcde1f2e62896e9daea0c47608e59a24c7207e6310fb9bd95299537e3c7e7c6ed622d8ac2e565cd03f78ad0302047c435bb50067306502310098cd42fa3a1c6142750f96887299b429763c192bfa11068914cfd945f60ccc780639f6a699d2cae5c937b2b7a1d05e9d02303a20494bea7dd2240ad29bd162ed743f57da0615c4c6cb9d98b1cdb1c5436ac0ff0a521af0550963ccc005d7658eca1c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d7fc373972b26cab79fe02a3394274020a3e56d0f01ae550ebc9773ed8a3ad3065804efcc31886ff55af403b84c5da13023100ba78966a9f20666e1dc9e2a56d182a64279dd220687f4259ad5eb8c30eeb551421eba2b2f480010a68a4737fc99c214c0302047c435bb500673065023100acc2af9a7c4449952a97f81ec00c2e9d3c8cd4c93dbef357142c4dbd118f9f2f86fddcf3610ad0b55c271d17dee146a60230613ebc461dacc2ed4ad7a08a1aa18a767b3fccc3c0059417feb8e5e37dfd21dd36dbda3a81f27996c3b9b1846f119b790302047c435bb500673065023100a34be36015fd57f0b055ca8ce6802d762afb20ddc119bc68a0f44339e4b08a4241f41b9827e1c52d931aebcc3a17463f023017053edd43667db153baac0424a310584b79b4e64ce9d3ca32b7ae7292c0f31ed161ad6d6c5d1e03bc305aa9640518f90302047c435bb5006730650230138290b6e8418c2b1052e2bd74b223afd3c9f896ba1a96d8b377fbc3dbf6cbba0190422ddbee18236b0a9616262dffe9023100e6ca3209e4c5cb5ecc3d6e873cc1c2563c0a65316935e9f21541efa8de83bdcab5d21a835e85b5ad73c4731ac3473fba0302047c435bb5006730650231009d7f8178c5dffb1b1207cf37976e07e88bf50cfd4d468683090dddab65c3600996c66c7f77ea028846cf3a4604f5188502304d704ec5a39081ad71acc41baf9f1c176effb52b6609c8665fe3a05ee6fd96a3d9faa00a0c9e8a3f730f0a87f4a781490302047c435bb500673065023100c7040bf5f02bf3b9810945d68b2d4f9181c12204a003b2c3a3c2ce1b6d47d8e44e5e9d59b942cd79b34e24f1e9573774023050fee6f02ffc85a7ec8d32a2bb772df8c4b1ca601aea0e624841a471e9a1273552900da8825a4c4ea3a7e82d6a7b8b8a0302047c435bb500673065023100ac80907ae99fac4e07506b3c6f8498837afcc679289d2f56bfb9e797b45112dbd718bf5e3bb89c4c46e7cee17f8d9654023076ef87de552d6153f97c6419960dbe856c8a50c958ec506d6b21197474536bca13bba8c7db8f4ad7e0a71ff9bc31ce040302047c435bb50066306402300874b8b5b42d547400ecefd1b078ea83034e6584d0aa305428a4c29c41b53d7aeb5cb6a08a890650cb581c7fdf9bb7e502307ffb3f76da701ac2534c4269eb77da360c69a51d14a72bab31e3b9c73adab54120765a00729c79e9401b620cb5e557950302047c435bb500673065023100a4b3b177108d0e834568c201791e04cad26b12f74ce3fe94c8d0b29c79a80fb49ab843491a8929fcfe47976175439c2502301c6be28dcb60440d8ee0a78922f84d65e724f1ec3fe89b2889161bac3d6b2a069e01fb2f19563877207efc52f306b9ce0302047c435bb50068306602310080247f21348eb82ab1aced9b6fb73724a96d9faf3285fbc99e2f61dab9b0368d0adc307af52b0b54288b0435e19ca5a6023100e8984d680f7c469b5937fb09296e60243fd107c0003661bac59b2a6c9cb1a15d165ea1e12e4b4252a85e48406a8ea0d40302047c435bb500683066023100d175bbb7028ce08423c782304920be7a89ef015d26ec3483ff6a440980e6c7442e7cc31dce1f62ee9caac78a4bf41b5e023100acba2d8bb790c0e850ec9f9bb2d9218effa800cb95328b7d90765aa3a2e0380874643f053f3792399fb3f11a484a5e660302047c435bb5006730650230724af5e0ef559355babd46c39e7e3ad404967e297f1a0c81cbed929859862e8b853d69dec465dd2476de2262184b5f7c02310099e1facdee16f853c8193a4f56a4544647a480e7e202de8388c2a7051477edc43194b524da65bb02fd903a4900b48e7f0302047c435bb500663064023062806cad123a13b045332a4c72cad6e3b386b9643773e2faa812f45716c350c3409d43b5328a464c2f498b29ebe7e8dd02305aeebb8133abcf6bdb8c45838999cdcb1f0f33dd080dec04ca8230348ba38317ff168b5655b2e97b6a0250f343739cf00302047c435bb500683066023100df2ca5d032c4d6822696cf543678a44ebb2b75170ccf46c5a32f78f630301c4cb0c6d2104ae54dd6ee54723fe135452d023100f33ffcf32f20fed1f2b733b262bc50eaa1964097dec322a4c049304738f4231437cea5f2aa3bbe54c04a3dfaf3960b740302047c435bb50066306402303e9d94682322300336565ae7305f9e1511ad1e264864feda88273c78bdb8213d0a8e25c466a97e8b09d25ac5e601be4d02301a4596be27a94696192c0f3fb56431e9570c2333a281fb79a1e976ec79d030d18bf36dace1069cb114430d13410b5cf70302047c435bb500673065023100a9c5ca9bb6375ba09df10a0bc569d59760c6bb84e611b04705640be87f5d6463ba4fe24fb6bacc1f6b5f1910e67863eb023028eab2c23f156058fe4417460175230e97c8d1cc296b2a2da435fed0da3888e1be7fe99c80955fe5376647ac7743dd190302047c435bb5006730650230049225d1746c7209d3291b2011f62d8fa8a85439a19932d065844aa74f73633799b0b845265b309518e57f5e13512f01023100bf73abd8e9125b31fa983069993d7c5dc09491cc680f7b88a83b5c7ad828d58d98d9d2acf14fcad6e3255116ae6216c30302047c435bb500673065023100fd60d0f535c83c42b7477d5a2d64f8bcf83c85026dcefcdddab4462baa1bacd7f3df0190f9d2c5288e1534a983fad4f502302e65cae93f59f2f6ffad40eddea265d101f3882b027aa0f18a2aca380797b16fc749447e456d1a095147af76f296f1dc0302047c435bb500673065023100e87457b8e53c3417523978fc4d30e61c84cea3e84f251ec9034ecfbe0765cf3d38a9923696f16cad94ad44ab3ca52c8502306c322e0f5a4643e9278f83511c9c9edfa9be620b2e2491c43c2acd2260b37c6cd46a0104594cf1211570c0f017ed5c120302047c435bb50066306402302c542324c65d112044e1ec1a18b28e1e8e9cf9dc9198a347d8a06bb5fa319bbf8adf1130272df0b01ba3f85c4345b8b0023063f7c4703b8d62cb6142afc78db27fc96eb96b6d592df22c80803a68ffc31f11a0c06260a4038002291f1778b52003920302047c435bb50067306502300261c7a170f728192eb0329b6ff42e63aeeda7dd3459bfa95c1f3d7366479736a2d279a40e316b14699c1cf21bc5782302310097cc6dd6e12fb6804319b03a1b9adad32e29a1de00f6563d732b3eb9a069cf6aefb49d01930233f17cedfda0cb418d9b0302047c435bb5006730650231008910aa726a7c398bf9340f87f6e6d7a81b7824d29b59e0d4642975d852e12e849920239c7e63b7c3086387c8be17363a023073962f59806a9836b1dbbd7e16da434204c21b59ced14988629cdf5bd0b599c4450680817d1354a293ecb3dfdf2d48f50302047c435bb500663064023030f1f1a82e19d11f76bffd255e6c3addd4e6cc66970c5667c0d905d79be56c6c60d457c6133481dd115ddcfad08b1f8102305d855e1385860f585cfa50d63f979d57f25bc347fef86c8693bb6f128de55d3d812f8a3b011942ecb0c5f7b4efd7aee00302047c435bb500683066023100fb911a0e829f28a1f8bbb0fb56f80fc306ebbf3284d9e683f9175175e3b442453039b645e61da90743ccc5bdad067c9b023100da3734582cb3815febeec8181f8f60bdf83d7a34a6c5ba179cf19b948f180928695ef131bedf545dce0a7b50eaae616f0302047c435bb50067306502310088a3c798102d2adfe20963bfaaea335abda5417cfb7b4727d21228da99469d774cbd648c4668f13c070efdb5da1ec166023053eab7bd2dbbbf17bce90f1af52dc3523027223a0addabf88cda4d45b7235bdfa72fa8dac9c65091bb94cc8d3c84de6d0302047c435bb5006830660231008e39f4bbd810559fccd0c415f20fd3cb0bb4f50fb46b1f3d8f3942d784ac3150a07be7c7cffbb94d1bf784be5b2cadda023100c2009f36c7bacccd5ade03f740277d4219fbb2af030cef1f5a5a60f71ed6a601358ec674a62489316806243e6b62c85a0302047c435bb500673065023033b6e9010ef195339aa6ab0fa984263e3f3537bc5cbf7a34a216da5db49039f8cbc82d8be09f68d2b8055909bf566e150231009856ddae374676d418359afa80fc80bdf44cc01b5820338eae92b19e57f2d1ade470a754c5e83482679d283a7d439a830302047c435bb50068306602310083554d6b2e8b696c7e90fb3fd0d63ddf560a8191ccb5fc5e4edaf98460dde94dbe236acb7e1966e68023e62dd37cf089023100f0f1cc6b090bdc3e7958b8a24fe9883492c8e95837ed073f96a6b644bb43bb02c815cc790fe81521f16070a616e693590302047c435bb50066306402304beea9f2eefd2dbf9656990214c3bde42cdf3ccd8c3ddc614fe2a8b106d7d207d529834d3ddee21275fcf61f598b269202306e93c19c87ac02002a2a0eab3f337f196e1a60dfcdb8de51ee1055b7d71618f7744fb52d0437d2ad469985ac907679a60302047c435bb500673065023100afec92938bfa59da54ed170050d9ca05b42eeb3f1fac1f2700dd7fc36df502b1a7ed16f45bc323405b67ca62d55557ff0230325c7367b60d01a589daf94eba3ed1255dac3d4a4e9a69d0b3b4d13574a9cfe24327879c675168f4b840f44db44f15b30302047c435bb500663064023001c556c6533796e816af31da0c9325b6c79b848d11550416ec7897ac2ac2617c64a6c665a34ca7e32a6e5b88fdd1771a02305a80bea9dbadfe6b008f3ac87548a69617e5ad341731ebc9f727f2f82af000c6a4268871f8712310ec49d048c51eb7730302047c435bb5006730650231009fe9ffc615c9b5e855258a4e269f366e3077b0e6a538aff5f23547781d14860064706d15675d51bf515a3f9bb96ff26c02301c68f224904994a9a24e9af13ee4308aaa5528d8d8e6e9f527db8ee5a19f7ad05b0f6fc3b9b870142aa6d2098aa770900302047c435bb500683066023100e72b9afb2eb27911d2e9b30bd0d36fc839fca3f442f3c898e76d59a51771018f200e9b83298539bb14c3d9b76f6ed906023100f273cd89a72c554cdad20d1a82888d646a7677aade18af550194bcca88751347d87493211b406ffe042ef02b23008ce50302047c435bb500683066023100bd046759502a298fcf366e7a694b37b5e3a22bcc9a75b6522925839ca9af3ce04b4e550293ee2be7bb48a6bcbf5ad358023100a9239bffc6ad98cfb8561752a9a132de196794b44c49ad26a29576773f166b54194a7eb6b0ab775a3c00756ef83718f70302047c435bb500683066023100b0c4771db54355e54cddac7f505b1175ec61ce59bac858636d704321415f25c99e4abedf51f50b5e5914d77d97b76146023100de28cb696ddd5723ae1ab494c3eccc71e62ad5bcffeb3caffb807293f00087e4ab7213b254895b389579809a88c847280302047c435bb500673065023077d9ad1e03d6bc3073f0b31f7faacf28224bf3c0fef9d3a85d8322e032aecab3c02e34f09111ad726a3e34cddf2ef8c3023100ba2c19bc71137b9cb10659fe9ee327239d07891221968da3afd51c524e97ce7a4e3bca9fb68fefc171c4445ee2c84dec0302047c435bb500673065023100e512b1ee2ea673ead0372c6435e5baf6c1d7bf66a5810b3f9abe9c9af5850c8ce88b3d1dd207def49a481bb35bf37cc302301c6c6021c3057eb22a662baa59fb778fd7bc1ba6c0a52091d5ea4c68afbb609b36ecc053a5194f70b4e83cfd6aefeec20302047c435bb5006730650231009407e62192e890b06514550b4ec850fc7e421205b44908177f92a9f44c68dbd1e2cdf3f220c7e9793783196131af5528023035488918f752553ec9aca7a41e7cb8cd579f26817faad836b8e240ec7930ef75cd85e3928016b9a6417d96b2b33e59c20302047c435bb5006730650231008c39f6269f44241aa2b54703b6bde0d365a9922ec2303e58659aa2477d9c2abecf54c546f9de1ad781e22b8974b0d07402304a50f78858c94365a5c88b074d0fe3bff804e811d01df6f1a9685ece300ebc9f0d2476f186f6c71458e070937f0b981d0302047c435bb500673065023100a3690adc14b5db4d247a577e5975e6295c3311d9d7d001a5efde300b3eb807b2e789d8173acaa4f1186f75b6c86f3b6102300a084b5cc30eb5127b7fe525c4972d096fcdfc7c2d8164bc2cd146b4e7485baafca186136779c1f9f3c010a03c35e00d0302047c435bb500673065023045b58cdc5728fb13b2d242445177a6fc4af7eb5c423efb61b43ad3c6fd479c8463760d959cf0d3ef4b875ae222be221e023100afd45c4b444da4c85819b948d735272b3fb61eec5395e044f554216a43c6499119c10a50c9efa99c5e0612dab63ac3c20302047c435bb50068306602310086de4e64704db1803f34218df2251a944cb50c09bdaa822a74256f9943bcc94ba86aa170d5f234740b8aac626f9d3b9f0231009554eb188f2dac282ed75b8722ae666806b18f4491f1abff041f22eb0d0ff3abc35a5b02e223e28de59f10ea08f333ad0302047c435bb500673065023100c6f47e6aad52abeb8bc7e60bc283a0992f4dd707085164c0e4d958ea7973b12acb54dc008d38a96df04e680335b96bd702306cb0438a00633682a1077e393653ca15ac14f2b420c49dc9e8d4edebd52df821769723dbe865147489144691af84fe810302047c435bb50067306502307f94e2a50d2f9f84db7ad51dfe3f281434baeb888c79b6436037cd1d9a92a4834a010ae094ae0f669f2a1282d3eadc8e023100b590b453a5ddccc11cd73a1ec5f75e38a8488419e761fb90150d409f5165bad0285472e04d845ef96696bcc2777bd4f80302047c435bb500683066023100d0ad1818aa3f6e67f283a2dfb153262680f99d7090d54fb97132f37caca922f6636a655ec792c9bbafa79f1bba1726e7023100a912e9c28f522d5b4aecf244be5189998ea4ab1133aba15763ae4a10ba4c2cc00cb394c7955a63e12edeca2c96a966060302047c435bb500683066023100cd8e2c0ca99a036ef9861703b8ea93d09dfe724098efd3c13088d6f094ed607b9622b0274183b578276776edc2273c36023100877087abd407e014c2de3a2c1f9f0de7dcac085c3e3c27158542f71479986fe5f7aed626967841a3bdbc6d31a592ffd70302047c435bb50066306402304b9b7baf0b9d4ac649abb47b127de670a62e3c59a8cbc8c9e5a84b6cc17f0044641e568a0f60f60c435b5f76e432392d0230078d1de3e48d83a16dc65f8e9d4a3e274ff95ff5dc76e849a3f8b9747f21d37034ccee79a2078413c82de9b6f0ab05270302047c435bb50066306402300a32f75659458770f3643f2c3fb1bf3934d7fcde378b3018be9a392e4c9e624fd2e06b76ad12e3ef580da8abdda3f350023009921d109da914709b18b13523389614008eb8b2cb856ed3e91dd98f43f199389f493807c605d620b4fed089444a6c3c0302047c435bb5006630640230491e1185b9749ec8b69131aa8803ea5b0052c547165302c71e034b1271842eebe78b6f0af2d75007bbc9739c0aa674260230256489c598d82fc5dbd22ea7cb37ed40d7d0c4c488efba97670ca94de5acdc748175de036c57cf6e2ca4214fb35d5bf70302047c435bb50067306502304daec12d69b027bca1ae57f44d15dfe033749e20571a4ba7acc6310899e2f2f577c22aafed94a607198b137de6b4bbba023100dc7c0a8776178a3707d7391d7cac3770945525559b21668d6837c469f8621f399c4057a0e77b40686a778070c16e44b60302047c435bb5006730650230269f73930cf686189c24edccb79972997579939c059974eee466096e11523f50e75a715cd0e42cbb9ef106f751e233f0023100ae211f8ecc6d57ff008f45273e16b22043841d4024fd09999d1e1fde146f5027af7a23ca5af5402781b53dfb077db40a0302047c435bb5006830660231008cc38538f2c57be2aeed502a86cfc8635623d698b8088abd208fe3b82f20ff0ed415f9a683ac85f52e46b720a7af1ea9023100d3610d68d284e03bc641d13d072817b976e364833becccab9ec1706865da4557bb56652f6c135b3ba0c4055f60454ecc0302047c435bb5006730650230723dedeb41045e3a7f7181a479f250ef1467c5a49a7b984f8173d8f7606c4d1a79176a996280a11d9ab2eb07699d616a023100fed4be89106e7e2fb5e6025f8a7f493267c459a546377acb897dbd9f7c3ecc34d25c377304d563f3eee1c4529098f1f60302047c435bb50067306502310097370408e2811a03751c3b61769ff311f1df0ff6642e2ba591e088d0a79fa02ff56104de4ab77152fedb32d45af2ea4002305aeb219068a3cd081f8165b5685537ac1bb8b6eaf8cc5929a8e45647f36a09b03f2ac9b63025be87956ade164482ad040302047c435bb500673065023078473aea7646f7323611cc37c74b59ea2b9d069d45f565dd5bc75c181c18b45f0804bfef7b50f161350af038c5338671023100ef8cbff5c53d2516527b5e250497bc29b7def5ed8e57399ca95fba75ce334dc1401cc06d2dbfa9329820241187cf47d10302047c435bb50067306502310093e03507244b2e1056d9457a9255e0c70d2bd0b88f04371876e656016a98e7c7138214b4098a9531d2022d30666ef12202301b3d219ec8afbfda0b796a32167ace738c0c890e0f6529fe0f821e1ef22dbacc18eed42eee26f0684d0c4c4a484f80890302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303fe76b331f776606748311c3ca7638ddad7d996fb8a9c9b8b9447280929155a46317c900f6f0c65605ea2b72121e41b202300b1835696f701bd8d1fe93d5972b3f408d2e3e33965691b5c1c1bf9674bfb28090104ae2d962a89a86a245d67c37f8650302047c435bb5006630640230317fa8792029acfc540aba72623d0419ad8de8e1b762c2a95681ec7696b4c48a1b66d905d7f701bcee9109847104564c0230094c0b51c26702ef852c4ce61c4d6f4e57874eb4f18d6879e86247f530354747733f94ed115012c35170e91a7679a9100302047c435bb5006830660231009ba5b4fab877f0148a116f38dc6da3a8465d79fa6c4e3521dc1dfe81d314633ebf1732a33fb7dffdf7e3842f99cd5bcb023100e4a1f908968023bfbd2cb4e0bbbbcc4ad609b102351972081ccc3ab706c32bd9609e1b1ac87bdf374eec2b634f5ad41e0302047c435bb50067306502300cb69cc218c41fa8c188b933f125ce8e4e00585192f9d1d1b3c95df511e72966f51932593cb7b2a0d81dd63ef32d0533023100c8bb59484fe1a63e0393f7014fd1d2b758b44817cb866a754aa3115f5abdcbb191efcf06e73be946a45d7bdab0db59c70302047c435bb5006730650230489bd701559580ebdb7b22fe0ee5d1bc20d0c02e50ad0553aa5d3b34fce01adef3ac12b1fa3ac33c593d3a89016d9bd6023100d9e381032c709a48a6bb54220f7a90b23e250baad0c0331efb2d11d67e758b3c38a898cdf109d1c1a5937a7f745e83030302047c435bb500673065023100fb49c73d5ceb1455dafef32a8705ea77ff987c6d39d24577237e3ab1060b71b1da83dfe2ab4e16464737499e227a46f6023050a23e32461a1b426aeeba09736d082173a105bda1b38c7c2a122b1c0aea98a311a75468e46b62b167bae8a9e7dd041c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303f34fd76f8ffa6c0374ea58de2e67603ee6b44e9ab3f38ca2299513eeef352ed19293a7beb6e83a919311e8aa0078f00023100cd30ec393f781da93b8ac52527a303f7255435acf3c2699707db6ce7b2dd9a4cd778c7149cbaa3dba8d4103a4da211ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023007f215702574eab746e5fae932dc096057c0c2579be5c5d22fc106c2e996c3f1ab14e3a853748dabe225632b889407bf0230797b18116a5b1e5fd20dbba8e0afb229b87ae5c93087a6a137b77c0bb2c5db2db4ff2a33d1bb2ed44bea23b250867ebf0302047c435bb5006730650230719933704e7f34548368e03b127742e42a7e785081b5915a488dbd13148a83c9712764c53f91ccc5a60018967f8ffcfc023100e469f689422ce7b423fcff40dcb14857ee258531578cc028077360d79f389e8add12bbd51ea71e1902c47764b3663ffd0302047c435bb50067306502303a7b02459b92b16fb6ff0e99f12c6224e4678206ff1dc21fc0672dacb009d349bdad842ed1c7e5832bf177e7b79cb9fa023100f364b00e57dcdcc12bbca098958d985c33c5a54d52416995fbe88fcca74c116bfd0bb5da0228cd629eeef5883f2e34bc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300175c112c48a84f6661ca61bd8dd4cc5e2f5574591357510955b7acec67ec01e8a590b0c425a9e41cfa679a10d7955a602301eb611613ada4bfec802a0fc5bb509e53ad6185600cc6ea8271d8dc7ce028297ce40ca7beb3db14c39e183f9767c91380302047c435bb500673065023100d03c44d3563ac27dd27ed2a961f6f0287f91acb66d6a6c52f933e0a1b836ae6ee6f5496ee46550380dbed7f6cc3f1f83023020bd60347e2b65fb8ed7cc9be95223b25ad765e8fba3965f2d0b397e494e2c380fc3d3ecb908543107e9a50b390885f90302047c435bb50067306502305c888ca958f8deb3e5f755355357e91f6ffb628ca2e59af60ee42a024a7498199b6af0401e1f8bada8edd262d7f58a9d02310095004f9cf71dabc8b6392ee9f130cdf8c7e9948b381e6a13e3bb01a8be0a4af231c9127d3ac94e393c02fda344e4306f0302047c435bb5006730650231009b51789ec89ed8864061f3f217d9047d2b432bac613371e7f2b2b6d16fa8ba95c07a9a136ccbbf63da6db698b087c88602302c952757198805e6f8e95b9815873946730e7f02f666ca1efe37fffc9de05e56c46fdd5562c629d4ee2c13def434e1fc0302047c435bb500683066023100b646ac97a5df775316b097d7c56f95cc8d821e9071de9db65c86cd74687b15a15eb8d258508538400cf4ccf74f5c3e23023100b2121e111d7ef3369e667387ebe7f720c33723838b63921f82aea50d78d4a01ad5f4afd681a3ad6a4e3e75fb0a6b39910302047c435bb50067306502305aff2344eef22b623c893997ca049491ca4c4bc9672051d48f639d31583f3d73b6bc363c8740777acda508dd6ac22d46023100d392f6d134b3068ba8890cc20ef1a50c4660c9da4141601dc79f1d984e99dd227e48eeea36efecbce8ee80916d4e282f0302047c435bb500673065023041f733e644154dab226090558e3df39be38f1e7211adda862c60022a0b3eec26bdc379406756e89dcc1268198e5cca1e023100f52cb59f87f355d34bec056177b0e7389c6c779fc945164bf6eab31cce2d19b001276a3a99c167136fdb20c6ad80d38f0302047c435bb500683066023100ac2ce6aaa6c078fed3eec46fb860e1e724715a8faec940544b7830c9e46d37b6f809bc11635e1edb572a089f6518e2d6023100b0e106d8f19f54a2c9e9ec7a03f672de1a380347cbfa4b50a11d6bfe5cfe0ea09502073b1d7a477d51042cc2605d2bd40302047c435bb500683066023100c978f10bbd3a6660d7d10bf26065acbd1fa09d664f72dbbde17669c7883cab0d5fc089e095aefd1e9d5faa9e1839ef64023100d73a8f77bdae99f5af7d27c89dd02b10a1939aa392347e39bcc1ca95d8c1bb7cee82517f89f088bb5b53d918d5514f0b0302047c435bb500673065023079794fa1c63c3de099a72c147d20f5f3cb8a35071f0d3fd9fba143d5850724a8bab025151e7dd90dc0133920d1c1ed72023100c0675356e75f4df549ac66233dcc1cc7fa8fa271b9caf94d237f95436c98496f58407da390759d051fb78ec8897dac570302047c435bb50066306402304494dcf11e80cd416b301fd7b03b4fc8aaf980b70a15aab03524da27ac52b4c3752e41b505729d3678fdefff8c1bedc80230507d4a85c412166070e1aa2b884c9e4a3c6e0395f0417aa5cfba29569956ec49d4f251f73ea39a9246ad190ca08db5fd0302047c435bb50067306502307870e44af9a2e80621be9bec019c7e91d44b587f95d07a60e56e4400b15fa5e25f193b54eaab30247635732f4b72a8a5023100ee9f1cc32ef4d2459556b8b48750f1a354602dd8c68fe9e2bf36ddf5f667fd82dff9e9d61a64760b056479eb1b2ddc440302047c435bb5006630640230260d94063b5953b0f1d59bac9e20aba5652bc8bb5aebdb1746682d4bb6b14f84e3957d1871ad34d48aef64069d5c40d702304f2c054dba1c81c6760685d85dfe52a8077a39e04c691e6ddd2dacf2031ac3faacc8822598a8a845c1af552d9a000f190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ebdbb912c12cf6fcf28cd6f26401b4930708639d0e04aa78f5d8acc6a96222fa14c799c5c2d1965e0ac6333ed1c82ea20231009ce3eaab0ac952c5881743f7cc2c4cd146ae28517d246ae62f1fd4e360f0e524befa462ae073dcb2e7e98f9d6112f00e0302047c435bb5006730650231009eff71174c1b882e180e6edbabd410aaa827f21c8e3644a69ba2e097cf43b21724a1894ffb65c7030e9cf02fbb1dd3e00230357ad84d7c17231160267173a056a0d8b875936efffc49aa9a4d70f4933d06f8aa2778c578861562a54675b65b643b560302047c435bb500663064023057fb4e89327bf739416b86e7e7f1c3761252b4bbdb5a80a518266ee71d32af9c2ad94affb6e31cacd0b21759fb3ba01e0230499fea1aefff0dab1e992d4aa82b0b2d75f6b830e5d38ef6c9c9e3dc0bc0d4986d845aefff82af488980908180cb933f0302047c435bb5006830660231009f98ca97c23aafb50ab892da0cb6d1050aa690aa8199ec3ea1a24e465f2bc8cd0b525ced124bdd92bdbebab50d29ed970231008d4762dca7232f39d4a3de8b8cc2272bd04241883e0a387b7e70911087d92ce72ab92efd7602860416ecd7570fafd5e00302047c435bb500673065023100b6081826808345e602b9f86cb22752a2d42fa2255c1c4230625fc8c35986ab6081448a9c79f9b8223203d0f697d945b502307173d329818e2fc905afb7419b7022b798f0bc31b09456222208a9d6fdf4302eec678dea03c03be35b0714d4fa8ffd6c0302047c435bb500683066023100dc63c8438cc25c92de0c8cd2f9ebf2dde10f3ee33bb41b0aef93e157d2acea35d12e7fa2eb51d28d495fb23623a49f8b023100dfc67fa6e872f3d6000292fcf8f08480f475c4e39de18fb063c48b0b20d13dfcb4a973222c4debfc5c18f43e3857ffcf0302047c435bb50066306402306c804a34a952603c9d07b25ac78acaca04b79fdce98b540b7ffb8cc3a2b6065dcb8868a5d7939cdd3d00f26f7121b9080230747cd9f1e41683dc5119a2ad3d518f0f8188567732e1c36599c002208d196f91e82d0aca11b6b33c4eace3dee8ec0a470302047c435bb500673065023100f6ae8df54a93d7b326fc3abe4aee5f53244d0c1a6555432249833b09cab57d816687abef0cb9239bc5d61d96e132e4b6023056d9acd6a7c2a64e93fc8dd561ca32d6108ae75c988bba14196e3d7ee24b428e168c5ca99f196787dd53adf91f2a8db60302047c435bb500683066023100acad3a72039a53fd9bc5c41a93e3be10c83ef1de5e9b4468b299bd875ae717146030029598579112fc40fe79ca592fa3023100af5dc797e0dcc21f54c226d816d0a9703bcdf0d05c665cf069c9e14390e9ab5344e7219b5d60bb64efbebb04bbb67c3a0302047c435bb500683066023100ba25b3a7457ea539e570ba41f4692233a8eb25774a441418f60bfb53291ef2794c0455abc02bdbc0dd512f08caab0f2e023100e039edb972e3cca9f2383f5d65242abe8a0ececa81642e8e541e88aa1541d9c8db1aed7883fecbb71ac033892ddb2a5d0302047c435bb500683066023100aebac577e1d8f5cc197133b831abca52584489ddd974a128d0435c94813bcf4b97423ff26c8e26b32032035b937fb00b023100912c92bd515e955eaee51a29f81a7f187343dab1acbad8896b33cfceba8e4e684b4ba9313ad775441a37200c071fa9220302047c435bb50066306402306c49fd04663b7d443aa39c87c7c12b03c4dd999f3a03eb49546b3bc5edab126813166bcb63c7cec24093a1d5799833e902302696f159038d216d7f1aaef2378af144a50ca981652a7cf16d03434e72b5fdc7530c64855af37e692752881b27bd822b0302047c435bb500673065023100e577eb6a6b8de7efc4bf8b42923b19392889d72ba7021fa4ee5ab6e0e615b633a08adadf0fb94f12b5a31825212722ad023073f26dc339c5322c38df9b9df1d61a7e0540af9eaeabedffedea1689a4474e237b22695d5730a6dec7b81eb688921da50302047c435bb500673065023021d4f0542940c296a7c30846173787acc0784f536c370a3dfb62c03d17c6462d39f45b70ef786eda8d5b3077c98cfea2023100d53eae5a5a09655a1c288cdcff09f72d929a0f5aeaa7ffc730d65808d246dfc9c41bfd5bb7c5990aebb8f415555de0be0302047c435bb50067306502305d846053899160db9b6b9051a6a426c28a1ff5ecf5210f92b1a5d65c6928e5e7b20d5c3d09730d58778ee69cca53f8fd023100a7facee9a168c8feaed02dd33a79959e4790569e0eeeacf10b259e6976453b9505595abb70903825602310319688aee40302047c435bb50067306502302b2ac7f2d5a5aa255bd8e3d1e3d92486b036011b23f0cbcfb6ebc1c572c6759fcb8842ae403ee1d6376e3f2df7848927023100dc544790c1cb31328c73c910633d7dc157a25b5bf946e0baf193b5f1e636204bc39dd56a331d7692a538dac4bb4dd3770302047c435bb5006630640230615c3c4814a45391cbbf6d8eecfedf003b0ca73bf922d37e61013a381f2e94cb832e71949d7f073904b10300c865296802307a55e2eeff65a85ece8e4c9990c52384dc3f8749829b0bc18555d1d9c2e95cac4703fa3cdfaa63096571b2ebd68be77e0302047c435bb50067306502300fff77529279130608da624992e5f946ab4d7286df5560316da9857dffffd71ff23b26b050a5a835453e65231f1e959c023100bc2e410b7fcdc5800f02acc3f5c242a0e134dcde2cd61f1bcd9f58f6909816d5b93fe8905edbf740ba1552d173fb095e0302047c435bb50066306402302558343fdbf135dc5d75efd5a2d6818e0548c1970a7f4565912deedd39550ca250ac92e5ef772ae99a6637507f29cb6602307e4be3b672e0124dec49d6254d5e1b9ac166e4317239c516d6bd0d8efbe3df9ff9456616bbefea684dfbc0c021ac9eba0302047c435bb500673065023028a332bf1d2894da4fd42825fbd61199c1c5c8a117799e8a82a1a3d5c643db4f27c590167c6790c6ff759222c0fc06d8023100c9e3bebc2948b76a1e8faae3b0d5e2b0e1d693ed152b5433a4b27c734708ede92060102c92728c3ee410d3cc1ff323ac0302047c435bb5006630640230439a3690e73a78859312a885e1a1d07c3066211a6e51aeedc583454be3433012daa6b4f4a20ba8220cc499e0e21caf57023000ded9782636a7bc5c41e0b05f93bc3d87b687c4e33832535a89f2172266f727b066d0e714c910252cf8edbefd2995690302047c435bb500683066023100d33a5af448d8dd4e200b715156de7885eaacaee689ee36b6c9d6652eab5e4f73d2b9725832cfbfa708e4ba88cce3fc6c023100e332e0af7039527d0615ad2019e357f0499e613538ca17fd5a13cdeda024f084dcdddf6a2cea16385575defed060c6010302047c435bb5006730650230437b7289211c3ffb4408ec1e78c2f86ada103f4d8061d9288d111703aee245724bfa53086b611f54b274573dda8f0e33023100a92313e6b25639589f66bcda249493daef075955e7861c87475f333e8bd9537bd4b5a2e9d5a0f448d95868310cfa4d4f0302047c435bb5006730650230500c3510865900ace6bdc6867039600831927bda5c2e0aa7f7e1089454a4aa45eb9864e33e0ecdf61c93d3e6558a1d760231008d3bbe7f9429d8b06ea72210857b50d79a5fe922290d2fbe6809a425d640ec75cc148b8bfbf44d55b662376ed07d5bf30302047c435bb50068306602310084dd5a09b022cb08da2b11c525e90da5c0da8835ca1877ef3287a7b86f082198725457a3de3188c9647985bff12fa161023100e761160d53a483e1f2de0427f4b41e062a5f8a522d479f9054ecfdbe04f7e23828f16ffba18270072446ccda1615837e0302047c435bb5006730650230796f498f000fbf96d6614129aede02306070bcaef62aeefcd2ff1ff69ac0da7dcd5b1e66ed92f0f57800bf836aa51e53023100cd4a0121ee2a8524e28f4159359ad1fa385bcbca03c5142ca13345618651f1dbbe7a46e32bbaa174bc65d4c517eea5f60302047c435bb50066306402302ac32238ab101b4159414656d027068c1ce66f145b80720484c03b13c0f63fbf14c4e44952da07a569981908a18f791a02301deb84551143eed130a1865bb4bf9e7be0c620b988c0947e5ee8a7ea35483e27db9bf6bcea650a00058ea6affc2bec250302047c435bb50066306402305fcae1c0601814ed3b23b211d4c5e5d0b90a4db9ea5f4dc2eb430f7304da35f186d6f65717b25abeb0f0ccb05a3ed22a02305aa190ef3b0f0aa96855bddfd4c992c2d03ac5c475cfddfbc81bc74ecfdc0ade8ff64ed58e205a9dadb194c84eb55e960302047c435bb50066306402302a99f2f0e87bab93e7db6e4031a2ff9f5fc2955725da5bf4ab2cc238bb7412a0d38b7dd74b4297ebaf1fed44e1917a0502306f0b5039f935b59143b8f0f6d3fec79da179da6492ab271be5bcb155f0c2d1e5769b45fcd5e1f02200dc6d6118ef5c7c0302047c435bb50066306402306009b56e2bffe8cc2aec678ef13eb2de73b036b645b69d58dc5aa36cc94e4b6d91de12f97cb84585baa278df792780a002303e2b251f4a4617a6feef8ca3b7037335acb85fd37998dba11de3280579ed466083e8ddec567bfc732fe2453149aba9da0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310098ded3f0c22f440e3a4a2926b1c94e7311725337241053ba9f96b8951bdf56b0f8646b68c4fb8f90194c55b61906f68d02302f60615c8a68977249b24eb67ae4cfef71390b78bcaf96a22b7af3b80a95ecfab4f9a68bae035498f849552eac9a48bf0302047c435bb500673065023022741dbb1aaa9136fa791a8b891ebbef3dc512636992a8cbd806afefb05b5d5d74ec9d0f7ed786b59795dad1f81771f4023100cdf29729bce5b4dfd81a6b8f16da2c4c637179a2b2dffb19956addb585da015e6c534f6221e106728d59c78dfccc165b0302047c435bb5006630640230344bcd870c0b8b857774f41e2cd2b2153d6d2bea5d178cad70c81c94310525b50d19e789a5856a1aad485a29ec01d3a402300d9c86cb705ebed768e6c2450bc9009d494bcc19a7e56da14cfd323574fca48f543909fc64a31970357fb46139bb238a0302047c435bb500683066023100ac9c8b835dbdb134f51900d68b3979de31a0d82189165e5ff07c22a8dd718f2551157f55945c2f22bf55f90b5758e8830231008f4757d7aa0e65627ad8e565d9cea7590b0536f030fcb4cc3981c7a014d2f96645b8166b6d77b0fb57b8f170721509770302047c435bb50067306502303802d5102f2f779e31fb9ef5e6a4559643a8b2f1b932729b9136eae2d0b26d6a1803eddcab3670b1347f6ec269817e25023100897163870b32c23df91d9c80fa4cadd9274a9803880fbd5c291cee4e1f9722b3df42b27c88e4c95aaae50687dde55f4a0302047c435bb500673065023015402698a3dd21857b43019068ed638d2177bdf8079e3b3557a4456ae259f67981deecdf013ef84f35d31ab7de665ca2023100866ecaf0871fdbb431d47683793a0301e44a9575cab73023ff44372c735ad9af0bcf43a031e9fe5732ef9cfdfe50ae680302047c435bb500673065023100ad80472ac7373cabecac342c7cd4d2edc4af77a10a0600ba0c8037bac6a59c51f5c4382d0b9b85c964e603bb941bccc402302139e8a5b851d5cf1f71fef462243a4eb663fe735a910a7a7242d6b8bfaa59e3ca8b8bd28f713cd8ac0d07937ff06a660302047c435bb50066306402306fde8d5df4b33f4e49fe39fac3eba64ce01a40d52871f96a4d4ad251902dc01d4d039ae707133c265268e40890e16d2c02305360d9dcb3b159235a57345eb19c993a0247a59e84addc36cad558d167f4879216898bdac77a4c4941873fd6fa6b078b0302047c435bb500673065023055937660bb54b6e78a13a7db12b8127bc1c53f36c9a7813d590418e34b198b78bb70f9c19f2d2b3ff15b7e44d6757d06023100c30159a0afa467ab38c5b98205f77bb39bc8953e359eaf3667ff4e4a6dc85cfb279fd0ce617a18c45df24257724fd4dd0302047c435bb50067306502310099b448d3c3b8d9f127aa9516172c1278fa0a1c5e134b8d0ba43a0f2a50f3de9c754a22342bbb81e8ff155e549fee568602306b2e93838727083b53cc87030101827b4663df708ed8c2f4952f23d5d9d4690d20420736b82b88a333259af37cc5fa840302047c435bb5006830660231008121eda8ceda07a52d83cd3d0b67cba8c076f7fc6b6da2037677443db05976e30f3cd75a5eb5959e644eac3b172fdd34023100fdd58c647044ec70246f79d4362932383dbb785431a5a39b0a59d2094969095e1619f58d4f0e0117cec47d77205cf2800302047c435bb500673065023100fed7afe2c266efee69f992de4efdc0204cd4f3aee0d097c9f5a74619be33d4a4a371b5cc8203e6977fce4de12a5b331602306625a8fdf899ad17ba4d7777a17a199760dac3a6d93312ad41bf130b92f6520ba2f11add71b3ad6fca69a8b14ad771f10302047c435bb500663064023044f6ab488cb1e2e4064eb619cb94d0a88d2bb3bd364cc3ba1ac509a9290198ead2ecf27a295d093109dd6ccce71c49700230216f03aeac3fc371f13102c2f29562859509aea64611a1eb866730c6d93d990c1dcbd4bb6c40d5a80aa12376d89568f20302047c435bb5006730650231009c87cb9f198ca59510524c1fc549132f64e79413550b53c117fd3ea002c8dd0098039b59b94b589cec4f3a9c6c5ec15602303bbe6efb28630c2077f926e07b67de5f584efdf15aa02363de60fa1fe19b738d55624aa24d78590c662a16bac2c85cbf0302047c435bb500673065023069e5394e27cde29217192979bd203e474f438ba28df9727969509993d6ad27b5f7215baf40a865c73505b33f16c50f37023100c57ea20d9776b2d469ab982dc2042e7ab9f42351852ce502a9ff8abec2cd4060d26889e42af2da639e6e892c9aabb1280302047c435bb5006730650230081028cc7be8746266386aefdfc2569175b5f469337da030d0b380dade26271841a1dc77466f821ca17e36e88aef628b023100ebdd920066ddbcef8ba3cf720bac2e8165e549fd7a8ba37a2cd8e42ccc3f1ac7ae90e9e6044e63a119cc9305db7bdaa40302047c435bb500683066023100ab52ab991c63a62ebb6ed7cfc5ca0b5130e17c775c6d3e94fa30f5297de43636dbec4921b9eda7c6713c60ae46f832b0023100abf3058a5d877d28c635089332c1d94b5c5a48cbcc8cb5cce65e6c5e3b2591ce5249c1b2c1164c3e4d19a5aad20254f50302047c435bb500673065023100d4e04fdf461a7c077b56324becade177cee7f4a42c0c37670d358d27aae8312f5d72c9bbaa522c37b41f537c317c4fc002300168d05131cca74dd0d4e9cd35b34d129bcebfa48b38445aa694e78b38fa635af30fa2b7336ec14cdf907b3fa791381f0302047c435bb50067306502300a34f1eb524f7224d684cf90e2062a1328c49f8887d3a572fdf907a47725b1e6703a18dd643acd0abe458e63cb1b1258023100d5c3fe95089b0ab7125ea3fec2e10c5fac54951a069c23a512f537d21a543cf2c7ed3b554b9f4ef725715a638798b38e0302047c435bb500683066023100848920b051660f9db13495484ff20a4884b9d438ce7c5497fa0affa55a84158094433f1e04198237c6eed3784be95d66023100cc3a46d7cba580218ed98fe922469479236769941bf0f14550880c8b33f1568593442491ca10fc77316ae6706e2fcd600302047c435bb500673065023001ec92f9f8e06eb06da32b10508b9beb202ce3d285f79c6c51ce44fd41d174da396c44ef5559b0b31e9d31482942c9d2023100baa1f2064bb74c22c56d422e643385c04767451857f4850994e75a3bee606ea9a48152b7e45f03d3fa338b5e1914f48f0302047c435bb50067306502307cd91d778c8060509c78466cad46a0ecaf6bf381fffb6bc4ac23a44c4475921d3a09461d3a73e629ef409e5df94e78f20231008bb7e28da41abc83705f413531bb340e88d8900822452db1116672451bf035e729c1e1d7745edfe3a33d5bf50150b5d90302047c435bb500673065023100ab28dcb7e3aa08645ab414cf3d8533e5e643dbf2163355a247c2678e29c05a7095e0a9999a2c3d5bbff918e8f12f8b3a023059fc0729e9ee9b2f8dae8c3e1f3f75457cf4d91b809cbc3361813d19daee0b7de26edced03a86a9c83795c873c4f77800302047c435bb500673065023100b419f9bdc8f9a7ba15e9d1e47029ac4a6f8d5c5b3f96a5ae8d0ad3cd677835982a30df9967351602db7309c53129314b02305a798a5fdd007e6aee045e9467ac5c05455e13d28604052847fbac08d86d5d3044efc5c04febfdd73d79f2b7bf045de30302047c435bb50067306502304eabca75e4c84e5b597ac85163ec58af580021e672a88b86cedd67e9b384068d5d2d0cafc6748f8aa94614c63ef4cf48023100c51bbef42fd0cb7abdc88f624af70b6a5b0a7d12cb96fd351b7d6cd93e62098c1dc37cf8b2c73c3aff242a1af9f190880302047c435bb500683066023100fc6915272d1652eb64bcea9b02409d948b5f111584e2b27fcd5f96b90532cada390bfed08ef7a4ad4243f3dd5d05b376023100a795f62eb42e677e8e3114cdfc548fa646172fa13a87e59a0c3edf14d35d5919787f6863e942938a4d5ecb3d5bac51d00302047c435bb50066306402304ca3b4fc55b0cce04b9dffbc7f2225884a55b9da8e504ae011c5fbc7307bdfd01036e016926227f194ebe5648459e2ee0230213ebe8423426a14878ad40639fcc65650c0b1bfceb22c46759430466f4dd11b225fda7a995803f18d155bfc9e5399d10302047c435bb500663064023065df1406103e1f6c0dc4aa118619e016de845401d14ce40084ca70dfd3392d50aef67fff4d4719a91dce23ff828100e80230158caa3e125040141abe9883d26f95f342fda19e94abd6c29b7a5f649607e78585ba29bf0bf2ddd4e9a0bd925b4033730302047c435bb5006830660231008fb402021306b47057f5e4eeb9a75300d65783f0c3e132ce5c4276aefdba0133054f2fd93ff00552ad61a4955e29908b023100ae63c0fe121817845dc2162a41c428977ab18a731493e0bd878ce84826b73ffd1578d14353c62b302e1c92552f879eef0302047c435bb500673065023054a62d56653b2d503d921ad67d0227f504c56f90f113322947bd43a3d76a1529210effab861f635772dfad3d96cf4f400231008406a62d2072555ea384b152f0e55c702b37d74d803217f13143a1d4b5f2f55e981b2df7c4774bcde7f4c4fc35d351070302047c435bb500673065023100dbf5dfe2c8046ee3e2c8a9bc4716976693adf5082e1e6c0b72f36358862cb03361bfd33faa0a62cbcbd64a9de1f9628802302496a294b648d9e5b108952cb489a1efdca6ba94425350a2bd031a2380f0d92f57ac73e30f729b4299eb00fb3c18feb80302047c435bb50067306502304203e32d68d21c8095ca7616036b75ee4b37aeb7399633bbc3ebeab0a3d76e418d2fc9333c7baf41cbe8389d913984e9023100e08598d4c9a433d6bec0ab9a9db1e6f825f12b3390e751710ff35962637d5fb09b4f1ec10761bad0fb0a2cd2992971390302047c435bb500683066023100ba0ed43d7d103a21626a4039b44dc7dd95f663b8dee3a3e19825360f96b144c841fd46a5762552cd8db38302a0e935080231009c5e8c78f25d04f0805599923a24c0bbfd17f085936933ec8888fe80e9b6215943aa7c93a0ffa949794f6b4606201a640302047c435bb50066306402304464b75ce4c861cdf095f5e0be262389430a101de41df3fb4352a629d5a12c02c435fa2a071515ed9de8e9226d45005902302c850dd33c90d345194c59b2585d1e2b22daa032fc914e7b04c3c94f4f08d5563bf940b8448977ca8a824c56cedc674b0302047c435bb5006630640230637ab092191519809997f24b16d8a8d8b815b76bf061f4f61a050f34c9eb2604763c1b9cf8c874db884b315a37205b5d02301128222f47001c252b47aea49430c9ba3a5c4997c7ac10821bb3fa6ab49caa4d266c40f81911c3e30da26f9da3d8e84c0302047c435bb500673065023100da4bb3388d74f31d9cc9e740631eb2dfdb57f395eff620ef779cf9529e58c72421597e70e686e93262fe44263a176b22023018789e9782cce9fa22f4e48d409dcae317e056d0f9e5761a2053e3845361243d7bf195f67ec903268890cf24556ca5400302047c435bb50066306402302e3035a6a74514e9dc789aca434f9c74fc7faf7021f97db035c006659ff6b390bb15a82b53cd549438d6a91cab4cde82023072dadac8f0073763ee03a53600df147343ee6cb2bd8c09b1c96e57cf5ff7858fab14da7514f9aa86dd29407e37525fb70302047c435bb5006730650230462948401968c4919930416e5f528d667b733d6b5d091324a8518641ec194f852033bb4c7d982d3a7c3d0a7ef5d6ec7f0231008589b07caef02710d692def25099dd1953287a9068219f51106d85e6b63638cc0fa5a22fd10b2c27dffe3d2704715fb50302047c435bb500673065023051e60da943dcada3a56a5a736207e4b0fb0fca1fb1bf37ea65e3d4536a283e2923ba6dd48ebc5b194937762215a5d462023100f3e1bd4c34de1a522998832c1e57276c1571c4db4ef18145be44fe5af81fa022fea3835f1a3ea3b22b06e7fb6e4f9a430302047c435bb500683066023100845ecdd086348b4cef9f076767f1ef3d1131208afa75c4d5305d8f0c4c52f46767de22dfff60382bd9061440b553e322023100f2d80853fc81f73e3ffbd42ae84d8475eb096911c5146fa4f9b146268c6626134ddbc9eee2ec46633d55272aba02971a0302047c435bb500673065023100b8097ff0f29a0c06f047c36295505f099727442ca86d0e30983afc77ce90f3aae5f924988cc84a1a49869798ce06982f02303cf7b8ece833ba8900f2a2ebc900960d56f0c7ab1df9b2e053d2b30df88195cd8deee38e4806f670d9eb338e4181b5f20302047c435bb50066306402307a7b721eb00aa556a18f033bc043598c69c494c539e94769b80f899a26245f156b57ee9f5abb429009f069f20ab97bc402300e4df5e29a6adfac483c7b50b28867eabb8c7f38028bcb5f421e6f2a612dd07e033c2060eebb49054912fa20f5166eec0302047c435bb500673065023022feb358f699e5d86b2129d3adddfe6fa3ab39243029c3fb7b6cbfbfca565902546e5efbb700eafbce5520b678c809ca023100d47739cc9241724fd827a3a46a8a7cc42d802a4a8668cc7e076200389cae07bb946dc1ef80019ee336ae0b473dc5a1260302047c435bb500683066023100eccd2159eebece5d6d2ffaa0c12ded8e9825ab0c2a0cc745f32e5cb6687c713b70c63685a85a8ada355db769376e7fe4023100ebb1c77dd64073179c857e4dfca09ef7b719d30fa0adb8cae810abe8875b317269c19d1b8ece413147616f3f3202d2d70302047c435bb50067306502302eb9eea33dc09164481e37b74dc1917f7d038090e4cbefcdd0efa8244dfe2277fb2e554cf8aa7af01b78b67441242de0023100b7c603a7e91e93f8041d388be6259eb74aaab7e424b0fb405955563a2abf1a6c19971c67cedb8b8b45d6c80af5d6db0e0302047c435bb50067306502305b191ff83778046f18b753433a1ffc0af834e80eb25cbd1ce456fec9aaf09a83e99072c0d374dba4ea7bd6be5883076b023100a3ad62f20f5d52632fa459093f177c93fb932241e663cf34e6976af22173c4389c6ef0ccb3ebc2233c80bef3d17d5f190302047c435bb50067306502301d061609b5f67e153ddbf0aad627c58f6e11f6d69e31b6c8555b9bf9047fbcd18a609a4f87ff06b2d6a4a554573e6512023100df8bc1cd6c69938f443af6abbf300c36d5a5f773753a8def94819bcf309daafdfdd8e6c8aff077211c80f5ae26acf3510302047c435bb500673065023009c4a05bcf80b7c6b231ae2760d08a64687f6b179f3acdde9c9cae585082a313ffb677a2b40cc3eab30237e5c89eedf2023100833cf9b08fc350418eb546a07d9b5b7a22a03bc7b09bdfa916e00a1d928c7a6e8136317910445bca77e7ca184274c4d30302047c435bb500683066023100827441be305af753c7fd92412216c2d103638f12adf112dc8f8dd0339593d20f033b2f9ebec1c6520348002037cecd2f023100db72f8b0a5711c04fb3f2f939f0e9bcaccff0e9f7c0a2c7368b62d5cf3062809c84de8935dd875da084fba13cff42c420302047c435bb500683066023100f17a41b1afcd54c0bc795f4ae9b046be70c166bca4e2652b45abee44cb67063540e36cf4bf92b0878713352c1a44b575023100a50cd21a1034438fcae59cd77476d51ea3298b370097e22b7212008649400cd83d467441b67d332b221b4231dad28f3b0302047c435bb5006730650231009d5e93f53a9c72ed1cef4c12566361d1e86957225f61d9f555ff6116ac85ae1c5179d9dfae3e67db2fc6353dc898c3b60230629c43386150cf649897c047b5c1b13d30326424ea86f3081d89d240e6734b092e1855a14a885aeee084ddb253fbcbdb0302047c435bb500663064023029830d114441871619233a0b15e3edd75555edaacd6db0d2fa0a25c2ca51d81433f48229dff1c9d6108ec1e8d1eb1a370230753e822bceb62e1a8f4029bde4fcdddcef21718cf7249e97a5025ba476d3485a4d48618d6f013b105565a22e448547560302047c435bb500673065023100aba9b39b785832ba1048412aeb6688841beb0530a282519b6468c10c88b9ca1f8548d7ea20ee76dd0e11d47b5fca4d4f02302539919eb6bdac555fd621b3f167b42d820029d60e80ebde288659b67da035e47f540dd68c527e4c050e88a7b66fbbfa0302047c435bb500683066023100d0bd20801d0d5eec407c1527d05eb019c1dd1fa36bc0b8436bad6056b32ca6c10ffc79984abf0b8a8abaa7866cf8b1ca023100b1ca5d2740174e06c38051c716bf1e7cdd94f242096a0be42cd3f6cdcbcf8118b758d7ce4a0e59b7d89bbbb32a73460b0302047c435bb50066306402302f382e609a88788f660952c780f88878d650dfe06e2e1f9442e229b20f4159150f614907d780a0d8005eaef1f708e997023056bf77c5e6d9f99335f027ab94397dad68847e3a467609275085ad94eef5313f8492068c404b9c4f6755d9c648775aed0302047c435bb50066306402301f5d8b9eec98703112cb158d91ead91b14b67d603e80f0e6589944a8a812e64a5a2a3e8b9dd90e6f16908748276dc4cb0230153696a402c77ad489cdb682900dc6329ed306c95444cc9468deb691e0225ab4452cd3154e753653e6df6f096affa55a0302047c435bb500683066023100c3713fbd75e23e907126b497e07c69f869374573f2f31b5e26909897756d5357c117db1ffadc1dc3bccfa10c54233ff1023100eb5d6874d398553d6b2825158fe584940214a406b0cd4b6d8b505cf99ce17012d9a369ef88be35d8f87714dcd79d830c0302047c435bb500683066023100ca4fa015310fc90a1fe92b9512bc168989bc41809590143c172a28ac8a71891dc4f48f7f06e4d6a8b5ead3a11e2b9889023100f55579249453b43b22ddf9f9ce22c742ab5e433bd4c24a1a79c09f71771efd4e48bec661dea4c25f1358fa145a398e120302047c435bb500673065023100d54cf3b0e7221b95444d440a1a5c5d3e6cc9c64c64685dcaf032b645525cbb4d41f0c3ceae168effe5255646abc7186602300a5f548a7c0203ee67373bcb70a101a8de5bb93cebda1dbb056ac0dfecc0fd36eae18b43bcc88779a5369580c4b01f7e0302047c435bb50067306502310083734b74771d96c64658aef86219f04f784a73842e2ae167d37da366baeb2a2170907b3710a96069804feed6fb32f9f6023071d8d1806170c17f9373ec76f46670dca03950586a6eda5381d78f124bc8d4999a7955fa4c78c0fa10133b437ce59f570302047c435bb500663064023033d1f38455bbc1a61d43b5af96bc38d6b842762c7063e8e75a1b9619aa9c8ce537a9634ce01704ecc565a2171499d90a02307641c6347087db9307f7849205371fe18315ce4d26369ab488e91fc95fa3c45d0fdd80c7c1aaf2b2e58a949652d4c6ee0302047c435bb500683066023100b2125429e2fb0c434779d2b849e81ed1a3e65da6e81d1dbb68e4c8bb24f83a64d96b9422442960367f18a14ceffe38c2023100c13015bc0bacd29aad0bd9575bd340a6864c3a2593a55978c32cf9259bd34db9fcb44b7b2b700e683a09a0c75edace870302047c435bb500673065023100ee47ccf7c680925cec518c8ae3304cf8fb2ccfe3f702fd445fd4da1ca1211cab817d18bfd9e381b8911e29e512e32bdb0230349a6c25d2db6b16527d8cea7a10290663a3fdcd498b0feb90741713b04594323aa42613324afce4606f2335c82f9c000302047c435bb50066306402307499550629a5641ea9554768351c262d660c2d35e1119750d98615f6586291cf678d19f15f93a751e3f406412289db7d02307d0012a8ae74b0e6f0191c0274ca2e7b31b047e6c25dc670e935808b2f67cf1b1a13fa7a640cb42d23d10fd8069aeb740302047c435bb500673065023100ea0052d3d72b4ded19d6d4e7adc719b303f56abc7502284e7897474ffbc52342eaef8bfff8090ee10efc2508d14029c60230644b692aa5bd0653c326550cfb498c32a344e7d2b7132cb3d19b93559da22c029475483a889f3ff6f068b30941ba3f960302047c435bb500673065023017f2c6c67217d3af207dbc735bc70efccd9b84388fca1794d85ab7284eb06204e53c7635e8eb93c33a0e8d28e4d164a4023100d5f2f693130daf27b386485f9a294d0d29d9d3762b9dbc9d488ecae9927ec1503c8263cae56d83c8bd0e8cbb2e186a810302047c435bb50067306502300816e722f5494763d984c6ec0013c5b97e44574bb01a1cde1d5d92fb59b7f62fe1bda7d4db137833fd266951407af9e4023100deab565a7188f5e2161d8d27f0a3b297a98ea224e2136a769612de354869c1a0daf0b05f66b174ae00c156b7b5404bff0302047c435bb50067306502300b7c2204c7b54d7acf6a45ca80fdd1fe5343ace48b391f9bdb3fe77903cc6ed995c28a7133970360bcdf61ae0c66f28c023100f67bcecc95be55696ceb569f53d1cd35a2b352c8bdbc54686183deed3190e519ca381647d4b26b5751756ca80f83eb7d0302047c435bb5006830660231008b9173ded62784733c412bf668579648d1720d2684e809907b32005b42817666836e22b818b19f5e2fae7d715a92ef890231009ea55e328a2c52c54226262ab22c34f1b65933fe47d940a3efe56b6a12253aa1ccbda20c449619036d904cb9ef203b150302047c435bb50067306502301319c3e4f95f2d3654300c1af1abae9f79521b792475021ff855601c1b8c26922a2df5097ceb2d19f2d33392bad13c58023100d7c5e116b66e92e74231081bf290958a905449af5c04ed56deeb36c3a7a4abee08e974769b40837bde2c09c1e0f3f2340302047c435bb500673065023006d5bb348dd21f50c89d0fca22f3a1514b69710b726d89694cb4fcee724163395a48df28de9c9d71dd6f5d10e57aa3b10231008e418db2b287fbec5db3bbc98928fdd6e4392cfe921e524cb7963d00fd4f6235041842cc5b2c9b43153067c0618a568b0302047c435bb50067306502305ebafecfc86bac3813b533cf9d07031483e2b1532ec5f9118a390553f61f747366fd09be6de95df97e0b8a8e687a8d9b023100cb1d9c41367ff0279d239d1342980371bcbca9b2faed3eea8688a4e450c0f859505a84cafc7049ddfa86e946fa3084540302047c435bb500663064023016a2cd77696179f4c88eab49f5029083bd1b9d4fc5a3878a862aea5732a3c42a0c06657e5c6de7d64667c65647b3d06402301f57d548c2dd0344c85322482115bb4aefd1a90b15f84127bad681488f70970432b6f116782aae796451ddb4af6a65c80302047c435bb500673065023078bfefb6d21e27b6279c15176f265fbddb02895c0986503873bfbf1cb8c308002c472b74d7ec44461ea6639a6a111319023100c29702f743dd7cde85a835c5dc5dd106f49b9f1dbda8a9e1db62324d1be7b66b8c4a0480178fbba46c3ae8542e6715420302047c435bb5006630640230425f95ee05c226370b39c14194a7228e133144fc3c552cd29d66f30d281275803dd1cf3efb728b2dd4c8171d8c0c393e023047ba4a1a72ef098354b869afec6a180ae1155f16144df6ae3569eb67ca6169ce28987ba414ca30b11d585efabad77e010302047c435bb500683066023100e7178a674534214e3723eb7f6b8fffd80a8bcb6b30f49e0dd7a79616fcc29170b03995fc36a64b7faa29cdc57f6e9df8023100ab9fa753d1b7936ed6117407efb8f80498da66f72fff6861d54febd7bfe385280b49e97bad8702c91b6ebe5d8d7c8bcf0302047c435bb500663064023052793d8bd5debe98c5f30daacd8ed203cc82b9ed0f8939f010240d920cbca9d2c7180abcac86a1f765723933591efb7302300610687458113caa7780159e72b2892375172145cf328e27926c628598af413efa3d2d4c320240742d6e9e70d417b7eb0302047c435bb50066306402304f54f259eec0bc438034ebf4d4a202a5f65f48ce70b51aa0bd76cdca6660ad92eb0af2f3485ba800d6b742468b718105023007d9ccdbd0087d3c139e9ac5d7f6c4a746e5c7ae3dd8f3bc6ed7f87a7806e3b911f40af81bd267c7e7171dfa6ea936aa0302047c435bb500663064023066973c4ac2abd36efd65cb4c2098e42c44abeffcdc54f5941ba69ba502e07932681ff09a3e97e9e332e26e07a46b9c4302300f2143ec76b14352b568a55de04217a3bd4b799b9b22d9ccc353de18a609b5bb75cf31812398b8f4426f25f7ce8f1dd00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c01c3cd05e56971e6f42f83f5d20db7855b20d95a3caf4c64606d43d4c715613953b893c931890fda359e7ec839211600231008e86841367774582c87c9947a673d0ed8ed9b7afd7b4c62081880527d6394ab2cf9c057e8deb6ea8a35f929a909733e20302047c435bb500673065023100a3f0c4712e85f9bfce38c142c0e0ad0aa3984dc4702d46a871031ffff7c37693332e6e64c27176bf9baa45c79c4194ec02307d90024bfcb55c1094ecfdc64f1f8ecb6b397f1368af6fbe35c7223e01b43e58972991e7f71a628bc24b8a1e37462c080302047c435bb500673065023100abba48761c4933215c20ce19e720cfe47cd2bdb788f0ff1d6f38c85e7769381482160f81784944d8eb3e451fd01ca8ba023006a9157b1731b80c18fef6f108e542fc80fc8cc56724fd583cb83ab70fd5543236c99fc08b927930dae7c6da6be38a890302047c435bb500673065023079ffcb4f9a78b99563adaf8d653c508e42af98b1e599995f3c3adb3caeb981d52f2bb2c8d61c388b60558e5e5f9260d00231009f1ab363d2171dcf240626b2f586b15c1c0a09fc5c8d632a7127b3e78463fea5d4b2c3cb3f9a4d2b7cf599b9645515d30302047c435bb500673065023100c61d827a04aa4c9d12f55bdde8d960deb093efc9af43989106a0764a59411bc8337cc55bbe1f5a3d1d3cce601401343c023021452d3a3a0f7aa6bcfcfc0dbad566b92bada56da5a2c4c120dc5d00541c7638dae66ab6b03b7b0fd1bdc557e025b2ea0302047c435bb50066306402301e34c6d824202ac041c8d3d7bb050ea2326e3a5c1ebb58851bc0b6489b1deca6a3b19741ba35052600631de78de02ab302306dcd0253d0254ecfd7c718a2d02007f3cc9438a81a1bf894c569bbf5b9724be44dfddc95f243172b2b49d4b80d11c7200302047c435bb500673065023100e4ed83a95fbb008e81f0f0c86e0cff016ad928f8739b1d751ffacbe85f0ac84a2bfc52e5f950b71759e629778c1aacc102302ecd2ecf10746dcd2253262849e46524bb4de4d7682e79105b8f62f0c0a4688e3b72cc30fdb83a9e1335f9a1a88d38750302047c435bb500683066023100e197e08521902476893dc012960a73a4740c1353d4ab67f0f27f46e0338fe97e22f4231d1e462a7333b3e89b4e3a0a62023100bf918161a120b678153964e7613ba723220e9daf62a75c1dee81a7787e1f79d45970f9a83c66d56fb65874967e5874600302047c435bb50066306402301ed0f7915081d95402a9b2e7181a81508a8ed89e8b7f5dda85e0f75b2da2463773ac6bee1140d4d7ca39032c6b0a9541023053c09e761cdce04bbcaad2fe30c4dc50480856034813a557810f11576636c867599434d003f96e85ea702bbfec4cced10302047c435bb500683066023100d00eb6d44b2c783c42b9ed933656601f3d041ea79a5438c78faab61349833e51e4f6b82c5441085c3e5b56741f3646be02310093e6e7bed031d9343a6be6d272993271b530953efcacee5c6aaf2a53fa864ac769b48ec517189caeab94da894fde2ecf0302047c435bb500683066023100fa7e518c46d76fda9eb8308cff090d063f8a31b95a6ad8f138060ef653b73013791032036ba56a147d0ee227f02eac6e023100edc2ffc8c3b9950b48c510afbb411bdaeafe541078760d58bfff56d6f5d2feddc74c681ffc0c4f540b949944c00555bb0302047c435bb500683066023100c0d204b0edf3ab5c3709345c0e5390a51b32c39c6011727c9cadd66dc1e5508850ce5ce955a4081d0f7451ed746b0c5f023100a08f7b498b660f5f22a8004010563004660a7b72d5bd357e0595c7cc4f147fdacd08aff320439cae5ea964b47f0f14680302047c435bb50066306402302ca27afc3066552ad8ab0ef8ac0897dae5fd69462b8ec603bb6abc70d4891787af7ec80aabfd5431d6feaa7bf7f0372b023058f0873963346eb4e9c394578b4b03c73bcf494df17c4d0bcb437717d573b11ffe523b13998ca5f269938539aba6e2830302047c435bb50066306402300e96b1fd97bd5898288233a38b03951ca9bb5833b2ae3ac5f58d7126ab0457046feccda50cccc91678c64f5157e18bd302305db3ff19aebcf9873759d6e190a8700188ca976091c8b4aa0ffa9a292cdba38655584cc071f7cdf68a5cf23d150ecd810302047c435bb500683066023100f889f9bafe0a8c770507826f6300a058240e59804bd404a6b8769d521def18b89d77d618851d201012018df5c49fd120023100a02e93c7dcced740cf9fab19e835aadfd684da779b701b53365ff0b4d370a664f300f4b34be8b4d74d4853207a39f0620302047c435bb500663064023017a4d328d57b17d9183185530edc2f8eb007bfb1c64a336727c2352bc55617e2037ee9e9d9dd95b1d4e5d9feedd03cb302300e609c33fd58043ae11a87b40c680adf9e176073d32e81a7804a28faf81cdb512fc177ca6c4bc0ec84ebe6d8b845beb00302047c435bb50067306502303c0068aa8dd14344ab55b436e3476357b2e94b2b26bc1f705a0d37cc27c27fc6b717d560202318e65f5cba3564d74f9d023100de76378f9bb367bcbab27e89232e002346e65bca1e9a06751079ef258c0f8e968b7f0d87f85fd46093944817f81201dd0302047c435bb50067306502301cb8b0a6c47997cadf4562f6b7f8a8a073bdd11ba1a42f67b0a2c2c6456cfff718510b187c5c1ba5b131f97d5cc20d570231008adb99f39ca53e90b8ec8c44c64a4174961f890395b72dadb3683c1de60bf07f4ab292667e58e896e58ad0b10af8111d0302047c435bb500683066023100fa98d4bf207e5a622bc3d4ecc4e7ae7ecbd3a73ee2e03046e7fa66cf05d9ec0d106a749053cc1dac21ae0661d48d22060231008b2837d3cf27ccc868497b49373e004cb909b05dbe0a35a87eb998fe67d3e720960d034835e4053de63b32dc670336a90302047c435bb50067306502302e1cc3b8a0722432ec001300f4ce9a1ca08d5ef5309ebb75184669ca9f6cebba30ff71588deae7e5c174271f891befd3023100a19531d17c7ceb64092ce56066544f9ee6dc89fb6053bd80e58ba3a02a4cfaab0b97d3c36d6f48f09f6e43a1e6350b880302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bdbafecf5aa6bf3f50522265d47c0ffe6273d53757df078b380f0aa45c8232be7f8915a7ea98d3810ea37ee3eed33762023100d2407d91be5ebb144deb8f4d250a9a45f24079307482a1734b243b20bfb5038632b595635ea91e13a9063be5e25b86b20302047c435bb500663064023068c2b479f389ee591e93d418744f7583e0c8bd7d5b304f5fe2ca8038733eb695c2f7c98d11946756adc532eab7c4722d0230238f5baf8c410ffce7885f84be99b3c208eb33819d66fb1888d3226d324ab3821fc414dba6304e3447e7eee9ad653c380302047c435bb500663064023021075df958a733a375aa210345865a81fa688004717b6b0f3d87efbccc13a763902daaffbb4dc720c4b0a7f8cd625e9e02306fd18566f421f64ee3d0d77c4d673c919db72a1d0c59cffc921edbdf5b27bc066732fd20929926379b72bf305d4f99ea0302047c435bb50068306602310093ec7eccfa8447c8a0fedc12e987606cd9855d1562e2c0c016bb42a9b0ec7a4bfb4bab6c1d6c323c783896bc5db8be52023100c2de42c2f5adea157f3bf584476bd1b43f1f661caa880231d1431285d27b29060acda49297bcb79e5212b28e689d3feb0302047c435bb500663064023024173a50e87f5a5093c18fd46e2176a55038e82664cffe10cff3d1810d2e4a0a772e1658e6d01c11c2c6e3433e14a4df02301e1a4aab628dbf8c1083ed44adb26055c887cf10a23065134dec3bf413e556d4c781bd2ddce05c7d18b4b5281d507ada0302047c435bb5006630640230281e6afd47c87029f94bcb7bca0aec95eb9ac98cd0a96dfe511e5466213a28e375f813eec823abbf90d878feb5e3b78e02301b9eb3ebd42ba117fe04ee263f2db8d3279b1a443a552b5dc27c3b35beda7df037c42f819f4deade4d478e0a39b777310302047c435bb500663064023034bad24fe2f25be1958a244d2d56968958c5c423cf176e897fae304f692dcb62aad007166320f67e714c0b01f550c223023050b511cf7622f11492d385355cfd8c0545da4046364dbf0f0c6709f09ead2aab32dafa72107d6a76bc1fdcc34362ec1c0302047c435bb500683066023100b927f101170547086730794db7b1e83d8561410b071a6ced8722a3c65ef12903e87cf72759e9ce12bba982111046e6b2023100bcf55a10572100e8f5f48b34f6fdc058dfbc15697fd1b6033d54f6683d460c5170edc40f3a3edab0c54becc47a5169ce0302047c435bb50067306502310098c2c119fe32f6bf9141c1cb1d94982a1d901049262321d60971d43d818d192670393b56c024cc461be2f9166b579543023011bdfde51631525de09bf47c3821fee05f617f1349fa47b3cef5d2694cb5c685143f05aa4dbd0de855f3156d61aa7cca0302047c435bb500663064023013d1878a988790a0c1da87979d657641126df385bd6d346bd4ed27ac77cda6259c70c16f756f3cd72f2b89ca8fb6f39a02305ad2d4ff14c6f94fb0dca9db7f8e8cb78863b896dd407d5e1fcc3ad9fb9d298c347f43f10390adfb03624076e0eeb1ea0302047c435bb500673065023028c9730a8cbe73699b850aed008ba424045d79dfe3e36e87aef080b747706345446f2de9cc2bd7195d3799cd9dadb1c4023100ffc678d95fd44081665fbfa8c7ab71524d281d8955cb826738f2a4c77cc33b84fe0a1b9c53c67e6c96882d3e17ab90dc0302047c435bb5006630640230292d3944b35faee898e884b1677523c65fb0197896131edddc435fdb27d535abb9a3152882838dd5628d84a71a0d4de402300b439ae34ffabb224636aaaac1f1a0e74c9e0b18daf50616d7ff69e6b260acf6a560e573ab960e04a383d1d8484c0f560302047c435bb500663064023074f78a7acd2410ebaa78b064dd21d74c9121031aee1263b867c5a2c2b7f382e96bc547873695dc98cdee7a1c82a7ba6f023000b4e0ec59df299c17354e089a09af162928a010eb159c2e98b9f5c0b5eec5d3d318f01c731af2d612106b982597b6120302047c435bb500673065023001d2b251266e33a5e4707c34b574970afe181e03ca92a6e01cb564d35fc4e17417ae2bcace9a712ba1af306b477ae61b02310083dcdd2fd275ec7e2b97f4b7fc20b25393cf2f66340414e625a410636fcbe3676b6c9190a1f0cdaa9f86c837a0cb20d30302047c435bb500673065023100ffab529f98c247f47677fbcf507577f0c50b4ced0ee98b3879746fb451037403b5addbd30030b2ed50db09033ca77c3902300b4bb3790fce5fc43071e427ea575cc94958c5dfc98222c3ac358838032c5a47cea726863bbaaa087946b298b62c8be40302047c435bb50067306502307847e9d97686ed7c15800bcfd529b6df5d6434f7bedb37523f59ed6c9be3654fef5bc587b96252e74594668fe95e41c1023100bcb66e8a1db6072bbd7c9c5470d452027cfc979d95b923eb8923d953767e4cb1f63a62258816b01f11e1130c2b5e75ff0302047c435bb5006630640230752860541d09a8ede6cfb2a182aafd5ada100e1d1267b381b7a1405c65568641d17a1388deeeef1e37081ebb20c69d12023044ab3341cf9dfe144173490f164fb5c7a25e5c85db3f8bf1989bc9500856c347b3c0d45a0b14ab43c041e090ae6c321a0302047c435bb5006730650231009439027405f24f79790c05839ba608c27ec5ccb4267d92b1dcfe3fd0b5381a03103eab9b38d1932cc3ca269faf17f8d502304b297d397f39192fe17cbb1e81491a683a38f8cdbe3a508d27968a113b025980e6b5fa7e3ebae2e3c9f5cacac7ec09bc0302047c435bb50066306402301dfc07f51950da648b03c9519fa6e03cc8fef87d2765e86af074298b27a34795a5f3f1ad3b3361e3647d9444837fb05202300cb748a012236659cd0a118018903e9e45ad980c8513d7ad47f7a016b0771201d7d39b83312014b5879d54f2f8f1defa0302047c435bb500673065023100d4d363459895dfffb15126a809ba3232cc74b78260b7cb8e58bd65d6bcb01617559705fa70b0cd7b28ccc3d818cf11f202301f13c0d1aaf4a08dc32b4017252054f6736403ead565857ab66e7358cceba379edce76c5724de2abb10a66272b1bcb2d0302047c435bb5006630640230561376cd4d57218984586ced7d274e4433a0ff048005b45c92c215410293d6c0f262db2b8ccaa7634d5151d1c74f1127023027fcc7181ee66582fcf1162ee29ae405a264ede265f63bc4b95dd750661e095763759903b2bb45747aac953ba3005ad30302047c435bb500673065023100c29381ac1f60afc1f50d049755b6c48745c567fa41cd8d9336b6434a0cc8f6cc5e751d5264af96c6eb9d308eae7e0cdf023011093cacba31c2a8a90f4e9fa27d346a0e266291617f02ae564090d36d0020e4494b668ebb9be26a01eaa83a104f9ce00302047c435bb500683066023100ef624879801b8c4db4743166dc75bc4eae72ecdea289c6e57ff91bfd7986bc252d681453230fa62f80f5985a71e3d11b023100eb3a2347f566bbe116eeee3bf3efd0ee6fc3fe5cd5ed7201f783d770bd84aec384948887880b7982336cf5bc67fbd3600302047c435bb500683066023100cf13fca64fcd972ac8a2cf045079c1b9cdce797442933d8b4110b72de36c5869d2c4d43963354fe73fdafa3e5cf09910023100f59e813ca1b4aa2b4267451584fcd68542db966f87764ecac0d2c644c9585210fc1b5a8e2955a4e875dc9101b5fb758e0302047c435bb50067306502306911a5acbe06cae40a6461b6724f6f86be9c3b248566a6c48a6144b290a77740368f0b4f50f27c9c2de0e297c49bfa07023100ddf82e9808240c2a1fb78a4352f7053e9f48d94a840162ea150d34cf19e8ca60b5cefee40803c85c1dba5362a9a40a330302047c435bb500673065023100f3f2df4fb7a47b74b4318a48dcf23641ec1a68acbf905205f82ee06e1d8d176f455c970dd6f6d2d1a24af3699a8d990202305ac9e2b1b92c63804a1e22e9fdbc2e3c672557822ce8fb4d95680fc26275fec631bb5d9e795ac71b55b65575789161a70302047c435bb500663064023076171e4a8c0ad34add43b6192a141744acc8849aac9a9f66c7938393a6d46098faccb90a781c8fd03d932ed72c0ca61f02303472c9020e20407c797b4e89b9bd1abba11aeb48f16bd30b7e848e2261ec9057cee984e012b929c05848c691f136479a0302047c435bb50066306402302098780c1079603ab00ee69b31c763942482a8146f491f9a07e2064054fa346900e1c7db1f8a733bc4099c78175568a9023029df96b3a74bcabacfa0539425881f4c6014cff40954319b6e62ce00cabd4db7d0a3949f36ff4a371ae6daa96f5196110302047c435bb500683066023100dea9486522b388a46f823654665e5df34c315009432b834e4f8c9d2ec315e7f2a67f2b4b2ae8d2c648e6f7129bc46fa2023100f03240642998e0e1f208e3d6b64307d9b6c4e99cac3d6a77186140f636e50743f02a73b2aa10e075d70406143197fcb10302047c435bb500683066023100ccd8ea8d70bb4f4e71ca4634947ea44b45ea4ee1f9ca06e50eee5e1a301d1b3480acac192840a3a8147cc4474e9a4e14023100efb894cbd1f9add78410c80db6429669b1b2007f6bd9ae6d177cdf7116dcfaa9fbc20dac3199113372716d35c36dc29f0302047c435bb500683066023100d96565042e6ba3a8d57edbd83538c15874b2c34d57e4d681cefb2a42aefde2b25c220c46197e61ad5f942c2b48f47c75023100845b09b1e6ee35bb3d954e65c9387a4734e73030dd60bdce10a1e1a2f5fe62c64689f8a5637941836bc68542a6eeae200302047c435bb50067306502301f8216a1fe72ccad4f100516950af5514bee6e3eb577b63fbde122b49e744591464021cae0325a53131a18b8a3d05fd70231008bf8efb2a10961877c661f7d97d43ab28589a8e69d5accd8541d4a19dcac4049ef98316135184ed5f8e9d39531a9102b0302047c435bb500673065023100c3c18763ede3b80882d0a2151df6150db00a1d24fab89a5e484f47434e89289cd094e14a86426efa278811cbb5f6c8b3023062cb3e1eb88bcbca8340ad4d451fe0fb259ba03431f9e062f3040796b68083917bca6a0e50dca9b4504ea3a1302429a70302047c435bb50067306502310081e7703c853bfa56b1b8ec102f431f66863fbca18cb579ad56d84fb7d29f5fc1f05a0fcc038abfdba4a6a37557aa5ef5023076d6a0a06179dca084ed497b0ac10c00bd9e147792355061e964baa33a53b4f0078775e09b737e072b9c89c9ad5200990302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230288762b840eb2de495e9f2b4988ea7806916727cfc965a7e31a08a8e6279727446e20f1b5591fb3438c4bd89aeb3b654023100c56870fdd789546bba4a4d308e904438de9c97abfaa09fdb6d1e799321e46338aff11cb87277b0595b68bfb4c02cae120302047c435bb500673065023100f07f3c4415160c64311da10f43998a2220fdf3074de5f1c7dd12f4908d239d0604c3ce677c7f4ce43b934273477718fa02301f6d2556243b9e9b1a438fb9c1197a98f7b2caeaf8125fba761f95c60a1f2da876c03fe56e6922ed180445c36c8313c90302047c435bb5006630640230180dbcd29e45eb3c862a379f13fafd80c3914d3445fc8d4274768908b0ed7bfcf0caa6ba9f08e5d7710759aa671cd2a302300269799ae02a13ee2df28ceabed6188f2bc2da98cabea4d6ec36aef73f7ec9c0add9105b6d502b02e58c72f34e4e70f50302047c435bb500683066023100b4b4acb000317427c4eb59be8081c590552caf0277d436321017038f49c6574a2584f5bd4dd6b403ea569cd80e13e4960231009359b97a5e5d11dbcea3a53c682e24249ffbd4874fc3c6c47d4e3ce60b12df74647f638a4119c1f95c2a71a587ee40e50302047c435bb500683066023100f92e067a0a72d090e7feb578b3f4a04fb99ae89e612a9cf2afb7f60d84721999512e14b594a877ba6079504ef4904216023100a0c3678ac23c20961a601b7ef0a94cf92b367ccc41e195bb2a1836a5ea76d393330b0778f0fd2f285bd1c985e047c7e60302047c435bb50066306402306eac5667ee459d60c6e9eb3adcfd524aba602e333f9c7e73608d171f45a1a9e5689b377de5a483f4d31ee49c3bda59e7023059b7fe23cd85af1eea0980199c2a1792885978169f8619e5c0b1b613807584d8dd46f184d4631bd41d17eb67b32afe540302047c435bb500673065023100d7ca946f5e77629c863527e3f7268368134143c8b126a2073db57ad46c08cc8b630db910f3e50e0f3c7dd64ca63daf2b02300abf13475361c72120561dee3f59b256763c2f0e11e72008cdb31db5005466dcb7a0b630b14948a369e6da1026ae42180302047c435bb5006730650230044da0b56a3c08ea31b1682c0af91fb12d5f9e68c834d5b4c4a32b0d049b43031b66540cc17149c9d64b2c1aea3b8f730231009f71bc629e9cb12d6ab968f1eccb3cd101578885515927e3b8773e1128eb5b56fcc8b0b860f61472671bcb6151c34f340302047c435bb500683066023100910d21bc62c1b7149182f15237efd724520973b502601fe6c08dd0cd6db80c105aa98f260b38dc4ea2c6a7d95a982f18023100e9f47a348ceedae3bf0b6bb8528c52b153c25e70d716a6c688389601d39362d247e4f6828d9c18c7e1ae1ccdef6ee92a0302047c435bb50067306502307e4ac9b044c7d33eeaa675521a3a66eced4f55208b70875c8474f28215243f27c5f3be93e0ae431bf730f7c0aaf0b53f023100ba378bde115ef1d870a001c78190476edff21c2e6066b6877c9553bf09c5c85f52c879d643178f65a07747ba615c066f0302047c435bb50065306302301603d049c20d83f9054f48334b1769242549b04b21c6326d4a298ee8b7a13cbb6f4a3fd1cf25de50481289764ab12723022f6945fe656abd9f7d1b7a78368380ec7743d8aeea7b45d9684625ee115fc59bedfcc848adb07d1df488593643f11c430302047c435bb500673065023100eff635ab5ab1f53901175d05fbbec4104dd88b0f73eb71a1d62604ce7893804063136b4474ef11b1f161f50656ccad7802301827810b5b03d8fd193988d80eaeb7030d0a57f3d0513afe2a7104a2eacd402dfcb295dacc7fd5eb144cf76bac6dab640302047c435bb50067306502307dabd4e5ff31cf92ab10b36cc32ab6436adc151e1b6ef375c9c729e788243bcb03bbeace650da5533d2c0994cb87c552023100fd8131aeebe82bb0902b4626d6498031838aac24325d47b60199c389c19ab8157b0547c357fafac53aa3a241856ec5b20302047c435bb500663064023029f35a02852bb4a3e701d7f59b85e06319658979dd2830fe2afe8c2abed62dda69db692b3082d758337b1b5ac40dbe9f02303bac6f814b61992742556ad9f70a78ecedf66b23172b2bd4f4eff99e09a4af3722d37e3ab0921eb9e57921ca33a56ffa0302047c435bb500673065023100b394ada9d99b8df068fa081c489609863d39f66362ffb969a540b4d7c96edb8e46be8cc616c37c0a11ded0f3ee4b445c02301c803f59b26f772389a39b912c48d7833737d2006e9097896da39bd54d1489e6898ecbe5e73b45c6b3c8b06b1a47231f0302047c435bb500683066023100e340e62d6978b13a107441fbdf9608a854d1f3f79fab313ff299a0d0aa8d94fe9a96512d815bd41d83bb259d67107ca4023100c716613af239ea5e90aa06e3ba7a140187b9f7441c1b371b4ff0790beedaf24abb0b73f1acc58973b8fada10333cb5ce0302047c435bb50066306402306404409e2f8d4566ba0fd81fd0715f0c33a8ba60941504bfc79bee34b08b8582a2b3944d76160cf9492c24b9d880f69a02301896636d98d0a8a14bc3ec21f217e150986d09f9c9d80398b9ac95a1adce87a7e9818dc49d34e90c197405680cc849600302047c435bb500673065023016baceded333a1e300645feac9461eb2d15e1e188e9d893680ca692ac07ab1e5ad1354dcc0d5dbad0badec26ea803c8e023100f1dc74f5deddd897b5f7716f47d9cbb73933d3272583afc4b9d0891786063bf133333e3fa4e281bd84e1a78fc46e2b520302047c435bb50067306502307495184a6edcd624a6375c2a1ae3f3c927901ed61305e290b5b43a42f01b647bb9df45028921874cf5dab9ca8bdbb8f9023100b72c5d2ff836e8f8fc336aeec3e6abced7112c6b8a7ecfccfbba35dfc9ac7525feef59dc6327597cdf8291a12c6917c60302047c435bb5006730650231009db879444e4dc41f9efaa2d2cf0c6301441fe0e40bdaf31dbb9edd337b912af33cfb7bfc235992d320ca4566481d7906023009284fd0a498591f11ad3a90ed8a76a66ad92e4c6bf6cba6a26f19df6ba08d225efd30d315221ad2ef6b18d084e20ebf0302047c435bb5006730650230063ab88523c41bddcbe3f24eaca328ff5f0b90223657d1771ab0824a41023b9b64ba0dc741958327311ce56dfe58a06e023100c7e67ca18b53de3466d6253b792f481be0b7affa7b5aa535905c7dcc63acf09e683b82de2fad1b64e86e78816621afc00302047c435bb500673065023100f33621a185c052a2f115eff5b4c0c5c368751c8e52be67984ffb3d4077948a1aec4ac8c7c6fe8acb7cad892bd9c7388d023049eada89c99d01a0730e3bccf22c1b719193f7957be0431ba231828c1decd3ecc8064c1dd3bfbc7ae3120bba34c8e9110302047c435bb50066306402306589d7137380c001d5f0c4ddb94185a1e48100f25a259f463a77ed4add76a20f7e181d50ce23e3f87a8e5f063b67528c02307c9447c2155c1470a672974749a45964a3b49a6c92600606bd6310a21ad6d0590b9c1dd1dc2cac137e23ff68d40f29880302047c435bb5006730650230798570141d34af9740254752221e6c0bfb5c87cad66befefd65de0d6e23f158a87ba97530af37784df69593f9350d9f002310098ca656b20e79a0f61bf9ba6669943d7c062f1146efa1d8ac0bae486a5ccbb521ee9bda1da59413c578d971fada4f2b70302047c435bb500663064023005e483f351784471a0289fd972d52c9165f38878b1c39c903e8df1daa3059ad5f513604619c9d4b6ca22fd4111dc25a5023054160545a768b509f3d0b7f156171d8a5e62cfe11b659fd03daccd497906acff3f437e88eaae3b56dabffaefd99fcba60302047c435bb50067306502304def9ba801d5c3c8f9b8ffe03de27cc17852c905884d5ab4058923bc03217b20fdcd4b756c2c41a2e457d9284aee1880023100873548b4e9620f38bcc0c20acc4ac631790f5714a810ec70890d87cf24222157a4c3efc75bc2cec846ab868048cfcdd50302047c435bb500673065023100d392af8ff618321fc14895970d45c461d4f71b319c27f89fd0447626666af8b43f8793f1cd72c772eb9fe4c2259680ac02303f1ad4537eb6d9cf2949941a9c46a07ac19cc8ce56d985a8981135ead2ad170514b0ec9eeda09f0d370f0d460ef8693b0302047c435bb5006730650230261238973cfd54aaa0fc5d93953276429f3a15dd60556b199a8057e62bac15f43927ce7e527633619e1ad53fb2f89ea7023100ce3b661f194d52bb38b0412d6183054b917d6bb9cca1f1a79a6272182a94cc65550273f6807ba9984a3d2ae903ee93660302047c435bb500673065023100b9e8522732f8ff4d3bc8252426fe226386c6101d52858c8a10ccad6e3b26c38d0a3ff53691cc1356b9c6abcf16b3eb3f023018258a782d216297defdfe5716e64e754e079e16f5df6cce6df7fc9a5c4a15359c7c11abc8549abcd08c81ea5fd469000302047c435bb500673065023100e5d7bf7c61bb107c372f17be25daff3dd479e9fe6d1e167f5c930b82ca42dd60f802ee03e4860429341626159bb81641023023412ab51ab5a5031d1fc634de6f31c3022cea1a566b2504bdd7bd046e4cedf947a5dc94b81de92a7de760f253e56c200302047c435bb5006730650230259fb20e7db0f34c38b63654feadfdda1877f2c8336514f26dd00ad85056ab5d87da2d3a993ec0763a5b8efdc93a4f8602310094cc7e96498f5a83ca568bfb0d658d93ef5a49220511adf33b4f853f9c7f53636a2315545892b7f30955e5f56b2050e10302047c435bb500673065023100da91248080841d602661a296d35903e385c0e525bf0a5728bb7655c0e714cc31726b9d7a34ad8e95db9bd38045bec7bf023039b18c4ea41f4808c91b8b9761321b031b6500408bf46bf14ef7dcdfb8d78515af602fd5eb669aff22472c2d506b673b0302047c435bb500663064023068febe464a38be4b3b35c07d0fac57417b5f87a57a999129f8eee66b90102799407199256c0df8680fdb7b597dfb1f47023046758ee85901bfc07953e822e6dee627a87649fd75c7e399ed695262aecf69ec0002d6410b5a0abc6ec8ac92876830410302047c435bb500673065023025e6fc3548fde38ec497f5f2cf7b364b5edb5b85f3f62c64ec6bee0db5ae786c524ae250c3d589f348a5ee84eb9f7e3e023100ccd6c6ac3988c4b8437f753eaeab8cb89b0cc5c98ec282b6ffc7216ea61de105537ca409e425cde8d26a4c40e417e9c90302047c435bb500673065023100a5d8b532f0f3334500d6e41a47690be46a56318b7236770b15819522ab49d1fdbfe03ec839ce87aa25f37a4a790745be02301a3c53181f436dc8df25c12fb9e24e2f0066f515f228d12c7da0788acbcd6acfeb370da87592ab3c4799bdcd05cd63220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008c1741f04156526f96f462c3a1d3ec71e59db41d62f0a13eb4d2e2846e5b9c52f98abfdca38c2ca86469fe06aafa409c02306d8fc7a26a415e60a416b7a99bcf809dc5a79f86a7cf4586f20a3817a467b62de8c895e69d8bdc79f02e3c12765e17ac0302047c435bb500683066023100e5bcc8799b68a1d66dd3460c3d9ad56a94373a5b36ed8c0e876f6399b3ab5103b705b9fb22e1cee945640ae490c2f47d023100c6eccae14fcad3380e9a3a0af9f914dce09fb5c92364b223660805ec0296aebf423e0fe5ab9e969dd64ae10a2adf6d5d0302047c435bb5006830660231008209e5d201240f93942fa3af68de0520a265cc02baadce0609beac9a56050d6881791793416d7ef2483ccd79ba9250ae023100a66abc2f5aa268e81c6787acb308b9977125e22f96fd3cd24164286f78d12014fbcc6cd69022574ef32bd8e9e069584b0302047c435bb50066306402304d9888ad853358be95c4387c327da4e6ce2b97b87526664235c8146c033b2f21c525984be92a803e6212537e5610413f02307fc1ee2c18b07ff5606d28480b9889fe65d1c131d9131aa35bceb63b17f3ac6a1f52e675bd9dc9bee7a31d0f763ba0150302047c435bb50067306502305102e5a410ff2e781ef9369f04038da25623fde9c5e9aaba2d160c26340b6268101af4f64772e36d399aa5736948c06e023100e7cdbfa02d0b788ea487fd872b5955d9ab603fbc94853f6d59f543f3242d3a1e8864ac3583b8485f7b327b12a3c9309f0302047c435bb500683066023100cf42653d5dadfc6fffd644df96dd6649e3e36ae4957ca7627ce82a10e66ed6334d1dc16b4b79430340b558c296aae793023100d2bb007b95b23456aec4f6615042624dc916af4fdb031ca581fe7fa0ea065fb5880f0487b959899285ae6a503243dc800302047c435bb500683066023100c988fd9eecf495dc426588d122d31c92cabe540e1098f0b90f0228307cda41f19051158bf5672f3fa4019a5b6d0377bb023100899b5f7434cde8283ca8c3e020a6cc298f4fb89e7b96ba20e5e412ec54fee34811785aa82bdc8905e9f31de7722290800302047c435bb500683066023100d5adece56e54b4ce8cc7c1d601941a5f773aea189d82e0bec8d6a497c9152173a3a99a7cd6915e634ea1fa9cc15cba74023100bf5aad1f1136a277fba136ad9113fa57466077773f6ea84e7369cfa6fab00ceb255c5d94712b9938f9fcaf52cf0f41150302047c435bb5006630640230683acb876db5f7efd664f7f57f808cfa871507381a3fa6165e2e2355da71bcf015a689e8955a4f5c40b6d27f87214a5d02303f58741aea282f3dc413f2e484dc2418b6de981c7cd1f7ffe93353282beea72fae9a8a24659dbf91c3e4729c8b349cbe0302047c435bb500683066023100b9a178bc11ba001e60e812185079170939ec2b278a173077953ec8b57ee3ce50a9f172383653c939af5a96b1c183bb53023100a39b43f691a81ffc9484d966eb83204873aec949d732d3bda34cb7812434885f9ad6313ad7ff38defb6db8fc88dc72e10302047c435bb50067306502300101e2cac8217ab15a4ad5b1962ab893f2ba1279191cb5ed86d62c96a91ff063ba3926b555b5258ad5156d4e10f72411023100d904947dd2eb538566101383639f77984abe6a6ecc27c8f21de07dc8e98c53b2e1091decdc031a03859b9af02b60281b0302047c435bb500673065023100dad8217a2c1e4c7ae4fe84de41d2940550cc5fc920dbf9ebcd63d6c181bfb4560389a6367b236a4364c1a786b95e923f023015b81565cbe0321b58c468f2cd89d1046af5b27e2c7d957a9baff7612a113d1174e2f46cbdd64e5d17b1707583a340190302047c435bb500673065023100b30ec230c8a9501dd25a55878298c5d641fa01986a37d614376340cba0e34e859170d8d174fb06813eda432a39c8b2c10230608bf6a1ce197942dd92ea5868cd50d443c2ee5a50f4bc70960b4dc3cca2002d43d6376f47dab5a626168d1127cc84c50302047c435bb5006730650230045baf7028e2fc471d93b0b9074a9d7b2383ba20f5ed3efe4eb24f6cd1d9e57ce45ab9151a4bf9efb98b9300e57f4092023100f11a608b8a706d2fcb8f5201880b378dc0677e92a8b02f0f51724c282d87bf8a03e8d401eff6dfb0d60d7c93bfe917730302047c435bb500683066023100d136cb5f15477c7e51a6da4adaedfe6147792d28d47257375bfff95555abc97e31055a6f665cb6655270b3fb89203ba20231009f2e334b0fea5cee47e823db0a48eda03c38a90c9336c165958cf2592c98d70587bad0725c3c29de297b77c9aa42bc7e0302047c435bb500673065023100de30ac55a0e05e1b32cd29415aa1bd8f61bc4087c66ae6eac3a3ad016ee47cec70bc76767c46b63b38a1660289e3a69302304a95f34261f1b5d5d223480233a4b86d5cc3f8e2935cff14bff1f3f4c3eb8187ca2c7ce4a60a11f9b0d548d695edf6a40302047c435bb5006630640230108d175600166b4ee4ac4aaca02a942029570e11ac5f825cf20d1d8c308c50f514912ff03fbba9f26acd87bc029a8864023012985edf8326c7bc3f6adc7351fa594b1513806f705320681d81ac37024e1ed6eb25f7518fed7c9492d6dcc9db6cb0710302047c435bb500683066023100edae39fb3f5b6e807481564fa2a38f590a4ab1267f063bf39fbc04024164485d28161b6e48054d0ad56b8684f27b91b202310094df1547e27765c6121f08546be37523d851fa98e9c7ad0a9e06b4e176c827de0b9de93d130c0ccedc3d7e89ac009deb0302047c435bb500683066023100cdbc8d9029826b0fa007510a63af8fb4b0776b2ef46bbf4e649e3d2142333a4977566218ba000e1c85c0e938fb55f43c023100a8d27adcc40a0f3cd0bee4ddc6a8f85beefbb091ca16b49588e81c07447ccbac706cdfa0d210b61ea3f5aeb3f2c6a5630302047c435bb50067306502306e1fac1baf24a8db46babe4e93688ec9e665cd4f7e3f33ca0e54a17e3ba323d8cfe83a29c7bf5d8bb53ebdb048898971023100e126e576bff4bb441d12c91436fa58774638081dbcdcdec7fc9e8c4de45e73b2308e2f779182a0eb73a256590e7d00f20302047c435bb50067306502301673137b22e62d6e11bbac35b16439143182fddeb3d93ee85ee2a41a47754f08a13e6bbcbf62cc5e05045ce97ee65fb9023100ecbcbf0a505c67d0291625546e184333f5690613ea179395689a5edcc11398c4770ee66a3aebb22b9f79b89ca8514f2a0302047c435bb500683066023100822f9cf015b8ecc70a97c502920cd7cc8f008a54b91abb19925cd9fd6c3f18b09d6a5c89ce683b687934738ef15db04b0231008ab0af5e7b099640fdaa32935539cfb6c898e6d2f11643ea161a84805858cb616ea98142f58cbb31a9018e89fd87d2e90302047c435bb50066306402302bca73a12e664025b594f57748a5d1a49adf1780c307901605002a5ef5a737b75145909e7d8facec25ae9843b23f3d160230576d3980ffd0d9a1478fa364024633634787eab9ec1ed678743817f807d65c10bcdab6994804de5a6ad6e821ed74c8ff0302047c435bb50066306402304a67117ef32af99b321868b2fe0dfa688dc35cf3121da5ee4010e1c8def405f927a3b5e1bb2dcb7e5ba8cc4f80faeaea02300b8fdd83e428f346cce8b97eb2d1e14fb144d0a35a356a8e84d641b6cb97ae13b4a871f45ff2b8012ac0dcfda9e761cf0302047c435bb500663064023063fd35487714f533ab7f3e1097906071c6635e24e29cef25d9eadddd1c1b9ea5c0d0cb13af4c7b575395407b7a64674f0230265172edd1d3d64138c58a6fc18553f307cd653c9f9adcbbda4c6006ddf5634cb6a0f064aecdbc607f03f7d28eb894870302047c435bb50067306502305c4337e871cc7d53ef34f13aff5dd9a8b7cab3925245db1e0ac8e5e7ac91cedd8bf4d481290cea5c301e212fd2163cf4023100a99b2bf6361c3b043f4c578c4dee100899fce8af6443fe6ad88a637e97ca701106c3a54fb911d10bd613db2b8fbab6c60302047c435bb50067306502307064dd5699b4b876300b090c22f702a863a6e2e499327ad2607d95637c6c24682397422a5d800dbc17c3ef9feefba0a6023100eb2860d4ecca685415e0dc05bddfd2364372ee69cdd6d4ae4171c43354bd37b1a9327fe992e2fc5fb07ec108514597d60302047c435bb500673065023100d7c55baf753fd1d932113926cea61841dbdd0c5c085bae0c8ac34b400bbd1500c13068ca7d554ca5ee9f07f3613dbe1102303df466472d820c3588c46305e13f8290a4258227c4509384d8cf813e8b6e1428e73ce996f06e6196474ccf26d6a26e540302047c435bb5006630640230527e1affafd2edb07586698eb08b269bb099fefa891d5c79f342bb8a349fae38ad9bb951677481f6b20f4d14918a86600230511bad838ce9b8505ba7dbbbda25f521795c08cd380cf057d927d5b037676b990b40a8404fb0bbd25c714b71084015b20302047c435bb500673065023100d58ece51b8a237935a87168f815f942a5c8ece5b928cb1d105c162226a7715bfc854a74c35c5c3917944fd73372483520230740a772a03d7773d9e38d09143922958becb7b595030f5ce4bfcdad2289db5cbb01b58eb128ca1a430f8c48a87c04c560302047c435bb5006730650230310df23ba0ab5bf7affc0d7e9278414ad001742fb4080db77bb080356d88d1d986dde6a176b6e814ca87d1cf1fb0c22e023100d43994fa4f07acf4eac8d6c796aeb38e215c3e90cd30ffefd70c9fbbe0f313b6c82520d503e1a19db9de50765e71b1d70302047c435bb5006630640230223b948ad0b04d7ae8a0e8f0c05eeafb36a5150b2910375eb5a9871c7c68d6b3cc80922dee2f3b2af27f0bc583625bfc023022fcce3b6e670296d4195524df26637ebe873ff317080a62d2efeb17a963e1e5538ca47fb3cbd24edb935e6b1ff3ecc80302047c435bb5006830660231009b7cdb9c58cc3717645cff2c2d53c6f0ce573914af1b0178d8597aa26393522543ed603f538de8de1eb56912940f8e600231008d41efcab0a92fcf43673a57815c933972a548b73388c954d1d403aa0319f1a80d960e01f38ae21b494b1f52fd7de5780302047c435bb500673065023100e8305bd590849b5c738644342ef423d4314e887e0d0f2cd64753b2dd0ed767509f7723cd26c079d9ccddf857a61ede5f023043a1c52154fd01a14d5f45280a1ad04455147ffdec3fec5d10d7de8cf0f2be59621cb6c64c7dafe7ee6bdfbc02434ad20302047c435bb5006830660231009ed0a78cb8a823d8232f8d4627e48f44e40f5647c30fa2280f5c143560fa5a2877048d9ff4dce52f44226698c9c7ff1b0231008974a303bd2f1da591c89ba772a8895c0283c514d790563644091faf6efbb956d1cff5735684230b2ad74b0135fa38440302047c435bb500673065023076c54641b1365097921393db00aeb631f1aa3e92e5649d42022d733d81f9a150458c6cbc47d37e07da2e1be14db227680231008f5df3a98d6e9a8cb4ca516d7327bc8191cc784c526dd1dc2ad280dbfb829fb06b3e8f48114240de459a4d63a55404f10302047c435bb500663064023006561652557906ccd241e4bbb630913cbe4852e3eb5a71bbc2dcc9581118a5641e413621cc368675ab2fd2477c8dfa0d023073e2ffbce546071b8839fb5e950fa5c62868bb326667fc5ea701dd02e3428c9ba3d4dd467799ec9cb85d022b937510e50302047c435bb500683066023100ca4a822618ea371d8d8c87825b6f25e903995bc7d085645e1514f6272a7fc9095f469d1fea341b5f75e8eb1da6819038023100f39923ffbd9ce029c4aab4c8435b1f33cafc9093c01bed82148e532025007f326c39aea8ae7ac2c2fc936d0a9fb7877b0302047c435bb500673065023100ed89baa9b1460165daa1ef707fbc280a7383c6d635d8abb8e854a432b6d1db8a08803918ff1021b7cd332ad517c432dd02303da478e2d74a9a6e1d640b002a4d9c88749ca1df5b4f41790a10f4c72569661c2b2e15a047fb38ea8dd3d2f319d0fcb90302047c435bb50067306502310090459a5bb22edfb969cfb2ab062766b31bc213ea09905a8c5470be5f8c4e399e949a2eb1f91806fd838c8889852e5fcf02307dee8d88f3bfa144edc47d9e3db64d54a72048f938d282bd279304cd51712a5f38aafef34765c136e0f5643ea4d9962a0302047c435bb500683066023100cd3339bab6b7e76f111525c8bd415b029ddf97286438479c28595a62bf0ce64a386bffd8dff6b67dcd05a5c893ea3fbc023100e0bba054036f55821326531f556336dabb57af0bd1e354a6165423b7ea97e14ee86573cfe808d2745e369aef7aee554e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230077eafa500da76ea9e27961eafb4bc699a3b12f6b7a1b76fc2c63aa766dd96a37e5c53b11c62e10fb1b0d2a635de61ea023100cc0fa54ac672e47e79ad54c1f9bca8f1817abaae0e0f37bfd6dcb4c31c1fcb90cc1ae0198daf99b5140999e8918643760302047c435bb50066306402307b65cca3bbf738118c7744756ec16c749f4de72fe62097f98101d632e5caf174eca39aa8f29032dd6ff6da2acff9b14302300317737444d5e9de9e5ac8fddc7d74c31b9925d1db7a22a954c1049a621e8a5c7ea5e61ab6fd2ddf52d9ee7de135a7530302047c435bb5006730650230251ec6c1a4636d735be6dea8215b1264f3fe1587e3f68c8196e538acc000250a3cee61228ae7fa86f3a9457f1876c904023100d7a833e0e5dcf27f711c084d9d82f808dfbeef9cf7ac7269826f15ebd5d8f8dcbd907c64d71664fa6256c021ec002d140302047c435bb500673065023064cf82864ccd1f3c41289900ab92aafd7fa425ccaefd85f78f92338704492b84382a8aa205f388887661a3f2e3090da9023100a4e5656475fb690244fa9d926c81257e304bda37277793e8a79b07aefe60e80869a49f5b238a8d23206b5680c4327d280302047c435bb500673065023100e9d25f895703da06e6fad591de81927ffe03e82acdacb0973087b404982bdfd0f50a62ce5abe0874c898cda932317df602303fc5b706e69fe0258e15ac2a224de775286038689c51524f273646485d1be93155f18df1dddf973d26f0ccd0135670c30302047c435bb5006830660231009533506c2120ee1076b86216540929c43c28d68fc0c8a6163b17c1de1b630b022c652ea5f79192379d197afcd72a76d7023100e0e2ed8099d08bfaf572180e2f2d8cb1f5465816aa33457b5e8787858208f4a656559bb3248242dc5aefd75c48885eeb0302047c435bb50066306402304b211868ad156300e8ce59c8d898245d098f2f1998ba3776877a3b1c7423eb2e17407cb2a63d199fb0e2d98cae6ce94d023021734cfb160e6e6b912d736a96ec9c79752502a8da4829411164fda3743971eddb462867d170d0ecae8962d15e9ec24c0302047c435bb500683066023100c9dfab4749fe426afc24b8b05909dc5ca68408fbd7463914d0d4078b3b427b1d2246ce889f99bdcea14e91f933c78f900231008325dfda433c5c846a2a530fe22553624729b3954c3acc95a2bc85f2b8c54958c5feac899c11f1147453d46e0e1ca14d0302047c435bb500673065023100f18405615c5abef44dff539d836c3501b4ac22e2b816089f31d62c7c7bf0d4cc4dcb35cc27f9bbe3140841187c651284023025662732985768a1c6427457c45661165e5ad2d211352e8041f30a7fc2bcb38cfc2a4dd5a1d7084acd492e1cac7330600302047c435bb500683066023100a9b25bbb6037f10cca36d93824f4dc74dfae764c3abcae9f529d09181b0fe5aa74d1735eb616e6583d71b5319e8e3234023100cee82cd0bf8e389b201f484dfde2a91f187907eb3beb9eb7c80385ee92a0e59c84d48dc0a52264465623325386f76eac0302047c435bb500673065023100e8906cd95a7fd9bcee254da0a44d976f052f68b51f86e383b7f48c83bc72a7c3cee9509b2ac76b11450082364f7457eb023065ce36e278f8a8c184247d54811e94a44e1f949952e53145fdf2b5476e2488fce78f87088ea55f44a0183bdb140d5af90302047c435bb500683066023100a0a8c5d19dee6d43789f4bf85fbdecb7628acdcd5c566678f45269750612e6482d02a18197cac1d13e75ba996bb756a3023100b17eba56ed1337e88d22414c9999191f9b5418192020dce9c3baa7f943507d0b3627aea8370f21febc8f230a96beaf3e0302047c435bb500673065023100a82129958245619f0e8ba503180df04b79e4c11acd27379bf286399616f75ce996063603518ba600a4867743b09964de02306a7641b526e60335abe8ab47500e71490e0637e63e023599ff1d356b5edd650fa09fb3e418233034cb66281e05caaf430302047c435bb50067306502303ebb22f8a3b0a4b442fa8181277bdd859e78c7e33dad42ae5c9f275d8d223353fd38f32d1791ec9d319c086b1ba70c4f023100fb533ec3a3a9b0379a14c32a5f16f67dcff476a53282812e72f91b3382f5229736fb0350721735b135a9d983fe9db42c0302047c435bb500683066023100e2a71408fe2901772969890c1e3e34af4b372d9f6a183a68213fbc0451433785512faa09f566ff94465602936a9549c7023100efe6e3df4e55e4590d037dc37f3d8065551dc844bf3cdcc6b6d66c3b43a3520181d9d1b206344a0168dd1756c4cd8b130302047c435bb500673065023026556dba4f532f64f7f8117785b385306c45c366b5871177fc9df24116a9b83440699db51572e31939cae64894dec956023100e44fd8b4c99153b17af89dc5ec57cd881030f884242e6a7a4f5fb3d9ed7451dcab57dd4997ee890bf9ca9d31f08596190302047c435bb500673065023100fa7c40c2325c91b8e58cd94289a51b62416b8edf8062e6ac1f2260d1871a2202b12d89f86c6eddaad92c3198456fb3be0230149ecc436d298f509ad8d167e89c07b4a52284ca035f50fe9ec3e46d3aaca84ad50bb6875297526f2db359a80c3609b10302047c435bb500683066023100a505781b1fa3d7075667f04be0a8e07184079c07494c509ab78a6568d0ee1db03a9b7c7ab604f4bca1c6e1a8cb9ff38702310080ff175d5432cb9afca0a2abb65fb35d4bf1e234e78c5a624be2f4156858352de857c4847ccf73ced4c281b94c130ac60302047c435bb5006730650230702fc4c310da6c2b7c402ebf60eeb37a9d664535c6bef47fc9c458afc2223f9901302766a69c1856080343f9d2d86d0102310094e440002e2ee8919ff027b7466f5ea660c08d3ecd9079f4b0644a5663b3dfc3b9733a5704bad7ba336f69d01bb6c2ee0302047c435bb500683066023100d49946caab7c4af5c28374b2ee2f2e344ce116e87230cdb4ed841f63b089fe5ace3b12c7b888c247e1f0e264d00815ea0231009395ccc4f95b1a3cddba107250fea23b32a0c9622f790bad48ddd19f219979b9948c642416769c51a954f867537d47460302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e927a188008b635465a7afefe34aeeed0f6a3a73f02d39c104bf07fe2ca72fc9f7949c867f3316569292be0dff75fa240231009fcf65392b2abfa5071aee65fb550b90548fc585c636e42b3df27ae1370868c85af7dafa0dc7d7787ddf251f050096a40302047c435bb500663064023031e06a8692c380252eda5f48774533200269f00929cf8f7199f6af3b4cdcf93ab043eb8d9970d816de369b677345fcad0230214c6a69ebb290f02a48c5e8df5e9d6e8d42c174c15c92b49bdc70de3604b11a58ae038d685cf9a7dc5e88dfad19b1ff0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023050a4a9c1b1123754d0aef39843aadeadc01baa5c013f93bb1ffc56ca6e8ceda14f6bbe988734fd6cc55ac77004df4dbe02310082b8a2c10cc611f023f23b3bc655d0de6b1c7905fa020dea23991094bf57f93f8f6186d8606d21d2bc2944195f8035090302047c435bb500673065023046c662a43e70688843b9957867e1206cc1dcc4a60a2eb40888c0f786e71b0dd52690cef10c7983b4cfa210e30d2f700d023100c2006529624bd41e47fe0803dd0512051cdeaec69e8dc059943138545b62dce758f87a9f42341c5b93a3855a60a8af850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f11899c2c28ac57ca2d376bcc83fe0bdc87497b5820ab8f2fe17bc79e34e80389634b372a634e4dd4a3b5e817ba92800023100fc26c1d7aae09c61c3105262abae566407e1060c8f84de5a1d1c6fad42e7593820a0d239eae4ce933532bff6be9b442d0302047c435bb500683066023100a26cfd369b4949839a81c8227e8b4742055d4af009aaf050e0e1e75888e7172ffdbd07f49bcf652a60eadddd6d2ce513023100cb060d99fd64c31c53ec900c8c01793a399e23c695eab8021e6b3c0525fb410e805aa0bc71e40f3309e37653d0e2e7150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023012ec65d2a3ae8d10b070d35ab7fd96bbc16b9dce641a3b8755f6bcdbaeeb4731a16e441a79d4dfc2a171d0e3969665670230488098de2628798d8a1d3a9c278fc762b994292e853b800373564f0c71cc2ead18d5607a67e1e752995e6326de48285a0302047c435bb500673065023100a5f2b98c5b86adb96f73f2bd7d458132f7e60c2a5c0162de182749aeb78ef9a98065f085a8c34a98dca2dfc3da2359b00230476fde594e97e75b5ea285a233798f462971374d2293085f7aae792a1578158385b49945dfc01e424b383dfefc32fcbb0302047c435bb500683066023100b1d69377fe610ccc54356513b966194a0338b3f06fa0ef594116c6b87eb20dc3bc62ce6b0aef0d7ac85d875f7c473dc7023100e8a0e87bad53faf4f5d1e0036b3b75ff4440501a72c47e9981c20ebb2c90f31c595d21de5cac3996595e556573e475080302047c435bb5006630640230180fa68581b422a096c8d1693c8759c02ad1cb9bfdd87829630883420fb99c424431349fee921b233060aa36d0506d8f02300783b16d28aaba7373447960234a68ae035983db3120db6cc51a1e79e466496fc6031e65a55048e7f91dea2a5e8637240302047c435bb500683066023100cb78d9b2a67c2d7e3ed57e5e00c1607142931f926b1b463b53c68848d4b82aa9af02e1967ebe69aa3690bc2189af32bd023100db4d2405ef8fa6db3c57e9a97f3e2c76060c3533e2fedc5162a76f83479a72c2b338ed89f7d3a49a221df35e36e26a040302047c435bb500663064023033b465060abbb14a3198ea139d47e4524dc8d0e8a10afe41ef960a5736c29197ca2b0cbde717542401c951ace229b6aa023073ea6afc17bd7546eb0d1d4b0f75051ca36ed6ed19d3104dd9d38b3bf9ee3a523f2145675c19e670d22d1500b7d8f7260302047c435bb5006830660231008b562e915b24edd13b45518081e2a9d7c3be69dcf9bed4dae0c6512fc972995f250825abc85b0058e08901c35a29b633023100c27dba8d9eea17c1a2f6cf78cd2150496db29476cccd85600e5e075b5db6c344790aa229a5098d20c253419881654b0e0302047c435bb50068306602310080b1e8c3eb28fec9ba26b07b1a6357170cbd09f003f179124344afede5b2f2550b050548c7c8d9ae178f14ebd1fa030e023100a9f0c058ac982df062c6f7410b8f19de0b9f4b250d4c5c98fc5a759ac8fcef9bdfcf27d23d3bff03dc591266ca24dc420302047c435bb500683066023100b0fc538860db92553704632671b87372ed83ce0bc56954258b3230bc4f13707131814ff566a596190055f6dcae75d397023100db11898ae36002335a96cbfdcbe292f061a6d19413ddd94e21c95976159d981f9c5e208d4acafb350dcb8ac1af5a95410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c4c3d96670b285d9174e8236145e57caafaa294549b8d19d7300d31c343abec2c5bf46028e19877ae2a19acc5d8d956102306d33031882554cc1dc0bbab37d8794b28b562a0c3dcd51e00eea122c174c84e16a0177f76c7d878f8112841b0a1ae0b70302047c435bb50067306502304e3323ff3a55912095434ea7f3ff48a70df892d08db6341244f5a88e10ca3da70de823222a3756f83d6ff62dc877b20f023100b146b124111d914455838717715ed00edbcd8a5ecd36bff176b2c3fa682774a7b1c10b3e14fa0dc7f3b755df3c4b646c0302047c435bb500673065023100fb7de61035a7a0fb497d0ae6c6425fb2c0a26f9dbb9aa2c909f79199c9f7253a3ee6929d34bd5e3c65ae8d818893cec902303315d4727f735931923af4f6a1841a1e4856c9e1ca230525980dad50b24ba836b1c73408913d99cd50f89254fe8769c10302047c435bb500673065023100adb3e7d5d115f50f7d051e9230876f6bd0449fd3736cf401c40557f01f5c642a220379c9cfcc9811ff2bcdfd3a61f0840230348867fe1ca05bbad57f9c9697a82a1c67efa4a26f00d592366dafbb5b791845c3582eac301ae6417169e475653c9c040302047c435bb5006630640230507207095082ab67dbddeb2f00a04567957d3f3ee5a3c4f5e957ea26c0ae89834c534435f70cef31fabebcd7db4aacba0230457e0887d30d28f501d47c68457121612c444c130f0422ab60b88c8c475d95cccefb8ebbb28388bce4cecbc829e3c4740302047c435bb500683066023100e2677c254dfef98b79c9c76388991c96bf313b397ceadf208eff243622852dfbe6a9c5544634c81193ae66b9891b4dfd023100841aa5eaa58da6a46965d5538da48fcd6a3cf55f6d79e5c252076de4ceb3f1501db1afeddfce7b4b2d238c93e721dc160302047c435bb50067306502300d2fc4ff11d817275de70980ee5024f3752b99c2d64beba5c83184ee73b334c1f01206f2f07ce4916c7a534a00501bd3023100d136c894b3d30385050ff8495993b45312ad8de234ac5c269edaaacda513b1664c0e6211d9c440b09ce5127ef47827a00302047c435bb500673065023100f24a468e186c8dc8f92d51c8ce10a90fd7de38d0adfffb9913620d02241f1706cb694d526770af6bbcad804bb297987a02306af237c9affb705776eca72c9361fe01f9da9d4d765b5ab81d2899741bb24728c8eca3a6fa4b6010504eb3f7e43baec20302047c435bb500673065023100b60769e213d5d6cd1bc48cafcec08f993eb7950cce0435d3755cf8d1f6675b58021ff3bdb4b45cfb9cf2ad542937e9060230382f22198b7b4ffc1fd93c42d7feb111f58d3d172f22cef3511f9a74a588b0a70f95ec50738e6970200327b0242749b70302047c435bb50067306502304764fe7a1cb4b302da08900bcf29cb9777186b0d11b59aedc8e2d9f99758e165135f88618480dcd3c68a5ccfca010da5023100bead5cc887f9bffb78eff302225f1fe02c54e6fc708d3fd4337a644e72f8be972012d3135c72c0d7f884f6ed8984e60b0302047c435bb500673065023100a105b76271d9feccce10d14416cab04c0e6b64440f7a36e83c8277a9de082c478a120af58789571ee97cc16c69042180023036beed0e559c1bc814b6bc751d625c0db16670775802bf890b8ba2a23a5264a4190bcce65da35c8f49550274687030320302047c435bb50067306502306bbd3a5fa9fcc62228c0344572adaf4eeac0866bb34180d3b152fad10041103a6d810c5838c7949364e14779c08ba0470231008892ffdde5029e34ba0dffc23e96f50910c82b4e99d382ec24c53b1454aa9f575a9fb5969a9a8b58dcbf970e6bd144910302047c435bb500683066023100de764c4caba233013e34182c6312ade58006d24140eb837858a7fa4ad1422766fec0d7aecbb0bf24d5e9bcce69d9366a0231008ea4f0b203dc226f5f401854607400f99109868ddc6ebf3023914ecc57121489e5b571d9e671c3727f17b17fc6a90fbe0302047c435bb50067306502304a85549a71a9e209f97f758ceae13cfc01f0a520f8f093fce5431d15724f051d3789c78b6f87d6f3ae8de0d737c4d94b0231008db374d2c61979fe9ae9569750e5200bc541f40540a0e6c12d80216ce00cb406abecd10a90936fcd74d675414d1a4ac60302047c435bb500683066023100d003b1a163545ddb8744cae8202bc05887d1dbac629a1ceae10a49a999ed29532bbcbb50a02f80642216959ea4430e5d023100907e3a4196edd313da0badbfe3806554b9b4ccbc801b9d92ff4f2620487aff03e6202524b41ba4d616c190cbd3b838b90302047c435bb500673065023100ffaeaa057e91c6d5ea4d045aa20fbc5297b39ae3a101a7dcf7f254af97f12a80cb2d100b00cad4afabbac22d8ae7a02a0230097b154ec98ac1f4245d03a0c90d557ed3452284143c689f2cec6a9ccd90f2756a2340b789840e8ca224fe6dad8e98810302047c435bb50067306502305f6c0f3ac2fc4a4f402efbae0fb01e99b0fa3b68559020025120d3af9571b7b8c90b9bcd05993ad4e0fc0860e9d670dd023100dc6dcb88ea51c1abc56a69eceddd79829151eca4dd3ffa4f5e5b2dd0c67438508555072d6f9883816dfbee06ae5d599f0302047c435bb500683066023100a6fdaab6dd61238a75c9dd8ada54297b9751db5fc31c376bbe06b3f38a5c99f39968385164c3d52cd4ef6ec1536a18f7023100e7b9cb1fd11a828599e9a3e9e5356c366695b14bf1dc664bdddd9a7d677f18a56f2319be2a9ccdf0a78d4fb1894ae59d0302047c435bb5006730650231009cb69a295aa80c86c2d8f188d0b6a24d77007b0304394e0108c205200d9cbded9c14d459772cfb726b992f1123c561ba0230520022349a911b05278686c09d4755acb98a810b6ce7b157460e1e70333d4e53f40a00cfba8a2745d3a4f69bba9aa6120302047c435bb500673065023100d66d2987652535ac758b657bcff344a0cea1393c7cdf90ffb71ff7ed6267b75da16b34e1bfcad85028f4b5392f688bc002306f3517afa4eef586c272387aadbf2e76da4ea749688476b8a126740e7e25f369424510e904cf623e764337d35cccd90e0302047c435bb500683066023100f09ecffa9557c09aa500b6d0b0d600a50ece64987f5b31b18b8e34ecd854dc2e157ff630ca0facebebed88d61f848faa023100b07b2d9efc2d49d391324eea5ad86956ce911ca685cb32376e8d43bfaeefafc85ecdbd7ec9deccc9df0b03c22d1f16100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023000c35b50a59adc5ad2569fe0764d451707176be52bf593ee6dc469664c97b50f5df87f4ecf745f0983f5b4c478359383023100ec31a620a825150e7a49d17f816091832cde0030ebb8a963819ce17be5bd0af77ce2a4fe1046c6a9b4b55956c200cf190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300c3aaf13c3b74995222c5b56ec9875a9407e35d059e0c20c10936fe909b2a15fddc58b00e15027a3e19996b7b8c6f59d023024fd3919b293e393430012ea068bb56f4f20035c5c3beab2c4103ee13a152d02a2bf587e841e9a198916f5e6fc7512720302047c435bb500683066023100f9bf7a3db6f05523cf81e09ea0f6e0f755930ca3199e30dfcd479e24a7736bfb271db9b5560a6acfbf95dc384390f632023100aa016ff966189b22d6ad7815054baefa24c89fb932bcfcd17edd5cd82f24dce6ab8c2c7259eb78d128de08c6a7b5a1780302047c435bb50068306602310091f45fb00792788ef013b2e0f4b031f51af797909562d33206e3c735931324a4be13d474c53cc9ecc6893a736af7710402310094a1390fa17c29d2800f4737f861ef748c7afa33af0a6fa2c7b9c3db5d13221923aa42b1fabc190c13bef1fd87677a500302047c435bb500663064023007df7dc647705698cbbb2fa11fd1894f2bda63c1a8dd95904e0e84e16f765f627f3dded8b75be3de56cd4d7fbee1a33302306bbf49ed77674b1b9061bb0b044917e864737fff2b21bdbd424f5cd47ea3265da9335f862219ee316414a852cdddcaed0302047c435bb500673065023013c9965efb48b38c90e31db8eb84eb74716b903f0bb23d1a2b8f77d627a512333366218956a8bc3a6d185464fbad819d023100cd375448c314f91fb1297c9aa9254d09dd6a6edf174a70954379a90b9c97035dcd7438b6aa6db6a19fac67f9924013540302047c435bb500683066023100beaf9245212a18c90d13490035cee80ef4c43f11a2d318337c0d0c9894ef222068d5029c6fd0bad84327ee3629435d2f023100b2229a62ad7f317699ac9bcda411e99acdded4bdf23a538cb772536dfe3789b7646629ee4f0011a8778afd21877fd02f0302047c435bb50066306402307ace9dbed39c12a96114b965eccec06d65be1a3cacfb6752c5175e9ce6eeceb642cece54090c4120c4ed5bd298695ac902301863a58fba287e49b4ced8db0eed2ef306596df1ab608b493ebc81e47d5c5414d0cf96b6a76a0a5ca52187572f228ebd0302047c435bb500683066023100d2d7da3dec6d7dfdab0378ef698dbfd800e9d5e9ee04c3265dfd3a79d6f97821e601d278ec302e969e553c10cd5e0a4f023100affb13ff5f9c918a850580a3e208f0c482c8abd6356e21932c1a894a2ec06cbc724e031959094132548b61014dedb0100302047c435bb500683066023100ca0efd41dbb358eb20a636c839e15169156faec1a1e11c5cb17c6575d0e64c6687ac4fcbdc1b823d764a4107571d52ae023100ae93057f5d29a1510ddd4b12b0521e9dc65a0b41584d8790ba2aea2735bee981a3f7ea6b6a1aba169bf41a0638653a250302047c435bb500683066023100d653a292303d8e11e1a906c1be5bd205f2b8708c61a94e9af3e2d2e748e7244c67343c59fadc7d0a4d17406f51c31ff50231008189f77657da72e131455f501a576422c1be699463c1b615c92ac8455e9f0c972d91c7008c652c5ed17833793628b0850302047c435bb50066306402305a071b1019665de7d14d66a33701fb1efc1b91611bd04367affe5479777f8762cc706abcc9561f438d4ab1cc83aec4b002302a672f4ca3fa11462768d46dc24f072ff682f7ccc57a98b84834cda0efcf1a442a2b16e5b052bc56e611d811bf4a36680302047c435bb500663064023066e82816cb6cd1222cc19b805c23cf1c88d0aee0501fa0ab347f97420d506dfcab9a277766cd8858a20316d2fe6b998102301d0c26a85098689041c3dd66767e8b50103b31410abb508cba3314cdfdb38dd16d05d0b218d0b2beeea3d6335d8753030302047c435bb50066306402305c416f65484764dc455a43804fdfb84a6d6072f433c41cc0397ef65953c4367ff263ccfd4c9570eff3f97484cdbf466c02306ddec89276080be9e3f15335f48c2edaa97591a6eaf66cbbefb1b480f4590a39a2be46a456e3375fe01a857b665447a70302047c435bb500673065023100e5b2866919b92aaa41e8672a6c769ee8766a03af59cefd157fd8cb9e1e7bf0f173fdaaf5fdedcfdd183b5a31c32c928002307191199835c3803bfcbbdf54460dd8935012247f8e7770b40d21e4f03f1d39a828a7e5895afed26328386dd489eff5480302047c435bb50067306502301897963d6c80e2c0f3df4123a4968c7959d7b214419bec862187baf194585b82c81f0e4645aefa790c961e44a6ddeefd023100e5f7dd68acb095f55d68a1d21aaccee6422c1553ae019b23c57e070364c6fb7463ac37e1e83fee9ee4b568690f985f1a0302047c435bb500673065023055c81325119dab8a031071f48227a40f2153ecb35bb1088474baf7cf02be364f286989ef55779f256d4178333125a6bf023100c999ded920b7b138dbad59abda6846442807a3c0efeb3dc0efe7506834a83edef2f65f5a440502d16505c945527f4c310302047c435bb500673065023100da4ea65533b7317d73ec43b29eb26d3b3a91e8ff90800d8e25497d531005538e7d447044f8c079a62ff3eaa19e1f6a2802307e468323d0a8dc4ef27c3315ad221089daafeb3ced4fed637d2d2c083ca28c1a797a689a1346f8a4d3ddd862cbc7fdec0302047c435bb5006730650230539b24286415aef1207280bdb788be2f34ae0f41bd3e692ad88ab49b73dbbc7d2eff656e5e717c2921bc938e7a2f26b0023100b95a9dc04f1d0a0c79f4ab4e9e1a7936204731e1b7e8448f671a33094a765e9f58c397ea1a2cd8deadac54e3361aab610302047c435bb50066306402305f2b600c877e65cb7817d7d87b7d7c50209eaee330dd136d43ef429af207c212dd8ce05f4d23254376f6ea6f67460a5f023031b034e95f8ad40b9b8e072011d9c61dc7ca89e183847f785092f848ceee2f7afa5170a57f242ee592f05f26f7231b700302047c435bb5006730650231008f4acac8a9704ba515249dd2b4792b47ba0ad504d92a2672dfbe76e6a39d00855217e30d8f0d89fe5271ef3b4b1b3bc302306e2bee5445783fb1f796d64f8dd9baa8c16d34c2f80ea0029cf00c72f4f263391ea0295083a8db416773373a78ee23be0302047c435bb50067306502303afbe3556f64f73fdfa5fc6a743d726c43760141a8f7d9069ac60f5db8985ac07120567440aae4fbfedc40f666779e29023100e6d86bf280af2a078c0e810173c620ca068acd52dcb40bdb84e7e95187a5cdb216302c2027524710e3304eb14bc4e0670302047c435bb50066306402307ddd1cbcbb9f0de1e55e441a8319bccdcfbf6f13288d5003270d74e9a236728cc248eee6facafe17aa0bd360af204a4f02302cb528e339b55527798fefb4f970efbcbfdb122ade3adafe6814d1875f9a885623f1c4cdcb7e0f23a0572984119b7d220302047c435bb5006730650230673e5218e4eeff796da8934dd0ea47343f9ad8c18de153a3ebf3a98b0f658d8253473ef986f2cc90355d1f39dac77f3d023100b93b7d7366df7d55c5254b5c965825e34625b0184161b03c3868088f17f0266c40c0f5ffb5c41dee353674e8e6ea0d1e0302047c435bb500673065023100c0bc0e8146a582a12a34e5871b0d5cc298be2b45b95c4a8b2e11bcf15f99bd16a74f8c91aaa51a0b2b449f596671898302300a0d0e26a720eb17d36c4d887171b3a6ef201794ae3d674f65f57695b17f607f790b79248419faee144a177b76a7f31b0302047c435bb500673065023100d88e470625c20bb3cfd73f55dba7506be8fa6d69e87bfd89406671edcd8b24350b9434a0595845fe10b2b612778f13fd02307110f7a220b5b85b76c1076c3ef2ff0b81aaf27d248b948890c30bdf35fb1f3aa8093dc6a0e4dea5c7a00ffbbd59a3b20302047c435bb500673065023100f2c6007d3251b999ff81cbfe33e80466f949287018bdcbe0a78e688bbaa1040be8aa73830ac8466fbb20d95c17ed1e120230332d00ae124da797eb632b73895c1ed263ea90f8923f7e91bd0f375ed315376963f72de65f6439f6782e8ce98a66a1b20302047c435bb500673065023070b473102d5887ed53cd6526caac2d6425ba56905b19d28c912b43c35d27a16436059a5fd6d0ec886b93855edfdbd129023100bd81168efad2b4c570cde83a2f61a850462011062cd4800bcca8dfb58d8cc1e31931bc61bf7162516f1a5743c2a597290302047c435bb500673065023055eeef14faff33d9e32dc59582a9730d03d2d422a46ea647574b278e30b99dc4b18cef6d958fee9dfb55db1b1faedb67023100a9a72167c7b5a982034d67b6a88f005f28d140c1dfc5fd22fc76d9eb680dc1b80e0ce01dc5cc99dae06dedd522eef1560302047c435bb50067306502302e2f313b13be1902df5b0523d12bd8f020300cb84c94ca7a15caf8736186f798c9e4dc2e7f20e07a8017072a377f5262023100bfffadccf17a0df5ac7d018fe667e279f462ffb65f59a770acbd7564fd3adc8f484f159bef00596e7179584ba749de6d0302047c435bb50067306502305f13fb3958b8dc74b4d4e11aa0ac270f3f3029a53c27a40b0913cfd250f70d59074e4bacfb28e93e64289a369466f05e023100d6fffcd73d547740fb604a81ec186c238e0fdac183793f15e2bfc7a9388eba89997858700e126680be37ad9e495c61180302047c435bb5006630640230231db118edaaa2f5a9ea7b3c8a3fb5c6d7a55d159af0706311f70675c751a9fdcd1937d479fde2c0858f4127dec7426e02302d9ee3547295e245bef0c33ec6fe373f3e56b5bde7551efa32c22f56a7c0c7fa9c336960b2386296a641bcb63d611ec10302047c435bb500673065023100b06a261a8048fe6bee8197eb79068594188c378b20a1d64f88c7be3bee9f4b79ea8dfe22dfe969249a32f196cb1db67f02304cfe30c359396598d8b38504089d4cd9b59ffe0e963d6ebd9f180b5537bf049ea99e224bbcd882edd54db1a3eb1f279d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bd84071046b71d96a5134ffc2786ba47e3406c27652c487bbf647185bd45127093814012813663696a8b8cfcecfc85dc023030cce59be557312f64ee6328a8a84d299e7ccb71f8dae0f15b1dee9e1dcc89062bea296a9040dcb1166b5ae535c67d9c0302047c435bb500673065023100804eba64e5f49d84f357ccd7320c18756ea236cb89ba654bf21fd731f65079b0d617b079a6b25e305012731b8ebc0468023009af9142f152eb2222c666e3c7b4c2c51a5eecdb524b69a697d2b5ae22e50cce493e0050e0c1237bcbdbb3ef5eb382dd0302047c435bb500663064023054efbb36c81d61e75cbcfdc357611f7192e2e7fde0dcf2f35daba9f32bc7494cb066192a5a6eceed3721915ccff30dff02305cb911a6c7ecdad3140cb5e3d950e4623c3bf8cac2bdba425b8d03f8ef7ddf5f281c7a1ce616dd6293c422044372207a0302047c435bb50066306402306f0da8b040b5b5ee6e35ea29faefc0985a51a82b34d87a230740b032aa63e85948e8912e53af699b41f3c68852d1f97702307b1a958af383a8ef7b3676dd7a2d1fe06d3c22d907b8ff53e81871cf0ca96d56d3e852b75cd0716492fd24320e905a6d0302047c435bb500683066023100ca4d0f309c8e48bf72f90a045d0b3c782227799e3d9321a156041f35e51f649c11ee996db3f72dfbce1786c9950c662d023100af61b185ccab1123f35d376b81d89caa666cdd82b803e7e380d9a9887712347ffeb146e64b933718045b1b0900500bcb0302047c435bb500683066023100b5aa26e1c2e2dd24e29781ca796892c3f39791be1ff91878e509159e75f74e3b7aefb2423997b2c5a3251d60167fe56e023100ea078f2473a66a2399dd78162e0c412a024bf21164716051055a7a85400dbba8173cacb468201fb30884a99d51fbc51d0302047c435bb500673065023100e246eb75ecc127e7cd7306e40f3ed080372482cbe3a383c458b2f50b932fec6dcc1ea048e8d5e2216996af1dbe5b34d1023033d5e1043727e2647997eca43605cfdd2ca3eef9568ed4cd38f956ed4032980e91133eadbac1e32c16eaa5a2df1840a30302047c435bb50067306502307fe25143e00c6b7aed0aab2258efeba48bb2cf5324527bdf71a35dfb08b02c48f6e8f4cfa8a102d3899d0ebcbc195dd1023100a0abbc65a52ae798f6864df43622654054a6ab8f9ace77d203dc8f2880c6f763a538699e580ae622819536c455453a640302047c435bb500683066023100fe2e2620f2c6a6ef881bb4e0038347b298adf7e5a1a54197f8a333b7a2532c5bbef1b0e40328c052a7919760070fd15e023100f5709e66578bce981e7687a1b936a1def35e53299d1baaba79ed4109e6d9aeb4933f4e7acf62182806b596b2fecd28a50302047c435bb500663064023045e952dbf01790dd237ec5873f8909b561526975b411b26261bf3e429f766d6b6a48f049da0123bb8ecfc25495988b2f0230062c9a9620ed7877340d58e13221da0792cc7e7cefbd1c5f711152d6eee5f70ac9386e0a1dbc7e6bada6cbd9ffff364e0302047c435bb500673065023100f18a3a656591714a52f84405adb2e1fde7bb23b200d555c13b0aa00e29f85faec10075e3a18049c8c1015e563afcb60a02307607debfb27c6d0b61fd91af73b475863ea9f6daf2eb8f37e9a1779de8918aa495a05e428e5a982e8f9f783ee029e10c0302047c435bb5006630640230127848557b70c02f8e47cc4f5bb83daf870c5726873a4ac7d8d7f71020efd6d61ccd0884b40787e0f46a80c8a5914ca402302084ae79ea6fbebc5fb81c19fd0c38d35890e9b0407030f939982ddc24384551e6dc5fe8a0b1852c995b00f0e433c9e80302047c435bb500683066023100be15d0d7fdbcae880e8347a7a8c97f349a881b688c0b2b2fccbe9ac7ac7e2cb29bc9b63fd4902f65b2bf320acbfb95790231009c4e9f09c5b0a3eb0b6f2545ba5ebd1c088921ae9be6200ff9ba64d97a3ac01c21ff1569a38cb3245085058fc179e1850302047c435bb5006630640230738ab8c6146463a65dccc0f8020075f406910acc7bdd74e249ceb31260c2d659d7ef8d4302dfc866b77ed003b28196c8023012981f2d48b34f3ed2ce5576ab63ca3ef6a9c009af15beb23b75fd82ae045749da3eab3fbdd51e2552c4c6a2411e655e0302047c435bb50067306502304e54b7e485c26d76477a11c2ea2de0d0b55e33d73bf54bb1c3cdca16575768a3d85604ea9a3251fc86eb993e48902a3b0231008f6d7d558447861c278f7648bbdf5559328ac2cdeb3e90529821a6c15d21efe6844c30ac49409a8561d022077641576a0302047c435bb500683066023100c72d448ab7b8d539fe2eaace88aaf8a71fa9e5a2f0b8eb0cb1ecd564362d8e329f1d086af18f9c3f540a5746a7fff74e023100c86150441c249fc2f26da9287bb99c357d33c1327adea343e36af41b5fa890f82b7079bde49d333c871e92bb503c2f2e0302047c435bb50066306402302df73dc54f295d3cd4e910dfcfa74ba6d1dd71790205638df435470310a8f16ac3c5214c6b5ba19c61304b0b4b1c6fdc023018ebb52f019f66b4732685f324ab8fca2b808339291da6b1bc100d5c09a2ce799a50dc1a0cc0a251839cc091914259850302047c435bb50066306402300e824c901f7c7a92464d1b96b35061c20dab79115ba7db5a76003fafc2c3805a4c74d14d2b5ca3ceb0bf4300652f169002305dd5915587065b93c73eec7496f477d7b0ca1889ae87cadf565a8903cc61baa8397febca98008163f7685a23de1c4a630302047c435bb500673065023100a0bb6dc7320d1a7d496e4677ffd1e10424570ec06d453b280352d585562db6ad82a1003c6a363886ec0d74c2b64174cd023005757202f74aff5d10fb2a2c56df73f858619723a9b007b7730f32d8cd501256e4f25c70ffdc1683198057c3b86b664c0302047c435bb500663064023001a7eaae4419b8fafc69672c8581d564f8fa0b695c155c54412ef98bf53138799944e0e0afb181927cb4a1abccf4bc4c02302bfaa5cb682afdd88c90c5c60dd965ccfa073255e2c5b20f9302cde0e6d001125a7a3bdbaec6745897521d1df88694cf0302047c435bb5006730650230027878fef088979fb7b6e02e7d5c56afc654ec751846ac967518443be9e9adf01569db466eaaaac9682923eec69f1b66023100d0fc647c410246413ed5faf46f1e8b2b420d9686bb9e648304cb680dc4e5edd24767e4172a98ece58204b1f172a013870302047c435bb500673065023100801b4236ce98845c512d83b93631ad10cf736c4130b989f8ca696e8ddb0aa45d0982900f678515653cae899155055524023047fa93719340b86319b4b1bf34d28bf5823b772ce275c5f6293b8beb7e963712ca11e742a6bb7888e125d0490c9739c20302047c435bb50067306502303a298bfe56653a6699b69ef1c33e38671303e7fff2199e3b983953c81c33d3fdb51f8098e8c64901a550b54c284c92cf023100edcd8c59b185d4f1e5d18af761ef36f10df90ddd8bfd63300113ec18572606914eca6e380d46cba1209744cb312267af0302047c435bb500673065023100bd043d680d3a0f65a8c23f5ff509370dd9b604ee67c5da0bce8c1dcbbd662b8c8bdff8189df78f090e6674f35b6c3343023065c086d58c7188272149954e9f691ffb6fe5656f3a772cce44a8da4e0404b7b0d27cc5bd49e31d72fd1b9cf8a39fca5b0302047c435bb500673065023100dbecf8ba6b580049d38d0eb2b1cd84533e30d779aa6eca0192416f67564e389b581085d5f6243896e15a24b0685ace5e02306ab69edc20570d460a4a83b81abaaf5783975c467dcb32c99b25addbb360323f756301ea2f606dc5ec1dd9c62aef81010302047c435bb5006730650230366325b485dab649fe4ee279036cf44864fef8838d71530e6b821ff6a3dbda5b958008d16107e587864830904b961789023100faed95c1ef409b29d493a2b028f6e6c011ee95c5c719b339a1f6a9c6857f26d6a23b889a5cf20f1aa15e14764d9623de0302047c435bb500683066023100b85a042f75a49ab7201765a8d2d742084a659a3b2af6dad226a128fce9f392610fa7963a44d3db8265ba863472e83d7f023100c27ab3b5b4fad0c48ece926064dcdc5aba7f00213ede993ca40caf357357cab0afa1050f1f0e0a9c732ae7881a81e5ca0302047c435bb500673065023054f26be6889e5a8a21c1ea839ce61e4c8bcf3c4651bb2dc6ff5554b14299c9471abca72768fd2d2cd55d1765304ece21023100c5a3097b049face6b62f5f06777faf14f728519975cf47ab1ecf98909d1e03fbc3b0688f3d81673039414f82cb8b5cc40302047c435bb500673065023063f33c8c6055f22ced8c5f90a4d28c7de49008bd0a29b16a608cdb43a267c7f034a8461ba74e11efa2e65a865fb6e23c023100e28978e564323303912bc96ec4b7bcf3911400db01e2872ccbcd896a53f45264eb72cfe6ee600c05d171c2ca60c86cc40302047c435bb500683066023100fb5678ad0f6c0af6bd558d0a8e980fa889b0f0f306d382aebefb4315d35515a26ceea3aea3011778e944d5533a86dcc5023100f59789c3d777b184341f8da99e547da7f04825381b3e88e1fd0df63c54b79882501204d03204735865f5f3a8ff4edb850302047c435bb500673065023100f7397547fb0bafbd24ce288a6fe100739ac80ca252082ab99a3422875ef785de4e8172b3a313a248acbcafcf316d6e44023051285459d45298c98b3b27dc21350dacdfd31a86df8abd8eca9241243cbb216e104c4890ac27c6041f0bec83f83554bc0302047c435bb500663064023015c581d0e7cd8eb5ee099f29c3b23daee2195f2cac9364185bdf688541443609eba15f0706e0824197b0bd3413865560023041f31fa2e18f3385cee7676e7d05eeba090fedcaf10a51a85e5e627ef5c499c992dd99e37553b89f1d210ed0d7c399940302047c435bb500683066023100a34fb7215da1e9b6edbbd9879b921e0e8ff598662134202f853722c93b2b0348332468a3c9bbf2ca1b941e4f1728e915023100bfbfa1141b46a833cef3e9afade03e6507783d52aed66da7b4d1b71d8141c97321ae61a24d5f497679984557fe0041590302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cb56c457309e53254f98cecae3d250e4172fe62cb76431c03bc50b31e32dc84e57044136f295763efccec3407a2e3146023100ea7936351fb64ca273653c707034728daf88ce456c0729ba49218a2336f72c4e34727e18c5a6cafd3214295f26d90cd50302047c435bb500673065023013ac19777bd777f2e8c9fb478e8ffd268b30ab191c677a196370362074e325e30577e28611dd6229be0f084a6fb3a5a9023100dd5be7d2aef151e826305d907f351b30ce0e0705bae1fc076b42344d7a7834caa9255bd16850506fb86428c0535a2b2a0302047c435bb50067306502306f72324ca60d73798bf6c80e257031c799cfa77fb16f68a7e82e751d2e0f8ec6393ae6a02a59f8e2d866d8536fc2e3be023100915ef98f206bcd95535143e5f84de69d0342ed85ea52dc0b13f63d376e1fc4e188f285c9e6db150db5af7f9544f502a80302047c435bb500673065023100dccce186734c7d008d41a971bce088b55d76ef9c9c4107354f8a7ee1cadefde8b1891f38002312a439a264d2a6fd360a02300300066aa7f98492365ed7aae1132f0e7ed963710a0313834b5236a8948583ced94015d843930e5c87c8d5eacdc359460302047c435bb500673065023100a9b1e1c9691261bbe3628998b011807e80491d834c1e8a6f8754c925ea6e8791f56182edc9323e8ce87737855554c17f02301c4e78cc393afc4dcba7eec6d13d0422378ac9a06a298e181ebec5c2c70bb083efedaccc963e97f3aec740e68419bf950302047c435bb500683066023100e6aebb84d33f9cd7ec9f0509f4859cc5a17db6613fed88f32ea5c0b6f6d65580febc1cb1af00e2bc0a26c4abdcb62670023100b356a681a92fade0587e4554613afad5fb8a4736786b78b48fc00ffb432ac1024473b937cf17a2b57f96dcf78a608b190302047c435bb500683066023100d79ade099ebb2e890d3694f12749e8ffab743e6b9869ad59b4d6cf6c51880b461217632cfa316b047e07fff9b257da26023100dc136e79bd70b404d8b7e395e9e07b011a0e1bb4877e862e5cdb3f977339ad26d60914ab5fd1610430d399d660038cdd0302047c435bb50067306502301c2d6ce1970690a067ed7916ac8019f47a9bfd385075fee9686f66d4540144d2f3628719c1cc9568a967aaf6a8376ad2023100962356912be4cc06c5f51fb8dfbe292604678ed3ef63bbf832e3cae5f985b4063fd939669c0a163c2d0a577b40601bbc0302047c435bb500673065023069bb485acedaea765369b914da10ccdc68bcb43849ac332772458c1edabd6fc6a9cab6253aa8641dd2498a1c0632f11b023100e96802082a47622545b75ae3646416925fb137bb98d4976e0eb9b0b99f216bcc42e5b97a5f5ccd9c372475c1b460a7f80302047c435bb50067306502304ff4f869c83b7b0c050a57cfccf1530cb0ba8a0fe54f3216117b6fdce952bddfaebb17cc053a7ccedf5ad42e4a277cd6023100f825ce5de9de6407cf78c80f937ac7578a14a568a6acee0673893367f6bf94d80542660efa2f8d2ee308bcc2686426070302047c435bb5006830660231009999c7427c8a18efb8632eb6d0fbb9bdbaa94c4883ccb2c36649387a6d89b0b93561cee0e4e51bafb6f0776d235678d1023100bc2b334f3bc93c087a6e6e1f28bc9e21efc4e9cf8e547d3e799a1c73e64af0539b8a79c1700277a34f913bceaaf624520302047c435bb50067306502302efcca3bd77f899a79e9c15358131a4997d13e49e6d1a1a2bd9a000fbad547fd599b9e92445d8311fee611ee39c4710f023100a3ad37cba0b77355c9aef2a927ff257b08f8a58622b32187de799b8d39aa78db4becaa635ff7f76ff7efa0e314d5b0330302047c435bb500673065023100ed2ccc59a3fb7ccd3bbd8d593f1efcff9ce3ae441edd48cc5a9337021880dd0b5be7bcf4b8989fb83c2229744fdd0f3802301607945c8c43674a14c299b36f4b230d1ed1c9886ebf61d60d83506d53a4846db352d282937040b030b232f46c1cd1370302047c435bb5006830660231009a0faa8262b98debe98d83ae9c5c0c4d776325a574c1458eca9ce7f451b8e5efe8a4765e0470b272211e88980c9d6ba5023100a9a44c25f5c5aea7a56da0aea0746ba0e7d87b9d183fe2420b2a7c5097158e546d6ab1867572788ab4d49cbca4e984510302047c435bb500683066023100be610f697e341aefc4e6fbe263ab8c6224b16bbadb129820c26aae4c3a28c8c803dbd46816f614fd62207b54ad351f93023100c2260f44c5b3eca22ad1f7c991e8ea50883dff668803d6a1ccb6b53e291c6e1eb64827fa81628e271f7aa41dca26724a0302047c435bb500683066023100c858cc8fe87f03cdea99e75bc0c4a2cb7759a998552c2364ba3d6edb280a3aa298c0acdf1ffdb37d2f80bf2e757b1870023100b816e7fbb658afc83c926f866ccc35962b6342bceb51aa6cfc418f507293f6a1db0f12f8bebf4d5bad9f60a99d96cecd0302047c435bb500673065023033aeb006d87417bc0657f17db8a9e65c9e8d524fecd3bfbff16fd4e2626b22ebf78c567c8c179bf7941bed2dea559e43023100ae32081542c6932cedb3df75b7ad5e4555ddc3e9e24a13b521363a87c1c83ef045d776f78bd2f24bc3afd6ece5b1885a0302047c435bb5006630640230154e6ca61fdd4f4f6b3444e5479ccded286ea2bc2db220dcdcf3e659667161b755d5e2d871a1228d0c1c3f1bd359e48f023057dbce752e87bfeeba6de1a02cfdf866220c67e0f8defd4a82382e730c61b7096f142c2dfb42346fa1a831fb1b9916f10302047c435bb500673065023010c059782065a0c2b9627cb45abaa5af6c5b0b3e1febf1ca7667e54f8d80d7d1a41a7a94bb1a0ebb00c973c1afa259f0023100efaba77c1dda8e19332db560ddb5202d4b615f498878b63ba5a36c7a59751815a791ff438f1c33831f50d85010afa6ae0302047c435bb500683066023100fb476056c556b0a28330230911b87dee5f5e0f994756fec5c3cddec51881de53b16fe81e6aab82db66cf123f10d2050c023100936f5a347bfff2f6b4afbdb50ef12a29ebcf72f88086f9945fabf025b0567d82157fd5cad343c96d343f0bcec60a40360302047c435bb500663064023100a1eee765b81ba68ec008426e1657e1848fdb1a4b0ac142e03dd763c16f61a1f77736c46c25e7cfeb2e1be30418f1338a022f542a4a66101484f7d6bf755aeebc7f78bac1e923224bfc5ff3bad5890959c017da05d90cc0e9e10018ffeb260b6c6e0302047c435bb50066306402303ce1a3c9f13d0dab43a1531521661108568c06a01942731f6e8979abfb023c3a3e53bf5abcf81b6b7c4107392894bbd4023025936413889658bd941c5d862499c28e4b722f994a727b9131bc1095bb7d529ef390bd1af426d31233e60dfbac9216900302047c435bb50067306502305a6e0c8d5e6f99b7ce6231cbb4a8c6abe1c9b6085fd87a88a4789284ec4e0205c2151e84597a666e53c22c7743196f7d023100bd43e3a09bde48e5831cd688343acc8271f7bffff45e67b28af5866f81a0a2b1dd4253f4080d6475d959a51aaaf6fc5e0302047c435bb50067306502300f3e04c0ab8d8cb662729382863dfcbc243740c1311787ec876d61dc0513c341986a2637423da984d8ce44acac845bcd023100e848f52c20c527b1cddfa5e6f3e2ff68bbe8ac29f3b7e15e255fddb397ebe2624db46a063c7a309132b72c079448d3390302047c435bb500683066023100e6700c40445bb9b0435bb1f55c0e9f25ea76137b43c2087fdb3ab03b1b62f49bbb695ad90a7557afa61bd7f9d9dd5a3d0231008a25167142ad937d0bf43715a51a767caff33f023d7c1dc4784d201ad189eb81f14daefe0acf18f979eb7356b609deb10302047c435bb500673065023100f9c634f33f40f3cad5c5372aea5549b834c385e9c697331cdb57e3a923bd7b9e77eda01c708e91fa2e1ad1ef5968ab1002303a5318321adec8e9421b69646b390f6153299749a04b8277a8e8fd7d4d51a8d77cdcc948b0438007a24339ff2011241f0302047c435bb500683066023100c4ce3574d18f7a423b2bfa9df8234900d6172a520a1064fa2d1c53fa609d781df457365731288b98785e734c7b810913023100d8b0a217fd625a4acd0b27c874447780a8b7cc01f3bed9d2307d8e996268712ea10a20da04cb38aad37e862c2c0245130302047c435bb50066306402300cebf13319bc01966cd156bac5373276f6a7a5c53a19f85424db27a0e8b87bb28388a236d5b233d72225aa9023b2641e02300d0b3a69203eca66793fef20a81fc7a416b433b60c0abbb4a9e0c638fb8bd4a22e171c9fe2ceb8cd7b2424aab75806df0302047c435bb50066306402300aa9b9b639aeb28c1e8230836df6c0f3ea454203c41bec3680a3939670075953fc70f48d60e4dc7ff0cb5deac47a3d4a02303a03c56674c8a906579871ab726c4f433e4f96dbbac6931a13f7e6abfcdfddb1793de219d168180764187ac003cf93590302047c435bb500683066023100e48142c34f3af737deebbba84472662a01a16d2de4b8dff83aaa4874264a4ab9f90509b3792669816b1db41a6d01a42a023100e26a7e9ee63917f975b1b155aaf09e255d17b13bbb0090f94bd5168770371cd9262410863db335000489ab684edba3450302047c435bb5006730650231008b69ad6ebd62f8c8fa573270405cec31206196f9ac8cc6bb301bdac5bc71ae75563513c9e251e759bee15e8ee2ff26a002300417fb3f2c77d8ae27f44e32122ac4655e94c378635d9307c087bd4b355a2f9dc34282525826fd6032176364b3c05f580302047c435bb500673065023100f20c5d71ca6801efadcf2ea190307af2f9c683cd4db095c6fb6128f3cb87397367ae7b29a58b4f4a33ae86f0d8b245530230675f8876d915b563485ea245fdacf3a8fd9157c9e9b9ff23210bef7616f9c8a4ab4e700a8c335eadce91a96eef1fd5fa0302047c435bb500673065023024db3264bd9f14338db613e99931d99e9e16da24cc52f56f2db079e9fd33defb0ef786a7f70c27c18cde8e2785b0e296023100dc81989d991bd17c3bb3e04e0419217f6eec7146ee3b5ef65d649102c9d8677537d208a418f6c460a9d526c0167617310302047c435bb50068306602310088bbf41c1936f1875e6ddde3df6de00149eea240ad5cd21c9cdee9c82da410e65f8044b6c4632d1ee56f7d3feb44d95e023100a2e0900260ab35affc60fdb3ef725e0f2a6350436dfbb6f9a0f6b3d1405ae815e6f5407defff296d98d3b8595503e5730302047c435bb50068306602310090d16062c5b2787d3af7381edf1a02154858f632a7ae6ea128f1bf18c0b41a976b3ddacc53dfac395ac20183d178899c023100e8f0d32099b17b4934239a9edaa3b47e7976f65c9fe8ead23cf27b60d46a04d8c514c8f06cd64af2fbfc56d453b464570302047c435bb500683066023100d69f5a9c021fc628f4a5926d47380177acb72686d80bd8793c44dd60a883523ae22052780b8ac5e223459bf4e302598f023100f46e9e5f77a241c58f72d0fadb6e3dccf32f31f54acc9b89961b1d729ebebec880a5dcd04248a9bdec314391a60a1f820302047c435bb50067306502310090f09f1bef454e35fa07082499ed84a9a79a3a720598ebfa021d8cb3f92437cea1c4d95992f35d4f3a72cfc787f64a5802302a14bc78126b9716aafa0e055748e12aa10e446ef78f4b11d3139dcafc212fbbf50fdf7888aad94a9ade92e8288618a70302047c435bb500683066023100d4d8a80b015d96c789b2f1280b5582e17928c3b905a691b2ddf3a1e4f12b64976ad6f81d533aab240bf75ec0d7e9c4aa023100a18491822945c78db809c207308a7f525f89de1fafaa8b0946b9624b592d9b6a791a82624da05a19482a2b59ddc6bba30302047c435bb500663064023036bf4b63858348ad14c527fd9d5e23ce24d1f60fafb16d314a807974dc1bceb4f49a1e8abbf48b9766dd1120004c59e50230311df8a261f3a70de6b3fc055cae6ef3ae530552822ca2c1aec08d42bdd3e63ad0b7d7325682732d053ecbc6d1e86ed90302047c435bb500673065023100dcd9e45ec5133ac0fd625f8a872dddff058986c2cb9f11ce6d26777b86ed9fb2360d626bdf15321130f9b673c726304f02306282eba1839e8a34ec271854939c361894023b3ebd5987e49f2f0882f12cf7819b1636482ad2ba0d3630e6420d1275560302047c435bb500683066023100fab0551448d23b442e1f5cca7d1f3b7c81a05b7ad953b4d4b6f6751af3a5d2a2f7452c26cf93ebf2dcdfe179cf4986bc0231009578bf20b3f701e3bfba42d686f7217204a0050d261b07104abc599c55edaabfbbb77c93ba7b2cc3d24a93418f3eb32d0302047c435bb5006730650230435f2a5e910150bfbabdcbebcf684dfb8a610e409e5f793611aa7dbdf22f61583c61e88b8553af3734114eef0ff60dd50231009b9f40a8fb560c221436d11ba081b6681b0316c25ef7cda6b43c362d9fed32e6911b60ef53e4a6f9a29abefd44bac41b0302047c435bb50066306402300efdcd8b379b95bc5bf43d685f00131dfce80a3d657b787fbd17f713ac76f87d412e871f78be9e5663402480693da7cd02307ec5c67dce770c866211a228e03965a0c6bc69498d1a6dfc2727d14fbb986d35f417fb3cf2667dddc7cfeb59059045280302047c435bb500673065023018831333c19c8d07a0cf0cfb9571aad4fd2b1bdc6681f7d5aa9b89fc394effda9861ac3de22d3c7cc4e66f5622968d65023100bce84e4448f4e2bceab405cfa48bbcfb494eb7a1059344be847d15ea207a132c2a4e653049fe66618a0caf17320206e50302047c435bb5006630640230225116671116e3822f72948adbf7e353e6d0eb32c1ddedd3cc46544232b580ba6778a708ee5a4a21e81664b94c63ad2302304b357c23f807419b6fe155a63087ab69135f30a2606c0ab82c81c8a3059b110b0372b0aee7183e74727556b57f51eb520302047c435bb500683066023100961adb38185792fb17ffc6242a37e28b966b87846405c3746d1fcdb5dcef7a9d67ecfe85aaa7ee5e0c2f821f452cb985023100c0c2d18750da75e4408d8647019c6edc8c7509b3078fe0793f12a62b4f6ade905e3bce45d3d93ff44492271aafcc597a0302047c435bb500683066023100f57c681dc035e4263197a8b4ef9efbf8f2dc03765aa78714deee06114138f0488056da98930360c41bf892d6079b468f023100a4268499cb5e9a80fa7149a2de5009177e3f5a53c0f34024299a017f864304e3e4c384acc10c37f30aabb15ef968656e0302047c435bb500683066023100a1a4abf406405717052b455ddaa27e5dda5e6323cc928513f07803e4a9e02406562d168f6e36a22e306e23086b6cda5e023100f0c3852b6aedf62655821a5b27370e9da43727d5d9aa96f7f5bd26c42565f1e4b2d503d3f62ae205d193d3be663bef4e0302047c435bb500673065023100b41f60dee70486e09b5b189a3e5838799754616a86fc651190648152582f72baca7c2a66513efda6673e435adec820160230553ff8fa35f1de1c0b922710bb7ed0ca0c3bb94def69d64b3ca1452f2e34a4fafc0623a7036cf207fa79a5b0311b98ab0302047c435bb500673065023100fe47c238db2a2f94a2c9e9e1afe48bc75ade3459e2437553bc031b287739e0e473a9317622663846cd68594342fe5bcf023076be38959af32cd2366787f2da2ea682c3dcdc1a2af07be0c7333b6c32498903e42a4392a2ea94a887cce96216056b3a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230667930186c8de8781ac012ec44972abb4870b7e427fa0eb3e15a87a38f6409b257c26f15cce7b68432a11c14483404eb02304413311dd201d6ffae9338ea496bf26a9ca533599351925bee0b0d625a929ade20021f266cbcebd4d8b38b9c520e56bf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100932310dafb242517332d6acec87abb2ac6b21a93a9b14d1f9bdf6d0339bb38c735614096d183270be7b8d0379bce603f02310098a795043df7c0eb38ee56abb64c179135490e94c00f17e674fe401b679af9d84d461f337215ff82d262fe2e799166d00302047c435bb500673065023100df771eb7ae5085f2edc2eeac60c0f4d760f580cb9cf0bc4c9bb8e6134503c8ef00d2ade18f2d816e85cb2137c709aa0602307622023051f05be8a42a69294043f5c08d34f6d581e2fd8af19eec8e91692d44c71cd7fad93787ac768e8ff547b8a5e50302047c435bb5006630640230673d265a137f6bf11adede5e56b637b585ed9a2dc3cb5e741671ef894fd4c945a549ebb21dede031aba82284fab267c6023041871e8d14095e39ab84c5f1344cd9ae7b9f999c507a7c705e315d2571835a7f0d4b29d68b1d4f0a555260031eb039650302047c435bb500663064023047ba54b3b72ebde301be0cfd3be0c13f9885a560b25ddea2fd6fe830ad776e587bf933455340594962421eb44ad0c7a70230763915baea24940733104913a5a78d859d20d1214d4ded42a323d6186c3f99a1291b8c3852444f357c5417fc42e9a4970302047c435bb5006730650231009814c4970a746b6c4be64e805341ccafb758f329205f90308346c6f447a6174adeae4a1df379a91a9b93a3f0e58753d0023078b1ff3d28c467b1634d93521b52de71265ea87dddc55066bea71216a32cc004f2a6409a50859b9e29f1e76fc237393b0302047c435bb500663064023044f1cb8ba6a62233757f8f143f18b7206c24fd6360afc1e149cb9379ad0cc3b4f89682b9d138fac21aaffca7fc4b0fab02302fe2f9d59b3c08634e8e0d2c1bd69380bd95c954049af0b82da48b98f1308f4024323bb04bd8c601e5c29aa59e2a70ae0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023079afa5de65ab0709b714766936f8475122fbbad9914ab7725a17709896b8d859ef1424c8580ee831f75b65f43853c4f2023100d25f7f0aa8f795be2e803f384aa6de2d08897b6c327dc2a0d308c9e80327b9ab52c0facd9c0fb1d2a2d4f1c03edde8e70302047c435bb500663064023067aeca8b7329ae33628cc8c1992b147715c6feb7ce886a9af61e44f43be1c691192e2dbaba68374cbdca080e2f7c4dce023068d5aab6bca3704a4f05253abab955d268ee8cfd186e3bc9bc4598a05e9d7deb88edf67c326ac319a1d0b568ed77cadf0302047c435bb500673065023100c2d13f58184ea5feca3310cb9809936625490973dddd8b735a31c8a73190458609e66cd9ede00c89c63643c8d0afd0db0230278bb21361c301f89313e4a5f5809e9e065306e0dd0bc3cba03377c7823481f129d6c8db664532bf8edaab045f2390250302047c435bb50067306502303855fd3fc676902a6926b234fa60d3c0fd9f0dfeab38e01d1ff6b81f247b716d985f16297c104d136dc5ef81d7124f64023100f60f096b3787a73470b31f7c718fd834c3c6e43b3858d3d3669b948d483d35be9840375a72c091b63858962e48cd37810302047c435bb5006630640230163f344ba2411e75d556de7bffe80939b1dbc70f47362ca4c4e0caa451365fa10f10e3336c96a42ced6cec80f25bd9a9023051040d49ed0581b577e1a41ecd40546069334e6513832525e5bcec46e6a1a3948c94b1d28877f7466d289673b415ee580302047c435bb500663064023001b4224f87dc32f8cf76b8ca45667339e3da927c374f6bf79a2f90b24905f4b9894c836dde79a96f75b4e01f1b9b369d02302b6de76c74333ae6b5ebf5691181852953e01d918219b892aeda2c38411ef4a8c5ee689ff52f9d9ab31c7836f220efc40302047c435bb500683066023100eaa6fc128416c9c1a9f9bf8bfd76f0146aca44ac3d411869212631a780f843aefee00cd746dea64c0d900de5a6f9e1ab023100bc9fb198c7f5e43d2f014590a443b04265a6f7bee367c69841ed4fabfe1270b6fe38ad603cde259d3220d48672ced49e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300358562d04d2a4b0cb879d66a966bee8386c0a7d289585ef4a3f965e9ffd9f2e1e804fa91ae8bdbe85a66304f77b15f9023100a5ae16d47e8f262f46cb0066ca6bcff50d0591536772b673a8a8982d17d639ecb8ddea480aab7a5b9ee25d4ee902b6c20302047c435bb500663064023045be6172ed270ebfb223ea6862d9c0b41300152f60855303f616a529f3c7d8648f57c5ce8269a29db998caf3ae6bec5302302f3762e83c95a730d2977471562b85ab30c65a18af456247a27fc67b4ff468cdb2a00121b613825c08db73b8f73c97980302047c435bb50066306402300e68c6897020ec60f69164a527c63fcc73f460ce6057e64639f92e1a39d9b0268e1d2f3115665c055f02594e793e4b23023042d9b7c2a54f7b9acf3e4c28020711eea61cd7f4ef47898a6e0cba8bf2f131d33d67e1905734ac452684d8e6e45e839a0302047c435bb50066306402305984e71ebca425a2efdf4117e9f1f567e54e15cb6d573a68edebac8356f3e688d9d255a661a50aa9f06a4d27a5d30d30023066102333fd14247027e0f3a43690f85963ab5215db02e4beefa8b1be4b75017239e7676b56e5ef54e15ecade43f11eb40302047c435bb500683066023100d9472e16d4d15f359be5f14846816c8481e229a36878811bc723656ac41af65381da84eed50b64257d9a71c81b967753023100f70ed61db7afa62d53c89bf87e8d52d50d43116e79b32879da252d58b7325bb718153db9ac4172f52af93632e1e2347c0302047c435bb5006830660231008cbf02ff8081e0c75db23ab7df2d4f20c31989e826c97dcb6997c322fa25fbfefa19624b92abbb3afedd2e30f0df837c023100c306f11fb1a617c54035d118f8b535206a2f7a0547a68c221cc0f2dc650cb414579ad71640377a841f25c34fcf1bf3a90302047c435bb500673065023100e141c7bb098425cc422b005abd5757bcf5769e8a326bbe3b885472f3af581d0b6afbc614435c41d5e73a957a5aff843002306b3af9e1607bc30a5dec0ab734b32224ae1a74dd8139a093625b0324dbb24be8c9cb21bff9748e3b0ebcc3d7d33164b50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023036938a4284f83e29162cebe24e407078843dc31c78fa50fcb257588f4ad7670de63f81ccab4093e94acde303277aab59023100b2fc45c38010c9d3d3c8dbd63d77b4ed8925b0aa87abbbd97bc7f1befaab5e52ab30e1c1e9021fffa7246829fd7645e20302047c435bb500683066023100be4bfd89ae8c329895c5f7e6b56f891bc776ed7e4c561a1dfb16ef3bb41c2c6ef2529370a39826e1d261974a4bee8a8b023100d9ba7d01f50fa3a4af4830ef11d2c5303dde9c7c37c626e8ddad82f41883ded2d7aa2c1210d87e332c32cccd0a2f470e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230020691fde2fddabd1b0be8d0c8cf1ea2feb954857b5e5ea26b6932628ad0d9d50ebe7930e59c59c26a1823732c44e4a9023100917ed7111fc62fa84452d8f77f88d6f3337f7c372d402ec940434cde4f9517ee9d0ba00332d18b4cc50fb54747b6a8b70302047c435bb500683066023100d2dc5f10cf32a0e0576850c2f05b516da7eaf1db6c3a8651a9dfe4735310bee88dc64b1ebcc8887a4e0282700baae243023100a3bf2a201ba42447f691c72c119e712de595e8a37f726d1614c3ac5eaaea7194d4ddff0c2104f23de023b558e3cc91f30302047c435bb50067306502303ce4693b126bb0fbddce5f0e6c0d5fa0b0f3a23650d0c14377a29aa73bde7bdcf5a4cc9aa1c614901fe7f78c493682fe023100e37a12a7492ca3f1a344f50287dc581c47f67cc3773998999245f83ab1ed3dac9dab17de6fc84960954826ab8af406c30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023049af93e7708c40013545e726dc3d386e7f61222df6dc88df67863bee103a2058b974653704a22b143b9c19f57339bf94023100f76a221a6efe9e0e4971aaebbea4d8e7198ccf001134420f77bef35832335567c15f171eaeb7f7acafe471ed80640c3d0302047c435bb5006630640230322faa5ced4ed0bdf22201a1d0d9467caaca96996f343992aa8732363b3774859677d08860be88fe0511b78921d6ceef0230581e09c3890062cb9616960936cdab611c7c8cd8b35b18c761eaccd02fa6c1c3845899ff4ed4e90b587372fabd479f190302047c435bb500663064023016cf87574494bdad9f306543853cf3a0cb4fe51da781ba32aee89477052445b09055dbb40d29e96a62dd162f6ed176e802304a0367cee3ede82ecbcc85dee11ce0891855b8be204042182e9f0becfbe175800477202a53bf6369483b4083280f5a1f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303e0f002081478a3c8b2b20f68a2c59063d1132e2eb147f672e190db1a950b5b68a97b3ccc7ad38493df2c0c10caac651023003d8bcea1c56cef905e3a157b0d4f005a25b49b001a1be03e76df3aba9ef68e1afc849d096283ebb1226cdaf9eb5baab0302047c435bb500683066023100b4a882032f81d4b2678860d284c0a81cdbf476377aafe9f0bfeae604914ebe1d85929e4f4d7ebdb148681928a7359b950231009dd484a6bacdac19722c15fee7483eaa95d0daee26d0d4bd89dfc0b92fb33c0a2943c7b8fd397b8958b72168ab6940cc0302047c435bb5006730650230580cf14da06dc5e1532f5a284edebe320e523a72b0ffa6d102b15ffafc73ec63784189627bfd0057fe39934e7d95553d023100bb42cb571e88b92dd16ed5fb0a69b9c225f58218fd5948bb10e1f36f8b48493091c3f185f2ae0d92e285adfa02a7e3e70302047c435bb50066306402301d46416c3702685e7ee1b8317fbcba83eb79c97fd48e7cc7c00566a621dae726aa7c6675363bd0d0c5437d82f2da5a8e0230676fc2476ba7db1ab621a3d6d4bc65f2511c758183acc171465bb38368f37e04dcee4482f0d751384141e3fa28332ec50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305d509ca9b37aa455988f630a4fa9827ac83d1310de6e8b4a16c37e8a350057801d5ef3052465ae9a37d4fbf3a85abe15023100b7ee2aeb18971bb52880d455febfbcb183bdbb3f9d30841112739e276cfdc629422997e9b0bcd5b76ce715a3546f3eb60302047c435bb50066306402302e6bba10aaa15b8808d8cb6c67a778c1e36673d484e4de641fece43ea30608f00f0d0a28c61389a5913181aa47d536e902303a50ae74c08ea495ab607556bb48c57a9c69e25c5ccb8485a7cfc0885d8359205e1d4fbd9c8e53a86dcadcc06e2aa76d0302047c435bb50067306502300a760bc3d7848fefa0f2f33514051fe04a6c99906980787bc6bc7cadbb2cc6140369840cd543afc300904cd52c6031c1023100dd76ec001a5b50f887dc11fa78b1006ed4d79e2ca21eb259089e431e4a4422dcd12448afa3efca2b3a4f53117810334a0302047c435bb50066306402301a8ba02714a6ccbc5c69b3e09fe2b5441859f4a673f262d7c5beafb154b37ab60aa609f0f6777c55be0b4142eed49b7502302195635a4903a15f6070679a70b7072320799319c7995332b312521c3e5396285b4a13af07ba4610c2f81c2698ef3fea0302047c435bb500683066023100a8dd6d26a1bd5dfc1dc094095a74bf74a9a60e5780262aa641cd681fa89d26cb6409035644bfa3ec51387f8506f1e4ea023100f8998438d01a9a2aa7939bba200ad4414ab76f30c6455baacbb276b4ef70963dcd575bdad15a3060839a3950864d6ea10302047c435bb500673065023100866c19dca5d6296c4e44656bc67a2923272ea92f2884d358bf62feaa5d335d3168aa673bcce392b701fee78fd067ead102307aa27abad99c1cc46855839f5346871d6cd9022ff3f50c0c92b32fa6e4a47a61fc9256e127bbf5809f36ece960c975160302047c435bb500673065023060c594fb53e6816ba6b10a64e5c7d6017533a6131a6833f4499619511b2621ad48df5a5a655f0f6fc9e6e42f7184456c023100d017d680e61db772dd4c9f4a9394ffc55373474f4d25afc10ff7b4c7b58e047bee011500887a09b154c760c925a877c90302047c435bb50066306402304155529e11babc045e955c8508790500dbe531a48eecd5d31629b3df8e09f3db7ac4747e42bc8227d178c3d74b6f6cfc02301c6f407a32fbffe2f3449656ae071654fe2d420e8e9a9a58c89f2245081523d1d566eaf9bfa855720dec6c9685df50660302047c435bb50066306402302d45cc1f6b535967588bd306aa37da5e61123efc1318194d9e134834974f6ecae8dff10ae070cf6110e7f864e47c2aed02303b7d8426314c0f8508584d2e4b1ca2860f3d398185e9ccffbec498a8cf548a3a7314f65cce27434258c400aa354dd1310302047c435bb500683066023100c5baf9eddf663f8fb52c00597a457a763d2511d18be58bdd7337c76a1d83dc95ec124f8a86de5951a5900dbfcbaef15f02310097c7a3772a3c99d348d4bf8d5f09ed897d47ddbbab4aef2ad1ad1918b7d063099920e80b36661dcb342c73038141af1c0302047c435bb500683066023100e9fcfd4878388106c2bea429dc0eed80bfd484e77d2072fcb7f0406333ffc7702c8d80fbf946ea38906a303f8934a3a4023100e483cc552274faafff2c1312fa9a18d7e20b74770149a8da11939d1aef25ee8ea4cedcc826f11e6db156641ed3d9dcbd0302047c435bb500673065023100b991b7a2300b9e6a71ad2e324505b6aa7ae6d25768f95ca3cd0546d8375a2441e6d65d24c0cb5d48285e60c7ef5f917a023012d413a9710271d88c410b37778ba265a255ec27ed0cbc855dfe0c82af3e67bc397e5704808ea3df85391718e72234400302047c435bb500673065023100ffa02d0aafbcf698f3b51eb128afc149848a414cf6b94762a57d6bdb4925dc695e15ef65a3315a9c50e3b84933d0fae002304684b413370355f3238f9d8e35dac02389a7f1237882b9604af9fbd5d80f70c6316e1db3d8ba4f4004c144fcf644157a0302047c435bb5006630640230610042e441f038d3755dc2821194903391998195f598480269742546be4b35eef0e54f2d9ca90f6191eec6a1b2c7210102307e3013d73862b7667e2ab9cd97858143dc088e170b6fbbcd59d22da67765a49c6268084de5efa572624d007ddec422ed0302047c435bb500663064023049199aadf25b91155267fe3b3df65decc7f8348bcdf093d53e0be03c25c0dfd56bd406e39c5b37fac7fb7530779eb5bd023062fd9545fad60d6706f3195d984dac9bd98a8b07b43e17819c8988e789b1bb7aa7d00c6a16a0c48f575e2d27a410d90c0302047c435bb50067306502302d20d10a0136ac19198230d5c7ff9ef5b0a1328db9f4dc26c956d2d4e75b6666f21a8562aaa081b1d8b37d6757648b9c023100d504cf40db1801aa23e518a3c228afa62c9a86522bb17d8eb6a6970124a7473039afdb7515ad8bcba758a7e456d3e59f0302047c435bb50066306402303987733ead24ec870f8bb20d3f6c7d2c3e7febd61132e8de5d8c7e264fb78e25cbfb855a4109c7b4781235badc084dc002300b1a580e3f8adb93a935101d76acc1c873f68b8b82ac0923bd66ecded035e6dad4b77f3421c6675cd49a83b9bf0bd6de0302047c435bb500673065023100870980d67007e5099c05d2a0be6b3d11bbcab375d9f77d2bd1581ec1cd65d01379985a32fd2160dbd72c7521b166021402305cc72b86ff822162ad5380f7e7f23ae845d41dc4f1e15ad9699d0b413675a963d4e748a96d64257801decc01427af8060302047c435bb500663064023009c3d166512103b62b7deb15a621e19332709f9a268651cf1f1265c080e869d0ff757af04002f48719aa163215369315023065264a8ecd76574e20102debe60cf605034c3f36acfd09bda8065a002c92cd5e662ca4e00aeeb04602a361903a5902160302047c435bb50066306402301468a02a53c4533b484ca58c1abd219032b49b76dc3634b715cc2b5ba1b99b3473f56285057c2750ae91975e130c89550230345475a10940a3c3ed58c56e8dd288f2a61ef0088cddd7e60c82e260bec378f11f7ad7c64afece03543c9484d67c8d890302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f0e33932dfcbe022df7f311603650f5e352f6188c5d2f3111f77e2fe4fd50b9f97a160406ef298951f2f5660215ae022023100db8266a8e93f20fcf7523fefe73e172e9bf33ea58f71c598fba2327481814f9c9833d84c062f37d1f2fd666b8c7990a80302047c435bb5006730650231008a9140726f91e63726c660e76d56e8ee48b8991d7c80b0a4eb72dadb06af77cffc11653530d05604c67703b762d8eb6b02302b1589c8be11fc5ec40a1392bb4091b3809fd52b722ab27cfdd5e58c220d71a99e4cf432d4247ef7949f4ca72de4bafb0302047c435bb50067306502304093e1a219ed9b91cb737817f38494b6b81e4036f266dabaffbfe1c440a82b99dd640276d1ed3765fe74a2682cd918c60231008fe70b8ca7ad3e1eee7208205163a298fb272b44e457287ef14ef93d25a7faab2c4b07f0755267b9a7eeea8931ab69e20302047c435bb50066306402303c7ec0536276e591cf9ebd5ad8b5a2e2b6ebacea557683591ad39913be80d20928072106fe929cf6a2d59ee15391338a02307a1948b4d44c0862e0556b60ee010b96bc6d3456709e704c6572d09efe19f54aa51799911c3d61aa66072de70c3ba8eb0302047c435bb500673065023100a25e500fa0d8d869f76215ce150e75bc9450fd935d684f989af1a94283b15588a237519205ffe0a1a6c58d69ba384e30023003b93ca17c849ebff2710c208ba419f40f3bed50555bc8756a43717889ebaca276854ff6609b42bc5e5f2f970e28e6ad0302047c435bb5006730650231009745ae3d9cb4edc954b7ccc696a8c6950e248bd141b90cf45737f423508d053fe2922a949e01ad0233f55bd162f8423a023057a7bf859a83ecc23bbd885492a4c469f0d31b6f589d90c077c682aaf79264eb20bdc3586b9b362289d1328eba12c1dd0302047c435bb500663064023006feb50909ca56e4c51e7c4f79e3447f4cb02ef98cf45b4289bc7a16ca47a2e4ee1666aa83dd9bc53724b78db5a187110230158e858018a0429e4d7e80b50a1e6b1c5afee1b6915f4e8b850d7c4485cf7011d529895957128cdeb6ebdce8258da9f50302047c435bb5006630640230555e7ceb8fd8462e965ae96961dc7b0dc8d8e8104b5e6cda80c56dcbe1b21cba4d430e58c2f0f6269d0703bfed384b9f02304019784588fe2843a59ab36de833329503b3ec17dfc9dde06cec9669f32f7b50e65e00c1f544b7d1be27740f86b129610302047c435bb500683066023100fdcfd19ed6e0d7aa37cfb9a2c866ea52aeecffb77933565e3860ee94bd11e1149b120f6efb791d5bf72aa7731eaa1eb70231009caef82394decf386804d89ef8452616e7695ee35b6ecf67bec2ebfd4704c76c54cbd4fb732496c54b59f4de1cc57c6b0302047c435bb50066306402307018a02ad5ab9bb837698571554cdbd1f33e35d7ca9192389185a746261da2a4085e82c377e1fb28d0efd7c6b0fec77502302ca547e3469449857c204d623bfcac0f0b68fd66deaedbc36688fdb5a3e30f3cbf1fde2616a1c8371b32bc992096db000302047c435bb500663064023004e3b2a9b7334268b27374a20eee10beff74bd5d1fa1ff8e7533d6c241ac69ad4a0587e17781c32dfe28cf9232bd54a2023050526dc0c4880522190847519195750633d49ce90bd35798d2d959c78605dd151f9c6da6379ccaf91bc3de898f42bf760302047c435bb50066306402303341e9d2da1691b29e01f9d24861d9e6d84754d2d0f358b38e2fc7a6b052c2b76018d65a20b4098278e4382aa4df39b3023001c86eb863ec2caabddbe8e728eea53aabe7a6d82809a2d8f16d4302337050c9a84a1fd646277b921693fb248a2307450302047c435bb500683066023100a88aa904e6025a7f8f412634a99c412f5ebde550f8f5b38846ea0383e25177cfd4689e3255118802f3bce873a3f004330231009a2066d1df9707ce96fa85d7c2e2bc636e39710a306a07ce1165664deaf3312c51e9ea0b8567c238fe5cc13288f918500302047c435bb500683066023100eb64f5643defba4d9ae132fdcd43c2395d4a7aca8fcb1470a9c2e9f0d0405495e0b52f90a92ec41b3e3754a25c7f6ee90231009f6c9119761592f0ee233e590f9612c573412e710f1a81aeb50fac7f6c6536ea38b383070a48620a05a99f3d9c2c2df90302047c435bb500673065023100d7e0556e7378251199182bfb3bfb8ca8c642a071949b40a5f69ba49c99557aa75f842fb07e3259198dfd79476d68a9db023039564df904146e9d53929787a362f9a980fe15e396c1551ac4ccad86b55c902cf9fa644d5552806250329428e304025e0302047c435bb50066306402302a5cc9677e26c689718374b9aeecd1bcd950db0f8a1850e7279610cedb02261b5f36c5755beb98362b6c1d113f961c9b0230249bba4e43fe71717fd9e8b3d76bbdb8ce8c62815bd6c8ac64842944bfb2db2759c17dbdff72b3f591175dd59bdf54e60302047c435bb50067306502307f4673d373f4c673d583f0fcf4d505f5eef91dbea5ee835f8f545542fca588af168683a62be6bf33352bd11708bbc192023100aa39482a3caa4f8f4b6a9fbc36ed0bbf25aa59461fcc882f16a13bebba66db6b2ba0db1eed70dcf4d328155b069cc51a0302047c435bb500673065023100cb152321fb99a95702dfd482f54fd651d53e9218bd83f201c7c4ff3bf9909a91273c1bfd4f545dc42ee05f3ba206e3650230097b8cc3acd9083b134077e9d198a72eb268a8961b20a264953d2d68f912a303f9477f7e3c8701000675e8c807bf57e60302047c435bb500673065023058e8403bd910c0ea6c5b10cfb3df20a172d37c538cb60ea333c8786d8e8829b099e47acb70ca6b24820e82edd43a6a6502310097a02c8a6f84d77c0cac4a0116c34c598081b11f3feae9c267fc8c3dedb661ca1ec48ac5f0df1889a63a33f3208a395e0302047c435bb50068306602310086bd5d2284c0917ddf3a44fe7f46075f30539c44b816dbd46e6016f5716518777e0fff22a8add73a6a138e8565b391b702310082f09ec627bb16650883177fc38c4063927d8e0cbf5b77ed6d54ee2e21f16ab6a2e15c7eb01365a69c329bdb7dd8b80c0302047c435bb500683066023100a8dacfbd075f520923d5292aeb16ceaa9bef235eabd4322968263a787ad23859586730432a76c21e11e4604b48884ea3023100a428ad3e51e2f79876ba72a1868b86d8a0c9657c8dfdc22edea3427f3508cf39e536326755e2761066a0de1cc54013bc0302047c435bb500683066023100e914a1163b7ca0120be66a95cee390d28e69da7f3131d94936a4e05937604938000142f523e99bb3f0fe55f8adbbb4c002310080f7ffc8840ddf6beeeab041b63474f123cb09dfd018a716fce36901ed82c3809cd76caf120ad82d6a7970001789242e0302047c435bb500673065023009b4792cd4b2caaf7beb942ce8de23b69e44e574ae173ca1fa5bd49e261e75a7c0e22e6ebde1cbc1dc44e73505c436f3023100fc897777b285edc6769272db80bc2324299a56ec88a44a4f5f546e7a56ac036975592a7bacbc70d7022432641e9314c60302047c435bb5006830660231009ec53c4faa7b4c7aee8f0eade6dc8fc0f55d62558a7a10224bcccd27dc219e63d13711a1e03d5ace9471da1e6638a07b0231008b49b6feec340c577604fbd09a51c6cb29866b12e874ecbd64c9f76f39313ad6aee5dc28f2965ac5648625c8110424cb0302047c435bb50066306402306ca8de6903fcae023fda1c7de757ba4a69e1f99785c833ec2cb65bde565ebcd338480792b2ed7241c273aaf467847f9b02304989398de9db4dbc039637c8e186d9fcb29f1f33e93a0425719e0ec839591882d175de556c346f229db37fa42aed73600302047c435bb50066306402302e5c80f787e05ddc9e61635a671386e2810a92b7cb0c3fbba3720dd7b34d47a2214d1666efa245ce8ac29d0b2929c487023016d9d7b26f5a1f33e548cbbdef126090e457618f77de56b4b9da78d97dff066f9902ca0cf076395c81dffe7c7a9771fc0302047c435bb500673065023100d5dd80aeec72f287f8630a03fb91bb4e675a8bf7a429fb4cde99f3c9b4ac892af0c2473008f8e7940913289af94f66f102305169790fb0662e649de394af64371643d02a7f7c3bbf989023b186340b5a4d752e05d2f0ac957e7f72452a41165ca4f50302047c435bb500663064023067049517d528d99bed4f3dee985902c570a01b558cfbea97a8997956d3a7706e9144a6307bf4bbc07949ef9256b75f8102306fe4e951fbf84a710caee053032681b8a4f42ee2ba0546e0ff5134909287f393c0222ec5e6e24343914cc5a2f280af360302047c435bb5006630640230420babd41a082e0e3d179928f38bcf75f202cdb892f1b0ee8fe1891866484ee200d6229cd5b0fa25d73414c51d8cfc6c02307b60a14ee4d687ada6d20c0763fea800e9df842e37c825e5741015928590d975aba4677077011f7c4e86224e5cb7c5560302047c435bb500683066023100ff78ff88d2f5aba0ae8d683bbd702658e391d14571d3d9a4786e40b35147e40443df15c934630a267d0f85eca6300bc1023100fa9828f0be36aa458f16487310f4a83bfe89b809e1d0a5d00bc01b1638952040cb42a756e44826444200b0c7f40067cb0302047c435bb50068306602310092850ef2d34fc4038d46ad2e3495e4e101e42cab41ef3eb29ad71fdb28ae91ccc11faa41f71ca4ddae2be057cb259fc6023100a341423c622a7eb94b38f889e042d17a94e47b8da7d970ae2bcbc813db70b991d3d7a74eb9690764fe5c6ade6c2ed9240302047c435bb500673065023043682991d403c93fb9b75e323ea5e3a6db5e2c4ec1acd17d176cda91edba14a9b57e9d5e901f52203b0c6ce83b6d54ac0231008f2a28fc3f7ed06691a8c573e16ac52308f2e6f24e8a3f62a69c9369d4547f150e4578765cc52ddb96a41898aa0694940302047c435bb500663064023055d10fd7ea6b4ab928eed01e0da3aad59e7ba643678b12eae9cd460d6ca5ae5b4aad91261b3e102c08ef06ea1fed7ec602307ba213d5be00e63159ef690df173e204464a751d8380d598e37cdd33a8dbbb7aed932ba4ec1c0cfcae35248c5d42a2640302047c435bb500673065023100c92f8bf6fea7c6ec4e28c3c237a6aea5f1363c729b4407f7862575649c43cda04610f536cfac2b389349a7ec4c90c9fe02305cce9cc81b9d26479427f1ec8d3bc7cdff13f9993b1f37437453f71b2f36f98397aba34fb16d09d22516aa2a76cbead60302047c435bb500683066023100c019b7bbfbd6252e6dc87191271f333278cbf8e10dc9f8886fa8cd259a00b876d87e7ab9e96cd99ccb6768c4125a5ab1023100b2c8210b320c54b121273d9473670b7a1ab8fef2a3b31175be6d0fcfa8a6490f8d2b04845e157115c9c4aab16ca8f18c0302047c435bb500683066023100de9da7b1c83d5be4fb4764be02984d3e4f5827cece2f7c3ff9e3852b71d2ba286a8a5c6090095245215c83e3d079e3b4023100a3387e43d4cd1729f9818da8748a67b7f84dd3dfbc1815988e3a31c4de2fb044f1a54059216e53e288fa8961fe63c5080302047c435bb50066306402304b7f21bb1bcf9a3d5597a51f01538dcd71f79e90f15b341e792728e4312e10ab6081cb730b88baa5e5a63055c75f8289023047ea6615149fe9f878ffa908b64f4fce5fde9258a695d0657bdf9f352580dc7004bf2af4e9309e63464b9a6816cc0eb10302047c435bb500673065023100a07e1b54b5c61743ca3cceaafe5078341bd6886136a237711f61aea249894c21c633083ba8a346b02ca230beffed8b960230104a445f5f416a5a1c00ff1efb329564dbd0f3685929f5ceec0da97d384e9ac9e7a1c8ca437aefb662cb4e3df40885770302047c435bb50066306402304a098d176e9907c5e65181284d35fccb75af7127bcc94eff111316fe10d52a4ab0ea8671aad98f9aa687a1d5ae3d1ad602302b62ae757f7182ad59bc2fe54eb3e2e1973a05ff6830e3ae6b3531f18ca41edffbdfe0f037e0f1be7daa972b3fa010f90302047c435bb500663064023017a97df7e160c07fa3148f73ed99f6532c1f4700f74cc91a9fcf6be7a73d2650c7a4e26f4f9d0209ff71d3245d5cc46d023025e3b70bc11020f19e0bf07bf129e953149071947cdf6d5ac66fa9c9f20549bd918eaa1966a169ae7ab301b77d606ad00302047c435bb50066306402304f57fd48134e926041f1e6188a7cadb12b7bde09f01790a5bc223f9eb3e49defb9841672e78e933413d4f09a08c8a33c0230533b99bc7e3701bfc077950d5263f41a22619f40957b614915e43a65d940c532fda1151a60542bf613127daf521a5e000302047c435bb500663064023078e8ecc8e8c89020b3eab218d47dd5c92b01533dcedf2e85656d7c7efebbe7ab780bf2c637994e257ed5dc4b6352c28b02304c11850fc6240264dc07af99d22c1e8895ad8373162028a9f071b894f1c7f58badaa67df5c29cdc0ce74705c1a65b1480302047c435bb500683066023100a55f27101a0db11a7e3cb5c20c55a670ddbc4edf9ba298b480db9df6740da3690acbce2426c3956885ec04b761edba5e023100ff12ead15c2e3c2060934e83f95ccabef82c616c2714d5b981e88a2660f67ad08616000c703f9328e995e8bbfcf7d48d0302047c435bb500673065023100df6795ee43503020ee51d9fd9fc6335f920e446a967dbe64c1593d29375cf1fb1c1cbfdde26ef9819f6415af7b0795f00230139feaa19764a532ecfa78878e88924a036847217e5938d0c21ca1a16b3b6d762a92c3d89276d596e34518e63e6f08410302047c435bb500663064023077ed01ab93e465620cffdb8d61a8c2b3b577456cd3e407172feb810ffea13a47f5fc6429b7a42f15cdbddc0034da9044023065217efdbfb8285f65b25493eeedfe7e585def99f4360d03748f9152f92b5a5fa1e6deb67ca64f037c46dd393c1504ad0302047c435bb500663064023003f12bafa082dff77aff35c6a259a2fbd3c359a57b3996c40d3f4d6eb59b0a85b7ec1a0ef3dbbce65ed435d43549d21b02301321a70a86ebc0041e6395e6e8d4f4366e3777baa97b82abc6699e58bc853775893b7302d166a997b0ef117132d8bac20302047c435bb50068306602310093fe9f19fc1e38c065f68f8818e8d0b8e9da285a8ef446ae77ffc6eac20664bb6f7e3aaaaffb03c1367d506b5ae05d53023100929957dad4b8adf48b6bb21f731bde8933355cc8912daca040c3514efca35ff423051e4c09f634c07079b000f7e1edbd0302047c435bb50066306402305e6de020f2f5cbc03a32efe79d5dd4450609bfcdf79b9cce3d6bbe570d87c61f2ad67164d314c0c6d8bf48625fd45554023057be93d7e8f4097d59f5670346fe7f9239204e29821247b0444f0e3acc8f40287fbb08e8f6d143d72b7081d7ccd65dec0302047c435bb5006730650230269e6dfe91f2227688cf4ae53443da2ad6cd48287982191130dce65ef23e7174c3a623048b1204e34c7c46ecced60b7f02310098955ae969ae9963fa001869667371dc0a3676a738cdefff2ea4762004ff2c77af12ba48b4f69b861a6b745e1e7b226b0302047c435bb500673065023020f742920f82d28c80a578b45ea7d09f21deafaa35df0daf0eb5e20408215dc71c53b22d96aaf1d21c45c3e9ac01f6ec0231008d17be790bfd103d162823043c3899b077c45f6e29ad7df8d48efb37ba5cad6d11bb5e0b9925a072bc1c7cfb75ba1d740302047c435bb500683066023100fe60fffb92f0569d618131c1551808143a64b58b964ea8959ffdb55b9755b6a4c9134cb78e4e36c13588b0479f76bc10023100a207b2343ceff190c49b3cd01d48b7faddd735abb003f19bb6ac414222477492e43b76958a5fa6d8a580002d593cbce40302047c435bb50067306502310091663579aaefa1c56269cce20feb18fdf15a1d2b6ed4ed4682a60b9de89c3d218aeceecfcf5ebdc9ff4c51565d41236202304ded25ca468a13ca60b3ede35e5934c3725a97d6ae0fb8f1dd870898d6a62658d54b10587c8101b7186ce9db9fd76d280302047c435bb50066306402304624af4ddb422197c3da8b5348c289ec6712d9a181ab4c58db1b6242bc3487d2df06409f8d1d46b09aa7d043706f54d602305b827d8b586278105f82a3a887287dfbf61547528a0b6f34232c8752956f66bda783aca3f2128e32dc258f70a0da2f960302047c435bb500683066023100c5c7454d50783c25c7c4958be317f2dbc82834b9da9d9ec82711f9f90cf38e9d36bf0ec8f58ba3f6794b81ff0275037002310089358a3fde9f86134cc00f84fe0601d7a5e97481f333d2a16e8e7885c264a8a26f6965b4f6df94a3661e7e060e2e9c030302047c435bb500673065023028298335bbf8c03564c302435f896121a1ee9b375a609d822263e7a8229fdd6c4911d442ca175fa97c4900f59735cac1023100a2632cd3b784676dff16b77bab9f745fec7674f52b468b3e09283e7225ffefd2d75b85356b038698231621298946d71e0302047c435bb500683066023100efa51f37c0933128a112093174878b90f76fb9434b344f837767f50cfa6980b0fc746e981597152154273ea7305e885c023100a35994b8a6799d4b4cbc65707685e8b418504080a3a41f4e2689dc350da10cab5e6e4dfce9f65747217b412aa8290ade0302047c435bb50066306402301cb8ca638192e18d839161633d24925099bf399ca94e179d247b28da86d3845fd56026685af905249b0015280fadcdba023041c8cb3ba08fd1f497bbf58618bfd638d823d43d88d221441783d623342eb9c7c1e3eed1b26e97b45db2995216ca27080302047c435bb500683066023100e5042fa3d16362389f55fc5a68cb2430f0432a0c60f62af9f0c06459c8d588c0d078d5bcdf9a70a299c8f5fb6069a951023100a0d7313c54dd5e24cf88013ccb22441b9f8374acb2b20cbb57ea8babd8182963ab1949a4dff2102abc3a5fcc49453adf0302047c435bb5006830660231008c81d83fe62ccd66c864ab1ca091e7e0b9bab8a72a9d90c4c3b569c19e26d89cfc1ae387640019df869f511f37f127140231009462fea71dfa4c60a4a2ff6e13a26510bbe8cb0fb16564d90217271effea6cbc52b68600511ff4151442b288effd9fe10302047c435bb500683066023100b0fb3be9807287117e283d4fdd8fdeb8879e6cda404f619c339fcdac3618ac06d34023a2626d53307f600defef55ef8f023100a1cbe38acfd27a7f07b7bf3f2fc986788bf4c5c165249ad4f08d4db496d49627632b2597c96429bedd0564b8ce2894720302047c435bb500683066023100a47d1995582d62cee13ccfbca66c38f0a9ef5e151752dda6145351e836d716fd16262fc489422cc393714b60a495d8f502310090f90da20711de1c0af831999777aa239885b4efa38b9002262a19f8a9bff2701f38671c8a281be89e3b4344d38f72c40302047c435bb500663064023028c673d6914b0f033ea3384fa7c6793e27598ad40869f7e350915f579b82c6f8fb9d48f862af09c14930e88f17245d7e02301a9a660d21ea41abe4c08578807a3264bc59c5857f1b519d408d4c0a613a07d9b2ae5a0530aec7e7e19115a12f73f0e30302047c435bb5006730650230302d8d76ab0b31a193c91b3a4a42c9a2cb83b54f69f46a89d607d2ad19ec601bd94d8e6322b8dded18c869bcd8f164c4023100f5e6c87f7aed38f3803b3bb0802750bb733cd6ce0ba170da5c90ca18992e633bb9f6859d4556738270fac1643237c08a0302047c435bb500683066023100c2d74f66d618edae1a7106e37313eec7a3a59c918b058a0b980eb9487da4cfc832243f4415c7325a5d633ea7a80c5e89023100f5d2e24b4694a28785a8548b3e6a7932722240a80b5d716e178563b9d123dabd715f82d80f3413ff02cec5be84c56bd60302047c435bb500683066023100cf532631b60432f5bb6b7bb3e5ab535ef6e08d6009b2c0c3deabda0edb3cb644fd555e88fc8e646fd00bbe60785ab4990231009999a25fc403940d2471e80818fec7608571a4774c6d271c279fe14f9ea6d5388a8ccd0c8304d1313946b6c75fc9d8d20302047c435bb50066306402303e7183df53e0d9fc52c8ec5640e71bd34a763d6717d97264fa00e0a9c363ebdc04a05dea20f2f8deafb5670ad4f5720f02301b2101519baee7c6cde0fa77f43c37dc6178091d0bcb39017e40b5ada18fb03b9ce6da4313a27240b61537c1047f93330302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306303ba0750aa8a49efa625243473a09c1b8131c1c528432c2da1823b1d87202278f4fe719e7156b642ffa769efaba24f023100a76e480499e99a4112a23c6ca770d043e1fe8d6133c4dbcaf60f4d9724ede30fb3fb5a7a342f13594a5f9a979c1b25440302047c435bb50066306402304dbc062f0cc5cecb4416baa7460533c0c4d668880c73961dccc1a83332e578b368de6f285dc202adc0cb9353c4b07b8902304900917ea26fa4ef36ba11634355a723c12fd2ad3cf02737e65b26ef3152b8c53c712301b524aa525f937c286151246d0302047c435bb500673065023100e2a61b937990296cf041defaf42b75ea3a062799bef5049db0293e0a11a46a287f633a0af6e01fc72dc60f80912e125a023013f544d742c962d4040e426dc81a8a4691afde97ce47383c9b7ac13d4d00d2e5fc6b15e722385c838743ba53f8ae4eb30302047c435bb500683066023100996e52d4fa1450d46be248a12a4eab3d0f2d386362ff2fdceb2b38a530366f5b3a189208eaa0baaa371e15eca11a0414023100805d94612228c8e0bc5e4edf3b3a97055c98a492ac083dc5850dfa06d8c0a9f10cb7dfd1675841f02f59c1d8dd0e35ce0302047c435bb500673065023100cf19d60d0af42f7f1b76a8fd22a97bb7d8f8a8e69845575074bbc1cbebff2c79a87939f6d03442180d1a1031bdccaf2d02302d7a51448559c01775da6bb5299040c55d72f8b36887613c7d6c73be7039bc0eb52e19aceb0e9ebe7681aa50a11def900302047c435bb50067306502302d8aaf54e278c505700c545858f03086bbfb0ed47ea59bdf506a9235b1ad9da8c3f655711ca1f4349ce90a311050043a023100a38eab3bf73781003792498ec5917ac91c497a7b40962e9d5a268b92c209e8ba9f778e6bcc8f690a0ad0176e5ef1cd8c0302047c435bb500673065023100ef42da871bf8bb3e1109cedb8a6195c1de658d50f730cc1c9e55c9eb0b05bbf7dcadecdcfc93069d96aa2e119f21d45b02301eb5c44db9d139b0c44ae1a6ccaaf7cc17fd3eadec0d696f738b63fcd7ebbc915cf2026a519f133515aac02278d1bfc80302047c435bb500673065023073da1367742cb0941a76a3b2e4023039d12fff92fed83a6ea2a15908632cfcf470c6827dbb77f518be1505540775dc35023100fe73885d4d6893d937abe70d234b201004d9239d2b77b28d46a346166c160c9acf6a01f98969ce60c11d11a0cbbfd1f60302047c435bb500683066023100c926cb37895331b7e56ff6404c75e41d3f7d0b000fbfa96774787f7230c3214e68081b3d8d9602305eddd4fc64d9fea8023100ed716beae5e2b4714c153fc8b11f05ac3fe0e1956367f211014a36801838c8a6529a38a727b00ba594c4799d9c57266f0302047c435bb50066306402300b9976f1c03754e7254a45f113f6c2b27cc00e4086ce8abc707aa10906cefec4241d8674b66a66f4f742d4bdc68213cb023013c56efc30481ed406ce76994de489d6a6f4fa9036f6a913c8c565a1a787bd47db4a161d4984c39c19df4138f575a01a0302047c435bb500673065023100fbbad9e31a6bd64bd1d45da3d57caacb1f8f97b03a356c23c58b6ddf9c4103ffce41f822b705988f89bee189175d5982023004ac411201a779b194f5fd03352c976321c03676c06ee75533c12041d2985c33eab63837004149f8ae6e2710bf9fe2910302047c435bb500673065023100fd47716f9083cd8adbca89272d2f85b721a92a27ce6874acaa0105ee1fadc994962dccb9edb796a271f58d3891581a8c023031605b6728206270aaf08d79d7349b1e42004042891d999660be1636c7394dcddc67353d3a94ba1143502016ece1e02d0302047c435bb500673065023100c9e8ff0f2e2cef3a47d58fab37e62e5160952f9b5a5b858b6b1a70dccdc326e1905e58b61a16b6563b22a1326189a5f70230265261c0ae5b094fac75f73236198c98b5b04ac566991dc39b80a9cf865da59727df5ffb03a16e0c599a028e9d0ba5db0302047c435bb5006730650230025c67da717f7d4f929fbda58e251e19ba9d16960750ea99af809aaed03f34156fa999f0e4b251aee1ea75abbb3362d4023100b6b993ae10e6f3f0fa80bfa49b687886f04aaadd786c2916c6a8d059b854762f6a1c7dfdf75e230a530a01c627267dff0302047c435bb5006730650230785ae5bd7ebd9bab7c9af18afc12a4ce247423ef0ed511414d799dd7603ebd776506261c1113b5edce7db2796d8af21e023100f856a0fb2e6598b68d1c7b0e68e847a2090df3262ebbf54154c3fd105c99ba464c64dbcfe50892b62cb3a84be97baa620302047c435bb500673065023046c02ae88e051dd36d2b0c74def80bcaceae4a762d2753ecb908e7a31eeb60e8b94f0c758b5fd4366785a388b4f9784a023100d7559e4be2ac3ec9ebec56f02ad7fcc52601e82abe7a3755e5dfbf3e40429e828090dbfe49e375015ebcd7dae30d59ca0302047c435bb500663064023024631c67e1cd1d1d2f7ca2c5110582374bceb3c4fdc8ef57a12ab258adee87652bb349f2a3d7673d0a7135316750685102300eebf2a87d825cc23f9eff825b76b85485c2ba2d1c8acaf8ffeb60130d54106469e4f52f3a8e7a2713b7e24f1ac2e4330302047c435bb500683066023100c855cf80ddc71e3583dffa8ae16faa722e19227f7f9c63f8050d46afffeb4c8710db82c4c30a7f64822dc14bbcd73941023100ac7b2c30528e1a18a06ebe2ea9274b2936065a16332f5d83e6ecb017de85535eb553f14526994f312a941ccc636b41a50302047c435bb500673065023100aed3c7295e1ab1439b914084d12b81ab3b97681dbac60676573f8215a22630d6c3f19ad92df0ed6d8328707ef0ab992d02304614ac16366be9c7d59677f4e0e27537e94a3c20821dc89800a2b6cfd5e5d32801c9cc718a89c3ce1729d67bbb11c39f0302047c435bb500673065023100b7ddfa2a9b7d8c98e0bbb155c8ce0e9f992f790f39dc581a07df9756daf590f956489e3ab17f97c594fdc542decc964002307eba03cf32fd2d49d3f25021bf07a164480d17fd71452dde044ae92518154ad7a2364068c97cd764fd0c523a4eeae1200302047c435bb5006630640230645fdab13d40340945f98884b6bcc8dff0bab7315b3af071e6de060ed08fc984fa91a9d732b2be774ccb9c3cb5df0ff00230255edfeeb2264a4ff9ec7f64108f3fd8dcd91d0fc42f5c03b08cbf6aaaae080df0927732a85281c022a9a6b1645a4f3a0302047c435bb500683066023100970f225cf68fc5da7c63da4e03b9d2406fa3e5eb0c9b36236cdf3759bdf0a689c5f94fb91f3aa1efe892ed4d6fdb7d12023100b521dbb6ade537aa171b68a9eda3aa8d6b51589b205ddca66b4d8acc7fe1707d8d95bb9f4355acd933eb2f14fe01ef810302047c435bb500673065023100f3e3d95ff06728f2956a61a63771dea9c7a2e6b37b0b804e446ed4d6d88a76644d3edb4c948868b088a15fcedb0f2cb302304ac52f38d374da876f388ecad51000d14b512ac5bf64932fff21d214b87fcf1113c93879621e03886812b7b19a2d346d0302047c435bb500673065023100fe75d40db60fec0752280010b93c6412bd06123cbb61364a1ed339fdee8a77ffb529ce362d4ace8e4ae64519326ee4b602304d96c820f484efcc5d14b043ca54e35d57998a33aa59c9175d7f478e99dc39d9df5f511c2d256af6aef2646ecd5116a00302047c435bb500683066023100ae9abe8018f4cd47e960f230c1137e70cc3302877bb1ec5f8f201c33eb01349b8e082fef8759bc0a4093f4c833126bae02310083b0def8936e2de48be4598be8e74e0a4c6986ea1a5c566d81a889beb858dde81e136561b29acc6a3ff97bc40bfaa52d0302047c435bb5006730650230188fb35d12a5a892393ff5fa7589b8600c80d19c852d9858aefc892494b095dceed3e43a5e186e5dd5c0c12158b18e89023100d039700620c696ddf129faa88a9f7faa0d9cf973882afabc37db30dd3c66e493a3b1ba4eac9ad67f713fee6c82947e710302047c435bb500673065023100a002769cdc1d1df1fc179e0bf246aa2e3e17e7aa570444d8b4a6a51b4089cba65a03098d1b46cef16195b8b18b6c6b27023078dac5382c029f859d3ae8d4926399cf42e4f51948f019147989d07e5c54ef9a8d491acaa14ddacc7ea75fea7132b7a00302047c435bb500673065023005d60f6e3724dd9f1fd2e1465c20f4cc2e4ebe1fe8cb665dff3d91e38518af6b03b80db5e2eef84e9b16738773295a71023100b6b6c793704aa8791610b0e30a18c6858f39e433fa7c404508819bcd00dd5519a2586e269e3078686a2ea55c5d5a53c80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bbca7c11aa8173db8d31b1e19bc9fa4ece2430e1bc4a2249411b8f77b7907e438dc7a97b4759b6272f1ff5b01a2ab678023100b633e4ecb25a12bbda48ae3a9ed81e2caef955052425bda46cf3af8fb481db42377c9726c47c3a79a6143984351e0c990302047c435bb500673065023034514bef315c1406104bfbb129abe794d1119e6427ff10e2f61f1561435885bd1160718b9633b23ec4000d500ddeafa1023100f55ea0905ac4eca264a239cb9fe8e253f8d4bfbf764add13f7cdb3c0563a604e2e42fa3cae41a74e0831aa7ac9325cba0302047c435bb500673065023076477f1789e1cf16604e33727e40834a7528ae9836beb74e3d7d1b301ed99d1b944b051daa85a0ebad8dd28af672cefe023100d71ef38bde79b0b543455e2ada47326dde3691d7e156415cb85be80acd9db9670161aeeef53d4b9c354da68f9068e8ac0302047c435bb500673065023100bf0b07d3319f17dba0d4df93aceb0806e09da62a86b7998a3876e7c0b32bac3e0175114885f5d44a14f62887cf0b7b6602305f25c4bffc71786d89ac521c89ea6434c00365ce47d418a518c50b0473cc94dcf375e6a1a84cc1c3ff9c8352637df3ad0302047c435bb5006630640230603687ebd896ff3518a4a15684e0daa21921c5e2f1acf37b6fe25254240ad65a2da984489a32b3cd08cafce7776b41560230289b7ec0fb485b3a91335a10c231835c3cb09c32b12ce05bc621db501bcd1cc41d09ab6a3e0b6a540d294ec241954cfd0302047c435bb500673065023031cbac71dcde2d034dae3141b8256a42eb69ecc23dbdba7631a5b897efbf81306616c268f1bfd57aa0aa8b0f980f3162023100e9c15a2ce84da1bc85c721a2774defccfebc218c0eaff65455d02fc8d73cf9209cdee6ebe235b9bcc8e17d1136deaf600302047c435bb50066306402304b094e54e5573e261b2d2639b236de95daae3820bebe9d4d67df22169b7968d42a831dd12c20a00e38755a5a77510eb702301e19da3a8238bfc7dbdb3c918e93166e1647bfca6b6fbb6a6ce753f3fb2c554e959ca9078d9791e85d740845316e09120302047c435bb500673065023100ee8f30e7a41c54a1aca9230d83912c1a8c40fddd372dc5b2f40fe4f3f802e366f42246edee43b6bcbf27a350284ec38c023069b98866067a5fbe448ecfdb38c2c23932ce59eebce342b0656cf2aa5f5cf6b76162dbf69ffe7d95141b06d176c5b8050302047c435bb50067306502305370becb4b06f4c80acaa696b132fea439b5851a22e5054afff03214af3925d4f5956bac68940f16477d599cda988815023100ba5b0f6305460a101bdb29e1fb4d52337c69918157a2a7514c6ab16273118ba8c437fb882344d2c5ffc37f73443452f30302047c435bb5006730650230704911cda0cad3a630993fd083b333e88c99dc2b2a029e1cb60d93871c7f9548557153305f9839d01edd375aef57efdc023100c09eed6b4263f0bd118f67c9ec4cb1086e208df3169e84122c9ae9ebbaa7a82bebfff8c58d4637c0e76d4998beae9c370302047c435bb50067306502300710a69f9efce99f2e1a2457948ea127d5aaf38ed55a6960cc11300db9ea23911f9e4ae2342e957b1ee4d214a375d814023100ed6928bfcb048f56f3356922746fd3661a57674d4fb9061af27a19c69bc0f7ae465ddf5a95be63aaacbe01bcfd9da1710302047c435bb5006830660231008eedfc3b0030f3a17675b4c0019b8bd81a6efe8740bd60d6dc5dbd4dac17504e1347eba5433097f3df79c24d3e38875d023100f3cf3e9f66db254d9a0fdc1dcb4015be6e135e7b1c225ad250b2ea8c703e3d73e758e77ef424619bdcc1918b1ce14ad80302047c435bb5006730650230285bc4d5070140031a30c6b17df874c28df271ea291aa4f24a47b197536642104514e523383e3be747ce5bcd520a51da023100ca23a0e96ad38ec001cf8e9cd916fb53903a72cf931f759af0f0272533af904f785382679c1947e93911cc27d7f436c80302047c435bb500673065023051f29d68d1184922c1e16679142cf6674e7a8e3566e86f0ecdfcf57c71c53ff32ccdb95b45a5db3e51987aeab746a03b023100a2b93ba44d8d57d3df1715cc9b575e5522d2976e49d9785e8b4faa50eb118e8de44163eca86784dddf9864c927081dde0302047c435bb500673065023100ea65536529c42e2846db72717d7c0f1cd6db4ee66270f848d97a771591481b28dc0ee835aa749149a259e6f442bbee9602301a075b6a38d6fc6a915f709032bea49c6e5778807853ec5afe733f9546cb0b8debf077559eaf6a0b4556187abd8e6f620302047c435bb500673065023100abf342b8be1b9c73279fe87ab8dcec95486bf207985e541233cd53447bb301e84ec664d820f2edd660ef32b8c07e4e97023073ddba7b66eec411d4677e4520036870a31c07bf7b9112c167e8fd338e7e5c35477397f4acff0d38fee16897ab70d08b0302047c435bb500673065023100ad19f752f024392d31eb0132ef404150db5ed6fa54a99445cea536e17f0a861d2ba2564a9f3a1ad0c9850f523c8f6cf1023000a67c2a1f74e83d8637e263ee853e3dfab1e1b6b5954757e409da9b6e897a3ef9ece4f7a656953edeb45b5da54697fa0302047c435bb50066306402307624df6c62b257735f0d8065899bf81901d104e65aaf5a2bd6790beed20d368b067f2e1ca278415adc9e36000f5e63530230030449798f24465332a3a459795e75e8f86cfedbb9b8c48a9de95e81f53b76e6baaaf664466b642483d42091e45b2b480302047c435bb50066306402304e63b5185488c4837f00510203f29627eaea2c559fc8ba85f4879118d08bfe4d9ce44688ecfb52a69f1133988e52f3a80230655bcaa9d67c423d8df5cd59a0361d5b25af3a2d322408733fea8fcb007fbe6776466a3ff0e6817b4fd784d3082af1490302047c435bb500673065023041bb274bef40445f69b1dd2b8989f451f71b28b23bd42cab94104ab099bfdf750371de2235460dd828c9157ce9adb73f023100a8ee2cd753819cf472c0dd0e8c4f8c58fd090b698c60d98bf7c8a264119560a1c48e97a2274d2cf8952d5c3181c09b790302047c435bb5006730650231008d628b30e2cd80d1500b3071f067076fe1ae3bbfa2ab2483d162e4e057bf7f1d4e5157a62d63f5f8e1a0996f2a463fa00230646f4e467620793275027bf28756107fda6ac2a3a0d919b47c34659676f0c786b07370127be578cd2e3c19cb65092b550302047c435bb50067306502301ab2d2359380891453149cea1c3a02bb8cabac1e7724febcf611b0d5c4d5f9ab44c17da7cad289b52934acd039a9651d023100cef6f18b78302d905de978183b7571f4362f96a23876623a5fb2bb36743c2968693aeacff551900bdbc809c2ac8a71af0302047c435bb50067306502302ee944f453fe134222543b7f7021b4d53459a6d97bcf3a69bf642db9075e2d28cce3f592caa76877fec2ed6310fcf556023100d843b85e739a1a53d9c0622e0261ff7c2a000976a1383c84d44d11e70864e8319c4d271ab450ebff98a6ee3af1143cda0302047c435bb500683066023100ea5d1ad808c2c16be25ff88d12dbea985c9c2e3b85df6a9b82c53c4f3838c05bcd4515e63c90be221fe6e40230a2dca3023100b64f2f25a946d17fa30fb66b2dcb9dac5221a8eae0115c7dc927579df1535b859ea42c6ab653062f2f63c2e6f8db90c10302047c435bb50066306402303837b23972be6ddc36dfb1cec43187bfccd61f9dbcdf43c0dc8b4b24410fc6f856ebb210c23e2a005e7706efba0383fc02307379b221ac50c2ced6c10a19650ca5205050ea172262ee6c9b0faf6b8dbffd0fcd20e5e1f973502115671e86dff6e48f0302047c435bb500673065023100bec382d2a2ef156594c3736f81894e8d0a470d14e9c591e17b7d7c776b2f9227869a44e13569b37242e59904ebf0488902303b6ac34e37cc5bdcf55348c56bbea5dfa7a09a69fc13941bf8bfa70b353eeb317c1870c6e89b62f817424e96fb1c5d720302047c435bb500663064023011d13030803394dfaefdaacde187eb6b53a85208cfe2dc630acd0b56fc64156d3d1b733b3830faf8cdcc3ea495810b330230135377874816ab21894ab6172298e36c642b48a7e754006afa4e7af9874f3360a2e854e959e813fec7676956c8b4cb0d0302047c435bb50067306502305857566ef5470ac5b121e02407fa3a9ac2a10baaafc634cd29d2e2a7d2486d271fc13ae76fab5842b868c7a166879dd1023100cb15c4ff346da3bb25a86f28a637e5512b7a0cdd75d9de4e885b74ad0511877d8a76f4b11e845ca20dbc8b547be5c19d0302047c435bb50067306502305f3ded9ac9dbc1628cb1a123ed0bd203b4b3007840b65c8571bb171e603c5b564cfb16756b94f655bb5763451e8920ad0231008010e408302a04e2d832a4af2f9771c2c1f3b4a4870e1cedb2786ec07ce7fcbcdffa1aa880557fa07332051495d1cd120302047c435bb5006730650231008ed5adbe8cbcc24f23f0869c481e7b17d30bebbce0c84d486bbf2848c5d45dd6ce2d8f66dbfa17cf59cdcf35ead2e2eb023010f7a39ef01a25266feb783a798535b1064492386d034fffb0157e42ddb4d1aeff0b4ccada46327b4f9df6452ccc1bce0302047c435bb500683066023100a970a363f3b396a0486099569504163ce2ee6c413003560317d87b740cb7377c679f4772f1d298d5cdc86f08aa2fa82a023100b330fd782ab4a76f888bd8b0a64fbd0eda8051510d1b934e2e4387c46163411c0f05d38943af6504b867b7edc3b7f8f50302047c435bb500663064023020e5c659e5a142381b28c55599b5fc107b62f9f3d5376f3214082b9474c5a9d8691fb0d65e1b6f981f5977c9b4a0f1f70230443e923fe7c713c01e31a5543eb0f9de35e9e1d3bbdd87fc9ddd9e9a0ca4e1a6a2938d1c7ef45f700386bb68a3fbfe010302047c435bb5006830660231008b49618e984d20c4f55017a75529081f9723ad0d583763192f233f4c06cdff5654baeea06d242c9590f4416eccd563fc023100ede64e99b97aaa6e0c92fe2cfa8e41f608b27dc2e5416ee14d9d99fb2940e000a24ae5b322119c7c968fb166beda8bcd0302047c435bb50066306402304efa5f8933cf6286218593dfa367a8be8ea105d6ac5e5a943b322ca242efbb09275328e78d956aa261f22cfb0045dee20230600fd3bff950b3e1d3342ccbef8a100c928c91951918c03f0ae5cb6fafd4f8f2158d557e145dabcf0fb69fc956f980590302047c435bb5006730650231008dea65df3c841063022b1cbc1c3e65f18e00b03e6e5a5ed77f86b4e56cf5e1e6e5f1785094f3e9de4c9bed41a6c626d802301f1db3460efdcdf743e7e4e3bf51e45b58c4355b49fac9a93995cea042ed701fc34f6355b4d02f825eb2c1c42e7598780302047c435bb500673065023100cd3bb838ad4475a827f3445e5ae7e3685095bf1b3acae73018779c9c78a39374bd788238e6e98520aad47aac140cc37a023073eca6cb5369ff72f8f216750785a17661a9d7c641ee1004a86681d0cb2659973d10bbbd5ece0a1c5bd319d71d0583000302047c435bb50068306602310091d15221a8c1c7bbe329b127ec86a1f0e2b535b92ee52d66292f4f52e81a2d44fbdd92f69826d1c15fc4ce431ded7275023100b197a62d10a5c8707b12cd018747baece805176385e410f049e1c04a5ea0f8c308cbea0692b3a468951e2dd2b1b8b3710302047c435bb500683066023100ed6cf16f6ea31554767c2962f56a2557a9c2ca51bc5e7931e450950cb1337eae75ed0d1b86b370706cda46e8bcc31d6f023100d9724e570c3e517e9d01798c7cbbe34813d9b0b604e7d3eeae4cf77e35bd10924196eb7869c3bc80255dcbd375ae26c70302047c435bb5006730650231008bc548700e2a3abcee8d19b6e01cc6a89bd1b4498a4fdd0fc0e4d200bee0156c98a912318744afb0f79fdbf1beeb72d8023025b065a39da893e6443dfafb8c94900cca60c0a0dc710cb6a80f3e8e5eb9c20032b15586d4057f4d5d23ebfde4989b3a0302047c435bb50067306502310092a72bd13d42060367bc86957a11af9c9fca3002e91c45dc9ae844a3d35b16eb36de584c48ab21d810e73bafac04cce302301d7bec2a8a2532b6aaf15ba5972835f974e026feffc66801c822790333b3418516b7f438b4424f3712a7219892abc8d80302047c435bb50066306402304ee06d94a84783256a0a82d416926f3aa3f8e568f2af11ca21ac4a4106b0fe4f4a0ecf7dbfcc82c9693dc5a0b766dbe102306fc721757fa7a28ef6d83cc87e513a73466dcc5cb809a077b17bbaea8d2f8e13ac9ca59490d6881dacf1e3abd42734630302047c435bb5006830660231009da1a3621a1a4754ae03a3f23705ec95ed9495db1eb723f4ceffdb1336de72422409a959fffa264fa39f4eab1168e4b0023100bcaf57531165021edad446f256cd4c84898ffc2928bcdd7a6cbc9df715d463fa5f0cdb46f65a5a4222472d7ead6bb60b0302047c435bb50066306402303dac4397a185c5d4f2361920b542d9f810475383d5e509be87c34606aac75ca449d20962a8bfa831ae5088e6bd60fe9402301934e674d3219bc3e2fa70c2fb0930814f9b9741f4d3d5ffb8e8f78bcc15337728156da03198100a796980217734bdd50302047c435bb500673065023033641fc42d3df229d18333bff5cbf7d4a6b08d5528fc967df47f0ba5509e82afe35381f44e8295ae893cf7e4d9de4ff30231008460decd98a43e4c6d2cd43541cb1d1dcda55d340aa713ab845754cdd93e544a4ec349ff25b20c6cf8b68a1595a01dda0302047c435bb500673065023100b3abf4409922988a257611874a4c38dd3dd8944f51daa82412e88fa57b276c23d787f51dec808e1ba59791a05f7c54270230534a1526e89cdf388eb62d30a308f35600129ce9f7477950c8ccfcf722ea6657262ec82247dd060093089143dc47431f0302047c435bb50067306502303f786e2b2d4ca0b7ab68f8e9aaf2c028fb17da6ee0bea109cfb3507171b55114479dfff69a98c9254d852c875ac6354d0231008ac8d0d39189ae94939ed855dc733bb8134b2167db9bac22319828b80213b993eeed958d5821a8cccee2d99eb11159030302047c435bb5006730650231009c646d30c0d2171ba7be7081fe494572b74ea78414d4f39d4fc0dd02adedbdb661183565f8679691c5983c42c8dd771e023038341dbf998a5ba522fb3b6fc9c371cd870db448fc8373e635dbc52f25413cb9ababdf44816ae7a65c465af6769c8d560302047c435bb50067306502303aca44206718f04855c2ba31ac8f5d5b4136e8e14f375201f69da182dca9c9ce7eca646b562a20562f4c046eee9cd2cf023100cd394d8e64c793b1b22872c859748278d9ca3f9d18e1363619930375ae70833605e31a13bedc0eb70ea73d0d7cbc587a0302047c435bb50066306402306c854fa5af4d7bc6a0d36740151fb875662d8443a14b7207e638e6275118dabfbed1c6daa706efe1da5eb07a868f51bf0230013251cc79df67e5e56d735c79e994f87fb40a22dc58d1b6a0a41809f7caa09098ea5e9b8b491b7acd2471f1510717b60302047c435bb500683066023100fa7ffd32c5016adad0a54e4e95fc1d10e1cce8d39fdb219f3e5df50b9ca6ebfcde7aa524dbed4bea4c82462465d96d8b023100dc65f47188719bbd9dc8e6997c50204ae1aa000fb8d623f3f1a0cb69a15af711941dd588dfb88d9817b1e88f5b536b6b0302047c435bb500673065023100cf5e347619c6b530f832b452598d32845cb4f979c7a6b60203d0db50b4f9bb47c390b7d567f0f257e195bbe65fb4369f02303a226e08902016fa5741e1ad46fcbec128a23edf83de82c107ed4415856b4ccd97ca126219436c4029a88c9ab79adb660302047c435bb500663064023012670981c3e339df18fd9899fa842325166c199ff497ba63be4899c4d134ff98e6c660e939543eeba3dd5c0e2be5330902300efc8ddfb01e3e28440847bac0acd9bc244f07ccb5e39fc197795bbee96f99a8f43a18f4ae65d33e934bf0d6a3cfe6e00302047c435bb50067306502306f4038527816d440c3b58c984e7cbdddea1cd3048bf7fd1e4de49b3f12894c702cfe00c55d543d879cad10f4d88c4230023100e3b0af118c819cbf450d6544ae5b6cfa0c124ffec792e6cd0c8d45d85b8f07614d3ac128c2b93647102d2701f3b03e9e0302047c435bb500683066023100bf5f97025b32170fd6aa0ff90e71af27f65b08d79c574cd807821557bcdac9c77868a74693393acff496684ded3ac6e1023100de9987997426c5548beb8a49b02df834e640d526ad0dfb320cfb83f3b0f38063187c0b4558d692fbc1403ab0b24bc6ee0302047c435bb5006630640230494bb6d4f6d4d7ef3dadf59dd616974447abf53f608b908c6cb9ab8e4275c12e0f508749b06a82e6230f7b3db0641db102307f8eaa79ebefc1115c2c33ce5e3d06521eb9c4d494a1558580bf31e34258fdbf93b265775fbb74b91393d63dd1d392950302047c435bb5006730650230298474650ed2d43ed138fb74c11c696014cc3a85bbb960e2aae0f80ec31afc2167b73e28ed6b0f0edfa56e6adcc041a8023100f092333e3d6b29d4b50965f3c9bcf9034e6de49474e6e598bd4133cf125adea8bfc5eb64711b30e2b2a973c497652bee0302047c435bb50067306502310089e61a7eaf72c23a9088ef437384f9f69759496bea439fc59206ba8add04261a4801b752b4c9d77257a9e57ce29d164602300daac2c635ccba6ca83bc3ed91d17a56e2f707fa581d6ee9461e06010fd428c8a90192d05b5424ab5bbbddff6fcb56400302047c435bb50066306402305645916d2a9da2962b76254912812b53b688e759cdbfb365f304685cc6c3490ee272ef7e80aa4ab6d1f648ae6caa351e02300e945d683d53b3b2422145ea92c7802a4707c405e7588d06d98786aee919ab9ee02fde092a1606000c180d62a846b1a20302047c435bb5006630640230195b33701eb1de599837eaf264e5d7adadfff8e8119d5d9510fd62c35322c737df40f3dc9bfbbc6e8f179d871071252b02306d669dc42d184b229adfb778265bd7c02e03b40189fa50aa93789e20907f0023206e66ac48a3e7ea3d8c80287cff26390302047c435bb50067306502305ea772188613b53e4908bb0f1e33a4432df0ce6958c56bf63322107933c9e932b8384c7d0dddce815bbeeb2ebf43f9f70231008aa68a9ba33cb694ab680e59cfb2f9dca41bacec75e6a58015bfac596ea2ed00a138298cd43ed553419b83576ed33bfa0302047c435bb50066306402306e0acbdce27c1bbf5c6bcd907363073dcb033a336965568ad3ffe7f4c8076d9c383d09d86eff73e5fc6b04fffbeb60f402307fff1523f2ed3a7bea5aad99cbfe95e34e9674b8a01a71c68c1dcd78750892fc4f8181555ee5d8f6b44a7f0e316274160302047c435bb500673065023100d7c39b49ec31d5cd6430c827052c74b9b2e5e997b8fb9b12e194413644030bb592c9604d40dc1c63b1fb86072ac6881c023077e976e5665e5f8af25dccce9e6fe82ea8f78f63c05110077b386402e65fa17332e0a3fd5d3f4c96fe347fc1a7251cf50302047c435bb50066306402300d6ec665ba71b6a76063ed36abe2c69d0955bd7027f03c06befb55944dfeba23b2ccb8d34d60649699dcefa5854bf0a1023041c21d164b9649153e4a63590116a1a485388c30b5def4627227d9227cb185c82b70789070dfcaf0b260a26f0f7f38070302047c435bb500673065023100ada8d7ea422045762df5f0fd20ac01dac19b1eb66c341622b5ad250208e213b743dbfc380639841e455d3801d3bc6bbb0230170e6456d18289f2cc3e7dbb02e850c93e77454da286e1a28ad62087313a935e27d7120457c5d5582a3233cffadc911d0302047c435bb500673065023100c000581df0604fe7e9d44828197202a6af79c809c282fca12dfdeb0c859ad66366b4cfb14a75147e821b54988a5b490002304d2bd04917fb4928f4f87480400f480c1f31992b5fc089284fc055bf1e5e2513e3e0edfd63be7a8902de6210d48bd6510302047c435bb500663064023054ad784a61e8467f4fb104ba361d840e0cdb9dc2acc585e580e923278987f5cb52607e3bd5f5ae31ab07432fdadc34a9023050d9a79ca981f65deddb72c6a5cb533cd637a8b456bf7aeb81273c00636971b21a084bab433c7898502d83d67dbaf01c0302047c435bb500663064023028d0d7a72eb2a03aec4bce4243c452f02f60794426bd9ed6d12dae645b75ff996dac3e75927d913902ab34fe0baf61f702300852bb3c12af1ef768ac7316fe27ebafdf24ea58cff5bc176455dbda75e7820917895688e2bb8d16d5310edbcfdf44e50302047c435bb50067306502310082d2a2b8828e4f3900f8786571d4152b78b1f357420c23a92e3ce43eb51e284c976d8484b2781def54c19b9894ddf5bc02302af0b7f91bff7018f44fae438afe2973c99a13e9972663173d07b491608188be007687da8dd257d0e0e569c2caea95ac0302047c435bb50066306402306eaf76a31456b8c0737e770a1e85b345efaecd91bf2972544aded0ad56c38816ce8725ddbb4dd4b0bd5b41a1975044e202305c8426c0b208e7ee8b57cd5136af3b4f1d1e2a4c4a9ce5a499eda5e8485834378af3e4c83a1aa182e19ab78cf21366110302047c435bb5006730650231009dec29f16f72c935c22a330fd9ca504abc1045a4ed6824f8729ddf38b731d06bc7b6a399163b175968fdec925585b68102305d81449ed98ec185b4583d2e1ae3296273238c0f88e0beed66a56140b30fe6d0b6cf93cfff81636051228e7a2be006fb0302047c435bb5006830660231009d6c4a1eb42ffe55ff73cbc076f087d159f47e822d595891949cc0a76478294056f69a9dfc68b06a006f6a467b477711023100e231c35059f2b5138e2d081b35ca25c7f4b1bebe889b7b3cbece2959060a9f6c513864138ca37d58565e9491fd41c5800302047c435bb5006630640230261d789d1cbf61ac98906171b7124cafb0aff2565448350d19e7043e91039b8ef7f94bddcc3ecf2e7cc40b97310a47a302300a54f91edf553efb1f0114f91ab1da4e0a5fe578476ce80c0296ab69f19d0278c8a5bc257052582bbde0cdad7ee170a40302047c435bb50066306402306c7189887946ea483f098357603b66ac7075080cbf4896ddfbe94e4e9d592c1157550c1a45613f019dc91671a631bed5023077d7955f0055ba6346349f7fa6de1a9f535893e8780ae7680dd2c3e8b0713c1106051427cbfcf35c30f7b1689f29f1970302047c435bb500673065023066853ce83b2dc7b9e3d1dd2614e654aa6dfa5796b9570e464c2542a8810c382e9c28bc1a0028d6526b81acb31cc5e48e023100a8c4790d8c3bcb0fdd4982636e014119d20f757a2ca94292ac431068d651ad178dafdc8b356ead00c0f7dd98b4d446fc0302047c435bb500673065023100d7f8c23b8ff0e2600e30f1c6637aeaa748e99233794cf4fc98523b1e1d0823871152cb211e6036b7aa557a911492d5f50230608b641250076ea0b14fe328a887f408d9dff329286679c2b6d7de842ca6358a04e19682557b2c436873db0011d9eefa0302047c435bb500683066023100f033ef5b592d65a33b18f62709e37a6d47cf4bb465083c2d94974c6066d460db18b82f021176ea5708360a58cca963df023100fdde18f381307f6e28b09e46a6c2ced1fc2dee3045a77ee2dc8dcc9a7383d5e300681bd78f6785c709829ad002fa82e40302047c435bb5006830660231008464f5a1ea84029d78df3b52eb524d5df2722c45a851acf059ca39c218802fe17f49dc2eada3464dcff34987c4f3a5860231008ab12d7e7045be4a3f5443f6d128ae776fcefdf709237ab6695ca72698d058c92c581d10ab2129feeeaf031c54f2d1470302047c435bb50066306402300feca23e4f63d36c284186a72d283f591a24a192dc7bc2fd81a94eeb50d9ee2a07f9446a7cc96c53706f68199f0d04dc02304892ec6acee73cb1f7184b980aea176db419cc3a3d57e18159f2a4706fd42dc2ab12b107cd26d9f86124038abb5eac700302047c435bb500663064023100afda7a2895b4184da19250d19efed313dd37536e1f6330d63f768d0315695de2542ea0691d5b45323cd51ccfa4c5c385022f539e0cdca1de64686be36fcc0f8d0cad888eb570ccec76ec02de348ac6d749ae6cadc2d645f9faa5f84cf50cb4ffea0302047c435bb500683066023100dd5f4a071a0b64e3aba9ef3455e400d84cea7d2bcf3b7aebb6cb992d69d47adc9f30d7a679835546de3dfd3dd0d6bbfc023100d4c7e26afa444bd5028f3013932b32700648a5b91d0abde0b88c89072faab99b47e51661136ad2b39bd0f27c9c81d81f0302047c435bb500673065023100f10be82fd7d65c0bb46dd919f8d5d95dd7b28d4e796f5b0f3b9034f2424899713fa8bbcf383c7b34c17e093afb30d99902301beab5c3260723b00f12e70bd2cb29b58aa80c9660143cec652810fcf176130f0c73397fe30544600f8b3a21161d16fc0302047c435bb500673065023100bf12103b5734b08087ce878f4cbeb896a9e070cf28f18f09bc0158c25f514a9f913c03cb609c9347e448e8764f6d1d71023065f0d0dfe18b14f8e4bc80173c4905bf71c3dffcb007ef2cd75a66b214190fd3f5fea353c45428013f9d55f57cfbb8d50302047c435bb500673065023004778b84d3f31b744ec889b512d2e3e959285cffb410e8ad895e4e38ac6a4ad4ad40eae86b05f39fc0ab987d6e413151023100825ded649495140787d1c923049e76a1931652b22e77bdade365dfc7cac8dd8481c4c5722d273075d925af0b1d8fdc420302047c435bb50066306402301d4d5b9dd5699d46aa77adcaa610d422409d2469e51a23b7402666671f944cea7787764e299806484d77dca4251d87c1023003a0508bdb8be7d5637114e725bcd96b0ef6be3d809e949a23fd47ea15aec8ced27a12819bc51b3d4093754e6033c9160302047c435bb500663064023051e254af647f6bb8752b2f3237d3b5a9e96d74da38e1a1236dfca9d8408cdeeae173e539f896ffeaaa6561082c3847bf023025c585dd73de05204a2e4d4880462db36a655339123d1028d7bbd3e12af759b88389f02fd659b7d9d328654a8694bbe00302047c435bb50066306402300b908f10fa562b01c642f44ad0e587e782d2857610f8f495a630fe0813e991efee044967ebbcc5cfc1e6254635a6796e02305d6ab676b999926939f17469130bc0a94f54d6c3383bc3329a131a4edd510d54048851d23553c39996267814fdde4a090302047c435bb500683066023100df8808c87e9b86e56e023beb3a6a551c84327e0b5cf7b5d9f1be1d722f2681757d26b8e381ad52e2a5b18b949a6b858c023100db862ccb8a956c3841de4f41fd204c38f8d14e2587c9df7bf3e5b96d0c403b30d9a02558fffe1bcf4a0a2cc95860c72b0302047c435bb5006630640230550d4b2a5444a306790d7510ced52b1fb457d7b9c86186272311295adfc02a1604d1ccd5135e4a322ce72fa97168c26202307ab1a27c13770d21e03f02553a359acb87a552fde27075498c4b20909fbb3be6e29895c316fca5263d009f1bd38ce6100302047c435bb50067306502306f224774b6ee04dac0774856498b11c660c338e894d22aa8beb90d3a844eacb1fa4b913065efcf4a653c03b51706c0b802310081d21dd5c3c9a73ef716b5733d15704513adf84ebf05903f50d961f9a1ce91303266fb976f74a105500cea39b2506f290302047c435bb500683066023100f0bd36ee9985103c5609027b584bc4f668794a19e2712f45578981aa59477260d99eb0ce5cd4a9202f1bffacb959d84a0231009dce13cb93a168a62923b1a952ecf200a2e20f54e21391a55c6fb883f4867896f3acf1d849170a6fbfc3aeb5a7829da80302047c435bb50067306502307c0fdf463e33944c03f5896507884c9c879bb228f4eb58c9ffad6288cffa3b0b383b5b29ae55987d6f2fa260eaacc525023100f5fe297b846cfb28cbb3d57f8e446d1b6940fe08eef3ce1248f4737dce63b9f77b767f4e52c7e914b45622d06bbeefdb0302047c435bb50067306502310096a3864bc5c7afeb63461ec6b4686303f01573b0c3ae4bab1ba6a0f9c618aa13c66651606da2da13c55f97694e8ca04d023003b521934fd18976b8edf4573c231414a083864ebe9545566e0b14f8a43f7cf4836095d6d67891e9c20bcbb21a5f35310302047c435bb500673065023073cf6efc9528233526729e76260b1ca6a44d81a028db54841457594ea1529e2a37e4dde808792ea8c5c260d00c6d08e7023100f6fd7bf626f84fb1fc9cf88a7d6c2a475a729f5dca3ec671c36a1b7f28ddf80d9cdbf7935785518a9d7b46a6dc6bb5c90302047c435bb500673065023100b117a8de5bf1b3fe66fcd36f25ba782e73c46f9bc702fdc5fe1e1a537603cbf0ad84e7375c79d4db2af55d2238a6fa9402307d6d98117516554bcfbdecf38b245b85ba99cf364974b2eaef515fbec1a7d5c2e24d93d6b28679ff7d3ce1792a485cd60302047c435bb500673065023100b4c159632344377246f4f01eb5d233f8811bc9c271161e1234901f850d0263b16add3a3b6deb50c22d01e7fdd754cddf0230230d81489be56ba64c44baca522719bd6f7d487cf7316872c5b7320ee3b7a09eaae2cfc0ec8ab0f916b137a52617ef130302047c435bb50067306502310085821f7234a4042f3fd379c6113fd436dbee83b8ba57d62072c15922fe900b3aabb1e6c74cfd48efde9f818b4d4badaf02300e92125fe6a9b9aa2aa06c475169f5418b66fae31d1fac3e8c06f8141913bd8008d82e2928ce1b28c3fa481afa73670d0302047c435bb500663064023022c2a52d02e4548d81b31ab29815ae09d5173fd26c50c7398da5e3b21209f014703f41200c9571b555c58f2da92b20de023070b667ab01ca671f8631bd8c130d1b6a9c80fe7e80fce6a7248e5612fc0ec089fe69bcb05ff6f9647f4605e32173c2030302047c435bb500683066023100e1e51c48be83a3fe0af2b116be63e24c19dfbd12b64c07f96aa8aae41e9e982da260c1c0688aefddd1e4c39b32fa0cf2023100e84d30120de6289265f68dea9ae6a96d93880d9cc00be8d09fe96b92561785a77b365669dc06bb4f15de34e83d4830540302047c435bb500673065023100af000aa6e0a4cc9b3dec55809397bc543308563398f9e4b203da2a0d97fa8a882c4372b81deaa969929dbc4b9735e90b02307bba7be7c5bc4dd342247687715c2ca6fcb1fd80751e0de2de0ec22cc6124ddacf283a7accd0b6c341188bc9836312460302047c435bb50066306402307de732ad737dba02afa4fbf209fc538f153c9614cd497f4cb09435128e22cd7136790c40bd8285ec261401687ff05528023046d29e1c838d08f46983b8688eede1281eb8567e23d336e34c06120762dc14191a0924ccf94d622aa81815e90b94573c0302047c435bb500673065023075896c2dc2b8b12ae14a45683e5457b73bbd859122df390e78347a2fb32b93bc008c57983d7d316cda95b71b676fd209023100d4f3652341dbc6966879106051897c706e248a56c093fcb8d73cdc7ef3041d5d2a9bab372c45b1bfeb5fd320e6289b3b0302047c435bb500673065023100ca3bc7400b778ab725e2b1dc212787e447c9db328930199269a1380f501e725609f6332ac4d2195ba66ceca2d1e1285e023022f6fd77079d0bd4e7b7714f23642245088a96d2c65cdef3b0182c332f464bad56d8e92c979b1f55dc8248bedea62c620302047c435bb5006830660231008ed19d7a07338d4e53c944389c8a2f6b856e6c6d14acd8de977e975c76850bf0004b73bc737066c41fb473e5eb022661023100e892e3a9dba1517e835c06185353d1b4df3f9562c7d04ea75057f429efe6179acac609d889c1a9e14943b85a9ff4b87f0302047c435bb500673065023041d952bec554da20369fdde8f42540dea2025751db224cb181e89412d780a59222e0c598995584b134b1e90aeaa98f4f02310089dc9411180786b9d8aebe966aad4bad8160d4990006be4cd678dcd6f371b9d3802240f793b9c4a6759b63d266f0a5890302047c435bb50067306502302f57384117a1cb8ed0af9ea52a14293858865c18d6d0b7d2a649fa8b8b315343d63f6638051fcb53f1608cbb8f231d31023100d7aa5c4114784c865b4b3e148653908a3bfa04164d62e0db42c0958f3ba615cc1140c6613ce61e04faf8582bca81b73d0302047c435bb5006730650231009e8e38ecfa92b3cf11687f3269e33ea9c658e337bbf5be32ceaf7493c8c7541dc45f00afc943d90da662d5bcb12717b602301c3ac4eb3cc091119fd6018113f62f2def94e01e45020d4c6f284e4e1d596d5a70447a897079c3dd7e56179a2af00ad60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d5145683520186bcd11f4bf6e92a8cd431cbee09cd55f82c3d142eb0c1e3c33b93a6017dc2b5c48a622da0a3b9aea50023042c45c529e3294f194fdb7032ad81f63383085c7a0c39706dbc510ffdc7b429c22d0d5f87b21fa1c169383f20c51c3dd0302047c435bb50066306402300344eb5b024ce341ec593c13c1b14022fe20b231fdec20938495777be1731bd72f02545d7bc53786d17d77429e2c06c902303390300bef1f9aa2ea0665af8b598a8181b1595597c291322e0f748419c13707ad2822d871e73b3025fae871ed1435ef0302047c435bb500683066023100f3bc28a6246543b0d671640f7f93744a398fbaae38c4d7ed8ff6dbdf0d7890a20e38d9e21e7ed080f31717639200294b02310091be0e69ec2d736b92a61843778ce8e7cd3ad6032785eaa158cffbf76391ca308c028f076ffa084e2562b29fd405911f0302047c435bb50067306502306522c847ce9c763091f71b57e56af2c4cbfc2bb16907f74578d6c4f24d71d418f5617b7317ccc81bb308fdfea45dc883023100b9e8ad0a682f6919361cfe7ad98b03ded4bf369fedb674e416007332977ba8201f6fb790b71a5aa958497555d05823d00302047c435bb50066306402303e6428772edb256884714a9b7338e5001261cf2aa2325fe81fa06b43ae3ca4ed1df13d1a7dc9b061e2cfbde2f67825d0023076a2892c1417713f09fda4ff1a11042cf0b57998422e9106a0f3f7827d33ef22d0d595298abb5603f00b37e16195056d0302047c435bb500683066023100d8d7789749536cf46afd466015fdd494aa3237ddf6499a013c6636ff46ac6af07bff34a075c64d5399f75de49ef86818023100aab7ad20080828a71f30fa231b52b88c1b470cbb468fdd3412e52166de1bd76633464863112e707649128f88236486f80302047c435bb50067306502300861039fb3592e7c30bffaf67491d8d4ad0646dcb12b28c582a1f9f27e593548d5167e0b04d597f837b198d8afe029aa023100eddd93359a1fd01fd9ebdf751b6cabdf2951b6e70d9c0e7836c4e77c02bebf55152f4aca483e137c6ba0cd6fbaa7c8050302047c435bb500673065023028eef0bc4dc4e5ab0e74f469235547b09bda2f0c90288ebb9ab3c3e977b070d4e015eb186878abd4d8249a4a50163d17023100c55f157d6e3171c168ab499d30069210ca40df11536082d531920566adae46a2a7e1f82765ff154f620854f1c312326f0302047c435bb500663064023046d518b952586cdf055bd2cdaa40d9bb8514893d8c1983b80a0417bd75d9233363fbce2ec8223994d885fc5af1c6d3d70230591b9972b6b2018ccb7f4bd98eb15e4340375aa0b7b0079f13f3c1e8c7b4421d10e91347fa8f3bc89ea4615865491b6c0302047c435bb50066306402302fdb2ef993ad2b69e22f9f023144a670e065c1b1ea4d3f031ad48a12e014deb3b9003b15653518526190701440813a40023023dec1b231610104a504952ae1383c5ec84560d15a766f16bade2e67bdf92b61dccb4129b6eb21bcecd34a277e77640b0302047c435bb500673065023100aef56643d91741dece87e0f322c00797e2d1013067a1cdb42080f8f9c8c627a6f944a417b3ad2fd4735d9d3a385d34c302300475b52579cf47b83fef63e7425e1923fdd9e353dcc1a46ce12776406caf60327aaae09235f7f769bc04576fb7fbfacb0302047c435bb500673065023100925890c48dfc1ef0e15a28287e378390abd287287d665b7f27e815ef9d2a5198cb8a5c0de76832e1392bc6b2316830cb0230135b88016ce4c1b5f844817ea6eb9fa8fc7d2d31bbae1739386d0374bdbf0975aa2d9aed2f35031ab7af4c9d7a75ee150302047c435bb500683066023100a8948b26ba64a9e37cb8dddc8d05092b8507b355c2d801ffe5d9212901680d80d5d79dbe8a5757d54e8bbd73ce7e56e9023100b7880ac0d27a7e030dbc66ba8d14c171e490f2d7938b7adb9ac1688124b3b0b11bb7e1203605c52b1f14bc46f70ab1670302047c435bb50067306502303c1838e8738d68909ffde1ad7bc33aa487a1978e261c5fa2b355932cea13bd7843199eca04904a91ef299b30d99991160231009315bc221d1eb51e9f4970b38ce2ade247a52e9b407d1a6410e884bd1e631512333bc2fc433daccdd87df70c69cbf87d0302047c435bb500673065023100fb6f291bdcc33945d3e237d94a1be0c23ef746ff919fe3fb0906e384d01cfa11c558875c739dff95fbea2c7cb88f6c5902306a9f18341dbd49351b95f6901ed7bff70163b443810f69e908aeba75d49be5144bc3b521f22b91e7a6340e5c6b998fbe0302047c435bb500673065023100f2cd170203f6cb8e762d53b2d1d1e25b6b1159fb603704be23cadf69338f37b34d7355cc9d0633953b86ed7621faad9702301802feda8d7c12011c734e49c02860becbfe4b9dea82c89966686c5ea85dcdd461bf1e858daab283fa8c587d9e527fe00302047c435bb500683066023100a6e05a3181abd650831000b93f67095277fa1b8808a0df59ff394423f6c98877c26e77df68342fab4eb4070b203dcabd0231008e33275b6569dea4b27269a2b8de9ff3948839cbbdde1ad8a5c0563b7b7220947fdd76d486844a519a37fbc0e8b123280302047c435bb500673065023100deb923c8027591a991bb52d9e2189e4819d24acdd214df5b54b5648f2c40e730815f4167c0750e1a01cccd7814b843a40230572ccc769e665ecf9100851a9e31385a8452dc3ac413fab623b9ba058b4ea3aff85df4024902908e52b504a0d93da8320302047c435bb5006730650230502894939e76a6e40f76bac4ee43a62198608ad42e314b26bcdc9fc6b71de044503340d2298af381b1485c0935784d93023100e1415dd189fe641ec7c58331eb4680ee9c8204e0747d8fd7d273dad2401c3fd67cf5da59064fcd1c95835c8d6d33d6130302047c435bb5006730650231009f282e7c15af186a98a3d1868c33b586c9d84518bc20b37bea06b3ed36a0b787f023ed766b662994d9916b089918454202307066e3a66ac3bc59c9e749057bdb76bcaa6548776e8433c9d3f59f8936f93b0facf480d6131ca774352bbf8a460015160302047c435bb50067306502301b4079744660ba426e9203a1aeff420199efe7ebfd423182f2c2fb6eae02b3e3241c489290085d6cafa4dceb92afeafd023100bc05b686e4097c26c29f9b09ec323e537d5ae4962944372f7f5a991ba43dc1f63f27aca13d8cfe7db0f4736fd81d81ed0302047c435bb500663064023057c4eac75e4bd32c74ff7e7d8879cce133018e6d933c709118352929b62da96cf36b7325ef406ef1e9b319b029c9a6ad02301913277a50ff78e99103ab4a29755a628d9e4dc0d7c7f0477103447a4e01e94fe2fcbcc3722567fafe31687b41c682e40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306e087a2a3fa3814b8092585ca0581451f4dc3570796967a2e435862479ea548f2f10e1f43212c20863b5f34ef988986f023100f6579a4e0877b1e422055397faca7ae44261d34d10d5bc76012dcadc03c3cc655d393eb91d681efbe57569cc19b5e06f0302047c435bb500663064023019b7895801b848f8155154aa5d8b5c1f88c31c27e72ecd82e7d41af8966ca919f74509d72f5b163df19805feb2068a2102302a1907f64bd1474c1905670c18655e86f86778146a64a4f7af67e793742795bcd3de13afd043afe53000dfc99c02054a0302047c435bb50067306502303f189844676dac8a8776dd439f88fdbc05ecb1be39f402fe35f43f9fa47b7959fc2be21ef5928ecb4f8c9b1ec75a9b0b023100d3191b38cf0257bdc81c4d0592054853a3387daff7381b7dccdb121cf426cdd7859238d895fa0676b2441d098979a8f50302047c435bb50067306502304f30a2934a561e61fb2ef1928939397e8f3d6e09fa795bc0a2b9fe37ec4c8d60028b2c04f9daab1bee40d45fd483130602310082cbdcdf27ea42663aa2b1b88aa47967a88b34320877d459093f6466ba0b993d0965a3c1e999ddd9d7914668bad459730302047c435bb50066306402304f33a59587f7212139bb7fe88f5a79c7c333e2a491391fbda96e0e326f4126cab15f6b6f86e6f6bafa5a287ca791a1ee02303456ba7f0ae5ef4aa159a3180e37ec56f4ef81c08f3983e5d4c01eadbbf560ce7ed0ddbfbc68abfdc33de6988bb80f9b0302047c435bb500683066023100cf1c262e9dd4711079d30a4ecaa21714b759bf34a6fcc182f404ed7973df570f6e8a52a62a2ca496b8a38909c7806eeb023100828704679ffaaa20e206ba9b3e872dbf8970251f83f1976c4ec20efcd70eb5550cc7493390793cec37d039f7167d6acb0302047c435bb500673065023100c3e538ebeec371a44e073e7fc88918f87909ac86cc49ffa6cc5414b52368e408229178643f01e5a9323902528bf880da02304e5c1fabcb2e80ec50685ca920ed8c16187c41f1c07a6519d313c8674e9371ce761231fa2f5ce63c7fa2d12b6ec168f80302047c435bb50066306402302a5db8827f297ae520db7072b8b5b95ce816e28c0af1020452d2ac24401fd26a0c2195c691168444c1e7cacfe3641948023018fb27ff7efe6f803f16ca47e6653765982e72d2b8e004b5126c719f18d46e019e04d4519eb3e9f2e3e2064debe6436e0302047c435bb500673065023100a20a349d3d72b93a4a3574fda597944e8dfca0beb9ef84e3e0ec907fd1ccba42db5b47b17eb09e5f4958aee1457fdbf70230402d094cd30d3fc5497ea2f6caa464d1db3107b0d9c4bfba5e7df44bd3c6e98c47b5cd32bf9f62b83e35506661159c0d0302047c435bb500673065023043b147d6e9f31412c232fbc24fe0580603a8e7ae8370dd68f667234f9e14e588ed86b9d4b98ea8354254a21271e584e1023100b1044b7bce51a29ddd8238c456d6b477d67669f85224cc3aaf67d1ee0d83550b8126823aff2d57666149b7cd9c3b86c10302047c435bb500673065023100d7f31924495e7b0f88e16045ba5d0e78e69db49d97174536fc3d2f6beda05adc447c8578b8c41a08ec0cf2e72dcafad902302ac5b48155e0f34ea7828bcf4c765ba90b812df099e5ec098c9e950f9eaf861ff3d1b593b6e089148fe78b813ed6bf880302047c435bb500673065023024529cffebc19bbaa0962c8896a4766866c15373e37a8e551e399e8b85cfcc29266eb088b115dd28a741eb3e0dcbc091023100f5c3d2d38c7d970846a3f95d0cce3f569c7a538678b93fdfa09d01d9351aaeb1150b34abb1c0a2de34b631115edbffba0302047c435bb500663064023048b17830ae410ee50f62a2d195ccf26041311bd5397449a7c0c2f478546dd4082c14866f481f543b97aa6fd208f3002902305bfe1cee84671af3505f59686b1fbd0634de838dda2cf87c8720698c4048b874cebaec6e963721e58bf8ab25fb81b6960302047c435bb500663064023036ae4da3ebe231fa29cb490e342e31cbc5de4e03618422a166bcfbf1a4b79c3ee1c250d039e4335c3416ca89c9565b7e02304107f72b3921005548e3bc2393c404c565eacfe70bda4df0ecb9ba6a8b512432f9d72ff1953f6588256e027696d974f80302047c435bb5006630640230065c7e83875c5702e38d0f54475f7366e130b35b02a1d4367a81c15081d0d9e58b464d01422b41ef2b0769167ab581b1023015e0487538baf82e1da10bc7dfb670fdb2ef857316ca5422ab36eb010a61e980a1b42334750a097ff1d073293b9b6ec30302047c435bb500683066023100ef365f9d5a746be77d5feba0acc9d5d84827fb696d8adc0ff7c3352b4966ed20e91ed29c905c2851292f69fe0cb1a4bf023100eb18bcf50bfd3ec87dadf5173393c7a0187123569d2076a864b94f968dd271aad460160320a7e1e71db74e610a55da900302047c435bb500673065023000a3919a18a9f39638a2790f2752654bef5250c02149ef5c1054bee1fc4a91d1bba87f3c4d140d3f2c562ba408f330830231008d576e729e46a1d1f9a540598adff8d949ba38fcd20b08496f21f79b641eadadbc834f3c23bcda057e06791d9a363a380302047c435bb50066306402300f4d9a31abdc296e3b2a4440a994e6ee8080354555e78c8d23156eb811fbded28fde6b833a6586b34a1c737429c8907b023043074315cabb08ee06e10514ae9cd29a236fd45cdaf5dd51bfeff9d9220bf623295a4e30249fcb1cf943e5742008d95f0302047c435bb500673065023044a38a0b996826fd369a0bbc13705813c444d4b511e23209933efeda4c773c7d21c49e8dbcea29b1f81409d3ffc34c0a023100e63721ed4f15a5de6f7c2042feb9eabf4b0acc43807158be37f71748ef4394b7153d6094e60e5e022f37b2fd902f97060302047c435bb5006830660231009520e0dcd71597545591737467bf868d0bf52c621a7315a22055b051484f49206f1bd0ef0564cb63a6d835e5bcd4f86c0231008ef7f01f38542273ced15a5fafe5eadcda5495b732b899cf0a027ead18c2adda238afc36d63bc41e9cd0c8c31778db5a0302047c435bb500673065023031e7be5ea7d3a309883b62e76148efb685cc19bf094bf5a47a8d5104ccdc641b3da9cb1f60c147c6ed928bb78d97d318023100ea7b7b208bf1258693b799b179b0d3d5ab9cd16da8e558467cb3ba71f40f096c31cd4c5803860197b6ca47d7ae665f9d0302047c435bb50067306502310081ffb478f4f845faa21c85e5acfb4a7eddbdc97abdbe4acc090a4aa11074a2e1d882bf19729fdd4eb846dce988432415023067d34854b85be9882cfae856d733599bd5bab2f72764f414f37ea3b552dd52410995db525de0ef09d09e7a1db257b7f40302047c435bb500673065023000e2342f23bf47777a9739628bc85f0f83f319b60541dfb4d3c4dceda6a455d09a6f46f633fefaf7a29921c46f03559c023100aca93695cc83157ad7a0cf1f003b2c958d47976be89d2ec61b12bcd40cb771d41a1469c68f8f5439778f45eb07f7719f0302047c435bb500673065023100ef72c5a1e39b1b70d4e8791c65d0abd1ed06a2761377ee19447350524187ee13318b213e5d3aa9d082f319de989835e3023047735cb4652c78b94e2dc8f00d51458492789c8cdb1dea2abab1f775ee43640914fd6eef0cbad1c154fc7385fdeb18220302047c435bb500673065023100a21e6fe73ae392a0f9d5727093605e55a9e2b7668ac464b4d5ee364ab074cae9d8eca5b55608c6220420812721600ea502303740d844c63814fbdb0b2921f4b839f2aebcf856692f621b0d056b292fd410e7b2db0891c1fe6817dd29abb68c12b3960302047c435bb50066306402302f09547bfe320b77f5442754c110ca421877430551037ed02d98b41ba7409b134fc1d827e27e6de0d21f4ae6e2157398023079be53ea9381a105cda8d7c4d9c3f718b7de888607b4024076ae2caaad4c683895a4d15c1254dce049cc54387788e6d30302047c435bb50067306502305b6396408f2e08c46fe20461dbd9f1022403764ae0c6122d98bc56a26e6eda14981e35846c0b7b93065e6e0dbe1013db0231009ae1e1eae002acf163d3bb4a050970de8f9ed7500cce9f9e81679119e440309730e178f6414def44a99046bda00e2e3c0302047c435bb500683066023100963e38e73a65c6ef6927d76efe328925fd88fb9e5bc349cd5c2d6299ee00286baffff023d40f724d95672316f10f8d2a023100b801e766594e50c17c9adbff283ed8c27869cdc21a17373b311d7cff7f38341db40a971eeb3314c32c2fa8f4a1b2bf190302047c435bb500673065023011efeb163f55e260b29fcc73ec287c1c30f9a41384c57e3c6f1b9077609ad9080de6bf28f2462cf781b0b17ebac04193023100acba5460bc39c75331c706a689c6cc687131f965e1a3c80e71d100ae9bddb534f74167514ec4176c631d546f5b44dc960302047c435bb500673065023100b607abc60ac31680e8c519950a22c4155255cb4cfb99c229d4e86086684f13594b68dd579779a2ba6d76f5799e435e01023078f78f2a1106e854fffffdb6dea3949bb31c6c73601c32ea709ea2e199f89325560087e30b7fbb6e640f8ad707d5de3b0302047c435bb50066306402304bf0e2ef7dd99a91a99d8bb4a09c0e787bb5a235db78ce5aace91bfa069b0b76051d216f6e2c7dafe5a0dcfb583613c0023032d3d04d7d5bfd2f599e9d83c06bc1d39d18f7ef7dfc4074ac098e9434a18dc2a5708efac0a30705aafc80a849e4229f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009405df4050494db8e00e7d3d0a7407cdd4c8d449b23e8405182781b22f30d63a22d635d2784dc8d2ede379cd29af3ea8023100d5a2574d0c5b3b3b299bd677ec3c6c01f8faffd52a35365852036ddaa9fae2993ba45988c57e5b24d477d5da90a3e5470302047c435bb50066306402301a2d37de29ed890074489e2c431c597b230a3f73faadaf6af5a9c8e0e3a4fe2b6171ba52bc9d96c0e9cc5eb66b4ed2500230271d2152168096577befed205ae16abe6069d42b2cf54b39910fdd4f70b9f14490ebd9af0ee6c1e2e51f8e05727635c10302047c435bb5006830660231008d715e2863cb09f321079299487ef4c3ec5ffe1dbe3e843e0ba56149bb5389a639c300c9787340fb16fb919b25d1d679023100b281a7f6d0d3c4f7bbb3bb87088c78802e589ef421258a05b6b285f188d13e7e693ec9a43f0baaf76a27655be7b19d930302047c435bb50068306602310084ff1c69ea8a53edb534b2701d79cbb00c8ff59bd1373d900aed9e87ed7862cf243401019cd8f1ca7f08b9e7dd2735a6023100c3d8ff621c677f2dfb8ee4f00215bcde8dfb68458f07a701fb93464d5b864462f1a6f5f68f30d3bf65394d2ad20a7bb20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b93ebbe1190f75fa7edc41a694e287177cd57351bf751551b299516ae6d98bca679fbaa290f5ea4ed2aabf0ac82e4310023100c2cb0497fbd1d68c3d4b00d2843439540b354a8e00be3414f46d2eeb23fceba69c36043bc2506f45b23165e83b6c2bfb0302047c435bb500673065023100e3bead8a4225d9c2b6fd68a710984bdd5b1cd96de6efbb9b0100e2d554ef1ae4e4aa507f3a0df8a74db730f3e87d537d02300e48b2726d4c1ec3ea2005a48fa86e4ce1cb72290756f76dfee27419d77e99d2a1cd769d5dd2f7ec7222b4c82970643b0302047c435bb50066306402306e530e7856899b7f04930296d7aeca4064a8d4aff21e843c3c0aadebf0e2eccb64686124fbc74972bf5baf07292ca6c00230071947dc4812d61f4c2903613cfd8ed94201e5a060ce1409b3d35dd681a5be88d509d53b5f4c38c13d271f125a7b19cd0302047c435bb50066306402303a1be4b46e2ecb87c7515396591ecf447caeb2e103fc57b2348bb41d3fecf77fdd185d15f9f79bd75928d11af49fafa102307210f0146a66d6fd4e8ecaad0128f786883dfd4e22db3e1ff4f10788ecb88f29c42e08ab8aafc2c1a790c25a7e3c21af0302047c435bb5006830660231009fb8b60061db74138e7b75a2cb353180490800b0086510819e61fd5ebf451a9b62eab65d41b887761d64d73dec38cf16023100d2321c930a9f6a2fdceefa6cd7e4904356faf7af20593b525d4be63ca77d5bc0eaef5c36bbc139a9f88d41a45ebb392a0302047c435bb50067306502304f058304ff093798143220aeecca939bc3d51c118525c6ce53da00dcb460cf2553ade7b46c8b1bba34094c4f6f38e0c9023100880afa1d30ffdb7fa3a9bdf06b2c0d179e89ee2a57c02c4b184c57ffe11ffa0368e3e6229f129a28de795dab5a9a680d0302047c435bb500673065023100dc70ed333405e994b2768aec6fcf5021891052528dcf864d1640e965e680f605cdee779767bf75f6fb42667ac81330b70230110e13576eb47614c12fe6b05627c1834a3b49c362a2eb71951b18a4ebf229d61588f243e3464a9cbe6f11739ba4ae520302047c435bb5006830660231008344cbfa3707b83cedef36c3dd73c9762807f98a9f9b69adecb4c2973067f713432b3e1c01af7df23605d514d5acf335023100914b8e9d037d6fbe8e8b4d5e53bfead357266743f96b1f3cbccfc2b9c25235c123a83d980a478554e724fbb017ac9ae30302047c435bb500683066023100f36a21f00fab9ae2c7739aa06e2c1115a34d1300f7b0ae5897322afe6e6ca4c742488312c49b1815bd030246282c4d68023100b2bf67884517169c6fffb5dbb7ea6c4be3472ccc3ffc52fe2bf781a16be14b74c6381f7670a8239144f082e46adf5c2b0302047c435bb5006730650231009504ff2c4d4b1332b0e46ad136882f26675f0add27162bdcefd93425c04036d0d4135874e91e441902c00652afcd9c2d023003a944c87a2944400be7b2379c721ea8247b6830de779e747e42e5258948fdcbd288094448f1e9105f63bedf8228d8450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230543bfa2f2d800d988c8d032dad2ae499bfd266f7eab4474eeddf6045dd7a607c8dc65e5023610cf9461264284ba40fda023050a6b62ccbf932fcf494ac0d86a888971c155eb18069ba7f1513b6e634d48e37432a31fdd69fb525bd8866f93bbb4b5a0302047c435bb500683066023100906b73edb9ccd8e9af737b1e814502eafdb06cd36124d465ef0a43f98f62deb08b02b66752d70cc32f2ec05bca22fdfc023100e3dead2c073a131f37662c4ca0453f5da1b14c93dbcde86636840453eb9db98cbeb94bfa1545fb9ddc13bdfbfcbb05cd0302047c435bb500673065023100fc250ebe9dea986c7de582923645c1eb066a3c108a95be6ced85fb6c936e09d7a0daf6d5646d7b1fef90e38c1b328746023078949500020e71cc250478da7c5b4fd6f52f6cc95b4a9b8abed54291c4307f8757ec7d78b6c1e3f3b78f6a46c73b7c730302047c435bb50067306502301f9d44523260faf803638854a15bf6b10e96b3b885aa342b77de2399969af34a966f521bf004fe27270ae8b29a20865402310092ab6f536ef4d1f423513249649ac7f1cab8d4f2a52d793aed6774ba93ce20dbfb8edfcea76f3de31406caa2a084080b0302047c435bb5006630640230090d3a4170bbfe6a4795ca8a7e042c8895dc9f540badda242179e73570956b91f48ec71747252f8d41a65d84d8a50fd302300faaf245da4e583b21841d8e0887e8aa55bec5eef2e2a0fbdac228168ffa4ffd2bbff4adbaf97900c983be2cf13deb510302047c435bb500683066023100eaebca036319441090ad87e514fe5e17f2403b64c45208ab28aea1bd5cb9ae77f8452c5237f46fadb3d2121d7d39e82402310090672974e4fecff0cb47d2bced272073f301ec76ed09559b70da868ed5189b792c2473dca4c7455adf52c3f0bf988cb40302047c435bb50067306502301ffc35b8c1046252b546bd11ad2591ba446dbf9924b2080916065c006f49f4a55afec84e374190d95fc91bb53012f1a8023100fa28ceeef1204bde40328ae392d6eedc5f980c5fbc2fa50dcdbae46135c573e841542f31ea088b26fad9dffbf7f83c2c0302047c435bb500673065023100925dc08dd0b96f08ce62a276791a9605616cd2c9ce28b8c05504df49fa2cb18f79a8dc2d75eaef3020acb1a2fdd18ba802305808048de25fe2368a3bb7d6b0e7fb61eac5ce83254089068a8f9e0fa9b33ee1cfa8ea2c7e82513dd79a3b6943565e4e0302047c435bb500683066023100b2dfb90c2e16bdee7278446aa3de0589152b56e54106a3dd3ace5a2a239afb450c20f7564f9fa72b46f84d011bf13aa9023100db0ef05ac8fdeb73408f73a6de8ecb7f3f95d2489e120979cedc0b28d4379c4c29f490f4f0dddcec0f4e79bd4ca599510302047c435bb50067306502310080ac58163117e86f481d3b045586fa9d2c22e6451eb0f0e78f00edffdf6e33e0d7b665f25e954a92b8a0b5e135097a6802305542e7c29207b92b8b5f9a1a14bff1dfd3b01747c5ecccc8c086709563f9cf78b2af3044f3989227b0c0413084e917020302047c435bb50066306402300cc7a38f6935cd421081592d85aec4afe3139c22b57fa5574b191381267efe2dc42d6282efaf4ef89556fbd0aa978bdc0230683865bbe57db9b2940815b38b8ff290e4e73e73602afa0d7999a71e49e4e5a9d95016765c2dab963d62c3ed834f37040302047c435bb500673065023100b2c30d23097812465c2a092b7f648a0aafe5b11919c9e0da035063120056982ce7d43d0440cf538d9fd4a845d15e3d14023020c97380d5a1a17baf318c2ffe1dda12d249a8b840f530f7bdfd5b7ddb0aeebe61638a2c66e2ff476797d2c0fbe384510302047c435bb500663064023033950adcdd31d2c75404d8972fa1b8ef7905c7a31092854112756b5d106244617d5ca97c5f0588b28380c29361f6b37002306852ce82e8e6913ad0c63f9fae044489121be01af766ebf157e4cb6054206d071f9dadfe5fcf1450ca9e754e81dcfcf00302047c435bb500673065023100927b5a2e08fb4e092d34dfabfa65501dd0de36b67374aea38e508687143c2429361ccbc94d84b56ed5f82c5c51777352023024517d65d487644f02fc6965935ac04cabf825595034612beacaf40d86f5c8766629fc3e79769d20703b54bbacefd70b0302047c435bb500663064023029d6ffb225fe1eb2e23fe5e2a8f62198f9ded4ff68e46b24a5a6b657e94b2f47c7369d250c6145495471d1ec8ae07d6602304f57c86a3cd382a703214967f00435f088c26cfbbe6af343cad6561c4f6e533026df80b013cb3e7d4b24ec6d74db051d0302047c435bb50067306502304510a46d566308154673661cf9c2e0fb11cbf8c081ecedf369ccec0756721b50ffdc3f53e2773a7f1e92835fc049f50f023100fcd32dcb0fd95086fd9c0e14f971c2ce99d5bcb8e23e1ee04bbd1763ce4cb7ddcdc8c713248c4f7d5a1aa90ef90973ae0302047c435bb50067306502304a54ed0b55f17e313694cc47921bcc7a24a3f92f2a26705fad86b50767d32d761085bc7fb61f710223f8395dc463ae27023100e87d01b034c6232b0e8f99cc08494326df2d85cdcab18441376dfe323a9c21b22c73e417fd5a47bac8281001a0d46e7a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230381d940fc8bf5426d5586ed9958522ac700c3c8efe4fec2ec6ec8154e14f0276216d561a608e91e99c26ed7a8ba50a0002306943d3f116e1a4ed5d61009ea76132e7e722c9de209c0437d4074d827b13bb2a24d5fd007d215bbd6992a153bb8f7c780302047c435bb50067306502305f50d61c609d1625cb4a9cb7afef658f036e62e6dd6a8a21ec4a1138e985d1ca9b32cf875a39c8fd6df05d48a0acf06c023100fa7a6f69a964faff1704c0022971dd3bacf388aa9c17daebd2de60ac8316774c26285e8d3a9c171218cfa4473b59a0d10302047c435bb5006730650230110c23418dc4f0eb23095a9605e6cf9a0809ba3e09702187257b5eef55a870a18eba9c5f7c198b733b734144140c055a023100f7bbf329d49ce535a8ccb8184b43257eb139c396dd3f6aaa834abf4346c47d7177aaceee76b0c4f63774d3d94b0da64a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a78d6ab625837f0e451fd1321493b8e26694f7643a5db197822ec55c373120e56a17f55474b77b220d90919f3424128f023042ca644012bb2b532e4201be7448410069723aec972ae727e263a038158c7e770b32c9451119b0f40bbd1dcdc58ecd3c0302047c435bb5006730650231008cf651d87c3b395669cc72d9c65f8ef5c6fdb28918dc69e09dc063fb055ba1cfabd7c0e2a195c634eaf7ac2011eb5114023066e59aa36f9e52f577c81c7d71c873c2eaf7a97e07465a22ff78aaeefcd64dbed4834baa190c58028d3a6afeb4ff444e0302047c435bb50067306502300c35fef0ee539e32fa87f6a4923b454752162ec4e9105caa836957d914922f3fbe2f6c12e74662e8b434d6f35cff3b02023100da34dd4c89974a37263ba66c6495bcde0e94ac8893eadb7ad706462c2d274ccdcda213891ca63b9124b757bd1a7e627d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008e07b34c7edd3288d102015b2da76dd38f0a9857f1c319c9c72e6d74613b4fdabfe44c9cbc773b6f909f6a7604fe9a3b02305407cc0097189a9f4703e7a817ac33125d4db861905c2ee07e0022a512f199fa1849b55249f35799e942e067988958f40302047c435bb500683066023100d1f269d2aa9d0241bb515f48b1eaee79d6d6f7c14e42e4bb905aae161b5fedb181a8ddf58390aed2f59db6e1d6370d59023100f65f74e3bde7a699fb2a9e99eedda92b892c62027427599b800cbdca17f60ac3a1bb6614786938526986e662cfc82d6e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023002dd91b3df5216c716841a135474c26962aee6fae886e576d73e4839e6644a122fba06cde66b2fb4abf6885076fb752f0230024f96cce9624381af6fb054910cabafc7018273ba4cf202d85516ff7b43e91552e1c3ee4c7b0f7abc6cc3eb4bf07ca10302047c435bb50066306402301f0a7facf57c4e2db1270b186abcb7dc34b29b7f18f7d9a0d44aa9b996d480cb5e75da5d2570f5b196176427f4c39b620230034fdaae21592fe47c9a1cab0d75ab33329d2011b1e8b80be422514b7740a59a08b95b4ac4ba96e8ec5518db7e7a72ba0302047c435bb500683066023100ee20c2a7f3e371600783d44f3b7d647e4ba0099d2704acda6b126a7ca3b362f68a8e6b4e70d1b254e863c3e06eeaebf0023100861b6932e451c7068d784d9859aac647a4f075433ef7496d56451863e07b7340408a7448b525a1388b63761dde5b95cf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310093ad82f770ffeb06a253fe0d93962dadeb49073882a5a9f4af59c4254636c977e1cd7d6f1dcc3f45033d16f66b0aef440230164b1213051aed3b5bc9e6fad7fdbe5070c2b68b08e33531a514a0ab01267c793adfce6541c32326893a132a39b7ebdb0302047c435bb50068306602310083601512991b6384b33f6e5f7750102ce3e75f89840af5e5cd8a09ed7da96df95b20b39727e5f57418a0abce191d1ba4023100f83163e62c12c07e7e3967c21f106288b85eb651d75f1ee7a9eecaecd576ff80a05273845e7150b16d152ca762dd4d440302047c435bb500683066023100e5f35f8573bf1302c42664c4bac934c3ba60fab72f1784c0bfa3f75ca968ee0591a12f529cc6d4a5e24a8b8732d1a607023100cc5891ff90fe37cdf5bbc04e98aecdde39622075d94d06dc6c838f1dfde34111db9ba9c5abeae4d3fb8c248036813fd80302047c435bb50066306402302bb5a1a0a98bf57a5fe0edd072fc9d9a5456288bbca55674083feaad9107073d662887e68524715a7b070a9d4dee8bd702307fb159caca3f36c0a9d247f2f1564c9bf9692ea884746f3d18cb89d3a64b10cd01845e2fcbfe4e206e06b9171542f0db0302047c435bb500673065023100ec82a7e6408aceea26e56b6472b45a862095c8851845e78206489541dcddf7d4483d57b37048a657b81a47bedc5cd7f6023040a9775620c933ebf33add306205176d7be6abb954e1916433b5c97e1da78d2580cdfdb1896702a3afb04f6e4ec0b1f70302047c435bb500683066023100ca3767539907df7888b64779109126c5535495765552be8279d42846dc90cf5bb4d491cf198f6eb188032cc61791ecc3023100c8b94bc0e998e6cb503c3e705a57dc9b7fb887808c66234ea60e9d608f3749c813b6c97addf029e6a4b24fa39f4541340302047c435bb50067306502305b44262384cae8334c2e29af77644a90285a78aef2255a8b41e62d9c008b479da2df58f0318553e9e966eb8cc4472eff023100f12f4be323e2fd01ba8975030d5ad25f4ddaf0f17ee09d4d81b9d66bfb111760a3be4f6ef03536c630da962567e5accf0302047c435bb50067306502303a02d0559f2554c662a479a823eb0def3bdab3ceea5b92007a92d89c8049d09bcee505443ef53fcb9d04df26ef67b2f1023100a43df4d302119fe781b3e474ae3bfe790b9fd081bed53901c3ceb3e00c233cb687673b6d4208c7225bb40be38ecc62f90302047c435bb500673065023100ed904d1df1649b50cd9aaeb5c2d3a2a642de38b9a1e19932c6011bfc56666742a09ef631a4f4c43e4dbc20988ce42f930230502da420ac4b76bef9b79bf07ed87db0e2671c80cdb59e7dd5e2793cdfbc707e96c02df15397db37488bf8fd900f466f0302047c435bb50066306402300c0bc5155ffc72b81759833bb06970b9f4db83b18d0b8438ae68ad6091672dae6c167931c2b53b215b7d0b297c3fc32f023012903ab54ca7b6ad2041e17430966e3e1166cc4fab7f9872be1826a8078940433f0ee58d535ad68365aebcc58d6b431c0302047c435bb50066306402303dc3117a04a920d3bdfaab76452445ba2d0dece96e5d40d54e7fa0a377761da6fd5c2f89e5631d780b7b6693ab16c7e9023065fe27d9b68311595d2b55bfca99e9a45cd2db0ba417011aa2de22ae36d3f1d929158ffe411adbec4649992c6b5d92ab0302047c435bb50067306502304c7a7c78866acd5c374e3b413986124d292f5b3ae17016f2fbe7348b9939084cd2e7913a7630a410122a61c5e34aa438023100859b1e187bb247bb918d011d8e0aea4d1630eaaa44a4d6b1ad14e3ef9cbe312a1e2602bb2369ea39610bb2372da40b6a0302047c435bb500683066023100fcfce8f6fa35024a02a2b557e6061481316ec5fa6b716f2b90fea5f74c5df95f11e14fc267b2d042c2abd82e5cc6628f023100c6a80f7894d0495fe03644295c3508cb715d68b47450a2770f23124f0be09f356545baf1a749060929ddc02c6e6747e40302047c435bb500673065023017388fa50e890fcd2479e78da753b8ebf62f14b3068701e9a84d0e659af32d6574ce8a783f10caeea6d0ab97e1d0f5b5023100899b0c03070e317df7fde91c9180d9751e7791430f2fbf660d7caccf4e1c43600bceae1ac85f8ed6526927e9ab9955060302047c435bb50067306502305c9418fed46b7fc012917200f95e84bf25f13bcb852006a2ec78940710cb010938bcd32a82cb1213310a81820bbbda13023100c19114b0d79fb91f411d53bf07de8bb1c7933f58b93dfcdb6e61c65a01811ab77c7a0b6ebb6e1877da3bf8baef641ce80302047c435bb50066306402307328f1ad9365fbc6de0629fd23c0c5bd11a513c9dc7411ad6bd647631b97df830d7953e4ad3dddb69e300fe1c8ca4dd002304c54a1a2f66a15904a2c2a38f03bcb8d29ac5413615c764e96927f5a882ee018a5e81661ebad775a8d7514496a76f1640302047c435bb500673065023055a0bab3a8a0b44cc1b5b05bfa0ca8ec6fd02d598d66245d973d9d7af20416f0e5911d3e11cea5da4fe09d1e2c055f9c023100e663d20ed4b79246e8e8b4a1653447f90660254e91845810a6cf81aa23a27fa865804ea1a623c754b58c15d107a1bb6a0302047c435bb500673065023100f5a1123e91a10b73603c271e713dcbcd5c0322f91953cf4f68c3f5a35a7cdd0b11171200844b8d58e79956187577ac1d02304fcf4cef4a58bc5596b24da5216781e2e7fe6aa2499e26baab8895042e7c7609f27df81f5297fefb74c6ebac1ebec7680302047c435bb500673065023100967de7c621cfecf72fac46f64c97e399c3734de535019a73531fdf704307c426247002b451dc92272765226179e17692023062e39a1804b28c633ccd797fff9d214073c3cf16e2925ee35743d2aa37d72bd889dc6dc6441969099ea8ead4a2871c180302047c435bb5006830660231008b85d916d7b205754d89b05929b2fcc27ed960f935c4ba095f372760b2467af4d49f8a2e433520e76416e9420aeebb24023100e6372984c6b4bf66a54a30724606553b803491b2531a977cab5988ff3f500208164782f34c28cee8402bb38a0ac9434f0302047c435bb500673065023100bf1daf8ac29f7fbdf3f29bcfa105a1122ced83a114040e91c8fdbbb74ee93b65abc46fe028bb7dee128e9320f862c55d0230552b00e5fe77836d99c1685b8ab7ee6d94e602376d59644d278eed6eae37f0c1a4e04802f5039fc0c60abdc0414cfda90302047c435bb50066306402303c042f54ced01619f4664e4dba2830e58140f3da3d4679849048c5c8a860f0b5ea0f44d889a98285f88ecac53cf3de320230671118feb224794aa22a268e48e5310b69ef5d5863c13f8bbc4fb650c5dedbafff4652ce104e3af3dfe188f3b49297450302047c435bb500683066023100d549f52dd1e26fc5757647b5a28a72a2778d13e6a432f483f501fa8de7fc04eec6e52c75e64d39c1ebc14d6adfcd0ed1023100e90c5b4802e9180413517e38a73f890e034b74d64e5c4ea07d8c15cf9de100e9ebc2e3fd14b802771fac0c9a336ec1b30302047c435bb50066306402304b273ef205a7afe3c00e04b7dbf2c93025fa7b1d6150754125179037e41e2753ada267f7902e596189f6aad1cce2097502303bf97ba2e9b0077d862da95fc54436fdc336edcb659e25ee7d26994bed067e3cc45b34565a2d8f76f7d21fea5da3e79a0302047c435bb500673065023076de1b69a467fc2832a7537f3e35b01e509717535fc540500727a0278ae0c2a77ca751ebe021ff44978d9c391e67c6e1023100b8d39685eb434c0239a91e6aa8a3b4e0bb3945a1f20f0ca7a4a7a5b22e0857d61168ed4befe6b23dc268fc9436671b6c0302047c435bb50067306502304f162fbe82a822c144e0a73bac908b0a0555611e672c2900c24a9b02ca0396bd2b3c7adf8fea5973dd37235f0d5e6a0e023100ce85c03ccaeff201d8dbbba688d1f23d534e7301b430cc2c18edc617b82198aa5dbedbd5284c3a26a93ef0458fd1dd140302047c435bb50067306502306202fc61c51129d5968ea100667e8e5792c81ac0e1e16dfe5ab4f306a3a11b3c9527c20e9b7f40f3dadf08c527425d16023100854f9591e490912ccc60b63ab01fcfbda22998e5fd185f57eef15a1ce9424f8c0c70aa6094988e7e11c37ce1c74e0b4b0302047c435bb5006730650230126ab7c2316fcd5bd0d9eb17272883486f7ee26aaf620d8c290efdc48f9df0bfbeb5923f52f7d63184c77061e7f82f53023100c1f748aaa078035fdf1ba56c26f956060b267a67df473c2209ae9dba1e045e4f85e26cb0d9922a06457a8c29dba039710302047c435bb5006730650230764a35d32c9632c74e1176071789fdea89ba7f867dbe0bfc5bf1e92e3b13d8ed87ca15c473de55d11f4026947a0d2b99023100da762e3a4b4f141b18f1bbf29a048baab834986538afa539e7fe93ffc326976c65e89a1a5d9032cfb7cf35976c523d380302047c435bb500683066023100d8d49d2952649553ec982f168a8d6bf0a228807c834b895ef5727db3294aa9a5e1e1fba8e3e642289378b1b70a4b85d7023100e4d357e6e36d05e0007271d09d14a71efef829a530d1a8b14565a941128c3470f0963d4e999d82821d88c0ecc92107c10302047c435bb5006830660231009ce56062afb07141edb2c58515b79760c067f8f35ff5d7854d1516807887440b24d10a6f0a103c2dabf0ad43b610f1dd023100c9e3c35ea2a0a7760b6eea66397e621c77fe8f8827222f425398f5e078e1fbe6a4e96e7057a3a9ebda3219debfb53a4c0302047c435bb500683066023100a83b42100c303a5eeac241ef4613db5ad0bec14f85dcd5eee3362f0c0c769b18d0eee571eb904132d8c261175805cd4d023100e3039eb27bfa22f210c8c7639cb171e17bfd2d7e7473bcc1bfcca71440f75abf4a03c500d53b03c0a5784c7f0b5db72d0302047c435bb500683066023100b99f3f580b938608d6845ce7a3779f2f1f8d7c318a2586bc0545e32630e2a7d484e1783c8603d797155647a0fe225e0a0231009900c5b400b0b0c1f699e9df62810933ce4c8c8162a211e1c4c5d4d997fc8aa9beac84c56799a7e7deffaae00b6a910d0302047c435bb50067306502306eac4b0047deea0af89d2245f2219c3091072cd48fedb5d9f7c15613802f6e71786e579a11de8f1b4b279b3e6d0fd8eb023100c50b0f90330067e022db93751d3fc52d3649a48eea24a60f2a2c5f5418d97bf54f39b0ff95c33f41e0fd3861ecf3c9c00302047c435bb500673065023100f080fe174554edcb98c26ca49a160087aa7b8fc337cea4ae74ab4ebd9efb958357e6fe2584e33fc2d4910209bce18daf02307ed55d8682f964836524967e8c08d1e85a2e1ba2b4231670dfb679a43a7565a455582e9d5caf9f996ceead016796c46d0302047c435bb50066306402305a9398d4b3468449c6ce9bea387b350cf8b4d8b43bf2d8dbd6b7237e146d535a5989e7a00d51ccea878f283e2d3b676a02302c57a43179f43ba83a5e51eacce4dea91f1e524990f855d6ec54637a420ba4c397a69e00ccce9e3ca58c50446aca2ffd0302047c435bb50067306502310090b2e34ce1d3e6c823fcc36f65586f8632e120689c06ec20c7029f4786db98b03fa37d6edd7d81cd5b12cadaf0f6475c02306120f816f88a30a1e84cbd5f152570550bd2932fd6f2c1449d7ad61bbaab6f668a746c14bcd39c22a6c3962efbe8a0ca0302047c435bb500663064023033edf0c7c7b12ac1cf1130010e2dcc6055bd5aabcf5b47e93638f51ba05ac34d58f6f12289f5bb53340936e4aa44d842023042ea218e4aed23c78db4dad3cd68a3ff334d271a61050067ce977f9d077a2435e8bbc9cbe51ba9bc89143a431137b72e0302047c435bb500683066023100c8f2f03868c1df31a7ea29f27ebe2738a4742d1bf4f88a840b066e67d65891f136f01b60a8148acb1f6634cac359ab43023100a7d7e58a54c04495a5cb548b2d6a6bbce43b5ad4b4c8bfd1a868b9a28f464ff0244843c29cba3de726fc968a37b3d3170302047c435bb5006730650230335d06703363e546b4a760b79c780a5c775c7820f3bde0d7d6c8a30b5fc5748c6a8bff645744696905aa9f3c490267e7023100e37ba836d02bfd22d1d693a1dec3556896b352c6013808e99c4442d1e043fb969414f9516e89901d3107ce44547c26eb0302047c435bb5006730650231008a3b2f0163d59eb4ed56c1e1f7c929e4c3f8f4625c0c1772f2507400ae0631734c0ec4a92c20e301547f363b322cefff023074fe64651e63ef70ad398c8999e149331e39175a958f247755c444f299000610024599b1adda23a7b7e0e24e5641fb110302047c435bb50066306402305fc63fe819dfa92dad0bb67413fb018d4d389c81b2be99547f16be6a1f57c880d13614890785ac1acec925b22d203f0e023007e73b56fc915d25234e3b6f511d31d70492bc890fe4ba0aa35ac49b6f516fb1162b6a81a8d04dd0b999acdb7bc5b1e50302047c435bb50068306602310097931f044b7d4369e57eb7cf4a40334e9ef9fd069296d4bbec41f02cd2f0727b7dcd4a85004d7df18819919c00c9089d0231008777e6690d2667ad0c37a810b359627f4a4124ea554f2c80c53924356f712ba5b57017f5725432e80b4deb2bc0ec30330302047c435bb5006830660231008622db29dcd996731d258a4658b9f6987f5687b2fe6616549dc4bcd78d530fdf35bba06416990404d14f279240f00e76023100add053288f2a57f45e0520ec0a1437a1a21948d1fd777a3d63e8005a16d3fe2a9afa3cabd0c56f77297ba2ae91d7a3ce0302047c435bb500673065023044edcfba85e61399446b5a76cf5814c72b83daad49cea4253fdaccf8ab96843587227a58f0cfa96af70fd52bd5ffe298023100d5ad41a1c0a87ca9434064b577cf0c8de151291e20db93cc2da4a49aed433af63976d1b988d28f0a1f898b246baa3ce80302047c435bb500663064023014016254a616b243d39bf461c3a54b08cdbbc6141c56058c8318eccd6798351c37fb2d9dc9258b15114265e64aba918e02305807c6b3d42891fb3c6981a7039ace55f2710d55d45f038b2a9686f32380b495bf140eb78fb66f6aa9b1ff6df458e47d0302047c435bb50067306502305585bfcb0155a08402ab6e8fa3cb830f130d65b526899647e8747bd536e997bf4e27c3533b25e52164698d5a7f7554dd023100b4323eea4847f0c44a49e8e0739cc18de49c315dfd1ddf43a7d9c2e92a082159083ce9aae709313c556865a07b297ba10302047c435bb500663064023018a3f3a3f39b5e2f2b6b8a24f765f9baaf8ca9ede27435f3e39efe78a20b63198a93977bc8a06525b888daab9f79bbb002303f2aa28f39dbe7b7c585d20f3d76858abadaa620adece1a51af9d4353d896c89921d9631336bb60bdfceb78c4d18bdfd0302047c435bb500673065023100d34211ed99bcbfc92d7cae45a7316b525251d3131286781cb8ba65150b0513b6744ea3beab67eeba343c455b9c2f271f02303526dfe09abb96135afabf3339e05ae6037cdad3aabfb7cd31a4d99d9110785635a375d5232b1f714e3ac84f7bf388660302047c435bb5006630640230571f75d41ea4bf5eae8c746787eeba6b0540bb1ce13f0eff4dc593057330c2035d717f4e3d71c240437c991c5cd3e4e8023067199841897272c961aaae407c130b30aeafdd1a162487e77c5370698bea84907f9eeb03b1df2a21a9d75d944626932a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d7a1723bcdd03f7d0d57ddd7fa554e35623fd85adc6bdb50befd629e0fc80ddf2908c11d384cb94e7519eebc5b3291fe02301ca64eef6b621fa35cb73da57c382481cdcfd6075b61f1042f52e9794de27bdc1eeabf77256b71304e64d150b3c67d450302047c435bb500683066023100d1f4087eeae29c7a318be66d8ec3509bb53b223ff7d5df4b8bbf5b34b286d746a4f84d0c428fa8b4a6013b80dde49d8b023100fd0d4c65c8d3a34870b50a7b2d1e7a758d2a33430865bfc49bb28df9e9a01196fc8fd51585f17129c21bb55e9a1a504d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e33dac36cf1a201188bb34ca731768d30aa3cf8a9a2b07429d2fd313bedf3ec10ba6691290c503d8abae029e34c795e20231009f63f49d9049d926bbf3c035e481937578f39c545bbffd9bdd9e8f97bd49c24dc404aa185b28ff7ad51643e13be711aa0302047c435bb500673065023100ac503e9350223e0f9033c24786177f383790a5f3a728ea97f7fb7089a87d0775118d3a46dba27f874ed971b562ba7aee02307a9723cb91437c136324556201ee39640031fa1208209d004e7ffe4a2e94633a742fec23ee54641d186fdb934f58eb020302047c435bb500673065023100af8020966ad7b176e5e18b6635b71d451e8fd76a6d64e7fee2441f3265a60fe0c3bc4632e7f4ec047405cac68f1630f002300d8f6079a19d50fee789041ca23d1134125dfc0bf88b5e078823c5b4461e12fa3993f63400b60377f7271922786cf7870302047c435bb5006730650231009d4888b5c4f2f2ca35d16a880eaa20ac37263e9ac6e3e2129fea71334ab0a4ed96e0bff40ff3407b829d08b291672145023048ebed4981c0160fdf731c6f8721f9e75b569e74913b7c7016cfd8c4b803dfd5b5af18b724038833cf9900819e2448e10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ac0c1907947e456743936635b24a84ac0a59a1985aa66f6213d53e4635a07283cce486504fed6e1fd64e07cfb5ab7302023028f2edcbb5c717714e9a46bb5abda1fe0aeaf4eff9b637bd9ba284f321a4d9092fbb77aeeaaafd64016335ac8d66b7350302047c435bb50068306602310085ec7a8ee3e95ef27fdfb6e3a6787c75b108c0db4d1d698ebfb81f325153087e6d3e4f0921958e0fb5f8ab68a3eb869802310087738d97c4968645ea17eec90d439fabbb84f9a28871f640eeb78bd597b210b1e899c64ed5884bc1ea131ac25f00bb910302047c435bb500673065023100928199c622680e76e3eeec52a75ce239b717b9ec7bb45e321065421ce1fb0939d7a88ef46a1eebe4f4d8897003fb68d1023028648c2d27eb60d40d8caaceb186ed5a57f5d39846a6bcdd7475f0680602b99e6098e1df84496f1499b8d74c576062130302047c435bb500683066023100d457aa80750d3e550e31f5b3d64ef84a4d3e61a4489eb3e2d26040182f9b385e3773d97713e3b86b145e72d30d9a745c0231008a67b3715a75996dd87d0b0f61225988835d32d78d5c65249fc4b829cfbe97a373303fd2c7e3182d84c11d1ee08818600302047c435bb50067306502304a4a9b107e88744b77008d0d9d6222c18beb6dab2798bc41315b4033e42a7ef0c18b6b6c427e238a3c1f16658971d3ac023100cfc138239b938935dd52d4c3528ee9fc8d772492f0db6ffcb0d8f92f557e2d04df0d49d81ec13704b96bc08857d6fa800302047c435bb500673065023004580ebe2fe70079ac5e76817e3978ad88fb4ef4f349229507aa6c59f5135dcf3a9b187b0e0d0cf0cc1c98217c7f1acb023100f33f02b69549f222a5627c190ecee161738ceb9ecb03de6880172a4f731edca804fb0cc7244d78eaff8623bb86f3ef870302047c435bb5006630640230042ecbb2e0753ad26005bd76f8e4d7526e41302747fdf150cf706ab639b743f8934f441936938fe675403916622d2fba023071ecb05744162db808e7d39c777123e7ae53c6fc91ec61dd549625f3e1efb94f4db7fb1e720b9ac56313b89548fd5f8d0302047c435bb50067306502300f0446f148596af7c522f42833c460ce728ef78b4668829399714c0dc0697bc9f57ead323c1c71b87a69f844a67b9ebd023100f48c8dbccab19b326c3ebfffbf4ba1bd4a2d19d0afa1c9bcc4b54ae83db3948212e6e34ae6028527b2fbec1ec3b928520302047c435bb500673065023012548a9960db6ed86c3ef3a8598eea8729848b83b957a35c96d9bb2e7de4508eddd88878bba5a06fd6676353d2a2c42902310087a569270c2d76ffef578f990c19323db05842a6605e681e9dfc24721bab70d339a84f72a8bc40bed6f575a70293a6b00302047c435bb5006730650230639f8323fa90f96158ec0309e5f4f276e7d510eaf1ed7569b8d73f60740200fc8e6bc633b9cb5f12cbbf8ff4602e0725023100b30989df6fcb7851a0a03d19dab2e89930a7e5f7834a3ef2f49164e217833039c09243d825fbff5c53504f20b3d059990302047c435bb500673065023027bf6db827bd155c429a2724d6f8d48b3454f3e1e894c6a67047ce47b9d5b21898b62b5c4d500bf7103ff864e19d6c77023100d49fbdc9e4e5a55acb11f8e101069ede58072d9d20f52eee8a91630aca9550d3a93079cba72f7c5870bbb853b8f808ca0302047c435bb50067306502307214e0db5d405f539916b4a069ec2584165ea927f22f008c704eab4691da29b2daa6e57fc5cd88575cef8f039df3f137023100a172a83a66287dcfc695114c6d573a1ddf961466aaffae794f750d36f722181d3694525402644cb834275addbe7c7d420302047c435bb500673065023100df6e0b0ac8d0b691704ac979c1848f37bb9d6a221d4f9f951279c009b7cad6ee515b96e931cdb9fe24ba7e577a41f5df0230425d6f9f16c6284bbf1bb07cff77e1141ada72b90258bd10b879d98f6099c5b1d6e13b665b765854c9b508f0b144897f0302047c435bb5006730650231009f581ce7037eadddb5f42bfe8c16e0f5ced21fec43e06f8730015a95528284e15cb3f97217a970e476595abbb647805f02301867900d29bd8db00b9c38c9cf2787fdd6a2932aadfbb9e7b8337566cd7cbd7b40c98d94dc8028a0a335b999918b7a530302047c435bb5006830660231009a7033326d8603762b674687faa34d92815d7d3a31e1eee71a84cd300ad7b262f765c0e859895950db067f77da0c838c023100cf40422bf340ed1f51385e4a4d64433b347e06a3255421aae50fd5268b78524d0ea5146253986da6e9697374128a011c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a579feabc7bef37c02f2bb90882a319ccfe128bb6558c69b3479a429af4740949a77e6631f901e484a69aa99e1fb7614023067869fb72dfaef2b67e62924138a6e471d2a4f4970fba27b01b719b47ca5b657cf66e04cac6bbc08337aa4d076f5504d0302047c435bb50066306402301de07b035adf90b998a77174ca89809dc4005368140a45bb3d4fb03ddc6d473b83766a042ddc7d4b506db55d11afbd9302301c5251a0de512d0850de8e6d98a5045bc36df5d8f49c289d975acb8ba5a20607137ad71e6eeb78e885f99faab5b2e0d70302047c435bb500663064023054e6757744f13d48c224918dbc1f47951f8c4b31fb0cbbc07e9dd9b91ec36acebeaf51abb9f2118d2709fa65ca218cd30230482d8175376ca72cba4b1483c018191f45a9d54d4dba49a130f649f1323e6331ed916caea11fa3c70678e76b31d067740302047c435bb5006730650230013fe09f80e4deec6d84ecbd41bacf09a5f0a9ada6827a87a30e45c6d636cf8e9716f21493ad273525ec1481f5ed739f023100cfd95e6192003cb7ca451c09deac4b3ad172f5bc166825f06f0d511e085121b00f77a88cf00df74403a5727117feda360302047c435bb5006730650231008ff992d88ca286f19805d274086d76a1b92e2c4e3337f04a952ea1a6bdebc8d7b8764c3d5daadf212fb561a501fd7204023033e031425c6b81bfaec70296a573d179d1e7d271ce6e646777719145971e1c39158e01d333b26a4004df1d73752e30dc0302047c435bb500673065023100eee8c674c7f8ae1b58528eddd310e86bad1e596c239813826091922c798ada76f0d9fee0743b3f05a2854e582c67e46302303edc8c16c81b5f5b3c9d1243653b162c6ec3552ff20df44097d977f97221d078f1756028ba632d9980d773adf51bdf8e0302047c435bb5006730650231009b291a7d848286a6615ae6f9787622ab3d0e6956152bf2657a17b87312c86d818f16c8fe63717bb13087616e8e1dc9950230563d21b40a480fdc6d10083b8ac700bb368f7f9bfc5d00daf685c2c7ece8454e38333e7f34c81e0e883d913a1d6b6d150302047c435bb500683066023100a5f0d1cc86b8ca382d600a737bd52f349815507794a809501dd4b23f66344a1710ce471ab497802e0618a6eb0f7231f6023100b755f37aebc1b889520e58ba11e1705bb7c9308acb96f23b822726d0291ea3de9b700bb821bd3739295efc5bcbc9b6ef0302047c435bb500663064023048068a421059e4fbe298b059526d3c3810f28793eeb3ea056b7d6e5b248de18cd6adf9c590c146fbb45edab1fd45335e023008c1ae68e76959b20fb7228d0ff3d7b85d2253a241f837fc1d71ea05ca2be3420f33c5cd6031ce7698b51c4986b103400302047c435bb50067306502306a17e21f6ec26f3b54402c30025dc9301040b2f16cafca2111cd01e6756cec22253a55fc6d4ef58ab1b688759a3fb124023100d90746841533f0ad4961a117ed1cc9279e6e3643708b4f7a6523dc9e789a708269e51149dc41277f36b3e93e332fdb240302047c435bb500673065023020774977cbd120054c7b10a456f3f7675527396b357dc9965220ec9955932dee7be2ad57968f70f2da466a3b4f2a4d02023100bc947d1603a85ddd82789422fd33045abc89a6c991413db6caf203395d5e9725a563413df8f50bcf302898f60988540c0302047c435bb50066306402304045fd06cf2da39217cbc2073ec77f03d796dd7b79f67dd9c4954837a7b010ee47113c9e4ee7fa943d2bf261684197dc02300bd2142b67af1a73b4a4c92adf02bf2829fab8285227259f54ed3c0abf8316da44beb41db2d6db5373247fbbdbe69d150302047c435bb500683066023100a1a32a28d7b176271c930be9abf6efb899db970f6f980f284e8e111271b101c487c5783c1c9bb671b0de6e41dbbf84fc0231009cfbbd493e86a72da4985da27136b84ce7f789349cf11cb640a2a9e3c2cfde8a8fea1abb5ea8a5f25c7ec28bf10d6ec00302047c435bb500663064023003a25139d3cf7ab4bb85d4fccb42aaec3cc487cd1c9337fd955c680e8e3ba4dd1b68f62d03cc52c5c5566a0664a0d32a023050e0abc0ad1455960c736f15fb48b3b92ff0ad0681200016cf21b41eaafa0efb2f11b1a488a2514baa121f266bdae8790302047c435bb5006730650230668dc761aed86c652aca8ac4f4126014053c47674b175ebf103e21148cb8e4980f63846013feb7604f9f710d920bb527023100d2e7c11845b7e9c3739bc7f094fce362c808e5eb94a63e203fd48d49e2928ecb174ad302d01a08151886562f0194b63d0302047c435bb500673065023059a58e36c241c6f348eadc37fbcf98dcfcac28326f9de35b911268d0da343efc918fdba489fea69fb7a4dd89564a9f87023100ff90cbbbd80e0c4765ac7345dda5695fe201e6e79962a29bda35b2c397865db4b8c75d2e5d38a2054d39f3ff92a404340302047c435bb5006630640230639170d974490d87d0a67af8f05631801583a775c5f45391de62c0ae3e380565cb4025b031c98b2f66e49c8fe03da9b902302f7bc231cf6f1d41a5f2b19ccf87cece7648f3242df3a62ed9a9ec2e01ed66ba87a489841fce08916a6fade2adb805d90302047c435bb500673065023100df1261bbe4b694e00932e46f2314c1d08a50d69af10c019e656a5094230b0b18b32114278da862a6e3b30f0d3177547f02307e5daa571ecb4d17535f98b11b770e97cea4557e082ae3bcb37238bfadbaf25ddbf969adf8adb1911bec72b13e527d850302047c435bb500673065023072fff9af5174ce835b5b2f4d4916ba6b33caa71e022d536993cf64422b31d4abcb71b71dcfa657a13b99ed87e4e3aeab023100f73c468d660377e430db1bf897444f9360051fe361edd2a55f5e7680bc59343e863ec77e181291e8c1173bdba866f8b60302047c435bb5006730650231009d45133ca0634a1a7e2058d9e1462e301dd425e1ed0b7104a4e70d41e5977928e179d253145a9f5cb9c145abd299256a02306911fc5de203943e958d2b88389e58e388875b8525c73c6b360bec8d53f5299f145f30b2f9565500df235691c38fed4d0302047c435bb500673065023100cc7f86bd60375b102fbceb6d70fd9000ac37ddc83939693d0f1bb11980f7554f65171e1d21428db7cecee8c4bdc2c86902304c8a875799f9a0ffc45bb47ece7f1b45e096b7db636d8a25cc81356519722bc131f1eef33d94c601c094d4e1dd96905c0302047c435bb5006730650230531744ad0346252f399b67f6068730f79c962474a6d0808b36327355440e49a60e9a7b3a195143ef16b070698f49bcfd0231008c8267777c37437f51c1cfb5e38d39913fb0001618029526261f2ce11b5a101e6e46dfdea432f01d090509ba9d14023b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023037f46e3717fa80b79db747cfbc328d6df5388f23d8a05517d23a999851bade2b9ff17808ef43134e645695316e8016f8023032b7ea47dcc7ecc98f89c77ca67c61a8695e0d3bd4a6f51eccf0cecfbbdaebb753e325802c0e2073b5eda771ed808bea0302047c435bb5006630640230781669e0da20ed2092ce48fddd6908bd011ce13a9e982730819da0c80367eb38b2756fe2602370520802ad206dd32338023024da735aefdd1aa9fe222a6633cfaea55a459547938df45c4925a35d690732b604b7316401d8717c75a2c981b0c00cba0302047c435bb500673065023100d355e79491f80823f66de22a50f70b39e82f3e62f7aac1d9a8f097f9f673a9bb2dba65b2e60e147eeb9511bef1675ae30230426ddfce3aba242b560b6e8fb519b0231728b340cf8d45c23ffb83a552de265eb3726dc44c08b922a14e294e0cd01acd0302047c435bb500673065023100bdb76c4a924ce661614ab48d88b32fee147021a8826aee796e5a472cbba581d5b65471408a256bdab5c8c22df99b179d0230242787b705c69922a33c2c516a0868c6d683475a2ca23d7c66d3c7c6455f09296c04f0a5e4ae27bbd136bce0f2a63f1b0302047c435bb50066306402304421620e5383c75e5fe83460f73a6aa334695c5ba7c3448edba632ecd3925dd5eb60a7a02376cebbb79067758dcedbee02306962aaa0924ec9a4bbd5190ce7b7e505914f45bbb052a3986402c35adb38238de3bed24372ab15ec5468007395dffe970302047c435bb500663064023004b8f40a6d6e244739b80004319261e7a089a65f30779b7311a2144e3a0fe63a50e1d2980185cb744e6429f537d218f802301e00bb3bc67abe479f84b39006b1adb717806e8e13e40c96f0ce4c28e98f4f62eea02fdbf0c5f12403296ade63589aab0302047c435bb50067306502306f0217cb6e53f01b840e6cb171b2b189a882d50fbf2cea78fa6841954ee8e8d5bddc84f274ef7d96fba5ad6cc34085f5023100e5956db2d245a7e40a73ee13f83b1f75824b484b801d1820e498ce7675503624cc1048c009b5250b0d3133fb533ff5e20302047c435bb50067306502303b3fb52126ec096307e6822f01e802a1ae4ddc2b7958cf0eb6312ac6a5924abefebd9c0f5a692a03ff4b41e9017df557023100c5e144f9886d0b11a4c6fecc471ca5ecbf4a227ea0655e4bd17b5074b15af9189b139f2a9ec2db81c06181792bbbb5b40302047c435bb5006630640230241d235ea0edab710abc9efe08add04632cb3b54da2712044a91e31e9d7cd07b710914fa9af9f23ba107176ec4f8b4f602303ca9f2c6ed1943e30793b9d562ae4ecc03976cb7540adf7e2bee6ff3c8b991e328e9c8fef9c2eb538df0fd54d90bd8360302047c435bb500673065023100a9f6d4ca294c3afc42b9a04c7bc9eba6678b77283199024639a3e51c73b5cf6840c9608a0b07c5f9f9c8a0f6df3e18b4023002669210d489986b83689170612fa7c06300d2703c2af03ea175ecd32a778faaae5471a435f593163cfe204b81eacf8c0302047c435bb5006730650230426fb983a6cd1d388f324d4d6f0bc0aa437ae131d538055730cf40c4d6f7b233dfe8cba155cf9dcf436a7a17caa1bb9b023100f80d714b7c08461cd090f5a44e57f2b0b74d8ca7481fac5c39ada97b34911ed8ec4a96db7da37ff2c0afec74d3d7152f0302047c435bb500663064023049223bdc64bb03b5c44b67c143a81ca044673066416d2b65e94ac6420843aada3858506e52b8b1af8da79face1584537023051beca3b965cbb5adbd772c51aab0e665c471807dee272cc29f8eaa79bf914d388dcf5c8363cbba294fa04dcc0debb8f0302047c435bb50067306502306e6518507594aa48e19edc58d6cf5427d935de873fd818466283c2205bc1122b16ece879206588be976e1180c9b192c4023100ab47c40361e670ab1ff768494f6bb8b22184a5b0a0e6d623110bce9232d119a880ca707da0c6a3bbc1a02bc25f807cfb0302047c435bb50067306502307b45fffbe0878037fd91b269f6244415442b8290ed619a6c6ac1af8f266c2dd5751cbdbe5292a938494186a86b3830b0023100fad14c3ed8acb6134a9aca22ecd70a21289c969c12be1b49d8051f14dea1d0c8ff586f3fabcde609b772fbc5ab2504770302047c435bb500683066023100b3af08a2a812192a8e4c7e5d4d01a0fcb688e81b7c032337cb5fc03a931d4efaaa5cf9b9066ad7293fb172acd41c8eea023100c31c3582f5bb4efaa29a542120f1139238ed33976cd8ef0cba5562e9863b6f0770f7447040e9de46ca7ddd6bd3f07bab0302047c435bb500683066023100f1cfc5fbc2692a8535d23bf5e4193c8b65522ce5e4ce511e120118133950a3bc9d5b48ad37ea336f47536367a78e6970023100ad6a5e85646ed1b9368c233a549cf6efac93e4450e135f3b5c980c8b2c5fdccda6ae27ad8c54f9e661707434a317e2540302047c435bb500673065023100b99996e9116ef86462950add6f367e745e2fde393f5d0b2ad1863e9ef34921e752353a848c4e3f793e5b56a6e2715d50023069e5c7097b84b12f973fb2f7812acb329eaacb68a85a6d19047e474d41ddfd5c6a88ac50873a5b66a8368304b1378d970302047c435bb500663064023047f167c21e7060b8abce6ee26130c567ae904a5211a8d057a21d9c125252e4b643125997306e2441483577ccfa9383b50230460842441872f7c3f679ca2dbe9be859747e210c52dd0c21d4fec7905aa7582d17465d80dbaa16d8520a5c52e1e1bb530302047c435bb500673065023100c313612d9bf517a5bbbd8a6c73a5ab0d6997f9716bb6e5f99578baaaaaac5f34db545951f8d9d2a67ea617ef17a6b634023014147bc892ae79919ebc1a0ca88bcc39ade32e0381f12c0dde14f5544b8d98782ae0a5067cdfaef58b3d9e2c4273d6260302047c435bb5006730650231008079b2b79be9aab91e62705e662a61c3c085e387e670e6dbd42184fe43f109d3bda5937db5adf478ccf5a7b29b3a053302303437f56cc7956dc0af980aed7c761c9b23ed5c4416398b5d4e71e782a0940588e1acf94f9c652e9b8964123b254de0100302047c435bb500673065023100bdab9481b1c319b669287edbcb7a956479c11f2fc047ee5663ff732341213df6c5524e5fb2ffc9d40bde98a4dd3b87a502306cd55386a0ff0003adb650809a62e8ebf867b8c1325468ebc0b155ba69d733d7e36e916aae7409e21f041e5debc785f80302047c435bb500673065023060e23634f61d2f62badbe064daa732673e6fad26a5582cf2c2dd1278ec8392f464f2b553a907ebcee6b95617a8162b91023100ab8a5be262cc77afca928f2a582f19c3ac177fcbb7ab28a1c9221bd21b677d3565acd1990419062a438ce33b9c08d9000302047c435bb50066306402302e7b5260dce044d1b7ef28c479eec7921008aa4fe73a1c8b0fb8a686ace778527cc9fe344cc2954c0508beafbb5f88130230676e1daf6de29297a77afc7db5d41163fc800b867ba28eb9bc84731423ee790e49fceea1805cf6e76ffc5535c04090a00302047c435bb500673065023100f5aca440abcc087892b67e5dce01ba53334f0adf85276ea7c369e3a6ee669255a703ecec1cb9eb6dc7f395b926a2632a02302fc391d55357f0d8cb2c401df9ba43db0c37898babf05331db0b6ccac9361579e0d37cfa32283ff60e18d0aa3bccf98a0302047c435bb5006830660231008cf217bd065acb41e4ad13c8aa1ee9c2c2e2a0d580626c3b8374037cef1765cf67442df4ea18f9be3574869798bb4721023100c7c1d05cd2f4d817608dbeca7bd8147220b4297bcf08da38380b566d15478b13cc7ae08ca7cfb25dfa713b0f1e76214c0302047c435bb500663064023020491add3e3afdf2fc45504e88f9e8b23867991a0fa07b459634ac20f7a32531dd7cf8d0701636f4530482bdfbdda6a102302dfa4939f63981462fc05c9bf7956741b060be20ef2498882f3ac0f205315392f6540419742cee1554e47e7a1db2965d0302047c435bb500673065023100b24b533ca34f5a26a7f247558ae528a63e1346c679b286a3e0758fbd5c956bd2166003ceaa7276b12b9e7c841be256d60230130ba9882599c8db5b7de445b3abdcd10243d427779181af65aa8e0c89765a9d0fae973b02294bce1c890f1ed05bcb9d0302047c435bb50067306502305aa02593f861dd4fa6eed9df66eb08b3236b69a5e8d42bf1a51c14a321a71ee5b6750397976043b0fb4a9c5d935fec97023100a847df551af8c1e897ac3d3cda9fa236d8e6b6714aafe78aa381acc65dcfc5b047afbf6cf05a815b94b354ba9b2427a70302047c435bb500683066023100b1d957351df2feee5f05e64cc11a0e3786dfb8b468f1260fc5dca6c48d733e3f717cd66e80b728566edb5bb58413085102310090c207bbdfcf25a21d8c34114398b9d99a0bb02121162fdd56c81b8c7ce408d58550721e9838ec75449ddd52bb1188330302047c435bb500683066023100c1f429f0fb620d34ccdc59b1ac328c136541aee9abdb01fe8e4a25767b559aae147f4f3314ec05920d5f55a2b4ba24940231008f76af8789808952da03fdd17786d3be3c978216d756bcbbfb7dd0244861174d8cb8b7af2b57af2abe5a8344ade1001b0302047c435bb500683066023100b7f6e53b592bf997cf380da6da95b1317d3b2e660bab5ff2272f3acae910e14c9b54e72a8ba761c56f867fcd746ad3b402310083f619ba1a12c55f8dffc102bfbab3f3e123fa148db753cfab3152dced526b83bc90c33741a87119ff60697f69cd29730302047c435bb500673065023067d3dc3db2dbeb37246f3fd45050450e386036d2c9d6602d9722dd5d809311a24bfcdf7960cc382a3f6eae6a6733b76a0231009ee722f3dd5cf65c5b675bbba44d2386fc139c8e3bb9add217722cb7d27e2abbf492cb526939cce2713c7a58388521090302047c435bb500673065023100938b5a6878dcbbb151ba26dd5ea6fda079d04ccad17d074f1616110a9e547e182c6e840f8f49663476d13404e2eaf6cc0230712d63fa7e34240a5f74a9a6c0295395644a19ea6640782ba01f9b45b637acae49be8bc0db76d9a188f341602997d0af0302047c435bb500673065023100cc458bf7d900507d038ec7bb5ad31bd877ee25899f7eb29b327404e4874536552741461bf91f4dff3a97d4758efa6e170230392ea29690c29f886b1cff3eb9c0022daebfa4e9814d384e4af6ddc49ec7f84ab904e6dd4873e9c9bc519750eab49ed60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a71f07dce56b55616696c388455a667f2d06166b14e3984be6fdda87dd73b397016e14813773ff7f503c4b65bde5dc3502306881c8288422c7938e2ac97a3e6cfe46395e313dc6902ee38f524c1b5cc24fdd1e4dec011bb0bc63bc347e1e1ac0d8190302047c435bb50066306402302d1de86e277e6a87e46a8af018c6729712160c5a4fa52862519407fcd19604f412ad43d86d4d7f9d9cde3ca33001728902307ca92d901b750c6638d3dbc8674a1460a204cd98bd10a0f68f19125087991d994c56d4a70a45002478d6e054aff9f6e60302047c435bb50067306502307825584690758878ca9fc1a16b05c5002b193271cdbf6342f60450d9a16995c22648548988c7a42fbf0a7c023c036697023100b9e29591e54124fef6ed81f750e57584e02ba3f3761c0734f67e8fd9970d18e2d383400cd6cd0e2c39cda865ee02eef20302047c435bb500663064023046161997abb9912be5921d10a456d5be7952b69fd113d4a7156ae73e4921d12d44cbebdf9353e84ecd8ec629e29a8b8302306302fee4f08a6263f954415cb910e0ffc7d66c7cf1a8e12221ecffee28ff9e76f78c27169534a47d3b8f2bf727e6a1bf0302047c435bb5006630640230792e4aae7b926e280de495ee98af31b736a2dc03e8239ab9cb7e77897ebe79c2712d830774705a6b727eaccfc045723e0230312c92b73750a655e31b9b72b0425629f8d3370e9021eb6b608a481a5dac25561008f090ec63a03ccfa14875bb7936770302047c435bb500673065023004a101a2320ae302791019570c24575e8265ec9ead0b58b254d4b043e73e6126b7e9b32cee3d014428fed8169200915e0231008201c2e148336440fabeaeb4390ea703ea221fa6010f3f6d89a08789e6b5279033dbc4d910bd46507edec5db82ee6a5a0302047c435bb500673065023100c829e3ec35c6ac0b583174dedb378511523b3bd45243c7e59456de07d261910c0b6319908e292f851054cbbca957e5da02300514f9bd70cc2351c0b56010d11554789065e3288eac3a1668060ea291129e008d37846cd7e5c5c2ec42603b3db269760302047c435bb500673065023100dc3a1584a67193c4c06eafd025475a10b84160b724e9c05c0d885228226680d27fddb1d1839dafb0e57c2b6ee25cf0990230717f3014a69f732eaf73a9a6c02ba6f9b3a304b8a5f1906df7bf4afbed352be0bb962595f053b819447a85fe06f16e050302047c435bb50066306402306a5fac3e95173498f796db3aa85c3034e47608255e429632915896e9579ec7253fd6a231127ea753fc11d8f3f76b14890230740fa8fe9ed4f3aac0fc847948f18f5357b90fe1ac07e66003ef136950ffefd4545d755c1d147b9b265bf9df0889c9540302047c435bb500673065023100d89eb5c8b603dd87d0fe0fedb250f997a1d980dbbeaa6d2c4b3eab4bf33fe572cff5b47f798811a24fe7109df0942cd402300c97d121b395142db598e8ca48134bc927f3a53062809c8f43aa5d24925ce8c337d73e3c3ffb7172a066e379d0948b7f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ae897938273091149a0d204cfdab6c98d6bbc12ae59c54a0674953ac49b4e006bf2c34242c7d00219db3e4df4a6bf8a402303cb8c48713d494399d6ebc1d2f6b361896010cbe18d63c8f8f912f15f2c33dec51cfd269ccfa633199440893f8080c330302047c435bb50066306402301651ad8a50d9613311b76cceb1145f698c4ca373175cda4a57984a1050a38d3f9097a719c647d57c92c80c3d6d03c30602301b124c04062a06097faba32aa3f8047b8d2b525729d84d9379c15b3a074c36c28c6c8fc467b0fb8f821ce72197c1da6d0302047c435bb50066306402304fd68012c1e453292421062bf51c19436d10f591fcb74bd46ae9e9b477591256dbaa6beb6d00db692b9f3668469e4ab202306906e8e55d2ec59ab644eb8687f01c609d848946e43dfd8f2c82b0274fb78146f3f4bc44723236eafecbba388e0bbdaa0302047c435bb5006730650230780f7a3c3298193942b1f4bd85d0f4b290e2b13c8e4e9422a37e2ecf5455361fce19337d49f397fb4262e52d947cb67e023100d6ab3ca22dbf2bc0ec113d68fb73f0f8ca16183438ce89ae27b7b3d13dda8f204c8670f6852f71b7c3cf8f7ec4da85050302047c435bb50067306502302e7cc5be798a6664fb9762f1865b92346bbbd3464ae7daacfd93f1347ce576c46c5bf1f02f5b23d3b71ab9abc5ce1a17023100963c83b2d326c03fc8f8475d3ea116bc97f489d703a60f7106289c68417dae8333b5786e191494102958f3f8d1ff1a640302047c435bb500673065023100f1cd5354f0670df3672b702989609d22eab275371d5be25cf158ea67dd0cdfe7e6deab476798335f8af6dcb26f38d9ef0230510ea5bc9adbd15dd6bdcfd7739c0c648117a985d9169caa28f12e0165c2c423a33e88bf9051db613f30d15840d2f5550302047c435bb5006630640230086a6140892a420de95ec4bf796304732ccff8cbf95b2f0de4c70ed3d8b3eae4b16bc4336f1d48a0612ef0aa16e7c14602300d9a8643e0d112b987fecf5efe27f7909497bd6994f02be135c6451262bc50f00ae234ca506921ace6a88fcf01bb44400302047c435bb500673065023100985b806a56b7eebf365406ff5faf05bcaa796caf9025f6d7d02490a3c0bfbd13bf6c1af8b95b273aefd1c66767f3abfc023038c3d26eccc40f29477aefc277469d4675869c1f48bd3ffe28521b05896970529800410712079baa2b21134003ffddbd0302047c435bb5006730650230488354b64a4ef63c60d415162a3ef1a9382295b76df1f1c0819c3a0b4f72e76061dfff6f1eefb228f3363627d9f9825c02310083370defffce83053175e8c5ce0617d214e19f00e05febe0fa8bd0690cfa268b1e93ac1f9e52dbc96ca077f9921ab93c0302047c435bb500683066023100a145d3e32a68168b1cd6dde251ace0a3692e1b6953c5f08bfd7391867532288676c8ebb49ec16ba550a6f46705e4f484023100a3a4b2e3b18255eb56fe244cc287acd518490547e3791b32a1b093a9c4b3d86072ff282d37ec6b1da5aac7676d2dd2de0302047c435bb500663064023013b7dcbaf88d12fa8ce21246fd348d1ecf96c238e54c4b28a83511ae88e2cb72e9c491b108aa8e3ad5f9d31b8ea2f5fe02300d8d91114284bff1a74a01d86ef2abc205262106ee8383ed9bba2549368dfae939b96bd4c476bc307a500abd9e12ec230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ce12d02b766d046237350e8e95474d2d24b60d6571c90e7f81bca1b80fc2539d8d26105aca0dbc4710815cf97bdd7612023100aeaf70eac69187ccc0a309ba2531d21617c3b3bca92df98ab7af9478eef140e0fd6ffafeff0fc76839103ede00099c210302047c435bb500683066023100fb17bf960a37730e1d458bf1980e62de7eef6c5c8b6a20177d7ef821b3bfc948bf7dcea2e173f51eeb07c1cf37a167c6023100f6d0eabe41f8613724d2f731f2e8ea8dd79d8663f27c196c41a09bc19cb433cbc8286c62c9f291d39f3f0037dc7765ff0302047c435bb500663064023001451158606f33c901e1eca240677ea18c2677651cbe5bb5732a026d95da1815a0cf8a3c766ba6d908396f80d2e8fbaf0230652fc00bb122457fde08336c59cb619c087e3bc8ccba58c6605ea28e8432879098416598ca475ed1c1b65422eabf06400302047c435bb500673065023069ba1c1f53e5a9f4ce0f6c9a47a378a32f1485d79696dd064e2d11a867c69141894a076d18dc6014898ff518f5de1bd80231008b03ddcc5eb96427dda64c97c72243ab846cc36e678bfcd2b3001b6f4c86061762fb1a1d8f04b91e85583ee60b5718cc0302047c435bb500683066023100a67fb513da2b3bdc37dd82176b2cd5b1f26eedf2cb54810528f906157d96f74ea94778ea99893e699479343b31d5c7e7023100e9eb5e7c839e16ce4529fa7af8fe801442934b071da766fa6037d382e73a86bf32e474f978b9ec9f049ba38849f2bd130302047c435bb500673065023100a8fcfc28bd812ad8c3dc7104388daf2134e769635477d0499ab7558b7f3413e4837d829f11bed5b8aecba93844997270023052f7a9a48e95c210064e323673bcf71a427292a6978f18bd06338b73ab95c3c230484917bdf58265cb326de632f3a4ff0302047c435bb500673065023028499ee656ee44d422aeb92dcdffb82f8cd4cfc931b8abae5db06d7124cf7093273b7e36c52def167f3479b94d18380f0231009aa86326946bfb79cfc3ca87e34a3009604b5ce299db07392ba50ee9929c69cccff65e63394e2b1ecc7056ba70949bee0302047c435bb5006730650230371f1e28a7950733586b520352c3b859e6ca3d9067ab66127bd0cd775b5a24899fc2ac8ff755a4f2cbf846ebb5f23132023100d91c579022bd696c9094019680d77ba81e2ecf0754a0f37bab9f5ed7d6f0bfabe3356f56e20f0941dc4ef6acaec32ce80302047c435bb500683066023100be7f53675326a4a1e08f08b97521c3849c02cf045ca94445e924091361ce368a940612f905cb2b25eace3b4ac26537f9023100cacf367b4b04529451e902928f784d362998bcdf1d27f648c546539f73fbb0750c45281230b9a04975b10486330b3e730302047c435bb500673065023100faefb032af8cfb80f96e732e19d4ad13b8ea429c9e11087c559195d66d167b16006670c8ad7193189c364cc3134977310230578ad09888933d92bda05418a5880e0714aad8424334858037aa3433e07e6130ee40141cbf9e848c1300eacedaac3db60302047c435bb500683066023100dca11f16cd47d7307bd6b667ea6947ccd28fe02bb0fd1f004fcd7c68974303b4275d9842501c89d025c39dfcd0fe8037023100ec9fd0464fcfd1c9b7fbf9dcdb7f57f66059c6457f4538880db99b1ba7c500dd49c20f92f64b20db2c6f41831f3dec120302047c435bb50066306402305d0025f9d71d92b5ceec5025ef7df7e1b5609c41896d91d96a2571c8256cd420449a2c0b43915cd266f711d561df300e02306c2127a2a9663774c82b83ba4bff90c78b6183cccf3acedf12ffed0daf0381e453c6a47c18f75de6c885a09c505fa7d60302047c435bb500663064023077f7158ff699af4b3940440649e40543c56e6069adfe3c8ec7cb103e76126b86b0aff3075687a9cd74f6769b8955a4590230564a6ef9504fd9b7877e9f37c4f3a88f6466072212dea0394cec0ec78f5e8490a072f10d4ed77ba90b992364583256d50302047c435bb500683066023100a605494824b159274077a0a1ccdd65acb40801c642a3a184fbf1caccc0d2792c089e2344b186100f72f5ea150fccb3f1023100dd57093d4ce0306e7ff1dae586eda883a098a3bccd7bd25a3ae85fa6df4a38682ac7c987fca60d1184840c415b2c84770302047c435bb500683066023100f43db498f87de92717bbed9738875cb7a982c10ca9cd32005374398db35f74d92c19f1bf548eaf8497987d115bade8410231009dc9cab9736d75ed04c977273c4606f989225995e15cf955219cb93e075273ac6613d934faa15a6a84861ce60d1aba840302047c435bb5006730650231009a1f6b1328ce481f2b1e7e8ad95ed1c7ba4837185f4dfb166d411995d8794668ef7a7e2d779f8c1e35d9191ed2b2e9410230664c3372766fe3a31bf7dc0f8d6efc0354a7bf8202149569f4bd8c9cec180b1e2383535141624a68a2b923c9df4d4c190302047c435bb50067306502303bb8a8be8bea994437834124d3274c253dc846da724ef437d41d89e6007e82598590c095fecfb17db9f262c29b520d5e023100feb3aa54d22a7fd5d9f54f8e28ab935678aa5079e8373858fdbe132703fe7d0440f9a79f3938f98342b8868cda203fa90302047c435bb500673065023100e93623e4d9400b88bbcec715955965f7323dc74a615395116b3ee12f6aa18e8684e059a8904c692b2e45cfc9f4cdf7b202304e8f3a3086f7e563d9540b3172fc8951c4ce224c2bf5f38f6b8419644192a55c5ff83c9275707f8d2977c982e325d5b90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304194ae52088960ef4dc1a122dcbbaae74019c75bafddf656fee253afdebbec1f499cece9a628758ad42edd6579ca892302310099983ca8d4067a3b8c8c397d1e33d9c659e11797481851353300e37413113683861b151e4dba713959f420b12f1660200302047c435bb500673065023061e2f36dce01041fe50b69bf7ad0796d5ccb08fecb10c529f059e2ac94ad7315b60cd56617ea60071ce91d6306ea6667023100b016ed52cd27268a479a361088bd5767a9700a2b294ecfd6cfa2357da53de7e0a9cf7fffc8b189aa868f3a570b9674b80302047c435bb500683066023100ac271212b634cf29b457102347c5e5269f59bc173b880035d784337a23d6ab70661e7d46472ef6412613a944d63bd58e023100ff02ccd233bbc6fffc554f1a05cfde07456bb1af0f0d5ab01dcd2b55e9f56b5f9c0343b36d32cf0c5dba7fbdfe11422c0302047c435bb5006630640230400e82f9e1668d8b3dbc43e1ca597c7c921015e6f5394dd605424f604e9cbb35151d68dc6e811867dec23fcfd99b200602301cb74c22eea7d2071b61e489a975889c3152fa1f5225adf9ef270d7bc3371341a4f412bef8fef42231e0422c165bff980302047c435bb5006830660231008ba25e1ffc525e46022488a1865b29bf4727be2fd94c921f473e5e04ebb79d33e68d9c0096d55030b8fae9384489a30e023100ada56df8c437a44fd0602a4a4dbb268f9fdda149b94694a520767bbfa943511fde6103d5570e3f4e754dc4bf6a6018df0302047c435bb50066306402306c332e0879e1dc4437e117f6b5d360f703f064d1aaedebb2a4b1bac932768e904a8408ac398e21e2f534c232a9c9bccb02307147c5e5a4c98c2aea31a53ffea3c2e12d0c577a81d25827c56b6ea3f5fac8a981c7c28efb558b1c8002f9686d19f06c0302047c435bb50067306502302d71fa090104d9e041d1f5c5c73b5b8e3680052d3b2e079929e0fccb9b325dd9c2e1de09b182ac2dea323512c65a013f023100fc096e170f4bbecc5396d15b546b4602a40aecf7f81c9c712753a0baa7275d0f0aec4c531f81b5d8518a2edc9ce1b5c40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230102574a94b65edb900ccb64f2bfe0008cbec052fd8af8525be337e3e5da3f638b07851efc7c03b07bd6ec1bc79cb2a11023036ca8c1e500ec82cbdb59ae5bd022a5495a75a4a0aecd34fac1408a3f64ce20f0633e11ad21bf06a627317e46a2abf580302047c435bb5006730650230502c421eda07f0c63c721ed0915c3c78f95062a946d2ed924658fa424a6e0d4904ddb871e92b76d4a0baab43d1cf4a51023100f4ec4622f5c60e858dd7191c3ee0a25dd11f43fe64c7feff85221b6fb0ebd32ba69a1b8a16f3cbcf5e979a838192ca190302047c435bb500683066023100e62b97018816fad3a2a9312671104d64e82ee37e9298d7fad21eeaa37350b9c1951ba578540fbdbff9cab0c3ea2a4a87023100d70768d0872269a1b4e85a5cc1f83d1f72ed4fce15ad7701ade2cf5e4cea1d4abb55ba42bef9b3d68b665187c1dfef500302047c435bb500663064023049700b0f868b0c93912c691dacc9c23d612259546db3ddb9087591878b6fd5cf477b8f07f142e07d24b7279825213eee02303eb42f155117efd7b6a3075dd023074b1863a9a1b8c5d502fabff87e5f2a3ba00a76ca65de15ec8281e0bf5a9b481e2a0302047c435bb50066306402304d06dc179e4680d2892ec47a6c2eef511f9fa8d3ac1b8bea378d30fe02ac7fa6a449eee73469da6d2c75341462d4b70b023071a3ea110e1406755801d36f129c7b355ee3c47aaa38b78b34ea1de73218ffa7761ea27a05f510ad4cb776ea86ff6e910302047c435bb500683066023100a1a0272415fadf8421df8b584757173aa12c6d9886c74292796af8dfc353b87b5b874a8dd284fb31e72ea412f7464dfa023100c3f883891a52d12f369db2c90b61c36282dbbcb91ca809a0fd57ae8b6264bd854865c946658444cfa5580dbb8771467a0302047c435bb50067306502302eeb8f03f810aaae11fba6169a0840d326833f7f0c2335be5b662fdec9c9ea087f00d31ee142807fbea71124f4438765023100bad43ee85ecc0602b3b8d2d0e621fcba9dc3ed5164514c4c760c24c182c48e9c2b3608a1eabb2ce6f02adba7e93fb4250302047c435bb500673065023100d48e6663d3037b11b87a5ed35eacde4793dc73144fa0da4c3872b7c170821330cb1d490ce9ccf36b9e108033862a0fb60230166f785152af3e9a935a07cee9ff7dd18a88bb101cb32bff4ddee6c27835545e5669fe4d60028f6c27d347dc013d308d0302047c435bb5006630640230107d4531111cdfc3288350dff0bd1c0e2e0dddb0272fbcc717bcc3f1ecba41f1ed1a5f713891f1a150399f99bd3fa1c20230173215f6029ffc02def5cf00c43cef20a0db4aad60bb33dfb778b7d397f8b9a1d406aad3f1b120edb6fa661edd5f55f20302047c435bb500673065023100c656ef77b9bf74ed9d458fc32fd532185a45538c9c666e01dfcb6697aba6e106d3aab5ee4b7590bc4bad5f300aac703d023066faeaa6aff19a5d0e5afda871087be010afa7a278ea5d73797d32362cd14cb6b5dea5e7a18693843ade36b1341653ab0302047c435bb50067306502300772255255f8df2f6b843088d6ddbd58711b165c2171206b99993b03d65919eaac219214ae6fa44d860e5834dbeba4bf0231009ebd643c33f1aa5705af7e6b317237e49a31c8489793e3ebc7d5982b92f897452ceaa0dfd692baa6d3d2d1eb2e2f8b640302047c435bb500673065023100da390688f2e601021599ab21dc2b39f265fda9b40a70e304231d5db9a634329145d8e83024a71fb892fb7a455fb0ce6802306c63766a82b38b05785d31c9ee2464335242d84a6d9c47fc4353d931e0708c883107e86da5d542ea1ffb1688dbcc62700302047c435bb50067306502303dabd59a4cbad4d730b7336136203992958ddd1495032875efc9daa8012accb80a6ac6afefe89301d85d17b107c1742e023100c7404527e816387e8cd6210a16841cb20288c09859cfe8631c64bb7d2bfcf6f0972457ee1429fa2576938d059a83a3e10302047c435bb500673065023042b92477d023b5f6b61b952bbe411937cb65f37213710f6143e2f194acfb6b166c6eb71c10384cbb2e62eedc837b550a023100a091e3ecf36aed7b033333004ee925743056b58e29b1eba194b0c85e4763002fac7f17b0e007ee479e8b6a60d0a196260302047c435bb5006730650230495b23cccd46dcefe1cbd86f93759a3a4639db62a1943d12b2e32e66d086edbb9e79e24654d7142c1f4773412d676494023100e8c8dc0da0f28893994b3e90da53e6174bc9ed752f2147c67eda3f6776a877fc2d210afe0f0eee5b5ecd296c3696c8560302047c435bb500683066023100eeba183be1542de65ad1ef32e73d125541822e4ced09bb77cff2225b4b7b38ff6ac4351320141be9dd5387fe74123e60023100a0aca2b038fa42e589bf8e5c1cec62dd433ce078f148b5de70a6bf4380e37e1efe49135c6db3a11391547bdab1a13a840302047c435bb500683066023100eb404d30f18306bfa2e00343142fa048072848123df396bb85b890fa2500392a3365c8aa51bfca96e9d456c2d307e772023100fcb304808b42dcaa1d219bc1607586b45d5b1299f322c8d395a1cfd84f2ac490903bbfde465080598e9b29643e00626f0302047c435bb50067306502307f8ef9d2fafc8f9b7c45fe80e27c7629bfd54f9e62087e20c269adb4410149b19c5d7c93cb89b9d0209a9ef1fdc367f7023100ddad5f74e8a95d6bd5ccd67816a03312d49b5040e2f85bdb2579771ecd525e9df8e82ba3dccb1eff69e18a48d61773b10302047c435bb500683066023100b506128fa48ae7009b10b0abe2f284cd1adbb69e4966eb6ef11bed1c83f4b6bf2fa26e838b1fb1c4cd499d388bb13859023100f47ba09a28dd329f23ee48952c4cca2b02bafde46cb505e341181bd8a7be6c0afa8dcee6392d4ed0c97594aee3763cf30302047c435bb500673065023100ddd6e6fe14649d2ddbb72f8092b78840feafc31ed9404ddafdac8036b8429f5d3414bfa4b6670526b32e5bc25c024680023062dd46e2556d0c7c2a8d2f97ca98bf919a973dcfa1ce253723fb3f9f474fae96f3f9e1f50306615e7bbc96e83231ea3e0302047c435bb50067306502304d0a70dd5c56823e46ae067dfbe211421dab84990c525ca88fe569f866fe512184568e4dfa9edc9d1ed940b753d8ee24023100cacc228ac4e9d57ca03cbd3a2c10dbb24b518c53f78bf2f24c762496f0620a9aed3d30ab9c9d7e22a37cc062e3de60650302047c435bb500673065023100dea0b4d4b6ca133bda68420bce0abc7d71abfba2507502ab49589bd7850b8b48b92a4ff08ab1657b34db3a35e7f6dcaf02307feba1a32a1f1737d3a2dfe20fc9d14ebe7acf641f5ea45a879d3d3ca3c7b8ea9f0a9363113ff9f971e7c276d5acfe6f0302047c435bb500673065023031c39caabb137fc71ff2870ea475855b772abc063cfab5689afdfe9c7b74b4ded4566fa116c825c4a5dd77cb03d8b3520231009c90039f43f3f3716bd4bdd8bec7e4e3868a2a9e459db0c8cdda1af4fb3685ac2cbbe8e3d0b056b1b99ee95cdd98bd3c0302047c435bb5006730650230314780cf6c1902c40071efd83acddef335a4ea1b660b406a442c598207dd93232c9439ea85f890a2fda576e52c34e0ba023100ddd3cee7c407c790ad81e9ad3d51384e9a448e23f3bec246213a758d2361e4194a50f72a2aa38e2f582a54c6fcb383630302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230640177d75aaa061e49213132920f006207c490e0dbbe582ff656fe1268b4265aaea0b4f0de4d558611c8ed26a10d19fd0231008715a48f55051ce63d2d28fa052ff455e27305cc8fb6e40e4dabf4880e37d894dfa6923345cae5154e7c73ff1e74c7840302047c435bb500673065023100a593dfedff71f7c0bd3cf0d70a88140bd5c51d3c4b98653337d51ab3fb9a08a2e7b0c5da4b26e82440f4222234ddfbaf023079e1bf8746a57fcaf87fbf1645401b4bd79726457c2a6e09b69d43f3eaee38768a53bab03080b3c1ceb5d65910f3a8f30302047c435bb50067306502304bc6bb9bd5eba63af082d01a977ec2ca47d9ac9d596bcb8d184aaae82a5d5f85199df7ded3c77080ab390749520f03ef023100ede73ffd9d47177e654df2fe67365696d329eafa22468a01029bb1d526fb8d8013a7e28442a54a690af89656b56d0ef30302047c435bb50067306502301d7ad7b3493f592b3dd299974ba5c467a2e1bdf39d8809da1fe0e941a3594929af59f0279f3cb0eb31a66d15d58ee544023100f60d1fd7c5e76d42a5ff5da1a40f958530b8b5eedaa86ac8cb75df00ba03abca7f453198c616977f6b004c60eddbc66e0302047c435bb50066306402305de2694c89086783273fb77a67559f4314ca957f832468194f7d5478346936cec1f4f989035da1edb4d9dc8263233d33023075b714b8b89bd2cf08bdb1559dd17b98382f5306c1fee8dcb5ece0463d1edf48facfe48f5002734be6a9e9f88b5a2b7a0302047c435bb500663064023059018c7c2b6c2c248ddecabd901d8f1636102389aeb7f3889cfaa26a8cca48ec3144858d01faa1855ade2eb3b8a88dc702300af855e830a9158ed9adb914d488381947de0420cd42b69ffe55a80280230c45e45e200cad722d96ab49b3001e1b171f0302047c435bb50067306502300a181efc419d8241442d1bdb91e077937bc61635d8f602469304d77b724dd6b858d2769b0ab2a6024aa8936794eddbda023100fcb3be4387e2d5cf98397e8849df624847a52ce44397e2ae70bf1c1f35d3d0d56b85ea4638c6d70ed7746e2aa05f991e0302047c435bb5006830660231009addf079b5233ba1eb107209b2c3675f9c843ba8bff83ffc85ff1e7a17297e2ba1d282ce3e088b4711979daa0b837300023100f1df6306004c8d599d1aa66751fea926adff93716ce6acf418d4bb6f7789c59dba0df16103525dc1257966fd44884d750302047c435bb50067306502306c0bb3d0b2af5482f7a4ab5a7b425a5929524ada937ef40998243ec1df31518014b48d5557573c76640a26a0e7f0b741023100ad3d7a5fcef1d3257ce2d665f25e7a63ba621b7978e64c1c20331fecf75225d84fd901d32148ccf0223fe0070cdb5f340302047c435bb500663064023059efe020acd16644eb51edb136ddee0ea09fc4c72d2ab8a7d5589618acc9a5f487ef51592aecc6a8ab58463216d736a102300d656e609bd6a6bf1143c325b09876ee6249e989c1fbcba6f0de125b6614968881fed03e4a233155c740dc95f1fec92e0302047c435bb50066306402301b7f556e0e332ffa423e783fc98fff96badf52e6302cfb13b52ca1ccf18a011a1cb0ccf6d710fb31851f5bb471c5bdd002303d6f7f94773a2052abeda8c64b33d047b855d550763dc847bbe2dc3a622abb60dd113c133a013eaec1936c1490f05b4e0302047c435bb50067306502310088a0bcfbd830fa6e88b95b9132c310f1476c6009fbdaa89309a66d58bc55496c505fee140d1da454e5c6d39969d8e51b023041c1c54a1a1ba6a7564cd81275efc55799aafecdc4b4ed18c40b5dd2adf81ee38ddc718166a545f19faf78a5680600250302047c435bb50068306602310083224cdd35166f3495474fa7a52a3141199011df36ed185cf686f6c078c0197afcff23f6bd5ab13e65866b968b5965e0023100fa366776d80b68d55faf86e71e1befdbb9a216f88d89f1c6061a6579f10eb5d207c6872e81647d6025889aeca2f36d1e0302047c435bb500663064023027d6faff465aa2105b0c3d2dbdc73ffefc3d002ed3800cd89df609258a45966f1501b10147148ef062bd32af73ca482602305d67113157a838a82f451734055200d0296911a19f37b9d6039727fe64c4eb52609ddec2f253273c9f7c50cad40624550302047c435bb50067306502302442efc306bef59c7fb8febcc45aae281c6a1f0731fd3a8bd29cc50f33028a281320662d85b32b6d7a2cf9d0d945d32c023100d1ad84cdb0e031197a7d46b666d4d916dfb03c1204093528fee1e379fe1c25d3ca31cf733092aea1bc5b935138839ce00302047c435bb500663064023100f31dc82f302a2f7283be5302abd61ddd360611ae277de4cb7486d25b0357c3519c4b2ee246f1564e8478889992afa5c3022f2eb7f8890c5f2f346d04a1230e4eea6051b5c515a31acb889cf482fdcd78823f02b24dd78aadafa76cab213fdf5cec0302047c435bb50066306402301fb35acb66c2f01ce6ea1e4dfdeafb4bcc2e5eae588f4390638fa5e670e8e11fab74e9a7e17a36dbe1ee4635e0395c4502301ebec0d8bd73bf179181ddc4453c5956a14fa9863cba05557fab3b2c572a06e46528fb31d1cb7e6d86a3fc3a513bf63a0302047c435bb50067306502310094a0ca50c7272b0557bc55a5209040d77d7c90750bb7b48a4d35392aea8975b2314283bbb91dca1b5842020026f841a202305cafa8b5806104a010730eda589a7d40ff2092cc57abc3f2034236605633dfc1a63e63f53f7f69211261317746d1dc800302047c435bb500673065023100e2ad41f79199aceeaa091dfed1fc86db736c5e283d0ed7dbede09123b646c44d22d5880835c0ab256d03e6082398c24c02302888850fd22395b32b49a794ee5e44797610cc39d8fb58d35cbfc7c098b08d0f8fe7591cd6d11184419b27d5e8877c550302047c435bb500683066023100b72236589e6f78ea3c43f0009996576973ffdc8034884fbdb6d1832866f777a365670b1d389591ce133380fed7e8097c0231008743bc1b2ceb657e20fffe781ad7c9412376ef8c81b9ad66e33406f7dde07c2c6fb7836a73bfb88171328cbb14a689b70302047c435bb50067306502304d4e7820f11c721aef768b40dc8ebf0db5097e6c6194210bb874970c1310d6ca2ebf62fea88f1b50dd2cd51ed3f7058f023100fcdd1ce31b377cd4e5f7c4ea5a687664ae6d32fbcdb187d727881242459f38122d66283e3b3bc5743c608c089217d3760302047c435bb500673065023028ccf94962e487d24af534b78e492600618a12c1c35aa61e7ea6d5077c7056ec1a06c952c33664398c676c8aea0c1b7d023100d5058b51b553730327f0ddc893de7711d90288183e3b08bcab3cdbe38cecd19f54d7869073b4c3e655e3388ca31856de0302047c435bb500673065023100e7619e7b1711833187cbba1ef9201825c1ebc6bba95bc10510df060c790aa07986be59d3409c74a0df82aa387df8287302305f9e28f5f02cdce18082a1337bdca87781aee15c5919b603ef62dfb06173e9223a839579816cc90f8dba95fbd0861e320302047c435bb500673065023100de1510fd9b2458bdcc994094279556d6bd3f7097d88743d4fba4ee9dcf22732faed33be72f500e8f5043597290001157023023ad0afdf461aac974909cee3605f8746ae583720002df577d06671af3515f3838f7f887612e95a5c4337f51164160ea0302047c435bb5006730650230103dc845be9756becc661a1c16df1c042634b180bdf88d92a3bf865126be3e03fe7a178aa306aac1e7b1026c39027776023100d4083347326933d67c83f641bd37a27813886e7f1804a4b29acc85919660a152541556702d61e80d5dc381b71d20d2100302047c435bb500673065023100a65a8d804d0064996b4259711ec662f12b24846e9b3ba50ce0322048ca89a8b3b9c445c3add277119b068b056fc716db023030d71b49a3cd76a6307c3ff6f5d7b571303705e236382adee4b4baae794684098c61b47418555256793c42db166b824c0302047c435bb500673065023100883874aefdf2d3a60e60014b94bb3b5c6164ff48295f7363c184209f6259f0d2817f9fa3aa165a99ac83636c7ddc8a620230025364ba96ee36f7aeaa67ab8a862a6a1a5ddb0ca841ef4038a1beaeabf7fc7bcd8408aede3f076526aa31830cd130620302047c435bb50066306402301a8fe1e9f445ee647377b07f5a521ff1d865a45e30b9c8e845a54e08b8b3cc4bc961576890a676033391dbe9757702b702301218a65a7f2e5449ecbb161bfeaccc16a083a4aa03b713805db09bdf2862cddffae8db0eed591f33e5615fceee7048530302047c435bb500673065023100f16a6069676ba6425b9efd60c1df23e6b84a1868b174335cbbfa2438b6fb95c2b3a5dc775856ed32bb0310d5d392865902307fff1beda22200191e763b97b16999fc326af5084acd1d68d9f32bf2e11375cbe332e8687c5867dc0d8a0d43f45575250302047c435bb500673065023100d062f2ffa7a36aad6ffaeb8ff4f089dc0c3ce3fa01790c8f50aa01e0c1e00816aee14718df1b3df9413e817664ccc3660230471160460f7d05bb48f3f13578be9edb0a643fa58349af06b17b31bf9287d2469f2d755d66e42cf3b10626564b3e36fd0302047c435bb500683066023100bf280b437913251eca9397bc866734af6b5115986a45e82d7e6adbd549d7078ae8b0bce18b6a003c874c95a0539e6e04023100c116379217b8f8cb6b79db53a4956613e22d1d5bb4f5c56729d7eba7a3875283ba5b388b22f4a199f6b9095de768a2be0302047c435bb500663064023010315f173442f97b2a56068889c16759f09c268a656fe923478954844304a43e7fcf006ebd4712ce5635506d558e70740230510b55e7c4cbec9ab3ef582e72168201df811ae48a5df2b659009a2e612922146209d9618d91da941245376567852dba0302047c435bb50067306502305aba00a51a4d41cd6eeb89f8a79f14364e62cdb4b2e5581057d569c63a7c2a67f70c1c8e63025dc299667fc0b0c60a0a023100a4c3a3ac4fd49c6ce5d9f6e7175981510796e2d6d6b5efe5b7a34f4dcc0f7b948906eee4d257a8c477ca31d3f5e5f4500302047c435bb5006730650231008ae65e013b6365424989a8d99d835b1b1c43ed3d40c00175dc0d826173cb2bbb30740238e4173697dbbc5d55a8746eea023043470994c5d38c85f3fcb4f1eb88d4642d299ec0c9a7fde8f05554d1e399b4da18945ab4d14d5d1643ef81ded479ccd80302047c435bb500673065023100c3124c2601ef0d4f621d5aee63db27b1954a1fca010bc7de864d7183f3565003e24dc1a22398976f97583c98c7beb48f02303cc656992b86cca0f44ecd6a05f609c1e5108e1703da13abd9d30ec14f4b9fcc3a2142ab48e3f28eae122e88ef355d880302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cf0440920781a882b71f0b8766719f5916663d4f94524b13f1b41af53fb4f7e352b640867d419ea0e2a558316bf2736b023100cb724f967e7d88c177a48b1874743a839899d71103dae5fa258cc10cb933ac954c5bb7180bdd8dac388b70621971c41f0302047c435bb500663064023008498a951e53d1769c502fc725edc8c3b0b24b03dcd35934e80c71e21edda369267706f901b6d181855e0ca3e439d24b02305ce5d8b3b209cc1c07411f83588cd6d66dff7031cf4ad743089bf86140c03f953fc356aae25cac84513ef6f62e4526f80302047c435bb500673065023030500e0d32bc615a4566457f5da45427e9003b7809826d6da4c48893c31a83ce70fe79616bf0feb1b2fc06a9ceb93fcb023100b457e12b7d6f778c06b68ed13e3e26b528cb4aba25ad8ccaa8a350041e43743618345ba1145bf7cdaa81bfeb6343f9f70302047c435bb500673065023100ba5f8c5184b4d44feadab9db76012b150410b5b5321db6ba58a4a2c66081dc1fb3ff82b880458ed0415da9ee5604d09b023023b5ef5a75f14a26db3aff738b4e4112d0c0446a3d20f5adfe31589ee9d9363402509bf65a2cff3e9217590b09a5838b0302047c435bb50066306402304e381e836aea366703d72d37f18305daaa533c91849bafab72b9af2ab1752f219cca1bdeead4e0f793e94a2a8710c4c602306330fd18916dafa2af6a2c33d0d35b1164c9912bba71932e1a3155393b790f742273c00b0201d9059c94b3f3afcabf010302047c435bb50066306402305038437a0961e930c85b1b9b5230cdd6a3bbec85d3ee8fde0f1b1358f7b54666979f2c9f92d3961cfea0730b66dbfa3902306ed54543a8b6065e4c239cf5e9dd822f728f68f5981221098ac8fa40ae3292c7dc5550e10bf84b6dafbaaa1a0d1c46300302047c435bb500673065023100d42006ddbdcf4d1bb233930a35cd6e180e647ceee3dd3a9351a1e95a9def2c15dbae37c70465848a3a482f12e334e5f302300b765e4aed514f3d2f5d06b1f642ec956c09a6cd9d1fe1b618da7f3ee6855f6ae369e75f7f9d071cd0d6e61ec14915bc0302047c435bb500663064023065bc4dd4bf7654234c0d7fa4ce54e88fb483cab0f6e67996a7d38c149918ad4101959d4642fd10082cb22d776be2a947023010cd14e9c27fbd3ef978fce69ab3bc850269af966b318d84c2836a84e0509c03171e699ec0c5215947e456fe4e65984a0302047c435bb50066306402307c0dfbe40bc2acc4cbad73ed591e167cdf7a9b9dd72d65f82cfa6101f63be9b41d41cd1daddd26b074850fa61dc2aac002306ce793f59e8380bc223297af2aba053c663ead029d5928edfb41511926af7a3400a603de65695fb5bc356ff624ce16330302047c435bb50066306402300cf9ad8ac19abac253ede32a1964eb9d6c79b5c60f70d7a7cc374515651dc18f8e72868fe4eb47c3ac784e76ad26f98602303b5688bbbedc8d58906c7e199499be9e6e459390b00dfcb18020ca6abb27c4f940aa75d7a72eb1ecdcf15cc5881e3cbd0302047c435bb500683066023100952ad73f080d1f9cf1017648a744fe41df0d0179fb4c1c383bbcd6e5d84b7568028e4b62732a8bc1eb6ebf6f811f8e2902310092b697e69a82faa07b694180c61f0e478f124569dd0ddcd07aefa5a90279a119d7c24bd9c038dad931a55aa46b20ad160302047c435bb50067306502310090a8aa9337b51aa19f16aa5f72a6feea6a8b4fa60c3d3521831b7815c242efd35190464de7f93a8a15100614e9322f05023032f717047c5fd1f33c715e26365c55b92dd1d5cf1e542f3ba9c160f2308b3f7406afcfb082a752742c31e933670176090302047c435bb500673065023100be946ad1a7c8478a309bd15b6261d7c025aa4ec313cb43e671d1b550a316c605e7cdb8973c5724c1b30b3185f16cd2b502300523b77f404f89850b1f88d89715e3d4038fd37a6a1087b157fb0b2b3060dfbd82d7cde9ad14038594e6f9e1a47a0f950302047c435bb500673065023026a0c5ba2b8aa9b1fdd1ce9681254ec984066bfcbefb43b16c551d3600e1a7d8d56186bf7a3ef5ad9b69be0d4fbd5a6f0231008ca6bbc5f77adaea83509c92ddbdf9e994112599c4ee159529aada5b1c1fcc9e89c930ece1ae04b785e432dc65c23d230302047c435bb500683066023100bcc9cb1586f2536aba5e94af595900fe409b16287acb8ff71d68afd63b5efbecb387d11201588e201f8dd58037004658023100c96325a0aed9286811fb9ac0bae1c00dc5525d4883ae27994019a75c6e4b181679f254c2be59a3735c27ac4a6f9cb5230302047c435bb50067306502306b28298ad37386cbcfd6b0e8e615068b55d526b391a019212ae2ef1a71591e2584ed11334348e6a35e80be08ddea612f023100ac7f9089525734b7dda414be236ab0f778deeee1186322529c69b3f49a88ba8ea45e69ed6f224db2e6ee2e416727c76f0302047c435bb50067306502303e202783b9a8164cfb9667b0ba8f5984078082b54048ca834289b512e49316d3594b7ff4d799f87812c1c71e03b5153a023100d4e1c6f3475381888b662700e1c1afc449c5396934491d20ec6341d152d1b453390d80b45475ded79b4e062a0d4069fd0302047c435bb5006730650230387a448ce1d3d5fb7f0e8c604905584822b9d84db0fa618f7d15195600eedae05c2f103150e9cceee41297fee15842df0231008c6686de070646f468357b62c7caa9f186a133623f06610d451bae07342b226a746b21e3a099ad11d3ca6dc2864db6450302047c435bb50066306402300093afddfe32deb38778d4b5d58ae2143e70421b2f91fc4712194ed30ab5f23dc3277a89fbd130b794e58ef6f808b1fd02302e704b45432323e2cee9517f37e361e62967ccfd87954c6a170d9e98d911723864245a33c2de804139fe8890bc4f59a00302047c435bb500663064023011c7c533114b91ed177c478ad8bb6129312a7e17d4bdc7777a1a70460b497b10f2f970084ff5887efb723c46bf722fce0230166cb7972d56f47d454380e32dd1c64484718e06b975a0dc81e0022ddf7d49f41c50a61c31c203d69ea46d741c9d4c500302047c435bb500683066023100b6d07e283919d13fef954a662e4ca0aa83104063da26bae2eef10b1580007a6fb1ea35b0cb8cf5beb6308fc1617b142c023100f576bafc21ac9b642b15d9d199be79c6585ae40408052a8c8785ddf8299e346b8c7dbf730f9e1bf8c942d2403dc838fe0302047c435bb5006730650231009c30f8676a08178b23c9fc011d147376cf79f56a1a80b16ee4a58ed67e5e243f6c82aaac6c78760e4a5cc6ea59942cc2023072e82e7dcdc0a48113ea514457521073dcea1e35ab23560068d92e7c1f4f8d4acd29d5c41ef62c2bc529e61ff0ae8e320302047c435bb5006730650231009132ab5589874d7840490fe1d47c3dcd53fdba1e3be3a3d294eb229d24a6178ecd6062a9592a87331d2b52071402e0bf023051fcd7b7f49bf7640c64c482efbe460ab001cc946ff57082e3cdb45769ad64057b53ea9f1ab01413ab32bd4a356af9200302047c435bb50066306402300fcdcef550fa49aba2de90b02a570b9a0bab39e93cfcbd8b6cf74c1ba4680ba9b6dd38300d6ab8b8fb2686410055362502301980aad82dee4b4e4f1036d695603224084e86488a4b0fa540878ace5ccfe708467baa0349e5c55b8907fbbd94cfaf040302047c435bb50067306502306e9d9e5558603d1e0b5eab8b8729e872a475daeffb15e24933dc72931b49e31a804b2108cfa5cc9964f2e6f956a6368c023100d7d64e94dfc523dd2135f2125f5d66490b58e2a08927feb1d4831f45abcdd01d5065a57478157ae86a9482bbf82295920302047c435bb500683066023100b9ea667a33a27136c4270323e857c681b14d712a5f94dbeee1860867a5d063d33e84d741eb9d5a3ef6bf78023cc64927023100af365814d73a5086ae53fa567668383f0cc6395c0c95b709b64922243f99369af01e8bb6696b38e5a07d9075cf97d59e0302047c435bb500683066023100c9ae051baaf27d01ffd937eee84565a8db52293fc828dcf19742165f9152ea615f88578e2c37c3c785c96af20c368e98023100c3f3728fa3322591c2c22076bc5366b3db9d4785ddec7219b34224923d77fc8af4ad59c1acf141ba97de82703d3a78cd0302047c435bb500673065023100830e43da3d9c59d67ab93ebde7ca92ca74c9a6b9a477a8106866d20c837ae5c35808c19aabbb77852167cfdcb0477bba023041a294c2ff2ae10d2d692cc0a289cbcb67e1f48d24165a70524c338d484743384799e1c71091493bd15382aabbba7f7c0302047c435bb500683066023100ff87c1759ec5e2d2d534e10b2ed34cb48e62aa97e182b338dfd4980fda4adab96a0c7a2f39e42fa90909392809a5d2550231008034207b363f68f30ec238f4c25594a7d3c81efd3e2e72261a6259c40df129626193220077c3bee3392c2cc5e29ed7990302047c435bb50066306402307414e3be423a4bcc0e199f27a38cd4e80c19f179bd06e3ad03aee42b55d39448a26909af1489844b3eae5998577a857c02303c482aaef765d80be1c8777606e1ad42cb9c58f2bf8b6765680696630b63742736b202d78e10b2e4c5318355bc91ad020302047c435bb50066306402305a8af26c1eee51e50d145d6deb9f59db5c6753b59fc8648e497f84085732e97ec778ffc548fad556742516d2afb5faa5023061a204e9dcb9abd47e600f44bbe314c9df8a11c0afe86e0ad0647c033f0f96f54fd91c7c79c605c182f56aaa0a31219d0302047c435bb50067306502300175b44d26b666dd0622071c78fa1dee40aecedac63675bc456d8d9dd115a45be8020e97733bb79f1b21f608de8cbe24023100c3899ed9296a68870467bb2864726e2751efc509348c2bd9bccb924df8ceb31005e58e25379ac6f0de1fb92cb081a7480302047c435bb5006730650230152a1f4778aaf5e9d3a49f47d3ec7d4d47e9629d73c0990a965d8dcf08998de82e5eeed619e354988c8eb988e09e4ce4023100fb9ba770e4478b6691350a130c4e7043ca3e98d586166879997085b9a36b0d2850444f4f49e850f5644fa167c308caf70302047c435bb5006630640230338d5a94d3f69465a631d24c126939fa0d498cf406baede6f92e48bb0143324af98d9bb7c73d91afc2bf8c5433171b49023030203d4c7f2e53b5298f81e60b4e1d57834368b22fd39608151011a604cd78ef906cf92d2ff8eaf48e63dca0284993810302047c435bb500673065023100e080022024f8a8c1ed1928a96ba66f28d8aaa8d8f8eb27eea559dbe7e94b3742cb1487513eb47c0f4f875ac7b77785d5023030faa6f81c9bf5d4c31d89a56e8e72bfe300e5f2d864bcb4e1deb44b2479aa97f65b174c5b602e2ce1a7a29051bf686b0302047c435bb5006630640230185a31235db91dd12d3a4e101b5125e08f0c9fe55d73bde8ba319f44fde61dafa9371678b8cc622b858aebb368904ca4023072f446525b32679cafea910fdeea17943fab9eb86bb6aac51bf51f2ab15a67d4fe2bcd6026a6b143567fd683adba368e0302047c435bb50067306502304043d603f974f5f091c406deb7d8d6369de3b2313f50254c90687395d9cf0f6e2c75f930b40c44eb0900f8bbc0a5b78b023100dc66ec41ce8bcc4550f59ac7ea1d6e45c635a99b7ffb335c13b448713148c562948d22c2ac8f66bf4bca8b644fe25d1e0302047c435bb50066306402300ebd7fa7d78ad4f5cfd7d7afaf235ea4f54d401f889647676fc245429510f0fe9cc913256d67ed52f651e47a46030d4c02302730cf783e4f1fdf5c79b40e82a750b91b238fdeeeddec5c2bb975d823ec4278f9b0e76744b97b58c3beeffe7f0217510302047c435bb500683066023100f37e0e1ce817c69883d257a2c1e76c6398eb2f5b9608807ee2841287f687d4c5beb30bd01fc98de5b269c35074bbfbe4023100ef16722a5fd6a818a706a936d441f1fc746e7dd99288cd09ac256cacbcf919e4b7965317e6d0959812ec5ac1ed064c450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dedbdaf86b055c187a610c32f22398a57da06589493c5a56af0c34eb3af15e38c4494c494d85bf501aa09962175f190d02307342dc5af48fd23c89f897e26a42f95b1f819902edb5619496c27163e62336f0a7c70583b74222b4873c7796487b846b0302047c435bb5006730650230734b42e30a72ea7318a236136b78331376b1220f1b7560257771efdd7da3b8836190156ed1d4037e6279a83257623f88023100c7e9b4aa3da0ea7a887000cd6194e44880217a55fd60e208a577c3494d303c7f6c5e33b228330b6d15238386304b4c2e0302047c435bb500673065023100ab4d0c2343133683f413b1c89a2cc1470d6bc64b828b5e06efeb4605f279e317f0479ab955c236f08935f89bac3f4fd202304e34fbd9ceb21609d8f0d541b47583649a8044de7ff6f7927a69d5fa15b76cf6377a8114c00a191fe011d48a9a90d36b0302047c435bb50066306402307f97f001dfd36a27c93da5456531fa1091c8354cd85282018f7ee00dd1835232f671e1019883223ca29bd4c25e3cd4ea02300cf9a287b201b78dd07c5e28ff60ae3fffffef098493596d6f53bbfcc97a35b3ad3f82b72b705b034afbfed6598c2b690302047c435bb500673065023100bc0dc8b43bfa7e380e8090cea48092bc78ca44835895277b8f041a82da878d044a55dea5e125c04f18b0bc88653e30a60230394b1e56e9cd82830698465ccdb0c19d1dd89a579da751c45e4ccc9e45aa49dd7922bec37e142b2c18eccd5ea701f2a50302047c435bb5006830660231008ecbbb5145759ae12dd120515f80a26909f2102fe1e58e90c48b5959b482468ccd8fa84fa48d420ea62f30ce28b4aa12023100bfc161a031bd441e7f8fc62900561946faa3ab8b3a00c03987ff8b341aa02e6fb2ee7102d85eda382eb03ca2dbf8b6fd0302047c435bb5006630640230151925015e055945033565311ff9698cd20b81c498835fb8106e8044eace96b1064fc634a599f07ef80e39f21b64d9b6023052f6b94ec7365c38952c8d012b71c720b7c66af1b8fb7c6585911b32233085d25875ab3347f2b65d030b75ef86a3da1b0302047c435bb500683066023100f52a50f1167c861e3a71e1b52f0512aca0b37dcd13451b2c6e9eb96d57725325d53d9398963146d8a347a4b8200a70f5023100857bc76ba46bc4e57eac8291ceda4ab253258a1e4410fc453e665684db6002c176d1514f2a7c8b7aecddbd3a1e2fb15e0302047c435bb500673065023100b0081f7e7b2d3ec757315381d7497cbc6ee076ed8f0731be0a55b72e25b982a7d2a5e02da33ae8e3f545a4aa2d11909002305f625dc6a20ab3a893715a7160dac1736bc6dee28cda268f0eb39e196b4449654d5cf59569e1ec7477c1fe59d5eb2d210302047c435bb500683066023100a81636e19b2e6e4c082f334e309ff77dadf87be210357ce00334901264dc6d3c43b57d41972b9dc89653a70526936551023100b6a6302d9308c84f8b3ceb08da7c6becb286b84eb2fc12ed727372d6040a8f63159eaf9a9b7ece7ec6accb9296b29d960302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009b64a5b76dc0e2c0e58b5cfb2b1a816c5c50f99335d24235c478979d64e4e2e70a1064938b8f7165f283a8ed3b78bdd4023100f2efdf13e5520a461b6022e939ce0ec55db12211ec7550b23122fb42f657d689bf6ef957d91c15c6b9879a0ffabdb1620302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301ff2935aa4e1efaf360e9b108240ec319e48b2e3e8971b053a9e2ec33503b4a6f213dfe8bf804312ecfc0eaec2692a0a02304f1ed1e275815e1df082dbc054f56b0d465b14b71e663821d4c2005395f2f74b1623383a57397ddf2f484287274ad1330302047c435bb50067306502310091f086119eec811162fa492e0b3c47c60d4eefeffc03a96339d6bf43b483a1403e3209b37c5e182e7f1db219f81b6bc7023069d1d61143b00306c6aa957b371fba2f2be27446819e3486f75579635fdd8e98eb0270d0d69d4380f3e062bd3af9f46c0302047c435bb500683066023100be169af93b44d2cfb84440fdb9113bab816e11dfc9c938f6fb5c6f580380f75fca30c2ded2e92c979b642e348492bcde023100d617534ce886b71d5db63ce07a3dc4839a7a22f44293a81c0fe2791551dd09781159333eea105258eb7eeac843d320580302047c435bb50066306402302e603d8d9bc541dca9334ab57483449f47deb7e4aa509e5ce5297878d1686117e644e2664098612b2c9f2aa7126d6b6c023051325ff854c36cbab618c210dec310c38005ad45d31f336e9206a7613366cb49b1ea9f3f0dbd54757c8dace5d93e5a940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b935d3eba3f1d2014ed32bdde844e4de1412535df850b447fe2ed99353203751db8faec87bd6f271d511fb9308866404023100e603535ceaec04a3ec80d606d78ad1abfdf7f499eb4d7ba450d42ced8e0c13d14f119cdf4726c2775aa93d3adeb6cc670302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301e2b29f19f89d6f968267df5b8917298b579f9f0eb7bfd0821e7ea9f01aee7cc34f7f88318d748b91a039440f30450b6023070310587b598dcaf9544fad57b60fc3ecbe74740e777d9481801edadac81325e10cd8be05e713a9cfadc5008942d5c0c0302047c435bb50066306402300d01d2b6f86a35ecc68aeb6a4f629d812367ee1a851a7345cc33fd19721c5b9e515d30bfac37a1d85bcdad6b0f2919b202307e6fdff59830a40df569337c1dc29e0ebf88b7f144d90c5f8e8d4128c23babdf1aed83c3de9546fb273ec792a85769330302047c435bb500683066023100b5a91c511d1bb9df5bed304cc60374f3a400f980e539bab35e6cf805fb284abef854828b31c07adc23e8676c29863d98023100f00a8f08feef609b12a1781ee35a560bc11255249e2444fdebf0aa3116d01e07094d5a42309b471da79c3ef638241f6f0302047c435bb5006630640230323b07cd152a17c95f14dd078feb85d9e9fd97fdf191966e821ee457cc5ea93bd31ec354ef0af65319cdd2162026ebe802300f1c5e933486bdadc695f2b838f967019080a30487a9cf0dc2111dcd7fa66ec493d75bdb1593236a7897ce9a9cead32f0302047c435bb500683066023100ade2045eb7875da3dbecf4bee20bbc9b1faecdfca62c65098fd5aae0de6198c2dcff55210939a0b37a6805186ba312de02310080b63ce28eb4f6a6a3a08d077e2e3ddea7b385aeeb6c653c99f2216c29f960a6993a0af6987f38ad7e8b99407bb7f5080302047c435bb50066306402300a7225a889d2af14c8cc0228775923141f0562230cab1512c8d48c708ccaf07cf5f30421cac4a3c41f1a381110e61d5802302a535ae5df90ec2f024a8f18ee171e7c82cc857357009b04f8472419d3eff2c17ab5425ecc803054e069ac95e920a18f0302047c435bb5006730650230670c50959965f7e2b85ad466157bfbcf4f05577a7fd8605407d6f115b4225bc13451ebd0c44d2f67f4aa129c634df634023100e4d050057de8a5892a27e04247302cfcd400d050bce5385e33537114e532b872c04e8fac9849e193704e2e385e71bd050302047c435bb50066306402306e71634ac714f46399ea5c74c85642867577becc87c9e2b1017c90d4535b09472a82cbb68039956f104c8118f5e8741a023026118432249570bc7233d62b2460b257d1f0b7d0d1df78c2da5f6d999e3df041ae272439a30647e1c2c48587c1ba95770302047c435bb50067306502304025a8fbf78c160583ad2a2903f504bb412e45e1be7a0abcdf0329003e6659cabc77aab6ccde9d8b0d929ae05f1698f7023100c88d1727113f17752c4e12de8022e9a394c6673e88cf7e0b54602e400a0204642649c98d9205a7a76bfe32dce1abb4b00302047c435bb50066306402302157feb1ccc8ca1e8f719074e9b4d7ed2ba96f6b7f953b12cf2f0f740e371342da40eff65f3eb7d9b528b2867229017302307d4e0daf4cebcd5af0a078682340b77258846503b3fd05e417974ab6385302c8eaa57bc02add0b449379836641c447a00302047c435bb500673065023100e3b9421ebefb85745558ae4efdb000defeaf05842aaabb07506289ab3304dd45bbd45b29d3b86611dd8878439c044fc7023062f2ae0f70040f11488294fb9977d09f384f476a14fbf9a970768582b95d0be26792a36f5239feb2984fae9189911d7f0302047c435bb500673065023012fcdfb4147c6ff8ec41efdfb5b0ff6a5e3d40be2e515d406f80aae537b206ae8b85cef88bbd63588156579a58e234b9023100d863e365198b0d84ed9d168c18954329833c6321750351f11673a143bd0ca2531f25d97c2ef9c20b627489bda0a5fe6e0302047c435bb500663064023021f2659ee956b97999127235632856f3c02a82b1897daf090689fa9ed24df6aa04618bde1caf2cde26f6a54a33852f30023038da056258d1f2716e5b0777c1c851d426083ab20e98548967560c140b3143adf6cd8c7c3035190dc47f04e6c73020e40302047c435bb50066306402301b26063112c4c485ececdf2fb37c3e53e291c03610c37c0e3a99f1d196d14a156720ad28c3c587b0322af889de8262b1023013d28f6f93dc13fe7f9b17e4f18806d2bcacc7009eb79231b0af62cb53e4261781f731771498950119d4c7be474b6b6f0302047c435bb5006730650231009807470f25bf6bb893477c133dc8dc2fbb548706e8c0a1f5baf5531ee512f34a2155dae8211eba611327097cf1eef8180230538deaf5a64b8cf7eeddc44d6e00b81a7d47f543fdaa58fd36911a8832f5b72ecd8f3825ae6ded2b6780e26ecbbcf4690302047c435bb50067306502305c37f549b833390c9fca5a724cc39a987da168dea44eaa53ebbb47de8b8061a753d64b6c7585eed282af4f9e0829563f023100cdca53c6eefe69bf86f0896e10780267bff0f4aa0ab8ec1ee8f4015640cdad3b2bc23cdf1096950e3cef70b0f10ed5cf0302047c435bb500673065023100ba834cb9756994c3904420efcaa3000efb2316a7def0a828943774f5ad8eb769001f5d05ddbca94e0d3dac78582d2c950230284f81b9736f1526c299a32cb47888e20d5f5ac1c6bef93fb278fca4400094c06a64a71c11735ff9d0a972e75e9c998e0302047c435bb500673065023100b0749999da619eb2932e3be28b29c76ce50059b7acb6b7c0ac32cd8438569d9f65e940c670146898793d132963ae27f402301510775cd3f9aa4d93ec2ea64af61c78ebe94a8ade758db2d4fc5fecd39a00219c789dee5b01be2476c355d9f83199430302047c435bb500673065023100c3c53521ae8b903a3274a1893fb1369d16c57eaec7b3a41e4b93218c02ef742bfbfe55cb66b3b1887a313bc861f32bcc023064f93ba9e88dda3d4f94310c6995f6f21fa97f6a6a98f082072ef0bf1dace7f5ee4946ae9558c3bbd2c9deee720e022c0302047c435bb500673065023017ebb3b0417dc4cee16453d5637fc5476ed0d65389d5e67c57e04bac2c166f7503125eac0ed1fcd1ccf9af747db870da0231009654184b05e9ec0ae84d692daef18dbaa9dec0f275ed7acb21378e680588dfcc09ae64edf16da7caccaf08bd92185fce0302047c435bb50066306402307b84166fb62e7c08460ed5aca17ea33b49387323ac85bdd447622f0d903465ea2ad260ee690e1a60cbf0588a43efd3da0230530d95cdcbbb8a52ab236be7b89dd39b97d174d2fde231f06c5d8ba4582e342f15f8153459e87c92b4948a350c6ce9e60302047c435bb500673065023100edabc8388f8368f6e085767e2c743c528543831ad8000c803d04864b1367f06a335ded97556ec95f62e801894e4d914702304db1500fa3e5803b087b3f4bb1b0b5e5fd36c7741f6babb125053a88c51dd3855b303789253beffb6511c904f6f48d260302047c435bb500673065023061d42c8ac98c1ad36cbd6197c5a52e099dd98b727e83957ac649295a2d6c751c91f67bd9eeb0c42de8fb281621c273b4023100967dc60ce21ef0302fc0e7c814aa86e75ca8c085e43207985ad432679be170dd4e01ef3b8f3511db3fd52d8d675ba7110302047c435bb50066306402303cf34cc11f2b65f1af1b67d4e614f33bfd9f23fc07da401aae52395062659d63afb06155a03d99aa3670aeb858a18371023047f7fc0da9355dcecf1159e0954d23c6f7035e0a8dbdd46e8e500d13e925e0975372e99161d51e5bf8cb9f2e042adcfb0302047c435bb50066306402303d6111d7ff24082775382a8e845476163a441325925054d5aefb39cafaacea3051e2f82d3a7753eb225ee6dc8375954502307cead6f65710ad03433e63430e2f8cc2536db191d7f934f55f41524c9836961b9fd09c074f69b131a90d330cdd89bab60302047c435bb500673065023100a345fd3c9f2bcadc7c0fba658ba173585ae3c99660517e8f1b75aa403d7899a6a24545b8879fd11d6b3aea7abcf3eee8023079b7ab2d51fa01c5dd1215fee422ac9e58c7c953e02fbcfa4383855a7460fd11b261fdf4d059629b1ddf88e3a25ae6400302047c435bb5006730650231008f269dd7222e52a461cbbd372ac7a9e741f520ab47d5ae097ddc6c3e9880ccb45a5b1723af705d493d21ac61255508410230652967bcc08fa715121bccf6189c7aec9545a9baba2a790657cfe3403368d41b027e379eb53d059352e0a7c27b621f4d0302047c435bb500673065023100d2cbc59127d28faa07e753c136b9f0f8315332a094db4e0aab358a01fa0b7c41ad2ec7f7f500813fd2d2f698ccae7a34023027d046057b4a1b9d3edaf2236516206e105b0b3fa1bbf0a40770d65e8f9cd78620060b79248f368bf764b24cf16918860302047c435bb500673065023053bec0b6bd8a645aba9fdbe4b484abc8576b0639fd6e48d38f8f124fc5ff138c95ce84266bf028c0ef9e1299a418c063023100f8209d1fa05c7e6f43272ff9f2d20078d5cc782e93a33765390d24eeece4c93f1ef1efec834cfa6e86b164a8819d705a0302047c435bb500673065023025befff5a46ca66d4f1f04a3e933b9cafa835c4e55fdd282b79e7f67bb2171653c36de2476c54e9d5f680aefb56cb2c60231009286e2bea4fa8dbe262dbd762bd853a12eca2bd16bbb0a24f180029c87101509860bfcaabc6903ac576d6423945ac0510302047c435bb50067306502300e680a3c47e4a37e3fc4dd408562243a85217825e0ad5126400a2886beaa868852d03c94a3275ee0ca0a53a5188b98700231009406748fc03815b1c568f25a046f79fd25d06aacd3e52430859ec81589b32d301068c34925d644895cb87ce49817c0070302047c435bb500673065023063cb9e4946985210b507c342514b8175028cf6649a4ed21baa61c9f22d8bcf7ad110dd61f8e3303addfe122f97a4bce9023100800ca2c2ee1f33800d0575389cee6aa693bd8d8b9c9eec9d51125e6ba54890e2b3440b92c7462e04303eb05f0318c3a90302047c435bb50066306402303e181c012f4127e4fb6575c3c7724a69f1f4cc8ef043f98cd9efedd348e93eed113fb2f9f0b794fe3d3b6ebfd28e87c402307915635ce21020b9f4be6307150316a6c222b18e10bf692da9d4585237d8ec39531e16507667626ebf91d8845fe7a0ee0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d84d7fef566f29d2e042e54216bd093df98fab46bb0a250587a133a06fb2eff44d60d41d197c9532a108d711ebbebf300231008b56ed8a6281589121762b11955f5b61c48b4d802676932104129049e3bc8ded51fcc1d8156d9147b8e82c33ffa9c4d10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230030de2dca816b6ca24ddefa66a5e257e6600501e656680c4c4d304e6bb566131869136f084733d55c240a99de3c53cc202310091f3339416f0f7697d3b9abd768dd063d6c0ddd0155eb81010d91662b755245bfa73a6a7ce7d7320155c8f3be40389ea0302047c435bb500683066023100c858aaba504b7eaaa36ca13f5b58aa200d609017c4431e2b391b7ae64c306901108ae13f9a6bc09794e5ffbfb47e8471023100aa677e0f04f5b341dea1cf4e1ae07ca5d79516297b2cc408cc7ab706294ad47032253204e94e26fdb79b6fdf4dc76b780302047c435bb500663064023054f5ad976527146f538bd9ffc8bd1057b1794c66648f9625ecbf384a098738df5fbf386546999995de82a3ca93d3f6cf023026a8d7899c137988b3214b7946cfddb9f10bea83f15858ab3531057079316a30501b883affbfc1ad68c32d1f044d3cdc0302047c435bb50066306402303600165324c2f0ef5b97372fbb5ca7d52f1f97e2a9c666c2b56399a5d7e1d83f1d933e8d07ab074c64bd50f12fe82a4702305a0df87a283f96ae36cc17d92cc27edafa554960542cb42e1110b93ba8f8428b2d9ea34ec8dc91c69c7d7dfb8e7c71460302047c435bb500673065023100a759efc881b3340cb60b7dd0d135347b01b2f678e45ad7f782675a5d1cd5beb32412303735871e30ac03816a170dce7502305a07892f5868b762a4ef1178113155ecbce97ddf31d1a9197a406aa0254fa7fc2a63ce382abee222ec708b642512d8e70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bf8ba4802f63301d38631a8d67c570ddd748f4a5dd459d156bae153c9c53de7c731699cd60d3122782ef61078959f0c9023100e0e5b658ca4f1ba186d34f474e26b5de7378ea6bdab48fee77e2866a24e7048397cefd7dece8944ba2c8c57578f6666f0302047c435bb50066306402307b2f12b5befe3ae8ddac3e485931a3f46a45b609b5b512ab92ffeb54538cece0c3c63cda2158220bf2824d497084896d02306dd202018a1781b24a5c3b31488eef965b07600b6a0c96c750bd4b10effa5ad95c021502babd79b83549194aa5c17e1b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023047f8a84d02144510bc56926086cd788f07b466d064766062b332c07d51adc505e1a7d3d557cd191ca8de24a1c0e9a1b8023100ca9a3c65c7c1d41c9e45dd4b922ff407d970b36c5af413c3e9b3e1cd6478ce416c953e324cf66294329b61b80dd3027d0302047c435bb500683066023100f301b82dd54f5fa604033d6eb7ebd48fa496647e257c1ba918dd496e375c1a3dfa78fe0db5d5734ccbf40f8761033b23023100fa6d17c012d197aede54794cf8c8f2dda5d1a6e89465c4c007facbbfd2dca04a6aea180af4b7b1b9f9ec2155565686d20302047c435bb500673065023100e9b32df8605206c5a7b64f7dedd72e38064cd3b370fc1039878960e36316062858ce90aa760de5b49dcd11e1f3782d5f02301c3d57b421e3bd585eeb542ce01e1e2c03962fb7b386a17da424d71ec60532149bd7500d54de3409a9b7c05e23848a0c0302047c435bb50067306502306b207cd421174a0116fbf2e2d8d64b44f07f7d43906aa7f41aa4333b23faff4417624cde6ffbb48ea59ab4780e4dfaa3023100c05d18e12757c62c9b70913a1e0c6ffd79fa7a9198253b54493dd6825f1464f4d54712e18bbb6aabe40946a3a69eb8e10302047c435bb500683066023100e807959815effe3fa97ae494889aa6a71486b8578e09b13c00c03ccc0cb48e4b111552cc10f45b564978215431723f66023100febf269b48e6e9dfc60655b1c029789b84baf53c8f72f96b63e7d1b02664208c90e248b55d0a48167156128fce67ed440302047c435bb500673065023059ec960647c33ff7810381338fca4e530b4ab4decb57840593ba4b8eed5453df4c152eed626e35eb17cc6b11734374950231008e9d9aa29218576a5bbd7b13dc5f2759a3be9d6afe85dcd75b11b1f465063f55d045d3a7329a10e0eb98f13331776ce40302047c435bb500673065023055e8e0cecd28ea506096f77a400ad74d99bcb7ed7b2bb542812fc10f1ce306a1bf5c4aab0ca65b6303540c948c939f04023100cfad33a547d9ecd7cea9d3322ca9193052cc9c17ae378bd5b862a120c1aab0fb38c8b89b6a24116d854a796fdff946ae0302047c435bb50067306502305b50391145bed7f2170c3228da4dd790c1acbcf6012fc0e51d7cc6d18bc48d9060cd28f76799d55b96b6bdc887ac7a98023100b49f95c6fbfc936887f82b949c26090836fe3ad3b02da504fc4fc7065e400acacea3b05a7ddabf2665fdb9fa58c4677c0302047c435bb50067306502310085100d30cb9ced2d0c969bcf0368c15d9c65aab7545159a27e4daa5df1d082f3d820e48907be882c4a0a94ab3d7135dd0230455335d934a3d7ed70c6abf0d5c2a3da702e492dc8a083be1c015f35298afa7b66cd9d3c552254cf060b268f7a42f94a0302047c435bb500673065023100ad3d76e7ef323678f813a7416726edb10eea132a568aba10eaa42d7e0c89499fd212b7a5a7452697a3ca4e40fb6869bb02302b210d05fa63878a1ec61bb024fce9186c255f7ac078536bc1d936c980741bcc2f9d55b8dd4292f62c53c4f2579042640302047c435bb50066306402301c361dae0633c5d0d2492c64c237505a6b4f6793fcc10edb96bb69b78556f9cd6407d126e7e7d7a22ebd54c6ec4bc04902303f5f418d65478cecb2039307c9f4b8369c4f30ce916d9ee14490422a329ce5c8625dcab16bda4e0d58dbb200c925274b0302047c435bb5006830660231009ccce76efd802b3f252c2af4a12ff8c44be6ed5efd07ff16aefe8281872dbc724c6c9c31c41a88351e5c3a32c1096284023100c27d282f3fcedb24b60fb0561f9aba2b95b032e8752decb96112b639fdb5a6201bf9bf8207e2e5eadef2bb99c905f2e30302047c435bb500673065023011a7660665c00afbf3a095bc574c08b0e93c3e38f043cd3b9bbf68d6a2af8c525d6907928b46cdc57941e4e4df55385a0231008f270a4102933c40cfd316a7f2a686182c0bd7e31b5cfb0abab7d13d2e579766149de2d4289b505ef1776070f2360d900302047c435bb50068306602310084c10f84672b692960418c1cd3673e83c8ef5f8ddd5a7cfa442e5b25044221e0c5de3edf3cb3d70a23a24cf62251ea560231008573e5c5f12d18b24b7cd312f8a2fc51f0fb980c8b944d2379dd68f1ca1950c3c1382457b8a539e8e15e2d8abbb3d0430302047c435bb500673065023100961023202b656707e19df4811364a7dc033e660f8988e46335517b059d6e2a5dd72f9fa352af69fa4727770c755b6c0802305da6a64347f967cbc3651f1ef2316f504431500b116845d3da48a4a22b289650dc2a0a0d6c494f38f3e11f6297e251fc0302047c435bb500663064023060a3ec0f7cb0e50da0b435532cfb750ffaf300600c620a7e37ce08a554e9b87b56275deb7cf041061017bd8557ba926d0230234488241dd3523376a50e69b2222d1640469bf4c9ea1b9a7b7980852dd6e452c2f768d1b25a755d1a3f2308db48443c0302047c435bb500673065023045d6a0cb2bda09595b57dd19b916679b89c841b6fa91c8764e22e193ac9e441b4e4b78329577e23d35c3054ae3c04049023100f1ae5cdc7b8cfe8d3fbfbf7678bea87fa177360810b6eb258f7a5b199ba154d630da46ad5d04287304948a98bf9c47130302047c435bb500673065023071b375b687fa095e1c732c9061b86ccf1efe2bacae720e9783184c59d075280c6e5a7cc0bcc3b2ce31041896a3a0ce30023100e1188416e3aa80245b127e4af7a5496b548822fc995c70b5cff79c485520cf4baf3456c34fd341d7b2661a4bc26a1a550302047c435bb500663064023046c9a48e2ef70f4c1176f7f3541c966c7073a8b63c4f2a17c80e21e1eff0b38e03d38fba85fa9819df6f0c52a73278ce02300832968086cee0155e09da1eae1f281508f280fcaa1b5cd8f2864a4f5f3e4f5bc5583c6c3823e420d942bd5102aa3b910302047c435bb50068306602310096837addead525305c26ae23b08e5da438ad7c2c6ce2514d1a66126da9398fc7ac9fabdd5941779298c4e2c6212d9af3023100cc34ef8ecbbb97e8b658bcdcccdb53140190b8f555f4f5c52d87a486ab980fda2fa01a03ddd6134ca755f7634669e5f20302047c435bb500683066023100dc3a21cf20184a4316a9a2dc5c5c3f5e8bfadf1012d7084ef22bbf4a307cc224ebd05e0d8fbe88eaadeedff0494d9956023100e03ada34229e389a0b946b53d0fd0aceec8a1ba8976cec138cf6c35e76db5958d2244c4f056602de501d02b16250cea90302047c435bb50067306502303c4a8220b28f1458b2126fcd3eab471585fe75505b9c353856b0fc8f2756e35bf5339afc85c4a310b2209896d85a4af0023100fbc438152af79132dad24fab3183a42f0d15da42dc76ae30744aa3c9a3b727799a700e66db3b6c663a67d5297021d26a0302047c435bb5006730650231009cc37268487228fc44faf1e70df300c0325af4ea6add8a9d6ce8aa1a24c566a0e1b1cea8fd11935b8366d3a44462f94502304bd0d761293db08c7405bff9bb928876a2eb710c7143c26970ecb5d066c96676b8b68450c4f04559d2506664eeb22fbc0302047c435bb500673065023100c23474f98c43da626734077031ccffe82175597aff77ef49d90af751cff2a0a17e4ed1528d623e1b3c0dcc5549177d5202307a90600b90b9eb0a81336a49049fa3deed73ff772049406ddea0e71e5b72a452bf2e0cdca72a0dc6689839eadb95fe9b0302047c435bb500673065023100eacc3ab33e7b5a15371fc02af3eb8bc6abf0a08103ee8a568ec4e897870737a70e2a39e6d67a4a224da93be43c7f7b980230105a939f9a5f510894cf1d000b947a86fdffc744f849f3ba36333844697c8c88c3a1a636aa159cc5f37b001e7cee546e0302047c435bb5006730650230465bbcb2c910086f8ed73f9c2ba4ce3d05e8f62d3b8cfacb3582d4d99aa1a2abab1edbee03e46dabc680855026d2475a023100d1ab85ab5f0297ae88a2201a7aa0a441ec0b76baa465b1a53a226dfb05c717ee3a34ecbf70bec3ed0b35a8c3294943e20302047c435bb500673065023100ee8391b393478132a12931fef8548c2c62cce1ef73b14feceb9acc0c03fc358cdbc30e220a9a45c03faf68b1cc42d53f02301a4182a293b8f67bf3c85ed25878fcc8084894cd217cac489195da991fb774ca40ec20d3ef6018355a4a8b715d26dc470302047c435bb5006730650231008f8c290ecb7c3ecfc46496845ed962d6381b1409a210671f61d3c6854770b687b783fe4990a7c576062436dec4ab1fe902307684e7c298b8d45bf66d31bd592b9c2828af9ab81680c8fe94dffbbc36bdb5de69f5c72c26bd54b6f0c97599ad046e4c0302047c435bb50067306502300ff0f024470067f13b696e53848b1526e3deb5b7d6d61c1c50d5142d3dd90b397cb17c08c478a4ad632a62f96ccf1748023100a27e99fe01cc69a4093a92992cc23d7dc070eafb05ced8adfe08a2f6be7c4a691bd6cafa27caba4aa7b4f8dd7cfa051a0302047c435bb500663064023062a65d8e61b60156abf19353b9e768fe37202abbb0478bdafa5eab86b9334febd955426f59fc0f3780e6d12c9a8b7da5023071ba827a17f2f952766b2d943218d78e9dccc85cc4d0316913c0fffa7dd405e72735601a1d434b4a4fcdd8537a4644b60302047c435bb50067306502310095cb2c5c336564fc68b30a921df25d1b37e3bad15ed899a0f511aa42f48b8b0f46499cb4235c630acb10e06ec27874b70230793c8e3dda16f295a87da5afb8f69d879d7f52eec9b740c8bffbc3d38b867726c5d4a6faf5628bc388a25a92734306a70302047c435bb50067306502300203940b942db91e759542515d5ab70e0123abce2f46df237db3211e2ad3f2b3baf9c2212eafe46a600364da85e7c3a4023100c41085ba78424c18072d5a550f9f55e45d1509530ded739a94ced9ede5e43f0c5c7a68cde506c9bb21a02bc67b2d30120302047c435bb500673065023047579c615886f23e293bb68af43b4ab03b3cf637dc9315bd1289a1110f21d50f4ee01e0d47851077bcd2cf7867a0702d023100c74340018eb8afc0eef2bc0d28e7516fb716d53aa0079161d9b9131166c1d26c426bbaa6c74c5f742599984485f1f9750302047c435bb500683066023100d54592160380d02604121e448be3f0cbcf5c8960e18fd2603ee33fde62a8f7a0b5483209f65aa92d8cb38c58083c9e2e023100cc8e05924f6dbaf4ed9247980762790e0a10b1e978f4dffc8d0e1754ff83f43fd2734af196af849317933ec501e5b9a50302047c435bb50066306402304d157997e4cdd06c476b2158eddd61ed62111fb320fab94910dd46aae9fc4dc42a5ee81438e02eafa7bee3d36276fded0230122eec05f42b655cd661a9688f822dff71f07095f87ba00b33b62178f27255d1e1f79bee98ddc77de46bace5fa034ec20302047c435bb50067306502302ee8aa37d02c99400bfa2f70100b6091780e3a0460e00a3546ebc2b895032764add4c827b025fca608b461315808f85a023100cf18f871113eb5fb0f630c4e0713a687d7ec43680a0b292af156d487f31cdf497affa3f86e8d4455aa7b0e1c3a28d8560302047c435bb500673065023073e1ae47dfabdc6a79d9b98c0327f76d732b1a7a496ae40574d435679db1ecd3eeca89ae74b3d2e7509b888a5990504e023100a2f21cb4767c56b51c1a28c46c06774b9586fd63d492a2f42551343ac8d1dad98dae0bf87ae0d8b6ae4a1b1b070d97bd0302047c435bb50067306502307abe6126a7129a9503c9f5bb20537214a3735ceda9830740a64d241a7d3bb060388a1cea5b1c7d7d5926c96daf9223da023100afc598df74a0ee3b36639477b285959f85174aebac87549c8a01f40c3df4f8387f478466aa536d2dd5d6b47db88407830302047c435bb500683066023100d33aafad9cbc4c3873bd42d828591cd6496cdc503f88ee0c382573597ea5276a9228b230daf58178738bafb27cac8486023100d845fffe53ebf4f715a7a70a8bbb3d79049794701723f573430128c63614c8e941c330c1e4393ea2180bacc3fe3ec4430302047c435bb50066306402307969c396627d8805ba5343d708d0c71244a8c44a608ed5f7ac566f4a5dc4ee33805f0bdd35071ad0c16ad4962cf3b88302301b58a2f95daacb91e7d2cdad6d116c7f1e423aa6f9bbb9afacba8632175a4159a9408752303dff722b83e0e193f91ca80302047c435bb50067306502310096218ceb4bc396ca54bd74a308bdcd575bc3c01df2a59d70cf7a3b0272141a788596fd444e3a0b8df3bd84eb1b91e7d902302ffd4d007b3903f982a32f26d118aa49dbf27b5acf98f22bafab37d24bcaae918d28705f6f3bda31e432c0d2200c6c870302047c435bb500683066023100c19bfb6199f16ca42abb883d2d941e54e1e1d42a972f334d141fcd35d495ea6fde14f87228346ce47fa00f8fa3278835023100f72a72051e08496094fd07634c1fe4a001c74702c13d6130ee65f8550973c877b157dd5acb861a29c5eb737e247635f30302047c435bb50067306502306fa0f202cf56f86b83e2f06584904366400d96925951a476777a8bb8e7f3b893b8a686fed9e3c4e0236972743169d2c502310091328e5cc7c7fb1c543c38c709863c4b586204e2cc640184b6a5478683e579a258c19c7583f24734655b4f6e958fba9d0302047c435bb500683066023100acd0c36df76e1220350144de2da21f11b89e83b88c2199849bf83ec4590498e1ee1e2a643e58d93cd338b7150856bdff023100c658c2aea3d14405f26d0610be03e55fc5e8ad07fd9623fac3575f4fa5a0c4cac0ee4c1a17983a68ac611e33a057ace70302047c435bb500673065023100b3740066074fc99731fa691a36646bfed06883204ae5dfe43f7ed92838f2a40d216339733d30ab891d9c145ff237427a023031f6dd253f37ffc3052ff51fb5bb53f5ce5a922c7aea93f15c730910313cc2f155966f5b83e834a964de80b8dad270d60302047c435bb50066306402305f5130294def6d7a60a195bdf024cbd767cdb3436d540953871435fc582a6c84c46419f78265d3f2fd11301e6c93ab3802305b122b8ba3becf3a4c9233e8a3492acd2665100c06d2f8c75d8783d719deb8554e19cb77e3ae9a08c6f714758a9c30b00302047c435bb5006630640230654a136b6819bf5d7d040a90a9a27b37d6689066ffb9bdbad780f495f40a8714abbd11630644b4f3d1adca2251860d8f0230222181930f7a62a7c7e920cd03131fb5130c32e5fbd2fecc12e6e3309f5a459253482e9ce31ec991f9cb046620a8c5630302047c435bb500683066023100df6f658f18e5a794eb7b3f3a0b6b898f5b393a8e9c52b30e789d6e5b1b1e222a251f7a60cbcbc78f46744a660305186d023100b3b39336de91a64ace142f63884a451193524c195c3d48c8e040c8ce0500a94de16b4a2743822f7f00ee9648b13d99de0302047c435bb5006730650231009b38f5a2796b0a016d608a101eff870f6cf6cd973f82f865c9e4f8773aa013048989241b78a49b94c10b6724c51e885e023037cbcb4e7adcf8af5541d6f96e425442aaac146b53c8a901817001c5af226a41b90993de56862b5aba5f9d480519b7ca0302047c435bb500673065023100d6250b4510cd699972fa3070193ba03c8f9829c23fb590a510e1186fcdecf086fdded6e89323b054d5bb85a8fff209f7023004e6f4c5ffdffb3768075dd2312331466a5c51f3b7d766170ce77602274f26ca1024df22de426e039a438abd600b4ba40302047c435bb50067306502303f35a7b93f741d4759b0b3667ca646d369d0e65fe5f099d69dbabe18d7add771230ade78491b94b9044a1b95aaa0a860023100bc3ea1f16c9b61cd403301c5a85003f4ef3ea38e687328707c6074d933bb215bd0678756a49efd3e185c81685113bf710302047c435bb50066306402304ce53af648eee15cbd58314238ffe3ce541629796fc0c0e1fc75ab5121ab4e24e9b8709b64e627e0db3f87f4bea0cf6102301c4e22c42bca6e5d30e84a097a1e40b4980bd0ebe8f12fe93cbc5a62c7ff3dca848403a6dcceb041ea6e3664ae8581160302047c435bb50066306402306c5ad7f3a177357edad52d75e5ba052c7f792e6a6027fe2447a507e5f32238f044b5340ec5852c1572d3d3de5595c014023018653d607f3fbdac7a2b621a037eb6483b6f8a4e6d3dffe32f670ce5c109395c94fb6783a0d154dde7f5200fad5f49820302047c435bb500673065023100b396ce9597bedeb4d1203b68777044d868b11cdea49e06082c5c989072cc7be295e8d8258de899243be8fa5053bde55302303faa1403ed682c56f2d7c01518621a82f4c5212468e475fbcaff0413ead08d1c614d085d72e444fe89549d3a408f20a80302047c435bb5006630640230796ac2215ae66f985240faacae65837738a277324bb0886de9656175de1afee11478df17197504dd7d5b9a0b256ef0d602301dc61594f7a078b3180b230cb71a74946715085f4183cc6dc4c87dd87138afaa24702c5c1b403069418deb01a3ea5aa70302047c435bb500683066023100c0b1116018dead226357f4664774f669049028b4668af18129888354afcce707245f5e54f1c23801ec02a01435ba0275023100b5de6a3df713afec2333d0f455c5517418c367f307e5e6cf45e1200acb85035228fbeba6227dbabf842b3f6ce6a1650a0302047c435bb500673065023051437264d4b7c0513b008ef6c5a51daa2d755adc5052b15432d5c82c9a7d2f52b2d41bee571949674d9eeacdc661902f023100ee935bd27142d53319f7cfd8d37d53d1848864793bebf7df72629ef41ae8139c35dee9d420b3112a5c4a29671bb9de1b0302047c435bb500673065023035339d22151bad2d8c71dc0445a5860dc73b39df424298b68172ad460b22d06681beb4ab8d39aedc24bccfc8b64efc3602310094e3b6cdebc28dcf9a9f3cab57ae5c7e730d9076bc87c9c1d0ebf4a9bfb03a168856feb48dd96706a993b1a3403ca1c40302047c435bb500673065023100db031168021e1e5ab65e68cb695bfc8a1db8eb0b716f781930ef464b9ecb5fc6b10b4146bb4db4ee918bfe2b7867b0690230174547e71650c8648480f8f8b29affc58d8efde288ccaa7b31449ab33fea6dc3d5ce0deea5c73461560324dda72ff8f10302047c435bb50067306502302392ab80dd250facb528ad59d26b81ab0cfd43312873e25a5c704222291f67f5517ff5a941d9a5b8f86f840a845bd093023100a042cd5572690edf76ea074f4fd6198b5f19b2821f60fcb883fb93ef0f6c23bf5423f0f5ba21522f03d3ca2d2ca1f4350302047c435bb5006730650231009e07f1768d9c9a1ba61468fc6f039acafde42e714241b6dd609e7bb66c02311e6e5e4b49bfacca4011335f66387551820230624434d41b9f79e19333893367327421dd9cba5a2b8e483328a2eb2ef33096728dd0db0907328589296bd01882626f9c0302047c435bb500673065023100c176204ab5ae92abda533d418e448503700c51f16614885c9a4c8e485a503cf7494e4ec6f118eefd79076f1067e79a8d0230494cd39089fdff01dbb07354d0e1a2e2cb14af89067d2bd318b06815afeed3d72f02d711f0722b453c389184b2e827a40302047c435bb500663064023066441ab1561cf7545fa38df8e9423dffd73cf3964c2320009445391696b665065d916ad2e329c871f345b7e6cca6abb80230194a65922876b2c4bf40316bb338a72e104f4fe37196664548e6d8763e4fe60b8e9b9fe6c5552d062366c95cd45ec73b0302047c435bb50066306402300c6154d2a75f112b1bc51c409006744348c459a42f4cfd36722452edad8a48119b131bac7fcdf0e161650e75e29a256c023013590f35605b6aeee922120d79918a7aa2b565a7b35f7ff32306bd0b6be242ff761550ee24d49fb619c801c326cdfd590302047c435bb500663064023070c02f611563cd408ab56c842379bf787aff304b36cb2625387b782b96cc832ff64d9e93ec09d6c4dc6ee2e8f970151502304b0ea6ae0209b648ca0698bf27de63c642b413eb185291d5cfdab77996d5339ef7924152f5805e66dc1818e1cea9b4b80302047c435bb500673065023007dff5e4ab0639b4cb1316135abe0530b0ba499f65f3e9869e488e89ef6a57ce4a093bb3c1c447a1142d0380f199c50a023100f01025f67e916549985fad4b48655a6102aa7b7001ee37fb608bf289ee9f5c5d7bc74a255ce76f41151e279a2fdd56ae0302047c435bb500673065023100847b860aaa4cd0ffaee2456b897a567b61c24b6b96d7968db545133bcf10f2f35df8642bb84b89243a1a42cb2219548c0230551dda2f395e7a6b5f040bca2a3e11ec755d7628207fc75d5e835ce3d3104bd0ddf0de0da260a3e9ea7df64f0f7ca2100302047c435bb500663064023045d33634b8b74c3414c7fa346cb47de5b7c0184aec7ffb648d24345ad5b94b02d0e63737d0a38b356663cf2e0cd6dea9023070a48630466b21e6b085c0e263d3a7895dcf42512457140041fd8a90530cbc26ee3655b841917045bc4ef66523f6bd840302047c435bb50066306402303b5369fb61d1a67f4c9b738494e447cf7ddea9e36f74958fe1e6f976fce631ac918ada326426f621b46233771befbb74023018ec23e8750f879eeddb335fc40141bd8cc1a8e704b619039fc28c4d4fa7f61fb7056b427f138df66a601a3e625a338f0302047c435bb50067306502300f1b3a10e3b0933dee8603c2f158d262f7515b92b9775d22c2f58e143ef191b4a52a82e99f6bc19b16dd00ef067383ed023100c53e02950d0f8327b98f1279aa2e24520e3dc6cc75e0eda41acde46e5744bdbe84664fb8a0a1d132d8c2259fdb16b7410302047c435bb500673065023100c537b0cc8448330fa5b0ba4d95aa08d986040c282ecc56d3dc034167f6b63d9998ecca33219290afb7e1486b9018c9950230117b13e1289a04992fb15e28a33a5b6fa3de5a8a71ff3d9836ed8b540e0ab71c2fd8b175c0a9ec56547afc0798335e0a0302047c435bb500683066023100df4b4e3ab346f0c7b4ace887df6ebea1782763df2f1141c302384a35fa7ddcb0c374d0c4df93e0c2320de6a61d17ee6002310094462c051ecba8fa46f80a8b3cceddd12611cdac083ddf1d72d5bd4d10dd70d6e396406cfe3300eb61873dfc340411bb0302047c435bb500663064023015809de244210942b03ab4b5b360469b2a035a2d351754d5bb29df65f40cdbb192443647603a26eb6c755b5db484969202307d3e8c30a22efb758f608cd82dae8176ff6970a95129816480fa8569341e2781512df13eafa07fcb166e9fe6d99bd0f80302047c435bb50066306402302b50f6f539ae2dbc5c78147dd65e6efcf28f878607b538aa6ce05560d7eb65bf995cef608621181b555847e87ad5f0ce02302254d96b416775102ae034bfbf330ffe3f91bab39acc0b4059b1ef3e6f5ad63f978cfe7932b72389b55ecdb840a96e330302047c435bb500683066023100c82ba52d3d9e32752b4fcc14bb9ad3a2c4a5bae084ab47b5080e6a57b6557ab4e928406d00da1e09450e6766e88730a7023100ad679a98aeaaf13396f02aad5a62523040445f94946359f77cb28cff0ceb1aaba201a67ea3f77b81c1dc98cdd4e9104e0302047c435bb50066306402302c6014679913ce03a8a98467d788c2379acf9cb5a521a4067842540c3859802053c1e1eeb5c668bc9207ab8dc4f338cb02301912383faa6a5ce339be7183c894f589a34b81cac1e3886bbad754ae28e9fb9c2301b09369a3940f2082e071cf24dd080302047c435bb500673065023046014376eb3fd3ee224f9349935e4b225991e3f9344f85d2480b5325ac19f36deacf7023b7de66024fe1b8171cf14ef8023100e66354c6bf6cbdf6143187f38320865132ccf0adf629209ce7ef28657bb6d2aeee0c5cf7f3f73cd9cdf3e55966a46ccb0302047c435bb5006730650231009473294c0f07c6426aeb3ee8a26da9b5c7b798cbfa273c6df5f6b8fae46e53b7d9872c5f08870083d62d3ef868161b7b023046864d17add7c0908f86b8a44aa62d9293fcfc9d3d3f67e80c61e4cdc656bca6982069cd6a63053cc8ca477ba71396690302047c435bb500673065023061c89849c2c5d643bc24b9b606f762d448f6bd3db83573b55a379701cdf00eac63c2119e382a6d71fa265d55abb78562023100b8fa094a444f00ebc6b57f251935c5667ce4d8211f7f6f5d56dc58e6220245d3273fa3f16b76b0a5f0d6aca49acd72950302047c435bb500673065023100c1c0d0c66681fe0ae4e96bcc5a1fc55ea38ad644d96a63484d2a29fe7ebe254443bd22d74bfef9c8dfbe1985e8824899023023f0653780b9002d221c4dec1e80908ba860344795621e61bce558c34d77b37d2abdcb224b2ec468db4c79be6d676e600302047c435bb50067306502303343735b624bcd86c1407aacfa2ae1ba8038023fadfbb4b027e7b09eb217f8f820888aa114fba6d489c97461283eeefa023100d3751eb93ec76be9a0f2ced434813c876905bebf2b023f8d2aa81b6ff795a31e1e347ddea12c6a3c27e4d49236bba6940302047c435bb50066306402307e6990fb323d255c8e9af5bcb0362e3381fca2097d31e7ebd20ba4d6edf206e25cc5f0c702fc0814ded262936fa0e1490230296dc6090694a9f9e62d80278fa9198d6748368e1547996bafc69e66565e6c508193fbf2230e002e999a73f2afe223840302047c435bb500673065023100c0df96052d2143b0051b853ac5feefd94ae078ef152ffbb7099c77ab6a79038cbdb2f6447f72fdb946c1caba5764183a02300140f2fdbcf53743d73aa750d350efa2f496e7e71eb4f0786e623e6718612f83209302fc4b3806a96cfc1edec429c83d0302047c435bb50066306402305f28d5d21184bd12492918ae2f6c156bdfe6807da1b1894daade6c10fae601798ff5592bcdd46cc7b2a7906de3418234023040613f7c2ba0c5e1791c167862c3d2f61b34493b1a45ff87eb3b91533dcd867a7fb46b8547e486308b65a4436a98cbe60302047c435bb500673065023100f5a14e9e5d64686bb8bf8b79c627bfbc0563d9ce62e8b5240d2fccfd66faad91ee40dba23247699bd5330d499178dfa10230279f4ea7299613cf4c81e68c97240e88e2b93bbde74b3439ce70ab5ec0332d00219b41281455379ded499b5e39bede3d0302047c435bb50066306402304ca652d247849a6a948cc5a5bd99d5a6b5f119a700205f264bacd5b558e0c2c0ca5ee4f9c75d550a420d4f54c2f22cef0230449c00a9a7ea71c704f2d173aab5d361d0a1bb7b32367c54f179af958b0afe3423059888db366c6c8282dd47cc0a756f0302047c435bb500673065023100b4a54b954ed3f58703e79ef8a0eb7d503f1b88a6cea6a8df2f5bfd2e8ca71fcac5a131fbc429f1cb35bb1863806138a602304d7f9f0c5c1c5b6b68cef7eccabc820a92af1d166d9e38b0dcd471869db807020c8e1cd9f5f7a8e2f94f1a01d5bc7d9b0302047c435bb50068306602310097ad27fa2688f7880eb252045034318187756cf25872bfaf537adf9c8d205808aaebcc26ac42f7424835a06cf15f000502310093b54a5cdd31a82cba203a54632565e3a6f8ba8212e25f4e39491771331f4d98f2a9bb28efd634a8b0512f1c149522430302047c435bb500673065023009540a8abb0043c88b994e357926de33f51cac687b0daf53b998ff27f9164dcf43cb0fc7c3a2f7bf57281558c5d2d63c023100cfc2a6547961df5f543c7410eb2d2142c939c6e7bd20476bca7ae2fe5b9cdc7b33ec3543e53a346b45243566e4f8db5c0302047c435bb500673065023100a576468e92a9a657b9bbc16254dcdefc88d0fb3b369324045a9131d065279545c814e2b95f9408afd1f6559ba44518720230157cfbd622dc9da7de5b1d9f136fe3f8de65d83a0346efd454f62d6aa530e3499f9bf4a4843f6c594ccd319252a3054e0302047c435bb500663064022f2800bf6af7770331402d7d9bc681ed71bd8c212aa02fa032719544faef2dc1649a65017d10d448f075e50e6434c21c023100dd129c2f878222475259e106161be536b043737b81761c39429f91f5e76482b344a37bece1f40c1b299ff7bd54757bd80302047c435bb500673065023100a60ebf4b8c08e9ab9205d7c0f2bd1c0444d526fa0338f2da53e09add31bdfb1ad2ec16802c06713b1ae7a6cd51c33ddc023049e55266beffe7362cbe7d1f2fa92a61c6d06cfed91608f51486099cc45f5b8040c337bc81df5b56bae1bd9866c9edf30302047c435bb500683066023100d1e92a64604c142f5d030f8fbfc01879328e5778475ea9723bfc1a61096a96fde182c082b8693d5713bc3c2c1ba329c7023100bce69ca5f95462432d9fcd50133ea1e532cfab584ddb41bc8041d4b597f5fc9e123c66eb5c1a73e58d4afc5b35f006910302047c435bb500663064023002f28e8602305775238e1c2f0825d6b128d704076d64ed54631d8816d094b190b3972e14bd34e0170271a31f92a65a6402306223d16caa1af0f1576fbfe5cc6eda89892643ee15788453306f7b80146d6edabdd843a9a38473a5774871db6fcfc6750302047c435bb50066306402300567e779b737b390fd3ce42f09dbcbbfaa24af1b80bbea410d997b467918f273fc67bdd0075334924d76025e96fa8a4502304b8e7f258cefcecdffc41dad4e2bbe80b8b001f68772e674b3f2d577d1c09bfb5d0ba304e2a28911626fc0c6c17b19a00302047c435bb5006830660231009e783860a642dafbb0c74425ffebf05b777b3e9786079ae39a8261b1f637487d1442f0e1bc6654bf5413f6bd592bf560023100b29536dbe9b54085b6993061fb54b0fc307c366857955bb4f6a03f6546fba37b71a4c943723fdfed851d3eb621888f9d0302047c435bb50066306402303c7d7c4a807ed19283cb7b85312e122a859c2fe026ec65b3e34f5741e374de53a9769c9e7011c7511d44d6521ba0139c023015d75cd21051e604d5db22457a821e80bc5d627290aa3c57bee7b041e4571910d58d8cdd91bfcdb93e80b5f8703d5fec0302047c435bb500673065023100d679beb363447ab712cc54e595bd2197214ad13e5c0ad3930ab4a95d21899b07c1a3342ec1f9bb5e75e7b27c17bfa8c802307c9a7b050283c9c76e0a9e0cf746d713910d2987bbc0d46bb1e3758b09e0cebd543665003d2ad63b699437de2caa13df0302047c435bb500683066023100afc88809226c11e18a3475c6bb7fee932615412c3519d3712028dc166cb8aebd63c04ab65c54083eff44151934ccb977023100c74bf5d5dae039ada62b4af8e03ce2d66b33df4f527afe8917f5c3488c92a93143de23965e130a6c533e0e1476f3dfe00302047c435bb5006830660231008273d4504b66184b571d494788556ef5e2bb0847b0d8d82c07f65d6872d8be8fe5f53ac40cc76f29be2f68bd8fea1fff023100e668a5652b84c4a5891f79356e742a0fd4c8b94ac7ab4b3583cf67d4a268be962a2afef24bf518083fa5b6ab660ef15e0302047c435bb500673065023059c554fd5807e5aaf5cbbc2907e757072a256dd9aef87b023deca4be923a6bccaa38f5116cb2e2f426cb907296a08e09023100a07941bc9b778ef136d207594f442ea47b5e2cf8e053924e8cb94462281026c0e3395028112524bc84a1463129c4752d0302047c435bb5006730650231008fd5c6e7cfb00bbca473ed98197e18cd4e2743821efd9ff853bf452e31bf132ebbe57542ff141b4470a742fbc69d01fc023008458f8069d9bf3a7fb6e20fcbe1a584ab9dddfa7f3a87faf8a63b183dbf92c9a7af2bca9df57c50c8be17dd79a4495c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009943b27fdf5e34e243f04be90502f089cf18da10b28c5bee27b07714a0e4b4912303548756e6ee070026bc02fa1f338e023100b7e9159cfb12e3fddd690a6b1412ffcbd614067a54cf072a89e69fe6a59e7c62830e41f4e82594b168ce47f99c7a4eee0302047c435bb500673065023053c4c7eecf255665a4a569bc3e9e45dc56eb04971283dbda2c741f35ff58fe0a5f8aaf0d993c180a5488b1730ad143b9023100ebf3c84a97a2b1f7e3527e39c6c7474bc20d8b8ddabd10e2c7ae8142c0c14217cfa46f38cba8f68ef82b24f99c31606e0302047c435bb50067306502300fe3f21c6eb86e9e7f8e3e2c3cfa93e5405fad3bafcc6cf72e1f64c431581de8c779ee2e3f3f79bf4dc79107f956dbca023100e4a41e1fcdbf18daeaea7f4f0e872ec783891b60d52fe18975b4eabfe3a879fccbde9ebda0d7b58f8e294bd252d578e60302047c435bb500683066023100b73d050c527888da356fb2aa4861dc3afcd61f2ab3bc8e0d3a017eca33da42f2899f9961f273e4f0b49d6b73db3a090a023100d84c4210f45b9dbb6e59cc6e5e8d3256d9c4edb64617c570a69f626324cfb752b1324c9ea786a7e4f7215f680579bd750302047c435bb5006730650230458e0f6b5d79699170aa37da3ac95cc441c45442f6293c9d0ba26cce48ff6033154c0e147320f8ac5063ad1eaf1175c5023100bb8be3434d2ace06f35bc00f7b44f1bc957b24d605fe3e8c089f820c54b7b5b8cc34c32ec0b61f61f2faa4f517afd8ee0302047c435bb50067306502310086cd89cf98d721dcd325b18e7946c1fa3d5c81418f8041a8cb0a14fc76bfcae94490f68ba7bce56c09583682d52836cc023019e5047e0c2703277887ff51495ddd419da69f0f47636b8ca70636e32f4792a3bbdbe62698a5a25507a8fcdb250b817e0302047c435bb50067306502300b7152bb737883ccdc2c21e71005dbfe8157e4ba1ca8a40a539bbed8747dfd8a7b4d4a92e20f1913d39d702067059f5e023100e3877271721f15b6b7c40a6f01379c0db87c3a2c18fb342893b5ab36b5243cc2a2e4b3b5376f9d7b1576775e973270550302047c435bb500683066023100ec8821793564be7d5d4f1479d1b55a51f65077c5367b176a39356b959e13ff1fd6a6acca7800e39adc10b70d536b4b22023100ee67c48f0050b94eae2a39f62134b9794ec854dfcf341aed8960b7b32cbe979feae099542d28070453907c2ae2d602030302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230743a52350b2309e43648fb006f4b8c0e5becac8319fef0967597b81c394e971591b4f9ed49ab5288b23213f0d166185e02302481ea4b37aaf9292adadcf8a0547d1e1fc89e8273eb966c520691b1b20e30a796f983a16de223065a2db8fe5c4a40380302047c435bb500673065023057be836e749b944f95b10e133b96e0a5a816418a7298c53167bbe0a21b495dd5c2b164269e8bda1ff84a8215a2a10490023100ba38002e2f1940e6e59f80a7e3a11aaf2ff215d2052880e641f17b8e058658d69549441b5503956eed22f7100cf6fff60302047c435bb5006730650231008347e703a1392c932116347f495aa7edb28e7e6f7fa5316f408fa81bca772f0718940e27a654c3c09aab8db664d9922002303814ff6859683f57e4206007eb13a7c7ec785c54bcf55ad3ab556e3e30401746d1c782538db1f09f6086a66f8c1c93a30302047c435bb50067306502306e132337446df3da2feafece9595d88897830e6c7b939241235c7b8c70ba7eba24d04d9937ee329db129920dc02100c1023100a81ddb1c8b6d664a043bea2227d565c1e19804f1ec6810a18d3f0c8b6c719b100384c6f0dccc9c01ff19e3fc38b2d5d80302047c435bb50067306502304e82cf84700cae916979c132969b748956290ac4f03ca9c9d7822ee33ca77ab1d96508b62c80cbc494e6cb63dec533a0023100d03a5488f36920c71187ee7f0b1e1ab1dea9f2c8d7c92da3e8fe0f15fb26171dadf607d1c6edd41e535ec095ebef07a10302047c435bb5006630640230211c9ae7b16a965cd475472e9833b93958de99082bb886bfade22b0725b612239e8b368fd7777c6b2a730f6b7854707b023060d22e56f1cd972901cad35f385719da51143ff1be712d9e4326ee66d098eee1bb9d683ff063f1ca8881141b700ea1510302047c435bb500673065023051972225ff14b354961b1b0a40a53cf882c6174a854f81443b807f038791b15b9e444f12a017a4f74442909767915666023100a86e94fbb6c6bf4a385c3b10ecd46163a814ed5a1ea145946b66526847116bae581d8e551880142c7b4077b6d6710a0a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306ab5181350860303f330465ac557f525eac34e2adc6a05eff9819e08b323c6e2b91a0f9eb3a0e230519ea22855dacbc102303c7c279d924abf4679323bad522ee82b81e6130818c20a8bf50226ff1678dc8a5e7ee58af4740342f90ce2c2f8087b810302047c435bb500673065023100bf2f0116c7abadc81833dd77bb33f06215fbac7975407ae33b3704ed36308a0079d70f0c20b22525da2332e05c5f2c9602306b0fa9770c8472d94016250a2c94750dceb575a43b6b0a53ba3e1cb7a77066502621f373ca83ab1d83fc716a837cf90b0302047c435bb500673065023100c135900ac7b48e199522eeae3e6dfae9b21f999f338947aaf2e315ffd722cf5d4a60fdd152bf84c00aed230a9b56fb2f023027bcfbbe2b64ac1f4d2c34c59eeab36cefeb1c0eba62231400abfd3e105557f69e4075b308788c0ad4d9678439a50b3f0302047c435bb50067306502306496b9dbe7230994e3aca3affd97d7ffa145a85fd4e04b4e580a01881aacbd5a4a86fdcacc2d5a879171fb1d7fd8e463023100f5b26fa557a8dcff096173e5a23aa7cfdd6b25299c94786a7cc8d02e398f86de51c48e40ea74caa564376f17256e35710302047c435bb5006730650230549df5cbee4b7780c830c36310608af81d5b245bb020a322a25be93bd2b3ca1733b01f0b10de938e6ffc4c60e08a6701023100e8741e055a8d9b546cd5d514dcd7e2b0be9470644458a24fda3a2aacf95237da9451c716c1842dcb260f70967816bf0a0302047c435bb500663064023034a766002c61d2697f1c83f7a6cd1fdf07d55f623c146ceaabdf94fa6c5a70175d4af55111a23771643eb13c336b06aa023003de76d6f6a2762bb20997997cabac7220a4414e5a59d798c5f7c08c8f48974cd0b94e7d1ff9a49644b2dafdc0b6e7040302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023024a8f674563b75fb4cd7d85e22876dda79c7c3dfe2135f974ac069b43838dd0a10a1a129c5c8cfca45da60fe31332962023015d640479abb85c7adfec432b7239a384f20c0feb7cf72a8a26de0d2cb1094b4d8d9bfe9333edf372b028c9642d5f7f40302047c435bb500683066023100d31eb1c069387684048b59c78fe101e2e514c9170fbf85a83f82081a359516695a9e45aca9a9fddd97b00d56ed7868f0023100f1158d6fa61a3e9d12c62ca8a2ffdb5d30d75e70aa1a6868b7d116063e84a688b1dcc20fc99795013e33b2edd1bf9d9a0302047c435bb5006730650231009f546409265ea11045625ef1483f21734cfa5a48e89275a0501c805bb5c1d1342492c390baeba75ae414c95ee9b2edaa023045a6cd425b01d547d6150bb520e1ac87d5476c13af221ab1b6cab3104fb0a22d4023194905fc7ae0731ff60e2f0cd5d50302047c435bb500683066023100f6b8d04d1bcf7879fd603c07cd58f4f611b51d0879cbeb08cc033eaea924fb82a972a38ae5e97e9026613ebe6f12710d023100c46ec2dca0e075d0db73782984c7771470cf2610a4f0bee3b12aea49bd917087d4564822b0a7244621e4e0d100ebb0610302047c435bb500663064023025d18b3156cf37c627bc5843a1d9e709a558fee9ceb7575bb51e8dac4b17f1422a6ae9c38f5af545d29cd681645a9fd002307c121e363ff52bbd3e8c5aaf7be559ade7345cea67a07c5d06afcc74f12cbe178988f3f72dce431ab9c4c54d28d9b1fb0302047c435bb500683066023100ccd35187e6c0d125b29114f910ab6e9f71d01689f1473766d56c7858b3a581826dd4d0f73acf981372723c284f8e5419023100df380f5fdf82792b64e15427ac9a41fd3f306b641891af8aefe978809c10119fc988212e9415a09371e0c3d78f8b8d030302047c435bb500663064023032c691c04f5048068ff266ed8a62809cc7ab4478537f92acb3820b7fa43c99a1eeb98924818f289837553be711e40cd3023003b8e2101bba8976b1ff890c55f8af870ffe90aaee03e305b74bc293ec0fc3db3ac9be7834b3c442a605d15a517655c60302047c435bb500683066023100d3daa73dd62d3019154f2a0f12fbb4f7c7ab06f5924b6f5086fde637cd46c8251a05fb1842d4916f60af8e89aef6b7d4023100a55e5fbca09c841ffba0c1625b8c4a1288aab97cf5df8c8527b8c4af34a2280e5b2ca3a61084b501234de0f2ae408c0c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230143adb09704436fbdd261482263789945dbc87c947bddb8ac9d7d674a865ef861204a688e083296f55a19de7554d68630230129879e3c5678faeb1234eb420f5c3426a25f11e4ae1e64e698bd98c3127aed8ee419362d5a4c9f71b188e9157b822230302047c435bb500683066023100f141d69057e696ebb987c32c38b4fc38a19e6a88b9fbd4efb8d1b962b2bd4535db9b52b29f7e300d96b5425b8edee7b1023100e035978879dab21ae229adcaad4c61d5640f9812773f988870e5c865ab2e6a7ccbe6adaf173a55baf5394eabe6b654430302047c435bb50066306402300db6e59cae485297f0472facb3ca3717eddd008df5d42a3935114b5d7b4e2bee245062c5b6f7c0af98c04b1fd8cebdf502300a04f2c831b5d9a24b17790443476ab75c15dd716395bf1b4264cb5a80d8b9c45f7cce5602779e6c40c0e0f7abb0f9120302047c435bb500673065023100ef70fa193377b22d7d03438cf7fcb7e7512343a1f8e6b85462b6bef500d12428c1d1ca9f57efee9b9dbf60c3c17a383802306a084d4cd7383eb6c9437858ae71718b3cc1c08d326d986db0557793f58772a94ccc1ee7457d5617c14b90ed967c89b20302047c435bb500683066023100f732e4dde90e250559f47e953ff8a006daa487e280534fa934c0943c557937080d7b4d502c1844af914e8d48193e7628023100d5ece4fa3227966e67cac8c641376c0541f1b83ebd7d19d30c567e37e009e930cb76b72922effa84febd60c4a39ae3b30302047c435bb500683066023100b9f96a17901101e04312d64ea0217454d6cfe50a7e415af52ecbb3d6bdcc62dd9c8d726a1006698448bdc6f6d7aaff5b023100ac4f632b9cdb2cbcb83a8a32ff0009d0de6015b1ba7ef3973c5143e3ae454d6519eb05bd40bef41d60a9b2471fd9be720302047c435bb500673065023100ee2f31e8776bc9911a2810ed0163d6ebd1a00c8c7263ed70f10c73d86ca85b9e6a2e6ce04d81416d29db00bc2e98470402305ecc61315cfaf680b22b65c6849aead7f124fa7954ec686b80cf5b6b384d7219ed58e06819138668a715510aba2560350302047c435bb500673065023042886429d1e0ea461a7d2a346b0b9417739ccebb00f7c217f49170f4dc1379b176c96a8569fb972cf6ce37c208faea45023100f3a36fbeeb9589ba04dca8023a895d91ab0c8b246230feb1667403cc9c0e005a4b17529bc6c3650c05d0cbfe68d187eb0302047c435bb500683066023100975ed264395fca80f84b5bc9fcca938f276e89f3f762ae9e2fcd8deb8aa4f66ab67433a5d4d7ac1bb6e065023d4cb1030231009d44c9c8cc5c8b3ddc699ba751a66cffe38435d903165e83f5c51fb146600ce34cd9d1c787c58e074d06d83bfe310efa0302047c435bb50067306502305b919543cb6cd161d6d8946aec262806aeaed29fa98d38ea4dd2b87be44701dbeeacdf1dd21f8a7904053412ecd4f2dd023100893699aaa2cb8031bd48b43b9c7184e6558e7eb94b5f686348cd8903cc82c725e095f9453869e6662eee95bdc9748de70302047c435bb500673065023100da78685297139aa194b5319aa7c6c981593a320875225b90f7c59155fd68d7e5cb24b791512e66dc511251aeb25762be02301345586fb1dc342e9b1576a0be2f8d6115503a330c2b7e01855b7a069c1fe95f681b5128a171725cb92f0e17fed13bda0302047c435bb50067306502302d74dc5ff763ac2a97bf1bdb6dc82b0f6958463ecab0338d7850b4ae6d7d14801b4bc6aa883d63e7444af6593e969864023100d12101bdf4a5c7a8b5d815be27f5768ef5068c8adca1ccb280775b72c73f9ab87ee1ac47abab98819d49e2c92b4049db0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230217287293968affedb5de4b75944e8a01fbdb71991da07bb4d9733286e6c41b9e7480d0737b21d5b4df57a20e8e3d35d023100a2b34a3bcc2c9310a5596aff8b4d62c5aef912c4e44a42000931c04e72497d7d9498f4e9e44c20f90647d5dd37a4afe70302047c435bb5006630640230429b91df04c3ca3be9fadf7231e0ef5fc961a24795589557f545e7010e5e7f1bcf99d7d21d251374a748afcd4e82da5902301550c2df6757b070bde05346a9f22b72d439198eea23473fe52bcaff0f2624c4d41a8828ab37696b2dc8fe12ecdd38700302047c435bb50067306502304bb4aedb70d7e2e4fed92bbf2b4359cca275d6935e5a0cd979c423a4950ceafdfe412116c7aae03317679d6f533dfbda023100b080e55986ea86944ce0af3d6e9247b0d9b3003d13f8ce7a0e0c11ab5159f6c7a272370389bcea56abe0894f03fa706d0302047c435bb500673065023100ba6816595cfcd1835812e9aaee2ff188dd14f788c2a633bd087c30560e97841418393e544e66fbc65293151f296a1cbd02305f402fc902ab23c9c5dff2fd5d7b1fbe8bb9aab07aaf72f230f3c8c7102bc71779b9bd2b714de6ceaa1bb8e6938165e40302047c435bb50066306402306cba5fb075b1eadda956aaa6d0e6bd94541b81dd3e56d8576b06535507b87acaec07b67ee460cbb8a5fd9a916371202502303e9ae0a9aed8e58b1ac1a4911faa62ae24afb1e909c8c6e95f249a96ec06ae01b3eea1bcefe13f47a4258ce5b0fc1c0a0302047c435bb500673065023100f512bb6033a6cc4620b9170ffdafe4b1a0a0c1e01e0527f5b3a0fde4918d988f3055f04babf52f3bb302fec25c639632023078ed633faff51940552a4795e1eada18f8e28990de15ee9ffe93aec3d9e4ee4bf749655c69934bc703cfe37cb1c0f5460302047c435bb500673065023011a4f9840ef5f23e09ba28cb1e6e6416cdce887f824f7306cb435c34826bd8a1497c5c9969d4bd5649fb2261ffcdd006023100f21de16d414b94723646b867053cc529b913c94755b5f20d907f8affc81f627e007e872d79da827370ae8c67ae7330630302047c435bb5006830660231008ad7e19a193d32440099a438df63e8b000b89a87617fc9ac49f70751addd735a23cb4da90e2de25047106e057b2d056802310086199f20deb8fefabb06d2ac7b29f4d29043228fb4d2bea9be5815b5917357de6642618859ec2c8a549d59af2112a89f0302047c435bb5006730650230023901fe289a112cf2e5f07969093f81847fe5872d4c2b61640046f4428d5d6110a919bf7d30540389595d388103de49023100ca7596be0aa697f1c3212a9832301b96309e1eb480d2c4f0b5fed4f2e4cd95cf31176f7d906becf93bff160fda36da670302047c435bb5006730650230629ac37546dc6b8a75e68cbbf9fbac0e6554d2fbf213367bc01ec4d6bc42298606a5b93f6cd53d299e01bece14773f76023100e2d61a9494ea1898d0be16042bbc0dc91e34c17363c44ad00672ae51a77c14e9c215c97cbb173beab00c8191324260000302047c435bb50067306502306d06dd3a5f441683f21e8941923c10842eca49aeb6cd51a00a59d01561c910ac355d2119ec731eb06838b4a3e7e591dc023100c3b9e3e409306ef72c6b21ac0684ef8fd71d694d1f776209f4f21d803f32fa78554536b1daee8d526f2cf66dcf9ee31e0302047c435bb500663064023057a7e7880180644d4f1b1c1419edc91f3497fa2cf1a81558cee82845f1520ac28b7d8e6179f721c9b3eb05b25f167be8023033c5cba85a731af9b2b2f81d15d953405010508743ea79174defd9bc87deea16c6405deef9a59cbc07de687bebf290be0302047c435bb50067306502307eb6697ec0441f31708681d5ad02d1189f6fea23fd5cd995363b58fdb4eec657235fd6944349bcff0803395612dadfdb0231008b9ace22fb44cddf6bdd57000de2fe2486c34e7b0960fd5eb013690d19afda7582f66cd3e0d12a2607e8a6228e601d4c0302047c435bb5006630640230788e90715d51ffe438fd9a9a4e9a69c386427948f49be1a3a59edd26eb7a2fd596deb32ffe613cc765e59176be2e6f920230231fcbde12f56071b2b65fa39895882a614b890461fe5682be48891d32f4cc65d73db433d8cea705dd3d0c2a6db55dab0302047c435bb500683066023100c6c3a5c16f20e3e9b50e6bf70e4b4f4f5bb42681ae86daf6057e1db13f9f8875fd4388ea56e455ca6e34537318cebec5023100f3bafac9bb6a566ce326ec368b48c7dfdb4ff9d845d2aeed042a251f88217c724982bd90c90ce6718f034815940a18120302047c435bb500683066023100ae4fa93de05c1c8f26201f3072e40c2855fb30abf4a911363a40293bc480684d2fdaad4d09c9ab82fddb111bafbd44d1023100cfcc801aa89a188a8fcb9b63df255fe70405c4af96bfaec09464cc7185dee5b637ac6ab4f09669965311af903957b3890302047c435bb500683066023100bb6d0c899ce7bc45b2a1f39de00deebba38add23e03f16fa2d48d6d8cf86deb2e476751637368fe4be47403846721770023100cd46783cd3031d462af076da6fb5cf9095c8b88c4d524a922c5b9a9ff2cf3ee3705cb135ceb5e146dbe0a3d7022170db0302047c435bb500673065023100c765a1a55d61183c6514a1722a8892029360eadf49ff0187ad526aca601a8b997468c41266d95e2c93e52f0f73a9be3e023010d290d7012c0d3a55e29aed398914096f237e9541b65cc0e8236ab6da26cc696968d0afcd45a5c28d3884f00cc514840302047c435bb500683066023100840d05c859fecec9f0c253c9f7e864cec85ce2f5359c5813f850c2017ce5a077fe78f47f0f410a3a173d1694daf63eef023100911c13451b841a05f1b5d56c8bc90cf5460dcfb9590bce3201d2c19553b0db07aa50f20835bdf018b1ab5de3d51eb72c0302047c435bb500663064023078a8fd3ca745f27a405433775c566695110453b88783ceb2bf10c731e25d26b89400275ad081a0fff5580378aaef0269023041153527bb6eca687a6c5e476e9bb7ab9ee5de10e3c6e1d7c047fbb06da24021394f9e753878fd46f341b52d9846b4c60302047c435bb500683066023100e68dfc47a72b0744affe07d3da9a41a0a7954268191abef36f10c07e7d212d37b50d098ce8857873bfe9ded639fe057c023100a44dca65f657ccefac688afdd8d02f0fd173d3ac2d69b169b27c6ada51925eddaaf30ede2e19b71f0408f27f09d835800302047c435bb500663064023079ea1e0a59afe1229b5b0d0489d8c35f3329619a461b0e61f8182bb3d40018da055ddc0e37cc33874bc739ff7bb5dace02307422a3783ab645003019d66f171e47de06f93f4923280f7a83b918747391c456fab81ba21d6293c40dce113b000f39a80302047c435bb5006730650230288cdd3245f6bf83550c18033082910673b1af1d6d201221f984aee8b957bd89b33dfb9e0363b4910d880711ce705dc9023100bcffb4e7714505302381f4c660b22ac839e8d1fa3a88eff42642699731c8ad7906a30de3bf96db4d4074e8e100f8d4980302047c435bb50067306502302052f4d87107390f95bfc9db451960ec7fa89b50d41d0baf2726c10b9d13a95e37c26051bc86aa49b96bd9c9810fa4e0023100955e21515d9a10715508c246589b7bf1daf34f08a130506f8266f99f65e85a605fc693dded51031e9c861b7a324306140302047c435bb50067306502310098ea3660d3a5fe95e74b0ab05dc2d4c2d2b38a4e2549663912ec7afda0ed20cc2dd9f779550a813578d0ca521be117cf023040eafccd28cc6f43b16f7a020e7de29b96321b2c1685917ca99ebfb03004dc7bed7ec0aeb6fe7b71e9718adede57fa6b0302047c435bb50067306502310086fd9772503dbd4fd0f358c526574677ac791cf98d006bf79470eb3c455575930e89dbfd81ca21253c06fa9ac2b5680002307407db3ddc454ab49f075a55b09322e1f242af550392a436b7479fe2e742d26c624b26b9338925d5757e3b1c3211dd720302047c435bb500683066023100ff112c872a99c815e1a7f5b4fccbf95422e1daaec3032bc11e491625388ce8050ea6bf83dc4c8623c260faeab94ee119023100a251e3d5432bdb39d3d77d8eaaeeb97ec5bd7592b188dc81c7659be746bc9e9a3a24c40d4631f6f530a54a04f561a7bb0302047c435bb500673065023100ed17df7f92a50dc0edd6074ef27f4e99405aa9c7858feea16d86c2bda3887862caccdc694e7fafe27879240d0db0c1310230649126623b81f6ffb26c3945babc027802df9b337544db083d8f0d4e891c2146e3ed36a1a252f4ad6d7beb211f204eb70302047c435bb500663064023008cac595694d65274a6e881a8cee901e50ea280a395eb95ab25554891b65fff584d5fc5041c3068124f5f0d4c7fcb55a023058fe6aec40f61e209f075423dff9fbcc64c232f8c79fe6b7e8177bddc7b8d3a5cff3ea10eb535f53998314225b16641a0302047c435bb500663064023041c7a57d0ce76e2dcbe86f68f58262079fe26c94d6333ec9676b105533ce1438f51045e0d430cea910863903460c12c70230033715cdc15187ed6a375f892ab58676a47fa2b3916a95c11cbfc0211c39a2749a5078b8d828622e4f94a4f2d8e698cc0302047c435bb500683066023100c3a3220dbbfd59731de86e24ed6e03419c60fa8112f7064206582a014e833ab91fb875c84d37e7e4a64f9628e018b86a023100867ca127d4447a06d95333448d8532703c17bd350088bba60b8dc5705dbedf47932fcd04e974524326942781cfb8d7830302047c435bb5006730650230226f45b8902ab9811e390d68567c1678f30ee8d72fb6c445a74034e7ff4dc8c543d016c5fbe2d0b097cc74b5a1c1787f023100d1d5eed04207daa55fe0a09f550aeca793e3745ccc402922bfe3a1b47048a567eea2709b2233d7eafdccc15026f30b080302047c435bb500663064023069c358441557ffa9bc9028ba358a1016600c6bca1829717a9ebaddf5699fac9e7dc76b1cdd46700abf11c2c9235b84b2023076eb4820b105290520e808e55d7dba8fa3e126676dd4053a77617eac5ca3ad8dca349a95af79ff767947ac553ee92c290302047c435bb50067306502300d3bba22a72c43033ca1150e448db4fb842a785849f5832b9f3266b29624c5aa4c8345a2649ac76aa9d626ccc14141d2023100ef283ee5dfd1a55ae90228a568ef5171417e8e3cc2a4d49bc7b9ad8848a2d6854dc70307a741da067b8696714ec55b8f0302047c435bb500663064023019e4e76bc9fc77bb4ad7e9ad61ddbe9fe04e483c9e58e2ddde6467e47ed8045aa06139cd712acf95c163f02d37722375023065cf1de50f218abbfb23ca0c49bd05c6275ff5d68e7d67cbe3bc41a3166ccc76d6121ced8857ddf4265f5808eda14d3a0302047c435bb500683066023100de898759dd9194d720d7e07e02643c51883b4ce9c572794333e7a1977275cd75663ee6add5dcdf7c5625f7b0340dfcc5023100bef3a7398a78c30ec1475da74adf0d5fc8195d8328882d87969013a4d39fb4834eefaeea83c986cf1383063a9786c5220302047c435bb50066306402300ca0488766a53e531bbe7fbf28006c00fd8b81b1eb64f91d5c0c5ba3dcbae51774e22a14e02d55d3472d940fbe09295e02300e48133757fcf1a24e532d0a490b9e579294a1d72b2aa268fa9702f3bd82585aef0f18f8e5dc85a2488d88fedb8b744c0302047c435bb50066306402301c9d2c0b575b5aa8463e8913a59ffaef31a3f3dbbf1f2f68276a72ef21ba5bf55659fba687e639d040d485e1730aad7402304bf3270996ef04269a00bfd905ca9968694154b3fe498b2733a6404dc8e94a34dde738e1096b5bbdfd8705e088e01be40302047c435bb500663064023073cda50b9bfc95896df0f347a1cc38f7926124eaf3a7ca55fff933b97601a94d66451aa3b214e6e9049834ed96849f24023030b5430645a0d399a6e86b902144597f8cff4e59c894eb26543452e381c4013e1c22c712f069c4a1edefe9b727c2ecf10302047c435bb50067306502303572761fb601722b4c11e32106c4a619c226c8a74ca67740e1e86ed5f0d455beb2f2ec604a4065c665bdaa198bd3601702310085e1f9dba2a948d4c334736cf7a3354be430eddd90ae754f2ef213c929c3edfb3a74c417da5a94b8429dac09c6416c460302047c435bb50067306502302ef129fdabd06c1f7c42739162e4565544de75f5f98214507e26df62662c130d9d3aaed57104716119a9b5bf676c60b10231009bd42c84214ffa29fce1777a9a4d55a04e04eef288858f0782fd896bf6bd295bd4423bba479016c88369385bd19c68440302047c435bb50066306402300c691ac6f21f3bcd42a33457fdcf9d929df2fe564370170cacf88496460cc22fe0d1fb4772c5e7589e466fd7249f3d7a0230437564b9571488f98b82eea0c9b40fb0733af5d1d203d75df1d114147c64c07f9aa635a988f6bfa3b617431a7bf284700302047c435bb50066306402301edc618160ffd0bdafb39308b7b1fca23a2955e2a52f59383fe378ee2c9215efec1d44febe0eb868dc0bae2f092b236202304a1d417ef404cc838706b77d1c1e7e32b0eb78bb05c393afc9d0a01f64484876b556bc7640fefd7563055c36bbf5fa4f0302047c435bb500673065023100f38381d69cae1812df7fbc564d17feaca817f3274f1d76debad2e26c52801f14b8b4f0d454375a18c1ec6ebcbcc27a6a02305bf88ddec329d0c3fb2f9e9daf2e09877d92f5f8f16079bc9bc8aecb2fdf72786a1bb5f52e563a0e10b7b60447555c940302047c435bb5006730650230767fc744b4aee2fda1aa4eb19d6376648d2dd531ed7cfb6b7ae15bab101f246486b35f26463c32383d6890360c2e707d02310089852d8a2d338dd9615e96feee85ad09f68480f78e145a02c33d827249d2df0e64d8f1e8e6faa0ee592e4c55feed5d6c0302047c435bb50066306402302a3c07cb38c5b83b1f22d0763bfb24006b6b22255f187629ba9f4ba002fd2beef97368e685ba269121e24d8376fb6e3602302532511f2ee9791d8aaf75c50cd42fd633804bfc32233be053b63161f86c89cdc615bd77c9a483dc32cea032d3ae6bf30302047c435bb500673065023100cd58853d2fd104afe34dbabdb9e6e68a164824635072844cf620416842d670a30a90533535ceb3f463ac886aac4b21d2023058256cffaf0adcc47235cf6c6235f9310fb2b738605f8f7a202e0d3ab5a6cedf09daf3895e623084b1bda2bf9e6d14500302047c435bb50067306502300474ead0018d059c2a53517b274d1e1194cb2f4b53505eaa0fa63c144b1135d0df3002040d4cb83486e0c90985d04bdf023100ba4c684d5e028f16779ae84c0353b739e8d11dd26fdad37b9ba806ddd1621b6d6bca0fbdb322567313d14d4f0b124f860302047c435bb500683066023100d3a5e02d6d58aa195d420ab63781e6d54af087c09027a67ee7c9d6891dcebeab78390bb6fe7fb14998ef7713f5c84683023100de126d5e2964398455265931b762913df41314694efbdd5728c8cc28a7901c6733354fdb8c437fecc7a51b11e3a842780302047c435bb5006630640230018453671bab83fadc28c5f22875f8120470c484da3532810688ee51c420c9414121e21327666b2c4876fdabc3fe207e0230547943b638a41b3e776e5b16778ad9a58f955aa9224ad2fe58033a4defe3b141edd604e11d743a7af41ae95b08c511b00302047c435bb500673065023019ee93f330e0d3fad0b699598d1ba326c19d1a8782eb7658640326f3b8036c05d53d91fe0dd8d5f146fc930c74de9d3a023100a4ec83d8df09229368518e4a361d28c811594f6897b44b8ce8f1f541efc80deaf1324231ce1978400b886d5869aa5a860302047c435bb500673065023100ec195c30795e9e8f86833bfa770ed14d5df4101d45d1da39e5d2f8fc616d3eed56cde86304d46f8ebc8dce07644e834a023023e632e7e6375a7985f2a105a8cb1bf93607516f0e5bed06d87a57c0223480e01466bcdb1438f6066b211718c0f2b0250302047c435bb500683066023100969c956943f5d68b9100976690f71a8c33f23f513629804957bd4a89292c24927680c083c530fe8ca540e353ddbeab42023100956dae4248307ece6481893a9fdee963dea9a33578f15e2c821e553bb14aabeb927d65549738474e8d981e5012303e990302047c435bb5006830660231009d3dc2cc3226f15693e86358d77787c71e8ebdc8a37ec1518e6b8fe1d0d45a5a6fa1a5072a91141222d8a2c995b4f7710231008e1847605e8cea38caaf2d3068b4e7f7d27f57680a5a807dba74aae9755342087104e286b87ee7ec10466891b49cae550302047c435bb5006830660231008a3584b40bcae96866fd2eac8685ce0d8115613ae43b39e22dfe497f1f36043b0064d957dc2af992a926cda84f671da7023100c1bea23a46ee4b146b8479dbfb635405a30a36a03650beec5b591a2807b970c079708bc62badda4962bc41b1025d1eed0302047c435bb50066306402303e74c599e029bc28d161cd19e2f58cd81544840f8301d6bd35bd8be20ada6edbc99ded6d0a8d96fdb53a9d625080fdb00230716517b3284303d95313cfedd2e57451abddfad4c4e2d48a1ebb7405e0076fcd533932e31d5ea6955479d5ae7eab8f930302047c435bb50066306402301f3f9a7fc97cf1bac97efdf296568ccff4ef89885b2244b8c3bc7194bdfe7ad4b7d3550b0408b05a8d1f7f570001b871023073afa85a8882fd5293ff0c143b21a3093ef46c9a09ebb216cda42de7a7c63c54561595d07ba42ec14e65f2d77bb6b89b0302047c435bb50067306502300ada70ff60fddd65e70d861a318f657be836745d9e790161fe9db3f89b856ac50dcc22165b3c0ea54bedf1a4aa714752023100e24d13707238a8c067bd105a8a0ea70acde1f921daa7aeba033e3a22ba203b5d6e78aa83f7cddd930df747598a4ec9c40302047c435bb500673065023057b8be126e13884314d7fc4f4ca64aa668b539ec680c4f39a4e8664f5a273f7a812202bf28022bfa4d35c96e94393d55023100c86489ec2316c7a381316ecf499a5ef1e4a4ffa490eac165e4e0ad7b98e69d65bc61a94a680a2af4618125489c3bd84f0302047c435bb50067306502307ec5ca1743e26b1687ce5aeb9a62afc48ac51cd41c1ddd5c5ba4a2d42f8e324a991257cc0594809400653e93857c415d023100b06d6c5170ece31ed894fc290f32735494fb663bd1927b9b1fc1b6bffaecd4679f8b24004de5eacb778405078dc0927f0302047c435bb50066306402301f881412f4f1d843d1997a7b8887ff8863ce205e0b117889ed35591abcdcc4c76f7941e03746d76e091a4261c8d7f76002303975aee2440f232629dd97c23c28b50d50fabba4a6af1f7764bd601e13ecd7c0c01836d4a0e62f4bdcc30629f26653780302047c435bb5006830660231009769996775cddb7b3be57c337f65aa303d702583041eb72dffff17e69bde8cd53f1c81457958306bca81d56e99a689d0023100e29210f9cf5e35785e370d6d02459dfd929abf9591a1d869a01c7d2b77356d622d0fb5ddd22fec5a3912389979cc90ed0302047c435bb50066306402303c2df0f01dbc79e68c47599e865b53ca41d6c01108de32c23e026e0fd1e0b3e742ae24d92b170b7345426d3102fad6a40230465dc8df33fd6b41a0f9aeb4032e76067fbc736c77e953c4c803673ecb29ef7721123ed88b479ed6396365c688cca3460302047c435bb5006730650230322c14243e1b53cae959935963ea4caab958c5c7c6eb0cdda035d72ee5a69fd5b490f064377ef6d9b410e3aff2432136023100ea8ada3f5474633e62c7c7053120aac47d21cf7310984840be4d6680f94a871169c45578050c136427049899ebac19460302047c435bb500663064023062d8248e0bbc84ba9e25fb3f9e29dc77dc12bb2a2edecbe6f7cf8b9dce41976ba49246edf2a32e5f251d3569a35fda4f02301010ec8a840aecd68d968a410149c18ec1c5bea3e9d1bc5ff0bc62905c2a0891fba67dbda11b9fd27765dae6249c98650302047c435bb50067306502302b7a5bb2298bfbfed31c33624c18d166ad7590c2c153622851e20ae71a0512c3f1047d2c49405bbaa3de271ffa272861023100f6c731307378ce43dbec9b842386eef248ae42fa3944fe02a5f4ca103c675d2017cc434ea6f2a4a52834704281dbc9070302047c435bb50067306502301253703fcdddcf43c3782a7188a6631b2d062aa1650289136b5d2c7e89037572f1c5bd81abab5fc8ddf69371eaa28da2023100a32e313ef06fc705cd660dd537307e09e97ba2cba502fa58a2deeb2b2b989382a847839397811e42e064c16ce5064d970302047c435bb500673065023100fc43c63466d99dd14301ab44fd87c665a576ba1297e798e1feaf38fe675d0e530ca0cc36f010dbd7b41b07bceee122bf02301114b96da7c090b2f56f33bf87de1215d566ebbe7187ca22ab93c95d61dd1a02e743b927ee5006df2d91347d551157790302047c435bb5006630640230240bebe8639d501f3f3094f720ce9e2a6d5ec9497a0e38615bfce56021bdc40e44068e8ecb4325684c304cf28765603d02301b2285c55e7ec1412dac748c523e0737c2148571d431e8aa8e8790845487392fcfcb00f4fb0d64d4bc7f98db0a2586560302047c435bb500673065023100b02aa487b0487e21171c32d9460552c319b2c0945ddc8a09848b4a6ab47a8d21da8ff8fe0295a1435682364804b89e3602302555c4d957419a5e7ff81f8c155d10f9b71a415a20c2d76d14dbe76db961b7fb5ca769d8d951cc40a2d927e6e56da9d30302047c435bb50067306502302dcac63f5f53fa755c1ec1e8fe5a4d81da28190134ca14595ee99483c48916471030aee5d7799f84ab9ec4652d03cda8023100f25a3abaa8aac76a060087f7eb903289f33dca3b5dbc64fcc1da01d3e2cbd41ecd4d68eba5604ac6601e7c44100a54810302047c435bb500673065023100e55fabfe85526194d44f4937484e616e6af1eeb34ecc4dd06b280bbc30e6a7a30d4cf2e4cd805801a13cd87821640b13023035d7d566f70fa533be2bb4b155dea898389adcf2328f96f54286421195fee938e4674c437bceb94ffb88221556204c530302047c435bb500673065023100afa9f3a1056516271f0a736d76cac13a7e7f9428b68d47463da4442393c097f8b0c44176bb6b578e7133f906e633698f02306e7097674f5b80852e7a3125a18f45c2ca43640474151a0ac841489b646adf8e59f9e75ff006ea0758cb107aad73f7be0302047c435bb5006730650230494a69d97278bfc7f857531722aac315c27d9d6a8612194705fff060ef19444259fa48d8b691b23c2b1a8c36992f6b620231009c6934b903cea339d82f3fc60ab2346556d58d4456d0d3b961970ba24aa3d7b4f21bbfc7cc415c66541bcfbddbc169130302047c435bb500683066023100fb1d132e5295d7a3d0adac327e865e7b661faee8d38d4764746f6d3bac87a9ccfaa2eb34a3768ef213dbf8fa5181fa70023100f902adc8574314666abed3e3d9a96f69531532c6c91f317ad2801271c082b645e5e5a6a265efa23c0d12d02461bab1c60302047c435bb500673065023100f870f64979323017b9b327fd18f7202bab211d28df7d89e4b1c388c1aa360bc69f69f2f637a64ade022d3128e4cc7cbb02300de38c0d536503904f399cc823398242bdd43d78f3509a48ce52c70fe748ec17f384817483aeb1b881d6ea0c705a76ee0302047c435bb50066306402306c6e8bf1d537b66a2dd894904e415d4f7001d21f7a63490ebc86997664c90d1ec752348878d1150c2007619d32462c66023076855e7698cfff99b94dcdc1eedda27f22ec5b3387be20d27b532f8d14f4c42877bcb389a17e22c7397d1079181407a40302047c435bb500673065023064121d0702c777ea1a4cad8ba37b08963a4288a2a8997aeca39ed5cbede95586c1c32e78eab17bfbc40988d02c4d32b5023100c3efbe3e47f6d74c70950729d597db05e899684aa2c8780bfc12cb00f3cf492b9dc912b293a063473fe1f78007b9ad100302047c435bb500663064023021783712eb3e88b167747598e1352b391a03a35cec78dbfa8a94414e13dcc578f2fbd5d7cedff0c97ca6d5776d1830b102303040795dcf7c794728a31820e40b602630a530132d2d02a3b9492c06298580d4bfd8b7215277107cf4477ac39de9bf5b0302047c435bb50066306402303df0f534251d89fd2fe64c28d93ff3e926aae28448acbede2e07b41059e43a76941402b184eb38ae9f1f7c748f6cdc6e023020329a94e9c39d9564affd8149c82e4db7f1b1f54f962bb70925b4b99ce4a19ddadb73a6633f4bbf3ce8a5570514262d0302047c435bb500663064023034bce85390e4757d17ecbaa88eeb7472dbe722aaf72f90f7b56c96f12fc92191af6e0b6fae6f953f81143807142ca6170230131d8d658a0187a10d393f9112891a35811af6d89ea4bc311b22bedc6b624d637c36b3d3370ddcdee856633cdea728d50302047c435bb500673065023048b001f0633146da1040f911e958075020cfd89d3f4fa819599b8f40ea25c234054707f63c77d7f82612aae3804b8f670231009050bc727a1eea9953c4833ffeb27447519d4b3f14cba46896f553150c7c084467184f9bff1eae94b5cd5fd85dbac1170302047c435bb500663064023022d14332a3f362295076a9848c413c2d917eb5a1f4acc5d6f7bbfabba807e03d3c1ee236ce49f0084f107fa5ae6feb5902301932c2ad4667f0254968ffe7caa5613559d319304b346238dbd8918dcbed751a4c6aa92293647833ae06118d81d233870302047c435bb500673065023100898aa024bb00e419e6fc4a062dcd07e1ecd279d2f60fc31d93ce489474785b96c16852397253f9075a580db81c35417502303aa19e927d7481b60978ce9371490b504be5dc7d1133756001d772378ef88aca6603f0fc3dbdf818ddc66261ba57a0f60302047c435bb500683066023100c2b62e6b55535905fbb73ae1a6ae5c7d78c659843763ffeb64e09c4f2b450744acc3989af2d1be4a90c553d4b07381b1023100d2b746fd0fc0e0854c182fa05a1aaf1fe142b4785a27cd568f59b22be1605fa278149e2fe6a0962c0256f5aad2aa83d80302047c435bb500673065023100ecae6facc2286250da4dd99fe55e56e7a74d949331fca2a1bee11bc8b0717621ff52a2de0ccf7cabcc28d2555a1cb13802302c5ee28f694d1d6c17f3303e846d6ddfc46469f2b209d000a367c78f6f77d15599f3fbc6cb78604ef65aa54a9d7684760302047c435bb500673065023100ffa66945c50ccd45760d795612bd16e713994cdfa24ad95db955bf395628a2dbc86bcb7cbb617b271d5eb0ca7f52127e02304d39b0eed0d9a1078b05a2988d90551347fffe5ee750f9f9f200a565157dabb41ab9b0d569324619bd3d3683c761a6d70302047c435bb5006630640230165b207a8fc33c0c5487e55f71c9ff990c628aefa67cb8794e9abcd0df063dac14d86417d1e2356b5e1669f7cca38a8c02303ca82c447785b8731e63f676f6f4f553e0e501e8dbf896e2b95e4c20f31aa08590abd7683e98aba8ebab4591d87afedf0302047c435bb500673065023100a7c335be2f4352b975b0c0e9051a973aa904fc8b811261a1e2a504bee634d72f587604a48515339a15b75f4414311a27023077de03f627387d23a7b376466a1ec45fdbe3db393182c2511899e3e4f4fe30aa4f3cf82b97e663bd5d620d15edb5a54e0302047c435bb500673065023100f5e01230428fcd13ac955123dd83b13e4328ca976e5eb8705891eb5bd82042c5f8b312ee49300af2f9165ade5e938b71023064d2ad9da5c993111ecb19129365b95dd39572f05e16edd48f813a1b5be5fa33b6727585479f4d74110563fa340d722a0302047c435bb500673065023100a8ddc518526cd9278ab6c9f5bf9737e621c56069e1af580ed0183d0210a01e0776cd130617bf0194ecb859f54d25fb9f023047f4ce37a97a322710cc0604c8ff928ef53ba5d933048ab9857bc78351e17eb5072006d0dd64c85052436c2b18a133b00302047c435bb50068306602310080b42bcf569c1ff201eef426e05e8eb271745b19581466d248c2b9d45af51c393f722363d30d958fbcf2a202d2f3277a023100e6c5e6d39b2683c98455298c237a25c7e5f030391bcfaae939c1b1c235f66f3cade7d0b9da215786cfa5a1776a74126d0302047c435bb500673065023100dd1787b4eb7105271c7faf3412d0fabc37024addf0d42feffcafc8d04a02e09018a0e814c71647aa223e0771ebcf061502304db619af9b513832e2081832b2d1c36402b7892388f074d78f3ed63e5d35a0d6fcbfac11b699ec4c7cd983146fe1183b0302047c435bb50067306502301a88971da566faf492fcf418bbd5bab7b3881a8b858fb926b90e719e3994a750be373043cc8e45a9ac9f5fcefde3453e02310097e38f914504bbf9c7b35ec946073fef0cbfe0e77531f6a4fbcf510ca4fd25ed27fa0bb6b4f8b9455eccb4ce64b68d860302047c435bb50067306502302f7317404cf332b6b766a7944f25fb86b7eb021b0e6f75ed496e471fa71be617cc2deb0b968c5520736c27c66f5e384d023100a41f8bd660aae43863f9f97b45cebdaf5d3547abadc9d7e8eb70320a92bb4e021d70b9005f419673550bfb9c2f2904e40302047c435bb50066306402304f5fb6ee2f97bdd6fb7c6ef26a773eb95ccf1667ff7edc3e98eedeae07b4da76aab8585f67924416b0f4a7830da5d18b02300a32a3abab20616c96e2665581228fb4526302a7eed3cc2b76d1b40897d519cfdc73e9af08c8bcd98b908d25ee6c1f520302047c435bb500673065023100f4c5f203a445e3b2a8728cc98478df99af6c060cee6ad2f3947fecd7e780fa573d45af637d3bdde101505a907073a5aa02305f1f11fa6e55d723cc585b57712500612cd3d82ce7e3b2e59a453537b206c4c653015733c5566daafb6c8c861c0259de0302047c435bb5006630640230465b38aeeb61448ea0becf1702690918adb5d7daac8ef5d790a4d5a91bb86f9316f575a75d4c4a0ba8e6670ce950b20802301dcb4df5bb1b3f71befec8b9c6028dd34740f4d7706247080a32d896e621dedcd2bbc1fd75cfd14c7c1f32381dca36a00302047c435bb500683066023100f0599cfa51ef5ef7321020a01a5e12157717c7987490cb188a92bdbde42063f1eec5000ba36c9ea56bafa576e09a2351023100d21506138a00edbc7952de77cc3a9b2ce75429527609f1f23a4f078d957ec4060c0f3c2d1844170d09217008aa313cbd0302047c435bb50067306502303495f248bf7190d7bc0f8c98fa4cd950ebf7f3f8a44c9fe3bb091938e42a132250b795860c68be77a0a701aec039c3d60231008aa2e5ee696e0d1ca9bb818c6dc5890e6c3cb68bd7fc0819f402f859d5beee00152e3854527fc550ffbe2c4eaae5cd460302047c435bb500673065023100f40d8dcf42053509bb8f9cbcfd87379fd7433df083062be31a670b2e586218585e7b2ceb57235b2d8bd1ddce1c31b5f1023022ec217257eecd1e697f3620e14512c3c58e80a02e2e63aac8ddb018a087779efbe1327b4a9ffb3d5a55d17d04146f1c0302047c435bb500663064023055e8b1a839b544af56e7effef5ea512425122f9c552b35a60d03075645af13a5e9f3f1afb35b9e8b4fe3230392330e3d02300762a3b6914d5300cc9b897f31645be87f689e254f215042dc3e2b4619f66b668e547e234f0363f8505cc8b1e33fcabb0302047c435bb500683066023100e0f9c2f1a25510d5ef0b750c931213d50281eff8f0b73786b8af51a5b033dc7117b8c4aa22ea1d128b0ff600facd7a37023100dea7f791b718200322f9709dd49f569cfe21dae3a519dd5897570a1d5a50dde31723f2f77c672f979c8fbf03e789628c0302047c435bb500673065023100df973df5cc5670c3795be677bc1a46a21a57d5c8eca5cc857b2e376dec59efbba636265652d7e6ec27983bf7b3b949e7023029a9df9a4e29837f8a494c23ed8e3531a531ecc90eda2353fe930aa327daca70f5093a644826c8b70406200b27f618be0302047c435bb500683066023100f8c265d8e9fead257353127a9bfba38e53c1230ebabfd2cca351ed75dceecab2ea95a9635e33d4218ab96f3e5c05669a023100ef8c8081879f3af94a6f57d3b3c65fd27ca30174538846f043bd992273ecb65e40621daab19b69c8a2707c959f3d13500302047c435bb500673065023100ae6f2304e94364734847dcb8a714a0b24b2f57c232fedc77260cf6b7060bc0f6b0752b36f3a476a5362dd41c7d4df592023009d9c8a2d95eea1a0418bd4adadad911035c989c25c34d3e1d2afbdc0e2f315fc804ae012c7be98bf59d20be33c74b360302047c435bb500663064023003e8eb8ec82478b3ab2c204bfe387869dba7f09fd9695d03543e1efd80c462178133164d8cfebb40efca7c266081636a02307e23c59902b10e7d3623cb498462bbb6035ef571b5606e20d8b5ee1ff5e1230e70783e5fd0587adc2351e2ea483642b20302047c435bb5006730650231009b10aee49462b35c5c859c0661a997355b280f74c688bd8ce347f41ae50562ee327e5a627c3967d838e49579221a1fa8023063f5bda5f809cd6322cd8c443e53cb2387589bfa4fe970468ed48b908b2d015a40f8d7abe42b30cd9398de834dcaca7c0302047c435bb500683066023100f3a458337deb062e448ba05d9c0fcb9c615af5ece42c681efa048fe9a7076170dabca7f659466bc747508ba25bf71eab023100e9fdd7217611b80b61296530f52773fecb91eb4dca1df7682f7bb6f708b7474a1a67e8be91948c4f425e060973c262560302047c435bb50068306602310083764c74abb01319c5f2e97b061f3aaeeb0802aac6e276f6f9b5a20fcff44462fdbe32dece5179130379f763fd8e2856023100d8d9f73c25d8e283cbb4add768271d958b70287e0186669019a442ada92cc6a27b11e272da3c1653af26cce144d79c040302047c435bb500673065023069fbb678643784e573519ab657065f1759736bc268358469bb02324515960566ac0bc14e216455aff26499f519de00b4023100df83b2291150dfa0b0cc396594517e7d761b1b42588d835720d5eed292d93d3dedb9922e8a619451143cc86eb52262940302047c435bb5006730650231008904dc9eb0ad673185e4e014862e074f40058a41b0df0e7f8f41dacdd2acb93f8cf1a277976d3ad789ba6a136a6afb310230224acd6126bfc46a1bcda9f67309c3db5b184cb58cbb0e7e81a768bf8a04e564bf1cc8b21ad4a1c59f51e5433858c27a0302047c435bb50066306402303cae70735c532a9cab534d6cb61e0229c755cc2ebeef876aff2e36cf7d37b395473b041c0f539fe355d644df29e32c54023001b99995ab021d662ed29304ca630962947b0370378f3381f7e4e4da6138fdd63f57c7b6eab66e786932b57f1b2785310302047c435bb5006830660231009db18b4efc74074404751c3ad9930531570e3579779a72922c1eafe28b74eaa43e606f8c09d424be520014a0c1985700023100f1dd8966a00b0308e5bde4b426d681925572ab960528904d9ea32fc2d1e09b32cae52cd0fe855be19e09a520828c72920302047c435bb50066306402305e33b39fe01e9c67dd951050eb81b8a668cb205433a72c546a4d600e28435f4e8a0bd775c461f012cf24397850c2f1db023029e5d3a1358a64c6da14a2bbc8cb9ef0cf77dc2f70f706d3457f0b59e8a1ef36ef680ba62bf1c6a03126c318938cddc90302047c435bb500673065023057be0a02ad6dbef19fb21c414884b6b4d1d11fd6b0be32c48a559e5bcc8ea7ea53dfd940b9bf6d94a5fbe356bd47a5a5023100a2da6d4c28855e948d780c12aec599f9e683c6c5dc58e2c9d16f1f81774209dee711a15a509f4542315dc5add3be1c620302047c435bb500673065023100b4fd784561b488bd2cbf14869648bb1bfa3c8051cf2c1d8b973ce6c04fc34e297a387a86cd39e30a223fe9f753893eb002307a5966a8a6134a7c64dfd8283ff1501fdd6e190b17527c6b71de1985e93d56f6fadcf6e404255e88059a350c891febf00302047c435bb50067306502301cebd7fca91c7cf6461add3a8911e53bcc4422aacb61d1f5945fbc54cd19beee02e0d408eb4175c1b14a989ac7eca8a7023100ebed0922ad62bbdcd1a3dd4b11bc4e68d81193a5b86a47ea49240215f44e6b6630e0451dccde01c1a10f9561288968500302047c435bb500683066023100f4c1c654a6fd6e76f11ba2b5906c5be860c533664e5becab44126cf63c8929abd478a3a39c0e7c4f0a48b2d4e40f909a023100d2e0c1774202cb1e7196415cc0bf686a8f49fc96358d057eb89f294f1c635b9407dbfb50bce1dc51ea37ebaf322ec7330302047c435bb500683066023100ee82ac0fb28244b8fe51a7617964a80dd22515494318c6d9ec454f9ac61841e5e3bafc21e36fafa7e68df9f53c6e78ed023100a14dcd2ff4501cebcfaaea50b797b563b391db251a6bfb7cb4a94d89dd8a808c107f12c81e6d78d6d8fdc896ea657f8e0302047c435bb5006630640230558667c290bda85da69765e15846b4e87ba97dd3401833640f627da7b647cb0179a3ffb2e56b8c513e49dd63f43072c302301c1ef66ff57cdc2bd26ddbe63073e696567832c0893e70e3fc0bbf8fe80e88f8636486e620d6b754e5b43362e7fd39990302047c435bb50067306502300d7d310fa15411d827b728d523d8b1983f626caf3c774d51588a37a380dd0320823ee10c646d5b9d82c1535a426481d8023100eaae0ae8902a383c423ae3018c120fda67965f8794cfef521d23e1ebe68ac1556c815fd956bae866b1d6c3192fbbc4bb0302047c435bb50066306402302706a4296a458b16f34e7729e86c5dcab17f42b8ce1cee0bbdd352906d2140836d5bcb7cb0c6e5957882fdd95cc1cbba02300b83e55efcc0d6b1475de69e681cc79ca757fc6aace6145018bd52317d16998a2561919bb19d332bb379699be2d948050302047c435bb500673065023100b527a3fda7d49b7ffa9ee586911385fb6da5a4b1fef8956100554ed635d9b417496f147c9b27a05a671824f20de00b81023004bee29c3309ab8a006f91b19570eebad4545c2d46d25ecb4383504213a2772adbbca415c47583d2fffecd563848c2970302047c435bb50066306402307d07d32058d7c4f717cdf6afc0efcce25d08095b7ad126a6669162e0023bb537fdd9412276519406d64874970509e70002302cce32114f47e53ef66cd4135657c5f7e821c739a8170f5d704bf64d150ac7d2f64661f99776ee2b368d08e3e6afca120302047c435bb500663064023049da7554a2b186537f9f73e08385993a2abe9979c541cc662e59931d25fbe70962b665567665ae384f4cc166100cc0490230694252c4ef7eb72d66c8df9a6ceaa446741997a3019f6a2597b197f18dc1006ab351cb18bb88d45d20118c12e1a118df0302047c435bb500683066023100d69a32aace3b3e0353e0599d786c2649607e1f79e6c46d8edd9427baee955b3ed4a2f279283ba5caf45ff142517cabd7023100d1722860151d42d5e5ab19049e38814a48614857a6e7e88e78360728b9c3aa4e1ce98420b82ba9e2c7ea903b11b410e80302047c435bb50067306502302832eaaac7d6a3268789ce095566628aa47dc4701e2d7f8787aace1555a6bc3577e355e3216f677a8eec6b863d9728690231009f73f6f01ae8bcc9b1bba3224d3483e9f9fe7a9c52728aa15475208d5c844adab4c22ffaca68b6012f5eb1b2f5167b510302047c435bb500683066023100e7daed65e8a2a3d902c2851737f9e0e536d074d323693af85ae6062cb00dc6e608f3ffd63b1cb55603c56c47e533a103023100c01a0e6ce1225d4c58683263c53c2e2aaafe355f49ce7d56885a6203548a20e8127e868c3eaf209e1e6a39ef1f5438fe0302047c435bb500673065023078263ea0458ae62a8ce01bc35a3755ecfac7012408ab0e74837f466389cb722b7c084f8e49e23b11d2db17e465aa46d8023100ba2d35c1709bec4bd52d0a7a40d5c75007bb75eb127725b51854d4671e21c0582af929e69ddcea88ed4ec1d768211fc00302047c435bb50066306402305db8c6fc50186b9db67b32b63d7b6dcb8516e5b5caf67fc443cadd034337693cfce862cc1f575ac653650b449213f61502306eb55f6f34e2389247498309f8b7986b278a114a5645ffb5ab03b0dcb2f97b9c7ca09384f9617c2e33ad6eec6c8b213b0302047c435bb50067306502303d3aea16621635b80cbd69853f4da18dc0d47d1203897b9a69010246067dc9dcdfd501d6aefd8a92e12aa50a133a068f023100c7dd6faa1dd246cb8f0305d87fa00bb9fbe8986b5db60e1fbd865421c1c115f80cad608fff927eef1da75c8793bef28f0302047c435bb50066306402307b2a4b8050f790f8e8287d26a330c234fd5997b01e05db8f22246866ebb3bb0d2854d10263ec4ed917dab5a20358bdca02303c87c47979b585dabeb15d2facf2e103e05982bdfc8635ebace4873ec6df231b3ea4404d881f263cec3975b7a0054e560302047c435bb50067306502302b3ab96a099a89b21c668aaf82fb500d28e105983df57cc9ff04ab2468c2e49932452fd4d0e58a79605eb4bcab02ca3e0231009fc84351f97d79bee5648d59cdbd30469d22308ec327367c146c798bb515a702704b02cf53baf314822f25b92194337e0302047c435bb500683066023100fb63e173435b92c9132c33322a18c721cc2ace757a100af2a23ee31528290cf2edc512d8b5a30a38d0938acaf2ac5502023100ee7957df042615c6e713649fd0ec2cc9400e26899c0cb4ab79ec9c1c5bc595cabecbec7f5e0b72a5f94f6fc30db4c9b70302047c435bb500663064023051540c24151a1032a0c3a12e50cd2790ac42ca71c4b75de7cbb64b32920b1486e293754d4794526ef3e02e3f7619441e02301f2dc588fc0c7c3fd0b9fe9f3936a85d0687b332293198f31e27b90a38786ac3e65d6f6bd2620150ed380455f914b8260302047c435bb500673065023100d13bba62d3472875b12f62174244c189f3533c5e76546666d7cb9f22fb6618393aa645cb0ad3721c1e62bb14251391e2023049225e775df9b06729c71c83f24d257bc23eb210c8ec2c5cb17e3de6de936f980243186319c649cb677fb3f3da622b650302047c435bb50067306502302f108e28ddfd3eb14dd708fedbbae831fb491069003652b2ca197fe2bf9e244557a1247c281fb26f02b997fa940c360b023100b80cf827090ae5c062c61e53ef2635e95dd1b94807e1558104c27dabf2e885a76a26509c3b9095fc9f1d8cad7c04916d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230521bf7ef157da0709f49fe127e9548c9294afd75a8ca88912e854fa761d4596d21e24f18cad0164dc1dba5fa777185f7023100c5235806e4490090146bf7df27c683eb52fbb42af6a696c8bc87ba190023c03f3a0bf248513a2f76b1627884ba1153ba0302047c435bb500683066023100c419ba171cb896438aa20498e45f2d02695b776001cd2a934bfa329529cd85c0726cf18abb40ad5b765c032eba54a7070231009d8a75d3283f0f56953a03140166ae3c15d992e341bd7f295e1a32679e538305d9e80032dd1b7e9cf6b888f8b78f282d0302047c435bb50066306402304f3a61e22e39e9179e7c3ca61982805db991a8123219eca6790269d8bb04924ba17267da06bdd607e8be8cc87e8b75210230703b61b4ef8cdc86c938a85331830e5970015d4a45ae942654afaf17398a7ae436cc51341c8ce88138dcaa001caba7f60302047c435bb50067306502304ce4c71c9531d97d076a347334ac26879e9597c1fdb48dc5a13d3f4a9c3377468625ec803945092f67985f74ae87972f023100eafe354cf9e235633c8b18ac03b55a2f12bdb8ce94b968b320f09f69807da33872221f83e80b67f8442838be494ad7920302047c435bb500673065023018af1536c27397a2f79fdc2037f03bf6ddd1076176bcb317552c54839d8f28b82764e3b3667d719e6cc8116902830978023100b515d18998e5572a53272280d4a841d74ade1de41b6bf16f39fa30e9d2aa2774bed919d66bdc422d143ad9b18a8a10eb0302047c435bb50066306402307961ada94b8d6cffb96bfa2491bc7bfc2d5c310b7b9fecae9e02b84febca55a640c61542dca86f3fe2dbf280a7f58cea02301f015ae02863f5e0fc9f821eee77ba38cfab37c243f777ae693f24c0df4ed037c59d4c8a3c1dceacb8039310332cc3570302047c435bb500673065023039a5bbb5d8fbf645e42877acc9d30156e5be729541336da6d18c55b4ec8d1fb5d780151b824c81c51f75a7d8f4724796023100cc824863ebf9c1f15b4403e8bd585098617aa6b919ec60253e66d7d3d02474a438e0ea94aa50115ba56b3c4e35f00fbf0302047c435bb50066306402305e2e9766e51ba1f2f713842b5de55aacae02702d85896875eca8d21c7f35ea0cefd3d733c1ad456e160462f177ebecdf02306230a7cbe5be39d0f30d9bc1fc70e92719f637bf61aae3826e71fcfb20c0613fbfd317ab7accb169f5c3cfc9a7d46dd00302047c435bb5006730650231008330c2ac95d963292185d4f997429c71d018e0d981c62a1a36fd69b4257b183b80486d01861bb32b49d3018097ff4eb502301b9697dcbecc8c858656d27fae4793b3ea1a39010732280ee363def14e408ad3ed1d9f621ffdb552baf4aa32a3e659670302047c435bb500683066023100ce788d05a7984d9f191b6a75a3fd46f096afd38c2c862370d01725cc0a588408ef53605722804300148e32d22c226c05023100ae25c174c0db69c3aa979d2e3c820968ebebcd8c7854bf640ed8fc0a6462e6a90130a0e33456b543af00d0c22d609fe80302047c435bb500683066023100ab572dd9c4232ddab5d13c1945f8a16bb3c70b00e9c1371c94daf1904ecd372b2018b68aee0ff7dcdf243e126f7aa1f5023100dcd03e0991048a3279c4ca0fc7497e18cfb651b40f067bb9df7edc7f12357167515a7e64c515612f5e97796cd269067d0302047c435bb500683066023100ba02853ee5ee6c1cb156f73d42d5fae4b115a6f732e0fcaafdc962503040f22af7ad45e2030a7b3811156d679ce2ee700231008de19590cc2b0afdffca46725c9616105036057a9cb1c39be8c553b1753afae18d3b23d6534370409267b67838c049560302047c435bb500663064023054d8c6780a54b91b23b45bc9916a97bb5d5f0990db0b92678eb0caf75da139183c71491df65de9c7445bac480191887502303a6e4d9d114c1df69891f451fd21d194a94c948f777fcc13617d72dc4ba6ed6d0795ddfee20cc80815789a7b674e2e530302047c435bb500683066023100cb2265aaa094965dbf0c2a820f3047179552bb36ff7ee4744f8dab6f4dfe5cf316ebe0e66376b073aef37b90e959f39d023100fe906db920a9d61aee640178e9e9fab789691bf3f2cfda51ffa2cdf51637fad5b5b28627e455bbe17c1610f522ee19190302047c435bb5006630640230160dec8920a20c4632f5fb87d25300dd2748b02b6d564e82f034e26c0527af5ddfd846fe5d2d2051d7af1393b776992d023030f8e04218cd87fb66f324adb2d2b1b049a2d30fe1fc9955cb819946d5cb9a861c63adeaab45c0d22de608becd3334800302047c435bb50066306402303cbe0cad1b2b0320fcd23c2ed3095699d23be1ca9ddb38cbfe7e26f981e203f07c69367289ae481f69fd60ae8ec881800230065336f332d1be564e3fd4c02ed3a042d3bc5b8b946a36e97cbf095bebc5e5dc1e14b048f225f215bf1efbf895da7d810302047c435bb500683066023100f0ff6824e291c7de2667f2f8196c426e873b67412e0440d2c3597c8343119510da4c2e4490e533d2b0752af4abb4d6c0023100955a98f0d093f84a76d7c723cd34f121005d1844f60946914be6e68e4d73cdb1a0f2aabde0f05a78cb6e49291f7b56440302047c435bb500673065023100e3f9cfd157cfe80117bff488285d4e37cc0dd944a614a7fc22805d535ba4797ab019fa5764d4e47089339e0ebeceff15023057314c73908c769c6d2160b674f2d6e5228552ae2ffc515d89d06e810c6b8fa3717cdffca1c9d78dea4c7ec5a72f8f700302047c435bb500683066023100dc1d7f57e9d0de9086c090cd7da5141942e51c949fc8a7376e38342e476bd49f0509297b1aff33898ffdc9af6163264d023100cbf656da8fc725360fa44a6881ed98a229f09f11aa3a89ffca7cac347b353fd76fc757025740e6b5ec2971e68f6a08250302047c435bb500673065023066ea5163ae0d9d21d248d325cf930e50f445c6feaa910b77c7641cec1e96dce8f310be67b89a9e3fa004db08b6ed13c4023100ddfcbcc8c91ecdba9e9cec960133baf555bac31140e389e7f38c23d912003ec9838dfb57e611b5a11e41eaa97144d4ba0302047c435bb500683066023100d87b0e3508e7dc74de11672207f692429c10de44cf6e03f9d1ce9651e9c1d80f71724b9116769bed46d37b9259b1b0560231008255e7a7fc01309c927e93693fcf7de330e17de14c89bf3ddc3eccf4c3c12491085d431475995307c4781521186ac8270302047c435bb50066306402301a58898da3eb0b01da9d664c5e9514f498ea51f4ad681e85dcee06681e393b717ab59f3fdab28cfc7aadd0ddd6512d03023007bcab9743a9a8f5b424a8d7824e0656aa8d7b6b07e485672f4be5489a3b8ad7baeb6914be046fb04ef21335acc68b390302047c435bb500663064023065fb653baefae4b48e3f894b8c1310839f58ddb112a6edff670b30c8c999082bdecb8738f9395a385d2da75f463e9d3d0230346ec6566cbd6e7bb6a5f0bf957ed8379c66d1c683a9d0e35990a856d41be3cf554c5e7580a2935ef33534feaa56c7270302047c435bb500673065023100a7d4ee88cdbe05a22cf33111a21bbd85f12b5acbbbd8c7ccd7f1675d7e2bad95d1bcfbb50b8d9e202897c7cbf90874b202302a6f7df02f047af86747c4ee5c2c87a416e22b2e6178c04c801501080a9a7553602fecef95febb7054136835dfa551d10302047c435bb500683066023100a802bd15aa76bd3cd05fabe82104579c625b1dbe962102a03ba72b3dbebc57cf2b4e910a62f8f198a29abfaa64b00a33023100e75a185c8eca7f1ac09194edc46b5ba78a2548a628517b1069f0ea6a98764352c1cdd767cb0d23c2729189f496848a200302047c435bb500673065023048c95efc6216e978318748e23556ac387308810a0c189f516b3c5ccb2de0b0bf36cdc6815525c02223b19f859367ef5b023100d46e80a0fdc3d557777959f1c5529b276bfd19b9c54682b8e5f5f73e50f173766f8d3de9e3913b24f2dcc59b5bdb76fc0302047c435bb500683066023100831b91531988d74e1b12e9083b30c652f71dd542e62440be1cbb3a4eea20fe4c5a0b4aa10ccd116b5ecc15ad75d9f66d023100a6c4554753599a484ad894e55e9247a6c485a99b6c83b48b4ea602d0c135bc0e21d2599a28aae7342ffb2eba4d2fd0860302047c435bb500673065023100955477bd035097d698cd5781042eceb3ebfe053ada85e10da06faa4b8a3f81596132d3652b063a483503eca37729fc3d023060531cb4cb35a01879017fbdd9fab3536b6761348274b804265426b8c90af4b50c5d7b61bb3cab317a5dabd6df246dd70302047c435bb500683066023100e8190bc7ec072c0c2626f7f294a144ea9b66fcc54ab2517daa471b3d23caee556dd1be6801423142e477c70b5a87ede5023100d171cb9a4349d79b9006dad268f7be5c06f175c02f433483f8e50669c44a986b28a7fb9c9ec668c5e77bb0e84b15dbb20302047c435bb500673065023100a3f188cb0f4daf44117ab386ad6465396f1eade1ea79cbb01b0fc76642678189f48af7f07ee6055d463cbbc1018a1a6302301610fbbcf8b1c36d0a118149b4a9ce125d3127772c7f7c68d043fdf7db17c62950f86f038784a8ab87d70d680ffaf16d0302047c435bb500683066023100df6feb67a6b15c4da94afffacbbcc48e15c5848cd61be8eb516c73f9ce71e09b75c1fb56580276f4696cfc14153ed8a9023100eecee5dd0287af47d5ea435e6def41ae09689fcc00e1c2f3dcc2851742170797a198eb80bf14024b59bdb9976e717f610302047c435bb500683066023100e7a0945476d573a589001cd596da26bb6a93e9c35072b05220bc514caed1f8353e7202c1fb45597ced78b1cc2db7e9b3023100f927b3909857407fece2401cf25feb6e17bf99eda3a78991023c8c3e447f0694ef32d52b9e55f4c3d91da1474cb3e3e60302047c435bb5006830660231009257aca36ec724534e8cb991764067ced8f153ccfaa0e14f4534c21fcecbb1b207f1bbed0e2944d797c42f8928b6c929023100f66d0b0e498d75af1d3301f180196d50c8cfb7fa69aab088712ed8873fb7cbeccf5ac965792ac564dce9c4d42ceb504b0302047c435bb500663064023025e34f7be6e53cf93cfad1e38fc37317b59a4194efd5b7927adbe8f4a5d402aeae5a4491937edc4820601b8b3c5c3ecc02301c02999b1ebe2071c4a9892f7f8b764c6c99f82a793b233a013818a5abc0001cebbc5fc505711bee716e19503f0460f10302047c435bb500673065023100c495a1be1214ffb84e66eed0a4e0961be9220ef4ccb8c9c52c8da97b28cc8c974d97668301d6448f5d2c1ca787fa77090230511f7339f95da1761d4df7aa4f83f5b05fa54f297472387bbf4b63aa721baddbec5799d8dadd5c414238fc1ea897838f0302047c435bb50067306502303a352a5b79d813792e3616b7463926cbab8f0355693500b4e9d4f337cf6933f55461a35ab99549351dadf85865a01e6b023100fd8fa1499acabc149850139f2bb357f9c41f5ef02270b43132a9c305a68f4f1c37d83c13bb8a3c76bf6e4469844e4cd60302047c435bb50066306402300b7a3f43a3348eb0f64fdbf4a58663331214706aab58aa0caf9a620f71a7d106fcc4f949dc101439cc27a6a4665767a702302cbb61e6857d53376c8172492a655310fddfbbbcfd8cc843f0e046edc2940e654d6c5be63e760d82c7adbf32a8c80d420302047c435bb500673065023100b6ca13129ec933f88c6090ba4ef4cef1ccc8ff666758db01a1e7ccee7368c235cd62bebcb43727e4eff2d8432b98ff3102307c82a4fcf84c569660bbbbac577cd6da341252e22f6ed64b3e664c9e49e45a2a96060dec143b7b8ae1d37f37e0b84f200302047c435bb500683066023100f4a35abd07a0635793624e5f6d72906e36fca3056c6a087d693889735f6ab7a548cb495410bf42f2b9e770a209e20695023100d0c6315a5dd107aef3966e09d363abbbdda3efd79aae0fa10bb6b7f7175e803f9474c0784a6ea26be8cc794a053e338c0302047c435bb500683066023100839b4908cbc1f526f99b5d8164f58e8f81c0821999d366fa50e54ee42ca738eca0dd4b3f6add4579c27dfff5fff90402023100ad440408ea60335232dbbeae7f9a0f25b59a40695be18c1f20053b960f27757071c5b4023d26e50a6cd623a1dfeb05990302047c435bb50066306402306d86eadcacdd7bc9f74310896ff746af742710b02a0dd622ebdb160d3492a7365b1e12be9aab761e7a7ae88b525e28150230258438076b2daeba26475e9854dc3ffbfb4e1463c634d8828d9f35915c1fb40815d48deb43a987d682ea4084e9dc2fb30302047c435bb500683066023100e104fac96a578f869b77e25fb69d1ce82234462d9e618c868a268f916870a1073562ca99d3c2589c2c71a2031f90b6f80231009244a9e057467e95d476f2181a2f1d2d824ea09f5feb6fd16950ecd7c29d2bf0500f5ea9a47f7fd565fbac1cf6b49d540302047c435bb500673065023073328a56c5810abacd0a4d77d844ee7fd53d55f95af44937acfbaef5323603be40f1a136696c000990261ee5266090f8023100d906aa39a4659f34235723fe2d0c3e1a26939045a294ae6a4ca557d251eef2748a2aafa860d970ef6b7230d6dddeda1b0302047c435bb500673065023100ed4eb2a66ce8bfc3efda8647165eb7e2bae361287ca0560ca2c2d5f6b0ca50bb709a676ab2c00edc1a4f50a4436c0a0902306e3d288679096d1f2a20a7dec6c768346deded1e8d4bb3e3d5cecfd04f06824a98e27ba664951252062ad002b1efa6620302047c435bb500673065023012226adaefb6f2a2f13ae27c96854b17867c4d320b325c4e06421198a12c57e074e48408439112fbb71b6a7a390c534802310082d6a2175d4362499785760c039a43d5c13c7c93dc13b55505d25c097774ee9b4894ec878562bc2e0cdf0fa189d93a090302047c435bb50067306502301ca13408775dde8792f7e500b2b0d2a94cc0a930c5ed1585a96ea9e93db904925fc240d15d808d665c1c606d879b5031023100ebf943a7d2ad74fc827e5e406721d4ddf4f339d98f277144e7d96abb49a08a3d3e7d39391f8df6381899c34a8ea457ac0302047c435bb500673065023046015abd25e08492f6b1145a357e7e3cbf686f808dc6b2bad3b7138419d9b25ebb2dbca0368b899e801679f8b5be2d3a023100cae989b7f5b734f5509c21b56cb5ba59a854a4c0e6752e2b9a2d921ae5a92fa3637ba12f2c2e89c1ee908925243d1d040302047c435bb500673065023100a6c2a1c0d7bf8e0287885a64ec6c4e56408d2816e22cd9a11351fb69d089c206e1ed10f1e558c9c61e782b32f8428e5902303a6c85ae5df343946951c35513ea09016ba45bbedd3154703957e2572743c54ffa7f2994643d3816589f257d4e00f2c50302047c435bb500673065023100b742c0cc12057d483bceea4c939e139554dcaa9cab9c0e5cbede78cd253fd908ebe54c0ddca56c233e2d0b034100e3df0230518c01ef73b399f6de5996afc9c90b99fbcdc000cbf4eb9af75b32507d217ac1cdede08986aaa1c53c17f70a83f26fa80302047c435bb500663064023040dc314f3231ac59c37aa940a037a7345d2a4acd47f494b5504707fe5c11d1d4d1ec65692abb8ec6b7b81631a315b5c50230475be6e050e76924790f57e055e835e84f7d032a1225af84add5f850f470f7eff9049de18f56ff64b3a460ab7c4b09ee0302047c435bb500673065023100ad82f88433cd7b86c0ced1690f80c205a147262e577e1e78aaadf0e08088b5a34884ed992ba9a49a6072f5b289e9753902303d7b643eb18d77802874289e3a7147eb820d537e137beddea90e9ede3c5e731e2941c8a3e6b460da962f233656aaab000302047c435bb500683066023100f8e15c861fdd66cd8850b3f2b43910aa4f06eab9e56f08bcd612c2aba6088e6c1ada5c1c9aa170593f1836a208d4979a0231009914e8d037f5669f41b3c401525491a36190679077c546a4d5ad009ed7468f7c8486aaf93b776e6f0979a3928a1150cb0302047c435bb500673065023100e7feb8f18afcd4e80cbaad79fe297f52fb3ab4859c92b2aae916f84f5226544f92e78ff0fb394bd4876be35cb062c87b02300a875e46b299b67e88f5592ad8cd63e10e35135a09d2c6d1f78281638d52f66803b7cfd987378683233acf8ea1b3bb790302047c435bb500673065023100a45d83ce64f536b9b92536043bef20fff1601417ba824fc326a942615ef4a9ed8ac82dac0b8114d34101f1da0f17134f023079c4952c182cbba3ab0de019d20224d5d14e6ac938db17ff397717dddd39fa80b466c5a99fb9ef0c299c56d34a984f8d0302047c435bb500683066023100fe78c77c28c9ad7a6810a9b5eba2501ef176051f86515b41e84fe3bad3a7a54e49ccaea0e02274cafb5cfe0011d8719002310085b1e34e42f47306782687fe22c54a4ad4d71893babfb0a7219d43839447b5ba6d9b0e2fbb345ee843ab6cd88f1c586d0302047c435bb500673065023100baa59ad7c0a13d41f84a119b7b56174997f7eef8580cf0aef90af5a14b17afe309ca56dd6dbfa9cfe99ea0ca5c98a20402305355398796ee43c45e28a953e0a34427f6248d7d3d9ea56fbad6f327f0dc0f6ce9b63a663f06ef875b77b3d55d6bfeee0302047c435bb500673065023100b4309afafafaa4a9ebebc8e5e1c7cf42f54c3f48956553ca4f0e0a84fc4b0d0b3c2db6b29181aabc3024ccb078d8480f023046b059b81fa7d476f605138e4c16298cab5f32e390fae11d145e3219792ea5687a2b85fe34565d0f382952c7ac078a4e0302047c435bb50067306502301027f9ee90986f64ee6be7f76a05a2e66dd0534e03619028f5b3477de3cb15e771f02e4af36fc867e5e62899e2c33a96023100e7cf769c3fedc82fc4e2ca755b527decdd8c479a933f0cf26cee420197f4da2b846fafecfe515caf6d2d5498c9de68b00302047c435bb50067306502305c3c827e8836b8ac15a105a49b6e2272de7c8eccb43f614aa4987d6f61768f8aaa604e7121252215d6670aebdae8135f023100a7caac4a521eed688f7d777ed57484adadbd26f1902289f5b2944496caf54bbfc619281f07ffd9b40c1595a5aaea1c2e0302047c435bb500663064023037d6cf5defba9dded09421e6beb2ff4ccd54b12067e01da38cded0d62e82e49918b05804eeebae6494dd22b79714c0b702306dd8add677d6a735fa7d954fe438157ec487a636be165cac13968af0774697374142dd1fec8ac8c7a4d887811afe743c0302047c435bb500683066023100bbba601186fc5c5ea37e00851a41d8b771be296a520e8852917669efb84c7df4038ab472ed3d7816a5e5bca2c4ddf6300231008d0ed4b11529720057ab998e5f29c67e98c98d27a8c01e7fb543a846481e6a822e4f5137b4906263cfa9b12d29593d120302047c435bb500673065023003466a9b43eecb93914a9d987fa60f5f43db8cfad23a947f56c264bf3d458694a400364fd4c3dab8d2dab135f055a8f902310087f13965ccc5daaa701efe6fba15eb10928c999b3610551ebcbbc7eef13fede351641e1c4a75fc91c7ab24a9c2625af70302047c435bb500673065023100e5bdfd31d21cbbcd7a4e67b7f7ae0d63bc594496ab490fa58af55b6d09e0c5e27a75a2f181da0851db931959d022f7a702303eb3b7d60a53c807216b0517e31009e880d7cb048b7c68a3bbec266829ed00a8eb2e72027b20f30787e8250a6da70b910302047c435bb500673065023100d8cf7e24f7a230e1cb1600087f73517bb14e988945c7d4e91d41eb96e5faf56c207b8d2719cb46f622be146b1509bf5602302f4e6e00590ab79947f2178ee7634a5d1b2027a74515411b13ae8f471978df452874bc27b8dedf4edb73abbe46f653c00302047c435bb500683066023100b63be3a2b7eee9b60383a7d03dded7a7ad8f718b71b77b30b6934555dd98306f627bd137f3a3a4b6136a73249ae9ff53023100a597f6686f984dfc65e68aea66dcb961d95aafcea196df02e2ae4eed9b6ba8cb1b65d250ac89b57fed6ce60265dd37c80302047c435bb500673065023016f35070aeb785a4d425b3c7f8f3e681157c4d8dc49643bb6b6aa4d1580dafa23fcf1e1cbb397a174a98735c7a3de7900231008598c3fb0545c868cc07ccb481947e3d16912736a4f1506dc2f0f99d28b9675663715b2c8937f93a6c47b3fff73f6b4f0302047c435bb50066306402307978f2e9c6c0f26f110451c134459656750c17acb13112641eef79871a76589fc3542264132252cb5b637cf21ebd6b0402304a538e2f004b09c938c5babd6a97591694ed53d9b6b522886ecb8d20de0b707ab2a6937e767fecba18f0aaa5616b16360302047c435bb500683066023100e496cf1264f16850c3c2d9041a1c297f927f3c93502952ce351d7375721f8bf5153576b8abe39b9290ad3f3d2a7ac2960231009f2306a963c552c14f20af3d23a25672e26b9e0524f4bfe5ee88546ca9c406738a249c4233b17682ecf5afcd649e33800302047c435bb5006630640230609790e60c1c33c2e1c175f29d13154079847390121c96d4c69abe533503d4563e640736171e4f349c4369370662a1be02302466d8f86a898b7690dc14373568b1b4eaf08ba2d30f31e0f771970c70d3a3842a99d7f71423622d5f71066fec6c815d0302047c435bb500673065023100cd34fbe3b7b40e28237f10b036fc9a0de62eff4997394c75e7db52afd5774a556d199d3d6e33ccd8690310a9be14864e02305e85b140a6c248e1b662f342dedb3fb49588a39c6b039f5530f2b1c0d8ade5fd5e4e64641d48d4b3ee5d044c9f28fc8b0302047c435bb50066306402301ded74ef8feb01a2777bec53918c255507d20fc3ee80811fe3379a03f6957630b6ea2c06d6f7911dc27aca7fe726fa9602304044aba8bc474715b3eb7e78f2909d4c5af455055a38fc8d4fb5d12c33d4c287f68d657ce756e451c3b384da72fef7fb0302047c435bb500683066023100c34b07feed902a5f7555f87580bf194143824140a180feb58ab211f46e8314b689b215ee8268baaf83a2f203c4e47b96023100e35035dfc941bc44caa8c8d269548eb4d5def50233d3c8cf305607bfeee2cace238edffe0ec0c8a45b083a363345b8c30302047c435bb5006830660231009d85f2c15889b735bd999508a7915ed23cc7b1c200abd9daad887eabf9932dbe2cf7da392f08dbb58310cb2662fdfeae0231009003933fc47db9ac28ab92dfacea930af21b9312a5ae0be8d1f6e74cd7c51d7647ec2f5c07716776368a2d737fcdab410302047c435bb50067306502306f4d12f65d4910f69940409786c53bfa8f829a62cc2533b034c7d74afa7e0ab8b81adc709bacf68e7e4f132f37f8bc34023100c6833b293e5b407ed74d01e9a0d0bacff2a9c0ec2aeed2137959fd1c32fa04f5e9131f24db88d3ad5cf63093de30f24f0302047c435bb50066306402307e74f7a51c86c4ae9ead17f1ad070da6b8ff6a07523be4b35dda14a4da3525fcea669ca62731202e1a5aebbd59e8e29e02305fa8ce18c3e969873dc4be7555b6648608cc36d9811aef21c62165ca2a7624085c7320061d798648b24cfb14f6fe43950302047c435bb50067306502302a2e2245fd6088f00ff2dd49d32f7dcc47abbd0a8496985d801cace48eb3d172198987c40aa369d2301078c521854b0802310092a813e2c2d72450abae616affd6d4ae7bf4391ddafeb31538f588cc33b96ba28425a3c40eb06847e3cc6600b6df51790302047c435bb500683066023100d7c1e6e862c0ef02f3ea2bcfc1aed296788c56d28978fd531c1f02f62970aef0b1dd30ba0e5117e3773f6d8899224d93023100d40994a35e4cfb31b44ba3e837a3af443dbcaf3e9f56cf9525a75369ad816f6b9b1d2d2eef0212a10f23ab9635138f760302047c435bb500683066023100ee42dd4eced573680f41d03f1359b1c234290b1670961901eececbbbaf77a2a59bc43206b66addb7256023646b31b0020231009a77b96ff9f618713aedda14d596785e10f1873a78defacab305fe2730ce177bcaf5d980e1ab6eb3a2c146436e7231b80302047c435bb5006730650231009c98ca21851de27a6a6aea80f3a09652b556616f0cd9af898b6ab66e5aabe02fea77721e0d864af21731de4503e6b9d102301a35c2c7130b6fc9533635089af311472e05cc82f24f47c12e989dbbf173905de7420e51e9cf67ad007b0227fe7ddb3b0302047c435bb50067306502307cbbbca1d1cc0b80938901c96b882584c16a7296b568107936546f9a1cf02e047ccf3cb4aee955127e0b87b852c67421023100d921bafab982c8a18fb850f5c70bc9d854bfe0eeadebb1c508c0eb66a4a980eaae2fabc680ce751ba1a079d59749ae9c0302047c435bb500673065023100d5d1b2f719a7d33eca478b81eb404efcbeb82fc8c84bf04f9d9c5afebd95869869d17fa34e6513256ecf6e5dc98bb06902306ada01c9e986d052543e405af4b458317b3c9914d7af75ff2cf79d7c6d145689b236e3af434b3b67b3ba7af1a1fb8ddb0302047c435bb50066306402306f924322a3e3e7e89bf37347c60902c1f60fb41b82aa98529c64c0cbe12eb1f72f79bb2ef2765719ac8ac8597e862740023046520db2fd3390673b99aa4309ba5c0449b41d5d6cfb5b84be9a0279d8ac90912c8ac0a952e0af970bc6398d3a6aad2d0302047c435bb500663064023051ecd9edf7927a68c5a25cf81e8788a8e8a9b4281fdd972acdf67a84dc0b098349a5456976c6dc98d40efc53b621ff61023078c2aacee11245be82370252bbdbfb908c4b109f3ce275d67a515e3cd1458761880c400538cacfa81fc64d22aa2edd630302047c435bb500683066023100c80b4448cb985e11d49d2dca0b3fd9e97a2d7062835b9dd61a7332c15ce5f232f0c21bf92672440738603bbdee06faa5023100fe6691d1acfe3ee37677eb0fa95b563e2656fec32e0dc01539a150eca3e65d780a86a99d1b92a4ea030825768325c8720302047c435bb500673065023076d34ea9296120afebb41279518f502d91432fbb8f28c2fe72e248dab95d1eccbb6e2be1e81e92f7b697418a202f64b50231008dc28022eba3957ed811186cd1c62883253252715b3e90c1a7553386bf1af91628a3247a2c163e98938284f29651c7910302047c435bb500683066023100e2f86a19ce5bacde0d58c0acd8a1450c5329544799d1f642a63bb19be6852502982f8b49ed1c1b17913588f89052eec3023100a22877144b9751a58a4728762fad330aa3e16d4800d52dce4305043ebabfb6ff0b93dd38ce13fbfc4e9a4acc88d20fb90302047c435bb50067306502310097a9ed7666a489977d09fae8580a83e1a4c9cfa3d5fff67ff9fefbf6187ee316a6737c040a749877382829e45ea19b710230529dc35052a8f6540189ad0f8261dde346ae00898983aacb10b40f6973eb2a16b7280916506b664dc38f2534de2126760302047c435bb500673065023100ab40e82edbe5d9065055ebccbdf063460a24210b8b0e69623e55f938c15a2e3b372922a2d39ad93a1d317321760d5887023011923c4732ce0995f8ac6cec227bbfa9fdb27cb797afe1a62934fb130a38b8e22adee1cb185bac6e5eff6b439fe6b8c60302047c435bb500683066023100ca7395b79e4f926efccade4bfcdf635bcddb4582813dcd1729d2572ac199cacdd253f5ff7140f2ebbedf24b647ff2d24023100b314cbb1f9b92592493f3586d6bb3c3c7552eed28b62883083e8effa7a84284613e960241a6bcb7eb846ca030c0b66d90302047c435bb50067306502301a657f2fc08fa18d3328e5d4542e105bac58db3604bcfee7b1a9f8dc536a9563e4377b188c9052e2c6aadec4a60678d8023100e792becc26a4caf2700674242c508db7bacbeefa3318cc1bb3498ddd64035f4b4215de3615658b3ae6b4f854abdecae30302047c435bb5006730650230417a9a31e6a6b99afd630fdbb09c4008fc0d512cc36445a068c96d418c89672e44399bf1301824c6f7d1f7059bb094a70231009a42c87e0e158f5af614417c09e66f9683a06d0f77260138ac255c9924ecaa1fe58620387616cf9507a62f5bb58562200302047c435bb500673065023100d52cfa9d6235637baf65b6bd7a164724ace71548abf8c99cc667cef38fe90f2a0e3be02c15b77cf9cf1bd2a745e7d69f02302597a57262dc62130c60e0d2a1f7c797c9282310a42dadb88df2621bbb65f9e047d49ea5c1ea7689f25a88c730e1f18b0302047c435bb5006630640230511309361d7cac3ad15a5c23eed7fde69fef0ecbbfb081ce3a461c08590962d7af6ebbacfebea76a54cd1e1f440d58cc02301d85b9311c53b6f320dd401c1b1dc7a440e23755bb0f307b839045d7c4b7969a20386084cfbb818926f53bf989a522730302047c435bb5006630640230642af5b177967e643c258eda87b43e13af71a8b4d2f58a4d53609e175f65aa103cd9344477a408662285c4d389d0cdc202305c668765cfc162175d884d32a34a932bf13f1dcb072ac1d40cff40f3e0b6a91821912409ecf13b0b1e544f75e1ee4f740302047c435bb500673065023100f58a32ab3f0f6eeba70a50d226c6b879ac47009be6ec8338fcfa7e9aac8f941a722aa0378c0178dd3e8964f2561485e002305077481b6b0d847300e8782615cc2ec34cb829083bac69eb9cb34022a3e4761d6f492d706f6b95df45eb4280b71c55f60302047c435bb500673065023100fa17585a57fc25d90e4a16775fb9ec6916fe685483d44363a65d8e32ac6c005e1c133c949a55f8b5cb6ccf5c487ac38b023011f4e232a0f8a04bdb45ea0afef7331332a32ad8ed3743facba2f6f4c90091cc7ccb0bc61736d898193b3aed77fe04750302047c435bb500683066023100ba45fb5ff2ac0836149eeb30230a6da290159432a6e96dcc5e8e72671a13c0ba88827e8a602bcfaf99f4b88f269f5629023100902aa7b805b36a10f231b423b55629d7ba039d0d0acedaf3a51d04e991a7404c0fc50c93ae0e3384362f0e0058742a000302047c435bb500673065023100d59e449280cea831beae4982261dfbb7cceaaa8f71e9f1310a35429c3cf36d2403e96b4639fb8a06f077c10c50cd493a023074d1482625843fd96dec9fa0bc60ad08f35a50031981786addfa41ba1c86da569d1075fd2c71312ef8529f914e64a26e0302047c435bb500673065023100b6f60067a89bbf0961a97ffe87fbbec42d08d775ca784cdb40841cad573ea872c14557130532c6585ad90435b88add0302301f824c9c1dc8e838473e69537582749b1007635d1c1b44437ddadd72568b0ec08faa38358c54c0f612beae556f0d959a0302047c435bb500663064023059acd19a58bbdc0104f7085b44af6db389d75f34fc44cec8f828192cc1b5fbb9d1cfc7706daff363fd57703ca90cb65902303601a8c6dc657debff1956b61bc93356bb563de7243791d6a4e0a779e73b5bad7310c0b383400e0d1d683cb082b04df60302047c435bb500673065023100f0b8faa2ae92094b965615a6d6d84152d212300622f09de9e71d9e4a301ff2d191d96c6d9fff96e9e855b50eb32eb1c102301fae6839a4ac1e199cf51382f47a2c19fd28619dcf46d359dd24487e5654c108631ca6b6745f4d21ae1965562b349a190302047c435bb500673065023100d12975f8b7e168786d310efbfb8eef75a1d29769ae53a2c0f76020a16c1292a2a658efbe98d6c8567ce5c6c8108b255402300aeab66d9e5d0e2afaf558ce960cf7372d14ceb4ebfed982af2b9e82109d747e267fb2c852e59f978d1ee11be8088cd70302047c435bb500673065023078592f5a0725510af542b883f4c2e7df6fa542410767293648cb558797916f74cf445662b9ee5c24fc2fa67cce87205002310085e43a70f2aa7c92ed8594ea21818b2a10d56c2639e2905d9120fe8b762561976e07073a3cfed2714fff9786c9bb08430302047c435bb500683066023100c578d32466249c253aa6d4ae306c5dbfeb727e43092b9cd5558f43dcbb6b1cbcfa445c8724eb1a60c798610c659001f5023100d004bf512fb9e5d112b6b59cc88177e26e5f57d214d83c1c437be38cd1bbf9e04aa110509eacf7792f7c64ba90538aeb0302047c435bb50067306502303e660bd18bb7551e74e2087515ef53ab222425d2bbdeb7f06d08fca64719ce4af15961199ed8e7fb50755a28128f9e6c023100fc692a93fc965bb34f1f23a03108441baed137d7a7811e5b8ec4e1e1177d9bf9801bf56b240a9e489cc42a17313e48020302047c435bb500683066023100c8baf680b679925f22c9af2d10a866053aca554527248e5e12b21776ddac9bb231cc611fddf0a0389095b44da29144600231008b495f2092d898e2e233b24585ba17503f6361ce924a550aea6e4f1bc821d6e36c12070299db928b0933661d0fcb77d90302047c435bb50067306502303cf605f4944fa7950d7709167328e814f1c0e0b376a73d2a8de46268f043f5c495e56bf0dba68d32cd0376440c4cf2ae023100c8c0e92c4808394939809e1a97ccbf88ad79d016a7be8b33f4b0761f57630a34143b7a4ffc8e3235d3fd2daa8faf29e90302047c435bb500683066023100913674ecf39e4cfb5a227af0c2d29485e711624d06f6a8a41d8db0e8b5558d8a71933efe3aabed8bca862b1a6ead744d023100ec5635100b74b213b48caf6d7218f02c04268882f602b0325a831c2339f9ddb45b29605f4c49e7268df9cbd2ab3716c20302047c435bb5006730650230639a2cdf19c7880dcfeb88dc90491b1eb771dd402c9045d3352a3ce05771328d0d49443ffae5e55946781af34db1da5b023100f7b8ddd841723c9925710ad6ac68e93a4c86710929191dd46a2c1b24747739f359ddc644bc0672ae0c1f12047ca227a00302047c435bb5006830660231009d2da6e71135f4a2294759418ad5271cd9c482e8de5590b06cb894351699fdff9be166d3cb8122b2c60565ee366ecc39023100e0a4d41d5485482d74131d4efa2e86c600a2e3d68e759aed11fc30f769bb4b953c5a9ecd394d5895a324e678f576fb860302047c435bb500683066023100a2f62001c9b43bc51f4ea730e218e0276a14ad4ff3a4a6ba2091f0719c07d973456041926445ab0334a32bf72b8560480231008236dcaaa0793b9bfb8b79796d06db28eea00be9c6ee9b0309a9f0eaabfa1f77029271f17effb8908ddd449cbf332b8c0302047c435bb500683066023100eb0ff02ed2a096a7a754c0ba32eaf78575cbaaeaf98bff4c6efa248011b9046b09ebf35432535182af37ead28ac1d0ba023100c98bbbf8a2e52e6df3bc37c9cc49af901a7885d79554cea9988de2ddab08cf2bf6eda65c928008927b7b22a7a79428ea0302047c435bb500673065023045868734387ac7c8575717e87b5dfdf5097af8622ba15e13d29edf510b95d282285d7ec985d025241462d623ac313f2b023100a1a4b9aca9e3725b490a4ed01970655da48f5efaa48b5105e1a7526853aa09a34cef1d384789384db5a9c38c3007a0ae0302047c435bb50067306502310094805bd3c5e08d2f81d7c206acffb8727b6e9f7e158be0fe21f59d7ae5388750e690bd22a615243b4dde8af213deea9402303e3bee13d51a7550936fd33fcc09d86b84f28080d93dca323fd94cafe7f32c4580033b30178570e02fe82ab5ea367af80302047c435bb50067306502310095769f5915c1c40a4ffb06cac4ceadbe03d1286f487e15ddb2c2edfa86628309a4d1c405fa08b48f354e22f17922feca02304a84e5ff2d24444ac36d92048c49641bb2dd2a5dd52004d51d2b41ef318f5ea906a6fc6195970347d5ace9944f3804220302047c435bb50066306402307779052976aff4c65a217ac990aba2c763dd47166584c03f82f4977218fa740ab29bf341b4a4ebe1ebab813d9aebe356023049555f09cf2334e93bcee9fe91180aa40b01f77cb02e136357f71918756e271e65278b73a11c44c4dff2e6ee72b714190302047c435bb50066306402302d44d1c2f8f1352d1bdc848fa79bfcd5d2d616d69f2057b133d6e372f6b6a138971c3f4cb532bb3094c64eee8d54340d023050f614354339c5409d36cb63f94913c4c7f84e5d3d1aead087533954be7eab6ae0846a5d9570a09fe6ffb9f3a613c4d00302047c435bb500673065023046270794a8da08cdd3faca34c7d172038e97142e15e2a2d28515b3febd93f07112592d8bb99170735ba0d1a32f337ca2023100e41b4b4797e4d31d0538acec747c66f7bad92f0868cfc3b27be80e340f34c3a5890aaed2f133c4c07bff4dad678d9c3c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c5d122ecc33b8ac23701a1b8a0e51818c53f5c28958e1d784318fce7b48f8ca45c60d98c605fbde1806b5550d08512eb023100dbfac831f958551a2ba2b31f8f3575532b0428892b8a8e41a3ae2c49284b7182f5358af86cd85db3baadb3fcc4ddc2bb0302047c435bb500673065023100eb23e7130f6a2ff6c117169dfa8b50b350010b8ad5575a7c1de784b5e25bf1a67b8f58f5fc7de075e83e14c8b6b268a3023061a3f70ce7e041e640befcef1d8b24b8ee7c7ad51fd906926f9e0f93c1901c22e0951db4292d45cc43533f82a645f27b0302047c435bb50068306602310087d46eb7ed59ec02bc9d0c12746b5d19885f7425e05b0a2fd62ec2c6c098949d8ae88731a3accae42d3efff849889554023100b6545b3cf1451e05ed3bfa02659618f5962fbeebb23767e8a28585e1cbdb140008b46dd5bc3aef864de16390235134f10302047c435bb500673065023022b392cc83b0f78555b395ac6ac663e7b06274b6c96faafcbed6164256e34d86eff8c30f04e3860452012dcffffbfab1023100d8cabca721d265960064dc6f3f5fee7288b607b3e0f5923a6663770f4c1b08ef971a368f6dcc54430ffe3f852852ff3f0302047c435bb50066306402303546eef1b8fca2e3d3199ad84084b27147ca4e79883d4838c6da54432ac5a6334536d964fd48b8ede3220c5419b636e702307f208bc16bc79b9506e7383af8a95a0e3c8bd6c2731070f5685d6629ca78b49cb9956db959ba6b8e2367f5fce0fdedd00302047c435bb50066306402307e955cfb4c211aa7ef92433c4a5ce304004a833c2111270f0e1ec118c4a6c3b9364d2692d39d2abd8a15a6b988202743023059ea3dec728ba6836f4d20efd4cb86bb11171129f9ec4eb035ff94e9b11505bc5457077c388b02ff0a4c7dfae855cdb00302047c435bb500683066023100da83689a417c0fbfd095d905f000e0abd034eacba460de3cc5c8b116dfa83a1954ea8dfb1bacb314038c887507b8ae63023100e3bed8c6342307f2caae6184de40c3318bc4199d55c65d0fb62c6bf3fb08065ffcc4f988cf76931ff554dd39b4106e2b0302047c435bb500683066023100b72c077349870fc32c91b6f4ee788e27744c0207cbd3affec1be5365b8505372279d4f3f4298eed01eeef6ce8ae2a6f9023100f95c8e48759862cd943d0c38c81fdafd3ecc591b528365795a6efbd24bca2501a2adbecfa02e17413689b806e8f6da190302047c435bb500673065023100a430e50c2a88838fd86315cbe7efd13ac8a4c08cae88c3726826e5c0a0525cff9d0f1986e8b0ab6ff233d2adce07c93d0230269e53d5bf57dc0aaed8f2b143354fb974bced38459a934f6dc9f84abbc1ed250fcde1fd4c967ec830b78b46b161cd640302047c435bb50067306502300fdb36624b437cb19596c3945363391f7bd4659f6e38922dbd5501da8543d620cfb5dc01c53c67579f0b7c989abd12df0231009fb78d868abe7843c77e28a9af353b04ef7386e506013c5ef9fbae825131463c83829da939266005da04d6b6f83ace910302047c435bb500673065023100c8d6d53c68213a518ebf18e4695827d311ddcc24c80ca6dd544bf68c82aa9a80e052bfe2e8b99daee081cb34a0f012f0023079e2a058693aa9aa4eeb568b4ce5ef49580320d64a00837a3c56349eae12c166f5cd618269aa9184c29beeb36fc942340302047c435bb500683066023100bdbc8ac34295b0d415e6026586abe662163f7b32423bcb8deffebca4c0d0da71f3cff160ac888a1f7bafe6008b2538da023100ab86719e4dda6c2ae0d7f6d4a87341d7858da5930ddee820374bc4b0223e47886ac80435a649c715f6ed9162e75d19ab0302047c435bb500663064023036ad31157169de4c319cb47256333b5b74e9666018e35a5964890f8722099d114672209555ca6fed9a41d311396c590d0230577bbfac209756e0c2ea19fc5631e42b79f0a768298b5a784a6b5e02daf6419b571aa5bbf0a4201c1a20444929ffc4cd0302047c435bb500683066023100974f0c08a80d5e20696e88a1a9d8cca96007a32f6aed63e380d1a072c9a7d08063ad77fefee1c1ae819d07f1e2b8992c023100bb840959603169c4d086084af32a30c1ff952fe9c4b4d0c2905198068649f78b71095bf061c9ab16177f546f42dd43e40302047c435bb50067306502305557a3425d2c3408961720e62f63afcd4efd9fa46d890c62ace5cee1df6712fa76b8bdcf67032a41dd7dbcb539e48331023100d2a0620aa66bd02159967d12ebe246e1b8054eb49493aee09c715ed16c95086088a023c0b81a2722f1987b7000efe2cd0302047c435bb50066306402301f7263ae597b0b5ba2270ec0b31616ae5014895ab27e8a57f5ef78807967f93da7efaca8090b692e351f3b35aa43e07902302504cb3c7dadd65c7d0f9545442a8421a03a45ae3e7491b83b86fa38d56db12f50754e659b490e71fc97c7b7ddfb6bc20302047c435bb50067306502303445473f2551725f3914f9b25799979e4d10cfd5975ec5aaf3e522d15e0f09216759059b1f8a310389f3ba2cc779d0aa023100b53c04c967d24f02da4994bc941870e2c3211eb18057dea247d3b8da641d6c3194f8345cbea04d2067d8c79a8cdecaf90302047c435bb500673065023100c403ef9098d28bc151344e9ad381c2b5c29b8ad68b8b62539b8ff2c03833d616aeb18b10c532deb66087b58d7411346302301679b2e90c42484fc4d605ff69fb2d4d895404ece92dfb9f2c1028e28419bf7e780acb3732c68c7b118f0eb207e285530302047c435bb500683066023100bc7a292bb0d8378d898dcd2b494f9e9091a2828e6bba6461183d031b110a22ae6e815c4d3b99cd4e1e9bfee124cb7aa5023100c07c29880b3226b4529ce8a43561aadd04576bc7fb102be42b9c6c922ec3d6771ab1857598321dede5a73beff82251dd0302047c435bb5006630640230013f5b25eb6b8a42c3cb78cf3fc7b8e16c8efdf79f1fcfdbf1d938182c7b30951f0872de80dffe5cf8ae3ad3786a5eb702300635d9d105b7ca142634b21de6a147f92fc14b116ac2ce07818f284207b1bf993fed55570fa270e6e689476401f8e83c0302047c435bb500673065023100eec81c0fba2e2453591f181e90e6735aa8dd5d0540ba86a064adb652d1cb853325b457be65388e0e367c04724a2a598c023064b22b5a2bcde95d70ef7c5dc45d96ba1f2eff0d5b17bebcf2351eed5d2b8cfc616630d41f8a43895ba295546ddaee460302047c435bb500673065023100f8c2463bbe50564eb0f7d2e71effd62b1a80ddc72aff3a313368cb65839101d473361d6005ef6ce9d6ffec54c0d401bf02301cbd91de0a9e275942b104591416a4262be5bef1ea0d5c147372c1741582b2ac5fcb2fded0c5adb7992bf428c7bb272e0302047c435bb500673065023100ac93f3b3a37221af708dca64a042832120d6d0855322bf253f49d2144559420120a4ab949839fc1a1a479f48168fdebe023079e345e67b8319fadd0216567d3c9ca8cf772e568ace13c74156588c50a902154869a051e9501f1fc2f5b45df7fef6c70302047c435bb500673065023100f29969bb8ed084313013de5a3cdd771006daccf6016b7a623a6c3992b8a9bb2a4be94e08469d42893170e9edf35b4c9302306d9de5bf8bc6209f7827a49d8e8a8ec7c062b25454b8a6036639c435d092c82471022c698e7b34c14d9a08f36fe1ccad0302047c435bb50067306502305c48cd36c3943c25fe6faa4b32a829c53d01b7bc36e0fab5f9c59c0510616cb2a9874be199b8617bff0c89f7f4c7462f023100cd985dc81cf146f072d10e31c8700a64e961db9154846bcb596ce1a9db8496844f633d8826e92d1114ff6c42544ef43b0302047c435bb50067306502305f4f4dd1280dba76f85fd9d043dee03eabebd33966c64d905d777a6d72b9daa1a721ea22e6ff869c88baced6cfdc0c36023100969288e6e1d6b747e36dac1a28ee2ce29f42d3f7d58321a5e11eb8b6f64fd27361e25352b4a3c304d23432425b17f91f0302047c435bb500673065023100c6a5e2256e552e3480f4222dc533956bb80e704757ce582e94b5841760e1864fefcbe915729c0fca39c172196cae052e02303d4f9bc2d2061242e1151d55cbea329dc9352de0dd69f263ac65e8bc0325db1dbdb3e24853895d69da8168003e726bec0302047c435bb5006730650231008b8d07058e7379b5d87fcf278dfafeaa6232b9c7d69f816d62962b296b831f0ced10a8365d80ae06b977c8dd40d913dc0230518a9fad5d9748d1d070d64968b3949ecd8b2eda2bbff867379b9ab7140b02f0973865ccc029e4c05b6d381cadf1707d0302047c435bb50067306502302eb9a324080da9537ef1eece95a18803f0560ccf5facc85ea3d1a01fed5ab9c75c37c1a9e2adce7e6703d47e7b725525023100fe9a59ac6efbe77b6cace1de822aba5e3ac659a10c442412fcccd2d69e08794538197fdff4b021e9fd8c654eaa3adff20302047c435bb50067306502303619bd479874eace7615abe20151a87e716f32defdf3efa86b33f4c4b09419f97251321ef87d138a36f1fa6105b12c6b023100f40f404359d72fd4a90d93481b4c9ae4007bd554c399dcf0370ef58f7b9c24e5eaa934714a6f4e48d4801e02d2603fff0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301d421940fb2cb973a69dcd0b902048414676875e30e2e458be6c5119f3f1a7477c17e41dacf405e93ca33b919af0ab01023100d2cf868adab41d9f7ad4d85d7ef0a2df65a86fd75c239c4677feb6f6e2c1b73e5a49633988083473217c8a37eb5472cc0302047c435bb500673065023100e17f23e38b1286a5879affa0aa232492e3dba0691da9535a37693c2461d467ca239380dc14617f095454f634fcf6da93023048c8a9ca0f598e65cd6d9db3074972b80d12f2986ba8ed3788d7284b23d1e0fa175678753d58b9246f0d18ae087c16700302047c435bb500683066023100c1d6aa05b569362805d18ef6a9f8c5f4b06ef1a83d50653fd855cb89a1f96c52c7366b397efa8bd4442fd0f1ed3f7d78023100e7f1c95edca658740b1d121a2da8d4a4cc72c3094173047d5a6f7fe541bc2ed35d8ff8194e39f158cb8e72a1239237260302047c435bb50066306402305a85414c7bb3edfffb701866eb35b653691ef976a3e0c6903285fd4f8dc805578fae473ed94db2e8444adcf83c10adcf0230771ee18d35d8bef2eccb9190020e8847d6b1b5c80be6b5ae481bc77b45ad7fe9efac23256bbb05197747f9017657f8360302047c435bb500673065023100ed697cd6b80d1bea50302aad0789019d8470197014e429f41c3be21f0a388ca17c8d44a2e0ad1a3bdfb14ae90512be9e02306679d942af38d881364645ec650a82eea15452a662a16fcc2558605e9b84cf28e153b01205414cfb6efa7827f84cf7db0302047c435bb5006630640230203989d39211a9535706d6f6f93ed21d91382e5dac7c334964bf670d9978ad75bdef6ed0f621fa344a40959b4f0bae5102303be3a245d318472b6e1d926922971ba0d21666da6af88e92da3f3262d9bd8c92c6eb7a7cb4c5a8ab2710967cceccd5240302047c435bb50067306502300a9c78ea213c56849e61ccfa357f0c6b4547bcd0ea3c1ae341bd6dee7c4aac545a4ab5ab0d7795bfa6ce89c2e1fd3e11023100ee1f22e6cccdb50cd38618791f691b40e14dc3177204b29e984352cd21fa76bd49a0f13fd31b73411aed6423d2bcf4740302047c435bb50067306502310093df0233b95c086435470aa3ac5ee8c902bc5020b68c36baaa8f83686c30b282f08bd92ac7ab05b6a14e1822fc5c936802304687061a6458955bf96efb8c8223b7ee65355d12f2f35e5551648a36222b8a5c45be8928143dbf5edcd362798152f0a20302047c435bb50066306402307defc2689aab84fc1f73becf4a22a0863e5a67760033a52d6d946b8124f715631e88f69eed2889cc6a779b11a06c598d023025feea44db67e72bfe9759dbb44e1f6a129d601554d51e650334b487c6830614e5b7ae97e34f016e8704e81c4389435b0302047c435bb500683066023100bac5c828ea0481ef65ff1044415266235213f03272ee58724c7c7687566afe2cf280c69e0c55cc92778e63723d0b67be02310090686e53284e5a52c225a9ea0a12ec33233280ba8fa9891017df3a70c4cb628f637e0a360fea7811bb2da4406715dc5a0302047c435bb50067306502306f3b549a7379633253804d0272469fd62954b1ec88450906e058f18f4f900826e81086fb03120bb66aff35bbffdfbf97023100afb14645aa053091d6deb22ffe2775d2da3a792d76d4c1661157c3a39acb399a69de289c876537c5afac8b09b56cde700302047c435bb5006630640230750b9c78d5d503cc98266e3b560565d292b2e39d03269f27eb1478c7f1e828b0a07250e916d5b2041a75da24ce882ad702303f37ae40d3495d5c88a69ff631239d51630b65cae91fc8c6c05d0bf1de23ae622729f001d38d59cbd2d87b57630a239a0302047c435bb5006730650230375ce5509d58f89a17625f7a87fe656a0edb5f1528891dadec91af21cc48d9006d9f6da2b4dda44c31e30b9f9011e20f023100c907d46c625a5c53bd60df4b4bb954ec3b0c1fb1ff871e7d40a0ecb1e0957afd7b702f06379329e87f6618298fc0581d0302047c435bb5006630640230542ae059d23802bfaeb4b640b7a08016ac916d66ebd3296631db49bcc584d3b89cd5ffbec1d3c29d7637297984c6df01023013225d1aef8e30c066e1bff926e57cdd309f651c318b11aeb11a5101283a394070ee268ca997ff2821c6a90320064f750302047c435bb500673065023100a21aab9156ac80d1b7c472fe7f8eaf1f70872bfeab8a7e4d498d3b47816be92df815d534699f25588106f6aabd7e941402301c11de762dc2f93f237815ff1e2a8f8e4d36b6dc19778944d739566dddda0d0a47e00988ff303d8c42d3f8b404415dd30302047c435bb500663064023023f449cb6a18b4f5a2f9df9f4b53e9e238436f57a71377e9bde58a5de0567d2b0665526047dadd79eeba2fd61953527f02301b0e17aed971249bf3406209a1ea60a02fb44a1f031783a8d05154d68899eabc91284fc4cc82b811a07edb1afa090ab40302047c435bb500683066023100b088c0ed5de3435bd561ed0cd0bcc443a5f1819ef75a14c5a334b2bd398a682c28024390aa623163af6c008bf92dbcdb023100d088d6a5fb4ba8d4cf33d97006a1fd9e1267aec07c24e78c0df44b481dcda6615f34a4d41cdb847475d48f997516aac50302047c435bb500663064023067589787c8a0fb8ea7e53526d79652ff0ab41fca94589b651e3f67ea4c2e987dcf8dc1ebc8442980013adc1e6374415502303d5bd3684f9bfad5cb6cafcfe3a4636bea0fa782ab8f3d3101ba0356cf4f8a50a69e8187df549e34a13d7c7877c80bcd0302047c435bb50067306502302aa301e8f8f9ee8ee7431fd127741884f7ff905c491228876c240a498af1303d4c57d5903dc9fbb058fd2ee5ea7ee713023100c2ba1c659a8e1e2a1bbaf66c955c420dcb0637b91c12a70c4ac38967988eb337e7c9fe7516c50fab239eab3c00684bd10302047c435bb500673065023045f1ccd309d6edf52e96844abb918bf9f850149e5da2c37515d57ea5f73c23bde06e368a966163cd43a99ed52d1c54ab023100ed690e4ebf132f83986c64bf4249ac4658d71ab14c34585fa3e321b09e860b2b6d88f4046df99635a70455a26d4e04f20302047c435bb500663064022f2aafec20962325b72b0ea8d529062e80b89bc563dece257fef6e45e13e70b369314bde23d6b4ded033b5f36c5e400a023100d3926a9cb6f45bdb43464e9097fe5558faff8440a096a9d46b3a74d8ca728deaefa4c3fba414e65d95ea058ee26ed4db0302047c435bb50066306402303f815ef17c8b5391ae3adde24750e462aab507674f751849b53d2673cf6c75249608d930b104ef11f4bfcb794b1af977023000dd678a0507989bc587e042a914ce55bdfa9a14ed4a9e66684e877d2420b722975ab0275978f44769b26ff91323cfda0302047c435bb50067306502302996a0d6c8988c0fcc3d613c3f21e399eae3abf2904a93e6062407a282ff033bceebe52c4922c11a112e5d3d1f99c754023100d8df6b616b48c123141e14102b6cd49549ae8f7ba4e9bd5b3debddee9a05cfd56ebfe77e70eb057d4502778180cce9cc0302047c435bb5006830660231008478b3afd54ba287603458a883dfa6f269f7e3d6aff639de571add3e16f71c60c28f90fada62eabd2c769908b916d62e023100f22ecda53ed9f584f0ef07e8246de00aa7859319a10125f774fcca3f5bafafb91576229e50a34eb01307a2426460a66f0302047c435bb500683066023100a83e861631bad71d35f671d54dc70c5fe49db9f79889b88b722a8b85bbce4ec4abb95864277a9e0c4afd7fe21dee2788023100841fe3d74f406845ca3e0ea6b7239ca6bf950710f2ff8db8c1def197dd2aff9292639b07be2e38804d716b0e1bf1f4cb0302047c435bb500663064023013e6bff7bce5558d4c77f8a509afe35c647cb4472b690af2ab2f8ef6387d4acca8ab97bc48c59f0df21b1d4f5dff86940230425c51ae60eab2e939071c9f309bf47012982571e9b1a2ca8a77740532fb19c1b0f9922445c257026209c7052f1f4c9e0302047c435bb500683066023100b4148c20db52e9c96337e0fa9eac15a2356e9f76c6b92859da77492f4f4bd106fa6298d9a6528ee42c4cf2bc2102101e023100843a0a617a329cf09db331a0b03d7481e4d618049dca9b3c6b9e310df117e7c4c18863be122df872a14e21cc80ca97840302047c435bb500673065023100b42e423750abd1db4f3e53000777f7ceb9906dd790c93318704b0b4d457efcaf09e1a579324608cee3eebb69c6963666023026ae238afede30362e89fb5e441153af832dc055508b7c2e8bc772f74c87efdd1ad72e7cd565ca6ade3c4c6d7411461a0302047c435bb500673065023100c892b2ed5e403b870805dad6d1dd505e39a1a71c63a6c07b99d882a4e90ad6b85afea81a267ea11a1e252c555d76c196023066cf84504ce7749233514ea12b9ec618176d4cba6e40a03e718035ca042db4c72bd5d136899bc16e18dd0bbde4cae6eb0302047c435bb500673065023100d74679287157477d077fb8745819f07fd02e3122922da5620cdbcaed6bc703825a95e1e6f2fb7a04e3159654463b99ca02306b2661cfab645fdf88ba8f1f28674458dee61625413c925698667da56c6a96b6da71e64b2145eb2db076d439a25881b90302047c435bb50066306402303a9ff3a8d82c7f5da5a3a9b16bede50203ec01f37125b49302a4a2f7f850ec4ce579d43d665bad6e4d78523d6f21bc3202301d4bf298eacc1befb6ed703c3308ca4d35c87c886651070a7944d40d64071edb83c0cda329977928bd5da2b975e7d5bb0302047c435bb5006730650231009145bed90b49e7386cb3cee3b19f83e75867241fd44989b77397919d1affaf1b9b9c136c44755d86f135c9573bf65396023068d5ff7c60055b27c26758264bd7aa098e90620b506833f5b2a588b6c913857c4391e01989917eaca4ec571d7e22a2070302047c435bb500673065023100ea67c022c9f4f34ba02febf8510451145478367df5ea98edff54f572376d09a571e69425edf453bf184d55aac45da2a1023063df816dc5c475e7986dd4ddb8580c27c1e0ece4d7cfb368dbbe3886210480b4fca492238ae09f80a3351ef6fa0d12350302047c435bb500673065023100f071090138fc5553477acfde1f84aaebd89609001bfafb281d5832f76922baa1722d07866572f5d9ddd6258719a58b0d0230283a22008e838963649c9b481ad574c71d2fee28b4fb6046b24c29baafb606b3431279ea25fc99b381750ad506889fd90302047c435bb500673065023005d012d3c543a2a10c055e56c077149f75133c00766663a5c7f22b886bdf0e6a241563eb6cc9f32e0c5d286c0ae5c1d6023100ab677e6c52bc384e175a0be1bc8c1c8db31b8c63b0d612f5ed77c40c7bd86cfd13824be50d5415ef57eca4d853801a1d0302047c435bb500673065023030f17cb58d447801fda4f626dc9d45312a214c2802ccd50da6a92b57846f54adb110540e47421d30ffa796dbb4b93096023100dccb11b9b7df8ab82c24c3fe7d8abee593846d3efc9713874e10b5d386966d39457ff4bc720ad829b1038dd9c8f680d80302047c435bb50067306502303b7501ef70d6242c491ea7aab3e18517d9f706353623eee4abe25c12bc7fb8c657ac9a62f436f954d4d9e141c7d3e476023100f6901fd8f3fe41f4d0168f7ffad8405000f8d61890f6d28400ce8fc66bc2c4d297ed812b6b83ceba0c50d1c9ac2330130302047c435bb50066306402302f3e3a34e64382dfa8dad5fd3371f58547da3e16b3d134cb31ec877ee38eda40848c02c1bd48f5ba6f40fddf59e4b3100230687ab5185bdbadb670809ad594b5892cc3ad87642bf9d14549ac8c28eadf1f91a35d06d69a9123ad2979be28edccf1750302047c435bb5006630640230192a0f3473c590e25dda728bf51cd6f10cef2749878732b390c5b339efb7d245ac080cb47a5ea6fd32079a4d38f572b8023005d35fa597a3a176fde604b3eb561eeaf0d675920d548ddfa42d73508f5a9b5c64e5abb0bfac46e128f7133554c3a0d40302047c435bb500683066023100b3f1a80cbbe3a40fcb172de2ab4ca88a4f3fb6c376f9496a3ebdb536734af8b9dfbe03e723281ae2b34291fc622e09e90231009ff5bc6300d62058914cdf8b15ec6235301240443bca4abe287ab60b691fa90d88a52e6e56d52fb5df7cfd63cd09378a0302047c435bb500673065023100f315c433eb5ca185c21f90ff33f47bc6bc77eac8b2e9011d17bbf1d96e92fd918066959d417107ea6cac93d68260305002306a2a7102a1f589338ea3154fdd981531fcfaa79de0db686c37f71c9e5365f3647f79097c84465773cb0c1b90f41e18c80302047c435bb50067306502310080d41efdc430add371f785a7e0f1ecace62516248fb34e38c15eba5ddc507683d7eadaed50257e8b3d4a7f160d0d1217023018ecdf606f143b1c960c14f623340579af387c83d677f755d4f4dc8bf230b7f6c6cffa329459fa48ccffd900edf2f4fb0302047c435bb500673065023060cb447403162542dc6d72268080af291c804036776607e0a9dbda6f17cb90ed67625e542456fece5e9fc86d1f71107d0231009f80b9b4f5df30e30e1d908515f78508f834fdb475d90375e356759b71c850b86e52ff7eed3c60a0d4a7ea63cc5623230302047c435bb50067306502302a482777c6bd7ecef3cd939006d6f83decb5287a8aaf4f80883bfbab154148ae3e88ba42846969f358668c72be7d8a73023100f0b002d208ccc0725ad4b6a413aef83adc1698dc3be58fcaee249c4edd05508ac2f89c02b38588ee9501765f6a0877210302047c435bb5006730650230486ef06d59e8c0ee5cc10a6ded92477df029c6cab030bc8e77541d104b783ba8802bbcb3c81ee431de7a3e7256462483023100a240e8621105c119fe270d9d4efe4ed4f83074af4af066e813ac7954d2c57e895aa8d496f049c622c22daefff9b86dcd0302047c435bb5006630640230504f6afef91b6b78efa15b5f3441d97690c769125222264c43090f090574bc82d00188e7d7d9cd6b551e954b4a24f1d6023060bb0d070e3076e4ee7252643fd44afdaa651b2adc3e4414ca01c26cae8442e6ede36d5b9638fb667f1fef5adeaa3a5a0302047c435bb50067306502300c94e3ce479f53aa34ce0f1f1ae1f2ed99ddda3a6546416dd417ffce942d1cff535923484ab3b86452f77ba746aa2516023100b48715763af44874e9f581a7ed8316bc76a5f21629909086f2c38c0ce204ab7c5308bb5a4b5cbfe028d9d88db45abb740302047c435bb500683066023100bce7c77cf17b7846735dc0a51d0555c90efe0e0624e205213f3f78cf61758187dec5697bf287307aef041bb44d500631023100867887574674ad688f7e2b4c0be44d2517d07629da04117b9fe21c6a41d5ebe611a33abdeeed473237383f249e41ec970302047c435bb500683066023100896bf4f53acef818c47320cace05a140afa10f12d0573d123e45b63792bc2481c74cdf5bd3766a2ab57df196611f135f02310092ee3e267a2678c46586ee21cd97b4fae202c2bc64ce30771e8b17ef81c6602ed34542e0189e05aaa55ce94742836ffc0302047c435bb500673065023100a7a02bd0e3feb689375a89883d6874be7ed472c1db8983e4906ceea1b1b27a442db2124ae88389cc071398dbb12d642a023008492cc1e22ff9a2e94fbec49271ec112ffcb06fdf3d78ba60ceedfa6ae5bf6331e708f8c177bd489c50616d039a9fc20302047c435bb500683066023100f7ed3870c54766f12e20b2520d1796edb71283f79ffe0ebb35532eaa1283f2cf2f530054ded33dac7866455dfc5f2ee9023100b8837d96b7314bfb7f5e6ffd928b10ac220848c8ef6d2d58aa0354decfc89a56f1ebc8b69dea41b1510245b1c61d6abd0302047c435bb500683066023100dce09e6d62538139b9a089c79ef9f8339d499e474c553e873a8213f5368929c9fe0026ec2d0f726061f4c230bdafefe0023100d6627c361d7a9b0e5e754dfc030109d2729df027729b1445b08d9978e9986fd3bbbc233072aeaff32502de4c4a55c4c30302047c435bb5006630640230513b34ca24ea4e05c043ccc70251a975fa311fa4f33a4ca4638017e4f9779f5ef354f163774ee10a79b42e4d855d882d02304042bf05d8ce31135e0fa3f5f4d07b1a7b8ee377040f329bb7635b2961f3b91c70ad351b9bd158e3425c9c695c838fef0302047c435bb500673065023100da197c92b6ee80fb5215dce3f36c5569e78720ef54a65308b84f4fa7adcce13f46833508c031dd36de38713282d6146902302f439cc6185c176e0b1e16dbe399dce7ed73011e3ed3595b223e9881b3795450cd9a8667f54b02003d022ac9d5c1fd520302047c435bb500663064023056766ce2b67426caa95520b65a429254d1fdc56cfa098f9e320032e5235d5151360d3eef8770db2d8638ddf753b7d90902300d34093f4e8948a5cad6f96363148fc0e05f002a5a6ea76827735ae32e6d3907ed25e3da6c70dbc8ed29992596b8cb810302047c435bb50066306402304a1d2392430e4fef9e11e2fab5b30b15edbbc7f804df9e72e18d13f584d1d4fa920cd35d22375fa58cdad7a1826a3c9102301ee1d09f4302437c73402e9d646f513e281c749ef0fbc4222aeadb545ba304515d8c6d0ad4e49b8c6efcefdb979844ca0302047c435bb500673065023100a286c0de791d7bcaaf5f9937c2fdaaf61e2adccc7869ae36dd85bb2f65d8429edd45223935c70ce965a5ec8d58d7d17e023031bec8fae2e60a1f725fb59cc7823756925f322b5b9fa9cfaecae25a7ccb630dba3d7366ca4cd250aa4bcb894d6d29ac0302047c435bb500663064023022b21041fbb9b58d4ff77a501367b19cf357cef466f285edaf60a85af14842b8575f0c0ecd49ba1221870d11f886923102301c0767752da3ae084534a10488fe16b0178871825fb7d1fb71ef1c1f28ec4ed10aeab0f795b1a045c301a2c1e161752e0302047c435bb500683066023100edb6e24176c4383e93728119c8c7aace008e04060179bd0f88a8281487b7343fcc7ac3d746cc192d802ac1ed337c1580023100af21d22fec09dec164700a6024651d4a7667861fa7dc50d2ad216fadbfb5962b7cb0177925dafbbd134a7c0f262c13340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cc1d88b888d66a5bb4164c3a18921f955295793a37cf59891896d2b4cccd3a4b151bdeca71c15c880daf7e004b59071b023004d21e89e949242b3f6924bbc5348cf07a3113a193ce6b082abe76ef822b2a50dedc8ceee33e38bd59927091037949a60302047c435bb500673065023100a56e90b4a58b9adfb7eb42be1d85a279f4dfefd175f20ae626b04636ba64e102a3571467fd368f32f6c12b8bf34d03e502303ed9f1fa7122d735dd6cc2b4f0c3bd56ea1ac7d3d9498a7dc2cef3225d9d8bf1f6b17505c9bb085a9aeb1f3d42e41ada0302047c435bb500683066023100dfe53e56c231b812abd2caa068970325178c21d2c7e7a728b7bb3a259b11dd1c219f2bf79c1c450f78a4f41e10130f6b023100e85188b11ea695771521d5f2520a19c1df8eb2b408e8fa8d8c888a145eb15a6e3fd1b66a1e064a275b44dd9ae464e59b0302047c435bb50066306402307d3b5353a8ffc8d099bb9027a3a85842cc1982ff60490b2a5356112fa4b1d8f998cb7098b95fd03032e335edbb8689af02305dc57b23e472dcf577e3b338a47751e6f79bdd6ed0f3b561033796c4e551d22e4ed03df56a5b27d405209d7c95f3a0690302047c435bb500683066023100feb5563d807942e4ffa2f3fbbc10abd7626e90490adc8f658bf5406ece3cc58303a82acd2d93ff2ca19afdb07299f69b023100e6c0c4072c07fbd8e6829ce864091ded575a3fb7b29036f110f182b28b972452b50063d077b1f4f1f40c8f44dea7346f0302047c435bb5006730650230625bf90ee071ea455adac2f0f249a8a29ecbb88df21e1cc51e421a99fb5b2d065ae34572dfb99f81abc72d34e465532e023100ac057c56cb850979bff30f5dc7bb4999b92cf823499d5cd3b0a2ae2464d5051a73e4b5c2628f68e17e4ac900d09040c50302047c435bb500673065023100fdd7dc9dc2e21b1b87bd9fa12eae375dfeccfba47669ba7d3254055cc7f93a972bf0400874a05a83f6c99ee4b9a0ec6b023069379e5b19d49622e76250a40f97f87e50856906a2a7e2d1d5cbd89350bc2bd7037a643a0cd4d2b137d3a3d276477ce30302047c435bb500663064023021c1766181801abb92a93438e7a20f7b0f70e9f7e3733d57d989153b7400c6cf14ff477038d55a87b52f5ab14dfe053302302c510514aad2bb21ba868af5f2bda1e722e99f42efd0fabe457792ce16732635cef223577e77b033763f0f5a0f873db20302047c435bb5006630640230741284dc56c12a409c8657fc0afd4c5fb5ab6d2917cb6e025e90b723878163187894649539eb57dfa15f7298648f32a502303ac6cc2787cbdad0986500813904166d8419a899a79b84dac529bf5cbbb80e92763cc30d5c5f6c7180e4571556083dd30302047c435bb50067306502306953052651ac17995a1c64c4a5352f4beca4153b74a936b521a5fead6fe9470c5ba058e76c3aee3435fa5ef745b8f2ce023100e9aa3e13e5a909191943b70d688fdf82b6ea416cbc3c36475ed175ae2d8ba0d51b63d723086dfe2cd5f01bec8f3bd9600302047c435bb50067306502307ddc6fe6bb1add3ab41ac5fcd4f0b25c388697c201c9b4ad370d610f43b1350e00631135018839ccbd1b44dc34cfd7f7023100e40d63200edf5497622a4df20d6e6b4fc2ddd8f90d6ea2e3ef3338c68a71c2aca2906c73cb4b8790baba718c8825dda00302047c435bb500673065023100fcaceeba4216d92549802de859749e48eaab01cf9237105f62568229178c3bb60c05ec6544305f8baaa44b3e71e1704b02301eb100711284c4ec0fa26fb4aba1a7e13ea2ea8b67710dd2f17baf7af1456f8ec9f2629883c6efd90993ccfd9eaacd9b0302047c435bb50066306402305c95100c4f457bc742fd55f5dc9f10581ab11d43c0c6c4690e5e5548f2156615f9ba9c3e56137f561f84d5908629ba03023079e0d1cebac79c4e4eab8fe97d40a45d099a53589d3370d7d78fa14a549d4f9f5107806324c5ffae065c14e34415b26e0302047c435bb50066306402305e6662effc5d1b362ff1816ba784834b206d6a2c420b092c9453881444311cade57486ad9ccd22c2cc600f2f9640e1070230437202d45684f39762029bae66b62c3cb77b124f8c224187a2e19da0b5819b2f978e33a6cbba3a56b702b2e55dd274fe0302047c435bb5006730650231009db8daf74cff0e1fba764c9667e3de96a836315044a3224fb5c4cc4776135abc2a62976cff7cd41a871041559e622e750230739113727b15f3c1053f18d1f058e9be69ec2fba631153932e804db07334dc2f5710e89ade87f7090d228453d102c9a40302047c435bb500683066023100c7a9a50bf0bc02ed7b3d643551eb3a840794905172f2a6b978fcf2b2621906b02e1eb25926ce7525f10f030894226f36023100c80a36f3e37540e51ea63a2fc922fb1d5ec8a2cb99ab8c004d6bed0f3e749133044df2b5152564834cf20a65eb34749c0302047c435bb50066306402303d6e2580aeddf57d1bf405dae5976c4fdb8a2d99c336b489fccfcacab35e84d9196246d8ee028d830fdd4e830ac89c9d0230793dd806fe421fadab21453362c2bf9d2630f7faf8dff6eb329382dd57e698e1159e73fa6bc40ac1c23d9265bfa5f5930302047c435bb50066306402304ebcebb9fb4eabeceafdccab83e62eb726f39ae3ff69a0700b4ef053db81cde3e132f1da71a1c3d207281703da6715e502301c81e316497532059779cecbafa0b0b4e51f30c6bdb63caf5a4e95fba0138a0b1afb8c012256a67a2b65c1ba70ae715b0302047c435bb500683066023100b37b9fdd12fee08496a014cb6d4c99daf25cb7193a32a9fd670dd3f45d24b805a7ebf85433df923fb8f7a26329bde37d0231008ce7e03a6efb55954aceeb0a7efd19656a57f60bd49a7b6449209d3fdf2d4b3e029a1ea085f070f01db6d7a07799c77a0302047c435bb50066306402300c1e5a6c970c88cc1743c33333f05ecb4efb9ce78c508f51463d97216e479342ee31dd1bc75d19310338626f4294aa250230216ec40b05f7098de7a5f55cca2d020ade8bfb9d59119ea0c1019b6be41dd6bbe5ba7d68e7f7ed022c4f5dc987a975490302047c435bb500673065023100e379a8d3c1ae8ad0e4b79b6db6757c17c5fde44e6ec69c771e30d6e418b1ff5285c1a73697a9258d5da6d286c50132dc02307613efe9ceffbb04679e7e708410b34d3e75e2bf5caf511b821c42cb29fa868dd1f57178da5e73f45479e55897e9f2d40302047c435bb500673065023100c188375d51d48344ab0cfc24532133408cd8d42186673a7a7ba89ff9e7868c97bc228415a7e059615d9d33046959a7ce02304f4ebad905ade5906fbacf7612a42c74c1ec2788254e4435ebd3db27f900dbe76a3c05d5c9dacf2e307063044bf82bd00302047c435bb5006630640230692fda07386f011be258401f7d4b56831329e557c2d7136a691400fa44b296124f8d2ab4c669373158f40cb5100bda17023018af4fa672d54e847f895fc5e1ec4fbc8c9fade1b722e24389cc0025cb3e265b0b5002e45a7f2453be61dc36358d0c840302047c435bb500673065023100a9af37892990473ced8132824eac337e9be1906f2d659150ce5a48e366e425d0aefabf8da287181a40d538eadb33b3cc023020a37919905fa095920d95648312ed13aecff5e511be012547c5ca8f63d350089764697a57447c1206092cfd89e986870302047c435bb500683066023100acd877c7d79b84dc2c18a16c82b7f0a9551268fb79ab59ae84941c48f9a7191cb452ae26a149e4f60fe4dbe5f972a1cd023100c514de657a22758b5c7325564cf8089d70949338585f07c1f632299f519b0b65105f31a055352fd60d690a5016e35a7d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b83f71a6d0d87c945014c58dcfd471b41e5abdae43e09d13d162c20527d02e8b0bbad73d38abe1aee1c906c91a27f9aa023100b27792a2f378f7054afce542443bbe406cfd3338fc7b6ff879db39c63da73c51e8c285928592101c660640bd5da6c40e0302047c435bb50067306502310081671779f4ea4c5a79dfb80f925f0fc92091235299f0dbd356c241b75b410307b88837c33b9e0ab8b3528ee64baaba210230528debbcbb01849b07e9dbf62a33d5aaeefc773037efed1cd78976d53110d12d16bc3aa25fd6e30bf2b4b18a1fe8bf4c0302047c435bb5006730650231009b21ad5a93dec5b552862822cabdd3959b8151deb4ad2936b384e5a86191602f3c5873d6d9101a739eade2b572d9dcea0230538086a6d367160bbfba2419caebe4aaa20e3363653239fe903aa3b81537538c20049ca5fe82d5449878640c1416093c0302047c435bb50066306402307143dbe2bdc61837ef541a614c22ed1cde8e4db56880804fca37cd4b22f0723ea09f82cc51a5de422a72376fa58d244b023049681e74939d7b1e8eb26ede9351e0c923e0712bd87084f7741965712c0434d2d13a0b9a226015db73bf5b9e70fb4f470302047c435bb5006730650230695b97bf9a3ae6626ceca156f9518b038e11270949d916c30b2df0ff61342cc64a91439b1d6643f1e2113e75bf358c980231009e4ad0ae87929e90c62641a801568a9b1237a3e5816e391e68fecc773f58d47f797cefdc70604024f0a20078fa743e710302047c435bb50068306602310093ad98ccef3246a6920355f65820b2292d8a93a1c510865030d871c054ed6835006d6aea4bd412718bfde6c3e832dbbf0231009c8fb5b0ee1722b9fa25c6a17efb97793c7d39caf60c65cb924f4bf4ddfcac8f5647133bd77e203d66b2cda6aa16afaa0302047c435bb500683066023100e7a5f526f03bfab17643f091dd9676a5747f0d9d553d666f6831ecf9c7ba7f308b66e02eb6ac04e027dac62d665b1b81023100e7c89b741574f8f56b0aa489a29d381d7a1c4d640b898665dbcb161c230fb9f0c4447da2344ea08831e00f17f2d693e30302047c435bb5006630640230653e0780f8480bd0a51b2801d21e7943cdcc2312d96a7487a175040e109732450a4a2f1c79e07dfa8ec8afb7fb3c78830230209efa6be7a0f9567bbfa59016a1d52f0ab863cea953bb6008f7177660fd8402a4aa5453acad5130c00d149003f3bdf40302047c435bb5006830660231008bbd96bac9cb30cba2fd03db987c0a82c7d28c40160708a6c2e25b299f5340d4a91850f45ece55a5e5b805aa872e0ddc0231008c70340a8077b06dd1e4729200d64c20f765d3b6ed7ac4393abde3e75663e08057d44bf9f1379d7cec46e78c374a78000302047c435bb500673065023100f4022c0851832db736cc257e3e74803fb1e130f6e1a3df93f3d0d8c2b2b99d00dcd314e71deab367d6abd3e0b5ca0e6d0230578909eed9465fabb0b77f545b4731b18a873bdbedaca99c9fb7a5bf58dc07e92a8a65ab0d4a6947c78a7225cc12f2850302047c435bb500673065023100dcc92a0b524bcfa90cc9bc1b18867877c7b01dcc7c94b7764661e85e01028862bdf4d3d85a5af5c7d960ac7dc78b2dad02306e21aaaebafc4cab6357eb502dadb7f6fb910e4d0055f7826bb28f8bc4e945cb476d7c9059d66878b74491eac88b673f0302047c435bb50067306502304672283d31e518aee43f3f4cfb55e3b4e8ad37ae5eb2b1eb6a080820e6d545aead4861a41de6cce60ae087e035b046b70231009e073662f5a1d2ec7e0d04e7210e3d63d5f0e430201e733955a52991a72d6b67af37a72021f65538794cb348757e61120302047c435bb500673065023100ba3360f69ff8e25ff6b7c986308b6763d550db52ae4aa3263f385c8064fe2aac4fa1ae7aeb1eb827abe58585094b956b0230549db70d08163c66ae0d8b1484d97ab1a3ca64dcfa4fcbb4baa40c4e50b58d15e4825ec73ab59db0874f4634a739752e0302047c435bb500673065023100f5aea128e5552df609a06e89ac6763d37655872749d5b871e1b0c882441af5a56199d38632ceb0369e56d7d8e04a8ec1023064d9e1390af01623dbb10d4657b476f6d67ad33d8dcf4a26955549a9c9f7b243a36507e675672ef61014a71fa29f38d20302047c435bb500683066023100b4f92ecf11ab8d9b53d3b089992e02a7615cbd4fa0bf5adf51f0a656078a1bf62c90e915390bd6f8322d06259f04e0b3023100b8771be08acaf0c8856537c5e5f9629468642dfa6a14805357770020e0aa29f63f5283c1a7fd1407a9ad0d81bec24bf20302047c435bb50067306502310095559226090750868c2d1cab1053ab41d42c9a3c8fc4cd1524642b7b703a31d9806d21b3fa4397d15b8996f0629ce7bc02300b08b0b13b093fe30cbd86e78fdc28a9cc58152ee0a2ee1788b1b88bd8e1ba198e73553e7e21f3af047ba1301a91a12a0302047c435bb50067306502306801fbe8654b949c83c9ed3407a91aa6330ae194f8f15bc30f99395bd6dcb428e3b212f2ca3ec5c7c7f21e4ff064d7cf023100a29499b5a8e60c88e546569408437a2859d51a8931d30f2e82b2926ef7aedc39787f83ece5f5c0abe0f8793c761a88290302047c435bb500673065023100993afdcfb7daabe7eacdc3e218fac21bdc7a59df512db5d6be62ed807b858bbfbf4b939142ef72a996eb24fe5675c5de023003a5a75cc188cefb53a6f90c126eabcf3ddb9e0ce039624fd0580c9adb6771cdf8f01be8cc764a1a8be2419650bd946f0302047c435bb5006630640230689fef3895e5c756ae7861bd786fa07318cefcd1bb61f3ecb903da9ae8a7e9bfab084f2e0f634f12770dd1363a3c40290230261dd8d1a5fe90f53a07b8c0a9a51999f48bffcc60cd36e0f51af9ed37ae8e70daacda5bfab2ee9b703d383a90ca698a0302047c435bb500673065023100bc28e130714b3ff5208e239f7315bb4cf1ad981e0bbb2b02b4c064475c98ac1534521bfd686fd3e4036c72434b306a8a02302a993de6309aa5d659b98839efa7d80cf2fcd265a5df10b6a68cb84f6f03fec2a96521d5b4bb280d0027f2521ecdf9e00302047c435bb5006630640230773b69a80a1e7aebb61e0caa448a54e506a6132c10db0076af4649ce124a257294cef617945557518f498bd32d30b4b0023067a6a2ee308e05ba5b8f346a4767574cba597c22dce9095f533fb71dfcfbdbfd20b611c8bfcc29153942aca241f49e540302047c435bb5006630640230101307d3e10b6f8d526e8a30b6cbd96fad973691a195fce480cea530b649918b83c447be93fa01ac66a690673d29d0290230755cbc291cbae5a005c9b35dacce713426fdb2015890ea649a63e7308f4504b0f7071edc9fd342f5fb813435b1acdb250302047c435bb500683066023100fa070f7e8e0db5235b902c793008bd56b17faa283128bdf428c40cb11fe5909903185a4002d593653376fb1cd5ed457f023100b4b67828e2d7a82ddb84df23618a3461a3675d29fe58a5b5583ab037a3a526efc6c3f73458e9f6dc30ef2ce69b72f7ba0302047c435bb500673065023100ac8256a250d8b607e8f11b24028fc8ca7555d34aa4241e95253cd53c3bb92c939a4b8b8eeeb7d2c75aad9eeca85dad31023061575b4ad4574b846e289d2dbca8f2bf9ce28b17356c48f65bd8198422a28097a53589f73d81dd7cb201489f850b3e090302047c435bb50066306402307c6d44fdfe0e09a91151cb87f0da01b90a04b58627586cb412fcaa5a368fda8f110ea2f4c97c50a043ec5f2d7397ce7802303427b3cf6b38ab63fe9576491b0fd1d6f8117e2e146cb517e187d82bad955e96d8a086cc5f34a024240f6f027373b5150302047c435bb500683066023100a90d0dbaf5a511fe11f8d10574df579893af103c93ff82e1cfac67d1b6142573a41c7417de55584750dd5531428880a0023100f5d3b53e1cf98b21f7ce7833f400e860f85838ee9f92483518d65ed8f204f273448ebfba3ca4f537313f5b50d710432e0302047c435bb5006630640230430a2b625723f4b5d2b46c6eb3aadb36b5ffc1de5220e6be6b1420a7e52d5629b80780e22008b736944fb2bb34ac60d2023010276200a67235ac24335f20d27a88d9c553510812540f9b888840b82eec78e60ee01dc633a2871880b489947affded00302047c435bb500683066023100e2b13b4cd22c2fe3548d57a3dad4f3719e106a429ae87680d36baf064cfcdf4a94c1cee77b7237660fb424c42f25e6c6023100d0378ee0cf00ac5ce6853fd00a41b3a34b61d032c4d72d7c662146638d8b734200e9f77c1fc1920d1cfeb58f57d120420302047c435bb500683066023100cb08ca1aaf551594cfa29242b745f12120fe8de9b315dff97b317fceb15182ad46f6559ab6d36b405b3cd87b6ef0f5b7023100f7e5b94887bf7042dc6e1755724dee6f4c155fd45a0457d7575fb901711c01321875a955e765018c517c76cdad8add5f0302047c435bb50067306502303dfb0a48a149872bb04374f24be1378643ec2db650b078e85c856a2a3ef91829d83f20434304c6c352fc4be54e300e69023100b41f5240c5dce3d4c488098b22e08ca35fb9c865000e7efeda531b96aa7bcff707eca643dc5c7b4143f2a20a6bc8c3860302047c435bb50067306502306d6fd2f767bb7a26829c1e2718d113256347d9416ab07cb0878d6765a3f08da3801f98355da101527e72146c4b9589f7023100d739bc07ca11d30b52f6b6f57284dcbf18a3527125937aaf1a60f853d8b6a7ede34ab2614f30b3471b8daa6b992157880302047c435bb500673065023100e446edd3721dd58332c67cf842a3acbfa8f4d6972402052a52dcbc804a491b338e09cd9fc8f22fcd198941a986f389e00230473afed3fc51077c0dd5297866d35224d30cc5a3699707b5cf4260a14027a3f724b0c0d26b51f0e80ddf13fe9137fb600302047c435bb500683066023100ab21ebaa7372a18b951e8bf857a33e16a4442c56d1385a80773ebcbf72e23020931cdfc7022712ac82bb719efe6a717c023100c3da36822b9ecc6ab25228aeeda436eb56abb77eb2bf663533b0e3c4e7d83a2b46e2e176c3079bc8a099ee3fe7d7eb690302047c435bb50067306502310099ff54b65fe809ead64dad8b99f21c32b004fd26dfd2335b75529946a5ed3c8cde496d2e9cd2dc2f0895963b66ca293302304fb52dcbdc06f141ae7d577dab916c81e7597a10571b6c51a860b15d2224f137c20dc9bbe15c90f8ceae3ac4ccac34d70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304f8eae004c9f4463861e8865fb633274509b276a30ed321850d2f41522b468d45e17ddaa17a092106b4ec46d02eeb556023100d69478766d87a6b9ebfef852af827978c1b24af6730614c504416086bf620b94ff110c8355e7d5e2b95deb3ea4be648b0302047c435bb500673065023100e5a484b8934c3a4041dfb5830d4b96547777b04b9eaef252f5fc485e6a645d076976c3b986a73d5430857f8db58552ad02301e359d43a2ad5aa892aebfaf33b27aa9d924d7dcbd3451fbe63f2e5c4da185c04bed08d34b4b379a0a0d2c994cae95530302047c435bb50067306502302e8d46f94197a0ac6fe85ac1a4f6578c131c1d34bcc3fe6b3ff8f2499e06a307267fe4ff44bc387fbf6b2af94ebf75720231008e49370ee9038296aa0a10d66879c7685534b9c3dc3d6234a91d6c7c81363f75136e8a6efee017c6741979994c48573d0302047c435bb50068306602310095789deec8831f02b3642fb6ccf7a69ece805b0076ec13df4ed4f9832627b5cacc942511d35feeda3b0c22e3697dc683023100d848ff87950b8a0d7a910ecd21b1373b943826fb92055bf8fc4f01712c469af5ba36e5e1a642eecf0503e0ae4f63e6cc0302047c435bb5006630640230692f40f448647bd219b8fb85bcbc46928690197cf9127bb276dce9ca6195201d783ce255d0aa9f8df4281e582640a53f0230475fbdd7a43a24fd4b02cf62b0572a66681171b701321f8721a98164332f757c97461995b9e4ddd128c7bce1b90730a40302047c435bb5006730650230202429d6eeaa2eaaa9812641c2810ece93459759e3c68c91e3c2a135a0dc67282c08867ee530f8999e437ef5796825080231009a34e92664e32ad1ab62dce240c714843c27f3f050fcabe55e8fe4b913f51736b5229ab5a9bbe84715a30c8caeea4c430302047c435bb50067306502310086ee417d1a9979601f993da923ef5e0c65bd720f6047d6b942aeb691c7b0be6c5576a8de53f230f8a12ab2d892463a610230239f9c1872037fe6d9431ee7bd881acd390184c6db004ee835bf87bfce1705bd43eba59aada6e596be28c3e192939fcf0302047c435bb500683066023100c0dff461b1790de4934852d4028b91c426cc35922d3663bad0923b340f987904c0fbf313472c692cf01f2e7e0148e683023100963bb11454f58c0ac832248014d71b855012e0ffc674b5bb8a92aa8ad173ab3123e4375b38bc6117bf7bb5c186b064a40302047c435bb500673065023032d340402efeee858dfa73e22e798695ffcaed9a448673a8987f34d9501505e12955c9482ebd5e050afb27559d40c6540231009aa4835e6dd5f0c69200551e03ea699142a786f7cdb1fd367991d69b8b8246e8b6101a6deacb98d8ad8525bf116ded7b0302047c435bb500673065023100b5567b4306f15ea81d81a68676eeb0e2a4263a3f78920ffa337c97856e834a19846604697cf846486a8969793261b55a02301e4526f86086f63ca16d093dd558ecaea54a79178e61e4549d762270a5899fe34f24b197da7dd1ffe78b32a485f386e60302047c435bb500673065023100dbd39769c35224ac8584c21a3548ef37fa22e7f9759cfed4bfda8df77c9d3023dfc9f3abfe066f7d0b01f5395108c00e023060e1fab770cde61cc0dfb38f11b13328f3eee47b29a65a3c8f45f0f282e8fc6aa8bda7297eafd0fe9743eaf656de26380302047c435bb500683066023100fafd6142831cae6f0ce18b0c864fbe526461cb170c164472d570c922dc64a92f7ae509795177525c8b5992626c65c6f3023100b921aa139622c7f62855b8efd264f873e4f8fa2a2d469b49cca34889ca99453ceee69dd9bb3b36b11768f81bde47ebf60302047c435bb500673065023100aa16cfdd1587eff800c11f6d40049a7aed35203b81b94f24ddd5373de052fceed4cf2d1e2a5dca9ca16d75ecb89638df02301f63a064db619ca50af19a3a6feb521cbae752544a0594cc7cedccc2ecc00b152dc154087b7c01e976453670c816aba40302047c435bb500683066023100dc240e10f8eb3d4b0118578b250b911a7145008d60ef2517e571388504668bf1e917a3489c2e6a22a5e6db4a2eef5ba8023100f2397980ca0ef678c7ae4391cbcfaf8b1a72aa75f11a7d2441362ad36029e48ed1ff4b3a3ed4b5c2534a4212490194680302047c435bb50067306502305bb2f4e3d29cf9b5e726e7bc0736ac5e39c37c1587bab53928943b11bab1662df66abb52c22aa5ad5e79ce8c48114f3e023100f57c113802f9762a90a7ec1865c4a3cff9760c264b8bdb32b094e33b4c231bf77a5570aaceb0816ac5fbf80a785de9f60302047c435bb50068306602310095bde94a183fd39686f9aa45a72c92620018faf0e7688827343c221194b849eedb4dcf772a405a0d0ef1e1956a8ff529023100a25dff2a820cf50e5be4aa447da8eddc605b73a8cf61117aa4933dad6d19e69032d7bc2b4552550683fcf7f465d48c520302047c435bb50067306502305324ebdd1a2f6e8a7b88a4662e160c4fe74cccf7eaac28c067c0115dc6b5af792901e20600a1619876578e42ca3a259e02310084175067bb34313da4a675c68992b1010387d22f3a9678e720533669fb571160bfc2f9209f40cff9d8f187cca44039670302047c435bb50066306402304e7cfd71bef6fb1b30e9bf43a297c2c52d7a3f647ee582595075ab2689ac927aba95a027dddacfd333e73439f83ffb360230553ace47f4e275a6b691e3a685345069ce9dcae3592ee34341d59c944925c1c7d2cca197e00294f2e2a6e09f7a8bfd520302047c435bb50067306502310088ddf4b3ef93917e2554082b6c22f33f38d72967b35e924c33b5564f33900f226e4cbbe61008568b4b32006ae5109e86023008b0be1b7bb9c6af5b028c27a70deb9eff4c522e2bcb300496cbea0216f2d21fff3f2673706e622d4b71899c873143690302047c435bb50066306402304f30e14f7a4a972bd984fe98f80f015570771ae9930b08e87c563d92a28d6961d785d96b811e58c26aebd2ccc43ef8ef02303b46e5c75b6244173ca3b97cb750edbc52f9321851fde43e1fab87c5ead2ebb52271f73445ee4b55a61a85ad99dd520e0302047c435bb500673065023051c03e95b8ff6d4376e04899a0293ce88dd8dcb78dea73c5f248e91dfa7a56527f2400d1749415f37c951d14c163302a023100db946d9f1439f284eba697af79ede328f8f2ae503871209bb1df1280fd73375c0f1a8a9db41723b27b4ea91fba69a3bd0302047c435bb500683066023100eb4f88c7e326a58e8d0cc72e7ff4222bf0755791a05563c00a2fb888a6fad3a59af35c81cb2f53b5d78c6d3f878071940231009aebd917aeb205f43e007b58089048b54665fe959b3cdfbbc85314e80eed8d3603da43d36a0a2859e3dc2ff67436fb670302047c435bb500663064023051fc8acb844c91573336162b67601070c6666ea7d4de0b99101f8edfc2914e654f7e468ca24e701cf9a8c96cf73f57bc023069acdebf3f9c2e4a3b0ef9a40c41ec739ec3d9953f7f79e96c8510bf9ab0f67438bc1f8a41de2626958c4f811e8ffd360302047c435bb500673065023100a44c9c9d744ccc1227035bed24bf3926dd5b7a5bc250f5528dafa4b77bfa760aaa007a41272d4c0a01af333a47efe3d702304bdd6a1f6b28754ba4ea3708c16765fac45cd36dc95f1dddf8465a6b2651ca47f6dd5cf008e6303b6e48561b5b8ea6cc0302047c435bb50067306502301675d469053f43d3b5f8535ce8959a53eb0e2364af651754bc10f167a626ac4fb49281769704429a7e21cf05c22437a9023100e4babb2abb21259be304ac91fed840a9555f730d1ed699d203047435d64deaf1f0ed28dc0b5e3086330c53e485506c6e0302047c435bb50067306502304970941f56ff002d7527bb1fdc494247167d3c4031dbbb0a43a80819f82763ab2a4a1247f7debabafee061302457db2a023100ede38493f80985e4a89a39ca97cedd4db02a210c8e265f84a48ee579db959349bc8cbd50f455083f55e9fb20e8b28cef0302047c435bb500673065023100e967f239e2cae09083d7c666034198d79df5263b56cd605d98e83b6b03f3ea320c0fc28854ebcf95ce1251d78de2fa8f0230052e76faa7934ce25528bbc13563d3cc0efdccc153517f40e608f2e7a7e5b4f16bfe1402bb6715cfc907ca66ba6e9d700302047c435bb50068306602310082208c0fbab5b77d6538159014ea1598b847bd771ee2c1fb02651fc926b12f7f4388db5c2831286a815e1376dadfc03b023100b72843045eeba3bcf3187ca9107dcb8b64cd0114fe57a8d226c164764e31d369fe5d07bde8cc4036ea8a77108fa890b80302047c435bb5006830660231009ccc809eb32794fd7ddab390df42a5c5619564625af30f5277fbc0473c8ed06ae55b22a27c9064c85014935fc0180ad4023100d918652b5b470df5579616a97d12c7712ac0e2405eaaa17a809eec7c648aec8777b3772496e7751576c241f68ee830fc0302047c435bb5006630640230521ab486c0d319d510451f213dcf4ade1b258f7b9bad57a0d6efe5fc7a36a38d6b56ec5d7541131c5570e0edfce544e90230272a89c6dce181cdbd1fafe38b69611287312ee2f74672a395414e7b9aae052d2ca565abd26e414e31fd3eccb9b51f900302047c435bb500673065023100eba9e769b9b5f75332d857dd28da7f7516b961aae3c85022d0b9a32e5ff25146719ebd552cad71d27527f44402689d6f02307c0d4de0b41d1ebc00ae19a32bd0868165616f478b10d30c143a400732866feac329db9518f6ca913e95d767d787c94d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100baf28f4bdbaea7614ef9384de3cc69ab673b5bbd49b109dadd24acbde43d1b79ff8deb0d3c69f1d7dae9eff92a3e784b023004b6184245dfa19152edaca1f23a16f69ed0da294ba573d8b257401fb7fd8e3067c6e3dab684cc072cb898d1ae696f570302047c435bb5006730650231009ff2acbbc4c557a4e6066e1dc16326f4ea7e0f22bd2fcca1bc0002ab215f067f2c8682b02d8296f3b2a5ce4a8e3b0602023009296168d7f89032d8c66bfd3654525a9df5ff87bdb18a8a755b8c1e9680335bfeec4dae74e2a7c13f74585828cb9ae90302047c435bb500673065023100ed18d40defc66059cf1117627c60a6ec1255b8625dd0f812a592ec647ac04d14798a7280781093c717a41e79fe1c983e023070f89ec1e9d00bbbc104d303712892467db6533f32d735dc79c446f5b389364ead0b87604a705003192b3a01da9930050302047c435bb500683066023100cc8bc02ecc537be50d14d97a556edcf61dbdfb96aaff5ed80619e0cf0709dba70edd60c0a04e2c79c5fd135a8e602733023100dd885763ba0bc3dea3f3e4f505fd872e4e29d13f31dc62ad2f21e9261a8afcbea02391749c2ea2631f318617137158600302047c435bb5006830660231009df67bb13d53e738b0db028a60e46a2291a70f9638b932948d413a380becb75f9d91312a788df306b4ee834b50023417023100dc8b68c856e16952c8ae18be0cd6d9164c2b73438622241555b4b800ffbf7b68467ecf6488b82daa2128bc0acbd476490302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e5975cc965578a24d40747cf81869b42df3b34ef343665753785f167848009053d70020b5f694cdbe2b2cc15f00f0e5c02304486429c8df76055195cfd50ed19a9d2ca494b8c552b34b88c3ddea950b56c36d2fbe0ab7845a4dfd65991f01f67429b0302047c435bb50067306502305d4065cf017a517193af9579efa0106501bdfc58152f518104981c61bb4a83e4cb29c5f3d56271611d8258b0b5883ec7023100e8055830944dff894263265b9943209d2dca6b8c9ebd18023d36d651e6b9bc5cba346dd1d8386f8a31d18961af4fec4c0302047c435bb50067306502310087e13e70dc6f7dcc5e8443b924f13a7e111023a3adece69927ba5f8544547f28b49edee3f4f6aeee063e3cbefba9f1d70230039a34ce88ce31fa09ea5c452b377f565a6f00f91c8e75caec434459ae99b010f667a0db5816cce640a52c5302b4b7d90302047c435bb5006630640230675e26dc2e44537c90a24051df6e23b08c02aa6b79b3364cc95a3ab3557fcd10c1605f7ad68cb3002068d59acd4912d102303df901fda61987c275f269aaa63458bac0e4e72da051d864e3626f94b38adb9f04726a57cfdf2551ab01861073f1bf870302047c435bb500683066023100e1b73d1fde6ccc90817180599aa54ed4d7c81756f4276cc0cd4c8dc840b51a77bd4df10a3c0015b25094d7288503fa27023100822e0ed6adfbd35035d8238b3a7ca00a6a7fd5afa1f2591cbff83757d29783239b9e28e74dfe99db52d88686b032468b0302047c435bb50066306402304ed1518732f716ada790e192e7587563d0b8fa2cb21961be62c11bc492dccd36eda691620839e113516f076aadc7d63e023075d7a8b3b314afcd57ecddeeea6229360529a10795adfe0fcea9699d6ddcdf200ef5254c025774cb8d1641fa79c7e13a0302047c435bb500673065023100ed99a636b7ddb187d7e01fc746ef76006c93eab4d8e2c3e7455922f70e5839e9080cd2baecca256f2fc2dcf83d234a32023032db2188915b0479993248790fe0d8a3edffbcd7eaf66a96dcb9582e672a080b3d2b1d168dc1e0cb35b8e400b3f8cd960302047c435bb500683066023100f916ee77f44f38802fea49db202245ac1707e469482b8ce3b0fe4d086f571979c4b1acd88799ac1450871092baf4fbca023100d3152a4fcae46e330947c3abb5ebcd93c3789d15e58ec539879837b9a5ea984cfccc09939a63b00fd40435fdcdde836a0302047c435bb50068306602310086516e07959e029e97c8c156319a7e53712cc703babba2b1cabac55cb5396e4bb9df06d938fd7b885ebca18f8d551ed1023100892af87f745c3c834e8bc19990712cb71834676e56579bc991b7d166b24d34698e457cb63481d173c4f4d39efb2aea910302047c435bb50067306502301eba297879a3d466b78988969f91abd275bed07de8c0ccf74377f7b5dbe4931eb44cc70828e916bbe7bc623ee67d48f4023100c4aa89d2c967228b31faaf3581c51d9dec3c2ef08c85485e708d01849a70e3514ba6253308e25388089d4b438363f7a70302047c435bb5006730650230572de6b507e2c99be1b7360dfc4e45f1bd41a22163ad3824caf8d99cb9b8b3a6b24b8736132a073c2941bb711784c282023100cc59555a86c2376298022de63e185490d9646cad779cbbe6408c61428d74d3682ad458fe3cfc0ddcb5c60125f97217d60302047c435bb500673065023100ee70145f6f4001b991d105c1b2cf9b4de78c4852994dae972a6d697cb4b9fc98341402ee7a2b266a2f3d600e9416c6de0230185fc4abb71c7db34f754d8009dd8bdb53ce3c8c79ef4737ee145dd15bc8e3d9f1cfc6b53fcecfe65ed082f8b5af65e40302047c435bb50067306502310082bf53e877972763b769857c7bd027b1119ebdb16c45efd48408cad8ec10ac87e81a5b8823a7cf61a3214f0f3ea2e9dd023073819c6abeca46661bfb818d58a4f44e10576e9eef0af559ae052f8df05d6c091fc7242257f558aaa990373010ed22260302047c435bb50066306402306a21f60f10e9293a3115cadba3aca9194b9111af9272551bf13f51bc6254411e8b6f96b4f888eccec2ee490505fec0a3023028d5d0e8d523eb39ddfa13f18a30bae95fce431455537c24423951afb7c29e9b0fc1f8c91bc1e2c12f0311ea691145320302047c435bb50066306402306249423700742beb52d645e4820df6a8fa649aa20f3bafd2e7b890007e77b604f5835a9b15bb2d844262f8d3662ebaaa023022c36132eda6adbc01847eab36b7eb688154d05556c9b15127130392608994983c7cba7ebacde0bb3d807f1d09b1af690302047c435bb500673065023100c579a60e3cd3dbc370b37659e1fa1649e4a7190ee61e9450411a0aa9b962dda4bce62f58c340571d60c10b05ebc15f9a02300f10feb516d4187aa9b79cc35e20fc8b9c62424958fc5e224acbaea36b84907a121f85d59d0fbdf2c97398fad6daf7a50302047c435bb500683066023100ca3747500d66b3859182da9ad09839c1dc526b6987e62969e8345de3f4bf604fa825c147764e8a4e9552a9adba03d4b502310082887bcf27f1f473a284f5539d3bfd58ed7e1fde0fa12a3fd32cb2addcf0aba08c7fd5280884775dd3917c4fb38d3c4b0302047c435bb50066306402303e661af4864d6a3f31ee8c7d20286b08c7aea4f5cda6cc17c890539778b6639745aa8278b55c80881c90dc898eb1ab7e02300f50aaac7d9cb68240409ce03b4a4b2ebe0b98af3071faa36958fbb4f789c9144c0b5c600f1a288d8b8f568f903287b60302047c435bb500673065023100d06b60571b383fae0713b07cdb73f45366c2cc9ecba78ddef87840bf8d875e4badeaf396c4eb8b6c339c37a651eeebbc023076302e846bbdf132bc7226413fa797e2dc481a7b3fc2fa8bc1e71707571dc0a37cc90958913b6c61b4f59cf0a3b3283e0302047c435bb500673065023100b50494b3784d474d047d42d4a7f0cb19be5ef5012a1bb11c9f17c0c96e0b975f9d98116eba19ea0d0c7f98ac8e89874b023051a7a01a9f25ab3d1608c0902cf857705d10257722d298e9e48cdc3bafabded5a79a05ab91413ed522bb02beda757dbf0302047c435bb500673065023100ab2954e928a0ad631df06391f3778af473ffd32dd99552557c96eb1e4309130a6919b26a643d44dc8b484f34f0b765840230562d236e96f5fcecad761a223cce3c02e224f7b7af0bd7b742d41ba4f68f29658037f01394d0a08ed3d4a0ba5b3767080302047c435bb5006730650230520ac1fa358ae8ec3d8f5f3ae9ef29d2b598ccb05762d641e26a6cba39cd937b3de66e89ad5bc54ff973bacc6a99424902310089a9effddcb97c9f40e4e375e26c645c3097eb2dcd2458e8056518040408feaab500908dede163c4f1ed8780ba905dbf0302047c435bb500663064023001a0dae7aa8b7dcaf1adbf16f187001dee58700cbee963f1ed059a7852d9282bc11d0b317e98fa41982e1caa035a593902303b8c8e8a18e8141fa783d6f06df8f6ea0caa9c84e22620544ca779f76d1c5138d8bb1175191993c8de5d6bd78212fea20302047c435bb50067306502307dd5c5d5526f759ce9aa3c6d1501687ce6136ada64e307f4df16ad12faabbaeabe750e3a9313c2664e76a478904c5f61023100a3286552e3a1441d27363ce10f45a171ae674e322a988d16d3fa8f55cb6a9912c7e474cb9fec4359a06ff6222e0f50b60302047c435bb500663064023001654f694839488ddf04358656d4da0dc2d9f55783da9ccb233524d87a22cae5a14b91c518e80a79d28ca217ce579b9b0230038de868bc5b6dc2045e83dfbf7dc5fe9b06df387629c3b01e989f963c0d0b3fd93b59ddc012033117060fb30bc141830302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023067360159a316267957f8635ab7fc428624435361072f438bcb7e8e696056f5037eb8a8709b49851e6d0e111a2ab650830230758016c44264028741e9b5336d49429a52d20c7cf0efc7e34d90618c3dd43cd323b347bb6053680a9fd2428744cdd2200302047c435bb500673065023100bf019e52dcf0e8699855830e6fa4daae4e902b1bd081c75b202e6ead55f874f8d29ca74888e883721cb228540e2d2a2302300807d36789a025067cb31f4bcbf85d4e56a1cdd831909bebb882dcf0ebd02455d9fba2fdf31d8e26ddfec4b85551cd1e0302047c435bb500673065023100978f8bee924bba7345cd93cb46c32af9aba647a01da8d6d5b605aee7edbb868d5931900d8e9542276e96e8d3747df3fb02300fd04ed4bada715fa0157f3389e5917acbbcb3cbdcb80ba2625ce96e6a12d6bd95826c2f727a8ed8fb16134bd2a59e360302047c435bb500663064023057f9f48ba2ecabcb43634e3f16a019e5cb3c7c2bd5b1bad1de06ab4122a6df21ae7cc52aa10c3bae91beaa57439580bf023069fc7ff7e80730ab174e77de1efed8b8c8b93f6e4a723a2c535a54e85a14ab415aa53ac663dbe60956c61b88bbef37910302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302c7d544e7b2937e713b24cbd966bd9507c3c28a8cc93db58d4859f6e16b50bc0ed60dd32a1673ddd8a02071fcec5cae5023100e059f4b2d335dc355705aa6630887e2454ef82f3258a4457106a37f78cefee62b0b74994f25925abde0c3c6220bc87340302047c435bb500683066023100ffc20de5181b7eeb4bba01d0367c891f7f1514e9fff86b96a9c0f71e1b7f91e0c78e735a9c29c0acb9b9b6d1d23b8596023100bb5d6443cee627ce7c995e73438c22efb8ed6d38ec522becd1df9ce4f61b5f0d6953d646c85a7fd4fa9767b821b81c8c0302047c435bb50067306502306e3e8b0fde12a45abeb39b427bd5066ee6f9c6228f1d09abdc95fbed66c74162a47d324f787e6b443927e5f8d2d1fdb0023100b5525061e19434cbfa4f87a6c914167e9fd2f4f9d366a542404fe2e6a560818dfac5c577b19626bb01809184b8d3008b0302047c435bb50067306502307b8a011767488262c688a5eb76f6dad0920d042f9a0aba98f46d9c7d4ba6abdefb5def1cefcc7a32ec102c0b584ed333023100a38da6ecf785ef17760c737d95b474c106db09013f67f57c8a341bcd78971b8109b78724f9ef56da48166667d0c485ab0302047c435bb500683066023100a45d568c766c151409578d70e42da38034f524716088e19eaac3446b41e4e9623d49d2b72ab7511ca4f6c9be3f0ca2e9023100bc5745575b542cee09bf720b568d047758da7ab9eac13573fb58d0d9a9bb5322716b4b114cf0aac63fe23b1c941b1b250302047c435bb500673065023100af30b1bb883a5644b897787e4a171286b9c6b2a7fe86e06bae21b6a8e8281c53338ce823ea60a292d77cd288e0c07daf023055f752a66a07067d595f0bbdc9f6b4c4c7fbba517c245f4a53ca173f14d0cdf283be854489bdf4bd7d63027c506d8d5a0302047c435bb500673065023100ac9c1aceb651b09a902f969a100f83303700d524c25a71e5e9a88f4d94150f755ff9d5fe85ec8cd25b973cf0205bdc0602300d4f73c1b7add44c316a192664b9d787c6f7eb82bf95c78cc0dbe7c1a9318c4d76ebe5e7a930fd3bec3ba2d0f603b09b0302047c435bb50066306402300a368b022ae39972c8e2cfd864347790c13325597ec0d8fbcb2ff846822debecb3991112e8c98c211107c8c3a242967502305c4d71fc8a90b42a5b7fda578f05af9acbed17ed5ff57e753a0a02256aae3ce7bf158c541624ca492c75eeeda29dd2c00302047c435bb50067306502301a3c16b42ca437b7207cf34aaa9f1fa4805777a551facb50793c301e12f03850b4f5ae62ec7a4750bde235416d575493023100818cac3408fc43d5c6d1cf154469374bc53e79ce3012d818e9d98dff365667a41c7138d29926292a3957f3bbe5f7cafe0302047c435bb500683066023100a06de1b33481e7729a8690038eec0b966d552abd86c1d0a6f53e9a48338cadac54e86d4603b1e06fa1ced5d18a102163023100a1c463d207ae4ff7e53a99ed7554443762514cf40529db423c82b1084abc4a791546de1cd0c7b7b3cda585444eba202e0302047c435bb50067306502302b677b0f890b2fc5ba8702f06e26b142281c5053193c452f4f125f1b8fb186a0bf07f74f85f079a6ca300211865607fb023100f1e409d0704fc489c2044cabe706875c5d7e5c43b506ece47a69a88e36135ab8136608a3d8e6f81ebe0c805be520fa7c0302047c435bb500673065023100f87dc60b39d3048c954cc663eee9371b92567874ba9f2a70318c82912c98db61bed14478ce66caccbb3371b0f7112e7102302b67689dc6a432860d2c476dee0ab78905bb26054b2e9f397a8056e8312f6040abe0892d56b4237144f77117548fede00302047c435bb50067306502302a9fc0b40c5e6a09b838a956e0674ba483db31b05cd8be387bf6828c5ffe767f7150feb9312a24a5a1dcabd38df9f839023100b3b5034a7af83bac052c3954537f16daec0cbd5b7981e20b9303fd2792da0172f09c20338ff2a34830eecc867e6a33790302047c435bb50067306502307500869ef6854f51ea1ab4876d033b3b15ecab881f1747ad627557e19555792a443168ed5956e5eed17e84d0e5913f9c023100c96b567b287f608ea44441b64a03b5be0a1daf81f076ca035b79e715b42a70d9637774d1bf0e1a6fdf78614dac7117a10302047c435bb500673065023100cd187f1f603bd075d24c328a19a53f52595ba8d41350bcb86e3227c2d5bdf6b4c82c7ea6811bcc5e22788de0db6b3c5a023008a6952ec38c808337b5953bfcda04ad63bb6f443876aa10e880bc54db872247bdabebebce53af6e06eba05f693d6e800302047c435bb500673065023100f92e7a31b25d3560a074d7d8183565100a88ab5b93319ec47e7b22f888f3f79c347a31396f1ba0453357b8b84157cbde023005f5541f8f5061810f3cdb9f07f5e3e7a97a071e281068b8dfbba2e7c02a02e17a500bbfbc3d997a14060b9ef950b66b0302047c435bb500673065023100be8a525485486f111728baf7d0efc5a19ef0e6fcdc83f0c8f114deab6d696d42e2e3ead29b52cd57bbc6df7ac79060c402303866198905c711fffb142e9fd7990461a30b4f96d98e5ae5cc042ca0dfeb1d2a2a5bf00d3b7e5610025fa916142e1ed50302047c435bb500663064023050e3a63cbd0e5c88003ef04026aba1e3d03f230565bd2cf31a38cfe7f7b21632452698312dd82fb40c6dea03c75ca6ad02303d592a6bf7da248c13291799225e9d86cd7b0982977d9812ccff9562d2227b1adddaf97b5eb1ab7079649d21afcee2030302047c435bb50067306502304e7c15fc2d3363c40c34cad2fa659bbb6415142ba91ea3f9674b12f9bc2f27ea2e48eb58cf998862fa123194a768b9c2023100dabd05d29afcf153334d06f7c282897c3e8c09170231a5d9101a4f10cc0ce559136e3f0117a1cdc153e91496128c775c0302047c435bb500673065023100c90ed0de3c1e0a25dcf4e6a9c47d29843b60809e667336bba8d43289904bc22330aa612045b5c7568b587fb46e17e01f02307d1d41e6c3c4596cef776ed3807616fe95628354a5bf4f17e4154bbb6059ea82cf2051dd4c05515cb86f7af6354c15a00302047c435bb5006630640230784ffe65aa5cd9e1bffffc76e24a5dfa676aada13b1bf02ca802578e7849d7d7faf099c4fc33847fba3744e9a412df9b02303c336a8ebee7bdc7af9df5f70e1c1ca44b8f3c34baaf269a301fd0d1a8fe5d423962e8940fa4a34bfe1240db1cd7c3420302047c435bb5006830660231008e7ba80e434cbc152597f0bc19b66253bf1f3d18418943f46f897f445985b3b36be2583f2e5166ec9a9bc187324f56d50231008fc31e1947e05e52bc77f4cc53a0574f5f6364b645befda967f13e56b5e6356ac8b8ec5b20af1fb9141950cf35ad5e2d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f4b27c6438d51b009da731fb64786ba8316c00e2bdbfe45199b10f7a9c9125cc19f5657c2ae6e40fcb3863ef83a5336c023038dc824634471800dd38bec55056bc149224003420baddabbbcd6aec396521caedb97f85f3cd17f22f545855d0157e050302047c435bb5006630640230698d402ac5a58ae44c358277def063af286599be03bcb5cd3141e267998661be197a08a1029842ac76cc71d397cc5a7402301c741b1f518add122bce01f0e46da5d56e672af60ecce8669497d8bf9b73e7939e591c94ab089b07f57c9306a347ac300302047c435bb500683066023100f23a889750d21e18d43b6fa126f8c85e6ec860a907806670685c945e6a12cb5149df58fe621978e7f11158b0299d2766023100cb444d10f38af4188a342106c9dbb1c01275ecf84035fc142382e302b918a183ef47db8b068563192bd1a5621ab64ed00302047c435bb50067306502310099462f77076453b13adf81b11c69a088bae7680f2f76785fff0fad3f79a5d4ce7256f2b12d1df23e829042a39fb2e31d02306559de5d259bdc3f14af8b0ea3b494081309d9f28151d748c3c3bc76b631199a51957492ba9d9b2547cea1fac0716d360302047c435bb5006730650230269bd00d5084f0f63c7ec23f0ea605dcb27602b5f3a449add6a7a2497ae44f2a0283f472b35b9da6d54081c8ae53a7f8023100b179ffbd4b0bead2623a9ffb6bcf25c9e0bd6c58a18a63f25c148fd1ed917765278af102b6fde4bb60e4bc745ee2eec60302047c435bb500673065023100b676050c0de4b6dd06ef9b14a95373e92b32b045f56b3ed7fe64160ba19e700a9936c74555a20f8a10e2f26b99c2f53502301e82c7172cb934ee330ebc3e925882181f3a22a556003c33d9ff5a7a6d83f20af910c1681099bbe9081b2841dfab59dd0302047c435bb500663064023069f79852ca12a6704137f88fc09a804c46e6b63dfa6076c850d20a786a240e844aba3b6b9f7382b492300bd61cd59203023074fed46ed21544cf57ed4b49583bbfc80f7ad60cc30786d19c578a9806469911a4a517784f1df3513d011c36ac8726230302047c435bb500683066023100e22cf511ff87ed5a2ec3866ce11d7e7d708c36ae4ddc3aa66332053b0d23df40959f515d1d2cce32b7d031ea9a697a9f0231009f80aead6f04084d8efb2c6d77054cd7deef6a20eb1ac25ca648c52d236151bf23746e1a86ec7d8dc85b7df50a45dee10302047c435bb500673065023100b2555c345fb3b0210a90dbd47893e84100ddceaa8736d52a8a75562e3970a08ca707a4d1ce593dde48f3e14c93f1cfe202307b30faaf5daa7870ea2ea0fe641983d3cf71e59d2762f65d739dd793768f91ff0f14f5d76bc2538eb4e7f4c6cd75c1fb0302047c435bb50067306502310097a4e44a699ff95dbdf2144ff0ecc51f38c1f27a215651ddde521961426ddc44d85547e62ad46f72419d059e3f35b8fc0230246f31b8f3a60fd1c7934d0cd9ef2aeef13507ecaf8ff9e1d16ef59bcf51f89686801f13a21928a1cacf00f101c27cb70302047c435bb50066306402302384f29f48ce1f97709b5d8d82f0931a40d6dcfad776b6a51936036edcd4299c2ed719138e09e4f29dd1e01fea79516b023070d61692badd604f93e508509211f9beef60bb5f5980de3761e337bb61c1b7ddef716d6f08863c428628043a4f7be5750302047c435bb50066306402302b08aa45c45a693e4e963a79103a37b8ffbdd7e91e85068d00772dab86574298506da3b402d496ef1c78c8070d1272fd02302ab1230f6c63a8f4c4219d1ab369f0f3febfb2794c04ef5273fb72620410a78a432899acfc99cdd710388f4b4e137d9c0302047c435bb50066306402307c2472e64fa9cc34a88d06b35cce29068fe0092ac2ffcd28f3cf22b78347801d4cb54dca8b6c072e4a5c1b85074e81f002306ff7ffaa2211fc3e786c2967a657586d386650709e94d58007bc65c2a2ca6ecea6f9a1add9f068d552ca4ca63690806a0302047c435bb500683066023100fddf6fad55c0b52d43410d5e4013639dcf3618b0ed50584b2831fff6f4e86b71a6ce5cdab70481568eb94465ad0d2fe4023100d25e5a9e5de2ed42ba91871bfe5a582bf6a6ba986b22ce1d7d423533d80b6028d21227ae745431bc4dd43135b0447f960302047c435bb500683066023100b4ad0285324ff90363b20b9473c613449b40055db5f8c8b72cdcdfde477d168bdbfe21a17afb7848d50d5ce94d990b8f0231009c1ba77a1dbfea140d5797105434eabb8b3272fdca4a857370817b5c01f1f49e1d4cfb274d95b3762d1207526aa7f7440302047c435bb500683066023100e18ca8124a4ad3e23349d98168b06e932b375fd7f4dc03d383f6b32f211d97c8dff4c6711193f39628a076f7dea846e2023100c204f04000dfa1a6077d03725fee722c3756ede97ca749c48bd1f7069eb1cc313842d522f1ac13fd9936636d356db90e0302047c435bb5006730650231008171a79b439ab17a7bf18abdf205c419abaca540c6b3adb6b0cea4eb97ebdc43f4521598d6107c808893f97d0765be0b0230630e5b5f38e0276b5291e7e31aa9df08d8e013a0cf4af4bcb467acf9a4ee0d7f1a748733a306d1991fe96166e77512be0302047c435bb5006730650231009ec991697b730d6f64854c2d57d473cce918113444f2c304a1d8c38bcec24b2e32ce3c211f8e900dc735a87e7e1a815902305cfa170df0c2934d91c78ef65f34b69725d36e600cb0f78e6e2f5b265346b9c4a2c4ae3f10e1ee4c04a5d7252bf1e5bd0302047c435bb50067306502303182c7ac5357bf5ff54a3927beb8f5a665319cc4500a08781d434e53b8214b75333bea602942b2dcf0ef03bdbda15862023100ec8ff185e51a6b47b62f9a77d2012152738a6ea88191cf3c18d1b27c3bf06728a52b16bc99138abfebf9073fb736a56a0302047c435bb500683066023100cabd993a3e080b7bc8e98defc697be34c9a95a0b1c476db36fe5649f3c47a65047d2504e37404feda1f916fa4ef97cda02310098cbddf53b2fe5e97579a37f47c270d5c6aa242cc6dc122bf2e7f994382dbb5babcb661fd84f4fa194094b25a41b756e0302047c435bb50067306502307af8d0ba178e69febd8ebc2e9cf507b4f541e93f76980380a36437b6ff6fc542cbcd01846a50779c2b66a3f40d45a311023100cf3a80d6d490fb672009b804c162859c85a02eac52a6b5851c06e4810c5045d326f7327379ed963d24765165f8c7ed9f0302047c435bb500683066023100e878d9c891defa66cdc2778cab723d05de9c58957bbc07e10da6fc099286ab45bc1223564120a253ff759b7ba82b483d02310087894ee7ff53ae5bf9be754a6d321d7f29bf802a6efb38a3c9173472d2d9c20b6dcd0e556a58440221f35522285cd87d0302047c435bb500683066023100d172736677240685efcec35036f54243000d56055df6653f87bfcf539e0839dc8032eeffe1c2d4cc587ce264eeede848023100aa1167ef3fc4d737c1f87923e8444333537b6db3c5c930f73ee104665a97f9d432c934b863080350ff96b8deb3ac5a270302047c435bb500683066023100f56bfd718fd517937f39498106674d76f45a99a1be48baea22b5a17bbd12ec83c328cff0a84d343bb4bc220a92274151023100a5e6cbc176976820af4361240a968728751a13dad24c359325a30fffa8be9fafe99b998025f81a1b7a37206359fdafa80302047c435bb5006730650230786ac00aaef3be068566ef711edba4b9f65f98ad921ed7b5d3bbc997dd957c26187a026c4492db221e4e9c477dc1a2310231009d1f77d3c6473289e3f5d0c2cf099b98e9dc93adb4ec7b3b22e1ebe0da623d4efe7e5e973081e508603a4272ed3988970302047c435bb500663064022f358dbfefb419db3300dc2d44312a329240622aad8a49d484d956439cb191a368ef01f6ad5ee894d42702a677d80e1702310090241bb5acb1f74dff79bc962a79b2267d7051fb75ae4c27496f909d79528418dcdfe38d766324f61eba156e5822bc960302047c435bb500673065023100caa8ddf4b84de8a277110fd7d5ff06d5c4186d190184aca584821a0d8016f5ebbcafdf77d30b6350d01b0e4de4ffeba1023023a4940c363782f7c99d53881d2351106800a3c23d4368ca91a4a052732298e9f4fbcaea95b19bec44e7c05f7391a1260302047c435bb5006730650231008072541bddb852403d6c80dbd3930319bb5dca2e94cd5f1cafd5b7c629a6b65559f1eaf1d738740235091ad7e14592650230323ff694fca98f5011afdfdcfc5a23b7b82a5fb09b9903de365c77c9c9ffc368871436304af04c5566727f075ccfc9d80302047c435bb500683066023100d383721b3e5d197d037c7392f506942d51892b76505de1bafe29df64471c8cb66d572df6c869e1c9210c311b93a70a02023100e7c1dd987acd9c60182baf93e11c2214415a7da50172a79d8706f1b4abec7ca875586c8f3f7f9e23c59dd25dc5c1dc430302047c435bb50066306402300fdc39d3086dad776f23ad90f23b09a862130ab75dd97ef00fd92295bd757ca7ea22e70dcfebd8518f9f46faadb2399102306c558f7d8d694ba8cdfb484277fc7def7e8dcf484c0b397db517853dc50f522e62f6f9825a3e729f66f92601bb033f650302047c435bb500683066023100d4e196a54dae3fbcf6260f239f8a5a8a2dffc4c9f9468c4278bab9f5229a261bfe6fde462b6d66fb56046605ee1a45900231008817cdfd0582d03729f37adf758faf0144a192b1b81a85b9a4c40a4c2e84ce5498ce7a4842be8a4bdd0b8bb6f4edf0ab0302047c435bb50066306402301f216f633aa8d9e409dac50b4f652169aa774d52c4f003d4b24869650784cb93a6097999bae7db5607fcd9c3c701102f02306e733a4e1f5db561d31b01968e6d89017441e8c3f6db22692bbfd6b8617bcfded5d09e27962251ebb24ceb2a9c8e633b0302047c435bb500683066023100fab1d020a8c31bf288d45e25141d13040d53184ce2da81f09227b69a590aa2ae1679389d5f7d55e8f703ebbca493a0fd023100ec3b4c12ad3e20245dfe900ee6516cea784de26b50452868e87b550aa677aa712c50712c6169299866670fe9e243a78c0302047c435bb500673065023036a76e3db81da5f3599eb84a6acc3814739c3794de1173386c458b0dbd45f6444f92218fe5f458646b7b57ff1c01cd88023100a64af378dfb80bdd0458b83490f6e110aae4c69fbac99ac88f45a3076a0efdad43523ff6ca683ec129892c6d054c3c8f0302047c435bb50067306502310091475b56b96bab84dad2471d15d0541301c392a347e21260f661fe7298416921754724a17d20980482fadddeba4a95d2023057b45d9238edef059581840f9f9cfd29cb0a82113ddb25652cb6ccf717dbec7d556d0c752a0ae7d7c5555d9dd84a2cb40302047c435bb50066306402307dbdc7db2f36c63d79748bb203290890d5e289f3c59d1e7a931b8f2fca59051b94bb358f434db7d7f345bd374760b03902305f5967aea1c445afa526d7056cba65a67ad618c1b7f801a250df31fa8f1a93fddfa2eacf80a2b48fe4f7e4471f0a492d0302047c435bb500683066023100ef05ac1f4dc865dca8d6d5642659a59a1379ac32d57cda89203d5a46bf96698f3495d2c66da0d35cb3b34a441f43f24302310097f0a0ed298db8bfdeb34570ad5ff945204a231542c3b0b01e6b0e4e814d6b140d55da9e3b5bd992be78d0db81b4eb460302047c435bb5006730650231008a0b4d08b24fc1f8a7fd283f51775bdd3e2a1a643839870c443b2fb494833bbad87eaa8c2ddc3df11c9aa158897324840230103a5c568a57c3903cf36bc5ed7fdbde883bc3613c2aa3a1438a317f60e4f4a958d9fbc5a1859b759e5f605cca122fa20302047c435bb500673065023100c2ea04e71d218d1bfae45759a8900732458678f73cfaeeb26b0e031bb3200f09cf2395134db41f5bb7238335086aa4f002301a7b27e0e7f543b6b9223befb9c2c8269ee84c0a138c542a1e5cf6c30945c2cd173f9454df5c5cf8e196abcfe93d2e340302047c435bb50066306402303a92a98c98d6c6c17edbbe9603a511f3cc1776f158128a638c2d0213bee5eb0c98736778b6fa54e167d564bc49bb694c02302955460811f9fb047cb1c844eef2ec73186edfcd4b12aabd7cd430bf2b098779f22b22cd479075507e78ba8ec52859b90302047c435bb50067306502302530c6f59969eed5543fc6117c7efc47d44358297229d7c3c33080706598e37d76a20f066e9e90a02259918e97d0b383023100d487e0b25928ea11e4cb4a7f5b3fcebceb366a2a30b6c8c3a54f5bff6a2a977f0d55f190d4da19dc937d8d969ea7778d0302047c435bb5006630640230034e14b6a4cc2372d0978b3547d4935c2f4f036eaab37acbbc0e3231506365ed8393b1558f874988553cd995c1b79320023021d891d455124377b98dc83519c78325812f5ba0a7a15e2a6677c4f196e32f44494e6c3408b23c75ecec91e71101d5590302047c435bb50066306402303d5d233bad1714f3a5f2ef942326fe02b3c3f641b859d113c57860f6bc369c755487d1bdb0c2fa713fcae17861f1dcdb023057c8a34376d2bf1add36087dcecf18d31ef1691976e0791e4a107b819c6ecbb84d71d39c8e13ec3d99fdc02ebe5ab8f90302047c435bb500673065023100c900cc23195ba55390aac41b95a02c38226ba0f57c90cf09d204443878db738e46053222f22f83d4937ce7f2c1c23a3a023067ca3d37bad95a10a16696ba2786c34d9ffe65b62bfac0e6e3a4f8f5b02f276ec9cfb697e62c72a23922ef0507a7d8760302047c435bb500673065023100cb2dc94194993d6aaa39bab4fbd1efe0d855cfe2cfe4a450208d9c08864e1ede5475af2b481fe5ec80b6ed4a5cc18e3902305f892ddee62daeaedbeda03b14d61c7b1d6297a4f2c660fb2327c5b148564dfc7b0abca3e6df68b5fd1c66d236f9a5b40302047c435bb5006830660231009126ad0be41681d50204e3280cf293437aa496fcb1c94de031108ae63bcc92d081f4ba9a5323c8beb5874f6d0d344d28023100af3871300a0cdf426816441f6fa09461f7ed7e66dbcd327643ae4afac25b0c40bd8ed5b5db6ec5a1b5444689fbbffd7e0302047c435bb50068306602310096901834ecae0052b97869a089877ab069dd597f9f954c022f380a36e37743d92048a00de77cd59c0d2c96257605ef6c023100e905ece17aa45e83bf8796aceb817c3a7514b00f8b60a499a630b8ebb7672aabe522965ab380966f5ba2965329f054170302047c435bb50066306402300854fa396e06812b5142defcf569c264a84b5faeac8d82117709130a91b9624868c1f67d4cd7342b44a0ea99a499887502307129b79204b37e468ada6d96e302f8352e25f05b20d8d03564449b42bc3f90fa7c36275b94278b69b197f64a5de6212a0302047c435bb5006830660231009fa668d0d586edcf58b6c77b4113f64c6641776620a4a1068e367b8b90dd3ee793d2e5139081bea5ce054fd7d117ad40023100da9cf49de007b2f888101e770e839aa5909322b765d7a7d0b97c681268b193bf4cc4e594b03fcd19df07243976c7807d0302047c435bb50066306402305a2556c3358b5bed94d8461b777c3bae566afa4cbb7e75159aa45d4cf2d7c0401ec919685b0e2b00d5b8f2d1d6a25aeb02303d0c98ebaeb8c6cff28d5f0e7b95d4750c681be1180ad47155763b7052009224b2df6d69b6729cdd6227909913722e680302047c435bb5006630640230117d1560da229c90b797ba1663434adfd3363d7d2ed058aacee6d3d48225c3c8d57bea97d5799ed2be744d015a31be9f0230683f2d643eedb0a434097f302d0e3845c236c93002d01cbfc961bd0d0d2595fb25fc5e7a659c85a56410c25c09b77d270302047c435bb500683066023100c40a05b09ecb76f81c6c71882f14aca6b4da74abd619c007fc294a14718c7a81449fd536259f74e36f0dcfa613d9b608023100ff5df3c76878598d08e03052cf3e9294d4f0c6fae433d87b3460a3dbbd6e1a560f17837fc366d26d02d7bcae7d71c88a0302047c435bb5006730650230387b1e87c4f85e2c6a215ad3ee2f016b92081227e328c15a1cecfc940dff65c08dd159a05cc567d976c97ac2eaefe42f023100d9ac27cd8ed3a3c18bb8f67c3137d9b08b5b5186bb5aefdf02975aeb926dc2d450878543a3a8c75e3d9f4fb56af9b6a10302047c435bb500673065023100a67e3bdfe8a364e82580b18eff8e2b508d38c12dffb990a188545a5a252e169df9505c790e435c74a9e3cbb448c442b702303f3badb605baebfc3417752030595a86439e3fe540b2b6b5cac6cd1c53341134590de5654cdd7f53bf0037bebae9ebb10302047c435bb50067306502302b57d9cdc2539570285fd327e7d83a776f7a2e8dda10685f9fcc329567d6f39efef4afd8210ce40426674220f4bc0195023100e9ee8f4b5a21e97a060160e9333df077ddfc2e0c8c84ad9fd916fa4af7598b71b9c9a984bfe7dd8b3f22f0c614b0ea7b0302047c435bb50068306602310096f3e564f179f5822ae706b35dd6beec7b9f24f5b4a74a01a06e493a9ab8520c20516ed9253b8341634485b0539a9a44023100c8b95d8dbc1a0201bacd0306fec70ef7788c76d3d1f16bc2e24a1798afc4db748ae74e2f65115010e1e8c2a6b0582c5b0302047c435bb5006730650231009869db9769042a7f86cd57a58588cbd93eb31d58ca252649c852f1800b7d782cfeec71ebd477e6fe6733eb00c2febcf002301b67311fc4b69172fcfb58e29a2dd5232c960b903ff250e78ccb3f389b423d9d12b4e510193cfdc218cd2a8db7d0c4b40302047c435bb500683066023100d04697ce45a3e2d573bac4447301868d3cb706e3f14b22432618df451ebe7d5d17f1491d083154d3c8387acb97e371c30231008efff0bc4dbb2be3f77cc754c2dbbeb5258fc3317a49fb31a256c4456dd4bc772bdb626b16d520922febf322dc6a041b0302047c435bb500683066023100aa476438dec4e2379fab00ca2e8353ccdc0e3db51e3ac22f92c43ab26ba53dc20e2a04c317c381cd9e12ddd3730911bb023100ee4efa043f04a7e7c4e4778a033b7c2e9cc2cf7725c3a99cade540a723682d274b3b70876315fb720130bdc61a9cd56a0302047c435bb500663064023001f96586f2a5486a135ec48335db67dbdf1a620b631407304d50dd33d158d571cac0a5a28df10ca3dcf7519ec74950dd023012d2a6de1ce8643052648540b994d7230055266d507c180f3b9e955b4c89628c50f91c0222cfc71f5e5012513f9664be0302047c435bb50066306402307d6958d73ce7bba3f5620c03bc0e20f4e0741201204006999a935fc840ebb11b1fac57cc043a5d1f02cb22d342800d0b02300836390e284bb086c025d2044ba93ca86f77996a7320e8646f700b8976b4c8d4ccd6eece8d232cb8a6b5022372d0a9d30302047c435bb50067306502306fa9af5eb8e6728680ed86c3ee460ab14249308a165d8b89a665454bc3bbffb9f7179b15b0e5536ad2c79ad1f22b53e4023100b459827da1b168c84a832bb51e31cd7a12e888af491f57c5d949527c7c979b391fd6ac5db8f8961718bf01dbd490495c0302047c435bb50067306502306563831e68d0ebf125cb7ffa8147da935f09d2f545b0f8f0331f0df49e4b5d81ddaac1b2d6da544557d22da22d07b495023100a7b18d8034041bffe1de3fd64c2eae34c5b0dc877966b2c9a603571ad34261c7d7e25d7a22371d07f721e93eae2ed9970302047c435bb500673065023038a0705c4e093810d6ad44d1484868ee6120e807f7e57f48cf9c9683a42ffc042257f6f538d0943e533573d22e38bb3a023100d875ff6532adecd4988d07dc8d03fba0590e6174413a349da7bbf395f7cba4ef1721fa81cf52eeee4d2b8e1698a11bc50302047c435bb500663064023047e0e4a5a9cf645b6ddab3bd59fd517554efd1a175519dc6c306131b7a32356fe9b8757e921f493aac85df3e135e60ac02306473535fa559e8e07ab5095f9f65af6aabb3dd6043a1f4361d3de8a5ced9b12ff4cda6570b07b02f050f6d4f3fa6cbda0302047c435bb500673065023100909df63dd500762173a60f5698a2a7688ceb8fc7d7151941d913cdf8c05a09f69e1f74b593efbabea92eec1793768c7c0230180f779012c65b53bb316281400a9625e421da3c49f8f4070339e902dbfd319e9c64ac817b6cb736f9817414d419e5840302047c435bb500673065023059151a1234de50ffb0b86515396cc53f114fc4b1867a31ab21899cc273ef3b6747def6c011a70ca9e103b77ef9a609d8023100f928f541db5b12a4a4ed60a9f28dcd234c7561a858b7f4d7b09635e0a7a1618a7bfdf5203f94a637c695d56802efade60302047c435bb500683066023100db2810df9e797622e5ff8a53e11d4622e12990520b939820b82733f7bbb2f7514115d3ed1c4901320630a6a127722b56023100ef008789051e35b9324a551c14ea109b19525279e750e36bb476210ab37bbbc0de3db42da6bc28925d6d989c710231290302047c435bb500673065023100acc63a1ebe55338c7af3a7074d1759c1b4f9625e887535d07fb9ce9c18d49b49186ad36ad401233cd74f528ce4e208ab023065bd6bd35be37b0e1c17e79c6449f7914a1970f702ae3edef234ae8e031cdc4c7efbbab3dda5c926858f5ced6c2333ca0302047c435bb5006730650230329f063203386f5046fd6a7b2f5be1fc6ef7370f2ac2ea3b1bfab14d015fc76303fdeeb504a38da945e30e2c645a09dc023100aec427a3d5fa45537808169561857bbb085003e575455558d14b9a85b8f050e08e75fa2cccdfb5b8663f45b638e006fb0302047c435bb5006830660231008c4b5c15ef7cc1f11bd0c797678e4b8172bac490864eecaaa24c0f007795bc983d60b765614bd29719b263d198706dac0231008502f3f09dacdb6a197b94cc0f3c3e3feb822d388df560a14c43f2599f96bf29ef22ec43dba417f741aefc29b4cab2200302047c435bb50067306502304e94873b4b51bd3110f2c6b84c2663778c2a67ed55c1fffc6be95a8eec9b8b6ae744450ffaf9ab288b081e1952564801023100ac3185f675dcb1c088900133e4db448027ee332c55f988207bd055f0434761e0efdab33422d11a2b0dd7635db506568c0302047c435bb500683066023100dc33efc47c52f7b42a6f9a44aac50c4a5c925c2c7a6b37f13bbdc3b21fa229de5cf976f9c6ae595ab680c4389180a5f90231009e86bca9a6e24eaf44bee78097eb87eaebcacdfaaf83a484ba81aaa6f374127ed18de8a956cf7ceeced7b7aa2de9531d0302047c435bb50066306402300c474042cc84eb7869eb1a9a6ae13bfa9e1ba8cf02523678669ee0def75c03635cd60d79ffea1053a08565e82845dd7b02303ad47ef0b270e1dda7bbc73b1a93fa4ff2e64a0e2bdf2d507d6de65e4922f275561570fee2dee4a665a878127d01ced00302047c435bb50067306502307b8230654bc4fcf0540350a0bd0a6eefddc166b3c6bca9ef0cc54d3e617ed163e3d7de2d214e3264207801ded5b39595023100a75c95ad5dc70fec175cae4b7ccf9ebfcdb6f9f9bd54fc8a6bc9eedd6550f2029c88ca825424ebde3962787bc635d4540302047c435bb500673065023100a9ec6bccfd69914c6fc9e706d86e623e941763c9f6c3a1cfa7e2dcac1b2cba08a75658ca31563c5ff152b7e6866ecde6023066d34fb8b1c460a34f49af638abe19a08012c866e850e855c69e543bd9597e81448a85d4dfafaf41ef3f14a2fa419f5a0302047c435bb500673065023003f7a35ecde3e18b07a4fe70d0d9caf90a6181d4d37186a892a81c7a21612a8fb8081ee5fda700e2c8be7d8317965e64023100b0dbc9ec37de7cdba28e9d2ad5265991c37e26a6421a0618b4c7837fb72144f1b8921a471f0c430952a8b3f21b25be2d0302047c435bb50066306402301becce88c2ad0f8a7b95ea6f11f22827a5866b031070bf424a7f1db9037af05bd8af00b972bbc10c287b648de0182204023006f349284ec901587e6574a7505530a50ce0cde6ea464519aa2d8f7e966107ec28b583010d0b52c7e57c538dd821f91d0302047c435bb50067306502305ae9d3b7d05a60bcec5415fb5e93bcec157f6249e2f293a67993d46a4587e2fea493606874170bf9420244b1ce7b773d023100f6096eff1452744cf077d6e076a383c06ac676c1b4568b3cf1cec4fa172652afd79dc397236c70f8bd825e2a0dc60dcd0302047c435bb5006730650231009206ead9ef217016ceeb1831c7908b62b14c0310058da557c4d08e52692523800dfe5cb6d33369e411623ad22cc38ab7023053c62aedb211a15956ba765e1376dcab85bcd8f746d9257b17e82a420984266355be5e0ebdc5ff36a9eba1d8c875563c0302047c435bb50067306502305d5101fc41fe0d5fa87abff5fa9d41bc4e1279bda5208dca9f83a852fa2212b7bed70ba1acdd7ec6b14a7ace836248b902310095bc3a4f73bec9bc60f623ebda61b16335f717dbe29958bb54f6596486b160df7beba58efaec7632797f3874b05b729f0302047c435bb5006730650230011a980a00c059b2901883a3e81ee207ebacba665aa9aff421262d13eac372c559359bd6fbe8410afdb6cd7eef2a7c21023100b7dbe397d0dad37aa89dde8e6ab5d284a8f842c1091078978d9708654bf0ffa09b8b588183deb5a21979cb9d24ffcbd70302047c435bb500663064023032b826d1c992d5049939e6cd2687898d2f37376a6529d70c6affe3c674fa264814fffedfb6b6030b142b0633e1cb14e202307e1a2260da185b5d36d1c42c4fdc5c76dc98b589743398799b6e64f2631bf837ce6353685ee00500a4f892e9df1d7d990302047c435bb50067306502310088dcc0a7c743ebe0d8e08a07586df385d6eeac4c7dbd406c44df0c727c09f9c8b5a7e6aeb455aa8a8d860759a19ffd5402305b7cbd57b9b0c1d78486755164be70f1acea5c7cf923c1ba527a913777289c8e461f4d3e13854b2a6b52e60367495d920302047c435bb500683066023100d98a5b930cb4b6fac372a1932ff539b7beca440e00158f207c8fa9c38754ad57606125a692b83a5031b35279f90f4f9f023100b5ae5d3fc98a76c51d0c96290b0ae10010e2696482b693ca04c65f075a0ce75f21bfede4049f962010d876b9a3b04f850302047c435bb5006830660231008dc8333bf8b57799f2eee5ce01cf01397330ef20afda40182c9715f637b94aa894d93615ca0e3e0b860a781237c6b9dd023100c5010af710210cff39db35b037712f1529b6da3b92abd32ba6a472d88d0cd8f3897e143576abeaa254cf7d3ea8c208cd0302047c435bb5006630640230247adbe47df97d5bc6f50e8eda5c3b19728a30e587042e2e7d54385b9f8186c1f8877922a9795f0b65faa8ffb1eb13910230317dd73969590b9b8c8badc36c26c89a84e551e48d843cccca583f58a7a16149a4eb551aa7074881a510173aeafe3f9f0302047c435bb500683066023100f5d6e9b4e57557a6a4af5fc4b8cbf6f2b4695bf3e28b31510922498dee0e8559ab551937f23fadbcf43c9e3e2152a4dd023100aa00d9627449a7f6010fa796cf9a0d0e7219312179623be86bc37a32235de1b5b6e511882a9ed84ddc3c3b3b6436e8650302047c435bb500663064023049ef2d55c5c3db45e26de19fd3ce3161ec8f0848de8db725a29a2380ec4d07298d31c8f30a8a8c5b5ae01aad8478dd6c02302f8f1a94fc16bcbdccc4844259fa1f79d9997fa220ad83382c88caf8550ef313d88b99800b981d7ad1be2dea9b97c5ea0302047c435bb50066306402300b5048aa7a7f20bf1317c63fa4d183385d4d03108ad4aa2cc6086bc91055a5b1c5418fe5fcbc6eea36f5a14ae0ededbd023002c278c4aa8f6e2d540ad4bb7c93e757e58ac1f6363f3104465cab77aaf267620498b545ba03d332f922ea6fb08c15330302047c435bb500683066023100e420fa246c71a4edcc03c3b4cab8bcee4899a680278ce5d39d47900a9fba2d051304437184b7afb142ea9b6eb2b71c87023100e9630be98bfb26eed1400d2da96123618695d980e010e558e72d518448e729db37496c6825d7d64a55e9553507463b950302047c435bb500663064023041ad0c39ef654d6b7bab022a3d33ac9f3299f8f34c960aabb393699f9063efe0a20e5da6133466e39cdcbc91b6895cff023042a77e443735b318075a502ef928265cc91ff0ee032ae6e44552c1f856b24c50d4d0af27b6e24f9c21e055b907c473f20302047c435bb50067306502304454cb2f2ea9d25c88cb67693e9a03a40e3f2adb34f7af2c9fcd60a47bc6e40a5e5f81354820c6667889bd283c799ffb023100dada050d73aed1b267839e5c45fdca08c6dbe0415923254dce78611efa9bd6e768352c772a6b80c6ab706c0f053f16eb0302047c435bb500683066023100a3ce147e244813f2dd1462e4e0b0c37f6e637199d84c7e9645165b660109c6dda750def9f4738c291ef22d10026449a5023100c174af03177b2c587bc961bf70f8d81dbe2ebcfc16404e7a3fbecc778170b1a4af5c7100f1f0c12a9e7a91735763a5030302047c435bb5006630640230542369b233c476d8314c8c708cb4253ab29737db6f988e5c0bb43e880a379d15cdbf5830820115bc558e34fc5832f15402303e17eab5eaf7c5569542f23192310c56a18fa934ddb7c1cdfce80871dbed4ce3096d44aa0a63f0f6f50be0e3277607b70302047c435bb500673065023100d50c33efd55d2cc7accfee9c904c2480ea42d6154cb355b8ef76aac4347849c12bb1fdb210ba6ff7b02c1e03e341e83602306b6fb7ebc0421ed6cccd63233584739d4077e304e10359d082a6ea65e2230c9d7967c1abab784ea982e2961a3ec9fbfb0302047c435bb500683066023100c9522213b16d5eca2b05b0ef15401c31dfc6a536e595573e11de60d3692e098349870a67cc8e2e543afec08baf61b65702310085aec4f3f6ac99ad61c35c9eaf890b661db1faf726b02eb3ca7d4c24f783d2cb6e11353bb9d4488f5a97ea01f876316f0302047c435bb50067306502305efcbd184528d4dcd4622c286dcaf255c5a2e717bd14fc8e200ab77b9de568f55c287a919c2f7b34c3e6602d65ae9d33023100a5f3ec12744b422270e683b2a69896903d69f348a636e8c9d86f087a5c643a9ad8143b29728c22c44e4d627778e07ee60302047c435bb500673065023074ffb164b5652ac54a3341d1f1c6c82ce21410e06247eb161bb62c8decbda10b8f9d48e304208a25a5e61cc56489241302310083846a108094b73b3b59273b1d1404efacb41ad10f1444031bf1311ef2229dd368399d3bb841035da0cbb8a281e7cdf30302047c435bb5006730650230261bc22d5d5ecc5e503738df08b1ca3fc2c3c99cb5ad63fd04b8c2268d5c594fa3061a653cdf08f903d489d3452b23dc023100e9c77685ccc2f3376222eab809f41e95fb069d01af233dc7c9819748589f4cd4773962dd11e86fa5aa7c23c27f3fdcaa0302047c435bb50066306402302150d1c1434a6f25e27e65e600ddb71b3744ddaa4820a7116d2fc8d2776b28745aaaaa2a27c0281eb1b59076e20c55950230722f6c5dca5f8f5733a70f3109cba20a9104266ffb679adb0f3d3ff79e40863ca139ffaffd449504fdaed3a22366815f0302047c435bb5006630640230584081781005062b29ca17eeb3a937d44087985e3b89663688c70826b0353a9554730bfda06ea8e1abd29e152d1d018302300100ca8b71c28adaca43f41e504fd693ce96a4c15a7851fe5971bfd3b5c028e8bfd1120ccb710f8735ac20b7c4db9d9c0302047c435bb50067306502301b1ec212ef23d4c4a1d9385a06368192343111886bcb545b497a6512f4a2922340177cb2c8c04bbce011a95c600e4acc023100fc01a97cb27b1f7598f516fbdc208ab437f0bc041fba91f5a18efd2bd379538084fcbdd8739f6f89534242d26c736b2e0302047c435bb500683066023100ae27098be0cc821a8dd11c8f0571aa7b60f37b4be711b4a05f13534fc02893ca1b9f1426c0801daf82c1c0274ebf3709023100bd416765661744cbc87de566a4ad9fff842cb9abc2c7daaf4a98ccf706626a1313251c29ff7b68ffdced0eeafb6c5ea40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304814336bf8c9b90f4f2518d8f5cf8bb68a9853f874c44c29a1184ad3b12330f1857ed35f9a9c5673fee838477a137017023016d025496a78bbf3f5a059d19c03622779c81ea13b0ea180fa29d460fbcfaf034221d435965b66824cdbf6a6e14f608a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fc1d7cc602f3f9afa090bc92ee51eafd08837c086a1971cf5673e28035d14de5e6e9ef4bc59d93ef8ca0e7cb20f05f9f023073b52acb6a7bfe6779f0ac06e38a7021a7c0386070724a5b5e5a990573472328ec958361b99e610c013daf86ca76d1bd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230651192a2e14a14b8200f9f0601638d4aa14eda5998de7a330532eda3bbf3dbb4792dddc9186177d1fb3705016a95645c023100e5e4f73e2a6aa550f54cfe5f4a25db902a26f78b3edbb9953b7da96ec762a487bb55b2c1ebe77d6b21b09561c3908c6b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023028d24910c12b1d6cfc13b11ca1c664b86d6ee0c511e4888f2fda2eb13c6f43eec96283eee737773196c5f2ee1ffdf2bd023100fa3d2a51a4eb290a37d071a3ea60d9373ce443e537f599b80eccb8e938ffd22c4768756babc48d1e4df61d231617cbe50302047c435bb500673065023100d55f2d2e44cc429e2481e42bb78eb0b56329ea64eaf3a90723dc9e96b992e30b6d4d875ca2615f0329c95f2dc721ce9b02305d01b7ded6435613251da499ae21081433cdce4603d903207964944d7cc05303bb69661d339a437a031e7613c4a37cee0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310087e1a54a57aae1e0883254bd3277a4e188fa1e6ae70b18b9cd5d0920836a21178b4cecb7b65b0d6aad1adb2f69aac21e02310086da9973c1ba48e47dfbc497770180dfc1f9a0e8ad60b527f42789de062ffd94d5c3ca57f2dfb0161d36b84b252b88310302047c435bb500673065023100fdb554880fac16a952be9592991fc17b500fd0462b6566c15c5284e7781583ab99c2ae6d1be53f4bf080c09dc4b402a402305f1c1f883fa0b4b9dfbd6b897569b28ef86c6e91e160b4adeef9f973506023650d2c43fa6f6a9c4f624ca71b59659b870302047c435bb50066306402303b14f79d3c90f42b56f64dabfb985db46a9f0716d3f593953297015af1d541b54d8c692d5b70706f1d678cab09ec9daf0230473e7a8097b818d3b492efd1adea901fb06fc6bd56bd125fb69e6198f238f81c395b923b85d31455bc75ede6e6f4ca260302047c435bb5006730650231008d06eb373a5cb0ad19165f9adfc0968e3875678c8572da095a6d770490547b1e018be4364357074156d4bf4a2f4d17bd02305011e6ba53b9d212a2048db46f93eb4c31091c84cf3eac140d480ac7ecc4731e7a15a91003403aa484538ce3ab50685c0302047c435bb500673065023025dc80727b2c30b3c7926493003c2398d30780d049fdddd2b49c898e10f46aece80378ffc0beed0f3f046a3faca890dc023100f8920f575f053c8204b0aba7be9379d56e3b6348bcbe2188403a4e9db867348b137c758ad181318d19ab189f6ea3299e0302047c435bb500663064023010f5625fd7a8f13375e55def38abc5f7d2520329e1d77ced2518d9e3cff485ec9df815cddfdfffaa9f29096b626590200230702dd6aff76a9d88293fca0cc07221cef070532121f3efbdca53e78e902da89b84d93b1b8ed1be110be2cb6b58a5a0500302047c435bb5006730650230579e3f971d32277d9f80036e2687f93b8cd04cb0f3a7eb9ca26dd72f7a8c7c9199d893cbbaa581bb8b4139323743a23b023100e026fa53a4eca2450ab0ba1d39c0a9e5abd7e43cbf0d629e95df321b8fb0adb39b66d9422f2a29138e96b533abb38cf30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023062af5b927e04546c91c00317267530989f945e878f6c127a86ee9e2ddf1c4fcf85a8c0d470b4193fe4a9671902b43eac023100dae389e2d592e4f4e7a4fe56949a6665d78da6e046d1eb23b269b9ae570bc87e1fe3ec52d7b00750535e3a1f1b7a11960302047c435bb500683066023100b90a4d15a936c4cc05d2c940db9ba8d07a34611ad5b8082167ccbecdb7b435bd2ec2b0c5aed7848e8a6646ad58180c9e023100e5696011cb11401b9e98eac415681fcb2ff63c6d9d64727c3c90355db15e50b72160e0249035d0aea1f7d4399f3ea0110302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230134943d4e0ce0df03d34bcbcc4fe4400f25ab1bb1b2f71560b173a97de692937421b5f75ec6a2d8ec94b0bc418f2b1ff023100cabc09468d72d8730a629d1820865ed551645011a883c631d2b4cec83a4e438152a135082ff2f30972b29c2bd96db7010302047c435bb50067306502300a71479b3c6c1f25c18d9f92bdc8a5fc3697001f84dcab8d82dd7edfc11f65f8e93296ebdd380fc09153e0769bcef891023100cc1b32af885a1092fda1dededab59b957992bd1db90baed5eccae6b1c933f531c9bf30103e7237fe7b3109c7351f09130302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b6b95be105ea7a819f105fca73e4b0a61840b1debfd3c7157390e3cc02ce3eace13a755679874b05d43f20f2c1943999023100b41f0b8dd8fec7c404165488236306e37a17bb0c959dc13bf40f55bd8b81b17d520cbf104af5a1300c464ca5a5021e1e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f5bdd1b1cbce88486460bc60e4f183e6819f8a056cb3809edf15246ce58b03cfa080c6d5a725a58cea7855267b0cff03023060b605cb0984e3e51c2bac32baaf8b4da654f80ac7cae0794d72340ad3dc87c1b2f86b63853c0577e2ea5528b8f994070302047c435bb50067306502301fba86703172bf682c0364ff939a6095b99d0e242c09fb72e17f41c40f34b7bc9f2ef39a6048a3e8574a2c912dab9b3a023100b137dfbd7a18249800adb51404253a938ac7050f821ff151ef34388720b823b6c0c2da680d1d2bb59522a2abcedabb230302047c435bb500673065023100969ee7f068fc635eb42b38e5cea9796398741bedf2010923b46f1a85c50a90025fc760aacab66a9491a5fa83febdf30202307c31008e1063b49e429a1bdadc1ba01262e9de7d88f803aa37f326371cbe83584d5955480c4614d76611a75158050f070302047c435bb50067306502305b653a77ded5c270449551d038abcc3dace85aa13fe4089fc1fb5ec630c0a5f346ced675ba0cab5b30b1fc11d3de23e1023100ce66021a277b8ceac519b2ec468c0e17e681dc9b2696d3e7bda18210d634cad503614c28e433eab380560b3f7b6a4a5c0302047c435bb500683066023100d255e9005e2f431b1a22d2636d76c4184b3521a1c61badb1a6325519efe80b80ab68f6694186a5e332a857387fa35982023100f129dbe22c1a0224fe2d7202e412a65747c5d827d53ddf5ad1131d430efd441da58f4aa4e7480c4b0c718c49c2d1fd3b0302047c435bb500673065023060c7c213086049e38a8341bdd198457c14da0f0325777ce10395ba4715d6eccc2e00b70fa6fcebf9558f0900697713b3023100bd9b0611407b42115b0fe1e331b437454c4d8ea5fab9415e06f7058e0472240f12875af6f8a1bb1fa8e743331c2401ca0302047c435bb50066306402307b55654da6898bee8c09fd8efd10bdc26dd4174b26a28a7a1833b2f7c9b076083589947cb96f8dc6775059388b18f79d0230720ffd0f576ddc206f415c519465b8bfdabfdd1e7eacf0e4d9792ab13aa8485e0741ecdf5ef5f7d957b2b0714627dbd90302047c435bb500683066023100cabf90fb50694e2efdf13f28cc4a43354f30fd1c353b62ec70341aba64eed73bb0d8357bcc2afa2736e75004e3fad2d6023100e1c1102b0c27f75cb68c671b317cdc5fced50fae0f33cd3b53d7d1e7df0767a605253389188fc2a6d03dd7a9d06b9d560302047c435bb500663064023025eae9eb67f76a350de150d965d7a0a3bfc788b2421d7ee03b6e9eca28315e60512347c58ce90cef506e9bcfa2e136550230389b3642552f1f37496a220be0e3b4aecc0be5c3e83e104ee48aa7298edc41048e17fe9fdf54326447c78ff28ba5c3240302047c435bb500673065023056351025f862c539fc8417bf6fd81ec6d4d1d8c1d5ba31f2d59c80b6bef5373216f62a2535b924b18a658c463bfe22c5023100a6e5194778c2c5bc16d022d4090331c695d870e63c9e24331ef70839069760331fc48026c9b93a130bd9afd0797db69c0302047c435bb500663064023051163f030545f69c5588eb096411f74d9dc40a721a6198790d82e18b18acdc8cfc618b8fcebcb799a9ce3ad7e2323e4302306d148e995d7691276f5607da7d913517f5a79b651b0b21efab88f40572f286d28926211b49e021337d78df58ff2ad0d90302047c435bb500683066023100b44a3f402095eb1aa4ce7d47fff1664e0d8d57fe1160149db48ecf18d1d84740cd9063f8e282b441e90796892aa9cda6023100ade57ac7b9482d2a1379fd0b3e588037b3de1296a7f855c461bd355252bd78d6af415cf25d340cf156a3cfc58bfff72c0302047c435bb50067306502306cd831d88c4a96ecdb517c6ec3f053d22359c6746d24a94b26d05820bfa51e789f49e7ed0a78f9df3942d335d23f1d68023100f0170a302d6d785c030f04b8d9e63dcac11677dc33bfd87670c71a2a3ecf4d7edbea8b844eb9bcaa1f6d6e32b681e9230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fc8d5f7391e91225ee6319d04bd9657ce11ef0d2b531c29894b5f7868e2e8641f7d95449947e755ddcff4c2a36b1d2b8023100b4b8b229c82991746916629778ec0bc4b5c249402f2a42f90b75ce813bdda29ec302654fece529da845546dd102d1d790302047c435bb500673065023100bc742a72628d5203bf9820343a60b1bf32a7c9f833f633be30d0c6bfa87715a6741f836a5ca37d29e69a89a0dcde5b3e02302f519ad655385cb4796cd77e006448b8fcbc020a407abafb07bb8e3eb729a945f8d2046c18d227763b26906b8d3965e80302047c435bb500683066023100f00587d0f3e714d533c7eba9abf7b1d13a6876742c98f6664d109bc8311c6a030ce4fb2d7ac7ace455e4724eea2802dd02310084a2020146d4e2ca9c88416f37aed79d9ac7e625b5c545bd44528fd7e6e4b53c9b11f663f66cdd96c484bd67a34c9e740302047c435bb50066306402307fa903e8f21d36e2c9083e3b0a2b8f52cf44d2dbe071ab31985052e36a7f4cf6f974b0dd2972e107312b45680cd575ec02300630bf5d1d907c9d696bbc1afda6172aa5376083de0c6fcdd51f678054ef81888ca871ead1e9b480f774ea1cfaa838f80302047c435bb50067306502304433276f887fe32640cbed77b6aa43ab6db956ef77f3aac6bd6f06bd09d27e445357934fa703d3cd82e041bce4dcab8f023100dfae3f6e2a6e4c58822312810fafce52f188e6082a92817c251f5504acde8bd8f3398459b8d219524476d1d0e3e617ee0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302c400a325cc64e1e07c6c31a3640e1963045cec67e673952192d593cd99913a07f56b30c2e3ddbd9a4feb93005ad185a023100c2eff7b22df0918f84229daaac71b56260ea01f64925e777823191eda88bd136c7a2d64d869d2173db86b8f68c2bfffd0302047c435bb500673065023100a02495abb101763a992020347ec8ac732cac21722933d07360214c59ec0a008012d5ae1c3f15f0b475c1fe679b0aeb00023066564710453f1b656bb044fea365518ff541d3298a538f2d92368f909c3da1e58a92604af17932d17a8619f34644313f0302047c435bb5006730650230558563cee07254e02c41c54b91c43a548cc2781bd14470bdc4c436c44388acb355c4fe849f5582df063e8d7a509f2e59023100afe9a2f227581dd773910dc46a11d94626b093172fdab487ee53d7bc16d60556451488b791460a4e96cb7b8823bac3a90302047c435bb500663064023053a3d4e7b2544942be105b6e5200f03d6cbc0884500e15e9ae67e6ec667ddd89aa02369ca50fb7fa83f180ff9213121f02302de0c3c86554ebeed65f32d76ea9eb8b9980db61354a11bf5c32b230bc15aa0646a3ada15587106bd406561e6698a4210302047c435bb50066306402303fece3eadc92631346aa53ace329507134b5b08d642b72ba76977f33b2aff933fd5351463a9e5952ef21f5a670cea22f02304ab2b5eb67daa4f3863bfc7d1f1de66855154147fe3e65d43c227a9346d029d09f8670628e8db163b8f0c261b5a3a0fd0302047c435bb50067306502304f8b75cce3f5fa07ba085ce1398e63b466d3a949a23824222a01d33a1b4b3324ddec7c5e9fde982f3c2943031ded2a9b02310099cfa0c0de06b4050ac529df4d54679f7eb9238cffecd351b4419a2f8d4bb1cc6d4a228568c6148ee13adbb21161856f0302047c435bb5006730650230059534d3778d4e0be31c3f94dd9bb66659e29d1f0528983af0ef3fc35bec3cf648a96d7458086b730fb083a9435dd1f1023100a4cf7eb929386bea20fe8e7f4c973f37c39b56173f2cb0a7a9e19c4147d7657b4d4b437cb9b321eaa9b89fbc145e2d4a0302047c435bb500663064023075fee1f06970944077c6db13fdf2c25da5db14c7cca3528ad51552c1f4d1d28e513e6f9e613576a247f4811772a240cb023040d63ca4f82ab679ec1e7f8a9fe1e326e162bb916c112e2c9faf23bad70477a77c0179f47a9e9880f51ca51967773eeb0302047c435bb500683066023100fc3d6f967fcadfb318ca078b234b3fbc03f06e9e311631f96ab214dcbb285bec6c6f442c80d90116e4b30265de723c5e023100e4da8d18d7f4e776c61a2c2f5569d94e331b0702cfa92ccd02455b1974aaebb1e2762b2a4302bc032eab5039b9b3c1e30302047c435bb500683066023100bd40efeccfb244636995fccb9298f4dca3a1f57948515f7c18b54867b22eed222e0dae10e54d196f11b51cd4be003935023100a129af4af5564dcab25db91105d93ceff657a02bb0793ee9a146ccb82d56c26d9e04e5ff90a5edba1ac5f86ab772cbc50302047c435bb500673065023100b15ba8468e333877eafbddf357cc47a479ca612371d612776ec01fe554ce3b191c33213a51052291a220ffdc5d02ec7502302270799681782cf7e9f43be5d1e5f39ecf44871bd314feb47b7707cc6ebcb8978c49254374b36d02ced6a65779225be60302047c435bb50066306402302e0ff0488ca0209eb1fd96bd3962aa053e8d186b0f4e1fb6c41e929bf849646f797cc8b7a8e33138b2e6c77e41006ce302304cb9a5dd5435c5ac00119909cbccf6a10562a0f12429fbfe4f1633a7df58b284ca82f163e265e42ee25877edfebaafff0302047c435bb500673065023100d7407a2a7ab0a5978aa69ae8048108ca7e1781f8da1aaeac8d959f840f2000a5f87eb05af739370f631735fb7a55f54702306ecdcfd791314e9135ed5955099e8e1d8e8c95814fa58f298666bfac04861687a3e4bd071d7378ad30c7a02eab9091d00302047c435bb500663064023013b58e04c0fe3fd6d15c82590a37163ecf7fedee0e3d9a01685e705b7aa0401e67717515d8d397f9301e2c0350145f3f02307036629ea9fc8a393dbbd418a315de0801cdc7f3fe3403d620ec17eca3e1a28f0c4ffb5bf633b80c735764ce56b359660302047c435bb5006830660231008f07c4ed59fbcc27fb9403996dff2d91a24fea1b65874927c40c0e8da23422d4e5418f295b6d3a97c4b487de5cf489ef023100a66ffe663df29a5e85036be72ccc453e6c791be0630eca9a3485282debf482b3f5a09d540c0de8080f11687fcd314d300302047c435bb500673065023069edb68c343c365cb43add273e2911ae0cee3d00b6c5eff6fab16e851c723c2883f3032f3f39a7332b5d561cad822a1e023100b843e9f7aa1faf824d001ff6d29ffb48e4d3488276beceb9292f8dccd7fc23a26626d61f5c975e6856f374503f946fbc0302047c435bb50066306402306bc139918ba9931baadab907eb27315dc625055203763dc03a4807eebea03e75b6cd61cd03d736c95fd1337e48b50fe702301cd39cad3f1c90bf153f13fac8a73df78ba52314649da64539609edd376aa9e8dc0a20b9777e9a74b447adb4a8661fc80302047c435bb500673065023100d9419903389d6b7fb5e427743c8db18299eafb6c3de725c311f982a5c2166d857c710a47b236f6c23a3b538d5d7fad06023035608eea5b4a50afdb11e92ccec3050e7f97220258c189b26dfa181658a84e215d267f124d107301d631023463711ea60302047c435bb500673065023100cde2010cbab1ede28fa5779bc2fd54b882941047f0b679f281773dee3c20c3bb7c6137a575ffa8c53cc272a5b4d587710230387fdd56ac53da9262f92d2069d23fac6e80a20614480c2cdce3d00d9471c9de743ddf6ebdcf030d2b91091a2b6a9bb40302047c435bb500663064023034d9d34ae47ae1af8785e996f2d90ed80669490307609aedcd2242d53af7aff5494e26b6a0fd19e6cafc910fb28296dc02303b9c784fb230f472a9be58b1f18e9fa8e8add4978fa675191127dac41fb570a60851994274fd51e0cb643a9774a3bdd70302047c435bb50067306502300bcb63391d28a906084e5d37b44538cf8aca5e6deec5e7cca2587a32416b5bb8dc9a1c2488b08c0f3ca7426108bf3524023100d82823377491e15993eb2cbdbfa0c1455d1dcd3df11b410cdb6856aab0a307caf4f4d8fc001c05e32354cd8cb619862e0302047c435bb500683066023100ad98417591250309055ea4a635224b09c7caaf959dd28308ffb2f56268c1ae99b3b5f60e73028402644900c288cd6d6a023100cb6f375737531a7306ef4172b31db286ee1ee78b431319660714d6135dc6e0bb1d90799ed6c7f5b897222146053f2d430302047c435bb50067306502307ead8813ee68053185a360c0a0888b7374ed0bf46cce6de7b09f70395bd441e867cf33dc898e129b70429c3e12913f11023100f740f522f7196365854d1d64c0926c371aff57414c5a86ab4f34180668155cacbce7ac5ee04fb2080070debbd8a2ef690302047c435bb500673065023100cae0bf3a9e9f7c08fc209780f3acdd5a727cdf19d27a3fb2e4134c32c33418e2db05f25c6aedff6a3ad97306787f4cd402307563e7b4670b9fcfa5b71197ec5a197a020be72b09fe975e9be51c11829ea76174e9e3de6c8a95c7edd3ea27db95daf80302047c435bb500673065023100b3eddc5764c4a8210f042c9fd6ef5c8a0b2569414b052c43367056181f251376b9f366ecf3af0de95f8941b53ede70a202306a2d279a6417a1ff4f9bcd4ca6727b683298f7bfab6173e539b25ff3cec8756cbae31db648daa7e10630f16d6ed3a56e0302047c435bb500663064023058b383c16f56e314185041c778fbe66d174f07632daef7eb6e8aedc4ad640992c4f83e67c6cdf64e08c8f444374ca99d02306236d75f89c094ec19cf85e6610ce3104abb5bc359e1524d764c05f40606c75cf96f50937fe8ff98281a433d1c8c0c3c0302047c435bb500673065023100c0d93b71ffff6df316b19b2121ec17b8766ea84462acff203e6ede2e0a8d051b0c4e1b999b0e913745b0920932261cf8023066f26740063cfcd96431284d7dcde24c1864c74a13968935d53246711e739fa4e4bb9229941e78e2e0d7e2b9bcf3224c0302047c435bb50068306602310083e26aa44fc7a25a532772acb2df60c9289025d0f7496f4441a6cc919cd9500a6a56e5a7136876fb311a5e1300dc932a023100e96229688eeb36e6e8850dff8c890441974918eee523e3815acc5f95e12a96f0874936aab1c6baba802636c8916f2e220302047c435bb50067306502300cbaa0d5cbe181789ead3ee36f7776321b664c73f31e64d97b92f7527c587e9bbec75b8959aa2777deae676234e0d76b023100ac406d19331858f005fd76577dc5ecb500a0976e923e1d78ac4d926194d82b3fd28e8e866fd4d0a9af1bddb4b9d038be0302047c435bb500683066023100a52accd3021a527a3b9a796a79dac53e5f7620e124c5e85cb12f3c7c6d9b852a96695ead5385bbf8c4982b63b08a1796023100c6243738262d48fe82ca58041838cac117563fc33938faafe87badf15487417669998700fd2c557631284b1823afa7680302047c435bb5006630640230647777ffa5c596dc8ea1a25075fec6453740ab69d8d95efb180b847c09702a723ab622067a6fb9cece43e282a4077d9b023028b24d3d7658165421b38b77bbb17f9ffbf476ebab565db6d1ab5007e99a91bf3719c977c3108f90959d53e16e40a0a60302047c435bb500663064023053ecb490700e30c89b9e5abc5ddca81687ed8f570d52b289e612be8574413a7af6e2a008fce7444a155c294e39b21cc102307637d565156515202077b77d9ff9ce591bf762a69a967322bb47109ccfd120c4944bd4f4531f71c11512328e2d0737900302047c435bb500663064023037f6352768d6cbb312f1daab64e980bff8011ff666fb49f5f46ed3111e99985323c1c0f3cb6e9f5e84195bc5548361e10230388ae88de157cd5d8d6c719fe6028c4fb55aad207661f3fcfde1a5ffae93efbdf51538c265b1470bb772d6325d4077ce0302047c435bb5006730650230248e51e686d4cfdd442da9c94cf70ea5385cc2782e3e31ceface277670e2b2a4489e22260a42de5d8721901ba381dc8b0231009398457e1f39a07071cf6b02e0b17b521f8267b617db6e6f19ad6bb792ff92cf8b0373d913b91db4941c26a4c371e1eb0302047c435bb500673065023100d617d252ed84ccd78a0e70db0dc9c4177b881c4493779fabbcade9826127c37cec8c5944935037b54cb85df6d47f27ab023036d6cd09f3dae53ed526fca46fb338c91bbbf9c1de0a909c1069896fd55e1b4ed36c2bbe23ebe25ac94737167c10a8800302047c435bb50066306402305fc396d2071439b786a0328a39dd6b4cd0879dc9bfee0c4d35da47153128fa15b62bc1367a6cab6db7bf1034f1694a77023054043b70540c699c9195f86d9af1c471143a6eb1f7f7f13879f2b71941511bff9b87bfc6689b4080cc6a3e724b9eb62e0302047c435bb500683066023100fbec190b67c9dbb7634479cedcd423aeccb66167cdf563debb0d1f17be404d7aea68c4116059d7b357117d3ab7c389dd0231009e27337a5a2649b392f3cf08e0ce77affd242652aea870b51b5b9fe9fe9986373c2a94a747471260bb059b4c63bc98f20302047c435bb50067306502300b28c47cd18b1155652139f1184a9ec0d612f32c775e04d61936c85163c4586fb472d9cb18c7e6250e371332f4ba460c023100e6f42c0c09cd2e36a723b78bd9cf5af87965be6350f983867a9ee1511d254520f369782ee9a8dcd7e1367e48a25c6b460302047c435bb50067306502305b53566ef4985109f4f569a6a966ee059f677a06de9912ff732b7deabbd58ea0d86abb04ea38b257ef3b3521ea37f6f9023100825ec8c1867fa7d83af46414eafb487ae3c71273ae282c4ff6a91df9150aa517259bf521ac6e832f58f31d3b344657660302047c435bb50066306402304f28e48f88f2f8d1bc47844ea0b35cb983e18106d12f67b212fc33e8182d2dfffa323304b437f15258e82eaa5c8f5830023048a6365c4d002a137cea324dc1ad94be11706fdec4070875a60f9579f1a1ef035bf196571fa0c18957c9b965f2996d520302047c435bb50067306502301cf12597c00d30d0d2f0b3efeeda92e15ed09b5d42cd916e6a51931d195d5a7a56b66330a2f69912bf6cfe8ad8ad9be4023100fa8b2d452a7946a564770c9d3a62b4d655c17928af5bbc05947c7fc1d3148d299b16e785a0e91d2258f8249426ccce5b0302047c435bb50067306502305a75058b699952ec617f395fdd6adc0cfe4d712d948bdf3a3d92cf6542d4150e9b0cab06440caa321a44cb17a5d38b2b023100b8bc367b482e9f318cc215db47678833c878c04714f900493db4f6e3f4047cb6b83092210beef13705b887222ed245c50302047c435bb5006630640230704ed920e99eb31140d744177531af6b1ddaa5fb6dccc30200436a50175e7f6f24be36763d20d12185dbeb1728d7c31102305f220f2d47b78b6a92e1ccd93019934675b18bc808c40516a775ad5a560ea560f1982db13ec2d1ad75a2f29bfe52428d0302047c435bb500683066023100921c1d4b5505fb8f0b48544a6ea327817ffc3560678c43e580dd8926a6acae63aa90d972090e9250f99dcd474f72a682023100ff39fb3076b708d1dbb567610240aabafedf3840a10c7fcd851bb4e091f00e5e539e221abeaf2ee8bdc262a6a79fef0d0302047c435bb500683066023100d07bf4b842cd15480d2774651e5c2ebe23fc9f9cedc389c7e3ae84874dd155e34fa9cd1d4181fc2fd4e2bfd6a119fce1023100901b388f27f9c545ef9e749e48f573758f58fb9bc6d95c89edbabd5b5d2fe9f43eba20ae5942db640f8f1c8a13ebebe20302047c435bb500673065023100bedd68ed92d260021fd2a410d50209275bcd65479527b52ecc05de1a0ca33c2c050f1051f38e6cfcfed7a088e3dac85e023079621a773facc5f55b1ee2d5e8e8cf0972a0b21b3d609f4823b4eafedea8f45dce94dc48acf189901c5c0abc1cbfac2a0302047c435bb500673065023100b5e1628f9b6670d8a1cd49f28e4ac82bf00a02ed40cff3403233b648416032dbae2f38edf9e95b9d2d81163c2277583202303ba40aabb2429e4a749d4a11bc0252be60317b63f522167206c53bf5b1b48ca05990dbf62e37a713ce3e8b7f851f58d50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e4b4d703d72c473de2fef0319f3eca0a50dce739fc19a87bd6a56afcdfe965d77080fcc852ac5a874fe0152b6df4e0dc02306b5034cc31aab2533cad043e85ede272aa60749667bbe9e48da822d2ece629d2532345e616ebdfbebcc5b7b77b405b820302047c435bb50067306502303fddd02a7410a3fe2c2cb7999b27e234d976786d6eac8df6d0f7d92160e51d66c0852032c66b6e639c3f9862ce20f1cb023100f96873324bbc87c972520396483c9bbfd33a32399fe854f599d3a3a0e69cc6bced0d83fb3110007426c5a57000279e980302047c435bb50066306402302b082b7cd2290b4ace3ea49f4dd99f9f3fe0a2527c816d2e68f668b18c79321bf63d73d76cf3c83b2f896600e146e7bb02303a6145e7819255c4e5e29749e4cba0c210c301614cdb0f51b1404dbd8619a90535be280ce194cd3ff55aae8ef2e196bc0302047c435bb500673065023100c6ffe250ecbdac7c8c9bd0cf83570578952c96188db2647c7ad74abda696fff0c9ef140256aaa9b1a42f06bddf0797220230499114b200aaed6dc5acfc6f94673d75110848d090ec23aee575bce221c0a4d2b9e1364f9940596b869cdbadf25cf64f0302047c435bb50066306402306b388f0b210fa7edbce2f25a108118fe27021bd86c7239e01a39b93feca6d77b7bc86010650a71bc6e81565245a5a4a3023044fb1b7389522fa58064aa97d140b1e6f07993263b9ab76d0f95e22ad594ace231b148fa429e9bc904080a5247f4e20d0302047c435bb50067306502300e4402b3eb88d2d834d8c58917c94ea208555b32df31f9d731f98ebbaae9df3c2316f69fe709284f5ee0eb493b9288b4023100d29e519f94a552976c5aab99f0ecf8df888d19daf3c7f40e09c0812e81637c997610fc0f5e3be8def8fc1745efd525210302047c435bb5006730650231009f94185c6f7876eb6e11417214003a689205bb2b914305130bab35ae15abc1663ebb566f5b1b5a30e436ed6023f7a2bd023052469d0ee94db6cdb3458926b9b97c52f492156437d1bf15c82cde614af654bd8fa6068e884dfb514acb49eaff5a227a0302047c435bb500673065023100ab3f50d2d2c946339809c08da015d1fb51d9060809c4def221585e8f551e73c7fbc53adec030b6dcbbdfdc645af1b5b602305186fbc3f157fb849d58578f8b58ab07772200e81671907de53ed639789f934f129df042ed799a95790534d923fbd1560302047c435bb5006730650230540fd18a39034f034c294c7021c6e7ab7f52e564c9579ea0e2b5092b90d1c6d214dd14513d884a2af5f64a2841cdae05023100e49bd227b01a921837827188a5fb2b0d6c3609a6d42982bcd938fba09722f40f0924560954680319c41e3b264d9967000302047c435bb500673065023100c40c5db31557d5d032d85eab039bf807b24bd205276afd35679f438022f1442c0f352261b47978c16a9a402c3fe57a0202307a16e1964b026e4aa1bbec473547b75a9a8494653ffd6229c7eba8525d21e1af23111d42ecb9fe8e27602043930dffef0302047c435bb500663064023025fd47ab3f90b4b6684c70f25146a6066f50b21cfde367e02f385582cd33bd7d941c6483360b7339ad556d69078e329c02303aced36c1543a9425bb1539a4fa8205bf0f1252e8f71a68740dcacabb0bcbff792757d16ade7615aba36ce4f35f904280302047c435bb500673065023100d385f3956fed3e151a371eb9372a29d4aacd9300a8e17b93a05e9647e84aa45d170c950b58a034511393d2784e05db9e02306d27e1b3c5012b34abe095aff7f9d5ee4297eeadf1df7e2d436d683c69e77613b400d179a10ec9c10636caf1c698973b0302047c435bb5006730650231009e7d5cfed69ca3f72e2ed74c8a6b6f40f2a22759e57b808d3ee6cebc7e80061e704efd7a6962f9fb993f60b6fab5d81d023038ba01a604d7452784adfafb6c671a6acb878a23de884dc8d183007c1f4ef5a7da5ffeafca9c6588590c473c3d661e810302047c435bb50066306402301af265884f178061dae6db7c1e7a9c6768fb6137898c35a02aabe00d071939e55ec4bdf6f68a08b42bff50f4c181065a02302b6b0b87f9110d3bb496bd72f818bf658e82759d13536174b21c8f22204306349fbc03633cc3208e98da6c777272f7e90302047c435bb500663064023005586dcf6cfc37bf2bdc6e8f4d1aaedbbd2a039686140a1a856331c03c32d4f150e19558da47ae4a5cc16fbef6e10185023007006ae2b5680b2b30261212d9cf007dd0628c8ba0f47fd33a6715399161284aed61531ef51df30e9cd2132585de641d0302047c435bb5006730650231009007445c70e3ce9131b6ab023811d445638fad3905d793d577d90100a853eb9fb8fa02243ea08a9ad5372d5e5d6580230230693b02fab9d703dd8db31dce136630354c3793edbda0b9696539294e39c55bed6545c01a579e35336d8d905be22da9360302047c435bb50066306402301455a7c94ef9c220705e4f43097a46cd76051a4b0b1439fe90ebc7a195ccb8730c68e17ad2e5daa307b876f3680258be02304d10d66d3167f9537e9e0d679892bd3bbdc6c017a97e555b9c4b776813848d9ec31975ce23e862768082371761ee86350302047c435bb5006630640230439ae47a76e5abb46a91196e2fe5f2163e2abc8a1301f838c22f6a9a8d9f0ec1fdd14b71938c08c89f55f1fb5a06c50002307593cc0281f22089502187acf397e419e01a5d001007e169efff69d3eb54170570ffb7588505e4a9e0cc01724687a63b0302047c435bb50067306502304d6600affed3940b0fcc210214dd7684f2874bc00a23f9d60e2a7ef482530f0d9092765905aede43ac867df34fb64899023100e3744be77f9c0b5b28230dc7c22a89716378672473580d76f26ecb12686af3e72505f52b6a51cab6fe19d7297e396f330302047c435bb50066306402304071bfbbbbbf93faf70a2deda7a784cf65606f3ebff67531ca12dfce24184a5c5acc6c7e4073083eebd187f69876ad5f02303137d955f24ea5bacb75d8087892b8d353f46e50608d8a226940495a80a135152b3dc49891058c89b3fe5354d14716b20302047c435bb500673065023100b695d9b1c71f15a0f853393a5628a864bb214b7e068b120d11e6928848392f5dde9a6af8e71677de48c2601d8026f3670230380089cbf99ef7a73faf23e08074763dc63ed5aa6a7a1c6056cbe311df9befde5939de2d90f8d7e823f5d3ae51c098790302047c435bb500683066023100e725f33704de21c7699c489511e57b9cf38096a39773ef5fc865a79dffc8708c7c469e1b3a90800c815a1cc14fcfb20a023100bc2f4ecea8a9455cb5799dd0b0d3472b9646e6d495100b89e8d50af7b465adf47805c7dcf0176e903da36d3329c3c1150302047c435bb50067306502307fecb1023c0b03c842e5a0825c1b33a1f2d24b7eb4d82b44990cb94dd3c69c4ee18636960c8602e67eae928b37682f8c023100a7d158c4cf6bea87a717734fed37fd6612d6adb5f59a260b99602cdfcee434c5d43d228b01b67fba051a0815a3bfe0790302047c435bb500683066023100f38b7ce841e8122d530753934ea9673b1f565ce3a10a6155ece0751bc17e7ec21e8e1dc37aa4133589c4d7a960085168023100f99cc8aab034604e9173e49e6c284a1870ad0859a2b9d2e8ea6bfb72f41ce1c4d5bda264f68096e17bc488ccecc2747e0302047c435bb50066306402306640b3f13cfdd311eae88b49180416e4e916f6c7de353b0bd2ccbc94719ea3ba21bf7bba97bdcb6dcf57b316930a3b3d023056ae5f849b17d5a7d1b05b9b94821bfdb336fd7922f49654c8dac590a046ed64f1362596fd8c0c70a946e11955d1af080302047c435bb500673065023032beb2f490146dc88988272fc706aa959bf0150d8261456c63c6e15b8cbd2585f257310633f0fabb29c5eb3a1c97e160023100c67f6fb3589ff9b3e40d6d8bcf3a5826b3450a5b4f0a596d292f494e036e825a69bb30d86a08c89669dcca4b6fe9bf370302047c435bb50067306502306c31fcb3b28fd4e444c397f2ef6eee4c9b09d7ba98520b460987fe8672e3b413ffdcd5e3e185ff143d0b10f7cbfa47590231009723f79fdc42e863dc1265e0ae408a6bba857fff93468464b62541336a1c1c207968f073e555e6fa297194e48b6b7d790302047c435bb500683066023100d05d3c1208acd88ee4214a38e9ffd017c2e95357d9527b943258415343a253b578f6c033bcdcb89aa135a77341dd4cbf023100f55004de5742d20e5f09658214791e18c1fc411df0a83c4a5ac01f158b765ee49584060f65446556282bb4f9115865380302047c435bb50067306502306bcc68f56e9e9bd4bad6537173fd76f3a16eec57e1cf662841b0cf548e9c5dc1b7f18ae4bbb121fbf2dbad4bfe611579023100c02b715f66cd5e77aaa22aa0749e9211d983b09a104d356d7653347eaade57be95e347b0be135517ba0595aaf9c123540302047c435bb500663064023076d038bbcf8360f91204dd7bf77e8bcb873ad6f4732d01e1736a5e1663238a24f73fe2481fdfa0b7f135deeb8d0f60cf02301744ccbfbd5e027db49dc7c731e0ba928fd85fa28b41a56c5bad2892085829d9c208aad9176865a10a7ff919e7b03fc60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023029833fb2412b3cc47c2bf189d3e41a9001dd3892fca4c52e182ca2ccc7ab5e455c2826dd2b18ca4d4fa750d457db948d023077b432086351edcbccbc42f199bb70862fafa0382a45dcb806e3dbae295d4eadd3c96d6fa2338769342287b598253bfd0302047c435bb500663064023076039664e56369e548906182ffeb486df36e14d136ea6548b2722300bee8a746d68e7f9f9411972b138580cec949e86802305feaba648ca40c71b5ccb44b41e698505a42e5656398023e1aabc0fa22c6c3ab0f5cc2140aaa1893bfda914c395624fe0302047c435bb500663064023041970c8625ebe5af117d446802aa6ae7f15e625fc24fcfc798ed1654e0e64d009cd31a63b6570287e2ca343ed298925102304de0b929fa4c1823598e0a0e89db50d6b6acf35a119ccf2648f5ab665d34ca3d325c22a645f0df7bdd06b598e2e2ec0e0302047c435bb500663064023008b75ac05be2663504e3735938730d40fedf7f09113cfe461db85aec0c6f219063500434762fca64efe4df7053d74ccf023034777d91bbe816d7bb0cbfa2ef5a9337f557b884b6e6743cf59d6ab01f1d2ee8c5f3f4a5f7ed1b3e77af03d3b30a01a90302047c435bb500683066023100f23368c3bfb287a891b00be89ad503e978846f3f3bb01a46ce6134129045176a7dd3e6188eca48acf0f3232d1ea8b829023100dab0251706ec0eb20c803749f1fbd0d7354ed236fd4a4be2d32498889dc3f379d86dbd815bbdc51e1a07cb9313147e4a0302047c435bb500683066023100f7301d245167fc6ddfc90100e76c12d3dc3b65aec67a2f472906820fbc59a88a84315ec8f29b3d179dfedbf88e5d578c023100e328ebb205e446153efdde1c4b098226d8a1e6f1ca5371134dc9dc21828413a6c076e5c9a4484ac926c3ba211a6d241b0302047c435bb5006830660231009e2024e9903e96f3a729d729c6a4283a05eff04ca55666a453d0229bcc0ef1934ad8e408a8c48b53faca03ff2b31de35023100c0192ddc58fec93a5eba0be72a750c4321989755d6151da05992bdbfedc81ae439bd7225254c153f6b0635a7f69e25950302047c435bb500673065023100c899e785874d2fc4b1a41099915a8e92b38fc1ec4031383b35987dd6469b22be0d759e38710c9e359b492cec6caac92f02304b62f7ea9c4317d551f3593cd9e88700e94254d822b0c9e680bf953ef6b3056456d8fcf18c280968f69462c47e51429f0302047c435bb500663064023022352ed065cfc5d3572d6cf1eee53484f621edc6d0916aa32cf292a56b73d09f8776ebd1df7165dd242874c7054fec9c02306b673dfb820163cf3cfc944fb2ec51820ec82c5608b1603eb53b10a2460d4483f53c45a7ad606b91e18c81f5909f1ccf0302047c435bb500673065023100f9521f897b0662db880ab4255c8c6341fd3c7dc8f3043c9d25400c892ffcb84ce72817f5dcb6878eff5e2fc6ed7bce4a02301849e01653e4e2e1d1384070ecd30ff05c3ddf946ba1c6521820088180af62b7b5805058a4ddaedec38a7179c2e90b6a0302047c435bb50067306502310081660723591f26aaf5e5eb44546cc79e5fd7481078c58af779e85fc8dd6cfa90a4dc89db981db49c8f4a8b9aa0a0f549023047a71d0a517d930a1442ed675913139d4515e47a6dbc0270e8f6c6aa3bcabfd2b466dda4a1ef6e684fd0e16e06d771320302047c435bb5006630640230527ca0ee4803b6cfb4fa1dd9cdabf749a056d12cca1850f368adc84e0c280b284cbe9d5a1d613cf72f5d3d509d10ab6402301d971b04fa315538284d8776e8edcb55f3899f483fd3e93523a430eecbaa1fe8a9128e522448954b7eeb437ae43f6d7e0302047c435bb50067306502303403e8edc159b3051e0a08ae6e1d9f7980643fb2c40618a16451491819cc15c66facc9c9d2bf32b533055da7a089c9aa023100877b33faca0d308de0703f57be8719b4ecff9d06a3cc281ec99597eb4111f64026f49177e770afb9fc7cfac5886f0ccf0302047c435bb50066306402304df6661137fa82f5caad87ab6a5fb322e5483a2a35b1d5edbce92932fb48480172e1f3f07ff6c78685c696bdb3136a5c023069e804f7d3415cf063a5feda07a684b64187b56a9b5d87dd815bde3115a52521339c07a53690c30973e3902f049a4c360302047c435bb500673065023062f14641d14485afd2426bd0ebbad67cdeb779abf57e6ba984d08885664156eae0393ca3368e404c08975f127e8aff90023100c859a517e89a9d2b8c3113b8741e51df7ed39208a700e383429a07427d219cc1d6cda55fe12f93cfcb5b81716d36bdbd0302047c435bb500653063022f478b1f001ffd79493ec204bf3364ad241e4edf2555e994b1467b65c9beb1e4481c6a6306843500e8f9dbcf258e2a820230420d0a87c5639d0d9ecba30b10ce461c9eb45b6577d8923148f540e9ca005398ae7d18aba09eadaec781c4c59d6af2e30302047c435bb500673065023025e536accf2c6a5e8ec26a4e6d864b5e8b87dc28fefe50ab4c921ccfdd8021bb6d0b5ebb1e4cdf8e72d8696f4bb0e1ed0231009d4b15c0132943a7bfec2c91f8c1ae769361c480008ae75ed19bcfe5e48e1b42d001ce82191762430fbc18ae288e55b70302047c435bb50066306402307c5a4c8d9df17c77f989e9b06ed87869a989a93eba76c0908e732d684b740933c47379ca2b7d2e24d6be7e8c7806ff3b02306526bbcdfdd82dd5056c9ef5a681564afb8b2a12c76627df0b850b1bfeb7ca9eaf47dee9453c31c5b849cef5c9684de10302047c435bb50066306402307dc6a4e1bd85d47d551bf08b55a7e2e374dfd713a7cf25e06684d5a4e2da837bba4d87be8ede004cc97d00d22456c19c023017d52932d7012c22cf5dd418f5064a726b7c5a7d3bc3178f11da914660fb3a47a00ebc997519c5741483bcac472d75460302047c435bb5006730650230446457c8d627aaae225c9b3408468c38487d04a59521fe8d4bf5b5bd3ca2bd5dffda8f84760854c8b9643bd9620d079a023100dd9aad1ef09dc2f721fb47b3114d2d6389c5802d0c326d2950fb2d7b6597f495986d759deaaf23807f871f7a36ca96020302047c435bb500683066023100d6ffb1a0a24fea5b930bc1025b46a74aa890891e6377b1f2a877af3b986b08bf8f6893eedac170ddde50085db9f0dd040231008874f50ba08b4b4a9e981fd8143e7edd9e7abdfe4e6955861bf3bb35e9afc933b644efab55b8c9e99456764948c9044d0302047c435bb500683066023100f9044db26b2f6b7da4ee24e5eb2aa25ef45e82afd474b24a4f8f2a5f5402588ee95b51d1de541ae2d2a2e78a130568340231009df8093c5d7638abba7ca62f3acac01d4ede2e24b226d8bfb9bdca79c83ba07342aec6c6e1ccb4763f052ce245d93eb20302047c435bb50067306502305f51c11964b0097dca71d6fb66c2c3da545601b78c62703a815b04da66852e0a3e00161356ec74f47abbbd0f81696f67023100800ccbcd24de46c610000cc513f6e2a91862231da9ffec9be9e6f403ec64979a4959bd744bec85856e42f995556c131a0302047c435bb500673065023015195d8df115d503e8dd8eb9de35dacaab49e39918aca60452a8dc4bfb9189e211062a03ef9329000a579709d85a67dc023100f6f436992ff66c2f607dabe25c344d9ff0f151718b1b6b81cf17c2f0e8352e345850cecc328b64c3f5d3d9416fd590f10302047c435bb500673065023100baf8191fc6f4293dcfbda7eb8d40019baecd486391da64938efa91397ef612efe9c18c646c05f12b2698fd1ea60e68c002301dbf83a6873e3e34f855dd02c537209958eee76d699626c4e57da3051dd6075ef72efb09cc1028ce253ffb02ffeff9ea0302047c435bb500683066023100bcb0d8ceccfbe3cde003c7726e8c1c4a886c581be1db1beb9fe8df387f11c2bd8508f0ce14e00cb6b9c3f8277f462f08023100ab22ff6555409c5a9a1e6f3368f0b64773e1a4acbcad026ac7d982ffc6918dfed600da80873f7469a1b7189e6c5839240302047c435bb500663064023011f1fcf07322cf76ed00f4be1b52eb4b3463b4a69a99392cb9023e424dcbc2a1fb5b2a173b30eaefb0cb3aa2fbe4964a023019b51cc5d97bc3557139ecff92aa73979a473db833667739a59c5fd5493c73c248445b290fc256cc955d04b2ff20f9de0302047c435bb500673065023100f47395631b8ca70aa134eee35fc20b01a46470b31a14a4b7102ead309ee404b6df97afc8b55d063ef2273ae4b83ee9510230634a4ba7f49f0faf14a6defb96a918ebe579ca046625e36715575db06b243309afc4a487211dc1eb1cae7a93abe98c780302047c435bb50067306502303f6b5ddf88c6e06990c3f72d34220d0843a5c9d522f3da3edf73414b89e4edb103e159bd6e40ecb5a58503d380298257023100a881d09f581d45a95b2e57ccf74b398ec8beee1f052afd8ce5ba60bd42efc396e77b3fc356551d9d4819f4a15cda7ecd0302047c435bb500673065023100d53b4fa19e0561169061c475f26f5ebd283314e26805919fc022d1036f5943d57164a5191bb02f110c88faadd9a8d62102305af8751e8ab393b4348e3d3d58a80c0518fdec548e5d1415809c57e9fc380a1835727dca57835bfaa97dd4998b53bdd20302047c435bb50067306502310087866915bf1d127173c511c1c54f6924fb6d9b7a0f680736a82c4015016f88f4e771adecde6c61d420ff8cb369a384200230106f91d291ec15eae837dc020e4900aad4140d9b0f24a1f4fe06922def500036beaacb51fa485b48748e2e247bc8ab090302047c435bb500673065023035748e77e1cb0739165226018fd4876ab6977991a7995a648b95f5f0d6d163d5c16a030ae01b7451fb69a192fb6c889d023100d367ad10bb1af4138b200bddf2d04c1f5e363ca06b5869ac591786d04127355f8a83e99d1a4bef9d7c7a62c8eb10b6c30302047c435bb50066306402306db8ddc93be522ed6e3608c9a3b4fc9960cb81c0a0b0a2f240f5287c4f3700f53ffd33cacec9b6447458ef5e56ae473b02305801b6056de3b83abfb58a1f2e36860bbb222d1c40ea55b2eebdd21566da740895b05054d6c8cd0d5b4eeafe5fd84acb0302047c435bb50067306502300612dcf8bccd682d39523674fe5d561e28fc8f37b7c9a718adf9bcab37f80b581d50617a7515805f1029ffc8a46e81dd023100b27ff056e7342ffb2f3a443f24c559a18f1e39622b052506f21308864d9862ea62571bb2dfb1fbb28999349f3dd5e93f0302047c435bb500673065023050fe6caac9b0c1e6954aabb8a6eff5368e65d88a726fa546b4e52b54f39e0de6784888e9013334a1a494d5d1b1d3daf6023100e64eed2e7f794b6616a28867af482810ebb400804e5640bf1404d226702c59884bdbf93d186c27eb31a75918cfaf025a0302047c435bb500683066023100f46b5680123fc6e3ab59b05749db6925b2dd78698d0db7f56c4996358889a4c3e8e485be2ebf264b405ee0c9a8255819023100fd1614d51046607e4a771dbd144ef52ab043c0fcab69157da0195ead038f8c786075f3830f52d926d42f4415d07176e20302047c435bb50067306502306ec4c1b975e5e595ea6936f97d10eed752d9abc450c92c80d32fd51cfd83022e927757258fda1543c0d6988e8b31aba80231008ed29cbe2cb8cee07b6f9b573f5ea70c109bc28cdc6caac46611445fcc23dbfd061cdd6e7e81abfb7ca03bfe0a0ade8b0302047c435bb500683066023100da59ea41b6a7b332f4ba263700931375187f32351fe53ff9b67d03efe3b4950510f796a85b0bc24e882f01a9b420ce91023100ec31987bf8c245b62e10ed462b18e020a4bc51185f638cc4d18899e93b868735ea247b7897f5991bbea1e6c0184f3cc20302047c435bb5006630640230564fa714d21541046beb3efcdd6e09319d22943ed72a7b4f934fc95f105acc0bba61d773cb7b4517654bb2a11b2a04cf02300e6a332a167fbdc52fbb0a446cf6691cf1f5c3197285857dd98130c73861d6eff376e2c800a1c9520f97d287b038a3c20302047c435bb500673065023100c923358ec19eaf701dc319a01ea42834b4ffdcf0b4dee232364136c9161360062568350a78edb53249f2bca6eef3f50402304d6e2afe7ace605cb7a5c3fefbf50ee44b3b5f4257973d629d8820cb17c9cdcf38bbd44f9964afe2eab6b82b77aabc700302047c435bb500663064023073d3c9cfac1c707e0a639b822ee37b77519e04e9b145ca7b32574b71d91f43a5134126187c8606156083bbaee0cbf36c0230335367bf8fc6c5e2742008d35f6d16aade25bc96eb091f9e27ea1e1696aa5632a774b3660069037cbff9eefee362d2160302047c435bb500673065023100b2eeb637d513e921cb406b63591a790508cad70e5174601220e7fbeec02712a73f319823fc46e1502500251b2140554e02302f6fcdfb5b520fba9be84d2b441490583a6feacef973039c972ca507e4d56b5e3fd89ee943a736e8484f9a1eab882f6d0302047c435bb500673065023100f2ac172a69805e24feeeae1fa0ff7fc295009a5783919cf8e43be9dfd1a0df036f497474e4514f8c7326dfe88ad425270230035a7b4efcd8dfb31327c2e3b8501729fe4e803b41b115d68a34a956a75ca87cf44560c3161790f91e9c3a6eef8ba72d0302047c435bb500683066023100c0dc4529409f47b0868ec6269079e3e0a9e7065fdbe605b36233df2eba6918bca7130f6caa8300285618a3ad5b5b4b73023100c893362b2f57f794395ad14eceb6b79953d169137a726018bb2662b3165588901cea9957b566ede691c005ff1faa5eb10302047c435bb500683066023100caf4a03174b46d12c9e5dc7965c556fa91ce3b5e186eb4f674ccd45c2c16c168c62aad476c1289128de7efc7050bbb80023100b1ef91a6bc3cdf3414242b1599af060d2001beb6e76b6194f5e1f8d7c2a99e9bf72c68b4da0c98bd92a0d5522e7cd67c0302047c435bb50067306502303280198d9003c7930871b6c9dedb0409de0ca061ca603d7042ec3be575e357a8688548320e377a22c36849e31ec5b756023100f86b5e1169bfd5005f365e7f72f929518166f6dc1062a42db9cde0f9f8d677879407a3a39543b98301e48ff853bbf1200302047c435bb50067306502301a40d3e98ba5a42e1e0eae0d5acb4cec69726be62c12b8c9ec6befb0336068b8aecf842f5ca823dc73eda10efc7bcfdc023100af6f5eed31165b1d258b0de16d0033170d56cb8300c90269eba61b0e2e6eb322d624eaa0cd713364700268b4444fc9b40302047c435bb500683066023100ef2185e44dcfbcf2423d800864e93ea6a91fee5b3e13ac1d0acfa7e09668ec7e77a1f53fbb29410002f7d3b886ccca32023100c146034a3feb68c51888161ad839dbf5eadad7691beabb944527d444dc6a0232edfec8d9de0d7cfe8fb52f7ff34004c20302047c435bb500683066023100d2b92aa8f11c24c230034022b1aada9f66f8ccb4d2a18c959bbf1a5d8dc6a9aaf856b51f960c23042f6f472a9bf48206023100990876969de6a274eddff9b958f37ee99ea668e7ccfe08829edb2c480983a3838177e9c837aca1880d1acc8f25bf1abf0302047c435bb50067306502304606797ff0ce30eaeb1520664b4ce9e75dc514af6f9c0301255240a82fd879194c83844a24b7107ac9459675b087b5a70231008796379179c6b33668b52414f65f15f495533b8aa120c88e6a1ad0b32e8d910e35e41cd1aa841fb58bb33207f617f78e0302047c435bb500683066023100e9aa22321fe739443da97e6df781d96c7295f197513b15ebcb8369f016b1f252d34821f157f104b1ade5def089680e06023100dc77bf4495fd9add2751b6dcef14445c851fb502c85ca9bdb522a514a7bc0275cc39b397f5dd60877f3bc832fcff71470302047c435bb500663064023031a417560ef54f13bb8a5b5af412a2c40f6c6b4b1f5a611841bfafa3adcd3e54db9c7bee8bf87cac4bee4bf8c94e2ef302301f57a0164f105b2358a526d136f9f1d26bc82409f334a398af5e0377ac5105a95505d06e324117b7a76a5767df0bb1c40302047c435bb500683066023100f45ae763d04adac66228dec606002c4f8633aee28c6b931c035a5ae50e6dec529774dde390b270c83fc4e110132550a4023100bf32bd793e1d6f43b5fd3a60d52e44643e693ae584f6c5e2e1cc9cae157d46b0d772e951b90b5b4f2b967b3a7a069b220302047c435bb5006830660231008fa0642af7b6d4f6e76ce35aa9c5618b3123d36385a6c6158b116026926639d5729330aa339c362f722f5c855993a9e3023100c1a5ec6de40930b02ddd1140760512acb1824fcce34d1614d45692e6a900212326a9bfbd82dcb90588d8ac9153b4251e0302047c435bb500673065023100f11a50d916fd2a12b6ea0dad897f84192fa74760cb31eb2df3d0d164a3b95cdfdcb58792aad1e9bce82e139a928dcbd30230686d8445455f37ae00561540373a67e5dbaef6f85c4462143b8aeab44fe140adb0a844f5af26580a9289938e79bf34c00302047c435bb50067306502307874d1d12684150d323f45ec4eed5d60c9b2e18459086f5eae15d827df07b0a18a25f2584171ff859350820bff7cbf79023100f189a21697b57a6f0fad659d6d3cf78a83d034b0ecab16395e9a2be04fcfe0156e95446be1ba63b032413358060b73cd0302047c435bb5006730650230354eddc5ed0c1627e31a87f2286ff7750091695088e5fc67a97a805a8c5de67abe01265e180546e3b84835eafdb1968f02310095d7c2965a73e2be079a187e9fe0a539120c9e10b844d506bfc37a3413b2d6bd8d0c872f065a5f058e073fe5b32df61a0302047c435bb500673065023100e3eea783e88bf0467ad6b1abe5ba2f6ff436ad9bfaf30e40fdc29e9320a197881a16d365c208d87c7ba1d3c2df7ba6b002306a24212e48da5da748ed0e2a48f26b543d893bbe4cbc4820e07d65f9331eadeb0a5ca817197e188f3733fde3cf0432190302047c435bb500673065023100954f6cbc1d33f57c8fdee0d1713c092ea2ab38a9598f2eac553fabf15938eed0f50b61b1af506c0c46cef8c3fbd7af5a02305500d8d397410a323bf942ab4b6825394842b486917e02f64b316a2332b44cf273f80895b8e7e19a82e4edd4854e0def0302047c435bb500683066023100cfcbc646e90d958b9705218837986e8acce77364958e563135d22e13ae9de0b3814bb784fea67170c41d6a749323697a023100c5b04f411ee802172afbe0d3efb4eb96ae7103aefeeb7389dc00c33802f9be863fc939e0cc9249bdddbc1bb02d9fca0b0302047c435bb500673065023017ced9e76a51dbce70eb03eb3c8393c7985b661e32d0666abdb3a6ff4f613076c583bba9c37f1ff627c935e1c727a434023100c4a70b3997ddb427c9aa9e714648be083b2567e9bfc117729e1ef66f868a33004782c260cf336cbf4e5dfca70d5cb9230302047c435bb5006730650230104088a27710bbfe7adf68d748b6b1f93a082a2b79bece621da8bd1f78bb3e18cb6622b2025040b2052b24fa28eccac10231008682bafa5ce888902281fc92e4362a76d720365fcf5164d2053642c5844a538d595cf27baae805dbce6d3d43208326c20302047c435bb5006630640230166f8c786f09fb33d15dbcaa481819b0ad35f26bf2179a4b59a129d115ef2ef1871a40a909a3d72a883835fa2d29d236023036e64296b4c35df86ae29d27d8f8b98aca4c1d762b598ac4b71ff15c59acef6cd4f5bcd9ba9de765e029ea7b1e1e8ebb0302047c435bb500683066023100a5071441c4a29013c3b9ce7e538427370f9eb7c4e1d3c5be181883229995fc31c7aedca56abc47e5e558498accfc75bc023100f5cea0eebd404a95890d553ef84b0625f679a30ccc9c7684768af7ac629c5595a32b0278395f3bae084b000af6280c250302047c435bb500683066023100bc7e7c5d41ba877a1a4033c8aa1636a579cabde496518f80365809771930369a45b4123d0ee15e9b6ae3d48b413fcfdc023100b280bb4de7973de533f4ce6b65799ff7648b83d009bf529846fb476b695188732c65c62b950ff11d85c3841f777415650302047c435bb5006630640230647196523d2b1c4d20a1aa4a6b52a180268730110a1ba37d23f646423ab4a32a23203c96c9343dd0aec9f6180198c13f023077ed77a731fbcc031f1675f8100d93e42a37242f6ca0a1978767e5350e3a189ebc48c879e40e13e7d5dca3ce33e29b540302047c435bb500663064023069f26c454191ce0cfaefcb5ddf9889b915b9a1caf2b7368085833782c4283ae91966114546ef0c1654d3932d6469a08302303d8894a96f7b0531dca285249baf2e833369de1a87332e90841b8d40ab40e3ca52d93580b9145f174e2d829b8b80a2bd0302047c435bb50066306402303df3040aee95896f26cd02ce7c20954e27bcf6651e906365b932561f14d28e25eceb546fdd1cf980c8c1ee072d14d86102303fc1e18a2044ea8e7ff01946c7c9a22a4338a0cf3518b2e958c4a895e53912cb72f200946d33da3a26490b92ffe32c0b0302047c435bb50067306502301f1191dd65dc5a4fbe1f0689c72796544048ea86a79a231bf26227c2ab402cbe6878ebe31d7b91ae6f94459496c0f7cc023100f0e67b80e94861644f9aede448d7490312a84daf7b8ae4627ae8f6fef37027f1660773e57292bac38836c20609f1b3f20302047c435bb500673065023100e0475073eb09afb25c0046ca3bae3e71454eb35a933480c53e6eae0f236251c49850b165cda72f235ef3f61b96f195b202306e03a4cfd4445f5d7199066bcb41b4ae77b6b1b9e98672620e2cab4b140c0009258b73ce3d48f8c94ab0e3957e36d74a0302047c435bb500663064023059015d969ce7bd9be8975041fc96404a728b65a3f0c71dc31b12ede5439dff5114284efa02b847285460a99fc050d58b02305fff31a6710f600f70b81213ba38f4048ea50fe9719c379a8aa4b8aaebabb67fe0baed8101412e14064c4d1ee3d85b660302047c435bb500683066023100a004eb06f2a874ebda627d23784bab7389b354b94888765c16aeb6553b019fb03cebf3ed1ff1ad45709181447b46971502310095b9fa056a9dbf297de4e383ed4f5720353d6df5ec27c16b7f3ae6b73db71179ee21ebb35f4d827bec73e226bb965c3f0302047c435bb50066306402302890dcf10be6c46baeec3432ab00e95b153663a1351d1cad53062c405584b6142d8d6856624466dd7b98456d496978780230659c6739447ac4ddefb1028224f6ab24d798b277098f5a4792c5818a6d65583b688145aa0201a3de077a3fdd648f540d0302047c435bb50066306402304f3c113db47b180c6ff9a0e48a773462761a72df9fb5880b8fc2bc3ac9b562805597bc13f427e3f44a07e6051b71729d023016967f8d17d9c89da12930b871523102214c045088d82dc1df51a7b44fadaa8264f9b989da322c2ec4aa7068413255cf0302047c435bb500683066023100f71f0e21330a59ea3473b824c061294bc97bea2da2b199a7053898a9b3053b3aabc2c0cc62175a575a94029d633e0c78023100ca9e095511e8cf24e6546e8014574eb29283c659c9e847502f46d357dc3e7d79b8620b9bbc19ffd67aad394fe692581e0302047c435bb5006730650230542e5a42e27b215deb02c8b356bed097b5e09026472a46c8ffb4462e08c2d53c4d25163c423515df90510b681dcd707c023100acf55c19ec200b56a5dfe5330acd7d56ba8b66cb262003f20245dd8339ec6f6bf117081b0896c14a20f5c2ee54890a860302047c435bb500663064023008fc9b4c6920739fdced8aed03f96be2cb94d13b7b17ab6653e3e449cd9d96f7cdcd08584b2893badd06e23ec1a3a77102301ed84083ec81fda7fc533f0b7a8fc58949203fe7a3e6030e75712418f8d7062067907044d0e22d5468b25df84fce59f60302047c435bb500673065023100ca2ab35640968aaee7938d08605841c11c04ec9df3b01b9680d444136fd8ffada7aa50dbb5675e35f6855d5dd869670902304df8c7f5d7d3f22bc717a2f4b7896939c3463b98211df0d958276b141429a255381779058a51a2e9105c589be5b9d3b70302047c435bb500673065023100e521a9caa7a5d0a76ea510996ba84635dd5dd6d100091af3e456863d5b9b9f3bf2416a46b0f3b90f971004ed522fdcb002305496e330696f225eb0ed5232f64ba9726dae19822921aa0e94635321c871263dee502c6e8cecc067fd6474bd7d99d0140302047c435bb50067306502306a6f831dc81e884c70a38b4079d15100b2ca2eda40baef6358295f38b1c3b475371c50d48a68d1592bc33be4b4f03d3f02310083c07b48936a638329ccc1f96ddfd8063e83d8122f39bf32c260058243d0ec65853647bbbf08d46f766c5de2c35c330a0302047c435bb500683066023100ac937e7004b1d19de8314a0413e56b4ff48b57dec0415a22c87a85958165d677da5adc27d9a8316a6f6aa16ae380b258023100a5ef73c4c608d707089e0c9f168ef3d524a00ca8fb25bc181c518e58749e3ba4398b8f15bc1cb1913453b79aa622f1bb0302047c435bb50067306502302278e8895602717582404f021c59de35ec688c1026d0f79e941a952fbf4c4632dc592b1eceb125205aa8b9722040b0fe023100debcbfa4030e1024110e51867f74aeeef1638126103aad0c270fea70fd1378da0ef2405519e78fb1f4fd48a6bfe236a90302047c435bb50066306402301cc55c9ac24b68f51c00adc9064a86f55c0899a7b7b09f76018b3bb928e64d50656231604ceba129fe5f995220322bc9023073f9bc2c1f379288fa84c9a03ac5303aa8e4b2cd3f1f5b7d76c1a3d2dc01b12f308ed15d3ec2aa712cca3a904561c8e50302047c435bb500673065023100d628f0f95925fb8ba66df366b09a5f9326a1059a7a81bd10f334f9327209f4592dc69caad607f6ce6d2170a91f91809c02302f4139d32294226409195d926d665af1a8fc2066be58ac17dab4666c00d3a9f9fe1a0811d4f98b7c41bcde8510f95a950302047c435bb500683066023100926b659c576fda6b5d470c00fcc6379fedaebc8cf3ed916b30012c127a02ccac6b7971975eded4ab63d7fa57c920f248023100d7864e97da093debd8c89e1681e543a84f42e01f1bb2ad558d45ce1b84b296949f319740c013dd1aaf092bcae9b60e5f0302047c435bb500663064023010706967269eda336906ad1cc87166a8749a7483f544508ab04fcfca728369dcd4a767ef0563b1b04cdc04f2c5190fe302307c78a708b13cf15774cdbb05b71ec634c29a70da8608e685125c1c555955d35ac22cb1da9586c6d36f4c3a86f4fe72320302047c435bb500673065023030cdb582dad86bd3b2cfe0bde154fe5760f92aa588b76fb8381f4a15a51c5a3403d941e4f5087b95f4ff8c1cb469de40023100ec0edca2c9f4f2893a5d38b201ce4df5a176e32eab270e9f23407f540f28904f6416cd84a284af55ceb3e3494266697c0302047c435bb500663064023021119dfab2cb3ce25350bc05e3ce048ecd1ef269909a0803105a5728f28fad80fe1250dc0fade876e21d470c149c2831023056d2b2efa3336586fcd2fa90c0a38afee443934b7a993af08639acbbac0333ffd15dd1ca07fd3546ac6f4a97a5ab94c00302047c435bb500673065023100f71083b9b0a2667d20750293e000274e412f3d9daa310531d1140d8baf7b9054a12de397a4b5bad64043b0df16ffcf0502302bfc1782ef8719d663899b27515111ee7e16dd261e34e402e262ca9465d5fb94cd4d5ad6fc83edf869e87afa6b1f80900302047c435bb50066306402305f719b5983ec7a447498c46d55f434d995a5d8d21ff8c5dbe7303ea30cf6e8ee2d9c393854eafaca033c81ef3753298d02300e7a56a6386390b90c8e799d4db6c0885b7b7954067bee31ecead80af57f9d7d5342ccc632a18d523056d4370cf7825e0302047c435bb500673065023069d6f17cc7b46da26c83ca272e4986bd1d1acd35bbce0e3babebbc7108e021f3ad0acbf660c7cb4f77154fcb781980fc023100c89ee8c9ba31166bd0afa6acf851f38161c4e81abdf1e75f2cd787583fcca48be12af08d41465f2e35335b52cd003f860302047c435bb500673065023100ef822c81201af1a484c8363e3b52a7e46719844b90998fdc7c411323b0c657d985bdaf1f09f768ca6f395911284597f402301198675d5e67bf5d6094b8bb979e2443ffe7400de368c94dfbdf57a917427b84fdd8b6a0a76237482b85a3c85e49d9ab0302047c435bb50067306502310097c295116da69b7dc074b45f5d317b0bcaf38f1d1135f22deb61f141c272d3eddf7e1b8c7902c35b770f416d1a756b4e02304e3673ef67df81ff2f0b176588ab325c648d923c3ddf07e0c087932ae233037df8832bc872d930b515747a4edce2538a0302047c435bb5006830660231008c9a2e1836395a775852d3962519d1fbcd052ac5c76c39114fcb7aad893bbf7385992ba669964a1421e23f2b29105ba5023100cf34619b44defa405d4ee66b36bcfa18b95025bc042dbb8507a46a58603ac3437d8246c99d1a4ab7a5519ae896ce71bc0302047c435bb500683066023100c355506714c2c43c769049aa985d7964aeb380ca3e50d156de91eac4808fdbc7efe70c4c89a75028dbace34bad16c8bf023100bf41f513b17a41dda5e08fc12e8fb56885c548614a9b5fcd144410072ff9896e431e4ec9d06ffe5b53a08266b19aa2510302047c435bb50067306502302f618aec9b994500f6435da159b7b1f7772e092792620e690263d434093dae44ad77d4413287edbaf68a38fe484c426a023100f88e54a7c762bc966ae287bb079a1aa37717b06c215e5a9735a32fbd2d1502ed304a1db2a76a1db8cedd674e8a71eea10302047c435bb50067306502306dd6982ac472136e641b41190e1344e824908b676f721e71b2871551796a71555530cac5fc91d79d7848dbf92874079e023100d2051aa13ed8808046aa6ae8891dab42153656bc98f969931c881ba7c301a1dabffe1570fa59089d57d66dd4273da8e00302047c435bb500673065023100bb76945ce0a11ae78e1af9e6735c17db0c73c5c0979ce483908219c5b4717bf5cfedbecbe47c41505ff58b0220fefb7c02303d06d4352efdd8c4391d0738bd37bce79d650fec1c0222e680e5324355a1ac84e12b09b2741f519778bad57edc5d393c0302047c435bb50067306502310095dfde22c1575c2e5f7aacd829fb85e109a9437002408bc987702368db5b976958b1c2353f8978700b41fb2fd4fff96c02304f80e33acef759ce91a1fd253486423c1c7c29cb239d74420918d06fe64fce180dee58b20c145e86442e74d486acf6080302047c435bb50067306502303ca35924e9fea0b89033917909230fb9f9d8201a3e7f058a23f6892df6262eb24fed7c01db264e06aac7fa5a793a1a84023100e7d34e0c65edb170d09c5b3370f1f2ada2e05ce1e0b1f84f90f4633a8dadc1d09538ef6b34e864db5d7afeaab35e4f950302047c435bb50067306502307843e038cd740243f1edd5f4278d5b90bab140a18ec1156fa30762931a864e0233fbcad963e1214d58e7cd3be9c3030f023100b435bd63ee407195e90ec67d62bbfedfc089d278778f227e268a93751d13f7f75dbb369bc872d25e3d42189eb0c745410302047c435bb5006730650231008ded51df75b5153787c1dbeeeee0fdaa97aa6232b8da4e95b91a470e2f30eb1a4920eb47805b2f1aa1af3aef4cf9acd402305987249b82f8e7e1b03e30ab6dd96c0aa6a46fc116b3f18081a787325a88d6f41298d6d457e1bc83c33e7466ebbf6d7d0302047c435bb50065306302301ed33fbea99ff0b2f39dda3ade43079401c12c6e188d4889dd222fec4565f4c9b9c7c876003f0c4ace06485ebf1c0da8022f6dd87606ed1306c04857b9fa8cda81b2154f9e2d6d5b1d37f812c2c00f6a78542e9fdaf01fd5ffd1ac6fb544bf378b0302047c435bb50066306402303b617e6914594fb095622e22ceab63567d66a9cee40c41995dbd8c7d8781c3fb94faa3c47b7fbb31319a88f4ce203c5d02305426fc00727247be258eda98fd665a149ea540f14ef2663585150d4604b79b9eee573d65b1bb61e563186f69cb5baf5e0302047c435bb5006830660231009ff3fadd04883b509f9f6ddd7123d31c757e79fea7142634a810ee7b060ff5d0e4127e5c005153d902ad035d66a206cb023100f43c15505e05235ff60b1522bdbd854889efa035aaaa0e0d37873d5f73e3e9229423fc97da55c8db1e8480fb0bc6c11d0302047c435bb50066306402306267ba1c4f4306bd77b24b69f1f3fa8e0f075516ccc62a1ce78ef73c5f3e6f956f715894cb8fec75356ea8f330879470023033767de8637fed00a90f3b087200b2c97a6392661f363d548e05208dec565314e42b1689734563ec577143a90c1a26e90302047c435bb500673065023100af46bf751829c0dbae1afe677ad0f6d1a3f06ae4860c035f6dbd7f764ddee7b5ba4c9d36bf94d8d7093e06049aab66ca023028a5649545d20f0775f6a0ca3558f8490b50a25d19ae1e1e6c49fc3588454ed0bd4cee689771b02ca8617e531c1293fc0302047c435bb500673065023100fc85546d533a3f4c989d2d5673e9dbd3b451c6ea593ff954b03b5afe11b929fbb5a16c367ceb5183bf261be32f6843dd02302f59fe3f5ab4dedf6e1c3301a77cc8f15bc5d448f8f1324badec42a2502b31e0d4ece0a5675786ec0e926e4a6556ba170302047c435bb500683066023100e52ce382f985466f37cce449c86fc8855c264ebf0e6dbdd43063be1ff5c88d8d57498cbf7f969aac16ab4052c312cee3023100d0461d6ade8f9e74e4e9b6599a36210a130243c4d3642bfe16bbf0afaec800fb40a20610edc618f0a68ede581d727a430302047c435bb500673065023100f7f6a64624ad743937259dc214befde93e22e282c6228f161f5d9e60b9a4733ea1e71d5a98849321f549c0ea59a432c3023069ea03117c361bcce0a907e75ebd657773714b931c95460af2bd9658d398780c64f439205717dabfedf2d49a51e5db2a0302047c435bb500683066023100be9bb11378925c00422c0daad6407787355569fe10a67992e6f04dcc7aa4fb45b6a9081648b94359e865771a85323bec0231008b58341d17f113983be7b1ae1c54c57bd0fb195f12bc94f8b97a5bfce93933d11bbfd4d0e436a558d9150fba28e55a370302047c435bb50066306402301d96ed99fbbc4b8be0a06a09bab09e00ab10f9177e6e478b5b02717d2d640e323d7dc3a28eec6a922e8986cf4ff9d620023067bf3844a90ed33c34c101633a1cd5b122c00c5b3e1c9d6c5ee9dcfd738ee891ade75c6521ff63d34e3186cd398752fa0302047c435bb50067306502303f6172a8d1b14d85c5a7abb341473db2bce812da4b14bcc596bd3c169bf5332f39747883faf98bb3f4d637f323fa06c5023100fff07da7c0236f87923a8599bb9aab0096e414a810e045f564eaa977a2a15abdae05aaeda29bc7a7c931024923bc4eea0302047c435bb500673065023100ec84cb365815c725e716564820de2da5beb592620e3db18ddd3792988a4eb534bd1d9eefdcc6b03f3d75a229bea04052023051b862cbb660a301e6277b3ae786847e6168aedb3c97ea9b053c70886a5dfb546ea00fb19d2dbdc0338846c08872410f0302047c435bb50066306402305aad031eccf34aa203f8b9701a348c92e4851de51c6ae700b927a603254694192b02575ebb212bb1327114c14226dcdf0230671a40a2aaeeff7d86c37be35b6075a4695803cfabb546f9c18c1ef13493057b8a76f98767324fb8d4b24d5f1b82bcdb0302047c435bb50067306502305c27efe343350b6267d12f56c6a303e4a5bf635bcd2b226781f2f3751d84f2eb7096c316ad152144e49629cade55463e023100a1385bb03112a930de517ac464e0db2b971dec117aff5ae901db59888dbc81be3805570eb2acabecb8e892b266c8b08c0302047c435bb500683066023100e19c712264ec432f5ac1d9072e15bbe7335b6eab0f66de12371325aa057cd1eba3eaaae1a740f2d4a07ff956a555fe39023100f339b300e98b6923ef625e493194ae97fe940580d358c6347f63994ebb541f0a0a838841d13abe8ec9500019d3200fbe0302047c435bb50067306502303df64e9b84cc6722081de4df28a7abcacdda8aa88a3267669d0475e0b1219e8e54c5d73c18224cc618131322d337e0eb023100ebddf77f5e46ca355755a334dfd017576102cda1e42fbfb7e549e3259f644eb8776c188edab9669efb56f6e6b11476b30302047c435bb500683066023100b21f9a1baf6a7da6ff69fca77c7f6fa8ebfc5b4c272649a9eba5cc946e35c1cb9427d6726d3e8f49d01a604dfdf9ad67023100d304ec199483154e8f5a734c8a548d387990b1de8c5603cd580f2bf0e7c42aa9d1eed1d2006504fd3ca434d63478c6690302047c435bb500663064023036f6fc2543e48c6353d24ddd880168e51d45b06d3d7e9ed8a307412be87b991a851787f0af185e86022e46e7477d5f4c023072df1e4d7b93e4d7f63898a548afd20710afcd138ebf73817112da7f0ad20dc805c808c58ecf09ab70985be4cd57f2230302047c435bb500663064023071467c4065022dba1927d7d1a2d58fe9360c9cd8a50ecae56a7cf93e87d457b34b6bd11ebbc1ba6c5521b89ea14dabb8023004b5843816f5c71559c4548b1883a9eaff190edc107e0a82ffb48ec9dcb9697ed0c9bf6fcb5226593ebf69a499951e0e0302047c435bb500683066023100ee408aded8499cfb6c7deb5ed9ae63def37310def7746446ae5c0e0dfe8c872a8cdb487479c990021c8ff69078aac848023100a94879656daec6e2275df4931ad4fa5be18505b68156ff07beb5f1cb94bf0328a366032e95889d22a5cb9eed24a09e6c0302047c435bb500663064023054dca6c74aed74e63f9e94e76f821720d0f3ac39cbad0c21f813a17db514f06afc3f16fb7c6916028595cba924f69a4802306b41274f5c4671029ef1da6a9d0e5d308078decb8ac6daf7cc1c8c6d6a7202a611dd642b233d056fcd292946dba8d33e0302047c435bb500663064023048b13d1d19d9c2dea43d64b1badfd902b500fc5a516378372df5f5f9388ded6876bcaec8e7dda9b7eace45757414e52102300ece007205868e0c5da4f7a5ac5f10e99016dcf3ffe1c30b022264f94f28cfe9322d7190f3166ba79e996b6bf96a02be0302047c435bb5006730650231008fc0b2a6131efb2f478324676b29fa87880285dc9da1f7f0ddd01d0a89bea67353831941446dd64c380bf8a41ab87a1b02302f6072fb4c4201595c38f456b572e8ee87e054c85c1396a684ad27a3d88a1058702244866866705352c6b745897e53550302047c435bb50066306402300f6c45bc43467cc6dc9d161ac6bd542fe08c542cee8a066d463328e0163534ad0b81c9165ff7474356f001b15141991d023078ed6d153b8b812e17b071d4228fccdf090c3f82032739b46b1dbc25a0836ebcabd71a8c4b68a939395421932b210c6f0302047c435bb50067306502306e6be414dbeeead64f7be8d20e19ca012503a05f3bb0e0d738de16b99fba1a5ffbf50b52aafa8813a751037a75de5814023100c9abe9ff31133437dba983bc5ffc9b125be87439cc09855c1621b9bbe5df69eacf5e19a3ea26fc4f4b640a735d12ae9b0302047c435bb500683066023100a1e2f05c6b0384e069bb9976acfc05ce304e510ea4a2c65ad5ecc2847b13a1cd38e46a735dd37dd0f860aa47c6f1872f023100eeafe2c1bc943fd2bd4efaea2224c1ebf4e317507094080df2bfd0bdbee4532324440ba2a17974d12d8a742d913743c10302047c435bb50067306502301fe5e1b0cc03b73ef3de24c785bafbacbd746146ad13d5b6f861b4ea97fe599b0bb3dcac433bbc2819c83565152b3f09023100b9893229fcba7ff9b2b8e1b5c3a143977a04c94785c92ecf848322463f7b2d85e1fbbe48de1ceeecdac70f7a0204bc8e0302047c435bb500673065023077b248983ac4e4596fc18bb547031432e60e7bc402bcd4df63d626aa6faebb9c73945a1a0e006202d55843a4220b7a2a023100b86c68c8a6f52d485020d1e5ef17a2ba7642067dc880f378944f66505753f0d57d90d649259685b96253753905a2ac3f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f0c903459db8d538913b70baadae5bc5fcb003eae71eca2b1836eb263a89ce8e4c6cbb78438399fafc168834bf7bbbd302307bfeec576b9fb997d3e49dc69ef569ba8f036f3899780fe22bd4b61f1f05c97c4e47e8cb112d211f039f23041883bd750302047c435bb500673065023051a30b3ef0ca2859cb576833beb1b41d08ed40bd473aa84473a4c29e5e6dc9a8d6373785e9b3ffbcbda8be961b5dd018023100de83dfd8fc0b89442021bd34bac5e0d8bb2adc82de8f87733eeb960cdd3e9094d2722450b1796296640af3ea8a6eac220302047c435bb50067306502304726079a470d2775935bd33b9af2a0f036136e48738a6810d9600750d4c14dd56277c02fc13ad218ed31f0cdd9199e1a023100c9396ff8c99590e4a4c290278b63dc9af43565286e7c2415ef2acdba6db1da5c67ee0c0f3c08219575d2fb57c68e05d20302047c435bb500673065023100e70b967111c81413efae94fea8a99a5f93771df468e27a875d68c1f9016e68236a23238992ccff528279f55acd7e23f9023044142303086ac730f3a7eb31bf4d8e20ba4262993ce10058c9c1f54f0c3a0b81836fee6c2ca855fa0340e0a361a88c7a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310086557ca84138f32cf7bd22a1137a1a14c635f069b545750da31bb463c929f5ea7a7428f70d698ac16d718e4879000f95023100ca1bc2cf480e7b3f8ce80d2296679e9a9e225e12384f2e26bacb75e2f45b327e600af54b739b34c187151aea76a6dbda0302047c435bb500673065023100a2bcad2d54931663c39a04594d7fcd31b5e88fcd5cc9e24f5654d21093e8ce9170624c706436dca6532259682735ebe802301931975662f60e26a168267aa2622118e5d059a3bf8e84af213181edf0bba4037698b83b4b94d4a7892b3c3eaa6980100302047c435bb5006730650230689004c4fce11b3bced06e2915fe84c8c5de580b70db47fc1835dc5a6f8c0be6c45da29282a67770cb69e7497b5703dc023100ecc400a729a303dc7841476c974e5ad28e3440fcb8bb6bfa75167681b9a98c384354d703d492ad216564f6feb025a7fe0302047c435bb5006830660231008f417a88abb4830c01f4e36a0f39d4f67b647343394870ab9b74644c6fc0991ef910a1a889d2c4f815df8565f4079f24023100c716468b0e313d799dc3148e12a621dcd7534e792c3ecfac6aaebb2df4f5caf2853838d4bc0a0d5628a2177d23406d3c0302047c435bb5006630640230632508d2bf30107bb37b5850bc5343a7a5c934df0e7b25d55d90c7b13c8756df76d1fc9553c1b31322012d27e5e81955023016206f5626c0f2ff5417bfe1be9cae918600bd408b2652be5a8d694006014fc3774022136ae65bbe8c0426d1ab8799510302047c435bb500673065023100f0bb52e34a8c5301e3d0be49a0ddb75fd175acec38eb5302ed92ae069f16cdfcb045ee8932de28f113b1bb6c1b3a6bc902305595797d22ecdf897a01d825ae7569f613d6d0146d7b8f1ddf16df66550e99ae7aa689ff90a8a0a0887ca88a802411570302047c435bb5006730650231008ff12d90e725323fe2a132f6295f424126dbb643644edcb6cfb2531f8e07079066236fd2e816da9d555bfa20b9cd357a02307ecede2ff72ed2954fdc0340de9a29a3834b465b644da7892dad1aeb0cad2121f813b5786bb41fb6e07736de565f31df0302047c435bb500663064023035dc50a2209772ba2e6e40ac00eee477a7f2cd2ee7061957735e1aef7627f3415ae670747b991f6cb7b8c73a2061f7d302300a6a1efa076089c11644df446891db660226ab766bf4d26cc114461d19b06e2fc3dc8c5c3c04398b1a871f15894022fa0302047c435bb500673065023100eefffa0eac37763926a1dba32123b1d5e26e53c9e76168190bcc0076d483d4181cec557da3cdc7d866c90621b45d8fae0230756fe9fc02126a80d378cdb25ff84a4eeaaf65f8d2419db16ab4b68727d426aa6427e5888be82dc7dd24486a04a412720302047c435bb500683066023100cd5ab301a07703ca674e5ba971d1a80a258043401e8bf7e0561b6e500f36334074f80bf865b31038d29e595076397f4d023100ae4b1e02f0ab127cc5eba72ec37ab516986134ec8b7adc8a6f541a736e1f582ded085ebe9ee49e9f3be60148d38463970302047c435bb500663064023005585c6094aca85cea13b5baf846af10d415451afd77d8813b7b778547b6608e46bd676f20a8601e0356acb0a4d0df66023036eb32ab239a9cd334b471ce916c94b74dfb83e7caec3248eb5a4f694b976800cdd082354b91fe6b36b13399916403fc0302047c435bb500683066023100bd6a40ccb579aa5ee2aba1c9efaf19dd563660754bd3c76895cb4565fa276e55cc8bc288a2ee3374c42e6dd3ee6b97560231009cef7a6a950fb81524b52eb5085bb9fcfd6eb92ac697fe20cf62e4192418574aadf29769daf9ecb8ed72bedb8c0c2ba00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300da01d3a0a01dad9fb6a4bbc1c03393279062444142f6508a041dd1e8d9bc0cb6b02f5358ac0b54b64c08129cc29dfe602300201f884d110ccf73ed921729dd63ae8f4bd4fc023f84013c2d698029c1f305d5ff88bd069a4be57d9d64d6dda9792fd0302047c435bb500663064023025d1c9ad9c6d9b3707c22995f8c2b64469a8fab2c437438f0e11bbcd19ba83150fb68d4a3130390a910faf1e55c7a912023000dea3b99ee4c38101061c88dfa3f6ed609c3bf321f5923798de3cd5a708413ae82b9b31f3f95754220a2b3187a0502f0302047c435bb500663064023071c61cff73b3c3b0ff320bd18793f7f4cd557692455c6bfa62d25b72ef3338747f74b76c6c18d7e98396d4bd105652180230328810d8cbea60b29cf676ae2f49b26a4436cc6f18170b54d8a4fd6c671812f5e9290183596b910448ac2be3035308830302047c435bb50066306402305932e67ec91b7ff8c8440d6c4da5deb31b84fc4673a359be5ca5239fd628a623647b985db81afef8e6f21b603ad7a14f02304c3d7e04c83e6d12dce707aba9abd4d67900070ec8f099f169f86089bf486247656543cbc763d585d2c6125f119c672e0302047c435bb500683066023100a48a01e8351c34c7196e8467c6d67f1bbc109126a7d2917b4618a49d2e31a4bd5d854fbcd1c82898755dc2fadb2cf96b023100be416f5c973f4e3a25da6901bb6da6830e4f90ec0fe1267d7d2dab0908addbc141d0619340f118a169a2d9f660f8659e0302047c435bb5006630640230652acc81f864486bbae8311534a3b315ae7b99e15518a162c92d832e61e84d258cabd5f3c7954189939c92870edb539b023036c8e57338401988068d5693e3f4188da71f81c65707576f4f10eab81c520910b3a31b773b293e118bdde671534b88f00302047c435bb500663064023027a8708dd67bb445b09d036a42420ce79b169ee38b1ed0a28c9df8156bf0e1dca0eabc2debd7f979f8e0342c769eb50c02303f456b96606080f37a2a169d710ac4e354791882693cd4095437e7a540c7ea732ad9bb49a8a2a6d6bed10abe46dac5930302047c435bb50066306402304b9aa5e6a253b16a692932399cfcf8acba18c7e34809a4a10dafd117a2ea6077340ffa9b2348a74c732630113a3d62e602300a9ccc814c3355f6389504603fe21aadf6310d153362499e62f9ad2af56a11413c8db2942f141bc264df419e4ed3d8340302047c435bb500673065023077ebaecb1b47d72355601f27df40223a2396d9cd0b6a8df25731b59da3c6b4aed57fb5732c4c667f7fa47800f83b95e7023100ba29f12cc02b75215d76cd71b507a52e54498dd04e4d0a15a55ea37b72e539738bd4f2eca8c9dab737e4ce14dc6a4b260302047c435bb50066306402302ab82f137ae8aee8f35fb5fee912636e0f0ea9d70d869fce34a13b2b7d1b21e5eb97dfb2da6a4a6863bcc581c575ef6b02304f2d0ec34bc3d6470175dac14c015f70ed0d11132e817da31facdd328fab69fe699f8dced8dc1b04f34312d3dc74bdf20302047c435bb500683066023100db621b963078c61687c2f3c77c832795ea9e480e003a50a194c8361ca49da2f2643b88017fab794f710d395a6231fc4b023100a52ce7a4ef1b0d8276880de3e1c6a3a669f0254dd0a179d22b55888f27d46775db8be01fc3c7a8e1d9b095a65ec077d80302047c435bb5006630640230794e353f9ad1ae9bab7027232e7c8afac34087d3a5aa7505005166ba93d7b66dd448b668f760931054472eadebf5847f0230235aa0c1bc99311f985be86c6fc9b6bd21f3cddc6279d773250677f02fc2baf259244812cd1168114908d4954be914340302047c435bb500673065023100be83cbb3c1a4f9efe119fe3896c248d4cb27e94440c90ae09ed6427dfd40791b2a750be06ad91b2c335c558ebbc54a97023053724f167823eaa294cc8cc819cd13bfe55ccda31cd379f8a2aadbec0653e017507d5221cd682fafe2ff9edca691db8b0302047c435bb500673065023100d405d517a7998ee6390bf1b9d0cb001728c3bee850dc7900a9d8b4a4258aa7a7766097d7f5d6b3c1d27850b054111421023033c8a21b7c32124453b223acdc5fb07040556122fd8946cf59774a434327af76d626fcd17b31769686b442a3c1ae68160302047c435bb500683066023100d38842801acb06202daa359552bdc65dd3c2ecb53e941316462e89bd896d02c991bdac7b0f1cbd9fcb9482eee6a02ab7023100a32ba0de2c83518c322a4537dd5a218b972f3599261026d026b910a6564f0acd60f5baf1e913ba4203eda097646792160302047c435bb5006730650231008b086bf433b3623c44b5886e91e86c3205afb2e8e73e99061566dda13b83cc85fdf2168c917865db49724070d2299df102300adb9fbbdff6447c875cfd08ea0584f4e9f37aa1adc9aca33f323fcb82c0396baa476e1615a09444d83091ba696eba9e0302047c435bb50067306502300d547aa4f6c8197c92667bbb286fb88f8ba6ebccf3724b1d69da302a2be441b0f659ca2ab3469aae4790229e4e9ce8dd0231009433a7cc6e0e9ddbe3135830db9f57af4fa21046a0d2409a2bf7ed9ba619a17b7a9e59e68ad96395ca310024402f42fc0302047c435bb50066306402306c0ef4d000151b709479cf0a50e977bd72bb8647fd7deb8fccde47b8b447bada2bba852e3bc86def61238d0d2b20cd7f023053bc2df431fba429e84dcdb372ee3e8bc0f2dfc72e5052f637f1a68e459e14297c174d00d77c11200a6bfbddde21dff10302047c435bb50066306402300a3554219a7112d3ba9452e01631218ec1209da2f8ccfc7619a0dff0f90f6c429d782cc85b30129a9454e8b64a48ab68023066104b2629f3424fb56d61dff6abdcea410aae6d19499906925f10ed6229c0d80717cc3d4c925fc8378d3650cd6a42a90302047c435bb5006730650230721e4e5b7bb3343ec387573fd1f3cf1c0edbdb77bac2abb7c6b8324902e962437f8e4868df71df5a4e3f904346f20054023100e2cf924efcd12c48a3c1cbf90a8e43e85bd9f7b8861db4a52299d5e1d7f1b0e3b97a62452cd26c4f76d591ef0bc965b40302047c435bb50068306602310087e1dfdc3b9a4419ec1b6012dc97009e6cd64f6473158747f008018536f10a9f4bd4dcc6d012ba0889c2164191dcbd40023100ec3acbf7c7e55c95f32fa2e01372cd738e696db83ba63d9655ab48ec30ff525d919ca65c1f991ae67011e4923e68f8e40302047c435bb5006730650231009f0fcdf151e68d47972180c1fe2a4265f8dea47f57bdd4eab50073d69e313057592d5b2ce3288b6abf013aef7e28173f0230086ac92eb121ce071a895020181888f90738f15a72715f8bf2d2781c4171159d5db05131f70716fe1456b67bec2e2f890302047c435bb50067306502300223199619bee7a5275751ca7d1a512901c175ee39e1be87fe95aea6916e07b53cccc57488459592b7a04aeb6a86fd8c02310095b6e853ad5504e8272434604e5cdb96d344b3fad23cee9fbc2838434d24bc1f5e51c936c27a9d0bf55c4fecefcd128a0302047c435bb500663064023044efd9e1db81ded2e6155062775d6ae10abc79318488855cc1e474d39fdc38862dd80032d1c463235c0051d61cae18b802300466850376d38b7567ccbf7d53e06ea05bc41b599942795c534f5483862613258de0805fdd93b73ef03378e9ce506f7a0302047c435bb500683066023100e51f5c5889a410884d95cc07045267cd77899fd5182c9fe88d84e8da6a5d1f59b6dd875df099eb5fa88b28da3f8f00330231009c9195d448c7939fb0adba8ee63f2c3969fb7b388a80881c618a9de764c78b8f701ea6084ab353d0034f53a689976cd90302047c435bb5006830660231008d21fc60bbc8a8d6c62cdc63fd87c5efe3baeebd1503b142e5102e3ddd1e839f1f61e1c200313626c81063466129fab4023100b03884da7beca52d7e5c34cc1ff7cb848d91dbec63d510a368cd5bd84cb8b59222cf068d5ccbbecb3a21dea7b7ebec3f0302047c435bb500673065023100d73e74376dd93ef408dc668aa80f3a3e779c51c05966c8149524de7d6dd93c7af63ac7ba16e4eab4b86cc760bd486cd5023022e9c6ceb9c641360dc6433e19cac8d315e0613ce689c4b7e5e943b6056e3a22f8401611a177199f65bdfb2b4ec06b510302047c435bb500673065023100e53913af8d0767f53a6bf0d464696047fbd0a6049abc40b9629de899969cbe2968f629efa16bd11e5cb225414115680c02301edd73e46f5e7affc4de669769bbe5b45b4b04632e222d61caaeec4d266815c23d02f6198e8690b41092ede69d3a408d0302047c435bb500683066023100b316f6bf39c3b84913b3a2f4fecddc3a19f07faf3ccea3e90bb17883ab03c71a105daea891c879c5181df3925f825f780231008ff3d57e0b19354b94eb5159b56adcffb48f6b87534bed7dd999b96268580c8cd2dfa1a81013705616a9c39a438599a00302047c435bb500683066023100dbee021463e0222add641eeb5cc72cb2a23cf024cc5b66e4aef0b1c643916a8c8dca549b7af46b8ac634c0740ba73dcb023100cd3d39d64cf5235e58b48b3ef6cfcc7bf7e5bec75886ed35a51be378e67263e20a9e1f323fabf5311f5d27f7b661573f0302047c435bb500673065023100b17055c723344dda8256d454e368782d6d5d5662e1fe6a206339219c1c7f4da9fb6fa4d83abeaa4c6fcdd6178ad7724d02305f294e820d651b82a4ee6d3cd21a97422bbab38833346411563bf7c6a69d37b77fa4f22ab423173b49c4bcb3f04227920302047c435bb500683066023100b6f9a10ffa7e48e35bc24a4e016a0b50798d21902cdce1e3f3b0b83c7699f030f28c597149a3e6da841f57a0aafc8132023100d4cb54e402588696f78c0fae3b8259bcd0d0d03c5093c4d0c62cf4e19db842b1fd7523c6436739fcd87576f5a0d0b2540302047c435bb5006830660231009eaf6ff3bf18d607c3d64fd6ddf7c605ce521d5a5272a62fadcb37746e21401e6d1dbcb05406ab4a4f8b6cbf9209882a023100868fb104a0b3bd23ae4734ebf120caebfe488ea6f162fb19e381327daae0a975ea5d51e01a82b40037a95621b16593ff0302047c435bb500673065023100958fcab51d29ba5c9a5805ce018d47d21adc82c3219aac200a2ce45c82bf1b6f916854bad747301266973ee8aa7dfa7602300ea1cfcda7a41ec52d0da6a4f571bc6a72dad800219f8ccf0b61348b919ce615bd0148d56fd09ea1a2195b081a5f0e970302047c435bb500673065023100f9c2bbf19c746b6d80fdeb03b959bf1fe9dc0939f770d74f5a58a1ff102be588894e1098e79a78e5232b5e31e6a8c4a30230018825a1ca8143b8b2ba93f7d50666f22ce0dbd96434230941588a03592800ca942939f66207111053c367bba7ed94020302047c435bb500673065023070e0519e7208e6689334ef26d48d1f63c9ecd7b4b3d4156a5c537efc34876ab0cdfb0615a6786ad167c48f99c7f42c6a023100dfa95fdfa1438bc8256b2b9186941ff590b4923e3ec52fba44f24fc2048aadb70247fd302dee7bb992f1f9f65379fcf40302047c435bb5006630640230187d4e3d52ccbd3abbf53efcb1520e49602be2bbf6b68558ebfd1bb757fe386fdbac94bd3941dfe8f3ffe6655d584bfc023071ac3238404abc3268c98919915e5521e0382ce3630d537b570ab11bb901b716d60a93e067651d3c16483343555e06960302047c435bb5006730650230698421ad409ae63ac231f7837c8c7194ad02b2f13d1c226a0eab6d3b74ae6b27484ecdab621aba5ab7518e28caf3dcbe02310088821e4a052934244afb41b1cf0584524aab1335970098d0d39db3cac92dea89a2c62fbfa19ccf529bdb8781a0181be00302047c435bb500683066023100e3bb5c66542be4f0321e408fab5ad8a2c1e445f18e2a824b8badb22a5d776ad60ad562385374ef9ea3546ceb4de8e3f9023100b6a8cc1ccc19e62371d868a9f9f8535c3920a3a9c1a32ccbe286c16c4ede8581cb79519ca80413026172600daae33be90302047c435bb500673065023010aca1bcc4fcb59ea8ea6a7ce5f254d3424b63a50d2949a7323e691b7efdf327c7062689ee42e6aa49b8afd3c467efcd023100c3472fc48f0e113dec79a60c5a5618e93b705270e2d2622ef88d11c21be071b314da9f7766c6eaa9721d676153426ecc0302047c435bb50067306502306356d01cf31ba8e71ae839d84cae0a6bfcf67f2c0defbb73faafb048c7c71d271d764c4c341c6eccea06cbddb51e01d20231009448c6fd1b85499aea96066bf62a87fe87bbbb34587431f45951f0fe363e302e69d706d7dc58f1f11a5f57e0a12f51020302047c435bb500663064023047f69c8513b7bc56ddbedbcabb01dad15efd4071d274f263e28ebe39eead9f27ad8c9fd4a69819d342b376b13baff6a702301b69a2b4e729e200754be4eb56a66a424c5c3c55dcdc020a3148337084dffc61ad963ce60c8a72b456ab533936a8faea0302047c435bb50067306502303e694f57d2889c874a5ded722994d94160e717420fad99b645247b77dde2e5c379ba98961a28f2f1fe2b27baf2454c71023100d7311cf19c0ad0dce264e1975bb883638bdd4ca3983a9bf50668ae5e6e04308e9afdda30ddbd3f59d2c517b4756404630302047c435bb500673065023100f69df74dbd950de001c22f603984e49f16925f27ae6039c2192459a6abbd646146128c82e1d1b3fdf5cd98b04bc91a0e023059449926ac13f1bc78c945ce48de47a3e1616f7105e6d0b441e6ef1309a5fb46ea3cb8e4a782ed5eff513e2f12f5518f0302047c435bb500683066023100e7225290631fc0b8392f5da2805a7735ebe10f92b6feaa7811171d23a87f00b64e009b735b579a5574671bb507f72cd3023100c5d7376e24a820cf7910d85ea79a50cb942e968b2d81c3ee946f543f6147f29e6c07073a797ede6f3db41ccbd3ca533a0302047c435bb500673065023100d65c24b6c5176e5c2078e66d19e8b7d2fe2cadb93c6fb205cedabb227093f825fbbf4dd7c0856afef0149bb0800b0690023045a89c966062c5586c147eea268aa09178cb4316ecea450824ced640c9c8e976c524480f1ffeba99ce24da64fc3c5c150302047c435bb5006730650231008d91cc4dd2e5f60db09fc6ec8f84188ea5f6bd30bb3918aca43802ac7602529eac26095edbb1386d7a5fedd1eb61019902305b1340c9a622765468b6d9d9fefa6cca8efbd33b365bce935b0c9018aee8a36484b9de258c38ba1be11d26bc01e6e42c0302047c435bb500663064023011b3f3c8e9835d00633ea7040a1490ba33d7120a40d118b088f6cd38dec87b09a36092b29125d2a6152008053bdb72d50230627be162dceedb16f6c5b14373c792fcaa27eb205d69fe5c74e5e4f4772924b91ac798dcfe3248ddaea95626f277cdcf0302047c435bb50067306502306a41656c74195ffc12e25e79e273f6c08caeb9cbbb5acf3194ee681ff05335b85b8d4a40aeea4c7c47428bf76aa9ad63023100ad1bcaff0da90b91a7941ba099fb7655e924e74ba95a6ef919ccb7b9201d4c04492d5cefdc24fa71a431e5754f13e07e0302047c435bb500683066023100b77f72e195cdefc65d4306fe86e3c5153787893c3e37c6999ad11357b6e875469ab30ee2f9582559e8f0cc3b7102194c023100b3d50001d10aab60e54bdcc5a97fecf5075e5b6d2cce078da217e949876cd589705c00e964ee91c103ec05a02a307a120302047c435bb500673065023039de8832bd4b4d473031b979dc02bbb716e89274f8e4a3d47d28528bc2db84cd58290ed18c5cfb6293f2446eee62fc7602310097f4b6cfd6c25059c97ed802503bbf2e37dd384ab17e53baf56c9b5280e7b5ec398380b27425132447d8c0bc960293c80302047c435bb500683066023100c56b8df36ccf0eaffd6354691e36e1867d9ecee003e6b8b4434306983c20606013ee1f43937c969e20737806dff5f58d023100c081676910c4030e9e3a2273452fa1bca8958df86eefedd90c9ef05607ebe38c152d4e9750ce6597961331383878f2c30302047c435bb50067306502304196ea1f47d4fc343acb04f764c1b772699cca90803acfa6a671adec76ac8147900dd11f76791f9cfb69707701c1002e023100bdec54685e321077e4842e7974e966eff5466ecc60e149e0411bc2b788b4347bb6b708868f8f6f2df33ac46887c4c6ff0302047c435bb50067306502302a5814b77575635b503a472a9b26af77dbafbc1fe7099416e5297b46b16348d13589e04535742ffcb0b138821add6e97023100f5b98384639e096d47c506834efce7f53fbe13a760610e64f4e02a72c0fe31d08c4cd080bb121d6d6322d5a55d7773ed0302047c435bb500673065023020c3231c41786a3b086b759d71be471e0f25105bb7c0074141e6e545ef2c8cb85b27c5eadd867b90b4a9295f05d85053023100f746d3f2d9adfacab5383d05f259dcf76a023945e195f97940e78e2d37ea024ea07ed72a667cd85dc7ab5dbec4892fbf0302047c435bb500663064023028892fe360797565e51cfaa964103f750d3acc146e46fcce4e1f8922a1bc0a1a456898ff3c7135da00a59f8a9de1dfd50230206ae4de2000f9d20bd679fa04227e7319853827f909b7408d1f61ea79beae613b676658ea0c45d591526e0356c83ac80302047c435bb500673065023039b19e130aa513b1c605a086c7b6c4baacb7e011e2cde02ed9f30fbcdd32631b3191ae0788d43f407287a4a1daf6b3440231009ceab6c5ce422864e2a03809d53ed799f9e7cad4010fa47dc650a7e1c5183f5992a411ea759b7ae3e46f4f47734651560302047c435bb5006830660231009c7feae7dcfb7215fbf9bff70d2528a1fb2954dfc3f8247aff5adb9395a8215b7f658c00448d07bef211c61313779efb023100c30ace3b3776cfd7902296e4a525d4435cde49309eb9b7ddddcf7ee66e16e0697c7edf00a47ae06c7d8ba4f5d1fd218e0302047c435bb500673065023100df67dd93f21a04aba1d1867c515d15b098a062b2e622132582d937c0272aa092b9f74ff13e2e3d4c6a12c19602e3620c0230349ebe9a2057c2ac3aade904eccd1e24d7df7ec0843988c3b28291312c8e5c3f747e8233830490815b3575803e26f5010302047c435bb500673065023100e0264a46813076ce8a2bc86c0b4191355f6eddd169d1bd3fc61307ad8479b4b01af08c390d273e9d70f585043b522a4302306cb17f77eb13a21dc4820cf4de474818a555c85767be3fdb2a4e894cee55409a2af1cf3f214276c600efeab6adcd99c40302047c435bb500663064023024c22d66d8dfd09bb673ca93a86fcfd228cee6143e0fd3489d60e74e32e279694df4ddc30fc75da3c7f12b446789ae2a023004cd090ebc0689c74db80704fbf5c1792a49cf7ffcd0d5e0468f114a3fcf51c40d5138a49d2309ea10224f1bf465ecd30302047c435bb50066306402302c923317b69826435fb23954f605d89eb0582e37110d14ba083b321fc5d250485827ab292ed64ea6042e1d8b48a7802902302d378ab4c1b18823101ba77fbab5f0a89dc467ce5e1fee369399d35aa90b98510450890bb4397e202fc7d2241454e14a0302047c435bb500673065023100ce893693e2d00e31c8a0f62e8f4fa695882fc5b0fcff91ae3437711d54924945d3e6edc54b62889df7ed9a138db3199d02302f916d9c54b23357d3d77acda933dfe29b3feff0f73ce24d6b9e2d08c2fbf78ae2459c8912a1f88d8510afc538247b020302047c435bb50067306502307e29a3e5e11fa6aa861b624d09dc0def58562c642c4505c8266d4bf993d38e3b8eb3a4a07b6e3c511a164838358e2fb0023100cd0e24e7388d208e6d11c4e288b417f1b5f31a949fa61b8cfed3497a550a8018d7f27fe9e47186fb6a80e9fa02bd4dfb0302047c435bb5006830660231009b24c2cb9968ca328b6dcccce23c2f534b1e17ca6b4bccf5d94f98a0073cee78c0ee4a7d1186422dc06f3b875c28f12602310096a9b69db6eea42f342aff2f5544b37ae2687d7e2a708b6c542f893363387f9a78278238aba534edee7196a2cde5050a0302047c435bb500673065023055b5e92a7ce2beb493ca0e6154cb14c7f31eb7b896c860e15623a649d4446e5d613cf1f9612b9936b12d7a4e69ee9c78023100a756380be61d249d6c0011cb76f8e1cb7be0dc717c20160572ad3c6b812fd01833c609e679a2800fc4e8ad90480ef2cf0302047c435bb5006730650230781fb13a0a75073d2fcd025775bcc5df650c827fbb9d329814ea1976fdb2977e9d3abc510bfcee69932573e4637a8c66023100c27c71b8c87de4c33376438b61543f50269743c09f3d1b794aadd07c6191e55f1375d9c4baf2561a6382ece78565c9cd0302047c435bb50067306502305e7979fea04c94abaa69a7fb3a8db2f9fe02a0059715fe255c97f3646b4d640b22ff1eea2a672a30ed97c8974e0b52db023100aff6ce92f9c66a2e93400aa06cfc51d14397ff5ef5f4d5ee92899e619d2e469bc471b0e1b07eb6c786eb56750e620fb10302047c435bb50067306502305e2a8b5ada8c14a7c6b41453d46d9aad3f5243840330255d724ecc8937cb55ff0a7d4e2bdf288ea5e2eb2a998779c6f802310090e8452c32fce8fd6482ba4190cbbccb40719d26197c1f23d419a630f19cd73d31978c4bd05a7b74b7d0b8c60939ff490302047c435bb500673065023100dee8202bab7b4b801887414ef15b0d0f998f68db643999e69d81dbc675cd07c47f82486dfcc8730b8065bdfed1bf1223023065f20c697a24755f19f45db740f2f5c7aa50a5ff2f1f2827624cd0ee7ef56bf3664bb8ad6b57b3a3ac15f74cfd9218980302047c435bb5006730650230717441112bad275da43bec5b5cc4079c1273c22e077d85f3f2d7eab216ff3beee02f9c6443ef69b42f3c101064e13dd6023100934882515f75e34062731bf5c04908189817865a68f4ed48a8844b50db85ee7c6a5f4ea7d778cb69d0e8bfba212ca4f00302047c435bb50067306502302eca064c72c7535643514f26117b4575b3ec72a4bd60fdc3fb7d13e62267f2f305b943dbf9c6e23919d0f501e0026aa8023100e81e89bec8c529d2ced0a76d3b8c27316d7cc4a945490c7378bb078ecc18ddc4c02cc03200a2e289ba4f9cdffe70e0110302047c435bb500673065023100d3e0c616c52ae3b15bf5f696146c9b3f9ac54ab0da6fddcf8914c8fd047c6fea84937332e56f3090e1b61fbd59c2ef3e02306bdcc68fc4d06f7c02570b1ebf749efc4c504e86f83d0e0ab214cd85bc3f78a088628660acf48e4518bf645e6055e98a0302047c435bb500673065023046216c3c10ffbf4f77fcc1a34f36bf8305f5aeff3b57a2cd35530b8a047a48618f8f0b0c102fd6af0bb156bb436535b802310092bc3930868407fba6a29aef5d774939259d15192f6fda2324c88b990171c5c22914e4437c341109d571f66fbdd33fc40302047c435bb5006730650230607a38bb5069f7d0243c2c28f34832a2e6950f8065a3707094d80232392f3665c9d53cb122633dd5272b9093b0b959be0231009c6fff4ad310f966f3bda156064bea83a16621b6a5a7ac03257104d496a074cfe2e2db6c1cae37b23deb81dceb52610f0302047c435bb500673065023100d3549ad1f50cedb91b93eef58d7af33e8856a0e5203656bc58b0954867ef2193b2fb9aa708cfdaf194003cea40a23e2702306227b3165ec83298517054b372ad18fe30937c81a6cfdd629268fe0bf6e89f8face29a241d433afadee72c82ebca97580302047c435bb50066306402301a98c3372785a9594a5987bb5a76e5564d893b9229b6fbebaf36e7c0327ce645f7d590bda76ec646e85bf348e490706402302ded99ba2a2c4704297091c2c0b4bb6d949e362b74fcca9ed45b9f1795b7655afea59dc01aa192fb341ddcb1c5a7a8870302047c435bb500683066023100a4998c0c6546933e0c2c962895bdaf2848abe5ba8c9ab3229d76f481a6b5db33b9ab1e0234ce8bb2e92efa1c474bdcf302310097b512e365dd41e7763fdc75e99fee8f89c0af40b69cf9962846ad7614f1164f1f4246e461e239e0a9a8446d2ad8c0d60302047c435bb5006730650231009efe46c3a77e7d131857f03af2896fc3aed8449e8710f3ab9d8b9c525c493bba084a8a771aa363d4f264ca3045ed92680230130852b6d367566b51bf190e1997408d9b0cfc622884534ab70e167ee51845867b94e5668e268e114ac38376ba5457980302047c435bb500663064023047c892295878aa35b64b030aefe56e52b77c9a988b06d86be8ecb22f0275c1f1c9095d79a6b3a02476f089880f50aae602303dbabd3d10513a1c109c5d0284f400c7fd2d9ae96141ad07f491e465bb94356ef4b3b9456043b8d905754b7ae26f996e0302047c435bb50067306502310097309267f5ae9c39a7c6949e58b206a941c436454efbabe94bf27e9dd4c851e3255f0b0dba5a8005d39a4bd3e77b2e72023013705952b725b55afbae9409296839ff8973b96481ab87723be267188f754ae7d9bad3a66597e924285b18ae6407845f0302047c435bb500663064023046bd2244362787a22f5d87f958d69aeb93c6cc260f661b4c8bffa2cff8493aed93e252151e0babba8c2fe614b5fcb15d02306d1c0554988ad3fd7d1ef311da27550782fc20af761140066005f59eee49a98dd705761cfc7e4ff72c653174dbe04a930302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f6b10c39af8241740789a4a41ce01d47462a7f8943f9370db08c2484cabbfe3d2f27bebb6865089315d3c071eb67ac3902310097208d0245e411712933ff702c979def5700371452d5a00e1f4981017395007e1cc548dfb02fe2195a0c5a16583c160e0302047c435bb500663064023038b62c6615dd049d329e6871f99ebf37903b4c3667e980ada27d0976577671520f9ad4f61662ecab9fa983f55273832502305399d0e91d1dd416c95081043a04520f4fb9af60f8b5596c04822ba7f98b0bfb517b943ad0ce9209fce411175c3b9ca70302047c435bb500673065023100f4b87efc4ce85d0e5b0a50e159b6acd299c4852d4a0f33f03fa63c9cadd20a4d181f2a09e6f88dd3f5c131c651e17b3e02305c04b5dedebe2e85015fff376a1b9e00dfc30923124c10b2fe4e7fd6d151939ffe89d2971ab5e7c82fa91930f3504dc80302047c435bb50067306502303833b020dd8c2ad92733bddc9e7174ad9c050b28005a3e66f6398c88e45f88427e2a43c69c6329c9f081f08748290980023100a497f90dba07b8af0c6b781b8ba617570076a5579ef8cfa43a9ca4791e1379ae84b4a43af09d3f34484e7d22eb4f37b20302047c435bb50066306402301793a630e5f2b6381014e16a2c70e736afde5dc3d9888577a39491521714d3c231b622f2c8f9109b5d3cb6127917f23d023038b27523e4b544cf2543f02faf63bccdbfc8ce78458222075f5efc4eb6f873a782ffc3cc8faa5b533753ece3926166070302047c435bb5006630640230282446b67e1de6465b60f2f0ecebf57c52234c7f4119b75ff500db17f69b017048c6bc526cd6b4eab9fb21e74d4f9444023051a81624a7de703c2b6f0f18af5f19f041be2d86b687a9ce5940617a9ae9db251f715d43a1edaec7465d47ba90419fb40302047c435bb50066306402304e12fbb211aeee6136d837ae54c14a898a9c877984409e7785ed59191e2b1fc7ea63c600868234ea3693b034450510d402305ca65c667dfbdd0cfc550ec3e713a4b475c2b98e4b841649dc0c203e4c0ed0c583955ba85fd19b5d641f52fe9c86cc0a0302047c435bb50067306502310096a36093d673ecf377906c73c1758d5ebe2d5596586fa7f9546df5b799a31043c2e68a5068221d02a859a9da399eb2d302303e37a4c7cee1894f08b723318c3d4b8ce5361ff7bd3c89ecef066d733fe480866d69154a8c5732c3af7b25601b55ef5b0302047c435bb500673065023100b7c39e5253102a023be225c327199686996947af6f633542e3aaeaf89a089a4cc8b1e110e218e24affbb094fd506369402301a184a565670f9fe5a3fb6a62f99f3da31a167e08888b226b4cf9afad5915a21e6acd27bd1d6ad517e2ad33eef088d1f0302047c435bb50067306502305e45027743f217e516e8beca6a30bb5d75e4c5486ae31664f9ae90e1f158e7586db17ddf5c02d96d1f10b657f28479c8023100f0cc2fe2e8a695f812de5f359a50f69dd11fb4ea852c06ff1ec8f625f7e246c79de70917560ea8e7b56e1cc801eb40ee0302047c435bb500663064023020ad8de5590a5377a3299c7b22d386ca657ce52151f8d597d24b64d8ca031bb1e6a2dbb7607e0ec83c61865a230416d30230346f8b63d212ef9825717985725718d994e2e04d2358010d0b60291a65c887a7ccfdc9fe45f1a5661dddad7579cc246f0302047c435bb500673065023100ad5c7b409c3d6a7362cb97fd3484b34996fa615e559df29dd808a2753f9ab5492af6bef8901a17722b25961c9c02babe02301c0c813b57bf8ef19c782fe1efb6fb1711ec64d0b02631f7695f48a7d4cc4f714f61ad06aa341bc5ef6ccde9d6a69e9b0302047c435bb50068306602310099efff47f156d730f488bcf462a953a46dda591b6d7ac028283d68e15da8008c0a1e1432b8a1d7df173f912875c36b1c023100bf3a09d2b49114e4da1deee71d6d7b51dc821ad8a9b86a0de7f063e4b02ea09ce1bb4a87a1fd76beb9382308f9a300500302047c435bb500663064023038b7c800cbfe934b9089d8dd01ff3251b629b83f3e036defe99d9034b1340f181f538a9944a9a3ac322ba71f017c48b5023028838966a4992ee5188ac2a2d7500a9d11450d563600468a7f71e310723ebafad7f9f3d1599f8d6004bbf703e2aa10460302047c435bb50067306502302061246ce066e987b46ca91559a7a17e6ec0af73b2d0625463f8ef1f10ec8b7004d2917c324d9031d4ff16ee256b9be8023100cda1ad3af62a3a91949170b9aecf5d2887ad74ec12bad804016dddbc27b5ddee1861ec0a9db1bc0020c9ecc2468579d50302047c435bb500673065023005dea3e97ccb361d64c3a68d90f75828835f6c303698b354f22457bf41928fcaa2c3e95e61b851658335b9217b3f022b023100d5ec587e1faf5f03cdd49e41449106c90569bcdce427490cfff8f94d6568d329e201d2c7c24e335c5e66f915d011f0c90302047c435bb50068306602310099fcb2f5de26487655436478bb7dd5b2bd21ff2d89eec7d11fc3bf84fa29614e8ccad582b31c420abc3b60ff410e1828023100df8d840d4fb14f5b41a1a3a89032d9c0282fd62d510ee6d612c4f064808df97aaafe7ec6c195397ae3d7af6ca6d9741f0302047c435bb500663064023032cf5fb21067c29b22b5153e069e65ccb011e6258d717d3cc053cbc93c9354ca1e7bba4f7c79b68c30fc7b1364aec11102303ff4d023c47d67bc9b496972d9dfc003761fd0b116f864f7c7d7d3e86c5ecdf4739bc5ca0fa5edba14d7037ab3c62de00302047c435bb5006830660231008a0d036cae0af2f0ed5a0eba7d703bccaa7df1fcfa98e09024801346e208a680e9318dc273ad423e9655867e020f6b49023100d3e3e958932d5095e0cf028b026170da8f9e511bc35d2ec27ab9cb62ec3ed3e07959c3c2f534fc4ded1ecdc9d732921f0302047c435bb50066306402302db49fbc970d081e8bc1ab803b541f651b6c36324b83860c8818df92b33e2854be613daffa4768a7f89fe4fa4c39559f02301d6ceb05516c605df7405a76df64766a12c090675bada60a11f7cbc21b6c036791f23a05c67ebb8c22f95ac9e44a9e8d0302047c435bb500683066023100870be219d35e52e0191c4f56607eef3eef3bcc093b35fa1247f148b98a193234b415d1a7640d2ccb1f3f5a1534b1582f023100eede328c7ecf5029530187dc1d2df13401bb67be8cc200fcccd2aeb86b397a5215eca3be18413cf91783abb8f4829df30302047c435bb500673065023100d4a2387c42363c39b05ba882700a266f1ecb250509ef83fd1f43d5cb7f124fe87aec57bf249f129537144a36915b876e02306684ae35b1c8f97dadb57c4a34a768fb6c808ec651e63f01d5934c9e7c2426cac320a40e6292f7612394708a39fbceed0302047c435bb50068306602310094dea1b64c8aa7337211477e4f5caeb194ad6b632da4bc34c53d01a798403f3db51d170ed3ef4cfbba02ec4e418c7d75023100f301d0c7c8ce50880c456b02f7c867a35c5f243fb23f06d7a6eb5051dd654b5ddddf81ebbc2f6e32dad9720894a849480302047c435bb500683066023100a88b452c4a743af8cb587c2f37c4577320f49f110b150bfbc0e8d7ea1a087483a2877b417618012d3dbd5c1c22bb63b3023100b7dd287f33ee4a9d8d1e6071efbc1ae2b0461249f4f69b4b25d78a085dd4b6be824f041a28f07f13e85ec7f4d361ff2a0302047c435bb50067306502303c9f7c9791973620c023bc80b8a1bec6e8d38e4b7dcba1db5765bdf718f1260970d9aad12349b99a9b46bcdae1f5c587023100c593b905b79373f78cf8c93e5cbd5cbd8d1cd781289ef7351c700fbf339831db0d352e49db6a7ca7c923e0d031ed58ae0302047c435bb500663064023048864c67001947a98688c933f0cb77b837bb7e08ecde625cf8eee80cc9d71a21df4fce45e4df754fd07cdef8fbd3d12602301dee8e4de21f4b7ffb8f8cf250e6562913d865b489f25eb4c3118f1c49a23348e85dd671a51cebdc5fa1eb9c98cd182c0302047c435bb500683066023100b69a1252bbbdf6f11c9e4bd590a9b8e7fb5f8074e1c4cb28877b5e77f6b4385a6c9183c5164a4af99232f4e1d3c28e00023100b385d4849880de96420f341f5f3335e6b8f917b1e36c9b192cca5d7ced09ceb0c9b50bc22091e6d317953342142d97e20302047c435bb500683066023100f3a7ff921f7503ccae59387f573714f26bd318d788e5b62c9f7925efc05342a804ab1cc170b8823d0375c088276f7af4023100bfc7c379cfcd8359fd2d0510572a27ffd9f3dba31cc92b55b2b0d59829b65e0aa95c6a776fac9815071f1dd5ace1a36d0302047c435bb500673065023100d6181668323e86e2c1a7bc6e637ea3adf994f89b0bd7565223b93911ee7730b44c73be920bb6fae5a38b79dca92609ca0230499b411aeaa4e2a9cfa7b47d69216dcf12b8a2f57e1a0840c62eb2caa517e7d2b91b68937643693ad6b912b0b66fd6d40302047c435bb500673065023100bcc9aabe52d2f3fd6ea5d5032121b070d6ac62a475d1c09c12d7cb211830121963606d46c2a9d47cdfebb66cae151bcc0230595fbaa10c9a67bfb8aa5a8e3eba14840f11bddf7bb6604e0b053baf8e083947c35efd4e61096afc87b223c3bfb77b860302047c435bb500673065023025719183881228e758e7a7f75a41ac7f86797671ae88a233abc6f23c1d17f25348bf97c739dcbb5e79048b843a123cde023100f75c54ef862cd795c635a1d8551a1e5533aef92329d30a1e06d32d5a8afe3e35f414687a87282b6adcde679a43b03e040302047c435bb50066306402307ba12c3566a89b14f96f91d59a5ca4ac3e071fd4f7d86998ca88af1a24b86f9dd0ab29c40b6c34363968974d0b260fd302306896afcb95014e83d173b31b12204a79ddc7135ece9f6728cfbee32e8cd5f28d20f78937f57566b647351faf46de57010302047c435bb50067306502303c2831ad77e0291b82ac03ef3fb39cc14d98ed869e0dec35757fa8d9a52e285d466f451c56edfb1b841aff8b8f60e0290231008f36f27ac7f0d1b4d3415a7a200a39284cfb424d3c5072df3ea6f134cf3be5739ee936c6bec08294df6edf6c727e2e440302047c435bb50067306502301feceb585794d1ea1f23e3f2972a5c28db8b1498f89b9d0651e055292b4f4ce052ebb83256eb1d4ad9fac6d5998ff362023100816d10787e217f9aed6a84a0c5679cfd3e6666ea87567616abc9ec3131adc76a8f38a65c56717ae6d9140cda6e9b16660302047c435bb5006730650230655ce7d6497f2e50d897d86cfaf03fbe29ea877cda6722f705b143d5082048d0c843a218eb2957704ea60bf58db40fd9023100f81111efa85eaa14b5272766171cd44417c2e871101e80b53fd1080a9ea7a5ec6f0a54e446fe79d6c6f0c2a078901beb0302047c435bb500683066023100b4687e340ef95181057c3c8f73bab540ca3898edaa1738090c93bb030bf9224f6eb653d8b64da0d674f27fc5dcd057620231009ffce302e56eaf9583b08b347e21192bd5552a9564b500cbb6e6e322e81b66e97a158ee22dcc938d02d20112458395650302047c435bb50066306402303cb92dd3450b364b087195b7bf0f10eac2b92dd049531776cef9bcfb55b3fa9a48054567748a9eba86d6d0776088b22002304719e213db5d38f9897015fe5950f0dc5b9babbc0d369ee5278bc51e8d922ac5322ba6c4e6a05eb8c8028e08bb2900960302047c435bb500673065023038f2ad01bc0f1ba7314e954628b6efe7c1d9917a804053dff67ff7d7216121fa2c3966a2598a6b3162f5f8cea34c0e40023100fbbe810ff6084ebe04e0b59a45870f4c32bb83980cad2bde2221f90cbaeecf2165abb88adb8b6fce05586b3f4ee425e50302047c435bb50067306502305ea6bc2cea4358bcc96fe80d6b06231896f390908211ca90f98d0973ce6f741d7c3024ca670ab896c12769a7838383d5023100ddfeb5621db7da8296b5cc0fab1b421312ead110ef72336a32ebe144623da790acf92f5b8df2818451f5ae5e26f853390302047c435bb5006730650230609079f15b8feea807b758d9920b16b9e1d7c817216aab341387206bfde14e8577f7258398406cbf4dcffde9669a81ab023100eb3016d3e4b845bbdfda492ad59578fafb5f95abce28a1935a0d1a09a7615e2226bc92c8ce298aa0cc83a082c34348bc0302047c435bb500673065023100d9ca02f2779722cbb664dadf42e2c4edaf15b8d74d422afe12b4af8555824e459f4dbc2869bebace7731f885ca923b3802306f42ed62d8d904a22e214ed0fefac236aaebfd49b5cc8ed47215f9c1a415b2a2d903a5338ce5b4a5b7c67c1da25f66880302047c435bb500673065023100ee40d28f78d1808c4f7386b34d8dda20226ed65d2e2c158c5b4d162903ad6130d22e2e787dd51584b79579145e574bc3023013885ed43c005a5aab9f5cfa6ab2e1c48b307c776edb6e44fc829eeecf6b2d759c9dafd453152ddfc5d11c74e70be1650302047c435bb50066306402304fc8ab6d5e62061c44771296546e0602a25a445f7686f08906f6a4efcf600e20c95b591e9ea36e7d5768e0ab2b362838023076e0c2dff641d0558064f4f9f60765f496164ad097c7c0f014295b592a44122fa609b9c545f04bfbb3147ea73388d4550302047c435bb500663064023034357131f550136cf444a8f9b03cc6f5c380d187c9fadc9625c7e824bc33746d4741b2413dd44a830908aeddc990713e02305de55e924549b15c09902585afe00d298838b67c7bfd1cec524d290d0913f6fd097f55b6b4640dc21a35c2e77368b85b0302047c435bb500683066023100c9ebd0798cdea397391479d5fd288151ab7ae744467afbf264658832274d001f937e66a26b526ac8402005c1bb9f22940231008089eb131e32feb72dc71420aefe06757900f4285b7430c56bf036133d1192090ac1c98f5e8065633c5e80412c3fb8d20302047c435bb500663064023025480fc8cd8c22a244ced341066e009f530b0396d84df03662f2b7ee669e2427e5e9ad4f2dea160c471ebf09d9727d8902303f0bee5a8014a7d5688e6dc868e9b9a373b9664146a23fd22ce327dff804f4c7e362ba3a8634a36d95a0372bd1c767da0302047c435bb500683066023100871e73ceb50049256f4a78cbc39afd1190b9abc8a7da294fea6491b212a9ea62cff24adc7d9fd34c949f428619d63ca6023100d30b3ab10e1cf5c26f9c555af53481d8f2e77cc07d40bc998c13abae974f8ffeae32dc89d081eedd11ec6c336809963d0302047c435bb50068306602310099eacbba97b77cbeaad5ebfa5403bc26e5bdb2122e7c43d591dd27f1412c7b91e7f04ccd645a6b916c4ef65f9b8c8ea6023100f6fed3f26a0688e8330ce96b849a2029bb4075c05c00f552dccb9f080c93f03af62c81ebb25c047da25c710219e37ad60302047c435bb50066306402300ad48be017e5b40611912f191398e1ca6e48fcb95ed346b8a7e4683940b859fcb73ba3b00484f974f76e8c2760955be50230289d083c03b2ae1aa3ad1a6d0b996338ba94e3a2c57781d71f596f7dd38706e1be942edc2587af6dff47ef9e53b943e40302047c435bb50066306402305caade848a26268919ac6e37c2e62f64e03b044644e7868bbd864bf0de50f4879dcdf3c3cea5fa9561128ee1194df7fc0230181e5ad86ce06e81eb975fb4d40930093873504e82624931e2e5032679eb5bb8fc3939d140b8cf446e1fb58f3e79eec90302047c435bb5006630640230527105e4f2f3a457adf94fb571197b4bf41d76d4ecb5db2ad86cfd517e0bc158713bf07b6050b07e869a7d6295e374f302306e794190a2ca128dc0dd4c53478ae4e8228a9513424784cb5378dc8cf3bfd68fe20ee6f3a0d31296ede2906edd4c064f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301d905530b661e25ccc8d565ff438925d97ee001678bf548b76f600362cfe05d3a4300e2966c39ffc8845e4f86b7af4ed023003d84f7d3cdd138ff4d64d3e66b6e91a512b68dacc4e449c8396f1064872259f361c5a156cb9bc9b175787ba5f8c5f9e0302047c435bb50067306502305161fb5d261ae4601c1bf6999d1ea7564e2488549971d587f08ac80a6cf3312b88ccd3a24315ae444576258859535739023100a88b2a97cf15154c0cb36ebbbb451b6ac0324e607c1e2e7dff65b9f2c16aaa2a6416ef31014a625b13c418e222e235590302047c435bb500673065023100b0d8a929337f81bf3f2d7be1bc5ce12f607c5260f48fc0a00c9b97a9756a699f0eacf2529377f8fef5d99210478456620230592216c4b49bece4764ffaad8bf7511b3ec9fd7a32d6a4f2ecf1108683c9ceaa10408411a03b0187e426b9479e8146750302047c435bb500673065023100953134dd8d2df4dcc8093cf044d45dc739895c4557095c5d0efc254d8927cc74430dc11d7e0762d4da2c4cbea5fdf675023031141a616408a79e29cf25188f79fd1238bb51485f779a6e329085c9af0aa6448efe73b3fa756e11e7117a9d7578f43b0302047c435bb5006730650230440fb8f8d4f1fd08706ceefddd90a21aceea10be96c150cf4fd793de49e2c4e7c0840fc232e5faa5b3a8dc1357417e03023100ac6be799c0c2c249158df0ad0a165895be5d60c2b6e05663c8ec04c3b1d7bf7b217e55f099dc3c211f3b2099ed0a9c2a0302047c435bb50066306402303cd8059af7e171ad92790881cb36b66a5e2c24d914a4a325660b3e707e9d6cca028da232382d50dd79299e772cc22c0202304e73149713f3fbd2cacb51b2aacc248e4591fa6656892a65b6892fc034984d198d1013291e066fb7f3023a02f16286230302047c435bb50067306502302667dd5ef5ca984577c4047c8a6fe55fa62b3de435a3054ff945a1b78c16302690f423870433ab76db3c353d69800d7f023100ec9cc098665a237204663468ec98bc8770cc64f1c75e945db463507bd5ed587cdf4e278a9c2c27364fbf4675f1d204750302047c435bb500673065023100fabad9828baa3b00ad8b2e69bd902e39ebf8226cd9ec6e7cb46475b5115f3760d63ecce2788039908a05ad875f434caf023047cbf02d58fd463dc3a9ded58ed114c3651526ae43b043c67b9f9a7dfc1f377d729393466dfcaa1cac09fa53a9e5bd3f0302047c435bb500683066023100979ef4346abe4dc0c48897f8c6caa1b794229168093ea2fbed3a40b8e91e042d0661a9cd15c2c1dcb27f7ce73c92d538023100b2df944de95d6a6add2a7cf14c88bcce24f53b52698bc52bc6aa6878817866d42fb8ce0e2a05ca77e10d114f7b66be520302047c435bb500683066023100cd40601b1543434a9a75e58d39228d30f1cef4380b9a7c1f076d089a6f9d8aa8f24de53db9725a2fcf55d59b49ad613c023100a51e3ced520e22537eb85b4601f5d7c845d6cb591db2d793f437a09dc597defbd21bf8a92f685661f51918ea3bf89a290302047c435bb500683066023100b8b7f40262fb4233b4b2e9edd63e2f0d955db5d3af3d5b66e030ae81ece6579435f5e84a139fdb1061cee503faa0f8c10231008985997cd97bf59810984ed658ac343d9d013d6dcc7e1927bd442a1e627fba739b8310a77caca75f7d8c8df0808f4dd30302047c435bb50067306502301fff3170a1fb22d564650c1bed597f11fd068c3ca7c45f3a2311cef4367c6d32e7be4611a744073ce82370338b6649e502310088e988bd1d26c55c3bda294a265893bd54a160fab942904b6318024b57a2886ad5cbf461a18f6a11fe017b06595da5800302047c435bb500673065023100c23cc16ac351657669f37dada61e7791085d0d7e0ad59fd9d1c718b28650542d4217f4f116e457c193f1295c341793a102306c64c7e31c6b78a42ae46a88faa38237b18b5242257e077985bf2b3b68cf1dcdb29bba5a8e884624a819f32e037b0b4e0302047c435bb5006730650230734ccb3c2653deb8fd7450d8199b620ae4b1c04cb30a04d38cff3714a55a624d740dc0f40d79a3f7945f0ae5ece50021023100cae020252e76dfc4bc0f1ebd0cb76372f4ad18d4c925634b72fbf6a579aa56f4174fb0b0bf271600050d0bdfb1d0cc220302047c435bb500683066023100b19e54e2654ef84c020a4c886b17bc7c8d267a3bb64fe266c627e0529b3287b0680a9a212a35fefc883bf02670e9d1c5023100b8449f777c64d9e877cb49bc9107129339d2391fdbaca85d5bfe603c0b83f95e6949fb0e1c82f9fca121e0c055f8ba0a0302047c435bb5006630640230012696319a5589fd8199d87faa48c090c0ec4ddbcc0cabe6a99a1a225d3fe9c5e7a060cb3b05c8b842b255820648b0e2023020b2d2b37e830dd2b7ab3649e8e893cc369d6472f36fb2aba86225c052d479e16194c5f04abeb899e3eaf2940b45807f0302047c435bb50068306602310097d57c7b6123732f61b13bb60e1d72b35ba9e71e52f44358272b674bda3902e06f75083f45008fe8bbfa7f46156da14a023100be6ec92b7746e44f670a1b38d1487a1bb6b29922b71992724afaaf7ce625e20ef2bdc176642e2130a34c24b72d1d9eb90302047c435bb50067306502301cd5762ddecb19fae3d7812821e6ac3f2af46ce65a86cd195316da294b20024a8db1360b4a570693f7d4cbed0401d1b2023100c958c39203cfb823f7eae3614a72b2efb2ec96283221edb2ec6fe0e748fcb18611e0d85c1e86742a87361162d975a5160302047c435bb500673065023100c9a262c5256405b8ea08c9ba237440ba71f4780251d5d65a2a3851333df89da502eaef782974eefca3728837f77e8035023046e061dbdbb7622f8803166523ae5db0c332a6cd43b29aa2e2e6fa26e71fe8a66e91a613cd9d3666ff4e14a09c0bf32d0302047c435bb500673065023100d1892b03f4517911c6e9a56b129b297ec529165edc7bb046a278c68ffb67647b666bd950f381eb0e222e218f8c682296023021dd125906f6536e647b23faaea6a5c9a2ecdd0f5964de99a23f71bcb75ef1c3b4f5ebdd04c3ddb01a71ee7404aefad40302047c435bb5006830660231008246f46778c55ab23aec8eb75a269856152970ae82e4ba33cd8021250ff0a61f2fa3438ac713e72cfe58f3acdc5adc8d02310089b5aafb6a98673a93a73ee4210f5c7cd69972b1d11c1cad2f3ff917a77d49e6b1c61a0474cf9dd50bc9ae7d21a0479e0302047c435bb500673065023100fc1e81ca1f7d94b04a040b30478d496391d2899aafc4176bd77bc74569c521e1270ed310fe7e8ee137aa2e27cc93672d02300955291290846ab59bb9b0fdd85afb61bbdc41b1218227b6b1bc43be4bb42b55050d5fcebb61e735b779612d239f5d760302047c435bb500663064023044666ca4336408eb6192d3f622b5cfbb15cc4d5a7affb7fdb777962b0563f1082f9624a0a4559332b573d29e1e3ff8ef02303e93a2e8cf879611da1b3024941d0902fb696fb7cdc05e0011e74a60cb00efc5b744b149b2c81abc1aed9323cf1446ab0302047c435bb500673065023100ef43714d9a81e5d6f5825a3d0efe9e7667cb66ef83684f53f0ed6d2466650e421dd7f301764dee4def397bf2b219bcab023026ac8ddafcfcc58d44a95c9cae9346a07461a784e325155207d61b0d07f5166e57331745b62e51fd6815a317578f2d7b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e6e9c80b9f31a2e74b67734343ac6dab70356cd1b139bcaaef5b95e7a740952072b7728e1da9cd34d97e4fc643a8fa48023100a26c189b8d9f385177edb36a7eebdd20a0013152f9f4a5c1cb89b4628424ce7f124d398093a001341b0b53b67d9057d60302047c435bb50066306402307ff9bdbf4007d6ce2012fe868b89c84468cd65e03aa8f86db894f1624e63e2dcb2f0bc556be85163cfbc6c8d8f5505ee023063b7c6b44e8bb1974913d4187bf7449bab7180d9df73a6d46150da3b4dd78b1419c1dcd6077815b41c2f7a0eec5208490302047c435bb50067306502304b1a430c6057149753c359d735fe4b762538868fd65c0c33083c5d4a053116b8dc331a038c3f1b2198919440d31978d9023100ced80fc5448f2c6111a88beff95da08386052e8b5e919f4cbb61dc931718d733268eb4a55d1947da3638bbc2d6a1796f0302047c435bb5006830660231008be9f40f366e17f0b1898abf770ec488c83fb956713737385fed6b77dce7a98583533f9abfbf3da70a6da8c8cf5b7b68023100cf3c89eac46d04a7255bd33cb42c2fb685e6ee95e27ff0d7118f08d3f16829b25e85f41edad3c0811b8b1dade963e6cd0302047c435bb50066306402300fd458e3a3700d514b68afc3147a3591555b724b7f1c15d245516912196b0b94db5ebc6949916cf03c319249ef93f47b0230508c4121ce0fcbd554fad484fe5460cda9c6385d91996897518931723ba29c87d085cf7129360ff440f960ee149721820302047c435bb500673065023100825599ec93e199e0a925f0eb7019a0be62e5b9f6955f7b86de6b13958a1b0e629c362e1161253b561324441cc9c48b7f0230581004d722d7287f6d72c60d0a4c410d436366b73d2b43dc2e2dbfea1670471a0695efa13124f25bef6f7afc42b615990302047c435bb500683066023100a258ab793adf06327839f14105a4adfe7207ff655e9e4e388faaf459ee1ed665a17a8e8c2af4103edb33e23e4d85a90d023100a6641faca676e1ebe56f54cf5a3ecd7b9a7929d86b0f2ba4edae4d24ae103cbb32a92beeea07362a65f965a2289e294f0302047c435bb5006830660231009cb6125f49def611b39db742d3268f86e39a75f0d4937c8d176bae3d20be499e0dac84f5d4a0df462ee76975a9260f0b023100d6be53b1d507e755f0286e1a3fff0bef291a6e8469d368789daa8134c63ef6c1e08d524d1c5c8fa20ca068ee642035940302047c435bb50067306502303534206b08e44ba593730494845fb83cd9116f94c958c5a3a42b19d709dc785525847da415dbdd4241a163bd09543872023100a24b49595501b0eb1bc17f1cf352ada9edc988fb7681d5652d7213c9d692f303c9bc71e3454ea23fd0d754c2145ad0850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e2924ec05df15d2e04268ff6a1e2d8d8a383bc370afa41d383da5fddded6c2badb10a8ce7bff8b6c2e23d12e021470b502306e3693229c05d6ccc6ec1e95b351fd290a69d3e894a2a0139605ceb20b0c21366723d74d0ede49ded1adb96eec33324e0302047c435bb5006730650230375c2bb2c3556e5d09c467214a6c75c7e4b8f5e25adb82a464904088a025c9c039f0a0660a67f9baf712e39963730a9f023100ea1c9c96b3e969abcc0b10a0ee69b57293deb66c49175d360f3ac39d89f2301e7ccc4b632ea011c39957c21b7836b84c0302047c435bb50067306502305a7735eddd201417127143387c29575d6e712ef2b616264d2d12e0dd8c44569c821d22a7cd41a176b5634e197ed98e5e02310084c0b02cf357e2bde8880eee19a91c47290830733559b7b750b957198547cb3a6b373c8e82bc9adfc6ba5b7929a443ce0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303358ecf1733c3e28bb3f1116df9273bbc1b468f7333f98569cb5ad580bfe1721f8bc408500b2c8ddf7a2f2d37057d97d0231008813001bb01ae71c1d72b5ad0f8a16760f71700fcfdaaf8b9eeb62e28c612a4607fb7d69d39ff8bde0a51d48e0a46f970302047c435bb5006730650230725802f8d9e1c218a356b9cc5958d95dc5afd2ec81f8cd15a86eefea4fb23d8a950b8d671d5941bc52416cb0be31da06023100935345fddd5f5e508cc5401a83486a9d7b8bf8838bb7d4fd5fa9883ab9c0841e9f8e728d6ece829704c6903faf822a700302047c435bb500673065023100c3ec5b6cf2f4bb1886fcd462f23ef879942d9450236461cdd382faa266ea883fcbd36632cabdc8eb5a7e584853e33f2602307c5840e922ffaf3b3043ab86024c52671f557b37a55af171fb552c41080972252c87d12be7776586b5e7e612921b20fc0302047c435bb50066306402301ece266eb91840b80a12ed3cab7294fcbe077ed393e96a155dc8c1cfd20ff4e0bdc2f37cdc45b3e96b3f3880d2e549e902302a73986b0f2f745cd1d5af82e418f287d1ecc2b13598bf7e28039e2d1afac9937a5f2955f47ed55ce7ff56100e7a9f8f0302047c435bb500673065023100d8ec44fffa4b8f1912466a4493771602702198582ee1452265b54edd4c31852f0a4818a34b6533e5a88af690278abe33023021f24c2c0fd3ee096153554ca081d4ff399b9ecb0584adb4bd40dd147238692d2c371abdf752f0175ccce1267664b3ab0302047c435bb50068306602310090cae5c6ed29e1fd5cd7f36a49d0c878d5cea40b39752dd34d7abbac74f5efc7ca1cb1c209dddb317e2740cc774e753f023100e261841c8b4aaa8a782b6cb6ea85199de5916660d4e74f77998c03b0101f6b1514eec6673cb5ab7712f5bc2d6a8a1b8c0302047c435bb50067306502304229ffe54aca9f6d50a208b143a7b5f6eb9db1787873199a735a8033cc786533be3268fd17d3da3ed7a314fa696ff366023100fced2426b7c823214d2b8d768b25c0a3014d0cb745bb871a458b2698a4bcc620994ef98396d8e7fb0254afa2ed702c280302047c435bb50067306502303ec6e6495d882fe9250192c35f5a6961c7892d959f5136e7a37bf98d631f66b8de1d0380d9cf1a2a3d9d789c2c96de5c023100aae1f3c1f14ee3890b52c9bccb50a2b2c777e12284c416363f96ca6b35f7611705e9fb9f21dd0bda52a6bf932288c1050302047c435bb5006630640230412a9819d0328f39283b4c687ad7fa582cd169da1f3ad71187350003ba887ad65790d4b45ecd24c02555313267548658023028801416af5ed68a0fd7ebff033511eceecb9380ebb32acd9e82827807e5b13a5a8b3542c9f61ffb270165a9374680fd0302047c435bb500673065023100b4a219fdb7ac9d2e6dac805ba22aec92bf1fd24a837022b12f10fab89350f2f133f86a6da2c866cb4b68e1d08c106a5702305f357efb9e3f32bbbdcce114844808e9afb53a33195c40716c8e407ce2abdc6e6cff28d176fbc8ad4dcfcb693b1c01e00302047c435bb50067306502305bca07e9a68200de4483568d96ed1558e2ab1df3d772549ce1c4686547a9989b6f5075581884eaf307f2d738161216030231008bce9214826af2849b4862aad877fe76eb5df2ad6099780c53d0826068339cf12aeadc9553f857eec5b55801c65a83060302047c435bb500683066023100d83b8702b4123bc614096a3d582772d7fae38c9cbc978d046cc3027e5a77b55680c437adf95bab1be42b548d9d3d24250231008f2930ab6f1ff8c81fcb2bdf37f42c6c7d616294e9ade8cda1c6281cebcb055bf6e1e656f7a520bbd00cfc2c41778acb0302047c435bb500683066023100cbac0e17fc79ef42a7ac00511e3a5758e09efbb99d0bcec3ca9b16f7dfc24d705c10a5c5b01ea33e10b3dbc05c90d9c80231008b0dbdf3cb055df0727b3e2969fdc2e9978aa4504b292b12d3f91b02d91bc44596e0d69d2fbd9c6969793372234408450302047c435bb500683066023100b9de37f6dde25295bccebf6bf3800cf8eac2adf349d760c4bec26ee9bbce9fea536238da784ce34fdc8b8b584253af46023100979292b8a46075ff5ca1df259454dedf6be4aaf1aaa19571e3a77ab738aeaa9a9d4d5f40bd275527ac27b3fb7b8870ba0302047c435bb500673065023100a11d72ff721c308010b2b7affcb42a805291fa52efe66eac7e6974d7ccd1442e20c589205c52dc90f8caf86011c0395a023031a194072d97acb5928943ff6233e3fc08d76a7fbff9cf31d8a789499fd6a9b6ee082868f6105eace516a79a60ea7c940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230457a337e4a205f59d02727689a97df9d81fe000ad4c5e4a7692b3476c7ec27b0d121b4b00167fe41badf5f82ecd89e53023100a1a95702c30a38a5c1e95f6db4bd7dfc2bbfe96a3851f209b47995e6708b612063da3e34b62bb5af65458921bad1d3180302047c435bb5006730650230786ae5ccf0ec564cf549c96b7054b53447b804bac8931aba49edef22273e88a9fe9e66539dc22478b8761f9b874abe6f023100ed0948cb208029398d054f1b2e78488511e448021b8651739d627dd0e4719bac1a5d8d9f298b575f5cf54e084a7d07b70302047c435bb50067306502302f1b9ffb4bc04d7e6c2aed985ee61eac035b75fd6dde15de2568775593285b6916be3af38afa830f681fcd106773a3fc023100b9c10bf1d37fb676efe82102d89acf80ba88defd080784877053382afb4a2ca3b2edd320cb83a1c4549b6502326b84590302047c435bb500673065023100d5a275b13e58a6a261da6f64fb2e42e97b098fcf7eb45469b2c19150cbe1076215ae6b8a1846917b2f133c552703e5cd02300f173bc76ca9cd1ccb859ad290ead760d338d396506fac66d9940f703879a3e94919f14cd86abaeeaf271fd5563194f30302047c435bb500663064023066b3d2a0adbf5a4f6de6cf9112fe3352219dfd150c1c6761ea1bf7c225e0db759f7e58960165ee7356d5a80aba2978490230798924eecff23d257d2a2a8fd3a2cedd49b93bcebaafd81f5a7c78c644a65049218ffc41dc8a49b140464341fccfc8910302047c435bb500683066023100b7be04cfd8c7a22a7463e11172d162b653aac87976e326e715174bee42b0782ab5ab45214c92900c531c3e52ba153f45023100c5b19a2d2617029bd0ba333515f7442b2e6f3cf4f330ca677a671f61bc3a4ef4bdb60a9079751a29b2e4d2a162be49470302047c435bb500683066023100ac06eaf1e1b5f95f425d5f72596b6ae0264fca4e051b1eb4bf86473338cc27c3d9737763c706cf3ae8f194dfe30b01f8023100b94d7e0bacc260eaffc782890d908a876d2d9163db50e52121270a907964a657943635b24246be3c5d2ca7b679141f0a0302047c435bb500683066023100a4f8eac8eedacb23e150462ba1618ff6a19dc150433cda2b24ecd653383d9d18abc0d83c386df4b275101001d0d7cd95023100f1757d75d836b41eac0c55b874b9c956395888d21c2898af34350ff1be0e87fac2b9a5725073fe9c05ffdeaa9f2310e30302047c435bb500673065023016cc38282ee584b09af3fb146db089d95960ac23e1069a76c94ff32bf8efdd341a3b9eeb8727d34c91cf2e4d6e4739a3023100b6c6f3280c08a89c62980bcc727c3c96f210cf8bc4af3c5cb5ae8d47b025108a8c6463c08c1a5e704f7218a076c571d00302047c435bb500673065023100c9fd20ea593a55907049f8b60d23a01ed4c2b69cadc7866fe08110dc518551e62b4c95d51d576619d035d448334ad69b02304d6e6b8d503573e86e65b22ed2bc9bf8abc4867d82f89e095278f99a2ffb6ac118d71b812f21e8e02ac248e68fba63a10302047c435bb500673065023100da1ec0ceab2d09c24a376875ee882a9e08435b2e2785fcb72d8dd9b77759953e9b9bfeeafaf3b23169af1cf4cc41a2a102307d51dfe35c16030684cfde6090feb78b277d5cd6e08bb48d5cd297a586ead72a32e8178bbf2ae54dbcd30efb18569c990302047c435bb50067306502300e5a58fc1da027710080141e1810820a2131edb59f4ace84b0a296a4c046f4e8a3aa3b7865c96f19d0ba385a41232df1023100b7678a49fb107a64b39e0b034dcddc245dd621a227b1ecd9dc63b64e28b1a7e427ef6274a1616143e9696b5960b30a5f0302047c435bb50066306402302f7eb4bb1d136b089b232aad0d8c43e5cf18b6ce14ac611ae60595879ccafae34613c2a8a3babc7c8baad78e054495c802300bd0ccf682d8969ebb5c06bff334cd06ff513f6751de2cd36d2458638593a4baa32c4039c85e3279d070fd2327dcffb10302047c435bb5006730650230397857b6139aa2a2567c842045cd1d3f632b99dfd6bbde0feff1862cf58762e7b8544d3e781b45a439d7f7fbcc67d372023100f40c89c078aeb7293ab8dd2696e068d442b9fd5d32dda3a3adba1833bc00cdde8379e1f7011d7b465d28b4b9b682f9200302047c435bb500663064023062f97b9790142c152e7832d8d2e61d04700fbb782f0a62d0403c9383044c965c6c46aae1832b18abb2ded36c90d4e6760230270a44702d0b9ed704e845e9d28f6497ee85dca695423bd660297e10786528da1737a6a199f61bbb6296f65fbad29be60302047c435bb500683066023100fb3d3fe88aa3c5f23bf2c5d162c7295c1498f3927c3c93ef29721a242d9f187a20c7ca9bd252164a15d3dc6b122ad6b3023100abd00cac661d3174ef5c613b6be89350911c61c89f2bfd228904dc14793d36d3dc3400cfcd89e763759befab1a3b02f00302047c435bb5006630640230078701f75a12576e46d19be4da0a70f6b608be791e9f54631e740553a1d506d576bf18cdd3a8b0b7c2de17499af43e3a02302b30b1b9534e08a61579cea34869045b860a10c22da1a4cfba5621de33b45539e678a9625cf866665440f0602803b6740302047c435bb500683066023100d7e6f3610566ea565fdacecbc05d9319ca2b479f47466df66c09a9c4a2a0cee9f5de3b6ce3d1ac6a23e434ed6e8da1ff02310093ad3e9cdb8f1977e2ff4dade9559533506eb40cb88216034fc3018ec080f340e63c22eed481fc3ebcaaf98bf0eb7ae40302047c435bb500663064023065731206321836cc591c9ca117cfac12544cae1e8207bb47291dddb1795d821981ef8fb726a49d4be8ed7d09539da35802306c5bff7f54bbe48156fd5563d3d11bf99889076d3d4d9b355aa38ad073415974834d53be79944e147b17493e3a80f72f0302047c435bb500673065023066c988a2cf53a81896bc912a4df6ca64e7028ca6fd6dc1370798f011673c9d0074e2a2e78d203c11d7586ed8b486723e023100bafdc09168750fa10732078575f4599392e0545d15cc65f406a26bc42d92315083990d07b749883dbcd5d3319170bb080302047c435bb500683066023100beb415a259627cd8156c7256ed64b44f219b3cb58b3d8173a77ba67e76b2e1dbc3d8a8fb4ab4836a4817d32c19c57b7c023100e1c1a978656367140547bbc240a075d58e98988ad59c33c6c12236be3aaa3d288cbf6b645e984536368f95ece5a9ea780302047c435bb500673065023075ef7a806f12321d4e4e226165fcae7843935c82fb7147707ea24463382e3ecb665a2182531b184d519e817a634c2781023100d05d6ac93703f8dc804f8e76b4aa0d57ba7d6601b73022cbf5b6b6ace6cb8f1c4ca43badb7fe095e3b06d35acc6542970302047c435bb500683066023100b7a817fcd17c4fd71e66093048f7cfdf241a89f64da928237de26880f146df99436f23967497a190dcfd86863e21a170023100b5db05bc2d04b9ca5388bfb2811c63f7d3c350a4b39248b315c889291a9b9e7fb897d424ce51e6f29988fdd8ad71132d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c4c7964b5b74e68a3e61773661e732cc5a368db4718cda3938ed1bba8c9fa8d23e14d1483a7359918b9ce0536f59db7d02305e57fbb937cefecf3f2ff1a67a7d8d48bc721b9ac156c1705984aadf4cb88b9be9be94cc0b14186d57e7545bf64d2d9e0302047c435bb500683066023100deded2fccce7d27ab4eb8af241e301fee9ec55df9cd4ed9d8cd51f251d3c4e90b1e46304a1db486be982b1f3078fdd560231009850947845ca864c876a7cf16ae2ec0a7d41ff681f78293f42cfed6ebc5401a95b43d07bbaf20d7467e37736064e87890302047c435bb50066306402301d4aaeb9bdaa7ec77ab3775fda8b780da755582006e198c91afbea7c3daaae9683c7ad20b6f03428f55009e5be886762023071e75b72dc26280041f1d10b698c212524dca9d9dbcbb1d2a42d0771fe5fc99bcb96ff875e2653d3ce4bfd63f3bb8da40302047c435bb500683066023100c33ca685bd5c7d3e2863e3d8728d71d22ce5fa581f5b7260db9e2ed864b4ce36a3893423a67db98b66529ec8d01a4518023100f9f8a009cb3213cf0e519b8a771f6d32f1712f95981791f82384483be3ea68896e1478c6bafd26f38b210cf5a47323d60302047c435bb50067306502305330ab190554442c8173279c7f2a857b2409e2dd20d472bffcbf721da0a558ba6a7f3b2e47c9c87c474c31971c4e3bff023100c33e6c7ff1000783d79d4d6df20b6274f0a6a39e318e0224f93a87f578da8847d06da99333716b458df2a0fd1f80c96a0302047c435bb5006730650230652f706e2c0ade34774b4e5fd052732d1a49dccb99f67805fc16deb40f55133b254f34c5e5cfb196d72182f82035109c023100f27b0773f2f743869afc7b5e4e52d05349943e647deb9aed27e45c5de2063715ff566e5cee8e986b7349c3b7c99960e30302047c435bb500673065023100ced67126dd38138b47bfa3ac17c1c634c553b167dc460361539cdcca9bd3a0e6f8eb8af50f6b5298441c50410ad67b680230402af60b204938f571f9ceff677cc4e0184dd8fa34d5bcfbe24d886dff23f786962899089ab72b8881a23b2648690ef50302047c435bb50067306502304b1b1eebe558496b49eab1b9c6ff3f0e297567035bf152425526dc389c4006406aa8d46da41260af60fbdc88c05bae76023100bc20bd50a54dc8edddc300f2c6b0f501b8f1e9f204588a0f4c846d471a63944b21129867e74ac56d96f1de1cd3f1efb30302047c435bb500663064023005be1dcb5919e42b9450e911a4779ce7d5945e77f530b9b1700726aed8e98a9419d62fec34d79bc81a57d4b9264d743f02302b7b887a7208cc92f473cf27cc7a6159d77a7241a1551693bcef7797a60aaaa74dd4d28f59e63f6b997c2e0cf2b88efd0302047c435bb50066306402303647d8e6af5a128bf287f02c60e918340cd6c3964449fd524a2bf49615e81a1549ac8b70e8030b2a2cb7eed72ad4a91e02303e2b386cabca4eee3bd68ea800fb332fecf6e4fe5aae260f135b2d145f764da1ed7e721464c11efc5fe8837e116ddd650302047c435bb500673065023041398bd268d5181b918385f7e43270f94f5a0bca84bf57d711d5390fb3c7c7d31c28f5db89be588389449778ea1abb8b023100d62a3700c0acb6fb74ac4d6adcff63bbe4fa3da0f2c02c469a11ae7e120d79fb418be9455cac0a5bc98ebec6dfff1c160302047c435bb50066306402304d4285b7cc032770125a5b05a32ce09dd977a074fc6438a9b9fccf1706ed8871ea2b2daff0639e2a4a9722cafe118ac002304daa96d18c795174767f0d8f82d59ec838976cecd565ee52617191ba29a17e69fd03f9282081401551ea4576767ea9040302047c435bb50067306502306f662966d4bf577c8393c4049e3e25b7e731ecfaf525cd688d5ac419d8494b3dfcde8a473c10b138aec4bb9d0e65aeb4023100d335e5b490db6b76ccc86fe2267cc0da7c33edb4586b0cd578d2e902a37c46655a6703a6708f1f4ff1ef1767514c8b1f0302047c435bb500673065023100e7b28b982dc811d850f051998849fc06face619a40f3c6e4378577b133a059969f47d281b5647bd641a7f62f5fd5cb0702301f064c410bc98b41cefe2172522f0345e83e19f052afadea388e0761e8531c3ba284c297e0e5c02a54d1edf963f84ee30302047c435bb500683066023100edf7c8563319218006291773f4754dae209b4d4cfbde6bb9acaf12fe5e65eef82104efbb967fca06e4b017c89fb69fef023100a07953701aee3d59501b8bd3c225c255d72534a8c64077e326d690a2a2e52b58b7beda16614c7a3ef37b2b2d994649f20302047c435bb500663064023008f09e125756f81efa92cddd6f8ad2903b69bb64c05838ca62d050bd11437af4595f3ea10da6ce49809bf791cd0ea4af02303d83d18e981c14835a7b802eb2d2cc641f1581f5e2a94ca5f038db02d73662dd38bb5b611fa1cc536698a08cd2fd38490302047c435bb500673065023008fcaaed74bf64d11050ba5dda7caede64dbc804dcbaee60d8db3c9cb8b6cb356eacc944fbe1c6cb23e0558ab1d021f102310083d87326202d87ceac2175f8b453a56f82b27b84cbe71de84fa6f41669a3923497f7a1dab60ac9fc1e0bbab3e4f4ea5b0302047c435bb50067306502307e02698092c81f628cac6cc1c9cf041f4182ba2e244c254b0c766807bab6fdf1f9dac8c3124b0dfef153abc47bf6396f023100ad3d1d8384e9c94327721736930d6ba28ecd1fe21f8e04779d1e34ab511e7835d762937fee786de85b78d866a05084790302047c435bb500683066023100853edcef67f1fb00b728395bb11de3e36b7c7e6bc5574d7650d81b7dea051b1c4fc662d8e7d411c3037d80c805f8118b023100e2ad6ded66c8396812c3d63c109acfac6f8921a29410df9994f70d8138cb74cd109be9e0231e1775b793bb4ee1d903930302047c435bb500673065023100ca50d418fb9d40e096670c2058a68240353ae9a1eb7c8b8246196dbae08bb703a04c001235f0f7f6a114c994cf8a9ebb023011d5caf83b916397a8a3d1bc1b5a236be545ad3057530a5533468d2cd9991f17257b7e05387f6d4b5419fcd6b50942200302047c435bb500673065023100d3444d35efc923fa2344383848585c76fc45609d556204d48b49618ff6889c71842bdf5bc8c7023f755adabeaf50b38d023017030af9cf7fe0e80ddc425bb2f27c8264acaf3bf3070aaece0faee40fa42ad9e1d9eeb18f5185c948a0503ab9adcc2a0302047c435bb500673065023037f8dd7365d8ec422d803d676b3cc1ea70a2e7ce00b46ef3805555272f23dffc1883f0377f031e1d5d487934b684d32e02310099e3224f2bbe77f32b68504476f3c1b6fa0617bccbc6002db0c0dba6fe51fd8c2e5117a2f370416b2a6d1763c32793480302047c435bb5006730650230635ae34677de83eec59345bb4f3b4302c94e783c9e79fbb1060beb3f05a6d062ca2148d56b7a4d4e78d55b3d0515f091023100ee8f48da5923d87d3855a5b8631ec28322bc39d6f3b90105566921b8236d5ce0c01394891d65b54495c09cfa46b2812d0302047c435bb500683066023100d7b8bc17b35c15de27e61b97f280a197df1c4c59d25f516dd01d85d540103cd8003ed8cfa7413c64077749b16cda4be1023100b40e08c6692ee8850741f898f83f173ef4c34ada860211d017e43aca64e8867e1301e49457c5ee8767f80fe612e508aa0302047c435bb50067306502300251fdc8ff329553c8862e0810c172f3322f02ebca06dbfc42ae652b9bcad5143c98d928ddc1f046cf1fc491a7350821023100fb0b7dd1bf975d674fc784b1d4c544350f7e5741cd61769c20b2601036b4a9b003769ecae3dc7b799754c363ee29e47b0302047c435bb50067306502303169c09241119a9d039306bcbc7c1e5dc75f2848af798797bd13a4f45b07ca11e26ce2180e530aa400cf815befe52d6f023100916b0c16eb05524094b3032bfbbdfc22d617653385b74ee908fcfd6c7aa989793fcb4d9ad1c8dd31114a5c70e2225ee40302047c435bb500673065023100f6cff667c866b7b3adef824890eae17d503954cf131a09558f0c9bf8783adaf19416f6224ac8d5d52d18e4466707514102303be5530279d8c60c320d8cd3effc995fca9c297c892972a41d93bbb5b4fdfd05349206acf88def5d6587e96bdc5fda120302047c435bb5006730650230126839a4265d467f5c441d740699de4ceffe79cbaedff500941efa30309cb62d666c5ea4ed3c2464cce7955c8a988df4023100e9a9aa84a4e9ef844381b97926eff650d631e80994aa9ba97d8e9a57ee30bde6aa18a2b0e9d9a4c6ac704b50678efe960302047c435bb50068306602310098b0de4d117166a5be988dbac748ca6c74bbcdb4c424ea4876e1b71f501dded3a71f330f73c3989fb7eeb579f8aeb5ba023100cc5c90df9a57ba69c91508f4ff3485b82beb6533a01e67349a080f5f834d4c5fa9c58efe3606c13722e7e53a237cd2960302047c435bb500683066023100e894a31fa670dea27c3f1bb2322b03c92696e40ccaeb7a428a0e4e0e1c18ae781f77f626f202a266ecb65ca159a0db9d023100b56d58dd49c5ea6975c71a747c4e83c8ff1fe0938bafb15b5a07c14973010ed470746b0376f9b3febcd7c479b8b73a4c0302047c435bb500663064023045f90be918ad78f349621983a49b4983d1a5ab39dbd51ede43fe8f16f5f7d7173d82787dbf5638319cfc8ea978c556630230151a59c9b07c1166b9aae44fcca0a527d3d4f1a673b352216b682a387eb99f9d6fd7311fa4534fdd65b7b0a55cdfee2a0302047c435bb500673065023100f896101f7989184227cfcc7710273554b15a027dd62417f2fd28e3091f809b9a29bb2567d111edacf566a245f99a0d6e0230550d879ad964af347fb1bcb6a460aa863ad792da971fa289b15ee467f7f1abbd7de02718f4825b9c880f52f54ed0869a0302047c435bb50067306502310080d6d60c566f9518450f83f825f133aa0e4eb6f5beb4911d532d95de6dfda79aecf11e5dbbc678a7ebc3df107d244e59023031ad5387c66ca85adb07002e5fab0cc7e8078ced89a9d78fd392f6ef4d714e79d6e7b3d7b320096ef1259edc04afdc5d0302047c435bb50067306502306eebe05195bed5cc2b58e3ae0fc54aa6d9e18ee9be884eef233c4894005d71d45a8455530bbb87a688ef332ab138eb2f023100cd64878664b9d25bf5ab05fc0284781befdfb5024400129fad845e1068707fba468f0ece157e57a588f29e814f5f1b4b0302047c435bb500673065023100b504b4a4bcb2968136261a631785c94389fc02708d1fdea98793458c6a3894d7ff2fcb561c5ebb4f7d8d9e6b8bed79160230659dce2d8ff57d1d53194d5ade44b033c07bde2ac1d91cc73b40554da77cef717c2f366029328770523ba82cbd0565d00302047c435bb500683066023100ba114f0a34b9ea33b67819a326ab219dd01b1a59e4547d9d79f2a025327609089eb449550cad9f2d7ff2bc9e0d337bb5023100ba980dc666a579cc618a318dc3ba5ef29ac03475dca5f515fe8b658f5ad6bc93901de477a2461b749361d939ca43d59d0302047c435bb50067306502300c2e6788788d82fafe58b4e1b2d95e169d3f2a8dc02faca13f4ae7381e77269b08a783b3eab596938503d462b5b3b68402310091041296925c83f13676336d743b4e1d933e9a7859116c9439fc8fce46a15e2506e7452ecae36b26de9852187b9e93e10302047c435bb5006630640230403236b837651a34277294d1ef4969be036582a5a39936ee1b2e03fdd5d0bbc0bf8f26057678b3638a7867fe88ee7bef023056171139c191bfabf16e12bc9d3acd129bf37a323bd4b4d19c2dfa044bb45e5191488e2fe33ba1411244ef641c75083f0302047c435bb500673065023100961c07795cd052e1652d66577f9861d02f38ec69aaa26c9eba9318ecb0fe880940936b71df279e98054f6365aa44e1a40230190b7bc51118aa2cbdffe78a12e663144f14c6a0eb3eb990552e0008fdcb2c13ef2e824db4af0d492015315f29ffd0050302047c435bb5006730650230116ea3f3b6074928a07cb61f88c62cf84a5f94a89b77ef1af3b2c64ab8c4e59a8045b5cbb29b875b8d6cc4345be1c9e1023100f708b53f8ab1b3ca87e2cb01f5cc74b8be8ba3985a0d3fdd523aff27a06ed0c8aab337da1f93866604e5565a09f89e780302047c435bb500683066023100deb92d65df45280143ce75b177ad9d524e5cf822e336f41bc3563d593b2e1fdc0829599d350c802a774eeea7819f2f73023100f0ad0f5f5e889b6a9bee20539564e122c315b1558030644e368eef2ae82dff372cd452bca66ed9132ccce16e1823d2940302047c435bb500673065023037c0afb2ac865851e00b74588cbb5dfe26ebebca3d29811097b14f9124b02459cab92a8b64aa0c16174177c4a10f30540231008535459bfea4c52010c4a5196cee780d924d053adec1b7517ddf4bc318d472de03da69a5aa311f602e1d552f201c68c70302047c435bb500673065023100c53aba30487addc9583048582cb2341152154918b2c7413db45399b0c144f5de168c2bec10970bbd34504631038cdb4302301cdcfb8d613c57b7bfc1ca6ce82994b9f4b349e1091c0be072bf69b13aa27f918ec0d1066045bb826351bc373ec1d2cb0302047c435bb50067306502310095143f32422311c8486a2979bd8573abba2afe52cdb06334e5041e8d9a09ccea6e7453ab47362261f2f52c9bb77e40fe0230503922f5733559762c7c9c62fb0c88e7db3c66527c5b579133fe09ebe4c74e0ecc1695972f87ee96f53fba0f40f9ab980302047c435bb500683066023100a99f2cae65d928011b00f3fa03606723fb6123b62232819b64eeeae0813fb91f61fb391b4a7d30650f1ed67f5d407476023100bbfe53483eab2931404005ad9ed9aa4d3b5b9e7f0561d545117dacd3d92c76f55b1959b919b47a99cf7ed223337f52b30302047c435bb5006730650231009e1bea2057220cbf3707628e0e0c8383c2db807c3a99333e7b9446e0f1bd98867a1a520f84e311c4c2ebdbcd973c6ba902306b63df63bee984d18473bd1ec5978dd1ec385444410a6014f6f03a9d758105991e105e802044b691b422c385949b7b700302047c435bb500673065023100985ca635a9c013b4d78e4067969cca71a563f99771fc722a1939ccb5ac0582c5cf98eabd5260fa540a7fb6b47a803d5e023027670f7d659780ed38a6a3979ad38c6fd851ecca76d02078d27c4d9fe720a5072bbd7b25328fab3ca9e9615b9c3cd2f10302047c435bb500673065023007f8d863b1d0bf7013148896ee6d654aac44d3f067ce5c1f1e8aecec27793f83f6c65c7b9148dca7989ed7cfb5c30adf023100b210659892e2bde5c4db2c98d284f8930b4cffbd6e60ead6e2120f768165fe5786f952530246cb7d170081720573f7340302047c435bb50067306502303b3a2cf9a36f6096ff062f73702a65d0e63a59caf66c0a05eb112d2984d6ff16b9194f93a6090a187660ddaaf8e6a4230231008e7f85c5f8a7197706b2a5ef499183a03fb25af629db9b69eaa3902092a15261a27f52d07372faa6f830aa6f78413f790302047c435bb50067306502306dd278f25c332737cff77bfa3bca63a84d6de892f162a02929ec459df4034a74ec0de14891c0cc7e7941b7269610253d023100ab97ece28c13439b3d2f397e06f8d35cc49cf2d98300ee65f0773a14c060c0d5bfad571a27ec2648cab30f8f06bb349c0302047c435bb500683066023100a220c01d2dc5e8eefd4bcb51d1fece509ea3816ef7e3d0ce47134ffa9244161681b515b7694f7afb913335d36e561f68023100c748ffd82b5a2cc6b681032d6bcbbaef3d6edf020f8cf3ed5932f173092905cf966936c1f8b2a754e453ed1cba1b656a0302047c435bb50067306502302d5468f9a8fa425a149e57fe885c5f6f90560bab9db5fd1ad5b58c0af6c68199eb8e816fcd4a2fca982a57705d131d4d023100a19283f519d0575df5e564699203f960c19f7c22d78a6f976ecac37f5bad22fbdd19c7c824bbf7f08393bed5b4f145d30302047c435bb50067306502304807aa2f443b60f82593faf92d7df8155e562c2c84ff68da0652e966cfcb60353bbdbf2ec3ce47dd192e179746ada44002310093c64ad6442fd63c9d061653dbd32320666d346e3be304fc3442cd51b2a880a6c7058f0919552d83b529513b8a454fb60302047c435bb500683066023100f16af9c306b56151a927ad3d71b1222aba51665ffed9a62384041e2fd1e131685760e28f9ecdba0ea1f71437fb4ca8e2023100ac1b82273ce04cb9b48b360a144075f5953b02b5f68e9a041e17879be7dccdf00954a3775b62b11f803d23a6fea674280302047c435bb50066306402301f6cd4d21ff398e61076fff49ea0f056583ad81ee54baf2bd0e17ccd3b35dce4925bfd2eb45e7bef315ffca5df0325bd023064abe692cb1fddd654f558c3b6ba9bc34700332a30f96f07ecdd2c3a55d35ba3d05fa4908d484f304b0f6fe387edab060302047c435bb5006830660231009fd1b9ff2a45d9be0cb0cfa559c4a03cadbb31680b7fd0d75caa48749d8878c5b3baa3e800ad12737083800c431dac0a023100e9f0f83e8a21cbc1a8c1705aac868eff3d9f4b364537788efeb9ebad6fb5312490c36169a4afc6df512cc11290a1f4d00302047c435bb500673065023100c68958687de91cfe1743537fd3490ba207535d8718696eb54d660a222871c1594123b17e915b5c33552e012969d526df02304308be717a815ef51c8655394cc4f27d9f528673a52e754e9eae31908975b388950dce3ac0c1b1d33a2189164a714f0f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230769f61eb16c5e8515eb48d6840f52b0917ef6473e4f23a27fe0d0e55230d7da7a7a0ba3bc44739826793c063f2ff76960230117e012c1f95850a356500c2ec08d0a804984b2f9e8863373e67630d37750f31f46ad886aa5d3547262f368444d3eea00302047c435bb500683066023100f46170fe96a9a928ded3cf1cc52b28ca35fdf33626233587d5681ba55c20d8c09a00186ef84ff4af7e3538fe608ff4930231008e09269a823bf9b0c688e849c0765fcde9d08c65575240d7ec556dc902a77489548d96b49700056008411957ca3434ae0302047c435bb50067306502302b0d338c41b0eab01578572e7f4e8b728620019c541cb8bec3282221fbf672913b0cbc3acb684f20bd8f93c341fa6e92023100fc4a426c5eb8195d07bcb1ad3ddd781739c0c350792b3efb38394d38d1c48daeec6d66a7e31f2c224e7d85c1e63aaabd0302047c435bb500673065023100f9c1c2ceeede6b3bcc74b566ff2e7ef1fa16e43d4f27cc7eb97bb53cd0dcafbc021196c41e01fcf5bff4f2a5dcedbd8302303b7a432fc13c5872e95a601e4bf089b86efb84951d108f76a24e03d8ceed96c32fe012a7dc723d8ef6922a83d261e8d30302047c435bb500683066023100bb936b3059c1003d405de1289d8109fb195311759e2bbe58def174ab93da3e6071bd78ed830006d689e3adeff9b5013f023100fcd5c6766472e381466d76a6b1eaa0ff8ed6f9d9eae83fae96c7773eac721ddf305fce0870ef80f15753661912fca8900302047c435bb500683066023100dc23695f7729b6af26e8ce0bc3bb095ee4a60a11b019b20d5dccc29136956c4d1b826d88398f4d843c564244c67d6e17023100fe8f5b820dfd427058f7d4fb7245a134137422f09d58c641ca30fc017fbdd619d3d1e3a456280d1553a73a29a148d32a0302047c435bb500673065023100f90560bdf8e8588d028a202dd0e204b9fff280fe7cdd8bf844cb6f9100262349f60780c2493c829b99630a58e54f2dce0230174089e3f1ec2cc4f120db5b42b47bdfe428da635706dc830a0a1909b637baf8025033cf5c338253c1337112c8f859620302047c435bb5006730650230416cf7549ccaa6c65ea42325cd0e73262c54b8da5c8cbe9c1cb9daed770183cb84266e3bd76354c6a9c35c0d3cda8e5b023100baa866f8acaad349e949bd75d6a0fff217c3c1004e9a125bd84510e9cf67818556c6c2d5e2d9543aea3dbdea79b681270302047c435bb500673065023100b443de019f6e542c62056a3d4932de495daf5716f01d674a9f7fda779fbe7dff59d596898d7de305a31b23594f34307102302e4647d5afdeb1552b5c6b5a4ea095db3f2467079ad63ad3e8b07bbbea052e0f011651e7061100a25d74d8bd3ece0d4a0302047c435bb500673065023056266241800105a4b0e44e792cb508634777e0a65d5d3082842baa7f29e51ba9af692d075a6c2cca05f6ae2fe5e8f7ca023100dc8f7ff230dfd6134463c4618ad9c0ba29541d9f562f78fc3c419d6d14a6dbfbf389432ce9ae9052bc10f63f46e4cc720302047c435bb500663064023055f872f3da948ac5980a0de10291edd656a517a82eb7dbfb04878dba7a5ddc5fe500e75019f3d64b474a209b3f1496720230408d3e90f7d26b56619e1b22b8e74c0da3f1a53c323bec08940ff6eee9809f4ba48688ddee06e9bb16740040bd663e300302047c435bb5006630640230775e17e2ff08d8df68a7e995c64876ce033f830ae64a88a58130c366aec9c225f75382fd8ad11488d5c11080fb726105023076e09506ee65fd851b1b58c294ad8b5ca1459d7acdb4cdbeb80c0c72be18e3dbc2b3f14dd9662b0ad5ebf6b8e0b22f480302047c435bb500673065023068eb4410a4029036e7c507ae8aef2f4970f4f2a1ccb057daf74854d9c494c1cc447c1789aaaa3b273593a6bdac95d49e023100e622cc46bf6549f43995499e9811fe25645a1812a8775ea2aa2d1c64b404669e274a2b866a73a98296934cc8447398050302047c435bb500673065023100f8727defd54b3a0a964ae25dc20dfc6cd6f8ae6b301c08b4e12f2b64b43afc90a0ddb3fbfc78739eb1a75a394533957b023040d9a0c9dc0313ac14c5a6fed540fa06cd57a1cbc400b6ed15cf6f09a1949c28c0c17ea10824fea7f49048b11f7957f30302047c435bb50066306402304f9c61a2b477823894e27c2b831c35d75df683f9ec2d766dcb0f58bf301f19236376228c6516f3d8eb6953de530f57fb023060fce4ea74ac2eedf24a2352fdb3578c7c63c89f7c5172ea5b9944bb880063ecae687c0d37320f1ff8a552a1ee7f10b80302047c435bb50066306402307286f5c023e38617ad0b3062b880349b3085c0a59609e5721c2501ad021f541d3c33a215841ce0be2913575c28b71af6023068097a9da8f00428b3e7d39225c9e142e0de3cdd395a12a01d657b1e695e576730bf93e66791f3c6dd65829b4fd674910302047c435bb500673065023100ffc9ddfb416bd791103d9dcc3125be8eedc5bc4fb76244ef984eb25b2185ce3dcb2ac88b9d99c1177df37384c409f05a02304ffcc69822217dba8123e5826dd892d96eeeabf732fee7adca29498aabc38f3d87f9a9c0e95e3a325e3f58e96467af5c0302047c435bb500673065023100d9b7c5d91dbf6502498fe20d11ea9fa08312afa171dc7314a5219b04bbf355834d3c7fd2c22ca6c1bda1d8711eec20ae0230425b027ccf0c7a1056f21f68691ed2e2dc42168ed657d9814bbd629dbc76445667bcd69a3ef3e079b83f4a79af348e730302047c435bb500683066023100af583c7a5ae429a528e51c7f08909fc5f8af006f939d3915c68d99d041defab58669955f89e30908fa7cd4dfd8539e09023100c085308cccde128632bc3f2a1ae09c33422b73dbb18d1a001a98cc08ae2c26df9c929911f3b2843a85cb9aa727990f060302047c435bb5006830660231008970449dc0ea4d6212fa7d1c1bb2441069669f452edd669be6a372b09fcd4d79f2b548fdd76ce9ce845413eab419b86b0231009418cdb4faaf699b9cf0d2d4547ef505f6814487a818edb813386585c4c37048b9e60b848aad0d2a246923b24024e11d0302047c435bb50067306502304cf98f661c5f057e3267b99c2cccd6121d2032b03457ece528bfa566a2bf7ac44cacfdac0bc03302554aac77d08749e5023100823f4c3e08ffdebc8ea42409822387aeee5d553efe8a8e99d7d7ed6108d307eabc2830fe0922ab37c5d6c4633a8c2aa00302047c435bb500673065023100a5de4c959a746f4e33f46dfdf99d7d0fb78d7365e63ca02822a313838116e6fca710fd55dcb0debb5ea28ed238bbd1b1023059a9e94e7b8ddeac2c72b0c26a8fc850708fc4c9aed7029668b95e230aee029ca4a71f174685d7aee419e4830571de4a0302047c435bb500683066023100af1e1421203cf5d2174a0d9196b3728f05bcad9953a285ae7d65c6f9a523142063b7123977c5b433bea75e5099b39808023100901ef158ef418238ec6467716ae5803c254a11e3d17db1e1ed83e94fb05a1fe83bcf01f15e4c20410abcefb4cc8ed3930302047c435bb500673065023100c836ad65033a25e866683c6d8ac6258e5ba6f258cf6df0eed4ca77451abecc9cbb17d34ff602a6e52550fdb6cf77565e0230777984c44dc209b4e4d8cbe8e3c7a0c4fef3ecff7741f0da8399b6cf7de22ece73912ddbee955a9148137c7c4fd698e80302047c435bb500673065023100c8abc53aec59d6a4f9c8fc3bf148d833d49795c7218953bf08c8701d9a1a9639f83f89c8c078abef44046d2ba069653e0230288381079d299e5ff65f6a0d378bfde62ef5d11ca5d8d7ef4d33068be30982c5c7490c97cbc7dc3a8d14385366cb79750302047c435bb500673065023068fb1667ba7d6c3eeb10dcafa3d1896361c404287ceac27e1998cb6f85af5fd8625b386867cdfdd5b1771277493a925e023100fbe450aff09f1f4bb24244e03a8a7707ac3fe9b68e547a5e3e543774546bb670a12fd48e0f77a8f44228562364767a110302047c435bb50066306402307f8928fdde0b1cb3c02d458c3b13124e335e906fe023c1a1747faeb3e4f1657a4ac6e71961fdc3f0e89491c9820faa2802301447df52494cdfa8639c4273e80c623216cf79a90e14e7647a529373d90a589e1512540ed2b075ae14ac0b50a9a95ddf0302047c435bb500663064023031aeb11fca428806e3b1fdb5198e2e45573400e44f1f7f76219917c72503e44924d3aa3c3b9d2fce233b5b29d2f00b9c023039fbd03caab1ab0f776199db6acfca76f0defd67acd9c76b7d38d865517dd1a9fdaa1f95aebf282f02afcacc42f1940b0302047c435bb500683066023100e6eb3a62e951b5502f44523d7de8404215eea390cfbf58f023ea7a8876ec2902b5d020ef5c84d444753b3dc1c60741dd023100a03faeef036e80bcbdd382c64cddb2f3277ecc25a47a14f9f4b961150fadae3bd0d9ca3c9952e3f93fe784ff40155ef20302047c435bb50068306602310099d4a5c68047e31100af5b4f20a140a4bb1fcc6011e9ac4d90051295df116c67f61409e6d40b3ca52705e3d44b2f379d023100dce6ac063d8ae5acb114386082fad8749b96637d77487fe2b32fead97fd7c8b1eca287344f0335732a3fe694962abc7c0302047c435bb50066306402306f6ca21cdbf48aef0f486a7ae95d0d7de521ad908d993ad492f60a006510678b71d716f8063fbbae266269d8d5cf6599023047eb1cabd6b81e960527bbdad205d72d52d8ec835dafc4cff2e0dfa9559e7d84b5c8d1d204adb1aa8e720c5960ccb66e0302047c435bb500663064023035dae46fa68970faa759069b106b49d03e614fad3f7c6bb906d2572cf91f9e9a0eb03d2ad3f44edcdb2f627617c02dc8023032b94a7f3791915ee77a78a53861b895ab02966990590a28979dec5422b1325dfa682c4e1c04e0b509f1d84b4fa76b510302047c435bb500673065023040e946c32516a54021ed5b84bac8da2aa0d83cb480bcd1b3bf8eee832153516660548f0fe9d9f25a4c0b383a960404a90231008502b9ab22fbc621f362871e9e3463236405149158167dd380b098ea934cfa30beefebcdad9e16ac2209eb7692eab4530302047c435bb5006730650231008f8de4e3d2ef337779b8a9658110589909552fbcbda85c9da193bdc2f4c8024c43a9166bd58d9f0a9792a9a725f22593023037a46d12c87bda48b80bc51d5032ca2eac09b4d9ed342ccfd957a6e705d6d71f1fc1764d13fc91b0ea1c52f3f1bfed050302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c35cc6b3e3facc3be1005b117f571a446f0a099152b933df52d54efaf6c4ea68219454d768a7038b9d6b7f924b7de80e023100a7cb0358666b10c6f61265295be12b051f7b7e894c2388b290780bdd339047c8eb3e6221b5a5a9bd7510057af046c98e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023056feae24a6d8df4327fa9dd0517821bb7cea4e79378f02256d5af61e2ce67b094e1c0a2d6fe668e9ef6441358783d264023100e91c25e7dbb5419530066f700a7918f9f20a6b8662b3623fff91666edde5d44fd6b506d996c4b330f95fbc731190c9cd0302047c435bb50066306402305be8574bf991373a5621f6240f5240a68107194b4ae1575b33b103a33bfdf5710c2d2318b97432629d593245c6b6692a02304fd1f74e83a7e8afe62a41566bfa6193a3894b5f0fa547231c85a19733b789f10b26a39aceb40eaf45cbe3fb7d8170c30302047c435bb500673065023100d9b59ed5fc3374c429385f902ce9fc81531a71f340bef3a14b8075ebd84b73d62f80ea3e22af294bd50bf8a2b471fbb9023013915dab63b1f3151c45117f6895af5ebf29996f568909c41bb2925acae6b0ebcf6914b35ded1bab18b74bd527bc107d0302047c435bb50066306402301454413de1f3510c408212ca5565b726b875ee98bfb33a838e1b2e4206db658ecee8f5e41f7fcac931455d82dd91588602303eaa43e952301878855ac8aac0f41a14d1a21c35e5b6ff2b5278c4af5aaf53429466de420bd7466eee32335254cb4ae20302047c435bb50067306502310089006c27b898d0bda63e25005dc1077b382403d9a63e5cd200518e84ee843e3e68cd05261f064accc2c9fd922b354020023030c36b07de66342a1ec7c3792af1a8fd0404c0cd5d6e7d452fa876e0a423cb1bffcb5fdbf3422b5edb2ffb53c9a4a25f0302047c435bb500683066023100d3bc2929b668876934954fb85d1ff925e2085773bc4cc2f4e169da6401b49e9d0fce466aef22973d5b31ba7e4de2247e023100cc99ab1c787fbdb988288ca42891c04e76a2e4c4c9442c1b29ea5cae06a828d6a06ad70d9873dcca65672f6daa47961c0302047c435bb500683066023100e9f93867289939026f5536deb911c543d016795f7a7e9b8986413ba20044462c9436cb9ff79a11013190854f63ab4960023100e87c4c0b8a1f104f4430c0f5486f9fcac88b8f618368322bf38dcca9b9664f4ace26158c7fe802e61010fdd5030ffdfb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ec9abf47eeb8a8ac5e63cfbdc810ab9b78c9b49b4ecc155c7e088687fb8af6141896034b688ef7608174ff73c97e7cfc023100a29014643c2e57d60f655639f8c3acac5f65e6f405443231e0a8d9fcba5cef3639bf7c944eeb0d6ca69175ffef84c4cd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307377140462ac434f6a9444c78e643d5651d02ab5b961a87465a6cc1b13bdae5b5f4d3b15687a997505fe2f72d9b2051f0231009b757da50a17823b514b2dd2ad4fbc2e42431ca9df04f702abdb6cacabdd3ccbb9835dfb9e5618b9a03d722a5210dbce0302047c435bb50067306502300852756d175cc9d73447fc03f96330ee844c3e3ef0f14c810e6bd96e043e22dfdbfdbe8541e446ac794c89b5ce544c23023100bad475a2f73fd3d498ccd616246f0fd46869c26655ef0384400b361c3e87354a3ec6b4b0d3fcd88d2eb23140bc8771d10302047c435bb50066306402307fc5a33c18098d04ec0a8be217e875a0837c5bd8879a0f86edcf7d33483028842948b1effcd41f290a36308c7f97c9f202306957e0580ce6128f1c743ab79dd2124907a78e555c0e3175bcf273aaf09dd42ce0faa2203b1f01cdb64d522c5f34646b0302047c435bb50065306302304b3adef52505b9ac822a376d219605a2885f366a1fd3246e118b0274e9c251cca886845922e11fdfd53bb3a314d3965e022f2108a033534db5c3d4dfb0529c346692329f39122a3a6cf814bf4906b6a70b297e234b7d0f1a8c1faf9ae86dc980180302047c435bb500683066023100971616d195518bf12e7d284c4187c4cebc5602e7a3462edf02e2d62ba83312eb32116a536244a7deee970f523297e595023100f1003736cc50e536bf1229731e735d5a7c4a26634758285ce90b41bb9d2a30d0974f328cf1cfc44a2e0a47f44617536b0302047c435bb50068306602310082a354497598f982e0a16c6cc089393c1a3516a17fc72939c86e7c6f52f1ef3505ee04fa8bde1d1bb72293492225acdd0231008fc9d4447fc6aa11b4ec3ebce7e55462f656ddf3e0506a1d311d55229ff31e88fb769da694ace2e4d5df2da24fa247500302047c435bb50068306602310094ccb6950740636bab1ad5f7db26e2d2bec59620b253c090a49c2dbdfd69d040353cc595f50a2945367d8a43bc8f8c17023100e5af58de2fd57629c5bd64c9d716526baace0f293ec1aa7c82ab866609b781d06996e7a7af1ab67ae48b4406a70c2bc40302047c435bb50067306502302a3f032b277e6063f9f9b25f8da5063c2219bdd0a4bfcc6284c8ee1fa09eeb991defc0c4f4c5d32662c7764606ec9771023100a311b2622bbf4bf74c2abb414ce217624bff3cf6cbc4024d1eebf8536968d59974833988bdbfd3126232c23258002ffa0302047c435bb500673065023100fd156d4bc4e51c7818bf5b49bb1b80f3d611d966cb98ac72380d11ea65c8e7dd62c2df5e480512eed5ece6b1e1713b3502304d7310c3769b9487f435b4f2bf7a19716db50f5878bfd3d961fa74ede223e4c15781d04a8087e70e4321c3d0d23fb9690302047c435bb5006730650230636193905bd08876e2dbb24c505cdfd97553c0d7c036e04485c2fdfc45ec3210052fb6ed3dee5abc6a5467e961e82788023100938631c79e6f42c997628471a77e20191aa547f5ade9edda8c5c13387aca385414d18462c5bf331a8ce4f955915e8f340302047c435bb5006630640230282c7d26564f9d2ac1b684ac91f57bb27b1527d76aaf5191e1c3892c95f08ef2879467e78bab01c41ccce7e168590bef02306dcab88f791d32d6b312a4695d59fd3cc9048e8ccb2a724c97743e98e3e0a6e16987a151f47315598581d0a31563f4a90302047c435bb500673065023038879d791461a5b849b9eaafd1b610355013b139ced88f58d1cbcbefe968e0653a698e1ded9c83f810ac2fc7cadff0b5023100de6599afaf9b6e80bccc9563d5d1d5b1f4c472c261cf731eaeae3f1339480b5878a2962b5005d2a55bcb5740cee393d40302047c435bb500673065023100cbd30543e674f7a13e79880820c9ae77ce3a56699e563cfdd7c3951b6c90a77272aa00c5a84eb2fe1d8f495757b05cde023004ee0091202fa6cfcd1e4d0bc13a967b243b6fc49222a6171d35f58f0ca0cb07c336a3ba35ed5cf16b048cc51cc854ed0302047c435bb5006730650231008ca293658ec97457a1def7d0571156d7dc3aacb3e03c37aca775e5ee8bc77b4421c704e2b40a938c1c7e562492bba23602303eb187e5b459ec0c16ede0f4bc0bb65e39731d70523d3b3dc6edef6f6bfc7220b01ffaaff35932fbd273f930fdbf5bf10302047c435bb500673065023100ba9a911a99bd086a568b3a44894b26a5d731243118f804244278ff83e2b9c925ffc91da8995353af3a5b8fdbceadceed023039855d99da5e8484ddb9ebe8f2dd2157337021485a119aa929cacea512a2d76f00a808cf6d79002ca081f0d3a18585760302047c435bb50066306402300da1dd0e51dac8c56271443271ed24332d68ff663bb1e9515ef6f174c27a0a83d7ddcbaa5b01fb17a25e999bf9efa67f02307a6b8632a652c543aa7089b4e9c7d84b224131bd19f29d6b398b15f87a243008e65fbb5d34275a061fb1861d4d64dd910302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023031df6d6508a640589e678cc4bcd9529220e0f18ec54057a1ce7b7863b53de0590ac76c1a29b54332e0c338d4efb89650023100cfb804e68e8db09d6072e0604077212b34816a4a8e85f090cc4f573ce4621cb658d02c25a7b69890d94ccdc8d4d275080302047c435bb500673065023100870b556bfd77fbb2a02774d37dd90897deb3d1bd0141fe8622c40f26a095dba8bcbc3d7e377648a613497e9ec9b5b76402300b79283933b32a048b5a65c1b8df04030209ab1b05ad7b91823bc249a403879d3e8163e8fa96b7d50deb3371dfe1e1a60302047c435bb50067306502307a6d1843349b777008a773a536f51543902ef46274b7b64a7c4dbe03fc251866d66b3b7fd62085125c03bd5becccf8bd0231008f6d603564f6dc2c895789c4ae4afe4d133e41a06b4505385222fc9a897f67bfe3cff37bb1c42bc3735615c41f00c6820302047c435bb50068306602310085b968c5f7b5b2e2196ecb733feffd5f3a27554b6e4920625b7ed2320b25fb17055499734f34cf5375d7f3eab6334b6b023100d17d4bb4a1511ebe7cb0e9d7977e51dc46f792eec05c062c00fe2cc9a0e0dcce002f41d559a13dc096502c7e129b1b940302047c435bb500673065023100b5d815218da381d557d1511fb2d4e8bbf6bb2501f110d7a901a7358b44e9bbcba9785b9da13ce06369265aa2d68c55cd023001b42940ac3e56c9ee2dd1c9981be897b23f707ef1059a01952eed1120749b47e626ba1ddd23bc9093ca2db464b9a8be0302047c435bb50067306502303536b50e7422b7b6af79d819f97ca13a4d2676c035fcca4a429e4dfa8175beabcf52157618a162cb55aba93da199611d023100a9af9fce17e9469bf62228f04c1962321a408b3952517843c3e18abcd5f6c5123bcaaf3b44462bc83edc6fe150c740c90302047c435bb50066306402300934fc06c5304436ffc58abf5421166ea59b5e988f6f68aa86500dac933f64405cf7b0383dc7aa9b2cb76c32b4ac15da0230556dbebcb66de5dc41fe4bdd3f99c59202afb72fbdda6f713f5c4ddb720da7b5149f73d7678bf603b27fdde436f812be0302047c435bb500683066023100c871d794dfd4cd2b34add7ecdfd712084b50f21da54602f9d5a52cf57a7d0b4cbf1fec884e59f0e645449b1099e0b298023100fa53116a8c3fb9683918d700375984c7c4e61b96a71cf767b01b565bc00d08ba828b05cf3da3e72ca6c14f3ac37f43f20302047c435bb500683066023100a8e10db82edb99e5b53817d50becbd1db8f14ba473f518e7c09d95cffaa1e534694d87ab578fc48d5dfa72ba45917741023100954afd76ce24a65a45898f28317b67579e3da145e8615dd01902874a88b3235e37e5b72eb1ce3e153f790effa8bf57950302047c435bb50067306502310087f731570c64bacc9e5b6f03fa89e8cc137186fb21333855c0c6aec8f2cfa3bb08f80ce369302a479886e3c5031ea9eb023002591582c0a9fb12b6f0e7b064038e8f67590f7701c303feed06ad2ee2bcdd2147c7d145405d3cf948fe1641c82741c40302047c435bb50067306502304cdc7fbf9f11994578483162df690658cc89989cf36a26448641745115c534da5332a0ec6ee549ef323e4c128026eaaa0231009cd2276030f47d882b4a2fab16b0fa798d721f9fb449c29503d8351d959ec9b7b4a897576f48cb1018ee516a5e6946570302047c435bb50066306402307699cec785550da431bed0105f120a72fea39759d290e6a10afcbdf544059154c8d2442df3a56050e5933fcaf9217b6a02303847c18679909144a8c4952c67c93167937baaa9c52bfe4d8c1e8e6f0b4004630d97381749f9fdc073d6f5e9e9dea5580302047c435bb5006730650230635157b3a7b50ba7a0372b952938d87fba9def71bc4f9abde2571ea7bc63c1bf4e29ae5983fca7e74285b618410eb7c4023100eb9015c1ee41af2419748bd2c0ef63ff1b4f33c9e08e7c700e1ecebf8b6004ed2e92b3fab7ca44379273cd6eee8fccdb0302047c435bb500683066023100ab1632861c63058253a43f9d4eec93ceb657f8b991979fa671303104d6ac3f232f83f10eaeec855297ebd11305f76754023100e8324facdff7900f33faa2da1d4fbf51e37d5e7dbdde26f2670b64ed065f327ab2cac531b0d66b1534f36d165236ef150302047c435bb50066306402305435802c34073d54c317f1a500c80e9b133da2a32c2c360e9ef8b2575ef63a1e857ca529e0ec221ce6c2369df0c20c720230277da3e8d15ff7a1e87fecfdd3608a20f1441bb4cbb77013af079274d269880ae93a9a28836b21f6db10ac49e4331aeb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100de548aaad9cd69ecba1fa723fad72a23816e7da69bfb0ff5b5a8653ce81bbcb866639723145fb848ba5fbd0ede4a934a02304e47a91fe741cb70aaacbfd3ca75232d52dbd8d660ada98dedd43a0049bc4ea8a8080f1e6ff30cf8676208314a4c933d0302047c435bb500683066023100da764678a3e7962055a550b36cb21cfde3622f79b3cf849ce7683403700088cf1917ccf57bfe2e8c4fad1a478acb5a22023100f875b73120466b4bec73a442e17dda02b80c5c70415056957e11e5b3287db90d923b44ae56527c5f233b211cca3436a10302047c435bb500663064023100ca2f677ce2306e669e69b0e20df51e6b1375cb2df6831826875dea8d8dc3281e288a394310e144d496b7e94f7c162908022f34f462870bad593cfbb523ea37d6431698d840e2a17c89c6ebbfdf80550774216cd21b10bf8990ea79bc0cfd510c970302047c435bb500673065023100d64fbe25350b748cb0696cc5536100f0c04913e6af1f3eb3da214776977e5f44fac46248153b183dd7cefe7f5dd4171b02303176557b1596b2f72929de19976ad81edbcbc800502c34dbf0cc9cfa395474d27874c3927df08e099f1dd6dc587d2d0a0302047c435bb5006730650230627e850dc8f4dc384c4a0d7d831a92ff98f93753c8aec06acc5cb5940e9ab4dfb9e73f2c718a056e7fc42a9082c6e16b023100909f956c5b6f62985e664030537bd0798d290db9beb6609a7941190eb86c9275a1b9f2ae72d67605f68fbcb22c2d9ba80302047c435bb500683066023100fc6211e42f0c01b3d161cbaaceb4c126b588d1c88838131918c1333b2e5dfc22a2d50625a35fbee7e1656c40f9339772023100aeac53a733623d7242abd8084e8d0903de4e082a71a39240f2f6b7941d95e9155ef3f758e2963be493b4be9c91876aa70302047c435bb50067306502306b8117ad54a3225c85e8fccdd12eadd64aca416c9342532df047f56dc6fb0a0f59fa9160d77a56e8a12df117f7ee5215023100d0895fd0ac1a5a8ec2cd2a9a0a44dd7eac12ae6db0aa8e126b13f8089a2320bb548ce68648d1d766b59e6c42cbf839a50302047c435bb500683066023100bcd8f98f95ad1d603fa44cc0546fe30e073016f8189e93391d024eec4bf880dcd37154e7a305803e5cddcbd1bc2af045023100db2e6042b8efcfa5281addd654123543cfe79e930fc78fb401916b6ed6f65470e51dde3594feccbc486359b13a4a24e80302047c435bb500663064023076d19a615c72ce83ae24580da782fffa7e4f7ff2526551f470a0d093002b9404d237b2aa527031eb43435a3c688811ce02306136e8bd9a92af96e0b714ddcb793191d09e11f12ccdfe10ad61427ea2341ef5b5065bd388913492d856ca833ab28b8d0302047c435bb50067306502303cef4c8d46c8d1d804bc60984d294c4ca2108c63ceac84d1974950d573f0666f2a4f9cd0b051085bb24033612a5df28c023100f9aef9884595588b8c377e7c6ade5b90c7e21a8bd29edb482cc6f5d8b97ef6a0830f466861332d9a5426981976eb78fc0302047c435bb5006730650231008ec84d7a9ef4b259160ac4636178f40c5b25d5d9162a4c60e164460ac5674c00288e30bd5143254d5b10f3d2d8a3c62f023004b1e06ce0c7d970b29a4847a5065f22bfb8774ae3a2229e701568e02426f071c552e290b0c975638d92fb44c7ce02e20302047c435bb500673065023069bfdff7e7e2b37eeca635d39bdb0b231977d9f3ab0b2f5b900f4100265f6523bc21117b8d77219026f049bda0259dd6023100a5ca701e772a056940d364794d0d4e7a0d7b81eabb3a3ec4451e83eee1dbed629af2c2439f82c1de0cddf0fe0129cbdc0302047c435bb500683066023100b1f17ebacf3c930c07006a440f6f30cbbb5521b6948dfa932d71ed6f57c31b4f9e97250c9db2d0b5e19ac967aaab65f5023100bf1b0a75201710b44b9c70e9144cb8c669a75715e9fa2e8550cfae6b5d8754460eac93bed792eb2b138cc4cd47f109ff0302047c435bb50066306402307e43f7a49f8e29e60d38f1a23d572afe911e287116155803a1da8ac1ea0030f277745e733161516a543d6fc1f4fecc1202302e7a9cc77c3b55e05e299e7625993c122e9d9e3f86bccbafbff1c81166b4c73b5e827971fec8b31def268f8f4f9ba55d0302047c435bb500663064023021ed6243e177b69bc8dea5b4e93bb6b7a54a3efd3f1a47133a0e5f98a42e1917894f23e90318f803b7b50eaec6231edd0230016afca32457f68acba61f2e200ffcd84a3682e85a9b762a11532217023783564c00d36fd36ba49462183f48e27124460302047c435bb500663064023004023d7200611d02d6c0deb05657065eea7516530fe68ad72aae7c67ae73efdb636a634ed80c50507b646d54f4c8a9260230509b43f054f0e34d3bb83cfc08ce79f15a4d88391bbd77a95e7442ef243169d90ac21de71fbcaf6e8edc520698d4699d0302047c435bb500673065023100c85cdebdbce547eb6b522bf4b43053136a1b4918907dba8725b25f963e8704feb01c9fe54eafb8a67103acd20d5fa4bb023044b52095ec8821cafe0ad90f3ff35255343e6d630eca3f41b39cf73c0f8007b4e5c41d942e65f6c2f43d034e67387eaf0302047c435bb50066306402302556f531c9321cbd21de8849f85921800cf0fb64782e27c7850b5cac8ac6dbf32592b6017fd6d98e5b5b5359bb31f9f0023011305f01443f074f928755d8ec2f56bf27b9367fa8ea535a58b3543e1d9875a1a29a4c3d57e644f33445c190f732b7be0302047c435bb50066306402301948cf22f2a94ed95d160e62331de08f83d3fbd69ae353e46ec69416e09be24646b393de04d7c7790aa7793322b16c6902303464db03a5df09bd35cd85a5c92dabaf0f89b21867b995c56f124890a312b3cf25c67b54cab160fa3885c4b1755bc5220302047c435bb500673065023041a7ba0374256fdaa2069dd090b86ac42fe7bd25c4491c658343489ba4c60bfa4d7a40b523b9aa692159ba5bdbcb7a71023100c307d9eca1c99d0db03e309a5a4b8088106c480681a7d1d21b36a3947b45481bc6b8fe5e07043fc8b8312ddc36bf9daa0302047c435bb500673065023100b83d2e6f1aae679a46a99584ae89431be22717fcf3eb4f77ca99e8daaed34d0d4e4712476afa611a90839dc70f33317902301b605a1fcdb07d2c948e1fa681c3516aa6a2f4e790a036b4aa4e28efe781fbcadc53f5f3c800bd2e96516817669ca66f0302047c435bb500683066023100b69b5a47b8d2c5732028511b489befa70ba9c70f3b5ed77ab0c3ecce3d763b72364d13e22c7b7d38196fa226e6a86312023100988974919218479d41093306e8253e6fd7a11a7067cc96e9095dc40ab464e4db28abe63bc4eb69f668734ba62960bc490302047c435bb500683066023100c571f7c2c3346fc97837a22eac8038ec1c899cfb19a19e77d106884ffd81a86ce9737eed51aa0bc53fd4c16c8d8ffe72023100d60bcdaf03d5a625a0e136f45f2fec0dedc4e0a8597c38189579f85a3ec42099f3fc1b85ddd30d3b5e8198319a2310080302047c435bb500683066023100d596f3a2d0593b6eb59b6c62113c8c70fd2b5fcb859128d073857f67060bf69746aa61a55df91e2cbea3a171ffe6d15c023100ed28c008598c6c045d8c86bc746ffad669a670717f046d76ea4777850fa82584aad55b1abe4b167c65807fd3cf3899b20302047c435bb500663064023021ac7ef5660d78f6afade9563252f527e17c926c4bc0168e873d1c18f95fea8df44c91cc3d3dc26e6297d0b317e51e430230276014ed3c77414322731fc8d6770a7e4380698b0ecc04a21108ed0d4704877a4b64167221bfd053c279211b54e1ba170302047c435bb500673065023100b9c40b60d218269acab46e21f2411ce673498e02968d7cd20763284b6c06d1e2c303da995f8c2c1d5b0439c075e84f7a02300bcee27c18f6d0927351645334026416df5521e5bb15d60714c8e5d9d37cedb65adf436fbcbefc959a3a80f1d97b8e370302047c435bb500673065023100b30f8bbee2d7a9d80910ee03b2b0b948e9e2e41c7ade01a990e835450394c31e5f35d21150a462d81549f54f33466c9d02300c2f65c538764375309e8132a90fbd58e1b38aa49ed27fa8a850467520400a1f10e27aa29dfdfe958c3c695258d9d2990302047c435bb5006730650230543faa73e36f3d888abf8fb2645d9c674077c078e4f4af63f72e887b6bffdbd9291d72aa44dff4657cb2776ec9d2c969023100eeb069e151666d39d6062a30ceb81a2debb08ce034460d3a8818447a63e6baf1a6d1cac1aefa75191e2d8be29a27a7df0302047c435bb500683066023100d360f324dc82009d02991f944054ea5a7cfb630e609d9bf7f32391f18b58d26377579bdbaba713c5660eb63c3dbd93b0023100fcf2aa2f1c894ffe86906aaddf68c1907b082191bad76657e6ab3bab910f9414b2ffb52c8ba3f4d9d579488f773d5cea0302047c435bb50066306402300e137de4fd32e9919a1324b414a0a11afe4a693d519e9bc0b79fd1fcaeb753898ef2dd8bb1ea928bcfad7a360d0d6c33023021dbad11ed252bfb1fb64752ec784d77cd6d23cff3ee45eec51a6d4f3f7a3a01d16d98ae057325cea7bd77c7d76605010302047c435bb500663064023020124feb39cceffc922d869d827d8c7508b5d300f21c4b394cd15c4219e1374aa3d18691a21f601852273769e2b6184102301f3594b1bfee34686f82a17d0c77c377e6b4d193b2de8e54f0079bbb543b18c20d79a5296eaef941c7d7f474c280c46d0302047c435bb50067306502301a14756d3336ada3aa99aa2ea0278bab94f64e639f30eae5707390e68a09f127ef6a33a37649d4d9a1054fce8ed231f7023100eb898cd14b9c0ca7e627320e5042baa167bb482e359bb30bc24b5fdd98f401336247ef4a24a3c34317bccc36966c9b8e0302047c435bb5006630640230236ea1f0bd4ad3824b7be3880525c12a23696ce52d428f8612c6a2aca5239923a6445c2920685e75af29b1fe42efe73702306a880633b0081773701705c5bdea6dc7e0e332e1c51e92fd90aa8ab1553e9bfd41c6c4aa1709c2cbd5febdb06a4e09960302047c435bb500683066023100a587dd411819372aefcfeae042e1aad8d3c1eae1084ba7f9c679e0d741f340543ac579b30fb516ef46d4032e6d718e8902310098c335eabc2b303ecdb53eb88eaf389070b57ee43502bcfdb1e59f7821786a3597a7a5b6c87f7d99f2325ffa778f30e50302047c435bb500673065023100f85a658e6b08e3f9de6fdb378c3418323f95af8f62e5dd8c2383e063ef3f41465eeb17cbf5c962761515d37a04730a330230689e3b1033f3066e4fa5cb224516183fcc1b0e35554e2fd4361b14b2c21f5f0c2eb2fa95f9a266f1facb60c4450e8bc00302047c435bb50066306402307620c7796b4298ab3e469299bfc827a02bbf0b956bead57b33b28b4cd98bc8ad0e433b00e579d6b75524ca41de3701c20230184290ba3072cfaecf33be4c747e808f612c0faa3f60732f556fd23ff9add2c27d245a37dc5705f91124af016f0c3fbb0302047c435bb500673065023100a82430b5aa0f87def18c1cccc88fa2014cabc9bcbcc9bb32d9cd9eeaf7b29f93ae5e07ea9e4da486604276da5e7043d9023024f89eff976e2b9e9c2a7c4b23d5c5cdd93cd07876ecad0d833deafb4c721c2eaa5ffc963b772731c3c0ea83c4d504640302047c435bb50068306602310089b785f596f8131e20cd60676f83384b0f89533ef35b208be59e3458b0d270c8dbf3824ed1931f44e5c8cda62455e6f602310094601d3bd909123e2523d4f483ae023562c361dcee51ed1ac140ff4fbb3df26f46ad83c563c3600ad55c061f9aec0b720302047c435bb50067306502306f3d3eb46f12fd3f7073f6efbbf2b4a6cc8dd2c57239f7222f8043e6b70bc5f31ddebb591666c9b15567aaec25174f3f023100d9f825db0e5f7aabb1d00e7aa5456a13ea3ac88f8f5dbce8be1c0b15a71eaaca1ada7aff99aad3837defd58750adc8230302047c435bb50066306402301c1b025171fa128ed2ae3d4cb18f56f479913d9ce1adda7293bf88fe0848f4fddceae41afebc2725a093f406d77429ac0230247c1a1b5bd0291ddec3a20b221d66649e5b12e6857ed8f3ba7a38c7ec9370367c3ade6855af7a2f32cb6df6ff4bb64f0302047c435bb5006730650231009256002acfc3d557a6b7e4b675613103e8ccc785735a79b946dfa68a0c1821b04b7f89e5bb2625326e5bf142aceceb9c02301956cf8260dfb7cbae3c8184c26f28298ec272aca2cd93a822df5c892de5cdfcd558dda2e8a09f75b3cfac81ae06f5a20302047c435bb50067306502301d5f7acbe61cfec7833cb968348e06836c71257b3462732077dfff556e23107b995a8b6132ae1e9bc4a4c0ca9d6d253a023100b5ab3e756872aa1bbe0da780e177d672696ce267f160251a9a063b3045c5afa4ecaa60faf1e42ae673615af0b4d3331e0302047c435bb50066306402304bca46994529af7e3527ac01edde9f903e27c7d8de8d3a35d06f7516d24189a9e67f4af2f32ac014dd36b69b83455b7a023077024f4ecc90d7282f503f6ececb9954d4d9b8c5401c79a8fb05ff761a3b94797dbd92e7e910d07b7058494245681f4c0302047c435bb500673065023100855fc025c9a34eee25be8b4a76d4e5c0eaddfbc43756ef63dd8eff2f78734f54cfd9ac6917d7ce8ddc80a02d0f85c1f102307b73313a3958fc56180076909ad7e49218ef93e3199399e9073fc00d0f01b439986b4584169975bd26ac8c64bc1ca2fb0302047c435bb500683066023100c574674dae8a7a842dead28fba5b2d30fe509720f61c7fb4788b307c8f8c618ab253a600793e7f38d1116a1d4964f9af023100f2202f6d46218699e84c35e84f6e2013b19701f4955258fdc84653673308e17fc6da83ce14a6aa5b2da8f6325428295e0302047c435bb500683066023100d4e8c7c05c0debb4672eb91b4d61736a2a3d4194523f2dcf74c9d58931bf3468d7bf79360d770b7466fbeef7af580396023100db82723b65826cfc8453f8421e91f4b183e1c85ce4189ecf85d3b44bad57671393ce895aaa23a24a6cf17629219adbb80302047c435bb50066306402306c6e3159a1aa5ffdbe04589c0d478d47f88a775939cd2bb878fd37c45086b0eacb20f311a905c28b38fc0a34c87783cd02304d9b06652c87e6d107819ef9123aa8db48546ace8edf802208d534b48a60fdb83a84f99d460ec6b2f69bf860c61722fa0302047c435bb500663064023049008a52e2ef698e6db32b168a5edbf2da0cfc96cda88b571d791d9cba6e9fd0624347d077d0fb9119a9221481f90738023071cff8bedcfb99fa2c1da42d729c8a682e1e5a6ed146577bf034daf55e255a5d8e318265d50ae07ea8b6704f472958830302047c435bb500673065023100fbf8e990a2afeadbd73b421bd3aea4b631352d5e962f2344dbc578f6711b1c3cfa5ec216ff34bc339a87d28856d1aa600230519db8892cee0e2e60da733aa78ade0f5501dcd8c1bca1f1b5f6be45300f96940590a8aacabc14b4bc9a28d5ea46af230302047c435bb5006730650230046607287a972b9bac042190c22e572de25498d03f2073fe0b75c1f940f9fa5f6f1ed966947b24852d27293ff2ba9114023100f781a050a6685d0b0a0905c9d5b99ff55ce5a3ef806a009d4c4fbf5078d9353083591e61591d529c5aa8943bb00362c40302047c435bb50066306402302accbaceee6b05cba7f05001d1590915cdefe9bd5251954cd4bd34263a62ecf1a0ac6d6fcda3a0c18a8d779f5b6c9d00023060f4549b55ad6fe29a0cddbf4e9e6370c01a33029e7954786a8787971bbae95818c6d14506912fe240d4c7dedc8c0e6a0302047c435bb500683066023100bef3b923ac32b60202b12a3db7f83cc9f8f3d029519ae12d60c06edb3537474cf9e0950c914380bbd01e36b425a7c627023100e6a3276ca13f6757bf73ce976957be323c4349ba37610f4c4b49bab6c3ef8e4e34849e243069e327670b5dde34a693b20302047c435bb5006730650230031ffe4fab216755202ad26c1a0ce1a0cad025c38542c7b9aa2e9b16fc01669296e137c07ba779ccf859a343aa8bb796023100af22d84ff179d81a5cda90c9291326e8d980ab7ffa7cee964382325eb426c89f810982aa19741c7cfe73e2f68d76561c0302047c435bb50067306502306d301a4fb3170772348a41249640d33b5e926eb77e8e6b2b5bf7254f3b17f429bae7eb490443875a6575d070f46ccece023100a4bf852f9b1b8dbfcc28fb2c57fe8861d4fef151dbcc0d6651d55d913777e78bab39717f49fa72eefbada3112354ace70302047c435bb500673065023049e13e4ad8f9af49843a3a9e493e5f933750a07780717f95b577afbb6dca603ddee907a06dc6f2541321c9a7e86ac22b023100b6cd0b6858962c6432917835fdf10f4bcacf7d48a6a8266c869def51d7c541a6ddff18f41cabc4600c6172c212c784230302047c435bb5006630640230212d4ffad47ffac4bd327b5549719dc1c3c4cc67899f08861ffdeac5399ab71487d437627ccc0f2c112e9e56f6078f8f02303528948acb9141125873931b883b500af637e337d1ca8d1a9afe38e6e93608064156b885b3e5c6362b01b9019fd2367c0302047c435bb5006730650230638a540753c71b4b21734991787fbc31dcd8d99794f000302adc173d9b3357a347ae248b015d556a4d9af495a4e5ad8c023100cdb64e75ec01b8fb7099b47936fe99b8a2e91f072e5cd32e5d85b5f2abae0a64affbdc52c69d1d3ee52c086901dc682b0302047c435bb50066306402303cb825f2a154d6d9403ee55bc6d5cd4ef11c94e57a42ea27b4fb0309c1051a034d2701df373c10d53c9e42f78285e1f902300bb612961bc23ebefc9f368ed069559b723f1769db4fdc4ab1250b4f1b24813de65400a2d2bd471755003b6813a921c60302047c435bb500683066023100974a32f707127c1b511d0c34ef7a96437ac11394aca00aec424a4429644f7fcc6e12f4cd9b0da683c6785764972f6693023100f572e5de953bcd7c45dd75eccdb45e83859909bd9ff64aebb649e22113026a821cec90a965c6a975940c15b344dc013f0302047c435bb500683066023100c161f2a2a7a0f10b2755c8c7033f650e98eb1f666a2580ad5273432005ac3b7be44afc3b2db70a8e7f0f38ff34d8f9b0023100f815ab3ac143bbb71aec84fd868099259de18ff1c5bda086b00f929176e5530c60cc0757c8cad3652837f9c6dcca1ec30302047c435bb500673065023100907b350b5bb519dbd88ea46d492541b727477d9df092e822216fdcfefdbc4affab4b600fd6b4f88be920e3f009eac7300230613e789b3c70c63bfe7c8aa87f2019bfa4d95f0d3f88628392af20dd1ab10c10dcf459164e4d7291b4dcb4f32f384cca0302047c435bb500663064023020063d9b708de154e741352dfcd39960ec1490fa0d08362aa9a18fcb80c761070795c298cab27fd7dc35bef7f33c874d023032faf07f6e034e35d72b7658310329b585e2230ccd27191c0c8974f9cc924ed64d370b77351f63b489aafb9e3bdd91230302047c435bb500683066023100e3c9fd5f1a2d0d136a3caa125f6e1ecabd96f4e7184d4f66745e163fa258e8259c2f239bad4ad0d01dad2dd8004173fb023100c6365ce7423ffa0d84b4a25a8064bbab76655644f17f3dd89f039ad19e48bcd032a9c2d7e7aa28479a633b9f0bcb51c90302047c435bb500663064023013cf6407fc2ad556d5dc997de696f5014d08f96783e8533b4fe716fc323deb9265dd1f00ec9033a2ab01260e25dc00700230721a64f5bee908043beffc6b7223787ba9acdcb91abfaaa095cbc3d12b0f8b59999fd5aeb0606af4304ffef0a3a841640302047c435bb500673065023017865010b3958fe0d16cf5838058d3b99de6c09d005cf52316689d8e2b2bcdcbe8bb3de62c8d79deee51c20fec9b53c9023100cd7121d3bd45be28e97c60546f850d634bfcbeee5fe66a37b0a7fefee2d71dccfb2d6d3ed6b5e936778f617cb95cc9a00302047c435bb50067306502302777b8999db668b2fb55cae5fa4a78d7a20bd1952014d7f4ff9d39077a08565d6152dc8c762e32079bd232aa9b4aae65023100854856e74f5dfaf769d4fb9d12b870cebc38e783c4c057f8eb8105f458cb0ae848dc5593b618dd47feced6c7f5cdf9110302047c435bb50068306602310096ebc1534d8ab3e3482161a42af2b88ae54877f84c2e5728d44e4d2a5353fc31666c054eab589e721fd9701a4e9a5a9c023100ceec376a299133fc047f35452f07be720143317f1aa9b550136d1cc5cb1f978e39895d3c786e41c91a8e56bb25d1bb500302047c435bb50067306502310085ff6431c6563dc26cb8c17ca1feda310a851a16733c0b56377a042aad055d09492070c6bc3d612cbbd79c41ff504dd002301f6625f6a80650465c87b47b95e2d3b346502162a8b44e4d1c0a1d6f6814d4f1d8444e3878511be883cb3c29c5ba597f0302047c435bb50067306502302473fb060311cf00263d25f087dfbdc5a6b94e1115d0bea081c4b55567c656c343a33c1ab59e6f1753eaed1ec4fcafd6023100b188fd359dc0f6d256466eef6efd4472abd3a2153ac2289f12c4ab3fed879dc1849eaba6f8d56cf7da9f5127d462d0d60302047c435bb500663064023023f94a3e35ac5b9af3a1c3d87ba9b9f7fd4569d18988325717ac47e432f72223d723fd2b82ba6069bc24dfff358286fb0230112ac18242d1571fbb49f7321f65832ab009e92129ae8109e3536dfec1e9e467fc9f8144ffe2823219c6abb9caffe8fd0302047c435bb500683066023100a234bfd99462a422c331b359136101e8d1b3df140774c41fd1872b0062d3c0c98ed24506197ad21b08b90b72041727bd023100bd6c22c873808bfbdf74bb304abd773b7e7504ac3adcfb9e98fb39c81c7a099d159b879a14fb69de2cc5f1db80d6d0b80302047c435bb500673065023047ac30a9b95c073800353ab2e10ff95e9e6c1a793ef64a15562c3d3770745fce250c6f5d12f97a1bddb9ccb569c8a1d2023100f5f346e5f8121d4cfba0d3fee9735fe374cb1b38beb27e66cf6288e4450c8b9970cd20e1ad9f69455cb9dcd63da1c5180302047c435bb500663064023023fce007e7ef72889b37cd4a87d90de164c5f4e61d508488e3e3fe71223f3b0a12b2e4a1d453182a96ecd5c77d30d3ea02300e7bcd6b4c95768ad59651710d9c19a8bba26f684e6d68727c90fa398ff821787ef5fe8a51f8302436e6ae9671184d790302047c435bb500663064023003681f3988b369df49f2bc3c6007308f81f41c47ade59dedea56db512c26d7c1edb5eb6647542c73102c234e109f987302300ae16e47e78830f7037aa9abe527760ff255273df067dbd67df71bdf19c6d88caa34a69b76f2b40a9aab6dc2bf479c7f0302047c435bb500673065023100fa5b7a8faa96f0da4d2e106fa63ad13ba57daae5e168410c77b71e2e3be0bd639f357d1d78f72b58d1f3999b34b7a8530230727b5c9e5a546371ae08f89da87c9c50ea31a1b51fbb83bf21a5929adf77cc736275fcbd761cf6d208d955312c1f90450302047c435bb500683066023100facdf403b3fd00290b4df9c26b69fd3c37a18de7a864b73337d6b7829aad7eaf589112dca3ac4937b9f1bd635753224102310081bd02d8b245b88b3b082d3e43adb34b1dafaebbb7cf5077ea347dc28c98163b8cbca41507708ce361a13443a99ddc950302047c435bb500673065023049fadfa5cfdc5d5686e5118c92adc4e44536b51dbdfba4a9da91dbe6219d4ee944465101b85b29c5bc0febe4c5d9bbd70231008624d70c30ff7e683d83e25ce166993d04b9beb5dc45a1244ac58a92c1228a0fa11d2dab147623426ded439f3e6613710302047c435bb500663064023028d98c26739dc8ac6ec51cc0757612eb7fe8b6188161e7488f12abd0b3a7d6f3a9c5fe634aa43ca1a6ce8262adfe2a050230159835d2e10e65d28ea32d63b8c39794a9aeebfefb43b282ef1a8c0f49e2b9732fc58dff223b3a1dfaa946fca2f388ad0302047c435bb500673065023100f5def83257c019ff52ccacbcd4a104198ec869a4e514b8a74d205ec01dffa35a14c3c0d601080a2e66ae92f0335ed1d002304c5b0c45c50e57cde1bec407990d71054f926d2b2a245ff1022eabae3e6d5641d1ebcf728f7b79ec7444bff5f3efb77b0302047c435bb500683066023100d140d29100d4ab5c6d76c07b80c2af015d481f374fc15f850de31dbae0e0114e7fd4a05db007f466961ee995ae7acfa90231008062c4be3c0adeab98fd8914c145b2a34a6ca5752b0d575e4ad4ae5b109a8c6d9c638246f1cc837115eb9fee5dd25dee0302047c435bb500673065023100ce2e159a6ffda881081142e647c45aac5e8fc371dccb47207b839f0bcee5e2edaf6e10ef05ff5169be57501b09edf5fd02301fcdba4f69b1581b48d4c43cb4c5d8e196966548e17a8af18b88d63736b410f733443979b8e69d3488321dfc70b25ad80302047c435bb50067306502303fd4e32c511f89f40e5fb69b7b8c5fcd17f11a63121b72553a92aaa5d8a46113b6669e061d47a2a81f8e5142b3f7d91d023100c0b3b69374e173b008c554ec9621274b4bb03298e209999b0249cc5c1cfa41b1777510927a2d19a01b674e4d38c746ad0302047c435bb50068306602310092610321e9bd38b4db18843c4f008a0428ac79196e13d3f43624f2214b90cd9ed44cec4843f7c06ed63de8bd4c0a50c4023100a2b9f0aa7cc1e6c21b30e9a0fb98e32766bdd9a3d58bcd3e306bd9e4c9e191c67715ab9a77f5b29dbef72be17f038db50302047c435bb500673065023100856115a48c152bb239749701db2b90fe3cb6b70a29d487579a9526938ae836b063197c0cd93019efb626f299c8a902bb023019d67555e9c7e9d3233877f45b2afcbed2b1849527b6e9c5a0f73c5bb7bc28401ac196181d9d62ae710e2b05571f40620302047c435bb500673065023100ca795e7df3c135a6d5830cdc858f35d78883a96d3893fb64e73157a8ebaf54aec575475efb9ae7ce1a0603d09e5ca9d002304f83d0be9c8f9b1f811a144a617a2c5a2490252dbfc1243d7edcdddec3b7b957aeea8c5cab70aaf4b3261d5ff6de34f20302047c435bb5006730650230698f0b355219eab40b47def74e96192ab3ce747efc4da6245ff2667240aa7bbd066856a9ebc582750438c4284e168ff6023100e8e1ed331bacb649a6868d7bd5e6b39b7d3075543a94f357a83993e7c7dd3645b6f240681da0c313f778d92462e9db810302047c435bb500673065023100a9ee32e43d91c62d1969459fbf44600d8f9793ba61975227fb9219390951adacac5deee788c9b7b6e1ab094862a56ad0023050047b997475e65029a826fc71499ca05eeb468683d0d6c067c2a2bd15a758f2e8974b972c72b55ef987273f011197e20302047c435bb5006830660231009fdca73f5736b5ef2edd9e0e4a3bed7386254c5c981e4f98ce0b80893b40ff900d1c05520327c4853f65bcf189e5ff34023100da8fdc06ed0f615650657726af56c62d2403d27ac0c449cc3b036de4339576b20ab5795dbe0bf89c7b9ab344b65666bf0302047c435bb50066306402305d3f244458365478f394243a03fa1740a0599f09ce99d93081e0a28774fcf06213f60d14cfd793ab5cda90b36dee791c0230514ee829e9511ee8d0bdda175216573f4bf601b2824e21a90b6d18e4b99e46ab1d883af59414fb97faf165675abceddf0302047c435bb500673065023100b5c2b319383ee41108edfc9aaad300a48872e1016e82790e0aef642cd48ebedbaebc6e45c5b0d72a67277159a7e3562302304ae923c34970dd4265c6ca3e9ff17fa1cb452365b613b9410cf47c4e254b126444ad37b5e043e3b97225e77c9a1f95450302047c435bb500673065023100b3748978380787a2ab4aeba5a05a2901aa71a97de51a54eace5b080a486a435d3d6585eedf7f61b10c7323c3c6f6bdc30230233dff5cc4380135e4f6b5034c2804cf6532052ad099ce8a1ba7248f63784973776cf00b8528f2cbee0895377d1e7ac90302047c435bb5006730650231009d7e03437f82bdd8ef1857dc77f28a852174204ed64875238ba3e7757f3efe9655302e35eef575e01b06b8dc6ceae9830230705b886488555c0d95ba2056f9e70cb2f9e15dcd3bfe9de11b97f4e88cb2a5e2f5f22e5a99824b71945c123140978e630302047c435bb500683066023100f0bf77a11010c366700e47942faf49c8bb5ea00f74869b208168763bdd35029ecd12832fc2dfb8750ba23e484d68d285023100820c210c84b98f196bdd1beffc38698707ae32ec748ce87f89c0736d36958723c1ffd488c9ece8098dfb87763f75ba4c0302047c435bb500663064023046207f774abf88bb06c2bbb27945fdf50e6be4d73b24f7486684afed8245bc10f993806575acf0a2233cafe81cd6066b023049390e55d1e1bc3f14db2eeb9ef6ad2e96ccaf7a88e4a215f300fd20b03d3cfdf5e83d9972f56fdc4ce540181b60ff790302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302984a6999161727c7188cb58d7cab161a02cc7df6f0729e443613b5443599d50e55b402f37ada0fec9f44aabf373ef49023033bd5f6aca20d80348d78e4bfdfb56248a3713a6ac07b908c90183a3fdb96bc22baad0f0d41693d8876a12c837b5672e0302047c435bb50067306502305963043958d7fea4d84e1abef1f0efc4ec4029987ab324ac8947a9a4d869453dc229fa912e9ec0256c756a5e8a1d64e2023100fa14ad67b25c3abe0331c5748f3a65311fb2ce7ae3d27b0430ab1e7082b4edbb50ba82d8d2862b865f146ffb4ba7443b0302047c435bb50066306402301e9545f72e07278e7935137add6adacde71c4bc06613227a7b741924937dd23ce51152388a8e90ef8fce21a31a89c417023059f5692bd48e231286ab758874f5910c9befe7645f5f34a93c617dfcc518e58f12faabbda49205c6f2eb42dc82e25fdb0302047c435bb500673065023100ad1540b14f57a7a2ca99207a36cda1ee572edbe2d4cc03852cb444e0d88c3a7ce1d6a0d9afb4cf6c1c26e4041fbad76102306e896da119edea8e7472906011d26ee241cfc56d84320fe5b8f1d4aeb60adda7589b2283a9415f11cf4ec36841fd4ab90302047c435bb500663064023063d8ea344c9267e8a129a66e59144f47ccb17df9ff3eb592c9fc2988ed5def1aec2599de0cc2b720e797bdfb8048f62e02300b8cccbaf602e3d4bacd7a797ec26d150968809d742c276395db730393fb4e78c088f8bfc10e85f5321993dded1bb49d0302047c435bb500683066023100f67540f342aefa2f239169fd6465b5484467758c2b2def8369ba527c81e81ab28e97b62c591f4081aa82756a59e176e6023100ffd43ffd532199374af620c689d1abb396915185de9374e1ac94bfd558703546c07fa4027d5e8e292f1d41d3531832af0302047c435bb500683066023100a7546050928bdb111f223c7a1ecc9e058c9ecf09c3c320557defc544de8c78ff66b732f14b4a214df3e63a147bb5c4a9023100bcd5e35278432248a2162bf51361645cde1e66d2c3882eba858ea1b99ce0324bf724e72491c6f6673647233ff8612c500302047c435bb50067306502310098f73c868744315b4330f36930134f210af795a66bc86bb8475ca6f293b9ecfc660373365cdeab3f84bb0554a4e33c5e02300c820e8cdd4c2daa27c11a7629ec0b95d1ce6142c45dd8e881dfaf789a0336b420c577d787ead59dabe90aa438fd8bb40302047c435bb50067306502303d0bb2f40f38318f00ba4f59b3f40b34a57671dbd9e104412318b6512c016df94fde8e6c90724c4e3f60693ce2bb24da023100c1b1190cdfa2f414bbb1e242a8f91d8d4356a20f17ee5228a4c04c92e2fc26f4b1e3c102d5cd5a73f19ff667eb8d83110302047c435bb500673065023100d351a139d3b0b99a7dd158d1e589251b25af30a834335f1003ac336fe7b78962b18625b4ccc5953886a1db1baa7c1636023051964b05d7d922f25be770f817bd72c9ee3080b51d6079909898a893ea1ce5154f71af96c7b04eea00b134875e6453da0302047c435bb50067306502302214430933af5829d7df3084051f236c69af54cdd5c730002d15c1ee49affd2d46bf30240e243461db451f7f00b955d4023100da9effc5a0e7af7f016efac811991e27eeb50b6c6c8baf14be4281361ce6e2a52def44d262cf2fea9d2afb942a7ea55f0302047c435bb5006630640230227c2352c24432f4065325d845c1254034af6e20a05c049037f79c4c68433715c5b0f745c9e3921819ef14b30947a82302301e84aca3cd79c01b53ebc6dc6a1932f6785f5566fd03537e1c633b999c8a88eeacab6e9b8cc4281a826bc3ed820f8a8e0302047c435bb500673065023100b2f2dc4e1773261c6ba84952967e0f0e2aaeb61affd5d54468f319b38b1e6fd75dd182f94df444f7d1f4b5fc5a6e7e23023011f22860245b635c29dd76c8f8814e6166bfd39ca77c0c815a4fb068c1bc50a1e92856f61555ef44469ee8589866fc3d0302047c435bb500673065023100a39188466c597c21ac337c12c4e6e40a02bbe2619deabaf8610fc8722e224f7e589ad1f070c34945f22a93b95283ed1c02304d74fe91627a8409b45db6bda05932eee60154350ec7268454ae1b45d55d92e3b403bc30377cf1afda6d117b15412edd0302047c435bb5006730650230360fa56ccc59ae84dd7c3b128f0eff4ae35eeabc8fad5f63bd843d7da2524dce56ca72d325f10a32e1c023c78863966f023100a36439e31027769f66c7d9603080eed1084f8a0ed423a1bcdb74c8ccc2184d9e69fa6fe749a255bca3baec4992160a4c0302047c435bb50067306502304dce7bcb304d157aae45af4d4cf75c7e72f011875d79356c7d4471e2765d23df79bac73d2064d3a4ee8cbf33d78c203e0231008360b747c9d40a6959d4c23e6a7fd2ac7e2b879f20819c6f83b711e5ea2a5ca4cc47842bcd1515056e710c99767d1b2b0302047c435bb500683066023100df0563d20fc85f5aee239620fe34dc4b541d435e777d8bf1057ab4bd5a796f11563a9888257274fe5774a908c2f215a0023100edf1c90c5b0336a42695798f19b38768b3f3cc7a670866ef1ab86c268cf93dbed72f93e723d77fde43d1775c0f26a07e0302047c435bb50067306502307bba8c5963fa71f496b0da4aaf1372aac2c9ac894f5c822bd1c4a7cb8cd73c247b126cade574e8b3030085c09d14e235023100a6fce51de359ae34f78d34f817177883e5753185c834ef6fff613ca88cef90b7b84ddd59411e90f05dd40081df0cfa2c0302047c435bb50067306502300b76760705ff392c4f0f8dfc573761311f359e7fa637a28a2c7f837867cd46b23a1e1c12702677078dd9b1fc3bf336a6023100f6fc405e385ee26e4ef694d7ebddbc58dc084c037e58586bc95863b0988dabd84c9773c4686c65cf7066feebc9145c730302047c435bb500673065023100abbf217a107547d598b08b859c68a263a2cd93647e439a504a45c60d60c6d69d1e24bb9a6880cedb127a90615c28cb7302307ad9c08c18ae72de8a8a38bbdc08f63a5ec8da689a924b403c5d35af4ec8d211282d59ef68696de090f7e816ec17a8ab0302047c435bb5006630640230016bd670739ad8fd7ab46b43c437f2298c0b5d6506f36a52f548894f5009b848e2298bdbf06ab267f6b364ea15682244023020d4c02d595eb74ec201e913935424ab63857c9aaab70eb9435b2f040536f5f19a43b1f036a99aff8a4b1daf6a44e2630302047c435bb500673065023100cd83facba8f30e9c2fb9049549d0ad518bb53b65096d3bcf83f9da2bad4e1214ee20cf65b8eca1353f4508bd07301c8402303f77c4b4d984a4f9b5ec950a266abc6bcc6021542d2b8e4aeb7a2160b2ee8b4fcdfa2ad35031ae270f7450debf57efce0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303c9d883941cb3da8b74d9f919c54fb6abf6f6fa182ac90175ab471f486d6e8349c9662a73657e11337e911a7837ea00c02305fd9552f6359644b18835a89456ad59f34fd58a8ef292aea5c24b14649446a48589c76a1e9864635cce21dea3196fabc0302047c435bb500673065023100f36c5948ff66775479ba33806ff8bd879d7e2927b908423bfcf16b905ce4784bb1be077fdfdc47804ee4cff8fe6af41b02307943a161609ca8086a8da875b94938800e345488b97dc3ddb502fd405a38ecf57471a3910d74f4fa482e88ca5628c17c0302047c435bb500663064023057c0908ca131bd5fd624a4110c2ddef0cfe88f4aaa3b3f37422458993623545b173bfe00f576241edf4007a532b4803202302c92df14dcf5b49c50d10007f8cbf63e0a722a62d36511a34757cae1b85e0384af6ae22893bbe94a137a91bc0657813e0302047c435bb500683066023100b195ad144eaecf895d8c5f5b5c415343d78ba17aa8e0a911403b1f0c3e4e06c05961ca9e789bd792a052e2ddf24a14bc023100f5e47e4b50bf2cb67922bdffd00a87c26e9a8e2ce4f0c697bb71f0aeeb3111380aee859546f911eedf56a12a0f192f150302047c435bb50068306602310086570e17b61585269f84cb5a7975bdd539f2611f67b29af9763da25e5e0c1ddea885410345fab8c70001f14104a8cb43023100d1a8191b2f5c3deae1cb76bb48196d0992694f04be3d56676dd383131a04136c784d09476081f86d9a838d7e17515c570302047c435bb500683066023100bf8bf6ee2d343e58582e464a9ad10c5d954d6266944372389eb3034d663535e292115c7c3957c089de7fb6e9d3fa202a023100aa4978335a88556d175e2951394b85308aa959d690fc1a20b5faa9c4ba2cda8233b47f5945975357477fc742ebd7f5610302047c435bb50067306502306e4349309ea71e30026cb21cc38b415f0ff1c4bae3b81c0de4b198b3dc18a140eba51c8b5e35c275919a3fbbcd5ef102023100cf376844199d77a897cafb6c54ca5bd59dd19bedfa7dd4473a3cda0ed6c4d6f57403c2a21eadaf5fc93bda5006193bab0302047c435bb500683066023100a3756480c6bfd0ddd58eb09505ec64fa10c7ee4d05822981c385af9886f45aca03dde18035f6e7135f84dde720c5b7be023100b32c3e2a4b55eae3519ca52a28a340452776e357772a87946bf75b047b011f59b944cc2cbed44a7d505fb5e6ad684feb0302047c435bb500673065023100d3fdae7e6d4e27df3b7f0e1c662be0d0908448f7db0beda15d471edbce24a6bde10269532cdc6d44460a2552271d288a02306c4f8d3791f52d82252e4344199a86a40a3dac14b7fb56c365e113cf11625c42bfe84822577f84f7123668b2851123ab0302047c435bb500683066023100ad87930717d5745131ae8daaa04277565cd9da6c5cc727156e425c68c18374469b5278eac160a0a02442e6a221eb113f023100ba16b64f330b7c4a4374933cd37177a4bf3bcb6bd765483702ebc56f0890ec07650584fe0d2c87f7b819b162ea2e6ac90302047c435bb5006630640230116b5afad32eaa5b35499dbfb900d51385602543679db34aaf70cd8a92dc32106ff5363104a397c7cb3f8e73f18b85f50230480e3669112487a5b7b63435daced7698698dcf9e283d9b0c983dd98f747a6cc59a5b47c4d5f6dfdf1aedd43300bfa020302047c435bb500673065023100df8942a4ab6e25381a8d5e780b5520c3c367273089f73163f9c94ce24181aba16949bca4584f6de70928bfb0f85bbda702300815ccab130043c013d0e738d0e3639a85a0cd3ea18be8bf5fdf015e20d94483e2026e839701b9d52bcf05b956bd043b0302047c435bb50066306402301cf9c190363ea8ff80eb86c28f79ab74a46dcde706832835daa68a34f05b3b9f74cdd2522a41749ce4a1208b5306b3be02300b84f75f857e9caac3ca7cceb1d23cdde2c82932c18d87619c712a77ffe97e17e208bc5e0daacb874c6b71ee3b61926a0302047c435bb5006730650231009fee9a8553f0287b4be761c0191e5ed0e548475d9e0110ae9d06c1d0bb3dff4f51ca91013cd835a6b86d1b721eae9cf1023004f9b00bd2d98f50074fee9d78e1673dfe77f148e44d84818cbecf2f81ba8d337da7ef1dc5c01adddec185eb86d05ba80302047c435bb500673065023100994051aba3eef10d814f90a4a7c2ade49b2b5fb3819af82d688df08b485de3642535e893eb4da5a2d15723419a3ed029023062a1c13499c00c2c5cb5620b6fbfd5ab00168c051e956b0a7227611a4e3c8470a5303b229caa50e32bb82b0dfb3172140302047c435bb50066306402304b8650251b42f8c698df50588c1373639afc782ec8ae8afd906a12ff2ef68439700dbd24cf940a28303472920b4a6342023061c0319212762a84aa66b4aa03a1c380235e44c9b3964c7759804c450af8b13ad1b93b03d39cef52b182b0dd7f53d02e0302047c435bb500683066023100d5c8bfe4b9531ad7bcd1fbda4760c517c7b753a9c7d1aa8b978dbef27e6373edfde7364f757dcc7058e82eb5eb2a36af0231008193ac57b8f471678f348d6880e20a437f1a77b9583d5e91ecbd24d8d2a8f4056c005e3fbdf7cca3bec0224514ea4cc30302047c435bb500673065023100fc283d92cefc653718bb4bb34d00d80bc934ab3eab0f665c7095a4aedcb512e033f75bedd83259cca0bbea498eea6a3402306381f2f18b2230fa4465fa2f4d0108dee82e74d3d9d1e23773afc261e13b7185c86a300aa0b94ccdcb4b1d53ed458aec0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230086e2a1f35ef03489af63f3c32688804edccc1d46c15f2186d40e9eadb18468e3531e1eed2e26ccd051240035b0b7bfc02300b12b681b330faddf62c42905c441ccddf34432f731e797bc5cdbd9695a5782d2171c59380311512e527cd02c37eb6820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230037c5d3ebbb22f04e5db8c5f60fd07e06c1158d22c97f6db783390550136750abfdf660f8af5e966ba5910821ca473ad0230588d356aad4567ba682280cb8971f7f13d8e8e575ae7bcb5158ed8f80143ae89495f14517308fca3dbd3d16c6f3872f10302047c435bb500673065023100bbc84461870af1396b85528cdb94fb471adbd8bf512f785e82eccaa30a6788318f02ef4c0dae407a497488cbd50859bf02300ae7dfeac14c9aa0e92956f7efa1356ad993f133b05e29e1a8c0cdc935078e2eed9cc42d02483db8d69c39c48e04e8340302047c435bb500673065023100eeb882ee09fb75782319f52b61b925b1eb7dccd403663c5cabbc550ac047cbc88d551d093dceafd6670c666d13250f7502306fb0ab179942150a84d326523255c198a22ff2cb7e11e75a9b3519d6397b8eb1578403a0b919721d6c7cacf9745b34b80302047c435bb500673065023037ef46aed2d7c7bebbb657b2c9ce788951554995e305ab13e8d8589793280081bde9fae1a7c952f643699bc4207825e4023100b90abea707999ce8408c991bb5cdeed3c17755c6e15fe90c0335b41769ae1a4ecd1aa0f72e6cdb05e181038fa016a7d90302047c435bb50067306502301dfa490cddfeb9dcf9c5f06b55bf2c80124139350194f19080e3577c5b2af43d70d24160bb8b63758ef5d7fa638f2dab023100fc1b34341b19b5f06fefdcb9cc32db255d8d57049e04e9c8afdaec80f5ab9dae7a182754944deb9093227ec21434ab3e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f71881c5bf4398539785af1e594820ead8cf4ec21f2094a2135da9484322696d7f729effbd8fe48a7cd1c7472898ca1b023100bba40332002e5949565aa3ca919899cbd35253c83c3e37c70d31c73a6d726d6b56181558343b0ae555174cbbda76b6540302047c435bb500683066023100cf9befe155d7db97f3c652ab946b043e531ec0ef867a546e5ac6fa25b870682b5eb4365465cba38fef586c30a272f793023100cd2dbbd1eadc7649bc0a08d565f4eeb112467ed6a8a29be367350de24d2a1c4db463904b056bef965176fe71f606b7650302047c435bb500673065023016b493aa05328c50f6953f3b86fab835bc09600d06a93c18db5ced37a2c953bbb6a771dfb403fdb76315a3d555e91094023100ca0d370a7cf9f79326e2d94ab9320facfb687231c3d6370990380994e29febf0832a852c1b65054f5918153fee578a270302047c435bb500673065023019e98c3a499bdf43200895236752081be3f7aae8dca5544d13d2af2b9eae0518cc086a52c6f3b27eb7f194da62e2c387023100826aa56245c0e10f16cdf65985ed29c2e37564070dabc6bedf1f4993852174e02fa5408dc65b95369326838c6b21187f0302047c435bb500673065023100b6f5b2e0610244f42846136b481e67f050aa88d6122cece8a5da1085699ea177e908f2f24d1ee615c4d648de4ed56a0602300603ab8ce9c90959eb9dc62fed5338cdd1fbbdb494d72ef2dac7caee2c589f4f33cca6f68b3b7321be7d786570ea76cf0302047c435bb50067306502307bc347bcde866edd5313c8964e5840f462064f1251658f9558b81d8ffad9853879fbe4c011f650c5130dd3af4208406f02310083589c5b1e2c19fd246060e8191b87a35f0cae35a5128119961157691462fff5d4f9b8723b613b7323c6a49efb7bd25e0302047c435bb500673065023100ea821fb771b6daa01227b39f42b478108f5a3a36f91dce21ccaf5c5fff8017c7a0d199cf8386d095ffd6f040a7c1d25302307c9cb632371214ae76366911331ae96cd7f69178761ef0d64ff4c3ef5a977f1b8e38eb4e7587fbe9f4d4671a123e895b0302047c435bb500683066023100ef17987409cf97e04f12254dcdd45ae15a4b056602cf253a2d4e8151d37675d227a1772eeb5a8c3e3bc2058b3aea13e402310092879f9c0d6f4f84c79f1fc2f5854f19f4b6f70e3439c364530e9a8535c3a3a3dcae5460357a8c5c505fecfa5a1cdda30302047c435bb500683066023100decbb4b373ef2055033fe07fe5d9bda44e9866ccec800bc5d30222d1bcd8abd4a8d7da579db53e16003f25d5323ab751023100ad00a63e8721cbe48b7af1190a5643d9b06f20c1993b96cc99e5d574fddc803c738cd7db7faae348bb16aba639ac2d410302047c435bb500663064023066f3fa16b014334dff3d71d6bbc46afa9f4459f8c61d48d5b4e85734c9b8ea3b1668ab41fca46ef66442621208ac7ec5023001673ad55b79511a3cdae7a55cca68f20e7ba8242910bbae0ead4999efb02f22e033da0393de6fdc60f7e1611b9de7280302047c435bb5006630640230545b48f003aaed6ba741122fa3ac870067f62faf666a50e4ecf47e74f5f7ed78b9564b77dfbdee6655cce80dbf376fc002304693c4fa6062988c3510d2ede8e34dc578c36bcef6ccb1c4061190df0508778253edea5e6c2e7012a21c13338792435c0302047c435bb500673065023100d811192314388acf2de6b8ad083bbb6741f0dfe6c6763c88d8dc7d358944f05bbdc23d0b559a1c588a8116ad61fad7f8023075866da914a62000db5cb29e3a9308ab14a0dfaaffe97a2b75323bf72d24abf8fc5fb031d03d74f7df989cdbbe8c12cd0302047c435bb500673065023100e8d3bb3a452bb143bdbb8993f223c16f5247d83144beabba5bafac4cb5db3bcc7898c053e3559434d0ff7cf89ec2463c023014d66939764d7868ed1330bb7720bb5a60eb3938128aebdda4d3a8a541d16e02cf222f68adfb1bf1ba284e011c6399290302047c435bb5006630640230041275553fa5543935e0003c9993f1534dd81f34a056aaafc0dbb402ed88c7bd7154a71b38336f1ab7f68fe1e217b77802300cec2ea86257bee5be551d71e9ea65baf90f04149737f3ced30acfbc49e1c9c85e88567392b48991849d881d5dc8b19d0302047c435bb500673065023074362183cfc7f0c28d0a7d71f4bcda92bb90c4f25352f6f22d1d5e5e10548b089cd9996c5370f7f000f0558a48528d03023100ee9465721dfd7898d45b20f4ddaf535ef7052702cc5ce8ea27dd7061b0c1f06042127aca63e33ea12754fc66e777fb000302047c435bb500663064023023e69aa937825b22f325e428e4fd616ef5172434f5cdf670abe1b33f0fe854ce156e30dea7e3eb865ff0ece4a874f8b0023049d183734a673398c6da89367f0140f210914436f5583f4986bee7e1a47943e6f184e663e51f7d303d5cd31dea4184b10302047c435bb50067306502301f6aba36898c62acd2447b4cd0ffa221907f765bbfa9bc9b481ed01b22e9c6d2a998c737a087657766c1042bd63c9398023100b24dfc44d561d669f13bd87bbcbd5b57cfb448fbf740cbf19d96640d31c7065f979904b47995ae1085bc133224b011490302047c435bb5006730650230052580a59ae5861bcb64f636288581301f78a799bfedcb439aa64db894ca8612d9c33a93c7c02dc35f52d5946684d5ba023100b44d2066258cf7a56038f4d0f63ed87c9500c5d63d3f8064ae69145cc0ab1f7773c939ef57c27b14dc8a1e154bbd91c50302047c435bb500683066023100e8d217bc2be5390e9656eff796952509c9d256d1d6967a61e1920990455108170129687d0d765c060dde5679f4ae53890231008620c0c220f81ee6d7598c8e7924b8c46557f7672fff6cb8380fa4ecb591b3e3087544e833e213da181da9079b1b6a660302047c435bb500663064023039948559cde1d7e960636624d36afde39e8f716714b62121ac031355878e7ed34e6d4dec881a4daeddfde29eabe1965102300de04424ef09126ca90bdb8bc1d9e90fc206baeba1bcdf81cf26c89c0c3a7935879b90f440056cdd99eac85677227d730302047c435bb50067306502301f9ee95e4f8c46f7127f256fd54d1f9571adcbfd8d4fbe4af0f286594564ad3c85d07a5ac066bae4c38a7cd8fcc8af97023100a303c7b82bc6a0af716cd48ef7a330bcdcabfcecd7e624dba77df91c01205d5d36711a31e823a8fd8866edd8e77e0cc20302047c435bb50067306502302370a1c0b37b3b4894a81d23e90295a3f4ee25e15d1c80bbc965726834e0c7397347fa516b644c6219af61553130f2e0023100914b3f3974a90c69fc71a241a65cb4afaf3eeaf3ffc0a046498acc7f706d0d2772cd8270d0a66485720bfa65e45c657a0302047c435bb500673065023100f3cd5366ad9604a758fa12c10ea28bf12082414860307e8f2d1dc52b6116fc17e44facd30e5e349da47265ccc77c3159023063851b687a6f7c2afcde460894cc85bfa0a0f81038672a46a172b0a74dae3b1c894899ed4d1ea9d5075423d9b7ac07650302047c435bb500673065023100e698e9442054d5d61c937b705aafc897250e0ba73a34685c8f33db371dae4fecb4079e627cef31f7ac21470d9ec308e4023071985fe4bb7fe6824ecbc2a73913892070959caeaeb2c21f1764dc86e68b72a6abe45b95b709e162ab2b575ed51755030302047c435bb500683066023100cb85be883a47362e82fc3f5819f9d8558e4277a5089abf05114fefe4af2ab2a98a3eb94549d929fb317c9de3c53416a7023100de6a0665041be2eed827250cd5ed962ca5a6ba757c6315ad5da8e1669373491940404c973e6c5d443d715a7484f987f10302047c435bb5006730650231009e590bc9506b3395a7659309827eb5c7eb7c67d6f631ecdc76cf6e9ece3643a07235564c6dcd31b08f1f28dbfc3477d702300f47aec7b9b33eb7f358e0cb4e9ffc9a06812d93a43ebc3e044115f2e032e96e019d8f29784bc476d285c8d6c48293ce0302047c435bb500673065023100a0330e8aa3fd91ca2f8b37d7612e33aac3a1159b2f2c564059f97900866ee2773d0bce83b9c833761846145241dd661f02303bb104562b557e37b76f49e600f0c6f15236f8767c751df15e250d056d99018215d42e5125a7aee0ebb4eccbe749dbc70302047c435bb500673065023100920fd9dbd30b67c7283413e4c488d17847e8538d3d923285ad2a79790ccac634e6303bdda915ce640a581dac87cf8b5b02300790e4b17ceec6f233ed6b4fcbc0be4c643bb0f2999da5300033c8a840d8a004171d00cf5839a1c13fd30e58909393a60302047c435bb500673065023039ae28e2b280e8570aafcf69147dbc55da2d97aa26d8c99bacc09ebbeccf4e4856b7f404c2cfe6acf7702b1355d0f295023100e1baad44d3d310e0a9aab1147049911f0bb6f0560ac717085c7edf3413cf0ecb6097f56abf795456882d78a85b78138d0302047c435bb50067306502307bcad4b9399d08aab48ad5803b12d24d355c7827a92097f285e048d7a94acb61b7b966c85666d27e591efe591480c0be023100cf8fb066679c09672a8173086fb6247bcb4ead27e7b0718c2d89899bb1f49ebca1b069d4e012964de41be5258652f6620302047c435bb500653063022f525ade2c8e0487fa2dcd3aa814a0d82e5910c25024d01f2f15cdc2c2863c9eca517690ab5f144f877eb3c21a516a4b02304d1658b4e2f90603a970ac6119ceb674b40ae81d2cc94d7a690e637c2adb6c45ed0d5204e2aa1ce5be0d9c1688930b210302047c435bb500673065023100e00353a5bbc21b304e49910735c83eb78f7fd2b64009c0881556508c654cf675280f4c4d2bf3ea5e964dcc027a34a2b00230435175d90cef927f7b9f4f9ec3c232fc311f62a1c5e240581fc484c2974c63a053f1d233f8903663cde0b1eb1855f52e0302047c435bb500673065023021c59ed8620933884bdba5e1f446b0bbeef93c89c58c6cea9c9a8d011ee5da758ee12ae9ea274f05700d1ff5e00350f80231009f18a030b90ff72de03ad540c31e06a1d8bb601fec94712270bbdedc27539bf13627e844c2199adfb0a214ca59cd8f180302047c435bb50066306402305e32846a77ab51b7a8c3d28ec8cbde571951d32592114449a29373ced00b972395bd9c90b8a93d173ca317be5f625df302305010850ea40ad7971389e62b506c70091de657a1ba27c0567dca2c5128616e8d161e9ff5c9961ab5c3150a0e242d8ce90302047c435bb5006830660231008a0ca03e99fcaf21857bca59d818f745ce8660802846752ec5e4abc8c60b43fa2a8b08d442a42828699e9710ff310c03023100f3f57c71ca4db7f6727c859c5a8a034527e1b9629e819cbc58906c67dbce2018c107ba33b5019c5f15731742832529730302047c435bb5006830660231008a67b53a1cfcef7a27f79c0a14925d9fb129dec0e042d6d1075486b4fed3071b1c81451232a256fb56ded0a26a40dfe00231009b5f5031006c0f9103fb688a483e997a4068f17f50f8a0e294ca6f8a6918b5482cf88c03c3bbb771081e2884fc2525e40302047c435bb50066306402303ea8c8a54c2ac265ed570534c20056953b524169bb7722de4c747fb412f0f7d23341ec25c220ecb4572ffeb8fb464702023048566ffe8bd24a603669be52b1a77a3e4d6c575fe092637ddd5db5e6f0fafc2ece9c4a8b200e6a5e01e03f3003d156190302047c435bb50066306402302545c6f5bc205014527870c3b9b759bc48d4eeec865ecfd85732d3289461d468b772991d967f2a623d04b05243849b7502303e26030829846335649aa80af9ef6f1e822abf1a9bc1a41560a28bf82af435b2f2b19deccb4c31f07847a48e25584f100302047c435bb500683066023100822ba7d53aaffd9b5d1115354e976e9efb7ff43b52ba497ba5b9f7991041b626b42df132f13436db524674244520ad41023100e4991b8eddfacfa438ffa7235881a644c6a6402eccdf256b1dfe8a81b4b3ae5f96a86c8630b41fc3a10325af3c29b4ae0302047c435bb500683066023100ea2b438e585bc3f44387ef480f2be19679c9b4c5a7db71b6eb0457406e50096d1c72204467a4003d5c80361933ec87c002310098d13e5cc93187983b1194de7932150a7a761b61d93cca9b39ba62eebc5eed2970966f4578ec8e673de070c373ada7f70302047c435bb500673065023100aaa95ca1e450a993b9a331c2ce86c8578d5cb99e6fff0298ad3767aa77d99d96e6753bae71a37b1e6c5a4f669ab1955502300e636c6cc29b6b9a9611231ac181e6b807859738ad003f96246191f1020947aa634f4bbe1bda3854ec8bfa87a4d6ca1c0302047c435bb500673065023100d4230228dba2bc778113b7c947dfd4533d482a6e95ab809cc1e35927191fffe01ddb000c3ba6824ee8618ec41e808a0702303d9c43669d5c85b41ca6011dc5c0390b5d4fbc6c4991e3e08ed373a2071b790dfba29d1a4d9bb95e11519f073567c1cf0302047c435bb5006830660231008b10e8bb7ba7da77f366035a457740bbf09df55f2e77e91369900e6c8875a96d874a28bf9118b73a839eda56e6038d87023100caff5b6e3c7c6ca20ce3dc27a8e6c96c6b0fe8a38eaaf04e6888ff94dd655fc998a7e1e113de604565a956aca44291e90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cc5fe0ad1844598825b20daf889a5d89c6404cfe8a7bbe826c8e194bbe41e8b6ae21f91c648c286705c46c007b21d344023051dd6398a427a75f634c703175cb7bd6fc5a684ba889c7ec6c9bc6a5f9fe2317882d3f0bd1290088546e04043f43f0700302047c435bb50067306502304809f28d2b13f3b5ebb6884a0330753f2a29273900c75dfe33039ffa76bf1fde9e500f778cc3edaca591471994db85e8023100e30b7a23cc4287b45f289bf5386324554989887d532ea4412c009959ec1b1b322a13ee13526566d24c84ba3a1cf67d200302047c435bb500673065023100d0a593e137dc4e6aafda3dac367a516c032dd76ac7b15a0b1a3f2609238140a176949d98b386cbe949eec467e9c6ce990230257fb2925103c4a63e32ec9823c1d7575946ccc52050f0544956062063da3e504da3445747a0c8fd1a476fa6f76dd58a0302047c435bb500683066023100f80a4a7e253a208251c1fefcc2ae77656d91f19f5f27d43b154c94b5602ce551ed02801ff6a4ca29c885bb15d5d53280023100c19c51af3ad79ad9d95f97647b73a9dcd5b23f9fb0794ca34e7df25e6a1e9b522d7a167d22ba09d42f40ad5fcb8867f10302047c435bb500673065023100d81bba0a620447d8dc2b510f5fd95ef6c3e4e4c07d48056bcbbfba65f8c14c5954f3a6a01b9dd4703967e7740e0b9979023078e5d7aa5e727e8a3c2a5fe58d5bd53cb1baaed81f91f42a1e202a315c30493b6920c68145940a6e15cbe2b8f20a0f220302047c435bb500673065023100d6348208b664074ede080f8eaa9aa9d16e273efbcc3fe6510e7e1f1e68eab7268ee52dd23d68c563c9b43b962e5016eb02303adaf95bdf85175b3b46375390906ee6f2a9382b74e6f0a7e3e3dc015857602661fe099463cad1540004201fa35839640302047c435bb500673065023026b8b88e1287f82b0dcca001cd7c526aeed328d45d7405f65bdc661984457914f8fae14f051fc8c22c50f47055c9e310023100af99941dfe5ddac010f69cb0f4eb76e481591351802e4f1cbaf2c4064eac85072217eff0bcdb173f66c1560ebc5cde0c0302047c435bb50067306502301475d3ec8ff010ce3d0adbca5a1ac680353a0fb98588b2b23338aaa9a816c36e53bf344a498ebd9b05fd88196adcfff302310088ff94bd2cdac09867e1dbf465c4c529eae9a56a9438b9a9d386f17f720fad3cf072ea6b05fb31c6cd0ccdeff03a54040302047c435bb50067306502302ea9a949e260ab667b1e2ff06dc4f22e680553a45ca9670ecc09b028641f2027fd33e700e2f2f5aba8f9b945bf1d48f6023100cbed6420e65330aef553ec75e0b742bb36798ed53d841c5627ae7c47be437fc9a338e0dfab4c85d35f33824d7de682cb0302047c435bb500673065023100cfdddc77ec579ff4f8caee3d253fde853b988095efc6621b73b275de9c589b2b144822c34dbb2d62ed28a08ae409666202305125dc87830f05beaea5f17cfa2d33241c188e9616431cb6e8d19e3193b1707bcf5f4cf3c735394f1eba56e28bb451dd0302047c435bb500683066023100f56409ae7c019489ac19e524a06fd6b8e148be521a457cfaa86b9d4ccd2459b55079fc43c5db80a5d7d1678d0be3e6ff023100f058eaaa323e1398238156509c4a00b6078eba549264621ff48aa6d3fbe8f59d3ff6f8ddde5d7d5483533870312d0fc20302047c435bb500683066023100fb3da626e385b74553d46250d25a2cc3a7f3d3e51bc68dfd21fd7c441ce1b3f1884819f147b6f34fa00d0b7e3049c9b80231009dc6ff1a439f57a05819fcc64b97dff5436c5dd5f89b569addef2c2da7955eaa5ab75a1654c72352224e12be93e4c13b0302047c435bb50066306402307f93649992019da3f4e61533a7f542e18d4041dc63f6596d8c9a4c0bd099711bc1a87eb10d7c16bb7795e7404f27b9e60230261c0be2ae0ef2da852c863add6165ab9f9649e598a9d226848c204dd80098bb1c45c14693cfe1a91191520c3f5b279c0302047c435bb500673065023031cb011276c60ab812bc96954c988b1a19f393656d9ab62e71f8214d6a687adab32acf3e28a9f996fdea6564eb7912db023100c7e786ad6ac2443a6014967f4e0f809894fcc6e47550127337d7ceb1cdffab2455fa60537ff0c7a5f94ad6ae27d090db0302047c435bb500673065023078a0bd43ddf25eaf052ae8c959dc41181c94006d2a7aeb1781726eb420ffd3cd7d98b7fbe00d1fc5d1f1f87fa5bd2f41023100eabe069f736c7e114b55251edf53f712a656e66aabf1005d218c64aa6702e7d7fbb561ea9b20a8cdd96da95063f069140302047c435bb50067306502303388f5219b31b17ae4103e3501a6cd891d50cf0b2fae0633a3e41927f1ed8769c780ff424f92d1966b79ac0a795c70c5023100ccf3c84524416e2db8964d598e97aca58b06e2562667df348c1781edb0e8d37cf68fb0398f7a11a175f3868658c3f56e0302047c435bb500683066023100f429385fb4ec01c8ba224c2c202c5fa8585b2a9fd1469b30199b13a166fd41a6e6f4754b7a6e4add6b99d8cca6d84644023100a901abe4a579d135f9f0978aaefd469bcb919c74ae1ac7e2953983b3d099255309427d25b0447210fe44b0da22472ca30302047c435bb500673065023040a7408ce02e07c7a8711ef4314dc172e4a40a7cb0b531f17eda70c6b05a62bc1cbe088e114eb4c11b8448f804b96b44023100b0719fcad70cbef56229d2a8d7638272f6b022e57697601c069fc2d763de69b441cfb6aaa1bf32c62039654f2ad004540302047c435bb500673065023100ced0b8a0c9f27da001dadf37a5625253aead3a31170dd84ccb97841d67f15ee237862f686c4ec4936985b94a3b48e6dd0230740e3cabc03780aad910ca6bff1e27f43fe2c78852d3911b20943bcce530551e49cf61f1f63eb496366bcf10ea31bf680302047c435bb50067306502302df1462456df2e809b3cfdf14b305cf4032a159ce1d4433a384dc3662bcfa317fef92a84593fd949808efb8adef26b3e023100aeb8d54178a92d7ecd11e22e7b471741fcfc5b4998ddcb4ce7f8d97b5246e0cd001f9424641906bd23c714ed8d03efa70302047c435bb5006630640230719f6f89178021beef530cb9144554b843006f476a1351834e053bc06024ed8535e03eee27bac16cd4dd65acc46ff30e023048e79cb51220bb017108a915a2100e4f7301b3b9e2ac4a37255f399b65063b81f5bbbdb5974b067946e857fc24aaa3860302047c435bb500683066023100a41868164cb36e73ed56d69d20a14b67fb5e8f91ef7b4ee358685207e774651f5eb3318026b20724e28348d59b33a735023100d7d252d041872a3c2fff4bce910be2956c885892a50fc1dbe33f1dde17ed9555a54f3d94840abb16076c103387d50df60302047c435bb50068306602310086c3c8dd78038b253ba3b0b6db34cc510adf06fe5073da3fff5836c79829ccac6c95bc6070854672fd14a09c568ce8270231008ff5c3a78c115b65f69fc6790731ba2b638726674c805d252b318f7dfb4d34cd592f00185bdab0e25e43488da06fe2220302047c435bb500663064023057eb4a7df83fa2e4249d4870f07a44d2686d94bdfa2ea317d8fa6cf84fc5a1181296313b22ceb38511f435cfe3aeba5902304fca1e163ce57e7c9a2391e402678c6e905b3ab16145c593e2a19e8a276185481205aae908a5469acb32d49d41c745b90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305ffbaae4045103e766791ea2f9e20cc5f31d55b643ed34247d68f30c0af42a5d4f1a96fdc49572f6775a4e802ddd8e48023100ca0731b47e6573beaf45e594fc53e9b2ea5cf6d22de9183c02aefd44493fdc83893daaae212d8776fb40d3e016ad3f270302047c435bb500673065023100d197e589576c868172fb49f4c4a91471896364f97d94477027b46adf475a871d3f9be69389e872324542f315a0bac69b02300beefa9da83c42602fb5d371691b8e50db06c3241be095f45bda3e91719fb6e5b1638bcc9482cd6fe65f0d29729c6d5b0302047c435bb500673065023100a0d6916e33e53cb314fe540e1837d453a1ea5f2f9354af84d0be135d7376e754293146c3a40d477b62b1f034de8be586023048d8b6657d954872c226accc736dae4e8bf12341efb736b702c7f61ef16a42ee8db31403f243a1a8e8423fb795e87ca00302047c435bb500683066023100c1a2b11ba562affd2069cc81ca3312a8526f17ae305a1fe9a19512d6d7ba31aed3a4b35f4e0e2e49e8f6a3112ce292b5023100f90d2c9a7ccc587d0fcb574aeadc6d83ded55e92544eca00328e72d189424acdb49bdec7e3bf62e18c2b00952bc31ce50302047c435bb500683066023100b2260b858669fd65e1302a954474e9c3270bb74757c6a444610a5eec9d2ba263dd7c50dd0f70dc86ccb4f0978a46446502310084a793f3a68fd19be2c2febdc6bcca3cc63411fcaf4ce785538ad9620e7ad9f5588df3875c70ac6ec4ceb26c7d79ebe40302047c435bb500673065023100a8ffe8d37b631f4494b803a93b233e3f5db83441efe901073517c89ab7aa9fc74b97260e76d6e0be824657ca360b6f4702303db2d66b3d527b72a41e46292aac2847474600df6c5ccafe176d131877700794a047367482046c76755e06990fbf154d0302047c435bb500673065023100b3d2b0207d3cdd72158707af71cd6ea405981ec3426a001fb550349f1e1297708a158979a2c9ee98bdfd837bde598e19023027ac64b89fbb171c57d74a9f915bdecf348956ec5acd9c10a8a69934232bc0f077400f9c9977d7924bfead2c4ce714e30302047c435bb500673065023100fc4990bee92dadb878a7d3e6c1e624a123c6d87edd35c1cd6ee6c18e2b791bf88ca6c694fabd1f1204d378dbd103dae9023027854bf609d82dd178aedcc7afbf2e4f28f4a2a47ed02b902cd41cdc9d34c25894466c9b1f6fd307de24007a14b4c5fa0302047c435bb50066306402304b8debc02b22e02311b7ff56d57bfe627538d5170528ba71ae762ff142767e0828838c9caa774830857023aafceac7440230077921fb266d506c19e5f633bb3c1553c3787ae6f43acde831f772867fbf0c636eb1add9b1faff2442adfaf6634ee9db0302047c435bb500673065023062b9d885e60b6dddca9a4da6a573bab964745ae53ce143a3489639c1ab67f248b638c11b5ac12498be841068ea5403e30231009bb8a311f578529f8a586e533d173d0629d67bbef850bdebddd5b6a272620903c1bb5921c5c732df60934d611944700c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305a508bd322c1360c616cbe0d4fbe0b27092cf8d171f9e230f8f9a547f650756fa28fad98c94c540e1a554328fec9c3ef02307fdfa2220978b66f14d79904057c022b212d97fe9eb072bc369d82df11e222f7f029aa531429c30297e4084116374c700302047c435bb50067306502310090d2ac4126ded66bc1eb5e5b16008a7a10f670020f1ea8eaf665c3f5f2d9e6dc7e7a9846a09e7e3b4f714f10d4eaa60502302f2892e570f788db95b2e7a49eacc7204da5c6e2b8c106ccf4b62e4e667dd6e499743a52f0baf91c7aa4e6fb4a400e420302047c435bb5006730650230203359b2b4d2ee1d7499ceecf566b3d9ed7d3625b12a10d9e26389532ae1e44eaa240bbcd32e61131c994e37080d7cdd023100ca1c4bfb28dc785e2e079bfe01e96f12f4396e8e994e54c34f1baa466ad50e12def1b7b750a00e05959fcf96317f2eae0302047c435bb500683066023100b94e0562d0195d99cc991cf03cd04f2d1553da27389bddba943b84af14400be85fa45acb850190a12324958aee9509cb023100af2ba3a5d25a4fa7bf105946852162286955dc323aeaeb36f1756366b20b040e01096454ced9e5387332cdc7b3da61690302047c435bb500673065023100f2e3354ad25b5422a5e06009d10730be82fa9e6810a05cea4356c55cd30b5cc4da3b452db00174a4d749dabd0eb264b202307a9680f4e763bd18b6a0de50ebd6d60f70e77cf0f27b9d5f1aa9533f9522bdc46cf0f85feb313a363c05d05bf8587bb20302047c435bb50066306402307873519651c34b05b51a5b52f79f6142ff5bf141b704c75f1387fe62c842722dbc8cf83adf78b3577b68764c4326baaa023008123e3b8a99f0ed80e9482aacb69c3626b2255bfcc4a64e5b69b2324556d0054626a16a428a1c13d5ecd76b821719cf0302047c435bb5006630640230449571e047ee44ccc4efa28082f4573fd1dcb011b2c225259c91f6c7b87f695c33c707793ed2fbaf191256eb3492d0a20230452378faa0681befdb4b5e243fd16d80c4a9330889b201907777603014b6a82a3e64a48aacb21646f2af149e5ee642910302047c435bb500673065023100fa234d37d286207556c077cbcf13769cf08a11efd4ea303880e2bae4b773f58a8619167f1205c81e62834cd57470a0bb02307d8a1f47977148ebd0bc71ea0ca49bb89965f2444fff28ac428868801e30c9ad8682ab134b0c2184a862db7e0e992b8a0302047c435bb500673065023100ac04b6a704c86b54d7933e98139ca145c4dd71d86553765293b494cf802ae2e2c089fb151c88f78f1537615b6f2093d002307e3c7cc6632bb5ac627df46e21e2004c54b76c2b4cffd9a49d3d53455ccab87811e5c59a45da778cb0f6a0a1ff6a3a7e0302047c435bb50067306502310086d5af7626b7e1343462f9ba3b946e4091a9d9936bcc78310349fa446ddb595e5cdf1c71860c4ddd55e67bb47c8b2927023049f02fe70d3279a5b48d5ee6b35d89dda04cd2b1e80af3bf82f7c45e34be5e28f9d7f10469bc3f67c00bea8a141882210302047c435bb500683066023100fdea4cb4c8b791448efd6c3b77e065b5582fdb991e47a0b63663a19389ac1c3474d7e9a64bb260461533397390e28d9f023100805d2ac1a1dbbb1580898081b48ed1e8fae383548055473f90faaf9a7fe94914fff3424999b6cde254d057eb70d081ae0302047c435bb500683066023100ad005c766154c599dbf86fb2d7962b51ccd5a71dde0643957a35103ed20e367deebf93f9030adb5081d6d254157b5cfb023100ae1b2ed76700377d45b8c6f45f4e777301b0ae7373b3607506b6f8069b66958f91d070e6736cd9cfc46ede6a4e6b4e520302047c435bb5006630640230077e81dfd9a2f1d4b5be20a68c40d69a7384c4e8cdfed385a16f4ea6fc3bbc2da71766effd99e81e0e8e4bbe595adb0e023011e6b048017aebd583b7238c3a46b39b184ab0ee39512d60f6a5cd7e45138bf612a25796223c0cf715a4f708e30d621c0302047c435bb50068306602310080503725d94c12b2be1d8ee2c8a8fdfd921a4cb12871f6ec1cdbb26d3b5626a9e4e7e645ced304af94ade9945bd81ee1023100a186ec34ff0cb6db13bde91f4c54f614f0abe208bafab771f694434e576fd39986864e24d85517c79e651c76722a88740302047c435bb5006830660231008c9e37d429ed884cfec9dffe9cd69cd871953f4d53bc0523ffeca471ed31fffb559c84727e03b30d2361bfe03e937ce4023100aa13ff422350a70bfc589317d46c88cc28e164ce41b852c196d3a65a7b8dfaf6c5e8c914baa19375c4eab550fc50b30c0302047c435bb500673065023100be4bb65d19c18243e7c4666ae9a64d1673ffda1e6cead65af7f969ea065dc2821db700eea3880f38f662e5743f7aa7a2023024ef34bdb93958647ae8f4848b7fd38b0124d5adca7dff49534ea7c0dcc1ae087808fba36febe21093e6871e634a9b580302047c435bb500683066023100f0b02d048f87f1c310e8a35ae85d2017d7d27708e8b19f97f63241643b32711f51589633a60d42330dc1fd05159a1b82023100e0cd504f6cffc9d949d4696fe0d8f856e677c9ff50e3537cf5b8bc8e4cac8f50d329081084f8c6c81ad501b23e67013d0302047c435bb500673065023100e82ceed965171441972da371d24ede5c92244a2c6ea41ada0556da80ad25f4be3a2ec891e46e2f06044aa4355842a502023036ec985cc2468b312a261a636c033febc72dfb52b7d39abc44029b37a6fc1f169ff242dd39a5843f0c8f67fdab23ccbf0302047c435bb500683066023100e4acf1478d965220899696c410113d5f54f3ac6c7b2efa86b4686f4edf351ab17fba61034b055c01a69c1dc86e322d96023100c68f1d204d59de2f9c3cb43a8ee06adfb9a7aaff521771dc63da648c128c18ff6dbba5bbd40fbf128c8a060521e3026d0302047c435bb50067306502302d8054570f614b48b75b6a4420313676c7d5ef67698abee8e3322b6baa85654c5883a72a803f6ecdb8909d7da214d46e023100ed7689d9ca76b478c71bfbb946f680a75f2042f70cdbdb75cf08d0ab87623e7cf235ab9f611375168a3b241ab013962a0302047c435bb500673065023054983dd344106cfaf202c27fd70cc6d3bdd81fbd1226dca8e78c2ab4220f8eab2e18a323cb61a28a3dea658e6e68177a023100bd4272254f92aa088a166fb04de6994d9b4c38ff4e8bcf583d3b521b867c7ed602d68994755e258b67c6d39d751517bd0302047c435bb50067306502300181aaecf82c8d5455dfb9875d09895c5f8cb82bcb7c22051a58cbb76fc055a7c2390bac475fd1eb192bf8fad1f1d4ee0231008dbcd04084601bcc665be96a802bfaddb3d5a5e555b26cdd7c0d8b4679dfbee96d081e201fe102c00b2a537e6655ae1e0302047c435bb50067306502310090a80098f2944503ea637a7cefa2ebec38522d8fcf5c13360db9e6fed9fcf515e5d9b2330e22c09c2a6cfe5d4635df0602307bc78b00c2264b3be31a4ed76abaaa665c6f0d56c997e50987ab8612eb32158b90bfca354d75cf4bb6c6150c4c3095150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a07424f6a6b64025ddb5c6b119e78451d2353d36f19b531794fba406bc423bf16019dbf9f4860e8917f444042b6adb74023100f57064713eb8a6bbec47dcc17b326750347c6832e36690fb120758b1f37901c87106140b039165a5cecaf5a0c1e823ba0302047c435bb50066306402301f3bdfac3b5f3b8722dfe98ec9f0aff0fef2baa6fc43f837bee03cbbb4549865362ca200ae8d9c050943b7fe79f077ec0230506067dde2174271a9402cee1e3b4a2bf8419746fdb8bda275788cd04d831c8f42d8e1f31683e651c9ac4b72580e21fb0302047c435bb50067306502302901d246ee91dd5a05e54ca94825ddaec83dad397992d21b0096ba6b134e91a0ebee0f1b4201693eb6f165b9e33e4bcd023100f3ebe62fd52c1af552668b991d30f7d77239275ffa2e2f8685fb2620e849f27f5a2dc6e2f79b37c69714849ce64a84030302047c435bb500673065023100c514ee7192dd64f5349e88be2f1626279459b8085bc5e2183bbd9abd9383cfe0e1b5251cf94b4a120d9ad882a9522e8802307932ec2a463ea6e3151a447537a2f0d17ba76364244d0d295fca472caccb3c5a945b8afe2dadfe28b53f9aed020c42b80302047c435bb50067306502310095b42848c262b4548bb4e205d651d56401681ae58fbb9e6940b8b54e4503d19f0c75048ef7624428e906bde8f52d807b0230180cdbe83dbb98ed53beb60b1effa44242bbbbfb800e609469742e77a5c6d2a2f8137a8d0ad80f38f4321eaa3e849d430302047c435bb500663064023053c5d90de0c16c34cef4718f67af0bafd281cec3f9b02a9b8197c5575ddc486562db92731f1cd2568504f2145b2d2682023069cb94e8bc3b824daad10f5a18b3afd7a2558283b73dcdcad2c7c7d79bad461f9132a3e19913530c621f0382f64530dd0302047c435bb500683066023100a2a8c2b7e782e17dd235c8a542f5206163f92f43f39d0c7527da727fabc2b99366b98027a642021f707c34339fe3117c023100cf2fd0347f08c2487e9ba504d9d6d8ccb82815b6e143a87b968f10baeb1f0ad21a7bdd606cd2503b7e0905063bb01f890302047c435bb500673065023100c62abd7d222232c4f2f47c82730581baadd82453660b801ef77d16bfeb74c26bc61c498a8b9ed39fa41ddd52867ad629023070150feb92285998a47609f9a1edbac791b6b5d3541bd3eae4b1979d5f3bea010708715f942ebcb2dd607aa56f0e69b80302047c435bb50067306502303d1196a12ff767e5651db797196c8dfc95082f481d7ebabc3537c5e5bef8113aed25e0e205ba7a460e3c6a78e1265c0e023100ef42e843334aeb48d54ed4a3a6ffcbd8ede173b7adb9a3e3161ab7dc43fd8470adc3e829bc848459ba4216091275c1500302047c435bb500683066023100d328b2b7d48508917720c083f26b727750406d2898dff4579fa03986325482b079b20f15f50c7032cbbdeea9377fea30023100c3ed2bae068f71e33323fd2207ea61b16e46c83760ace6c828b3070b35ec8d9b66102bd46927b7be9237386b6d21663b0302047c435bb500673065023070f03777568d4d13243eae6ab9c564cea2219ebe8488a96852545010f594e5dd5a29e9e9f6f0510d78231aba7ed16219023100c342bfc715c3b10b1448a91f0ea66cf8841e09a16e6c25cb80510f3d3a47a06bf736215930165841755a33b7589686700302047c435bb5006730650230339a8a591d0b257f2a740f5bd9cc93ceaf914e2ead878f80a6d30b0ae296ade7737a442f653a540c554618b18da6d20c02310087e93bd55e390af4ea7b4173352360fdaf9904a70523d22ac40bc56b501871e2dde42752325a6ea0b471aaab9b1a3ecc0302047c435bb500673065023014297dcbb9ad0bc892f09ea0bc9ddcd5fbeddba6c44d11c0ab9572c829c7792a0fcf8152617f1bf4ba2ab10283baa4e302310096e5de6075b3d5392d4fe6f0becc545f2d07d8a47dc06d80bbcc29d3e09f8e885427f15169b8a739190a6d587313f6f40302047c435bb500683066023100c0232a92dcdcfa9ec21dd8128a7fd03e9ac316a6cb526719ea3e5b52c4e97a1d54151ed017ae11f5a238ee3d3b2e119f023100f8f8c092132cbc5220d9276277fdfca153a6dc799c8f3b93f1e2167f988c997cf05db3af2c4d8664a98cf9b7baa5b6d30302047c435bb500683066023100a680de4d94b3dafb72f2f987a7241588122f999fda8780c99e9957fb21d44d327864dfd17baf90982e171d05c0ca4e72023100d3ebec24ff34cfa4ff2bb836ef43950e2a991eecd6f1da661b102d100f021b5275d09218f85e2cbbc26bd2da8ff0cc690302047c435bb500683066023100bfa7b2fd26c0678b12e38181e73a4576af5263fdfdcb7311aa435e8a08e2f9a2c60adb4606bf5ecdc1115981d153aa5f023100ecb5d77ff0ad5f31cae4774348a64ecdfd27ac488b41ffe08191f2b6a50a49282236d3774b31ed26cbe2662e775c651d0302047c435bb5006730650230382f9a3915d2b11ab22da8b80e7ef3f512b67c531cbf57dbd048ce4e5c8f66389cce572c78370634f6c5c5de7882b0da0231008601f6e2895e0eebc1545603af5574283ddae6084c0725c0cfc16cbf9b41746d0aaabd9b91ac64933ef20fb42b49451f0302047c435bb50066306402307104896e079e1f703228faa9bbe9d679fc1b1723b276a17ae27df7b7fcf7ca4c01c427421abb2c54243feca89d783400023071a876bbeb892f9b73e7faa9b11c44957cee03e27514adc199c1076e18d4a6d6ff36d48d5b180aa816e955b97c46b3410302047c435bb500683066023100aac6e1f834506dbadf9d7cc6355809ad76cf5ada7bd3479eede345800d7c1d2bed80fe5a5e04148b28bbab630b921bf4023100dfd34e5997a21ea7342e2e9a5ed6d6b125888c24674674ea60df0f9c3775e8d7913842ec9904b5008c4f58e68fa7bc0c0302047c435bb500663064023027e79ecd07defedf10936505334bf8bf620c81567c221268c3027f8b8e4c682a27072b77644cbe43cd1f6a549b01ed86023070b186123e74256cf661adb546fe2d6300d17b02f71b5063bebc3d30356552258ae890b0523e321be1fc3abcb5fab9040302047c435bb50067306502302bb7c4b5453a6ee9b87d585f282d7e5c87342f98ea0ebe8e48990f389320b29ceac49418e7ac98a18484521d73218d7f023100a9e3dcd037c71a43d35bbeab4d4e46d63723268e629aaf450f9f84a13eb1f4f4b82462508fb590ac9abf030baae587c00302047c435bb5006730650230732582472d386d316e402bc0d127e5e6acabf1095e5b1e2221f5b148fa16d93d5352beeecf31b74949a224186b0536a5023100e5d636832c721b3c316eb4d2c16fa5fdb1654ad513598c90b50a8be8a798c5a1731c63fdcc0fa582e814954ae8044c6c0302047c435bb500673065023100d5147254655f324b5a4cd057d0ae3eb0ee875e270a945c8a10470ec50d7d8f374ee6c83df794708c9166d493c839547102307065feed4203077e2bdd2721781baa5dab1a8f86d646290d37450fa5f8d6b09c6afd20cf92cae0c9d7caeb7f1ee3973d0302047c435bb500683066023100a1daa363f262da4de8da15c16ef5e48098300c90cfbca166dfc098c7eb4b603e7ddb76b91cd0f6892304abdd7585bede02310088fcfa9604a07997603e6c86f0acb3040b24b4f7336ad933809f8c536fc4e8c449fa74d8b1df865317e9f260e10ddf8d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230459fa818246963fe9be9b0d2c7a649999319baa7cc529ad5850d02ce166d2e06736832c7e6c85e5fb8ef0da7806095bd02310088dfdc92ba2aa3a15cb3098b782f555d7cfb6da07d0be68470354757ca465be4a0478727c2224b322c00fb5bc07852a90302047c435bb50066306402300251f9c202dda8cf6bad99047b154bb0e66e7bd617bf30dc8771963ff4cf14f780f74457eff043fdda66e4a6a4e8cc5502303c8966fa277c6efa8654d938dd3e1c5bd416c7706b4d9305a3fab290aa891c4b252152a780c3c403a76633d629bbf36b0302047c435bb500663064023034692d03c0e5a73122884931496a2d85f2c3129b8b581faa7d577ce99fcf1224772e7c06374c050d70e12e9f28286ecb0230246fe172ab0f4413339bca401d3e34a9b11daca91a7eee96558611efccf501cef07e6bd30221c7f7e9fb5bec96702bc50302047c435bb50066306402306ba79df473ff888da7b92a8f2818515085a595b1567e1be60d761476eacf9b654f83e0649e9963519de8e453b857aa4802305de97a5a7d334bd0c81c992a6d0d09dd0481815786563be973010af9e301353f4dfc54cc4623e84b1842e3459857db960302047c435bb500673065023100b93ec9e8076a5d906ac2eb87080f43558ea062ea027dcc5b58573f81e5c17c6d43ac32750d4709a4f0da9b91854546c3023043a6b9ca2613e9be1794d8bbda866cf266a89410eeeab05ee0fd15f78d62898ffbcafb764b1bf81cb4eb2c12e1119ad50302047c435bb500673065023100cee0f8c3f6bb63e9fe1d37247aea87bd477e6658e6380f58f13f98e37ad78daa588a385a203572fc231b417a7133785c0230710aed5209d33ff846060492e966e88fcef03e2c28b5c8c3f3ff76cc054408ade452ac14bd282293369b26e4488c1a1a0302047c435bb500683066023100cf9b89adaf1fea623a62d20d6d631c42a050fdce783d922a15f94cc225262c6a1d6ff99a46b45e3d6d32dd3702674bab023100d7c3ce01904b1dd91dcea577d45e2429542f9f253ec4c5e665e60089cbdb26afdc53f58f1e90ce65054ac85e2efd504a0302047c435bb500673065023100f85f263ff36228c86b4f7f389242d7ae3360131a49dd6c8892c46d272fb4bdb985ec716c0aab8dbef816bfebb3752706023026f1715fb4e0ca5f961a1ff8858d36e37aacc0eff1d3f0c14616c5c3272b5ec287d7c8efdfaa9ec8a31f4b84da3850820302047c435bb5006830660231009f4fe3a7779b94614a24bd9ef37e39e187e3fc49f6c098838b70c293060237700fa0239239b09c388fe59fddebe0c0a3023100ddacc70e6c7afd1391e759862f951dc1c91def6351c72c352abde4b81efc5d1cf6a33e18ddc0de4c198dd5aca85993b30302047c435bb500673065023100959196c2c8225f185812747bebd69b2a204dc15d01db12aa26cac8ffadf92020c60e8eeec8a94e9de398e8b33aed63db02301c9a15f6b9ea93bcba39f60d7fc7473e1579721f87dc99b6cbd542e6586867cd72142d1b0d79e79b0161106d147ab5b00302047c435bb5006730650231009ae4dba36a16b045267071a469dd44068dfb4d640ebc4de9c8c23289a6c1ca997ee0ae283fd925eadf146f80826d6bd402300bed40a9f111a73236b59ec40c54b7cce2fa51b5b95ea8021f1d89b9d3a02eb4f041647016d8c8c3497cfdcfa62b82a30302047c435bb500663064023035984125960ba27e8074f9dc5cc0d52ea0850fb10a161b9435bdba8b1f06ff1e335f7b978ab10400d37469489d3e31ee02301ddf632d8c64ec1484914952a49831462e91822478b2885259afb50b6d064ac9b19e81fbe24f3d4602fe6fc1e9c9192b0302047c435bb500683066023100913a185ae9d7edc286f3f7486d2c8569ce2495924ca9c22634addde90808086315cc8ad4fef61e42ca51bbb4e3553e2c0231008427daab65fd17e3a3dba2392f601ac7a4ee4351513a36292f1bb61bbbbc8128334a2934ed8476e14f3a1d9b4db7335e0302047c435bb5006730650230546a0b88c3bc23c745b671effde8ffd24c3e88cec63bdf4cf3e1bece29a703c77b93ef761322a8359fbe30159d734841023100d8590926e774025d5c7c0602e242a21f7be9bcce1e722eb2e7f1310fa58b60a8e21cfd94e02d6f7d94d6a9b7defc1cc20302047c435bb500663064023064e96907ce578d73940336a08f73c8ef646b4ae851a399c8b4672a6ed21027025c181a7ad6d4b5325917893a6a0bb66e02306c9d432b9b8bb77484c17a1828f7a2a8a60dfd0b223e48e65a450d118171744472f4439cd54b41e26ceebe2fddebe6cd0302047c435bb500673065023012acd6ef0de93f3c6037df268d2352af617136c3a1ab1ca36a892a659e158fcbaf71b311a8348e78c5544aaff8990769023100f1bf725e4a94d83401a7da0801cf11aaff15849f5d74d3acf2fc00ec2f1d4e940d0d22a86428eb67a9cc80787667664a0302047c435bb500683066023100cc0484903c13c4d4656ca1dd388d2e2333280028f683234de2b1f2fa926638dde89bd0109e4c47fa1eade6708f3bfcfa023100e00f8fe2c48e86e44fd8ee7e9f95390fe15e2b06e8b7626affde484b8f29603d954a9d15154c3c5d1b8ed9c690704bc70302047c435bb50066306402304dc597376d375abc949ddab697ceffb0d30ea5a89d7571d6413b722213f748dd3fa9eb73463554c35bf9f36a20a5eab902301e35638b2e38bfce7d6a206ff9a6fbf5129844bcf723e8691386488f7b6ec9c776773ab83c896ab14abd0659038ff2640302047c435bb500683066023100d2e0eef2626ac47ed337800f35f92b57ba2921ce5edf087fca6fa99287b81e86711994a434610a0d4c2c640d7df3589a023100da4fd339c6f1004bc4dac6496e235bd59bb3c8a7b1402d2d450578e5f592a42ee42738da49c127ba58096da3e638d75b0302047c435bb500663064023045b1a9209e4a067bf0c9f9e1b4e5fd94f345beec817cf3c113183d47358cf9dacf5357042f8637a758b054cd4112875502304ce20243eec9e8eb6ee8da9a610efe17cb7ad260b3bb27b4f392515a256f59d30d70a1799e2a953a623e831060d92e480302047c435bb500673065023100d453399f3bf2e5918aa3e6869c388c119f3a5521b5044d0a49276ba3fae81047b1fdf8237e7870852c8c08d71840219102301c5b5397fa67fb25b48fab64f08f34e158bda1d00f96bd3e428d307a7a5755864cf9bcbadde0dc17153dabae701879070302047c435bb500663064023051cc863ed82c45f93d65ae25140c56e8abf48186b2de1d8fa761492c167a0e54b247ba7f9bbbd6a980daddaec1ee7a37023035a30d4e21b606ceb2efde1907853629e5c835403975cf6ce1d29483a2a5be750e77d5a69c453507bc16501d36b5ed050302047c435bb500683066023100ad187eeeefd01faa54248f41efe8b42cdba301ce497c61917c74afc7df423eea928d268ae437cd898d64f89036b4b0a5023100e695ad8efa3045c3b8a47024aa15fc75dd4d50080bbe1b288f471d19753df602f9498db19aad1d7d91d30a805bfcd2bc0302047c435bb500663064023040d165ecf47f1c35e825c348836d0c6431e12671d1b4bd22bfd64cb5827d5923b81053c38753ffd1335edbb79e18efbb0230086ae01581827c7e82ad376cb343507b8ab72b31218d1409235765065e644c081136d9bfdecf3d5ca7eef9fdf67549b50302047c435bb500663064023004f75464591fcfe8487eee16c4fc208d85460516e099848313f49cb6c58efe1cb36d81aff583819f49f4051fce6d63b402302b8498b03a59890613797c3eafca5d0211f5340997c26f1cd00fa53d3fdab7091a31a724f2b1e2ea6bf653604fd372be0302047c435bb500673065023100bdf0452417b390623f16b3f2a23a659d82f0921f8080f909521c577a3057811cdc9213685e565eee2d6b7e179945aa3e023037b3b59c468efcec9b930b58beafbb2a29e719eaa47db0f2a439e571ec552c1f480bdb2af8bec91bf8e52c49008d69eb0302047c435bb50066306402304aa53ed9215af040e6f337182df4487e8c9acc022d4a112373cf620abf07302913c6ed120a3cd9000ce0464a813731cd0230124ba7728980e239fc95fac2900a712704096dcb3844fa7d36522576cb5ebad58f7a18041b39b8c19ef503c8832db8bb0302047c435bb500683066023100f638b92baa647d38bf02b37114ceb0fef908e345fe42b2dcf578a9d2b8ffb4e08f645adeada91df05c2c1d7a99aa67e2023100abe94077c3cbed90dd678bf9afd3c5a2e12e803d40292369193653311da8771173017f5380bc5a3540891965a4daa1620302047c435bb50067306502302b1a6841b319dc77955a770b123e4e80c143d7b45d70cf8cff1e96deaa7e5d061ca9d1a5c20cb301f9b651216a1610e50231008ee9f9ff7f2d504c1e333333e530409b76775bd6c0a6dddd6a416fb751c8cbc46a8ca054ae63d50b830d61f095091b440302047c435bb500683066023100aeea2c243730e5f6c6e9731bc3f75959ecba480f5bad6547574615174c0f322a85ce1adfa97a69390a6d5368f10ba6da02310094497965d2dd237fff8eab3681b643e60ac765dfa7075a444c0987f4126b99065f3cd38c2e9d7231d9d1b7bea507d35f0302047c435bb50066306402305abb162e6045837718569177c7fa0dc5e53f6e8a8a7936ad2a234a3c90dc798bfbe68dbf282a3c22a0cdea02962ea95102305a3585a1ec8d97d2dd0ea9876afe3b84ef5a44335d57d36a230b35e6a5ff2a80e0c3ca22e6a83d8596a1cdbc3547f5540302047c435bb50068306602310092720fde2c32da3eb8f2f08e85a451ee18ff328067c6d266f9c801d2086fd39a083551dd2755dafdf377b956aab7c88c023100cc91c40708c1d480083d5b99f7bc1efedd6b0f02cfcc43b362df05b3272273afe027cf4e5882e7521c03749f7be6f66d0302047c435bb500673065023100f6cd4974ec59e2ea3b529829d467b9ce10ec78446c67df4e46c9851364dc0b6145cd191fc67cae33ec4e7fb105e8f21902303c3fe4d5304d5143bba14ca48a2efa03e6f612bd8aa21e040fe9935d9bed79feaf9517b4ba398cd4b9db6b29cbec47220302047c435bb500663064023011f1d3ffb2b6f7d59aaa0c7b258997fb5f4d0d6f989009065f77e333b5fc8c8e5d88ce61054847df90ed58b79eede8f30230769721b71f80869a194ff9fa7029687dd2b1338c43454eb96bbbbaf6134684cb87ce1063648e67b080b213eda18c6c5c0302047c435bb50066306402303497ff58d2ecb698d3df5c5113fadb0b28c3560d98b7544ac972dcbca93a34b07b1f99961351cc5e811c3140846b051802304fdec7c42b60703d073c50faa530632259933bb5d61d9e4156f6f503394d0061b58b697e71615da2ee47d19bef03a61a0302047c435bb500683066023100dd0e205b32ee4be2c8731c1fcb03843c787e80379010c1e752d604757436dde059ab60d1d09c9c3afed6eede36cb4034023100fa76391df0e98a96ebffaf16cfea8624abf46cfe9d2f448ca9b8321d355778ddcfd41602bf7c655c4d6edf82f23677670302047c435bb500683066023100fb49652b373744d096fa2c2eff95310311c1ba70a1e4440b84b64c3f54d5f9465b0124b834c6e42a1edd0c705afc5af7023100a97536dab75a496ffbf5bb74e9caf9b789ac735c8a1bfabb316fcf5bb11dd0b5278df0c730ba25f8c6977a611136529c0302047c435bb5006730650230660277db03b04701731bdf3bf411ca6b3ed64cd265598d6d7235ac38ccc02024eee7fc2e69a2c1c1c4404becc3d0ad92023100e804f16a8b27e34f685a83f71bbfefb5f6dc20b1ea8c859e516ed7f5ced4fd2367e52c4a785c69b5a0f343f940d3cee70302047c435bb5006730650230514496d77d641e04518255d7d74d3af3dee94fa3b5454fe1211a45e068ab19e375c29e1ce9d27ac703e28ab3c4adfb06023100bcf567ca8ee59996708bc763bf5b7045daffb91eb0abf7e4238eee99d3adb459a5aad3e3a8992b52b3f231e18a97df6d0302047c435bb500683066023100a4bf8ee4520635e1c966468840322b490a5551db81e3360e3ce28c15132ade180db511e432d6c2181e0edf0bf4a6f7d6023100f0815990c1a45cb6b49fa063c53a5b2dfaa44278a6a418d7a7f9608bd28634d00fd192ab26b812debff9c6a08306c9900302047c435bb500673065023100f6fad4ccfc65a27e260eeb0b8302f9ce0afd5c12000064969f99fd0f41974d60566f6d16d2f846522583a71e0b2f436202301664c8ef7ad6e72ad3478f96b2824dff927ba15a71584368ae468190c223e488d9cf57df8b79ce66ac6b95041122d08a0302047c435bb5006630640230163a4187729fc0da63c95cca1cee41de4d1ec1e1081c2ff8f285bdf6180f46890d078ed9e2daf76de69e1c6984b45a4a023010a24f2adf71c1ce1dd7aba2cc4f1753e4784eeeb4e3e8b545d5a3261f8c192e6a488f131231b3e40bc5749cedfea98c0302047c435bb500683066023100d9f56b135b222c8d2505015c60c3dc2b43aef0523df179ab3373a9b0eccaa7c0399528e125d516d9323030132ed2055d023100ca2859ebe638e6afb9e3637dedd3f733a1135ed0e6dfae67b3f281315c7aceaa093cd85ad974ae96f381b6498f63980b0302047c435bb50068306602310098cfc2ba086b443b58a2217dec57cdc34136675b48c0fe279b50c1fd565b7a873d12c88d253b0c8dda62ed49553b99480231008e97815cda54fc1011fddd231a2115cea426effceadbccaee07d2d6d2e0f630cda8a410dbed1e4849358b05aaa5d88c30302047c435bb50066306402305842e961763ebe5daff7e0ea2c6b51a9e005c44c8dc4f1ec81069396ba908d54422ac9cfd31df2afa01f54f435c593eb023060611dca245178cf1f4d1be29e739f377f0d016527ab39b914a08c3c5e975c0fd859d0fdbf85c110a5df99c9ab2a86f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230192ac6ab98d78f547bedd2ff821af4628171a7566b6041794231c771eabd505920813e39606bdd1391712ab961341705023100aa1f952142b12ed79bc004beafd843539e872cae6ac954345124a705465017e910030f9d68494352c9ea5b99af0fa6600302047c435bb500673065023100c2edb0ab75066d73a027238819464e0e93b9ae67979f90a07ce552eca47b4e94504fa44d0ff45f15cf9f9d71e4095d3502306bc734cff8f1f343c533784463ee6ae36dabc4cc538e3566e9e283f2f096384b780f9744b4f317b599e2801328bef4d60302047c435bb500673065023100ec1dff8efa15a5fa4be151e3b011e5f4ba66f43ebc35bfc1b6e8df212293502cf82b5a7fc6f3e0958272d827ffa301fb02301c02980ba21b3de882c28a33c7011e6161a04a6ce2f45a2843701d14521deca92b2ff61460f19b868921f9a040d01c0a0302047c435bb500663064023050cbb461f54608b3fd036bd54e58ac88ae629aa61e55c96c76f27a99c4d38251825ff6ed6b70c917d962f8458e3b6b7e023076fea26409f672406a14bb42e3aaf03c2ee1521eb6a9ded077f69ef61c9fb34870c8971b206a469cbeabb663410410790302047c435bb500673065023025e27424653108e320f4635aab5781b6eb55557fe8f1cd627a6afe514a3c6b1f0dc96146b2b4efab0fd0861222a10fbf023100e48ccd8c5fd2149dd09e9fdb693e318bbc0ca99a85bb22fb47d12aececff62382a33a790042b99346ae1099ba6526e4b0302047c435bb500683066023100ed1041c8d0ce47438541d7098150b6404d2a33114c3ca90f190303514d1972ae8dce059d3d016b9b808bf2198a0a106202310093e149fdf64a24b1ad72ac2bc2a3bdaae115f9cd3ae04ac33456b0ab56868c840ac536104f2a4f2518e572a44cf4e6830302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b7fca7732a34fba943628aadca200bd4a756b22cf1c91d563fbd55b006a59cac4371eb04574901e5cf557fc3c35689c0023003c7724ac1283830af928dfa873c0e8b48445e99ca0752b51f1fececb0b4decad17686b5b16861db5a99084a64eb01ff0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023009968943160d4ca91b6476d7e0e656514bc7f4f08dc65d6bdcc1931c6432e5e8fe04aa4061f08788ec1e6ead5e6ce8530230305a9310d2b21a2edd220834c841227af1bc1226cb59698ebd7bec12fffeb55b68889290cb6ef186b894dded311edb0e0302047c435bb500663064023020dfa376446092aff4c2666f42aeb85358edc12dd6e390d731a67d2777c687d69ebd3665906f9d6c1ea674a488e14b3302302b3e64beefa44d17438b64e1088d42be94cdb722460174cace896f07e7add40126b2b5dbd813ae8e96469d6cad45ae920302047c435bb500663064023014514d922f5d989aae2f16caa5c3650c8b711aa5b3a45a3235a201333d4823b428724292ca0e70e320049a9bf399c254023026fb6e35572a6e4651746189cfc4ce67cc2e662fa1efde08d889a28a512995959f98abee427e7184cc3642133e5ce6c60302047c435bb50067306502305bef3bc0952ee39af03469959b7901d74c7a1bdc42847e507d9eede54f6026da17da8d25648d9d2e74e651c084b2e3ec0231009e8bccdbb90f8c011f38a6875938e223805820c12116bd7a5ecf3a7432507452806fb3d6bad02704eee33da7d0cfb28a0302047c435bb50066306402305ee07d08fff3ee52e795c447f41ae601f560082687ea2742b101ec7d50191cd3d07f940c1193d844d7c5d33688844a37023013c089f61e9ae41628cb0ce604468eb4e2a69653090d0b85bb40aa34cab9dd28b8305fb0571335850ec5ba8aa3e88c400302047c435bb50066306402301e43bf718c0081029b1c03892378a39913c8c2a350f4842260090664497af5c734a37966076462eb50ab8171c2e3235802302456f3ef4d5834df60df616fa7b09e5f1d2744360689ba572e408d4d9672881c1a7e3cbc9acb002f9ebcbb3604313bcc0302047c435bb500663064023052e9c6439c545987f214f47771c9803cd6d69f5e9a6ee7e24efc0c02c521a8008c34a70d614a4646772c23f1fa2473f802303191fa53f16fd24411da26584be95eb340ece40c78660023adc8121674bac40b1bf3baa3bb4a33642d608ca3e9ebd4d50302047c435bb500663064023035a3c222e958396886489d46f64e50122e7f8b8b76d8cd311f77b437744f62bc64549d9aee0b9c7c0241fc611ad79579023057b3f91ba50e6e74d8aeb83d7050f821baa0c75832c99dff1b99ca239d791f18864eb509ec8b483431cdad3e0576995c0302047c435bb500673065023100a65bf64eca46811475281b2962447c49d58c7bc40b10ab179dec10df81f090ba252457cab5b97ee68d14f028be90687d023059191364b7bfe2c794e03893e50f9e001314d0497e8d4acde9809e27b9e41cde9d59a09b0cbcf4a7eb98d71cf86744ec0302047c435bb500673065023100a391fbbe9cfc4ca82cdbb5370f2b00d6c2a24d3e267200f20341ec4560e2bc6fa63885ce1f4d00624c6f4734ea57ee8902305b759e35d1250647885d3a0dbe8aca671b77a60f8c0aafb66ca1e89ccb90db1b025369b191eafff3bc0a3c2355ae19760302047c435bb50066306402303bca46b5546da7c79405099cc2f21aa3d11d6291f846db7e4d3a66ffe25dfd6c06b10c3f48c02abd23d9420839289c4f02300250f7b3560aecd1861d660da7e346db59524784255980d053aa335a2a8664ad9bb63bc5af49385e3db2ccbd135d4b7b0302047c435bb500673065023017c639d3d058b7724c6a83612f8b068556d05c6fb9379c62e40c2f6c31213e5f8a5b1a4e03049ffb634d2b306e813ee40231009b34dd752f2f85fb25acfd1d83995176ca55a7f1b47850fb7e503f0bbbb86823c7740df53539f0e2dbea80d41ca3a2210302047c435bb50067306502301a5fd8281fdb98bef4a30d7bbe8371f5678f4da92143fbde1fde709dfbe1507268b238810204430021dd958f40f38c6d023100f3c6e8a06db18b376867f0aab0ce6380f5d086f8f778f23580cca5a7e87b7aa9fdd03d402b215cf3f7a764caf483a3cb0302047c435bb50066306402307e8dd33e7b39e535ead0b2d2f79c62574e35f5bff45c2eb1f7f8919398fc3096df0a746abba9e75fe0aded2d34dbec9102307a58173ca5e3130ab51fe71e4a0f787dab4e5df33248b70ee8d79e4daefb7e393dc69b81f4de068f55ba8da0a27fcf490302047c435bb500683066023100ef423a45b684ecfd7a454d906c8188857bf47a3a04dc3231589d320a98012b42aabe209998e073f32b55a2b4398ee921023100e5b20ef3f94fc78512ba9a2c3dd418109588ff75012a6cd6f78d738c70ac4823e4c1812fc20e7211d07be85448be1b110302047c435bb500683066023100908a3528b48144098e49eeb449ba11721f09856aff51387d4e906aced4b34ff8e1160f78eb95aa30781a00454632c13c023100ee330e6c2840acb077c9452c1fb0723dea4b83476c2269013f03e3e83d316b08f2d557027dd3b3f5f3427169d4c3aa210302047c435bb500673065023100ae6ca5065a022346d5ed7776e571fc3429b04269c8e473cf5753d3cc6714fe77f298a63dd5f970e9b27ae00a1813c19d02305b63cafaf8753f8b05b2628dba6942851440b01375d8cc7d8c331ebc1f2061e6682725b8ccea2a35558d11e9ec2ebdd80302047c435bb500683066023100a75fd6f15ae267b8adc9930955107f8ecc2328fca9e627f190dc196ac5c379a3940a474eec5d449da63ff3ad1e9e431d023100a85f5ba047a399ddfed4e40edd12ccf64e631c6fff63bd767caeac241ca2233d67d4b6e3ef16a351d07fe456481e23550302047c435bb500683066023100c8faf37b8e7f1fedb3c379cde1e88ff757ab0cccd90514d400652583e9f7740f9259a2c0a4de427ccbaf3cfc270e9bad0231008175dcda81a8d3469118ce636aa9d3d2e43955b0a251fc9979a517cff9da74eb9038791ccb83371a9077337f5b8925290302047c435bb5006730650230083685086849a08644bebf19e236b92db302eeea278b064fd036d8f84000dfe01e9795cf898e88b9cb52dbf4a003dfc2023100999996ef44c3e09e1b6d0e8bca36c95671219ca05d4e39ce83d15f49a6f8f93a4e91a8af6d1969e1204d7df681335cb20302047c435bb500673065023078e3d7accb1cde2a5502c43f71541b5139ea045e782143f294771794f96e5b276bee3e071694762385fe1021e89289f90231008892ce5b5015c3801a3302a7c66b68e5a39f4b48bcf555eb34ff6138f66f80d5085afe80ccbd65a23a22e961cafb52c50302047c435bb50067306502301d16c166c8a903c1d7b763031b3282fb9ced29e7ff15512bfe99cf6e444d74142d76dcc1f4c0b15783f26c7c7f4d3d1b023100913ef1e5798934bfdc0f38fe244b251bf8e8cf099408a0c6b5db5e50c6242a21a57debdd16d233962c8abbe6ec1db7590302047c435bb500673065023028bf49535a2b604faf014343c9a8fccc505c37e6db65366769c55ac2d359a7ab0f07be88802f665bc5bb91f36a75417b023100c178364293a72fcb6a882ca54eef472c85d9ad065d11c615a6061884020c8ed4ca0c3d7aa04efccc9f04089908e5d43e0302047c435bb50067306502303ac21fbe69c1d31e741d0a701a7d22a7059a0b3a824763ae92871bb41eeb2537e8557e5aea9e995b22ee011137272905023100a2144f1a793a5f256bab24ff5232036735674e5ac6fedc3884c94f393c0bfec473e7656f8949d534ad3039bbeb344d300302047c435bb50066306402302727af5331fca378b9a5bae9f3585a66fcc3e46ec431fdc20b5f29a8a3309750232f255ac10d255465b2a307719ea19002302d839e08a2fae1db6e8053ee90d6c5a1a30a6de5ab92e7ee8962ae5c6820246863d178fedf06ed19a07b21ef560097ac0302047c435bb5006830660231008ef99cd2e0bfd67f47cf670293b26f820e8c6368a49dc5bc46ed6fdd18e25afadb772a5f85c3bf3d2179f44fec3cba8502310099f66c91da176322593b1dc0258b546917e8b8e9cc5371f20fbf85d4eee4358b6892add2a87dbaa26bbea72e65e7c6640302047c435bb500673065023026d2f37bd6b13bcf4c3033828d48bdab66ddd9efff444d6f0e982c727f8bd31dbd305980f6ebd90c846493ddbaed0f26023100bd9c9ba0817a7c9b9618a08736170a5c09d4745ae2f24f0922d7171ae65fd43a6daa176522246fb015aab03148b58f5e0302047c435bb50066306402304875f1df62e8d102b5eadfe7f731e8a39572e06bbf268c080c7a82eb9834b6a71ec5d6347deecef95b1d87a37aa925e802306779bc60d5eb3265251b873fd2f4df7a5b44c627a192f190a9a0b52d12ba454ff0a6388d0256e403c833209562b918580302047c435bb500683066023100f012f4842d373e7103c1faa4b729033a4d2fce989bdcc6913f96ce48a76c4553eedbc2218f03ad666621f229153efe79023100c2da33408f56a041db70d4237cb96e02d41aab55e70a321ab2d5b8f563420147ca484a8633b9903de4ba151e5cc37f7d0302047c435bb50067306502306c665ff717e4c8a15cc3af72be7cf9323c8b1f377dd513936412bb65926d999e994faa11b65e68883fbb36705c134c840231009ab703bcd4de827c379a09ff299187add5e0c0e124074ef56963dc507e7c891d5d2068dfdfe56f2c8889ec6e364f8e880302047c435bb500673065023001edd9c68c8472a0ef255a316cc67f2d7869562bcd67421cbe0df39ebe204b8f4183463b8656739b20819dddc1bfb160023100fc7ada278b5f3a0170dd4d9ccdfb9c9befb9d25729269a91d75a4ae77ac692047f002e68adb93746dac52fccbd33bb790302047c435bb500673065023100a0942d891c65521809797e0f088c1872a44397892cdcf512b90e12fb41b909dfd60591efa9bdda4d3591a1c6f606818e0230670b389260e8f2349e7436ae34fdb1b16f6ad75ce3e817e7230f33f293117df38af36da1056a4e242b0f0862322b1a9a0302047c435bb50066306402302d376ecadc8af4d6eebd06ce6a7fb069065a2c9ff8f90d1075781694536e3cbaa51686b633a6a393cb93f6822b47fb76023079421932f4171f35743c2f4447152b9e8a9907e71edefdf6604435c73b12030ddf414ea75d77cfb9e049908abf6ce88f0302047c435bb50067306502304a55e0cc4fc96c772327261c59af0a8d2eb09be3c786d3d99acc46053daa82775372f7ae61703021e08081f683596147023100d562acb2bd64a4a84d656af9afb1c77f6cad78b4ff8d98141133dd17b073cd1d4eebb2b5bfeea48687eac1f2b44727510302047c435bb50066306402305f8b68afc7caedc67b70b01b2914301d8a88b54335b21bb89ea3cab38f0568bfae26adf49742f4876b5ea61e9182b2e8023023bc372b7d6839c8a815797053cdbc4aefa7bf0e513f284b904df75dea57c683d4e780bf5b05d91796913a0b62344a0a0302047c435bb50067306502301d1c9da9da80530137d81803b9bc1e7aae65a9d58782a49affea0b250fa45f322e4ecc276bbe790c72ec0f27d8ad6257023100c53dcf07d110621c55c00b1e1f79fcc7308dda3b03c609f98a3c2f1178c1ad06c746251d272e762befdc81b5f1fe8b530302047c435bb500673065023072c104999fc8c71bdaa2fec2559e364b5db2964b1381c4ce04aba7ea2073b912b434500708afd6aa18c5c34886b781a6023100d590ff76f0a8c6932827e231f23cd7242b6172f91bf79bda49c65149d97d7d77e9533b64ab65b157f696bea46a4e1d860302047c435bb500683066023100a8e406296cfd5523e6cd5e83d9c52cac789b802da34050fc2c64a35fbb0aecbd822d97cac8debe8555690b0ed34c4888023100c2c43126fc3cea805e355acae13bcc10eead4fd1d92ef3cfae3a741df455af7775e34dd0cba169eddf4de37b5186d05a0302047c435bb500673065023100889e33525080947d2800bf0ffddf5216c2a839d56d581ace3fe78a3ba4eb963eddcb3420c4f7b1dee8e5ff74ba5646a8023045039cef8b02bf39731b33bde3e77297dca9d53789c4537afb56747db1a07acc28af37c4fd705d1300aa824a892984510302047c435bb500663064023006c56f45978bf62ad18a0ff88a6c7d8692c16682f7603c14d72d3905434447dff33db943cbf17495283a0f69681a22f50230402f43826189ae5f8abc6601e6b8293e63e2f1eca6f7755abe1cd99c730b6f395955e31d43d59b89714402385862cce50302047c435bb50067306502307ba86fb77c8aa3ab5f699d4f241f9195c5a66026f82362acfafa631c60449233b956037ff50f66001e6fa5aac2f3050702310084b73d0244cb8aeefe179e878b95a78c3931f13340a8ed3dee2b3e9441864f9b6bb0f2b716a147bb09175743764056f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b094d4ceba25e971d445503363a7d8ab439eacdbba68f16a2ef75a78abf12b9f0db75e068693e1a1852d3de2fef847440230511be9e32e3afb5c9adf9b07ad5edaf8e83a448675bffe7dd8a7ebd72b51263dbe2ee15df6461de82bd9843f250f58560302047c435bb500673065023100c759bb849cedd5401e8a1923fd219eb30cab83b4434592c91e2e78db5d85a4cb8d7bc334e6aaabd2be7488011ab7646902304a7b25c1487446bd297d885da28abbdd5293f94b99cce6295d6b77e46bbb0529b83dc35d62b15c43c6b0589e612532e00302047c435bb500683066023100924e4695a06ed710fc14df4ab775e23f56cf395acbea985d35696cff5862366e380bc45328c9fb7dfe22e4d5666b834302310092d2eb4eb308eb39c2ef48bc2677541c4ce3fbb4f90ccc7c2598fd63b2afd1d713d3cf2527f7364974500811333f1b650302047c435bb500673065023100a498b24dd74005ba48b746feb1d014e241bd101eb79112829c5c2476c43e89556d5d22a26d29e7605d11accf70f1bf2602300ccfd93356edd3918084b4ea8faf76b889298f819f6eb4bcfb9272542fbf1a62c4f859d919b41f03767cb5e768976ba20302047c435bb500673065023100b331d896caf2161eba048466b1d44da4fd9a4766c959087b8007840300ee4966e3520224ba3a35d51dfcd2a11b80f1be02303a2eb8bb1ca469f0916d7027dfffc8c9452521b806dc427c5f2c3fc45ba543f0e317fdde245911e0a4acbd72750185c50302047c435bb5006830660231009904502dadd37b777a8b165d1e3d094ce7b94c770993ab6b621d208d929ec7f4c1014a2e9d44f3f8bcbf5ffb6fea85cf023100f999da12532917c83094b62807d9aa2620376979a1ac4593965e20e32a475765fe34e531b7dae905011677a02200260d0302047c435bb5006730650230058816e390db38de92b05a301863c4e1bc6146d43f4863f5ef13fb06c886b784e9f307093298c39dee946710bf3fabc702310095cb72d9ac199ad95973aa0d7f2229af6f8a8e8691a227c16549753488bcfce65fbfbeece1e3628099745941f352894e0302047c435bb500673065023100e9f4d56c3c68efadbc159da5a1db25e048ad5d92c75b613078f025e9676bfe228914cd015c024474b3675c622dcef37502304b302b095e72c6f718562a2a6c7d05e5a7db46ea842eae1dc2be9dc2f273346028d6a18cc4eb115c941e29bbf66deb0a0302047c435bb500673065023100b2d04aed9f613fbee7c67ce813865a1e16ad828e7f12d77922611bb81f7acd5ff562dd5bd24c0813b929477dc3837f0902307d6afb22a601fc6663a42c9c1afb92e4cd2a5acfe8b32a68faf716f837b00cfe27470548d57c10556e0ed37cd5fcc2750302047c435bb500673065023100895a91a2add520296bd83fcccc341d0f2404ec756c9a5374345647b9bbf9df738ee54e8236ed78a3196511de3de536ad023038f6d3da1fa2a438f97e40977ed4f569f6862fae75b24481afbb8f60ca5d768110e2a5461f8c85cc89021774e6164e3f0302047c435bb5006730650231008251737473786b41c023c4f1cf695b42b8e91a718026c06f64d14c42f550a34890a6a88f6650aab95ec0cb4e50f5c62b023016f91a681ea69cd17ca4f5d1dc05ac1b781b6012f5a7c012dde3c63c04ab517e380d7fd9ecccc26dfb10bb5b837622030302047c435bb500673065023100bb22ac031e9906fdbc760eb17a2612f61fc21518099fa78745e6fd069feed517b45afb2309d57b4e835d8ff2d4e97b7102302fa47b50c793110fa3917f18f6c8aae18145a1fbbdf52f25ba10e3efd59c955f6ec5669ed27ca9fad3311acbb475ad740302047c435bb500663064023019771f130a710936323c61b8f48552d07e75f956a536dda46d252c020de655ad7b829f4e0ba5d227ce82f2a1bfabf0a602305a99f42036e417107ba10a7a04a9f007119bfa4909ab4db9b493e8810ac97dabb3c49e89e246cab693cea2280c9bb1410302047c435bb500673065023100ecaaa9c980660a34de283999d31a625615d4ca0805485bbbbe521ae6311cf9a412341d822eb2aca7a0ba7d347f7566e8023010b805336ae23f060ace1d95eb4ed98f7a8ff3c56a3d6339a314ade664c0e5e117e35af20ffc2c40dd99292523c7d3d50302047c435bb50067306502307573abd59601b51bcb1c261a33e08febb0b2f60c67875ecbe5506585587bffda2cd46bffc72c6ab1188b27e693afe319023100bdfa4d758ad312143c4c009956737f87a603ee579be52c599380010e44ad1420a52cc9df9e874747b5afb733ea42173b0302047c435bb50068306602310085852cc923be536fc809508f127f2225d6b61e3a18ea3aeea7a57c8ae6ee4862f33df40647690e3b2a5b08dbfcad168a0231009e9230fcefa6c52b6620665219f41d2acaaa0b7a59f54fafc2cd5821dce2ce357dbd9aab4c58273081469c416f8230fb0302047c435bb5006630640230722733a87efccc4cd697fccef9f187e54ed9193dc343166b6f06002b1dc33d06dc0a8b80d86df17ac08c3fc3f7cf07e602303bc12fca66a4ea7d869d55667e981d8d2a5c504132cefc0b4e40f56b3806132587cb9663ad0de9a9223567dde44abea20302047c435bb5006730650230626336f4a852465565552c0957220f863457f6712d385e35d3817d0e2de6a653f05637086ae5348617de5dd11eb18d77023100b0c229d3d8760a7ba46b9c3210dd78ab63e3d9ff1aa832955173648874109570de162e4e599e79544b02c2f535198ac40302047c435bb500663064023029a6f86e99e8a68d4b5adaaed8aa87a0e1640467010a556cec1d4459248c84b028350863eca6976b10e158b539d0e1f00230659174f3a3a4307ee9e404e6b2cabd3b354b8de9a79ce71355bcce4a96dee0ac0114a0b159c871d461e5b136a5880e390302047c435bb5006830660231008792cf57800ec48be5c6e87a94c9f6b65a5757bcdbb8bbe2492d75c45bda1a5213fb2f22f74cbcdf117530d314d69fd0023100f119a1679e8d004fee18c24d1152a37bfa5d66d819dca3ccd1fdb14e4041debcb2eca2fdb80cec40eb9f68dde2b865010302047c435bb50066306402302d80fb964b3d3988d1aaa5b89a9d493d94aab35898a8d807abc182d7e3e719e9e4525309b3c43ba3949350be0ffe9cc202305377538118149f88641f8fd117f6d4b72b341734cfe038a523f8411a26df98a160539985b888ae6e4c3d761d018e57930302047c435bb500673065023100edfb96ed4cec3ec817db5327f82cea3edc5fbbc91083e262e651bcd3602df7abbe85121d2e2a0dae95fde6244c5ab7c9023075f0be3174ad3d9631c05174b36a687fa0fdb19306a8a3faa6366eaf2fe0e7a5f7c9898272d6b1b3e22507c896fd4a750302047c435bb500683066023100e973e4b353ed306a1b8fc8b7dee3a6ad02a8af9ca2d8a0c0c38d7d32fc7005a056ff9213c66882dca96db89410f08b77023100e0d0507c5a42239db53f5964923d287106eb21635c47d9235a88d3f1a8f62345e3f4cc6065d9f90f642e994359ee42e60302047c435bb50066306402301d61d7f2a4f89eeb6b4cdc0fe7f1ac80c0c4a640fc7a8fe63eca6e850b7d7fa2a74c4fe0fb5a4c5fdfa0f9dbc3e0d9a802303ec3dc2081e7e46efb006b7daf38e23431137dbba1778f45294c4c1df188e0c1777ce5c1643639a28937e9f6d80de9ce0302047c435bb50067306502306169cd381f78cd2bc594e5e2d90c91f525623407ecd32e48846010f8175cc716b0346c5c51594f549b88e6840ed4a456023100bddb793bd6988c5f35d7e8905c1a0f77b9f8f0b0a1c05ce73fedb6f0e4a615bb36e21ed1309080a9d7eb3dd0f6c930f40302047c435bb500673065023100a69659eeec4cdbe9c3ac85e987a3a4a46d413e4cad2e6ed7e10639028efe1ddd6fa78ec739e953c4bedcfc44440ed4b402300bdc7fffb2f80cb4891cd127b1d1a9edffb6778fa99e487c6e5d917a29c5dc6ff8a4b483e8a657cae7dbd5ab2841619b0302047c435bb500673065023100c386fe9754139d7a5e709c29112c74655507e43cfed015a35df704eba5b8489f5707c3c44d534cbadab3843af0bd0dd40230575e485f18cd5fd0956d283e3fa904be3db6c85877a18977345022be52d944cadd27b73a8961a8ee7255e1989a3d85820302047c435bb500673065023100ee2eaad5172f8904b938839f8610ce71556a05b37e4b1e258c1f6477dea569906c61f9de58eba048cceb7aa7162b7d80023024b874e065bf27a72270d6a932a072b0cf49854336b50fb781e4034c7105d57707116596064000458faf38dbfc9b6ae80302047c435bb50066306402300915636e08b765f349bea324656fdff282fce02f4abb8d4d4587ca04f366a582831ce414eaab0bc408fcd4bd810aaf4b02301a1add3941bbff238888c8b5596d931b2eceead871defa36f71ccfe711ca6469d44af64c9834ed99a926f7e5d4af07530302047c435bb500673065023064fa2baf1db715af04ffd0ec3e0c90b3c9b04d3d2bb09c16a1c27242c280a2d75ea2c5617470316caf4b98a6133352af023100f525688f909ec9ca1273f56930192ca91fb37a2b22336f0df0bb93583c73af22cc54952047e70c2e2a85f5e8a6120b370302047c435bb500673065023061de0f1e6ec8936eeedd37463f60b467bbb87a669128b09e5205ab0c50a353339029cde5276ba3f5a685a740e546aa99023100edcf89e06a9730a69789fe2548aa0926ed8c0c8e7ca403fb3087e7cf8d9178bac5f19fa9a0348e8b2e71568f5bed03b60302047c435bb500683066023100b44073e1624cbe3edc32805136b87a457943a32cfbc63ec7f8785a271c6dfbe934dd24021cfcd5d758167e90210980f8023100f359071d77d339df966cad0880e10a10645a76f80bb7ce86ace7b02344dd0b5e661837896a6fef14ba70ffe4b08e19970302047c435bb5006830660231009ddd0be7b0db72444347e2cca21723d41632924994b4b1a58dfa412fa557444abc151a37d85e229baf4bebfd011706da023100fc6905ce2fbce79e4970ffb1afc27900c01593f36c0677361437c856e6ff97e993be9d002d3b633343da2edb544570560302047c435bb50066306402300d210c8bc8621bff27a17d1ef89455096686b83fda5aa8d5df221bffb1f9efb1bb459418ba60abf36380b37deee4a2a702301bdc85bf2b60a8419be0a9e0beff64bc39a19922c0377820076edc1594248b77caed485b7ec16298a059c1ba54023e9c0302047c435bb5006730650230455f1efef7bf8a0003b471e0876a8959132d514bb2222155711e86583707a210fb93dbf12c83ba11867ce1dc8060806002310099e9b705c7fe1c6123f281e869acc2fc4a86658eba74f6976d7fa71937547ed72700cf6b3a9182c140d4dd7feb02d8850302047c435bb500663064023029dff6c274ef5457098bf378cc65a14658cd4a7a4ddaa194a7810bb1764e1b8b179bd94ff4d9087e2f678daf223340b702306d0ded7e5c6a2855c048f15efa7cd286d87e25489228161a435f80bdf8739d9911ff8e966c7bad6720c908a64deb9d290302047c435bb500663064023003ab68076ef02bc590268c721577f691bc7cac09f7ac3c888d24e37ff01366e1e58499e9a378c42441dd40fed2bccdcd023058a0d10ee9ad86813676350d4e6bd7e109e77cac4521f5f79f3ba1e842742e8c22e01022a84c6ef2ebaa39ef6190b4f30302047c435bb500683066023100a1e12980a96e861ec17b96aedfdd2a8e62d794c46e8103cbad1bbb6ed2e4d1aed93321d2dc3a87b5f68a8b41460258860231008e6515e1b3dd798cf8ae901a80ff9ae51eea0645c8bab6c2c0f01f5cfe9353cbbfb18dd80a734c395613fc7367e27e030302047c435bb500673065023100cb5f08fc0b58163aaa74d9ff74ceb166f8dd0cd733dd18f686665ae284b3bd3dbd266783a90f0218e6e044786633407d02307979306e4aa304068c30c967cf012f57749078399025793c30a36aa92a7eed268c5241cfaffd7124871cb7388a6484e20302047c435bb500673065023100e9a65fc05d6d877213d5b178d547d7e8db5dea498ebc7112df000e84d85c96286a9665fb95ad5984190b886c147fb32c02306c411cb716c10cd86c1d61b0edc760a5fd0a9dd5ffb8853ac97378d63a189e50a53ee57632cab048ad3a4790ffe7498f0302047c435bb50067306502304105c958f1c9e7701f4618c700de638b5245f3890c84acaa270a17056f6b22acfafd4e9bcdd8b1feddd7ff3d8e65def2023100a8bfc5f8706cb541175d2cc0de2447cb2cd340b853c8b71caa97c8b79dbd113e62ca5697659da74e7fd52df72e5733940302047c435bb5006630640230179d40f8f035c86a65611ec7eda4c930137c6b9bb6906fc34e0695e5486e57ab0e6d825928a036f81b8345042fd0fdf8023076d6dc154cfadc6745f86fa8c3522e954d84105c9716324ea96dca2a7e7b72eaccad6a7ad19360656ae7206343ddf1320302047c435bb50066306402306b4793b8213d8e3fe089c60246c345950ee20bfb3d534d3c74355d5fa7cee17c89aec8367aa1c0a3800756bb4b3e9eea023036374a90ce1f696e8ff3440b7f577264c0c4a79b3ddce0acd06118322de8f83050a58f7053154f13d8e51108a8a5950f0302047c435bb500673065023100fff1eca08508b88eb89870492c249497dd87e802dc4be8e3744dba0317746ead199e20f8afa08f182aca42b0a940b8f8023066dfb86778f58ad533a318c20d3158dbd321e2e39162ecbba8baa7f7460efcc1d37e5899bb5b691f27966424ead1a2b20302047c435bb50066306402304a091b151205cfaf137537d1b75a0a29dabd3a978d6172cf37c2e188dd1b81dce1716f2613da86cdd3b03a5bf9a719a2023063d4882e86ad80678ab5d3c6f47ef66f40025c84323873dd26efb27ee3cc5960ece9d64a980293b9de78de584763db480302047c435bb500683066023100cf3e14e443a63d132a40191f97549b01dc33bbc025beac2f93371765cb836347d9ddb7d2959fe0a26d96579383cf3997023100f055899e10fdeededda2fafd2644fcc48e5ede6b33a53f3176a647ab9a6f3f54aaf2b2ba46ae88b427bbfc10a84bdbc40302047c435bb500673065023100a2b623b182ccc2c9d78d4e3e29cd52ef6e8054aebad1e719f0bd73723ab007cc7a6b71fe5c404cb0e88e0d5ee110ebba02300a05d4a15d48185c87dcd9065f7238c26179d9d4fdbbffd7e224ab19e7fcb965167c0ef38763da2d9f3cf894821f16650302047c435bb500683066023100d6e082cdcaadc441def5e2845e77e66678cc7e2006a9db1c68aa7fc541b737b48e5eafa22fec383b3c507bfcffca5faf023100c41c3cbd19f297ea450d7ee5ba5c679a3110924cc01963f868c97d2ef0bb6fcfb7f2f5166bfc975d4c329b088be626600302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cbc0c1bd63417fcbb0c11ec2e896ff3c65daa2ae193956f0717c55e70f079362982600c0bfec29dfb44712f7856349c502305a405e0d99cad58e3f122db6a78a0b47b19d03b4b9f0538af1fa8107028bbc8685ec28a07e302605f9239c362792b6a40302047c435bb5006630640230782d37882a4ba484e8bdf0c617f743061596f27c563ec794c3538d56a41d4166fbb40fdab92b4f86a26615d9f322e02502306bd8b4b217013e24104a5d84237aed6597de9f323d157d287caafe74dddf74058f50ed9093823d8277e600d8e6cbaeba0302047c435bb500673065023100b5717135d386a8fc78c2620249f0de4541bef1da677e12fb27f203db3dc5d7581299cf651ec2941c973e7fc1923a4cf002300c44ffb737608b8d542d4e7628e3444cbaaf28396975deef693aedd064837e93dbf60befae25c91d57460f31654600d40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b50b66367d33729dee003613b9b52b4c5cd5ce0c30cfe184ac934fc0e46e7a52ea9bf522732ce109fad0f941b42bc7fb023016ecc911481266e2f1fe779e4165c475931566d23b2ae5b8b66a7f8a2fe17f846cd8a9a5e9052b1a140212706d1be1a00302047c435bb500683066023100e8c19953ff5c536b9d314d637b51a67c4ae1d819981f8ea574eceaaf3db30fd69e045bbfda7d0163e77aacf28ee2c2d1023100d83f04085a1bdca2a61c15ca58d90e197edf787b3316c4dfd3779baf718f22da10033e541296dfd33b94981136d7b29d0302047c435bb50066306402306e01acf7f1dba81515a02bea176808661538c1aefc371bd28fa60a665a8aa0361349e4dea653ccd7768c5199995f3053023031e8252ddd80453fd449953a25a112eb7ce36e43aa2d10e41f08517a43d00a66259e4021b206fa56fab99b62534f7fc00302047c435bb5006730650230371f6784f73ac2c4dcecee14c427518661ddbf08298be818de9096da5bbd5b1f09705dbd3e797cfc4405178affdf7f96023100f1d13e1ad4731c55f2eb2e1b4e37487529d403e007cf279e3a8c40eb32fdad2699dced5b59009b851d99b636326a60ea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ff9298f5a31462d8fa42756430ebb41b588ad950ab8716c9da405f8b69e8f80291e5b01e83bdafd1445a48b83b01aaf90230743ef7e7809504f6d7c825f6b615f81088ebac0edd19ad2fc22dbc1e31116b0b3ceeb6a9e03f447f589e9ba6677340ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e821bf118b1f47e3c3371d283713b078d9b15471729d85e8faf8f784cc173936eb00ef76daed4ccf6bcce1cdbb59b1f2023036ed0cc896f478e031ad84c69108e6ea9eb4fc223b715a7615316bbc66c3c896f1debac2e47abd4a8098ad1e9ea2e55c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306578b604cd7d3783a748e0e1931f8314990d86d2eeee2d5997dbb661b49100fd233123cbde9a09937d399fd53ce263ae023100e18039119ce885dde18754a5edc7e7940f0607d7217a0c9bf551c05bbd457ac5b6131f8dfd257299962d2517e38bdd5f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230366016d0fae2156c4d418f5db6acd03c48238f2bea7ff534dde8acb83dddd521a8fc2f3db849155c6026985fb0dc6e3102307941ff2b110774df7318eda370fbab445c959d71c0736b90f82030a3b4896f871e5652dfe2952726715b8fe0457a8c110302047c435bb500683066023100999e6e05b9b8fca49127e740417bf7814efd2c739c83eb1fbbbefe2ade3e94c06a69b0fb854034e4fdf7ec412f8f9a06023100bd541db7bc94f5f95902ae1afbb4bb9ee1b3f25436b0241415aa595e101f315896167c6042cd83adc122a41a275b26d00302047c435bb50066306402304dadeaa75647006f06f88a18ea3e5078342afdc640969d4cd74782a931d351657f69e9085d7b67a755893cea5b1bb59e023023ff0ced45ec9135d6630948bf45155d405eeacd355de41a435aa03491e1f18fc78de2bd8932502ebfcadd64c3cd855b0302047c435bb500663064023026d6bbce6ccfffdab8dbb7ea0a935578b832a1f0c9aabe607ba15f594270026b50b78bdcd39607e32067c53c7df0d10702306417036f6f11fa39e4ea08705e6a7f6b766bdeddf193d7f8d8236853f0604ba3b467332deaede305e654c816032901a30302047c435bb500683066023100da325f67a0079a7f228b1f9b3a744a4f4c1e24f57dda4c9df8c200e782bcb8c0fcac2b109a840fc2f1f319f91548281c023100aeeb192770596f61c5e6548979c9b67a23915bd73dbbbcc31efc000d0520e8a675066accd892a1f16c4c70cbf43e0fea0302047c435bb500663064023000d13576e572c5d93b801138a0439878c3525571ff060da4a5ed1eb695e0e9bf9cdda2be3d63cb0cc564dba4cb6a6b67023069647ad3cf1d9f2b4e8aa44b80b7b29177a63004d39fbc4a644ecf0c7e462c44895efeeae32e3c84f992840726c6d6bc0302047c435bb50067306502300836d78ac7717c402992c9faa5911d0070f756dfb86d95a5de0f1115ba0519241aa11ff369a4a10e2a716c1be7579b6a023100deea561697a0864cd0196ecfe6f2f90112ba4b0f8146e09c0160c1e378e7e8ff57145649292f21303371897a00b4c6810302047c435bb5006630640230206b0c200075e20bfbf364e3724e9469eaa2ad82b65d3c66bad2456cbe337c4d512e908119b87bc5dd6ba370445db91f023046b5999f9dc225cc1a5bfb2d04ba5bf47bf2157de711a4ec86607c32c57c4116707608e0847b8a1b496052f316c9c7880302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302348fe94ba9014ac288f1091c0999557ba292c01fef0271159a358418e4edf71d1b9bf8becdbb8a86875e821a9a49bc70230785839a89337098132b1d6a498f216a3b6e729716659a275c5809984b635bf6d6bfa59f6e98657c97ef8fd9649d101b40302047c435bb500683066023100a7d92621297d3c9601c5858e8624ba51a93c524ad6433ab47c9c25c3ee99f977aa05f7d6de22f294cac9938d605e3554023100b57202c8b3547828899427b2a8fd2db98ae7ee47c2e87491bd124a9a8d61de240579a3eb7cc1fd50083e18614d49de470302047c435bb5006630640230134a3edbd15c88495f4d77ce0e3ffa54f8ac3236c1837ff35c47f974fe3e83a66dc3c6a58508c1fb37ac549a8e5db60802300bdf1f0278e27cc55347031be47264aca4948ddd9fb77c0530770407457b458d29668ed4136c4ec68e248a2c486e56d90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306b4c83c9b89a56234ed965c8cee1b8093df2f58436f934e618b613bac77e36eeaae216739956ade3f8e61ee76bf9e0f902310080303d23d513d5cb4bece2c602da70a13e80d2b23559322ed1a915ccc619cc69dd4293c60581871d855985c17cc8b33b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023013fa95d2aafa12e3528125dfb0141d994ba39eb4d8c5024e774d86d4c01be13f584f9ea0cac0ed30360942e577f42a39023100d72180b5a31cff3012950e679e11092bf8ce77841734b6052e78459452c24a5fa5c7475110855e5264a817d58a294ce80302047c435bb50068306602310098de91f34d0cb631b25ebd0523571455ecc6b1b899e87b2b282381c8b25dac8f4d84ca9202c850a3cc4289e4fef7d6d1023100cd985e8abc46d069abf4cc289a11577bb81e68be5862987caffeeba8c5d9f043c412b48b17267fae8d28c0654775b8c20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f7e949b6a05a7a357f36aed2336ba2192297793438aeb1cef9dcf68a947461c1d90ace4ce4e31a6a5e665b1d6856e889023100f78ceff617cfcbea35a130875ce6a03a3fb405713ab3a22ad2e842a8a749c15821667a2fc25a8369bfa0362a74706f160302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303d5033114f48b7d35df39aa5c6851a4da23def530736668f8aba87e1a120d1dd06d758f725e6b80bf1e6f7ef6a72405202301ff8ef24160cda9b091cf04b398c8c5d395bc3b78e95337c8f3fd37fb41a290191019d0c0d3ea5735d6724bb97f865ec0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009093f1777f878fe1ba2ac57070d132ad208b9fa06618274c8e68a65c03164c2db6cbf65e01eb211a5fba835a499b198c023072595890f6c6eb62e65756178ccf78ceaa826a17f03efee5e65bc09e09e26da796ee84ac1220a6986ae7cb32fa9cfe750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f222cb4bdc9bb7c6fd126c3bcc5b487df0a30f16f34fbec0c1777a481c1d33dcd1ae0d9c8b58acbe62084370d1cfce6e02306e0d8c58e29563cfd53f6c5b8d312e35fc13466ba95a5f4869c397cc6615d13d38340d489bb744dd7041c0e760597cc00302047c435bb500663064023078fa56ae6171632fbae0a1fb72474d737fb6c642fab4bcc4cb343a5f37100a51be89fbf96be5f42f4185b377c8370c340230657a6b7c112d1a0c1f8411d9678da03401b9e4fbbd52787f81a9b36dfb3c20d723ad731495b1a18e5d7119bd1579b33f0302047c435bb50066306402302056f6d51535cda8f7cb8be0b00a280e71ddcb7cb8e7b2bf4023350fc36de2e86136f770d7fad6f80fa3ca7c6a184fca0230707bfa06702d1106ca0ca5ea17ada75272efcc5338d5503e5e71552876dd3ef3ef988a81d8f0d21d6e0bc44de7abc82f0302047c435bb5006730650231008c48b073fcac689a0ea6a493138b8ae4890ee07e04b80290054b0ce74542be7076c471d82cf9126c2f1aacb463ca7463023018732838d9bec8b6ed2c9e73eb97a4d065007d86ffdac44e6ad376da589938626560466c5d9b191b1da9d63ec222c65d0302047c435bb50067306502305d419b8f6ef19cf0ac1f407cae62101dc4466c2a87b7245f2aa9c2f166a73544845bf05fd643a3e72eda5f844d205c300231009040c34f2b3558d57f7d15fe14533a5b82a3a9d024a99b618881c9bac6dd760f81352060a9bce94b5d347a5fbc9c190f0302047c435bb500663064023005d3f7354191515c0586fcf5bd62c7c543902fae2feee774ec7617f596eeab0f0ba8e8fa69ef2efb44b2b31069bd8f5202300ff18e928e0730cca51855820eb54c11e43d1fcf2d9d44dad70a1e936192dc94fcc5eb901ea39bff035d6166006d5d8b0302047c435bb500673065023100ed207452186734fdcd43b4366d37e48518685a786a9c5b057051cfe8f185abdc5a887547275938f4c5044fe149e91cde02303cab43292b69b6ea6d2350bc0d2c94a776ab256d98d02947dd15604dbb99617887dbb6658d28b09f336bdd932a70b1df0302047c435bb50066306402304c6bef021643f4280c4196dac73b4da101a147aa1dc0e29ea53f652c314160adbbc85468d31a19c04d35d1cb8e6ca3890230201cfb1895ca3423785a867aeb864d7effeb0f71a352444164af6056a48191a944cb21cbfad91b8cdc7f8ed02d6a65c40302047c435bb500673065023100ba1e7848b61f07244df435ef1387903ddf0471f733b475f68e7fc0e1ded5aea9ac52097be8e73f2a139a521977d4c7af02305ae3f2163c17c00a2d8677a08a62dc677015ef3c31efec25abb493ef915c88da19f94f76b5f3aa153e15ff8a5f212dd50302047c435bb500683066023100f91744e7ebeda18050fe5da3ce60faf0241b1b1987461936f7b9fbb3c28bc5c64764c016cb8570502443d156cd8f7f4002310080f82de013c91445b8e93df5ec0a679db242ab9a35129712b01c87db826663d4f6b612374ba33f0ffd64f0dcdf571e2f0302047c435bb500673065023100d011293cc00f683038ac5dc453216a9010d78ebd2db7e971f3a4ad8b7d7e89bd91e3fe6a993e5ad2b9d20e7dd47a0cba02307b45cf7dbb38ed5356bcafa038738feed6f2b9eafaa9b57cbb31f4628100be96150fa0009952e54ddb9a4644e9550dc40302047c435bb500683066023100f5543eab82acf97faa7a5cda3ec8932ce77ec07ea6f761da5416ab243e9adedfe78b64444fb0ad390956e6d188b27684023100865f7b6c98411fa6a77a8ec629c38d70897759cebef1473269cd8df177b34a8f8066ded237a963406b3e180108ca89d60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023062c8eaaef6c88d58ac0b129212ea3c21b6264a78cf9e8025864777f5866a5c8b69899dbf957deb3de22e68a431529f7a023100b9be86872e1215e5f97aceb02ec135d894fdc9c5260c66f12ff34079726a4f85688581fe75495d197b51024b7982402f0302047c435bb500673065023100b1247dfc7f04bd4b7f9371c14100fa7b9b8e1db69025882c3ae256dfaf5621fd7334dd305230465b113a65a86a10182a02303c40fc442bbb2547049ced8719840cda2362423f206eb19c5f3aef3a54b6dab3b3b185314ab30ba5c49cabe3e57795450302047c435bb500683066023100b9c6b5d94805d943a8c7f4a695d5e054032b9e8cb4b472ff3ead4c70145ad215fac17e98eb12f81e9036400c59883269023100a64210907a8e21dd803d975cb154c3087f853d244df29780fb33938141df3457c3505d147c6ad007216413fa8eee0f280302047c435bb5006630640230549a29e2c5ccf8770525a24c064d1d84e175d4ae2d189c4e42fda6cfc513b27fdaccfeb092ad466208aa727b58743eea02303b73554594127a060aed69819147c7e46ca91a1b36902c2cd61258dc5069253797b6654b7ab3c8190cb86a8e821c1f2c0302047c435bb500683066023100f7f0bc37461487d186afecddb1ce0802ed2bef4bb2e480f7a0ba186c2c369de6c503764ae50c9ba9b820d1a2d01263560231009eacf111344dc10b13dbb57a2a0bb355407cbf8e4f8e3fce19260650bb23a6114771282943d22c5ffad96ff3013797380302047c435bb500683066023100c07f8c964195ea89b274a78064825b01176ec7ac0566a43cd8fb48b2007da263aad6eba31a4bd3f7520fbb080836b47d023100eb3ccf36db17749d1aaa821e4f9edf1f72342665d3f981ec0ca19b615137494a81538852ece2a9ea421341f834e2cad30302047c435bb500683066023100a223307bed6f2387568cd9e7a63308ea6835fcfa32ecf722dd985261af087fb868aed0dc89569be023b45398471d6692023100ca0b7934b2c111e16b1232f17f0e728d1e61b464deb3ae11c94db3586732b4d21e215e9e9908cd96bdaad06f6452448e0302047c435bb500663064023062442869c60b61b0846dc4391fc727a77d4eccd5cb193ff40bf5e0c15382a749c4e1a074c2a8513cc67b6adcb7694a3e023039b296161824fd1e4a979a23d541bf719677c90fe64b1da49ae5a5a318a13852c5099f2429edd0e467eca4e475deacc80302047c435bb500663064023077c2506bbd37744b9c43051e60d9b9a888278f028ef195b72126a65986dca797ef5601ac5219678af853ef660b947c4f023060331cf60d1e156c38b6d9555bc8581b1b573f2404e5fccf6978a63e72571592be027a1433374b240c78f0225f7f0e5b0302047c435bb500673065023100bad0438796767a418ebf0ca5cbecc4a47c0ee6c763045df12dd069bdedb41fa926455560aec02928a540b981601a08c302304ede369a30c152ab28f86446b0df275261b44d879e0499700bb4ba8c773ce73ea0422a0078b356b9e87dd3f204061de20302047c435bb500663064023001f5bdbd524220fa22de17b4c55bbb119b313ee6a543c1aa5deea306c5555c63ef5f77f58cc5028eb831cb90a62b04da023003cb2e56d4c9d402e75f523254f3519f9f3a958836cc3029dae470c55be3667fc4589f74a5dd2a3539cd196b1d659b4f0302047c435bb500673065023100a37fc49c42a25bbf251a9d764696a69deb5e6c603b691e23f0676eba84170d31a203625ec7ba664ceaae8ab37ae4234702306fc11ba32fed928af271d19c9327d578f92b29e3cb57f231180887778aa8bf5a88ade635a5195038791d8a101c4727e80302047c435bb50066306402303151aa34bdefadbbbfdb640f31f7ef51da0be507d01e5f5b723319afb0527b547616fc12ee7ed615519f3d6d6cbcf753023023b8b0bb63628a114888f4cb71ca91d1d34a559c9080cc0add998efc49b2f4c9d166a1f7fdf76daac323902262d2dbcd0302047c435bb50066306402302f01ebb26470d825fbe65daf8b6f6dddb11257697e84651cebcbcc5fcdda63174f26969e2e2978dd179cd02e17de1c760230431c8bd32f6e580c7b96aa990945fcd4c515570cb730cdf16a17fee5d1bf71fb178eb7e00e298639c98f4a4fbb11b1a50302047c435bb500673065023100afd54b078b65d0aacd3f6e3eb072eff52cae02bae59b72254a08b7864c131d3224aa45b6fec23a85f0103fd65436066d02303b5b90dc038f68af53f8552a2618a150d707f963028bf499f70e20fd9b708f1182422358da5fe6d90c0bf5ed1fc323c90302047c435bb500673065023100d8b59ee49550b7eb05f1d0c5d1d893fe5b2efb138ca6f6630ed3c96bbec9df22eaed4028f94b9c60a0f76b7981758d7b02301c9cb1d19cf8d48bb15d4e59815d0aaa44652e66d402faaced121d8af7bfc036570f328aea73e89e7387c1d91c16484a0302047c435bb500673065023030e83e09818803d35d7e8602cbae704f9c015a39dd9f52a7dfa7d27c1b1a9e0ca01e6843cfc7c0fe7c1506252f7eaa0d023100fc9e9d154ec6d11d5647cd9bd59e5b509fe7b459a11f93cb2c594b357b05b876c6531d83d53ce316d2dd363d88f920220302047c435bb500683066023100bae5d6041537dc85e291db7e087104df6fcf4e4e39a9b49c986e8f6ad6e39edce480f4959bc955c73b6cba74be43ce30023100fa482fbe3e217635336de4d7f838a2fe5d6a8b2307ff261f3b5fc7affe3ca9843e64b55e0ad2361f9accffe05c1812830302047c435bb500673065023100e8a9610f9879281ffe15b129f7574f281460f161a4bfc7527515b0e5533c3ca606817ab115ae5b4a3b524ca7c8adcf0702304e66e04c3ac0748726372056a353ef9a9704c160181f79853d8775ecd42ac09cccbe9626c22b52553f6f7cf3b448b0600302047c435bb500673065023100ddb10a3f3c404caeb5e53b44f2af6355670014b2e61afa723f97d9fe835a23e800368d99ca9f53d29e8746b3501b0b0502306d7b226db61d8dc5a2b0a3b9e16e2efbf9b8745e832db1b195d5731bad1450e58c5589d35dbff00e9716e7e02b5109e70302047c435bb500673065023100bf6a5455ca115446ef47693d10d4799739e2bdda11b0fb5bf127d8b00c86b1d994313c685ddf2151c75f807e93e81127023015f5a7259dfae981429cb2d1027d2564c93d527f03e4edcf441ef2c337d28a3fb093f557799aeae0d2f77ded3e8e35000302047c435bb5006730650230640aa60980b21612a1f96bfc0148848ff0d81c555d678b471e002102665f33f9ba354cfe610f7dfc12bce002990e4b28023100a4e83e956564e534838ffb6415b3f1643e0e855acf2402a7e1682ce9bca0a5063cf6d8efc86f42b557753cd849195a410302047c435bb500683066023100c7b1045a2e3388e9d3a5be7bbc40ae05749d4a0249a7a3c0b193f7c9cb67b25d6c60472b767739d774c9b1f55bc64397023100b66dafd55d9125fd88823bf1c812a4eec22349fc101b487ebf2f209de27a3a3cc7594821901c934a5de1438c8a66eb730302047c435bb500673065023100be95673cdae53845f02f1c785a323657556e8fd7209e32982ab9d8cbf53e32b6d5cbb16823d48b2cdd5081c3dc0e4dd90230516a5ddf18dfb7e193ba3d4b9bf9785f2cad165cf7f0251fbfe94011037b46eae465322fff406208783f59f79035c5b30302047c435bb50066306402307674f4f4bdae0b728a46856051ba322fb5648a9cacfca895622b477bb3306c6cf95a1184eb577c639a090f2c142f0d3802300500b6df84a2660bb768731bd2a0d255da133e23dac49e355961392ee7dfee70298be282c7049c1561fab088a73bef180302047c435bb500683066023100f19d85fc18d2928fa3913738fe616392473a8fe709fc9d83d82ef57634b8f815a87ed3eff31a991950e06f35e4984f24023100fd94160a6084477b91ae9858e58594fdf9b30b05d3bd772a5fdd6ba63d5b3b3868cee6f30984dae47c370eb349186a8f0302047c435bb500663064023019ba76b7381d033a0e217e8c596af3540f13fb061e5d22d05b284b217d1847dfa8562bd1d78382cdf2364679a36414fc0230444c21cf30c46c8924207aff97ee146cfbb14a2650f89d97c018f532310b3d4d4c11646c426581aac3aff2cc2003fef40302047c435bb5006830660231009c93efe7ba022cc81a53952b1ea09d5c1eaf6dbf60b00a24535f1d83d16874cbd85ea35dbaec85588fed3fbfe95d2a95023100c9ab0a89473c84b1d79c27ad27f8951abea0765d3cd3bb725e3e8998971cdf2f61f0afdd14960c4ee063db7ab3ebd0610302047c435bb500683066023100c79f010c1101cae1dc78ddbcae69cd4226bbb13a0bf5c32124028cef71b9e1bb13be67e12a575c2edb903cb0941bd58802310090ec4ea9bde99c65c899db20c9ac8f930d80de84fcbdecfaab734e09adb66893158a310dcee6e258c6bd849f18a454230302047c435bb50067306502306c92cfff917de15134702576536bf2ce22d87638cbe1bab07774a1d97762677e66daa870a2bb86fd15fcb2442eac62fe023100f666922eb4a239527c04f78962f9605779706393f78d14521d74f6805a072a41165e175cd9090aab3b24618021094d760302047c435bb500683066023100e3e00ad3c34a39e6ddd875f6fc03e3658c0ea658c94b632835885eab9e7fc2ccc71731efc231f91c8ba367554208e855023100c1edf3ad3b5b688a1bf143a906fcaf7f9e4f3ceeed44cad4721e5b7f9014616f2729c4037d37d5120189adfe8a23e3450302047c435bb50066306402302f2c8f6e95cb04c23d9cfbd8754ca8afa71ecb31ae9155913424b8103e7da1610c4764d9633c4c71504a4fc5f9f28f7202306a829f40628c40e503421f44377201a5012f318d06f667dc640bd4a60af07048d3da300b137d309986443715c039e4010302047c435bb500683066023100881578a8e28ff918279cec937f5f532b3cb3bb8e7295e4fd13f0bef6523af0862f61ac922349c6056ca58302a8358267023100882480bf9f60f1cbe8a6c3125bbb03cfa91ff75fc7d1a434b5f35256eb9cff7bb6a84d6930310fb03bf0ab8caf7684c30302047c435bb50067306502310096aee7f83ad0caedc25c214eab936f5378a98bb19140249e9f042c4871e2fe6ffcd2c5717cef294eccf46eb2d0518d6b023011f4f3c13095022255953d57a962ba4d7026212f095bfe8d8d59da1c819f9434b37570358db20eeecd88c56e7a6fef100302047c435bb500673065023100a29953d46d12ff1a555af011cfa677e44efa57ccb23d2eb65edb4fe47b000947924b859b7b27ab196b9b504d290cc745023055d69091f375124191c9e092825f9ad362e05e9d20726e0afc78aa5186d544db6990b1f8bb0f6344190296a0468d5e3b0302047c435bb500683066023100ed766fe92a06c902e957ce4fa9f9d818c15f738eab7ccaf2747d153439b376de1d03bf7b21a3faace953351bfdf319ec0231009d84638aa3b209a40797960608235ae4789fb03a338db281544dbf894da53c4804e9c45daa9ac0512c00df0342cae5a60302047c435bb500683066023100e5af61a40f9326836869e354d4727df87449e71649b9ee5613be34713cf2cfe2c10fcfc57995045fcedbc1ef3403df00023100bac010dce8d7bb0139d029f3d2fa458c4128800e1a03bbb194e47e5d709f807e266bf676433d87d3245c618ea038c56e0302047c435bb5006830660231009d8f7f0e97a245a4aba35ebbaee116e211ba8d6dedbc0fbeab08db9eb2fcfd19659f73269381c27150b7fa621b11f250023100a2ff4340edff889539be8ddc1a41317af00b9691537cb095b620f635f0b7576c9c60bf548c60c4e9ab5b9df0cfe2d0570302047c435bb50067306502306259926e028934568a8ed0b903226e30d2f666f67bb2338c3be66f34f5a2ccc503f614fce2b43187a8fb59b85a390e3d023100b4c67a1fa27e42a6be3642f138651ad8ad6257bcadd2e680e41bac236652da7ebca1bd0b3bf18462e3d48a3583ba093e0302047c435bb500673065023100aada64ce8e6e8a991ca8a15c28a99ae24c46cc9025c587d7e5ee8a0c90323b7498233d4595dee6154949ec16adf716e902304621ea7aea20ede8a7f11316f7488b30077908148b0a5c373737a89482b4b6d8236eaae82b07099a1265188bf86431f00302047c435bb5006630640230031b43209715325f658f98537dee8af75e364d8c449aedca3f41be249948bd544eb4ea0180a9d1521d93496c2482e0a702302caf26a4368d8f3f676abe339b51c3c4ddbf31273f3b652a9e4c4aacf4be7eacab56e75f8aadaa86523a6137807eea350302047c435bb50067306502310080b2c95fbcdce51863d14779f2564bfd39b1693bc00685624ae617916892c780663ec7129aed2873f701b197a5d211dc02305588673bb114c8b7d9f462c50bbdf770461995caf04fb613a6d05d32684a4bfe408155acb713b709098ded4b589a10aa0302047c435bb5006730650231009b340614a909ea9839cd9c17e042b5dcadc7730c3882bb6fe02402a444299f6529f93a2d85e599bcbd72fded57cb2abc02307df21466c991ad1cb4bec799c62f9a6579a4cb78c1593c8ceed89faf79715a4c68b61c30b70c661d9b5c0974899fcfd70302047c435bb500683066023100af63776c94f049b78f06d2c95e715bce90ec55347231bcfbd6843bc97d797cb8ddf231b934305c17bdb15726e60c4897023100bd263dff2ea09a198fdd666e8bb81989789f7558e8ebaab41cf517f611a7f5076c228e8a9d81799ecbf1b912d0e235f40302047c435bb50067306502306d4b2491ab36dcfade11be38aec763b68bd34a3c76691ce596f7addd4c2abf985a8bbd52c62f7630193a8a5fa46de935023100ca39b65ec2b47a550a6735c1306af15a201215a951859fdc4a5b0e5a4056dd49540413c470d1bef92854eb9ae83c17cb0302047c435bb500673065023100cd1af2832fa25ac864856d2681c6c2412eca5e00e820c686f13b53c7cf88c600589a6f5b6ee284541a32d0d1da64d5be02303dc2bc9e67e8738cc0ebb3b63421d42fbba27f55a3327170367dd37e93d5c83338cd1102e5cd0adf6f20280521afb5450302047c435bb500673065023100fc8017ac28400113923548fa29895a3b6864f48efb0a752645e20851eb91a7713d6890ea3664e3221319f16236168cc602304ccb38513ff0153d50a9e049492f171aa7c28ff72a5bc4f55c289ac852de6523708eb957e89c90af9d0c2224202994c90302047c435bb50066306402304bf845cccfc3ae7294b5c8e4594fcb7b51b848319697498a93bdfbba4d9455b9f9a44b315916e780aa962f2d7161e4a802307aff1bf92bcffd54ef2daa4e1a0679262e4dd6aaf9ae8531d99fd517de29448ac3c017e555173380ec2473e5f9b220540302047c435bb50067306502306c5c383cb78339db15bd5d9beadd2b7867f7e9681eb1d943929671e4610fd3e4d569a3c270f84be0b1403045f2a0b54b023100b36e904b8854a638463c6e2d0a98f16a00a57cfde2b8a14b0ce4bb0ac4b149f293b42c93c7ffd349ccab5d3eb24318250302047c435bb500683066023100ccaee0f2f344204656330162f82681e88696904d198ca134a273482d6c0a90cb49784e1245b5a1ea4325785b5746f090023100be5bee0e3af812a170e5d2dab9bf6cb6227fb22c2f911ad00df394e072ed552aba887aebcffd43882cc0d0db927989660302047c435bb500663064023030f4d740a9f3149688faa70a90a42a62cfca1264da9b568450d182a34ece0d115d07279b88339850694612d970dc6a180230724d4b77f2dbaf668b07644668b65542d062a9e55ae0549eff8b9b83147219aed62e55957946d939a53c700f3ef2f6190302047c435bb5006830660231009a4ae0c4e3b83572feae2a9901e522c09ecdea09cbe3c3ef9248fc0e148288e85fcd8ea1764b59030d6b8a862e4eda1c023100e363e4fedd214811fe02be0a6543bc718c83644d47c3dfda98a91b8a57f4cb5966e7e23b11f02d5c30b0a43d54f4ac520302047c435bb50067306502307096494f21891fc0432d4734fdd5933258775dc72e030def9c1d224401dc247a8f2bc9d17ba7ededa3c5e6c88c205a5f023100c042e1d2baca26c0d8f6abf8cb348c2f2c0a7b5b181e5b807e9a1ad4901b1e3a410fca7fc2b33237a107b266bbea36c70302047c435bb5006730650230480110980b7e7d5c616f63340f0b7524c8960bbeacd14576f0839ca3f6ae9242deccef85db88db384916c2dfebcaad710231009eba8e3b8d55e2c087a3fa68234452761201a34c8995826a81ffd8978d41db95a5984e9f8f8df1f883ab2e283b1467650302047c435bb5006730650230439e55ec9901fc1f129c01471b14a8f6692ab497c12323ff456715a74bba07eb440e60a47ffe75f8adfa7a242a8d27e7023100b8d1c19bc2f7ae908487a78b26fe061a55ffc63b4b147b8c3842ac4d6440833bdbddca212a8a75a9d530eea1dfcad0600302047c435bb500663064023035bb7084e56e76d94a8349059112711faf4191fb592c5fc8630b39c5ce8c92f46312e1553929146db29b2f3279e2717402304d3051ded87ae878da414ac4c2c4c24162a0c3dfde0cf4193d98dd5261e74908282feae375b6b923e86669fd09f4afef0302047c435bb50066306402306a470ba7253eb1450e37b70dbffadb5498f45ed2238d9974cc021549a6a1bc1132fcf24278cc147f3691488f48fd004d0230115199d9004d070a5be90d9ca9ba962abd37c0259831b3ea7643f206c051aa0d4a7a6b7ab45356a247e94701a5dd67440302047c435bb500673065023100f0717cb29e3aa867172f92b3bf115c4027d9b6e46b5be070196d9928444ef18d04dbb7eba1edecee8d84155fa1e39d73023040d4cd75f1496eaaff0a502e1b78be263e86de2f65c40f87e7ba6de2443a5bd33b6e86307c8918e49ae8f2a77e561bec0302047c435bb500683066023100ee3ee0fd2925f2cb8023777f0734b13b0f19640b52635acfaa04d2d3ac2f13e351568a7927735d11f514108e6c31b043023100e1f9217176f5ca6b74685b882b75ffde0529c27a657dbf1b2d2029b37aef6a0a9b2abc515f80fdc12e3b661dfa7788690302047c435bb50067306502306142a0175dbfe0902b7f065c8f5f87fac3cbb51c8b1d2f20a9fdf9c2942820e5a307fb32751e889abf3fe2c4678de4d5023100dce36b2b244bb887bc9f932f2d3393ca5a314d53b356183738046214ba1466d778eb3a0f164548e3ca4c21a2b913c5a50302047c435bb50066306402303f7faf89ae0d8a2d59c19bcd923bbcd9b49270902c3f4ee5eae66fdae674cc08fa69d58f2f50919182892391bfcc0cef023020d52b0a1815af73fa81e500f7498641c8c091b77270c5d926a5ec0fcf69edae8afd6c9d884dadfcbc819042efbb85fa0302047c435bb500683066023100e9606bd2b62c6248d1690cfe448a07ff16af5f6acc0d35c86eb730dfcbb05a0bcba7d056a7dce1775baa2f131f7968b9023100bbeee53de824826f57a49f674c1ccd2389544f9469f4cb750b1210da6c9815a7f7dc845a20db1a3b96ab83f9dc1d8dbe0302047c435bb500663064023014ca1410320167025f1064ba216812c53051d70a81efb1c018a8d339a1ebc4470c0b87e0f96948de098b5b515fad0ba0023037c80f538296089dc6b3ead1dadd5b77548d4ad4fff4f4e21a67ce37dcf5a063b4408f827ecf7a3fd649e814e3aae8430302047c435bb50067306502307b1cd86ccc9f612ea0c4953ec23bda44f473f763aed7af8911aebb8a1b457f146312bf09a78148404f1c7f7188404c33023100b317e922bc3cdb33f677760daa4bc3b07dcb5be5c14d12e6cfd3308cd1448daf1c4d4765e1983d16c95f081a0e7c824c0302047c435bb50067306502300b92e7bf6a4be617cd999ae2333c23f814ca9e6d0ae32cbb5a4173d0cbc98997f07921a2f7f29ec792f16b319ff95528023100922286f23b048821cb9a6fe1d4e975ac6b39c952307f74c3c0fdf17151dc95aa6cd3ff5e6af382d13f777f5f641a18cf0302047c435bb500673065023100dc12000873220d4351f6c2a8926f8688429b2c6d9df4d6afa63c64e9644270d6b5fa241a7ebfb3824360e24fb196858102307fb82dc0df43343403d0c54f3d8b90362d125f2c1e3a5a48f639cdeb4bd056fbcf3c5e5ec1bcf03a0444d0013a457a250302047c435bb50067306502306942dfbfb8d4d9053529c6804fcb0c2a3e6ea7cf022226213091a05f73cb9184457713a059f80972e7a8cc1686c73e3e023100eb8f8ef014ab73e996b1f243d0769f426e45035350f97b73fb6690efbfab9149c2617029514cadad21c494c8c66742d30302047c435bb5006730650230799cc67819b77ba3f0b04fd4cf9e1aa466c5ed45c1dcb4f7efd2bdaf8bb0e3d7a483951624d566730caf2d0571e36767023100eb279377d4390d1ab89246a45e0b497d256bf904cdf5d08eeec0adf55d41eb73b9b7356556b79cac75f0a673576d34430302047c435bb500673065023042c5d7614c337d9f73d8c1e363f8942b82adb453c28250a13af4dba64254a45882d6eb8d4f10dbbcc68628d5a8c7552e023100ffae5dfd673a5a8dd7fe9a1c8cddad7d8c8ebe2166c6e6f723a39388a5a44c1497e0efcf75b7a176ec0cda0b40173d1d0302047c435bb500683066023100e720c17a673ae57476432fc1398ddbd65816497bb63521dc7672b40a920ab1c28d53d116655e71eb45ebe929bbfe047502310080a15af4c26dd98990107a334b1b5a7283d349713c7eadee7a5f8da571bf181d7873445dd3c47707a02c0da301659d360302047c435bb50066306402305ba9392d3d90f4c48a9a84e872fd1ee479928e12316ea7ff64e75c7d9a2412ecb85007603c657a23c1d21eb48413993a02302a3c01cbfb35643c2ec9d08431a5716e6a74202be7ead40b1b2fb3a0fbf05d9c2ca056c051cc59c91ea6b7246ab089800302047c435bb50067306502306b115cdd62201a82de839798d43dcf2ad1daf8e6ee5e7ec04f59b171a0d9f411ce89e79b6f0c27681727b0386ba2def1023100d4c94e622e7c69d262b3a2116c3762f5cf9b39842454fd5f6f6c07579a05374e887d6ed2557ff72a3811b4ad822e98fb0302047c435bb500673065023100f11dcfd5938bfcaad3727afe4dc08abf677c3484931b3136e15cd17781758259ef3a5b2e1465b8ae9781e1e363e9db8302305187324073b6d95798aecef5423d5a7afa926333cd3984b8a1d052fc5c4aa0c4b6844b7edfd437d6365f9568f7e3e58d0302047c435bb5006630640230037893ded60ab39b982edadeb641ccf4e95657980aa2632dc49148f53e6afa576c4759ec28b6b9230e2847ec45e8aeff02302bf2dc038a2c866c485a5cae19f0445045cc4980ed2608fcd6ac5b99325b206e75b5e1097443316ee6fee983b3328e750302047c435bb50066306402307fb2fdb49ea51f88e4279c58337ba1b9b8be59bd5aba7d0f1747df9949a917ffc004b80b58285f70126491f37eca558c0230031301ec9883e00bccb66b9aca2843558a9907375a8626d20708fa90a8520f147d7d73e42b63cafaf193206131b281f60302047c435bb50066306402305e4af44bbf472988d95bad4c763b59866c6730545fcd39cc16a321399f7423837f163f338f2e01dd0d93638932aad02c02300ff5ee7f9794674cd6360fc0184944780f87d8d972fcdabe9286aef05fecfde49f4b70a268a3bf41d8a63c0af76503e90302047c435bb50066306402306b6b70d9be447ca9ea1f7f7d0bc81e7932880bff3ec98e9d2e998a1534156bb104a8a69ccd4228c3d00c8d284db1dfc3023010da99b19c0cc95e5696d228db58629db4f4084fa51c7ca6612b5eebbd2bb88d2e43881d3d4be3eaa34255617899d1cb0302047c435bb5006830660231008926d57ff1de6abef5bc5af53bdb233460563313331336a499ec1a97594b545cf01bca396aced0bbbc8ece77dc8e0730023100c63adf0af968ae8b5d51b62c4228c3713197658f1a7a719963187f67473195b7e7acef6b2abb46c8deaaedbdf46a03660302047c435bb50067306502307752f15b5b03bb0a6a92c357c21b9eaadf9d636ed1729015c4163793f36318320f673d9843d388bc49c0465c0a157e4b023100968341439f92484d1e4d8edbaf69399bc605877ef1d2faf475cc0feadb8374f4e7a366bb86cb7ab334f8c10ccd8c2bc10302047c435bb500673065023100ac1866766f6ee90665620fc9286ee92d28d7517f5e51d2c2acbeba27c51e59d901a3909f65cb983617080d224f06fc360230332c15e91cb836169712744ef073ac4f111631300adb90e0cb1da29c4bc42a6f8c9b17098d2764eabb7ac490e70678ca0302047c435bb50066306402305dbd5da00b7f1153f65f77a49d6c0bf9704ccf86eff85eec4791fa1f0e32943450835f332dd99208b4488c6054b4118302303b8ed9670e95fa353e022d7915f5bcf3a544c2cda9a86792cd49cdfbce6275a86cfd681208334d78aa6119a3c61821490302047c435bb500673065023100873820ea35cce18b725e93dab96c387f14d1723493cab41da26dedd34602afa52586b68f5ec6132ed7a12e934138e0f6023079c6e5979417878544061ae38c4f37d57cd4643618865bc58b08dc642fb357cc1083f95ae0cc937a4fd9e34dc0ea8df70302047c435bb500683066023100895676f902ece8ed5934580861cd6a0ebacea3b95ba0f92ebea5372cf2b72550a2e8ef0ffc619ea854ba30d06c799a0a023100d32aa459846d38468730f3e8ebc235d1cd862283e5c24d40b580976f3c627ab639d282464ba8dd8df9227e6d2cbc2d870302047c435bb50067306502303821356c47dcc696685265f009c47ce642c12386323822c9f1a6ad423e582c6a2ea7b8f1b439354add82ab5902b59947023100a5a270358cce7d5d8579f3a18cf693e3c1d5025ff14cea89a1ce1614a220c7acd9798fb102e6bbd397fa1fc9ea37c0cc0302047c435bb500673065023100e54f90664e77a9fc6a3c30ea6ebb1243970225ecfabbb7e320f0966d7ea3c86e8e60001638bf32d0044360e22804337902301150f1d79c99551806734cb5f9bd11a544235d2a88bec9b26e7167baf1db17ed4df7b6076c7bbcb1b982912fa4164ac50302047c435bb50066306402301d23ad15ea69debe1446eefb215cc91f6659e2664bead437b120f4e74a5c4ea1e430d10b0cae8c429e11e4c04f0d3d4602305b4222d493dc5532dc384b6a23ea371cef78cca65f5f8307ed9b66a07937ca3fc109cad7d5efb97864f5534068d537530302047c435bb500673065023100b4c55b2fe185574d6c251314d18792bc593f70fc1e4b66b8d2087809cee77eeb6a444d204eb31e392079384b13555117023046a98e01948099c2d96760bb3b98e4eb8705eef77d15d5edfd25cc3c5de63d34319253a0beee972033911e076c0a417c0302047c435bb5006730650230732aa08707421554bb893299aebd80dbd9a7ec164445d79ec68b91373b28c5155c59ec9f1df682a5ef17881ff82c1cb4023100aeda1ad7781314a5d4878b4df928d9e1159e6243051ecd4d080cde6464d85dc633cce24adb7322437cc64d73e18255550302047c435bb5006830660231008f2b775df04d666a218f834307952f1c4591d5e3cd6c21fff438b5c0550ece0cb372d6354f1832ebe4aaa04551720f94023100f1f98c60c7f8f732371c6fb4a82d610607bfa3789bcb87cb15ddf9dd3fd87ed133e2b6d401bbf5682597af4ee02bff1e0302047c435bb500673065023100fc6a0ac9f01ce03161d36c8ed7b18530711d48942feb19cb604eee1855485f7cf41231de84e75a1c45329fa6999caea0023020ba2bf51cf1441bd4967bdc74208ea1c2a5aa26ca215ab57ff21b3670eae4092dab54336ceee7c413358b3d07940a400302047c435bb500673065023012a45227e4d800b8d1cff6e2c1c029b8cb83b2cab655c870b6ab1df425131d3a204c337385f7b56e3eabbfca20911334023100a0514ec01138082af91d73f687517b310bbb3d8d3a8f32c58d48c678d05ef4139bece6acb17cf1e2f8aaa76e7da634120302047c435bb500673065023100fe4ddd3dc2b6f23355a1b076b8e861f200b725d74567f731328328f938a7dfa76b7622f656130b9ca7c5ef7e1f252282023053f1fe31c45c1a6b7576769300d7829b0075de95bb5ea059aa33001e0394125b176c3473fdd5962176183831408373c90302047c435bb500683066023100e7b48b4d9a35ddeecfe6793140e737a9cfe9e0331031c160e567dd49276c4a8a77a7781aa8112956b467bce16d43e7f2023100bf2060daf2a411a5397d77bb703797c2d6972df79b9f9ad842af74cb322789b72211ff80cf3adcb1ea547bf58dee7dd30302047c435bb500673065023100b7121b15a2dbfaa8deb77cd4b9facad2d63b4386b23ce41db2dfe040f844d78fe0b889f4c83cb0b7464203faa80c77b302304b2a92de4885f68938bfcbd29efdab41ce1b5a217087dfc5d37f4df3b84cf8e67fcae8dc2f99db3627e3155ec5de7a390302047c435bb5006630640230130701578fb07dc77aaf6839f22f6db5077afa5b2d05d56bb05273679c89a12c1c7d4b116123096832dce56acaac6da7023063cd92e71c577f78c752e3ab9c66cdc602d88b20b314b71060c5d0cef2a7f3878e20b034b698de67d734e899896718a10302047c435bb500673065023009efa4a33394c7f7c8479d814e4c8f4f75081c357442cafd3135721a1f796a93e58343cce48f8cadfadd407d8f410b46023100e6427d8880fdfb978a44952b894fbfe0e81dae8ae5be08f09b5a39feb715a230129f4f0f8aabf20c63858a5897a0931b0302047c435bb5006830660231008aacf8910f15411e37087f7108b7e64aa794ee51ca656cb6a56d8b005f8a235c6120f557abf3b5b8c1be9906e3bfeb44023100f86bc5e6050b69ec199d2f3859c0e668471d773dbaf4819fdd0a00dbbc7c259c1f981cbaf4e474737bd73889adae81800302047c435bb500683066023100f052f573896ccd58c6c02cdb3f6040edf5f6ae32585a16206f016aecfe1e3c6103d6242c82b9c3061d83f7da77f3f2ff02310089f064c6bd74723b376da7435e3c2a6030c39c225848c5f5605d73010856d2e6f5e11677f5caae674cb764338f8527fb0302047c435bb50068306602310095e706f13877082548684fffb5e9e075521819799cfcd3a1b660a6be6eea70a1e1a6122e57d1b14f4dbc7c4faf491ac9023100cd04d82dc47aa15639ca91755a63208b454fec2dd361c31b31da286b2e5c9242a00cd0664df1a620c557f7f58d2e470e0302047c435bb500673065023100e1a01c63d8a8d8ce129a8c7b9145a891b3463dd137296b0e4a808f7f3ab3750fbe7e535f434cf08c350ceb1544e749c502303bd56898f7a72eace43da92eab8165273596e22203aa357e3ec95f64cb4cb5a6a17adf35966b815d32eabffc38d7fcd20302047c435bb50066306402304b253e323f3044fbea8414910bc5880ad27923421b703f854c80b0d48dd4ba09cc952e177d4a9b535c683f274892d6bf0230052d801c55ca66e7b78db2109ffaefc2ef66d1158848a0169c60559b3b704b6dc6ca23568b9d1439b100131292f94e520302047c435bb500683066023100d8bbe6c606e1abfd05b02cdf7345a8554bc9471f183c2944babed74b415d53c1cf867d445f78105d17af1544302ff951023100f82453d763da5e81208ea5c05adde91bca1e94d9864c642653023333ef932ca84362e88291bd6c50c709d585fa89b1df0302047c435bb50066306402302d72e71c34578cec9b4e9d622294a6487e50a65aa17a3d4b959a198c94cc80f712791408c6c92ad0a009affe7493057a02305e13404e3c80c2094f7e949ce493fd20eceb28cc97f7827bbfdabf54b11a1d125515c47d9cdebde0ae643d2829bd13030302047c435bb500673065023100d5b5123f16a0191c5501847133494ccedb26bf8c871120da87439093c9e94a2ac7001f1e75dd1ccabda2e7c030b9f9db02305300fe99e37419ac3d81d05ec23109342fa01a869837729814eaa34b4a4dbbe40d054ef6f6382340f765cd0ad7d643ef0302047c435bb50066306402302192dd45337a6ac6847170fcfb4958d784193732e142355485e23145042c0963a8fe25e39f63a5e412bcd55c8a573bd002302dac8696d1cca5fdadb3cf708ce0ebe459c9d7de534f4010f81903e0f634da2b7f06037cee3e91f5acaf5a732379f35d0302047c435bb5006830660231009b5269856d508a554ba4940415b4500694df0c2a40cb85dbc2f26c7fa7a95da6aa23e25d25f311ec2be0d66c69586953023100a2c4628143de8ba4df07b3a304e908d27a60d7c8d4090817bded5549eefa8c7b78d77069f1505dfd80efe1fc0fbd2d040302047c435bb50066306402301047f9db03a0048c556164c337989deb732099d35fa9efc714b93834a51d168444c3829f2c177730cdcddb2cdc1ee938023056aee9e3bb0a2b131a8d6fea6fd04d43d99b2d104f272b3c7320c1aa1201114b85d0199f0988d7b3315a6acec67f6ef80302047c435bb5006730650230234964260b76500160a43c12867c5e375670695e44938926742ec5780a80a00e8d12d2d7f781b9c8641ad12a8c2f2037023100aac7bb4e7a110880fe4c67c13f170d22158021ecf3410d0442988679b6e788053121ad015662b3ed0743a1502d3fd37c0302047c435bb500673065023071c8ec45beb5f84acebc3fe44c53e7ac364d112493d6fc3b6194c176e3b3fe6d6ecc5f4a483dbd73f26118b8fcff3e7e023100dcddd50f2caa007f2bcb1266f9baf482b531ecfaa70407ba22c123b8e1b71eab4ff4ffee81a4258bda403f54d22087650302047c435bb500673065023100efb3c640716d2f2d6b921195cd4f2f3badd025f9a27a291c11d09455cc4949723762bc985e589efea8d3b1dc01f6f76b02300ef2415e83ffe5807256621852d2028d5ac76e21a21e3afd21149790fb4d2f04c74afad6e1ffa3bebfe683a519e2ef630302047c435bb500683066023100c2b890a6f6ac6ec88fa4fc1b17bb588e0cba3150dfe026ef12c051ab6745e0851728550bfe9b3ddcc4f4be809ea25e51023100e9b1f8e0876a56a05cf9b4f0e3c58e2b9a1335b242e7ff645262871a600db7635009071c14643105b6899c3473de262f0302047c435bb500683066023100f269954f9aebaa73d366a30001730bc1e965060dfe1a7d1d63455a0fd57429fae00c23a3a81f2d34ca0681c850bddfe5023100b4a472f4dc8c9b65c88951f7bb96a9eff0fd5cb23477f0fd228ceccac99f6e0e937df682095b672d98965fcab8c9f0700302047c435bb500683066023100beb8c937889440244d6ee50d590cf7527635c334986d809e69a71179be292caf63063775371655d2164b45b14675d117023100d8d889204373add4c3452fc838aa051e804e68a12ccd7316ae4b51b8e806f86345a5bc4077111921c7b245aa45e41be60302047c435bb500683066023100d031de87892b1d9372f6f9cd2851e1c27d8641cad6a999c19f4ce326955e36a5792cd03aa11651349c6b4fcf08758c14023100eb6fc23de7935ebcf8236cda94656c8245c9cfa7a26c6bbf378a3a10bb16791916671a432d4cda0008110a49cd8f42830302047c435bb500673065023100a944fbfbc12ee16dd3d1493f5fb4c328c3381413b8382ac2c245663d880f5d5d75ddc21f1eb476b74e137b3e3e276ef9023004663790d7417e4d8613eb6105a1d608ae983615a1bd2bdf438e1a64db0a286874adb5b06df182cd9c72cf69a81fb24d0302047c435bb500673065023100c2d220e781dc48ad3eb52b3b43b6a2d038701477e26f71c5e9241ad86b3ee836487767b5f41939510a862d462b42e927023071682d975414ae4984325853064083b1deb4de67d7d591d3f5a064dea6a96ef730a8b7cccbc0bd5776ab859e1b72048c0302047c435bb500683066023100f401547752d75ea84119f167a0f1ed9fc6926ebb289cc282649fa890fb4f0d4467a16afd1f47f0c29d247968ebaf678b023100b564c46d4123609a73887333cd659371a99304392bf2b5c66d4e2f686057aa6fdc842555f6d428849262511c06d0c5760302047c435bb500673065023058a0c96b5fbb71451f28735b38e6b159835678187ae166b48adaa93f54dcb17c924055da84c4a40935e448d76818227c023100d517fc416995dd5a35dc154c65f7b89310726fcf9e551988b7c7890c675844d31a3a498ac6b8c74b6e376c3332e732f80302047c435bb500673065023100e32b34c9b57d96168001d5062552caa2d287dee2d56d5cf1e951feca71736173507bb6de69cd369cd0d47ce61f8d952f02307cb103c44c956bf0de236f881efa0f48bcec9e905984da9b66ee72f0e113f3df051d86a172b4236966d926136a93ea230302047c435bb5006830660231009e25446afbf8b122439c093b5a73bac569ba163cce3aa9d95aec13032074c66ec9d6ee08bd566794ed9f1818ca5d5125023100a0828c538e43d6b592d7c2794ebdec32b8501b8895cb6f7bf7e996068734d077543ec2f6229f5a3a5b649b948d4ad1a50302047c435bb500673065023100ff3dc2cb124cc34a34790c8e6ee368f7e6f505493ebf61a82e29321e6e346e96a69920e21241f79481a5e6565736bd0102304cd1ff604d5aebb55f26c1cc8af5eef7034d3d9aabb498601e2e50efc4968557a3a9dd8685c9f8f48377975c36b6b1f10302047c435bb500673065023100be70099566554d241efb9880e61764757625514be12ff8af2acf82a491b248843bd8cdfa90d7866db155e7a02acc01ef02307a0ee582d6ee60582d2e3f46a2694a408b86bece5a396cb0b6dd05e77f2e0da621d9483a86bdb6964062334d4dcb6d2a0302047c435bb500663064023074a6cb84969dd1c40ce6150608b161f313df67327eb727628e840d75e15fe9602e2a251b7ab59d192bbf23526d2df83202303c010c08d09f67c66a449c7f257c6e22c0186875c6bfd6bb57a8297f9fbcf76699cef5a33dd70809a1d6933a2d930e0b0302047c435bb50067306502303f1aa5239857bf0f5626a05cfe991cd3992b0b2af790aed27285b7ea45a1a529bbdd15888f13495dbfe7d4d6945d5d61023100d109935baa49723a18af6dcd5d36a7478602e253f1e69015474600811f0ddceff5fadef40dbcd56dc960842c3a93292d0302047c435bb500673065023100a80707c94b99d06fbc39d0ae8536af6cd455a0f226247b46f82c136c7e97665cef49088903ae19f9c79e8baae9f7fbc202307f25f1ce32593e83d78848b461ca3de6df27179fb5b24fd27f3ed251a0dd391ded36cfb3c1d3387dda4f9d3aa4de48f80302047c435bb5006730650230190ef98e7dc3cd7bbd80760f58891dcfc2a4886de8451e82c0535ca93251ecfc55bba6bee93114453f18c85e2b1728ea0231009576293f47d05de45f21d19dc1c640870b71a0b13eac18624f2c297fc3bd9dbeb2a9f6b27aa972aad7a3918de0b13a980302047c435bb500673065023100bfc4ed3c49636af7c48832633fc2f5288e72734a7f94788635183fd46aedf827b0766a00f5098b784b78edc3af0d5db20230132ace8edac3e6f2da5fbddea0163c74ac2ef3dd6b22a1516ba477de2cc4b606e959af1219b7fd60dfc7106fc332f4a70302047c435bb500673065023068fe1f99ab9e6eb5cf71f5360ea879997e2119856e6996070c278cbfb8274a8cb50a4953c43b303b30d42efcb0f4620f023100d71dda0d1e5f5b8473134c306c5ac11ce38c29de1caedac99b3de7d42d740758f72cbaf9499090a19e9fb70c4fd857c90302047c435bb500673065023100c728ce91b2b15e903d9569dc7b145f2b7a86b532c21f1aa1833a36a2617ada5095acd1ee5e597978719d32519f5f531e0230596acd5ca3925fcb34054caa83f07c690ae19422daf4bc4e4f46511ac85d72749874b075184a8162a17e412774122f100302047c435bb5006630640230253339a4c590f2b421b94690ebc20b4e2af70391446ce528d23ea2f1bb280cabb67ae41b7365c9e56942d168bbfd20f402304fba2c9310073e442061bca561be0dc411882359ea4109ad4d78ccedeafb8ee79a394db7db4e0949bc11315b735388e30302047c435bb500683066023100d97be0cc03ebdf54a70a08e9d1c7ee9afd8abfc55b6fafeada86065547d2b69d79e6ab87e001b23d2ceb1ba543aa8fc0023100b97dee8cc795fe150327026e400802b72fe8c741ce19f8687eee039ddb273e79491cf8a18086ab54f7156f98564ba2c50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fb2458844e7e98dfc900f7c8821c31b6b54ec6d2b767f6601be27e5742558475b4f866b1b7a1bcc46388dfc0df06e1a0023100fe9ce81109e9b126aa6a8e8d341bab6838e2c11c50f352932b37ce7f3498f996fb3aa0bd3c05d8f368852620081d343d0302047c435bb500663064023030eab5b68ea7be31238288cdd0bf30b6d7a336d013fda99d6a6da16b6fde4770d765d95eff291db8fa180b54decc3d2f02306043ea9e26d75df7e37dbd0d316dc4e681a53c219e2617c989de3d641f8a6741791315d9c4a0e53cb3badf52694d7c560302047c435bb500673065023100a8a41fbae23266a90f47b5bed533ecb31c5e07fcfedd13a86c166a8569d179d8dd5518aa160aae6eb79521dfa040700702300189a7a6ea21e513f11220cfbe4b72fe8ad5ba797973fe27058ff50adaaf4590c8bcb50bdd5e0b5702883e09855c95880302047c435bb500683066023100c4626d46f82588fc87dd3860c3d818dbdfd87a86c78677c12a27b898f9570c57e65305d655e9a2c35e983eabdab16b24023100a8d974dc7114e9d55789cdf742f2810c6a8c07795fb8609f3d75173b12dbdc13031e4e8990f8657d18a77ae0e216f0fa0302047c435bb500673065023100d214dc2e408df03291bb3b278037bfe5cf0a630e9074be2cc4a6e1507d6c904d5c07cdcbb4e7c856c85ea4c3f087f9d30230297b428c27a93219494bfb39ec6a635cba3af2d52763e2a1fa6c5954ba45a292659a9225c53d1ae01e62d6e9a795efc60302047c435bb500663064023042b0bd92c01acff5bd54f6c44c50251d1661eb17661a68827ee2a098701957e3fc3915a2927c7d99d67d6a553b4db55b02302b5a05069839705039ad668bf0399a4c0e1187037e8ddc981e644882c2909d2ff032e60d4f170c3c7e7b553b6a604b010302047c435bb500663064023039bb782e79e25e0deb6a1ab6b7d69973cb49b50a862de38dde2d8b1fbb14ec6362b0ed8dada1eaa4a01937e3cecbedf7023073abb4e62b67362d356aa96d6122df7c9ef5b9b485beb4c0d6ae36430dc650167e2de86814fd7b1a6fc2cde77a2139200302047c435bb500673065023100ab8afd2a3fdb1798b948df9c417ec0064b1bc58ad016b85246c3612bc5bf42bd0d9e76eb91facfa5eedfe38cf5a5c4a1023053cf4bed67f9fe802dd2231ea67e9620b673c72d35a588bceec93a55a9b8a91f7459df563531f472b452283f4870cbba0302047c435bb5006730650231009b58197b9d90cd12ff939d8e44222b6c7267fda65e0771264741f98bdd4dae400e3185dd5ae4ef37af72131abd74b50902306cb97abb8db7041aba50fc9b97420ca440c7724dcc11d7a89f4a4acb06595153a10b0beed7c9a5544b1cb2fd9a0a974c0302047c435bb5006730650230438f750049e895b815a80d965e49b66dd1fac4adf1b562dbcf4084758527db4b680c61f693a14869188b57efba0976a6023100f3fe61c250d16d53599611525d635edfe45e1bf49cf99a5e427309b0b7eabf9c41c0c13503a39339a637830105fe68e60302047c435bb5006830660231008f450ead3e12ee4d117fdfef9ca3e5df02d2d6808c79dc299f65969658c20cddc3ff97947333110a3280ed9d460af8ec023100aed037a258c80583e269489017e2d760aaf711b3eb1cae067af1a728d2cd6007209612c5388ff19e4021aab9944b23fe0302047c435bb500673065023100fa5417e5e1a346ad5d26dd471881b6928506f3e68d86b7f74e80434f4202f4611ad30cd44c65ec772d116d68a8af2e830230135be46ec67a6fe5e7e8d9ec53da24c8916405a30cfbb3055c7d5ff743897cfb6649827f21b94455045789f8b7455a4b0302047c435bb50067306502304d8b56a9a8175c64289db14eaf485fd44e2c00babbdfa57241c07611da16bf5f6ecfd7a607a0c47624b479024a27294c023100a3aa750ea9b96eba5648958775529eb111ac95a6213e33e634f49600919fc580f750abbcb6fadfdaabe9fba2941527100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301c307bb66741ae9a1035030fc4eb060d464fd4cde7dd1d80d85743872e565347b3c87b332ad960fd63894b0a342fb5f5023100bbf9080487155886ed6787e7cffaa378b342639618deed3dd4f87318e33b3406d05225a3525f9634227bdc198e6ec2e40302047c435bb500673065023021b7ad8c3b8c4342e1e71fd567dbb71fb4143ddb1ef765f3c46add8739863be77062962d820597cddf3ac8f93d661b27023100d86dd17d1092723292e0cf7456828ebfa6e3d412dba2454bcac650d85acf0799759597215eede5ffd93815675e64adb10302047c435bb500683066023100f8835508fc5246dded63e6b9c9ffaafdba9d9d7a700f298eff6ac9b97ab7bb26dee006225f5697216c52945f4f8a874e023100940421631e8aabb33f0cfaf55ab83e85e1fe89f5799082d06c12f138a2b33b12680d5d8702e78b8209b328f085aaad8f0302047c435bb500673065023100db40cbd4b7867c1bced21f6b20a32e8ecaf0b49e9a8c54ea489b9afb0ae77eb86e2fc3f6acb0e930825b4b683fb9d26e023035e29e154b8756a499e4c0279c10724d83642284cd0963c3c42b4e5738adc3d3b50279cd58e8a80f7d5a516952ecc8a90302047c435bb50066306402305ec3ae875f175b8c7c0a8a9423c1c94ca6987b8203a9a9859ed2ae747f52fdabb994fadcb8f23bfb1ef7d6992a625cfa02303916a97fb989104fab90f675e0a7a9ca1ca3d25b63618f4ead040cf8a6731a9242cec780d5298905ed4046923f6fe07a0302047c435bb50066306402300e8cf37df8886594ed707c6a02edf4954094f9e10515a403adc7fcf554b491bb194b1c0a0c8812996eacfb1377c69d0702306d8ce082ae3746d2ab33760327fd7a26565abcefe5c9d74da7458b7b6c738c4272ef36c3c8e850d1b0d91b5e50997fa40302047c435bb500683066023100ff53f73b84e250a5fe8b451cbcdfc1fc5064db46c8323176c39ac4cad79ca061b1686fd9a35f4c4f7cbf494e4a3de58c023100bda91ab297b6bf822a9bdf4088b7be205ac07a838e73215d2b9ff6195293eae6605e33968c548d32ac02aff635e3e6710302047c435bb5006730650230572d33be8d7e636e2033ae3f3191f88331c7db0855e47336fad069faebf65e70f23e5881df8727e6dacfeaf3f71a4367023100d84a9ea24e61dfeaa06980ba4703ce4bc21a1629968f40968f116f65ec5e3f49eb93d827f826e242c108c25ee7183a080302047c435bb50066306402300db85a39743ed11cfde88101e91a86146f1542edffe7adecbe647f705ef40dbaec942f9083eb9f881e803df3e4c441b402304fcce22653df2b8f80e5d237f866a78ff663b92e27627faab1791e05238ac3610c97537740d9d2c0cdd0cfa59118097b0302047c435bb500673065023041c175dd9b633f56e40b389d6b40e9459d5e918964cfe0ac5c87b9f1064d64b2df8b276f102eaf4728b5e8a644b270d5023100e0ff334b1a68b0900a1ee576001d05e421478ab34ec6cf42fd8ac82c58ad03e498ab574f63803a8f05db372245a836070302047c435bb50066306402302977af2a3d0b4c3d2f73527a1d3cb2f613a8526a257bb72caa88f0cba1c097f0b49f2f964ad2b350054dcbb977c8c852023071bbaf4343bab7d2ca8e3791a52bcbab1874d864b2b891e6c3ffc09da81294d918d05358e1699341e08e8e1f7de298500302047c435bb500673065023100f1c0cd4c0b8147e22e2f367da585acce98f610d4aeaa2a455bff8876594ce55ce6f4dda7c871b34edab34f47e1e9f2dd02301a56dad450cf1bab6cba4286e8b74d4e6397abf444ba3b08251d057df4b51404bd4035e8d13f1bf02095edfb6c790ad80302047c435bb50066306402303931f6054dc8b1c74314cc9f2536b0ff94fb7414a54c232acdd9387daff030b7b219cbb7f3252d88b955079b13953c56023031a902f73c7af7ca8a29719a26e9806df02169109b8886509437edd781f302a626eac76658b09da93e34ed253db7986d0302047c435bb50066306402306a3b8a31425f761a13fe9a980d7094746bc3c6fbf6797d9a41dc55519bc74bf55e0a4f642cba626746c5c4a4cf133df9023063ba442503f46d08aaddd9507caa8c7541c999ee422828de5ece6a3d63aab22a426bae6b67257402f8b0029c7094e9190302047c435bb500683066023100f3ff675ad6894b40a6f90a99047e207896c9559b21f6039d471047491055e1d93b1b92ce77d482a0c91a9e7844a89aba023100b0f686e508a209eb7a5051248596e26baa14151c845451e70ff32cfc4d9687cb95155e5b0cd61f4d4f03dee010f7f1050302047c435bb500683066023100d4eda727287088495f0a4fc9ffdc844f7fd340179a8c43676ebaf36cef032dcb6f81f975ea1268286770b9de2241f503023100acde2223500ba8f2de560491faa1d3842dbe95189b9fdb207489472c8b4ca027348cfe789f3bef83359d814cd4afbdf90302047c435bb5006730650230242c4af0eb72f476a28c91cf43c592885c982b601e4e2b54b18f7a11d69acde69268364b319b74a424e7ad32c13970b6023100f77dd4d70de2ab4e054fc647e691cf4046a6f3344cc873e89c0229b686ffaabd37e0ddc4d05203f4ead63d9d758296c20302047c435bb500673065023070fb973669a23e87e673d6120523451b324ec489ab8ca0087abd9f5a5da91102a1b1f67ef0e65c574d83f9576c977790023100a63af4fc9070d443ca8c2bb502237162dc36b25773de952d67d5b670a9323b70d43fc855a41bcc50c84bef58e96750250302047c435bb50066306402306db37cd6d4d3d709d9efb33302c98c688395478b0d2e099bdcbe423586b92df18437b39aa222e6bc61e5898ea23d1f13023074a782e276261bf36b2878b3e66b93b988fc5243f803270f22d6d9e9031211dc2265972eff00bb95ac3b56e06c5c25fd0302047c435bb50066306402303db7740729e8f33f5cc431624a249af397170f0246e9f47d5a608d89138f731df9e34fb060542fa580385e174acad119023051ff507b7f418c4fa6cbc439e3276d235fd67a6d71a95a12c65269a2cc8259b11aec9d907e623ec3d8a806f36123a0f80302047c435bb500673065023100d3ea4a1ea772aa35249202a259f206bc44791961fe15c074b123ac15f03fb5a5294c4ea23e5d69229cdbb55d02bb2dbb02300e2f18fb57093572a2c2d1251071890ab3faec3a34163f071edb39cc99664cc36af5085fbdfe2433e107f9b8121768d00302047c435bb500673065023053590b0680d31cb73b0a9b1a019514cc13ebbd13c51dfb079ead6df048873140fc4f6ba22154445bea74b4f2a9d8bd05023100ce440af72bc89feb5a1f210db07bddc980634d4dafccb1092ad503f9b6f51d1eb29a37da03c04b35e5ad93d4cdbe17440302047c435bb50067306502302072c52d594813d33abd5097663f43f646629c4383c5232370bcd361a24633f279b6cb46224645e5fa01b297ae02efe5023100f04143767031c6a9c7d1991f88818d29efee2c5645c18eeff58e65bfda1f14abb3d88d4aa6befb012a808c5b2a9cd2310302047c435bb500673065023100ebf7861fa9987b7e71b80e29109a6e3914d449c8609e2783ae4c6e8e173c175a0e3801ef877e0801d820df4c9e8780b20230264ba1ba74a63be53aae25ea238bbe5cca6e229d45a9b7e16c7e8df189072ddf3dd6116b44b51cbe83b49f95573c6a060302047c435bb500673065023100ec199ffa8f5a5217be16c2f68f4dbce9f79cc3f5ff69c78f4cce7dd7ce73528e7e810848899b68b222937bdc90a0f9d10230153dfc18f56864e3fe605bbbedc0272cd98a48204a82e2a9143933054eac49debcb92c613448163aeaac5420e633bb670302047c435bb50067306502302587fe5ccaad442e1cb59b9ffbb23abdfa728b961694efc3a3003484c85777495120e46bef9c67fb5dacf832865e53ce02310090cd50a1fb3bc4d40f59c35419f0b6b8aeaba3af0b54673cd21008645e74b5105f12df3759915a05776d0e97ec07be1b0302047c435bb500673065023100df6e42457f021bc5915d08df99014435e98bd0e8f3181549dac08d71a02ce38772da88f8542462425d00e06c5a37c67b023074f37fb2a5516caaf01e72b03ff4c2555a54215bcece7e2f8e9b10a1b9f8b23cee7b90bba1299503d52fa7a2b2a27da00302047c435bb500673065023023578d32d5b63e4b9bb5909a778aa4fa9e094d5d3a84f3a8d8c8fd586a24f0514dbdb708fe86e4fc2c905b8cd229c31902310093308123b85753d93ff0f4d927405aa39cd4008f3ab2c4c3ab5d937d8faa9a6a692dee39342576b92247fce2dc83baa10302047c435bb500663064023074d100394fd4f8c49d01675b9df89d2f7ed7a3635c1c91512d5e81649581b0502dbdd68f630059b650b124e73f2bd82102305fe5ea1647c7d92991cacb0f869d4e9db2cc099fd4daf1a374978874b0c8d192f1ff396d75a3160e2288315f690be3bf0302047c435bb50067306502307ef6d3a94aaa570caca3b8ed6c4155253ec0d702534c4d17e42c507b267a63d79b02b8bcf6a5e36f2e289d25eaae91b9023100d8ddea39e168279b7849efebfd6ad9a14117c63b9073ef53876b9383047dc933db744bde60e705a528645123d7d6cbd80302047c435bb500683066023100892b5a50462eb59e6197fb7e2d2ab90609bc33d69be36b49b538a7e11b85a92fc5a2d297b846d6e2440702e37e8e78c9023100deb959dd03a101e6103517609661ca315240a200b0caca461bece48a1673fa60a3a5fe9f61fec2ff1e27a317ec842eab0302047c435bb500673065023100ab6669dfe20c39280294f1aab43eadccaa0229649d23a45fa7da48b8669b741bc8c74ce8f6ce2fb082aa56ce30dbe8c70230657ccf603767008cbc9f39f83e4ad1c92bfa6d79352b5dabc15ca2b7b8e3cc16f18b51fa3f64fbae75f8b159e348a10f0302047c435bb5006730650230171aaa9f345429777a56a2833f637a04319ab15fbb91d96b297f6ef15a15d16af27455a787a1429876a187f7e28789970231009a87da32909cb4954b3b6ac0c69cb769a365c2cd484c80273b6659d68db36b1b9ad43d9beeb3cd43e292081926ba125e0302047c435bb500673065023100e08fca760a446392e4795631c26070c1b1bb110e458a2fef181cd02ff3736dbf2eb8a290a6fee61bd1725cfac828209e02306a88c8934efe8f611f56ef1033d6d5c9870157c5f889101a773da5b44f628f76dc2f0507d992220da0067897a4eb51bd0302047c435bb5006730650230397bcf8b6b9c6234597910e72ea50c752ef987c0b7df5553e37a3f7c5c2edaf1f76505c0fda950e86238db3f9c441bfe023100f7f053f48dc4e3a7a7f4d5da8bb1b03155f6bdf605f5d71286c4b81a31dab0a2fb5b9ef88bf770670698ec05f0f1c67d0302047c435bb500673065023010d6cea0cc23357c4209d05bfcd5b198f82bb566b2269d48751924ab9910ac1815aa004510486ffff3312148305f0c36023100bc61d2a1c5181d3ea1ae61c1a3acb83f4b3ad3fac64b84472f293f5efe8e54b425dd4a1bb00fae7cbdac7cedc3c599b90302047c435bb500663064023030226483804289481a52286aa0587416c7e561ae32c23b4447594bc525d0edd56391a824334d97f3a0bbb7e0fc71c474023009b750ebec6b1fe698b196724872587552fb39b22e8c7438f893943e37e2f62db68d316616991e6e52d3fa23aae6ffad0302047c435bb5006830660231009da43772cd8ac8f84c847c5d5dfdd1c831d5d92756d378c07726e1cb6bb3939abe255d632dc1ca42a5e3f16b4616bb7d023100b930844780648f26799d466159458ba2f624cfc2f473ec7ddee12ffc5bfc5a87f8521967e67148e1f0ad0d0d66f293680302047c435bb500663064023039e66c73812c2086169643b98104c5d6764897dae0ec428bb266184dedfcb217bdb58855008f90560c8d3acf3e7449f00230205fb67468ef8a3090c487b51b5a894c0b12e8c2c614aa88d8b6034005766e527328d86f47e1d71e09aa1fdf1d08b6410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230677c46b86295f0e060edf8578d0873b689b4cd8452ae77f12487ab80541ee5c5312d4df4856de95df89cffaac813e6be023100de812a1e71d7f58ea54d102bf2bbc8c8347e53efcc025b52672018ede587e836c34c765400d22a7cf2c57346cd9f4dd40302047c435bb5006730650231009b9167e53ce94070b021eef07baecb6d869e8f76131a650f7c1d6b78ca293068c274a07c931f88e264d2143591103fac023000fe7cfe0d0aae796afaae10c8949dc41c274aff8805d81079e36818f21635166db04b3340a8f40d49a466845bc7f0010302047c435bb5006630640230165a4f1d614ba422f862381456bb63c7af4e61423eacc67b0565587b69bbf8589520390e13b64a9e03eb976287d31e05023079783cc2d1de732ba542cdf11b314db90e52e37ecd7035acb4a99441535ecd9dcfa397db83475e4db2d56f7d2752bf930302047c435bb50066306402305909a5f5438a009723f8220487fb249948fa76ef6c57acad62a62509b4db55d8e65f5eb61b0b9a1c7a49fdb342af204902304e8c98a74517bbe58c18ee81a69f550706cbfbade4c23043e793024fa5c5eb60ae094054dbfe41088e989cb2ad599cee0302047c435bb50067306502301f3893735c3ac1204d2070b88af6707a5439385f9ae19bf14ea40e05f5203eabe3f229b8e38c43873c67e4944654721b0231009f4f3d532d4532d7ca418a7d6ee6f297c3860b5d6340a86cc64c87248d2c7a01428b675404de2383a0d22edb9775d69f0302047c435bb500673065023100f6f025219c99400e678ed31cc7b421e0bf8cf60b81e2ed37fb884b2ed5a21c84396ea65a5f94b0e48217caf7c334b86c02302fd7b50106a2a79c3b709e337bc36a9247d9e0c7b853d1f00d75239ca2d52119e6576a0eaf152f503f508b743cba8b3a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ef51290eeb6a684d9168449ca008f692ab91b936a943afd66c2a94bf21b85d292776089bfed18a09b09f69f9002b8aa2023100c562197ac45a0489837c7c4f1c66032834ae1b0935a16b5a33b55af0ea44e51af303b679c513da13510ff4eb2b21b75a0302047c435bb500673065023038fee9b9a690f08a46f69f315d8eb9e45097a9ac63934d227ca8cbd2461652974578f6995b81713c126fbf4957acebce023100c250ede571f3315b27b7b963d442b399d162f8fab2d0a5e159ebb4c125e928fb0e167b1df23c80592b27ffbf7dd20e4d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023001cec73d3a32d26d100d21b64df88247f7d10be3c7f38e1429703d9b6b3e84be702f135dace07193fb9bff8f601f37dd023100cb40df0211cef752ba6a478729e1653e56edc512a1d66ebbc06ad282c6d68903745d2ab3f311370e1aa375c261115d5e0302047c435bb500673065023100d5d20d44859efb646e0a2c81379003f0c54372d458d0d63e5bfed6e454d26526b70bd1250618e48205ba5f478f4a652502306af53dbf5ead4133b174ef93f38730669ea37c1c3e0af4a7d9ca1653544d6785cb17896f31907b8792ca64cb7e389d4c0302047c435bb5006630640230241014f63313dc8a97c95d2b59ed9a833c5002aaa167918f5b4cd5c1da7628494a21d03d30cf5683080c4a0d02700857023058e8525735447e606db1711714a5b8dc2e4b9c95200b686d180cc40f2993a21ae2c2cfc277bc019a23b54147c04ae8c30302047c435bb50066306402306b84a5a8a90249beacaaadcdea34a9e77bc294f131bf8c0a83c02e22d7c6a935b329f7eddc95f25fad4444c2428446070230392734394c7d4460f5c74db8f50b9887bdcf8de12964cf82b5cbe0fb1f96fcef32ed2571c269125c3d6ca4905c9748c90302047c435bb5006730650230766e1c4dc1d90dbd4d571414490549a1cf4590cf8e82df3fc9d888d80ae38350e469a4d217f898ee45695979fdc0df34023100bc25a88404de41fb06ee8c1d6b477d5f4f13c149e21d16cd183b4c13bca86d3bfc20676220131c383ef188b0758ae46f0302047c435bb500673065023100aff9650998c0ab758e6480f12b494cbae0a333bc6d8d802411c8c1f018e52b6c0ebcf52120d5d780da1387e56b0a98430230518e5dcf66b20af4d70fbdd353412e977041b2fde96943b9421481616ec61ec1ddc45f8b458cf94fe0afe7998616124c0302047c435bb500683066023100dcbfa7b01bb97488a80593819045e6d672f1d7aa9d56e3c13b092ce900435765eaf43c620b0335b65d5d4d648f7d1cfd02310092ae6c300cb8f913658c54be37e7e4806a86d78081638a4649dde5623ac12647d652ed6ec87713ac89fe0dcdaa28fb640302047c435bb500673065023017d0c8ea1d234e9e9a8a9231806fdb059f62486e03e7a3e84b4a047a0dd8497ca6e30874ed17204fda1faa950d50062c023100bebcef20ea8ec2c9d7cfac86e469413ff32bc598dda865122a6d1cfe0dc2b4136e2721e9dc04b4aedbd9c5b2c7b4a5940302047c435bb50066306402303644427dd97074fe90a1e5db1e920a04877596919938d908b56ac412246dc4d5e402d3685f7eac7e1dfce958f60ae68902307085bf8442f982ce9569ac960c4cc95c96eafd358594ff31246ee53475a2d113775d9fa6030f8a04c5a3a4395ba3f0bd0302047c435bb500663064023037d0e08ea8c24e03cfc5502f0235ab75ab34d28768b17c52dca56733ed520c5e8bf1c4b61181db9f93cdc73e09ca2aae02306180de607a1945c9a9a6dee85c4aca5c150acd9334a1fde6ac6ed6f28566fc8640332f20b40630ddb6da3289fbda3fad0302047c435bb500683066023100a4278956c12b12a97a397749d827f9dd3c4bd6583554abc3c3cd10aa0a3b2c00505d2806e514b744b8c9309b3a85489f023100a8f5f2f73f23ac881572c0bdc4eeb52c047f8194525c6e84fbe9a0bd3301b108efdd9f866c8f5b33b4b594bc4c05b7b00302047c435bb500673065023100f3660b13df0f986e62f4dd651fa7d1f7570330efed7e1e7b3929fd5e70f1ebeb0f8becdf74c6e6690baccb16f157f6ae023013bc288fd1bb1dc8399804720a3461fe61dfd49c133e4d050ca70a79fc7afe5130c321bb1ffa77f3a3e3f970ad7470c50302047c435bb500673065023100c996e93c2577d49f05bc4ce5de51708c043f7028e6cc1dcf926d21b3b78ebdbd65199b5fc1c547f7d2f1314c344b1f3a023030bd05bdeb3529c5ab7273948cd3099abaff1a032877d192f1b9b5c778202cfd22429c82cc84516faa21664f9f4dbb830302047c435bb50066306402303aab21387ecd24fbaf1c24c9a9296a94d91d9be00fb694b1345f0aaabba9b96c8c64700dd2f51667f7344cd733eba48902303966b9d2c33e614fdfdb857bba9b4931dac302212d105ea5b692f26bcf065d3ac87d3d66503db1208114cf7b129101de0302047c435bb5006730650231008ff9f7c2d2d299a3c567e4ed5940a97aecb8af2b4c22da51fd62b3fc5ce152747823cef4a769d6d5938b14061d1bf4c802306a292dd7cec4b87d37845d2a26b575bf0ba86d2ec5ae6860fcd92220ec6ba9d9afc324d4559417090468df46c431deee0302047c435bb500673065023062cc780f788891d1c585c1569be7f3bf1791a475c89f88250123e7ea8b079c6d7d8aeb2819b4babca03ada80d42dc98e023100f9cf11253fa30cd0d7aa0b15d4887d9bbfb42f93838165d83b42f565a297e8ec68399a7cc7d892460969b560997ab4c70302047c435bb500663064023036d2d9a14b1e8d21bec2678a4a473ea6e516ac2cd1c0ea4d21aff434f5d9926882d86dd14b62025bba48ea0b465ac00a023061b1c114707c025d0e4e20b2a458a496845b0171ab7cf3e05c245f0979e362960e01b61d3b03a272fd0eed5a175c24390302047c435bb50067306502305b5f5dae5122750750e78a2b978397df1d8833fcb8ebfc1415f08b9f7ef08d545beffbf0993c6058e6179b74119535bc023100b5b434c51b94eb9dd50ab9004a40ce9824136d493cf5a8fcdd78ec61aa88997516b1e9e453a4fd80bb4284cc4b2743480302047c435bb50067306502302d481320dbe6ae32668894bbbb507dc5ef098fe0fb550def08e8991e123f7f6f2cfde31da335a87188f117640a5ba00c023100b3d5800fa519eaaa416c811ff83b2f196a4ac5a9121c831e91068a2081b48933f18ace5ae6b053425ae46baf6b4a036f0302047c435bb50066306402303b02da340aac6765429794ac0af6f95127cdd45017bd3eb56272c483fa3b65c2a19e76416c76391f40a421e2eb947aba023034088fbdc9ccd03eb50b50196583cff7b91f5e16d3241d3ce04699a42bad13755900f8a2f1f4e9bca8c949817a79ed1a0302047c435bb5006730650230080a1f825ae255818ebbf0fd196e8cf632562f98d76d1856c47a578bd950a06d8a3b85a3b2613f209c69716baaad0587023100afb08fafabb94198fe3c0989c43512f40b1aac5377e0166f5816da4136f9af6203ee7f734d33436ee392f831aed0eed40302047c435bb500683066023100d5db06ee0b7c25814fb54a8a4f3699cb3a181ccd5c2dab4f977eede7ab6390ac9985380f42a106f793abb1ec22cc0ff7023100cd03c8c598d04605345f8ff70f077712e8ba72bb973dfc0988ad4ef45ae8d9799b4f51be4c0fb2c385302b4728327faf0302047c435bb500683066023100a89204d633c362b91a6cfae19af534b15a62d5321ff6ba96e65a50a61f533c947af5ba3ff3820765e962e472eb976b66023100890c4728554e4066fbcbdaaacb078459083981d5e53b3dd296a554a060e5c5d7206cdad56ef2f5e0f063ef2bc5d3ec1c0302047c435bb50067306502300933d7016c520e80cf683339f8133da10d8880325b9494e15bedf9ed32f92f1d6a85160aa099515a3b7fa10b0abf4783023100cabe4c1ee73bfd8e8ef8228569533957cfb78859286f0e9d99365a5c3e886c84220fc4d4c8085cbe0600df8a2243b2120302047c435bb500663064023004ba7d05be73d8bc3dd6fd7a1e2c7e4c923b1b9d1588f3d40b1393c0ca62a6aa3c13535cee88f2e95f6c020894d42cc002302f960dcbd77f5d2b709e567a0d9d82105e61023e77f272c1435a6edcf45b409c534d25ba36fc48da1e640adbd98c414d0302047c435bb500683066023100a3bd1903f13f52a84107f4ed690ed7867183ce54d1b49fbb6280cbdb661f9262c960d8bc7161197799f121ccd3b951bb023100903e7e5438bfea9081e0e07aeeea46264b9a3207b83a0ff72ca427a9c7d737a71bf213aaa7909f62674c48c0e033977e0302047c435bb50067306502306283f48dd449dbf4ed1736259c172a69c11518242ab583a4e41ced5e807e6d799f7c676fff1a61011b08affdb46b4fe4023100e0e2a7c1cf92b8760187154dd6f9c04b66a898a969af9eb097870df4d8c8c77c51812e147a491ad9ae137136e3a73f530302047c435bb5006630640230373e79a20b2d928ec752e68517913f95e9b74d2d057cef200131fc87b5588edfbecd5c93e7fa89eac31a76e1df29170d02304ac4f33161919c84cc363197dd1eb3f3232ca3980b2f3781dd1e9488a11ad5e7b958dbf7b4153b0fbca6fd1a43a7cf4f0302047c435bb50066306402307afc1247fbb3601d304f07a6f6397ae5efd813be1f1452af505732360019374bf8b70e538325e2bd07187025d313682e0230466cabdcace507cefdb3bed8e502bc3528097311a2d99d31b6d3d40939bc2bab3f73978016823458f5fa78f11fdbcd460302047c435bb500673065023100d9e09723d722dcb24c4b6a0c3ecff4b995505d9ee46e61ba62eec4f6cad7b982d494d98dbae0c24ed11f4594fb9609b502307074eb871f0bc75ce675a6a54eff9e0fbeeed4352fe358cfa9b891f7a919d42dcd67622bacf441d4b365e46765b9cb020302047c435bb50067306502303f6d46cd93bd99df7721e2a6586835a3e076dda86e4545b2c061e593582646346173897b375e39b76d3343b39a9c60ab023100c21667bc676ffc890fcce33dbe031d851c03c38e1b7a6de388e8f0f12d33ce307006dbb934e5a42c1661bee381317cac0302047c435bb50066306402303ef8a778118b704d16b8230202bf92747b1e18adcfdb7328a0cf40347de86cb0e2cc4041a3ace1eaf9815753b59182c2023074356f1b5881792c6f509fea2a7caa5a65a9aaad2e3d48f704bf246e3b484b15499fbcd40a5494414df0eacaaf33998e0302047c435bb5006730650230157f16b00bbff47d5ee1c04d9a9b910fca8f065dc95e74e3ba960c7b7e9be94f31ee5695bdac3d9f1e6b0e7656f0a588023100974eea8c91361eab340e8764f49a105a083cc37f405de68557ac0554a0ccd060a624a85493d5989f26e003dde6d95cc60302047c435bb5006730650230112121c870e20a6b131b8f026cfd161e833abf3d8fc9bb2e12e892bfcf42febbf4f5ca9143c394e8fd43b8e007a17877023100f2de4e6d17c9f98dc823dbd2aac7fcea8090b7d8cb0c23affccd9018c3017929f0377e50bedaa3baa95601201888e7a90302047c435bb500673065023100f6542bf18e14352f50e4c2dbd760c3db9522b5e30f065ea22d3a9a6967cea14810aee9e42f03a018809cec60fe8ecb05023021e652a01635cd160b8706f9290106ac977b5b4153fdff980d04750e401f4a5abb8fc242c99bded881c971bb6776b8290302047c435bb500673065023100c4c84cec397b223c45e9d2db0eb06e61755e4d2af7fac0146c4f9b3db00aad636cc44a02cc418148ffac3f848b9538f902300ee5572454dd80900d266e9ec85e0a7cf9e96452b621564d1241ed6af7f7f28520dc6cd11ab3dd4195d1c81f6afb42ef0302047c435bb500673065023100d1974964f0b470b55b3f4b3af2f0c19692e09de7ebd1bf4328a5ba2afee0b7186652b40228c8ee439ffbcf66a684b1f8023039f90f84b86ea2ae14e31eb802befda49e0789da63a41ead5aa17175f1b77e525e538cc754cead4e5f7f1ac06b8a6c2b0302047c435bb50067306502307c9c8464854649e8a35ec9b64b7aeadbac1ebf54d906017df2f6241925442b75a225ebc0dc436db79af497759e8a5a33023100fc07561ebf951c071676d2cc21c2f32d45529e1c232986c4a5f6d379f194711185248f35e55cbd09b9100e337379a8710302047c435bb500683066023100f73ed35418448c64c20ce5e5b291ca0bac977334f783ec0c6e4d55b2cd6fdae37d7c2e25ccaa09c177093ab966c61374023100f4457f33ca4827326a76a17ed4986326452781bf10bfd0dc56c0f995bf8e74815541e26f282139209f4747b39ab85e320302047c435bb500663064023020de5009ae6b6ae900cd65f9f48a22ee5f38c1b1500f7fa0117124fdfb66a069e61daa0ae89a056bded664cdf2ce9d9f023065e7a2f9a1b92d499c4ddb6f7a267b4cdf1ddbba5bc024a5c9c40b1c440d02afd5a58664e76923ccb7d28332173c67ae0302047c435bb500683066023100c044511b161f88d5f0b69a80afb6317b10568fc83c726617662e71806d11b2e546de2d059e51ba191e9a57156882c0ce023100814730d7f452f5e14b15e351e963e53d91063b97e6f039d67abc73105e555dafa841e2ee534aa02e0278d61fb5f18afa0302047c435bb500673065023100d138b0b39bc25bced84849952ff00e4c3ba51830f0560b6b03999b840d61f3d3f13533b9aea8986abc2f0193422bfc97023056813a676c9eb11309b5253b576078878853c59e820cbd9332a659d4391969d94a22ef8e9cf7530ecdbe16a1d0e3f4380302047c435bb500673065023100efcd648bd81dfdfeb2d0f5205884a1ac86f230ae9b73f3a2e506b3355121be020f7173bb6ec387c6b1008637b5be317a0230777b08e72d90d51d1b3845afaf539320914d2c394023b9d6755c3e037296867fbd4f4a5d1caab0e72dc386756e0cb0ce0302047c435bb5006630640230135021c76514ae57b4396b4b612736769586d4360d9538f179d6aa3907e50f39c2415ad36ac92c711630cee0d5394d8a02306121026fd3fe54158624925708f9f6c331ec6233935cf35b636fd43bb983bd4317a13572a5ec832541cf14989696b84d0302047c435bb500663064023054c42bf47e07416a97469b49208eb2d336c0cfee35bd558bab789ef98c3d271125cbd75f83e52519b70a97bed5d704370230360aa68d4a3d1dc9281525f25d3e60507858de10919e4a03cbb9e1f1cfdbc31f9a2ad55166ecf8c8f6eaf92f399ea9b00302047c435bb500663064023038cdc28b9f2b801b889f50f11f398ee8d88134f6d94e63cc9afc3106b5eccec2e28795bc98e463fb8c451892620c00a902302b648ddd645d1c2fe00348d55e4a6280ba5958dace1b9757cbaf954358eaec26d7b4e2592bf997e77db87fed64e0f00a0302047c435bb500683066023100e853574c8de33f5da93dabaa986d5612d109a70d61a91dea6c5b6cb2bd04a8c5216b0ff6eed687cc6828836e90c86975023100ff09cf99762aaface189e63a75c4534f8e97584d8ce7cd57cb3ba8b7c3b87f263a19ace42c8ae89f593bd8686bf707ab0302047c435bb5006730650230553c0568bc1901918e9aa7f2dc7b36fd796fdf459e978a16a92bbe6ff886eb2f35933a412385d1792a820f710844b7c402310090381baf0dbabb1f31b46bb7d61c3187df7b0590823a439be4c5df7a81869f6b90a49a54ba7652e390a82a3261bf36b40302047c435bb50066306402306049d053d5d8e65b9e1ed39c2eb29bc97d0096a2b8724932925bc4f06d4263bdd1f1c7dfb29e02dff582fc9f3308dafc023025f7255772f590dfc643f7c07ec5b01d76982dcf46109546022fac9e62c39c9e8d4f47600f6a2b1127714108219185b20302047c435bb50066306402300831da8bfd4b8ab50510668cfdcc10c52f9a28d1217db634bd44f7bf277d129d4dd0911fdc0975bd7551d779ae9d8d350230460c82204d3f58e7d183d8ea0c7c857696c50c7dfad4ae5426256a19bb0c9f3a2e47edf33c6188edb75fdb64fc67d6b10302047c435bb5006730650230387fef81d92943d7bc33edcc4a1a0b1fe5788150f272525fd2758053c7e29798c926ce23b7ccd5b0935d6a8bb509a76d023100868bce5dce9d6bcf019fa9542b82e0ee2f9895af4b394c2c4a559db4200528349fde5db2fc403d8262d3d465486eb3d10302047c435bb50067306502301fe3269dfa99546384a77a656f5add8f2442b83d9ed10a2ad8efd6f86b1a56ae321adf771461c417e5fe5b41314787c4023100ca0d027247b6e670d580e98c6bea47c5ece1cc980320b00ac3a9bdce2a4508f14c054bf02cbb6241132fbe93777938740302047c435bb500683066023100a8700535fa22584e60cfae3533e6ad38b6497b50505adce54fe1c52f29ce36266e1c8f1b72c94b2e61636f3d169c3eb8023100f92929e12c512372a43b9bf32399e40f5741261f47d115c92beec797fbfe4e0694ce447b2187c1dbf1d09c4a1469d8650302047c435bb500683066023100adf4b5be57e4736f26ce0e0708a9eefb3fa63d46efe93d47780a6a4779be8b811d54e60ffd154528e805761df383e022023100be51651bbcfc69d6ada8d065e380acc71e2461f6fda461a6d4a25037117230f555eafd88144aa525eaa213118a8efd970302047c435bb50066306402301305667ff572a6366d175a0b211c551064654ea408d8cfcc15752f3cad1a62a454ca1974a6a6ed030fce2a32de53c30802303309ad4b0a1e6b6b990e34fbc3ced78ee77dba1aefb681bc5da176e411511be1f61bf71caf3e891ed5fa5aed4f9b497e0302047c435bb500673065023100b012889f72ea419b5a77e9fc71d6b6c0c7287e54e54271efe83f94dd92927a260f1a8f794ffa7a5e0e0c4624361871f7023050ce1ae046230119bef9364ebf638e61d73efda358dd0e022fbf66baa0a1c5e83078e0a162e22f2ebc8443aa50eed57b0302047c435bb5006730650230467ecb64af76fd1546959b99bdf973dd852a84b78ddd585c46af1cecfa19d2ef6e5d652aed743ced59a8b2e42ee349aa023100e138eee9b4cbd0bfaae3647db83065c4589a172d0ab679e06b229ae34e5f7ee91bda430407fef6ea4bb805ccd45118d60302047c435bb500683066023100fa77e7c5da466d5c85aaf194e0fb344d9f76e1a81f7ebb5aebb5f921a958930b9428578380b66e812ca86b44d1384379023100fcec446dda745d6e69e22d6f2ea2178f38dbf5a4b97e090913d477e9f335fd653f3c3cdf1ffb5973bc6a4f3d3ad83b890302047c435bb50066306402306c0776f1d5632417bb25a902e65d72ddd6e9e1dd7401d06f7790cd02a2da2446d07e6fde9a64c8184a865a573ca6611302305eba63471383c9a1abcc9616b7cd20cca06202f0f4e36b886113dc8707872d61a967580cd975c6c7719c04d9546c81740302047c435bb50067306502303826e662405034fe2d5b25f183096b0f5492cff9b997efd7b4e7ecef0d1ecbe7d99298668200d08d0d2312b3d5cb0f4e023100d319cd06940956d8cdee86271236e14d8cd88eac7ff8d0024dd31dac7c33245636c224ad1c1c0d7dcce6dcf9cb1382da0302047c435bb50066306402304cb3b54fee007195dd0be7018028c142b82fba15d5aa673fb670f73ead9fa9fddcbad79d49d01e921baacaefc6f5d37602304fc64ebe17c2b9cfc405df5e84cf0b05e8419a86443931a60899df2f7108b2be4678cbe5d27c3198e875257e532c1ead0302047c435bb500663064023010a898d379d3c2bdee83d8d4fe1c408e388ddba409f0b347efd644d17d192a804cd98512faf429610bef4cc4de159d9a02302d5655146e6803e91a3d7a003314e8cd66624a51c34090fb2a452cb0a3aeeb62599e24afcf3fb24763d0259c1b0858410302047c435bb500663064023052a7872826c08469d589a0f1c7af82a2d0012818ed2409abab7b7a56c9b28a7764b40c2e80b0257ba0a34198097b690102304589a574e2ce0689a67467eb7107f556fdab27f90e679dadc23b8fc07dee5e4f365985ce212ddd12c465f017468e80f30302047c435bb5006730650231008030f8ad19e43533890a07134d2934be433604171686a4c88d8760bb642bd8c6a335b33bb8f067ab59194de64bf0d028023079b9854df59d96ff80924a152e53c3f8ac6d22a495a2b8954f377d31102bab80dc436731d0a184cf94b37e1ded5299930302047c435bb5006730650230199022e286ad7498c98e93b536702c1dffc0e7a120c9cf237b8b5a476b3c0c7f82a2025eadd0d31c922d5eb0e807c00f023100d0a0e816c0a5c77082e2944a815f756a436d699de536bc96efcb0123039c60b5a36ed63aa61a76c85189c32498604d740302047c435bb500673065023100ceaa83062493455adc4017b258d35c8ea035a8e2fd0170af46c4a0706b9d89d15c9fc041230e4be9d477dd36f33b6aa102302e207cbfa2a16d28b96b0e7b2074d528372fd2da4975cf95b80756a908a7334d6dde3ed4a1b1529d17dee36b03849ee00302047c435bb5006630640230366fd93e95dc7daa44473aa44fae6b8575be00682c059baff6276f27445608a2b5b5d6dac395c37877b73b2a446330810230386e2e40e21940d6efe0513ad5d4f7e08232010c6ec985aae7f5f393e0dac547648f7d1cc0e3f4e3a529d19d26f081710302047c435bb50067306502310084375da7ad0f88186558ef1949b7c83c2ebf6f3419ffd6561ea556d57a6428cc3d6332b543e21a406a700467c1915977023078c20089f0cedbd769a9bbbb9c0a227aa6c6db340579aa536cb58ffbc9417187aea130b61e49668b273ca213e531ba020302047c435bb50066306402302d46fcf5f5208a83b28c372cbef153b926b8d094b98904b58696501e5640aef0849523dd3e0b6f108f59a0c79e5d291e0230342901e7b7d0fc90d08256eb200c2ef6fb17262c49178b51678501fe4030994afed2c2bbd8f6f04b80c41080195b4ea90302047c435bb500673065023100bcaa82ed758ecf716f052cf653acf88aa2aea80025edf6b015679eac94c747e721e6d138fe7292642f9389043992548602304c58aa415e9fef532dd883dcf0992c2f833495ec07dde73c99addc95cd6acae3b8ab1b40521589c8eacf8490026e476b0302047c435bb500683066023100ef1839fe1c8c76fdc99db307b0cb252f4b374fd6231b91cb3693adbb37c36de922e7acee2a4ff1258e3d19f13602e325023100f9f5d628806db5df11f98e0a34b1f105654b621b931de9ff608fbfc53f586f7544e53e7fc7a04a0c49c8cb57148ffb740302047c435bb500673065023100a8aae3de63622c7da96cf4db2758699ee9b700f8740946e98877d657fa48c0cb28c8826a35c9be37fff45cdb930c6eaf02305111b4172f6261ecf30ce4b8ce3ec4238bf577f69e36d25b11de0d8a4f6ee770ec434c4a1c875f4074f716b810e4b8cf0302047c435bb500673065023100e8753bb279b8c9052fdf903282246c0a7ca83299848d03a852e5f9d6c8b6e2e04f49a1c7a5220fc667622b00168309a302307725c232bb8fdd8c77be35bdc44d7717db043f6df31592aa0207357242ee83657c3e27cba71f42421d3130dd305c96500302047c435bb5006630640230664bde832ee0e86e060a4986602d1efca8db2c43cb5d96d3c32c3a6563d791355c4007aade882768637f9c8bcba25b25023065a33047c102f8a79bdc55fc2af9a926c541222c00c8b3a8993078bafecd25738d6065f7cde110ded72a4f0121b5b0810302047c435bb500683066023100b19b01ed7aaa6165a561a922b9abcf758425ab98c518b722eac21032f7e53d22a8b6d734bf590457b45ae2dfe312b4cb023100de7fe732a5c0bef922d5a0faf923ec4ac3ae8319d59561799c5add3b0306319e179ea832a589100925e03ed29906ba4b0302047c435bb500683066023100f8161d9113f8c0dc860e0e429cfa2fdcb685cac3bca61390edd3cfbf44b4f9de88da8dc2b8176472a20e4228ae9c1b6d023100e8da589675659a3c64ffb00bf425431e6d87d1463e9f0c23c5849d8f180fbecaacd76f1db170a5ac1f84d6b327f4d01d0302047c435bb500683066023100c3d1bdc8b2d89f85c549394aed49e1fa973a871e231591b9fa5940f7466aa1b1d23680eac53f375bbfb05dedef2ff716023100fb05fc5a44df19d9eae04f00619b6413441851d0860561f2c30c67bd2d484b4028197ba270feea4212bdfa897e0e08860302047c435bb500673065023100f766d7c48155cc5ed075cecbe09c7fa7da3f7b10f7695877ebca506d57946b6f880c5a10c11705b114ee9b8a539ff7b902307f5d885a95c4b071e5573cc97dfeb3434e6ac3e9c14fe1ad18c1d37c0fcf832b744581ab28fae5b80237476baf47e0d70302047c435bb50066306402306f20ec79d14bc1b1d1327ef27fc98df9f31ef55c1f9b4fdf946aef5d5975c9cbb0993c47d92b053b0b56ef4944769c4102305940bd3aeb6451d5103729def80b86c049676007c6635bcb3a2701454de56e3244a02d443137f236bb76e133b1f35b8e0302047c435bb500683066023100eb7f20ab3bb99ce7c542d24e29ba169045dba6faba77da0d0def7cae7b5a979a22e5245f01e2d7cd3ec7e9976b306006023100b79e67139c55e9dcc1f4cd130eb61de123f283cd92520a2bb6bba8ab742efad2cefe6c0185706646f5cb11237c1ae0ba0302047c435bb5006830660231008fbd0ae489b2ebb17612ca0242baff6c72e4ed8c41de5256d3313d9236afb159b35fa037da397799477b81544f46058d023100bf84020ea3b490b6bb7d482de4015ac6bb27b0f074f3deb104f6636713510efe651588e32c9cef14760f4ee8a5375d970302047c435bb500673065023100ea42b40dab9f5c371967dcdbefaaf15497b5b3ed0ce0bcf837b138196343893b2b940e23a73abd989e52699ad551b978023001ec82c64fb2c48f85da432b36f01e3e3fd979008bd93b4c05f7299d8ad1975d0692488df9851d04fd3a13d1d58c13480302047c435bb50067306502307634b8af9592025b08e7afae063cddbf030b13215b085e484dc59683236ad2ddca83b0bca3994277183fc4fee221f0ba023100cd1ea9e1482c08fb0bf3b6636b1ed1ea883813c49973c8660bb6353abf3e4f2aef64e1c4787fd2062f717aee614e7b320302047c435bb500673065023100fe0636516ad245932b1ea07d205a88d7e76c90c29ab95c53466e250d5e372c969e0ade6ace422d780eaede3ddba2601d0230736e364afb3897d2f55216b475d59d85da43c61cd37ec0b9bf309e7b5f2d378a2ef34e2bc3efaba3e4de9181f5c56bef0302047c435bb50067306502300a5aa837c01e7f436732894169bb317f395441ac880bba43e1a98c21973f04eba847203ee25e00018fde860a94c1b164023100df2b5c8cbd9311c0c191db7d0b3f54d445e7e8435ce561e554fede09476f41307d72424f4a0efa2ee31bec7c53c727420302047c435bb500673065023100fbaa37736c4465d3cb208a7df2acb40acab71bbd7071d2c2e727f1b443cd92b5f3e3d3567ed7c63c27e4d18b6247a9e802302a0b023b27a3ad7d90f0b858eabfebb1091177742fb45343a8a3e4c7567d630f144bd1ddc3292b6a6daff3a99c0025bc0302047c435bb500673065023032af9d8722ce4f28b6ae19a44210c5451d1f349970ef7725cad503843f0b5eb25743646e1ac90d1687c6e2bcd9b3b3ef023100dab04cb7b1afa9a37cc92307e15a3797f65dc8cc9676c8664235c463a314b1c01a91738188be22218cd472ab323689050302047c435bb500673065023100da2e3d4a77fb70487c162edd67adc8901e2ffedef4f953d64c6aec45a4c709519cc009159163da857ffdabb55f43af3302302fb11c28f37c3437262ed94fd7e21595ddc173d62883c7d4013197a778e2d4a3a60a269f3d1e36b00dac0ad67c356aad0302047c435bb5006630640230669560a254f459a89acd21821c36f802b06e17307397b29b884ec2b66b21bb425be2de375c6276dfc7d9f3a4e9c84c7b023008ce62942c10f3e4ef00d1b8163d3d22614baecac38ea320dcfa7885a26d8626ba7bd2d6e7374f4ae7243d970deb6bc70302047c435bb50067306502310088f0ff50141a34f61ab5a1bea9c175b116a1c82c03767780382e3ce394e475d81b96f0186a469a3ddec68a2dc77146dd023074897740850b0c18d049a1b5f643fc0a717efa1ab0866281bf5cfb9dec9ed2f7319167a741da8d1e0937afff06ea64d40302047c435bb500683066023100f3545cf5a03e968216213fec530474b1aa00839ad3f6983e4f0aefd9a29fbf58c68bc69e3e7239ed0e65fea119a8918d023100f98cf156a315060bafbe644d9077136295aaea8a3fa914f72941e8f73d26a8abb88d302e5f8a92c9b333f0289851da410302047c435bb50066306402307acf47dba1ff619ee33613a175416baaec01a91988375185bcf94eb8bdd8d824ada8acaea98981131464217dc1da4c100230486cc037d9b019fd6134b4710e968ef2103ece70810b2c552a79ea5344cf3db833939e41cd9f530f13dc5184ba7d44200302047c435bb500663064023009a3f78b3bcd81d332cf7078461225e6b8ebc39083977b888a0a9ae3155824019b95498d2c21e7e19332dfdf7c31ada4023041e20468894743affb31c716bb64338de83c5ffe84108f248cd71faed6fd1fc4ea504ce626512b4d44c9495820bc4a5d0302047c435bb50066306402303eede93dc24004aff0884edb9010039852914a8aefef49aba6eeffae4e688a727e8f613394ead5ecff2d6ac27111611a02302af91f4719b0af7f49c0e9d8f6702c02864d7fc17ddce100e8ca65419e81e4115b2b9adbe9b87efe11f3d4e12d052a280302047c435bb50067306502304e23a96fe40775f859fdaa33b23ddf0c7bfe7af4a0b633823eb8454d991a6b24aef2cc52f52eb03241f2be9819ef1874023100fb0197eee06823e12bdee8c1695d8b3c1a86ddd007cffc89aa5658bf02ed96a249d6c42ae6a2d41e54a7178b9a23c5600302047c435bb500663064023075bc5393e79eef7c46cb209ef832e5fa01caa2e94165fdf515dd3cf639345380c45dc1fa930e81bf7147ee5bb45d0e49023008dbfcd63b3c83c693f9ce30cb42270a7d8a5568e80e621204e5f62defdb6f25c9ca9cca0aee7e5f9afe8df23603280f0302047c435bb500663064023076f47761edce84c2c1ff86484d897f908b2727c6aa08ad0e465a95f55aa76e5da1e7f20b59ed3646d67b52237345378902304d1037b4961dec9d4c9eb84b875a85c37b7b688b200586edec741639cb9188a4dad3ae1860fcc19a0da65b8241d5472f0302047c435bb500673065023100999a2d902a03c6bfc7581c2fa4998a971c9d83257f2a57038b913149cc13825f8f82a8c7ded1d88a3a41c33d00273d6b0230054e2a40fc95feb32794bcf41143011ccc2c655be8fbb17da3ac96f2152ec3b83f0631f6a223b2291307f915f07bdbb70302047c435bb500673065023047e15cf630a526204b8adf0213ae17faac080b4f26d808f99cdad28a07abb071f242b86452b56fb979904a54940faca3023100be2c01b8aeb223925d575c2361e52843e25365a00bc3a85af2154a48381635b6ea4f1d8dc55b9c09ad3d2620d9f8cf790302047c435bb50067306502301458f04f76658dd9ac413bbed78180601c917ea3888fdf888f8917112d70ff6b302556a53a0a7f0276d30850d398eea3023100a941edf83b228bfd7598c6bcbffc005b3aa32a96e36da1d434bba1c4a6ef33d71dda49df32cb05f53a5337a3f2b257860302047c435bb500673065023100e7e60055831ac240fded62640387e8ba126bbe8f3b56994772e1f1f4218c8eefc4c57c756fc4a0424a928bca72d086d302307fc9dbe00d5fa7a95746298cf7ae66287565b43a766ffe9ba7cc120b1fa1758590a52647b4d0b898d74f7939ea0c09ba0302047c435bb500673065023100d6560745fc811dd42a31bfae0b40949ea63ae82caf5a29b6d852a9e7555eca528ff9742dff8eb502e646b8bdc0feb8660230607fbbd4e49a8ac5473ba11435111f62354f00aeb24a59c38b2699a3b9c0f7a576ee544d658e1447b4f17724a0a4fd0b0302047c435bb500673065023100ee2300f9b1031e5993d5ee4958da580753848115cb19ffe665f6b28556070e51e5ca9e78b71f272c648df54dc713fba60230418dedbea1ff1c8e5fd9818d7cf5a94763f557e1b88c457df9289b72622494c4271d51fd907b7597378be7115808b77a0302047c435bb50068306602310090e1338a0d3393855aecd9738537bb863fa09ebf118a052875193a80008be722436b0db1f2aeba8e44f5f29663a61c75023100ed39f0e821f592912a17282da232dcbe2c0801623c1f2b3e1168a8df0884b669d14308355afde08205c94b75cebfa9cf0302047c435bb5006630640230358b95c2b97f867d399a3edd87a4d7b9fe78731d81bf643af619a9d06083955c216d8699bc909bd027579d1a9e93846b0230160da8fed057f4fa3cb5289648d1b2dd5e6616876479f3f7af1bb29080e21d66e668db9a90ab9a850a4183d6fdbfa0fe0302047c435bb500663064023037a35998dc29d40b75e8668571504f2e37722bdf76569be75e7949f2f0eb72cdd4a7227d3cc97b37591c9687fedfe75602307d9fe0eed642de903534c168f8745f0070f742dac333343eed71a4b30109e7753167b68e4ed7f2bb5495121f2af8d41a0302047c435bb50066306402304eb3d477ffdaa30acb035ecb42e725e3ed53ecb7de39499e962cc528824167c76cf55c1f8fc5bd08079c9714b2aaa2d002305b0f0e389679c338b4b9720aba54abf1d0336fa3c9e56563b8e3e462e40002008761eb772c19a96b9f06faf66fec3f310302047c435bb500663064023045665081052444fc81d5950e662be622c56b67d6c3ed53d8ea26347c07f999fea1d5555b972587b22bf5797e310e870802304c11d09155b5908d3ba3e1aaed5775c8620fadc5b656c8b02e3db7ddd2b3d8c4dcdb54fa21c34907f4d51bc1fd9a9c7b0302047c435bb500663064023038091b9099c040340ed028f64aa702690ae9cdd5456d941625cc888aca9e04ee10db0ea4e142916e5027aeff4278aa0f023061c7f620b3f3193b3eb7566b862c52b540bf3c39aaddd3fee381e460c0c9ebb3c868ecfb2bed505f53d1f2df32b025cb0302047c435bb500673065023100fedc957223ab439722db245ce5a1cd7b578b466bb3324cbf6bcbaf093fdf8c70c6f1a4922310cf01d6a409747c20386502307614e4541dcd69d8abb5ddb3a57329d6cd27d57fb024e4c9cf43c7245caac1b91f4f72fc2be0a932121abbb10041608d0302047c435bb500673065023100966218d67e10cbdf308997a65c9857df4bb078dca09258130c76e4536a4a49c86cec86b6d23bc906cd28d8f20b09eb8e023071d3cf1d82dc337aecac2e7fa37718673e9fbf99297c3252fb56961e3b8d104fdf6eff7c64022f3ffafb0f95fe2bb6a30302047c435bb50066306402301eb149415c5bbaeefa571b823dd5d3f7a46cbe71c392ca41280fd85ad122b4576b8711e06c6c1c6f7bc1efc7a6878b9e02304b0c894ec030ecca327cd05dee6b16aea80f4e97429deea52dc71c5b2598b55c04bad2587faf32581427cfb958e84c030302047c435bb50067306502301559b1d0a337bb0f563134e980971ac05cfbbe5ddafc11587c24ea31e1bb1cf3ec9643821c950028a923957c2de58876023100cf533e539cd0b144fb8c9ae29f527b43e6e318402fa40b9b750cbd6e384dc5d09ddef4e978699e73cea0eaf1e52162c30302047c435bb500683066023100d4ccf224977ef5e894a90a9cc086e2985943e684eccef8f7b3f29580bfc78c96b4d5962f50a706ebd5271d8602b5e19b02310094b17cbca3481a707bbbc12938b25ef0bb40700710b67f8e83772a21fe62dbf20b02845b361e7cb5ba6b1008387079a70302047c435bb50066306402300b5519236a81331ac5fd7e6a03991c1e6acdb2dd5897e3757296d02b23e96e910ab5ef45a822a442ab6eb6fddbb0b1eb023046155b7ca429b9507ea689e8d2d367f4a0262bd112b08f0a6d53dac39b49e33c2d6015526bc65a77fc0f87b88e79c9650302047c435bb50066306402304b50b860dd5c42b3b2079619c76724f56b6b78cad9a6b561fd3a451ccfb268fd07d7d6a2a4b42290364c52cdf64abeef02306355bb87cef89cff60a5e8d266f63d80eb90fbb3d2a219d2a207935cb4d28fa08f23f5676915eebd02f240b94a87556a0302047c435bb50068306602310089fdb81e46e5ee6c33879bdc8515437ad8dab49f819db8d6f656cdb57fdc74b261cbb736f6a58a503cd2ae577da59754023100b129097236ee51d7c71c9451ee6b64c59eb738ed641f90cbd3d02ee64b5f82918f7286025de6e605f7f5fe03c17a344a0302047c435bb50067306502305521f9bbb04b14ce94ac0f75e6561d31968a65d854312df6fd4b5832c43b3ea8dc06fdbb05d84972cf150417b1961782023100d5505c99dcc2378ca3eee4e6d4fc44f5bbc257ffaa76cb78b84af76ecb6f4974b6dd138b0bad70076cf6ecac804ea93b0302047c435bb500673065023100ec32eff47c1984ba3b23ce5bc689eea31656d8b15fd1ea798b2af0e75251c86292a1d7d6e4a15ea476da89c50f77c00b0230466171c9771871218278d0ba779b82a7e91ac8b422d642af300ca9a0c66ff6f51e95d4206c2a0536b5ab0413d778ee320302047c435bb500673065023100a947a023d7e124a6050fe63be44f39d4682a90eb247af52a8294167d70ab0ddd61bc92efa7c2c014d2e7bab1e51ee9b602303f2ecec79086aa12982330a74a8c3cd90af9a7df935a384301e94e8fc09ba754507fcf0f72ac5d2444cbba2a1d6d03200302047c435bb500673065023001472c8a4e3d6f9eb000280e6139055074efb41ac569e79e3e6e03d5f2effd02a240155ccc3f645f56ea923eba6c2a61023100a64b97936f09ffe224688a954f8daf5f60cfd10b0b71969a6ea015caa79cf41d938c6c928ed613cae5f169ac0c1f775b0302047c435bb500683066023100cc05c5238c5d9539b854197ee4b3f97a8c141f486524c82968a1e0f6d636632ea3d8f0e66952590a14c1003df202485a023100c919ce60f303bb86eec4d71006634f6bc9d8dde08b1d6ea4d27a79da1b7eb1aa4d8438453ded2cfbab7687d85f6dd60a0302047c435bb5006630640230068981a350fad9f53b5b62e9d3073cbad4661cd3500003928c56c8dc5225faa0bf089ec8252351773f1901b4eebdb8ea023010d82e6e256dc5b79bbd70a855d2203243391e10fd3c6c7a1cfb86305d2d5843a47efd44c9793de37d0a8fbaf20651670302047c435bb500683066023100e546b2e2395fedc8dede59cbf5e13611d5dd08a4e257c7740284477e34a08982ff4e016a167e0eb07e6aa41e82fbe95502310085a3f117d40e0c51615529391c95def8a7fce7c2ae075ec0e7850fa94abd97f15f61dd015e0e1019849b2a37c029073c0302047c435bb500673065023100efa29d74ffb5d9ac94c1d011a1226a35335de02dffcb22ba0b5c0fa2c450db73d4dfb28c8930146f4b45ee1641f9c56a02301ae22ea399709d09da5f4e6e135c7760a5a646c36f1bc11a3b2172f0d1c0a0b782ff8f936abba8a3b20d6f511e70c3e60302047c435bb500673065023100f6190c81bcf0eb9acc9332496b2049bc78ea1a71882233845f5d72b3fc1185ebf5a290140bd1ba93845a1d85cc81e94302304662e6a64fed6150fb67594a4311a1b8bdcfdcb3709fffe996b7a6410bb051cbacb139beec8900e23923a3977bfa6cc40302047c435bb50067306502301d185d06d78ab4a34e4417dc810a349605606ffcaaed2b141e5bc6143d85803f9e757bd6c53d1e1af5209192a0dfc94702310094d2cd3d96ac47eefb9bd557b5718021747ae29dc0875bffa60917c25c3f01dc5aaaaa686ffb4b5eea80dc7bb5c069820302047c435bb500663064023030fa6a74d34a565c96c3334d3841932ed09f18675981c5060264f19e0021c58b6c67948ed24b200498527e2c25ecbeed02304cb8b027534b925b217bf4e05879151e038d4a712ab981c3c9dafbd2b67a864e906ff489628b476270d065d01efe3e080302047c435bb500673065023100e2b5de15b2834c0a147a16427c13cdff5246300bd1ced22cde184da10f42b7092ce777f0c472f0a5f568172c27770def02303f7614136724f3f20a6863abdcc580d3aeea70f3b73b6f3adeb6ad18888e1e64f06c90e21b25bd8c79276f9b3e5330460302047c435bb500683066023100ea90584c8e40fae941b3d83280b8ed6fa381c745d2fe9dfa16e8f4bba8b9e23547be8b7c30515660bd6dd282f6214df7023100def388d5330ed2fa28b91dd78387fbb61afb1db94d904331c6b635e7e7994f6c04a0ad1c41914a08ab21f72be975b71d0302047c435bb500683066023100de882f37798a9905e22ac203df02fba77a45b3c984e6125130889f247808b629d8f21a84475ad0674663e9e7f8c4e4640231009b83dbb898ee062196ca09cd69a9197dcfa6244326607156ac93832e60393b7a9cc51848dc793405318db9c4b0c65cc80302047c435bb500683066023100dd3c9c09a01fbec3de322d0baf6e34207df012ec57138b00ae8596605af8b18a9969d663ff3b0776fd3664c448ae6f25023100f19c74d85fdccb14b745c6386d9f1909ff55675a235d04c80ba4ed08ade0a677429fd58c16386f90f9394f9d5f8821cc0302047c435bb500683066023100b0d53d879e03662ad7253d14bb128352b7f44f0ec1cce4fba7a85ab7ed149292ea1a9361ad27015d5d00e01f2f188473023100f29562184fbdf518e8da58a9caa058bfa234e714610c03d14ca4032f01480fa9326a840c8559eb1c021b4bc5b89f19f40302047c435bb50066306402301cbbbf94563477371001f54e3f3b188197b7fe8245fac9f578aaf5c4aa48192421c6af2b59419cfaf7cd23b286be417202304e9b3922fd487807429fffc296fd73f74ec8a19c7ed43c40cfdea7d5ef28895e29d88036886e2eb715f9bc987321539e0302047c435bb5006630640230063bf6df91c8e3bff504e29bf5242235de588b0603142b1b4e7756352578dff7455a0faec49d3ef4eed61967cddfd0cc02304dd69f491959a35ea39633937a24e8061d0799bd095184cfe0fdd05d57f9db17d0432efbb658e30722d1a9e88f6884900302047c435bb5006630640230142c16c47f8189a3af2d28c427e0292d5f1e732bb166c16297b1a6bf1f9d3f033aff638f9c3dabdc9ab7eba46db4622d023076e55c867cfdea396ba6ccc7a9965e0fe2071c5d42dc0b1920689c29e501b4beff5a5aee77bb46af4ac457bbee6ea3ec0302047c435bb5006630640230158cb4bceec3553ff7412827cda7f2584310b10cb130f3046b212baad7fb9b2c0e686c2ae5bf09ee4614b9e80835dde502303f4dffdd3aa41b8bd3be5000d0f0d6f4b1ceb27bc9bbbec0df2a5e5ebe022234be7177156f5b33d563044477b56869800302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230553b923fb58e13a0aef79d5261b695f9a49ab5891f839d8734d342113675d4626bbffa38830293a882cf5570713d560b023100a0647aaf45289c322f39661bf8434fe55393c440060529883450450d1b51ed37cb78919ab2b2248dc953d8a988abaf770302047c435bb50068306602310090a7f7bfdd0c8e35b2082c4249863056583b9600ab46c3d0ff4e57cdbcf0d4f5318ea3572968c3bf7b708cca755a977e023100ec6055df394907086b706f6c170caaa2957325bc6801653ed729a7399af76ac219a3649048aa6c6800f0df40a3de7cf50302047c435bb5006730650230035ea25bafcc25d2c2c07c7705b1edec5fee0959fd1d4e1c5869a9d2434d4d8897bffc50704cef3a086e26fcaa64ef1d023100a414fbd0b0fe7b31475ef618959a7c5f65815b2d3ede561f22e7ee79d8af5fc2e1222596bc0a2797cb50e2f3eb9f6c710302047c435bb500673065023100abf9220053d73daa8a48075480180a3b062aac339c6603ddae24c481815be753aef169f62ef9be6ccce99f19d49e3d8d02300d0da2b2cf60e7274459cd8e4559f769fa05ad7e3a8c0452d776b55087edd8f9c069acf7c3f632e0fc5b47d095dbc32e0302047c435bb50066306402304b3229645a9316976cf33513bd8bb591d582b7727634277a85b16cc8948c29f24d547bf1f4cb27ddbb348ec6f2a4842002304b402fadaefa733e6dfdd54846839af0e0166a6e996f8c19fca7fd2eeaa30289a749f7b8117e74190ee0c6c20468a04e0302047c435bb50067306502307ff11caf50bfe13415247e88fb0d6b269a797209d8ea61f392ef9bd7fd12fabac494d7ba2177c62c960bb99a8721989d023100ddf1794b6fbff28c1fa1b8cd6dc9b432a0c0aee8897cba11bbf037dabb2cbe6ac6f92fbfa5a50049726b7428e3a529000302047c435bb50067306502301021ea6c68fccbf6341a84877dc696e5a043ab53cb7432c201c3060a951d7656db3c53652b70f4e4d7062480052ccba3023100ed28094462db53c289e52826e50a9df9d2160fbe083641ccf2884a5da66a578fccc608e8412405c2fbce27ec11a6e8ec0302047c435bb500683066023100997f9182c0a0978f69e9e29aa3cd5fbecd13c98f1cc348f5b68b831c469ec2b41bcc1bbbce6cb18db2dfaac6a92404b702310083f3dca66113cc652232e21002976f47ec6feecd7c911f3831c5eeeeaec9ccb73faf39fcc887fe408aec92a943edddb90302047c435bb500673065023100ace612812a897196a5725ee8adf8336e26a09301be853d37d354f60ead8cdb6c75e4bfb356f76d5ba1cfc1defbf43d7502307f8da8cb813b82a817129c1139cd5ea8794582882f5999e5d66c3edd3aa4cb09c9b719474b5d82abb61b9109804b2a170302047c435bb5006630640230477c399e006e324148800f106ada9f9ec53a1e1942df19cac894cbe713a009ef62cbe8d10d272108a904a38560079be00230532683080cf7e6793420fe50c309891efd99d829aa3f869834c9dc9b5956da307b000350f2aa3bec081378600300702e0302047c435bb500673065023100d5945b8636a6deaabecc0c2150a6979d3fa1b5378a68440566b155bd3f4c8b06c0f766cf5f4ef26d942944b5afaabdd1023047366d0b6e553f47181fe350f7587fa6750351d6c744866d740d157ec6c921e0e0a5687edbf32d5d71a1e66054f9dfdb0302047c435bb5006730650231009ffabec3716150d3acac8a83755eb0f674826e6b5102bbd24b6ad515e615666f768bd3bade3dc7087c5b9dbaa39b26f002304aadb3207dfe8cd41ba3902ebd72b255526abb8fae14c1e06538111c836478fdd0b9679615005a24c946396fcb71fb320302047c435bb500663064023018fc74cfeb458293c66e3bcc47b3e790a56e57e39e278c8e26ffe2bfc39f326b488003246f2b8f72c58b637ffe672b9302302c0b2e2c917b2d1b5c0cd01d26a1b7ddb7aeba0dda76bf2af204c6bab0e2af0188d17d3a49d99ab4449d197b5bca84380302047c435bb50066306402307b8e5f580681cf8ef2adf2162738eeeb645d8f332adfc4268a8acb98e3e026bdd03cda79c9d7feb98057e800deb71871023072526a3ec7c58b3fbf5a7c1e15e23298af17852d6020ddf96db1d0ba6d5ca68fc39aed102d445cd54a2429c113c5d06f0302047c435bb50067306502300895aeacc2004b43b439b055da6f8c2cd04c7a9faa703af191fd8bad5040b6d3ced5be1e138f9a225e4673a477e2e55a02310093fec711b56cb07e96116c76afc209673c6504287f1c1ca35fc932f98ce1eec4f9d13a3595495c508a21c91d2069874a0302047c435bb500673065023100a544b24e615747e8067ae9dbcc2b639f17cfbe83cc999abcc2ede7b2e0f1a751bdf1727e72dffd3b012f603616b3130702307722e2b7c8d9c01cd212e42b738e1963da8a04ee1e48b6666459542802eea3de6268cfcf666ab2e63fa5e08c819136e00302047c435bb500683066023100d20889d24ed70aa64a8d7ee9d5be687d46780ac44c0d2de02f0afc00ce443d08ec8edee9b13809bea42eabbd710924a8023100eb1b3b7ba5eae559a896eb9fead7cba9f0542423ee4426729f3beaad252fa3b518b6cead89b8cdc2845a3beaf5afe74d0302047c435bb500663064023007a47cdd2f86a2aca323ae6fd30e3f050a7619e78a21c7f84d36eb1589c6cd364d955d4b80ea39efeb61be8032c7bd94023020a7b6f5bb25d0d1526fac010ef6470dec51a2588bf10977747db67af7383a2638546ec4ae9df3720076712c7af7cfa20302047c435bb500673065023100c0e4e423c9157cb4bd2eddaadea0e7da7c70b204dc6a5d89e4bae0365c853da1e125d16dd8a9425c43b3dc8e909050d102307fea675fa71e34dc69eb1b4f53270c5464783251f789718bd39ff103eff8a407c1e1d6a8de3c721d325a1351e9b064560302047c435bb500683066023100c13d6e315dfeed05a3ada10b972118401882745cb36c4b0df88672ec2ab9369fa66874df487ed6f2d198c1da32600f96023100ce386f6f9382ace674545858551e442c0f2e2b9fedf9116ffd8584d447481b286bce8df06b8350be222d80848c7ad7790302047c435bb5006630640230246d6e8c3b230e22f797976211920f5b93edb9d87d4f3cc52e2fda97906cee49dc86bed3771d38f37e5afcea632536e802305b4f66451a0e31ea58145a37102076bf8cfbd0310e8c5605fd2f325c3c1741b42afb6fbde290046bfa24fa3b24b1f8d40302047c435bb5006830660231008da853f627f3792fd61605d919a7d6b26fba7561e5429148784e9a72e2aa9cca768da42934582f92403e39f452acd0da023100877559b696e7508300caef62101e823aa382806ab7e47a983b6d11c22ff4ec3e15c61f9dfb2a919945908cc06efa31e20302047c435bb5006630640230506760a35f61857471ce826e1f93add5012d1fbec2fece434c5f0c9fa0c3149a5214e51500cb36c2a5b82012767b436a023076aac58c9e7b283f5eb569cb311f61c756ca1b97597288a60bc167e938730cc0ba14ca58e7b13d066c3c67ca9786b4cd0302047c435bb50067306502301eba0488e17f138ae91f015350fefb396abe471feef90c3a3d13a8a2cafd90964a20c2b07fbb3af37bd26ae8b888c7e3023100a05ccf1288901e87c6df263ee6e6b01ff01e6e9fa690227a9f7973fa771df704323c8fa0d9f48173ceb08002b3d8e6010302047c435bb500673065023100f1142dc4c0a5f5bf97a15a2ce8a7c4049c9aa186002c85fc79b9aa12dd2953a76ad08f0203ce10936a4aace6f8c79d1f02302ac7d7cb03a5703cb7950484eece91023e9f9f03492b168d1392a2010515299e678c5666ba3d1f79d43fc67e15d606ab0302047c435bb500673065023100b556201b12d888fcf0f86c7d9d1d80382915dcb811680dfaffb59211ab822ef8c46dba07c3ca2296a11646620e7e18b9023047324852fed9ef648b6cde42ae55e1ac5d1548d5903e5095fb7740cf78e68813d7cf388c0230d7ff1aaa816662a408020302047c435bb500673065023100a50d0e825fcc1660770e0897c8cb958ddb0ef482a4a45ca3074a2101b50390503d8fb4bc8eb0e518a566f74fac385db402305bce064a8197dc2f89895b0f1b8aedecdb430f218141d3d0aae4546d9c0bf5d88ae2efdd68d23d41a27f9bc189611c690302047c435bb500673065023100cfb5748d32a781a179af7e0882c0beb0463ca886d82e9765222090fc24fb1761b487f65429fbe972a828fb0463a11d740230293a9d338e27dac654335a8ba861157aef1ba09225b232bd8ea6dec7b45612437e3431fec1aba183203d1c7f22c47b150302047c435bb500673065023100f074194c38841eeaa1ce3e46f5e53e2b77bc308263aa1d2eaeaf302e1875f5f69cef8eb937a58c9bfc9137d6bab49b5e0230590fda2510865ceba363d54efb88087f6f612a823e460f9ee51edf303daaacd04c54966b4a92403730cb1f402238c4430302047c435bb500683066023100b08a49401a11b9d08eb055b118d4a057d725712c6eb32d0e65203fe9f3b12331da177dbc9c8631d4ad40991480554fbb023100b9d0545301f7ee1964eabae4086a1546c901f134072408bc90145c5839b9030f4b5fa3c0aeba492b09e5216f410068bd0302047c435bb500683066023100bfa843df6bf1b5df80225e2205973b0b4873b5533e767c2a0ff6c69a2cf1b9537f4deb6ac2e1fdb5935a8e4b349ccc560231008bfb91ba45b3c289a22e2e652166b4d1461213bd247db70e36b16bc468cb97ec674d4b4b5f72772743a31473393db9ea0302047c435bb50067306502310098f158c699a7e0035dbb8b25231676db4853a6254db6b045015029cd585d61ae586c36cbf7c2b483c460240cdc1fd66f02307358332d802e2da44d8380cf56d78d2a60dbd4811c1c76ed4f93faad89e77d51f3838e3815a20e60b7f0aaf5b2c5b9c50302047c435bb5006730650230260bbf992e65de1ee94b89aabdc69d2be8c9a6381015ec1a9b9fb1ba30bd2d8df0dd96e143269b5d248c413220b57a28023100d81889e63c4912eeba618934f16d3f5d45b54f027e96f564c68eb90e2b3587a2fa442d0d0c87b08657d95fc98609adc20302047c435bb50066306402305708d9fe9b5c7cb8585d7cb521e29c3c5a97949d429fb344c06a8a7942c619ed995b6c06b9f2ce44a433b1affdcab9ad0230366ba84acc1d460472f3f4ade149efd52618e53425c549400de76af8f627c1f5c0a8dfcc5c3f8a81420dce9066b5e6ec0302047c435bb500683066023100922d9f1dca37ca2557da860015205f8b8f0a967ee88c1073d577b2921d36cf37ee0862b15abfa5f28d38a9fa6610b3ad023100e5f51aa41b46a2deb6a0d1f35991b0717ec91e0537549e8cccb9d418a3dee93d27ae211d462b132322312495b73cf7f10302047c435bb5006630640230284c53a9faced8e798e9390f9cec307ee1c2143c9841ef39d77808c6eacb490c475537d3e48d28c8b86ae0626432719f0230301117a3fbcad9360d2afda30c63ea52356b09eb58211d5ed5a4ac3a3470e4f9f62a48149cf738514086843c1f2635130302047c435bb50066306402304bc2ecdcafdae6121dc680925989f91ed9bbafb31a576a0f248dd9b5909d4ed3aaa89457eda48728a05e71f0e2229e590230121de82edfd80745f57888100aaa49465a4e5cfe7a9e959678cbe82fbc96b5b19c601b00642e72770ab533684dc420110302047c435bb500683066023100b142c76c3cea1514b87a3765b6970d1481776f2760ce6e732ee5619743c1e2a59f6abdb994ac53df8667a25a52860a8a0231009e6ff3ff091a4a055fe59158ec04bff305433f770e625a3b05d161aba98df97c172ce512a9804b0d935dfe27329ea93e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023047285cdae455468e6446dad786cb1a8e6ff85d4d5edd58be00c6e73e683317a3a8c6b55c4a0d5e0b05200e8a4d566545023100fb2630dfb67c4bf38ebd900efbffeae6ce4392691058e0d5b9402bc7b865cfc20dd12264db4d50c049e0617a161b89650302047c435bb500673065023100a64ddaec0563a213624f5beb5da3e0cc50421d4cbbeee7b1adb4435403f4befe3fcf2f78a72363602b5ecf0a2a2bc66f0230298d79e822cda0b70bd089d5564c566f7a0d13e4fe1ce2ec2dfb49053c04b154be0007f795c06f8d40f5485d93c706ec0302047c435bb500673065023100bdf3181d26fe7304ca22946a4826139a1cf91de2b32ff5c94714103f6096ee3c69f596d19c8ff6c6091ef775d3c53a7202300c236cafd1b2595e5d1dc602da56441990654b15ffd5079ae0005642f47e83e7d8e0767a0c8e474f3e75f22dcdf213e30302047c435bb5006730650230539d27b64194336aa1e71a5ef80499809b76d7d19e786605f688ab99aa5d14ed68731766aa7c8e29fe0a9a1c9cf78b35023100bb4b71e216f7c4227510ecaa15e77371dac351c9a5087189c7a84ccb2e03fd5a1ace41a1acb10b884ce9c9740c68dfa10302047c435bb5006730650230319e7da5a92f2e5c112f6a8fea26f1653a652d90838cb3961d027e3a944f7502617f8c8aaae422f954b11eb88d470176023100bac5188b0d090f51498f79dc685affbf57b3eae6a22b86f2babf1197dcea5555fffef631b2e33688f6bdd2a1e6c4fed80302047c435bb500683066023100cd4519a9ae3e6eef6745561f1295b0a218d1ac73b38fb211cefd74ae8b80abf010cd2fb5a9a258913cdd7d710c0aedd3023100ac1291dd86714531f72ac8ef82aca9f8263458c4da03250719e9853d80f10f31d676a6d32695708b256357d72f153ac90302047c435bb50066306402301ab3e04692cbde1ab4ae6f82b559d149aa4af38d171c9d61b3529050c96dd1b21784dba01c89978531632eac42ab252902306af946c116488320bd2b1410fb996bde83aee7b3c75c68da76cc55d80cb75235afc1c4b53f7e7b2d2267cc54023f0cfc0302047c435bb500683066023100c5c22bfd7a7afc7f503df282fb70889bb90b03ee9f8c68dd9d3263bf266abfb6f47d1b77f5191879896525f2b9b14e88023100be9afbdc36369c8387f2a781a3987d3602fb478bb22dcc70c833342fedbdc50ba7050f243cdc842ef90a2260a60231c70302047c435bb500673065023100fa95e8fb18abf18123574a3145e3a43f5d8ec8a9aae4ab9695ba474c3ad8d5f6e7f0c93e7f3d07a8c4d1dee63c2ac93f023009b7298eae0dfd0197adad11d3d1f28fa33e83ebdad90fe460bfc573351e46aa34f79a304a6ecef5acd85fe90a6cf32a0302047c435bb500673065023100e9f6368d432fec1665a109b1e60e191b5482a19ed86631d4a5024b6482a8604a7f873dde385dbef0b0b0168f333d71db0230650095a4d409b311a311b49f95bd980cc33e476752a2993e1cee82b893fccf8a237f4ce246e8f3c47511141b5edc6eb30302047c435bb50066306402305419483b33d5fb63df437ea5adc867d81d260c37eae4f3d6d130ae1619d1569d6a6da995c18ba16d53e2d351732a1f670230551f978c5dcdc171c1429d1306df708e28f9f33760ed2ccde989a81e1afa8bcdf926c64d994502ea9b7a30fe86ca58920302047c435bb5006830660231009bf26fadeb72eadc0a5d76e8d80c838be206ffb1036af6c84f353a733ce3b9973b5d00526eb2a66fccec07e682c4b4be023100cb23fe253ed7262a23538b2ea9bbe971a3409f4aaa25d3423911078e2466a43cddc1aab2ff890f9659f820b41f1f19d10302047c435bb500663064023033177682d5624c7b43f1f8804a8fb41d963e53c4ac87413a584fdc2911db6d2d716b6fe0351760f3023f2759c6e1673302303f844b5ed7eaa775f10b564a17ae249c6a4090815ea328e09704aa4d859dfa7dd61f6d2a4d2d27e34120a579b7be5a7d0302047c435bb50067306502300f29da1b903043b05271bcb4a6774b61013912cdf78ea23ece90c05693fdb31e0329b3ef169236e498f325a21c89fcb8023100b058d738fe1083884f77a1d55de4f8fa28097eaa21ac4fd613e6b5e9c96306118d40a72ef30678abca82fcae5a8138040302047c435bb50066306402307d7c5ee58d3b0dd1d8e8678d119c75f9a183e4b2bd7e0771274653115166a8149c0ec554bb11cef841401f87d037e50f02302fe6c1fc2edeeb93ab5cac3b97aef855199e3d0c34f92ef8ec510035a653460f530352d91ca0002e75b5992db60b4b590302047c435bb50067306502300bf9cd6218a80320b4f91cb1160ab35f79e8fbf15b3530a4d9e973e70e2b716d3e522daf399633d2fac67b5fdd2284ff023100c5a4abbecc69ed4dd30e30c5cf9d98a1f8524e8392cc9f781a237107336e623a626f45702ab4a6249e7354230a565b860302047c435bb50066306402300fe43a3b209a7061b3944ee3998dde1304b7af63bd274ae3c089396c08f27dc0b62347dec44854db2629d8b750b3e34d02306d8a82f1eb5f2dca8f2d128044e007e4eec743470d6af1735945105f6b8a1c43d502307474ca23c6d03780455c64c0940302047c435bb500663064023066bc2a7bd7c42af90efc6a7702919ea05fddf81c63f8fc0e7c1f8eb0575707627bfa8551b75caf96e2bb88d71b8925c102306d1e669d7c5725b617a2fd62d9be75625a1a19c91eb02c3e164d19a2fe078f631638284711805d3f00600bb3292ce5960302047c435bb500673065023100c65408494c600495e7f32e799f9a1698e1ee7a0dac606fae1085b1472893a710119c3a9b35b474e2dd24304df6c4995d02305163c8ca6eb78fd0ae0b2857e75fd4b79255a5a2fbca296b225f193ccefa21e6c1b8bb7c3971b377bec82d8e28b4e88b0302047c435bb500663064023073543e1f6df6ee28dfdb147502e45039bd2451e83d08039a2b5f607f87c7a49f16ef007d4ebc860e2c4ffe27bc98af500230134fab0ba11711025d7a5be7eb4932b390bea28aa3610e8ec5db8af2375c6db86a1362429018beb17a95401813e0ffbe0302047c435bb500683066023100f386f46e244de3668656139d6b2ade50259308312b13ae529a86baaae4b069d4f4ea45bc4c77d74c00d4bcc718e212d3023100d9753bebdf74f88d479b9dfd7ea6e5d66964e8026586b59a2640fe08dc12ca868248cd83eb7d4454b888a03ebf4a54b30302047c435bb5006630640230674b6b0952cea1b6ec8a536a60f80ab8ea1b4aab7de419ada61baaa7e4673ed0a6285f3b3e0306917d047583aee3e1a202307f8e8676cef4ee96b9ccaad45095662b0563a6d9a7053322f3f46779bba8e8119cc12781ade3e06ec2425b392541e0290302047c435bb5006630640230280e316d3229c785390cda19350f2f1f636b6a5eda4dac07f0483c62f5f91dc9232c58e706a04b7e10f1d8b4ceb108c3023049aa9481b171e91ce5725bf3e2a5e5752c0197178eedeaa09911589bba40de918452602746b0d9969b4746234165fa840302047c435bb50066306402301b77d83d9cc3ce670a0e2b5c53c3ce2adb8bdc81958136c74c46edad3e1b9d9e0c8360da9229ea13dfb476495b3ec904023006b1901f2b2207ea63864c022558242ddcff9e50fa90a742879a29ae87b31dc612097cc6cc814f4a5f739ed26eee5bd20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023024b8ca57d5758a37f18c60ea12ba5a67a44ade523c4f1c76425266cb0d6d73a96b1307173ee26ac9745351d9ff86d5ab023100ebe897334101a203fd6cee7613c7cfcbc6cca69e4ab6a99910c1f9785b8b4c1d7c9296e537c19e47f2782c80890b7f330302047c435bb5006830660231008659f7c690ca6c91605151dbf363d41a3fe46d0a6768d269395d3211c01d9bd5d6687e43caa715802bd3afbcb6e6a79c023100e21f751949ef39eb021cd4aa689309e82cf28292fbcc5eb96bc669f61a1354cbd10ac478447d355f5727cfb7058cd44f0302047c435bb500673065023100ce8f363dd871ee2a66ed16642c8355e236401d0f474bfedc44e20e7839a3d8b5320e545f5c7ad3984a66f4a923c9ef5302307052047e213f968af7ab4ed0a6dc785f8b9691b551af42dbc1cd85d2391718b7b2a057a48753a630e58cfdb10c36f7f40302047c435bb5006630640230611f6b04c135ab429e01474674472ebfaf80eb37c0e44ffc0ff838a4489f06c47f6044d2f2a69fb2b42d521b7c98099e023079f223b1bba5926fe9508e2fdb4cb0e7e10c88b0b87c6decb370807b891ae9a48fb0913940e0452ef12a60bc07d8e8070302047c435bb50067306502306ca8be0268fab9e6c06f628f8d0bf7c3c33f188a8792445d34ffa9f6f874d4de1111632dbbf39c40267ea85f2f8fa0f1023100c3bc6766c7bb972e39a39e704143b3381f21681fdeeec97ff2a54882c850de6507a49a2ff2fde253acd2bc937bc1f3dd0302047c435bb500673065023100a83bc25fc68fa95e24267788e6d885c55bed541e2978054c3af4a09fb7fd70caec3cedccc8e6b3c6ef2bc19840b4f6cc023075ad21f3c4c2d13fe921ecb94d78b46ffae8aa76d538595814235bed481aa19c46f4741dc45ddd4f1e68bf7524573a360302047c435bb500673065023100ecd627cc53d68701671bf4ad16256367459b0cdbd3e535c6892cbd0ca0de12adbbc5d912ca51dcb6f58f073c8edfa4070230245702fb3c693023445eeeb80f8a132e2a212a3d88cf899708c565c7efb2ba4385ce5fb8c673b541e8774e73e76f67e20302047c435bb500683066023100f2c0d2d39a9e4cc2839b8ef43a74628cc38fcf404e2b62f2e7766edbdc1127862f5081486a69604f8f9db6a2635b12cc0231009c0381f601e94224781844d079d02efb1c58e0fef920381a4c5bdb8757f7248deee5d7a5a9cfacbb281881b1207531460302047c435bb500673065023054c06b5a49dfafacef45acba14304fc95951b64f151e51ab19a495b89cc7e91db38b1f18846f56d3e6b319959ee83368023100d8e3bb358b9ee8b845e08d3ad4a71460f5f49404b6d3e5e84e6fb9a8d9bc5cd4144bbdeb468062a27aa452b76ba01f1d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008bc3afebf50951f10c4f0232ad8838395cd97b7c8c5f01c9754ee229b21f81c5bcf1d74d8dcaab96da928b4175c76e36023100d941ede5c986302043c230ecc761c62d0d99103e06fa2b439a12421847e75fef0c0ca1cc895e21be7d40127d6dac585f0302047c435bb50068306602310080e431d7648b42a3b775f3de86a0161609012da56400c5c29c4ad96eef31508a5188901b4c4659f02d43e30af0b38cf10231009cb9338c3c8c834257ebc77ca0ac4b1627c8be9b9b4661273f640f7996380a5a4d42b3cc6ffdf6bf2728c1e07f53b8d40302047c435bb500673065023062244428452e156807c100e1a9a5c04d475ec0f2eebce4c33562f7b4d460d68e14f9b09e48b2a17c6baed9e807559376023100b43f1bd2c823618244d5106362e71a548b7798e465e132db6d9829db7b22af29bd9d6e980a18b5372323ab08ac29512c0302047c435bb500673065023008205809baf265e6391cbe352ed009971b2be36ded5e720e7ea30b80199dc22421163b8f4be6d74666b49fe68ad19b950231008c4e28adf7b6d04a7ac07b042c66f667d166218e2d353c0f526e21e50dc3f7aae4fb254784e6308ebf6efc476dabe6fc0302047c435bb500673065023100b3144433ae6eebed81c5be4432c04ce5b1e3aab952004b1c7458c91b500b013114e6f1c1a5ce60b1d0e8dd5fbbcb432902307a4d370cc748fa7587c23a44b8e6d128c95244ee6ccb4eca4cd201ef635dc6ebb176e829187d03db11b9c9fbe091ec280302047c435bb5006730650230024d97793317086768f2cf48592ff4d15c4b6dc739c87f9b30d17e1d4d8529a3b37c82f4a3d3c42cf460a351b9d905a6023100bd42124de5253c27e14989ee38fea1e242b20a7b3335f345db2f091f4fd37cd4684e94ad8173042a99fafcb0d78d1c370302047c435bb50066306402301142e958577a33ab7ccc7142eda77149b02bcdc8a50f2ed7a71a04cb06aecbb77d96e31356dd7f941cbe8337f67ce58402306b1db67768497003e4eca1250a6417c40db73fcaf3391a948993ed00e55f3962acdc702cf3721540860868dc40f724ec0302047c435bb50067306502307c72b6733fad9df509905480c65860895bdff0fc12a3263a0c394edfe614a4f41d99c73b02e0a83944f8c54c396a7416023100e69a078944785c2a99c53216f877056e64dddb6751cd49509d2770a759053c04144deecba0d6508a9018552f092089b10302047c435bb500673065023100f3de522ff34d5d2232cf1c27a9dfac889bfb40d561ad74d6fa1f150da698230b0c4cdd70bb0b10e006ad23eae7fdca9a02306b5579411c8f60828504dfdf897e49a5c7ada2230b3983d076ec9625d794798247ecd163a50d2b1a457421b3d10194460302047c435bb500673065023002214d9476f83ebcb5df7138881fe6c1ac73d8b5519d5517741e324ee8d89623358fa0c92792c7752ebfac5268c0c149023100c00857467ae7f74aec04e1806bd8389496758ae1e8af760e8ca115f56c32cf22687bc2833a8a17b2bba69a937f3bed5e0302047c435bb500683066023100f0ec77206b19dff7675a28ac5f411abf363224ea9d10c8233f05c9aa2a9fb9c77afbedaa4b08d3c31427abbb6f6b876f023100f534d79f25740d268e80ade8c19fc9fa725418bf2e25deb75d5a9d80efb9ae2bb887675d0ed787b3e854af4c8b18e2150302047c435bb500683066023100e519636fbf348c84ad291644d11521305a8d08131f6ebca28fb05dbef550a61c3843a7041239f956696a7abf45accf1802310082d500c11f8093571f312c83567bd0e5d7b12442a165031277ed07bda9bfb06fd497698b368e23e8141566524037d4d60302047c435bb50066306402307614bb66790083cb4de31fb7ce3a74edd3371d3e70d3b76e49e25f7cf00f6bf86231ad1500d65ce0a862bade43d6ff1a02301d9cdbf6b0c49d97d577b95ca4705d113b0e92a67ac370bfe5f23611d2929b86a74891c77ad34f75a996c2fd29ae1e390302047c435bb50066306402301586a8b5ca56cc1acee651668391fac8865687cf8fa87968762e2284445bd2cd19216c6677d0f4c746f00bf2727309cd02302e9e140d36f8c7207b8bbdf5a3d1bf5166bb13b45eab8e4321534e54fafc1848030c7d1d92a1924f039adec0e01c1a010302047c435bb500673065023049a3c49702783b8b82d361d151343b4e641626e116f2c4e36ead3e457aa734379a8b5cb2ee974cc6177c232defd6df12023100f0802e9182973f100b5662e315710a4c5d44bbb8e6d07663ea345ca3622d22de0c3cbaa62a55a952b136e6706f35a4240302047c435bb5006830660231008a6340ca0cc6b0c7eca1d74d042b3f536ee3ae3990f96244b3ee42c6b7c007e6d694044546f0ffa1e0cb6db2d3e79434023100b119920fba7f8cb152bb3d7bc0388d174c6515abf3584c2e828734e94c4f47e45b76db33662adee433818e1d3f2f4bb50302047c435bb5006730650230649a308416680b576906e96f0523cf07fb70fb73534f957e9251568d469b750483da8960bbf654cdb4b21402ac999cc2023100c6dc5693f082545207ce6b08688f350464ff5db71430bbbb25ef1a990c49d44a6bc81696d9cc6e3751444f0fcf0eb01d0302047c435bb500673065023045daac4592c70c0fb600b3c53bbc2ac0381707f298c786c80b67711aff682195770feceee68efe5d6b90b9ebeb87ee6b023100d190d59f13196133884bc044ebe1ebb7cdc2ab8f263e3b33f45563f404e3926511b9d52cc924809b6e844bf963e220db0302047c435bb5006830660231008b5d31299230ca71f709dffa4ecee7e6cce4c8fbaddf54ca112f832167320b68eb717ef38bc30e7ea90537ff9cf5908c023100bc8ad8bffb67d681c5dd46c83a1e1e807d564d5ad252c71c1119db12b97a93ebc7508e67ce0f4074c36a9adb23350ff30302047c435bb500673065023100e7ab8f9d1a741e6444827a7b1a67d0692820f0ad945f264eaefd518bdd47193b6d5d5294b882b78a444a7618e9eb8061023020d9e1d2d2afa70c68cb817424f11052350cc828dd561af4a91cb6d9e637e1e183dc70dda164ab1b7a5a3e65d1537d070302047c435bb500673065023002f99781837deed43aedb64b1982122b7fb0c1fa137d0c772fcb2540d808d2d63ce85dde94d57db0241205b7b484b73c023100808be412e9e4ee569ad5bc4035f7569dda7026414e239bd6d5abfed0516edef87ce08b71cf3d7e5c51190fd77dcb707c0302047c435bb500673065023100a430125c4d8b62ef9bc20ffa2f5c377968debc7e7698691811c483478f726a24ef6d0cdc681264127c2ed4438065dce702307306cdfe1ebc36402c5ad23436fad3c855cb9ad6833d0f18c9f7b822f4cc5da8767c53e5362220b069a76b94ea57d07f0302047c435bb500673065023100f03b31c7e07c18fd833116a5beccd6575fd3b886cf049f0f5c5fd5e2209beffa7a986339a6f4947d796ec7115e22791902307236644662f3753d987a2e16978a838f17907c6450f63b17345903b234bfbb927a6154566657b04fe1724c092a6c4c7a0302047c435bb500673065023034c1a051d9151f4401eae452008e33ea4faf42152193f6bffe4ff3ea41294b4a54fd6d0a21db85f1b5a33f745afe407302310089951d44f4e2cee27fad9385977af333c1df383e8728eef49d01655c0787db085d532828072b3d3073245ef1ec21f1330302047c435bb500683066023100c09a68c2b5377b5592117c54d1106e0dce320dd6d26cfd8ced022674ba6df92ed7d2107b1c2e426721733c2d28a36b76023100a2f88abb7e2d6c3410b9cb89923d12857a92ca1f62b710c1be58e63b17df69ba087f2682a37de7ec86abff9de122de570302047c435bb500683066023100a484fd98331835baf39bf56aff5128c83b2462ffc012dc9acf49ec88d88d37c20faa740e8299edc15db988a1afc35e650231009d38d46f7b8d2cd5c212a0f1be2d86afc52144f7799b23c8cefdd89ec020cb4fa8bf318c80155af1babfbef6b0650a830302047c435bb5006630640230039ef0f2faa20e2a2053221b7b48b3cc53dc92d9dffcf7cd967e591debe2122702b7119d724569d6d96c91b8e378591d023065a319ee8f1f245769c105d9b1b82003712a6f1b38c864f255e317ede43b96fda73cf4fada5b7a6175ac8d60408b15ce0302047c435bb500673065023043ca4201d192dcc62fa2af34ca3d1ee47d4167209315cec180be47c6e17bab6a4c78204c551219be85bf7faa02357b8e023100aa9772d5d2e55d0d3ad1c45f6ea61c45ae5f3f75904fe8c82ad8466fe8afd1129962960007aa10d03b93dcbb9e1e1db70302047c435bb500673065023058ac79b589ad8be21a47127cdcdc31cf525ed319791f3b73ace7109890797232598ebaef53345c9bebce5194cd75b619023100e302a3dfeea9ecdeb0b4ab408fe8eb65b435da24ade7f42b7bf4a4d96fcf91c74e4ff87f39264b19fdf8b675f5e5ee930302047c435bb500683066023100fe03b0d60af6a02f644eae86814a77b7cfc54226a88c8fbf05ff987cb2c88af267476d2a77b9a161573913391002b36302310095c4b2203c57a9af10fde93c5cb323e21825f0fa2c77b100087ac9441be968c7013dd031887286f7c14f32a7e78e9cc60302047c435bb5006730650230300d95332c382e737646769de1bb5f282b5598f41e9e9b0a1f2a9259bbe3fd8ebe468df7992636d6a71b43bebb705095023100823f21d859d275fe0d470cd6c748d371c52fee0e59e183110f0073ce44186e36c8e2122284d284badfbe495ffcc4f05b0302047c435bb500673065023073c79e500db7705eeed250ec7361a60025be50e286588680a5f48c4769285ad8170227e36e211e73bf1f91cb2cd5d341023100e50f4bb6f51e2ef8ea6a7aaae18e0c78607f19b0063bb5bf89be8f8026dd0c063d4edb19eb4436013f3bfb26f52df9fe0302047c435bb500663064023012191fb7a20d72991bf35a3deaeee6297f49492a6e97cd49700c8881278a0640f872eddc63ff6aaf636158771c01b7d40230363d1b1fd774bde14db518ec4de8d8dd0fcfcfd73471f715dae8279f04a07be3cd198ab98a78373eb18f724f5aa3d05b0302047c435bb50067306502310082f4bb5bb23c29af68f281d413a157615cf18776ab1c02f060d78dba335f9dd43eadf8eb166370ce1bc67afd379d588502307b0eed24d3e42402991a0cc372fd124e440971d50ea2ce2e581eb628fcefc96f1ebbad406a0ef956ac00fb4a4c80d7810302047c435bb5006730650230594625d296dfacb59e2adb8fcb98f4a795f031a9c2d9d7054b4ad03d92890f45f20c5663a5a1d167845512e3cc2cb9030231009188e9e409e46d5e7a47615611d0dea0da80573ac2ca83a50aa886d2d4483404b7ccd5935a7f5e5f92616786aab4adcd0302047c435bb500673065023058edd03877bd1475be77b0a1eaa6d0cae9a419c181896528677969d7310ace2198232aee41ee87cadded03ba3e612ad6023100ba52bc36975be3ae6b640c9ddd72bbd92409b52a7ed874ac74b25ed1ae914ebd5fb2f0c8082ae5fb43b7eebdaf73f52e0302047c435bb50066306402301688ebab09f6f4395d8625f34287ea184ff12c6b3748e7b685d1e302eb7324b1cf66aad7906f8a82dcb98ffa669ec138023008b067977ea17f8dd9e5c311d4374c96efa9fadef21075119bcddecd59d62f1c03fb993200534357e9215e9c597ef9b80302047c435bb500673065023100ea29538e060e18662bcbdf5e4b5005f1b8b9843cdad42f08e5ee2312ce7382580a1794dd54a6fba116c8d4a2c1c7926702303d1c98d7c074bc7f031739ab7671d4d6bb5acdddde2adedcddd5681cda543b4562bbeb5e85f7ed97d81e9ea23833ba260302047c435bb500683066023100a049cc3c642716ee9dfd62e2a9d56154e9334470e4d8f875fe3ee6acebcc4b458f036dd841f176650197da7a7756e8ff023100c8e8a4e83d9d5091466c6810d107f5819d335e427c97b1ada0c413d99c98bcd39c5fc1c317abe2c29c58a875ea44c5d20302047c435bb5006730650231009b96f26f6275fb61310bca444468f0e146cc592f7662bd9dbad7bee24c6b03df13eceaf7532adfc0f86677392f41ff6402307b486da5819d6219dcc2fccf2a2ed39ab367f8ea9b90498bb6b3e569ce105414aba3b16da1d9d3365a052d86f851b86e0302047c435bb500673065023100c3aa339223fbc86f7a1df72c072e96cbcccfbdf1720f07382bce6b3443eb2dbed803af6ddf440d1a00cbd79c8d1eab73023074bb7e8e1ba652ebdeaff602fd62fd2efc3e7e11fb23a7a569d1a1acb1828638e5b90a71d01bd057b3d893df575213280302047c435bb5006730650230545a438dff7bd66a16f201cc740193b692e152dd15418b40eb14e32dc58c01941e42bb29c625bb7aa7b385f570f32742023100827baab161c58b67346066cdc4f71c5545d59c6f7000188d26e34da0b8b3327bd321183196c745ad30a8402d948a7ee00302047c435bb500683066023100ae888d0109f552718378dc2cfd03e64ca595ba534a08bbcb1a671b6813b083947e6f20ecfd65286b537d17b83fcc0a18023100e0d535dd6c56e0caa56d6e2a32270a670dc6344dd6a57f0960ec7e23a18d19512785e9a4763978f08ec8ec9b7e048b100302047c435bb5006730650230417d289ad401fff77f9508d2b1b0ebf9ef9585d5d523836b7364307b3c17927b234cfdabc2eb459bd6d51d0ad1e03d4e023100b756160d0e8b896b2684d12e218376f4f35d5386d7fe34019cc81f9a009f79dbc42163a8d6e6bbaa9295616e4c8629710302047c435bb50067306502304530280ee4583ca212caeee75e34881dfd1a61acef79b1da0106462473f252f54aa4333c7a1c6e740573036d90fc6549023100eb3fefc061a09a0aa72eed0e3bff7ad80828987e5b15aca786f6d02ec8a22a36a23f58dba188a98507add903a6d8c8bf0302047c435bb500683066023100c63c2969b050136884abdc9eedb7e0672bbbf8b2aa9243263ea1e491210adcbee8b9ca6b0d673a5717159b3f419fd937023100e41cef62b36f63a3074ac430c1642100a447e4d96117d249bb947cdce50a4a6bb12b8b88f7a758c88502e5e7b6ed14890302047c435bb500673065023100f1abff4d51b663e79fa1c868606b69356a49879238f0f4154c6575fd5a2719c88c924b67b7e2852e61fac0b2b8a01ffc023035f09fd948f19633793b9be7581de54cce63f5331f51b71f9c7ea5e19124cf37fcd010cab0761a2a842f01f117b171320302047c435bb500673065023100900405c59e7ce1181b65abbf32ed1f7a9e838634d03ddd7e769a961da5cb3ff8f007288b53aef086293d6b9c936fee53023015501b343bdc0e3d1728b031ddf73c2c1974afaff5ccde0c6f9b7f35f26b2afb5283878437014d01277e40ef191d58510302047c435bb500683066023100dd6e6afb926700948d45d31d9495ebe9bfd414cbc5ca795eca546feff2975b60e10f45e69181e7d41860b2eb5267dfda02310083c5a2ce5046e00f2bf23653d3a3f1bb487da962dfa126f6a8a3be62a4274ace25e301929af6ce91b6ab1d9d8b4ad1a40302047c435bb50067306502306e0d1cd032b3af60104ee49f65dc4b22ba96508b2f17fdd92a5650d02287c46e639512ca586ebf66294411bc100b7f72023100c0822cbca9ad8650fc0ee949df9201f43fd188084e2b57079f94b636e8c94cf252ac070fb0583aa8ad818695483dd3230302047c435bb50068306602310093cbcef13be7f400970ff416ae94441c0175c0bfab9dc84946649196abab2197fcc1c7188faf41d4c608aecb3cc2934c023100f0913218b6cd9b40535c75bad3dc82189be1f81d7739bda5cc510e53a65fc0a6060783339c937fd88ac8adb46584f6ec0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f369d3c82620943b9769a93a77438254e4d237a083de12d4770e9687d53f3acdf37b00c1c2490710be2c93dc26b4c9d0023100c6cb685c4e651dc40368759712b3659517941afb61a9bf4eab345a7c924d4c8fb25013ec69a251cb1e439c6bed3615430302047c435bb500683066023100a72ff2125ffcb9079f0a03b0506a4edacb7c22713b1526a156160b65fb9acfc838efbfd6773419145ad28ae6f53a5b53023100e7cfeac4a013150f9ec3e0f93554190c0486c2f46b2d4cd9a2a0fbc6c8ac963491850a06919363c5fdc0f2fb867df2da0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310080e605dc6304b3eff4ccf0c9af101c11a1d27d33f876a34c7d207b2928b2b5754b2e5af488f63affa577f4867b3016c50230244b80a7f5ecb99f5776faf5a58da6529e334a8e4fc2a194b01b41452638b52e38d526cf78b4c9f8db5f2373a6fb32b00302047c435bb50066306402303cd295e85cd521578fb49d957643a3118567cb3f9b508b73e0574c0b5597a891a579a6fdb028ea20000f8667e28350c802304cf49b6669975c9e96a005503b9ba53f4c5d7424b32e5871719009c1a21f0f7e586ba70a883e261da1c1b9be109469670302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f892159bbfbaa353088271b4293f53366fc0632d20fe9dc69d48a2bb63da1e57f2296d559cd8e250a864380e20094ec20230644ad0e27164583628f5fd66e7e3278415bf81c2ae4a7bb6c80e3fd38f60cec95556461ba1768e2cda0d4c0feeada2070302047c435bb500673065023100d6a30e8befd3f6b4bf8d3d2d6d9f6e48e714cdc1626cef3b1d28d8f685195c4c96726f3fcf2b7f4ca594bf27b63c6891023006e73212b62758b1e79771ec8852505f0d98c528a4c3735d291454604077fa48800a63d49e2e6c1daf3ef51946eca34a0302047c435bb50066306402300e0099d3e0d0694bfd198571ca426635740b8d744537f5606fc3da52b2c0482d97217a5db8cf21b201934c98d10be7da023074ca05cf3a0e7a019b29ba71621a5b8c68e182be45fe9f2b3ee40e2cbbe41ea499e5d467c45a51e67a519ff5c176bb880302047c435bb500683066023100c2960571a0d6dd1e191abd0ea2a752fdfd5357ddd697851b2a024918eaf4a625d7342ff60eccc5efad5b30d27fca9c5f023100a5945ecc72c7d44011b50a824271065c7832a6446fb29498ec67e2e1e12c3012ba1b8be0896b69acc1b1dbffad9648f30302047c435bb500683066023100ca9fabdbde8574ac067a286392870a122769bf725fb340d6124c357b85d908e6fc55d0a37a5561f2b783a6b196a058fb023100f4acafbebfb40895d6278d12f492f69fc6f6c1412d8f0cbb9fe63a477d07d4d143e1260a92ce1e62cdecfb1975e55f7e0302047c435bb500673065023100c008a3293c582b031a811770bfd258dbd65b152271910ca62ede83f359242aac3569a882b9a5f766806b7e83bc9c6873023042a0a137a97d010a2d5766f6ea74a62795e2a0865fe2e2a9ee02ae47ff893e0bfd08b2d06841e849233b1da85a4a73640302047c435bb500683066023100dee230b6d12ec01d48c195584432c18faeb67d49382115713f33aece092608e4b29672260d9ae4b7713cb9bd7400d90d023100e3c47b4eea74e174e3aea908c2149cbf27fd768441f453ada28e5018c51bde04e7a65489852455e68d93e087c3d016cf0302047c435bb50066306402300493e9d5dcd0a71bd18117f7233532b5a93e1d052221022d560555e389e84f61fd598089fab13642415152bb2a9de39c023064970412d5240d5922f3a364fe6d08d6a8239f8f295ca5801b7339c5717a1d5c00a7227ad55298627c94a3ec19b5f8b70302047c435bb5006730650231008971a8abfc3dff1fd9962c6c1f14559297784570894e4d197365718542a6f56be09b8654956660d36c84726f257c88dc02307124082d67026f64dfe718661577826d4e9b72a8c8d685cd91a31923f922983e4b741ead57535fb0418759b975f903130302047c435bb50066306402301cded5b36d35b64c3d09d350a9fc6e4c5f3f607854c2526deafb75187697e26ef2da61abacc561ba8756d93ac841898202304cab2f358fc983a96eaaa8cf648827f32985f0494f9042524b02d82e00fcbc2b13298f70fc87cdc1eacaafbe2346db2b0302047c435bb500673065023100dfdd7ae7dcbb9adb24bdc15eed2c5c85a41bc3556802170a950a9575d50825adbe7454b74f5f04f049b140df5ddb453502301e70d76aea7193d43826e13de46593788ba2126ada8938fe5268b80b3b9cf91807a1c4e54634483fd9f14c7d29f8e0d40302047c435bb500683066023100f536a19369913840ab751eaf08f24584b88e6f2c6ae62f3b2aebd9f5362cdfd020977b6868a3ad88b764cb0502445034023100b5a009d1bd16f1fbb68340b48fa203e7125e531073f9b130cf682ef391c43838fbe90c84149ca5e515166ef22b295a750302047c435bb5006730650230330717b65a3bc778249929ef210b43f9c4eff9897cd4acbf08e0f4d0dfe9542ae7324aad2f8ba518b45c4478c90e944902310086df4aeb3aee214557942105cc1eee0c95f1c6a7f6d49d6173877bffa636f9c8db3a0c3fbe9605daaac74fd647a4cf060302047c435bb50068306602310099fd187e1a8f9004334a1ba51eba1d865dd910f46370888d59e0d5b473b8d6d349f237aeef0b15ba849dc396cdf0bdc3023100edb500888a86f800abf953262cfcf4142dd81d09fbc129dd867d53b79ca2990db2c3426662211f303de6ad46c8bd02610302047c435bb500663064023031c17b8516791af5a356b7d368e0170406944703945c7d819ae5036bb9715346f2053d0aefef39dddcbc8d308f1b95d802306dc607ba03f7b0e87076cf2c9b4d2a2ad3b277084f0456d774bd6fda33729ce7fd33410758ec9d76496611c8d0b789880302047c435bb500683066023100f1a6daffe1c665751ac3cd08179d6c25ccc6de17c176ce04872ce9fecab51bd007bf8989554cefcd534bcb035687b6da023100e89ce7a6a79f4a55f5931b312df2f8311d4ebeec0876e3a1896b6ad327dc910665dcd0bea82d590577eb11e34bbc017c0302047c435bb500673065023066bb4fd0660aa17b5f962f76eb6bc91944b8d9ec0b6b81ca14a58706209b97c2763182535e731be0e2cc295866128171023100bb7ed137652f676e409bcdb9c620e1176a84cc9a23ff0ead860fb2b11dde7ea7867e3bb77c78ec2671eaaecbf8f5d1f10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e3a5ad756878c5b3a3dd15b9e1c5ac2aa4e893aea9bc35f14459fe91934f5a2445e4fce76f346a0bebebf038d26a6a550230172d9b0aab5c6572a2e599ba4d45caf1b26f134730fcc06539eeb2e70f2937d2ddd53d41ed7c20e2b25098fa6f0973240302047c435bb50067306502300692772808740634670bf79f360688ee9837de01bc156959227d25bbb5bece4e678c9c65fffe6f654a233cad916495410231009a3b94f1aa46e0ed68a1afa89be034a7ba9f1bab39b3f9f8fdd8c0204932326b8dd92b2e8ea0e68147af45de7cbc28a70302047c435bb50067306502302133d28e6d06450e00d841138c2835b17bd0572fda1c86e40e54c99a38d894409e05457e6bbf09caf8d2b37c9ec3a831023100da50d2d47d3de37bf0f0e661536ec6aea7e94384ce6427af781bf4dc4e73c2feadd5ba9b1f8d805af076e877807f85ac0302047c435bb5006730650230212c6734c3e9543e76e303d970b2891a905afff7bce0fc5a970828f975a4fb092b4b235a3efe5a5b00e1ac45d99fc90e023100dba770e58f5b594dc30f3b3a07088bfbef5110ae2cbc9798324dd788cf4d2f70b786170c509ad795c990f6fdf798b6ed0302047c435bb50066306402301f653f5ade9e7dfc7728c1b7f3f810c75709d2c70b577d20dd6e09e7f47c7b2e056843f8f62f451c2cdb7f20a383e41e02304c1c805f4a758ae2cbb080939ea108fbc170da799010341ac8423ddfbcf0ba50161c1f44cb20b8395f6711331d5accf50302047c435bb500653063022f4fb80ea7a2df66a6d59818da7401874404f475c769c902a37e50d3d185483fe12d9c0cfeb7b5bda6c2d772ebfd8365023003811a31bf361aebb6b1ac31f509adf8a42cc4535b11c36278a6dfbac13170b9cbbf11aa34bbe2c55b16133dd9f1c7520302047c435bb5006730650230645ff69672db2163667b77440716c6e20239e6991e45e64415471a73a710cb1c9c4927c04728a09e8113324d83168d08023100b061a2f9fe297da0e0ebdab13c36a757211471785a5946272622d8f68b260b556863f7ea905ff1b0713745d89d0651df0302047c435bb500683066023100f42f02622e33db5c356b6b7aebd9ee91680ccf9d3b82ed5f46cc6ec92b5164b7153ec6d33ba7ee76b436f15dbf56c5f40231008ffce1465dd5335153794cf44f651e9266dd769213b8c48d4fdddcfb3233fb32ad1e0b9072c8bd95d6ed787d10b660120302047c435bb500683066023100fe1040dea0bb75d50089701ad9f1443bc037b9ee68238057a48c6abfc472303c75b8bb844d88282aa031966b944daba102310097675c95c41a0c3bd6e2d69f72dcb8926e31d14101ae5a525258a691fb7441121f7d49a069062db3c0a8002d8bd004aa0302047c435bb5006630640230388e99862937e3041f5769fdbc851a4d320d7ba1084804c8c3d9d8d86defe0c6ee1b6461c3e43c91bf40920414095a02023055f6916628106d153c7ea8b5769e0b3b3d2ab9748d00c3be2f25f2799cca14298c24cd56f08052c5310d345bf958ea500302047c435bb50066306402305793948736d16f23bc217a7446ed722e6915c2294a25dd0accb16451df79e504a5ff107d96343a87a7762f7f0ab2bc77023042e294d85f33830eb38bc7cd01576cc99e539c77a7ffc4b21c4e1a09a10653460bac1eb7eec78c5c0de832fddd9851c60302047c435bb500673065023100ef08b44f3320c735725bdeeede613d294d25d096d77b61323cb124435a46a30c3d8540ff224acfed3bc5de63ec6ebc1d023009828b1e4422647426c153a7534710a0e985d5ee0b25795a922a88706eaf2801128388b3308978d45a12e3aa90935e3c0302047c435bb5006730650230119cc90734d87b36c8dd255bcf157e69ba7485ed4c35439551e192514ade3b71221c55a89f1d509b5ad21629b1adf626023100ce652ebe57c6db098361e42e5831015f64bb03bd7cb81d6fe4e0bac0ca79d4786874da67559425664f1969ae21108e040302047c435bb500683066023100ef4c1eeffc089f2fc1559cf4aba0367a225fff94c7294cf437d10eee42f7057db98da273189f629e5e97ec40c451c243023100b8c04bfa1726b90215a6aa63225d10236ffc78c5c436d2a0c9fdfd1239632c35433e5ab3226ec30a3632ccfc555bd7480302047c435bb500673065023100aa6c00cfb4aa0716ec359e5b844697f465a4bafa7ebe9d167fa81620f062068b09ac5b743dc17aa29b8c441e5835ada8023037a2c75286326023d60d880286ced96f32b53fab4cf992a0f08ad272eb5fbed905f4cc7f8ea213b980d6698c29628e620302047c435bb5006630640230561a7528915a7e3bcf6c92e3de37c0a4cf77ad361f72c119db722bbba79e94a19501ac9c420b64b6145a7a106a7b064d0230606947b9676777f721eac4a73123cbbd7f96f27e63c293d5e838fc2bafbb0d4b34f2de17a898b6888e7badfc35f5f7bc0302047c435bb500663064023041a4913a84d1f6b32a04a39f102ea715784a71eb9efb5eae7f8195d356e90f7445304eea8615700686e1277473941226023054630760802f1f77abfb822f860133063bccd6e69b407010adb71411a04d0fb2b16386a3c654465fd249dd7cfdb609a50302047c435bb50066306402305294583be6bc9c71efea349adb45b8e43e91ef2f97115aa811fb38173774741b6370389933adce089aba7a7e9d178b2302305689d58676971927621f0481745758c6eac882bb90b20ba176c1e2c37f65d28385ea466b0200546d29e41066729fe8b00302047c435bb500673065023100c3e693717b3679d37c3c722d6bf8de6f8fd9593f29cc94a6c21e401fb19f3e3848e37530669f62697d8e1ee892abc0be0230466e89ea27a0501f96c1c4136e5bbee063254edfd4fdc31a8b67c2010ed753ca6384414ba4a53e0e3c65bbff6e8524a30302047c435bb500673065023003d4c3ec8e8cd9de3e71f21e6ab5b411b8466190e97d080d26e6fb1a22f05bd30f2dfc43c0610c6dc20f41f924c8c38b0231009a1115edc2ab1dd69bf8961fe18cb07f64d21b3a2c8a81412333e7f4b22839e836afff8cd2914ee83cd5b6456e40bc360302047c435bb5006730650230254c63b4b4cee9f4a711dc4693e46f6342960f8b5711f0d305db20d44def8ff7f67a43b5d9b9ecb92d150246a1573320023100ba7f3dbe40e4e560757237d110919e86e48b38c6fb75fba67152bcab9e066c6ec61e2ca537158dd87c37342e076007420302047c435bb5006630640230238b6bc3c7e2bf7fe2c76155aa8f16e39e5790d240822edc1dafaaebaef3926a7adec4ab3bb860bfc17281af8f0969f802300ee435e5d7e23a4f963b20a25e9bef25f9606147109bb2803013685cd6cd328569e06adef0b50564c07bd9076807d4400302047c435bb500663064023043b536ced58c81be4558d98a9381d81bc05ca0166e07aa3b7ea3bbb6661aa384a47394a943b3f0fdc94a7416803502940230123d2839aafda2fa12e4dc5547762cf9de669f260b2204bf5ca12546f64af05ed0fad0d565ad219c5b76a625e1d50cbf0302047c435bb50066306402303880993e214b6497e124c3a1ec743e4847f6fe558b69b710373ea30d7bfe02bb834cce72558416eccb799e49d89e364402304d1a41392d735e75b8369345cdcba768fba65612b3955e8a55d503882c877d93122c16579ba04d5a5a9d3a81e53813790302047c435bb5006630640230632d3c752e8aa52f3008b6ccba4228c8c2021e91ba4134db2eacdb1b10ba6770af8847400a795685d424b4bb2a2cdd58023032dd03503a846490f14c34dc5c7ab1954529c36181b1a496f5ad8be714df5a1e8364906b722833772cde166c7de1b3200302047c435bb50066306402302c2486de91add642e91a3343d452e832fab9d640973db82595134f437d23eb251416c96fc4a7e186340854a71fd4daad0230757f14652f4b9818c78875afc5b45215f58cbf620a608f1c4da4d809746829551108fc46cacb1d67e5c4836a11ea36610302047c435bb500673065023100b57320a7058fc8a026495bfb6dae2ef2c202d82048dd860c67527c6319975dfaf4b9b64a0d3f972c62f61a9bfb5be1bf02300d780114ee29f069c2858e8ff9586c9ec03431abfcba821140da4bca8f8b418aa1e7ab0aa2bdeb310d0eef5c080c0ded0302047c435bb500683066023100d8404d793823431866573595a233ea8ed604b46af3ca786e6863f528b394ae169cd1492ce47ac97959ab0352b823dcca023100ac4b1832badcfeef9733c1d1ad00746cff135dfd5c47024a8a395698fae8f246b81a0714ab40df8bcd5c1f685b6c66d30302047c435bb500683066023100c4ce992c791da9c54b9527257fee309538dc4a02a16514ca6e4b43185ac17e4a9fe38f8f05d1958d084adc4355fb376d023100fa27fc1887251e4b1af8cce59c54dc9090a2f634f36c1407f6d317adf47c8d76860b5c38c568c91d46c6b426989f201d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d511698c8042c9781cd3fc9ea26f8a16cba9062e9019b99468e38a8aabd7115d8981807240abebbba241d842e2b1eb83023100ba5ac40ea60762ada9f39c6df0938554278d2320a35f4c3f0d19f58426832249817667bab9370c79610612c2db2325db0302047c435bb500673065023100d78f4400aa7d6c6d6b9b7d50f1f62894e7185bd98bd5d214c1d97353eafc42fc02e8b0c2de654955863678581a2a134a0230499e90a01720030db75ebd7766d37384a4054d7c47a5104532460d5f088ea17ebb822fb5be2dff6aa1a25b1e1dc173ad0302047c435bb50066306402305d6c014e7f49fbc45e6862ab56d175abd228eb7bf402f27501f5555599ddda6ad750c8266ccaf0b4e2ad8d8f058c572d023003ba3059326a1645a6576a6b978fccaf6b53edd3e9e5b1dbe484506c1ab9f59bec66283e5e5b0fac048ff6304e375a080302047c435bb500673065023100e43e450497efc4ea498e64485265537ed18c5cd29ad9677651f2252788401aaac904bf204fef56784e271483d181606202304493d92868af9da66eb514284f61fd1d7bb9aef86d9668c982231ccb610ed21738e33cdb2678dbac557df8569b6f14110302047c435bb500673065023100fe6bfb4bc2d29b27f4231ba7aae0889fde74398bce7f75bc0935d98c4cd0a2c716f40933083634e61799d98c462d6771023050d4f5e7e85759f0bb57f77b08b09e2ba723573cf5eab8b7e856d7ec2a22862c2df65d294d83a06f68b8cf91c25aff820302047c435bb500673065023100b6f3b1d56198d3ff91c505c2e149c78bb0eb0e3bbc8d553a2689a64524fccc682da2d02ece1c6fd47d95e685b57af27d023037eb6b9088628cb7ba49fdb8e22f65a2cbb1d10b14c921907cf66cb7b080aa1f26064f342fa97e10f22fd4497925b1280302047c435bb500683066023100ecdacf90c7925bddc708e28fa691b3562322de32b913dbb4680c8ad09d03deb8faac68b408e9c9b2790e407c79df1dea023100f9990ce9f2ae7d79ddfa349bfa51fa580c9fb2d0bf7c8576e367c019f58ead75a89da19168c1c40fc610574655418b090302047c435bb500673065023100d2b8a88f421445dad6274c75cb218e3e881d6ff639a6905a579253a02fa6ab7bf83da3ac57f7e186f7e6a05d165262af02302755fc8de613229f692208e775762f8f4495703d120bac1f6bca290729a2699ec8a36354db837383695d7db4bb0204850302047c435bb500663064023069ad4ec49c1026ed4ea3e2ff3d9bfe5c92beef82fdd44ed0308254d63f8254c507670418baaaaa5cc02a729d12e3cfb502301887f7b237e7a081e69bd0095cccec4d8ac0f540e6f69930f6fb0947a77a872366eb8d1ba2b26a4e6c1e9969d1fee3640302047c435bb500673065023100c8b09ad99828dcd13c1785f87d9fbc7870f368008f0360e3dc253bfa328a01df4aa25b82568cdf35aace8a055ff0f69702303c743222e551316f844a936f0ffd0fc3d96f8bc4e010ab5f14786313d490e811f737e84d1437ec0a6f54e202617a251e0302047c435bb50067306502305d89aa3af7c972b40808ab205d58c3680edcd6c8085b6e99d83ae5991151ab3fed1738323973b4006d75beb9e4ee1f03023100c72659093163c3ef78026d0f951bae8ead131cc5c80e3650a73a512910a5f1540c492d8fa4af823e47ded0804ddecf710302047c435bb5006830660231009c8f7f001e12b73215036654b506eec1b7486818180a83e38946f94bb57669d5654cdfa0cc27179e2d2d1f6852512edb02310090427aafb9faec56d7828f0ee9a535d13f40aa94a9d189ca4b463f6406259788d70fa49c949a24ec000b099e2a8031ed0302047c435bb50066306402306a908a5413784272e5b7300d4db1ce310a94c3e271492b27c768782e854d976829b1a4542c9394b1e7840cd53d4cba1902303c6e093d4bbca58c5f18e9856634516e6a7a0f3966fd5cc5d5775cbcc29a888815417fd40f1eab581f968739e0aa3c9e0302047c435bb500673065023062f32207f5133424f115a6e509e82576c55e5a143c7c9db03bc9a3d781d6a636b7161551b5e4a65676b90e47d587410a023100e973e97014249799cf050f59ac42990ca4283013a8e3567303f879fbfb0ac67f16173060b1762ab3ff2a51788d3d3f9d0302047c435bb50066306402304ce89e6e768c9c83b7b3e0e9fef383c8906f07ffae30e42e59c40c0697891b0b6e5a25ae0c66f891c218e937b067128102307f9748cee9b6b83637f51333976299f8d6c5b6517c54c9a24f41d2550de34a96e4c5aeed8d6ac8062bf7fbe4be92996b0302047c435bb50066306402300a45efb8616200a75a4270b280a9ba7f822ee89942d39183a4c6b69f4114f1ad56ddfb4b03228f5e563136cb6f13b993023074e2f28c0dffee030772811cab89896b35f86c65d3e83061d1d7fdbd6dc61d53642dbab93715119d25928b48180073f60302047c435bb500663064023022418d4fc5374c259be790decf41c09fc0c36a459a188e43974dedad6d55e0bc4f743309f571ac75cba81b3cefc6f3260230238dc1a8bea95207a0ec5e48d59f0b564d6c639b79d8ab545d18c27f99b0a439b0aea0bd86c58d40679dffdb504c95fc0302047c435bb50067306502303c59e9683ee975b2907a3fd781541f5ccaf66b1ca920c73a1dca70cd917cab6a059749610fe8ffd8cb17d5d45c7f118802310086131c6fd50240442c7fdf185ceb310fa84a20af91eb4bf07e06f3b41108b50a428c82fc3c5858c6be8a5eddc170272a0302047c435bb50067306502307466a323bb23031453b714d851f10f27b877a82a8443a0f6c5c4e5190afe5eca55630909dc4a62856dcf2e5b2aefc170023100d8c5dca9efb032769738d48ecf4af987b7117ea38decdbb6f9953dd4ee6b62b969696a3608fdd44774f4265494d030e10302047c435bb50066306402303a80ce3f7163bd74cd1050a45caeba5eb2ce7bc5042c7f851e1c451e31d8821408fdcb9e4e44562a46300a1ca4565ee4023013a35e9335efee2e070ee318fcd8d6ee6b5166ce761b56d2f9aec161e73baaa07c5d0cea439b060cdabd167f5454c4570302047c435bb500683066023100fd3085cfdc916b54c93df84e3c5551649c8b05a5b21064ee592365acfbb4dac4575264940ae56905352530c02f4211ab023100841368e118e023bbac06a47f2c7a71819e4a8a3c4ae16dbd51fbf3ca7e76f9acd6d69337460fa7635e06de3f447b84a20302047c435bb50066306402303716ec8e4145d9a8e9464a8d4cec1014f59acbe747388ba2f04d730b65b36cd1ec92290719513e316ca17b209a7a82be02301283a56b4db75fdc34e001d7d23c465180554eed39cbce14b4e00e06df778038b53406569c1dc29c7f5c1032ce34bd2d0302047c435bb5006630640230733a803928375031a9636a65bad2f56fea36ca7a5e015c828ae97aee5e5016dd66d49367b75b65a23622985bdcfbffee02303e5b5ce860c53aa7cd939359f9754a705e2d4c2646439d5de884151cdafb13604b482aa11de046baff7364ec6d27b1a80302047c435bb500683066023100e4ede929c3a1dac9bd5335bdfb4d873c40d92e12928ebd184300f49f2345f5c8396a12e3224ad0d051427a8e721b4d0c023100bb2d01becc8fcd63abc8fca412ecf319fd94230313bf1709c76a1d59955c5b1b2fff20ecf86441db4393a52188e26a040302047c435bb500663064023057a7d854f510ebcd747f4a0d515b00fe5b20d094d4b8a4ff2da3a8cdf1d357c363cd888c4826455186d3808985167e36023049029686531d9da8c478466c1bb2e8b4f1074f3da8dc3bbae3eedc6bb5dd4112fadd933392a0c8dd07deb38984d835aa0302047c435bb500663064023010ec22d5ec8e287e46f6b592b7b2c1c9c072cb700e4163d1c241bb9fd00eb1cb2ecdfddd089c41fa0ea61433ae156c8102300db9e8399b6757c5360079de4cffda39bb5e5676b145d80c1e6cb19b7909a9d600ebbfc72c6aa3e8e63ae3875526f3bc0302047c435bb500683066023100f9d09865d6b7c097f1f8a920fdb94c9b0e6a807e5c70fc368c6db67461f669bd0e760c443ce20276ea31d95f56ccc45c023100b3c0eb9584959d8aced813f9c1ac3f9a31e250f0762d4fc7d77814966f5e08e5ec74de36de0c325b35800884ffcb9f760302047c435bb50066306402303f587bfdf9e2cad7e728a9cdc817a72508819874ed534a9813d800fa913ed591289584bdda8ab1e3454befd9a24fc5490230528a717d9ca028bd1bea1e435f9659f89894880981c26f4e5acc3294c4a0e260b67a13e26ca043e090ed42dd4766623f0302047c435bb500663064023063f90729006515ec4d4750a810cbe141525223091dcac866e5696acab7a6d9d7b8150c531c90dffb7a6a1b0f58f71b8002302fc6dbd0f6d63ffd4e26c9493fa953da9a4f297b4eef6f3a645b92473c29d52cfa743627e18c0fd474eefd0837231f2b0302047c435bb50066306402304f354f950c195ad4eeba4cb71c550ee35f578ea794780cec3ec7a5e6f9f04065e653ee3f67c7a19ba4c3152767dbd7380230448b1d1c295f807f955e91e0bfccb98d05995daed44334582a8be9b4f4d65cbe65f3a0c7142bcd8bf67a9635edbfdaa50302047c435bb50067306502300e2011a4de44043163621f42cc286792cecc9decbd5f2475f4286675d4fbe3bff973fb04a812a412cde31738d0b8c96b023100eea7de6201ccb5768ed02beffd8d7926947593ded58e5af40ef3fab9a41307513031fa1346f6686549bb45cdc5cff8590302047c435bb500683066023100f02a0d85ba6d2000f288079deb5fb9c32fd468f7259087acac68408b285b0fabcc8516317a6c21069ee2b12e500b64d0023100a73d39a7b8a843f727d2d39b44a0f67baf122b01b9d7ce32d7e266c3340745815866627fee90af0a943d1247efce74620302047c435bb5006830660231008b018046e9e479ce04f65c6e0ab193cba2f8efc416dee4b0777a3918ced68b8f77ab12a718c50bd4b5f6e5661ecb9da1023100e760411be9a2b1684b090986ed0bd7e3ce5fd7f1860ac9ee197fbee9a081e96f62e9c3064175dbfb80faf38e3628e9670302047c435bb50067306502304c6eaf5cc776e590667df5d58517e692de3a48d31cb5e372d5fa51d74137060a02cedd89bf3533e13c39a979f1a66001023100f8a1a70c740f1d2b82ae04e210c2a922c968c7e22d17a472438784798ce2edd3d9a362118fda7c6beda370187e94fc390302047c435bb5006630640230399d0e09dd7a143a0d30a44c32d7f6e484f2cf0812c035b702bba4bb65e69a28e97307dd8b7e4530966aee156ab70fc502300e173406322c55a9eeed08df6ca43353c6b05f57b9c5dd76a974b2e6f04ef669f1d4742d24934ec39b2dc2fe04e0fe2a0302047c435bb50066306402300ebbb8c1b480318925fd753b6b4d25920c2927fc2a6d6a9ed46814da6e05b4a0a38a1cfb529a1d9d8460538eeea75a92023028db3ebece7a11f16eddf7069eb04ee48ff0b216f3dd45eed6c759aa87322b489271250719c7235fcb1e0cdfbe1eccac0302047c435bb500683066023100ce392cbacc313cfff32648bf815e864cc71d61277adff6ae93594c598bd3d459e166c5576a3736534e5aebfa6c9ef15e023100e9141f8edc71402c79df99589c774e51cf45838e18b84b63d76df8e961644975210472a6e59db5b86c8d86e9e1d0b53e0302047c435bb500663064023004902c2a89569f02759ae3bef50c12544de68d2f0dae82cfa77031634e7855431d5693f6713b93aace3848983b06631a023035e3dcf61c736c29a187893cd0313499c22ea71c12f0d49339eace0f8bc6a2a96f4a7e8495d285979021e5e5d8c83d5f0302047c435bb500673065023100e5e5c12a5ae37f9a238af4c43c40104d7d4b620e24773d1c14875d135d0b3d078d006132ddba6890d72f0beb1f1a86ac0230617997b5499d7f4656f7e75d649a4da447aac98670a90466a8ba294386a08e289674aa3ab59009ec3a4a06faa89c47750302047c435bb50066306402305dc3da00662be609b1b5d3f2c07530b1dbc190b4bcfb5f03f4652029def9909bd0f479722dd2c510d2beddbc787566eb023004ec92a2c7a5cbd42746928f9411a2349a907e9a0e604d0822d6f7f6e041dd83430288606cd87d19faed448f8565ebb00302047c435bb500673065023100a280f12637bb8ba378d5d199319d96fbc9b27cd860837ca3fd6629e55434e1ae62aea19768e929b2423a2eafee8f99c70230111c5c1ef3c24060d31a2c61f92218a4879fa8f5fa50fb91c6fbfd9d2923cc47a42ce08f806d8148b857e4af96394f0d0302047c435bb5006730650231008a3dbfe8511cdf65d08bd98a2b3846576da76bea410f121434542ba4a5147a83c0ed679103e5d9feba8a132f91f9f49f02307b5e6187e5d77e32e4246d8278474aa3089dc9e6e8a772ff62982b2dfe93d621269a13bcee54c908d08aa05d48c3a0420302047c435bb500673065023100ae995a92fa0962ed6c0564898128f99bf2375d4933668540dd468fbba1ada12ec380523078536876eea9bd7263bd0bdd023038f550fdab3cd40d0b3328d529f61a85b84e6752ea59abee1800e82d751b0617d3bde25b39b503d34bf55e6d0b1bea120302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c4e26b6a97bac1d2c3c1408ce2b7015f11fcedc6ebd01d2421c7290059ce49de55560244051024562ce3fce7273c855d023100db219fb7051b300b19477413bfc723c2ca133d8749d39c03b4c968d585d2d6e721601c3993138502b30abba81b96e8640302047c435bb50066306402303da5539aa859b08c2ec4b080790d2e0408f0b88ff3816a36ae3e413e4f590044fc8c6efbc8b8511545a7f48fda3bcdfc02302e4afe8c69ede7c97d0736d64d278d8e4a883df1a87006b307f2bac59c12ed29ebe1f379c68c28f448ac391d144d520e0302047c435bb500673065023100d2a7c39f627901361067f2b4a9c8af5a4a963508a3b33dd0bafb1aa02ebe47cea8273e7f66c3577ec0608dc2fa6afff602305b98b5b5a5b245de0e21c7e9948ed25564dcc51742a893917e70bb0bc611aa72d16de76fdba300cb9d1191ed0c3177de0302047c435bb500663064023028bf5a2c8b204daf743aad1ac975ab5b09baf11d378f770a0489caf3e5d6a35c0d9e1d1fd98102a6ae2f856de7839956023046092353a95f22573dc58f53227d7d679b32f4be130db06092381243ec0c6f0e5a220686ea1f9f31942afe66babbb9840302047c435bb5006730650230753160adf066c99e9d9a9484f3547511f4a8ce3a1fba635520a4fbe5c5a10655ed55c2965dc40c370c302035c76b1b8e023100f7c26b2bcee9edab47d048ee7dfeed7a8263d2c09f86c06d1bafd529e17057ae1222e22cb541573dd9f500264f7865d10302047c435bb500683066023100edd45b5970929d4c099a3696876a878f2069f7816b1c55f49a529ce2600c5e63a26180e486f15b6b6fa1b3d59b9d5a83023100d21c974bcad80d9349f20cd32ddf94fccde7134ad43c046eaf9380a3258c7049cec241bfceab2a53e2b72e2612796e0b0302047c435bb500683066023100ba849aa990fb034195416ea699f71f64c2a45bf6763fccbeae52d21432cd3d20310f479283f13075da17597875b6f0ec02310096b4aad675e41cf6ee2cd73f6834acbd1323391d96aeb4939f256411ee333ab1e75ef9e60301056985a1c05f7191c8090302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100de8fb526d8ab42050989fd4451e2d419e0b346df16e0bdefca9c69cd16691ee9d4f79799d9c880876e8cfeabe0d50df6023100c59a54ecc65c334a720731fab83b236dbd4a674e31dcdee3e514169237bfdc6eaf193990e2a07f2d7fd4828a49b89cfc0302047c435bb50066306402305164efca7bba1ece1ac6291471395bdd0c847e573b7ce89c6ecc5bfab9a8e94fbb208050f659a946687b845a6e7c7981023073287b3f9435ca10efb8f75271ed1aa3cbaf35e2d8f583cd145694c8686845151e7d8fb5f96b40db386cec73fb8370490302047c435bb500673065023100f17438eb7035c9cfb7b9343550636599268da49ea388b64fc531f0bd94ee125c5ef4fbabaf9c226010596c74b9005c340230666a211aa8c746a8e15b335329b2fa260a341b4a9a51c5da981253b8e0c1e2349ac49e800d17c98ea3203bd7f6e1ade30302047c435bb50067306502303b83b610c531f27660c8f6d2d8c00764698946172ee577006cbf4fd30b98851380d2cfacdcf928e3993a23084a688d660231008fd7dcd90f22c5fa048f3e00cc1f09b57c3367b5b632032147b6c21c4720c941fb85ae46ed2357c40609550c494771e60302047c435bb500673065023100a5ed637651087b63f3ed783c286f77b1042cf94b346344340bd132dd8befc631025f342630365da2a2f77f2713650f2702305c56e3961f623de4685cb92dda478511d3ab669a6ce21348aa49dd945c6033cfbbc85a4abc1d1641faf59574d97b5b750302047c435bb500673065023100f028db8c95541b8daa80fe3e988e7255319a8360ca5aa2b396985597720abd40d3e35c5847dcd428f94e33071993ca8302301fcde993a6d2bd09668bb59eef47281aab382598f5a141f33c6413ddf69ceb02c1edafaac6af910d08b003b94d037adb0302047c435bb500673065023048d3222d05df7af46a3d84cff02a3647f8d1c56dd283618edb9ec82813d022451a6edcd761bc473043b207aa39e847ae023100bf0e35b3c076554aeb74e002270345e78b41287824bb2dfdcfa97284c1a31b4e33b109d250b0bfe23e586e29089bdd610302047c435bb500683066023100d2003265a47787abe9f1b5e9a41258108d557fc835fbf8ecee51dd1fabdf86cdebc97186fbc91385b08890296efe9ed4023100b9e59f2642c8dc1e6af942c8b869586c012e6fb2648aceffd22ba22f3a676ec3384c36b8cfe3899dc708161c54de4f190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304c46e808506f9c8672a38033492d5dbbbc94618a77ee80b9a31d076ad3cc15fe182c4bd519ffe720eeef6a4dea068d190230406aa92c0a96d074e456bc3a7e383f7e73e7e9d09c2d971196468b29ab68bea1da963c92b5b3d7f540cfeb1b1c8eba2c0302047c435bb500673065023070a4135716cf724d32b975eec1a07c33fc1d16af278d08c50c76ec884d4ac41ee7412f0d6b52ab9d1a4dc8ac916b7e28023100bae2b8758987f6bc10aa5da223c342b5ab128e1778c77d5be835606905d336739c1a16cbe50480373e98e1883635fcc60302047c435bb50067306502306f7d6e46410ff59bd5be63ad555c42b031ba672c7aface31fa9a6da57942ee466cff00e88851149a18b9b066f523674b023100acb2368b832d07961a84b80a5ff9213ed442bad2cf86af7141063c83257dcc05a73d7d8d440b3540f32b2d517ec16ec60302047c435bb50067306502304396aae90b813fc7363a4dc446a3b7eb7f03676fd706483e3d7f328c10318fbd639d34c68f1ae4792cc1255f86f4326a023100e3bfc95243267e6607800423f8f88835862467f723a912809d882c92159c0d4d7803e1baddd90fe0babe51479e3a12750302047c435bb500673065023022e7b9c676fab23a5fa0a6e22ae840bb9d6bb9c6a6516cb76912ec5231e5e10a46cbac4ccb7bd0eb1283cbadbfbce510023100b8f913538de84b796d871d6dd0b99c766618f2443a05dba8a42b65ce8fca093a69813203653c1eea9cf9061e41ba59f80302047c435bb5006830660231009b5545f555865088e133f8d8252cf7f371c76a19fa1f0c142666697950255611e236a18fd935e28eefff6d9724421496023100da1be0e9f2b2f068766a1d0aa05c67021f3a04070330aaf7c3cf5463422482b2398daff34b2539beb2a5b3f9f3dd76110302047c435bb50067306502302a0016beb976c1cb60c4c95479dfabe830226d46f35ebca44732771f94949539ea479f9a0a0d2bdbb371d3312f227bd4023100af5d512b4c76bbb6dad8f910d79915f44c668437dc16ce4b41511d3a83c85f25a5a7f2ba012d41e9c3b2a047a30300de0302047c435bb500683066023100f58db66129a489578ccec0c8b715ada22bdb2dae9f5800f5a15caa572888d670e99bf80b1543f0c95dcd2bcc47f6561b02310084effffaa56bbf34cfed4ce30df571047e32f3e77ad927a98ebfcb04f281b1cbf9d00d048fcc170e9e49033fe004460b0302047c435bb500663064023059b80d145e311876232f12c1cb7f90a1a202226eb8e930dc4aae92af2b7258712ef7c46b83e6a9acc5c32615cfc7ebfc023027b82f8cdc87eae72f4a7f3e4088794f2f006d3181215d298b1d74d6d34350efe2982d0c8ad9348916d54c8f2229d9be0302047c435bb5006630640230375b7aff346a5ba7ae1e85f0e02fb53858fe9922ff39dc6f1050d959cfe2a2e7dc7999e41718127b426155dd461e982b023070c02018941bf12f787c62c1a0478491a037bc338690550235d1955e1f5b141b12503656cf9d7dfa5f7a90aaedb161550302047c435bb5006630640230326bb91754266634f9bafb4e59970d883d015ce5b9373cb1752e65ffcbe31535fbaba5baef87e83a753100b364ca6765023076a1bd99572ce38eabb00c1356680d8d4beb9b6ecd46a30197e45c4af7172e69c0fbbc0bc2f8333e561e5f036981959d0302047c435bb50067306502307094573483e2cb8e09116846e871d33408513fd873f3d276db31c476454038d4af28857814edf17cd559381f8411409a023100cbf36006ba6c61b6e63915d72fed8f7752d2579e05fae9f3f48cd8134de122f0ee2a10a3dd15c72be5e6fd4cba660f000302047c435bb500683066023100f8834971c34e35101c6d72c883cc934a31ef425003988fa8d360a7b2fd0e16df4614ce830e99ac7ac74396f73421875d023100c039f8b522e3df0ed2d5f7c6f9e752c7fedee82fe968fff8fba7e7a4fa682f3a9d70a72524cc4c72a8a04410ea10707b0302047c435bb500673065023100f2ca6ce4e3f9979f43d0688a8fa73cc8bfe44e5f884850e1482a16a0f1fbfd4243603d18506a64372fd78a12770f473a02303d13646c6c0a6cab50965e6507f881410fb3f3c18db9b3999c703dc0622ab2a45f794934e965b9ddfae6158d37a0c5680302047c435bb500673065023100d26170b69911a1a33257825a7ed167b64fdfe041e8edf0dd50443569bc548f7a7522ed4a330941ac13d87c33da2c6ea002301b8755bc3827510bad7ade8d15be43ea8056cf6d993b3f9b85fb78794ae95eacf22ae42fbb1924e8a495410da616fedb0302047c435bb5006630640230761d4bd95607d9a15e1f43aeb7ae1e290c3b4d1efa3e4918d8b16f5733c07fe401fae7c8a601aa84c7d225b1cd921e7c02306893f2733d2c27e79348606822d7a1c8ec3996a80d4971b70adbb008d50bcee3b2f6e7ba1d1f0d02c6131aed345dc6d70302047c435bb500673065023077954b1ce618511ffad65fd48b26adda4d4caa9ac937e70ea2ff89c07b0dde0ba72b507fcb6b11c58502b148d162fdc0023100b9ef653c3f86fc4b5a4edfae07a957393acbec12fa3050475ea27fb95a0bb2536852949e077c1fc8c71042d44509193e0302047c435bb500673065023029a3732cdaabf70c65fb153521feb62098611b6b76b9dc71cb089c774615755d0e8924fd9f067ad10edc0209c4facd85023100809d7c45b4bb905af1b9add748fcbe762678f6c8854d0ce324768bf2e04650b17c47995acca1a2b730781eb4d98579eb0302047c435bb5006730650230372d08ae5763c4d04c44a3f061c21d995e8c703d1a777509fad69430f6f40c0d6ffcaff6fa04beaa8e274655677fc1fa023100c5b786221020c27ac98865ea872a50e17b2e242c28297c18afa83894357dcc76a125d37da95ba07a2c829c086535a4eb0302047c435bb500663064023064a6387c9953eb522730eeb0688d55364643f22fd69d62ea67a1acfdf705ef994d4231a15fe549a378d450621aa294a102303db7bc69438222ca371d245522d57c5e2a54968ff0ecbe077c2d4639fb79f2e018d147ff537a98c05f0a3ddc4138df830302047c435bb500663064023031a6b1bbc273be579111f4549631317b9ea6baf7d1fc220b57c4be4dd0a8034d4990b3b654db560e9f6bcacfecba1f8f023020fca1358ac80bbb4af45fc8947abd0dc6acf005096e01b6c02e7243d11a98c79df220050d8f74a2c8648ce92639c29e0302047c435bb500663064023028eff0a925e0fba49a7a2d000ae4241a8883cac6bc469504b02f831bd18cc747333fddb5d4aa7232c314669304e49616023002fcee2de21fabd69b858d11743e20a16a46fcbb51f689baf756532293af3a4385386bb6f2713a6dbfa974ccf0be0fb60302047c435bb50066306402305ffe0bbaa2a899022d3fc5a4636379f4bd6a99f2efc3b0b937170d9bb9813495a8c7d248cae8f1b3f72fd54cdb60ae6702304e1af8c78a4ec37d368ec4de66994fd0781a0e24f2830bf721288b1792795ed4e827bee62671d4e4bee1525c94acd8e70302047c435bb500673065023015cbcf1dbefa851d6903b18714fc61da51189783157713c4deb655fa8fee9ce96d8c6f938e2f3ac0145e72aab8463c5c02310098f887518ef3c6b71abb560aa8c25b3abf63dbe444c7f8708e11556ae83e9a277d6541624a1e29b63007c843317061c70302047c435bb500663064023017eb721894edf73c8fc56ca984651083e358c61cfaaf9db5275d22ce948e62728f258485b3b7ec70008b89ddac0f9a0002303f9e204705e91ba5ebf20a8078b601c5a874a1fc55722bf5f58cce5be90504943d02adb803555fe75913eaa9390e02ea0302047c435bb50066306402307894ec76a98e9f832300c7da6eca9130bde855cf12d797b1cc6a9d5a6151b02c89e5bc7d7e3dd5c2afc09305b2fd52dc02305eed23bb5ec24c062760ba2116b6285aff8855ac9f783265050e73befd8fab6dc366fbc377dd4effd91999b96a6fe1320302047c435bb500683066023100d8a0fbad172abaa2ca28fa952aad64b0fd7fe003de7e50cda0ee10a01610bb68cbe7162ff847174655f4a18c14cc5b71023100a3c7807df1fca4eda06cd6f9a57a1e685919253c5bd077b019161acaf0a026c8c8989d107a004498c762d18e80b344400302047c435bb500683066023100ca0ffcb43eb18e6090028447d15bbc1e1227bde5cad8b3d05aa5e52ffa273aef7978fb027beb6c53f2eb82f8c4b5a091023100a42a3394ec31d337585bd36c8d70268d42a6018f80664e6a4ac897bf4cfa27a5fddf45e195ab6d89018f6cb53132bd780302047c435bb500663064023010ee7d423b4cf5bccdcc3da6a7fbf65d3bd9b1122dd9bd11dbe0cd7f1077f226a797612520d470e15dac2e9c04e0cb8402307b3222d9487f2f74e0d06b450fa288bf5f208dc4d01b1b88db08678335f5b01747f5c79ca7ffe61951941f10d8f1abae0302047c435bb5006830660231009f8fc16e5e030196a53f7df690dd98805d47229dd5716eb92626b5256af4e35eebfd66a35a31319d199c2904e2c0ed39023100ce41122983989154da14ff0ac94f3f9fffad5e7cd0859579c0bf4c7cf4e92387bddc056f0ca02c045b0a041b524568d80302047c435bb5006730650230583fe097a89abdc12b5982ab94c9edc02c3ebea81fdf582def6427aae076ea3929cfad9e6e529202dc80210091bf552a023100caa3c1e95632afceeee50a6eb35493b4c8a523b1a80e8a2615f759b55f152335d5c2cf651f31304c1f8602b17ae17f450302047c435bb500683066023100af9f33522e7ae8ff543d6c5154d48086befda286bb5414d000b88b9c8ed32516b6549768eaacf3c5efda6fb90dafa02d023100835ee04ea8319896d7e99b5490e9cc5f1681151f035920a8d1612a84486c0923dca0585c324977c07381342cc375e49c0302047c435bb500683066023100afd90afd3d4e69adbd69e03946557c1045c2c084024885ce75296afbdb8856c5f459622ecf5b857a45757a5fc6b9b89f023100ffc9d33df7daea993fbb830843c48778b748d00d49a1e3d882eb0c89130fb8b09c0a157c5b556359ab464663112f2d760302047c435bb50068306602310082eafd6598bed4d87560f43f47e8bd370950f3e515e0a4cca713960bb71069ca87f262e1a175c64631ccf82fc376dbda023100b749331d6b3aa74fe37581d9f0df51ef991d7fd786f702085acf40e9fa152ef108ecf89c917fedd15e2e5890c16f0f950302047c435bb50067306502306bf2dc9742048a2603609475365e74b173f01fffbd02216ed3b80f8b0997f86eeec03322377843ef494733f69a7ce4c502310086a12bb53fb72e4123c9116b5b70c37f53596cc3851bd524fae0c73531f8ee577b4848037bf8b51c9e9a49f9df77aeb80302047c435bb500673065023040e72f1c6b5f2de766590838095ff5148bbaf2dee334f0cb77d6bff43b7cf596a36fd18f4d5c5a9b4d2d8fdf67208908023100f2f90e90228a2c128dd07f6de7ab4e8c9e8af885426237e529a5dc15a622439b1a53f7c6fcca028d14af5d3aaa0aa5af0302047c435bb500683066023100d3f4a570b4db03ff5d5faddb4eb6c59be4fd40b4f1e01ae225b6bc6e89d20ffad8727e8d799385e12c5b72946a11ee44023100800658ca8dc629957dfef9c7887fd799ab35bb371273d5272a8a76cd93c0bfa1679c45e0343add04c1e4388f31a949140302047c435bb500683066023100b450978b229ba8fc53b84983b5281ac7e2a252ba3d84ae151df09016b97018c45e25560b317c20f9d5317bcf9be5c566023100ef389c35713cd056b862bf46bab4159b90f3aa7f3bbc7e0a49070ee37e2a51709a0d0aa6bec062df9e27b9b833f5da010302047c435bb50066306402303b5c54306eee14237377c40530585ab1ab0f03a4edeeca6115ff2f07532fd25319e033d3ee1e9da86067655de803494c02301c1e67efd3f11e521f2a280fe2f5c18f617afb3ae42dc25627892315f082f140b85758e011da7a51b762cc3c49e633780302047c435bb500683066023100ad91d1f7e7e52e25ae967b06ddf468572094e95b74cd53a095df489f9efb809acc6e0072e46d89da778783e88c725e73023100f9207e27f34009c0e26ca0877d179d42048a9fc4ea55e24381ded5db10e764591591441fa8bc69b1a1d31c5b441713bf0302047c435bb50067306502305db078753e46460809e8111fbe705af9b04491164b942e02d34da1a7f7ba18cfa33cf9d7f669614af7f5ad8d05c6c704023100f13e1c3126de196279096d09da00c17eb6741ce5615ca13202c838ecd05fde4c29d3fbbe5d482d8c84ea943ad75ab6510302047c435bb5006830660231009fa2c9c2a336bcdaff4d50020a67e88967ccf52b3bed8ade1377d304111ee0d1a1eec686c2faba7743f92863714e5fa7023100924e482d95a59f3c51035712e79125e9780760f452dd19a329ab97004e8861199df2c80e6d1a81752d95e2cafdaf76c70302047c435bb50067306502302444e69c3a0e334ced28d2de5cf439b792c9f49fb1f5d48e24b58ff1b6ab2af7e0d4ee63b6d27801b403b2767997fcc0023100d7a1e95dde5ed08dc48271be4ef57c13b358c46e2afc643c02b98049a891f2916c28fd12535b3d7e198e9b6d18dbbbfb0302047c435bb50067306502307231b011273d8f946c55bad82f86892e488e78f8c8a07aba972099fa2634a8fc2971209601ae8b36b90144379ffcf2c0023100997457b99a413eb12a38114ae55f6923106f70970ed440cfa80123c1f7c7a2841960550a28a8a7d0866c19092200cb150302047c435bb500673065023002b36bd728bb61ebffea580dee7d66ffc168d7dd38481f0062d23a6edf931438dc306f737ed907b0e607113c1b20a3af023100f5ae8f0384ee985a2867f052b28c69c416a8c7c3fa9d607a4c7b0af7e5fcdc637ca27a26a9af8c3a7dbb62afed33f84d0302047c435bb5006630640230115405e630c1fdd7b3f967278c8c6607872da414e7e1d58884627903fad5424dbd9e15a385ece3518878d42467451a9102304b2487000a2442f9bbfff1fd9f7cb6180c36d7b60e56903807625bed44f885c319c4d42116b3d8bb35bc83fd6829058e0302047c435bb500683066023100c25b4db3cbc3e32ed0fb06b74646457e4f50171fac07a6fa1099fd4a1b0db6e2998c14b3e7a5e0946bb3ae54b017bc1a023100ad2ec4d2d3f1e9386443a6e0c177b93e71649271c89c604aeda6904f803195fb10bb9ff4f3acb9c4f6502b050e76fdf00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230763be8a4fd84e2be2be7f23324c9ce6dadea5b078917eedbbbd66fa6f0d27b1385f6d5eeaa54a86cf92357acbd964e950230512de618d02acc64fb5bfed435a66365a3d1a6859e39299d822b4a1dff3901fc253e0c5a3f5f60423dc1ce42cf9c0a700302047c435bb500683066023100c252bc0f098e6293411f3849405384577f2a62b7c702a239c8f9e0ae883b5f6f2490d5592038d48de1d859e2965d5824023100f1f6a9d0288ea71e9308aaec33a65431f82f998e9a04890912479342540e58314e90c0c1417454ea8837d49f5d0e1fde0302047c435bb50067306502307a3a173459c969a93b7c03cd0f00a7489b177b7a83d0527a3857b55f8c3e2a43049b4d28caebb50fae42f5b90dccc7d6023100f1b6bf7d7af94ebd82ef3836ed1c6a9126413af57051423e79af4d1638f7a6f522ed4c1b706f3fc937064738ff0f97720302047c435bb500673065023100f02e6d10d10f341162e375210b0e5812c7ab3c76185e9d22d286b1ea8179dd538d9d3ad70e065a689483e6e856600510023071b6537134e4821e4e2f2a13daeade0841c8b7f6aff6f6ab94b6c23554a68286dae688fc91421002c975b84ba78d6f020302047c435bb500683066023100d2b97cc0c50bcf956ced141ea97642542329d0f9209b0331a76d5bb442ac1beaddf29c61df6c073a12e867d436a86630023100c8cfb78b7385ae0d8ec4ffe42fb4a8e8c332271b0b9312a18f096681441ce31e4be662c37ed7890cf3622b5bbfce18570302047c435bb500663064023063c77bfdc6ad11aaea697437d6030c9d9cd2dce4fa71460827b9db260bae29aecd99f79f0a8e24908246fdb7c96d77f8023067d0313372a0adc5688e81a5dc44409e0f2def58de59ffe2403198f2dd38ad5aa4413cc1fa4d47a39060223eb24a30f70302047c435bb50067306502303c89955c1025eda7e1d4be559806c2a063866e5c188b743e58256072d164c6cdaccb4a5b55abfab42b4ea0f29bf2d1bc023100d6ce0c771770e3e9ee8c050b6a0b39fedaa564fe4f8ae18783ee6e81c01888904f72e3918b64b557be70358385506f2b0302047c435bb5006730650231008ae2c742deaba28e54d48cc2e4c0e9f2a743b47758e0e67c2308c32ec60032c4af7947b5943a60b4ba55b9e803c063f702300ca414fb7590a5074dce2016470f12eb7a1f7f03c1ff0ee0e992d1739b1bf07106abed92662c7a2cc7a6c967251248fe0302047c435bb50066306402302fc5a83b41bd6cbd917683a2988753a75518744fa6d8a36bf0e3a14cbb0f59884e156e77081a75be1e2d3e124ad784c00230561ea46b0d257e572f8bb35284714478ff8319139cedaefec1155e6f78d4bfc0222ae63f32c93862807b32a01487b19f0302047c435bb50067306502301b60e2140e695c6555ffd9012b47b1d23e14eb7af2684aa0ffe50de25e4f62d14e4b3e513babb3513e6fa276f071d70d023100d03c1caaeb111429f1c887afadd3f73a363b2be822fa5ed09efba44ff76af62fa4928b9f91209d1d171faf76d2bf37940302047c435bb500683066023100d0f52f7dd2e37e9cfb91312a4cb97a5893c4d100ea7c4eb215c01d08b4859e3d00dae91ae9a3959a376950d58daa8706023100ddb156089f05f01e6db3ab9480ff659ba5b340dcc39ead84e942773666bf530055d5f6afc41c63811e5020f68b40aa280302047c435bb500683066023100f4a4f19c8de844e25606b2cc834c3f5adab1e059b494b7b90fd2aba7024558e6067fc0114d9df0940168d39db9eeba64023100951309512b47133a6b2f6d5c8ca41bc793a1acb7585d5858074f2fbbada26ac6fcbf2837d3bce206261709668b329f130302047c435bb500683066023100c9da2713307fb9a7616abfff4dbf5e73682c79e692708e39c57c64ed9ef61263edf3d6ae7826be1fa8d639c5e3ea469b023100f4fc47af2f464704ca9b72721d24a293070532621970ecaf11a024a9678e54757e50c9ee6fd7df92d37d6cedd5f98a400302047c435bb5006730650231008a61a1e35f75ad537af271426c49c291697ccdebe9db8e90e2d8633ac779ae2dd24317fc786c945b2665aabb9391ee33023050581183ce425b08268fe1a136d706e74802b989f21180aa2ba0b75234fa56378154261d0d7ea25d032f85f52287c8130302047c435bb50067306502302ba18c8876ecb1265c32292c594386408c2ff6a912750b0df8aae042812e01fdf55c46037f53b08917558abc99e3a2a5023100f714bfefc8183cd22a97d4b5ecc022d76c7f6c7dd985042ecc276d39e3762331d850c08f397f335ff138102ba27944830302047c435bb500673065023034a0ab28e96174acc442cc9c75ef36586560744fe07dda4e386322e6dc6fd69e8f8dc15a5576cb846da75a89e84610bd023100c78380fb0d7d0a39be2226450e7bc597316dead872046afd9b0649a7543a069b5f2b4776f074b1f84ecbccbdb546c2510302047c435bb50067306502305ee67484604077ecd322e35de105ffacfdb4ef9cfc36d1a3e855a7118815a7c9c1f28d4fdebba40c6ef8c5bccb36893d023100ec0e1934cb38d7246e2d5acc2212a9ed4cbbf07c85527f86b2f2d7547e1f7ceadca95da96623df0dbe1466736d8da7490302047c435bb50066306402301974ab7d081d9d265a819b622ce9bcde8f921ae16d32e78938c8d1a4243309199b1ad8d5af45756c5b60941e72f3c6c302304e016002e7adb66e770b206f42d819e28def238e6ba3b24de37c2ddac5c6eb365bc295e72c227ece555f7070e4973c8f0302047c435bb500683066023100fdc15612a3c6c8ac724aa20472d3872ac2c53261afd21fc834f3b8f5cfd08691a00f9fc6fc4dc44cbb2ce797a968d923023100a8303ad25e919d3dcbd72897aa42d2f397d5714a322da9b1f79de806f2534ba790237c8317b833e0f924537c268093ca0302047c435bb500673065023030f6e5cb1e6fd3925c54544efed374224dcb8b3341bdc2234b5f212e4e4846798eef9ae9a113ece9843d318eb513a2a10231008e13bf2dca5e61024b46cafc71c6e7338e282a69f8f3839c0cf3ae0e32bad45c8bea840ed17e023da40c5fa7d59dca160302047c435bb500683066023100c42301ca4b879c57274a88b23758527cf06e3e5fb1a5dc2fd60c71fdf74e37e7c77c2475deb47cda9f02fe1481d125ea023100bb28b4a4afcbbe5d5bc89c8288f80e9c36f39fc49e5613b162a7804451f29766a45edb044bc08d6d8408f9f3a3b968e40302047c435bb5006630640230585e1d88e941b3e87cf2ade18c100b326e43ef278f3abb5fc597830bffb77114e22cbd09afb567f0b1d8a98208f7ad7e0230086eacd12735691fe6e4a3879e89e312b48d6ab62e1da76841af0bdf77ee6e500aaef16dbbc084fb431b2660b98e287b0302047c435bb50067306502301e582c29f3fdda42b9c3df093e684eaae4aecf93b7cc06178f9dc420768e73a93b93620bd8286c4159ad03b8de390926023100caf4159b0def0ee4e350b2eec8774497d89312071bb09bebbb2fb9b6dd02d688d7dc59cacbf2ad1df11af1ea6afb332c0302047c435bb500673065023030ae0d462096c813c81deed8b3862f2042cb34ac7541a8531b13c26e2101c3f72a5a2278e7f11d4183f02d07514207c1023100fd82d604021caa8393a006039278f732a648d8e6b7ef867afadb7447a55e6c93edd95241a516c46a6c4d857c862803c70302047c435bb5006730650230670b61eff56e8e73fa1c66b2fe548737670a4be2f2be9aeb990ae90755a71ea85aa8c92604175785f04743684939c7ce02310085e3874cb613e31d85da42fee27c7593730e829e11c8bb7f669120a90ef63747f1b6ffbf0cdfe20f2cb8371b628c19bd0302047c435bb500673065023100f0dbdf4a76cbc383cff4a63ffaa076ecf1323d245a677b864555239aa579a01928b1841f6ce0af35058f07ea376e5329023021963892904aa019b333f286bd241e64d6d37e7dcbe60472f94f054c13712fe30c470327629ba14393a72d0c3d41e8660302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b6695d08bf80b40e214dbf5c03665c5c25917c0ef2da53e3d3bdfdd5bc7889f9747d7a834dea5e219aaed2b4982469160231008d2136e3e24d426be7c1dbb7abfa27412ae22f4785763acd9991949477edc71ae6d7bb7412c155774900f6f9c2c5eae90302047c435bb500683066023100b5239ccc19ae42077d64c71a37eb7d6f51ab9f164a4ffc92af5d11fe944c08b958547360e6cef2e42a8dc8bd61abb92b0231009f441b508c9d324c051b4c2a6f3619bf5c594899b2a1faf0ba5d61b2ed8faedead05f02ced0feb120c4dbf612ad6d2630302047c435bb50067306502300c2c015644f5387b786d96d42ff91e32b00121577736adea990714143bac92cb3307d4fe6097121da40cf3e12ebf16b8023100f35dd245350cc2549364c4a55acd05d3763a70c468ac50a8f9f2d6812d0d99bf2e54ff2b14640aeda9e7df7c10fc1c650302047c435bb50066306402305c65353e613dec1bd698a622678077fb9279c16032715efc8984e531f8761654f28c8fab8fea1b8e7a4ca13a36ae8ac702305eb3c8c10cbd0865dd1b363fdac05ac1005fb8ca5dc03b9b4a1ee5ef73d156d9c12f41bf5bdecdfe4d8dc3b4942270f10302047c435bb50066306402305fbd6669f1b3d0c97a68b90bfa9eed3b63aff80ce6f7ba9aa1a0dd874080b5b862a22846daa0d1f11fc6c883d85e44420230446a3cd515306b3bca88baac4347e7bf80484f5bb63d444708498acbcee62fd8b55cc4906f310fb699ece8e5e03227d30302047c435bb500673065023100acedb7ac519c7762407b8563afe55ae313b15928aab6fb80260f50d17394eee4ed39387de39252ad8ebe5e88435f69b302302555e25d545eed03266734a8fb6acc9ff8abf2e98dc13666aa0b1860c4ca6fdfcaede254cdc86401fc5d7bad297a8a8e0302047c435bb50066306402305baee1bce747e0d4f267b870646f7bc30962ff9830dd78a97d30c86414fef49db2650b6fadca798cbd4076b868abeee002302368a772d0e566ed006c8e6b84a7ddbcbb71155c88f128037d33d97466942814a12a2e320a1f3c58e07cbdd0396453110302047c435bb5006730650230786d0484cf599728ae88458484adcc3b84ed1b3e97f5dcb4df8fc485ee0daab7ebc3183058dd5682090608092d8c7ca902310088afc046ad5170bf908fabd0cd622b9c4dd59cee69f750d42bc1f8b8062d44ef466dc6767c523756660f4579617887b80302047c435bb50067306502307f15c09dc35b297a297e11b0a7f2f87f6a560b922b84dbd3528ca1e167a9c20344babcac17bcfbce27fb7f88ea28f5b70231008d006d5e19a5aeddd528d5a1803f5790cd317657afb83f11f570696845dda72a6f482eebceb87cae49509a032365d73e0302047c435bb50066306402306c500fa0f2970859a4fa63ed127002549d1859cd48198c6c03cbb973457fc007175e70ec32c6da9af514218d6b04a9d802302a7c4cceedf4f7b241941b93782382b27350ce88ca4a61ae4ee3f8fe1c6544b3fde6403584669824e4f91cc1c6ce7e320302047c435bb50067306502307f0a6ed296d40b3e17d9689a1309bc84ded8b62e4260db57a4e29ea1a7375ee72320141139139fc7c1975e9fcbcdbffe023100f70696b6da3986d4a6c1729394ed4ae7128d1dc8b5b02f16706d27aae4c59158b6319c0b13769be5f028df5755ef8a680302047c435bb500683066023100f7a4af3cbbc19a47100c995b1f3db3197277cdce7d106719c53c144fe172f0c9a51a69f233f2e3bfe711e8bf0dc3ac1b023100e32674aab9effd53f4fdbacc2177d3291b209ce1a3dbd0dbc8883fa7fec5ca22eed8013d69f3f6bbf9ae268af982533b0302047c435bb50067306502305a1b95dfd621243ca04bb92de46819122fbb3eb70fb379dcd93e4a8d7030fde7cb68ff20a7cebc7560222013a38ab7ea023100a7a1921c68c790a5b131a2db1fb306bb811e858578313778c0e9af17935cdc9f0e7df54c8376533b8c5baf533925f2500302047c435bb500673065023055862e4cd374d341c7b6e2db2888814782f3cbc9d79b802d3fb18d1b81555071b58d02affc6d6dfc75b7fd47e3274c93023100d8b6fef9a6166a4919aee17bb2917795239a163ece124a6aaa1b2c5f8401a7dc0c0875fed24e8ea16ce4d2b9016fdda60302047c435bb500683066023100cb72d7a6682bb4b0523394edf019d3c7ca0289d6afe33d66a99730432721e3b93d6ad07891e5c4ea039e13b6d754355402310080884337da15e6389254f69866c53b910ba99bec339823cf33ed5d7f2e46e6700779070247fb18459b304b3c4b48b88e0302047c435bb5006830660231008ba0a559a419ede71ade65bdb9db750db983bcddc201a56663e97f079ec595e5466b3814db277df9d67930181238fc56023100b6ba71722dbd2e7f14c0271c4247ad586abcb5c3b29cbf95f35c23125776089fd5850a64a1fc2a7128cae825217aebcb0302047c435bb50067306502310089851969b100339bcc03b01f6e1f8d4b4fffb41b78a9f3b455b8e95b2c52a11021ea328e46890a4c28d82f1bd74b7d7c02303ee32680d32deae430020ea9de6166cd42bafa5f15f661687e0b6d2434c26b94c4d16eafea3f15ec73adf4d9aaafa1eb0302047c435bb50067306502303c8bbdca674330fe6526aaebb702946d0e7161dc413b1f30ac1d84cfdd3b4d05f785cf5c57ae68175ace90d834d77caa023100cdc1d5cdc2eb893d34ed3dd3df29eda143aa8d437dec2a6a2c8771d2df893a133be8597ea63cdac39dbf86f856bf850a0302047c435bb50066306402300a9f2e783da0117f5f075aec69656fbac62472cb5589755fda865782209cca3c3d00c9ee53de67deae052f59435de93e0230505e437944c4dd74935373702694d7e4ce1ad65cb5baf2376c667db3dfeb3e6e6c64a962849bda0604e74644894f47250302047c435bb500673065023100b74c5477884ef237a2ecee58458fc8549f6b01085c4c875500d323766193039de42ca17f5a2d64194aa05cae7d0aadf60230371b2b2ad051d9905a789014df3e24fff6ac2be2907cace7f51db38229cdfe23bd0c97aa9e50f1c8833e348c263afe100302047c435bb50067306502304622bf0d44fe4f8098984b39126a8a44df4951c75b6fc36a0d06e3b1dd78d9000b7926eda2b285d5f3f7672e3c84d1a00231009b103593ce720c2b9710a394666360950dc1c63d91bd0f8edc1c9b326b27586c56f31053e78e207217410fcb4205d4a60302047c435bb500683066023100eefc28d14b62e8329495e83a76f667c51c267f8f7a3030da963b895af0640714ab8aabb7d8df758e6031bed39710b862023100d3860140ebb5990a4e2fdd636f4ee54cf3a943eca3b8d9195b02c3f9ecde0bf8261a3b0c31f9de57e37340e33574f3420302047c435bb500683066023100b5265c450ae3630e0899cff7a8922716fe7532da13e974c6e884dc405e145aff1e7f310e7b3ab8c61ed040531e8bf415023100d98d5d6bd561e3b14e30cfb4886d0373ce241b7634ff20c30a52e53840631a00c9dc21091f0bdad0bdf6a48641da29d60302047c435bb50066306402306bd1c2e161c4e5a37fd2397062f45927eff17e848d7aea402e2ffed37116f6d1aebb78035826aa84a92c4e85729f87b602304a8303915a3b56c73e56aad020a2e8d28a5ae7de5eba132eb99fa8d3773fe49ed0414484ac276399ff1d9b4c531df4f60302047c435bb500673065023100f1b0270372538754d4d8f97442476a6318dbc8f84284770d0307987a01013ad55b2450fea6fb1a0407507232053fa7ee0230689d64264acdcc7d4883b2f7879e3a39bbf6f4b5045bd4b59eb7fd14259b7bf0c88edc4fe6eb4846ca2fe056e7db6a240302047c435bb500683066023100e22321d42330b69b6e446d977d1c1a87f7db85949a4ab2b7786ca0af7cc21de552f14aaef5af9a9840ef4f996af7d296023100cd7e04f0a367854ec16ef7592c9e5aa9faa133605afed1925a195a7ebde87efe897a69b205e0ce70563a989b3f9f88e80302047c435bb500683066023100f4c29dcb12892d4270cc996168c705c24ae4b676ad4f9db83cc50d6cf550b23f5fb3b92aeb52746bc52167d7105650c002310081e239bd48fe88adeb856f267abdc3e52f1f6e5cebf4bc53a5f27e50c1286e84ab884e61f21f4322cb4be9ce506330fc0302047c435bb500673065023072f4c1a5ce30c3bfe88a954ae89a76f5ad42957ef3da4e20dae8120b33f54487f7959ee1fc39e8242a41b02cd18954d4023100fafa5e0edd59e6846531f617b5179a9591af78e2ba4c5880460160e7a67901ad15a6429a7291164ffe734360e879f2460302047c435bb50066306402303255045615149aeddc185b1840589718b5c65783708e4d4d6568dd7b4829aa194f6225b7b86c11dc59e37beeb499e11302302fc0c8ee8c67f59da7fb62a922981c10bad3ba66a63407c5011e84219d70facc62fb73dbe9f40f11b79d0e7768db9c2b0302047c435bb500673065023100fe1133b2bf3565ff0ad69f96dd9d1ae49ef824597a55e6b68f047eb1ef51bb2a573a4aac3b78bd234d989b533649f9670230067c5bb655d81fa617fcc56df854b3ded8b77fb44dcdef3940516e5e8ca06133e657e8f1c6851483f7f8c723b8f34f930302047c435bb50068306602310085c14294fff044a7305901e9927edc516de6fa977d7b16f35c0ddf8712e90026a08c378f808e863e2d9b0950fbd51a40023100f4a26c46ca312825a1ea0c50ad171dd98f83f43776fedd554d65e6321b0e699a4405bc54f8bab8a5f2d710d38db6819f0302047c435bb500663064023011c92d4f0e1d96d1d1fe5e7f8e21b9c6fcf675b6a17ddc22cf0c4258614086721a1b5b27a5f4f8a7829d9303bb9d6f12023029f3b56c352b3cd3ae7b262a22587b7b027a81fb6c5fa0e30f8fefe1dee56b8f082f9e76520b8c400f69334bc529ce740302047c435bb50067306502302e30df428cb4cb2adf588d7d5bdd0cd37085000529d5d21ebe6102c1fa430268d695042ee28495f11c34d4861ec215c7023100cf2f9da0ceac676111a66d1735dd1133b43bd746c86e8b08bc0334fae684408821f895c7d3d37d429ee6fd6bfa2afd8a0302047c435bb500673065023100ca81e155fd9e03e161fe8cdc4780b2c8a7fddf7b446e202da46687fa6960cd8ddb2a10847d216f0be915d0573a1ee06c023045f9323738c79a8c20f63f28dbd3a65c0b104f150d649bd179bc395e0853f211fc1ad4ff99a058cca652e11c9a3df3da0302047c435bb500673065023100cd300114bcdeb6b7645ca4ab5917069ff8dc6f391ca321c55871570caf76c94424005e906715d9a6bdc33f72136fc420023052571d0b9c5cf838f075308998c1e3e9622ab0558b3e989770a1f43de00202bd0b1b52df87e58a2cfe9c11a98b3415170302047c435bb5006730650231008c1a081e2bdf911b855292f6c7e6510e59d17f1b0897c2b61978ac957fa18245e0b4d94829a854e4d367e57b04a7bf2d02302b199cea104e7e79a77dbd0267e328857a013fb1b31c4272994fb35462dbd7b78a551455b7397a9d65598a216f264aea0302047c435bb500673065023100aad92fe622545d8d83cf672f47c76cd902d67a7a8345d0ec4a6acb7c1cfe2ea7076d8b2dc2e91d1c8c50233bc93904d1023032747be049767104d4182fcda3a43ae7de6c1c6c00e69c349c9d409aa74100f798be54628b987ec70ac38d59e3cee62b0302047c435bb500673065023100ae62e1aa9cd88e5a6ed36946d4c38e0e33cc60c568d2bc053eebceaa6eac69c0032c616fb3b5bcd58b3a94cf2895c4ea0230716ac5fafaec3862944605a8febd2110b9b1a8c23e29e47aea69e0e3b65c418fa99b58d519166efea58df1f3a44ec92a0302047c435bb50066306402301d9d5fcfdc3ac876bf10f4a3cc6fa1b88c2e50f3e7c628eb78efea442d4ed1c53fcc58479b5785cb9a9ed67b6775c921023052cf19abc594428e47b3b1331e0bcb1415b9cbe63d3a3ee7c5f1de93708877fc90f59347e1bf3fab6afd3595499989860302047c435bb50067306502306056e48ae466560930295bd2ea48ce94d8f878fd067d3ffd207d63b3c3299e74d909cbdba12f39de5086ef268b11b29f023100ed12156243b31acfa0dabcb376c5c8a54e03370f79d69357829eaea07afb8fe628459912b1cc61cb85afee127c87b8b60302047c435bb50067306502306bc158891cf98f07a1eb9e68fc8929882d361008c3058f6eb05575605c4370e13fff209253eb3190c926f8c50f700672023100f5c1722ac97fe03046cdd929cae0f7ba42a6a51171e9ec35009ceb23c74c5be956c5c4178f27188202cd2f1e640678950302047c435bb500673065023019848f883945558004569718848cba9ebac74564a09aad1ad8bf113097d72ddfec7d87daa953df5176c6550f24023a99023100a782ed67d44c1683a44f59d87279b2b4b08b1456472155df720fcaaa10ce65108264502c82284f3f285c90f5fe8377940302047c435bb50068306602310081a42e1b5d0e3b1bf1349599f27b49f6985de5a4db1ddddd3cffe00d4045d35b8f86f2c3bcc607ac3270c0e672ba0273023100baaad049b061db2bb27ff0df193a7155a5da8f26070a5378c9254d1d511cf377d8cc118d51f41e9e0c2b47f8046081bc0302047c435bb5006730650230467ec539131f7fb856586ecc026a792bead939428785009fee1423a87a030ae669243024875574def6402ea670a8b60b023100e81966fd70bf70a9f45cbef11a920152da1cb778f23ea17e9e4827c18b124e95658f12064c91609b0ee0f1cf99fda5790302047c435bb500673065023039763096b057f0162600c696b5b09a34f8fa07f0c122c880e801a2646e0ee86014f2742aea6ae4a569a16af909c22827023100c1aadf3b50d209b0d14c442d051fb49b0ade59114558ad325d86be060b1231c77a6f167a709cf6ee3087c51868cbe2e60302047c435bb50067306502301c1db75a2b6337580a45b44e86cd306e12e2f76b54ce089230f32f5d953a4f5fe2ed00e1d11f82bb1d8b3f78f0d9e68f0231008369add8c5ff3f310c733ab96e7940153911a8b92ac3dd484df17ef17c5906a9c68fe960c312e3e22e745751d4d784170302047c435bb50068306602310086cce65e306c4ffb9af5172ff07b1e8ef51a60d4bfa569a027b65e8409c0372ed7535544b12d167c568c4c228b81bc4f023100db04076894966101878c064bfb1dc35415ea19e4ca810e35ddb01af8ba6ffb56dc537a2fe9f83dc91de4a9c41c252c080302047c435bb500673065023004f45d88b4ca63ce4ad0a64975db467ab81481f569d980ca5221ffb9291dd01245f1d7fef4100d4ef9e0b7b5c8daca8f023100c3815eacf3ffaf401da98dd5534561ecf97f6fdda6386788d1960449f7425157a4bdcb60ac9172d6c5876a8257a2256b0302047c435bb5006730650230167a3e32dfcb3835ca5792caf755d6e0dea2fe4a91854760d64e6e9ed13b6c640f53d29d7476b5aef43921b412b094ac023100ac9761eaa35e303268458d1484fe9ba4c6825ce6358c2d2751c4d5438800ee734ccb3dd376b547f6532c414d02e3eaef0302047c435bb500683066023100fac87fb74225c694154626d041ecddfec637089a3be40370f784921d7efd5e6ed6fe9607da76fd96174bb1526db7c241023100e91aa60e688ba93d7e3826cea5b63dad398de345250cb22308387ce2316bbe9d097523f5c31f7f094bf85da64cdba1d00302047c435bb5006730650231009f44b4851857f1d63dd880f12fc22d49f8150047c1d5bd93b99f4066ba0bcb7638c56c48bdd6e405bbd98a1212bc71de02302a43497e422e82b00167194b897e864830a73c5f46195dc5b6966ff1e14a3eaeed0563390db992a85248454dbd0473370302047c435bb5006830660231008bc687aa97945ae673057b9a5aadc45e4480dd26b2f476b55944f4bf25a3c7e38f65ddef7a8dd686d6f5396c5f72f34802310095438298afcfcfb18a4c23e58d7da153697be120e2032d91dbb82cbd884081d15f4ddce6f54ca2aa3ba7ed750b34355a0302047c435bb50067306502302c4502224258b231c35da68c12b4eb0ba370af3a89d0432e0cfa4e351f2e0d0aac5a67d28a98dd96a1d9b8f799755b86023100d91558d9d88c46b1ec3c8622e256e13ee801aaae01f3d02be46e1c72e87bc2bb86415a9761508be33bc3f31893ffa1bc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ee8413bb37b6224c5851b2af8b1eccd97da0663e5ced9e885eaa8dc541ab975d1c95f37f71afef36de24e7ed6a78afdd02303bd7f7277795a03e2112941a6b444c35b9fce43f7c91d6cff2385ac102ca8170e19980e7e2b4a1fb4f6fb8818af40ced0302047c435bb50066306402305f92e43fcd0f7e7403c4e8da107ae017f7c30ee264386846658e98a35898763a1bf3162e74d90c14eae11fb40d5c441a02300d9613239f7c86da65276178f9fe9b948a3e899bd23a5c8692c3d9d9e285d51d10ac024abb22ff1fc05d644aaa9a4c4d0302047c435bb50066306402305d4e19ac88eb9ed53a43f78a781ae6868d392478054731d4e769b094f17665f1ad9ca779c2d9eb1b0d1049f51e59d7f9023060d3769e2613c8d5112ef6c4584a0a07c89a9c75778e5a2339e473745fcf40ccc3cdbd8bb0c02119f979a575d03615fb0302047c435bb50067306502310097c4a621e297b0116d64fef19033650f6fbb17756f9fb896296d6387c8851790eea106acfe3b9d69e5d1617d20d2298c0230430dbda13634bbdfcb2357f884ab300cf23e76e6bf4dbc6d073ab67fccd863814d34b741bfdcb122e500d3fcb595ae990302047c435bb50066306402302badab6a767db4350914820e4701862b9430811324baecd9c122e9f3225a502832312d1e17e1449b5b25bdef7a78d186023060848a71eaf10a587b7e6404e81f3a876b49134fd82b1a425ba6309c8de0581bbf229bca3ccde9100c3d7f958bd554510302047c435bb500683066023100bb98f324b34c6c84de68677b27f975774f0c88f737d54685b5f468fd697ae67a5438126caedead4f3ebd67dbdb7e1962023100d9e28afe38c7f429118666aabaae67267e3bd2f6e116d04bcdfd54dbb9d289f734a3aebb650f14053419f2df796320640302047c435bb5006730650231009a9847c0dc25415d6fabb9547133b43e9e63c7549f701d976142fc0554e8eb13a1f43ea4bf27f1e81095d6871bbb4c250230652bdb3f7c9c206c51000a1cd0cbd756200c60476580cb4bbff68aeb11267168767d2f29252c07e6a2da145c1b20d6010302047c435bb500683066023100f602cb2033bd544cd161f94c760929ade5c1ff67c0149b241a2d1a95aa16dcc5791c384d64b2ad87da5a6fdd8e006ddd023100f536531c99050f3e4e085e11af992c0155240bda158a0f61e24f4099a1a795466ee4b2dd9fbafdabcaea24ec90a7d34f0302047c435bb5006730650230533645a85cecf4e2409ef520b9307f2df17680b83ee313aa8a35f087e9fdea169648a4d7ae0863bfc90b0d8bccafb00c023100d82d00d176a597a4b9c2b40638f5dd6a14bf308a393653e223d85749e0ef51c420284064fffa6f64754a9fd08d6407d00302047c435bb5006730650230575eca781cdf5f65355079f1ee552dcd667cfcace9b4700b1f2a5e84190765c97dda202a99dfe609b500d8f3e57bf381023100bbccb2bab79578c5609f408857c3cbc4ae1685983bfdbd0ebafe4b6b6fb1389f8d7bb972c0f9161c424563fe1eff02920302047c435bb500683066023100c50239915a64627cff29cef196262691beaa48f61177bc2f518b799a3f486effc6353ca4e07f3d63c2bea31c5436204b023100b8542049d69c0b16399af41b84b8b3558343027996b7a3a82abd4bdf34c4df78bbb6e0b495bc8d1dcbfecc59bbf218200302047c435bb500683066023100ab64e1d0c354a9c53c4f52acc899e9ab1718552bbdbe1e42ddd1313e435773c1fe4a157dad222ed377e52712a5c3b445023100fcb3b7ec4bc5dcfc4bb6f1dcb284830e170173fcea6b8593a48d82b2ffe33773e8f9cf642f2f0a17ee3f726f385adcda0302047c435bb50067306502301f2b70085aa1d13683c4bc7529b2818a03d7758b08d273edb0dfaa7e05245cae79c79f74a4b6a9f91d100fbc1e6ccbfe023100f1b09190924ac5e1ff07c0cad3e907b08f9a745713fcbeef6b9110772e759b3b3e1fce56aed5460a82ba446fc94010bf0302047c435bb500673065023040a02c0b0164b222bc2d98e6583c41d7cf1fa72353b89682b0ccc7aa8c5e73f2e7bd1597464d6f54b4830962e3ed952802310086e75ee373d2398573f65199dd82aad6597d864f9856abd9bc9b82f0b26db14e97d57c55c6b190632429129dd13064940302047c435bb50066306402305d3bd046eef24bd5389d113b96ed8b470d6a7367a021b0d7623336763a309c94d3cc854c53f9e42ff99ae5ae2d1f8de502306ca072eddfe5a420a293d9d3642115b82d51f93a75172a925685a4c80851e3d8b83171a8ca84797baf5166e1e329c1670302047c435bb50066306402302f9886e82f0b24cf9fe0e3e31cd192c4ff22edca10b0aa464507fbb7fb216154b74600ee9a1b592df44826a22771489602303ef36f249e736cfbb7f686702005f8e4de2137b9f971779ce2e0dec7ee8e32ee7bb97a83d1e44ce379a19268f1c30ba90302047c435bb500673065023100e3af1438ba075561290274b017bc5437a2725927accb166500dce3791e4c436f76258c8d22ec1ce410d343ecc071558702305153e54c733f594a7011c09c817dbd0811631df4faa883ff3d0ed42784b3a3ab2fbbc90005bbd29667ea6690658f52c10302047c435bb50066306402305fe078063c8b12c7ba60bf657b7e782f6f8dbdd41ae08f7d6b2a60314821d5e4fdd4d2142d57a57b49dc80fece3033d202306288bed91d609afc01cf679e809ebfc832f89e7317e0da5122c56c6308947dc58a402d84a18d1e89aaf8055af039e78e0302047c435bb5006730650230031c989417ec4d78f05fb0c6d738f0793efb30ec0732564952ba0f08c3213cdbe1b40a2a9d3a6026d47bd0b5c7831ef6023100ec9949dee2ebb70323958066ccf6c4145fcb0490e214c67dacf43d0d962caad62b25528afbfa484085b2bfe766ed02e50302047c435bb500683066023100974116147df42e09e2fec6b8b4aba57ab2e6dadf02e0d0df4932ddc59f99ad524cefda1a685d9455d9754912c3306827023100a09f3bb038e63c8e7d8e9ae5a1df31a767978f5128c1ecd5214c3fa0241df9b9ae7892d0a1f4b3d80a686091db49fe7b0302047c435bb500683066023100f6bc41458f509bffca3acc2074bb44c3a6f5f7f9b67b29a3508157fdd4f9199813f4c0599498a9d357dcd1ccca63a3630231009159444852cb86fdd9ba7a044f557e4a312430166bfcf7969fc5e75239d61b010b04dc61d86e8f453313487873dfe5300302047c435bb5006730650230128b16c999eb1d74f73d7e77f4ddee88a15645f23c951503ac650925ff68371f67c13c8c830b981fadeff1b1b5839ea4023100b12eaa6265f36840f586ff851d5c600ae6c1ccb6bed2c37b1d94ae255293533c4bb464772f1cfe773781d04c161ef39c0302047c435bb50067306502302fbed7a26c75c0c06449c9dde35efe98294def0c57c10b9b6c5bbde552aa4057a35c1890db284397891dfc83a35e06bf023100e33e50b1d66baac526fd0b71f4af0b9c9368761efbded998913ee2cdf81017aa6293537697b1424e9d067d0ec0b8a1d70302047c435bb500663064023072d46ef17e34a5a9dd36c6af4e5e28827fa8ac88a9e560f868a8ac39c2862822a2bc597a408bbc93dbcb73e57b45a74002306c58fae14aa5a4c0a699f11e2ff3ca2e046269f79de410d9f94c91102fa50453ef9a209fb1c56aa5e7e512e9c225d3190302047c435bb500683066023100cae5bcc7a9df285df9a60e9c8c02cf412c44b8c05d566e5684bfaaffe61455144ee0f6fca8e3ac5d2e4012c8511da84a02310098d12376fba8f13c808e86f77b18a7bb1761eb8e98542475ca133d8cce40fc9bc8e3bc2ce1bc19f17553a6bcf6118df90302047c435bb500683066023100831775d510577ebacc53cbcb1eb58fe9beeb3b54d3f8244b2f61363644bded60b57a8b7b044ea3af0f71afbc6876f79202310094ef1a1d318687d5227f807cc8a114db3f7ef27abab30eafa9abf36a764ea588618c6b6c08ac87208023aa80db86e7d80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305c2602a8e33fe35723a38d1da903c98b1541f17fd689c2c1ec75f672960bd267b53f54160fc4a6a6f3faeed1d33a0ca3023100a08f25996f8c9e36a6a731fb8921d9ee799d371ba246f6ebf79058c6e1aa65e274e95193a0fcd1cc1b6fcf5ca4442b340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009d14034434fc3192dc7e4d71d14220a8bbb99f355d39c9864640cd8dee7dd85ef4283a6c78613f588f491a94905682bd02310088618b8a4155ac79719569e5d036ae5c36b86eb214f3b423aa201393699dd548b7feba2026d123a6c24861fdce53f8580302047c435bb5006730650231009e22a3f5ab74062545ad806b6e955451632d6aee708fbb411d769970a72e8585c6c9555dfc414905df9d496addeeabbb02302f4f16da7689031b4069f3b929686accaf8d1bd936132b94980ad18ef66e5554b1588f5a85a4de76dd7b5a78cd10171c0302047c435bb5006730650230733d24ca1a67eb620c6a233901865569bd028d25662433cddecaafb7898cdd198e689eaecfef7947db4f4550e7e16ba8023100895612b839d88fa2ab397d85c0cdc77ddf8a49f1b98b0a88e7c2684c8ed5555b38087cd508477c0f5907ddbb81243de30302047c435bb5006730650230250325689587cbff0ccc377ac89c190e5ca35a5144b14216fb497bb0173e486d0b28e9553e3c4ff3ec5c7411bf4e607a023100947ecd1b67e1a46a08158a39c47e190b0b696694681ae0483fbc1559de19ed3835d131e54f45316d98fb1644fe7535e90302047c435bb500673065023018940816120899154d840457aed89998cfb88aa9161ecef048502dc598ece7d2a6a1cc854b329c06b0c2fab7314cdd7c023100dcbc48fa4f50d656078ef5cf6cea94d33fff1c91ed4fd86134b1019b0f7f42ec0aa9340c2f00a8ecd3f21a9120d452490302047c435bb500683066023100e00c4c0252a08db374c49b7c200bbbcbeb241f68342ced18a46bc7cf600dcda39e01ce63bde46cc3b30156424764e17f023100e19261b2a4e3b1c35ff9e83adab4aec1a24d056bf351d3b25080c5a8b3265881c8ec5805dcc9e33404010b0727b4e1fc0302047c435bb500673065023100913384c4317206539ce02b7f106f10533e846ea4738231f4062bbfff50d5a716078085f17031978c4f882aab0dcd44bc023050efa9112a80afe8fcea0712ef6a1003c191fc89a8ac575dff6e32d58f701abca4fa9455ef74cb9c626d684d4b2747df0302047c435bb500673065023100cf996c2d0a22dff176e79c415f85425ad474538d53392da4d94cbe43647cab7326abf64bc42dba8a25d8c8ae8debfd7b02304c1bab60d1eb45653bd0e048f927a334c4bcd3cad116e5b92854472830fe1e5a19d2cb42e3537a4e1d09afeb5bed9bb60302047c435bb500673065023100bfe2f07e88209f4c14ff1cae4a489152460d9da528dd6fe2405f5a426b112beaa6288f710066abc4023f54da17bca84602307b00c2dd22851630cdf6c51113ec2c78429f55a9835f72fc694b8a0e511b0cd9db3e005a70472d41dc3773abf7d148b50302047c435bb500673065023028f8208e11e998facd60ee3374649b77eee42164fa0c46c28508f5a258ecb36a681eab4247f5a4518b25bb5f1d6aeed5023100e3ce97f769feedd88734f52eaf54eb42c14097fbaf24a2e62a58e9362708c6d574df40228d72d5f24ccb22b8bb2335aa0302047c435bb50066306402303a64160c4ed171be4c63a52fd1824ec371853290f7f370251585bdbbcc82a2d558d3de30dffbae741426bfe54eeb1eb7023035edae85b7aa62988ca34241304d40595af3022b9745e2d176254707fd6c1d2bfd8a4cbeeb678c9e6d51695e9894abe40302047c435bb50066306402305339eb40a4c166d1707fd9513865ce7e556fd167311de66a1d3fa32233871e8a710f8289dafb2fcd0f9f9280d097aa1902306dcadde7f76ebb3930af25efda608e2c58b7daff8bee435760008d34b70ed86975a1b0c66592d1fd736a01368916ae5a0302047c435bb50067306502303619deb5330c7218d94285d5fd2e4a973d88ce3201494b955a813cb8a05ba9226a95a91d59ad227bad6bc83ef2998f6102310082d9822e60ec9c51e6ebfbe2d67b913c8b00b6e822e84608881b630be9737f1396cadf888cca12ce67e0ebd3d59f0f210302047c435bb500673065023100c3d287e1a1428e1596d05a47bb8737e785c30bcec62cef7440527fb6190bf70ed164bcb8a36d6a6948732cf0628a43c802305aea51ce31287039a92dfa2a56806b2daaf752226d80d9c264da0b933bda615ad28edd63f4ede7a1135e5afc1a0f4bbc0302047c435bb500673065023100ec1c76fbf1886e3091a7c47db2e58111ff464b9d282a92ea3012ab559fa52d411f10bfa41ea21dac0dd621b2f210d5bb02302aacd6ab9d416ed75803fb9dfca886ce32a630999274e518180f43f105b421e90a198dba2eccb7997bf9ae71c149823f0302047c435bb50066306402302b5582cde8df173e968e6c6d654a567f7145d907c1eb7f7858f9bd78c56809013e865372a99ea840cf37ba79d4a4973b0230160551e64b3fb7c30dfb98d31401576a653758619168b2b761046024a6e056d0581d6c6d54e525f2c8845732caaa2b2c0302047c435bb50066306402302ebd7dd97b8b79135e8bd9e0befb6beb19aef52ae9febbf9dbaafc00e4df0a80539b98b42c7f8bedf365236bbf0cd1130230161b61f3b5e5ab3fcfe35dab94feb6095564e2c4b6ec1f1006005b687fecc8f8c9d618bdcdbc9cb9d0ceb480f5d57a7c0302047c435bb50066306402303a68d9553a7558ba2613add71a9f98ea909310de49f34ad876130e5ceef189873551f2c02b40c9f8238ecf0310c6e6420230137ab622dcba3fc7543c88da6f144a1c79b9b46e75142d308c1bb352020a12f4bb9d14ef8ccc5b614c5d983d6d1a4daf0302047c435bb500673065023037dd2a2739f30e0bfd48ead4decdfb9c345f805d5a9ff0504f7204dbca0d41d50b0e4caf7321245ba77bfdfa9c029f500231008b0d0e42340c5f129a409aa44437d49c03481c99a3a31fd97ce9de7adac00a3b6ce90973bf4af3a5b29f826a2a32df6b0302047c435bb500673065023100da5472b8a0f029a1c61459d70c37e709095f2b4cf6028e5787f633c2b597340e1ef7ce3d51f33fab58fd886fef2f04b102307ef62f23bf53e8f1f6fc6cca8f6db182b5cb596ccd9cec75be51042ed7fb3fc304c5ccbadbc21422ad348b088b8334d20302047c435bb5006830660231008b028540f762ee9dc3203fe0d56153d273356c9bd0fddeacacfb97a3ef088a893625fc46b26efe32b8736c6f62165f38023100ce0a842c999aa7d27e36baa7ed898ac067026f24822a9e256e73bbb80b64f1778695c7a6c14c5dbe62341e86d98c30e40302047c435bb500673065023100972c6c3d33b19d17efeecae3184b5719e141fe0309f0f3d2f29684d538063169a854f0a043618a449893cb92c1f62acb02307cb76d4656bb33d67297c384c307327cadb4209c7c31d7cb605667a0c021ea5b48c5bcbe2937a15e42424b5f8ef193ac0302047c435bb500683066023100ee42124882f0f0575e11a8a7e9cb84e059f82cd6aa9cb6eac246d6234b267920c393806279c1a647892d05911466a82d023100a4e042b741e407c14fbf65f699dd382855b634620928756bb957047bf97a17cb2b215a335e58200af3e5d8cbde0166bd0302047c435bb50067306502307c2ae1912f66e8019e86471900150b7557b1bb59dd38f05c84756ab6f105d5cb457bd367ec70bf1ff2a79325b2fba198023100f865240a8712e6efc6c99823cd4fb18e7f8a71b60fd4ffbe9b1a8d43bb8a1353c208fbd7f1f1b97f10bb3e2e8193174a0302047c435bb500673065023100e5e3d9fc795b1f9afdbbe6ac11e3a774c2d6602842e9bfed9a3ebee1405bdc5dac3893299adc06e8653176b7ad3a218e0230535570456d4a8fed406c062275df174c05f573743f306f58d98872f95b0efa9e23971f50d041f5470c9e9c216c1f73370302047c435bb500673065023100dd3fd57dd9d89709cfb08782b1bfb1157d10babf54b08960c0608a2623c54381b1d867d944cb21d97b30d467557be962023071c78262afaa42f492607765fa8cf96c81d3f683d022515bbe39e49ece513b3e1d09c1806a7dd836d02e8e43a4d72bc70302047c435bb500673065023100d6be145bc718e35edf3a1fd8ff4e4e199884df33bb5c693a7a99b2b0ba406c1a5b47d2be77cc0d66e1642771b0fb6613023070b2ef604bd8ed5a860a051b76f6b536474029ad2d6faf7b4aa77c9cddab2df3158c5d04fe8dc6d70e893d21533552850302047c435bb50067306502310094b66659ca70451679682b114e1f9312419e9e5f6e5e190d0f175cdb923a2161d872744a7f79e1b588d4dab6d4875db402307fc40196b9ddffa901df4dcbdca618ce2209268a054d58d85946ab2ac3203428959e8de07370c185587b983146ece3bf0302047c435bb500673065023100953a2cea69b17a7aabf25327956dc7363a9500eeed93d58952884e7d92ceca4ee6d6339ec4ee1173d8b857cdcae11fa702301ccdcaf0793a8379d82012635499901f741abe385b2299d0c65f5ffa46d54e319a68264f30a82a9fa0bf6896c71c2fdc0302047c435bb5006630640230350865ad0304babc4c7ce1772ec13afb924e0c8b2c4d12d017319a928fb92be84803f160c7b425b6c2e154cfcf6042be02300b2337ed03dd0e89587f90ccd9680d1bccb3445e35584a8071e822b7adf343568abd1bd66a25057773d79962b48770400302047c435bb50067306502310088daf482c028dcb50936f591777a7d6adb35702bf5c30467393e09d316f9d587dc6e45287286cbbdf06b4d22ba36487e02307621b316417d509c9a8979ebca6e9e40687e64289aa379f757ef3a8f7b06c648c579d0e09410dda5c6c091e1136892320302047c435bb50066306402303e9087eb3190b824e4fb4293082c517073cdd624154ad0ee2b7bf3612eab887659e72cb5e99197bedced84f3f5e8996302304d4a6f08637980b5618420a04962de12c846c11e076944aedf75154a056385afe18dfdce7871a9050781e1e016960e1d0302047c435bb50066306402303b2b7a04ff6fd1e40700edb1d74d055b591985bc445f95177bbaf32d4fa9a6ed10fd7cd34984ce1d922a1df61bfe678e02300422f5bcecb30238de2b3402ce8f169181badf59463d78e3bfbdb8d0f31aec81f32b5abb7003cb5b3e219deb9bc5872c0302047c435bb500673065023100c1c4f005486614989c88ad4adb6625be410361d98b4bf56cb84c189ed9a2b0ddc5280569f76a1c6c915f0760b1a11abd02301cc754c931a71f24c4bf9d9e48968ee7f8c5527b4904eb365e8077dba2a8b87d85fa203d5b225713974ecf8aeda648760302047c435bb500683066023100dad940a14dd42df00fd620a1aad528835eb219e7dc19c4a884e964203c6f0a0004fca77720f23f483e18721e8bd079e902310087645cc29ae52857aee01f5b84ea24682e67c171451e9846e66cfcb59f435ce706abc81fc2be6a655aa4424459eb64750302047c435bb50067306502306b26f81c9328b3eda77830483d47d3086bb92b68968013d03bc152744aeda86c4fff5d40de8045c1250bdde6c47b975402310090b36fee840af977a7a8e5675abee068f37d8c3a0b297f9be4f767f7b3f42728a439bade941209e61cd3d5baedb3cc6d0302047c435bb500673065023100efdbbb2346bd7869e8d07889250efa09d7da289b40299e2544cb46492fc4b4cf08d902a3a5d6706a280c11337a1e3317023074ccbcd673d48fcffed8b9ec7f06d0cd95908e1bed4be032809da6dfc7954003bb4eeec72fe12eefc2fb74611cbe6e2f0302047c435bb50067306502300434f2d3e56238ad6c5aedfa9d329d5544923f965cbf008bd545f455e824b9088d133e8c2a291e701392526979bc563102310088ec08085d6ef2b153ff13b5d6381767be9032f608842b422c730d46a26315e51ae249fbb8075bf7706d3b1cc35906bb0302047c435bb500673065023100dcd04bf6a2ec86bca6ae8db8f4e3df1bfe8cdc30850891a4b3456b5458bb340f60f7a08b03751828892368f4c3c01a09023075d1157e7b89a14dd23c29143d1dd5c2f8bff559111450f5ea79520f21db2d7f1de83260b3d4a51259e43e5684e652c40302047c435bb500673065023001dfd3f475b1026839897ab2f6fe26b539f1c5b93d756781feded504ad8519f35769cb190d4003671630d03862544fd7023100ede00b01ed65c83c2bc1d187a2c9d5e395ef8795fae695da58565b5bf922f9a34c4331a05a5d18b2933ecbb3c43a793f0302047c435bb500673065023100b86d040fff4cd4c75ff74952089f7f772e5678d9dd5064fe2099cedc20c17a074703274e97366a98f59a1a137f0b28ed02302f03fd1247f4a2bd20180cc8473343769a37f509004908d4e6d898af15fe4e97e78a669360213a4d42539270239b3edb0302047c435bb50067306502306cf86ed21eafcb6bf0ff73dd0c53f1af8d2cc29971cf76829a63595ff345034d8f90af6ea6ff7f4e7ec0d9d91a2a7f94023100e8d71779660dd6dbb3d9b2edaf9867bd62b6ab96848eb973b1559140f5058bdd03be1455b7c64e2ad077faec238e4af90302047c435bb50067306502304486ba87c8d02c0e1feeaabf72e27849ae032122ac6190fd26b127b2c30033c7e6afafa41e7d42247e49237c4d4dc80c023100fd92760f452b91e5dd9c9f609953428d73379c39ee0737edcca557e20b33769bb57f566f997fa06ab1396eac3f8388dd0302047c435bb50067306502307797af3b682d9409ce3e24e4f2d3a9a16b9c98c91b6d6a9293c476cf01a27080ee2bd0cbe619a4d5be5ac2fe152c1f30023100e96d2247517ed4c12c085b0e9b0c512c05affcd96c92955d92913c4283c4bce2fa93e3c13b8dd88dedfcd710aeb8dbf10302047c435bb500673065023100ce692b6333504abf93d2cd1595f5eca817be62d6a08457f1e2824475ebdf317b4da87ef024876fab7e47f487e4c3f288023007059a0826613fa8b886568f83990a3ff8cfacd19492b93e52b3eef3755ec5bdb7a3702358d92ff916ff24518c976cf00302047c435bb50067306502305bb8f8eba3735e427976526267c41e266457cde86d698dac7c2026b8bbbf8f6a4d4d3c615f03421a198396e492d23ae5023100eef2f2ae7185dc2dd8f1c3a184900a61fc8087105bb026995071b42f9ed5b78f0efe2aff7201972a77944a3a20d64de80302047c435bb50066306402306f719af76414673cca97d88edba78fb22298e3a296ef924df4a979c51c16d692985e6522e329528117de18d7a2f2ced5023073d57efaf82bd284ab374085d14bb8bd3fd6ad2447ab678420d755af52e0f3bc7a27dfa7acd5ac18f4914ba3849e52600302047c435bb500673065023100f206e0846077b4ba7bfb8c0c0af8dfc04e606e88dc953f614f4d9ca051e5d32ae32a1dddee2e891cb58c69f074b010bd0230229eb90f2ec17f9e4db046f27e405bb9aaf98c09c97187e58c2e8498e5ec400c208e0116557bf7235fb1fb566e134cc40302047c435bb500673065023100aabd0f08570b93ef0bfcecac136e21bdfd188b15343ca6fe8836174e892fbfe45bd3ac8b4f17c1c803645b8dbd7d7bf302304e1bf24ee7d051e6133b89bd05b52d1bf281ec2e4605b549b7899b50aaf2d688ac08da7827bafa0228944fa39b36986a0302047c435bb500673065023100ea66528a214c5bbeb0bb07e3f10bfa379da258b631c46f7f84bc17ba65ba56bd9dc62039df208487d906466ae19d2d41023065675499b93b568dce37d4a11df281b5a931eeb8619ebb411e05f610166ed80ff127a5190c57a90c7d2c932e7fcf44620302047c435bb5006630640230220bce93a9b16661a7686cb014b447ba498232a9b060e3a3684604d81a569819109ae51058ef7bfd445cdc4460f2f4f402302155c2108fc2245219ef8217e4aaf881231f387a0cb0a4678dfb35f5b00cd8f999df5a8915594dc2f9ce112fb3eafd180302047c435bb5006730650230299eb56a11c674f4887e889ee2cfe5a5e04ddd7cb848467473e209d8e2b881de3d2d9e8acfbe595bd2a9ce515770a44d023100abd6595986439ed0f5fb72f21520e5ba2e17948d9fb76906d9a35a33b012523a34967ba1d33382480b9f2e960749adce0302047c435bb500673065023100ac9fdf572652c5a3da7c98deeacaf3bdc65690dfc38eae2c6674f5c8024678a25e7b30da1bf8a16e9cbb130563d9805b0230109f4cf4883b2faed305fc237b9bda3c3c920e281333cce0b40c821ab9a79da8acf8ca7fbd7f9b917fc54d876a44bab70302047c435bb50067306502302574a5f5c1058e7878a1fe2cb9d898dce4bbfd8a8042cba97f28c223d035723610524669f624062745536d786d9af299023100f5712c83a3d5ce82a82d6cb704fc3230bbb45e532ea3faf441f622e819bc7b4872d7104ea7ffdb63844a5247e55c2bc50302047c435bb50066306402307e203c402fa25b1d17383afd271ca014bdff3ea435fb68f51950b8ea096d257d417799de66ce631a535d3723230f3e5202301be3f9619e7e954d06c66ec4ba40c3c476e4cbc509a883adc943dc75919f829c4397ad3da91e6eddbc2538328a19eeb20302047c435bb50067306502300b7e7ab01566e6928d898b46e67cf8c607b5bbe128920335a5e131c13894a5f98f03a0c454d672b5c4274a83fdde48c60231009e5588d91a0365a510e04ae51f6d9b3a7cb7a3d9330f7a37b206c613d7c4a5795edc1c870d8b69f0986d48486e964e900302047c435bb500673065023038e3be46eff14ceebbe193bf01144e405491ee67a3fe4c12a881fe09c3badd877b2ec0dd2aab9576ea8e88f89446d571023100c6f6e937dbee27aa2badaede00314931831636acab84aa7729483c0be33328381e952f878d008c0ae8db8b1cb76ccd970302047c435bb50068306602310088d8e04790bcb71c695e9d7fe19f21022bb5dbaebad3ded5d4ac8bcf484c8d8f206ade27527dbb58f8b8d2665d90428c023100b6b511c96f4214142f77efdd0a01e859a8643f18dbe6a80d58985f7067946b7708fc46f4abcf77183945f1ae5f8fc69c0302047c435bb5006830660231009a1394d8c5aa79b6a4fe366939e5000e75e437b13436c5276f0a0038fae2d3f9639699364ec45de02da5353ea0a3a77f023100fa3d99d8fbd619ac501e638870a7ccaa8b1dddd67b4239eba9863d6c409ed53f9b5e04aaa84d1f338ecc35e45a2729620302047c435bb5006630640230047c3d3a36bc49315fd6a28606a42529a784cd84669fe3f33ae917d045d13b61bd931a4ca6acfbfc530c42c8f0ebc13902305a42d60cb642196830f6eed7c3924990cd8794bc1f837bbd2346cedb3238a408a3c39fb9eff103c178d297f8381e7f490302047c435bb500673065023100b3a8a3b2d77dbd3b7d123c42eb35bb9d8e9dbe0cb5db89e781b3cd7bd73c80feea6638bf4ae49cf0bd61733b5a32e4b10230051ebdddfff6e2eac0e1416464afee78037ea59410c3af4676d265b285cdf838a59ce206cff5913d2f38bb8ea670539d0302047c435bb500683066023100eed2a34c53d5b92dd612e5ed12ff2cbfdbcdbff8c9c79223b6d4caaaa43205a375bf3f12128465816875599ef2d8e43c023100fed1628ca5cae39e9399986ebcafd384949b3e55ccbe1917f052eacdcd3858e7cd3e14ff900cc854b8166989988c392d0302047c435bb500673065023100a9393a5dae937503a0ac726d495f0168cd10f5854975e482ff6e9441bf4c2c70475871bcb3f412a794179f667c5e3bd602305c8cca9f3b88207ff50da205af592235310bacb96174e9ba4e1cb362ccfcdc86782714cea9067e758cf24c5e19fda7ca0302047c435bb500683066023100dba62db433a07c3c3afca62e2ee0dc01215dc71a26d1a47b0c3278b79413725599c0282efc31c7616359055559fa77be023100d33fc04c170ccdf613a80c4cde51f4f9a7385a4f9e19bd5254c39fed1816750f1b145b44a4a1300181031eff1be52cf10302047c435bb500673065023017b984ed58839d38037a54f0606f248fe033b7d714b9a22ea11bf9a923d0f9fe01cc7d8b55da2889bf4f3885feff670b023100da539fb7a7e254b83035e2a79e5adf8acaafa85ecef28765f2ec93d6e8510233f0879974284048eec107ccc5086a66350302047c435bb50066306402303d0593b914ae6fe5f6536f0d8c8b2de2b866b4be8181399dc48e55623ab01618d26087c0102b9ec951d1fcf58d48b64a0230370bd410e98b7af685cb271b4e34e6d5aa724695ab5330b2f3ece5e5ddbb5381ea2193a0160f42a484bd2078b59de4690302047c435bb500673065023100e919d081c480f9a48acf036a5abcff89b8c68a9e3d64fad9b1e939dc4f3b56d322f91009a682e049e739ce70767357480230594613da304888b43508476025ec8c7bf88c4c3b34163eca1c5303776a9117f4839e078674021ec6228a2c69a24e687e0302047c435bb50066306402305f58eecad07066ce29cb53f8ca2ff4f049c9bd05898b0325e19fb42b64d6db8f7110d3a55138bea3cb98e8d62dd59e5202304da9299f5917e1cc72f40bc1aafdda113f25bd802d6c13340203c2e272f200b3c4d9ea674d95e524115d7e0c82bb3d500302047c435bb5006730650231009c394612e9947aec831eb81d74827ac020e3d8d299924e9063c4cc5dceba45532145c7755ca9a874216bb8902fd95b1802301c5d960dfbca38005ad2374553454d402d82cec8e454aeac56c99b88678c88c8a53b2341ad4e7762c925d0b4b544965e0302047c435bb5006830660231009e0a57df404ab44cc0f3f5bd0e69bf102a23228166a60760ae8683ce1cd95f124f8c918f4e183d92410cd85e0bf63a63023100a251b752a2504ee3b75ef6a800d6c13653564245e1128e16b19b2761a04d5a1058035ef8c1ed2bd43ca4b1c55bddaab10302047c435bb500673065023100e6ec3c043fbe725aca7f3442c7c5bc218b4a064ba960525a6b6b28472192dc5d1db6880802ce46c25ac604730fb163bc02305238bff5a8fe612c569de90a2890de8ae913a5ac6dd25e7dcf4d3737439356d7e2574492da67a58102af2a5661aae85d0302047c435bb5006830660231009513c01be9a47db818ee5146f5ef8009b2ec99a38270f855e17b3a0c1a681a72fc1cdb6ea9eefa652e6e1aaebe056b10023100ef4c25bf48856933e2930d1cfd29da74ae67b9a03339dcca644f45d2f82090ac0f6d3e36b8c8720a5a2cb752e89976350302047c435bb50067306502307e9c23a4e3edb758cfc6d03a57ff6c457a4056f137fe2c92011e96e2b4c690dcd099778db7ae13dbae882b8a8f15b6ef0231009bf65353d49efe0ff22eaf9d51660cf64c45c56e87e1791ea9e86ead00f93d81c85927574d18b076e39f0f52f95adbbc0302047c435bb500683066023100819ec7d6f5cca774f4cea2b9886f3421ef46cbe3d98b462a4c33711eb0e41521b1c2d4d69130a8e7cdc73c12ec070d93023100a8e203e80c8d41cc93a9bc918e281311461a97a1662f23d95b22ad8dec3a934038c25ad86e45bca7cbb6797f9a5a54ff0302047c435bb500673065023006f7ab84476b934547019b766b53ea109768d79ca16f77552ad0351193ca9c96366cfa7518dd64951eb06f45139afd4c02310095e9f338a0bf1e799e085445570954b8fb261dfed48c665b171ddcb7e55af3d36b88887b86a1e77482d444b23821e7660302047c435bb500683066023100a0bd10076ea22cabfb00f6c5ddac96c8ee45225dc12964727b36439b36bc49cd8776d5da1e2c53ba8303f9512a9d3e12023100b78252d8dec1b6ee900e3b3257abb2dd907e7de2cc7cf68be675861cb723d4335076dfedf419fa90fa5e150bd016791d0302047c435bb500663064023054b7b8f980b0f609d2daf3d05ea56265cfd14edf3dbbfed761520c215cbccd265a63419116e22ed2dffa8213063448b0023042f0dd34d8a287c02cd8fd6a4d4c9f056c63fb5bb0bef532b9ab7636131983e1ff4791c467ac6bad718863f91735aa900302047c435bb5006830660231008ace27188c4cab27c31a5b7c28592a678a91145cadaa61540387e731a8e0665ef777bd51283dc5a05e314f55caea6843023100f172c56ae22ff0189d4e2da85f569d15ec24fb3b1c97f48972eec003c0d46328dc23dcb9f44f7c4ded1dde8cebfea37b0302047c435bb500683066023100eee1e6231caea93f16a28d0afc317555f7993167ed40f9ee921866fd35f81911d94d9ce92423015410a6f29ff95d095f023100b8239d80918c1cadba44d46d82ef8acddd796d504acb7e1596f86beb149c2d864991495da53f468b3606f5abdac0922e0302047c435bb500673065023100e26c6390688657d961961a6a56b6962c2c0ae15c334eb1eaafba6f0d7e160999ac381b2521e92967edca917c767618c0023019bae2f8674c6a9f1c8ba306da6d55f51f249e811baf9369af48446a4f76a0bde3dfa606b64931a78887f5d7e508ba210302047c435bb5006830660231009519a11aff0b4803149639c8271e0cbbf83efd2b71cbd620c083413ab0d6a5d81311fe5526b28d497b9fc604d014313b023100f4796b41de5f3bed27773e509b9550a3460f3282ce041463fa2b837edc1b4480afd74dfd1a6f6fa67686c66328b3b8530302047c435bb500683066023100e9e5016ef9b4eaf4f10328d61bb0dbaa62049b6d81886174e2e1fdc3a83d41eac50edba70a8d900e114aaa57c19d9d0e023100f7d375676ab7c3a2ef0653382497bcda5da56dba33738550ad99cd96f6c5d7fb69f18022c8277512814ed525ee69a9120302047c435bb500663064023027cb30a9f97bd145fc61e15239951376413b9888afe053db78b40f4aa295b71432c8ef6c3f904ab66693d6fb933b49bf02305da3deb225f52bd9ee28c1330c052227f11702d3d2b6f5e61e056b3b08e111d765486ca7958c8f7c688e3293f42a189b0302047c435bb50067306502310087f14a78c321e50ba39f1137994fb1ec71b7e4416d90a925920df0723f93e7ee60effc883bf537e05ae599b53f27b3dc02300a71ab470a702f87597a3d60fe5cc52c732c1b1af8d87aa081c1ddd90e7e39c38abbd6d28f7b6a1fbe92c8d35a99ed270302047c435bb500683066023100ee7d5da56e671a089a051d0b53104a95871d4de712b5b66f2e9198a02a1025ff3e0dcfccad4aa57d9008019ceee4842f0231008038edc5077eabbfc9f07b84fd66b4cdc9fe29d6a7afb31bd2a8a412c4719c9e55ab78f35b0e69f7baa3e1aa24db33c20302047c435bb5006730650230477cce616b888888238d15d7a08deec7c83320a2a97400e5388d6e4b110227e66307bf13fdf4950ef204dfc6661ef8ba023100a6e1e75027c4dd5a1a94c0ba3b8d4f7efdb3953e91e43f2064d6d500acbdf76881989469e721c88be7cc2cfb6e1e0a890302047c435bb500683066023100fdae9592d7abe65e1acab321d9ce826293654677a70a83f9c304e7dcaccbcc22e88e4f41c8b36cfcd35affda0ced8760023100ee4d8d480538b47d4e3dbe8be4b1fa842baa3a0921e9d90b6787dca40d7671441fd893995e914fd6d505c0b3a25168980302047c435bb5006830660231009d3c2638b151c763e1f1981154c66396d29fd4e54172200f50cce9c399422afc26cbce6a02000624ccfe8f6a0fd522b0023100896b276546afec080416d5642494247069e08ee7e6ea850d98f123cf545ec9ad3a832fe6540e95430f6d8ffbaf00dfdd0302047c435bb50066306402305a3498f7d083acbe12e2a9ea75cd17f8f4011d175087d61478f4a4961e6ab1e436d4dd2ccc4b89c91e1351263200d58c02301a6833961e96d34b36fdc195632e5e5b497831c8c163a006c73b8feb273bc00a738be152989b5e76856f6b50aeec458f0302047c435bb5006830660231009f73e46a61df90a3cd9dcf870ea0348441bfb17476591228486de9bbf7e70c3e5d80a7a435a47728788e31b84c37a1b302310096e6ed21a8ff3805c91343efd1dca397b00c691caedd0802d850f969884f6af7a001b5f76c39ba08ad59c3ea5fd5c48f0302047c435bb500683066023100f17519d75b6cfa43d1c382d31827fd4157695ae8dd141fd71fe8f7a1f4b169d00678ab371ccb2153f0725dcab3395c600231009739f1202d4c4441bf1510b6adaec8db3068d021f8744b2577e5b14799f500a58014f9cbeb8fff9757b1e0ab13ad83ba0302047c435bb500683066023100cbff601e824ec7bb002c1816704025c6462cba9df64c64ccb00b39a7bb0143c76c860f526f041b32b86ca41aae25279b0231009c416903605e5932a0c7e9d44318c1e6e831816c030c7592158c98280f9d905c1ef66e75569d1f9ceea3862c27d82c160302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b0c0d569d480aa68438e9e7b1713e5a3dd36c906cc3548d9ec7e5918ff8762079460eec549fea9e7c30bf90428e1fa2d02305195334b13d862bc20c400b546aaff43b11f1ebeb1044a22f84a07acfd9892fe8e18d83f72a1af9ee24e577973599e4d0302047c435bb5006630640230624895816b61ff72f0eeb510d6742d57de7f8eaa893b80c9dd97146d3537c6af7d6aa2681407c9523cf68b292863f75902306e7fcb3510ecaddfcb279b5218ea50e864c3fe56cac2dabfca4c33d62b3a6ae5cfce64b6433fbd356fbb5b614b9dfb4a0302047c435bb50068306602310081ee4b7f13ddc202cf858336591bb4d188265a25a3260e091b6cfea320d8cd6c87c614b4566601c9f3551b4ed7cbd7360231008427b8e2faff692f65787e8bbc0a4efcb328320adb7c8b666cec175696e8fe10d280f530abefbed30e7eec8778fc51b90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c46fc572dca5608e3d651583428e7ff72bca2c82d705e4eb0335b1aed83bc3a81bb7b3fb83bfe39aec8c18fafb5ded2a023100efae815059511895ea3f4f877f5e63708a4b7d2484f63555f4fba171a374e66fea38d5422c28e2c14e2cf3633c4625e70302047c435bb500673065023100a7ae6846257da7aa7fc5175a933f7068d5ee149bb1152a745579bc49d6478478c64168c69ae8b6b532b61b3f88ea29b102304a3be135e2535ad5e9cdadd202eb08da07bfe01055401994f98a19e76aa5e86ae36d62002503ed3aaf04ba216aea50cf0302047c435bb50067306502300f835b4851b1460d16f622b0a7153954b00bc71a5ac6f2080bb6d37e6b1f344ed464e08e9c395233bcd05c6d525911af0231008e83d5e09cf3ff36fb9a3438b7ce87f6d099d021a5200d63a401f21ffa7f418a844bc6d4c81357baa2ac837d8fc534d40302047c435bb500663064023076ff917103d3b0082f30c1adc4d32d4198a2bec8a9a9ac763d5ce99191a7f7756f122e1b0e9ced9124012c25d0e9310f0230416463ed77bb39565d519b73afc12667529701727c311809ed20387f40a0a17d6fc17af36bc98e3d8dd7490cc694bf390302047c435bb500683066023100926451013c34a2ab601b046752a90c830b0be113fbc5bf3cc41a44ccbf11c0eaf190f4023044622848193190be924b8a023100df8d71e97b908489dc7c168667a203b519fb9c107f8c7ec23256cdc2aaed44517180e05797f3592b738a9dc778f9ca560302047c435bb500683066023100e466facafa8b8eb203ff359d7c2773c5fdf16522291b35bbad82698442a0579cd2e3a8f6ec983081ba25bf9a3f3cd9b50231009cc11834f7c102bc6586192b097e768304426cb8d88adace3fe2f710511febee86681ee2698a321d12851323149115f50302047c435bb5006730650230036a51eda2700238a3ac7d2cc14851417b13eaacdf23a6a4cd74897db2892fc1d509d7793b914b90e64f42062a8270d3023100db988f156e1f4015250edb23f3e1a8fa76ad6942b9e2881ea138fca98a4cb5b9b01a37840eecb293d5d0c34c5c1866380302047c435bb500683066023100a85bfa2531f0c10521585a81cd20c4aff536c5d0db65e87c6a75fd9cf5a832ba80a10d8c1d8d4c3b28d10a2432fc6409023100c0a34aa98e24ebc19de07d5488632fb935318185ebdc5c3039eb017685178de0fc41f7c6e570573ce2e9b662e1a489000302047c435bb50067306502300b8c71411ab5ab827f06ca641e02f536bbff7bc25c578103c645dde7e0cff99da1fcd319dbd801dab8d60d70bb6a7d7d0231008042af503758b03edce6a6f49fe24dabe8e847e64d29145be73269810d6b1361b83e507baf176950410e6e3df74c33dd0302047c435bb50066306402303186f32c5e3cb5a267b2b5c880bfb7a01e3ae20624c64161f9573a27fc7607d81f3f64f1a242a3d0733239ffe074c2cd023027181c630035e1682b8fe1f5fa16225faaa7219c8066efb6e09954d15b56fd587e2840770714237847dd770e85e757d90302047c435bb500683066023100abb3dd7f946aa8e34417439dadd51a283c954512570fde642d28501bbf58005dff815e91b0d6fb17fb538c41dfaed0720231009d33b60ca06ea673f4b97209f64caf816e11e079a1b60c865f7fae8b072cc3820691b70ca8d21d981a45a0c5011633490302047c435bb50066306402300b7aba13fd62ea7b16a03f6ff70b0f78836c185c750bfc3a0737d2dbec57c6afa00cceab4dddaa4210ad7e4f6860d506023058f54c54fb95b924f77bf2b72256633c3be0797203b37be85ebdc642b5ab02837ba5454baf2b87ad999e5558419615bd0302047c435bb50066306402307329cc2cecf86c83e0c301d1d7dfbecf5ae5a66737b0ad4a7e952aee8fee4710b5f3502eb4c9463f0dd3933d47f7502b02301f5671527b74371bf5b82886f13d139241b0294fe9c2730c350d4221a3a662ac4e4a470cca3a415b1c950760fbe6a0090302047c435bb500683066023100eae28b35a1055d8d5f34658481dc2101939ed672cf43622f3251c58eeebb388c8914a6ca37d987f912a296664bcd3d250231009f1544e7bfc502896e1731c788362495bb5f40e1d3b6aa8c93833e1a2e050d5b17ab2730500f9b3c537423d173892f240302047c435bb500683066023100b0dbbd8ee59294d969f5ae96001a47a419122683de8bcece41cee14b62e96aa73ab6f615a7f429ae0283f73e58a0ea3f023100c3614c4029ba37e23f81b07b907f19cfc3a0e576ad03cd47a41fc1df2005fa7cf6497aa2a804390a00fe9558c00d62080302047c435bb500663064023059718dc0cb5c139918ea7f443bde9a4ddee3c7722b9ce01f5c80e2a0dfed8a59c93348e94578a37b093f878cbb42a17e02305a3544f1b37c6149f88ff0e22a96a21bc324001b47c22565dd6c8f6e7cf31262b896ee5aeae0c561ea64b36d5b6fd4270302047c435bb5006730650231009cb8d386dbda9f49bf79e138de4463064eadbd735446ddf804cf0b20ff0bcf433078fd1dca377f4191ce59c4e2f7d8580230097320928756d35d9462937211c3ba75faa3f3b3b32187dd70800df171a18c2d41dcc718afb20e9cecea07f56aa2b5800302047c435bb50068306602310082ce22ba467d44aaff2b8afec9f249445d6f1a33169ccd5e0e853d81b9e5e2443744f944670ee39e4a27effe17498e39023100ba3d0ae43f40397c567b492d5cfbe5aab9c4c54a3f524fbd7475bb5f7de8005c94b79988180db00486633c6469fda5920302047c435bb500683066023100f1991580c9fe1812a2dcf1210d9fb4350abf5f4880ca71a75c0ceebe3a39908bdbf9ba6dec7c35eaa7cb7d42d73dec5e02310097ae4e1502cf17fbbefd9073d36683e3c4e72cb89038951f128e51ddc48dbc72c049f582be74b0742a6a8a46257cdad30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c2dde4e76c32fa593277263c94847798b895c2c2670f0cb9a3a33800fedcd9b1c09a330fbf6c595d572194a5a68072ca023100b45330b3caeb0ed0a85789b866d4635ce6f5a8a38f5095b148c7994d52f0e42cddbab699e4979f4ac121dcd0fbda78e60302047c435bb500683066023100c788ee8f65b8314586918789f742271fc29c306a3fb4953d01f391017fcbd20d49ebd46d3586b4e783ddcf1bb48b6706023100c95ae10d6c83bbf6157ced308041e1c57535f3ebb400d9453cf94bcab1b9967a9c3676c6f5c46ba6ac261c2352c4251a0302047c435bb500683066023100fc778539259196bf3eb9513a89eb4ad302f54b64abab15c4d93cb3f0408045fdc82ed650f66b37e8f04ba6c670b4cfd30231009efdaa1fdc76cb950b59ab70abf9c7dd4ad0384fc662b39cca6101350b0d9930902ed647b7d8024500459ba7c841e5490302047c435bb500663064023016983c2b61bdf8415b1267abfd294af4ca2b61bd5802c54bed1265ac95dfe9dbc5614f45c637dc5e51f7dbfcc272ef6302300aef8face141ca21afc0a2429634daae198618231c7ba23100470a482fdbbfb66db9c48549c8b050481a37ecbeb556730302047c435bb50066306402300aeed88bab68464226a3f327d0b8f98d8a386791be556e281cde3d461dc71aa9aac033c63e4e8da58d7ef71f95477991023038afa06cd2c0d7cfb33121a8192913cdebfb8875960ad4f488d198da395e2755f5a0750c121f2d0d30ef03e8e58874320302047c435bb5006630640230258e52203b1a4dc7f4141b270832ae6a70ff88d2de573be35970bf69935091a68acdd4dec5045f3940468ba24b7d555902306de9d3602d42bb637f0e115e93c5004500afe0cfff46a4703ed4fafa14896b42a878d5af51424446cd183e3208c54b260302047c435bb500673065023013126b6555009176d83f1106dee24e84da6c74e6797d2af69a3cabfb565cca440ebec8c7cdd575d9785faa415824c08e02310089b18f37b6f8411ead457cb433ed2871a904182971903f10af2dfb284dc8572429ec41b06db26e283631f959ccaaba780302047c435bb50066306402300342c5f1726dcda8d35359795a88a6365a41d2185e02b0a1715c9296e8383b56b535d1a1df63236e6951e0727e1338e8023004ab5b318201c3a7e784512236398b9b2b64d46f7d64f18d6d9e3be9a2c3d05b74e5886f9cb5037939603b419cab69620302047c435bb500673065023100abcbed4285a65d60bd01dcf9a238c6d7ab7a797d1b0354368373bb0b6e37667bc8f764b306d45090f8af571e2dd6a838023042bc8d3c34de6bff3574acced3c52c419639919471efe41d0881116c83f17ab19b469115cbb2cb3faf4ee258c83c8bed0302047c435bb50066306402302a4a1541d610abd0a7bc01851324a3002ec88e2a850bc0b74885aad6186891a5a926f994d163e1ebcbf36e5fc260b7c202307856808390350f5d1806919ec2d873a845ccb6b590a8ba0fa89cb3a474b0c0e12e3b5d43ad8457eea378582768fe15260302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100adbf39581314e58cddcbf52a18c68b79e4b7bb1d7f5c2842fde91440757456305d948fd3c669a20df25dfea21a7ea33c023100b3e74e5617f6cc8a59d118849ce816dbfb6f38fcad76f60a67d73b7422fa44c98aa15a33420e70e175dbb27dbb9a684d0302047c435bb500673065023036af25a774ed33447a47cdae68c2e1d182d8c06974bb8f70c97c87379694940ca37d28d569f944539b580c86c3185afc023100f8a1957811bac0a0835693e4e2f4dcbaba6ededa88075081b9d8af72712bfad826304f13d4c5073b460b5edecb9c75830302047c435bb500673065023100e1a22e418e5acb3e49c3eed4fce940a5e407ab748746ea8b374109f1910b13d03ace320545392bf4baa7e65e7661e0f702302ad8e04ab1f59ad49fdf75230f5f59e655010b6803255017a0d16ed77575566b97e34fdbf28345f535ad84c0323bc0620302047c435bb5006730650230115f106c4057b64953a385de04ff6d3098455dc54ca46b2ef361c1756c0fd2dbddc2013754753fb827c845f96a65d1d4023100e3ca563b013c3d85323e42b3881a245e826aa89e7f1a4f7038db4aae892c4f58ed39c4991e43f87e4d1323f1fe23cc750302047c435bb500663064023063cdf44b8d9b115ba4c7017dab41945b71e42b8b52111797eca5499e2662aa27eff1cef52c0853c8a20a201e13e7e2b1023051f00dcf3bcedc197957028f78731f29e7645e358c3c07bde7bd85e59952bcec3b6545e7aab6db78d1486500982f58d70302047c435bb500673065023100823f25194726d1b0348a406b83f2c2c520ba41c24b1a5605be9a69dabb6c26f070cfbc1acb10e9cafab05ecc0c29b53702302b037545ebf5588d2072a99c3d9703d0f6c2bbf51d952f9a1df0ba5d480e7bd4c4c1bd7fc9e75fe5b8e53442bb90d8150302047c435bb500673065023100cdaa4607bad623db142c1c7c8b727b9f7f69017750688a59c7d1ba6d0903775d232eb2f3795aee9e479cfd0df0cd529d02302086192a584e39949d9c749785049f6cf9beac8092ee829d2e34d2e5e00a712666bf4d77cee2315ad4efb4ead3a00e7a0302047c435bb500673065023100e113b0a81e6c6cd3901cb7e919ca9539fd5088fdf7a453dbfa7bb2605e1add4c81398ac5d86053c1f771ebce6181d002023019b52d8d5e7c2b8c3d48316d9b9c8c14a5c7d71206cf99108041828674abb7309229340218021227867e54ea8bf371810302047c435bb50066306402303162cb5bfdb37c346fe5534c8fb442182c25f0051c2a86ea3e0c8ad2a3cedf54162a8021038546c225bb04c3472f363f0230793401c8cdee4fa3b6e9fa4231e178f1dfd2ecb5727bc0124dbe75b0d5d5eb051ba21d8929401f82966de48e719c4c580302047c435bb500683066023100d5966caf7bd5b0f874556d7ae96a2f3e88631615f1b2af69dc939f841c38aef2d0bb246145c49b72b6225a4124d4cca1023100a86fd1ffc95d5ada4ffaf0a214c3db11b426474691facb3e8b2c69e1b09e4989d80f4cca49a65cfe55b2c58544d642c80302047c435bb500683066023100c5a6ea0e7ab513c0c409dd0a12a01a99a66ec03a8c50578507b8ef6ea5c71f35142c3160dfb96a87f791f9e542330735023100f3175f53658b99ddd22810e626d4ca48da02801b7a686b3bb34c99d5ffec843a3f73fdcbea2a3d24884e981f33fa124e0302047c435bb50066306402303e50982cf5372da6b761891faa1e87f240ac971265b74bd18c50b3999b5210d8498880569e1dc3af09acdecbafa3b5d602304a781411ecd55f1165a679a7074c866b2812468e56dcf139ab651348179cb1c57d0d5e372eea904860ab97224d031c470302047c435bb500673065023100d9a5c560a2c6904078150485a70230801e037d27c6641506c38323d4c184223e05f239ecf5eef5b4d5c8fac9e7d1ff4e0230791fc1e5c097716b88ada8d5e0f2e0219de307037b5a76bf01653182474f1f55b0c5da761e66f519e51af62efb8bb4a40302047c435bb500673065023100997427f3a8e0c8ff394a2e509dc9ca0e7826940fa55a4952ea16c281c1e5ce3a7c621130399620c3d087d9e3b57addfd023075453352e2eb0aa5049a0c91985a29c4acca212718eb828ead2007a875eeea1d2ac83b52efa828a23516dcecd57208100302047c435bb500683066023100e4d00f417d8f3a3f6a52ebc3784f12bbd9dc216b9846c45de8795cf2b417de21ad1a23314f12c4a75331ce6628d2c427023100ebd7943d44bd0adec891bd47e2f2499ca8a4e99db3762d1e7074ab8a3e23940e0db1589a9fa2750cd1417eb0dc2665c00302047c435bb500673065023005b91b1861919a22d284fa156fb9c2ed453551ffd048930b0b5b449f5a4857d5ff849e96b7537c2f5b9c23ee58d19fbb023100f6283365426c59f8b416e8030730069bdb19116b0c36e41ca632989a5d4ca03c81f4ce325866319f8a4de5dfddeea15c0302047c435bb5006830660231009a87742a1d3e970c23222a45229674aa3c8b8e8a4ef7aa1d7b28261d1218ac86a82fee2f0e13addd08f8f3867c7ac0d3023100ec401dfb411ab365cce2ed0a9971d4597bb607c57031e5801a638d6ac78ee3343c8315ac6dcbb54a829c733cc52753930302047c435bb500673065023100bd7a897c5af7e8c5c36f106302b2422cf8e83a55aa31d1ef10dde1f5fcdf73ab23e144ac6c1f42b7169f76dfb834e92502306ab3f62f5971f8ddc6d3c82d9cd17b7cf819bf0461d4500150b747fd1bf8d00c7c643c0bd62df186dd74379b046e0ec80302047c435bb500683066023100d55abd0fda970d3a752b673258b17a84aea7a880c0a8ee739afff3e85f48c198182caf889104ac14a5e91a6bf36b0bee023100ee4b4a718968cb8f61fb1c2b9b5da5ad0c3c17d7a6d0e2e12e3dc42ad98f9932999b32e5bf5ec57bac0db2f5c3f2ee8c0302047c435bb500683066023100861658b566f4160df3e02810506b849fa65a06fbc0f9d7a99488b2e38bcab55c4a0e67c7b52242e7c47dfd6e8c58e440023100985334b1ff1bb3e0222423c7235f51878c952c1631714f0a8f95dff5e4bf23bf774862c185da25e67561b9a7951af3b40302047c435bb500673065023067e3c4e9e142953c265e9a32c8ba4d65764eb6ed72f4098acbd22dc43e7972d45ad1f6625441ba1965ac659b84562d3b0231008c1c6136b0ca72d9cb2ab303b7122781af78d19d25ef786d561c1cd36169dbc46f0fae17ac28191bf315e4e0204147c50302047c435bb500673065023100a66c3bfce1cebe9e5e4a42bc1584895de09db3b1b6d2abe2fc843ec5ed0d8a20ce1632fd180aa6b011134916725a385702300cfc8dfa9ebcd81421f3da92ff1e8bcdaf3059767bd94d66121d3e3f10a845656e8126e31a2fa5e5898d3625a50504000302047c435bb500673065023100de2444a37282f177d4ad2bb0543e69a3cc04da1a6cc8807385249879a7b0ed8aa00c4c5529f858e631f959976624eea6023007791570c1041d44d93749b10d0a10067551a2f3c9fe4198d63f71b39cf472e84b22bcd491c3d638a7899a967a7b39bc0302047c435bb50067306502306ce99f1b8daa27082e5a8fb0445f36f67c5b9e93f88e0bf102355a782a353917ac4fc5ce54da426ce4d7a37cfa0a048a023100bb645effed4cd9ff0ed43ad91ca64b07d98a13b3f21228ecd127aa0166f8ffbdf31f0dac0aa5498bc8a157bc5dbb9bd70302047c435bb500673065023100f674d9521080331d317baa2e2d0bbe18dbafc018c31e9090e512052fd043654cf51352e038ec514f9e5a95f0b07e4e8502301a4f96feb3bde6d60e46dc4d77479ecd0f902eefd3022d5e1478ad0fcc7d29fc14d891cf9828a8416ff6dfc9bdfc44b00302047c435bb5006730650230081088c7c6288ae0f117283911ef54c9c60b092fe402abe8e3783965ed2f9ce8d5dfec289b8745ebac9eecf582753660023100c740f0c0bb8133cdfc9a1407a0be95d2be0ebf981f96eb7ae6b7a02edf80a02f7cb035215b9e9d4037eaca56785cdb750302047c435bb50067306502306b7357de88452fbb8111bbbe74ea3691f10d99064cc7dcd912f7c249376a4ce15ea18dac27421517e48a1a3178eba44e023100d7c10fc368e7696bd735ef5ae75d8154158ecb9acf3df4e221a4d4fa130b5e5b653277cae554078f6c4b4bfb081892c40302047c435bb50066306402300db84b37668f638c7d964e6b17d8d3d80c0c27dca533b2e360fca030a7f0be9243b65776d3c144774ef0b1b29c4848b4023042677fb01f1727dc3d20b758843156c509ad1fd11eeb09bb4b890708f10c3a7b8fa9622e1c0cbedca2fa1e0c702fc3b60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305c0519c1b94145322c7e310567701b2602bccc92f548b6a6e15e558cd110f579825249a6a51e68bb87b3f705b0d00034023100831fe55f4b1916133f3db7fb5e930006d0146822808d459e108f474ece1d10360c5ff4e9213d1e3dfbef89246f32e1f80302047c435bb5006630640230705ef75099fa833c87ccd3f2e66e5563b3e28727f7a53e1337e93e61f08534161266daa348f4a63941cf98796e3d1a8d0230730307249fbc3523ab6ddad70b4e487851ef26bc889bd909d2c2f642e4db1e6831274d24f0152aceba5b7df33d4622450302047c435bb500683066023100a898b87fd56e6e31815c58df7fb24fb735dd6c56e82936a4ef593d32f89cb75d6aa407f2deec5970f41242183164b8c3023100e98c7b3a19614ab11db1522185883d5d033266eab4bc9e7553c6af8cc5878980d360a5a3ba3a61e4407675366c2cd4f50302047c435bb500683066023100adc3f1a3489a2a6237a8214cd04cabd0a44fb48af4f53701088460676236627f88d67e5350fc7dc6db91c7c25190054d023100e17687d889b8e8226cf10449a9cd991065ca6eb1909d880db058bb7b4e43ea4c4e5e36108d3011f70c9cb819afb703080302047c435bb500683066023100ea633d3c61cb4c029d9c6cc91fcd84c3e47aa28db037d6d76b08a6c422631e7601dbc8cf721fab5203b62c39aa774a00023100df176ef3f735f69e7f3811117f0145cacdb53ed2e9e1f0a2b788f9ff37f512d50d4f531fc89cb663e5f8d4766b2f76080302047c435bb5006730650230336e529888328a1cc9e0c9acc8da90d0258a9838d5a1e5e355e88013191a1efff6901b678cc67cf2cc0cfa95cca87baa023100d85fd67d67e29d04970b556e159272ee3af5c94de156c65baff0aba1312f6736c2e768537c63731e2beaf27882c0207c0302047c435bb500683066023100a68eb9d90ec713df15c6f716e13c13fe176c9003a3dd0a0289d744417dfdccdb510e87b3bae5fba7e29bd4c96c85a065023100feb40fcec079ee07b865b5e6831e8f88e13d1aca6d4c5a7c729b8f05ae14fbef048be8a166f13df68573c2e2722880240302047c435bb500683066023100b64992e183dfeb40de6ea5fbbf5ed11e1bd73c754931ee26a65fe6ca22e78e7a007d0d7e6fa624bbfc62ee544db18c60023100e9d49ff1e6318100c35d417d867800f4047c915e1957409d71c53a31793881a1e48c1deaaf3b599e88ab8e105af8dfaa0302047c435bb50067306502304112529ad7edb10cef7a7d2827aa7dd60b255e5700a0d2ce3025ed804f24c49a16d3122bc7f466ff42cd612f7c5f739b023100a423ecacd1766050e72a55bf7bdbe16f678f834ddd97757b191a23f465fb6e4754432ae9d37aa22644c1b90e470ee85f0302047c435bb5006630640230664dcfea29a38eab37f1627d8ae80000a1690b4b27506a354f1c55aab7cee83d3d339ca081a695166b86e14fc9857369023046fb7bbde400ded78a8a0796d7894553bc0facfb330dfcd3fe87ffed925aa904bbabf9b2eddd34962f2c8720bbfb4dff0302047c435bb500683066023100afab3a0b10b4f8c5605ddbdd4c1b518e4cb7b3dc0bcb1256a66513e453e1187d34e7d8f45440276b7639635fcd34c76b02310099d6ccf22db75924f5a8859719c48fffc9f4cb6aacf0693c8a26ef10738ebf83bd7e36662ccf540f7834de55124e37570302047c435bb500673065023100a750bbf57df0e49bdd2f0eb9fd809267fdaa4891781bf6723963d829dbef3314f780ecc3f26c88d4dd5c3c02173948cf02307ea74bfbfec1455e4ff5fd7afda3f5a0d92974b5253b8183845d204d8e769e5ce8d27db9c154dcb1ddf83489eaad3d0d0302047c435bb500673065023100ffaf55b24f51f61134725b9fec4ecebac4aa113a87ee58cc75983aff43e76c6917142f9bf1ef9146baf5850c751845fd02303340f37b02c9f007aff389a54fe7dddc26deccc6c57a31b52ecefd06d569af1bbc5dc910055e5bd4fbc839473246a49e0302047c435bb500683066023100b2fa2ee78ddc8fa06ba32ef171dd041924b566039f7c4a2b5ff3753ecdae881ad758a85cb2f94aaff134684c27bfde6e023100d3bb529ee001e8708fe1b7d555f27e2a5db060988c0535d796798825e9f2f16dcb0a34a1dec538913dbf0c9e9c0f3bb80302047c435bb50066306402304d0213368dc38438594c43569b81574590b8a8d1dc95517ae01aa370955b1400f378187bb6e6537d0cdb34e3b09d0ffa0230362ff34cefe1cddf4aa1c2cae7d5eba1c56a5620b8ac1e5fe4df22c309d212ba21bafa8fa9ae5e9b6a11bfa2afb243b80302047c435bb50066306402306a84d6384a8bdb80f9b3b41f1530a6316951bcca702e176cb48b7e47146adf33ff7470bc38088caa5d9b3dc1b72ad051023028981001b795ea1131b168a16bee1005551c334e628c283926d3d8750464824ce8e2cd56023c3ed5b401b4ac3856bc880302047c435bb500673065023078f0af654a83660be043fd7e373efb9bfb2829dfee28ed9c1a4cd6ebe349647afcb44124557eda6702da814a59e8c3ea02310098059515a0cba552f33e6cee8699ab5e9f663e7d0be46ac689d81b284f022321c0376c3c0449d8e918637248dd69058b0302047c435bb500673065023100dd4da2a61c849aa090c2d9b83e09062052eaa9d8ddc034c15b517fd30796f867c181853ccd0b6f607a146c396f32fada023057ceefb60cbc72cfc21b7c54c3caefe4e9dc1577e433026ca7f2a30dad4b4b969158c59451cc150bd73d9010f93774030302047c435bb50067306502303967292f3719195a4a0087950f7de0f495d6b24aa81c50787a52ab6ea7358c7fd9cd133b7bbf5d0d332d174cd24c9fd6023100c28c34cf1b648c2ade1722b54a12ed34856991b42074d1924e71163c3c904e00923f2aeddf13fe1c93b0330db65317120302047c435bb50066306402304612e71bc1757e215b46e2d6a526ba656e13c7b82c8fe4600166137ff71a424c19b56e6bf3f23049dddb03397940e205023058310cc88269ee13ef559968ddf0499dfe5d2ce247253a720efd9622de50251e43098aa673bd8b125d933e102fcdd73f0302047c435bb50067306502302cc401d1cbc8c09a4001b1ed6d9cd207283ecdd9014bc0f23d06594faa8c2647bbceeaf892b477e587fb98d5c849149c023100d4aacd4d34d13e3c8d6f22df143990419a1f4b36ec1c2198a6a90aa9ae76ec76fa7fc1b3dc895a74b2fe02acc5db32510302047c435bb500683066023100a4e5ab7a1743fadb817d56fae4786919caa60b28337f8e681d1cd5b3ee3153a00d0d69a6c83bc3b24e89bdae88fa1d3002310084066c51b13635ab93f708b8d993f99b034b6bdb9abac0c1c84efb9eb80fb8443309f828e21892089c42c3424c6d3b280302047c435bb500673065023100f0623549b893ac31f1d9033f15c3a39950f630a8ba444b010c75981aacc878625241173afdde104c82f62fb1aec1fedb0230672b32ff459de6e7e1b1060fb8591913d024460e2e04803cf62d49b2ceb502b48402de133d7a1dcd8e2e5341d4c8aa4e0302047c435bb500663064023003c3625a520303a962ee9a17e021c3758d8318c5b78e6cdf322ce6f9dbbb23bf7259685b1f321525dd1f1e3e7c2ef19b02301542d1511729761e8dfa6f4576cd0bfb188e14772a61ff1302b8abc5107481b6cec4b0af6a0b205659441f470d8d7dcf0302047c435bb500663064023069be3c4231e770c961b2a994d4904ba8971d3b3a89ce20f3b452d7791d969b8588b938bfce257e65ab03d86917427dc0023051b859bc985646cb19af40d90e098945ad6c52e4791792aa5a65561abba3d36e4c660ca246b077551b57fbffa4fc0cd20302047c435bb500663064023029d95ae47e80c6bdb5279487a13f295fea4f18e0e402f6c2704abc3e9b3b169d179e2e44bb0d479d24fd20cbb9556240023073784fbb86a57812b710283650916d9590f7ffa05cf1496d374f4db812a782bc49f70c63ecf9cdf4274730a7ae855e640302047c435bb500683066023100d8081e86204dc6cbda7060aacd8a6fe8311928dbdb1700988eaf42febc7b6b5477c4705ec2f1afd9549a7dd8d01757fd02310084c8f60e29e0ccd794cb46da8291371de22d4bdd48026f5abc29461daeac2ddca35005c4163fbce2252956560c93cdf10302047c435bb500673065023100abc3a1ad9ba451e742b63cf912ec50eef1a195a3e61fe9340672e88c585990eda6d2ea426a9a4ce94032e75e27e8e7b40230558afb23cda25a619ef0693ca5556849e25738214c4930628d339c71741778f4663adea8fa5a9b2b104669210a4addc30302047c435bb50066306402301448e2b68715770382df50314723e2d76c16cad2c0608a61470b23aaebd1f76efdf4bf2bdca3a7d0efb982e6b6d687ca02307f7607ec163f363f3f399e8ffcc4634d48f2f0bbeb02192938896dedcd0e7378bf2f224d439862063e794848e763b8b90302047c435bb500673065023100c490f02e0e71a118e319ecca4ea2631e24223e13072b03e17ac96dfc3269034794b3ed8b958cc33d2160f1a713cec5b80230402453d6b208adc5c8de6ac461a5e578688c5cee022c975a1823ea4a52b85d798938f77f543c702871d26fca601754780302047c435bb50067306502310086b306df12a0c1b2992b10c5828833c5ada1755e845678fe6df29339db39f78f60c9569d5cdf7f2d19acbcb100c0edb9023002a593aff44f239e53e5b2678dff92c0af58260b065056d5f14221f87157509f22e91c5d452ddcb4ff696fb377ca12540302047c435bb500683066023100fc71ebc4caf4392efb41a3c687842bbb053cf704757166b1493d4a38d18c941cab92a34fcf8b895dd2d4f8f54427da79023100f7b7c362b0e1b23ba72a758fa81297c011f1ff01133b1c616eec90beab1521b9b2001ce117b28db5eb9af9db3a553f260302047c435bb50066306402304a1aed0a4bae57ebb6a44240dd729146719eae054a5535f97df374c4aa4df3e0ef8c77528b8879297c5f57adf06bd198023019ab2d43d373150093caf1b80645961550316d6955893594289249b3018369580d0fd8ded0396a66c6d51b941c77318a0302047c435bb500673065023100fef7915304d914a8798c877b9c451491487b329644762e4771d49024240c11762ff27cebc56b826472fbf3880f9247b902302929a9455090718b0f9f2b1713cf4cd2b394e0d079addbd78ad9d1cb0ab4864a4bd1f4ef6dc79ae56c0c7c95cfc6b2b60302047c435bb500683066023100fdaf0f6132912455c6578acae88573877887635d14b16e729be46f40e09a91981d4765ae15be90e35cd693f990c60802023100cbc6c493abc654c83a8c8861de71610e3aaf45e8bb2552be98365d1ab24f7beb78ea8a872a711b7ecc0ae3d5b703e0780302047c435bb500663064023036524664fc83f23d1bffaaa35a6686ba2b9fc682de403992f1fb64d4607d81441f8db0570444a2d71a3b7562c1f55fa702303820abcce16a2213fa0e9e40c50e38eaa27965dcb195b6f4eb6b93cfa65c5169743e08d18475955650d8b97408ac03a00302047c435bb5006830660231008224453ed0ff30c0c388331d43c6ea2fc8f2f9a02d660acd01e04d2cef96b0b2c14947a37650aea8e58e36efd2bed29b023100c03f7d6bc541b90a0231690922e522b27a7d87acb775bac1568f85fcf550d21bc10c4e520a41a3d144d5969f5d39767d0302047c435bb500683066023100d1ae07a01263aca99736d214b2a05beb6a1a39d97ddd58d37f919956b7bbfd3e4f9be603e8fd40f4cd0b1b3f90952a45023100a48ddd2fabce1444ab21b789a5ce6c01532f2491ba814eade5fffe64638d2a19513082e1381b31a306802aa3f6306e570302047c435bb50067306502304d6fee8afb6292679ba0df562132dcd3112bf3df21c4a8068e84c04a605a6924b0d2c4a45720fd4c627016e17e1ce718023100c447e240bdd753ac71aa735a38d260a4c5e03884d5b9395ecbe1e0d0beae5e2df7b3f1d7507a14df373684c4e2d6630d0302047c435bb500673065023100bbb1ff9e157ecf4eb00800c67bb87d8b2c960a293b4264cc02b80d0755134486e972d54951ab6f43a06c30683be6f1860230400ccea1e2ca2fe62df3aca859a8f4d5379c9b8620d011cc1b8bb8b203ad4c05a9ebaca6b14d22f83772fcbae13cd3720302047c435bb50067306502301229715029a41929d6c9aadc88721f6b436751f4a6976845b9acb031aa28c584beac0a7827772da2d8ee7cef88b0683c023100ebddaed99aa51ecfc63326c8456d27f93487e164895b0b7a7814b9a6e1d2c8c9497a17c98095042b50bdec033c3cc3040302047c435bb500673065023069ce40fd1dc42876048770b6d49b70205c5ed856d34340253038ca931d17ec52698eeef24a2e1e912dde28deb386216b023100ac46549ea8260f53ad40b28b59a0e551367c776f50ad86349f697cc9f637a607878af001c283f561b8c28ec01daddfc10302047c435bb500673065023059ba66ded33b7480436ddce3b5df9c74ac1575660ea84132e5143d22b7f650b86a3f3f96edc20b774d4e42f0b65b583c023100c1e6d1cb85fd8b4777afbb699017eeb494fae19ff5a2ef3e62e32fe271adf9f04238b29410bc5c3c126daf7d17b33cae0302047c435bb50066306402301b2708efea08f53261b3bcf5478c59ab023d92eb4df9662c338059ef6398c69e60b6d034fe26263676d95ccadd15a0eb023046ba13713232908a6b682623ce816dc5b17ad2ec5f7c61b7e64d2a28d572e35a24c0c9d330997c547c71c3fa28c497db0302047c435bb500673065023079cd660176a83677bad471ccaa86f3ba851226df52505e73dd6445020f7c9c970dc256eeb16b7f78dd521163eb857a9a023100fcfbb6ea825f683cae101e08477719275345e3e8200eb9ba3ed5775f60291fc3eaa9c75398636e866c14155e7a6b969b0302047c435bb500673065023100c9f803c4ca3b096c04a5d82365cbf76f994992a0a34364da40621051ee874819b241e7513bc9826042f815acdb50b59102303493f62aafdf46c163b0ee10ad441d8463f17a994ae10358f196a1c7e91e13f8063f12e7c36a723978d92387ac66fb570302047c435bb500673065023100bb729d3a854682188127be096dc8fa93fc01e4b5efdbd2442dede1e29be5b7c6b462a449c1e276ce84a9e1b1223ac391023029a5a215b7af3d4105dd06076e392cfa987390ef0eddb90ce6fd70ce70a6d52767cc5dc9f44f90272debf4a4be2e62470302047c435bb50067306502300e4f05efca4a20696be7961beeb3d0acc84ce9910cde055d59386fd9b65bf52cfdbbf76f85ffc0cb01dc6abf8d327a87023100eaf9d231185f0e2dfe4f680894d3b8bf57afe033628523bd8cdb96c155fe6be503af6e8194c26728b3767f78dc7f1a960302047c435bb500683066023100b1506a77408f95e12619b89fdab780966425315a0ec702e4797c21faf29bb77ec7facde2a053b611b06919ee6372107902310095a9c91613a9756f8e81ea45b6d43705300130aea8193bac5b8c0dce511b01f702fcb85ee1033021c73b1c4881df1b150302047c435bb500683066023100c713410a5cceef9bdfb098b3e718b97370798bddf44981c8645b60822a91e25f8b630ae575b0b3471351abc5832fd5fd023100dad12101b6c6e58f4e888baf75832297812b9ca025b9541e60688a488c9e57b83bf13b736bc28ecb096748be4af8b9c10302047c435bb50066306402300f5113fd4b188eeadcbf20c9a06d31b9cdca2b2edde50a94caa471de3aac45676ac0ab71a8d69849653bfef0d90bec2002302fd73075864dba14d0e00cd25d0837a5fccadd0e54cfa6a1dc293d6ef486b7f850ee07473b46b76ed5cbb31cd43ccf090302047c435bb5006730650230306edf67f828f0e0aa04d4f13f1528632dcddc9b911d0aa1eef3985cc0045f4749172875a2923865966a91cedbf3c196023100b7204b6a1ad06de5390ffb3afbe18440fc7fc5190393600573ccec30254accbe9dca27f7b5590d23c889a7b989238db30302047c435bb500673065023100ed80d6872bef42b0d926de41348d7c004410de93c5b76c87fce0ffbf09567d0f61db99f13e5856b03818938b4748a88d0230409c8c87fec035be5baf3bf649680f53fbfdce9a55db9f8e9aea65b5eb2dd7704e105b80b44b7c7e8eb440be9b9457cf0302047c435bb50067306502307fb52cface5ba6771a58e8b36a20efd7a3349c1dc40e4fca3879cd22e8421c2dbdc85779db7ac24f572b520ab46dd620023100d65d59fc96a2bf41b7583a7cc0f04efe607e7e8d141b80f88d37cc950089c8d52e3cee8e2ecf4e5e147f272d658caf420302047c435bb5006730650230099ee54b92647b67b99cc631710ba053c8aae24c572eb10bb3ce7debc4995e446cd25c1011eacfa9ce1b62d2a2d5925d023100ce738dff140710aeb11d3df5e6799192b56e3904c0d2cb161e76738a2ae9a8a5c3c9f7ee95f99d5b241f850c96be45e10302047c435bb5006730650231009b0fef03f04ddc328e850e6755ca461899c8aadfc14000c7bb0f95236735bdd03a63a1d19b6a888fe720b8fb1ee0cc0f0230469a3795369ae5afa9cb06c73b8a171bdcc16d74b06e669694cef70c94131085e65f30c530977f9b3974df5bf88a16120302047c435bb5006630640230793457a0cfd1ec92af572dddab5b56f112d12be51a14e5308d496bc191e4c848a3f708283649f4c35a19d9710d33fda90230774a49400f05448e0388f403dc53280b3de5ea8e022a664294b8fc9b85b7f92f586119ba7fb49ce96cbe842ae843ce410302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300287ecef180389eccbec759d2d2e76d2e402ddb8d4e945903fbdd91de88f60dfcc7271b23441db00d0b64edc946e1207023100e27e6df1134ebc73683f87a09c2ee79efb1106478b9a271cf597e261cc5df7381f990de598e9f53558e793639b3d95360302047c435bb50067306502301abc0078bd7f6ab9010b29fa040af14c10def4375278894de6b0d9f7911cc077e732969b70bd205ff255d87e05428d210231009995beb600bb2828669c669f60cbb2f38a4aba895c7e23b7a2c61c39b9f1633c39238920ed9215553acb96179cc3ce690302047c435bb500673065023100a871b1cca41449df0789cc928df34030fc7fc45fab5860fc2139307f7e89dfa1e70a2999a769331b55ab478f84a7af7702303eab1c933ad7e9a1896d3eb8f970f421523b79cb0a737e806777c877a31f3d97ee279d72472c7b5e8cd41dcdef83948a0302047c435bb5006630640230751099b79ab47d196903b8fd1f21e16d5dc23d5972660d88f9de6b689b777da584977ed6dbcd727471c8640cf25c71a3023007c7042cb8d2eee13880819e2645b03a7898d485dbc8ec80e0b44a5fc1ba47bf508c4d9fbb3e5c87e58b7f705eff7a0d0302047c435bb50067306502307aba8a36c688d838119a7e83701b5220b55430dfe9759cb4b9ba1c3aeaf49dd0ba74baa2e270caeca40e2533b6ad72c4023100c2b84024622e39cf1b79d7275f3f86a8cc7735575c017105fb3e194abcf42e38271179bf976fb9dcfed71abd92bb36750302047c435bb50067306502305a529e873043b5955d1b4e4b1fe6f69558cf24c421f4dd43364d8e8a7e7be39d93c8161a85b37a2293efedc6222a8f4a023100c8983509a10d708f042de87277455d38e23116c1ad92f95a2263a08751ab2e98522ce149816ab054b2ff2d8e47fa2cc50302047c435bb5006830660231009f6b57174868ddf5c5c6cf1d41e16c8838e67e78c561829b30083c388bdece6b54939648044cea1f2230e26b476e55bd023100b4f840b161a841cd7b17343a80e2876c88fc4ae7a606209eb4401123b725f08c97b2269570a3d3405ed5e5d05436fe550302047c435bb5006830660231008a2e6458aa1a1728449f4d7d4034d477e159046665784c55541f88a6979e6a60a730a53ad17a77686843e22208056df2023100fe072d306538e1cb20bb6b6c44d7858d478b617ac0195025b572c8a2ea3fcd42f24207a929f06349f4740f13e04daf390302047c435bb500683066023100b0d641ec88e7babc5a72f3597a3bc4654f4f1b5f4dfd24d70ef2a7ccbe1a2424f68ef451942174556a04273c3be04f57023100e9ab11b36a5ff72afcae39c53c53cf2f52c83de8e60f5f346ae1eb257003db5aab911fbafc304a6c9e2bebf7464957770302047c435bb500673065023100b5d807a3312f84c010057e1e3921de0f1b848c3be0f71bd812aa6bb80e71f6e87ac2e48b623ce7cacb3a53a07631414702300ce3af35ace9f68211dfd7a0cf2f914b1b168b9be867b7def5b5af24d4a2679952b5347115ca9da73fbdac9b5cac95d60302047c435bb500673065023100c39bc2576449adc50a6f0ff8692c989dc9b584d5f4ce9f9fbbec1b719883dcb55f9a0518a7ef02cf841aae093ec23dc3023000b4911acf723d09fb3cbae5a0936ce38cd77e771307d1d1f4da77bd79cff4f765955ba492fd72916fef950bd03824780302047c435bb5006830660231009306432875b3aa772a98e8988f1cedc5edb92c4f7a1e195ab10ef68c1212669f9943244af95b093b76c4cf942f5ed22d023100e718241fd151f5c011c4cb18225dc04caea87f68e187bb88e6547e01aa781adef547221a337f6b4b54d8050dd436ca2f0302047c435bb500683066023100c6f1a338c5cdf2e18070cdf0ecd0025aaf33cc485b677c1c70d1ec180670921bb2be14a3e3f81a5d01380e0989efbdc3023100c1350bd94452298db33cfc7261a06a271f21a39166e2a953ab2d90592e39fe29f3dafe9688f481cc21e8e759bedc974d0302047c435bb500673065023066701cf7744ae7223d0ded85e3538569ecd8703130ebfadcb35eb4bcb3c50baeb7387d7f1830523c9d9dd1a8cf5cf1b20231008025bced0914874dbfa16acad9a0088f5d083f42954a5b9a142223e7cf39e3a13ef025aeb0834019ac737bcc28a123540302047c435bb500673065023100bc3c053ac8d948b4f28543174ed6cad18a122b5575dc7bc2dbbb86b1c1eee12efb0c3cd9deddba6b2c87142976324d30023067551e8ddf4a5f48ca27dd47c697435c3be999af8f973fe78922bcc18ee4cbaf035c2b8948182f4ab4e3663ea7432c830302047c435bb5006630640230149cf367d95520afe6e2621ed604028d889d3b5cd01e8f5914bd284ecfaa9d3904e3747cda7a5739e9691ae253c85db502304716117cbac91bb26d79589d6ff6fa2634d2c461d710ce3ae9f8b68b42770a72a86c77011f4ad44f902f13214eb67f7c0302047c435bb50066306402307b788f9cacc5eb1e6c69184cf8b3f6f6afa34053e18d58295ebe51eb09dbfbb261fb4ea5becbe714b79465caebd87273023036335bbeb4196597265b2364d293b89d7d61e5bb09b1fd98b2eea8f2a2c40ba5bcad026fa57bba17c3727668b1fb436d0302047c435bb50068306602310094f3a3d366db905ff81c69ce8805ef914f6920abc5051ecffb016cd6235ffd95469c001bd7fb611654b528ea48ba9432023100b32345a7a3861a8fdb2a54fbf80a36e5c78b8039a08fd350671ffdf22b074b8b2d7dc3fe56c2b1fedbc281bf4b5f477f0302047c435bb500673065023100d39dd77d7a8fa8196e6b1441961a22add499b069d7f4d74ce3bb7861799a61810e0ecf0b57d295162b71541cc17c6c09023034c17161814c25769b3a2a16271fcbb0b68520ca2d6f3cc839612a97c3ffa27154ff477d5c6c3a7e842050a83191dfb60302047c435bb500673065023100cd99f2197092208d796e29c140d6eef01107cd08e318818d0cc65e3a3fb40b17f74e3248936b6ca14b90b3bdacbeb09202306da4517b70e357fb56e9637c0a80c956a9d2b8867d6401c0a75bb687dbd38f71f465d59e194fa7e0dfc9a0d159daac8e0302047c435bb500673065023100bd46fe98b8194d2d0b5a0187eeabe29f691374dbf224c2c31bf0255d50a9587caa96e11f09084feb90ebd56fef18d1a902304964609b2adfc1618072edfbf4099354ec9cf68562b632d3cf2327a5f43d2dd5bdf037dacbd6dd8e5fb815fd6442b7650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230279373f72a5918c500bce88def77dcb0f0a9265c4c6187fc3bd3fc5504d74ca75f467179f791d70a6f65a3bda4765ca60230606a399b37f01d54dd6749c89b17d7dc09233218e0e5167868fd97817c2ea3f3a5e1456335cc3d3418cc13ec69e480980302047c435bb500683066023100fda3d5eaed5a869faf49e94fd2fa3a6c437bfaa8e39e2e1e625e1e3c2a657b707ff3b9a404d0b848f58d5fb5e396e099023100d698378a5a6848ef981cfa5aa22d8abba06f867191db5e563d57369c54fce87aa6d0ca4213b3c7967d240a2ad8b905000302047c435bb50067306502305caf9be33010a2bbc6cd355752fbfc5b86db786d84e7ab54da2557d924602180506dc624838cb8686c654914843f118a023100854774600d2bd88efa1c3a1b40c08e215da9aabad115f17c17252af5379291866d228dcd7233d12856629a0a7f354fa70302047c435bb50067306502303c2f3345a586c2ae48dcce061288c8f3de970d14d7910c5bf1f79b3af7abeb18b762d25cb75aec9bfa679d70d85f8d200231009abe6fe3912937422e0f3d358f458a1b667b9f7349639ee4345830037920b37e19ea7cdf1fe4e3c0fc9ea538cc6b681d0302047c435bb5006730650231009efad242d5408e006157140f921875cc7d8310f5efb8f3703ff1f7a05701327123d4b3f273f2c5ac2f012702978969db02307697b3dceda75532f41cd2f0fcfcfc242da6d1a81524945b1ed68d42b054b0cffcea38724989a2d20f66bbf0ff0841ec0302047c435bb500673065023100db546dc8c21bc0131f4a5bcd3f0024bdd425777facd36b3d77fa0ebe3051c18403f613119af02b7436638ee59bcc498c02301d781d4cb3d6026a7a1f8796b890fbfa13de35bad048c81e8923e616a7ed05c2da87efe05c9bb370da430abcb76d64d50302047c435bb500683066023100e23557cd0eec1942c7f94bcae503f4d6f5364bcbec6fa7149ea80f3b1a0b1ecf5774a9856600f2e93e6b9a9329de6988023100c336b364d28ef5781a897b81c7544617f3d23d3c8631f9683d7daad74bfe1802c3feb55146d8ac9acdf74b1407e700830302047c435bb50066306402301f143273496ed05b34635f7c7da8d09820b4133d0f29aeb8369b13c2faff037bbd78b61f5c489495960e82f7b0e74d6702304f45a6feb308c99a27c0e116660905de897f84c4afc1c6ff31641327a7eee206b311367efd70fcaca2b3f311cfdcea7f0302047c435bb50066306402305e37e0df6279272106f100a3248e046095e32a16efbed2d9267026b43cf380c1c4bc6bab5981f51dfcf14c879627240602303aff6045ad48ddf557a0dad66f06869685fc4866499b3185adefbedc53814885c2fce50fbc86a3e1b4a400975a59fdac0302047c435bb500663064023019073821ebc8aadc007e9bb6d342a4534a8b9bc9b6b8b1c46117002715193b867041b06913879c1faf2d48215461991a0230448f3c20f5090e9a6dc4bef4c0bbc3d660225e146669e0a3af8a1fba45d2aa5a8a5e5e749a03cf23a8befe72c311e0690302047c435bb500663064023004db43faa920237ea8fad2c09c911e79d6100fdedd2f686fabb3d86471d6fd3d92b10dce71c144b039172cdee2140e6e023059a68de6869151893fa23f6005e91d806f4e465455af8660d216de73adf18719cffcccd63253f35535770dd4520c21d60302047c435bb50066306402302750d928147197c38b3b84304a5fc055cda3c9ab93f025e7762b3be462531dd4cdcdd43448c29658b9cc09251b3ccad80230428ec45f34fba8056cb81259ec88777a3a14b7be861ebf2d4e893a96887162e1b8d1ee1c8ae0c0e1eabf00c51ad081780302047c435bb500683066023100efc4123f36f977683b87ad976a82b088f51b8723140c4d498c4f4e437179290131abeb81861d4bd7877698e42db7b9dc0231009d3af8a0513222a2562ad5d568c0fcd23d5b2076002f27839be0255ed94e5266a03b39ccf7555d58173e1f2577f2d6120302047c435bb50066306402307972588adfa7846a94a328513ff7905171ae562143781e915fce1fafdcf93f37b2c2599885e0459bce285c4f559117af0230470c29f9b69052be5f54d803b945ba14810b8118688f2f23b2fb705756196d3f1d98870ff0bf040ff4a71b79933b04c80302047c435bb50067306502304d7ea1dc3873be61ec3e6c8afa80db6b53eeffbb3a3e22c44fb202071fb5b28d77cc31e21e50247b52ad4197386d6a67023100922f145bab78c30fc4d06ee2dafe995bba14aaf801be48dd726320b26ecab43e959e3fdd36fbb47369ca8f3bfe0b0f8d0302047c435bb500683066023100af867996ad98bdfc44d2f887c097c9dc7bb7de3ee2ce64dedfb91c66c87357468f522ec4b4a20077ac323cf55905d7d10231008b6532a852056ae522bf50aa8a10ae34aff18dcadc156c97f59836047079825253da4808026370f13cbabcd78151b3950302047c435bb50066306402302beb4f9668ff29f68b2ed89fd9d433c8904eb5e89d34113a72c67ebd7dc53bd6bca92f00d2fd41cd71b001804655220402303bc5321a78bf9d44d4fd79082e13dd4870ca5fe1bd549021a60883331af9fee0dc87ebe4a8f1ead51140c5fe293284640302047c435bb500673065023100a13abac224e72821e8d7cf14dda5d7b05b862a9f2d39200a4a16da1d3fa0bb04076e1d64b29c77cb9ba626aa9f752380023044e454c38d2d587369f7817643f9dbe67a41b19525661cb6c377d27832c529f949b22a4a87dd275ee261738fadb067ac0302047c435bb500673065023100f323edf801d1afdf43535ad8357a0bc0f994482605687e5df8786a858cfdf1cf1fb6529325d821011b4630e24050bda402302e66f108d22ab490f2a35d49fe2449173ce2effc166fe2e5377aa1b3380d433611a9cd4b2ceb96c3461c1bad07bd12d80302047c435bb500683066023100c4ba26fd90a1cb2676fdf99f2bcc8632691828956a450be22614f435f4b1de320a03044169eac0abbe886d0e0878c2a9023100be0728b2cdeca66ce1343b31c92211b3d04ae751e2e1dc22ad8487585bfb5997deb8a67cff73f7a365f6b317ec15b1090302047c435bb50066306402301ddbffdeae79bf81f468e92a2e05b5d4429793c0aa9c9cd44e883353facc32008fd2d651739c42c4f53f19b67c3fe86a02302caf383fea6a1da63e248fffc77dd5f381510ba4f3d504b462756c8bb881110e7c28a17c1b5b3109c8fd19757346e5820302047c435bb500683066023100c343a264c0bccc8ec104c133875742300c48e9b0d73a2df57c98a73f647a99651ad2161bd3122c740016d7d58637a57c02310094023d11fb3a754ed9c4c5833da0e0e95c5d7768ed0a0b556627c261f7b7a0a924bc4216912328792ab94ad160d43da50302047c435bb500673065023100b89c8e5b936d4ad3bbdb67a69f6d134c7dc06c40356503eb9f26c13ca83d2a651c75119e038762eed88118b8ea24d08002305a2d1ccb72cf8eb43e2ef658ffe3bd95b23aacb9d97343c0b5becc0cf41fdc7cef47146228c5df170dc8809c6cd1b21b0302047c435bb50067306502302544b3c64b4fbd3a4cf9767721322c8d0253b6910c8fb0f88f3e5f9f508a18219e8c5e5b2a21bcb2b2bcdacc0d292f36023100f845d66543610bf096d6bd5c1d50ec2b79705a85a2dac6c9576be05c3e3eb72d7fc56716a4bb23613f2553dcb28974ea0302047c435bb50066306402303a6354dfd3c22a64a8587a5caa5a2c146ca9e42030336191b265641b2800c832ffd88f16f76aee4a016ff828215668e0023066e9c619b904fd5cf599210de43f848a51811e1e97ef0e05932d12f04837b67dded1eb6c526a596942d53dd6d395ba1e0302047c435bb500663064023046a6a075c5df9833bd21f976e1a475aefefa274ba01a21a609438dba5bad7c9b5c858db01b049f6518854a464fc625cc023061b924674972265a9d2952cb1a4f00c3279253ce868c03731055be97684bb10f5e4b55120589a2a67d15e2685a4e53120302047c435bb5006630640230643d289baf776d4fdfd767557fd61a77931d3904e64c82b6eacb83e3aa5cd9e1f739846d94e529fd255a145df426713102300b0f53cde5f75654f4b4a40e455bafc62f70cc61471ac432212c0aeaf38ed5934e22bed3e78a76ee49ee1780c08fc4500302047c435bb5006730650230290d415aa9bacf78063e541405cedd4497a5a7cb94d6876eefc0f2b657c7240dff621d24a19a7b89db72e3065fb39d28023100acd80bd26fe5c2dc900ae51f11f655115c041e73b60c4d4cf96b9bd918483099c49c19181cb331eb4159ad31cd55632a0302047c435bb500673065023001a13a68b83ad759f684ee96c7ff22937393461f1d198933a33ad8a7e5922903f73b8a869aae83fe0fff42e2a755403e023100c8532953f7af4bc89facae109f7f527e34f03438106b85856346d42868fea626505e6f1f03fc3e07ab76d5fe5a68b5080302047c435bb500683066023100fa5445c25e669a30d598a26b5b766c2b794d1d93dfdf25ea09a8fd77a2a1b5318d0f7390bbd01b1c1c9ab77ffdbe67e40231009c4d974bf7684110f727b284165e5cf490f6a04da7d95e73fb2b8b3a129c5db71f17a3e640bd123ed947dc8a75be9d070302047c435bb500673065023100a6ef939f5eead2b01eb0b292ece63c9e16d3174bbfde4a80dfa33bbb33869741b3cdcd94aa22e97d097cdc7e969638270230382af528b03acf43359c32f7ba0fe408974a127c6b44b82f517e7e96ba53211835aa02a400afe13f58796823a023e7470302047c435bb500673065023100a1037e4c43ca952cc85743ec5831f5fb9919fb5e18e6ff99f333a153cc91450bf0961788ab9eca8afe4e2bc044771da002304c22637da4fa148e9c6f511ef919f87401b6c1939c885fbca9f0d015cf3b3f43ecefbe1eafe89fcad5e66e6e7fbaf20e0302047c435bb5006630640230782f790ef8f2bde75b186e5b30014dbcea32df9a5a149b82c610ab5fa7a33924e011c44be252ff2cbd6cfa4557e3ab1c02302c0e294249b0fb70ff01dc2b2900cf1981e52bb94e50226690db35f150b0383c95984f98d31f9ea46af978e60bed8e940302047c435bb50066306402305651ab79186593fa80a8f191d6dd63e460938d32470d5045998556564ea0f11b40c93cac1e148c8ad3751da92b0a2dc802304f7304c5f1625a076c672a66a1dae0904ad8c347bcab1519fb724ed7e8b795d7c98e9ef5546b2b05b25d21d7c7387f6e0302047c435bb50068306602310090d0cef4ec4f5e1ab69c41b1ee54f810917648e5e74d2e8c80bd51800292dcd0231af8324e97a6144e555bf7a037f83a023100cdbc3ca67fb8ab43f0ae56049399185c8be9ddc6dca9ab574aa25b6fb3383ff1686247b63ea68e12509d37751150d6030302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300cabcff55106bdbf25d557540e2171fa60ba87dc4bed07984bf0da58429de2252202a1e8480db0c56c24598f31d7e579023100cdefc8650d5c281b595d005a08036679fa05708711452e3cf33e52b05dcb18cb40d1ae26182c5c133e623b49157e6bd70302047c435bb500683066023100cf75116307dba7d928353f55d24f1c73ed37f95c152ed7616ae0a52c490f8dddb2729188bf1179b41ca487a91f9b87af023100cfef741671a8b2404f35b33ae7b3909e3d7661b30b89d049cd5c395c57a75e7181c3e098b87246742e42ca1acee74a540302047c435bb5006830660231009b8034235730352a2ea41225a7ac5d3e38e81c8acf04444fe2e2b08cc7d78d6245ed6a18b473cb4611a3534b6c563064023100a599a0690bb9d45345ef6c221bf2e95387f590415c8c3eacef65d15a3b17f7b40ca19e856eb380a29099a7b3dd0005800302047c435bb500663064023069c03bbc0c3c2ed5cf123e2398d6be3d78c26ab34ec2d780933afb6b2f2d7b5f87b61e87604831ca424bf5e785a51911023060db26549f231105643096ffb7024af44635690f59c4d09a094300daa5baeecb13b8d925b26da42262aa07a6923bd4300302047c435bb50066306402304c3c0507990bfffa67cc767d1dc9ee41f3af57d9d3ace7e365ceaad1ec5d7a748f1789624dd7b646641de0c0f6e7d37502305090c766bb61b9eed3be98d8f6384ba2d3451e92305d2464b6c9187b5b9c708c48e598c7ad08cbe65b937bec35ab49b00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023063fd9258a5ecb01506e8142cfd1f332f9acb90a7ac41565da9bbad62e332b8796dd3171b10541e41cf44f970ee4511b3023033d25422aa549ed30ac89f4b17f0bc72ee73979a3bf997e957ed6b90430e229eaee09582c7def7537a2efdb91aff42cc0302047c435bb50067306502302bba60e3ff088cd4a678b989a3f28b2e01a95e853b7bbc3a220bf833b83e707f7ac6f2d3811a8e0aaf28a8265d975f64023100e5cfcf6b6150df4c803b79502901e5ce6a795ce817b0ac44cdf7a9866e8ccbebef47178b1593f1ab20defd5fed52a5990302047c435bb50067306502304380e80ac2445657a5a42025232a50b629bce9bbe2f596e68afd75c83c7ceb0ce8d1ffc97292c1ee966f3e3a595f8796023100d4488ff17cef65ad83bd56687e35ff1585442412ceb57bc56e8e566da697bfb80e88ee9b5c8d4c55ee81c958b18936990302047c435bb500673065023100ef8bb1d85aa12212bd2c49f711168da855aaec608d845a1b6bbf618246832df9eaed5fa88a5ade9043c2ce79a305eb3402302ae3df9095644173edac1543ef2bef665719155eb8a07c4256fcc7ee3281dab0c35f91de35b295b152cdcb34059f1d150302047c435bb500673065023100e9c7b07672ce2629790ec51f63ae07070861a2ff9ee493e6fbf8791fe85159b9a228f59edbb5e4d3dca1f6023241809c02302c45cbf44caf3a03fc0196421f9463176a9260c303d6d0f7223f1855f2bb94201a97630e32f867db49fd38137604462c0302047c435bb500683066023100b5352a076d6d009d424785b9a8de651cbd6168860c4c51e17df5b9ddee59afc00011249c17716306d837291877de589e02310091ebee1ed465dbec7f7ee3da9c629d130228f64d93bdf6a7fcb7c75fc253b93cafff22fc29e7f46698e3f679cdb713b40302047c435bb5006630640230473d7aff32a9830f40388bf4822cf8a9d74beec47ff5a7490cc77255dcdd4e008cc34007ff885e9f2dd2b97dee5ba7de02300d1c226f4ff5e6d9cc4018a4935bfe8af5f1afcc6e81ecb4b1f18ec33ce746ed18c40299f86f6bf4b7afcb064965fe460302047c435bb50068306602310096e6459ce8856f4daa7f4d9d6eeaaa1f2768973c6dcc79decd768bfddaff8c41f18ab2ded1c6e50f6c90717d74f0337c023100fefdc7d1e724b5c1fa60c4afc1e31a5af19112f27fb1fd39d788ad523fc75b59b98574ac6705cf6db953efec13c6efea0302047c435bb500673065023100ca944c2ae1ff0641768e97807591fe5a9045d9db37c4ba61bfb004419a290da1cbaaf0f6e9cc87a7e290a5e37da72a2e023025d1917fd36eaa0cc87951c1daa7a50c66808fe8d855e19cd19e05c1f4f625e22d699a374991fa5b412f49ac71cc3fb20302047c435bb500663064023055f90b5cbebc488fb57ad156f3aba086e492728a42a2bab3bb6c75017b58be9ae0a348073fcad115bdf51eb6c577b2bf02302a9db24bd5111fa62addcb8423b174b21dce2e3607e4b50de55a0acea4c78cdb69c1e3348d0da7a87b88700577ebca620302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ffaa5b2b7b8a965a702dacbb7fd92c0c218b4d3519cadad487734ec934770e0cec6b0b4fc26e691b2119b566790e3f9e02307137e1005f84cc752cd3659067b63c58798dedb49897e65f13d7bf8bff81e9fa1c08d9fa6cbe06c3c07e1e17d89a11900302047c435bb5006830660231008b6f1053346b882760f6a71ff13e872f21e3a19cf575e9a568281280d2ec1b2365a7c8e87082290462b7fc0ffba8e451023100f64cd6903d93af40badbb39c78a2d4e08e16a835d09ef5117108be511a7adcf4eba3ee4167d8b605d190eb2106c333020302047c435bb500673065023100c117a77a4f413097d22ac2261a954dd723094b5733989d2e8a12697f19d08f990487867225680e702ad7b546426c7e2902304c391b04cb90e8a11b982555eb636cc45d5ad8ae71597c8300d1155a859092a0115d338d2c14d31358225f031b3043ec0302047c435bb500683066023100d1ada0d7d15274f50ad4254e6fb67f9d7352bce40b641aa5cb96f3c387fc66ec9c98e30bce46abe0b8c4cfa268f3d477023100a14ab17b12e825532c92376fd5eea505bc91ab8679cf12a8cfc75a46a4b2125747c002b3cafcbe9ca0eb0527d9c4eb1a0302047c435bb5006630640230664e032058d9352bc7a104aab252adc7c47e93a8ccfa25b2b1d52581a105cce4c18f68509dd6d73d0b9c78011ad23a3202304d766a101eaf2d5076c41c466fedb6e9fd54c108f3174411504ed3a5543d4212f360585a5d1ae661aff24c4b8b940daf0302047c435bb500683066023100b4fead38da8dba304526e8b927e6c6bfd77d23f5d5e248a2e67acfb2ec7284507eedcea3af761b9ee3b4dfbaf6a10d61023100a1722544ea56f7804e82fbb3a808f676030b82e9c361d5590fef429ed8c9bdc0047e199fa4e8954ed9e5e91dc364f7e10302047c435bb5006730650230150c784dc804fddc925312860561510a1d7559b0a2fea6475c68daf822f4d0d5fd63e5dc74f8211e3b9b74db2a1eff35023100f8e260d58753ec1147b2f4342c01ff731abe4cd398f2f2f9367d2d57e0762fde91905fd24b86f442297ba6905495ae480302047c435bb500663064023058435eedba44053d2260360813102ea529612bf3c14e18217cdb16d06d146f31bea94d27173eaee9dc4281156255c3f602305d40a2858ce77aff518e112919d8a0118e896d9961410e5c4a059f5116c5b1f0502bd31f92d4c2b01b8f628717b8492e0302047c435bb500683066023100b587d609338f840a03d5d1961392a3cf9ada110e99d32c7d361a62bce6aa3e500601b0ff2a467e8d5c9699a8e063ae16023100fa0506620b5c5260ad5cb711227e18e668a4fff96db412cc2c19067add67bb47654b397bf6865f03178106d4167364600302047c435bb500663064023064ee3b32074c3bc7640e91b7553c2d19bef5f9259fd913099c261655d576a1b3231b4bc0fc76ebfea8f8df1006416f0d02305e9653b7afba3dd30e961de088b48a21ea6378ee5c78294d8df903361e170757c1ee6b7af04194d0c81a750f5e487a3e0302047c435bb50067306502307e0955bead3fda4d8ebd8f5502fab5104729e6ef2d5dbaf6728ec765b0cf52eb56bb17abacef51b8802a2b95ff1f4c5002310080ae98e4cab3be109df57a1009da3cbba176e84013bef6a3f877bbd28971c1d4331a4fe72a1354293ba1c8f3441750e00302047c435bb500673065023100ca042fed7920dfbe2c98c25d0b20863f2e4a21c97d34dd7758369160f8bfe07bad00e6fa924f1dcc480a22740848747e02304068832102fd18c79432cf0f4db34d131e08638ce361bc46924406efd6d51e5fd41a6342c6d9dae565cde486fbc3bf750302047c435bb5006730650230706719c77a3995280d0dbd0d987b9f2e89288e87d996126091ae1c4c71ee80b31258845332521ca029311aed6f273afb023100df2eb8bf22f5dc8bebecd00326e7861f9ec4e4c64068f64c114458a2a4585fbebb4ab5c2247a3f51497fcd6592840f200302047c435bb500683066023100a65c951adacf147de54aedc0d48578fd794bd6087f6d7125895e485c1546e96ad4a942e8cbb3adc1bf1fc65633d38ba3023100cd8abd329ce96d48757eb469e2875178b1091442a6ba274824b79c15a89851895e6677ee512e15e3483e53bc62ae63400302047c435bb50067306502310088a8aa3934c4bdde9578b1652fb9cfd2a5f7907b47c50ebf048e001dbd68226a9c2e018aae1250bc6bf06adbfb922aff02303903d9c4e9cabc70c0b99f1a5d8286fd42d91d1f1d3b53708a5290d618453059d908be833394416af79ee70c5bab89260302047c435bb500673065023100d542bb4952652eca9540c79fd6fef53f4cbc07b43934bfa045d52f8fd245db7031b09224012294ceea070c980ab7e2610230663d369764f0ac74c6f0619c8e3221b8d0c4f5e5f855066daaee8618969cc55ca9162a4aedbf503a63a1a519b0ef159b0302047c435bb50067306502301c057b591b4725837f88f139c77f3060e14b5254db80802300159258f7c47e8b4f978d07291eebd48602f739c4ed302e02310087fe1ca861fa45f98efb61d387028c1d77d64af1a3cbb9a0d2f4d4a5778bd59a81b248bdfb62820276c5d90c4b4186560302047c435bb50067306502306527ecc67277f1bd80c9ad43bcab1ff04d803dfb3c27d262695fb44d467d9de3483771113ae69a8cba00c1ead93cd560023100b8a834fde2ab340ae5f4ceb93c06a7af87a7e03a270a90cd2bbd0a42008a08d65454d498dad423b70cfbd9adaff70f6c0302047c435bb500673065023100b5d7ece18f0e067ce9150ba55f0552f27bbc33895423f98f60695e6606b0f75aa71e6fce76016aa2b04488310f78466a0230078d82617407d9c7697eb6d396b1af39135b492ae64a5b4a2fa53c724f735fbbe9be4e79b26bc30561057efc85202e700302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dedefa186757be89deb1d940797ea3a7436f848949f8fbd9c33069fd50f12f6b289807e3c230afbf6c2b6607f2b8f7140230039908bc37facdf6aa41acc3e6a5ceb019b802b5aba5c12a07be1dfac73005688393d88b0bc159bfb3ce0ac8184024090302047c435bb500683066023100a9c2ed5b812d22e1ef17d913df3aef181723d4f76f47e328825a73bf48527b3810c323b9934b1eeb07cffbd8f0b933fe0231008bafaa3a85e6614e70a576ba8b70f5798942d1cc1ef65881cfe4df1658c2b0ef87df0bd14673c31142b440d72e545cbc0302047c435bb50066306402303cdcc1718245e5bfdceb56a78db589d6ae15ad48f30ade65a8ce7fbfe5a986a521a381cccb57647c84f0974d02b2f3bd0230205be5594621b580d8b3d6d36438c3a563da57c090bd6a51f0f1deafaa09f6bd60b2ef740b3611aa0e663722ff4a3caa0302047c435bb50067306502300ef48495d2784effcd24a6b0590819b6ecdde29c686cbea1f4b711c2b0ab437513a927669235b127c5297db0c846a0c4023100c2a35def641121e87201f3f9283855b81b4b2eaf7f3dbb0b35ea46e7f826bf11750f270e26afcde0706ca8056a1113c00302047c435bb500673065023100cdbc8e0344d74a158aff2d899f309938c34fee759a32af3be03cca76586c35b2276de9b2b0afe863e63e001ac7c09bac0230546e2770163ff6e4df86562c55d639a8ef8fd203432dda270fbb650307871efc4de82319055d43040cec21214988d8c30302047c435bb50067306502310093b1f42325dbb85566f8437c3bdb0342e9403568dc3c54cf625ba79290306a16dbefcf8ae0e7d36eaee03b6d24fe1dc30230487034b08393078e60460631ab5e5b5d84641790399126d7eb1f39a92a0264dab421763a089196f5b577a8ecfeb4b4d10302047c435bb500683066023100c3ece62bace6bc1ca0bdbd9eb6a286430b406e177e9b149bf599d61cc438e620e7c642598c77de48c3d21b1f021fcb14023100e8a9cf9fd85d37e3e94d8750901498bc09644cc04326eb987aba81db2b6f7466ccb4d24df4198aab29c0dd4c3980845c0302047c435bb500673065023020762305cab9d37a06a1a6236bccc3f4cdb948f67542bcb3c4de33bb68f3402103af8e6f95cf66b02e81cec51af2c4c702310096debe55603d31dd72b0579aee6c0cca7012efc56b7e4d73f070c56e66a2ebb3e7dc637a0b7a48dd6d2e0a592a8145310302047c435bb5006630640230715d76d5228d740813713f1fd25f1d46956dd82f78fb690bdd6a96c6ba29e9e96029d5cefeee549013266ab9a8c321720230279c9783662ade2c5d06e707d8ccc7dae292802a224dd4fcf81aa9ca8e36a5b623165e03e2f47a7f6615ed48a436cc3c0302047c435bb500683066023100cf6173e4b68a3a8d2b8819895d1368c0440a37df7d6dd4f0b235f7aa96fb60ef4304f80c53ccee1481e62b217631f4330231009b77f8337167b531e87a83ce3d40bdebed8853e4e0c5b207231c98c7b94e20365c4130a90d254ca630c2dd12bb1c11e50302047c435bb50067306502300645d105738dcfe753c205c8dc6585eff3aaa150e36f253cf7c7708b17c951bb5126dcb932c060da787e5bed7d0d5d5a023100c391d218ca3b2f137a22473376f2928a8411caa545512cd7f78ad3052ac321625fe1de1bca843d02239189988be087d40302047c435bb500683066023100caa467e625dae2de1f10767239077b5a0395f12a3eb93391254cd2dbe96fccc8e1bb1c1d07e7f973bab2532a8b599d71023100bd07f08a2354c9aab2336cdb5962342f7150a36e621fa3ba859daef9d8b5b4001caa3c43694ebca8eaba022af8b116840302047c435bb500673065023066e1b369146373b0165d3012af42b6542b419eb36f70c81f18130cccd899d941cbc962df27501462f963d35c77fc50c7023100fbaf071ff440917ef2fb39b6e04295434cef310b3fcfce94f33b22ef80424ed660361642f703e46b9da5fa5002fedbbb0302047c435bb5006730650231008f51070fbb5d2f1de356080d99569767aa5aae4ccba0f7ab899efa52cabec29fc9149d58a8f42737abbb472659727a1b0230605a97174a695c20b3ee216428e1423ef78f415df4ee177d374e25c6d4a84f5644247a00f5c818b5d06db476ffc7303f0302047c435bb50067306502307f5263d403b1fd26870be7681fe7578af4393310d52eb1bbaa87c98635dc116346fa4fe80017c6a68298ab7a0ea5f567023100fa2cf9e619f3bc706c1630029f8f69b7b52cbc95e8702a4e9727f7ef741e8957448facee52fc5d6778cabdfede0ae3000302047c435bb50066306402304b267ec3e1dbe6d712f5bbf081ab34f673ebcf6a5d39aeb553970084fa0c5deec731a4677d565623bbaa0c4aa153665802301a4074011885c913570e8523cbae54f6ffccbcbb5ae6a4d9276959ab95afca0011aee2c09bbfea4578fd4be3518529300302047c435bb500683066023100a218410c40105d0ada73ce5cb565720a926a9f48312420e732ef2be1a70949c76b227b9e99d00d2a390a3a991728f0a0023100905828fbbf8203c381dba510012eaa7a9598bc3b6717a8478d1be6adda34071c3c7faddbad8cf0928f64ff462fffc99e0302047c435bb500683066023100ac18bc39cdfc6c8055a7e0a34c405597528e2bfabeb6638839f77de9012e7986678f9e659e0ad5faf5243f04a4c65c04023100c004d3666948e7d35e284d4cd6bd5c955068dcee12b364ff17d0098df6725ff09ac0668563236f96b383bdbca3d97a310302047c435bb500683066023100c7ed2952922cb1b16929a16f6e381e6b8fd9fa216145821b1fd1d5ae4254219d5a8e9d7b4584f78451d88e644f1d30df023100cf28bb5aabfb06c93e9cc0547553c0704a3bf66970a987bdeb4c3974ead8b1926876ae1cb772e297b23a35472cd5f7f90302047c435bb500673065023100e29d12c6fc9673d9afb24d696c49dd2a356d2670a134a43a63fbaa842544b4eec2fc9e8f0d769e5c1946b523a8b1299102301d7ddc8b22d0d564755c41092802b9492a6f5672cbedd8482e7ba02abb2f0f06d9046ad098f30358eb263ae6baf613ca0302047c435bb500683066023100c05fc800e9406b3e83146dbb8c0d39dbd5ee5e83806763e31f5eb79252ef9052a2a38cc8ad8b32c8042ca0a6183475c90231009601f1fe5e568faade89f56241cec86867bdccfb28a392e76be9e3bcd2522fdff42a487e03ed0186981948a2198fc18e0302047c435bb500683066023100c3ebd864725e4b4579f7c924151f72917658feeb113726e57f78a2b589472df9df287e24b07d49aa66ef549dbf99610b023100909f41dbaff75c909f6c1b31a921a75bdc82f6d056881d5b0c0f3629f8446b3ba56d3895708133054803611ed6ef442e0302047c435bb500683066023100e98817524f4d16155b618ba98087bbbd4a025d83d3863b555a4cbe0fc2660c6d6f851be7c70d74b35a30e2d7924593cb023100d3696d81d7423d69371fad4ce468044b6445a6ab170d2d2ab5bd89a02c0a3cc156c487da8fef49029ce34dd514bb4a150302047c435bb500683066023100f03c1d7f23e8cc246b7ebc2c84e7300deba4362f3ad75c1267eb7c97953d45fb08f8a0de931d0eb8147682e160f6f4e2023100d61c8bba2d27c865a5c744825615d6419eb825872af7445db85d736d38c658eaafdb3524c2ea7cfe6e28ca9b592a01d30302047c435bb50067306502303f9450aff07d5fea929834e85df741907677b8557e0049c6a7498ff43aeb4d3737f20cd1a10268c3a0f8905149bbcbb2023100fd8da3c6e7a63c0399e6c7ff66dc9963b8b85bcdb14684f937a1780a3889920bcadde427e3cefc8ab87fa8d075f61fc60302047c435bb50066306402301417579215bd455a03800c0f7287a029003cafa7812f9792c68b241c4a4a66c44975a9bbf1c1a224a934e1adb01001860230032e96873c513a8caff6c1ba5e0d73496957442ab0a329cad41a5060807ac220da22cd6003593d1740e8ebff42ae67b40302047c435bb50066306402307ddafd663f0bf50e7c423806e635f0db4021c9aa49cf62dfa4628d2a2e0351b7b61b37dfd00c62e03931192481ea001602307b47f26b4e4c00c6f458afa8dd454a61c4d885fd69701a82f170df68dedd77450de91fec0bc29eedc18f17d7747d499d0302047c435bb5006830660231008c444936f3b0b11e54bd265642ee9da81ba48c29497807efdeb54afcf6e8ba37d3c6bc28a9524bc9506c990c4082160f023100f749d22942c1446633cc0de8e9cb1ebab146ad35a62a8e1d437b30b3f37208dbff8ad4f267f040cec0b59ebfdb35986f0302047c435bb5006630640230761d81364a6b6a238d5b3a26add6348fed9722398510d217fe1e5848605d7a6c802d079ed25decfc39b384cbe18c0f46023046eb352bf10d61dc90c130dc4f46b13269533cdf435c7245827cb3c1f5ff89996373be6b109198fc106253db200b158b0302047c435bb500663064023003cd76529c8a42cdbe98f727caa4ff8a21cecdf42ca222a390fd5c3024885532a4d9faca627047b53f7ed7a5e58d24e802305b22bfd8bd5f66cbf1d10251e99625e8bbb7d083f5c46c1770ce8babc8e767c6375d6fe8b38ff7bb3f1758136b01d66b0302047c435bb50066306402305d08a0f2f07d3ed962481ca4d88a9109f56650fa7f614236a411c4745347ecb571247726007f48e020a58cb28ce699c902306443bae1b82d1204e2d36eb85f7a86d1459140790aefa94acf1e143f56b4e71cade023329113dac4bac55f23581d9e120302047c435bb500663064023020df5dd803655ebd5d75a3705e1807cc093765d56c0dc29a2368c225b966e2a841f7fe6450d78ebc2c4735eedbe1744502306c897f051b65a0861072aa1b919bbea719afd004a3466653d8eed7cff1f93cf7b54c4facb6666e7ea5f1c4ac9c2425420302047c435bb500673065023023fa6f34a9f8d27c7b5c3a58e48396b903efd91f9da2a5a56fd32d1d72303d660c2615b4269746d4cdf383d94f64c89b023100c1cf3704726b00c167f4f7421424c2ea4f2cfe37e6c8b4a14f3eda0eb07a7c898ebe91f70b8fe5bd6f1279987e98bbc80302047c435bb500673065023100bf7946889e365657a424c277ab01ae665abd887180a4233b8b224e2b1ba251f58065d06d2630a1047447fd570fe0bc97023026ea80f5eac09977e6177af0d05826445506974c41e969f5003149370214d988d39fe1aad3638aef800a44febc05a97a0302047c435bb5006730650230155dc382a329478f8e1951ada766eb0472acf02684295f958fd394a742c216d5da76cfbc19dd47d31ceb1d43097614b4023100c219013ab954e43af146d9b6c42d08394dac523f65c5d7515fde7c13cc608c3b98ceae2ad36fbd6b4eb76682f0ff036a0302047c435bb50067306502304d98c23f8b7e03c39717b4d528017d5c1f0354b70c7e38793672acaa78f85fe841f0e82852bc0f100a9c7b0c56725343023100ba97539864490ea3ab5d3d77576a15aca449a758639e2f1d47642b999b5e03cfc5960e0fa253f7bc4ce70782aaadeb230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ba91afaa196b749fd712c3d9d4eb879a58212ce9369a4dd3ef2855715ebcdd56aa6b00afb6c2cc62a0e2ea1ed9a5e1b002303b66330561ad2c2262d0ecfb62388646a167b6c42b3881b6298a706ef14d127829a1766a0839c3417024c732ce07d0d00302047c435bb5006630640230144c00751ebfb3ff241dba00cc67e3c9f8871231b210c4e7ada31986f7e463b2b06b64de1fb1c9338649d1b2a1e395eb02306d92706eb749f9ff07e30ba6529f6efd9213112ac88da1c3b4f290933616794716d497dbefc1c874e8682150577026960302047c435bb50067306502300e4e4d103a6c6ceb7aff2b4950a14852d1a8857ad6a908773f4adcfd28aaaa2cd511033932c810c2fbc110215ee68ee8023100ba378f88b1a36831d397897099897b34f592d2081d985018f88934ce1c57a320f86521afe436c1b7987e3a0f7cde285b0302047c435bb500683066023100a53f947c05591c291cca4afc2e985996f1ad9e86cf4e75436fdf7743c1be8f0f721daceb3de1cfe8c67aac8181f8aeb4023100e6465d26b0d4a7967e6e7144ff43ac3f039e3e4ed392e8ed20f03b4abce2a429b16c4a9db69b90f4e617c3d92f8ce41f0302047c435bb5006630640230132b8372cef90f9a1aada485882d6f593942544f60b8b17c69e7a091625fa5265b061e0071841515b8847ad53fd062cd023045aae4d973dde1ccce58044130c8625198001ad20e707f02ab7f26f377a99b7481234267ae02e10eb8e50b43e662fd400302047c435bb50066306402300526eec74aca29a60fbde4538e51b591487cb57bcecbb2ce24fb2d07de0d5aefa1bbd4be29e03f794e552611f5134ca8023063031a3974a01ae7459df3e6124fe3b91348123239bc1975dd3cf5dcfdd4debcd792a23058b37358f3f21e9219d15c550302047c435bb5006630640230719a85f1887c5af8e68f338a9fa6287154be968da9b249e341d6a6ae75b566802460fa6f7585166ae33298e26a6284d802300306be0d7b757f91edf4188e899cfb32621f9e6a8efe4fc615b3ec12cd2fdb2518874180cd0617f82b3baeb02ffe1c220302047c435bb500663064023027495413be70b60f883cc79702c8e214471c3389181e53f89ca02d08d3c59f48024217039ece14ef77b6ff6d4feb539d02307e361a8e0be565b1c3d107f605ba8eb7a33f8c818ff09ba2a5e03ffa6d9afd7199d78d75fa7a4f45a1a494402f44caf60302047c435bb5006630640230529c6926c7d34b6bccd38c9576bceeaa606cea164f8899e54deffb7052fa35912cee2957bc3546ffff2871c8ea60087502307e94b7090f6bf4ed493cbf72fff80dd07dd68c71c24cd840cbe2ff6adcb91919bb3af4674f018764c5b8b16776d20c0f0302047c435bb500663064023020e93dbc3cdaf33a8f461c35221895d98de8fe6a41b238317281ced9c7d14ddfdb9f5a38d870e3e57e8701fc71de3a1e02304496b67ee8f0f28cfd9076bc661b4da10a1fe7c6d1679a177fd49b6f1ab39ba36a38020ae00024d07895fac9038762df0302047c435bb500683066023100e39f8d72e69e997b60e15aedfd6aabf046efec43ade68206630baf9091058494c53fce5a28a2993a7ef54a2a1bcbf946023100d3272e9fb1d5fa5dd885f1b573c69a2925683689d2542c14ef630f288b325c2723eb5533346662d96aba6f941ced944d0302047c435bb5006630640230090fd6b89f083392e49f3eeb4e6fa3993e03b9c9e7373da57f501f8641d6d4d460e55b359b8ed3cbf3134ced267ea30b02305cc1e40e86ec168ab4773b7a92ec2ec397ec1cdbabeb81fa3a4482bf1cf1a5af039f0d032f99c3708096c141fd46b4010302047c435bb50066306402305e53ce987d41167817a8228ddac5e3e7fb1ad061893abd8c2ade18d53e47fd406a37eb08723e8a4664892859f45d576e02305f5e36ed1f85b39a8c2ca703cf8ed23bc452291a0c77be5e82eef3044ede7234099ce6fd1e66eac5b5c920c11b09aac70302047c435bb50066306402300e1db6c281a6f8c349895725748d534615974723aa356a9c582d08d64aa3db2cbe17594a05e366b5d58cbf2384c3254f02302c9cfa295ba6841f4afabb8da2688d65178638173cf0445e663793581a72a467282614bce021828c566ec71d538005600302047c435bb500673065023046d210c48e0c414c25dad74065c21aa2247ffd68897846c3102808287312e5a244e5a25e55518a6f64bec8a343979935023100df0b9d12306630dff910bdb577f38dc0bca0fbde8748a0218d5d671a219188c8e95f3d30c87911194ace6609379a62a90302047c435bb50066306402305b408384badcbc04b75432f69858f8e000e8da36cc8e7d731a58e5cb34ad5b68789950384dbaa901c4551f1e59d991e602300c4a0e318c2f609cbdac3556874c5366fb492e716fccecad7d5275f6557f781bcb28c165329ebf3e4e83718e72c906000302047c435bb500683066023100cf252a1f1f90e9b2931335070379a57d31462f169d92ef16d6abef4a1defb219bc262328eee1a8d63efd4637014107eb023100f869f203e78b922680eb3da4407e959d78e209761af20ebee7a3de44db4a862260c8dbeb23964f73eaf3e6bf19e382980302047c435bb5006730650231009d94ca83472bd82b1af41627b9f0a034e4391043b1bba1388872b6c9da1dc3a19b89efc77e698294a45e2b1876eccb0f023057ace9543e887ed38aa54b4fc3cba30a07f2a0e99198970bdf42452fbd4a42c5afaa3d179acc9c853369262350741bb40302047c435bb500673065023056528b70bd23b5b1ab275d35eaf820c60a7352a6162a419112ba494496087309c384484d653d9fb91f4cb43a1b4ed303023100826ad6f55e79031bb2e8a44ea58877c428a593fd8bd46bd0bafe1010c1d6238f88c088539c57be8cd2bc87e9dd723d310302047c435bb500673065023100abdad8a5d0e0500661343b99da1a7cd5584bf4111df70260ee001b59a26ccc0b0407fd79d050c2ddb2ac6b59cc49834902306719663ab063d126b81b3e66e0e092f332eddb39f4ad57e46bba94e5b87b6b5f92b28fe3871976eb3a1ae236fd5dbe930302047c435bb5006730650230550e7e508d34a17c9c59e96f7e7cd262be84bf1138c2f3da185ff69e80c2eac71c0f434f6b8cc547952d6cc262c75437023100d8920422e78baeaa6a33b23de6b371048f2408a166ea0a76b122fdffd0cfc28e904ba7de7bf9f9773ff393eed92d6e6a0302047c435bb50066306402306c6ad96dddc011e0ff0070f9357eda9e2390e7ab4506cf33a9fd01f3dfee928a9b01763b70fa3f68a782dcd90f1e625002307045d485a369cce63ee0de1da1aff95c1b5829bcf0f664891fc487f7eb78127a655f5af2163e82cbcba7df4253f526870302047c435bb50067306502302a35e3439f3679f4df74e1e456a8627432d27ecc1b0b3564b68aff46cd6426b25589e02cee208d4bcf6810c7c9879c93023100fcbe86c61bdc766e76f383effde62ceef985815f884aea511cbbd37e84ba8dcacecd9fe43f0f295d91b43796db39304a0302047c435bb50066306402305e95e904551a6ea761025ac2615dae34cb23ff5cae1e6935008162543c0610d417779249f14f60d362c5cc6af0fa28b902300416225de42fb7c2b09a4369f70cc16ffd20af04f5b5e80f0adbc07f34b71059f501f24f782c19095803593744adce5a0302047c435bb50066306402305faf503b386f974ea9fb3088b64d418d1350d79430d552e100be9b5328ca67c587ac54515e2f2f1a50ff14637f7417da0230658b870269ea87d76c7c57eb67164ee2255f54d70f3665951fd2f3064553f4646da0858ced2544c5370294c5b1b42d170302047c435bb500683066023100e93c238717152a6937840efac18ab991d77d186dbc50b1b7a046c96bc90275d5b8a97a13dce2e6f39ac8fea0ffadfb03023100923e20627f8ffda742cb75a76b75bd956f99a8aada624c9e38617b69fb8d84cde4b1569180816126a42c38f332de83520302047c435bb50067306502304bd13b2583137fef7e2b138f41297b71ed62da51ab5428a1803326bfcbe437ce8b0a33e9b55f4e893472ad2b8665a800023100bee276e14b566d6ddbaa62ab7b6a7383f995965319ce4210871941c3c9e789be4f346c35e682b513c1c6a6468c6bc83f0302047c435bb50066306402307bab62e324c0597e064923243e5d19c0f9b8ece0aaa600bc9e1994e387524d21b5004044b64dddb5b8df5c482046a1f40230632d87a7619f0f642fcb6a68bf8191f1f0ba00adb561b7c1598019a1175bfa628230477f9606c1133e975f5349e644b00302047c435bb500673065023100e7ee00889b74f806bd5c4ebc65116db4f29ec5b0931086e01074d30f8ae0960ac728cbf9e106af9c24de353a9395e53502300e9deb13e9c91dce54a7668dc500db3d74bf5ec55d59e3c617885335fbbd6573acbe47812eac20403164e033b1281c840302047c435bb500683066023100e3f519d35f2b68494d5214217aa46c842b386ca151f27c18b63f9d164b544a5993823bccecfd258f4a26954b3d369fdc02310088bc9e16e2480e5acc7c98bff9c88cbb169e23c1e11d2f7a7b0fe2d998e4e1033084471e7bd3a065fc5cf8a7df461cec0302047c435bb500683066023100ecf5662d72af0e99e9823cb6758c32a21f5e8f3878e19c7644ab18b736caf28e3e2134d6c797af7608caf6d3a982bae2023100b8e3fd20e6a1ca6f73cef0f4a37135e481c4667bd7852e973d6093169cc2427067a7142a8cf73d4b7d59a4797411363b0302047c435bb500673065023100ca21239cc9a5d02ccf456e448693dfd213d029060f471a7b0d486592b0a909b9ebb98575a38173e5b814acd34b9af56702300ac223d5ff73aa925aa04be5a0cb224335f622867f9fcb2f1c4dc0958ace6bd73d6fa31630e4a4f8b046c336a3572c030302047c435bb500673065023100f8247671bf95bca0b996721167f9cf08b222263e67fba89b5e2eaa69cfc52ad9f8ac55fa4ccf5ba57ef253eb4c6d4297023016fa35d0d5fea54ec79e43ee58a9dd3c9272326d162381641f387a38946b3fc2e5ca82628f3a99b2bafca2ea18a43aa40302047c435bb500673065023100a3eb2792c603b8de264e36e8d72916940aad8bd91b622bde65c68a74591ffe20cb28bfb6cffe92efe82e2a85509d4f6402307e4d81b27a373136195ca86cd7e79a343d0740e217407ba6c72af4919429c6b696289cec7e22afcbc830e4001ce1b26b0302047c435bb5006730650231009d81d1019ac1e892528be1c018851ce8c73dce571f748c95158c71ca0508704563d62fd54f0ba73960fc4c100d28aa1d023051f8fa4e61e70c6c72ea7dc203c1a48d348f4f3c1290fe20c027c4ed70102de2ed247ec0f7c61cf22e82acf2da963c5e0302047c435bb500673065023100d5a97ef8aaba490b6da7bebbb00c13498885bbb52d5bf33e0da5338eae1f719925122d79e853e369e44ccb2fe1de51b002307f0aa5829a7509445ba4664df14e411ca03f7daa67e5d09157c3a9f1b0df5103cb8782084085a463888de854ce9c0b5b0302047c435bb500683066023100b0e1901cdbd802506c40c7bde1c22f9ffb30278e93cc073ea3629047fbe8247762bf86d260dc30972a5cace88c377ecd023100f54afb6c7ab752cd2af10781e1a99b354d68bc07a56c64b0777f9a18da45e7d060e9aecdca9b4abafcf511f7fef46f490302047c435bb50066306402301f6c4447fa71f393832fad85f4a27325f5375cc79960f946bd84bbb7ec4c38f0d703eaff0e9a982bccd5a3988c7e65c20230152777e377515112c4f16c778153c62cbcc77654efae9c52b69610f86d00523fa4904b62408f8edd744089ddc3c6bc160302047c435bb500663064023016134e18a7a4fc413e26686ba6689362cc67038905756b72d1ab4fb49d9789f1f6e754ad8d4f7d55ad91874c33abc4a8023054514ab5184a91b9643637567858b5eb83e2073f2435ef1e6694078ee1983f8917023402a2b80b6ecfdaed82ac999d240302047c435bb5006730650231009c587666e94ad8355424c73fee4290b0c602b4d16346aba2c22add5ee9c5afbdf094aea79b193434526a1fd05764940002301e3963f11111048fb79bdd468d8e9e42d9f7e59f0d315a5527f21ad39d974ee66b3bab4f26b84e635815155abb6105560302047c435bb500673065023020364d710b4d24d04e609a283dd035a34deb17de37bf2884d4d1e416eb5684d38d70a1203852b8e646dfca4cf1844abd023100ea015fc548ff5f230d59bb92420d6396a4725ff76b53bfb353c62ddb14c282410357121bf81f79e53d7dec04d71042200302047c435bb500673065023100ce2dc99c293fd114cca9a9a47f06a3e33f86335344fe945b8564679c96c9403d3cac1c7e350371d187f13d4d96e39c90023022262864065f9521f992620ae623e9d3c1d2d7a3fdc6046b3d63f7c442d24487ada7ac44d3a156ae29494fc6db6805950302047c435bb500673065023000c2092b4743b91361d994fad7c7d446a124ee4fd53cc7d253c7b9d89875795de75c89fedc49a6889c276158fc88839e023100cb57845b11f27ebaa54e4cef65474bb0697841390581867e939e41379ec2c92f5bcfcceb3a55f7f0a10adc503ff4b7d60302047c435bb50066306402305c24c57012f2d5b8aa06f6cf62abd9fc1ee81c6f95c52178e6302f8c78a498f792129bf5068a9b7046a8c56c1472a9a70230154c373031429b8071c584fbd42fb220cf530df7cf2ad5e45add40c8d33ae21e1a07b2f3938e2d1800b6315a188160f00302047c435bb500673065023050c4a72ff9f01304becaeb2947e51df4a5252d8bba188855f18a0d0117536eaf4876bdf7dd06e51b19caff07b8acc42a0231008305131388f034e619f28597b43203daf2711eec24e49aa8cdaa15e1fb1602675b97354a7946c19fb4f93521151b181d0302047c435bb500663064023078e8c8b1f70349432f93aaf309bdda8c3301c452f192df955a343e279cef1c93cb56f82e0785a3765a3c7ee1b076f2ae02301a21436834d2ae06aa55dc4959e6ddf0b0079e1f5aac1ac20416da524e1bbbf6b9f879701e2948304680d1464a8360150302047c435bb500673065023100c338cd952f71ec5afb90e93aa2555e1e9ef3e9b91cdd7829a50c027394924b8da3f1f104bc1fbe80c1be11757c1614850230313e8ca0f969eb5945eb478d560172a6295c0b761d75eacd38347cd6d97b98c98bdb316f476e20a9080b3e39fa54bc8b0302047c435bb500683066023100a44732ba1e2b9ce7dc051d34319b64e32ead9e085168373dee61bb74bd0b989530cf61f79b93398ae2b6be03e12687b8023100a36148c5c4db2ff4faa4668652cf21327ade899636d2b5f7cd48d84163e4237c66ce75cfeec19544875dc300ee3f33ba0302047c435bb50067306502305f63f884205476f25e1eb2a65a9741b3e33868b2289302f5f55ffce6e2ca5e54704167a7d426a282efac28ba6d0dd8ad02310095bd1a225426a9dc4e607376aff07d071e04feb92e6da295882da978f028750f803db8e308395e3355d54463b02fd8220302047c435bb500673065023100841668c287482310188e27cf8d26f43bcb175e90071293af923279a3fbab46361cd60f7f8a29658e75b5f367973c2894023068ec4f88d4c36adcc665b85c8c96e52a8d01b9a9d09c0fbf8f9e02d97e13b32dcb1402bb0df45aea3cef12b942ed292e0302047c435bb500673065023100ed12edb7386f2c647e6bdb04ed20f15170c1df79e7378d64915fd3343664479f5d868d2bf1015b12cc1a154f6f1da427023072ea5a7657830d38fbe17bd8f9fccf1f1151f9b7ce08f1e39f6d561c12717f1ab614c023e8b7031b69608085f12589920302047c435bb500673065023033c5be42e5871eaaab620ff519b8c8a82f4f4ea2a340de8926a57d23fe212a1b165cb031cdb063e2ada6edf2c8f35e1a02310092642ec18c58cc7c350b58efc72bc8e5a3894cf617fe275f78f5f8f4e453b6f1d2c4c773affe390ccd0512bed1e3258b0302047c435bb50067306502310094a81611fa464ed6e79c526eea2a73f87f2436d5f57dd5dd1b2cbcea2b867656d80f7588520dc5da21a73f1f171cb7f802307587fbce2b7e9292f6e92842f892e9d0a436f0a1a37c6d5fe5931574e894942be11b641495bbc80348f917dd7cfb35720302047c435bb500663064023032e577560fd0d3a89eead23127326654025e85b8cbcb8389e5cf267c61f79bbf464c34825bddf97bc1b28a7bc1fec3ed02304008b675edbf5a2f423ae96c3674c9452e0fb49810cf5324264b04e431aba8d73d70c14975f9f34da456508a5f19c4490302047c435bb50067306502306ee37cba9cc902c3a4d6288a82185d5422ede8869d85743f6f9fcfd1657ea14d8beed6d7ffcde21a1d470939e7a76ab60231008294be483e80e73320ac847f57ceacfc7dd6181b21b9780b0e1b0b87cd8815330dfec735e4c0f43ed3657b24246832a20302047c435bb5006630640230648f814b57e13543118315a265e56700ec4be819d977f5a078562bad4e3d9af03992eced873ae5ce02cbe770766d089202302069c716c735776fba2dd8170fe76f265b4751e6eed105f8fe13aa9ab10da4c04355c5bbc52de80753ed40bd57a520590302047c435bb500683066023100b861277e41cb1779e9a2b9d4f71c5a8183d4572dc55319180f007e961c7b9ee43a4ec9c88ecc59196442fc1fea1fb86b023100a9580f2d65566b64e7c8ae3d72a86b1b84828b1bfb7fb3836c951aefe1c6185c89235dda02cf695b1fbf1d293c1153400302047c435bb500673065023100f223cf9892cf9a03bb1af0a191797c956e32df8582d41bf6524e8d351cc32bcbe1c18ad6c6301258ff3453f279cb58ff02305059b38f663b46e6c165e98fe9af85bd0c7eac45bd5892a3a0f74ac98b923512e7a594823b9cd1d088fce1dfbddb1d570302047c435bb50067306502302ae0b04e2890780082c0176e3bd41b5fd14de1b32c0ae243f2f381f778a9b3149515e644ce3811d47387e86699eba19e02310097c8284d8c625be88623de8811705ba81f2261fb06ec351b15b565f8fc0086ac0b7a47dc92671956be83f5c27d445fd90302047c435bb50068306602310082caf5bce886e8e7e69016e4211aa6745dba871bc64e05e47b0ccd8d06ab9a267266eabe84b2e446b3addf298f08b378023100c2b622dfbd26074464043c7c626ff2093bf2a3280594d6882e1d48ee8a476904dfae63494480e03ba13ab94e65c56b580302047c435bb50066306402305b86af4a496f545670f589f9ee809f43ab1a552a435502ec2c65afa99d136bcce7cb2749b0b1620fe8d2e3cccfa3778402303f39b6c7180bf631a2ff3fa883c405473d3b763180bb13afd69d47ad6f631affa3be75640c77a8c9a4000aa3027791160302047c435bb5006730650230118ed62c801cde1fc45fb49acc07634d4bf771f391adcd3269ed7630725fe8c4b5f2425feba2d4277f49bf07d4e0941b0231008a7625cb892d154c466e22c645fe5dcc496994466fe18514089d533832e5276aac6c1244ed9586b7bb6eb9e709e683ff0302047c435bb50066306402304f1cb1fb5715742770467ff37abb2fd6f14bddd830b8a5b79407e6a791a6df98b4eb1c6b139555da268d3610f712972402301d3e2c2d58b965e0592d41fe795e8e9dc86b43dad3aa9363140e2f86ae718a6b7bf21dc054beccff39c76591765baa760302047c435bb50066306402306cbab1a8b4d56e98556570ff7add586d9d763cac088124840960eb65b54c40e600a8a1bb0d988d7d5166a14d75331c980230179aab975f7e5eed42f36ec3752f6d179ee43a10f6187e21cfeeec7edbf0d7dcdab0d84544b7002f651c88e4951e86950302047c435bb50066306402301ebfec59854b1bd5abe69ae7f01108db05ed01e57850ba575b1a1593a9b6c1a64378153b8e331375e0d0d29cf65eee94023045765c15c0333ee37352b2b666bb022faf8658ac6034ea0c99d62ff5955aadf9aaa53e833581348078c51da7f18676c30302047c435bb50067306502304eb19608772bca647706472a7f236bed7f9474ec5d63920345488d4c7a3fad931c18d85154ba3a8ed76bc2f58a384566023100a255173c94c03e9cfa1309e85b2602c894eda3f29167ab71f44f0d7c3d0e12fd5019417f248103c59de631e9d8f3ac6d0302047c435bb500673065023100f62104bc5fbb263cfbe8329070a42193a3e6f753aab49317c048bc3840a8690ee50996d8afaf8203536f7c2b2c98ade102302cd97fcd3e8a6eda598794510df6e5b84ef5a1f7541e4c5ca54446803d1fccf996fc89690e7122bdf6e56fd41113efb40302047c435bb50066306402303fc240d561c897b380f7aaa179b77e2c96fb416f1b8dc746b2b2b17c9cb4f92d96ec0336a734e183ca4218ddd231451402302d72626e2e2cdc3e50f54f5279d8e760ba86b0de8617713be2526878d6b4535a51899cf4e95ad0fc9fcf82e32fd9bc180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100989492d3309f4d2ce01489ce9f1c7c6257218dd6a0159a2c88ec4fdb81a8feb35aa9807055aa2f322f942449fba570c1023100fc9f2fcd303bca2822a7bb1e8745e3035ffb7406f9a9d1d87174167b835d471762ebf46282bb903dc5366d4baacd9eed0302047c435bb500673065023100b25736cbea1ab62190442650c1dea42d29ed021fc84a3781f2273cb17d879172a0389abe9b14e523bf1da827fec3ae1702305c5e68d58263e04014af4fb673c479b740ee3c48a96f2e5ef0553790f51c92cc85477818dc06bf035be800d10506999f0302047c435bb50067306502302c279bf071b1585a31971f02ee6b9cfbaa60dd290a1c0a8542005175a7d5bb0ad3af299792798c1c36917f2f50ba9052023100c65d35114316df459803fdff08da5b1509b4e0ceb3fcd9ab770b8d9634b6872db9405e120e549f15797f1ca52da377880302047c435bb500673065023100b2c9b712533557eaeedfac28276abaf87249d3cc3f31808cb40c625f47ed3f5309af3346cfe23a9e52c16c570e7ab53902300e870ce8bd00e0a453a5d8a49bb5c3e254194a28c7e6f6ebc23b3721f34dd13ee9f55c43850daee630a01377aebbaa5e0302047c435bb50066306402304266f82090393964d87a73e4aa4ed552b4cc42fbf487268192dd655d696bfc7fbf7719c1ad55c7a42b675a654ac5ba7c02305d23f0102f10236dcbbb5ebf618f8850654682a58835e79f6261fe7acec6c0763379a45c4a863163c120483b39b3e3360302047c435bb50066306402306c38b345844984e7ac3b3b047d1f5240dff8bef6c349446100d2ed1aa0deffff14669e05d748ecc3b4977b41896d54e1023045791a76ac07830ba2174dcbb9a768e1df81655f531ad7877ea13c3b96c9020abe3c181cc9a1c9a9d69e9958d50280770302047c435bb500683066023100c935a95e37bc57580efb769477511a38f61787b5afc73467067b133195412742e155caf1fe80d8b80cf9979df57db92e023100baf2e66d8508e7692178b83a5dbd353106a769c0ebe5565937f83db3754f410b1a0222222627a875b9b7d4c7ed0242a10302047c435bb500683066023100b853d6f07aeaadcd87e70ac2695d1c138dd7a58f70cb178fe0b76db0c9a14c3159690ace7aacbcba158c8402ca3e9deb0231008ef2bcd413f337fe9c98c90cd3cf1b9a175144430b202d1d7f7019f40eef9ece771fd8376673983d55939d542f24085b0302047c435bb50067306502305d1b93d98e294291ba5bfe534dac112ad427b7e11ffa52129222ef691ffd73298521c392165ce863e89b2e115f84cd7e023100fcf47a5aa54066d2923c95a325f1bae2d9e170e99a01e654d8b0c3a1cb5fbf094d97a8ecd4f2e6bddbac29b96018f2260302047c435bb5006730650230048f42e3acb39bf68ecf510866affdc5f2a1be3a478cfedd7c182d01725e97f6452c6517cbf7ab5bf2d582c7710823a5023100afb06ab02bea6fe3a9f813ca1ca3c7a68c76deb1e4a4724d17b5f2b08897954751f80b798cc4b11a240100d1eb2d62620302047c435bb500683066023100de2c380f24c58301dc2a4be0eb11aae54c5a837accc0a152167199fc474602419adaf7c1d8aa25452b8820e77f5b9432023100a60b859ce7af1571209b028bc50bfcb2e3e4322e79366c3a6b45d4c72e9222c198b7f8c4cd5fa7b09292460363c584e10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bca8a1195c139cbcce3f4fc3b68f1af25476167efb909c273c60c9e188777eaec9a5486f8d25ac82ac49de15dadd0a000231009473d6a8125085bb0e7c1cddf3d02c1a1bf9b029cfb524147a17c0090e6e449733c82414cfd2d4f60e0c9f2efd0e13240302047c435bb500683066023100f0c7feb625fdae1997012085126eb87f48b28b08e5f10d89ff9d2f3fac00e9a05d4c26c33cec5d7b3f8795555fe806bc023100b87db243356d8baa11a0637f78a021e491fe722da86286196bf11c70abc2f9997b3d7e93447f673ccc21a7b681403daf0302047c435bb500673065023044d5b67fdf3e851a66f9311b4fe62cf8295719e908f2d5ab808fe13da9a54eca3d0bce54678b97a07bc93e1c30926641023100e55873e0df102e3540c6d44d3bb918aa1b176f2341f811729190267e296cae87e2380229d139ed14aa119603b65b066b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023018448dd8f03658527f7f4931a19130bb45237a744a2d5578611ea7784ea54c84ea3f4a529bde0c8b57a49b9e2be2f02402303b5258f5f0bf7e0931c40c4a4b90f81bb461f26ea80deb45002d94e57908f1dd5edd2ba7ff38be0e0d84ddea396fa4cf0302047c435bb500673065023100b677230afa32b23f61f82fc78b700dd1a258b7c53e72b8a446445ec54d110738ca714a22f66c9262b7ac0f4adf43a7c702300d52d5c143e925b8c77456ae89b01a0786d1ffbd74ddb8d74aea4fa86e21dfc8710c214ce8c371704c669747d8a0aa430302047c435bb50066306402303080d1ab3ec92987cc1d3d20291c108883e32d72c4ac4d85f95e207b80ae530334c4d1b3477985128dbddad7f52fb0fb0230181c8512a770550a161a17f25bb68d321f6d8feb04908423d67502ef8126531757a369167e3f9b5326116bc8c709a53a0302047c435bb500673065023100cc9b2853fa6940bde01587223bd1641a2e698966e1fc1a461171a366c25d713825b045e0f63de101261ca2713e01be1102307eb918e225e92bdef9bc3eca9d8214c765c7997a2e3331c616671dbd76a6f9396deb63f35de0ddd1f7c68410ff7534b20302047c435bb500673065023100dd6153f449651d755856a183d102e43519ad7860f9db9aca9f83f3cd4251f72c2045d5d75687375f0bd911e07ed11d25023069460d22c7458115490405a44e4917e8cd59f3c7c65aaa2d19bfb0cfb47d4befd41afd0c4be67cac22f264ac1eee57f50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100989445a2e795e23357184620532ecca51859dffcd08c63158b1987f37ff9b2f5d74195220d05f99fd4ccee214f78684d023036af92903239077bf2a9c5541d82c4b86635328c86b8918bf1e4ea949c4385e19d65137a5699c928c7e325215f2a35090302047c435bb50066306402306cd9c5bc4783a41dfc5722746c8cd5ae760479a6c17fd66904ee1bd76f08f5672420befc4d97ada3de2117ee2ca062fb02305a90af46848f6e77085895f6e074af06b7582cf85a1a475ed23b0137523f1f526c2b0c787b9615cdb5ba44c6e4e4d0630302047c435bb5006830660231009a9cc0b8e5ba9a364330b86678829332cdae834bd8686a392e0878871dbb9907a09293b97ed9efdb9e0844c93a5b498c023100ec87081fa7c8baec2cc0e18034bf10df5cbf038ef55db0931c88620693740a01ba53d1753f8eb0a3b00672abdee4cde30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305b822b84eeb11f3703118a7d98d985e5166ab74425596f69fc8daaa287dface8c0aa3ca1976e61ee0b6d2c8ad8013018023100b2547d77130ea6fc33e04025646e088173e7dd53dcab31855913045fc3905ff2e2fa104c748b968daedad7cdd78c2ab80302047c435bb500663064023054aa8ed4c3d11b86be33a73e6986d46fbd5b0cd481dc5835ab8fe17df4a531a58c9c9bf0d3b58f41abc7126290306c2f0230575de3aa7d0c0c2217d37ffaa9525073f059bd7b9553883839257690e6110327b48d50b655aa590c9a23a944c6fd00560302047c435bb50067306502303992b0b3a67f698eede160092637edfe349812cff95483666dce25d7ed1dd83fa55f20556f2c6eaada0a27103deda805023100eb64727c46faa2b139805cdf58157b4e2438e80e15ca8d98674b6a3576e5d0e5acfcf3f61215de6313b537bfe4ed0fc50302047c435bb50067306502305c6f75e80a44b8479a8c9eb4ef290ae2791fa02f1683b407c5ccc196c8525a23872358c6671609a848cf06f9621c39f2023100c797264ce2e353c506319dfc1b64653b9f0d7a7aa66584cd7c8673269d98ec2e09e844a5b2c724dc8564c303d97c7a4b0302047c435bb500683066023100a871f3725ff51f9d064063115b540696f898c0341ceb699cc5f90a4fd897bd4a53fd22ab00fab6de56e2a858715ea550023100d778e2343c6bc9de35d097d89c64121113db93586516e6920bb906230ab389a4220c2ea2ba96b6d5677d71a954d1dc1c0302047c435bb5006630640230339976f080800d4abb2f2082881443b4224582935720fde1afea0505275e860b738ce3ac6e3cc23c431022617b8b70d602305485a3595c095e4d6e2a4441102244c958c7cd3bd7a51352ffd49a3b8c14cdcdfcb107cd298d6829bdc78e43c35f986d0302047c435bb500673065023100b19bfa942d03e7c79073d958563f7f937e43b0cf3dd5da930794b2e8c6c84b0fb525eccbf27cdbc6b44b67cbb06c032c023044ecf54b2e6ca48dde2808bbc058fbc2f64af2509c81de510c71f06f0cba6abdb2c6457daec43286859790c29f9a66850302047c435bb50066306402302e29187f635854c4201433d1963f68f58607631dd1a10eb83095f1d3360185d3ba8a2f55437f36967cda318cd5b0a14402306977a2e97efc7d8e66b8ad7908d0d9e0adde8144be96259e61beb9d4dadfbf904b75d7e19a33367043fbf7b23590a8d10302047c435bb50068306602310081edd8c87e61c79f4902d2b049d41d3d74c2e908139f7d692611bc886b3f67ee81306a7d6d277ee5b62c3a390f7ed9a80231008318c4e5fe7da256eab92777e634e32bd5223aaaa5e44cc92aecbfae792d8dbc9cbd6586cc9ba3eac21863ddca5dc70a0302047c435bb500673065023100d65beb1da4fccd29dda6ffc31bddede682b3a3a9d389d4a803efe03e476ab9cd640e18e5031464f2e0405cd93c232b5f02307b8689c7cd11be3b701a6cd3533b2a26a7bfd2e272e29312cae48515a42ccc3fba367abe5fe58740ee0b285267e42ac00302047c435bb50067306502301a2ebc17b5f34474f45b101d89d841be7eddac5e57737d90d2f34bf2ca815926520a56fd1ab2a745a9fdfd46076e047b023100c91992eb4ee478d989012afd994ec71689ac53b1195ad1eb5c6ee81e1f8026ab5ecbd70e1ef49a0f205da5dc87c9cb280302047c435bb50067306502303863384fcc8e830fa1acd7a69dc33be4ef6b6327d6f9e28c86f65091289c8e7d86819c80767c5806533e6178af906210023100fd7118dbefd55859748c89edce8c63a8c6db988e84194296fa049b2ace333edf21878d5e9fe32532cb502d427c710ac90302047c435bb500673065023100c876e7d4fdb6ef567b8d22af482268a312cb4f75742dfc9f32978b929611a9fc692e5447f6a09fc73b4ff35fb950d2b902305895f35e13c096e04a241623ae5707431ff9975edc38d1fde14d33bc3e1571cdb352784c09a2036dd9fa49546a9babf20302047c435bb500673065023008a0998386a84e4c56aadedd15cb68a065146fd7cae2e978168a8bb9a3a0aea10082aa3fe4f494d6e4e9836abef998d6023100961e782f9bbc05c01686058c2d30b348ff8278bf97163e7591350a2423b5c1a78cff7a89138294dd26e8ba8af9b01e9d0302047c435bb5006830660231008d1983417134dea78c3c489e841145cb2ba033c8af29e74b060d1da274b9bc209dfba0574143d38436768302203a4854023100f17791fffbbeff6b4bf030e0de6f7d0eea04afd01f3fc7f8efb037d16f2987fcd8b9ffc45afcd966370e6e60c33cf07a0302047c435bb500683066023100d552cf331b1edae69c149dfed9c272603630b6982995ac6cbd5ef9c8446bc2fd06958a5ab77606939dc4a35f76e88b57023100dc3440678d46b7775c226bbf3094f37451fd1989c2f52b207a9c78eed84099988f05fc0e381d9a9e63168450046d9e420302047c435bb500683066023100bacfeaf1d284119abe7c82c5d7d69a9d883a1cbe3ad5093c1bab0fb81216fa0e20abc07d9daaa5c185c28272465154bf023100e153f936328537d9ecf63a3eafd83948770ec81635be7633f5e32bb391e3dc94fcf34b3036dd56cb78ffdde111fd84f80302047c435bb50067306502301c557d9a06cfd13dc9e06427854704a4835adde6707ae49ee77094da47f7a3aae21ab85a95b907481585f9599ae4a219023100b91e7f9f2ba000ceef36493ea59f398327638c98cbcaabb9291dad02c4be286656dd144e1721c43ab2fbe7dd02389f980302047c435bb5006830660231008cbc786fbe7d5c4e3c34412d7b427b955d93ee3c14e38fd8610a83d81c4e1f1538c53250b70631cc9878d600b09a1808023100b1acfd06b4eccc70469bb54b6ee0003488ef35245b92027ed171d022c769156e5c6e17c18b4b47a0d2d098617f0bc6700302047c435bb50067306502301bcc344dd3368564f1516111b3ee17fae53f04d57e18b9c6ad7dcf6a7e21e10a45e8048b686f73033501a839f13f6783023100a8b6662bf0f90a489634ab54ce5d9709d301b5d7f8946c6047bdcfb410295454269423236f7fca6e1726fa119a3b9cc60302047c435bb500683066023100b4b01e414a464513243ed9a51083834dbdd6b5ecd6abe5c780ecb541e0bb81b7d7b600d97cb88f8a48e83dfe109503130231009884a62d27462219a0e7506dee562c21cb3b6cd90faa29f5360d9210a8d061c3dda3f7794d6a03ff2b72d8263f9511b40302047c435bb500683066023100e639f98e6522b60999ed36f0c23e846b588fb26a219bc6d49c901bbe10db0e65e7c840675a6bb14b38caa763e7d183a80231008ba0b736340a038aba9a9967637dc88b0edd39328e2e3a58b5ae84cd7d6870cb331c7f761d83d26106bdbf9e5143af810302047c435bb500663064023028dc443afd7fd5a78cf852d42d1e1156a2db8b41912f153d0c22c19b67a8c950ab983235d9895014cc8513d8dbb858c70230023849cb490a4f3730e190104331d2eb56452be7fb747a8e91eeb10ec0838225eacca50adfe490530fa6885faec8ff200302047c435bb500683066023100931f150d69ad113a01682917b6e424939e3a3d71c517dd3457ca385df77aec06695dae08f0231c0b56a51436ee78327a0231008d6f03591d440a6087f4378844ff62557836cef339f626f4f97813b537d405f67f6d81d5fbd8e9ffe2b97e77b39bd0f50302047c435bb500683066023100c26d9a0146509a9d8735fc6f08664e28884a496f611600b9b3defc12c0fdd210f7c36f52c85d066c6297fd23ab2dfe10023100b180534028e83bcbd91e9e10a7f32a8271357f0f4759a3819e449d9b4389709e4e95e7eda6b3df25da00c088a753530c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301650c058e12d857d934de50c7027e1fae5bc1a3a0f39d6ec5d87378dc07b62c67b3fd4ae00d525f219347204555c715502302f8293e780424f169e079d0d21511cb1854d2a8dad04e829f60110fb9270d8be7fbda63f5508b31224563d9b892c29110302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023036082bcd1feece7716c0b03a127b488dde8fa45f088b68f3a1610d1e2fc57e17b9f5de68ddc9990d2f80ecbb9451ea940231009917674c81c499864567ce4dc92c8922d09303a1b97190d1b8d9e06a0afd0e86f5eced56badeddb40e6ed02e7ee1a9860302047c435bb50067306502303bf1c1850643b53bd3647b34844d70ae0164a7d565493ac26f14ea7714efb135b487764d4d08418aa11400b54cf1693a023100baaee2507a42c126424b1ceeacbf6e0f020b12f325f921e1e7ce11ea03d7b8193ea3daafbb3ba9346d54c19cdea368200302047c435bb5006730650231008aca51c050abe730d2c1f53b146d70389e31bac78cd1993eabc02639ed7ffcd66efe78d6e37165560009d75c7f5df931023048ef4d51c311a9af01b41d78d2db398c3e8c320f297e2ae68f871da1fb93ab36a7296f2cff1845d19dfb8c4c517649ba0302047c435bb50066306402304b3e522576ebfc99ebc57f21887dba8914dafe572f81e341c5760419f723b089646c5b431525cca8e8fd784ed6415f2d0230464f9f9a3372c740f60e60050e0d0ffbb8b725aac4c66eadadfa9682149631b736096619c09a398e451a578078b5c9860302047c435bb50066306402304d2f2f19592f3337f81c01f7a3cb6cf78b89ff9c8a706851629aee2a96d6cb4b56aa35b6795d7dce6a2ff30ae99c0f8f023009bf009410c9e9b7331dfddebaa7f25a65b802808ccdf652fb49c41b1736fde1a988b081b91e5df715feb15d035177170302047c435bb500683066023100ee66f01c9c13f37ea3a9522992862530d481df07976b83bedc29acae81593798d46b3f3ead712611c53d4be15de8f6d0023100ff7cf7ba2a3d10028f59c223c650a6d8cb879f3247c58e9c738768c09956be31907c70b8586ad207892c9a1091cf5e760302047c435bb50066306402301386ded8e259ce8f599656327809456e4adc4a5f0851556c7fc5a1187b802ab5086a8df1b6b25fb09bce448ec553496102302f274aa79bd66f1a25e837fff05a4996c8e90bf12a98aa352b07ef627b98c3b790c49267e3b820a20dc6b04bda57830d0302047c435bb5006730650230409f1a97ce9039a86650bef10a1f5c0205df9b576413ec6ee946f6afb500acd8f87af5780b872b781744670afde722f2023100f7376f780d4c9916c730c3bf84d9f7b4a9392a648df2b7197219c5729dcda6a5a4fd78ac211970554797e5e4ab8de6ff0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300586116436d81083e038e42cb24c47d2db8cb5d9d75d91798024985afd6f16c30546e2018e2a6d4d104ee8d4a74c224f023100b7564479ffc014b80e6ded32db762a94980221749955b705b4c3e50d90fb76cd038a817cb855fba713a6eb375399a1890302047c435bb50067306502305701c4062bf68690ab4a66af234f48ccf27b30675ce0f13136349f7540467957e4280ab347e5eaf66bb8c109fa52c9c2023100ec1604fa097a757ef16c274045d04e27a3ab746531dae41b594caaf9c7a82d82c9066284efddb4c007e51126c0aa03980302047c435bb500683066023100dd804b7bdf4d290dcc6081f988ee5e4d3e9a218ac206ed46085e1a469f03e506eccb246b7120366cc79d5a8b15344bc1023100c759ee07bc5061fe3adc052391a0e45c5c4f09139846f10e55db7ac57a0716c89c14c4dd34ba28abd6d0c9cb6c840b5b0302047c435bb500683066023100eee7b0272a790287ee3baed1033658e65adfc0c3b6ee564f883df958e838e4cbfcc8fc9105bfe96c9b604d61d0c38a31023100cb7a87489bc385f4c490c53a720e3486ae25abae034f6a9a6deda2f802c2cef5b7d3ae23fde009d9cb822afcd3bc8dfa0302047c435bb500673065023100c5b42b50a99a132a4b4799904647d272ad946f926509677d9430577b25919ceaf3fb756f29922514f67f16af33a0bc6902307c461b9118ded9a400468d202a134e4d40e0b68cb8096a7ead9f7364045caf9f53e908f0ad9b3a803941ea22b706c4830302047c435bb50067306502310097cf2a5760c8a5480c702fab0b973a0e0f26e955815bf7ef5fd1944a10310b80c81930ef165629fbe97df03ca3ae3dd102306412a2b568cdf665393706c042bacaa2bc0b4fda1139e559c81e1a4a66d548e683c6a62805e9eec843c46d2343d9a6e80302047c435bb500683066023100aa2d5a2ddede85db9882bb5bbcab05ac7a4a2b37e47cdbb8929a1bc3eeec0ba10369aa2ab680d73da4e34f385142307f023100eadd827a69ff277474e3ff19c08da2aacace449bb12c63658b244c01b85d85a6782d5d6ddf76d89adb7727065cd96d540302047c435bb500663064023015075b3b01544cbab02140351229885046e7d2fd1beb1f1da8b91b65a2aa34df4e8f4ff8eca5ece66616ea0dc023e45302303c4f6a08c6c0f86c7127b00dca34c1fe14565d3513eff77974385500fbbfb6d5d2060778d2158fda743e7ce91d2bc8760302047c435bb50067306502306b3ff8582b33bb539d39d9d233c5607d243b44f0ae9251e01df4ccaa5106def0648a43912da70c8cbb293ad80a651ad0023100e7e072e8e2c1ed31469c4d5430281890392017890566db28ef1137ee869a20c1ba0b3664aecb7ee219dbf0eac4e3e8b70302047c435bb500673065023100d0c76f1491b576fd0178051372e09e83ef65441e3d7c4fbc73317b1306d8882fdcbd2fea8af4aa62488ade47745a7dec02300d74166b02d66cfa2af47a68e51e8b9c4ee8e2d3bf2637e2e569d9d4ad7e5283351a9aa819cb4d81f6b9530eb3fe9aa70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304765d503d65a8e975141a482657d307466a1a98a0a1ca9e9b6c190e1249545eff255d8796c3022e12627b8fb08482db7023100fb6f26f9e77e751cfee23cabe49187172852441b4627365c9e3d504c67f03bae0ea68b897845b5e6795ad4771085ad3f0302047c435bb500673065023100f0ad50634a49b95dd0a7a82af5896cfeb1ac8f85f1a2a9eb81367b7fdd325aea5239d8024f712e94ea7a7241db13accf02304842d7875b8ebe5eaaf7ea6bda4815da392047bcbfc13e30d24d8d7388d2a8f46fab63f6e1e4eff3c6946fcc60441f800302047c435bb500673065023050ac82cdcd4e3be7b5fe79e8935e48c12f4c03ac03d95221fbabac486fbe7d9a0853347d15ce205a5edb7becaa9a50e2023100fae9d741341b0a83186650bcaa7941b82a5ad43c5f2fdf8d33efaab8afed8a6aca9302447f76aedef2031aae67c3170b0302047c435bb500673065023031e7e417bb342fdba3527a053da7f2b25ec90500a69f64c2a79ec098a754637d492e5db4abbbd7b753b890cc3b5c8882023100a1b6c642153a640b11b98084cdf9a1ef6b8c52a8453c49292a59aa38a6d831e045e8959dd9dae29585f971bbe0b27e650302047c435bb500673065023009e4822a9c376a3b57a0c8e477d73eadd1f29ed701a0be69b3225a1660f56279a4f1a928515475c0c970dc2b56e45ed2023100de8f770d03ad86f096eb7141cb0c9985efda6ef32ccf922f4808a705742ae5e5a7f4457f5ec2e41ae55217a6e465b8760302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304d13d961cb6de74828b4ed60a78be4ae15392268e8afe4dd15117c809902cd16242812e40eb3963d0960d9026f8d338a023037851e9ec3bdef6a786e17debfb2e251b97ded508e6b640d1bc757f380d231b5282366d87c253851f39210dfd6aacf1d0302047c435bb500683066023100aede9f25d07ffc9fa3534680fb67c5d38a5f921e761ed8bc699a387421f883887ad43cfff538e50186ab807f25bf998b023100a00cb596afce28bf9e524074e06cd08f7403b5daed346a648ea1877cd6d1e670d7a6c8ad026272a979aca353f28c276f0302047c435bb500663064023039253fd6796b26c2a34cfca9e485c55b04228bdaac6d2235c7335f8690a9ef7558d8a1f00d6d7a80c5592d30113e61580230090b982813f0422f66891adcc6e7f90b09b9a4c9adba6ef972fc18195fab096533dda202dc0836b6511067c41f4904440302047c435bb500673065023055a436e86abaf455a49a117c2f7f696e32032fca464b1a53d08601cc21f6c22d85ec333c847dca49425c4edd7decb9e4023100a385f4b76260399f991f918d3d46fc5d8b6589e032c3f7e878a8b8c0004900e7302cb1b4c16bc7c239b36a1dd05a1f380302047c435bb5006730650230551167f5dc930bd2fbcfe4abcd035a7ce7ee31d57a293e58062f5c10d7222c5528b6e44af38c2b52214647fdc604b57302310096a5d149fb4932cbf52217b287d118a5d62cfe619bc4a9e71c764e33555b855e156ba22663bb127e485f8802a55283b70302047c435bb50067306502304e205ddc1274eaa84879e0eae66165a33f2639b687c26204f9e34145d9652df251f9afed5e2f2836e6adad31445101b00231009c962e64aaf98cca08fa6a8d1182a8f8ecc4fdb515f380686e6b4d3f0f6968c5676845d9aaaa364be6f0f5426d9396630302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b1a2549600bd4525d3b53e165e1865435e0219fa9d64100c468574f8d7696f02969bdcb6d5fdd9fa7e36216263131d6e023014c2ce5212b91dc1a9bd9494a522e82339b823f6648bfd61f6c120b7b866a7118d277ee3cd27013d41ac57829622a2760302047c435bb500673065023059c9c1a1040ac9c1c4347d33e0a36e54f4631920b8418b81830c5aa43874613673d63b7cb89688923f7e678479fca2e8023100fd7bdf4aa3b480a27a3848f60f0918e2bbc3549c450b54482741b6ccf60cf6cbafa05391c785fb37bfe9d20ca98be7720302047c435bb5006630640230427e9d683f60c79241d28cec3e157593f3d2974e2b9658b35d9f1b89257620e3f5a5f840e75381dd1648b76f674b0b6a023028fd8d220f5a4fe6ea756cfbf7a6f167d4a0fc3bd263b6facb3f98c1ff924f70b90e99d9fb0f16993645cc4030b6f3650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ee126ec36b4dbb7c9fc7f8ab065d964dc913ffea11d2e1555b2e05287576d09874e1cbccd74e345ca808fa5974ba98ee02306c45e421dcb2d254d18e0992c85273622510c0bbcbbb61229e3b684da76d802ba49ae66a33e8ee6fcf0463addf605b100302047c435bb500663064023078fcc02862523459aa76f17f7e36a32b76facc92405070e51c9b4fe3d6dbb6f4a14653aeec8429a9ff45a585e944bab3023012d1d8c59465e02c15bfda826ca664ed11d113ea4942aa9122f0c23e7fd34eca9a87f2fe6ca79741f4552965273bd1040302047c435bb5006730650231009c308f449a0263e13139fae292af24e52ba6b90958cd3e797b16ba72a9be0e015d0baf8cbcc0a07bd42d2bf9b999a085023034059792ef9923a7fce360e46b506780145b51ff3c64986fdd6b06ecfa9ced8f96da95867c18dd813e76561f0a1200e00302047c435bb500683066023100b0b23bf963e5c94d3cd2976c59b1ce6ecbf4b39980e5367d434f7a782a9aee8eca375998021e83d5cded6f22d768dbce023100af8dd34a119928523cfbc16b78e7a84279487b2ba00062e88dd63316d0a0be2b0a44f0b5f040a1d636751ab9f691dc900302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b2c78f6259625b2d63ca08eb28e2e2056f1b9f16a16ad18e30c2513e0c376c7275add4282e4d24b4137e3c6ce071f9d4023100ab1e611b57d8aa0e14065b33866c9f628bd8d03f2e4eb2cb7c6b472ff6f5c5a2042f453171cf08c93be16e2cde8b67b70302047c435bb500683066023100a23a9977b0dfa41d9fa6154ec4b1277785c969adc04b4c7d09eb525afafcaf0e2ad4bfc96936b918c25edd547e665c99023100fba15197ec5a4a88cf551a00bdb0001f87a2517a1e43caf85f3027fecd8d0d2c422ead82421f1b0bb5cb93adb3f6b47f0302047c435bb500673065023064f2e8a622ad8a7f8b688ddfdffa0050e105a6332b8c159be856c95435c1f5f6c4d4a37d099949358d933b7684d79bf6023100a1216a09bbee5feceb04de4458ae2e5e083185c4b461f9643761a1a995205c358864433a890e524c5280aa28d54a8a750302047c435bb50066306402302aa1aa69cf1fb361cead4994cf331b6db5a7d0e52f33901bd43c3931bf16466e17a0d5718590b69102b0068744bb9f3002307d2dd6c212ac5377578d0619e9d2b9230130025d05c11591f84b554e5777deea53d635695f6c3dff366e8b1be186d6e90302047c435bb50067306502303b48b9b6059ebdce8771e7412fdfa9626967473af2b81297c0bc1d8d780ef7d8202f0214a4d727314b6c28e4fc04ed7c023100c930bf5aa0be3fe3bdf467eef247325972dc3b914cda39eb892b7cebf3731336ca3b7a42e78af8eea30d051a78a7a6fd0302047c435bb5006630640230623dafce2f0c03db3c83dd4154822cc437e2fb9ea8d4c316eaf5afea490ca9fba19a7e9e99c001fa0e947768dc8b28e302300af062ead1bbf65c5ed107fbb8055a499185e9c246983d654f06cfe4e4650b6a852fdd380cbdf1ec992cd915e59f0c280302047c435bb500683066023100d9ebd56a67c1fbb16eb894c472321fc39b518f1363e9f68a0fab6255b40cfa25bb7149fbc300f158591dacb7c714ffbe023100fa17004a527045cf079ba6a0b30ee2b76c1ad2d48066ecc7e64b9718df660c92ff5ae4bf82f07904114e160f7792df620302047c435bb5006730650230258387f7d9ad16763a42a0d1079e983d6faf54442cb11884c49b33838b5efe36ffbb1854f1adeecbc4a5e9b615160d57023100ee825a6503670532ca1ff44b28c223e5cb4c9e67c52cc086945bbaa2cd360532344e0f5a052f2ca04d541721f3774c270302047c435bb500673065023100ec191c31e6078b2f29e663cba55d8612150b2400b3f415023803f23e9cc364694b4ea44c713223137a2cd99027096cc90230384eb23551d4ac3c0c77623a0d9ee56d7ad449cd94cb9afc8c25d37e6522f83e0f80666663cbdb46998ccf6ef314e3ed0302047c435bb5006630640230441b0450898350083cf226667876f1254687fbff916141fb1cc765296eab072d2de82e23d1ff45e79e25bf1f2d97e2f7023039036b3b933a06228570fd70b4442d83d6be113f3e6b2127367f527eec5c83c5d7af35b5460d8dfc9dcc63a29ef5238a0302047c435bb50067306502302b04f32824ca574435893d7765d07bd626965c8b95c4fbb756ec5e37a728c3d5bb70dc4a7b2958918f6f99c9e1643f4a0231008a8c530af43660dbb274b2dfbf76230c219b63f7125237788b19c6b85c4cdbfbc2afc2b357d7ae461e442aba6fdcecc70302047c435bb50067306502301dd740b3cdb7c154f4a878c0a2968403cd0e3453b95c52ee0579e4d761a59827f9bb04722497253ae5a29e75fd7a5adb023100b12f55cb051bf858cfd40cef529dfabc30da47a959bea59703f83b025e08969667ae7bd67e67d64f69f6a08e416b26090302047c435bb500683066023100ae04a977824285430116ad8e1a665f0447c2c3e7db65314cda60643b4c46e54b687b5836274318fecaa2c8c0a292469a02310080ae484f0e62205e49cf39cf6f95e0e6587691a181823fa9c4dc2e9017829889017d84b10c759859eca504dfdc543af30302047c435bb5006630640230223b4cfb527d830d64cc6d01b7ef3806e05b8012817b58806cedbbb85efecf387d0a642b637e683559994b5baa3d2251023021a494f7f3785eef8e69f3b3fd04385cbfce9d7162fe409238e3eb524e6f6cb6183f72501fc59bcb5a2ca95ead9631e50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230478be570b348028212255fe454d24d3ab371d100e96a192cf8013c8705f63422c7aef7c96fff2468df10ef6b3a7f70ab023100db5155e173d68d94c26b174b62ea647b267dc3bcf9aba53590e56de3f148c83c9229f6f9135dea07ae771bffc7f9a9910302047c435bb500683066023100cbb209c6e064d947556f6d3739a66e4d7a692adabd23bcf96ce7caca29886f88d169c034be4ad189b7d4e22b7f865e240231008459c173d2e2bce63c55e3b1b42baaf5c7744e9e126776df5547dc37b6af47bc0f1dbe23dbeac9584c77795e0219c8020302047c435bb5006730650231009397d9b7868a40b9a23f35dfdc84b72227248762eaa2f5db629ac450094b685699ec29f78da6e7a3f14eddfa1d459b1f023003a3f538834cb79aec86fbd15d8d738b83e99b9058467fce11ddb62fb49e5c825b746f877f5f222c51de29ee63e61aa60302047c435bb500673065023100a80ef98a2c803a6e2042732857626521e40c213081e1eb8a82145ddf1300e7ce751339e0b368233c8806c79a638a286602301d133009d972b07579426221b974df9eca297e7f08958867a645b4be266ad4e1f4d979db2f5b8a4a7424f9cbbe4329e70302047c435bb5006730650231009a227a1c953d5870bb83fb0872a924a85e8c8d87f8a55f2521ff84d740cc2a900bfe8409c6dbdeb59f7d5131aab66180023059db4ebbc3f820bc7bae0b85d21d3043c70ec76e321d37dbb8b3a718042717fb585d3f6813f6556c3102f3a05368cd7c0302047c435bb50066306402306fc2989dd4e752381e69b128852977ca7a8c6b4bbcd781856ec50388640b3416e69820e0ac87f791e71c15e3d15cc81902304eb28848d6b03eb07a24aa82a11182d8925861539908524ac5df4ceea34a53ab7b681703a64688022a9f268aae723ef90302047c435bb500663064023007f7977eb9336f79c695c30e218113bbc51454baca9a1a107a812972eaa8c07a14c562bee7b2fa2f48b8e0f547b07bdd0230608d669cd0d0ce0cd78a201fd311d9f1631d2cf3ee5fe4d0525d02f93ee6e19f1be70967b53238a1fe355198979444d50302047c435bb500673065023067bddcd92a87050152f83a82a0d3abbd5090726635250f66f769b7b545a5717750772151a3d8732a0a44a6861507ae52023100a3ef2a76f54fb074d3aefcfef605287f3f1b99dd9d05c2c6ee0fa92f29a70ace1c8c3c5e5ab07dd385c9ea7a76b9e8270302047c435bb500683066023100e157ec7fc29832dd00ab5398b9ddf46b0076912e91230c69511d4b846b3694e38d05ebebc5dadfa63f2066d9d797772b023100cad767769aa567e054dffcac9492914e9f2732944c512a6071f7dbccd258c226ba95d01e51cd365d893cba88d0c917fd0302047c435bb500673065023100e2e688c6a6c486265569c09860b6f1c3f070c4f4deac77bf365573cba179176965d89ba50b6a3e1c27504cc1b7d335160230368998075c5209a2362a8681e00d875709a077c7c2c1eaabdd9433d94b3ee0f67e727f7807e6eb6687deac97bc4e33340302047c435bb500673065023100fb673f30f2dd6ceece1e0684792cccf08ffe72a93ee8e95847cac405a9b8eb24ded61957d4dc8e95867db2e7d1db4f2e0230648b4c95685ba1ec1662c6c2ce521b3bf9e49d3fd221c9191482f152ce6aadc933c447219647b5554f3f3cfdbd6dfe580302047c435bb500663064023053bd17323dd0ec2bafffd12085d5ceb89c607b6f0ec57f2c6c76fcc4e412da1929fb63dc76bd5bc56d1fc824a39fdb9c02305821e829201bee4eedb1b5115ddfc1fac64626934a349b5b9e03b3258f2aaf18a0f567efec5f4a2816366da4fbb9554d0302047c435bb5006730650231009113ab4f2d55356feb55767c85ad670bac69354d02ff790d28e86412451573155fb4792b117c6c284c18aaa97b95e4c8023032de7a4398d77ec378499d8e6c7bed23e0bf9c2a971ace56b487104a9311317f3a6ef33df80cc7beed5076e7d0545c2c0302047c435bb500673065023100f4a97202409c9fdd4f3594edf953170a2781fc6efa74d2c0aa8c396bda4a1c4006e13467a2e3211f1f3d696cfa90d22e02306dd2eafaf9a4b8330dd220384761150f162fd2f0779952fb16e2a5bf3149a12ca1e13fa1c941ee3a76b0f7f8603044730302047c435bb500673065023100f2b04808fc1f4a892ff664db50b198793aee3a67b1f233ec78794da7e2b79fb68c6ad4814264ce9be21da2a0428cd0b802305fee661e0835349710b51e4546db6085fd22a3c3d577d4de21a005fc9e2acbd6fd3afcc5266a8168b23231bfca476cf80302047c435bb500683066023100b35efaa9fb1a8bb94b8e5225ef3e5f88e6f0ba85f76358eea6e2e45f50b7a92780e7404001f285597e0d73829fd0c1ae0231008f9908df3c8f8433287292fad39c118f0446e6ed6d637cf982bb513d40815da1fd106f23ecc01171b1f78884297790b50302047c435bb50066306402300a23afff11d3774cb6afc722e32438515bc4ba39b0c45b93b1a35478494be98bd33b816fe83c350acc4daefc64be7412023042389619031e63981c92266fa3d26e4be18c8300d7102d2506c5137e225f59184bc69235561acbe0a9594630e35454f20302047c435bb5006730650230475a6a17fab31109a7179802db8f0f545ca05818ddb8a56828db33f42d1911894211b2ddf9f1b2da12bca143d45773d6023100fc6c83b7ecce6dbabb60410b1825c02da5b0196f596962997e3e58a7c2606bc5972bd6cf8d03ec673f72c03005a9208e0302047c435bb500683066023100d39cf240a1a00b481690ff87f3300bdecab899801c73d4d49d92548a8092b4499b41b0a780dd08313f99f1ac67b1da23023100f20a1e5b281477a33f79da692cc5b6baa3ad3844e7476fbaadbfe9c4a0ce55a3ad3eece8719d272c72c072d03ab4e8280302047c435bb500683066023100c341b31ed08018aa401ee512c39ef7b27995fe497eeb99530c42b927615d34a07671b5cb6a4b8be95bcf5bf75d12ff9a023100e6c3a418078ab38a1a784c1d6ca69ff0c10a2557b18d80112fb18e3f9e420fd19d4b97d365a910b214d87c13e03868e80302047c435bb500673065023100a6ad2cb508d045486bbadefec4419345ac4885b676a7024820872d7b54d5ee3a84944c39e8054fa900c11437857915000230727ac37a77d1a4a2c8bef83ccc0bfd6ed3d566c31d5577f84d815daaa231d17c3ff82a5e5edbe187cda1b7349cd375650302047c435bb500673065023072976c393c83b8f292e358b3dbdcfadfab2581e51a11e7f67ddc9c33db3460cea312d7f8f608d681e136fee2d9f78965023100d267a4f2a6ad62c68b75e61130946b6cb12c7eeeab999bf5273755b6c0c8237493d7dd4acc5535f99ad2e4c6d3bd24a70302047c435bb500673065023100849ada2f8ff86a294fb31d9a7aa8edf255405f423cd131398d248db3bb80825e999a7a83285440b12ac98e4d038d5fdf0230358586b53727bf06ef19f224eaec136cff2ca9086167831c07ae361e4358d086be77e4eae68bfcba7c1f4b4d7f9945790302047c435bb5006630640230111ed1362b42eb39011d09cede004e320ad025d4454e1d27ecff8bf29aaf286ed3f4e0a55ab4b6dbc572d72e9814b350023037a9379200c4edcdb75521382095e4f5287fc1c70b40816d20c4013bf31898ff40feb52c9d5b370c32d82b0b3d073cfc0302047c435bb500673065023100cccc0f186c7da406ba598fc6089ece69662cdf37b95868cab610ee0d6daddc5fa98bfa1517daab427310a15c1ff1e55b023053d86e401aa5a649769fb6f0ae214d0d1d54bcb35d1225661470541b2cdeb3a364eda8f67c82c1858f0ae6f50dd2c7cd0302047c435bb5006830660231008924623a851b1584744d2a6ef78d5ca09954cf11ba3537e4bef2199fe113b0e0acdf9b94f213693edcbf7eb96757b2fc0231009344c31ac4374e7e24f451e3ebfcdb66385cd4a6bfb83cca5da33913e00210a963c08c1a6e5c386cedcf438d0263305d0302047c435bb500683066023100845305f776e6916fcef4278f9b851e20ee52112bcc5fbafa9eba368bdb6d2bd8da6e29d8b2b268871cc35ed5aa393736023100ba87b39421b8f6c52a2e3faea8219985e2d3c012d229ba5fdca88b6de04196c3bdff3f0d8ea80787c2bebddcf9e8c93b0302047c435bb500683066023100805ee7539bbd3d58732b66a6b4b5450dd112ae86d3aee37c7cf153682a6aef974b38dd90c0e7f08a12d6e2569d7da982023100ad5e3fe615bced325be164d6e6319b8b46d4e4f50ddf10fcfada56f9f50db79a6026d6de6889171eedeff2e5400463b70302047c435bb50066306402302c8596d12b2d6ffaef8d63b9e0243b8ec5cd8bbd8dbfcf52b9d2621ab026667dafd06b311e7626ae6ff65a49baf74ab702305e4f35e290c5d0fb3413206195489b8387235150aac9e264192a4436789ea08c39b9bae08c2cd52a10e1ea23eff57bf60302047c435bb5006630640230054bb2d918e737b00eb222ec5015b237b33d9bd9208b2880f6fb7a583dfe6b8d9df82251608b8daf185bb88f461c483b0230469f0cb31738bd9fb30ea6e737547c3b329a32ed99399cce572b656ce7e015bf5f8211757192211bd62a76445c0dc81b0302047c435bb500683066023100dacad4e0f3dd324b9ab473f5c2db836c4b30765d93fdcdc1e6240129cd63bf0d822283b1f21961df9b8e80e27b69e254023100f91f6a0fc14c9e73101dc20594d364c8b3c97d56fee84d8f57d856b49848b938a15bceea2dba7e83cf9deb54828eefaf0302047c435bb5006730650230343ddfda1513db384ce60b6fbe9d1a81a19edecf08795c68348e12c57e0039e29fbe56f9312c333a38dd8edcb6610021023100915dea180f514eae292609b5aff02eefa690e54ac6ed7cff248ed7f7966ec57368df1ce427a83e4e49143a30d7e9b7570302047c435bb500673065023100c3a080ba20ab55b7bd516d268919b1c217dc10b40de5492911b535b3e516cf3e7d6ab19f0a3466585ae488b612819037023054413ab7767668bb238a209429a13afb0eacf662201524a09dcf64e23a9d1ca19595285c8973218ff68c79e87bd764390302047c435bb5006730650230366a7d2cd57e50df543fa34f7957e3ce3a65ce48481352c6df773909a78a14ef2c72a27f301dc9d8ce1fdee72dc439f5023100b0d3d7e456b09ff5fb4a02bc1b7d35737d98ba6fc9850a8d6a6877fd98433e01912790ccdd02aa7bd57fac8542ac5cc60302047c435bb500673065023100808322d7491461d655b74dcc26b2666a4eb11fe08bab5419234f825744c92c49154ca4f07a6955dd19ebd65d4c498bac02306a1fd7ab68734589198d9d243f824c3bdf6f2851cc81b9929d2ca6d071c1cb9b7714ccd39dff910cc35f1fd3b48af5f20302047c435bb5006630640230470ef53c6a9ec051c1005d247f86e2122031549367b31b3f6879157e68e1a09d834c1762fbef47d1fab4d247842b128502301671f5ad06edace1378f57b75270dd144671fb5fe8f2fc42e186bfc160b36bdbe22432c26e5c4c41da2da306afaad14f0302047c435bb5006730650230374c79c3fb0d17bd4e4e40824ec2569035974810026974a285176b9f762e18ca27064d58f84db8eb8153a8cfe0f441cc023100af4ff298e0a2cb25ddb014e4f8c0ea0a74feaf2c11915f12b990057baa76ee01d52f0ddb65092a7d589e88499ceecf6e0302047c435bb5006830660231008a5ab4fbe5f1f0c03c2dfd74b489a27a66a44d1648abae8a3d49781c48e35b4e68614d6ecfddd4bb630a3cb722508bc00231009a40e4abc01703c85fb28a480fb8e8e411f2e0811fb6a41a5273043db49390884e6ea397593d24e74e3cb3a99c2528a40302047c435bb50066306402306f8cf52d94a6f210a2eef34fa95efc439dd6870ae91ae3c70f3faf2dba04b625ae7e0b86a8b6db5fd7670e557849f6700230757bef6888a9d04095e1f98f34b5d3ce9572f7c295330ad1cfb7c60af5375606be8ccaecb69704bb99670d3f1b2fa1ed0302047c435bb500683066023100d230176c460fb05642bf9fa4582e1dd22a8df810120dd76153903958ac25329625445c7552fee6004e2386ba67115421023100c6ed90818cf302aabe56f3221ede0050f90b1c69113f1452d986b4ee66055191a9b913c66dbb3364e153284df766d8490302047c435bb5006830660231009c25252eb616a8f9ae02c49156aa62511bdb64e34aed6fc2f743700d5ffbdc6dfd768d65014b13bebceb1bcabea79434023100b89666474895b62221d04156419c1cbffd4aefa08110c9c1b2c887f2a5d318acae62a08c2e351f5ef7b22e6df83c57630302047c435bb50068306602310097d79ebbbfd39cfa3736432d069076d4d2ea7fb88d00422896dab28fdf4cc5efe5edfc7107cebdea6bac897233f81318023100e5b350532e9f9ea238ac4e33cec21af39031b3625d184d76c657d64b7d2cb37db683fed11ce9d001bfe0a28adf20da890302047c435bb50067306502301b301d14f7e9a51734ca49950f739717969330a1229e0571ba39edb94034730528c0e783b3369c09ccb566b66f91dc57023100c74e6fca59cb8a4e40f03e9e643e7f874e4e920ed241c2c7788c4605b895d777ba16fd02922b2e2d1fcd03766778ca880302047c435bb50067306502303ea3b7ef07feead80a83607265a37ea3c2decc7c360d258194da1a042c4fe9830b7d014ee866ce5129641787d969999c023100ddc251243d908d027e34049cf0072bbfd70079382d48c1789b2db0c585ffc7f27ddd43c4333f46cfecce2ac75fd8cc090302047c435bb500673065023100a3d0ce7dbc3516f5f3cbad81182de55ad059d7891cbb00633190c1fe04c7f9916bb5fc3e928ec1a2d1d539f00db350b40230316c3cebdf8b53df6edd968cb771a110a867bc6b8f4d9dcc173aeb56198a0675aaf24a9fc7d44a37b686c505d198ca8f0302047c435bb50066306402302a131c8a730a1b19a3736bfb35134c4bd8dc4a259507749b655629f17fee47e9838c5f5aabaa5fcaebc97fddd60fe1cd02304bc6b0f967eec11ac09226c0b2de6de0315bdc36a35f36342d2b782f8851d65e66a1a671f2361f09755321c3316924b60302047c435bb50066306402302b547ffeb5c6c7bacac43f5bdbad443766531c12db2a82ecd0afdc27e6f9a45aabde30455217a97b4788611425b51e0c02306e16c7a3862901ca404fa3988d7e6a3410eb168a070979c691c0947e3a210c70a5380dccba1c2654363bcd9d9d94ff970302047c435bb500663064023016b01f415ed4690e3a5b072b23e4ec32fdfd36ebb07eac449ef799e9b9194ab82685f18a1562f1928b8dc5484ce8e2890230262df7784bd134a35d0d594e28f18430f0febf21e8b40c57bb1eb95c87ccf43f728e1109a3035c4d2cbe51b7e02b7e020302047c435bb500683066023100d665aba6d625956c45f881b6f311fc3efd11507a0562c8daf1897104d7268a9a6f50fe4fed49b8a7503079c644a3452e023100db1bc575c2b80266b34abd02adc03e097475dbf8e1b42219cf53323fba374a016c1d8cef67eec2aeda4b7f0cc09c46a50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304d6824ef57d8db0da8f7c0198fc8a6b11e75a00456fca94a6afb740d5812c4a773ebb50794588f4ea7435a2ed63a74ec02310092fbf4c38609a7f3d14a406dd449be96c4bdfb93a7c86d387d17f242c35d417225c7a209d1f3abdd2a3fec2196ba0d6a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304b82e16aecdd121da3e32c264a6402d5034ab50d8c2c03fbfea74bee3e9e9eeeb9ff8ef8de8ec6f514e48062759139d0023100c1a0f5863f958151a49e8371473714723b0e537f24dda51bc4f1774b37cade53266ac919bba2b6e4f5dacae3303c730b0302047c435bb500673065023034c32a8817c04e0525dc448a49b9c1fb48291ce8fe06d1e3f0e9a28ca24c133adce975193d38d88ffbabfabffc4cd046023100e9c58c9ef9aa339b8a594077dcccf5ae3171838af50d8d3c070f67e736f5c5314582cb6c5667a7e75c2b1a3fa8e18de20302047c435bb500673065023100a38e248d3bdaf434f1c0dbfa2b784a617fe1ea87add225d797c35f8bc198a31236db713af82a7702c124287f775a22e402303bac40c3185b7017eed69ef91dd528f2c0fb078988043b81957ff29a4b270e7c00f81a8f5117b3eb28e0a3f6d1de93430302047c435bb500673065023100860c58f3c48be023527bb2582ed30d70f1954107e20a2f67d7e6440b485231b83969224960d1a14b5a47d87bd26e8440023026a8c76276fe2c1792ba971119dfdfb197b843b670b8e917eddbd292ee82c84627384da39da1c084bb576e2c9b0b00580302047c435bb500673065023100a0dcd70ef97a8a41cb0710c097df688b02af8639a30cfbcc49405f259c18242fcb6b2a265fbd11eba07cf5b887f97521023044e43fe61ca5d9230e60230f951bd76d8417400302bdff860e8db498e8928232b3c9a87454e3380d22e21454ef0d08020302047c435bb50066306402303a57aae6d37689250f65a7a40ee04cdf843878ae1c51f43626857bba51fb9cef579e77781ca18dc9b41f8d8965f22e74023004cd9c5f79e1c03ca46554b8dd99f9978a084ef97ea23d0a29c51520d81bd99d545374c37832a823859554939cac9f790302047c435bb50066306402303265c010ce94bd5f13e8c667b0074e68ffbdbccbba78b89a7d4291012c812c52668ad1168a35129e86a1f56cdcb8586a02302b7fb3f8fdc3875905974713de59b6762f532cc24a8a689073c86897a2cb69adef8a758061797c836bde49b5c4d5eba80302047c435bb500683066023100f56420555e0be400102a794d8da00b4ceda166cb962ae56e3c96db2f90d6d0afca6cb7ce1fedac1a057a191c407491f0023100ba9fb9b248956937e7f9c18cba3a2cde1d03115a96eb4c00cb340562c52936f6e5f178c76d73c561e25c8f2d983485a90302047c435bb500683066023100ac9d7c14846ab988467f6b8551a38a3bfff6c1629e6eef28ec7b3a9383794d8a9ec7baa7faab67f92c3c53899298b224023100cdddf480c549add15fecdd7f4c14bbe7542e56e6f66146c24e0d658f9af997f4698d85cda5c98d9cf4d63f26fd0bbf4d0302047c435bb500663064023079835e5d181201227af5bea6229a11465f71a0b6ca842e76372eb05ee2026b1bf560449f38ba2ec1f51f68857f4683bc023033d42d6924a80809ecf8d2215e72f7c4db12119235b8483d289a7289deb644ddaa2110a46d5fc1f669330b9654107b6c0302047c435bb500663064023012096d88b06a8efeac16e362c614b138f5d978466d2e793eca85ca92ad7430ecb72b5e85625843c07180e271d0a524d3023031515364c70f254e44f3ec187d31f4b9efd78d0ecb206224287baf358cf3715749cf676573eceb4ab38b530aa9765b750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c686d54d6fcddccffcd0742791bc491dccf995eb7a97686bbdf7cddfd4d3396eb711c442bbaf03d25944fd74fdf36562023028d3527c04a8d83627c3a52ec85ff8199aecf8f838e80cce73970168f506a73457738b689efc715b3284b3b89f662ddf0302047c435bb500673065023100f9f2626aa9c7967b0707e8e84442adb524f348cc3448ae4f1a6251b77ab7c40bbfe4371713764524b82d246f8ba9bb730230645f1a63894f1a636cc07514dcae26d40e0b7651e1f69b758a1426d828304407bb6bdf30a25247c443af092ca4359d1d0302047c435bb50066306402300446854bcc02707b351278e90793ce2c1bf9299707724e195751f49e560e9acdb03560d1f1c555820772c80ce8b3eaa50230612271e2f4deb121852200f9c2f4d8f93b8d290e4481cef5ab7421b7e243ee71c26fd3f0685c62487e4e11f39ab168df0302047c435bb5006730650230442df05a9a0bfaaf02bfabae28430de441b8314f33734e982412e41b0a89b97db25a864f069d088857ff35217e39ec7d0231009342794a85bb7147c71f2e3db5d24085dc5b03c81a1b70b970f325af97fe1849b77eaa75f9a850a43a0b1080ea0da5420302047c435bb500673065023100ed8e6cb2eea9755f9a1ffaf19434c1d16087466bdc7bd4d7c7f96e6129c98382be15b8a95c477197a3b754dbfb8c4e620230678fe261544ec08fe3810b94f94937632f872d5fc4d6a7d38b65476713c641111ba56db1f278ec1f9d31c1a658a284ed0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310099444af6a4e7606fe001ca3f6cd7d9e8ad6fe9060cd58b8621d12e47b8d73444ba082d2a5dc28f1bdc6bf5bc6aff7d8f023100bcdb68494b91703ee6f0d6967d3fb40ac611562772bf1e5de1f4e0484b767d1acde364b3f48185d4bb84e154ddff7ba40302047c435bb500683066023100bfe697c3cb95a67496836a8cc418ed5e15c256a4858219952027af9213a6c512816c10e40bb2e4e3541e1c492285c7d5023100d998e5c43c2d0fba1a00d04503bae4e769c63a0c2bd80b6779c084e064d74f7528d49d73e6b88e13f0359532114133820302047c435bb500673065023100ce46c061ee38fafc2256049505ed434265f195ea1fd44956b094a37bd24a8a852549fcc3e1e6752f9435d0c001a3da7702306979743cae22a7777b390939a808a0a74533f28460a3f4e7c04d217142f81fa9079e0d50847a0684089dea670ccfac2c0302047c435bb50067306502304ae500c4b421fe5e32f8f589745328d260ecf9719406c6bfc72e82fc7101c7f8e18c99d219ae07b3cf608bc1d5cb739a023100ad1e7fd1da7ede35dd7dd16a8c4c75d19db393801b2cdb6da33b95b918c2fd67329e59b95b67456791b5f6fe15c3dff20302047c435bb50067306502302689cb43f95637d7af53da226fe6dfa04327e9db2565bdb88d8990e3b0f82a8550858a9fbd01286f28f4bc3a2e12b7f60231008134df16e194e3097eadc1c832e10d17226af5e31f79daad539d6c30ce02fd5c090e839e6caf9a4b6283b9c78dcdcb220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b787050b946002c8bb1bfe113d10ea2ba830e72968010e1c6f698bc90602ffd06bb2dbae054858e52d46927dc95716970231008eae656aed789e19c370b1b4c04c0bda29e568805b44d3ebb2c2cc80007a5f42d53627fa1e0cc106ba85b3e0848d53080302047c435bb500673065023100caa87169dd69363f08b5a239bc27fbb0777ac764e1444f68546f5620c90a13183a45239f49461c979d245c7373c4b59602302f8ec3cc33b2e9be0de2018c6032e3b5725a60f2b6e2feee0087ad16c6354ff54e6cbd832ab0c6c14e35b22ab3ee8dee0302047c435bb500673065023100d914e1b1c14ee8f0ba5a1c7017a5781d7d8ffd4da3c775c8de763e65b5a00161f3cec133b7bc41f65e7f69190cd541d102307ceb1d09e24ef342260ee7ef4d910cba99ca658a90c7ed3375e1db55c913b6554eaf023281e3051472572e1719ba010e0302047c435bb5006730650230166f465245ae80d24ccf99e576049f55d42945eeac6230ec9d9abcacd5171dfe18231b3143ea4f06771af181bc7bbe10023100a42a1eb30eaf486a32ca37ea7a5dd149f57eb1fc36bd03053faad6666e5138cd8e22c8dba958da8409b723cb58dca5fe0302047c435bb5006730650230524dfba2fecca63cc12ee540679fcc796db858d9a75824fdda4ec417cf0fbdad6b51b7dd993358076abf1985a3765439023100d40b8efbba71596943f564b186b07876582274a94883dede1699c9f57d5e73a6795450a1ecc4b04185d1a375657df3b50302047c435bb500673065023100a1a93b440ff7a34f4aaf377b5593d2289a579aa5f29df9ebf0b918ca8ae8081b33e3c6d09899991fc4de1de932a1d4fa02306da7508bd99067b3196a43d6b0d7f6d2980dc61189301e1a0bdcccd62c072036007b6261de06f13114ee308b0a1eb0290302047c435bb5006830660231009bab99c91c6a1ccf996c61860745bff08bf8c7d6716e3e959087ab71fdb78f6d1c633fedad10572b88e8df2e21814ca5023100d935cb48e7c25541e97809869dc1a7a30db3956344c2a439fcce05dc3db11afcf5194d676b04153e2a0af7d8341c4fba0302047c435bb50066306402302755d6a4b9bb1270a939e1080b1bc4017a5015841360da126febd8f8bd16c6a79282938b3d6815fa23de6d3150adaaf7023048e4b475343e907d15007d09a5bee63f312101378415cbc33963b4d214d38bf9bf2c0b6bdcef8200b9ae949c193d7fb90302047c435bb500683066023100e2bec6c71acd8819710d834f7937db399c537d8aeb328ed7667730232061a00e7921dd728e0130b2c626520d29d74c97023100bbee71235dad7e796c4b2c5f89a0701ad49e1faecad468e98c519fe4246a735dc12810555f9a532f225b141896624b3a0302047c435bb500673065023100b3fed57d09a25230a9070d650ad36d926238d6a2cc05728b521d7efd41ec18030927497aa144551a83d57fcc08560f66023001a768f93e245970aabba4d7b2eeab09e023912a9801364b1b46690ebdb69926e98275140a012328ea272fe36ab249890302047c435bb50067306502307b953e1ebfdc78b2c3df825d69e4e7f30d60dcdcba66fb82df86a16887755514e443546f42e84f12e0f1b2ab8b8cf31f023100814f0d2c1f4d5f9be99b856fb55e98d6ddf19e6d21e1610b8351996be6bb42174d124f1e9e8b47bec46b49794212aaf50302047c435bb500673065023100ab308e1095b4d945f8b59cbb83743ffacf5fd87867f605aa83c46fe04cee615ab9afbfc709a783bb768e0fb9597fba98023000864fa74067532112c7d3104b27957f5b072a13d7cf24845004aa57f4f7638ffbac845fc508b0b400fc57d272b2b0a40302047c435bb500683066023100c7453dd62cc0426a058555757a9220af65611acde854c258d3c6b07bb4edd587821b025ba0c4407acfb9ac51947c3db9023100f8d01b7288ff4f0076e38e3f71ea4c58779d494e1481714b545a4d252fcca4a7325dfc3a5341c13d670cf3a828aafed20302047c435bb500683066023100c43ad57a8233fb7fb379d6bc1c106a137c1f73761d9b6f8ed0211c7a5242a6028f43de88c490cba38a8538d75549891e023100f3e662e40d8110dcefca5cd24a3493d3f09605cd303eb94b35202bc885bdfbedd6b1cedced5794433cd9d52e182693a00302047c435bb50066306402304df02cf1827d11c580c8d27d7fb276cd89722ecea69e414850d52bc3b546cdc296c2849b7cfe229b0227e7150032ff6402301a6b320a83c108e497f2f50d5eca309cb0407eff57b1886971a38e463b24040b971dedfec32930e03ffe90d4dd7eac340302047c435bb50067306502303691f4b108a0cf15962bf172a789d85ae048ff738424f74673129c7475f111341f936379723dbd5312f064e79c7e577c023100a4708c87bd5d60ac7dc68e980d37d8037284d6d8d156988103293d0fab0897ebb30a51e2869f86822a634cc7fe1b6a670302047c435bb50067306502305986e687d6981e5ac34533b97e2786f7fb0354e5fb28bcb774904a79e18856f15bfaf12e706371a206a3d120dcfb5ce8023100c2e66467981f74f523b0d733594e33540b2ec9b264ba17691f2cf04950b18fae17fe6af539675b5cdab0ae766f1dacdd0302047c435bb500673065023100ac5d2e89406da2259105d97cd6840d33afd7386de3fc5bd43841087901054ac9556e6df4e770be4fbbca96704c2f4fd702301949ac4af0e3bd4f5281fc3ac24f65a6fa9412f48e6a7f7a5151736793cad4b6f9dd9708b6666d2b8627122b58e97c4a0302047c435bb500653063023052c74834edddf796b9a355309190204669965d15fb432308c097c858112ccf336bec146c6732e752034a190c5b2dc6be022f414dd3b806a66bff447a44d8252a64cb95dfb0de55e8214d518f84a77b976a6cbeb88692e904d551a75809f6c4d2480302047c435bb5006630640230363774b7f4250c1b8648af4fb4653be610bb6fbb3bee7cec1cc02db7410db045b2a57769dbc35a421f1f9e086f68853c023028ce7c4acfca1d8fc5741c591d1f09df713c72aa481eda63b470a2f57cd14c9c259176c9d8c65820798e22de3b7fded20302047c435bb50067306502301f1e18fac5630fe8f53adc56beafac8eddd4579663a488e5e3e5489106620a8fb9ccbb775b492311b7db4965e4c23f86023100e50af179e5e8fc4f12e9336aa8d01d2bc811fe0e200342551f40067e31afb16d468dcb9430b18371cd2ecf5b108cadc90302047c435bb500673065023100af4878cb65de24c067dfee68fd8dcc317d7b6a5048a4ca9cc7c45775c926fa0cf2f655a67b9eac04201dab2bea1e8eae02304b21f7fc1d7bc58fa0ed55f964a0208bb9f6452ab8752a8a1f0e00fb91dd9ef5499835800c7515dcc585936eec1948df0302047c435bb500673065023057f0832cacd5858631f12f0a6a0385843dcaedbb3e648ca7594fdebbadcc8e2a382a097aac6b5b8e69b44e631135e6a0023100eca514be30c268f055ed1c4d1744cb4ab7841819c58784c2601946d1deecc58888f643023676e70b80ff2c7e9cf2a1fc0302047c435bb50066306402304bc1251462f23fd1aeaba372ad148f0ffbdea53525afe58e7e6500ae3c865bf343c7c2a7569cb50d3bd5b442430d51e702307a5043a185f7b898a297e14cc93df45f0b9f9807e34866a391739200a5c5bc83602aebfca647e952aee0cceb395adc380302047c435bb500673065023000ace3446fd0ef3dab919e8a902f0ee9e3d643e3d1a57777bc43f882522c034fc4e97acd4bbeab1a404ab5f8e747dafb023100c0129cb21f72de8f339868712f4c97c5e64b604e3c08767384c4b86b0e345e9e644fe6a2f6b2f3422916e40d7fa07e900302047c435bb50067306502301e676771b66ec62130c6b81804bd3ec9605cabc6bdd74526ed427cb66429a630686901ef16a81b566debbd2b49233303023100ac8690a2f229212560978d9c0dddab0a7ca658eb1a38777149c88fad60cf7ddc6552570a99d818457979bd1d25b680070302047c435bb500683066023100a5c8875bac2153b6282de3bfb72943a7f4ede101e2f5e1e02f114e67f33009aaafa646f5a52d527c7d91eed31a4b5f4a0231008a8d44f946963fe84cefe66f36e941210fa356546691f78ef9375c67188e1b73723823d7e6966305ed904582ea86a2b00302047c435bb5006730650230569add5f91fe7324fae42fdff3ca19fefff0b089864e36ce9d7310c65870bf9e39af7817585d3b3585c344008b5780b7023100c93b151789e8e32e2f677ca01a57b6930591c20b3fc83dcda81b4f98977ca0c5777c10174f5bb3d84ed15a00da48c8420302047c435bb500673065023031012e8a9bd1b647d93b5ce8062aedcf4ab59d073aeecca58a6325bfd0eb0b80b1a9597b59fb9ff80170885066bb1c2a023100841cf76237eb4d97b8786a4cbe3536bfbbb2f42ea6012322994ad0c9aa0f0ef6616997b62eba03db7ca0901e22711e550302047c435bb500673065023100e384fda98e942a3744688795bf95b4e4a1bb7b110534c43ca2364740c7cfc2d8d7e78fa7b076e18ba4bc0edcb12b325202306f05a0daf33bd76a96fe0f20e9858920de42feeaf4c45a8abe816ba3501422b59d9fcdd65d97b95d2e29c38ffa9341960302047c435bb500673065023076da09ab3bbbb4f5513aa82e6d907d939019ddfbdcf1f55024306df1507e17a3ea101263e8ad9992d00b67b0c53e6c70023100a1eac484077ea49dafd33cfb5eec5b0b1ce3b31077b645d098400dc520257775c0f6256b005c0b87c65d32c9a260fd200302047c435bb500673065023069be33b729d103db542b6f1823d573ef383bf5f52260af392a584463b1c3697995b3ddf77232592de0fb09e67e1f561a023100bcef6928d8f9e11eb2505db717bc056aee1779a2bc325aa7a88fe34f7d3a8faea249b7902980e0a5edb5756104372b2d0302047c435bb500673065023100d81e0503e79b84ddfc68258444e42f16de3eb8457ec8decf383fff8cc62562437d07531501a4330db4b136268a01945002306b08f9aab69ad56b907b3136a278d213104f513f2be2c168a8db2df5e9c32a5646544aae12536f729598aef6b414859b0302047c435bb500683066023100ad5c857a38b0ed4d06085769d79ff2810a18f5c1683fa4da5c570d93428029f8f51a202913665eef6868c4cc73159428023100ba230f383e7f997607966749862c5be41a7b9d763c84d1f41006e817544cdfd9996200b6b0574e818f98201ebff7a8a80302047c435bb500663064023001c72cd36a000d64b693ee9472e5b2b6319a306aecfd10f03bc3682f65aad8b2221f4d7ae351fdb2ebff0dbe84dd390102300161271a9964977d6d7c4ea1fe0a53e2048bd146b79d78634e03b1d5f68946c41049f7895982cba5cadb5a328ecb29f20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230680a546d599b1ecd85989df7805e7e873b372e0b27ca048b2649a4d1759d0f88040634a47534eaca762714b5ccf3aff3023100bd76973457b38f2fb2a69464f8cddb7bcff693d7f924f6fd670f9eb056a91ffbf124f904bb2cafcf824e7261c05f3e6e0302047c435bb50066306402300121bbe904b95385f71727a4440071704816a007ef1fa80feaffd2a733981371ef4ed2f7a9d5d148d4976e70e7bec81502305c2531307233a4427a7ed6650478334e18c328b9a997da9f3addfe9ff13b5ca262ce76c09077dec780a05b9650588d770302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310097d0e60f58e1a2a4d8cf97af8e469a2118fd850e07b3755e9ce302dda8fea36ece673cde32e0081d46e2bda27b5fa46702307cae356a5d8112ec4d60e0c212fd3f6f037942647b001e47c235b8fa62da5fbd5d1fe3c848d6d29c1aa86e40df0938a20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305b227aee5ff2ce53f14585267eea1694db44a57ab14620d0c568d6d3aa67ad35ba51ccfefe8e378e001fa1072be16355023100fd604a7cef4eac7716ab7e8a548c879011680c1bda745a38c631eec04ff9a23801f574a0a539d1d9714f8bbee00bad030302047c435bb5006630640230619fe44d44719e33970d0a486c9f5f3153bd53a23237a28cad40335b91da4952d87d1aabae970d97cb11cdce13e88c55023058cd3ee49a2156166f4b28b7ca14e97a4486f09ac274f8263bcbdd8847205c2bff20f31390c5e5560ec40cc5c41c156e0302047c435bb5006830660231009d0bee0e32714eb04a174bfe7c0ea1c5737bfd9e589cdb335526fe9bf13c59a07173e177738ac3e23f6699a9ca1c1d9e023100bbb78d1d0f3ad5b97fb6c2c8cb42a74c9cb39d8edcba71fe32d99e73cc629b0e9da208374b22bcf8c7add2de1a0dc8500302047c435bb50067306502305463db0fc08b29ad020cb14f4cc66f8c9411c25746c9f3fc721ed975b48e5d397e2e2714b19730c757d3155878978183023100973725c7ad0386cfe660b5684c2d742b6f1b80e0f7159fd6592e2f54a9dab7eb9247876bc75b54ee5ab0d6ac20c500ad0302047c435bb500673065023100eaafa4f819f29fe8902fec7b08bf9ab903c453c1c73d348b72348257a076f32603107f5d6dea4cc13d86c2d00ba4d6bc02302759c9a0d6dab4acd6a082c48489d2d1723795028ecc6f919eef2286c24b600326bea9baae2351293da61b8b2cf0fd140302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ff359fb6181b620b664a7dff0e499ef6ab86d1f4735222d3e7f766ee771c154b3fec77038935d814de31b5fa3914dcf9023100e3b976f4c8fe2d31a1c42a567f02b30050902b8501a25b3155ea671ea46b48c45007356fa9267e5b6ded36dfcec494f20302047c435bb5006630640230446df70fd77aa749115e7f85c35039b6cf6b4875e0e26816a8db2bfe0c61010a85ee2f7fb95dd8307f00badd613d5e9a023066c17aa3f275e8252d9eb64019788277e32e49ad67f07b125558921665e4a052305dadd02eaef8ac8ba906f68003fc8a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302fc1093ec276c810ba6786b0bc15b977968e85c3234950867207621ef87b729d872f4652d6736398bc37699d62627006023034ad9bec33ef912a37b1346f3f3eaf7b61aac44c8271f6bbb32ebc14c47dc57fd1ee920840e72c582b86196f758932fd0302047c435bb500683066023100a39652dec752cd798383c0778b41dd1fd973580aa9686403a61a5aefc7a6dac4aa069283227acbbbc59fafa8e20fec32023100a488fbb4fb6d6709d9c29b6f48ceeb23b3dc9101f98c6df25df4561f8f20738ac235c4d401260143082f820f3712bf2f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a14ff6ca37731ef3cf73bed8e16a1c1105d87972afc78ba85745c76b4171f918fdd0b73424382684954bbb0f85a789000230039c2359fbe416a5b737fe84c5b851d9f5c086997269be2a0e180830b63e58945729e8e46035c925195932ce206b33fb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008f48f62d9bfba0889cb4078cd6717d7f5e07816b213306d501595b145205e06dba56d7c1ce695704737a7ff2b8e6d328023100cce4021080e3ccf88ae5701fa4c2c7023184c8ebe0db13452c1361d88094a58eb0b404c616a756daab6aa22a302f59d00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100afe33db64cefba431196fc6136597c0949236ef4b7449f9466919f5982c7b3437bbb96ddb602ebed1caaa84f450bf67b0231009d2b84de09d659b0424b57deb69f11d79a7090517798af98f3accaffd75edfab48a23af1b6f2eebd8aeedd62f7cde17e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ab24595fff0251af684a67de3b4375103e8f98fbe49c175da1ff77313cf16791b20061dbdd702de8a9abaed9e5f0ffbe023100c18fd91b8d59938bb0678f01abd35256c7499b6ea27b1a893aa9acae16b3f94a43e94f2c9e4b1041d030f53b60a3d1c30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023052753e8aa0d7a46c74e7caac663911ff0025f8e46a99b3a0f9c9ca403213b17e772a83b645bbc1b5a6be067299522d2f023100eb40e6d9687c9eaf69aaa4a11199938a9277b501d9b16340b02a7cc192d11dee5661030aebdf6b43d1a530698b95369f0302047c435bb500673065023100a2a9056778030d8b0bbe1d88aad43644ff0f2a2c29b83c595f368662640bd198e05b6036cc02fb9a72a0560397d781d702303b70c017a48369cc3f05626ef2a2f2f79e992ff2756bc4e8045e2defcff791bb88deb15fa2fdda0cfe02f3a3f3f1a34b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ef8720e9d9572a33e2b7bf4af96c768e7ee985fb097c6203826e5a0f40034a90b60dc764c43e40f6838235c11d77b24a02301a4f7d1a1e0610ea4438e35e88bb42a9c7d1c9b4c6a0bdeeab8dd25ba924dda8ae441a90a588d3f80c3bf4a969e934d30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310081d7ed6f6460faf4f940b48b81599d05bfd2333dd360b1df9776c72a45f92eebf585aa47aaaad58f928908a30cc76f32023100f222a360ee543962f07ceb228115dfce01e786c9b1f7f3c2845add3bff3f80cb836eaa52d9509fcd3ed69433dfb1172d0302047c435bb50067306502310093819f407e8067c8a24826fc00c93ec661505c4a57cfee55a140598a7c1df9e75e3952ed57f30a053ec32bc7652ce3b402304a55042f505b527d0311f4c411322da6b2a4913736c1fd4d3160126016585bfca498da3a8d7f101629aa6a3d0d21db240302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100be3203dbd06a5cdf2e5dde50a1c8abab58c27521acc8d81880a11bd05ab45e857c9e69a98d33531773b388c1bc4478d402301da225175940997514089164e4701160a1d4ab973f494ab82abe924e16733e5eb5fbddd3726af3a89d255828aead0c850302047c435bb5006730650230086c98f0b66b8e84adaadc41618bc1ad07e10ee9c5c1111500b7ff9f937f2b1818d611d561c422cda0944d1cee31b975023100b18a5f2ee12a48a1d74a2286f2d7c81d29d08662a9e0bd2b35de18c0dc20dafaa20c79bd6570a8f89462692f119f15110302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301f69b5abf3c82a991512965bf434f3fbde570cc36201c598bbd927588ad76259c8f542f562496034de7a59ccfbb3af5402304406310b5c3eebee9c4011bf42a324bcfdc816fbe3653c8f0a754e264171d0217bf4db9e298bdddc3e7e700b8631437a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023060e3cad7567aa99591c42978c044f0bcb53e53cd369bd504097fd254c3fc83183cb258222c549d61aa1800171e252f140231009c7ddbe53197fe3890995fd1410f1b425cd1e72419a7e6dc3a2dcdeacba781c0535b9efd7eb3e478b6da83e0fe479d100302047c435bb500673065023100ac0b4bc94fa594eed8fc0900c38c4d07705d263c1095dafbcedd83b7978a40f31b0b9da9eb68d0f3542b64d3a58972a202307387276d904328c5b0c0be1b63de2af7d31b58fd32fb8d900f654c41e681850d48945f29ff5e0f309f03ce991ac91fcb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a0ec25e50504917aaa9b17e72c14a0ceef332b0553e0bae5f7d6ceb246bffd516955fe7a4543ef54592145d1573ecb49023100bf26095b814f5ef9e83d4591b27b04c8c0fc5e88fcf466d3ae174778522d9c194af4a69e83c96bf138a7254b543584180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f649ea793ffbcac2d22aa357e14f029efb4127ba90effad76d7677187cfc51791bd42146b5a43ae254ed36da990e398b0231009a09f2865e93d1cc6b1a406c6363ca6b58bc66cec196e42b3dadc16a893258eb463e750a2914a44426d6e02d26c545520302047c435bb500673065023100eaa046a383fdb42692a941547eaf3f96433d3179679a9e274abd8d2cb478cd4b573817929dacf1e12767590a7e361c7502306d1ca77fab522ada67a3459940a1a5d4d5593d6b391475634f88d82821b2d3a4d8030a360a1b3b0d8dc2680fdbd59f8a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b4f36ac37c8846ffcefd102076ed1a0eb3ef8fea8a366f4325e256a803f55cdc696478dd2afb9367d063304e13c9ecdc0230646276d7449de2fb3afb5ee3ff9c6c8b0b38a21efd1002626eebe179306efe0942792353a666274253eb2b91469993210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dcd73be1daacac0ef041f25998460cae5ccf65c31e301b77f5d49db66ae374428465d167b2ec72de88a654c854fa2f8f023100c18f1c0c9440a89730eb4b1b748c3a3c70aebd06096b9ee24be797d2546eaaf8de93fb8cf384d8cf1e22d3c4c11fe5ef0302047c435bb500683066023100e0bcffaa3564f64182a40946dc5008037f8340e2433890352942e39fa7c300f4aa2e3cea15baffcd242db9b9c9fa4c3e0231009e926cc04c8c82ca1e910ddd19221572c3f67df1e405e122def757c6a3487d7159bb0dc1918d3d6108b2499afd551f380302047c435bb500683066023100bee8670276319c1e5aee305c4bedbb9d101846a3fdb60134235f97c7baf411f8f640c8769d72e0fc7a457fba25ce5f05023100a117aa5add9d948113fc0ab133b33ea795c0335d796e88bfe5057ecfaab2ca48e83ac52f32cb06d4d63345a5a7ec88c40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306acc3679006a0f0f4273da661391c7e919f66f08e6e6bcb9e4d720eb4f57e200b9965f09711fa777f51d2db91d1486d8023100c76969c7ca813ef24cafad4f892f5eb04cd16d121a7f81fa83609104bbc94d4c57c465ec1a0dca350bcbd80cc4c3bf020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230183944821766ab3a4c7afa9814b30883dc0849b7e097b419752d04299fdb48b3f8adb44bb56153118496c8691f436b3202306ebb47eacd40e1cb9aac00626ab5d3f8cea52a411a3043520e5442933907cdc567f0c6d725ccab11e67fc5665e2c59510302047c435bb500673065023100f0c32a1cf4f129d4e97c8bf36fff49d810dd9f36927c5c736986e9e05a0879572b486734e20afa15c4380c00baf0fb0a02303a9f00f87e1b993af171acc635a83dc8d64cc2a4369e498c711748529fd00c53ba602f9efaab85c36297fba8977f7ae40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023078779ea638b9a169cd25e0e8d05fcabb1a4496e88ecd5ed0bdc448f6ae511e09fe63955f9f3ec61129622e45568dcfda023100fb02dfa674db90158fb64056a21bd54778f1c7e5adfc6b3cba06701ad7a2eec22b4859f80f24de1ef8349d23180402420302047c435bb50068306602310094f08b00975bd6395fcda8185f76728dd08696d234e879387ae82df225de680b01083cc1e9e09bbe1266a9524cb3fb4c023100ff604731928a3ebdb4324e197ec1d9957b89fb5de5f1aa6c3c053cfaade691e8b221869b2d621a947c228bb091968be80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a5599e429a490d6642fbabde8dced1611346f77c8c7f1c621bce821b7146a0e18288dc68a985b821b18fcab21af5ad7e023074f7d42769c70295bd8838a68aaa1999fb888e9bd670aae8653ddaa79ba1ef4a9274ccab1843f85a7043d18df56338fa0302047c435bb500673065023100a9496003c88126eb9459538e0e067bdcf6c61b70394b6d0eb4986a2d2d80e8095aa5d41113c431b852dd0215b2f14ac20230557f2ab9b2c41d28044da859cefe8e402d403b0288743361e11da4f7f55fb86366d687f8b6197f2934b3d8c4682e85200302047c435bb5006630640230314922aad61daf2e0192b5290195cd605381a46c7fe8f7c4dc0c958668e89f4ed5610c38d1265c2a98ff415ec28bc7a6023061579c5e16943bf929de8923535c103ef749823e479057276c9b8e848755bc94dd36a6b22764120e524512c168501ab10302047c435bb500683066023100cd917b4cae7c00dd382dad08327c2f71cf36667e3ebaa8dcfebbb580f70bf6ced445ec50851313ebd5978027941737af023100c0c00db94dbc3d7aea8633fbf6228981d09440847a62e9c04a1685de36446d0d99ccc4346571b781631abae77124b9420302047c435bb500683066023100d9929478801762eb47ebabfa87c1be4cabd17175fbcb05c6bb5c78d9ff7a2496d2491c81b4eb888beb556e2377c147ef023100bba342c9c0e1072517b332394754ef1b1d7b9bf55c2bdf9bc0c3f5f39dee964b9b157c96d6f7a57106649cf25c0b313a0302047c435bb50066306402306d5d37895066c610e354d60ed0320fb3b394fbaa322fa31b0d9bc65eb7c453dda3e831de8ecaa5c752dbfebbdd42816d023064e9c2ffd178bdcbce432270c8d4e60e10f69075650ad7377737cdf234fdf4493d1ab768136554659c614337da00a5d30302047c435bb500683066023100ec979f50588aabb0ceef2991de355a4ac99d11bb0a5d6c6654ed316b372d07b0cf6e508f195721fd0adf06f1cea580d4023100d40ec1003373fb7dfa2b22c1e243bf02966727fadeaed5b9cc2ef6290dd41f5687883fce3ae902fd267c19df46227ab20302047c435bb500673065023100a5a80092ce862b4cddb078ca599695a087e047b707edb60f683d1e3b236469b18bb6943b9485188bc27ece4a068c29180230393ef91fb64d91f37d9a290da1046e500cdb03bf6032e1e4eab3010286d399c9005ba8ae605ed8ad86e520dc180ac1210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023058f1e854c5e165fad5e442f2e8afdda9f7a8de1ebbec97723d11e6398e4f5a1c7966285b3e9145d961ebdaeba2b8039e023100fc01b48602450a37eec8aaca77e2c6f31056b73998feac57cf03ebd2279f8082ea1e51c12a9139360d7a892cfc69d4020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304af8ebea1426ddbd3545e48a95af97d19c59a5a13dbe2fad1c18f6a8c5c64658b4587339b3cd38bd934221b5fd5c2fe602305509e502626f38c4356bde36c26a4548c64228703c4d1336a060dd6305c324d185da2d4f91e6f531c8df78f0ccf391a20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c1af27e0ddf552337d5d2ebb700b66283f76ea06dc0e0a627f761fde5d5293966eeb8ab67683c4562331617cef8205ae0231009fe5131624eeb9bf57566c0e49887fd9795bec4e58d18ec8787a01fd5ac272957084672d51e4157c66d5cd4ca113abee0302047c435bb50067306502302ac28f1ae5137f5d7bdd02a1a9aba0d6b433cc585f5f389b1823ab16f2ddccd0307f71ba3e85c2356572ca8da7199a030231009995f22bc21f3dfb12d83637caf955e10acee4ff2447dc1086490678dfb33a67d0a92dd6c7edb67d14142530514370a80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c5f7e8563ab162ac27aa5a961824bb4665bd898238c835414a6edb6dbacec6e1b4133d9cc68558a46a61d89dc5a97a7d02310088f14260b722898775b1a9e2adf0d3267552870e1b7fd308edd92c3a7a71c321895c69e78ba3b072dc39f474999a7ef70302047c435bb5006830660231009574d8d1d2d8e9bbb6199ce99051a2d2c64c1e29e3d549c32950e10ac14ea316fe1ec5e81c81e26f475db1fe644439cf0231009e7e22274b0d5048060b0e5326f0cd61da044e0f9f9e68874bd186d6acd2bfffb45bdd182a7b40a0407afce5c14e95bd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023059cc7ddfd4d99ce3040a6504a61892db376dbfe2b573e76109fbc78fde4d48b8a134147ca4006f34af48a0d4276bd8c5023100c97716a0d37c9afbe11e5329f33ba713330f700beb5d048834b1d437dac494dd3da41a42fdf965616b755e2824ff6d770302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023022f5f8a26986547bb1b8b7479e2d3826535ef5be37ae2cbc9222d59d9b65c76f86a2b1f5955ec269d5219b5368733ecf023100d4073ba49b3a60f2a8a6f4b7b1b775ee7cfadd80d6be4878d256a3d545c39b8ab4a1d2f2853b0293a5916536bd6109630302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e577716101a9efeab206d29aa23d34e7229cae7faebb6f9353ec6f80fd0597a17914a697b96b0f0a64e2b5b45810c0ad0230776945340c5aca95f278ba0e5f8f0a702ee3219c2cbfd9677a9533d245e998d6b77335e9766f5db6961d4b9f10165b860302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a67519947543c5ac9337fcc9c8ee85170c80d39dc6ca475c85f858a633f886ecafcce34a7b1849cf0c5b6f1f14435e0c02303e123b21cafbf3e8df31a795f1e0e496c3d611ab754833af802aab50134475eb2ea4863a9f2b542d26bbcc1e33d2a7c80302047c435bb500663064023039d978e0adb78d9bb64011e61b13b17af472dda41e8b1f41418fac86511bf424b82930e476268ba34df9702782d93d3902301224607716b21ddd4707d300b10850b64cfb4ca059d5d734a31f313bc9ddb5198b28e10aa8e6878b4658869b7fcb79040302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009e275cc219a343503ba7808a2225cb6324228f9f562e59c2d9989a97fc6fc19bbf011ed994efcf71183cc5256e7a312102306ecc79c4edf4cdef4a3c0b5bf9929ed796c59df0160dd621c7895e7b9d697a05d61f2f03dc314489723647ccf7177b8e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300f541aa593d2018d39b8f6d0da3536b85fe332fcb42c505f2b48677952d05f505fcbf1bc4758476aaaa21a424fa9b55b02310086507f58d4f86c62a1334100229c7a18aa5a877aae54105a7c1b9b75621ad22a2e22fc4fe41d125caabe82b689291a950302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305b27c7c5ba62bce6dc5df8dabf4f104d7e30a327d72b370fedb660104718ebed8e10db48d1ee032a8e81471b21e9aefa0231008efef4c2d9039d10e4cb4f075dfba54ba5f0995fa5fd39e6fd0103e1ab0aeeec301a69ce7248add0fd81b5491145a19e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100eecd416f84c1c5fbb0dda7241a85ee2e08f3e73290b516c7bb48d7c2512b89665e7dcaa670dd408562045b34ff4cde0302310080b987c76436dfe5b57a4c969e359ae31fd7ad5fcdce5d31ca50312a56db88a7be701702e3fa8c957a3abb287f79142f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c8ae519099c972bfecfc9e42808b87a7a8509f35fb53df2cf255c5e6af288ae955299b4129a2489ccc299d0bfb6c783a023100c9c0bef095cfcb401ba4911453b883e1c4dd020b715a39a74dd726cc6a5e8de36266d73938e398f2e2be26b3b25f11650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023046dcd6d1fa24bff8c5d682d3fdeaa3543ad692abfe77647b261e58a924edbdfd082eb7a799fed1fa212e03933cf7b6d2023100b30c17c448cc709cc3c4a5062567b2977366cdc2274a1826ac36a4ac80973a1d8b0112b831e8711e7a7816d4bfddee550302047c435bb5006730650231008a8435cd0347082071e89250eedfa3a10b622e1c960ad0bcb5e308c48808b02189a123e1004e670ba73b407c44d9edaf0230358e4486b9a86f9437f259d0e1d081f6d975da1baf6ce58fb186a7352b0f3e57e7fcb0b65949b4c5fed76d28bfae5caf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023062c2b163fb944839a2d22d93b21902c23a9a0799f043bacfbfbd65ee33b4b04b4d61672ef3ca3fa6fe00825d9f6bdf6f023100c8d260d060498cdde11244acc16ab5762d45238574d097b32fa8450a6a7ca0cfe21966fdc183944d3d3da9579de279b00302047c435bb500683066023100e3c2163c9d77192ad7aa3df035289a9c6f93491a42bea026795fe3d63b56d9a64ecc3e376a37af300a74d097ebf7ca4b023100870c1219bf336a2de4b6806049d0700785f1ac82415ece3750f0f8f0d435ea78a932a5e0227fe245bd4e5e4d3bee009c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230161b9a55f9e7adf7aea80cdbcb5d362202fb7b5fddc4f52128e96cd1ad68d0b8321d7898e6edd8be3dc0455ea6b97f710231008c7b4fce5196be28f2606c3ba3f57305bb17e55f1a1adcf83fb9357b2042a5903a4edd8c660935af797351e8ba70430d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cf61cc38582d6990765a726571ac985b9cdcf152df9cb2ab5b6173a8ac2f43aa76f7f196e2c1850c232d0964d3df2fdf02310094227237c555bd0f38b95209d0ee60c0dc0351e3f2d2b8d6a13a958043ae5c4668d1148f5002f13cf2c40638223e613d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023062b09b7930f2f02da37f48bf2f21f4e82c95d456778eb3fddce6bccefc95b6bb7c4d332f4cd9693eaa5ac5800271816b023100d1d10071964980232b3813cca45383e9586e634460c7ce134e8ec74dab4b6b1a2e1dd4093979e0b7b3cd444f62bd017a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310087ac87b1f8c0c64b4317d988c640d706669ce2a7e52d8382007353bd77bf4151883ec0f3e3c48e14a3aaa47a40d70046023067c3fec7aba3fc5c8445a825e1629341396851affc6f3d2075006908b68dc0d7024285fe8bc34fc35e569491643ad1db0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310086b6a2d6e96306cd0ad4bff9b209a67b935d97180fe101212c9a48aed4833efce4a26d1d03454824752414ac99a2cabe023100f636410d2ba520f99524492af6acf0ba3208b0709322cc4b266797455f01ccde8e8b05078fa3de32ee810a687a3ca7060302047c435bb50067306502300163128fed0037afa7b07c5b82d4e8b10fdbd65b72132a83f0db191ea593ada7efb80d80635e20777cb771672e72a430023100d38d466684c06de632d52398dfe10eb3de635b0539ee6cba3cd60ad49217d418df4158c81e4db28feaf075e5dd795b860302047c435bb500673065023014ed1314076292d5d8f5b5376a16f63c6f706854c0df0e747a9199753f6f0a65f50c1f5305841c7de0ed003dc21577df023100afacd0e000491f290c6a1de9e71ed66b227cfea20711da7995e477956028a102ceaa3ee99c48e0a231bfc78fb2e28a4d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230096c43e1b79a9e1e58b01da1c633ae247fe9d32789f3ec80cecc345398ad0e6a7edfe2c7b68e85da7155da1118cfa5c202304c6212cd23db0a5fd76f79647a04f2b2103b52793913902a6cd303e993a4827ed8651a59c28bd6432eb6e2ce33d72dfc0302047c435bb500683066023100fa051ee40fd18786c5fece88faa4cc0780d017d14972e1f6a964caa07f46212d61c1903ecbaf599449f12b201e356e0202310081a209079aa3e32bef2768324d70f5782384e390da85ef5a8a01497d6782f27c7482b4d6e4a3a5f657b2430e310aa9460302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303052145f0beb7eb1cb65886afb28f0f6a405aa92ca528adda4300110b4f7fd064787dfc883d2f02e53253e8dd4d2f36c023002463f4cd9aa41ee92e67108d09c2b09f217cfc52d2b967c623622b3f61213dd5fc440699f2acaceed6ac1a2b5c1034f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310099a6bfb85486eed93a85ee8a0ab7bc533216e67351fd77851020d34086d720573026f4143aa5dfa3a29919fd22b4bb29023100da0c9c8c885776cd5380818e9f7348e396c8d671bb58d830446d6ab6d445dd7a7f04233562e616181303e2c4d9c76dad0302047c435bb500673065023037a3918f7d7c7efa79732f1552623e9175b9cc1408ac77f2023f9893f1f8deabc87deb645f02180d8193abf6fadf6952023100cb1ec750b87e0b7f7f6319dc590df22caf1877c10b20dc02648b755dfa9493b2078f9e37c850c2fb3e5b295f0b24ccea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230536e8dd0c096b57334534edf1809b0faaf04259ce18bc3f1eb7383a3b158bd576a5f0206b6c115c0a35c8179620b720e02300a5542bb46b52dc3c0098f14ed318a32158cab1fb20a91d8ad1422eec773e25ea648619819c689484840651c19e488fc0302047c435bb5006630640230451bc12dc5653cf5d2da1b80cb661c7e36ec0177569dbd5a5d56b228a9537516353a91529c9892874b16a24b517941e902300729a75564d85c8873ad2cc7bce68992a391c4fd050cf344cda03e8de6db5b795b2d04c66ac90852808e17c4bd5897530302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f390a66a4c4f5c619d9d7aa651c3cd1b3e5568c6ffbe6028be7e9208e45484b7def8e63616bb359965988f0c443da9d902303f9fb9fe1fa334e97688fa34fe4d8b36779efaf1d07266baa84b03f2d25fa91e63c2c12283541a66f58dd266276b7b160302047c435bb500673065023100989ad3efaec515481a3a617b31775d5435b1becaaa2598f18b042dd4787e417b32a5d498d657d6e594c90e95e1d8e937023007a7ecff649339b0f256bd14f96f3b009746fb4e2b5ee7100a2d4f633283e2bcc575eaa918bf9fe9e3626e11fd216db50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304536ad7e281240c671d0aec8c8b78b4142a500f162db5931a635469aa931f8fe4451d4dddf521b4104d790fbcdc3e1de02305a81bc03cd42d429db08f4d50bdd57bca176c59ea1ad58d7a7852cee51a6405dbd2a7d6f6041785525329baa30b5c73f0302047c435bb500673065023100ab5f5f67ab7a5d06006aa2123d5c08f47b1b091fef2e57f3c9f52c54fdef1bacb799ca2578459ba8e8a61501342c4a2a0230676a63509e07ee8c94cef028f28f11ce87ec8baaccaf1c15f598268f1373a1ab13c59f4bade40b5d892d776cc1aa67ed0302047c435bb50068306602310093db395513a4f3a7e359d0d3359c58a486463655aca3694f7a08dd342601ee747900d2ef7d380df30d3ba3d968eccb550231008e4b074094ab9dc1d2a681d07954a883a74fd76b0f6902b521ab6498b540b12a72814adcccc4a35dbd1be9efe49b0ef00302047c435bb50068306602310091fe52ccccb4a2e1568e3ca139ecfedc56078c19dd31577893a5d8310fcdaa2b2ab598f7197da7cb768d1630ebe1b273023100fef26209e11383e10b77cd4144e851066701059210202e4f0213fded070093b523935ae4d6df1569e8bc8f63042d87c50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230783d1ea2a1d83a0b4908a749ed24d8c2b5cff97160a7a1d403996eb4ad349627cc8679713757847b09157b9113148695023100c726895520e6855b25cd1a060810d4679d73b9d765098b1c7ea6f0bdfc80e238c4b468b9b2a08a858b5356e68580ef8e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310093b5e7de520321def7e868d411ae1f7065cbf590827f891484add01a9a93d151854a4b5b67645ca4c649391074750fbf023100b16b69617c663241bafcd19177b1ba7ac1883b4a30228be8065e6dc6df94fef7d878627cc9e7e7ca19ede41e6ed0f0ad0302047c435bb500683066023100ccd64ad6cae9ffac573387281ea75dc5077534fe37aabe4f719e2096c5be08afa27e2adf6214a879651e55b878974bb2023100b81a98756ffe8b0ecbe43d167c1bd4c812ab48bdea5e111774149ab5aeea1ffeb535d9439a7f9a9e2a04a1c4973310360302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023023c69cd54d7a5f99c5ed0a986e08f267adec93599f8bb6e60fc1325691478602d080ae9ea8e8b92d21defa80ae8b022e02306bc3f58b13aebf08f5d7157d861556df67ee3431ce1b6d8ce6e506658f2bc5a35e6fe258ac856bbeb2ab428cc4ada57f0302047c435bb5006630640230218c2bdd064f7d98857ad9e25f4585dbd35ca0b0539ff5156547a323bdae88183e46043c836da4cfcef63cebd4eb0ae402306acdc3bdc4c1f554592578e3bcd26fc19099cf2bfa4d4ec62785b963600e74b1ff16207f3151616220d87a143baaa4d80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b4aead6509465fc9bc4f78d92cc0cfe23c6561a8c33b57a9d2158b8ebd3003ae38010c9a5bb3c183a0cb16c28e3f48ec023100edabb11ddf7617ffb4a8e6ddafb35e3d8e4c97cb13746fe9df9929c25ac8d9f4a91f30b3d979e9258323f41f290656c40302047c435bb5006630640230616932aec49dd99a436070a20e9e663780cc4add0a72f02f9a1de15cd306031eef29e06d945ac037dd5166817a2137b702303e867392b9c9c79d0a860651223b7ce80425fbda619df55cc07c52fdf66ecaaace3a98771d8ea8a3afd6730e08e7bfe50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023068ecc7c6f095d2d5572815e80154e359b2fd801149cca1c2c4ef6fde4b16f711fac49804f3479df9b19e0bb59c503870023061d0a34fe93209b592f9b26165930e2f3f1883cbf026f5ffaeb05e7ffb539d2fe95b2f706ea3cd256da5aff275828bce0302047c435bb500673065023100c9a06c843d1f58f7a0cabc7d323255f70c127b2263e8a0f1ef1272c32d64e2c548373ec85047b88420ab9f507f3f84050230457f541572a13028a83837a1b3d14fa29b12a34dfdd198ef2495e0d8f18f33841d86313b003103a0633ed0b3bbba4c6f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008d7eca2605445bfd7266bbc3d985169cb55fa13996bd8e3ce4750a2e272086137707e5363dfe26be39d99cbc39b9204f023100b404f6fb93c5e766eac55ad7a96a579544314359f87c11a52381e8cb2e3d609bdbf7a14b0afd8cbd85663834baca67720302047c435bb5006630640230269cd948c09701bbc075e46fb329d5094b717fea5e1ca616425b5139791c9cb029e0955d0fc814d8d2548ac3905f14d80230190666183807da42102eee04158b5c5e18941bca08a0df49184d083b0314ba723452c66b2b37e1e15966da7f901a2d5e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ad752e5e4d6a5fc945017bbb876173396d43a49ec84a461358979ffd8b8fd5ffe694a01c47ebc180e8fc16fa4f5aad2e023100de92e8d86b48a43e5d1adddac1231dde74ebf6ab1d08ffdd73eb7f3d4e626c13f60595c136c603318290e5cf1e69ef210302047c435bb5006730650230065543122d93babd77cbd64abe035090bc7b26b0df32f0eacc88cf83d0e15fb989bcf2d20113f5099f37b6e6c94d9889023100c82aeaaa737139bacabb81f9180938450d7c118ebd68646c5c8e7404a283758f78558c000bd72a97e05597c2e4293fa40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230746b37a14f55d69261fd00779750f6506f4779abbb7ec68f8ca7abfd9099123901e75ded16691ff1d1ef8aff2a6d980102301da801e3572116e150a22db683118964c0462a31225f61d22f8156481d79b41df0c226823af98fd66e18c39131ef3a1b0302047c435bb500673065023100dbaa5ea0d95148fcc70fe105da0253b44d672f50c88b0e812870ecab07fecbe7db271bede0ab34a481c05daf292edd500230658a83e9960d8d7de379e8f8b6454192ab37e5ee37d7b11e17cf2f390af629ed25e0e3d5b3ecdb7dd4575e1f6f478cae0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302e2812e946989ef0c9994da4057d5ff61c0c4572e7ca20cf2646996b2906e21891d44f265f6123c369478e041cc67aab0230490d81bfa9dd7a65039b6269ece4ca90c0dcdb75828f720d2bba66012e4ae6d4eed5d3c8a45a4daa2287588d0e36ac5c0302047c435bb5006630640230708bbd382250f8bdd6e0176dc6e350fead131d2a32a395129922496eeee9b4a6aaf609928cbf2caadadbf00eea7ac849023022d56f70146a32bc3748ac9b9818cecfb4c12213fb37b6320b601b9543784057a2ae81dc0f774a0ba5031ae8ddc505ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100eb81c6de4920df0090c63ab5e94480f47ad92d6c4e2cfd0080cb31553be5ce2d9c2dfe510f5a479c789f43938b3b926d023037fd38f906c70f2c074b1078254392e7abeb98a91619b5964dd000d5b171427fe0dc8aca9f30e0eb0a86a4a2695bdbdf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303af575276308d96c77f0bca78d51c6004b9061b9b650e438f3c3b72846c35111e989bc14a3beddcd23d989c2f7e33cad0231009650fe77fd5e8648e90e9d50b2642ccc4b70cb24db5a1514618be0649a80e1a72ff768f3091d5be50e4987a5c85aeec10302047c435bb500683066023100ea19b9c859fff46a92e26c0f6c5361b87bafefc5cb301886233b9a59e0bf08e51d98a3a84a4253ead2142ae85e39ffff02310089506231fdf4b45dd757ad0b628b6d53ee0faa32f5eb88b2c50b9d4145d83b612e0df746ae5df0cdbbeb34f1818f48140302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230174b1f823a5e5a96e1a56289be7be0b85e8fb5698a55b44b97a8c1e3b91afff41dfae6a1a564991c2a82da69901cda3a02306fca9425160a32d9b9af3c94fada8ce66411eb39582c3a922bffb2ecace7a48391db56969c7b3be9ae144ac3726eeb930302047c435bb500663064023032316cabb0fe6dbf97ecae775cd3a0443bd3036329dd42531666735249771f0d6697dc565feb46e33ba306cc3ee9082e0230617eff2c48e0f234106419274ede3bf2aabc92714cc39edcd310884671cd3ec421736aaf0173bb5b1dd51e480c9903f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ecd02c60109704be6011d6cfa8e09ba1db9ab569f746415b4e6ae364793f2d04a9daf6f2abf3b68bb1840d46ab2a6e9a023100829bce6f962b31a88db54a8ceaff140ee1bec3659d470bc972ddff80d177653d109012e182c627660b01df2ed9d1af3e0302047c435bb500663064023003e65ececa6b9f4d3ad7b28ec2ac8c0056c64a973cd2617d67229556dc43e22e007a6b6e33b5e788c20791c2e0d4cc5202303b66f1332ed65e08cf8919c4b580619fd36a881b1d2a40bd624b061ff873ddcbc11128e6a58d018022745417443529cb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304442332510f898fc428b81ab5f14b88b51e02c78eea1586116b8e98507a9abfe3065a0d84016ba4399cd5c12c3dd0190023053479f92e14cb7998f56419278078b049dafebcaab03f9aa1eb8919d6b120d0e26e420cd00af22e13ff18c3da8b55c680302047c435bb500653063022f63c0d3de7013d5810197ba571fa7153fa34367956d3f4cffc3279dc2fb0f4875f3b98071fd25cb5941eb8b0ede95450230284b37477598e91a430a3c28a04e9427f550e259717169efa5603b6fc80fd8e7846eaea5f9a3c8c3ef4e800c06f499670302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c6eba7077a7e80a10923fe6f5cd15fe121931cf69132ce0e9099e59d610f5e2052140907af29bae47842006b3415b19a02304b2e076aecc7fc1c81d068dc202e704236308968a53f159efe091f71863ebbe3724c9fdbc8458f0e84762db15d18accc0302047c435bb500673065023062dc1a58f027b446155e61f4cad928af9426c5f5f0c0a690271c1364a960a6058e65c5cb4d164483d5b16c25b68ac43c023100d096d324f817738c5a5050c6944aef57c33b17a460ed872c61cdf7ed7ea45ee235f623e8caec3427aa42db83c2ce18490302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302dcc2b722b64dedd11cc0f0e82774c1364626856184bcfda4687bbf4bbf3f537eda80dc67c6a9e2e0c984ce19a6afd660231008fcf3591732254b7faf48b849be3fb1e4b3413ce9cf705cd5f6e3fc7c29470edb067c8affc685a8d516136ec04fd538e0302047c435bb5006630640230786024be2a0fb396d472a5535a340be05cdcda7291235c981e624a80c9ee38c8b4e6b72a95a72eb87e32a5a58c0a09db0230169557c4ff29eeb5d5d877924880d3d4044c08a8367bede44cf71438f3180c0d84a2f3e905f51aaed75bc1612b3c53ba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e868a44c871d0d0366a3c8c855343438275568e7ec798cc7eb5e49404f8c580193d80728229bccca5582f8e1ad66829202306e70e8fe8aa3793c020de5db9e8dff478d1b945a0a7f73442caa5e7915db02659cf8335c6226a669c7137ee4ffacc1000302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306d0a43046a67257f3f5f4879fd5616980c9086d77e63c64859fcd4a444e4661368050f48912cb0ca79ad5c94ced6d7610230603556c845346f877fcf72941d3c19a73a21257e48b0bbae7077ef51b9216bd75ec6118a7f4c9acc6d86d387e25f2ebc0302047c435bb500683066023100dd309172b28c53a13401e095432bcda0fd771e840221fcead48d62457666000b31907ae3bd7aa7ad284586a68866fe64023100acb2f13a0af09723268e4587141c9bc6469cc8ef110e813825e161f0e8bb7137e5728d5e9aee6e1a4439720f4a9902370302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307f75b480c6748eb3dc776e121a94e5a26bd2a2b79c1b925d298143ba5fdaf2604880a869cccc2aff36737c8051c0e70502301b50ccc9793c4cc1f3b3e44db75bf434fdf2e2d26120aefc2e676a38fb7616ac700ae98e50cfac0721c73bc46ea2f5680302047c435bb500683066023100be288c99a1fbe436965d23910de829593d948e071b9c4a98a9e2f2de705828caab5de44783fb51b81823f27cccec5388023100cc8e56a9bfde5b409730b8be3c4767f516f100b6cdbfa95788a4eefa9d86ab680fd84abc6a4ce7f0a62f3274dffa440f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009a0cb9c127f55eb680c7343fec2830aa0992146d25f41e631198a4564dfe91877b665a708d76296d9d20696d5c2497f4023100db9e7342e0c341afd9336de94c5ff7aef46f936f27a95dc7fa1e0bd24248fe04fc7d4c41e07acfe7d7622331a82f71f40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100997c60fe4c55b9806d4e8c72875cc232e58219db5c529ee21b38e57c1f47b896253dab01a0974bf06bf34432d356306302310091317a79c2f06e88233f84bf76d9a5e7ee9eb8c40fcb33ee917e4e177984886181b02873e23b1c23fdee3ca8460f4ed20302047c435bb500653063023070e761494140421a4d22695b63f6172473c8d9eb70dc4203144541071a1e8c6c0acd18e1f016f6da1a35d6f464b73485022f44cc58f1ca6d2d61778e81f1f345753b5dc9d11532706128aefd5604a68220e91eff6d9884a25913a649eed3b384bc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023029f474162b60bd5b01491eba480d200ac638bec15261f0a026975b50c302c96267059158f97ddbf261f2b01ef566a535023100d3c00bd450831399a38c7cf912b9098b8f8fa9e6f4345c7de6110608ff4b50a5a399f4a6eec76cd92b2f1b47fe56d2d20302047c435bb5006730650230420cc94ce2aa4b76302eddee8301e39fb95f06fc92342bf73828c7eece2d538bc14ad5a91189f2efffa0ae239e7de5f4023100ef22000e47548f74036965cb2746db50550434dfe35784c3bd493a5445e6be27d7f1b38d95815321f784006e3f3249f70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303bf10baf7b5f4e863b325d877e8a8055def44b057cfda265188cf62ba791a701ae873b002fb1c11fe46d6a07409fee260231008606d85432360f2784f1cd3e5f5b863f3d18281a808513d7e0a35045e8316d8a646db706761ba25147e951f3892bc8630302047c435bb500683066023100debe1edf2fee2f12d6de6ba256fd913f0efb2f2ada118fec289ff2737e7dc8ac054c7a9a5a363ec20f35a2ac0e78dc78023100aa8fbd85d12061dac1e24988474fbef4ab039e67f83fd989a74c73057df963ed9730bc7c0f3d86f7f064199be2cc74f50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305e96d587352f685348133be84d4eb2f9642968baf590e1408db251a1a53c4d8c6f9e8ee0995f767d6599aa1866c0019102303338804fff01eda92c7fca99584118420b5e3859c6d2df81665e67eb6d1f2a8ab9350a013edf695511808f3c7169a34f0302047c435bb500663064023003c7563059db8300a38b827c18b185e8d7c7c6793a753c85c4a0c9ea6bdeb953cda1eb8e0adb89d79e37888bfd41f29a023057568cac084e64ac69c31727b5c4111a49350eb9f58f5bd4452337fe361782ac68bc16f99b890a55f719c17860fcf0e30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302c321454c3b18cbb8be5942a4ed15b662b229c77215fa8c749f02a61874c415d482de3eee7ae5c09283d3c6d5be87f9b023100f68872f8d01b3a4c42690ba202ed737d187f88f7739a3d891613a183fc264324a6d4845bdfdbc1244105a3889aa9141d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bc7a763e3d3ab797ae9d985318b689019c489cf69cc37b9294b34dabed762c6cc8aabd976c53ccb5cb1ae0ed7e943a4902307d8ba0cb44ab8dbd654251a92be5900157a91ad28ce1314430b6aedb4240542b8d7753969e3c2abcd781626341e1e2190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bbe97146218d8ddb82d7055b63f4258802fa9e9bedd5af959af599a6a94e9402094be9769053cd84f5fb3fcb65845a8a023100fc3735b51c0c19b45f0f42efca816b2ec2b0b741afed5b3254b8d038751ba9dda9fa2111365a8a44c2c3806241beb6ad0302047c435bb50067306502303183549b4bcc4570b6cfd6eb9ab87aa10ffed9129bf6019b387c3a1d6a8036016dcef89229030e0c167256c48b0cb106023100dedb1ceb84284cd62fd671c7f224f7f5c32c13c32e4170354af0b962bef420eda2a84d7fb35fe377212e37ba7c68021f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c96a4d57333ab796f824877d76767d9a38c268b5e87df86a92d69b6a00bd9cd577171442030912a02495e87ef09aa5d40230215c3c509bbab9b890ab1e073be087e4b327775ff64240a09dfbfdfe8c8fb3d7e05e7125f906205973c7f42c9782f6cf0302047c435bb5006730650230400148a807e5a7afa15d50bfc99b5d19b649664a4977b89be32e5636c975c675ff3b1fe8e0285e91273c70576d02d74c023100f8cfe43f330a4fb3ba108d04020121f2b49f7f608b80e8adcdfe0407b24ee4ae349bdaff6259a4b04b456641148a3e880302047c435bb500683066023100b0f98886565dfbc1e25c4e7ea0684d99ab71ffde05f94b6da06ee77f726ed512758649b1b9b5744336345debee85ce3b023100f862bd8a51847b99bf135ed5eeeeb26107ecab7ec35ac306040d0a36f4b714bbf0b2fab947dddf26c10359afe71847f00302047c435bb50066306402301dad37fd63d2a1e656d407b3f996ed1a51653e8f87bce5d778857a790e49623deab4a5d79f53c2af06714008f86fbb85023078f06be184f54a26bb7ade48183f4e1cde6434d690b43030e1ee0b25684cc5f52b8a50510339002daa6c6565a45319f40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a88c42b5019ed208d82dcfe46551ac7f171414b47561556a0ef60a433db19155341b7298b0d494e84b573058651599fd0231008ab41af228b9847853dce5317349e7d38731db4fee96072d79ee46c88c55b731bf182da9363977f3b354afef44b4c5220302047c435bb5006830660231009a6549b75ea791b025100a5073c60a93f2a438ba5efd55aea5e76a00c99afa1c4ca4eb1e8dd8577c36e7272d6c055b91023100afd250d74f48196e648a74602fc824f66f01792ae36c9e43cfedfa1473a71da571a1a3f65c023e7370aa4c8eb4d3463f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307b213250da95dea7cb385c98d17626cd3b6b5d59e28dcbe5e4650db834d61a9bffa8f24ff63332e60007f23e21674b18023100d8bdb3a472e7ac65d1090a4c210cc32301103fcd834c7c8991864fefc15b459dfd0c0795a3847fa012c9ed1ac4ca54030302047c435bb500663064023023cc598faac17ae6d8e2088f7f6efbb762a6948f96a74443a2f521c93d783392367dcc34f614e5ac0fd8180e33101c250230294f4ca52a86fdc24a70b50baf64108abb3c7f519e54c481a735ef83442cfc6bd4d093da87f70486a413fd33da2d33de0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310098b75fe3d86ecd184da375101caf433b4b03cf6ff94aca1e23cf58627143fca1390b26414c1202cadbe00bd362de567702304b322f679ba8702ce17ecdaa2509ee78480a4a732cd5fd46cfd22166aa34cdec06f2467fe329490512338913486927d00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307b7f75781a237157f3b994082f7b2b6e2808c779adf1785106f2c6bc99da0093a21bf595f675fd262021515d04c4ce02023100b49abe1a3ae1ca033dda5ea3b6489bd184c40e8b8abd13c89459c75f740b5e546f988821a18f030970dc2dd1769226e70302047c435bb50066306402306b47ff25f7e87db4dbfe02eb78111d26a096dc436b7b8c44856701ae2feea2bdfb0b8687705e5efb1a9666aed4f5000702302bf19003c7b4b2cf35640ec40fe75f4cae9c0bde52f66bd10d6eeb1a58b4a2eceb11633a4fa73cfe31a1c71fdf7424240302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230268b287a64ccfaed46f4d314f532fae9b8db1f6b1d11dde51f7ed65fceeebedd6e2c5320b8b127ef46d32dc7ac8c4153023100b2f0d2db55f0ffe80f7ccc05fab0e0a8226defee4b26c158f218be4e775ca84a9365ffc0ab847c3c55ceea245136f2d00302047c435bb50067306502306b1fde92e0fdce0c802f94574e2ef0a2118ed940999bd00c4b130665d75152d95b4a19572d74335e01170b0bf20f3fec023100943122b70a1d5e19df6c37b0760d6f085d23a74259630289cc9029de11239302161c437763756bb8549f94d9610283250302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307e59f895adac5c171a0edf3cff1590a468032cd93e31d73b2bbac94ecb26152b9bdbdfedbf920528d2a93dc604248417023100d379f343ef72db2b305d324ce1a92b9c17de23698aa6890351bfef211a162b59472e1e0f85c99a8a86a80140678187600302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023022bc2c657c0d0a355c1e18f0a5e462994b655e00510d3296808ef4d0dbdac6baafc0358e3c3de42d24ce9556322f37ba0231008ddce73388b3c60219b09ec4099881c3450db9e862f8ad788abf593003d666848897a0a59a6cffd5039ed52701370c4b0302047c435bb500673065023100bdd2d54d14281ed066d409cbac0ad40df2d01199f34deb4901d87bf97538f8cff83f704f4a9ffa2d26a8d1524b1c31260230411b578039f1742e2e7105484e25968d185f65f991f29357f479846020553915062152d5331cd1ac9b3ca06f943214c30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304122990868fde0f7169f909c744b8c2f0aa4731f76ad52a08f493b88411c52e236d81ea60119218a9cfde021c343c400023100ea5e207f1774c3508edf56ee16240e75eef9bdc32af17c58319f4eb9e3acd663d95cdf8c2970a1867ac16a48f19aae1b0302047c435bb500683066023100cff5bb468ab055c498d5de5cd1c08d3bd49d52ab1c361ca22ea2900907e4a6c34a5eac67dfd8354caf1087688eaec4c6023100e10e23024b776739410fd8bed288ba038c73c2c216d3ee69e041e4f48a4aa99d539876b741e39a907a26d2df86c32db50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100edccc720080c0316eb8c307aa542d8997df365670f8cb1ffbff158a04e47f3e6f461c9222088934793122cd6978bb92e02303cb0947725279882b1d985f45118e3b04628364175e030f1560b4bb78e8012c9c97986add032525d386e773bd355e3c30302047c435bb5006630640230029804c7d75ead357174a1bbbb4a92e62b80e89b41bcf02724d18b27c00f0a628e5c4cab0a50c7f1d52964ae17e7dd750230421a07227bfab2e8e9e2ef5b4aee4a3f4b70b8474b64a8ea9049f82d64f3435393ad0f80b5ad28ca05e19376f0718e280302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c7d6022fe240a8ee6f9d9af3fadde7420b702c7517aefc5f1e1b006df7a60fc6ee33f71f0c5f3db553d5c6148f8fd194023100a5441b8717696fdd39b45becd1ed85df321eec23023be38e11730ebc7ed74270cf289afcd3ad8983faddc3b2622874fa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305eb042faa16028c5a96809f88d970cede3e513b8892b054f2c1ebe4b768d25dfb17c86b1d5d49e66d9eb5fb5431d6223023100ec73c49fe670ff8321d1fb07e225861f4436208ed09e0b4557b961acbb12c697f5a155206f291b982d66016d3a5c64fa0302047c435bb500673065023100ada1dc20192617007f78e0b635c43ea2e93516c489c40e0d00a67ce0c611c3ed3764a0d0c7f62ede9b0ee7bd8a9d29e002304454c2a7e87de9ffa810d7f1a4e957e795cbc9165b1b2442a2a7991567716360efdf7d23ecb7b9a90d1be4e71b6c11590302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a6fd01950af5c030472c5019db4fcfce885a1cd430ce38d86a422b9a1899ec147e8a32672a50e59a81bb427ed634a0c40230019b6297ab301b771296631adc81808dc0ef649189c63973228fa2156018d4a1c662b1532e060a75dae83e1523f591350302047c435bb5006830660231008e6076017342336ab8e6fe5ea4e2128845cdc616c386523bc0099198c18199e467a55bbb5ae5bdbbe8ddf37d70f973ec023100ce387aab3f5f402c99787b34cfb5d1b702db1dd31f6cfe4b01d2e319561d4f9412a019a9f505cf23a82d7703463776bc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f59a2a978fa1d6f42f146084b978936005850f31f73675a4aaff896ad5fcfe9871c06371eac10efdd39e34ce949ef8b30230451bb28d7d6775a385a037dd39020f70277d17ccf40efa86a4a126ffbcd31d5b367f117132347bfc8f07ed68d979f2d60302047c435bb500673065023063308a67c28f18646e5b2ccbefa03ad73c33fbe36a4c04a48dfaa7c433e41b0e74986a633576539772ae0647c2abab910231008c5c8f40165c3fd46b4c7e5baad52facbf731703be5d99b076990de6a63938b5574be7f21d119eacf98ac2495ae5ff380302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230144704327d0cd7cb0ecd4c400138fecf96c092ce11fca8e916ad883c48deacd9299aa608a52a06817afe40acd6734daf023100bde471697e66f1f198a95fb3a89edd66c8c8ea54ba092d0f15b2fb9f77790d2f5a6d2f1bf07ffda99284c943fbd1b9b90302047c435bb500673065023065dbe6ab7499c35e370c7d130259cb7f514524c0429892d5250f33e9f56892de7b9d29f4f72549d0a981d0983c428777023100d0f8074c16f925f56b8049ebacc357410e4523bca89f07380795320cedbcb3ee77c39ac4084ba7c789cc487c9961df0f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023054b2f23eaf2641fc1f207c4cdae75b0eacca851844ba7feb70c906c62ddeac748e07027ff3408cd61182dd4d6580ae2902301079c2008097b5a024bb601f67f7a6d8e8cea27ae6b72077ba5bd86f16e32f944978373b82e71a3b8c2bf9cb06d1f5590302047c435bb500673065023100ddb3f02b16863b506cbb8c10e8f8dd615784b17163133fabd0b01c8ddcae554b955bf72b10b1b2a40408145981b6393d02304500d18f1117925e3a716d087828bfcc111f5d934ad74a9c4f6f59aa236d9724a8a1db557088b3dde6dfda98b3f0a7720302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fde9efc27d80c4e0dbdbe426ae9e67769f8380178a74eb685667a6a0b50746cd9f63ca4daa6ee82fbc5a34f1f13b3c65023078d968ddd0d0851641a50f8c7ab7f655fc768aef36517e8deeabd788729d0c6caa535a84194782cbfeca9cedf8a7d59d0302047c435bb500663064023059bf19842166d8530dc4be5eebab90a7770dab6dd342ecc49c0d609b4be0d8216c7e24ec4ef91f83fdfc65f7a84bd02e02302af949aca89ef6feb4253cc55e310fe9718e1b8a2f9a22e7b1b6ce8c77966adb97e22209668f21615dc4bc5cd0f08ae70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305c60c1bc2152768765df3f568bd245adea556ff3a9e9c59fa0680232aff68947d82057ef66ab229a344d801bc86f0b2c023100fa3a1ad9c6c52939c7ead3b8b4a9b463af2fa83224e620afa409819dbfdd8a9273af91c827c71e408b36546da1ff69cf0302047c435bb500673065023100efda481ceeeaf8d85933343d1859dbd425acef5a73a49c04ea700434372a8a2ef13133a23fb9311758a4732f4a8d473302307319065cca35e2ec60dfdfb7d7c81f7c2381d6f6d56f80cea306331315eda6ef61ed532f2d922e2d5c605cd95cca09f10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008a108f45e5f406f5ff45c0b837ddf7612fd265c3e8db0f35a79c0d405f65bfc3520ca87768776bac1ea023f8415b4d9e02300e591d1902753f665d9d5e702327ac7678ddcba602e63dba695223ad80ca1379179729a11f1037f1367fd0e02e3775b50302047c435bb500673065023100d3dc4d92fe7cb20c78ac51fba8ef69f67538f8c484c544e05c0ac0e6d7ffd331eb03a9c015daa78266e30dadc6fdbb8f0230104ec869aa7a8ed0f7917747320a86d5e81af569176258d2c72ae7018399bf0a3d2de42a8775d05b19ae16103c93fd570302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023039f0ba15a821a32bea8508d06d9d92cd822e9d73ba89830f2730de2d905df819b44508a713f9307b6b05bdbce1eaa76402300b2a4ae1a282d5b03d5a124f142915cae63299596bebfc62849d70821795e2ebf628c28e9e33c05d3bdf0d988ed369bb0302047c435bb500673065023100b2a8b30ad4c1c759d78abc2e0c42468d8d9efd6687a4a5362986be02c051415c6ea6f77b75bf93a838f081e3a0fbeeed02304825aa5d09453c8a23d2f6bcd46fc4d7b66aa59888b144c214f294f940ccb8bde96f67a0b143f203a2950a6cb362d3b90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ca4b705bc6749973628fdd27f3d03f13499202544d7d5fb1ccb483e98fafa8a6d225aabef360d253d7d5c7982dc50daa023056991a329da1b40379f5a9162737459745d359f7460edd8e3ad49e6b49a578235a5f48e996bf81a225f17c6279babaf10302047c435bb50066306402307ffe529ea1e6875d9ac229f011d1a686e0e7640516f5c7970e258829308f2c4134d88aa11bcbf1cb1dc2eadc61db39ba0230687a07e3d9896d403e926af80859c8ca2366d3f3527381c38ec0e93b529980c2251a3ebbd7a4057ea3d770d5bb0abcb70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a071eadea3ef218648dcb44f81830c4a74b4b96a1dd881272ad8eb03d995124507bdec9a18d955fbc7a0b9333feff6e60231008f0846984f9d82eb459cf534d826f09d113b123d6b6d1eb1bc2f2999a66883bc988d275c305f47d7fc58cd23b17b327a0302047c435bb5006630640230651bf8257eee96504677da9e101d4d1348c9843ed03ffd8a87b99ec1e2df3d2fed08269aa1bd91a70091170a26cb901802303a2c33e2a12cd85fce27a7218172d9801b79f0167fc965c3ab263453c846b392798857d6b177980bc5205f10f898bc030302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bb3d914bc2d5e598cc06b5c4f1d58051d918764c669f705520355698279d20b623c76e1c12b49f50f7c413614a667b8d023024b921830cbb0feb7e223b307d0e1852b644a53b93d9e9fda2912b19e62b931445439f19c753b7e1b128cddb153c60b40302047c435bb500673065023060c3aaaea11ebdc5ba35e56b9697370d1ca3bf81ea6daf10f6ac8e8bc0de19ea200ea766165ad1e316d284529d9181120231009df6f45014bfdbb09ac3b38e6b72b8b08a4537d2ba466b148ace597f210117ddc455e0173ec7b3c8302a75cf01e81f810302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300e3d095e401b0a618696bd2996af34da10087c3335ca9f3e35786a207d0ca948253b3c8c2ebc674b7de308a1a71639d20230167414b2922f2c680135bc2a3b8b21099f300131d2b5ef9eded3f504c9513d034b42b4b3560939dc273e31241bc81c020302047c435bb500673065023100ec2d32616ac8f023c9ac4f1eb400667fce1057235063e41ef070983e64cf7fc7147d03f35c61e46f238b49a041785b630230651d73a32783d7578bbabea48c29f37613d9a9c7daa2917c39c52139d650a60526fb31ab1a837ed2aa8f039f179c82300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a22249fcaef5f0ab2d736c6423cd7ae6267ce97d233c2d6ac4be8233071a52b5beaaf75d0dd19c996773edb763f917a00231009eb8b71dfa94495ba78a231a8b70b8ea84c6521ddd10ec8ef3927a33673823873a0c68cb36dc9d7d90cefc12826a57490302047c435bb50067306502310085af9d167aa5973f64a31733e4be594cb3f20b48af29e0168b7cefd2acd339740e43c49ec92f680c5d4b10a3254b325b023025395bb34ce823caa069d1047cc9ccd360be92f34eb9fad4d03daadc2ba406588b771ec25872bf6a80926de49aff4e190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301c34563c1872472c2499175670f4a91f0604cfdb2f136104e5e95d3cfb7c1f1cbab95da6277635db6ad5318a16b6b9d4023100d5a2d2ec20513ecc39bca4de51beed525109af61388454a4319e8fe073babea2b7d7da1a87a717dec8eedb37b36366ee0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303985d0b725714810e934945e66320ccc11719c6023e1eefe0462b53be4b6e34f308498f5a8d45392aa1432a02bc0696b023100cbd568e347b0fc7cad41dd142bfd0a33306c1f0539fcf376a9a17a7056ccaef1ac5689c2d3fa264c635061dc9c759a360302047c435bb50066306402305aca4391a2826fd2db9f3714ea8999462cecb16adc18e077afc72e4353282caf299401a8f339197f82c08d0ae2fc0bcf02307f975fadcb3839f1c554e16b2fb5235aa312e9e4c37126fd10b5b8f2c92266ae58c7f5207f9af3128710540b1c5321770302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c1c155334af8f7e137b3cbeb943824fa7123065774bdcb22a3ad30dbee53b093ac43318c73a2aa3356fc8abc33f60c9d0231009baa84e5900408121c46c3b133b6f425adb8735f9981ee219b5c28014074d9abaf58fbaea0231a456873df585463d16f0302047c435bb5006730650231009da5fd5b7827f103977afdb12ff8c14e4852d3f3363d08136977c8bbeec003d3118e74838cd337b0328740063670e1b702303c4b3c4ddce5dcdc7363293cba765c602a543f991b8f36ab7c9e3a2e5177adeb60bc1930d52c5cc21d0ba646951ab01d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009fa93ac589549942f6c10202ac5c170ff6989ed7433034271a391b2994b2458306f0b7a3d5fe76ef55cb222286f036e8023100c33c1582de32aa148c1d6f84de27935a5f3171616ec73da682cbd7910482d0e23e045e76068bfdf9cc8836b6e4ded5cf0302047c435bb50066306402307076fe6baf4651e947151bbcdd80ae65c91407622392024ffb4ae654108bb666a2e56ee35b95b8da594c3d156557b32402305c532edf817f6c7f7eb0c243f14f884e2665cd1834ec166f7657101c256c4abe9397ffca64b72a20ec82df8ea0a504020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230155c57faf8c8124bbd9c3c38d01dfc84e4445377f79e281600b50b92ecee532b29e5c82b6c3f40f33623411ecfb809b9023061038b18eb7363e52e7e6344bce315a944e5c805f9b492f5b3646bd825c1e62579e4768fe12bfafc6e346da0bf5fe15c0302047c435bb500663064023059e42ef18ffb52c69e6202a5d4bdf49c62fa7ed96bb2c2439bce5b3eea685073f6147e411e1dab4c60a94c9d5f5f867102304c936c3245192babfad98716ceb85d09f9fba8bb6e9ea99aed6a11c439800d95d306a4316144a807750e0b80ceb99a400302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310083493174f3a018c16a984ef968a8549816dbdb5d41c66f3ec4f785a6365ee14120fc871b394f5d19e756a992e67bf6e7023072a6d2f24e0d2d720e2d02e6a0e5cfdc692414b33361b336803b9433b9058c76af8198d92cf376bf8b72ec8cb3c513820302047c435bb50066306402304f6d011fa8e9926cedea23b65fe8b1a9102dcf7c33cc79a5eb7e025b02721e34166e06d77633bfa24da85b1704839fa6023013ae35e60010425fa3e515b951859d474acc873efbc19c81cfad17bff7df8882dc7e0da3d47aaf42ff6c1dff325a66330302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023077cca621e4827b8dbac3fe9318355217049ca181c0da332a5cd4aa688f8e2f9c09aaf9601b57295c7c71130783196539023100eddb0f257446c3bc158534d65b76e8fc622dd45fa487cf968be1a88d077ac1ec36df9c851e55d13ba61d58e9d9d896650302047c435bb500673065023100fe56537459f360f9ab72684ec2a67137c990675114b0fe21973764b490ef39662e6617e7d9b1e82524e488c7dec1875e0230467c761cec24773e91df39692c62f253aad7857cfab105dc6022337b56738c905cf97ed8913a85427c17414f6e1e9bcc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ca536eb67d88d679f6167cbdae7b4aeb099a67ad0379db1b25ce24e2862fb9750d6f237df5974d545cac9fa63809b413023100d481a3d81710bdd6e806dbf0381481e7cbc2a9646a7129c0eec9fbdf11cc5991d977a4a0751e5215b971e9d3c4ba047b0302047c435bb500683066023100877ec673de8f6e28cdba81472663447460ffcc64aa1570981c0011f01874d891bf2bdff4896f61e2702d3242510d4cd902310085ba0a90fa71975ac1cba7b599a3a43f9369defd986d10eec6bbc003ef6fd7cc63e331fe15491098f7e17c2af6536c680302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300640324069aaefc135cd734b64bbae5b48ef57aa2d91d8cf3c872e075df336361ac39931ce19fd405464e4b2d897175802310087149a0e2a684a9a885f7510c3439530881145b509b1348a09b958333ee97cb4268011135c5c744486e121a1ce4b99c40302047c435bb50066306402307f0ee2d41b3c502d55500778726d8fb584713a07e4d10bb00d55fdf3bdb7f110934e5d477551c9925088490da83cbb5e02302bc9adecc2491cbde037778e7480b88f01118121fc45f21bebd8c5ecf5697ac915c4f5b256cdb8a2a584c7f97c395fb00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a945ab367af2c6120dc59f6e2924b0273f66279449f611fb5926ab7c0efe04c5a7099e20091018489ea2656f111ba2690231008f1557881b0edf97c5b66b0d858eaaaba970c41f76d3eaecbcf9638a391bd36812ae6526469c3ea92d2b5ecbd24bd6b20302047c435bb500683066023100bfe5094e519c33a106fb4ec298161fc9756836dbfde6e9234a70b2e269de3c6f91ec35044752c1e2ff8ebfcbe36b3b8e023100a7eef13ffdb18c541c0c7bccab78643b546040d6b49db4799a4edf04d1ec45204f416e0fa5e8139de3d0870bf81d195a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306413a2eba6ba89650d7b3ae9699d23aea0d0fb526b41f149a69f72b4a2046ceb8b1c8f6fbc13f54e16b7a7874a84dd680231008d6f0f992dee70a7f081fe62ef80fed90be7cd41d4d9c079fd35a65e5f22de241c09119748c868694981d69c820becb50302047c435bb50066306402301bdc0c3b6ffe4e8f0ce8ad4052b2883b4655e086933fc845a394fb9c649068d2f70f4908b28e85e3161be79aba7f11d302303ec599a7185af816ccee4231f5761f34f2ec8c7b9335b472c6ef1467938804f33446f207c0b3e7b52afe58aea33729b90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305ef501719c8b942a241ee90b311396a398c38cfc8e7d2bfc323e8bf425a9aa8201c6e45a1b0c11652d9a09c0a49ba9da023100e4f904e355c9ef04a85712c73367be65651eb7d7e3ce29e2ac161dfe3078e1c9a71d729cc73a593240cd88a0c909a6190302047c435bb500673065023100d350b953465b807e0264c3c23974d4c3e5d62e4536d1c0f475a2fc8dc48f85bfa1ed12fa33bc1deb0f7bf1603b5cea9c0230537fa12d992a7bce1218d260233433e2887dea37d407f18a8cfebb480c0741e158b0db4a4af476518eb4f7c2d536bd730302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f796187c6c4afc3214990ba41069528943948f021f5d07a8d50aaa1f09369d0730333cb270d1a61eb402ca9ad90b84f502303556924ebc4ec89ce36d1c3e42d5aa9ef575b1658d5e936ed58aab8fff611a1254223a515dc00d7de4ce6101fd8d2cd70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a92337407ec57867b05d86af81613e9b0a9f3cc1e449c241882c7eefe6585a60673ef61bd5b49a9af0f02ae3c8412d38023100da5dac40de345071aeced04297d6e7ef8ab97a8e096d96e2603da76c0db44b425bb533046b1baad0fba318d8434a323d0302047c435bb5006630640230096f713834e9be02036db8120f0dc0056a8dbbdea05fc99681c4e8f58824a3f9da165a407fb47a8a6a31ef22cd32286d02305649d5f854b13ca5d04df3ef3639d31add9af5863b78acb9b810bb2a410eaa1135bd4a14626bbdecc663d63d5332fe300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a03ee621384c2ab7a210388254cdb7adae0817b44293ec4249c8cb68dda85799f634a7526217a3e1b6e6f2ef6f33c21d023047df6b9231d66e4135f62ce04fef881fa24d24f631a6aaf8854c9d4595589f2e1c1dacee7098cb860e84c39d251ad9bd0302047c435bb500683066023100df0c0537fa05defe184a4aa6df98c001134813ef9628a2c38ba045b7bf87e9a672fa77b222ccbdbe40ca7f4f8e219ab4023100a50d1d46cb703a733867f38710813cf57acdb0862f9ebaed4cb5002218acb0cd53f0bd4a5a0992ad9c86a358a193eb3b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023039a336ce4ee4fbe0b4cf7fa3169417bb376405f08985cc1ca42595031c157a265c1ac75e5ae6bbc1741bc9998b9d717c02305d3accda8a0cf03869e4061c7a32ddd860d4eefc4328d57bd8fd6a9df9a5ecf13a412240009fa5bcee4f8be6149cd96f0302047c435bb5006730650231009cb438047bb66e4303a12db67f5c1ec323563a17676b005d2fb52d7dbf2d00a3a1eee4ff6d1b338ed35010c69340d0e502306cd6f1e9cf7eb141ed8d0556a766677dfa5cf28f7b342cfcfcf9e96c8f388d3db13a10a42da3afb88c0559c0e91fe8c40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aba1a6ad62f0bd81dbdf1d7c546a3b44424850450feaf227465162c2d2cbb21cca4144916dbf318b1dd936f1c417d5d90230781c02886b88062f71989c30ba3387200922b52ce7d3ee38ca0aa9442df918e75925e8897c2e08ceef21f87c3eabf9fb0302047c435bb50066306402301bf6dd86e98bf0cd3257780619f1a61ba03df379f31669b9dd915a86a48d1ca2235e3d54e0c176cc496e1077e3f05365023049a302d342114099e15e7af357ec77031d5d5f660085fecb34d57b397277e320de54a98b11f45fbcf9e5aa20f9379d350302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310093c7ee808e63f1d8735a4770280713a2a1c5dee962f0782b1f0b566a161c64ec421019935a10e8333ce25389c3998db2023100b7e38f1859d35ae5c0f6175081db65d726ab8c6e9874bec5ea9e7e822ac3622fdbe1245247ad3c635bb25133ca3aa61a0302047c435bb50066306402306a9afcdc8811a44afb5957dcbb9491348b34aa0d7479766f6b3e45c2112eeb98c930f746b23afcd15e111c3f01e754e202303d68e1107c39989230d755a31511c2350ed992250890de72e84541045002598771198aa04e8236a932de1dbf0385e00f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305896097651d1f1f340d7de843b0cd776911f38292156fe4bd4be09fd4246a97dcb3181e81ad5df4eb77f539829f71bbd023100ad6cdf54dd224e46239b256ad546d660036d18e78a0e06f50a0a2cbc2241e608f19008b83698af0235d432d6b9c5daf90302047c435bb500673065023100dcd8240056a4f7291419a0dd6e65d982945f79d5e83041ef01632edf0aaaf82d5042ad53ea546a3a03b55e6c654c2555023078febc692d6e6a2ce662110c95444dcdee0674c4b9e46f9c35693d9c07dfb8446f0ad1c4b80ab36870e20421a896bc640302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e9ae273f59675043bb99278852b4e54aada6e859640dcc0ed4eb5e5f71261e03dd76ad64531f72e547aa48b8a2b759d802307b712cb04a948473484e7c10d8361addaf4254369eb0ddb54f78b2846f1bfaa0acb227e7a03fce2fcd65c088edfcf5d40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302fce30fe439fa95b478c93c76f09410c24327c2aaa932a377d30a27b9e4427e5a293e7d695549b844b4ec9ed01fd9227023100d43f19b3b6fcae32d786febc6a6f4793a5d5e98049a8c137ee1bbaa91c2659a1e4cac1c5af432c027e73e471240b96c60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100933f08bf07efd27796f284faa9d55750bdd4c22236a95c72179061e2e6726809ab4aded70460ce7544fff13b94c0c2ce02303ddf7a5f0c8bd0cb8ba65784655e8fc0a9a4f1a0ecca14cc579bb220af6bb4e5331f2ecc063dc14a4688b092c8b2aa540302047c435bb50068306602310082b54a032edafc8b859bb867cb237c1ffd370f8254ec17ffd11f7dc63caae94f1ba997c97b0ea6d55db063e155ef59d5023100cdd61593a1d364252b585bdc8eabc3439c750d37985b276e9ad263b5764d3801c6d163d680c180440e912da307abe8340302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b39f9131253aabedc1a85f41e76a61c1fbf385d74bc50d25c596074771860048389fcd634520e97f9b9676b9fea5486802306771fafad77acdf222d29b9dbe42a91c120348dab2d6c2727f8e8067fb438c19c0c222fdba3a524d9a8a8599b3b8bcc70302047c435bb500673065023033123c23f9d87fca442172ed84f72825393155b8168d949841130811c0c18854ae56dfe6881b8d3e1cab52bfecae551f023100923d5235950e313dc77955a8dd923cc12248646f97548fbecc24e3e77fbbc949244fa003440b0f5c7362919ef9efdda20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023050dab96b5b32194c5d327ee66ef7fe96481923aad6e47f3de7b8e327b3e5dd3851c62698251cf173fbb549d0c4af2112023100a94943cfba744b098dca1001170bb065f5c0d047963e1b29363363f945053e7ad967d31ea6329053f5465e5ea466b87c0302047c435bb50066306402300341f9ea2387735a9231a1e4e2084caf4f12ef421b5aa0370ab7f85f4996e230426c7ae58f134811f76ca94223e8e8a1023076445bcb0db0f6b5d55628e6add4c12c6d794732fd029b96e0f6ab2b36a4e9691e740feaaf693f29dc7512e73e4855510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008680e4c734d73c899d181333c12c40b43a52d631bb2e7141afdc440716b517e15b1734c92c3e68c2af9ba5582b1cc37b02305a89162a06d9b8796932bf6aa1004bb40561323d05fd28ff6f1922469d5b7c80b4322a0bc04b9a4b1063c445332365b90302047c435bb500673065023100d69816777f79b2d0b3f6e2109f84216ad4ee0222915fd5e11546d0ebe23598e91c9f120c169cfd39d725f2953812728a02307c294d74e5a54075cb9a4a70eebcdb7cdfdd19c2c36c949699db38f6241608cee95603603392576146025ad90db5470f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e9b896a13125a383973f20019bca8725ece7fb66b6d36422e3bd5584ea99e11d89c0f036a7931e64613ff1fd0aac8dba02301ba5a22d44d4bbfe5d56e47637a476aee09584b419a59a9d57b7e51c02f237709aeb3c98d3ee5dc00a377dea08228bdd0302047c435bb5006730650231008fed811e7ba12b9aa4862aba97c6b2cb696e643ee72d414ed07af87dc129eb9a6ea4671a7084bdcef8c8a3186517340d0230530b8e0aafdce99a2ead125c17f77163cb452ae069b94e6b27b6f7bc028c3461325ce3824a56796114bfc47b3d1698330302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310094f08b7711b2d605858f86344b22d5da4ef1bfa9e2fe039e85ea65b471bdb2f11ddc57faa6e96b8eec19a128862c6c9e023017d6fa9619b7db7f2f24161c6ed0a7fa030a52b0cfc5dd16c415fdcd84feda51637803762dace2b866fc431ed0eb274d0302047c435bb5006730650231008fe72c63236d1e3535fa5382d4d1b39242b24498a24633f5230935b006fcf53478afa4d356579b2faccd14f60c4c62ef0230623984be9babc00e84ad06d8a450a0a4bdb65267d30511345016c861703acda9f3eb2484cb15dae825db82b8c3bc6e450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303fb8b8e4093b423469509c53ec3d0050b3899f5ef05dd173133e9b80e531daba40c927a8ec6864bc078c7343a70178b6023100cf9efbf1a5813b259c0a1574fa0794058b7c5164de9e8aeacfbd13a2af8df0f51edabad1e19818436972fbbd7b2e78540302047c435bb50067306502310099fbe72c465e97a9987f5f03f552b50e6bd4e1fb2eb479f9f3812309a594a5c6220ac2485cd36ea257dbed35b806b72e02307720addefd2464ba8617de25720a029adafe535ebfb6768c9bfc47b2a75f9ec7472eb29569354239c1da27f74666958b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306c0e9bd2fdbbe29a3049b5bcffdead3fa7fb06ddaf7b7d44056ccd08298c8210ecc6af2a379e23fd6e6a3ef728ad2fd0023075d78a019bdfed8036d8638d7b58c438173ed49d177af7518ad037f0d3fb13ffd4af4f997859af4526e62f53c9242f950302047c435bb500673065023100aa9d572ad5dfc7b6c42e6a0ff8a856db26bd40dbd893f9ffd9a4d5274304bf918371a27bce7be57f71369c0f8aad82c302302a8ca42510f8d2e6abeec9a6c2a5c22135feade6a3a26de95d94f9cfee60b7e58bd5b831a49ba34cd1c88b17d4eb6eee0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306302684c468ac684da89845a7695790b2fe42a9b1d2348ca96d1b85f217ba569feee9fcdef3277991640ac007e3314260230200bfaae123b7bc086112a6e0ea5d0b547ee0a9b26664effeb7865546ac2e8c1266df1aa57d40539726fcf15696582d00302047c435bb500673065023100e87b4cb574648ea3ff98ca51080b8646c8f82c004555ed4234c1e265eadb36f08438afb8f6494eb640ca41ec55155f2c02307b405331092ae6f168ff60311d06efe1d91fed404dad6d640584cba7b0d02827e42faf8381f5db38dee2cf5662e5e3870302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300afa201816fe93a58ee248559e2d991d93bed03df4073e1496e96caca908f6fd78589b03ffb9382ab11fb67addcb33e7023009b145f0a2288c579c1848bf72548e02e9aade257439a05e6cbc078697021f1ad4e3e1eda3819a07e161b5d442892fdb0302047c435bb50067306502302226b0a9a1cd84c2a64338440257bb9d474b44a4651d05cc1899b0bf5187e90938e72a6e3d26f55d8b8faf4189af749802310099dd050de2f20002f677efb36683c360cc4ec001a619412f2eacc8f907e4ba68e744d1ca3f16d9c5ed11ddb83203f76e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230048ff5fa9d373a4b355ae74d0029d658b7853e725490238a0a9312edd7bee848434ec433cf6d6d43498b804b7f19a86302300a453defdaaaaea5362c80633df3bd2ad1002aa39a2661f17e4a99bb2028b77b2c811b709b73597d35ac33560853700a0302047c435bb5006730650230410bc2f70d760ce754846239185a608ffb68edc079d416134b6fa88c9499638d4ab5d4f7fc120df4e625adf24a37c34c023100c3c51aaf171c2b98ef3dc348ceb2851605305b38fd785913caa45da2b2b71fda78e49989a3191b800a9e7a7b37e26f180302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023071b4674325e34d303f98bea69aa988055ede13a5f13d56dd0d8941ff314c021f5b0eb988d3c34a18e85911ed7c6af19b023068a07d6f506d01d6aac315ccbf4d4f0ca781c04c9b878ec14c755cd979a0d4477a50dfa624527d39531fbd06d7a63de10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f5f1a788442ab6a6b1090ea226cf8f57b5e2b25e0577ec4518eea0c4dc4d19d5cfcdc70a61eecef2135740a00161003202302643bd8ff0d1f6ccab220b08d3e6ace8048f1b43283fb12bf231e3dbaaaeb66a9f75c15c1724930c4f271558a003d4a10302047c435bb500683066023100948e297b056897376c52caf0516f2e9667447eaeac67111d851eebca9b3dda064eb262bd64a68db0cefbd903275a6b0f0231009790c444bea5994f9cc0d7133ddb5a46063ca0bae7b2b80784403aa9c673522ffb705c0656a489c5784d1ddd9648d1e30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307790953e4369f85bd055624614573435a99e2d54dc56aabf1f8d09c5bc6256e36958b8a7cc8f337cd58c9240903f5ce6023053cb64dd8cc3a6982a2fc82383934cc401958db8701809f43e140733757d7caf6efacbd83914c3853a588e78c73f22770302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009a55e1f93eb2597d63884f2ecd1aaf907b833124490110b8cf27f65c7162c4688120a88b0eebc0431aab2484e6202d7d02307157e0ead9043c842006663a1a797d811d79e3181401ac79056260005563219445e4e893837398ed8480c5ff73672d830302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ea2a20fcd6c2cb16f391c80bf71835beabdff7716ccfb6575d6b1200016b23d6d86b0a70ff73031ef90d2df551bc99d0023100c2b8bfd9315ff1eb5fa74aa6901588f6b1e923e504a9cf4f829280a265252def0912ca1ee96a88cf2e1ff2d1dea519880302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303a5da82f001aaf11e7456203f75af659a2b6ade670eff72c9b7facbb6cdcddc6f2cbe4feb8d3c4a5dd0f202a6c83865402304eb5c9b59061d9972006750193965da0f17170585952f3ac38f5cae5aafdcec51bce2223450b81ab6676bb674ede82740302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023031d13125f1c109b3d11187d80a000fa9820c3482c2f810c1ef19dd4556ba8f55d6d8dfc8197fe4e7b5f34b94790a32a5023100f4c6847924fd39e4b77213a2b9a1b2e97131342909e45f665ea3123df908ecfff5f14b2d84198249e0234f4366fa10190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a354c6afaad2b4bf35caf943bf8e5f75782010c57e64c72139de098c0845f90c07809b007487cab1e0fe31f8e5a0f48c02303944566046e23ce8a3a96e1001058c9cb3a8e4467e7e8a6a513cfd64e790afe130f26ee4080def9c8e858093d1a635090302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100eb97c5fc0d02bb158c6e448f33ff8f6f560c2b98bbb3a01aa006e626737f84d7e0152c1e75f51738d1a5635993c04502023063b594734086e557ecd85fa3b2cb2aa026737b7115d722e5af5bb0a6c2cc3fb2e3c0f7ed9175985379f658194d9a759d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ea98c8632a4451c7401d7b6d406299c5440249a0c871a15f5a87c2343b8bc19cf2e0f165dae1b1f56ecc13e9d62e295e0231009c8379815e5a5d5e3e1f687a7393426d94ef3830cf8abb8488a38b1505a91b2eb036894354396167f70571840ab877220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300a0de7dc917d8b8b402a2268c2fdf49b38f6ce6c4a15493f3ce5142fd200e4e60236f5326f557f473a9c65687513d21302304af893b424f6cbbffdad656a3135e8d38e51af2184b8338f6830d7d6398f71aadf9d046f01406c93a324b98fe5a74abc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230026eca217df34be9a45777d577227f9eb56fdefca6cfff07fd5a03455fe0d03079f76667ebf958c2daeb617e529c71ec02300eca3e674ef46f0c2d538f47c08e45ad342a973d9d8318b86294e701e1e2a7c9407dddabf551a2a4a4a7de4d9e10c02e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302b4c8d515aa25ab007d521c0297e718c274f2b0795e802505023116997719b2097316cf18553388353d4530e0d062c2402305cc71dbb3754acc3db6c10531e117c1eb0da4692a09d850e860c93da4fa1f41181cd814dd0459d4b60574cf2c0568ceb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302d8942bf291aeb1b4ccbfdfde6531a476fb4779550929741843887b75fee1622ef534c67a31a11efed863a828716f48c023046f5d3b3f5cfbbaea7131c6689f2cfffc6018620af0943df4c783da1d5a0a7226c891feb018515f68611b0913519838d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023002eb429cf2bc547762c18e69f8fcba72c19552cf4fcdb3af086186047b48999d6d6895123c5bd9545e590140dc9658c7023100de4d9d91cf35b8d451988a463269b013a943d260ed47c5ed596f5c7f3e186617296be97abb011564c293e5a2459d29b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d2870c13b3ab5cda23eac65cae4de710d347716528ff86560d3b78cc235260bc7329535b586df4fb54394eaa4d1e42190231008902c9bec7333fcc5263e087e6969942d10f910cc831bdef09c47913968d73c2821755b0a91a76fc823721a8cd2f95400302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300be8fcabf3e2351a99f46b34df1b9fe734e7ae35bf3e5607231347bc36008c3ca1349eefec05dab1a078f7bb350a8b72023100c105dda33da82adf1f392266a364b0b6703a80dfb7631a5ada6c1847e33f8f8ce610a475f6dfb301667eb88fac94593e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023023abd9ed8c70d2a0be7b6bb60898246f389407541bbc8c86c554ee4644603960f6d6c21f2157aa047088e0e644e031c1023100e00b831653b9e464d0f0979f60df75d53fa23962191c99189d67916e97e5b6aa571590321dfa6da645834a335f38526f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305506a7a075d4189c96786179c53014a992fc0144abd69c607df08f6a610ee6b3d3711d56d1c9a2c7dd0332b07aeac15a023026f1ea9d147c441a3704ff2595a85f0e090770bb197917b0954c325a6250058698f22e6e09ae4d568d9afe2d0362e2380302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023054fbb3cea299ef7b04da536c3df303024016006f133158aca5accadd9a863ecab0c8e26edb578de4cc5aeb67c2551c0f0230446be50e31269a864b9293b52f1d214da12fd229e711267f75d9080a2afce702a01a4a0be3eb2614d5695f572e91c3af0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a15a6039dcc49c9071e58824f73a566f4d2172261722b8d868f220b81d6994685c273afc7badc6ac481ba2d627de22ae023100d1238bdc03c28e1909f11bf770873d97f94c827ac0e947e04bf2c99b0195e46d10a1906d01a859d574d789ab256c50d20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230547b73a0796917650a7f0105a79aaa2b75e29e3393cec47cebef746cc28475731ffe9cf5d847ba03a7274819970e16bb02300efbc219226228c43effbcce55b06e1c2b544c4b78b1e64142ca0a69537f83648294e6d0460d039c3648365d086bb7a00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303762753a769e6bb16f985c5e85e20a7cfe888a2524f9822594dd0c8d8adb6eae81005647f11d8cd7667ed4e76ac34c4502301a9e13cc840d40cdc2575fa05f72e9c04ae15145fb2b8a0461440f96374e2d8dc3d8ba12f6770c36d6cb9bf6ccd469f10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cbf2c8a1fa3420c684c18ffd8f8ac109f45c4a107af2e70b7c6693a99942f63c0442f1b66282fe3e973fc0b2b055418d023100f0b4e4ab26350e37e0437dda298c0ea79f1ca24feef03e23f55566063207a0eb22983a717daee65cc58aa3b109a144330302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009401b2dd63ab55018ebe2bb6827ccce43830af2a897424987fb9a137dd91edbbca17b94f3920ce2200cf1ac51e1f0345023100b0c220a588a0b0ac2522b417260fbe787d31a4836452ec25138705343aa5a26b58dda170fba88b8e555ce9cba20f68b30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f93548aed8855b4fbb25cab70ffa63d49cce1e2fca0395d9d0c578dfe3ed531773ac6a9bc30c4accd7ca3c360a09e79902300f5411900b63150545869f94d36fed246059e986af5f501f4b88e02816503fca4fab3cc47c39e5a0db304ab6bbcd27080302047c435bb50067306502304608591c34b5ba6f42a0955b8ef4836abd1a552702a09e8c8998e32790517c1659527b66750e7b36420a4b99ad98aeab02310084d535b4062898826308bf55bf5c4515a341a47fae92c06dda6eaa834b21846211ad61bb55e9d308884a1bbc742b0a610302047c435bb500683066023100bfb677ea2e121d7a198f3e966a9ed2753c10194983963c693bc05e4ed9bef0b86290d5264ef3cc2bfd19cdfa58e51e85023100c8b3a538fd880f16836a78f8bfde115179b89c1af78f2a74e4f585580b8d343d63c01fc1eda45a51379e2d4950109fb10302047c435bb500673065023100b598fa4ffccb6928926f4092a178a416828dc6a88c21f9aff21bdaf08a0b54b9bab7322f0a2edf24a6b8dc4d9d96f1a402303420c3819a63dd3452609627aaa868114cd4fcd3f56370d3627becfce86ce8fa619165c757ce59e05140075d0c81e4460302047c435bb500683066023100c60242a2f5a64fceec5c7c26bb87b0efb06bad17e24787e6fbece2d2b2c31452125b84b18cf913174bdfd647254585140231008d9f993125b3a79f6ea571e8b52f296b445753a99f596a104d470fc094848d5972dbc1cde9de6a48d26d1920cd4c7f9e0302047c435bb500683066023100cd3a8d2094dd20b186701f5f7f5063fce974ac14d3186e16f385410b6476dadc35e1c78b88cffc3f11c1b0b0c9857889023100e6a342f518c6453a68d76f2d51d9791cbb64ce4777932411f522047990bea1c7fb74c65dc173806a8170c7eb01d1ed800302047c435bb500683066023100a7125ab0a5a006264bfb1e42c4b36e9e8c723e0c12007ff4c656ef18ded0f0a4308a4fdeb5de34063c9019ed8e295852023100caa9fc2c07ad7af1d1a0309431b3e68318860c703b5de02fa04906c9cb862798f156055a115028b81e682a0fbf7d75ca0302047c435bb500673065023021bfcb3b253796c9bdc9386730096d7e0ac46c834d72f945b62cc3434e400a04535c8bb1efc4a43462925ff7e463d7d40231008781f363ec4c49466278ada1a95edd70b2ffdfa365710e86c42a0e1aa96443d9217e0b38077dcd21558d13debcc554ec0302047c435bb50066306402300da42d479377a854f9347ab0ce0270e2e6f31b79660320802abfb29c5b8c5b501093fcd9c0ab14fd04cb316a320afce8023038f9efd9c48e88f7b6fcbe6ea715efd2a574950a10d2faa05517869c32328d39f4b9c6b8531bfb7a9900df0598b518c60302047c435bb50068306602310081c40997985253aec4a50b879ab9563373a44e02250122dbfdb52fc627aa6fd20d01ebecf0f7dad02e99dd63dcd558bd023100d7eafd0521ac630b1ee8d9f278a9e6bd7f57de538adb18dda8725275a5e7285b13e4a6ebc15aef1a9b5e8509979487ce0302047c435bb500673065023079f7b5933384844a57dffbb650a0026c2b71210ea8a325fb35c683a0370da157977ca0a9a78d7c79f02fb82b1f59882f0231008d078d8254b89b57dcf57414d765edc51dc544f0e00d4905c08827872a373266c9ac84e0b1b3e018d57a96e77f6b5b9e0302047c435bb500673065023037e069dc2b6cf6cbe7c3dff4dccfab9cdf42a5dff211528bf822e836f1070bfe683df52c80bf98ba2a32113f885bc15d023100d799f216ddea92f4e0442290a22c9d56bd7c31561768022838b0f569f9cb19c7d25e6c1de3ad2ae1d93d8a3a6c30a9aa0302047c435bb50066306402304b5d397f32475c4341e534734921ff903668e82c6a46ef5373ee59063f9ca3da447b7378f4a034269fccc373db6782b60230526160258b2988e03c3fac6b923d8f955a195a39574f3ff0c74e0291d9d5c65e3976c13cbb50d5754be7baed9af4e4c30302047c435bb500683066023100ff4eb6d589eb4926b6c0807a3fe218e88bb3e408292728b9128d7dacd32305f78556e90e7b2da4e9ea95819ff5651906023100b5203e00b053ccbebb19dc3719c4f9a2789ee3ef247fa31f5bc57198bdd627c732e4bbdc55b17648383942eed23aeafa0302047c435bb500683066023100e06ac05d348ad432ceb4102057545a04ccb342e6994c5271aa61cc7bd5072230ffc33fe88f8c2b3ddb1592edc3e7d346023100bfb271ebfba08409719c9bd998dc86a56b7b5b4dfc6998c4ef8a873d7e9f7f358ebc79aee000237f7c211628343fe6980302047c435bb500663064023019c25d9f661af9fa0ede873b6fa2820062e97d0aa1bd23d222d042fd9a312174b069cf6539c5975a852519160a0e4c5f02305ad63c2a4d0d742d2c4bb623ca8b6d7b5991ee01a808b7132e74c0ea14aa72c4557803fba4a67366a30e3770378ec2d80302047c435bb50067306502303805d8a790eaabc542b2bb170f8bbe70626fbf72d85b24077304c46cecc97e51db411ec3eaff6bc768224ac76736691a023100c50b2635038a81b122f9fed870aed6ca0e8d89a39b054a3fb396319651202615313c2c866413cb929c42118ccd0df2320302047c435bb50067306502302538e5bfb5307b6a5dfc17328c511660ccc26b5c8818780e967a5b01d6d3cd24583150c55eb41368b25fe00db7cec084023100918256269ee47dc44e47d937138ffcea33eb18f0b37780641ecc5064faac4a2e82900fe01588f64658831051211614610302047c435bb5006730650230535a5cfa81f87e9c3fca444e9fadce9e533d96d3bbb0a5bb703e43c522e4bcdb912b302bd6be94c1352e865487a913cb023100ee7f887dd45efb902f64a458f9ef9c1c059fd3b3e1362bfa7faa5cb093a8f6d5b93123bcb3e0bb90ecec302df8138aba0302047c435bb500683066023100c9d6d70c023df6cb27bd99f75e2eefee6f432fcb9fe57b072ee75c452536d5b015351a9c7f934f790f10f544737f84a6023100c2e95792ba6167836f1beb7df42f0f1715f66fe3a5214bc916e8c47beb8a912c52bd118f2d1f03b89f8476dfd6a592370302047c435bb50067306502306a522b049deb98b7730a797b061e231fd041b09510f40ff4b37958ba45a3d393981a4e17b203c5483bd6da53bd709ddf023100d485d9131ba74b1c6250b0a26ef296855943f92b994c90a99871bbd8c3e37160b56443aa2838558f559faff6f2c2b7a30302047c435bb500673065023022e7e62655427560f374eb2eb72e93039d70ef179336d6b659f98fd2c618fc4946f7c1d59049db9697daa0b5b574521a02310086d370c0444675b392db65576a25f89d25779824f7fa694d5cb31faf7448f0320abe16ea8ae8fd4e636f16923de55b230302047c435bb500683066023100b665d420641a98fc3f1a73d86136cd891efbe2bfb38d773fab627b80c66f54c20045f9d3e27da22d98019b34dace77e8023100fd53a396b5d5043f3ebf9cfac7a2005df43f0aa9a933895a667295a08ea4ad4c62643d30b59d1fe27df033105a541c200302047c435bb500683066023100c185e30c5c050a2a1f4ba8ca8e6265e1582b8afc2b98f5f97058f22887e373d65ce2a4c476dfeb8000ecec49f360eb48023100d731aa5f1bc9e100bf52b7d28f37c90b86dfced9fd11237a9e85cf6fced73d35b074c8a9acdf66388f323d352452596d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230381edcfe1926038188cd3258dff0c2f33dfe99f0142591a77f541f05adcf5283b0fc4f646eae8b2c926fd686e45c3a9a023100a14f21f565b9e28dd02e524b069c18867920b756cd023ab843bc3015f67be9baad89aa8988ab21a85e04f4e4df2a844b0302047c435bb5006730650230711d89c3a3e99dbadba7644b2619fb72ca5e38d9f29e6b2181cd56350ed5a4c3db4269c0ac0ea80bf0d91d197d6c2ddb023100e5fa16a2f377a971b57b535df59072fd38a704d7a508de0dc8199559ede3dcf1176e1da165a05f6c29cc184307e158c20302047c435bb500683066023100fc21434eaae8556668fa58021a7f0f8617618b150a675effd1d380bb127555a1287a09ba4e4e596fe59169bcd672156f023100d4c392797595f959be3b2aadf89e68417726082b11e81612121ddfe5b4c3fcf010eebfbe18a92fc23cc8b95d2d7e4ab80302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb500683066023100e3a51019fa89a4ca11f1d1759ba1123914a5a1b326ffae81dc3985d02e9b38e31ff1be741753546a5a916423ed3f357c0231008628c00d8acb946d98f1df5379fdfe6866d8278c101991a1583c301ab29ccd1c2fa2894c105d5c508c94b68cf4bae0210302047c435bb50066306402307018cc50a070860aff9f12229b111fb9611958dadbfff075bee0b5526ae2fd5efc2cb2ad578d400fc28509e6469b55f702302cada1e85a99ef741a16db858a906e34b0bcbba77756a12e687031019a9812bc01f8a90ec0376c4e92ceeaf43c2962680302047c435bb5006830660231009e48c348b8e663772b38ea6ec16669ad432d779b214d03436e11d4d9bd52cbadbe9bc1c1e4ce0bac03a81669fae1cb800231008342e619c8509ca6e7de15b388053c9f6f08a8172c5f65eeecee4ab95b267f53f120209a95b728137065707ae7f7d6f40302047c435bb500673065023100ca54cb7349066f2a1b096f26235c8f5e8121db687e8b575fa2350456306bd693ac5b7b0cb6f7d7d63d76445be5c4310302304ad95e04cd4cd229cd23fbcdcf4cd71c93f76806ccc23bbb8cb08f20837a988913b756da69205fbed202c6b0d4705d500302047c435bb500673065023100da4f944eb353da96121255c90dc573042425e08736190854b77dcd8da24ac49966ebaaf8cf366e98fc668a30c3b938bf023008ab88ef3d1992b361cc1bbab44aa73619c4ff80f3162e84bbb46ea1e4a787fa9ff28f830650d85ff2830a08e6efb8c70302047c435bb500683066023100f3730ef7310dd09403c836dab8261a278745985d140a8c458f2defd949ee31b886dfb8dd394e4d7c517cf3a019a873ff023100fe4f021c1311f5f37338baff3d6dfaf0a2a96e3ec3a54d3765bed30ba67657f4d7ed8d02891dae81d5e5139db036f84e0302047c435bb50067306502303ce84c2e8eb5d27ba6e0d81fa9e0674c166183889ae9a731b696e74b85df51863ca214131bc32a31580967d39eb10e6b0231008e85c1a47f5d91f6cdc4d214f6c4f25c466c6464d8eba5208ea3eba830378eba928026f13c723720f2e210d742f59c280302047c435bb50067306502310084aa32db023edc1f456d0351b9a1e1762f3a22e13c29ba683e513022ea6cf061d705ea7ee805f2a6823fea598d81e22e02302dd026c45d398e53399f9e91ce630e2099f1bd4d25d99fd6e230fc699fd475583534ea0b6fbe3d220884a4ede41d2e4d0302047c435bb5006630640230008ce37a5a1ced0bd9ecbaee154e9f9fdc5a14b52b3f9e498adb7d6727af76b50031a981deba83c5b433a9e6b0aa4da30230027ffd3ad437f588e7db25902640568a5e8206f0900badfb5b06d7be9d829dc6ccaab2355860070374a39aa5133512d30302047c435bb500663064023032ed228ae513b82bb78f475af0b61b74ccf7c1a19a9aebfca460b23b8939e78cd58cc2db7bbf9b61920fa8d3a1af07ff02303e7824fd0c9318a914c711299d0de62c06d3447664afb0b961f0beba29aaa2f21fc009f72bcc56986bc70ead051cf2530302047c435bb500673065023100a92adfbe30195d18c5b9ac0bb501de4566944a89cf3fd77ba0071a589071696147933e5a6a9b5420c87a2c9d4ab72f3f02302b34816b65d60c264f8a211969641e3245d03a9c17dd832ca13d2fb6d8794ffc31c772e67accd1e8ccbd3765146d4bc40302047c435bb500683066023100942927c57acf63770d01125c001c7cb1ccf02db7206585496743fce01fa73bfd674dfc227b807e995aa6e34f3ed5c21e0231008313fd15405b7bcdd8859828f85e56e571c51bb1c284d211db8d24de32c26421d3b0450490d5b8c76dab52c517e850740302047c435bb5006730650231009a5e3ac92fb7e801419dc6c7d11286755c2830650e9881254b5894f4ddd8238d9385f64f589d9381c57c538a08e3511802302aed759338911544d6f49d5756e7895fc541650635ebc273eca109f9c2f2a5f2b1c367ffa6840a9f52d5d68184555e250302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008ed540a36520bf5ab829076120538cf8e40f331311eeb3f418e315060269b0ee6febd6209e18135dd3d8d27888a2be1502305a6ec25ac1a4aba09864365c74a52bd58a5132c59e4eae87cf26467e9babf875b0f32dd5f9593d799dfc8584be1ee1960302047c435bb500673065023100953e4ba4995072db0eb70f7a255dd24da9a6aed43ce90d8797808968627ded6fe2c2a9fcf06d629036a89d887d4b746802306d7faad171b84bf7fb778bee5f060cd790230f50a71b6b9ee4bc9d4d1067158c3d2a4bc5bdbac7d47a3592828cf9be080302047c435bb50067306502303aef67387308661a003b656a840f5c2703093c9e4a55159da3d40ee838309993a24f6665bbcee3ade1946aa507e97784023100d768cc5e6707330442527949edf8f283ce2d8591cafde0bf4803fb194473d794f29afc267d692e403cf200b1c0f0f4000302047c435bb50066306402303d2e57b9b6112e5785f14b4dbd02d2b87eb8df13c4fbe18060a0b543c98724f29d19d4e3e717e5993edb2c179608fa0a0230365e3a34eaa7c3a149a1ec203dbae5d5cae7ee479bf6f9546591e838194f352a8ce9a42def7d982e9f18508f8b1c23f30302047c435bb500683066023100e612afd4fbb92add1958d811aff6348efe07e3c7a1a709f2c0222d0ff8e5edeb48d1ac1702b4039b5ebf5ff5ac0a308b023100ff0c2f921c3f8c9d4b52817205174c912a908a1b4bc2ccab5f0d20b30faf7e033f91df749a5dd17c671b8fe560c9a2740302047c435bb5006630640230347cc723c666c52bc56318ed60cc2dbd27693fc5129a83a7610cb4aae467030bc3a4571a52f525b14aca871cf22d22c6023072ea7744224d2172e08af544a3948a5e198845987fd8451ab15cb68b5c9711ac18db4d3ba199d319bedf49bca735ef4d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100967b965b37ae7af0a4e1ea280d11f82d684ee55fafedfa6da0dd2abd99e48070a874944932d6b2a5bf96f6caa714fe0d02303f6477481f21e062bb5220cc1d5171909ed248c7cfa7ef1a14e499b2143ea9109fa24d602e04b68cca64e6e24007fb340302047c435bb5006630640230282fd38bf673ba20d333da87955029a133b970a3aa4f8ad980af0c3bf92af716ed484babbe5ce945b4a05d8010b72c1e0230499ea69be22e437da21a7e5e6302a0c99f55a347581a7a8ee51d52d77cf47adf8bb80a86f167ccee2d02b4cc2bf0b3220302047c435bb500683066023100b1f34f4415a50db33ce6974ddc4a73f751c7b7e1b80dfbb7bb164f1446b92f724f0ae61cf3eaca3fd938ddb49f286bf3023100aebd54f2dff52942dd1bb302fae91944ee0cd27f93271327ef2be0037541dacb1e2a4613e313535287723412f62f7d3b0302047c435bb500683066023100a34740bc2db079b6a9421e248c41541a5d4c63859dac9fa2a25e89115f19bb2e777668499a024c66756f99f39b3284d6023100a78e0e62871af42bd8e8111af0c2b8ca88d6bb3d3682f5d6fb699f056b5422b3d6a985fc920c780bb2c4f67e544aa5460302047c435bb500683066023100eafb4881057660a68e4c03006f0e739350afaa5653a058a257f5981a848406bdf71509106c0fb7f1a515f52d1e770d6c02310088f9414a9472e6db136b1c3e087489cbae907161087a22bdaaf5e9ef7889acf80f7624e9d7e7b237526946c599cca8c10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d10212db35320eacb7d7625dc598d2b3d4827c77734ee7d200a2d01a69ab1cd0b3e8047847f308cfb1c0811bcef21c5d023028719077b90f7276a9e50c010344f0b27c2667e7a1b271d7044785d1bb2b46b735754b5282c9c38219a8c867f691f8af0302047c435bb500683066023100e65fe0d72f2c470a97804bb65e1068d549624a89d1f31b6c8c4a821accdc7260d6edf5765cf6f3ad39dce241b2a35bd5023100ee3270d4c587311e8232573f6a98f028c3392fe8a9624bb6a73540ac733cdb184a03eaabf9e14a25bc2555ab5bd819ab0302047c435bb500673065023025556d43a754df81b51c9185ca0cd5b5e108dc344295578a79d247eaa5780d52ea64cd60ab3fdac4c18f2c434bebc015023100d66a19dec204c3fbe632cb467fe45029b237f3206e4cac55dc915a0195fb2fb2e58c1684a2a5e90b20694103b74dd36b0302047c435bb5006630640230691c561842e7eb0fd5c6ce668a39682b876a36e85fa54f9b0b4684ec80d53fec6068f78c3f6890bd79770d67bfabbdd002307a48a2c616d66293453b6dd2cbdb7918722be66db20e835e61622280c83306d09931433f662900aae4e7c30883e9a3100302047c435bb500683066023100be62bb80b3e2b7bf64d066055b63d2e97b24728c8dc3c6c70924b8ca9be4f4523c229659e9dd7d5f0dda650cabfff40c023100f75d009a6577a9a3d84f8fec580f36605c1c4eb37560a872ac66a6400996cc04333689ac947ae4e3cdb935cf5b45e1980302047c435bb50066306402302f5660e3742149934f0fbf766e4d7d1c046eb8eb4c20b7cf39d3dbbd7f3a35ce90b34f5a3fab9bea65608e3d833fdc4e023062808b598ec1c171b394731d898f97eecdb03f705b16282d3924de76efeaf8baefac28f23b2d5f39c48ff758f70e19470302047c435bb500673065023100a35da88c1495d43789a4c187d86611262c25c96fea702453e17309912d02590a65ff33b4239030cae4304f6ecd9b9eea0230060b25c6b4f1527f4caede2233e2c14ff6ee18d0289f8b51c18073762d49e602b9a442430c8174b95e082cee773cfe8e0302047c435bb500683066023100c2ea87d22f86fa123eeed8902d362455aa90c069ddb77854a5badc595d119ddd67aff1ca82f970c1b23a72b32949306b023100b38e4504b70a55a5f5ac2586371335637a8fe17484db347cb8191bc749d91fdd9ee94e88bb1863404ef0a86fa4d9aa8e0302047c435bb50067306502306273b75a395799ae9fcb1aa86391847fb4e54818cdc594567f275e1e002750b69de2d0bd7b04f51276a1914f261314c0023100ad9cef49a36d0753a1ab888112b358e63356b37c96b95661077ae2e5f72030e68ff2899135cd3dd8d14a21ac72c59beb0302047c435bb50067306502307a04f7b35d69912356ec718e45db0096fc75a15052a81b18149b81e3536719f43050157d9668fd0f1cf6d6554437f57d023100bfa09fb2ba5672fe638d2729056d1b62fb92d0795418810651a7417ae774f820b9eadfd826e1a3579298308321b8c0b80302047c435bb500683066023100ffbb97c3caec5f8c9a7b1b04b1bdad1b3d83e5f2634db14712e351064d15a4d61c77756726950c79b5aab54bfb434ace023100a3a4169addaab5c3e4b1ec8ba80938f160c3bd39e53781c230a900c2036dfa83fc3ef96723b467cd8b13ab5288b608fc0302047c435bb50067306502302699fd6959db6fbfa07836bef06eb6d3e5196006b34d1182a6af48143cd1a8c25125774450b17210e322eebcdabeb8da023100ba3140d556268f91e4b7a500c09562eddec732ae44d370d9936c611feef5becfdd26ff49709c8e5f23f27713d10fffd10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100af7b25b3604afff6f43b5906c4f895c9c4e1399e15d48d5429ed91b96339afb9294ff381913b6ae770c3c564c7321c70023030ecb2c3e79611630e98e813a3ce6104cd723e07bc4f8b6d121ab37be86cc7225344528b0b4f40978c6838ca401d40970302047c435bb500673065023100cd07120bd3fb822b47113b5a9faafe706752b203a9fd90ea1149b605deb43638271006bfbbb9a521408f21616922bb8c023076ecb40fc6d332d3729d67975c5585c6d676f38613d54825c17321fcfb0e3378e151346205b1f338d28dda550117417e0302047c435bb500673065023100c7968c9f3b98e9c9f5554d0817bab56873e26c9df77a15a59051663ee871e88a77b7e6c317aeb455525ad83432fd5fae0230154710412d204204aa2cc575f53d8482fad6292473d341512425d6d126f66aa09d72d42274a725c6012a03d28f26bd6b0302047c435bb500673065023100bf55e141ade7e8d5ccd5934b5fbc3e0f3da7f0891f01ea5c1011b1c402df2cf173c7adb330905e877fa21c260027a5e2023010d555c99e8b94a719d7973946e6bf7a991cad0f09d5247c214c672c1fec1960ab3a50d242d62b05dd5f6186cadc935b0302047c435bb500673065023100c170d1af553e4047334a5b4eb5c14cb5b5f808d1b6886dfba2bbbc4e097edd6e5f6ff63fc9b1fc0076f2e302fab83c1e02302c4a8a0c415a4c547ba39e1d00b578690f2a7d94c4b2f30256866189107edf9221e2b822e23cdebbed88bd2b879826280302047c435bb50066306402305686559add1887302bee9e39f3b852cfae34f40cfc3b085f912ca476a15bac9d5ddf351534bed34877c359d1da75332602304be85e46eaafb43d71572f1bee53740f18a16a2fc4ede9cd104e91de00d24f3d73d84c76c0432d45bd0432e86f70bf700302047c435bb500683066023100e5442251c9698d5ffdccdc120067ac5a6f53f5520f0d045fe7e55299adce434d315026b4d803f982e6faf48aeb1604f8023100bb8ddb19a5955eca3b4f3feee3e6362c6818c3955cacabdac646ea0ca56cc04c8d7bbea4b9632f1c0de542cc9dede2620302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100db13b17135eddbfeb9325c3efed6837c263b48d3ba14d7540cf1d15ed613d919b772a99292bcf855bcabb4be1188b7b702304091a4ef044ce3ce9c7e43890f9339d418744d5323de87d8bb5e6be7afc726d5ce269689a2f669f36819dd772675bf460302047c435bb500673065023100c4a38abafe426d2dab1601e4be77fe8011a725041c85cfd8424ed82d19e45d87d5b149a5b62b26e4c68c15423eba26d202302ad34ac326bd01f13537df0eb5d6ce765b8c02ee7bc1bba9dee18e47379910dc716b70cdf5221dc0a30c749584dc95c50302047c435bb500673065023100a575db6535a29d7132de848a38f35657037dcd445a3b8ec581f1b5829336c1af2931cbc13d67749633031f975de8f0ef023067072e7de726bdb9a203cf6a98b648d871bea01e0d94f9cb8b0a0db592d6e29ef335b1f9cb5962b078af1727296b8d980302047c435bb50067306502304c58558c17fbc70c619f3d0385a03111d34c0bd529d09de71a0bd50947a1141f1eba2a9943beee48373feb257bf39197023100d2ae4a4e2556acc4d730eff2cb29f69f18d3b5d8e3b5b1e9cf0756b58e40135f0992c5f02a66a21dcd8fa379fc97ef480302047c435bb500673065023066a12951513c9037c333d157fdaa00eafbf3cdc866d58a9724da4a0434affbe84080187c62630400dc40c4b768dc15320231009defb9e2ae686d8d2473ad41b423722b91f290e13d9d696797b2bd8120baa000d7def305db75f95539519518b59efd280302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301937c8c1106b1a4535e1da6dc901c5582b25772789ea54390dcb7221aa9335c813dcad9ff0976e952c4b30a4e575b28b023100d4b5befb2e12d4b142e0abfed68366b59d410c7065882818a7d2bf2ce124107e837d7365a37d361e64b8ae0043728cfa0302047c435bb50067306502300b141c7e61509f7036804abe2c8abc929a1e2e60580cfa233d3da40e92b7f134c5f7d74087375eedb809ce8dc5923f5e023100a5686d7f432988e8170c707ce7c3ec89424f5506ef1e9fe120284213d145cdfca943a928ad0346ddd7edf0603cde76010302047c435bb500673065023038d5a853b593e5e03a8adf9e01d075d3446f08e7b0d7eaf58f3aff7bbfc870a719aa0041e2fa95bbeb8ea33c2e40a82f023100a7061d200490b4e37bbbca521cfbec654b98fa188a476c8e0fe1c839ad955357b9ea57115904601b56e2f66a27d108f10302047c435bb500683066023100db9733fc51d10c7d7148ba8860aa0cd1942899cd9d7df22cd1e223a42488cf1a879c726c7c39418f0de2e375947fb898023100c2a2b23ac84ce3e6830e8bf1ec69f51b8dfcd016192eeaed2a326383d84ea92a279f5578b7eb37f9cd19f1930cd7cc450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023002c5eac50da1234bc46e5648d1f3de4923d1d8b07dcb868a2c29bc982872036baf1ea3e6f6389c4ea448af6d6968d71d023100d7d30b748f0a4ee1030689e2b1677ba51126f30f3c7dfbffd2634aa1f5e314ccfa719fe0108f6f53f83c08aa13fae18f0302047c435bb500673065023039d97f9bbdd6d8cf34058dca0a72ece7672028b3e9e2660240b6763a009d55c0dfc7f2755ded0d6c09d5e6236743227a02310088366fe96d23515348142c8dbd2a37443c916dd68f6b08c684fc4a837d7c695e58403f05aa360c912cdbff34195685b80302047c435bb50067306502304562279967b6725f1423c6a682abfbe690e9ee379eb2965d445b3e2a7dd50da8b02723c497ce78df5b3c92a19a9a6055023100ebc9f68d056252476bdacb5a2ac2d8800c3e8d1deba059b795cb187ed8154267ad575b4db9e002279885cd694e3d52a40302047c435bb5006630640230326e9f42a1b92728008a3519e9ba05ef528da6f55ec1cea56d1578ea0f350e573ca74b63958509198ac1732a278f31f60230070ccb3b449fdf12d272ef50f0b85ae7ddb9113e59187c8211083b3333a84a596477fcc4dc792a0e5e3dbb1b33cc85390302047c435bb500683066023100f7679554fa8ca291f1461b4490abd5b76638eef3effeca257b940ba9d659493bd8884c8f8b81bc0640df1fb6f71ca355023100cadd07f9c60b98c3166c779c34fc53e17e53494a722a9b4a49a296e17bda4a38a85a2171c36e048bff402412f144fc410302047c435bb500673065023100ed5a595538946f3c5522d5f417f4388f2abf43f1b94f94b9c891c8a79dffed1d012fbb9204d53191ac98d335e577b11f023006aa2f991aac0955bc965ef7882ff13ad053f7a41364c500a78ae277738d717305ea4c597f2a26b23a203adbeb0421b50302047c435bb500683066023100f5901eb9c8caae459b5e1ea4a9814ccdb1928c2fb0b03f41b0c92ad9996239593ae62a7a73ff8f69c94d283ec8d37003023100a2d1d0519118d6fcb6b41fe289354bd9d870b5f1aeafc9925f054b067cffb66520eabbca81e985e976f75cd7aa00b5f40302047c435bb500673065023067f854d1bbdab2c7575a51ca725a98f5adc7a797fbf27313b72d6566e16358a6ea3c6d94ac196291c239b90c6ddc6709023100d49a06fc3b340b38bc01d8da70c7f036ffedbc9fa94c40e1d11d0bbf7fbc5bea85715ec600590bc74dacb2f5eb66661c0302047c435bb500673065023100919599f357a0146d56e6d2ba22aad0531a01cb6a334852431471abe6ab0345ca4fc088d752161a202db6f7044dae07bd02302f180700b9926c663ee0d86b9cb39f3dfa4b04b8cba9e8911accc7e92411125e6d0f7b48c0adcf16d33a90430ba06f150302047c435bb50068306602310085a1357961a8430e618e9402a614ee1d398a1c50d18fa1216c24d8cf848d04b4fcef92025255850a688c9b682508ccea023100865dae4127c6aba334838ad2a69e446a5b6cf7f382f5445bdda3255f5b6ebf61a2dd5534ecf57a92ba4faf85249324ae0302047c435bb5006730650230072f764630dd661f75e20666fbebb1b9e590a93b01dfbabfa29f0d2082d5d7e475baa2bfbe5367d4fa4544c3244a67ff023100870945debc337427b8ce28c6d3996f3542285d3e0d5d7794a58c655fae3c80cfe241d6e5cf2756eee949627cbbbc53a40302047c435bb500683066023100e8c83116b0cc790ee81ec75f5a28ae8f79dead118383493f3abf2ac351af2d1704b0a998d62cdc14bcaf24e6ae7b8856023100db65bab6b5a3d94823422e548497e6444b291faf958a8a319a2c0e61a29520ad43cafa97dd05cc0264f940f6b883952d0302047c435bb50066306402304b68e6e867cd12dfa59c14b3638793b745f1ed8f9bdb4fec0c408284f6a11c84117920413d6bcc9e9f60e21132c3bd46023076032d0f758946fca6b989ce256dd8e3316c389b612257fa0a6534b5b2a996df854e7a3991d5bbe8bd53b788838d54740302047c435bb50066306402306e48db8d672b8d1e986562915ee958e6b9276937d27cb005a77a8c1b17109237040b3139cbaccb12c07cf2af37645e720230045814c806032020d47be90f4422d1ebc2e0c6c205b925769b57da051464dd0ab41c021fe482332c6bec503fe457e0e40302047c435bb500683066023100b7e77feb5c91dc9c77f3179e412194004f121e3d67bae2debf0c00d8d9a1894b85c70bc7870be7ef162461c7f36cb027023100fc5bd51999fc4225589464b78eca3aeadabc05062de2fa0d19f76976ffd03fa13bea6e174cdfad109b2ee6e7cf8ae2e90302047c435bb500673065023058f388d27ced878e368dafaf7a6d8d49b64b7355322f351d67ba75307628ef6f164435a92b095422e381583c31b14257023100990749ad998a95c779f1cb30fac63cde45d22f22aec1cd8be93dffb1e195764a2f29a74f2c5125ee6a906b5596c9bea00302047c435bb500673065023014fe989a4c5ed3349e2bb5e1dfc8d2d341d59441600e1bafc8436df2acf63406188dc479946668880720664cd02cfeae023100dc7c36e73ad731b7186fad7d776427783e3e24044f5158a4a1a2126b556b0a6265f4f5bbf772cfd5e7c1cd187242c0480302047c435bb5006630640230715089147c130fcdd76d1d379144d7a49af1867c4dad6d9a4b9943fa36452e99620bc552e70b3cee535acdb5b9a23f6302300366616b1ef48fce7d87908026a9878d45f64d8555119a33e1035773c15d676952e1062aa3652201ce0f17aa06e1a73f0302047c435bb500663064023064b1fd4cfcf3948f6642a4bf11b851e94716cb3202ea08fe64c991e72d810e7aca8259138541e01ac5c5165fc695500202304068e85fe0baacf1465859be92cc744c319b65128186ad28d1a28aa205915297f31e162d3183e4c40e7a6ec2b4fe88360302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023021d217decc901cb004408a4fed40ab9bf8be21e11addb8291be907db96116d09ec00adf81d71efb3ed4b73893037aa8f0231009c8136d326553d591041da6fcaa3980ee6c73086fcf261aed6dccc05762d70a4f9d0470669434b43e3f9c51f0fe2cddc0302047c435bb500663064023020e895ce5a3a3f168e8bd9c49e78d45e072505e71c0d8afc8e1fe6a4b17fd95ec96fc0d1b81d7780082156347228e2ff02307056892a56ed565722dbd0b4915d06af2bea2dd66d05838fec60a71360c6da73891fa24df1f5940fca575809fe46ee9f0302047c435bb50067306502305c155d1c07420558233fb47f99233b93fd1d68508fa9cf3b65c5d0d4f8886ef0a555f76c8b2f2eabb846dab91caac491023100ffc9397f5ad7ceb44db25cf3a3ed25cb2e47d144063be76532f9ae8b2cab1102279f92fce7b9fb70c87c3773347a53340302047c435bb500673065023100c6c237847f92a3959497978f20d079f056960a8880f3d4c1e75c23216ba96a7ca7c2dd06d24f205108ca6b7403c9228702302dfaae3917ac900d4e27704ce2e45314fbe2e9f56079bc64fc92776ba3035120394fa6cdf839ba132d13d89c9875eac80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023069d03dff6f3fab5cc1ded5862a257213fb5ad6370813d0309379bde1b8a7e6987cbc6e9b4018ced8eafde1cf44f5410a02306999c825832676a5581d880a2dbf9cdf5c7b63a2d2112f09ca93361f4128729091d8d6b4909b414a3077041c661bfc5f0302047c435bb50066306402305eac8f0fe668c9420aeb587d9cfb6aea7b10a95e7121c8d05673398cce30c20df486914b9a792f945d8c9a5f4c342d1302307e786c685177754b58c93383b20f8edaea294249ddcfe3b09565d5129d3c0809b23a10678ba9b18be734d1c75902bb970302047c435bb5006730650230615191ed1f49620b614840d8efcbef4f2df1e3b76afdf96bd1bfd8a66aecadf6732e35c21189185dbcacc458a621145f023100c4987d0bf921b2c12183a1f4ee8ba4bdcc6175d1ed037aede124f5df45511db4ec496732e4f3d038996ef7ecadbdda1e0302047c435bb5006730650231009a82f8642cb858ea31619bf3ea1f048e53dd8c9867cbd1362c210221b8ab5431075e9bbc61c5707edd6e2044a379dd2f0230667b604389748fad7689587cd0675c902ebedd6c92c78a348c246b49b4b0c4b3fafd8e990c5cd408576219fe92481a450302047c435bb500663064023014169d7354d08308fffaf5b58ea2fb783585ebeccfaebd66e448d2e3025a97e18883fe38a330925f92940169efafdca802307171bfecff8846570b6f3639c25ebe58023fbfabb0452adaabd6d307f771df815706de0f344c63d8c71b45eb2cd9c3cd0302047c435bb500673065023100a0dd88e981f0d44c744a844d90e1313741679e528840fd20f7c7e7bbd54591078970e8473f87259b17244dc160fed69f02302f3d63426024d6c6e5ece562544e35692d244872b9a65f349b4b40d55e295ed39a4b81457f7220ee3cff3e1b6250aca80302047c435bb500673065023100b9ff49c01fc0f6847bdf9cdf307e3c818fba596ab7b5708b8a74c08b97eba8c2a66976ab8a81414fd7161159c619253702305dd922e2690f27f738f4ed3379b43fde117e74d7c7b80bf9185fcbca39e851307492b1eae111948a0ecc55c5bb083ef70302047c435bb5006630640230581f8c8581bc7d5bcabdab6005a9f3f6a6368a6e9177c228f302d34ff91d19c18e689de029793440cad68737fb89ed0e02303313df419bb2b939cc8a5bc2866a21e030a8d637639b7f5b7c12c250118523ee4cf1be21c4b9b75a07c94f64ed77c3c80302047c435bb500663064023052b664737febff23c3e445e439fa22cdd905ceced86b20a2828cca01d4dbee5663dca45563a55c78d21271ef56c7be0d023015bcbc96fa76b67416e470e677cab597af7542461131a681ef6a27934b214371c40cdbdd3929158765cf72be5f70bbce0302047c435bb50067306502307f632cde5ae036611327e62bbf36edaf2b5cd2f2edf0650e47908d3942798d626c24fc26b066564212d71e71111363e3023100d0cf79907b40d2778f5d29a3626c2e89d4bfdab5cbbe96f33edc2a21bc190fc43a1b8f342f41c239a7d596a7be59ad500302047c435bb500683066023100f610cea76f3ddf839a70495b6010b687f33b245094c33f1b1cfa5d288348508c1fd16288ebb3e72bd7717139cb8c1b90023100e1240152e1d5591be7e28875ea127b70b31b32e63dd95de232f69fa1489d6274878a7b25127e3fa6c95a7016bc1412210302047c435bb50066306402302f608b607a04e66f52a8e0f225da9f5359debb42a1bc67aa7f475413691c924486041181b5cdb7f6e4639cd6f4ac72300230265b2a1f21be6c68385cd1ec2532b6f8f9b9642fa88e9dce6b5ab96995f9a48e9ad915ab84e780675ead94a0a42f8a200302047c435bb5006830660231008d682e4f1c085b240ad1dd415594d2a0268ea26c161e121065676ce716c97e8252eb8a7aae12413abe7efbe685816712023100dd05ed55ea44c21cda8245114df154bbc548d13622bffbaf8ee0866f00aeeb730908840b885ec00c7b656a3ca4a212db0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009116be18a57628b850f666c8fecbc8a1ab949b60e1892319f5ea35d5a6e7b1886070dbbb0d1001c1dd3565060a260359023063d5a0248ac28f12c90cfe8edb112cc76f60bc5296b95eda350b0e42b3348ce600b72fa55ce97ec6d2616a611ff11e560302047c435bb50067306502303349630912235a8271b617c4b0c8614bac094b8f92e4d8c53f44cffbdcca4048e2de7dc3571c9efaccf323eecb51693d023100ac78f58a98e6291da17726d0ef1fe472ebbfeee9eb213280ac88cd5e717af8118e99300262efadb3aabe932223330dca0302047c435bb500673065023100e5a19589f82bcd8e9f4b2e055e82169b6390ab7e8729c81c2ef08e925e214f35390469bd3782a0fb1b18934272c2746e02300bc3545dda9db0899d5310e64343b26f1e5964754d684d57e08489fdb23d82295d93c3ab96f2deef251b807c30a96b270302047c435bb50067306502310084ba347c22b094ba26379056f84f138956b9bfa375a6dd1f2af77ae57c93823893c4efa9e675e3adc93d03f320c94d9c02303fba9f4c45cbd039e49c33ee2df052569d2ab8d5109d5914b8d47a826e2fb2016fd7a97de5dd9f9209f24272720cedef0302047c435bb500673065023100be6fc7b6369b8479a56dc836b56092ee421a437a4ef90d178da1a7e79e75686faf8e7e2f8faf0ee30d6bf8d6388cf5e702305458e3d5d78fe78d241c8ed9f439be9742d721e4b75eb4d167cd1942c13da1c669e32ee9edbfc3399be073db43850a3e0302047c435bb50067306502300f846d32db2ac58c9a6367875226161ff606968c76873a94fd72ee9b2b8cd84eca02f837bf6f653b02881075846464cd023100be4f63473dcc371adf96e351c436641de5648cb85fbea766a96ee3e8b7e35459f26242b7853af5548cab9c470693345e0302047c435bb5006730650231009a313b1b152d6d3a480f87193ec5228592109be0088ef46b2f7b14a7ed8c617889022b1440029c2f690d62a7a920b99b02300646f8ccb834d4d9837e8ad1068e918cc9f4818a88b4eadc5683365da9f2181cca2fa871aa3a9921f21861784dfb01bc0302047c435bb500673065023014ecf09fd9a777f5336ce28b3081acb452b42643226785c527f44063b449a795e1f657154f0346ebca9328140452f99d023100c39d4a07fc7207dcb63d98b1077148b19b2d549f6c851d074f85ccc88124620d3a60c787838ca014ecd34a305762973d0302047c435bb50066306402303db03f2e176cbe36ad92258b221a8256d465c395fc14a9ba0aefa44044772992871efbbe58a0201c22a43d382a96be46023008c1074cd813875e6220e94577d890555e5a07780854074fcabe4fd141e7f084305e9331336df9ff42b6bbc98e3e5ba80302047c435bb5006630640230023cbfa412953a380353e7ca3653c645d6eac6bd328a694a2be500700b4a6be13a266a0bdbc82e09c1c40cd090de33c902304497f6264dc36183d3b8e719657f92f9d6fcbace83fade679b29958ce518c6946f4aa7861b735d38d97873802146ddca0302047c435bb50067306502307fce49090e494045556cee400b604f63d80462a9eb5d044d5e0f2b821e2fdae89100ee1305348c7f30197303746591cc023100c9a6883475f6efe492078e7f2b8f81b2829e0ad1d8afcddaecbd7129fa622bab594370b6707b451841748b794ba6412a0302047c435bb500683066023100bd8f61e3bac20cce44e9c2da549b2d4696ed8545c2c8888659e240cbb40504509d745543679d98306c052718e26e9309023100be27937edf7578b8bef86b1f4a71dd512757bbf1d0a14dbc74e713be928e3d3fcf95b05a3ddd005344c86251920802370302047c435bb500673065023100db08d385997804073f09233db3f7d4a4576e660a3d4969a54322b9e59f475c11d2c41e7000bbb85388635a5cc662fd8d0230777e0edfce5f9bf19e637719ae9477987ad1d147b03422f341737720f78c664fe01c6d1520978450f457d2826e23032f0302047c435bb50066306402302d34cf84eac301543621fc48c0919e8f190912c9762ee10b2d3629aa327e1d07e2053fad870390b4c1e4294090638bb8023032c5582710d6cf8189ac6f3eb7361bb8d424bd598224a3ab0ce58c1262a9718be45f0a38d51666c29b56f137b2ab30e80302047c435bb50066306402307d03f79827dbcc7ac6c25e7b01d1b904beea82760151e3431d9953724f95f7ed92d4b2f2ff3828ea346585d719e37424023007dcde1ad1641124ed857bc934a711ea2329decadc363f928bc574fe93ce0f142cc5f84c9ee3774941ced4f6aa0c869b0302047c435bb50065306302307bbbb56d7151bba39159e3ad7f3ac84661d75f92dd35ba9b44c44fdbc760c74febcf7ab108a41a8e43d4543565ce49ff022f788ae3fb115542a3ea8105afc813954b87e4303c5ae40d8b0e67eb461dcb0f4ab014ca73eb80918975caa3511918660302047c435bb50066306402303b0c69a78be098dad49b9d2803b836ed42c82a2d2ac1b660c8cf61ce62c33cab91901cb6d296a509fd1589897c7df05702306a56e8de893c21b08741ac02490e2a5022896b5b47f7740d30ab0b5538223c7874a0988c32ac6fc79f2e993be98fce820302047c435bb500653063023048ef7a1c437babdf2d478aa3ff5109ee64e759cfc498137ec9ba8019d761bc6afb4955509dbc232ef4b8bba1d869852e022f480f929de27c821466bb7922e0dacfffbde132b7eabf0c65310df21de2895833cd9d0420e7dacd0f0cdc6e356809c20302047c435bb500673065023020d4e3a46a604e88506d78eb7ce6bed4dafb36c42e7040c97271da11cd075d2423c9df8f5abb63857e0c93bcae2c16dc023100cf51806f1eb3a6279979d04157746d7a0d6a81cc340dee3b6a61845787bee4aebbf763aa54be053c45681cbe1d3959f20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009b721032b9feeee4359c1cbcded50fd64992a50f81d5be0e43931695f6ba4d31a7098a909c14c69d42b4db62e4fb6fcd02301f950550d9331f0bec4b337c9751aa7a2c55a622e3da9e128842f10316cb6e799bcad1f5613b4ad0caa0d7810b883e780302047c435bb50067306502305cbace55dd1f5835de4fb8249410840b91451c3d2ad8947fc10438881d3c13a7bc1168483ac777a1aa7ea3acd5879255023100f7793b2f9d585321d50761e3980e8f6bb42e810231bc82ab74d6e9cc477bf9591c5a4bd6770e8417a9bc0e0a786a54d50302047c435bb50067306502303edf76ca812e7b7ecdb7e63062ed1daafb9fc0f5ca629f724eb521e1e7e91d041ba52ddb906b81b8e2de05a103333196023100f235c9e266eefe5b2dfcf5c0d44ee77066f3eb7b1af5b0319f3b77b0e9a52fd91a9fb6b89439a70fb138efa76da9e5c10302047c435bb50066306402304e251b3443a6c44d7b4ea6cfab0992b3e7ce9672d3bf07551a9d4e15c28942792c144da2f2e36028004a1775e6f59ff5023033e6e1714137bc9ab107651fd38aa510e8bb12027f1cc4291c525efd83bdbbea519d927be8b7f41f86f7d402f4bcf2a40302047c435bb500683066023100c5b8eb1dcf872859eb0e82ca8d5752ad4d97807bf22311f980ade38c7946faf70689c45d4c7188701a34432ff42b22ed023100f3bc96da12061b20fb90fe296ed438eb9b0de3ed00e3c17aa6c0f8be9656bf1bcbe3d4ab83462a77938e0ea85eb60bdc0302047c435bb500673065023100cd3d942b4321c126a0c86468b5b6054bbee235e987baa9ea1497c3b3e4acb67625579238a5d332cd571af90b38dff37a02307933a3c3c39878c4d0bd4b536651c61f6768e22da333cca91a219f07552bccb8e79f99137b2114c311be2b3318f5db160302047c435bb500673065023100ed8125365af5067716704eead155378091b07c01da6ee4f8e624edbcfe9ef594b79944f566333a1bf6c254d8b33c983c023057ed38c0da9688f93009e7d2bf0bdaff79ec7eb954dbb78371f4736c207bf62ba7c25d271a8c98e9be2baf3a24c36b490302047c435bb50066306402306ba414e46454fdb076365911c37d9db979a59a0dc9870b0e4ba4c63e6ca84fe71cf1a5dadf0a3faddc35dc3e5bae9fb702301119b57c9223d9de8300961d37f836ee96fe9a4358fc8058662904e1ae3479381844e6512eca83b6977e7e3ea57437de0302047c435bb5006730650230565709e71724a2f7947bebf12ab61a57a977998294a1caccde6aa9af1de54328d2c3bb9bbd162baf7e5fb53940062289023100b560fe8c96dff80bd9746059f0344ffd1887547babc9cf597b7be306a1d8347378398bae5964a4a808c179fa0ef4d5100302047c435bb500683066023100dc9b65f9ffe3dff5528169f6579fa353e2223a9ef68323ff8d23046127364fa869bef1ba506145aa7008f5545c923f7b023100aef87b83b9df279951fd73ac4ad6cd751f44aff95b0a887dc09a8d0841da029e78dc049224b28d972f4fd543e0fec3db0302047c435bb500673065023100d2ba2ce86914804d7a82392033671ba72a52fb04e44e670a37332ab089175e0659963328019acd536bb2f70ce7ac7f6902306d46e28a716d9d21382802f99673af112c819c439926e035645428b30b844b69df93a139b4217efaf4456fd49693dd2c0302047c435bb500683066023100abef1f55e6261bb7417b6a9e8225f77222c53ef2b46b7a4ff1dda34fedc1d450757bc8503389dfef3299c2d3afe9ab81023100b15b7f84824446edd6167cfacd7bef19c2c006169df7aaf5c392326fc071bf0d8422596d1ca3a94fce22d5cbf92bdd390302047c435bb500673065023100e3708c0f55e12f4cd39af5046335b58a5839c71d56f4c849a03f72baef7aa4ae23cd988c4b2651fefee36e22c607b96902303b678aaeccf1ef8a76085a224c838b1290285252fddf6e19b4eb878925d7e806cdaa894604f417bd5f213644c18395dc0302047c435bb500663064023014caf00436ca4fed55e4fc41f1c2950ad753e6bba053a2d050d3e975c109e2be854ae66d4474df6a099d2da5e5ca98100230204c985c216eb0790199a5df51a2bc24f5705f29e3796980632d253013b9d2d987cd395adbad4812f20540fd3f24dc650302047c435bb500673065023100b9efb44581142a67753e35ccdcddc043a2647c8fea95f132f1fe10fff77ed349ae87e8983de3c36594bb0992516eb2850230689eddcf1f21d953a132be08406a1b9a0a75b0a12a6b384f3322126827150b41219d054fe4f4571b5ca185375a3c33730302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402303afc47f13d56e4ca03db98d7f1343e18d433b8b1977ae044c9dd6f4c057856e1e859291c046460dd9f221a721933ae10023068587a1a088a4f483fb7ccbfe93eab6763c1bd3a2a18a33041b1b7aaab8cc83dc5706feadd945bf4b839bbddcb9a70f30302047c435bb50066306402307c4607f7b177f10a712dfc2948762c79c433bc7770e242f8f7400e777246457abad1f194c239bc368672e1900695c16302305dc2ecbeda550804968756f3550cc1ccb199a19d86114cc3e14ae087f04cb10529e0a43f036a304338bd8e7e58cf225e0302047c435bb500683066023100f541e9b573addd6f806ebd657c64c0a497920bf62a5718c313073fa3d471d3fb148fdadbc1faa6f0595c90f1d5c08605023100b815bed22f42c3ac691c845a129c2d8d7b80bcefe639bebce26120eef9b66055b123485627efe748d4deb9760d3403df0302047c435bb500683066023100c911dbc6603002625c9699d3e2fb9b0505159db1653196f5b775cb7ddde26264a2b8a30045b04246d78f1fdf99cf9977023100b8862edbbe49beabe48cb1f3477b82734a8fd6e15816b0202a8cc0cbe97288ef05c9485db1e9a48b8710dfe5ee2873ec0302047c435bb5006730650230169563527ea3da8d845529ce0e19ed627162c804ec61237f6db6f6c3b6c1e4958b7d5d4b5c86cf47cb4b6269f1c8bc0b02310097ffbb62b3dc3efa39a3d06ca38fc2f3e67421b1b52261718787dcb77a71626a001528fa4b6f525c6fc34583f0257d1a0302047c435bb500683066023100d8f478d3ab8251da8ca2293bd1d6c4f23ce5cd62fb945cda3b3267eefed27b905cdfeaeb53cb2e62cafec25e46a5c397023100b3c51aec0aad21dbcbac6cbb42305b98d3c2af9a691216b85af72eecce59f20a504fb86f85ee392c6fc4184f681751ec0302047c435bb500673065023100959e78b0f7d465a26fc0650a61f240686977ec6831e3bbb99f55beef2b1a16ab4ba62dc8d8bd13c98515fa6457d37a53023076aae85a678abe83e354fdfffcaec31680bce745d7a3dcde57ba44d4ac10bd59befcb6e69361ab45559403db1a2b70fb0302047c435bb5006730650231008ec1c6c6f52a627e97936f2d17b2db62640ba7c38cbfb44e330c5ab816dce9bc43bc62a1d3c8a2e7ba87a0d3e4dacdcb0230508f2b59092fce38cbe9bf379079b5802b047644f746152fdb6ef688d42949882f221c4b27fb964c47c46071e2129b000302047c435bb500653063022f1c3928a5ec2d9d86cf53b9d86fe5f54c81518cc302382de5a0674d2c0437e97da7aa466d4f1f0722de986fc3d95747023033743193a7c4f160bb92fe4cb3deaccc66aa70de06118b26a36d5bf37e0c1865dd77137938751453fb9fb2b4bdf89f980302047c435bb500673065023100d69cf931cc6ee5ca5e4d82e4fe7218285421731f991f977e8536012592c477378aae8646b16e3db5c7bd415967efdd1102300c9d5181b3bcb64d23c80ae978d240081f9a8e6df01541772ec49bbfd75b9d3fe7ae910291f0aa3c5b3c4f96b73ce94e0302047c435bb500673065023100eaa4ff7eefe6f05c83893444f547838e0574f923ceea74f9350303e9ac9a1c1b3eae55d93bcbe87f8fa875daa3ec9cdc02302fc5621b852f62b2b84fdb2f04891674e72cfefd0e1cb27e91573ec537fd292424ef59e8cb6f3ef96a94a4b316df5bc50302047c435bb500673065023069fc0f3480c606131d18ba46c68da6329faf9f5b4c877fc63cdd5cbeb2aa9bbb8c0e6ef63f81a42240e99cb384a57299023100cc6d3a513e4c2fe27f137cca8e24aa8b41ce3f6b4357fdc50e1077c913bd5c92c553537469070afd17447697e46a0b9b0302047c435bb5006830660231009d234a6e6e1bdd925ccde4580dddb341e1b911256ed7655b4d729ea4122aa6bfdd6bafe6b680360369c188494b5e4f26023100c56b32bcb987c440001cee6a76e5c2e05fc729ad976462c0a8c01548af2041d2d0896603a1011a7566c089c3c384c1de0302047c435bb50066306402306616f911381624404903a9919e1f275e15b59ce501a1e3c85da5b77facd2141b2e4f021cfb3a468d1b5758d1852e8c0a0230008637c8d5f029ae4f79719318a2aa3c5ff9586544cd3a56e64f8cd5be0c75d0b8eadd4f4203fe6a10466cff3c33cfba0302047c435bb50067306502302b1b3931af8edf6f7dd2f7d2c1fb9a77f7779045e484280d26823dbaf43fed3c9e0f24c13a50f2da2212a45f9dcecfbb023100875fc904d7b46064189c8d331dc154c4b231af6265ed975ec0d52ce170849202fcb11677bd766d27da919de36845fa640302047c435bb500683066023100f17d2be316db2772d871b158ab6e64fc2023096ca84dae2559061d2d7d02bd332a6b64f58d5f3f658aa462a952735e00023100c5922e70c7fc24369a2634431272e85556e22bccf68f85cd7ddf49fa9188b0b0f89a1b5f28ffd66048906cb635dcd38e0302047c435bb500673065023057f6f76acc195b0d5dd402579ea2c35342eb1bb71f7c512b6c35ba4312e22879fb9140ef4fab8f686ed200275aeefb08023100bc87e6e66f8b86413e62571d4399658d891693a177ab2e6091a50d2ef0b07cce386869fadcee0e611c445c723181a8090302047c435bb50067306502301fb6deac5252fc3e02656931b807aa37700f1ac34b22f88d88bf706b38e77802ee2f2c3b9eede28e95d6a3782fbc079b023100b1324e2034330c70043ef84af9abca83d8e136d8e933b5374b58e380bbea8898923c3971f5390a781b1ab3bad0c126230302047c435bb500673065023100f0fe014c3fcbdcd40ba82e6837fcd7bdeb64c997448f50280637e50196a7b07845a8718ae4dd83adbe6c95ab21fa578c02302a828afcd7b857b42a835c739a6cac6643afbc014965cc55d638b9167ed2e45faeb70d8fdd44785a00d86039527692910302047c435bb500673065023023dfb36abbd6b4a25f9ed8a51283cc87cec480f3012b21cc6fe1df5451190195abda54e375ab72019054e96f5b9a659e023100c4ec737b306a2d53d2d65df8d02a10674bb1c8cddeae060df6fab65c948ae3558876c234b7424367f22eab33b848cc9a0302047c435bb500673065023012480fd571d1e195338972e940e470fdcebd2a79166e9a37c4c32ab00f7d681d5e94186e079acc4f3889552f8456a66e023100de815c8f338a1dcc4d94f347b9558827540b665f39faac5a71f50f360c216d1ba2aa972c9291818126752fd399e0e8520302047c435bb500683066023100eda108bd4a7ecb973d03ffb509b1756ed97ea6f12f51af2bfa0126c240ce7c5173eda626547bae34a0775448cdc46fb0023100f7363c3f8862836853da97200055a4e5ca7045bc77a1336c088fcb8beff6838bdb834faf2b29739159959a715b8b2ff20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023038d805c486f6d5c625177ae8f1bfe14b2962c02eff59819dab274ff272777f85cfeda231fbd60912aab67c3416c277dd0230204210d4afc990d2b733f0db6e34b94e65d57690364207819f6c94bbf6a388bad73a37b7f1bf3505c6dacf0228dc7dfe0302047c435bb500673065023079b038ff91191f0ddec9c6dfafd2263e27318b6fbb4091126d5c65e03ddbbaab498cd0207485e55f6092d0bffc003006023100ac4dbdc0a906efaf1987eab78148de975b27e2eaced4b0aa1727587f5aff32153b5672bbcfea49e3b781d2db320cf0de0302047c435bb500663064023038b185713d00ec8bfb1133896f0f04c2e22e881878957055644adff43977ffe399401dac3203f47fe108d6031263aee6023075f939d520e62c7e56781b85037ed7f4604ba6553f9346790c9f1e4a139c03bf57814422dff82a54c96f3cf9964997890302047c435bb500683066023100848fa7b6d52d6d77d0d35745bc432f87f62332a0136191b149ac19f742b51f7696f5846bef66c796b8c9a5f1eee91b8f0231008d67bf9eb9de32ee79e30a0384445c7aed91a508eb0bd04e59545d6e3a1fa52980cc17ca5031d749797104b9b8c04ba40302047c435bb500683066023100e2754edf406f1acf7febfbb33f295c3f7313cf7aeba92a6ca45e94609a354728cebaebdcc720a855af7ad3b3fcd54d18023100f01d1943ebec73e915c40b9aad90c27c325939e3eae74feaddbf227915836882989e9e166a4372015b1497a1321e7d790302047c435bb500663064023054617f77e6a632a7e2c3300d357bc54b8c34aefc42f7bb97d9ef6732293afd7f7f63d58cffeca6085eeb4bfec365835302302d8d3819676dc9200dca8c462b699a65996582c6700d7bef4ea1c73751555c25b41afd45b11e2b6c7faf4ded4db3fff10302047c435bb5006730650230490fdec6e017782de32bf5dc9c635810cc3ea453c43e89ad6a5dc51811da2f30bb826fd397ba996206dc5cb88c66556b023100e5e310c7d1d42c65715734d0ba119646ce53020cb1c72092d56ac740b45828aad10b80c8ea4b97130f9e82f9f6e875140302047c435bb500663064023037b1f0174e643b06ebfff1813f504ab291b0e63f462ca7d8f4f7ba35e483acd90eb7d48a518fd167c73c2030dcbb8c17023065063fce9a7ad813ec689ebed08a1cf3bb5fb66b00e8b39bf8aeb24ad484e706e4b389a942b37c564630d9dbda14c0c50302047c435bb500673065023100e3edfd8505a9bcc361a301346a74f20cfc6a42470ddb5b1fb1991a3ca42b09f7a7c002bffd806fddcdbf78d56c3e0e73023012c3e5b76df9a6d429386e17538f8bab56d7f41b706b9a66bd8002a181246536cfed38b23fef0f09a902091ae5b82ab00302047c435bb50067306502303134cce50dcd6d41e30ca6b5eaccd03b42f8a33c9174e7b458b996a8a4bb868d2757ae853e252d0806850ee4b5de397f023100e02313ad6badc77ce3b3ac9852b53c888353d219fcaa61a4c9e09fcfa4fc5d454794e665a6d409c18515c2e4bd5292b80302047c435bb50066306402307aef8090bdf3730b9d8af6c10275ea6ac4fddbf1e3be1e1486e2d5807f6d116d08d3a0bc342b317cdb820b35065162c002306efb33b86bff24e936e92588d6eddf54e0daa950fcb3f4c516d7b81dd0644afc8c36dcf6ea2805b3c381ee2f3ca12fd30302047c435bb50068306602310089b733f41d07a2a782fe438b328a17158e2a099b980f5ce71dc7014eb16e7ab13c4f7e214cc8b970c77371e9638553bf023100875bf0b484c8feb7a8b39375d4709149cae9a349f9e8ba3092a6307903a97e32799dc9b1df881a05c4208ec20af50d200302047c435bb500673065023074f76c841465373304c0cfc62be38191d9281f98ecf487b33746253aecdb1c98c9d7deca57c6c527460b365cb0864259023100a9e6e6e9c7cec462836b81b0e91b4e7bf39115f3df0fb3759b1477ce9d8dea1129e937be08859065ea1bf0ea822c5aab0302047c435bb500673065023100ce3dbff233cf07fa80b43ca351d2cabfd26e8ce7862fbd47314c6de90ba9b27b602fa3aa27092b0ec08ce70738a32ef402307ab6de30cd5262291e2d08cba5a866b2c81aeb454be6061ab7ebea5426c3c2caf846382bb55197a75d67d47a0a601e640302047c435bb50067306502310084c5bb872ea4f69f561ababafae39d2fdfd6bac166455638797c021f07fbe8ed13440a61915a12f1bb97c38fd3f7e9b40230387113d603aa80ce9aaab4a4029520fe5dfb3d0b46a1b4564f4b08f4888a3bb18e6b527058f32e10f662981ca639eedb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304b4fb145c80ffa727c9aac69b2560fcc0c34ef9c71f80a0b15c76656fb53f7147dc24c995eec2de59685cef7a39700ea023100e4f1c50a7d7229e69790c8dfc1869bc00acc63531fae401793ceb1a8b31800eb69d07aa5e95d557b391b710ced42aa300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e683daee7e099ead49789d1dfbee8f10f9858d1fb7cdaa179853e028638b10cae2d697f1efbea079d60febe92a9c5319023100c04013657114669b2b95c410e58fa03bf4f4f2dba71feb16846eb9a3508501c8cf18c45f6de5c7198f1846454a60b8a00302047c435bb500663064023069b6ec8fb21c8eaf0fa26b57fb799d3fb713d7d48b41a9986a34355ea5e3aa8f2ff1425cf96995bef3d66cf8b124168702303450c43f069e3bf1150c9df938c59b4531fee9c6a9173324f98a01bd0c0fbbc886485f657626487001f7fd1a256c02cc0302047c435bb500683066023100a65ddb4c34f9164e7e997b44bb0266c7131e46e8b07319c57582fa564792e327b417a7c72ff08efcc0c153df23cbca22023100c47eff02248da637a194f45068a29dca75f75cce283fa65ef346c13b5c1d76a5ada07b3ca748fdd28fe414f52d2d15340302047c435bb50067306502301a5231e2048b713476e85cb072a6dc338169a00e7154a2eecce1b0b1907340274893e9dedf99f34ac4ac6f5401b90c2f023100e03da38ae917a63e9929e4587fa75265132846e2a323fc499467af6a8d2b25b25635a2a2fff276233a1796336f1595890302047c435bb500683066023100cd2d501823cbe3ce5e99ce6456861cab641edd0016a2466d1008d43862b37809cd5c415d7d5ec0a837b62ee6355965b6023100b1e0eda451b3ac75cf8c08c7650faeec18bc7e176b7019e946d1b07ceae8b1df4a1a2b7795c5ab193b443aff107059840302047c435bb500673065023100e687fbedd4a1282fdab8bb18be8641ab6171a2291b10ac0726bc05e2f03b5688cf6c8c97061ddccb975342e45a5a8301023071aec2e51df58e1768d3d8ca5332d15872b151be6cf63117e412c9f95170f0b3759e6aaf1d05d2385461176babde52f50302047c435bb500673065023046b3ef10ea1d2db1ed533085f91b0ebf8d528f406b10a337a0d027fc17a5bad030cc2fc778ebef82169b42736877402e023100c38e5297dfd53b31fbc984129643e598c348066fb7566138f328b34ded45f64d4c7dfbe1cafea8df54140e3679dca3710302047c435bb500673065023100f13d2813531099ff04981e54f51fb8f3b1f65cd1a32e8b8942db4d2d51a36e2f80fcf8f201ccee4695e60b2e66f54488023052d1f86b86a539064679d76c6729e5fd825a55f105bf9aaec3447307750a9101bd6e9da3faccda528bd3e9fab1431f350302047c435bb50067306502302f0db7bed10eeaa0f40f162a5929c2c60b15fe5cb18868bb25b3d79db05fd64eece3817c1e5119b49618507f9c8e75ec023100c3b0304154f7f7c2d2add3c677819b632a5a805ce63107a765335bda08502ccca2e097fe0fdeb791d1f6954e7c37f3a00302047c435bb500673065023100c9650c1905dfa1189473e9117c06e16b06329f78d2aff0bbbf888e8bbad5d23a435ca5bb38663afc02cc2140f1c30d9f02302bb5149ee3c4224cd399e774ba1b8105786016c0505c12a1c0bf4828ace02f61bc5bbc09b0978e11b48f7115e1c303a30302047c435bb500673065023100d14f43bd2ec0aa98a60e18b7dd014cc4935c476ccd15b1670688a1015acad7b1cac4aec43ba64398a9837e908a867fc3023057853cbd8be193356b794b3bb0478788623c5faab9052f1a6325a59bafadbd2713c49086baeb8c7352453b208ec9246e0302047c435bb500673065023100c7032fd52506022920db0885b03ed17ca8bda9042d502777813e2171a4a507bb5e27cc411a75d3a71861597aa27b6831023045dedbaa02a8cd3b5e38a68ac22e93ec7654b8e6b635357627f91cb8978bd6872fb8f5e062557b50395fa9f223aac1bf0302047c435bb5006730650231008e207e0e709457874d73f9d589d863d2b9269dc425e7dbc7c6af90976552b77ce237537a7b3a372f3430e0acaf9099b102307637eaba064c3bfd3f235f7db2b69f0f25ca131acfedca5eae0e733f8407c85642bc0daaef1e7abc339d639ae96be9510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023068e7f1ef04800d883d38b4ea28b75d44d9d0a12cdf3f71d07b5771d9f5bad2f0ca5841a1804fd0dd82b68bf6ef23c1750231009ae247c2ddfa517c5f77d3230cebe0effb7c9ed63d331dcdfe12db6019ee3d4a502dbddf7224b029e82ba3f854d84e430302047c435bb500683066023100fea84b7b0d7417a9cf8f6da86d340c6e5454e8536872ea56db3fa4e1f2a3fecbab4af226000947ab2715cac02ea9ab340231008822a6e326d0a994983c721a05c6a44bd51cd5ed0d2de3d6fdc6bbaaa994e584e418455730686f4ad926e20d871e7e9b0302047c435bb5006630640230312f211c8f8ae446e7ed72ac7a2a963f4960eac40c4393e185511979ac6636f4b8978f2adc048fb6d2eb9ab8276e5faf0230163ec78c78bd350630728a512bf2463ad5b4e1a527540e159cc9124374723ad3f8a4aa9e186a4932564b956e6c1912060302047c435bb50066306402303b7637b58aa98bc708d5c063c535ca0ace33cfaea00df906b95bf1f3bfea73ecff7529494f4a97152515d26a9837323802305b599d6a2f842bb71afbb435329e0aa309acba2a2b65db2c804b81258422d9accf3df861c07dfa7e03b63339bdae05c50302047c435bb500683066023100db54aa777bce1c2a78f9a9f80369599e41c194b7b185d5c222886a36f5c70bcd49c9714f80a0b935f27c6d9ae650ae31023100863fb58842c19e6d1f51114b185c296a7671738ec860309db0a0b4b44af6530979ded057aae724bde7e04cd2d11b90af0302047c435bb500683066023100af4f91ac53fb0dc397082776733e4bf61eebc338a80f8e5dd8a8470b4a2c24d75c37d679823736bcdc33dca368c4b0390231008b98993ad42b8d4eaa76fa3c5a500d7be2bd5c8edb40f60b0482d3550e2c28b0d91b1e9563a788d57fa074ff40e92e640302047c435bb500683066023100ed0b881d9b2bba4a7b924e202c6d4b82a76f23ef6b7ffaeb7902b0e33817aff2bccd203bf18c55952b1aadd1601f2075023100d2acf87b4c0e06a6a30d98888ecdd116d81c2cb17a50562d2c7c7e1bb9a8fd2110bcc3d1e5dd973ee22b5001f6a608740302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb500663064023045c4ca3b9352c364efe7fadb86cf70654a2c9dd3c89e4fb02623be506812810b0801d579927c82382c2dfcbbcffb34af02306895c53d50d81c0aa88a20dbcf2bce2239d3c0a4eac97367125b2c1956261b29224f19aa132111d320860a70a6dde1e10302047c435bb500663064023064c20d5cfed921819de52dc2910c7bb37a4e4eb9be890133aab537e7fa7e5b78d229ee0c1b3e264d132fe528044eb1fc02301e94d7362bd83047d10f75663a054c4ef0c6f2d4ae15b65a7755fca840c7ed2fc2b60d4c83fe9104cc727d478cd243f20302047c435bb500683066023100c8fde4663bd544f6e0682d6629c22fe5cc70b1355a05efd21c788ce415807d3a9363dd4a4aba17beda4734a84dae2b8d023100b10560072b8053361761158880cab2a7b7aa97d9da6c343cd3f5229f0554e606c8008aaa6a13f50aecf20d3b046c51040302047c435bb500673065023100e57d37ed1f930bee062c42970c214b47846e421cb14f1c8cfffde2b5a244edb310260762316cd73ce7111c6ffcb01e8302301c11e859be6b677efe0812c6e43b9bbc04a52a8946ef35cae9817fc3f0ff8009754187c7a5eb2eef98dccf39cd49cd9e0302047c435bb50066306402305f58e957b87e8f73b911a274086895ebcd28894715c07890cd100dcd68de475319ff3993da5363edc4ea688fd645a35b0230405c3dde0927e109cb0253bd1a2be8b7c2a69c6b331db65b09f96c0eb98bea23c0564d9c7f8868b012435329a1b1b62d0302047c435bb500663064023052f85a60ea1fbadcb51c73634079f939414a06276a02838a67c93fd56abcaf833f9c264c7fbc75e655da8675cb787e0302300767cb17462548e28cd392f3e1bcb3a1c4822742ab2705499a8572e52a456ff72f69ddd379bc71a8cbff61764c29375b0302047c435bb500673065023100d217a27b4309847dfecb6c7f766b59570f2abaf7830709227508c423e35d454d962fe41ed9b5b88ad8c01ad96a246f0602300b6cca750fffadd36c3035049651903ec173af4692c9772a2cf446d26266326e198181eff5b85db939b3892abe340e6f0302047c435bb50067306502305021be963caf248d7ac2d3fb1fa846316b687b27d39641d4c93fa0c925fd7ef33a9113768ee8a1ad87dbfe7094dbc57a0231008d00962b425aed646c6f04137eafdf00c7e7857c35db4169a254b3cff616538b2ec810882ecb56a07deaaef85ec658620302047c435bb5006830660231009574c274823336fa7b6fe6bedad653fbc44eeeda806ef236a230099d84690a595bd59b36d4e585049c16b378e0908645023100f72a3682be0de3900919725641d8eb08a9498a04a6386cc0846cc848076d2b892e6a31b8fd5b77e5cebea251a431dc9b0302047c435bb50066306402304c2153a36e82f2bbdc0333021f999029546668c353e16f94d408e278a7ef384fa5c6427495814f4c290bb2af84ab9716023077ced495139b16ee51ecf22a52e09fce6e197e089e3e617959c480c30994221360781e16e42e7207b7546172699c535f0302047c435bb500673065023074a15abd93f7d8fa6b396b2abcdceafdec4d18b096622c91f3ecb0003403bed7bf7244ae9c6b1545a1c59f091394c3f102310091aed8cf7ab36980341ceaacab129072a1232ffe6bfedb2129d1d55bd1272164a4293332539a4ae468b800078b5347530302047c435bb5006730650231009b4d155f207b0c7b3c13b430315442e0fa291752a9752097b60f214374bd8f0e28c5f6f3b760f5fc320e13351b08e73c0230140b1a10b8a19b55edb0a0cd651cca9fac5e4504232a64658c5d28496c35dd787e9ba865b556692b00c0cebc00f05f2c0302047c435bb50067306502305e3493a722f3559c25f7380ee662d5699decfb5f8e79d35805eccbfd6cdfb1b9bb4545bd2fac957ce2368cc74c0428b3023100a4349597941f437d919898ce17f3482db19a91cb5d0ee4af27a521dac313420e9b5dc48a64ccf815e4e16334edf971f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cf40e5b2b40ee695d88d2c47d13944725961c351ac6a03c4fab0107e88aaefdc64b7d9999df3ba61b4e07d24fa881c23023100bdf98c7f58af8ccd9fbffcae75821d99a55bcd437f0fc60d0a9b34b245ac3edc4afd65399d99bde3e7cd872c5930aa370302047c435bb500673065023100e1128644c32d89cd9f49d3d8ef8f272b80ae37dd1351ec73535269032fe49adb7a2b5a1fb73c01b2ee5b24aba397b1e0023011b27f0ced415af3db3a03a6d2f1cc376f04d9a5a0c65c83f901018ce33f74d3c70c63a3f9ca6ae93a3a3a1e629c693b0302047c435bb500673065023100e29caaca961a29433c604f7887187ade0d429dc707d3ff723e9d8c96bd7d82f84a5b6e9b3bddd7b829e6cd8dca6e593502303201788d9bb438f14cd9ea1ab3bf17a2a0498c2f94670a2db90a2a7a59c966aa3d1910ca9f1c9db1ee252a6b704814b90302047c435bb50067306502310084ede459118bc0c0c9c01b8070c2812de01fed0a8f9aa2003fdf59c3616c8e323b1bede80a286fa55f1c1636cb4022670230018d44bd3483c657df21fa873719e4c3495dbe459fc375cd5eef577779621b4a9a80f0623977556e908a4ca3687dc9690302047c435bb500683066023100fc6b49468b368aace7426952fad85e225cdf953011923258e9aead4b5a00f611c085fa60efa42c29708b7cf6c77fac72023100d0912f47a80d704d89fe21f70bc63726cba476a4a57e552b3e8948f4af956c747686b728882f1d1d17afc554766c2e640302047c435bb50066306402306976aac009715c00517b412d976bb0a25b66703eb171934226c6674d070a4982f87a9a57ba0d2e0d770eab6fa2978220023023f6278c6604de98e7029f2cbb78a04d6d59b7f07dd381524b4ec17d607abe7912991de70e7ed3b99b21db507657d36a0302047c435bb500683066023100988bc1420111db23c45a2a3d84dc0b9d32c42d245894aaefba63bec0dd411be8d12f5cf57f66c268cabe0d4f1fa04f490231008a7c626e58bff6f6006cad8e354cedc8ddfc1c383856d961077a67e73da5a7013d57cb84e19caf0f99eb566dc1eae1430302047c435bb500663064023056728f0ce9e67761a3568c2ba010537fa3d085fdf995040dc3804f11ada64b4ca6f53782649a3a15237838dfff66b6f7023071fe759316bebf444004a7785b146d77e28777924c0f72b57554f5fe6387be4478d22a7aa00b7fd98c9c5f9b212cd2180302047c435bb500673065023100d962b73ebce976d351f8f65dddb87c0b61a7a8d06237e3a4607007971d7d8816f9d2d8eca073853a6673c991f95df2610230371b11e881e418aa7d2cd049703070e22c431049370e5e763ef54ee343995139ccfa2d4fd3250f18c0e66d4b1ea1bb950302047c435bb500673065023100f1fec72ab8b3d61665f7c8fe8e6efa478a4753291caf8a506309ae9f22c35a06bc851a59ccfe11e9fc6fdeffa7b36664023015a4011f056c0f13b7585a0c8e96f053a50e1b6189c2979048240138cd9e55c4b9a3f17560716340458b9c024b3ffecd0302047c435bb500663064023019d105a653192dc52a2c76d681fecb3f7e1ea89bd5dea8fc912e1211f66f26cc2217c0dcfdcd5daeff437781afc1286a023067528226c3523cb5dd5eb0789337b617c6418b69422697fbd57618fd8e229d48e7a21389ee21f79a310812b29973fa510302047c435bb500683066023100940ba51cef5eff776690fb5f94606b4efc2d7461d4eaaec440027c1aff0ec95a3b4a26b5a3046a063614b9a77faf30b0023100ec9cbc6ffcb066941815a04fb3755835ae8513e145b1975dc280cc3e34fed7c686c8f002234e0e2fe2d46254e95f54580302047c435bb50067306502301d1f50d3b7f09acbb71f0232da58b40f19f76e85535544dc5546a5b1c2ddee7c5c84757fe9ed958c5c5f1bf91a0cfb93023100d011ac1b74956714c3aa47b56e86660b1c9a3983048121a4defa8fec0387dfb76fa73037c3154e810b9a861d561ec1840302047c435bb5006630640230040092ae2b392e72003b85bf397f3307e7dbce9d86750ff136f08f605438ac2557a35a6d5249726c80bb16a0fedf0dd3023039018e8a5a1b1f8b52bd0b4f5cc9edc1f571dc447294153abd8946c04c83b303cb99eaee12b68aab566d48a8adab7e9b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c5b665b07986d1b9d54e49683e250e81c80dc043f95a31274026f070acfc0d3311bf8b7dfe1d498a971419bcfc98a86e02304105bff2b0480d7c86c18734f119a04ee20b117a2cfa5123836b1f977884d3c9b8fbb9d238b4ea7bb8a9fbfab52989600302047c435bb5006730650230071e2f653ff2d7a4af1b1f064743f0ab9790c53cac7297eb077465d5a6d6823b9de767b5da76d371f84d364f3f2b222a023100f5ff95f9e06d9b88b0c0f13f0eae86d20624775fa60eb9d71c6b0fc12956bf8b86b3499e01b3383385eb91be268bde5f0302047c435bb5006630640230276b9cab1d60a3dce6de86e67db1ebacebbf5262229582c3a35da7cb58fa40b634b60cc63b94de3e8fadc32d1a3a2c21023077b41b3e739a2f6e6de9cd95ae5bf624ae5de3e1f7c35e4e063e4482895f9f96cf073afc293fab71a4bf07650492160d0302047c435bb50066306402300a0e8aa81d367eb7f711660593da7d2b9434eca592937b3cf9b938536814e691a4937c091e638f8f0729c96acae02032023052905d460dcc46b5d3ae80e51eee0a601618c84c353b4dbde8aabf2e0a35762a65aacea70c25b8b6e7cf5010cfdb3aaf0302047c435bb500683066023100fb8e4992b8fd6921114386f47ceef16a7a7a3fb76f88663433f014d7e019771a79c749a60177ed7db339e606bb63554b0231009d0fb8a1146f12e5a1a2772598ad15e0dcae09eff75632787ec0e9664b3d0413b266db6ba05de3132245cf556752933a0302047c435bb500673065023031c37d848df9cdbeaeb8a920ce089ac48c454322bd81ba305559aa41494d2dee6f319d74004b6c8eb3b05da8d7abd9b0023100c226ad6b3161f32451dfeb91c5244d3eb9f32c401c572cd36e8b421923d7a12d0c3a3656a32f30ae908fffa0cf1bde6f0302047c435bb500673065023019db1ab0643a87c03f454c91d72b6122ff5f9399273ad3c96ebef4ae58ffaa4e164d6bee6b818f595b5e0c77e7787469023100dd45d827e4e26934a21468763a3bfaa6f44b73229865b4ccdca14aabb334d44ac004885d8767134ace9a0f18de76b8e70302047c435bb50066306402306b93c5909407768475c00ea80b8db5e0dad43e91af8d9bcf68a36f9dfdf07b75e01ce643f7910530c9aff7b564eaa816023070d9dd41572567fa48a6165c6d86b15c41b3a05cb92345068c68352c6b42d919c1cb8bb620fe226ba07a8f5a690677850302047c435bb500673065023001f689a6be163f40b290bb1406aa4196594d1dc7adf19a5b334ad77a6e65778521edd5c81feed98ea2834e89b6bcd03a0231009cda1a5aca281a3a685378019d6566f9880ab70be0754b537eb42349604b13a7af0ab14cc2481529d9b75712e8e99f290302047c435bb500663064023021e152d50a9b9836f1d14047785ded9da046000f7d5d9f2f67f9d5fcf5e5e87c82bb5de2013526608f2699ef266c817102307d9d5891c10ebc2063b0792405e083983dbc67150f5aeab2f07f0a6e3555d546dca538abb0edd2b328c4585f034fba830302047c435bb500663064023054562f87acaa642e396546944600e0fa816c0b67b7a5373e365c14ae9d9cc3a3573a3745ea77dbb781c656dad3d872cc023039e5eb872d872e3b9ac232e829ca409a790d6de91a80008337f89ee667cdacb39f135e5a319592731cb1177b84fc3d6f0302047c435bb5006730650230502ec30e7cb90b7035558cdfba439bb3c044cdcac8f54b755070f99452084e854e6c177139796d0c67642e33302729dc0231008715353550c06afb5bc947ae2c3eecbc686ebdeefbf846ee08fa2bbb4188b74560d70c4638139e1a0cd42d4554fa84a30302047c435bb500683066023100a4db67d2ece521cd8efd324050c7a8d0591bde280e9a306b70b51aa44f49286a42202a8c2b6dd4417d35db04056fb347023100a9f7a5b13e9c92e6945369121ffa8ecc2cdbc1fb1dab79cb78c830e096413e72010693d76ce12806339e87f1b22c5d7d0302047c435bb500683066023100c70ddb293b870797bccb4db7ec8b46d46c07fa129352db0ccc4397db93525ed5965a765a6c11bf789e7bf7d0e766b6ea023100a5863e94b675c058de02e1040125c32cee0451749495af69c35db719dd0798bcbb2a80ccc8f0f738a091686bf39553600302047c435bb50067306502306460c8625f1902e360d27ee114f6d9705103ca6411e8b6b82a3dcb8a4ba77815570f9529118114a84a535bb8d37bf878023100abc4e6a0d706e0e798603963c91f0c8a109d2685249c8fd76360b2045e0845722bdc0b01e4e8bbf0383ed5ad3d2aa9580302047c435bb5006630640230045d9a4455cbaca61d5b41d4aeb7761b7d937f2d2991fd134be88e88b7a68f37eef6d3078b0448e5361abcadd61e185302306b3aae56982a1d60309d82df5d94f939df3625a1f08c55f9371c1fbfe25567ad80e733bddd1caabe222fccc263a3c7fd0302047c435bb50067306502302bf5e33c15cd455acbf32bb9b2664f207d5866827c60d651111c8f4085bc744523da089f54b1024ac97c0fac37095b65023100a92ffb488b8eaff30c34d6d7304ee5f03fae1051c66f499f5d17c774bc42916729cf4e8632b10757a1775568a533a1660302047c435bb5006730650231009aa631dbea1817abf73ff0a5bce0e896a7e636a4400207e39c33103eb6316d395a3c61018bf57d03b01348dae0eea81f0230558be31b289825ce7b97949b43e022be367cb176e047ec9beb4c325912bf8b0837e77728707038a232135873994a97130302047c435bb500673065023100af823a32d03ca826430305471480d9a059929a293bf3a347caa904491691b820f7e5dc4e25180f7b869077a23e84722f02302196268a5f24a00bf66bad33210106f7d2a53ff2ad8e81beabd2f1dfc5289a4a37d83cb3656b18bf6b17fa3a105fa5c90302047c435bb500673065023100ea9460dce3aded9fc2f789d83811ef95e94171ac884e42eab15500b52fcd674bf3af525e9381b977266cf2604658e95c02302247443c34a32cde7867b45f3cefeeca84e86afc94ae6e5c2c7aa2ed2f15e072009aed83ce9c32d76674832b9d23fb3e0302047c435bb50067306502300e0807605e408d509619d75a0e4d511aa7f5996e5d3dcbf725c8766dd7bded96c3c5f88f3fa7bda132327e57c05aeeee023100891c9f881466691010d4950aa4284f836a1ce33a22bcdc865dc75228989f76918e9736e0c542997e73e64c680fb3ea810302047c435bb50067306502310099fcfe51d7f362f4dd6b0d56b3ce1ea3be5785028f104619db8129573f43a9302777c25daa54b1f8d68d20b0515a9b140230729729f76723b759bd569853075ed31e73a5f8b1b6642476095d4b69df998219bd9ab09ef0df99d0fb701365b798e24e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023022fc10e242ae5de26e8dfdaa8e7ffd36c5b7c3496c23c21c7e852c7c75a504ccc41c0974538b2dc03b87443f0a4abf6a023100fcc3f61933971f9230cdff3706a19a3126d9c68fddc8ff26752aa6109e984bfaad0143ce88fdf88213c145a840a42ea50302047c435bb500683066023100a2c8f673c235f39a969a614834ba9157c9fd5417173314c39c7a736b5ad29c4b8627cbebe36e74b2f416fca5a9b3ccfd023100a363003337b1ed0c1271c7b94510b917817c1272b731749819b171ba3fb7fe00aeb90ca904d91203a2e4544505e6c5e20302047c435bb5006730650230432e1258893a2a954456bec18229e2bde160bd7c9acb4929835536ee27539e409449e421cba3af727716f0f3d20ade8d023100f62e812d69e92cc09004c25abbd1aa4318e7205638a1ab7af726153a81c1a1300a63d3e1499c8ea4e0618e4c57b350100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023030e47af13f38dfb6cda091906b5e943bfa63e1be7e6cefce0f84aa17be33d26c3438b4c50bb94be3420ea7537430c5be023050a37d2366ac996e072bd1d1bd72c6cf4095c84c784d2090aae7fed3f84dc6849ed9b01afa74c9d4d02b2aef41b88b3d0302047c435bb50067306502301c1bbfc51913268c06108fb51fdee897589cb71620e80ab42a116ce9837e9a71b3f9ff211d77c9437db867f809c9c14d023100fa4215117d939b604c968098ce25752f3056c56bf27b6472410de6facbdd58a817931b528b09f543696177ad6eb323b60302047c435bb50066306402302c85bdc06a6b044ba848bef6a8864aa2a8a69337017470513fe493693508d125a43981a8c60467d85f2f11e4fad50708023054acb2423cc53c19d26a11f8c6d13e139a34c27b22073cef5074ab6d75e9e963b36a37e1329baacb77a563eb12dbfbc40302047c435bb500673065023100851977c6c645feaefe0600c95196de15059a31458ffd036ed0ce6b4341bd3b32ab18999d7da87bd1b9de1b8fb5164714023038aba4393505da0fd56bc1d1e6d5ba724b334d1902f1e68da8a30d37668b1e24e0fbf9df480c151af65e82cc37459c250302047c435bb500663064023010559901b9f8ff6373933d524c0cba3f624f8d097783c5469a562814a0495f689318c6db100dae7780dbc6f9fc20bb0d023056a0bc3baa410f25828f924d461efe136c50d44adfa632a79fb12008ed1007e4024eed52f551e0ad3e1aaaaf1c3b630f0302047c435bb50067306502303025adf271e8270d419dda58deac48121ef192eb2bbbb305256dac3d67071a73d8b0854488ed57275f984857f21916bf023100a0d7fb112ff8941e0ca8e7d63495b6d550f2d693a666d2cd4f3a290723e8793d381629e1ec9ba9caf32b4a9b437cd3540302047c435bb500683066023100bce869bd210624ff26af492a943a6939a4b621c6104ff024eeca1d882b157647396c9c29df8f5ed5d2f1442829880afb023100aa5ff5df47548019ef9a499bc0b7129b0530027b99c10d2ae6214ed087229b0d3a69e6b6c1598eff939b3c606f8bc76a0302047c435bb50066306402303684c295386fb73f38ce9a2e6cd29f9d3dd3eb8fb2a79e44e6131d14f2611dc0aff2fa4aab9d3f5615f369adce5ce1e2023020104331c4505618c64cd1e9b04addfc22599236d9cd7b55d075c3870764e2593a4b900be23627771782d33b5747b51b0302047c435bb500663064023064b135c7d8506c329863d936b94847859b2052ff5ca190dd6c0518972a449cf0a710cb2035ae0aa73154d6adbf0c497b023010a0697e36d0b90e2af8779403c45928660ff60b6e26257b83f02d33676678c79646c0c21e4a704fddb10a01ade45b480302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fb7a3a6755c20468b541ab623448dbfc212698441ad4095aff46a3129ccb61826b97e9f1733bbd66248faee04e845c8b023044fe45d39873a168aa392a7332c4477154e4aebfae6fd159fcb9bc442c25cf46dc8bc7c3487a4a69fe06bd65853a8e420302047c435bb500683066023100a101a8feab4b6bc92d8086c176b53bf138f9141d4fdd3764eea66172190bc9a790dfd79e6c45d650f8d7c3747389a1ca023100f7738b4aa47a4a15afd1265d8b0f62aaccc7615a23125a64a76c1a32b02460ec9e80c221730643de4843e58bddb80d630302047c435bb500663064023047563e1fc8e36ba3725c014e41341d1180e2a185b36e0c3f68dc82b123a61502cf75b036a1e7c921583944f486405f6e023072250f3ca6ee67dbb19ae9375eeb4b0cbe4c8b64d2b1e09d5637fccae928e0611dbe31d5b543962e1d0e0ac7bfb40e680302047c435bb500663064023000ed350606a0ff67bb600f31daa5f36b447f34c9594315086e8497772b4cfd7903d9c6117086d201663cd6b08b9721910230715ba8331139836d0d1d55671cd6299cca1e6688606b3fef95813e25adb1367ad2d1ee3fa641998c9f5c93daaf5d6dba0302047c435bb5006730650231008cf9fb7bb6d71a6029cf5eb35fc173b3c1e1b5420ba1d53bcbdea3d4eb2e7e1ea00c2afa35f5ce0b6a027cc78c36222102303a5806c2a97c147a18552768f7637affa8f6ea1194bd8270b7dd780193b1240965b09b88269d9b1bb2ba6492a8e97eab0302047c435bb5006630640230100342b314a0918d699209cc709bfc8250f658297a7fe4e6efe7be2d6b39eff0c5bd84353e94581d1443fde38f2e4ea902302bfb54e4d513639ec3e303152f2f189aebff86698b62c7b86104bdd380933d6f9d3b28facb41f88bac2a5e6e8fff79750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230684b7b6ba009c4dc651945f251557ce29b6fb234520dc2ecf021d0378620d9bb714c303d5729b6f07346bae81d7deed302305cebd982011f24097ae1bc6cf52fee572ee9865b5769c3e16b062f7d8d2d44eafb1562b2139dbe33bd831b052f02d9f90302047c435bb50066306402307f006c56da5f9c779d2d56e5ae4f4f467059e5234d3ca9500fe35dc401f788d7184ea753397765018adb0e83d946243c023060916dc5ddfa4551955002a574d9b3b4850ed8c18fd37d3dc4a638e40681350aea5b11dd72d7499de81468a7bed2f7350302047c435bb50066306402303be35246d7f027227058590dadca4778215d2b25cfa91eb00e350aa6a9904ccf72d575d768a1a5399c8b5fc87604bf3a0230604a214ae9f6616b2c91bd350925e4abe5f2599c5627050d6184f5b5939259dce30570697cd2d061911619f3e8c033d70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500653063023038a9e6d9798b02fe36b8e388349142e1e0b230203f391de2e4d82feaf1f3788e9794ea51aab3c146520e4d74cc9ca274022f7b835c4084b60add57a0afc37f45221155098d863e2e4c246913fc55414280e820ae5717d806182227a8ad20dae0c30302047c435bb500683066023100dfe378771a5e6f544717a02be71ef336c289072d95786902293dd217987927d72ddf36fdbef27427959155c1854267f302310098e0272602266654d9d1252f2afb29b7d29870c549ce8914762dd899dbe05e1a2e17fda5c54fb469600da0e4aeecf7680302047c435bb500683066023100a535530009c1758f21c662714c95806dd40a6835dde9171342f0cc67f5f5751adda8c455c9067da15bf37faf2adc9f3f023100d13b3b81c1ec5785d9b5d4512ef6975c5c5ba0b7ea75520233ba961527e64c9aae127d0e4dcc3c4a735a5d4a90b1e26f0302047c435bb500653063023038a9e6d9798b02fe36b8e388349142e1e0b230203f391de2e4d82feaf1f3788e9794ea51aab3c146520e4d74cc9ca274022f7b835c4084b60add57a0afc37f45221155098d863e2e4c246913fc55414280e820ae5717d806182227a8ad20dae0c30302047c435bb500673065023069ce88fbebcb401bfd8cd5fe50e1223d1789cd7959c3927a9c96591f82465fc786dd80cc8ae00bb1f31df02edae0a454023100b1467064b06d8179d1589a231719d8c2a1944cd8d4d8df7e527e7b8fec25ba18cc3c0d49b2d1fc254dcf3961d42796450302047c435bb500673065023100bdb42cba3d9006e1bb0a4ab5c32b3be90b40b8479900076d9c984f4517252edbe7ba1533425315467715136425c56b2b02307553aca98b06dd9f9c9aa0e83b688f2b9a28a7ca4abea44c6d6bc09cd2fcee32f1494648ff7459424fb9d1f4d26c759a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023059295d825e5ab7d682683f1bdb1d4e650cc92d2ed9314136c279bebbbf2149da1aaec379af13de438b436250b8795b420231009f9b2fffab816464ba53a5297d19962aff6b84cf1cc591ae3fa123c287320f111defc8d12902d2d407cbda19c6b7bc790302047c435bb5006730650230221f85c30a6068871d34a687a7acc684152c4550a80e1fe57ce3e75763bfffbdec72edcfc454621cb76432272d875957023100f2ac744f1befb404d9b3d6535e5c22975409175b83e333b96deca7e557e0c5c852f4dc5b272d0893924376d3577efb790302047c435bb500683066023100e36cc8baf1735421cb1311cb1a2324968326f10e91d908f8ac574127fc01d8964c61538de35d1f792f4ad4b9e074cc27023100ea87cf2d1edc4036c491f35741f31f41e2e5ede1493a3e96720a68c82490e5d4764d1434d414effecbf6054f17d58a4a0302047c435bb500673065023100b2a4154a8fa0c9d4e16080037d58cb211850d77f8b1d6c9321826b80a8f7e86a52595803d743159d443cee40882745ea02301df70d937f5ee2bbad8c3da4158bf7f37bdc4719c5643e3f7d2bacbcd19ecfffae9c36754b8beebfc4c6dc5380c4d9e80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a9351e191bb4f0f0c622ecc7a24ccb5175a831c9bb96faf30a695295a69ed7fa7e9a1d266644893978dfae35cb79248b023100a8f95632da7055319726cb96cd1bbe4428cd842da9a0fb5d3ec4af9e968f900e716597569d15bf6291885741a907f9420302047c435bb50066306402307a942161b8d0f73def9cad3aca8d86a0920a3ed30b723dd2036f37e8ea2c8bcc5a907bbebd8119091f61a082d1ec1a4402307e89bdc3b0a91ea2ef406e5166518ac5bcbf9583359276b6222570a80542f07a83636f8d60aeb0ae0588c7b83f44987b0302047c435bb500673065023100c7fdc99dcfd49eddc8e8c331d8eb588253f1277a749148741ca5031af3cdfefc2882f048f36146342995b1e05ad0ce2102306d7919615bd75cae8baec99b15a04c5ea678fdb3b3547397a6274185fbae94e97bf7a8767d62290f27b1369769f25d920302047c435bb50066306402300c9aee476e0ad94b27d9d78b985282f09929f6e3a7cb28d37a374cfdefe6453c22eda8f2ced736d0520c112195f1f9e0023006a1bf796b17bbbd9db47ca5ab8f20f4d07a8bcaaeb401c139e228a1b9bf6612b87987fade6ca24dcd34503b7120bf170302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a6d3642af161ff6fd6d5ad2490fdc11d65a65fb2d0dc5b8437f06d2b8e750e4ad467f03b2861806a4b902bbd1c51554802305e2d68430e76b59b3e110ef19b62bb73ba8d92539d366c5648ca28ed442967887b4aa1c7db987dee4b95eaa5038e6a480302047c435bb500673065023014f00484781d7a64b9d646e340b50407c9e6f42b877df9f2112ee7b7f86e9a9a74bf9a614604409a830179c13278aa7c02310089dd6bfd939bd3fa864fff6bacafbb887d3196805f7ce776a8236b7d9752ed46681215096a6ae2b2af0a87c6e72318b30302047c435bb500663064023076ae04688c1457b6ba1c4fa75a4b9d9d8f2cd7163a712b029537e23d39a7ac417b9c3ce93f02b3de415df7b77212de770230670e79c540418e65185aa7db021f177ba39b19504ed54c7d7a60fdf56a702e649bedd2aa8c8bad65c91880925a21fed60302047c435bb500673065023100a2a344ab8a2dc26f02c648441652b4ac082e14e0c3e42ba88053a7ef80f1e90875ef0c6373999515b258e6547cff137202306f4177b5e1552f5a2c39e2086e76af3f28f04b700f3c3cdf3c2799e11086bf4e75e969ab5cc7080656c5328292a91c220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008efc170ef1a5c03442483a1df022ece9a6b4625d5c96cac804b680cc9cad6eeed3dce51f110132140d6e1605d1c6d22b0230340ae8fc13fbd5e365887fe958773f12083c35f63955fdf904811a6c99d70dfbf00136eecd0ce79ff7b6cefac35a54c10302047c435bb500673065023009b7eb0f01b3bc65c1c683d3cdf40648fbc3891b6b75774c0f6077a070997ceb5610cad18718f638d06cb6dfda434fc3023100f0e6f9484b0458ad530605dbac11911b488ded70c53a067e24363bfe6bece422773536a50f9b834e54d9d45db75061ea0302047c435bb50066306402302af81921df4ac4b59a3940e20b08bead790df3b1ae5a95410978f2076d70cc9303947e1763b82e811809a34446f5064c02307604d1e0c9aff9fbe039357875f6a99366ca40b9eff8b2121af5d9162dc35e3a676575611fcea20e4eb12a94cb10d37b0302047c435bb50067306502303c8bb15d41ca3c23d89248a0311ffe5e560ebe9f485e003fe431cababef0a0f55742e6c184b1da9b466c79c8683955f1023100be73ff9ba7dcf89e7703547076fb7320a9ec3683aa69439fb7518773f8f74f15a0a7e6e9c748fe280393dd290e6b2d7f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305179f1f7194bf8632b46ee21c44dd217c9c99003ab20e18ec005088caac8a03867ecfd16707d0ce838ff596cc25a1df4023100928fa2d79385d95e630d40c2dd3f4541c9e677f15b84470a29d987d06c339724b74f103e3554d8169b4ac10fc724e1d10302047c435bb500673065023008e99232b7fa034927f11e38cc8e4e0d8e292033b0e19fd5aa27e8110355f62df87326e01a15d4d7503636bc0ae400a0023100f98ed62fe15505fdb09f094f08760bc16a445e03544bb3cc3a86a4bd177c15a2eabb5928bd952440a99ae2ad7d23d0440302047c435bb50067306502303f1da333244c818f5619240151e304a502caf57c49a2c16facd522ed2cd3f86c3efe2cac30a5ae2691ddb585abb335d902310098ce68de75c76afe678e464aa4d42cd261c31c9638009019544f582a947fec6441822600680c05a14791b2c2cb8c0b490302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008af9d2edef1acfb79c02367fba75677044a57aab38d611e87d52a054da1e492468209652525d7d30b7a7e3c05e6dc13d02310094932582d03b396c266b717a530b489bac553a7d80a9c9a4d0368983e53edb8a70d3d839117d4d6a6c5609ba1ee39a800302047c435bb500683066023100de3be9fc7bad6c3efd222a91d337b87d3ab0b069e08b3ce33955cf039539b8518dfe113e6fcdafd5fe7b6984ac726fbc023100cbcc7792eba3fb4bbd6eb13fb1e1309ef17f03df87d5ef26eb21d7e0b0424f27ceef14be676d58fcfb8b4da6f359c3c90302047c435bb500683066023100e126fbdbd576450674c44647c2c48a0f04433debc8d37a4961fb1ef1c8b95212ab45b94db0abb714257177be8ff7efe7023100bca832d02e01907fa8b90e0f0a9c166fc5b15aa21c119452e0206620932ef608dbf4f504cfe143085cbf878e28cc166c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303d5d74c294f51d097c203caff91d3c276b250eb4b114a74bedb6a40b1dfaf1490ec79e24e94a9de0daf024d1b6477476023100883aa9987b2ea698631286453184dcb70ce45ea68921eca9f3986df965ef5d5aca3b71d2a9558ca0dfdfe896641021630302047c435bb50067306502304b32a7f1967a5df5235e4958036e696093295fe4a4c3f4c65d94358186885c53de5e84c21a50ddb21968459b21b0bc2b0231009e29154a8400405c3ff154806abbdbfcc30f6b01a0271a76ff229985b248ac2bb48a393276f317578a3ff6103af90f330302047c435bb500683066023100db1faf0ef0e26bf8b6d5271be98b32937c3e219ce2ea01f6ea057645563d4bbbbb014e84724327eb8dbbc0e770fea8a4023100a48fabeb0545edb9760fb58787d778b536aeb3e25f91f4cb5408afaa972820da45e4a46dee537d1f998320aba8f5fbd20302047c435bb50067306502302a6566b7a58751a26821a28338d950d4474cbab1299b49fd0d40ecfed86e50a20ad4162df62492b469eed96ae6d3e7b9023100b166ea5f14b51818088fe9823c0c4e6a89f435da5187a4cd0b0bb895de977232d59054815e7c356dd2824e4478d2256e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300862b9e1257729a88581c2b7d6c91be5f3797094a44dc54245fc4e8332b7128e8f61f922dde16b987b17c04f155cc77b02305c35092d23a92629776b6b3ed7f1558abb037ab295946bacc143f144a770b841bfc4c38799bebce559186c1bba9e63fb0302047c435bb500683066023100c4545e7a50b76f54ac3293eaf65e3a48bcf39c445c98010768c2618c81f080ac5f3fa6452cb1feb3130f54fe3555cbcd023100f4d2ceb4ad84aebc93558d0dfa44d31b0609cfb7b500a34a4424f170ddd20fcc080f6e7b8d73d004d13e8308bba75faa0302047c435bb500673065023004faecfec873a46f7b390011407d580c841a5be66e4c5272fbcde46b501d70395801501b4231721bedae6c9f6b330e57023100bcd07182c4f48fcb425cff174f40394eb91f3c13d246594ccb61e5ada7a1263114195bc51ee3107464a2849479ab61120302047c435bb500673065023100984aae7a6ce60cb9daf785bedb95b23584397735f48b575753b1bc8a9a492aca1c0c7aa62817d4feb8a8b160c18a8ad702300793891942b5ed36d9d3095df2e65443bd706bd3238fee094eabe632d4706fd434237afa455afa018993a3f346bc7dab0302047c435bb5006630640230371f017b705d0ff807a1c90bff43ca623e0cdd177aa603f4444ea15e8110fdb3cf9787d5091ca382e156c8d5e0ae8ea5023007f576afa0b2b79fd50c3ff7e967c733b0f6d168dddfb2791b1c16a7e2e1f9bcff32dc2b5bf2f735beee95f1dc71f1a30302047c435bb50067306502305bb3aaa53017b87150c54fd63b5211688eda2c23e05315152b0d9bed6d9f2ba6a627c4b44c563f4e6ab51983ad430a2c023100980e76a966ba98fabd6a2d1d79b951b8b68e2d7cb9ff944e7db4199fed29178c448e5cb6dc40e6eef552ce9710fe50d10302047c435bb5006630640230042fc4c6736af4d334756be2759a6519dfef4d7117f3449f8b9c9661c355b664eff96dbb6263cfc2983d360fa7c0dda2023047e0f5cc13a3b8dca0bdffe5aad3dfe6fa56eb021f072f738cc5ab6489b0c03b6d075cfbfb5f91cc374e0ae9af5cd9c10302047c435bb500673065023100bcc5e4877b9bdbfddf6cb176efefcad17f04438d76a3083452af51c6e808a827bdd823db5fd7670298fe2a2b39962ef702304ef75773a439c09c12c5513dbddc200267a8d29449ef2c4f451195371982b23a2359f8bb36f960582028a92b7f5979260302047c435bb5006730650230250bd81d97d95c23ff0068f74b40a0b9e2f4e506cd61d66c118dd0def8889a7ce846d63383b3b32cfd9b0e77b5e976120231009a87ce37677de214c759691e1ee6c9b55f37121b60df485525450e4a4952b634d7592822185ed622bd9a9abbdbc507bd0302047c435bb50067306502307cc4df45d620611493c428fa56e6bface772e5e02345b06eae05997225e1b3dcddba6171b11500b0434ed158146113de023100eebdf5d49468d6d0a8d4ff3db608c94dbe9bf3464468756a07f91a92853219186748fdde054c2d24657c95b23898c7c60302047c435bb50067306502310086eb510756db72990fb44edccca8c866666596e064ff7de55d18c924a04b08b553774157597fb0b00b5cfd3aa0819632023000fe667adfe010bac84a01bb3f466ace9d75fce3592a383fa701f9f7ce442abe625980fd45b5af3fdaef0190b1a31ab40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bbccf2c07cd53f8e89d2e575c90a08f9913986ed73bad5df960011ff65dfe988351b4abf7df51081e7812ab1330cbf9802307f04a7346619a5e75f54f6f826a3169dcf0168e03bebd2d76048dc95bc79639acf943a37115534402e1138d9f9c8dee80302047c435bb50068306602310093ba9f10a7a8170d6956e6197e5221a1be77eac80ad6c0417a50e2675717b491bd41a48fa1fc2fb89b1fa24552045d53023100e40b441a8f5c8defa15858724dd6d2a702e13290146cd91acd36fd74b25fdf0f9d365be9659ef8f613cf982bbc9d1d7d0302047c435bb500673065023100d6fafe3a14b06c454747ea81bf9c3800ec57293fc4797fa3323754b0e6b6e5716b1ae776d522681f1afaf656f4e7258402307607f3c42d725bafb8a35d9d2a19a18ee4f3a087867a4193a019a96b5c6a18a511da484e798bfa6ea531dbc20e4a2c550302047c435bb50067306502300fff8537323ece7567af18e41217bc724226c548ce45a2875cc43c25cf621e4b4fe2e429cdf637b4edc445128e6a16b6023100c927c63467334791d275cdf7feaacc607255c61b02eecac2f51aa92fc33c1dd48a827aae70db3db7b10bbedec69070a90302047c435bb500663064023065717a06f3a7924afd573459f61433a1ddb6123e736d0794fb185d7f4532fb1dc77ded9e9c2950d6a39fefd4239423dd023030ac4cb659a39ab3b0a626d134e6fef86b1d41f58d644665c160e3975d02b678ab1cf1a901c1636027c911733859a51b0302047c435bb500673065023100d4ef8ce0b62315fd28bc2c2735b68c18f7fd1efa4af814ba353ac4d94977b8392abb5370b7becea944187f910a9e72330230203c75b7f48ed3d6f59ad325c82d8e1ae0f5ed8b101eda1d69accae8b9a0affacd4f5f98b6080c45f6843895d59899c10302047c435bb500683066023100d5edf7f5e7047e3708e115ac4cb64bccaba082c100abb0ad46379b2db3855c6081f725a94f7a0479f21e409efc65c180023100c3a6f1b34bcd0e7cb7fa832881ab69658c4f8fe5d1cb167bc24ccba17c5a4ed3a7c274cd97d463a3c0785837e28f74310302047c435bb500683066023100aedf0ace01a763ede913c3bb15fdb78d65ac56d9cc58e50cc61015a60d3a1ca5f244441586d6aa57ef90957144975c1e023100e87a3bb48c448312ee29980f408756982ca5df3f71fbaed5393541f6114674ce321b7132a70978c6af7558420caf11cf0302047c435bb50066306402300b2db3cdb2f2667a19239e0da6a06326e9de67b4bb09ad5e3f75a85e235231a650ac458460d194c58b587cf26b894c4f02300ad70e2a11c84d49db74a2258dc6ff8e5df55ce7bccbff506a12f1e227b189fe122de868d69639e8d8dbbb0bc3e68a970302047c435bb500673065023100f8459320c8427b59b8e805c8508b4d5583da761f7ec6fd25af3bdf27e17750e0ccccbf91613f4932f12fa1325d4a0a7c02307d35819faae3a1721da7303da425ab63dada2366b77c969a23b51d4590aa0ec09b6d20cd3758d2752fae47c0eaea932f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306817cf4d56938e0a8c3266564073d28bf6b2f3feb4546968b53ff927455812df1091e5d4a78187b45e54d7d7f5e38801023058bb33798fe4439acc7dd721f68873f9d303e36b3dfe6122e984ccac439f3d3579446439beda30d0b97df3f4c6127ff70302047c435bb500663064023043ce2f02ab5702d94ae47eec8d9aa5c5eae9330d0391ef44098c1444708fcb97370fc3c195f7e408a9e86f0b93ff1243023041dae42518e9b162a68fd8051a6c4de30870d8c9b296ab7cb23f9fbf80ae6eda21cf1c12b14c121aba4213d8d06b8d2f0302047c435bb500673065023100a996a068f028574b4ff2a4c8403804f6c6545dfc133ee72232eafe5fe8fc7598516329bb26f7eef13b0990789cf82b880230360196a1a7637255b0b9c90f538de25208258839a84491ddbcfc837e5a4803d9f576f0317476c5f5e0198c991f322a1a0302047c435bb500683066023100cbc82b4c19334bc663dbfe2a2f79eaee931b01c3610808f5e03105d4a475e0d72edf763492eb649211db521870be4edc0231008fbb96ab3ba4133fbe596556a200a3846be60bacf0f67bbd9fa631b5d3b5b98226a81eababbb197ec674d6913b96a6370302047c435bb500663064023000fc548e432d09fc4a4115370b5e2b3ccd6edfa8d89b9400c315329d77fd4a21c859005f9607344797669b1dbdc1f44a023023f33ca9cc7d56066989c4cb5c010127758bd88deccc1877397c79b4bf21f83f236a24d54e229a7a7d10cab3d38f009b0302047c435bb500673065023033838870048d8b5e65c8c57534556dba35b822fc6d9f1acf5ce8446033ed551f8efbd2cff672a0bc6e8e40e1bcdd2749023100a8b2129957893a537d1bcc20bc11bba2d9ddba8cbeef92ea9e8df64fa839f0ed7151cd947e1782cb4827936f0aa6f3f00302047c435bb500673065023100aba02df15fd63945adbed5ad1b9048d6a4591bbecb67789ad7b5fb0544f8c4fd92e068414371f9f0240aec5b85ae4fe602301ce4ea7e7216b9dce0885c2576ed69719b440a0969cfd19d7878e6bc05ee524698a9afecc7daebd33d153ddbb0e4f0dd0302047c435bb500673065023071528e849bb09aceb2af7bb679471c29aa91491e581acf4cc1fbac68788e81848ed6d0401cc2141190446562fd75e0d2023100b4e8ad7e7408516c58ed3633d61ab6a4145b1536d68951b58e02143fac36a6174a6112bf46aa46d182921987cb17372f0302047c435bb500683066023100d65a13b43bacd960fe0b339c87da237480772ebaa28f2718bbc41c47846b9a3b4a9a99e38766fef6f176ab4507c51556023100959ff9820437ea720cbec7b4410578dd652f4b0d37e4e2472473d38735abf9d92162ed347d757068f037e9b5ed9aab5c0302047c435bb500673065023100f139d2b467d6840399c709443470bb47aa55ccffa6feada9761bf720d4824322f0b1cf5ee7aeb637123b28a3e0bdeab102301d00e6fbd1b1d9f0efa15f84f8f1a9bf24ded091e44decdd54cf25fd4d145ead8d83e587ad22c16e39e9f84d00928d770302047c435bb50068306602310097a398811f1595da4f15ebe39fdb8ef9c9795508eeafa30ea618696e999e99e6370228cab16e1c0753cbcfcc5dc162b7023100c4c0edc3f84b69adbd1e942faa29e9816703b80d3d16aa114614479fd7f4cd17028baad0409afcda88d76b5773bfb4460302047c435bb50067306502305ddc711854ec14b45782b4cbf1475a323736c1221ec0dbc66c86d5e3f6a8432a289136ee9c186328b8facc04ebe4aed9023100923ecbf8390b5ff42c438c85e0fa735e1ad12b3d04f78881923562d1d96bcf2c41242c7c2f582e900e9736ad1aa6f4340302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb500683066023100e4e48f67f8077d55dde3f180cfc54b4ece51eeadb8c171afb9eda6c5d01dff54653cec40250927ccf6decc821e4713f30231009bea0548abb8302f4e0a49b14ed90239518c2c52e96c7788b589df2eee9c2d0c80faf91549d1ef21bcd187711da3ae1c0302047c435bb5006630640230313fd06009951b2087694f087148fb92441edb647d9efa6c8282b5168f09d7c6fd2a7100bd20fc9e3eb166c8d099fe2e023015afeedd4009908ef1795f0ae8f383f4533476363566d91ce0697f8bbe76188b0b4d5a873018881406ad2d28e906000a0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb500663064023073a2b7b7bf577b172f10563d908724a05746595c564a70e83ff710cdea5a811ee563db92ff693fac00ed2fdbf419078402305bb5d21a446db225b31b69eaa93c00d21200af78403305494489e54f1fec4d161a641a53747753861b6caddece521e890302047c435bb500673065023100e9f5e89e605c0fb389f2b1ce4e8242d4f5a95e12d8643fa79e5084077decddd9f73719c1684032f240e844ccbb832794023025b91f3c2860ee90588797029692a466004e88911ea1843887d715b42fae10ea33116a61830ed840bb85f378f034beb50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310098fd9c308853859620d869bfd1dad9cfa5de333a1485cc2e8fdd24df0a94e5108418b3132efcd016cb67402c6758e8c4023071633ead11743804683ed863e60ea520225dbdd64f7834faeb203358ad9d9fa49b035ac43f198a9d6433fe398c56c9150302047c435bb50066306402306ece7727c29d121dccda79393e66d436f89b72df64e92e457d3f53fd6d8d6aefc7bda1b77331ad4217abff9faafa6d3b02306131b2d2381bec5d44e317a575278fc69fe1b6edddf9863db717b7b8723e87f5886c954125b530d99300d98528c457730302047c435bb500673065023100a484256cfd7c97d3ba47b63f6cf8c104857dcf1c61975f24eff518beed6e5c11b77a36b0343a0351a8ac6a224cc69440023049b7908687927842ef0a87c96f2785416741ea6effbd91ce18ebc7ee54fc4d9efef871e303b7e911efca31f0f32436080302047c435bb500663064023015dbd9c44f136f14bbede3ce0eb2b4ad3e538e6d018f0e70f3dbb687ae3fc6b669ad9d2ddabbd7eb007d47187350384502300deb4531f434f680863da6dea992195cbf3391a108a40981cfe5637569590fa055f8aa71db73334a2783f9a237bc2f170302047c435bb50066306402304554ee5996e257e9d1e15ac597e8074810705850f322f741e9cd965f9daa716a644709e40d054e4ff7bf6373d13f1ba40230160fe2f377f68b4ad95dbaf1496daa5323cabf150b2f9f2488135e6c9fc398a1904abca429ebb1959c1b87aaf9ec337b0302047c435bb500673065023008059458111d2c9ad9eb11203dc0ab3c76c0d9f09ff6c6b6f78267c3840b30cd5c4c6c69e51aec666d10761a34d635d4023100f274888adc51fff853e0b29f18340a626fa08b79264ddaceaf7dd521ec0b020532b7be55367c093ee8ab15df7e49f6ba0302047c435bb500683066023100c8e77013bec7f3f3a557f73d3c26648217aab1ba6b13d4207fbafcd8ab476c96e1d01ab45dae5ac061256a86c269550f023100d19796a85710f097d4f9b505643e043264ad89c356563b5ac2681fa9bbc3946c11cb7f11b3e83897b35bb03629025e400302047c435bb50066306402301ee177ed9045ebb0118da14314d038a7b049a06f372a80afb09feb4632eb25c237b7b2d7865ed0f6f774934ff10a2c0702303631e02c7bcdf240b9faf10465ef4536bed501caf90fb8657d91b6e80092c9cf3a84cfd1cda8b192170b941f1704f8820302047c435bb500683066023100fbfb3954ce5b3a6afd88433dd1e6f3ca3543f43933296e41b170ec7fdec89e4ecd57e4ff690c68873871e0bc908e419e0231008f5abab7e4d5567008762c39d0365104ad232a3ba0da367cc7bcd79e9a0664ca36a1dc51cae1a717d7eb1cbef5b389680302047c435bb50067306502301509e3020ee92dbfd5bc35ff474594a31fe186b82845ef456c59bb99b87179bbd78637ea89098e4b530dc4dc345db76f023100919b435997c1dafa9473435e7658608016471d4234d48db0e412ac241e4c5f171fa27e0cc77dc95ef1af53031d8e53540302047c435bb500673065023050709c5728c05bd42c3dcec026e7cf490a24829c04a1b8c9d3d0a8f7095ec1ad742fb3c129cc32e17c02cda891d86d410231008d08ac2c04bd6eeaa76007ad89f3d2647d47cefa9b495b7e57038009d8ec896d84658f122caf59a1f828b207edd7ebc80302047c435bb500683066023100ad5d92b8a05301b8d23bc3c1b4cabf11a972843c8ccfd01c5683720270a663a2f38f99ac67f82cb3fe707eb10a33ff88023100b2bd2f454c2d0b3a04994cca5e9aea6387970ef274aee7168c9afc026c0ed4340d69cb00de25dbddb19fa464638f782b0302047c435bb500663064023071f33bdeb73c241e5bd02deb136a71ad1007c4450a7ff1632b084b7941c2a5dcf958ac6820391f5bd36424084f6736d40230704f12c48384a038279b30e7eaa39aa5b473cfdd305aba80c4a06c5ec37cf030a57cde7774f2d326094b2ef8b00859ae0302047c435bb500673065023100fc76aa65c9e0d978d20ed2767ab2e868d968337761677fc9e78de9253caf72ede31db9c13c3abeba3d53120bea604f580230545ed4ca97d35e473e2aa88d2ba58d3e13ff6f061b65dfbc647edb904c44f3cd521688a88b59fb355f43ab90cdf1d9e00302047c435bb5006630640230756d1838995f020cb81c76134caa4e2ce3a0a74e0e40909c73bdfd9571a8891983a1c3ce09491301b9901b61799b231b02301d5edc56488604cdcf44d495c59174a8c3293f26e64c4c79d87be2e19cd5299b8230674e11a85e3912df470a355edec40302047c435bb5006630640230140e8387619254dbbaac82376d3860d4fcbccbbeaba44cab9bfa9e6a249ce1622c9671cc0d7f402a8d854dd33767a860023008683119d093f144b5398454185855ea4ea4f59679cad75152baee8c5bceab9b4e79cf5bcc8058447a923839d8af59e70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301f5276c8c93ef357737a8868f340acef85d28d685e35e4a33813adf6a1e441ee5778bb95f318555a3b31e660f72769e9023100d88eeccf9b6c0e31c21b1029dd141e899f89eea88739d5a0378917f879d0cb0ac3a5c543d68f91071aae373ae04058d10302047c435bb500673065023030c17be1aaab1cc0d55d71127203258c49dbdec56c81de9136c013d72a95282730fd0661f9c61a02b85251a29d1b1f39023100d1b5298e41c3eeb32b1942668ee4be160ab227507e3618b6e912be2dc51dba06cb4c567cf0bc844b19e68e3d68fc0d210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d16e943dcc61ca1c9ce4eb498b2097fc2bbf2a54328e0ca8e49b49ee651f1b359fdc551b63481242557a5a1aa1e22c49023012521fefb0b752b2f17f4549001a0e6c225ecae63d0b2cb2ed007f756bae588e43e7efa069a6ef4dbdba1a1f35eefd7a0302047c435bb5006730650231009c70090ff86c7a4d2d42779bcfc79d645d4445f32c42bfc722e6b84adb68ad566cdf1d22e8a2f059c1cc73f1bdfb697502304d48ee8f1a3a87838244341af3d826aaff8047960cd8a5ff41055f74404c05eebf8a75b42c4ccef2c85c70afad95367d0302047c435bb500673065023071647c1c0a4a9a721665086cd1b075805643fa89d7d017ba7e61de811a2fdfc9eaad192f7efe78715b5bd12263930277023100f13a2cad970f0eeb510589dc76d5be846a9d36cc2d56d68825e18055d103a518e1a368c5b1eab651e9bf52e048e16bf20302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb500683066023100d9def8bab47eefc80e4bc5dc0ae473bee68d6cb511b1f69953ddc8ab33003481d202ca37e3d0e6a00dfe382877be6b5a0231008321c463b4e033c80e337e469fc2c1c7c39a5fdcaf83ad4d2a8f030776b4569b1d8b37abe25fbe6deb1f6e6b1b5d484f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307ad0b22727aa4476d33c0719c666a03bbf55a76d8a65f8f26046761daa7a62e46982b9baef4e48099d0f9aa14378e8ec023027a0beb38c6fd7e93b38bee028e84f97a449dc15b9553c6563e1f80df97605d3780ce07e16b13ed1e386ffa47d6c62010302047c435bb500673065023061ee132deec93fa149456e234a7554ce5a97dc0f72ce5fc4783028b1a1922de8ffea6ff0381f1d5a10e9f81204096737023100d2a12290f0e724694289cc503e01e4b0b9e49448eed2f67c20a4345fdfcdd8d7f2e273f4316e3d5ddc6f194053f1f55b0302047c435bb50067306502305366a81efb81b99f7e6d38e9fea41e4d4410b4a7607a3865e290b254489e7ce84b1fbdd095c0f0ca0bd2a49be5d1bfa90231009ff3ff6115868dcb4eb08516db90fb3419765f7259db0f7f0fbdf347ae963b076be141ad3e47a8b397f353f86d8bacb70302047c435bb50066306402307ae608fb778508c86f023f98aababc6f87b392ba970405a5a14bd6c8d7e2f3684c80f138410c1c19e4a623070608e33a023031caf618545d48d9996b55bef784ad1d4ae9c6004b8143f27e78590a3a9ced0437873c08166b2d5a8d8d8c3347dd2d290302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50066306402304d83b9f271dce39ad75a77a4b8e56e57861c570802565aae945fbf310536800126691a40c9b0fe2c5b7406a8800e200c02306156598752b17d07036d48ec6a1d15c5f00bb4e8147a556c40b4b0cccff39a8dd60bb8832acaaee3c5f4171cc129766d0302047c435bb50067306502301d0ea8a7d580cf44ed3b338453030ffae8a16c980b5016bbdddc9a298c6ac13e1505b13c7a33d9b5574b5c2bfd130d420231009831bddc1946965892dcf721d0954dc6887e96f767657bec23b564cca2732bb1d0fc631d10272f621f3ac2644e6258b20302047c435bb500673065023100826701da0323771d46c15957e05c43a99ebee00c7715e01d6789ecfc2d2c6105e99730c2fcb282ddb65a2a470fbec45902301c5994a58c49d677b880e97f31ebd7e20fdf220cb2141d3bc8d8a7ff1b433cb94abf624b81684edd3382ff0e95968e460302047c435bb500673065023100ce4f6a2a4c1322640c1398beb13b247e8fbceae468edd48b7b9e61edeb818f1089bc2d1b16ed0ab48fffa718f4391ce602302a64e0517df99639aec74e688113cc71dc61a09df20c18e8ce71f59663afcbbff791d977f994e65ee7140afaffac550c0302047c435bb500673065023100b32584d50d9fbad7e6e800264ce9599679fa7115eff5f60367d3487f331695cbfe5221022c00ebb6836db45b051ca19b02302f28cb0fee383b2a986a90fda220eddf48a24751217dc84e2f381212877945782cf86e1613bac3d50c89e4a8a6e7ca8f0302047c435bb5006730650230189cd41dfa3b1acd7cb98c3f56bf6ebb530a8a38e2905451cc3ac5deaba9b3ac54051453859c5635fbf06053ce798e12023100f2405c458a31d64381a15ef07120316fbc0d5a0120b2a62ce3a4fbc4e7585e4bf6d85d45b17b4abeef8c8ea8652b84880302047c435bb50067306502306aae4961e29543dcbdc8d409b0208d3d76d4b3ee8ce149058c9fb8dfc0ca6d0dbb8028f269b232a7c9ab1496feea2d98023100cf2bc763463b3fbb7d8381441bbd4ae1e2e2da279b1e54514a617e38c5c1183bee41da42ddb40f2fd604bffcf9b617c00302047c435bb5006630640230029636a4d31b13c31816157a8524bfa53b5f3475d3bf2bc3215f275ee7f97a2c8300549506668d5d4fda674d51d6e4c6023003df90ea6e4d12617c944ebc6a6def7b78ce6ce7ec743e7bcd6b524bcf4407113051d6cf9894b71018c4a82fcba70c9f0302047c435bb500673065023100ad498334830a9f7e7f8122867c0c8be2846f414d8812babe331f84f3b9e7450ba2e6298a10d0338d73e723c8fa7146ce02300d453e11fbcaa77092f12006d92dee55e25462d01b6b9c2f14ffb42930d65416967ed1486c7b7d3bdb026e0bd04f6b440302047c435bb50066306402300ac34c42c523485c48b9cce2dcf87b4b2b933d731008a4ff9082757d39997ef71e672c2c3f0dab163cc6302edb0aae85023053dae54c3bdc9cae67acff8266e56b56a4fc3fa3b1615f185a265edc56ff7d4bc00efe5c76b0eb29e38c02a09790b6f70302047c435bb500663064023010409a8d225caf547285dd322b1a703859bd6d42ad229057943d9de64e9b1d05f9c8e47287b642bd4a1719302077395c023076d9bb3c2cfedd6b2bf6d304b4cc6f60d0bc5b0eb7067d9592d7e47c6e2ad6c67457318c4d4fc1f5d154f452fa1318540302047c435bb500673065023100d81d172b6b280afc98a43fea90e96a7d96fc769ee206570680eb6946b3ea9cd2b165c0e5276bd1c1cfeaab6a4ee6c146023024d23b6edd3d0217db163d4e1da3030e03aacb1859d5052340b9df24cc902bdcb546880508cefe3afdc4f3dbf07bbee90302047c435bb500683066023100c4794977973e7b2b18449765709820332f39c9597b1be79eb7f1d57fe12fb7cee87b42e862bd7091355e129a76db27d2023100d562fbe4a50618b2a395a08eebad95cb7e1b260e7d4c2b86436f4f6ebb9f62148bf3e7d742a073781a8bbf4d7db4a4170302047c435bb500663064023037feb8e4bfc64ce777fe582135c1af5a00d23cf1fe5fd6288320663cfd80a6b270d4b538df345c52ab970f56e65fd937023033c1e20285fa659154ec640bde1f4ffb351aedee70c2d5e1194a08a983b5cb48c1c86aa6fbdee8fa0cfa402f4afee26a0302047c435bb50068306602310092ebede722e2b6c8d59dd32417ad4bbc060bd0c9327309955b233767db66df739496a6374707a7f07212251e2817202b023100eedda9267c46ad18159a0baeaec8f0d27fc51c4ef32be914445e6ebcabd229f02d1e6f34cd1a9aea0ba2e871c4c9d5720302047c435bb50066306402301290b2ebcc5891664379754ee7fff1b0ed430a3a6dd789c91730229b3cb5ae0a712f82f0664b9261664830afbe3c9088023062ae225f5737594a988f7a1839269d470ce4f50ae1a2cb5322d8359166068961c0c18a4de8307903f7f55d08c4d8fffe0302047c435bb50067306502301e8ae7e5e8de0e8096ad0165ef62c79608742c5c501c132220c1d04b78ce4aa55cb01cdd0f990e81ae7faed4b814ae34023100dc5106baa910c955113e15dc4978128a903da669f58a5d4bb24b00e125f59401a7ef7102343ae6124097e7ed8ea1c3ba0302047c435bb500673065023060844bac30b3d5da38fccbd7ec55b2c97ca93c5d559557a1263539e02d2391c68fa7d16a8767d294c87d63878cd039f802310095661d9e1f25608c7d2f5772afc5fa5269aca48531209b6bf43728c40bbd83e316a78a83464abada3b86892c93b387b80302047c435bb500683066023100e2df26ebdd63d61db6aa196423cc560df2565715567c5fab31c95dd99010232010036a2b9f24140e1956661c4359ed55023100c594028ad0c21920070446cc13f3e3e7431410324ca494b8cc008bfdc78db24849770f0c66523ca15251586c6d57b35e0302047c435bb500673065023100da0c23804e5eabc8260d2161aa8ffdce0e26d0e57b7ba7878e4ca730233d6a6374b148963c217e09ac4cb4e5c42a643e0230713a2570cb8aa1171d6f8b1707b8c03c47ad5efa54cbedf53d44eb9e5d7dfc10ceda0b8a1ecb1028e1f82a5c3e24ecb60302047c435bb500673065023100e4e6696693bf47fbefc37ba07fc8b000858074b949fdb95028efff79639aa44689baf2c0098f53d9da769db86b7601c7023054053a3c5ca587464c4d11def3eeae3faaa0890017ec1d24f6a2642dae5faecdb60551485fa24caf13f5c26ef52a585e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a1a8ee38aa402377d24cfca09defe5f824096ec9ddd8b22aaca78e664eb27efbff6a037fb5caba5c00705d72dad5ce56023100b21e4073638fdba91a6bbc110477a49112c6de33864921d0c6f13e037bbbbe6f573508837482e426340d145469ef29140302047c435bb500683066023100f3cb047efd0824f535d0795ac6ef11a8957a8a557056ce6a33c4f9f4caeef5ff65b054c79a5334a42f0c7d0b8487a0bf02310093a42fee13b14b52c29f9dc2571fa15830505dd5003fcb1329269da9663b0a880719d362855692267f8c4869a617a5cf0302047c435bb5006630640230008fc01af3f8270453618bdb6ea8cfaff24aef1559a64da824b45f3d0629587e0c23733cfd4625f4ad72739ab510d3130230164801d581ab327c69e732537775360139c3374ca95a7c16b6046d0779eb6288ccc1d00a4584641fade3eb5f52e05cb50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023068e0086aae7a08451aaf00028fd08f4dc18fa108be2746dc887c5ee647c99e1bd79d7490b6defb3baa97feb08dfd66fb02304763b8e3710dcacdb9afbaab453f60f18f9a210d59b6009c959a3c2220b203e7c18339b9fd1e2cb50b9eddf05c572b320302047c435bb5006630640230519c3456421db54be2b329f06c37dfa154ce92bae3452e60be349fa325bfb3ae45eabe75215f2aa6cd2aade433413bf702306b6ebd257ded829ab558976f558013ed54cc6385c26cafaf2082570f23566bc985644fa80cbd4136349a6bdde0619bba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bc93efebd302dfda17ec811a2c75a6d8910be5674352d01c0e7acd3e6ed6e21ff30ef44595c143e9a335a335828bd3cc023100976624761a4f427e3ae5147e696f14b689e2387bba769c6c7f6794a64c03178644b556a156c62be2f53c2df503b3de050302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306014474007709c2acbe4bc4e9a55347c69ae9ade7c3f0ec65e489c90fe9799e7cdc4533ad721fd2bd02d31f9e859db5f0230768345a5e7f97b87c35a7a25d336157eb07c83b88f0220d7d7d7195b918025f6ab31da520df7afc2b5ebf4b99c136fc40302047c435bb500673065023100e1e691de646c3afef5bdcca5859ea68adbc49f84e43af00a8b1f9a60070100e3602f6501170478efcb81de0d782c1d1502300a82a55bc072bf5b238a2e5cdc56145d60d5ae26bced62e4354d05727b02c2a0a21b8017be1e813303c79922c28518b80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c7d66c4dd32321421bd6ee4499c546bee1f6c413d753f8a7f585829a92b9ea075fd7999d72c0041ce2b4a1f223b4c92a023100f92ecd5350c79e7f712cfa134e3981e2796334b29e116721b00edfefceaf87c0658e5ad0fd83f671cd14c7d223615caf0302047c435bb500673065023000ad11232316ef80d58c174487e1fdaf5bddbb061d1411386f30cc0974e9c0a7aca075a4001e49e50bf4db7aa1e71081023100e983261ae980dfa2d706a3544a843b62971f3f6dfbd62847325c39ba2dc181675418c6d9455f497d0dc4608d68d30a210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307ab563c775727e55b1a388532ccb0be22b21ea96d400abbd0c593999e2caba73f47b5a16f7a2c99e48dd2ac70f0cfbfc023020bd86dfc4b2640bde373bcd4754cbcca9de30f1340f65c7880cfaef3f2ff8c3627f1afb8e9a0baaed423ea014a0341b0302047c435bb50067306502300374c5f953335a05e0842ad41fcd1ac64c71c024c68a7e0b5f94a9d981ab6512c28c993927bc1f6327cf51d7d1f1a146023100ed3077653b6fd1d69c7f9d3e5e3bc25b7e36809e871c392427ae46025e10870327ea3d50bd07768de716d364c86e646b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300a62133bb138db885d3e41bc8f1c9e57d2749867e80f03d519eca97549af75d38fbb04f3ae67373991c3efecc5b73fa9023100eafcaf0b9666534b6a52e3a311a1ed394073b526bac0c8e963c16f46f3225af9e15a0b5d63a3a9d0452d7d40b46cc4660302047c435bb500673065023100d60909c55c3351c2f469f4f0ae341c4ba0406fd30beb2fa6e6c44ee1935cdbaa7e596ac1343ce9158ef9b8943a1a95f102307713a1d52be122bf94fe75dfc72ea860a97a8bda4555d5d1d1c9c564f0ff40b0caff12fa064f8515d63adaf293c4ad200302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300beaf5c7ea41a98e369e92f7d106f77ea1df42ec2a5dda668ea32db98d18060120292050faa9ff110c9159426b16694e02301236b420f50b5f438c516a24281cf3c3554a759c1758d90c21a972831189922f84c6e5458d1f4332cf8b5cccd850be710302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bd01c0345a33eb2d3a791dd994285ec0a1fe3cc3b5e471d521259061d9ebe0e1a0ebd0928d20067a9ab00008220930f30230471193cd8437a75e8cd2b1bb719f4bf82f4e448eddaac67cd2decdb13450fc1f34798990f123b2fb77fb85b0acc6fd390302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fe639e7b8302d2791377d46db656047b9175525084351743012e7ad9738ac2a8b6c2ca78f8892f7d8e62eee095664f2a02310084be73f85bed0caf076b5a54b7333b387324dcc09a6423f2d8e861192b16bfcbc1b446d4f17261f23cb84f12e32705430302047c435bb500663064023018ff38d866c9aed7c397a3dabb45e4a5f09b17f4288aae9df848f648718251f734e925ffbe7b2ed7a3108aa13b259e8f02305d4ffa596c14c09f461fc3735126d14dc379006d50af3c21322b40a687145ed51089baff90cffe5d356a909d6fea181c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306251601685bd0ef49218352737e5935945e6f8d326683813c15de79d8c78ca01d0fb0f66bda4b6d46bb575322b4a5ecb023100950ad47e307441f18e5598cbd280555b4dcdc2505e0ad1b8808ab2d749917eb79badce5bdba2cd08531b1ccf358968ac0302047c435bb500673065023100a95718762f530858aa507033f195a2d2ad255cd103ccf808b322043f07395e6c7f718b6bfd8ec441ff15f41b069fbec202305ecedb8db3ed2b3ca7df52f69ce5520c97880bb63f43c62110138a089a51061c014d79087acce0cbaf2703bd1cfcb7820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009dc9e2b78a228c47c97b3612970c5b52c590ebe34cdb7c9b5784b7396b01ab4e5ededbda1b3315b8def3305e9f0015330231009425ff791a9520f4932c8b04122eb8cbb9fd645928d2c62c3ffff9de8929dd777d21fec2ca6147537aa8543fe063f2de0302047c435bb500683066023100fdfe25016f49b3aabc4deaaed12b3a655bdd41d8ec7c638d3ec25850cdf5b0b345acce0b052246cca542e26c8590437a023100f45c87cec0fd02dab5d9bd903b80a67c6e41618c5bdb77a772646c905046ba517f1955c7adcde34bca8fe034bd7668660302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100da67c95b8caec759b0c9166260f0e578832da8f4f5783687ac49abb98de3bcd7250da726546441906547343b8e72add10230572f60972a394b40901330a457f9457d45a275ac7fbf0f30617f2d28b2ba9ab839083ff14865313c3f3ef0cca3576a890302047c435bb500673065023100c153f60dac8fe254f3648886dd57a5fa2c2ab1611abecf933fd837bd419dff8921359fd130b42c9b0b5b3a5ef19ab11a0230538cb8fa1bc393e5282ffd5ad1262ddbe33816ca047439d3650103f3a6c16503f02a2a06210463018aba604501725ec10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023022c0358484945b1fdfa653ce2774d7bd0078d06ae33c4afafdfdb9ffc1e37acc18b5298ac6c59e08c6bffe791847f91f02307be14ea92765c949b009dadc8d513f62a59974b24a1b651eafd33dafd26ae83328f8fedec5a9fd865e84d59ed254283b0302047c435bb500673065023100cc94048deca1754918073ae43d4fba8470ce776fef50169a96b0d2e8ff356c00fea9115b5262296909008d347855057a0230316d9e8f45031d55fe416bcf0f6b54a269aa0c7e99ae96d69a24d41f312992a574adb6668be23b8b22239c111eab12190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305dea1136e37397f6f8ddbdc6032b04af15db9236f424f390830193bbd22f65692fc041070cad7e26538f99b8ef9e41c3023100a12c275e1484664d8e9feb8a6ecb0ed17ab314eab2a6853dc4c30091c2541b3be398fc54b64ca36db29eac95444b51460302047c435bb500673065023100d61085c3e945453f34ef20944d388f7ae9267323481f7ce12e9502dce579767d9f1730802ebbe954a720b3c694d62347023019c64c0eb6d11d24421887dc611ccaf3f889c6df098e3c524bb884662651d44465db6f9550fa807d715fef23b3d118740302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ec772fd3a7abfda715de1c92cd08884ef11c1d311d038bdb454b61ddeff24735d79d2d44c435de48ae107470a63a264c02305a3faa4ec8626e10ab87767511cea903a60a22a2c8ea7929b73c95f9fc2b8eac89ac8944b534f4338119f0772a1203f70302047c435bb500663064023067ad1a809133c2a882c44dd6812d3054f77a2669823793570f8788073c15b5ca6c3647a7aefec4796d44040f2b9cc4f8023077e260b78753a2eaf57017e3088bd372490e4c4b1af8517303749b2cf77fcce3a35299f5964afa9de35b8e77a07325af0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fdff107b412c5121d6408fd4bde90176b40aab2b2e6106743f125484e9065c9b1d72db665c0012d56f82cc354ff288bc023007665b5998f132c65433a5d5d0ec849e1cc6818d46efb2edc6720d59dc0ef2f8b75afc7f9caa159b1ab7a3612033c8860302047c435bb50066306402305dd2752b487148bd86c5d9bec574a50fb364bdd7c9b158e268082a2199f3c26bc5aa48949d76ceb1ec9eb76a2ba5dcc402306ba38fad099e46efbd6b5cea1ee1f1638894a3efcccda8ad8c55c2d7fe0514a56f7a64b719a479a6b87402dd7871d93d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e68345af37a8803236191670d3ae3374632edc472f36239eb1cc1a45b203a5d5be639d04d88af77663104680ad1cd4f2023100c1ac5926d91e70ea50823d6cb35eca3d1797be51505177ed39924fba7449b28a2ad4ee7ea41aa476ce2ed4506e69edd20302047c435bb500683066023100e4b4f45e2beccd3c38f006b14495b15556d29b57537842a7e75b78835256ca506d10a4dae04f2a7246a1be034e0546960231009bb70821b7ff1e0b173044b15db2f552a3919523238b294c41f5294b32cdaac8dfe77a0c4a2190ec75df57cdd71ef6560302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023011136a56ccb87c91ce28a25dd7b91140a085cc2fc9d8de4b6a94d02b5d5fe42654c747cafaf357cfaffc30e084991c8e0230417e28b9ddc58c35855216db8b3ad2990b08df52b5da431f7b3731c609441268c88c5aadf9f8b723568a4137d4f81ea60302047c435bb500673065023100940912f249c22521989f968dac49715a04acb0e8985fc16a8c139993ce78a00f8b2c30d93802cff7ab303afab8ec9e6c0230792d498513f3c29cea1702012020fc72a7141d85bd69541ed86704baea20fc3708d8f52e09ae7a2f3da78694e8b5de9b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023064084b92d8c36679535a934086728b3788f67f5271772462521cc7b794b2fa69435fef33b2775274147dc8f03d68f43e0230041f678bf718f0e54853da5b8f4552a148ebca7f2586dade1076e1bed54e19d792752cebe31a9e0e4ac9772a951398c30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023078a50122d4fde4c9cc34644e36b900ba89acd13e53b88c35a58ee56d406b8d579e4d56891a7668222a4ba561de15852102307fa0cf71b84124b21b7198bf301e81a79248bc5104cc292409c77fd36020d0c0e43795ddbd4a278243361a0c3fd5b4d90302047c435bb50067306502305a626249f4fc0a2e6ae557b8cf69506d4efd94bd9f3b89f4367c3b8a7ceee8c61a99a9b40ea5148a165ff8f57828845b023100b2b65768cc60a52c49d4301ee76561a70b4277e5fd37947033d9d4d87d5707ce1ccdede95f4c93aa08d0d615019afa230302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023010653affc2a9e0b9a3fdfae02027453e508529cf4b2be3a7848a8468e45e151e7d4de3d8f6af7b7d29924ce35ab9e6ba023100aff725e638796967883dc68e2ce19786a0b9ae76321c5c591830930838a4aa2889e5036611109775d43a635885dfd63c0302047c435bb50067306502302af2d200585530581085d49c6e1e69af4acf38dc72887cdca780cc61f9a1957e69273fbe97ce836b4061a9359bf694ba02310099293f9ab8c04457474ddb00067b02ee06893ff03e6d34b47b2bc1f3352eda28d59032f772bb9288c69227d0b8db80140302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230214d79bfd78ccf0b9372ee4fe5b0a17bdd62964b17c5551ee79fe87a4417cb99346453f93113ef4b23ddb93f10b0cb4602304c80d77346ec42e92acf772639a20343cab30963daf437c20c56e4664371d4316423bde5894b736d49f5723e2b44e2d10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230663084b8348310216e5a2e04b07fa6a5d15a7451f16bb5d4edf6b3d5521f5f3183bb9377880292e51c391ce35b5bdc990231008f191000a0a67bdd4b5696df039376f6c41c126b1493615b23b805338f72f774153fac49050e23b99208f5506da2917f0302047c435bb500663064023100e69647182700f81584599cbfe003dd7a0c3a410f23f7e93e5e082659e1e2c27b3f950da5ba1a117c4741d4b1972317fb022f50f76de1478f8b32bbdeb22ac17219510d55ff295625cfe5809d90752871ac29134ef5809ad28e55a9aa639e62c4550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310080d6c84f978c0c65ceb07b32572a8f37ad29c08c9df365eb8eb92a63a389ab8dc3e4152c9217f68964b022f7cc87a77402303d515ade9dd2376d07409651978c48a242a09aa23a20df0d8d4a2f5f325f7731f51c89f76f21d091227c81598949d8c80302047c435bb500673065023100d707463a286a2ee63970ae74f005974f51ad41c66f34778948c277810c9d6e18d89c686674c8fd1d5dedb041804b5cf3023070901acc12b68d780f7edfd9c7370325731e57640761a805b90498f50418903266d9f0af1382a4435cf33f7e4b1615a10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dd8eae69b972da81ead8edfc08a1b078f9d893fdb7aa3f1fcb9d98dfdd98fed99496350ac956be35fc451161c08bcaee023100cb8d8becb2005a2d2134da73beca0b5579ad71e5a840352bc7b06f491cb45693cda03013c264cc0d4f05e6f8232ba6e10302047c435bb500663064023061668dcb7886aa7a0a4f22c15d6ad4e73ad4d55a174ba2ec619e1c4e157317f3d1539d0829503500fd91d1f82fc33de60230336852ea98d68d7998acfb37531fbf771f2968796d78a2c7cec85133f5874f0b1c23775d5d2616a69816ef03c6ccfd750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008b2b338376b169429341d487b9df5d8873b9eb0f7018831a1287f3494d6376d8473aaf7fae66daaf88e4c9adf7ac917e02310084410b7aa815e1467f8ead2a90bb3386f546b48b8e1dc49cdfeeb8674adb48386ae3ee847092433ff2559440127633160302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306af9126c8b15ac98f60657e26a3c2f80a7b5764f1536349ed4db95bde3fd673dae0f341f8f80f70a1f8d4bb90362d2fa023100fe01fc3ec64e19a4efe72eb677ef1a6f9bf5f829edc38dfb742c8a2d9accba30c00103b1407dc05aa62f4b8a37f357990302047c435bb500673065023100f016d63526d5853833ee8f716b0311aec2ce1016cd07bad7944df456d723511703f21ed80b4cda55fe977bef50bbbe4c023048f43279e6d089273128ee825d162bceea4b35cc04b3cb0167aedaaea171e1e709bdec1aeb1173b66e33508304f08bbb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023012204483fdc0e19299319a1fa75523335a11ec8afe31023ff99cbf63d1137526d09855ce4ed44bf7f57eacf26119ca8a0230408f439fe58d200f8d4fc4ffe414b696cbc4df7cdaf8e345f05e8ab7e42130c747459dceec9dbaebf1603971e6fd45e30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ab0e6a46bd70a4f1fdb5dab3b6f28ee5a672d1f82a7bdad970dbb0198fa6256c3813000da80f878e1bf44ba307ac41cb023056816965e8c61812c7de5e2231f6531ab7dcecc2a7e684ea663b79eb9535bb8881a2222af749aa22ab5c6f2e008b99140302047c435bb50067306502303920db2acef135c45c98770229d960e6d98a3be58e662eea15869202b659027fbce1bc356a4d28164f41b3fde2a0c1a50231009c64186baeb2c92be6047c0ec69494d7218471ab079a8afea8ee5bffada92a00e6add5671aa9f50a7e1ab5d2a8315a310302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100be0a36b39caf2763dbdcc1cd8c66446a631d75778f4a646c814b928c18ef0f50e8a81167748f65369a271e2cd9198c82023100d4ea296024c3376a39dddbf6de593db6223ea843b9f41a824564fa3f5260c004f5fd6b356590e9ebe03b6db6392861a70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a65a9bf3d603b60367194b175c5906faa0483818ab1f5bbca1562bb044f7a294219e83e0f6e5a9df8361767d4d612366023100dc41e21c79a134e51c08ce564bbc80ddf7ed07cb32802030dfcb2f7620f8e92e2d5483a2c89b205c381e73ba1d8c54280302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e9f8cb0b7a818fb4b460e385644bf00db3750ebcaef8b0128c39917ff73c35c2d0c2950d27d1e8a8b4c0615724fa7501023100fd65ef50b3ddbad6aabfe4f35049f3b0449a4e18c48fd36782fc3582468227e1312ed9aa46fc0cbe3cc980c9515e0e890302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f64649ca50b3d065c690ced08cff57bbc3511bf38cc9622c07fec40ed58073d2ec501fe541c063d59fa9a2918273837302302ef89f7bc8d1cbcc6a738b0b199074ca37b72530b458633a7d37f815cc197a58a9bf6102e9270f6b4a54b8708f6406b20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304a02a4de6f0cf4b82ebfbf7ab2a610434870d2ce612b009b4d68e7c7479080902ab340f5c9a5fa60a6b2356f70a70cf10230293586ea0550080f6855aafdc34d460fac4770a7bfbd3d1dd1903f7ebe65edf48426d63cf5d3931f385acf7aa7282dc50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e317f5a8275b5cd6ec1067f274861349db3c3df8d80ac63f04aadcf72418e3797290a7677f6e3353edaf5636159bc11d023100c21d10a02ba91461cfd41e06df0c2c92a850e0e89ff13f444919e5f961d51e4a6bdbe748a7177c00ece8382525a286480302047c435bb500683066023100f82edf5e6dfc96482a5402cef744390c21bfcf7460c220ebd615f72bfe0f4281f35126e69d7a568cdf5d7eafaf05d123023100897a28d136105761ace12b42c6ffa10159a7144e62fc341ea5c1f53713fa8dfbe8ca633f13cd1e25fc2c97ad07e75ecd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402302236fb0f0e58b2e9f0a6a2e72405259cecddf1ad12af5f80c377501a728f45452b6ff4d7cdf5a4d61e925968a9fcef1a02306454a5e4bc929e8b872e98e00e572cdaaf4561cda0f7116e5bfbf0ef8dcaa19db7d6d1d18c58bacd3136c670ef7f97460302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c0d91fe95ca356ea14a498375df66de29cf927dcd8a3cb233f86798c340f55c5288285d92fbac5b6fd06517f4517056202304679c74a1d994e3ad978e4ec896835abc291e98f340b0f50ec2ba8beadba95fc8131f9f5151518f0bf4c8642b4c36dba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100df16fd6d0bbd532f9cffc4781bf5f6b51b10b2b9fe7f99714203b96324463499527f018f58d914b284b6de1a48f3ee07023100a5279e03e8713ea6313c37e0a05d8fb12c02f7925d03803f47e8cef0a42f479de250414324537c6862e4481acdd453c30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023010e0c26eec7ea2499e5710385302bdef3e985f635c3215c157c3427eb9f7185db39260c3f9e16529815f513b0f97870d023100df469dd91d37621fb9211b14901190e7a60ef7308786b3d8d8ea2c31ecb2cde7be47a309107331bb28c3eb2551577d1c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306fa90a41b4f1d9b2d180ecd804b29eb76f61f27a8922a956e46f21ddff9fe0eaa674900ecce504a96dadca89c7591cac02305a71082506af993aa5b3924ef6c586d8fc9043eb567923c52f03ae7ed9f22346285b85d5300b90c86fd8f188cd09154a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304518a2f9ca384d4b6958b671c81ec6994f104cfe6a6779d6d78a5efb0f281b7a121f0622936632d41f5d82d133dcba15023100f5efb522e30393ed00a44a355ec03b53de2bebe8bbbb562da8f7220b046eeabc327dea28cd2c3a4afd35decae3c523a50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023049d82d991289a5d2f280cf2371e7924f17aaf2523ebf196612d0a83614121b1c90287835615feef65901b8f8684ae2dc023100aead6695d3bb40583b6a4b475337bed2836ee509dad2028c0fec84bd743895f3288b7b5db599561460ed878344d28cc30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304eb1db4c465165f56b41ce9973ea5bc0bab7e9813adfa9bc22034ae7887158495c874e60351feb3c04aa9463c9be92c5023023265f092e7719df97bcfc656e0ba2cadd9e1216e4f654f206e1516809b45308d32253c28f98dab5cdf75713df4404c80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009eac03b95b0b1ac032d3313d528e2973d8a82dad8e7b7229dbc94f77936cde611ed0ab76e01b64f0d145e8f9c291b6e7023100b308c01e060d968267fabdda811ea0ae34172318f818de4c6fd99021623e4d06d3983b3ef3ac607885f6fef749a5882d0302047c435bb500663064023033fb0baf59c30c5d88e64544f854f7eaafe3c5411b6abc368fb22f690105a4fd49bfce44f9b9acc374af1d5fbacaf06d02305cf0e2476cc1ed97feb5fd97efb17a6b895fb7703c3012f53f2952fdf5c641f62907f169207710cac8ef4e634ec87cc60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230773b1f218bfbacf727ca7d56196d839588011f60ac6bff5da60f82c8ac9e2d620df8ae7334f9adb571b0feb2ecace0fd023064a519497d527768025e6078d2e52da6231fc869b578927400b4d0886a5ad7eb406fcdf7cc1f5e10b6908134df3827280302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304824e9bbc61b91ee70266f39eee48701a77da9c8300328e8485f79de5bc637cac43863248f0f30b8e8b48433172f68d5023100abf47cd6d1380d75de938659ebab30580cca12fdebaf634415b1175013e680b9503eea6d9957e0651274dd6da2d513b40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230495b7ac33cee5e820e39ad42d2e24e940b8cacedb22d31fa58665713cf5679aff025103f15bb2be672c36bee5f7856900231008a98e855b5e85a2ad4da90d6b4c56518090c01c5b9b78a69e65bdfd3ae7b2c390c2467dd6b3a3f55b708713c7898e3a60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230068812fe38dd6a01d489355e87140aa3701c7dc05f98934f3b5f7f076d4352988ba51c1478eb62614d77d8686004ec0902303b77e40601f68d3e66fbf000cd60104fd6b3d29486473c899b6d38378e0f147591a6bbd7f4a1f84f861cbd8aba139bb90302047c435bb500673065023100bf8926efe18e993dc8037c86e43c2706ad3606cdab53c2515057cd1ab6ce1e7e89c7812be48687b7b0958a213b06f320023068e46e715946049c42dbd2e21b20fb64a20938c351d1baba24c4ee1ca7a83201a03cffc565c32da57fdf34b6a46a022b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bb21e666e1ae8e655673df484b90efa14aee188882e41f53dfe5d6604ce90b6f808dddcdd375d1fde97e5a426545cc9a023042397bef3b8dde5796a9515cf04003ccdbc51099c1fb85b569542b1c1c84523aee3c90240e843acec2b756a32659cdc90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305bb75a412d5c6534f13fcc07518e119a307803ddb55a14dbfa7f342660ee229aca5deda1573c83304ac8dbf6f24f477402310085361556901a1840e12f18b953e5b60b88b9f925c367fbf1b2d42d79108d5b66eb95d2dabb2b64bbb143794c1da4cb510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b9b336fc295736bc234673c9141fe283dbc4541923ef726ac666efa2ad9fe8c5dbfc8b58f2c71874b881cb408e4950d7023100c798c52e5633e0a9d70670e1fdba0b36c83f340f6595c36eb521030e44c9cab48a43adb9e21346807589c25b548ee2780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f8533dd225038f682cf994b869c0615d90658475e86f478b74dd6add67702d4ef5f9468b0db9b2213c278680c745d590023032bd3d3f660166b647fc79581d0e3cee965b7a9d56a5704e1f7e0a5d09df3f24b7d19cbaa5fea0b8b930c95436093ca10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100eccc64fc4015be55aceedc3950fcc8c45e341faf5eadaff440d4354b59ace2e909bfcda071992d1de83f252c686e2a2f023100d5f0c8b0c061eaadf4cbd46866f4a3e1c98eb87612f4ffb5d400d6d8f3790fe8c3e801d385823615f188c4e96d0b45a20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306b356f91b7f7821d928fb4b6631efe653f59bea6081066683c7a0618545f68c834b07209393c38721b3208ecc49c3294023100c33d1ce96c42d5f0acf14c485ab2f815336f6901012d28aa2e9e3d224ac58d2bd5b5c5f5bbe1895e3f68c3daa1b15add0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305839e72e1b497b643375ffc25eb802cafca3f9dbdb3251980716632ad2d6be4d7a61ff00d75b61f8dd60607edd5509f102300b600fedb02abc017bd102dd88cdbb27cd7ae54a88a99de4889287d73781f8cdc76edcecb2888d264dff04ad3e75acc00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023075c2dc3aa4c8eabebb0730946180168337442f4c4f3a63fc6c1e4f0f03adcedd0033fab2eadc8464440cea7264d4290f02305e6f84d8155ad6bde17a8abd21c39f8f33e1a607ba945a2013249306c0723e04aacc2bcc818567109d3232956d6982f50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fd1ba55d9be71fb967cf6afb8bfcdbac8340849b5c842a3bfe671615ecd3ad5479b2484f3f4937763cf5e36f76d53517023100b1c4f403b5ae811e598b496f8656b00ed9c2de49b2a286bb3d43ff7d71c02c78cc8af6b2f9c1b8f17db9b5dc276e50ef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302cc64ead12dc57615045a372393ff1dea7548ffe0f303f712ecea366457127fea5186686168044f3b436d2f9aa5c315602310086f5ebb7f9fb3b9e8c8d056c96f2b7d976ab09a3adf6a4dc4725b84ba7716e6ece08d0b56444c54a24497ab76316c7170302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306dfae46c8b7d1f5f5df6439912353bda92bc6e823c06c34e6fa953e6c78c951e112f386abb6d15b7f0bd2b0dc3f9b17602310096c28fa50a8797ac217a99d7c8c99ed82368c3020a8fb63839027a786f447bab17a53c2b9727caf25d96ae1be96e682e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307bbe54ec63c519380268ccc738bdf4becb2159108516a9574a63feafa206dbda55079bedaf6c42cc8898715a813731d5023004933de27a64cb006138e3e92cd66c3d3d1d8892bb32210527d4661abc0b8b303a261bd918aa90dff1735ff4a8b1f2310302047c435bb50066306402306ceba51e6bcafe009096a8d7c3ecda3c55cbf5b076135f82d122b9c1293e87a0ea7d1d0c0e59d7489810ed75b581cc1f02306b04c95cc755c4eb927597803ee3466577444c07141c98d4e0a960194c6dbaabf2a01d52ed24b23d9fcb3a3f6aa07b1e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009f7e1d89f1113a0d7340bed561cc792c825715c82cf500ac0d0dc0f832bed02d319271894d34f137bbf7bb1ca6ec5bb002304690b27912bd93af20a8cdc89def2512049247e9c3fc2e27d2594699051602a554e8d78cd7697338ddbde1beb2c7fe5a0302047c435bb500683066023100e59645bb62f5fa6dfe7f576cda826fa43cf0a68ef72acf33096c34c232b1deae7391f7b0b8768887d5ab4b7c60653c37023100fdac4abeb216d914859948e63c157e359a029661a4e95eab5f904ab1a2aeb9bb9f00c1d0de33f20b982893ee1543f1930302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023047c8848c14cccbbac60dc79c40a368ccac8365a81d4b2bb27da32c6549cbd65ab20221591fe1dae9ccd0fd3e3bd4746602310098c1bdfb2c3e84f9fbebb89427b009be4567b2ef373f2283762b0729228671fdc312cc09cc959f32619a9081115ca3c00302047c435bb500663064023024b9c76afddf859c91cec0137bf07ac16b4968cdc2cb1b383552278a3f15ca53bad1db756824277699308542b4a7fb1902307eded4cff6dfddb33dc4d5e856c7a8a617ac859ff212ee210959f366a2c9e8a5dcaf327ad6d0efadd5d231276b02a2f40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009754cf453fdd6986880e8a6ce71c6f40f9726646cab971b4c191c307a76da7b0dcf763020e9514cb3230a81c6093d148023100aa518fb86d920394859d3d142b64cb2b4bd83bae04abe9cbb4ce9f8a7efd5b566268399f79271c3790c2ce9407488b860302047c435bb500663064023009131c2dd2c139c3fba70676b3b7f84a5d41177ccac7955c6eb78741e5c6da0a42a30d52ce9e16e66afe654777e840b90230639baeec3476fa283300243bb26a2ae3482a843c6e6d6565f8d1800f10eccacf401a8a1abbf06f99c283d27cf8261fe70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023074cf997a5fa6da437ff53f4cefb6c489425e2d91a4de6ccf3ac0acd2537da0e9168ec5c6d18c872ab734bf798ae881a1023040846dd09ca055a40d8fca86d4595eac3e6282dde85a09ee052e2df6c45bb1cc193f1c51bc54d5fcb5265a2c4df5715b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310082aa8e01d4404cb64f3a19f51466ae32d4c8d5b2da751ba9d243dd3c20b06339eec5d5d6b182e79cc3f718f7d20ddde4023100c682e607fb3bd01831fbbf825544f6bf9befb24cdb74f85e238e2087e52a7d1658f973abb767e62f5690b168914800bd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b37e25eb5a831c47abae972cd514cffe7a37013110718f82eced8540cc2eb4cd008c399e422165025bdefb0640a750d9023100917f59e3a4d3c400da800dbdc072afb93b69ccf5c0c60628c4a4fdadba01770d19b2d0b5f61b93d27360d56001be0d8f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e36bd6d240a65b6b1cd9e0e454707639ee9f63e7c44d9671b3321d7169a5d5eae72013db62d4f78eac5d58dff41c132c02303e55aa9217fd48d1637ab43ed0b2be774a63564997499b594342d6692e6ccbb4610aac094d94395730b36dab25faa23f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300e0fc7fc89b9fa4db82becc2a3038a3b22201681285699df172aafe978a0c8c501933e85bbddeade349ca9b4fb38e4d9023100a0094f0ca76c7de6767091dd37b292befbb28f3530b74c055ac5ae1ff30a125d3b4b91f7bbf7297cf4cfe5e44f8838c90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a26b9de82eb7fa53326e175d70dffcd9cc23a51a7f103fab22d9dd5839d175398522b1d314ee6af6022b2dbd0c0f3731023100900788175b4c85670fa57e5f9637ef7b03b0cbc3fe6601d9746d37841685467efc962ecb818412696c3795d30e78ffca0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301ed3a41fcf33c76db1227de78bb2180729937b07c5033289a752e37fbe4259692de3cbae4800d6d306ca91b5379bd314023036d421bd4f5413080c3666ede1b7805f494e942c73684cf9ed50eac83f88dc7b8173145fcd591e439037239f96b63aaf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304ffae47f3623cdbebc378eef145a936edf54449cc6a2407f8c355f494cf1fca5b99c72527fe41ebfb6f81c2a026cf19e02304bdf956b20e786ba061c47eabb3b98ddb04cef03bdfc54419463e13901a276eda2371f1bf3be0302182f7ab576bfe0e90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303337d87836a1435bb3775a971e78619f9a1d04381a2cafa7b8234d95b6983889f016cbc400b70ca45418af5ded9344cc02303adbffe14a2f4c8e110aba3dd9c02c9fa5b19d90e57c8b933d40d29f1d04bdff8efe817e7a723fb3874e915043bc08570302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100baf03a7d14ff39ff4ff63929fb53f49a238e50407c55b4c53098d9faabc25f42e6fb89c32adc33f457e81e2bf1d1be1c02305f340a71c980ac15038f7e8390b5fe7fbb142ca55e96ffe196ea3f3b1956a0048e60566acb2ee0de592a3385b4b58df10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300e91584908839da17fe1869102d3fc4d63915975baf325539da3fe92fd37c22e3d475438079b461e296c0320608a101a0231009b8e813ec181fed412b2baf1e4e626536164652c4bca62772acd623e97a164e9ab87d32b7135fc67a691bbb8000873580302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009c60d0626e59d8fb4766c356f3b823e74f983ce969480c59619839f1e0730c896af3ca2569f84d9d567c798c9509731802306ae194b5e0ce7a3ac832aa267f2730f8837a7efea2dafab1363fcf1bf5db2e465df987eb6c9407f2bd47886ff59d97460302047c435bb50067306502310083dbdedff2c8520354137e00731bc7182bf8dd246cc90f664948bd8a53ea52abf253b48aeb19b94263b4ad912e2f1430023053f22abfd4027af553ef9971eda791e90ee644becd2ef56566c5222e8b3b5159476856f0a31cfb99639df4bc4fde19e80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500653063023026bde931c35c0088c96a887d0db14631db0cbcbdcd9ecb08b683440283f7375bc6469383790a528d1abbbff5125fe18e022f71f6d9e783c031cf6c8e6a2dc58cda6dec179ede761e69db2af689fe72606e7042dd09965736eee17ce1197ea65da70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300f9f2eef66dd24f95719c872b56b11c16699abc00b3e285b24de9b031f5282eeb88b9beae9f720771f2657cdcba0a69e02301000e405b69f49e46f7aafa8adc8f77d7064951ce2cf304f9f95f3159152c8cf1d31f3b5e915afa33ee846c303e681700302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301f2c213379bd3b7670016c332ab99d6fa93676470f1c3248eadc8491efc48c4cf642db2fe563451a1654caf26c2a7395023100f93046019e9b70413593f410a99774886d663a78537c82c8cdbd94cc56398299d8d033fe0d464a915d88531f1810668a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b0ede6e275b4bcd91b8b5aa3298b91c7dfd6d31e16f40953c6bb68891ee7ecdea3bbd0c7d10504135ee72555f4e3e5ff023050977a2dc59a3a09ec221daf027963f247d06763cb13336297684497db7142c17b2054154ce45ca3a8f88a17626235ea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300768015b0b1f4e9b500b0a4c18496cbfd5c2422dadd08413f6751538b0b6de2b33451eee4f178c54e15fc56689b139c9023100a31d0fccef701f0ad560a7fa6a5b760b380f6d5c85373736b5bde328ddce74b43b295aa3e7bae6cf96f36cb5937f58010302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f1cf91c77f58b759520b88595fdff974db2d66dd78c62e84ecc3e5c465160aae8eacb8e0117970504ef7831122332c5202307a104848da5f8924134a8e009b22bcb2c4c16d364edd858a1d13d95edf43a5ad9b1bc8d0ae801f28384f53360c86c4d90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023020b32463d04efeaf0f962e400c74e246e770221d50d7852e03d73d10e86709b63e1f8cf07886df0ea182d8cc523dfd9702300ecbe3efe0d2190bf0489b424ba3971bb25da3f96fa0bb891528ef0002fd132ffb226f02bf5613d73a0151cf8d34df500302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c67fb57df029bb8bf980d62e715ba380646764463168ebf8b2da645e815f1079f31581f1dfa9003545eb2ac4f1da0a0f0231008296fe868a822d67dd9d718e5ec1759021d8cc1b0dab6e5b2b6f83fab0e030ebf216d1cef210eccd2fa8039635f146570302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f0a7b9a52e86a21d7d1214bd13fe0990e72c9b3bfbe1eabca2a6ce7259ecc80e9db65e1291828ed37edd187d90ca94be0231008e60a0b5232f60bbeef20fdc49c9323b6bbd0194714ba1b23a43ee0ec797566cdb1dd3eac5906be0d8934e99b3aa81f10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306e6a5479ebcd55864171b6c2cecfc5463a09118d7e693e1c59d79cb54b9de504c3b17d2ac03a6e6b553c60a34fa2a67f023037fa88013991ad5a6e175dbca4924fe8a7b2566d3e7e6e463f8ed4acc9f4eb4da7fbb2e96e8c131c9264b15f2faf8a190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230450f4024966a85660e339f3dc77ac1a0c1d833f10aeb432f4dc17f0a955efffc0235a8ef2d37ca3b0a93a2d9e9040a2c02301e2cc6106dc9b395af5076c6cd40efea4bfdfd6ae5eefc1b490e093c84213ec2557a5eba050ecb7f6dc681a526d91a450302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303ee2e0b820f7a93cb72ed3e7c8ac7c3e28453b4365d68e00b762a42be21c520b06dfa0da0531f3873a9490d60b204047023100cb4b5922dabfad8972ac2fe9639dd78c0faa4541597810004f3f360ed86efe7cc3438f236ba7af177c6344f367470ec80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306e1a3e9aa8e5e8d92289940926e2c8756113e6ad9dccf2a5fdc4fa04e74b3ae4a89af9427dd6ec6a8e9a641b30454f2c023100b00a99d02757f9c7ab873330f8ba72697c5f4d4c4e87e47a441b9f98ebfd3b08e1556d7c3d0471d186129fb2bcfe69820302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306e8d8a6ab92e3b6b1cdcdce04931846c14adf35ef4c4bf38dcec9a21d4ff05850d2c269368044ff05eb908557341e88a02300afbdba5a1449f0990d4b2156111de5678aeae6019168efcebd91cfe18d88ad1fd3fb0f1ae5c2c712bfdec8bb9846f810302047c435bb500673065023069f7dec213b6df8214642cdc5b6f8f35095243495d810ac6c06f54d8d0519fd338149ae40ab287c53f78b21381405783023100aa71a2034af30e360246d8b749f068d9571386bb2e0849acc3a051b2e6122da9f117e307795d0d879326dbaaf511bbc10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307665c79f166cee82df5019d7438998acbbfa3f8663142fb0243fe1aaaf79ca4b2c84c8f6f752cb898476def46386a1e3023100d11510ff12da7db37c47db67ecd25ddd066bdff2457cb78bc18e9859bdbd3a093a22efe8cb1f546d51b9af638148cd630302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301389a44f366c03dedf20fe7d925266b4853a0ec5ebf387188eebd0426bda0bba8897ff89e9caefbde6ed2e9178b786d80230593668e56ac2b78ade223547ad8f6d821bb93b5dd9c23ed3fab1eddae7ba219204ff56f8005f3d67f419b14f6a72bc690302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310099ac7f7fe77955b1737309f3738d600f695b878f6eec09b5af48d26594c27384e60debba2ae0e94a94fe1892c8b6c290023065f7b01b5d5b7a6b9abf9fdc7000f4fd8efd2c258d91611b52de05bb9fa03121b9555b1855db36b36208bda4afabe3ac0302047c435bb500683066023100b5abd59fb07dd4f63e610468c8a95d6fc04f4c37810591930388586e4090bdf06e7132ff0950dbb6b01d6f4620100ae8023100d834c8f1bd91c8698916a1dfe48823f19ff0e86c8e847fda478f0364b355b5a95cb2d89a9d2718ca8fb27fce035c32390302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fdde144e5c40afea3b75f379bdda247f2162dfb638c0eb899e7f796117a019016a100d39717afc4adb0304c4872629e1023100d82834bee0aae78a0477b7d2b8e6cc10f87df6ce7221a631f36ff2a742c7f4a95037c7b77c038f30c46996c28cded2990302047c435bb5006730650231009c46e1cc02f295ff83652ba377345166009d3da1274d3317019d71d7ab73473d0a6f1717552685a695f8d1e7b40b4572023074a33a72134c3d48ed93920633a076ada025e0057fec57e36fc98ce7b5179e33d5c809b2722fb98c838f823bc71bec610302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100990003fd1ca7099fe15d5f0cb164f5c7863bf1dc6583908440d0918b458a7aa5d62c032baf0578ae30cd414b104579d6023100e1c4de8d87218ac2d8c8221b8917fd515c6e5949a7412ef5bad390cf34058add326a7166b0fd6c6c41b6db87146f3e870302047c435bb500673065023025931bb643b1f1feec73997a2bba5ce664aaf59a7d1241b2575448f835dda27d6f530493315209fa3d3869db77d500d5023100ddb1cbb0e06e6d878b63fab76981ff2f82ebbdefad44ba892f4471cd239f37845dc3a90edd984e10781b219d1f9d5dc00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230501186f6c69701d6ead75adc863d6e0d1ad615a8ecfc76f335e97ae436a8f6627209628d79d765f6bc59c5a40f7920ef0231008b4445f0158cfdca59fcc6e5c5dfd00317425c269001613a402f01776a0097ef715153f80c12681941eafcf376caea190302047c435bb50067306502305941d1d2770c50ce631a491e3ea00dac5091454aacd44c6123f98894bfda052cb51e1ee88f8a65655cc445d4c8331759023100b5c2a5ff7e009435e832deb4730a033abac1afbdd73590d179b74c7845df8b10e6a1e9d5ce5c27502b35d474674e9c210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100eea3693c7edde8d5747f435199ea6840c6fe5b50953d195e2d1693cea59228e6d7d27ea085d4e0b32f52eac3fcb41b29023100d0a77bad66f09304fc8bb693bc4976912583a6a0d4eea788897a2ae77c6dbab2e12876867b1d167d4c902b8c80f24a820302047c435bb500663064023065cb51cce2549c30eb114eefe215d60487b9e62d1495eda3a0b799ec23a4e384fd98d43f1b56e26ae35fe6711494a162023052364898216c582685a5a8f9927d97e41835330d02d9e74474f1db13cd40939e8ba029299666025f38630e5f2fbddfa40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100bfde31ec2c665e96c4260cf0ef250cd2351777a257e233ebc2353eb030c2249f6335d8de113e9c603e7cb0fba56d2dcc02301efc23d0b2767dea3aa44df6598f127df27938fbf3be92e72060d40e979ed87a6e691753f560b9cbd43e0c1d0205be8a0302047c435bb5006630640230544065c0d76494acb62bebda571c6a92891a440a04135d5a81dce9ac8b5c6a33359e6149da4a996dc495b7762a2736a302302c1b64b263870832efcbd12765813cf87e5a020b15e351e46478207f8a5b0e9e71cb15258f11468d7696c80c1ef2a39d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230550dc93b74911b6d9c132fc745d657c832f33e7d29480043851c3d4f6f36a768fb1f95e57472a561f26e538d413fcc4a02300de3a3f1232875b6b96de208e947b6d9e9cbd8a3478f2a10785fc3b490b0354fb085d3ae88f26c40487a6503203e97780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ef98308fecf9812661b47592baf5c512b313b45082a84ed36412c16456b9da5f44a62c13768137df17718175725c90c40230127ca62a61df3c1fcd8b5e3cf7913309e8a20fb9a155d95607d02cea66365fafd2c259ec48d0227b0cf62c4469bd6a6b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306f9d17b361f5882877227f04a730a55be2f460bdb4c461d1fe599cb29b2aba4277fc81723bc1d04995ccec69e16ba2eb023070149bbb52b5145f38538da9bd39557877874e5512b260067e877068ad245687e8ef1d939a16ca5a350aff1edbfd3b940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e24e8d5cec12aeb0773e2b39aecc44a6698c8d71d72e84693d1c7ee4df4c7d79c02ccfdc67161f52d410536cc4ad081b023100de001501f1e19b2d6194be91d30b4aaba1c09f68d7d87c20203c02a8f5d148b69003a09c24a7daefc6e1b68c7a5a2e930302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a2b201914d7e99ca2de3a4091271396c431633724e320094011e269adc1fff414c7e86516f7da324ac44a79bb6d5b78d023020a9919329669c1b02c2406819c6d59078cfb09d313ab42ae656ed089b0184565da812f371caff1addc615431093c11a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305c572d677bc21cdf264c9ae727067d0d7a86efe24864a00755265e91a87143cacd2041140bc31d96cf3d2bd03c776f2d023100aca9d77f3e552032491926a219a30e48e1260c4020a437375fe46b3accfac0a22d40d3b69c8aaab6d7fd6cfdc8c714ab0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023061e9605b757052601277f3c754b04a5ed2f1af2449c8676703092e1c7ca790394de8a6f8dd524247f19ee4d635290d7c02301750ae3b2060bd5aeccbb14004432736b7973272c53a69406e063e770f9afa661f0008dada6d19e04fef003a855a63d90302047c435bb5006730650230714ea4a4386a54d297440356ec9a6d5790e529f1ca1d2531735ddd87a32805c38f0710da8ee3f7d7da4ee673a69d3e73023100fcb599333cebc365e3d46998975181a3ec40ff7c73420e035602858190e2327ec2be493bb2603ecabcff6ceaa6fb1bb70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100af40ba7f55c21755da6f6814d71010fb3535281aa4e13e247ed3c7147948a718f75f1e9938e2c864556911ae64030dad023100cb58b2f19208d8a9d5d331009b3ff5750c557a1e4b743ecb1741f33fab2f93c4abc414a1ef7007e362f9e9510052f7660302047c435bb50066306402306b9e9707cbb13f622eb8aa045c46d57fe46942f35677ae9843441f5517f2863af715d901e561b8626c5e5e4f8ad383c1023034a34a2c35012507b13d597900b84f4055cc6874ea16fa166cbfaceaf4caee17f29f6ba9d1b97cc0513e450118a2106e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023040f158b8e14912f23b70943789b8fdc1969cee93bcaa344a8fd6de85d560ceee7fcb65cf916c5ef39d8651b56712568a0230248e2780c75db7a1a4be04a7bbc7992fb9bf95c3fe0d1837ba59ca4fa46e14cf683a0db774d8223ac4178c9a03a8917b0302047c435bb500673065023100a31c20ee4bbb555427b523636f61cb4f166af6705826e5640ecb8939fda88be2e7a29c72e9b660ee7a0fe7371968f5e3023039719d67682aac5952ad10a1776946b5442c5588b30a55d7f75d07a54ad6e5dd018d9c0d67ba3097061d495a829001880302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310093c98228f7d36790ffbd9fc72613f8d021e56ccb9b00818d6a0d61796ef6f7c25678c23fbaf4562e5036c4e4203c358502300c71f19ecdc17072c3f25fcc79c6372692f739ba868af01dcb1de847915d4c862bbf86162972809de10befb694ee6e560302047c435bb500673065023100fc7844f509ed8958c59ee6ed1625f478c6f3febed35d09b1f1e2b1e5cae6bff49442f3a66b92b32d2166ee597614a96f023023e94325491ae07fb15dd4373bbd05480a4f551b96f1d2c21236ba39f825fb90fff150a752c559cce43d9d6b16e3ff640302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307f8e7bfc8d64baee4be15e249c5cfcbd9791dd69756acc1e9ad2c1ab24e4ed02f084175052f90d140b14974bd9fba24d023100ca8d522b60864e0a1f10028769283ebf341cf36e9cb6db600c3516b6098a422b782f93d0d7610492609f72fa3c4fe5cf0302047c435bb500673065023100b4b8dab34c555eee669fd1e28659a174e6c084eee552d9c0720b981a0a935b6c5976c91f1132e8573f0f2a39f9971ea002303c14ec14efc693ed1f9387d1b569d272170046b0c346f0f685e9188a94d6eda45b7f395a4f8ce6fa2dca088a35b8430c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310090c51e68c7827c4b95dc0c3123ef6a96cabfc36307556f8eacc5fbed2408be1c5a2572cbe45f9bad06426c0b2102045f023100950bfeb440355441c38f0037488252001d7b7bbe97a0c6362ac2baecc662a37feb38cae364e8c5a6db918c299fd998110302047c435bb500673065023100ea92361a31ebe21b21b1aeefb33c180625c18e4f68b221c4aa9c2641c90e572875318a3ccfe129be5756a28c5155213f02303fdbbf8dc78e1746d6f03685ed609a8e1a2b5bef98632ca80d395eeef5224ee61da5c862d07e82d6f0ed05a983ac87360302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fa50210d94a96157809b7d464d6c1f2ecf8a8c9df89f7df457ec24d45f8c17fa3d20e3fa35f8b7b5abfb1d97abc84f4f023100893ddba15ac03169a3c9ad50e50139b0b4b1c8467ac40a0092f88e56fce071e1d273735a49aa540c0d9bc45c76100f2b0302047c435bb500683066023100eaa2c0efeb3ebb307db8258d48d2f7fd025985aecbe607cafb241d4f67f9d464ebd2da1b91770ac602095533919d50ce023100f8355e2248b432d600adb7775616bff18531bc6f7bf85d5a03c2fe769d6f8e4371805c5bcc42b7cad9f6c4645ed3cb0a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dcf96e603583570415498194a1e4dc5f253958c0726aea5055e07a44e334ac437c7e1b21bcd0d8db7e1d4a000b48e67902307431f783b78ff6d1c03b4c6fc34b017d78893edcb3380ce127bc7a7feb3272c9df4c6a689f3abe9b1fd59db86108c4fe0302047c435bb50066306402307ee4004595b6de82460aeb26bf0cc7dbf0b4419f8d5510b43e32c84e5f22e61c66a02f4287c878f0341ff2174ef39dae02307e31e9f732e59103f93c6426bafabf2ccaa1b0709f51b3116b526a68a963a02ed97eb81c7ef56f4a3e14bc08033e18bc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023015e0ddb25118e9822954418d7f1a6441c7cd4ea22d80e40d23c017b43ae55fcf0801d2c118bf0af7f88e543bc811626a023005c57ebe6f07bfb0d3aa3130604fc9d318c694fca7ffb7b65fb0132b0415b20625de8a7027e6e2590ae1c679d1e426540302047c435bb50067306502302be70bd48f9bc458bf47d2c185f21bb0557704f155a9cc506ec9dc4ac16e518bd0c8e903c14cab6b50c086b092690439023100b44986f395780b57bd17bb4ca44589f07a71e53efec8c61bb4bf85433f4c19d2f69174a493ca7b0bccdc893b0cbdd4b80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306f078bbc7c32fe7a45f6396e938810b6315b9612faf20a78925fe28b00b853da453041852dd59e31c795be23eee33912023100c263f42627a80aa327fcdfdc96fc729eae67cbd17294c5c2732eded7ec138edb0e9e79aaa52367e6d645300c8e3c1cf30302047c435bb500683066023100c2c7dac47ab4f007100644e21f858634b13d4fca01ecc67a1fb1d20a53cbbb4e2e243534add3c20d2415d9980ac088b4023100b0abe9b3c65d0c06c8b771650daff98ac76887eadbfd9f11e239bcf1be43c3c977eea5fd8dafe53e496b5eaeac81d9490302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c2a05f9dbcbe0e02452c78234d3f94315564856ac37311a904e246f01271ba911184996e7c86a19a1840f12786d982bd023048e81552c1303e574352e0a5e7a8ea043ebbd2e4f87d58c6e6951945443f54f1b556cf1bad5105ea41232fed8a2f98040302047c435bb500673065023100b7aa5419d3bd989b410fa3a3d15efaa28be37690c943e4a5cdaaad34effeae8ef5dec5ce3671ce8fb92413cd32d9f3d7023030e5d6b9aa9c6c31d997471f09396ee9505c4d9dd43cafdd34cf186821631bfc7f83eaa506f4c49922d13d81256a90970302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a37038e217912b310018f7f9a4079d0ca892e76264ea3fec1e1878cf7af4e9089cf163d7aaaf7a0eeed15b551903741e02310093b363333494472a4187d598461c83c4f8118bcecefc428feb26613358320784ab63a3160fda47134ba383453dbec07b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230737947cfd657caf7a0c1d181c24558f40c1fbc34c5c0a4bd80839ba8e57304ef06fee1b2c022e27b5a867ca04710c79f0230165d8dcc83f7014f6870b50594283f392eb99099f373cede5223260d177372794ec61c48f6f8ea2b8687b70ddb9cde330302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009ae8a4703bf9ca2004cab7f76e7acf11bda4b95b5a5f31f49b07973a8feb46372549c6a0aa0eb9f592fbca5fd7ee61c70230143b001f0b3574df70247ec92a251fafd6873c5a4090224c02adaf7a265ef74afc5a72285f7a03edb417dc263a62a4880302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023075642d57d6b51e8e96851003d3d6efa32c1b9b3a85678b6c7372226a4e020ff72672001bff966475eb8f9d1088eb360b023100b39e9c9c57fb515cad5f3000ee61f461498806a062c81d62aef2161f0cf1390f4e8e54d35a71688df70027503ebefa9f0302047c435bb500673065023069bbb6581ed1df380cef3c701c8cdb9eedf6af130dc8f4d53e2b24c621821ee4fdaed4b78bc30302726ad990ad51db5a023100aecd17d32af0e17e15b65638930b5c8030c659ea8692a5019ccb90589b6fb59c3aad4bc9e6bb3533cb3429b5438219210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230038ebdf5da30b778fceceb2df73c73f80839b996acc41079e66c0b92cedceeac70722af6915030cd8321fbeb46767dc7023100c3b90db8931e627d0f2f51a3f67d673d512b84f6b0103f9b83b4a69665b0cc754cd67edde02aded94749a337f0e414cd0302047c435bb500683066023100cfe52730c4047855818ec829db9959749b9710f30c36404352ead7ec5f51e743097f279a93c169944f96a60d7c533bde023100bb1622a5583cc81da59ff171214d94f3ec03e160911620def7e7a51fff023de5482ab64e538136aac4a654e3de569c470302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023064f0cde81e0e50b176e764c93ff68eac3e377787793ce682ae1e642e1219a3fe75d233dfc836ac86c22d2e6945216be30230329760740d39319c27ea79f5f30580445baac520f2c9b654758799f37110e0334d8e630ba61ef5827cf82d6f337a01d60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b0e4d457947aef8e4c2a2f77a7d577afe82a8af735084c842750989fae2a36d202505db3aff2acebb45621875525c85d023010f2422c2387195e8be30be5488bf0c837ece0eb66359c6d32cb24c1ea3baa7488bff2d1e90f4e9d840650fe16e98fef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305c855ed88d8b7e172964a67b72692b8a2076f88adbe3da046120d2c4a6e3dac3c6d8987d773e3c3e1f4fbee09c80f28c023100df289d8da13a087703c6de7e1c7cac23bb07ea4773484dfb65f5c2695dfd5dd751b6f6deddfca51e7d59af6ff8b8766f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301e7651911eee9edd132981006c2d649ae42dbd3bf68e8af591ad8fc79edce8403b4a7190ea2b6022d790e5bc3e81d3760230734b3903c990ec10e1dfa7984e942e3e54f17f63f49dd5095799b1f2bec4a58c98651315f513e02e797cae7334e9d1730302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023005e277f5b4df65b75888640c2b6c7a95a1c18bca21d4f051121ffc2223183d3c9a32cf1405731a6a9e357aa22fd5ffd902304b3c325b3b412e12480c8458459374acbd523926df84903133e6e88240edac11d236c46b77cd95ca30f769ab0f28c9e70302047c435bb500663064023009008267357983ffc52ba6ed551bcf3eeeb93c26461d2489d2622aefa3fed9794c93681962da98db73af799738d766d7023009788136a024887b88cb58aa77afa46f17fadf75771d3cfe98577d9544d6d54ddf53ea8c6b8b26094bb9debac1d9b2e00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300bf8555c6eeccdcbe00f566dd555f104c1bb8236df3b1d3269380bbe850a50837cb4136fbaf8aff2f9fd35db9088a6dc023059e5ca3b1af4fb92f3be76808d4a7cd4edb78cb080090a15fd15ec0a083d7ab3ce1c6ba2d458e71a00b62bc33135633c0302047c435bb500673065023040d8ed6ac05df5676ec4f2d0b7c20f4474977b94753337b68be2fb2d07958d2585569f85237b93d6521241b5b32e262102310093b68cfc6a7aacf9f45cb336486733302298d59c9b250a896bbc316acdd87a0a4d0e8413797a28b1d4f4fc8b2ddfe6cd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fa247c1453c35fba9dc502b58809c7ec265b3ae9d204a1a1b728d55d2497d1de3092cb4f0dac835da58fdbc6d13880f5023100d35da5a7c48cb92c914353e30d24346c9f87375925f67ed9233db9ff74bcbcf864652efdf9eb0d4e6cae1088f8ebf6580302047c435bb500663064023050e5bac0af86b71c5625be8f0b189e58a64622bd16471bcb287779a379e5e511c43d0af888a4b73094e5dcc6d42090910230655621b56b043d9605d0a5cd04ed3fb7041449b53e728cd91c1d43aaa9073e4fd75021400c2406610e3ef6c909369dd00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230413fc06875425e8af6a11171ac7839c83adb4b61583ca4a2bfbfbf16fa2885e9a050860436bdb1972a9ee55ca2b1d7fe023100f5dc9d9c0af3f8512336617b66d2fffbfeb7d1c8ad1d2d5c3df785f91033f609f13d9d8e33ab8620f01946ad64e185c70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307cb0087d31995ea74b530109c5cb4cd663707dcab1f9d12396368a42e538573aa958dc8d4869c6a22fd9ace365d4e99102305b9c7991dedd03fd251afbe6ab271bf2c5c25abcf375a6eda72f4507b3ad45eba88edb7178a4e29efce20d338d09d6190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307314a31fcd275f6d624b23b43b790c47f4b22532ffa90e6c718ea5964b46c9499962c66d3fba14b2ad067e5b5aca18f80231008cc5af4df770a79b8923b333af598687481aa701578f5d0d341a3aaa92934b59421c80adc32702dea140ac8e9e223c540302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502300be47e0dd6031ee6a7c66b5d3344cbe4521f5ebf683897f03074ee7c3785348a0bda4eaf6ffde0ed9adc647e7f4ef356023100831ecdcc1f0275c4f031ae6a63232aadeddae4927cdb2f66cc6f694746a2eb8bdceff13304f75a3acf2f55e5886457d40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230658c1c0f9010d01a91c1cd682a49410e8dfbb080c028edb20815d0c29d37cd77797a12a1de67fef498e8c93042e9e56e02310081d9addb4defaa2004228ddb9fe5cd3ac4dbdbb8a8dab7c0fea05fe5ef9dfd4b18110dec43834aa78522f99e18a89da70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008c8c20eac77f2236aae11a6890e761716c106edf3e9e122735225883cd4fdf8c067a320a27eb3769b4e0062098597592023040ef55b77c856313877fe521b8a2e5a0122b17af80849a52a9378b13ea430ecf0d20e6b01cd1cf252658cd1c41a973ba0302047c435bb500663064023048740899d73b47be2567faa7c18c0bea86e1df985550a2d1731929675b08d3c3fd8d904eeb573238ef35983440d775f60230250c333593431a12e2c165ffe77f1cc726632b3d718ce455a96e003aa9bfb9782120cce5ad95fc528546d40cfc6fde640302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023020515876040d1f0b8829e832d632e8b68fa52888d31da6f29cbf7c33b79eaddc2b99331b92f8f6f483bf7ee85c486d27023100d6b5999528e46acdcec69f5b0ad4572a8259be02a0cff8e1f74e339942f40adccd38379bd8b6c05a9c3fec9ea39587b60302047c435bb500673065023100c55f6c28725bcd1ca4e358486cbcd4ce9f3d640e52856e6aa2946cd204169bae8100d5e951e0f621da8c81089e59e41c02307d09f878402f71ce97334a0e67aab95ce84d1b1d87437c79241b2bb161053a5908d6d2997c2762e4e726221a4dc2573a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008ab8cab196ba956a0776f1a185d463700a991f7d8a19dad80fe4090d496c43c4d3cbd1afcaf4bdae94ab2b0cdddd99d50231008c42a9bdc17eb312d395fe23d8c09bae82177c43ef2518c3133119ed6fcaed5e6af26dc7347fccd7561b5064a8ed18070302047c435bb500653063022f24fd3047f7ee885a5015415708361efd86a37e9fc482cc0e9ea3928e4c16f4458bc4ac32a27f1e8e6315b3c72d8f0702302c428dba38c96c81cf895c2b5f4a92af625f82a98bb03af12bdbae15c252ffd8c9afe34bf20c691d2e1b33957acdbdeb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f78a05f2f5ff469cdb2ae4b42edc05d81e70fee41bbead97b02eadd9448d1b2781df7d8fc063932b8f212afdb94b87b9023100f60fc46dfacc46122635351cbd025759f3e8bbc25736c089dbbae23a3a204234e594ab7f30c24338f42bb803151601150302047c435bb500673065023020b9a99211b8b864ebb1cfe33fdc12d2bbdfccbee0c6fef592fb1fa452772bfd80906f847d0aca9d85a2e431c69b3cf8023100afb3d583110e83fd3f44314c157461741a9d8595e41c53920c7b225093d8de7929872ba437464f16226bec3d559d756f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100edb6a9be4fedcbbd95de36c32c9c517016c89828fecf02d5fbd08effb79df6b9fe5568b8959c760a44276e6cfc43f2c202304e291dfaf205df9dccdc03c4840792c00ffc44f013bd7c470e865413db85708799dc7d8aeb622a225b683a72aa118c7e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023010741cb3169e79bcc40f5982c96f774afaf774616552044f449fa8f835b3e4398a383e5d21f40997bb4e4e93145ae0ea0230412402b02efb217771e6e16cef6826b434ee8158d926a0042afd636316f563c290c4d3a49242507e8aa157c5050c186d0302047c435bb500683066023100881fd1542e4341b3a670dca51e69921105edc63e87b98464fdf976e43e26f7ffc52b519c73342237977bff6f5837b3b9023100de59acdbd4c9ad7101c02e6443fb9114fc32406be7310a4f0a70d6460109e289df7c151576ed654b72733e6db7771d100302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302b33bf816b5fc992fb065bdf5708a46dc42e70804908016de2ede0923de8adbc69055b9fc67d169f0f85ba0c6f5a4166023100e9b443c435c3e11f88736041b04cf6870c3c05bc29aed3f9b58f630d875cf55d15823b2149a17064cf7dd2787cc426eb0302047c435bb50066306402306050f843c02c45cf279d70f1f7dfebf1655505b5540b628a186e39d85fa3d27baf6b4ef3142e7a4336d8f158cc8640770230173a6d5004c17691a034ad73d66af85e681b767984f3e04bf6878090c6cc204ece6206d8ad503423658785839838bcaa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305528a53db9379af6bb83a6199df54730ff6901a5cdb81ded2f2f753dbd7fe3495b5459f537b106067f07afd8ecb3daf702303fd5cdea10fe94acbad122e2bd89ba2ea3eb169d70810e405fe5f6a042bc63ad92c8547768c84a65e2bee21302c4a7bf0302047c435bb50067306502310098febfeb075d2436c5d8bb8f07ffe07ea5dc02be402dbe81c4acc06fa20da87ecb25dc83a3658d4189ecbc96b8a11ecd02300e78141776554159e24067295792821100988e83e12bae6f3fd64a8d64eef3e0ab73a21f1b40da9aceb1ee3dec9614de0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306a6ddfb70a0cb22c8a7254f17998afebe42b0ab0155cbd10cf9c6363908ee9f4440a281e8b17dcd19b409dbd46cb52d20230711205869ec2cdb4d778c51f36c63bc96518297a4a83e54d08f39cf48ab8a0ad21a7fab88d8f36caa34214356fc26c090302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402301e72920f3803f44c92402581843a76084ffdf80bdd38b768e4ccc34d95c945135c7827fb92c2bebf90a16e137364a8560230341923db00ddb1709f9aaf48dc07409ed2a3886cbd55707d81ec8f046fbcedae6a92042243035c02ddbd504abe3732260302047c435bb5006730650230047d5fc47e68bc840e422a7aee9141808e1ef3d049a21f3b394d7fcb0c0b3d64e8b66980a2bbbbc132470f0f81a5435f023100e53e0cd11fe7aa3cb76a6292f0209a080058cb93db2c8543c51240032ded49d58af9b25d00f86d8c6b761632d8c8799b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a492f6d5fa2de270b87933e9f70b15bfbd9f71995e41675c0cdb1423aab9f974b297d45669e24bde62bf4a4ad81a52990231008ed050b894bc2a0c0df7b8a1fb43c9d3c5f83ad696c3c8ef35943039d721e4c959f1378c9a72e54df2832cf57c75e1210302047c435bb500673065023100818b5faf6dc5b2ab442533e2de0e76ce0e429249b6e2a195faf1285cca3ee6122cecb9d9a21a66ee555b30bbe359261a02304f3e30ed90e8458e1b098ea6a37e45733177c7233053370371be535afd28cec3b9e6db94002fbfebf364e43f8fee7f1e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306c493c8dc98acec722f9600bcc805912d8d14b316796d38dd9093d95bf68a6029c32ba2daf92020da0b05a7fc15fcec302303866380dfbe81db9d6c458c08890d2d24430cff72e992fc66595769e28fea5d5b149ff6743dd862636b5a7d80f9cf6810302047c435bb50067306502306a17b9bf139068b9f64b0482d5f7a448393b072942bad779d784864842949e7b3edb2e7acedded6cc7f1dc0952d994b50231008f160fb7ffd5cc0c46dec0a2a7710f9079b7b79ae5a704cb843c0db0e003c62d1b04bcee7f694f29786b4bc3af136e510302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d20795f766c898e096df44fdbf5adc33a736c4f6da3d7867147081c45bf593476026af19a0ab72fed8dd5e09ef95c4320230416828f35198eab5e73215d2a87393954d29c22edd1ce3c7c457d72029e16af3c1164904ba0d62feab60b8ec910a043e0302047c435bb500683066023100c71ba6565f53857d1fb3e802770c537b01d2001f093cb938457890fe989cc35c6e3585219ffa2ca57bae131b50fb1404023100ef062540ed18dcf2c8005e835ab10f1f8e35971036d52ac4e2448cab568aa76e15d8e20e2d6c593df8d8da81bfdf584a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305df6d7790bf7e50f665456a37cbcbf29b323d307e09549bf2da5428814d10efc16034243d19fc7b0e578acda955a5c48023100a3665a6c9bd59e492dc29106e1faa3dc53d839be7fcec1cd04ae9597402f9fdcbf9146c210d5b02e49548aac0ea8090f0302047c435bb5006830660231009d0379361ab786fe749a8c4920f28f10e9589792f6f838c00643f5b5aca586280839730b790fe93725a8496372df10d6023100839bfcacd7002739bed7bbe83be5c7b06f2b1af67587b31db5bf3835116b88c67c8ba54c2275138e2900860592497b830302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023069be2ad2c805cf14609cd9def86709475e5fcd4a372aeeb4ae4b215350a52f0f44f4208ccd72fb882bfda597819ead56023005b5402790b89bd92d58693a17fd023c285a711025fe3cc04d76e29d56ce17609a82f8e199a31c894faed4f048f4bc240302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310094bb353e3640a623be7b709799e33d0e94e5365420648ea3d58258f03a3d053757bd25992f7952ce75b699ef1712ea9b02304fddb0c28091050b953b5f73f470dd21841c1f4b67cb817b4d18364a23e0bce664a9835c2f95067abb0599cb87df7d610302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100dca3e25cce99860476be50b71663108f9b55d2bf7373db48cd269126ce0d464371be1e0bbe93ddd431a470782979ca9f02302baf0094d30a9383a06621036f39b4c22a808cc3aaaec18e69b75660ca19dba64fa4fde66c82ec9883956a471085a6190302047c435bb500663064023052234eac332d29c53bd517c763ec2799b87a8ed5e552a0fc4b4c321b95a0114f8ece3373f53644d7a021be627ab1b7f702304973b8f093dc7be4862507de7a165a85a950727bf9ef008cee9caeb54183754dfa40a1e5bdea5c73decff15301e814c10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023050415b1ad6352d4556d881d5a057dc87b59958c1bebdd152b3fb727c7277e2334a8aaacb53fcc0d6f1963b8aff147986023100f47674fd67bcb327dc30bb399a62a88b14ef76111bdeaacffbc27de4e73e8a10d1fbf5a1a6aee9a24f6c77ab3da10da80302047c435bb5006630640230763b8384edcbe298bfce64071d27efd00f1e28810af23f8d06307242bf865045dc3c11a6c60540bdae488f191d32e67002302111e3eeb79737e342c5ffeae9524a1825f263fe6eac7bc85602426cf16e1186fea2fbf9693ca070c6d0b64b48ac53e30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305e74a713207503e003b16f913c56e82bc028c61bdbf563b974e7d2b21e8a4576d599989711ed90a7aa807a575c26aae1023100981c097dcc271014b381cdb03e4a8ce73f11a4ffe5e803240688e4e94f07c5f7a6b37d22660e947021e3689a6447593e0302047c435bb500673065023044b6eefe8c56b7b2a4bdf64cc636693655cf94a13c9aec4324a0c1c1e8067d29f6694879806603720eb262e5ea1efa57023100e1e6976434a1c76a2f03efeda50c7a64dd2391a0c5d9d77167093a8912eca022ba742a2779bb9d7e042de31e8e89a4590302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023070e41a77d30ebe24cee313916cba81c5ba1aeba9bd04b13efed858e90b5de353b2200dc26c26cecefac05ee247afd0cf023100be392a2c65057d05f2221425400c39958c26829a169ba0dc575a0e5b8e20781399401260d2261e2d911a4314d4d5a9260302047c435bb500683066023100c6a22d22ad6d4403481f404f101c9eba53514a049a93bedfcc2743ac48d1cde47aca0313f790c05ae41a6256c9dee4fd023100d1357c67b1fd24a2fa3a41d4eaa4dfa5277b6d0f87413fc49a74a61ddb07500a07449908a398fa38f3873e8038519c9e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300df0e9051ecbea431dce2f686c827cb4d00340803915f8b2f0d1d05fcdd2fc9f8d1cd33874782358aa01c8c632c2e1060230012a4742aa573928bdc62704d718c06a9e369cae2ad41eac4b0497544383df9e3587ac5ae5811bec71639cb13eb8ce1f0302047c435bb500673065023100bd6aba34f4ff0d7ab290e628a18de2467fdafda88582ad90ce24c2b63483d786964531be5c4b221daab86cf71673e7f202302fd9ed13ebe700b29bab7ce032dbc64d592aa2351e12674d7ff9d49ef245c3d2047f098d514f4a175dfd56f8e6ffe2a80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310093f927084597f0f84c5e5bd85db09eb720400583adf4b46ee360fc38d393bd42acb2af68b77e0cca041a9480dab190d9023100c08175d06aad56d7c8c6f5cb71d1b4c601f7e361dbf063468811a74c17870bfc00cb5830c6c9ad8ff45b6ff05c90851c0302047c435bb5006830660231008a79e83c0e75047611a67bf9be5401dc84d9200543ee270f3fc31a4e12c505aad7eb272e09699a589fab2cee84cce082023100903167f9b0aca36b788d794ed6adeb45faea79abb5fad7d246489e8f55a30f4fb1ab4199f113e4e2f7f3fa6893fd07980302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fcecb72bca6fc186802ba65403ba855aa5992ffa32092aec6631d9cd164350be2b7279f7dc239b1f0b2b27df526b10fe023072a01cf0e91a22b5b025683f54cd55184377f83513e87c61b77881776595b94b919705082b437b1553100a4487d56b920302047c435bb500673065023053001034cf5151b3b8bcc3fa728d8660fb8d3fc17819fec3d20187f7199879a4fd49fc377b28a587a41be3238a46641e023100b2f4932e3fb00d94723b2cc332c493295cccafe18bd083f8f8d67da199874dd1f16c679cc0ee60e91ec194b2fe6422170302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ac5255cceb5bca15439ef7bbe4b8757437a326f5918c85874520965cbf2c28b8406c539642200558329fa84f003f61d50230663143237063f20f8776ead4858febcdb670e8855abafdf9ac37bf21a9d314c7d69f3325744e6e5db9db4020e54317f70302047c435bb5006730650231009ec3dba08b688a6090eb4eb1adb66d09fcf71750f0d8bd5015e3e44f857e911f38d0d86b78ddc82fad988998872405db02305570c1d8dd1a056f6e6ed99a7b0c74809506382de08008476dfb1a397c821de42b8d397e53f0c8815d510dc38db223270302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023024bfa74d6a7f163d1f9f22a8f33176d51e42ca442f6d04943e501646250292bf829f17e9731f9ed06facd361bba9b924023100c835ab9ca87c01d1276d088dc7aeacaafb3a791514e34cf7eb5e52c1fb0c09bad03da8e794299c6d37d1fce135f26baa0302047c435bb50066306402300f4463e7b74c0608b1ada6d28dfb078f6305e9dcd70a68f3380c1108317edf540e4655e289f9c122d23bfaf8a24b39df02303da8d5c0fc2e9e0db5ebf538f66efd56da7b4ee58ed817a36cf447f183cdf6b73ffc4308d70f73425fc38df3d4e4464b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023001888fd19d080825f429b0a37ab9966c2cba6267151c9457924254c934a8e57ffec4ddcdf3729f3df2a4020286db2c0c0230361f3f85b539b380b565a3fd3ad11c01857f2e647b292276b42d04ca16a9c49abebe3bc79ea22f6a7ceaa5494d41c6d40302047c435bb50066306402302f8c9b0b91468882e04e5f140a1422a96da780f634bf9210f99d8941c4983b2b67aa634579c5d1019c2841417593f95a0230322e239f0962dce6cc138dca109b46556e72a03d0e5ebdb4528caa4da737398fbc0fc3ff7b0a734b36247b94001846240302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230338e0b630071a5f19f773e3fd8f767ef366df250dbd10e04c922a957f9799135618429731a1e8597ea37654bfd9f51eb023100d61881a2ff221b090dbb57c7e4368b55df37e7557067a23c41e8b3e7bd3be68c47b32469f76351ea719da2cb3b5af7d60302047c435bb500673065023100c0e44577f7c9fe1d9416a30d49ebe0d202c533440a312ad6ed3cafd05a8a1916cb5d5e014a375d1cbac1bfe45b3b2d6102301903eaa4581aa8797a065d68d5026b25e2a5d99998cb14c5e022b6e60694aaa7bcde2d3f61eeeb88f5c07d780d6c80ac0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023040f475cf1a06d004cc4937558f7fafbb6911db635d901eb944e9bbccf23b057d193d866c43ccda9a6315c64431a506920230730a63bd0cec8c2712b8d6fc20d46eda3478fbc498067a04222d544dfe1a92b429cd60a3ca10042899f87d975dcdc57a0302047c435bb50066306402307f266c161bba53dbb4fe991b4d8cad7888ccd1a32c17ae34679a87a6855389a8c5b78150e9ccf8e74c9eb8792f5252c2023026b9b2cfaa726dd0121a990f649208724c7cc794322aa45d15884bcec338171a2415b9c194e8778165b02abd086cb7db0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ab35a51448dff5f2086f91d334492cb1be36f5ccfaa03cf4bc1a6357599707f78d5510582f258a753eadb68dbcb2e7fb02300d73dd0bbc22a1dab35af9075b1bb3e05ebe5bf7f400a3b0394bbb92a1bb4ba070edfabc4f97c4068ee2ed0554fa5db50302047c435bb50067306502303aa46f539cc0857c881097b54560a12f293e793e97e4dc7ec35c6e7ab70a9b5da8c4486596693ac9e6ed6509671192f0023100fc614722984f9f88934ada4c72c648333cd545c2483c34d2ea58cfebc215ad5592bbe583d90048af01fe8f026b8b4f8d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c5a3ebd58c487dfbf5aa141c732b52b50c5ceb9d8fc6599ba3da9e25f71202c03ea3707f2c41463abbb5f61100e091dd023100997f127141f7d9cd50515e8c04ee76e04421bc5e5aec9b3e6220f4de79fb89e156f1d4013281a2df51f925d4a24bde9e0302047c435bb50066306402305e756943353ed1f47e047a399fe535c6dd0dde55fa171c3482be40d27eba8e279736dba30277d424ab271166e4f03624023059c358008972bd89a8e238ab50c2188287575ba3ffb1363fce6f3da0e3ba023d1c81efd641d786c8e3662ca3ea51bfbe0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d5105c48a643627f9df6362c5f650dd592395296457b5935400c5677fd788fb0925a55555cdf7e1f00514b102a962c40023100b2c70a1ac87596ffbb6ae98e22f82d20d40735c2f48c43eeb37e066c030e36f3a44320640960287c3bcbdb672bd404810302047c435bb500673065023100b066286572a00aeebedb65ddfc2816e68098d61b346a66f01ad984fd43d0d29f5101c06edaf4f669990fbc35f4a815c6023020786c9ab156f478428a909980b9cd8b9b7cda6a4c11a1731c932fe3982eebf61207758105e51e10ee2853dd5ee8eed00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306f62a5db8ae213a3d72c8230aae9f7e3dc74592ae14aee23637ef1615645983cedfcd08ba022645917d93428cfec91f1023100ea9efec035cecfeca92c669c90ccfb3d300cd76d3199263b077799d556577cff7969f3fb274e74d56d60101d688559ec0302047c435bb500673065023028cacf8b56a7fb13fe5b99d2df79b80d64a74199bd6cbc8156642220c0b276c1b271ae8bdeac7638cc3419686513dcba023100b230ad8e0dc175c4cffbf42f0a55324d4771e264c9f4852c098262f902be9030e0eadf7f83b135904b6dcc073026dae40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310080920d14af87c0acd95cd1d4efc1ec34b5cfa85c022bd8481ef1a7e0cfe25d898d9327915678a8b34318df25c2989fe0023100a9fc0a96e58b5672b9bb17998056e732dd61d6548b1407f12974123021b6538ac406964124304adb4cbc0f44221e96b50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307aa9cfe6e33f14fe18b5fbd2a64b16ee3f62aaaf636ad058a9ba0a5d870bcd7709705e2db00d9e592ff86f8f9ac8f86902307ca5f28e0b1ab5013a01a891128843023f38bb0f09fc469cfae99d0af1fbadadaca0ae3e9049f0f88481f4fff31265270302047c435bb500673065023064dc3174093c8d1b0e36a9d4acb97fbe72847b9b62a452ea137bbaf2bcc220f6b6b19f753c56ca0584c08bca14649daf0231008fa304453c466d9634644410ef3efebba45255b83684f149f20fd183277970aadfdb9eeef19998bddf3352bee7d56dc50302047c435bb5006630640230038239a02aab10162a959a56f8da3e64672e2d6e9c4b4c1ed7de31f9d5493766155a103f48e23d1af91e1ce30e48b1f002306b06343454c2497f277d1d51f810d897286139e9893974a4d48d62eb732a41c71afff7b05a19bbc394b31bd99472a9210302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a2441437d39d44832862ac77fb5d9799607d3302b38a606591c3ae96fade6d8e9f1b722195d755c9efd6effd73856c2d023100dbec5b4cfee0e40aac0e1172be63be8773907f3d5ce1675ffb896cb120751c93896038db78a4331047ad83ce911d43c80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300b3432b85d122c7216c2c802d7f1ebd57e08a7e39571e7a6145c60980bb8e25dc9530f279ef508253832cbacd7f7be4202304e76397f9ce71e5ea69aae1b5c66c5268509e916fdedcf56556d77343692215cae7632ef5c39e3838ac0e93afe02c95e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230782387bb01039a0fdd77a1db90ef0ced50232fb43de97a1ed734676cc5f921927c5770cd34937a21037dbdca689b74ba023100dd28e88f4e9375f1413e7cdd28ec5199df31ca1fef78188d2164f97e66e9629f8d0ef7b6ced8ac39f74b113453d3c0860302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e326ade4a1aea05156ef51ecfa7146be8313d88f977f98bd2034805472c02b5b4f6262f5c86eb179681f8f8af9edf30002303c454ee8b0669226f6d774b4541422d5ef7b67d1549fe6b99c5097c57747f8af5aa749ceda49aca4e0ef1aa6304416070302047c435bb50068306602310097cbee460d36433868e67bfe7bd25a4842e5e785cd25e93ceaa99fd80ffaee232ead72f46d94dae2c6a05959a29a2798023100c3005e8a6a7cd2d6038767364ad6af913bb630aaf51032baccd9eeaa76b6bd259ce10c77f7b47f60312392f4f2dc23a80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100aa521e3881e6f2ff62d96ca53e8364a11554df13656cef3444396522a3591c6047828234b298bdbe98cef5ed59a5363a023100ec01503a22443146af1762b4b76e415a53f32a8a0af825668aa4e63b13e686feb1843424c01fa7ca028b9f7f3615c9ec0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009953f3b0b88d8bb314d68e97261081ebb043060319e957bcc54ac0bbcce5490f697dc5c23e77246de47af4b05c753644023100b0e919316944903cee8d2a56ff28acc0b06059a7576231191ab3f059bcb2a7c61e53258e09cf0912794f866e17a3e46f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023071c194f6c0f9d4a367ea8bdb7de3cf2d1637bd98b13f8de13eb1beb14568a368ca6e5451ec9aae1502ab0d2530c1b6f60231008ae29d894ed06c58e8bebddb4e4b0e109084bf7c22be1d3d5de6438cb730674b81da989f6e492b1884be67d5af94e2310302047c435bb50066306402301aa4059d6ac91745cfa9c6f8e8005aae51992ff7912480f88b7bd5a8a01eef2a5a2673ab40c2e7dc6df2341fa7f920be02306e1c61adb29b3b765b6b79c2046117a80932e447613cca349205c6d2ddff401e1a0145f5fcee3674108dead605580f380302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023022d714d513b474c1e1ea6b55bc8a338c1797928fac43a65da7ce60ce0b11eb6e4c8bcea76986106812bc9008c10bc766023100888b2f8dad1dcd2596fabcbefd029ee1ac974183e04354077d7876088a6c7da07b068ece97cb09228118cd632fcc7f820302047c435bb50066306402307e0c867c9d7d04b8d96b41419a1f70d643ccb183c4cba4a29ee337e8e44ed133f719f1ada0dbd1536e7d6b6c990e7404023077a347e73cd6046a94ebc3e446502bbdf4239066c7e4ec42d3741f2dc98720891141824340dddbb8372548aa96b6f1a50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008718fd5ee1f242fbb5166e361a073f792dd4743729af8518084bda51695e8bd5306f3cb7aad8bf6aede4d3c8f9521d8a023100ad723ea06ff8b06458dc2fe2c24f8960752cdbc6e20b707bef30c021533f3578f2a377b94333839113382d3f5e95bf630302047c435bb500663064023026345ad1db04ae932333dd60b4ccae788487893537fe4044a671408b729d7e2df936e5ed9ec65ace1c1107802cc977bc0230104b3f5abb7b52829699ade7ab994eaab036d4b6389f245af81cccf62c3e9c74c677ba846b58d76268d7aad11cd660e30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023001472ef5c7b6a7b8eca08f85e36cf951f8a57112a374429f6c2141fe5532304806a6f278fd8617ae4d39d13a84b28d2e023100c99f5262d6d77b3ba0cbc813c9d7be636273ef4c9d9d547e5038af6cd8ebf3b83709034916870bd335ff1e3201491f160302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ae7380d0762a1c39cc4c7dde5a355baff15403bffe1aec376fb2ea8707442dda85d2fe5b49296a7189b9f27367e10120023012101b288f4a955d545c1dae58185da049879b35f7b571003fdf279966b1ff7506d929a8c271758ed882ca71ccc3833f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310094fd80dea2c16f112af1b5da23b5244e63cf152c15613505d1b878bf5c4f794cd4b253a96721a390b54d42aa5d4c433c023033ab966fde38f9a67b8a060ef3f62e4175f082341cf7e68aacfe56051bc696ba52ae0fe0fffd5cedfce6c1d23b27f3110302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ed903eeea1e58dbd7d53938c9b6afdab908b53048c93992eb2204733f99ea011edf5b71fdc4124bf7076aa96082c04e802301bc0ae906d5e4ac42f77f315750ca23edf9b79642b0066a179856337146b6ccb4ede6510e202352c4a8f79a670e202a60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f86a1ac8c26dabfd7f6539171ae7d4ef16dc5e6b271101be9efc847a65e1f40c3afd7dd01082f8a245d85d8a2612bdd40230696d22aa2977cda989b64fb0934297721cf8716a9c433d5688014aae62ec4a5406bb25414822ca14c223fc41ca451bbc0302047c435bb50066306402302551ad8077b4fe1f73f5811b79365fe66cc5078e786784183fee348879be113916aeaaf1932d47051ea56a3dac15cfa8023074dd64fa6a8d1c40b7f1265192c7070787e704d94a93301a53aefc8e0a8b68e5a755e4a740d7644476d331a36a5c96b40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023078ea819c574a9e03b5faba416e1f05ee84038795c2c19b4623c14c851605d739856586921e2174cbc3cbfce0976ad1ae02300d22d9d9914e8545f5a3e72ec9ca937a0fee2eb81b95620f60ebd9b1144f396f6223c9522d0d6c1cfa0f8b26639bb4ce0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307666b0535c9c78d87c4703ec53225f116b88e209b9758eaf611619a2c789d51b82cc1f3051a9cfeaaaa665994442a791023100d7cf297508cac57fd249d72e0e2de14a97cd990ec6a9cee926c92df8c4a70907c554b234d6d7d0e56a13c4fda805d5b40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ae3a42a8d6743d39927009e4179570c49a51463b282a352a7b62b989a75ab6055f70356fe2f2ebdc51caf7121762ec9e0231008f92f54a60af089a67dbcf0c232d1bc462e546759b933bc0f5c85397698ac7999dc56edabb51a675febad98632641b340302047c435bb50067306502305b397bf4aa820d1edef1dbb97e96c980780db301c1c63bc7a08b3d47c2f285b05aa0f7489be49142ed1f892f925e5b86023100841c29267345e35a31ab035f34d03368c0c343b975cdd277b434a73c1f7a991d72cfa856c3d6031383e8ac1a6984e8040302047c435bb500663064023021fac0649d833eb8874864e9f8395d1f8f3f79a8021eeeab179f08811ce54c2826b35a86f46f15e7991860f46e15a936023057f45fbf4e484a5276209ef33c2ad368b46769e80f4d2475592416b0d29f707a986890d946a4c3e51a5fbaf809628b9e0302047c435bb500673065023100ddb98b1094b73048dd04a90162a9b7ea76de04c0f1acde95b8fb004256bc730e7fe01bc0a277b081dccaa63fd20111df023000f088a8474ef5b6e881346bb7a2c3e7ee7969611b7a38c55bdb99343cfac0b57f55c66147c46fff4427116c196b705f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230293d959d447c4700e835b8a39728e750655cd549c6f8ff837bab5a5fb5a92c112a1b7256628db5e606f15c6881416466023100f2f2d561ca6f55f7673d2819c908af61719a4c06971691e5df154c1616dcc6ac0bb8f2b9a607d7bfb7f2ddbfbe6419150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c1e2af9fcca0f2c063fcf7bd775d643352c9b0f89dbf2493f45448783aa95bdfb07f71760e54e858057b52a001ff55e602306cbb47ce0899d6ff6200a7eff3fc075db6a6cb13793030e85dc14ef137aa93d4b3e50df17c568f4cac5d9b9ed6fad5f70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023058802cb7b60d6b072f7d7effa34bbc32a3d30418b780d839e93dbb5ee7d39cdb70e6dd6251f01af5eaf87e5deb111c30023100f73a90cf852daeb834f4cd4e4293c85bb2a4f0f0be8eca6c0124ac285ea7d9bc3f6a038dc36a4069ee13bd440b809a890302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d41105d3a809f1102efe922570877ac36654743f6f55f3274a6929355bd3d429f8f0ab2f221e8824ea75155339e584df023100bfb9be9ecef5fd4c6fe92d6921753a8d2258cd5c77ab84e6df80bfa83ab8a2759c30db04057f7dd5b78b1187b08977e60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230698a23708799c46b12f26b8a9ee35e20fb5d154c3aaa7ddb3d81bdbc4109c7a692833b1ef60d9bc336daedd6ff212bd302304f36e47ee15057a01581cc6f6095a37d6a4ff0a73ccb13a950c817b7f787a2fab6cb8730d4a3f62ffa14087fc9d043940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d0a1f4a448efff13beaf589d1bba14c77df9251011df87c077232202cc4777e2755a6e783f181dc4916c2f96d8ecf281023100917c56b840c06c159bddb63727d7a5db2e6e565f38862e6c631754f9e150da824357bc0b04d899e94a627280b75232550302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e968f64ff6dd95e03cc49d8482029fa5837cfdedcdb82a1f4171800ec71903c0e130e9e4c9b982196a1ee8e9c4f4c3e802307f5afe0250187fb723c337e6e5fe51a648cbb928c27429eac7255a9b03ce457e070845ffe72056c6c7bf8ee59f8f88fd0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a6a2668214e02afcdbe40ea57af8e607e4e0c8c7f572c054698cb4c0c6de7d19058df4f6f9739ff59e7a692994032b4c023044510e0f3476515a2e2449567882b06df746e65920aa77f046e1eb1245e8d2e0d3a167f1322bef441c90de68d06c3d960302047c435bb500683066023100e0f969b2585de18896b2fa6dbdc2c0d2bd8ebd70e576a76f7776df846126852bf5cfcd200059ebee17f77ce90966c67e023100f809ac38cd1ab11e22cd88d40b05556e632db2a2a0464c975cae6479f0008893dd14f503a9946a92ce388176f211ce580302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023038abab19762e6955d918dc43f322825296fdf5bc960c2348c7c85ffab0b48bb318915e0a80f4885e4685d50eecc75bd6023100c5259956cd0272e320d597c6a9e2b9500ce6bfdd2d96ab937e58ea1b7615d3c6fe74104fcc6880596cd7569e59e1db050302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100cdef41267c2a3673b6acbc0cbe22f6945dcd11c2ee03bdaea9d499663d4f68159c1877e660bddf1a19acbffb08082559023100a596a544ee92e1cd8ac2c40e8784faf1f4a046f5037655fe0d4298559314a4e97236182b78efc42348ea16975c72578e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e1f57c50dd8edf33f70230c3e30efce7a3053cb6d6d44e714ab3875686909093625788d72288add732bab04824b5f035023100a1fb14650de53b2860d90a7192bc9707295007e0e10e6dfcce24d22688a8fbe2e73bc9956bc1b7fef7aac6b85858ab360302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307b1adb3af7240ab9aa45c68a5dfabdaf624fb72f9ee1997aafaf615b91905e0a105b61e8fba692b76c934b121ea4b43202302409333b5712f20256a11c2f43aa9e8b62ed9ab5b3b2b774ba65adefd16086dd367d786d1113f745c6fecd7f62bf48380302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230303adaa6a83353cb007802ef954cd142008f57f98241604263ccae8fe5921a91f03fa00e78c2cf127901067c302b5248023100903992eb3f5ac83dfaacf1d04388222af808ee76cc36cea0ff10c0c86d5aa839f04ba3f35aa650698662748654fd77c50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bec71ebd254f0424e019365f3fb4287b3ec9804d1bc0183884618c8be31ea8e1f286ddf6b9f91e80b717b4411ee7b5f40231009a11390a74e64e24396e737c5999fedfb03ee0cafe71fca093b3ce234c82029db73ee1f2138f152c0a843820fb7a37850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230620cfea14d9c3b5a0e71d13d61a35b5faa905274705a09932daf0228e666ad6a26b401013f31a3fe569a807ad920450e023024ffd6899dcc231b1a0d5efba6669bcd3804cab89141465df19217f890e78dba3e5208c7fa77fa887e21f232c320b8c60302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023000a463c99c7010d96b398ba53dad287be9ae6b8bab66866726bae679a3815b9008a5c2c4fbbb1a3046652ae15bc582d202304f285823b4250637a1325a6c350464623afe1e778d093969385cc29b6b5aabaa639a170b9fd44174b4bf958cadd731c70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e2860a77fc35e7080172c10a029b218aece0e340dc69410c7378a79a7e657aa3c3064a218bab7c4968020e2c4f584fef0231008e438f38b8ebbf0d4aa9e3ebb5e8b1a3c094c542bdbc829a1c8b6d70d7e5e47709d0765415be0412ec745469a1165c410302047c435bb50066306402304d72fa618484bcf61ef53dd4ca01e44ac2f4b9cb0141a00c96a83d6211bf5692e3e3a60243da3ac8d337d43bf88e098f023045a258b432dc7e0400958d2f92d306bd1576d5a554f382bec0580093cdf771d60eb42d4f82e7a356d316cb06e64057890302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fc7818163ce2b72ec04f01b0c8cc3a1e569746b4d862c995583e91b4e0932cc567e2ced2e8f1737a582295bf57ba36f1023100c5bea93a70ea04bb0501bea1a099cba1e5b272878070b9575ed37ac2d8ff7a20c04320bbd234a22ecc0b6510ddbaef480302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305dea13389b43ea566efabdf49dd980d7148aeb23ab556283ca1ffe246c71577dc6f27d1a481e699eb25b5819ef86884e02300410cbcd6166a27d9c0783b044975d7cd92fd9dfce34087246a32272aa9f06b5fac28b310267705dd070fd1908943c520302047c435bb500673065023100c522794f6f5abc76b5bb9d555cf42eaaef6290a433a6aba069b5642913b23619f381d22712037c6f4ec93a815fa9dfff02305b514d81e6f8239f3eef05212e2e4d481f6b6b6cf80b534de82915a53f034526ee5d0f10e5911e9d8f637919d0b7de6d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c4fb8313d676c308df87789fb79899607b65b42cafa5ab7c52dbe7faf2ee2e1bdb8f8031f1bd51893995e1c7f7fb3b5502303bea0f4c567be8dd32e18dd0d1204582ba850aad79627ff13ee751db4df3e61d93476a8e8842abab2ed62ac5a13ac96c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100aa9d2ca2805b36e16b2d908ba02670422dd4725996982d79f53b0959a2a0eada79b3d7683347fd39dc2135b334afed4b02303660ca4907102ca106d1961161c36b95e73a8913d149bf4dac92688786e12897dfedfba5532db9a4c1de22566c626cef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b43eae76780c95dd37921875580741b411e4dc9ca72bd1899310695ff9ee35cc7593caf7e924dec0f68f16f557654f56023100ba7301992cf9a11f8181ab7b4eddc465bf54b8c12f1b8c14a653d002d494f58ae957938f33272c8f625a55bdcffe8f4b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009efe976c18ab88f5b1e14f9b0dc4ddd997268f0fa88852ca2535ebb943ede578df6a543f2727238f953413ca52396147023100e4f6c2feb73c86f3847f14d2c6130e6e5a108eb28a0bbae1c7171f55dbc73e362c5d6ffcd0737256de1a2e4808eb8cf10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009a902b5104480e9db682d6845b00c89dfbdcfda21e7397f2bf82f6ffefb6ee43bddc6a458630b2bc53d9d99b8c4d9e8c02307496a137f26c5fed77d3eba92281b0ac188762b58456b56086d7e7a19e20a3d02627b1c6768fdc9240befddaca999c960302047c435bb500683066023100cb2f3052068fa97cc20bb957185d37836d4a5dfb893fb60156d44bc61f5dc86ac82bf364f2205a83925a4234c43ce9f9023100bc4f1f7cc4dea45430db63aeb10c009779c86414645b78aeda98d833e40d20006ad9b06ce88d5a506e3b6c03237a76b70302047c435bb500663064023007dcd7c909a49f77584740101c1ea309539a282a944f353c1fa4312715b1830d01dd7ab46c9eb68fc27b1bc62dfef9b8023047d79c3357a1ac3cd7d5858a2f2b8d84e9df6757fb7afd3d2bee63c497eea553171fbcb874a73685a9b9312dbfb612a90302047c435bb500673065023100f8159892137cef00972f1a62975bac926d4bfe7a5b0d0f0839af78e17d258bd2a13c7bd01510156247ef324273b9dc1802300f2c021640e1f7e0aa1d296aa5e320a3c46e6aa129648f786e6ebf33de84c766bac117e6ede035d3851f55637173e2ea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100b7121a6e6255006cc18097678cb19608fb2b8aaa03d876a25ffe1436acf77091be3214998c6fd9c8165c3b9e2dda5fc1023046e324d202204fa7af790e0e6b0ef2e0cea49e3c22e028fd80ccb919716dd8b4fcba26cb36e520ef03acb445e1ddccd40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023040a3254cb044478ffcd8a0681960816203ad9d788e5195e5a20c8b3b1fbb9b275ecafc5285167d36d063336b9adeb0c2023100f9af21c3f511cebaed810fecc371609cd6b229e3225ed9212bb3aae937d6a975cefc7c362a7e566fc839483f611c9b400302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e9967666017611fd41311290d89e5b77264e95a1b83906175fa2e03b4bb5c412527b91bda99af107dc97a79674bd64bc02305c26bee89337f888711f7b150909d4bf3a569f97ae6ac996f14e1b1acce19d15da3428464845aa23deb7a3baa7dfe7c00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305d206ad76ba24ada6f73a1506d5b56c74790c661c620014491efae76e27e25746079a44bc02eb0a9a49c8fd2be3bb43402310090d847d80215b2bc4ef2706f57d09cb5e437d346906e773f7548086a8afe76bc78cb5c4a6c555001892f5515b0138a990302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023029818cca43c811940972d67fd282a068e30234f12c594b5115b69975a7ddedb94262b5295a3c9712258d454ce89c8db8023044f5519e6021615234184fd1fc472d87c01befdf3142b79cb0d4aca2d631fe32ce1d79ce6f951b68bfa8e36d937dc9570302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c2e35ffb0ee9acfe059f5e6a2f0761be797f1218a7627f60eb0cf2584eb3c9a2155af5ca429c0d4a8b6162984e851c670230356073ed0942a08b0a0fd72b753a46b4437d4b7270f6a8e80cf9dbe11fa6e4ee941b5ea4502f037ebcfe6a3b6efe3bd30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e9967666017611fd41311290d89e5b77264e95a1b83906175fa2e03b4bb5c412527b91bda99af107dc97a79674bd64bc02305c26bee89337f888711f7b150909d4bf3a569f97ae6ac996f14e1b1acce19d15da3428464845aa23deb7a3baa7dfe7c00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023008f99bbc66019c4053e1482a8f9c3ad4ee81d6d393fe166db17c77a71db94b8eee204889bdd9ab19ae288ab5af18293b0231008e23baa35d2349af68c2563a6308517dbab4b52f1756acfdd1f91c5a1f935f10219e70f8e88f5bf6149eefdb7c882e2a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c29f6811a106a2893b4808efab695af8fb8bb3fc02bed2e224cf5e1cf9186e869e102bb3d90b104980b5595a538d85c3023100bd59dd51ecf49ecb6692539edde52e9f9a128e6bcf7c451650465f75d279b048a808d97842c029d1a661fcae79c41f880302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100e9967666017611fd41311290d89e5b77264e95a1b83906175fa2e03b4bb5c412527b91bda99af107dc97a79674bd64bc02305c26bee89337f888711f7b150909d4bf3a569f97ae6ac996f14e1b1acce19d15da3428464845aa23deb7a3baa7dfe7c00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023061536b6f57dd0f31a4f564d813d5e77fcae57d0309f4ed7bcdcfb38dbfd0bd66f676619c3b9789eb80db91c709f31dd40231008bb5382a4e80f490bcf7b5bfcb5448b6aaba9327e7ec4d94a51b26f5d468d9f742dc03b99c333926df6cc8af1f567d850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100cac5ec3f4bd7bffd43bead7b10cbbf4be1f11b74e749832e5c7e56b05b28ead969c685ef98c7c168fd542ed32700a87f02306d2dd7ac5f488729e03bb646fd481dee2fd668c1b3e1e8b5f645c3bf52ed45aab7f267bb4bc95359d56ab9624545d79a0302047c435bb50066306402301ab8c0db8b7d4b55827c2e8e2201ac9b361794c9a02e467fafc999f6c039a507bafab8bd0bf58d506bdab0da14ac75ef023068a68aa591db341c1268ab6669bff1fb926cd3e0e46612d5e2051eac5fd148a2d8afff38a5d70ae17e0127d20201f8150302047c435bb500663064023041a81f1e872f7150c5738dad10bf3076db0c9aa036aea88608ccbaedf21a7ef50e35d194fff8ec1cc92174482ec3d290023042bea2bc49c981a8980db60933aa682981689b28518fe5d20175ce580b187697a3af914ff83408d604e6339ed29a915a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f55db05933983b3077f9fb1adb4678ecf4f883f1f9b12ba9d51bcaa2f2196bc906c7baa68e003f4be32f431b80b2f2bf023100fa6238357f4f2fc96ce8208224d3f4c574344561014f4d2241c1c449219db492cd253a55ad2d59523af0a225404bbbbf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ca681928361b45d4f7450d63eec6db1813e0c7113b7e7ed5c47cce9826b8817e1f70267efb839d3882f2e3c80050b0f3023100fafc4ba490749c947d1d4199e663e154e046cda252e53999ae839bf4134df5ef818eb52a20607233c817c25d526ea5160302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230341277500ed6cd171c698da15363a732c8574de958e6b53726e299afcf6c3c70dcc3e6e9da66dfa4c0a8a4189af6865b023100ffec912ddea74518764ea8c7349aaa2a543412d0912c789d6bc2c9fe4098abe20c4b692edd3fd0a46e21ca322be4defa0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008963ad8ed867b140fdde50f255694387e38eb5083f85a0c8250ac649afe7b81720db87db6692e91e235fb3185b3bb315023003ecad22c31eac9776de7727c368f3dd9b95145e2ad27f809280e2aea2ac5cdd47437d22d555a610fd6abb9b6dea9ee40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230245364c0efdbd8b3d992ba2d4a0166ebca53060ebab7fbf09cade1883a49fd48e91d59f2b44e286529d8dc5290452720023071eabf8d7285551386c08cdda0ccecefd9aa92db5fdd4194e9344c9b27d9efb36ebff4a27617d336a3cd16fde7a5f6ef0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100a155d12b7ad5ad7916d4c14caa5d8b944bcf677c4d7aee0aa2b140af84c2cfd2107b1fb2974932f7459af6d8360863f602304381e3e593406ad3ea7229ed6c994c0529da8f416934abecf90cad862b157675936edb9ea7ed6fbd415191fb4f5bb4670302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303d5e4cf0aa47fe6ac1786c34051004666cf741fe4b77d4cef8d40d63a4259838bbb5921c42ed1eb7d2a17e94bc405d8e023100eff196673b7302be79ded5004aab7746203149c900f7c54470752f721e1f9813dd8a8b5c823adb6a24c83a4107a495150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100927cf4759d7a0a390670ae988b9aeaf778ecac43d95778c057b3fb86cda38ab402098bed659cdd0af96a96d537b0f4fd023100b56005211a8a77b82f18b199dc5478a48998aa750a7ec8f2878a1e8367c2440e0c778b11bf359ac7047b3d502209b9790302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306da1e9defa95692a49ebeca2aba7c383ed9e938f84c3277dd62d85f61436f26582a76e116554bf7d240d380308ad699c023019bfda6924bea94546f53f53f304ba287aea74c92643bad740960b3d4724288f9eccd19937840fe22e9bb01bb09688f20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310094706d451f8c0d9688cef66c84f70b98182cf79236ff5fa847a4abd492b83e106fb963cdcd306dc2a447a17e29aad9cd02303940f178594f8799d4c49e5b6df934912ac8f34766a54ca4e6e8199dfdaba3b66970663511309569bd1ac05a6ff0a2250302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023041cbde9e68151935265c0775713942a58567f4bbea1bc2d3c305cb238a96925e510e6f500460d714811436a737d51a3102302afdf8c40bc9964781d456105f3a23b4d96f83b7c9fc425ed712e91591ca74db77ed59f35c1152ffb57b36bb818eb16c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f57cef0f0419333c4d5a9c5d909d26fdf1a6cdfe93a2ed5f42244dbb83825474e1a1bcdba7daaf632483adbf11ec9a4d02303c7cd113ede0d882f4f5b66c8b85b25d5fe29e87d21770ad5f271a02a608366cb199fdf9b90bd674a7d5c787b4d3ec6a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306957241eef6d93967883e8dba6fb15c722ae46e8bd5dec3d195eefb1685988b976550e5468b164b529d1ba247e4b7c650231009566215b66482dd43ee53dbfb4469d39d53da988be19bb75302280e2abd1db78cc35f886eda55bf5869bc31dbf4122de0302047c435bb50068306602310094d302e4edca2d975b4754f5a27c738cfbd6941f9ab983487794b25e1f96ecad2d38a342abace7268941c5877bf132dd023100978473e5d8503e6d273ed793a26dbe1ce0bdfb68994123ce9b39f69b61a9779541150578efb38fd5b3ce816d07eccd380302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402307ae31929b9458509f9e11f6c7e93f48088ccc4bd7c137844da47cde812193a526ff9d441d3305550cd5e146be0257e4c023056fb78c2d2ff84e2d5eb38abfd5009350c7688983a31b04ba9b03d5fe751a41e5d5feed2861d6cdad743c99259935cab0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a39161e5a9d99b5568bb9263f4bd21a407c757ec874fa886767e1c1044b56c8ca461eabcb85221c805bab398907b30c5023100e46b642154b9155983412ee21c8fd72d470c0ca8d6f60cef77b19377f4290603ba3bd171393042ccd2db57569761127d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b5b2de3959c61faad1a06fc3b2a9ac643518101a4b8f82e9ce62c14b32e7a3b838f6d8ed1f65743b1c311665a42026d0023100bd0386871eaa0f52d4e62dd5251d3d5b78073b874d0c1243dae661d9fdbcbde7442f6ca4ae6c215d5613b5d23f8c773b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230488a447d51747da68ba670b3ad15b553187803b09c316a35b379333267f757bd763e79345f8ccbe08adc98c3c0b401fc0230273bd74e9519b2b06bd4b1fdc3a23e1ca93aae5897db49111047e4f47fdc073363f528c4fd7d339ba80511f18967f9650302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d2b5aa7d4f8970ecd5acff23e5b6a09ccc68f00c9c8d28102d425be92b2ad8b3f2afcf02ac59be1dd730e7653e5c8ede023100cac4a5e9e1b6121104b9aa0af9545c8efcec49817e6e455f5b79a1ace6a31cefd2a52518fafbd38418f97720c90677290302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d2d0fa34d2b2cb22fb386605ca08cbeb9ddeda42874f616eec5b30c1c8e9955f8a8792f4329bbe6f2b83f517592308ea023100e42525c3ba881521ed502854da20b57c9c82448a6d8cf4115667113963753b4b9a1f817906d8cba73b1d5504d7cbe2ba0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a6f00caa592e85fa46419976471285c4e03f179efcf77bee45724736505d8dc805036771946512a5ebf9a981bde327b4023100abf7c001a12092a2f32b80388b0a6d3dfaeb9fe466d32dda6c1531fd9b5f12cd5abb6a62e98586f7ad7f9f922e2e38890302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009c06aa7f69c23de438f829617c47a849c85ae59022cca8aa27ef500d0549ee2df04054550deaf128efd824b9322b2551023100bfd15d8445a7d4151303bcb1437b90d569a528cbde57252a578d3e6520cb1a21f1a68b4e435530413725eb7e057a94100302047c435bb500683066023100b8af2984086c68dea268578947bb05f718f615bb6fa764cf5a294ce7b7f9b136f27f8f11f22270a351ec892a52285bed023100db75f55468737cf925ea9e26e3c8ff90229b46a8ef432bf337197341dece716b998204a0f618219ba06952f5667a14110302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231009d48a20d945ad1ba47551e0c2b015a279749574ef517bec24a906d8b9bed77e7d44485f510e8c755e3ae574e2aac4cdc0230445300cc15adbd286b8f35888d9bfcc9aee9362a0911f90fe0b3a44ec88bfd029b1533f3969e941fc39bad3376f63ae00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310090b233b97579c34cc8cdfe0828a8ac08c0875d364527704b88d602cfa5fd30bdaf05a3bfb562bf525bb730a1f315685b023100c18f2110099f390b85ec80e7a0fb4244dc55bf47e2659de398025c0c00fac5aff76fa9790465267e3464bf29d8513d570302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bbdd439567e10d371c1e79deddef9384e80f177224f85dbc87857887d7034078273d622d8f16511b92c7af5f39290813023100884d07ae64a55099bd881392a7fcc8cd173f2c126241e1e3a9ef1de6c0a7e0672c88dbcf271ad75b9955ad394ad995060302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307806e81f8d2f8c7219fc2aae73f729fb2789a2d377d9169fe4d54e29d5d5497f18dc69a0ec15f85450c388e462f84918023100c96bca1ef7c103ec1a5f6e2a4b5e4661c1d31757ed40fd3d741a52ea319cdf68a85589c3c27f8c46a4e5f24d1183959b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e9c9f860cf951f1e6519fec617860fcec8aa5d363197271eefc7de985e64045db7da473894f5384694374915ead3cc8e023100fc6044c011a6280bf81edcf994be602371786c6dc5c197f4f179b311298ae2fe049f7d1cf17a3e86a5bfc957341992780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230242ea5db6bc7fb8a9c6418858daec88436f4bdb0165533707dd650c98ed9079cb5591ee9e10754a81551ced10c6fc0d4023100ba148e3217679029a34effa86d80da26ca46b1560db3184af4995a1ab30e23683064cb484e8b8d4b1c0dcb918a7c97ae0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303d7ca99363d55a4a55689a7368c7a42d7d5134766a5399fb044d7824e09f26356e98b742464b129c87b7898dff6739e202307faa13804f271d480fd8ed1082e6c37aed3972ecaf0a920826ba624e02f0f259447828adb3f836cf0a0aaa440d8937270302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023018e75a37765db3d63a8eabe191a4700446310a3c91f79b2daba52e1f1c32dba1a5c15c71c6ed047dfde8941c7b79221f0231009329cf7b5a21fb183b145b1a2e368c4c835dfd9fbcb3c34977d620bd8d32fdca9f7aa98ef5b18f49d0f1b485b3e8c29b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023059bdf206af0b880bdfa284e84639bc45c2a96bacb0601cb39d245f3b2cae17caf0cac4ec7f5ec41341dd70257eb45e4c02306c5d2760f1ec831e1db066f4f25f907f5be1ade8009d9bc54dbabc09cb6c2efb358945690a0b9354cda918d61292615a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023044ed9da05e643239c7554cfb59a0fa0a4c471aa4e39c6e41c9061c77ba7d8df081b10e64a9840acf43be06e33e6180630230603d265a14fd8f14cbc33fe314ec81708448df9c533502792813dbd2c5cd6d44c2e979e4e242634405722e4bdfb2920a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304b9421af9deacbb58dc93ae35d01655e5add46c6f1aac45161c13ac02067314bcb10fca45ba30d2b8f1680cbb375485f02302a36cbb0a1ffe0fdeb589bfa21e724adf3e38588b17c193af6ea88fd9ea7ca67f141af4e71a0419ee5740a169cfd41ea0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303baf6ff665533677e0ad97703dbf9751f7c0945e0d780aa0a7229d59c3bbc81ed9c0f5b0e8b673c22d1dc3805e13d93e023100d5fc5cf6d506c4dfeec7a6d5f5b89f94240e5e4ce531b5a54dd747ba317bd8668d4188dc84704719e90553b090c79fd50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402304f6c72a46b831116566d8f75fb25da71dc028e018d11912b6cc2a39cf54d26d7835a00800c35e727edec600b76617ee602300f33d4312e9fe41645ed74a40793284be8420dde90ac78fe2de507a20c627108911f707034e77e0a568e1afcd7e5b6ca0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ddac0d631159c79bf8512ca0530620d5d18fb04207fe5fcb78594a9bc294fb21353cc1264988edbc4f133d133d0915a90231009d60057d24e95fd616bc72ddd631b3963ec45bf1c1d77eae67d666c896b67e2eb5cf2c2bf9b62462415775bdbdc66e110302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306a21a9a776252c66d78d3dd693359a2b077565f47be02e54d626e8c948b962020e95308281e945dad672adef2a733fb202304800d7212f313f729c6f11a2dfe5ea32c273c2ab48dc3bcdaf64604cfe18c536fa9d06f5cfb4a797eefe706367ad63e40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b8d2a4672a5b0743d2460ba816fe0bad5edaf2751dfc0c05d2b40183b8f0ca1a23f816bf06e9bcfb8180aa477462c71f023100c9df1b445e403fd04cbe80ae7384135b0444cf850049c91d475f92eea543535b3492af651dbc691a5c945e2c09750e670302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f60b17b5493981c73a1f26a1dc8187780bc9eb47b557349c0c29466a769ee37de77471c354b09896f5c292979385e996023100ff6075f6f478799e62354f01de8cd07e0e54aa47d82e5b22bd331d3e4390796827ac6bfffce762887a49b97b39e46c830302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c311d8064d3a4bb886af7fead319e29928c8110e67b93c40b3fc475eac32e58950302abf458e26472286e31e3fc2058b023100e4b9190f63a9024f607c17d92ab758312c16d7bd71808f2dacce46ba334b64721313660897b25746515d18b7ce13133d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307b6aba024a88106dbb6febedac7d6bab60e60e7e79f9136120d959e97e5d2a4ad3cd63b5c34361b0dd67c03007dc355c023100e4baaf9e05a6336b44dbc63f6bfc2b7ab3589603f35bbbba48b6a6567276add4233da793d04cf8d11896eddb37ba20ab0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230754bb031b1deb5e196457795d4e72670a0d83f5f59b5eac7e1a087bdc768ec149e12cb233cf16f6dba2c966bc77537b6023100c08dddff1af31167a8116ba70877f804393803cc4e5bd03d474af5b95f6b2c6b126db378ffb26345ec99c737232d77460302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230531352d09ce53c5ee43fa835afd7351d08a41be6391029fb5b7420d7762724316d4d2c36d1ad267d6fd9b5d73a8d59d40230195523adb2fcf6b81a37b9b1a7c909374cfe73860bb33cf4538098c8eca2e9dc157438f1bab2d6ef6e755e34fab010e40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023001d0c54bc52d9be062c9df4a114dd9ca7a00a1565e0db6533d10dfd48501e1c4596aa3e5004efc5ca04758efed4e617102304bb5da494aaa8177f586e74b98ae7eefec0dfe6b7b25cadc77f1d4075e571c62e8cdc5256cab87947c027cfa37c081960302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502305e6d1cdf6df8046f607eee82dd7f4e3647c9937716049a5bc83d7c12409ea7dd41f346e9da6e1f363485796346662d6b023100a5eaa2983bfe2253211d1bdb0b71e90c23f05ef758f721b65ba91c29e402016cb68a4dd6d259bbdd254c72d53b5703930302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009035d677a78675b7dcd15a1e4a9567ee730235fc61f928cb909ca9e461654b4b76faecf5d9742ec603efb420b8382279023100a03b6fabcac48ecb0a8e0a08245f31cb7f83e0028c4a3251c37db95436fa7be3bc3cdae361267e8ed15cd00f909f07310302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304c50b607879a092dbba7608c7a9b0625cdbe52908e1a41fb364dda46b640c14339470a386179a759ca4f9803ff33c9480231009f8a381a858f46915671f214e53d9f5d21cb351ca78edf55079055450c53c1680e7c979a1923587758c5131356e2fe4a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307050c0436fd0451bae5e0ff7d653cdabfe878b5e8d411687eee3100b36678234c9a6f4b6a6bc737bbf8e8e654d7d7240023100c56f48c99dfc5c220b7faab28ed12b543e3c98036867d3153612d1c3b8e7c08fb090d62fc3bd972549ff110c4f98560a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100ad8a0a33d9db1d78ba020cd61358128833f849c5cbeaf11d02a7cb65915bc4e06a7ffbfe87a717b86e4d3e56b61b70cb023100a3823cb377f4c28812c36265d80b5e55601ea7b653382678f6d9070f1ed89a4f40e44fe546a4ba8cdaabe7b83fef362a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230638a0531103a7a0af81ed8189a26fe065e0a5699f94ccb1722237d207fd51dbb71790efab250a9cd008e83761e7fa6aa02306b20fe84d58d594b86a50d49b3648c6681b122ff9721c2d653794b1a0cef6653f4519f7ca8e35d28b8f98e55e194978e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c04278d8785c72c08dbc12e0180f1c854fcb5974762b581ef7537222962f804101187861906b08e7b6fc627aa43f7fea02307df469732c975a68853b5fcedcf5cf6aef6058bc65523e1319b722ecc69c146b6ec8234b3a74db7752b971f1851fca850302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100abf7a23c45bdaa860296184aacea1784e5bbea93e8ed04f077832eb1939d5d9b401066f6162b08bd65627fc03203cb8502306bf570fa3a853194d4cbdddc7cf872ef0aea3f9681e72e09167570afacd83f15d8023d6ef50464f1b0265c67be7c19420302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a1c7d6633f0641a350b16c38e5f2b8523e061744f34f5d8c45b239ca5bec7b0bb543762872e30cb9ce6034f206acecd1023100dd44a53a943e9c23104e237beefebe0957ff0c2950bc7492e5b832f7a966deae59ed9b3ea067d47758e68b7b834e8e300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100acd343c177bd752555ea4d539521c5008ce85bb7efeff1b722d4644470db1162c5d2bbae34e3809012793e14a7adac6d02307671690a69e8ff36ee6bd0eb1f7ae43f3a3eaa6725b6561681303223080e68d213bb270e9d6b4e1ae5ff8fac3c5bda4d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023035e1ebc85d894f3c894e39d1ae2a1027b1d86e53f816d9d4844f836fe49d5e404ac7cdd97eb22edd2cd2d9d24b70009a02303585f10de5a0680ef3954899cad4b34a19eee5c17d08bb081f0309803ae0683807702683e63ca745ed5009d28c1c5e750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230316774171409302f3fb088105a4de696373ea222c4e44ab27facd459becd70ce3f127bf0215bf9e3d5c5e5d53441a65a0231009f4723298c38f2022a5d1edebcad84e327640360e1c06b05ef1969cb00dd040049ee422d306b8ad5ff968309ce23e0b90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230115c82d00f3f94ac218dc2c87b29cd0e36f06902f7482b7f23f3a2d8992a21bb2bfcca309236744b809080801a6241eb02300bb461e3e4b876f93ce974df7f56b8ff1fc7f5cc4689da8ca233f4ea0802fd596696cb07898c03626418d91fb6023df90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502301f7a89a3549b37e474e3afe18ca3091ad8a13e6c41cc0632fc5059a94fc43d6b864a3db1453b91f0965560f1d46cf953023100e96e860b387a9ba4606925fe974771a163b0fa6a4ba01900820d393e18629aa875aa2bdd8f7592d6ac3db11739c027080302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100eccad54a053d14573bf865f1ebbc6c85508f5b34b5565e70dd26d902175e79c819c89474a4c3f4969c12f30526fea2f9023100f5f9b4215b1556dba9f10960b3c66498216f94cee0284499888fb3016d78b9b9d2aa7329e3ddd5c399342833728b03ad0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307171d48c3145afa84d2a4137b35b7fa2a8e31d54c40258bf5d57ac596e5c798b1f2a74a3f9d85422f65373455cc7c207023100fa23e1fe679116691ea6d9975329ff6a7aa1f0c7ac5567acdd0e3aea88bcc5d3ac59dd338398586b9325fd0be93773780302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023023fd0599d32abf8b96e3f5bc45ca1b57b0688f84bc59b4994e716fb3a28c5d6fff152ecf757d3e8a8f0dbe76a18e32e1023100d7e0e27557971370911b7334e39ea4a81b80c4ce2ec0dc90fb91ca97c3ef7c64ae56c909adc786ef10cd9414659b67680302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305c699b7c484c8d28312e7ea7ec75a2baf8fa011b23bc158ba53628119ba15efa806aca1af5e08d4a1fe2ff606a595e69023067bf3c4d754339377af7de8d5813ee93484e8bad201653d5a10081b45746c3b6a1de702ea1257a3f1e85844b8cb852bb0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023067e721ebf4919c405f00fe97ef44558e4136b8399a7b316cdffc2f11cb5a29b8e5ea666505777abc40a9c527fe2b292b0231008d6bb7dac1711813b599ec96925e405056914a09a13485ba386e6dddc3632e825e03ddcfca968f55293a3f6630f89d740302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230394fa606a88ed8932c7aeb9002f3b6735692ac75a0a94258bb04e6e018d8bf029b828ec7320eb9612b37e1353d948df202307ec5581d86b04642418862779b026408690a7f2b409baa43dd17e08b0fa8040678a9abea7dd3ede0d82e8d7a71a4f6c50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100984e33eb3f34e3267cf70a5a23b8b11f69879cba13544086f0a845811a8f4434a5939af03b6451f8495c2d823b4e4bda023100f3838ea685335cf22df4ecf2049b31697c6fbaa5d9d1e51ac011ba8a1e6452f030066ffb6c93bda6a0862935c8ef48500302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303b5c384e0187be58fe0ef87f31f06ab1ee9d8c1d80c107822e4f99d04f3c35f0e4e0785a49fa19359dcd78d5c3cb49cc0230356f3004741b31207df9f96af936596aff32bb794f9c09c05e06bb602d4a010c491370fbac71b1f9e6ee0787ed9a6b5d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c8d7d8c26e8052b7c5d56151f63ab92a4b5cf8cf15b52329700e96169f777fad219fa3e8cefc8835f510659d40dd18170230205143edeae510a35a4331ddbcc04689bb41ed0bf8f6f010c4295aeaafe431444fe05f5293fd4639c67782b85b6b70d80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d1cceaeafbdf56a3eaa2ebe6d5adbd6f1ad876cd25e4b99ce7b5b4d0b8022192abbc4864a207117b5bcf9cb6035c19e5023057ce2bfc32330fed7b056893a577520197d4b6781dfc25f2dd1c9e2db770caa1c10f2b7c9882b84251dc481e311d26d30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fc02d8584a937ae91bc87181ba6f1707d64497f8cf369f6e5385e4c299c43f8cb88139f6d55bb3e32363e00fc540bd21023100a319ef4a27ce55eecd640b98ba87114f7d3c5532c8196555a70efa91e6899bb4618b00cd007533b045074a40acc7689a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305ee20a65e8a11cf34e3d21c35626ad42455e1ad21d1fef2d3bed384a11c9df39d4c29335796f25233704cd0fd1cd4e2c023062f2d4aec5c5391e71e329cb496118f9607f7f4f7cfb3314e3bd2f7fbdbae01ffedf77e3a175b23f86d6f6b6506270bf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100988382f163be1ce01f0833f8b972e7712189971a47346b87a48a2550826639ed3d63caa814a02d5598a873340a80b6a3023100b6872c2d60d7942959f2878290516738b6d71a4e6d6b6723fd5ec482371d2935d31299b154cbe4cbb9d0b4f8f75c847f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306ff435c82c673de0d70b98794871069427dac80500a05a5ce08f31479ae6fd4e6de0d3380761886ca7012c922a15d56a02303a133adb91ba8c87be47e3238fe95974b66082e63bd92d0f1df16c780a3148dca7622658d232d48adddfb7fb53273f890302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f11f251191f384dd16393feed9d8be9b969af8985c8b47cbffe0a81a31c3c14139a819e2abefdfad30502297e9468b75023100ed9474b51bf233d6d6e4650f4fbc93a7b3f93f52a17ed5652440714c79ba8b37bac70a470f211dcea001cbeeec262f150302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023039ad0b13b2cfb580bfd3ad59394e78981a6f535add40b6671e9f4feda60a9db90e70d772e6132ccff3c2a994515909ae02310099f32022aac0b73b7a857a2aede81cfa104194887d57537ab56c74035014cffa9411a270eaae4b230c679b296e2fb6c80302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c5c12254f5d24b3a27e6c9c4cdab67f97921455419dff441609d21114559c60acd6322cef6b980a81b9347831e59e744023100ed7d4ca2195926494c704e25caef1fff5db432b90f61798fd1fe1dcf07fe8731739db0d978a92551333395bdbfe340b50302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100dc9e97f2df7491b80a728f022ac182f10b1002cd59465fcc957088b37b3e1d9436fe3d9a74a5a47e70862549fe8069e802310097953974866aed655af2a3aec6f9fd3bbfc0110dcbb8b5e3203961522df57b13aafef8a4c7e96c6e60fda81515b3db950302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023042cab011818608b3d1052b209705cc325308e6ee44b02f5239ad1d4db0138e2211e2e7731ecf63c58c9f2efd877c3d4a02310088ec0d23cae7186f3e60d62da0b1ed98487dc656c6ea2b28942ac448b525f8002affc799c39fc80a1af92c5b119fdc760302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fe8f7df6983c5f96d77b2d82af27573e67a6ab7b6f692652cfcf1c6522f19f663e565f4cf60e0323d01627d5355c9ea302302baa2a7d37dc9da7074c8ad9710ce6cd9c850c88cfcc31357e190f42e1dc9b4ff2c4f2d63a7caa2c4b78fdfd58c4cc4b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100c70d4809db7cf8d9280b69dc22a17647329807de6a230324e555e26e22ece12389254c744cf0356e7fb64d41533ff592023100c1629ace1539beccea76cd4f2ffc5fbea078ef9c72390943642f8833b10a441ff3e2101bdb63292616e0179a886cb3300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230672d742077fd61d6d00127fe6cef3da85a51717241a381114961d370303fb9561a16b5503871b0ab617a4e62872102f8023046295d6a664ecba1588770bfc8f591b67c0b8905dde22adad1f02f77ed04e887af3c6919a1e3f09c133a2460163f62b70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023007409d7d1aa8a469f0d6ffd96d3c8444f0372857a43cbe1ae91eb17bd5003971b04c88a83df0bd0fdb2d92621a80b60b02305230110eff806a73f9ae4350824c24262c0e23bdc824253fa53d95bc30627b78acfe2d6681b1a39751a7e09f3300f0bc0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c7a8329a4c3cbd3c5679d4e0a8b9990dfa5582c79380dc3477cb3813a6b15f7b700624c7ae74501c7dba2ed35b30e72c023061527d5b2454a81413931706c8f06a192341a7e63c9c9b485fb6ed4ab8bb604ea6b3e1479bf25ab0508971c37ed59b3e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502310084d85e5ffb8c36bd1d95989f0c009f7edbebadcf65f7becf54d106fd4a5bf04c9accd427d45cfcb9b8ac3c2ca60f3639023007c3f49006ae224abae3a732cba1444f598c3a8f88f18d5db016cacab05273826ee206c467991c05499e33749d175e040302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100f0ed0a4561e6e6a06ceff70592ff1b779c130649ea762cba522013a9e0a26d0f177ef4624ce6b7f2846f6a0a4765cece023100fe5e5578d48dce3bf9ac506694af4038c76fd1a7712b55eff6b4dae8ba0c145769e1b4a39cc48f672772a6aac56bfec90302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306e3fac3601a914c83450f3f8a4e920262369bfb045599e9f4ba7b1e995de11982e57c401ca041825bf961af38ebdef7f0231008ab20698e6bd9ae0a38701f52e83067879a69498918e0978b8064a206c163eb754d6995e9a1c307ca2ab8dab3377062f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502307c5040effa0e2f0fb0956a9f48025d311a253b0808fabf93d7419890186a519526d870cb8826b8c0be3f7d32487ea598023100c303ee1f56c561f9d2bc3f1b3ffa3c6e8d5266382abc69ded7640a3994e5981df4450cf1bf852a2231aae59dbd4c64190302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402300c392e5e2f443e3ce46b80f43b83f8ad459b6cd9f4b452178c8e08711b77b2cd12562d37ed18587aea3f4cdd84d78fb702307cfd78930a4db3406f4dcf241c547db69cc33eb394a4afb7b33c745a974262d340617381e651a052f7135f82d14d50750302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fae3af9e71c49146cca7691e923b1d3a7f7dd3d6be9f123eb699963d36d9f85a510b3e140aae7e1c756975695c939ee0023064a6b36b4581dcc385b5766dcfcd5cc2a179e644777f97ac23fa5c7a73659a057d4203b8d0ed0fa463d0a93a000af0020302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100c6b6266af128c3b3cf3df7d582182c745c874c684c4a0c01f4273fe2e1eaa6441594acf5e371adfa7029b78c33770c660230397ed3075aea93552c400ca628a364c46ae61eeacb13f76882cc1f5beb4481836d110b48e6d58fc6966485574d9804c00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fa5f0b5d18915a917cac1d0d5c03d992b5e26b55f7f8c01d54398dad197a0048216d3b4bbe9b9f9d5fc5e3da4f2cd052023000d0edce09b0d3e81e226ac5d0775093d8ba3961edeba7cf6188974e1dd509422e13d88086e681240afec94ec84ad8a00302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402305c2ec2bb5a3de020b2aaa77bb678bcc2b047da602e2f530a64cb1b7507dc9f6bfc06423c886a32523a27bc94cddec5a0023029e99c653ae279b7b625c07cb075a8b33c35411f3446a3b7caf67d3f25586ef165ce57d885fa9874eb2d610d0ab4377d0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f5d7465263111680e105ce053a27a9691ce7de988b789dd5f87fe52dcc0205e591d15dfe35a3be3ccf9004c75acf0bc602305d47a579401125c293b89f85205f8437c492e4854c802be03a6bb095b661f5e5ebe6d7e7495ee09064b9580ece101a730302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100bf0837b0e938366bcd07be96970e185ad66ade743b99687d1801028909b18b03ac558644a6689d5c117c41036523ffbe023100ee216a2e3b81db6748067aa490f533a219f1864d77c5e0eb19ba852a33257832851b30d9f575937917d55073230dbd490302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023024afdeed637eceb3cc26cf5fe6140d281e7aac540430ad8aa64062ae634fcb489a63be4241a14e68ef23def87e995cb9023100df87cff7c0f97ef3dfbc3049046942591c0451e7f557ecbcce21863afd07d3a1f9cec43b189ad931d32142227ce02ad20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230599f4831529d75a5e937fa6a3f64acecd1e252f17e2e85d4fbfe39887ec5980084d2c1ca2cd9e50c6590cfef363708d8023100c349b6cefa6a37ea0cee056da6cd747938c2bbc2e7089ab418ad5988cfa113874f705b4f11b540a11b62a901e185c7920302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230085c4d61f7a667b2c00a3836ed69f9bb8b16f2b02c1a28f536f721f8e33d0508df94daa3eb8a86107bf44b2193c2226302307269a2007669c98aed5ae169dd6988a78b85a8d526805ac1404dfc54565eb425735f9e4bc3ade9332b335e345dadce5b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310084731e1839048aa8db626f5b207cd56eb5f2c19546da26d87d6c4ee8a688da4033c8a7095aaecd0f5a83d6e58b363f03023100ac7c2a7867827b7cb4f278aea6137c6c8f1b3847f7dbbdd09ae37c0733d2ff76f02501cb0b2656c55ed8c17e3b3cca440302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650230330dbee4d0003ce66475c5dafebc940f62f6564effc60f4933ce73d936b74eb76a4fc93487f948364bdc4e02a39528b8023100abe33a0d24ab4fbe972f35e566ac7c4e384570e6d7f223dbe3e1a6bc2461abbd891e2d28493ff68a2443743271d408d30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100fda4f27dd23ced977d1360cc47ac980993d9784eb9112caa07c7daa75abb6c1e83a45cd8765649eabbe85078630729b2023100b04613fa25413f44a9d8fc1699eff12a335da9401d5a1af2c743e301f0aea58ee7d087821ced70e53a60dc19ed5bf8d10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230274a39da540185e41b280b1e630708b941028d7682d008d3436d7cfe7d78afb06d7e17614b28bd51ed1e20d906fc4d280230602f50284af119d068881c18d5c687ae1164eed971ef382b9ec129e0978d2c79b57587be42052d91a3dce3e5b6b557680302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230362906ca01920c0e48ff6df75eb6dd20475a9a69777060c3a4a0be3fcf194a168b6fe23a90788a4f9d92c9106b82ba820230432c3f194c2141d3b02890bfe126ea36a07af8c592e597d6ad5c329eb515fd6f0b8f85f310e433573eb9397ca1992fa10302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100a2dbad67b5531b9ed567b259c66cea34bad20970e4ec81d3892280986325eb0c88fecb7ea28cb70b9dd29d44a450801b023100f439930b824e37e83eaab68517965ff255f76a421ba7f30f052434d6cf84807edd1dfc3ad7e757ac5664572ff333ec540302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402303cdba63a1fc9afa4bea75a0f41a7c7baebbe63fa649c95c3985691593ccc55768a37f06c25790fb0136a965b078f31d00230097e3d7a1a10065659e275413f1182083261f0249c706b9474e116de8b4916a6e69343e8d0b3efcb18274aa0df4c3b330302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310080661ded08959cebfa20272e3e860f0906b92406fff75cfa1c9a1f58c52229f141d91db07194607a4fb6c4493af7bfdd023100d202334af3787abcf12b746b5f414e6c1e2878d0b793993e17e61930077e3465b294f27505152d432f76f682e242acaf0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023025eda6e23b209fe06b9de6cae9f876df0fc08e4c5829c1df130013786362367a26b53f15e96a1e1ae2d63ef57623f7ef0230583cfad8bad97a6e0b89edbf40862bf052624aa1da3243d649ef135c39233c871adf958e935e90bb9cd14ffd6729699f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310088b6806902d17fd9a816ae1d12362a1b2e8c41ffab91e198fbc7152b5351fcfb12d92743214cbe9537fa95d21d41f09c02310087e1004aaafc9b0ea6ade7f80dd406551831fc391f2f080c24d681c004e67ce37550cc82c4a175ebe56d03516741b08c0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023073d430b0e4c0f7d51f3064185f36f61d3da03516eba3a06f4a866946bed578c50b574309cffe9876933fc76fffb2c55b023100e2c4dd0f103c846356b7525c0fee143ff3f1c02f3b77b84e750cbd6608cfc0a845dfe73ae1ca438a3ab3c73d580556f30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502306959b13ecbdbff0bd1412ce27167f0a79ae8e361a655ee9964ddbef28a089d103930725c0646b1effcd0c0690c751ba5023100b61731cdf209bfa157073e0d6543ee1bb26563c0d3cf03db59ff76a891bec3f4537d94f919c16b8361c5d58f563526c20302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306859bdb167805514c88918482cf117a653becec3a7ba48cac1c6c0e884a02e033aed5512f365da5c1da21f950aaaef2c023014dc80b0c35ea7b09b1929ea899bb94d82bf568a555f4c2c153a6a6eb3ef3ac48003ac774a772bf02b1a82923bb2263a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231009ea9808c5b00fd10c4fd36fadf30e506e79974acf8ced47b054b25786a3e886e55f22f4be9a0877e3df5ba0e15a9e4c702310089dc13ee2fff6d2f57a395bad828532446e0dce1912f393e35485b854dd7fe3132f02a0998bdc4671c13eb5a95ad62630302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d0729fe91505560cb23e139f5849a35df748c685b039996466db122e5ca41d01b559e19fb47fe06c9d400fd969d2484b02303c21ea6b8a53b20a06a357daf001018b676fb32a79588336f71ac51fde60e5947b773bcada030fe09fc084f85805ca3e0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304fe40d9e81e7f814f581747df1b61db79ed216a98a1fb34ed79391f57b77850ae1879dd61bb11f4c96fd6345f0b380850231008140e6ff407fa76db4c23baf32b5d4e3d99836e600932ba6d3306c6c041fdc1d9e56ffe9e58684ed79c864082779b68b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50066306402306ef137f68feb14b17f5851c97a6cb960dd55768c5dc9708f4454736b97420e5fcd555e5ec1af044ee1951ad0a824bef9023071bf81e72178e08a177a9c426a2f3d309e66cb7b7fdfbdca2f702337fc9a4fb775d3afbb00a6be64f38145d322d3b7580302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100e807066f5e08de966f99e9a3066543d3e0fd358c95669765fd131aa3ed7298b77474228ae0a3941c70f60644ad331260023100a404229aaa62398ac52e1f87c1b549dfac7c74128535ab64b8c3c7bc172480835dbd28f86841bd8e3869ed7bc1e743580302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023041a9e411b92afdd2e0dbeff835311147882ee27c8d65e096fa172b208ed0b74967badea6513e865e60661387f82291e3023100999af514bbaf5b4636c8bfbd4bd6fc1608913d8827276fc5c7bef47859f052aef915f01078234e0c879b2ba15ca9a38f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023010405eee614efa0c3908729462f4e08f584239cb1e5f49e6321a0b78fdcaa609c8ed5d6e7e508c671cc1d6a05567af85023100a475d976afee0bdd59d916cd01b9f362d345e747ecd9a1d49d48a0531bf3285b05df5ca1e48151916e14ee35b767e81f0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502303032b8456f1827cc2b7bc1eb8fe359fa4122d1496cc02cfff521e7351ee68f4a146d8c6b1d280723604e2dc3dc5a3a28023100ac9cd0c8586cbfd5c80d1c887ab048986f3f244756d430b5bad2b29e519b5300e3d9805b409f4f23a8472d45ab2e086b0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006830660231008e08e6afcbd2833cf0a0d6d37553bc56db930c5f5784b86c70fbeb8cdac5c97dcef138f77e3dcedfeb4c6d7e6958637d023100da39b143608c07e9fb0594543bfe8abee1cc9a44a1adf08ce4874839e7a49abe964b656355d0567e85206f79c597abb30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502304c6e3c7300f435f26a80e53e9d7771fad0f9b8e01ce45dc2814486dd67f743d98e0dcd79bf6d224b7fdd31645de6fbd70231009ec44cebbfd6e28c68fe5bf7c43f72e867d1424646c2d946ad23a8572170f573719df3553a44a3ca12ff20c08cad8f040302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100fe7220c8be185ed3d7988d041a1f31163c2fad7c6429d8357b8dd9280a5563788c7f3187233b835511a35694665b899502300880b451d4462b168010052c041c4059127fc833c8a32a68082381ccb6e8a1d3150ec835c6c90f31faa74d9b754480a40302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d7452450a34f5ab9a82424d788afa08b05d8547f0f13e712aba8f1b6f8dff7459e5a2013bd72b433c8e2340bd239077b023100b2c3425a6ffcf477a3908c17989a8bee3ac69ec064b5b7d08da1f55d20072437fe4891b7b0508491ba3aa31fb2f00b770302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100d55f2b66ff893bc6555d66643daff0a1b6ab19f633ec8d1f9abf8aff7ed83d36039578003f1b1ba84912e5a46dfeb97702305003379f022336143852514572aa8aff50696a322b016ea41d62edea5ad300fa9a4c50fa64ebe67a5795c3666a11bb420302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500663064023046bb41d13c8dd78e854d215e4a194bec1069634b5973336a8229b301af3529bfec80c35b848bca548d5ef8cac3fba941023055f9ef9b4ed7d4565dbbdee2d013f0c51874e7e02a722412457faeab0319806065d8f27313e1dbafb50428be238690c70302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230695ae2b4d84323d674630d1f8f24fc736a1648efe5d9f59314d2c9df493ef297ab8c2af713ebfbb19f658a56fe9118cd023060a45d0b35e031a1e8af485cf1b9a75ab4c3fef850e80687bf13d69dcf1da72b287ed8640feefb9be4df7e4b0b783f050302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100f8244a4fdb37bfdf311440892cffe1dcde51267b50b6bc98a02a20cdfb0a7a57746df634423890d7ef7cb5dc0296cdf502306d242106ae41d352cdd4b9ab10a02ca7e54cd07a5ac3898d571e20d892a8af7af21c56eab09fb51b150660cb984b38260302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023049090d3e96bb9e8ca2d4d1f4c9a20ebd89b4eb5c80009c9384796c34aa6894f24f8d82cd90d571e41b5d55ed85b47c5002310085ce8e3b45828b04a95bca6883713ae6f6c81baa0b9a4eff8c9b1f0c73f0bdeede1ffb3a7daff34f073a8e5244bbb0810302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023070cdcfbeb05bfbdc84ed00fa39ce1b076c8582fbb78c3c70073fce63f862b36aba4b87456e0a6936209fe37f12235a8e02310081aca49a4d1b9d844175302800ecfef4665f8a1d37b4da5d242e81d0895c983ec3db498ab97d191d7f49acb1a27c06220302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100d955596e96877ff064986d134940a7a40cea5bc1588c17b9a419f19d075c946148d52f1ca3c06e4ae90adda352270cc00231008dd0f9aae200f59303786df988b1284240fbbbde6ac74b56c7d124a869a46f70e3c2e7f639264446c6cf84173a622b060302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500673065023100ef5b9afba67531b60e0a8ec8a922d58698b70e50e2224fd954c67391e414472dd05db39ce71487ed01dac7fac486cff902301f170970fb010459c3fe5c82e8e59ee2d3ccd32b400430b93042d7dd7e869c451cdaed9c1022db71a0786a61e4f3fc380302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100b5d6645ad4eaef4dc910cec1d8d7cb84ecda4e4894b290570edea88553d2eb09d606028bc35ca8bdb8e80c3a8a6cee6f023100ff613c2109c8f6647a9518177438879eb2ebf783a2889b3e1cf479dd1916a09f86773dadbe5d496dc9ae6a38317db8300302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006630640230619977937dc9b2319d8106f9f1a3ad4984a4d1d39f9b546a2888ca78ede5293d54184abdb54cc8f571bde5364369034902304cbf1c9ae8a999d91ec476807e57cc57a27ef140f0c0ccd2a220320b3b03f3c15611f45329e272ac5c98c2989ac0e0a70302047c435bb50066306402301d58b888a9d5cecaa372214b8b6efeb88d6167854904dc8c573522b19e4b04412477e721f7217d6eaad5dbeefc76c501023073c974b32bf0b431d04db5851dffd02a71c5726c45397896bd3130203242511d512d454972e3bd4b4dcd7385fc0493940302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb50068306602310086983c115d11f33a6365b06e402c9ab07511895b21039fab29deca7143617d944e126d63f5beb1181b093fd2eb3e450602310098427d726de9dd75b4964722af70e7ceff1516822b39ee49ae29c8a1da15ddd743c33e3468b228b0d785081c9dbcedf30302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb5006730650231008678bc4243a310e9725aa999d46c70be147ecbac87b4d01ecb6311a21677684245efc95ae4fceb418da420474b22d08302304aa34d2d5b38bc665e60f1428f08566d720c92803930638d14abcd8d8406d622ed00cd5ed50ee3cbfdc3810ec3a106eb0302047c435bb5006730650231008e8a42c272ce7dbaea74da0669e13ff982658428abccc8885583d75fc2102e61ed03d0c51d15cb9b9b57928deb850e2102304d87d240defb938d7d583460dc43d74c55d47c6c7df16a0bb23b029f39bb5dfa79511b713073aa5f9f85a713b53370900302047c435bb50067306502302a94160975251765af42782025bad21da221aae36380639a1dbca0aaf82d5e345c39a1eb7e7221c44a1037dbca9330c102310093536203902446946df96b5607f36a4f87d1805f842e05ffafb1ec99c26ede1f1c43ff443584d61c6ef48dff5c0fa18a0302047c435bb500683066023100976db543bae74d7c47e30b621cbcaa21bc4882e9a64644c04c3ab9a06e2b066ef388369dc6e7438ff971e3605bfaf3cd0231008bb82e5067edc3dadba9fc0160539b143575df45f844e4e821500e93dc4cd2d4fbf9f434a6c174f950d27c7b969590840302047c435bb5006630640230765fd5c49698fb9914a4936d790d2a10ce93d137df5f6c4d78525ce1bb079faef287cd2a4842a45e7ac28e67b0955d6602304d08bbe954d8bedd3283279499160f45dbac390ac1be9b4c52e4e0b4e86fdeee012096550efe9237cd7e5cf9108b82250302047c435bb500673065023100e70009850ba5dc69488b6125aa5d153a5f0ccba3d5fbb9c5105777c177d0d4e8e4c8e9c25930418478b068e70a92edc8023030479789e09e62f29951037d55441bf53824e262db983a559bb8f3bc071a7d8c6705a3664e20c2ea69cbe7ac109fb1b00302047c435bb500683066023100fde9ba406157d32b7233f01251c3992e279b494c423426ffb2e28068aed715c77727755eff8650fc27ad44dcce9192d1023100b67fc112984570611cdf86411996c2abace82c86c767b2fd11cde3fb18de327c0cefc1794eb65d52f12c8622f77fe3e6l㐉e8_W U]9#qP; r;x3.y/{Hd+ kWB4Zo:]:g͘:9`-ȳxe t@ es -(&ݻ-["XT1\o8]@C3)FoJW3i <}n?AA󍥣j,%X RS',1Ij 頹^+aw;3z81ᴱguʈ,Dݾ7}>@x([qx,8Tyu)woTŏ%v/a_7SHz.@wfݐ.gI֞gSO _ɔ ^/=oϛv3YzF$#6?F3zPs4/m*4>p>t?dd  b ? RlEzEz Ez .Ez DtEz lnEz |EzdEz$Ez(HEz0H(h8p^9^:"k^>7G7EzHMEzIcEzX(Y<\Ez]lEz^7bEdqevfyl|tEzuҀEzvh)`Ckernel-devel4.18.0519.el8Development package for building kernel modules to match the kernelThis package provides kernel headers and makefiles sufficient to build modules against the kernel package.e7aarch64-01.stream.rdu2.redhat.com;CentOSCentOSGPLv2 and Redistributable, no modification permittedbuilder@centos.orgSystem Environment/Kernelhttp://www.kernel.org/linuxaarch64if [ -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-519.el8.aarch64 && /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*.el8.*/$f $f done) fiC^XF T=ӐwUcn<y92%# ([4 8!Lxj w H} #n 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 BG 1 R#" 6H(;n=XYrY| l2%stR3 Md ) w SF   f.0i:hX6Ee[b/! 6k/-!V&,\d7 2 7N%)v ^^?u<  l = s i6! ]1lw I D3 3@ # =('+ " #!&' !#! $#%# " " ! !"!Iw 4C}Eo J)9 | 6 YDHL\g8g6 4$,l 4:]<e M% _^XRJaCx 11xXWU3^5KxVPVVcX e7\s>FNBa|}S > 92WM_o#3sXj3{j_w:Xe cqknH~ "ER|3.u@@dzK~;yb ap{ m8?6]]R<<q yK< aX=cZ y jz'^}$m kjr&.<KJ Y7 R 6#|t5 M[%+TJ=K =qk  815-xn#,Gj]nk C hccso$G+gT E d )2bcNZ_|qEXLUmaaa"af; l9G&b&[$!a h;r 6[pi #FQ;" ;i3leS=14j Qi<$|f/x[X[52u,5'%`%T'%<!gs  *C Im9>/#Lk}Y&nCC (aR9M %SFe5l B.IXo$8[? %UZ+I 7B3 Gr3VW;2 fKvaMH6q:O "2? ,.z:i1yYtX/; aXh-[A?tA8d6?qXk`%}!(\'m jA[65d<\pL/kg= ']'6 eE6>PN AP{ a\AKGOTt:K ~2 fD*`OJLi' 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)[KU?=[]%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]'+.#HD/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#^ 'I9p<]O}f@nzSYnkQhLH18 hD{WMhga-/zӫ +jqF 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@vSD8 {E+0=!x3/gE j A?EBg[AVf ^g&GpV+[_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#CAvSYD/-c{?L3IwW XR^s_$GU /S J#57p'$_ +:{XE \ P@ < ")" X .N0_^gd%q/Vq^!  o\2V3O L0Yj4NIt =L6>Kp4 6 2/P1HC^P:I)"./M N| ~ { # j%}j?=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?(0>@Y^-$b    [.0n t^q-"b [ (>6 D_S{ t ".& S'  >   T?(&-P Ol/ 0 (W/4Y/ dX+ e<Ci5Z8bCP 8S X %>Q;*#MjGS6 F6 W8+ Yte46} DI M#^A"nj'(!H9K+> $:K/.ipN`bE-GLh ,;:#bk m|@ /%$) 1# k+!K6s$ xS@'m*1AWN d:tNS ?nc=.]}^T];fO`  UF23#zX + zI0!8 7A 0 i=hv5 I72\  's)=+%U.lL yP ?  (RA(5H@[itZn& `| + e f .!&2J:`-< Z 42}.@ `?Y f!29~  6Ez1d ;-#feJn-q+$CR7M?a=a+)Q [oa! PjXv8Y[ 8 PM  41~c= v< 31[| { "6KS J*3]cW-1 r C!3 !' _ I/  K %= K&v.m$s }i)3#$R g.Jn nqTQ 1 Ni|!;5-~ AG `}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[u% m#tJ0  h &+XNcB {( K 2o.#W[ bO3|  0w=1; $)&! M ?5xMmJR8Bt f{*21 K;A)S q љ!6;j0u ?)16G&<[R("  B\R @ c:uI5 lr# )yLH4(1  MfD  - tѻ4*p& f + 1\4k w c~P*G  X f** mL w { 9B \ O vGa9u<  iMPh>dH+-4 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./jh@ 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  %4124aZ "/&D< $8 %\*>ao );&_ B8[ j_ +-CSH9(,W{I,"- [EF{ZFh$" 2 OFyA-M@S8D%8L UOB Y,QORb7FS pd> pE5K&_T#-) )d$ J<Y57TK/D & 8d&3 [ n^^ \^8"w @+@  cC CF [a ' Ic)F) %rW+$ duK6=t"|YN <{ 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 ~:M/O;<`k7$%kLN mYV"h rRM l+ p!4 k pN.%@s6 $ 3!O`|,E%  v 97j 1y Y$! 6-6&dV ,R 5x$76`+ o"DSWp%A*;97T~%=E:;M-Q 6<;b :?6SN*& *1 Wy ^J jQ y@Z  z']RNU jj Is'\KXa#F"x> 5y(0a1: J (d }fB-;_qX-P*z,?,W $9SB !  WRfPj5JE\I v_D Dw Cyp eSs @a4@2O%$. $ 9&%0ZBLa N0i 3~ 5 4~8p z 4B  Sfe># ]{5}8.Jg<3FE'4 #-%pTY4 o-' 2paD{|0:D4 z4u=+m[=!<#ypF:l9' "  oo ) m1`> v(&-!^   N@2':? xi Pi& _i/ &'$ k.N dG$%M/C[E - )u  d 2M'A.U"&:upB)64u 2eLhK"pH ?OWRy\B̞  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,cW/CL/o ` Rp~ H_-1Ea  I>lpen&m .+)^ >W!#T:38g`/K Ya5wr e @n Mj=O2L P.s rel|f  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   lt<!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 3$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{ $.] B] w67i4y  LYEz: ` Jp+)$]sfk 6^;e>;Ab 0as Io<ez%/Tfy/~ e bZ`4  X 0yUv( ITS(Jnt1_!AaQpKRe )$*")y#[8X&<Be)R]",Vt̟"$b39n%v2*sS: *z f`!+ |Ig L/$ ]$2 , 4]8(dA%O7;A-/8 5!{ :s%F $I F ZC O.PH Xdr$(;orV&} MgFs  _ j(: *$!"3"M!bU!VI,# h Q3"D  !*.  aVB^mSBe1BicYW72J/ %!  yZ ]&;Z 6-%d) u#| HV=rdxh&C d*>= e+#G xmU8;S+>x@u/J\6"/O(KNUA- SC A !BM Q! _B`z 3h#( Q DOl}96  d/4. e_&' / BAIkon  '  (d 8*X[&= 5 2.vB c@h "( .wg , I k*< +5k'.s#}6wW[i>/7m%42|1C I]e)u0:L' lrYHE WS>QW^-]Z8t) | Y~z7zYGRDvA 0:y k8;@ <4  %&Q%)pLh1U^r'mz-ap=gH^o}mW | u!% G~y$ wt [>K( YG0HI0H0 X)Y)T ]r"Q)lAHhpS2T!S|<J_P&wd  zW}Ed8a er<VeV WX;@$6SJB$0%)A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤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큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AAAA큤A큤A큤AA큤AAA큤AA큤A큤AAA큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤AA큤AAA큤A큤A큤A큤AA큤AA큤A큤AA큤A큤AAA큤A큤A큤A큤AA큤AAA큤A큤AAA큤A큤AA큤A큤A큤AA큤A큤A큤AAA큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AAA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤AA큤A큤A큤AAA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AAAA큤AA큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AAAA큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AAA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤AA큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤AA큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤AA큤AA큤A큤AA큤AAAA큤AA큤A큤AAA큤A큤AA큤A큤A큤A큤AA큤AAAA큤AA큤AAA큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AAA큤A큤AAA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤AAA큤A큤AAAA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤AAA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤AAAA큤A큤AA큤AA큤A큤A큤AAA큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤AAA큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤A큤A큤AAA큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AAA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤A큤AAA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤AA큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AAA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤큤큤A큤큤AAAA큤A큤A큤A큤A큤A큤A큤A큤큤A큤큤큤AA큤큤큤A큤A큤A큤A큤큤큤큤A큤큤큤A큤큤큤큤큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤큤큤A큤큤큤큤A큤A큤큤A큤큤큤큤큤큤큤큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AAA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤e7e7e7e7e7e7e7e7e7;e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7 e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7 e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7 e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7;e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7;e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7 e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7;e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7bfb82e87878759c1f68cbac6e04647de1acb280f98dcfba037f75ad19d449a4743aeea3120e4f6a7f729af20f13c584a79d9c7df4eb14b2ca01854624d20f5fa440327ef5d61924ff03b7680bea8fe805fc4420ce5e103deaf56db9a9601079da762d0c0339791580e5ca3fc7ddfda5c9867b7bc8c5c5ae477c7029e5533b3fd78b25018cfc30d0878bbec070938b9bc66304ea15da01397c2d445083a47e425d934d3fe5c9856eb1bf99cf60763e759bb2b7c1eff38cd79ce48399c987dee87934353b8b4b0ff527e83d5f523e31fd6ea82ebcceca0b06ad8ae04cbab938e711203d1d9284d3d8db4ea0a741a1b03e300e2a9c812205222e8fc026a458420220a876bf3835fe06ed1dba1e8de3aa12fe18ea0d6ae505090357985cb29230933516f885d0b46bad87679dc9b36905731d6834d728f306848947033175dc228cf2319519ccb40a770088dd9fff78496466e7b3814766ba6f901037d098f8c1ccc20baa302107fe87d46fb7401d91aacdab82e2491c7c8613b0c95031da4e84471df89619cb26525622db08b81f27e7275f1c1dd64e57174c06e7bd79febdd6aec31592a0294c9e276b3d65987f470eaaa2dc024c33977f409a6026185bed4f55b571c2738b88cc09f74b4b84ff494f71bb93b3df25675a48178dfa7ce98244c6024dfbb4f382a643d538fda5df16cd9639085cd64f5877f63e4ef41c9a4c3b7b1392226f3c8f9b858f0cb601c14e0dc88a73e24caa743776fa424aeeb27bc37402e7ec7972924a4ecb50dbb7469221d706b958c2f2318dfe3d4adf23c6da0f2251ca2ac85309fe8a4bcfa4a53896c9eed83fe15e44638a9fd8c2d3c64de92bd5fb773d87e25758e5a2622e2fc0890c2ef7ed4ad61ee8c6524bf9e51fcda7ddafd6c4457adc2cbfb72505ffb25318a4507900b186542bbc07c8b2cdda872829d48a3c9737252cac2c3d060376051bd400edbfa60ba7ce9df19101937ecd26d11cbc0b8ba07e762b5c8653db0e025e5588b1b1c57d4473d4926dde2a151c147968ba5d0d31912cd6ed3f7ae6acee3066a462fde5d1142b8a16ea0b59510c3d9137f5afafc70fe18ceb5f7c8ae27de7088029263c037548ed3e920d61995c6c033915edb772d77604f69b09f9478711f2b058d925bf859200a3eb539894de28ce6ce536b6ef4881d480596d4a60bf3e28c53d0535c1b8a92aec6f1035569e8d5d99533bea624614503b1765259766e469cf6c5e53296d8d45f3bde15d579000aa27234c69e7dcce7ece7b2f76a0683969d5f19ebc4b6f52cca5bb792126483b3b8b75e27417e08e9473eced1c817088495033ff5afce8d9852229d398a081a4baa52cc7c6faec669260c6b454edf07c7ab2c7d9f020505323dcb34c975b96f5833e2353fb9e7776c9fcc028ab726c753aaaf95af857c9ea520784a1c863cd2c04be93d5b3b7a7e72c2b71ce79f44d8698d0392141704a8d40220b1dc14cbb8afc4c5fc8b24f119802bc77ba324e5e287d6d8056192e5272aac5c3cf236d563b9bfd5414a249f99b06d79604cc514de3981f988464c6a856402fa2b6869fbb4a37803df2db4a45a7d3624839e9e9cd0de0f3a4a71efe6ad3cc4171b2bbdbbe1ca4057f1ee8a70ec6f0698cc54b613f13a5b7dee8d5a8185fe2e847b626a96047bd046b1bf05714a925ff4e91a279e30cf4c855898d599c316f557bf7eaf8834e40bcae517059524ef2b4a1c05f86d32dee7c51b6c407532a77a61e6e6a9ac8d9ae9a71c183955a31a181ae2f3661446e7cf0d3c5d121b9e17fc2d4ba5049549331a94a5cdb297c4e17f08e8fb39f3869602d91d6ba45c56f0d6266846d7d73649e4f90b9bb55ea9055cb7fb989a27fbf11870934740228a94633042b9debf4d116cb93daa31b9e9804a50dc36b5d1b9a98d1afc924ef79089514bb9419a40ddbf9e59f91dc0bb81af273017a3ba6c59c894c17829b95edc22f0d5af05d2d5923f6b4ddfc7a97a56d5c2b52289c123b7fb629a993aba08362063e884fad36cca56625fb735388e8f242ecb3efa6b5e3457999e16499191985106db2ba5ed0607edadc1dc3ca059d67394db68a931c6b373598bdc9293fc55440f0ca9aa37f793f9652cc9cdb4a78abca35e1c2a5aba26d472dd5df12dd0ca97dc87df98e81e0cf070489f7683a8fc4af41d9ba7d0fd7fee699b1b1f5b287a4f0b46441e38bbc276584a9422897395149437f4c139951c84ff606c95cb258a810cd68d460472a1f3b57383388c6a5fa164e5ee8388531b08f32b25eaa15d988316aacb5eac25ac5eab246bf657ec4fcebe6bba7e639e3b03d0d3b64b40ddba5857e29a00c9165a607a726875f5f8ed1514f1ab60393b353b3457de91aefde21222f1336f5a8ffdacc410025667b2364d6c3577b5635e971121562bfb9eb3b99e6845d823f649e1203c246c0bf0d482b77041864b7c184c99de38baad3941a1e7b4aeca11c4c37fa2d12e8be65cbf66bc318b6a335521158b230ee7b8e75dfa5de3ffa4e7aeeaefeef3249c7b237c4c719597348fb9c0bfbcd8e673227a20969f3dc5dbd9b08f53a2c8d9543a5870f22c21bffa0ac6a23664905c3427f777c49a6a0ce66f8c8e94d64062a0c9d9b959c59560cfa011c6b031e4247f05e473bd1d421ef2ac855a7758d50e315177e68bcea86b2d2394fcf98b899afaa3614af301ca85900bd5e94921a0c32da3ab29d1f9aa277c91fc76f4a7075a6258d40d13e2e1fbefe346394ded3fca8cc2ae7eed4e0ab7c8a9965f6996fca2827a01426483e6bfb5910e695a97dcaab71b04facd18ecd60cc0e749c91db7638b5a841eb65b95336d4b0d2d34217b18147e344e6b1ffc7abc35e99fb24de9dbe2e734bb3086ff14bf0ee87813d92b32f982f893c09c86066854e5a39398576db00c2eaf8da38150c8b1008664c4e7362396af63ed0fee3633e2131bbc1bd9b1ed865fd62fa5c279edf8c7a8c4548b39a28a54a9992210ff570c5e3fefae68e089ae0ccd207d5203503f9d132d56ebd60aa6fc89bcbcbe529b292d59da0514367c2fa7410b7852108846ae3386b317a38ed57b1afae8fe80e1a6eab67b7a27ffde519956a732160aa3f96e43d5da9db72c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b091b6160357012089ff9d49d4e5b65c6481e030e3e44a7aa9fa2137db8c923cfd0e401af1daeb836ff1832b140f73842686c83a36541351db6db77f36b1d451cd52dd61eaeea7b8c4d953b52eac27c0b16ed7d18ff1ab1f0e9e0cb0c531b4a667f8753506a3a7ffe6910c4a9458fac0732336224d3a768e12c61752dd751870480295e6cbdf822209e231a9a9dcc330e1f3f9d31a85ba6ea1778a617e51c382bfd34699a2efc86726c058135bb47780c596e4bba2e7e36150cdf5c3c8f44ad58a2fb702168a0fa3b30211e339f672d83ecb8ed6ac170d7fdb892ce24b7ae0e6be8819850f8e3086ea13cc411c4292e2372c6c4d78153be10d4b49a3a6d54817aa7db17cba4c54f2c4ac6f0cedfd66a5efb0eb9aa936159352d58c66509cfaa4ec479d2bde838a70ad275f3cba7362a07bb342542ebb197b9a7cb91612d8fed369e773434837d1072f36511cf3169d149b1a56685ba0928c79fc19aa1369af071edcc1e42d288676dbb9a76c2091382d941d81a4390534173a01bab15a3b20a7a74b1c495fa94ceea35a1c22cb817e1648b3cb23cd5a43ce3fe4dbfa482fd1801f89897f6c0721944ab6d15cc810f26e03062cd35dbaf8e66208676e5ef7140dfcb53ba35a66d328915d012af2186ca2970283f9eab6d0058db4227b20260b681288ac87dd7fc264ddbba75cc8b907a68d3903faeb73f0c6285ae2714ca501a5a9338009203d0a85ede5cc2dbfe62e7170dcc7bb41c158140f0f8bc49bc30c85657a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5f61ead437cf74b68e2824fd1546847b4980a12f41086c8383533c3b820a12db422a78aeef7982157b3673603ec0ca9fee565867fbe916936d001e157d297a9dd3c33355e54fa815fed023ff1e795de6e5bcd7cc01554a557a1c7aeae31b4a732c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09581e2ffce95d8e6d4d63f0c2bdf8ed670285d75852c56e6e5640bbcb4dc21e97d8f655df6468490d2fbd7c4c35832d36afa6d53523acdabe7703787b5b14f3a2001c45c6d08eb13141915e9f74d533b6ba68193ed998c6c35cba2443593b3fef881ba17e679f9bc0778508ae05304a2d9781a4065d02fcf30131045c61fa46066b573674703a97a2f3a2253bcf0e6157e08111f4c4f8110ab6987d918eb2dfcab649198bc7b084b6cf39d0ee1fbf9e7b6b32c80cf962bf4c02e6978d3dae99686ebe0eeb6da7ba61ce85fdc4e1c06d175bd2eac225d98f84cac909f15f3b947701a6b64719c1ac7795e29366d0d96bba4b873f936c2ebd7ea55ad3ebb80242af71b96e77ccabc19c609772c574c0505ad472c304776fb62d0c053def0d5a9c31e7fbf48ff91eaa348395b22d842f570cf2e65a3d2c1f23e1a4ade7b4897593063139819a78a2fded30dc26f27c9473aa0b190dab7d0ebcf4d07c8119d18b3b4e3a42ed1cd4ba7ecaee5208d419db9344311079fc4ce88ee02a582b1ee3ee0aaa27ca9bb2d0621b7929156064307b02efb0960ca3d503a534463180e355997d189e801c53cb769d73bd2204e36c4515a693312238f7a87f9111dbe3446ab73d9bd3de558f03b0dc75985154377932f556e0e3e521b4145431f84888c8ff1e487a58adfd4746975d39f40d3cf61ca576be689b68b057fa60ddb116a7484e6427c3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551248c3d28ce2b064dbc323a20fc7db527dd233e6598ed8b9d205aadf12cbf34e867a98ee769795a7c30f3acea9fa4bda3b846bcfacc461c3b0075c7cf548671cbfd0bb41c01004857246a003071747353b9c3c3ff4e59959980944f82e9da4e116f44af2fc552f49ba861e27e2f6aff9a7188098a3262dc1b34f031016a57713e606092c52e52d561e42d22661ab41ebaf1a23bf9f52059f6d52fe9827e0f6522489c5e00f9b2ca77a29bd8a07df20768160b06d3c501fa520ae2350db83abbc246c101ad69232414ab4567eb4c7fac81dbea0aa19f40c5b13999ae43519e9d457fff263f1e0f8856c379e63b0d34f3b45a6baa36a250ada6590961f48d77def3951f9f20027111aadd7d5258e57d2764e72a513612b73b29f8d1b43148548aedea9a36526ce61165286190d31ec5cd9dffdba092f902589bd0895c7402277b35bc9d5a2416e1923574d12225cd85a8f4e517bc05f360b00baffb74cda0ecb24c4b58917adfe5461569674cd4bd3e5fb1c3b789785157af8a9dfabcf645261f4a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5cb8135535be27c3f3bf63df0907d2971abae439f0203b6051affb90e2847c8a5f9e96a0f7838a5298837a89223271c28dc33ee74b953a11425beed7fbce5bb988d5de817fd1f2b6214d389581f02a18087946adebcd792d5e130c24e1c375f5628cb77864808d120e180bcddedf1b24ba7bdbe366a29f1e7e269469108d748db77eebf4792c6b106897628cbd5c63fc287921572a5d343b67d02b9d9e30793a9b40e1c0de092cf1200a2716642029620a154e98fb763ed63356debf7768652caff4bc1e665391aabb7d32b8f0e6ce0dfdbd2e4d6525d77f213f3122d825ca8701e97942c6e62becba36045bb5ef1c10ce86c80e16eebb471672f840a6046e5226330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b092e1ec58feca23fad7159e41bcd36821549f8609e629b9822b7dd541c59f4b8c01bae3ff7d3f08121bd65e5a3e3a00028120fa38e17134194b228ba5f61a5d7e331c4877c641ffada00285181b3b67ad333e991cb1952a2ac0ba99452e22c48e70b5f1ee1bcbb28de35df4aa47377151c65cf75578b0cec72637604776a2d437eff105271ec8b74e1b382003e3117d2ad0becc687985c4c1c0c9c04ba0df73b9266f1251f2a62ab07095b5dcfd9f3871b6f075230a2a6e1c60edeb9cd10bb481853a6bdc2130822aa3d396849a82497c41682a2eea75152c6921d7fb936b9effedfa0765570c3138541e5435716e2ca77cd4032daf8d3903beca1305fca8021e372eff3fb4e6c5d271e792814483138256291bd04975f3bd5ae8bf5d01711d525bd83d3f21c4d36ec7014322624071cc5f50cd5246efc667dfd2aab85fea7213dbe1d2bc57b1f3736c6b7c8da5e63120a73db731e286ee61c8d691cda27a0086197bf2efa9fa8dfff63386b64aadd66819187c7f3f0e97992ef3e261b2806ee2db4710166ec3643f3bfc34da54c91237cfcf44cb1b9c5449d3dcb6d3c505b046d0c2287411f0b0b5af1b9fd23d866f77929e4ca6f487e0fb3f3dafa83afe17fa7e7fd8ca88056dc90b9be5840ebbf6b39ad1798f7340297d2bcd5e71583db489aa88e976d94e8fb011f3148f76c9596b3f4dfbd739ae6ada37505f773f693f8cd8fa394122d4f85ce337ca5f5b9667a38b2a633037913ddeeb65b4d0fecee83f9b4cc85b05770692b3d0f7ac24026a15ed5969ffec02816265107bd712aea8c4375d00aee5734ebf3faaa5df71a223a4215b0f9f33aaff5b6c38df60f33c3330f343423bc0a8dee4927aa1b2805931c1b4db3e6610e7ca9864f4b1b9196a1d97fc363558e36459552c683c46bf7496b93ccefab5300a805f92f4d75bfa9cbbf5a923bb4dfa37cd8c3aaa083d8e6f46cb47dfe5b273581f5f5ec48ba801389bfb7a3d28c8f6bf88c7027e7c2f5c0d63926ca604a860dc18d1c0da47a6fc5cc86605d41c88f9788f5b4e968b535cdd90084c88dbee598b460ecc86512d5176fe94d53924259af4a1bd8054ead7d8fa99256d7f1169ffacf8b089f185a72c2f8882abe4818b7140152df9e12ebf0eb329ff66c8e54409568570024c42cef9478287e3a19b78fc29bb30df5f752545834eea94b617a8b98963455a691ee196837de67c17e0fb2a509ab14e34cf88b269145fd4620109dc791c0d9060ba71ff06392bce8024509f91bf221b8f946ef96ad09120e03cf9f1e5b5c74643a8a0c0cbe9ad9d6f9f1d8d0503ea3dcbcb4fb6419b9538f3cf3b39e8427d9579194d439b82bc09ee6fd7426f77483be57887b1f717545cb956ae95d153c25db1cf898e7f84d71163764903ab8986107e42732c347d362656b28b170c1b6e796b35be1805c2cb59791971cafcbff1f957f1aff446f4bb55b093221e0f9f811feb539a9c48b53d7eadcfed98e1fd7518017da97a061318ffea1eed1efba137b719c02d8eb107f2949c586bd1950dff037375b65e69ed337639a0d62a6a45db7a0fda179c0ab317e6a8f51c750319c8a42cf956b23915f3b4b9ca3a5cd6a7d1583118ee1ee183996589d054b8dd1c2cc75ddf60c2308ef31e0ddbee3e4547afd079550f6ba1930cb028ef90b8ac36e9caf17f0b8fffceca64f1bdaea1c59ad595dcb52d5a4118c99f25450f5f2f0e05460cbafdf479ee3f93341f797c5b2203eb225e86065a99a675c912b1c24deb8c6ae5b88518a66530cfd999dfef7bcd4566296d23fc141dff1da5478c4475ebc25a64d912a265925573ae54cc3891900b62ed86e7f4aaf5a7e8373179980f1595775385a8d02b64cf7dc4b4faf56bfb45c647c046716c40c19614be9f4f63490b9bfd5a9fd913249782759d59aea99f9c47efbe235f7bc07d25f6db17ccd2324d78a983317d4a2ae4ce513827d803991498dd6ad3f897caea1fa7aa24161afcd9bb6687ce8f86ce457ff16a7b8bd0b9ce411f8dda285ec39734e320cce4388430c3df5b9a56ad96a6494a4e53c350585dedb10ef7a87f8bb911bd2c50841ccda7024f0f0c9e0d507c2010abf7b65a20f7f4c2c0487e1276029ee6a9dc29698d26cc8293b059ea89998e4b4936e799a934602b9f8f016f044abd4a5cf6b3a3952f65ebd0a7394bb649587fc1c78e3447e29c328e9c06fb9e9dbb5199f9ffeab97cc48f03ff348baf86dd745ac6a333e7f92715d8baf9c8a9f39e50e4fa7a186e790e82bb296dca7064be1392ae323f1b3a9b300ec0d1c816f8214d1b41695feef5478294870c8fd7c5633b34a567a514ababfcf2fcfcdf231c6783b46cb6328d9bf210076094050ed8ecde8bf92f5f51ec92f807ed2fd61e1a0ed330de8d7ca7936b179b24a5525ba3d61f82091f172ecde5c9d04cdb1961164c5fe0bcc6d8e00dceef4ba3edc4818fa3a6d708287f6ff0105401fab83f2f4dbabcd800629ee21a5b30d934656b77a707ceb0b523883a6013928a91901a70d98c4344c78f255ed2bbd8c9488d4ecfedc42c50ecf96e5d7cf8df8bc25bcc90d4922654a404924c104bdace338ab8d1c122bb16c6dd942eb85db2c9e4c34c3c88fcc83fa92d2a6e124c991a76817468cda0502c3b55192c16e52361981f88d88ef3225450939615177d3b6eeb078b96aacae7abd3c71c8458adbebd12aee94df2f3724aa11faf4bf7ff36fe49bd73d38d97356aabf0f7ad992dbf45c64a01f56d4232062f94707af8c87ffca19e5bfc9f621d25181504538cb0a6306b5dce26af6b81d71433d04da5b3b04130b23cc28051938f6fc0e1cbb45845fabf52755a1462f6df60628a1287cea5568528843b886bccf93429dfda810142fa3a17d7e02d71a2b0140b82e2ae62f6d1a4eaa716178d50d1b0f3194c47f0510f270cd18ca785e11e3b54e585661678faf98af52dfc43254b37bd566a994e307fc09bb9338125b8ae1cc55fad8a546e6832c4bfa93204665a9cf4673386f10c02f0f6f0e7532f8a772153057480f8eebd4aa0c3c818b13b389b4187131d792680322f742d89726330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09cf1dd922b1aa15f94bff94dd558b3d90f19aa827bf78c88ea5a47e234993c7f0238c644183bf69d26c5d020117b7493123b45451800bb02f2e4ec37491f32be3a26c9070e6159fd1b9984b9c5c923be9a81c00a101c7843ee1cc41ca4bdd691538a4eb01107d885d44c4ae527ee558a68dc7535cdc7b5b9b63496d8b85943ca05b3bf0d7be0f9bff118cf424dca0a685458a11b21b0699f91b1563410db1ab16d1ce453a059b15d1b9174dd8e585f7bdad036f50b898336b86eafd2cba0fe3c1aed6861809d72131f7a3ec83495157a54d3ccc7bbcb079cf94201083e4a42463ac71355848bbf51536f4cd9efa05d7fcd5bb1f55163bcdb7a3293cd201facbf597c772e91f106286ded2ca7eb704a32951d96d9322915ec15a7904a059007bc8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555c1ba96f8c127aab4bd1253c4992b27bc04a62c8f1f48c1644f8c9fe3cf010ca02e27bb8323440c05ff9ca7c12eef1c4befd7411490159690180d8dff8d7cd2b302886c44dccbac2bb65fcde830856fce571ac2246ceb0baea8460cbdb8262d5375bd286f47ed4b45faea85fa65bb2c99cc42e9cef50ca76ddaa022bb16b43483f2cbfcfd47566d54aad520e57d21bf89e7d4531340c9a2d7d4be0955505e42903071bfb5f0ab959a57db7f09e7bc88a02d84fc58ef0a07fc8691dbc8321935c2c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09e651c6033c299a7f88c63620ad219b0da31b3d49240aaad819627ed446633708c460fd69a428f81ad0e00688b59bd8ec10edc2ab7847ca2254d3ad8bc71f6facfbe001eb9ff8a51ce65b0ee3b22ded44f8731a41efc0bc150804163f91673837603fb8d2a3a795605c1cdc4f7a3c03ee4548af9af70ec7b13cfb350693965f5afd7a48671c7db4b91d1babf5d30000e17b2361edfb3fd822d438aa2eeb79c551deafca7e71909b401ba47a4449ed2feb366912e6cd009f48d490115113f07b85bca9a15450b1d8368c4f2adfef540749fe232c0f6051df747c32d261b1d9b375e98a6a7a08a4f740f2930538a43efd3d7aa580737f94fc7ece1fd070f22fa75ab9736c72dd808f71721f8a0e8877b681e872f4e12ddbd37412af635722a583d091d0de0eb049e78789d75f488c41bd322b785c02c587504f4de99a7baefb621e9575c8a19a23a88d8de30100895ef78e526e150ef3e3f6632941c503aaa19e6cd5e9cd08e65ede30636c756e8b18a74087362fb0cf8afdc0ec2b1834b0d72a8c0b855309b00451fd1d4981988acb87eb2903ab091f4e7ba266b57f6fddd65d0628a420c46befff6e4b6d1a69745b018121c77827059895dba459abc0bb6640639765d809fb87c1b3914459fd78eb0b7eef53f312003aadb10cd1273db20c9c2a337f37c06373c6ecee8af65f2511192f049a9fda6983460a30cbf066527a95c5569af018b4434e9e0c2674722e2cc1a9bcc8accaf07e575ac7359569082efe2825fcc2e6705a0f747ac1afc89825ef355de382f75f4016f379fa1706336621dc976558869a3776361143f5720277c0b4cc4e92cf02d1b124e9c85958ad5508f501bb6bdc496382ddf07bde75a542e601fad63e78a0c550592ca5e60725112b3d766e03b2e26c8dd072d218a8d0d3081a63c65883546cde70bd14a8cc40d372fb9bd9170e1d9ba59bb5ca07f3e63c351882ea29229cde8ec29c43900d4d6a98138da57ba826cbbaed808a412d6a74032fe25cd326aa1996a84214e59e7ebe384dda3f6ead3973d63778ee11b5413b5574ef2a8031a695ab82aa6cd6097c1b255259cde54050dc49f32095c348864e9b65e66f55f961ac3c5c884ab1f136a770c9d5a8284d81477ff6a54bf6e5fec9d3d2f4043b59ccd67f04dd856787f685d44b0fac7914b195a60cfbd42d867c48abc88ffa07e426e0c295e5511d31fba4f76e076d418cd5df1321d227fac514244d41268ca89b5417a2e0b9f3431040fb4b8640432c10695dd0d2b367dc8abfbdfe3d8166816e749c5c7877c86b4f3f55911825bdf8e82a090097e85ab00aaaee4db448d2196a3efdda1497ccbfc4cd4b4c36250ff7f411721f118d1d260c771fb5dc1b588b43aab0e55a633bef5dbb9a5a068c097b61bb48d37f608d175503161a747b1d82ff60b381bcc0abe11e7797e320632e52ffb9402cee403e23e94ab045f16495fee63b72e6feabe3cfd4b042acc22a1daf7c2eda49865ad3539254bbd74c86789035d194eef7866cb236531c8c060c7eb0b45e6ea33765f1433e2417a425bbc4df24e0d594ddfbb495d4e14491f8ba717072d647c5db5343d17f8023a3fe182576bdb3b5b6573871ebe0717c709a807591555a4ea2fa0beedb19fac4455224d867b5e2e20b861c37327c289f3fdc3757742882578abe56131d7f25ce3fa16b27f24b092e8524da179bb47dfe2ed6c0adfa7b8ca122af945102098c5a133ec6269a2a7f2dc3b184ad86b562ea8d8cf5b17013f2fe97b2093f59b5b5ebe27abeb40f259470453213b7f29c947ed443c39a1de1742a33e28338e6bc8bfcdfe09d6db76e94175d3bca4f4a8b6a518f4ddf3fbe5b6bb49e3b90f030df2e65b31052e551e938870f55c20d29dcc97c7bc9c38388a87ec386d130d1989150910363d31ad1287df84b8c2d08c3ee24cbbaa710ef7cadab974cbaaef2a0bbd824fcce29aa9b36092668aeb897c87dd8c2f824e4b3a02f6cf17896939607580cc0011fb4987a7a4fd0cbfcc1a3a229a3a418eee5a42030061e6f76e3b9cb4f05ec0130ff1d61fc23e80738ee3b1e872fc48ed386c16d5a80983d1182607faa7c9923a498ae0660b87ae104a313ec1607890bacba69a4b1bce31c2d62287565a2689a23fb70681d4298d6636adc59f4c8b5ed256a5d9483d25de128c8f195182ff998fa34c2fc761694bbad0dea7be854c1832049d45f1215d893bd98b6d228cea06b024bd6fda56dc83c6b5e8c8eac38bed306176a3f26b090f6f12e03f405b242953e552ab635213c071b4a3bf99593913c8116455bcb266f3840c65985a2d3b572571531eac253e1122f0b76baca907ff86d1b8d8881b8e78c19aaa4be7a3d83a5e30b3bbb288cda1805486798e78915487018d9018e28374334ddf5dae3f9a14c598dd131386bbcd808df7fd33de5b3e1726952335aa109114922c10f8a002a5358f0b0ff7c396be2fbad937611ab8de36a982dd1279ac45ff15aaa88d208687c91ea6ba9e1c6656e90de25d6030e07be0ea529a2f7ed1b3749030b67d4441abf7beb95e8752961851ccec4fad4827b0ef13e30c7a8d21f07f4ad8203435eb568a1379c58d26bb20e401f4da4351cc693ce7bedc9163df0beafdd4b39aad83e10917ace0089aebedebbb33c6b4fdc8fb5f5d617a6945887bfdefc307fd11dc37665f4825726ca4b6d591a87a26cca945ec4e78959fb5f29f638f146b7602df23f832895f9f9b6012f669a25a93ac0489cb047d512f522d56177d5c84d82b53e8676778dffbb6d9925589417c4f9f08400e946b021fa8682665486a39ff590b9bc35d968c85f772449421c1282b4bb734c468da9c9bbab1c7e115f452050d706facc841a8ce8ebc8f26871268ec058f461d0138f635b7842936bb0d1de5245267f2fe6fd714a0e75d0c946465e18db23b6a4c25f6db2e3ff8a9ddbfe42546fa95b40dbee2c7bac277aad4a0a708fa83e7a14a82f473e7821a91023746e8521eca386cc35270722a39ad7b71921cd46d3f1dde0f04245bb85d25c885272d1b2b9fd88d517c975f5b49b0d6cb395c0069e9a85620f03d868bc8ab8335fd79ec5791e75336eb4338d2a41c140997f2a4f694073d3443dd574000e3b05276ae7484ff552a10ab360e7f78e2f04fdeaf666b6b761a948faa7583f728d1aaebcdf9d00f095a92d310bc88203840e7fe8736c5885fd7421cdbdf6ec29496e2f08286fb855debbcbb5b38e62cb28ea1c228f08aef7c0e321e559e9f5857c65bf31d030c43f238748cf522ca951bc579d33e98b58f8bc7bda167dd2493202e98d097c5e2529d4e570a647f3a6d0804082290601cb3d8ef718170f1702138a2b23f99b1dd0bbf22df30fe1c949fac9ce10310fc0b96a1c53e0133b880b283f6f3789e9b9002a838500bfd76dad553d47dbb556b10d7dcff021ef0ad2b02b156d83425cc03ba7e996ec09ccf2ef6ff3883807f2f28d5cc2341f18cd47312961ac007577a0a8dea613bfd1d7a7cc70ce7d86643eddbe14cd4354318da13b8317161d58b49f1c230eb1fb02b7082efe686685f6ab143a598dd12164c8eed5bb1954f75e2639cf7b6856597a1ab0924d1b4b33c7ded03725f2234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d0310045e06ab1611082e7ac075c20a23394b252f7775b50059661ae55ee7a5aeb2bcd9dd9c2c081323bf7ac5bd329ec2060c94f24d84dc33d3305497d004e76edfaa3c7a93c43018c375ce4da516e66f7776400c851a57fbb4e6821fdb193ffcd4aa30de521efed13d78e80a2eddf49255a4d3bfcbb495ebed22bfa63f0972b34d16a75598c03329db79f534907a07e47806c63f09f2b9da94e30aaeab50716fb7a6bdc0217366b67fd5b9468943d48d582b462fa9b2744ccb79ba24dce1164270bbe7a8a89099795250c3e48b36227c0efcb30890c65eeb563d9d5f4abc7f5758904fe8bf53e78f9b2c809155391f0cc67d4992f2953884ad161c3fd31d1185dd0ba8748c4ee4b756efbd0f98970395ceb78fe3ee85b14f34ee1b9e0fc60bd543ecce0d08feb757534da0279f78d62b4b653d7abf1534617faf827038b51a8912b4c1f18c8794aa56283b6cf55379deb5faa7490ed588e215211fc1d11da1c1d5fcdc6a00d25f138a78314df9f6b4d88c200b39c4e6aeee18fa5e29016c06e714a92459d39cf033d755fe940c3d476d587c26bef2d76c7903e6d172d0c57b85560fb84de6536e3d4c896e60994b8826e64ed1edd50271fe734a10557c34ae52ca947bdee04316e0a05e147463895b16a78cbb24a313ac72f11e4599db712635a00170b6bafa446b9065f0475d6bae305707a08f47f57c16f26eefb75d91d2d7d10b31132dfdb0c5b4177a852e2928438ba8b2042a7ed47c0f71df6e51fb24a0360dcce1a1f1aa954e39e75c6098f2cbec69565b62e6286a86776f3403afd4d2106c9fa43d3e3e8122a9806998c47efdc2e86935e81ffe5ea06e0f2f557c7be333447ff0e1dbf91c2d26d1d37d76853bdc97f470a7af955c806aa9beef933a4d90835f9b13d5e57022f6e8e1fd2e908010b6d486d4e159559d62cda140ed6aab13b7e012540a456d7d399c0de3d6ca56cc63eefba8615fabb5f189c871424927b9872d1f1efb466b3c7228e948aa6258e2c7582e5725c934460ccc2a2d993c64c65ffde43d4bc87acfa52412c523682f32c7a222a96b4b1aba646444e680be44006525a5d1e21730ad7ccef5dbac612afb7b2f9826acc73c6490cc915bc9d034848c2a2e0a262d970e60e201fbcbea7cac82d374ef665da4c666283f27595f54a6d0bdb3f40b3c8f2dae525fda58c3b13f1fe66861bf6d1244a161e71e750e4698917a2b241dcc192c9a79148c06fe60fcaede7283533707233a4feeee0d72bcc5e7abfb12ea595eb6ea226b2a9444a93714563aab08e50a3e98540de50d93499b7696263252a3a1dff81aba75ef8a032bf5a9bb7b0181cd43c7ab5f3a0ff3d3a3a1c40b76e82aa1a8151add9419ed4e5febc52f42acee04bad878ad445cb818b6f493d6b162a897ed72afa88a190b20446cfb6acf9d04eb47ef8e8a49b484c1e7f57f5098d8898d373091e192defe08090c4a49a781ef200857d10c52820f7eeee2da92c22418b6c06dfaa3580a63f4360fdb7145ce44becf61650d7a34fd4139a51d5b4ad65f12bb3c17d4b1884fb8cc437db34f3c4d1dcda1af2de6c8f0d4c066cfc2ea8371d87d365e496e3ac4c23d43815d3074b4bbfc71868c2458ed81fd5cfb4bf79832430f173bac1c24e777082fda453f886c15fd64875a80f1e111abb7f8ed46974f444b7c8714e6d3e066b41f345b6501d93aa9db46a2fcf5ecb2c3dc9eef7a67bd11602f64fab63e7e1399bb0db77d1c83e92feb1677a59472d9df04c417304495f84ad32f4dee0ea42614fef8bbacef84af163ed3f35ecef5d20cfa49c283bd4d691603258dcda5c8e06a8daefb876bc1cf7da98bd93215965d4b960af30efeb697d84ad740aeca6958b42c1631778e05bb2035ae3637686586aeee726f205b66245cf021f6f6ee553607ec455c9da1a3d964e2c599fae69dd9c650b2176875a1cd4c64e4a8337ec301c3fc3678cdf215cf3b379502a50251e6832a5984bbf4323a2081715cf5f589bb0e3d62bb64a12a09c6366d7e5630291a5611451d99046881927dc9d932c1efcb7f939e481baf729f46d4e5a94cda614743922681c01419af0f699d6293bdd51818836ded635cdaa2534268cd88ddab6f5e461f6792ccc72eb9941c88abb1ebb3841cd8c2c70ee22a4c8c4f8f766366b7428961379b709876ac99972e7c763fafdd034ef6b1465b22f4c331ef721875291cecc4fd357d12548a8f524916631b8e52570aa081960d36c3c6f6b89989187d8691e8b2086c2e37adc0f31c24e03b0f0eea6ad0a2eb2fde08bf7a8f6d1abe3c206166fcc4d50407b88b4c1e5de1e4cbca84f7bdbe00757c78abad65997e95ca16c7aad2e1dfe58fa88d2f069eab66b9b4f10c7890f4a9e33eb84a7dfb4dea54642b2d6fc93766efc5884f6aeb7211a047ef58cd9906cefe3a4f0c7db7ab622a452ba750fcfe62a2f2b0207c48935fb3168ff57c93d5a864433e817afda22c3661a072639dd42116bd870a965761709e48b53baf1f45abdf02cca225dc2f947e08ed2ce12d0849aacf9de83c13d811a2b7d91633a22ec20f8a67e9d1af90b7d08c352b43c7783b659e8e5861ce9d8172282b3ae9f7b770fe1e7b361a9a0f37fdf9094d0b2c9512bca945dcf91fd056e12598d5dfaeddb571da9bd08e04a0d8848347524bb1b5b19bc3689f17c7476248d72ce02c283d0168b9f7ea54f6e01431be291c1f418b4647c48a32c3559ddf4e4e11671f28bff4249248d496c84f921274e074ae9950a8ea1778d1fba462aa5d5f8e4f46ccdd3ddc5e7755f7768e9d970b0b612bcdb4d92adc1c453d9d79dc76d398d6785e789af1daba640b5613eff659d539629cec6219565171872598619f524dde627d193c416aa82b9190fcb220ff1d50bd0b4b6f03e0a5307d6800d0cbfb413974548b5b5f2db06c1363e05098583829dd2047c862505199009003d6150ca96a443fdde91f85f99d4f58630c74404b326dfefa3ff3f6b22b872e2dcbfd63f7c969b1de605b756c6dc64d542da140f598bc01c59ffd89768d0d665a5f9dcfd8adb6a4308e39c7e0f6c70c06dd4e19c07fada55b22d709a4f5ce6e0933dc64c67bc8c958cc328024144e12f5b63582742413de3082b0e92fb2d1d23b2c9e2dbf36f3c1427b57d1f8072f540a84e63419a0aac8a94e050ae18b5368078bc5c967a0e05b5f7a44e52eff4757b4f41973e975e689da1ffe7ae7e7031df1e7d0d0537a1adc38f3a1acaf40bd72e3983677a1d43b2999f46f7baf1b67a149dbd8b0d9858121ee9e3dba4cbf2c93e89de04d76341bda4d22a382606ac7f782337858314c2fba139a748b1b64a2ed2dbf71205f827dba1604e7a47bedca71de6ff74bedc09f64633d95634ebff9f7f2ee4dbfb8fe3889219200754292f474ff0f1a51bf86559dbdcad72d14ba8d88713a5aff2b3733e5a9abaa199b1fecfa0c48b77f0eb89a8d35e47d27065a6ebf007b958c62213d7c6c9a94a8058415f7fae5139a0e71f00452cce8eb4f7f6d003bd8021f33f8f34ba575c02527f6ec062c4f63336b3b0d4cc4ddf73ab8b0f35eb3d07baefdf6c59ed8e003f0d82ea2c32f734a6ed0a75de80dae2a330bb174118bf355eb96d8132585739158f359303e944e603c460218d6221c215a021727a12ccb58f8082b843cac8849c2b8fa4040e3f77d1a58acd3ce84784313d9d24642dcb62f3cb4edce40457f5ab6a31300388b7a0deeeb174c7accfd5937dcb0d2be2b609c47aa653655d5ff188abc1f41ac2bba78e44a8cc73744389c9cfb185ec5967e0869ea54332f5851cef7acb608b86b270bf735908b2485a105a2b08591c49b4e992be1fc982f4874969435b799f4a8670c38954d07e6e8aedd222e35d5f99c6ec2d3b65dffc7a3269240652ca3d9562bfc2c05f2b9cbf909f4714314b7cd83b2d141bf310c71486bd4fc0cf985d2794229630ccdab888db97c2b56d2486e9312f6bf971301032224ac3dd12df8eaee9926dc28344eeef2ff5f6a3b2a57e32848901c90b927b08e9274e9f356612d838d54a070d9b4d5e0aa70e174ee63b1afa8056f0f7f03d42219afe1bdf7e4ae907cc598154eea1e39c0406492126cd4358821219a5fb483e827ef5724a9b57f9d37734c52ac2fe0f1f4d2d2c38870bc194cdeaaea4575c0f7c852b6142dea47b2d9bafac4b496b0003ce4701fdbda0471382a88c49b12df071924ce189d75461efea781c48104760762b89d29a44d55a5a7eaf0e047c39501538ba8727ef2a8fb77a6dbdb1d4517b55f7e070cbd25375ff78e7b81574b397b48f0fed86f40cd4233b7f964f8d484d5188a6cd1a10aa156157c14e31b1a2dba7a3640a86b6a632cda51c88a7218e70a949c31cddb7f6ba0f890b04d89dc35c1dc0fb23fa6865665f3dd320a548b05cff38343b5e605f044b39e1051fd4caae8772d876981c3aa74e4338ff57de64a10f44d3883a5cf870337882968bb0e30b823d774e88cccd0226bca58d13be699923162d91c804f668b72cdfb95b1fb38bd8f33251819198789ca22d63613786989d75aaed4d0bdadc1b1f164ed4d4402672612a6e4df704836e748409a14533c363c25d56cb33c4fc87f311a90835fdd0ef25df5b6d9d610c57cba42aa85decb49a307af3fbb90335341adc91dada7942cfffdaaf91e6f951f260e419b9d9e8bcb8bf1f987f46f29d4eef67e2057976282359279199bcc4e02a5148217ca48dd6747fa08076aa5df82f0d9c6f70fa4aa40a0df4ddc30cc4dc969fa26ecca4ee0098aec8475d846ad3a1a30933d709de9df786ffa6faa42bc4e677674f0074110eb68c9654b8909dd767a24fea2d71eb00a9954f8fc7011e8d0b7dadce2237e1747daa19bf8494e8ee8ce3ba00fddad52a83cfd1f9a58467fa4578abbde573735de388ddef5a13ad6c2fc5bf181069e02e9824792a321fdc44b35c050ae75e1ab94afc06ecab023065e633b5f51089ce191615214c369bb2d03eba58a0c16dee47a13375e4cb765eb2a05d7558a1bf21bbe5be82fc1d454a804f8dae51a8da8677110bf3dfb4e55599e63211593f771584770e9e1730b5f0a99e3fd3d0e8c0fa1ba769d1117a144b5340f89f352df0ec9b455033f19c1ed35d88629f836cb2c760d8bea40e37e3474923d07f1fb32180b728989910e140b5f98494aa41b8f8967bfcc0780e7616437a94ed5a5315c5f604dcf072f650059994529798c88b96a631ea2fdd9f0a07956592bda60a97fa8bb7d3270cf8139a6499371da994f7107f86998e36210106749c9801152fb581298abcaade020004a1423eb3670ea022eba8382243b728b44378cdb815ab170cebe9b4f9de96d26cb6d57df97f3be2d000d23e5813f4e50edbc8d6adb3f040aeee4ca9f50c72b3f3b64153757404a33ce1ddfb98aa38511595a15583d7f60fbf72a62108de2f6cc5a98b94063f1561b5b8d8bb8cd744221757425d3ad867e1515e7f3c72b91b3d3e014e0f67ae263271fab750b7d9ede5b18bf4a4d0ae4e3578890f6dbf89c4692d56c2cf3606fe61ec9b08f9bef9ce4fc3f297a843f28c2426b59fe1d9d9527cc25fc6113e73e3b12847506444530f9341f192ee78195f2ccfeb58177cf5040e4bc2bf72111f3a2edaaac10890246e0e247cfeb378bfbd3c89e41c6f0a55edf704b70a171182ceacc4b2abc23348aa12badf34f7b6ca4d25cb4e7412bea2889f5129679348c9872c5ac6048738183d6182209e758719b226e22ec72a2a793b52d03f8bb98ab573d97cac72e3dfef2feebf9dcb9885c11a87b2916236eb6a4a4167fa1b9eba109d8b0b05c6764f13fe729ca87aee80b9aca2fe5875e11262eb8ed3181ad6f8cec015241d86f5604a92910a871402d5b889b795002e9541819a6500571e5752c5501720bbf41f3aff187273fbc12995b0292d2956c6ae9641f7b859dd5b984e2f3684af7f983872b34b168a3f9787150792a268413bfeafe5dbdcbc579911f9e278dd90b5e778543b2bce34d8eb35fa8f8af2d2493cf56843472874551cff42de2b1fe35b24fb794eeba39e70596b7bb065253a8f21dca9c9f0f6b39505094dd6b5348acff845051891e3f52d8903d39678254630a6a1a66535ebd4a0b5bd7a1913ed68d9f1d1611a54edecd61d7cb9ec05a575c9eba5c94c7f17589897f7022416c6ce3c6f518ae7197e81ea04f86ebe707c167573a062e78bfe27b966908bb8d8bc7fbe5212029f12814371a34b53482b5b6623048e61a2c7a8a3e0ea8b5e4e9efec6a4a489f9b4ce7579046bd0d9be4e39f5bbaa4fc5ee671f9246a01a78ba1d2a271615068d3f43ff3200136c1015e99f72d67a88914a82d7d14c094b9c6d2b7b6958f7579168de58ad4473ac957faeb7e98d7c9b151ce36d8721e0e34d417bb829672e59dc5b9a21a4b7ef1c991220234e3d26fb51da000e0820784e2926047bcfe033649565f49bd573da62ca7cbcbe05eb1fc396751d7612c7aafb83cc640bd336eb2369326e60939186b0978b120b137bb2dc6c9c3cf16aa295f2ba7fc3dcebeab327ab8f2710a5b7b728ba8be5bebe5c96d6a0b2bb83d6e890487b939ec0d36317f79c965dfa94cc0011d6146062bb08e1789e191774b951e420cdbe55dbbfcbf8f1140121adbc68951bb7be2939da35e65f353a62761211ce2c53b99ea80e9ccb652475cad08b0cb33a2e7147e7f77ee55d5fe657483c1e0accb5ec66192c7f58dd19da6f1c210ebd0716f6bf657ec4fcebe6bba7e639e3b03d0d3b64b40ddba5857e29a00c9165a607a726875f5f8ed1514f1ab60393b353b3457de91aefde21222f1336f5a8ffdacc410025667b2364d6c3577b5635e971121562bfb9eb3b99e6845d823f649e1203c246c0bf0d482b77041864b7c184c99de38baad3941a1e7b4aeca11c4c37fa2d12e8be65cbf66bc318b6a335521158b230ee7b8e75dfa5de3ffa4e7aeeaefeef3245212170b107c77ca729bd2450d8427243bdbd756dbcb4e7878fb76062aefc8c382ed55ebde4bb9acc70a3745c2453d7bbaceadac1bf217c4109a0b5814c9d7d0676d957b86a8fd361fead416c26a3a1388134a825e44a06dc5c645c198f2111c0e8a7a34e8679f46c9e59f18b3e2b24d82a8006bc67306705ccca8a163b274b3f8a7cb3b75cb59a556641b64880c62c8308099f640c29cc11149051ccbc1205d97ccc134b0429468cde24a9c8afa1349b4b4381e872338fe8b7c74bbd5f7de120d96461abd23bbf2da522822948455413a345f9ef8ac7a7f81c6126584b3c964071a3b9a9d55ed9fa0ee15f0e58bcf066bd1584fc862082a3c477148cdde0d64b1a54c24a12ce2c0f283661121974436cdb09ae91822497458072f5f97447c5d5642952058f28bed9a4d77ad962165c563ff729160442e64ee0f1ff3fb60fc4f20913592e6680e3c927121c6de5674ff59071bcf5b8caa7740fda9425689e2ee436a9c327f7568c64cbdb7f7083365fe5ca2bb2ce3dd0d718bef9483efdf6ae5c1478466e40ef29d7d9ba8396fb15f73f9223e69e40e445500251852121bc76d7245ee3b42b2e5df950a01ce7c2374db7b971a5a4304646d5a4e9ccfa76395ee31f22d5b78e1510bc885571c49556f4d9a7ca49ead96deb0dd22c04ca903d99d60fcbd6c2f3f7207d61791f97406e59efeb90d071c82492f56a386ee54ab8c5edd864107295503e102ea339e0fd4496204c697bdd5c1b1a35864dfefe504a990782ce66804d000472b3c601978fa9bd98dcf3b2750d608c684dc52dd1aa0eb7e562185c822e79d362de4f9f76a1a7016e1529a01d88a7da9552140f666c6a9471bb3801c1b6cf9d36bef650e297aff61dc1cbbb9789d0e667fea057a262e39e8fd4f05382315c0a32fa3d77d08b9c75b190bdbef49eca11f61520db974316ef5ad7b3432b62307e642e300bf85ae2de8923fbc77958556edc95847f347c205524af01bec99ae5a7c73e1d67d33e7e56b18e90417952813c4f40528649e296d7ef067f37ff479b7ac377ecf62081ad12e684a64fdf4bab16de9cdc1e46f90352cbace03e5fb47f217c61e2df997c59e1548a229c4fca514d348b5fa86a679feedee12284b09ea576767f2d83e5d24c4c146d1c7c432cf40f11f7f2f562c504889190c8ee1e77a18d061c00eb36c164ef0f4e2df1de6cc80181dce9446f950807a70c29b678515c2c164b72a070538d1569a09354f7c3aacf9a7184806a953228175db7a41a4e37456429a2fa77aa9523255b4af9a66f5639b89eab8c09c75e79e7fcdaa6505d18e1aa9ba4e973a461c726b7e640f471f0649bb0b25fc8a3233f1bacc52c22478d12fc815d315215e426d255b29d15e26e5f722535ad8ad714d434ee384515a4325315992e61dd957f0fa91f3858fe7c079de59f56edded51de869c6ca9e365296a6b66747cbebdcf76972b8cce7aab91e55bf4ab1f3581df9c2a857d11a8415a18e7a6ccf23640cf9bddf245a5f90c43b3014d08d3ae19faf9527d7b26fc15cfa914dc6e03d976570242ea37377491f3619ab287e6169025df66e2bc44e87ae07d97aa6a00572733f32973fa22a08f2ce0c9ecdb85255c1afe57b3190d3e10f0b603a6a873690438ef191f74245bc7109aa9a0c7525d2cf3b015832154fea591ff628377c8622f8d87a4b673afe06c3d8737d3c1692dcb1e90910b6ca981303acc042195061225039c080c900169b231ab343c7e9ec6530864ea6d9c7f1ca98f275aafe3c5533d274aec702ea6029f8036bdb577b0c53e08f7d91b9471b621e0c1a31cafca4a94dfa01cf27aaba40391ffd744be455aa37de5b3c1f17a01e81ed720ebd0c5c18afb0d43c4c1b1928b4583595c4ca35df07645a7175b80f0fd759d48de2f33001630dc4905ee3786cc6097fce98163266119569148e0940e8a6e8861eaaaf90853a685fa803c4e039166060a3c921c8d79001e3cac496b3bcc37452f0caa104b2205a8a19dde0196a7791988b3b74e23c2174c1ea01cbf770530810d20b703375d8c6321d438eaddd88f3515f5dd3fb062ff9c72cba6faa5749f84248b3e73894fb6731dc558af01f8f5a626d8f44ba6fad469770c0899ba44a3545c5e137ead0f121480c1d6d3851c8d481f1d6822e39a4cc60db6bdcd528bce555b2ecb58e8a1624e3e13e09312c31318023c4e86b957e2b01fa248acb7f5ad9b11285e0ab8d81d9487bb81e8787a87192ec104b99626537a8bab5118f0766284fda95075b8d2082d451270c4e3ff9099fc1fd7a8a6e1981de284fc9dd6bb62530cda94516a8cc023483dcfc29ba55566c0a551b98159da400ec44695770a2775ca77688e7d03c0c29e914973e3693b0207e0d1069f5c9d3bd7b56bd14eac9f3793f67336087aa64b234d9c16026f83e3cd0e0baa6bf27778f86d43602d5db08d4f4acda256ba09009c43b9d93b9283ad9dd75ce7c9dd2b6864c11f2b8968a4e68b3450b62a1d8807309160d78f5cfb64b82c994383b0da7b677e674c49ca72fb558beb34a4081a8f23d268af0bdb6c75556b48c1cc3455c3142ed1fc6ecc52f21e6ec581bc1da454595389079cb794ca98351918ad3c1e1f26e2e981338954386df0a7fc477b65f62518979405282aa95169d86677ba6cdc4a864bb5dd0472413c19099f312143977d21abe6238c1fb1dbd3c0e1a2af1c5fe2ef6ce264aa33309c5b69ad09c2bd293c9bb79a6fc2c3cd22f34dbbd8f5acfb1fae52d14d226d264e3ecb1a5e10ffbb579fd71e99678a3f1fde11c56c434e2c7ff6a50ff1548f7980161fa79ab367a7cafcf65e15a5257132cb03b0aa4975835d674ec721ba2fae3b533e2b41c9ce041eb32ed949484de50a6ab304c8d1d539c692c29473269b68c451736ca630be953aa301223328884cb89bc15c016c2eec6bb06d2f44ccd9ca49f9f4da2c8088eba0e8959c2a947bd33c9431386d5008138e660b7b5750e7c5dd064bdd277f2eea9204fa7e63108e2465bbe511c80b5b581368229cf1ee9908ca88954998b8e0a974e0845fbb6440101114bf2d7752925d79dafcb7557a845c3704066b47c2e538c59484481d90edd7e993dcf160bf3adbeb252cf55cbdece5ef96f6e834bc9f48d043008038971b9ae4bd9d6bfd4dfb9fc12ba092ed4a8ba8e0467ac8e1174630f15379c693beaf25a8822ebb09293c8991372647a6b25521d671b4388ecb20531368722ed203f8ce75f7bb0a10fe3e256ca1a7f055827b1d985b55dcd52410485a8be805bbb7527f488dada3bbff9815e75218e0f23e93697b8aa9ada7236cb94a141ab1124d7da580a225ef7177810c047f9669227d5a06e5b305874a9de120b489cd814455f12e89d621391c216b2b76fd8652beb87e47fc9f49392988354bb9f3774710540cfd05f5e8d84b303c4c4bec6bca7df581d6ca13c9c8517e6d68963ca37ed7b3d8bc6f864df20e4240167ac25ee5fef5a6f56241d64b9d83bc732bc802a07c8bf87bf12acbf4e7f3ad1f1d328ba8708118940392d18d8d1a09a55596987c5458b8cd8e9a0f3e60d5e6172a93a2755ccfc059af8c8d89ea214cfc7da41848eae845d928fe80fabc91ac697df8da6eb6471779af28b21d8c39f4c5d12f082f79b404365e3f5be7396b97ae3dbb7bc36decc4802765fc0047eebee325c027067a853062317a965262e10aedafa2bee299baeaac43a434f79e96f4e7afdef0ac4b1cf76ce28dbe8ac8504fd87a8e63d4d03a9b253e2f1ef346b84750218b9fe63d6c0b1e3730b5be278fcf48d95c4c47e26d1767921acc0d05acfae4ff9e86ed22cbccdd54d1ae034e8c92d897f4b3d80ffeca765e1ddcde8e375db099156fed7aa123a1e67294a19c8c5933cfc6a477fb81b3a83a9d079bf6f931612427ca5070cd7f7130a3fddf07a123d99968fa33b4c1750f7c45232366d5527f4ce927b6e49df4eab57719d846daf2d0a782f9ff47f5d01769da487050b9fbdabfd7f1899d63ec86862d682c6b0ead14babb7f66192bf54c7f7d3219dbee88c163b73977663abc50e6b9ee95464070051d89cb465f13f1ae553bec7e8aa42b77c9282996dd009d0aee562f5a86af90980a628f88ee27f62b4564cbca385f9a7b339c2dd33ac699486a98c5bcf1613ec3e1ee9d44ac3c09438f905be8aef9a7b69624ddebfe1379f0b518ea82bde8ec7d9f42d0562c48579c3ecca8d29ee96b6c08987a6d6e5c19add316e15ec0687356e11313f447de5c92422b899b2a1f0565bffc4dd44b679a9c12ef5cc5483b436d970b7eb815a0b3f9246e206f365eaf6696ea710ec3d74c2d3918af886b4fdd410b589a24dc4d7397b319801039100a50c7435419d91321e9e39518a3b78f0acc3a313135ede1614d35f94fd9954b70371afb85ec079b2791d1207fb2612469f2858552f9f4e40fd630c8a32e85521200a85384bd1717a04f89552fc6cb3490d76c5e9c8a763b9739d464d1b4ec21ad8f5bf95a476c17b56b6bd2a3c20003c77430d0c2dee210418f9ff17bd9fb603290b237a8a68934ea3d9926a49effc7b5ecfb537e1dbf826b6146171d436e0c850bf0dad45c75075f6b8a4440c4bfead86a4491f6397df872c828bb4ee34749ac7d022b55505f4a29073fcf4be8b5e8af7be8f2670dc08b600c8664b6a6d1b81cd7fac4e1b426be179d03311318b9803180bbcfae4d9a6ebd4009b17ed3657a0a0fae1bbcc0243608db5dac04e28dcdd536f15b405a37e40f72891c13e37c0a703b1f883679c016bf7d01f8b122b47079862f968781d468da4b97cce7eeeefab41bab84db682c7bb0325adf4148e6328243a8a828e20c7ad770c52b6fae702e4826b6d96b1ec5deecb60b6d653190ccfeb18881f707b83e2bcc7c07f2eed1e914aa17c15c472e2b131b2a2aaa6a492b25add68594ac600a39bc76cea98d502acd1d75d627942c56633ed17ab067ab3e3d37c7e6d649b523ead364cf56f4944a25a0e10213aed24bf71d697941b5f741f53b73bc27ee4a55ed18f39d52cfe5d1fbe5ccf8140d07cda5417dcd6f207d9bfa0a654d55196b268d5eef0136c12a374d95fd911fc66048ae082e5bef8fdad3949d9054c9861bb3d89bdfe7647a1571aa8046e4f6f571e2d8b383f8370b3b610c48b65187c394d1502c0c9b33f819eba2a5ff6e2b9577b1712cc7a480d32497d1b78647cd1bdc312719579d3198356400a5be4f9164ba71efc9a447b44c9394b6714823eabcb4e928eab097318e6e108392f27ae25200cc84bca28772688ed2bddfa9615b628f26677f93964a9105169c6d589ae6fc63ddc1b9bb66adab468e4ef3fd9b5957cc19f95e0bfb56b4498aabf948170a1dad4105afc66b9319137366e6f4250d71223ae89693b9e863d4fe20419d6b2d66ff53c98742876a2aeaf0163feb039b43a9756867f92a9c5ec4e1b85a64fc66907239f6887264f70ea5dd790fb297104e2eb152c6815fbdd20764cabe1673b0338ce0de95aea872ce91c152a5e8500b23e4cd0acee608a039e922c761126dbdaad3769153589bd1c860219eadbb2319ae604547acf477a4a62ef5fd8fc9c2fa6826f7d765cc2ff5b899e05c4e675b83c00a7f20a0c522089a1d8dbe17ceaeb4af7cf28a96c01c8e17bd6c081e391edbe70b3d03f59089c5b6d32282f3c0c3816a2708d3a68a4615a1d6490d4623d2f68cb4bc89d220622cc53217022b0cb3657fc216e25b9a81c4574e9dde87aa0b388d6e908fd4aedad6a15e4a5f1a84c6308d96668e547a5f5536914a2976828387004c1bfaf9bf84a2256b071f7a0821b4bbce2a5c222ace880aa940e24b5fd44b1fe742ab04d85eb6e643700e7c911ea44534f7542fcf1c9f3fa79a119cca922b92fe8c5286a2112bf13efea9c026adbe3716f21673498cf0f7bd75c215097892cd07cc1e257a10e0b339c81edcb229375adca68360d9f2bdeb767fced212878bdca91c3c5b7b3f20e80d0b1b7f18993e2af99349160863fc25d0637e5bc6b7c9bb80a15175c7d4c5c88e9742c56d02fb09f142567772eada9e2f91aaffbc949b2577b99442859fc89061ffeac0ff6e46baccd045d587607ba32b6ce0330a4e966f15e8a8092aca8b07a7eaee0399d6563c3b7814ce0690b038d0e435b0898d149b43121ee778e73222174cbdaa9caf573eec276fbb0edd7aca4a6128093754f2f1b7fa151aeea7670323da4decd135774a9993ed3bc3fc57a267f48c0ce5efa8a0fd4b2fd50eba14a904f49974917bb3f1713e3c8260655a9e2529ca1c554b8fbf217ed74a4fa8b1d5562c15ffb86052d4892947909c512b6a5ec49d2ce3fdae12737db98210841ad16f323126772d18b7d5d23ab73de120f26b5c8a9665e76482383e3187e4fd2cb1562ba8052f7fc1b40ba47923edf565824fe59e468d6440cecf21a9fb590b0afd4b1a07d7c7c708e3f9fb0b45a7dd26514ba1e872f1ae4b60931853f436fdbe2aa0624e915af7de5472915fba6b7d5e201b8c81bfb5afbc3356baa7072c491737b2057740cc5e2e6acabab82ea20958d5e86ad815e597f4ac8d12c386851e34505a71d7c31cb1f67a13640bc31e59c300a78eedcff9607a77789b59d08084fe79d5b951994ef312dfb27040aceba9e0c1072368384442dd51296edbc5dbf62edca092db9c8e66d077cb88de49fe1f28d8a6f988891c9a4262ff669cc589b3e42242eccb032ecae08e4d230e827a18ee8cdc1a980b7dc19c6f50c06d0d2c543ae95b35c4bb5014d3e7f3ca6830fe3f84ddf8dee74a249d19f05c6623dad3853b9ba791c99093c878478b166beb8c6baf6e3d357af10bb7d5629de6ad49cd85ff4a4de02715d8d53a6448cc90da28c2b23cd151a5684532f79bce9035d0073b7d4d3516062918ee16243bae42016f010c31f80346b8268fbbe45ebec0e69b876622923796aabb90d1dce1af2a68ca7f80ee484f419438c64a044888b4d23521533abd1f58287909cadcf5daa72de6c1cd9b218e08c01372547ab2725a41322f2c95ed42cbfcb0816429f474c87b4d71080360269d7d185fc5b06e016819dbe0d760b39d5b7e2679e707955ec20889dccba3c3d9ba73de08355e6511f6590523bfb7f0c8edf60e7a31753a392f9a941d93c5f9c836ae2e1b8b1367af4cb8904747b58450d4f249436095ce561c2f3a5adf61270f592f4d8ad807237a85148c14c7f1b445ab6e1e4447aaee164e3aa842570b900165416f0a63651f4c11dc6cbc01dc1c38b6205576af6646e532dd4cf8f62e3255dc76a02222a86976398a31cd779e2d9d97c201290e8c9759b58f7618735b805543c24c5608c49ef6d8cfc0406566fc92355015cf9277abd3027c13edd0006387337d9cd5538921dac51dfcba5ec95df4dc2eba974565404d7ef8a60a4ed5505fb2f7c0fd019f0e7512f25525baf701e521fec1b1f9a8485c4f7d395f453976842d151a3723d0d66ca3a62b2ccf946385c7b5b3885be4238e1b5ff65e7c8728df020c5c1b97bb59dd547fa8c98ed6ea3612ce99da4ba90c20a56330c2bbfcd6716b78b09aec2f25ec151ef5e49dbd3936862217aad990aca9ae80d51d909aa65ad50dc6b834f8870b1e04d3e797704e4c39253652656d934d223acec95c8328d516dedc760cc6b9b310359be96e7387b4a0347e745ad4908aca5d8761e8809782b8923e7f05d255c44e86eacfc3ce8732aabb9216a1509d3f9cb5ee497ecdd64069ddc50d6e5173955a347bfd36359b1be231e6b53d6422692a351b00945deb11a7023ee7013bcd14c1d7822441f9663ab0f77cfac42bcba458d33c4bb9b197120eea402693946bc87f54e8187edc7a98a15ea58f5e95b1f4fcaabf1251d0193eade82a6786881e65dcf57ed54b801307e1c0aac61f7828779489326463922ce22ab832b3b26a532e9a9d8b9c594b71bf7367940da384dc7c972e0746e790b1ba66e6e7cef5fb7b3b9efeb312854aece4ce0a89c3a01efc6d89629c3c81a29fd1c6efc58fa2fb09c12f3447ce821a90b3529998268b32f1b15afde3b42ea2e0a85c63c021d3b682ccfdce025318488adc94175fe0a04f373322712ce3832e7ce267dfe9870927283ad7219a3a693422f648aac2db72ccba6f4fb1ca46905ae2490e1cbafc79c4f6a663519fd5f1ad51f95a9d04ac0efa3f44963596f890032994b71fc703e18e844a9b33534b7a18061d00057e8e4e0c458625a9e033b9865d60331ea04805d5002d8d564871724afbddfbd1a2624c7a0cf69099ba23d1dc784d224c5fc5cc2cb6b9262e590da5381d4faaec49ad7c0c3921be3f580c94b112147addecab9b4b41f3cb70d61226aa97b09a7f109f80d8cfd74b9d2a0e98d3165f1dac82f283a5803422c4b617075d803ab772f736fd29bf39ad61b392ac9ce9bdede3c7f546274a717a77aa0dac4bc150531c2a8eef5bcc53b3788d7d71b09bc220de90df85be46292008aa9aabd5c92ebcf7d7fbf5e44374ec6516d687e8c045acf3f7bf1297ac00ba2e47ffe054a5040cafe03a27dc8b7f0b29ad85ceeb9cf09d0b92bb9e7a2ebeb6e55ce27d527281ba37bc3446c39339cc73b6a309f1910aa635486fecc3befbf6e1fdcd7cc5ebae0f47a635f4008254ebd04688d17f537cbbcb08b26a8e47c18582a324b3f90229472b7053b9a6371f675d37b14492683675668d986a84c4b9097139e3f9411c1a0a424004e30a09d002772f17335de5369ac612ecae9da6042dd6c155a2fc19cbbbd651bea0876c2ef72aa4c135fddb4f7226f9aa86a3f597d2254d2fb5d3a5b372b98344bbda390cd60ef3d6553653608c1a7372e044212ef78a659d2c2ab73eea8cb5c115ca2160e6b6dff6d3ea27dcbb797cd64f5ec4b393d3fe064e9f360f237267f267b9f8db2f0cb2e436628758132f96a53e0629e30acf94557dbd1c8e649c1a0092241136e4dff3df7720ebc5dd7798b101049112604a98781737b98741cc1de4ad1fd9b7e282b7da41b5b02bdf815654cb4a29979d187b0e67bd029887a929d87de350597b4579ea2dbecf490d6936c504d3c55ec9e32b93b5c580929efc4bee329ae5303e93d020b1fa627c6db0ba3a8fb3d9ff71c494ed9e8b2ae7d739fb194f2dba40c9a973a525d7952cd8bfd6f50888f12ecb6f6da70d3a6b3bca03885ca9b5c7be2c02da7a32df1360c33e64c8f82d5a181d7de918389a115b6162e0ea2505f76c1f1a1286d57ddf4b89a9dcfc0245aef94d7842198dbd2bba5e52ce92b743a0ec0c5f09168e4d81c34cb342147a492c87cef529de0bfe781408e13aaa2a043ea4b53f3e545d7027e1fee0af57b77ed043e76fe7783c51049487f1b19c1448dadb3b42eb7b212dd2eddf3823681043327fb3220b57044c0edaf2fac6673678ccdeb99cc10c58f4ad3f56100ba84f68c3d8d8deab5a1c08721814999367d4e6f57c005ce3e64f33877e20e720670cd0ab56c9b4173544eb7183f74d946f6fc4386e62a078cedbcb42b3777c95a4ef6b7ddc35be381159d985657f21ab235233614ca6c1145464213a77b491e89f86cd3e26454c1b92937c914b83a8db322488ffddc662cc395900239d7fe05c4829dfe5311813e1e2e0a12b68303b50334f29230e1c6b148780bb45d7f2ae88f615ebe300e508235544294f7dda571413b1bf97efc3c2977430db2bbf33b4e6fdc8484a7087b7f220f538f46ad5f01216a39aaeb00fff64e47ec3283dc748d9dd57532b767486eb052d80a2a6cfc485d6b9dbec5e9dd9c311d187ca74bdd52899b4c3c9b21654cd435765eb29663615affa725de66f80359072d31545dabb2a7a97e264413235508a04cb313fc6f88c2394041a6cb1b4868a9d4664362206997cc06b697eb5c82b2ff6a3e9baecb455d91376dd4e317735784507a83a0a873d2f0f71d3cc4e499a5960891d0f8fb7cccb89f99854e51ea8ab302cb60de94c18ecad5aa1a88e3c52aa374c9d97bffe2b4f0357ac46579b49ab6d1f6d9ba6fd5dc07b7572c9369cfccfc39a8e159faf5d2004ca2e46788185317508d4c5a0fa617ea638d83d71df8838e266c089cd0b2b4a71094521f9f56b7aed87773ddbc99b9a3310965b0f282ceb1bf95b0d69eeb786e9b0ea8eefaed9855f8e48cc1274c168301aadfeebccf0af3dedb8aaf087f97755f9aab5ca192b3f7c9ba5888025b538fc77121610f7df259a06c0f903a80628c75544734c90253cf9eef0333ea20b9923a84238a8d010f5707aaab4822a53efe9edd7d79dcfe4126a8d3fc3da532a9b52c078b65d2921019177ae7e7566261371f99ffc5398b1c5a1326a3f6b96db2ccb4640251f0637940e1f751e81de226d94445100efb51228fc7da579ca586a2abee315bc6dc298434ad679373a356ab97f0ec4da656ee3aced46c84a9eb3ae0fb0d1395466db857db9f489f03ce969099e18f58cebf36fb054ac4cc448093c9b169351ea7445127b73d43bf5980e3bb0ef9a46194b81a7b15255ae3e5975219b4ed8a74cd22fcbcb38b23a893db4c18c7dbfbbc38662b8a8bb40173816e73c24cdeb4e14347d43173b0d34dbd557fcd5bd96882d5344e5e22dc26229b5b86a848dab20e45c35ff88f68fbc5b2aee00bf34d83cbf355e6b5c3d928168e2920fdf3fd87b32be62f4cf5c6e1fbbfff7f52f78eb36f3abc323f7e8f833472e69576b4607fff22f76cdfb791f06c66cd5bb89f345319b382de6ef974b7321f3b870fea452a9cece026ba76a46255548c6e05309b18e5190025430233eda9c4d0f72ba0cc3540b240c07f07b3413b99730512e69202d925c5087c543fa6de7a782c634f13a09425a16d7bd1e32583a02c62b7997d969b3a627c3c424e5fa6bffee448fc07bea817ec72c34941c030da6783ac7f3dc48074216beafc00a740d965c61e0fb15f60463537b6375cf798233b3bbebfcf8f034cba8e189778de6e2c7ecdbaacab145ecac4e5e4c7c04092f4d302a1379c65c28f28a4a100a268603a4a7780036f324330e86bffd157257fbc3e89c4836555d52ea9c6fd667631702eb57ac55ba3d5636a978791813b04070370e7222c6d892bdf4e89c0ed73adeb0e749aa47db0e9322e633f8902dce2da566986c66de4f28e29284514911280f7f62774cf401f4e2c41da6840672ec80db2efe101e91db5765f61f692114dfbff29b4251022fbb2ef7865bbb573bcc8bf977ec8b43ef4a0e3128e58ba9d8b35e7b1329a48a84517196559674739baab09c25f9d98cb4ad982998209593a22f9095e80b54bcf8d7b3ccb3c33ee59f33292bd6bf2e9dc4f5e7127a102c632c06d821111f5235a3f785d1d4111c6e05b65af34db54ce7e825b2853ce49d4247b27302dbec1579588b6cdc7177e1c393866e747ce3a38a8ff89fc8fd4f66ed14de4a3cc0ecddc3f631621f3c9d23f76d4fcdcd6144a7b0f7590cac04789ca54793d0e231a79bc8f1c034896a887ead08653b9e8ce53909886115bc8233d8e0138dda5e85c4b2454f112ee02b801a72d8b292e3da980e25afe6e47c2d7047f692e7c8d7cb2aa78f68436c82954a492f741ffc4e123577a26bc5ef60b3b83a6b7ab20ef4b21a296774cba1c5ef435c578062dcaaafd1548240770aebfbb54271f51ca06945be507989f7bbf8b31a7d2b80711cb1eef2817fee8070ad2e7ed27c3794854ffa46cb30e57534253bc351fe67ea797b7e1f889a70fc57ca25a6848f3fdcd3a2860a95583bd7df007b891ef7738fb1d1071659bf6885a725bf39db5ab218a14fb9f518a788a63fac9c7547800cfa8f0e6d4a7d64fe9642797433116ea8693c780429373f2d8a68a5b28a7a4ecaa597bac181dfd0a0cf098f9360df2e3f993c0e0fd92560446d97311199f595fa0737b7e6105488dfb485d54f8828e1f105bf4270974c200923b988d2848a18876a8ea2e4d951cfe8a0f244329398dc6baec0452dbbf4e328a238fb499f716ec150f8ee06daee231cd474c97bb51d3469fcfeeebce121a6c48f76571005206690199f92be5ef4ca3e7c123de5485ec5d968227d1ce822770ff6a1278b879f0a2df9d407174e406c85b8ff06a51a894514a719096130cead008a0a7200b30b9d5deb2866f39ebd942aaa5b4bda1e1615f032b663395d82816800f21ca8265f0661d1974f480b1bda242e5f4f85cfbb56e83a327ce020d32890d5d868f3b1dd9e8e94def3a37df91b703e6a5c2e928cdbf36751be24c4105d7523413c6f3836ae26f84795332487161e773abd775b07af6f94c3e82f30800f119daf8bb642c5b4c7392299e870fcd44e5e25fe913447c3ae3d7cc6fb259d9e9e55605ccefe726e3e7aaabe3df170fab5f4a57db832ccb19c705d3e3fa6c994d2a717bcc862e756b15ad5343178f9c152362e758e97ae24c5bc9cc1a7bd17aee4030102141a66ea9c9cdabe8dc78ec1dc3dc041b48fa8e505728f261519e7d79648bfcf1ef21dcfd009d15fdb9b5633f3caba2f216979020102161a3c4b47496ee4c441d2f1cdc0de411b63635ae3bcf9f220a9c824e1ddf90c5241bee9116405f6cf74ccb42f0bca656adae015248f114c4be87482723c8c8bd04b39d85471165843a12338196e4ef33b9e1d63b4d780baadd0010c309cf3689112cac2445f548440a94638a6859a4f78d5add81946b4ec840c80f67000079d77cb1678e815b8e61ac3699c04c929b352faac2a76b784022855e56fddf86f6de6bad81edb05a062c845085890483d959587b1bb6890debf869a44b2e0aac295274b6bb2ec5fe123bc5cee4b31fd734d7dfc21151365888f8ae21169c61edd419873b6cff916f3c8485e721a943f74d2b747f3e44256df498a8031868dcc81b8639279eb962b6a66ab89902cb31542e3d517dc1fb9b720e6b3a3b252cb5a29f37388e7cf4cf7a2829c80ad77bd39da3c3f5fcf25c9eeb0963ffd803d1c732e4b9ad0023e238702c908b6d6fa38134f06b4d123f8b9a612622116fc8a3125df8a05c6fb0ef365e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1a3961136f5b072a7f127af6fc80865f599ce721fa53207eed8f868f53c7090ef65e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1f7d272fcf770f1bc5a6adca9b42a41a58a4b444f2f7620fb76a047e1f2d0dc04d6e4a2f14a7745296e96e75273f9dd5216e6030310a5506b41bb1d4fd6f09a2fcca3bdee93104513a9e153272df35e0fabdbce7812782c4a531beb883f7d563dfd5957d5f2f807ca519bffea2e47c19c39c40cc43a6164ce2a7d10d04f3e0bdbcb584fcaeb966b18acf1470d69fb46551e75f67def1435b140d50587ed98933e411e00e7118d0eb1a4b5d3581169e76b988197e383238e7f8738ffc78d3aa310d486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fd486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fb74d7809c6c9f24c7ae89c9647b42a07894b89acbe510d1657cd0f49888516666ed018acf76703ce37fdd60e554720394a67f85ee17fa976f87ccd6f90a85fef755650106a8ef815d0e5c231df595b678f9d302a5e4a6c15b38750548ed8e51bb16af762aa022ea39f4776ecea22e8bac14deeb4cc9c1bc9ce45a77568502c5c2a090e9239328c44e297571b39e2928bdc5583dc88e76f4d47cd93d224b24a4061c861fc80eae7c95fb1caf75496358f0b0f174f8dd8fc8fe4ea619b8f88ce0f77cf8c2e90f69af4bf3d84b6eb29805e04d83a30cefb5fdcf044611941347fe4bc4cb146abf2fee0ea7d74ccf071929f83b0ddb6151657aa7d46a3ddd05038db7be367fb4955982d559b55835281056822bf814c02f3470835fd3ccb19a8ee16be85ee6290e7ad84ca97f7ccd05bea29e0ec90c26eb506ae15a5e95863b871172d1d6d1637730063f2d87b8e198b5617433d3259c7c3ae325b3e35b71a51e956b7cbef9712ed67afc2c356248c18244539fc5337535a562e5447fbec0e6697bba77d901272613d4cd165ddeec2f6b5cd29c730c5d85522cc9d97b91a86f4ede6c2a01b3d20372d5e70563c0fc36d2b630745f1ff96040b3f8fae7d78cc95d53c20a32d4af84080d355b2c6dca17a5a793c9032d9d3b401a917b07f72aae68a34fbc1fe26a578f27859bacb39e0784b9214942224af6229f11e07fd7d9cfccb4e4b08928929f2ab49b1ae381c088ee8783be29c717b5bdd353d615e7db652ae7b8a258812d2774113757be757d59435d726178d48c6b6988d4ff1f7b68d4c7bd824d74632b306e9b8c9e0c14df58a2b7c3ea445606b17fe5a9305b8007fa656a50dd0e921e0381dc01a1cf69366b4d38c3e552d86900cdaba1c9de8c5b69162e4c3810b7c30fd04710e0ff6ec53c0f0faed747bfefe21e102e0e8b3974a6c082ef5fa835e9f25b02344924cb6a6bec4975e319ebb147abc75611c92b6ee726697570b55cc21ea445d0275e03a50d697a2ebc03a6e4cbdc13f26698b02aa77a581c531a2ebf1e95e634b38e774d548fd04ce24d49bb407029a6fd04cb97ba5ae28da99043e3e33ff73e2577a222beb9d1ecfe94dafd108a35f87d8157fac9ddaadfce7361081470a89f0ee810a78d94e179976cfcbdc0e266a61f4a9798e60183508eb116e676a544b00de2fa949d33bfb66530c1c42a4dc9729a19011e398b81aacf3b3015bae64a55d63f4cbb7e77cc3f868d562f39a896d78e1ad36473afb6c9f95a8ac590b10cb82b36b3d28b34ddac52b68203321d2288479a4220baba748900d6f9e273b063d7eda052bd76aec671b34036f64c3be125b426d88465eb77681cc3f2cd386bc5f6a636973619802704d0fdf6a957d298b3c248117bd1266275019864e053d042369daed54a35ef46ffda4815b4e2f8a2966c13bfd4085b043e7ac5d4f94619deaad90ccee28cd7343c1e114c17e5a812c2cd216af36c9f8f57d767341d750a5c2714a09bb85eb40dcdd694fdb7b6c95dbdc5cadeec01d93482bf21c0c200fb0d681e5cec7cf649ca85c57f93eee220eeff6356165ac12583eb4c8947da45b26ce1c05aaac989c1cf965134c3a52ef5169e69ee8715c58095155efde37c4ed163bf3e0e44bd6b52be6ece68f4cd66e991a4fd72f6818604ee363ae448569b05f834130ff2e18b26d9b7730e44ecf85755200dd18ed2a58426a42c38278d7da2b002b87a2afc97eba5379bd76e03d50048d2be46ba912be53754e61c44e31f66a89b71f11109498b31bb803a8bffc3d9fada6d77432ad52d2397935c76820c76a21341f2228bf7ecc16374817986c3eba9fa495ce3b8b9b605b08d3cd1f78eb82055f5ff9d55396b1a8a53fd7e5ce0ab6a80ca4256c1df7eed2b45f72a12e84884d2ce0c6f7c2dd43ff58798e5731a003630be4f0c224a9e584791bfa487f469d880420d73c4bccf0cae600b3462689b0b8189f4191dfb8dffa655facb35e14c1f0dbce2af97e4c02db85b8822cb743269b8c31c23025d889d07641eecc7a5b90f19c21926b0efde7a0b53bd7fba871a750ef6eaeeb9cd5b53ad8d18d19a226b5abd22752de09b4f03a7582b36544e4f69310c8e0ad18c656f7bb7466be6509d7bf7f0440bedf08dd5c852e67cf1d531e877ad26eecd7fc46f29961cffddc074ac99097954299ef6883ecc2f9b0f2fbf3ddc33bc736dfb7dec1f6fd6f6fedc3d16fdf9967e1ad9bb640d307251200d9348285daff1d7b9810c323c26b9c67f1329e6decee251bb50650b7b9ff6c92fb0fde8f96893beacf91f5c55ef1b714134f904e27c06c030ec8a221e37e508507dc3ecaea2f86cb905b16851cdb8decd71151cb2a39a2c0ca0c0e9b7c807735f29f365f4ff8112a83d56048faf487bd6bcf1f921a6d119f15d5bd3dda21108967f6e3b1279f5e81b6dcac6bdb7d9fd8f5af4cf8e3f6f07099aef7d4e020f82bdbd6891005440cb6eb2c0c09679b78c2bceacde707070828b95dd915a3e315d963797bfba550d409a6e1d0ee7f34bd35d27a520b0e21b72e03e2bd056c42b754f17d75b1203d27a94abf103ac492442f8c288958dcde2e6d6ffc387fe3829eec9408a67a6ae8a92042d42f10a762999603ed270ba31f7db42c886b6147c0a530d37039ab3fac517efe5282a6f29a95038b8475d9e4afc6ec6ae5c6ace6954ff4cd42d50ed69f6e36c3723069e41b4a2184adc03d6f1915b08f20630dfc15b7f6481fcc01c6c722fb90e439c180b444db6ad6b20df44907a2bb9f03bab04ab7ce9e3ece7bf245514dce9f96040a81340e47cdd44775dcf5ee227df0c0748109dced80749228992f01af59bc8c7726d71ebd706709aaf50ee080b0bac909cd449646a4f550e47aa1009fc7900d308a821b809d8c2d0335670aad712b2c47b53353a5427f85ce934965909f44353f9e1ec78c4d6f2d09163f45055091edc6267687bc04a665d6654b891cbba3db4756900b338e86628416c7e4c13cfd9b0f652707414a754a855074be080fe188b3f1abf95cadde7456770d0316853160ca99285ca8550e9bfb5613143a5f1a24f10eadf1f611ce50df0df23a72e814f738e60560ef0dabc5f7f8ab3ad8e5e2f5843dac6f9c0c9eb5a16097751f6eee40f460089816f0cbfeb9c32f8bbd0b8e5d31ec482e85a9d1e840b6e1162042561074e0439e48d2e15678db7ee619cfb3caacfa4ddabc7d5442dbf20493e0a748868bd60e8fc8190a38aa81c1e2e2b43303f05c03b92ff153761076adaaefcf0004f75d9f21eb2b1c8abe4f0f29073247ae83a6044d2854b858860c99c72019aee538240dad6d3febdf1a03609d755b4c5e6bcf3563785d0bd92a6aff7583c18c1b2c56864a3023d3d3e9a9c947d2471942781d6766c8906f5781a9ba589cfeb72aa6e2cd8d59824f6869d70d082c3015396b30af597b7f12c68f3944251873519193c160684fd2085d326944cb70efa3873606da4cf00ef8d9eb85f080da2f5b97286a2f64caa74fa9776fdddff28ef6b7b47d4b9388049cedc5ee4248253c02bcfb2d1ee03fd660a73a098d884b90024aa1c9df5cb68c9143efe7b120eaceb7bac9911debb56a3ce009e353af53b3fb6fb4d5297c68cf86f0d079e9472100c6a072f5b200ede7429bc8977b544ff631dd1e0f3882e98d4594ae0ba3f31e763b093f76e1f6a3d5455c09b2cc1d4a6804256cc021d22bdfa9207b92562b571f7ec723d08404cd6959e1a662a66bc766dd379ba1bd8ec07e29b8aa45b53096fd5ab166c7a4cce0cbf8a4132e7a30446f94953b60e231b4c357f2c8d3968b8d928eb3303de2b3551af33f2e4d74d11419450283c3e12d1534bdfa1cb0e1a6a8854b338b2d29e25b8653982743046232b23574c0c4331e0bac59f1581eb70b9271ffc4b156fb25f6d3ca70f42b02159fd6edfd58c468807ff8dccbba548eb85ad7b27cdc5d9fd42d41fe50123ee71852469695eb25502eddf8149018feab234bb1a355f7d52f2434270408bfb602a56a0490a6cf7384d2f85c8b4a34dd92aff7202fd0ed6388f1b10f8661323faeabcd29a7ac114500695a5ea97ecfc19e11f776778bebe5119b633bfddfe7976b44e189c07491fdb43da05c140f99eac6169f357160a113f23bb2904ac26ef4d3e9c8b0894e45c0a0fd3910d5d8c9dd7a0f9f3f368c39027bfb2dfb89082795a4e07a10b5ae3aaadcbe3fadc7e701562c64f9c5f60e03247a4ef69b9cc56d40bea2bdcb7942d015485f7b7515c374cf5b86e634803d36295fab13c6a7eed44863143a106c9a6aba1c2873240335ea394b1623c858227325e07c74ada6604aba5a0800cffc902b89aa37096be6e66789230938c43307d14f2d10ca94a16d661fab3d3ec45afecef1fd39e73c23ff600e299947cf4f65cde6e39ef55a61ede94523b2ac545452ec7bef3e3fb6b7a0449aaafe051122037389d29881f61ff47595a506cdebe652c06d9772b9eeed8a45780baaece2d060c7ae97993411f65c51f5b1c0654cddd0b649a75aa6ab64497a25129226f72c6248836840f7022b215bc1d4807ce5c44fd16675dfcaa616ba0987dc40fcb8fdd81a7a2c2316c7eed8f30c019f437f8f7e9507e882fcdab408bfe17f588e054ca87082ee5952078bddf3726a74e09c9e490400e88a1a4299a443b94389a16f0a2710d55ec713befead2de0950a051b1c170022e22b96fd88d40db443e5c47904d1c963ef2cb12773ae2cf659ceb3b46cba4d9b00ac4d585123eeb99b0c8d7778c2c365380f1f84ed905283bc882e9e27953b7b0b5b489171a1ead9033b3be674c8131c9f26c6f2ed99f454cabb3dfd1ada43f22ca6f5843d571fd8f318907b632da1ab13a90e48bd19e6d5640e4a418cb6ba988578d928c0d5d481d030d47f86f6b416811af7b4df484105f4692e55b523cd4c596b1ac091b2ac0bfd4e63c8544fe2e815a159841167bb05244f32fb6f26b9490530a62cb759b43c30c1b59b66d1e550d7927271e40d9fc9ecf4d06df5c3543b865235836c834513e5cb449b8eda2a425aa5e5a9813a5bbda1790a2864cc16e41848513f5f93c427f85ea3b9aa7f65c1a9987cf04f8323c8b524baef2d99087f56a9240651f8c28e13a47acdc0992ee7cd38920c8647413c6942b9a6d99d1f7fed486c97b39d0f6171339559d85b5f527d983856bcdd6a1cce2abe81aad222f09e2328b006b4bef944bf540c3dc3d03866b697bd672ae330d0d1f7efd68ea2013cfc58a55faee4472bde1c73f04c7ec740c4e107002dddf942571b59a85c89f2740e824729c5ef8451fbebd05c5e95f06843486dd4ff01c49af433ae4c8ec378c3295930c066f07276e3422d150b7c74989a759134cf0ebb26ab7e76570caabe0e110f46bfcd9b4a15f60483032ffe7350f3cff417ccbd166634800230ee20a3bf74372774e27ece29da045627b27df1987a493034f9cb039a8f91a5600c2217419454ee50250cda276198a315e72214e193bf65f27b8f564fb80979befb4eb0870866f9e958e0ef442c65486e0ebb38635b6203a485078cce3fafa6980789f6232ed3de4d88e2d96bd648c4482e1069ec34575bf6739c270d74bbf1d8742d016de19c11716784f8aaab9a763d6b3e6d5837bdce28e77c4e5d772dd3adbc19ab23691c7a0973178304ae77271b9b6302f97cb8d88b92d1ca5c5517582daabc93fe7e5306fdfeb13e100666d2a360d620bbea6927ed3154b68ee2fe4be139059fafa501d03719be5bf950337d8213bd6b95a698ebd0dadfa8f1467dd72d9a26d0e2985ba04f08b82efe38685f688e336a1e3caf521fdfbe61219ceb7511c0ec8e5169c51d8a8e36ffe00fca66f557a0316d11cec60315e94cf1763907928b079b8f4c74c9539d7a42bb652d4f6f7d263f436d7391609bacdb27433565f5b89bc5cbc0d8ed97771e53f45fe29a029586d9675b182a06b102aceab804604d2ad407ee0619a176c744035c9bc33decc180f9d0d87fb4b90df7a08c1895add7eb04e728bf0b7528a635c1b6edf0dd423e00542ace09e739894d02300cc237c350769cb20a714357716457cd95762b9c8b9454a1fd9e9d4179fb3efc3e3f795f7bb7dc0dee9801a2cf0d471efa6697b02469da6ab1ee66fe985cc277553199266273b1e63314bd7fb7dfb2f3fa36a612b7e9865cccbc7d1f616775f54d6880c1be23a48799f2d331285a8890dd1ae01838b65d220aad3c622e3d3e483d8957d44ea54bb4768f298beb5a505f314284e2e8c8424d94563ae6ac3446a8c54ba9b13b6a2c8c28ea00e4cb990485cedc0f7b6bcc8b88cac51ab1f39b12e56d2ce2cafa1e74df206c2050c57dcd7a0f87a0bb00a662524d136f7b8e6e05c8e4f5e0d95c5febc1bbd9eff3ed2d8b41edf7ea9e841b27ecd147e89ca95eaba255ebb31f10d3cbcd24edabf77dd6a5513d9194c7f6555c40cb1a3c981ba6f0a1853e2ee8967bba8fcb6835548bf9a582dde5502ac05db64948ad098b159bfd8fada31254c530396aec4e87c1a4dbeedae1bc17b702f73d94a0a45a3b4088510958734d89aeb522b746eb51f6c5e8a5f25994e3906b94e8e801d34201df93f2beea12c40715892d46a285246ac59bd7c295bd2fffd919b4490001b04ea8cd67db8ccb66823729f87db8b86d25ff54b459904fc26ebcfb0b71ee6a83c010c3566275fe920434d4792d055a5282832eee0dea27eb757f00b29410f5879c572a279113fc1c4a2c75fddbb0b3efc22f8383098bafb694a3efceb1f1561683726b046aadf4f4c065b870207ef084d38dfb83cb5ac19adfdfac8ebf9cf741402d60c37fb2dff682919f6d449732ac799c38f6bc78241a356f860328b06f4b6fe82630fb40a45cdb491919e2a6822c011ba0da307850626453b1ce798297e501993906b649c5fe536cb0ab89c56c04c4668ce0d8e1ae1de21b28d73e1debe07e2c18938b57fe94bba4613ef1844c44f90f8510e47e41d40da5a55c669c93f7d6fa902760a52d4934579b631ccc9c6cf08e08efad36ca23330bb96412953e2a2ff544f06b2bfd4e58ef561fa20d8442142d00fabedc7191a26f57ce0c4379399aafa4425288243d6053ad62dcdda6f7d2abe8fca57b69d09075f61d4c852b36e26547ed0c9fad313db91b78ed5b893cd4ffc08fb5001bcb114d30a61842270c7afaa9602903e8ae9a78ff8572feb604810d40378540918cbbf8fdedabc73a9636daddbe619dff43ae3ccd4a1a5062a6ad276f6d057b0e2397cd1182dbcda9977c29eb330120077701465f2c257ceb7227ffaf23c648aef1e294156b5b56b9c0d2062729fb2e37de1a9ab243fb7dd7c408d855e41573d763fcfccd5278eb5457ef995b203912ac1afb916cb45cdccf25ed7df4dcc0cb82bcd5f2e5a020d5c1787897208fed394e0c1c18cf07f1570dce729f7b3cbe61fc531ba29faf4e1b88e8b818497106e90bb7f142be76862e5051c1990c929e849eaa42555eaa2d60a54c468e7ddde73489691b62299d329abe9ad319781b6cd521c32c370670ca3acf71680788683c258aec9d564c1af0046b6ae18bc120b2f4ae20922229b85f86821100c6c8d0e0fcd2fbb07b64102a7afe37fef28c1c3bd8284d8eb58ac76c29611894952b64f445ab782dfab90a54968d42e0efd870ceca7762b21fea12f8ea5c81695870ab685108c03859f67360efd1ace95fc060013d1f496674f04936abf3d5503b739cde1aac6bead572542934160e2ab3b9026f7beae7de82bb485cba9cf19bb6451b2e86ea54a8bd72f8ad91d3dcd031173718fa0b7fb5a86ccd9f2191fe6d59e5ec4487d60bbb3c330cfa66699ab47741d4c1bd21e7775861740495a72817b35d9ccba3c37ec6fb8f8fa88e30817638b7935840e8993ba837b3a1e4856612e3fbe0d7aeb85f5eb4cb872849a2c220228543a6eb2b69641fbcc5b2c3cb5ada14ee76afd2ce40d58acc70d2bd25fc574881a5b201ef6ee6ac8d993682a11a5c2600e4df6ab59e3d14d617b4282052177f433fb7ffafea0c77341832c39ad9b527307649fc33daa75858335c864dda533db9a707f2f376278463b6a42cd8c69ea4a53af0bd13e04a370556f3c8d7a38d3b43f59c4f11fc406af33538dd257357eb5cc5003b6ee91b0ab95063915acfdaa3636717ea4c29ba17a8fa71c54a40c72c582ff90b07e480fc2a5a9924bb5e071a21f370f0e9039e6dc18f9de0fb827b244a37a2224da0ca2df6b0f586a69dbc7c32d8204016f3d8beac7231427860c7ee366f42a353d00cdafd425908a33841df7493eaa3c24b3f4cd07c4739ce1092dc13d70cdcc7603963c071ebf94c6c6e63331de9741a87bfd900022821a0f57735c2372a7bc17d4cb837cc0c12c75a82173f01db422e0690c9111797841b1dd9dfb8dde4fc9bd507d6db1dcdf6b0e9022a7b9709d964647cac340d6524c76e27224a3055f13c2948010a1d301fd4bcc79e629e2c7b2712e500cb51697bd2e9f2c7f8991212e96c9b37cc292ec83a27e3d5d5b2521666b995ff30985fb722862fcd950f52cfae2f17169b74a3ab8ce9e294be6e37ff56c78fa70aa48cbf52344697892ffc3ef12858b469d2a70b5dda8bdb38dbf65d78c30b2548d1bf4475839b3399ad973a50ee286e44c260382f9d872aaa5ad9848648af0f327cdcd38cc3e9df6d20578bc694432f8943bcfca7c52b1b5c87d527e2ac3bdaef0a7c9b3eebcb333cc0d88f4dddab206c00f132ecd9fe8144f9efcd8d9a4f2b8aa12afe30599fbccb6dd0c2d619b8be6813f91ebfe63d7053ea886875efa24b152cb244e8a9134c718268c5f32f88949ee588339806a3b2d613a7d9316290f2cbc0724287f2920c28bed47179f1ba159e16b8fe083a8f635306b19803e52862c71ec4c96354986c58a2e8efb012f37fc3ba8c463fb73fc0cc9370f10a06f3caaab26bfd1c2424c139bfcf9dc2621a036f1c3a5b1afdf22f43c7b7106d5c556b94d5708f0251f495f2a5a5c57355d026b8ca27fbd5d32d3a9b79112c4919fe24dc691e4fbbde56c58661d0dc2c3ec3aed8504de6db24fd07c95a5f7eb30b85cfa554b32817a7d5c8915d4d9f04744495cfe576de600d0d1734d0ee46234d536ecebc50fb6d42177606a57f5911be2e4afae08ee08ae130de0a412bbb926d5ebb770ddc0b4adda14f63941f93ceb3c091262e7bc2690b29865818d82e8296812671301d23d9d2bc42a703a400b383b8c0c3085fa2894f392455b4feaa161495e55bd0b1d5733fdef62f3a55906ee30835762518c21a7c6c7fe0559ef59f10f191ea1c4aba43d7b6f57421006c3767f8dbea18dfd7faf1cfa41c83727a4294dbce735d20503bb25dc64cebf48de93b1e878739ede2a066d08ebd567d138ae66e647c8d880b8d71cb02d9c82433e8a89cdadafd8a750e397c124ccca598c4734e3c9bf372c92d76530e69d80fbd17db07da496ff1cba99cc71fbb5b35ce2382bc18b4e009e1f014168c598d99bfb5c9b87f9e84d83c61f247e84d4936c440422ca0507c9e3b17f5f5eddb242b9f7e72d4c3fe06dc8a6449a20edf566196239b827f54bbca889aef1f9e0ce35452ad99dfecc710e806badfe6abc9a160c962368e82e59367dee065e8491fca43c33336d612196a34d93bbd6f1bfd298b7589022d38195a49a2aee2e9d9ef8e831f59bea19a6351ce68b1e7e090b46802ee6e61c843c75b53d6ba57b4c3d5a5bf482959a4e161003604e752a0fc18f0923f53b74c4c4046730fa6c3180ba6fb5e3d7b0bc3b9ad1841f3fd3bae114db71bcbd055bad0c8d5fcb293cec2a0a7da75ed515c1fdbd76d2e8c9b4881fa775066a5f229f68c7a082c5d1db4c8a4607f04c2641413632856649b6c559a6114f6f24fe28bc8b8babfef15297248bbf9260bb49bd04f1dece0f612d544495fb0bda63218f62b561515f11d839b677445516823ba5a88eaf828f637515d2aaaf52f97303f43d3ff5c0522bd73c03587c2f75f563ceb4a1a26800912f05d4fe00ec531281b64d07fe20f8df716d7dca7dce1ac293d2b5af0d14003ad3f93485027a39ce2ccb138d89fbbb6227037209a8405bb57717875efa2aa14bc17f83e959a692e6df374f56b2a7ed0c92e7e23733ba13982b57d4512f52a92dad3801d23438e6a426228c3ad3691d9b141e39aead5684a7a4e7a17ee2cdff9d81f8103421c8a650c961a9f5f56adc511bc65402a7156e3406a21bf3ada4b867941e8b13f8f8687c0b0db629b76e93ff1fa57ef6d20c269543000e32d12f852e4b924d0fe078d794c485e92a68c9522196ddd925aa2daa1718a08db0c2046f4fc1f8cad6e78e49406107d956ff255e4a485b2186f26f37dd0740083d9b1c047d4edaeada215bccc0f8196e29777ef4b42fffc0ac17fd8edcbba7ecd385d18ec551917a82b64da47a9a3daefaf5f5e1d65ce592c106eb1b7e0889b48829c3f99a1bc089578a3260a0f49d63d0d81a13f650c5ed088d4cde90aa0f51111be153ea41249cf85ecaad8a3ccae8848e9655e569ddc6653a897a763d40529c54ddecb099730bcfd54ae51d053c8327d1176f548f07bfe0fd028f26f6f6903106a892f0f8a1f7348c9bcfb99280f14d7913d238a3f5bacbd07d443e69e4d8da8ec881c14728c82b64ead6f21b3400db58c8c3a749ab436e852aadb8a896793f59b08ed59c386d7867cc26878e9443ff85c18bc87e0841d6946b4c673de7c838496ee1147d813885e150a2277d9d7db1e1ddf21ba061f6fa018fb2582e6122d1dc4b5ac7ef1d50ac54fa9961f1445f85be92dada9bcd239c1e4bc4d7a201711e3c9292853986cbc78c356e200e66d33423c799179ebd378aa69a8193814c96de389f741ed020c3c14f005bdc12d4de549bb4cb57e322aa1043e0cec6d4235d49a2b2a835682cb2862d41fdd8bacc03da95512b086ee09b2533947561b078760011e3d232feb7061993689893ce0c52933110ac23a7f5f917f326df590928eea6e1cab3e34099b3e553dc2f8ae012b64423b51827002f014b20b54de562375834d5434834be500abd23d83cf8b070b69a1da6303877a66b353e31833fdaf9286903bf2436252ffd39b065c64e459b5dfa733f6cffeae666c30a7d0c36716a5847762e13dc89cf555a648208a7670e2dac95c7dd6d6f1cecd9c6ab600ad92ca6354893669556aff53dfa9c6d69b37f6cdd2c5e564e66fb61ff19b0315c93873d2bf1f49b2566cc085efa4d839b46268e0edd15aeb664a2bb8d061288e58805675142bdfba4fe41118b68e09334d1763b2a4fd985f83f0dec4c3830691c8e1f7cc5d9d204d6380b980679488cdeac5250718f7faa9e3bcc3fd1ecaaa2cb450f563d52fef98930b28ae4fe881134b0e753b3517928d09f13bc3bc7b10be354f499c411dc4204a1cd104017817eb85ec72819139f578a7b2308bbde3029c775658d0156254aff481471ff75b7421b49de344e829ab367f0518fadfeaeed3f224884e29380f69d35e1cec316c8c753707cfc938c71fb52966533e410fe3028d6c32a1d2b99f823146e7f55073d410dba896dda0581866eb737f553937ad3d00dd2c3b5bff4cd8e6ffc6831489a4167095f3d9147b59b6d268c59113075eb2ee413c118e067ed3fd754f03a1498b1c6093181d245f62df6847a6821c1bd2f6c6517d0870b0af69b26ff365284413d4e8c152c32c343d2560f6e212a1ea2eed90d4d132ba3afa6bc903619c009d12ea2ff4c8dcd5bf34870bb97fbb01dcca8cf1087ec2aaf0194c7fbb783b25a17d2bb5fdfa8ebcb817ce4242eccde15e14f6a2ead5b731811a1a822e8b1a266c21a38bc29c70a4b5096daa884bc60d1ab3ea76e37f5e46daa30383c0370d1621af8de9f4ef969d2e29a6304e76805b19c4de0b23cddfa89afe5606cd16fb841dae5b83c357ec47f85f9abc84ffacb63affeb0d90d94d2b632175ccd85d9a952d3d17a41c6189375e5e672b8620dd4b81bc0dbe95bb355ba19993966103991811c07ad608b2c222b1a848959420df5f4301dc32e1f5c8ca71b7fd3fa4002ec8fe9ab2c6e398cb43aead43a48dfc045aa1eb3aa7787f9bf7857161e29f29f19449b479cc751bb5636849805d79fc9c12230fef2351a6a0d2c83c056adebe95e2d5ab1346acb7657cb164cc06b6e2662e2a6c9d728d67dcd51c5ba7cffa04fca96aa7d55b3bbf41246486707bb3d2c219109c9993bd9d7f586560ae6365d15dcfb5338b10a1fb06ab99e84512605c8d5a506b09048efb0b5403829ebd58add331db0a41fe578860cd3d48c48f499c076327a370eb5f315d02d08f0c22885de97f673a14207b951254dfd38e6a08f97541b70d002958d12eeb31b52fa0fdc4734d642e86af14bbd34a11444f0fb073ddcb58b16381f766972136470307176bc8f8c13b46f7cac6b117c5d2ba3ae5cdd944d7aac5ece7de7a3d4e3073559313db24194775dae829a35e65d94aede43901da43b52f8a50b0efa5aea0b72f8782e2f0548e0ee73eda13fea8ed57567f7237a872719493ac7481006999ad81df54ce2f8973d784ae6e2a1552ea6c042e16e9c0b9a60ba18fa9fae96474cc9c4ecf7fe722b34ddc4dbcf0dea7b4b2ed7a212f8cacc94a09cbf95a903a6f5c020de628d0a32e33cd307000dd09c8edb50eedab9f96127986e4be3323ca879b3d4aa50507352a39bc1678b5b931768271a7442c74d60073255e15920830a38872dd133848ff42759dd30a2024fde61517073a21834704b5b89ed0a328c93bb55fd41a5f13919aaaca0bd7ec949d9efc2bb2d8d90305ae5d364caa7320ecdbdb46f80c188fe3dbbb5b38fb464b4e6d9db5790db4385b9f84f86116b006fb153f7e9672dffb89e7227ac3354293a4b0792f1566717fcbe98436873bac1c976a3c699fabc5c0d7b477aa9f133128af324a95a09ac798f3132cfa5a16d1d7551f5a1a8d34d86bcde5b04aac2fca5205b58a5a4802671f29d4fd4508b81842ce88cd04cc55a2b73dae089634bd2b2ce43f792e0d2f72cc3810b9c8e2707f3fe0bf80bd45130f6007ce7c3ecec96a4285adb340317ee0ac037c58a7f76d9045ecda1931c125dbda11a03a3b954447da11a7d163e4f56dcd8b99879483e7fb69f1d336c40461066922d2868b91acdcb52ad523a7a68aba40e9205b22812496f31fa17dc923423a66a389d9eb91cb878662722eba30162b148354c3a3e66b24c0cf9586adea6621025faae129c4b9a58484caf37abc49aa5f29971daac89ee00c87d1b945c902a44f24d239a3ea1df6a2e05a176af36f2476ea995313c2729bc4c88d136666b79085ac3db00e48e9735900e98dee905a4fb1e162f4055327b5c87660136bfe42fb789f7dbebce796ec6630bdd5bd55c990c4318bad90742c2e548f02104088eb8f4db0d55bf982b18d29806a90c72f50c0b361ed6fa665b6526fd94ce2b0826e230115aa5d73279f74f7213a9fa3fdd5cc3b915b4ef5b60be46a505be3394bed11d6ededd76bd4b830ef7b09ccd4382b9b3d07ae50c2e407509ca6a1859d2194c7006696662f014ee5a71514f5d9d3690ba0d54f5ab5dae33682d786284961d7de79c4edffe28a1c01a3490ceb20811df1cfe5954b13d9aae5496cf022cd8bebf128f578caea3851cec11203f7a8ae6fab747d0e31aba4d58707428fd27c618a3630266b5fd94d4b8068c8b372f1703cb54e62c87b5e605acdb8edae624b831f825e09051b1de1edfcbc4946af4780401e1d023239bb456c78416b04a42d2a7e12b468040416c85624e7f99c742c785010a0df5f1ece5ac7f73f7867c90e7d72026c6500dcd948eea5bea83988add5ab266e4c682713d393787ae83cfe6ba699d87ae7c59e139d37c40474febcf1f2990e087d4ba35fdc2849ae172543023eb240e3fb7fff84c42ab276dbb0355f1cfd6bdd1f0401b34e33f9b405fe0c13552ebcc55bc40802529cfe9a3b1808088283096c4e6d70d57754e2a9d03c2e862bd9b3845a09bbd5bf0caf33eed8c2df58157aea57792b65159f4696943ae98dde48630a55ac6118863c7f93157124f147234906f43caeb64d19636ce9453eae6b2ca47230f87ef5e3da7bdc72b9e7a0dffb12c6b2323693f25069acaf1a869086550cc0712f88e6d210cd144681031b1b1ef442ad258c7fe242e5dd9ceb7c48cf303cdbdbf9544a07341c729e362cb3d276343a4865c914618c1f103c4dbce7d5cbb9228eb635926f39ce15929b93808e57e35427fda15fdceeb46b8387d08f0102556b01a2754ae28b19d5a0d6720c71755cd674c780831f3cbf345c9bb7b68b2fa841cf9ed1d8204ac05ebefb5ad1983deaead2cd5c71a960b4837d22946dc9d3b60f0750f3d8a53f443439d78b47a43e6c33415e75bf0ec1dc116bc66dfefb2827a827b8f415e9dec139af8cd48937339af8d4a914a236fce4ab3cf616108851890ca158ab0e8a8ceb89c28cc2d7bbfd7ec377cbdcf51e82c3502a8fd2fb869366b9d7ef8f45f1064d076c9589ea909019de686265ea92369b1e4c8aaab055353ce98a4485167eeb27738d89c83386affd93c2fb0a70046fa60ea0899e3b5e51f80081a44e95b22b4527542a8c7ebfa7df96ebf11a98f1e1f98f2b4a56efede17dd6ca0a8f5992178a899e35d02af5f704b0a5d7790535af471b5e80aaad49dd11cc8ffda61c4882fc48399345011702818437e16306dffb98ec16b62b2aee70551e48d7aaf0f4858182fb584af2a60df13dd117444d5dcf2586bd96a399a98af3e4ab4e1c7cc39324ec6a4e82055cafc705b068d6f877e362b8cf38521862edcfb7e7725821ee55aabda7684d2c5fa6d313ca6dea0a1ea54614c2cd20a756c923a12c056eade4fa898c81677958cdb13dbe80c3d57773cdd9a3b093a4c0f670b023aea301a1e664559ee1ba88ff1ee58557fee5ce27d69784a9ff7aac9daf810226065317dad81887104bc5647daf1b315d7e23133cd3ef1e14b026cb4a0b3d9030c5060baa8a6fa86b16b8816281f68ad0517f1299af5387cdea3518ebe8eb402b62160ba6386d05f5f6e1559beedc540167307473a1fc88f1dd0863b6bc3be1c814c3512e77ad9eb1c8b7a0df03553a679304c53cb767af8ffeef26e3c7f34dd132a67a04c9985187e7392b0a657bb0167f900bbd00e403d313b098683a9114cd7b8cdb9941fe1e1360e8718a8e635ebe6a06978a5ec5d988a82bd9629f52b66d53774f5ef387b2dbf535cf3099ed3bbcfc3bc9b1a62d4e07093960a216eb823704e12e9a6738da157189200ec6c66bb4d36d189104c2ee6e3da1cd82cf09a3f7a61c11fe8d9acb53be3b2f13190467c7653fcfea4611ef3b5fe8b929151afd13d7b84a483d45954cf44b0cb899c994e01ac5672856cb92f1295b7b72744d482e2480dfac1c2c7ca67424702a2e10305073f2e258405ba22e3c69c7416cc3484bc6cda50b73644b78c2769c5a91122a078d822045f872a98d8cf6d0fa0be4dfa530f21d31bc82a742186dc0e1e71ed3943b1e73169ebe91c030bdbded3842eca6734d7dcba1862cf43fefef4918935f80d8be1ce534537439385a0bc072b095fce1d7ceb81ba4c727bca08bca20b71fdb13642af122a7d4b3c76d8e5291c668ed687719ddc54443ba31e287cd1e269cd2e680ff09ed9593a1fe42592f852127079c181f0e54d42eae0ca0c7e4c19b3878cf9b1b70c65c81e3052a62a5923033703d8237e53a0640826fcc7c97f309078b39ce04802310d87a7abd4f3d2eff93162865e9298aa9761ff5d708af47bd8c2a9217d7f5d57b63847ed792e3b2da51186331bb022e32f9908783a7cb8c8c4f0be769140fedb72865093f98689e36ed0a2959777626a70eeb988d1722199fc7e92e6a8dfb7787826bbda017cbbabfa833b9e3925531a4afc45e9b1970a861d6369d2ed71482db72ad082092c11165dc3f8294a8c71d38f790ca511bc898ff643ffcda3e875f8a0b3b7c0d49497cc2d842135b17f4dbc1a4ec8c55bb67647b17210b4194583e046df9b02a53a7ecfc6b195229eead65e4fb6dbd461bef4f51b79476cdb544ea5ceeea7b4d906d907450d2abdb5f06443fa8e1db3944bbe0f5089ca20a649789e59adf477d17806131b682b7912c3c4e2de22a56fd817e12b16992f3c5f2f963cc64c24f958c55a9b3f719114e559446fa316e0fb83e5f547666a6b73e95c6706f3dda17f6c533c90144066c8cdb029e9bb5074d40eda1d1c36bf63277fb217b781585d9e418765f5177dc2924931e55ca65f4978229bb19961222644e62c888f8b4781c238c4aa4c6354ac975603567f56fa0029e51e7f4d18bddc1dd584857aedff51ef3cfb6ad400fed58c0c4a0671d66d0df6319c0e2b4ba11fdb803cb2b9a6246ed159c2a23b3206ed897206b8902eb796c142ac724db8319da5db61aa69465a9b252ea1096b59ad7653f14f2b2fc684c259889bd8fceed9b63f792fea5859a41cea51335ff677181dbecc9f4b4153167999e469070e242a4847265c7d13399335381c9c71fec3722fc62724963d3d1543b6ba0d2ea885e6990447fb8c72061b98d7202cec8a5601a87d9d9186598e771e73efde416d809ce71d90e3a4304671c3bd70de1de6781e3bda32caf3754408887d5202be0bbaf365498d69366284807b90abc934a8227e2328f5db131566494571aef8c99d3b084e82cec4c86f75d1e67eb15f5ee60ede4821ce3956898c5e1185ec592da7a68ebaadc1f6fb9c0f5615f02591acb0bdf32384b067f893a3090cfbd3e656765858a64644e0f62d465e9529185ddafd841c7335eade2dcb8e510a6f66a531f9c123bb7a65ad11e3279db3cfda65a0df2d52fa1ff170e2e63dca68be5ec79b84a94def6368304d38b44b13d198aa0816aee4b7bbd2a47121d7b47d514ed03cd7b5d1f879ff4a4eff3cee1c0e15d7fb1d0647ed5e70a06cf93c27b8be76efcdd288eacbfdd4a25553dab91be84393d4b69f78dc43d81d3653151b54e574c2e705ff2995411a524f92c02f883a3a949ae852ab8a26b3db87e588ddf24c3b2a071a52e9a642cca8a304d80b5ba4c839bbbf2eda48369d8bd9db5090b8df6bf9f69d7be90a75cd7fd012b18319381f8faac79f2eafa693e9211a91a0794e68d7fdb36fd68758f9d821ad1d6abdb97cd3bd396188de2435fdf4c675477e063ba8bc340702bf99be0999dcb86736a9b3564215317ff4bfac3e99881221d64249c156341751bd63643309bfd9b6b63361233dfd8dc472dbda83ce3114d1bb814b7d591d90d564b97a70e187d59d532aafb8259c7acb0a87c70f997e151e7f4d69ee776b6fab66fbcf88e08b065225162edbee234976e2c063d7d9854571f7374f35218ffa1becae5b7b4809e21b074e569f8d68d143242a3c5535f87791261c7bdd195d98b84498392e1ed1c3307399d9c37ae122df7445ee435c92a0f00a85a90cd182748cabb9c061f5c976182c4537c081a9d33b1ded532be29ce7d1ab6f21ce82a8726e2bc2e391d5dd4245b5791abcce02fb10fb24fae6abee0a3ce8a08cea70ee45daa141fdace6d12a670c59c9598c5c1737e2e056e275976e1c4635f13a6f5a1749fcc7bcf76408d41ccea099f586f33723840f2e06479f5e649c29543f2bbe54cc51402a94d5fa8aa32e8fef57d241fc5c69374b534d4b7e49921d871e9a809f4b740e9d3e53c313ab3d0d7afe022287901f7822d1964527cec5380d5e78b5b5294c253cee5432359f651e1c836029c961139094248a1258d4fe38f4d2221b4968179bf7ad1466de93bc4ab9dbcf1991c648402dd9d3006258c65f13409b52b029fef9b2ff6cbe141845cb29d27de79e23a28994fd8c2f08200b7de8f7d16303a80b46eaa1483c46a533541d468e0182d4566ccb812e7b94a5154560fc1b1a558ce8a7eb24d8eb1407f4f3c1ed4ce2cf18b6a365d5034a7cf9bfb1efc9b8a18bfffc8b248c5e8ff537718f736998e1d5dcd1a7ffb8fc1f570726593fd71114f0e2de1bf1ed8eaeeb1903c22fcfadcbfb9d4f7bff3bd08ef2c6fcdcbe238d463fc9178d943f728e8284130b0c9c5f4d5f5e09e35e6a803ab002e68c8bba40ef851a4690017bfac94b9d578cf91d2615f6412360794bc4c17628a1bef13351145544e7c2aae73ab61f7be0d1fe41a564a90bead0ccfa266258f24ab61997f45e88839375c0541d9a81152d57681044b5a4229829971e59950afabbc28788ccb05f4dea72ae3a4900a4c918353342e807c3208d21db1fcd6ebd2228fbc5d6d564190f7da2138de1015c08c160f59e90a50df72baa5e4a17eca40692ccd540702dd4ac88ef3701da609f07d6d5115dfdb473f51f57b061fa50a2c6fbab608e268ee278e4d0c3b4102f1aa27fc740c5b601f3db8245419189826daab749ed01a92f2999c63a37379609439196983304d67ad1e9aaa9b694e63af60fd5b5edc3aa2823eec9d0e5a491f608b7267d9e11e2f82966445f17aafbd0ba6f44c763d292637447ade0e8d666d65425d40389efa1cf091bea481e286f6cc1da8368d4314525adf6f7ae27b5df2c3efb4c9da8f3311a5812a15c9140e8b14315d7f7695c13a9a2df05af053d3a247e6dc0a61267e6173655b101f53b1688c5aa9354c8490875acc3bb47ce72b63eb5ec7adfbf66380f2550c418432fe47df1ecc0544187831e044d0d5729aba90537d2f390167b4ef46eab949de09eecc1e0295c76de707de9892ed2bc5678e5aaa5ff7bbff86b2cbf5f49874ce9162748b2a43851398f43f1cfcd95a40d0f4a59c72ca82e740606bd10bfaf61866821b163c536e755954275b39de82092db790eab5f89d37bb522268212d75cc9c798f643a95b18cb146802267338d37e8843e9c95093d51971e275a742ef8db39dfdaef0b896c4287507166344f2b51edcccd5f3bb5d0caf0e459135dfff83faee382d3e41031cc7d0316d4bcf466c927974acc0aec849905c510f5054c98056bb2fd026d28463f4317713bb36c073acd5dac662d45b5a9798a42b1d70f8920bf353051fec5c6a83d152e88dd2ca3c6c50a99d89c10c4c2a270ab292755563206ee13e2df9a4bef61397c230087f01fb05b4b6dc6c8f55c4dcea745069b0f5392dcd5fc3f450acf319e2c5b00d66a726aabee5436f4a2c67d357d013e161531384b23027f520c20d1fffcf2a7202b88c51a7c44b6bf2f63149ab71a0b58ae4dc72231c8fcd60d2ca4c48fbff243249be2c40361454bdfd58534855a90d9f8d9629ccaae1c466afba74db4fba324f439c97406979f0521abf30ff19c0833cedef2dbdf095f74df68042755a34986224753caee65d76f0c126eadcb71bace44f21ea701f19869492a06f2851af0dc7cee287f0cc5ae54f0553aad8edba40190c4fbf4a1180a9609324c28085ed718716fe1b903f21deb30e9d2a1ec1d94cddce0ea644f9d333fe4f212e315fe0f3d1d4121095fcd71838c224377a2aedfada43ce0ff1ba720f89d82bc28000c3994a56777e7f39a995f4c6d0ede44eb446096850eb341cd0c4d8504404d259beca37d35fb9d12075551370e388fe8ffbf704430dbc00a8a48e389bca82dfa66511f232c18d338da503790782db18cb358129155507eaee2a6bdcb2d5014a311aca75319f71aa7db3c8e85d331e3ff39f88cf9144a08baf3fd4e93efdf08ea46ef913691544cec56006633a08cacc399d2d355f6022afd735b5c32b5e50acb2ca7a4feb5f3d80fe72fe5ab0ea9cbb26f3efb52068d1924134856247269613e21ae4bcbe74d4637db036ce42b06df7d1bbba292e62132b57dc0b41dc6be3e01b3a5cca26ea4505c318ae6b9ae3b5c05e8bdb575460685bda6d682bda5a1337a930807411216b758b32542ddb76fe0421056fa2911cc7bf375cc745659a8a64fe03a9e2805bb9eb49860f483d9a0abaa75761402a37c66a70d6cce4924d0355c323eab95a3fd1eeaa209813982fc459b1493f32e8e8588cd81ccd146823e2728ea20af131699fceaffc0b0fefde0e5f30a7bcf87a712cdeb5b895660aa3320bc2be9bb77a40dbfe1277be1e7bf472e00a472f2880cbf7441d95ba87ee976015451d8e68dc7188748d022f5adf8195b22bb148c91af3a5a7e43f76ef8e7c8ea7cff557decbf412d55374663177a4427ae03ec7cc9fdede4f102d1b93106957756ff035553d25d7b80588b77e83812f566c31f6c3413864c158d270905190dc1798b86c958bf4edbcc516f999f16a531e3f76fe2333f353a6f5dc37a75a09f746c3636f46418bed291e6334d1b701dc6fc3ae907860adf00a15f5b66184c7441eb7b584fd196af089bfa9eae055a93b8d3aa9f07064514d4108b3bb39e3d3fa2a6129f9e6d776d1dfce884c3d4f836c7cb66be33c3d054fbe568a1fc0e65d97bcfe9513f38ca7f7b1e4873f1cb6e71b62c9cb3688b687a841e1e6d33ea3d23d1e700ba201883886628d3c42bbe9f82279851df86ddba256d0c00e07634b0f0af884a113fe2854fb61bced9b4775681a5f9b378e7075763bfd71968f5193cdbfa2dc967ed4fe10e2a2abb63ddb8b39a8025a5d68e1fadb6909d02de70ef0733569b10ce689800e71bfb270f42ffb6016810ada2f50ca9a887c07557455d729a3e2e59d5182fe1ac08c997d4a6d8714fc791a65664cd031c1490266d680bd4379f71b93836339e216975831ba1c153ac9adaf8230a6659989bd2e664d996b5e70b9720e1a0e89a2681873aaabedd1fb43c3f9046086de12d7fb49c2c62ca3e87c847948fdcb3104ea557ee969dd29a1aa49c6757c666dcd23c9474aa28a6a8ee4216b9cd9bdd49ab9be34f744b7ed164a180912dbfda7a0be51a0ab0a8ccf1548e36c8ff0a8ebc55d8f2c3cda5c522cca47625d310bc4ae2e378fa2b7fc435090c9aaf0e861efaa91ff71d51838a6288559722ade02f511f563664cff3a0ffb01855fda85687affc93eb0656faea47795f4f2f3bfdc8b3c565f52c58b20c6f470c46f9d1633df11683de880d8b9a6e5a3cd762a814103819e8a3d5196e84f1d46e50fddc84515e5e049ab429e9e7d816674b36dd46ec4717ab161824599a66a6e2f42613d556f822d4780b913f0a87cabe96d030c12da5b4876699201cc6abfbfe201e905eaffa65c4c3792cb297937620cbb9b9ffeb4122a3e85073d67a6e680d0a4d2261bffe845e98b0eaf2a3da1936096ecf46d5d521faa6009e0cc6a97baef88ad5d693ceb107fe45c6f31fc5f982444c75fba94d820179d3ecf8e4841da27c90b1f659561f8814d2f47118f650fe54128921e9c1c00498118a83592bc8e5ca2e1f218b9f02974a670a593d8ec985eb544f07fd193820c1d86932dd6232adb706f0c177baaee20687600c2b82a1ab35aa2b0f9c3313982fa6e634ec72396923b1c1bb72ee8d13f27dbccab09b11860af0a73f81af55cf43294ea9f81f7761108c61f9a14731936e88e4d4c2138db35691bd273ffbee4014115e40f06c6bb53663a5ff9f7e989a8a7b023295a3109a75a77154a9cf430bf67dbeb99fa79d5f4a01ae69bd7dafc9803fe41830d26ad564e9db25d64a33ee593db5be67e8dc352549ac9863081e118ad1393d6aa5ca069d14dadfc43cd8c5b9da7b9834bef98e4bd706d2e6fb9d768ed12daf0b5cc90222a82139ed20804b612b15e94da968f9dbbac5c3d1db9d09afa539a19f4e923bfe5235bf3846cad469e7764d1205d6882cbbf548f232214f7daac78135dfb4063b26bd28b5a9bfe89a9a6dbcd1e38d313e045e619374df1ce27e37f521a87b8570c628cd8e2cc5b2eb14599927c9c745d873ee641cf9e20986f39da2a98dd8bd6caad6d699c207cac1251f22c4ccb053860c424a520df639cde3e4e1d0a927d949e9b121b387adaa017943996db18278942bbf56e2cf5ac509df39892d830b015f952a3bab58a5bf40c7783b4a457af722d5e73ed67b27e2de5751fce4132c271623ccbe7ebd40531fbd24ac041f06eb6b124711eeef5b06e300fd88f67cd2335bc4abe2ebcd881163568c35aedb02f05af89144956677699a0c937242ecc1c4e0e862eb34999f32981cb63b0b42ff851b3e45c0aeed01018f67e9d78896d7b1e71b8056d6c8ee7f64938981994cc24d3c7691f08b6912d631a0e8a399d264fd0afd59769071fc8cdabf6f4a27bfd78e3f0e8768385187389f70621ce7a6e69f472ee342ff3e01ef7046d7a51babd5351efa1e43656506abadf699869e4764b11bb249886a86ad4ae00d90c51297f756ea910ebf485d3aef6cf3d98436c2e4d1dba5532d32f049d13be2037b5da9bf5f29d4565ce8c807db3cc90630029da9061c76d50a47bef8fdd4c8c022c0aebd9e4a9aa9c2adfbad60b957b34a2b34074197a24eb5db0a702e9bf565a8c4cf8a6c0f90bb72f3847a5a85f61963e40ab6a39cc283b3bc5ba3d355f77917df709c30c8d97086b8bfe66caef606d176e149114619e6ef84490576b6de2d7f05ec3861fce262d9a6f776ea4c2b07a9d32fa736b15c0637e38d6e32908b041c97807a61f599326336e855b25b6af6a39d0a74bdbd002eb4be30af1f6e6577072ae4c06b7f4b65901f78bc13bb051edce2cf30819cc642dc03c3935914ccbedf171723254fe0b64b958c3fcf9a0910a57034ba577874c365d99c545a622b5dee0bde2e3965b7d0c24cbbaaa29050efde94b660f671592e7cf7623580d89a952e28d45a9da4525d6f98844814d56d29029e92d19f7997717689a5ca574e48d8f49567e0da9b842f2f2cc0957f0d53d011a22a86497de0de7041b763698614af49809c17e82efb08d7c742ce4fbe04d5920c54193175020bf956b4829313481b546755f6c814823be19a0c017cdf01783762d12a79bd77ae08d3c39ab87e144be4439fbaa08fd0af76aa9b6f38a8adee7e25f772fb2eac5af76a351f7b9dcaf7e9671947374766b561703c754ef345b815ab8a7ddf3381032adfdf1724ba12b389bb84f52c364314971db358938b7215f0989b8228ade35679f99ac4c35f96f971b810a7ee273b20276ab4aa506090cc864027e4b11948ca234f4353c291a90cbd38e6e4dc97e6c745ed4d539ed39aa83685204dc41904214a43b7b5f314c4210e85573f8e44c299cb50f70cf1b72df8779ead235f142cb477e31f0e44e5b677ab7a6913de2ae9b0857cee31b62ac3679fe9d823198aae94d63fb096424f2cdf09229be839e7a2a8c1b3c39f6a15e31211b339e8d4762825ba7300222a5320fa1acc45e18aa607b3415c18f9a425da694708d5534de7fd83786080e7c969fc7449d5ab024fd556327bd211a521d85299251cd1d14fc528bb024e89b31aa135fb545b7f5ecfc0f1c3b86af791d7d6bf26e4afdea2faf6d94cc358ce5c50f24409cbc1ff9ca469f152f41c399a99eb5b339efa4386de7d1af357fdf8eebcf07dd62219b6d508decdf36e72064228b4a1844e0d20f67043b12a53fbd7db1b9d4403554e5ae8fb7b534988ed770751ab0d6f6414ddb494ec5e4a1f2f619dab2a4bfacf9b021041f0a2f0df6937960f5f8b64708c03869e674bd0ea3749a547b1a4c0bc644c98f521aadd392eaba111612709407675c2ddbe09738d6af3ebc9e79800e48a42dee07d05afbc5fa239b1b9d640f68659bda3cbc488e722995c2ffb70f2f4901e12d564bcb2920bb6145c81c29a277e22ceb4375288227a9985f97dfb7b4fd6be35032a4f0de6e77e5edb676483d4467fd38299ab866cee9f3b7cc1835db4a7a2abe56da517c1af9ce0aee5e2c8b63153d41acdc18da0fda763444982abb55134948c0dca29b761a601c5bd598a4c972614edb6c2543038c008bfd81e1db9c53009b5e661719f03c025461a4ecce280545e974b12ce565d6a1126275777f8de8c224f325d67821dde414b3cf020e85051a7723fa437662a591a39d278e65489cd4c90da2ce45e79deff6de213e0984d39fb7d3be7d66d6b39cda24dfb582cd0fef0b784efe0e31def20a9c7ce8f53761c9de7fbc9cbb5e9b9eaaae1e382377ab3321bbc7fadf5ee6f41b6d676743c3f610dd7beedd02a1420240e57a4deebc635304fdaf5a0716e5c5200e8a62e37a62b51c10a67d0eee7caa953df17bbbacd76f3be8939447b205520988746fd1bef45905c9cf1efb2dbc866b4ead37982fcc3bece0fe1c9723052059b1cf739d39394cb306db8387a0d990131c06c42f2e172f67cea28e469c8911336b09fe2cf580613754ab565fd41a973038720424e04a72f92f8dc82a43a8fd185244fad5aa9d937df8433ddcc15924878d2d6c319a5df3822b5e879df02b7896ca9bc4877dc8d2b5adec82fbaf6780ab36f8bc7b71cafaf9b5d59cef86750bcb276eca53a35472b4fb06ee1cdcf3a363e3f5b6ed07c2dbd757021ac2a7e6235f1207c0badf723fc89e27c478afe5ce8982c5d334f14fe1b49c076ab3a68a99140b27f285acceb01734eb708aec69d26962538549825a0d3175de875e86b93e29a46cf2c17afdb9ee6334c9d9ae57b60bb27a734412ff16e399ccaab07f81b58553a6e5b0709c12953393f48f78c1270c7c13c2d42f0c98d7049259fad463162ec551c0de89cbc4b76a25be8c0443e0b140518b3f2f4a087bd6baeb6294b10ea07e168c3d95154ef26631a0afd0af0a21ef61dd3cbd501cb14dfaaf76e0b3cd1e0e97f180d9beec1e648395869f0f44c5fa16b6d95c0f8f849b7f99d15eb3b06aab7050e56f058896f0914e13fb3956e693909f967df365f2c1d16f85d93c491dbb5b1dfdf5eb412ad15679cf3eefb0c2cf028728fcad67667bd983013afbf958c00c8f29450a6e28890251ad7328369da357723a070d1f5a2430efad1a4c524daac22a705d98f7dbdd1a8a54c5d9385f9bd189c12f6f5d79c146e3bcd290fa6c7791e76f886898af5a3a9cdad0fb78d6de6bc2f8a723b16a4579e122e3a3db2ebbd1f9516d6a0a9b22366f8d912793a3a093d345966e3958f447456324a9227921b0bd6c71b3e7b859ec5cb9c59f65c1eab41852e605a6be8fbec66b293eba39662dc664c094962a730d661c0db9e00d003ed9dedca1f324ebfb3d286d57b0f581d88e81b13a86fca000f290913bf707ebaa00371541d9ec012efa05d94969d5a25b0fb47d1578695818facf7288a8731053dc4602fa2b4d0bd4e43d976e15f731a61d482e9bd43ec2f4ab24e137878bf7d57db09b5f96109d8b5979dd31779d4018dd25fb2b655333cd32f417d7979a4950964853040d4e5960a480b54411e7ed43508887591f286a6daff86064c8241a346b3bbfaee2ad41593875b15f702866ce16d3b973e9b337fcc45585bdad670dde851aafbd4c0323a8c6bb1faf95d9f652252d280d676b02a34f41d055bce2f7c39bd2607f9991d04ae448f4e7f2316cd27dcb8625be811cb2e96b7ae9b478186469ee1167b415aa13b142bb93c23f02ff6387a056c39a9908f2cef4cafaa469ea964ee9aba8ca96e8587dfe90745d80f68ff56418a7f7c63166d0c0909c61b333cdf70aaab60ee6c2a3999318b655b2b61a07bbc28ab614506a2be83c4ea281b9b8879aae3125f121eb17dbf9540681180faefa2691312dcf8cb0c02433a7dc58b2b3cee379e05a713003ecb63d3b1ee767194689f196efc43c9a4365030ebe992d035e0ce23fc87f5766f0c6756845b17b71a378fd73ddc9d16c2cee7b4e497e1f29aaceef840e8f17e5bb79a75d96cd74c49f606c0e0aa192bfa7959b95b9dc55d136b46e30c2babdafc5d8a156f0965447860d6b753718dfc3728d592e858b3789a8f6a3421f98973246e36316b539b5ce3557f69ada699b6997f51a32c5280691ecfe59ae4dbe0a2c29695e21cc5fa974aa6c5b9748180a99c192177ee344d17310071714edcec7360d68c9f50720d0c1ced43b2e4274bbf360db1a7d4f54633464f89b02fa970ce1c141ae06859f355652fe50f1a5efb51125c4c234cd797571f51c5a7093682e0a24f9a43fca95f6fc8936a0e50f1a400a3adb1bcdb25d336646e3529afd66238d1acc298dbf9a624778ff517bb8e0554574e25bbffe4356376d8a072ec629f4b29801459107b2e5589310aa9337eb3fd5da8d531099e66dcb749630ddf11e5073a2d92f94af51d340f9e2d7c63fbc10f6a5802d84f548132754590615ec1d12ce6cfe0730f5f4591125e4ffed0e941b291d6a8741e34f4f72adf8012f6e2f1d967864acaa44308af1cfdad311e6009c1edc3520658361c9e9e0bfac0bd66c9e1f38dc0a19259d8d451ce50c773ce3de997f17e7f5a41e84bb56a1b4b7f0931a7bbb515eb5292dde549d7303e546c7cf6a0c448c6008b84151a10a4ae427a57052742dc9bda6a84b6eca4bb2b7ccf6827902b9cf98805ecebd48312d0df35fe4417258f8b4302785564fb04e2be6a173b5183b0e0b641f939c8885010af0d64a289444baa70e33d530d415cdd7f688af92171b93cd0177ae41cc0db1b1e5373930870d4458071c9c2c22070367bf4b31d27210c3b87c56bf3c49ff91086f6f7f202df292d0a103f02234208b4e1cf400c6ea930891d8433666c96cc18dfb00456d8508aad617c6374bf2a9f1abeedee8b2a8e67297003592305e3c4757e3dfa374f6428d7e51300d4165fa1cfc8ee3640304b7c6797f2bb86bcdb9fbcb51824b4b0a9df5ca74e164b5106f8d42b70e09da9779631ea8317dcf42db9142447df18e3d2b6b179687235aa6ddd021f99152dbc731af6ce2cd000e8fa722dbd04a0fb28975ca262ab5a111564b09af10b50c66b788bd70192d45908537617ba10a9af693d6b00014ba84bdb55674067108508e7b3452d75c4e0b1be52eeb4fe800e531986bf24032c6b8b148c667c51b9a70714ed74591281ac916951f1b28d94dc336aa640f2710fc038fdb5ed1931257259f174108d6095456f528b7f872442166a95369feade1abcf309fd891bd05c57164e39ab1674f3ab0299ea31668865d40235c75916d7697b941e039624e69f25e4cc325fb4aae8b9abcb998f0b6a0700e547dfbdc901827024cbedcafcda27eeb97a5f69d2dca741f2cf6d4e2963b0ea50f5995ce0fe6a1faa46b3badf45f8807b47248b35fd346e958d18d58e230e2ecde554030e4d409176a71eaa3e03bcb472f86cd20f246c07ca9347db3efa903c311debc5a0ba9f044c71c86b5c0a87e29de6b6ebcf14a9df4cf38fe27c713c7a63f214f8b75d2399b058ee2af7a9e84fb9edeb5b4c095d382da350e3a55e4e9695c001a24a4ba9cb8f2977d41af0f71a19e0d327b3790d43f0bde1b385c7a3bb9c40b40e6f75c724cc898c15c47a3d445eb61d135f7618dc03cde610f08b95d2010af76c3b3609c6e30c693b8856027229c3b0148e96a9e8901081f5276fd0346b36bcddbcb7fdeffcd84db5f6e7834028758560b88308cf232152d514766449b0816a4b918ee6434d950e184ccadee592a680d0398e50a4ff8a9f891225493fd423962d6b199b825df3ada8c51fbe8229f324954aeec9c37a73e269676a0fdec071201f1668f5f12a758fd641a921d802d0c4bff3efe22617f2386947709db78fe0e44e8df4d095169ed432d1d0054e2c0b4302c0cecb480968577e11bfaf0fb11b542b3ade33601830cd10e103583e2e0b9d1116c1bb20d14909824d4af0e66746575beff87acce6badaa643a97dd7ffb4cf760133f0b9a046c45df7b726881a35a6d4ceb4ed16324d6d78c4c9139e9626e25f39887db0f5469b9b27141d98b8da7184f689cf924b7a954c278e39fc9e7ee1757248522fabfb0675c2c04de99ada6e42868647bf77468def0f420efdf62a029df18a95c17c618518253052b4e230514fbf002863c2ae7ec9299dae40ec79047275f8d90c37449539a56df8def159ff32345a44d470e9784a9b01c0564d4421f8384dcc2d997ad4c1b2c500b53b1096866f602823aa619211e2aa87c2f18b2671e8fe2f4525d58463db70d9c502ea503388ff3f61df95f0fa1995822f7e577233f4780726fd4034c06992b73e38c6b0e936a7cc82164b39a87fb9f9b6719daef964e29f23aba514d5566eadb995d6507f7008d77285df51556544f116afc7dd855b50a5288e4faaef73681be8d6e10adf43e3926f097f56b58402b7d67fe6b974ec32ef1e5541fd141a4612cf0ecfc403cf1a4063d2af20f1830ce2ecf50ef309df5add3db85eb8558fbd0f6b0ce9788de56f5c6c21b973d97b2d2b72bf44059f1a5326d3d8864c0c5b2d09a1b748132b9eb4ad98a73219fe2296feaf34d2377a413d0acf2253b306ddc95af9162cff12d38651a444bf7501b1678eb2b3925d9dd80d2aee92a75faa8cc834bf14ea1459ff5aa944b4c1206cac2d989e4b0be61b2f7d1669f7458303392bcebfd745348fb7a448d2f20af607d631387b916da766e02641e43a0d8d24288fec636ac70a8e113faf3919f7593d8562378cbd16e3117211c8cbbd3e0543f7a0d1f61086dad200c6e188880a8ce034dfb8eaeb9b05f2181f5d3007e643b9bcb4f8fc0b51d59375c07fe4674e91d32eeaadf7ca8143e500ef92cd9ef2928d4bc3245ba5e23f59814452c936a56eb38656c8c787e46437a1e0506ca35a1cca34e2f1c85c7537605fa05cf613b06f12e676bd0dbf3b87ec2c51a9f150d352866890576523069911f7921abb478b37f3cc18e4c17462867a7ad02b21c21111e893ebdb6e7d0311766487f208e7e80596c583e9fdac2a2d29ccf3a048ed1e1f51bfafe935530b1cf2ab6821dfd6cb1aa6b787d8997ece53e3094766b82725628460c9aa1c615ba41e17c2508245bb2fbdbced5b311001cfde794f9e6400a226bca22c19cc2ef93c23279531f4c2099260e10dd2b9222621e33ae8df3ff22f0a862a6b57dfbddd025e1d14a9312e1f97c02e204872ed667bb3322b5f1767045727ce5acc1e30216cb1c39804f44b88842a4c29bd9c78e647be78a6eb3a2e42478376c82d589448a6bfc5f24a53c082da36b931047726850ccb98c1e71f8095ffbb9c441c0705bb8224e9aed7cab9453f890624293cf711efe45e310a9094c75480227a041fa5a821d5ab477eaedf411ad930e3a44a32ea5df2febbebc750260a5571885679f1e440df22532eb6f7c3c1a521e6e15dbb729b612568d1996561c85bc8696cd9a71d02e838711ee47380697005ee3d1947b1f009e3fc89a871a6a32331a908dc483852a7206085eddc0a00e53582af4c899667c775fa6e94e0a7881373760c66f32e5c90154748e97e5644f32ca1ed51d36a98b34b9a72b1d94dbe431eb3a2dd2c351bc5411ffd9a9fa6d7c747b0864e217af664604eb7215f25d27e3b7a9f6af3bdedfacf36330f56ca008227b6380f5e73be4afa339ea11f06d1eaa2a69ca86d78cb586fcc075235db00682dfdff0bbf89a2007078eb532e825b62925071b2180f4943ec2c3ba47a2365d71d1f3fdfcbc78c7a01fb5f18635f3ad46b0d07dd57d73964c12a637cf871f9ed06068e60cd53cbb56049f9bd2623bf83a47c62a637f5f3731814a6dbe8eee660d1d3c61b98489cc00b1684c071e565cd3b7188feaf06b902dd360836b77709bc8d4c528417a2a612f24b810c0eb060e88aaf2a0d8431551578c11fe9d7fbcba11994f68e0ffb109b04187e8ed7ce94a19813b013347b96b861ecf50c75dbbcac39b6e1ffe006942468b4a3c931b5a07a6e5bb9d492dc563f81f49aa7bcb03a9051b6aec5f65228a8acc39b7e473b4ceebe2bf37f5df064a42621fc9c4095fce203c8bf2d31c21501512be847d5758a48e54ba179b91803a2508ae8c034b9271773914322637fe80d60318543aa403704914c3a4113ef96996208571381806f83c8fba5a7e199b7896727403cd32dfd582444a07e287bab52ccf29963c2628f3541dd43e54853f6a0bbdef6773c4f5ec8cf2e4ea5cb8596e61da21f4d58c57a4ca055e521361a5f832b1c2315161860fcdf8be218b1519ebc96dd702f5e37c5ce66540484614c39c6b401780a493ee10ce5745312ec667998fb69fbf8a3ffed95a5458e926a7fb62ad5e58925ed5f6d6cbc800cb083a1f4a3365e91a1830d2ed8dd3e4f196eb76898457dcaff48f339da510196ffabe3689233fcb3849d150b36a6843b295a0dd5030fdd4078c942c596f4e27c47765e500ada061d99690e6603c0b5627e39aa24c0c3c2f2b787e69643e65536549729b6bce5a69ec9a0115e7b39472d1132d7b3e035294ef0b9d0e63e5eae4ab8eb8ff64fdfa734f70c0d02b87f104171db033ec9dc1d0b220b1a8886af87c9110522efd72eda7da300add731c1744725f1863af9fd391de70e731c67123bd486ebe7a3155519c4894f94ec96f310eb93cdc475eb1de36c3ffc2b9664e74e5ea7103040b2708b91f2d5c604c242592fd27671ee254680b4869cbd45f52cfca80a43d49172850b5d9b56f0779c984c1ece4ccbbdeabe88e544dbf5348900991d18477f223f5c70d602712c382a1254600769c255f4cd76bf83048780c6b837cd19ca7d3850a5f0454ca634eaf63ff06da9539c10ed49da532f1f7ded73eda753d9c4084c0a3e38e072a60f109e0292d7e970df787cbe7fad64ef41ea1a994c1b548f26399531ddbf35836e1fdae5412362bb70c17a8c716ec6823a4bdc09ae6cbff511c3d027bd860d2d01d83c28db8584309c0aaf7d0aa3c764552f27d9a1f2a4678c81a39eb40eac418254bb5064f1903634a7855c987a42315cf6547803fc6bab11d195bbd57d474f4738becbc13c65e049f1239da9edb54a9b984fdda737f2060114acc32b20ff495958edddff884ad4dac1c88730ee35b4747f9a5f72e2bce22ddf465da4b382f122a03e6a05643f718394bcc621a9e90154ee121c7f8e916deb52a6da142d42ac525db8b9c8a4d5c3cff78687eb70595b8a83f9425ea7d4d1fdd23ff4f6262990805d79d79cb9e9cff56a7e78ea0d90488a2567786ca8a44222d1bd09724e6c69c9d1a8a48fa6fe66ea2851d066c5af28d7427b2f3dede0074f51cd554db3e5d5f06b2f961361950a68e463bfee18fc13eb90df6e679459a6bc8951273c15a1d24f796cb3654011ea20886acf2d232d3e6d15a27f0df9bb04889b695402d0c45b7ab196f2ec556d6a7e993567f113a627d89604f1155a17c9dce7baf578bc78bcb4cd66883f3b2a15e485a3574a07724762cb94c7d4c1ce7fba4a3984c38e9e2287c8c53dac4fadb73024f17d529b67c428f68ba23f09b8cae213a4fa83db6d26d0adc1878d827a3f1d31f879b4bb162ba1c38005c71eea8a55e69391ba6d447b732cc458d0d3bf54a54029579edd9214460acb5788839fbedd87056d73334af1383ea44521b7a80192018f8fd20ed1e68287871e556a70309d9fb42389e576eda674bb566795e2ce0805fd0ada4f4d3f4d4ad83ecec28cce97b44688bfc7f3ca3a014b913de95e220174fbe253ec1a8a0f67cc62cc83efa577ff72cf6ad23b95fa3ba26b461d55219b6886afd49632ca854238688ba0081b3061c4bc4e587b6746bf759be78b8e5074020366cbfb45c0d9a9f12c0879df948350ac8b6fd1fd6d99421b54a6920423c0ee1101947c29bdce545f63d48e69a0d756619920ccb6564a58821a93c3148d5c0bb85f30f137d4e131c5c7f27604966d4ab84e6eab99b9cdd63fa6f81f0373d220a7589eb6b096530532f87cc7f2762641bd68495ef991d118564b0d6e054b3e6b7958f543e1c0248e9409ba01f41ac0d25911f70bfe6705d611d35131466fac50156e4ffc12a9d2a51a20daa8043853439d02648b2088c71feecd3b2194904d05cc13d5866fd62a806936fc510c1924a65df64f66f361996b5a497fc2aa42cd05aab7cb8cd03ca33905bc4f77ad9b277a9a1df964284f9cb85477c451c9ffccf4f32965d4df653ff4fd0ae32e652aad3ccb3504b8d9bc3f86215d50db77dd769bd80a8ae7d97344c74ba70c2a839cff7ae942be2b149925e217e42ed331a6e4f15912c5e114ae8bfa1633bd1a6583bd70c5f49df0d7098116e9d9be1026cd3e15f33fdbad00f4ecebe245c36ac33b57d5c2d56e22d17dccfd841cc28c993092f8bac95e6936c99d506c8fc605c0cf223023fa32de1bd9cebc08d7a9a57054e2b3c1152f7af6ea2a7d060161129a0971be74a8a8decc68d3da4cb2b8beaabc47c63b1ba7edfbe5e557ba4444c6541b056f898cd8676ae65496b9a2f13d83f81fac67befb13ee293f8a94170be7b5551ad95715510913ae2178c2cf55ed12b7348770b4fb1f87a184f6c28c415518b92acda27d75d66e1cafd67381e0ffa955210cef2509b51e54226488d7adb54a47dcf20eee51dca39e74fa0f3222dd2d5e8132ae51b25b38e7f766408b8198552ff79e25f0c22c872088be03c8a0140ccb5aa64f3391244574c8f9ecb67013029b62ed23822989e2f9f9ea2c9f4647c0cec6ab1edebac09437a46ea8ed7cc701f845b69af352a07191b5b2c5311c83c414d56f50e473a0b4f874ca83d8cbac2095ab9f50dcb7406c61504bc5c53601d7df69c2680fc08d14e30c163f06af5d85690e08e58e2886178ea9612729cc025d2fb030c8d8ae8089a5dd4bbdd49318079b406c87c29a0de9211341506615f2f5a10a9c04f3145b3c5fc303f34ac35dea5b16b725403ab52e864fabcba324dc8d67abbdf8a55b349a763e6e87531cf882c77d978adac4749a81e8be281d38d87ef7f002861fdba55d9af8eefe2bd0f2c2e17851ab4fa48268a1194c770304c7cb28fbe8e28e27c84b9512079a8796256ffdcb7c536f598234f215d06d3fe4b63c8836676bf35e0edfcef966f02b9c8c3d7f1ae9df85a4440a059bb01d6832a6516a7c78b5d971c0fb580ae4e1cf2105e261c30bc4f94b68f7dbc92990433ae2bb630ed2d45c25dcd7c73bda4cc241dae7cf55cee7259e43e0795cc8158fce789cbe511550f9ebeef0e3cd96b8f74eacca1bbf9dd0c02ed38786e6622b884cd96aa152e0c06fb108f7aaf24704dc7d8a129ed494ed9461dd0cf9a5fab8607f8775a9629277b1bec5f08959949f03116f5fc343303af1161e00d5b0bbf5398d649502cdf3d7842d2f1606adf6028d735ffb509d018d58d4f520f8a1324910650f2fecd0f05257b124b8172a5f5d4c99459cd340ed6a4e8c23ccc83fdee005c0dfbff6875e074f51c81c52108b568f0f5fee1787ff852bd1b0952a3845b2583115b1a5414a4dbe13469be58cb33af07d30b5ab69b74fb77d177d4b0b321a9ffc3bf7d2f746938276b58eb00e19954c4c81b5231a6d5038d377f27bf212a4aebb8d9f27f4481aeb8b2b0d280e5de38780f56fd7577116cc91f53d34f5166439ae1903d053b72b9e6ccbcfbec4906b5b233ed5b50d68055d5d679cbc1181759df3d9390d64b8647b4601b5ad3065318de37708cb7655bb4b0a307043f483331aabd63cb97ece323e9bd9c3f8cb3b198a73ce66777dfdcb415b9ed8baef405b3a99b966e2ce03f57eb87c7238ad3242c6290d02845bfdb10f6f67895e7e4724bafae599d2eef5b632ad399fba01a4726fcedecd8ed898ccc51ba1e123d732a7280ce412179b0a0fb56ec7ae4a296a864b2067f7ec15d1dd36c25a21033b5a0d2799cb03b29bba2cce7ddac30357a84e1153fe10ada25e2d74248dfec7aa9d89d814dcb87030a4ffaf46ad197281f5e11a4205f344854c1b7c48fa2c97f34d37726f042850900f7072c658a42f87c14feac681463a6ccd341db95459b735947d619c6084790260446c95f9844f122a53f80a8ba9bd211edabb4bcdef4922efcecb47498d328284bccd58e5ae39a673631eb1f8af1e5219bd42b0fc6e4bead99cffe8d1a29d5043a1fe0fd18d5816e0725907defdcd4011071709aa9ba548928cdcb40398f48852143ef9700a702c9f6b5d39369df559bc08f92aa1b6d16637d9da4323c82f9958044163ff8516d1c03a6364c1eb30a10140d4760c4ca378691b19043e69bee546ad434a23712afbd91839546f7c51d21129b1a8b307e17ac8f17f8a2c2d1fbf7de5fd08f818607b5ec8ba11939ad155c9b71d8de0332f764961c1a7f1d588253942fd59c3ee8bc168a74a04b11edda1ad103ab30cb41f107f19217e66c2e5d966399cc4add1a93a086421b16d8f3f9deeb97877e3cc093a5defa0418bb4301d07a2b71a17a653585adb958da35a9b221eeb537e901bf1f8d4ea148142116092e6fe5ea2b717565f5a6ca31533b998a340e75b59f41648f59d8c5aa20440403454008c91aae2ff70f295b4f54f4088ddeaf1ab0af0a81c3c6e398b99be7e338e8b6dc1bb492597d770f990eadd4aad6b0296a45da4d2edccd3be3d17178a0fbab50fb4a275abc947d0df1ffa7f6b40c204a6be77053e2af810962b8caeda417f21662ce95a71dd0b3d5dc7ec865e098dbad7978bd13d3d49581d3904150097193ca108db28a28ce3e4e29792007343b46c8ee4db0d71440438aa2355a54e5243b5cdb1ecbb1fb781e7ad84428022ed4737e62ccda2d16fd8db845663895f340219e982ef0c83e6005b57ecf78d5ba1d1fd901f2d7c22c407dd15e6bcc9e6213cbc41032bad6158cf792bc88eccbd481024a3eeeafd64bce9965b664ba573feefbce034da1b00e6053d32994ba87ea4d72fffacc5f2e4e986029447cdb31bccb6bc7acc121c4198569e3a943b4fcf4ceaf7b028bd012499dc670e65d894e1152765f29bf40140216dd58065852fffc183640584e0fa182853324f205da6e1d688ce8dc82c90acd5427d6959dbce8f05a9bdbb22e7d349291e65cf58df566740a65a01c861b2f85ad3c9c3738b0e31e53e02db4040590fbc59657e67d45353bd2af702ecafed24b8f62a91e4eb5f7a2fd26385f66b678f307508af514a6211274e984678bd3f19aef9660a2390eaf8f08c68cb2a0bc923adb6783ffb351e2ec3795b6112428816346ef9d243e8b940bae90e2983f12789539897bc3b8cb35467ff50575bfd609effbeb236013b7ef6b92343622113879d7e189d684f0c55e3d51877f29f9e29c7ae04d9bdecc9bb0bcafd12e38b866b23ad8d5b537e62268d153aee365e81fbeeb788850ebcdbe192eb4457c89dace75408f0c95174f594557d1a2778b584fb9f456cf784fd9d5a24555cf05d1858cf376a65763632615da9e3226819deeaffdbeafebd1caa5058eb4f2b81113db378fd63af4d13d975a5001462f353e48511b0d67916a248fcb1d6e076bde1e29e4d50c80d14950e8b8969e8dd5bcec32ab94269ac95e2910382813d2f9532891855a7513635f1c2a0bca330c4f955e85318024e4712aae2a0c84c65a925f987b1b9c2c18ed236c9761853b0799ff5953d5c87967d43e1b3fbb077018ea4f6e21260db6a0423e7d605e794555604ddf104a24ff9c0ed031b1d90159996d0aa68c986b80ede79844fa3a9630d1b28c8883f8e17e2222e0f60d33f9dc9fdefeae5a59f92629fcc8166a90fb62aba3ced6395441791596a1b2f06973aef5b3f533fe25f389ae9776808cf61b6e9991f5190e1b1ec29730af46e489a2250c07b50dd09fc73c33601ac9572c110f6dc8e6198e02cbb5c509a0ba4fbcf8bc687940b69d3078c1f2540c98dab7a019aac2ca841fd334181faddf619894f3aca055db653b11f23dd12d49ac28875896daf48e19e5dac46bb43b87ee66f4f45bab0b38116f4c26e6b117141ff08b7a60e6884763ea23922a201947b064f2fbd4b1696797b2fbe7ae8923e2eb1d91607f152aa8370f449fe8d9204893551692039632555a5c4afe98d30b65b87ab94852b0f3c4a63c7a2573b90be2cd6bf110a41239693ab7a117a130ae8d75e50277152d0fb9bca33d1d7e04b37bfe6416213097caf1ca3e8341ff7487f2377cc00becce1d5496fa3266fa2e537826e2297cb146638be4d9960a8be75b26447926e8034d70c9f9ea487dea031568df37334ebb6cc611130e2cbb2f14d90ba87925c09f8aeb61ef01c9af0f6b0a9511dade66bb4eb2cc95716e99755e2c1879191c6d0c67dfcdbb389c05944e43e926c20a2a93448f6ef423a63dd9652ebd08b206cdf96240e250f6df22f53203f7cdc92837ddfdb6de9ed3c1cb0a38908c19a45a381a917c834ec1e3eba2ec80931e964280b3339f406b6bb1bf878140c3aa803b72bcd75f3c0bb6feb16ec7a81c22699966d92fa79d33131fcd62603ca0676a52546c4d635cd89f76a7d57509c5d0dcfe052d9d4087770d35dd4bb953a196d9f50318a41683d1debeaee723f10fc220cb2d4c6636e957ee5771a82f7b7eb7cb8f093d596df1be24abd24c6a30841202457d95ea3e48225292095ab19c052d8f93144cbe3f36f1d46ff4243fd55701decd799dda358fe0fa58bf22da59e3af65e93f3b7303f1c225f6fd1e39b68ad9de826893024fd978f71dd2db4cb226a660926ff6206f8b04cba25e0da7532097cf1b0b777d71b8cc0b0cd729daea43fc489fa7dcadb43195c7a38fac32e02508149781e949c98ad1c8b79dc6cf39632e6d5a0552cac66e8e7cc61176c9456910d23172c0f646ba8a394d4025c67302c9cc71bbba8ba1fcde886854c8e9644584c572a3657fed47dab18eeee34ba859ed808b0a646c2fb83c05b21db3c0fec91016cd34d84ebe97173aff395781c7ff7343e57429b73bc7c7d0fe0af857509500a5843b341155b92a8e7881764c1bbe40fc4fabc037dfce5ecc8eebf21a828f5a80f3f3fc2b0a81eb75cdc91243ec02f427de5486a7c6554f5f3e3cb4e12b60076416388ece6910bac1fdbe4e50b02618d62954194e773dc52874fc55191272feb3d96303b04615bde0fb89c064e97c8dd8752b003af16dc92e92dfd2054d4eaead81d6e01eb085acc30b947b85c8b7a9416d3f88d5fd7125b2335e430cd36eb445ed5c16aaf381eb3a2ee5d00826179e978ebb3f39bcaaee1ba6d22ca4cd20ff38786f4e50e374aefb5a84eafdea645a1cbeac6aaa1ff2a029f1ce4193458b3390034d929573eda600c4882cf34bec3eb30ca622b77852f7d12e18b8d15cf1e109da0027baa951780d51a3c6f6a1d429fa49cfbfebc93779590bbd3bf80865c86db43454b9edb294f9fb5e302af6c47a49d839685f2781f00dba7cd66209f60483b1218d9dba88654aa39c3269c25fd6c7d0133530f4f8f266484c49917326f762ff9fab2e6b9174ed91f0b77097e3b3696e848f12b567a0436214b4f9d908819b90b81b8c919eb098dfbc90d4089a431a65387a61d8c302e808f6b9579db6128c5531eddd7085b99a9b937927afbb315baca204ca0720f78ca1b5e4594be67b2409cd78334b647c3fa3fcee0571517fb530282b5b9ef80918cf08ecef5283008bbe7f5c47a4ef587936cd3f1dd9607b1fb0031f3c8bee7f70c9da8d753ffd60278dbf48bdc24e3422187358128382b65cfc73b56bc6c154a3193a05cb7d0e19edba468d5079095405f76faed719d0d0049503226ac663825a7ad255d7c1556a3ff457cb5d521a2e964c5dabbc043cd14ae81b5324645db5bf30c1dd8933d22ad271e97690d683113ead0febd1bd6e9235d65ac10eeab7919e7158ff44cec24ad63492fc11471ff18a4efc88f117989d5ac3a217550089821a9bf694ae3fa2ce289d85aa17629f63dc2d953be0ec213469b727792ef7dfedfb5eea2464f7f5f3210427c3723919277f5af7c3b6a74b2000b4f2f1b4c9d6c05d33c9694424867a23a8e5a833772b39eb5537ed1108392575ee2355a679b50a75c4afb6ee064e150723e1d1b7481991ec7d6a5e9c69ad6f8e48731975514b98cf3b0a8925e97a084eaecb0e74a8e9ee86925331ef544408c5d0bcfe7c274365f4205a3f50aa92470fe8500ce3e8cca7ec3b9cb874c4d86997ce02e8176e833445ce4338c4e692ac9446888bcedcd3a8beb1c5d57abc50f987dbff91987bf866b1be5e033c46165dfbef4895065893789c425bbd2c13a35b4b24017d213a195e546110356f7ef81ddda8400dbf1402fb16209143891b1aa0164cddb0c12480d0f21b733ba26c1e27f6309cd7798e72f7e034acea76dc4a99df7123a07a057d423956f8913b193bfe3cd60fffd2678b7c14d7e5b54cd67d8b438f75e090662bb58e11b00d3b05a3ead869c6a113ad3b986c9f0b9bd4528eff32634da91ea1b00d64f8398ce4e162de344f98cf588bc6408fccc1c37b847cad235e5347ac449970146309edd0bc2cfcdf50b2845456062b37712904d8be8ce0279063041362a2cbb15c528652efc2bdccf3631d5419f11220fbc5fabc15ed1b11db3c8e14e5bf1b9781cd884a996bf850892528bcc0ce827fedb40d983f589eb452e73b17f9d7f354b6ad5665085533c91efe4ed606f63498dde3a06f1da601a1042b1d1c608a76ea7f78917b5f8de783ff131340550fc838075190bc037d944aa9ff619993d2527e123e4179bb2c3827e6e4acc7f17a84e27eb73360cb119cd652b518f94c38d9129db7e52c2f9468ff0486ec0380cedb9378e6d934e0c99ae52e2ef9fc6489e50ba170528c958dbaf0352cc2f7cef08352a3adcb4367d455e52bd83f349e8759826f24c3dc0ed6ac7f8404bb0af5da140de87f74c4c859f218c305eacaa78f8c9fdd14ede23083ea294659d942586eae0905370ceda9a9cb4d1666a0dbbd8c0ad79bf4a735432a5eff1b5d5a7610eb7f4cc624d9f843cd0263456b18ab714f10593c935d5bbedc6489a8d8a0339b4bafff0f49d9440359dc28dd8612de0948ffb847ed91154c4dcd848a32d58077774c3aad2ecf3c222d83421f91356a1cbc441dff3e141e0bc90f404340ea881e4ea123993cdfee22eae9cb3b6ffbcee9097bea444cf0b85a7080597aed33c68a84f7ad691f6484a0344bc7e745381356b4bfa537e2da0852d8508cd687cb8f094ec884ea408ac5e47ce0cd2926027244b01176e9fa1812481a014b713e109fcc9573682c7250ac0d8fabc8dd55ce5ef4326b39a87c8c32cd837b833a1aa36268a931f809ab1a2113dac0595bc99c0e1b01e43ab5e7d1de72497d6b91d36cfd491fbcaf752c18083ab16a907bd7dab9eb5d13d738c0da34cdd8bffb1d4c98414951b0991986d35829d2053279db0a74ba87ac748040df2e82777305f7e42fe148b8daae9ce1bfcba47f073ddeb31c6f8f9ac53ac7e5bb7f0baab3df90a3dd239ff06c6b7da13afae97bb504892e6963396d6c49eff81054f826310455a8ce43cb5e402b3289f2d4cfe8ac6f26e16db50d26cbf5555180c4f4922f3934b25a4499029dab44c1c2e7703b6ddc075c05c8bd823c08fd7619458aa7041e350f4937636ad5bf3699759978bb98d61465c19ce99ecc1cc37a3f239ece8f8442eef66aa9ab107beb59f2edc414106fe9c7f3dededc1157725dd4453b85a6c8ec499a44b3bc2cfa1ff43ba71e794877d366bd8d7821671157e3774a179885883f6fa07c0558637d60c51dbd8310e1b3dd0d1c86a5f38574eab3d172e591a8476e2f5d29b0652ddc51a82673a498b20142ccbe417db9d507180a83dcd0ebd4695ef001a159429a491071e1c19c07cf3f3dc5957237b4fc8724772c2a61985ec32ab73c1fe4ee07c76db0e034b843e13ae19b7299962d7c33cee8a12ba8e50c57328f787ef1cdca8f2939e06ece8ee421e46d750582149f0d9e2eebfbcea928ab4ccc35216d78ea8e997cac95b63df1a395152655414ddccb5ccadff7bfba36944705f2b1c8d984613c2baca1ec42c9549e9da30171849caf6a2e4ebb56378e2896a4e90cb6e2fec04ea05e31c871011ef44cb50b3be928e7c2405036243a6f4c265090c44d9b22c3586b9fc84b776f98aad6144a36a8525f971cb19859a7e5538575429fc0b49ccd6b2473db23469f5ea61c320c2929f572badf415f28b1cd70b45b00dcc2c224eb3699ae1c3d88837a0151eede1610e24e8c315a74d848957ba035fbdbc7ae7df0858fbd68cb3fd5b8a0c7cb89cbd7823a805875590711f86206ea6b2d6f7d0f3bae0b5bdedf3a24dd0fe673e92abf97e877d57f6cd0083926a581fe24d67cc63ec5bf76103a9d2bc98cc5754d47539e26054b74c0a0d837332be99c3eec2ba889bf407815c992ef1d8f2965c76733173a3d68a047fe0d3b31b1718259ffd52613a87f6d9cb901b3e2e88cbedb0c952b6c857e643315c735d178dc6a20f596e84325129f116df2d285fa72600ff00c8f44b775cad186d8b7fc1dce5f0ad9576acae3a85ffe6fcc5424e908030f931b4ca44c1d4cb6989cf8e8a818cade7ec9590f9714d15b1a4884d70c5251e14413d4a1cedff9f71f7e056bdcef47218490cdd19928a691f0decfb1cc7854c56173a863a6b88920942d4b73259ea0c73f8fa4e0571de0a419bfd86945124753379d9826b8bcab6cc183da2c3b895ec584be9adac15e011ed6cb9a0e736b02f8d432cbd89a99d067721191b80c2a003545bb25f81432d66569e3d0e6cfc279c4a978b989bf610c2fafc71257d64b5ce2ad5632cc16de62a7be79c5c9091ae43238c75d97ded29521431d5e2ca63bc480f29205eca539a58459063648015b213a84005553c73a9ed94485115daabefbe456e840e9bc7dd62d4f0bd49fc63d0b8ed3f2e34e2948c1e8261cc755d90a9e80c305d8f9d1475d0a1e2bbb1d44cf004bdd754268bd697ad54f10e1cdf088155c55b97578f591a734fd6a262f2436c7463a32765aaa74da9854d6debd44abd41430c79187a9d4c7150dd3d1d65450adff282c2c56577d19950988a789b864017e9d0d949116fe7a7dd0529eee318c0e2daec9aa89613ce9791c680ff8b7a34ba4e20d603f01f81c484f4030e1225b0264281e05b63894bce76a278c4d7ab92c1f304599b8775fc0c9be0a8eca72ae14280d539e9cce22aad667320b27b5c37b74381bb6703a3f55d6192f7f436a288a28b1e63502a0e6d461a7862079ec64af8bb50c44aa23878d6539db38e40d88240dc6aec75119357e22c09117e9cb828bd90898559635a5a92ea3e6fc2342200aded2de23a047b9d1e0c7da67c015b26cf772df6527485c27a1031820fc771fc4d6ba983e090ba1c0b84c1db6d8f46087f70d0c1e41c02c45e8a38fcc2943ada8b096a4aa8ee00512469aef426055207983898aaa6874a15558aef318d7b82194001c0ea80f43b924483bbf60fd7841e467d9a2632298dee2085bbb95af00593386ea94f8b8c98351708eea0d52bd83e197a1e6c5ac15699b39f8463ad5c2846594563e444bd5d60b2d46274054e0f04ded0ec9645faa84f7b072a948dfdb26f6937c5fe174bc85dfe833592483dd173b4bb3f8613c1b8f5f4e6565043612ee18b338d4709f3d528e43f4ba65cd0bf2ef4f2fecae6d88df4bd8de9ca0e76dcba71b71cfdfd7f8296825d6696d214b95eab0ca162eb0913516e249b1a83874e7d52532ff1a3180463cb94d8efb41262ba49c795ae659a8faa4592a4499dc55dbe18f446f7bcee152597d27727f23f697a3deb4ef0b701bf01f3a249fbe3b8f8714893dc217235531b2aa4aa73c520daf3ec07486346bff51ebf61a8b61e80e8b72b5f35f438abc3b1698913c5e7d1f0ccd5f1a1dbc2a3c8f000a6bf039927dcdf5586ed9d217a6392805eebe6237202abe30b424e6a985f429b851c44dca16740133cd175b1f5da5dfe008a05fac833fcb63d6a5008ed3d6d53f32032eb76f85b21c5f5f6596e9ae3b69f5b2930a1c14771227551f5d9cc748ceaaae703bdf8cfdb3fe7316e001cc5e0bde335546aa567504a23bb4710d47f446243c5bb5251a78330cd53ff64df170909156ef94f327ab24d70726b1ba291e2a1dd78c61a95e529e32bb7be88ec7bef36c9a4193f57f7a87bc0f8b9b17b63263d1628595436a851163065e1dc8cb625810a8229d22d1d1f0804f50f4134c764585d2a0def12520a1525cb7a8eac34c05cc705170980a6c69eaf08e9a2789ac7dcd673dbea677b36ddfee9634011d7a0597a335fba7fb19c9e961bedd88f9e96f7425b3ff6a31df24fe168561538959d1e7e8a33ea0cf42aa6d713b0d1c7b3f4e969bc3fee47561766fc504c72ad80ea8688fecdc4be7f6317bb2265a4d1edaf0e961a87317860fd5685901bc45770be458bc323f6aa689742e131ecc0061d25703738d1af8dd6a2560c702718f72ca83f6b6da134274d0d95b26f144f7e83ebf761ddf50b7588196e88a77ff9dc45437c739a496fa0fd9169c55154a8314a1a33c585ad75d65660802c8b0c36603b9b487d7241650de56471984f092a551d367a83be043247b350ea90893d065aa52a46b5f69136304820a062cce658b64cdf0c8c8b62dc9095c5994712557c215707523a54b325e05aab64ce7c0d21dc448fcb056bff7f673b7f49dd95e280fbedfb9cae65704d3e4b48d03bf7632bfb1e9131785e1e7c9ff310b85cc54701a7ef06b36a590e703b01752d5d0b5396984323954e1ed8c9efe73e36c05081f43b79cabc210b3f8411d296f5f30e0a2590b8b0e848ef34fe81adaa17908c5f9c238d786d980cd872dff3a2c5260d2b96b5960600f6cc244847e8f62b86f9999099d1a6583eeaf177be4100d9123398e591124a8308db34c225cce6448da1bcf109fd53b8eecac35f85c6967e53adefd7ba012e06c4bd48a9766b25c066d445302c5f0336fe6301e1c73077bf0f605a95ee1ef7b5b0f6aaf9a7779b96484bf19bd6cc475f5d10b3f475c02c466a966a1c064a0b629c99465844876c8acfa6b29f6f60ac6d4f9cd0ee8b3b0b61850460edf83b840387d2cee7eb7a8bed72c8b99265e547f57b7845fa8d60eac7b49db758558bb5e24cd836bcf0b5f817a774645e6299a80c7316a2517b4045eabb51ac35fab5fffcda76ed1aa79b4fb49ce33be8dc351ae734833cca8525786b422dd4d2cec59b0fe49fdbf944b4f1e4a606aa9a23aec84102370df81f5564c7878dd9cb0a4c8dce6ebfe86f72010af2fde32606ae100525ac6e3b6c7f987d8a34a02ec32826f09d91fd02599e561feaac1c348e65ae520a77ce03d8ff33980492115e15d44571e53dbd186c219bd2c0503c471e618a9603972552c3e323f083c2b36520ee830f83febc66d41cba678238f1e3fb9f5b73639bdba20a8e128c8de28da6b3daaae0bffc6a7a5da6259cdac66ebf2a4ce3c5f0e591a1796dc1473266c6c9439095bbdf33b4c2ec6ff386216b6b1531e0f2f2c66fc41de049188a8de5ea8dac9fb214fa41b2943780db444e1c38700a7b43c6543f444fc97ae7105e0301b32f8a9d0672bbe066183d730ca7b6dce15ca875f7cf1f345d01c9d9b10a79f1edf028ebe30251c1d1fbd2eef24ee2971baa75bb585c0df5cf3bb3b87f8fd2682d160dacbdf3efbd1719bce199e539be071ea7a31316b9cf4dddd717a17834150979e5a641aec901fc49833d7ac5211a181cd50145f8b555cc01b27dc5b8d7cf272d6a20249523fc1e06242be9dac35efef082d7217b5fa54808626e1d3b8b97e3506c01b90c6fbdda832241df6fc0d0e0240da9659d4695cd1c6b5e16f141334e2957a02e8dd090d5841ad90f3bccce2d594536fce5ace7db6c73f46e610e9d09336a10dfdaab3ea8686acec6d0617a276249e58bfa510fed39f1e748d1e83cbf020c6f01dd7a8316d3c9ab264baae4b78407ad0ef3b4d81fb0d921352478d17718212b046628a95b9d35cb81abe605bc76d2d1e3f7adac5962ae5eb1ab44fa7787cb2504c865c1855392d9bb7b35fa004e4e886a02abb18b4cf01d7f311b0d3213d01bfc8ccc4880ab661f50b0950fca1c0dd9cb8d2fc27973b6774e6c7a8f2c117fb1924ae2450a90000befd9eded5825af6fec44f3e415cae58695ed9f187c7308be52aafcef9b96de0b08c78167f3c4beb441497c7f8fd5c1f72070901a699e26a71b46a0a5b2f22951d19727ce56303fa12773856405bdc756b57f190747d033e18d97e9e0cd3677e0668f77cc8b3f67c43e84459c74ae38e900288c7e2eae2b03a7432038659aed6dd61a2912e94a9f0b08ad7b360052be679153ed3e0219d7af747e9d72d4d4f1c5a869232e74dc0d9b4997dba3a6d3c5eca2698e99e0243eee69faa703fed45f1e6938e363573456d72cfc4782d838fdabc6a73dae338e416778e7d17dbea9d61a5ac483803c2f12de68769d4ddc136cec15c97854c4c7379fd0dca8a748af4a065dd88fa421ce35f04c91d4ee04a651ea9dbfabde7970190ac6c50b843909fa46fbe0c0673daf2de7247e8af20c756c55036f6fc8f62f8334838ba290ed021f8a6055a7164567cc8b9b6aed18da6d6085e9e55a4c7a9c654779a91de80b5186ffec8f663e9a42bea1ca80a47ac6361e166c860b481b6779ec29a08cc7f99671df63d8c65f2c38fb51a9fff86410d25c31ad2a5697965631ca449b7f5707701fd4126f23c8929d0bb4cf7f0ddb00c18dc4567f22f402b1565a1c8b99b527fff544c244efc8c08f9e36bf86b6c61c65118c70b7a12ffa8514b3fb2eef3edd59d226f3242308ae61b59bdd858d36d8d18a71fb103f908e4b6b65f55692c86d91afbb0747d3cfdef576409d86b888464bdbe3524305f8def6706222ccb7d63cdc234dd88ebcdf9bc6f4cbbbc488b60f44706c89942754e7f6b4ef68b68048ba28e2bce1befaef5b732e0e44ddade8efb0a44bed4e1dcfc9a99ccf8dbad358086b309ef8345b7229e9f7600f60d79d1172a759327aaa15e32f18238c0dc59062267d17da837251d8942892a2b045ef3429a986ce4527942b8823f6a258bca389f0723621cf0447cc4d30306beca7ab6089d9e29d687c36f0800b434da309989821bcc14f2abf63969d57f74ee57680e9b1f285bdbdcfa8da2d9f700e5d5303f9c7749d8c9cf075a390e4825fcbec7e8d9b12324c8e072ae593242c5da3836b8bd3aad76c4abd4dcb85cc7c4396323fb4b305c8b00792b6284907d0f63bf99e1750ff82d67318f23222de8eff713a8cca205e0a0299696b40d0fd5420d72fdfb5674207a4f5e7f08e0ce822505867019a608a870f88487aca4ebbf73cdb575407941e33178b31a3d46df6f6f455680675254f4399c5acc05c1edccc56223abff81f8b60e9ddf5947ee4cb375574e3f41c9c7c90c4d7534e82560245b59a3815f8466840a966afd6d4090f04831a6ed168b72092dc23ed8ae8313133412c27e086a1186a6daf5e760a665827c3e441be808672dd9206d4e6fc9c662603d266045a3d2c2178a1f87c4d7b94d3287be3d51899bdf5300ee1c3985eb2de398dac7f870ba0e2aa96bdebe8b03b779b0d46f5702743ea0422e94e6b445934262066aeb0b7b1ce823509f89136bc6e139b0ff6f95a9a5b28e939f2e2625d6e4caeeb88c20f7519b9c634cc8c389ae6e5617307114e39263695eb620a3c513173ad5c9c32c6befd33bc82122676cb9f07c8429e1d0fa76e370903f91bf543bdb2c1943bb73d9a21be68dcf898c13c0483e7810f16d7683794e6946dae8152daf3577b22b45b4561c9e4bbb89e94a4ab0789c508cb04215394326b7d62cd61d09f3c84afb216b4dfa7b4ac77f6ac76073312c2a19e9dc249aff8cc34b7d0ded362f2574c92d020a47d1028d89e0890e50fc1c6bdd76daa6c400f4d75e201887509476f304c31b5ead2887a465b2bbe852679b3adf11c52937c06fc82fe1a3c63bf8e6a9f3f5141a865340cc315636e4adb7ae9d5d87654dab0e2bbf3b61c57f689ddf6617667a64729c674a5b2aea2e3eb1e907d02f4f3cab22224e7b369e108a18ac29ce3ee5c35514fcf1b37443c12ac361b84053c701d0bd46be17c32c133cfaee5ebd821e77012fb85cdf6b13df3bfb6fa4ea1d74719725cee400005357ad23718a541a0cf902d5571b2980692fb3bd1fd24bdf098ce1158c104e9fc85841582091cfd1784088421ae22052e5cb8028b9c679a2c98a5fe7ba1282e43613bb5513f358006ca5b3f8698cfc9f61fd96de75b2f6de9d3b5bfa0c5d6ce37bb971e7c96a3e9a9e39ed084a48c000308dca090b722266f04415495bf01678aeeb8f1256f9c2bc1713b420ffe2d8cd41e4d62a934ce003512b307c23738340a67d884997f3454ee1c5f9b97d5c97a43c0b41dd676a384a8ce1cec8a7e5ba81b193785a5d3c6b725de6896c7eccfe4b6f8e0fca5937c28921015d3368441b3df001413943c867e7315a7f73ac4442a8eec92732a8e338de75c1f0658ab2919c1dbe736757ec0c0117e80ef6b7cd7f103815cef1524c47a455aeb7326c13f3f8347a0bd80920b10a48a979f3b0357aeb9e877bb9b159e83f475fc1cce17fb0ac27f1e9a6902daaf0eb413a3ec401e2f45a798df4eda3ad9a2b431c9c9430b99f8e1c24b5b78567cea8acb1789491d40fc6f25ca33a5fb243fa221f4a650dcadb761169d6bd0419b9ee4e871943e84f609c3b5f17c1f877d9b70e53a7ff1a31669e73b21c0a1fd8de5368b15ad910a81edaf743ef68495feba0df84b523ba77b632f8702b0414e6a4f897e3e0d5e56b575d064a3ce429d501602df249193b200af63780785091eebfe161abc537d4536692013e98ee0590c2dfb399c19d6fc1c3daf5c4f6b93303e75c4af605b004c0f0ee278d866fd2fc28a8edd860cc0c8be957a7b9e13b6d92fae89d45ecc94beef5d19f0945a657f2ad82328b829699328ff66c184d45da84dc0be1e42a7a4130ddc175a1f9cd592a573047975425c7e80fb0ac02bc7fec6a2fb04b4fb2f3d6e574bd613c82a50bb9404a50b96dc820a6384aacfcba7e664accc944335e5e8fa09929dee307db63fd16da945153a9427a690fc66bb7b84fe83f948320ab3a7104661eeb071206ecc31ee494330c41f6a2b6fd1e1ed952ecda197d4cc2e90ef65cce9cecc4bb0257575bf458db7b65c7bb589f853e5b9cbd3ab6eb1a289e72e481669f983a6c7144a1259eea418b521280a299e39f2cf8464a1172ee5c6f471590992574b57cc07ab58bafc866ca21ddd231244a72d9218ee5de68994c81fdebc6dd3f62c088803f54564f61a8cff7e574b474a4da03b394acb89f1a03a97ad160e9bfd10c9e26e4faa7ee9c2d1f63d21d69e1a1ea8f5f2ea02f4c13399514fd4be091897d36821b5ac9865c1a1b8c7839690339ee521d568979aaba5783ede9294f05c1be3e2f42923f3b5fb2b63a4480a086ff7e7bc8d3681d2d431bdb88094133afc27caeef4be06f874052768592096d30b4588f8d6a6f2f61c369b9180ee8f5591b3491c03f60bc4ec7734c43ba0cd727c28579bf189f99aa58ba0816927b2b6d7beb22c38dba9e5ef8238f7d0339fd3b8783c5dc974f7e44a8e6266ea8d14d5dc75ccb4d37ce3cc312d35230b53a6e9bbe5891dfac7972a13f50b2d91f539a2722576d86b98419c9df68dfe6aaf255eaefd07193f9a2096d457f3bfd9c728f9e1783bfc3de37535befbe4e4104f5c2fff65a6b477f791dc8f7fe773d49f5197de8fd93a1c8910d05318cfa3c278a341696cb707b97dfa5454ff98dca7a379d16e9dfaf042938cef24c3e8c24d730b8d2d1326c416823136212d4144a66471278270a02f883109fed1802604c4118c10d7d3412eef17cd47b727036838be68811636e08091ea11a9402fc5868edbdd52b8187eefea7fdc480ecc4a9da2e1ad4d541247acc3ee1cb80c59524ea49d3c79b99d44847d882f6a2282a2088d3e22aa4ca3d333bbe1371152d368f62deeaa73efa65267404c1e0f359189dc2929c4d1ee06c3e191f0f8f21ab48d65b4cca3eca5e464f42411f3b76deec91024a80b949202d5823d93ef1e7d0ff518a77b0d668a8d194d54d2fab2d4551ac4d9c61edca8bd5e19e4aaf4e2bee1e68a8065e750537345f5bb5564d9be3adb7c7f380534bf69aa524e8dec5d6da203c72c78204f1a8614ae4e41349886503c0e0b493c649776f475752d7458271e5fedeeb42b28ac82252121f66746ca6cf1bb4b927ee532b014ec3cc7ea70f586852008b6044b3236ecce7606dfa7a45a87dcbe215b3fdae68038629eb67ebaf4dcd0e14306bd706a8615197f9e48c9c70d96060544d787023b0b47e2d70f778f1812eef4b254b5d906f8bfce5bdfb75bc706261fa10049cebbca56bc36d4b1e198e0c5b6f76a930a48b7aca20bb20446e70ffd55db62a40eb7526c84a670eb857abfb51711f44877b10196d53f228561eaed2ef82a00e74ed97c3af0f0a44909f8da995f8c185649f4f11453b11283b4f3891452c0c19203164c121e6e86623df35c255e6499e96e747d1315e840a9c8efc01ce3de5826b19540256526263ba0570fb0348b1291eb02683b669867bfda56ba9b46bb4c973d6eeeeab32c974a25bed457fc3363967ce3bd87ed4af974f977f24b11b69640e4c8e00b17ce61a2d571772ad4b032c00bd977930af1bc987d1bd4107845c40d562d5e8969981afa971b56a78745f5391bb10422c8856ec11756d6181eaff436adb632fe16556a89e0198d2093dc7564b700caf6325227ca46c32613a40c3d6da0d5da95068160e1ff9de159600617dd3f461fab4b58c73192031b332b64036ce01b7a7f4f2c816a64068da2c11ef0b1fc191e8e7dd34dae7daef03efd97fde41026203ff5b19462f0e2184ea99a09a100806ed4aaa44774e907e4269e24fa24dd7e3aba04c6c7d0bd23f24845bb60155680099d82cd9fd8e8f1381af06ea20e90358d098d84808222486b705539eafb8ad6a186c2875c8c8ffc2919e8b64b32bfe0494cc1017507dedf6a8ed3e7de6f03c2626095507486b6dcb76e96ca757e66de632c52c82ec9a7f3571502263d1bfae55d6d64d948c8d273c41bb237faf7083d5efcc2a1ded7074857e792de438c0d812e331754998c7cabe66151d67168736545d191ca7b023e185f18beb700ae4e0ac0645f4ac5b622d412046bbdcbb5b7a32677ffc08e7ecd31a3549f2cdcb59b97b146c65efa65103b5c0b8753440961fdaeffb518c26c875e8ad66c406b9166f9f2d74e103e0a77c5ba234275672144a4ee0a2be1f4cf8a94d7f9f6689543ef18b12765b97f1c76d02dbd5c9bfd9fef239c64536e2d01681bc1dca1e5055e93e286a4090bd8f23771205fbf9b02482591795cc0be840fae2a713506fade5e192829f313d3c6c0fed217e8b431b9770b22eb4c673f9005e77e9f02cd83930ffdcc6e0356e2c19d1282458d2b0e264e58b86f19fe9166c3bb97508f3ce7c819bf195b6f4f3cffcf201545f96881a7c6ba51831de8e62045f08466fb74e360abbcbb6a1e795a1ed0665dee1078aee4d374af6d2f639b91f0ed643354201b0f3197d58d6134fdd193594564c31aa545400c2dd4b484555a6c4e0d118da65611e70550f878eb2847b9806fbd80326d57676a2e51985c999048628712949f4c39965cd262da3cfefd8345ed605c27bececa44e1db8ae12d4aabfa4b18204efed3e2d0f83f2f0a92312188085ce3019db98ba2d4df72d058adb0e1d152798a71b5d941b5afcef04b80297258f4e3f773fff9664b0f136876633811e1256d5ef884f4c971859e7027df546beb003d2833c6b2a1f23ad80b633cd31e2031d3d3306a0cb67fe0b05b3ea02421c4deef96a6f911034d014c0028c3cd35e4332fbd29381d6526514b2a96a8a6ef3b967d23b16fb8d362884955a6d56a99d0c472b65eebf45888aeb03ff1d004fd99b9524a6390079d2b11fc88eac83bc48be8e64ad06f5c2e9070c7cd02b39101c2d3cf07848f5b8bae4085adb4620e703f810c85504f67d3bbdd414b10188bee457b7f13b479f9c066f27d2dd11dccccd0ad430ca7c2bf2bf52dd8c405a6e2fcb7024eec63699a0ff0192ff376b9afaca53cfdb5afbb9f62110447942a554e8ff4a844d9c98bda0286a7d54c86bcd62d641ef07ba9b2c158e9fe02d50925d46c03dcd12371e4eefa13b75e0981d59ee59dafff018bba288214140002a8a1b5c935d627233b1e72a22d80c892fe23fc2f91a8f4f104a0b970c0ff68ef0b5a6841fd31b72375d767e9805f27fd2419342b76b5b73c497b5d669a0dff536107fd5cf723e13a0897df95bc8db13ab3b2c854afb0ed8fd73ff31ec719c8bea97bec0b672f5115e18dd5fbc23015f0313c20e4b1a8981cdc39968ecd499d6c8e4dfa114dc081bab0ee0bcd56bda0030a1cc4256080120b0a8abe2b7be1566116795d0fdccfcf1226275cc9c1aa494c65901934aac13fce6e8b16c4c6faedce34897de5a17fe2af702268e2a8407db5801078be52ec7cf9e4e773fb89acfaaf5ab4afefbf297293acecd4a498d55e12a8830414ff45a95c38478c2d20d40c3ac1ee7ed3e80f72c85a6701a57673242d34692dcbae708a8eb057cb326b8adde7a7dfe867e873027d2ba226ff0878d5224f61dac26ae13d93a25adb0bdceaff24c308914d1c4975d0439ebc4998e0dcd9c8fb91c44e7cce21f40e8409e0ccdf3a85bde6afcf01358fa84990892a2dff5b9c3911493c288c7f436b575a1112ac56dbd0a186d0a9f4f51ece9b7996ff16b42e45f843cbce57cb4aa4634cc827a62337482b593f868556eb4031bf149849666a8e5809a0a7885ce8d5ffc61ff347a25471d9fb68c0805bb3de0ad0a6edac5e73011096c65192b55784158a27a225a6aa17253406d360f7aa5a90b93dadcfc9fac82f2a1caf9fc30b147de1fd53d12ac9a0ed221a5edea2407c8648cf08d792ec23ae11026068569da796fb7cd72b8be33c687f072b4c0364cd973d2d591c67c7217fffc1d5f1187bc7a8fd59c8448a7244f0a4660032f8b3fa3adc45d7390e57cb5f3e2db52257ee7085d28900a3bfd12cc930d17948b107f877772670d8e5208e86505e6110bc7dd4166b765eb89c7c86a44ff1a1f0419e1e395f24076cdc5c0aed681101df817de8a894e21ad03e96a5b0e3c45ad027054543be60d7a0a6744fa5ac6d1a34b28ce7da6274204569bfcab30ea453a2f99d7678668b9dbff385dd0b386bb7b163dda7afd39bd6b3838b4fa24eb5988b88be016737c2d6f4b19a7643c4f5cf7f4f7008c219c71ca590eb6e85229c2ba7ed9ef1dccaaa365e9badabd0ca7b1ac07c3a187000fbe39a18901d2368d0250035d9d8169e4b823329c619fd18dab5a7ab806452cf63a6dd155901e4645dcc3c463d41b9d62d902af4cf7dd621dea02588d73f184417a970c5e87583cf020919cd425f0c6c66a135e08de31b5268a5611dd22400aef517de0cb0e711ac0b22f9b770918e35e2cf754c904b2dc45f2b1bbbadefd36ddd17deb4b7be56f20ecc8c0ba120ee36168fd433d217fed578e5d9a84104c5aea37a513ca66d3b3b50a70ba285d92a7f1ee894210b680203a9912bb3c70ffbdfca26300c755776698f42413b089cbb220070b854cf18787c7094ca81526468a441e2560f6c2c8c212c075b51aad14821070e641d9dee88403e7c5845c578c322bbc7fde54301cab43318205090087ffecc901ec020fce86d083bb3a736e9333c630e050ba8ab8c6be5ba054d87b1f6676c34f8573aa589427438e8b896c2c44ab2a33cdf8c02fb618c0e1ba692a7fbfcf600b28d3419e8515717e97bf09214d9348ad81ba345f9ec32802cfb24371887cdf606c0f3254a65fbf6a41f7651f86c98c1989a525e724c17a323feef6c64b79c576c7475ddc6538ce3edfcd6ac82a9851458a51e9601c8786f31a3e781309148d2347e453ac3d0a01e388d9fde710bef74483318eaeee75b7a01476a75bba0c21ebfb71618b68bbda5ea6c76ababa79e985b0c5272f6c1e8b7cd64c4c7eafcaabd9d7fa80c356df1a24cdf6a364eac472ebe55719f11d23ecae7243491b0a130541e43d5855e0d308ba93968752385fb5549247bf3801f76f4d115dc7bbd2f2dd6bd5e3d4e68ed2f2926a4108136526da212bf9e51b2c73a9747e70df01e6113f46b2554dc310a4782107bc4596aa96ab59b4d9a0af0ad8c740d9373f1ad79b65c1a3b0e1b6c5dd18fa5449037c88462700274bc005e01f6c7b9209153c2ff6956c934bea65b53e299433e7a38ca9e09b0a9b50aaa96110a25fd1705bc3e9824f8e3870932512eed58a68965a0c0aa3099bddf6ebacc2f71061617f0f461bae952fe5e9eb5c9edd404653d59ea485cf46fafbf5b4a282ec069c90631b55ec4f8f383b5cdabf75ded7e4bc92752acfd2f2e40cdb72965e73560fa5316f6439e1791c89bebb810650f0f4598e56d1a3888c2e023a8c41e3c2e13a57b98b579259dfb012efa808f24033f5a45e26a07e3ebd2aedee300b525cf4a5f50042547c0ec15e396e056d77a50a7ad4e8bb4c45649ac4b1c098afe4d991623f747f9c01dc1c29752bccef5618c12b2c582bcb35beec39bfbdb2220e7cc86ede403e9d700fd8df15ff4ce823e829eaeb0e7398c32ffcff0f8bcdd2290e3b3304d459e67bcc51e3267b38b2403311fdf79f51ec41f73927ead9595c73e4ab779f3c3fa6a90ea8cfa3da4abc0d7b641deb52ddce8f4620282fb7346d9b8218a6aeabb05b0ec8e56f4e543d31a112fec804ed4909ee8b31f5af09c3d1f10e40b5a0bd74e44e0e86af4c80fbeab8bfa197e9913faa55201048b8fc82e45582c9ae311707657910eb2cb2fd1df9b5eda0842287a22678ef9c6d0b34258eb83cebdc693b718e2ad055ee8c27710a113d3df35c6f2d8e757cf0d6c2b987ccd1abc160ce53803813bc06e5b12a57472295b7fa9a9555989c909b68134244857513bbc93bb760b55efcde4e92b9f86eb361e4ca4a2fb4eb3504ac6ea17279821e8e945b2efd7340bcc24795df7164f2405eb753433de8ce1648df056afa629b80482e3b05c8125f0345b189fc1b7e7715faf735331dc51113f7b5392b738a50d6c45fd2077290cb58244e52e1a1126810e039cddc64815a4716bb6433bbf2fb784f0fb887964031cf851258adf8a317fcf52198ae73b59e5c5d70e30b421b7da96a79f5be177085d21d390f5ceb5ffd559a22c31257e6a03c0265c9304aa59a2da3599cd7c9c4b5e69416f93b310622d0f582908d5af725aa26a7e37aeaa90c1d110471ca32e4faf45c3fb2ab75fddb959954ac50e2dee875edb6790c68660a5c41d5a03926552b03867206ce3340426d95ce1126bd564e3391038ee6fbc1b6ab1ac9264c81033b267a232ecbba8d8b0de3655d22a5896bf3545ebe6f161979be66ed3a5d2ed3d497bb6bd3cb4bbf53ef1cc838d3897d37ab187e63a239e9190c6801de2534e6f48fdb49848927a47b90e0e3aa0dc639da1125d5d90fa7669bd8a4114b6738d9181df1faf4732ef79a85009782ff45fcd15b0496c4b02d88b4435a1bdec41e6313f900e490087235eb1ea2045a12ff9803d6709dbf97872c080751c1180bad87f87f72ecd72f74f3f04c60cca2fc615f8d2d5ccdebc423b942bf42682fc67ed295fb021085d5004eb85864c262abd7b664686f50623c93c4c1874132567e1eba40e630e27f6f581ddcad38c92d56a411ee075dcae35db80fa8a8d19c3ad702d2c0c802063931e5852d561f8e0080c047395289adf620b9791b52b6734d57250934ed326997f966ab2c4bb4d65ad7e88a2d0f483026a2929e6f61becb80bc89e1ddee6d2968ae28b9a8eb59c0508ba38a8bfbcd2267826bf90587bbdca090b7b041224693f6d0166b4c02834681b7bb1b58b8b146b005ca50b8231b07fea37a49ccb1da9ebfd6874cad262359b764097a4fa47f4981eb082ff3cf5e9e78dc17977a9e444b9f232107d07fbfe2ff2cc1a3e369c7e76a5ff0841dbff2ab1e69084a47474922049198389dcf591c0c8ff982e89479a40e4e918af9e92523a39d8cac4376298372c4429ce15604b48c2f222b071b4e16f85c9763c8b15425458ddaf940f02494bda77d0596ae076e5cceb149cddc84f7a5a95fc6cffd59f2a30b77f56917c5d93d3a911ff8552f4f4f7093304fb03d2d9e0c2d8ed5a5963614756c8c95e5ea0e29da8011c44d359571c22506558e746ef081a2c5dd30b751e01fea027df566fd5712468c4ca55599d521d538e1f3d1dd5095797306ee993fc4c3c784a34b73195fb0c0f615f1c4334016490ec2773aa8db9c0cd49e0bc60553296f919142799b3c2b2d2d2ce24891e0f643326b1dc71d7f44e794e61ae500445ec2fba5eea515fea20a8d1845424475e94c40a6c390c8dc05e9fc273d29d5398be4c52d741bee911bbe56f016776697d1012ba6bb4cf0f573c8f5510d31e7ad80aa02eccad95c07acbd11ac139a0007eba1daf0d88a008b614125a2df4083aae16c66e8da11da5b93680abbb59688b37902def63369a56c783b0cf64a6774235e8a71f243eb6a203fef08db2c53ca154867d83053f8254d9c3de11a511b643b0b60e0fc86b136000db158a0092f1bdb460c14619f13ce2ebaf20e67566ab19cfaf1e6c60646387e72bc58dcac7115ba86e25f586f722ded694465f18016021c8081b81322902bab4f3266883c09e606a9778c8b266cafca67f32a1155126b4b7e01b95e4cdd580eae64e23dbaa56d924267584b251daedf72c7a7464c710c88ed4b3ed6889ad3285fcf731a4bc033fbe4c45b9cf03ae396e5d5e6c82124864b6dc49557656946d324973f2048ef496c8028792b629cc7ee0d589f3d12dbe4e77076bc8135065e9a203f58e74a1e30d782995e7bfcffb052dd4ae26d1840fa109ab0166b4c6c52a7101179204aa3da238fa9dd64ae5c8072061df93573f9a24ed1282de21c81cf0baeab10387be4239527b5c16f2c3d94f06257839110d75b06d660b2d76e5ff3032d85fdfd9681b00b1a95abfa16393056cb4b2d94c19ecadec0667b87dc097be57c47039b0e509167278bd432236fe3e6d84ab3bb83b0c28b3caa761944a9c4bc172a029e5b110d4f29818be1ab2c3c1bd951beb6a1cb9ca6f4d7ada70a102ca502eadf6c61b6f3d7609f9da494cd29f489dadfd3e21b76d2dc56bfeb0db76dfded4dea92387275e4a5443ab5c78cddb50320fd999f81fb88b074b55f467495dd412c212d57ab77439e8e208f45b9d26e89ae09d0b91ebf1e994d7c0cafa6539a4379b02bab0131364b38e3f06bf49673cccec26a3a878eb919cc17ee125ef6a98856385fca6b19b7f403b86958ac1256a945f1547b175c76dd081e78d98f3be8f966e96b6a252ac5fcb4224f676b0e2b2a66a1423d00af3152ba500a16135a9739b89824ceec90de82270dc084a5ea041d07a0fe9787221ee64816943379a3f7373a4a97915fb6d2db242a7928607323f3b6639cf8a42e0367b7acd0a44b874f46c0836ff8456a0c923bed7e1cda3ca8fc74c4b6d755b0ddccb8cb0977d453e6ca64fd87fc48a081e79d28db8d8883e120847ecbbc6fcddcd6cb998a8c7d8d96b0fc201d17d507cb23f11f7ee0d05ae26ecd988c2a4ac850e6909a45edd086eb88e57f16effb585fe85f76b15c3308f796f3031973adbf2faee6312b880de7b5d9f723f2bf32e06a1960d68cce846308c4286833d305a6c7e02cb1fef824cfaca2980e30bce10a4ebca4ce525efc6fa7cce86ea89284243b2bb468b626f2ebadc7e25694498e1004490614c38ae03b1a29144974a67d1374e6dc05ec2a8e2306a67c5f0e469753d39854d903fc72ef66af489b485a49a9600464e0dce7d8251cddae59baa8570146a4bd1d37c921ee9643fa16ebf5eac1ac9179cdfef0cd532d325965b67258811117ab2fb1b9b91b6f1cba54b12ddff22f7bf3713dca424b0ea01e87d6c421fb000da18193108e76bbb82883532efffba3bdf6c993032b42bfa7e63f39de9b86f695baa047dd0278afe7e7aba54530ee934ee4b90544b1b346ce5585502c7838aa07e3202536fdc468c8b1ffb319b64290b94c64164aa850fe0afa513ffb42fa1561f08526ec571a6786ab30a463745ac45e811a5630e479dcdef169b423ebe62b59f78fc6817901864f6bd632fc057053f4e1d2b789e15f66f4505bf37e31adf9ecfe9c5566036aacad9209953ba3ba0232655a84f0da62b82969db6c872ec8d47d77c09729e6955b0f29a0a80dedbd3e393b6b750631443a79661f1a08ee3a3442bdec4c2175d5009eb20d7e5afafa8149fb6ea5f7c2cbcddc37e17bcb8af5c0da549fb64c12ee85f16670f517e9aa259219b67ace769ea7a00c3793af4bc42923bf2978aa5d8cc35d370fa55d07b1d14709628fdf6981396408fca1f2974b07629009c2fd04e400e2c9a84bc68cdc00456776c9bde1a816bc8ccd1d48c2915c7845f294239195f6d4467493ef0cb6106a29a1c519f43da4abbec66ea00851a02317473d7d8797badc0959493291dbd9e0e10c9c2efadd99367aa7e542cb8a65dfca24afbb1bcb922a8e7b2a99d35301bf73f34d5c70114bf353dbbc6fcf0f2d0e0c1c9a7b77fe270134a5be19a996f19afa8776a2699b3244c648a364b5c2b22989f0319fbe79d64a307d9ddda67592e7e7074bc38cf1bc1a5b439cfad8dce977a7c9fe4857696008cbbadc291012f2b0bb55c4bd233b014cc983f847cf29f0a671180efbb5a363ca96518b4c464e0162af875edef74943434c9d4743463bfd78c327a4dbe22e71c25f3670543642ea7d0770534b691eccd9ea75ada1f12c5990dddc5fdd8ef7beefcb275507bdab23584ce8bfaca1dd485695a29a75f3a7035febb5a913768ff1d2530071f2456abad554d1da39ece586000d81e1aa5899ffb63f52da6906c3a6e7d2bf54b8e2f44178d2ee3c9493e1087d210eb90777264dfd55042a2b0644aa6685d03e424e9b12903606a29faa3619e4e2975a7fa1c2acd6f2789db9c322d252bf2e70ebc74c14a633c8ce204355b1e02368d825b40a4a61fd64c5fd83adde404beb2185d1da4ee836031fc2d28ffc5ee05384796235aa0ac25c27868cb9df44fde0af06a00d526ea0cebaa41f6bc0c00b165b70ffa1a7ae31bab842f1ad783a6cdfb59b5f677be1e64bd26c70084fdd6c34cd2eba40244f24f41fd07aeabd3af28acef46b4a7b3fcd8d1e1b8194d3f67b94df8f58318f9a9bc3be6322fc68c24e47cb0054f24f3c9d75be92867a83aa518ef1fa7057211c4cdcb675efac8d9d7daf3d33d985ee29601406a0b4aea44963ef4b9c5aad5ad1e050f9fc731220f376702e533a698c95f81dbf64a44e52f846b179a875cc02197018c43d47d7ed18716951108e71798c278642325bb209e27178e143d2c5fc7e6f9e54663cba353ccff49ac3adbf3aa0eda74cec6a3e135f7d44bf507c1b10fdbafa208d047cf3057f72705574479fcbf19d9638dfdf2d70addce64e15b0b705a4d3053b41fea8c3183e9fa892b557d5f2bc0d2d21f60df7537ed92bd8c2f83941176fbd55834df63d10d42b14db9dc535383e92f9f8fa59860f2cea87224e3abd715ffb96bb91d78ab60c6ee8b52442e1be28dfc181c44dfbf6a37085e00822204829a11a871b59a611547a898fd9ae0e8e7e1e6ee5325f55712ea9ef0b665e7a309f83cb88bdd8023680a60c1122d414206d1be9b194275905dbea59adc4b5beeb0e129649aadccc0f40d05f78da1df457aaa76bc6279595646f1078ca1a9eee8649f1d0383209d8d545d823c2ac02111a76cd729a9c8f4f9af61bb1606dc6de4c6c84b69481904636cb4e0b6103b00f2f44081297fe173582e9ffca407a11f4926eedef7cdea57be30a9a659db9dd22033de4b1a7d94131e5f9b1868cbbf0678a116cd4b9fcf9d6333a42eceb10090df9f3f0fdd1c9f27e18c066d441a1c3ade2d6c1b16690cba2d5a05b95c5829daf07463dafa9f9c72aa1a2ec4ba66eedfd8d8a4af153273a6edd612cd0ff80dd39b8ac8cd09a5ad3dd0256853651fc962c51df410977ea06c4df7ebcb4368a02145d78b9de315c06d8a821f708eda0a05fd5b2b6d199ce3491afe298b5672db63882c3b1ee85374b48a57b234f07b932cdfca55ef66632df41cdac80b8b7a891feae533fce9b9f080da248018a884bad6128dc8e558f796e1be8dab7f65e5944a20d3489329ca5508d328d9d9d1affa60c2fe81e08bc006efac3733b6202be06e5475e713a647506086354e10f6c70a8b131e1675a55110172f35ff036db1407b930d6fd895fc37b734c55a3e5e8720ff8e116e21aec7744814b3cc8578537c34bce38d24291977750706e4af35ec65e522e85b7ab63a5e85f04684ecb4770f69acd788d04be24297731668ca052ba3719711609bed9768a98cda10a01139b0d4e97711478a7f4acdc50eee491267412f302ba4a19285736003934ebd72b21e48d1ca7688d5a06ffcc00c3bdcef96eedcce8c626355b1f1e524cf60fefc727917e6b58cf9ed39311e830384ad10ecd87e93058752bc284bed5d0e2e0c5d1a0ec3ee2f7f72d0ba404fdb88960d685f10e884b308ec5d93f52916fefe3b5871ba3d5a81462d389067f112460b21e5c86a80135c95e56a026b8e33c6deceffb0870f75c9d5f90a97c74a05fa7ffb28c0136f261415aebe06ddf99f0c2af4ce1b33605afa945a96b06b07bc6cd0bfac8e18768cfbfef1fa978304ea5f422ed68d676500d043174e3a8bb07849c604367649e4a97464fb8a3061b0177a7bee64ae523c028f5b6212455b248a41bae6aad936e966656e9acd13eb99165097a7ebb5baee4ba15169766fc3a5ab156ccb8b547e9d03f616a4ec0f6329d687f602cb67a33ce10a646468d0350d5379f4467ea0eab863db2a9a8acfdf96e0f6e452559a00848305b0e3a6c9cbbf6ae0263dbfe33e6d54e6e4df587a6c87d7b272515b09572e8a88ca061b7df1e5f56e20482991c0747a68804f422b33ca2630ebbcfacc6ca1a09c9e5a96c5ade0833b5ee4df857c314a9ec49b8fb2fc35b528bd4fe17a98d672a32cb3e0d20b8725d348c7e1f8792c2ca939c2ec44b8e6fcacf78b5a32e4534b31fb3fb9df43d64c2fe1dd0574ec7a4b0ea954ffea7b569def7df865fb69f8a28c13b5856e3a54792cd5ba32d19cecd62e034ceed9c54544a07c28725ad075af65f93c75a8462a30ae5aa609d1840856bb0f11a866d99785949218a2e5ec706ee1f8b173a71acfd97493d4a7406be04b3095e16a0838122d0cc8733eb6e785840af250453589d1082841dbb14650cc597da0cfe78a5d3db18134f0b4cedbc75467abc62960d01b2b8d3e9441ffa9361fe28ca9ec209021fd3f5e2bad4ed7d1d67ea711fa0e8256e65713af3290ddbe8588604fba14c69c06f6a8819dcb87bf1546470baa82accafc1977df6c0f25503023e53d4238608db2950574b9c8c2726d8f3a16236a2c78761fc4599d35768064e954de6ba25fc88f19460e390c0f3f1007a73e0831295d8ed48841d68ccd3f0657e9fdfe400260f80b4492782620ad512559141107a0ef1c14bfa67e432340a32e09430f0b71e2dcaac1d6c2677e8ab09249b8a1502848d50cd2ec90b5b5b6772897ca2186c7ae7abbe3b089e04fb0167b6f2cb3e02ced5d8594c7b120c432194532facf1149b46020ccf002f31b41a3dfcbc6bb0445d8dede0387895224d7412f7dc9446981b9312402f10a7e63e6103d75b3d79edc2e525d0d4a7565fdbd3a2dec339463dce2d43e5ef0f1f07286ddbcfbab12fe8b690e1738256ab945b7b1bc25490aaa5d4abc0e5e67ad452ca3d20fcb4f1ddc03796b727ddbe06c90f02cbc22029f84682409d405e0f3aa788b304f6f2a6f8d5e2a3bae8ea692544e1bca0260ef2b5cdac7c1338b51ed399ee8ecc46da0625c282bc339037869eeb5086065983480a577b4a0b1bcad08052a7542f8331169ed9d523693ed32ebe99ea6eb53793ef328d2c152050d73b6543c641b437909ac0377f75ad095134c336623aae89729ba2a3e32018cb270c68d24e6021809db6aeee0189278151edcf9f158b40e2402e61fc02456ff6355afd8280cb2346228042e3ed34b1f8642d8d45d786f00552b6ccc8ac1aed3899e4a675da8e126245a6f4c871f67b9430319fa38c6fb895e1844e0f8399185f00bbe534d8ef64cc11069b447c016cd43948cd7ec962c8da04208823339479cc27900979c837433eb411d56100a74501710733be8868c77fd507fcd10e6d2ddd6a24f1080ce610ae07b49b2b3886e3a48c1ed7ef93db51fd59abab788137be959d530d349073bc1d22f76590146b625868e0636be2810fafdfd6065d92bec6eb4992485f8d4673ef1ed95f2ae33e89a326abbd3e8ef6ef2050bb5f629cef6886a96ccaf74cfb1e726664580d1636c513e8cd83eb83ca28414aa46150d385b415f17b698a378fc0c8fae9c2134fba3a4c50efd52d6128295ed0a1fdf927f0af7978a75673ee958bbc4f9c2f7bb9c26e05a8aec90393888e05e898e847e6adc067ab76f696e426c34c72f3cba0afcb49da45f4a195eb27f5271a74bb98e4dc4d19cd1bfbd05f5bc7bdb864bc061a2d2ed9934e134e755d3b8cc17d5fb17549f9332c6594e2d770210722cebe65a040c59cacb1920b18f5f91f82a0addb43ef6721c5556d1931f8a63cfcfbcdbd0a69805f91736f1d01e10d5643ed9e61cd4794caec14c2fef8fe6eb460ecff965d162e132bace38aebb451a54b1e3c3128f370432197e14369f694bf56f5a04e43aba98c627f7d85398a4d2900e10745f54dc7cdbd0e5db9762630b06a6addbc0089b908098e1dd7036d56be62f9b1fa1e4112eed5cb28e0bc5b6804484cefe0a0c3e55ffdd6350031ca2a92be3feb030cd7a5128cce4ca85dfaf6f7a951b53dcbd8d61ad050ec9724d3cded3b25f8800e41308e4f853f74accc82266981975d711c646d722cdf986d85d6dbc8e8916e77c0fd8219c90c512064e792ccc9eee5a69ffaebec1a837c86afc3d285ed9dbc5c7f9ff0af7a79079493f9f232e8eee2245a7455e7e6edfbe64763c3276fe5010ed5d06947a1d3c7f8d59144b6ed4db749b2fc92828b33d273a1e00cc1d999ee2be485676f6ea814f37536e5a3dbbf69446aba119c26c5a58bb343a8345265c55d07c9d78ead5b15724af86d9e933f55cc88e9cc3d85dd0934cbea191dbd18f21e5760223366472c71332387b843178f8a4e5aa05be7025f976dd477261ae368fdbe8cc8290769d5011d59e3f31b32616766c4c3d66e820a3157acaa5bbc8ecbf6810a28640fff0db6229105659389e2b82aee8d3441dd2d50796b2766d3e7b717bc3491d73b06df34180311261bf37c456b6887135c8da2123c61a46b836980bb1e306d72d5b171fe8bb9b6460d0e867f4b92289e833b6092ef273e0ec9292f9731f7819c0144d4ae6fe5a19f3ab00da2777266f03bb6154401445a1ad682e95be137a6ea13a987da1a6108438d83796cc92c14430569c288faf2b46b4b2e3fbcd33a1424d6a24342fe42f1ffd9660dfcc0a4df48548baf312732de75eaf8e90e442daa44c11bae0ed367dad99ad3a4a8874b7c1828ea84052a77b9f436dc31c1a89e5cfc2ddb2413f5929f7cf168bec6714521b7dad9abeef92096b017e88ef241ed4cf6468a85f631115cf9bfdccfb3be173a4242e61822e2f8703b8dc2a83399e0a136a81d7d1e46e2a997be193f68ec2531693b20296934994e61f0208d746c829863b80ab8c80503048491cc9dae02094911fa1f27617569325fde79a428c0c5fb71aaafebea65836c951d27555be8966b98e2cd3d3bcdf7c0ffc75f21dd0fd7588adb17f288f6b98b308307895e9ec3c06e13f86324d3532a298b5b873a8379047f2bf05997bc12a00d2c28f7a8054bf1b1d961a7f4f90b9a1095cc7597e509e5bb1bfad3018057363b343bbf0269f4e56214df761d967fb21bed43b0bffdee94dc26a907e3d7f89aa32b8156893055d50e7863f3e689fc44fac892b89ffd12115cda79dfe9e3b4cbd336dc99b9174b3b90892447a11ce28948f7d53e86afe698746b1580f4c1a11420f3d8f5f331a64634017e6db9812b8d6a4be560cb5314da88f394709d260ff15ef5ca512a4bbc1cb38befb4a5fde1c5bb498cd83e0b5d7d180e4c8ad1378a795d26452626b0f6fc1b50d5eabf9bebd7a96553d70ee600126acccedecc4076931130a674c296697cbba89c4d9f485d65cb361bc71680f3e1d9a31e587a75f01b3b781c6fc97a77ca29e6cfce2baf0e9d013facd5ebe6fa4880fa51cc5e2f9e88ea8dcc7a86860a9aaab53fde5d195d1a167a2d442d538f675ef4098a574e6de46523ee10ac280b14afee395264a5e820bbf1bbab158489f52a8203c2dd7c12f24d7580acac6c9984b0d45a4ab9f4bc8a210a26ed8339ab9757f2cdbdaa36381722005a021e58b2af6297658c17050411a520bb1d61d641b142ed6d758eba978d1c40ca2d7b058848af7a12de45fb1cf233c8762e20a0b1ab0db0e7117207cccc73e047d70404359340b73fd767bb87acf89cfc2784e3b2995955786605695c976e0dbed74109547179af70bd4c49fed00feb5858bcfdd47aa92822a61cc1a7d12c5448205deeec2b94c73a82f3493c614a4ee4efe4b15a97910a18bdf58a8782e85e51ca146675a25cd394ae243e2a620f4d52ee451d1169895764594df2af6b0e132372760c3dd869bdfd54e558eef930694a5a29c513518c0a7ccd2164e6d5403750e28ca01fe16be70fd9c65efcc9ae0fe952c79650ecf9aa7b86a9813ffb3f7938cd731e48e2b6bec570349b1239055d776840a7c80b8b20030cac4359eae65f1e3ece2875896852e63e6bf0272859a80e4019dfe0a1445126a62355ce955a88a02940cf8d9bc6e6325e0ba16b60886cb250e2221c6a66d2d07765798dcc17cbe64a350bb8b4f859a1604cd6d5b8e2ae69914f77ea6e024524fa8c9232f9891dc4473b0bd6bb028a568d4bd82b4259b0684c08b4939f97a983958bbc1e8f57ec6145338825ad99f3057be321fb8679481df57c0051332b37222b7c90271340ab1ccf8668d8ff62357f84669442147e3f42fa8f3dc4f10ac2ecef7cd56d657d3379671fe416c7cbfd7e4af3b5645a56e470f480063306839d8924717141c53a07a1706c567030aad002e4f35bfdecf69d41734affe15f63e2d2333113c3307002dddae233d6ea7514e838a4df98730481aeadae7d6d648f59c12e3299bfc04670c076f88ddc45e4fba7856db90c35308b13b3fc4cc309a8ee115f0d2b4bb2928de4f2938ad72e1421340db8d21b6a93664c0c36a8ef8b5f0fdb20c92921c520947f876c0a0cab24bbee74913952ea5e923c0f7afdc54ad9dbeef60caf27c53c38c45343a2b68e690924568aba4f0b084727461bf7a5f171b69d4f7c5210f6d2bbc9b7a964a740aceb3259f2977fa32da3243eb5b22966d1a8d0dccbbd502739e99ba974c5ed56689a39e93336eeac1ed7694053eb56c4d1d41ffbc8ad75daa14b781c98548a4741160b996f293299bce1add6ab6b342e56b24df39091800c8a1e40848bc3a640aaf349aa7703ef00235d6b5ad319c98e8aa1a69c3d729c210d920e09bc3aa07554c22b2853bcddc454546e119135d33af2c31618cabd0da44c345587bd3c388a50de79d6204db8fc2b6788f3d5c30950cbd2e1f5e0fde55e70dd6042c856487299b74cc9260768d7da0baee80390c2ba045ff899c6fd0adc16058723666a3e344486b26548db78889a89bd46065cc1583203caefb655c0e3dc7bc3665b6d1af20ae26707fad61a934304786cc765d117693bd921801acf2228a7407289f3d732f29713f8545d80173229dfc4e5b1d49469bdfa99db9e56a72068515f2fe421c4acf18e885f7b924b0ff5cede5d428339f0edd96cfc845e703ee513afdfc5e78e9b69ef7953dea5f89a8264535dc8698771e306a1647abd0d3b5bf0ee0219c8364522d753dbf30af3020738572b9c5aa0fea2d44509379fb6f97e1693bd92d0172169f6071c7707eaecbdf5f10ba5606dda90fd36fe06a629e321fc8ffab4552a9aadfcaba83a7426b1b9e9ae633bdf77b651fbdc0c7deae26426a773835a33b07b5e6e3b41264c0024eb2b2eaff17c85a1cf2c3b673a0528aef374e854c5bf66c3c171c5b221f6ca17c0f00049638db6992181af4fc63910a2dedb3211d9a1c2ca7444a7ba30ce7797585a416160fcdd777024ab65cf6dc76d23e6391fb5cb6436f1ba3946622a6a80d0f3722e7b67e1a3db97a08d7781687683ef1b01aca52a152f59b052c5c6de14361dd8e00736428c906b14e9c678fba965cac4e2067f6ec49149f52543e9f03eadf20f01f5bdd298a904bf6b5a490ba9583b7907a0e3dfae1281a9e259b2f299536ed561aac6ef161cfcda3b0c6e8771e203b13e709a06dfd00012863084184e7654a2ccd6f7269b250778a835ce936ddcd6da001778a0487cfd83d3b4b3ca8a97208f92863dcba5ade82a166f8f9cd38dac8e2f797d752c54665153e0675cfce796fdea1e314a3cf3c0590b933325936208ef82791287b13a9c1325b10163dfebcd43a537d2c503c7cf0046bb45888ff923119f57bb60d87bb7924c624dca9a6a007ad56e140716f4bac207d9a86a3637001783d3f427e04d81895acf0a6e5af287e03c87f6cc564a3f6f62058d746b5173c7a74c41e7bf4ca3e909db504e7e0297ed95273ea737930a9d374b1c8848721132e6214a145774c272f4978cb8313412a074008bd662763a9728292e4de947782d2fa07416a048789a3b0ba69307262f9cb7cb35a98a7aaab28fcb813075fb3c28e90d499bf9b4f6f59d639526842fb05e471da8964331b1ecd248ae78c17270e8c89514207b3dfc5d65a98efe3c7d74418b0c15de64e32bdbdfc588591fbba3e9cd7fdee3546e568739e1cf4fc2f79d07f733bb0f32d26535f81b9e53782500c29e4b323d32086f9fe7076ead66014c1916b0b7ed115d58cd1928f414c4e935790134db022f7cb75f8996fd9a937e1853ac90e997cbda500902a8f281ea622a2770707f95471f0a7c34c8ab706652ba5b7c9f8facd1d82ecb42e29649cbcb364b4621527715f0e30914d0b63cbdd2e0da7b54b2ea3eb48efa51888e7a00d3d32b6462f110cdfcc252e1f37285165a82a1916245d2c2320480e76baa28188cd2c80574a1259e57f06843683e94fb76bc6c1765e96bb642679aa634b12b1c8b30fb282d6f4d0410643dbf2d298573b918e59a244244208f67258ae8611873b7d61f8c3c8df5b66db9a389aee92fe2f90d00025e638aad0b8eb119e25524ca2b218e022e3f59d3ec9acaa6e0354cbc343d054fe8fbca1506f4c2ab2320d350eec61ef78fcffa2c0769300023fc509cdd200d74733e8dd1566866aff3bd6ccba49b6bd8546a9d88f7ef948d61f72c4b54bbb07e1886e920ced2b17e902877579f8d8e863cc6df0686ed81688e8ff077cfaa43c41b06eabed0e92630119441a291c52df9fbeca379df4ac8966db2ce14a9c17bd3ea2b729120b098478aa90f5906b141d309623996228bbe490fea2dd3bf0f2b5ad88212725f5689011093b0fd5c8db3febfa88b8ba5d67cb500aa01ad718f6ecd2f1ba51e0316a731b9f36a9428aa90a9380da5fa0054aca7b559bba20d98cd153892cf93154b60211fcb95825afc4a5e3aa77af9915ef57b5c4d83f28405bbe58857d244f847fd3ac3417f352798f8e541dbd0107b298a2a214a9467754b4dff18d879fc8620741200a85b58860c71ee67f589c7949cb32236f6a7b8ae47031ad2aab245b3bf772c03d9deb6bed7aa808dd6f46b6215bf4fb8c4ab966f7c39598ca310cd0e4c2282b2131782e91be346c2b1cf3aa511f015a63ebeef2104c5752b46061c9c8f3a670d0f4af64b4f96718eae65c3bf056d8e65f8cf78779dc2e36972a96e46320f614afc8b684740e99882167f12387f50fe5e3f659dcb7d2987a2e059968d7a4957292ba7862e865f235b3b06669a091f18bb9faf1813d150ee685c36c354addb028f94ae5a38a947b7dda52c10837805eeac1bda0439ce79bf126a458a3f7f77f39cc58f2838ba3862c0c1455d8564ac593bf7f4c2cfcda2ce0b76dbf21c322e69deff36757d16545018023f2cb3f55fd6c16be14d5e3998efcebe7728b2a35f645d388259c5ebb71a583284316f6864103a589451ba6477c801aead688190a7d23063f02de1fdb61ab2a92fe4313de1b1964bf06772a4be424e71fc39ecb0d21d3f968940742b3c0c398f36880f59567fccbeb6d2c5b5c30b6a0cc48c5efd24f7866009b509320bec00efcb0a4bfcf34b1a34d060866db5a8d37a9d7f0bf0fe3e01bfc98be4660a4c20b40feb3e8ed22256f435eb70b62c68a316bbd770c5dff3a9ff7543da36f1ae04d01eccd9d4b42a53943d82a2ce03280946ff6eb3cae247f0bfbc4be83bcf8e40a31adb111f7df7f477f298025450c26aea88dfd57de541847b81f2f2239f778755b8bc8e7c5a455d07d8483218be04b48b10d825dc5d748dc1a7f9aef84e63aace5ae54a42e4f930447c5f43357d1b4e78cad2c8a21ac5f55bba85af3fd17ada5ef04eb4d7140d1230b7850c57b16cac7d624b927dbefda3c23e1108b533a5cfe5fa06c94d311c5f9baada2cbdc5601ef698f703c07a0c0af70c3795d1c879af2cdcfb71960be577eab0f6db22b923a36c0bd3e93fdfc59aeb6c1ed778b9f5c94e672186669d9101d38beade37d8622e6a346bb4fb72a59e6ea582b74cd8f42a919309760066c533182a92d221368c6bf141cba5ba04d7db240cc823a40653569c9454e70cd542ff40a848c054aab679492ae6416417fc7028f57989f782946e9be3efad63a63f34b0eff4646c136cb5a1eaf06524ff33efe9a855ffc456b46bbb55f20b080397dec05b13aa138430f09bbc1355109d49eb3080001927177991ea5a752178097fcacc6ed378bf9d118f6b8bf0d09e82bd56ea5110be57db7b50ffc4d4330efbf9238a6854de4f7317cc35acb65efe8d87656f43c0a488b0d81a37fc7e723acf24c0a7229fd9d252715294fd77f2756e72d67d083541092298ce9d86241dbee484570139b0f27f25ea995649457ef695e478de0db3e1a7b3f0855e0ef696feffff2f1f52810264da3412e520354ddd908035cc4abdeb76865a31cfceb5e28cdf52919f6295fd7b90af86a0c64e053010dea9d088c21dc4725e7b74428340bfa1159f8db90a1b2c6e0000959c5f3b9654f61cd8560f9cc625b9cdf31b9e457f70867b607c65b32d742dcf5bcaf9e838f11f454313dd45153779cfd85ab2b2694bc0ee56fef69188cb88c0a7b17ff35ca90345c632bc7f6412a5d4c5788e3aa55b0e9041a370b8beb489082b8be7fa2102bd65d1cc6f8d5dc4dd3fa02432a60dbe32be6a8261a39ee30d26669b7745c5ba297bb1bbfa3127d34b30b12fea8c98aa3d8e6b0dafd82af5ab3696d60a8e079d3936072ce437e784ff40c1bb3153632e854ef0cb4029a63192061a9597cb53dc17b567c3cfde20f1060805fdbb6180e5942dab6cc9dee2fed43848c4b2589ca42faee4022f54d77244ec98c487f91a09d9defc706e655fb026ff64cbc65ce6c2ef88699e8070526c1f878da508b3f75b7479f8d396e12ccdedf6491162d8a783983eb138e2cc5defce7e09ee81428dcee6200e9a6efbdd5f069854135a07bc98064cbc6e1eb10f3823464a44f406b785cde22e7006962dab34f20160637028570c55e9dfc28384ed83824605027298c8bc0a7bea57d7c596d20094d93bbab09a4daf35fa19f1d7d0f8f2052723b558f818d49376645df4e36941e2ab2271a0cd4563a710437ccfd8d0ff365b3c8ef9ae1e30c7dcb9f4eeb3f63a0c89efc8ad2262014541f4b5d0c9dd09d7ba6267ad78c306099ddddedb65769f9d2a5f5652845841b756fee290a28d510eebb2765d3fb7b55cc9240f6858e51bf084acedcdd8fb3a6e23cf3860b1b3b2422a720511380dde8e56d8bc41119b92ab765ea7f45e98e938b2af712497b22fe0c77f44a1d4805ea5e58d0f3fb5a11f0fae2d30b7be79ce20c640f0bc35402f065887177860be467c0c7cac59a011047c32ef2fddb5adfd67f6941469342bbc472138090612f90913b618e96d5f313ef7bee418c46a3eec48c1440db091d1efa320e2a8dbc9abe30ba4997d45695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e199d355cdcb33428c4d4f76d8f2d93c7ad6358d3bf1c9e10162dd890d6ebf13880add6b43067b443f8b3050a1b8a3b32955c907b46f4b52b2600051a4e8c977c6d2cc48f8fc73169df5bdd980bee258deffb2fb8ecd6693186d400baf128e60256188b6eb783240232d5c524ce56a801ba7d6c43de979f2c147e8d9faf67b187c4d787f3d6814569556cc879f6004390252914a92248672824bdac1579c67892f24d88863722a774e92f996e63bcd8d4be2bfe29ab7440d1016a37f26aef0f1151f6f7d6d6b4e5caa79805e177ab2558d7157e394a56feb4c35ee783f05e74e0882b5b054e621c8d80c268b751e0e935f84540a38a6e337cb88b4333d315b92459b85604315c9eb55fe177e3eff713ddc561f0b824e0a7dc21bfb37bfaf42647e2365bacf7ebaf8a73d337e163b57549d73537f7c5e7cd3cb16c32bf2d3a76ca9d16f85390e239468cc46625034b8a17ee577280b87c995a3fb2475b5a2e77d7b3c183b7ce4f053abcb96d4c18549f4f0b34b3279e62a460540523c2577a78bdbee96d4eabf5a20d7d1c860ec37529b6fee9130c6d261845a633bb5e5e54c8f4c5f5d138fad613a04b1c424b66015c55cbf227b6339adca97127eaf2bd81fdc835f3db730be42c2d14b738ca0e577863dfc9304ee0b8317dbb17bcfe4be4f28b41781a52c5d4f258a25af1fdf3b1aaadf4588f663762417bad5b5ff6d60e3281990a625ffcea68098c83c0143bad5267b58c618deb67834a666241e7d16ba258f1f669504096a34328c9c9cea4291731d9f1fce99cd0947e47d766912553f80a238d1c78305ae21dd2f8eb588c6eeebecac0e8a1c7fd696adc53c53db51d291aa989b64696a5934ebf044a4a0fdb0cce7dc2868fd42b198f3853955a6f078b73a77c26360d4132acd0315920722ceecffd1113af91a98b25ced9f16ac9ae81e59aea71b3aad8a70dcb0bb2c902e4c81afeef99edad2b149d2e9377f487d73171e25d4ed853b633f91ad35e5d85cdf8e0b6800919043c1cf4f67f9a15eb77b0e3118ba1cba206188a6ec3a21eaee922a90df882b15d31e2dcb94311be6e60db4aea17ab775d0e4f633f9f3ea41877c38af1809d338f4974f66a17034d18ccdd3f22471d6d27f9208e57bb9b8d10c8be29adb8cee5f98efac3bfe8f1c3c61afb4fc6393777223f71ecedaf4cbf420e97ede115ad13ee6a1192dc2d06a6f78f50d0907e351196fe820729d7ecaa7bd8ed50fb64c4125880be0ce8db85da7d97f68af33d79d599588954a0b1cf91f618d9ab4e390b2f5b5f2d9e9e17992b547b41f0704f61b424db994f59db8aae825942d50abcb79b0deb44897218061a2c2a8e0879611e7236547c81785fe0e57c1bfc9b009f31d432847243c6b828aadff579ffa5ad8f86e9875e2086bfa8c9431484fb00439a57cef8226145870db99fd08ba6bb9425ee0f59b7b8a76a54364484c6de2bc95ad81ec8b236f7339132dd78f020ac2091dd914466dd5f47c24e36a7d60d14b8a36bb67181e91533ce6105c8f0dff7f8143fc57a132bd5dd307c30ef906e7438e4478a8cd24a807c761567a7e9e4c81df2c073ca96b3621253d1c89230fe4b89ddfb66427259959f439368cda8805c512292b3da83e92814f79f777e4325b252cd0b70867522148de086d2e460b8d568fc68e3070f36ba9d915b96697f7d4ad5dd8a8fc67e1d8b998f9b914a1e58cab0cb69beee8f05617b200e2fce06723390e70076a825016c51572d6711c2c1a7511f16b685e6b35d4ec2c4f4491dcd2f1d0545c33e9ed87e5c74bc1a9b6490cea8fe327118f2a9b2b6333b948685bdb98f0b823b9bfefcc15e16f93aa6f09f2c5fd9ffbec89d4dd140d354d869218eea0239dd986f9edcd262ab914851a07a7a3952f316a0515feac364be4af1a88cc41a9178794d07984da887d831ea497b6905c8cb6ff82149466971f10b229d81678a2d63c4bb201e97c4b62f575408be233716ad6e98452708c57eb17b167a117f29779f6133a3985ab5062cd61c7f608d9befc048dd26dc49ceea4945d5ccc39403a66afad8dd047bdd1eda97dc3fb7d4dde763a7bbb5747d24b3d6f3063fb7e7200516efe8be63695973284a08de78e48c931ae4d934d1dda841a43411ebf1a4ff1ff0d3a37d16fb69d3507819a51802bcb19f3030967c02cf920d8bb1f5976f3bdd07c97ec9934ad5955e7b6a513e7c446ef2dc0cf1865852f69115e6dc08f3b05e1b91bb1ee3c9aa5d2254fef28bd5e93a4bc49bede96e388dd5c5eda67d5712de2bb8fa8ba0d14bf2572a079521ece7d82d11a5a03ffb05a1d400089602ed4914c7235e2173ab5af5b59546a04dc5741bb2b579684974040e39fd685e19814ddf5067a2befe825b9b17d53606ffc922ab853e4315712f840930e67230fd664e24bc93ac6dbe980ced53e823bcd879e963b4148af9adb1caa8c771eb56d31607dba1ff9579ead15eb2da130c87972efb3abde42bbf359897b5085b9a74008b7fb80eb3798943503ccd8d50c761e168825299c28df6527d1063d1afdf5016ac6d5854a977172a589981f584f31bdf69eb6e90000ff98dd71eab5c67f153cbbefee91e33fc892dfa8f94a99cf09f4962997684aae4d007ff7d3c7f357816f2343d6b460bcdaec21644246ee6813fbbed9fc4b3fd07723a914d6c2ed441821d4ab061a04a2c918475da9473872a60e166c7a649b9d6b5bde8bcd3b919bebbee63d8605fb8a97416d84e2657bd61127e5f64c63c554481c726cc5dcff339b0edb3bb75c6c5c2195d71209207b56ad1d10f8c2b6ffbdbff4de11c57ca201e2ecb869c04f773aa69fbc3f4f5b3b29b383b153e37d6023d7e1de6efb7cf28207fd2df5ef642d6984238a8ad702554acea384b13502bb86ed757ea47890d0f283eb7fde958cbc8ffa3a8ca21db17d3f2b9fdf18195db7547cc287d4c1fa19babb9959ebd8abf95e94ba5d45c2f0aa2f94b2bf335db010110f77fe276e8417511babdc61499b84375da33a8ad6997cf861947ca85aa1b12bcfc91fbdf5931dbe2496bd1702a2bbe25fe1468bf574594d5d10ef02cc29111e48cfecf27fddd90196da247c4c1d6f5a6cee476926b6b35a2a93cc3182de35b81a36b17c50031b900575a0164ce19c77d1329b3e73d7e48fcf79d47c49da5a3f0cdcfb7614234b1cb3a9ecb047ea7e1a8b0282b5a313715593900bace431936c0a096f28de150b94d0911dc3df5c8e15370c72d909a258de700abf0bb728efdf58c23b08094f0aa7ddbb182c69ec2da4b516e0c1be59670089b461d5fd5538148bc51a2e1f606709ac325cb97037f57ac7a460243c06c3a0054e0a2e4bc4e001c8e5e0ea8ac4e435260c2f11155f2bea33885ad1270f3bdfa4b655306b1d0808652b63186b851442bd496fbddefca6bbf4fa00cff65a9d1b3f2aebf761c66e05e3131105aac38987a224f561002903f209b4ca4974267c46554cdb61e7c84da842da74a7eced622fa24026e300e518964a94820a8fc82aa7d86f07467fbd41711521498f217e583f5b10a2f48484f3358ef7687ada5dcf3b23ba24af3026a22412538121d15e2169992315d356add041924aa96f9e332cf467b8d03d0c2c7ab381e9c2134a855cccd5fd3c0c7d126cbbc3ba1651506c983b9669829e971faad64af9060bf077e6f6a4282ce53c1428f78582fbe65abba74b46ae1700f63865202012e1be3660cf86b16cc70870ed5a3afab5314e516b1b596996e0831a89e606185eab183710a96ec07425701683ef6a1ecce00c1e4cc1c1a9925d7844ce00c10d7385f0b5af7f13836f80663e3359ca49231053be046bc45b06977dc1467e923c17cb37af63aa00b5d2bd76deb71518f21418a430b633de9119c686f5178c12a6e4b591a5b84c8f13239e661852429abc2837d039b68fd4b5d6266806a0227941b67c16cb70e3ccf8150e21229f027b76e0c9a3606974ed18842362e98511585e4a66f6a948fa6d9e8a835a16681bc60c6f11eece4a208f680fbb71b803c447e47574aaeb197e7cce826e3d4e92d1a81f8053b85053c8017607aaaa5d5f9aee03b93887f5c54f036d6b7eb61ff215e6250eda5bb7a16f8264fe1f693cb86c52d1bf1a68557cba1c0176bbaff614b8e8cc39e71f04b8085d55a337ec56a41d497d70aade25ffd1230700df485db2ebcaf9148e6f597a6797c2d80e7284fcd4c7346720b3b88af8acd115d096ec2a571f36f63f2a8acd17f660787849595bf75a28909f2bbdb4b45a22a3b05f7c2ad86944e73b2fe5355a2b440c4a82b77eb3e0e5216fb04c4e509bc4f5ac0742cca4824b2704794df4ae0592294e45fc41dcd079c003cedf99086d14160ef1131285cde3340f23616a64a74a5bbcedfdeb2923c68b56e08f586e043053a15374f6059d4750440720a220b044f9f3ad42cb6b25af4fb036fb040554b7486da3023e0f33e2a9499335d11518be40572a30c539b3c94bb7792a5dd0afaddf9e254b1d2534ca96e2d85e193ae49ab33c557d67f681912662d98896a01587a0eadc43c8d13df168bd4785967cb083f16c78c88b9fd55ed0ca3fbe0bcdb072cf635826fc8a66a395d845358392dd8e5a8d82f0fb62c039d2b492ffb37bbb0e659bd9ac899cda4866bc36ca8b788cfd751b293c45da4944fc51bb777ae7911e8fa117f20e4ba434a3f843f53bdd484e5dc5d71dc211c759d26a7915a482a698419812c6a07d9aef45decfca8cefa727ea4b322a4c5fed58ea05cc30bcdb641fd1b43851eb049d615c806b0d946ae29c560f54c5dbfd70fa90f8b0c04771d23a110e3e462a34e6a55a1619acac071afbe1f9aec2e86eabc12842db04637ce3e11e0d8dbb1be1accfdf45633a70faec505f368feaf41513185f1f30719107348e5e5cb1dcc8d20fe2b8d2e735c4e60876457543dae339e42f4f25f1753e758b88a75b32b9c3cadb33df26ea21e896c1124670c263fb0c8d0293f44c06259ad29abeecca630b68a736f749bac630deb9fbb1d71ed7be7f56d0674bbfb7ade817b034f1733e853227ebfe091228f850a71f249f738c08ab40bd6acd1f69ee2322ea7e9131f4808f9080407ea1dcf4c70d94e55d1a27b5e4979d89f14fcabf10d6591ff431dfe8a17cb767fa43b264cb5d6fb151b720bb384705b4cad1265d400a3d6d534843aabf6480a201ff414f05191f87739cf2f23bafbd07374870bc871c5d437a27fff3214922f92ff74438dec3c560f6f8251dcddabea30479eb51431ae1632abe9f28bd613008d37f939c8705c78104ff872e7e08e8b7f38660a0ae68593960d6d363ebac5fbdcc2f8098acbd7762346591013a5eb5360bc5f3dcd9b4ecfad62bd3d7c17b53ae7e9606a4b56aabaafa3f844385c364ed85f5beda8a1fdde5f7290a1c2060d8d6bba77f75dcf7568e359d4894a377e057f31ba8d1a038351a6d45fb2df9eda89cd0b37cb232293f3b9987ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d474dc8b43b03876a2a82897e15fb8477c956e4b18b9fe8453cfa4094837bb5517ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41a7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41ab1156a1c0d0f93c52b3e3e492720dc6682ffb32b275d534428a4f74ce1e2a0d5ff227ddea4b041a8a992d7b8dd0e2a529028418714ac4758e9c7203a96c14abe6e24c9031dd66ff9f13c047c3da673bb27acc341f5b63f557dd7fd78f4402898f77760056e559cec407344e118a2036a4ca3b5f78db0768a3e05afec60367bc986b6794fdaa3da9bdaa60bc8d1f8cb3e8f7ad8e05f86a41338a6bad769199f2cf4a19151429b1899b994833665d81e9b785f770459bdcafb15303ea9edcfae23fe21b3363d3598afe0fd23826999d0af2b0652fbbd1ed82280ccc4e5a6ffbfd440d8b729630d296c9e925184c6b24ed7f2ecc8b32b1941c6b8390dd3f16f471406ecdc7cd6744d8c96ad453d67aece0941ff5ad7fa1aa5d9bf0c144dfeca41e93fece0204248fa2e57a4fe09e0ee1149e4fe66d0edfd1b454127f1c6f310636196ff1826224be70a72a6d0cb922a2726d630372f7f5ca5e2fcb5a790a89f81a372b440b4ed2729f6b038ec457f1d43884aef74b06f129d324f6186514543e269cfeca56802f6fcfe22aff0647c756cde42dcd800eda4aa858c178f6cae8207a1a6ee0d0ef161fc284d75affbe273c9584eb7398cd37e611d7ffb44533684b4768410fc2b1fe9846d9a6cfbbfd2e2b51120387fce92ba1d0816f6bc09eb4a0a13a622b46ab87f917512f3cd25bc34be54b366f605dcf6b9d4545619297ed967a453b06f8177908399d9d6b06c8428574e13806a746ab21c4a75c2bd6d3510d5a7ba149f662557a0e850255de23f785d94e9617f76e21af96a1c8aa7d5b30f613a41f2cbeef9cd06e0ddd61fa8b9620dd37602e26a5614089d4826d6f739e0e43b05ab6e50e8da310596c5db02f727119d0289665d7e4303cae9b8aa7e8cd89e4cc49fca0dc8ed672f2cd9db291672426fe320ddf79ad971e43ee97b51367062810b49ddf0aeca9f297061e37a04714f3a4e27b93444e0e4168faa4b6bfe1a952e7def724a5e803c0f16126c8663fe14b8bf76bd3172839bd1c0afd1163fedf91534bcdbaa43d6d04efe4a8c9baa6acffda4966e72563d6549ae1c12177a0112a6263e800cb1e350691229a77754bcc56e04d5dd064b2770961d426e56f4e269d30cd5ef0a8049d17f81f0817013e55e54efaa044f98168d4e79b4bd2f940379868db80dcda181c7cd855b99a13beaa8aac280bc0dc04d3841a196e2abe55373da28a31735f2d7be51881f1f5763e9c93b1563e0430223df301ec31288437e48f05695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e190a8e093d58ad78199ec654abb363e1196f63118e4218b25e0d085e21d3701d394b8c5cd859bc7fab45107f2411c4d73bbb0045ff4735a0fe4e3cba8427ab58bd4967c9ba9d7327235b9a8ea6f67b6cd32470f11c3ba4e993d4d78be1962a27e0e71be3a051a58fd939c867febbb647773a0306b7767999ad35f4a845e5278d0395e32cb80ce43625650c04adfe72a99511b1debb362fb6860e3d28e40891590e6b0eb2a547ea62daf0b6f55eaa90e0f0493a72f90c995403adea20f06eaed5933b8981e0d759f390a2f076bebbf7e036ad680cd9497bef1b2a6703165ef4cb33e4dc84a602c00695598e6503cda22bca252db0199c5181adc73831c068933578bab672ade25f6f946540676a62b67f591070b80d2626f5406cda46e68ccfaa2a8061dbfb4ad652bbd55d70dcbf877f1c36e866beaa49057c9b21cf463f20871e42149dfa831c8895b0f68e24e8d09138ca82a27583554bf6aad960b801e990d30ae34484c5cf435cbc5c415811094973d17a4331be426f6b653d5cdaca28bddcbb15ac47a9b31970eafaa0e0bc53e2a6362f852a55a880137844f187ff6ede90061eb6d1d2990ddcb4e454d163277f834e6b94f4a028cf725d32dc56dc0920e3d90ead0bf88185be8301d5f664d1c18d740fe2d52c1e2f3dd5b9d784253488caf932ffcbcec4462466853ac900a172b95382b813f3516ada81e691abcff670c0e22c4816f6647fc66627192a60e77eb8f77170eb330ada6de06defa914faa80d5050cc0c4be7f27e5bd76ed09701ec5bd6f26d5df7ae7e18b02d347907b0d3b8895fbb5de7b416f55275e7449f7c781b0ae8e4cb3a61172ca7f84aec1647882621c9212d92692ee00590fe904f5d23da2470773f53df224e881654d3961d647ea79a68a397798466e774f586afbbb0583b5480ca49b141184fdfd2a7f0f98e04b319412890078eac8ff4276e4c11c6b3d1e921a76245a9f1a1fc0d474edb1d270b8a88747065de6e569dc3949835eea547ab23ae5fd2b42b71514d1aadee5019fa170e1ae8459425e005793ad92c956765c2e7cd27d31dab38a3927f6e498ff10983514e2ef9315420a90285e288f23753b396fc4304f199b4d976724c5217d655c67e01d33a9f58399aeb4e78c3444e660442808ad92aa06003606d08da918d80069a373dffdb5e775bebc8a953edebc427590cdbded1fe647150c7386f3b8cde7ec672a73e2e27a04bbf790066aae409799ff68f2b9fd4c78dc9348f83fe35734c484bfe05321960293d2176cb6065ce60be940513efafc819824f7c2a7320d7e20340c21db77028979b07388fdb668d85301149aabe2b96c303e04eb67ae8c314fb50562dae5fb0f9b0cfc68c9e242ef7c543ad10afee8061454ebf76567eedc380ac232fb2112c5e8242b1db581b09784acaea2515bdc6454ffa732fa427e9dd81f7b741bb02a3cdd224163258ff595dc1602b37f87ec978c74dbff498d3082a77bf9189bf2d27c37e10d49d8f3f1fd63711ab64e66e29164051d4b03ceeeae4bf85f86d9b18035f64107cf7a18adb3dca0deda3e3fe88a7540ef674b859e3e7842223a92b2ad723062c9d9393385c6fb4f55cab93ad71e25f8eed60fd384ccd2a26a544f0e84664cb862e1676fe89424ad6f5126569123ec78eaf1a8cede47b08916a60e7599e1b07df6027b9fd7c7c7d50ad176784b9d1c361039c7722358e94b9c9d3f7b9d57571b8b1899c5340d963742ff97c27ce376accd95ffce64dcf9b04a3a28ff7c0259709c395594a8b745a3b8807bea0da30c2b29a69f35c697fb47791be10bad3750fc899a74913292682a59a565a792ea9656e60039edf33bc3a5a17702b8a08549fc05cc2d611da811cac6f6ec1d6c0395a12cbac897e84d91e646cdd591fae7998d40b28de895a141e56f9a4a5c0e1f4ed411379d5bcec9856b83f72b3ecbe992872a130869ff3d568a36528ebee13b22c8977b7a24b450e5936bc627061e6ede3defb0cab2f1bf220c53fd75d50ed23eef79ca17f90d7aee9e5ef9bd906905c0a6553ac149148218e278579681e02e4f50decc5159a56da173783e03c218b05e6cae87fe73f578124db651ec7f4b275da1857493d9c6477e6b6cdc6f93ad75f5187e5a7c07a973a86b25635b7b46733659c562e1a95ea5e2d88021d3ce20f3ee178264a46cc22ad702a7e314804f9be97ecaa0079072021debe60e4016957159137c0ac9fdf2fe1ddc9fd33fc323421167771648a555bc79b18b889a74789732079fa44e04d91dd835b56c5a4b6aeec395923a44c20c81eb62869faff0ced335cbe32b493717af9d80a779f5fc0aaf7dfdaff11c2399ee62d78602c44b15cc96f837fdd896452af2f9262df5936d80dd2910e06bb3d119f285ad4bfdab902ecc9613ed82a680365e98f93f8a8880ff2656dfc98d2122722be875796ade64b574904ad78e422130727ecb5003606fae5787126236d3e153fa9f1622fcbc82a834b9a9aff1db79fe47b73b90eb0a450f752c1e1823bed3611de7c968f4a972c1494de707c9e11ec010adb07ffebf3c3455a7ee3b3df69862fc795d77d916417e4a15d7a5c3f9806afa37373443aa1b5fa0aa8649de283d0427caa00f92116d71afc6354786126556a50a5a9081cae1a47b458ed632bbe190121d625f80ff0a4d87e81a6bb4d0fa4409f30974c325ace8f27c3bfb6b455dadc4a741bc2101c06487e1553455c769068da9f705fad5e6e1a74cc1ede149d53240d936372abc91609ac44b692c3933e47d896f2e35ce23fb46c11b18472caa4f11e23f231be2cac9f60284f823c468633e91a4271c5105e728807ad16144d5cb3490ba4d850010d82c6cde6ab389d8d6ad5a5ecc79f4c8946b7f33f09694a868a7d600a83fc44865ae76de8c5f6eae10f9e29d41fbe75ce967d9e2594411ff1840301427632d4472f104876d8628553b299b43e26a2b49c30a00ebefa8ad7ad9879873f00041288fd4cc67cab2c86557eb86795d12581325cc6327cb60682855e6e7a06dda53909c0b58447f44fc80e1bfeed9b101c02846df956c0198222a8e5dad513fd49e82da7e717dc9be146b448a1c141e83cefbccfea15ad586cb9f15460ef13c41d70b1e3151bdb854436b763c860f87626209c62ccea946fb6dffe0a79a10c37aac09a571ed6a16ab6f25dbf280bd247e366e35fb143b75ab482f35d627631b671eaedebfcdec5944a327bdc99c65df8a750232f6a84cb313de49ede6abcf0f580b04b7e07466c8a2797d572897139b331aa3c283a5a9ce27066d78b52a5d3bbfe31d6f81529e3809c4bf1444320981c6e6c7940296c1ff92fdff759fa8d49442f4758f29d915eb409c5d53f1f3791ec4cb805d7d6e43322ee934c692b3d38f6ef6933f6ab67eb704f6345bec33ee632c5bed545fd7ff8610ffa9caa062c01eaa2b8a2950608259847e5e26f62758606073be9cfc65227af09b51880c8f1b72f5302fbd7b7b8d3fb772b4f5890dda8c80856b8e11862aa0f61997d7830ce851472e34094f7c6a1438fffe91ddfbe1c613464fed7a98e692c4dd4c58281a7a920c6191a37b98fcddc06147a6d8907b2911fe7c37133539e15d1500e82c41b9c8c4646a7ad967226a5507f0efbe956b03e0c39d8eec274af263ba22bb03f5de4b150681ccb30075c90743549588c78ca5b94dbe25d1d0650132114beb58381249b3389b6dc6f73e6ed1058829e500827715545ee2fee937877a5b00fc834cd1921cfa88b0d680c29f72fc0c839045f36166030d920ba610e8f3e112430cea74e061a7299dd929b70e702a4df82434ef6740f28475f25bf97415b5228d82eeaad8f0e889a7a8123287b111937507457d90615cc404e03f9aa6492a9f1a853637c7bd09136a351afd2095ea5c533d7a79e5a1c1075cdd55cb21e941f9d412b6499ec300d79275dcfe0338d231e5f3a0efeeea8a31168ed49e0db463dcaba806996ca78a7e0e1a4fa83249619c63ed1fe9be096c0c234d44146b475dea01cf557d5f4548db7329d00bbdc03fd2f52a34534c0f08e2d9caec0d7886fddc2d84a5682f48a4f252057bc1fc43abf04f73da8e1bff77cc5d0145355bdd81bff82ae193fceef126580b8b871271eb4cdea8d0a8ea333bfce7f3135180d65f33980ee2103d98872841b56ad5ee1f10aa30de0ed70009471f500a5bff81224a9af22cc2d3882be6525e3f013dcd73cb6168f2e54af4dd3e3d21ef96fa0935383947f9689b062d2f4fca6e9fc87d4df55d1b7755d78bea4c38bc5bfefa827cecc5b18b951d932f855791dc3a07078a093e9c109641cda8d5a7952ae7fe54b95adf46d2d3e8322efc6072d057fc5967841deb6746b5eb3dbb78944f652be4d6da704d832b356f1bafcd920b59393668ab50499de9cf4deb2bdb1aab0fd04b253aa6f0ab2817ebaec1b98db9d4e50f555d9249942cf53acd1605e5568394b29f519378fb92fb9cdbbb8b755f0ebb6af8e5757884b568f1bb1ef1a175f89ee9e87d9403c8bc9c42d0c4b9877a843b69d99adba28cee668c99c4ea6cab0774cd76a91e0b80d561dc426f628f94a60a582e17a8d0c53e6fe0367715471efe5bff963edfbff9d23874dc069750a1675ae861ef08e2ebb4dcc27ac79d093c1d5182a8b3f62badde575cdc1caa6931964643e27ac1528ed6663f34640816aee740b758aad8ef98a35e19b526b1fbf8e9ee6473db961a9b9ff7a8743cfda752cbda86df5bcedecab95c2075efbcd1fe15309af34ca0f9029297e131082d0de8147b9d7f2502385498b2c7e58778c1f929a7764066c6800d07ee778e3a13b2ab0239134c311d7e78a8b0ba93b61c72ed20533c4e035fa262c5c8f2693d7c25ed38dae42adb0d3756153c48b523a9d6510d3a42abb8801e612dc6b621b206b362bd0993122634012f480f48ca541a7e5f124bbfee669e71440bfe910859a93ed869a498c54abf4d0249d3c7d011fa273ae93f5c3e21f2ddbf477370a6bfcf9a42aeabfb4834c893483963d698a913e6aebcad26ee643a939e72949f29c692f2a6c102a51085bcb3131a7afb510e3bd8d4d754101c9811b56600c51c51a0dffe12671dab36af5024edbee2d9c9e65f0132d97b701e907fedff9200d1890d4b6809b314827f8a4a9525d2db1fcb00a59f7b5d3651bc6b58db9ac83b9b154410b7544d1e1488e1a9a744be224d66229e4257f917983b936340e3c78cde5c32eab0d9664a36ea649023fb1656a586eca32cc6c7e5f9470db7346451890b524c19c2886b3b220ec7e6bc582b0427554723bad48d53ec0f70acde980a6977b46bb9acd42d96d604ee7358d484ef6fa6dbd9fd37b32ef917db500753c4abd6c42f645c5e70a9627b7b0d8da7134691ab738f2dd098e384414e742cb9728634f5bd44a09b671a2d95459860aae7732064d5de3ccf2eddf725ca4739924d3495a4f603cdc4f8d10193c010e26640b1b3bddfaa81eeb5694d3e3aef600f04c37c1232c31ea82c75fb0eb29b0b7cdf81e1110c6478e347aa5bc689092edc088317409306d96e039c581926ab7d950e1b165e14d5082a12ee480040304f00ae0a711fff0f6cd59698e718d5b5845079192e65a5964825e8a5e889ad621e21f4677115b61c6951fe0107bb39815bf93d35686f930a91985ad75dbf64ee08652844654383755283e8c017f1102e85cf57565ff63b3237dd68d622a84e03e08e0c2aeb40cba0a371b078d93ea5bbe30c3ab193182c72dbdbef4e703282ecef133bd7adc1bd50cba1469ccbb175bbfb817a1a7a6b9e54989361d49a29e0410ac09deac582d8e8d451a5cbf457f1fb190b9b3a9c45d60f7b9824d42cb1a9f92d6185dffa63eec180a42fd5723cae2a61484237afe94025d75dbecf67e7de3cb6ef60a21c138a2885919aecc058d4381f9f2dd853b126ed9df5ca46cc9e9ac4ccca32a7d9b817fbab863b2eb407331f9a058bc2e8bcbd4a23179436ed7f96d6df4e438dacac64f81564fb3805fd8cbf6134d37e2e60375afcf3ba09d276c5f044045f32afff6d86c136ef86d37cee17a68d87c60179b2bad3b4d103c5cda0e1a066d30290cc74b76318233e0a93eb45ae80999ab92a3ea916d87d07e7b25a3fd11efa1237cb723e00d9c3684a6bff2d1a253f7f019f77e198826a19f0d7704108d837c89bfa4f3ba9996a39cbaba1a58e2ec054d8d0c01800f359a62a0475cde3acfd937bbaff9e7b529b1422650675aa78a530e46cff28c6149a8e001431d22a7039c557f9b1dd419aba43aca15609cc69ed349d2f091a9e198c1ef9d4108b244a5750eedd77a93f55eb82e78b4ac2e6dabaae3139eb65be0064f0f057e8944f4091e4bcffb61909b224c1b0c220592d7c429f6c795d8d93c10f0369e1ad18dcfb7668a5fdcf0057d6df2646436306f5a808d795994e58a507387bbd46cfb36bec4e720b2eb9480d9578b0ff0b9dd761de9bc941362a64c919bb4ed6da1408b3b28d9c9f2ce8dba847c60140cae5c7b5cef33eabee5c8edc6f00a88398b352e09cecf54ade881416499a22b8eeca336a7edfa7a9a08f2a7d59cab6c716dccc7a142f5d980fd3b14d12183ac8af79f68905dea2b245e23eb868bc7fc4a32a7618d75bd7ce2a950559f0b00d0265dd55fe58c22daf19a47bba29b5b468c7daafe7659eb4677b2e36ff7e98b8d9bf0ad2553bfca9edd0839b8b3831def12c635e550d179f487f1d79f075f44eb10196214d7a2860affad72e433b9554def64d8080742b4e6d802067c2f02d58cf052691189ab41f8557cec308fab9fe3fc22b0a9308a5b44a6437f467372238254bae169479543daf1902f71436b1d9ed887fece1d6aea35fe1510089052ddbc4773646f9b00a21e89862e80644346ebb44863de1406c61838612ffd78260dcb8fd8cc2f79f9d24c425338d4593dc8ab68d9d4865e61ed3289b9b31f72cea5862073bc7315b733a9a13e2a65ba9f47a93121d6491d18e9bb5882894b6f05b7262471bfe712cc08d04071c24280d7d1607f7bf3f1b6e108fb02e14d84c5743562678ca1045d5e137a8378cf6fe88fe145e3e7ee95359ee31da02506ab15825c8c66e8da5f6208486a55d847735e0d351e374a9f94646916fd132e72e4f994cbd57fa6bd0a3e3ef841cac5fa74ea264b290e6edaac22c7124936feff8752a4dedfa9701c8a5ff43aee9f1d230a30a54634f294b6678932a1b3581ba97241dc2062a7f2f2bcf68063fb3d3d3659bf7c166dfe1da7bf54353247c925578e961b3446175648bfefaa28a715d30be373c8771391c6d82d1ea3030ab5664f0335570478ef801090b14ffaef775198fa006ebef01b5f96097bc95f4f01d74cd69a195ea87f56d0dd6f232c7e00a91dcf0b39b29fe20f74e71613bd37a3696f5fa087e251d9ca590040e42286fd28bf62e7203ac087c9c0bb57e8f5d61320d5a9928b2ec4d5a254e39e5a456ec5c848f564f74ede28c7a3ad285329915a023486569be7f5de6b2bfb470db8505662e2e1c44c46ea81b37ec49bec570271045bbc306ab18e1274939bbe2bbcd2c3b5d5548637cf74aa692cb0f40701297caeab58acdd899a831e3b4f118aacedd22e2c2b498ae910fd8164ba2b8011ced0cc9c9727e7a3b42980aab4ab0c9a6b88d3244668db140e150193f8650c9259b87f0e10c8a1557a72671a3bdfb380ee2a64dcba12e7cd6943cda7b872b94389cfd625561d2702eb64265623690d11916b46c3b00034e0119e71de253402ba95952338243b848d24e04884744d6b24b667ce8e43a944cda1b0f1cdc02c89f2fcb2a60b43c18f7adf3f7b90dc80eec7b8977c0995a4be970d5e08eda7545fd8faee6a601d0ee7b6d3771d04fce7471975ac8049b4ce00c6ceb616cee6713d3d4a321e5532f7d554f5c60746a85f75e786d62aab7dbfce5bdda5925a17c5607f5967eabc23b483f3cf4c721876184e347e21358814c02a1dcf3b0d47a001d4011b22f6feb3362dfe50bd6518cfc10290ba4cd6e907958dfb36a323503e4eb872e913c3e5063a764217365c862a5a77c4663fae4873319523f9882bc437c9c67a15d7c19f0fb45dbf3e216e05d3741193c084a256aec795a680001737546d0b212256e8f89345f96be79179288c56e2b85456489afe2e3228c5b78f60935fc324fe11a1d49e16fbf436c3ba745d001c2c5e8819b64d220bb04192ade9fe0d47989ec78821e084a935c8b49128bb569eb218d207ed7d5e5ce68a17364bd54d793d29db620eb8819d57acfcf17ebc8d7bcb0e4568b9b3249f241de9029849095d7971c74a84d8446969baa9708b1b40af316fd8cd29127b8197ac91ceab6143f3267133f075780864a4f68371793646b526014f1daa8432bc5e937e4ee340625e9ae7640115614189588a04f6f9fdc19ab3a051ef62836b69d0586ea1188c71e42b901d59b1bfc4b30d5fd75cc5b7d8c62f79717b8be58b6daaa876e8fb098a20b26f19cd55e0ce7b90b26886c61e2555ca00379aeb7878dffc49fcac716d65b02f762d0f674f47ddebaccbe5165e2116eba1557825298f8be6e6744435c535912cdc99b17e8c421e8a34519af9e450b8cdf0ce9623501a8b0ead68c381f93d0c3c6cfcfe714f094c061dea84c8c4afe984866055cfcae7ef530fef01a138224a7a52c626889b4961878be12537df05c3145784939531562c1b1977daa8e663126bb2ec2fa87557d14e3fb4100347f80535f9f447db9118f0b7f0e982c718f97dbc604f2ddd3a9f9bd30308f554ac81aaf6f547ebca9cb910ab8dea81019debd497df72f6f4bec5e593be7f7634416937e7fb779f32b857bd5fb66b04c2be1111b2c6fa66c0fc8130fb4372d5972c06ac60d2d878c38043802335a1f77d2319ecbcd902af846e961c13fe8b581ab904a9fd90a470af8c38efe594415f4d7cb4afc772fb04a39f39fe093746355ca9fba436c50a09443142901b7389f37ea048e511a2375233e31b40f41b35d0197637f36bf9f374dde6df785e3caab3a1750b488f9dff841e0578b8c49a4682fd7947470d6cf0724dcf1da9b45e3fbc4a78470f5b85a4de21ff1872ac66d1be26ccab478f95d910f6217fdb5d7d9fe2b7546bb1fa01cf795cf4b0002c91321395c86fa97e3e8912cf45548020eb50a558ae8452c0d02c6ca4a073952d2ef266a14318cf20aed35c5bdcf974f51cf5084bd5e6107318934829f70aeaf8af4d8daed1503e231c787bb0040b75ae8da8a8f61578986fd07dd040db4aace4ea946c441c7e0e53c290996252fdd570de7faaffb767b63a867f026f61c45135f3845b49cac8a7a74c70c455b225b1d7966dc4938579d941e98db6468da91e2c09a41c08afe97ec3f90fdbe0bf8415063dc2102f01ec549daaf80f91e133846d4685e13028308e2074e9711b3adfd51f5752884144c100dad9b76ae43eb362e7326ab333ca296d504cc7cb59e3bf563f670bf793358bab6df78e1484815c85e91bac27c4d21d7b1b2fa478483dc01edbd6fce53eccc1a7f643e3d91b5bc0ec1bc0f2c7a504c20df01b50d3581530c3fca3c989f20ffbdb1ddf500c9092690d5261b706f2c02d4dd9663bc36be25395ab0fa7b9a7ff52034928d71c6a53118febe137e416143b67e6eba111c265420697796d5e15dec5ad0b334bfb4601257546f0a5fa8f3f8818f4eb85afa8ee1c9e912bbe04b95ab8fd4a1d89dcc3fdb4a1da5945641457ad4ce8c38c7a479d7924c59d1adb4b32e7dea0db4e900d02f1301e8e8965fb56c4423dba40c79347b644666020962beb28f35ff23cd9ea3668459ffafc3789626ffbf9293d76574110bc954bcc3ced0c9e998f8f1df4cfa1649e8579e3ce6915330cbb8f2b43627bcba62c1917c45235c815a5385bdbd91fd90a1b17d1fc47649388708c8a2af4b9ae7c69f2874593aeb89495117eb48566e439f11abd2048946f77ae09438dc95cb2d16cd8a0a017c815b708a20d71af486b6493019948b60e298499a3c17913b5353d5a8fc26f5acd488a7d0edf7ce841eada9b038a27ad2368eba0b804a7a020e14b858ca439cb740d9a322274e76102959aacfc5f0ca373d0a233645ec07809976a1295818ea5a01740b67fdd890f8e4ecc06c940d10433b8cf4f1ba210ac55f7156564e5461fb82b10f4508c0ee603d34b55ac671755d1291b94bba529d00124d48d54a9d273ae0da6277a0fbc5e78b6e0ca019d4ae6722abdc06903dda3a9f9b8f3ee706f2a3746c42d2715a8b7581092841dc1c58de9af7cc2de222a140ba958d18cdf778112ba2d2d5d79af162854c1aef2c5c1a39ac47639d734101f0af6c4cfb1592a555acf76b9ed422901cc6cd0df8f1f8a3ef754ab0855d145bbfdc376f6c7084a935b6e191244856b7bec5b316ad06b5d01c63f07c973b75785c74b977836a9d8e9d7176ad5c69953f55dc945dc7820bdeea69f47cb22fc46c684c161d3d36ea0c6942dbc93faf0a64086dc54340005242eaf027015543d54bc13abbbec51f5b47e9f16db40332bd39fb0f4dc2b079b8dd17a687993a37fe5e8f15fa81bdc714a9af80ddef99f65577c629c07f5887febfee652b991457e4dc0036fb195d2e53b6ba4cd503bd282384820731e28feaa93ee534bd4039ec32a26f15a974613b7fd70137f80d4a7e56b8bdfa5992a003a1c7ab0bf45a44dbaff9a1a61e99e9f0f65954ac38f840f4233a0baa4243f167d9bac54b6889132576ff2ab9fa39f2cecb68be571c363b6d46842b1920e59add1c740d0563bfc0c0744a6f2095f6d24d95e5ce447a460866524a8ab807505e8aaf95db01875a2291577137a0f594c9dda584af765016336e254c3560d854c80b7410adf120b34389aaeda9a504c7654786724cb1b2cc27677ab93c7f59ac649af1834cceb60ea81033ab43c11dae692d9631b5ccee4de86a35f8b9a9fcbc5ee4448c86e5b4a8935ffd19ea61243c2b48a61cdb1072d05603bde44788ae2200811131800edaa55e749f24f13ecb3a3962b429fcb8ae9fdb60adc0cb3c4ecb746ec6479c1ba99d616a0ddeedac876dead2c584101353f312b0d8ea10f0b6b37d07f1090cc30d4bdf5e2e36679923e6df087db05a7964ae7b21a55774933148003e799460fd70caab324a61f3b674ee43a55a9b9077f193d8e2b688f6ea938230c4d9ca3470f6a87351dd422005d76e72800dbbde607e4ccfdec5947546b8cf1310c8553980ba74924d6f87750299dd56c6785ec8da8f326a28ede3265523892488830aeb390d66f50b1d15f59000505ce9d30c36f2ab15a11314c3a9a9efc6b267ccd44075e7862037b09b2acbc6650fa4a815f34413544bd9789faaae0ee5eb80ed9ed6bc8f35d70ef85461262217352bded33ead7bad622762ef040058e2160c425c705eb1e97c9b6b048a3805ddb06987abe5fc7a5f5ad2272063d3db696012578a5916ef8380ea9350c5da7b61e340a65ada32524fcd9d684b7215cf8636106adca8114900b89254c8ac0b1745b3a144bee4e85157a6174129f6cf96c1bfcd4078826517010488738a7073b789a8a8d5e11c0aabe659f62f727d4a5d306f4a4172f45ad2791c09e50954da9eb9a01017e5b6c849d6035ec15607c84d38d66cc959c48b6b95992018fd2e1301fd076b17018c8f0daea4eefad1f3ebdbb2cee73667162316f62f4db2d00191b148fb81689616975e4085e37dff7dda2563f126620a60bcf0bbff00cfb9246763b322305966d948ca47bc8d2e2e81dea91d6d15af9550fbb972490c4dae700114314b4dfd7bba4eaaaa45031cc51b64c85997b07d5210f060b36b10e57ff97e37d63a439405bc0075498f78599da012a97de8a4d1c73d694d77c28c0f8751e7d223eec86ed50f50ad17a979192074d69e2f994b187d8c9853db0b8ee7416f98e45fe88d2303b354a656bedbc8646273357e7b33f199b62ac57899d565442046c255b596912a6686b21d242aaaa858bdbb197b8d176ec60694465b23994423fb29f94af331a5623c3c444d15643706e3bd0085cb8811cb5dca79434a17022b1a61aca2b27da0d20a64a1daeefe121e6c001e7b3bb388c73a5bc82e5f931aa89529d620ad3573b264e07dfb733cc7dd6a09c239cdf49d1120a3de1ca570fa9bfb8760f266e992a8211e27cdf3b32e1afbe6c4090d5913fe71ad51230104ee096f5080dec112a32287459c23f3b5257885488b3300d051a4640db217c08d8665f1b4adeaf3e11b82563a2257c6cfa694e96c71d6e70abe3b2b08cd886377760f24ec4b8c0daeb4c5905e14fdfa9ad37a9a46742029065bbd260ee23d37901269e13f80f1e5f390fb4bee6bb458af6d9761b9e6da0f8f66fb0364ab55791618faab639de2b09ef4d13420b0f7037f778f33e3d49b94a91883eb1c73bee6518e155f2343a902ac0c7b3d927bc461356ea383d35a835bba7779eee70b6ec977c7de5b48f974c655c85193ebd70e0ab69c033e5d100687f7334dd2ce2513a7c6a3b58b1d4e0a1a7a2714ef8b586337fe7a72f111b41d861487fe9fb14e1b418514b2a85d293c4ae8f36f75b22d7747b6130933d7b26db09753150803e3fb2613f58174127ff1a3c01bb5755c408c1f1405bf98a20969c0b185048c5487dc6a8a509e3481a5322e2c064a74b823044be76914033ca575e38d903417f39a500fe272c4566445b1cf72d8349e1a02764d4d1a0967ec5b00f38f03275762a3f1b93709876c0e4c597c173524f570582d1f6bfb9cca359aa95126594006992b0ca8ff02ab618db5437574299e91f2b002ed249753db1b0dd7bc6f23a3f6211f88b882bf7a938f322a444b91935eb6e957ee7f3aaad5bc6cab0e8deefd9410f6ecdaaf4385ac03325a4366406948143b459eb8d54f9f645b3b7b39a5ce677bd31032f1e02dfc71fef6d5d4bbb3701b8792114c5dfececa0c4844cda76bf06dabbc85509c37447799015851eac70edc3585682e635c0d0ad1f04ae79f6ab0202da6bf09dff99bf9c19af6bad7edc18d6ebcb30a880b7c22b7280e0a0e12727d267292b7f7d04448ca206aa64d4718bb873536d8f3636c9ed9003082ea1241446874be145b7e9dee50f015ae5f9acc76eaa34c7887b67e7e83b4f780663748daec46284980deb84afcd18199105b55cb9eb71c038c79f4eb27b71d880c0e73e07601d836947338667ed1fd2760fb12b5dc41acca3313a9b4aed4e404f118fd29f804fdffb7710f33bbee90b32179be5ded98d11e827c9f267c1ffe04759c98e13145ed3eaaa7408be4340dedb9bc18d06e3e779f24e5cf1f26fbb6c73ea582c8833f582ec82d3c38789f79a9604e966d31d6eca67e87845d142ec8c4ee2cc480c5a20a003f0c8290d6ea232ae06e9cd732b4522614071ae1e6c694591a1c21b2ecc3e1e45c443d3372818600cb11602ab47587c7682536e7e83ae3291cd34eaafca854f1c62cb71176d0a9bcc66df4e465a0be2b513ba958fa175de48441cb625ead171c2262e5ea8d32b36f1bb1e5b5b208bd08a4bead1dd14aeaf3f4b049837394418a1da41033df0547ecdaad1715482e02fff7c75aaa8d6ce2a3866ef2087ecf9abf8255d20a362b1905f624a3e2ef7a5a2b9810f7fb8e427720673a6fad7ce92e83a5a33fd31b8d8766ef06a974218fb6ba3938a226f858d786e79b767ee419f90d1d9f70d154d4b8717fbfa0494eef53c1a616ab64b9921ff4f2c0658b5498cbe703ac6262fcd05a08fd9c07f1919f714dcecde213e4ae2e7df2fee6dd0cf673f2c97e75e160627231ff8b0c415fc05d91246b6f39a82f9eb508e1683e6167a6c58fd65716f77d29f6c01ad85bb9a692f1ef4af6848e585118f673fa1de6544af3b4821dc74cb2dfa164253e28f98b1b763517fab6306a9fa614aafd30281a117a7a73fa47b95ef381bd5180db2805daecb297524128eb15cc66fe1d18a1a7c6edb14d4da6c81f91c040d3a6457d83a10f820d7f844b6f4a2eee69f3fcb24712d768e5b2ed4602f8d3fb6cc6383bfc8e87edc0d70c6598a0ba1aa7060608dbab4c5aecf83e2a4de57489dd98e6bf1feef7811c81dc166dbdf061b4b690fd32a9df3885b93fa5ce8cb7b8a6614fc22ab2de78564da55ae904eeecfb0a13beae680cd89f42b0c08a39b31f383efbf8138b2ced0276249c9ec38d45d211b88d9fbacd95a1f0af9b9fa1b4c11051889956e1e7ffddc98e280eff553e2d4ec813375dcbe7eb7c19ca03676c2d02dd86e0774fbfe4c01bdd29da9034e422dc0761c91215bf4793d98d76e8bc027d2d9e13c31e0b129fc06dcdd6d49ef659397fed958616bfcfe224c559df84568a92a80ec163a59e1108ec1b3dd03224d9857de955e42dca534d551311f8ff106c48a7eea9e165fadba7295509c83ee1487b52ebaa2fef89047da55e923e13abdf34a48859e2309881ed16ebdc093fc39a7985dea922b915929b5492135be978394c307a7615432a0afd9eb6639f9a300917964f0308c01d311ba39ab380c308ce0b141153221398440bcfcd2aa040dd76aae7cd630b11636b92ce51ed346c84533375b41bbc6a762947cf162353972a8a9254eb12eb23b45e939839f62b3f4980d9061ee2f80bfb9edc897d4575f9863245b459ca28a3caf07a2b165865a17c8f4bfd55053e68733bcce7a3369dcc0093dd3cafd329d99dd4e945c55f094a7034998600de2aaff26d12cc1452004696bb2b2f259fad1794c13dcda6c9dd311df018a69eb85bdc6e278543564da3952ce86a3e8905fecefc33ca5494957b7cdcacd7f220f80dea30c07ed01442ffbb809230ec17c591064f7847f44ad38c8c80a2facf18e3928324771a153572b35ba689aa5ebd7a0c24190310938130e76d29f4ec338679a7f115a9310081f3b648e965df3239704c639d030c6f3dbe17465d50a43786a492eb3f7d6bc8a5578d0fd5346bfa1423fe06c6b68c8c70197be1d06557e4eecca20576878031b5b15df716fa02bae3e9f46905d7a0eb05b000cb3a87a4de8f4df8d636db5a100e5e36d303b78dabcadeeca9fd70124237caa0d5389dd61edf03122a993808aff817c0b91b827b4b6086ac012597b64b37c4f76688fe977db2e494721df9e6eba765ca4d0c11edea74490cf12e81b68688d0ac2a0e9ef03e2a336c33f1e8873dfd73635e4c4a3c88a249b003e7b28251858dc2e61db414ba708419818ab18ab64085805e9886accf8f973e65786c9846f4df49d23b7fabfc144ab6b755083af52ae77e10ee31f806df82ffd86b064bc6ec7c6bf835c4d50092d45a7779660691a2e76c8015fe2aa1813162c8661f48c7e68ceb92d51855cf82ee401ac01d2317280baf3b2d392d9689de6c7b0f04f4685fedf27ad3e2c387f63022653080fbcf686898865f588291c132cdc284232d4b0c63a434260f7d873291d33fcdcd5ab29c200739843c287bfa263172235292aca28e7c9a880235de8ae30084a1cf82199bf7918acf23bb7c6bd432d9ec2155fe65c30cb03e5e5270ba2c7fc9c1cd4ee42cf030946c47065eb3a6dca9fd00b8b2ab3272b76b9c584b03d5cee245317a524d90209914986d56bcfab3e261093353da07e733a5dda58bd2478c1e3a28f33cb769c2c8073efc7d7fc0ad8a24a615fbc57d50c0e30d969976e9d527498f18bd248bb6049ad52f6cb8b69d4e505422c0f774c8b724188b61dda98d1cfbb0852f053049b9ed6d17d808771905161c7e5033c40dd7e3f8f93e6cffa33435ce358f9e8c7a314f638320021bf6317f602ed833ff58730c03b6c9c4ef22c342a82ad8ccf5a6d75377ba68c7c77e20c4f1fe54a90ddc1b4d3a49dcdfb7696979e831078157aae2d7b6224150cbcf954087569ecf5e81a1c739c3ba8be12864dd1eda3328a1877186c115f62376d980078a28b1dc2bb2d88f93da03045a70352769f55d9b003962fc7078677fe25aa60f744a728d05d51c954dfd77dba1d387bec0097cff365754fe20f1cfdbfd928a4fbf01caac06679585fc3a425f0ee9390a9009efe99a77ccbb35580f2a347459fe72f0a9baf5aa5549a2fb2758f1fe4b59ae4e563c7f67227500099148773187d14dd060e5cd912ed37dddc845cbe63eeda1c81cd2a8d50044ede5fff7a1164fd6fc6b93c4835321c24bdaab2eaa49fd836d84dddb8121cb3b10dd517d8aa02dcc9604bbd425c82146453064e9e1df75dff117ae7c4f16eff82b19653e52ccfe82419a785d53f509d38031bc58bbae39a232fc998dac1960ee5a60385009f0e9dec77e2d5a7d4c81435b73df6ffd89313f94846b7e2ff2fa0aee70e4cc489fd6a100b556903ae4e11e02d78f3c9d31f84e041d06435360404c956e91c55920454c87193959c2542d92b3053fb62fe0cc486deffd96c5d86e69940fc75f7bbe67324d149050bda7383b3a71b9e730496f2d80752f6c6fdd3d23df49173a6aea85f9502adab70b92b8d65de1c3d65f9483063ba519263a4a94a24b2d801208644a19edabd3c0810981a94b16822726496f13af129b9a6db27ce9daab5281786bc91f12547d1ccd4c2d99c80e4363bd692c4a1a527c0604e25d4ab5d1333b70be7879ed4daa89199cd059bfe386c9d518640090d343a657ba54ca6e8060eabcc3ed226d01d1367f81537ff3408175c2f6a95a69dd6b6a918300100b86992d0c87cd09ad270e4daca95b337b6134d3984b966b289125550da9e66c5790055f0e2e61e049a60ae1da1087a199d9e90c04dd7848136b4c97d9cb2e3fa473837ca555f34b128b452ad7e19a7dff3080489ffe466cc0be474d9cc6f4573af5d734f722831a4b061b5f30a3ea72be95beb50a3a455843d94d5bc80ee358a140b450d0229579dafa33674d6904618a67e0f8ec49836e70bd45d0ee332f61105b43991d0ead63a3da570feaa79e71bd69b9f53bcc87fe31351a6a7eb7986c0a72b03d72bc0ee22bf1c7d55c056379055951b58684ca87fd6ba7e2133d24ec6839cfa86a139ebb42f5aa52de1b4be78e7410112e5a378052c76a84ace8a0ba40fcbe90f06fe0d081bb83883ddf6f45d48b8811c2fb8e7aeb6d7dffb36f2fd85389e6e195bf5c5858561e53832d3aa7e46f5d041c9ef843ba48f3f76367c0ea6d1aa37a92f7bb968a53eeb6cb9f28d8195012c878fa7a7eb4a1f0d1e9d53bc65bc26fc35447f53469be541333dd6fc611b26e1f7dcf1ac9711060abfded12f1fdc4901577576472e48fc244f2f2c1f25bdf00e92cd80df18e01627996e6b23b1b776b50a1b4f1b2dd4e4124377c34385269fa2f3082711f8b0c8dbf60f95165c6ecaa63318adeb30acc00e20c7fd889f70fef093ad288db7f59201779d415146710bd19589a5838c4cbe6bd535c01e03115957208932a472428b5e5944503ef8e416b4112c93154d85a2958935af3578cf953db67cb582df73a6940547afb9b693b810555bc7d38629ba941252fb8217086a94e28cf55fcdfdc8351c22ba71bfbba18da3a9f20cdde148a8fef358848bde19b383c8ca6ebf1e4061186a48333035d880b53da40fc2f3eae96a599ec0681376dbcd1efd7307d85ce218b1108f0f531c86d1d62b28f4bc0561dd3ebc8654d5b28ad56192a59d5550e0f29ee95ad6dae6987d0276c242fd0aa2c144b84240d3e40e8170db3dd458dab022f89c06a57e90073061946ca3e659696ce1066ef46613b550a5a9300f4085647c8e97f99f53f635a866ad0025c3dcb4edb9a9f51d15e454c57243df3c55478ff3b3e464ad31bcd693ac72845063c8701f7ec4bd528219f93d2db15d883d12a06c237722840bf630b88d82139e2a3765749baa91231d199f95c78a60927992170dab48575dc3fffaaf4e7d191dacd421cb34b84d264a5cf0182790fcf5c5f531252b6cd8d341a0373dd016db058e893d452fd3552d55e22569108e83cf3aafae1975736f3d1f938566d80f3d4089ce655aaa87ceabd5574259668d39a0bf71a238675c5b3884d57929c3e932f8f4e21e3a52aacdffc32740ef2ad0a332b0dbb7196cdbc4b807899ca1b52249451ac5f419199f0401dff4d31ae214820a352a5c9e0e42f1b83bd71c09cf6b05d7d19e28900cc656dc720f85437e9e429c83b8ba05824e5dca22d37f4e263fe0d44f603f61af56ce746e4f8fac80c9119608152ce74bb38580b893ffdc7b2bb45a6f455091fb401e9229fae4acc1f0ce8b910262f088e7d6320aa7e4334705feddb22f01069bcc20918020f6b67b6d59beddd2a4edcefba908afb616ef90b4bd9f211e4722e0623d09e5136fe33c570a8f127b41fd814cca4dc05ec643d84365dac3688bb5556c303604816fcc956ffd2813cf7f19088726cdf396f5d68abc7d9bf4b4556bcb3eae268bd4617cbdeb26c2eaa426836614706f112308174931ed7b26eb68678064a0167472c4bc653a21cc38bbc4ec295110c19441fce6b5578e0865da9d0abbdc8819b81d364e1a165cef69aa1adc20dc0dcbe32aab559c1da3dffe433028fc2847945ada39d7e37bf4d8ae61d55352235d239881fb257457e0968c018e7d72be80d874911d4075a0bfe94ed9dcba4d99ae1331a4d101c3b44cb778e075223e42682a84f577d4039dd82227f9d7f1aa71bb1982205a5c0c0ab904d8c3e2eed1d4b5e850f3b632ea35eb2dfd8fdfa92727123f5df8e3e11ac557243997d9713fe060ac4ab4f1c91e10698c514d1b3a56e8e7c6fd5c8d47bf0026125ddf2127f216832badd4a0f0fbb3af166e64cee37bff51ea712702ef9db844d6aacc6f939c68db58b5e16fc4aee193a7886f2a5a994634ea0b409ee05974be4be5dda5ecc74f8541ff46d3c9763028c0617b6def6dec9e5bfcf75c7610dab9cac20c7c012d5907b049babb090a6e81d5c9690c71d3a4e8cbadb98cf8d1e32701f23bd256b1ef8e3d5b976da74faee4c0b47698b56e5689cffa430b94b89989c37fd9366dc9375d69962fd6824d88b3c3e556d54eef2a0ca3f4c8e7846c940c7500a624d7264ee6612f08bb2b2fef2fbc41b6d8f68c151ed03809335fc0182840b454f97f310f2d87a01ebc76adf181aaf0957700270d02ac4876836cbcb4fa062ed4b863dcc8d1ae5d6788b30af2a1d92b75fdd2e3c421594826fe5071e3c6e782d0bd8d11e5280170c5af26f6fa3401514533fc671d41faec85801a54b9e97e974d0691aeafc52348744c12e98cba849959b640561be19a1d695406442fda8e2fde7ae8cacc67280e7ee104b50eab01cabe16fd4c5d6bcd3271c5852d6ccac6e6043c66cf42d00a5b38bb44101b6de6702827f89d98ec55a419e3ffb936f8aa8be5cda143363497557c77d76144af157a5b074a3e67278eb8449418fdd78eee622b2a52fe006d47b07583f9f7c04355cd28b23b609728f977c80b0ff1503dff4e6416f3fd206704f3463a899f2e8a439948102760083fa0521c842a8591e3fc275e1a04d4d959b0060052128a39c9852bfe7e38baa4e8c778d1e0683c78aeb3f3efbc1640be6739d999faeceff70f545bdfa3920542085c55aff88ad7e92eb74fa63980023b40df7ae77dbc47ed712a7d18790240c81e153d214b78cf799a9d76ec67c43eb8e2fcf6598995c76de15a9d97f87eb510a552d03bf51476a2164c51fa9a7532c92aea11415de6dc4a126b2a362cf9f16ef60ce60e31088c3bd2efe48ae94c9f04b697c9c7e193368f354ac7f6b326bae08d85e8d3bcb9c125071a6a096b5cf159997f930d53dabc49ac5b189835499128cfacd9ad0bb89bcd33ebf6f6b6519bf9c2cc5d0511b6ef72ac35bd0959a5ca0143a250f3efc87ddd3e975c2d190b2f9ba194679f14eb9c16d5fa1070dd3b39e85a7bfb1125c41d834e9b276dda74e972951cc7d73312c6b32597d582729de020aafdc134dd4b153612a8848a19b4a759c56d798f5d60d4528cc12b6b6ce1799623b0e9cc51a34e4c79633af718b77fb037ae54b14d20959d7e4f7109b8c63e2d6278b39aae8d57353b3518522537a7e6ce2e5ce929dd7970441c37d8eaec739fbbc187b948feb2e0769cfc34644cf8f5602b17750ddbdd49236b0daf9b241623c246dba15ab9add8408e4c39df5d7acecdacb73bbcc777cf0dbe0140d94bc2becc1dee18281003cc6ce48ae8f4f66e64d2159ca58ca429d206449e53c76466f29f62cf16d119821df45ea0ac2f8d3c40af67cb1c8ca86786b2fc0e28a5b9f5d679762195121e536f4cddc2d7fe5e11223c5125787a92a24cfc7162f94f25b2f5f82bee90f17eadbc30e1d33b55644e4792342cd6eaf0ab5596dbe2f52c7ea7daba68af3ddd7abba1ae34c8ba83b166c201960d90f4fef9bea865d2ccf6452f95aaa3fc857726eef948093c90fcdd77626d6a4d84f0390ad7f57efe2b8578fdb4a543177abc985def1417f9a5a39cbfb2b33c97409ff2abbdbae153daf767f53c66aae2d85c0adbb21cb1752ba73395743e9dbeee99f68aaf601435997e4aaef20a29693d942a1ef0dfb709c685a4993b2b0335a52ec81af2855da49e0c6e639ce5b8801526fcffd800926c08029fc0fab8a0dc501e673c6f11d58b4e47c3eb79c4e4196881866674b66c8c5bc98fd21b2629db6334c25d55d716c532ce61c9f6bc7c87a2c70fe70bdeb49d8446ca02b28f5a381e6ce1c9aae3c2d8f994fc3613c83a5e9a6414705782dd3b5fa58c39f774649436713c4fdb938dfd03ddc541c00bdeb460a0c7d15afbfa61297f37d5b60cb13da92f778d177344e34151293cbea26ae4b589a8e549382359eeaad44cb1f817b8e2c659d1fb2be40179a417d923568b63f6d41c3459db592e99b29a2c825ed4cb395d7e81388dd2eb14b8f2afb9d2889655ab4b9b1fc4625be4c17403699039f475fd5326665dd6fa5dd438cd3cce8ee6b128a4add69d0563b8d8f4af0b0a0ec34294a2a9b47915cd21b04e2229fa1f3f0c72168370ddfeb1a7c817c7762598ecf02b3a4745bdfa02c2e278ea63df9766f0547ced7615cb321b54875ebab601235a285bbcef55ba634f7aab4e0b71dcc60d8281680b85b5d19871b064267308f1121df62c57e995967851db78fae3adf806ff65ab9b3e372420d7f18bd310278cc79610272edfedb68bfdd6ffb54b3db1ec06996a2c70408225bf59a455e6c33feb24664957b20be8641a6ee420eb9e2a1a5a6e3cb0eb9d9e7180cedd67740a081523367930d48b902a0624395328476178475475b78b78355cc25b4aec2cd49be14420eacdbabc5a38795fee1cc95d2529e167dc256cf6fb488d7139547487c58ebe08c2bae2e0dbcd7558c4b062b45c1251e30fe437eba1a0848634f62f1c2bd905e517ff05f9e13a9076c7d128030f42d638fc379f0f222f7804b2871a3b7d223ea3436859551e8b0f96087602d1991909cecbb60ac1466a0938f9b328f0e2944d9964ed93bfb592d081844f1fe997d82c45b7df9827895f8baa8183333cdcf9676deb7bd7dc7909d65e8cb8b5cc996d443cffb7190f1ede8f61889764ee03e3ccd9a3f56c509f11eb715f0108b468f258fc6a8a4ef27c845b11dcd3ba039787e52801148f8186afb2c10d9b1e79a5a19ff902b613492759507acd89fa7fae88f751b17cc3bebbb5a42fdb59d2fda5480e2443a3a708179995c50720685ee97af41ab010016dc0ed4e03172261b314461fdd376f526519ba8131bea6f65e797938ffed504a6e79a079adfb6e89cdf7d9d353277c5809b45bed1d1df725dac8b490c65ce7269f121d6b1e5bac67fa8adb84f21cda2832e66ba19bf7a012034e6d83046c6b86f59b8765e45aeaefb45645152cf23e041988e9e60204a49db59586f4b0406e0747cbbfa7aea09a100ff7654908f5f7979a0a7e1625a078eb04397cbfe68b070d79c336c0771e429c929c7108ed96f213e86915bcc97aeccb8bf55e630ee9b0272ad9c6ac8b3616c528cbffeb3162bc8ecbcfe9f1c351856a3a344b748da9234ee78021c7792926895be6de8324723229b7e40bf658461424731af01faead15d8b1e466e43ff7844e2fd9037d675e670c0129f4159c62c774e0c2800edac8135e1c28f9856db3912d63d3d42f57ad532024418016d74ae092103a6875d26b91d1ca257f830d2232eab60ee565896cdcf0842db46ffb417746cecae3a22180c9978527d8d5b5883f718b9ecfa54ccac05e599e1336dbe04efb2d5d35c4e0973a11aa9932f13f5cefe01ed1570025d3227a1f22052e5aeb5dc3232c8ced20e7a41cadd879aec81bbc014d9f669ae12f6ca0adac5ff7a4b2b4643f2c58b4975dc8f8acdbdcc655e3bc98137f4f1650a8294bc5a587beebc5c52617e90a106a43195398ee26fdcb9d88b5d3614e77c9a03f0c1b4db0c2389759a8591482be43dc840d01aec2fb269e5fc40ffb19fc4ffca68a0c4516c8972078324cb73a0884c5a8df3f8d1818181bc9404eaeb437047119b5f57c7b998c50ace56593321871fdf780e39af4b9baad9b0dec012f1c8c029b668f7c1ce6b5bfe738f31ab0b7c42cb10bf8ffe262309ba664cab887b34f44817ab13fcc81245ea753670c4f74d40448a75a5ebded131c9c6d2302f4c506d3428851b5ab9bdab8a6f9ba0bbb51090eba3f5f43873a64f1d210fe7a8e86342b2c4e0ec4747ece636ecf1ba11f8b2b9a7633aebb52a3f7fe45d33d1bd36defd6b72923561774f0505ca8aa455f8fdd4f5b0d29e654d8244800fe0fd4db1636b066ff23254c7b5b4768671eaef6d8d4858b1ea4fd2c8fd6a78cc6e642662a2ecad3c5d159b0652ee70d19ba583b658521944726c88155b92b5f5b96d6810875bafad0d509cc1bf2a1dc8512ab1eb36399e85df48e7332ec5a6b177e239e0f9de635f55f982b9c875fa36e89539aceeb817b7aa221b04d995e3126665a9cb0de387b316c2d39696cfd8c56b6abbd8a545f35e745a8405b0445335713b5f9423e0cb0056226c5b76b2e49c2af4ab800e54d14bacd84e9e56111ff110d834664a99bf62f85248bc02cf9015f6c3d1a2bb2e1cc0921333ab22561fe314943ba3d7e3b7ae1ed326a991500c33857c3cd1bd4aa0105a46c0104002664a3dae6a35b817dc5c073c6aefc9067a06f22971d54248af5ce9c36066a24df476577ad33704fc31422d9b311f472edae7b843e421c9c479fb6519183c918cf7443dce06e91899df8799c9a1c08d4da3cf98f69e43b34b031e516a69832b99e3bd5e53f779d83c1334ec66aec50e6fdf5e23d53091aa88fd646fd3a5c270f1b5fa61e18634b48cd0a85cee44c2292d8b912253adb590c32458cc2bf3d74e4a23b4d6ac0832a094ad443c7efc37d0ea9cad14574b3ae1810b5c0a8466cdf8629107bb4ec2cd7327900b513b02d872ba0daea3554d494c87d6978f77ace6c4892a87428a0c739c0a27d2c4a316ca49e43c05d2c2775b7d869f7ebb91463adea5fdb406a021bd2623e2aef462da757cdcaf2a625acc2e0c28bfd2f1cc02d93c298d9055df761250b179c1b751a79ae49da175beadb1ab1565d2e5596444b97ebc7d6a86e382816683d7e86b2e594f1a66f743687181898795a652015577526242902ae44f134857e71bf23a06338f4f9f7418c0c3d4fea6c6a3ee802b247ffbcc9cfcf572ba3a1edcfbfe30a4ae761a0ab938c797c12012756f492a5cf7e106803827f9e6135eecfcd4ff0796fbef3b8c44a0553b996a99de212ca48f26e529631ebb93f005cc688d4345b608313fd4056654874578a0092715e11f40f91890f0057cae569f102f266f71bdb86d9887ae8ebf8105a1cea012c842edf3834104e0238c7f2fd8b785cb7dabb78ef2bf02a8a20ff6d938db47afc1e7ae7bc5729121bf1c51d9f99f7472553a45838a15027b8f22d22cb28182054aade6fad2417ae44c035163b16a63f5ac25bb99415125f388905e07f905164005d850816033b1efbef171153301ecd6e6eb787d01135584b91847c3700f7aa6750ff0e64bac66918a722b6b09f3f39727db722ce4d7099b56438eeba5449462d0e25f725c18a7c9b495c8f4f9b93270a352210bb626f165d556493856e0ab6e5e57e176bf8bd23f69ce2fce1cddc32efd0bcb85301e25e67e5c61470f7f117a5523479755f22b8f024d61caa49278087c71a94a4eb6658f242534146a87151e156e846a2dc51adb38c746bd565ba7a26a297c0a71f517853184623a8d4dbae18dcefae3731e23c8c55e1e12c74ca4f1251862775a6a65d442ce68640f04ec474e15bd2fa00ff6b7012a1f4b77f310df394819290831f1c36a5795179f4cbd74515fd24469a0949cecdff26cff51d77759b81c0d64531841dda7b17a44a914c8bb2b134efb1a21b7e2a75ba6df7a0337015d789e69ba976ac0b94408c7d1485b518261df84c744d7bf60f02174b570c739c21e892b21ada4a7bbec47f52c68c23e3a9323e54bce4a68e1340e2dea1f528cc4e8cdfb790242f927b267d816c1c1b4537878bb42c899511fa023a88a1392532dea7442990af1c92d29ad6a0930bc130d81f31eb98c911b40985c36f5688ee6a4beeb8ea7b366398f12195aac9bb9719defd9809699650c244e517ac851785852b05fe77f7d33b21cfeb4749f1cd0c37fb2f584dc16d06220f879dbbd4fce477ed57f4ad10035f86a47fcd91b5868cc320b9748a38d34635a1d90cafff3d34fc628207b2bc9e193184806abfb4b2458b87bb39b2629770f3c4ce776fc1d441db331f45eba49297a29d0c973dec21381b1017ac9e6d612c3a7d2f0fd076258fdfd6c8f3527257a557654f9aa6143ae6e7b19635ffd1e11a1a98c8577c02efcd7bf5ace9ec03d53329724d0aaedc84351ea9edd1615f6af9608d3b94171e900054e1ec9eb18fa9f0e7ce1c4a13bd59191ebde70229f7f0516c1474aa92c3452cd52137fbd0688db23c69cc9316713ed1cc5005e1c4f263bb2b34d34f7d72b18fdaf3b5208536cdda23b4bc2791ff7863b46ca9e4a74f01bb1fa8ebd2da5fab3ffd9bbbfa60d5150f0b1327147566835d8847baed978b5a74ca3231857610823bc85681946a41a16b981c9225552f83a20150576e085c8ba7a57fc29a363c70f78c68ad7368e1c57e87b1b8b1be7b28d7c114bd4fa8136365eb2b2b77c48f352e7a52e70249ce364433f046035284572963327f143626145a05876cc3e6356c87eb9ef5c82f87bd4d21fecf62a1af835da681a126d1f04e9fa19cd1358341c897d2ec078a052604f35383ef3a46862e9523fbdd8503989ba4a3c940678ab674d4d0a5ed4aacf7b89f715cdd4dab39bbc13911b5e1d96e3495a95ae0d0d8124b16181d325d054ba4e34baf483d95bd34a02cf4cd83dd0baa779385e7eb6f921db3d731c18b5269efd46aaea8587ce73f0d4986fc6a2e0e484936d43fb35477cb63bef232b44ae7dfd627ad9cdef27d5a615c01d6116641bc51d8be416af9ecc6c8664eba15babc578ea9823f42bbe150992d9d304a3a98214b994912d6b0a873b6365e268d0446601e09fff82fa7e8be7fa4fa6104cf9f1ef9234611bc9ddbc4813adbe0a6420683aec0e09a0b27bac0adb22fdd30a4925659ccce463a595c1fc5f20172628a6e33a2d8f9fd0be6471ca8a4ccd98e06fe34c74b6eb9ec453159abaf8d441105acde99219acb322167a3d7951db4b439fcb90298f01868ac58410aff835ac3ad6ae7c43a77a63fc80da374008944d84559a72edddcfe7f34a89a92e17cf7c5657e84110c664c52dec76d62c0508e039a31ae3f29647e443fcbbacf0c8862030d0d104c167b095064a0854f513cfa53e7dcb2749fe7ecea3d29b42e927727d2b6b819b52cd1a78f0cb1e86b7743a7c4aa8b25bd3019596269d50e52a18c609a7c494bc2d7fe8bdea6d5aa046db4da5e9a8d6086467e3f99b84f664ed4890e26880a726c382d0f0df9e46d6f6c12d056c6f865c92f3f08ffba15e65c21e88e2859ebe0d7f11ce2cbfe8a55a1a389b05acc178be2c189650ad25a9ffce53f65dcfbe4653e5561959aa1ca0b96879d92ac2183f4cfc499c8e6b0e6587d5a9193e6d4a16dc113b7c31d5977dc31a025ee15c1f5916060b9f612e30de7e268c28e7a03502ff5bdb97002b3f04871841e251564527494b3dce8e146df0b644f006304fd74959cecd02fed17c39e0bcff41f35ab45b9ebfb1065d662bbb96f42542d019e97074e573aef524a1d23d825c089c0baf9858a06040d8a5cc8383e8078efae75f2da4bb5ca996282ee1517f5764818e376bd8a1ec00d9d4e3ac3563a1b813f5d9524f5b1843645acac874898fe3566c41378f819cfd6284604367503363750a82201c5d588843fef83901ca17b8169ded832c6d077a2f9ff7588d219c939efa47261ff6208c1bd3dd089f9c04dff2ccb7f50f53cc60b5f953fc7fb39c921770a52f8bdbb34e436c3dc0a50d257dd5d9a617bfa7219792e93592c5c4141f04b69213b3da41577a97915f5d53b0541ac701b2dbe8320e4d8aef6593fccae1dc417c7f83d4422660f1b0481c8fa78844907c9d0f786be8c3a7c5c4a330b91bc69d05d12e69fc37fbca59fa422da3b2325fcea04143f27900ccadeb311912b57a281e199fada5d8c6ff62fa5700649cb0bbe0495e50e375755c417571c9f4770f102e615cba91cf61ef5f9b9d55652c78c68568d8bfa93456272327542db4af05f9b8c4b393ca071d1677292c43478f67e988d7cd050aa0086f235da90d7ff69efeeb3c9f984d6ad3824cc3b13d6df683a51a1014be8cfa3302e978982993d3cde2be143d850b6b73cd12bcd9ee297ab49448cda8e2b67f8c40515f44a831d20d93807067f563bc523d5f81399dd5dbba603a1d44a0abc1a54f5ad20a190a41a3963e2a7bf5f3d35ece9caff1896fb079d7cfd23f4cddf262a1029717fade81daa78395e8571508b842b4c9af1cbeaaf9b5623daf19ea58c0a0920597126c57ff9aed9fa4f03377d8c9d449c6d36f4b903e6a52cb396730758d7b6be279a2bd80a3bf80f3220a52d321e24f0508723dbb5c9d66d9859d5794d84a9d544b53b9f0bab9f2ab046186eb04018df2e60a6df45d55fefc92714d3aeeef5b85de229b1ac535be8e7329cd566ff67bd8d7cd733ffe318588498cdd1d73a1fed1523f72e6c8dcce0239ba6f87002e06acf9b2ec96966f0534cd2ed71945e4b4d6804d69c2177f732ef9a6413ea874cf559cd404f997af1a2b4a47caaf5df1a927cf9ca3c73c58b96016c9cc2827dd8c023600688c6facbef38ea68541964201068183966b7fa4966ad74e52c09f955dabc800599979a04dfafbc58a9b0a6945df33abb44683974f5d4150713387778f7baf50cf53141f710815dc2df271679ff58cb1d8c1023a50bec40def6bd32e5feaffa4d16051483c6983c90930b9d60905bf5ce382ad6fc3731ac513e3681be4181c9e5f02deb14cec0a59a6205295751f6a42146c56d6594713134e158ea3895716a6d194249e3842ecfba590eb111c271c56bab1eedc3f07f1c413df91c63086d0cffecc62fec696132dfab4ac312730f8dd8307d2d5264290db32a691e22ec2dfcf1a268d03cf9c370d1dc2e7881a902e78f80d1a3139f07ef98d5c845161b3b6f9c73930b8fce65e4ebafdecd284955070fa945bf128baa25a4fae51a5b265220a06f60306bfe0f6ded008333ad5f9612031712655b3beadbf8305f3b5fb04387fe95b9b3b9869e500d597186e53f671a8b0ed0bdfb35a82fb4ed434dda91d77106398e1ca9ac060c4b17838ad01aafacc457312404b18b997c9bb7803747f881b3b83e230755333a76befd5ac7e16a9ebc2172d9c7b331cf06932430d60e1ba0fc2567d059d49e7f83643481bbc67f7592a1600d42ee1c55795e34b069350decec7a9bf2dd76708584f56bd85345065692904cf0cf280f9c716b27c45ed8c44dee8baf57839622dc9d7de26cf214aa5b3889ac3e113bc3357ce27fb7f30f9d1bb50fb85f188dbe47ae9fd8536f98d227b31e39481a29e5af162933b831219a3603d5d48a085c1b197c1b6a2ba03cd8df8494b60a7967712942378f5f3408710e6c8ca3fd5ad91cda3402126931d534e8ec8662b24035cd5c3a47deba380e25e05c1b5c2bbe1826a976e24625c722d6aa7b7487679b34cf60b5acfe443b18c6a58644c1f7a01225c4c98de88d6be84b4af4c6f86cdbfffb9249219508478a23607fd5e917779de64fc3f75a1aeaf31f01cc256762664f01cd066c93c66e2e08bb59669f1212057a49f9e324d6763de7ab81d0d684d41a45a60e02c2d711be7c66f8d712c9c3f4080391db67361d4d474c09e4cfb59a1936a9a877e66534acc1db9c08634dd295693e039e97a6c32a5fa0c4f52cfe53c7309f726699d73c6c553d1ee20da07b5dc0403dc38a26e08936c56254375f606c01bcd482620da55549ebd8bef8aaed43a7e79164643f4730bebdcdcbbf609d01f6d14c885936eab541c5a4a8ada7089a3f294afbf67d00e4a55dd513eea1f52205f2564b22b226af77cd5b2a8f14bf3e9c7215c1064434ed3b3e686d1ec629265282ac2e927c3ed4ca3c6dd63b2220a42489a3347a010b4a72cc7a39a9c9da640d465a2db04521888be35787d69fb59ecf3b5fbf563acf755ac9fabad93d5cd7bb23e0004cf855a900d878160df672001c8305a378b15a6c9a7ecfc7035e0dd78a16b3750463f862497b750f9bb8ed0d6e31f95866b8ce6435af30b998568da72a1145d2573d308cc47dccb743eb744c9a199e8814c0ffc1a7aed932aec96ea8007cf887fd4248bf69ba9991eb8f71f24decfd6a062be8028a6999b0d40789de01e2c39074e4ef052d3de99da76b0f94bcb81509a4a34fb4e9df435f892916930645dba35e8ca3022fa36a0c54da782c72b9ded1b31712abe62a2228ed8d395e71bf23b26e156df960d1d092f16cdcb54f9eca7cffb564a995fe045c671b4f235b1b87f1677b57556170184ec0641b862e8278bd2f6c978334fe7a88b9f3e8c19c8f60d9c1e6de61e1532d3ad0a4df386efb52911fdd32abd2dc946e4e523a4d1f9864614ea569455d3583b43cbd449e7c71b36e906fbf0fb78c42f392b0bcd41d615b598d966e277188fba43049064192e6b899fa383ae8d83cf3e9c9e387bac75b6cc261dc4e30d876d91b4eaed7e60dc5237527321d69518890ba8e7a32515a33acf390088171ccc14b001fd778df453978e0ecd12850050a6d3581df76f7adc0eb9101f892dd59b66ede0eb45b8301946bf97b175789466e4030fa92f132669a059aee20530f4ea98195e15d37fcdadb6ccd3c03202758b8c2b677f7e3ca444652d18c2fa2a4e4fbd269c79d7dc927fd83967a1ea18feecdeffce20d6342f45db525b4acbc752fb96190e3c7a8c178084dac1df90ae0b985871197ddc9e5cf0d1c465aac088b0b64d8b03c8239b92f749b52a359fa6a4217fc664cf6cbd020a52fa98b2f2af627b97c24b73ced25176defdb8ed4e47ab5d2f1c86853a23234efd0e9f68ac3612d95a73bc154e387b2710b8bf36542bf15001d4630ff0a7c1ba3177de17bc8c138ff067f8013832878e776715b9790e8e6819edccb2816001e311118408b813ca8c0f92785afee9f74e8a451579c65eff44baefe1c09189fce78e3e8d6b6fdd2de18d3c0553bbcd543842d9fbc6a7803b2b2d50b0eda8a8281cbd62a008ea577bcc6490029e81ab3a9eed69cbfd700687523db7fbf840b2c41f8452e99a5bfd70b610d76b07375518a8264026f9d1b48edaf7bc2de78095c19f4f2b9e2e35c90367ecb9605d7735fe62c220e6f685ca1f9e71d845cc47aaa4efd613117fbd124364cb7a13e3483d455142e2fc3b4f59bd09a500deaf9b945978cb4eefafef2adf36a52a43f690b87de1438df485779b4e8ec636974261bb7bf3a56c3f3b84a79ac2e76665f58751581df8fd7dfca3a7dec6380fe14e068ba1cbe4cd6fee1441fdc8328ceaf22603e0e90b79141236117e5e5abfaf601c5597468f5e36c9c31ac1169024c250c612bb35e4667c8c2da12ed2f9381b1c26db8ca171caf12fba7b9946b4cab98e919bf01781df594220adf3252d5be0435b7d426967bfed25cc32789cd97c63d387d0ef3d891deebb9028f5de14b994fd94004bbe27030a50b7f504e00cb61b34e70f976ac4d0e1079ddfa33dd02db731044cd8ddfc833a838e8165d8e4af6b790b4e288689dc2a5503be5889ee3ea21c0c2f4208498f89f12ca9ba82808bef77c4a8cb34f6b7840b2f5dd12bfecf878c49e0fee1d8e02192d0ced39c578447955a2e431f6c2b53332c8f0f7deec71d568e9d9ad92975e1a8c263cd33dcfce55d922cf4ad71034532a88ecd5116d53cd65ccbdabb1af0ac74dcb4cf7f4e49077e27daf7e864d6082a856ddcc50844b832ec30db348babf9bb3d937db025547b0d3dcf46b0d5af48f7c946e267b4a0a58083d5bf3184c012d5d9243aa1516efb00ca5128fde618ad6db0c732ad28c78faa202315a825d67bc6ff95a3874b8051e2a48c8d7cb3b54bce2a04705c8d36b45cb870f38f64876ffd718ffe80d9b2d0c8197acc023aa3460e56fd14c11a04bd8bf64de312d693ab7445e8abf137eaf5308608f1f6c8484de1afa9252c76f3fd00ee0d583115444edc6e9df0500d43cc35c541ecf6f16a6925a74b596215f52a841586ee6fe11f46e34d7f399f14bbe41a855262646bc317c48cca42388f997be123dab1d33a2899d032a07d0b42eb6e9dc6a6901f2ce1b061957977fd87d8195515bae24807cad9d5e6c64b52a1ac25fa98fa10cc701fbe0f0f50ba061ccd46ca0c0358a4811195dc292a9d434b2b5b3098ef7a9fbe121c6ff96702ced5d2da61a0e55374666a13723ce5bbd58033b0607053f9cf29ee39233f95ff8189996bb385ad8c6bd2121827cf51b312e0ff602a9868b989c7abcc4eee0492a2458e737a4bfbd924a39f862dd027484afef35d33ec55ddf0fc2eb73f562edd6d61ad9be58780fbc9e72ed330235da8dcffcff8f0831157cbfc89d814f1930224509e431b4533576fd080c44fc577e6281e24b18a19a646a1cab716e0b187bb67a7395261c6c5fd50897f32e044736722c2e065b4366466fac85b861ce4d4bf03b05266716c34200ae559f34152a1be47f85c878284978b1befa97249ea99e8c8fa4a1318a4614cfbf7ee68ea38020a0a4ab6def7d2fa1182a8abe8690a6c2634a7f90d99a399daba212c695fa43c5d9cc7b77bfed82425d8b1e8817dfe791efc15a2b306c9fd4fcef20c0c691189815cb55116f32f180ecdf8811b4915ea82fe4bdd14b1b2838d2fa0f2d7f2271b01478007b247a50b81cce37b6666dd7da7a4ac95cf20d685eab4dbdb80b34445de16ac288d97ce35241c8691aab6398e2743e9534f8a7a104fb88f2c34a0de8b7ff76e6c1d9000981ec4d8e5dbc6f90050e20c960879e1aeeb7a737e5a549025dc2160db39b2b68f654f6cd1a4c128eb55ade49adcbeeb733e28bc278ae0011b52cadad34c175c58e16119d2c54483c2c95fbe3a20c864892cf4723acc35e2be5fd358fd38cd3c8111a9956ed62c7a9cc1bd08c6b473b300d10b174db052b6258807b295cbc2af802a31c55cc20b1cd21517eaf6cace35b9000e5181628522192cf0ac3f9f3bcbb0d1371701e9e5a5df4331d952d312951843c3bb5ea3bff7fde960e3c36971f51ac9eca188755d9217e6b0a039d1f530cfb6a851cfe6c3212c8dd841cdc790d38bc6656fadb65363359de6200005cc53e9300eb0a607971b778a44a337968b90058452e42f60b95e36d7041585b8cbf46b4f3ab660db6701453387456dabc441dfe28c3d2a9e08b4c338927011f882e0207fc7840be4b04ae75adc777cc52060c0921cf30dcdba0995c0324c3f2c69907c6d01ef102f9d9ce49d762233def1fe5f022b9e1271c25036dfcbb189cd728b61b29824c1e53d7ed4f4b30b7ad19c7788148066e4883854cdee94594e830b8ccde5c9da105bbd38e056d070561483fcabc420fcbac31f32552d0b804f2314e964926e5c3c776f5b53290dc78d2b6dddcb8cd986481f5e9390e287f5b7d379de6b721109eab4cd822aca533876538369f325ec2b2ca36accdc69a3803eb3b47bb54e3b7a94ecd7b289e4a4e1d6a393436fe164068e134b3e1fb785d4b781433a73661b3e9e14629c738c6059c0ca337b4182d208b10ba28c9dbf79aa3bed84fa0703d0b0c9b074b598590ad533b11762e3ae886ad1506ef5a2e50c18e906081718e5f24ec0ce17b20388b56a10026726de0f904288ab3dbe4837e26013e9a03368f90767bf95c2624a011aae52aae4d06e08173e791a95c4b4ae0cba5fc33ec081e5fb2056310b49e6b74535e8cf9f8fa36b1eb47a806eb06d16a589246ed7214ab5e8d9140513a27f95890dabae551fb8ccdf1500e227c09c6fab61dbb51325eec3e26bc903a02b009f03fe6200814983521485918d8aea551ab1cc2123dc120d5607dbb783e7c4eaeb0987a32a39c5ba9c7626e637f1964f0b2faf490b0b33020573bf16197ae15ab6df148e0910d8010a57c1297087ed5ff8c21c7d999ae4152653051f1604912953b0143d66b8c4d24bdb7279292a11744075e9b39256b71cf4c6c148caf70f1f2a3c6eb1b7bbe340d2222dbe3e5d0e875cf41db907e1eb3d47e9b92ef8535f5873693046365d7a56c148823bd79835070ffccf2e8e4c5ba58562469275b2850b0133cdf614d501775c5afb9e0692bc16bca5cf7cb6e5686d88a636a10c3aaeb76899cc7d569dadff4161b2b44b205d968b3f5438bdfbc3e8877976d1eee672dac199d339cb227768e6c34fb0740e4e7ddd9052e5241bc9075066e5355ce524721e0d2e77aa5a2f64a839db2e9fd947bd289d6adb1631bc9581053fefccc165d47ebb965bfe2838768134315e99e46f0a80ff7851907832de26cb544e1b338df6d831f9bb5a6ca9c86d264ac57d338fa18063b92d91aecbdc537b02593a0053e770188c1175dadf67a3e9721c881bc60ca4b80868d409e4674e8fdf56495174346e2f7fb91c850981e0516b41ced3f40185728d03b35e591e3adad4173f653822946d34c292d20f5e692ff4bdc166cb577970270b60ccfb19bec7a8e682f46dc8d2b0fdb3991f6b532c95cf5d68f860012fc16d5e1644150e058eedf3bff85b2df98cbe7adb360c82f81a3b5cf33aa272946aa1e9f529bbae53d385791baab3e3a507b783fd77bea7bda68d9828e47daa2c70c0d3acf9a6fe882b76a197a69f3036994e37628509e2a3a435780b034fc052d6e8aed99599e05e8ca8a3d59e7edc38ee878c1f5f6caa2a0d2b049f704770062db304b75e7385abf8f5269d710c928d559ad4a559e2b4a1b056f1076c28f6614cdb4f577daa691cf1256f027d2a7fc21ce90fbc6cf33ab02c644a808b1b965107c7c13d8d8f77adc4faa9740dc95eb8dada0c66c067a9921bba997bd6c9301818a4e2672dbec8e00e6109eb4620bf396aa8061cd1f8520064a66f20549f591318ba8549811c4cdd1c7fe7b87a6ef5fd5d5c19165d4d924afffb189fd66fa7803ed1d4b15b808b42452a1e5ce275f654c0821cd4d3a446c2f8cfd9e64ca90226c1472570a11541cbe380d7894d4d94a2e469c0d4c99cbd8d1029a0fb62e2ace66d8cb17b2278a88ea8a544eaa94e3236050366bcaef5cd49c778b2e6f3b58d4c02d97dcef41a3f8e294b48ea4cdea9319b94a5b87116f1a9432347c5273bb45a4335c392f9f037aa89b50cbcddc9d607b1397c10e336d09e22c424afd38f6daf69f1b3699228480547fc63719410c27859d07d933491d4146dd2640aa981535a09bfd3e245dceb799bd7a62b5908054f6684b1c24e0e05f1e0e31b0737ddbbd4e36526b3c88de092980730ae114b7ba5492a6ffef2169b9cd6a5890d3a9551c10ba5d4fdf7aee184097a09c63f4dd62370c7393ac7bd722b85418c111b4284c3879380e6a660d23943810f534a0e5eb62785918d9fb317ed1536178a9e4d49ed5d2ac919a84a7b157de23abfe437b44440f3098389434317a5134320c2e7a487d8013c2ca3b811fd09bc7efd9580bdf71744499850e93ad2564a1e691fd7f2e5ddab3c766478fd6a423d3d2ebc45535e14de1fe6fe5d3d56fe589df83a8633e326b08728cbef93a03f30f7e82277f84eeed8ca15693ba42ab438cdba1a508f21b1abfa12d15c9c7385e0677358693909b7f430f988c179531a6e7e7e677bdad1fea8035529c8c638de7cf7f0a428c6a3e986a657a0f974691f36f6572327de134cadd2cda7c86e56f52890573dfef2077ff54af573a95abef6e7c52e4a9d735e7be7c0d418cee0d760c900026dbd44fa891d2e85dc69578c290266f63c68313b584f4751d0f7c4cbaf0b9a0d254f1c36b6f0129dbb2ac1003f4d4f4f80b4740f936e176d5affb129e9217017b13afc5f1befce48d3d83f66628556eab93af9d2e1317e904441d03b8b746e5a1c2dfb8f4e89cac369394cce8e1cf2631c76ea11561dd1d3be04af5da49f418e53d262bc097bc7c8919eeb6e0d475100f593ddcb2cb2d99c7dba58ec863f99e9b6e31e19ef2b4aa0716149f0c0a295ba739ff0124d1e702bed6bdf94aa3632e1da1730ec8213693218523ada1693a49bfeffa7608368efcfe34280226297f64c78ebf606d3e005647905c60be625ff2d880647aca6130169847fb3678b747246dd404417d26332c94f2b1aec3236ff1fb2566cd47c12317d5edbbe13b73d34148678dd0ceb711037d398cb9abe0c3805f67503c9cc3e8e6e5d731a74bc3397b78237d6f955dc81a192b826b93a1bbd4589fd96128edbc3aa19f0f2279192e2d0893fc1663649fe5a4c282328cbc86ebb2fe03ed2a481894292782eafc83eb6011b101e0a9cd76b01cee931b0e9efa9cf58c7c8f2c0906527df1e7fc4c970937d5e43d4db6333e8ff3427f10df4453bb170caa39c26b4b1acbc92f07976138a5e741bf7e138fba4750e521acee639e4c78540a93589d8d53f2d98d8f0ff88e5874d1c3e52dac9c09eadc12378c857d735ba769e664f5597dfc85c3b8b4810e9851491ad3c8684d5b699846c51a92caeba61fa2a70dce284b0bf6cb0785f74b1cf12ddfb4464e6613073e8841b7142042850b8605a2f3e4ef3a4454889f99ce6e754d245fdec4041742fa34ff3ba1012e90ee5809b70f97caa977ed077911d3112ab6d56b84eec701adf074e1b6576d852bea25b6a817eb6c3ad3863d15cf72963470df5f544a5534febd462f443d714e8d30e9b47485a391a4702d12191631644042220c232af875e059c7da6c14b0d073b01562e763b83f2441eb05405e3159899494a6ba6992b4de0b563a8446cfdf4eabe905b992ed772f0c3af087cc4b2a850a35fc027972fd95647a7cd6c5198e351cd1fed8c10bb7f03e0af98804a109f40bdeaa86604a9114c7bc6a1ec8f079caa6d3296f3329aab19a84e6af1fdc2d2fd967801c5b41a78eeb45ed75c5137a563e8039c832db8c1c19b465d1ef06fba294b5c3ea290268db63feeab02e85339627b9f250b469584e4ffaafd7bb5b249b4f076e0f99ed52c8578d37f0449abf1afdb2bc663cc177e8c9ab1b7a1adf522a8602093d577915cabdf6edd05050497a3637f7042da7a9aeef44cbe1566950defcd256cf9b84995abe7a161eb32c2db9e033d33729e490ba86703afaeb38e3ed14c0de7de2b87403aac8c583448a36e356cd0e028ce0f23ee28cf935d03e58e150536df36c7eea4d0a7191cd500e9aa4c3e7d21aa01573131414629ace92f153b5ce6ea4dd7bd83f949a755992799c054104c864501272ccdfd636ecb6170f2109c59fa523fcced8485d55f392c20e8c3af8b500c86a78a82cd6c0a800c9bd582032dbc23f54ed9ef5916cac3f5778bb8c57d523f3164188a78aa78ff038414d91e7b69b8107910915733290c99b6fcef561b3466dc748dd0f3d1e9417d49675db62d190948c5d578a3f980d2c1f868d94c1a52346aa23b976dbf0e79717b203b3090b4699f6a76eb12db20adc0fd498058aff74e4f35a81f28457cb48e59d950a750f04278b2db19327b19294431eddc3bbed3bff235705b10b3948811f07d03badee543e789e9516a41d773356915cc6fdf348e355f0561a1a8222cd00cd623ba6868607f6473dcbc7c0c1a94dc58829edba05728a5aaf5ceb2c3f11dd4df98a402dfd54864ce0ccb835be3472140feb06c600688d4d213ebdea2358baa22b74a280a19a5782ea72241fbe5cf3d2338809920a48bb3896494ec1c6b5f9eb071454609e6936a5887bcc5e2c90830a70611deb889fc0e4e84b78e649de3b066112480823c8be1462713283f4208fe61ffc4f99a2ade0a0d96a2866e8b2138fb4f086c0a01c555a97f7c69cbae6e6aeb499dbaf0b7c09328d47ae12973737c801e1e3538159492cf83344e0f1aa2179de3c3d73529744f1a4a91c1a0230b2b01c2b692aa4272b96be075eb71fec81188ea919ed08779608b340e5527599da483fcbaf13b466cb2e4b92ae1583fb02b3c11eb95e18ae421f5708182865a9b01c49e922aa7183bb0b2a9950b76dc170a8388f79130414195eafbe0fc698fd8221c9329fc6dcf2f529f19eeb0bbb87ac371a07f99fa7700ead7d8589b67c51aa10632ec1d0106e1117568222899d31deb11ef6c32fdc74cea2cdf546756ac4f3780c2c7ba4eead42c4fa80612c42cf8acdc4ffcf2f15c5970635feea7c7d7b5638ff094d2e7153f2edb5a4991cd8164dd18a4cc60d097709e885fae7b7c511c30749d5abd882f9f97e7e237323e1761427ab5d28d7512fd05ede83a7182269fe2879784b1c3080bc85b03764098002beac529c98b4abba9dbc8ec98b20821a6774f2ba27b9453e85ca87b813dc2ebdc4aacc74a3bddcad623a85cfd097494782a3b2e90c2523f230a0cba5c58119f80a2f06c96496d42ea6eb6545cabed8ef78d9c232aedb29ca05c7b132112b73e16bd5157bf7d3be1b618a33279c7a6c9ab8ee4e3be08c9e74caf724cf2092eadc3f78e893fd015b70e54814f57bd3cd738420dc0a7db3ae4174c703d131e2300cd68bb9910fe56040fc3ec8398583c66b475d9f13887c1fe3aed4f44c3837b7b6e6ef1ed4d36e7ec26b0a5d977140aaff19ac6e869f8e9965b0b029046f29876918843fd820bab2e7fad7640e1d17fb2db0fbc9e66b830fc5471a4e270dd0b9191a4fc60800a0a49d0d7914d5df1890570c0feca19e47d65b5e9ea1e2d05185d215c15f0071cf933527cac574c6cf5b89050d6d8949b511a94442bffff0ac2fdda29cdf63dbfed58a17df72555cacd5b67197e7807cca4782bf16b925d9761e198cbb3d1a5f37241cdb2414bf379210529a0b0a4e37babdb60413c1e57a490da8f1cf676b950b4d6389f9455b1acbc12fdc1b0766f7936c47288b3a6c80e5b2be8a9a3e1471fbe8f2c137b51c29c381c70b3a82e7aba488851baebac8568b5e8e309acddbd4c33b83f97525929dc1f31095e024e98003f55b422ac06da9f4d55758cad35272b36d5a3fd6fa251ce114874147194cad7a1fb9a41ce45b35f8a16918fe07d2e67d651cc5ef538f08f571b892f16442544f36c710ee19dff5f6c9f2dce3b1303fa85e49d4786a040c6a589d9dca1db3e0ea7c0d7a075697aacbd551d65fe9adb87b26e8df37695baf4339f5db083ed420b929dfc5d2c6a7182263995e5da5e9e9028b46f82afc478a17dab2abcc2efae1d343877abc63ab396d2487a2017e7c25bdd936f15cbc97447af8468fc6b7527f2a63de97c151f0ecc6db5712765303180f9355b7a5c43ebba1f9d3f8812f28a80ed8c7af2636b025ccbb63f78044aa816c6852621f13ba8dcd23cee6ce9a44a8fd7c05be74a3cc5980ab799d13ea3ddb47c253660d97020801ad84e13252559db710141cf34928567ff66e0e5d49274447552fde79c7b06b0ee4ec81a9b8fcd3ac3c1577b1ceb1fe97678be314983fd723c400aea84f5e4ead92dd4f29787dcd3533d9ab98c3d66f04f36b40200a20e6983c35bb23a77eee6e04c098e98a14b84a285e2217d9696d7300f3aaffd196468116a11a5cd2af99040d9adf709c97db0fad08b99666f38a92cf0a2e7e11a36a1340810afff60a4cb8b360be372c2f6b7725f864e22371183783ea4d7193eb92c9a72ed64da7923ddbdc99d4211fcf877d324555c0205d46e6b9490b1356fc7231d1f0344f1108c79c52ff287b9db41d8f23e662ebf2ac4ca312d097a1150eeb4d641a40469f3f7ca131d43a254233aa5d5d256d8ff871f191e4ec55ac74fa8ba26205a25c3af616e138c788435959382f9d184f731d2c975512e9e9e251686bb9a1c6384f8870fd2c6234440a88ac846e85c3d8fafa8fc54c37c7acca8d25d7e878c9ddd5607170c9243ab5f27a7c3d4d035b27ba5a66c9e09dc6e3931bc5ae16f02c27ec415c586cf554bde71399c8b8dc7f2b8fee1b257b14fe156a35c2865e8387ab55bb4d679cc7558b67fbd259d2225dff0042034679dd74d8561e8777cc38ff0fafd45c05ea35444468a60d3f352ef2c53bfd7899c2aad729977a972c4e4bb2dc6ad57bc6e260e6c898ffb0d7abd6059d4e904146e6e73000a4e91301c0ce9ab7fc24a7236ceac7112a339da2df1352fd299e72fba2a46c0ae76fc6af7d446ea3c06dd4174e9289d80db4fb0b79fe5ab254c18cf232f0ca1f6aefb110b1bd089cfe9c25ce2c99f0c9ac5dc0cbceaa99c2dfcca80f60a7c464e8599d377aeeb7345efdf40d31407fea6a2f50419e3fc792da40cdffeef3cc8692ab01cacbee165ffed4cf233333ba94df43da81c01cf7089d67bc2963674b1b012b9dfbf4254a272fa9469ed69a1478a190fd7cc082064e3e0870cd7a5983a8fd677fc70e9abd9ec25352e8e266f56c1e3b118d8eb49834092063f17320d3d51cd3166d9e0206c52e9d3b1517db49ba67a6f946dd8cf2d30b5be000f43b3f9b11e983c1b9fd18e4fc8ec8befe1a402bf512f37da20ccd85b74f0757f3589148f3981a13a7800c16bad0cdb839ca96e3e20d7a81a6527d71add535595f13f120ee8712fb4d0ec58c58e68b3bcaa6f8f03ae2c2fe1c4e0e758498d884670ad7823e995425e544cac4dd495dd7543623e03596315664ee83a29023b4d8a023b95eb6558bbe0bfc06b8bf46978adc1fe046a4486461c9fa70b74e632e4a59bf42de3b7f56af8e9322f7aa462bca93887b78d86bd46a0babd8ed4b8801e647e1bfb2d129a817d57f6a2ce0ce960dfd721cef1e725b02da17d0d7a9c750501191a3fa2991fbcdc91bdcf0fc8c912820be7820d8fb60f2b9f5dee464b1c84e1204b603f505c564913bc723c4e09e311da5b2e5f99a31a2412e53658eaac796b1a2fd8499c454ebcaffa1de1b79963bfcb141f7da53a3c5402279a486d84d27668d591aa0bec1d42fac9463b14da872e57abd4845c1f1df08f5a8f1dba141f1c6e00073a3aa3dcd2383eb0d82efac5e21b6cc7d3da175cb6e1b96880775fdc2e7e44ea33ad535836462a2f7ea57be2f0befec8e381783136339f475a83d9a07532f5128b70746e1bc4106cfa60884976093f071df3ccdd79794ec61612386b5997eb236454bef75be15712a3b3296adeed62c136fde525c0ce6b90db11a7fc9e6fc1ab6f23ee49b2d3cb39fa58df38e730e4b93fe5ddebee22863d50a6a3f5695a44de35fe10257a096cff01ca6d6a06c65e97c26361b520d7fe37d3c77caa4d2820864f12182221e055727708eaedc97f743a48f7295786a46f366b7ce1b793ff350f91859f5406962e5bc38392be8ec16e861fe41b907c74830f6fac5cb5c827fc6bf3608efa370c3245a0130d8ee1d3e3bc147b4a605ca278f3878cafc7627079c4026c9b5ef340ab4f4994a78d09ef66d4b0af463bff21c6b4eed5c6dd93bc8a72ee6697410f01fb96365994bcc00062361f5a7fba090e6bb2a02838abfe3a3c5a67b326ef38103441f8b9f7e53ae5275b7304876f220a3a7c2cb3e7cd51b82e2a4f5500847e3866bd144521d458ec6b69650f0971942e42191d61ab9b15564b7c4617687148556463ab2456ca353a2f65a19ff995be355b53eb056761debd48cf257eb3a86ab18270d370298039b75d624fb852e659d50a6b7fb9634d90e1095286bec31609126631d0b84833d74aac85a5637d7e1bee4d8ae9486bbe78676227d760384922abd3fb9b0b95d8fedeea082fad833c2fe85803b8e6850f3e6588e1f918f3d8ee6eaa064075fd9b34947ce71676796a8c132eabc83752e58d25994559f8a7b3263e5f0dcd6f74aa877bd13932616ee4acff7fbbebdd7138ce31ca8a1775d926f9a57f97f5e1ed891d35ec4cb4f43a4b2b23205451cba3874bcbc82978243e52489962a63104da6a14d85cf3f75584e75e74e75457d6409437bc8bc64f768d87393d606691f3f269385b0b2e3a50bd56fb8fc1743d29ec8f548e0ef9b2638112162e716e18a6e6278e7f22549d3620477af0903972bab48ede3bdb481301e9d2bb9ee930b3e57bd47daa6e24adbc0bf15147c857caeeaad7f4b32df9dc807d3cb371fa41f9e0fce575e63292483f0cbb48f2e6f23df41da76520a3e6a10fa689a9618062216c2b5f52647226efa345d37b5635652311b0c9bf340cdeb92a96d97a053dfa38791d641220775bdd8421a7bce53eec8ea9377cc436a39ca51ad5d719ffd74b3551b35152ee769713df8ce17530962dcf98132036519361d2b6aeef2f27c084a7ad49f0951108e6dd3e461d4f5e29553af4d063c0dda54589bba671a45cfb1d21eb5401b79ad9bada0cf355ba519a3655643399900f0e5fcb31f0e965ad7a1f72d8ea9aba50047f019332287f33f7958f1b45e274cebe97b3e1e89379b356f582d28855d281774bf21e7d74f71c2204b673fca924d38d2c6f92a96bc53f69e98caf392b24a27175b32431894c604427ab4ce37505e03bbc249e3ae0b62411816a956deaddfe6b2e1054b3d8d10b78b4879bf6fcb2704a80beee2857cefdd24692e998d49a007159a6ed94a74c4d53eb2b6c50e5c557e47230e082874195098f2f2100e62f22c40178d745cb75db7c42003ae7edb2f1970087345b544834fce602bb3b1a0032aa6a904f346bdd110b72a9e451f448cc91dc9dc5ae0733f25d5b1065270bb4f401bc321ae38dad78b6d260e524ef6d868e3cac20fef058ec810bd5324947225ffc6aa648479cc8c4f8c0505d36c65e3c997237c5924dbbb1ffe64fb316810d05813141f4ba6950ee614254110a938f5bb0e963a34ead652b2431b45da1631fa77b14dccbcfab442d0af96665746ad4b640713fae1b4c1cf290e67183545f3e15aa41956d7135054b04be3c0a71e1ebad6dcd0732d6c1118eb0c719334d93890e6d2538fddca93fbe938da85ab1c50028bacb9ef23783be162c9714643c1e60950920a507166c7ca285913717d40763431a9c8c7eeae0b6773820b1a7618ad42dd1a011aec789a73cb84b7c6aebc521a5c5569fa191b24b04303fc8ec4b91add984916616a8e148819965c0ba9454b44cc924b291b2b21b322d7e9d9d06ae4d6bb6e7719382ecde8a86c0efd8ca1c3baeec80d55c981857a7d18ed6607f2c1c2f19e358a07fa71784c76dccf6ac13ba01beeb6644fd9153a808c8d13ffc562d7780eaecc506a46b4ea777f9a3d15f363d14b834912051ca3b1043553c27d2bbdd901a947623a311a33a1ac7c70fafd395a921fe0c1762a720d8d0db710594050512114e51e5d7ea21c98049e50cff1eda479ad46eb8bb9fd1ed414b08b5f96c7a1ad95d02011a100b0acac6cdba7e36a9774747a812bcf1b988590ed46446530579d39148eebdd2a500794e1c5e74a91c7ad0b54587b7caa41fa7d7a021dd6663acd62ce11f6e26e44053e0b8b82b05b7860a4b04677e864a349e60d77ce7fcd657b116a7403be236a182271c47ce168a9e3563ef201189e8575b06756a4b7af9b9bbc1238b468d9b8341026e0e3f5afe8f6b34bdef815f595b9a3afdb0f21e48f2fc0a363c6ee8fd43594d22ffefabe43b7fbd28d997b0d364a56a13b11d456f8f460e69e94ee725092bab8caf0d8efd8d576b7a81b0d1f4e5df5820f43f3e29da675965b154fce31abf32c49723b63e0c8104d4c7d2a943cddb62c682a4262731a759808756b295ce97e802f3971775ceb4718338d543e072b73457f596971a486cad91a50bd58fc10506481d7fcc29557803e29f814a2a1ed1cce7e9622e3b21047690fb69f9da8becf5d5b3a6422cc41980983dac03cd13f5ad40938bdde37fa035d810bd2187ba9c68bd56a48c105950f8bc6cdca1aa91dda5a797386df7f8fea8823dd55d233263e5eb25f62f4d8f9f96d09cdc32023db4bc7ca656c990b0bc3b81eac461abdb3a057193f4b7808342a5f5f3855d9769cdb5bbc221a2d32fbd7c65ad014787fce1196c88d8b9d570d496ac109931a8c9378a24af0e6d316d9b661e3f7470cf3019716138e3f751d0d7853e59398cc1db1a0324ea7777562926218bd8e0db97756fedc5531a9a1c4b08c528e82ff7596e0a2c9ee89e4d71eb6452421617499b2e42c3fda6a05c78eadc76d756f1fcf56e3c00bea6137ab50cc98dbf222704e32956d3d09f98b67be0d01d2d9fe113bd08b162188bfad989adf4c5a70d683c6e7864603e1038a586c7bc4dab374ea36b57746df5674c49cecdb2bd6f3a8d3089280e2a4567136628f3e15b5b7fbd87672d25a046aadad186f3c6f80ee33e2b69c7a7452711f47347e7ddb769dfc5f11dea9a10c673834abd31112954e5814b92fa090e4942f1cae0fd9a78ce05d748937a7b27692c24f3c7e79d40b61e364e8ec2b8a3c06ed1d2b863f25e8f0740b46322af76247b6bd31337d7632b9e2971d4ebf9a3326f86886d87dbcc7bf545c9c71d95d4cf62e516511f2213b7a77eacebeb1a69ce642321769a15bf8bd8c95223be738ebd462d0983b58ca687ee1e610a16321ae7550cd68cf4faee4f0a4f8f89e0087df9cab0b821e5b428579a2c1845560e8a5f201e49041937b6779efa3795f6312ac6b9ae686b6324899404194cd974c16b90768451fb65323d39c7efde5ca9a000baed1e9148298e7c0186b4424515a4798dece69a76c4d86b93f52aa0ef17cc7a32fb42615626ce06604c1b95138a28e125d9cefe8a65d0b82b4e52892029eec3f5e9eb9e8030278ddad126799b329d430c8fd338856ce0afc0e3e5033df174c921ee60f39f78a84547811f50304224fd53657ff1e6353da9edeb4b67ff299e14e7de5a6dde8ba33d0e51abeed435defdc8f759052c1b48cb91e4a8165661da506bfe0ac8479142529d50107d81e2d5b54a20f6fa00b49b67ecb0d5c5f53f69e6ecbcf95c1c06e2bf380d06c9653fa0e4cbff55e4f7556f90cdc1d8889271da556be1c18dee73aa7cf3b86feb78c626551d7b4441cae174f5fb841ff04f9cef12361af37c54fce44fed8db69a5b7563d3e4261a285d4f820eefacef46bdc0950a29c28424d151a1a7322788342d3ed6659338037ef690d4669744c3b37a07517f6b76866ec78a164dc150a109b1243a5e6dd3c2d9c1f8a65ee58c1b15e1bed59e74a03e7b1af4ac5faed311ce198739a48a43bbbbad1c19fd2fe381801672c64c6a01a1010e6e48bc696a4379da0e77a17ee594f88604a5c6acf45e4bb308a0311d843037c5e5e38dfc086f2bb312ae2a2b219e5fce883086fccb4d42b42fb5bf358e2acdebe80314308274660395af2536ff767a942ca4f2b2340dba15df344e211d8ce3d372dff8233c02ae9ab677c3e5238f1f278d8913d42e441c4a527982b51d2874f7051e304ddcf90ddcc4959431859c4a084f22f3b1d0f6aa1e3ccaa38c499df6bec1b26c8c31100da4dd82020fed1acf612a8d8159175452eabba10ec9b8c665d8d62ae51d5b143946f8e227df4ab17bebc39adddb99f614fcfc2b14c592299d462eabb2df6e127c4c7d81da91e5aae01bd39a9e1e2362b006866155bd89c381c6b9db6b5beec77bbe37c3d3f70e923221fce0b5052170852a62255fa32f884f4f05d11c8ecdac4d015c286d47e0b0ed5047d9a9c3f477ea61b58b9795a7c02a22abd138c6f2be3fe1b248929768726ed778d656bfc0d5211d9527ada660c57a8421adc58486617e7dd22178e86c6fbee83c05171dce950b5e4b5d5900bd85b2aa0446403db76b13ef896638433c22df4478cf0155f2967eca1eff19abaafff2ce146b44edf66f24246c4b13c3892fee46757aae077f9b932e0cc492e5373635075acbe01139c98d825899bbe7e96786fe66750cb8462639c8bddc8ca445f41ab29a214f5d0ff379dcb8e1b44cae1f6e9540b389211a52cc2cbfbda37bfeb88020f605de4561a9f3e582c8dc72fef971d2b72560ab37c0e182c213c7e3f861e77609ec02b35664b710e1169dce107bcfc9dbe09042a62c481cef1a193d59f20f81fb7efa110a9eae1d13b6464082784a770ee8ea7f20b6bbbf20c122a6a2bc1c6a37be959fc88ef0fe8c4daacd6459b2ff7947b5af6caee3372e528b0c85b9f8f92447fb477a14740d8008d54a1237064ad32b4f83097f49aba14a2cf6f8377cd359dbbbcbbfcbe7ed225fd2a5569a80e4670dc48f17d56624971550e5e8e8d7109156107a5c77b50ab485ca3a266f895e8ad74a8bc111612140e5a2d0496f9dfe4d38bc1935c218da243cfb00e7306b2144a6aa35c1c0b61e8f2fed2b948461672b9de6ca78efea46b4a6a1b26caf8a74c4a49949e7b6554a3c27fdc5482fb78f54a9b222a56de4af6c4c70f90eccafc05c92bbf84b19fd86a0aa251d2363671ee043b20dc3ac19784291d73b274fc51c3ad2cd0da2ef63453dab5c6f4ebb8dc5b17a40c68408ca2079238e39fbd7e7166942d4eec6e5a234cfbc991191df8ed65cb298bf4189e373e5e1950d9040b63557100991076e887b94b7acdc0d1a545db391e0d352bbf335122e4bab47be39a496423e01e4bb2372d4c00c79cb6d7da2bdf6439e8d83d265b5a27f2b0a6021bfa35f660faa30277e156468e7ae38685b12bd6cead572a403c995f6b6daf16d674e149556fc6a743ddba79f3b878b9ac6dcda9b040b7ddf5fb71ca7e0e56898cd65451b054a575c7b872952729213cbc8bd3f603716cbe5abcf1d173b4e2f60c3dda30d2955acf3549c9709c0b4739e5b29bea58c52a8e18c3ac664a90c712f996e3bbb7ec71a38412b1d0529c0ba85e53acb52fc11b190d031ae72f16a25e6d1f1a6ce86a2a000958ad10b415ada246c55af1f6b0d8e01b8be160145878ca8501f64ef481e3720a3402c8eef148adeda87e4498c529f6972bb9a0a28833125414dafa0ad1f4e61b43910e67e9d8508e28560257dd922756d9dbf37799cde725000edc3d5700a60da73a763af12c772103ac7be6750283b26b4a94d63af35c72f6b8094b77d073232a0ba55b9477c789785b7c6b8a9f8136399edfc80fb605c51e76bc172c31738c0365dc9a9363174e005b2e31c71b76279a57589d29fba55bf7cd069514e440f1f0aefe6ffa31de03c4577ef125214d506ca3557433c1c349263bd1ea0d3e4a4a6a5d4e41a4bba5635c8b2a7401c90b2ff5db3e4169efb8ba10bb4bb34a048383af032744cd0d9db59923bbe3e18dae0683ec752897a48a7402d7ceb0c347dca5444e69f6262ea0afbb8a64a85faf2d1cd5be6e5090f437f247307b708c00bfeba1f9c8e31f1dd92769613c9b77460a5b2e4645fe2fd437e2693d905c8be8215c2d1b1c669d3a4351d848e2f7ebaaac364e1e352d2662d36c5ba9a75d3c14287bd77b4698ca5def840872c0c3a903e5d3db1ae326de60dea17129d200220a4746a4f7ccd4f7e536cf0428f3c2d34e4cc50175ce338e26bec9b11b4fb6ce75be01f3f7680ce1c17efc3246298958871118cdcd8577f38f22e87a3637dc5adafa5cf16e76f6b32a0ca30c111f58f600c551bcfeb9377b3345a4dca246ddcc1614883fa76d31496778dd69d4c087c8fd1c8ef65e5501fd2034f9fc1537bc10397296304ed03fdfee8eb09babde968956e0d5052f36613168166a55dc2bfedf7261f5aa32e04868ea8916758f407066fbcdcbebf072fb02447df06c80899f166c7e76897763ee01ef5340c403dcc4b76bcc29cb01c565350538b1a83b78786522d9391d531fe51c49f573a03a787f1df7f42412b02613b0baf87e190c23ab9a325bb06169cae16a8bc1b0462ed232c164e1822a83dbddd14d0504eadcda579114513e388500771d8700ea2c6b6234d54eeecfde94bd0c4922f1957b43e24b4da85be52a09b39567ff841aa3cfd3cacf51e46c89cf536a9f2e8e7d99d4e19453ed6890876ac3f3c4c8cbc19ee08336e9d31fb5f6694958dec09d2621ba89f435d1bd960be34e729238bffd8def7555140dec6889d67141bc7739e91b2715d35759b165e53e34d504cc209072cb76a0143b3bad135d59efeecf8e349623971160387b5e876c64d247027d354bbbf0b2054fde808a4f4d5c103ab0a010e9bd5185d51c311c2e4322b34aa5a06460738885950b5b569c6b99a1218acbed8eb893f217b5501c9679f02701349bc2dac58109f77b58c75fdebbe301af579a7844581ea76509c4277bbab4d011ea9fe4a57e1dca22d1fd92acd01d8e301281995d76b3aebf2145915df8c2822e00b21443944d27c41b243c694be0b88f703b9569bac26c5c20ace4217610ae1d9397d3accd5743659fbebd2d40c43e8485e31dc9e4d17a883091aa291457bbebca8770dbd4516b39faf9525418ba6c9fde383f9adadf46fc2dfcf3f13a809053e886a49fbc020380b7698692c0f87f5a7a024030eaf5a0dedca8e9ae8af43c55f3e6ffb891dd5f8d8a57fdca2706c5d04104a6830f3b3ad9ea2a8d70b1f276aab85659cc3e885fdaf67bcb96609014f259e0a7e47d806e85d9bc92215c57e2bb7379c8ad07515c910fa684bbb23bd3c4f852e40868bc4f29f97c5369512b9b282208996e1b185612f0d50588cca3a441775c6670af35ec340281f0195e51b284d818e27633e5488ac81e6275ab84dc7d4bbd864f6c5e68fa74377bf34d08f91c44230f1d9da04589d382341520cf2d9257cb267183c02363dd9fbce396f654671c8704286d395736ec9358021f0ef2ec9c81a23527b406890193ff3bac6184f6eff5620bccac0499ce883f5660d529de6323dd9a5741047da9a456ed3fd990080a035c786582645147a6ad3b0dc36f26dba0f3dc347751d889e2f02b00f91fd867ec6cd2e0eeca7a916cb8f8012836fbb3213d059533522e9cfdc3940df7cb58e658cf38d0bb52d6a8764c37c7219a055ba73bb44fff8647af375b428698adbcd725c90e4e75a37164680dcda19011f4ad24d0e039d5aec7bc06bb498bf234b5ec222b255831f63896d165eca4ff71a31395c36c816f45deabf124c2c3ea770300d8daca474fb932a357a213f11507df4ba67a52b226adc48858fbe6e81f3116572a5ec6e6cb4e3d7f9e5fd03b1ff8d82d1b1fe43120a3aec573459f90f78c3bc6bffc05afbe781ebe1fbfec06d76964bd5c3d66b99df5b97a4de6ba18f1d67750c6c60be63183e02abb822f3cb89a75b2b23a7216025b2a83d532a76331d5c195be06bdbf6382f5803ad5bd8839e2c8e99ffb3b314ec0bc9a2ac94a1911210d411b5e1eb677f163834961f8741914f522d8dfdf1f178a076325abd1acdb40419a58ba384568c9db64496b3c7bfd869413bf90111a6fd5197c46f420a1c50e975f17d53c601d8bc389eafa5ed496f6730374dcaa00f23f1397c4b9998dc261095653827dfa017efdf7e12cc6e5a835d700acf43947676927539033e994427e72a414a291070801942dd02f309a477c83f2d5035b5f3fef2e7beeb1b7a80a0336352187d8d96f3433b78dea80827b952b73ce3d36ba041316f4d62f24efc1f450129a3fd5fb4daba46fe843d839cb23f3573d2e8e505ddb3fb9b27513fb84fb72a8115440735763ce2ca728a61bb0ed798371031ffa7b1d6bd2f1d282955ae2d7a117b470bb646357a7d18153cbce5ba460b3865b71bf1665ca1f4611a60cb1383988deb57d3b106ded4a15a977d82e2788ac22aafff80d791982fb16892398d4c3f0bae1276705be6aa3f6077836847e1f33387e1125d86c0aa39c9c49729baefe94224b6f3747ff2d453f830d91d32de9bee044184e7f8e934d7abd7fe8fcd82c956fe33fa797cbc4815717ef5fd13c05fe2e49803acaf5620125dc07e5d00c85526acdac31d83d02afa895b166fb7f8d13f55bf3aaf87665a174fcc90c6e38e5c4bb5b1526ab92204b356726c66cb164997e5a029dabc87f2424ac323f483fa112ff5c03363f50f3477f031dd646b4148ce9b188217fb7ccd904e03ab70ee733f8452e5a2090dae8bf4a4eaac68fa7bcef238d07362f6a4c642eb7ac6dca3396d567e40c4c9489cfb74df51f808998bc53c38aa15096ef1058fa7708c4839b0a38fb21364f56d61674c33f336bc561f31de7b99ac365bd992f0f6400985eedcbd10b7221ca9f4af2da0eccf74920e751f9182921e2f4d08fd73e5b3edae87f1b4fee5bf661d0cb63e42021816bf23cd9632345949a5ed9f8842640d4801a6a8cc1bd4531cd3d047245d23bed24a8f107f749ab1e74984734bd29c7a7ad47cb3c15a6bd4ab4f8a43b791bb1b1ffdc789d986b4f732faadeec8b9e50c238dfb8696d3ab3e3d20c8a533a0c424474e00a72bfff5194aaf98c34dcf08fab8653fa72ecc82ad910478f1ec981200189426d5ed4cf0695fe01c09e125b32465b5997eb05cfc5eb27c1660d14e6fc08b5d6b40b93a98cc35b5759bcc5eaa141b99f62063a9e4cfdd7b6a2eea1dfac89619d719bdbd306be576f8f4358d885d7dfe965e11f6c9e5a0a4b406599f48f322994d42baf339f86e4261ab252163e9e0ad3f21656269669dea89c1a156633bc3983147d2f284ec0853b19f6735cc1960926c44740183635fba8c32ed51e1a456a8130d5b617f193899512a687f75c720f871173a6ccd0faa3e8fe53217df3b503f5d66d915ef047d412d3e1396ad58cfd8f76aeedd1bf3204428a471c156b6dfcc8c7ecdc5e4a0bc254622b149ea46ec205408aaaf5c7a81bd853c92d7603b7bc0751d8d1d315031bf66de4c1393bbd0a7b46129bcf67b7c225d97d14f622283f75fcd1bb3900f27c79bafa9d6e3d66f659744a080827f9d4cd666be03289a86b19ea49f7ccaaad9e550afdd67f5207aa6e59f2a8fc32cca13916803d1c836e55669e6c4baba7dcaed04e04baf0013fa348f9f4a823f3488a970b52814f49cffa97c77cf6d6725af6db703e83d6b9ce0a58344fa8a33efd90473f201d3b0732ee05bbbf8feeee8d7ea40c72836d3909f49b840479cadb73b675cc6a09caa72bb715e947829b1c086d62f579d800d7e1d23368cfc29f34231f9f757d4b5cc55f15c1e95426246cf4e48e713e753e8a7c6461c10b62036b7e524e60ec93e3e3a2f2313f218350c63b5512ee6c7d6526ee8f9cf3d63fc548ba8992cf40c67d017d52c3d73e1fd6e949d2cf22274724eb5da5cec6e1a36cb5807f37469f0a2f6213c5359ff55d91eaeb2c7bbbd5cfbd7b7a8f5c791683c2841e1ab8ac34ad2de776e068738d541108b08327e1b113b8bb900e3a705e2bf15c098425536d2b7cd64f300c8e53e0796474e6aa471ff180e5e7a07318cdeacf674095a0d1c09857faa0714a4bcef791a9955f6b916fc8d9eef605c0e18e3b16cbc0305bc91b466f3282b109b3512b31aa09766b670cd441e153ee2546ec2e3cd159c30fe1206fb3d901b88feeed3f23cfd838d86e6886a45c8da2fa2ce7a0f27574adc397d8252be58d3e42e874b7acda7e3c3f375259e55106f8e1cac746355fcb613295e7d63e643631048d7ed7ba11d4b4393d4ae46f26e442ef36edc2bde6dc1e33ee202eead81f29ceb7a73d883a68c7df55fb5fa20f31726fb14b8fa82a61075f27ec0d7eb4a25055a74321a3ad8bd0deacf112d438d0b4514d561bd290c37260ede515ff2076efed7d474aa2921c355a9eaceda3bf08cd18ae058d69690f1ba29d7c728e16df665c34524c3eb0437f32910c11894805d8645e8671a0478adacac8f15991a7f9108aafc1d8fd6f8830c4fb709b7ecf08037aa4ec65ec2112fd279bf2c03b10d37b9d3200fff6aed823f05b6150009ab2a55b65cc789061c4be5a8453ec9eb26796af555a1735c61c01afa672166ed28a6019c91ee5556fd2108e02e63ee89fcfc5edc0b26078fc71a4351b32567140d72836835ffee0b1ce7ab16c4587c1df99a8c6281671badaf2cd67d0847996fd4a93ac56feb83dd82002730c59bd4bf1484e77b265a6870ce9e67024da5de6d996f9abe19fb6f54ad1ec5aabe43f7a36d7f32a567daefb969a7234a0e9787f79188094a6794a3d78682b51ee57291213efc7ea295e6143d45e8444603d36a0ea98c5d959cbe3d8cf80d161ef341bc6a11265989696b8bcd96d140cfa87ebe007222f3bd2c2b1011f014abec17dd7714af677f151bfbcf742103e73a7d5278af5d2866717776ec27b318ca76547f4f5454672897eb6a620c46d13a5679d7c9a69549a14a465ebae9c84c5587c4548b897e3db9b224a11c1928189302c55c7df28943a2ea8627d35fd0153132f10b7c314e77451faea5bbf60db3c57c834a7b5f696a1ae46ff252451896ad7927b5595d52559fdb6b4e89b797262e1fbf5a8e1952a47d7f1aaf2c83a8528c0edeeca9f1431139b1863b915815aece4026c85058caaa3394e4c86f98c13f29d1bf514d73806f77e2101806489c281f838e418e17f86ca8ed99711afdfd75e25b5d9b9d748a8190881553b9d819482ae0115deb865c2f76dbdb260692b663adea3dea997f07f5213c2025838828d36d4f6bafaa6d27827213e8516616595643677fbbc68d853a6c5ec520e05a7efc68141e54a0c07b82947a9f20fbff7db66247662570625a2312065a82e7651da9993688eb3cadfeab775f5934ffc666c8ea3a8865f1dfb5e4897efed55c4bd96d8e1434bf1140554dd8aa919baf10b182511859974297123d84937843c96340ffd2f620f6823d55c8524d4238823cb6d952c7cd9445e89719ba4d4a29fa15ab28893b2f5923e67a93817b9d41b9aab6bae8c1f7c7e7df4d8ae73d506079791f56063b788f73cfbaf33208090bd9e63ee6fab8000c6ad2056769edf58d8f75a4b3dced7e9d80a7105c77e24a120c91683bae341471754f10e2dca1a279bd20289b0ff4863626a66e36f0a398382939e2648af8e41bdfead022561e37a6486aab0ed327e41d5bf5779976ad9081f012eba090a5d4c7637e31ca347156aa2da211c6fee450b1218384ed52751b7ec3af704b978afd60635c84122ad209f0d270d08abd8a177eddab4eae91dbd4256ab50e122514c4a6ef04f6d236b9269a49e4e475764ea22e71cdb246d7a03ef7c1ab4975a317515ffd20720fcc0fc4bef4dfadbd7f2c08deb1da807eb1d4118e71f9ccbada26319ba16517ebd77b7100199142a5adfcabc100bcdb4450708bade23f5ed0f07b84ff31b6e41ebde249391a2955d151acf41d24957321d3c89c22060390935ebc7721cc7519c675b6d13bcc9f4356370d73933005fab222306b2742d7afa06941febcf596e650e3324987d720aa7c34fc732a13e927a5bf38e3d1a19be59bbf7c4b57bcac43f4c2d29042d9a59d7506ef59725362b1f5529f416f973df6bac2c202727ef1295a518acad2a213f20400c610e8b91990ca1a86fd9ed8b2e69b71453e26d7d16cc6238937d19e918a206a517a7a1d7bf13071761f85d0aa837884fc9918864fb3ffb9aa122e22b49af61afd4f797f02ac22091be42e669bcf3805775f3451ed6a6056328947e8a4c72ff5cf017e934a632be0e397ea4cdd94f5a63d35a19972303b434f30d230518e187eeea35dad663251c94f02b16beaea73c5ae6b4b184d81a9239799d33edc7f6da46c08f844151fbf6225d24787bc80442c588ec70138af45da58f899eb3051f74d2947d4985aa5bd5b9ac27e721deaa41498b203e0e26b4485d83246cfb073e63952c0dc8ad9d7966287a44f98183b6f262cfb0ba48e0c71909dfe776d0a83372abe04efb927110af7a552f172b73ab8523bba2053beaa9363ae572e7ebbf47921813a21a40143e965a2922d75fec8b75052118d4780beaa9d3c3119fd870cd0cf1726dfa83e447913180dcf3764f93781b503db4f6b85aaf6e4b7d107e2c83598eabf4bab82c86ebe734de43f1dde30884eaa152d2f8ea3001c0163b5b153d392dc47d80953a94df4cc2d6eb96373a12ee5ac70ccb695820013381f4b398c7335fb094c37235b088c1f50465be4ba1cb4f99c267456597bffc7b24073227f9dcfee73a0900a8a8d8b8c583257538fe141a5ebf08002679936070337d27f6c44b13432796923feb4dbffe6009daf4df13db4c6118df5ed865abfbc7c9d9e49e8abb6fe5ffecdaa9576ac18bde81e2d31bf83438536049a6549db7f7bbc9e7ec5f05f7148dfc113d75d36c6fc0ae50ffb38edd6ac9b6bf611984690312d7c8253fddb0526ae4c922f46472211a8df084371bd8b853a624e5781af907b9045495fdce2da4a3c736eabb6eea97c771d2c4669fd62efbd5304f65ba3bf0d908693c4e216e9db76c784426e9c53db6e065828e176e6acfcee2f68fbf2598d49ab23ed3a917a8f705ffd64663f5ce84405f06936189f0e77a4d02aca499546e071136d5dda26eb40fa349ea4ff60f14a7cf4d827369d7f5a10007b58eea55760f46e71e2b3485d759d42db08f1922e54da0b4982904e3b1c94115b14572c2fc9488e55e7732b62b1b706f584ae089871c9dbf7470150d4a8db894afe937bd247dd13dbe18f0c21bcb18088639f1389328646b46a4f27656d4686ae834badcee5f42a9222d32e343433195d65c78f750f680de4fdfba8d3ccc9ff92a40123201eca1c9a216fb81a96475b53fb09568bf1abc2d6b4b391ead3bf4f3d0121f31bf955e41afdbeadfe702036ebbba788c5c71aa77cd6249b6a7257b13850eeac9d5a3632d6137a56aa4c5e20a1566155ac5711c263cdf15fa8a31aec83bbabf3b2e470cf457c287199e2345664e524946ae011e1363921dfe501f4125260d82044dc9f399c2f191c825ff3df7bef9db180a682e5a05fd7398eaac74925e9dd5f90158d2838d5a37f30f112c5d9b6a7c7d21aad64b171cde1050ba3b16c690a41df161cc340fbe8ec194ea8a5fde64a711274e87d7e5a6212b70f7f90906c6367d56e59fbe8b2a27a2100f4ea6e04cf88a2cffb545a8acfd0cb05a39f92edc9505e54e22a33020c4cf6b355f93d502cb37b6459b7099ff6e9f627592b938d90c5c6f8e29f859dc2e05c3faed394cd005b70d1f99229c49e7891eeb0482c7ab66f208bc767eb8b717e2a7323a615a1c4817b3f94ce11a8aa798b8fa8c96dfa73d915bb2410d462ba8f9e3cd864af7d6892a213555c5a73b6cb0023d3b7d59d859bf9528e708e9dddbf6c58ae8a848a7d7fcc896a4052a0147a81d5aa54894a9d4d6851c7253a2c64d800d1941889c88f4eb7b06712c00ae3d76416abdea39da64a713b8d49ae024fb953fce42f2cc69103ae325dbc8e79b395a6d787873be416cb72bd976a6389b70337cdc75c209cf0d62c10b69907d65de919889d844b07c6a2d298f68ee97b5510ca2f94772915ec11ab5a643bc4677b1e00183c461016f942deb8b3c6e3f087eec96c192af17b644c7769170cba3ac0867586cd47d2b2a0f86df0130fc50720af6f88707304bbc7804270ea977bc476d6a0f2f7c9fca4876a7ce03150dff0e0aa117de6a8e509668cb3cfda08a38d802b862af7ab9595afa37a67470fcfb0dd3b16e4c9cc526963d21a7fcb5f794069da26e1cb0463bf05846a8d2c392ca6778c8e9b462ffca1a2708714f8977da0ade74ebbeb01a738d214aed3a8497ff23704a63dc05d4e562a632ff3df8d9059a1ebb1e5be926ee0fc6b874c66bbdc347ddcf10280bed2a7cee28031643f0fe26e0aa0d6fec187d76027d70b9cf61fcaab62c532d656aaaec091f3b716ec332fe01cebf2721d8f64512ab3ffe1323f4185e1b9ab8a2f4cfcf96d0387d121561149ba9447541120783064945549bb9967c095fc0aff758284ce74de68021f22d4df5a97c98ceb85492fb924aa9137d5b8e490ecf5932c581506a458ddd479b17fc0de8cda6c4be46bb4cca9075eaf8c070002120b249d535ca6c81371c02a4dc3cd637c6995a622370a688b5f49914c7d2e92da16824ce0d06dc413e8b373703c180d72a406a2207ece53a8cbc152857bb6272fad4d1e35e560f03fcf957ffc060ccd93e94089575520bed9ecb170f6b1eb0cc82055b70a8e012495f644e3c0454fcd8262225ee1252e8f3f9756eb5de4c6a220f6d244855583a798f28ece02f14c08a2501fab4604f1f7ecfb8ae111f3c9d1e0762aaa2afb4be9f40ba511ca6d3b1db9a14f348f2c4e5882515096e940fb529c269e66b4e0771b6a08ffc1314f1421df562e83f88f569904efa92218a3ba352e213b8df67a374c013322c696fd4a8a029dd8d0604766acc64fbb75e79d80672029f869e07984194c2e0144a07dbfbf0e2f1224dd68d0b22c68cee0491c5e993d946c85dd0670dffcb04ad33e678cb19b80a3b3d6c8f3a6f267d428f486333fd84e61345f03cc80cb1f69dd8cac4ba3469c4ce03e9eebba116bd80700428f4beebd015b3b93dad366494982a48a84d926974a624367c6f07036322fe965709298de069a589ac94fb917e0032c8b88d626d02584b8afd93fe538f44d0d154148a1e9741993835b04ceb8cda5e2b3a9c548499464d76b2892501d398f3a2b2c219e81c5e9adf99504739e5856eb5dac4eed43895767254c132f47adf66b558b08a9e08a19cfcba97e8d8f16567eb28b39704cd5c7d7545b6591fdf9bd04e18480953846d423bb5a5c11253a37ce3f4e5cf70246a88a524484fa87344fe4cea47e57cc67954369577f5d6513639858c67b1d004c1ab32ba930ffe74f17cc5ff9ceee0146c4f7f51e67742c0b6dde2eb76c6d8dccecc26daeb3d57b076955841dc4671d4a9d97bb1cbf25a77e423640d579398bd580f06e8e7c2308231531c30cd334818af3bf692fd17b852d01c0f05ca999805b038c340b48d5aa236b40b7f85b1ae6534689d416a651636e6669dc3766caad8ec6c1d2eb59dfc0dc3365e7179b68f2725864cbfbe8b8b3d4b292ae8802b4730b0bb89c510ce11cff99f7e1c490b839d6a99fdc4da85e27e83e2abc9d003c4461fe8ad4953d7e1ddd0f95109dc53029f3f78605c38ed53155c583eef2eb632c0c732a04429c120839356cf3af7783217b74caac0618a53751013b04f02591618278d81f9ba39e01639a8d43b9932152fa6383a3091d7e2318c82c46214fcc6a813eb773b72e6712d50cf3f14a67ea0b6d784af67a7dd585d9becb04d5f0f23bc04c8dc1d3275cbf1ac7385a054762a3cf4a326f89c975315974f4465f770031453cbe412d19f24cb308eb7d3aa34a83b5d2e6dd5a0ff0a8f27f36bfe2a8edaa9776ab3bc3a1ae7c98177a8dd1f3c4ceb8aade8f8eefa42b18011265696a22beef499112686a3c17f43b7e3798320d20004b1cd3f1dce620ff008a1f950fa8a8aaa9145f12296b1178052bbdc888836411f3cbf6d9a898ddc2219051e2038a1ca39447f5b396a8988413e156a234a01c041a6402699577633a39d07025fd4e566a9218575fc0eb9be781dc19ceb068f1a023408459c13da17386fe003796354bd6d7d5a2ee3996f08369db935de9961d0a6be9630c3699a6a8d95c2f8baaf32421e9ec48bd044ae683530802f63bbc61f801bf8b571ec714d957bbbdfaafc4bfbbc7df61a5790867cd1a60f4fc1e8f9784932b7c5cc9e36774c66843f8ef99c0529152879cf69eaa1d6959ec0c1800e28813ef807fc9b53c0a819dc45d886de428bbdb81a58f26a2bbf528adf495202e9273d542f866c11f33dbb64f057eeba2ade4a235a812c8f007dd25c6471ce42382e84e41214d4c2638f59ae91766376c39526b2a8f39af1192be1c835878000442336befcfc6a39b2845a9a00ecde88ff11426a29e89f94a2ef4986603a0743c16c69d1ea92a196271165eede650ce2201f8c4e3adafa8e7fbd46fc784f1cd99aeaaf213f8e73082f20d39f803a065d81b65cc9caff8ed7d73914544a361f1e90faaf42dc35e9c6ab6fd3afba1c22b0755eed8b6ece0f7ec5dda1fc9251532d59180022cd02f179cd15b0f1739d215f9cccc0209d3e38f0794c91e08d9bb11ba335f5e8dfa0bde1a3fb2e89b0514515d11fa879976d9865bae1184022ddc1e6c24d55bdae995cf245d6843f6fb73dc4be05b18f037234da600017b78e13ab1259d8efb23f1b692d9cbbdb2b4a5cd64ef75d8022e5133fdba5e0e31e9894f3a45f6edc3523b6b3e4da7acb536a0948c7f6ded097589ba3d29b1f9512f8b0e81d9ddfe72fc46ca37b31f1a741912eea6bb2dbcf8085eb20a6a1fe5198779aca3da54bf5cc3cec1445d1cd288e9525ab87d61cfc7c4878ec8729767dc45a6ee44cff689fa05093db4b67c465c2bdc49b69032f6f9828f6877ad4048c2963c9c309a01ee4debaab75d78cd0af21b15ae8cde6c11e662588dbb430926203be14450aeaecb33a99be86c8fb6fbab99f7429774451d066dbd911bf392efb33562b1141969a18f57a9e2fc56df4b9cb481e8b83ab55df3d6dc9b6a2b961f71346ab87d12a432f85a3917ced413ba337507190f1d764170fb22aecaaaf54081ecc4262e9016e466ae3a620099396cc2756d5e688034ea1321eeff59f4a2511f3270d96a98b815feb5115758cc9d75fafd200b4b0de6b8a5e06bacab72584e6adc79d85ea76b998b0e9f4f25d30af8cad29bb2ec948a7c538947c5a66f5848b2a21f465297307f098e44952257ce1e937e55c2e24137cf857a471eccf580892b7b354c762c93e2a34df168320c30511d680924c4387ea99c07c171a10affdc3b5ef491d91cc9c36d0cb94a9ffd9507da22f46c1ec4229eb7ba5ef456c7609daed00442ff50de8e648b7408f347b525b3a009010e60581c917d508a77eb2f8c98f793f9796530be68106ba7491fd44e4b2129528573f19fcd8e7c3174590a0a2760696987619d7c75cc24d84b800888f90a4d946ddf79d300ed89b554a298f024120658a7b7777a6a4c92ee271311a0809a675137b0fc6355a51810646276af410f406f1db38ba9657ac4b9b707f3a74bbab3486de9cad9cbf4fdcca19009bf7ff9ff83586f6123916f004b97bfe007ed5df7174f071ad9f7f31e0bcbcda865c86079841f991b9dba4f56263a36f0a2bd6dcf54a2cb6372ae6b8c42a11e270020ff70a684164d0661d5b247688952f435d29a7f69a219e85a9ab99db1a4a1665631d6f66d218679b42ef0febd6086479e16ff06840a7f09d091e71da83caa1df83be721411aca8575ac74934b29c7eac8540f7c67c156bfea8114131131d908317b74a43466545a0a81c1120db2b21b929bb2d996ab2d475675e7e0f843e22b8234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d23e047d01c0afa8f190742b6f071c6e2012e9cfd0ca1ed13a26f7dfc4f26d2f9cb0da5b1faa3f5f8c19956c26c42c826952db7b2a874dc876fb0a5b4fde117ad298aacd136dcbec13c7058f0e7fc6a495108f3e9db4c9505cd02beb95b7ac99e10028b3d6f86f28be25181a272067e3cedf0928348e3fed00c7229f80bd803aa00477e800485a04fe133178453d56fa778e36b2556d3b89e9a6cad1e7842157fa5e8361d0445f71d405e759649850accf3a057be210014907da109d1c26dcebb38b2dbacfacbbe359c02832550d1d9da0d683aa5e86caf9fff0c5b9e8e6ce3bdc536539260d1727a5130417275ce1a92fb732a77e1d3ae695b944f4dbd4bf0ab4c25383b29decdd26c56426fddb8b98a5dc068c602c339b4f7561e2bdca654904106e4fe9723b2d76c8e6d86efa422ff6cbcb85bb44f216841651862a22a16c2116269e1a50ca3bc5cc05f009b03c9e3170197c4ad2d65bad1ab25b9ccd049fff4996ed0fe2ebef225f12c67e66e78bc80f61726c76fc33cc0aee3a4c7f252b7afa6f68bf11026864bcfed6f4b45b6f79b378f525a00e9e7ec91510061aff864ff647f80918d719be4c3c42e15d8968d56d4177b449dd9f05000ed5cdfa73a1a1d9cbe4ea0f9188d7816e59acbfb4b382183510c20765913970cc03f0a258466409a1e3a13097682ec788a0d708394a9fcdada6ac5fb264ff5c2eb0ec4d13be5ad677ef36640243dd9fcd6ea536a60cc584e31d319ae2b9d2ecbd5f5da66669f0f048c6e95ac8ac198b137dd938e55e1dd7e05072d2586c2623b633df4dfdc6892e8d1c5be2a6880afaf3fae99101a28ffba2d7d495da39bde0f1d457225ed163cea16916a2e67a253ca48216fa1e6e260324d3377946463e29a6f1aad7e16c4fbfb0693986f0c10454c7b44c3db72626796a0808befa5d07a77d38f2bdedc419bbc94bc89ae521e00be3fea4c2bc1e33fc7b4bf9b8cfd87df2c46236efe84c43813ee4bf04de8c65e95e9100329a7620abb09423029c544808e384a126691c8452f2fd7e94f2acdb0e8c7d9d90bf882db4ff2b1a4a377256c93508317c2d8216b8f63dccdbbe6270976a953d3c0b62ac6725e760c7cf8f68fec8fd73f60583d2670e993fa25298639d89f63921d0ae7e8bcb1094a4e2ffb7460187f648cc839b7c101c4960f679e43984c67394313693fa2834820ce9c2ac261b9e4e3f2d8fb5ba2e19225e6d36d54375ee566999840787147360b6e99c77b98cc09b5db2670333420e1f072ce18c79dbc1adecaae3a9937c53bf328e1c8ac6ff1cd427a0aa668be7f56214439269a08215058fa7d718c5b6a5a4ba3ad3b97589f7e8c397e3327675b64a895abb21fa805ded56655cdb39856f6459db453d3ba818736b852ec090278e1e6ad9814f69bab000367e33e6aa0997f353e9ace4069f08ee5f125f72fe8842930cb42c8ee450dea8f983675c7ae4c03c3f9bda7708cbb3e0b40e7639ca18afe9cb77896c5a7ab7905cef16e224c12ab2238606ec9ad07f90c6a9ceac0734214b8b17b2baef16d62abb66fbbce337d7b7eed07d10674eec30369bda3d0d70bd51a85384dc84b1b9d1007ae2cdda8bcb3b03d4338479f016e639e3524b5ee4cfdce529665fc9b6eabc7f7b63227d9dc61a681bc916558a8a9ca088d4ff23cf8092022529b8c70277be17e64db50e77f0e8e563b7c678e2655245b3eb5c09469de8ffbdf014802ead7aa8e5edf4a84d568b390dcf6b5bba20d086338928889d6c28748004988290fe531987f19df0d807bdd41616198c73614e7158ab000ad594975bb01e7a0d2636c16e77d44f1ef98ef36f839ac000b3e212da2a5b89f0d91d5e74db5642805abc31696a4faab24e12f2de171cf94ddba3d5712f7d92ea728e278e60b2872ba99647b2466e7240e76a75081e608a206971aed280d27d4741686b9bf04b2d02f8141692d75e6d31a940153f3b956eb66752285d24b8190aa4e83a1627cb5d4aac7ae022d2c4ffa1759cf0eff67ff5d60df492eeeefa1ec6378286021ed7ae90c1a649ab8a5b08f0bb49fec014a98caabd5a6f2b5af8e1ae29908d23d66d3c7450ecbeeeefd6f44a2dff4820c1d328e7e1848dd56405f6ff0a68c00f387e3728bf39b2474548e107dde4fad781cb0df1ee6f17f4484490086c5010a63a2aed750d2110a949021ea8a0ef7bc36a29f07591823eaecf80202558533a96c988f1a2cfcc02706e8f48295e039576679e083def245362b75a937613c55c31b59ef8a2667e2b67fb93d691cd0838cf2a646dea6f50fc9f37e89fb674e46cca0962b550437e590a4a2ef1b8980c80f28de0f4cd5f0863f73784299ec6f7da0cfd34f318f0d64bfccf60d9cd3836943dd3fd5da5a2aeaafac2888a855cf01f112f8f650548cf7850659033a6bcee34a38fdfd74fca77b3273a29df97ec289a5512e00b0b89dde036d6a2b7aabb267f68a5e920612b9475011eb8a590561bfe1421840f13bfa0462558bc01372705d338786c006c68847050ca7883efddf9ab9e2cff55f23a4be90e903bdac1d275dfe8df8c11e9777fbdc966c4055df17c460cf1241e4a1d8c8555322d9f5c01234471932d522cd67af3431555440b0c12c17f2ca8b4054cd93bf6cfa3e7dbacf0153d3399184fc30902d2da0d4c4b2077f674c2482e75e19ef9778d780f8d71b94ea58317988667fb84be360a6ae45018db41888dc4f3ade3edeb30565bdfef9e54751f5f2ce040a8ca92f7b8f2d03ea40b44bc0db074e910ed57705e92dfaccfc2a7cd3d62a098bbb2762e79c438423043fce6587fc34eec805f68e711417509267244c629bbe3138b1df445fb9e037a9ee976d08424143f169957d09ea4f1fe7384e31e38260ad5e2632c6d543d0cf3cf13a5607348b20fad7762b3642e3ab6fbf1b403532bc601f82703f08ec271229f326bc72e07b50104601c233e73454798e9b4575689525a2dde846ab37cf4a4e7dee23dfe74b5b77da419e706f3c53b3b7a7cde31e8544e7c105f91d6adf196af7b0af7c4175e8c749f2acfcda2ffb59b926bb6b665182b0d6d6720afd28e0766ac1202b3be14f983545dbc9230aad0bb70625520a474a8c54615ff3f5c298423cf337ec430e1a26272bada9fa2f1bd4681847e407ebcad1550977e9f3cad65748956ba0935cb73a86172806afbda84ac4b9eb2b59e23f4d9629ab314dd110b005ace5528671c97dcbfbb5cc667524fab71c3010d368aff4f6380c9d04b0f0e8ab3356d206e8748dc1f48649ee4747aa21c00613b317869c05ff14a570effd9d331f4dec93af4f0141ab2dba9883175f74c1222ec46f5280468af5b1fef0fbaa50dccf3e9a717724e399c8c0edb41bc06c0314139c0fe469a84f3a3e74c314875121a36ef377617616df57e0cc4cb6d08fd428b9d509a1a0f2976ff6a598fac6d8e12108d3aac7a028fa35e2d546e67e0df381ef0893910f749587f1d9bb0b8093712e0ac123ec65607b82a83caa8ca2a11322caa77c49fb8ef005188ee8f6848e505709ee5a89f22ceb8c99dc8fe41a6480ae9e7ad6570f398d218c3309d8eb283b7127f4c82cc8d92df267ac8fd356a2aa574b8eeca40c867509c8649ba4d076a1ebac17503819c230859e0a0e624793256a86b0488f94648167007fa1f6da99eba1a0fcf224246e8d03a2b3bea3a8fa1574724ffa7831d18e32139f823a9dfe4acd77fb3201b95f5ff7763d2d3e7136344ded18e32a365b849ad43e1b74ae3a62955f000de80484ce0f45ed54d20f37202ee108909b28cc84ccd6a789dc8435d98e7dfabe4c11ba30d266ede5f0e0e388ed13a984690c333568ae87d0d333756394c19179e6b000b2fd4aefc0821e7378390314f0f6ae381e89b4e9603ee951deca34dedcda97c2eebd6f3facb169998360468d0b555de2562d9bb61626e825cfa6b8171509bdeedd72ed802dd0ff33fd18693268bea1b5f7888d185e7cacdd599acd804ce757c32c9a0937f9816d4e921686730ae5bf4b58bff02632ffd68854f731e4cd20ba831e7cd6794e47c61cbcf94121a2f93fba097f97e2b24822074a53798fde11e2997459d372f46ca69e555231281416ce3a362fd2583b5ea0cff584fa524af5b59f59d921407406112dcd90d44afea026b58b1a343999cbe0e5ee17058f6cc28049d52bd5533063210940e5b7f7a6eddb1cd7538ae364576ab1d58ed79a9d861b183f0f11ca2ba886ca3bbbf9f6c5f70927806220deadfee5d9600b25be613062d9e5650303a7f8a0c4ea9b298ef1175c1011daa1b3acdbeb2e9fa79714f981854e36ae9673dcb33ff4b58b0bcc42dfe76cace7556f0790b383b38bea4739b9814a351d6829c8d88da26e2d6f1949f60eeee6510fe524c350d6431bea93aab3373719202eb1dee8fe2a6ede3a08d591f8d436e0d6f2f96c546575ce9edf8c3714840ccf6abac12be49e743b7d28ac11b7faafde2853f65b6873965d039f3421d6b73db81bbb22e112cf08c03cbdfcdf4096f6861e5f8f6b176ce6e8ee11c8af28a36b56c709f8ffd15c73889edb67dbb6a76c9641e6b7740f6956829b95f96e071da97fe5ef7021ffd50031739ec4e42d1a70505eddf12d257515b8192081ae4488c169fed989bb96176226605f57eb0e861297d7c172e3d814a2f967bd8edb860f0ecd780f1b489f6530e48563ba595b118986f16ae92d43ed51671be540f9b44c735574930fe7f7d08fe0a97e5a99f8fa9bf1b49bf8bfa510e8067d4ca68cae06dff23a09745745a75c3f4fab2d202a8fab0f6965e016e9533ccd32650c39ccf80e080167aa2ae9b655018c2e7653f438f4877be5733018640ad9ac848a9717dad98c2ffc8a78eae910ac55dcbfed2ec210a0652e7bfdf84f269103490a494d7dbc80c252593a9eef79d58d9349f4f7967893e225aae5d905dcda3db9cbba5b4358438d5e21d116112f52ee5acb12557ca55665059438341e45ae01d14a3bdabdac877b0527e3e5d0b552376c2b438d4f0b5bf98a7f8214df6b47f40979da50d4ff280272c403652c23ca4aaa4aec5ce911501c2d4fb724b06358b0bbaf9c078d350be4da8bee6abad656916b342c991d1d6c298d433a0c9bc6bef6c44301cbf23caaa8df098b4a95bcf76cac3334d10379cecf460e855d3182ec31290c986b705a87ec2ba9848d7a9bffa3f314b6b61cc2b783e2429aea138683405647a01f0149b35c54a90462dab9e4d1acfdc0ad0350d5eff4cd272eff38690e76f53d80f69b0c3869479a3345b6ab71a4863488e655ce4850a950302efc422e799868470997f5b40e87d08fdf4c0c7a5d41176d95699652d963cc736bfe46ebc3fe7dbc4929dc4418db4ffbe84adc39ff51c6cfb8f3bde8bf52d192a1d561ac43e380f16c5cd3ae88f5d349dc31b96b99c4c18b3e6e1fc870372c93f1e0d416bcacc314abb1f1334084773a7347e74ba65834da47cdef7abe70926818ed1d066e3f2c4e13d9f192651ffc17abb99bab1f551308156e0820ff5c875fedd4e10ca91062bca623c50f8bb314f569f5987a4c11ac123d6027910d6cf276ccfc2e6c46f44a572e166067059a3e8966bb869e246f6842832ef4285356d0080c732e955bf8a535c438dc379ecbe59e457b972c010ccf72cc64e524ce3dbe054de985a48665953b223e0625b9ec7dcb742502754a1dadcc2d55fbf08528d2f53a5ff59e30724f0ae785a31d4b54d1d57fc26e0fb08723241fdd735ba6ba20b3e58069fdd857fac1ff9b42f82b30efe7b4164fb13ccecf857d4836cd97cc4e0dbce6c310a4b394eaef5016e6fd99302c91ad55f6e392dd86be40af2418803632a436b2edeaa29a3d0a9db1ee3180cdacce8033367d760e0c2b19be175dd23323524fc21a1c5526cb088ba79f5bca18d151e834974d5fd7c9364f0728cdfde1b6711a9cb40993e63a272acd8c0e9180d89e1efe40f0f6c8905257e4bdbb379f9e28f6de8ca362f7af9ead902b6daefe574ef4fa92f7b1e7cee614ff9164fae93cf621fa3459877f8e8aa52449cb0b7b071d50495625be5eee77e11c937d6f5ce349d2a9e207c9a9672d76c12655edc28657e3a1ab0abf02b9e87d14d132503b096af95fd15ccbbb0993cef2758864543efd3b5622fc59fa0b3dbf7df0b3a570423b577a56d5ce225a4fcd8b1ccbf9a032c3630811796b6d082e363ff72edd40aa4af552a47b180ac9aba7e780a384cfc89c3fc5c059eef4033847734d40f92a5bbda6177463e913729bc6f0dc5cfe6048251bc41f8ee6d10fc09c453acdfd3415280231c1e889c42260120ed7058d964e8c9fc1640e2788afdd5254901632c1d6270f433c09f72a34d3516ef56480b6d10c33bc288c19f08ae273fdbeeb5dad2faffcf09d2c451d7e8d748b0e29cd7807fb65fa772517c81f6e5f161327dea102cf3208984e5c6cb615b46d28bc0cb66e10d530c88efe1f9d3c1566b4f51981c372dab90d02e53fbf353360c7473bcbd3d8189f20abf7a76caad487be012acddf30297fb11119308ffed8702ec4036f5524d7073274cd69d745842070ce76047fd1a378810ecf118764f22d7204e51f803086b65f68ebeaefff9dde82c2184acbf66e3aa899f9f8829e2cdcaace21d58d58662036b8a5423de3f7e61853461100c6ff4f0a01affbabb478ae82c7fb55c02d563a74c2fc12c6b8b44e98dbe0ce25ea2423a8f2277a707f03b2dd4cffc5a2e28adaa9ad909e2329b982297ade08671d73c58a566ea1d5f2289a3c52a9156a919b49fcf192676067ed0062b6a99d43feb4b97dc4962c71e1764dc46720d06d8939e1f1067bc45673ad65b7f1bda2ed3c5fe06eb9e701eb09a7f5adbb33e4feb647d04a1d45bfceb00255f6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855bfb82e87878759c1f68cbac6e04647de1acb280f98dcfba037f75ad19d449a47a7568115f91a10c80974f9a1ee07862329e0485a922c3da29dbccd1c108343ece3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855a81dc848ae7998529e640b74a38a28c143250892f91ac6bedb167409a9a345fbe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855cb068f77b12cd8199deb9e0a39855897a234a3f6d616f54884ec750a1ab12809e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557a10fe943f1b136b9cfd3f24da219918ce107045cc2e0610dc7dbc115a3deba80572895e4a53ce17dbec7b4843081f31308676108eea4f41b4d27365aa890a247475b628d7821a1a45f672fab34d8a52df053ffb41e254721f7c8b2dda1cb3d4df84057a2ba980fa9b14aa7d71b85fe58c66956c026727dbee687d956cbebffb07448eb82fa8e6945899ce99cc2292c79f47daf73f6cf4f7e1d3114dc5389f0ee43e7020d67065497c17a6fa4a7973394dbd2124c88ddb184aa01b10cd5e2748483334808ab40b21729a0c1aaec92bcaa37449d498c9964c648cbff9f1c439a2225682eea10edd7bcefbf09bed85a7061f51b63f00bbd4a2595798b1805f77bfcd152b9bf1ed0f58984c45a9c8d38fd38e5389f1a6e3316b0ae03871327068a20fafd35ea1bfd146a78e5136d88dca7e17115e1fb4c10ba98bc82a9bbec2c0156497d60327a667f7f59952b5d1e135ce12fb11e274a9ea2d21fbe2aee80f679814f5052476c9e7ca67c3768388a8a0dbb9222e72d7ed2e5f42166382920d9b46d012bc472cb04df4a81aee68df7084c95f069ee437d1238b532671a8f5d6165b2dbd4042705136e4e297f3bb7f93e1e5aa6eb36594b0e63c8a605ffe523fd4989793c6f26619ca013deaca58743db0bedda694db068c35688cbf9016dc2df7a9c3bb24fd758e95f4d8cd3e86fa5dc11e8e989c4e13f2611c595d03ca7aee1f9620687ab212af2298d41acd657cca3fc4d3d469658fad39f5dbe457d887139130b6096b0491a18e3104c298245905d7edd813e4e378045ddb9fc92767338c2309ad831db68a64a30b71cdc33b5396caabf41b6b27c350b388813891ba6482ffa1315d956bdab5518411663cbce65aee2828c784b0684f81a094c5667c0b5384ae979f37ddb3943a385661164212c59527d178e6dfb6c92065c51c1aa8121c1b115b0752f542b34146aa1333da4ee0ec11c232b60fad7617fcaa8c4488317c1202af4bd471b72243e062ed0d807bd6099fb66b1042f8b437a1990440c37aa467ee266ab0907864c4a93d38f1d447a3619a2442641955847283d71ee5e4dd9378b64477f2e7a21fa6b2b73bf19e325049d186bfde786f1182ffe5894fbbae65fd410d1b760c54bcf36fc45178be00366e766cf24b855e9806ff746350cb0c9daa329cfc0e8fb6b1b61e49aa8169bf84c85224623732d75328a9c59f5a2a5e46aef5a443de971df651e434ab3864023c85ab08727f71f5cd7056dfdac01713b20b68f88883cd8d32a326ffbe3e9f8d9ff5ef0d7177e6bc2cd09ef4274f8fa7acb637884c4acaccee534cdeed820cc2755689a309a11256387ae5618010524ffa14e011d9885cccd54036e752684417f485eae51c53bdc670f075494e7dc8852a5ce67d79f0f221863804e69ca18a6ce3dca5a1157518f9deae6c89869eb8ab95cc08837cb649327e7cd3ff60b1533a07f9f1f7a2fb2ea9034045b0f9ad411c76ab97a8754daaaf47db447230c53a21aea2f2f87d46fc32f9124d07e52119bcee05188da2a20b572fad4919ebfa5e5db0e9923bf80859fc52e8cc019de731e253708854f2b39c37fe7020232fc0f07529a6b4c7b51eb6cf336fbf274c38c4e67be1f7a21cfac14baf69abae798dddc863cb9fd50e0d3d451d6a3b6ff687347b0846586e4bcb1b488b31a918ad05f57a1f71e26082a97e8502f49657f5cd0907172c1b766353f9e7db2d8c1df377977ac25ce264d58c80d9a83d728d0ce8a5229b1078f01ac7256977bff8c5fe5141a5aa1b070186885cae8ed4b79b8d4d22df809713500a6c98166e50d10d8fc112e1eb6c332fe9a3d9e4a92c43616a6da1983ae159540fa4895265fd9546e9fccb5f656b32118f50a1a086ead61e05eba5e863d4af642c10a8ef6c9e3eb9362e0f9c97892e5df399c49b8602df2e62ed56cba728f1ce3f550bd5e244237cd0f30a90eda57b8b00cbc24101632221d8c50e4c3f8be1366409dc0163c7ec0656e0621b55bffe57a205351d545076fdfd64b3b22640fe4c7d6f582fbb88419d1277c954c103c7f1b52194661aecb7799a7e020170338a7cd2566b947928a845595e87edbff0487d98cf2471b55e84404d8c75e946fb1afa65f12b251bc1f6f7912177976a4f01f1190b623672509e313b3215dac2e4a7c5129350161ff642782faa42d762361be70d22df0d4b12dfa6cbc5d4e9ae1d7e13e0b70e5424b6f6e401ed86076c97f83370d50b6729098402bd620ef53960def5e9f19213b908550af0da5f8581518b8889c5e66f9726adbce574e80f27078b383321c7356e87024785143c723d1d86ebf69e1f93da88af750304b01278d15d2e1bc855fe99fdedb3db9dd429e6f7c42bfaa82a76a0cf1673e8ebc7d4c3093b7742c11857eb0ff5a83f9affaa7cfe6f60d46c066f2dc42a7b7c26571cf162a81f1d8e3738e645370650dd7a62f75f6ad661a4ee930383a58d4a0ac9dea8e6c412ebc112520127a5f74e6229133efd94bbe007eb47cd18958c8d6874857763a73fc8ba7cd54a003b00d42abd3dd6984a10a588ae9e060424b9afdd47feb0879ca5270e208fc63c958e4b3cb2ce123c86431d936c1d8358d8db3ed955af7fcf1387a6bbeb3e6bc3a0759d08870b6661d5358018d500bb793a738d8b784bdb7eab8d9a2200aca0fb74225f609885001de21b1889019661f0a9c1bfc2e9d6403216a922813b805d377d669b443531b851c7458aa5076be331b83fc372bd7a1511c839258ecfc5f0a282f025e9f30b480cc70ba6d939db0b8bcdaff42dc1132cc77c9caded97d798d72c5456676fbd769c95c5470cc99fac694168f3a308930f66347d4023af10ea57dc501d1a7a2882ea9dd7ae2209eeee5ceaf792d20f31328e5c0edd96eda4b1be30cf307db518c8392ff0d5fc6c94a733941ae15bb72be8415adb56c281170002c80cfa9a72799604ed7e3ce9e3c449cc2cb5147b8d32d8a5ce402983c34913ec72a61995fc92076d4a4230f94037cd6871cad263cda9cfd7b83bdd4630422d3f58897878a0d926ab0858df5ec1bcfbd73de19a0712518d2967e84c4073b07b41f8529b6170e12c8ccc7cfb5a820c7d96e9fe5d81f5e61cfab56be52d3981e19dcb59e47b59ea46d04a9b9c0a65b63bf734800ca055488638868a22db4e5e767fbdb6806f8fdc27567ca8d0d33a7aecf1a6f4440929a75cb63b3766db8e573ca524b6194b141e19aa2dd0b588444a90ff7a25849a21cd0e1b6627eaa236645a281124f8e50275afeefe91234370f33f10dba1171d2afa56d8cbe7574c18cafaf74457172a81ea69a39454e40444504477a6318d3a967c1f2c777163f435e468d11d59026c289a7d0481419fd54f47601271c9e2ed3d22d4d694769a6e44b7066caf1e9a9c65dc1d9b0939d721d228f84326095d723289c2287f5409161cfbd0fc2bac2c1f523f232cc8fb9576a0e1fed75fe08a6050ddaff17d9127794bf2d2ab9874d84872a4ff723c19b57974c9c875a014a2e8deaaa2c8367e9eb48fc73bb619186f31267406d16684c8f1c0ce5e834db237465c21b9e0b9ced60612fa9dcad8be1afddae5b598d5f2f4233c17951c4198ed18b940bb93566ebb918d46801eb106236ebd951539f77ccc46485fe93b8abc8f2210f62af517d865ee282171ac2888d90dff2b3232558b03fd66286268dba399b34821080943858d8c34bc50af8dfa978c38341d818844e7989701be588f8ad464af638f4f1525daf1f71ca38f67b42b4a8035b7d5384d93a02cd9e09efeb895ada40dfd9236e94fd10ddc89309ac635005b707f7e2ec4bad6914032dcfd307dd0e1a52b2d13e64bbaa7105c30e5611ac59a0050bb1bacc56b8653c1a08e12f45009319633e60eb1ca8cd9d060a50e9b54c35b8527cd67f905c6fb41eebd7136c86481827157110f041792516b47dff2861a0bcd9bb56caa0de6b4a55b49f342cc87f70e95e48e04c217b1f258a6c30685aec7324880cce7de2ce07d954172f1a49042a9db6c58e065302ded387164725348e3ad045870c30cef7a78fc3190b5547ec489551b165ed56511b0b1c45640aea35ee60b4728335a7c264526deeca7967d90cea45c0fabc1d74c02a65b37b3d9ac505ec85362cbcb427e297227e3f3e059bec361fe6d59e60cbb84b118da265c0250d0f52b5ded63f2c7ff87de61a6023c228b30d69a1649de63ab1fa5d91dfb28bc71eaa19311b6beb6e91c47b7298158080133f746a47b37fcb9dbb1da3f98d58db0075d21b1a0cde21290c5d627d4ace05f044f937da3c78c0c526b18f82a97aebc74eb7e44e943704c63fd30aecc3c3b748cff4fe107999bf2de46f34f1d52a085c911177317b204aa3af0964d62d54febdb6e8eed10534392bfcf7a78e28d3ac4c218fd13238ee70d796cb77b0bc0079a47ea2626120d1dd4222c14779b71a352e239aa80536aeebc1e742cf552abb77598ed8ad65ba53c93fd6564c6ea38546ee7851e120864ef8d67b210fc29e5e82424d649e8b8274e3e4f1513ff8d1c8122b5a496969aa68be0e41d80ac368b2c77cc44fb71edf1685ce2d6e030dd81bce11ecce4ceefcb9a6eb0d4d8c50fee3e82c0b42ba5c4981ad6d05c61968c2354d1c8b492bf9fd03cd79f1e950676d3b417ded0c81f00db30ddb11af48f7f6497141ef9e2513b00ac51731880d0cbe606dcf46dd38715934ff674a7f4c620e3b1ed987a5076e9c6437637b3b58a8b0b4c5ea7a601b336653ed28f97b701d19433f315827343cee14d1214080fb2684e1e911db180ef500de4319ce509d9102112b1fe6eca13289ef149c9fb7824b42789e3653a0f89c7e89810657ebd24e07b2b53b4c5e80a68479c7a75e6a46aae11ca5ba4633efaf00b7555a97f122ded97d4b01054d98d071e0e9b665c8f31b43682f3c12a02ff0d93eedb31c9762911ce51ec49a09a5dbb1e4efc101c9c594b76d09186f84d73efaa40c3e7ea30228b0e6fa2f6803f3def27702a0c61807ea425acea87330291244a82f399815a3a2488219a4cdffadecaa47a6f574687c8109ed74c60a47d6f66af35a3f3c49050cc9a4b78bea8ccbe592c345baaf647975b8a1657350d6bcf9b4a671fde2736651a84102cc892a662637d410f9400f509726e08d15de0ddad2ba79cadec8326c79c6c46fc76cc4153f18614f5894562a6e387a2459df5098b941725b0ec30d04e39b47fe95a07bc1409d1fc7a5c3ffdd10b8f2726e167a99954ef879f46f3aff78a6f60e61ec0dde1c7142eff25b5fcecff8dd21cc901a2ea145af12d649e2d77207740117d237ea33a8fbd386dde2a64d1c815b51ea9149a98d923beaf421f19f7bcad856e975b6a82bc3a33102901c78873ee134b806c0c1ff06aefb6a08f0d719117acef4fac6071d852c5f2d60b4d0cac96d4184cbfe2065b406566a8b3cc11839da4a99ce7eb73c525ff9a8a688c5b308606f05d6c43fd66147c10f8e35234a064e3190641238537c2347b45c32fe6f08e65598943235ccb62f3e668c3ed4284361d4f0ef5c69f72ed5ce78bfe86b49e8b7245c2a6e7405bab3d5588048f8b1d2d37b1c3bd2da91fc2eb04231d90315febcb3ff632eaa979f2fe3f613c53a2cf88d1c2b1d2c9d5869c8cefdf35956f04048b4ec092d533fbb8eac741a64dd2f24532998a092c90571e726b7501aa3c5c2dd9bd7385e954077bc75e1f527bce9b0a13bf8730884aa70e92968d99be3e29a2643415402dca017a9517eeda6a2ddcc71d96fc0aa1d66aed5e4273f19b2f330226e2f93526c48ee0cfd5ee48a18567d03fa4c7ab69eba8f8d9d88805311ead826f75346f9a1dcfa1ba4a75524acee1fd48aeebe9668e2be3dd84e39884cc3aa79c3617e52422fd5c4d611089a87244e30674f13a4d4bd94fc6216bf96da8b423f10a439e72865ddc9b616320703180504b8bf4fa25bd5629bcf079a07ccef2677b81bfa5e3e5013ba5c908aa6e277e3beb011fb24e0b639f42656cd49ec19c277496bc56117502c0246426b9781509fbc19055ea5ca41c84400f23e0ed9ebfd50be64100d87b489d3d851023bd61c1eb32a65fbca145ab4edba844dbfa71e529de25d2af0488bb126d361e7042bae17a9cfe668eafeefb9191aa4dda107ff961a353bd9a8ca9f4431408067f711a82187d97287f9ca5c2c66fbd735607a56bc2277b65ed0e4e37efb036dae58ad725ac156de6623a4d325bd70e68c3c0422f3d64a511afee5ed05465c7f7e13605bf171373aa60ea7ec8b287f26bcbe32ec24c20d5b4e4449e0bec73a29dd5486feac38cf90e3e810958b09c675b6181ce203b1ce7ebe4dac917f063ad6120ebf9025997914138a8aa30035bf6001ae97d7a566e4790812dfd07aa26853d6cb95da455155ca77465c8749229c37bd0736f93b5899da9c41c21cd102a3a5a42ffa2be8599308fdb962bc7fc5ea15fbda7cbc1e2958244dc6892ad6b8dc42b1500134f318561fe8543cb89f28693fdd8ca54a28b8062070001f300430c7aeb0f8bf737fb8502d425a7bc0f568cc5718ab990bc67057d6bf399e27ac75574cd6b5a515eaf9492be5b03667949aae1123ba6e8b6efa42efdba5fec67c26231cee37716519d6ef5f240881ea12b7005094dbb0f4cf14d9f3f754957d05952499365c720229807ac67466877fde8a8939bffaaae7ea379cd40540fa88b180f106661f4b462963baec8c10d905a50d96697a3f74fcafa60298d9fd97ad7180297515291bfd25f571292fd7aadbf77225c2ea43b2082c499bf01d54bce407b01bd758fc29f788428c04b8ccb556af17456ed6dc0666220f1c30343f310e92522933f889e2f65ee2cd18a2e4dcf30b9e078a9d549e6d36289f5210f9d08b01050cfc867a5691f6667b25a548f9e50516404ba18ce060e89fb767141bf104768bc24bb34e3aa207d8a1ae267f0a3679f1dae7b189a36b41082a36fa339a645a14f4ddd7c6d5704bb1afa1b2a558580d727f64f113a657d0c1258f8cc4c2524f99c2379ed109d569aa0eeb4a592b2990b0e350158060929de4d884a4678588f51717ecd27aae61d9ffe390717204b1ef45417ea4ee90e096073d1be3c21220a5da75301faa25b4cd4d72036a25c6278c131b046b2afe54ce099f9edc57d04007663706aa6c8ded8921e4b0b596f04cc667a0d18f360c2e0e363e863c5e589338ceea567453b7a1a8d0edfbbb52c6f7b387710c14d64f8077a0289a8795b42a9150416e9c9188f844f6e237c43a1e05f4bae1ac856055bea24c0ffa021fb821e715183662f1f07405cd5b0e5094022646787ff5da4ece2caf4cd7282070c2464bb9ea4cec8c506a1494f7bec5e85af8f0143632c15c4852791eace4438dd6265f90b7ffb7cdfe613360b9bc5f7eb496073ddad8545b2d9aaf4567eca85d89013a2246989aa13e099da3540320a6252e7e8dada0c0b5c43361b0823cc76497508aeee275b309dd61c2480adf6086dab998fd52e5f30ecb735923418d83326b112a80ff5fb4b7dfe3afb662e83f41d2836e9bbacc527efc4bb05ac113e421cc3d829c86ae47d8825a7ab9b656c7cdde9d13c9e01068bca5e74b6c450bc2be7c4f83d580600e9e11d215db08a5e6690552adbe2dbfcd37d00cb908fc7357ea644a846dd6a3c6427ed45877a8b5d1e87da0ca558ece8c82d3a5d044f549ae001ab419f499b383d5235bea5ae491d00432139637163077006d751b63ac5668933b43841b419a544919ed5f203677fa9f80813a57f850c31429f428ebe3a8b36cf67b9e93e9cf760a15fd195014280329d14354e68131e1cb3a7bcfe49651ea3b57ccd87956b12ab935b59e9cd3bdc6bfd22f3291f7e97d3af937afb21425c5841afcac1186f52221da2d85efd29dc59591a7ccef98041ec600c0ff97dea5d06874d6293a5855c98ab4cd28b37babd810b5da50bba48430eb14b1a20fcc5f2e96689cbf7b193738ed6a02953674a73043f9b6e0d8ab8812bba8432be057e8bc7a54d9084a4f09b07c331e25bb9f3addf836d0f43bf13fbe0eb4d8fe401a5d895444a943e4dff4fae1f905ba39f3fedb9283b0a0066cf91e4cb1f5b8638e2e1ee9f9de050c59f025f2893e072320f088eb0c922985cd22efa95bc774d725e86f4a4eee1a1b969bbd28a7e4da101280a8da9d2ccece82db559822c0d153cb84ffbdeaa3e13bcf02cf2350cbf84b805c035c40ce21385d6d21c3b83c55c82d0bcae7a6c561658a41906511f58dbad56d8ebadebde1564a39e85162c2061fed7d4892d870ab376e2343b8f65c7388ef27e3131363948bd4f68618c28d7376d59a19e63d4faa318271ec7b0ff323fd5319400aaa397f97670ffb649e812cce7b293f59706ad3717d606622de0fa4be3f06d4a990c2a7222077ca10bdafc0e0ad4a7817eb270a9ff01b0e279609af5d2979d4445c1b78fdf2c12b8cb259ee428f55f88aee7c9edf2fabbd92ec02257e8ca28da825014fbafb6fbbc684f5e9686c301103ac687219ac9dfbf74bea102eb96d6a212a8470cd30bf85e6ccf16a2306453d90df16986805e8249569ee5e2da3dfb1fef2be1ed8bf798b913417ad7ae4f4a22e5371204e05160dd094d3be9137a9583f1fd1c73546a43b3d7496dfb1f7b0c8a1c96f6a105447941a14af7ce6ebbc05464723f7ebc620c82e034e33d9edca868ff3890a96a3683f388a025740ea68ae2465dee385fc2ea1684256b7eb318c74ca76575aa3c38b9700c919d168ff7731b161c3c26c3920607c99fff367454775f2819f2a4c82e27a45ee4c6d713f88ae3d7491fa4325df3a1128e01fdbfd37fe16b5fd180a9fe265ac50e3825308b7db758685a4204773d6f4f02f1f0353347f6f95c3d370d0c61f43a350341ce3825c2622a2ed50c8f47849a7c5f2c84daf9c1476fa350dbaa5e58e00083dc0000cf0567f431de47f94bddf8b7d606ef9ddb9aaf1302712f6b11611aa3dca09e906781a05f4ee09571359b86891fe023a06d3e25e82c58b8fa563084db5806352751550b7b447ea166badb501750987bfb2fb586499b70d26546f64437b5bbc859eff479f1faa314b9a17c82f8c7055e69b1f8b70ff01a264dafb179304f04c0a756e962768a9a912e6d60b978e159c16b193b661b57334d773e51f8aab7c8512798aecebe492fecdf1aaa884231e8fcc53df0d0e18947314e1c69fa02692c49b81752a1652e523d9f639e6a20f310097caf96ff24eff2b36b43497c61701526c0700576b66ca16d86c0e5f4bda98fabac972a5268409c76c04ccefc0e681f2aa4dabe5855dde3bb84c610b7219bc7057eec954b0104a72a5183af1458ad94ed1526d1d60664bd60379918d8503e2e88dd25b2888812edfaba145c4a3c1ca32fe2aa23bef3b3321033a4c5a36de2d6fbea98be63b66c4f65cd2ffd0e9f1d56f74d4310ef15464aa89a30b9119fe21c270abf856bc0174b84d66c7a9690623da73af6f469372ec91a41f311f4d1d8bc566d18a7f636c6c335ed7f60169f2b761e994653da79badd317ef43d80d6932e81bc48351f09199723ee2ab328055e59265b42f1c3b18c2e168d407304994f9146da4df348a3817210f08fda70c2f0699a998436e8a24b03d2bc240558c7f093cb081cf3b737b7c1a4d63bc21537f7441e3360d301d23beb3b64cd595a2a98ffd8883287dcab92a917a450c32f0457615619a345e4c1a0d1a0f2784a6e65db8ac8c935a10f9bed247428a3a1461f4fffc75fb2fba86913cba1c8888f5b677fac56f0f29b4a434db51daa922c8a83692d0e3c8aeda639d012d1a073efbeed5a50120833c77497067c97b93a3b38aa7b2c69d5488f8ce6cdc9dc7a509f2d86fd48ef44f35caf0601ff828ce79a9bae85ed0cb0d51f950f6896a7042613446e8bf86810de79d92e1b43e58515e46e8e08789aa0677661bcd3a21dcda24548ac9c1e4d937a64b7242fc1a1f5e33aca7c54aab4e3cc77a8025562999a02f1e256a322708ff6f618e4b26bc1d7982cc5b4834b93e7c0ce434c517b9b4ccbc46971e4a7b98ed72c25c8f85b7c59de4ebee48e6b717d5f302e16ab2a1bd923e585736a5600218bb8784d76ef309e97ef243fcf4dbacc4ace6ac104a4c91e9437f4fe160518fd13e7a03aa4378cbe0837935e95809aa220e1c7013c5f64d2218b1df89655793173bea38acffffa8a66a0739dc2755845633d6b3262d92b7575207de37b70b57941375907bee669a2080e59fb4dbbf0ec30f087a2b84e9b42806933bc87ddbd88fae7580f7714c34554fa10a2bcbbc20d4ba43f1943d9b1f6d9c3eca7d536996b6c288e4dd39459c793f112298f356712f4a43ad8ea7f4d99263508f0ece5a4fef123a7925021a10b75d9c9be673fb004c1e1e9013d88cbd84929cce5b6309f470e6b8c83e323b2da54b932d11eaf5606eb52a1132b5f8cd2731bf7bd8cc9f7d148317a4c2129f4ea02d26d01c15c4f0e3ce45af3388fea4d7e649653bc07aff0e55da3da59a3096098ac0b7e740efe62d143bd3d4cbd3c90034f7736caf62aea28260cfed210e8927050bdeefc6df82b66e03a01a2af0502eb48a440e773535bf8b432553462e784508dc69b44c4cdfad8e590839b1c4c5762f1e9e6ef614d72dbb0c21f90ba49d421804a7cdf07926be2dbf796dfda873e6b156d1d30dd2bdbd555fc41e19e0695a7e65ffcac9ef5d916aeb5e0f61c9830fe45142b7acf6048e1982f8c17f3b353a1877e4a3b76f73cc4db9dea32e98cac422e1e895d6bdcf8eba97ca5be49bc412713ae77dde8a212dbaddc6ede3e5c7b34f49ba806e1765dc0aaf07f2635d85206dc3765eb547db455dfb6ca5b32685926e5da9e01d5ae339a179185cb2fd09a517374ee479e0c3efd52409b95bd57b40fc0ddce221060eb47f65db44d5aeb5d10bc65192c216fe566f5a0fecae15b6f59e3388ef76b47a6ada2df5aa16bd855a2109b643424ff6581d7ca065aa4f1fc2a0305fd0ac6e5efaee3e26cb5fbac13bbebce9fcfef242e8aedd191bae65adbabe19570e818dfd94285e23ddd6cd32c170794b6f2e87760745234c6297518d617f0d84ccbb40e579f6ce289232bb6e324d0cba46fdef0af14db7d35de1890f445068321b58322304bfe3f9d30f6ab4e4307f75ac19a21933032ad748768efce39da6c1efb4dcf04cc7838aecad9811b04362b6d3eff40a0bdcd4b1c249159c4a69c0b81aa25e3d420f3f9cf4bc03474df109637295c6ad9a5a5159395cd1784531216de9b5792fc0992374c2cda24c962294cfd739640ad578145bdc3355285df3303bfc4d62e9477b2a85228242f3fa513a2db176e08445d2be2d096fe2687d8e02185d7549598bbdcf3ba250ed81ca9a047f8308fc215294510e890b2e2314f0d1020ca10ce972ffbca778ff0ac8fb8343bde947e7ed9d7348a603d0d0f3ee31d5126867b970e676a3d8566b1c0b9ce50f95d5f8d0fe6840be71e791672265a21888c918bfbbcf1ed08b07c07cc65c7a147a858251ec4b3bf1333a97533ff2554dcf88fbf8c6af103e88e252dfd8420190b3c87ee45d5b3fc11c8282fc975fa57788999dee31b429f502cda7a0e0ae90b460ee3ce8bb96389e96d226aed22204781ef351591ece4ab6f6fb6c21dcfa099b0f18895182446aa66773f8a1c401aae487a03b74e1eaaafc2e8df1707f974fd6d33a8289f5a5520f5e6fc05fea717401995d9b3816490e2d3282e269bdb00c0cb43af5e82bddc5bcabe1df6955dff7b37fa4c261bc0a5667381ad2274d034af99e5a39b2484add9706608824baf17c3046b0b4e65cd9e209b85e02125e398b390d54ad34c2a84647c0fa403a0e3a383cbcafab264b482e5ac25ede2696dcb146edb1a0766ce2563f8b81b6cc76fce68c3ad571f7cd98c92914fad89587b02967c41a933e7bb8683eeda23f8faa8bb9f99b2095df701b7a2fd219e8c6354511c174b167b90bc1584418f6af0a1695ccaa11f15ceb6080109515b0fc82fb26a330da4fb9bbb1b2b089ab5459639020c8eb05296e52904ab1faa1bb37dd08db1fe3e76d3cb1b7fbc2ee5970be4ca6de78f703e93a618ebfa78b9da1361e16a7189920b9d779f6492ba49a79a10011e82d7ac456b09671f857aa328b3431b5931bfb28c087dab837ad82b276df187af680f8741c5cdb323f66cf6e0a4a0390f8d7f9df0868850a09a10b89304a7336dc8af94d446314a7831c7603e334d098ffc8dda6bc7cc7054a530f3fe2e4bb961481b70a5574f62f6e936657c28c1dc17a9afafed5b2e17b2dcdae0378c29422a9a4e6745f35f645db3fd915833cd54904063bc31c2586310ed4f04393083948e2068d6dff6f8b71d281848abdf3753eb4e7ef9f940f6f33fea58429408b3e2372b609975050d53b8147e4bbe9f9552263f3c255ef771b846b0844af834f4026526261eacfb46b4e8ce7393937d778c6ee060e3d54705110951b728d4374d89f324ddb34fdde7651ac6f1cf2eb5e4548e18b5a53284063cf625a0f457dcbe598d3b27b5da775cf914f3f26f0b61431398cd5bfef19debecf7ed28b0dd68f40369c53ea550fe8be274e16c1a8c1c67d63ed3d2405bcc243f9c0e19aadc134d5fa1bd887f3487bce598e423395ffa2201631cf019c3bf43c29da073997f3efcf1178b561df9b89d1cd8ffc3d60938c1fde882932c056b4fcedfbceac8798adcf952fddfcf5ed059f7f3e6ee3bff747ec55110d10ebfe63fdcded7519321dd4f6b093cae29d732541aece8ad379921daa1b7fa75e58a8b3bc761f68128ce827d77d571f4f54dfcb95c941a1460f5f753235ecd0507bba475ac4ee0b709d513fb73eebb0f8dbcede7497255faec9f2194f2ca2aed4589d7812c4faa3fb1882bab94a7db8857fee13425084d544874f62156573f1b60e7665e3e6221c669ac1c928bcac58e947f646d7d2f5550b57813cdc4fc27e6fca23c91fd50d85ef437acb96883d2e3964f99745139aebc2e23dc536f55fad1badfcb9c37a5338709d210c92fbceac185834c884a0e27a410ac47edd8379309afd8cc1276e1b5bbaaf356e08a28e0fcdd6be6cc4d20e5a7ec75044f63487a1e28371f65d539059aef9c03e974431d2deb6058c38057fe86fc7668a693b61e03cc22bcff6a9b32a1f3b0e5dd40bdc3ec6e8c15bf469bc888011fce8bcbe19fea8b69b3c832d2eeee7890ff800116aebbb6824449c95744d9d631268fe4ed044d3d36bc90b55d64061a2d9783bf373daa4bce1d43325db9be6039d1fda2ae9b72b763baf06b39b316f53fa1226325a262c8635a2490ed21dbc8406e363e52386893175340250d8d74fbfff5743916caa60c05c46a2bb011d027869377411e6dae324d2443a1cef6e018988ed14485241f0d761c7bd557b0a8de8b6ee49fc16434d5fceb35deb6ac1ad811b01c90f84954070d3c20cef176578a49c4ae57baa02eb5d93b134745bb7f1374fc85ba515a3db27f44246ea86b47038333278dbe67eb95659d1430ea68ad0f49d98f98300d5d30454df14b3e982e7eb89e7f23fc9113b03043ece7087650d60641dc7c2d239ef0954b763bd21eace188c56ba6b3c65ea0157ca32728219b507ff16e24397dc4d427a199fe80d34ce4d41ecb48efd5ed26b30375cfd1eb95eb1d61d86a13027f33bc00f7b4e7d702e1be367dfffa112331b326c413ab70a98f528d687ce049ad37b3632c37e15c68d25c7ff21850e3a8dbc623e1f10a8072a88d6e24dc6d1f352477d72f5b9e79918f63edd8f65bbd205d6298e429b9c380beaa9692e474b2f7e3be00380d0d371b4f005036e5837fe460ca6212257ae9bb2f9abadac26ca422d4bae6419dddbc6919722f1c134d642e17595c00e2a01af1e254148d48a39150909c6ba9b6405c5f6b50c69b5dda6c2a97e7cf14bcaeddcc762d52e2f7cc995df2de759ef4b48a9b97c5a52973d24304a1d5e6cb00c7ad51376fe5986c9bfc9e8a1c295749dcb395db565b572c8bb7d0d1a4dfd0916e5d963f9856698ac14022a2d5d3f8581aaac0a5ec19a5bc2587918e84e0407f5752af3fea43b673ac6db3bd947bf9d0c920002f12da69b5b2987a7d516fe964647fd1afe002653f7fb1b4f123cc9255886663c7bc46cf337160659bf95c8ad8868dd99caf6ce8010b1eb23a577c5c63123e02da884fb31db65399bffce1ee9f0ed6b1ece0465f07903b4f05a35f19cf33bcee6fa590b75ab3f1bafd268cf900b9777d76119a5f5bf678fdc1b69171403d74b15e972141d3eb3459f378846e0776f42c075174ba7cc2ed42354bb077b0f7e2b82228233007c5119651d14035a1f3546d958d44944d879af16c95869f0a9710fc394f4b02c0b4add1be095aa73fed9a85e1e404212db214e325fffd0f3914e60b64e9b9aa3e4393ca1512ba9577b47beb329cf653b3fff7c55aa566eb74d61749f31456452dd1e41f4b3de6330decbf6567ba45b29f766861fb541f5cef1d0b89766f1c91daddaf72a53d107ab06578349bdeecfd2f975b5b26e6f86c2a4b4dc46a686d66a572c995365200364b183e91714978d4e6612802873f0f9c793327d9517361b7be2d89c113899dff995f9f63990b9a34e045a088cd625ba3ae82f86c5b28008673cdd79230d025a2569d08c87e47a4074b9b8d9e7f8a7c6c4561a8adc0be4fa9f522795adb6b5fe9fddea52bb311b7f6fd296f655c137b24790e3d821f18ffaf86bd146c69990a5f6c16a6b966231809a7f0cc270d4fdb6c0d3b045f0c8c2e0218302e40c1eb30cee871a9f1079a196350f958e8b585f0efb5102cee6e2f10ca9882db743516105b80d612f7028f3473017fd81e5f76bba08b2ba08430733503b55df6c9d8b86644040f84526f399d105f525d511da96143b7c0ac07b351e012f227b59bcec889d38d76ac50b0a55c5977761a07a6c112a1ad06da5f44c45a36cc0ebc78079c39445fc9f5e52bf45c797c9242e28a4ffe70df5c0f96228a1d5d21c648185d3d2c49ce3b03d2095d19e17f3e3bdaad34039c52154121000d675ca85c04f827960f377b3eb85b1fc5ac7ff08c9796811940ed82499efb62e6969dc12e3dbfd29889458ef788593b1719c842f6ae2d08af2ab4c5f0aea08e1a1c90291d82b0dcc49ed29b9b7426bbb5d2e4652f614db3c5a117f054ab243e6c8df2ea514b1f8914740aa341f74bb7f03c5410fc3e86ec19f519120993e02253f8f873f84e9bbd8906881ab5e2b5817f2733ca47c46e45330eacd12e4cee6310874f198fd1a4b457bb6095e526c18d6e15215f6a603c72a19190cb59cf1d36fc8a3eda4ecca859ff70eac58176ac25084e639a9f8ecb1609a70e9c5846e34f8d5e171488001c70499acf3a1bb89614cded3402fce87d4e4dc671856591c986fe7efb18178160aab8a99c14d753176cebbeda18d21cc445f5fab789780dd0ce4c33131b856e018974ad485dde7b15833a509bacece5def520b0bff1b0f8707dfe80598f6e379b679a12b6313b7d2851b413e14bb8c5d72ab17c0ab75805f6380ef92745849af25a3c3328d29ef64be84d1a6c6fca9faddad3d95a8281d6e5fe0b7b4306d3f595632b164ff50576596dd54bab0dd20958c18e6b7c7bc0b46e594ac1c079504de8dd24c776dc9b5afc9a6472998222940b6621d7d813d291c41a0c74d9167137cd83848bc7bf7b3cb06f5b3748f4c4a547de41d4fb9d280a0b76c001254ab650de66f8c3a2a3de01d1b5589abde26111cdf66e11e266d31946ae9e64afff2117d9380e9bb42d041e500a2566443d72cdec67b0396c6d2b2e6efdecb446d39d4631778c3bef479586879e59d7c62a30591e7dd232b0ae402e0e8c57e07fc068fa72e260cda07606a1652ce503424861cc192274d156f2adf9610e664e79032eaea2f8ed288cfc1dfb1086dcb8083774d4583a2e7010b577fad338781ea8d0376dc8327d82348d6e92a97e13f4c4aa1e8d4b290690c6539ba20401079adfa5213c1c754305bf3191675238681e52ced6b15268e23d579fbba4dc512be3ed6a0aa53e43d4194133a6c208ab40679913887866a1470acb594207965ec277545e3f932f2af2ca63e00e1d0c65b524a107b19821d32415ff77b460563cf189283a67a3b8dd1925c19b3ce643d0914da2f7101d8ac495886365cbafe7e04328d2c3276d4426b9605547b7ec663177f5f1971bffb7b39a26830bf122cb6e5f241fc10967fcdf274864db6509ca70017302c97096fce1c122b07a95887c40e94ff61f9b5ddd1ee971f63498788fa95a8cffc9e739529b1f02ab1e892e5cd7f2476c45707df4b40f4ed07568175bcc3c155c7305da0b883a7b3d7d1b1648c10ab28524992e5272e21afe545ca830b83fa85716dca5ad1fb901b9c65115419ece8e6391d8b76e2ddc77e6750a181b3b0ff2523f4a18511cd140779475746e2cde39b0cd6f4914445cd11becc5e0f5347234705567480e89a68e347f9d15391a8d1abd00a9c979abd3dc948630be301bbb682ad780d5063cec9e77cb80d7c5681526a26922f9317a09e5b69ec44670a62d672939eca633205223afca602b98d44e494a747b4892d57ff6ed99442a97bacb9dec6794ae5de234448047eb684f2aec2134775f208d259f016d4a13a318a7be6b87f12f996652f7b52ac4b9afd889191f639c0d935abf27e32797d6857b7c91bf2c2bb9d5f221c0456967337011f069038cf6a6bbf9281dcaa20c63aa053006e89d8b93fada3a584894b9f9ec3bee83d919f32d1dc7f73e62d69c683ed9d43df54210257413149c11da7e3c088ea263526a0fb979e4ddcb7e539733ffdcc073c845f7ea5004943307a75885583a64de9df355eb98f2a2845ae260ad169ff0e2a054a30bbea4d867fbde15bf5454b437a1aa6307fb3920d2c7b6d122fb8bfdcda312a3d17a4666dc341a3cb042201ee513f0c5e5017a76281a8a468d1818e478a778a0191a5f331bc5532b01f4535d656e1bba190014093c22e7334893e00cb12815439e5f79d68eb2c0b9f7fe5edc8678471e97bbbb1ab0887e15f42fd5f59a82c2a5ddc9931dcebf635e09a5494a892668f9e8620f27ae4e435dda01b0e8bfd35ecc2b9182083ea01c86bb3a6df7756ab7225ccefbd6a49c5eee1c8f27cf820bfa2fcdbb73f921fa8d583a93c0f8fe7a1c1f0f6e9c72c07b302c274667b1ede4d769adba1406eaada12a6083e19fd78bf8aa5516a7f6723f5cb100912161be1af95aa3c720ea248e3dfa98f2eb6d1a3cd3b3dc890c5d334f12070ec1405cacfcc1b5700ddcf62ae74abe163b2ce1666f364454d3ede61ec5ac186aec7872fcbda2ee44c8d4421ee41e622a85644f196182a2f931084baa97dfab60e5a93672d705c63f6d28c87e695c1307de9e14109015b836bf90dcb0b93270b8107d6de313e44b6bcf51830c25dfd82c41344080dc53d67ef1d0341dfe92d0e70bf8de045291a27982ee11bcd0b974c4343eba891fd4452ebfd1fa2287b68c322c3f0bda680ab5024da11839e55e1424c789b41a9a5fc50139bd811d2bc6980e91cbffdfcb4ed0c776477f1d64bbf945641469197bbf6ec108e964d1221bab423826a1e01ca2da7cd60a992b37bc206a63e9927903fb0aff6c73ea0379624374a4394830ef6db837e985868eb7199b7681621b0c33ccdacee8ba43a65094a37c77c50c066a550ec659cce77a451c7aa1f1a976d41627e9baa6ff48c6fcdf4d249bd39b32a266adbfbe5ec861d71b6da0082f7cd06c99abe94b2405f6694e6d1e41f83a31a065ea1d5d341f2ef5a94e4198957780848c98dedad97e2a50737ca7e0ad0cd85af1f427f973cfba2b4f0b51a69223d133ff88e059f564e45a4b1855327e6f1a0d746b44af49d87c65b47ab72f8e2df3a6e3d4e4bb101f5839c2e4b713610232d52fcf1d1a942c504787d7348fb252e8e541331dc81cb1c1efbd6e4a61fc295b9e98ab23dbe34f8bce40e0d78b1ab4eab4751c627bf0c82176ac0496523a46636d5cd4c0c793eb08f2063f0a07f29bc8d4ab9d8c0d1a32c4b660c5e215962146a1b3a93a25c000130e21606a2e0ef5281e9ea11685cc4717505e602a4bb4be1a537538f7df0f85beb989d70df8ed21e4fb5e7636e954a17a38f906e935c3c9d3396cf9f40b05d5f6e2e7539898c7019df2acca50b16f1d21e314426f1bfada4aeff695d1776511b68ab016ceb71ac4157156347bbab4722377adc451501e66f475b5f3931c6d2a1ce01c6b10d46bc5c43ab1e1e036ddb37cc9d5ba2280d5745614e5a9487475fba1d374514b952a5fa2dab4a7abaf87cda1e30c10235e348378cb58d667428cbd1be9720c20ef36953d83b09b52964a89b1f54c5a880d5897653b3a21bb47ae6618302af98cbb536b3cff6a9512c3ba927627a2cd1274abc76c03ffddcc0bcbe5e6f09380dde718998def4aaa83dd61547e0d4e89c44f5a1e1b9490157224204a5745096c19478a86b094c2a7ac4dbb73d742722490c3b45d5f3965381beb42e62e57fc2d9376a803f8d6ed1ebfacfeb9a8997fbf1005af50086e18cfed783d1f59cdf409e954d7f4b2d90f8eef198e4ca459a9fd45601eed8a849b6a80cf3b855ee2e0941c912a7c5b8c4246b3bfd0bdc7debc757ff75e4d1105ccbc8a14b1a3eb452040229b2f7ae2ec64f1b033e9c3d34d9128c0851f86cfffa010a890b46ac49aae4f17ead58832245c95b4288e949cdc9f65bbd81e0d0f322b5f25a365c0f354d3ed522a0343e3fe31d7e6b694c0b25a2da29dc51dc1715d69fef4bd66df33f832f20910066417dc9cba1faa4aab90aed5d37e139033c4d048a48f8ae4a71d911bc5e39a41209dee029601b0151a03734122e62e07bbd3a694e2549af1742347776969fec1c3140621b6c7e50652aa2d47b8c279d6ce959a332a70c8f8ff24465172a49289348a9fbbd72b817a3f4adb29a6e4221153d52c0e422a13197e2ef29e8f2b6fd418aa60f4167f467fb89ce91ea912877d659b7943af98a8b05c37635f17716da36596daa61bdca015e34a1d5af5856e1ae44516402a3c53a7a08c60c287eb43fd8dccdf22636529c2d424e3ad6510f7a00464ea3b5d46c404e084c59ae75c24feeae7b782c2d57298ff2f6604d0cb3d3f6e3a8a8ea60ef6e5c2a5fa69226f8cb9916fe4f354f213d9074824bc52043a9406a312e44d3b9a7dde6fde737c60b2bf89f5885237d4d62857bc6690c3e6110ffce8d20c8924979621ba36f93436d91caa0bcc32ba825289cfebf50f39944074b237b6e7b74d85d666919b7788feb8f74a006e812d851c5266d0d79e5971aeec5d7831309cee953c2e704e8a75e0e7b5c8d33534c32472b93406686b60ac1814312c6048efb8397622a96a69cae3029085bf62db044eb0ab4a1d0b21b79540a026dc736cd7840663de68757eb1e4cd381e8a51004f734c5386273ec9fa387155abff2e32402b582dc7c30ec9f4ccd6135d355c009e11aaaab6f10fbc0fd785593727c755af4b34bddb5786c6cdc790bf58b3c1a82e784a8940d6355631dbe9696b42b6da6c0ee2d914cd193a006c74c91a6acd8ae35a114174ea5d5be7aef0d6421de823b649855961cf643ca4078ef0ee28f67e0c518702238685f745b705729bd4ecd72acb4b3de198a59274592de761c9e87f2301c1c9576d3fdf027f103a1df5193d85c2149ec0bb0c7812ddab1c5b926b627c6c616213100bad18a2debac618525740e8ba194b38a279135fa30f16fd82631079446bc576dd95833d6d0df49c3520486c284d07237aae4288f6613c9fcd60e3be0bfc6265c207a6f3ab72962e91fdade2b845b565bc420943031cf93366c3c8bfd492c1dc4c506f54d3efae01b023291266b80ae3fd090aad052385be34a7b6a0785dd1a0657b14362503c7601a528de7bd90cf91726f4ca80fa180294a37fa919d415c8968c7ff898a9d0be11af79b3e0f3ddd681d1f580305a4c70b1ba4423790ac62e29aa202aefd1f2037db433958181974671b15044e6fd3d611cda00bb44ee6cab4f694b97caa077e940ea97528cef2ff540dbfa67f89ceab3b8c638aae182a1911102dc4ea984093cccbf62a08c0b76f1fcba45db2c26ca71acdf60ce69ab609315e70c9fcc6de2290781580aeb03e8b94d9a29881b7f3de61dc8342140f4c54794400360c0f7fbb81e5730f943d0736543fdd5e07cc6a0c0aef729b668551efeea5e28dd52cd9d8dfad4fda5e7655e3fe50899269c926613a4fc1de9a1072126b07d3e1f2896d8c7b09c977cf914bac26f1a9bd282261270cb36f982407d84a905883e632db36e4c841e8a1a289335925095d2479f057a53000ec45367214cf711cfd71b96f1472f19e438c4cb06050160801cb8b9bfdd8cfd41008cfa9134314b4ecf191b41f5195ac033fb97f73614048194f31bc7a10194d138383ca360f85f07de633e5fba5d0ae505aca8ac5c16c2cbb3cd47d65b95cf69f13e703ac0715e00eee90757b2c24ad7991e0816903f726c419edf523e09fd463176990df1f479904c14f6448f53f37407f80ee6f9bae35db6bbb52c17b73f940cd866fddca730be6d2953e21040fa8cd6dbefa2fc20201a2b1999bc67309d30226e766129d0505875f1796872748b67ac79dba7dfdfa16420388b94242a8865183fa295ffc80874618a5e3abf2ccfefc46f2efa6e678ef19164be7cc3479acd0297ab1014064320d3cf3ae8314c996e73a066bf1ec75fe6766e320ac06c917a98f47efc0aeaeea4de1bcd5f83e96175222af236f35292906a65c6798c8809139e0d33854a5194cc2c98c3104ba24cdd6f340678bb1ac4af2eab3832944570c2a8b814ceee04951fdb0303adcaf418c578cb0d8cc3742f3ee24493af22e7596e55235381cd7bb044c0e0704b1140f624617c9ac56ac8159a76b0ca97237e581b8f30ae877bd33eec1bab23fd93278b8f75fa1dc59221aa96c6a32b503b1eb74c7092e19693ff39e8951bc0ff516b0d5adba19df6e2428639787960879e7ae5a7ff2f2e29792a214bae4107f36f3e2f612a0188ffb36659da7a10709964913edfbd75630a5c860b038a716e9b86fdc8799176707f457125fe5b85485955a3501f089637a38a6cc5934d012d31bb48e2cb28a54d6012abf35f3793d7236c1a2d2554a63c3349c43e1c912d42b2cf9e8bcd48e682e3824735bffde9e9e27b44b25e470a75cac4f7aa9368a3d2163ce6e5209d2caf6ecde6490330f92b74762c50d0509720c452ae08bbd23dd16146018d516825bf06f4cf2c5c0c42322915d061ded973dc688cc36867a67d593d0a6b93117363742da3ada3554b8b143f430d309fe8560d862df63e3a8e6e9ff8aec3c21367b3f11aee987852a32ebde56af77779f14d306726d8d1ebf70cfda2ed59284f56f3e5bf7930510b3c9ed2869acf8bdaf45042ac8c8ad1c3df184ac4823024351649014b7be4428ffdcf0ebce3fabe0af1acc8ee771aae9dba6e740bf5ccafbb46fa935b6de57ca4336cf7971e18a03849fbba076d3dc743b493514440875a803a764af246bda98ea2be6cfd3337692d5f6c6d4c41c9e9303b4189b6548e716a4b62e25361af376841ac791a9617fdad67d9b43fcdf7c6b37e1369d5253a2a9e3dbea19dc7ee40736379af9c33a1df7846ab92899f63d6cf056964c44579081a18d68ef07779d4d295bd128077252886a9c23ba8a7a0e9b99ab4b6ac023e1b99837c9eb327c36cc066b3d32f4677497583658f2476ef7ce65a34c63b0c671249d52626627076db0dc6d857795a8b23634f3273528b61dd26bdf18b146afd05fbd1bb056956040d7d0f38dc9f638c03132a0ec4af320dfa2b612baef877be166827a58b920bd0cf1c1aef035e30ff3301c73e20f5fd3a969aeab3b9d9b52d1ce42f55cccb8e7882eb25d4fccfb3d8ad864b60016ce886c95a0c754dfac37b369bdeb24f11224a076b0559610306aa062e755578563765bb93cddb71a54280dd4b0f1a7c83ce235b680d59c19ebc5ea2406639b5c47826e8d082aa4f8d2bb86e92fdb7bda3761a4d69f2110b770ad6a70b7f6f4d1656a65e2aaadcb907ff1ebe1ecc80bbed028c326d9681bf478e0ccd91dc6f8fcde73d6a6eb557cd35284cad5c47da2be7bfcc11c9718a2f66b89b0355c86dc289090b20f8ebb2cf74f40ededefaef157d6cec14c40a34617a6749bf2af438d355c3663852ddf66ad99ec9c26cbcf58d5e2b4569f24035c832607e1da82e41c34972ccf0bda0701955bff117e2afa07627f63d25c2c7d4efe040cc3cec05bc32b900556d55df406fb283fc5fda12a8dbc9b4a6ea1839a7a839bb9005746dfa5835585b2762f4f3ddeaf8fe7cfdebc3d4a97d5e8fce4f44f9b312ac0e1b13ea38e3c46001972bedc7e6a2a79f63880a272e26874da55bf3a63556f726fb37aad072873fae1926a70fcc7b090cd8748d9540ffca5e83d57fe3d660cad7b5a68be761945506702a0473ba3e9888fb194966882021dbda63db70680e6c227fd0bcfdb31b2a89eaf59239d6dcdec642145de8227b4eb3e59893833f9ca8de354b8c16ad15d61208f4dc98caa4723223368e9c54d221654a7ea9bd3dd267f8d0652752ea1ef482d1884fdd1253260aa65282b03d5d275a6a4344c84b324d278712e4bded9f898a9212444e06d38a8dae53dab2fc4dfd3b525b6cb4b5dd84639b5a463c22eac4eded0128ef6a8aed3bb01d4dccf2633dce03b8e45535608252b7a833a0b1cb227e30584059353ca690b107d71cec8a6df5b049e3a84783d48b20fa8af7f42b04ff4bce392549d0eb1bf4986b64a7003e9939ea0a9680f8cb62087424850b1dbd2964e3de596a7391d0baf960eb904976665787fd0161aea1f010cadca6f696c3480a4ba12c768bd37c62593a398f1bd6b7a46fefb5f7e19a854b4bc63b7f0bc5bfdfe472671c69d18931d625a0a51a0f16e77c941de56248cf26cfe1ef8b6b2ee37438682909306fafcc73c8f3494a6ce9f04f3c772071013cd6c6316666efb9f2859c6e05c223464503bfa30cd077dfe342ddc1550ef8682a7b9951bd2ff291d4611c19a46b2096e6423d2e0fa78bad0ba7c07400203a01855ed595ad48b305521624bb3ec320dc96dbd0d3175fc8881dd2aa0327e682dffb9739b65ad3343b0a9415d956ef2a11e1fbc1eab5e827d8d1778d53ea39ff51e1fc6d4d6ec22081924b8e0a1afaa9305475ebd1897fed8ae60227721751f938280ad31b2f0083c1a3f6e7c1fc70a3e30c023e9c9c109a7b8ab9f6b9032a4f409d7aa610bf2566feba243e3ac0ea971f92ff5e2079cd73f6f9f3204a75343e1600c2083e2c91157c16908327c92356acbf6e89af46db37018ac62924f6f65b5857b9a6142bf233e83f469af1bb36681554e2c0e95f59ee459dadf475509e223b361ece9bfb9118a56fcb55a8d84bec9d1d5a22d655e0f442ff5d334d57ffa1390d0bfd1f57de07c2521d6b3b6eb40b2c192565ca49c582163dc7b6785707f76b7b4f29c24cc87710f60cff99e0ac571ed7b6fa69dc127ae370dabd8546a339b220435866ad054262848550f454cb0709c5e8b92baf559d186206efacbb7013b56401217c9d60c713e3ac8e129548476c7932924b753a44a240175066b53d9a992086dca13a1ff0d88093a803ff5e823b899df7b8ce2190d483941b0953f2cbc06300fa5e053da8ed49bed061b93c5e84c08f4e75096a87a825c611a91ad32218cfd998c2e3a9f97d7c9289624cee0c69f87643ab697fec9cfa7ba645252cf1c1619fc639743327abe4967c3a3b6ccda156834edaa18e2245f89d9b6339915311761fae3809f5f895985b0a82aa7f68f1aca20683b27735abf0a5b8bf7eff7a8daf70380d95be734199b7791efacd7f0afd95f5aa6dcf6c5c17c09e4256d4f7dd782364d6365c9fb2eaf6d4d1ee42cbefe7f664efa662781f330e6f10b637b9d9930293d7ea06718667ae6e3b25517f7911a58be87e8f70578031d03a12f0923d1bd49b45cb51520c64798fefcb9ad858a239e7fd2f71939df7026eb03c7bda41df097f3ea132aed48e546f003410ffd7349229a3374f41f3aef861c435d8fb73dae97fe06b875c49743940cdf8f581b9da4344222453af5290f09d31dcc541c36b486d573f4bca642d6bde7d9e08de9a3a085a72a685b7dadd4f2f5504dfb79ab5366449b6b89a704bfcee20ffbb953d0420cd1e1ac35b8bf31f48645fb56c5a344a380ce8d7e590aab562ccfe0d92399ad1afe266a21426b9511e0f123d322b3fd2c8e4b9ee63c7b94f53d8f2a4dffa1dd285783fd0a6c5d06275afc1bd513e47488211fb31447975fa98d2fd6ef201542ec9ba374bb2a7119ad3dfbffc4728e032a6e4c8081e3b5a5d37f44d474dfbd2f4e1efaaf3625a83e0d1a907dca535ec753d3b8d5095958c167c3e6cb8178c77e4cdee7e4d298cca716c08bb4f6459da2755e83491782230f839ab60bc7e775fea9916ae2a00a4ea9f8f7b4166dd8b5b17cee20880fe0d6023622060fc62dc32da1c98e01cdd4f2c5aef6d49a60d84df65aff718dbf7ced2e19274736073007709ecf6dbe1b1f02a1dcfee83fc7e93c3bf266aff5d775c5c4e7b105426c6ce15142ad0662143c5248ee47ab8b13aef4c76e37aed5db3290f7ad7f64c70aa4722466118503e8043a76060c87eae05a7a461e041ccd5991257a640ed29ddcd3cc4acf701295945b62b146ac0214cb6605f57434a71f753148d52ea5db2702a755760a9376a1ff6157577efc7f8d6bcaf700ea6b23da0c385395aedba13bf031919e253110eec084ee6946a6610a8c906ac0dc626c381dc22a79d4f74480b902e8bc97945d871155c1743c5acae57ae4ae688904633ee6aac79c926232e9cbadc19c22815ba012231955f1cf1978d385755292b0f245f78ca8314a8d87790ae2fee198b845926f7ad99de8f4a06903374ab928ae405217a29425df9c56fa3041d76d9c8c6b53d7edd1fd1298e0ab0b0d9a7f832c503b52e38734e6ccd7041484b843fa2114bd35d9c1797b47c0139accf08ce792e2a2ee37c4ba4fedd784ecb53d36123c08b47d32e2f63185f427e53b9595f686d23e8b76fb99f156c4433f9565cb2f81948c639b505d92315875a28d3ba3005be9ab3e458ce606ed5bfbc6d662272710d897cda68ddcd96a4098661c7bf586d4b49e938a8da3c35f0dea61a15645841a6b753f212517bf67f3157856fed92df1b90b877b9951942714414534975b5cce9cf8d654a6fdbf22672756ebc5f7045a51413b487850a7166afb201dc0cdcc977687922cc613d899620ddebf33c952e766842baa0cb60c61fcbacec41178d210ac76bc49c405336efcde0b3d0304ca586d8c0455b8c8b1256f8f6676db78f93c3eea1ed97c43e390fa824b44e48df88b8e87e9587e10dd552e55710de1312164b4e576035c94dc846621bfbc6785df409f6c9bc9c5605f802171f2a31ce553accb7727211f730e32b9b3c8d3fa4c49ef944832975645a1ed336ba689ea1d2c4f3b0bcc3e8815bcabfb1cb17c7ebafe0b60b537a6935c127f1338570aa506917735047b28a2c3e06518e6cc6c2b8e836e7b2136cfeebfb4136758a2805694a5893f1fefb6aa19bceaba588b377a9d270da05b09b8e36277418c8a6f073d925b47314ee2da8d01d0ffe9753f9314a47e4da42af2e03ce2eeb925758d077334012269b3294d190b387b1d095e8f8c1d5715ff0688f293f0cf7c6340306aa8517d6ae1ef27231a5d1ba49ff341255cece51cef0b0afca40f2356fc96e488a714341e7fcbd2f3f4fadd331c1e2214dbbaa55ac7434ea16b600abe3a44afd2a53a93b9d8c7b586c39ddab2f6ea6817b4d836019e744bc90382661647544ed3a81d60db560e5cff0b3b2fae307ff581c7c5fee60e23892c2569ba605edeb1e32d83da6216a311853822f68e3b4b6e8f06755a833c5161bf3570211ef047e9a9eacda7bc53cf31bb1e128c3a2951363837728d73d3d565f6abbe0311ddb07dce53a69c165becd9bda78aaae5b9f76a6dc8ad4c4f5c58cd9489fc291fe74f9c18d18339f1b1646e37f6be9088b4b4fa7c7fac2ef3e28ba1f32c4ad5bda0768f6f9c61b6c89ecccb5c130960ab03104dc994d399a17fb2f52067f7487d9d857c83880d67486da4dd8abd01a59c0c1a166e39796b0dbe8c3ff2fe30f85c74b0b81206a3d84988f73a7952978861d4813cc069e22bfb455e8810cebf046984e21e4ae60bd7d9ae697bbade46117c4eeff1afcb1d88133c7d0e82758b8e52d8a8480a18257e7feb5ddc08245a69c5a4b8517d0b39dd05b088d83e2eccf5feb0442e7f809f95f044db36839ecfd36cb231efe6061e4bbb95ec8aeb3d75ae77728d605c2fa5a52e15a50e179181f444dae3c996d78dddcb6749ab9a27501b3e64bd0c7fd218a4c50bbbe56797bdbb3f117328a35532144d036fb1217f1a7f733dd65330b21a7576944902f7de145027ea9c645f6ea434681eeb008af780c12679644854dc6dbd727f2399c25fbdaece4ba09f9c3fa46218ab970d5f2b59dc95ca738cabc95104c21c251321377bd88b768ffdf74050bcfdd33569e14c99e2a74d9e909e843b65b87e4145eefa4cc29b278aa408632b2898ea6a242c0d61925f35c13c840003e6513b269efc5b1fe8dd06e5783a5fc91ce0ae11748708df64d1cf9cec8c59a5f4792da7212dec0223b706980bb85af6cf22bcd14f7f5f65dfed298af7d08e25971117f6360d896dcef53c3f19a83a7a62311627ea594089ccb49ca04642200f9fc56cc74cd6a3f9015b680157d6586dbb565a199407d864dd2efb1714933e4e18731217f40211235940f583ba321ef3692e8e6b8ce10cf3d08e677b1df9a253d7e6dea88d52233d546431e85f819221ac3ab337d433a0d9275d9fa5c2c6aea91c647cc557338cbdfcc83a1bbd787718b71d4e86ddef0eb85aef4cfb090e768e61768f144aac294a3962590d51c3e9a098ce15e3baf6ff8d955a19ba0c361914503e0c5ac4f806299eaa50d885423168425ac35b9b6d860b612aa7f8308c62a1557488cda6ac225266e0e5ae7cd432448a1f877e1e001d558ac1bbcf1ad1504f0da8c8701e7b703ff99cdd8a9a4f823163ef3aa47a5d7c39a1adbf3286770a3048e5bddaa776342434f12fb304b003479b5fb3380f054c40c48515340f7b2550bedce50a066c3bfd25501c7a046bc28cb76e0b7d183e13409a23db3f264c4c796f8f6bd620773dffb3e151a51035180253addcd018fbd36c674785b121a15e8dc19f0378870fc59687fd6068caa6274a9e68d25454ac5e5c5450d42791b6cc40324a121e00ca133568b17a1c5bcb6500abb638b6f48013013931f40253e43bffb84b86aca575e7d54e60448e082496c45ab93af811732da56000caf5ffc9e6734ff633a2b348291f160ceb7eec68d9fe68d75b0564944414b4631089b28c39e5724d870562f5849b0f0edeeed055dd8877800cac1bc9ad7cbb210d4c8633c22c8ddcea86981792443131970d9f6c1d0a50eeaeddd7959e3443eb4564a1914145d7fe566a1d8b12344d5e587b5bdb6d789616f0aed42379dbc9a994bc8a8e7f3dbaaf3256bbe19db2f0838ae5be607ca906051f99484dd5f5bfa1b2856e3c70eebf3fe7ae604119701cef2bc3a0ab4ebb98c90d6a03c8b892c90d2e3c79b0a65be57d996d8d6af69915dcfc62711253987512fce952f129361a736cbef4d21247afbd02e64d15a5e89202217a8c87743ed573aba66423c497a9df0454da771b8ab537d95c9f346e21a28904c7265f7dcf3b1597391bc1b824c2a94456dc4e7c95c931a757203d20a0113bfa6cf2bd9726c030df4cf8cbb48cf99e0f988121feb8120cb8e5952b12b57b9056bab9d0c13c0c670aa2a17f9faff53729e88c7d077c3075f35cd704e4c673dc7615a941a6a65c79f8dc6432cde77ebebda3807545cefdc9382349f88bb74046329e5643177472c29bef04dac20717f2c4f8363f6b72be75f07eba50f0b7909b85c5385e7411cf95f7b5d4c192ff470b2288a466037e34c89c073a5927880d273269943f1ee070a518df4058217d93f2d01078e08235ed99975102dcb1195a5cf07cf8d8af1496bd0d30bdaf1725d7954d22a4a8bc87beaed7d6223e09370b98f5c8dcf9f18f65ad44089354233370a05e1eef4b982ec2d2a929dabf5413646fff0cf0c5fa8249a5c39dec71bfa492c4450ee5fe0af935a776ad4ff3f31ae8bc457adebc3d6bfc4f8fe37ad0cc330a300d5ab9d3698f3ebe1c3b03b7bd24524bd5e3badf58e0532ae9453f37bf7cae746303bf1e9eb8359477b7d138a763157d4f44ac4141e6f1eabd3fb1600845c1ec850c758852bd69f3948fa6c6011906e248ea1ec32e2a02969620d96e1c66b506c87ff95eb716f745abc9af165fa1a081a35a968f15db10836de023506a40ce4bb297fd67d9d5b2c1fdefeb9cca43bb8278f87bd483e1f7002030bec3cda9e1a8a17f0d6213beaa47124b5f01b47f428c948f5f9dcabdaaccfb97890b168ec0451ab22e2c9a39a6cbef64f3d5489fb94987cbb8697788b57b99eff9d5ac3b90779317711d30df022c59e3f116e43166a55f4c44fac41ed3fa4ff69e424ceabb7cea54c387d28291ff5d47998ec2a620d38670189a17caa9b2fb5702f782a6047ae39789a90cb4534ee91a22304593c3a24109d9b654e2176d9a454a69a8ada6ade9d200e93c4c1ce70113cf710daeadbb18746447be6f0e939de68b43bb88a04d17e1d31a569848a2d56a21c4b29b383002e3544fed4fd03a6009c1eb898feea6f7d730463f4aeeb3d80249d5867aa31bab936451f46527abc6ac3cec7b93feab3f0fbcfdab6bbeb1da228651b2a602424bd58b0154ba38b3b50569adbe4fa534f3c2348324b0d3f560dd95f7b90a6e85d3ae0ed85f6433db1c42ed5011f29beb8b01142830a840a1add22660e2bfc8aaef3533e19738d0697aeecf383b6e3b481b77e2798164931f54533144ecd3f615225bf6a21be527e16b233d98b3667990811fb914c99604f477787dd95f350daeb752dd38455b9876620ee17b2dde8881e594925a348c71607ab772a91d5ee351693a9283536ace84f5cebf1d719bb8d082f6d2633d2118095cc57c8e73f3ab5b11a53d214acc1421a3d92a8e305f8f8ff28d644433ef36a9d89b6be58489ff03e370e5a43435678ca5d6642751fe4e2e31f9d98a858d0d33f51cf9f3bac70d37c5076176fd2dcabc7bd6ae684bd41593dc0f60dfdd89628fe7d677b2635d2f84718a432ce564eee7c1235022604d98351491c653c68941328ecf56c9819f6da66c91f629e5a049933d2dc1bfbaf2632ce9f7c3172ef371aa8d2b4db3b8ba14e989b3c32c1308295353c9d0a2763ed12848dfcf80dc77bbec8ab14f8b4dc668d6ddd565890b285d9365d0f2ace847b2a579de643d77a7be97fc1165bb90a45fa59a6236c16f5ac520332ee409051b41ef9b78c820fecdf49fe556497d0d70f8d05033b90dbd83e4634e2e62ba48fa796fbe271cc2eae22ae088cf9b1672df74b367a8a94ba23201e2d8b33f48f993d6104512e45ff6377fb139a669725fc7d4e1eb79f04d15d2266f163228f83c2aa984c078d2894cf2d6c337054267d29dcf225a79afba37ef9edc213821490c036d2a016d460efbfd6d5f2b313d630813e442a9e57520b954820bfc38c00a342175ab9a4cfb97ff8869c52257fdf275873343297b08d1251dba70ee16d820a87a3abca44076b90e2387d5e05e04d48b3840b11c70fef162bd63b049447efc5609fc2b06633944af42937dda3a6de0de918f11eb3f7c8855e5787a77dac64a6803c112584df59a2e72f52b22256e858f37b3334e9817185dd33357a4af357fb131f9036760df609d57bba75688399d299a152140e64795b2ec05b89cfd69c37a1708b301c621cb1b4364a2140069b328cfb49acfd494e2014320447677907f7192bd71ee90f736f9dce0c601744a4d153fab532baa4e7c9804a825685c550ad85b94f57357605d077af5e05e831cf25162ba5fb7e4488dabdb042c674ebaf85ea8f7ec0ebdb3b1a70293f49246052046fbb41a510c908d1f0857f112eeb37351480b7a82197aed877036c2f53bd768cd20e56099ee24f8e5c78d525d366c091a392f7dfa36d94611d0e94a657d87bae915d5a57cd7c3ddfd837d7d12abe8691dd4347c911269902426aa29bba13c55e44babacdd0c04967ada9f88020a102ca81628cf7ed035b860bec9e0b168ff1fca88803c9da1c6a5a9d025b2d1aaeb474dbef7fe9257f6a1505f60b02afaf007a3ae034c9d351673b9aee6a715d663bdefc5ae4191ed9a4bdb7d448df8b07ffa4d43fec7ba459dcd281a615a383fc7d86a79aea5806f8cf215f92fefb04a6f458d5c3d3504eea9cb64d22aff399daaaae752431fb7f63e8a6f170af1dd0d6f6c83126bea88d6fe9859355dd6de466d257dc2834571105fcf13be08e0284999af226f0d1a7e431d78b7d7bc99a5515add373d698dd0dcea01150312fce48d4701e793d6d943dc9c70e615889f8a4b46ddb6db1932512ef132e71dfe77c26be37dc67e1b981149b55db866e43b569009c79a717e80e15b9149b502cf173b8c1e449038d8ce9dd369320c42f07e33914d8cd757c657e5aa8ece8ad3f9dd830dc36a2c2722972c8e5281e918d3aad52c5dd3f65e1f7ad1a5c8cf1f0427658a046e1db6d5e1ab68a7cdaa46466936420c0b82bc7ab4859a66b99211437a10774e6d865c3528fef7f050a801dd3c1178e64b3849bfbecb013dde8847bd4840e3fcd7237089824c80e08d5280ea9a091536e1930bbf300ad4d33a0798e82e2e0f4d635feee8ee8400a9915b16355220134f95f9eca2c3f2e49acc8c299a4a8194db97beb9dde95178e9ca418d8887e0bbff4639838872018214e342d87f4d6a36c0da944642e30b6befff5635bf5bee70b2b89bf66f5d14db9e49a87c26eb12a434260c938a191f5c3ce175538d7ffc2b9f725e39ee10de75e92edddfa09d7d13c83dbe9b5351d45a85fae5722f66be218e8406636c799b03737274d76d5a6aefb32b3a87804a17922ecdfb714bfc75ddec81a5aa8254142eb6cb590044c06618b7ded48ab2efb1d67dd1ff434e57983a6dd9abbb6d651b49333ce84c7d7eae0267522d111ac8c3b67bed46a637d47c49e9b3603afbc92d6f4bbe837235b40d2434e1ceb773e74c1f905e62d7a1b3d925fac7ade285244b76c931203d92776c46a868d2a9159382e4ad1a7dbafa6ae3edc36e7cc0821dbe4cc118c905206bc92a1935454c0d0c08a027237c87c0d3ea136f2757c9d667035cb93ce99c3b64f68bd2316ea15028c2759b563097efcd9da2c358284a534e1a10ee4d24d5cfebe35fa2bbb9740085b3f02dcd8062ed7cfd8e2c3103b23746e1a53e2001177d0c4b286567ecda6dd0b088fd4ffed35a9cef862c71a3915355cb3d6ec49df2a51eb7275da9e9cca942e0cc1fd32343e3661fa206c3ce7404e8541ff7329aff818d47047eca368bb68822043f03088a2dfe81382e26042513aa8acff9c52c62545f84f87766607ddddc81c78318ee569df4590db051ac87356acab2a0f57b8a7ae3701b9be10999714db4cece00b0db68cd632b9f40342250813a4b6623ecb3e2f305e5bd8968e0b835f6a9f662dc2aa690b61fb6cd355f2e4a9d682f93e5423723cb1d36c662417e4734276f83ff8928a7b6fc5c1a0fbe235f9c29b05cd1035fe980b9fb364386a15ed53a963283d859e8894fa7613c349b61c9c316c3a4e1b181b462c09a8c939548609065d09058e439d1c790917b501f89545b590a35ea0a8a8ed58bcafecea86e6bce197ef37b0d5afa943c4ec4d30b54b5e4551d194292ba2b32117f58b6f474b3e68c9d7bbdd687905faaac3ff6d3badeee8db04adb6ee0718b44d4d9a43e5d8ef667cb41ba9491a58b6ad13d9c63d181d772a60cd56ac690075b432ad4e96e8e40a25a2629fb7669de93cbf4a01f94ee59748c539848a75d0f50babca2300823841ec8efab8d0ff6eef3aac82aae8419020d8a250415a269ceebe513e5499593da06c73678cb5b0dab841fb473ed90102ca2d7e57ac299aef53e159ce5bdab402fad84352b87f39bb7072cc695fb54375762ef29e6cae368ff03bd617ab10c0bb2eb8e04c10bd49ea1c10893691b825557948d5db2abb44b0272c37e8ea0735b40c13bcd889132fe66d6a87956a4e456ebb36ca65b570e5dc4b4368ab298e9de6c4ebfdb5c1c11b1dcafe46202f4c55aee356b424964bcc2673c5531c6d38b6eea845c72d4e614edbb4a5738621666fee74ecaa5c0030403cf9e958aafa2a8b2330a69db8a3343dbef5de49eabeae054a37fdc72bfe38ed8cf771960a73d72683a608ba99198ad8536cfea4d51262a1c328c37ef8fbfae0e1705182e2ffe4912767c055c5430f21997c726bb77920df39913b492638d90612f0309a8f5f36492cef85f74a1852b0f255c385cf1f361c7229a9d105f95c5adcd35e2087b9158b88f31a793bcb5ec55760e6018d456f81d58690c9dff33c33cbc89a1a59759b490a0583278707adf3e93ebdd1cb970495375d59b42a7a22bb4cd701ccb396e2597e83d0819d0e4781d9a79deb97145a1890a32d4696faf297d9fe486526faf7420cf4f348c45cd33105ef83c577704fa3403d7398980977eee4c55e4a9491542b321f7bb6049ec70562e89cd4a652d62b5953eb0166f62d6fd4b94b1955a18150f7821ee2df0fc7b1fa04ce475d6dcca6cbacd49df39f4071a3d71188121946cc8b5aa5738adb64c2ca9396cabc197e4525667016747aa4a3beed3037f2e954f8c702376b40d484d8ee7deb1c191c97ff46253cf4faa2b1946131a9fb8613ffa42ab8c2ee5bcc991340974db9ae2352cf0134837e66d7059467404635dff24828d063f19d6a1bd69d8130cc8af09e8ba2ed67bf5a37fd40598b5fa9496f995c916a00d4bc7493092cbf1834d04454200192055c438290032252c5d2e4fe7b01464333b1963fd569b2c166ca21b4a2949adb4e8c6e212816b24fe5bcfea80c1f259b9644099a9d50c5203257cf9d7daecef955e61a565fcb5b176fac194b7ac9b93cbc72e7d2ddbce50a23f2b8fcc0f295ac18f6e9ccdd27b26764244735979c56830764433fc411a7702c44874e81ec260888dcf613858cc4e2c2e7acac17310fe247f3708b24a6b67e5d8b0dddcdc479c6c920a6cbb757c8dfd757157899910b44b29b377ba7181fb61c0b341f67790dac8521341d65f516d1ac0572873b5c4c0b26c47d522927ce924d91e32551f224eae5377903734552272fd971346e76aefdf8cf1084534e709e677b2d46dbd4cfeaafdfe75f53b3e60b67041dec483b4fb1bc8d079c43223fe3bfd8eb2fc3a5b3a2a9efd9e2610436621558ee5cad7454af9e1b78e69f75e6b766f8c31b549f7f80a284b27a5750b4fa38034f9e14d1144662c5d8a7d182e7686d4f9eac7ac4ad2e188770ee8c2d5df80b6a51ca0660399b3ccddbafa70ab0168f51e11bf7349e15f9907effc042a2d7a7fd643cd178fe487f341683549204737dd1bcba23088288bf20f24ba21c631861a5613c9486259ad682cf30f4e7bc318f4bf2e02e365010fe3c457f7abbc6ba2c2fdf6eed6613cf19b023d6c7e663ee8167b74b89b3868b936daa0f0f1590e9cdce64676ce3a43975f21b202eceea74961f22bdeccf5f6454f842119b8ab08238c0b5d27a61ece8a5b5a6597e0f37700d495f62d056e89b2727ba36bc9ae4a2535795d40cfd25cc46fb2eef9f3f2cf62598de90b49e9cb513b352753309b1f924378060b4b759e54dba04a0f909fe740c3a6e050e853a7d779d1c09ccd4d3a32797e89e88af67ff086555713e08c98a78af3a7738003ac8938de341ae22b6c122042c48852a1f990550c9bcd5715c816c5e566c7384ee7ea3f6ddcdf17ebc430a4945a08f6bc9190bca30b471237dbf8e699f81e7e8139ac03663acef9f96df88c46651ab5ef3827acd5bbfc0560c186ccd2a36792a959eb6477d589e0e2e80ead9870097a94dd1785fd57d2b694d313229f10b5b1d281a6cc27403e3479289f97d8710c2d5b906d615ab99145c7b423c670020be1efb2cb85351fbcfaf23f177d4c40ca8c4bc8837390f286af79f9ad2931afa7c0f93f2b349d0c14ad6295ab7dd5253e5ae301a8bdb91421e6bce846713330a519d13c50fb2a9c2c858dcb1f53ac0fd710e9cd81f07964ce5a480c22814362ba25b3f8966413bb33fb5f121a3b5a8aa6fa99cb979d0e6849b8c42a986ff3fdc610b720b1a4ebb703539c8e127cacb64c1b6c56eaa2f1f7fc5d0b8dcef0c9cedbd3bed4809bf88847fe620f5c7284a2edb929ec63e406292f79480bc2683e428a0a18fd92cec4600c9768567e40b368db3c4d0ac77414938eaa067a6e267352c62fb2caebafa86f8e01c4c475ad2d43f1d877370ba0be570ac229a905ad4346b9e9e149f519d0cdb8bc3b22246e2be7e4bab8039bf95dbbfe64908f9862bfdbebcfcc3bacff81e5fb406afe5f50641930827db629a26595a4dd31ddca841d124e147b5783df8000c473ee3f6036a387edc95fa0eae5b14cbb499ce44a853252a462f051c829c8f81e82c58d73ecf7709743da815e47efada6feab1646304b51d052852cf2357c072ae7355493d68c6a9bed3d48a46ef43c4877a49ca3bb8177a3119ea7af17c2e385e7f4ef5caee084fa6bd3bea17b48d675b2fcbdee80617f0582769d2af3f1e2be598b364777aef106b76caa0ca5672d97b2259349d7c49f7ae714d252c3aa351436da39d66b4f39e741060820f5e359a38fdb3c1abc14924a3480828dee90b3907feb8bca38da84a10d42268c957e1bb281707aceca0c2c481d96c713f89eb26c17b6e984b8680ac407e7b89e22c409bf37c5937ed8bad3132b7907084fc3001e51ac88519d89b94dbe0cd9e71e9c9d5cc6035daabd100ab7f0272d64f80350e63feef4835f8edcd3fd8f5680c2510d9e9a439f5f7275858b5aeeccc1b398063660ab30c1719cc1081faeb44673db55ce926da91d032a03542543feb38d29567d9045aefc2617e7488c41a2da007a212870a285445786fa8e4f6e0c7dcf5061b6ee00019c1bd4ce4c3e7bbf4e05916e1a249311c45ffe936c2e96300f4597e2d4f6417981f86b9f1f55a159966ba73445aa4721fd24bebcf45835344ffe3e1163fb56bec03f3b26afdfbd771e15bd8ea940f7e7f36b8998e539a3a493e100739f91b85e499c946bcee3f7a55eb355c69e3216e58b27fec5d06bfaf1c1569f39e1a966d881333732e8d05189fc4707edd8dd530513aa2778d657c294be7eb2ab0fb688eead542565d3de002cf1aeb31b9ab02e7f9de2c835702e154cb42540abde0e33421c5d7d35b79c3c9a79cae1cfa132a119441431436f83501fd0c70739309be21acef074908ee5647b69f5b53fb2aab82303b73a8be0ed3bcbf86813c7e01976aebcb21e816525f91412e2b383c74c95f152460b7ae986338bd1fec3c74e1fc9ef292db45391d2a0984a40650effb77c72ade8090c984c7b1f5b57929dfa3e11cef9fc871b86ea487cfe68bda93335c14c48e5c9dd14ee3d0f2a040f7af5424fb4789b32a5de0a8d57dddd8087b9ae3c67d29ad2b3c18bd94c5e18e62439860e5db11704edb94e8a6001c8bf65e751c15738ce727a1fcd95430d00859706041f08d1a88ca7070e3987c5157773e187e878850243b4fb04b4a760d1c6bf8319d0e4dac0167292198b085d4aebc9522816068e157b5afcc4b91bf99132982fb7c637d6760ab0a5cc8d7cb7c42b4e58b385ea609fa98108c19cd561f98501a8aa1860ce72c927f32c69e87e38cd807a082623d54035e2d5587e86b4dc6a7037262cdaff9b0e3be87c5b63e73d1f693eefb2f757524c490e77507da0bd0f374977d1d380d42ea0a82760ef26a506feaf5ee77d401d1ed1d1728529eec13f610bbcd3521674ed8b61c570216cb55e0e9245883cccf79f4e6c88bd31f2e69e6bb91c313fdc2e788daeac36e63036de0cf858f2d6ff4dcd5432bbbfb463c9d3ae088427adf173afcf66e9a3fcd8c29313dee800ee7362bbab1b544f0ab09b6aecd75a8e18d3f4eea9469f30229faa74bfcdf447164f53bb9490b88731bd4e69a44ed70495a8a41271c63519499c931ff76f5291a5dff381bac2be1a76b2e13dd58cc79067554186a574a3df62d2150e65b9037b5fe3c006662b72a4bcba9a0533cfb25b81867f5346b87c6d26cdcdc6b2b3b966b8112ba15c224551d40166bed139dc0fc2f94ec591046928ad6dfe65022ca69fa015a3e88b4a1fdfe76c74b6318496117c87f0b03179c75465a0bf992f6deaf3f63547c4fc8f08e6dfc485af8834a16e08df8dad5cb5da14ef27005b822e27bc6c3fd108aabdf379ed99e32428d9df75b07a979dcacf1e4f6b8cc72b37d103d64df8ed7dab88b6a3f19caf5376205cc643caf723d137e55a56ea8990067bc5b13f3fee86311c1a2ca286d301e5b9f1a1fb3a55d7c8eab1471e980ce83d3f6901c554424ac77de04e45d3210d9992e6e124bdc520ae0acf8b9f59a1876d2d9a33de60d60f56c754e3477a3fa31a324438d9c22e4e9b7b6000d3d13f0e238e896a4b36f7ab6c859a1f0a55da9e58acf130c11d7f0a13f74b98449d1191726c4a4c42486be144aabb1c36889401ddfb4a639e07242dfaa9b366f4a8746715afeb1f7107041d7ad44c6e1a175760809b70f64ed0b839dd8139aef457df6939dcdf5972d4dcbdaf8fd4aa05334f4123212d341ccf87b6160027d867fd7ffc88b26577fd969b465a6525d5236225def86b0c7d0e1ef2d6d34fbf8978605cc13c422abdebcbc7131b9a8db23d0070afc9b4ab1af8da70c263490e4318fd48b29145e21f6af5efceb049d9cc89d359ed66fdc581b20a004179bce9439f6ae4890f6eb7df4baf4156bb27fbe3bb5e3496023f088298c9710c4030bf80d1edfc4b875511d0028a5b97410a66872e41459ff4feb96909f1b4cca2aac05bbfdca78fb01ce527f039a798026783a262e21c1527467986e5096145eb5158762e523e01c93d08c5b1fa07072499116897fd8eebb09dd766c368e14012b9f57ba38544a8519c6917b154f36b8cec0b619c34aa141731404ebaceb20fac32c88e658a858a400759b3c9b1613fcf7ff0ed5f6c1d93f15f767cd877e1a19df026e2ec83ab6c6a4a4b640bc34b85962491fe3b84b13e474d87df194cce4541302921b809206bfb6da107b4f67e8bfc86002ac8066c3c41141dc9e3804c1ee9cabdbfdd2c9cea561057123dc1c300014d8181ac40dde7b85cb479314ebac3101a2a6f4e5cbf75bcff622d59c56100972b195e74d1bd42ca50a6aa902355629bd3c56f69c0e8f7f0d1a95f5c273e74ac2dcc741dd10bfbefe43eab29cd7732bdd2241dcbdeaa4ac9be3a0ef4b90e776998fcd6048d856bc03f9c6d8f211f9c129f51274fe8536458969dc7f335e03ceb71af792b69bbaea8558d4df657fcca3b7e21c8ac7fa6a6b936d72fc7cf8e6466057b5335bbcce433fe376108742d863669ef918d8fb11b1a8d7166920774aea76505f9cae3c086f7bdf194b264e9d79ec15faf1f24a8b43b2e06e7ea5f00d14950ce40fb21dd2131343e5abd191b073f3269e52a5c421fb84dbc53a94ddbfd0ad524cac9a7682159ea66c576d521feaab7e715355ad5e398348eb24e46cdb7a13a9128a555d249ee6e7607511a41abbb6694e98eb842397ec6b89e05fa3bb631c78afea89a712fef221f4265b5b924ced8e1b5b887d1f149d603db402968e105b9e9ef65e07a856f1d3042f5cb50cae63343203d6a5323669f44155980d54f08f1848338f6d0e6318e7a34ca916e02f841bfa19d55f97fc9cc97253706d9097ceec2ea29d100ded65baafc807d04e278d29390c06aead845bdc1f4399e0b978eec93db437e9ab48bc9ab2145f2bf64fbd7a65f9434c9bb4bc56a5af0ddcf4469985fc2aeaaba9327e525ea3346b386ddc4b0c488aca3327b999c4c783a3b1cc113f74957d82839bc21e762ae84a2371dacdede965138dff18c13756894f8e653193cd4e30abde0e245177f99d5ad18480d7573f7c38de87038cfa95e3103cab8a5242dc14cc709a947d71fb7f6e2ac94004a5312e677d6de8801e505faa479268e8b39409cda6b22af22062899f1be31f7a85987d87534e97e38e481b9e6d31a6ea1cb812465b7790fd4a3a54921423e0db454862422ed7e0b9e9c555e7e68d69d5f5a6081d02dc15e3f21ff367e3a28a2105b921a56014c460392c3756f46e68269d421c8999eefdc561dd55fc6c5e9e8590319a68d5f7cf55b49c1f652dc17b583f6eebb4961cf9ab224a8329363291bd6cca9d9450dc53d06a350068b63b7f8110cdc2fa53f967e0c335a295dd394c7c3c40d1b9d0c6259ddb3a12a899289ad24bfb1f387f382898db96fd6d9008a8a35b69dd9e2b46412d7c40c18490c85d0d5999fcc6595deb133b2ca5bf2f1ca515fea11214b93a6d5135394b814de5eb4f7de36aa9e03265b3a1c49336303ad921678735a1ab946b4166f331ae83c1643a050325af63954ce1265042e7f659cac0b4b6d9697b81ad1c35a51e3901a660ce9d4c2172292b5328cc46a199af536ff2b5c5f5b162ba8c3159745011cf6dad1ee02c1731abd93798fde9d015e2c202ed0cd8b297d927be4c3435e86e071cb0fb3eff363b41c78c26f0c9b9c8c2e338a4b705319ec021b7fb78b71d6653120892ebc9a259df69143d09f2661403774f1059d692643d94cdedeade2cf278820ed516242fe8d6752ba06451cf48ff4c2d77adaa133a901f7b3991d1789358d81483a637fa626b14d3ed20f15683eecd854b2340d0f7c9fd1b5e13044b5f244ed8b768848b8c94bf6a8f19e3ee4a7aa8301cca20e6693c3682269720ee00bdf10b8ebe2ca6eaf5a4467b77ac57da0d26a8e4fa1457e9dff641b13eeebea2a10ba2e45163bd10cfccab00f922e537da013504a6c6b36aba2920152c166f2c35faa07acc4700ad002c80aeff49e0e59d1d94a48aaf1edcd71f9de24ab727c648a790ff671cc794d517ccc784d531830c6ae8f533bcd56426dd339ec61ccb251b3f4f401306fbb92347fb9a3a4790302fff30a054a8308bc564599ba701fd1edaa032a83b38ab3e7ef0aae8f95d272f09bd1c0db8b0a969817aaf8663019f1988881952a031fa12aefa9127af9ea1d546202af632b2f0adf8eb4b71d6b805a69724229c235561a2f077261c569950a84325b93d943419d4ee74e026854d05b4c83f3251119368fdbd9cf4e4e58e664e6565b2684588a3479599ad192ffb88376264fe87cae0e709e24419890140397492169e08d13c18f56e253855308ae45511895a51ae8ecb25b827e421f1786b993f056f7b6395ba315fc5a26a63d46117b68842025a5c0baab6adbc690d6df7bb1b8b11fccae924a1ca47bd85ed1d4016c86f59cd5e9d419511c558b13c5a869dad6b2a7977b0d971da07fd78be9270af41021772040247dd453ee0d0b70f49ef64597d57838edb1d5694fb79a5ff860124c8cbc27a6f0bfd502bfefd0fc1af2385de8000d536cf5d17b112c5312a1c9389071adc05cffc88c3d728df77492858b5941c293acd6b51158e828bcd86745996a8595065c9effc07d0f6f6dcd352bbd4c02bfa155742abe0a8a9246c99aecc26cdc98656be51ffbd36488274dbf804211670149715e5a6f160ea2f59cdef407c0c40407970f192e43ebc3ffc4ca366410883ffd4d255d80bd7ffd6173909ea609a2fe069fe01b68d992eaa06f8b1421e1bc91ce0f7ac8fda94c13574271c6ce6796dedea845e07837dc980938767e9fe9a4101a3eaef638cc7bb81e1058190ecc65b7e8fe63d97b84b6e64630b0366522c0abfdf7d65793a27f9c1741963f191f288baa5b99c576d3c7914c57e26a2f278acbae79366f4713ef5f5fb47b91e91f6c11fd7b78c6890650b7df0a0dee1023f648e3c59f441aa388cd389049b752ded701779252e48cc1bb54fe753b55576d75d2160808a3b7a8e95a5ef1ff0c8d4623c3f2b7a3dbff6c581095aaf764dfe5ee3322fedf8383917ef8c606069a568a0c6db9639dd95a20686433403b5a22172030548fe872813bc7c65a117201f8039c7f1bb78874628f31d9f49ab0b7a3cdc77308771ab20b284c97a88fe3bf5070fc07d74ef8e6ea41f821ef4d112721c1bb7e8c2ddb24c786c9b50c4f7bcd881a8eb06d3cad4d25816538df3fed52f489b436c273fac759bf23d19e03c989e0a750344669e4fadf6de31515c8b8caba42ac8098498a2bf8c2ceae6a8344eaafd2685950c092d5f8f409a9de3dc8e3d1e240cfd5d93db48fe444bb3ab21923aac67e280ad19610000bcafa66bb234899292aa383f369b368f9c46c862aa00de581cd1a005c5ba50b782a329d3b3bfe0dc0a8cebf54267a614c5ddb278dfccd5b863900d0df7eaf7c5ffa2a4c01271d81460b5b082b711139b5912f7caa5c921e0e51a8961cda8b7d4827ec904b73eef713ca1a412a3aabc0d98339444832ba3250415d76f05f232bdd913725b691027d8e1b6afc9cf85de94c5564e6499325ff061c5052cd411dd24088c838d0ded31fd528afab8896106efe09421b2e2338833676be3e4b38f90c6a0a0ad386d3942166d9724dffb634134e833d8d9fa6f3521046d2b06b86e382460307335fae537994df8e9097e8a6fd9540461bfcfb7d38e04e6ad89150dfda645e38e85c56f1a77bf324b5d4d1e6e4c1c88040086e8a27835c5516d673b5ea21d594152268b6be7ea17b0321732b8426d14d14136c45189c71659aae40f17e53eff9831043c36ab351fc725e7b76c86f8af04b45a3cd30e140c307d7e6a5170be8818e7f3bf4438b51ecb4ea131b9211fa24cde3502892d01bbe1b80afc1f3220545f1221cf8e63489dc1090d9cc267d5f0b40620afbcf52bcc72986981056619813e70a0e01ce69d1d5dfe33109384a3f0b7eadec70f5d0ef1410080874dd3bb1d3039cb53ac4fe4fcf3b3400f0a826a7cac6c29c2ea0cc55b3faaab89b2fe659658afb0324b5fa88413f5e3c9e88d95b3aff551e0501270f3276d4255ee4ec61dc4e168da379b8595e82b3090746a526c44f3939c4e99a0dd1168e220c9a4b7f211d99be5238b795fc537e6603c12239f61adf2eebd206792bce3f640de36931a8346dfdf4ed0cb8e1b9121f0bbf54f855457c29b2be6533a4a3d2d55ca4e8e6db7cd0a99acb665cc226619f28f3fcf0802dc9d25fe08adf3f334ca00a60179b42866be9fde78cbaa2f9813a77177b43cbcf389b9dab04964902acb9c772223ed5fa44758161f0f3c4cf981cbd5ff2bd08697aad7f88d513bc704def6ee42808ff59746a549f7ea2eb9111e04e95dbe1e5ed8d9d0cceff04a510e171c2d14b6d9afb47095007f1fb54dae50145917977f9d3ce644ff82eea395b126ae061a9827f09ce78468879d966792ec076bf26647b3a9269d4bf6317c4762c345a8c64af5aec80ceada90ac3caf0867b497cf39b6043e88d239bcfaa98f7921e4fa7918344c72504346b3ffa4e11d21e583e86fda55c49a4570a1cd8016aeaf2c5aba375acd5dfa6ce9aed7f701b4fdf6947ed52ce9c1bfd59eeeebe8a8c43c282efb67adaab8f3da4fe51f0de49861bb9132e080b12de069c2926294f7d406227c27e021af46c9dbcef9751327b532eb40089afe67013b2ff07e0753d4c3d8501371d003ba39a7f1fa5071c17433632246cef52c4cb9a0b03278d00cbd276660a299711f87568623d6fb922d8b88df08e6067856ce08512c1674a9799dc8989f531f701c3df3cc5bd92010f94755d356a127ec09a8ad678fb78bb20142c1b5345f49160d4d6dad6023adf0720579895011359e4c6367d384d21cd66c9133f007638ee9a61c5f8a24033988d7704062f3312cd7a62295733e7d1d566439bc080dd22b5c3142ff94e0aa3e2da5a93e67456915c581716b15a19d9799781ce5c4c6e7b4e0b37441043f121861630ab2e212bfb68803b3167917e8f43a37bb1b0d36976b15110e6b68a6af3da5c57da624066534b067e3c66d027dbb01212eb2ac8d27dbbcae07963152910e3701ceadc59bdf1fa214bb6adddb6cc1b35c678cc5c33954521cb2da8818695c466dedab90d1dba50467bf57193a5be443e54de8ccdab19d49cff935bbb243c6bb937ea3c022b760b041d1a28aa78960af9a25695d705c69e79ca32d7851894cabc222f87414a211ece9065af25dc310872de08c461330999d20c66fd8db34be7f1379f4138e6b9c139dd95fcefa1d9ff38ab3c8ab232da992295e98d7d7404842003b2f1df18fcb9e54af7bf452cadc81d6676c0fdccf5691e4917a142d1a53aca4352192c932fd22caab5241dae9a35a09a2a235a579b4793a111f86a3c14bbb20f30676988a4b941875cc8a77d808c32a3137cc078ff8dc4512eea20a486ff1c12e70108cb91e33aae52c63f70ee74227e36af85519724df0c07f85f8b49540be234f65eacff3eaf8a8c7c2c01653445351a3c2136c85a4aed8b282171a2388d2990e0257a2eec2edf8fefe381ca28b1887bc9d718174191927a1b8b8fbad14c181665781a5fdbf14377cc39d351fe23dcf0bc934305003759e47437cee53b5d07b79b2144e4684441511e4b4217051c4481c946dbbab4fa11f6f8dd6cadd2458e75631ded482497e9f6acf06cd40505800cb5228c058bc3d4631e5376f3d6d5a8a40bbf0861e8bf7fe83ea240fe27c0f92cf77d09238d2075f342e811dee163d11d4d448d6ce39205231866935810076e9452426ef4cf0ba61c99580fac6d07f080beb2da5246d99a98cd04c81223321a327e26537b75a05af5511ab8ad86ab97d040ca85e8e6f52747e7c4d0cb2fcc67467d9735d1fae1ddda2dfc055e5199e27741d4c8cdae0074caf8f3fe550dc16f6fd438631cb4f19192e780e8783ee51bcf31d82e8fb27523f9246b62a612160dced38d113c04c58cee76b74ed3cf35306845e46f1582771dfb6a8d54f654797e594629eb908cc0913b05f3d828328fbd60d4c7b5459e34323249e9955dfb3f347fea9c64b8c14c0a85f3c93b55b6a810b9f673e1f2d23d6612d42d19cf3d06db8ae46845a438ae0a00debdabe5c06ec53f169c253a8ec0e826fed4aa96781ccdd7a32e5dd49f64e926c7fcc3ce39bdd50c05ebb77f1348713d19d6c8a1ab5351fa02a8869efe7cb19c837452c61819b321ced91862f715c79345ee116c477ded16d0332ee3ad28a96fd25a736631681c61bcfe5dd6980e24fd4ab99d67bd0fc1229336deb66c0c56d74a25bdff4dad698e06e04249c13192678228eb4f621471b9dd2c9c928edbda8d2b9ef362c8c2f264ecd14937fae56c81d932397693c3400f9c6a4c996c31a5ddf8390c093581bb3416ec1b4af285aa4954964752601c7a70c394083ac900f6dd5858ac3bdc716f4e0da045756866892fc73e0d81493d31309f2be8f6c3c3511987d7d0370f1f4c65b7c405a372a8aa889dc17dac3f58e7c674fbf9bdaa8d45b9f7d2f9e4b09795f22749b899eae5e68ab4a5c47115d7ed750fe52eca03c7a7026db6c791fefe28914219bfcddc387ba6b13c07bcafaf532e150e13c6946bc7c1b6b792743e00a7216449636a178aa5ec460deefb3634437b1c42ab7e73ff2cb8acccf3c43cc26506915d9e6d361bd4c89b3edb9549f20b1e27f20cb0d5510448cfc8add207b8f484a333d6bfcf0153fea48968f576e67ff203145c01b568bfd1a312f39b94ecbb17c2a0983457027446f65b8f5541df1b4685f58c1fa4be22b7138778339464ae9854e3d9c6ce903b340f3722a6aa5728dd6cf84ee839835e846edaa514a258829edc3e5ed213d0219ef85fcde5601bb7e4555a8e079cdfb4789f50c7dc20fb75875100e464e41857c63a072342c362a3bc42c2915fa5d749ebdacd11537819edcc7acadbec0b2c1127f0d178ae624d2151e02bafaf4808cb79a09fcf6242fefe1c290d7be846b3b5718d9c65263ca3d227406242c3113e928d985dc87cf3529e127968b22995666a91eaa2e13b0b847b3fc414fe029e09512101b5594b6f35adb65c0c2a0ccc2f4de718fe362fda72cb9b09d47948369651dd33e0650bab284a8e90a3ed8be238b3adeabfb70da0f298ad3fad9191c55806a8cba113a828a1d00f9819da3e6b79aac5081c5cac0fc43b4cc58b70a95bc29808836b7bd43117374aee0c0505b8c29d9f3881b88c92bb9c8075a5a9e372705ac790c1fb2b4872f846bc22a1e953acbf6fce12365c4cf0205741ca697126542114ccdc63762edd0b3baa81d7ac3e0da96e793d62d64ed90331449bf2981378c41134aef26d5317dbea4c43ce31170a248a453ed061d63ca0ff480148bc942b9949ca048985275515d7746bb5d451f920f8ede2c5c4dc8a97006acebc76557007135e258b40ea9d6a9e5b65f70bafda2181a91e36f2c6f9756254573ee5ba88eedab856bebf6a8db5b516abd8bc0bf9af41c497de0b055b8e13be4d559ee4985de48642b70c0a90351ff8c4ebf5aed225aad706e1a3ea228a362c111cebe76a5b7b6769299b3f085607e1fc5ac4ec0dcf5c821ac39532c79dc92e887841739e6a157983cc94faeeb89b9e9e06ded239362ccec9716023a0eae23aaf34e7d5dd7261fe8076cb862faea0e3c79e77dd846e5d131f1f60f650a789de05dc7e55a127c0779c6c113bcb03a0d35cd41d2d39e664e550f41c9364ff91fd711f77864e8a68edbe4b130ab5742ea278f803e4c764e6a26278142144af79f36d975a66e8ef7ffa4a402a83485b25e50251f9ee11a9ef78a9404ab0c7da29884e23996d34915404e317297a81fa9678ba77361778a69116bb00a1934e84913de2f4229d6a141fec94bdc1c2d741f19d4ac74e335ad723e5c3baa6e6c9b1343876bdedc9c5903108ca6cb7c159a6f491d9324261cdcaf23268c8b214383c1df4ce66cd23708c362789221258841414ff4021187b8c55e1ec4abc65eee32a39b143f63822843c736b92eeaf6121c77d1f342359011283a0048d8ecbf43a51f4b038ee2bc05095668cf305dd2902c1ee8d90d25285b69c14f76034ddcfd8eed0f7c4847ff280362a9b1c52fa903c069f77b54264f92de78cf5356866eeb704c3ea04ee3026454314b4313be067a522841ef6c118465c71a3bdcd8679cbf0a063f1228ae65ef6010ff81cf3103e99eaf712376399523e237df3f5bd0178bcf32b62b7c060db0b39873328ba8a613272bbb70db924a97967d4eb31e6548f085cc93b7220c6aba323869f2cd959e80f48c641b48f16dddd67b39c99020df962b40ac46733134cb8b1f8a423c68a36c8c7396ccb451a8f5b86853fa3db10f8ab2513f37a77d1afbe1108923790191f78451562187e8aa902ef17d95d6276d3624590787837cd1eb1eb27ba7b333a3db70e4bee2ef2b24f5781f89c2fc2878ba224eb603b803911ce6a52a0b64e31330899f6dc33e3ea703c55a9f59759ebfdfe693083e1df7863d5f4c947e89c70956db5f288b7e945db1a9344d17eec312687691263e5fbc84e06e6dd40ea708abf94c30a5e966a5288cb38e599c6f05f0454c1eae114b101b5a8f4788dde8d86b63c1cb63e1a768c15b6f177173c1e090cce15d4ce19bd347968202593ce2aad921c6ed4c597760b2d46cacc385d6152fb772ec7b623f82861fd4a58cd4b2ca7166cfcfd9e8b0697523d8afd76a830a0f8dd444e10c3d1b079013ac2efe75af9aed936bc231aa7b70db348cc165bd04813d905753bc938b5a8207dbe5236d9fbc16e03ea99a19a3c7abb40d9c827dd7c42397ec1f3c05a35248ae885c35e2ce7a1987e6aa3bf419f2575794f2d9652a536e32cb9a1fb267c07d8d1acdaef56a0b96d2e03f2805fce1e7bdbc3cf8bf8fc58496f2179652d2b93d683115518ce2287b54230b6d832a8b146ec6e0556f03bbc1277fadf80d6cfef7f09bc5bbd9affe721e37241f81430073a753b7e40ca030afae8031d76bcc314dd48857c4b5193eb9e46113ffedbb21d96949a3d168c01d57d434c236d80d632bc79f52ed621c650416098a1d07692eaea697160bdfe002ba6b7b7b46a20a44a7afd6b2dd6faf587fa1122848d5eb62e427a1cc938fcb369157a781e4986249d9244fb288b83178aba47bc6862a919cebc6fc4fe762ecd1cd8e7aaed6609efc1d3d07165774ed364f9cfaf18263c780d278dc5bcd749549a8991d645d96dda1e1a340759cc9c84b4b7563c2e0e1b3be371a010ba4e51702553bc1f80163a385b623fa23a4f69bdcad868184b79ceddc22d636d1eb4f5812ab7150751869979b34f073475e5a78a42dbee3e75e99a17d76a846f9ec3f59bfd6ae2b64ac19df522c55f4410b3a7d9434e5e62ed65452e158cc4a78ebe000ae5962aacd6e7c62abda2f88124d8ad4da0003bb923f7fbfda491411388596d5f045aa0f59bce7a7987e01991774268d059b1bcfada3f15497f6ed902d09f4ca11b4397757f7c43e508d29b367ad7003659ead59279733d57c12ce0d651a4043138d45a51db09ff2add684091dd3aaa93e2a86aa9127cb9f025f50c5ea69c42f5d4876660e06643a6b3672294c7debef16c2b72152cf3a8e9ee9135f71403392da8f50570f243ff849d547e1f673b61e6b55ce2387de17a44aa5b9379789702d946cb3186fd3fcd9bcc6715a0838a28b65da52250c3abb4e30802bec3efacc9f74eacb96aaef9e3374e3e38daff078c0cd9dd255ba0e529332b76aa89f38774fffbef4ab8181194921b066bb422634d30196f3ab670dd54a751816b6f2e7511ed904ee6d3c26c43e3712c906e82bc26456f1b2ad50358c0843e34e24d825af836c839f1923025686ac78b55cd21f1c1b310c3e289a328aa6462c3b168a84f0d520debc2bf1b928e057900b7dd265cc88d6ab770044c8d8ccc71e2aff732a1f0633abc0a854c71a821f9f601df43bbe0f32fd8c881d240aedfd51ebc5f2ad756511f424c9d0bec4a2acf8c565ce0cf7dcc9db824cbc533ccff2bee39cdb8dcb349559fc96f339c6b45120c6d769f040817e3a1996be3394d1da88eec9d361f7857d097a91de5a1334b6fec4267fb0911ffbcca9cc97659d87124f3db495feeacca677839dff1037c4e49a39cdeab74c0e0b2b70d202fb600e50bb849b72084d041dc6b5152a3c085e83b7a6901fd5dde3bfb34adf4fb25c419ed2bd6fe5257e2d0554dbfe1ee149fbfcc0e6505c2748bb6a9363c20eb6592430b513a1a11a5f625053295605ccf3da99ba3cce57778ce9ffd9547e9fa7fbf060f62e9c1e72073940dd91dac606c1749b52fa160e37872480dc68503186c3443cb84a0d2082c7ba74bd36d2ef8b37810f5287ae515003124bdac38ff463a8b15534138a28bef1ffc98d7f84f19b1891525ed222d58559453f94210f5f64bd52a64bd48cfc78f9463ce5a9dd513e9b78202c136125440f0d48ec661d5430dc5eb4290ef8821249bd386e81149630b9033192efd29fc9c7cecbcdae35b7a51319263f60fbfd6633333029f7915cba2d0672a0e6ce39df05a640008406f2d44ac75bcf50381e67ac8cd5eaf3d74a15b3892909f655143f3c5e249066c00ddbf38bb030c536a6d25e58313669bb26b42d3184f3ef7d7b5da90b863f9e606b52525ed0a7dd0e8882f7c8199da704bf84f0e4e10f93816f236c769290f4f998e2f494b1351b95e65a530245b9fba458864d657be6ee049ab7393afeca328b40ffeb05cbf109294525ea1e0ca6f2581a27eb64625a6c76769afb380121f10a5867e95879defc847958112ceccaf510d430b223b49f3e669c1486bdc55b6a5582e990ec1f84ca5aca9f96d52ffecfba5ebf90011b62a006304a9a954599f3c9207620a5842aa9c21b4c472114f21d88b7cb8110c40cb96a8a34ad68cc7e5baca15f4c8c36bce0ae69fe0a55e634a12c8af12b3d18716ebb0d615dc842a723972b777b3ad31f10a3d5717a9599ac13ac9708a3130070d24b20d6eaad36be5e54ad68db1881eb9ea5ca5d59229497fa867f71f3c01620061e3befab486634d8b8503e00ebac2650ab0b84b346368c7693f2c4a6fa3d3ef866fe5547ff6f0c698614d1f2aad7565720a5622d81d43e5883e68d794192d8472fb13e0775dab45cd691ce41ae5e13191320f9445626e0be338d185bd9e11a8b5768e0b1cbe590273a5c18d8ebcf7fa57022b4862c255708308344ab578507d623212413b9c8b61923370fab0bf964e3e69fbc96f041acd551da28dfb397965ea6b8a841a65fe72fac4368c9a7a64492e6655e009eecec9c65c0f9ff59cc21d2855d52a71b0887914e4f14ae31accfb167d2af392e216df38ff5e994661a5214ffd584828af845572d4b458fef1a2dc8df0f940b22cf9f45816838cd864a67c7f9a6f77bcc4162af8b62e0d21d788b403cd8e0b17583c66747eff81dc48eb0ff75e76368358b67f47c393081efbd4c7089400487e5279c1d0ee8911cb8d4224e25e74cb195027240b814d4483c6804502d41f2b22b490a55c5fe853174a4164499108a0d94ceb298dfcb0c07700a3c6117571a4bfd01f55fca68bc2dc7da871b0217cbabd2777e778bfd4e51e3364b8ad5be21d6bbd9167db0652bae929e4cc643ec464ede4c1bfc56f14090df8992b734eb15d9e32dba7cd0292d751bc0d20ee3aca3db7bd71dd28c85635fda55a504115505bbbffe6bad81b8a770d0bf585796167e24e1fc82b02a63ed800170411e22f167605935471805c56cd68a9fcabaf5ea2a45957dc09a77126066f5c0e4bc9b2fdd8825de169038243a773a0a3baed7541cdf1376cc9bcf62ea178b6cf7d1fd19277150f11b968317f6c84b86a6b3016ec39a1278ee1b110026bbda87733fc1b84b9f34cd28961b4f5687dc82f2ed3c0d91415ffb3dada8750bbaf0addf28c7e217e65054c8cdd865f0bc4f4299f112cf80c569cd98e1dfe8dd37401610f9b8aee6385800717c205dc7d901007c261787c1aa922be20f38d73f164c66dced3ca7cb6deb0aa3ba89578d91b60b14f7a929d0c439fd235b7f9ddca7e39300e1e42f1a128ec67c1746be8afcd02c2a8053a33f4a62b13e17437f9c528d1e4a79d7c833a31dd7d6dc0fccad47839d9356119edf7c63c2069beb248b8f6ef2af7d8fee38b923a6dae3e6ad911037d0df263e311443120b7b15beaac1f4787c5235043a0a857bb1feb2eac8ff7b2c4829dd386e77a5a88a854ecfeafe3945495a0374c24db61aa213796f81469e46fab7f1cf94e6abb73cf1f4fafed0f4b204530c3ed34d5aa9567c1377c425ee7f87fd4e354322efaf7a4e7c9fad746a959cc9f660153f8c60ec1e584e49ae0c79c1f568d47eaacee586f6d0460c9a1c9e5d74456920dbc38d5ad0971553953abc647752b472f3d9e810c020f1188e2491712b27e67b7c011264003d3a6bc5556be0aabb7e67a4f9884e4d4c3d6df4875680a249e7afa7c17920a78a0e0ff017794d9c74224e0a4085c439f1ad189c3f7b9a4d18d6ca0670bb7a8b950e6dc5598dc39a34edf9315dba14ab5698fc4403cee7f0497395decabf4b51e9c2dca54854119f49c55316d20f8070798c79fa5237422615f08f9ea2b50e38eb769e7967d47cf3f99c69b598c755dcfe5b0313168b253565350049b24889be68eb1ed5d1504c21cf7e5153285deb13fd3392c49f46b7e97a65a4b137194cd502b3738550b36a7b5b07255ada1c0969ae88075d7c843071418e801cb997dadf5f8a0ba800dcf9531c8816eaee273b80ef72ce41ab298fbcdd30b4fe79fc168eaaf645eb63e67c91ff6bd245e116c242e451ed7f50b5ecc856c8957effbdcbd997cc07af4c4f7a18db59ca172b986bc3239982664ab49b047c9d44349c5099b4a7164490672eb043bc3d7e0af80cdc48d993b77f37c6d5fd9a80fbb41b5b9949f31eff801676a1f167115dff2baf99dfb151b0ac75905dc7f047471a26dc45de5c7c0fcc766f8a08f5b562bae0faadf1b2c3fe50bf92317b7517615fe726a2d01da47dfeb6ed0143029b6304a465bbfde21a22e904446e2e7fb0a4b553a6111365b0c8034710542ade02b872dda57505c83d593adcbe4db5fdd8d1157cb2daf4927476a30e9d399ecc40ac8fb2240bc52f3f037829be9191e3a9e6b995b1b94db390eac70462f08c11601d9e8d7431661048c1bfa865d0130c5f85dd2f87a174d7cb2f5fd5e00b26e2266280a74f045578496ce81909886d23cba0d53fdeff99c4f973815d1f708c9579e2868d9d5d06a1c4ff81abf826eb89b9478ba681aed2cba99a1d081cfd80078fe4d6b19cb1caca3118ad997d97de1b495ed255eb4faa7abbacfc1b0e4fa1d4e54bdadc3783b3176dc2be639c1e79dc76a43ded9700778b5e39893db1da029b4d1479f7442fe691be47e39bf73bc36ac0b921f4af85049debd04b2586dae013fb46a30c191356e02aa12ebf821038fab463b42d7b8b556a685c97e9a825ab06ec4a8b5685b055802924b2cb11293cf36c597c355846b1232302ea1cc257b2abe5d6d338af9cc315ef7530065bfdf524c3fdf6a69af7fe562569a8c27a5d807a207e26a576833841eb31e2901e234b8b81fc89feef789c94ec2e51223486e7fb6a28e52fa88dd66d43cff93b2fdd2d24962a960a2c9c333e21af17f9ae3235b9e5abbf94c8bb06b7f2d1046552f6277891ac06f4ea63bfcee17313c5edf9d162de50a227fd13ac3d943c6aa56b74a3cf5023ee99c30d82b1643c02e1a02ae325ce9e55aea3d01e5354057f4444cdc145edf2d7df4f96080335a56c65f63cd7e15af6ccd1e7174d05021321ac9abe18d3cf18c5159cf679ca87faa37da69fb085403c8a00946b816e678d1f0556d09a05bf12bb2db838dbda3749424cc8ac525798cfb45b4384546cbb4e392be596039dd225a61bfbbceb59dfe8f156da4974514305d5f320a5ca00162dd9a13d8d8ee9d8da9c68e5a66765a7a5ce60d80564d2620f1884ba1bf78f925fda425e1b86597a5446db9a7541f4e14ded3ecb20378673cca8efe8aea7f557dd0d69ba47fdabd230ff48384a3759336b634fc54f00213daeb397492aaf1235cb8fb65e3a1641dcfb2d5fefb31d1e7e54b6ca5c82b726fb45d909db71ecd9f3f0da5647c021f3a6a2cceb3c3934b3473fc590fe3e776152369d7110d6f1eb6d59f7219dd3619d01cd90fdaa882cccd85e1dfefe200de0578f7e2f5ccccb8cda9add4629c3869be801e269f6e0b0cc47f6f81a09a4fa05b21683df9d63b3ad482bc48604d0420fa596b1b4bc8e55ca31963982c71e9992f7264c0d65627ab76d9ca8af9a03b9440d81b197b0f213229bc9908610626e14965e5b30b1d194c296cf97f38ad54f062bdad2f5f4321ca83e119c9e87f74b656b7fb593442a7f6bc330c930affb2b971feeaca313688c104ae22bdbb2dc74e2240d0587247f72eddeaaee0948548354228627bcca3407a302403415d862a868e8765e985a3374c8b6431ff33f10162c6ebf0b0ac2dcfe7399bb647ca81ae62607060ef7bf8e7a3b37f1717c04ddac09fa5e9ee04582d684b3b63eba26f6488ff71cac7938f53b8802676eec6060c97231ccf8bd391de9352888d618a4de1a6003c15270c7ee3e5a0f2ff65acfddd8bce214c8f6f6d8646d091ccdccbfcd2f8d7667eab5fae56009365bf1b89be34cdb0c2f559f005dcc717bd52103fd2914397eaf648cedb9f22f47034ea07c94127d7ba69b26176c88af82ce022af7a71153f9fc83e7c8a35afb54b78e6b5693396bb0dbba3e6f8460868901b0e54d6ae3ca4c174d83f905ab30ca57e66bd498af7cccb03fc3acf9b02d570c9152132ed09b38a81dd9b41e73737fede3eb293cf83180733c5f9283367c990224ffef7de7526f132d23061337e8e04534aa7e52877a7c4ff32589a404b51f450e6c9b9474cfaca613ec34667ec9ebc65d43ec68347a00f2bd0fe5b29ef66eaad8e9d1b50aca1262dc299944ea6360ec1f50b61fe9b4df0ffa58388dc0a36931756652a1b6afd78410e2e41227fa57c34d5d8015b953d5a08c4e76ad72944789c5e11e1b1c90ab681b344e16d69d7d3d0f490269c48ae0ddf4699aba179f36a331893be2bfba5160776db0167c22965c2b0f528fbb6b2be4e56718aba1d5a9c29684d1a30103850c18788a1fc59638af6d01d9b2484571e82955e5628b40aaa9a609ba26ebfa042c74d8b468dcbf310f9ec42cae94c3a81fceb66d2c421f40276be484fbf2ca00775eafd0c957f9515a055748e13d8197769322b4590710e27e00a60f4d96466a03096aa7a2c3079a9a922683c2d72764e51b072d49a08d0b785d4511716fccef58256b83a2a4e5640178b328bb7aa33e6961b8e5ee69e9028aa0539c0375e861d557202f47978badd77df735c93099ab70b8f381a29a649875b5b2dd1ee0574f7730aee8c72ead41f058248f222dccc2b7e4547a7ba7fd850398cdd230cc8d64a01d05fecc27d4f8b07d0aef5f9d677c9a1c86f7b9fdad9db10821b48f26b09b23985aec87163d45a0d1165c194659c0ee511a44fdca270a9aa711229299169e0cb6db2cdea0c490116954defb87f7a524bb55a7fa0dfb63249c45d868679da0d9cb8f621b06694ac95f74a52ab641b830ad229ee970086234d223d0b4fe690b425510fde7ea97e0cc36d0b6227545c75642e0422ad90bd19ba9c2b13f09c6b118551be38a091dd75008585ef370c02c88c3b6b4bd6b9070b85e9e553b90eb384a1ccdbe650bd6b16d0fde20660e946611fd38852cdebe049608cab71b90c512564ad834852188a9e23500f91c95bebe6fbee3bfd998aaed24a7a6ca400ac896c9bde71e4ce00e2253c6939fc59c8c72774cc5125901ebc7e1cf34e36e1b81ec56bdad1f9c1a79d7aff3823f5809f655236fa9514ec92a25b2fea105ebb8575c2cb9ba70fe96a6174eb9d950ce986db080b23749629ec9fdea0911e2ea12f46b5e996f1a260f97a6b70bc6a6fd484f3bf3551391dae6eabca25e9c062b1923e20cba937f23cff91e2b25d72d0efb895b19369c85714b96a79057a507003080891e77a3f6362c613f80c9273252875b8a1ebd71f21beef40d973cf4db59fe592e12dd115f3c34a7cc5f03eeedd38fc8181ee00bda17f7b6caade76e90f669d1e115fcabdf00b6cd1ac6d235a142e6a7a0219e599dc0167710b547ac0e7a88cf6050952deef7bc581293c64d713ce23d9ab6250dc82145512a2ef155c70a49a351e968f090af0b2781fd466314dbcbc6280272da143d765bc1cd39def761f61514959c2786d1ba273c791052e3646926326a447b386cf71fa15651c81d0a84ac7ff3439b1b3398f171d4ba9a8059855b72cca37e025a73ebced5dcb81aff2785b5e966668d9c719873fa2b75ff51816e4f8ac09d0f679a65cc8298d48e98133eb9871810347f0b3a53650ceef599bab40afc715e303a71ae96a2d38d4d1cd3d8c6a97e1f18016635004ae1ef5208ecd3a0d93b5309b7aaee24f3d0b2661d978877c054053b9ecbab2a3540885e621e73bfb82aefe8d588e5fefa0d3550a52dffcf24b5bfa2a75d04a7b1910a3057863d447abc9b496b111e341371a14b9fdd27df9602a574dbdd294a879624014223c33dc85dca3e80f20559ed1b765ace8aa9f0980a798fa947083fdc31c51c22f32b2fbedb63c9d31df492886ce0ecf004f38e1a867ed9ecb3eaee0801f93d7c0f557232a58fcfde42debd5f64e7b2eafe4d767190b6bfb02dffb0187e9c1641fc37056bd257887b9cdc9c1dc388eaf10198b55b50877cc256bb22cdbd467c68f4e1ca3af20d641b6a8f56f371cde353592369f850fe45909415225d7ac29ee9050969395696ec017ed69bc8610e9eb064a3f08db0276abb99af2562c9945ab6aa4efea0b637ea2437057ad7921eab57433dac2cdfa773fbb02b1b760704d895c119a0b1b52f86ce71a216674fe91cd1f44055c64670839c3574964d08f7317dcaa25803f15447a5f9b50796c50ebda82a174b9b67a2061df56b3564aac2256b0c9bc678db6d3dc63b8d89311690307b03711d1a56ce2085437a997adf18529b027393eb8040d98fa6971b1f9eb018f187dee72bcff52f51c2863204e5f977ba5706c48517d524c522bfa0ca020c8e8a8cd68d5026e12fc91d00b8ee5f7d8dfbe65a4bc4c41e2071ffae10d51818a859b49dcb4f6a1a5463788efa34f4dc68e6c8ff21a7e8ad94d9455e99134c3d317e76e0aa6e81c8e66f66b1ba86c72f299fa1ce7c922a6ab03cb9c1c244e043ebc976fb1f00bd12e9c2c135450b48b2d2b082ce51c0a79a37962b1945807eb0654e96bab40ff3cf2e5bc57bd47bc2387242d4ff4e5aa3a9c8aca9cf4f0d53733ea185e92c9045ee5376ce8c51057d73811a3c02ec23721f2fcec9ff514ba98b77444f722dee4679c44c68bed3c8f963fc7cabf18414b791657565936a0b2960311fdcd79c6e8818d733bdc13e6b783cf9248eedb1a3ffccd334bb2f43b4c9e3160f129fc52e6d424a2f1d07ecd7c32aa033079e749bc3f4da3fb97f6cdcfdd2694deb506eea00e2468f0759972ebb65f6ae9bd56fc4caa3873b8d861663a335e8f9edf3cbd1feaea3c759fd2c6346603668f1a65e47b24716bf9241a8665ce68fa6be8641f821e047d63ec9a18965d405054cc19b96e97574580a4bf5b6783681808b6302533ec324d2b1c83c5bd393eb1057c106dc284e6ccbd191db9411b8775eae4c17c681007d50d04ec9da319e12f13e4c41457591774413d8d000b948ee250e05c0a1fefa03640556e1cc4cced62b81e1838d1ebcb3c7c30e27d7809f7a9566c307d5bb91ce7835d495731953b1d37fe7e0aba3014ef8d4539a3a03b57e81bf0025e8e80e10dd5b3b7ff66e88d6f7f21baad947820256a5a7342f68862f614d4a12ea0f29d99b91c8f6eb030b43cadfabc9e75600e1a13a5a0b27db80718f750a5a7bb0cd46875a27d42248c7c62854792e3e763d9bce0457e8221f6066c5db5ab960608698c431f4da949ed8b458920cc43ec279a5816141cee6557f9b3cce7b0a7e22263ec22352113f3d72a5e53fce2189eddd31323d08d778f61c103dab060e207789f47eee1b30a922b417323820df6a0ef7887b7ac002dcfdc6b6c3637ab48324dc2625200faccbff6353951c6264f7958640042fe0fff76b907626588a160acaef947aee750a8db7771d2b9cae904fc0b1db627cc42167c50073917ffc83e296842afc72095722fb327c63dbc2ff5c379155d2a7b2c274b8bb47d0353f8f5cbfe616e5f06a0a1a83a6bb6259c66f464c2e475d4f81616c21739c67b765bf3490eeb8465c48bc34f9dfa5334901976d81204b1db3c0e106ae272049661974c1352d12965fd598a0b2784db95ccd6f55a2350e68687146602bf19d87d650a151a8c37937b457d098e4e0764e4a2d2ba8c3715af35a43ebe01226fa49250a21711467fe9a5ee0141e3731def0fd3505873b3003ce1862ae88877c6a6fcb3edf85d24014a3df94946103148e1884f2300e5cb226ad7dcf0274d90086a65eb7fab94e6f3d8efca0170ba6d02fdafd210dc39b013d478969b5d0a6453933c4751fbb314366baccba71d1c0b9afe747d65b4efca28cdc3d19ad24b682e1c5d72d07651169ee8835914f916af911aad0338dea093542407851c385ef0b4034cd0f19ca0fa65225c0865c6b18fe627dc8676583f6a458c24bd7ce0b7f47a70fccf6a34d018e471200becefadd17e3e674e7bf9ebdf2b37e8c4a459505ed9161b97cbe0355fcb9b87967964317221942d804e132b2c024ddf407d10925847a8afe4e75c75a9eec58e46b845ab836717343c1db527373e34ec985dd12b7cc6d06a83752c26927d82976ad7440198e5f92cf4f1fa41c79a736d05d3b8fe552557c2fc177ba9c61259eca43f2f747fad25a0a4e82f57e5f75ac37864bdc19b658d3827934d021938a3a4d229a7d2dbf55260736c068af1d82af3745619a612c13a666bf5282dc317e4bf66c4579ebf84160fcb01e720dbbc6528aa4e1106239b4c45b5cec01b784d22499b4f43b6670212f021988c346e6f16a26051be26605212321682e4cb3694e5c013f45847b3eb529db91fe5b39e2e8da51abce5be9e98417f83328a77d84cbdf6024eaf24629f31c7af6643f4b7b8164f28f291b52e34616d3633ff28a3c8cfcc1266a1ea090033ef563f845a79938f5189802b0633068a15c097a9179ce4da0fa04d7f85ee02cafa37b1b4ebb2cd44e4aaf2a15dfd58cbd227b72c99a7b23c7192ede15664f66531cbc00ea1e81ef3cb182b9c92fe8ffaa8d7dd74ca7aadb1456fe0eb7c24fc437c5e43179910bfa0ffff08c4e402e999e9dc1b2e0aeb6bbaf40d5ef63e3b76f4c2a82fa1cf35eeb3b721ef9000f3ca4a912c8ccb5a22c7e660930d4593466f63339a4111208734e743b233cf53ac85044a896dbe351945f17523af7afe3c235be06a87e93a4fc58ea38000aee322bf1aa796dbdb29136ba9b6e8ae9c4071553e30bc70c42f5e51c2e06e67322016ae3eb44d2515fb8ed359f82a6f536e0a8a66fe1a5defb0218c9ced547fc5d2f079a7316564e5a36b528ad6504676554cc9a17f4a8ffde37015f1c464b55b8ea450f93a17969e6ebc30608dc679bb53f488dc357a25454556a8607bcc97c9b428818e8ab22363def4427875dcfcccf306766209eca1ec47712bc4cdf1ea2106332e843dedb79931155b0b7c9a201ebdbe42153dc30706004e8b414408b852f37fda5be990e58ad139afd2b1155201d0d03bb91300abc88ca37175d80334a831c322c2b8d8b27275712110163a007c4defce9de19227e95b84a5d6157982b1efabc7e2619471d667b89638986d8ba0253aa81b797d46a4f96b37d224410dba001b93d0df97c442b3369ddf50d8853dfca522d7c6813cc1a1e7d6bca558091551fefff8ac5d849f3a5a3fdc7cb9ef9b0dd5348918de3d75d797f5ff1407be89cd17212b9cd2678996bb99325fbbd50a79e44cb8325fe6fb1e805827f46c5484cf6f2da388604fdc760fb64eb390fc2c1e32429c41a1a9d78d3023e9d46527adaf15fae56125b640bf6794a530947edf54848587a7e8d9e4553d1da42644594bb503e4d563e0d768837ef1513190359fa9c24d1c21727df58b7d8fdabc328a26e77b2575b4fcdfda7b806b352cadfca5ced4a6c9894b297bb3dc8f7818ba07717e053176274eda866ec8533dc2c853ef0bee01da9b8cc74a309ab08f240a3a251655750b689739d31f4ef787294fc1391182aff7708ffb6776da1d3b35e3c62f266c2496a1e1fa0183d1313791f145d74f452f2debd67eeba1a8ce85b79086e7f97aeb7f5fbee6cec64c2f442d8f93188f5e4498a6ecefc82069e8906f9c283a4568c91418ba7563d306bdf9782095deb36765b9cddb25d839903cca5728c4be6adc26f5c4048598fda24dd0bff5f8eea5f86d883c28e333f6bc848cdd0963f25e61e7083dfb3050bd853fcded0ea8b375fae150475bcdb59bcbc8239a6add26eb208cf2ee8345df39f7500c3d5b8e9ebb9fe49ffc615c02da3f13972e2d82fd02c388b597372408be395ef03729991e8f3c1f9703b90d7b034970e8653f9b30770bd01cebb875091ef37ddacc5050588d8ad530d05324ecbf52d16bf32eba40c2290381f490bfa59e543593a35857dd8f1f67456adfb0b2b0ca4403ea5b21ead8f797e9a4d8e7f5d5a04fd3ffca5f0cb645de482a34f191d530f7684813e6c23948303217f115b6c23c8f55d47bafc8919f10a3860ea428acbe6fd7115f45eb0b6deecbda42e1b285b3dc8e32099e532b135c132ac48a2e2bb71256772a73dddfe640175d005f7f6a8a95aba81d6c57aac59e88ba05687312cc0e7a5bb632fb099d2d87b6c3ed1b1c2bb133250558d74744f3670f40b6e3106b07e7d6ccdf1923dd522b317537ca7c82b00e65f10534e9ff370341b6227b536e7490cb580315fb81231178887f9d680d4631842a6d466bafd56867f36a4e6143eea5bcd0d7bbbde970832628ecf53e9ba0f59e2d21047a87eb138ef11942aa9a6bfa3016166849a09513993c88e36e26e5c92009e33c5f95ca028410ae4e463d62ab5277da992c2041962261677574f68d888c16eaea717d5201ea5e5603b0f88121052ce71ce18674736bac18be7ef8c4f1b5f492602fab925d9e26f4ccdc07aa225f310ade94cafb2fab27c95411674378fa4ebaf83bd24dcf29f89315b60514cf2611f501569d85d233a2d62222e14a76817c610aa8d7767816f40648d500c88ac0a8bb4eedb63b7035243d4a66165b51ae9f640c74853271b6ed63c0627b09a8e3129603b033d46ab7a7dc17af44590fc306759caab8fe53712d38edf71c4541e7a9a9d64ea1239e73f36df62ff508ebf7743bbbe5fcc12b9246bc8bcb6c921e7dd185da03655dee021e5eb1d8b82879e07b1a012310756f4e7784e56aa90f0be9cf3b843996646d9100bdf2bc6ff79033eff2ca68ac753fa64d30baf07f4827ac4e0d7785f00ad65c52dddd0c4972917342af2fc98fcfdcea004f80f781d32456135732533f736ac3499d1f469b216684c56770ea2f109912f07033be20829b597f561375b830961c4375778edc7a79804838fb7c12fe58ef96cb39bf6e0e9dc3cdb1092a544ad1c8e72f6887451d6ac68c9a137e8e227a32315c0e46677ffda45547c805d2413d726e80191c8b0e3fe0bf681ee37c9dcef4d0608b92c374f9aa1003bfe215dca37908a60db85908232865f2dd474d4e7c65caa073c7b2b733330811434f38f806e5bdbc0cc4c7f844f7f35797967c45f3287395d03f31a96eff2d1ab5aca5f69182688fede6a78c987d7866aab465b0c749f2e1ca9e424d13e8e54bbf9bfe3daf74840098ab54674b8747787b50adc2b778b8f537cf3a9a745e8ffb2a86d7b6bfcde68a9e436dcaa1821b7198f9396417287d4c43009cbca5edbc3921bc94d167c219c1bdfe489c22e21576f9d30efa327ea5f6cb5829b11a39b0338aeffcab8c93a0c04c0b4d947320178f29d65dec7a5aa884f9d46efba2543188a98aee9826ae9b5d315c8b694c35c1a697d8ef42c31edc4fbba6f4fc5b671f327bd8e22415f36f9fca74b562306bcc258a1466d565767a8a9a855273a6836155eb4a45d59efe218b3cdc679642f54113d00a8fc27981f04fce97840cea05dda593c484fb5b50857f7455fa2e92f8ac3c3afe264a96b24af952180595dd0d22fe98d8c92ff532871fc75f06c38cff852a52046e12fffa26b1f0c52da4d654b7fb38dbcf15634f2831cb92b5ab8690c31c57b39d2791df450bd9b2e374ec64066edc69b1ef2375d406f9bd12ef06337a65dd46f5dfd79cccdd25fa0c33a3f35b1e26547ad90f03397fabb75e1e475ea8ec01afc1ec23c2ede59193a64373be4007edac572e9c81ff89043d13e149a54e997de4a4b76c0c4e5f50a4d3f31c4e156516408680d1ce1f040ff876a49edca17ec02bde27e62902d30339d23390f583fdee2cbe101d1c52c039196244178dbc984705acaab293f22f17b5b9976caaa73bcc8f8ba9a508365b30f16b87c7124110f0e462ab5be558de7f65e3de16796aa8af2779934423c2d4b2c5e855e7d1d8a4016a5a8c1c760a5a75066e3c8379f470cccb2ce722583d0aff8eba131f5aae10e27e248f1309e66d0b35f05fd87a95f8496ef88efc9d2fd13b6c985e22a7019f50e613dd2bb31afb742516199b547baecef44fab916f1a979dc98b536d66019ca6cebc3d0852f851fd1652989516f80280728631d9697db2c788b97f6722760ad94631fe496eff4556d1ccacf76cd2e7cc0d317e2269753d914f44ff1ddbc392f1ca00d987d9b7132f8d62401f86db62a2df7ad32f46898963e9afebd3f68308b22700395080d973d4eb72ba1c3e9a322047c1b7654d76055583616a3fb9a1a92b99cfb8f6449a77e587981363d3fd48e23c4186bb5cbae1792369dcbe1a054b5abd94bae27a6c86266e669321776837e808c606d8cafd75264e88ff637e192958de68ade74dc294dc02af9ff3ceeb0b17016d6b08e10c1023a1c597cc13f1b0190340c6fac22ef11399472ed2421d924a3ac27c021006e65c30381dacf1843b5c0bee82fbb23f3b37709ecb5ff3cdd98e966d73b45105c2c9cb24a77488b2f2c0434dc8d081c562dbcf84afa7b02485418fa3c6c3ee0119d3cfe4f5e3f96c3f0ac5546415cf9d58f4d1bf51e6527065a423feb584fede6bab34c0628051d206a0e5f48d506c51c62e36d5f680b6a626f1ae9e0d997b49b652693aff9203f0aa9f2104418a26538fb4d0a018541e2f66ad37a6671d4d3cdd45a58f1128a7a49e29c089bf6d25f7eb8f5f4af0074506cbbbb9a7e20e2d2e1ab59c6cb41dcc2f6df7cbfc2237c808f6e904ef0a03ec1048f445f9202d175e018f77c3618a7a9d9a6ca33454da0e4d074e7954b60d0e19a230e0782a05aa8682a7322d302a377650d56f5e0994273b0e6fe2438450b88b51d7d8fd844d514bf573319add272ada911707ee1fb1e9e8bd85506dc999494ec21946903388ab544e408e98506ac971a2d96860dd30fee5696a65354b727866baa4cd514719bf40679c05bf753da6465a33bbc691cd59331bef2482ee6d332b3b6cb1784002791391b510a299bc2f188645385f26e7d87635c852b5fbb9cca87102a5cbdb41bc6762d746ea891b75502e3929287b5fd52048658d4fabdb0950b5c729abfa0fcffb040676e7abb6144a1de76566b0c64c2e7dc88caab9518889bc9e1929e0ef91059d2c543ea1d8f438ebfa3196ed6d5c746ba9372184b6681818020cbd0d30a283f35927d33d99a2cd392c7290e26f4b905f5f07f65d3972933768050b7a1ef8637c9a0e59e024ab9008ce4bac41aa44481c7b4228937fc1e9deb523016a8cca8634516498118070100caefcd94645b3de198fa3e89cba433d8f4a3293ce17dd8276f0357c6b51542fc7e69b2412650816343d759790cdd1ec8213186f46e86835ba84659ca09f89ebdd4ca4b7cae7bdfd04b67137050009c6233c97feb7960b1f3646bff1ec4ae1082593f3646f0ea830e236669c4c3bcc33313e9e3777b025373f53d361025218b07a0446e24fd13de7ee80851caca2419418dd95817b7beac6d638e3b5edbd95fb065732785adbb0d68c299d951c12455e5c4ca95f21d120e3347e7c003f8d0b8e40bbb62c341b5aad0abf2e4f0a920d98922b94d2f3a00bacfbe6f5473c8b665f99219ad92c418572460587ddb45bd51453b855a0286eb2430a7006972cb9f0efc0be0098728fa906ef9a971a776cc50a758d110f1ae50af513f12d0b99f7b7c5192d0b17d0aefd5bed9c00524be078778a4074ee77def0749c992c41e4a02b6c1f2b881ea682a3ea565e5ac0e0661a8b9c2393d1ffa42103e3f34d3e5c42f5add80eb1318158aa00822a63e29f3d9503d5b9f7ee9f3f53f02e9ca3ee9c92e2e99e7e701922a2a7b4cff970d34045ab56bed489a9589493ebed42bcb571f98b5bf7b099f8bd2ed0b00101926534794019af4b59dce55ba1d0e2f248ff6003550a7b65e476799db3f5a0271b6e436197023e886982b12fb92f3e84b69cc7d5869c57818c66e095e2f2b90f9fbc9cf7eb1fe356038fbc71e1137d4b359fed1b15abd87f23c6706726ae1e843d692b56afdc3c7f1f43b5daa4d0418f9c95a4a19650ac24f436ee86cbf35f0c1fab085f811f67a4c75281701fe107f1dfbd286f67942c72a24b92fa5fc4e796cf23efea9b35e5cc5a2159ff79cd43117043a3651b1824887102a63c7789e0801b7a50d21bc2036e84b516fa8421f3ccd500a1f90100619feeee52e5c478d30ed69d800e7bd364419ddb593707dd202efd389b787e3a2ed1faef1008077ff9170fded58925844f0b7b704f919e9e81576eba85eeaa05f7a553b682bf4f03d05346cdeb66c36ef4933490d8c704b9567f15e1af923790b79d21aca758e3c105ec74cb74f8e953864df35d5b42b002ce9c3fe31d78207c5e9777f73a9d0b679aaee232217b6738a1fc40cb1a99d177244dd06547ee330f8ac40b85899bf5cd5a3846b8e018a97d9a0611ecf92bc81eb28c7df280717a415bd14caa3044d6fb283c5ffeea532e1b778fe1bc8d44ea8547b25101068f84f277000a1e391b2ebee45ac25370c8c9e7e08bf0cfc8866402c8adaf1658b72208ea638cdf4deb864a93c33011cfee45b141fbecd2b15445ede672c0f91e943c2a4d4ffce902ffd0c0e9dbe42f1fb535d452804b636efc4c42fa5af33ba9508aa47f63c2b52d25a54a367e1316f26d7db2ea6d80eaea9e380e2fe0398c50e36a84ffd4c2c49ac774156ad6a09b721a8bfbb390e9a702260f9d41ff7c7aafb2b6cbe3279da7e3b7126d1afc0f1f39d445a7b818aeecc3bcee27b305123fae5a71341103880eeb326eeaa812e76f63edf3f716073d5766a9a5a311fb6b6dd24fac58a9d19464aafc27499ba3e6e371af0fbb212faa375b4d45612ec1741797b9b3bded0840fae1e77acd367f71ae320b45e58b7f07d19c831c2926143d135ded2ac9fd2a5e1513e042f26fcf4d35049d2d95503987525051c7133fc5215a6f571de34e4a9979ae94b4e27793299eda77d2e227fbb0abfeddc83309296774bde114fed31f8d424b59e8250611047d771dd1562482df35c2b6ca4e5d99c773be19cf13d4b1865a7f03335dbe3d399e5c055bf7d3decb962fab05992781e5722b766ad0d021519c19aed66fc92c26133c3736dbc90233897d18a847c942e13d41519810563991aa4df5a07d90a09dfb789953f86dfacf672edb2552694515ca9d60c4e76378230ca4ed9d6fb8f50b4a2a13efd372cb9d0b1834a19e4de2e4dd515d4b5fed016d89a1cecf0eef59edf1bc34a083dd40355f01a152dcadafc9e0610ba931d13963c6bed3c5d4bb31680e244ff9001847483ef372e6005709af9885c154e15b788592cce0a75e87b137a376a330a86a1fe42bf9ad699da163c616b7eb06d15e4afe3b9a57f72fb2baeeddaff118c2f64fda141cd94c81a64fb4416eadc32e55e54a5e391fd9203ae1f2d349d584ece9f5a845b74396213165f4c9c484216769d4ee1d5c92a9deec02f8235e58d68aad0608674272cefb11f898a8c8aa5015a4857fb8884c212ccfb970ee7aefbc48dffbf1cb2c2ce2dcdddd9f5fecf59101331db8d2a83cd1415b6437bccbf351a26eeb62caff1704c432c6eee24c5942d8fc5cd8fb85acd2abdf88e19858fc894f027db9d0611fc60d25035a7c35f0bf529208b6b6ce3bad3112d9d00188c8bd8061ee58192c9e3ee72a8fe675553e3c1da0be69b1b4b33aaf6e86717c44a406cff142b8b02ad62a8447b73ba85e6015e71aa5630a7ac0032d0a2aab314f78b280e98bab483fcf138451a288587c9b2b170eb5bed26ff04354eced0a7fc963e1f72a07c3b02a5f45f65d30ab0a1b8a7592c33a37dab3471324a72a7f9465d7be1f87e3c50b56fdad2a15701b808237bc83ba3221b86c562c07a226f395b7f6d6c5063bc141015bdd2685c4825a8043594c173796c2bc7e4c39cec6a50431dd0781e126172a7f23055f270ceb078fb2d91ba335e965f91059e90f43c1fffc8c27542cae579a923111d81cfdfae10b92a1b0ed14353573e9741e9be0a201e55cb944ff27fd09d6b7b84c141acd1ea3b121fc9f8dbcc7ab3b89178602168d9598001ca83ff4b92801f4c2cfdd841da52a855125695b819305e4a97abacdc78d8d4199e1512a8c5fdc505fd816d8eb1bd5471b6edf6d1ffeaf7efa77bfa7c9ec785fb4461e046e98325e6578c750d9c739e38ffe8b11ce37e5c112c9545de2b0bda7b2839a3988f02c9d45453509d5934714e65b040b6d3804c9e71441f82fe08b053703d84f38dde5c2a4c932af84c6000d7d2ebea80aaf7a90700735056e6e3179756ac71f437625bd3b902b58d158613a787e56e93e674872c6867944dd32d1a870b6e7b34c46725f526d0129a0f116dd670e7f8b4dd144ffddf07a201234b83651adb8e4dc7e17d57d52d574d71bdfb435a1f22bca095beae2e6ebfcf48b20c52d16c55dc580d3544928ebc8bbfe02c324166b7c30cdfa37a4599940031e6bd7720c0a84605033fa00f02665554555f47b213fdf99955ca054ff5a6a890d5ab6fa8136ca1cb7e25a1f6de2ac21b9736460767cafa578fa76999fc3421bf2641c90d77aa7e4039ceae62322273d404d330dfa7af8b1f041e22dfd4b7aa89472a2ed1accd9e7fd8d704eba9418643610f6d71cf408813134d411f0c4c88076ec1704e602614aab391caf43c6325904fbcb5d4263823ea038eb7df6e45cbb037e1378157be35693a0db37ecbb63a9409eb6841892479f3aa02b7469396e4974cec51d5610490d7f140394713803e253cb0e34cd41de09152728fdc924017ba93184cac351ee25440ea56768d01c8c1982a57b233dbd3e24e2fb411a4e48a586178fca807eca94a9a5b66633c0a4dcc64768d780c964acb10a4a581bb5587fab45a74bc6ae0b6f68b6ee75c716abf4ccee81269934838497f28515774853f7f3e61e7bad8e382d683a17a5dd0cf4c1a633db177625ec04acc60dbe39217449ef7653247f19fd4cf6d39bf84712c69d5ef428f93778fc81ead2845d750a302d0ec35d2aad92e6005fa93c0815dfd7b2e5642379a2b4b883a39f06ce5f7c6c33bf295044a5cd4aec844af77914d79709f521b760ce0b15c0fd9aface715e0dc7d5c9815126e88f2693c32258c88caf4218314d7b23d51a7cee117dca4ce0cc3daa0a68c74d7465773e0499210da9f1366a555873f76dd7c72416454fff5cc01c14ba38e956cd1daf34417dd6d5d3392fbc9816ba0e1111bda87c7e1cf862d1bcae0de93e6b48c8e47325398d056e16f7e3bfc0d608c15bf582d8d1f017da69fd7fbc951c70c333eb12be53937f86ab011469c13b0ba92b8f2d505dd2a36651612e7b516c15a1afc44da94427d47e60d25cda65be9da750f066ca7c13cf61749d737c17d499aa1a817a364141a853ba57a053fbfdb1d47a37c3899cd1fcc8ec0f339a72c03ce486a3105eccd0813679472c05aa4652f4e530760ad67b8c0cffc6953604f1c14c210d289fd20fb4548ef5da575ddf0e461b7f80c1faffcfc23c99cd49db8943dfaed2335d38ff9cc991255251c95658ae0c8027f22437eb69a8dea1bffe677c3aa3d8fe949f68c45c2f31b4ca3d78f4716e9bc6459337fc0d0e6c5ee3e8de06ed9d40fbdc7bdcc1fdb97d15e82f8306f250bad088d81375ff7beb5fb5b9e42ff5ff03c7f63f41d75b090b7e543e92dd32dbde38fd9673bf505e1c4c02cde778ef0ddae7d4d8566129153f9a45660ce526aa33e67dd040fd83e82a6f1bfde47321cfa49dadcfcf497d9e19c75a1c81c5f3834ef0c3bfcf2e9114f1e6eebf045c449e3f8cc433fb8fc3fd3a59f5fceac6429b76b0520903954552d83d43c8b07b298be5d4f0ddfeafe201f6796d60f37ef549ce691fd06bf34ebbd8524c284a70d4085e179c610ec7a29adbdbfb72281145b813097d3d0b371235421b297c7fbd25c73281b7b8bde53b21ceed8ac51441fc0c491ee041efcf2268066221e832a09ef9b0df0e62c16ac94bb91f2131adde5b868227adccd08571522a78e6b65000922a47d9b12e565de2da312e2b8e8387ea284b7ba28acc75f3908a69676a865dc6474258a926bf03da7ec0bcc5436b6fcb527ec5f083730994337ccafa033fa2ab5b6ba6aac733c0b4a747c2e4a4123292b539a09f989d7b939cb8be50866c78a757d3a6c5ae72b59a2b8759630569e741cff5e96a304c60bece2ccdc19c19e8528983463f12590916b2615f73287d4eaa7571122510a75e6afbec8949e9a8abdf89501641d14b3ea5bfd71289e8c0cef759c8bd21ebe11e336286233fe4af1b6308a80e6d4e58886269e877f18d5635763ed9fbaa119df02c98ea2d73202fe4dc3e63935e565dc308770a9623ef7a18c213d0076cd502291f4d9f70f7ec923f3c252b4d3269ef9ed816f249bbf8b23a4b34920533fce39d158e323e7702c3a90558345f359bf1431f5054ca70b56c6756de4a07e40b9dc3ce58ac67b6884018688ba766a3080664cdb0fcb3894de98608ab86e4e61e1b59f5ad3017eaf6118d83a623f883575582709b5a099c8bc2152a03cf6450e30a0c7bbb61d4d9f1fe98035763a258c22e744771e49399c057c595cfe64606c50dcd9612cd519bea9d60c6ca6795c65021bb6695baebeeb47601ff2186a88e8eafb0b9c8e918af07c670a6b2337395b96c1fa23b94a57b49644e479469f1548d9ce6435b1db5b8cb95371ebd02b428b205c8b598aadd984f781c6478d5d53cd2affb6a6997ee8238b3d85fa1f2fb65c741f70a9cb904be31969d34a56a0fc26f9411e4652f942557e8e388dd53b22c5b7877260ce9584a9d8a5310ff90bc8f272f0240cfc1225dce15f6dffc6496da7bdb26f48d4a33898cdd4fa802ad4bff4ef2f9c1574cf4c8414f3c48dfebd78f7d5e5f5786dc02f153968b8c51a0dc6e4a140d768e205c06decdf0ceb8c00628feb9f025033db7c2e30f2b837086a41d58dbf0bd6783073161782cd982dc153e6ab0329555ab0b80c13329fa7e4922cd297dfddc59d183412c8a412cd1d6345f5690f5667db99156ee301daa050ed4fecb1f13668bdb5bade7edc4f8ac2c8f37a414cbf808b1474f441fb171a30ce5ba7256a39f9ce0c2cbd5d516fffa3d0ab04316ef3ce0bc7caf5ac93c9abe2c6c85238918dbf8ee941cd35f6dc782218b62504a7b22d0aab45f15796d0e310c97f5f9d058fc8c6fa961fa3b936dd3262ec6c492eea2a350b9a211599c993c399aea194bc21c68289d21975506d754973a804a745254aaec6baaa2d426f4d6a62e6e560e4a28abfbe1c1c3c30de5533d9f4943dca6cb200178312352c96004f4e9cc6c5230612622f54c2221a8368491e50314f03f2447305795d8c6d3e508fdcd337fb18386ebdb8b18f9723dfd920d1f4f7eb5236b7df3e1a48f252c5f1af72042f793e089f2fd543e3bde9be714af4b944fb7964eba3900ab5c5a734004f27f1294821d4b1606e890fa822687c80fec16c41406caf45f4a44bbac9c4daf859afe0bcee26b0c4973ff12444d8b3b8fdd245d54be1267bec5764a666e18d90f3aab7f7312a9aac81a9d7eb1c7d3e8b4b8c9fac4304de6d051c8188b5906266ddeeabee18c9cdac2fac5439f2cc1317520ba35f31f97ff1dc3a2f545c7fde4c788b7c66cfd27264bd2d36f5bb469ca8271b43164b48cb1b0817113cf8ce3a5ca86be74b0230c797bef81798c4ffcd741bea150deb49b16de639a6d92fcdb6ce0567bbd95fede8bce17ea8dc2c91a8461907beee210f943e2131aa0b2cbcda0679496d1ee751dc8fc2eaf3d46903a4eb80e18743dc61f0a679a292b3965825ecde6c255a694fb0a5fb933d96e037dfba57c3ee0d2fdf521b19da275ceb4f0fd8f254c8cefae875d2b009994274a9f62b6662a5eac443030e2d5d97becbfac8da6dbea399dfca254f0e004afe4db4a7ad18006dbb734051955e6a95a284b0bfd77d5284fac200fdbb54f570025c9165cfb6337db1e0bbaa44d6070c204d8f39ee4bb14b0b6d5dbd122a29cfccfecfc707bcd5ab1baa8d2fab88a87467178d273e8d9e0be26642ac549daa0b9b421d7a6b5729dd20242d5109fd63cd3119125ec8fc4e8f5eb2d8eca30fa44560018ca58471edc8b93415420037e489ba1f31a362b2982c8f7f0c76edc3f85fe7f401b8d111c5ead6f43b688941cc8c5dd7710761a904af1a6041df96676356e88c090f53c9f66c683f9d73a9498464eb666d441f28e41ccd3469818ab9bc4a0798e380c85b2ddd6e4a5c59bf3cf0b62833c996b76883fc3a1b59621e81bf48878e417a7b23d579be209fac464f2279ce76da41d3ccd38b8883c32cd617939c4c76f4bf120a9cfddaa2bd4fbe8e716dc48ac2dc53330a107e1b70f84499e2eb07fcf54b48ab17cd2e12517d55198e462c1bb7ad68bbdc6a968949ef6cf83fe73d2862e518a81fe258f7c0d18ea7b70bde46b4e4ef519017cd4644cf04ed57021f99900d8064d2a94d63b9463718fbcad9deba377a7d1463096759e99d088bc69c823ba2b6e72142c076e9b8f12cacf3829a196e74068deabea7998d8bf44013fe409177822e25bc11241ee52d7568f05ac1b9041db7a89535a053f56ceb202e0dceeb539838674e29777aeec5a3612435179d1a6a2ac33677441d46e2daaaae1c9081b254e43e3be36213d693c6935bc90cde88e46245a166d9268c052cfb7ec6cf3bf3a06a41374479fb60fd3005aa3fc1ef4bdf0202643268d31cb5fc74d21d0aa841123b5738e78187204442f0dd659aa88c90f0bdc19b2681b732b085ce2e7af2fa0a18f9edc1c84744b894393599e3ac53ecf7f8db5811c99e510613ae47579c05463734ba860a221e3a18542ab907892764f143cfe6fde995c749e9924483735dd77d807a823d2df1da91e42dca6eb2ed866aeec52b440662c56a5830bc6bbb0e4a13960322901c3ea1247ac8cde8124d58403302c22068587595af356a43cafe664146e797570f91e82d763ed1830e902289e14253c9623cbbc420f334bf343fc172fb2d32e5c3db3372a939eac4e3b68b69ede43e56efd9fdf42749ab5bb4d27aaa079143ecc34c8ba623123e9e509a8ddbd23f55df55200152304120a7978a9da9ff5d9ac75799c3fcf0d85ec34427e976a4c54d31854dc318ab23bd02422a591908d990eadd8211b7cecfa7610aab920d8ba16082938f9794fd051249fe190511901407fd3bca173643073785cf01ddbd181b30b49b19efb39c05859a1a1912a228c19338d71d428aeb9815ec70b481ccef58a35b2c7d1b7daeae1ddf3b1a1a4b5fd5c3934396fb262bad106b7bf83a36d422d8efedbe45a901cc7e2784d84bd19f98fd41a07552e85c400d6c69aaaeca2b530b395e093f97262bb68c7ffdf07abddaf1c3ea890f58a7e1b902d0efce3ec3f8363ba3e0be71e14c4d7acc3eb9d5c322d6713cb037aef4302c0854696e5ba31568381d68afb28a870725b41d8617fdbf3bc025c931250f25e4573c06e3e2289dd0b02f2aa93e696ae25965b458f520731d52fe23879f724657f026dec25737cc1e4907fae3519433cbce28f1112bd81d2b08fea92f099f744d8f31db730f93c23f7513a533d8e45f0a684231ff4f0ce4c73a77b6c709112624d6da3d94a615f4127240cf3785e5f936e91ceca0c511b90487cfb91db2869fd26f1df589bc6eeab028190c2ddd00be48b46708b154124f0d004b56f205e640255c2c7b66636e2245990d5a7e1ad166454ef1564a49d83c0671d070c8a50b667ae9ebefcbb08a4f9d977ac74a7d9f93276d91261947fd318adfa715a7e411fb43e427012cffd93bca7e556af749e157f95e46bc86ddafaac2671930903da800c9296994792d392d4974969a36b2dd4b31c189bfcad6986115bb02714b078ef947888f712fc4972b4bbf558a61920c65616e60f91e0d3cbf09cf6932807bcf67d8440da32706cca29e4cb119b2c02d7c6ea8b7702ab512a464748a18356238b13aa3900f8435c385f2f553a66d21a61cbc0e7b59c93439d908bf5674e8c3375e5a51e3c28d323968b3ba6231771c6a1ba48fbe8d183bc6fbb84ec272e555eeac7f1485c57d9d249563ef346880bd1b838d95271a79d5091f241ed38f09f929bf218a88c8b622cd3f9bd483808b0a7d9ef5fcdca9aecf770d7e263c97c0550ad2fa42f46e5451f60413cebd6495d70fcd5589ef5f3e510a1b21d60c4c06a30b6d3b63f5079f6c56a1f69152e471099a212f6288358ea40c9e9d2bc00319507727d617baa6ab41e5e151ee1a9f801d00f201272abb73cde9a41e1a8d22cecdf4c08082e61282e1922553f5c3aa929f35cba2c70265bc9e44e828206fbcd7a89b155e36aaf8e585e691b0adba3a822005ad433bcfc73100c018a7836885719778bee38edf2eeaca939a8599e502bee34f454f02ab6e72b9a7a7e1244191a24b8931237a74e6d9b5a854b6c110378ff0d1e6569459fa27ee31977a650810d2935baaad8022a9d072995c8f621921177c977a122a75ae8d5e03f745235a698015eab44bb8db7b9b3746453e58e115c3dd255c3e0c099eaf396b5a2b2982f8b3cc8cc2b1192cbf98cb6f0809d068b82891c41ec814254bcfe1256b6de83ff2727e542b39e18e15d944d8e13d05c70a8fda0a3c765980ffd1fcc621a84d6e74a0dfbf4838de11b551f83608a01450741ea5e3e33c2c1e2e3ea470288cc55e74457bea50cc41c41cf3d5b72caa88854d2c3b727a871a013cf7ef610d2f6b2466a81f0519bae6e9c1ddbda6478685c0aab5f2321c730d07b342c41eb58ea50e7f90227b9ed1a9a7945514ca1496f34ce9ed74a74c28c9e496ace730a15322a32eaa14b076810589c8175fa45721b08511e1f4ef28c37bbb659971adef8e08101216a1cc0917044b396bbd77673dfdb55f89770d2b17ad4cef1d8414fc5d81e1e219e61a0a9633e842d2453d750142529298f5a2d2c05c71d997acdbc55563cb844477a4ca5c89e5a0b823cdb4fb01c3f95115d1b5ff5ab9e3f0dc0ddf467af81cce13549fb33be4c6e77e733ec93f72b1c8cea2b1c85ce6f42901a646904cf8ffb155d9464dbb33804b0e4da6ff954c42f69b1517f2308aec7a0dc4cff300764449a074f9b92064388babfcccf050ad968f6d7d5722d071d1a2227025d5a963ecf2cd63ef6de6f9d4518bcbfcff92878cfd702cd51c57ad81b7f94c65764834c03bb591ef12f485c409627ebeae99a7d26576a91e85636ddeb08cd6e4f6110ea116f3e852824346add3479a233f548464502cdd16684ed6d3e0a0b0b7f968138d072ad255e8407fcb839e4d145b6842fefddc0925027edf7b20b04661e82f4d5bd36ef9a7abeb2aea9b6dd50ca66bbbe386d8f1694ad69a2997084f9b73fe4226882c05d3c974847c6b05c0ba58967a23cc34f0ec1aa2cd8dd996c843914c602206bd04c38b41b57065d786574b585e55c35f4f16c72feed07744a9a2407450ae463805f233aa75090d1fb4a67628ed627e36159cf24a19684712b3a61d3dce154ea4905d5d070dc828db248abe3b936f8dc78ce9402ecfa44cb0b27355a964c8c19864a713ea10cd58041eec3dbd3f9f750bc4a4f440d4d0a47639b2b7b487058e47dce491082730958ebb8f77a61708bc13b854e01a85ec9ed3b2d9504c1423bdb3ff97814765084168d0cff90374103f808b6b9f70b4b37b99caa8a0b3cd9a33a28202ae1f02f87c3a64c19ec4ff1939293c7aa338dc9481963d76f22eee0069901c502019a2a9f83b9da5d3625a3c2d6f309a6ee076bcdaee2903f5114b8ad62aa7de92ca20d07388831285b9c33d2802bd068fab5957b86cd43200ca0540527ea149e558f1aa0df609b5d778ebfd39b1e4eef8affff3adf9617e4aee6ff7d0a3ed0eba65568b00e122a86df76cf28178940df4b39ef7621e14968ef0fec881903cd21760bf72075011980aa7d0a9fc724efba403608ea7ae6594acaac7bb2003cf6005a7ac68f952e5af146164497ba7566b7dc618ab70e8841cc6d470fd4190a18ca9559bc38a5e2de530c3ff9af75f8a39c80f09d950df42281aeaef699a7ba9ab22db6e97b04a9e5492122757d9c0ea47ee3484477ae1b072ad6fb811428ae9d323b81a71eba617534735e845d875326e9ed47f4688be494a2d750e39239290c50fa6b196c85cfcc9efb3cce39e86922ef2743648d59342b2839847f7cf897f380ec363ab1b7e2960e5435e30316b86d92254210c0dcdbcdcc472135d5dd06ce66c10e8536f9c0b53fada4fbd63eaf6dc176b762b34ce37f91dd084b8714d2c027badfc6656d942f280661449eb7abac819d9715e8165f6b459fb68755658464c86b47019d3262fe7c0cea5688e9ccb4f289b3c1133201113e86c485a085fd6ed5282cdb5e3e7753b8d311fa88c0013b1593ce2b986afd5ea451dc6b24a1e739c2d8213bdd59a05527d856a507799404cdb98214a41c6bce172e349e4190287f58aa5ef8a42d98f026030cdb6b504f49acba366a43001ec086c532f89754570c6db9c7a9b6c5291cf3c5dcee65331d29692c1dec1a4f7473b18cb6ba18507572ebb78197e182df20bfe07a0c4a70b3b6d4f1599a0d784e30bf2ca0e9a921beccc83939a64c1d1a1b59a72f9cf7e9f2d6ee2e9f92510081b068aaa6de8624932bff530c1088e4e5a5d7175f0eead1ae609e563f773eab27f24a7c502414ea012c08d9960a27263d3fee573420eeefff40e572859001eb0595ee318c1da1613cd1a71847db3c6d9d88841f43124b596450f0397a68e35045805410327a89cccd2c17b244c6db1d21b45a9c98d7c4fc74f739118596982edd2a57b96d3abcfb5abea04d47839632fff878cc542dd9ed10e9f61a804bd5c3f4c5ca7a5ab89026850325affa8d6d9c6eea5f71af6ea0354cca22a07edf990e9132fa3d90f8d605ece487f78f0f10515513ffa28ca7bb9e777a7e926ed44317644d1420c00576aa1b23649e9f45d5b09310ce1bc712648551749941991b3a40519d6df85553ac9ec15274d808aa0577513e168e9cfbd4bc834344ea2eba9a413a9c33ee931e44e140057806b4d3355c55bb6f4c21b9f6a2ed51c16449c735c87bb9326b1363635f78d9b0d0ea5a272a34728bf274829a14896c9c05fdb201fbb91251866ce5668cb9240f50200351788e56d6ceba5e2e39dd1e2f593af156006f9cb37fa6c37e81a9e8c358d9c9be1dcc5bdb48814c0a135cbbfb19f5f1862e17a3748212b982cd3015bdba4ad0e1e0ca69239709e42469b20db6598b71411e60d0d7f54dd254172e254a37532010590c719c574045f854d59759f43f99e7d83b1c5011569b570bda43f2d9917a764f8deaafbf671dfd6fa57a389ffe37ddb377fd6b7c833415f127d6c56a142bcdfe5649d4f8e72c67a3b42a6619d7300a1156c69446f0231908be5217aadbc092344884cd2d4bed7840728af3478ef5da77877a72daa2901ca1ce28be50a5818b1a8bc03f3771f1b4a63f3af85c409148d8338c8a266692a593a35f7c0357c0ea8ff5c2dd802619dbb0ebfd85069bc27327d054ac9f5f74c11b8e4b313796da686a1a0bd32164424a7fcae8b77cb5fdea8e35c4d965e415ea2f7db91035478a3311cdd5947f7b2339afe91b69a06ef8280659b022f6215d27e330dd653741d7eeabd65e005670bb8f5e252e78de9ce0230ae318112a1a6140d071db3bfa91c9fa56c259cf120945c82244aa6ff8805be9d4b73eac548149f50890b00c14930b28e7da63fdf33fb73196f77a6f818fcdd466e2f6393be8d4a4d85a4176a868964ce64942391bcd146dfdc5d73e6993cc6d6c6e304d4255f83151968db423bc43aa695b1e1bc17b0363a5e9ce388bf8e33494ad4e3ed4850faa4a0b399602be5f49a026227637a9d290499672eb37bbab16dad8c418d882badbc4c6d549ae7971b2ed503160fc115dc8ab268bd59016ca49d38debe077777c493ef561faf92db30f9dc576ec26ef5fe41639cf9dae06afaa1fa6dccce0bc4a0951d89abd152ad4542d57678fff0927e2718cdefcab2535cce49135407a532181f10d86fe119dfde3fd80cba4b9b0112545193fc8676957c6315111c5be95ce4ac6367f63fc05f6d092be4027376936e1b965fe710e7937738b9aff70b68192b521af8ca763b1e5ed28a648f06b5b5dcfdae63490c5581b226b89b4c5c00fef94e9e34d31854d7de54971657c545f10aca2f111c4b0f8c6306b63cd8b05ccab2b351489c7269c3b01ef1340c698a05fd276824c91feed2f3130d6e69a228e97e99555ba68183f469d0be9c0213b39335753fa4ec52596c37009abfe82f42ba8cd96b7eaf3b662dc866b79d94982ca99d53821a50e2a8c9d209a857868cb2a23d40de9fc9c8d12772a2fc67d4d287c3572e410d782af54ee8fd4512cea9da3d0a1a35f9deff9ffb65efeb7e38432d7ba495eeb047ee0d300f5104ab922bcef2d77091f2bc1e4b16bcd9be5f14db6205b87a25d3326afa280404c1c1b47ff04a246cd6f50343fee99b9a77837ebc809d25dec72cc832f9c23765e1cc6b7cb7588d17df03a7159d0092e47b1f5e5b925106b0b64d20f38a99d11a4c98bffd2b8793bc3085b95220dd33c50340967d62ab28e1480a8c61ad8cd6d49a8b5a1cc65f26bebdf59ebe16f0bbff64a708f4faa015df93a905de062adc6ba65d5ab880a7c095211e2e089647db0233a8b0206054554a52b04252fba4aae7f3ce43f60958911dcd23f3c4b201723c2df47d60586884c565214acd6a7c69da8d207ab88882aeec4db414b8807f775a9e8365489fb3918837f510c524a3c0215fc2b364a750dfb005868789b0fb08be307fbb57e397a3f48d911f1ef6c2c73a263751a3a8a9b27cf014df408eef93d139dea7b2faac4491b22c8d3003da2852f2ed54d1f44f5031fe567e627be21d58d38f16f151ca9aed5540ec830f116343f263d6c900bc04edc9f2af40a264c464d7bfb5b252a422e5b10cafcb551126243bb15d7dd09d94f279431a2d5f4bdc33ebe8422852ab01d2d3131b4c67628d46d4aaa3a5f007e913e41fae5236ca89d059cba1f4a4954d44fefd5bc7e7088a270f9fe73c3e19c2fb582438a5b39bff8b96051ef46e4ebf88820217d97597c57e1b5c91aee3316fb59cbccbe2dcdd22d90e4a2a516baadc52f9e1ce90d2a3c9f0e9567919cb6a086fe2282a404708c8d77f6543a790d190c0bc879762ae6e67350a5537f1e3f5629ba9c2f680cdb93387204fb98d3d4f7ce42fe2dbb6f36f3ddb55b634d3f01579219e615b138e3811800ec5ec8f2a99ef6caf3d43d098de4b88105b6c2e9201d770c7a24c33b86d807bef55aae2ed42223eaab6b71f8a63f60c59cabdb7865c513923704d1e40699d8cec41ab9d41e2258c52d0c3ec906c4e058249434f1c263179b5a530f0a297d2f8515039f94fd2c43ea1d039e573ae650df50a45f9b2448e54a8201ea4e158a25f383308619e2787d6fe76bd178a065d81b566150f156a550becb2c4da66492faebc81c19ceab932a28a59e7a77b16661849c08790d84cff978862a18d505ba4b627caaf1a53b1a843d256ec04ff103baeced84a6aae795d78a8110f6a7a0c85df0a4c232b49b5f9f8dc4419df35cf78f1cf8e69d83257673c95d668664153db700b2c0e434f39eb7b8aef321f8d1cd6dcefeaa01adb87b06733700c499185dba1533c61ff829829ffa5c25a41381b7b79f0cd6938a560f0e3aab8c120d3bc480d35c5b8459d34064ffeb05ac3098fd8c959312342170e7437c1d7b11e496486351821f2086678fa2c341062c0db4a9885213619527431e4604c6babc603270441ea5103732bc6241deef50af8d98fe25abaa29e24992656056730e45ece608863d950321fef9b66a84f006b85751678e749adb04e067d413c2a595e2990af208a48e25977f5419723c502451b27461f2e5854bd6b6788496981d2a7e86bd8516ab73dfffeed689dcd42f36f1740c6d811a479fb7d77c7b2d1200681b9784642827c154fdd9f5d7d152600fc4fa9684334249b2de377e0ffe5df86019b156f16d169395671d63b5061591cb5a0fa570e61edb82db8d51db4c5d18d0987a19c280089d8959f3767d8f29c8b45511dd400ef1c3ee6f35c89f404a7a2fcbf7b653157deb4ee1bbb123fa7a22f812bb062cab70232a458c1a94c02799299d8d47cfc469592cf0131ed79202821bcdb1c6b5f34172ae85ba0ff71aacfb937a7500ea5957593a8768cdc6a222b623d616d78369d1ad659837807f38771ee6aa5bad6be80f88ec5e356ad3a947794ff9d1acee838e23190b90edd143476afa7a61470c29536790b9659c51e568f466aa447cbb5899065af02432a868654ed020d319315badd3d56e3c3a3b287a71f45d2a1e22b27839ec5699cd0dace5bbc86829c7de11cf8a74f25fa58363dbec913960b0aada090ed1437fae3591f585b05579502d87997b2166b761b52ca09fee7d75cdf3a9fae233de4779f44b56c4fbd4f045e1a23be00c5f2b97a8900020e0da370732da2c9e1f5fd0b745992600c43d9a4174d0c56fd625d99dc382d8c22605f41d099eb412ac2a548566cf605f018be516961fc4a6f40d732f71032ff205e42882441d1f62d2df67997376c76b2ae8397a27d3f39af4b6c8850e9d9e8a64dc81f11715dcb59c2e7302b15768ffad2b0f707fec199b75225a3ee6b5b16cd1237e314bc1e983f72b7720226c3a8589a1f28e1e0774b3faaa6fefcabd83a5094037a775b399487e32dad7836ca74528a6566c81ee57ea2c8abb6f5f44f59bbc7be688058c42d721da693428dd9f59c6d004095fd5188cd5bb6d6d3303d33dd5f9f2278b0097408025406809be92726481064306d811e2da93a4a2a0229af7ade5e13e92b0de400a97db4198073e749e49488a751ccf57916ab2911f00278e28fa9bb41bb187ec40b9dd65ee10c3dbfbfeea5af7d7ae165f4c7788a7894b104c625bef071eb6640044ec72833ca3f8ea25a2b1f7dd5f59d96b6200eaa5bbc75c81e8a0f915b33e74a0b50e2d0858eea432390ec3d5a262a73d1e6297e12967aae488b563ed319c56bb3719991661b52f1080298456a70359b760aeeba93c66bfcbfcc44cd5ace084616d21c13e0de5250ef9048523dca9768bf660863b46e0dece62d38da4c24f79d74428f86ca9d975e6c8512c8d8a0ac6025c2ee351d5fdef79a935a72d1c3ff549d6d8e2c4a4375a70b846c60d42782d6f2b67002620ea2af905e5d54a05515331c597550fbc3a38c161edeecefb543167e0851f453b0aef0e3ba863a8f9781007a3c38e7f40c06ac7591d0e1508622151ac339c980b6b738aa8eb842f870986c59bac77fce2254cfe1327ea187bbd9544444cacd86bc6e6f92a69e53b62233ddd98cfa5eaa4aed0394ee016274444fda9440329ca91a87cba215c3b87a6d453f02f6963e5f49555cc378da123928f3727a03626c6c3891ec204121f5b698f5623a7e73f72d5aaa5e97e13b3080e0180e69a0efafc2f8cea1df840fb9ebe06bfa59045531cce9b6c6d5e455008cc7dc7b9b788d58cdec61dccac6cfd039372ffeed0cdd8eb223977690d015e56053cf9e848b657cc01344decded0e330b1c1363ae339f96db3a5c525765a959747688127be039dab8ee2f3d0ac0da28a37d9c22cfd407ac9c50847c86f32e9897788b1603231112045c0902461e3cb988a3f8ea30fecf88a8602fc55c0f5b60b89fec9af2a9568b7f361d6b09a6bea04cbc3835244fb9c1d58ea832735891592e54a592e73d1d6e3ca94c785ad94896dd983784dfb711fd8c592346925251a05a1d9c3c358230e24bd581bee33f71f6d8a2985df3a805474689ec05191aac3b58a36e122b1a020cd4b52106f929c84ae5baf0897ec5617ad712d519acac4216efdb89f80c0eea9f0df10232a609660ec1684008e9044a2e3f6fde42cd95a62fcda280f3d5945043342f6838e35c1647dd6422e29c8c775e945bf4081a4267552eb1c0aa6d066a4b349e58d82f3cea19082a0aeb6731c51a190e1a0ede8e2013eadd939d0b26b1546b03e0eec527161d4e7eb9f89e9fc62147ba6fd42ccab2b72232a124a7fb34581db82579470a5b14048d9bb71a947d5d3c4835fa9f2e2c39f991551f282606b2334872d326bb0408b799f408f946c62f414a9fc1818c31eb43df24fee3ba5b74405675ded0646c5315b2d8bbf96e6edcee96182c8a1d1e05f6bf6c94519caeffc4601dfaa3b56b787792c141b249082ff49ebd6afaf22c092f30d0bccdc8bb9d2c185d7baabf76733c688cd60d0a389c65e1e2c7feea1443f26796b4202f38ff7a81c80eca26f23215474c4836749592d4ea6cd72403c6d9792b7a093941ded539e232103fd232158a0b7522191f8d8b2004903f15940660cf3f881b91e7aaa7d860054938114d43cabd662d61fb6775daabdc9bef9446e6322512cd4816defeb2c4ec580f07d9c319feb8193321d713c3dca62a7609c0394807fc434a175bb22207a004339ed367f57ee37c9a91b10854c24ebf58c9c399c842604c50953db62d06bb8421eed8d092a45212993c2d4d345a5ae6c06306fb9412044288522483493a2748e2e4cc4d5e6b01e8b4f015a68df5bbd8e2692152c3925a7bbdc323d5113f3a39d202a7897f56c24d470a17f03bd7831bb504f5ac8b0d42c7e05181bea5e483a0ce1c08dd504b0762c9c72938f54f1fd6d2497b801e0e2354f8e10b3a6bb6ba5048d2d21c571089529fe3d686a6f6409832e62ad83b0b37d89c3eda92f47935153477dbf8a540cb566d538ba9968475f30a481dbd22aa94c7250282fdd0e39c9587756d10df0926816d4b955b6d6fcd42c67da98fcfe43df7b8a0bc03abc6e40374841c5bd4e6118702082d94673b8a85aefc7daa944213541608f7dc31971629d37f33977a295d676d4cc723ef0ce88d5c8976fcec0cd2c7971258d1b4ed6f8a7e20f0575bedc6ca497c1588d0d2ec376fb9a0675e840d1c0a80a9cfbe4714e600a1d178b56398e071e4101923df24f68564885de8df51416040892acafd2214a596673a8c677041af4197fc7a1dc10dd1f05adb5ea446ddb7c73e7693f911e3404b42a1237bdc07c0c9c03856260db12fe3496b400cf1d8d362979c8fcdfd16e7c01ff599d4b8cacddf44d096eb6902db15d6665ce1c9443e6f7bfb07792e4971517819e41164152aa91053694aad4dfe8f3dd244ead799687b89cee347ade4cb7ddd86bf5b13461d48295cd5cdf568ce42f24258ee15a290c3d7b5641d58fcbc004923241816bfcd99cda30d6a3616532f8ce3be6eec89f27c315f18c7a9073a21b8c3214f005e385c6a9d62e3b44495e9c7bb5f5c0fd5ddde781df0db4dd96ad5e046b5d588fdbe57be6fc085a31454dcf92f54f85f1c70b35da192386048f4d7434c6e015bd9605072699fdbbe671d4ec989a85219336180b279e553e59b73e7d6f15bb7a0ad8a241ebc278d01005c98425c1a36e8e9ec47feca5602c7bbc4249be8ba69c4fc3bbb784146e195f07ccafb4ea1809f912f2261cf35bacd358325b0be0d0cb2f2565bd6426ad9a854956e5cfeb7f768116f5723ca4bd8a5c88b2fa97569f15433683873861d95a1f74bc754dcb238a61109d7574ca6695dcf0fc6822cf5f0ce3179993ec3304f262f84e4fe1983a59536600f4c2e2ce5ef4c22ea90fda12a47a428fe0f655ef3f76baa1b2cf452e044984ecf49c30644fdc2f9d7686d9ca67e1ef2195cdd6b26535fefaf2ea0969619d50d3ed0d56f99c33dd65975a09b13fc798dc33b0d6799acd8bd28efe972680271b302652fffebd16cef077aaa6b0a85bb5a00a1b235e32995a62f528fa93c765ad351476b73ddc4ecbd54b496ef85738246bdc050fab22a8d73b4b671f687bb5ad302631fabc00d8f676382a45726fe656d93145a270361e1e7d6c76c7c8302e8d87015cff582aa173e3fa898a22fb6013905df0610f4997586c71ef69e0bdec6f1d8a454ada86f15cd33c0210896e69b60914fb381355273ea59e3a10a9b426f47fc68c1328cc3c2f4b14151e29468b7bee9da8a5680b8744a6560813a43408b4b9d4a409e752684d855e6d2779d97a0880d6ee72c8b27d14ccb9c5609172d8bbdb8b948dedb6c71a6d822f7c080840da2828bef00d3b1b90fa0b7d5a76eb2cf1d0ba71325f35791fd270e3c9683d457b820b8d0018097b2a592f299e77bf2160b81e963360683ab6ad08a24f3aa90ea1a682f7f0f1eadf34a4e4c708ce9e48d75304bac409cd84acf14ffbd5c8ca031a8f9199aca4b84f9975dafb03456fecfaee8be96a6ca5001e21bcf13d1aefaa5f78e52bfe42b28b3e3ee741ca68742bc6e1a0d76987676c9407411dea96e9d4ad1be17e4476d243f8a6a6f60268c43f30cc39362124d2fa2413adad7a95a9d97bee2e5927b549217175990518c5878e19c532e4e959cd16e8ebc6cf8499b6ea59be96266f84e0b0b1f0d8a102bcdda58937e21537c92f7b989a1cdb1d2fae324428392e8de2fc4bc5988d1b9125140d6889ff46729ae5fd1392ec991d9fe35ea615de786bbe04c7a32b4f3cb1ae243890a26f1161c9d9a9df66e7390fd1b754f313f7f543a400a7115941b0a925db44f0faa42478d9b3da31846d06a245dc9386e70f6cf2dd33308c356ee4356facc438b532a579566970b390bcb49bb7f62ba9029b92d2299d2f4861bf156903ef1696e45786bd96e4e9eb277a391ba21f0adb44b14c6ebe6bf60d48b0edc8127fabaea8d94f9865152f7f512ea4f556f78598cf975dbe00f65c60f478954594235a4b3ed66ab5ed355673eb2ecdb49b8995a2d8aa7840ebed9d420d8a16af9547b5cc44d89579922b96b166deb244b2d9210b1273f43ef180bfd7669502d1a84eab25ddf8bbe73cf5b38cd593ce10412fb86dc9a56c6b910da40ae0305d80c6f7871a87096f838c02821b3ddbfb5ee99ba3b21582ac31d6f5bfa1c55201a9899aa5a8befed154427aeebc9c4c9bd63006b4b827d6141213d677dc6c135c59aa3201b4e084eeee904626dd4fd4c83bee5cd90c756992f406e0015c5bdfb99d9b24a0336b9be0f4a2d1112bd385eb50a76370a2ec9ddbf1eb78cb3f7f39c416f31faa60c265a0ec52bc3b2feea52ebc7d0e62774f652c77097c2d4eab2842eed8d57314e267312f48bc777bf647f7ff920f89945e71e2f792954714ce11b12f13789fc1e4be07a10f6cd1ce82624dcedb6775ed18bf15b179c1df728ee1c0cbdf4defc7d24effbe166cfaeea8965885355453f3af59b6c35ce08a21f2b0c3e3289bee0ee6b6199c54e171a560bd4d96c76c230cb73e9ed7afb639c5825cdaa2f7e9318ffbf2e395ae1b83b37ca9c43065437213eb33ce39bb90f06303854d3dc48c8960c550a235a7164eb427246b2688cb32d2300b7e8f5d955004c1b391111bce5bdd9ddffdfbcb6532da9de6153dc617a341cb75f661f621eb5400c77703ad37652f2df0a30230bfcd0f166fe7c66895425acefbcd65ea80f540e2a8300aa52d57601db4a7efd3c32067018a72875f47e4ab07767e51c7ae2dbadd7c6c7d564301fc20b4c09b69095d36edc719ab9bd8cfa37748d0b73f044fb39f98073f029ef31da014d97f2ad4fce273a99abf235c357b6c834f26f2124565148d3e6105cf311f75b116dce6f4b02df84b856c23a2f729e9849fc3424141c0f4053b783b862594869f39a91cc32f1f3e1cd4f448c8c14b3ff86de9f28d9776e27077ff0b08c2193827ae30c5a1b50738b4638001302cf23e9b3a2a49c88f6916fca3eae61d2673a37b3df4c98671af195239086bb5b7de568d37f47e104b4d025340f54e8ff8feca0a5b24a1ba4044b97fae995ed3ba52e88e709d382e1ade18a07bad7205c3d318bc379c8b049bcae28f38851b5fafd5591430e8fef31f313e59bb1d2fc7d93aac1f44d4c0fd5b8364e8109aef5e26048e6b8373175fab8e1988ffccb8da64a9fd2f7e9dfd16c35a9c04a843b59ca8971ae609c651f6107d8c951afc282ee5cabee8ebad0fd3db1aa7ac1ccb42fbceba65b072f6a3d5ca75f1cb546d5eed3fa1e6d5ec54893b958edd03fc3636b6e5c0ce425ac161f83627ff4da9a3a7b2149108b426dc0bb4dba19f7a06dd93e4732787ad336da265ea50f61b04382ac25aba6aa0005b23ff70004963c8251909b623c05730a6915ad90fee3f38c53b846a2ef58379e7e5a6e3dae9c3ba3389b0d7b708e86878fbb471c40211fa465261fb2a0886487033daaa4b483ea5bfec632761ca9257ca8e84e9af725f6ef34e44e8cc3318910788ba3ef746eedb65e46d9755f7dca2c22b481f5358aa65ba5f5d7fe1792b07d179d43b58d3dd25212ccffe4accee7dcb9bbbac7791d998ae7600056d32dd36b76c302628dae073be12e40cd3a05d4abf71363b72c8cebb3865c7d63ae829e4a6ea3014e95870f1e7e3048117f9b926a449f2610683bafe5e3d65702e38d583289f51432b6a18058dd5308df386320239761c00f260b5db1e6500e6c3ab358c396ae4f672ef61ac43792bcedd5200cff348b0b9f468fdcf59447da1bd3084a07947debbaea407aa1b741ff6b64a217e215c36e6390eec970ae3e83c7c6f1a5b7733d0357ee26c17f7b060989fd01bc054fae5dfe6f7347ff315862e7ad4daaea6a8cf4cca094600995ad868f3a0137cde12fa8ecf33e2cd1fd1ab2bf3e246b67f36458a72b74182a832968ceb7d5cafa1b69c8852dfb1440245c6ab6fa2b7da1cc46e0a5ae59dd106e9ebdf606d9c2b50468588afd6c5610746554f8a03ae5f17e30dd089c1c91190ea290ef212940a20758cf2ddff6763b8fe50e292cf1ee77a2b237eddb5d53889edf7090195262631c8683e83b4003477ba3ce8ed6539d09abfd2eb0401ef3fbddf13ed8249c6b9273d57ee9020b3bceb26b25404e0492c9ebf2f5dfb535ae7b39b64192aa0b76ef4fa8fa275cd85e37c83d9aee5fd3b2cb0d3637fb4c4546995fe01c127e557a3261a55b45c6bfd7c1564a0d66f6a9084da8052c2cca589c808dcb6497cc0b820473532de5d9f614a19f7506cee70ded1ed863b148b5a9453f8f422d4b874915095670b8cab7761732f987ea35610afbc06e5ad714e00e8d5c7a4da49d3e99b93d6c79cbea28e25456545886efe74c9ddb530c35631e661628339277a75bb2d69bd23c697299e25eb702a6587f498bd55acfeaa5961705836b27bff9dc9a937f84276520520afd6f8fa1ad00ffa0f36b30d16c74a7639ab7b849c8e87503bcf504343f319af063ccc8e42519d8783335e53149dbe415a4f55c7b2d015a1a62d0025dfbb81eb87e7958d6b0f06e49cf514d03298cdaa86c6dea568fd131f7e79e00b12d7223f5d4d3eb364d5df3c5fc018a1934388bc8837a79da5feda28c910099ade0aa214b15fe38c3ec0492ded3c4091a93eb2498bafc92b0712f3683b519db15d9bf1ebb1012214e6d83f4ffe8f94ae4468fb1092ed432688fbe42425b5ce9a53d5b4eda89adf4bf7b33927bd748ea9c802640eb8df314e7ebb6d8dc5ae8bafc1eb464c7afdb65268c28a7ca2f5cb73dbd6a3aa938e123b57575ab4fc7b58590b3372a3f825bdadcccb83b9bce2868c552a62c61f3e4cb1b7dc3a528830a110ece8b50e4de80f720dec903b8e828d32ff1701701a62f93633d64eb948f90eb1f16b6ce74a62330565b78691feb6a911426089318d6eec3b6ce41d3cfe43604ba37a8aa40d8bd3c5d55cc10c5595a110bce18da636099e31ae6117c013d7a1a6e179d59934b9addec8bc75cec98c0c836ea04f93a820df79f6602f077ec38d84bd449c46bc323d605f83b48cc7f2158901cf74d4cb64d108f31ba647fc43726b4a7c7ed09e2bd322e605aa3a2bb72a7d9908f2b9767101081bcc617f2b756f9315f2eadce8ca6c9ca20bed855073270f1643a3fc12488f607dfba4d1a3bbd5bb4ca2f0201eb8003462761fcea7a0125343804128a5a44fe2902773fb677a601bf135cf31e83e83afe083313a1942cbf604b155b0ebbe7ff34d5c35bf5dd91d6f97e95f96ebeb82d5621d5e17b2989a879235b8499fd07fd6180fa41002107b988baebc0455ea1c39d1c737c9558f676e3e827b39dce47bfb75aeb636016c7851ac68a5adde68357daacab47007ac9ef965f47b93ab198d1d074df92617550aa8e81312d44bfee5563011232a640c570445b207bb73a9d65ebb0d20dab1d0a18389afb33f636922cb5525e4ca1b6030476c00898a8773e296e0030da71bbd2d53bb579a4e848aa3f5aa8c95af3cf3e61c1fc8a09d1124a36be5ac4f6f69d45ca760807a91627e5c155df2c305a9e4aac38f56d78030a7ed48e83e7248c4105760535c24b0f91fb43ab993ee955de08e988bf5e5b3bf954f897aa9a0d02f8c3dca80be37f54fd41696e77e69e7507c7f10c1dee9bdc9d33cdde390eb18717cc55dfdd8267f2f5b4966e48b299b299d462adc1339f8aa5064cb760ed87d858b50d93730747816c459e9ec5cd8a608a894f98db9ece38e6a623dac7dcd96a5bf59e9d62090087f9af24af22d8b5a247cd470b1a4e74706dae6b4cb6d467c812c13dc64db400ae8744baa5dff6c06c7d1ddfd9ec1f65cfc0fc7f3d90419ad784ab18390f036384472c828f8bdc29291f95b7727521570845fb539338585a03da0ea79ec3d0c77a68bd6e71e53cd316dd0cf6bc95a00c7fa8cd7e6822af1ec3555e4e9910bf1f1a19510982442ce93d74510032e8bf347f63bb7883c43301e9b497973d6cb2482dc8ae2d82b1ef2be812d7e7992b5faab3aa0a245046a8ce5d99421be48dc46d8ee8baf0881683bdb170aa6c7f5c7fd26d65b56cd7b2dc24a2b125a86aebd39146a7501db30861df6302bbb05207d0461fb454d3004b3fa520d71b508896b14350bbba5e430c2adc044b7fdb2b121c8d9e61c27384c769b6804159c06e47a43232d00b74993b3a7df3a676bcc90262bcd13720f6666195a42d8d1b8758ca57de115772f7bc0eca5c76f5416d69d131c84ca36f77561af69352faee5952d13d909f1e988bd1a432ab063e69100ced51528d89b9fdff2b0a458fb69a07dd17bee0d969da480d87a7b5d66651cea063e736d7fc347b8ebae3693511a7c0d63fd99e799148aee669fbf957b5437b03ccb5d0e26cb074a7347663da1981dc6d4d161af102e990de9fde03a625c8bfe8aaee47487d0be11fcdcde016c8ace6a6050fc9d4080ab71bb5ba16ad251b9e1b78d956bb3b070256b0a7e1e2c4ead05717381f8a1136cf0acd1516d351d9974038419c8d23a5966c4eff0133ea2d07d98110ad120174d8df2dbff90cafa9155b7f8b71a02dc287096bb2848ace0b0acd36156c2557488d20850a2d93c75ecd7f14c7deaf7554707662e9c1d7d9a1ef9041f50734f8d5fe14d5472f4067577271c2232c63fb6303ac33db8d5c52fda9bee7858b7566eab3f24e8bf3b89071cbd470990d14bda6808c9b1a47805ed558a0ff92fb963925929a8810c404c42287a394367c799030100ab030e51bd6ac36ef2886fb4de57f1cb9d08fff1a47ba926446cb00e74ac2c197af29423366d0c04e594d4fe2aed32f0380f1a97206f13fb1bd82c8028ff6d102a34c1a960e7b41b9d8220f034c50869cbd7eb1a5a8c2e24d40cc5957243d5e8211f5573765dbd7478fb857ef5ea1dd764b232bb5eac9beafeff477b0ddfe154d8974df5aefbee5e9eb7e5d0da5c3f280634b0acef6c14a628c5bf87ef69534324174d6a6bbc1855de1e2bcb157d7e95560eb0b6317d78701d6a6de982b75b05c469115b59f6a535d32557136a5128f8b9e2aed165a760839e379d46869bdcce8c10a19e0bcdae7e79507485c29cfbbfeba413a8af53372a8ccbf83616d289b3da4312e3d8f50cb745e13a739f128c2af817c330a7f9304137eb6633f1de8f80e6c3325534ac25d0568f1db18e08c1f7ff2db138d8d78556cddf17f6db4ae70aaa3e42ddfce4c65fbc77697ba4c04c32d436be8db30320ee3796f067ee2541237f2caaed525c54c0bff4cc03b62833b90b9b9f31e1b712ce8700306b73c447d4fdd1dfc12335c257a3374f42a34207ea23fdf5830c8ca9a0891d92931a13e1404e24bca2c5440dab1721708a38a743e668c83d1dcc9f0c272481b62314590d7f1d90cf45afa406e64b14e293655940862281cb60971e8e0d95522644288b1e60cb50347103ac50f51079745e02135c2e5dac9a3abd8931bdba53f8432080b5f2a023e18052afb750f95b443be2e04b9aef3004e25c76482353150d5e1e4016668c8da3bdd668fc8516aac37a946934ddd88f0494a8edc3004ea4bc53b0010f3d354ebf15ff24f39af3fba6b7c85cb4265092107f90bec2129f6bdb92fed69a8807efdc73027703e91f599916d0e23a826dbd573ca90443e7b3858d3720802b3918124d5ef50e284a23d10ceb133c6cd8ba9ee426c8830be62ed6625ec3f8f2372cec7704ed44bff55bbb1e0e31866f38c96c067fab62bc4e983e280a0580131ccee55432c44f23719faf18fda8498de62792c29846fa61c852e2254552c58c480641ef322d2b2f2159005a0d1147a856880be2763bec6a0bc25c42a4b0da8443ca676f41c21d362c80f86a93ff4af2aaeec71b575ef0c22c5449ce701f9b0d190e227965783cb9efbbfa2f9e39976c9cb8baf7aaf01a97e2fda679560cc48c2505dbf4c61c1aa009d819dcf3d3ebb854e274aa48adc3f47f2e4a2cd282faa86ca4721493c477af10d92760a39ec894d2fc90760d7ae11983db0764761afd4ae683172c313131fc7888540fc8e3d5272a3f3e02e8850f5e6868c87d4f49c77139d313345936a103eff0d48fbebaa1c118a6f699942d6f2d5880cb4994751f106a59828a94a2839fb7e222d6a3645c1a6fed33f8727f3d7135731a4294349bd81ff9864ad266f616f4b9cd3e5be280472d226c920262e5eea15c479affdba72b72a1e59f4aa9b8d149746cec4156559afbdd063a0f1756d9a25c5ecf520af3aa3ef0f305de92e3417e2c4d4c64784ec14801991f6ebd3f1b030b23ad198bc9beb2560e754778819c2c14f01b92e1f99f90cd353f38f7c2cccd514dbcf7deadd705c936e5a831903a9956c96a0641e312f65b0a0de45d82e73a96d3caae81d6cc11b7ff6c3fff44b04bf0ee086a652c5edb494e153e173739815d278216f4309550114c4a37ebc4915fe65de1befc2932186a9241d632dd783469357eb4ca16b9815813e14fe99e84498e623dcd5e421675afcfdb478428b9907a08a176d1c306365ea88a3557018a85205b8aca5b6332bab5bf06536f89bb79729c63276ceb4c6ef1e0c6cf3e0bb7998fbb84c543ead75ad9a4a00543d3123e3cd5a53dc3413ae855af450bc58963ca4cd1e93d6fd3f6fe1902fe7d902d27963e8654e1cd028bf55724fc8dabc6d5209b22bacac3bf103d8435fa37f34a3880899a26c157179d72cae98fc0ba23d3d82fc6bd944fc5b5c0f1fe1012231d330077fecc5d32a72936b9da82f2315543a2560aa332595f9b1e888e4879966e9d86a5f582e4e38c07dd1b4b9314e7443623ff35cfea919ff1eddf2701d00d044d9b2c0dbb701d45f6eccf911bb7e96c1c14acb9c558704e7cea2e4d3dacba6e6bc3520981b9aab78b495d451589942ecff6e1a421ab8a25c8372be39e4ac87772392906081acce512b17e9bd956e38f53a9ce2cb1733cb000b78718965a004dee9643b3e6483ecb2e7f84ceb969e3130693d3da125e146c49f78c25b9194c6df201c1f1cc41887cc5a77da22d6b731920e9509873890616dd0c867dd9ae9d91387c64d7edba67cccf43c046786d71630c6a4ad67bebec77e120ebf1d928741e75f07c62a8ae93073fa5f1098d16c09a360b7902a500381ff6b3e9c809528b557e93888259d3189af536df3de662ec70360d19234169b40a02e523e90ed41cdcf1cad11ff6086d88ac77033348dfd3f2f5e377adf323ff6391634ff6621ea196b4f213e2e05204aa7b019fb1706a6ebc3ced031d9f24692ba104fb9fcaf117542f79e3fb5fc11ba16341e4a890997619d4c7291b80c9416754c5e9901bb337c42e5c7068c6184d0f3620d7d7b77fa301a68ab214d8198e4d773dc5acef9344addc7e6e297956059261bcd4d19249997c4cb3e862441e67fd032bb194ece04cc301f0f8b08b8171e2d5ce3389129dc03410bcf97ba0b0c4622d6bd0197e5e4be63216be4d6070f7e5f5343e5691b33c320486c3981a87b1973c0a719ddbf82354df1950b088351bcb6b42c8fd1e9faa9034961af027b10241c627d51be9d7e2cbfcc9c6dcea956be5e0931b6a41a5108583f9413c14e2e4ec7ef8f8bbf11b025fe8624189a3b36a5ea3bdc50081bf89e15d253f6283dd259208f2102452bb08008663a3e5875b9571aa63ad65380de5534cc017c1454f2a69c0a43a41dcfe9b87ddd9093b3fdd41665fc7e3be1734d5f8266d4adc6c2d9ae778315c621bcd4ab4399c312c155d9aa4fb332979b17c20d74ebbde24238d2783416b295202a2661ef30af34510881fd254c84972bfeae5dd6d579ffe7c174ae3c1f3cfcd100d852c4ee87b5cc98f66ad453eeb3a87037a48f09c7fe87daec9f51a43e8ea3096ed1582f6c821f9e4cdfd59da15ad713c07a80c6f288329023fa05271cc3a0d506b1414f04e10c36791db8d8b59e31203ec15cbc769ece794bc3bbfede35692b763116dfc2d24c019c0d943482748d810b1911993adf25e1e979c50fe5a7e5fc0c980d5c0358f9fa3c2b89ad808ff6c2f7fadca37499c963a4c073c9c5f50a8cf01098a7dd0c28810323a9e0a28597006fba47a6856e950aed162f874dec1e55a1935781226f352e1e079a6a1edb49416228599ef2d6330922a34680adfd7bf8dde8c81d8a56cd3bb981e9f480ffd2cbe67a87a298bde4200621245afe5bced4c0ac4ad9dafefed841c1bf0639ac3a2cf13a6ff7969c699b23408c7df62349e7e65534edd531cbb73096a38609ecb3c5f2e83a6086a53de7e0785883e6e6b1fbec9172ed6a9525fa01c1c83056d49b5158d705eadba441a60731c4c534c2e2c7cd74733adb89a1e310388b3c59ea6706d72f1ebaa5d731ee7bf54f4b1ccd779777d7ccae1bffba95d162ff0ad62594dffdd78045d24ce53f411411b2ea8a2cb0c390bbbbb59e42abd2fd89df6659cf44ad148b2efd8cd2e3850e2652627026901eba6bb9713d49ea4deb40382f79e2e253aa44b1ed541c5eac2c0b8a1c70ba1b1a2b72aefdc7d587ba29ece2bbe2868afd67f091b37607cdf03619c8622d44d93c265d4941e87d6226d2c94d786c9ffa8f485d708992c4691980387f7baf4134cf7e0ef660c4a86151e4ad1168bf22f9c6f53caaf604ddac891fb2ed8dd1f635935cf3332e591edf7b971c68db909eac20966e971483e6f9a43db236af2c87b43d74ae7b28ddf577372d34674c0758d34fcc1a63dc5cb2eb92bfd4de7c4d910102365f080b0ce3669c82e0b86cac4ffdbbd13f6135297be4aa7d6847468b7e6ccf7ccaa0396e12c70c2af7d8904583663d6648abcf439861c5dc9a42247b7b1d54010448835d08573c79a3e8d9f16e3eaed012db3d57ba79314129d1dd68d4b6249ad311b6e5e327180a7169f39d4506841e1616778ff4ebfb92e8c6b20ab93181965c564416e266e85ca6f1fb3de8731bbb219d7092fa48d3b9debb65d69da95c50bab0061b4ba45a9e7772000cfaf75683998bf8c40cb94b2cdc6c809fedaa02b8d5b54b0732bc064ab649c1ad99cd67496308352f74fa2268ddb73a1359291b7d8ca069472a07d951f2d9f35a584a885b7dcbdfd2e2cd02105d42e2358f6b85316f0373dd6937e1683e40ce41647cf443e4c6c34ac1971b072dec7e4293719669bd3fa67d28b2caaf99fb1330f7712d00588de38f900adf085a8ce3ad5fde12cb0634ccf9a5baf4f07d0012c37ff6814be130dd69f99940f624615814d421a031357a97d043dced33a7d6690dacb1e5bc61e04829843a4298c672854ff5ec578a21893af75c8261dadd5d37f6de7ea5354138859f58668fc14c81f96d0c9ad0120e9de65b96203264d2e54ec794c69c0ce444bbb60fa4a49f49e13549e434ea2574c0ee3322ebec715da5ab5c6bc2ab63df1d15759551a42989e346d6fc1be14169acb8fb1f23c459b8a196281be0fb661ae8122d5486754bc1de01eb9eff643b0fd3856b4bafa791f817637dfa45c00a5943049e37457d99930e6744cdbf3db936570ea298a921dabfdc260da5279366f1315eb7378016b36755d1589d4d97e77b778f8ce7e323dde6fdde361141fbe8acc3c5551e9468a736cd14299fd8cb7ce35192b0297d36c8abe2a1201a7d067671f833c296013bfc201dfc9f9a84334fea11aae09fce1f5e55cf94d7b9d6353b464871b988bed24ede5b05b13e1a37eebeea102357cb764666a1d8019219ac3b93ac3b3a3e3d78e78dde6dc5e6725a6286865b8727bb6049680185daaa297f3569b5a659b49c1ed96457f107e84ba5c806aa642ebdbf37e9166f8f98432396500e56df3157f562bca584ecb53f666cd3e7ab1cf950ab69cd91028ef1e8b99f22c29546b057b3ef0b617b63f75e7019f12b41a17c6db362a4c8cb46b5091325b9c055f2fd39fce49bd299185e2e773d5ec08d44c5912ac49b92f9ee359a47cf4e05f03d78640cff27907039080f4e4686fc2ece31bd6f48e62058b4b297ef746af13b1ec650909d3f57ac8b51fda25d81df5dffe11c3f7afbe10b1ab3266c9650eb94889bf90715ca566a57cf53944deeb18730461caf2cbe653abf251f9351e0fdb8655e40682cd515a3bfdce1c2d62683ace0075253afcdd2dff5c8813d45b0a5ad18225922bdd873251316016e9c3ec1e0bb6722968c4bd158ff69c7a8f1aa65d4066e4fe1da2167006522a312f1cb1f7be62012c1298d8ca9aef0714a0dd777f24fab037a847a20feaa7cd430222b0c348437074330fc673fb91e16dc762e7bf70a8cb81bbb45ee67bf7bc996d2b63cbcefbd1730a6769e4e8cc1431c27b9779fce33d9cd5c5a68e480b488c12f449d3fa13e5fbc936a6c204e54403863ae3d0dd3c75e4579d0979fa6db9e76a6979edd8120082d80c5a40e4ce76248709db89732e4930ce617822ffa513e0b9d872fbd46c0f621d3b1bbb0b809e2ea890a2de14b5b39a0209cf892322d52ca3ea88195617f1d049e1e1dc98e9bf2e4152a74d9ea89614c6f37faecda2b9b057d720911ba3f335d0053fe3598ca3843761dc25130f4074d016805c23e7a5e5e4f21e1dc15bb982c4da23b062e41d607d1fa37e61dc16de209394691b46f28935f4e267015f8abff3abf7fcc740eceeb5dcbd01e1cac83d17aa3ad1d37f7ee70a484dc2297a192a8a6caded7a1229726a000fb7ca97209a09c95b03f695dfea94b395c86c1f9f9d269c0421995a372abfde103bcf91320b29ab3f1b2938210d47e848f0ce3767b98781b3f22ab8b6c6b94863bbe4ba2b23ee076b8864352c416b5ce662dcef86d5790865dcd1e04ad57e7a3c7ff5a9d81462ea59737740a039320e596f2b1fa6660254c00bcda055e7d62f77c606443bc35d6c5378729ceddc94e2e0c4923b50fb06682986169a76fb2058dc986890f5e184535a80f8582f811c3f594c6e547d5917927753a9359c50bb4a07ce10444a8601842b6d686cfad6a43bd82e9dddcc8539c0b37b2a4c3013877c68f2a6ca052a5fb41d544eb47e510d2cb60f82723ba39daa5dd84ddbdf55760e075b650b66ae2088a7215b8e7ae780f7134af72d87381eebf729007b4e716ffd3c43b9f313495cab071f55cebe989830e41357eef7496136f474fe5ea36ce7850cff348967ca139a13087f3b34f9e839f4fb61d380075b346111ba861baf10ab2d4f19cc241be9c20b070f37fbb8c06399695e8a434fcc386e1759a77944709cdc297bb528ffd361f246a4ff0a8a0f1314af5df58ef0c8b6c8a6a30fa7eee8769e0fad8147cdc69809ca25d02468ebe1a7d888df3a995cef23cfa80d25f72ef274136ea03655d4ef66ed703bb159426d4cf968a0d615db6228d9a92e9e2b102c9a48202d7978638bb68b76effa37a33b6e3492a722b07f18281abc76c10e64879e82df8a2445e47492a5b6d3f0fc1c7ce58bf38abe0ffffd99d48c987f3ebfc5ee5eabc8925ab510bdf56c5ac49d20b0476d51ee0e281168079b7389052480cd4d97ac133018bd86f03a525af887417415bacb5520403271722acb32c1cac20b09a90d3ec44c34ee71c7302235afc1f11f2d86078e436dc86e0bf577dde54452732fe5906aafe79ce749d6478f464ad12e6f7286a47c56a9c27b24854431d26ac8aaef8ea3c7b78e51be9ca5651fcf543d418b37556a795565c852921e2e2eae9f2fcd0690fdd01c224de78c41702cc9117f586000700b6b8c4314f20b911cf5113b1fbd569318bd311707349c1b9b07d33a3c9fa96a63c06d7c1e509af9253538f314fe533a3ae74dd04507bb921c7068b74972d7a662a3edf8b1a974c380727e4717b385a5ce59a3b59b60e6faac713ee1dda79d31c089d63d6f24c0a4b591fe77272cc8d6aeb44e887ea322a3d8a72d4e6e8751e5c95c17145e460069fbe47b1d80f82f11b85e032fcd8b02a3ff5e53dbf72bb2b385449d2ebb0f3879b04709ef9753d45d06e43703a5b117ef025059ffc1b43030e3336f7129b746def4645cc637589c0d1c861438701a33c13b880c30a2cdffbd338c0a67c7bef672cdef1a1fb8916519b49945dbdca0772ada2a16cda0da2c4c2d2a22835a83f36e00022b5bc1a22e72d9457351bc8180b02ea6c489d2ffc77fdf7249569816f14fb6ad25ea101b72433327a56011fbe1777d0fdca83af44c06ebb85d882e376dac53051b58b101a578bbd1d0e5a3df358c54d8f8b2c5be9cc4ad1980cbe9ca5a466c4fe9151e7224af43edb9c98db3bbbb8f5930a1a0fde0e89ac00c6e1d8d67f05a8f42211bb0f3a4dc835196e4aa85e90844bc6d75b9acd815b6e737fa0183b4f1c54d42e054e4dcbecfe62e688c3e913864fac7899ecbd6a9d5cbcac384b23c467c57a8f685b222b91e2dbe07fbe6b74502843187e76fff5177b392a24b5d4ae5f76c961b595f719eaaf626ee51fa76914e04262e32891c152be978b158a9ca22cf9313b307cd3715187b04bae7174ada5d37c745451c7b116a601046b7638b062dddcc9f071bfed6bcf6b328fff7693651bbceb71e1134534ee694c61f19d62d7b190dc11d197a8c88134c14e041377df8b94831ca1c460fe9568ccf55d72e27cf270b64c6a422eb77d1e437090aeaa1dd537dfd105e927ad6857370bcc6f07bce7c77765b36231afc96786e5b3330b28ec414c7b139493b694bb0d050c289d2ea65a6ac03787fbe0db1d7951929323367d9142492e8b7675da57212bf7f32c2899014b91e3da95cfebc6438cc2b9dda2fac0b33a6d6b94f753c36105ad85164077bea33db614ccdae123797855a1d7174d704216afa1f17e4bc6dc57c598ff8090e3e0dabfb02a28f5cd62065cddb1fed1cb0e1fd0bd45f5b0dfcba897a9b9a826728094d5bc95eff7923aa874e10593d1aff65f68d4fc08efab9f1f8f6bd59af51b20374d5e4b67f111aad5ad6780883434aa045da636c80dc324be5db04059828ad19cf43eee137a73b1ba2e011248dae89890083b5b4011354e8b9ad7cacb19903600f39defc696e0c9c172a69b887a969c3d8ea33de72eea1259df83dc928eb266094515f3701617784bc15ff232af883d7579a858541a8bbd257abb26de1b136c6aa75301acddd1ad1f861ba620d4d5cdb8a4dde0817d156f6e2a0945849d63dd108551555600193d211eea6499116d3255fb1844eb0964cd0bc641d428e51c3fdaaaa60e73c4d284db3f1b5a938c6bddfd90b0b9689d0174d88ff77a329fc8636eff2abd8e7dc4406333d2999da3b92f92c6fefb60ad3230dd100acc837b117352f0cc3d71504d1e6c7d6c170d107fcae8d94fbebf007b213cd1bb92dc96946b24e9c7fbf986d528893e522afe2619c2fe55681caa4633a23acaf4a16be13e02142887a02ca77e4be2960bd176baa49c897a4f21565f5b25801726295bc69a74471880e66f52181b9e0c46ec426fa0642e3d295b99fbec1d66c964acaf9c193cf2ef582cee56a46f81d1ec1aa4a070a9857595cad6a2b1872f423343ddc4a273c35c838690fa8973681624481e13968eaf4251dd48cf569986a6360c305dd15472f30820f96f08e9aa63e9fdcf038b620a8a65d196f15f10e732a8b2693c9a857641b66e5636ab121d1a3c2f488e9a140db71f39cefe9aff7b6a117cbb88da764d96aa35e0b7e38c0d647f49405deab41db95fcb17fcaf0ab1b7c739f994e524d7a53905302b2afb155917bd3feaba2169b8d7ab29a78710f7764190373669423c10c5197ac01efbc69dea797899412751045018c270916a8e3771b5964af8abd20077fd4da11c0cb749fbdd9964c9d9dc3b69d6c4818d3ea93141b6c0bd53d41a38b81e7b155de0c7d1f10d2ee258735d12602f36de7286c8d22c1f8af5896dde3fc444d1eeac41aa09325ccfa4694f07c0aab1de06de6ea1d5254688753e582c96b766bd9f175fcc84239d52765c67635e5c0e05d6105dcac17457a0b609320329939457e19cc1f24e0fa6e92ee3b86c7922d69aabffffc52923bb29135cc6e9307cdba6c5f31fb1c7fc88a19db6ec730074214ce92cb7245a6f6a9fdc32224e01f672a04bd5776798a4bcb388345127d53b5d6e47abf044b937e7cbd89dad9a45d76040eb7bd647226fd07105df114df421646b62d0ba19479677b08fe4b75da745156429c7b95491e755ebdbaaa997cd7cbbc69db48c2bf47454b70e04ca67365ec3282e7ff3a2bc3c56ac2f518e9538e89cfe8ebed9a2491d597a309e033c5e502c3454a067900ac29f9c465c577825ce91ee5a4ac145ac42867eac7d36a7dd4f622a60d47387547209c715af1c0b20335e2f77c992469654dd43d3e06eedd169a4e3ea1543022aae78a05891ea747dd0faeb2cca38d1026be513650c8aced8e7270609428b22e484c10d8caf16a2e1e54a9a452219f37a5c223e3e227bd49fdd25929e07f04acdbc8a22544542a1699f99dee8867b1c1ec8940126a77ee07ee141f691b0905ba0cb53839d0e4181dcfab64e147b7d0ffd3c0c6ee9588738225101e2688687596b8e2db9e6fa12d5822dfc1895d7928882bd194a6d05753bc8fd0c4966267631bb82c56859e3ab1ce726803f5ed38a2d8ffc54831504abadb429887e73a838e0bdd922fef6a351b337d4b1821d0ac198fd59f1790e771c9d2ddb46bbfd8cc39e3589538e2c90db1ef6ab2f29ccd622a859503604bf5e94106b8f47b3f6db88e68c30b501e3347a6d8b81dcc06883b1a51788d437514e45fe619665a6cc9b6352add5251ecdfb90e36253b5572b81e21ccb85d4f042fda17e34eed1244e1f1f6957d17e5a01c5d8a82a722557856dc4287e8825edc3af2308170103622c8dc1f8e6a7c729de4a18ebdfa34f73487c6af014823778a34322dcd6607ee2af309f4f8da2d161a92cc9de1d07b603ab636749237875974e0f62e20183f7c77ad15f54460340c0f9de744db07f79df85aa3511a892ed8d2b40c24d86c9469f5062c6e000178c6afd5962941de3ffd7576e42bba046af0b9fb585a9edfea28587b429e514fa62889092e07a8d389f11304ae16ef797faa1ac43f88c2fbecd6a3f8fc8090e5e34e1b8ed59a7948181d69609630c45581481db9eee543adf050169a19cc2da4e8a066c32c7f02f617d85edeb80a60fd0ed065d52dddfe9d3ec944ff0b553678b57ca25613174f14361a8305af1de72286e9576188697d96edf6f22b3720661455f12f382db32bb037975ba768471bfa522c6da09658972afbe2f37d3cea51e252ce86577b6c060c2c54c41cdfe7514dd0aa214ec69c9e0f750912cc7ff10cc57c917eabafeb18e4c217b4de98a2c3c583de093454da30ed3e8e812d3bec123a24f66b04101f29a921d1b82562ef079ea2d2849f4aa19f1d40774c63e767597dc5c1bc906ee55d57277e45dd519983a25687c1223ad50b058b642134d2c725b6e70a4098dfdb17751114d59c99e3e96031f4d67d19b877ac2b0b9e363887a03f69b5e2506145a7daf423fc71fb9319f1e5f7902fde6e0a10c94f5f6ccf5ab4ac210368da8354f14648a1471b89712923684ac9a5cec78bd0e7de0a03157335a17049d74bb0e3480902bcce373c06b7e225cdb5352329543b01b1f7a04b30df7fc84089e86ce704df2b3fa22b6cc30a27bb51eaf4ab613fee13ac02d054364822cd44b637a5de72c337f9ee4944ce601d94d0f82ac6345457062ff9a1aa8eecf1310122f307214712656d44100a16341f1fb3c2181a02c47f9819f9af778782a2d030ade3d8adc78fc0b32d7fed9df11c5111060405f2114aa31ce29e1cc0a4a919dd7b0f2deb363f4b5525b2abf9b8803bb0cfd18ae5a2c8dc1dd42178531efa392c66d93504e0c1372f3ce7e742ce4469b839ea1f64e4a4e8020b6799c3bb803b7b7257b17f2b224c980c4d03b571720ac175533396dc0b5270475fdb74db6da807ff7d0f3206eec984269ca904421dbcc101f1cbbbff22e847da3b934e51ea5b62999cd666fe56bba4c994387ced454bd043d8537e09ab79987ef378283d8e50e7bdaf640e1c9a08fbf9f1a2bd193c723753ae7ecb7bfe697f5417145766820770f498699e8569dd499a7e736bed9f10205ab71fb353bc9150039b27c610290c06d15ec4387131a8cb5ed5c45a6d2f7cd59c516027a6214d9503ee4501d5f2d94615d9d56d430d62e163fa09dffd94e59bc7ba67d89cf864bce7dd2f3d982a930fef383efb7ef1e6cf09c365281e0a9e4d204167d984afa682b6c45c4789254be1227f1c4c542db3be449b8c59dbf4d3511aed8cfb29963a55e16150ae766c70e2be6c352c419f5678c3a0ecb2cfeea641c4f9557f204af72080a3c83fdd1a9098fdae142417da8fa97911c9c8d9b3a4cdac6eb19c7ba562824018833ae0700744b391f0d4819da46309c363b3b72bda35cbd9329548550481fc00d8700207e6bbb1117a81397c05a9f4d1beeb2398dc7ea4624c0acafc5b5c85690201a97a72dce5e7e5724e602e47ed6a5925ad9613162e4b19b4a4331c415295c4b829c473712edba63689e258905ec0963db4fdb3ff398ec70a9afed6646ee2656137e2c4afc3e1064b9e2e0e9fe658613a53c4de0b004d8545567c09f0be98208773daf22548e5140ae4eeffdad1729ac6e323f4c6281caaea49d66b8890853e6267149819762de7deb11ce335cb8de2b66e18f5cb0461d8eba281ac134ffe11a0b76caf634259d1bd9cd4734acbc9c4344187aa2c5853dd2e5c0a1a428ecdef9e7b158bcd8445bf4147e95964fd28ce34715c67423a1bdc145691f913d94a6dec13b6b4463fa874d10abfb47ce2a31b64db450df6e9fdc996263dffb94b102e707d36110bccef34494dcbc4159f5909e17d66bb34513c54f01a9f9f04f6742d27b03704dd86100021315601e3668491a80b8ff4a2277ad5106c38cdbfcfd6bbec28ec3842e89970b4db3009b30f3177a2fac5adfb22cc439207f36111c59703215f7bbced8254f3b2989f152f4c3c2783041440fb3241b0b2936191cd9d22f20e0208113c458fce394ed0fad505bfc065351f02603875abed7c9983e6cc1c4410999417512ec30c7560094825a1074c063e910eb2c3ce14b562313501576de90443547e281a9cd40e2c5d766f225426d038480bd841d5826b96b059bb8729a0d480557107fd0b8060a7841686e89d870cfdceb8c764117fe4d4ef0e2103330335f0ab7dc4d97f363c74d97bfbd125a1779fec2eefbe8a6860a6019b8284420e70aad60caefbb3c458c0ef023a48d897452f18d3b98bb85eb91f7469b5dbe78a0f5181e04b54d0bc937d9124f86560e86b366d1166d50dd887fdaca1225b23cd108b509c7d56ce8686a50087ba64837f54c1efdb9c0b6d4b838eaf5dd503054be439cff63a9fa8377b7019174f4e0cb5450725cc933e4c159c868843e164b7428e3c97a1d5c5acfea901980b59ae97af2bec14d487d131f6f8b9601e12149835af9117b13c4b5d93bd1ed947e677b40444fd6a09c09bb2ec24a9509cf47c9c01ecf3b85d7bfc3c18fe39beb9863be1d38ca99c2f0319834d6b1c5f5aba3982db6f986f2f00b632f43ab395802a516efbc19002cd2780830336864f1dd003b698ddfaec533890d50f429be2c1aa2168d6ea41f4ab3417906b6d1578d062a70ffb710b68eeb7ab01452afe3f82d2f0ecaaa79cc6a3709bb3528edbf536cabfaae3597cf5cd477ff2f0b394420a92b5379fc48bb65a227b1819e85748ef17af7bccedc79522073fa389cf90c060af5fa02d703644d034c8fed8fd1777faed86921614f79e513b1bc06745b9b06cfe8a3e34127c23979ac21e4f1c3f51a91e120797d7f326dd98c8589a8d5b27fa1f81d762253cf455706617cd12faf676e4eed26653f3d62302467cb60f772a9df99532ccd69a57c024f988c5bfc9c18216036ce94f5bc8d5227a4ecc2a0cfc2c0ae03b730eb3460d7d22cf6214fb5e0d23932361bd9e904f8c85cbc210855293cc0bb4ac9ca50d4e9f68a769b23261f9a41cbe6f44f6649916ad74e1c52e37a0ca10b41d229853a938814065ae5ae8681b6bc5d06dae6f928b4270efd0b525b96258643f06627f92f3c91f29b1837dc651a0e9ca99b3bd12b682b72ff43c9245346cc6edb05a3106946a7015c651fae435c7c8d2520e2b77b624a99038d205ccad44bb2bedd10b99c611dee16f1150072862f2a23168217e2d0fb42833a3e9f9e61d9cf4ba9373c3b3593241e1bbd39bdf7013330ebf650ee49d836bcba07296cfc7aaf2b2bf71ffef58a7afeca7c1b70eccba144cc19887efc2113d60e3727025ccfc8c21b2ac0c13426271e2df8adf28ead293cac2d9c6eea917afe2152897ae65617f93bb67997153bb904b8f25f79a81cde91120f2b42b22d3aae95f6fa88b47180346b79ff6813d543f34f7260225b2c7865e48bea5bfba9d2fc8fff3a54c427836b13b16922f05eb46e99d15a52695c5265f563800607e7148bdb2edf330a910765d00492fe5f043c659847eee347c8a4c22b70d60d6a3fc74a36aabf8b35d434c9409ecf1fbc68ad1ff306df3befb6745d73a23e4c807744a9a2897ea36d3fa4fc1b18801df75d914c19d45550101728d48cbdff6a3ec7ce9468b0d3d122cdff941d235ae45f44ab93940a9c5d4e5bbea2636d9554cb20006d980277789ba7d055764e8e1e714051831eb30eb242a2aaad3da3ac8f9b6d05a4eb279b42a70cbb895174bcba04be49d721ee91b91223a5f1c55becbea79bc056fad078861d639420935cd670fe93199cfe7afba7718b584598a4ac30a2f075a5baa2796ee7928276e754d690546330d560a84f7a135d649b17e4181dbfc79ae85383fb2e352c63b3c3a97cac328b0250769c14f8f750de4c9f96714b307e60e02a4304db22640306e29ca393febc7e3ff06a59820aaeddae236d9dfb5c1bc78a48a6a5e159ded66588d6119c15337048c8cddd7d082127ee15ecc60c365b433989ca9839eab7846fd55a2a35f3f02d965e728c7598ad502d970a973cfa92260ffba89e4e2cf2ccac520b0b6b2927ede624b97278ab0dbb693fe89a4b52d77e92cd775068619365bb9f4d71ecd0a5f0f1fb9eaa0ece7dc1c4dff22362a685c86f7a04e6913517b48ae086d43f4923bd9f5473f7f5259acbafe6c625e6886e04ef8fd77f9673975442f5edc6ec53130ef720f22873f73c7c58616954189b8c6a7610310592b22b85b6747b1cb8d8cad71f9e17a30c3b6b4f6265789e9101e4cc0a5a83a234547827440651d9b235eaab4e8c05760f02081a1d0d28d70127f5cad33fe7eeccd2833e423175c40c6841e1be9c24e0f41da276d3df5b4c5589afa898e50bba141fbd0c8db9082fa5966f79075f91811b6314a957e5b9022627a7a82e56ab02726bcaf8d238b3947694aa8bc87cc8beda44a1abbcb5404aede4f13a503ce237ef981abf34bcea488e045443e7fbf6e0932e60a56392b23be92722ba2299fcb6e2ae1c4a58d2d38374d6f838c2efc96e46302064015b77343daa64e485d632806407111a71fba8da1b5d55102c44c06f2e8220749805a9a3e033627cb9034dbc48197456a8224a904b7a55057dabdf7cc6d36d31ab04bce933d1f012dc4cbf409dcf538bc36f7092f839d24a4e1aaf117a4a6bd70f450c04cad7d871d095daf9bccb98b1ef22d75fb7feca921d258c6c2d5227e4916b08b76ebab07006b5885ad886c9fd75a4d600fdcd35644807dd85983b0026a78180de56eac61f176acd446e14b3712be974c2860ece460805510488f2e5c91e7d5064e79d009c1649a6f3b4621a8074d51e827f46d532ea125fcad79713fca8db429aa784d711d2562b3c45f3bc1b8808618de25cd97ea1c2639cab974f63c444057dc466e78f11b586c6a0e7e51074181a84dd2caa6ca83c722a61e8de84d5432ad039c61af44355974dcb7cf75e46d5b19c42513086b21e2a77355106caa51bc3a31b6648b19552c2be2cb518a1ce8fc8d1925c6712589ebc4bc44ee72d85d036c294827e2d2dea21aea5410b823ecd341d2bd0d79f53a7fd48e21b6e4871fa67568c1743a82103376a6f734de548bfdb7c494f81a68da10d54314d503fd894dc1d8d8d7889049a7b5a84de9396bc15e6422209e3e1adf022a94da9ba80017e422ed5fa04e4337ad1d597d1938db2300e6119b5bb78e84efe38a380ff626476fefab3d5714ac2f42ba7dbdf541a73be4918a391b69397b7b59a0d201dc4a92d7e4485f20ff3e86577bdff0c74567b7056fc965c04b43f356bf72fe2bcec1efa387648d254fe6ec7842dce5f8d6d030033110a9173192118035d934329c34a84a566fe2ef5230bb08ff0102af8a478a1df668e1143babed0e8d1b5b471a6f52062f15f67b3151eed7740d498489703fd04464dd82377c09682e47e8e202691798e9abd73c4d8415ec122ebe50d8967ef876d5fc48a1f2c07ef5e47b44c14f57c1b9dea9655394feff51c70ce0a0e4af6477af5276c751208c7cfba07f93bf89f9924ffc64c2aff773ae25de54d4dc54b90114d66542d01dddd1c0e6c0da99ea5c84b799bcc89247e77a26399187094dbfd6c11a7cebdddd0e2aeb8e3549cf28104cbc7591c63d196889c1a9a60cb7fa6ebaaa7a4769486eadcd053714623b5adbc7f721d101cbd74a0fbc3c5c29c6b294a49a55abf71ca9c2a690ffe1ecb6e791318801700e9596de466eea5e7790ca55fab034e7769b1f037593768b894f4418f96ee77d4458a33c4f78799d8db498f8f05aa70efd714cfea3a7b68e8af94380d599586768a0bacb3e4daff6fba84153636617381acecb345d27a1eeff9c74b7917aab406ba34db8933f74e2f8f32ab6c0c49752fecd33e69d49f67b6567d315bdaa5699bfd767c5dbf092c20f95813b5b317a7e091fb701eb765e78dc278258539e36401cef0c63d00fc44cf97d66bc9ea17d418f9cf3dcbe1b0f0ed0718dd331f37eeebf483397f82ba95c13dde8d52d0d80808805d7ebf4c4b76a9f3e1dfa55b26cd42b701ca5b1e20e067b6f1df0b6e50e829ba7b18331e7a86f044219144c66149dfd4fd8809273c2915fbb8c7c2dcf739a10201cbc9c76fff1c8bbfbe4714f8ed5272829a348031fbd8c9ae0afdb6030e44a7faef551484e9080a6e0797058918487a090f650ea59fa7b9e372fd270274f4139036f1e5cef37b84db3c6a276e3ea059ef3b172820f70a91b11c64eecadf55d051ce1676640c97fe403695e95104e2ddee05bbdbc0d282ffec44eefcd0b67d0e9f731f9c8c5020d9154bc81a3816a6ea052336593face08adb41a8354f9f57e50ef32c74fb394903d48dea4689b6cfb5c910ed9e6cd3387497cbaf2dd1aee55b9d6fe8bd4f33438bd283913bef3c083a68bae00bc2e2710641e6e01db487021e66767a76b628b5172efcdf40ecc7d8c3b5794cc0f10268cd1c2d830aeba6916033ec5a23c2e551e4b492d58548f6b22a600374682542044e15e3a62ae0e4ff5cb844ec2d103efd85101ad28770b7bf483ff4c6187bc446a5f0707a9e096d7934d709ccbe0150d41e272519be49fd7b2e536f1ca483c35a7a6522981764113d5e538ea7d1277c83da6f55c33c37c5eef4ab6f345c7f1e559b01301ddd091af30b9e228e9f2efe4d00477ec240cee8fbd9449ade4848b1d49c96086d448f7453951be82b6a8f02c0339ca0da70cdcb9f4c1860b3463cdc4709524ee9435ff8756bb9e659e13e098f2d75125f7234efff2169d5345a6e2a0d0424c5d3b87a648822510ab1289b872f4ba9ff54055e757838ce6e5b6f20d06b9b3d1680800ca771b0bf170d689432cb38759b10031f3a57f9af87a95d81baba4b3c9d6ca88578a2972bb66a99ff8bb8e8b8385d911d9da95218e901baf1c53fff1d83d954b8ba135e1d63241cad94147b2c0dd864138ce05231bde81bb13ac75012600109bdbe9740a3758170891f93e90ce74ad2d538428c221c124b381d67c81b61c015bacc7388227fe47a6dba0c53b22f7b501667ab62f6a3c574873c8fae9173e2f8e1c37fd58c57062f8777dff135002af86a33a6e3be2d3e103a1eb71673637efd29cb47844f6691e73ac12158d2320717da169d791453c8051a1aa31133ad606b109e544d891f1d4bb38020f7c5c469895b09f7fdced728b9e3a073cf3ac322e2c6e4c66c6dee207471308b89fb740011500cfce384c3d16ebf349bde321bf7d063f2f48587ae5b9123351c9a4a083580a0be6941a808b539008fc5a1639e791a38ec15a828f5788a4630f58e16c358e593fc3b1ef50977916264e83016b90598f5d8563466a5512e8576738a10a0fad255821af27d0e98c7540d6d750e3a99610df6d1cafcc8962d3af8e58c4dfeb9e7b1532599c2100a0b5dbc11e0cda8bd40c3a0dc86a3d278ca3c3203905296b83ff05d31373cdc05b99702aed2f8092ee16b21fd3d192e523ef734fcae717d263b8b1eee0725f800e14d464c076b04904d49b19e3bb8ddb0aa81b3dffcc71d4db9508e04410acf2238c15246651a927905ef7e53994781c23c655c72ecae5d6d9b728516c68fcca35b160783c5130a0942f0d6436bc0ebbba973354a08762ed3f58a626e49543eff6365deb3d02115f20be24496f37d58614ed83333f2b818ccad3f8879a2c863e510cb38e7c9bf5ac6b48eb48e19cf06b00b1bb9d01b77f3aab8563e09ae9604395615ecfb0023e2efd356b8154a408dec22a25ecb087bdabf9ead07983b143f037527969584ae34162f011dd84361718e8e33fbd87567c90e62eeb340e243d205287fb7ee23fad77aa3ae8af46461cc40c411aa9ed4b36e117e351b307e6aaf46b1b9894cc6998160a18793f3fe6878f4e0a7953203c2325f8f2a779bb06122a3ec1b41a9316c82d54f2addad073c3858c431bd807def7a1be0572265da5addd41d03511f129c65808190f1b582d3ba3755d57db4d3c7b1a00877db0a0c78dc0602ed62d0daebe6bcd3854caf64aabf295b2266fee275dda4acd470e955a8547d1ffaf60eb5dd69f83a556837af6e5df39a40e40bb142cdd2ebc3607547f03809f85569df106b165a17f804f029498820a8d1e580915090b3fb7a098da7841a9bb3ce9168ec760fe560506c197d5e439641407a1d673c03084bfb483bed033159e84681765df29a5f35a352228640a82e065fc1b3196062b980f33a1d0f2379bd3431b95fda42469ceca06488c9146dfe3f9d8ee57d86ba09e1d5f623191a6990adff8a009de8136920918de110075f065eb8d474fdf75892ebb85d0c99b64b7a901a2aff77ddec4abf91b0dd7147c75d476d0f888f3db1d975b09bb306ea01fec737475396b0932ae1f4ec2f69edeae29533d5b193b70ec2a27dd50804e6626a284f6172913f540d1e22350881fdffe5822d089554c9268afbb438df34c508547255f48af48bb7a4345911cceb7a3e2e4987722cbd5a0548f85f18d30091209cc3e2d5c625ad9b4dcc79cd7e1960d442ba3197408d9df9cba6598a9e850e4b9d3a4f926643f7ab313533c10a1e867f6563524dcc43b498195a2bd8126dd533212623daf19f7c47297a5f00881d4baf0cba053590c8305e451c0e2d2b098bc632cb9a674c4243898b235cf687809fb8fbe53a563ea4ab5db0dfe2019d8bf9c54c57d63a02409c87999651d04c03afb8aa34975d3a4510759f5de9f358dcac49796e13ebb535fa1b9be8fccd8479df104d654f446b375d6d28d86a2538c105bbab8b233f39d8a0a91a50b743281548c136349ef6a0a588e63ca4b775d6e2e5a81805380b1dd276cf1afc7fb67010fdd52c4f6dedc86ec14cc54b807e5dfda0654a372f10a979fd52efb26f1b84da311cbf8986003994b500156defa9e6d9f2f500513ae6abac61832d8b0eaf8c21fcf49ab873286f05c9aa1d3cd1b920e20167c6fb95f713ffdf414b44e70c58c8a24519ec6351749ba136941b48754429d0e2715a401bddb03834d0840c98b153d894cf7eec0430c1f268c75e6eefbb34117337ba609726dd0de84ead58923f7939f658673100bf6ea85c59ac7aee5d9bab662bdb594342538b8ee021b4ae9e67b8a1560e7f694f944c50df4dd880b286bf9c6dcca075152b45698f8a2483985a29dd99bb97d24eca8f993c37d818bbfee7946756a83557083557165b9d46f1ea9ae355a02e93ddd72686f48c381cce3d6e22803d16214fe76697264419e1ae43f4e92e06f994cde36acdc4fbf614cce843c9aea433e34f62e4ebc3ca45ef0b657cc3b0d67bf9440a9ab73e6409be9d8a9662a638b668b15883af2308cf06965483aef0d0ea704d54c5cd858bb80cea27aa218a60344e9e88854b8d62ff3179f42a7fed8e5484f46b40c14e57d10b62581816bffb56139d542951af5f0c9b1daefb573928b95239c2e914ad09d6f588e3642b74e4a982c53020cf31ddf95997a32f523e8ad9ddf073bf874c4d19b26645b2e87b5a229b32d758bc113ed285f9eb823d433685ae5dcbc3215901bf9ccc0f381034a173d2ebe2c435373428fe0f5c5732ea05a873322ac95cdac5a369a8a44c9d2dcaa22fb6bfc3a50f744400387a3488316c430cd1a1d277674fb904cb560cbea31c6e58c4f5c977122a79098cafbef40acd7e68e96df8f7983b58b221c7e0e81b7f4192ab66e2d691c550809a82d937c6e2d752ca4396aec3039ae325e1f963281178e52a9c175298b850aededcab708c795e66e793b9ac8e46aeee03f73441329a2b5a957d31d3aa575f9a34343aee85b918b58fe8e094acc01e1932d8f3a3a510b0bc208578e1121c1e6c17565c10a8e5500c0eecb30c2c0bc15ac88196892560c141aca3a4384a8ed0957936652891466c4ac0d9200c648e8d9d85f46dbc64200705b4911a40864e6271ea09ccfc01b4bc78086e664e3d242418799b2bc8396eeba07972d37873aa0ec45d339379c92403599db2136d5831323531b38438fa44a8bf3922974a0802b0cc8cca7f7bd2a620939ef7c265f50470c9d3fa6a9317687f2cdf52096099e496e8073cdef48d80f7fedcd4e31d6f5ac0d360adf60612f6ff4c53622cbab3062ef0382cb418c1ea4d8bff3c5f224df0f2a1a3e243fe70561ee0acd3c407d373eeed16708edd5de914ce595efdb77465faeb0662b2fdd5126eb23b5cfffbcef1d4d492e7a001d5b03bac04bca99041eec4d085dbbd3b95d6f1f0935d46c1bef6df855143fc82d5043966a82d1415317ad38783dc0841f2aeba4fccd41c7ac5d26826854b176a0d5c97647cc5668d38130da51d1f518276871638b37e4a4b7a86f7ca471f272225eda1bfb3428033dbaecd7013cf6e21fed7b5d5e64994f542d3ef1a216578b86256c3eab53a05c5044c180f6fc82368987399003145f1c6801c94282e16a4b9f53ac5bfc861695fa95cbf21590966ad3d9d76f5b6a6b5db15917fc90ae7a80f5173386b61f7157b8f2ff856bf720701b91de99d42a350acfbbd56e2f6fa4efdb0787753852db9d5ee6136b605c9cf4f1483d5439ce30dd82e37f15b3a105cee9d3d7cc0638fdb84b5d7ff91839a58712b1bb1d1f907c4fe2f3e5a50ea5d368fcdc1121561da4baa35dc7d9110cf6fa6ff0d8d349e81cc08945cf431f03dbd294819f22d9f12ff02128a27c37b5459dda302a18f02ddccd425522c4792955b165347e7615b9fac0cac7e330f34e070ed3ed889bf3eaa6bafa5e6b4f50fdb42e495733e02c3985449ab2d3f4a3dc486f2ac892572bbf338dfb09b5cacb60bf001a760937595868923680faa24b5f538550a6f89baee80500bab66c9e10fff8b18af6f6a597883b39381783309fb4935ba41402092309a38f5b514572ec82cae23e50fbcc93727204e3b5a2234c7147bc6f38de0fe72bdb59a4388f3cb83b521464a4c423a4b408e948f6f3373bf2f8097d2a323330caf8f67c1e77a7b924434955fda33b908057c78b8fd251b890c1291aa19b469f059017e3059657c944b574036b63da2d7916de5ecee348ed577d89868a8b4cf725e3047efb111c383724b9667021b9b9041df7420b886c0f4e983659aa426e69dc260adc1c526f184c618e907058883aebe1ca3e19b86f7004d5fb9a463e0c183d7a7e4dd758ceaae4aaccbf3e03b9020688871664913d7944952c648d2aa262729037f54f4950a9067c1e8cb02f3173945b5db9e1d6c546976f43ba5e7b486ab82a9ffab1493491c6a6fa2e81f6bdca31e69c1388e7f149abcd107408a86e43417337c57276f408d7dc2af04a5ea9d4074a2e4992b380655de0658fdd021451ac28957f4af4e90f80471ed0196603171fae09d5383558ef1e0dcce3c8d66525edd6fccf59cc380f444e22f7d05cadd4b256437eecccf2d64505c78f11e0a0a1e395872b9c7cbfdc8719eb833e2f6282fa91cd733ce49f3fbcf934a91bf73d9cf92ef6749184696d00db0bb0e14f641fd69be1a89d0e1bc7ccb8ba214c3477fd2d641b626746519d00c227bd210e015ad272a9873d5329ac721be801e13a5632187d7a3e168f00735d9967254e2596d5c36f07ad49dfad78e16fa67728d9df911215b8ea1a7bc58e2d5f2c69d329408522577eeb63f2c1d264fd7b2cf7ebaea4cb3d83d09045380ef1c5c831318e5b499cc6777ea9297741dc67ee03e3d4c7d080bb65437850b1a907c09f930430cf6365f9d0b30a6803801db6b9c9c17e5eed72be2fee2dadcd10b6fdd02730abc6890635fda9446c37f8b4ac2c40a000914ecfe67b28804c910b1eb4b7dabb5dcc9eb3fc2560ca7a653fe478fef9d08958fce48a6aec87bd4ff43a261e7ed562bdd63e28d98b027190d6d6390aa655c0cefd5b0dfd8192952fe5bda19d1275d289f97ce5c4d79bb9fbb77f273ef5bd62e3a7fc5c10a1011cff5ef8608259fd46c25833dac33df98a3584cb0f7713b5983e81cbf5d13ba3a604b3552f91b946aa4fede18724452f68bad286bce67b81447528d602084712f9a17772fde0952b23d12cf423e188d83ae9b3b101ec6bfcec4fdda304c5ecf025fcf74ca896684e18507f99ec21329833376009e8a1f3891e6f2d3da70b5a82dfcd15439da9abcd6ab06e45ffaccc855de2ca09dd4aa2425650f6aa3a2966565a43ee3690f3fe66068c755ae03b1a6184d4974c05da15ff85518e001901426bf203a8e311f00c9ca1568f419379f9843727aed64242d077451eb7d542ab4d3616f0e1b1c48a7b4d62c5dc5bf0374c655bbce9680225a7dddb80eb3fa617e966852fc5f34c980750dd0daad2ff46728b58c34834f2411b0be980d51b20a43bde9b9529955fe7b6442efa2351522f5b22547d56fc9d980c0b274f352ea2fd79600644514e37a3b617236b956f22967f1b45499f4b3716252a02799721bc1bf225284670a00adfb0050450361a64dffecc00da12f426f5bdab2d7173ddad1687919c31c8a32ef3db270f0ca1318e72d1c56d757459d89be56d894a5136d946e5b877f0cf6103cee72fd7786af1414b11ab7d4252b2a754763cd87e24502bcb581a10025480f122c6b6ce014ca51a2e0c665645c11330f5243118c5da1d00a15523fbe836493870f692641fcb38b52e42b20b9996953424d8ac372065fd7517278aaaa299121dcff3b751c163be3165d3e89fc58a090819965ba86b11c2640444130553c5b42e26fc40f00f5261018cf7be4efa6fb777fc0598320ce7984e815dc0eaf77408260bac984a08c335a0df93f32399b352de4721218129f62f72817509b0ced193afe523321fbdce3d05c5252da468b0ded16ea24a0cdb4eeb1a302caec80471c4a1165a3cff471dece96d9fd1a435ebeb05c61a4a0d2d617ed76f5950b215db92fc084935ca6a9cc3f137f9f5167d8fcaa55c403d3b0fb59c07bce89c2c048cd0dfe5502b7936d41f00b98354243d2e20ca1fb1638fabe70c857b6f33437b673f2e09b96924f34a798ed3b838c92b6e0da967ca805d4061a14528ac4a69116d6b170a21e0e47c81a03a3ec992280a7e340822e3299a3b66486636b7eb92f62638dfd1c9f8752efa521d4c3a9b7c74ac9bcd1bcf85aabb62defaa28d1c8731cc7548d41a75ebbad3ae3d816ddfbd3a8c02b0581d76571a996fa14df164d81c93d0fd31e62344cd22e6540fb9ba492826a3fab8c6e6df3f074d3b31d58d031001586470473d80585124790000efa9a41d3265fabfaf917df8ada5a25266b8b1f297082fe13dac21b008951dc2a69fa008ca3284d16e6e201b341594be35ef88f763671a0f156a9e712e58cc52a4755e5b5de7e177654082bdeb3f3d63bc1ddc1c9a9c30ecdce4b667f835bfe114bd4f3733e4070bd93841d382d8f7eef2da9137165515bfa3ac7174f54a5145582ee2078483a0999c13ba12ee1986970230a2a7c80f56dddc4ee7776fe19cf473ff23e209ad76e757453fdb806444a1abb1e3bbaf0bb5dd33c857a08caa1cf19e9c5ae053b31e2925090f16138d2fa5722a974d8cfe1fbf00839de6c97a4601c34089bd90993c58c988d76c3b35405a909caf9fb935eb35b57fb7b7be7f3413d349dc9c7169ba0712a44f5492a196ef0705f52c1a13b704222c06b26ba2c4c7c9bbfdae6104f1643cc60eb3e14a249334fc4bbb71676673abca591df04c67c525b20484ac490d0375559dab0d7cc10e0804e191bc892caad40a6ebf8ab7d9523e7b7a058d0cfc5d441970ae92904df4de81500545dd5b0817be6e0265e2ec1a146ebb78534d4212776381b3b849ad6ce1009b9d3fdfb87e19f51e5e9449e7f03e22d6f7ff787f7497e5d76b97a0fd816c3c2a63bd10fdd1ef5209af3acabe3ea3cfc4c95953ee033f00b1ae0458ccafdf78b2438730410a4c64fee1a72eae39ccada8183a262f1a1874fd101ec116781cacb897abc3dea8601562a18cb78877b5a562fc4c619be17983619e4a87759bc5af51943a4d201a1b9c2a93049a001ac30d4f86cb6c51c5553a1fb91b04a3348315ebcda2e239582d425d61e7cc38c7d2a343ee274fd67b086b5cec232c59ea663704e5381e966302d233edc75d5f8fc3c88c3b38fea3e8687933050d6ed5c31e4d5c59e2940c0283ea5b3cc92f78170e6f75e2c4688e485b84f44147c7743494645287fb4dfc57b50c55f9d8dc613452536e8d97f9292510293de0decd6c9acd03502a82405ca311fd14bd34c3766aee13b6b33025b562609859300c105cef133b9774cafe0b1a9111c915207149b172a5fac2c86378410edc166ec2f768d02232da50bae8f65663160a1eb23259c078ea35e03e00e4f81de77bad8094dc55d5d46694a4906e45c729d86f67df06501b5570802cf00ff3db8f7ad75991e2027fef3ba21fd84e739a423642207e761eaaa5846f10a615d007ab1621bdd40585845bb3df420e33532dfeab974690343f0075617d09a170e68e5d427da8ae30860cd9f2f2504ab5265ac5050bea7f61aa69612df4b5eef1d133bdf20e8a2c6ff60c6ed49583251c5515e9fbd3f025c008533d0c52987f84db01681622a5d8ec6fc174ad262c757c9e48f0040c15d91abaaba2cf4b65dd06ec80128232bf22756dcbb745576d3e78a997e02ef19929681d7dbfde15de5bddfd8e91101c50516dc3fa89ea8b64e85b8b5d9de322d969a7f71105a58278e23776a85defbefd78d1b0eb9bb09680c709ec3b702485b74a48dd28afd84d72168e148c5f91f3b617c61eab5f201fbcb81991620019dd3daa550acaeda26536e20e3ee2992fc2b207d5ccbd06511fbcf19e63e61d591c9eb35276418c60ac6275db709cac40673eb7ea3c4d2d342f0c27d8aec6029ddc00f606e55f86631384fe412c61ef97024046ac34564483c17a3f63a4e96176dece5dbbc6938044c673d0910eb7c6d7204f3e59c4a5b027cd5f646968577b514e2ad4f1da0bcb88b1c0fbbb630697d28c45a64e9b807aa977a7e082ba114293e092ec717985deccef42c8acd170a70488cdcf077bc663c196d4c7d1cd5e35adc66fa514e6a4e20a0fedd81cd3d2cc7f0bfa76020ef6528c7da2b3adfac6de0e25094b528c2f1307a873a3449257fe9bb1463da009c2aa65e3b23c1dfc0edb07c57d1ca97fb4e6625b73b26fb6bfcbbe9b9cddbf13286fd8e58babae5318bf68725b154218f8c1a26a97b4b9b45afb70d943bb75a55648b0fb6831fab130427fbca458517e551516ce746d50bbb4e6800e85d8dd050ea43df5f06698314b7ef45028041f711fba438c0760bef443345f53aac4fb89a31707bfa38d88c8e6805207eac098f6abc14c86dcce0289d018da8ad4a47add1cf90742dc48ee9053f31b9dc2a23aa4c0ebf09d0b8b2abfd5b111f1411ca0a5d50ab078bf813f090aa93b0575a0c784fbcb77faafa95428ddb9e02a904a5e3810a899e4d75a66fc43ee30e6003e1fc987fa1ab91dcad63a5e9b9779e6f6b1d0cefeda79531e80386cfbb42027c27e6103387045ecd5ae7c64677973b2dc4ac57d715ed780894f8a4af4be3d7691bc4af4c32ff3dfde2b6ddc61144a8ed9a4794b6cf30ee4e49c83b605ba6bb7106ca95d55fab945b7595642d816f912e64b64f8763879b0e6207506e0a4b652be2698bf9ab16e5a8731b5798f7487ad09a5a5b55dc56267d38049a8e99fa052e300761cc011984f9d24c214f381cf731a606dcddf8a1286b9f845ea3f17a0ef9eb77a2f96953ac4e1073248da8ce6e62e605a92bce28ef3a19fe7f67a8b1486fa1277d5440409782c27e9ae63593491aca13dd7705eff380ca1448b3a2b6dcd25f6a0fa24576107ecbc99a8f21182d970f4e2357a3549d636447ab871e8c286138111bc84797a9a949be106ef725bfe09ae1e2e84b5af43c0849ceb3b829b0d5c66d6696fe81b9955289927e356e449669282983e18629bdd64f8e0e6b0aaf76951e218823ce5a28ac486c16e1f43f51b43d60dde2137976253f29d67221b33b961a6f4b72bb323b8b0ef7775a8edd14f240220ded036f4bea5a2f0c4be5d5d211a17a355fa84c09790199995f53ad90f7efe350c2b9559d8a9e98ae6d3131bfdef266bbf1240b987f054607918ed6042bb4c2c6c5b0b402157dc5b5f97899ecef54c3cc587a8b711c4fbd9255284a738705f520b28399c6b8d953e706ca224621ab146defff0aaa365f7c1d027afdfe3ae67d45ef4a571080152dbaaa9686fe1daad92751ecb3fae17b9abd35940fb948a538034afc85e2a52130a6be89735382d8881b29b5598231047103a6f4b72f17420a9889311bd005ce7546d0396a05bdce9d363cd270aeb39909286663b68e3821081d39a5743bc3273ee5670120b23ed695cb0a37c0c1db5dbd73faafe30ebf1d71773c39c79f955b71288a0694195373e5f80c4e3472527e0df29ec3659d721a51a39b53faabb482332d50485db8b4d33535c138a2402f681b7537b92e7cfaeff88e85255e583ea19ff525d0ba4f36dc402b5ad923fae2000038c1c38f9becdf0bfd5b1565bf8e178ccb6fa0370c8d342d3569248ad766235cf8de1439b303741ee9f5b1f41451c182bac28ad749702f35fb1acb7628cc7094079d4cce39dbd35898502f8714d53d24b65ed2b7cb3ec88ea4dc33f4e9855aa2d2e676376f7d4153c817f0343758d21a120cce4361075f6d69bc40cfe2b019ee8738d5ea67b4f094cef4ea22fe34bc692bd633ae06d48b95749547f4cb5778c4998153f442dfee95b4807f31c67bdf693bdbf9086736cb6597ea6650dd040c8dbcaa277909d2facdd6b84b25f3d529d21d58790a6acfb777f9fbe1cc30fef41cef1eea2ebcb3169a5bf45f09ab778e591221ba46a89ea13f9854559b0d54bde88db8f741350dd33d0f399f5cda85447b832449895b0363a36fe341078246315ca6edbaaa99fd2ae8949a704e33c0bd79801be18899113d76e53bc6c4f7249538a8cd27dc9023493254dec20b05594527a09c320cf86e556bb673b0482676a5600e3f86d811dee7f841384c291ea3accec6bd27357f60ab8f1f0ddeaf2a8d5d529cf593ac8443f48f486ea3ee5802ea95e12cc509d7c31451546bd92415306a831295560aab9d034c7e38513620251a1a9f14d3dcac06dad4f13f18dc1cb3d40d17ccc63f597cdab3009a6554454cab9772e58392b5c8b58230d21d6a0be643a4d8afdeca8161d433391408f0ad3f67ead64fdff482aee402e2c10cb60795aede7c32852dfb9884caf75d8cb4a3135abe96c43978272adbaf9c084f50c1afb0276f7c228addecc52768e69aef7d81275a0c49288e72eca20064b02a3d2a5b068f5f5dae2495dd9b44353288445b102de65cb31a77ed8e6758a82c3d3dc6892e12357c90b690a60752d35147fabbf0ae77d7d19853a37ff3ca84946d5d013724b37265448b0886f86eccab3ba3d107f01362b3d142c7a34aafab90a7bfb609b66fcc8690449282b670e6c15269e7637db6f33e55d088b0c0230328481e10b47fe136d1c25422d8c5abef94eb3d99772ab131a5e70fecde4f5f72db6e56c0003e3e874a3232ad965645b0f1d1807438518ea38c348f95f88cdb80b9c0a221250e52a1675f837795a0c3108e43cd3193cb52a8bc2b075928628871757179d193c9b82b8cdb476e6058a39e78fcd4d73ee7e064c1ed3c9697fb9fefe3a3640c350fd8a9f17775a8cb21f419b1936c3d22a9c5240aa10e89ec31c77a4356344eb293e0eb02070f04d39eeb0e3bbb6a61b41707f9cf2f2d1ac45001c013113d08461f0655940e3737270f4be86f8bd3bc1196d1ead3e43d524d2830f135de09e04f3d3ffa94979d964272a8943434f421b1cd9bf1e063c62edec65d19d8bdf0273b5cf16cc96e9e7d5b7ec98a928d792879f7937d66aef996fb056a1358d2de986943f4c744f4e382ee7e84cd0893818b6469c4f9fe68489d1b737e229bac175f5a0ac271742da08322cf8795817f4c24531a231327faf3ce50a28152f4d8ada7e55ca0b3531f1df675efc99206cbe4589d649d296c76502f1fef4c2704e2fec9a2a08cdea78cddbb1fa6b9c38d387ecba0abea03af4e23e01ea317fa775ec3a9e2e85c27cdd425faf51cb3190fb72c8ae1e9a3b4e2500dda79ad90a9d2c03d747b8b3d29376dba317eda6cf58ad23c20faf5e41da24392eea4c2618b40df96cce2435501f30a18d3cb228ffd7ea009954323bd54cbb27c479331a48c556425571ea6382efc2a055aeba13502d4cb7b6891635c216ab4338d70094b6586a2732d4a34602cfb0a51d7022d04cd40d89d94157b7fff6882a371ba5b9cfc934569d8d7386f10973281c77e1d0c9cfdf43c6b3a79cb79b514a825e6b85b6da787daab2b3a439efb8ea409ba6bde288e4d49f95c9c4cbf103018891359ea5983b85d66614ebe1eb43f1f32865ac5d3b76c377fd441f2eb3435c7999f09ecc02209a7121c1db4ba87711a5968fa04f45053bb7f765ca604a97bc8a3475178aa03f606fdd32fc38c4947e6e4e0112324308a049a45ca62467feecf378dd868b31f449dca03ceca2b52b66ff67fdeff83de26aa8efda5bc16789b24f81c0e67d5b8975ef9acabb06135c8187dd4f411032774b62333ee3deccf1a357e31c8f8f653b91984fb96c01c2549f507950acb80feb96d5978d6dfdb3e0c2ab8d76959204bdfaff32a84b67c66e5520c891f871096c927a0f2a10a88980b3a81307c822b1747c52c05c4b410ed78db85d02a020bdb2f36e914180eb5ae2c0770369b777403be61035f6e2f002190f5e674a96e0658959f82a4c5e704d17fe0b7a0abb86dd4a8cc044fec1512ba1da37c58d8306f8575a6c291e6968efb0e8c6570885564668116e524092787720d3f87e4bfa993cc66e69f19c7150e9a91d28972e37724e1174da60dbfafb841b2eda96dba2671bd282d6cf066c395c3fc8ecebcbfd154b9bf8324cbb334a97f29bf873cd65aa1bd3c3a649cc1bd9e33ceb3fe35b83d3cbc5c2e730535083c3da20cbb3932bb93c108387f9b8225ddcc5df97e04afa134e10ad88ce6d232f2e3f753ef9c5b52457924055631ceae26b6e9f225c2929898a061f3b1b66bce38735a4531d9ae74a5907f15732648ff1224d22a9173db96b4b05d2cfcb0863f4eff4fa631c34429bf4828d9da45b810489558849dcc91ffdd870bb912e5fca1e250c7f7ad7961be8f4bec28e338cfa7bed3140e03e8d0a97ded1bddbd7ed273d7fdf50cb095716f47e32579d1a560a5fd8ec65ee8e4cbaafec3afb189e15e876290ed2b9ae17d85a53023a6bd5448f4870a3c61c4f903f479901bc83feb0851471fb55d6981fd4e15b5fb0016f9b60e9639afd185674dc9493561f2b27bd4c248bee0f1518399b3b47976d89d748ec35879fc137fa53ffbb8174313291047a2cdc9a9e2da9975be6b37a636d46289aa45ef8a20a72776edb3da711af0df8ef7e2c1a1da2df55affd6065cf84fe6a835109ef887b1372bbb86965d22d1c1f97e153fd8c695d108a5a3993aab13332e8f38a391127e102106244cbf26bccac727a0bab5e6402c547a0e8cd350a920288d68f462feb75ce5465456e13247e459d2d964cc231013cbd2e89df8ef1368c30c1a9e50d6bbbf45bf94ccf4b66f3d0a3597c9e7db76e665c5e7c90f70e00698703f6bb5874de993def2c6bef26c830a779541bbf7e761567bbdb3b5e1bc9290c7daa76c2e2874793835fcb2627976689ef088740bcfadd6e70b6848f1bc4c73b29e4c16a0c448dd8a60c42597f1ae9cb28c409082440be1abd65fba9943c46065287aad5d17a7d3bc9662521029d0457bb4940ce92809c15e5b7f4cb857a924ddc8f6a9c4f8d6257209889a70262831142b497d3a3bcd84226ce4cd52ae6d6f54ffeec2fc656f7ff57685011d633d477449fe51bb648cec5d2c311b978ac45df664d6798a1789b470232bba113b294fbc87ee224e4b2955fc270bc3d080b9e1fd77cbebbdae29fc24904525c6058a5a2c6c4f6f5d5680d886f63e4536e4e98db8935701ee1c013cefce4de4c40c10b6caf0c83f06e86816e79bdbed7e32e0b4ea24fd899cec43f1e7bbfe2277377b0fe8fb81db03b1d2720342ca082178c0736c379e55913f79ac523180d2004b93ad8ac227eb73cf509d777c3f37fb110b60cd4581e39f22c122f9ab2576a460cf48cf46229c3b294072ee8455556b14cb2807d65a8509d5172bdc18126aebd763a5ffa63dbcdb52b7dca3d7f974cbcd0cc899e8e3d7f4365fbad818058d37c8d3f3514dc29b7a7e0085f9d392d4b388df5fd63d274e53ef02dcb8bcd5b7b5f15d4ede208da0768a8ba93ac6b731cbefc25673c4f95850ce3de65fa59d0f973b966444f4083935add7d4a028df621fd122df1b7091b568ee0ee474983e41fc249089f6562601af25e8751fa4348a9b5409642342db3424e31ae3006cd7f9031001934895e3c49549efc0a4e406b8292fba21476e2ac4b6b77d17ea63c907d7d9f639d5eac9340408e8edcb83fb8ac06775094f6d5c60b444d7fab5bc3cddb0a8d0b9fa993c9983834c8fcc845b8544e1883c38e1a061418f56c530918d64db49b2c389555557cfc2368d11db1e392727a3e0ff6245a34227ba83103d87473c251bfb74b2f6a0a436fd931056cef5473e811b7c53af90e76c7b425abc3aaf5f16eea2c1175b940476c4c261ea253e09ae270d1757c6cc415251d1b960281d9867d561b27c1570886b515ac19f109b8676a110a5b06bf62579311921cd06be7250c05f33dc86655450c9ce1ae44af0297d15c8372be08caa2b96c8be346f25edac85a2ca5e8d7efacaaea8bcee88e199c8f94fff9a8a31fa51672ddf944b3e7396047a843192496b857adacc43422a92ccb50668f13abf506217eb6308c832e8d0bcd59977b39dce38158e5243ba3eb8e9ea972aceaed8965b43847e51593aed88bd5c3cdcf7280d72ef4202acdcb42d8244ff8bf07f9c8a9083549bf120e65dbca429521007cec762f24b4fdf69e09983d89702a072a8b0f83fb66f6ce467ae3c4163a8e30014d9248cdfae2c3c884622b6ac4c669799700e4ece5099ac7f8c8845205caa9624184562166f72ae2a8e91c49d26c6922d074dfdc57fb33912535f0db74c46afcadca46e1ba72f687961ec1d40d159aedddc8586b930f53d51ab62119f2f76bcabbd4b9685056fd61f613918030321de2b209223eb9e80cbaa18987a7206f606d981920bef01a489052064e9fbf03f9a67fd61caa04fb114db313cee70d19bf2308ddb15e9bbdcfdd74d2568eae5cb50c2e340275ed8deb3e8b3ddd289d541c1e5db9ea52d9a26963dffc244ecba45a0015d770b484d9aeabb8419e644ae4c510e65c6fd9a6622266cec5ddd02aac9ec2030f2572d3c753e165b01b1999ba4dc64679a60a0891cecc1361d80a30c7fd14302adf0d20847bbbe044af2aa9df810b3d0e3a5d20f48b8f2c250662a486be133cb504967a0b33ae72fc7fe3f66582debf6a06b22bb5ba7b7019e0a7f862ebe9e89c47320ddecc4c78f4f08c84807e5183ea9c9e2392efbac82b13716cb9f4c0b2a2ef4210237a00901c860f4d14ee8cf7191edc0236ed387f8e9c68d38a713a824811169bdd418a460cdd491c2c7ab771280cd6d620c324bc9bd2c20abbc1b953eb40204a1c283a6f17ed8d089fbc62066fff08cd3812cd9a46b6c9890cff03e91a697e1ef932a178adac8794374c7cce204460085e870e5b44b61231dd76391e3886f468d2e86ce3f27ff9bc93ae76b25cca07b04a5b689337ef76cfd4f4c793003fee8d09fdf1fd777017c4880111d3d5524787bcc656ec378b4637116ed283550938346f62c3f9cf2b0296a9115d858b5c0ea2bc0fc055c45fa4c00d25024217071b7fa4fb3790692b205175d1bad0dcaa67a0c00b27660b8c7234ccf3dfe87e9e843755969c157f50c66740897207b987b05b71055ef170ae72c22c5c1cb49d043325322c78de184d62a9e12acbd44184e42336d991d07c975e53e769670d9b9b04b07b4bd818f53246afc5ee88a73918445c9b79c1dc964aa47bb050d1f36b17c99525b9f79a4bd5b4299a2df9e009126dba0c56d075cbf615e1ebb1fab4e44b285fb1d4e171e53ab6cf10da0b6fab0d93823eb5018458245917be8646f5ed6d70cc62b33cccc0bf2074f47d79dcd814351ea337f9c6989e778dc42e6c849b9d29c743e2379c54be04d9d9cb13defd92c5778215141042234327227e806d85ab5846eb2d341e8a4cd9dd6445a6e3998ca465bc420860d3dd6854d429a35476473160d99825effe9a1a30e61da0b8e1ec6cb3f376c069dd4ffeb0764825e5ee63e28044740fbc2752b2e4fa55bf25b675613dc49f577371073c70ba32249419b8f012ab90b9409df383ca323c9f9ec4d492f145ff94574a3113436c21ce8b218c06aa59006ba6c2b4bddd4338f6a702301d149a094d1e9e96818fd2422b9e905e01db6b52b219600200e3f8cbd2af3ee97378c7ecb3a74f013881c59cffea05040c0873ccbb85503f020db5a41b50732c12c7015b70029ba57482b8ffdb75f89f3e08dcc9062bfeabbe369ca1ef9b9e4bde5c3000d4d3fdd6fe23b21a9b18c8b6420e47df9a59fa7f81edbbe8f058dbadedc21bdf7bfc713ae70a79b5066fb71ed2f3a4fb31a46281e9cbf63657f68aabe8ed72474401c54c5034ba79c44c5b8069c65a39b3f8af551cf2d527bb51715044663f20798fef310447ba5a53b899af2ff073acf5fa44eaff835224f3b8b1fff83cd840e5fd912ee64c10452c27f37d61b9e2479d88e6946ae0d708ca59f58b185d779a3745319e0a88e5c71486ed1bc9e45482a99fef135613c0144a99b9a8f6380a35ec42b49c953bd9980878af48bdb4ae7a51b7980631810bf4da42bc79b8d59bac7a5d9337236cc2165066322cdcfa52c8a5310e6abade379cef91f3930b9ff18cae3e8019fb863fd391a6e3d296cec169176d95d057ea92df456b91cbbe44614b6306569104c847f649945f71b368560781643bd285dfbb3cda52d56f63f328188b117d9a1cc669702876fc4f04c9725b954167d7dcb5c9ba8a2a6e76c0e365a55d82b4f903e243ae1bbd1d57cdcfa7cd699af5156cbb360af420ace09b7283b3b57995a9c57432ae4016dbc461a5d79087ecfb264bc81c17ae5c7f3644302fbd3a0972052ee800201cd8f5b27e3d38a91ec5c0ea100a58b8ca2636b3a0c0bc42a7d35d88863ef0af10f8349cc4556ee18ca284ee97a4e467366c124ee493ffe07486097ce3a51d205c7c850f4b143d6eb21059c8674a9896ca62420315d381e78d76d4b9cced8228b2b7571fe0a875975a7d8d9617de9e8286f6dedbfa48cb88c2ecf28ef8e1a9dc02f737b59c690c1782b5b3790cdb0493445ebb51d2052842e4f629ec235869a8bc93e5e3c419e5f6a6550b60d232205a1964e2a73e2ee19a90e7983a3f51f99711c7e4ce22e1030ed1144b3ddf263eeddb2c36a9d99b286c2a58ca057c02e56aa81e3da4cfdb972d30122cdbc5012feb1895d22e173b353c4faf3a3da785351d0e4564c6021f4ed95a0d99cf13c971ea7861b6f88b968c21f0db1879f296cef9771566f6b09fd478ecf50b2dc31d5c32d190258b34901587b1dd8e4735dffc94dc42a155abe35a055a3afb6f933354e9d8228462c2b8bb536bf9c57aadb286aa7b8229d72ac275f4771dc38216ed963f1abaa40100d1d1376538149822dd814fbd52cb42a544cb86e80acd8a7188b7bab3f50180f1a6660572fef1db7a43a7b17e4bd6cc416fa9b3d414c3241483987b36f7393f6bd66f6c2712e294ad0c16291f2be3056e185a929e51728de555d3d10b5add690e45c50b86e6e010363bf7bb8a018d132bfe2b6420f11e2054310fc308c2368dff6aa29ed2f1daa613d887a4923a7eff3a83516441c5c5b88c5a3b00dad34c654c0c2afc858647a4a3eb6221cc8d0914e2a1b9b8e8e0da92b322fe52841beb7034af7cc25162cbcf97258c01c57adc5991afaf01695974367ca25ce555165dba1ce5aad0f662173f0d4f4077693acb4d1bd7da5b084dbbebbb088b2ce4b367aae640fde9eb9287be6e419fcbf9e6c3b1da545024e618836e04487e9c13e88251e0e73e6e47b7a67d4471fe975b5a0bf8c0d34b0a037e12dba954c0a9ff48a4577df227883d86bf7e081d6df302d43acd5a1998b8ed643e575bcfa8354ad15402dbe98098ffb84bffb26b95725216fceed2767e43d3460b878b209f0822c3d82cc2fcfae0e501c921a7ded543175259b7bab7cc292359f2e6589037f78887564cb549ae4d33e9747a63cfffd4f0dc261c53a19f200a28056ab219c18250297cc425ea3895fb41609055f2509d326d52f072c8f8c76d3db14a24f21a6dc6de01abc1e4fa6d01baef6bef274567b5f2e1c026c054c4d0d1f027d3e7bfd9a08a55a746bb5f78a2e76053864904a0db5ded254956622fe7ff7d236d201f5750d446a0dd234d46b61d77187328bcf727efa86ae6485ba563ac32e52ad2a36485e6b05f33115f8c47f8c9bc13a69ba0e5a1b0d6caf5049a83c28f51227e4ea8718a37d5fc0a395eddb9aeeacd01335d5bae69b257138ba810bf6dc4c466e28dc05d54fe1ff1bfec6063402f81656893e3bab26c8892f2de6b6b776258834818b1a973e75b7077884ee5d32b435eb67fe8638abb687a28ba8a6709d9553d4ede382de6ea00908455bd3f97c4440887c472448f30d605e22c7796537539016266ebbc35b7915f65bac3a6cd12ac767aacc13a02c4276e1b3a247abe409a5a3f937d1bbab6d4c187da72c40fcfbc8c13c38527c884e9e4815d90edb3b9c32462e3018a127e826c8ab0dfbb49a7518990f1762c46d3c7e86ea125bf80eed5e157c2b816a1e67f3e1d040ddaaf15e8705a640bf24f3f41e7a5061d41ab9cbd121cc0f915d53958b6ca8309a4db8d0b00ee3d5ea9334de27eabae16cef2f82e9f4cbbbe8b2147284b70dc640f3026eefae2a002290608b2005528040461195f3f848affb61d2e4bcc1d4f29ca7cd4a17a91bdbd7c20cd962f651660399f82a75243767524cb6f11fd26fb2294eec51859389712e318abc8f3d345059343872f3ff1e2f81d72f24a0d115d06d4b23d7216aec203941a3d90a16fc89b4afd909f0503e017182b9526156a749c0c25879e2cdb1edd9899373a903c455b2dd278c0967960c7fc179b3b3e565dcfc756d16843b7152c66babfe29b63b520cafff0d002077f5bef91c676aede7d9c93cd74cf06768a32485cedef2d79fa2b3686b67f04bb1ef48b9dfff0187f91aaf583953a59e8491c7d6906401ae75b55d635f3e03163372d6544f4c2fb6cd679ae87b150cf28cdc13a1dacb1aa3de0882026cf674887dfa00e8c8af7ab5da884ff7ff118129687d05910d32801a57b566e6b8b28b05c89373eab0697dc5b1a40e886b5974ea02676f11c4d5998911eced432cd57bab39b600b2595a5b7875e2a0a35da41651957d720a02694b122cf999c015ae195202c6dd37239f0f04d12635c6c1ed04c9167013942dffd8ae073a7eac11533863484e6a741cf5f17f8c6302325763f191fc6020afd2a8214ca866024a3c0792c7ac1a00b14ab7d5b515b369c3fb0ecf6db370df1198eb3a7aa92416a57ef030edc2d407845f23e966696f1dc8a61f06e00348150ffe442c489e8115cbbc3db5ad39c1f15bae780bace454bd5f53d8824c5c484474f37a3e8d3b495c8250899e2c6aafa836edc2faab30d161550ef01b26920ffab1df9e71075e0b0d8bea738027885f5b6defaf1ddc3dcd55559e6ac2089cc7524017ab86bdc280d03e36d5e2496e91372cc0aa2b95a73e06011005903f5d238e2afc4aa00b58f30f8e946d171224eb698f694f576be58082830de9eb70980d234ee6db6278ef64686af2b280c4809f38310ea66a73fcbf04d87be49807d1746e6cc4591a9da8f2b8cc046a12e624d57a89fdc7e7c95ab0a4af989805ba20fa758707afcae250be707ee2a6171e359c3c6c3e21247362e8a11f6987ca3de97f04911d62c3b1028a4d925ba456974249d8d8ec2f3ee18a22f9907c1175fe109cc8ba9b4570128d37888f32a1e2df0d4c9c12970ccd459257bb96aafc36c3ffe42666adbd48125b3ec173cff5e75788a8b4fd40b2acafa1ffd49a5f57bbe4f02affee404849b7a8dfbcf4b3d2b0576ddf5e49ac913a7f38fb7920e43a4a593f99217de2a72f4ce4466df6d2eceb3fea57bdd595aeddca0e76a779b62ab70555dc31bb0e39638153cfe8d52cc57d5d1c2873effd8f6b57a7aa2333d8c7ba844c08036099453911b4c203ebf32fc47f0f4cbd7359217051d6fa510ed32fadf795121ff3cf0a6f2b60fcef9f83cfbf9afc3c67f679edafae7258e237658a134670dcbbd8ff23634b99b6c8fd8efacea2500c8b99e9b392ffeb40500c2e1fa971aaa348efc7792205099492161b94a3cfa95604a3ceb11b262413f3dbe2708db31ab2a05eee9d159b1af5a224c5670836bd588f30e3824c6eabbc9e58c24f1248d7c8e63b4554718d90f7902577850f337ae011bf873d13d2e44c15704e27536c96b7fb017f7774e1a66ac3a04935e8ccd0e5a76669cc7c792bbfb5b0f0681834ace6583dc7a2b0020d287816160ed4c4cdbae9c2dae5d993d2ae0d32df58fe9cf04a27a29db990a1f5158eddbe3b45bd1e04db2582ae2d3f5712ca9f0c4c14254c39210baa0a6d7fb97738f78d2401091c62646b6b96ea3b9038f0301cabe1ec3896ebc6bdf0221c8040f2695da35483c7f4283719e0a382f01d87e0c1847a5b0f8c916353e46a45ac8afb4322683220c46f1dd6eeae0573725f97a26678b22b3fb0ce77b10f87b6696b8309c86c60a3ecaaa3aec7288eca76f94fdfb3debbb849445d53ed77375e6b83447e12ab9bae27a2ccd8eb96918a5a395ad1e7c6495130af02ef691cef801387cc633015d8df90574882b203dd857d83d50461b11839f95bbe905d691e1cd09226870be250b228205ec4293dadeee61ec9dd83599004658f444ce6f2a8c76b46b5481c71adf73cc5cc7ca39f09334df3bf261ca5e772fd131b0615f1a90984566e16cf9ca61a1d0837b6225bdd75268669d00a2b94c3d6fe992de1a6a2df12df5c8f4f8f585b541d2cd3d8ed4a231160989be973827da17dd042a902f70fa71c8a32c474e79fb613e27884692393af389c015404a1bc997d071d12b6623b5442552069e0ecbc3febc563fdc7a5191879d5a44203c65eecf0404f0dbc915033cb1ae647b2468c341cd24bca6fac2a3d51416b71e872189540182f5440a282ef20dae88c2296d4fcbf7e0b4664b5f3ab00b11a7f3b4011ce0635408868f634e44feb5a8fcfe231f8f5d2f9785e416187137f408b47e3ab2894d7e3955386df3caf8ad11cc7fbc2134c5c41a40178d4e69860f6f01cb9220ef246cdb7478db8261ab89fd3e07ed7de08dc37b0b58606cab13ed37f7d0e5aeb8a228a6a44404a0ceaab7d81eccd4e2e907295d939b1ecbc6adcf04883154f7e3bb05f37b183061a2be8992297333d4262d0fd6b34d09ceaed16ca36d36a781f1d6a1034639737fe0585a47e842bc52b71b7e2b829d3dafe967152e0c333b3a5b60f1e1508971e4b411f2fa65069095c24cdb7ae51838c1084a843fcf16a026d8943e5461613f1d3449023dcf8037f68f22a0e2e0f1cf7122526efb7935be4927f724f8ef8520db4a3491d5414d8d784817fc096a6bafaa38d24983dc2aca49e799aab9503cdb51e7304f1660452c3e2786323b7bbcecd1d4a83017ef71f45339e4b0b2614ce9df6303552eda5f2d42e8cbb5c53d21991b3e7823e439ce63b32e2005be62c771b27526087f1ce6f25bc2a87a03f8fff593397972f70fcb0d6c0b2ff8feee62db0e1944a862a25175d1d3738f17b384727b8e321d3efab2a1d3ef50caecd01a714730d7ed94b31e661f421d2f027225c1c2da9a500513d5f0817283b061e48b6e74cf30b5919e5036d15bf6318d3bcea9b2e0c346d1f598828585f277f58d1fe4de6b8aa32bfdbdc7a5f0041a035409659e1c327f94eee90124ae6f3fd38323164d57cc1602ece83c9973e34c2fe91f460608e69dc1d431a54ebd56c9ea74180c67a88d0143109f96dcc133a2fc7c159f10428c6af5ea052ebadf2c21ee732d643877d5516b7211c9c44dbec9aa3aff42515eefaaa24afb7a130496c483262cc1891f9d9338c8b13be2cc1da4e0343afb52345ba4370b3403f0a8584a1df065f3f159faa47cacc8892132d816b8189e30f51dd67fe5600f9fa66254c54c25e2da4531271372a8b560c530686b7158cbe513b3df9d177f9b3afd16eae9ba2aeed100a8ff76104808286e8ec79d53374a90f75ae3a30504a2a8921c8dd831ecd0f29c994045cf070852fbba53e29f97a7e3e3299a6789880e3b9860ab9a482fa734f2ac11e9c4cbb1b8138a2df50a17fcc897a98779967262612a9b3e0da7324a0d5ca7c798d3c3ed4e776651de8800d8a5c41796d94081f5a3e8f0456776bf2054fd71e2e60eadc0380c6c5aa636dd460d274e816c1a5ae75999ba9be2683baed64474b3b73407c5b21d63893caae9d610a009a071993864be790f70803fdf0cba79773602999457078ab2b70619c9cf7fa7804d60f3f9ce994f739ea6c99cb3391b5716df0f116706f807a58eb974e04f4c870c885edbad69bd889ef47c8e597ba113b49c4683e13d8c254d2ee413365278d1fb5227b07dd3b49ba36a8eddd9c0d4925726814b38aa67e3479b2a460013513e57345e08ceca431b82033f9fa826b9ca62ce3ede9187df3a46d245bb4bc108d7bcb381f1a73fbd4003dd682b320eabc711267903aa36b2cfa04880f9025da5870fa6338da0e7e46e2982438d29a64df037d91debdc4657ff54e89748d8683386af29a53adc5af506ed8d7abfefc131fa1deb879d4da864caa19a29fa7767d5624e0c291618c8ea2d5b684c5ab55eda174f063cd26e6ff026c894f60f3e089085be923a9532f0809620d0abfb488799c21a559d908a42bbc3bd89068a6a4d5bafaea17325d4281a476dc1c4f2ea3f3bb12bc4d7a4145c028fa88d0aace0e7a092f229f453e3f608d7ab8368a35e8a9ff6ad24648941ffd54ae6d9412d97fba25b5c5d2674989b1cc47b5faff659dd0747b28487825ba9105b11e04a7488062303bf203327b9dd5250dce7315b14cd77ff23f924bd88cde1669564ce91c85dbe30691a4b817c4bf4b25f3046c3fb172e0ecde933e48fd678cff79227a5a33df7612ef75a7da949c1cf1ff0be24718ca122bbc97b582d1a41026774b105219f0a8288e938879bda390324b7937e3882008b077af7a44baff99bd917865728ab99a718c757275f75ba0fc6392a232a5a5333211bf62ee243197f7ebab7b6859c814c02d26a021ab3276015c074a5902f9559d39cfa7539c45cf2c331f1d605ac160386ade3d729f77904e18192696f8a57588798fc182144e767a04a0cab98e5f0e10b5a1e57690e25d6bd876f356da83203cbf30463cf1b8e54fee5aef25038b17cd47083a0ffd7f70319faf1c077a9bbaa966470654ce96f78b2ae08b2bb1cbb3f7e7ff37760132d8d7fbab561b828fc88d640f86417195ac35852422242e6ba602b4861c258932064769d265f80dc74fa466ef2fb9cb14f8382237a433353f1e2e4b5729ca0b4035940e6c0d1dc0fa368b1f0d9d44f6b49fc9cdba13b743d61c0bb8bc04335a4747ed2b3088a639b8555fdc4755f74c381bd4d7b7711660435e61a1a83fb1e229fbd00455a754e55e3f8d13861ac45ad95104c155297de7ec26b41d83aab457bbaa503ee71b6010c1f0340618680b8d56cf22167c4d4d23c8c55900f0144461521862f42fa8bcd7449c993f44c60ecb9f1c785c237388c8a74bae054d2672189f53b1c2ec068bc933059e12ed8d28df321e8c32a7a2e9efa36b34d98f9836acd4092d4f5227fe6b5bd98cc8b969859af97b541a8feb251c6448a9abd0a9163a52193a4e14c13176106d6d37f291f2f9a00198ea1a2a3aa04b8fd0bbc6e1968e0d49fd4d819a9755bcca4a2c8228e0e743a9e0645a7ecca837061392cd67e6ee84a28dd56ab142870705b5242f673762793c2c4aba6007d6cb96671fe28bff4f79b8459f7ff7e777897fead201dd3be4eb22809893b28c1dcda9c45208ab5b58ceaa03f5c28963a4a885a469a41cbb2ecd656e5d2a7b32504bfe7c971caf4df4ba176244bb7b08bb4aa4065fe443985c6efb1da5c20bad84cbfe1db6c1082f16ce62e8f2f25bc2c0698f2e004226a9df2ee16086c023b15957a7679bda06db87eedef2ee29ed4a99a1a8dc8b0a48c933e58ade855b2633c47e00ae1f92a1ad9a0058b6d83387ac33d72c79d2833db8e620c4ebf87e82553368b5b9a147b7bb23f0606ea357d327d61a78a28b7a12c92ef400b1aeda82e428e32b248c79821a5d413f5068711797fa5d77c6b0d45fa0cda0447ad36ebdda11f7d46224a11cd77ba0c15391111999cf5775b0ec15384115ac9a9dd5a89d2175dec2073b3a80b7ab19b55fb5740fa5b819289a19883347c199c313dd32cd94b3c27bd6ee017652a399871db6c2b0b5fa23bac56ecd6fe4dc56a20b9a328394875adf41c15a8a5b6dbb69d2d9864b23ba0ddc590efa27e4b8ca5bc80fca29ea11f4b2dc39bbf9d7178fd81a4afef73fba036d6352490460653363b2a341b178b3022c879926e22aa1645de52c619201564795fe902751a3ba49ec692ee0d2fd02d5de71c773f66c0eadbf7d99b2e0546e594a85a53b9204593b2f5f0972e4dae43b28fe14b20e6a1828ee4514a3ed6be11b75cfd27ef5c90fa8ca1b3dd7a77e4178b623be801f3254ba8eda6c94dec5ede7d8a70d58032cb1dde1f30c97a2db1e168864c47c17e9e54a762883c6dc2cb0d8714a487d5152305fe2854816d968efd2c03917f9ad5064f2ec0a5779bfc564ccc26e972d8ba3e66162c4578e3c83c6bccd21a026e8067d734c85b9fa7940a580e4323b6ad45892e7ec2460f695aba985ff3f75aaf481175e74e552b8ed623dc527ebf42803d26fef14827f9d319d5f13e1bcedf4db58fd47787378064712365934bc44ead224b40f9b06093aada4ac5528163e9dff5ad0ea338b89d31f7f14de0a5b7b280bb0a4b6d0373820ac155b104929711238ca6854e844108dd781c03585974b323a2c49899d7c1a50355909cb1178671a53854272f72ed9641ec77464f012e135614629759560bcce0910f9bc9adb8a0be7ad7b43c8f6c4cdcff227c99e8a2a56364bd532bfd16585026b6b3430708c3d4e25e224faf28b332554c563a5e41719986125fc3feb891dcb3dde51cd9a11a1d1515b82ae0a64109f488db8c249b08639d2df4135eff384104d874e7955448af94c93cc5df9c1b3a4a770d33e778954cd97a1f3876dd33ecbcaa432a12fd7cfe8a840b69b73bf500c0299e49073fc1386d6797f52ec646da8f2db8c66e6a2aef8da62de0a46a0fd34691bf140e990117a637589d84ac3e23b0c1ec37feba116564858732e8fe06edd6e55b1a4aac2f1a341bdf38c749641c52832bb8468c92fd4419470abea2af022095d86ca8c9d580250fee44abd55a38bfeea4f17844579dccf0240678f716a9ec4db222444a48e18a942e0afda4bf9ee40a98f32ac310141134dcf8f6f3cf89258ee7084edecbf63c26f8d6a675fdb4990da716cd21146dad8c0850417d69645eaa8ddfcf959912b67da4f2075c87a546b7f31a32de7dda8fe7be28e8b8986b66ce056c76b08232b3e0d28ffb31c3c29b684422ddd2d91472fef8d3cd1c4455b332f27ca3d8f8b86817a00c7f52586d3dbe786adfb3c749417be42173331604cf4be96fc01d4e1a8b7f1b481ebb7807239a21d1f51e4cc9224a014ef3adc48b07ea273b5ab345bfc44e83c7466541d1addb3197a34b4a145f863b59afaa7ceb89b88b0c2b3eff741e108e5550763d6149993d0b2af7829626d95176e9dcbbbf55fe1bca538923738dfe50a3ed5b24e5f8abba9bba41d895e6e409bc037227dbed1bee9246869c7787f59c55c13456f881e4b8215a0ba52b3486162dba576b440979eceb6ba7133fdbd8e23c490d83992a1c7053591bc5af6d6eae58bb589c87ec37a80979826e47d93d5e163fcfc3802856ed75a489bdde565e36b6d494a2c8a999f5463828549aef98cc5400389e76a902eb8ec89a7d5e213c2fb05310ffba152d18fb5d8fc86164cd320541372fc15109eabad3587f2a208bbafcbf7ed78158b0e6a4300aaa680cead222ef8ed397c2a49f821b25afc2166b2468459a1a95db7d77f63912fc39b3a14b91e9c0a289b0b8ba3e091c97256eddd52028414ed6afcdf4ebac15d498bf4a05968427e81aa02e2bd437b474f52818d47b9708d9600c0b6a72dcf67b66e9d1a53f042ba48c207a7d4bd640d0589557787bea3b5a17ed13c434c2299da8609f713472eab1a7fea4313dfb25614bc45b21ab58a6371ea822fcc07155fd03aba118fd8eb09253ed0cd400fb8558eb62db55a296f74c7aff07ea8a25acb0dd1016ae2ab821ea0267921e959016cd9ef4bf1484af2387c7b75637dca9ef8f43d0d3587fbab1896b11bd30b53560bbdfa9975812a57fe575abcf07d91baf7221fe05485e75710275a7156f0155448b6bac742a1d09c04deb041d77c13dce8ecdbb23e9b4c0da7670b19a2ad4a34910383079042fbab4d789f025f6a7065e63af6c1f0682b7adbbbb5906c241eb8502177c8ebdb083665c2757a2e8fa789e74d964713e2ba40698bc1b6ed02ef4bcb5af4c769ba7de0a8b966a3d3a9eedff180e041ec04ee37e9629b928e9b4ee0db6440480a22af892e588a4d543dc15b321d506828d3f9a436c1196d2efb5893dc2d01d93c7a0790979ec24ac220c70d74d47176fbf7149ad1b6dc3f055d5fa445c6dbae5a8a716ad002455d673c5a02969179966f5c9edffed27001191e80bd1034268a1eed8e77697fa11e312c5d537acf3f6f960ee6fd0bdf8d319e74144f892c7023a7250064fb5bfe0e3de3fc4e4ad2c91a7006d12a0cc032b4b62b91d36aee451932620df7871d4dd9e4cff52f37d8687f29ba5068c4ba07b97c57f7fe0405cb6a888b4a01ec30f583c4c2d10061587b1de8a3e681b6d6d4c983cd0e5e00859413c9755a938d6a604a935a1fdf192907178018c2039d2a67ab37f02f021b24fe519b564b55f31bd56ebb9b39843823cf08b2b70ce128f0b3ea28ff4f643e715e6786cecdc8dd7f4b658648d92bc130e8b6cebec4b22f26b9a4c664a21ff3810f437078ff6db018ace1b84e42596cb0716fdb0cf358f0682a6565aacbfd2cda6fa27c5606f315a52ba34500699242e3aca5d1b9a11288ad0a19bf04b6a469a7c43dc0fa274b72e098141586e53398434b3e78a4bc87c4ef17cd0dfb259841e175f14db5ce08a7dde8928a8b7d164a8c62ba9dcccaee07398378ff14f68c97248b821f51e543922d32c9b21b9162a5c8c723282e63d6e853709e53642c780fc3267e84712a4faa82e11f179ee4e1196c1a8f9fa52c13cff5b304471233d5dd44d5e9b2ea7c16f0b890aaeac3e45dafbc9e2a271876d2aa1966753ea952d72a90de2e93a5b0ea5f44d7e97d42fa97971e3f4711125744f2d5fc7322df85f20e254d1321469e14844e30d9e034ffdf5c942034c44312b446b7325b16af56876f9523a62eff2fa5da7fe1cc9d92db5b0021730b722f84bce70b643e9e19770f381f243d4fe81adadaa4ce90cb3286d3d12eb2b973cf4271c997db492ba480299b15cea3e97f7991b819eff4c659a723adbfa4902d6e8d28b0f207ed10eb582694e70e90e82db9e7bedc11138a59c36f781381484d7b3ba22e23011653d4f3ebe684cbcc4ad0db966338b4f23a9d55802573f0995cf30212e47720c17a1acb03b7927ca8aaf621ce9053809bddc0451034420cdfb7fd5e12db11479094390b6c40a3f0608f44702ed5d1406a7641f366ceb469d805496ba83a987404d2ab7a3d00e515f6b4f9acc53705edfc6fc4442e6a7b8041be3d7e3e314cc9ecfd35172f0c1cec9a1d42c6d7a364c92f04f40eb5a922ddc32fea7cb5b24bf2f6d35d4679412e47ea08247c9dbce5fa1917941ca4accb1578a5e16396a20bd7416f01cdfc07f7f774d5dea25a76b77b532f9744ddc03c40e10e839e3a57d4aa227a3a89c034de838aba4c29fdf1359f3f489b8a8ba3da7299b7303debb78234252f93431ac29c470292515b787b2def68e75d46cf799d954c625461f0e272594830768b09aff27d09ec8aefa85ddaf7150515258c0c71a971ab86328b49224acaaf9eb09d3467ea05489e02fb68a38e733a40ea5a852887c5a7664518bb32c7347936282668025198a117839a45a4f6f0b566b2699779f521e4a28c266a278c0e20892c48598ceb7e74948d4ebc3fa71dae842903322801d95d11d6f2f4f363a392c2d2466fd3931709e513264ed319f4b7f4899bf1fd9ab4fdd503c939db4302d4a5c4a176592de1541c7f89026026c4453b35b19fbed0f74f25f0c94f4225ea408bedc8a821b07fefa267871c746db0bf69465e1ed292b88ad46f298b8921344b30d25637a162864779d71defdd6bd24be690135c7e45c8310e6e9a50e692be3dc45a8a34f41f933475d380c72ac00872e11941f00fe671f37e56abbfdf9fb7b6f01e3688b108c21ee400c304865d5c0a643528477b3235e11df2ffc43e367fa5ddecb02982a3717ffaf52b50ab79ad46f2a36aeb5164168d89d6d2a330a363acf9c8d59ae245d1ede55ecec6b44c2d0af856c611174961998105731e2e2fb1543b6f918b2f58b454d81477f248881ad52cf06f6bc66ce7b39ced2b4262ef95d0f9cbabebaaba4fa680f23ea5aa8c60c5fe3bf45462e70172304c6eb453ea3ef4c6290312c714ca50aad719134c62c33e897680b533fe1c7774e5011b3a77b1bdf4a18e3212cd94b07badd0c3a6149edd4be59e73b309110a3d46e3f3f409c6bdf193610da1b5e5a8928365fa57e026524083516300b6300999b544e7e5291b3417b0330efea01835bb0b109c40316bb2f8a66ca4967a7d8ad7494fbe9d5237c445018dba1194ac057ad451585799bbb521b95c87cd03af9f41ea4f8d06c452bb16a27970b50d675cebcdd6dbe37fe3a8fadb8ca6e08c3ad08cdc65431dbc210297a0be224d415f5e3b1285a65185503415d36508d684cc3f3940a342c4966ecd90f8339f883cef6666ea0b125a5b8a91293a3193e234c388d30dc320c0f36f9ccb1e8535979fef775b6891055aefa3dcb86eaed460371a8de23384bfed4ef862229aca3cd26de5a31ba7ac96137a22eb893d4065135feacdf11ebc171cb62073912cd4f71fa17d7ab2e3d5dbb53ac17ba722d11bed2fbff7a7aa3ba8675fb6c911289c8e1e0190dab7acec03e1f6cac4569d0de9ef23439e37db5ef1fa34eb5dd863d08f8dd23cf040792b44b0586d90cde31921ef3d6d7e81117d0d2f511d2bb9dafd3efaea5e277cafe5753158bbe2e018c1dcf1a6765c8c762a6aac1a4e75c3282d7f86a796beb1a6a0d8e85f8b4bd94600de0f3d57f9d6b6025916525c55588a18203d75153ad43e823132168ad208833ee39060f1baacf944e5dd2c4006014bb5f62a895ab1d1a4cc84e65005026485a01b2dce1034d4dbe7dfa2c9143cb77e8632a05bb0efa3200c07e8d061db4e1eb45a48235879d74725d47244e330ee4bc3cbb4210ad18abf470a34e20c9d717f2230df84867d98cf63cc6ee48b7b5e5e87e28448a13793116bedfde7510727fe8069bbb412255e6f66f95523e92f71afe93163fe358e5ddddecbca815350c7453cf231491e4c1ac270f19cab2520660249b55375ccc5c1d7a85ac7811eaae0782649462c8d28f4f307b5bd4e77bbd5e378bb249f7dac0515d0ed58bb74e3a1c722df1398f1d6ce15f9d3f1305444ff6eef3eca6268047aafea5f4b22c338442751619f7936d3e5f1a01ad220bbc1f73d1290452a25c09172759ed7a653ad773d3929d25578a8ed47118cfd86cc11ab0759678696b330902a9a77ee080c10a632283bd2cd465c90f2c323314bae8522c42f38ca1ed74c850f359e876dd9662ac1c612a5e6d28badacdd3e7ccab27d467ced702eed9a209a4aa8d2ccbdd7ad1a097bde401d22c7c980ddb5244f0df446661f703dc91750899a2544bda3be5da578b90c89edf8bca4a9275401be08477a99ccdd1bf60b85d65ac0e3399dc9031c125862d260b46663715e9e469a3fa5799223d38a8392014b7e8f38f65ac23a6606485dac9352b1c3a967ecfcfafa24f4294eab78fb61f3912b205e6423d8dbc30fda0919d6d1b961c6a21d15f67e126851a023ef3b02d2269b53e6742574e0dd28911c4270eee32351c3053727762a4c35bdef3eb366d3d5d986e7ad5b5ad35b9eff7ab899e649e6c57df7bce37ec7a43826f64565192d542316714404faafb3e19038a96e1c76e1fcd8769a6e8e64fb265490ea3a8f678769b6f4f86e944f81c5cd0c825b1524504e4f40eac56d0f6358f3ec6e35a242f395b97d0a0d69f26e5125e271753d6efde1a3466a38a24d067a5e48d38cbb71d3fe6cb018c43011f47174e9efcac21b4fa25a6f9bf6504cdf44b63d7e99c914ffed35db59ca36e6ceb4a68eb261ccf196058530d4fb79d2db4eea65c2ab57eae564b76760bb84291ed5a64bc72e57b905254f57d69c7073a3ce08be92785f3d939e907ef76e1ba84baa2507cfe5ba8cd44347eb00870cdfde7cbca6778c946fc7971aff1dba093f7cf22d420b9ac0434fbf89c0520d09945b2695cb55ecc6447870a645945175a22d1313c6a1531f44953384043c4d2feee8496a63c40f45b6e8f8d812d171d7d5fcfa53b5afd4e6fb3bb24e1fa872624c757dd9b91aafcd70bcbd4d0a628153c1bb589d3869ca2b70efe75896387108f46591af4cb39a4d91b79101368b90f330a9f3faf94bd8f67291c335cfbe15383fcbd25dad4877807304e90b93c99d5ae1706815bd2897f1b5e695ad95920fbfd7d97392803efc9422bb08c4ac5edf4bd9d5db6d21121e18250f37b8901b1b6e074b176c9cb7e21b03f51b13401f83c963092a8a0ba8a467c2bf15fa6629836f8d212cac8b20db73b555d43ec3ee2747fa00df15f0bf2e52a65da347caec155484aa14cbd5a5d669fd6eaa2811f1a866ffe30d24a3f71f530f28b041db37053e902f731c36b81ee33e61114656c7eb8bae784eee54d12fe5d1cf325dc958dbccd619e335986c8038dfd10fd58b2fda5e5f2b9f0353a294081395eb9feb93e46464b2714cde5c6a44a1e52ffe64df2b070ec5e2b8b784f3541a12de1c033358cd61bab073e46566ab2fded31c5247bcf76b501918bef6b0d9ffc8b7b20f86f71a251f8bb9d1e106f96ace505700c27d1218c0ae0145173f94ed3fce3d83e0e7edf3ee2096ae0de096f091d820184d955f86d1b007854e360375168e2d2d43215f058e366637bae70ccf26f5c24f5d1285bde5d9d875be64f4331677ef11c3c47b2deddf0d7342b737181ade90924cff4bda01929bcd0effef126b16eede9ddbac57ae2e52030003fef6632b6b33ef3aab4e3cba52a2bdde22214d3038845b875a4d1ab337a365235d1e9d8e869f2a06d0ffcc0d1fe05442a21677bf321a0311f8575239bacf25bd526c28db7f7f9890f4176104fd9a04c470d715d3fe4ea3ebd954b307d40334282d5f1ff69f755da0b72a6727449d4fc782b107874052143027fc487bc20e9eb5dc60d82b9dddbd8e99b9dd1d7e1e13fcf3ba87694416246e5f7685030c537d689349bb3767926bcbfddee2c77cbc91be71707cce31831402a711cd1bca3621f20c08d21ed33968d9be7f8f1dcea83e85cabb3e782147445226f9f034cc7a4632dcf43e600518f436cfce631c5d17325a346e6be4e1afc412e04cba7ee57c20ed3cbda3084a111fad7c2f79519ee2cf76dbedc43ba6409c6fa753c360034de6803141fef592cc294bb603af276304388562621a854d5a4023eb5bcf9243dd71b557e50dedb9b256b12a3db21ffe042fd9f085372e75a00734d96960b4b68339f16712f18df874046d416d634fd40b5a5e3800b39075560ce0f9f349fd370d0d4b57e64fadefddf84565078525a6318f0c0e03479d6987114c48f65eb803461e871f78ad2462cba3a83c323f8c64a4cc36989e5c5dc41f38cf852b1b1a11465ce65f6f4bc494f8bd05bdebda919f990f50aa38c6e9b39eb4e15936261558fba8850b08f5b33dc8c9540ab6e06d325ea321ef82b8973b8c15e126e06dda702cb3f458a99f48c4ffd4c463c797487c7bdbfa4d83f3f929197d34b9453ecd2f1ab2641dc76c787e9ed7f56b2a83d6909c357887c91a8da0fc115d496027833ac3caf506e3c66c2e8da8b517ae1a797fa94f3a1735d2bc08787449dd2200205af31d174deb0f19eceee9d6c870608cc3852c442b292884d959482d4529800a640c52173c5963e534844cb08879dc44e62ee954391defdaf771aa2521ae781d1fed20f1a9c580078795cb328b84cca0e5fbb0533f720033929778ad6213f75c46e6dd73ae3e41d5d9be962db3b5bedd116cae35fe41a34a1607aeaf1683d72c897d7d6adfbfdebf2ab3311e2e01f2618795ba6b4bb186ba022cb8915fa294a578167bd45fea4d4206b4a1c9278c82891fea8928df850c0a371cc806e1b616c57caa06905c6f1e0a5ec3d70d4d289515d0454b816c589bc9fe177a7221d7ef4ed5fb400961f52848aee0c553c8a35ad9053930aaf86a7eb75c16376e31995f840390789df1e70bcd0a43c168220ea38c2e96043481f0ddcc0747def9dacba656084c6bf119254b0a4ae8ff36d1aa87539a105ac00541affdabdcd63e9352c4632c6952af2375666bb682f101e7329d890268fc300dad2eef2e59e4e5c5bf4743aecc8a584cb82f632aabb50a6710d4e428320fbaa78a99734dbe01ecbebdb87f91ce8a8dcd2bd2406254751be3e10d2b061f37f7ce7742896e59d878740894a2717cca66e1434a9facbfe3e79d8c360d0b30024229de6a0787d5a603ad4efd20e809e250dc65e093f1a30ef67cf9fd70e33e7f970a6da06847c401da15f013f68fb6eccb9c8c84c4c05233dca6685b8a86818435c00694cda137b1e038a4e82029737b422e6154a9aa1a6029c39b998ba51f6d3b8df055e7c2afdba1a4c264a9f66cd25f770f56c5a9ce9eccaf86a4400cc543cc887b147746c09545a23ff9f66d3f1567054592a395cc09a5533a7d47e521726ed7900deff9b98ddd339774b08950a0d16a426efbb4328b8396fa992abe1582c3e37a1158bb6c31f055aa624be5b2ed508a6165a63a7a0a9bae96b27ae2e073103c89d990861fce61cd3cef7410631b325bf9b0879aedbaf8a6c43769235d28237205d72e6be59e9f049fb9337440471e22891c56a94b8f6322f74c0f099e37d665b4dd35a61d14a5771d735164127ba749129dec3e015afc2f1315154788a4a5841c297bf379d121e26c6df7d5e423ce24b75f6594b0c02674e5fa8f5ba6667a494f67e98b06c07e547cbb4b73d7c6a1ec8b5e7af147619dde9a72191985eb2e72ce24ea172ec57614d0548712d508c96b9a180c346c927749e98349cbf8de42b9330dcc3a9219f196eb90b4aacea99448d966e4e19f144d22c9bbfdf64e944daf86a4dfd862e9a46ee2d55bcce25ece2dd1e64fd0732835a6411991046beafe09ac8f675382c832496efdf5d9a1263dff87cc4e3d7c1ac0d6b62fe119aa83f0da07d9cf7e5253c51add35eacac85dec814e0c0404d2e440c2147f84611f635f643f1d5c4eb16ea29fd1b159111b6dcc627a7841bf98da30b4575b5a2572d11ea4bb0b54a7b4e8c7b342e28fbc4db11a00552e9c6482a3d4466c91ea3213648005e501ed11bd79e78ceeff46f50a64cf2cd15108b940abba926ee985c767ff8b775238d01bec31b27266b204f110946fd6a479155837ab720da4a9f569f7ce02f56950b4dffc0f0ed6d4698bd0c13f42b4cd9006213fd5b8de7c258c86543149b3d4defae2eb46890eef8ea036ee1794913339546e72ee735b5006cf1b6dc727687e5a589e51857a7b905862973be9f05dade55baa3538d34ee56462b7875816c078f6f6310d5df35b383d0ea52b4f591d9257ab09be9c85815516dea2ab9a57cb3f20c43b4b011b406c2abd9316d9f2085297441257d7921c4c0937678b94883861dc4637f6353976e1d21b74a9ed5c316128466d4ac63effb43b48206da1753951dd4c24a5f7e86b89935e0b06b4d06a3c3fd467d8f7b0e17ffa3cdd2044aa9d9f48f4964c77ecdd8f37cc8393a3e3a235c32f87fff263e5fccf83314774d38ffafb59bf1dc267d9f1aab266b1cf36710ce248dd906085522ab290570ce5a62101173bab15d24bc2c15146b05e592aaab41b2a28fc49f4b8c6db8de1f075fdf51fdcee20b0b69db7a5542ca76c88a4a38073be3ad8b11173b479d0c6d07d1a5f4335e7f0402c31409b603057fb46e2216580c807a5aeca136bfdf902d6297d7d855cad8a4f3edb872fb5c9124fc38836d090b48575de4aec7b85ed4c8368b43064d1038e141dbebb3bff65af02c128cc273da28f08e4270e01ebcf2000eaa408f054d0d3fce367d793a6799da9af4f776570cff384a1bf9586f811713182c26b518371f213517ce0584de13d79519ef95436c3b77054ce630020dee86847aea32999196600e378cf4da030952650f193001933145e7c66ef6c771dc3fdefbaca1c465134b790aa170ee2ca700bc10128bb4440c2be4e7f9b5c541123824df66f3c853dc04fa346c6156bfec381d2ba99d3eae151c858b3af76757a5adf9375f238ed0f72287e129020c04b080137959ffd221ea6632f96df7ca4bd5658460c0df652ae65fd57d3ddaae9e2e75d1e1fce47dbd59bd094002953b44e23c62daf241bfd4bb6e07ca8eed9f8f2b62a79ade1fc0afbfebc8b49ccea753b4deef538ecd6a56ed99345497b254b1c480f45b1a5b0cb3e30a37bd4a9420db31de7cabc318b468f55f6c277b96000daa9eec1c9d2e9c2e02148beb35e5cf9a44c974cdf4cb1b9235fa61577ba16bdd7015bb650b83eb51c995775fed310922f56f6161ae076ae79bd1d38164ad36d4c5e3e0b638b66740f9353411d05111b202beea7c1def3abd02d4c353c03399edf31b834630bf14f906a6426f06a1df0816751381fc70db657d8f266051d5fddf36af2af1c3782808de527a283861b10ad5b711193ff5114278967e6d30df04f43b72608adc20a54729ae72a3065e02b2e2bdac717e2c8d945843f8c5d7e3f04f60d3433773163de0e0c0e45f5c6f91ad19f21bc9a0d9a9e887e00bdcacd9b7b465f04b95b99a4b441ad9363ec7b01b55ff9de4c0fcf65fabc4458f663d787d3fecde8d306bc69ef0d074ed6b7c11f48eaac3802d8800ac1eb77149a6c0c01ec4e5aa6e70321568e3b7a3f5a842b6358bb1b0b5efc9c14283eb6396affdc86e3c6b62c255bc1a8cb6fe7c27ca59e52f62973115e1b817cb10711abfe4c42c168922cfca281a32ba21032763adc74c9d1b27a3ac08c8c0114513d24f82d0b015f75cf1456871f5d6ba6a1e29a27dc6c8c427db42f1b5939271f9055b57e946d28fac2de338db3a6664d82289b80106ce9925af966bef12e910c94527bbc8f3c35f39f4d4ded4110641e7f69816c2d3a4d37d96b4ce7aea8e296bf237d81140652a7e4db65a4a1e0f84c2f9d45bb72f042e165f162689bfff9b07533f7bb5abe5342bd95c42905803da41cc1f366f0c90d38f825ba7a6092fdb26da7f14a21e3d4b773e120ba478e78525433e33eb57937c7b8c390268be01f7c5e6b95dce006cf6fa9a57d3ecc4fa40b4f51d7fed4b029464ce6b07fb61ee6b661b0b7d8dda3af460ed2730b48f3e97dba0e64d4286c2da4e25c96c341af979a56b45deb70eaeee6f433a1fb6af864c7622412f9bfa5d4f38abd2699dc70a2ac45038eaf6f88d42353926c3b5015950f457c211582e95c7c1d787532feb0595f9068a006fd30f1d2288307de8799ab0731a91e369dcf8979e4733d6be0a8db030a5213db71a11231f8424bfd3656dd36012f144a91fb1d8d8f713c5e8c35714e7d289754c82295d053358a4d03cce7eab4289ff3f1975143b6e7186dcd06ec7c1bce4e199b64e6524f6fbf0235324e902f37dc923d57a773ee25747c567fa2cef2f8f5cd9ebf721289c27d6ff22310d58cb7a25851b9ec34ea30c53e4d2d0b86615530bd3482bd4d2fdcbf4f934daaf64feb1d2bfb961c5886aadf9e86fea020f1fbc1e74d47ee95b302c0cf8329a70d51f21ecadc6562fe498b35179648b59e728c5a414b902a5b2823fe73c4650606cf07349bae4a5e56dcb14f1544b5dcfd63e088d100204c526c48222c84289c5841d6ee48799bfef216672306233a7a322120ffffbc4d751f694346c31b7dcb97de3c131cd66075c3737f5744975abfebe1540882fdd057cb78b52b9e4cb61963918b7832e2755667439a4f06619328e5fb1056f62b7305e3b9c7d422a2665164ecaea9d8807db02f41f6cf8a11dc70df1f2c2c0853607f1be7c4f954a49e3de37a440184d9c170079ecafce3d84731246ce381c566bbd8018ce1a79b16f89868ec95e3e077ba6a248585ed53a56a4fe2b977fb4ea57f2d555c45602aaa53d9247381a9ccffb87b5754ff6c04a744784018162daee121cfa69d7febcbc0707635aea4e64363ce69a1fff87e1fda9d54b5d173832485aed4ce8c7283ca9f830cbb1da608ab8e257c161852c3cd58a33d32d59fcb075c76c8d08a900c4905c99743655645e4e47dea5501bb5575b6fa59a2f539f89fdaffe030bc5e4cdbd78d91fbad7ef1e8c6fe311db331e7718d20087040031ff8dceb7cbed113ea66e90e6eba55e8a31bd19f61ab7515a7153a637304af88888339a5d5ca11228a733928657a496bc08c0b9b17dff924363d658fca4d61415a417703d191d0ba69d0a0fb74b8a517cad46a882d6e4db649bdaa61b1da5dc15825e6a3a04045236c6e024ca590d23e8e6f10ebf2c8caa944320d01a086247384966391e54650d3d001430106b2d205e4acc36e74d5b4cf89f980a92c9e0e8a272a60a7345de1a75a2b7dc260dbecbcea964374b3d0196ad47801ea6fc86b589c0e19e5cde02b1b7eecd68b1283c801f6085b815d585adca242f95aa583e1fb157a7e616b32a9ea79ec5aa17cbdfeca18f40c5867b1f0311553b0345ab88c5b8c2140a57178297136f85c01d711b881f57c25afba114731e9cff01f6b21e8ac2b00ba379f3cd7fa2dbadea9a418dbae39c0d20e1b2ebe0964090422b67066f60f7dc390b764dace45bee00a2eeec750961d05a6e5b8571cbd5b113325201ed8839f6b863ae37063a917da46ac88094df85f01c1f8de67c032226e214cdbd41a71ab698775a37b9f2b3f1bff74f14207b551fedc634316901858d13153d53bdb6fb7d78f24fde604c604d478101d2c493ee6e23d1bd2b77c644f59bde8c98d81e56f1a4e993e5119a12665676203236c7f874d45df7ea56efddbd30547e3d4b4c3cdbe194ed3f14afa208baa0de408d06f8aa1790280afdbe832c5687597419ea83261c59a580a5743f7fd66fed6cac03b76bfe7a3ca0ce0a212a3cb287df5261c0c9d8365911d88b78a3e4454ee4fbc8fa22ac5f1cd7f70b9afd86a560e34594707f7a2495efbc2941bcaea1ff5faee8d9a1afe38886c00c740058c0fadca4aaad11eb038e611630618cf6e7ff4c47bb5ab4457fee035d3260c759e6c0adfe0b887c33976120514f5480bdcc31acbd993bc069b7bd126138aaa82925620dd20746af1a895301494dbf7c06b3101c6b3cc38d2dbabed12f9cfce1574ca573c5d1d335b24635e746113493ee98ef2d9842b424bc72007cd13a553ca47da7a07e5a19c43f1c19590b8f8eac81ec7e3aa5ce99aaa7fb5276b2247de0f112aeb8d4a4b279ae7c8de4ce4e87a882ff963b5dbb5ac87286306bfd73537b7547f8b0cd37c06a98912fa54197a8d73bd9216ab40c92dd24839e2f505bc43ea4b462814253e4a65a7a60adca0a8a8d55072ea10a67f89a405e6a41c6307fb461c16281a8f7830568085f043c6c06b0103a189d782095dfb01f865273d8c26e4b7943160096ee7e1579e187592f753f7bdd7f19a4641c8ce15ea988e4ccb761143492f3a57015faa34498583fee431872011890e3f2c5556fb81a81f9dc62fda39b0eb0ca25ddd2440e8e146ff14474e14b035bfe632e2cb0ee71914666b4bb5ad250b844bc40085f9908acfab4f83d7e40030e7838a288a2eaf66bb577dc9b66914335c182fcb15cf2439ab5ca27fdf579c58df5da462bf3bdcede7eeced9f6d3ab1dcfac4d66359bd5e3e4ec917ea01ddbf186ed89bce0e79b007c0d4e344cef7b169890036743e2e6aa1e861d7feb5b1add70b9be9bc06784134065f43e56e47e050cd32a35d1bbc728725d7378cc9a9e032ee69fc32f5820e0e913e50605c36f75ea24b497d5a6017290b1abb488fe3e7a5050c0e88e1605de9a5abb20160092944ae0afa03e8c0ffa52259fae8e4dce7b17b0c4227cdcf008e047b68431517dc8fa7678604fe31ad56a486685374f00266c57bddda84aa8c43a25d30872b80f9e95af2a768c1e60453bae6240016b21a869248909da9f0924ffd87fd832bb764912d4f43d181705de8ca1a2a481792d2291507d0e01c8f7f84dc11a50244706d80e9db7a41358f59a99e1dde5fad2927577ee2ca38f5a4b87f83e53074ed75108a64a2b36bcbfe691ff344b6aa842e2d51c34fbc681037d43eea5524eb137cc4b1760128f62595518ade781d8c66c3883a1695957181c938333432ab3addf2bc436a1ddc2349a691303f369ba3277bd779b69fcf2f6db9bf08fba450fee27ac12e800dc21b57e3b681767bc05af63e3b2903f8df4f6cd2973253b84377e924df7477b7d3e89ea771f8422407c6193a7e819faf6e66188049757ac3a97659e1278ee4549ca724eee55e28bb5a027f749dd4311b9e6da889c94181e1c3431f4ad43c088f5d01cf55cad087c58fd6cd69b52140a47bc48775bdf5f0abd664751a9f468140a8f17c88c87bf9cdfc1086d5f5454c9c5b4715c34c6f70d6cdd966c96793d79e4046dabb17fde85ba580ca714daceded003b80f3572936d429991a21d4aacfc0c87f12de11aa686ce93603fff754be4b09a9c6d14635b05abee7f5da033b5f7e8319a952c5cec3ada312f4fa9de7ed93cbb8d1065fe56cc60ab015afad3231e8fa36ed37e3cb8652a2d93c0ebd9bb36968b52d151c637f66e786c83189d35ee22f7c9e2ba93fbb7cd96c93204b2def838c562966fbd74b2c55cc709e0a701bfe67dd13e00ac20dd62b296b114d33b3a75daa8ec924eb0a2e6248be7888749d9051741b788d4555d762fc3e89e78f101041884f5c8da31cb815c26120e9cc6a4158e1b7152d7962e31bf216d2345d733ba038ba4694d64b206b5ba97dfe3dfeaeec8aea758c0e9d6f40284d97bed04e90b573c7f47a39bb0b36d440bb4f50709f066593a4dd6fab150233feb24f0474ea980b6257280b10375a33ab73859e48662b6ff33435ea459b3490079f4613404724d821168dbce25f73c1724e868ea72d3539045540b29d96f4dde499fcacd6aa72038b2de70c54a4f85accd48e45c2f9c103420584df5cce6985ac51894cd6aeb1ef6afc000fab4a421efb44b5ab104801ff62d2b10c45333ab6e5e676688330075341e1667b2ae19cbe1ab249b717c33b5018c0f3fb3b829e13a25355a0445b22e52096947d2f4aab7fddddbc3d549dcb427f9815fdf5b7ca35a423f4a7838b82cb395d9c1edbbec9aafc370477de6fe288c797f1e0a3f61d947c28f1a32365367b94370a559373ad3f8163b9d2ae665279ecd52b044ef2fbbb9a4eb5f6c501497e6a353fe9ccf79c09c54170343b7df7203d957ea54d3313c057a71b952ca13cc0544eb4dcbe9353d4aa5e8371a12183c96877187cf77f5fa074534ef70d2a8b9100c544814f2e1f7147d0e9c745a8484748e44d0351c4ecf7ee7d52a5f49a30a69a7f8a779ea3b4ff2ed27f11afbae8cafec7297daa3e5e9702f42c86b147cdab0eed289207f5bd6604e12edefbcbb4b7ef231e241519ce5d6d7e394bb7508d22b15b86262f79aaa9229d866fd87ef2b37e9dd9278929c975df8e3d761012a12a4fe700b3c0ef462f4df24e4d82e8b2c6b812f2cf5798b37abf63bd1e8509e3e4362139489e85ee0a41c1efede1951bf67c1e831e9b31bc339af2ef9c493a74f0864275b3686cbdd402bc07cee192ab63d3a0bbe47891a62c3c17c3be31b80041d38962fbc888d25f556bb1724f4d9a88d1290ffefb7516664b4f265ad97536a55a7b7a388e7a91f887bb568f6420ccafa45a43e2e04cc98e1a57335991e4c022594f547f09ac6ffd69de5d7e3c4a69af4bb04c88a330bba684ac27608d1214ddcd2304ddff297291cc18a55ea0fa7f752a8846a7057900ca06b36a941250dbf7332354e2ce7e67418c475c61cf784ff96bd76e32479d4d4a2db2e9afec09c88a93cd6d7a49fdb30fd68fbcaf7d5c5261e40fc0ab87556b877292d47743b504f150e98319ac1accf52ce1a45f8129e08ef555139c237f0bff5e4a214062b1c23793fc5043a53bf931150fefad07848466efbe5bee8010980d8d2f5e88eed546aae5f3e2f29dcb6e7133138bbb8850328fd2830bdbddc0c3a53fb347aa9be88600e4c2f4fb882729a49ec1bf18ce09cb5b70d56ab8ca4577153b5406815a13524e0853cafcc17b27b5fdc025f033ba7f5792c5e3b355cb64ba6246d795bb79dd6465ac64a42f82fae44f7199cbfcbf635fb0e70a0202400b98b8d29108a7d76eb7cec79b7df2e0be5acdbddbb171f021bdd2f569c763a65a218ebcdd84143ad2f2f34559b654e3130e50c2dacbd9c6ec8c07be3d8b553c587d5298bcf3331ad7af2983593e03542f5071e76d6965936ef7a179cf6e923506fe25c1d2daa7efd71ea4de648adb0a55d88ad02323f2713c3256076a283e0668a54af4186b2f775e1e2093e9bc49a089cec797a91123aee8972c3940cd56f3dbf6fce90c18aa654883339835cd1c82068f89556122871ddadb2f815f88e1e3564ed5a06bcd2af954000bdd8a1cb140ffdc78659e01f8a00ab4c3c0b1b3e873fda9f70ca1dad4075ea5462499c68e7fa807dcfbfe24b39740ffe78548bbb93861841f9d0b33b6745a7b34ea663c4a36ffa904800042c98f5243f699e73d384511c7251bc3852f848874356e23661585cbb874550ca2419eee13544669423fbb0db1889dd614b08f962226ea9d8fba066e99bb5a617871c4522ac39fb2b30d1439428f87e36d16f2d52da560daba788b5358918f538370f70bf92b2bc0633b342b52a0e7315f1be14c810b3e31ba2f9743f79e0345635ffb1cfba729e61de17cae434d6e2cd73a8fd5498fa70ec33037f6c3dc3f7d67037195156eda952428a21119e79c55dc18f933fec600696cfed1500d39515ca567b79c828dc29c5550df4ee9957e9c79a0d1a4c9e11c1d71f339ea85df6f0b68018d272a62de597c69b61bd67094f06e5999b5bbb513abc69a2c5a8d3e5f4ca3a418741f0b5c6fb98d6a8689921bebcfc0e5dd925c1e2df1e0bc4adbe44ddb86ad1ab9fdc26afc63dcf58329549db3ebef064b812b003334ea2ad72482d6b57f235bd803a76f1e1385fb605b57b5a93629246c235be934aafd4cdf842ac0c904ab2c745af957d52f8937357612ae0e0b641c1aa9906e5c1a03915d704ea84d288b518358299f7933fca454879ab022f708f3b0a85a7abc6fb2c09d0cd8fe8e7efe473cbdc5179b99b0a27dc97d84b94c8f4155591e663de7639cdf5252f4fcd4e05492468dcc0ba736e006ef05d22413adf73f6af8e114169941a1c17caf91f3b339679aa69caf61a44b948d7d07e4db1cef5c0fadcafa430dbe417a12e85e60fbc06cb96a3732e708475506c0b22d46b70b87d3f6c4787b22ab2fe6b135681ec9a7ded21dda83f143471557700df8d88afc47e0300966c82864ba49dd077d5212ec78c62a6488c63779c107276cd3d6f0b20a783c51c5b27b55adbd2801ac6756f981eb1902fdc9eb6fc73683a950a5f9df282fb3b395ca2917080aa9c75b05896f4935e3d4cfe682c1f5c251a056fb77e83db149c0923d040f1043934a6a7594383e5bb3e0a8eb7942cd1ccf39bebc88b1143421def4ab3950d2796209cf79e39b7a390690fd008ad8479dcba7b4f7f1259bb6bb6b9f4d8ca3908da70c9ef7a2ba3f4270bedc5d17da97e11e3988416fdaa46eb0e49d2e2a8d3d4d55a9261b0c689a728fe1f1f5c4a5526a4aecb6fe746d45c10d0b0806e0f7cc3cd6f11c1371faaa861da03358f66d286e79980e6a31a527c7c388722be4fcff058ae239af0b48df4dbe2513291d0602be4ce0e78b4b6a78a35d00ff5fd60a6668503188a2e66c6667ea504734f38a8958022ad8fc34be2bac8239a33239f9750ff6980e08795f8352be708f9a532764ab019f6de4a102d1a86ac1552a16c1616a5500d84b6aff9070311a8df127f7657fb09b4d286e872d002c5f71bc58b39936f6a61ab7154756ce429d1cae3ec60fd576b22cefa7ed0a8f2c6f4a89d7547572de3baaa9a705312d794d0af79f7faf14439cecfd4528b66e651633dd27cd05953b6fe5c4578a5ad1343c46fadb4a1dae5b698a49d37d8506509f5f42c04db7ba4b8b58d3acbf368edd563e6c14ca7dc68307bfbef1ceee9d3183c1f02202ac8c9feba3437333c0ec5d73ef298c0245cbce2ccdbc5e63f3150bdb1f6acfdbf8b4fa570ab5ecf3224c1291ca1f74f8a4e2795779a17941dab1b2b61190ef87bde7e25dc5f0bfc261ac6dc10b4ad610fa86655fb75bfb43c788495b845b28413622d47344aa469d44212ab303909aac13f2e46f5583e694941bef375bd6c2143aab81b70952b97d8abf6eb8312502af1f9d3849c2b9ef95f62ff60c32145d6313b36478743974b7210b9813a4a2a157383963f55d26e72036b3f23130a84915bc57e3de9579f48b4474d5d1cc05520b9764549f5ecd936df574df9d67edc37bcbf46903d01ff7e630822d6532ab2fb1d53a7c0d16f85c999a59a023c156d24b5ed7d907a4c25f86779b81282ad734cc1a3fa1955bd4c629cfea6517c2389e086c4e8b71dc4ea0dbb031f47839b38a02c09c45ed83957664dfeb1e3e990292c8b648153d371181be5df1245c13f968b3ed4829e2cb56b8e2ba350eed642c0172da3c1e1fcfce24dd21457d06336827b98a6eb2534369a0425503c516b850a83fe92de255798117abcac62f30602ec3c1c80181a513e16e39817c302b3d7d6677f91aa10eaf7f317807f501f62562d96d0b1fe115e227093fc5be70340c32ea8afa89c2ac8be35f61f603f332396a003d3f6de791614fd82b22f3deb9359590829a5efc45afbef6636ca75e8cb1335bb8af72258a70760e672476529b5b0ea1afdf0276fdec5c715e44d7ef3699fc6d0b4ed00271409b08daea9f99d2cc6660a336f0e1cc7ee57baa5a1f8b92d5a05701fe1c51d8b5676c4d506add7f3098b850cf836e3f6fbbbdc009c3f759118d2efb61dac30e2fb671a9327a908a535eb39f17d581f0f2cc4cb66accbb2bbadf2da453e6c0102950d588ef99642154c34ea1a5f8b38ddcaf78f75be155af8bd8928f55e18d7b18dfe1cb468075cc81433d2e7219ee7a73c82d9768578ac6833eaf4e6b25a13f58e3f8ae4bf4e3a02c47f305845c786cf52f8b493bf63718360c20841e15e26930450a912b6eb64bcf25f9d2f2b4ddd6b38070128aede392cf916485f7fc6d87e07155695b0628e0b853792edaa9d39731bd48a120bb96e762c2b4416dced484aee3986d9c7c8202c32bf49cbf4f42eb9275c5f470e1de2ce6e1df55598509ab255737f5e4b2ba1546d58647fcf5dfe2a4df5ceb12c136d2ebdc89e3f2974ccb816cfaf0804ca1bdcb6a23067d4fa0a538dffa30d9f9007d368fcea692ce1d2cc1ffb0bff141df2ce90faf54a500e35f5aad731a74b3b4628c39a686d65534a9e103755f50c264fa275d68db14a369b25d3604669978fcc0923b36cc2ca807442aaa93657639a67a96c583c2604ebc9dadd88f5f9d22a58c4c8cf47a0dc468566776356b746229f50ade1535fcf9fbf99cf7d22c935b31300bd673b9919dca8b94909d61b69886004956b252afe97c2ac4f4c6e4256fd6b2f160849502960aec0d96a441d8cce57669fa434d3fe5105eaf7a7abe67a1f729d77d6d05a665af6e4c4a5404076675bf4db9d5c7dd4fe227f286b0756eec7a1a0985b548f9158c0ab3ea5a8cc2aa6634b00cb668da2cb6b0beb809c6888b2f82f3b36ea9e1db24ab8f91587df40a5ae10fa0205c048e0df39601b9a9d8446f1266c20a060b137b4c0e97e2e814e9cb780774b7fbfeaf84b2ff0c96dd3b79c1844e6aaa973c001e36f6fa9d60cc00319a9483dc09bc456e37ab71ac73864494b1f892734499bf0f86c44e4153e758f1ebf1ee54eac022e010ac6c1d1d08f1f4201d1be83b3a27e82b776222db4c27f63986eead3067eeb2433d8c8bc16c41418cdc1d7b7e488cd1fc5e43ab0e79611cc81b196d76e12e8ea7b6384cd14b63504ea516cb08e8f2c663bd8f90b693449495722fc62aa0f90f58ac3fa97dba1bf8655d3e56d963499cff29672cd6dff01499698f3f477eeb75c469741c2557276e2afa4144b490c44da53375dba0a6394bbf5bd0fe24e380bd77749b6b22ae7b06b79dd8584ab419c49a3109f8d29172630d99f482fa488cd28e0694f3fc13efe781eb9d8bcb87efad016a14cee987086eaa6c42a38d0becffa8baab3326dd58c81a73f110202498e333391dfd4990aa6055c46e47a1cb484565416af2a64dfe87f81270155e7fdbcf3dd693422161afcf6f77eb01ff0ba7a048f8db3b8f3afb772af5adeabc06aceee430bd520b6cd20b27e3f5d12f9302b25ccaf88dae804936ba9c099bcfa5c1c979402da67bf7e672a3c23813d23d506eb2e668e622f50b22918f12acb9fbe627e6c271add31e57d3380563b4e80754970c054cc61611c2d59ec9ec44a4ac9e4ca168233b14040369f2f065ef2d452517b2cec49cd221930c3d32b68b0de51110f02032a0fbe9dfd23ad4adef9f48f3364b6cfc35d648ce609a8e478b4dac4121b9b9af275a8c5366cf97e0e04311946f72f0f28e50fbb2e1a0e2bc9e3895f74b16db0801c571def33409bcb9a324baa7deb8ce4276625ad80de2d1f5a82b96468b5874fcc60c958464c598f3c0232dff76c5b680f1fca7de8c47a381cc65615d403e591acf3611eb419f762368c6fba52d3f3111fe2bb8021bd2808abbbde887ccb98fc6d7d2673de4fbbc3f20900c48fe2e7489afd57b2bc756802add7c7b5be7040ed72b630af2a3d9bdfb553b3f5645c0edde8963bbc34c77d0861063ff0e663aa43672d794e67dbcf85212db5e0563201d0f1af8c3e32f0d1f97beb23dfcda64d5d2a77d77adc09f67e0c9777e75673266e829177f9b27a6a9b28dfa07a23d5bf0b2753c2eb448ae822d069ff7d8ccc799b9a036cf14023307385f293eff2981eb3303d98ef8bbb376384c451e86bce955c3562dd29afd8a3333d71dcad7dce87fd53dc43e76c95dccbbf7efb977add9625442c2a5a628449882b3cddff72a677ccb368d0703d54f5eff8f6c96b1260ff5c492082e86aff8fc67c0228d309381c36e77506179db07d9f5a99f3815120292abfca42d034e188cfea9c67702f91541cc91190b4d43e7e4afd003ddccc389e5a9ba14abf680de876c53f7216bee2e421de3f05fe48c8a0100fe66934026624227c639eadcd7f4b1ca402a9fb4dc5c0623d608d55bf38179977a7dcb4d54f7154b51ebf5d3a2b84fc6c360ce4f22249ff933376de2d7d9a0e50465ba863603f140dde55f4cbca49ce6bf4f96270c921163e2e29f8aaeda40918264c2eaa72a787be431d927be1c1adbbac2afd815fff5691127e6a28d1b13942f9a3005f3319f273a6c72c07efdba405aa0d0cb59eb2c672ca4d60bbd190a7c6757c54afbbe04f866879531be7d35f141f95b677e001c05c56de6b567730f2db76c8c3b1c5d05672d8b375ca4f5b15110d106a9d9f07fc7607a0e910af17a1a17e80a74d51a3000a0358f9bc479a9cf7ca12f14d9f0b31c49b646fe69c8991ef83be6d63f21d6ea5826684123f2482fcd7fbf2dd0fc70942e3d91d23ae3d2f7d5d12a3d37e7135e1d388054ba631f75e89069bd9c13a3b2c1c190841fa136f0ead3ade96f6c09eda5bb9cb9ade411799ee969f91e3047bca475ba29cc0aa3a9b36f9c8cd23886ef5288a102bfeb15097ae2a7fc6d787999e31620a238db15ec9127f0deca557070195ec0fa7952fa2808b51ceb412779978fdb81e97f5e82d72b49116c070ea4656e45f38c11197a5038443b96eb52dbab23e9140c5ec3b777b94348ddc34bb5f6cd6af6da760b8a8397f4128e0104953bba06f0a2d9436f59767d1c2f74f718e79758cf49076f2f8a31815788cfb98821c00716b8ddbd4ecd0211ef6bfb93756a04d8b3a57ded863ef61470c2a74e6aa7230fffc0c450c207832420d4911676c9b28a3b7c3f7ab03f28f7adf91ca9a0be21b47e6d7f6140b111406b83606b5921974658a95f0e6dc8d2956e5fa3a7d448579c810c8a8f96faa6a60ebf473ac977b01ce5df020d84d05731a7b3f02b2ba95eeb1bcb835b8174cf116470b08615f869cee5125adbc2643ac065afa635fad23444ace6e5ab425fefcb956b2df75029bd911bd868ea8a071ae9b46696d8939d6a7d39419b85ec74608466a1a06c4fff70a9f73b43a73bd1240c344dd055b9597deed950f6c4ae476061825313b59d737c510557ad1df2d84b00eecf205c150478d5cbf560247902a03a3a571834aa58f6ee3fff488150f660f37df91e91f05f24ba14df3d6eac59a9f244dc9790a9acd386e7998fbbe3434abe183ceefb8b9fb3c44ed047bf8ee6c02b3107ae709f3c56003d314e873694461f7fdf267309a795f423532d54cc4bbd7ef7d713fafbcf1395db2ad6afa90ffcfb0ffdfe3024267db0ae18cfa8c54b350960a63f5340bb174f9196f3814af04490f0443139e95827bbc9d034e793f852a0eb1d24c32ff6e34ef3832957bbab65ee3fd65d58314c137f2579198dc1909fdb103e72ef8f7bc5597515aa4e8351c1f1e74a0697dbd50d45146cd62ff4ea5d0db27bc3c504ba3b699717f8d68f7a0283192db9dd05e4da21a53500d8b88a3caa160195651f7063266c214a44a1473aebdf9f4691a29ef47885c0160984163861b3e0b340f002d321e5731ae6f9b38df40eef94e0a8c432f1fb8e2f97619b70b9025d7a1f8fa67cb7b46ea42461d2c083f4c2b9ff8da719387e7cf9a61242b7d5b39f3e56d94bd2fecbcaff7be19feedd4bc6763b01cdfc3f6abbd01d329ec307b94dc692650e6accf5342c2cc93365b71d65386b78327423d431bef3e1f1302a305aa4d256fcd00b16aaf48aa23917643d2dea04aafb7b5547b673ac2ae66b86b0f0d066a14588cfffb80894c2a467bcf86125c5bdaa3eb45ea171909fcb821ad4a4ff73b0927db5bd39a744c9c0254b9bd09459ce4a4e1454d7ecd58f3e720835f46baae184e8675df5d131774985f765cf6478e9dd300c8a4300de0deeaa77023b3e7022182a65c5408f42e3ddec32c59e4d8df663c960a3ffad22cfde47878a3ca74aad31836e12a68ffce8b5dff6f897c1a6ec1e103b887c0e0ee82e8e2e92aa14b84f92320634d4bc6ddc2e48f111f633119ca3bf789731d1cab23f890ba4c7eaf6a38fcc126b0e00874ff4054b1f17cfb838fe0d1d9b031a69f006291d1f0fff3d9de79f31aece0c799eb1e2daef67f5a6c0bee037569c4a5ecb29a1966bfd92856440537c96f146666bf4a3b145aa64d0e55fc95165f00e4f3b452157e474c5846a23b21f4c581967f4521a85efcdfb6327e8e7b265185be6368ccb2482024da43bcfb52f80fadd52b757f3d98054e4d788a106abce529126693121d6e0b690c988632baa6a02a1ae90846b2656b6fbae4ca15970d201eed9aa735c3543fedbc2db3722408f465751aef5273098f35ec7e16586efbcff3edd3bf2c4fb420396ceb04900394e4a592d26bec90ee320c43c3fb98fc219c7712efa0f3e547ca9313c0fb8d746b08c189a224acd16e51cf5d84ca2c41945c5039b1a6799af0f42847bd0b135fde7269fbed3d701cc3908bb04e64cf691299608e72ec733b1ae656a65239d8dfaf8557a30eea67deb5e86e8d14a04899fd6c5a430e732b1282e2aa9ead83ca5dfcd4d9d5335daad5778cef3466bf005fd86118db030111c5443483be65e34c3f559b6c0c75caed2424779b13d5de67a7f60b2320b4f30ca7c8be6a0665ba2f6e997ccf10b690d58237ed6c1b5126c2d37a0dde9be1cecd83c1e670218445fec1195b423daf4b05c2d9def35fec872d79a5a08a391a87efc0ed27e04feeca2d878d4163ab50c245dc5da16a8f537bd563b748f8b780c477f75f14b8006946d5be1fd187d3c34174fd8ce394eb203e6174a443df3a7690770e81b54ff9568d79492e02b6e4ef201c510c7f54a8b9010f578ca646b7e389a4390fbfd9c52c388ded10e9084299b4e710a378ef333061be2d2aa5fb264b1e358a1adf8f32f5da00518d115f0045b8bbb07283c82ff356e87b38c66055fa821fb8eaf1ec2a2a1e51a830f8ae4e6b4561bb7c77d7db3f7442afd7823a8a2e9e9dc00b068ed1b78546e390af17a67735f984a7f326bbb03006095a041d87fd70e02407db58a41e6fbecbfced7ba1d9cca0e980cc52b32065a854d9985e355ed484aaf75a44557ae5cfb155a2029339edd7fd85cd7b0db63481277f6e21fab4dd66ed95f9dd37788d8296d7fd3efadeacdb7dbf5e4d5997732c11e4292584147c7fc2030a8de044cce533122a6893fb4313e04d829a83f5200d80077df0197b3633bbf14dc4e6f2945cafa49fda21d3a360b0c3453fc00c45f9e66f74e381a69e73b8d64cf7061cea621331f17c48775609bb41b8efebdb5cc1762b4df252264683268f00686c8e5df2d05ff3e1171c966b8e165f5dfe2757c8774cef3cbd8e1da4bf71af472c151eedb1be4bee739ffbd8f9f7335f5401e5ed10129ad7f8ed79cc44a9b79a0cbef2bed7922cd6db63a4b59d703e4666c563e0aaa1ebfca9874722aadae9b801fdbeec5eb8a9f1ad9743aeaeb02151af4a0fffe7c5549b44c3afd17eff93e81b1965ae2c86f731fede33d2bb762d4f1042629960d049574eb3025be230acdf28ed2d99de6ace0bb136dd16622aaeb93d94a519cec50ad7897326aa0e542a838d26ac6e5f998239be6ef62cf9b7736b6c2703869791089ec759efbd02e5ffc91f19d738e256bd471d55d88cd7c15a8555a62b5d78debdeea227ed75e3829ae8686419ac369feba2276ebe7113cd5dc3f40fb0fd0bc1d96249bc1a67234d483ea03775fe8db7fc88344cc9528fc9953ac9ee0da2506ed5a5f1b062b66ddcc98b791f918dde26515fa7f15f752f02e0c5ae01ee23fad12f7e3febbf00cbacdd0f586fbfab72153209c471e90bfc5999a9d0e344a81670c2186b00b0b4c775487470c923a9437aef006d0f1cce55ce4a6127bbfdfc6754285ce987e79c3dda8cbf4aa69cb8696c507d07e0798f919122c92fd9da270d118d2617029b9d764ac5fe04d9bd1a547994060682952b9bd906f03087dd36d473e9c31903cca4dd43dff28fb820dd1fc1f696d9fe09bcf7d9bfa8cee81a85616dfd9a77c297c5862a19884bbe0abdba78b3d1d5c5d845ae9660993abb38d0fe3ed7633d0631831f42a89cb91bf34914b736092c2176b35536dc74cc10db825ffc0cce4935061a99c16f8ef83baba672ce36d7f532fca14fc12486ebc26c2b29153a8c7f12640ff8376a31f8201afcd723f73389dfcf016cd1ebeaafdf4fc3f59222b276d5cc385e4336c137950c135c4ac0666918b7cedd64e6046b2dc7d751837d5190cee2f729fa48c8c203832cf56277d0e6820985590ae6af6b557c53d6ba7527348539787c01e188daa0ce05c7e2ac787f9499fe29e7048b503a6f7809c87232c01852e3e1625d56bdb49e5bab69bda395d8e3ce9a31375fe24423391227b531a91d15c1062a0caff594165bc9c1564d7dcb4fec9f24072191aba67a93b6f1e62da13e77f8ccc5d1d1db37e86f35af955522a6f84c0f9ed6c88a4173140bc484cba822b7aecadf0068369cf63a8f303d1cd58e18f9fefbc410da210ae5923975619f7bedd9b4b821223fa7878d9620786dcab8addab09eddd7c39667eb824f8551922a87e86315c46ec9f4a76c54693b5a982ca70e366ff3a844d994c2a0344c4e41571bd26e0feedc0116af52b0e6488954cbbf0cb625787a84dec996a1d3a8fef289b39de5a7a51790c80a5ebe852f70d1e3b78b0cea812c9102fb4538fbb36d4b28c1caf0c898ba223cac7c90152cf51cac5495352e9dfe48423169d0c90776a3bad8e58c6d057469798fbedc3ac8d552ec302920e5667ab402e874d32a07f0f9c4b19a61a478de5134ca60b5d9413125b4d55e30f95d522dae4374a926f85be0a91936e2ba94d4a69fabe1e454f8e5e34c3a1b2f9fc184dce4cc32d39b0a4ccd913bb19fb7ac4c352fbb0ea69797eb86df738900838bfb98c23e21af57f86abecded5eecf382b0dda9b2086f5034c067ac26ceef79591385e97b0feedd0fe25b7447bcec8d21ffb2f435619efd4112d328bff5a1012e78f26726d867d6e62a704e39f6ae21abad411bc5b0d38af81b4b7d8f638f8a5f8a4f387c758965a07511cb528a68cdedc748b521dba44c5cfae0c5e1f8ed2cb62ed1a0425f48de2127cae9fe0aecc46463f8341ea8775d187fc14a10dacc443a142edeb928754b0c04abaf595451798a9850d947f323bf3bbf56120b10d63d2c422d26ae8ba5ec570582cf441a9e5f67c4227e2b7b49004d696f6238a18706bdb28f96f4e35146ed27fa73b3be55d2ee327e24fdb52f2f055ccb4340ec041ebc9eba9d3c567cdb302269f18f319edf36a035ed6e1c63c10462168b513e142669a29cdc8b0635c6c245dcd11c52cc8a63028a1d4545410b50afbb1c34a6a704f06bf9b4ce23a1dd209909ec6f71ad82c253eb6f0fe2eeda6339b6c0f76ad21928448266bc1acb74b1f9891640c6153a09cd352adec8827e30f256fcf831ba856cd1e82bd5aa0f58bda94f4102529f8d5dcdb19eb96d607e18a83b9da202d61c67c05d1c685e70791c1ff1b4a9b0891d3d5a8aa0f405deadfb94daf576365015c89ef5fe7d499995e440274efbe02c31948fbfc2273aae575b9ef2e002a514d36a265e24dbcab51f844c1c8a8468313b85fa4c224e983fc85fd2f5adf83a5c6854fd3a8318ba1e94a85ccc86739e7af9c001c6dfb23248dc723898715e130f407dd264fd4064aff099cda030eeb3e51327de868816c4779c50b726903d4ef35a9fe7fc78bc0bf5f04ead1fbc080ace304598c08da4cc96ce7844d391258399381a9b380b99498550b98eb9d86a3738966f35ae796ff8d348a0a7eb6e91ed5d6f6abc4d3d162ebf3223284f60c0d86589ce75640c1646abb5bec4b28396fecddda9cc7b596037138fd027c6bffd7d0a01f1efe20bdcc7e9663164d69952da12c52cf677b9fcfcaef30d85ce2b03bcf5f67d90b42defbb11174cc09359c9cca362fbcf9b91d797235f3829fac9224f5c7a6dd0293ca5094f466876a7f84b3ada47936745db5af32594e4f9065110aacc640c812e62388f0435dac54712ab83f462060d03445f951bbec3ea07a695e35a27fc5cbfeb04720b92c96b57859ab8f309dc0bdcdad6a8472c9b6b319f89fbd986063352401db972b788763109558c4a2da43960f4ee3cf1fd675da16d83fc81be192546c1b873818cd7387e1ac7e17df7cfcee38e01e127c95f9de6b26493158e44b18ad226774a7374259927daa733d3a81e33af6655c9ce826a11b90ab3630162315d95d6fca704aa46a670288647bdbe81fad5f066e78a92737ab56ca7a4d8b12796d644fe4a4f574f3f0b2b869de8f5100976db62a0eebabd407867da9ab32c545c76cfc549de472de5541c2a3f96a8ce7cc09a665a970731d2e8e13fa8ac739bab0e1d844831abf2fcdcf89db3618b121da1c313bc55e95d6ea514b03ec7f97ab91eb528b660a80c12dde57d9dddc8639574f527d484be6d31cce2e9f45b2019d4250a6c1db17ceece5db960a5c776f3e8552f95cd176f2de186d82a7bc2d8ee5878eb511990795a8ec85482f0ddfdb469e550e6266b838c35aa39c02aab5df1e35a4ca388384b13c69a5e0d038b5e3f0f21fd63444c3661b1990d707eaa2d93b21656701d2c7b53da01a0902d7186d284052595166563914b1f580324315b58262b891e221d228e7c66d7ae53703d5a8ac680324ddd706fabd6e6be0db15d9ac130983995c5d4a3a04fa0c5a931a71d87abebdf3b681810bf05373992e5fb2fe5cb1d8ce9f5c1f563c793a6289f167c5dd20dbd22b2381e6c545679016c908aaa4a6b87dfd92f52716fcb1adb6595bf1391ea738afa1e194ffc2b532cb00f9f601b5f75224c70be964c727d57a42e3fb6076a4f03375e136a75d7d11b3f1db3610beb21ed61dea38b2fe942477c1538921ddf7b28fcda6486e6738017df0afe2adb49363aa4017461883e95435c62dfff96a3170910ae35819bc71d6b31073292f6afaeae00d4bb2921e7c7d14b8f6d94dc6cb77ce5edb1ad1ba500481d58425ae99a8550d3fd774a2920d96a2ceceda0b005b16c8bd90dcd42b3c13e2287ec1cfaae429a93717c0195b1a7fe62b40a4906abf2b3ef0259a01639aabd8443ff723948edbbd4b1548d293dc4ee5faa2f8b67fecf55421ea0436342fd1a80c87db276cacfb3f3868832c68f6989ea502ebf16cf97090b62fc7fecd3779994d40b93f049671ea0be90d6540f385a9146069b6c6b077d0ff912e0acf0f7c1d0aa5a5e98bbf285becdf94521a85875016c503c69d5fb2650547262e57464df5c47f33e1200628306e355908dd84d953db8f690b69f6fb69c88c39d87a233a07e5e968a436da07a5851e7ef30e1bbdeb1e2ef4008348e9d421a1433cd4a0714d6b0ea842c0adde75a3e2094d97a05a44cac292488bfe6e0742feceda9bfd3a6bde69fccec824b911cc6a064ee3a12fd7c3eb7bcba33d98aa547bf523a4853cefeefb2b95476b55c9e4cb10086b4fb4cea5dafab23078b50244aa0f7009800332ffb89799ee11625b03661cd6465f590c35ddd9147dff53c9c420b20f7bd29672e0c2ba704eb2e6e5aa35150b9265312b5ab664b1b16bfcc23e3f61bbc2092ea5200509008804ebe8510f8df70d3354df988a0b09d6492ec4d17adf4914fcbe866159cf23c84bbdf069ba6c0e20c47d8ece9736dafb9ca45ce8aedfb444865c7e47c1f4f69c3b5bcb03bea78055b29af6f0580771018ab5f0631f6ea19018dbd0b6ebfb50965297145e3294cd0f005170c0ec5069ba4e6e02c512315934f8e8988ad63fa359a16b8c0bd247f463201c2c4a467091b0810a083c00fd3dbb2f008e835e16d1eb682b8de8b06b7cb05e10b5e360d95590e9e4a721b99ca7920a7280793d88882da08884d2add16c000a4c2524653aa0ab52f67d291dc6d852253488147a4076d8a2b5fc8538f1ba364b3f9db6d8a1794d6e1e3cb1ddbbe890fb1876df494d22c42661c5fc590f169070e30a8c57a521cb08d8037cb8c435194c61e0482acbe6214407265762226f76aa5cdaa554076c7bda41f31aa85b0ae4da81a9c9b46b5900675c8128754ffde33699c498e851aa144b4c2d1e53f5acf14d6931f8918fbb0c2cf2345647227aac2d4297dd05a3033a00e814b0f9eedf7c954641160a56176a8bf11cd8e7483df582c0fdadf69893d32da41591d5b0615f724857bfa0cf00c47a72d983ea770c32ec1eb51d7bcbfc6b7d3ff714e3e5c51a9d07c706f930cdcca3ffd169e67e7f37466127f324df7424742e1257da8b4f0d4d4fa470e9e310189c7d84409cf64316a39497e794aa21783285ec3691ceefbda5c7b781915ac6e9e7e2e8fb07a450b16bbedcf055edcdba3923aa7f47c350a3dfd69c25b6fba4cd248e0fa3331306740cd16450331e950770f7358f6b47e4320394bb15b4f33bf7331d654e51d9da408fa89c79f62abde5d67d7c5a3b606be951b45ef6a21afeaa4db3491975a61f9f8b74017ef9b22d436bac07b304db715ed4dd1dfb6444273c137f1ae9a7a5a81ec4dbacc280b7e3d9c6bf15586b46077945f373eb77f512b8aa68e9207af9dd0971d0468e3cbae66f06ec86714111b9a4a6874d81067e36c62bfe90fd365d9774976b84b9359e539c9d44fc7b2034ab39e84bafad4d508e76bd648e0913dbc29606e93f50bd05df8175ffeef6d76e6dc031b15ac229db558447ac96c999234f626ae92a452898488c0dd4b7697059d74dbe2a7055148fd8152de73724df325c27a013d6ec51ea785e89f79fb2d90156e5f7fee774a9d7eab082e392700196554268cef4abd3966b6e42ba00966e20f16153365476dbbfe5910b411d894b1ee529989db83447b95956e6dfea4509e57f6322a400f6186686fe0363a3e59cc12784760aff77ae16427b12bddaa8cb2f94bc382a334543c69b17bc9b0ea0acf51cde6fb162bf412d93c34470f6c32986ad29247e1e197a37635ad0963d24716bd6bad7576653e115b8a1813a592424b31132cda7edda7106b4f2f9338042e4024635f32b16ac3e18cf33c5a9a0c42a2ff4e54819cca4250d9b2b1fdb9a00c65f816e5ad20d0c4bb23b3d75a95c20f5252e55167e6c842ab640bc79596d8f9c38146cc07b011108a9f10eb985ca0389fa5d23ffbb690631046598bd39ae5b74c35054dae72c5f57604e4af654d3574bec5a7e16106a12b7a018fb4b206f3c9681be65d2628c2cb4a44cbd631ad0f9c25f84c1f291692028ac00be89770dfbe630f375640cbdd82dbb25ac1bc556ea61120584b7d5f49d04c44724ecd18f031fb1627864a1d8a73cbdfbdd0fc89bc73e34f5284e1d996dce338a823541d401f00c67325dd84c30e8a43b847390b5dec231f066143222ac0de15c05a0b845a2084c8c5e5e561993f9491f639a0a3ace2dea21b80db4974f0c67dca6d4d38102b73aeaf28f5796584d628a7fa9eff266bc35ed213b2d544132e8179f2d1f4094aef429b053bd621c8c8fee4d5185ba3af91feec82a5588056b02ab4883722a815de309b073c05d281e33fdcecde25d66934081ba238b70a6a0988a065594a9deffbc8131366276a971d33c6007e6e06ef2a2e3055f4a09a5abf36245064d50aad8ac18b8b668b1c629c3cbcf3cdb469c0c59f0f1b5668d7c836fa0a62050e8fce7a2b86e4cd6dba017b7dc9de456ddbadff5f9c4f2b3baa9f25268cea3a0961bec2594fac912349dfa602fa4aa46bf5c38c3110769bbde0550ff477d30e85d79f6fde6f3c4d480e49faf9e0661b92f5d22a30a114f2c94f18e4ae75007fdbdc917f98931d866812d0c98e0f1a429fe32d84c38a6404cdd5835b3bb8c659238927c7994971144a4742f9f766ad78bce31966b5d96aa929d595fc94e0c2fac36cd8173cde096f86205826f178d35d97aa42da7e8d00f111392f5d88b763d0db4f1d733d3996023c94128edae4178d9c38da21384f3af39db8b9e1f585387e633f58a366484bba60394cd1b53180adfd427f4edf5a770a9f0f1504d10d141ad6e021161a0562be7090695051fbe7b30f8b1000afa9f9a6947a2499cf19f00d1240ec0076e3395de9c0d86bd13e9cfeaae506ca8d8a8052ff8f89ff952bee2777c873fa7bdad9d0b1835f04138bf6a6cccb3ac61dc6e1873d2176a4e1f4e2588716756568a3767eb8737b49516fb45c01419a21c1b329df3172d62dae2a5a991c8dbd4bd7dc1d639f1cd00c31d4aa65abbe9db0f4daf43a7876fbba005ed38cf2b29e87c4f288a6b1043d91a73e17008a0e4e969e2820a6c99c37ad2224210b381a5cdc5d1d4703380c118480a65569fc7d6d000265531256543aa4b2180b604d358ccbf30b5a66ec4a3ed09afa4b2c5b2791f22063cbde1ff2760f5eb7477555c1de3e4f4a4f79135866af9f5a1c4384faadd067f49c9e569ebbde6f4e9c56ce82c5c1cb4e5731a8e934b1fb926a9ac728a6468f2f645414eb066e6234d9a4a0d5dc5cd6c01abc4aeadfde3afb01bf63f5f320ed61f0c6834a94236480e1beabc7d29f4fadbd4813d06f33059adbcdca2c8fee5ecc93d37a2d91f89e00497042a286b7a7c77fd86254b9674a2108da236c32fa0674055f8cc7467f10be6dd3d32361b855021fadb28ae21667c51137ef3c3d718832ec61d92a16ee226531364d11407bc4f1aec106ade92ee2732ed85ffdddb2e16ed5e0fac5ad0374f43680136162677ce66299c1fd13f430b5b2158532c14b98c2fa3845794dd7153a1385fd9cc422e94f4a5c788cc064035470df0a9ba4ca4ffe273367386a9a0d53b189ff020fa4b397affb30ebcae2adb321927b2eed604da3f8c6942375518baffd38665759b0bbc767340a301a1811d30ccb4009f6e0aa4c5bb794441f2cf90ad917047f7567f4b383f387f78667b01cbddf427d2e7692babc2f8d68610bb2622cf5fa0f49f3d75a65977fc48f08c9655ce6b11289aa3147e2cbb70e08cd7972e125688bf639c7237f4b850e365e899291c6f9927cfa673a76ae111e11e0050806688d0f238b99fe6f33f7e08d5237b04662fd4c62e1b5cc8141689cb332b31ffb7f27d349e172354490197b3b286e61250dcdf8da72d635cb6dc7c756ac357c98b4db34b8733f6269b881736e5565ae0c983d0b8434f20fcd84bc6d21bf9692f949b457e000179f93bc2d8b5f89217885c3c987caaf337d2dabef38ce3d24f6566f5a516d81d2932524faf30015a61850270ef41ac63eb7f65ecd7182cb2f6619bd2a5e8c704da1ab18111146505bfc0a90ae08eaa22c234b9194a9373dc809276b6fa959fb729078231a0a0565e6b26997dcb968e65f0c82c4675d1eca8ca3bd9f6e60f4229d58b452f4601fcfee2fad705cb54f49571df8a6cb512fba86b59b5c7aa6661bd1992fc91af4f87d1216d72ec21f8197aa6eddf2b3de8adf48fc7b01d35ea120ca35b3cab4b1a71fd4976e664e8c234c5420ff7e152cfe6e8670b7bd0ded6d0c6fb63ce1ca38223c7ee66aa2789dc326b15a354446613d949561beee340983c96df2a63f1a97e21a543f6b62000c3ad1a1cc39034bafec193f7e4bcf6183089582598832f46ebcc272cf1a3f82ea816a3f587c8b08a0d7be2cf15c17acadbe4cdfef5eb08fbddff5e3945cec410f97e9c6d046de10e37947dd55c0ef1c6208760aad8fdfd4d553d525e011399f0b665967d47cf878d64320f63fb98d9a997a72d153096a0cbb59a7a14d531392dd4e185ecb5e55cdb058dd7502943aafcedab84b336cbd3f58ffed6136dcffa45208f9c6c6024393b8aac4bb7aee8887e7190ee4a0ea83fbc7fd68de93977e4da7a223293c23a2ce222bd977319bc074ebdbbd62da4e39a79ff5789253285482b3c7a865214a040d1af720d58955c1bd68556f876df994ef067f4a17fedbba0cd7b841ab6d9cee6df36d1fe686afe17939285d561151d6903385be4442b656d3e55f18674214d74c449773ba30890b23ea5b34e0205ca43107bfa0422f3768129f7886b165dab1a6c82ffa1f9b76f79711af2cd7aff608f4cdf978a1a20eb39a817ed149344b9792862d05cdfa3c099d726f2b92e8b6868743412259d4ba107113f46811acbee28bcb8dced3ba187f25484d16e486983dacb7386736f411218d069f01a0b2c720fb939c296617cb5e2222fb86a79ec6b2be225b632eb441b3d86971c656f74af339eb36906dbd92085183e16c8743bbce80a2702e3298af8b4cd5e695c0e0ea1ced172ff4ee9c30d69684f746d40992b1b60b51df8af79aba111f965e102769d49012758be5f4864844bea97d190cff0905d78393f989c57643fd6ccad488ef311772d0b1905f33ad020d557d4e5dbaaf7c21bfe1b819d54fa7819b0d532938a03ca09c48b071367646621867160b1efc81017f7e926a4be2d290c32d9e60af047020fbc52a11203e471f55effe251193d6a2dc336e46e771b301f479a901588d81ca64a176bf03db50e3b3ef711b1814a5fa28d45758da5550e707e9f1433d632f1bce9e90055ea4b0a3fc90999cdce4d7dc517e47c8280146aa268006b0522b73be21ddd4b1d702ee882115d843bf73fe3432868e8ffe11be02f7d2b2771b36147ea644d0b5da75e3601502898408d97e3dfb75fc35e6f6d403d0434e924634f462aa16b811bccd24bf6dce1aed87767c7545c51f8048060ab335ad34f35aad21cffd8669937ad5431799efca307840cc7c6998f71ea452475927b574ada5cd824edf261de11542216105df44f64a06e8c479d7d5d75950ef3d1749d33cdf97d8dfd3ac27a64a0463bbfeaf5bb4e4bc0e82f447b50e70956f7f75b5fdd28ac5fbf3565943c927eced29ce890389be21c0b7e85ec5478eac64b689e60e2cfae54c0ae24df65ae5df594e54176be49e9e7b1c50bc738b19c4b3a5ac303a89fc253a13f8806b84369a6cd418a74440213dea6089c4d7b309da7c20e02e04f28fdd90164c6027b20d239cf847d8161a542b778063e6a75215344c83b127f8a5c45d1120bea6fbc3cf85903b3b07ccbaeba6d0b27b9554316fcb9925b0e45a6be3cb43cd1a5be365cfd75fc968ae7b47397c862e32a8d4db054f405f93f9787b363d9502c0ce397bccdfd4ad08f7a897c53273d00122d551173111cebae7b5cfb921a524ae27fec1f39e228d118274d36800aaf16e5945495310c6cd72ab442df19b36466530f67db9bfd8d5395914e12a63a33d51f7bd839fef0700a3734982a7ff3f9bf3ebd49c5374fb6181cabc3c1928691c5b5406bb30b4e5a4902b3933fe30ca4ed02e207d3012656fbc6d46cd3daeb3415c4a4a999ae6fcaaff2c8ce65275dd5f52a9ec6710e8ec1fd066eceddbedf276e5c7c83ddd9db170897cda4a3f65a82cbd9caa6c1e06cbec3fe53ddb71ff82017ed86f7efded20bfef2bf017d47fe25d16a97fb1dc4224a8dafab4bc199f6503ea12302a8c3b51e440c2b20e194827adae1f20766f1b6d49d8e664eebb53dfd79815ca5b97e801276addb99316ace0dbb61e17498215b87baf31853eea78ef0a3de37e272e6fdb4e8589e7be9ab6e6df2808ced61a66ec0a977577b531615767caa0b6464e65ac8395d74829a9364aca222ca12f812ba926065890632ea72b4cbac44ed0328d7f01d193b3f75c2ea4784ffaac2331cdfffdb0fb24134dcff6d32dbb7f5af5abd1c3bd0f1c22e8aaa06a3b3ceaed6010482cc10441f59b1374ad6dc8c47a609dfeec6b569d8ce138decc28baf7a52f85504fa13a3495600cd62f6b29ad0ed57cfb2e98c159ef0408d3742ccf441fffa00430fe0279cd5a49fdd9c552bbfde8c0dbe1dd5db487d6c8061332e17f735bfc3bb378ebd30cf0f4f9467446fdaf6a1e4e28dc3353406ce645d59f4b363c676799ae6ca110ead8558ea91a144980ae3baee5ba8ac6349d0cb3018c49d5c518a2368fb8eadc7282c009f1429d5f9babbc2b578cce1616c3eba1f7db14f6ca3ebd0de73c6b42af9f476cf535b6a84d54b2f7c16793e94b1f84abb72384808f364d404613d8d8dd5b87a1dad39594fba46c3dd482248f5df9711257325a60a2cb7e1d3475214d5462d4c9eb59fcc74719de1f627899977538a39ccb2bfadcfde36052b700ae10554729a69a6dde49ffd59397b0d8245bde67581e481e3233b35d228a1603cd00aaf1e3141eb965a41061d634b914369d826d692135069b04d30e2e778d7bcf34511cfc6bc6cce748ae27410caff53692f0d501e80ec5d3d4ce3e5304f2e273894ecfa7a13e9fe6e340b0200a35d6d22a51ff88a15b76860b6c852004e9e385d24f002e34f1f5529ed2ed8added18824975d87d758d1b10ad35f5d7dd667dc117f9b44e30c3cfe42c977281e300a0ce7f68eaeb867980113e0f1994ffe02dd19467a969f9d5d4bab5673783e0670f02964e5efb1e96d95977d9e417dea3fccc2241f7ce2c4f76b8b2ada3bc76de73f7f4f0133176ec55ded3e7de8e065d7d6b037c736d8d1020ef6cdfd294fad21dc024f0da62e8280cc2f9d46a038956f4576cb2af04b34e080f94beb4c2999a68301dfb2efb05f178a3cb45edfa8962c7c643098cebbcd51c80066d7fd6342b12a6840047173d8ab12d3f302843504189cc70f5d51ae234c3d6f6f9f19ec634bf14154161710eace9b102deb57b91f6a0d77d7aaeeb49b7d3848c8fe2df8bbfe8cad06aecad20ec3bc28a394b1a740cb4ba9c74eb40423eddb8cdeb823a915502f77b076dffdb1f824c4ab014f4ab7ecb9179a4c591f7efa24c74af21b9748eecfabfc00b42bd1da297f4607ae9186bdab1eb9c2298e48c735662b1fb601e0606fe598d93dc173fd53d43716369863aab58697b0dbd74e3e3ba5c4ccf0d3850236537f839a96c1027cb871ce72808e2592dd132c22b4ec7af153b1384a589bec8038cc1087cb2f5e65f5618c1240eaaa56d53e161f62def392572274c5dd2bb8e45f47e3a5837ae4a7431c09213fd2e131efb77d979eb44b39bc27daee37f5021d51c33f1bc8bef6a1f3ea4f6955ed3fd4576b6d87517e61eb67c8baeb0e6eec9df825aea765c9ab9e00a29d917e6a9a33e7e92e1c18d1ad5f249a77f32e573077c3b614cdb8ebad94c828f0b757ee3eb2ec80978fbd95f10dcee8950f557dcb283fb0880b27a7d5ce1c26f9fa0501118b7a7430afc015276284e4e742aafce1a274f0e55df190bc640c4ff69a5675d9e85df5afc25ffbf2ac7da79707f85bb92ee21429dd566c61f324e7ef26c9b1b92d8beafd975fa25d2bca704ea7f927c12acd896ff0aa2b5578bf30e898e6e68ab6b661a1a5178eee104621d31916b50bbc8d206908c0d8d9d2aa7b413c4dfc66c04c58b06f04876eecb4d983d33b5a9cf10a657fd8c3d7ba2a4277002424f0a5ca8a0cac331a1ce1aa7a53c25d0bf5f08bebf77159320d73841638dfe1a39ead2cde6f8dd20bb1f6c321dc1390eb0c86afca092e81857abf5bfd3544d58a4180b09d8fdbbabe66fe63db76207d06b35543702f29fe2eb5ca358e6f4e295de76a89e93e88f9259ede7dcdd1a9f8e942e2c0c9642f2c09d8249384a8139c5837d5aac23d9b0ebf3f76acbdd4d6f24177aa8d1a9feace8f7044e8c2a8b15635a4d4c10fdf5139f6da28e9b4c8b1977a2ea14c5357fe98bcc690bb5e2fcf0acbd6e3866b2b238aa6144b9f575eb42ef2f20af3256080ed4251d5d172a6df176e408d6c41679325a9761e63e001276e243fd2f737827b5b814f09864817a46978f0b91d5b137da1e0d1f44721a66e14c1f3170eaeb874f976cb3993d5f69da27371ec87b29c475c664d489e802e087fa5e5e628406c7476d667f2c927341354d2f7de2929ccb7e0e095d4671f8ab3f951aae0267efff60fc0394d6aea071b1ec7e1538560d9800b43fa9cc60782384034e629c527859f7cdb36f7e70a33c025d17d21b8c94f75014c06007e01cb8df5029bc738c7b62bfd6be066ec18d4a279460100ea68eb860a71f5597ffacf3dd239cc7bfcd15af4eed6b2c06e8406e9dff6c4e1bb6b40a84d63d67268b077458c0678dbdc3c47f5fd5748fb09938a42aaec7dc2518b0bbf8b46aca162295f3eed5c5149727c61c1e2bb4d39735e9e857b1f86c2b1478f02b37f029ed825e6b7cdfa490fbd9c4495456d3f4130a1b05d302d57a1ef906455f7e5d699e14ac2a89b1170f6d0d331ee9cce69014d08d80ead5c44c317f4812ffb30ab638f1462337b2902b2fbb6d2a632cd0b08358317664fd4983aaf534abcc6f1e1e5ae54c7145f0106cffc8b7bbf887e7e4f5fd43d66198e5662ba8aebd06b1d452ca4a822a708776474a06547e6cd3f985c52f6a313dbd1deb0f39949825c1d0d29c0572e0563740f27b2482be718ba060373aa49785ec732bed3f8afbb4a7ae87c3f053678dda69806698f250b9a1811ae4a9fad01aed3734a51d5307cf3dd4d749bcc9e189fd94ef48705f28c62a70d0086d8d679791f8568035b36574ad4e62d796c7d7fb171278251caec37e7c7ad6f8c2ed21d0ca198fa126e02b000c44adc99e5667d21ec2376aac46b0092be19d5b32049b70530531a77e3271f8b22ab7370f5db9f4d17943273a27eb4be306ddd4189757cb9b3dac3c93bde1d692616f5b479445c4465cd3263c5ef5d311665ab3e6b234264a2a4c0c7820e54208225ca1671f2550c8301698b1f7c8fd4bb0e8a7e9ef6cf1819bd233e4935bec429c49fef26751440f7faa8ab48925ace206d650628e0d0f456af3041afe6e587e0288b745c4084b59e2998b6232fd4e51e47342072e751befc04b76c340810c2d17bf270fa8efe085afc64c9d29aef2fbcf8ffb7fb534925ca9d62b470dc6b422fa82d242da32e82e49da69c6a137fe146818872de5fabd62090a3d14cca37da7d1fd6f51b8e10bafd7d36835881795211e19d6d229ac9276fd3f7de087370178d1074dfb95497d63b635456f73b7cfce63fc3ed353fc6e01b5739a0cae35721ce25f4ee1be7421ec81b3d6d61626e45229e0f60ec84fab9881960640abd0ee5e3ba1ce2859c74e9e715dbdedd22b1906fc7f2230253308cf5a77ab192e411a9f5d92744984c2aae5186de78b5720f73ed61a04bad409de3c875141c11a4c48d92aa36bab181be6b0fcfc5eb3eb2c7b302ab1f03792b41b9c4c4efee825e6da4c1c17d469e024180f3ecf0c008f908c8d5b3eea62168f0b4069d9b06d8f32a726d136e4b72de74c3c8c944c174f1a024e06fbed70a4dd977fe58095683275cc9a049d4f728eb6291e0b4b376a1a0fc41e41fde1f4ea3fe96b5cb76f893a4849c46a977c983218fbfc1bdae560a755dba4848f88fdd0b9a2a5eb1dd244af26e716697b06ae2de5675a459acf33560cde4148f047860fc7032154ec0af01a3987e195404077c3be6e9f0e89c82b5398ee63b59ad0d13999e34ef8c12b755974302bfd62328d6630928dec77ff0362737dc10704a71a2838f74888915df825927a547b1b0d213ff6bd35b69c3a6f9dbcc656644de77d53ceafec3df55e36388d78de57008b3c5455853f367b61448bf3e991618fb8d34c34482444e3db31ec7e6851b43db88fb05f9c729893960d2736e6ece9f64ccd5d370bc6622777e094dbc7edcaa8e6e1f7616227074d856ba40aa764132be9b91b77b837187e40effbe57d58a5e7c197b4944260e1b6c71f0fa208ed9650f7c1ce802b9a52c65f1762b05845bc8873370ace1fb1bf487d3e1a548d4193602a9b4a7b585a7986fd679670c33810cd0580e1ea846710905046e9a26eb8f369e3c203dc1f62ad62d39d0877a13614902d11269950233d94ecc8abbf8aa970afd043ce0c4e1e4348193c0f8550283ba99df19c3ff371fa338a3f6c73f5568c098733786cadfa4cc4db226ae7b887b3a922d4ba1af049f9fc771cf911adaa4df1bc3f71b89eedca9fa542fa4a1e03702f412266382e1dc6015646ce1b5e4e9e34405be3c66cf5880b69b0feb748d9dbfeed833a54cae1ab0dffd60ea9ca405d257194d5cda121cb80902c725d2abcd01f04fea20cd7db9ccf36451a022d03a5d9160a6484b7113ce5f0d93ee9c32a4eebe431c98af9694457a6bd6cb5f905312330a62f922f3f312baf86ea479fdc0f6780a51bceddc4d5ef6dfec0b45b60b539d86cf63c451ec48157aff7e3d7167322a169909e16323c5a4e0306f6e318ba2431f75f79d02a91d28635bdf7ccfdca4975e6f45cf02a0b4964d823f2f295876965df25e9dbbbaea43f9ace80a4174121b60a908de2d644fd9277d00acda0ad8a1426eed9c8ae59399d4dc351f2cf1eb3dae4be11795f6e23d0387ede66aa85208e0bff3802538a16afdfd0b63f643dad1734fee58e0e0221f5bd0b0481f60becf980b3b247cf3a877d56f0a4b34d37ec19a76d0206e9da973024b5a4c8177f4ee13987841b3eca701a7a0c7eb756bd7f99d85738204860b5ee44495a867ea3b077408621ae10f9c0b17fe99e3f5c9aa582faf886ef372f16d8d3d15c77221a347cd11bd5472df48bc70ff0a8179b10026629c5112730e5c4737aaf0fadb6dcb6f08cae688d73ff103ce4dc0a73f17c0bdb665e0cd1f44d642b3dafb37cc7c1689cdc34bdc7653349f4f86595e0641a104edbda8e855ce86116b3627d5822ac65587a6fb6ae01c7a952bb54911449d3fdb0c0468fa689ebe64e3382561b22d28f5ed05099fb3ee0d623269482006c337387535d507cb0fa0659fc28b81c70d791e0ecc8084eec8e922af72aa546e98ad67170f7ff1bed811615242ef920b1783108e347a30f45dd57cfc5ead74d624821107b8dcf4c37fc30844da3a7636e0b76cfaf0e0483661bd52323555e8952292d15617f30090d5a6ea40719f63a56b56d44e43efb0d3811ebebe27f1feabcca731c43f20422835a62d3965ceac1364a665d1f5a92e626fc22a987e2c7024b1a95c098921b9cdc7b2a9449d8656f08ae3ff1c6e19075f68a4bbd8ac808ac5c68074b41c71c1c7c1e5b63c31e1162d40a75da25314016e73cc19950b906133d73d7edf131020d5c4648bf56085af395b4cbf6771a9922e5d7c25005ef014136a472555bf851e46c7f949006adb05a5779e92a7067e6a817c55af37edfce3646bed046eda4480bc3cc9fb8c5e7c5d79092993efd22959e6cea9b458b76683887a02ae40cb1b96a5f113712b9b98ece44695cbb7405092887f231f92aac93540f0e47174ef73038a3005f36ed65fbdcafd53b766a6eeb1d147a134de426a8da6c498315f85fd46ca95986d1ae83d972115063959a20894d4083fcc47942cf21e509e04d681b936619d2926264391bdc1cec126706483984b75f3afcdd95662bc8bc2f6b98057211e93431a7afbd643b5440647929bfef4faea610cb366a7b30e4cb842ad6cd7249165c3f5453ee12630c4085afd7978fe6e8b9c6a0c68f3118eb983e5127106541cd11d8c03cfb0879d22855e05150116c576390c70510a24000d0d0801a23209cb267b14d2a58749743c49bb12adde3cebb69e1f67832cff6a3721ccb5244aa45d752afc2b87b39c5d1e4b418537aaf2903b5bbe8014ed1f40e24ad459217075f78cf661c4157c95e464d0009e82e073a3b121761dece82c85b58c210f98ea3fe192f25f964483913ef0cbf856cecba3ac1639b90b05b3bc67d1d3d984ac506793ab2c989c1bd957eb0378b5556b5e19575ab390f5a0216201ee47f0232fe357d9c99aa25b33ed9ebc2c4f634eb4617312c6bde136bbf10cf3e22467d5b555a1d8c7f54dee43c343f9ba54aa640012b4271535e36b012e4c4aef54cb85d43126761172a6b89b9735ddce90fcab19d2238b49fb14a32aab750889fbcd8031a0fea3f47105020e295b055cf8ad788633998daef381a49adf1e5f8dc498fbd629a69c5ab87bf42a06a36c8942848100fe847bbcfc31f0f691d22e289996d2bde115ea8acfe9ceaaff34e1111c2f702be699f4ef744c415389c641807e28eea864fec79423d7e075a8a132253c5edfb924e073dbe9a302e0a68d070fa35846dfcc49c7889cc083eaf8838d864f9b5f4398e6a4d70d3a61dd6ee588d44d8d024b8ff3a68b0cbdd946c2d3d239cdc56f5977fb461084fc0a7a096e89a400f835369ae2279d4db45af33341863a68d9cfec62f1f2990412a0506bab338ed7921659f5c48e96e363d9b8301c4ccf7d6d6b122311a092d4d528d8dada5e2b47873459e0d5653292293835b4ebb10eb3c5b98a47e8526c6a0de49264abfff68d68cb5128dc69f54ebb2ea2f8cd42e43d73cef029ecf17c3fdf64327ddf88a7b4073a05467f3bf4420ac53a6bc5ffe35d9a448fc3d21cafc07e68bd708e05e13d52a71469016bf9d0e259bcd2f8c55dfba71c0fcd774d7aa88f888b7c0d5374a785a1a0243f63e32bb77fa3378b63fbc8dbcbcf72388084dbe64653bdb37aee48f493cb3ecd5093d62173fc8177df4694b0d0c496b8988aed6fda5a2c9ffb5dce85220b874af09c8b670b777e2fc8614c226daae576c0baf629504bf9ae842a7c613de6388054651dba4136043eb52b72a8cbdd33428dfc276506aa531173920ca755c19734f06d8ebe3801d0e777f04d172f91752542cf9816de7b571547729e16bfb5b11af19b692ee3612e16cb46beeb6669eb4682e781b8dc5bca4dcd648911f38788bd85c6cecd3953a7ef73245e5721411c690bc65a0888ca5793aa7b570810cf6ea6a946bfc865a8b65ca81727b320169e1b62aa3ac24f03e67687554fe95dc668890089865ec474659a02ef132bd88eb92dbe627d6920aca8f8f536fe8b7e815e4cf07988dc3ad6668f498cc3f597fe91c8460e0353c818ad97df6669d35161882651fe57aab7067095529c8165c406c8c4a8a664b8fc8f81abc245f8139f6f23dd32c7915de53ad190ef31f48ad033b98e1104af663e50850f49106d62777399b3ba29c893a3511bdf24bcfa62150f5d13ed239baa656d60fb1cd002775b51837e8dd413dd4f54684a7dbd20d9b2dc47a44a268c9d93a656807525f75c6331f02760c4276e4f0564ba409a65da742d89a7f96f7d5273fc258f067eab6617d4ce39a3684967753818e65f54d42fc40cb838b479a41c309b590ad8772e41d61bec2ce71be9e620e57897a3acc7e37ad423122a4cc676855ce0fc39606c03d284613b474c4ece6927329e03539dff9c5d721a02d630d441ff98bf5054bf3f81e9ce27b81263d54fbf59331b5d896664e97ad65fb0de38d1e57b8c6eff57ac1fae1f073d0341da894075a0bf24e5e49e911190bcfc8490abfa4744e6362d33ea416abdd053ecfafeeadc6a01f461cd15f2ac1f7a2733d9bf212ca0240345c4f81f0bbaa8d5cbdb250d443f812ccde34528b7ce74e75ad830b5fba5541574f91ff46a41438b13bc31bd829110592b65aabb257cad271e3b93b51028d1bc65b0a8b5d00b1f0600dc8debdd2326241bbf5e4823960e9226833e36550da075447f21236ad89c3c85a4e4bd810c7f4a84c2aa7ed81a159a8eb4fcb498b490d50673ba761ae597166d5f6b051b2861166b3f2a9defcb66744661043b851bf17c29f7c12cfe9e6c8ce8c14f4aa57493c218975a74a2fdfe3b60106189b4ca39d2dc85c21d3788a5dde309d98c2ad2ed8941fca7c795b97b52f7ed9f46948d6e96e975cf946c193cf769d59f1fc9020070fbeb9c29859b04050059bc4eb0fdab74320967a67eade87fe8df635bed7fab801ea01b48ec474142bc7fbb5ebf3e38b33cc217d71ebbd63a1f2e00e961f126b3c433a83b433c48accbe4832ad51c14954703325037afbcba43ad71a45a1197cc5214e4e01bfe22fabed5a9cc9b3bbafc36e120ccb433b5113a83b6d34080cc71639df0cb2b82cba481a68fb9b90c8620477eb99431ec0bbf7cf5a4f07810d9fbd3ad021106efaad52ab26f577ab8a18d8267f6aefe636eb228ab030911d5552a96fffb68f13036582ab18026e617f3a626d95941756a4616d7480d7cc3975c5af6f41b2abb54d44864a0a0911778128e5c0679d8ca130a0985531f16b00d72141e8868ba0bfa16647b923846887008b4cb08e62398b97aa62e6321a83b3b23fb2290ec4d8521df56e12eb10c962e2f508e620fee83501e6bbe304992caac1403d05112d35cdda7e666efbd909230e9a14671a262a42a03a20c372ecc0fae79c8adebe6b00a21840d19e0a85f9797137a2caa556fbabd6f6066e28c519cea3e36b6dd4d6d25334040ee1e84fb9481aa209f086ec096e686491b9e16f5dee017036a83a6bc80616c1fb43133d7ab1f0e1f96ef6d64bc3204ef65b7831c17e2c3f98da154733ae41c0b9915e15311555cdba1468b255640337e1d9d9cadc7c4a9304348f11e1ce6ca54a98b697ddc42d7386028df2c9274f56c3f4ca61cc11db75ffcdec879f8dc18cc30e5e9778096f75edece0a845fc71efe2a0a2dc1518dc1f2b02ff13d45d84a5aecaa92019844eeab84ea5e4eaae17fb39f56b4e333de06d2b68b4461666ed430560a0b7270a0d5662a46529888d31e582ee7ec50c9f7406c2ecb4cd9e570577786c4395c31dfc6fca2609793585c738379770006eaf0a28773f431ed4a573f902be6e4ca543405d038bc09ca468b0e2ee4888bdfeabbf3dfa94923662adce8f6326944b3533f0af8040d6aa1cbaf70e8c242c1ffbfef180785d9c092343445ef977264fd0cf7f47987364d8f4264768fbc0949ab772b943d55065b8ecc1c8a6ba0602acd24b36e58c128f509fc1737232fb5df552c0a3dbc2acad08c9b9ef6f2758b09ae21becc381565f6baeea53a24be31c9b9600a49fb0767b24c9c58accb348918aeda537a4290fbd5bc7ff2ce0af252bbce31e74d5bee9702db8324204832b7b10b5af671d3b6bbd1c0ab9ecc19099ee39249e5a69120f61d125c796a5bb02af64d338bb373298cc6392d5f55c510d7118fc6f3730947c3dd898ac4b1fe3cd18b1944330325df93f8a2d83c952588c2561df96d4810a8e21e3099702719fc8f7292da4f4f70418b31c2c65b5706f94d3491994f4334a3e58abea1d4e6ee153caf48449f320fbdb446ea4f67e6f2ac149df1633aa7b5e519005a5e5c2dc3af899284c89bd7d714cf1a7d7f1287ccd2530af9a593673545ecb5fec459db7840936d2b421db560fdadba51036e649a6872d5ce865441c86f6b4a052c4b00bd09a690142aa9b6aca8efbba86ba5ea79d0ff9c77df65234ab8417ea8d574e522236d02486ca95f4e55e061079997ef2b3772d394d2f46d5ccd438c795d49af0d507391b53191fdfb5c245775f4fedeece00affc690d10eb9c86d568e2366fe328b6bd1e83dbc49fe5c0752bbb3522d3924dfcebb3b8c0291bb8dd249c98b636bb4da424d0566b143c5d7588e64fc9f2815923533ff496933f8e4ad9c6e18091dc689122629f2009672454fed849f7f1ed648ffc6ea88cd80dccdb9585905eb34fe37ad2dc739f029745c3048ced77aa5b93fe8c9f9a791201b9f09a735b9f6eae119a88f8ffff24b99095594649a5d3e1a25fc4cabb631a95afc389269b72fc9571bb069ae1428adeaf3cd4885227a3129e2e5a0b949eae71306ef15e3c1e2cd4a35154bb4a241dbb8008a9a475880f08df03fb6dafce7795e3309ee37a3280101c45239894280418ebfb4e6bbadcd4fc3bc26237e2eda47a80a90c1699b7c11c263967bf60cd860014b9e0e2ce023b8b93e528e7774cdb1ebb21f0a769c9eee72874b39d46daf9bacae8bf7a0eb85e877c5a19538f1dc37d2390f4618e371d32921f09f53326089dbd0c7e5c41af0dd45fb9cf465e6b8d3e9fba381163fdc6878b5ac307042f7256dacb18cae224474900fdf8ad1cbdb2e03eaaa68cf7df12ef02559910d4059f9706599c832c06446cbf484cecd9c396033becd059aa2bf8b98a6d6b9fb4acdd0981b1ed2018236e0cd209229fa70e9bdbae5b3a69168f362e620cbc42fabb711fd9ed1479043cf46d5acb3ea97c22420e2055bc894f500a89d1a73ecb75fe5ae98599fd31dc38f462ab9870ff82571147383404383e44f61ee241f7c04ad24be5523fc2bca04ad4571241f2df97b41b4039889d06f5f9b4c0bd82a95e4544f03b69c4f14bc5a774d7dfd55d44cec2db1f3941a4f98ed493ac7347bbcdde07ad94421aa84237a180e9c45f90a77cbd974028ce294a00a1d688c3fd76054326ffa794d96000271ff314a9ac57b6e25be327fef5945748a0ba4e4567ca936cb4b56935379a8523377dbf0d758a0c4b34b38f9d502dbdc4efee805b3993ebcf062f25c15e3d49e8e381538b16b095b3cdc5ac12ed4d91588031b93a8111a4da82078a03ea569197ae7157c00a0462660a99068557206cf00796afd25b57ac9c031b2904486fd2cabfbdf6310b409815e48e17bff96a0ed2e87ea1d2d549f7b9557d98e2e812d460e9e75c3675d1ee00c70cf902e23d2819f8df6bb480f445a61397031e3a781041ab7c4daa55ea2723358a91a33091a44c760346e8d49404c9e719bc3d04f22e7fa7cde4c0f0f0e5bfa01c40043ba5134a1db52b7266403c9fad0fbdd91e421b6b4ed9a3abf5d456aaa99b1441c3f0843bd211b6e62fbe57ecebc7c69d9d34c4478a6fe588cc8fbbca6aef8d997e183785e2fa735b3c61e944818d8c9fc52a28d35a992334bdf25ee3a35d01d32e6bbde7a9606a62d10ced56574103e6cf8b044e19d541c197ec9eedc2f85c7bc77d2d78a099a250d6bfddbd232fbfc24c011e2af655ea7616308be3e49e4ad7e22710d55d2320a1b50417f8326be1ea4177bfaa7e836d144f7379fc243dce85c541367c27d283da57b906c101f0a7f8e75f4b14577fb1214eb46e4ed4ded92f5683ca8b410817c1fb4e98901813f4933c4e7991297c6195d687762fe46b835fd5b477a0238a972e3d1cfe882847896713d6cd9834e1011c98d34cb60d793d77588093e4fd714aad1d485c145b01d3e28052d558c413d943b402eded983f45fca92cda877de1fd782277809f634bb8eb52a83dd3d35995096688f1ea6d8653c98b997f55c6ea2539c1f63779de49087be29bc6071cc1aba954b41a050d29f804f028a1f98ad9ae81b7d6d33bd990ba822991458fd77291da7a34abc9a3651d090558e31c375fd209aae2de668706026a3f581d8947f9863ff7abbe873df577a58792673736aadf1d21a95c04cc82a15656815f56cbb072a509b304b728273fad10ed71efa6466057d282caa7fe2de12e14e24f71e13160ae93c7a3d8c78ab32c5fd02c6991f89d7e7a9e665bcf7a4e38c2c8bc6d17a84e859c76ff13d073a2676e528a9970f8f8a73b2cd74bc978033c7e7f0d622fe2c1cfab9af1b027ae21626426eeed40923d73bb0562126f5e22339a537a700065f06275b4afb60ce673bbe2769ad129c7fbcb4f0d304ac15175348707b40a5fc6ab11b5cc5ee23aee919193e4746a6279f61c7dad42c18519b5ad8e68683eab01849541577e7b2cc27de4d522977267288b8abbbd2b5702bfcd69a148bf67693bbbf0719db10776580e82ee22f2f9a92fb183db12d531aba4e5f50370fd2a68bd128acf653e86ee602238fe1b2c98f0709cf9cba289fb928ce9bb1599edc72b2ffb4236ab0b5479d44f51fb2394347a1f95efae4f88e251c7b2a31d04a137e8ca937a8c0642f3a4db764a34dd1c048d3a3f8ac456ce763e3f5c14b639b8760026c1857bf754fede004da67a8445ee21ece4bb0fc0ae8d8d297e1218d479db1990832db19d72a8a58374753548682be7be40639664685ce2801bc9c9a1bf13f631208c826fcb9cb4965067c602f9cedb1dbeeec8bfec2d69534e922121d5104c5f7561d31aa9dd0e86dfa7d9dbbb5003a3faf406add8a68a81c5a75d1f730a03d2cc28be778f763c4b77e683603f025fb7d554198ce2453577a2f4553d888af784f262e4e170c3adc996e4e1fd7ae6f3cb0b6b936eb1d74b3cc53b33912600c7d34b4d50343b7561644e521882042e68ece1f4d3e42bed4989c09572222eb47abf049e81ffe0789d5cbe728b09477f5662591e632651f52fb1ca18383ec1c23547b2251452674f27a01bf5edc54cba765acd55c03d8f5893f52cd139600da248ff95257d1a5c1b384688b071eecbbf070c2b940acb2c60d5e7a3e7ac03253a5ef19d7f3fadf8d5d608533f3dfd8ce57f13f2681d162e2be4302269a873bfe648316bfaf306aa813a5805ef773cf5de97b48d99049dc78525fbc3f72c0082e7e03cd900d68002f1c87add89e153d4dc7c7e42bc405927b1b219323df36bc8b346fccd71bcd154bcad7fe4f2623c5a5f360d073a730cbc9319663771fb89aab7d6cc2921957d5cc850142f0644ec830ae1e503881c6061c499acb326c5bec829ff92979d8fc3515e074559ff2cd3e0a8190b0d1e71a31db035d18bdab4bb55a9da99c074a3dcb66f417de12455bb57a2c83f2e3092016a9ff0e7e9d098171f667f40f23c08da7b52eb00c5d4e2ff15f42e93d282ef02df10cfb0c624efde9555e282e85a145ffbe602b80d5872c958b567f2e705f58e0a3e5a17b6208f80fceab287ef42f79ca61a3b122b339388016c6500ef5bfaf379c5d49b45a9a10ad1916f47f692fc79365b84e76396f018d2dbb8d583803d077f1aa95a8c95f8ad6ce9c133fad4fc50d1b7744390014dfbded0625511f86da15a1da40ff39fa662c60cbf49b6ca8a482fb65b5dc0e378c72470dab58952b559e73400002b36d0f5b499eba92bb4cd7807b4c2ff4fee1ad038191b9b777580f53d26775a7460ef17b40a527b4b280d91f0cd38f4924f174ba9503c628a6430ec4b7ac0ef553468009dfcd7a30807f7cbb6f6ea8d9a9a3581d54cfcb45b8fd1e96ebc11e040796d4e8f77e1b05a74326129f675f95dc7e3d59f47004fbc27fb15c84fbe2bcc66945b5ca1761ec86c3c72a61aced7c93346c7745a4032a363f5d56fcbe3596392a024819bd94a2b9629d67606d1e17dcd0fb72e0e998413a5a5ca0202aa9cd50ce8fd6e9ec4059cc37e3bd48cc43aefd3d7afd24b861922b3c892fdfb2832b581c09b3c65619351988287d036145338d08a2aebe9a72c2c719ecff65f105ea3886966c040b42e030373174c26db0dab1599bdc22f6f83acdbf82a7b81c27f126cd02423cde2af62378789a1968afefbef94dbea830aaaa46cce4a296fc9ddf68ca5e497197d4606f02953da4b905a84965044eb778ee9ea543a2131a6a6b1f4d64b7ec738da27b9ecbc44fd02b1b49e284ced4f5225eb1eb77c85b38a67d8f1eb77185e5e6017c13557f3655a2dbfa998cf0f74836a33bf4124db2b2ccf38b244ba228915026dd737da86c0be3615a860035d5dab6b39dbfeae2c2c8ea8ce9ca844368a12a759f19476fbdbb02b573c977c0338900d47ea2a54d5393537401d9735bd207db55a6f360cb7aebfcdcc075dc49b11cfa256cb28d887b3aaeef770f1e3bc17e01c2112fa662ed1f9b7f84fa4e244118d0da19215285c6272fcae58324c39d43c20cd84f789dd86705ba8ba44c574c3162293683efc1cfe883d93a6ff6579d130822b199ce574513573012dbc0071549997db7dc6ca836bd9238970ffb91afba19727ff0634767d9a32b57802ceeab2887d8f692473d7a43f21c9dd03cd0f22226ce420b22b62f79c93188fe9ee46e1c1ff0f5821d93f062ea2a0da0588115d0530ccb306cc66f4aa63786a68b9e2b45d3297ed932f4d3eec3592e5256274403fff40ec31f766a99fdfd396f92bc080bfc659d2b91bef0a9de6b1f804281f4ba9d941c9445e0a3a282dfd6ba04cb94f827f581b456528a0616a300730433418023bbdee84a0b5a57540c8b54ce2be0f668727425382a4774b45e411b5bf1316f5c76f526e6150b5f96c03fe29378ddd8d1b303a5073689d4efb7ab221027b26684b38909368afd845e88753cc5ac7d3ece40dedad91537e1fc51bdccc5bc4042c11ec04ccbc4f3625388c4dae6e9f51214ef24807d45d75e1c0d0fb5c4c25102a9f84487527b02b7f2c1106f8a804066f284b5a01e4b2b516fa1b19c1300036b15e0ac130be1e1a6c2fab469e10f315eca45cac1b8c83194d4a9a2ba06af754e28ec0298a2004727aaf1a34c5cc60203de6d1dd9c900a654ebcd14099da02003058313a526fcfc1afb26e3a08e146611df1c0ac40c6a2bb8200c81d5b8d6f562ffe894009fc996bedbd176f1c14f9df333cff89bda05404f97055a17abe81f0b952a05aa2aefe0c3de7e8eb728c34ca1b75b7389d390199c17a7acbe1ea59f643ee302eea3cb8e4c3ffa43d7ab15ade5d09c22303e03f498e8f0f41f0bd70450824bc6ed247858ef61a026f2110a45a65a9d7fb76be06ee5082f9c68781ca546a8c150f95f11137d4d4a2bb73815733dbd1fa2c24991c6555229378056ceea0fef6cbb6ce66e4bc8897975d82234af184664bd6ea4d286d5bd35270e2dd5ad59d0edbe9cba6958563ee449e3208bd57db6eb5810556a1f6c150cbca901b42066dab6ff86b56927d263cb6d16d0d6b7c25618f4420ead04fb315ba740c091df2a05537d8a6d8b50ad8faf755b21dd1813059e3493a87bd4ab97a55eb11b28ad5ae3aeb4285121405dbf64527eae6dbaa8bbe669ca84a0e464c3549397480db3ad98ed6cea4d6d21372b898c9432823324667aaa8800feb6d4440efa255bb3dc57af875698aec023e35d37fd23721bfb747ba19dc8a9d31bfdbb7bd8d4a248027db4b65a0d32ac888e847bca00fc81289f6f59d52e3781da4fea4808e092e532a8f54666f75f860d4525004f8d9c7cbc16e3bd217db07000f765f0aeea74cc6f48a0e679ca881fd944875501f5638be3d3b2422f94e9cea1cf739e564662cef50417be9e7a7307959c1f5410a6715fb295b082efd42032e55c8f2eb673931743f780276a76be0757b5964d9bbfd8ee1f735456bf0659b2f3704a59fd8130f3b0b369681acb5d88dd47591b3b5759327f19e8f569f8704288b952f8642f4f36befa9879b972f11c24b61261b20b59ec3ed2a5e2a485ba0ecbf0957255bc8a84600a936edf36bbc175eea676eb49abc19d5f61c800add42cf59ffb12c2170e05f436415ee491532d54fc33fdcf4513313c185ed783a0efae66c549fd4092c150ce38f00be81714d958473faaf92bded6198401669f063edb5914f44ae3bd6c804f6e579bb80a373f18f93d6c935e36ee2bc8cbc4deb857a40c64befa8087c428552b7eaabfd099e7cf1b74eb9287844dc72a34eae3273a8f8d71414fac229226d90860a8b3a935622944137f54526bd58c1ca48c2c0ea4188147f961988b2bed27b56538899e789deeabb57fde59b0feba647c20f73bed9589491a040e5c34befe6d00c7639c6fe2ec6d481a6cec95ddfec23cceb71a02e2eafedecdd8cc452d788ae35016884089b5274526c1d77d90abb523df4ddcbecfd25a332734ddd8a4f46c695c256749712b98ac5a718f2b03dbc59b0a23bb6439d65ec60e5c253a0594b93cd63c39d51eef3f2082f61a4b856e84a0a88566db893b885bc0bf191df8fbbaf9561d777eaa41a7e4da5cc09898aa6907f4e01ce36c7086e344b62ea6f450a16f650780359196d29c5e4ff8a63920e6b08d0d34c9c53a45c436bc23cd895f8b105df71096af0c6cc2bc55ac13c84727006e2770f1e323f955d90ee9988f67bf212d1641ca7e4ce7710e7096aa3d75ca1714c14bca1aa3297f768be85c8114021635d8d80b0063d8559ae4be39e267e627cd75a315254259da8482226f0167c8e86bafbbc235d7d2d59a8e768d947bec90afceefc1208973e60aa499dea806aa991431cfee21783b7e764e83fbe9751eac42039fb16a495f0abcc03843e791c58ce0638c3364384583acffda4eb2530ccdfdcd908b097064b9e5c9c14956d30a117f10a2f08de1ae75cf45e8b34ed5b6c4cfc35bec452bba5c7ff6171d94bb8bbabc556cea318cf9b2b473e285b573ebbd9b9a14af70b767860e0005c5dc933012ca401a07bae6bf3d0990c3defaa9edf4ecac5e542f2a08d7bf80d916af068686f8027a1a5b34faee7cf1b7a17e8517e9f53127500c402df7b9a0600ba1d37c67bca14e51f1a6c872616b6d5f68b6c2f764505f084d76bb310d0c7f4ee85f7514bf9153d51e8a2b27f4aa4d9b9659dbf7dde11e8bf72250ace9438b1fdf6f095e85e2fa37f122ed99801a16eb93b7cf5fae3b306ef8a0ee8cebc8334cf852d6541eaf19e03a529947c13f47b903e61c57090899f62ecc7fbff88dfd5a87e66c0598535f7da2c6d2f30e232a61d79e8dab79361463174de8556e0af49aa4807d4ae29ce0891daaa9a9f75675581b6d32e794b790a22d59a5427a4bed281c49c7eb739db3934ca602f14401b89ab0ec4bdfa2e21d2e86b1af9b5e4da8e76e1f968094586e0b58d9a67c9cb2f2be10bdf5b1932f5fc7bb94dd26624a1b226edf80fbe8a5ab9de2a47a896a2044943a402420116997f74fb56747a1403bbd8a942ceb12b12fc05a2d5d5c752f6a38b50000787b06df8664e79cbf70be8056f4ac3b0e017661da1ab06b502c53acf7cf59780c483e2b23fa121b33769cfb5d245816a406db7a192b51b97976774b2733c12a4a503790e7f32756c7692f4976b9a276921841e83549d27745fb983fb102542997133ca79ab2df3b4dbfed02eaab6aa5bfdbcaba031bfce81e276049fec0385698000ce765e1b36fe4e946be24d4effe3130823d9a356700f63929be3cfb18199d7ea9c2bebf610912f38ed75dbdad60efd9006aae3fb408fcebb17f6000f4f53fcd0273dd63d48badd56730a726ec5a95657449af2e5d4aa7f7d1860300661000a61eab5691669abe99b5435b1930fa0ba526812fd8af75481fe6d48f7c8cb64e7dc95e450ffabc317bd253b12c80d5fb682d046fbf4803a5c78ca8050d3131292b4792ae125e464ab6e3f67534f7c18b358b6e46e52dc001bd7cd902b79370e0348d1c45a02896b66decf194fcfaa1d8c239408bd7035ac98b0cde669c51c0e76db3ca153a00f889fb92332b39dd4ae71504022f6c60b3464e1bd20919a8c912315ec4ecea812f4ebcd5afa754757c6f5d3366548fbbfc0cca95ca270deba6405180c0a14890510196c281bfcbf5f11da8f4ea3875c5b6ece015397ee325bdd4e14230cdab8df90f517b0d4d1d3e1b1a46aa31e1417cbb97fdaf18ca7b532bf674f9da509edf93b824b74a853e11c84ee1ce8bbbad5f660b27f12cde400c005a1b5a85077b854d3927dff4665cd0145bac591d9ba93aa3424d61229fd83b333d1d2d6eeb904c2a3c2c612160de9f8d76539679c21eef5c13a6d756158fb3ea43743a98e2b4ad40152bd2b3aa6f48aefabcca46c9ba07d7c37930ca71ef59487a5b44ced40cdbea49b49c633b77a63f0cd2449adbdfad89b012c236dd975551b50976df1ef2d6d38861c768e5c73850fa508e9362aacff6cd69432c33b925fb2b260c8f9a6982fed661730d531d11783db3339d8bcc8fdecea9c9db22c9edbcc3002866218722a69d58a16e421b31284ae70e3cc23839607b97bba9df229e30584f6e82c97caf97b2a72745ffe7a57dd496758790651f22ee1c5262ff70d9abb923b08959c2bdeed34b5ee87151f684181ffd5abd9ecd393f5f3dbd660f2a6d3095a684a0cce149212f2de9528c589976b72062e0da2ae8716ac6cebc183abe011618538c0b912409eeea7bf2ea9aa6c2f9360a8ec55a6c0b6fe2f241b547b4fec247e2659501366dab5039b98a066558287bedaf084774220c584a3e17640f10c03941949699cd6b63b809818859a55320630d6f4ba9a0233c8994e6bf1bc7e317e18c1a54c78a2f9c4629d02761c6f8dabce3bfd7420d4bafa2fd98b087a587307e3a327fe0afefbb8ee2d876440d8ad0f297e020444311e7b832f1bcf4d24c875a173d5dff7fc94bde203e552b48ea93e7616b1a23d87df7d069fd624bc1bc2f5f69ffc12fc93d434606d58d0aa1ab8adaf746d846fcf205d53e2d6ae251ebd3b9db2280e565a78941a943a341550d12793f9d00aece68607db607a47ed64378373f10581cdd2123e75a2f17e1a25f0ca321e5e905d8be435144d889f8ac2e06763d4acde3611168d40c329a634184d0d5441f730142297ddaa12fb4ec04f09cb31824ca6e9cd81b73129ea37f698615400182c5486bf63552da89310bcaace41504954edf0cd5808e808a6857e401754dc73bd458a189353ded55b75078fc24cc6969e95672a47bc3f921cd7cec0348e10ac3dc9e9b68b68f9f8cf268a411173b6131bd6acbe7d37458d12670161f200674ed1219564e0743e8a619edf3329735160ec06901ac7504d9ca97127368667f2881275f9ef9253eb8d8228c92c2fd594bb97f7fdf4c8f215d7b165f971e3d0d1f425d14415288ff84259d5573307150333db967e3a54f34657c883920592a4aa57708a5181c33d107d8def125ba6a97515381ba8ea7bedecec44d71771a7b7975dd9ce4d5ce6a8662926d16be7128913e5e5d5d8830e3883134b6a0711a9bdf6ef6cd7c7bb1e3a3e2425bafc8d3b88fb7947514218878069fd65fb34eef1439d49111990928d0c5214e34ad1a2f1b940f108c6344fd11751ad33cf73679de1701c4cad24c32c3c272517fa902900db0fc75d968b008acd1c83ac339396addeda54e534e7f9504936522962895a9ba9139ddf22de9c45b15bf5a97a8bcd9bbc42bc17961e587bb7c5d9afc811e8a775a8f3c7d4be5a0e7bae370e559b8a50b24678cc9fdf3f2b905ea7dbac6fd71f59341cae949c5a89db95272312ca72c007afc5efeace2d4d21503bf85257821665fb7ba2a59e8fcf28927c966809887e7d5d72c239b245d45a84ea4524f4ebfb695233a54f6f6c5dae003345b8c6035a87762e98b9a37f8782b149d6b0658f763a96c7a8cfdb64831012bbeaceb822f6413fa2c940f63e1319ca2e66384a7de0c513ea3385be854201a74b67088b5ebe2d6a62c27aeb2fe0aa8b3056f1b81670691d49adb3ae39b092953db330a692da9cb3edddf1710b956d34f208a68a69784c553f4715385c7c72508d276c3c3d5b5516694cdf3e5307239a6942b7d2c93bffdcac84cde3bdc1c0ed455922ddf56db5e8507807109d4ec5142c715659bd7fa9e528c129d640dadd906092e5894475c49a3a1c170c103766972cdab59b8dd218f36c018fd8feae01c59e979af5a21ca015a947ee17a2b97f1c6194734cfbe132c98ad04c39e225ec12eda77838b800b12f67ad56f266e767942b6f621eab75e12da3e521f8c0193834f289b2156af7ccc473c820e276075c268adaa541fbe6b1470503966aa74f519a911c78bc592f04994ce313d72f4516010c88aa70c1d51d7d0b4f2e2d47c2cc802e21044b9546324ec160ef2595cb37d9f62fff24b2cf57dbd5d319e5c42e2880d5b70d8b17e1288dbc11a3050fae4a5e586574c7a8a02e75d322a4266693941414101d18c9c2d8262209d1b82e2d30f35384e40eb34fe76913358289a2f304c6fdc671a4a504b4448f1fd29942c148e92b8318deeb767fabd60822113e575ee664ff09a1873aed8f7a495793cfb7b5a504015f3a9074c641e7371b250d867d751d90e4a22a8ac17fced3d50affc4998b97bb644acb07c55a4dade3bdcb89f6f82d6c24c305d68858b3dce88e1c5e6fbbaa4b78e68571619e67254f32655dad584b5a8ea5ffaaf8321e09292366e8fadfeb16e310bfffe0a06c31ab1c80f1a99d8945811fb2c426289e16dd053faca16150492e943a43c83e6b3069531dd498ef15dc612fb2051b88f7da83afc5764a3378f017c826ab55382386c5e477c8c8d34ff026cc9e02cff10f2a23bdbb41b2ea8367ec4c6794df0c934fad90c07bdd399b9be68225e9e18765b6a18f8c4de0767e791f4b0ec314a4e7db00ac64588f1350c2fed0a794fe8d988277d5ef8d4c35abae00f459017d39a7b0c3467752717f3d090f771492d139ac83743c5d8ace951e06511667472b6f2ab2b49d549684ff3724ee08c6d83c221330bf3050de85a124712e8d11e80e59e7a2ba4d60c213ef7fb6b97416915a8b8c3aea48c6aae3ada79a380fa4505b1a58e9547222402b88c7c8dd09f2837e889308c5c4b2a683eeba8cdb9c0b6a2c45bc0159cd41370156c538db4935d8e1a00c4293839381baa681b9b6b5d5a452b811ea05879df0db296216587451eaf162e9e16a8fa8d273280f282bf9e810f00ad9905977161dec3f103ef789892ceec8c453e1398ff487485f1e1b56fa1f4199272288f9984956b9f6b33e56a88544bf87093284d9f7be8ebdfbc054e736da7f0770d3b1a3ac5647cf5e39246ca6b8421f6a0868fbb3949fbeb7daa963d8d329aea4a1a92b3ffa437d8561007321f68d161f6dfe0d19c46b783e6c367dde74554ef3466be58678c85a59de5f59a8b6153d75ad994a1a24c4f5159937807e516d34ea81fe5ceb642bf258ebb872bf3092b655add9262d1950e9a445396367f41bbe919ac90a6d5f1c84aaefef8301e1e3e5277b78ec155bb9a4ede6e995e1cad2842fee4a01f91827dd875e37c5d37a3990d15cd64e2fa78e063917dd0ce48e7875fc4271c15cc90a85d8956d95ee511ed3329b16535b6df9e89c7df515e26be18233fa863091752014b93de171f920840fc7964ed4455c37bc5982303b58c96b9ea7d446f76387856b9fb468c0d2d3c95dd96bc688c8b66ab62a09ed42e8793c82edbf4a18ba4362891f1ed91026933e1a6c8cedf1ea2ff2d3576a20f87dadca8b45de4b29c812d39caca1a2498e207bcd39ebe0be91b8a175cabbe3b9b1ca9cc2eab3588d122c15eeb2b8680b21cea785052f59742d3212491166ef8657026f2bb2db3331cb397a6d16e696620137c008471ce23ced65a437336762b4e795389f5bcb26461e5c940624567f0f880eaa53082ff6309b4477d655ddd2c5657e83a0761700d6706f012c7365f310a6b0a6696936a106d69ae18801e22b5642bdc9ed3ec44ba4f8e858fd298fdaa07693c58e5d49cbfe4b4950f42906d3f5d7be263ff12e68abd5ac9e98fec24d75cc8d570b09d5fbfd59e11c1ed5a65c98b7dc8a70bc0658eb8bc0d34bbbd55a9f53ed801140d47f6ab4c08e41f8ec3bab0428999e00f5c5f967fcc00bb4f7531d512d8bffb92112b0c0cdd010647597ad419ce1321a1a7a9f6844018121b455029cfc01b9c226d38b7f10a83ea984c7f2af92d7b6198e82e97f29b163d2a4fd0b453ec26e4277932f7c6609fa2c579ee11b6c2be5a24309033334d26c59ac23cb3f566cb04e7ec933d7813647d95ee1a82d241dab60a47141ac84bd8d694f07ff0398404921988d663226644e8c128a5738b53629a7d33382423c9a759018acfe04c0828c411e8606a494fe23706fe92516f1dc3810fb393d02d88274d6184b82813c5ea1d1838e519b3bc6e9850492f8f3baed52a4d0c29e3da5d1affcf3696bb09f8f93803c95af588e73d415a4cc427d2b00ea94cbf2c419ab0620d3b183d42fc6d0a9a5b82ca7a4728dcba372c281214a101a65b542b3f8355bf4cdb32782010cdd8a4d610c8118eafe604a7811402ab4d254a23038beac454e97d3ea03a7f96bc2382becf4eee1fe79e88d3a410a09f1a33271b36aad0e8008a40c1adfa18d12ef4db0a691f96e5abec059cc47f71b3bb44b820b4b6504af2688038e19dc8644c985993046a66ddd07d4ec4f83151659e7b97dba15809283a853a42ec0f7e0dd6b4bf6c47238cff59724122fc05346702ace84b08d47cde83a27e410f7ed5c72820b5c5d875548e963e52309e741c413a2d1918e6f8e31399a350f98b5fd46c38155546ba6e4d1d189cab7ab4cf256d011f62ec43985fadcc16a995e0acb84e70b3ac8ff52f84969d7efe2d983090d0b4b0f47f0dcf0f5853b830808677005b1af9d1f954c92771a812de1aaeaab05e495f51bce83bf43fda6868be33ad1ba508f05f137c84753ab260b706d1840e4b1c2887bdababbe7341de2e3460c9ace4ace4a161f88991e71d11375134aff8b981eea11bf7d3eca9d7f528fbdbd351ec5fb9cac076e3db0c7c8f1604a2cbdf9a319c9fe2b03259811603e2d56027f2bec5310653844e6a4f10ca349c2024ea7ef12b4f500b7c4a5cdc8997b5a843caf992fb3b4704bb4d8fde974c06a5972a01b35c006499068667e0e0f10770ec9cc2bf22057c95090f93c597496306be62468a0d0d6f6cd22f23a4bbe915ff6f5a24ac7f8c33533554d04fbdff9be02bdd5420cd4224299523698bf5047335f045bedbc9d7286a0c5947d68947b763677cffbe7a0febe347b0ebd01727220e80381cf7dc8826e6780f6577f60680027c511fe2e563a1568b1fedd9b91171b707a99a000e4a930291d6e24e9782d5a3e04c365fbd472525b345e9840fa1b44a6fe1a603f404953164376235773004b20d2f58f2587bc958069d2f7141a1cf08e86206a1349de24aec899739cf66723e1a6a3bc7f59cd636b066c3a1be540fa02047d0d3aa5b7d6fd372804b2c3eb11072397925d672b1261084d8b33fcf118f9531211b9f91297f625983d6d268450fee3f80459f8b5e5e09114fb9a924baca04e27e0f59b6a98c531d0c3e0860a0ccd69bb9f31d5678c9ef182232d08ad0bdaa11150ef23eb2f8a828b3ebc0ce8c04f23453a63e0f9a0149e4c2222e9e7aa6f53e96d27d733209c1304fdfaf173f4fdefafd81082a0317ce8757ce10fdc2010125345ba28ab03f5fba8c1a041ec86a3ee82841d03cc5e1a6bc568ba020a1de85a841657624c940f7faccbc13933eabb2fc964ab6414a69c4fe465061fbfbd775d02091b525152c0c8e200074642613b02b520341722d8e233795b4c6008bb066531832d6f5764dc479a4c6365a1339386b5da9683d3babf4d34a7a71d33e6ed2f483ba1fa205adbbbf994dfeebfc08d466da93a80e84c1b170fc702de95f4ed845db09cd4e912bc90c7a44be5363e2103887f5de8430c789eccd4a9010dd4c9fe96592c85ef54065bfa9f203356d2589d8ef16ca196680336dcc13b90663f00348e2605b158c9c8dd8b72ed98f9c7e93239be52155e9f0d16da88854de18542cedd6db86698d50ade7f25d4338b56a441b50eb73753226ed8a640bab453ba85122b9c439c93cbe6a24e90f1c312728079d1b35f2e743dafc92b518005755e2be5751f69cb8073f36a6e3cc6c8072fd3438a72c6d1ad034f8744d8236a9353d23aae273c7b1aa776ab3fd0d18bad7f0ef750a9d865f71d25df46f91156f3883988377086fd5861dfff69cd67365b46485721608569679008d4b901db02c7fbe495c576f61da51cc09a711a41de5a819f36e06c5c9362460c4e7a30f389e1e0903678158525685e2e850af4c2a44a66ba1087a1b27d330d7e371f77d2cd10b4078257f681adcf4c8570eb2246e5ec8631831045fb220f85ae9d75fc4a5a0e6ea5efa9f21cee47cc3124fcecfd897def3360dcad8c13508a13af28e314275d487a95797cc69ea152d6f537a59f9b3b5d6a7e42dc6c629a0e272715462761a4394f5b091d3657e964b708f197fbf656d0b8e75afb41968792009efe0e565d61d9db6ca3bb1f5c77a55d47955024174792ed45293ade6c5682985d85457b9fccc1dc4328a19cd7365265e4e14e1097fa10cfb02656b34c449fed37ed49ac26a8d091d43e5cb10e99703c570e560d4c6ea33f774c1b9d9658e8bb443bd5d0a33c1a83d77aefb5d199cc76b1a6f81ff5874d7de57515bb6e5c27eff02bd1bacda0917325d4cbc0736f96d079e9581561c5366a351e88b79e0fadcdfbbc437fd3351b89bc824b9d72a8022fca78c0973cbc98d330f4c3a26259050b878750cce33e795f79255ea332bd8f80368f68d73372c5bb56d462d5b66fc646c5263a34fbc56e2613e048248ae03daacf7504a4f3d934522dacaf5f59853a5f9aec82ff4606a3743234f7582cd59c2ab84ae0c58dbea03700c144c38d3535159d6a6f416f9f067334782da91077d02020eeb1472556f90646605d4e34a341fccd81148c3a0d2186bf043bbb6063748c5550baee66987cd796e7a6801daebccf6bbb3b673b7259add2f3e83898541179077f631858241b7ff815337f417dbc7ec41fb5b9410a9505f417fed1b5781dcc1f59aed0f29317e88356de6f04c4e0ff4d6a3286f8cc4648ef86ba46be8247a19b80fc9d2c0b9e5ba5d2ef806626abeeca2b7c5746fe93fde3e47db58cb01ab4bc155a4a750324ac1151ec9b2f1c67734e2d0dfde2f5ede84ac1cfe3ffc6eb0d37b64545484246a66ff7e723e74e5b7672844b9243ac4e3e887d0bb45fc57a5b03b21d35c4b4072837097d565a26d074b25572831ec214924535de7204433d56359019b055672dd4de1e428a8e3c7368072114cc82909e30a29ee489db388feddda4975b7a5adbac50c4bcbce0fb0afc69121634a7bc0f91a8d241e5ebf53ea6dadc9e87d1a335379ffe3658547635904cae6ccb8b7d1e578d0c25b50aa44db04acd02391f4eb712839f817b6f146ba87267d3b8d8bd6da7057dd62f22e769153efc40e0104023505484c320e149700aa4514aef93b7edd57801209696d097c77c952de28280b18d2dd98ea511a8df7a1de0247a7e28fc708244cd6f2b79c9ca1dad5f65aa931fa76541fd89d29c292a92c96807b65ebf733503229285213412a631f4031ba79c3429a1d68c1b5174a89c1637efada83142f9d9642386b1e8c83d28c75b186ab74d4966c8cca4181f4736b04b757bb4f7547ad91e149d0cb3b870542733e2b7daa66ef6a885eef9be1c9a8a9bf529eb8f28138ef8136b70cacdf712a2e2a0e10628bbfe603c69e753bdd1eb622212b0ceac53a0315458b1b0b557f9f3f7defddfb82e9446a0bd437bcf6d70fc53caab1b44296b5dd24067549ed8e2eb10c9870565adc112d7d3bee4f895ac117702fa05f6f11eb233ede0e917baf5cc1a8ea720b118c11033c769a3ac327f9db316773b236910bcfacb53dc1b526e05faef4c9618de6218c0f3c64840053f2ef07d10b6d4549235111baf778a704102f16b1a8eb6a6a4df6f10245eddd7a2e758a55916a52f38c64d722ff1edfaef65191ae27abfd0da57e99a0f463f09750271f16f581a266fb66b8426b4c76a38e31da223fcbb0a39bfadd50af42edf5aa9a98636992eb55fa1f78ce05a5b4c6e22891d0177be0dfc5a46f95462e6e45838f28ca671b844caa7a28ab6404610543542be0410680efc7f3e5587c79b19c1a58138d6d6f871b8ffdfe05d39f05e915bd9d4a617ad27c14c51122a964c9c668ed57122b2773bcad261ca3cc3ff95b85dcde20a9ce2dc389c92c147e937acab45f642029c033e7bfd7b469fc1574c469b036cf2b7e19aba47dc9911516a99d51301e234ca3498047f7f71cd75566362bec2b70e26b0beaf4a36c525482c5db9becd4c7bf9263e29e59b4dcd5e47ab1e8154cc4e0ecc2e444bbff1699cee779282ff148fb21a33a45723bc721a6002989000fdc4ae1646a8783af70e6edd5565c307da68678fb17e9794ff69102da173bd3d4d12cde83fddb05a65942f38e1d6929f8545635cda330c06f088fc1e73e5c0d220204acbd0de33f8cb9dd4ca73716cc14036f22279a0f77f4f45e9d4aff4cbc47d7efd8a3b096240f14813caea157a5f6e939699a578e4dcde4674229d94422f6b6c22a90adf4e335530fc451bd79b650cdae4db5534cc946efae97ac2954bef1e22385dd0a3883c3d68df8f4734d7b077b70ce59d1128db9cb5c87148122a7aa543fcf39eed340183c3d38ad2e59d0d42e4a80f6d83c5431ad94d99144a0a6f8c793b5a66cb1eaad2c9e5911d17d2f2ea092103a9027bc47b06c8ea2756421fde5131977388fb0c66d7016885eab1bc85768c8c16d8b6e6c2d580d219023c537d58ae2fc6d71ca2db19e1e1e07c9529deafc19abad575c125a7586034685f7d975e70abc5bdc197cbb2d678ccab9fac7ac4f4f4b2c087ce80241a10e511a30a371917d6d4590f6295c476cb6ca7db07e3d5e3ca7ef3bfae2e31b089849db7cbe13fb33bc4f14f2f70f1335c13203f1f3005b035d81771dd8ccd65742e56546dd5d49e34fd2a512b0a433c3f399b42b6f6e94b4f4faf178a1ae1dfe5c2c7dd9978324199587ccf8668093cf7be546ee2cd503aa19bf4353ba3cbeed2bddf1d7de896f0e4cbba00f699a752b2a85877350626a35d98a27132b57a913364d65134ae6172e35aec7fcc134295c5e6ff64df6a57927ed87c88abcc6bd7a293d259db41f6a97f526dbd8ec971b5eaf8f64129110087850ab882f4fc009a909e82899f9370a23ee4abafb60bb6c3c14d8892761752579d1db586dcede95bc1e637629efa9c173846f67901dd6f9b58cf4590e0aa085e4069617eb1586e80fd1ee7bb7813058ca909150f0e8535b4d70a34ebecabdf40e8c9e3b44819443ab43f1868ce7818edc58183161c844dddf323048fec4bb9836d2ffe58d376b2c38b7fbe072d0c07d26321d524056e3ae1e75046dec771f20bbf87c2ad6d8b58de46d71276bb8b0088a180a58bc18daa015ee7eb21a2b456cad3c52a9cdb03c43ec1cba6277319af0b882d3fe3f82fe2339617544e24dddfbc44f87f02881c6b7441c75eb7d42868683b4d395007c997786989467a78212337e9b0c89d9d81aa7c92713f6eb19e6d6c63782f5a34d503b5fe998e72e2c0d8d063e897e9836e09036f604d1ca7708dbda7654169c499257fc344853cf567e11545cc49ca38a0d3368a3ba02e8b66046616391ad65700dc6d266db6042a22a2f0ca9288015cb89222668164262bd0743f48b1602236beec40a8aee313e3009e376d9b29a3b39193a4e584cd938b8773fda7efbfba1c3716effc9c8336bcc195d307fdd29b40d3a5b25166fa205a7fdd3225babd7882597479b419af6999b07b90ea6f28b5475b65f647ba7aee530a00620b59cfd328dc8967c48011293c14740fee641ed7a507f5974ad447c59d859598feaf11fa439dc050cbc97debc548220856711a7340c9cb24ca40c18c09c44f8e006a785ea9ab3b4dfeb84d92a583b1272111ffeb8350c1decb331d05cbc2774f339c244052582f3337f4c01566fbe42e818476342ea13eaf33d280fd2bbb80a214d1d77644967c247ad7d8a01651fc265a1b8837ee2fd51421786717007713bd58c5468999f12d78b66dc24edb93b717e11fd58088aee3a88e94b7310a97c243b50a36586282a0995118dbd043ef1d1c41ea7a7085a29529875b081bf557a37160a224af00a99b33b4dd987ce5cd06a2104d1f67270abd0318212630cbec1527e656fdf3cf85d0ece5f57abfd41477c4f1e65a9b9906eb89299bfe7d4f2a716edd7509eab7bdb56ab3a6790da66ca9ed5f89728887c1b38b14516f6b98c30e6437bdc06b2faab220d461e59c43743b19f98a890905f98570c91711b6fcec92233260582a1ca04b402d2dc31efd6745ba0d12ec37edc8a37390df2dca3a78a905a3c80ba254f46b26e3cebc30e2e5682c518c4fe2dcb38389d23e722c8ae351e88fdbe9e3ba099e51cd21732356a4bd5ff3f7348ff8f24efe5e440536a7cd53c913278cf767f1830c16fa2b06a8fd13ef194ffa07ec6e4d0fdb0009188e963fc2fbe686f02a5f63780af982b3b561cb63aa92243961d5ad9ff3715fa1d6fb3ee26b5a5624cee10038a5484ac56d79320b3888bb86a8a30d0f18a845c0f4850459b032c4ff29279fc440d77486e682cf7faa541c313e8a36f6846a47fb2f49bce0546a1e88805cec954338abb1b2ac87de042166e8e3a74b23261ec204f93d9f142358feb5dca0268b8375aef0335d51aeb697abac8e2fd8e4e19147db0f42e713ff8b771b1aced0f8c11866b90e895aee53ca63e387bec78d55d3231dfc251bf509f0684e073a65d6bc3ad6719f086ae26e9411ca671a1a1419d0f8269eaff3228a54fe04c6f337005fd0889b83afefa1c46c1beb97b9caad8171c9a9603500587931f045c1d1be735c6eea0f24c82d966360f9ae5ead49ebffb222f9d0ce45ce75c51926b56259258d78254b17d5e6a87b6dddf082f228651000ddd2e4dfd9a1a8fc7d7d1724ae49f7b38d7a0661bd414f833bedb803420e95f60cbd6825edc05d08588568862fb68a7dcbfb59dba6402d3d28b0e76cc57a52808c6789499b7a8ed37a0d2807a2a4e0c02757bf25c58f7c43393181cf508fcb028b4bd7b09eb41d478ff360f4411aeff332388318c03203cb6804d5249e73ade11fa1097f3979dd1e99422bb5cb02a050a775651de7b28f97a724938ef9fbfbba71c58df80d04c48cbad49ade4755fc668411c82e323ba9eb1c6fb720e0a9f530466b97d9d657f59c9766f6ce24bc0970ce0474fb0a86fe9600b6bf9739e1497b3d4827aa153b9e0db38f979fc2e80ace4c756825f38d0b66a1bfc0d03eb30bc8b07bc3c8bcaa4b43318c43e588e36258bdc6a80848efce51158a274b664be7bca5c16508676538a80002c6345f6c24cae044c0fa254bfdf68d7be177842407ade32f4184c7c43912062f1a3c6782f93f88c15a70a67bdb17e3d6f04fd092444816f88a098454776d89633e555c3cd091689a57f0ca20a51cdf8eec09012fda02dcbbe62908811581073a2eb8045ab1262fb66d4196eb906822fd284cda00e335b87cb4f37dc58b591c9f7eef2e2e04451440460e34630aee2b3e194a4754a9ec39cf41532afdd99d925cc92a7605fd3c9ec9209ae5a117c6bd3005f164fb91677ecc364bfca86732b898dedc26c582bbf77901e80924efea989f0eb6786b3dba8830eb7ff597c29882a406b49bc0588abfd16122d226d8349dfcdab931b8583890497af1166d431e5178dafb3d58d3f62839ce3a462ffb313a1713195010cd1cd91db86e8e17f20eee1a02ef07f49304e1dc90e1821f424a8810db89e94c9ab560bf48c1f7963f5a84b90389d9fdaebe3c68a2c59ff093b06eecf3ce20c3f212b67b60297ac3521213e95f1e2f9d1e8987aae007a3c35eb5c9589757bb25e3b1889f6093e973e173dc7702a754336eb14a38d0d4d840eb225b3dac1d4986ad3b4d409f23d7d29324f831845c8c54402330db4b1d4116fc0faa7dc2054b8af6a94b3afcbf9e85e3fc45a71da2c57d769d0baf102fb19d2ea5731c05a0f3ed8c1bf8f9169cb57fed532107448491a8b8bb9817fb55b1d534b579b74027f80ce611a3dd20a3cf9d3f32c9ea042479b45befe51615fa77d13bdb7e6f59d06add14baaa9fefe3e95b44af9c9f424cf57dc5a1916ae721c299d9073fd960d6590c3ccdf224759e991407d14b54ee0b0cb11b309a9c4b8afa0cdbe2d01ae2922e7f9e1e938465356cbe4fb790e05d36b43259ff5a33b9539f913092e3b48e59dca7aa4abcc369915c3ae8f74188ddd1fae4225359fafaaadf1c653f0d07541b02e4428a7c9fd5d68cca2f4f16373c0da9eeb042f43e31ce9eae23e44750879da63fd867b4bf0ba93c60cebfb40ab732ee8345337f4d1810b95554c930fecbf971029c065b870b7085d097651c572011dab46f98bdeeba205d50a4ee8093124a3a39937681d2240f124dd8b4b7f96e8c77836a26a1176a3beb6e6af94766a7035b98268476cabaaada97acd03444b9d0ae28f975c9d0312f884529020c7cc1acdb56e4d253be814ee7b2e7cdf8407f059f5f4de11027a9f41399cbafaa4211bb2c4a42ad17a5092115ca177f810fc3971297fd003e85dab4090b105872d1a0d3300c4df95e6c8a019008e5c5c054ab16a84441999f630a200af454414d4a8555fe5ba8fe5d5fddf26adb39db359ce311bd5644aa18ac0bbe6eabe10f8f94728df0c2bebea46c47a9558575c8a0dca2ba34c2edf01a42a22acdd9d0b555e5d54079d1cee60af3f54fd1f79a58926eaccce2a957692efe156e7e504f0e26acd150b88ec52901f7e9ad9e65049f475e0086a9c21ab4a34de06c39b7a1844ca3eb133081899fd2e0b6d89e0f3d1f8207ad820f39070bd63aef8996917bcad5016206d9ee2ebf9eee94cbe9be15fa80ff7a53c116bc4273eae33e53f2ba531e7a8f80a66e33e0993fd10a0d9ff06934b4753e37790fc7a4450ddae7578c5004e3a40481c1913e3c212d725cd052bfa6bb9362a78cf071ba74c620478ad73fdcbefbde584c57db1ba940da75faf5d9435bc5413ae50c4a8e2c8109b0b992ef13b6a62e931dd4495332d4e5ab5f80717cead324bde332dd5363c7c584571ddc2b3b1e1704d74f34ab1b7b2d2c8d958202dba38165a943483626289129586fbcb43eb88fd9b38b7981acb22a9892975918535ef8768af53ddb786f489f786b5ccaff7f8f9c85c0ddac234835c91b2abd1a97582e8c2e4bd6b35873dc1f2ce26fdff7fad555aaeeca819341157b7d465d1e7023a8f404ccafd6ecc2296c8270a03b04519febbf9689f2fbd8faa1dbd83334d54acef5bcd7dc884306ec601525e3053c5820b110c6e9a89ede73b894356de29d4ca3835fd6d904e9618937b0e4a1427edfe784b04364c6a5a09bd678b88e0cedd435bc622519a7008c841db3389876962cc37dd43a8d2b940cb4e0a1251b48a49aee75a589942a8acb93be7587a5f3f95b41fa3f21d8adefa8601fa9c872227c6b61e77029b577569a99de842d9d74416613e4667519ce86d10ccbaaff15c6fd7e3075eddd8e41852dbd486b34c345183c9374511e1c80066cfceab0c6bdb72725acc726dc10fb90cbdf5751043f6552ab13dfba5a850bc7c0899d728a04b719d1d9115a09fec22560bbe47caa7b366edb80b5082ad4ee9b33f9f4f8eb67a1cfef3bc31107ab62d92071873a7a7e06b6412f313af45624e88372f4d516913213ab52f22375b714f17bffe5c5048f9fba88d85ab957f8d1bf0770caa729c8e117bcae41a38343f3a14a415b8ec55ac4d041c6774c3937bc462fbaa72dc8e30e3488cef2f074dd1c584617237a0dfdc9f8ea91082030b41991913d84f53e2961d183ddfaa82b4e2ff8f932eb8e98dfb571b2308c7b90d94ae24489543c5914d67582bc30294c01eb2efd7376fef65a8a3b418efbdc4737e304b002d16a9d34b1c7646161dda08cafb775e8168a72519424df26955b18923953032564666dad3f81c8a43cb8fd103cfb90d8dabd00135fd0782044eabb3922d3f756c6d27f9f2adcab1e2b289348c74568c4f6bee6864f1ac97ca56aef2a22bbe4423a0021694d3595736999a3cda88911a8443bfbaba976697d14732b89535182054d85e96ff9ad4105465577c10d4100f9a5d81ba5915d45a6591812a21c7d5eed3acc42c33f6e47240e530f05c4d4d6f09f044c70d3764832b34966a28b8a18cc917e23ddf4826b543e76752e718cd7eeefbef5593fb7598009e8887e2ba09ca6ea1065452a4c7d7585da673b7c840394d50131c28dc1b95260aa0efaa3da6f6a3f1bc67b2507afde489106f895c07553723f04cda3dfbb10ec03b1ea68bd1a2905e1d4a946404c213dcf8419236935b428f7d84fde30a5b992a28c30f1cf56d3b41ad9b7f5007bb5dccc3387c04fd39e4387d478904264f75dcf2c97061450d715767d0d594bf0cd46c48c28473e2ad0a280b33a496bb94880cf5ef5c6317a43fd77e57fab3c416a5636d019fdeae62b437e0c07d8cca614ca134cac9999204efe10b1455ee3d77d6e1557f20163b447cc55ad9e28d7affc9c70bba8105a987a1682b95ae37c77c63959b00f04a6b05fcf7203c74808202edebbf9d78b1705f266f986a2c895d283528a00e865a8fd0a8d0ac5a25d412965350523564f64c777c6dcf961bf3d3fc9be609b44a6a2441f283625aef09a27ed2c1cf4daea12449c3a2948e104961c6b67f99abaed8c22e7e6817813b92f30098e44add1ac8217d0d0888bf1c67f9aa69493145ec55ad5b84aed344879791c82e39f065f39b1c8ff47fd03e86cba2c918b52fd0a23eeb8e79b527bd6ced12d09a1fd1b21490f17bac2aad45d494d573dd9d02c9d1616328ca5645dda4c07835b58e3b1a538a0731d21e845d660f26cbab2688d0689efd52da2ec6a49c6ee1907448990efa98c9e3cda53cfeac9550dd66602431e9a865ef9d50bdcb10f8e1155df8d75ba4e7f2d159617b865fdd3f280772e29204f9f37a05fd0ff0aa2d3d5b0b16545d16c34aaa3ead7d07048b81b1880ec89ffa044ddef20556da8cc92aa897808d1f692ea2fe02a58d523e9daefdcd84418a52a60f239479f47e28436a53747490d5ff592911bc75c499bf994d3280f53d130133e5ac6c36566c7106e317172f9b3cad701d1365dfab20f275f8a0147630e510ac9384cd82b4ff3912c99371a2ea23f091a8ebbe6ebe71f86fa8d65e89e2e618f1bd43063017d64fe8d524519176bcba73b5892de6605e6c40b151820e367dfcb98cbdb3f8f468c5ef2bd8437df873bc281094226ed130e2ab26229609092450222aa4b7b33b8867802d4632989458ffc7985efe9a423a8eb31da11351ba6bd7fde0f024a01a7bd41d1fd2fc6529ebe8dec4d84ffc451e6306cd21973ade0f7da028b3a0ab8251f354172764c512882b6401512bfbad3fb8f265f6d2502e226c4e203f97a330f33ec35b6169da728e1ec1a9091e5fb18d759d469552b21413adaf353aec4cfc3f5982f67e3c63d392d1ac817a8c80015cd79e773586741c40056c5c18e792f65749d2fb79a6c548d619e4d0c936efb875b41a6845ef2b03960cd641c159e376a71dd5aed9ecea88f4aa12b4d7c43241eff4d7eb62665dbdace8258ac00ce98a494e32ff2aaa28c7ae2ca926514ef4f9044897df8c1fc7f8fc09c000b8c077cbe171c6b58a62b77e71a0a15fc1b254f307a3acd63f45d9b154e04f90bf320d1150562eaff652879297726440ac125a43ed217a487fd70a252ecb9d9d48ac893b4cec767cdd07d8bdde99c6a6699a60879445f20a6037f0db734deb9ffb968f4d78f36f9658d01be9638b127c5dacadd85144c931c0756d63815cf4a9a954c928bf0f07c398d7f7d0fce202d1d01363068bfd5f0d11a634c799c7b2299e9282c337a0c37970338b7cf0d1003d3f53c659c0cdfcdf5e0b872a2d843d37404463d2e5ab79eb2d3016f2ef7e9c1d52f673e28f777125359af48bb76d064be8e6c64383071c9d258774fb4d4a6a3f1015f09d0427c99ffc42e4141ac52d63db544406c93c7d6741c36665053360adc0b6075e7ea8eee98bd8520b2d3a1f02cfb483bfdb2d053a7e1dfb8c0f55ad6e29ceea2e32cacf32ed254c87734ad17899e64c83682e3d3e8a050b14c36fcce25c443bcf5828720b15b9cc65f5fc68e8764aade42497c1a7911ad83e80d665d926d1e4a320b8f98add36ab049ad5efb116eb57a8bfa4926d0de25ae0d51c50670aec154eb4c858ef1f0cb6fbed18ab801ab343868e24cc6a3d4260ce2c19a86c498e97c0a637902d25031f72ed6b5b4931b2b9a46911738e8938579947be4017c02b6e863ffd921ca1a56b111ddd91468dde81011ffc870de180c84e9e2e0173c796da0d7537115afae6901e80f5aad6726921afd5a3d2fcdd6ae70a398a16ec6a2c5fb80e4f52d7362e30efc5c45e7c6c6d67e20d2da2e614d9a947e20e74ad59aefc2329d6d5f9bb5136efa9ee00022aa5b991c68e80e2cce8dc148aa3fdd8fdd6a1ee0562aa0ec8bd036364c44bed0cea29733f2474bde6150fc742a9caa47c16353b58221c9fd7663f90cdf8e155ad1a990887b71e295a660273b6232a7c06c56de7bf1c3ba1def81834fda292c3e1771c36d01c7d2085106ca80ade1639b8bb9acb49d84da72152c35dc207d6d2be98bcc2d807727b46a162ba7973a767d7294ec4c10f4cbe605e1152322ccc5732f65f9c24eca25035c2f363a78c96e5d8413073d13d0af8a286a318a73e2d17c651eaf189c81e10f0cf0701eaa7e558422a0ae93481acf76e3e696cfd64f5a2aa6d0f980d3199882d0eea72c6e075d63bc01aa9507cce3c35dc8236c3521599bfb1bff6913709236495870ef86c03e884dbabb6d0bc16907fa0c67bca6b8aa5dba75c3e364cfeeb7722a28ae52f2e31823cae5321d82b584f7cac6f06aaaff055bdd2d06b33ea9bf423c7b929d0b894b35cb9f92b1b8e013511ac304e672352dc178ddf8786f1ebc941f1c7794b175538096547484608c5f898a0afa0c5f86dd5e75f4a6792b15e23d0cb48e05c57f28c3ebde8f76d0b816accb36daf6b4b59ca28aea74a2c3a8e4c93f3f4080dc0e3f527d6c7ae2eb018c4665542d12276d7788667ea3f6ff8aec0ff7affdb6fe31571a24580aaff1a79f266cf7c25a784922e46e1c9195c518b3e574f48e67ff957f385ddea8ea91dfd7080a02f37272429934a8538922fa2e64e6137374d5c047eb319a61e211442af30493b420eb9e721a1eceee552258dce0d5a26dede43103fa00553679aa045c81b6a1d7749b2b135b3d12e1fea85781e41ad258823a9f69849456e65da5791443bda8a1752657a33eb2914eabcc5d0dacaf58b65757a1afc2177820c1cd419f076b310cd68397492c61c2a615b0bf23c8f0f93bcd3ccb4020df7b92aba40af66235e05e924b80a98eff275b1e18b3bb07a49f558325435d59ed1a8e6c3372f3e1e838af0a9cb7484c4524c496b7917f5239f767c6f73e7deb5a826a04a653ab27a2901bef21d181cf2a88b08f1990144cf77fff2e0f623e2dce4279e8d1b626e9e36adc75d5945fbfefd9513daf88bbc4fd421b96f758a5e8116b7bfe86cc8348827b3f3af68586dde8e6fea721abf699782f48023b0e4cf25019db8a1f06bd69d80fb7e321f4b5a7c6ceb222080b8f80dc4293759079ab3734ce4b529e2a22914764618c811de4fee589213650495596e1b21e6ef65d1ebdf8d2e31485b745ebcf2280ecb404a6beb90d594aa4870ce801db6630c58a50485fae2b83c981d506a3911439462d5e97e01b09bf19a5fceeb420c2688e3a8a276c925a6d5ed230f7c00be5555eb8531e2d04da15e96b2a906a47d42c855e790ca0bde553ccb7e6874085f1b53d09589ed148430557cf5befcc5463fea5d73bcf48df840b7068deb932acf951d1fe5c08ff798c165f7dea8dd6ad36904baa6cb6e31dce03c843d1b0c9d341a5ca55911e94751239a1b3801b5edf908bd1faf0613a71a00b5fe8417c401d5a0b65bd49be49c1179525f22ef86135edad81640ab3ee7781d5f755e4629d4d2750b76751c8a3862806221155f76aa75e29425ae409cace3ca35c9438d7b2179648b7aaa84f9fe883cc4136e3d8ab8d84674cd3d3463f7df8d6bb341a7a9e6b0c896ffee8637570cdb8c8808130e02061b37181c6d7ca9a75a12682ebac65102c601a67530f282732bf6bd939f0071a4bd076626ab091db3bb46caa22bd4ffb357974ad41f8d7006b02937b748fcc6a4d16a3e996e7f7754ee3985a93194104a9d59be631406d8bd0351ca17baf8656775b5e7779c46aa680019e62ef3a36b738c8986378fb9358682ebca1b869fa5b3df2e54409be151b047c2281040a26b3b7ecbe5890fffdb1b3aaf16345f2a4e3516cd13500ae558198b40d1e1c921436946e5840886d8e4077528d63e2435cc0a377b3671055b59c66ed78429d4ab5ca413263445d6547e1e12f9501eccb81617c0e76a9941327efa2dbba65147cefbdadf02906bb2927ddf59fd8e87a52412fc586bf494586cbb2019db275a46bbbedecbc65cab717ead9760247681ca33d03246d81a7bffbcee5b98831b44385ed4d89f916f0021788286f42a5befa4212c57cef660187352813e3ed08ddb03748dca2288d3f3fbc1c95e584507eeff24aacc58baebd5fee9f1c9b0b933406b718c10ac687d4b2fdd91a9dfa29cff37683f46b1da170c35fd4b31bc6471f57f480fd53271a5b3e87e8627f4b6d739bebc0244ea591f13c57ccec8bcfbca8ec03b9569905fd151bc379caa70e138972e9a0bd1c6ac14e5a36076a42ae9b5c75811723c60531c4e8ea3c06eafc3789806308d3685adff6735d3c13313c20e66d3d2621268678094dc94e81bceb008b22c19c53b7df41151fca2012943ee40d5faf36a0acb4156a04382c604dd501cedbdfc20c0b992f6d6e5305570c69aa2470f12aafe27d0e20e0e0c4c6f1be9512d4bf22898271abe097f66f3f750e5f6dd7ced066698956ce8c67a7a3b35cae53a1c557c17a6e3b4ebb204aca47b63188798f0069cc56d1c309d90f1197f66040970bbd7cc663cd8c1606cc87a5e5e652fe013180e1f9db4d700fbd811a42d158eecd26efd4010c24d5cf874b41884f19c87a8c77c3c0f9a62b1142c9aad818c8a7fec68596f02c354e47dbab2b1ae0bbea6018d1be9981d77828e12c048e69e0c8ac0c2f19afd7a3044c1910301b969d43b181208e702d6c6174f2aa07fbc0789020078fcd3de11d88b8cdf12ea807d2a426633e938d01201b026074c796c7b5b4241bd8eedb97020aadc053dbf9d038eb17a2c34fbd655f5d3a6ccc3bc0cd73c6e0852e3c74b803c480536eca88a153113ac056510a9f8b4bb3485567ddd3a605185c488b0fdadebe5a6b7a7a5f6bbfccb7f14f4ec1615d9112620d1da37a65087bb338f9077e8d91465a7eb29b4f9e5f3d9ff4f9257ec2f4e8787dd0d923c99fe9816b9204370d5342a4f58da44db821988da3870b0de600bce5e91b46ca97fe6ad28151c3af1f7d3dffd89f9eef2d71952e44c9cc02f294ca4bd16b1b91ebbf59378b9a13a14644df12ee167e2b3a47303e3004798952e9c3228f046438ac272f6d2f58c1b3e3231492a1ea94c5012b978cf6335a65306d5a92e0a8ad62318783df61313c4dbad2b1206af6aeaec51b5a1e77cf93ef266c970116ec84536fb865e2ffc5afe33ff5bdc7c22d7f4127a55f3b1b9a716164f5539299305c8c2d44f9991bc673fc956be344af212f99ce2a0b1ce8eb32994c97fd235da62f43fc10e49a33e1c44a4ec25e53063398871146368460189dc5c35feba901bd0ff12b26f58ddff8e76c8347e943cec920f47cc2214a3e219b1c48efd3c108c520f6ca8b56795933fc41fd95ed79fbe1db8bf06c5e53544dd824618b46ea1045a3b2930ab9ccc6e986e4f30d93f982b9bc9049d802ed72996df6ced4204b2334104f6ccd4a7f17ddd13c61bf279b15f7342bec0b8a56b3636448aaefd6289b052fa728f8fd9ef6e9703fff7d026441419615778c791b178a6b6f0c4c1a2da7bd2345ebd4e235cffcdc0db409c55ab862dba2651c5b8d03b7f932c50b9217e771b01edb24b84fcd2c144c4e1fe95d2b4000de1b967cb98a8d78d826c7dfe1e75ce074b1c687d802efaee3c84bb42076f288b79fc4518a9e025b1ed9d33b129672cf9c2cb98f9a979aee516486e62cce614418464f988419f192abb47dce5b5a40ba9cd729dd354c5c8ad3a91e6f994cb1b8e76433898bc7f7276200f64c8aca3ed18475f78b19cfdeb5f4e1446c5d1d1cf77e6463b9ce7146ab3c9de5e5e8e975f045eeaed37e1a2b38f7a835b41d73ce764160bdd003ed5d5abec19748395099373717527495fbb8ad9d8fdedd95d4b0f11341c64ef5def9c0016481c7cba6119914d27ac0380b8bb4fcee7a22eaa562cc63e7bf7bbe02af8a154dd465f0b71a00c6e86f3f619bb15ebb3022d174bedf1dfd3644e96c45fa762513ea0900bf4506df793d5c4f4ea88136b3c0b7edb1781d66ba8b0b34e735677a0f302b713b0d8e0dd7416c4592faaf2e3d560bf2a90a3a790306c3d3ad09603a3992790e7a723c23b7ca86d70ecd0c34d861cf65a7bad40deadc0e3be19dfe5485fe70b4e94cf5c90f22fda418c4324f8935b2fd059b7ed60b244790845492505e5f0a08e5837da4b547244b0893a56e15d96fe80c7dbe980e0620920161e667af83993399e7cbb74f30957088ea20462de7ae637a028fcb9253bd8aca16fdd3f84779efcefb69abc2debe66ce2b94ac365339c9408c149550c3ecf83c94f8b14c0b87f7bbb276f6efcf5747048661dd6fab82c38205addd40f4515d4c1081b51eefbe549c69047da7f38b1dfc6ceb51b3dd68181467e3db2d311c283aa9082c1db56c8e25d62787c2534003844820d86f8f1256371bf855b2bfbe6db3cacc6ce3f61785cfe0d3dfd3204ff34fb22fa0d231d812bebff0e6e54d08859f2ffd6cb159744caa917a1da9a94e71c6dddda9e63c1342d04a4f9803fd60e9c1d9f6f00b16a0a1c0bd8d345544bf2feb15c5ee0662377a6c673e8f2e6f3c7539417924902950a2e4a753a73940cc871789bdc91b919d0db08c6150f086780773ba9543cb98b9d0ce79c9a5be1f68ce602434160c5f347d8fe92ee1ec9464474963c791cc7d815bd131e76745202e5f74e204135e2457f0cd20c1ed924da4c8c1b6ecbde34c15175426ff7a7cc24f251689ad2f19f29698faa4cdcf1e02388744ba720395882bfd63a060645284e27d4b2df79094216430dbde118af9b32d7ecf41055258e59982e801690b724c3ed2dd5a3aadb3bcf49d2a9f71386faee27be40b021cc0d3703c5d435c3e46dce5ec60595c415fac025f2ef87cef7387e2a8c4abf4ed23ca59868256e38de5095f857de3cc34cff587d7da1bf45b7dce9d08427059ee5dc87818c6a22f8d0ce7262c48a6dca42d2528ed8bb1d1873d7dbee79186e9c391dd8f81f3547001e6b77fc68720b7c88dc29c096a52d93a47338d4439afdba0b96135d4a90541b9feab29b06b694c4fb5348edc3b3baf72a56b1198f836ae1d3b45679143b6a5ae411627440d34e3864dc4eb214d2ec799478e1e169e183ce1b6e37f18877026d43600e4530cd2473dc1cab166da00afcb7a0bcbfffa2ac876c8e2fe591a47703420bff4d863ad6d8d77fa0bf278a976bda1a8d93f65586e07be36beedbac67633b4e5d6cf56facf09af6d72a64c58a8ffa8737d79be68067f5903468ac22476f029c4cfb65449b89f5d31ea9aa080b76e8f0602328d5073247ae57a620a04026205ad914202cc0103397938e6db2834bff73d45175418d42b12cf8ebf117f56180e7d933dfdc118f6187776230ec618204bd40b9d244402f06023af1ea58c7136576c5e1405c73e01b7cb4e1e164198605b4067837c0dc723b80ef956f7303a6a65f303df133d245eb4a2bc68cf946c08f37c1435cfc934d855cb484d12f2ee3215ebfd6adf7673be124c450283023b76627d9032985fa7a19608a7c03129b52de42431cb2735bb057a7b31fa0e194c85909fcd9547fd7ed051031f2e5f1588c15d9b5ada7841cf673ece7f43c6adfe0a55351d2d795ca656be6aa98f3b09d99c8819fff2b5ef591d9b3446aa0182a5a5e89063e4a260d65e2d752d6227ddf34a8dc8b8b99dc74bf3b49b301e8eee8287f29e080175cea5aeb91fb266034eab27cfd7c4d6f5776946c789c0febeaa73846e211eba7289f3e28baa114aef7dcd7782b2e5bab72f7d5f38165855ea138258996a53f67aff8f68d419643dfaedc72a571a84fbb995236bc13940f3056261695f0a6e60c36254709b50b66b197f7aed4265564e6082e0daea982d601ec644744e92d99e6200765d6e13a2efbcde58421a2cbf0d01bd6d0e9416fbf5727efe8e7999673e3e210f53a7aad15412cfa57fa4fcbc3b8923ba0504f4d5a1bb9f570f2ce4a55465bfca66009764825a8179c5b1d3ffd654b83d2177ab31a4ae591abda690c52d31c6ad08ed131fcacad409d5fe155cd82aaaff1f8790c668f066ae00b543979790ac1b820435b91e5a6d7575c5141280b0b873483c5e086f295bc8739c697c2a3e4fb2b080570aacd3378ad73e8f277804a933beaac1d30d0f595a9cc160a8555d7b8ec7c9d3dc376eb8e6d29ecc3271ac029a2d53077457224805c1925daa9fb12135455e8633609b1fe95f15e3d11b3f0e65265035c3741d5d989262ebc63ca66d30ac348a0208c9b4a6bb26fe6d7ad47f4c59447c14c25f1b220a49fd1cc595f38b75320e2735c9b69410184718a5e921667f9438838ab42c0bc76926ac770145119044a3f97ad2e968ca05bf010601ce28d6422f32ff3dd5912d887d12a3bfab09a58e444a1c63d6f59d714ba6623e2c4016894a6a892d2b8e2ac8150870827b3ae45ec5784466a9c90dffe67cb2f8d6dab731621a2b8c0113c5961a2dbdde4ddde9e22444bf2697f4176b914f9842be5a7e555a837af670fd17a7ce40d42cede463ae455333f24969fe32e4208325a6210278f7a6d6f22e392ef8965b017e1523903d14236c18c5a84136c5389cafcfd581e874bde99334a1bf72617b783048266db6bbe0ad90773dacd6b9bc5ce51086c059f6c5980fa1df3ffce34026dc3017452ff4d39f502d56d183d063e530af95f1497cf94d6008cc35136a68669295300c91d61d864596bbd9405a93e3a3900a4166e4ca40928ae7705b56e5424c92a14220df71f22dae23dd25bcc403287db624465021663a5fa8aea1a5adfc6c3c68be2fbfc8e75ca3ab37e42d89f3c818703a372bd49adef297531f667ef5c278fb99af279147f1b11d2ab5a5cd921720eff9dd2ab01edab6c9ddcda148812bc43b94dd7925fe6ac31b8da17383aff0dc730711f04f94e7f01d54826521d68d7ef61b150380f967d46d14f6d8f80363ce810bbe7fc2db49c5e0722c8882301b2d1b8570ebf5e74c089fa03917fcded89446389038386cb5271e68a462237f4bff84fff467327795588de35a0d4d1d5aa7df2419648f64f462d1523387d425e4fc8c98081f8692a1547548929551fa06a21c0cb6654311c28b9e0ddec01666c35d9e0a73f02dd7044415604240d4e57c52423bb39f580f608417c82dcd9b370b7f33b2dc2c4e74f8e74ea7416a9d1bf5c1b443e4c23fcb18cf020958864832f9ef6a0c7bc10218e1343dfe60f007deae54160b8a63c20b5f112345033f924071eb73481362faf158713d6537edcba5fa8a6ca9d0f25d446fd20b24b8a23649ac683c246839c2a91fed8325d2d93562fadf4d6d47455e6766c6dd24a3b480b0d632dc19da9c6943c61e6f5c605deae72c1ccd9d651592d45363f9247db62b1f10ea94d7b96db47a657beb6c2de72e5ad21b50299592d6b055ebb9c1d71c38acf8010e1586c3a1fe49d120ea4f3292f30d20d04ea35bf47656a9b73f209535c04336e672dd6125cc24a9c8156ed40a28329289f8dea2d271175efe2c3b9b96ab7b94722e03dfcb5583840bbb11e91febbb87b052899a1e489dfcd9ed1caaa07ae47cd7d70e0c1b55562a79ffc82f9055cf7f664d5dee0b11f7e71ee8cb9a2a844c8ba0e519b67205caddfd332386ae0e587a4660818e589b5502db93b62251192407f9897379757c32b4469090d241a4345ea9f69e3e1c19d4a11bedb01aad74533d47b97c824058573041adeda4ec92621e8b87ee2ab182cb9a9a5428f84d13c88b0f4b2ca3889a00bad432528a21008bd6ea2e01cb8028548ae7c6e89c745970f6d03c07eca9990d8cbdd80716f134a0b2eed7e81ea7a79b9ef9bd13bd53b80e40d99c47a940b48515f821aa80a7440d4b6c4704d05af61e230410a86efe547308cdb0f85eb739d301b90d8304c45ee96f9e23bde927917aafc387857a599c53100577be8e04229c96fc140e9e608324e5c6d3f53f5c7520838bdfdd151232a2ad7eaadb084bff4d8940a8bb659b31a938610fe1ddf8a6017fe4ca07a465ac8e8f075051b002b022fa9bdb67a6b07174f821622376ae58470fc2beddbe97be56a4101153323ff1904d7dfba5063aa5c490adbd8722c752808e4d032406762a9d0e61dc2aa65d2efa6d1665a264c563fb1edeac1d6cd268e40cc146931e035240afa8f8ff7d51f0d7a693fb5bc18227996b252ed54de95f3091c48367162a83e25209177ea2536b9b8e46d73458deeb700ffa1a9022480b439ac4d00bd6677445b32783963f0892dcf86b1c61fa7ab5d89fbd9db3618082815c68a4997d1321e136fb9f06e3e9b390971fbfcae62e2e518f78c0be3d696de201a826d7c7042754bb5a702cf9c38f960a04902b95b1be075013914beeb337219bfda32fd233cea39703ebf03f03cbc454f2c0be95837dafe386299dc3268b850f24ddfd1a9265170cf101e08f22ad8375b8f9d4c64aac809f5c9e73ff75cc058bca61495d0eb34253c5cdd67908b94b06bedae485c1129d6917a03c58d00d3a54c9a7708e87dbe4d284cbc4420c03eb6f104b57f7aff1cb7ce1e45bc9787ce575fc4b7ed4b980f3c6e304f255d706ac18ad4fcd77b32a575e3234a65de567a2b659c32538b0b07da545caf2b30e2cf026c20680c006bd951df722fcfe1bb39261c8d2c6a2344edf64f85ca932d76f815b9be52962a39fc8648ee1f60a15a6a4cee0950b346ae210536ea1b390f1345e898b042bda023e670e9156a87f3bd765a1d5e73de80c92897872adde8baad2953d6e9339fe6aa30e72f0771a6c10c1b2e72bf868bbd5ae4c20ca5d773cbd6a3a4aea166a1795ce7a095690e70522f23cbfaf60e8464ea0c31561e0bf69c3e0faf97fd532ff739b48b1d1801aa85c80235fb5d05ddbca047743e17123c6e2ab2fdf38c410db05bb49bf6ec5ff3e714bf365d4625b82065340aae436d3eef4e34d47e910e27591b13fb3dae06147c5232846f778b4a3cf9eab52e09116db1243afc31f386afe425599c440cf6d1d4e3c03dff041eb00baa7fe48bdb5da14bd1b0e7201a7dde41eee4a4429034e14e94943e6bda87b682d92e4275bed90fab1113d025e6016d25f80df41586f65fa4f1e0b61ee7a79cbd1251550750002a357a990be25a1e2f1ea782d2863ea23f2bdcb91679eedaf5c0b0d8ea93b3ef0720c88ceba91b52d666a98e04bd8b688484a44caef7cf70ac862e8dca6b7d1834f1602849d98418f99ab805bc064a51f909d47d40a7e7715d5b163d6aaf97bcc62cdbc579f522fe2a34005e00f16294ad59668901a61ee7f3b2f5aa7deeaad688330cdb71b87d17acbb41a3f961c957a21d2e9e55d7c8f9407dc061482837e3f7af633f18da1c2ce4485dc85f1cb96be579fd180dc918b4f8a26883ba79e985b866aaf1b6b35a01329454dab469c10cae001e9f9e1a9077cda9eca940728e932720696d5a1c378bdac27ccd019367eeb8614822cb103d08987f28e7864ebc292dab88b8b31235290f5646103d68c3300fc88804a5af37e164d7934df079a532ad86796ea0a5a87e2b4f866c1725e55471285c68007ca2698bcceb4c1873cf8f86359659c6941c2f5a8dc591f70decea408d8b6c1caf83cb26c5f0f20487e2f645036f07b94fcd328b4e0eb8a22bc31b76fa240a5ec8d6a9d049e741ab2ac228abe62a952aee3bf140ac0ed53bc01aed77a75283e25dc99292b11b32c6e918c882dda5a6cfde8e8a1139ed3a74c92035f18ccc20f263ffb458149939b8d53855788e8dd331f3eab7fdd6f469901f42d99976c26fc597400303da9734d3cf605fbc8791eeccb11396d2628a9b05900cc596a75d051e356748272326873369c98e2e71b3f576fee46d4f0ae2c72cdad68dcebe07f0253944052f0538926bb3a614a8ca521e7354687bb5dbb01a46445bc529c85bc278d423766828a513a5c01f2e04078ad243eb09aa4db58519851240d735c5075f1b4457e37438ea17d4458365e6f082f5320f4deeda587a71964ec322876c701fd2c85a58e7642e683c941e0da66c890998ae9b06678e5f8edaa28c047bf0c6168b25a23c1159c2448abc9fe18a5722700f64179865958c76d16ca9ed33c15a13d3dde01e1399871540b503547355796340fb6e744d10b9594efd33eec7dbaa15f4d7f857013144d5ee6a7eb66f3c033e3d7d6b3f75789bb4c1de8276c1ff794fe8fb36280e70f94839058014d950c22341ed78b95f718886d7bd67ce7b92dc23957eceb09c17ff79f6b2da951f6938a5505a8863407120ab070a64aa22375d5ee83d406c20891f7fe6a5baeeab4cd965548df6320f1c8f9b1c49ca1b6c992a67997877d09aa5f7dcffb876e185b9e699efd423419d3de7e026923d55d3cb4fcecf80160167e736db8c956f61a4362cb3f61fd8f62ca6e6849e2a2a9ba703b1dc99346c096ece96940ea222d9b90a76bc8efd6fe4c190f1e8ea0d111ac826b631f48eade2a85e889cc10c7497d1ef1a01eb7f539e7d771cf22ef07d2abe8a3d59be8819a32d1b3dca65d0a1233765247e431f11c0f66eb5a87c9b126b00b4d0648bcdc9d6be7ea8a33b8e6b842c063e7b2b71bdabd757de773896ae688d3ee1baa421326e2f8f57f00b8cd2bfba983f7c6956e3757fe4389bd7eafaa7023230d99093bd9cab1a938b42140aab0c2def96fcdd689f8639130ffb52bb1038018d91a332a3fded6da52d5cf18bd7cd9cf624b0b90a848803a7d9ae90a975c3c810ab5732ae2bca3d5947821db5e61d203ba3b00f658472232295d6684900168fe700607831a5456360a2d50199d372e4ce4365095d44873efae88d6220fb02a867b9a7da5fc5172fcc17928242f60b8c53bde74d5bf74924f975a2947767460035758063ac16dc158590322a1a67a95a53eddba6a93d106e052c6370f798f1d2a9fc88265d0c4632617a50f598af4d3a87d37d05a87f5d6ba45c1139cddd18269756ba7b6618b82ff36e99ffdaf127aade81186ecaa3134c30168c7c7431ca3eb078d28d95052326b9c38adb3b83a99013149987df619650f0e2f4cc675171b16b3b1aed8db98af650868ec69d5347accc9eb7f562fb3492a67554dbb11fc8e1f9583ba5bb99b20c13826375eafb0ffe4f3a2b1b0e945b98f97c09546f068f8ec701142fdcbbb57b4d111cc0b4d2ae852838fa0bcdcbde0c683f4fe0437c02ca64e95215f0f283e9f0588af614a8a5c5f56fbb29a27c82a8300ba5c17dc2dc9b6e170749b22305d052f106495006a7f94be862295286c473dbd7d0bebdce4826859cb1ce07314404ac8c7d576ddfe606753579821a5fe68ddd5ee0951054c7bf26654ed288925ff0ce79494803b3129c576006a18f426bd5e22d9843d293a7b1e7440ab96524ee8e46420fe66cf82a548161c4e198528211a19f1a6ad60098fbb912d89c2c85092ad287038fa17b386b5599baa040e8dc60965fb582218f7dec561f474882676050db315f37e1e4d9576bfd15a38fb6c8c6d5bb5c0a7d87ba188970e3cae1a7d6376c739a18e98d3cea1f7dba1bebdc046310f1671dc66d8268f585f020db01fa3ff8172cde7e75e65ae56adbd9a664971be9692f55b379a2903236a9ffd32702e6879e48e219556b860486119145561f64c591f87e96bc68636a383418f235d3457e4b21cf27cefc7c7f3edea4c1f6706f1018db196f25524157d3c1ce1626a2f7ea752cd16f80e7d55a0b2f47f8d5565f5df609ec125887429daff633c01d25c1e5325534b29e7131c6b01e3babaa2867dce0e861d00dc5a8d7f0d8874e81d423bb4390c09e74eb2913a475b2c04b35aebefa5bf3d6950d2e512f0f080f1653440e20b61ebf287927457d740228015e31c838651b4dbc64f9efa17294bdd42847764d6cce26a425a18effcd822a4f641749df62f93d1c3025869a611307d51e6a14517e5aeebc4b81886ec7fdafcd78b8c9e631ca57ce90ce25521a946129656de751f10a04ee81a72e3bd648663b59808fcf0a540b5521d498a12472085ef18674b8ef67688e7a365e2a73bd4858338a1a76b84d73dfdf7eafdef53463b2fcdd785cf54571b8809d83ba9d4a09e5dfc01e2a11897dba77fc50966eb84659006d2a010673bd5a5340a62179f496c6b203e1b6a627617635b179f1a354df2f60412bd0d9c5e5001f7b2bdf6d972e382cb95f49143a8075c717318392b571e19d0320ce468c6fce59497ba9c4968fbf062c830952d5579f4fee4a2ecec21ae7464753de4f6b41bd3ad8766139bc05a395740c3ed6c655b472926cc3e3cae3092be72fb1c84c9e6c3ed3dcdd7e476f845cd467eaf40ff62f6b2d7acf31cebb340bec7c994d8a861c337500defedda36a86b286afdb800cb3f919d3f58984e4895dab7e753aaed2d4069c030b81b8e8bd743d603ade395751e02a6f0ec05a3688362e7cfabf20c032709e6dbb43580e488c0dff8d5a4e801e860b80b5fb8ab19374585c470c9410b9bfd2b2cff9572d5d674e2468b6760aed99bfb489bf55e229b35f454230abcf820b66ed6ed459c43c5eb3ac9f6eba9ca729419a27c89528bc529c1716e24062185c5a469e0fbeadfecef4ebf90e81f244eba638c0de310d3af99c3c3a7171b04117a18a226e24e6ce011a4860c5e4522bc81ec5905a1d9a963cd8cdb2fb5e6d4d5c3a4588dcac410fa6097dcbb52da06441435f97893f156a72bcbfbaa13b9882bd1306baa76ec11145912de2a85b7324a1a120fe399f45d5278a4fdbea7c26fb22023daef1fed5ea5c9c1e6c8fb223d19744fda6154fcab8dfcd268f36275d417dc61863001ccc50028511db84e4b8d497abb987bb8b2e61aab9de94d407ab660d6fe1ee0e5c1cbdbabeb2a4c19f1eb246fa405673a6c0383817f071dcf30c7d85392ed67e6956fbc4100a648745a18b9dbe7e0b160a8329768b62fd822e990435b929833bf08841f4db2d18f0fc1d6c861c34be50105ee1053d6d504d30e19363d48cb327a06e3f93cd3aacf329fc867b8c1304b324888f6004b43e640479887f86561f79e4e49c820b5552f581dc1c81e25f9dcf8b962a448e81b5917fceb62dc297590132f25276f335f37a3157ee7c437af7805024a6f8d091bf94c470a0292591726c8cd0b65c2940b7cab32126101b575b648585c1a6f34e20eca000e6ae4c869e632b987e9e3f9345b13eab2da2c2a8a1943ac2840c4bea84b87ec0343262502a135cdd02cb85bd3b0e1c70d87e91fa37d172fc09b51cfe34e60ae6a05326fff92ef3e0e0f72bc5e8c7aab0e1ba36f7b72b4926513b1169f0d6e5f96f8405d4f0288c0d76f96883a1afe0c41d1f17b1ee988f7b97d4272bf3f548a58994bbbec3577df82f9a30a07431cb08228ccb35d009fc2b5393fcc54b4292d0b5448febfdcb5f2dbc2719c8e4c659edd76d5e2ff3db0ae8c74b7f3ed4e5fbc72c2e079a9a36317d71f0c0ddac42effe688e1b53211e829aa63b59fda04ff8a5b64f0a7181447658bcb46f3ec9d6ead3e5134343b17354087a1a632b8c75d0c9f484f015b5ebbd056789f6a2c5056a2ba674fc71a2cf6b25626efc1cce865b215c3b03ee44e395b9c163ad5a4aac5e215d5b98dd17d3423afaaaa76f25da65af4dd076fcadee487f82a6d2d9f0631857ff9cde376d48257722f4a0e2a1b1208a535abb736480bdc8c1e173e9d569ee6f5059903fba367ce951c6c7c037aba69ea1b2aa8aabdefdc3da3ec0def813300a6513e8999f17255ccdf77f5df1b00bd3dc064307a834fcab055fcd1cc074123025a7f7acb44f17118787fd0ed33d0ffb6371853a6ab745f5852db8d770acef00a33f44e60fdb8e6fd3c4ada9714153fb0d1a761ceeeb920a4ef4bee9161f4c7361cf1086d7b5237560c6981e19e60bf46cc6b17dc8f7ebcd5a22606c2de0718c91ea46f614a761942a91b3e9a4696469702b18d4e4a09db3b9e5a3020af82bfb9199808d3c0b10f7b0c46e025fed027118cbe130e6c25ab7b1918348e301491afe10834dbc2e92c571cca520feea29488621e840aba1aaa70f7e366a21396044d1ed0e1f038f26dff7a95cc56801a6781cc0869d984918c2f8f09bfe1af2c9cb9bdbecba439b3609e2ed1c6f19e9db9c99d8ba6ed80257cd25dfdf429019e1fabf4f72490c5d32a5bd46cfc2019a5b79866e1f53571090a7de455852ea7003bb2f214f4499ed839bfa951ab2ca77d7b0666c50a0a2f7e5b3a034533d473dda666d0b29091325612a066b29aba77b7180d1c2456e2002ed16194a09a53282410fe5b0811a8c74d6a8864432e29944db242b032a9777c7b34a882e8e022ff6b97ccaaa502f73157e368315adfadf7e9f3234c556bf3f81cdc19660742383bbd85b9d74add4bb87384d6ed3e0d42f454e397788198f43703477d47f38708c4b1922a1d55cf89e06bd07ddb3dbb6b24fed4e5271e09498324429bb371f4bd6d03d854744021d82b90e0dd5bbad5283c98361aad73510127d19c2bd4103c7d21234d80b911f9a27e35321262a20d8d81cb116dd0e2d012ff8f78166693e28470af972a6582bea82740bf28c921da8eb7c6effe9e5cc953f9e3288304bcab395a312ae4e97801e344a4ec10164921edd6ce047ab3fddb4628f38fcbb299647ca412141ed603b4a7b091ad96a6e40142601b49ce0419d12694ded66de88b759f1e1f5c06ef112bc02b972954a8faaa55370be1ec4e1e5a13236ae3da30be6f8d833c3d80b74a982ae8abefef6c23553cc597a72dc87692d123eac7f46e96c4647bdd52775e406a57931c4d8bd79e7125d1a7a0a21cba3439c4d18d54f02a0ff5f6e1dcfabecdcad09ede67f972ac49550a9f9a85df7775ca76d387d78bd9759005c1db19d757cd078e3b12a11d031ae626761ab66dbd97a64b11cddf9722cbed50982cf8bc242b4809109a6075108db4a95055f28a1b4ebec89c49c537411d76f3c53574afb534377015c3be5d329af5d2b51e7b025e5f47cef369aa03817a63e153dca5888ae8bb9ab22760c37b0cf14fea9cdb94de936247e1ba1c22f927573f897dfe63b948476497ecef07d3466a8a3f05cddb52f491663f30a154365b78c89275268ed928023e4c7decb2e2b6ce43bb4cc6083307ad90193db83745946da1461391d038053c5a04008a8a266c522757ab0ab472cdc10a927df0ec6ee756e184850f947d0ed19214e2253aa3c3f74c23afdbedea49ef14b5fa8502ba8e6a78f2d390ad5788ad9b356a76e9388d0bbff9f7c8e3dbc1dd7ca54bf47c99f5e78f41f7a55dec39d053b7f016adeaf64d7e8ac131d3afa0b57743e99d6929585a0d192c535cb8d5be7bc8e9017895f68ae02829dd0fbbe99972264a8e3cbcab748c0e323ff7dca343940dff8bf8f15b90454abb4953450adb50548e29353c61cefe0f4f4ce1aab25beb0d070756675f40e39d01c19baa4c37e339cbe9202fe7e9f73576115118b2a7128a53d76318b232cb749fa6c6bac3b8330cab2c7e5f4f6871c48a4f4a405accc403ba2b836db7803f45b5556316f5f0f485255a767ce95d278f74051eb17d3ea8ea1d76df4f108bfba59dc094f651f95096f5655d9b04b82f2567db803e9e4c4d3cb43b265d9d046fcce6b731af8bf04e78b5c0708e926a6d8f9e2db721a47feb3408af3fc2e90bc4ed1225de14130f138ffe614dec43b5bef0becc05f13413a97c0e46d689ed6a07c93704227adb6c31293c81e5989a9bbd7375f3159b19a753ee93f2a5a1beec945af51e13373be2188700e20937cffd2a717985adc6f644ed2d70d6a2156d903f1ade14ab1cfc3bffba19db67ba4d8073aee7023a067329faae0b1f5bd552c8e2f71a47cf1ed4d577b9425ab822ba9d679ae0dcbae2bc580236ffee55c3806080bf2d76e147aa3217b169487fc3a33d25401f768eb5eab17d03d4d3201fa6e2095287e7bf632f9664a654225f736892a73b6a54f860b65a62fd93a0b709cd2dd36a9a3f8a9bf429194f1f0e986efbfcd3585ff1cf32204a74202d5627be09b9cf3409ab11d5482db01bcd94477ac2d92abf3d12aa75b223f06a2762f8b7c22a737591ec6d679274e7dbb402ed6eecdac6a0a6c77010d3c487c4ed548dce89704254c6cbc117ee0725be13983206034cfe491419e04a25903d5909aeb1cfbcca1c4b08be0f22f4faf1b30a70bbcaf161bf45e4233294dba860fd394c45ad0ac73728c836b6c1927d1b26aa7a0e1aadc5127c66d994c5446dd58ea507175cfc40b339c515c91dd69dbb01c1bf6815310d00478a4c91d211f0f834139c37acdc1f0fae21e140e4f8319e0246bc4eb053478a9d79287df21f7f7a296da2305680f5c8226ccbb6d704236086d3c7b260e054a41feaf1caf33a72c4c688dee365c5f7e01ecbf923b0cb71468dc22f1b4ede290438db001e4e83df01b150766a10fa4e759a2623ebf4e3955f7def38a1cbe8223211238241a5d87c781294a449af5d319a7daa8166c54ef4ec03b5f68e3532f496f4797146ed4ca73267aeea9ed03a0903a04336cdc99f31b1e6b9eb6a311c1ffd13fcaabf66a3db3a755084ef88e7cb716fad54c521e181b02ba51e0189644e143b74323a4c8504191b593cbaab6099334cd40116049e758d40196d678a6a5df0010ca075a4cc8bdd415e2328990457e2e93657e72377574b6cd2df41e93d195bdd3a5e6e8d8f1b65459dff7d38d2d2bff9ddbfb3883ae54f7876e252da0313929f6a64c5a9e48851171fe286218605af7e0d2f8fc2482d7be34a7a2d0d18d362b111c5a16bbe894d9eea96ba3248788ed7c332c7f19f0040767eb10da0b812a3489b40adf22c7ee7a3c4f5e6db2945ec0bc3c5f5b1a3018ae428235feb339e7483f4c2e219ba961e347d9b457f9bd1298b42d386c43f797442b227f8c747bdb02e8da8f4857e5e8873b56c86884f781d04cf9bac0e9947e2d784f78dde1ab9b87f9431f1da69c03b3033e9abd24e3da6b5e04697cc616a5bc50284928267fdaac5c805cbd7ea64fd77447c65880b74555e38ba2a300da97d0f6a7fa5474a27569791ea762f8a7244aa024f9e0c7e14fbedd3b7707ce9786069cce2ec8d8e3dd557ba96034b996a60223f1756c92aee7b364d63994e7a344b9b8fb73b4e024d5a3ecd804e97f7b8b629061ca9ddaa38aec564c4a90ae3cb78b13d6bee175746e423ced7dc4b847628092e26e41f616a201f45d777b7099722d5569d96d0551cbcdaba8515f93bf266325f24361c4fdd54efdb139052c8c64445c16fa8158b295f84875fa671e0720d0207fe7a3e6f4b7fb92e985ec4b924d85495bff85a239406b9fcf6c581f035b39804f4c357333a772a275a2a70596f1c4566b0352966baef9052af8fd17f8b5bc9bec7cb282a23ab070c3df1a49d48a303997aeb7a38c9bbec99b66a8af4066cfd16dd76a115e4d85732166de4f28573c0e457a87e606d345e09a05df376de5f3318d187df8f40cadb29ae2b92ea03804d2fa05583c43605315f16cb3d61aca67389086810677321ea148b18aa7c01423ed0b10ffc1d045cd182240375d0b2c1bb13ff974fc0a931c202895f511a2695ebfbba29db16cd86f4a1e382a5cfcab59d38540147884264f1c62f6438fe6275791ebd0ed5034ab0241f67f4d4f15f36fb41019ccbe707ea24cb3b0133db0667c2c65789eb77e9fc74b3d0fc4d3561e7695b28ca111e78a620f591ebb2b94b4fe3e9d03530cd332d22d1e99bc956a07673882db4f0018ff77ec1ffa2af6129727d4afd3d1eee74ab00ec5792f7f10110e85b8c691cd409f0fcf890a62b484b4ff5917afefce66f082642724fbbb3ec13da268d4fef584b34c0133eb58bf4854652b970816169cce6b2b4cd64892f9ed550f37cd3027aaf180879d1f3c4813eda34bc6d9558b2905891ca29123b078f13047c34797332c4f835e5f1e418387e9a950024920faa5a11869749a48c83bafcbbe8d69e1d08bd50f7f1628afdc8062c819e89fdaefb1ec2484be0ca0581450f6f14e5d7b059c193b40eafd08efca82047d5e5baf44f1bd682d07ada56d94772cd9daf7befc4b410bba12679cd266f7e98aac90a6ec1a2f4849a4368c182fde315a03c1de2054a950ac314daacf6118f26bba4c0da36344b8cf5701a6f7628ed6f3511eade5891e631c05679e141d031e689a6d028e840032e3943eeffa2a1d2a2fc59fb20d66bd06599d4bab76d0414821471e1432d1aca0dfa6248d393e82d295c20a8584eeb823da9e5a0f24f661eda8e55f51f13009e42c0ba471882a8688472e29ff79bb34db9e8eb9e295e99a76bcc78080ba94bb848ed8633c31a63d4101f1d77c1b7437a96bd2b5fa8f55bfe6676c1bef83f66233041dd5d16bded7a490a1aba196bab365f3944a4cfeddadb6203b8230094706e84cc4d91a4b285a98cf9b554d4e469907079a1e327ff9326555d64f4e423e70d13c944ff5f8b3483a91483683bae8adb06cdb55323e3d952eb5eec0ea9a06ce75fd3b96b75cc95dfb13e93d4dbb4cabc0f7a4006559e2b12f0bc4a57cf013af3172ea775dfaffab4eb69042a0542cdb4b0cf9158d9259d734e7ccaa717665301b698a69bf9df0406c9e22b6094230076075ed7aa572cec6b45e89fcf6717f021c90ca42b48edc462289ba9cb76f742a9bfc4a9fdb8219cee0bc3755d4d75f0ebfe9eb297f99383448888072b5dc72e9fbc411a5737a6b7a4869b1c6bfaffed90f6d6dd1d67709c02a8764e1819d620052341f5990363a3976e4d2ab134d0ed6317ebc1b1e950d0438949d6995330b5207eaf7c38310db18ed810def18bf7b3dcf97e559751fbd84627466d8dbfeb11f808ff623fcf1b33c79a6a07c31394cefc857361a4af609a6a53bafa5d932d2baf85f389ce9b910a18606054cd1467bab31528f7080d3bd0f1dd0380e8937aa344cfe433ebf416f43dc7e966c1b04416352f1f1a39b61437603f9bf82dfe4d0e6ed1147f3df08ca3ce0a7566315401e17c26da4c48bc5c50cd0436d61f9bcbd12ba4645df2f8795129422b04f7550719a52b149e6a7aeffebf22a2d74b5e671ab5ff8bb99b0655cefb544bfca0acc22aa396c2a65ea196f68974827b574e4146e4dc9ff41df3104d2d6e9215ba16e996794858d16e0ba73f24c226890d838b97c884be3c5407a980c84d71a38736be4de2a189cd09cf06801a0ea1e4b388ca7fe730176876b7f71326cdab950a08f929c89464738aad0befe9bd85c9cb7ef7cb0061a602fcad801d6533b2bfab0d4d615f1e71488ed5d5db6ac44d2d0314ed4864b7dc0d4cbded5530b6453820eb7e442d8c8594a2c4b41675b1e68b8459a8bb24cca58eb1e0e97da1339942456d37e6032208db712c7411c2089d4961ea71f7749e367624e4ae5d7313ae802cfa03edb2ebc84e0fcd15ba92787e5ac9b388dcdffde0915705726a3430851d60c2d39610edcf4a0ebd9a900d3e075111f6f60e5780c5f8aeec42c4f096c1a29ac3226e77cc97a4c46c8f29da98ac13159a16a5f3d4347a961a0242383f65f10f141cc06c821c3dd435d14b388caf0e0c454723d930fbb8a0987f4b930aac1af46b8f12509de88ce185c9ad6bfae75895ced4fb442102f0a59008deff4d0bf18f2b10159df4a5f7ae6cd882315dfd236c4afc65193c111c9f29a56c9a2e9a8a8e5d59bf80d3f4b96160030cbc72fe29cfa19cc73370294bb9d0e32321c95c76fb527f9501753b286b0f66df4959718fc271c1eed5b812db3eb9116bb408ae164b24504a4231768f99ca1673899254ed9a8b667d0e6a3acc6f7121bc09a5a5fc0174e74c0a1a3043535697ce35e7d618e50c7834a6d4708d7e72be7329d04479f2eb6bdd9005b7c019b37cbe5eea3bbc8aef49290f638c623d779a1e4f7dd26de32056cd6c431034432d4a12e748bcc856008e9b42d13ca829cd90cfdfcbb609d59a206aa08e413724e5a54f6427979b2192df168c3f1ebd02f5a4d3dd8740f01098c2fda0380f2e21b6e7672d3425b320d38b04c64bbaba2573313785f0ae3a4379043f789dc929eeca8a90f80951ce02a6c9d8b9867201effbf7d6306f479008bb3cf1b2737cc2abf67f2832ba2b1fc0cd0c21ef0517de0a5a984afbd0791a81bd357991366b86b1eab58a2f01efedc17aeedb8ba9d0137f095a8e8fbdcb1a55594da6119aaf2146f065788ca831699e27be841eeee7eaddf37acb83730b848f500b7204e47ced5c83893cbee81166f291377473cb001d9d6bd81b56b088e559206976bf0d6ee599f19f9d60915aafd5310832187b3b3a347fd195a491dd121e89f031a3c36cdabab688e0329b36db3fa4e2e8a8cc55fcce6b4d9e82c7697ea8eb042c28ddbb546f121d8377633322b24b46f441f39547b89167972e781053f143156120f640586b36ef099a83c6256e84251d1f842dcf0016ae2b6e2ccf614e1f346898ad6dbf2b384fe61236c372b560a80444021d05913c292fdbe5adb14eef76527d2ec25562812983bfea61bf5e1b29d8368f6bec5c398aec2a1a79489266ff73905fd9151119302268214d5b4978d2f307972efd599facad235935db758a468843bab0141a13306fe5066dd197a6cd52b2dc67b5ac98379fc6225a8e95e50596ea45ad29d8ef9f45de5193a9f2e5805eb8d1efb3cc084186f306a30bc7ff83750ec9b0e4f65ef0109f5236a73d653d145b9757285facce03cfa057800df405d9c11365b6fd82cc63011afb1d97fa62faabc6e9a42d9b58f59c502ee71a563c4875d8b18c082e66efe730f3d61c848c03fd485648291b3a5c59857e1dd0b1ff62ef40c033a6bf6debdb7873b234ca57693a61a77b6b43c68b90d60bfc14ae5fcce5d6d0949df3b90dd38f2b436b3a70b71b193446a52f3683a28df0e4f58f73756c53f343df49b0708b8fdac29b6e4b4ca3b2369fd04eb239c45fbbbb070be838981846011d5d9cb41035ea0b6acdc7a04732873f9f0a8bdb9c2c56bc6489f0bc80c03f336c0b3b6389757d6660fa0cf891d7bbf9ecd7d321a7b32c79d570062797b443d0e138c1644c44d6aa1b817330f323ec351143943048896b14cccbd063e4372d53a0629b67ca24af1c58808095036b5b84756ed4632bf13d4a68d819142a0ad5bdce09e074ad73d3a0801e818965fd7203c0c3862e56c762794eadd5e7c60faa15aef6849976f461a6a202d92c4f37de8d0550b66699efc398ada9e906047fdc3e69ccaae0c5fe913a000763f759451f5c55c4db715502a90a9205a93864246e7d3351c0e7f25dfbd2f7ac1c03ca65f2539f538a61e424fe3c6b587795432b252d43985124e15b59e5b25502a26e84caf11d24cbb2e88bad80cf1e888242928d9766a2ba8f4a598056da248c8fccf0e2813caf3acfcff2f90f27a17babb95588f533ce0d92a87b0a03a54b8859f9243a3bce8cddf4fa1ba11ec2f1977d96bc70c6202a7d89186dd6e380c969de3e4a716c6425161f0b229e50ca6bda74e7b56c98994646c0aeadacb39d6b0c37c62d7faa55a61fdeb90bb7743149f07b722f44e47d1afddd52133fec01a4e9c76691a8bf588cfeed1351c8b08db710d7dc6f551462b0e0a767063a76233a508fad271bcfd6800d2c06834e7122c364f9a891f41f9b66caeb43ca819c36ee8bfe3193238efd3359329c14b2285c2b3bfc3030d7eba991a613c7a9d8316e93e9bff6e4f9abbde361c73de671137852def9709384129a2d11db95be39b3d23714115eec5c589cb8b778ea61cb7338c60223c91fc70b390d4d8a341e420b5cb6019aa0e9b4b6d90e8577eea2315e019bcf89e67cf79754baf1911696455b0137f3e53c1048040a3ac69ee6cec286b2368468762888dab973021d23761170adda6e15a4d713e2f83ffe564fd953163823a045669e9f3f8a674b28053c0b463f887ad7d0901b576714653033ca729b0fb4c9b1aee9e264b77a0e22aafa18b0935f6a46c518e430c34f6b034c1fc773cd82ecc0dc33da8f1ff6a29e215af31ccda7322b2e2a71bdc45246d00392f8df9d875fbbbc374404624833727f0b6604aac2ac844eb9b28c310d620f0d62f2741a117d9355956affb31268f045d1099024d8ed60379e4dc533d945456a608a0aad7206ad3cc7d92ca02b11e5e1665cbdd1d0607ee4cbfb1003d640beee0897daa3f117af82890c3aa6d33b555971d6e6dab58f8d73e33e895b6cd3cf36402994e02ad71a46de52ebe0aaa5c3ad06e1f5ad9a0fef1b48e963922ca532882569ef3b724b9c80832c63b87e73fb1429febafe2aca0d482f0caeb4494ca9d5c36f0ed7d589dd19ec3c2479f9b58412de214b165b3cd636139ab702d070b257c3fc2aa6ceb39bb5923adad8cac9f6f30ea1496d09e592c309a76b4ca9ebc686e807c67045d6cd67b485698c54816bbe4f2a50297431f7efcabddfd59355d08ef40be51e1169442ccf6f3d620543dbf1a89be1090e18acb131b21acd81b84cc2d1bbd3e20b7a1614e6098e252cd2cc7e37371a8f2e8b00872cb228911f93c3ef2e21b0cbac7a28e32d523f97b63202ac4f4f34a00ce843f807ba8cdf8daa64119f682dea2e610c27a6f42c9c568dcd436cfc13e35fec0e4598abd654c17b7580c96d1e85f46b36414191b7e32869c330291f4ccda8073c57fab2b7df898546eaba16062ee555ee964f861cfb3594d38b6a95cb33320ca5a9448d9423302975758d57d157b15617b8e8f9f6a6b56327a1d8af8c3b2edbcee960b05aa949ee36639c0968303bc6897aa2d69805805cb12adcec4075e1efbc3077529443197a8713b719f140bb82cb4c1706f702207ef8debae5ef98a7a2e0150625cb00678a092686aea297d65ccd983babe3b08ee82ec743a314b1d5eba5537ba41ee8658fc840e292b10ce40488e51a467981029daa3829d13c72809def343d878d3178e9b1762075f926f8397a62561863c26b6617a6107599faa3c1b35eeda04d108233249d9bdc6070f0d2089284d59ce386be004c73032746d2a56867f3533f74b1c56b9e03c19a39c0c7a04681b4af675f2460f445d9ee03e93e68f3cd0faadb3d469613a1fab51e57be5c047cb2bda9ae45b656826d6adf795bd83eed8b832f6dd261bd74612ce11db74f66565bc84adaa142d364db8386954b1c4a3ddd4c676101a553f4abefd097a1c00940ebf612d3491dc13b73b1324fc98845b4fa514a2e9c4cf35284e9be66f2fc10165f053ec3cb0dace2adad36fd1647006b113246a901425d448273e5056f89140070bdd79e7bff647cccd60b9ce447891d71d3abf69ca75cb8de28ed2ca119cdb642fdae75b055dc663307e25ac25b16a936b9933922f898c74254e058d745df3edd448be0ec8047c9782698072c78758887dd814a72ee9bdc1701a83b89ef45881d0ce29e9623d0adbc5c933120e1eeec9a2fb54f4794d79afc353a877e58f9fa016c0989661cc294a20c6a4aefa8e0fcb58dbbc86c36724e33bc4b8cc0eb9b42f53e55d08bc14c45fca6062c5d4f9deed006fe04743437db62906bcdd7b22dfff8a573eb661b025b08aa16d0d9f91264f535c2a25759424de89310e38649ddfec5f64877e3d16636693d2921ef8ff6f21217857efddd2dbd5256dded71cdc459fe192fe35d02c1de5acd1c710743fc6cddf104ca5efd7e1a6f8d814aef92a797c2cdb3baef57bd0ee52ed2b42db28b47b43c19e19513220e079726c32a5fb9e7e7c349268df38decbe37499893d2c04ba74c65b86cdbad9a253c61159d5450e93c7dc68a8a61f84874b153d53d58af7553ae8a41d0e47d59ee07b4bbb0ce337b5f250dafef0be46196616f0de867821bb004ea3b85645500ef1a610b1de645f7c1eae5f6c6f80489122321045ce4f31a40f2e2eb4600551d74a1ac508c887b301fdc8571d22f71d74450d780c0e55eab82c0aaaf5177e7682310c0d24279b837c51003ea1065fe69611c6753e5134d059e5f2a486aed95265c672c9abe595369e63cc76a46fe6d8fee43d2cc282ade9e985dcd1bf11ec9a6c83312f1ee957f6c57547cd41e2dfe3b73ffadc576a92f707e9b7556d1372436b41e55ba18f4f264ff059f52969c04f44ba29af61113a019a6ee2313cec646b228f475198457a5d1b899bdaefaf31f7a6e5db659535ad564586b9fd687e5cd1bf098d344f517443f5dcb6fe98fa20b80d0cc713fddba95c25b7e1d75ed467d5527bfe35648356bc0fb8104155e22b51e4a9db1d5210ffdf54cc0c956ad0971fa6c330822fa7e527643a7cb2458fad7fff49bac6ca231aca07b99461a173e61677fb8df6e718db3e08d3a13a2513ecd887e340668d4e11131455f2ed8ca9a7f1d65feb8e472ac7a78e254a7bd7097453aff0eef5f6b15e5061e992fddc6b50a7ed6e2abb127321790e4f284e2abcbcbe52d171791b22e37bca64267aa6eb4fcc0c8fd2374ceaee9d2d9ad5186f9a3316a3f76c51d2a20265d16056db54a319253e28fec6452518ba806fd77cb062765ead84394f799975156068bb75d3b40cc910bb128ceafc23a5eb6c2b5ad612ff92caabde7f53de32bf14eb1b3eb7ab819b8bef589dd23543dce79ecdd1a9ab1c6bb1ab9032d4d7eb1fd9e342109e20bd4bdd898500658107c56b8029dbb19df0fa0b835bdcb9382647c4da08628fd4e7fa7342fd9efa989fba98bec0d359680b55c414b1a4b424cf25f72a0eb44817e0891a025c775188aabeebb6cf7dffa99cf38f1459aff4b741e27b298c31f864d3e4bb30b07ce55a33213584b850b009524ec96be3c9ef253e602b7345654cc9482574396a172b7f0175b394a4a6e15528fa990bd0bbf04f563bb61654b833b18d8a58f9e359f4c5f42317aef046346e9cd802da21f3209dc77375acd0ce88d3a2e2f7a4d2dacbe1ee6773cbcfd7adc7a869a362fa9dfb82f6ca680fbb56ff10de162e6d4530b02511bb413155fe913e1e02677da0b6295c817f419962317194e05c7c68c1f999b116443ccce1b17994207164b4c06c66ff22981deff82a1556b50d5b2c164689553c539e7e1275197541b8ec59c2e161ee43ad944a3e8e70f6b0d535b56f34f68c56d60e7b7f78eac632f935d5cc5df5391b94c16105e8cf20e5c5915fb14859420c71ef8fbdbb0adbe2893d0cfeaf50dda429e957c8f23a8b557e6a7abbb780cb6f2614cda1a27950295d26ba91befd38ef642bbe40f8fc4bd251e3684238111b88bd8ef1063bec23979bceeb3207d1778776bd86eb44d0f5dd6e30b2b4c39cedc2e32490cbc536325f50c9a6b8f895748f10871f72516eb0097aa5ad244803af8ea49cb62e9b11569cd27eeee04c37ef400a557cd646e9c4758d0f7f58dee7a603f60d0a534df3bf0bda6b55ec0a81a194dc44a3ec2bc5123001d89125a88020af8f387dc416fe9f93d429fb83288e6f28c13506fd7e2053f0e26bde1d2e9410aaa45740653708a73389bd7a9ef4dd85acf45f19227ac60f2dc133d6285af29cff774544913eb6ae15c7986b94d55bfe7e41bc92652068b699c783efdcdac361c7bd0769f8b3fa03ef614991f73173163aa5960fe61d6dcf6f575e715221b0a7404655efd40b62cfecc09799273dc366662d994698eb00e09170579777941b3ed7ab13f95c14ab2a84e4cef3704d3917e8ee8530012074b7900b4e132f980413a486ba92104eea9bdc191af8cc8f0e755a246a0a5c3021c7e0561dfea15490d71e90d42b375ca69ddc4bc45dad4153430b33a7efdd9099f51e857bfff14cb89bca61fe1247af964c5f6a0a41d46381e013a6a0e06f66a3c40e9d78a16e465b0ca2589e980d23406a033230e3f7e05357c4f29d2dfcc5839776f87519d5d2b8a5548a8083c6d2148b87850dbd6d9f43b4985797ce3712fa7ddad5d917170425f4e06f9e7f3f5553b9c17ced7c1ba7d54cd365ec915d6f4214361509831034c91c00e3a78529cd9b51d4678c1c48198ad0d7ad618c0f3fd8a15741e8eaec96b809dc26e5f0d0634d1468088497bbb36d9fdaa5d4bb7f129fd0fc3abcfda336fb2ab1155b5e7d8c56cbdf26a193c6681d35d7c1e4db2ee8bab4a2bb28ffebfa02aafae842ea10a80add98760ff0f96c231d9eba5a7b04e8ff43647ee4666ac841bad7ea12dd6c9dc6f1b6fbb05a5f2addbd8305580b59daee15d99b16aae3a92c28a732e262a9aaa57922fd55b5f72919ee45d5ad4684562772747d8d37f9c72c36a4d24da119b0eed5c41e26c50160c47dbc9f95779b8654de2209fedf9e1fa8985f8312bf35f1fd12861f9d6de2ddfd7c6536764fea050726615c020f5b05ae05135d4f0e77769e9e8b7d5b488930fdc6677e8e2b0fc5bed1e0a82c094950f907ba7091af465e179c6bc184e4d661d5f6131af323f225d54ce534c63f52b73caf6d6fbcd4b08488939ad14db1d1916cb8ad31d79eb19f45e251a053b5ed350a27eacf36bced8f8a8f190cc8860402c69bc1787eb0c72464ac64b5c7af5cac66e7bd893e1468a0e161b33720c3abdd4b74eb2a52d0a5dc59e33c7c1e9d59ed25420d232c81bf1f13a8cd1fafc1f5878c5998a9257e0737c6eef28076c37badd6f3fc30dea136fc5778eda7503f25df5d75dcd8dd70e9bf7df20b387b3adcd05185391f23abd38d2b6ca932414b5f36374e17868e598692506f264927b346f0329c15f281b9bf36d6cc9a99c3521db76ceb5746b477d99ad529846f34ce660a206b21c9c9f7c3c05300831f09944f68706376966b28c3d7b6e4562d1c9a113d5dc805e99a0aea778093d9851de955c6280f2edda634873ca0e11fe9598bdfb1a79a3def6076efb565fdf6d813438e1e5b727d4b4d2a2f99f59bdc6608f4d576c8e9b0906e92797245f8637b65ddeedc90e62c50670e6f58aff4514fa3f5145904e9e134cb534043fee6b7fbc454cbb64b4c2ae870da148f5b330e7e59383883469f3c2c8ab236dd0da3d176f0dc4ab66c2ca325f14ac6ba9198d5a4a493462d6c222e2faf3e1bc14f6d4f83fd4926169bfe9bc10ad419f9b804299d7eeed45354d7a4f2a32de8dec5ddb2071d5f9a9c4f6f2781935f2543928cb84ef4cc15427fbde98401cc724ac0608b1a2d6fee1e4d5276c3f11efd775c469f1a3273f3c468da6646564fe39471f1cb700ad8f807fcbda8c47026edad69e8331d39107e35907910f12fd91c70d24c7e7e72335dc89e08472d6579610623f36cae7869174bfdf53429c2b7d1a03bb5d716b847b7e680634f6ab6adb03a261472f09d90d702ec40861ba2010343552c3677738088b0197c56d6a0dadbbe9220858f9290efedf2d1d6f3e04f40cf2d601d1da0a20340ce88a9c8bae187dd3d48890af4da11233f6558a2d52e011934345494cc3b44f7b14dcda0e73f47dc4af340207b3859b3e8c307835698ac20f08542fa686b49bf440b34ed3780137918a78ee5d515972208a7554290a48b5efe5cbe6417c9174dfb3acda22f9491f933d6cc93ecf06dc0379482ce88891a0baeda1b304b538c82ade9a5835b3dcca0b116311420f5d6bed45a35c693d09bc4d3c05c7d36bca5c34aa2babf96c712bf171501565f46cb2ba2f08064eae9d44a95749379d97e2b8b388be9675c0e270bf3fb93dc6fee14eb5d802334dd803a0b6a924ba333a42053f3be4882e72b832d80c39adac3fa779ba38b8800b994b4c89d5d35749e41a120862ee2e6fe29cf55c7d3055f45b5436e1d60d1a53627671b9b4e6a330d9785309b62b192f46b9af13d9381272da7fe69f78ae477ded20c0f0e73f7ec1c5769a1fd4d680987c546b18546c2676d7d42c5583a572f4a94ff0b80bb552c1c2d9adffe444f4aab70d5a543223164775662d73c36e9e7c1d2fcc0995c1784da793a445b324483737c86def533e771cdb8b9547632fb1a7fa4e08d26f79e863c8d1f8e9f55eb2f3eb230310b8e293ba2b4cd48d574df7e860ce911a28f3a8798921d27d11ea8b484cadde2dd83d0211d486171c6beab26eed3059533a706683e363448ef023c13713e20585c4f3d109d46addbf474be1c48d3f71d0236094e7c343074668f5dc84f0654de675fcab4f246df8f76fea41a7f2873079b4e37ea2130070cc5a379622283f190fefdfbd66df7d5c95d80ca5a11395e10b690abd84e26eda6b7dde912aa9f0c90866faea4e64a830a6d4459f9a007ad7e47a2d793fbf861f8685cf21211ac513850c5d2fe26f05afabdbb9ad8d64b70d55bf4d95dbad87b236a5e1db05f5a5edd5b27042d4e9e784f54bf6966c70be1e2f2a74cd227256a3475d4cbd43288fef7590008e0d5981396e637305ad0309242b4c5cf4aeae037bef0f52050161e9d85beaf1d94b5c3298fbcb1f66ffce7f3a35b22e01f4422b613764170f01623885de923e68bf2c2bd6e5e5d9963217a2c7d0b79a460f53f2a774360ca8c69b6f85c0affce152a14a298fc4f9a7622c6d03a9cd4574376127092a0a5938770191a1a8b983ea4031762f70e342006a03c4011b99ea41fd20b0d25ce9a178072a9b1dd38657a8a09d3f2e4227a3c5f4bbf555a97041bdf7cb90f624b2977dd8e63b1ae3b32de0cf6e94dfe714cfcb968d569d49150cc023d9d2bf6152eacedd5538e0e59cc5db8f2e0665f87da28e53212d0e90eade0a72e747edf4d516011c7309046e5509f7d711992904d0c64fad23f70df638cc7068c1e47840dee896f33113c365cc7e492bc01aacf7fa752e9f3c02e2d1035035f4386aba1cfeb03c609df1add61d02f1ad6668dee60f303f44c529b832f7b36cf526585046feca377bf36a2536129deda276725a23b62cfa6778b4de8f8163daafe15a3d815489732fa3a414a6e2ad80213629f92d67cfb7b792034ff13c9cbf1cfecf445b09065a48a27783120683750cb88986f51bd713bbf2cbafdd8914262238a85ec5c93070d84ba82b1325dedd513cddf26b78b415bbf8b4d79613c52e0b92ccc2bb5f31eb6452c6780ab7cb001aaba0d1b5df245d13db043df7ac3b8750eb20bae8c2150dd677a9c72762b68845968488dd67f13163a8112261e1d158023fb3e74896b12b6595c7d969a8b2a0cd96ebd1ee5a600ec53ee530043f92353b3f6c83611cf8f626769a7b246223b80300567de5ababe17ad7fb1e62dfc09d40b27abb3e2290bba9824381f999a5ac3be7e022333eb3eba7087ea144b7d149b8dd2325a638e8c003ceeb239de3d8866ea84ed99be4f55aef2e97780cb41bb69fa8a0576bb032af1a6926d8389db97f37ce2cd1044dacaccbc46b316222e2323f625f36a31b41920c799f919efd9421188eb64546116a6d44008ff629ff189485efc299bd107a51d49e5279c29bbdba41a0d5b25554a9806b362ee6fb10a0b775b6b02a8490c40e978597ca69158e5e559b1bdf8b30c3b0a75f0398504f66b7c6845ac704c9fbb3fd13c01a9b64d063bc3349ad1a480e727463c48e65254aed2217baf565f64b666353dc5c2cb06e4e88aec79ba14e76088903e7d43b7e493121983d6ce84cf6a8ed2ea91653a732ffb704d62817b30477ca447e1abc0652fd830881c224826cf5a985cf0f21d82992f269c29f741cf0898c4a36aca363cf60e1c5ec610d78fdeed7355cc340855410fca3f555df41f1b1dd9bbbe5f5a5bc183365900842db3eeedf28baaabe7c411d9b900325142fc0a332fc018b7d1d1c37e6cb81202295620e1fccb9ca0ff0810aaf164739d4808851d3ab14a44872193a524cb20323eff47768c5f9c0c316c5a6ab39bd16758f223f163c271bb9ae3e5e58152dc5cb78e1a59af72f755694b16ac291495fe6ecd7f726e40ab92b1e0472d685ffc2c7003e1ade7721311debce50259e810cddece87c59c0bd980ad668b6c688d49493f49bc652c34dc0f4246131703426331222fa8c16ad9f08035609fdc375aa9d4f932c3d6351d495818a93870c6d763cd4d63eee8f0384ca3ac7c8516dc763d6a5efbdb76eed8e94ee98eef794dfb8645dc3d01e1dfcb99db8aa03eeb7ff951056be1c8b34279f257769a0cfc847a94d641f318fd63b51064901468fa2a782856038b2291d1f7d5dff36485981809a8c23b3af003f63dd787d5d5b1c3b2070eea2fc0662483b36ccd1c2b0310419db49e1857c7e3e4a36c793ecd8e04f22b71dcdd44f0c0a22714c4d940221612fd9804b7a96aeba886e1ad49c437b92b68f5d13b727d54e40a7624d454e7f5b7faa25feb6d70ab73c9031a080765389f7fa924dc98275c07ab64ba726c4219aa4998e019e87fbf9cb622a133827beb4ccdf0543103d3a3cd5acb3a2e21637fc019eda9ff805e76b7cd7e0b53476fb111dacfa98e7f61945d90cd40dfff5d799cd3f2aac8e463495b4323c50932bcb9a0e9294b56f0f9e51fbc17d4ff73e3b4ca01c6da2646a2e9cb85209e2d35cf29db6bea270fa2d69ede2a04be1ab0596513f0d1f3e51b2ed62604ba9eae7ea0293059b0a505a2f6712d0afb8f7797f7ed1536d343a131bbcf15885a3b1ef2a663c2ada8ee343672e9dc6037bc27a0726e6a9d827226b0d079ef6c61bcbdcd153e3765aac92b49f29bf1cf93bdd83ca82977b7306cbb2eb3a84340da4b66d2d7fd6f15d6db5e5444edca2cfae3398d362a87dca8e2c44208f95b31333647e119e9eb58931110f53c2f1d6cba105356205f0bf3bd354a0aaeb3d22290addad9f42eafc5f475a54631006c7317ebe60c6546ce1278a594674e2d4612cf7b305badf209b6624f9d072521218536b7e53981a56d21766fa247474580f52fb3d2b7220a91ba33593ba4a06146b5175463b8cf826db2eb8659de6951010c347cdf93dc10625c9095a83914208e9b420c03ef1a2856c78218f9cf83bc9225d2e8a3cb7026dcb29f07dcdb3b8daabeb0c1c417d2c451516b78d4d5b9b9df09a00afe525d36d2bbca6342731ebff8c26cd4a79ef4762483c83762e243edfcf19f5857cdc3828fb62fb9bfa7de7ad02b8dbeb373b5cde774f8d0dab19a4b13a212655574a217ae07d600820f9262f749001e86d079926bdda9d914076de0e1765db9ad779c899573804eddb90ec1f514772e065f183819646a1c5f09df20bec7169a2b2ea32b10dc7aefa72eea3dca735a4e0ba50fa98b2d70c63e5452179d386c7925934314b34b779209dcc430012f8783de5354bd78e855271a55d3768de95a48b43575dd61081ff2d38eb39b08dcfe5a41dc81d05c11e65c096cc6eb1c1059193b9946e9b8f83dba3f03678cada7b636f0357dce519c4c4008260f87f4ce760d0a99029910030caf5f3566f11067b328e90803f9985ab5141f2108189405f0b65bb33e943266e80a3535890dc5992fae91abec5749b1e3a8fcde88cdf43cf439f74cb876a99e45a0c8b5721a0cb9209413604fa6957a7384dc76d9f359c866d8091319d0c16f348fdbc2d4d59af34247e96183bd4a226dfdaf6b0388e0edfa6df5627c6915f7da39c6554644a5a417a41c169eef7eebbc4753bd9781b2e4352daa95d086c39587442f02436f2c98e88355f37c7ed529d47ac0d284d0e8a0c1c7652f3d65653cff24c5b5f7be5ecededd4678c48b29ad3c8ab6352862d9419d5d89b84523baa20fa63debc561bf4ad851e4395feaf4ef6e237ef267defcd4df7d0ab188a068ef4ed5311395dadd9a02e50a928aa97af17cc61d3a249c6347c7bb021300cc8c0a0f6f6c98732cc2fe47b1b5e1b67ec0dd7d4cb5471b41444af768c172cd17c79784c2181eeeac79311397db6db659e0d32e49fdefa45b6ba2d32d669ac1238861318a1a71e59aafba45aad4747b7de6dc1a90137615df2999f1bc410bd388a5312ac9f4f26b4e0767936993a7f422b757be2f3ae5ba3da6c642c4a390a6ddac7bdba60c386daf118ed02d62d081f3c4d77957f0a093e1904602d9327c92b8cf7a2555b46e19a09b10c1df9d02b9fb1a34b6d47b596048d136401680ce35127bfb68386009763adbf3ded960b98a73a7cb341355adb642de4dbd5599ee900addbb152fc27ebbe0e9e5ebd8b8110e869f9b1274a6ef4909a1edb3ef5cf5f71e6e0c4a2768e754eb5e514d908e7e89a6c82cc60ddaf9464d9f16903d6beaec3fdcd7c82bb54f510710a5152d3f5da0179c503b84c04e0a532b9d508b340681f722cf50b49277e642517944fd3c4390d2757acb3f12f6828e66b5d9e0077560fb89b15499dab3fe151733bc6ee48752192df3deb7132642172f709cf145b77faedc30cb122c7ad9b055aae729ba4b0788310d55a7889ddf4ddbeb43f42e365a4ae3a90a2141d890c32c922fc4d8b3fa99e5d7cf986dd6ed0ecc29b557c0d1c6150ea8bd9b885ff643b9f4a7e74617bdca1b61e08811986fa0e491065cea83c816253266584c7c1ba53568114e900677cee29ef3b5ed524f6da4360cfd97c9c75fc7d11c27a83c036131445fb37f2c714746418634d4e857f4f4196eb8fe47c6e74fc190a64740ce573f81731a3c59db6d2a8bb5ff16787af3f3037bbe1d379071113df3f3f7c53cf572268af3ceac3b5879d175cff8f2be277a98cd42a264499767ba91e97c751712fe4ecff7f31e81b591ec3f1b0cd2d51ca160501dce358f0bea0ad1065644adc6dc21dbb648693325687708706e4e254d1dfd5e77656481a69d6c9f29edf8e9243c92080e38ca1b702a94a1da43fe82c234454149de83a0e28f3f782e70e0f8173f9d8f90e73fb59da8722da7e3ba76576c14728c5de4cdc49c33034de7e7edf68bb2003c85f226db463ac5c58db6e0027e3cf52688ff468f15d1179111451574d246fa66e7f35528e45d67467862b07c68e7a071fa0b2e059a8334ce1927a5a230d2637948bee69d4f355c9ea57479a9b810b4d7f9295f752d40fd3711e8c6c33a5589712fbad5691ebaae48ee99cacd26044f3302d581a024b15627eadec09fae01770913423aac432a68fa20c6cf84f779fbec7b47066f2f02162d78bbec550a37debb7943fb2d6d687feab436561cbea0e855a1e141a5ddceaee3799ef87a46e46fe1b5c45a084f6ea65e82da5e6df678d685877b826b6c1e2f7e1a2eb2f7e8db5a69ccf1d65741e32827914da9b00b0a0bd2599ca068a9130dc4df52b59f08221702303d33f43eda6f9b228fe9a59da8f1280b8b50cd49a5fc953639d0eec64229f03e4539a61c3414c2e0405b4014aad4792a9614b8b696651afaaf36d987c5ca555b14915e176d08a51dbe1b7e10e05e8be57b66054efa5a186cbad9472e686bb91c01fbb185dec12feeabf47a81691c8f1b8e623eb243adc77519bca9afb97d3088c1c44523e48902796102c9d52196ba22d8ab49d451b0824bc2a2c78d9dc83fe18e58c80065a20111e0556d6d4a1b7ffb46386bfc42dc3ea03a5e9a2d2aeb36362b3ca13141881151b8cc4fc10d668ae7d381b0bcefa9cdec14874ebd35103584559eb91d58edf45bfbe25a77078cce9f75bcd436b3f536c09cdd153e874197e198dcedfac07639a9aa100d76ea92c7fef45c854043533353b081c91c98fe83bef0247951858c18a775727e1259ffaf4130e345a675322bf51fafba5afa1183d4a935c92c8ffb24038c8295100818cc86d1ecb14723debcaf97b6089ac383cea2c4dfc239c555a4495601241f46f417fefa19380cd9060cecf85f8410e125bc8f5a8551bb928271457bae9d6f008fb70019811ea8da34ef6e8503e87c41ff2fda98328780b743ea8852ddaff880e0cc33151da36d0c1a09a28e51d7c919b6f558876783b020dc8ca412b6a5ec07a631338b7bb54f3d5423f7ef669d54e09ae2426351c5365691644a66d5a50b6cad470794018ff95076b0b1d44a1769d2560ce9ee4951fdff1c0bc0359e18b8014b27822b2700153087ca16ac04c82b7377005d8289ef23797632a7ff8a57e4a996762a7dcf5f0cd4a3c24cbc519a45ba7f3030690060af5a954fa082f38b756f7296c9ef14daa632375a152da67dc3ad96ce39dabf17526330b2eece337baee2fc35027953e30ea4bac6a38f2594ccb06cc94e5783c0dac5231e08fda6e1a663893a54cd6bbd91e0c301f3e4a936de4add89eed4757944b9732f8bcf57c4c305174b4efe7eda0cad44f71a10bfa196cb604d65a0b6b131de90e3f7f331f09c7812ce8d61874158cd0e72ee13c7d755e32c4409d068ce5addbf1e9e064cb492aa7ec532b61f93d2e2be8ffc2ee31e514f671703b5bda2cc6b1852c521cb9e45f8c7ff8060f9d4fbf04e988b4b3a6bff5f3da81a72886b86b9633759bcc86019c8e0c760634b32e8667ec647723a1bf493785ab16ecb5edef958c07f4cfc766b25f082965143e7a8322a90c37b21f5be719f9f25308ae266e461245afee70531dcd4b46745a001342cfae71a30a8f4e36cfbbd963db12ffe2d2a202351010e5f547716ad7761d636464c4eecf66ff228bd7746675b89efb79dc1287d07c29bbe7dec2c83acf658e172b4c1c7347eb271da31972a98d0d9ac03a3e4c5fe20a795d15b0d27efc4a5f961b7ed1fa10d200fad88315dc88b0547699bf265cb9ab7d69e2b9be97c11b10475912c3ae088131ef4fa518f17d4ff38f0b2a3c10427c61022f050e98f22f61708f1425ee22f3a65ef05ed25b4b8790cd2051675afdb4c50eb0f94de7a934e533e3e51e5c200a6a0c715e88bcb0e8a0023cf4c3640dd6688d74617a4329838e6ec2ce0cb9281b3783c44e72e0d0f2930fe203b3405f9f9c69d2027e08d59d2f0e409eb08fd8a79f13e54b5a2af39c1dc511bfbca53bffc214a7c0b30737b611206d12d475d4faeaf36e49359eb7af2fdba9d17fb694b40e79b6dcefbee5426cffbbd6c0d702e1d08e485a103e086aebe1b2f9c13694c3dd3da613613aa0010b2afe1c6b86dac7f3fcd8e4a9da31afd84e30fa2751da85d229f74fead3e82d923f3cabaefcd170837e42fda9c3c0339a93585ff3236cc14740595ca8e634e0df9acec95f0f06d410985954268b618074337beb17aab57bea57b6748c1a8dec1945feb5b7ae855cf72884bebac30cfe2b0c1139b39936879cfa116b5753e519e243f4634d3357dcce109a83d3011c104f8c8ff14c6f7d2fb934d8d122e4f90d87162dff3422717dc6e36fa054fadf3105c333d2b4c4e8bdb3ab72d4fc8b1e0d8c6622d7b8c40db641442ea73dcad5642817ee63a715ed6026f274aa3e9dbbc438fe4f0429bea56178db401d5845eb996ae4daf08d8c4d6ced3a0ce778d408ec0a8ea055e67558858650f6ff7405f90e8e1bc92ea69c95a51893aec6d19408fcd5402eb9554bd9076751b40c6a758f28af417e0667b423357524a6300db084ca8f45cb6344cfd713ea83fd13b05d16905802f2d06a4e3187800d8cbe5bc00aae2f21512d1778a74521bb3b59e36a65a9fb3e9b62dc0e1819c869abd32bb3df0f9d66f64235ddfb5bd9111060b95cccf5f985324e3daf36c5050fb2b10bdfd663ffc24d266d8691b01a321d15bf3ae8f05a4a1b55a69c74a576de593418dfda8f151804614bbc3f4acc4a9fadd9a9b9f44e3bbdfbdb2805c1f78124b18f3bee509393e9d8ee68a72b8a844395a1317a6301a38d22c5183a4036aeb32d1a438ac1e19ebe64733dcc43ef7e4843a9b5d2690150edc6f1dbf3aad179e282bdb1138a58b57c3a2d451617391d5f11b39dc528d40b9e0e14b7734265793b3edc718b086833df1344cd6d8097afcf94e9673bfbb104b1e387d4153e7391b0ec071303a3c408e658f70f572bd5372bf702b8005c3dab5b3dfa54ff2c6080c614d2fc7d5c4ebe26697040f4a3efb1073a7ab2e65c2525a5700755c177bd40bbc9d4af48beb8175ae7ecfd650d37b8155f514223d9ae5ca707f80b2bbfeb9a8ccf83cef87c9234c7d0bde894f7a077ca5172792468e97d745dee6ef64fc86cceb62d0ff8489456540420d1843a7926ed3d75946097809433377b93f8028d6e11756a5946de269e819e965b4cd0a15ff2c3de6a2287fe226951c343b705c3e29db5780d07acec95a1a6630762d67e7be9197536cddb457d711c1ac3f09ab16af356bbe0060dc75c8ed8df7971bf60b2fd73093420fa9d691d84e4ad79d139abf15ab2b9bc627ea17a1c1f267d1350e03dd7d54b0d0a238cb798fad74e4105a3b6df4f237a20ee5bde67ea66ac471d8ab3cb0ae97dabcd4e3563722742c81d64dd59e4a4be2d49d707b622082ff46715a1812e144797907cc67b6772b6664bb6c63b16e3918b0d15e68d026f48b6449f957214b6d3a423ca6eeb0388f8d9483b688efdddb0e21e54715280f3d9df4441b8f7cc12c8d430720fdc37f3841ac6b991a8785276b7fe7f8333abcd75a8ffe955ecda37c3c321ff3dd941b7055d00d8562035fa158c7e11746aa1332f36cc9100ac2ee14fc722ba3d38cb87dd45cd5553803f48e65d8ffd8b88ea5c6e9f0393b3404f5518a14c630e6374189f50ffe2efb0ded5212d7197fdcf5d6b1258a38074a8fa484d150219742569a0a23f73ae6813070baebb8c31413b460388fff67956d63649da8d7af1fafacd3678d06056ac87d6c63b0457d22f74b06521c91287f117ab3a68e15261aff6944d4c7f1417aebe1a60509f4523d56afd573cf3a28348aa97db498e8fea3383ff2e25abdf5bc8126e01a9f9d4d744aebaf59452fc97408d4e520a624f9ac60b5d7b57e4bbef46101cafa610bc8572f84941f8e46dab0a70d2040111497fdb93c4a14f8413fa808d6591994926d5f16287f3cdc7d6c7e90f9c54258f1be11d5d15b6fb783033bd0c1baac21fefc00f9b28e5bf1642cf88d913f9f9e477c9b206184c353c15b0f25e998f25008c8270ae88c1a7c7df91182709cfa0866164bf2dcaa0a8373dfc286e2baf78baeae83812e3b97e122808a21a3fe96ec240ea030b07496e8f096b55cdbeed3ab4b288f9063507ab15bc988ffed5a2f197c85ac24e0a8cbec9f770f74848f064618df2a70ecca4a377aa0b6e78eb30efb91afca0e768c3fb23f5f3cb53495c25b561d16bc8416b2a588be068eb63cdd6b520442409429ae29235ee9ad93a11b36cc0ae354908c18ff7e9b984dfd79e3f0e03f065f672923f4e0220a99587802e92182d5f9e262d18d6a8fc1a978d7473d00772a701f35365221208c5b623fe807715041fcb073f803e0c41c668035442229ef947f60d2207de89f568205e8b93e96337efebd16db28de25ee6f3119e50bc83b8a601df2f3484e8b9d6326fc3be5a2503fead58ba03a8a6ae1337c2889e9c4ec2041e113c5a2f465c835fedc5c420946d48e13eacdf43776673dffaec1435a48055811cd91715b2874e74362a578bfff1a929fcd9b23509ceb4124e24d2b9d0417e07773fb779863e73a0cdf80acaa00975262bdce7a3bc471ae9b19fd9777f74ff09658582020bec6b1ed76beb9b70af23bb95aae885c4de529645a1fb4ea7aeab3a3639f664e2a8ab2aea6018372d3b8a45196623f198ff93291c17d6cf84c33732b06f8932a90d11cf82b4145266207805af1d143e36d6d5286383a648ffd491f4a78a51bde6b612e513a55a8119d40bde2a1fd587fafd8433bb989fc2b046ee0bb38ab992836a4a70bcf923baaec222a4d3d3c2996f17539c99512948244beedef70db1b92cf9de2c970e679060153051e28487d0d28b0405ce7de6be970887d46dbc4899b3fa3caaeecdd38d0917baf8f0d6166e495d105c801ab8666e5d2decdb8b3ed6efc6209cd61937edfb1f4769d5bd6df1bb02a47e13c3cad212d56fd9fdb2c03399eaa1787a51d7229118348e0cdf529cd249914a1cfb28eafdf11a31373078932c520e60f400970490897a4bac99f5966d7c9deaa2bfb8d5b8a4b4eff93f237bc0558bc32a33ed1a121cf22cfcf75d3517014890cc071fba566baf0a30227ba6f6f05593549c0d1e8411c9f22e716e5f52d12f7e668960f8922943ea38d341d0c34f2b366bd72435be4127df1a2af714be16686df58af57d403183be5a856a31fb19da57a80e00dd89160222d93b710b067bd81e579c71d7c40d48e537394a2e9069f10bd5b38f4cefe7beb41d60d53ddd3fe270e7ca2ac658761a01d6fe958b24460eede5f6c859dd36e3cc1b54dd86207a69e8bea3a5e7ae5de4df56f962e2788f7a443361a00a70f59d771ee2f597778a763ffddce0ae0229ddd6ec99f0a38d86b72b8fff214488cafc09022ec7e24e32772bb8d3f6513068a4b7c77042e0849a56a00b8c2eeaa28fb57f65c83f194584336a0b076888917a6d3d782b152772ba9b08c7e3fe7692646a0f972c39c4ee40211391a90ed8df12f42e2c5db927f3248f1004bd3b894a8b0acecaa6ef58ef9801c4cae866ced1f8db7c640367514469d9f783640f936bc328f68715e02b9a0e8708c450fb28e03e5268f30d14d775e1c4eb9fff9a2eb8704ea41545ef5169196a52a0419e6e3b98c5f100561a98ced1001d2381b6cfaedf5ebde681aa947b4ec82bc62762eaf9a254cbf545dcdbf8b6c43759461edb3fd8eb0f1327514540afdceda672cdffc1ee5a9180c9ce1f3c83bccfcb45a9da5a7d4e00a194d56284b3266ea5e230ba04231ab47de6be51549397b5180746e1d02bdc2f67732c9177ba81513a46e034761ad3674df650d40710849d8774508ae74702e32aa341270aedd860916abf3cfe8f42a7129e6886ff0abe805d8ca89710705e634f62ab03d2aceb2e1ffe13272cbee1e89ba861c5ed03584acd0aa0e7218d956d86a58816b95a65e6f5715c3acde0584fc499f1278062404b86ad07c8d17e59f8bfb4bef8c143cef2a49e27ae4864a3ab39cca0d081673dd0cf2d3d3c2e8dd98f675165a6b7cc1c248618c3f57eec1e419a9b89cd9391993ef6833b4329beec2bb9708bbf19e71c1c87885ba03fc50cdb3a1d4ef9232e5681ca5f0f0cb6853215465f3b0d4a2e7591d7f843ba6361918a34ee988a5974e3bcf6f56e43815bc2165fe3665fac7e5b6ed40dac4139c2f4be85f1eb8656c6bde9a67a84bb21f516fe6cbdea8c10b30840be9f2632e85f205ad940e477609da37aa92fbfc3216136a0603c8464c7aa4f001914e64da30ff4331d8486a6df46b4b54bf0ae31f6628dc54afd8fcb2adb2652acd96f55c625b4de141d50187d7f34a402ffdbccab22ab8335f15ae08428709c3b88f51e6bfff31df744f2e85ca858bbdeb93a0d3f7fc2174e54371c5b9199c4bf955910597af027c80c4b01efc8f381f50b4c9562a2de2fbc27c18e3546791bd0978955776c799c7f6e988ac08f194490843145477ce45dc67fe1d26f15213da00567525af295843f96c2e7e25456383a738bc3fe46245577894ba953d907dff55e825e5534c602e6e63ee6421ca8efac5e2f8a913e5ece10bcf32ff5e3aef34ae4cd10f10686c3e1bc1bca62e7dea37a5a7c6084d034f1802eddb6464126a7a2ad6004bcf629b8dffb666d461bef777686b311248b8d369de209c239b3ab492dfd178bed4012a94463c8627ebe518461a6346ea057250a046fbacbb6c9235da7b44f05045abfba16903940bb24fbe9886fc770763d3b645357ff4260ba5017f1fe5618e292ccd6ddd646314322c86d51a1b62cc1de9c7c37a1ff1669ebef0164c84b1abb135a5359c5d426fa577880c5d7a513b15360db810d132c37b83c7397ab4aed4471650c2a9026e1d6f9a6cbec017bbe1b41503e459a13d98f4b2d2aff2a93041fecda43983409d1d3e1859700ea3b5202b781428431d09b37f470abde0393c10bb0da57d3863e104baaa50f8dd50feaf65e7fb221bb2c82658861b8fdac35b053c09c49d929ff4348f7d0d69c600027c3cc80dbb069e694007b52b553ca76d4e49c71e63a04da27f49ec69860c257c26d267008bdfc939d4a1ede36070b28b5908b98f1c23033b5a02979ebf02b18387ff04fa706c915022140296a7fdaf69c107213e6509ce0a83df433050594763943e5e10042c698132f1d38915cd0f33bec2b5f6634ceaaad836fe88ac2fd956f9cfe0c125a99400cfdad31fb3c8c2e7117e3ab53d3c7003cf2852c8c0ffb5eabcca9c7b5e89aa8211b7f0ed21872039023600b0ddcf6a7767b20154b15ef3be592e6bb12dbf01f91d95bf9f468fda023cfae4c54078bd887325ca043e567725f66a812b6bb656da8e374e48bc64651395c5c20b2ff57dabaff0f6f28724d321a3bbfcf5ac232abd6bafe19fe372e4d1fd732bcf80e74946f2640231e392e7bfae1c1eec8e85d840bb61e1fb2666199cc17ddcb5fed2b39aecfa670c7500f109962cb8f1f4491fb81a92a7275384b903fcde93870175357e40f60da9d9fceb1366b4426d4f8a13618512a09aded424bc035c43ec663951dfae1cc836c75e08a0676ce77ce4bbf52705cadf3428c9d8c8710d0081b532f1012572f0a625a7789202e21fec5da12081c0993f69d8ccdf618ec8f33dac120bd8762a2611c7280a9fe1dad18b0159a7f026a87b6ce2e17882048205715c0e069c6fec794fa0a803f08ce915d0650af0666d00a76ac4748673d3fca5465ded8f101b59d35e22c377a8e90a97b5212a99fa73f80198851c4cd7ec543d979cfdafa28406c633f5a2cc85678d898e92cd61cf0cccc722ea1f5c118f5f58c70c01bf01f6f0db6c779cb75851f4d0f17c799b8a6de033cce4c4292521adcbe6f1d5f4857f48450dbb9c440f5e14962c34fb09f57467313ad9b4865777329798d2fb4a10e5fa680d3c7de77d18bdf762b3ad4b72bd74baaf43f9dbf3cf19260f3d4d7542fd02076b33d068bbacc8a7072c128f68ac513c3c1a1a23231b7a3ad5a95a10eea267a1d1270285eeb441590e7bc98071744e089e805502019677567d8f632edea759bf78632118a24dca2bef6fd963a6fc84420c537c5850ed6cc2cfac61c39b6071fcacd8fe64cc02afbd381241cc809c9b4dfadf5030ff5926d6508ecad482f316bb36b72bfed167f9183d6963b98946389508bb9d2a0881413dc6220fb18eb5dc86be90b49a6b9ac94f6e7230e69f147d6a19eb91db994aaf455136c87cd9d70425abc4bc526eab8b346793a748355878010957477b3bc03ace5a4206086131440a9f8a96208e5a43a375b497e99c6b421c5adbf95f86b186c6d9caed8741264b504501ff871034e1f147d1cfa428627d04aaab65cb6c685d0f80962ad23698b3dbeb884b45a1e2a65c7d6894c6a128efb5da73c22394ef36cbc4c5373d719fe555bce9ed1ff47bb5b36e9f4deb92b9f3981df2ad3786876f2e90806d791f5ce0336b9cf4690bac87f87db44d4346b1e59984d752eccfa3213e3c266fba3bc2a00d2cfec543f8e380ab61d3e9d4ce06b9cfc1e5c74b0ad26c70afe76ae04a53fb06ea999bfbaa9c2f6feb75fe3e4c7004f60f6c22d924b3d2744adbf7a7a8fdea278a12977f87101f858239dd0bed2f09b61dc89045ae1a017ab83fc2897c65badd60c790ed35fdeadd433def1eefb399bcd4cca3e8f3442ab6c814749c19afede61cb362f88bd5a9a41f6d83245b55e58335ce0723383f37ab1bb06391f46fd71b80bc7bda9557f913ccfa97c77cff09ae283e2a5ae4dc4d258356368c3ec1637055430eb117137cca1d9e9c999020d9a18342b65a539e595ca98b6c95cb86f421e4b10bee9d410ae8c7b45f7ed6fdbbbbf25813700f55ca696223d5592838473bf37df15911c4cc8c5af0d398a9c1f070bb9e862f19e90843969eff999fafe0a22f226eb0bb99ddb7ca4bf7e1a0f79ed37cd10dca9b4ac983f1bb074303043d98da413cc77e5560fd9c3df1292ac68e0b822fa14d331b5b23ac42c6a78c0b5562908f0e2098f24716ea24d063e6832982ef7dc990c0dd52340193e3fe6b44107a9e8fbc8805faa51d6b54b9e90bb6557acddf198bc8d9db4665d4fdd134341b016740288ceefd473a46e487f87bea163db118fcd4c3d59915f9cf5df8f2dc693076d473ce3615580ed685da3a82ea7a7540f3544039119d97b3fcf9faab26526cae54ccd8888c070b61c8d259e3b8553eb26eb57fbb37834595720c067832e96759445ccbddc7dd2170b6ce9d3774c8687e04bbe311505c4124ffb63ae094c758cd96526198cff9031967175f3ff8e00d65f127f5ef2acc41c9ddde5978f5b7d4c79d6746b5511ba1a830fc73a4034961a964c0fc0e56e33f7be196cb43726e271f01994265df093f090b1ee217cae0acbda22692fde7aee6571e6c371920efc28cfe7e1b5241637bfdce38872465730c020d848840026206f371270697b3f3c69fdf0ac8af4f8f2eaaf958cd63bad84d6fae80d93172c46af52b13c1e02b3aaa423a021581f4adc81be0b01455138c83a8cba3924d323c242bd4dbf9eca3d047e4531a94a8bc9d23910c03bbb487f3dc7fe58a282691504698e980ff26d75a6c171c8ba3e829ab707d33fe1ad8f5b3e86a112d5d98cb6c2558591df6a944d5f52836335c7d2e619ef82853f5ed27c8614538a20fa61020d0657098641034ba9fb2d7c010d8f5ab300582dcf32d9559641df8209a425c74a6a2ad58749246c120d1ec76060403d5059476b10b30765a7eaea1b2a7751f895f7f219b1796e6c717e77ed25e0ca3c8cf7da0da46dd43dfd273130733abac3ad97d46ed294e277fc548b30bafd51229b27e7c53d998b030ae0c94a36782a1fa3bb431946083ea5426d974e4289bdb7b9a2dc67c51546234d9f6edb86b79c0c3ae0fd8c6a817b08b2a7bfd5307c8dc953f5555ed8e601d43618d76fdcda0b1e3b486b51b0cf733ae3cbb6dc0c23e66a3bfeaf89339d7f27d5fa5dc4ea6986578d4867b429568a33478cab5df495639602367e615918de5d1e586f7cc89e27f878f8277b087f23e6bf88cf0af82d177c3cfb09ccb42a688fb5b5f8c6632533a2fdc1c9f7d19978d954d9a7f3c2598955343ad3162403d4f62b7b937f10cbdb3b5e5e7cd2390f158428e73ecbe0a13ad329b3131a4d541a13d7cec131deece19ff287b308b4a1d2fbd3220ae2efcaf1d7983929bceac06f466bd9da33fbf880fd37a736f4b358b2456daa22e21678c09068dfeaab112f2c4a44c8816ff4a60e63ceab7a053ed433cb96a9be1944adae03f7c63e640642d2a9cfe8645e3e783db8eb2ac7ba83e2fd3fc76b4df9f9717b77d0d0e1fe423326d96381e5987fc15079a30c0b7b2284f27f3f0774e8b69c8e04281b4216bf55a42d45ca88b062c9fbee3e04a07d6a15c3c7cb1698b4738facb27f1ab5495990da5a3adffd97507110ce1f64c4b69488dde5509e245f1f37036820c5adea88ce05f771b555a948032c74b64a3574fc7ad38896995cc4820f499c0378831b9cc7f15aceb4475b40f5f22a02273c0e971e12d500de3ec0d2c869de2b7472710e7c736c57436bffc5954be451779df7ac356e03b534cfff440ac30e26e36d541842ba238b90050c0e381ed4d7ae7bccf9d6405443c62bfc31b49d01c5208a5d1867368ded47b42f584ddf059645265dabd527207ccc8f2f7314ac6e894a2c06eae82017d2ed8177513203983fb4793b022379ce604aa22e70fde2973173ac73dcc1bf9c803f36d3089f26f915f8fcbe1898f1b8e12069676c96d8b4ec3672c72f52f53b715e06e258e34d2b14f0393671d31b0a7ff16d27ba11553dcb9a2443101ac87f134d35529cc0a6d2d775c3e680b6efc6eb1059999768afe2bd0f43695aea7f29d8bac3556f516010d99fd3003630a31c88a9c96e0b5d29c2d7847e83fdf6d2238e2f924b1ab3e4efe4dfd66637502bff57f859d752ce93d1d6756aa946f2bad7b30eb4cf0955218eccd44d27ed468dd936751055c8006cb0168294c9ddc83434fd042dd66ce4901e1155bbcf6811a08b4d0284c159113c771bcf42913c31a3240f50e49b58d1a87a7aa055f3ed2fcb73dba8df9e86f88acc3fd8fb3ad3042a5e1474d1305f07bdb8bceaa5848ef3c836fdeb0c2443815e0906673d4045db4390622f50a292d0827e653319c3d430678b6a3005633e2f3d527dd56bf41da3d9e35b722e795d58e8c3d362e5a180ba45f03ede3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8550d1ecbe84d59ba7201705582092c7a3608cf5986e3fffb30e872518cfdd19675b829f4b1f44ac99a56637d15af6291d19bc9a35945459adc0633bbc9627649f9f45b3d5d81b3bed5656a8254d45b884e202df174cec786c6d520d66128e2c6d9d4214e79c2fbc6e9d12e547100bfdc707a17ed2bcdb3dfe41d5a689cc6334c2af7adbb3ca747604e365f268ec5acddf877d2e599193f03f6d8ebb550f7d0330d8a0cf999c533eea6dd991f3e58bf36d5503a4a00fd3027fb8fd13cd1044f530914c47041aa06a7497f1e7ad5e19ac2aeb6bf5d1d4006f92ddbda07569069949d7e3725622365519d162a4fe028bb8933e218b0f40bb6c26093d5df421b810ef23febfdab2ea687e0d76d6324e3fa69cbfa36f06ebd7f1052782dcc2264100c1d4109ad1f00c741af1b89d40440869c94d0af41fa91ae5c0da8cbd2ce97761724829473e8b64c634b837bfcf5fbf3776b58d7709e1548912fb7931e554e7b588829c8df272a156e1b732bc36730a634cfbf5794aa17a16139722353b5e7975986a66f4e5ac2ba23284407e248cd18136bf50b7862be97b3b946ac2b606fb19b2995e00850c15f844eea4d4314735c3180714d21f199c0a1296600f30ec757e9f2693a32296f27956b56caa8adfa7c100b1f39ab3f3f06da972f71acf43b5d9ea9820828145d8f74ff2e02caa8b2ce190a2766f431e6d39711f8d0dd7000d269e667024acff4135bb8e9748fe900eea481ee41a9818ba41d632bbeaeff38f79ffba4c04992f54aedb14e98b30e6dc61f7d5ed43be238ba2926eaf41c4f3e5f82c971dc79289e1398a4d5b17ea3e69a68558a48a162ef737d61257120aa2dbc2f0719ee568f124ae82358950b7a6e2c9b8547f94932df99be9d01c78e0964ff7a939cd710294d0e3be23ea73f280a528ce8367167ddde4d75be7d3e7aebd7656d0798900cf83457b27ec4bbbf70800363dfd1cb68c5c9a7116628b2748fa787fc778bd6b07aa177a6233b35b4a98be3ce3c883fdfe7e479d162c85c5cbf3f362eae892dd0d9555b28122b9316f454b8321537bf8d90c06282cab86b7d223c1da1b2b418ee99843dc0d6e9ce96c7b2b249a1d9c1f22e8e3109d70ed557f0b2c865723ca8120f452646cbc7162185cddd9572d756f075b55526b721d3c1cf8057ebfe7a689d1d0985c2d17a1007648c01b33a5025162b610ced3204d0dc7f90434208faff5e68c52caed76cfed0f0c7ca6576dca38ee2f47ab71d21634ff77d72ba94e55cf51d35159e42c44a02183af5a08b42d2cea5ebc6c24d11c96ad0bc5a767ebe73386a1927ce69b5e6b76b1f869ae33112da2e45f563c290966956ef1d484eb003818e56c081af24c1262f92bee5bf710604d33781017b603322009db4e2bb0f16fd3eda32e1b1e27e998119d23a7ba9a1426c141febbc1d42ae35ca4b00578517967db9d8b58cc97a2224d93803afab85cc487dde026617601c598d446643605f150a69fa27d5264c4ff43787009f832ed42a52c0a4d1aa622a2177cfc79e5ceb63238c7b6a04f5fa4fd31cf7e83829102675b4ddd4070c2df12e96d3e227d72e4af14ddac05574f9c172c7bc676d4f3f3b0fcbbaa192a1fe05ece5f0e96af9d1ad935e0e99ffa134914622484536c59bae27a6ed70a85e05126c66d8e8b8e73aa5833b07ceb34281b2e678a4ca7d5b1ad10eb477c460f395374cde3d96e89baebe0b40de3bd623b271eeb682e214d7fc5d10d7d87d3f458d34652225d8a88ff28f721ee0e765e6a6bc2b5ac8ca910c3d17965b13e42a1fcf23a154d519fe99e2418ad7b19bbbd38fd59c7f4af28dc04f564617f0089cd0b391f8ecff74adea7abe865d77284eaa25c40a1075a00852f2196f27f8f31001b902ddf8b3c053359779a18031665f1ae01f0d42bcfce9f486ff0e975c64437a550e0d1f84721cda826d417a5a2b2cc6e05e8f50a5d112105b9d4dcbf4112ee97e453d9a7a45f37a0aeebc47c8b975aa59e142aa473c41f5734b92d1a030ffbe337e0a5fd931b2e4a8f2a00c5a371109f824670df1affd6f17395ebdfc16a84d8681102d893420a8cbe577e9ee4464085c75e07f38fc124e833ddaeb156a00371769326557fba4af3e434f3a4959505cccd7be034bb1e66bbb671ac579e2d29f12ee4d42c4949196a29daa11273363996c205991b53408890fe55fbef126d5477a899855ba623ebbbce00111322397a54e3a26c7ddef5553861c532b2db4ecf30942fd4dc2a7c80e430d014ac2f53e5be2fabef3d190c47a6f585802216677305686df632f6b2242b021fad1322310910a28991d0584795a304f03c7b7d22d0648e80587092f469fb144b0853de3c6f34dffb3f2845bcfb38bb5850965adacb419b2fc31df37a4781605b327ae1cafffc800f29167b310df771fdaaa995f0b765e966a07ff586c3b5c13e9bad92b615e4aa3fb3dcf4b4589c7604dec237df5fb030eaf066b17e275b0986fe4d3ce3971f0cceb384c1a823a57d7108e247f851936faba58332eec2ca74f39e8afec1b5548b8b2f25c577037b873839c73434884144223d5518dc6f505165dd08ef46cde5e16d73db3c98f99d98105151b487ed28b486f8e5423c0f743fd068cc1f42adaa14b693e0245c146c78792f08ad4bf9deae005cb888bdc25b172e70cdc374521cf165c32dcdedac704c854a3f0d319b7f39473002ef6c8a23c9dcad1cc0b423bf6898a616cac37957d0b38ab9c2e1dab603ca33c5fcf1c8ca5b17c2de6ffbdb7e9844680aa22e2d7d706d244dab708e8ff9cd986ae922d968e84cb06de6d07422771bcdc1b423f27bd3b3254323249aea22527047a34b5c711349e407e1820a033e1118f2a72732247a38a115391bc9030b41195c563a9d282570d969f73496eec08161ec71fa53f86a6359a53c3e3d7711a3a42d8eefa985577c5ccbde1704d67b24b5f1b3c7a7505958c1ac6f844f1e800e298968685416a5d431d572846554fd84641757e6a9b04a5611b922dd0b26da9d91e3663786df7459dcf7f13bea949d7d6c54c13a4e9b3f9fa2cabdc0c932d4dac8be8d32ada39782651f450ec028eb2a99d4b1191959365ddf90f5f58f818d783659b4ceff23dfedc29bb44e92cce9fb034a0befdb15f0f06077a9b5a68fcaa30a19dc302eef84bee37b44a3a0543110b103faa2d3f9d5d369037f1ee6164cab81974b54a750d93e3ebbd8b5185ccf0468fcffa6c1d29a9876c21ff5cd52f49750ad69a8da103c6336b379d52fbc718b927668b8c8ec1afe86365d2335ceeb6a8a2be55ee5d3743cf885abcfe6e25977317f862c1ea55467db1b2abb7d15ebc60c9000910c764acce5295c399d846a1822a87563638e0aecbffde86ca85a7f5429da24630ec7a47602b92a2282f5352984645930978afedb4b1959dff623b0d2f817a577156ffd2b7494f162c895cdf750b3d300c83c2a02f403dd4b4f7aa9e4ffe527925b1b968dfadd00f825bb53ff986d5b2fae9ca0ae16bab6a63d24aa47eb5e300ca068577ecd5750212676da69802eaf827725e5ca20a7c5564f96a733fe563dc61e53b2ba95e2139463cf5c332338c1b405506c2d71a6d337ed0da1409fe9f5d2efd6411b929c51b06f592ed09d9bbf0b3167d04ede06b5cb48c2ca77d6d15aed23ae6e1a2ddc0f66fd2b1b85b7214e4bc5718918493f95f06e21f4eab83c5ee0d7fdbab58e4d9409999aed433ae81e2a2fba5df27cd3707bd73c34f46f01415e7d785165e8ed99152b668532062df4de60d84ca9929cc7a6f9379918d15bc9aac5061136ed88ebc083e454e96bb81b065477da06a55d0b4e7bb431154df79ad6e3a5ba5294e47733f347899067a673251cacd294406300ffb3cea793123960bcf97ddc99c846ceb54bd95fb08fb0bf52f0fb86f9a9eb6bb20ab9bd006516aa3ace3255323d5dec1ca7ec34ae2673052a202cfcbf10b72ebbdabe16a6e199262048fbf50df92fffa4efbf9aff3d56b78dfb9d616641d5d9723c01a63ce970e7d9fab8ed5d7f688414747a099fd2f3c88c3b4edb6fa3654721a021918f7d746b6460de575d7a951d8f44c32b92f907936e53f7969f6075f8e4f21f52036d6bdfd16eec7217270528eaa78277d792461db054225714d877d06262e629597b1530904943aadc2bb72bb4ad042b095e09edd9c0f2a79208f3494a43f7054249cd4a06e091f372c7882696c0e88b84038bf0a7f49dcc0318c5336e305fa756a0580eda244fecc25f2ca5daf25dc9eaed8fc84da1521a9f6cc8548dc82a5ca873338a7886adb42a3502d203b6746fbb76d4b563ba96a528c953771430361883b139b0b436c4a1fde160e7d87974e3b8eeccf9dfaf67c021e0932f6ed99be4eaf8605eec458e1d37df2b2e495aeab3a1c817374dee6cb93f9a2e5d7f515b762ef1bc21251138ce8f4de6be91d15f4aa6a601cfb2feaaac23cd2a463ad162144caf6ea39eb536616a6cdd7aee192182f44c79074cfaf98bdaf628806c027737170e28d8765dafac29f4ea6b663c8ee7c34b5c560b964bb57921f5fb0087b87a00879b5656749e87edfa1bca6909aa4e804392bde1e7e57d1024b7d171a4950525549628c09fec7b9e81631860a09bd69405d3dbcc03713cdca7d1e4f5efd260ea9c91b598ce677d9f44250feffaa25130695fa72c4340e70f8218e21caa1d1b9eb080fef62d091a3f78456582e3badbbe9c824601b4133e86865470a437f49839821a339fe450e05322dd39e97d80b2c865a9bb6a7df82388e14f57715fe41a029baca221181e1e41f499713d92d6b5b38b88753c10ade4900a3e136cae2ae1aae2e930eb7b21e12c86379d957426f1339f8d72b414b8a5f081354be08f1a517e20391f8e0eb62185efb4e87032baa224fe9717226e7c3b5c387284e1fd863623945d13fd20841a268996ad929ee062303409b9f1bd536c1dfce8516fc121bed3331e41f4e8c9c754345ce105bf55f2597173d55a69a557c3854e0eb7ac6b3a87991d4fd93f3cdbfa1bcc86cc841544fee5a16c2f66a4da86b1065eaadab9700addb858369271fe56ef98918dd2f85d38a1bdf0c11439242e49a7ea1901243a0e541f0796c053fb457455f3d638020564e5dc1392e150ef4f0f87146ee7499ebe728c04ae7a178389c0880cc22131f441f8c41c856ea001fa1db6b0e862fd8a48cdebe33d8472e208eb9615dfb8304623589a96d83cd7c429a9f3c84bb91f68bc5c6be0571be9daa20a2c110017fd103b569fe33aa39fc694819205963ce975d8f9f89df111c127e16c3e3e8e13842d616ac1b54000bf38c1c72ba1ed8d6cfc6efdb9fece84b334fecf76f0c5eb7fca1e7e51d80d376b3468c2a747bf34b905f84707e009e273bb264cacd60bb005cfa558bee084558469b9107eaf40d7e1362571ed1bc94baba2f6e510cca6040eb3fc779f23f100d3929888bda13ca48e76cbbd0e328e95537b323536ddf9aefa33e642b5007ce2bb03086aaa8572b859646fdc6d9a73ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855774454e3a1e3e0294c445444a26fc519ec1e418db89b88a6a8a8ea0e2f32242940af803b1e02f1945cd215f54fc1d826f81d0471f9723230ae8c7d0f598d32e823f28939848aaa1a9011c279e2f2313ce00965da290aa0990125c7a13d6905a5d5fcdc72e355f55e423b90c3a3a670ce6b87ad02a82e9b07f15ae1a3d82c0ebc075533ab3440dec3250f14db21e841f154e5b27fc8bd30aae1185120c7459922efe1f121f083b7e579487bdf9af524a0301c100f694b03c5f80b2b76d3004357dc8df3ae6a879134cfdd87dcf7ab2c6251e9010bdba1a936ac5a8334ed72b8cbf94e671e2a68c28fd4a6ca75a687d376404678b0aaa4ed061702a9bf7467513bcdc4aa3586b32030ce760d4d69c4296e4ef8bb513c1fc9d8f4876f2d0bf04c552b056b8d4aaeffd259cd912fffa17eabe3a34285cbf3ec0acc8513df0c7bff72c323ef908105a57b48ae2395fd6509b6c74caa8296e4ae23dc6478abd0da9612473ffa2fa199f6d450b19221e816e7ced5aed6b84eb0ab20b96e4ce148c33a1d29b5a945679a69080283a3c9667d465e49926c46d496c4b71b8470437bebb6a02739148e350e63ff8063179c3197008b1d32acc752def8e604926b6598702a26d4379a267bd228454a902a01703607b0224a51edf2c321c47e857335c85786b66161d587f52cfc1539cccbe8da36beb7be926501118587d137f975c120fbaeccdc57ec63363598dcc0f144ab7dcd9dba7ac4a280dd62e5b7d854cf06b9e2820e78df01ba026fc532dd8a45be4b7d0f7887da824dffdc9a08b4bdd243ae847f9148c30d881e28c9df857979ec00fb9b24e1d9084861a7a5c2c26be61ccbd4405fbfee52ee71a6a8e4f8f513b364a6e3d675a1f4522fa18aab229381329b977dd03ce57d2824e4182d145db4138a233b270d677f3117f45f3b96e8d2e0161bb915c0906d99af9f9518c2fd34446c20e8db44601c6c958185c60676428c2e78d7146399350005bc89c09119fb3e7e7eae46c28e9ac887b24717b63b43fa2fc37485d86852dcc8ba6b088fadf3c771f880fdb7b189a16d866a771ae1b6bd4e57e99e495038cba1b3ae3f954a035573c6eed31305c7a1c63345273cec172559f78c0a53c307971e383831f0a99b82663f82273ca6274aaf5cb5bfbd8ed9c6099899bc1b0d0909e800412802acfebc2d4a6af0be3d052582099d6757e7aa73a35dfe06c275c0438359d04c5dba677374dae784b11e3af4d1192b804d9a263e84439d23042c53f806905b8c796086fa2156edf1549b495c91db4061819cb51612026fbe6f1d6baa9903a4d980746b26c25c923e9395ff115ebea06db33b8e4b079d8882eb888f88ac9ca01af9280c335af48cf14f750c7c10ca96e6d68800c46a4e31e460c4dfda8f8a8f6d84cccc3d4542e62fb03e7eca7c870001229a3a99bed1658dc5b08160be927d81ef4d20da216ad1ad53f21a9820d641d83e2c8e2e97bbc07c3a38f65d75d5bbe03b4499748f8d34ce8cf720b4ebf471d77abd6e54a27aee6efc552db5bae8ee2f1ff32ddc2338687b50879318c83ac2dfbe0794cb5abdaf669a7d0c28a3489ec4904513313ff936ab394df025248b3d78b3d6067d55b7364f58b1f965a140048ae60ffeedb3243a94b5762dfa75f9b6a2f5bedeef4090a461bc963f46964f7d5c2ef40ab552136457a997ab41ed648758b075d2b034c65f7a21a339ce6e3f0131e026e79ff6d9c4e59d52868f93a65c70d3bee294defe1980322b73fc6d48f588436dc53be49f8c830ed091219638733d3679d8cf9049a1bb9e932b18be91014cd1442a890d4363788a78d99813e44b05708082400e03d441330d758121c0db4488262e1c3688273a1625fe8702dab299ce7f3a9ad664319851bd945ce4d0e20620187743e0c133d4f0f7a479efee6ceefc08a0acd1cb7db44e4f676501861260ea3d27e13d66fb99c70647abb597d25604b5f7efac0f4712ba9c8eb898a3bf2f2ccc58ad5221f5057cb33006d497d9fd4195c21fc4b28b8592637e2b0bfa21630d0c74a153305b142a2b7c0ba4bb8fa9c2d9d7fd40cad6c13fc9e4c4817fe23e988e4de0302e5e373c095a1be65d44cd08a4e0b69b6b5814cd5edb6041a03eaa2c872e9dcd03f76cbfabe5bf172e98290a14d8812beb9df77364d3d3ac7392c66e02ba131db05071a474c445121201e4f3b17da727a26abdfeb2ecc0ea7b5326fb3220726f30f9c87d810c8a50294d5cfa7ca5c24cc1793b14cdf5ec49cc9f185538e7ee63037bf91b3cd474b155960aa82cb4b0b4031736906c60950ac3c1534bbda0a59f20d2c8a64bc8f175e00833bc9b5b81b4dc36b9a75968e5d6be29e3b692fa7d8690d3bd033356259e7c42aa6b8ecca6ae1c771238a855b2f2e76dd1044fc950d3cc360767ea1d0dfd783a386b0eeb78d5c185991029d5d0ea2015973cd58b75e678685a9826a9b412ef186d944328b1364b2cafd5a583c0375a1ffbdd9658a1d24dadccaec7b67226c8274f74f6636744017252e3f15be4fb4b6d503bc0bf87a209f556c3bf4a548abe9ccef3562f35a10bb6ca0f98dfd54cc0398e68ea4c13480fd1e0732e4ae03624e3b15ba6ce94f8095f2ae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557c8f7b1f0146209e38b8ded1c7d0dfb0d4934746aedc5b68ecaec4dcc64183deab2bc08375f87c7aac90c3516fb98f2ee866ad58de8ad170995e1afdd3c3ef4b56bf108e1c58480049ea91f2686a8fff87a9bc9dcac5efa391892a8cc5359c2455f1e61aeb4bd4122146627cf6c88c669a256faac042fbf0c4e3b0b7be149bc33e9b36ba4f8c334c3b1dd6394e4db14d854c7a144dd14b0e87884b4a405a81a7892288b03b082746b2f607f5636aab328b23695d1d2f65b59e7b5f0cb8343133954f69822a79be70fd3dbf13b1fe64a6a6477f388a52f2e98df6a4539f1f82ee99bbafe061ee96e90443682b569b90d60b3efe25b7c5db73254965206648a14b4ae37c2608b594ff9943a149bec1366e1a4cf8b9cc97be2666129bb56bf9b39fb511a90a7a8f3ef91c12298f2b300864d650ef1924aeb1ab26c8798c161115bfac195d7e901557dc7a5f0888eaf342770c24a0df0bf44e252de7ce6a58602fa7cf50b271db33ca89a16828d073978b5270d68ad272e418ddc218d931510ea42ae83d284735c71a91db832d0595f945d0950fc6ef24671b5732d516d24ccde1a2238ade5d00899b4d9b7811e83deb3444a3312e69b2d9b525bd40c11517bdd3f28099cfd5ab0bb2cee9ab2f11bce0a1958a0420b7f5169d205686a09f192aba2be37c204dd682dca32dd518fbf9c2b9e1560c90de00597bc6cc51917f827f2d8d3587a23a6d30fd44130973c2a6ca91f13344ef8aa29e301a12aa16b3f8d6d7f720e2589713ebc6d0aa6fc2ba7844df9fe6ad491ce209d744faac156075948ca16e0a981510d732cee2dd0cf0a496d1cf9bf1be1d725ffb74ba953082a48cd2b69321241f5f3624f399a89572515c21ce817d5cf37693b83bffb3c7c4aadc127d25994a28d5dc546d5b3322228b843b7854725a6cab3ac1013681f18ff33137775aa850de64a62752440c8de119d33e5824ebb66b82a205a102b5f906d156e6cee4cd230d7d5d48a18ac2380c6d250e121cd80c2ca447eddc1e2976038a0a9931a8fbd8e3855c7c81f69b35e278ade8df12c8a80cde9c8941b6e7ab0ec0914f0afc686618be614e481ef6bfdce9d33f97dde4e94682ec57af1138122c48a2df3bea95d03c9f86efa5c138fb3133f27ac48dc896c4d65188d9c2c65dbfabe99665e45fbe7566bd70a7c79426160d2756012d94548f5a74e364e0e4369b3ded377ffafb1692d3d4f88b12fc38a4ddfd818927b0c094f34eb5fdf05000694306de75c7ef84cb4b8fa47bd70aa2e89f7b96b2487c7716e1b5b2f1cb1ba79217d70724026a00fb501f44746f56af7a56ddead4ea6eee6bcd3dc2f2390caa11f0beba538ef095a6b57a082d89d029c8da3fbdaa16e83a231ac0598623f67e07dc0895f45e9ff7e9200872abc7390c5d297e274043d86885477a10f8844e968e78dad3598a665a7950e260d3e3207f0b792e6b99e8db28ecd3c0849653703c83ce995ab81412c8d13ec9ef79f4acf9e35ea467ef3c383f1950bcf16e231e5263334df5ff5f1ca4233702a3badd507f56679c634cf4fb054ba662bd729712b2a68a70570192947c05414af2790bdfe23c6fec8ff3a74a329f225f868aec6375108337a9f3a4ab765acdbdb04205be39e5b6c07700e1d2967480c1ac1b62eff2e960db908501475c7cced3ab876b5cba64ef56112e326393f64717368d3ad951295a470ac71e1a365c35e66267a092ffd89a8d9ccb6cc097a585b7f65cf366dea85cfc2f9e84504eac3c5bd8c90510f4c52a5bb4754486c4160b6503d3ae2e3e461643808c6c37aa3cf57671b1b074f84853f9dbd0fdb6764bb04af8200ffc256ae3ab3fd8c9e48ce9fd0967106c3959eac85a97744a9c3aa122a04e14a74b47d51976520de445671ee0b76c5595fd984bfe2c11090b7d1cf7a03334094cd107cd5917f3a883b39497c37efcb399622be3dc4493c09071fb502c04684164120ab01479025fcb4ee457514145f7a3ad2539491941857cc337c53b481875d041d1da85463073268c20c13e4f239c2fbdb060afe31b9910df5010ed88ac3bf3fe747818a74d03977f3dc402e6f20cd2515e86a26175da10b34c631ac513854ea3122743a5374795e50156b772602037571c7b184b66d10a5fb753be4d1c0c777ca21f188eba90c3862d5ba0b7411502a0c68538b7f2dcd53f273947d754f172c773f9bf63f8d7e4b9fb92a79c2e45c6465add1cfbaeed83521921ebdc503101e1d0f3445f583790b9945b3ee4b05fd8f96c92ea633a8a883d455f66a12535129f517f7fbbe09af0bc9d70498648ffc80d01c73e0648058be142cbeaa69cc9741e686da4099aea8c5dd7dd1f44f19529eff77b1cf52dc8483d2d30b7888236eb6d0038d523df83eac98ac27d43294942b0b52341f13b9d70fe245ba50ede36b9ddae855b32a0abf8b93e26d0643501a1775caf96c697673c8bbe30c4764d8cc6d2177babd741ab02ab325c0117e44a400c6db6343c76ceb279134166f81595e7fbf92d79e36e7cee85453d6c488fd2373b5f68dc4d9b3e7ae7003a4041540642ccfec001fe0e0db12b458031c157e1e85af58423ae4b2c17cf40321009ca6f4c5df6db975e000ae6ecedcd214434a16f0d2ca40a93ff55d6c155aba46f2cf8b25d58c97469dc16817770684a0e2f0d2106aa3473fdbb9755926a878088ff414374f84d68e0b899f94c11a2508dc4a01709dd6dae50c992f239b127acc0165bb93de109e4da9cde1367734d7c5462d61f1cf0b00b3738cb22e3b4d97ebc841e4d8d2f91b1886d8f3f951f80bcabe545e670a88997ddfa9f7bc89cc0b4465f39547e70f89ca5a20aaa37591b9e61950cb7fdcc7cc8a9f4622e8ca79028425c654f9b33e3bfdb23e03a470d602c92a5d58dc0123970fd2597dfd18d5ea2b7b20ad7cc2b2b2aa7bb5c003e3118b3d28b4d73daba0046f19c0c6e9a60ed94c0edb6b4d415a653d8d90d6d48ac0391fba77029fe248586ddd383d1367dc7813a93aae1ea0b6e236e78d306a9932e4db68d4c8622be71788c57a657349adc08faac2f6ce6e77846776a4775acbfd8de2f50820bf7e35c8e836a424cf3cde0f6ddd62f5110486d46399e19187260d32b65256b2e93c7cbb54c687e8aa5cb654aa7580cc617f9faf80a86cb73007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc81779d0639aba859c1338d31b531ae01cab769f5468ae4b3ac1bdde2716a85d8a4b0b6b84e6b1ef3f2a36e0f7a9cae7d33d2c17ab1646565f358765c74b2115dcf37673007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc817795ba0ebc9709af1a672f674a4bb873cca7387990de378974661feb0b80cc293d6fddf8918cf7c974aca0addbc10e3c7066a48ddcdce94cbf9ee65b3422cbc7a8ab40a27ac37ef7745f882a55e4bc289f9e0ce96bfb1d88361ad458f639d61bd199734f4d3dc3b7b11a2580dd408895f66b5297badde7c387716f460b98ec7ff6265d3f5dddf79c4ea63bdcde8238ef12bdb41783969b0b80acefde242e68ba3d875499dfcb860186d854ecae6ae87086dcb1bce5bcacf2c532690c4576a36ae2a781bf6b4d39f308d08046e8c63c59907807da8717c3d45ff8e5111ac422d660abf9fbf2d0e92495d2cdafd50323cebbeb63a3c08a6bb7015ad22db6e7643cecb612a7be062682a0fac215c336007573978e6e8a12839d9d48b364a4465550cd9ffe3a3173334f7c7f74055c41e540a474d413040221a858c0091241bbf28e63eeb4619a8b740e3068b30d0fd91072fc2f0a7d193f28a543d863309f235f8f4ec68b21fa95958198e79240e3b5d19da9f2ee22f53470458135c6dc4595ea023a8e7e1b2c0a9031fbc9e999438d6d65847f80ddd76244dfc5a1efac71731d40f85c7eb0b68d5856593c34078d220bd92bb699060bf2540f9fc34c0d4fbae1a0cae94c2343923ac620a19ead21d3c1777070bca5ff90e0d228015def3184c5ed66e33362634ad837d9708bb0898f5609a1409d57215272813b9bdd7b6c02dc275a47e0938a4c5c83e53e533a0913ce3da53f54c873bb1f418af314c1be7e00a751b8bfa9a398e97152beaaf385847808ad2d828c1c7251f1a45bc7697723827e7e7b864c621c47c1be06cbcd26dba4833eaaf9c049628eeaab29e4621135204da61df1c78e4547494b866cd0278474a45e84327f580bb4d3edd6881f69d4c31e2f04786bfaf15f3c6de00946743dfe02a8dd7a5ecd595233a11c8146b3574276162796408a082526cd575413addb6ca97d48f141fa62e188690ca5222aa8845fbb606f8517f8828faaed54f2dd6f1c593af3beaf7b0e1340f0d1d0b39b47a2cbc3746c82944a5beeeeeb7e67577d7f68ff6371e6104827d0e670cd184c722b1daa39934523d603111be24805e70cde7f19b959e43845db7c8af2733471896dc8d88e4b4398694261203ee1a23125d0d546f0358c3a4bc1e9a2d42c6e16ab4a58376f95415cb700afe71be30c0f76713d87873dfb327b171d0781a9132da653190dd428cc805fb534b547e3e211b00899e6f2625913666e4e9d45674bdf87fbadfc571d8648ff82726c4587fbbbb5dca57f592dd2228a970255404f22c61865bd004cb9267b971b6300094d3a99a1eabdf139d13da86d8177e9f06cf74a2fb65051ec01348fa84bf2377838a55a513eb7d6185ffa6b0bff2af8d1c5678b531ec842de7551757bb2eeb606a4d3a41138036c07204e85fcf9c3b4ca53a0a232ccecffb9555e76d451d049eab675173c8ba5ed709e9749ab25f4846e69f83d54af147e46a19159142c5174614930130dc5b0f7485c91e6aba70339ef5b367844d102a4562413ba0b6b5a0972993a277c6b7045bc5764dc0b7b3dbaf3849fcb1dc842e0d61454ca8d58805929d815dccae00e12ea3d1ecccb209a461b0ab7f726bc390c2b84b89607743213a8fc2aa0e83d0ab72604da50e9164a2ffadf8d6de0c3ff66bb2760f1450273a6cd569cee83129c6e45aa9dea7b5b08251c168a1c816e3c228f9dc105e826eaa9901cfaf6198e79119ab91cae0ddc6a9657b946fb69a9451371036096e54ab2d897396a4d87741957f83cd92b82772b0ca7e15de36c4f59c28f5a4cf3ce45c01417ac82d5d3c5d93d521e7ababcd8e2e1145f967466eb77bd688420c57d32e4022f3899be94ba2fe56acf3be46b344c559e41659b2e9d1b1c566da59f2812882f752ed8ef81b3e61321102a2a763393f1d9f76c53bb7056dacc8441e76ee7953ab89f815130ce540aae9f40011121a7b499bb297d28060e6698a15a722622be79f24da3a25ac9a822235ca54817882cb664414dade30e476fb6ddfa7b39d162dddce71744c00f93eadac695f23437227db36cacbc8e7b0889faabcb109da1d058a654dea43ade8f36bc3f87d9cc27be2a38593bba1624c0eb7a34150482adfd90801876cf399253f9107a43d23c136df75a5e2cbc7c5710b2e89994e6d99bde5f653a74b9f48a4b0a6cdc604a8e4f050890ec96d5e89aa9a3295e1fba220c06e06b5cfeab8dda643966e568c5348b959695a22842f7c3ae8907b5e9e4b1ce5ba743e6180d5219f8238efd8e5dfbfa0c71a9f0b2062f2a1927c610d34dce8017841ec5882a147c263bfb794db7695c73335d8be59a0c77529fa5fdc4a047dfd0816609b2a324105b5f41e57f52bac5fcf2c49f6e94528395c91fd0b754d69fb78b16716c9345ad4ed8b80bf6693672eea8324dfcae5100212089a2fad63f50d07687241e8cecbfcce91deea91d9ae908410c363347731f5c6e131488bd2c1674a6dfed2315e0cede0628fad895dc689a7431b8a81ade29f4c13ea5a45edc68ba4c16eb78adec79fa6dc16e33e5770a22d18819e867150c22984aad47046d392789ea7eabe8b96b0ee23fc15149c808b79596eca524824444d3ec2ae7bb9316c6f3a8fc6c5cb197aae8e27650c4add0083484573116c34e5f88a6cb472ed499d17b53f7e6ba62ae9598d7372e06f35cd095d3b08e9375d3774f9375764be8f8e651259c038d273c4c94f0ef37a61811ca45005240f32ad41de10e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558755d777a827deaf32df19a72f81f5d7eb9ed54fd5914e1e5eeeb84c0eb5d5afb0842afec1a7948546fe6d0dac813b5b9e045a2f3b326a1df946f7045ab1a77fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85558b867b7b7c0076e744e973dbd2c51efcef8f880361d8f24f0b529fd22c9a43e0b97aa1c6c9fce15bca4fed7e6811fa0be4b7d2e330938c9baadd5f0312138345344df1def7ed0c3d9ac82fd86bfbcc36d92b65154973de95eaff6ec91af20c0d9dbc740ba9dae3fc02eeda599dffdffdcee19d3a052069705855a2770916b31796fb3c1f825c0c624d79c7b5299f593cb885b9587e550848dc37d747d6653009178ddbc4dd16ddc6bc3d9ec1dabf5ab721dfede42e1fbdadd747e7b0c9fef5c8ee70431c65f96ece6092131cea9e3a62fc186adc8a972041ed6f10f1cee89d00689f6d3f29b7c73f81dee162e2fbe8510e21a898f5e770306ac6f96c70b7968f17ca3099bf5cd36b7f62104c5c6a0e9b5fc96f583c4679132c0469c096cc50d20d2e1cd39366f175b4dc6a094263433475d527ba65bc97de62c6e27ab90c35ce1a529e70e6d821c6f5c9fc551b76eed7e85794935a144347a4da4145293eac62a483d0390521060634e9cacc92422f6b42d5499b6a05e88a3f9fed181b3ed41893f889dbeafc55a2256fe0bbb968acfc18db8720e023ee1872c047ee08d8473dc075981ffa3c1461912a701bf4b9c9861c428097290a382feed3ef585b9cac50f02f4762fed9d406bee3bb22cb248704cb9b464e5238a550306909138e7f0b068e90709d234314f6bdcbb8820b4b96673e0d2f343ebbcba58d5372c1edf4be77db525e801c760ce6aa154a22ce2942c69809779ff7620286930a580cd1f5c9ec0ed34862dd86700d6d7e6bcea14113089ce092635e92ef99e3a0905f3a15d15e8e6a3b88913196ae24bd80d140d6def5cf7cee75fffa8e90bdf62b82ae454a7460f890ed6997dca16d7389040a3c1119cf7d745e60a27b20ea0608c5dfc7019d2f61ac88e6afdda55b4785c7617688f54be83629ab76fbc2cc248195593dde7521cf9450bebebd2a3408002612c00bfb2ab5f82c2f5657c583d3d97e69976350373d6d61480f2a70ae82e4b391428e59269532b175fd1c894092061ee5424ebe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85585e41ec0fde536f82233a63855e43ac15d73f257b8baa7ff7f2e6adc428fa87e182052352978ea62fcb9e21dcb388990c9a4f0cef9058457a441fe0225f0ad5233115c8ae83b6d571d45099e1758b571209e2808eed26389ffc50c1d5409cb37605d31be0b983b81644938c0c23f41552c43e02ec9cbafcd2b5adf06f34230d42d625cf8a0f60bb971248f72ca505103338967450d78f4089273448b82d82f3ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d2af67b02c4de7379e30b1d753eb65b5720324ed73baed5a56c417027d63fe3790be9e0b7f5bc296d21b1d4d638213338af07c194c8d9094339b2a96924a2cf2fcc7a8f028b2d8ed20d0c084e689c838d48eab4b1892b022bb4f5b6f70d2c2a817203c1aa9f6feb3bd89f7232ee08970993eda5b32d244ebdd580ba14d4a3343b6519789cb8465ef232bc8065c17fed130f9d62dc23a2f02794cd526df36508c1741bfd255a09a7f2ec938f90fd0680d755507732781debb3b97716244a5aa0b975b8272f9b577b7edbcd9ceb1b65a9e1ca2404d6a1b45b2e1548efb83bb4c1e3dcfc58ec3b5a00af85317130c52ed783cafdd2a0bff56d83c0f57d13d790bf9fcb1ad17a335a866930c47863c888e9115d24a9c037a99192a3b25038d751cab496c680238bb5093ec1a6f521c3390f671396ab081a2679a55f9a92979f87e9d759a3218afa5c1b3691fe1acb11535a4ed738e5e6db6523b8428200b8995a77557cf5143d459b7f9724e42a6db4b2a422ace98c8469a8f2cabdd3b3e537302d04750344b16e8795e2752b3c41f8e35aff7f16368238ee1114018fc91c6b294f69728f60de1a2d75e52b111ba06a3d2a518ca0e84a9ce7bad8325561e2d09e128696d95a4acf34e5332c6a904fd04ec4524fb7165fc85a81633725c529558bef49b0511a41b82f11ff81c353f2fc26daf80594444c97c52cd620b090bacab7ee91b86c9f64ff2c3333016dbc54345df88f0dd902bf099ab727983d36bd94a1981eec0a5e0fab930c8183ce0d19918ea36e4b4f5a93e0d75c512729eb0d7ee2b59e1d6771300a4bbc56f132586a8e2825d881896dd73de698eecfbb5d6b06113e47ef400f4b5856a35e95e747f14f8bfb36917beba21ed8987ddf08b3d0fe18bf690b65e4f3fd352acc9207b139f9fea324fc236abfa454388591e2ffb264726d3385c11a00849abd2afcd46e3841ad67ff546769ab21bdf16b7d7ed706b89aac847499b41a4b5ca1174669f718b40afb98753870e613e7548dc42476aeef23409639155706ccdf57f047566374acd40629e1876c9a3278ed2298216ffb91832b02bffad9577d181002bca117b9ed98089fa756b1567d646504b0be80ca10b2edeef1e112647319c33457e1e10275edac62d3e702c530d95a3f274111bffaddaca532af8f49bdbb703ddc79d4e928609c5bc01b6b0b806f38c124a09a3ca4ead74ff528001aebd8ee1a76619f7294df23f02ac9225c4e4ed8695ec8cb551e439c917f152a23c92297d10cc8af8dde85c05debadf78a2ce3a94a746e6355691b2841440fa423c60620b9724b004a99abaf2f56f7ddea7976e20ba7c409605dc7010258f884726e2f7a7a1f3bda50390777c99f1dc7ed915f8761f298c2b5b6072fac855fe5c9f985aa29a098eee0a6ccffae2c44157a6dc39eca974bef35997440b1b9054bfb1c95fda3355c51276c279984573c895709f9f4f4987f063ebb68a8075671e44bc7e7cb148aa0e36278f4f161dd48d41247dd8e52e19e69f55a1d92176d345fd548680177139838385e6c5c372598eed44f1caf751b33a7fa847a2287a2ee7405ad06b4f850a95cfcc9091722bcc04aee11fbc0fd44953ef666af8752a396325a98d944d86451f8b4ecc85f1fc38773a0d56aae1d553b343fb0c8acfcef65cba1c2f785ccbf9156db35ff83217a6913dface465366381a8b727dbaae537b44f3b1b646d78ff490d8feff1dff01a7dffc42d06e71148fbea6d68cb5e84e5689e47e5145bceef3d49e16f7a257a9d6bc2778cefa6eabd3ff0e90888913a857c3fa6c25e8a52b00e76a96eb9a387c3e0b97d46562373fb2220ed60900a15ad7f04da1991ca9fa677b7fe548825f7e45465ec9f7089e2fac2d7a9f6c02ab84d84c0ab5939dac61ce089d494d36167d87053771abeb548018d4de8a5780ead0621f0278f1b6dc78087cb6e43351894955d77cba575ed15b3aaf96ef00a4e6b4e5e9dc6b10ae761d945b290c060929d1c8996f758f4bbaf32fa7a0e4228d569db1cd4f2cfa92b3e94586b5e6ca49dcc52c16a8613fde5b1f0e068a34043985e172eb73ae9addab96a9eeae921ee35eebf4184e685429147a18b973cab210d49d7c5965ee14b24af69d968a33cbf8846c15da31538cba421a65fd8dc7cbcb237efe1c36f59ab040fc2459097fa49644d6761b2ccadfeb8ea4836500b971fcd64f9b51fff1a1c82f68405614590868ef1a147118ab6b5dc61abcf93ccc0495351c6d8efc9f3fe71c21bdff004d52f87fc2bdfebe58ec76f5ce90ecd697b3f7e945d5c4c252c7f489c5e50a79a553d3cb711073679a0954c4936aab3d39c3b4b22bcada4f4a70e3d1569dcc4d4593634431f90152f157b72aaa8516c73b4eac36f022b25cccdacac275b3e52d2d7d036fd22254f1aa2934ff03915c99534249bbb4121d75f320682f46b2f6506e053e812880339cdf0fe516bc1a9cee6a6ef068ffd22f1c1991110ef029f266f7d4f5c96adc41e575f4d72cc23faf64591b79924cb2f7d418561464945ab14ccc9cc6aa2c7ca56023116f5f07bd18a233e02efa252d258fdfb717c4b1f67f7beeab25ba2efbb8aa70b53f41c8fe686552d487d3328c78fa0498c49e872957f77c41b483c1b4e7cb27ac2801d75233335d38ef904acda8de90e4bbc152cb37e119ddf974af645a828f7f9945987208d49915302443c330824b6d3ed2c0858ae6aff2cecbc5f6f5b0447f3205abe13793be4686b9378dfed558bfa90eda824dee2f8eea3bb881f66e543606b819b7c334bb3ab8f132355932ff0aeb853ae27471aca7a80b4470653b1c3a082dc018505b73d74b0af1c05783c9efae1cfe1bf7f53462e5d96958bcf5927f4af1fb42fb0d0be7aa9fb6bf007edbe59a5157eae8acfb6851bb87560036e2335cc56c2272c6ac47b332767809dcea1ac90ec256c3edb65c6591269af008d413ae362df1494f8465999e7a108ef8c49535efedd075470dcab7b8006c27a3b51869d05f1e8b4a6264cfa41198c1931ee7991ef1d57480d4213950241c4f01e9494557b12621e96cad2698ec684d3707214fa2ebb113b6ed9bbec705e1bea95878fd6088f9c9ed3c3a840def37014a3f6752f2c2057ea5b50924bac303e02b417adcfe22daf170cdf58fcc719c6b6a472380111238e06c160c6bec4991adc34964b089ffb7b72dc8bdbcd598692312d890029fe1688556fe629d66e2eb61c9509303f269ae9f83b4002dabe90659f57884d2f9748275cdc686933bdef4e42975c1a79ac1993115a65473b66a3a5834275eccf2d31400f80192b73477e2ae2a3e38c1e0f49164b66c4e800b02a67667d828faf21e3ef3463932d7d97826f20cb6736de59bae5cc6c8e00d058540b7a7f93d7f00709590e4f3211a7bcb27f6598a26e036eb628b7ce0735e0a89eaae4854ced5f6e15ab5c75c9dc66f54066983c9c8ec92e2d68c863c3e249d23b32626bcc00f0407c941142c9e08ff48a49881f8faa5aa064c3aeb0d16ff85fd3cdc70c0ba1d68058ec525f4089d3a0511f595552cc8e5ac18028fe8f3dbf9cb30ae4ac3e6bcbce2447dd3c9789c36cc386b5ca7c86a7b4c2aaaa8ff93ccf16d0c8eb1076f40ee0dc120f24487929003c7f5e5c02d647e0ad2fdde76b964d8ef85ab33566ccc58eeed9f1e4ee443422fbbf6add3295353fd7aa135a8dbeb42b2b057a093e43c85e81d6803cbaf1028779f8384ce7376b102eb7c78815c41ea1cafed1d9837c8f9d7df304aa7cc669f22027be5958389e8ae79921bba5943a7edd814179ad32cb721442f065a97b7caefff9e4db9e6b2011679f23911a4255ec72ff407884e51468ea833cb00c81a4ed0294115d21374a148510c657bef477c2c420cbba44d3fc07988bfbd9a11dc8370ce697fdba7963735d6291922809c9b7adf4cd762bbef6e50eaa6799408579368461599ac0721f1b6202b1da03884466482446e30bbed44d550e837d54aded17f841e55e24523ccdaddef4b851abfc77e2ba70e9e046f682a14c95622c785ce2009b4551ca4f18450b984c7a657b443a77cac7955ef1fa67a87c90d8431011b1f74a7623bf46e994b69a4365069f021dc90a84cb5a899625f4703de4c236bd8c2a96a1314e06846288ba81a428088c76f2cd1c7b14e396accc5dceabca9ae7b854c5f7aa5196deaa667791195263370f7afdde39e80582c5620299a176a461638db5bd2e1caf8da1b70f03315b0eb33af1e353f4f60f45b737f6d02d6815fbdf26be3db4f96368b05ea769a39b527957f05d4e3c55aa37c376857f01c32af7a49baa01f2d671342614d9742d632d4060757783b5e62924d14320f46238eb720fd97233c59f334018ab2db5d3d0537031fc2f0ba974adb8e1ebbb92aa9422ccdf7cf7e8332e919fa43e7073f1f2c6e1a6e580bc06f898f2269b0607d9ab5208945e525154653d6fe2f8191a2bbecc0ceacd8ec38aaf9741317c753f27a47fbef709a2497ba0d3571f54c3f589320b0fbcc1ab842adfd7ee0fc209be2f986371f8cdcb3b6a10b8e325cb27d3682509ea99d2ca793c895053485693c0761587b2f2d29a2d771d4d8c2df6c3977ff24c988859f1b94d979a945b01f9138a43c7ad6664f6402bff2e1afeffa9a2d5bee9fa08b7031772d179d1032501754f629aca86bc1afb8570f9b8d4a5a7d6eb28bf7642361da0daede4bc3b4d51074b082a975f37c5a463639ba597b2fe2cb0379e961a91d320ccef8a344ad64b1950733abd16049b1f4d9dfdf4ed4f2150370feac9a0b2ee37d06f8e5421ff50c443146cecb5ff0332100c959e25758c84386a7509b8b9e9ae97938c3a569da6a075f10fc652bb46f5f94ed479034c1be965295f8f16d9cf15920efd005095dd2e2229a0b0cab34728cf27eb16d331ac87a8f495589e3a890b1846dcff5dd14afe3908beef9738b9ede70ae8d031f577d8dae6529d4abf3c0846ecc134385a4b0fa18ce7e3781399fa9c0091df974ffc81771597aa398f0ffa3cf347995a83376ce482bcbd16e44f87f2c947356c3399b18cefb7767f3ba50bc4c40af1a436ed55bfd5c36df629057eaccbc9df887b3f87c3249defbbafc33d3fedce1950c6ca8fbfc92cc66a079c27bff39cde2fa084df701dc7dc0e2952c893730e2a4f2928dcd361eb903c75ae9c4365751c67db308c2ec9f13d24c1185887938ac502a0383f58d592bd766f351751bb83ac4a240188d334335431af74dcb8d3834d1322ef69eb0604482ff1310697a1f504b9f1de35f83b4ab6a3080b3eb481e378c2e26f91a045831e3d61ed2543e1e60c208e64fec31c3da5a62326b3722caf13e9fe4202a555bbb7448b7979f802938c9f7e490078e96beb507219c6162a7750a45cd134d877ee0cf2aa176eb36c66238176408b2b67c7ca44483ca0d20b440e25c49ca188d981310e646f5415fbeb4b63111f0ad65d38f1dd30615370ee70f5c0b17dc63ac3580e4df87cbb64d3d4b8f62cc83ab3444f55e3219803815f5e4c5e88768c4410d10275aa9426550378c04b31bea6eb0797ba480265528fef7c9730c60e465413c8f12b63a7dbf179b310b0263c3a5bef5364db0844e6721c6c28dc9c509ed1f5de189dfb6e3708464c7d44b4d58cbfcf9d0f1768eae05e72d6dffd5129942e5e399e727b6360305e63c0ffee2084ccdf801b39ea7017d0379edfc9560c983fa092662a02120574f5ab1654e8d1dc5b093233b13a98fa0edfd64bc8be4b8537f8d4e83ec1e6f9ed4d1c3e7bdc63dd2bc11c39bee8312fcd988d783727380f7fcc11e69b26671890b55cbdff8656f93602835e7d83ef1856f22880d38b7851f846f6e9e577f587115c564a0e06ab2d7689230b6901f036dc24dc2ebfbf066bc38e5ffc673dda02a3330d9ce8ed379efa5cebe70cfda880526837c0d8f3b535fea9c6487ba336cbcb8b889dadcd0568e7328e0d9c25eb6e2c6144c5ffc5e60b74bdb610beb4dd438c7a882e779fdc8d3ec7262ece0e19c4c461baa9e6d591ca1dbfaefd8dd48f580d74331b9f5eccd8a2d6b0a818016d88528dc066eb50e0b2cb06061227a765dac2b42bc7d38b2204296a0b9d6fbc001bc9e987675086a776fc6028c2f8e3fc4ef284ac44977725124096d2426bf416e83bcdc45433657861619e280f7092e58acec50907d8da489ec4bc866119d1b2572d6fc7856fd762c8f6e03ea33ed277fb55a8f254714ab3790aff29124ed2d8277edea5a4eda13282e0b6c71180ddc9b0b408a86ba7d0cb7d3e255099163b9377d5dc130182998898a0aaa521c4ee626028755084097568d88797fde2be030379a3ced21584efd3f727bef895a3ef97f25cf6ecc9e7cc4a3bc1d2b8acefc2a949c41462d6f148ab7cb37e5992585338e55c37d6e3ddb03c1cfac2c986b26f899bb949119924eee94c5408579f1057ccd3a05919dc8637bc171a7973e20661448eb4ec468dfcf33ffdc0b5e36dfc6e277f888c9d593de160cd11d75cc1f4994dcf0c6c101c5d022b2ba32f9f55531bdab85f18b9c048a6f4a8f13a87913dfe25eb33c661d35b600d31f3a20806b53e5ab44953c3a2a3a25be73e47ba0a53543005272528b690c9307b136b41c12ce24dd1cd73ae82c099d0bb52cf1e015deb4e4ee2276d9ac5aa1f86cff73ead9ff5e04cbd0d18a3f5bce78cb1c54d6a1a32866ffc8b757a62e8fd401b620cecdfa2404e3f4d301de09aea98b637b5298651f74d5c1ecbaae61bfa16b0385239243adceabc78d70e91849d4b8f3977c1358c40833280acb36d397a02a2af3338e212f7164e623e37b91b0bd0af8e70b890270a15d32718b4bf1412c29a4c8555bd5e064bf0cefdf2faf66d0cb21d02f18cb3d30ad717a11b99a0180344c4bda5d41ec33595e411049f98bb717069c1294e0d546e661ab4201fb5697bd350402abb455f8a9468b5045385269088b7c4c9b44fe11ce71ee4acbbe9d210a5fbe04c2a3b22e25eaa474ca16599f96e14c5b4331ddc231307302729bc42eef14127720411a4c405068b8de0a7321879129d370b8f82dcb5bac72d7ca5ff9cef2f3163781ca05ddb24b6467d0ecd0e0699ea90ad85b5d451f4d698522cf9ffcd9ad70be03e58ff7a4525b11fe79f2b6a183ab41f423dac54e2b00b5207dbc8af684723dc6cc19a875e95a0c8b52be2f60f8ec8acd348cd9f90bb672121183d9516a07735c93e0f2ec783c272e478bee2445a9698e59214d6af238ad6e19a7c8ecf64e6437d4ba28a99af918f58a91564cd2400659964d154c5cb19943189034c76d47dda3f0fda30763b748fbb612682f9b6642bc4e335539cd3e8cb3f3e034e832360f6e8c3f6a9316ccc38ac34b61a58a1d63f640a0f6c5c976b5fb117a590e9a62a3a2f121335125b8463fcac29ab58fca59e5fe91ae18080de741ac2094437f71c268d424bfe0be7411ed853586291b7da4616c01edb42ffd54d9134450e570d1f5004b03d428dd2404869189b7f0d462a6877b0ea3615717a6b2ebd2fd95f02313f10870d0ba2c2a99c56c4eb225fdf6e4917826b54c131c4de7a3537f13076438fd0d7ef56af7e86df7ee6c0a5e827e69f06e158a56afb124b37efec0c75a1ec1a4b7db141c04ae9c60e64495fb74d8fffec6267ca150fb4adafa5dbe4e72b155a9df3b50a0fbda9b66ff8761af294614188d3b3c56aef6f54f85d0dfc5765302d8b8ce77c5765f5141b449b12cebd3d1eead2af810fd23967527905afd2d999276317717f6c4e7ac9c5f821f6fc8b43f53d3755eb44eb0e2eba9f7b8385ec5b859b7977e7b0df43eb096a46c9b3c87aa37b50d1b8661d94dee84a639f7dd220a8e530f4f45f3721c74937f01231ce0c0ddd827713e9579d72c60d4403fd3772abd05709a2855e63f2f612c95b33684afbf688bb37631542dd4cbfd7adedff606cda64205312f13d791c1dca6d5f1b35eb87e71d80284343a2f834b3ef1fdd57df8f240775346340369186b371417b1b22a3a6850a35e1e70e423879e6b6d68faa86b1036a74551d3fba019ae0144ebb5d07f8d90c3b2e96024dfc7be23c87c9f31f8e0e7437a9e60e6bf5172f1912e1475097c1cd32f57efccc487aa2c5e9f9864b83c53860ce02a74f5799b2ee9a1fca9c03d956d6131569f5c4d588753ba2cf3ff072b848be361509f0414ab97bb2bf760f3272ce4b093a0e586ce16b0641109f7bf5dad5fc2e075f3a54f31a6ca13581545d5d3c229449164ac0135629435fe67b5ff1481bf1f262a22eb866dea77dca64048d048d458633134c4e932b0c7cb0177bcc967eaab803a02e5e6c1969162b0e80a2623d28894cceda254399cd039cb34c55fb271da522dc3ee43f3d1e02d53d3597d8905d811be8716cd9508887fb7e886acf6e1eeaac346c0d52ed82a8034113f218236587d791f204516536f8d7670f4340f692a3cd34b60efdadec004700a5f2582164369edaacb08c5617f30ad59386981e1013e7bb49504dc1d890d180a53e78f9121c37a393dd713355c757a05e0de2c827ef397ce00d8dbf8c8250691ab980a1662d0317ff20240d81d31f95fc4b4f9877e894a6f093b90e4a1822a535b6df4c5f7cc12657028de1e8d57f2cfb29bef4e20501dc4ca882924aeb801847a976872452da0f7c397005bb2b86d16eb734024309e369e7cd63ddeb5583288048af6665e279a97f115a69abdd5f5dfaf9baf075e2d872b495b945aa35b9f2a710e2d0d7cbf641cae7efb81e7327e10a4e303970eec2b84c3e475ef5885ec7676c81d7e646bb3a88238289729f4e8e1dee7d8223a5dfc217c35391411a298d9405ae6dc26ac10b980f3e0483fe6e53927128568a32ed5f7eaa4615a5568164c13a72462029d3f4c3d63fd2fee11cc9440ed9aedb024016b1dc77f276bbeb4488bf5035b2a78603b85fa266d9a534ebbd2a8c0b4992209d6d8e43fd4a64b213da28d79db5b394fc45ca8f713d3d3681a503a36f480695ba267f8d53bd0c129a275e99ca83b857ab91e444dfc648ebfe0082a4e00533952832a056b00c5d402c1b9697f4d17fbb7b764a271a46c7b61041d8ab023b5c44b39198944dfb7b9a20c0df42eff401a82635ce4270b6dde90402052b2a0c159f280e73713e02fa5b7244e3b9b66f9df73eb52af63871772808efb2346832888783c63e6b0bbf936a0aa9e141a0120a2324e9383e769f50699da78ec1bdb7572627e7580acbf3cad72b1c9cdeaf711e922ca04e1ca4684c66211798eb26c35ec37aa71854a33f449e6f7456ad6bd2bff5b5d4df65929b6e9f7857f72262e991389eed9008ba093efe1ac7f36249ee530b2984924fcceb784e874690ab2f84bea903bc904c07f58f23cc8d54e6ac9ed83ab4da9c140f3ea897aaa2c24d05eaac4c796eed0c041b8db357e29bf824e1797bce9e1f6b0926a8560d59b7dc7cfd24b93db2170997c094d79e03c684933ad53e91a17023d3116c9eca1348bbd2b5e0d80c7c80a29ac4973ac83803eeddfaba4a7f430dfa87035e4c3f39bee14bcbb696a3f40bbb189dde1543adeab0b4d4ee625861da503c2fb5c748f351df4916bceb5a493be38ad4fb17e0273fbbfe06ae2ffb295269dd930a9823c33ef37c5470f49b1a0013594ad53e9173f5498e8a25b44e4fc01ed3b321a5269f11b7672192f196a098aac67dbcdcb925617385e02be54485efb1114ee2a69a77a4ec60a126815a29593b6eaccf9695ac6a28b13e8ba88bde3bf95b6121e5ef11a5b236fa7c00b47050de6a1db9b6326521f632c87690bbdb2db6f9628054e384f3d8bc3bb60255c097c95671f1ec7ea722366b992af7df8276b673a040b94058f5047ee53640eea910f171411a9cfa261cbc5bfa4b79f64c1c8eeaa3e2e2fa9fe861705c82985ed01d5a3bde50b523de10faca25c44c4eb78b3b9da9d4e563abd4867db7e4bc664677c8196f021f3a514394becb59f51a30858fc76defef4b104e2874e7a8a4562f61d7ddbbacdb5591d96d0ec14b332c23f76057e31e02510d462c69143c6e24b92018dfb79f06711aacc3f1fd9e01628f0c03e89466eb39195e6f99b5b273dd49b0a37d997e069282ba510b9b34075fb3a511bf4c34dcd3b50d2a439b4e0c920902628737f2b98c18b6c5df620422363214646c28534a15f67ee4ba7e2db6fff077731db7d49027c99549a119dbaa22e416a62d6626521b0572168d90dfedd4b64fd382b861b08201cc98225c0ee6e899bd2cc4de68b3bf83db779b1dcb433572397507bc9bfdea81d34eb1f8be64fae8f544ac985cbde2025c57e5f03bcc3fc6d951f7610e000439f61dff7407d7b4287ccc01d2f41f7165895e74106b337a446088b056fa1dee30fdb73007a57708706ad6c0607f93e0abb272c624cb50bdf528b7d3d92dab18cfd4447f61eafc2ec4e7d3f39c618274f24263a5d72627bc1b1478937c569df39f8b4a21aa982165590a7cca76466ba8cb47e373f4362880c55e34f80ce08d03d1ce9f152a4fc0e893bb4e8c4d90af3249c06894e063b0aa5a84d240b02778cf27df8a68a74d8ae74ab495fd73aabd70a203581559ee88a05d6feed165c2bcea3d89605c18cf53eeec13d15f7a0d0e0beafcbb59372af7128e3060040835c1316cd30f67a0f0c8ebb3cf511c501dde1dcfbbfde8619290020f13d0057f5e55c8e402747058c931e1b218a9fe723cfe5cca5fae7c1441edb9d61f7c6703d5811e6ec3492e8cae1d4b9029b7a333b953e28e029d1827cc6404749597fbbb573fce800e958ed506bc8a470ca7b3a6ab3781c16b68a6ff5dec810b68a1fe1cbccf26b3625c099bb2b3b580d3c22a410cca903425f8a722d630f76df507571affd9a19b78bf5702e00ae3763f5e90561666a9b817a01ac993cc739531771bfa761bf74deea8875868a48fef8d333075e0d2bb7a4d3c1d765a188b30043aac02c19a4370ce54be3b588877b17fa929e58925b52d36aae8e8eda135053438a43a9fb2cf6fd98b118c4232724278f4f5d31ad0c6c5a66506059edc9bab62ab479b84dbcaa8d93a4b919396abe36a8757b4080dd9ea45f8c7f921b390ee35c3f572c1dc01b432cc00c16a1a9b5940870b139d76991df7e8e985182365ef0b27f91b744bd4e0608bf1d12e54ea28c3615f1fe4d1873cbf1126170586577b5bcef33357e12e10d02b69a9f82984ab1a22badbb28927a263e0cf1fe75f58318cd41f9f00e836dab8392ec04de71244d52c313ee1121d24b10ea574e030c782f7be1d063eba42f535681a25d2e45c6077553fc9b798c250f31dcccc8443f0d5f27c824f965732a9bfb9d7bff64330af9bc78c831d655178599ffa187a2a096074ce03b26dce052cad9a37384290aa6356976a37c69813f1af2bbdcf17996edb7d2c1b7bd34d3e9d50ad749ff818e8c92615189128b759f71025a0030a4ee9468b2fcba9a6568cae0a65ae18c53fd2e6d557c821841a2c9cd72c74fd13dcb56d2a76eeee0942617aee16520c8637b7c3bfd825c146bac46e7191c75699bfe653640a902bb8691252d5474828ae2468e04e1fedbed9a499aea3e5c5ad09745671b69c00e2d23f5da6935f0232531ca3683b00eaa32bb3d258c6ca21e1a369c02905ed1472a97be35e81c19c469c8539545d5dda9d72656088492a65aa19b0fb9c29a69e7a00f89d7afcae67bff9501672dbc77067806a6a26ab7a467f9dc3e14e1749ca08fff250520bffc003e18edfa306db773264f8ae2a2e6c5417146dd82641b5f2a2c6855ba0767585f0a396e67f8d286140f02571b3adcba8b2faa66af0a65b9e5eb3163485eb8600d25553d0a2270b417f4d1b85cead0734ccf4c2e707671c99807a24eec3cb1a0befbf1dd6ea3b7e1d9a328e54da7162d36ca411e217d9591bba1a3aa9f48ac094577b551837e4e381399c93b430fe8c03b8e9925cd6cf19d22b04996090d1cd44af93381d5d1c0e953493d8248a5d9a860b825dcb7bead72e8e4934f09ca0007cb0e42746d166789ce8d67bb8e34019dfb6c8b2c318f16faa899c134d3824325986c8d9c95f4ea32078bce6b3071dcf82d1eef8ac13044777d21fc1d1d8d19f5bc4b042cd767b75bda31a7a73a0beba02b6944eed2690863b3465d522650da9b5e9085f9585cad250aadd7208c618496b0f4d3fb4bbc13c6bd31327e614e1b3ca09a6e55b772dc8ab66fcd5b40deac0267a8c58fec13f39ef98733f1086e0f726fb2b7fecbe6273c69ae9b3392c40f070e186217cd7055abddd4b475da23199da751b2a7484a0e0f74e40ae6bcb551a1717743368f78f7ee5b48f180dc5517a74c34642498be4b4f4adc055a39a8f1e38c22f39bf9ed8d14e7fdcf43144e971d065d29f7d22d893c2a1a996a0995d9e6b9269b059ffe7fc719988d8714740ec1d52cdc1ab1ad730b17eb5e137730d57556216e4b669622e745f3c833c69c13eb014f91c4bffd5912b03d1b41e960c4bdfc6afe31b1cbfe126d1c752bd9b2d92fcb9b81ef98cb99e245f661fdde5490bbfe6209d834b5dd619e30c819b411c2d2b49eed9c6a3f88a43b4b9fe3bf44bb49ea1b9b79374a09e4312e60c804a5f24ad282bda45684b3c3d246eeb0d57829f7e35730b12b4a2b6fd8274af98d17f922bade1e40bf440b3c03c5465bde4cb0a56363b92f2085ce9b5c2a091a5826f213c8b297e83068c785712a0f288d2f1a6fbdda89f0213abca256ad04a9cea3f692387760c83cfdae697f11ad88b8a41a07cc63aa331e8ea2b15cb084d8e6e07d17eb15314e0d14dcd038d35a5355b3c0b7c67ef23ed6e6776e5484ec8d659ed7cd12845a5934c5fe83344eaf05f266fbefaa8af090e2ad3868f18aac7f3c10c4eed20a6b3bc4efed27ab202d661e8d010722a77e419d5115bb7e24f6aa128c06303f401f3f2decd4ae2ae71921f9af8632a5f53e0838790b38f5e59338ebbd22994d929243c431803b81fe62ba6881d11819e62c2cee4a9d10156c62a595e58620a51f65d188b6fb5e821db4e2b050e6dfb8dfc9e55d967bedd8a147c7a40851a51650f35e123e90ca94add46e87f5e0b62e333ad1255567e7cc1e2da389353765794567af97d10702f5407d79313685a7b23f4460cebb3771d8c0f25710d990691442ab37e7652c361a305e22b00e5f6bc00832e0d1c11e79c775bb1576703a707057c92fa7646ba119e425f9beb73528b9c0bdcd09942ec59d5f2325403651f6aba49ed9dc969066557d48c2041d8c3a4cc69d5ab81a26c8ecaa3021b7aea72bd16ec95d16b4542eec65dfa65d1b811da6d8071b1e5737805e7d7be183215ad227e1ce3f97f5a0a1888207c06c6bf8903a33812ffb68415b442bad34cd44b44ea85b6e37f1cf1586825ca99e632076130d668945fe5753fd834663430aa046c3e407dbffdd51234a907476439d5097a8e31a32ad06c169b9350eb80c19a099a4c6e96491e2bdbfdee291bfbadc9c94117af45b9f75b445f9558a613984654e6624182936c35aff8b67a30447629e533bb76ebaf64693e671b2118c5687ca6dd5fad6958c3f01d0e9d6f5cfd5e3dd8531194a13bb3c553d54c85905d42dad4c70cf7ed8e5ba4762b0e5d2a012f65815a8c4a585fabfebd20f961aaef4ea7c96158e8fdfe5d6a3e02ee594af68011007df8e817408f819c71d1e6ff6b9a7f2d05e6d79e8db2639f648241fae5e265eb150da98c628646244cc62109eebca57fda0a718e69fcc12ca01fe182388950dc1f529e054a0b3c2a89866de87b40e54fed5b27a9acd784e41521d8bbf95922448d07bea17be6b4bb5fa792521227495384d7e90aee5ca0b2acae497bf1be5b3ac53e30be5c3d1204ccabadd0a04bd4953ecd8a14655949f85a04b6f6d48c20d7e46c2e51e1bfcecacb61f95ab9b2bc1541d9cd768421698f50a4a450a909656b667efdfb806b1d2531a98d86f0136928930e4d581bb2dd224bca16d13480abf62aee5ba9ddce2bfee470096cf7cad79d83be6f5f808acd2326d417e2dec4ff7d5990a10347d0caed407e50922937c3f479e99dce0740f1d1c164143efaedb393666976f096ab456b2c08e3d125ed7790acff62b3171f1820f4379f4d2143159509e0270b1fd10a7f6e4df08da1fcabead53645db54f2357b26b9118d2460b39e1ac4f5d5c59acbda8f418b78f4c6233652890b3c67f6ff18a8ff51010e24d70bae11eda2feee291eeb43c7cb647c1c2c09b3fa5561fea63a38106d11a2a273c814867677ac2c0aec94a0385a0c3507328b27ed2f60d4ac4cc0425edc744894edd364f9d2f4161dddeba0131e8237121003a35c198ab3184c943232547617915875904288e247821b06b9eb55ca43014db23cde8c0524f20e29da959343fbc7591b8f313a70493c29263f989da020d66649f9c496090b2abbbf0c6ff0d97307c5f6bd8042e857bbf929a7d9d00b0b519814a984555ba6c9724a627723d442d4c068b7be56936d801f18345c53ff7db4ccfe2f53f3d4e32f62849e38013089bd164f1ad5d9dbeeaa3b683ecc030635a50787e25f7c0ef0b1d93a42e119e08e7d5373e89286552ac919c7783ccbe2b36d899189829b0ba66fc9e407f8ce29b1cab361769cbbb2a38fe4f7a4d6a2fd185433006f957afb26ca625f593242992edc3c0699b01a3421b2e1a9b87d4a575c929e858eb2a2c90cf829982e6e54d85e5febdb2bbc2347b2bceedbdc9a5ccf62af91b96b6b5ec4c958bf322549eaff57b79941c11c5907267bc29938c64984acba0ef8fbacc9f7114e2e63472f69ce4ed9ff55f96849e93c1619a78d248303edc295102fef5994fb315e8c2c4865e149127738e3f7c4f36f97a00c9c0329ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c061535781bd2333a5c5cbc961a0c230ae8ed049f3cb26cce0afaa965675cae2a97dcf8c87d2916405cee52a5709225bf2dfb5452277e091b6f36ee251fc9f31532db44bb177a465208cf3b50212cf53d3c4b38df55d0051646b5fad13df3a0b6e09ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c063fc5b25de544ed98d8c6a1ec548c47a5523e939e8bf07326efdc133352c92b758035c841e4360799f0135deaa0a3c176479cc9d356fb8b3001ee624ba3b4c7c39ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c062d8144189140bb7c3ac457c80db5c4e44a8d4e443e2773311c9fad69917dce60c97f4cceb9c2dd63df80675554f335640cc46875185af539e2b2f3d6b9e9d7ed57d1ba78e19dd46a4dc3be448ab14e7f5fa8019b3bcf94fc58c2d31d1268465410e277ae39e189a5405eb84d31408cff0e4e1bb4698a4778a86a3b78ba53b9a754a40c9f144e80fd40afc82eb5b85fa7da166804f41641cbdfd1b47c17ae4249962e3a7f7bfcc5742144c3f1e81ee7154b9c3f037e2616226eaef100e203094f8b399c1baadbe4d98eb1c5ec0c61d66af08f61c9280d8be84212bb3aba564f9a4e18b109b19b6aa79663d9635ddced8c8975dbea92e2f2c280e194449d261233fa3e1f3a9bc83ec3e56fdf4d164020792ccf9cc7ff62544e6b499095e5e984cca627a0af554b97ca19127b8fd4a395feea57a22e3a481bb74132c30f7a4c4cb3d891b1c7782cb72c1a45673de45b15d7d97442c83f4f89a63561eea9e5b2db1474967cc79b07f116dfb5f0df30993258310ae8c87b698d164248c81428906c12b38a8b4abc38531ee4da2c4d3a33a9f150147711254bb01e7a36fcc94d01be17fa566cb893fdf9409da62c4ebfe439f5d03dbf215f1cb604acb01b9e42e1c0d83b6e1ca0f0f11649c4b689b7a563f6cf82ac0d608708175515b1a568c4c52346285841d56c54638db511bff0f0bbc2958b1b0866674b54b99729f756887332ab18dbad97a02b74466fc3cd460fdf2a2eaaeedc51cfaf784305da8f01f2d21b1054ae1aade69c0378e2d3a612ed0ffc24fcbd781f7f93cbff1ce93e7933b08922648e164d616509dfba870cde711f63cd7105415ed680d5603977f7c4aa92b24ed869b213d8fa004b93da70314ba02e2a40a635326de3f88b4f854c2946ff25ec150c4c32ad3fdc8682baeb8c28e76f067abc27af406e95b53c22cefda75fbf996bf46b60603a24209d0b1b2dc656bcbed0b7df5a8d76079daa4e1552d5540b12f23a8eed09cc9e87bbd876ea155787e6d8025fc03fbb5eb35273091fbd1211e7f2e18f940087c85f2a9a7286b61a792c76e33387d6033f6fe1329f56d4c4a8e7c2ea4d0efbcfaedf4466fc28f1cadc2b5297529deb3d231839c08652bc8f61070951005e5851b4624eea7adc326ce0f2bd71009b05b50cf91697e983620684e7366f5e07480e9fc5015cbde9996770a2f0da5aa061fca258a31a647323a35d7e764e4c6d0f76c9cae5aaabf071bde7b5a006414914d01c8c33a0b9df6b699bb963f2019985f34d30d8577db06f1cab3bebdb327ed63d1abe28b78fafebc63bf30bb56c4759f57160674ea01f66be094e296a7465cdaba02f6b2a83acaca8f8bc1388faf3dc1db1dbb2deb29bc89f347745225101779b4b419ca58b87bd619683f51151bb45c6a786c5fad5a856b5e5de636d1c9492c06e7b9cc77144dc7f94f1b14abfce2e77d18f0143fe3d8c5275257b429efb6da34fd654cfcca98fb477909cce87c3e55abb2fdbd80d9eb1059a13c4d29f5e0c35b9522b7341e5132d6be1f2c11269d1a5703af7c9f902b3d107e898af939dcb8adac11cd39304a705d79551eba38cfcd045e26ac140d22eafd6448813e6ae8b2fa9d597d42d51ab3f23e702d92c0a306857004026ee6d9d805f705cb15131cd6a85f4fe6c562ee543b0fbb8c06e5e825630c9c36e41dc3939cc7fcc12c97f0d26ffa71f74847cbae4f6a51590b276e5220fcdd216b9ca348c2275d50b1005ed566e571ba36efcaad31830021608c2f422fde6e3851a9606b5a438743fa1fdb54e7df672bc0300249c0b7140f5c6e2c822b43f3069ce74b126e03cc976567552671473970ed5fe3b94bc5bcd3c8f45f47b93194eb3147fabc02c6c0b1337f388e33905c00ffadf99fc1486083750c78b8de368c512e36b6b501df190cdd0009017798e6e09873138fecb58922e9039d1234f122f365a49c5c4d2dee37d11b5267d4f46737e0c6549be0b2df663972fb108264bb8902560007582322de80dbaaf2d2b4977881fee569ccccc12140caf1087f869810eca7befec11accedac05229c0571e4e4113221ce8a09f6cd9c7d3061ec0c0b9ec2b8a0d4771a80974a24b347d30f44fc7fcd5e2055466efd07beb2bb6e0e0aa355ac4cb77e4edd15cdb6e7f4c1a6732ef9962cc741b8cdb7ad0450f6c3d31c21a80817c8c2088c29a5daadd9d66aaac828097afbf56c2780c25db0e66071c8db09103c2d97d9da01551d360382f57a94bcc84d2c827a8a0c5c3d172b1fcd13d63e9901e4ae8ecb1207d1fe8c223bc221da7643f28b836e21674212691329d478a71c4fdd6d383c401a6bb9e93f09819be6d0babfda599a23db562253f2d2b495ae6da82c66a8f63010ffd6e1989e927c176ed5c88b49f19cdeeaa97c4dd63c6e4a36246c3eaa40f4ca6d395cb9f707e059bf98baa2dde96f2086f8c709bf56f3c710768d6cffa617a26ff5a381cdc6b4d74c9078b9a756f1f4bcedb8cd6c177614c09eae8b455de22cafc2541ec7a0f9ac1977c732fd45956b255d96a5d8c855de47b57166054c46978bc728475fe96b0219c598dc71924534b76d68641356d9275dbe1148ad175713f3951f6ad5ba6a525d98db04a253e4fa22a0b7d13a2930bf74210921de659e331a1c1647fe0102ee547f83028d05ba76434ccfa8a7ecf3eecde2302276b9ba13192932fd60614b6d36e0ffaa005162523089d9981a70ad9d5a0233e08ac400ef0d6c2559de5ab375a3d3c4c1835527e65d2c6248d4069355ae8de32032168e5c8bbc68070d338e008c504ff434158adc395be0378e6680609ab937947a2062aba2b90935d6c96d75db61f843e10d6407265642042f448ab87af3173b1e21ce14cc51a181a19251874215cf79e9691f5d3edb271983e00d652ad037965f8b1c1c5a37b7dd8ce45d69e62ce0139112e4a962e8981d8aa6910608b99738eca62a5832e025b52d2849bf3d7a78a2021d5df221a241139f57f9edd464099b1d10679c7058e754c7230c37983c667b2fb2ae06eb37a688a8ab1ddbcd06f5353bab30b5f92a23c8db5ff307c5c7cfd3a9aae2b9191847bb6438398dec3db9a1519ca72d7160939894c093c18791c9a9a83f3a652e6d5d3225a6b9c09269b9f157f95ebf8e96b0bd8743f569e4930639f3ea985959307a4cbba12006bf14ad1140497976060f387bc75c338ccc7da15f3c222737e817af45561ba76f0519319fdc442d942ff7405462d58ae06af2e1ad2ea7fff86b2d3f1af0d649898a35e42dda4f26a3a7e920c86b85f90f5a40ac4936033049e6b02f5b4b13eff5acbf5c28f949dce714d44a5517fb92dbea952f933b0c86818315c01d0e39026fafe23dc2c564806bdd986cf849700533d0fa02aafc42b508432e94e837f2310a94595da24b6b6f11ff60df52ca17542a90af712971b98cc25b7c3857ed0315a848ebfbe20e4bb7dae8ea515673d25fe4c84eac5804818d67bf80e99a7a2c57dfbc3e105be913ed7d6117eff83c57eb11ee6994826003e7419ae200805b220b7d854b0ba02d793315637ffa6f2068866bf550eab83524f31459b31586d7abc0b7b7d8a74242eb2950b8fa66093340cf907fe9e6df5591840e65833f3dcd2ba5db2f11d4ca3d6a1b31f03ecdfda0fafafb6574cbc867b1bbf704392e366f0eb5d1a7f1b865f46978da6019015ab8dacf0e3c33641ce834f9f3f657aad65334c2b059cd7c4e64a390021f4ea250e40ab6456bc84c211b61f2b5568d37ff82ff11814ee6af76cf5d68cb8ef55adfe742649241c52d08b79eaa1721e99fc3378ddf5ea037c37311096dab4e278d4ec1e12eebbedf1d2c5dfd4c69e675f2751492c50b48ab04d2620601285185ae2858d4931ca6fdfdf2a8a88249ae7d0a538e3241c200a64518507a64b1bcec478e108d863a7f625171ed42582b7b9a9389eb3b665421f3d68f59425ba512f80434033bfc50e597def94fbe011380b4aff784295d72261fa2322ba0a24f56eb49e22957a47596452f0269bce077365ec09d1a5a45696fdab3bddcce23ae42a00d3927d03b8f214566ac4c1f5d7a1c872771da5176d41195b5d2b6c9645e0f21ee32ce61432062862068d262ce600cc128407eca99a7da780fcb3e53d215274512e58c7dac233906b856ba279b7156f1ab2c311f47814618f7ac0689733ca19ce9dc1b95d9a0d6e884ff2c1efc0e1ca6e4caf47b9a72f0c7560684e5205c1f2811707e5450d1abd20bcdd39bc37f3fd5374965f243d104d9eab3f752764ce8464ffe5e25e89d0a04fae437b42fa22a65bdbfc99b8ab0c2d8e5c2ff72329420f51369613ab2c92d8d20deaa106732cfa66b3fff2de56ab5d25b45ba37042612ad4833660a3d2a908157b199a150f00fa47e500e83f950f2e98a632b002396636f396153e0975f42e0f48be6be06a655be35612c6d7f8d64dbcd3e0b306313602f99c35a75d6169d6a3fdd8241d3f2e4b67aaa5bb77f40b696fdddc14a7357564c3924fdddcc43837610a2310e5936d9fe55877f5de2977dd85aad8ee1edf3a571e7483c0dbd54d05b7a3ef1af8559a8cea6625cc8d0891f4642d5529955a1a3adbb84dce88635dd8763aeeaae3ccb1ff30954f1a1e97aa47dd384458c5080f8c7a53c534b3e379a6c0e884cb35954c877685917d9dbc52e6bca78046ef4103be357b6e44946ecb8c4d5399b56efa85381be5d79fbeaf94027afeede3b623b17090bc0e6cd5dcf3a94c46066449def8531ccd1c18d8f3043500c532e0b0451e9c4682255c1853c44a58ea9adc47d55ca8a23e276dbfeec3f315eedfebc8271fe656ca0d43949abe60ac555d86d5c29d092df0229bd1986b40dd990356d5f23656fc05f48aab0705e9cf0ba24ac5e1fcb4d339cf2fec2d6942ee2ddd4c76a8740ebf60b3ff9be2fff6a5eee01eeeed802177fef4705de5efc45ef2c1a22fd745a802cd9b0f8ae9025218d78e0fa2408f63575b2c563c0dfbe778937e67ff4b6aa6b53e21fe0c6e922747e644f23d204ee01cbe63e6c0abbca916c47078f0cce8af94e3830d15e5df49cc716be8770c51914ff0e3f311d32a820bd0f7138f4bfc6e7865143b7e9b89eb2de9c498468155fe29326eace2b0049466086d14dbfc9b0a6f2e18f6b3fcccb6fef8f4f8eff919e726717544612fe567a3782225d52a381e06cd77c0b123e13344e8696ea2a3b3852ba129808299b42b9a96a8032d91005a4384eb16309e593850c80e4c237fd7eb2c008a7ad9673b898cd061ac82281aac3072752d4ffd0b3e5dd88c43bee0327c14aebe4839fa3685c2da9227a4b56770c8ee5f936fcb11d8dbc61cf6fd04746421de0539591fbd0c83f19a4b03d2eebffc7279faa45ad3a057844753d8d744bcd79b327fffb478924af20b870e365f3e1348710d7552d4ca61490744f587fd88674ac330d034a9c4ec63c198549226d745eddd979e3696e085489dafad0ff1796090e96e442af5db25e8ed864d5bba91dbe1e1dd679760ab4e3a7e1fc4e4f106544dd7d611171f64b0dfd2435352b5d61000694492de4a590bbf0b7997228dc7bc3d708c72cdd2ce24443963600dd975e553c22158239ae7e76935e3cb1749ec972e60ae84ddc46dadefe6c69f2a158ca9afa6ced8a715b86ad3c1da4afbc4eef16abd8a522bb946d841bd389ba7415ddc54b6ded71d237d28534e64dc638a5eba0c3b8a6cb1cfc202bafc7088497d4754af710ce3792994b395743f0dfdb096a39487a7f7b6e2d13b19a29f14cafbb51c194e98513e9d54c2fffee70d6008271dc535daa1bb9abd5c0594fa46bf17d309c11368f5d80fa5c62d3683546e4833b4e02ca11bf26e7085cc0482dbcda62ed68178cbece361394a7454c94444da72f600cf6c3dcc1029e0e5c8cf54e1bf92ec7a4f58d776063be0671f956a55ed4ba0355de686608143cc4868ca68ea8846ac0022d002ec43c2c75e5e35a92d4a4217c385cadf93f7a35867267f449b058438f08f013293c6ce274f749aa502f8042fcf9a1610ecd11edfd7ac365efec04ac27a5c2dd14acc307ad195c01e4972df13a1cc3d17aebc91d3e9fece1e414632fedd297bc892c862b55a5ed7aaeeaa4793eebaf6eb68c2a41339126c4204de48f6c529f0f1b98e616899b59ffd61b618f993c54dc1e9e0f82f7f9798708683b601e2ab06c3c0d3c3dd84a1b5a65fab2e5bfd405802a826d13709e8ff4fd48536ad925ab68ba5a99cd580ecb6c5c250bc0449cb803df98903ff23519813b3959a52c9be2f0a5f86846d6956166cfa1783f7a825c3728aea244fba31f2b6d979e3bce11b689ac14b29358cb90864cb3420bffca281cb92aa0b08bb54c74687eeb4259c7d372fcc97c9bc4e0b1464881c1809ddca66b696341ff1596e2cd2c60b4310ef4dc9942b7aee279838ab537377dc7c8a9bf47e5e539cf17d65cef62d4f7e9954c8f6e1c9665afd1f26ef2d0d81ac1f708f2d14d88ba85c7b94aca31d781ad7830b6a6188b3058fb867d7../../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/dtsrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootkernel-4.18.0-519.el8.src.rpminstallonlypkg(kernel)kernel-develkernel-devel(aarch-64)kernel-devel-aarch64kernel-devel-uname-r    /bin/shfindutilsfindutilsperl-interpreterrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3e7e/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-519.el8]Denys Vlasenko [4.18.0-518.el8]Denys Vlasenko [4.18.0-517.el8]Denys Vlasenko [4.18.0-516.el8]Denys Vlasenko [4.18.0-515.el8]Denys Vlasenko [4.18.0-514.el8]Patrick Talbert [4.18.0-513.1.1.el8_9]Denys Vlasenko [4.18.0-513.el8]Denys Vlasenko [4.18.0-512.el8]Denys Vlasenko [4.18.0-511.el8]Denys Vlasenko [4.18.0-510.el8]Denys Vlasenko [4.18.0-509.el8]Denys Vlasenko [4.18.0-508.el8]Denys Vlasenko [4.18.0-507.el8]Denys Vlasenko [4.18.0-506.el8]Denys Vlasenko [4.18.0-505.el8]Denys Vlasenko [4.18.0-504.el8]Denys Vlasenko [4.18.0-503.el8]Denys Vlasenko [4.18.0-502.el8]Denys Vlasenko [4.18.0-501.el8]Denys Vlasenko [4.18.0-500.el8]Denys Vlasenko [4.18.0-499.el8]Denys Vlasenko [4.18.0-498.el8]Denys Vlasenko [4.18.0-497.el8]Denys Vlasenko [4.18.0-496.el8]Denys Vlasenko [4.18.0-495.el8]Denys Vlasenko [4.18.0-494.el8]Denys Vlasenko [4.18.0-493.el8]Denys Vlasenko [4.18.0-492.el8]Denys Vlasenko [4.18.0-491.el8]Denys Vlasenko [4.18.0-490.el8]Denys Vlasenko [4.18.0-489.el8]Denys Vlasenko [4.18.0-488.el8]Denys Vlasenko [4.18.0-487.el8]Denys Vlasenko [4.18.0-486.el8]Denys Vlasenko [4.18.0-485.el8]Denys Vlasenko [4.18.0-484.el8]Denys Vlasenko [4.18.0-483.el8]Denys Vlasenko [4.18.0-482.el8]Denys Vlasenko [4.18.0-481.el8]Denys Vlasenko [4.18.0-480.el8]Denys Vlasenko [4.18.0-479.el8]Denys Vlasenko [4.18.0-478.el8]Lucas Zampieri [4.18.0-477.2.1.el8]Lucas Zampieri [4.18.0-477.1.1.el8]Lucas Zampieri [4.18.0-477.el8]Lucas Zampieri [4.18.0-476.el8]Lucas Zampieri [4.18.0-475.el8]Lucas Zampieri [4.18.0-474.el8]Lucas Zampieri [4.18.0-473.el8]Lucas Zampieri [4.18.0-472.el8]Lucas Zampieri [4.18.0-471.el8]Lucas Zampieri [4.18.0-470.el8]Lucas Zampieri [4.18.0-469.el8]Lucas Zampieri [4.18.0-468.el8]Lucas Zampieri [4.18.0-467.el8]Lucas Zampieri [4.18.0-466.el8]Lucas Zampieri [4.18.0-465.el8]Lucas Zampieri [4.18.0-464.el8]Lucas Zampieri [4.18.0-463.el8]Lucas Zampieri [4.18.0-462.el8]Lucas Zampieri [4.18.0-461.el8]Lucas Zampieri [4.18.0-459.el8]Lucas Zampieri [4.18.0-458.el8]Lucas Zampieri [4.18.0-457.el8]Lucas Zampieri [4.18.0-456.el8]Lucas Zampieri [4.18.0-455.el8]Lucas Zampieri [4.18.0-454.el8]Lucas Zampieri [4.18.0-453.el8]Lucas Zampieri [4.18.0-452.el8]Lucas Zampieri [4.18.0-451.el8]Lucas Zampieri [4.18.0-450.el8]Lucas Zampieri [4.18.0-449.el8]Lucas Zampieri [4.18.0-448.el8]Lucas Zampieri [4.18.0-447.el8]Lucas Zampieri [4.18.0-446.el8]Lucas Zampieri [4.18.0-445.el8]Lucas Zampieri [4.18.0-444.el8]Lucas Zampieri [4.18.0-442.el8.v2.g6f5f]Lucas Zampieri [4.18.0-441.el8]Lucas Zampieri [4.18.0-440.el8]Lucas Zampieri [4.18.0-439.el8]Lucas Zampieri [4.18.0-438.el8]Lucas Zampieri [4.18.0-437.el8]Lucas Zampieri [4.18.0-436.el8]Lucas Zampieri [4.18.0-435.el8]Lucas Zampieri [4.18.0-434.el8]Lucas Zampieri [4.18.0-433.el8]Lucas Zampieri [4.18.0-432.el8]Lucas Zampieri [4.18.0-431.el8]Lucas Zampieri [4.18.0-430.el8]Lucas Zampieri [4.18.0-429.el8]Lucas Zampieri [4.18.0-428.el8]Lucas Zampieri [4.18.0-427.el8]Lucas Zampieri [4.18.0-426.el8]Jarod Wilson [4.18.0-425.el8]Jarod Wilson [4.18.0-424.el8]Jarod Wilson [4.18.0-423.el8]Jarod Wilson [4.18.0-422.el8]Jarod Wilson [4.18.0-421.el8]Jarod Wilson [4.18.0-420.el8]Jarod Wilson [4.18.0-419.el8]Jarod Wilson [4.18.0-418.el8]Jarod Wilson [4.18.0-417.el8]Jarod Wilson [4.18.0-416.el8]Jarod Wilson [4.18.0-415.el8]Jarod Wilson [4.18.0-414.el8]Jarod Wilson [4.18.0-413.el8]Jarod Wilson [4.18.0-412.el8]Jarod Wilson [4.18.0-411.el8]Jarod Wilson [4.18.0-410.el8]Jarod Wilson [4.18.0-409.el8]Jarod Wilson [4.18.0-408.el8]Jarod Wilson [4.18.0-407.el8]Jarod Wilson [4.18.0-406.el8]Jarod Wilson [4.18.0-405.el8]Jarod Wilson [4.18.0-404.el8]Jarod Wilson [4.18.0-403.el8]Jarod Wilson [4.18.0-402.el8]Jarod Wilson [4.18.0-401.el8]Jarod Wilson [4.18.0-400.el8]Jarod Wilson [4.18.0-399.el8]Jarod Wilson [4.18.0-398.el8]Jarod Wilson [4.18.0-397.el8]Jarod Wilson [4.18.0-396.el8]Jarod Wilson [4.18.0-395.el8]Jarod Wilson [4.18.0-394.el8]Jarod Wilson [4.18.0-393.el8]Jarod Wilson [4.18.0-392.el8]Jarod Wilson [4.18.0-391.el8]Jarod Wilson [4.18.0-390.el8]Jarod Wilson [4.18.0-389.el8]Jarod Wilson [4.18.0-388.el8]Jarod Wilson [4.18.0-387.el8]Jarod Wilson [4.18.0-386.el8]Jarod Wilson [4.18.0-385.el8]Bruno Meneguele [4.18.0-384.el8]Jarod Wilson [4.18.0-383.el8]Jarod Wilson [4.18.0-382.el8]Jarod Wilson [4.18.0-381.el8]Jarod Wilson [4.18.0-380.el8]Jarod Wilson [4.18.0-379.el8]Jarod Wilson [4.18.0-378.el8]Jarod Wilson [4.18.0-377.el8]Jarod Wilson [4.18.0-376.el8]Jarod Wilson [4.18.0-375.el8]Jarod Wilson [4.18.0-374.el8]Jarod Wilson [4.18.0-373.el8]Augusto Caringi [4.18.0-372.2.1.el8]Augusto Caringi [4.18.0-372.1.1.el8]Augusto Caringi [4.18.0-372.el8]Augusto Caringi [4.18.0-371.el8]Augusto Caringi [4.18.0-370.el8]Augusto Caringi [4.18.0-369.el8]Augusto Caringi [4.18.0-368.el8]Augusto Caringi [4.18.0-367.el8]Augusto Caringi [4.18.0-366.el8]Augusto Caringi [4.18.0-365.el8]Augusto Caringi [4.18.0-364.el8]Augusto Caringi [4.18.0-363.el8]Augusto Caringi [4.18.0-362.el8]Augusto Caringi [4.18.0-361.el8]Augusto Caringi [4.18.0-360.el8]Augusto Caringi [4.18.0-359.el8]Augusto Caringi [4.18.0-358.el8]Augusto Caringi [4.18.0-357.el8]Augusto Caringi [4.18.0-356.el8]Augusto Caringi [4.18.0-355.el8]Augusto Caringi [4.18.0-354.el8]Jan Stancek [4.18.0-353.el8]Jan Stancek [4.18.0-352.el8]Bruno Meneguele [4.18.0-351.el8]Bruno Meneguele [4.18.0-350.el8]Augusto Caringi [4.18.0-349.el8]Augusto Caringi [4.18.0-348.6.el8]Augusto Caringi [4.18.0-348.5.el8]Augusto Caringi [4.18.0-348.4.el8]Augusto Caringi [4.18.0-348.3.el8]Augusto Caringi [4.18.0-348.2.el8]Augusto Caringi [4.18.0-348.1.el8]Augusto Caringi [4.18.0-345.1.el8]Augusto Caringi [4.18.0-343.1.el8]Bruno Meneguele [4.18.0-343.el8]Bruno Meneguele [4.18.0-342.el8]Bruno Meneguele [4.18.0-341.el8]Bruno Meneguele [4.18.0-340.el8]Bruno Meneguele [4.18.0-339.el8]Bruno Meneguele [4.18.0-338.el8]Bruno Meneguele [4.18.0-337.el8]Bruno Meneguele [4.18.0-336.el8]Bruno Meneguele [4.18.0-335.el8]Bruno Meneguele [4.18.0-334.el8]Bruno Meneguele [4.18.0-333.el8]Bruno Meneguele [4.18.0-332.el8]Bruno Meneguele [4.18.0-331.el8]Bruno Meneguele [4.18.0-330.el8]Bruno Meneguele [4.18.0-329.el8]Bruno Meneguele [4.18.0-328.el8]Augusto Caringi [4.18.0-327.el8]Augusto Caringi [4.18.0-326.el8]Augusto Caringi [4.18.0-325.el8]Augusto Caringi [4.18.0-324.el8]Augusto Caringi [4.18.0-323.el8]Bruno Meneguele [4.18.0-322.el8]Bruno Meneguele [4.18.0-321.el8]Bruno Meneguele [4.18.0-320.el8]Bruno Meneguele [4.18.0-319.el8]Bruno Meneguele [4.18.0-318.el8]Bruno Meneguele [4.18.0-317.el8]Bruno Meneguele [4.18.0-316.el8]Bruno Meneguele [4.18.0-315.el8]Bruno Meneguele [4.18.0-314.el8]Bruno Meneguele [4.18.0-313.el8]Bruno Meneguele [4.18.0-312.el8]Bruno Meneguele [4.18.0-311.el8]Bruno Meneguele [4.18.0-310.el8]Bruno Meneguele [4.18.0-309.el8]Bruno Meneguele [4.18.0-308.el8]Bruno Meneguele [4.18.0-307.el8]Bruno Meneguele [4.18.0-306.el8]Bruno Meneguele [4.18.0-305.8.el8]Bruno Meneguele [4.18.0-305.7.el8]Bruno Meneguele [4.18.0-305.6.el8]Bruno Meneguele [4.18.0-305.5.el8]Bruno Meneguele [4.18.0-305.4.el8]Bruno Meneguele [4.18.0-305.3.el8]Bruno Meneguele [4.18.0-305.2.el8]Bruno Meneguele [4.18.0-305.1.el8]Bruno Meneguele [4.18.0-304.7.el8]Bruno Meneguele [4.18.0-304.6.el8]Bruno Meneguele [4.18.0-304.5.el8]Bruno Meneguele [4.18.0-304.4.el8]Bruno Meneguele [4.18.0-304.3.el8]Bruno Meneguele [4.18.0-304.2.el8]Bruno Meneguele [4.18.0-304.1.el8]Bruno Meneguele [4.18.0-303.1.el8]Bruno Meneguele [4.18.0-302.1.el8]Bruno Meneguele [4.18.0-301.1.el8]Bruno Meneguele [4.18.0-300.1.el8]Bruno Meneguele [4.18.0-299.1.el8]Bruno Meneguele [4.18.0-298.1.el8]Bruno Meneguele [4.18.0-297.1.el8]Jan Stancek [4.18.0-297.el8]Jan Stancek [4.18.0-296.el8]Jan Stancek [4.18.0-295.el8]Jan Stancek [4.18.0-294.el8]Jan Stancek [4.18.0-293.el8]Jan Stancek [4.18.0-292.el8]Jan Stancek [4.18.0-291.el8]Jan Stancek [4.18.0-290.el8]Jan Stancek [4.18.0-289.el8]Jan Stancek [4.18.0-288.el8]Jan Stancek [4.18.0-287.el8]Jan Stancek [4.18.0-286.el8]Jan Stancek [4.18.0-285.el8]Jan Stancek [4.18.0-284.el8]Jan Stancek [4.18.0-283.el8]Jan Stancek [4.18.0-282.el8]Jan Stancek [4.18.0-281.el8]Jan Stancek [4.18.0-280.el8]Jan Stancek [4.18.0-279.el8]Jan Stancek [4.18.0-278.el8]Jan Stancek [4.18.0-277.el8]Jan Stancek [4.18.0-276.el8]Jan Stancek [4.18.0-275.el8]Jan Stancek [4.18.0-274.el8]Jan Stancek [4.18.0-273.el8]Jan Stancek [4.18.0-272.el8]Jan Stancek [4.18.0-271.el8]Jan Stancek [4.18.0-270.el8]Jan Stancek [4.18.0-269.el8]Jan Stancek [4.18.0-268.el8]Jan Stancek [4.18.0-267.el8]Jan Stancek [4.18.0-266.el8]Jan Stancek [4.18.0-265.el8]Jan Stancek [4.18.0-264.el8]Jan Stancek [4.18.0-263.el8]Jan Stancek [4.18.0-262.el8]Jan Stancek [4.18.0-261.el8]Jan Stancek [4.18.0-260.el8]Jan Stancek [4.18.0-259.el8]Jan Stancek [4.18.0-258.el8]Jan Stancek [4.18.0-257.el8]Jan Stancek [4.18.0-256.el8]Jan Stancek [4.18.0-255.el8]Jan Stancek [4.18.0-254.el8]Jan Stancek [4.18.0-253.el8]Jan Stancek [4.18.0-252.el8]Jan Stancek [4.18.0-251.el8]Jan Stancek [4.18.0-250.el8]Jan Stancek [4.18.0-249.el8]Jan Stancek [4.18.0-248.el8]Jan Stancek [4.18.0-247.el8]Jan Stancek [4.18.0-246.el8]Jan Stancek [4.18.0-245.el8]Jan Stancek [4.18.0-244.el8]Jan Stancek [4.18.0-243.el8]Jan Stancek [4.18.0-242.el8]Jan Stancek [4.18.0-241.el8]Jan Stancek [4.18.0-240.10.el8]Jan Stancek [4.18.0-240.9.el8]Jan Stancek [4.18.0-240.8.el8]Jan Stancek [4.18.0-240.7.el8]Jan Stancek [4.18.0-240.6.el8]Jan Stancek [4.18.0-240.5.el8]Jan Stancek [4.18.0-240.4.el8]Jan Stancek [4.18.0-240.3.el8]Jan Stancek [4.18.0-240.2.el8]Jan Stancek [4.18.0-240.1.el8]Jan Stancek [4.18.0-239.1.el8]Frantisek Hrbata [4.18.0-239.el8]Frantisek Hrbata [4.18.0-238.el8]Frantisek Hrbata [4.18.0-237.el8]Frantisek Hrbata [4.18.0-236.el8]Frantisek Hrbata [4.18.0-235.el8]Frantisek Hrbata [4.18.0-234.el8]Frantisek Hrbata [4.18.0-233.el8]Frantisek Hrbata [4.18.0-232.el8]Frantisek Hrbata [4.18.0-231.el8]Frantisek Hrbata [4.18.0-230.el8]Frantisek Hrbata [4.18.0-229.el8]Frantisek Hrbata [4.18.0-228.el8]Frantisek Hrbata [4.18.0-227.el8]Frantisek Hrbata [4.18.0-226.el8]Frantisek Hrbata [4.18.0-225.el8]Frantisek Hrbata [4.18.0-224.el8]Frantisek Hrbata [4.18.0-223.el8]Frantisek Hrbata [4.18.0-222.el8]Frantisek Hrbata [4.18.0-221.el8]Frantisek Hrbata [4.18.0-220.el8]Frantisek Hrbata [4.18.0-219.el8]Frantisek Hrbata [4.18.0-218.el8]Frantisek Hrbata [4.18.0-217.el8]Frantisek Hrbata [4.18.0-216.el8]Frantisek Hrbata [4.18.0-215.el8]Frantisek Hrbata [4.18.0-214.el8]Frantisek Hrbata [4.18.0-213.el8]Frantisek Hrbata [4.18.0-212.el8]Frantisek Hrbata [4.18.0-211.el8]Frantisek Hrbata [4.18.0-210.el8]Frantisek Hrbata [4.18.0-209.el8]Frantisek Hrbata [4.18.0-208.el8]Frantisek Hrbata [4.18.0-207.el8]Frantisek Hrbata [4.18.0-206.el8]Frantisek Hrbata [4.18.0-205.el8]Frantisek Hrbata [4.18.0-204.el8]Frantisek Hrbata [4.18.0-203.el8]Frantisek Hrbata [4.18.0-202.el8]Frantisek Hrbata [4.18.0-201.el8]Frantisek Hrbata [4.18.0-200.el8]Frantisek Hrbata [4.18.0-199.el8]Frantisek Hrbata [4.18.0-198.el8]Frantisek Hrbata [4.18.0-197.el8]Frantisek Hrbata [4.18.0-196.el8]Frantisek Hrbata [4.18.0-195.el8]Frantisek Hrbata [4.18.0-194.el8]Frantisek Hrbata [4.18.0-193.15.el8]Frantisek Hrbata [4.18.0-193.14.el8]Frantisek Hrbata [4.18.0-193.13.el8]Frantisek Hrbata [4.18.0-193.12.el8]Frantisek Hrbata [4.18.0-193.11.el8]Frantisek Hrbata [4.18.0-193.10.el8]Frantisek Hrbata [4.18.0-193.9.el8]Frantisek Hrbata [4.18.0-193.8.el8]Frantisek Hrbata [4.18.0-193.7.el8]Frantisek Hrbata [4.18.0-193.6.el8]Frantisek Hrbata [4.18.0-193.5.el8]Frantisek Hrbata [4.18.0-193.4.el8]Frantisek Hrbata [4.18.0-193.3.el8]Frantisek Hrbata [4.18.0-193.2.el8]Frantisek Hrbata [4.18.0-193.1.el8]Frantisek Hrbata [4.18.0-192.2.el8]Frantisek Hrbata [4.18.0-192.1.el8]Frantisek Hrbata [4.18.0-191.2.el8]Frantisek Hrbata [4.18.0-191.1.el8]Frantisek Hrbata [4.18.0-190.3.el8]Frantisek Hrbata [4.18.0-190.2.el8]Frantisek Hrbata [4.18.0-190.1.el8]Frantisek Hrbata [4.18.0-189.1.el8]Frantisek Hrbata [4.18.0-188.3.el8]Frantisek Hrbata [4.18.0-188.2.el8]Frantisek Hrbata [4.18.0-188.1.el8]Frantisek Hrbata [4.18.0-187.2.el8]Frantisek Hrbata [4.18.0-187.1.el8]Frantisek Hrbata [4.18.0-186.2.el8]Frantisek Hrbata [4.18.0-186.1.el8]Bruno Meneguele [4.18.0-185.el8]Herton R. Krzesinski [4.18.0-184.el8]Herton R. Krzesinski [4.18.0-183.el8]Herton R. Krzesinski [4.18.0-182.el8]Herton R. Krzesinski [4.18.0-181.el8]Herton R. Krzesinski [4.18.0-180.el8]Herton R. Krzesinski [4.18.0-179.el8]Herton R. Krzesinski [4.18.0-178.el8]Herton R. Krzesinski [4.18.0-177.el8]Herton R. Krzesinski [4.18.0-176.el8]Bruno Meneguele [4.18.0-175.el8]Bruno Meneguele [4.18.0-174.el8]Bruno Meneguele [4.18.0-173.el8]Bruno Meneguele [4.18.0-172.el8]Bruno Meneguele [4.18.0-171.el8]Bruno Meneguele [4.18.0-170.el8]Bruno Meneguele [4.18.0-169.el8]Bruno Meneguele [4.18.0-168.el8]Bruno Meneguele [4.18.0-167.el8]Bruno Meneguele [4.18.0-166.el8]Bruno Meneguele [4.18.0-165.el8]Bruno Meneguele [4.18.0-164.el8]Bruno Meneguele [4.18.0-163.el8]Bruno Meneguele [4.18.0-162.el8]Bruno Meneguele [4.18.0-161.el8]Bruno Meneguele [4.18.0-160.el8]Bruno Meneguele [4.18.0-159.el8]Bruno Meneguele [4.18.0-158.el8]Bruno Meneguele [4.18.0-157.el8]Bruno Meneguele [4.18.0-156.el8]Bruno Meneguele [4.18.0-155.el8]Bruno Meneguele [4.18.0-154.el8]Bruno Meneguele [4.18.0-153.el8]Bruno Meneguele [4.18.0-152.el8]Phillip Lougher [4.18.0-151.el8]Phillip Lougher [4.18.0-150.el8]Phillip Lougher [4.18.0-149.el8]Phillip Lougher [4.18.0-148.el8]Phillip Lougher [4.18.0-147.13.el8]Phillip Lougher [4.18.0-147.12.el8]Phillip Lougher [4.18.0-147.11.el8]Phillip Lougher [4.18.0-147.10.el8]Phillip Lougher [4.18.0-147.9.el8]Phillip Lougher [4.18.0-147.8.el8]Phillip Lougher [4.18.0-147.7.el8]Phillip Lougher [4.18.0-147.6.el8]Phillip Lougher [4.18.0-147.5.el8]Phillip Lougher [4.18.0-147.4.el8]Phillip Lougher [4.18.0-147.3.el8]Phillip Lougher [4.18.0-147.2.el8]Phillip Lougher [4.18.0-147.1.el8]Phillip Lougher [4.18.0-146.1.el8]Phillip Lougher [4.18.0-145.1.el8]Phillip Lougher [4.18.0-144.1.el8]Herton R. Krzesinski [4.18.0-144.el8]Herton R. Krzesinski [4.18.0-143.el8]Herton R. Krzesinski [4.18.0-142.el8]Herton R. Krzesinski [4.18.0-141.el8]Herton R. Krzesinski [4.18.0-140.el8]Herton R. Krzesinski [4.18.0-139.el8]Herton R. Krzesinski [4.18.0-138.el8]Herton R. Krzesinski [4.18.0-137.el8]Herton R. Krzesinski [4.18.0-136.el8]Herton R. Krzesinski [4.18.0-135.el8]Herton R. Krzesinski [4.18.0-134.el8]Herton R. Krzesinski [4.18.0-133.el8]Herton R. Krzesinski [4.18.0-132.el8]Herton R. Krzesinski [4.18.0-131.el8]Herton R. Krzesinski [4.18.0-130.el8]Herton R. Krzesinski [4.18.0-129.el8]Herton R. Krzesinski [4.18.0-128.el8]Herton R. Krzesinski [4.18.0-127.el8]Herton R. Krzesinski [4.18.0-126.el8]Herton R. Krzesinski [4.18.0-125.el8]Herton R. Krzesinski [4.18.0-124.el8]Herton R. Krzesinski [4.18.0-123.el8]Herton R. Krzesinski [4.18.0-122.el8]Herton R. Krzesinski [4.18.0-121.el8]Herton R. Krzesinski [4.18.0-120.el8]Herton R. Krzesinski [4.18.0-119.el8]Herton R. Krzesinski [4.18.0-118.el8]Herton R. Krzesinski [4.18.0-117.el8]Herton R. Krzesinski [4.18.0-116.el8]Herton R. Krzesinski [4.18.0-115.el8]Herton R. Krzesinski [4.18.0-114.el8]Herton R. Krzesinski [4.18.0-113.el8]Herton R. Krzesinski [4.18.0-112.el8]Herton R. Krzesinski [4.18.0-111.el8]Herton R. Krzesinski [4.18.0-110.el8]Herton R. Krzesinski [4.18.0-109.el8]Herton R. Krzesinski [4.18.0-108.el8]Frantisek Hrbata [4.18.0-107.el8]Frantisek Hrbata [4.18.0-106.el8]Frantisek Hrbata [4.18.0-105.el8]Frantisek Hrbata [4.18.0-104.el8]Herton R. Krzesinski [4.18.0-103.el8]Herton R. Krzesinski [4.18.0-102.el8]Herton R. Krzesinski [4.18.0-101.el8]Herton R. Krzesinski [4.18.0-100.el8]Herton R. Krzesinski [4.18.0-99.el8]Herton R. Krzesinski [4.18.0-98.el8]Herton R. Krzesinski [4.18.0-97.el8]Herton R. Krzesinski [4.18.0-96.el8]Herton R. Krzesinski [4.18.0-95.el8]Herton R. Krzesinski [4.18.0-94.el8]Herton R. Krzesinski [4.18.0-93.el8]Herton R. Krzesinski [4.18.0-92.el8]Herton R. Krzesinski [4.18.0-91.el8]Herton R. Krzesinski [4.18.0-90.el8]Herton R. Krzesinski [4.18.0-89.el8]Herton R. Krzesinski [4.18.0-88.el8]Herton R. Krzesinski [4.18.0-87.el8]Herton R. Krzesinski [4.18.0-86.el8]Herton R. Krzesinski [4.18.0-85.el8]Herton R. Krzesinski [4.18.0-84.el8]Herton R. Krzesinski [4.18.0-83.el8]Herton R. Krzesinski [4.18.0-82.el8]Herton R. Krzesinski [4.18.0-81.el8]Herton R. Krzesinski [4.18.0-80.23.el8]Herton R. Krzesinski [4.18.0-80.22.el8]Herton R. Krzesinski [4.18.0-80.21.el8]Herton R. Krzesinski [4.18.0-80.20.el8]Herton R. Krzesinski [4.18.0-80.19.el8]Herton R. Krzesinski [4.18.0-80.18.el8]Herton R. Krzesinski [4.18.0-80.17.el8]Herton R. Krzesinski [4.18.0-80.16.el8]Herton R. Krzesinski [4.18.0-80.15.el8]Herton R. Krzesinski [4.18.0-80.14.el8]Herton R. Krzesinski [4.18.0-80.13.el8]Herton R. Krzesinski [4.18.0-80.12.el8]Herton R. Krzesinski [4.18.0-80.11.el8]Herton R. Krzesinski [4.18.0-80.10.el8]Herton R. Krzesinski [4.18.0-80.9.el8]Herton R. Krzesinski [4.18.0-80.8.el8]Herton R. Krzesinski [4.18.0-80.7.el8]Herton R. Krzesinski [4.18.0-80.6.el8]Herton R. Krzesinski [4.18.0-80.5.el8]Herton R. Krzesinski [4.18.0-80.4.el8]Herton R. Krzesinski [4.18.0-80.3.el8]Herton R. Krzesinski [4.18.0-80.2.el8]Herton R. Krzesinski [4.18.0-80.1.el8]Herton R. Krzesinski [4.18.0-79.1.el8]Herton R. Krzesinski [4.18.0-78.1.el8]Herton R. Krzesinski [4.18.0-77.1.el8]Herton R. Krzesinski [4.18.0-76.1.el8]Herton R. Krzesinski [4.18.0-75.1.el8]Herton R. Krzesinski [4.18.0-74.1.el8]Herton R. Krzesinski [4.18.0-73.1.el8]Herton R. Krzesinski [4.18.0-72.1.el8]Herton R. Krzesinski [4.18.0-71.1.el8]Herton R. Krzesinski [4.18.0-70.el8]Herton R. Krzesinski [4.18.0-69.el8]Herton R. Krzesinski [4.18.0-68.el8]Herton R. Krzesinski [4.18.0-67.el8]Herton R. Krzesinski [4.18.0-66.el8]Herton R. Krzesinski [4.18.0-65.el8]Herton R. Krzesinski [4.18.0-64.el8]Herton R. Krzesinski [4.18.0-63.el8]Herton R. Krzesinski [4.18.0-62.el8]Herton R. Krzesinski [4.18.0-61.el8]Herton R. Krzesinski [4.18.0-60.el8]Herton R. Krzesinski [4.18.0-59.el8]Herton R. Krzesinski [4.18.0-58.el8]Herton R. Krzesinski [4.18.0-57.el8]Herton R. Krzesinski [4.18.0-56.el8]Herton R. Krzesinski [4.18.0-55.el8]Herton R. Krzesinski [4.18.0-54.el8]Herton R. Krzesinski [4.18.0-53.el8]Herton R. Krzesinski [4.18.0-52.el8]Herton R. Krzesinski [4.18.0-51.el8]Herton R. Krzesinski [4.18.0-50.el8]Herton R. Krzesinski [4.18.0-49.el8]Herton R. Krzesinski [4.18.0-48.el8]Herton R. Krzesinski [4.18.0-47.el8]Herton R. Krzesinski [4.18.0-46.el8]Herton R. Krzesinski [4.18.0-45.el8]Herton R. Krzesinski [4.18.0-44.el8]Herton R. Krzesinski [4.18.0-43.el8]Herton R. Krzesinski [4.18.0-42.el8]Herton R. Krzesinski [4.18.0-41.el8]Herton R. Krzesinski [4.18.0-40.el8]Herton R. Krzesinski [4.18.0-39.el8]Herton R. Krzesinski [4.18.0-38.el8]Herton R. Krzesinski [4.18.0-37.el8]Herton R. Krzesinski [4.18.0-36.el8]Herton R. Krzesinski [4.18.0-35.el8]Herton R. Krzesinski [4.18.0-34.el8]Herton R. Krzesinski [4.18.0-33.el8]Herton R. Krzesinski [4.18.0-32.el8]Herton R. Krzesinski [4.18.0-31.el8]Herton R. Krzesinski [4.18.0-30.el8]Herton R. Krzesinski [4.18.0-29.el8]Herton R. Krzesinski [4.18.0-28.el8]Herton R. Krzesinski [4.18.0-27.el8]Herton R. Krzesinski [4.18.0-26.el8]Herton R. Krzesinski [4.18.0-25.el8]Herton R. Krzesinski [4.18.0-24.el8]Herton R. Krzesinski [4.18.0-23.el8]Herton R. Krzesinski [4.18.0-22.el8]Herton R. Krzesinski [4.18.0-21.el8]Herton R. Krzesinski [4.18.0-20.el8]Herton R. Krzesinski [4.18.0-19.el8]Herton R. Krzesinski [4.18.0-18.el8]Herton R. Krzesinski [4.18.0-17.el8]Herton R. Krzesinski [4.18.0-16.el8]Herton R. Krzesinski [4.18.0-15.el8]Herton R. Krzesinski [4.18.0-14.el8]Herton R. Krzesinski [4.18.0-13.el8]Herton R. Krzesinski [4.18.0-12.el8]Herton R. Krzesinski [4.18.0-11.el8]Herton R. Krzesinski [4.18.0-10.el8]Herton R. Krzesinski [4.18.0-9.el8]Herton R. Krzesinski [4.18.0-8.el8]Herton R. Krzesinski [4.18.0-7.el8]Herton R. Krzesinski [4.18.0-6.el8]Herton R. Krzesinski [4.18.0-5.el8]Herton R. Krzesinski [4.18.0-4.el8]Herton R. Krzesinski [4.18.0-3.el8]Herton R. Krzesinski [4.18.0-2.el8]Herton R. Krzesinski [4.18.0-1.el8]- redhat: 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`EaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEz4.18.0-519.el84.18.0-519.el84.18.0-519.el84.18.0-519.el8.aarch64          !"##$$%%&'((())**++,,--...//0001122333445556677889999::;;<<<===>>>???@@AAABBCCDDEEFFGGHHIIJJKKKLLMMNNOOOPPQQRRSSTTUUUVVWWXXYYZZZ[[\\]]]^^__``aabbbccddeeffgghhiijjjkkklllmmnnoopqrsttuvvwwxxyyzy{|}~                      !!"!#$%$&$'$())**++,--.../.0111234445464788899:8;8<8=>?@ABBBCBDBEFGGHIIIJIKLLMMNNONPQRRSTUUVWWWXWYWZW[\]]]^]_]`]a]bcddedfdghhhhiijhkklhmhnooooppqorosotouuvvvwxvyvzv{||||}}~|||||       !""#"$"%&&'&(&)***+*,-.//0/1/22324252627/8/9::;<==>?@ABBCBDBEBFBGBBHHIBJKBLBMBNBOBPBQRSTUUVWXXXYXZ[\\]]]]^^_^`^a^b]c]d]e]f]ghgigjkkkkllmmnnnoonppqqqrrrsqtttutvvtwwtxxtyytzzt{{q||q}}q~~qqqqqqqqqqqqqqqqqqqqqq     q  q  qqqqqqqq  !!!"##"$$"%%"&&&'&(()(*(+(,(-(.(/(0(1(2(3(4(5(6(7(8(9(:(;(<(=(>(?(@(A(B(C(D(E(F(G&HI&JKJLJMJNJO"PPQPRRSRTPUUVUWUX!YY!ZZ![[!\\!]]!^^^__^``^aa^bb^cc!dd!ee!ff!gg!hh!ii!jjjkkjll!m!nn!oooooop!qq!rr!ss!tt!uu!vv!ww!xx!y!zzz{{z||!}}!~~!!!!!!!!!!!!!!!!!!!!!!!!!!   qqqqqqqqqqqqqqqq                     qqqqqqq   !! """##"$$"%%"&&"'' (( )))**)++ ,, ---.-//-00-11-2-33-44 55566 777887997::7;;7<<7==7>>7??7@@7AA7BBCC7DD7EE7FF7GG7HH7II7JJ7KK7LL7MM7NN7OO7PP7QQ7RR7SS7TT7UU VVVWWVXXVYYVZV[V\\V]V^^V__V`VaVbVcVdVeeVfVghgiVjjVklVmVnVoVpVqVrrVstsuusvswsxVyVzV{V||V}}V~V      qqqqqqqqq              !"#$$$%$&$'$($)))*)+$,--...//00112223344555667788999::9;;9<<==>>>?@@@A@BBCBDEEFFFGGHHIIIJIKKLLLMLNLOLPLQLRLSLTLULVLWLXYYYZ[[\\\]]\^___`_a_bbc_d_e_f_g_h_i\jj\kk\llmmnnooopqqrrssstuuvvvwxxxyyzy{y||}y~     q  !!""##$$%%&&q'''((())(**(++(,,(--'..q/q00q11122133q44q5556q77q88q99q:::;;;<<:===>>:??:@@:AAqBBqCCCDqEEEFFEGGEHHEIIEJJEKKELLEMMENNEOOEPPEQQERRESSETTEUUqVVVWWVXXVYYVZZV[[V\\V]]V^^V__V``VaaVbbVccVddVeVffVggVhhViiVjjVkkVllVmmVnnqoooppoqqorrossotouuuvuwwwxxwyywzzw{{w||q}}}~~}}qqqqqqqqqqqqqqqqqqqqqqqqqqq                      !! "" ## $$ %% && ''(())**++,,--.//001122334455667788899:::;<<==>>>?>@AABBCCDDEEEFFEGGEHHIIJJJKKJLLMMNNOOPPQQRRSSqTTTUUUVVTWWTXXTYYqZq[[[\\q]]]^^]___``]aa]bb]cc]dd]eeqffqggghhgigjjgkllkkkmkngoqppqqqqrrqsqttquuqvvqwwqxxqyyqzq{{{|{}}{~~~~qqqqqqqqqqqqqqqqqqqqqqqqqqqqq         !!""##$$%%&''(())**+,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-------,,,+................./////////////////////...........................................................................................................0.....+111111+2222324225556667665558559955:5555;;5<555555=5555>5?@5A5B552C2D22E2FG22HH2IJKL2M2N2OPOQRSOTUTVVOWXYWZ[W\W]^W_`WaWbWcWdeWfWWghWijkWlWmWnWopoWqrWsWtutvWwxyyWzW{W|W}~OOOOOOOOOOOOOOOOOOOOO222222222222222222222222222222222222222222                               2222 22     22  2       22              22 ! "22 # $ % $ $ $ $ $ $ $ $ $ $ $ & $ $ $ $ $ $ ' ' $ # ( # # ) # *2 +2 , , - - .2222 / 0 12 2 3222 4 5 4 4 6 6 7 7 4 8 4 4 9 4 4 : : 4 ; 4 4 < < 4 4 = = = 4 > 4 4 4 ? 4 4 4 42 @ @ A A A A A @ @ B C2 D D E2 F G F H I H J K H L H M N F O F P Q22 R R S2 T T U V U W T T X Y Z2 [2 \ \ \ \ \ \ ] ] \ \ \ \ \22 ^2 _2 `2 a b a c a a a a d2 e f f f2 g2 h22 i j k i i l i i m i i n o i2 p22 q r r q q s2 t2 u2 v2 w x x2 y22 z {2 | | } } } } } } } } | ~22 22 2 2 22 22 2 2 222 2 2 222 222 22 2222 2 22 2 22 2 2 2 2 22 222 22 2 2 2222 2222 2 2 2 2 2 222          2 2 222  2    2   2  222       2     22                 2 2 !22 "2 # $2 %2 &2 '2222 (2 )22 * +22 , -2 . . / 0 / . 1 . 2 322 42 522 6 722 8 92 : ; ; : : <22 = = > > > = = ? = = = = = = @ @ @ @ =2 A22 B2 C2 D E2 F G2 H222 I I I I J2 K K K2 L M2 N2 O O2 P P Q R Q S Q222 T T T T U22 V2 W X222 Y Z Y2 [ \2 ] ^ ]2 _22 ` ` a ` `22 b2 c d c c e e f2 g22 h2 i i j j i i k l i m i i n i o o i i p i i i q r i s s t u s s s s s s v i w w x i y i z i i i { i | } i ~  i i i i 222 22 2 2 2 2 2 2 2 2 2 22 22 2 2 2 222 22 22 2 2 2 22 22 2 2 2 2 22 2       2 22 222     22 22                                   222 222 2 2  2222 2222  2 22              !  "   #  $2 % % % & % % % % '22 ( ) ) * ( + ( ( ( ( , , ( ( ( ( - . ( ( ( ( / / / ( 02 1 2 32 42 5 6 6 7 7 7 6 6 8 8 8 5 9 9 : : : 9 9 ; 9 < < < 5 = = > > > = = ? ? ?2 @22 A A B A A A A A C D D A A2 E F2 G2 H H I J H H K K L H H22 M2 N O N P Q N N R R S N N T N U V U U U U U U W W W W U U U U X X X X X X X N Y Y N Z Z Z N N N [ \ \ \ [ ] ] ] ] ] ] ] ] ] ] ] ] [ ^ [ N N _ _ _ _ _ _ _ _ _ ` a _ _ _ _ b _ c c d c c c c _ _ _ _ e f _ g _ _2 h i i i i j j j j j j j j j i i i i k k k k2 l2 m n2 o p o q o o r r o s o o o o22 t t t t u v t w t x t y t z t { t | t t } t t222 ~  ~ ~ ~ ~ ~ ~22 2 22 22 222 22 2 22 222 2 222 2 22222 22 22 2 2 2 222222 22 2 222 22 2 2 2 2 22 2 2 22 22 2 2 2 2222 22 2 2 22 22 2 2 222 2 2 2 222 2 2 2 2 2 2 222 2 2 2 2 2 22 2  22                           22   2            22     22        222  22   2  22 ! !2 "22 # # # # $ $ $ $ $ $ # % # & ' ( ( ( # ) # # * # # + , + -22 . / 02 1 122 22 3 3 32 4 5 6 4 7 4 8 9 : ; 4 < =22 > ? ? ? ? ? ? ? ? ? ? ? ? ? ? @ ? > > A A A A A A A A A A A A A > > > B > > > C C C C C C C > > > D > > E > > F F > > > > G > H I > J > > > K > > L > M > > N O > P P P P P P P P P P P P Q P P P P P P P R P P P P P P P P P P P > > S > > T U > > V W W W W W > X > Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y > > > Z22 [2 \ ] ^2222 _ _ _ ` ` _ _ _ a b a a _ _ c c c d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d c c c e e e e e e e e e e e e e e e e e e e e e e e e _22 f22 g g h g2 i2 j2 k k l l l l l l l l l m l l l l l l l l l l k n n o o n p p p p k q q k r r r k s s t t t k u u u u k k v v v v v v v v v v w v k k x x k y y k k z z z z z z z k { {22 | } ~ }2           22 2 2 2222 2 2 2 2 2 22 2 2 2 2222 2 22 2 2 22 22 2 22 22 222 2 22 22 222 2 2 2 2 222 2 222 22 22 22 22 22 22 2 22 22222 22 2 2 2 22 2 2 2222 22        2  22  2     22      2222 22 2  22   222 2   2    222  2 !2 " # $ " % " & " '2 ( ( ( ( ( (2 ) )2 * *2 + + , ,2 -22 . . .222 /2 0 02 1 222 3 3 32 42 5 6 7 82 92 : : ;2 < = < < < > < < < < < < < < <2 ?22 @ A B2 C D222 E F E2 G G H H H H H H H H H H H I H H H H H H J H H H H K H H H H H H H L H H H H H H H H H H H H H H H H H H H H H H H H H H H G M N G G O G P Q G R R R G G S T G2 U V2 W X Y22 Z Z [ [ Z Z \ ] Z22 ^ _2 ` ` ` ` ` ` ` `222 a b a a c a a a d d d e d a a a f a g g h a a a i i a j a a a a a a k l a a m n a a o a p p a q q q r q a s a a t a u a2 v w x x v y z {2 |22 }2 ~  22 22 2 2 22 2 2 22 22 2 2 222 22 222 2 2 2 2 2 22 22 22 2 22 22 2 222 22 222 22 2 2 2 22 22 2222 2 2 2 22 22 22 2 22 22 2 2 22 2 2 22 2 2 22 22  2222222 2   2   22 222222222222222222222 2!2"2##$222%%%&%'%(%22))2*2+,-2.222///0//12//34///5//////6/778779:7;////</=///>//?//////////@/AB/////CDCCEEEEEFCCCGCCCCHICCCCCCJCKCCCC/LLMLN////O////PPPPPPPPQPPRPPSPPPTPPPPPPPPUPPVPWPPPPPPPPPPPPPPXPPPPPPPPPPPPY//Z///[[\[[][[[[[[[[[/////^/_/////`/aaa/22b22cdef2g22h22iii22jjkk22ll2m22nonnnppn2qqrs22tttttt2u2vwwxv22yyyyyyyyyyzzyyy{22|2}}~~2222222222222222222222222222222222+++++++++                                         !!!!!"""""""""""""""""""""""""""""#$#%#&#''#(((((((#))#**#+#,,,,-----.................................////////0000000000000000000000000000000001112222222222333333333333333333333333333333333333333333333333333333333333333333333344445+666666666+77778888888888888777999999999999977777777777:::::::::::::::::::::::::::::::::::::::::::::::::777777777;777777777777777777777777777777777+<+=======+>>???>>>>>>>>>>>>>>@@@@@@@@@>>>>>>>AAAAAAAAAAAA>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>BB>>>>>>>>>>>>>>>>>>>>>CCCCC>>>>>>>>>>>>>>DDEEEEEDFFFFFFDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD>>>GGGGGGGGGGGGGGGGGGGGG>>>>HHHHHH>>>>>IIII>>>>>>>>>>>>>>>>>>>>JJJJJJJJJJJJ>>>>>>>>>>>>>KKKKKKKKKKKKKKKKKKKK>>>>>>>>>>>>>>>>>>>>>>>>>+LLLLLL+M+NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN+OPPPPPPOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO+QRRRQSSSSQTQUQVVWWWWWWWVQXXXQYQZZQ[Q\Q]Q^^^^^^^^^^^^+_````_________________________________________________________________________________________________________________________________aaaaaaaaaaaaabaaaaa_________________________________+cdddccc+eeeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeee+ghhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhgiiiiiiiiiiiiiiiiiiiiiiiigjjjjjjjjjjkjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjlljmmjjnnnnnnjjjjjjjjjjjoojjjjjjjjjjjjjjjjjjjjjjjjjjjjppppppppjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjqjjjjjjjjrjjjjjjjssjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjttjjjjjjjjjjjjjjjjjjjjjjjjjjujjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjvjjjjjjjjjjjjjjjjjjjjjjjjjjjwxxxxwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwjjyyjjzzzzzzzzzzzzzzzzzjjj{{{{{{{{{jj|||||||||||||jjjjjjjjjjjjjjj}}}}jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj~~jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjggggggg+++            ! "" # $ % & ' ( ) * + , -. / 0 1 2 3 4 5 6 7 8 9 :;;;;;;;;;;;;;;;;;;;;;;;;;<<<<;;;;;;;;;;;;;;==;;;;;>?@@@???A???????????>BBBBBBB>CCCCC>DDDD>EEEEEEEEEEEEEEEEEEE>FFFF>GGGG;;;;;;;;;;HHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIHJJJJJJJJJJJJJJHHHHHHHHHH;;;;;;;;;;;;;;;KKKKKKKKKKKK;;;;LLMMMMMMMMMMML;;NNNNNNNNNNN;;;;;;;;;;;OOOOOOOOOOOOOOOPPPPPPPPOOOOOOOOOOOOOOOQRRRQSSSSSSSSSQTTTTTQQUUUQVVVVVVQWWWWQXXXXQYYYYQZ[[[[Z\\\Z]]]Z^^^QQ_____OOOOO;;`;;;;;;;;;;aaaaaaaaaaaaaa;;;;;bbbbbb;;;;;;;;;;;cccddddcceeeeec;;;;;;;;;;;;;;;;;;;;ffffggfhfiiijjikkflllmlnfoofpppqqfrrfssfttuuuvvuwwwxxwywzzw{{{|u}}u~~uuuuuuuuuuuuuuuu  u    u          uuu !!!!!"!#$%&'()*++,-./0/123435363787393:;::<=>?@A@@@@BCBDBEBFBGBHBIBJBKBL@MNOPQQQQRSRTRUPVVWVXYXZX[P\P]^]_]`aabcdcecfcgghhigjjjkglgmgngogpgqgrgstutvgwgxgygzg{g|g}}~ggggggggggggggggggggggggggggggggggggggggggggggggggc4.18.0-519.el8.aarch64.configKconfigKconfig.redhatMakefileMakefile.rhelverModule.symversSystem.maparchKconfigalphaKconfigKconfig.debugMakefilebootMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefileoprofileMakefilearcKconfigKconfig.debugMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileoprofileMakefileplat-axs10xKconfigMakefileplat-eznpsKconfigMakefileplat-hsdkKconfigMakefileplat-simMakefileplat-tb10xKconfigMakefilearmKconfigKconfig-nommuKconfig.debugMakefilebootMakefilebootpMakefilecompressedMakefiledtsMakefilecommonKconfigMakefilecryptoKconfigMakefilefirmwareKconfigMakefileincludeasmopcodes.hxenevents.hhypercall.hhypervisor.hinterface.hpage-coherent.hpage.hxen-ops.hkernelMakefilelibMakefilemach-actionsKconfigMakefilemach-alpineKconfigMakefilemach-artpecKconfigMakefilemach-asm9260Kconfigmach-aspeedKconfigmach-at91KconfigMakefileMakefile.bootmach-axxiaKconfigMakefilemach-bcmKconfigMakefilemach-berlinKconfigMakefilemach-clps711xKconfigMakefilemach-cns3xxxKconfigMakefilemach-davinciKconfigMakefileMakefile.bootmach-digicolorKconfigMakefilemach-doveKconfigMakefileMakefile.bootmach-ebsa110MakefileMakefile.bootmach-efm32MakefileMakefile.bootmach-ep93xxKconfigMakefileMakefile.bootmach-exynosKconfigMakefilemach-footbridgeKconfigMakefileMakefile.bootmach-geminiKconfigMakefilemach-highbankKconfigMakefilemach-hisiKconfigMakefilemach-imxKconfigMakefileMakefile.bootdevicesKconfigMakefilemach-integratorKconfigMakefilemach-iop13xxKconfigMakefileMakefile.bootmach-iop32xKconfigMakefileMakefile.bootmach-iop33xKconfigMakefileMakefile.bootmach-ixp4xxKconfigMakefileMakefile.bootmach-keystoneKconfigMakefilemach-ks8695KconfigMakefileMakefile.bootmach-lpc18xxMakefileMakefile.bootmach-lpc32xxMakefileMakefile.bootmach-mediatekKconfigMakefilemach-mesonKconfigMakefilemach-mmpKconfigMakefilemach-moxartKconfigMakefilemach-mv78xx0KconfigMakefilemach-mvebuKconfigMakefilemach-mxsKconfigMakefilemach-netxKconfigMakefileMakefile.bootmach-nomadikKconfigMakefilemach-npcmKconfigMakefilemach-nspireKconfigMakefilemach-omap1KconfigMakefileMakefile.bootmach-omap2KconfigMakefilemach-orion5xKconfigMakefilemach-oxnasKconfigMakefilemach-picoxcellKconfigMakefilemach-prima2KconfigMakefilemach-pxaKconfigMakefileMakefile.bootmach-qcomKconfigMakefilemach-realviewKconfigMakefilemach-rockchipKconfigMakefilemach-rpcMakefileMakefile.bootmach-s3c24xxKconfigMakefileMakefile.bootmach-s3c64xxKconfigMakefilemach-s5pv210KconfigMakefilemach-sa1100KconfigMakefileMakefile.bootmach-shmobileKconfigMakefilemach-socfpgaKconfigMakefilemach-spearKconfigMakefilemach-stiKconfigMakefilemach-stm32KconfigMakefileMakefile.bootmach-sunxiKconfigMakefilemach-tangoKconfigMakefilemach-tegraKconfigMakefilemach-u300KconfigMakefilemach-uniphierKconfigMakefilemach-ux500KconfigMakefilemach-versatileKconfigMakefilemach-vexpressKconfigMakefileMakefile.bootmach-vt8500KconfigMakefileMakefile.bootmach-w90x900KconfigMakefileMakefile.bootmach-zxKconfigMakefilemach-zynqKconfigMakefilemmKconfigMakefilenetMakefilenwfpeMakefileoprofileMakefileplat-iopMakefileplat-omapKconfigMakefileplat-orionMakefileplat-pxaKconfigMakefileplat-samsungKconfigMakefileplat-versatileKconfigMakefileprobesMakefilekprobesMakefileuprobesMakefiletoolsMakefilevdsoMakefilevfpMakefilexenMakefilearm64KconfigKconfig.debugKconfig.platformsMakefilebootMakefiledtsMakefileactionsMakefilealMakefileallwinnerMakefilealteraMakefileamdMakefileamlogicMakefileapmMakefilearmMakefilebroadcomMakefilenorthstar2MakefilestingrayMakefilecaviumMakefileexynosMakefilefreescaleMakefilehisiliconMakefilelgMakefilemarvellMakefilemediatekMakefilenvidiaMakefileqcomMakefilerealtekMakefilerenesasMakefilerockchipMakefilesocionextMakefilesprdMakefilesynapticsMakefilexilinxMakefilezteMakefilecryptoKconfigMakefilehypervMakefileincludeasmKbuildacenv.hacpi.halternative.harch_gicv3.harch_timer.harchrandom.harm-cci.harm_dsu_pmu.hasm-bug.hasm-extable.hasm-offsets.hasm-prototypes.hasm-uaccess.hasm_pointer_auth.hassembler.hatomic.hatomic_ll_sc.hatomic_lse.hbarrier.hbitops.hbitrev.hboot.hbrk-imm.hbug.hcache.hcacheflush.hchecksum.hclocksource.hcmpxchg.hcompat.hcompiler.hcpu.hcpu_ops.hcpufeature.hcpuidle.hcputype.hcurrent.hdaifflags.hdcc.hdebug-monitors.hdevice.hdma-mapping.hdmi.hefi.helf.hesr.hexception.hexec.hextable.hfb.hfixmap.hfpsimd.hfpsimdmacros.hftrace.hfutex.hhardirq.hhugetlb.hhw_breakpoint.hhwcap.hhyperv-tlfs.hhypervisor.himage.hinsn.hio.hirq.hirq_work.hirqflags.hjump_label.hkasan.hkernel-pgtable.hkexec.hkgdb.hkprobes.hkvm_arm.hkvm_asm.hkvm_coproc.hkvm_emulate.hkvm_host.hkvm_hyp.hkvm_mmu.hkvm_ptrauth.hkvm_ras.hkvm_types.hlinkage.hlse.hmemory.hmman.hmmu.hmmu_context.hmmzone.hmodule.hmshyperv.hneon-intrinsics.hneon.hnuma.hpage-def.hpage.hparavirt.hpci.hpercpu.hperf_event.hpgalloc.hpgtable-hwdef.hpgtable-prot.hpgtable-types.hpgtable.hpointer_auth.hpreempt.hprobes.hproc-fns.hprocessor.hptdump.hptrace.hpvclock-abi.hsdei.hseccomp.hsections.hshmparam.hsignal32.hsimd.hsmp.hsmp_plat.hsparsemem.hspinlock.hspinlock_types.hstack_pointer.hstackprotector.hstacktrace.hstage2_pgtable.hstat.hstring.hsuspend.hsync_bitops.hsyscall.hsyscall_wrapper.hsysreg.hsystem_misc.hthread_info.htimex.htlb.htlbflush.htopology.htraps.huaccess.hunistd.hunistd32.huprobes.hvdsovdso.hclocksource.hcompat_barrier.hcompat_gettimeofday.hgettimeofday.hprocessor.hvsyscall.hvdso_datapage.hvectors.hvirt.hvmap_stack.hword-at-a-time.hxenevents.hhypercall.hhypervisor.hinterface.hpage-coherent.hpage.hxen-ops.hxor.hgeneratedasmbugs.hcpucaps.hdelay.hdiv64.hdma-contiguous.hdma.hearly_ioremap.hemergency-restart.hhw_irq.hirq_regs.hkdebug.hkmap_size.hlocal.hlocal64.hmcs_spinlock.hmm-arch-hooks.hmmiowb.hmsi.hqrwlock.hqspinlock.hsegment.hserial.hset_memory.hsizes.hswitch_to.htrace_clock.hunaligned.huser.hvga.huapiasmerrno.hioctl.hioctls.hipcbuf.hkvm_para.hmman.hmsgbuf.hpoll.hresource.hsembuf.hshmbuf.hsiginfo.hsocket.hsockios.hswab.htermbits.htermios.htypes.huapiasmKbuildauxvec.hbitsperlong.hbpf_perf_event.hbyteorder.hfcntl.hhwcap.hkvm.hmman.hparam.hperf_regs.hposix_types.hptrace.hsetup.hsigcontext.hsignal.hstat.hstatfs.hsve_context.hucontext.hunistd.hkernelMakefilemodule.ldsprobesMakefilevdsoMakefilevdso32MakefilekvmKconfigMakefilehypMakefilenvheMakefilevheMakefilelibMakefilemmMakefilenetMakefiletoolsMakefilexenMakefilec6xKconfigMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileplatformsKconfigMakefileh8300KconfigKconfig.cpuMakefilebootMakefilecompressedMakefiledtsMakefilekernelMakefilelibMakefilemmMakefilehexagonKconfigMakefilekernelMakefilelibMakefilemmMakefileia64KconfigKconfig.debugMakefiledigMakefilehpcommonMakefilesimKconfigMakefilebootMakefilezx1MakefilekernelMakefileMakefile.gatelibMakefilemmMakefileoprofileMakefilepciMakefilesnMakefilekernelMakefilesn2MakefilepciMakefilepcibrMakefileuvMakefilekernelMakefilem68k68000MakefileKconfigKconfig.busKconfig.cpuKconfig.debugKconfig.devicesKconfig.machineMakefileamigaMakefileapolloMakefileatariMakefilebvme6000MakefilecoldfireMakefileemuMakefilefpsp040Makefilehp300Makefileifpsp060MakefilekernelMakefilelibMakefilemacMakefilemath-emuMakefilemmMakefilemvme147Makefilemvme16xMakefileq40Makefilesun3MakefilepromMakefilesun3xMakefiletoolsamigaMakefilemicroblazeKconfigKconfig.debugKconfig.platformMakefilebootMakefiledtsMakefilekernelMakefilecpuMakefilelibMakefilemmMakefileoprofileMakefilepciMakefilemipsKconfigKconfig.debugMakefileMakefile.postlinkalchemyKconfigMakefilecommonMakefiledevboardsMakefilear7Makefileath25KconfigMakefileath79KconfigMakefilebcm47xxKconfigMakefilebcm63xxKconfigMakefileboardsKconfigMakefilebmipsKconfigMakefilebootMakefilecompressedMakefiledtsMakefilebrcmMakefilecavium-octeonMakefileimgMakefileingenicMakefilelantiqMakefilemsccMakefilemtiMakefilenetlogicMakefileniMakefilepic32MakefileqcaMakefileralinkMakefilexilfpgaMakefiletoolsMakefilecavium-octeonKconfigMakefilecryptoMakefileexecutiveMakefilecobaltMakefilecryptoMakefiledecMakefilepromMakefileemmaMakefilecommonMakefilemarkeinsMakefilefwarcMakefilecfeMakefilelibMakefilesniMakefilegenericKconfigMakefilejazzKconfigMakefilejz4740KconfigMakefilekernelMakefilekvmKconfigMakefilelantiqKconfigMakefilefalconMakefilexwayMakefilelasatKconfigMakefileimageMakefilelibMakefileloongson32KconfigMakefilecommonMakefilels1bMakefilels1cMakefileloongson64KconfigMakefilecommonMakefilecs5536Makefilefuloong-2eMakefilelemote-2fMakefileloongson-3Makefilemath-emuMakefilemmMakefilemti-maltaMakefilenetMakefilenetlogicKconfigMakefilecommonMakefilexlpMakefilexlrMakefileoprofileMakefileparavirtKconfigMakefilepciMakefilepic32KconfigMakefilecommonMakefilepic32mzdaMakefilepistachioKconfigMakefilepmcs-msp71xxKconfigMakefilepnx833xMakefilecommonMakefilestb22xMakefilepowerMakefileralinkKconfigMakefilerb532Makefilesgi-ip22Makefilesgi-ip27KconfigMakefilesgi-ip32MakefilesibyteKconfigMakefilebcm1480MakefilecommonMakefilesb1250MakefileswarmMakefilesniMakefiletxx9KconfigMakefilegenericMakefilejmr3927Makefilerbtx4927Makefilerbtx4938Makefilerbtx4939MakefilevdsoMakefilevr41xxKconfigcasio-e55MakefilecommonMakefileibm-workpadMakefilends32KconfigKconfig.cpuMakefilebootMakefiledtsMakefilekernelMakefilevdsoMakefilelibMakefilemmMakefilenios2KconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemmMakefileplatformKconfig.platformMakefileopenriscKconfigMakefilebootdtsMakefilekernelMakefilelibMakefilemmMakefilepariscKconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefileoprofileMakefilepowerpcKconfigKconfig.debugMakefileMakefile.postlinkbootMakefilecryptoMakefilekernelMakefileptraceMakefiletraceMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilemath-emuMakefilemmMakefilebook3s32Makefilebook3s64MakefilenetMakefileoprofileMakefileperfMakefileplatforms40xKconfigMakefile44xKconfigMakefile4xxMakefile512xKconfigMakefile52xxKconfigMakefile82xxKconfigMakefile83xxKconfigMakefile85xxKconfigMakefile86xxKconfigMakefile8xxKconfigMakefileKconfigKconfig.cputypeMakefileamigaoneKconfigMakefilebook3sKconfigMakefilecellKconfigMakefilespufsMakefilechrpKconfigMakefileembedded6xxKconfigMakefilemapleKconfigMakefilepasemiKconfigMakefilepowermacKconfigMakefilepowernvKconfigMakefileps3KconfigMakefilepseriesKconfigMakefilepurgatoryMakefilesysdevKconfigMakefilegeMakefilexicsKconfigMakefilexiveKconfigMakefilexmonMakefileriscvKconfigMakefilekernelMakefilevdsoMakefilelibMakefilemmMakefiles390KconfigKconfig.debugMakefileappldataMakefilebootMakefilecompressedMakefilecryptoMakefilehypfsMakefilekernelMakefilesyscallsMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilemmMakefilenetMakefilenumaMakefileoprofileMakefilepciMakefilepurgatoryMakefilescriptsMakefile.chkbsstoolsMakefileshKconfigKconfig.cpuKconfig.debugMakefileboardsKconfigMakefilemach-ap325rxaMakefilemach-caymanMakefilemach-dreamcastMakefilemach-ecovec24Makefilemach-highlanderKconfigMakefilemach-hp6xxMakefilemach-kfr2r09Makefilemach-landiskMakefilemach-lboxre2Makefilemach-microdevMakefilemach-migorKconfigMakefilemach-r2dKconfigMakefilemach-rskKconfigMakefilemach-sdk7780KconfigMakefilemach-sdk7786Makefilemach-se7206Makefile7343Makefile770xMakefile7721Makefile7722Makefile7724Makefile7751Makefile7780MakefileMakefilemach-sh03Makefilemach-sh7763rdpMakefilemach-x3protoMakefilebootMakefilecompressedMakefiledtsMakefileromimageMakefilecchipsKconfighd6446xMakefiledriversKconfigMakefiledmaKconfigMakefilepciMakefilesuperhywayMakefilekernelMakefilecpuMakefileirqMakefilesh2Makefilesh2aMakefilesh3Makefilesh4Makefilesh4aMakefilesh5MakefileshmobileMakefilevsyscallMakefilelibMakefilelib64Makefilemath-emuMakefilemmKconfigMakefileoprofileMakefiletoolsMakefilesparcKconfigKconfig.debugMakefilebootMakefilecryptoMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefilenetMakefileoprofileMakefilepowerMakefilepromMakefilevdsoMakefileumKconfig.charKconfig.commonKconfig.debugKconfig.netKconfig.restKconfig.umMakefileMakefile-os-LinuxMakefile-skasdriversMakefilekernelMakefileskasMakefileos-LinuxMakefiledriversMakefileskasMakefilescriptsMakefile.rulesunicore32KconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemmKconfigMakefilex86KconfigKconfig.cpuKconfig.debugMakefileMakefile.umMakefile_32.cpubootMakefilecompressedMakefilecocoMakefiletdxMakefilecryptoMakefilesha1-mbMakefilesha256-mbMakefilesha512-mbMakefileentryMakefilesyscallsMakefilevdsoMakefilevsyscallMakefileeventsKconfigMakefileamdMakefileintelMakefilehypervMakefileia32MakefilekernelMakefileacpiMakefileapicMakefilecpuMakefilemceMakefilemicrocodeMakefilemtrrMakefileresctrlMakefilesgxMakefilefpuMakefilekprobesMakefilekvmKconfigMakefilelibMakefilemath-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-pfcKconfigMakefilesirfMakefilespearKconfigMakefilesprdKconfigMakefilestm32KconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefileuniphierKconfigMakefilevt8500KconfigMakefilezteKconfigMakefileplatformKconfigMakefilechromeKconfigMakefilegoldfishKconfigMakefilemellanoxKconfigMakefilemipsKconfigMakefileolpcMakefilex86KconfigMakefiledell-wmi-sysmanMakefileintelKconfigMakefileifsKconfigMakefilepmcKconfigMakefilepmtKconfigMakefilespeed_select_ifKconfigMakefileuncore-frequencyKconfigMakefilepnpKconfigMakefileisapnpKconfigMakefilepnpacpiKconfigMakefilepnpbiosKconfigMakefilepowerKconfigMakefileavsKconfigMakefileresetKconfigMakefilesupplyKconfigMakefilepowercapKconfigMakefileppsKconfigMakefileclientsKconfigMakefilegeneratorsKconfigMakefileps3MakefileptpKconfigMakefilepwmKconfigMakefilerapidioKconfigMakefiledevicesKconfigMakefileswitchesKconfigMakefilerasKconfigMakefileregulatorKconfigMakefileremoteprocKconfigMakefileresetKconfigMakefilehisiliconKconfigMakefilestiKconfigMakefiletegraKconfigMakefilerpmsgKconfigMakefilertcKconfigMakefiles390MakefileblockKconfigMakefilecharKconfigMakefilecioMakefilecryptoMakefilenetKconfigMakefilescsiMakefilevirtioMakefilesbusMakefilecharKconfigMakefilescsiKconfigMakefileaacraidMakefileaic7xxxKconfig.aic79xxKconfig.aic7xxxMakefileaicasmMakefileaic94xxKconfigMakefilearcmsrMakefilearmKconfigMakefilebe2iscsiKconfigMakefilebfaMakefilebnx2fcKconfigMakefilebnx2iKconfigMakefilecsiostorKconfigMakefilecxgbiKconfigMakefilecxgb3iKconfigcxgb4iKconfigcxlflashKconfigMakefiledevice_handlerKconfigMakefileesas2rKconfigMakefilefcoeMakefilefnicMakefilehisi_sasKconfigMakefileibmvscsiMakefileibmvscsi_tgtMakefileisciMakefilelibfcMakefilelibsasKconfigMakefilelpfcMakefilemegaraidKconfig.megaraidMakefilempi3mrKconfigMakefilempt3sasKconfigMakefilemvsasKconfigMakefilepcmciaKconfigMakefilepm8001MakefileqedfKconfigMakefileqediKconfigMakefileqla2xxxKconfigMakefileqla4xxxKconfigMakefilesmartpqiKconfigMakefilesnicMakefilesym53c8xx_2MakefileufsKconfigMakefilesfiKconfigMakefileshKconfigMakefileclkMakefileintcKconfigMakefilemapleMakefilesuperhywayMakefilesioxKconfigMakefileslimbusKconfigMakefilesnKconfigMakefilesocKconfigMakefileactionsKconfigMakefileamlogicKconfigMakefileatmelKconfigMakefilebcmKconfigMakefilebrcmstbKconfigMakefilepmMakefiledoveMakefilefslKconfigMakefileqbmanKconfigMakefileqeKconfigMakefilefujitsuKconfigMakefilegeminiMakefileimxKconfigMakefilelantiqMakefilemediatekKconfigMakefileqcomKconfigMakefilerenesasKconfigMakefilerockchipKconfigMakefilesamsungKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefilefuseMakefiletiKconfigMakefileux500KconfigMakefileversatileKconfigMakefilexilinxKconfigMakefilezteKconfigMakefilesoundwireKconfigMakefilespiKconfigMakefilespmiKconfigMakefilessbKconfigMakefilestagingKconfigMakefileandroidKconfigMakefileionKconfigMakefileboardKconfigMakefileclocking-wizardKconfigMakefilecomediKconfigMakefiledriversMakefilekcomedilibMakefiledgncKconfigMakefileemxx_udcKconfigMakefilefbtftKconfigMakefilefsl-dpaa2KconfigMakefileethernetMakefileethswMakefilertcMakefilefsl-mcKconfigMakefilebusKconfigMakefiledpioMakefilefwserialKconfigMakefilegdm724xKconfigMakefilegoldfishKconfigMakefilegreybusKconfigMakefiletoolsMakefilegs_fpgabootKconfigMakefileiioKconfigMakefileaccelKconfigMakefileadcKconfigMakefileaddacKconfigMakefilecdcKconfigMakefilefrequencyKconfigMakefilegyroKconfigMakefileimpedance-analyzerKconfigMakefilemeterKconfigMakefileresolverKconfigMakefileks7010KconfigMakefilemediaKconfigMakefilebcm2048KconfigMakefiledavinci_vpfeKconfigMakefileimxKconfigMakefileimx074KconfigMakefilemt9t031KconfigMakefileomap4issKconfigMakefiletegra-vdeKconfigMakefilezoranKconfigMakefilemostKconfigMakefilecdevKconfigMakefiledim2KconfigMakefilei2cKconfigMakefilenetKconfigMakefilesoundKconfigMakefileusbKconfigMakefilevideoKconfigMakefilemt29f_spinandKconfigMakefilemt7621-dmaKconfigMakefilemt7621-dtsKconfigMakefilemt7621-ethKconfigMakefilemt7621-gpioKconfigMakefilemt7621-mmcKconfigMakefilemt7621-pciMakefilemt7621-pinctrlKconfigMakefilemt7621-spiKconfigMakefilenetlogicKconfigMakefilenvecKconfigMakefileocteonocteon-usbKconfigMakefileKconfigMakefileolpc_dconKconfigMakefilepi433KconfigMakefilertl8188euKconfigMakefilertl8192eKconfigMakefilertl8192eKconfigMakefilertl8192uKconfigMakefileieee80211Makefilertl8712KconfigMakefilertl8723bsKconfigMakefilertlwifiKconfigMakefilebtcoexistMakefilertl8822beMakefilerts5208KconfigMakefileskeinKconfigMakefilesm750fbKconfigMakefilespeakupKconfigMakefileunisysKconfigMakefilevisorhbaKconfigMakefilevisorinputKconfigMakefilevisornicKconfigMakefilevboxvideoKconfigMakefilevc04_servicesKconfigMakefilebcm2835-audioKconfigMakefilebcm2835-cameraKconfigMakefilevmeMakefiledevicesKconfigMakefilevt6655KconfigMakefilevt6656KconfigMakefilewilc1000KconfigMakefilewlan-ngKconfigMakefilexgifbKconfigMakefiletargetKconfigMakefileiscsiKconfigMakefilecxgbitKconfigMakefileloopbackKconfigMakefilesbpKconfigMakefiletcm_fcKconfigMakefiletcMakefileteeKconfigMakefileopteeKconfigMakefilethermalKconfigMakefilebroadcomKconfigMakefileintelKconfigMakefileint340x_thermalKconfigMakefileqcomKconfigMakefilesamsungKconfigMakefilestKconfigMakefiletegraKconfigMakefileti-soc-thermalKconfigMakefilethunderboltKconfigMakefilettyKconfigMakefilehvcKconfigMakefileipwirelessMakefileserdevKconfigMakefileserial8250KconfigMakefileKconfigMakefilecpm_uartMakefilejsmMakefilevtMakefileuioKconfigMakefileusbKconfigMakefileatmKconfigMakefilec67x00MakefilechipideaKconfigMakefileclassKconfigMakefilecommonKconfigMakefilecoreKconfigMakefiledwc2KconfigMakefiledwc3KconfigMakefileearlyMakefilegadgetKconfigMakefilefunctionMakefilelegacyKconfigMakefileudcKconfigMakefileaspeed-vhubKconfigMakefilebdcKconfigMakefilehostKconfigMakefilewhciMakefileimageKconfigMakefileisp1760KconfigMakefilemiscKconfigMakefilesisusbvgaKconfigMakefilemonKconfigMakefilemtu3KconfigMakefilemusbKconfigMakefilephyKconfigMakefilerenesas_usbhsKconfigMakefilerolesKconfigMakefileserialKconfigMakefileMakefile-keyspan_pda_fwstorageKconfigMakefiletypecKconfigMakefilealtmodesKconfigMakefilemuxKconfigMakefiletcpmKconfigMakefiletipdKconfigMakefileucsiKconfigMakefileusbipKconfigMakefilewusbcoreKconfigMakefileuwbKconfigMakefilei1480MakefiledfuMakefilevdpaKconfigMakefilealibabaMakefileifcvfMakefilemlx5Makefilevdpa_simMakefilevirtio_pciMakefilevfioKconfigMakefilemdevKconfigMakefilepciKconfigMakefileplatformKconfigMakefileresetKconfigMakefilevhostKconfigKconfig.vringhMakefilevideoKconfigMakefilebacklightKconfigMakefileconsoleKconfigMakefilefbdevKconfigMakefileatyMakefilecoreMakefilegeodeKconfigMakefilei810MakefileintelfbMakefilekyroMakefilematroxMakefilemb862xxMakefilembxMakefilemmpKconfigMakefilefbKconfigMakefilehwKconfigMakefilepanelKconfigMakefilenvidiaMakefileomapKconfigMakefileomap2KconfigMakefileomapfbKconfigMakefiledisplaysKconfigMakefiledssKconfigMakefilerivaMakefilesavageMakefilesisMakefilevermilionMakefileviaMakefilelogoKconfigMakefilevirtKconfigMakefilecocosev-guestKconfigMakefiletdx-guestKconfigMakefilenitro_enclavesKconfigMakefilevboxguestKconfigMakefilevirtioKconfigMakefilevisorbusKconfigMakefilevlynqKconfigMakefilevmeKconfigMakefileboardsKconfigMakefilebridgesKconfigMakefilew1KconfigMakefilemastersKconfigMakefileslavesKconfigMakefilewatchdogKconfigMakefilexenKconfigMakefileeventsMakefilexen-pcibackMakefilexenbusMakefilexenfsMakefilezorroKconfigMakefilefirmwareMakefilefs9pKconfigMakefileKconfigKconfig.binfmtMakefileadfsKconfigMakefileaffsKconfigMakefileafsKconfigMakefileautofsKconfigMakefilebefsKconfigMakefilebfsKconfigMakefilebtrfsKconfigMakefilecachefilesKconfigMakefilecephKconfigMakefilecifsKconfigMakefilecodaKconfigMakefileconfigfsKconfigMakefilecramfsKconfigMakefilecryptoKconfigMakefiledebugfsMakefiledevptsMakefiledlmKconfigMakefileecryptfsKconfigMakefileefivarfsKconfigMakefileefsKconfigMakefileexportfsMakefileext2KconfigMakefileext4KconfigMakefilef2fsKconfigMakefilefatKconfigMakefilefreevxfsKconfigMakefilefscacheKconfigMakefilefuseKconfigMakefilegfs2KconfigMakefilehfsKconfigMakefilehfsplusKconfigMakefilehostfsMakefilehpfsKconfigMakefilehugetlbfsMakefileiomapMakefileisofsKconfigMakefilejbd2KconfigMakefilejffs2KconfigMakefilejfsKconfigMakefilekernfsKconfigMakefilelockdMakefileminixKconfigMakefilenfsKconfigMakefileblocklayoutMakefilefilelayoutMakefileflexfilelayoutMakefilenfs_commonMakefilenfsdKconfigMakefilenilfs2KconfigMakefilenlsKconfigMakefilenotifyKconfigMakefilednotifyKconfigMakefilefanotifyKconfigMakefileinotifyKconfigMakefilentfsKconfigMakefileocfs2KconfigMakefileclusterMakefiledlmMakefiledlmfsMakefileomfsKconfigMakefileopenpromfsMakefileorangefsKconfigMakefileoverlayfsKconfigMakefileprocKconfigMakefilepstoreKconfigMakefileqnx4KconfigMakefileqnx6KconfigMakefilequotaKconfigMakefileramfsMakefilereiserfsKconfigMakefileromfsKconfigMakefilesquashfsKconfigMakefilesysfsKconfigMakefilesysvKconfigMakefiletracefsMakefileubifsKconfigMakefileudfKconfigMakefileufsKconfigMakefilexfsKconfigMakefileincludeacpiacbuffer.hacconfig.hacexcep.hacnames.hacoutput.hacpi.hacpi_bus.hacpi_drivers.hacpi_io.hacpi_lpat.hacpi_numa.hacpiosxf.hacpixf.hacrestyp.hactbl.hactbl1.hactbl2.hactbl3.hactypes.hacuuid.hapei.hbattery.hbutton.hcppc_acpi.hghes.hhed.hnfit.hpcc.hpdc_intel.hplatformacenv.hacenvex.hacgcc.hacgccex.hacintel.haclinux.haclinuxex.hprocessor.hreboot.hvideo.hasm-generic4level-fixup.h5level-fixup.hasm-offsets.hasm-prototypes.hatomic-instrumented.hatomic-long.hatomic.hatomic64.haudit_change_attr.haudit_dir_write.haudit_read.haudit_signal.haudit_write.hbarrier.hbitopsbitops-instrumented.hbitops.h__ffs.h__fls.harch_hweight.hatomic.hbuiltin-__ffs.hbuiltin-__fls.hbuiltin-ffs.hbuiltin-fls.hconst_hweight.hext2-atomic-setbit.hext2-atomic.hffs.hffz.hfind.hfls.hfls64.hhweight.hle.hlock.hnon-atomic.hsched.hbitsperlong.hbug.hbugs.hcache.hcacheflush.hchecksum.hcmpxchg-local.hcmpxchg.hcompat.hcurrent.hdelay.hdevice.hdiv64.hdma-contiguous.hdma-mapping.hdma.hearly_ioremap.hemergency-restart.herror-injection.hexec.hexport.hextable.hfb.hfixmap.hftrace.hfutex.hgetorder.hgpio.hhardirq.hhugetlb.hhw_irq.hhyperv-tlfs.hide_iops.hint-ll64.hio.hioctl.hiomap.hirq.hirq_regs.hirq_work.hirqflags.hkdebug.hkmap_size.hkprobes.hkvm_para.hkvm_types.hlinkage.hlocal.hlocal64.hmcs_spinlock.hmemory_model.hmm-arch-hooks.hmm_hooks.hmmiowb.hmmiowb_types.hmmu.hmmu_context.hmodule.hmshyperv.hmsi.hnuma.hpage.hparam.hparport.hpci.hpci_iomap.hpercpu.hpgalloc.hpgtable-nop4d-hack.hpgtable-nop4d.hpgtable-nopmd.hpgtable-nopud.hpgtable.hpgtable_uffd.hpreempt.hptrace.hqrwlock.hqrwlock_types.hqspinlock.hqspinlock_types.hresource.hseccomp.hsections.hsegment.hserial.hset_memory.hsignal.hsimd.hsizes.hspinlock.hstatfs.hstring.hswitch_to.hsyscall.hsyscalls.htermios-base.htermios.htimex.htlb.htlbflush.htopology.htrace_clock.huaccess.hunaligned.hunistd.huser.hvdsovsyscall.hvga.hvmlinux.lds.hvtime.hword-at-a-time.hxor.hclocksourcearm_arch_timer.hhyperv_timer.hpxa.hsamsung_pwm.htimer-sp804.htimer-ti-dm.hconfig64bit.h8139cp.h8139too8139too.h8129.ha64fxdiag.hacpiacpi.hac.hapeiapei.heinj.hghes.hmemoryfailure.hpcieaer.hsea.hbattery.hbutton.hccarequired.hcontainer.hcppccpufreq.hlib.hfan.hgenericgsi.hgtdt.hhed.hhmat.hhotplugcpu.hmemory.hi2copregion.hiort.hipmi.hmcfg.hnfit.hnuma.hpcislot.hpptt.hprmt.hprocessorprocessor.hidle.hreducedhardwareonly.hspcrtable.htableupgrade.hthermal.hvideo.hadvisesyscalls.hahcixgene.haio.halim7101wdt.hallowdevcoredump.halx.hamdphy.hxgbe.hampereerratumac03cpu38.haperturehelpers.haquantiaphy.harchbcmiproc.hdmaaddrt64bit.henablehugepagemigration.hmemoryhotplug.hhotremove.hhasacpitableupgrade.hcachelinesize.hdebugvirtual.hdevmemisallowed.hdmaprepcoherent.helfrandomize.hfastmultiplier.hfortifysource.hgcovprofileall.hgiganticpage.hkcov.hmembarriersynccore.hnonoverlappingaddressspace.hpmemapi.hptespecial.hresetcontroller.hsetdirectmap.hmemory.hsetupdmaops.hsgchain.hstrictkernelrwx.hmodulerwx.hsyncdmaforcpu.hdevice.hsyscallwrapper.htickbroadcast.huaccessflushcache.hubsansanitizeall.hhavenmisafecmpxchg.hhibernationheader.hpossible.hhisi.hinlinereadlocklock.hbh.hirq.hirqsave.hunlockunlock.hbh.hirq.hirqrestore.hspinlocklock.hbh.hirq.hirqsave.htrylocktrylock.hbh.hunlockunlock.hbh.hirq.hirqrestore.hwritelocklock.hbh.hirq.hirqsave.hunlockunlock.hbh.hirq.hirqrestore.hkeepmemblock.hmmaprndbitsbits.hmax.hmin.hcompatbitsmax.hmin.hprockcoretext.hqcom.hrandom.hseattle.hselectmemorymodel.hsparsememdefault.henable.hsupportsacpi.hatomicrmw.hdebugpagealloc.hint128.hmemoryfailure.hnumabalancing.huprobes.hsuspendpossible.htegra.hthunder.hthunder2.husecmpxchglockref.hqueuedrwlocks.hspinlocks.hvexpress.hwantdefaultbpfjit.hframepointers.hxgene.harmamba.harchtimertimer.hevtstream.hoolworkaround.hccn.hcmn.hcpuidle.hdmc620pmu.hgicgic.hmaxnr.hv2m.hv3v3.hitsits.hpci.hmhu.hpmupmu.hacpi.hpscifw.hsbsawatchdog.hscpicpufreq.hpowerdomain.hprotocol.hsdeinterface.hsmcccsocid.hsmmusmmu.hv3.hsp805watchdog.hspepmu.htegra20cpufreq.htimersp804.harm64arm64.h64kpages.hacpiparkingprotocol.hamuextn.hcnp.hcontshift.hcrypto.he0pd.herratum1024718.h1165522.h1286807.h1319367.h1463225.h1508412.h1530923.h1542419.h819472.h824069.h826319.h827319.h832075.h834220.h843419.h858921.hhwafdbm.hlseatomics.hmoduleplts.hpabitsbits.h52.hpageshift.hpan.hpmem.hpseudonmi.hrasextn.hsve.htlbrange.huao.hvabitsbits.h48.hvhe.hworkaroundcleancache.hrepeattlbi.hspeculativeat.hashasarmv84.hasn1.hassociativearray.hasymmetrickeytype.hpublickeysubtype.hasynccore.hmemcpy.hpq.hraid6recov.htest.htxdma.hxor.hataata.hacpi.hbmdma.hgeneric.hpiix.hsff.hverboseerror.hatl1.hatl1c.hatl1e.hatmatm.hbr2684.hclip.hlane.hatomic64selftest.hauditaudit.harchcompatgeneric.hgeneric.hauditsyscall.hauto.confauto.conf.cmdautofsfs.hautofs4fs.hauxiliarybus.hbacklightclassdevice.hgpio.hlcdsupport.hlp855x.hpwm.hballooncompaction.hbareudp.hbasefull.hsmall.hbcmnetphylib.hnsthermal.hsrthermal.hbcm7xxxphy.hbcm87xxphy.hbcmabcma.hdrivergmaccmn.hgpio.hpci.hhostpcipci.hpossible.hpossible.hbe2iscsi.hbfqgroupiosched.hbigkeys.hbinaryprintf.hbinfmtelf.hmisc.hscript.hbitfieldkunittest.hbitreverse.hbitskunittest.hblkcgroupcgroup.hfcappid.hiolatency.hrwstat.hdebugfs.hdevdev.hbsg.hbsglib.hdmdm.hbuiltin.hinitrd.hintegrityintegrity.ht10.hiotrace.hlooploop.hmincount.hmd.hnbd.hnullblk.hnvme.hpmem.hramram.hcount.hsize.hrbd.hsd.hsr.hthrottling.hmqpci.hrdma.hvirtio.hpm.hscsirequest.hwbtwbt.hmq.hblock.hbnx2.hbnx2xbnx2x.hsriov.hbnxtbnxt.hdcb.hfloweroffload.hhwmon.hsriov.hbonding.hbootprintkdelay.hbootparamhungtaskpanicvalue.hsoftlockuppanicvalue.hbpfbpf.hevents.hjitjit.halwayson.hdefaulton.hlsm.hstreamparser.hsyscall.hunprivdefaultoff.hbql.hbranchprofilenone.hbridgebridge.hebt8023.hamong.harp.harpreply.hbroute.hdnat.hip.hip6.hlimit.hlog.hmarkmark.ht.hnflog.hpkttype.hredirect.hsnat.hstp.htfilter.hnat.hvlan.higmpsnooping.hnetfilter.hnfebtables.hvlanfiltering.hbroadcomphy.hbsddisklabel.hprocessacctacct.hv3.hbtree.hbtt.hbugbug.hondatacorruption.hbuildtimeextablesort.hcachefiles.hcancan.h8devusb.hbcm.hccancan.hpci.hplatform.hcalcbittiming.hcc770cc770.hplatform.hdev.hemspci.husb.hesdusb2.hgw.hkvaserpci.husb.hleds.hpeakpci.hpciec.husb.hplxpci.hraw.hsja1000sja1000.hplatform.hslcan.hsofting.hucan.hvcan.hcaviumcpt.herratum22375.h23144.h23154.h27456.h30115.hptp.htx2erratum219.hcb710core.hdebugassumptions.hcccanlink.hhaskasangeneric.hsancovtracepc.hstackprotectornone.hworkingnosanitizeaddress.hisgcc.hoptimizeforperformance.hcdromcdrom.hpktcdvdpktcdvd.hbuffers.hcephfsfs.hposixacl.hsecuritylabel.hliblib.husednsresolver.hcfsbandwidth.hcgroupbpf.hcpuacct.hdevice.hfreezer.hhugetlb.hnetclassid.hprio.hperf.hpids.hrdma.hsched.hwriteback.hcgroups.hchargersmb347.hchecksignature.hcheckpointrestore.hchelsioinlinecrypto.hipsecinline.hlib.ht4.ht4vf.htlsdevice.hchrdevsch.hsg.hst.hchromeplatforms.hcicadaphy.hcifscifs.hallowinsecurelegacy.hdebug.hdfsupcall.hposix.hsmbdirect.hupcall.hweakpwhash.hxattr.hclangversion.hcleancache.hclkbcmns2.hsr.hsp810.hvexpressosc.hclkdevlookup.hclksrcmmio.hclonebackwards.hclsu32mark.hperf.hclztab.hcmdlinecmdline.hkunittest.hcommonclkclk.hhi3516cv300.hhi3519.hhi3660.hhi3798cv200.hiproc.hscpi.hversatile.hxgene.hresethi6220.hcompaction.hconfigfsfs.hconnector.hconsolelogleveldefault.hquiet.hpoll.htranslations.hcontextswitchtracer.htracking.hcontigalloc.hcordic.hcoredumpdefaultelfheaders.hcoredump.hcortinaphy.hcpufreqfreq.hdefaultgovperformance.hgovattrset.hcommon.hconservative.hondemand.hperformance.hpowersave.hschedutil.huserspace.hstat.hidleidle.hgovmenu.hmultipledrivers.hisolation.hpm.hrmap.hcpumaskoffstack.hcpusets.hcramfscramfs.hblockdev.hcrashcore.hdump.hcrcccitt.hitut.ht10dif.hcrc16.hcrc32crc32.hsliceby8.hcrc7.hcrc8.hcrossmemoryattach.hcryptocrypto.hacomp2.haead.haead2.haesaes.harm64arm64.hbs.hcece.hblk.hccm.hneonblk.hakcipher.hakcipher2.halgapi.halgapi2.hansicprng.hanubis.harc4.hauthenc.hblkcipher.hblkcipher2.hblowfishblowfish.hcommon.hcamellia.hcastcommon.hcast5.hcast6.hcbc.hccm.hcfb.hchacha20chacha20.hneon.hchacha20poly1305.hcmac.hcrc32.hcrc32c.hcrct10difcrct10dif.harm64ce.hcryptd.hctr.hcts.hdeflate.hdes.hdevbcmspu.hcaviumzip.hccpccp.hcrypto.hdd.hchelsio.hcpt.hnitroxnitrox.hcnn55xx.hspccp.hdrbgdrbg.hctr.hhash.hhmac.hmenu.hecb.hechainiv.hessiv.hfcrypt.hfipsfips.hname.hgcm.hgf128mul.hghashghash.harm64ce.hhashhash.hinfo.hhash2.hhmac.hhw.hjitterentropy.hkhazad.hkpp2.hlibarc4.hsha256.hlrw.hlzo.hmanager.hmanager2.hmd4.hmd5.hmichaelmic.hnull.hnull2.hpcbc.hpcrypt.hpoly1305.hrmd128.hrmd160.hrmd256.hrmd320.hrngrng.hdefault.hrng2.hrsa.hsalsa20.hseed.hseqiv.hserpent.hsha1sha1.harm64ce.hsha2arm64ce.hsha256sha256.harm64.hsha3.hsha512.hsimd.htea.htest.htgr192.htwofishtwofish.hcommon.huseruser.hapiapi.haead.hhash.hrng.hskcipher.hvmac.hworkqueue.hwp512.hxcbc.hxts.hcuse.hcyclades.hdamondamon.hdbgfs.hpaddr.hreclaim.hvaddr.hdavicomphy.hdaxdax.hdriver.hdcachewordaccess.hdcb.hdebugbugverbose.hfs.hinfoinfo.hbtf.hdwarf4.hkernel.hlist.hmemoryinit.hsectionmismatch.hshirq.hdecompressbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hdefaultcubic.hfqcodel.hhostname.hhungtasktimeout.hmmapminaddr.hnetsch.hsecurityselinux.htcpcong.hdetecthungtask.hdevdaxdax.hhmemhmem.hdevices.hdevtmpfsdevtmpfs.hmount.hdimlib.hdlcidlci.hmax.hdlmdlm.hdebug.hdmbioprison.hbufio.hcachecache.hsmq.hcrypt.hdebug.hdelay.hera.hflakey.hintegrity.hloguserspace.hwrites.hmirror.hmultipathmultipath.hhst.hioa.hql.hst.hpersistentdata.hraid.hsnapshot.hswitch.hthinprovisioning.huevent.hverity.hwritecache.hzero.hdmaacpi.hcoherentpool.hdirectremap.hengineengine.hraid.hnoncoherentmmap.hof.hops.hremap.hsharedbuffer.hdmadevices.hdmatest.hdmidmi.hsysfs.hdmiid.hdnet.hdnotify.hdnsresolver.hdp83640phy.hdp83822phy.hdp83848phy.hdp83867phy.hdp83tc811phy.hdql.hdrmdrm.hamdacp.hdcdc.hdcn.hamdgpuamdgpu.hcik.hast.hbochs.hbridge.hbuddy.hcirrusqemu.hdisplaydphelper.hhdcphelper.hhdmihelper.hhelper.hdpauxchardev.hexportfortests.hfbdevemulation.hoveralloc.hgemshmemhelper.hhisihibmc.hi2cch7006.hkmshelper.hkunittesttest.hhelpers.hlibrandom.hloadedidfirmware.hmgag200.hnouveaunouveau.hbacklight.hpanelpanel.hbridge.horientationquirks.hqxl.hradeonradeon.huserptr.hsched.httmttm.hhelper.hudl.hvirtiogpu.hvkms.hvramhelper.hdstcache.hdtidlestates.hdtc.hdummydummy.hconsoleconsole.hcolumns.hrows.hdwdmacdmac.hcore.hpci.hdwmacdwcqoseth.hdynamicdebug.hftrace.he1000e.hedacedac.hbluefield.hghes.hlegacysysfs.hsupport.hthunderx.hxgene.heeprom93cx6.hat24.hee1004.hlegacy.hmax6875.hefiefi.harmstub.hesrt.hparamsfromfdt.hpartition.hruntimewrappers.hsoftreserve.hstub.hvarsvars.hpstorepstore.hdefaultdisable.hefivarfs.helfcore.helfcore.henaethernet.henablemustcheck.henclosureservices.hencryptedkeys.henergymodel.hepoll.hethernet.hethoc.hethtoolnetlink.heventtracing.heventfd.hexclusivesystemram.hexportfsexportfs.hblockops.hext4fsfs.hposixacl.hsecurity.hkunittests.huseforext2.hextconextcon.hgpio.hextrafirmware.hfailover.hfairgroupsched.hfanotifyfanotify.haccesspermissions.hfatdefaultcodepage.hiocharset.hfs.hkunittest.hfbfb.hbacklight.hcfbcopyarea.hfillrect.himageblit.hcmdline.hdeferredio.hefi.hhyperv.hnotify.hsimple.hssd1307.hsyscopyarea.hfillrect.hfops.himageblit.htileblitting.hfcappid.hfhandle.hfibrules.hfilelocking.hfipssignatureselftest.hfixearlyconmem.hfixedphy.hfm10k.hfmcfmc.hchardev.hfakedev.htrivial.hwriteeeprom.hfont8x16.h8x8.hsupport.hforcemaxzoneorder.hfortifysource.hframepointer.hwarn.hframebufferconsoleconsole.hdeferredtakeover.hdetectprimary.hrotation.hfreezer.hfrontswap.hfsdax.hiomap.hmbcache.hposixacl.hfscachefscache.hstats.hfslerratuma008585.hfsnotify.hftraceftrace.hmcountrecord.hsyscalls.hfujitsuerratum010001.hfunctiongraphtracer.htracer.hfusefs.hfusionfusion.hlogging.hmaxsge.hsas.hspi.hfutexfutex.hpi.hfwcfgsysfs.hloaderloader.hsysfs.huserhelper.hgactprob.hgarp.hgccversion.hgenericallocator.harchnuma.htopology.hbugbug.hrelativepointers.hcalibratedelay.hclockeventsclockevents.hbroadcast.hcpuautoprobe.hvulnerabilities.hcsum.hearlyioremap.hgettimeofday.hhweight.hidlepollsetup.hirqchip.heffectiveaffmask.hinjection.hipi.hmigration.hprobe.hshowshow.hlevel.hmsiirqirq.hdomain.hnetutils.hpciiomap.hphy.hpinconf.hschedclock.hsmpidlethread.hstrncpyfromuser.hstrnlenuser.htimevsyscall.htracer.hvdsotimens.hgeneve.hglob.hgpioacpi.hamdpt.hdwapb.hgenericgeneric.hplatform.hmlxbf2.hpl061.hsysfs.htegra.hwatchdog.hxgenexgene.hsb.hxlp.hgpiolibgpiolib.hfastpathlimit.hirqchip.hgraceperiod.hgrocells.hhandledomainirq.hhardenel2vectors.hhardenedusercopyusercopy.hfallback.hhardirqsswresend.hhasdma.hiomem.hioportmap.hhashkunittest.hhaveacpiapei.halignedstructpage.harchauditsyscall.hbitreverse.hcompilerh.hhugevmap.hjumplabel.hkasankasan.hswtags.hvmalloc.hkgdb.hmmaprndbits.hpfnvalid.hseccompfilter.hthreadstructwhitelist.htracehook.htransparenthugepage.hvmapstack.harmsmcccsmccc.hdiscovery.hcrecordmcount.hclkclk.hprepare.hcmpxchgdouble.hlocal.hcontexttracking.hdebugbugverbose.hkmemleak.hdmacontiguous.hdynamicftrace.hebpfjit.hefficientunalignedaccess.hfastgup.hftracemcountrecord.hfunctiongraphtracer.htracer.hfutexcmpxchg.hgccplugins.hgenericdmacoherent.hvdso.hhardenedusercopyallocator.hhwbreakpoint.hirqtimeaccounting.hkprobes.hkretprobes.hkvmarchtlbflushall.hcpurelaxintercept.heventfd.hirqbypass.hrouting.hirqchip.hirqfd.hmsi.hvcpurunpidchange.hmemorypresent.hmodarchspecific.hnetdsa.hnmi.hpataplatform.hperfevents.hregs.huserstackdump.hregsandstackaccessapi.hrseq.hschedavgirq.hsetuppercpuarea.hstackprotector.hsyscalltracepoints.hvirtcpuaccountinggen.hhdlchdlc.hcisco.hfr.hppp.hraw.hhdmi.hheaderscheck.hhi3660mbox.hhi6220mbox.hhibernatecallbacks.hhibernation.hhidhid.ha4tech.hacrux.happle.happleir.haureal.hbatterystrength.hbelkin.hbetopff.hcherry.hchicony.hcorsair.hcypress.hdragonrise.helan.helecom.helo.hezkey.hgembird.hgeneric.hgfrm.hgreenasia.hgt683r.hgyration.hholtek.hhypervmouse.hicade.hite.hjabra.hkensington.hkeytouch.hkye.hlcpower.hled.hlenovo.hlogitechlogitech.hdj.hhidpp.hmagicmouse.hmicrosoft.hmonterey.hmultitouch.hnti.hntrig.hortek.hpantherlord.hpenmount.hpetalynx.hpicolcdpicolcd.hbacklight.hfb.hlcd.hleds.hpid.hplantronics.hprimax.hrmi.hroccat.hsaitek.hsamsung.hsensorhub.hsmartjoyplus.hsony.hspeedlink.hsteelseries.hsunplus.hthingm.hthrustmaster.htivo.htopseed.htwinhan.huclogic.hwacom.hwaltop.hwiimote.hxinmo.hzeroplus.hzydacron.hhidraw.hhighrestimers.hhinic.hhisipmu.hthermal.hhisiliconerratum161010101.h161600802.hirqmbigen.hlpc.hhisttriggers.hhmemreporting.hhnshns.hdsaf.henet.hmdio.hhns3hns3.hdcb.henet.hhclge.hhclgevf.hholesinzone.hhotplugcpu.hpcipci.hacpiacpi.hibm.hpcie.hhpilo.hwatchdog.hhugetlbpage.hhugetlbfs.hhvcdriver.hhwconsole.hperfevents.hrandomrandom.hcavium.hhisi.htimeriomem.htpm.hvirtio.hxgene.hhwlattracer.hhwmon.hhwpoisoninject.hhwspinlock.hhypervhyperv.hkeyboard.hnet.hstorage.hutils.hvsockets.hhzhz.h100.hi2ci2c.halgobit.halgopca.halgopcf.harbgpiochallenge.hboardinfo.hchardev.hcompat.hdesignwarecore.hplatform.hdiolanu2c.hgpio.hhidhid.hacpi.hcore.hmlxbf.hmuxmux.hgpio.hmlxcpld.hpca9541.hpca954x.hpinctrl.hnforce2.hparportlight.hpcaplatform.hqup.hsimtec.hslaveslave.heeprom.hsmbus.hstub.hthunderx.htinyusb.hversatile.hxgeneslimpro.hxlp9xx.hi40e.hi40evf.hi6300esbwdt.hiavf.hiceice.hswitchdev.hicplusphy.hidlepagetracking.hifb.hifcvf.higbigb.hhwmon.higbvf.higc.hikheaders.hillegalpointervalue.hindirectpio.hinetinet.hah.hdiagdiag.hdestroy.hespesp.hoffload.hespintcp.hipcomp.hmptcpdiag.hrawdiag.hsctpdiag.htcpdiag.htunnel.hudpdiag.hxfrmtunnel.hinet6ah.hespesp.hoffload.hespintcp.hipcomp.htunnel.hxfrmtunnel.hinfinibandinfiniband.haddrtranstrans.hconfigfs.hbnxtre.hcxgb4.hefa.hipoibipoib.hcm.hdebug.hirdma.hiser.hisert.hondemandpaging.hqedr.hsrp.hsrpt.huseraccess.hmad.hmem.hvirtdma.hinitenvarglimit.hinitramfssource.hinlinereadlocklock.hbh.hirq.hirqsave.hunlockunlock.hbh.hirq.hirqrestore.hspinlocklock.hbh.hirq.hirqsave.htrylocktrylock.hbh.hunlockbh.hirq.hirqrestore.hwritelocklock.hbh.hirq.hirqsave.hunlockunlock.hbh.hirq.hirqrestore.hinotifyuser.hinputinput.hevdev.hffmemless.hkeyboard.hleds.hmouse.hmousedevmousedev.hscreenx.hy.hpolldev.hsparsekmap.hintelxwayphy.hintervaltree.hiommuapi.hdefaultdmastrict.hdma.hiopgtablepgtable.hlpae.hiova.hsupport.hionic.hioschedbfq.hipadvancedrouter.hfibtriestats.hmroutemroute.hcommon.hmultipletables.hmulticast.hmultipletables.hnfarpmangle.harpfilter.harptables.hfilter.hiptables.hmangle.hmatchah.hecn.hrpfilter.httl.hnat.hraw.hsecurity.htargetecn.hmasquerade.hnetmap.hredirect.hreject.hsynproxy.httl.hpimsmv1.hv2.hrouteclassid.hmultipath.hverbose.hsctp.hsetset.hbitmapip.hipmac.hport.hhaship.hipmac.hipmark.hipport.hipportip.hipportnet.hmac.hnet.hnetiface.hnetnet.hnetport.hnetportnet.hlistset.hmax.hvsvs.hdh.hfo.hftp.hipv6.hlblc.hlblcr.hlc.hmhmh.htabindex.hnfct.hnq.hovf.hpesip.hprotoahah.hesp.hesp.hsctp.htcp.hudp.hrr.hsed.hshsh.htabbits.htabbits.hwlc.hwrr.hip6nffilter.hiptables.hmangle.hmatchah.heui64.hfrag.hhl.hipv6header.hmh.hopts.hrpfilter.hrt.hnat.hraw.hsecurity.htargetmasquerade.hnpt.hreject.hsynproxy.hipcns.hipmbdeviceinterface.hipmideviceinterface.hdmidecode.hhandler.hpanicevent.hstring.hplatdata.hpoweroff.hsi.hssif.hwatchdog.hipv6ipv6.hgre.hmip6.hmroutemroute.hmultipletables.hmultipletables.hndiscnodetype.hoptimisticdad.hpimsmv2.hrouteinfo.hrouterpref.hsitsit.h6rd.htunnel.hvti.hipvlan.hipvtap.hirqbypassmanager.hdomaindomain.hhierarchy.hforcedthreading.hmsiiommu.hpoll.hwork.hirqchip.hiscsibootsysfs.htargettarget.hcxgb4.htcp.hiso9660fs.hixgbeixgbe.hdcb.hhwmon.hipsec.hixgbevfixgbevf.hipsec.hjbd2.hjoliet.hjumplabel.hkallsymskallsyms.hall.hbaserelative.hkdbcontinuecatastrophic.hdefaultenable.hkeyboard.hkernelkernel.releasemodeneon.hkernfs.hkexeckexec.hcore.hfile.hkeyboardatkbd.hkeys.hkgdbkgdb.hhonourblocklist.hkdb.hserialconsole.htests.hkprobeevents.hkprobes.hkretprobes.hksm.hkunitkunit.halltests.hdebugfs.hexampletest.htest.hkvmkvm.harmpmu.hgenericdirtylogreadprotect.hindirectvectors.hmmio.hvfio.hl2tpl2tp.hdebugfs.heth.hip.hv3.hlcdclassdevice.hplatform.hledtriggerphy.hledsblinkm.hbrightnesshwchanged.hclassclass.hflash.hlm3530.hlp3944.hlp5521.hlp5523.hlp5562.hlp55xxcommon.hlt3593.hmlxreg.htriggerbacklight.hcamera.hdefaulton.hdisk.hgpio.hheartbeat.honeshot.htimer.htransient.htriggers.hlibcrc32c.hlibfc.hlibfcoe.hlibfdt.hlibnvdimm.hlinearrangesranges.hkunittest.hliquidioliquidio.hvf.hlistkunittest.hllc.hlocalversion.hlockdebuggingsupport.hspinonowner.htorturetest.hlockdlockd.hv4.hlockdepsupport.hlockupdetector.hlogbufshift.hcpumaxbufshift.hlogitechff.hlogologo.hlinuxclut224.hloopbacktarget.hlsiet1011cphy.hlsmlsm.hmmapminaddr.hlwtunnellwtunnel.hbpf.hlxtphy.hlz4decompress.hlzocompress.hdecompress.hmacsec.hmacvlan.hmacvtap.hmagicsysrqsysrq.hdefaultenable.hserial.hmailbox.hmarvell10gphy.hphy.hmaxrawdevs.hmaxlineargphy.hmdmd.hautodetect.hcluster.hfaulty.hlinear.hraid0.hraid1.hraid10.hraid456.hmdiomdio.hbcmunimac.hbitbang.hbus.hcavium.hdevice.hgpio.hhisifemac.hmsccmiim.hocteon.hthunder.hxgene.hmegaraidsas.hmellanoxplatform.hmembarrier.hmemcgmemcg.hkmem.hswap.hmemcpykunittest.hmemfdcreate.hmemoryballoon.hfailure.hhotplug.hhotremove.hisolation.hmemregion.hmemstickmemstick.hjmicron38x.hr592.htifmms.hmessagelogleveldefault.hmfdcore.hsyscon.hmhibusbus.hpcigeneric.hmicrelks8995ma.hphy.hmicrochipphy.ht1phy.hmicrosemiphy.hmigration.hmii.hmiscfilesystems.hmitigatespectrebranchhistory.hmlxwdt.hmlx4core.hdebug.henen.hdcb.hinfiniband.hmlx5bridge.hclsact.hcorecore.henen.hdcb.hipoib.henarfs.hipsec.hrxnfc.htls.heswitch.hfpga.hinfiniband.hmpfs.hsfsf.hmanager.hswsteering.htcct.hsample.hvdpavdpa.hnet.hmlxbfbootctl.hgige.hpmc.htmfifo.hmlxfw.hmlxreghotplug.hio.hmlxswcorecore.hhwmon.hthermal.hi2c.hminimal.hpci.hspectrumspectrum.hdcb.hswitchib.hswitchx2.hmmcmmc.harmmmci.hblockblock.hminors.hcb710.hcqhci.hdwdw.hbluefield.hpltfm.hmtk.hricohmmc.hsdhcisdhci.hacpi.hioaccessors.hiproc.hpci.hpltfm.htifmsd.htoshibapci.hushc.hviasdmmc.hvub300.hmmummu.hgatherrcutablefree.htablefree.hnotifier.hmoduleforceload.hsigsig.hall.hformat.hhash.hkey.hsha256.hsrcversionall.hunload.hmodulesmodules.htreelookup.huseelfrela.hmodversions.hmouseelani2ci2c.hi2c.hsmbus.hsynapticsi2c.husb.hmpilib.hmplsmpls.hiptunnel.hrouting.hmptcpmptcp.hipv6.hkunittest.hmqioscheddeadline.hkyber.hmrp.hmsdosfs.hpartition.hmsproblock.hmtdmtd.hblkdevs.hblock.hcficfi.hamdstd.hi1.hi2.hintelext.hstaa.hutil.hgenprobe.hmapbankwidth1.h2.h4.hofparts.hphysmapphysmap.hof.hubiubi.hbeblimit.hwlthreshold.hmultiuser.hmutexspinonowner.hngsm.hhdlc.hnamespaces.hnationalphy.hndblk.hbtt.hclaim.hneeddmamapstate.hmultiplenodes.hpercpuembedfirstchunk.hsgdmalength.hnetnet.hactbpf.hcsum.hct.hgact.hmirred.hmpls.hnat.hpedit.hpolice.hsample.hsimp.hskbedit.hskbmod.htunnelkey.hvlan.hclscls.hact.hbasic.hbpf.hcgroup.hflow.hflower.hfw.hmatchall.hroute4.hrsvp.hrsvp6.htcindex.hu32.hcore.hdevlink.hdropmonitor.hegress.hematchematch.hcmp.hipset.hmeta.hnbyte.hstack.htext.hu32.hfailover.hfc.hflowlimit.hingress.hiptunnel.hipgreipgre.hbroadcast.hdemux.hipip.hipvti.hkeykey.hmigrate.hl3masterdev.hmplsgso.hns.hnsh.hpacketengine.hpktgen.hpollcontroller.hptpclassify.hredirect.hrxbusypoll.hschatm.hcbq.hcbs.hchoke.hcodel.hdefault.hdrr.hdsmark.hets.hfifo.hfqfq.hcodel.hgred.hhfsc.hhhf.hhtb.hingress.hmqpriomqprio.hlib.hmultiq.hnetem.hpie.hplug.hprio.hqfq.hred.hsfb.hsfq.htbf.hteql.hsched.hsockmsg.hswitchdev.htcskbext.hteamteam.hmodeactivebackup.hbroadcast.hloadbalance.hrandom.hroundrobin.hudptunnel.hvendoramazon.hamd.haquantia.hatheros.hbroadcom.hcavium.hchelsio.hgoogle.hhisilicon.hhuawei.hintel.hmellanox.hmicrosoft.hmyri.hnetronome.hoki.hpensando.hqlogic.hqualcomm.hrealtek.hrocker.hsmsc.hsolarflare.hstmicro.hvrf.hxgenexgene.hv2.hnetconsolenetconsole.hdynamic.hnetdevaddrlisttest.hnetdevices.hnetdevsim.hnetfilternetfilter.hadvanced.hconncount.hfamilyarp.hbridge.hingress.hnetlinknetlink.hgluect.hlog.hqueue.hsynproxy.hxtconnmark.hmark.hmatchaddrtype.hbpf.hcgroup.hcluster.hcomment.hconnbytes.hconnlabel.hconnlimit.hconnmark.hconntrack.hcpu.hdccp.hdevgroup.hdscp.hecn.hesp.hhashlimit.hhelper.hhl.hiprange.hipvs.hlength.hlimit.hmac.hmark.hmultiport.hosf.howner.hphysdev.hpkttype.hpolicy.hquota.hrateest.hrealm.hrecent.hsctp.hsocket.hstate.hstatistic.hstring.htcpmss.hu32.hnat.hset.htargetaudit.hchecksum.hclassify.hconnmark.hconnsecmark.hct.hdscp.hhl.hhmark.hidletimer.hlog.hmark.hnetmap.hnflog.hnfqueue.hnotrack.hrateest.hredirect.hsecmark.htcpmss.htcpoptstrip.htee.htproxy.htrace.hxtables.hnetlabel.hnetlinkdiag.hnetpoll.hnetworkfilesystems.hphytimestamping.hsecmark.hnetxennic.hnewleds.hnfconntrackconntrack.hamanda.hbroadcast.hevents.hftp.hh323.hirc.hlabels.hmark.hnetbiosns.hpptp.hprocfs.hsane.hsecmark.hsip.hsnmp.htftp.htimeout.htimestamp.hzones.hctnetlinknetlink.hhelper.htimeout.hprotodccp.hgre.hsctp.hudplite.hdefragipv4.hipv6.hdupipv4.hipv6.hnetdev.hflowtabletable.hinet.hipv4.hipv6.hlogarp.hipv4.hipv6.hsyslog.hnatnat.hamanda.hftp.hh323.hirc.hmasquerade.hneeded.hpptp.hredirect.hsip.hsnmpbasic.htftp.hosf.hrejectipv4.hipv6.hsocketipv4.hipv6.htablestables.harp.hbridge.hinet.hipv4.hipv6.hnetdev.hset.htproxyipv4.hipv6.hnfpnfp.happabmnic.hflower.hnfsaclsupport.hcommon.hdebug.hfs.hfscache.husekerneldns.hv3v3.hacl.hv4v4.h11.himplementationiddomain.h2.hsecuritylabel.hnfsdnfsd.hpnfs.hscsilayout.hv2acl.hv3v3.hacl.hv4v4.hsecuritylabel.hnftbridgereject.hcompat.hconnlimit.hcounter.hct.hdupipv4.hipv6.hnetdev.hfibfib.hinet.hipv4.hipv6.hnetdev.hflowoffload.hfwdnetdev.hhash.hlimit.hlog.hmasq.hnat.hnumgen.hobjref.hqueue.hquota.hredir.hrejectreject.hinet.hipv4.hipv6.hsocket.htproxy.hxfrm.hnitroenclaves.hnlattr.hnlmon.hnlsnls.hascii.hcodepage1250.h1251.h437.h737.h775.h850.h852.h855.h857.h860.h861.h862.h863.h864.h865.h866.h869.h874.h932.h936.h949.h950.hdefault.hiso88591.h13.h14.h15.h2.h3.h4.h5.h6.h7.h8.h9.hkoi8r.hu.hmacceltic.hcenteuro.hcroatian.hcyrillic.hgaelic.hgreek.hiceland.hinuit.hroman.hromanian.hturkish.hutf8.hnohzhz.hcommon.hfull.hnodesshift.hnoptracer.hnouveaudebugdebug.hdefault.hplatformdriver.hnrcpus.hnumanuma.hbalancingbalancing.hdefaultenabled.hkeepmeminfo.hnvdimmkeys.hnvidiacarmelcnperratum.hnvmecore.hfabrics.hfc.hmultipath.hrdma.htargettarget.hfc.hfcloop.hloop.hrdma.htcp.htcp.hverboseerrors.hnvmem.hobjagg.hofof.haddress.hdynamic.hearlyflattree.hflattree.hgpio.hiommu.hirq.hkobj.hmdio.hnet.hnuma.hoverlay.hpmem.hreservedmem.hresolve.hoidregistry.hopenvswitchopenvswitch.hgeneve.hgre.hvxlan.hosnoisetracer.hoverlayfs.hpacketpacket.hdiag.hpadata.hpagecounter.hextension.howner.hpoisoning.hpool.hreporting.hpaniconoopsoops.hvalue.htimeout.hparavirtparavirt.htimeaccounting.hparman.hpartitionadvanced.hpercpu.hpcc.hpcipci.hats.hdomainsdomains.hgeneric.hecam.hhisi.hhostcommon.hgeneric.hthunderecam.hpem.hhypervhyperv.hinterface.hiov.hlabel.hmsimsi.hirqdomain.hpasid.hpri.hquirks.hstub.hsyscall.hxgenexgene.hmsi.hpciedpc.hdwdw.hhost.hecrc.hedr.hiprociproc.hmsi.hplatform.hpme.hpcieaerpcieaer.hinject.hpcieaspmpcieaspm.hdefault.hpcieportbus.hpcipcwatchdog.hpcsxpcs.hperfevents.hpersistentkeyrings.hpgtablelevels.hphybrcmsata.hhi6220usb.hns2usbdrd.hxgene.hphylib.hphylink.hphysaddrt64bit.hpidns.hpinconf.hpinctrlpinctrl.hiprocgpio.hmsm.hqdf2xxx.htegraxusb.hpinmux.hpkcs7messageparser.hpldmfw.hpluginhostcc.hpmpm.hclk.hdebug.hgenericdomainsdomains.hof.hsleep.hsleepsleep.hdebug.hsmp.hstdpartition.hpmbus.hpnfsblock.hfilelayout.hflexfilelayout.hpnppnp.hdebugmessages.hpnpacpi.hposixmqueuemqueue.hsysctl.htimers.hpowerresetreset.hgpiogpio.hrestart.hhisi.hrestart.hsyscon.hvexpress.hsupply.hpppppp.hasync.hbsdcomp.hdeflate.hfilter.hmppe.hmultilink.hsynctty.hpppoatm.hpppoe.hpppol2tp.hppspps.hclientgpio.hldisc.hpptp.hpreemptnotifiers.hvoluntary.hpreventfirmwarebuild.hprimenumbers.hprintquotawarning.hprintkprintk.hnmi.hsafelogbufshift.htime.hprobeevents.hprocchildren.hevents.hfs.hkcore.hpagemonitor.hpidcpuset.hsysctl.hvmcorevmcore.hdevicedump.hprofiling.hpsample.hpsipsi.hdefaultdisabled.hpstorepstore.hcompresscompress.hdefault.hdeflatecompresscompress.hdefault.hram.hptp1588clock.hpwmpwm.hbcmiproc.hsysfs.hqcomemac.hfalkorerratum1003.h1009.he1041.hhidmahidma.hmgmt.hirqcombiner.hl2pmu.hl3pmu.hqdf2400erratum0065.hqedqed.hfcoe.hiscsi.hll2.hooo.hrdma.hsriov.hqede.hqedf.hqedi.hqfmtv2.hqla3xxx.hqsemiphy.hqueuedrwlocks.hspinlocks.hquotaquota.hnetlinkinterface.htree.hquotactl.hr8169.hraidattrs.hraid6pqpq.hbenchmark.hrandomizebase.hmoduleregionfull.hras.hrationalrational.hkunittest.hrawdriver.hrcucpustalltimeout.hneedsegcblist.hnocbcpu.hstallcommon.hrdbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hrdmarxe.hsiw.hrealtekautopm.hphy.hreedsolomonsolomon.hdec8.henc8.hrefcountfull.hregmapregmap.hi2c.hmmio.hspi.hrelay.hrelocatable.hrenesasphy.hresetcontroller.hhisi.hresourcekunittest.hrfkillrfkill.hgpio.hinput.hleds.hrfsaccel.hrhkabisizealignchecks.hrheldifferences.hringbufferbuffer.hbenchmark.hrmi42dsensor.hcore.hf03f03.hserio.hf11.hf12.hf30.hf34.hf3a.hf55.hi2c.hsmb.hspi.hrockchipphy.hrocker.hrodatafulldefaultenabled.hrpcsecgsskrb5.hrps.hrseq.hrtgroupsched.hmutexes.hrtcclass.hdrvabb5zes3.habx80x.hbq32k.hbq4802.hds1286.hds1305.hds1307.hds1343.hds1347.hds1374ds1374.hwdt.hds1390.hds1511.hds1553.hds1672.hds1685ds1685.hfamily.hds1742.hds2404.hds3232ds3232.hhwmon.hefi.hem3027.hfm3130.hisl12022.hisl1208.hm41t80m41t80.hwdt.hm41t93.hm41t94.hm48t35.hm48t59.hmax6900.hmax6902.hmcp795.hmsm6242.hpcf2123.hpcf2127.hpcf85063.hpcf8523.hpcf8563.hpcf8583.hpl031.hr9701.hrp5c01.hrs5c348.hrs5c372.hrv3029c2.hrx4581.hrx8010.hrx8025.hrx8581.hstk17ta8.hv3020.hx1205.hds1685sysfsregs.hhctosyshctosys.hdevice.hi2candspi.hintfdev.hproc.hsysfs.hliblib.hkunittest.hnvmem.hruntimetestingmenu.hrwsemspinonowner.hsamples.hsataahciahci.hplatform.hseattle.hhost.hmobilelpmpolicy.hpmp.hsbitmap.hscftorturetest.hschedautogroup.hcluster.hdebug.hhrtick.hinfo.hmc.hsmt.htracer.hschedstats.hscsiscsi.hchelsiofcoe.hconstants.hcxgb4iscsi.hdebug.hdhdh.halua.hemc.hhpsw.hrdac.hdma.henclosure.hfcattrs.hhisisassas.hpci.hhpsa.hipripr.hdump.htrace.hiscsiattrs.hlogging.hlowlevel.hlpfc.hmod.hmpi3mr.hmpt2sasmaxsge.hmpt3sasmpt3sas.hmaxsge.hnetlink.hprocfs.hqlafc.hiscsi.hsasata.hattrs.hhostsmp.hlibsas.hscanasync.hsmartpqi.hspiattrs.hsrpattrs.hvirtio.hsctpcookiehmacmd5.hsha1.hdefaultcookiehmacsha1.hsdiouart.hseccompseccomp.hfilter.hsectionmismatchwarnonly.hsecuritysecurity.hinfiniband.hnetworknetwork.hxfrm.hpath.hselinuxselinux.havcstats.hbootparam.hcheckreqprotvalue.hdevelop.hdisable.hsid2strcachesize.hsidtabhashbits.hwritablehooks.hyama.hsecurityfs.hselectmemorymodel.hsensorsacpipower.had7314.hadc128d818.hadcxx.hads7871.harmscpi.hg762.hjc42.hlm70.hltc2945.hltc3815.hltc4222.hltc4260.hmax1111.hmax20751.hmax31790.hmlxregfan.hnct7802.hnct7904.hntcthermistor.hpowr1220.hpwmfan.hshtc1.htc74.htmp103.htps40422.hvexpress.hxgene.hserial82508250.hconsole.hdma.hdw.hdwlib.hexar.hextended.hfsl.hmanyports.hnruarts.hpci.hpnp.hrsa.hrt288x.hruntimeuarts.hshareirq.htegra.hambapl011pl011.hconsole.hcorecore.hconsole.hearlyconearlycon.harmsemihost.hnonstandard.hofplatform.hserioserio.halteraps2.hambakmi.harcps2.hlibps2.hraw.hserport.hsgpool.hsglalloc.hshmem.hshufflepageallocator.hsignalfd.hsignedpefileverification.hskbextensions.hslabfreelisthardened.hrandom.hslhc.hslipslip.hcompressed.hsmart.hslubslub.hcpupartial.hdebug.hkunittest.hsmc91x.hsmp.hsmscphy.hsocbus.htegrafuse.hsockcgroupdata.hvalidatexmit.hsoftwatchdog.hsoftlockupdetector.hsonyff.hsound.hsparseirq.hsparsememsparsemem.hextreme.hmanual.hvmemmapvmemmap.henable.hspispi.hcadence.hdesignware.hdwmmio.hmaster.hpl022.hqup.hxlp.hsplitptlockcpus.hsquashfssquashfs.hdecompmultipercpu.hfiledirect.hfragmentcachesize.hlz4.hlzo.hxattr.hxz.hzlib.hsrcu.hssbpossible.hstacktracer.hstackdepot.hstackprotectorstackprotector.hstrong.hstacktracestacktrace.hsupport.hstandalone.hste10xp.hstmmaceth.hplatform.hstp.hstreamparser.hstrictkernelrwx.hmodulerwx.hstripasmsyms.hstubclkhi3660.hsunrpcsunrpc.hbackchannel.hdebug.hgss.hxprtrdma.hsuspendsuspend.hfreezer.hswap.hswiotlb.hswphy.hsymbolicerrname.hsyncookies.hsyncfile.hsynclinkgt.hsynclinkmp.hsyssupportshugetlbfs.hsysctlsysctl.hexceptiontrace.hkunittest.hsysfssysfs.hsyscall.hsystemdataverification.htrustedkeyring.hkeys.hsysvipcsysvipc.hsysctl.htap.htargetcore.htaskdelayacct.hioaccounting.hxacct.htasksrcugeneric.hrudercu.htracercu.htaskstats.htcgatmel.hcrb.htistis.hcore.hspi.htpm.htcmfileio.hiblock.hpscsi.huser2.htcpcongadvanced.hbbr.hbic.hcubic.hdctcp.hhstcp.hhtcp.hhybla.hillinois.hlp.hnv.hscalable.hvegas.hveno.hwestwood.hyeah.hmd5sig.htee.htegraahb.hteraneticsphy.htestbpf.hkstrtox.hlistsort.hvmalloc.htextsearchtextsearch.hbm.hfsm.hkmp.hthermalthermal.hdefaultgovstepwise.hemergencypoweroffdelayms.hgovfairshare.hstepwise.huserspace.hhwmon.hthreadinfointask.hthundernicbgx.hpf.hrgx.hvf.hthunderx2pmu.htickoneshot.htifmcore.htigon3tigon3.hhwmon.htimekunittest.hns.htimeracpi.hof.hprobe.htimerfd.htimerlattracer.htipctipc.hcrypto.hdiag.hmediaib.hudp.htlstls.hdevice.htmpfstmpfs.hposixacl.hxattr.htorturetest.htraceclock.hirqflagssupport.htracepoints.htracermaxtrace.hsnapshot.htracingtracing.hmap.hsupport.htransparenthugepagehugepage.halways.htreercu.hsrcu.htristate.conftrustedkeys.htty.htun.htypectypec.hdpaltmode.hfusb302.hmuxpi3usb30532.hrt1711h.htcpci.htcpm.htps6598x.hucsi.hucs2string.hucsiacpi.hudffs.hueficpercper.harm.huhid.huiouio.haec.hcif.hhvgeneric.hpcigeneric.hpdrvgenirq.hsercos3.hunixunix.hdiag.hscm.hunix98ptys.hunmapkernelatel0.huprobeevents.huprobes.husbusb.hacm.hadutux.halim5632.han2720.hannouncenewdevices.happledisplay.harchhashcd.harmlinux.hatm.hautosuspenddelay.hbelkin.hcatc.hchaoskey.hcommon.hcxacru.hdefaultpersist.hehcihcdhcd.hplatform.hpci.hroothubtt.httnewsched.hemi26.hemi62.hepson2888.hezusbfx2.hftdielan.hhid.hhiddev.hhsicusb3503.hhso.hhwahcd.hidmouse.hiowarrior.hipheth.hisightfw.hkaweth.hkc2190.hlan78xx.hlcd.hld.hledtrig.hledstriggerusbport.hlegotower.hmdc800.hmicrotek.hmon.hnetax88179178a.hax8817x.hcdceem.hmbim.hncm.hsubsetsubset.henable.hcdcether.hch9200.hcx82310eth.hdm9601.hdrivers.hgl620a.hhuaweicdcncm.hint51x1.hkalmia.hmcs7830.hnet1080.hplusb.hqmiwwan.hrndishost.hsmsc75xx.hsmsc95xx.hsr9700.hzaurus.hohcihcdhcd.hpci.hlittleendian.hpci.hpegasus.hprinter.hroleswitch.hrtl8150.hrtl8152.hserialserial.haircable.hark3116.hbelkin.hch341.hconsole.hcp210x.hcyberjack.hcypressm8.hdebug.hdigiacceleport.hedgeportedgeport.hti.hempeg.hf8153x.hftdisio.hgarmin.hgeneric.hipaq.hipw.hir.hiuu.hkeyspankeyspan.hpda.hklsi.hkobilsct.hmctu232.hmos7720.hmos7840.hmxuport.hnavman.homninet.hopticon.hoption.hoti6858.hpl2303.hqcaux.hqt2.hqualcomm.hsafesafe.hpadded.hsierrawireless.hsimple.hspcp8x5.hssu100.hsymbol.hti.hupd78f0730.hvisor.hwhiteheat.hwwan.hxircom.hxsensmt.hsevseg.hsierranet.hsisusbvga.hstoragestorage.halauda.hcypressatacb.hdatafab.heneub6250.hfreecom.hisd200.hjumpshot.hkarma.honetouch.hrealtek.hsddr09.hsddr55.husbat.hsupport.htmc.huas.hueagleatm.huhcihcd.hulpibus.husbnet.hvl600.hwdm.hwusbwusb.hcbaf.hxhcihcd.hpci.hplatform.hxusbatm.husb4usb4.hnet.husbpcwatchdog.husepercpunumanodeid.huserns.huserfaultfd.hutsns.huwbuwb.hhwa.hi1480u.hwhci.hvdpavdpa.hsimsim.hblock.hnet.hveth.hvexpressconfig.hsyscfg.hvfatfs.hvfiovfio.hiommutype1.hnoiommu.hpcipci.hintx.hmmap.hvirqfd.hvgaarbarb.hmaxgpus.hvhostvhost.hiotlb.hmenu.hnet.hring.hvdpa.hvsock.hvideonomodeset.hvirtcpuaccountingaccounting.hgen.hdrivers.hvirtiovirtio.hballoon.hblk.hconsole.hfs.hinput.hmenu.hmmio.hnet.hpcipci.hlegacy.hlib.hvdpa.hvsocketsvsockets.hcommon.hvirtualization.hvitessephy.hvlan8021q8021q.hgvrp.hmvrp.hvmeventcounters.hvmappfn.hstack.hvpvdpa.hvsocketsvsockets.hdiag.hloopback.hvsockmon.hvtvt.hconsoleconsole.hsleep.hhwconsolebinding.hvxlan.hwan.hwatchdogwatchdog.hcore.hhandlebootenabled.hopentimeout.hsysfs.hwdtpci.hx509certificateparser.hxarraymulti.hxdpsocketssockets.hdiag.hxfrmxfrm.halgo.hespintcp.hinterface.hipcomp.hmigrate.hoffload.hstatistics.hsubpolicy.huser.hxfsfs.hposixacl.hquota.hxgenepmu.hslimprombox.hxilinxgmii2rgmii.hxorblocks.hxps.hxzdecdec.harm.harmthumb.hbcj.hia64.hpowerpc.hsparc.hx86.hzbud.hzisofs.hzlibdeflate.hinflate.hzonedma32.hzpool.hzramzram.hwriteback.hzsmalloczsmalloc.hstat.hzswap.hcryptoacompress.haead.haes.hakcipher.halgapi.harc4.hauthenc.hb128ops.hblowfish.hcast5.hcast6.hcast_common.hcbc.hchacha20.hcryptd.hcrypto_wq.hctr.hdes.hdh.hdrbg.hecdh.hengine.hgcm.hgf128mul.hghash.hhash.hhash_info.hhmac.hif_alg.hinternalacompress.haead.hakcipher.hgeniv.hhash.hkpp.hrng.hrsa.hscompress.hsimd.hskcipher.hkpp.hmcryptd.hmd5.hmorus1280_glue.hmorus640_glue.hmorus_common.hnull.hpadlock.hpcrypt.hpkcs7.hpoly1305.hpublic_key.hrng.hscatterwalk.hserpent.hsha.hsha1_base.hsha256_base.hsha3.hsha512_base.hskcipher.hsm3.hsm3_base.hsm4.hspeck.htwofish.hxts.hdrmdrm-backportREADME.txtlinuxmmu_notifier.hamd_asic_type.hbridgeanalogix_dp.hdw_hdmi.hdw_mipi_dsi.hmhl.hdisplaydrm_dp.hdrm_dp_aux_bus.hdrm_dp_dual_mode_helper.hdrm_dp_helper.hdrm_dp_mst_helper.hdrm_dsc.hdrm_dsc_helper.hdrm_hdcp.hdrm_hdcp_helper.hdrm_hdmi_helper.hdrm_scdc.hdrm_scdc_helper.hdrm_accel.hdrm_aperture.hdrm_atomic.hdrm_atomic_helper.hdrm_atomic_state_helper.hdrm_atomic_uapi.hdrm_audio_component.hdrm_auth.hdrm_blend.hdrm_bridge.hdrm_bridge_connector.hdrm_buddy.hdrm_cache.hdrm_client.hdrm_color_mgmt.hdrm_connector.hdrm_crtc.hdrm_crtc_helper.hdrm_damage_helper.hdrm_debugfs.hdrm_debugfs_crc.hdrm_device.hdrm_displayid.hdrm_drv.hdrm_edid.hdrm_encoder.hdrm_encoder_slave.hdrm_fb_dma_helper.hdrm_fb_helper.hdrm_fbdev_generic.hdrm_file.hdrm_fixed.hdrm_flip_work.hdrm_format_helper.hdrm_fourcc.hdrm_framebuffer.hdrm_gem.hdrm_gem_atomic_helper.hdrm_gem_dma_helper.hdrm_gem_framebuffer_helper.hdrm_gem_shmem_helper.hdrm_gem_ttm_helper.hdrm_gem_vram_helper.hdrm_ioctl.hdrm_kunit_helpers.hdrm_lease.hdrm_legacy.hdrm_managed.hdrm_mipi_dbi.hdrm_mipi_dsi.hdrm_mm.hdrm_mode_config.hdrm_mode_object.hdrm_modes.hdrm_modeset_helper.hdrm_modeset_helper_vtables.hdrm_modeset_lock.hdrm_module.hdrm_of.hdrm_panel.hdrm_pciids.hdrm_plane.hdrm_plane_helper.hdrm_prime.hdrm_print.hdrm_privacy_screen_consumer.hdrm_privacy_screen_driver.hdrm_privacy_screen_machine.hdrm_probe_helper.hdrm_property.hdrm_rect.hdrm_self_refresh_helper.hdrm_simple_kms_helper.hdrm_syncobj.hdrm_sysfs.hdrm_util.hdrm_utils.hdrm_vblank.hdrm_vblank_work.hdrm_vma_manager.hdrm_writeback.hgma_drm.hgpu_scheduler.hgud.hi2cch7006.hsil164.htda998x.hi915_component.hi915_drm.hi915_mei_hdcp_interface.hi915_pciids.hi915_pxp_tee_interface.hintel-gtt.hintel_lpe_audio.hspsc_queue.htask_barrier.httmttm_bo.httm_caching.httm_device.httm_execbuf_util.httm_kmap_iter.httm_placement.httm_pool.httm_range_manager.httm_resource.httm_tt.hdt-bindingsarmux500_pm_domains.hbusti-sysc.hclkti-dra7-atl.hclockactions,s900-cmu.halphascale,asm9260.ham3.ham4.haspeed-clock.hat91.hath79-clk.haxg-aoclkc.haxg-clkc.haxis,artpec6-clkctrl.hbcm-cygnus.hbcm-ns2.hbcm-nsp.hbcm-sr.hbcm21664.hbcm281xx.hbcm2835-aux.hbcm2835.hberlin2.hberlin2q.hboston-clock.hclps711x-clock.hcortina,gemini-clock.hdm814.hdm816.hdra7.hefm32-cmu.hexynos-audss-clk.hexynos3250.hexynos4.hexynos5250.hexynos5260-clk.hexynos5410.hexynos5420.hexynos5433.hexynos5440.hexynos7-clk.hgxbb-aoclkc.hgxbb-clkc.hhi3516cv300-clock.hhi3519-clock.hhi3620-clock.hhi3660-clock.hhi6220-clock.hhip04-clock.hhistb-clock.hhix5hd2-clock.himx1-clock.himx21-clock.himx27-clock.himx5-clock.himx6qdl-clock.himx6sl-clock.himx6sll-clock.himx6sx-clock.himx6ul-clock.himx7d-clock.hjz4740-cgu.hjz4770-cgu.hjz4780-cgu.hlpc18xx-ccu.hlpc18xx-cgu.hlpc32xx-clock.hlsi,axm5516-clks.hmarvell,mmp2.hmarvell,pxa168.hmarvell,pxa1928.hmarvell,pxa910.hmaxim,max77620.hmaxim,max77686.hmaxim,max77802.hmeson8b-clkc.hmicrochip,pic32-clock.hmpc512x-clock.hmt2701-clk.hmt2712-clk.hmt6797-clk.hmt7622-clk.hmt8135-clk.hmt8173-clk.hnuvoton,npcm7xx-clock.homap4.homap5.hoxsemi,ox810se.hoxsemi,ox820.hpistachio-clk.hpxa-clock.hqcom,gcc-apq8084.hqcom,gcc-ipq4019.hqcom,gcc-ipq806x.hqcom,gcc-ipq8074.hqcom,gcc-mdm9615.hqcom,gcc-msm8660.hqcom,gcc-msm8916.hqcom,gcc-msm8960.hqcom,gcc-msm8974.hqcom,gcc-msm8994.hqcom,gcc-msm8996.hqcom,gcc-msm8998.hqcom,gcc-sdm845.hqcom,lcc-ipq806x.hqcom,lcc-mdm9615.hqcom,lcc-msm8960.hqcom,mmcc-apq8084.hqcom,mmcc-msm8960.hqcom,mmcc-msm8974.hqcom,mmcc-msm8996.hqcom,rpmcc.hqcom,rpmh.hqcom,videocc-sdm845.hr7s72100-clock.hr8a73a4-clock.hr8a7740-clock.hr8a7743-cpg-mssr.hr8a7745-cpg-mssr.hr8a77470-cpg-mssr.hr8a7778-clock.hr8a7779-clock.hr8a7790-clock.hr8a7790-cpg-mssr.hr8a7791-clock.hr8a7791-cpg-mssr.hr8a7792-clock.hr8a7792-cpg-mssr.hr8a7793-clock.hr8a7793-cpg-mssr.hr8a7794-clock.hr8a7794-cpg-mssr.hr8a7795-cpg-mssr.hr8a7796-cpg-mssr.hr8a77965-cpg-mssr.hr8a77970-cpg-mssr.hr8a77980-cpg-mssr.hr8a77990-cpg-mssr.hr8a77995-cpg-mssr.hrenesas-cpg-mssr.hrk3036-cru.hrk3066a-cru.hrk3128-cru.hrk3188-cru-common.hrk3188-cru.hrk3228-cru.hrk3288-cru.hrk3328-cru.hrk3368-cru.hrk3399-cru.hrockchip,rk808.hrv1108-cru.hs3c2410.hs3c2412.hs3c2443.hs5pv210-audss.hs5pv210.hsamsung,s2mps11.hsamsung,s3c64xx-clock.hsh73a0-clock.hsprd,sc9860-clk.hste-ab8500.hstih407-clks.hstih410-clks.hstih416-clks.hstih418-clks.hstm32fx-clock.hstm32h7-clks.hstm32mp1-clks.hstratix10-clock.hsun4i-a10-ccu.hsun4i-a10-pll2.hsun50i-a64-ccu.hsun50i-h6-ccu.hsun50i-h6-r-ccu.hsun5i-ccu.hsun6i-a31-ccu.hsun7i-a20-ccu.hsun8i-a23-a33-ccu.hsun8i-a83t-ccu.hsun8i-de2.hsun8i-h3-ccu.hsun8i-r-ccu.hsun8i-r40-ccu.hsun8i-v3s-ccu.hsun9i-a80-ccu.hsun9i-a80-de.hsun9i-a80-usb.htegra114-car.htegra124-car-common.htegra124-car.htegra186-clock.htegra194-clock.htegra20-car.htegra210-car.htegra30-car.hvf610-clock.hzx296702-clock.hzx296718-clock.hdisplaytda998x.hdmaat91.haxi-dmac.hjz4780-dma.hnbpfaxi.hsun4i-a10.hgpioaspeed-gpio.hgpio.hmeson-axg-gpio.hmeson-gxbb-gpio.hmeson-gxl-gpio.hmeson8-gpio.hmeson8b-gpio.htegra-gpio.htegra186-gpio.htegra194-gpio.huniphier-gpio.hi2ci2c.hiioadcfsl-imx25-gcq.hadi,ad5592r.hqcom,spmi-vadc.hinputgpio-keys.hinput.hlinux-event-codes.hti-drv260x.hinterrupt-controllerarm-gic.hirq-st.hirq.hmips-gic.hmvebu-icu.hledscommon.hleds-netxbig.hleds-ns2.hleds-pca9532.hleds-pca955x.hmailboxtegra186-hsp.hmediac8sectpfe.homap3-isp.htda1997x.htvp5150.hxilinx-vip.hmemorymt2701-larb-port.hmt8173-larb-port.htegra114-mc.htegra124-mc.htegra186-mc.htegra20-mc.htegra210-mc.htegra30-mc.hmfdarizona.has3722.hatmel-flexcom.hdbx500-prcmu.hmax77620.hpalmas.hqcom-rpm.hst-lpc.hstm32f4-rcc.hstm32f7-rcc.hstm32h7-rcc.hmipslantiq_rcu_gphy.hmuxmux.hnetmicrochip-lan78xx.hmscc-phy-vsc8531.hqca-ar803x.hti-dp83867.hti-dp83869.hphyphy-pistachio-usb.hphy-qcom-qusb2.hphy.hpinctrlam33xx.ham43xx.hat91.hbcm2835.hbrcm,pinctrl-stingray.hdm814x.hdra.hhisi.hkeystone.hmt6397-pinfunc.hmt65xx.hmt7623-pinfunc.hnomadik.homap.hpinctrl-tegra-xusb.hpinctrl-tegra.hqcom,pmic-gpio.hqcom,pmic-mpp.hr7s72100-pinctrl.hrockchip.hsamsung.hstm32-pinfunc.hsun4i-a10.hpowerimx7-power.hmt2701-power.hmt2712-power.hmt6797-power.hmt7622-power.hmt7623a-power.hmt8173-power.howl-s500-powergate.howl-s700-powergate.hpx30-power.hr8a7743-sysc.hr8a7745-sysc.hr8a77470-sysc.hr8a7779-sysc.hr8a7790-sysc.hr8a7791-sysc.hr8a7792-sysc.hr8a7793-sysc.hr8a7794-sysc.hr8a7795-sysc.hr8a7796-sysc.hr8a77965-sysc.hr8a77970-sysc.hr8a77980-sysc.hr8a77990-sysc.hr8a77995-sysc.hraspberrypi-power.hrk3036-power.hrk3128-power.hrk3228-power.hrk3288-power.hrk3328-power.hrk3366-power.hrk3368-power.hrk3399-power.htegra186-powergate.htegra194-powergate.hpwmpwm.hregulatormaxim,max77802.hresetaltr,rst-mgr-a10.haltr,rst-mgr-a10sr.haltr,rst-mgr-s10.haltr,rst-mgr.hamlogic,meson-axg-reset.hamlogic,meson-gxbb-reset.hamlogic,meson8b-clkc-reset.hamlogic,meson8b-reset.haxg-aoclkc.hcortina,gemini-reset.hgxbb-aoclkc.hhisi,hi6220-resets.himx7-reset.hmt2701-resets.hmt7622-reset.hmt8135-resets.hmt8173-resets.hoxsemi,ox810se.hoxsemi,ox820.hpistachio-resets.hqcom,gcc-apq8084.hqcom,gcc-ipq806x.hqcom,gcc-mdm9615.hqcom,gcc-msm8660.hqcom,gcc-msm8916.hqcom,gcc-msm8960.hqcom,gcc-msm8974.hqcom,mmcc-apq8084.hqcom,mmcc-msm8960.hqcom,mmcc-msm8974.hsnps,hsdk-reset.hstih407-resets.hstih415-resets.hstih416-resets.hstm32mp1-resets.hsun4i-a10-ccu.hsun50i-a64-ccu.hsun50i-h6-ccu.hsun50i-h6-r-ccu.hsun5i-ccu.hsun6i-a31-ccu.hsun8i-a23-a33-ccu.hsun8i-a83t-ccu.hsun8i-de2.hsun8i-h3-ccu.hsun8i-r-ccu.hsun8i-r40-ccu.hsun8i-v3s-ccu.hsun9i-a80-ccu.hsun9i-a80-de.hsun9i-a80-usb.htegra124-car.htegra186-reset.htegra194-reset.htegra210-car.hti-syscon.hsocqcom,apr.hqcom,gsbi.hrockchip,boot-mode.hzte,pm_domains.hsoundadi,adau1977.hapq8016-lpass.haudio-jack-events.hcs35l32.hcs42l42.hfsl-imx-audmux.hqcom,q6afe.hqcom,q6asm.hrt5640.hrt5651.hsamsung-i2s.htas2552.htlv320aic31xx.hspmispmi.hthermallm90.htegra124-soctherm.htegra186-bpmp-thermal.hthermal.hthermal_exynos.husbpd.hgeneratedasm-offsets.hautoconf.hbounds.hcompile.htimeconst.huapilinuxversion.hutsrelease.hvdso-offsets.hkeysasymmetric-parser.hasymmetric-subtype.hasymmetric-type.hbig_key-type.hceph-type.hdns_resolver-type.hencrypted-type.hkeyring-type.hrxrpc-type.hsystem_keyring.htrusted-type.htrusted_tpm.huser-type.hkunitassert.hresource.htest-bug.htest.htry-catch.hkvmarm_arch_timer.harm_hypercalls.harm_pmu.harm_psci.harm_vgic.hiodev.hlinux8250_pci.ha.out.hacct.hacpi.hacpi_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.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.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.orderbin2c.cbloat-o-meterbootgraph.plbpf_doc.pycc-can-link.shcheck_00index.shcheck_extable.shcheckincludes.plcheckkconfigsymbols.pycheckpatch.plcheckstack.plchecksyscalls.shcheckversion.plclang-toolsgen_compile_commands.pyrun-clang-tools.pyclang-version.shcleanfilecleanpatchcoccicheckcoccinelleapiallocalloc_cast.coccipool_zalloc-simple.coccizalloc-simple.coccicheck_bq27xxx_data.coccid_find_alias.coccidebugfsdebugfs_simple_attr.coccidrm-get-put.coccierr_cast.coccikstrdup.coccimemdup.coccimemdup_user.cocciplatform_no_drv_owner.coccipm_runtime.cocciptr_ret.cocciresource_size.coccisimple_open.coccivma_pages.coccifreeclk_put.coccidevm_free.cocciifnullfree.cocciiounmap.coccikfree.coccikfreeaddr.coccipci_free_consistent.cocciiteratorsdevice_node_continue.coccifen.cocciitnull.coccilist_entry_update.cocciuse_after_iter.coccilockscall_kern.coccidouble_lock.cocciflags.coccimini_lock.coccimiscarray_size.coccibadty.cocciboolconv.cocciboolinit.cocciboolreturn.coccibugon.coccicond_no_effect.coccicstptr.coccidoubleinit.cocciifaddr.cocciifcol.cocciirqf_oneshot.coccinewline_in_nl_msg.coccinoderef.cocciof_table.cocciorplus.coccireturnvar.coccisemicolon.cocciwarn.coccinullbadzero.coccideref_null.coccieno.coccikmerr.coccitestsdoublebitand.coccidoubletest.cocciodd_ptr_err.cocciunsigned_lesser_than_zero.cocciconfigconmakehashconmakehash.cconst_structs.checkpatchdecode_stacktrace.shdecodecodedepmod.shdiffconfigdocumentation-file-ref-checkdtcMakefileMakefile.dtcchecks.cdata.cdt_to_configdtcdtc-lexer.ldtc-lexer.lex.cdtc-parser.tab.cdtc-parser.tab.hdtc-parser.ydtc.cdtc.hdtx_difffdtdump.cfdtget.cfdtput.cflattree.cfstree.cinclude-prefixesarcarmarm64c6xdt-bindingsh8300microblazemipsnios2openriscpowerpcshxtensalibfdtMakefile.libfdtfdt.cfdt.hfdt_addresses.cfdt_empty_tree.cfdt_overlay.cfdt_ro.cfdt_rw.cfdt_strerror.cfdt_sw.cfdt_wip.clibfdt.hlibfdt_env.hlibfdt_internal.hlivetree.cmodules.ordersrcpos.csrcpos.htreesource.cupdate-dtc-source.shutil.cutil.hversion_gen.hyamltree.cexport_report.plextract-certextract-cert.cextract-ikconfigextract-module-sig.plextract-sys-certs.plextract-vmlinuxextract_xc3028.plfaddr2linefile-size.shfind-unused-docs.shgcc-goto.shgcc-ldgcc-plugin.shgcc-pluginsMakefilecyc_complexity_plugin.cgcc-common.hgcc-generate-gimple-pass.hgcc-generate-ipa-pass.hgcc-generate-rtl-pass.hgcc-generate-simple_ipa-pass.hgen-random-seed.shlatent_entropy_plugin.crandomize_layout_plugin.csancov_plugin.cstructleak_plugin.cgcc-version.shgcc-x86_32-has-stack-protector.shgcc-x86_64-has-stack-protector.shgdbMakefilelinuxMakefile__init__.pyconstants.py.incpus.pydmesg.pylists.pymodules.pyproc.pysymbols.pytasks.pyutils.pyvmlinux-gdb.pygen_initramfs_list.shgenksymsMakefilegenksymsgenksyms.cgenksyms.hkeywords.clex.llex.lex.cmodules.orderparse.tab.cparse.tab.hparse.yget_dvb_firmwareget_maintainer.plgfp-translateheaderdep.plheaders.shheaders_check.plheaders_install.shinsert-sys-cert.ckallsymskallsyms.ckconfigMakefileconfconf.cconfdata.cexpr.cexpr.hgconf-cfg.shgconf.cgconf.gladeimages.ckconf_id.clist.hlkc.hlkc_proto.hlxdialogBIG.FAT.WARNINGchecklist.cdialog.hinputbox.cmenubox.ctextbox.cutil.cyesno.cmconf-cfg.shmconf.cmenu.cmerge_config.shnconf-cfg.shnconf.cnconf.gui.cnconf.hpreprocess.cqconf-cfg.shqconf.ccqconf.hstreamline_config.plsymbol.ctestsauto_submenuKconfig__init__.pyexpected_stdoutchoiceKconfig__init__.pyalldef_expected_configallmod_expected_configallno_expected_configallyes_expected_configoldask0_expected_stdoutoldask1_configoldask1_expected_stdoutchoice_value_with_m_depKconfig__init__.pyconfigexpected_configexpected_stdoutconftest.pyerr_recursive_depKconfig__init__.pyexpected_stderrerr_recursive_incKconfigKconfig.inc1Kconfig.inc2Kconfig.inc3__init__.pyexpected_stderrinter_choiceKconfig__init__.pydefconfigexpected_confignew_choice_with_depKconfig__init__.pyconfigexpected_stdoutno_write_if_dep_unmetKconfig__init__.pyconfigexpected_configpreprocessbuiltin_funcKconfig__init__.pyexpected_stderrexpected_stdoutcircular_expansionKconfig__init__.pyexpected_stderrescapeKconfig__init__.pyexpected_stderrvariableKconfig__init__.pyexpected_stderrpytest.inirand_nested_choiceKconfig__init__.pyexpected_stdout0expected_stdout1expected_stdout2util.czconf.lzconf.lex.czconf.tab.czconf.ykernel-docksymoopsREADMEld-version.shleaking_addresses.pllink-vmlinux.shmakelstmarkup_oops.plmkcompile_hmkmakefilemksysmapmkuboot.shmodMakefiledevicetable-offsets.cdevicetable-offsets.hdevicetable-offsets.selfconfig.hempty.cfile2alias.cmk_elfconfigmk_elfconfig.cmodpostmodpost.cmodpost.hmodules.ordersumversion.cmodule-common.ldsmodules.ordernamespace.plobjdiffpackageMakefilebuilddebbuildtarmkdebianmkspecsnapcraft.templateparse-maintainers.plpatch-kernelpnmtologopnmtologo.cprofile2linkerlist.plprune-kernelrecordmcountrecordmcount.crecordmcount.hrecordmcount.plselinuxMakefileREADMEgenheadersMakefilegenheadersgenheaders.cmodules.orderinstall_policy.shmdpMakefiledbus_contextsmdpmdp.cmodules.ordermodules.ordersetlocalversionshow_deltasign-filesign-file.csortextablesortextable.csortextable.hspelling.txtsphinx-pre-installsplit-man.plstackdeltastackusagesubarch.includetags.shtest_fortify.shunifdefunifdef.cver_linuxxen-hypercalls.shxz_wrap.shsecurityKconfigKconfig.hardeningMakefileapparmorKconfigMakefilebpfMakefileintegrityKconfigMakefileevmKconfigMakefileimaKconfigMakefilekeysKconfigMakefileencrypted-keysMakefiletrusted-keysMakefileloadpinKconfigMakefileselinuxKconfigMakefileincludeclassmap.hinitial_sid_to_string.hsmackKconfigMakefiletomoyoKconfigMakefileyamaKconfigMakefilesoundKconfigMakefileac97KconfigMakefileaoaKconfigMakefilecodecsKconfigMakefilecoreMakefilefabricsKconfigMakefilesoundbusKconfigMakefilei2sbusMakefilearmKconfigMakefileatmelKconfigMakefilecoreKconfigMakefileossMakefileseqKconfigMakefileossMakefiledriversKconfigMakefilempu401Makefileopl3Makefileopl4MakefilepcspMakefilevxMakefilefirewireKconfigMakefilebebobMakefilediceMakefiledigi00xMakefilefirefaceMakefilefireworksMakefilemotuMakefileoxfwMakefiletascamMakefilehdaKconfigMakefileextMakefilei2cMakefileotherMakefileisaKconfigMakefilead1816aMakefilead1848Makefilecs423xMakefilees1688MakefilegalaxyMakefilegusMakefilemsndMakefileopti9xxMakefilesbMakefilewavefrontMakefilewssMakefilemipsKconfigMakefileossdmasoundKconfigMakefilepariscKconfigMakefilepciKconfigMakefileac97Makefileali5451MakefileasihpiMakefileau88x0Makefileaw2Makefileca0106Makefilecs46xxMakefilecs5535audioMakefilectxfiMakefileechoaudioMakefileemu10k1MakefilehdaKconfigMakefileice1712Makefilekorg1212MakefilelolaMakefilelx6464esMakefilemixartMakefilenm256MakefileoxygenMakefilepcxhrMakefileriptideMakefilerme9652MakefiletridentMakefilevx222MakefileymfpciMakefilepcmciaKconfigMakefilepdaudiocfMakefilevxMakefileppcKconfigMakefileshKconfigMakefilesocKconfigMakefileadiKconfigMakefileamdKconfigMakefileacpKconfigMakefilepsMakefileravenMakefilerenoirMakefilerplMakefilevangoghMakefileycMakefileatmelKconfigMakefileau1xKconfigMakefilebcmKconfigMakefilecirrusKconfigMakefilecodecsKconfigMakefiledwcKconfigMakefilefslKconfigMakefilegenericKconfigMakefilehisiliconKconfigMakefileimgKconfigMakefileintelKconfigMakefileatomMakefilesstMakefileavsMakefileboardsKconfigMakefileboardsKconfigMakefilecatptMakefilecommonMakefilekeembayMakefileskylakeMakefilejz4740KconfigMakefilekirkwoodKconfigMakefilemediatekKconfigMakefilecommonMakefilemt2701Makefilemt6797Makefilemt8173Makefilemt8183MakefilemesonKconfigMakefilemxsKconfigMakefilepxaKconfigMakefileqcomKconfigMakefileqdsp6MakefilerockchipKconfigMakefilesamsungKconfigMakefileshKconfigMakefilercarMakefilesofKconfigMakefileamdKconfigMakefileimxKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemt8186Makefilemt8195MakefilextensaKconfigMakefilespearKconfigMakefilesprdKconfigMakefilestiKconfigMakefilestmKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefiletxx9KconfigMakefileuniphierKconfigMakefileux500KconfigMakefilexilinxKconfigMakefilextensaKconfigMakefilesparcKconfigMakefilespiKconfigMakefilesynthKconfigMakefileemuxMakefileusb6fireMakefileKconfigMakefilebcd2000MakefilecaiaqMakefilehifaceMakefileline6KconfigMakefilemiscMakefileusx2yMakefilevirtioKconfigMakefilex86KconfigMakefilexenKconfigMakefiletoolsMakefileaccountingMakefilearchx86intel_sdsiMakefilebpfMakefilebpftoolDocumentationMakefileMakefileresolve_btfidsMakefilerunqslowerMakefilebuildMakefileMakefile.buildMakefile.featureMakefile.includefeatureMakefiletestsexMakefilecgroupMakefilefirewireMakefilegpioMakefilehvMakefileiioMakefileincludetoolsbe_byteshift.hle_byteshift.hio_uringMakefilekvmkvm_statMakefilelaptopdslmMakefilefreefallMakefileledsMakefilelibapiMakefilebpfMakefilelockdepMakefileperfDocumentationMakefileMakefilesubcmdMakefiletraceeventDocumentationMakefileMakefilepluginsMakefileobjtoolMakefilepciMakefilepcmciaMakefileperfDocumentationMakefileMakefileMakefile.configMakefile.perfarcharmMakefilearm64MakefilecskyMakefilemipsMakefilepowerpcMakefiles390MakefileshMakefilesparcMakefilex86MakefilextensaMakefilescriptsperlPerf-Trace-UtilMakefile.PLpoweracpiMakefileMakefile.configMakefile.rulestoolsacpidbgMakefileacpidumpMakefileecMakefilecpupowerMakefilebenchMakefiledebugi386MakefilekernelMakefilex86_64Makefilepm-graphMakefilex86intel-speed-selectMakefileturbostatMakefilex86_energy_perf_policyMakefilescriptsMakefile.archMakefile.includespiMakefiletestingnvdimmMakefileradix-treeMakefilescatterlistMakefileselftestsMakefileandroidMakefileionMakefilebpfMakefileMakefile.docsbpf_testmodMakefilebreakpointsMakefilecapabilitiesMakefilecgroupMakefilecoreMakefilecpu-hotplugMakefilecpufreqMakefiledamonMakefiledriversnetbondingMakefileteamMakefileefivarfsMakefileexecMakefilefilesystemsMakefilefirmwareMakefilefpuMakefileftraceMakefilefutexMakefilefunctionalMakefilegpioMakefileia64Makefileintel_pstateMakefileipcMakefilekcmpMakefilekexecMakefilekmodMakefilekvmMakefilelibMakefilelivepatchMakefilelockingMakefilemedia_testsMakefilemembarrierMakefilememfdMakefilememory-hotplugMakefilemountMakefilemqueueMakefilenetMakefileforwardingMakefilemptcpMakefilenetfilterMakefilensfsMakefilepowerpcMakefilealignmentMakefilebenchmarksMakefilecache_shapeMakefilecopyloopsMakefiledscrMakefileeehMakefilemathMakefilemceMakefilemmMakefilepapr_attributesMakefilepmuMakefileebbMakefilesampling_testsMakefileprimitivesMakefileptraceMakefilesignalMakefilestringloopsMakefileswitch_endianMakefilesyscallsMakefiletmMakefilevphnMakefileprctlMakefileprocMakefilepstoreMakefileptpMakefileptraceMakefilercutortureMakefileformalsrcu-cbmcMakefiletestsstore_bufferingMakefilerseqMakefilertcMakefileseccompMakefilesgxMakefilesigaltstackMakefilesizeMakefilesparc64MakefiledriversMakefilespliceMakefilestatic_keysMakefilesyncMakefilesysctlMakefiletc-testingMakefiletdxMakefiletimensMakefiletimersMakefiletpm2MakefileueventMakefileuserMakefilevDSOMakefilevmMakefilewatchdogMakefilex86MakefilezramMakefilevsockMakefilethermaltmonMakefileusbMakefileffs-aio-examplemultibuffhost_appMakefilesimplehost_appMakefileusbipMakefile.amlibsrcMakefile.amsrcMakefile.amvirtioMakefileringtestMakefilevhost_testMakefilevirtio-traceMakefilevmMakefilewmiMakefileusrKconfigMakefilevirtMakefilekvmKconfigMakefile.kvmlibKconfigMakefilevmlinux.hvmlinux.id/usr/src/kernels//usr/src/kernels/4.18.0-519.el8.aarch64//usr/src/kernels/4.18.0-519.el8.aarch64/arch//usr/src/kernels/4.18.0-519.el8.aarch64/arch/alpha//usr/src/kernels/4.18.0-519.el8.aarch64/arch/alpha/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/alpha/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/alpha/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/alpha/math-emu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/alpha/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/alpha/oprofile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arc//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arc/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arc/boot/dts//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arc/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arc/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arc/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arc/oprofile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arc/plat-axs10x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arc/plat-eznps//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arc/plat-hsdk//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arc/plat-sim//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arc/plat-tb10x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/boot/bootp//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/boot/compressed//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/boot/dts//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/common//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/firmware//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/include//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/include/asm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/include/asm/xen//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-actions//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-alpine//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-artpec//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-asm9260//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-aspeed//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-at91//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-axxia//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-bcm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-berlin//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-clps711x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-cns3xxx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-davinci//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-digicolor//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-dove//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-ebsa110//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-efm32//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-ep93xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-exynos//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-footbridge//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-gemini//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-highbank//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-hisi//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-imx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-imx/devices//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-integrator//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-iop13xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-iop32x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-iop33x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-ixp4xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-keystone//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-ks8695//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-lpc18xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-lpc32xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-meson//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-mmp//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-moxart//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-mv78xx0//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-mvebu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-mxs//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-netx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-nomadik//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-npcm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-nspire//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-omap1//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-omap2//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-orion5x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-oxnas//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-picoxcell//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-prima2//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-pxa//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-qcom//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-realview//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-rockchip//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-rpc//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-s3c24xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-s3c64xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-s5pv210//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-sa1100//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-shmobile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-socfpga//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-spear//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-sti//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-stm32//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-sunxi//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-tango//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-tegra//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-u300//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-uniphier//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-ux500//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-versatile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-vexpress//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-vt8500//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-w90x900//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-zx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mach-zynq//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/net//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/nwfpe//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/oprofile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/plat-iop//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/plat-omap//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/plat-orion//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/plat-pxa//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/plat-samsung//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/plat-versatile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/probes//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/probes/kprobes//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/probes/uprobes//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/tools//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/vdso//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/vfp//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm/xen//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/actions//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/al//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/allwinner//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/altera//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/amd//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/amlogic//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/apm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/arm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/broadcom//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/broadcom/northstar2//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/broadcom/stingray//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/cavium//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/exynos//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/freescale//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/hisilicon//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/lg//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/marvell//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/nvidia//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/qcom//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/realtek//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/renesas//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/rockchip//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/socionext//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/sprd//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/synaptics//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/xilinx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/boot/dts/zte//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/hyperv//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/include//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/include/asm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/include/asm/vdso//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/include/asm/xen//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/include/generated//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/include/generated/asm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/include/generated/uapi//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/include/generated/uapi/asm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/include/uapi//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/include/uapi/asm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/kernel/probes//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/kernel/vdso//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/kernel/vdso32//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/kvm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/kvm/hyp//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/kvm/hyp/nvhe//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/kvm/hyp/vhe//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/net//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/tools//usr/src/kernels/4.18.0-519.el8.aarch64/arch/arm64/xen//usr/src/kernels/4.18.0-519.el8.aarch64/arch/c6x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/c6x/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/c6x/boot/dts//usr/src/kernels/4.18.0-519.el8.aarch64/arch/c6x/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/c6x/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/c6x/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/c6x/platforms//usr/src/kernels/4.18.0-519.el8.aarch64/arch/h8300//usr/src/kernels/4.18.0-519.el8.aarch64/arch/h8300/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/h8300/boot/compressed//usr/src/kernels/4.18.0-519.el8.aarch64/arch/h8300/boot/dts//usr/src/kernels/4.18.0-519.el8.aarch64/arch/h8300/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/h8300/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/h8300/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/hexagon//usr/src/kernels/4.18.0-519.el8.aarch64/arch/hexagon/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/hexagon/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/hexagon/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/dig//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/hp//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/hp/common//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/hp/sim//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/hp/sim/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/hp/zx1//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/oprofile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/pci//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/sn//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/sn/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/sn/kernel/sn2//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/sn/pci//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/sn/pci/pcibr//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/uv//usr/src/kernels/4.18.0-519.el8.aarch64/arch/ia64/uv/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/68000//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/amiga//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/apollo//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/atari//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/bvme6000//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/coldfire//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/emu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/fpsp040//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/hp300//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/ifpsp060//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/mac//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/math-emu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/mvme147//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/mvme16x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/q40//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/sun3//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/sun3/prom//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/sun3x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/tools//usr/src/kernels/4.18.0-519.el8.aarch64/arch/m68k/tools/amiga//usr/src/kernels/4.18.0-519.el8.aarch64/arch/microblaze//usr/src/kernels/4.18.0-519.el8.aarch64/arch/microblaze/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/microblaze/boot/dts//usr/src/kernels/4.18.0-519.el8.aarch64/arch/microblaze/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/microblaze/kernel/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/microblaze/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/microblaze/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/microblaze/oprofile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/microblaze/pci//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/alchemy//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/alchemy/common//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/alchemy/devboards//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/ar7//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/ath25//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/ath79//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/bcm47xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/bcm63xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/bcm63xx/boards//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/bmips//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/compressed//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts/brcm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts/cavium-octeon//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts/img//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts/ingenic//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts/lantiq//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts/mscc//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts/mti//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts/netlogic//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts/ni//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts/pic32//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts/qca//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts/ralink//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/dts/xilfpga//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/boot/tools//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/cavium-octeon//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/cavium-octeon/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/cavium-octeon/executive//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/cobalt//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/dec//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/dec/prom//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/emma//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/emma/common//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/emma/markeins//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/fw//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/fw/arc//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/fw/cfe//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/fw/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/fw/sni//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/generic//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/jazz//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/jz4740//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/kvm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/lantiq//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/lantiq/falcon//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/lantiq/xway//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/lasat//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/lasat/image//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/loongson32//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/loongson32/common//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/loongson32/ls1b//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/loongson32/ls1c//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/loongson64//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/loongson64/common//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/loongson64/common/cs5536//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/loongson64/fuloong-2e//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/loongson64/lemote-2f//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/loongson64/loongson-3//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/math-emu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/mti-malta//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/net//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/netlogic//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/netlogic/common//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/netlogic/xlp//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/netlogic/xlr//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/oprofile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/paravirt//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/pci//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/pic32//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/pic32/common//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/pic32/pic32mzda//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/pistachio//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/pmcs-msp71xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/pnx833x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/pnx833x/common//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/pnx833x/stb22x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/power//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/ralink//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/rb532//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/sgi-ip22//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/sgi-ip27//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/sgi-ip32//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/sibyte//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/sibyte/bcm1480//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/sibyte/common//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/sibyte/sb1250//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/sibyte/swarm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/sni//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/txx9//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/txx9/generic//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/txx9/jmr3927//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/txx9/rbtx4927//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/txx9/rbtx4938//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/txx9/rbtx4939//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/vdso//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/vr41xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/vr41xx/casio-e55//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/vr41xx/common//usr/src/kernels/4.18.0-519.el8.aarch64/arch/mips/vr41xx/ibm-workpad//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nds32//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nds32/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nds32/boot/dts//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nds32/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nds32/kernel/vdso//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nds32/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nds32/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nios2//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nios2/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nios2/boot/compressed//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nios2/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nios2/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nios2/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/nios2/platform//usr/src/kernels/4.18.0-519.el8.aarch64/arch/openrisc//usr/src/kernels/4.18.0-519.el8.aarch64/arch/openrisc/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/openrisc/boot/dts//usr/src/kernels/4.18.0-519.el8.aarch64/arch/openrisc/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/openrisc/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/openrisc/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/parisc//usr/src/kernels/4.18.0-519.el8.aarch64/arch/parisc/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/parisc/boot/compressed//usr/src/kernels/4.18.0-519.el8.aarch64/arch/parisc/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/parisc/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/parisc/math-emu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/parisc/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/parisc/oprofile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/kernel/ptrace//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/kernel/trace//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/kernel/vdso32//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/kernel/vdso64//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/kvm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/math-emu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/mm/book3s32//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/mm/book3s64//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/net//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/oprofile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/perf//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/40x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/44x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/4xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/512x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/52xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/82xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/83xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/85xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/86xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/8xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/amigaone//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/book3s//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/cell//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/cell/spufs//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/chrp//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/embedded6xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/maple//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/pasemi//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/powermac//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/powernv//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/ps3//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/platforms/pseries//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/purgatory//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/sysdev//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/sysdev/ge//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/sysdev/xics//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/sysdev/xive//usr/src/kernels/4.18.0-519.el8.aarch64/arch/powerpc/xmon//usr/src/kernels/4.18.0-519.el8.aarch64/arch/riscv//usr/src/kernels/4.18.0-519.el8.aarch64/arch/riscv/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/riscv/kernel/vdso//usr/src/kernels/4.18.0-519.el8.aarch64/arch/riscv/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/riscv/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/appldata//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/boot/compressed//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/hypfs//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/kernel/syscalls//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/kernel/vdso32//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/kernel/vdso64//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/kvm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/net//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/numa//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/oprofile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/pci//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/purgatory//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/scripts//usr/src/kernels/4.18.0-519.el8.aarch64/arch/s390/tools//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-ap325rxa//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-cayman//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-dreamcast//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-ecovec24//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-highlander//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-hp6xx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-kfr2r09//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-landisk//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-lboxre2//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-microdev//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-migor//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-r2d//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-rsk//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-sdk7780//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-sdk7786//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-se//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-se/7206//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-se/7343//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-se/770x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-se/7721//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-se/7722//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-se/7724//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-se/7751//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-se/7780//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-sh03//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-sh7763rdp//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boards/mach-x3proto//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boot/compressed//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boot/dts//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/boot/romimage//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/cchips//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/cchips/hd6446x//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/drivers//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/drivers/dma//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/drivers/pci//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/drivers/superhyway//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/kernel/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/kernel/cpu/irq//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/kernel/cpu/sh2//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/kernel/cpu/sh2a//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/kernel/cpu/sh3//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/kernel/cpu/sh4//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/kernel/cpu/sh4a//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/kernel/cpu/sh5//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/kernel/cpu/shmobile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/kernel/vsyscall//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/lib64//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/math-emu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/oprofile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sh/tools//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sparc//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sparc/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sparc/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sparc/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sparc/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sparc/math-emu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sparc/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sparc/net//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sparc/oprofile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sparc/power//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sparc/prom//usr/src/kernels/4.18.0-519.el8.aarch64/arch/sparc/vdso//usr/src/kernels/4.18.0-519.el8.aarch64/arch/um//usr/src/kernels/4.18.0-519.el8.aarch64/arch/um/drivers//usr/src/kernels/4.18.0-519.el8.aarch64/arch/um/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/um/kernel/skas//usr/src/kernels/4.18.0-519.el8.aarch64/arch/um/os-Linux//usr/src/kernels/4.18.0-519.el8.aarch64/arch/um/os-Linux/drivers//usr/src/kernels/4.18.0-519.el8.aarch64/arch/um/os-Linux/skas//usr/src/kernels/4.18.0-519.el8.aarch64/arch/um/scripts//usr/src/kernels/4.18.0-519.el8.aarch64/arch/unicore32//usr/src/kernels/4.18.0-519.el8.aarch64/arch/unicore32/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/unicore32/boot/compressed//usr/src/kernels/4.18.0-519.el8.aarch64/arch/unicore32/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/unicore32/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/unicore32/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/boot/compressed//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/coco//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/coco/tdx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/crypto/sha1-mb//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/crypto/sha256-mb//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/crypto/sha512-mb//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/entry//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/entry/syscalls//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/entry/vdso//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/entry/vsyscall//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/events//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/events/amd//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/events/intel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/hyperv//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/ia32//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/kernel/acpi//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/kernel/apic//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/kernel/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/kernel/cpu/mce//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/kernel/cpu/microcode//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/kernel/cpu/mtrr//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/kernel/cpu/resctrl//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/kernel/cpu/sgx//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/kernel/fpu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/kernel/kprobes//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/kvm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/math-emu//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/mm/pat//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/net//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/oprofile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/pci//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/atom//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/ce4100//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/efi//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/geode//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/goldfish//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/intel-mid//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/intel-mid/device_libs//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/intel-quark//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/intel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/iris//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/olpc//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/scx200//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/sfi//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/ts5500//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/platform/uv//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/power//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/purgatory//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/ras//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/realmode//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/realmode/rm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/tools//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/um//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/um/os-Linux//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/um/vdso//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/video//usr/src/kernels/4.18.0-519.el8.aarch64/arch/x86/xen//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa/boot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa/boot/boot-elf//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa/boot/boot-redboot//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa/boot/dts//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa/boot/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa/lib//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa/mm//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa/oprofile//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa/platforms//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa/platforms/iss//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa/platforms/xt2000//usr/src/kernels/4.18.0-519.el8.aarch64/arch/xtensa/platforms/xtfpga//usr/src/kernels/4.18.0-519.el8.aarch64/block//usr/src/kernels/4.18.0-519.el8.aarch64/block/partitions//usr/src/kernels/4.18.0-519.el8.aarch64/certs//usr/src/kernels/4.18.0-519.el8.aarch64/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/crypto/asymmetric_keys//usr/src/kernels/4.18.0-519.el8.aarch64/crypto/async_tx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/accessibility//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/accessibility/braille//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/acpi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/acpi/acpica//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/acpi/apei//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/acpi/arm64//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/acpi/dptf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/acpi/nfit//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/acpi/numa//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/acpi/pmic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/amba//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/android//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ata//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/atm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/auxdisplay//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/base//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/base/firmware_loader//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/base/power//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/base/regmap//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/base/test//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/bcma//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/block//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/block/aoe//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/block/drbd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/block/mtip32xx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/block/paride//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/block/rsxx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/block/xen-blkback//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/block/zram//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/bluetooth//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/bus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/bus/fsl-mc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/bus/mhi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/bus/mhi/ep//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/bus/mhi/host//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/cdrom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/char//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/char/agp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/char/hw_random//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/char/ipmi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/char/mwave//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/char/pcmcia//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/char/tpm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/char/tpm/st33zp24//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/char/xilinx_hwicap//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/char/xillybus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/actions//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/at91//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/axis//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/axs10x//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/bcm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/berlin//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/davinci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/h8300//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/hisilicon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/imgtec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/imx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/ingenic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/keystone//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/loongson1//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/meson//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/microchip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/mmp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/mvebu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/mxs//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/nxp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/pistachio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/pxa//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/qcom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/renesas//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/rockchip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/samsung//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/sirf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/socfpga//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/spear//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/sprd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/st//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/sunxi-ng//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/sunxi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/ti//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/uniphier//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/ux500//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/versatile//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/x86//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/zte//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clk/zynq//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/clocksource//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/connector//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/counter//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/cpufreq//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/cpuidle//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/cpuidle/governors//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/amcc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/axis//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/bcm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/caam//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/cavium//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/cavium/cpt//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/cavium/nitrox//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/cavium/zip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/ccp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/ccree//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/chelsio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/chelsio/chtls//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/inside-secure//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/marvell//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/nx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/qat//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/qat/qat_4xxx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/qat/qat_c3xxx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/qat/qat_c3xxxvf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/qat/qat_c62x//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/qat/qat_c62xvf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/qat/qat_common//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/qat/qat_dh895xcc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/qat/qat_dh895xccvf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/qce//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/rockchip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/stm32//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/sunxi-ss//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/ux500//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/ux500/cryp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/ux500/hash//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/virtio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/crypto/vmx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dax//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dax/hmem//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dax/pmem//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dca//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/devfreq//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/devfreq/event//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma-buf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma-buf/heaps//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/bestcomm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/dw-axi-dmac//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/dw//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/hsu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/idxd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/ioat//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/ipu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/ppc4xx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/ptdma//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/qcom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/sh//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/ti//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/dma/xilinx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/edac//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/eisa//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/extcon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/firewire//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/firmware//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/firmware/arm_scmi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/firmware/broadcom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/firmware/cirrus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/firmware/efi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/firmware/efi/libstub//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/firmware/efi/test//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/firmware/google//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/firmware/meson//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/firmware/psci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/firmware/smccc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/firmware/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/fmc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/fpga//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/fsi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/acp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/amdgpu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/amdkfd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/amdgpu_dm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/basics//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/bios//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/clk_mgr//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce100//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce110//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce112//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce120//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce60//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce80//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn10//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn20//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn201//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn21//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn30//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn301//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn302//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn303//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn31//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn314//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn315//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn316//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn32//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn321//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dml//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/dsc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/gpio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/hdcp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/irq//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/link//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dc/virtual//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dmub//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/dmub/src//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/modules//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/modules/color//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/modules/freesync//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/modules/hdcp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/modules/info_packet//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/display/modules/power//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/pm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/pm/legacy-dpm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/pm/powerplay//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/pm/powerplay/hwmgr//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/pm/powerplay/smumgr//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/pm/swsmu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/pm/swsmu/smu11//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/pm/swsmu/smu12//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/amd/pm/swsmu/smu13//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/arm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/armada//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/aspeed//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/ast//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/atmel-hlcdc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/bridge//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/bridge/adv7511//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/bridge/analogix//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/bridge/cadence//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/bridge/imx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/bridge/synopsys//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/display//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/etnaviv//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/exynos//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/fsl-dcu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/gma500//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/gud//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/hisilicon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/hisilicon/hibmc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/hisilicon/kirin//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/hyperv//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/i2c//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/i915//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/i915/gvt//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/imx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/kmb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/logicvc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/meson//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/mgag200//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/msm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/mxsfb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/nouveau//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/omapdrm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/omapdrm/displays//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/omapdrm/dss//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/panel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/pl111//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/qxl//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/radeon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/rcar-du//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/rockchip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/scheduler//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/shmobile//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/solomon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/sprd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/sti//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/stm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/sun4i//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/tests//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/tilcdc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/tiny//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/ttm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/tve200//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/udl//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/v3d//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/vboxvideo//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/vc4//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/vgem//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/virtio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/vkms//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/vmwgfx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/drm/xen//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/host1x//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/ipu-v3//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/gpu/vga//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hid//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hid/amd-sfh-hid//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hid/i2c-hid//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hid/intel-ish-hid//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hid/surface-hid//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hid/usbhid//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hsi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hsi/clients//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hsi/controllers//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hv//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hwmon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hwmon/pmbus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hwspinlock//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hwtracing//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hwtracing/coresight//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hwtracing/intel_th//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/hwtracing/stm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/i2c//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/i2c/algos//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/i2c/busses//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/i2c/muxes//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ide//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/idle//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/accel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/adc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/afe//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/amplifiers//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/buffer//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/chemical//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/common//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/common/cros_ec_sensors//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/common/hid-sensors//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/common/ms_sensors//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/common/ssp_sensors//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/common/st_sensors//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/counter//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/dac//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/dummy//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/frequency//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/gyro//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/health//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/humidity//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/imu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/imu/bmi160//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/imu/inv_mpu6050//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/imu/st_lsm6dsx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/light//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/magnetometer//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/multiplexer//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/orientation//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/potentiometer//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/potentiostat//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/pressure//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/proximity//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/resolver//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/temperature//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/test//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iio/trigger//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/core//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/bnxt_re//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/cxgb4//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/efa//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/hfi1//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/hns//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/irdma//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/mana//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/mlx4//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/mlx5//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/mthca//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/ocrdma//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/qedr//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/qib//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/usnic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/hw/vmw_pvrdma//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/sw//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/sw/rdmavt//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/sw/rxe//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/sw/siw//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/ulp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/ulp/ipoib//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/ulp/iser//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/ulp/isert//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/ulp/opa_vnic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/ulp/srp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/infiniband/ulp/srpt//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/input//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/input/gameport//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/input/joystick//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/input/joystick/iforce//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/input/keyboard//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/input/misc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/input/mouse//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/input/rmi4//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/input/serio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/input/tablet//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/input/touchscreen//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iommu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iommu/amd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iommu/arm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iommu/arm/arm-smmu-v3//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iommu/arm/arm-smmu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/iommu/intel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ipack//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ipack/carriers//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ipack/devices//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/irqchip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/isdn//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/isdn/capi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/isdn/divert//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/isdn/gigaset//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/isdn/hardware//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/isdn/hardware/avm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/isdn/hardware/eicon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/isdn/hardware/mISDN//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/isdn/hisax//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/isdn/hysdn//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/isdn/i4l//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/isdn/isdnloop//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/isdn/mISDN//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/leds//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/leds/trigger//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/lightnvm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/macintosh//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/macintosh/ams//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mailbox//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mcb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/md//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/md/bcache//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/md/persistent-data//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/cec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/common//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/common/b2c2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/common/saa7146//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/common/siano//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/common/v4l2-tpg//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/common/videobuf2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/dvb-core//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/dvb-frontends//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/dvb-frontends/cxd2880//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/dvb-frontends/drx39xyj//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/firewire//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/i2c//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/i2c/adv748x//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/i2c/cx25840//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/i2c/et8ek8//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/i2c/m5mols//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/i2c/s5c73m3//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/i2c/smiapp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/i2c/soc_camera//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/mmc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/mmc/siano//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/b2c2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/bt8xx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/cobalt//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/cx18//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/cx23885//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/cx25821//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/cx88//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/ddbridge//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/dm1105//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/dt3155//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/intel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/intel/ipu3//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/ivtv//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/mantis//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/meye//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/netup_unidvb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/ngene//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/pluto2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/pt1//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/pt3//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/saa7134//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/saa7146//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/saa7164//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/smipcie//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/solo6x10//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/sta2x11//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/ttpci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/tw5864//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/tw68//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/pci/tw686x//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/am437x//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/atmel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/cadence//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/cec-gpio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/coda//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/davinci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/exynos-gsc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/exynos4-is//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/marvell-ccic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/meson//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/mtk-jpeg//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/mtk-mdp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/mtk-vcodec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/mtk-vpu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/omap//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/omap3isp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/qcom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/qcom/camss-8x16//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/qcom/venus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/rcar-vin//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/rockchip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/rockchip/rga//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/s3c-camif//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/s5p-cec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/s5p-g2d//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/s5p-jpeg//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/s5p-mfc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/soc_camera//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/sti//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/sti/bdisp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/sti/c8sectpfe//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/sti/cec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/sti/delta//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/sti/hva//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/stm32//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/tegra-cec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/ti-vpe//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/vimc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/vivid//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/vsp1//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/platform/xilinx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/radio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/radio/si470x//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/radio/si4713//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/radio/wl128x//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/rc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/rc/img-ir//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/rc/keymaps//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/spi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/tuners//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/airspy//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/as102//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/au0828//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/b2c2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/cpia2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/cx231xx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/dvb-usb-v2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/dvb-usb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/em28xx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/go7007//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/gspca//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/gspca/gl860//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/gspca/m5602//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/gspca/stv06xx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/hackrf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/hdpvr//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/msi2500//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/pulse8-cec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/pvrusb2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/pwc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/rainshadow-cec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/s2255//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/siano//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/stk1160//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/stkwebcam//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/tm6000//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/ttusb-budget//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/ttusb-dec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/usbtv//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/usbvision//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/uvc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/usb/zr364xx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/media/v4l2-core//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/memory//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/memory/samsung//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/memory/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/memstick//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/memstick/core//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/memstick/host//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/message//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/message/fusion//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mfd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/altera-stapl//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/c2port//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/cardreader//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/cb710//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/cxl//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/echo//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/eeprom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/genwqe//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/ibmasm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/lis3lv02d//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/lkdtm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/mei//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/mei/hdcp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/mei/pxp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/mic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/mic/bus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/mic/card//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/mic/cosm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/mic/cosm_client//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/mic/host//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/mic/scif//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/mic/vop//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/ocxl//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/sgi-gru//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/sgi-xp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/ti-st//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/misc/vmw_vmci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mmc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mmc/core//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mmc/host//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/chips//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/devices//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/lpddr//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/maps//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/nand//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/nand/onenand//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/nand/raw//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/nand/raw/atmel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/nand/raw/bcm47xxnflash//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/nand/raw/brcmnand//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/nand/raw/gpmi-nand//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/parsers//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/spi-nor//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/tests//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mtd/ubi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/mux//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/appletalk//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/arcnet//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/bonding//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/caif//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can/c_can//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can/cc770//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can/ifi_canfd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can/m_can//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can/mscan//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can/peak_canfd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can/rcar//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can/sja1000//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can/softing//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can/spi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can/usb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can/usb/kvaser_usb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/can/usb/peak_usb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/dsa//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/dsa/b53//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/dsa/microchip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/dsa/mv88e6xxx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/3com//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/8390//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/adaptec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/aeroflex//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/agere//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/alacritech//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/allwinner//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/alteon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/altera//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/amazon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/amazon/ena//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/amd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/amd/xgbe//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/apm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/apm/xgene-v2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/apm/xgene//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/apple//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/aquantia//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/aquantia/atlantic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/aquantia/atlantic/hw_atl//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/arc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/atheros//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/atheros/alx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/atheros/atl1c//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/atheros/atl1e//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/atheros/atlx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/aurora//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/broadcom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/broadcom/bnx2x//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/broadcom/bnxt//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/broadcom/genet//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/brocade//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/brocade/bna//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/cadence//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/calxeda//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/cavium//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/cavium/common//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/cavium/liquidio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/cavium/octeon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/cavium/thunder//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/chelsio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/chelsio/cxgb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/chelsio/cxgb3//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/chelsio/cxgb4//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/chelsio/cxgb4vf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/chelsio/inline_crypto//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/chelsio/inline_crypto/ch_ipsec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/chelsio/inline_crypto/ch_ktls//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/chelsio/libcxgb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/cirrus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/cisco//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/cisco/enic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/cortina//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/davicom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/dec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/dec/tulip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/dlink//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/emulex//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/emulex/benet//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/ezchip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/faraday//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/freescale//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/freescale/dpaa//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/freescale/fman//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/freescale/fs_enet//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/fujitsu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/google//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/google/gve//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/hisilicon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/hisilicon/hns//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/hisilicon/hns3//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/hisilicon/hns3/hns3pf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/hisilicon/hns3/hns3vf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/hp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/huawei//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/huawei/hinic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/i825xx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/ibm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/ibm/ehea//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/ibm/emac//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/intel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/intel/e1000//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/intel/e1000e//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/intel/fm10k//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/intel/i40e//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/intel/iavf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/intel/ice//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/intel/igb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/intel/igbvf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/intel/igc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/intel/ixgb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/intel/ixgbe//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/intel/ixgbevf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/marvell//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/marvell/mvpp2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlx4//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlx5//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/accel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/diag//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/en//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/en/xsk//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/en_accel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/esw//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/fpga//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/ipoib//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/lib//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/steering//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlxbf_gige//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlxfw//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mellanox/mlxsw//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/micrel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/microchip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/microsoft//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/microsoft/mana//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/moxa//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/mscc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/myricom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/myricom/myri10ge//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/natsemi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/neterion//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/neterion/vxge//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/netronome//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/netronome/nfp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/netronome/nfp/bpf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/netronome/nfp/flower//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/netronome/nfp/nfpcore//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/netronome/nfp/nic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/ni//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/nuvoton//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/nvidia//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/nxp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/oki-semi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/oki-semi/pch_gbe//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/packetengines//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/pasemi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/pensando//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/pensando/ionic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/qlogic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/qlogic/netxen//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/qlogic/qed//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/qlogic/qede//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/qlogic/qlcnic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/qlogic/qlge//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/qualcomm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/qualcomm/emac//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/qualcomm/rmnet//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/rdc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/realtek//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/renesas//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/rocker//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/samsung//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/samsung/sxgbe//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/seeq//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/sfc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/sfc/falcon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/sfc/siena//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/sgi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/silan//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/sis//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/smsc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/socionext//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/stmicro//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/stmicro/stmmac//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/sun//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/synopsys//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/tehuti//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/ti//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/toshiba//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/tundra//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/via//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/wiznet//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/xilinx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/xircom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ethernet/xscale//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/fddi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/fddi/skfp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/fjes//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/hamradio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/hippi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/hyperv//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ieee802154//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ipvlan//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/netdevsim//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/pcs//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/phy//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/plip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/ppp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/slip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/team//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/thunderbolt//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/usb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/vmxnet3//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wan//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wan/lmc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wimax//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wimax/i2400m//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/admtek//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ath//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ath/ar5523//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ath/ath10k//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ath/ath11k//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ath/ath12k//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ath/ath5k//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ath/ath6kl//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ath/ath9k//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ath/carl9170//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ath/wcn36xx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ath/wil6210//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/atmel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/broadcom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/broadcom/b43//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/broadcom/b43legacy//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/broadcom/brcm80211//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/broadcom/brcm80211/brcmfmac//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/broadcom/brcm80211/brcmsmac//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/broadcom/brcm80211/brcmutil//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/cisco//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/intel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/intel/ipw2x00//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/intel/iwlegacy//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/intel/iwlwifi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/intel/iwlwifi/dvm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/intel/iwlwifi/mei//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/intel/iwlwifi/mvm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/intersil//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/intersil/hostap//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/intersil/orinoco//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/intersil/p54//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/intersil/prism54//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/legacy//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/marvell//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/marvell/libertas//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/marvell/libertas_tf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/marvell/mwifiex//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/mediatek/mt76//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt7603//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt7615//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt76x0//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt76x2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt7915//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt7921//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt7996//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/mediatek/mt7601u//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/quantenna//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/quantenna/qtnfmac//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ralink//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ralink/rt2x00//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtl818x//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtl818x/rtl8180//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtl818x/rtl8187//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtl8xxxu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtlwifi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/btcoexist//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8188ee//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8192c//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8192ce//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8192cu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8192de//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8192ee//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8192se//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8723ae//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8723be//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8723com//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8821ae//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtw88//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/realtek/rtw89//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/rsi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/st//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/st/cw1200//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ti//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ti/wl1251//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ti/wl12xx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ti/wl18xx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/ti/wlcore//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/virtual//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/zydas//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/wireless/zydas/zd1211rw//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/net/xen-netback//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nfc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nfc/fdp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nfc/microread//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nfc/nfcmrvl//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nfc/nxp-nci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nfc/pn533//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nfc/pn544//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nfc/s3fwrn5//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nfc/st-nci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nfc/st21nfca//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nfc/st95hf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ntb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ntb/hw//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ntb/hw/amd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ntb/hw/epf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ntb/hw/idt//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ntb/hw/intel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ntb/hw/mscc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ntb/test//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nubus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nvdimm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nvme//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nvme/host//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nvme/target//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/nvmem//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/of//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/of/unittest-data//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/opp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/parisc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/parport//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pci/controller//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pci/controller/dwc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pci/endpoint//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pci/endpoint/functions//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pci/hotplug//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pci/pcie//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pci/switch//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pcmcia//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/perf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/perf/hisilicon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/allwinner//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/amlogic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/broadcom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/hisilicon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/lantiq//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/marvell//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/motorola//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/qualcomm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/ralink//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/renesas//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/rockchip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/samsung//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/st//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/phy/ti//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/actions//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/aspeed//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/bcm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/berlin//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/freescale//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/intel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/meson//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/mvebu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/nomadik//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/pxa//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/qcom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/samsung//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/sh-pfc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/sirf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/spear//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/sprd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/stm32//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/sunxi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/ti//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/uniphier//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/vt8500//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pinctrl/zte//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform/chrome//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform/goldfish//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform/mellanox//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform/mips//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform/olpc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform/x86//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform/x86/dell-wmi-sysman//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform/x86/intel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform/x86/intel/ifs//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform/x86/intel/pmc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform/x86/intel/pmt//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform/x86/intel/speed_select_if//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/platform/x86/intel/uncore-frequency//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pnp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pnp/isapnp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pnp/pnpacpi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pnp/pnpbios//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/power//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/power/avs//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/power/reset//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/power/supply//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/powercap//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pps//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pps/clients//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pps/generators//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ps3//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ptp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/pwm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/rapidio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/rapidio/devices//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/rapidio/switches//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ras//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/regulator//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/remoteproc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/reset//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/reset/hisilicon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/reset/sti//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/reset/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/rpmsg//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/rtc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/s390//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/s390/block//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/s390/char//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/s390/cio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/s390/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/s390/net//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/s390/scsi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/s390/virtio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/sbus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/sbus/char//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/aacraid//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/aic7xxx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/aic7xxx/aicasm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/aic94xx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/arcmsr//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/arm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/be2iscsi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/bfa//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/bnx2fc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/bnx2i//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/csiostor//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/cxgbi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/cxgbi/cxgb3i//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/cxgbi/cxgb4i//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/cxlflash//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/device_handler//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/esas2r//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/fcoe//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/fnic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/hisi_sas//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/ibmvscsi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/ibmvscsi_tgt//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/isci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/libfc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/libsas//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/lpfc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/megaraid//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/mpi3mr//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/mpt3sas//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/mvsas//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/pcmcia//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/pm8001//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/qedf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/qedi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/qla2xxx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/qla4xxx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/smartpqi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/snic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/sym53c8xx_2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/scsi/ufs//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/sfi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/sh//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/sh/clk//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/sh/intc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/sh/maple//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/sh/superhyway//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/siox//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/slimbus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/sn//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/actions//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/amlogic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/atmel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/bcm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/bcm/brcmstb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/bcm/brcmstb/pm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/dove//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/fsl//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/fsl/qbman//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/fsl/qe//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/fujitsu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/gemini//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/imx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/lantiq//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/qcom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/renesas//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/rockchip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/samsung//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/sunxi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/tegra/fuse//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/ti//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/ux500//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/versatile//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/xilinx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soc/zte//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/soundwire//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/spi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/spmi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/ssb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/android//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/android/ion//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/board//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/clocking-wizard//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/comedi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/comedi/drivers//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/comedi/kcomedilib//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/dgnc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/emxx_udc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/fbtft//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/fsl-dpaa2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/fsl-dpaa2/ethernet//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/fsl-dpaa2/ethsw//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/fsl-dpaa2/rtc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/fsl-mc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/fsl-mc/bus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/fsl-mc/bus/dpio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/fwserial//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/gdm724x//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/goldfish//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/greybus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/greybus/tools//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/gs_fpgaboot//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/iio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/iio/accel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/iio/adc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/iio/addac//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/iio/cdc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/iio/frequency//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/iio/gyro//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/iio/impedance-analyzer//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/iio/meter//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/iio/resolver//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/ks7010//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/media//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/media/bcm2048//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/media/davinci_vpfe//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/media/imx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/media/imx074//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/media/mt9t031//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/media/omap4iss//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/media/tegra-vde//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/media/zoran//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/most//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/most/cdev//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/most/dim2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/most/i2c//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/most/net//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/most/sound//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/most/usb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/most/video//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/mt29f_spinand//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/mt7621-dma//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/mt7621-dts//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/mt7621-eth//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/mt7621-gpio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/mt7621-mmc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/mt7621-pci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/mt7621-pinctrl//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/mt7621-spi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/netlogic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/nvec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/octeon-usb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/octeon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/olpc_dcon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/pi433//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/rtl8188eu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/rtl8192e//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/rtl8192e/rtl8192e//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/rtl8192u//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/rtl8192u/ieee80211//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/rtl8712//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/rtl8723bs//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/rtlwifi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/rtlwifi/btcoexist//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/rtlwifi/rtl8822be//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/rts5208//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/skein//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/sm750fb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/speakup//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/unisys//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/unisys/visorhba//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/unisys/visorinput//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/unisys/visornic//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/vboxvideo//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/vc04_services//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/vc04_services/bcm2835-audio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/vc04_services/bcm2835-camera//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/vme//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/vme/devices//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/vt6655//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/vt6656//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/wilc1000//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/wlan-ng//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/staging/xgifb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/target//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/target/iscsi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/target/iscsi/cxgbit//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/target/loopback//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/target/sbp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/target/tcm_fc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/tc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/tee//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/tee/optee//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/thermal//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/thermal/broadcom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/thermal/intel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/thermal/intel/int340x_thermal//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/thermal/qcom//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/thermal/samsung//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/thermal/st//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/thermal/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/thermal/ti-soc-thermal//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/thunderbolt//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/tty//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/tty/hvc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/tty/ipwireless//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/tty/serdev//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/tty/serial//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/tty/serial/8250//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/tty/serial/cpm_uart//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/tty/serial/jsm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/tty/vt//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/uio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/atm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/c67x00//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/chipidea//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/class//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/common//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/core//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/dwc2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/dwc3//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/early//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/gadget//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/gadget/function//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/gadget/legacy//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/gadget/udc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/gadget/udc/aspeed-vhub//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/gadget/udc/bdc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/host//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/host/whci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/image//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/isp1760//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/misc//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/misc/sisusbvga//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/mon//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/mtu3//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/musb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/phy//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/renesas_usbhs//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/roles//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/serial//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/storage//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/typec//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/typec/altmodes//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/typec/mux//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/typec/tcpm//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/typec/tipd//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/typec/ucsi//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/usbip//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/usb/wusbcore//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/uwb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/uwb/i1480//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/uwb/i1480/dfu//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vdpa//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vdpa/alibaba//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vdpa/ifcvf//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vdpa/mlx5//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vdpa/vdpa_sim//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vdpa/virtio_pci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vfio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vfio/mdev//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vfio/pci//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vfio/platform//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vfio/platform/reset//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vhost//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/backlight//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/console//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/aty//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/core//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/geode//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/i810//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/intelfb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/kyro//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/matrox//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/mb862xx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/mbx//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/mmp//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/mmp/fb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/mmp/hw//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/mmp/panel//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/nvidia//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/omap//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/omap2//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/omap2/omapfb//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/omap2/omapfb/displays//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/omap2/omapfb/dss//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/riva//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/savage//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/sis//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/vermilion//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/fbdev/via//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/video/logo//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/virt//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/virt/coco//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/virt/coco/sev-guest//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/virt/coco/tdx-guest//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/virt/nitro_enclaves//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/virt/vboxguest//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/virtio//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/visorbus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vlynq//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vme//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vme/boards//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/vme/bridges//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/w1//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/w1/masters//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/w1/slaves//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/watchdog//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/xen//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/xen/events//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/xen/xen-pciback//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/xen/xenbus//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/xen/xenfs//usr/src/kernels/4.18.0-519.el8.aarch64/drivers/zorro//usr/src/kernels/4.18.0-519.el8.aarch64/firmware//usr/src/kernels/4.18.0-519.el8.aarch64/fs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/9p//usr/src/kernels/4.18.0-519.el8.aarch64/fs/adfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/affs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/afs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/autofs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/befs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/bfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/btrfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/cachefiles//usr/src/kernels/4.18.0-519.el8.aarch64/fs/ceph//usr/src/kernels/4.18.0-519.el8.aarch64/fs/cifs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/coda//usr/src/kernels/4.18.0-519.el8.aarch64/fs/configfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/cramfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/fs/debugfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/devpts//usr/src/kernels/4.18.0-519.el8.aarch64/fs/dlm//usr/src/kernels/4.18.0-519.el8.aarch64/fs/ecryptfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/efivarfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/efs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/exportfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/ext2//usr/src/kernels/4.18.0-519.el8.aarch64/fs/ext4//usr/src/kernels/4.18.0-519.el8.aarch64/fs/f2fs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/fat//usr/src/kernels/4.18.0-519.el8.aarch64/fs/freevxfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/fscache//usr/src/kernels/4.18.0-519.el8.aarch64/fs/fuse//usr/src/kernels/4.18.0-519.el8.aarch64/fs/gfs2//usr/src/kernels/4.18.0-519.el8.aarch64/fs/hfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/hfsplus//usr/src/kernels/4.18.0-519.el8.aarch64/fs/hostfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/hpfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/hugetlbfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/iomap//usr/src/kernels/4.18.0-519.el8.aarch64/fs/isofs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/jbd2//usr/src/kernels/4.18.0-519.el8.aarch64/fs/jffs2//usr/src/kernels/4.18.0-519.el8.aarch64/fs/jfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/kernfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/lockd//usr/src/kernels/4.18.0-519.el8.aarch64/fs/minix//usr/src/kernels/4.18.0-519.el8.aarch64/fs/nfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/nfs/blocklayout//usr/src/kernels/4.18.0-519.el8.aarch64/fs/nfs/filelayout//usr/src/kernels/4.18.0-519.el8.aarch64/fs/nfs/flexfilelayout//usr/src/kernels/4.18.0-519.el8.aarch64/fs/nfs_common//usr/src/kernels/4.18.0-519.el8.aarch64/fs/nfsd//usr/src/kernels/4.18.0-519.el8.aarch64/fs/nilfs2//usr/src/kernels/4.18.0-519.el8.aarch64/fs/nls//usr/src/kernels/4.18.0-519.el8.aarch64/fs/notify//usr/src/kernels/4.18.0-519.el8.aarch64/fs/notify/dnotify//usr/src/kernels/4.18.0-519.el8.aarch64/fs/notify/fanotify//usr/src/kernels/4.18.0-519.el8.aarch64/fs/notify/inotify//usr/src/kernels/4.18.0-519.el8.aarch64/fs/ntfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/ocfs2//usr/src/kernels/4.18.0-519.el8.aarch64/fs/ocfs2/cluster//usr/src/kernels/4.18.0-519.el8.aarch64/fs/ocfs2/dlm//usr/src/kernels/4.18.0-519.el8.aarch64/fs/ocfs2/dlmfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/omfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/openpromfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/orangefs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/overlayfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/proc//usr/src/kernels/4.18.0-519.el8.aarch64/fs/pstore//usr/src/kernels/4.18.0-519.el8.aarch64/fs/qnx4//usr/src/kernels/4.18.0-519.el8.aarch64/fs/qnx6//usr/src/kernels/4.18.0-519.el8.aarch64/fs/quota//usr/src/kernels/4.18.0-519.el8.aarch64/fs/ramfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/reiserfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/romfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/squashfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/sysfs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/sysv//usr/src/kernels/4.18.0-519.el8.aarch64/fs/tracefs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/ubifs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/udf//usr/src/kernels/4.18.0-519.el8.aarch64/fs/ufs//usr/src/kernels/4.18.0-519.el8.aarch64/fs/xfs//usr/src/kernels/4.18.0-519.el8.aarch64/include//usr/src/kernels/4.18.0-519.el8.aarch64/include/acpi//usr/src/kernels/4.18.0-519.el8.aarch64/include/acpi/platform//usr/src/kernels/4.18.0-519.el8.aarch64/include/asm-generic//usr/src/kernels/4.18.0-519.el8.aarch64/include/asm-generic/bitops//usr/src/kernels/4.18.0-519.el8.aarch64/include/asm-generic/vdso//usr/src/kernels/4.18.0-519.el8.aarch64/include/clocksource//usr/src/kernels/4.18.0-519.el8.aarch64/include/config//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/8139too//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/a64fx//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi/apei//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi/apei/memory//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi/cca//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi/cppc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi/generic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi/hotplug//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi/i2c//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi/pci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi/processor//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi/reduced//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi/reduced/hardware//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi/spcr//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/acpi/table//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/advise//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ahci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/alim7101//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/allow//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/allow/dev//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/amd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ampere//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ampere/erratum//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ampere/erratum/ac03//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ampere/erratum/ac03/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/aperture//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/aquantia//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/bcm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/dma//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/dma/addr//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/dma/addr/t//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/enable//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/enable/hugepage//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/enable/memory//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/acpi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/acpi/table//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/cache//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/cache/line//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/debug//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/devmem//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/devmem/is//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/dma//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/dma/prep//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/elf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/fast//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/fortify//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/gcov//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/gcov/profile//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/gigantic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/membarrier//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/membarrier/sync//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/non//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/non/overlapping//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/non/overlapping/address//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/pmem//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/pte//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/reset//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/set//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/set/direct//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/setup//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/setup/dma//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/sg//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/strict//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/strict/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/strict/module//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/sync//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/sync/dma//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/sync/dma/for//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/syscall//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/tick//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/uaccess//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/ubsan//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/has/ubsan/sanitize//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/have//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/have/nmi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/have/nmi/safe//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/hibernation//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/inline//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/inline/read//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/inline/read/lock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/inline/read/unlock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/inline/spin//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/inline/spin/lock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/inline/spin/trylock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/inline/spin/unlock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/inline/write//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/inline/write/lock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/inline/write/unlock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/keep//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/mmap//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/mmap/rnd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/mmap/rnd/bits//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/mmap/rnd/compat/bits//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/proc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/proc/kcore//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/select//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/select/memory//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/sparsemem//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/supports//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/supports/atomic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/supports/debug//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/supports/memory//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/supports/numa//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/suspend//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/use//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/use/cmpxchg//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/use/queued//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/want//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/want/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/want/default/bpf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arch/want/frame//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/arch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/arch/timer//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/arch/timer/ool//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/dmc620//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/gic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/gic/max//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/gic/v3//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/gic/v3/its//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/pmu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/psci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/sbsa//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/scpi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/scpi/power//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/sde//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/smccc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/smccc/soc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/smmu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/sp805//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/spe//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/tegra20//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm/timer//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/64k//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/acpi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/acpi/parking//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/amu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/cont//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/erratum//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/hw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/lse//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/module//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/pa//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/pa/bits//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/page//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/pseudo//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/ras//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/tlb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/va//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/va/bits//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/workaround//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/workaround/clean//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/workaround/repeat//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/arm64/workaround/speculative//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/as//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/as/has//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/as/has/armv8//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/associative//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/asymmetric//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/asymmetric/key//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/asymmetric/public//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/asymmetric/public/key//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/async//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/async/raid6//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/async/tx//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ata//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ata/verbose//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/atm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/atomic64//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/audit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/audit/arch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/audit/arch/compat//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/autofs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/autofs4//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/auxiliary//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/backlight//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/backlight/class//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/backlight/lcd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/balloon//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/base//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bcm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bcm/net//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bcm/ns//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bcm/sr//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bcm7xxx//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bcm87xx//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bcma//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bcma/driver//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bcma/driver/gmac//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bcma/host//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bcma/host/pci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bfq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bfq/group//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/big//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/binary//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/binfmt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bitfield//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bitfield/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bits//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bits/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/cgroup//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/cgroup/fc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/debug//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/dev//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/dev/dm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/dev/integrity//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/dev/io//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/dev/loop//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/dev/loop/min//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/dev/null//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/dev/ram//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/mq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/scsi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/blk/wbt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bnx2x//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bnxt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bnxt/flower//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/boot//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/boot/printk//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bootparam//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bootparam/hung//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bootparam/hung/task//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bootparam/hung/task/panic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bootparam/softlockup//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bootparam/softlockup/panic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bpf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bpf/jit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bpf/jit/always//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bpf/jit/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bpf/stream//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bpf/unpriv//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bpf/unpriv/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/branch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/branch/profile//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bridge//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bridge/ebt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bridge/ebt/802//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bridge/ebt/mark//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bridge/ebt/t//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bridge/igmp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bridge/nf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bridge/vlan//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/broadcom//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bsd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bsd/process//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bsd/process/acct//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bug//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bug/on//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/bug/on/data//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/buildtime//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/buildtime/extable//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/can//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/can/8dev//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/can/c//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/can/c/can//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/can/calc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/can/cc770//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/can/ems//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/can/esd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/can/kvaser//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/can/peak//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/can/plx//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/can/sja1000//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cavium//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cavium/erratum//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cavium/tx2//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cavium/tx2/erratum//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cb710//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cb710/debug//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cc/can//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cc/has//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cc/has/kasan//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cc/has/sancov//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cc/has/sancov/trace//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cc/has/stackprotector//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cc/has/working//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cc/has/working/nosanitize//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cc/is//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cc/optimize//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cc/optimize/for//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cdrom//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cdrom/pktcdvd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ceph//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ceph/fs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ceph/fs/posix//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ceph/fs/security//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ceph/lib//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ceph/lib/use//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ceph/lib/use/dns//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cgroup//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cgroup/net//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/charger//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/check//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/checkpoint//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/chelsio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/chelsio/inline//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/chelsio/ipsec//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/chelsio/tls//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/chr//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/chr/dev//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/chrome//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cicada//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cifs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cifs/allow//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cifs/allow/insecure//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cifs/dfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cifs/smb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cifs/weak//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cifs/weak/pw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/clang//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/clk//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/clk/bcm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/clk/vexpress//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/clkdev//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/clksrc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/clone//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cls//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cls/u32//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/clz//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cmdline//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cmdline/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/common//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/common/clk//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/common/reset//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/configfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/console//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/console/loglevel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/context//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/context/switch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/contig//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/core//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/core/dump//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/core/dump/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/core/dump/default/elf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cortina//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cpu/freq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cpu/freq/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cpu/freq/default/gov//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cpu/freq/gov//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cpu/freq/gov/attr//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cpu/idle//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cpu/idle/gov//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cpu/idle/multiple//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cpumask//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cramfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crash//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crc/itu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crc32//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cross//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/cross/memory//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/aes//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/aes/arm64//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/aes/arm64/ce//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/aes/arm64/neon//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/ansi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/blowfish//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/cast//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/chacha20//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/crct10dif//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/crct10dif/arm64//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/dev//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/dev/bcm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/dev/cavium//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/dev/ccp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/dev/nitrox//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/dev/sp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/drbg//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/fips//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/ghash//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/ghash/arm64//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/hash//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/lib//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/michael//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/rng//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/sha1//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/sha1/arm64//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/sha2//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/sha2/arm64//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/sha256//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/twofish//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/user//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/crypto/user/api//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/damon//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/davicom//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dax//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dcache//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dcache/word//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/debug//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/debug/info//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/debug/memory//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/debug/section//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/decompress//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/default/fq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/default/hung//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/default/hung/task//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/default/mmap//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/default/mmap/min//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/default/net//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/default/security//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/default/tcp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/detect//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/detect/hung//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dev//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dev/dax//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dev/dax/hmem//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/devtmpfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dlci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dlm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dm/bio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dm/cache//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dm/log//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dm/multipath//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dm/persistent//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dm/thin//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dma//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dma/coherent//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dma/direct//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dma/engine//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dma/noncoherent//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dma/shared//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dmi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dns//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dp83640//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dp83822//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dp83848//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dp83867//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dp83tc811//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/amd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/amd/dc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/amdgpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/cirrus//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/display//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/display/dp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/display/hdcp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/display/hdmi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/dp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/dp/aux//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/export//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/export/for//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/fbdev//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/gem//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/gem/shmem//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/hisi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/i2c//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/kms//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/kunit/test//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/lib//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/load//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/load/edid//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/nouveau//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/panel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/panel/orientation//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/radeon//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/ttm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/virtio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/drm/vram//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dst//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dt/idle//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dummy//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dummy/console//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dw/dmac//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dwmac//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dwmac/dwc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dwmac/dwc/qos//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/dynamic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/edac//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/edac/legacy//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/eeprom//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/efi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/efi/params//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/efi/params/from//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/efi/runtime//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/efi/soft//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/efi/vars//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/efi/vars/pstore//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/efi/vars/pstore/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/efivar//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/elf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ena//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/enable//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/enable/must//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/enclosure//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/encrypted//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/energy//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ethtool//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/event//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/exclusive//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/exclusive/system//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/exportfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/exportfs/block//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ext4//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ext4/fs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ext4/fs/posix//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ext4/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ext4/use//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ext4/use/for//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/extcon//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/extra//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fair//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fair/group//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fanotify//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fanotify/access//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fat//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fat/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fat/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fb/cfb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fb/deferred//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fb/sys//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fib//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/file//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fips//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fips/signature//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fix//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fix/earlycon//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fixed//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fmc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fmc/write//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/font//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/force//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/force/max//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fortify//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/frame//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/framebuffer//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/framebuffer/console//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/framebuffer/console/deferred//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/framebuffer/console/detect//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fs/posix//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fscache//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fsl//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fsl/erratum//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ftrace//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ftrace/mcount//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fujitsu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fujitsu/erratum//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/function//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/function/graph//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fuse//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fusion//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fusion/max//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/futex//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fw/cfg//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fw/loader//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/fw/loader/user//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/gact//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/gcc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/arch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/bug//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/bug/relative//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/calibrate//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/clockevents//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/early//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/idle//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/idle/poll//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/irq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/irq/effective//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/irq/effective/aff//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/irq/show//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/msi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/msi/irq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/net//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/pci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/sched//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/smp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/smp/idle//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/strncpy//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/strncpy/from//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/strnlen//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/time//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/vdso//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/generic/vdso/time//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/gpio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/gpio/generic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/gpio/xgene//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/gpiolib//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/gpiolib/fastpath//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/grace//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/gro//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/handle//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/handle/domain//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/harden//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/harden/el2//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hardened//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hardened/usercopy//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hardirqs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hardirqs/sw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/has//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/has/ioport//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hash//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hash/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/acpi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/aligned//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/aligned/struct//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch/compiler//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch/huge//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch/jump//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch/kasan//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch/kasan/sw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch/mmap//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch/mmap/rnd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch/pfn//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch/seccomp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch/thread//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch/thread/struct//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch/transparent//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arch/vmap//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/arm/smccc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/c//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/clk//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/cmpxchg//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/context//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/debug//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/dma//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/dynamic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/ebpf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/efficient//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/efficient/unaligned//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/fast//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/ftrace//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/ftrace/mcount//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/function//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/function/graph//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/futex//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/gcc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/generic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/generic/dma//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/hardened//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/hardened/usercopy//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/hw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/irq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/irq/time//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/kvm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/kvm/arch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/kvm/arch/tlb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/kvm/arch/tlb/flush//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/kvm/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/kvm/cpu/relax//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/kvm/irq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/kvm/vcpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/kvm/vcpu/run//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/kvm/vcpu/run/pid//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/memory//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/mod//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/mod/arch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/net//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/pata//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/perf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/perf/user//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/perf/user/stack//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/regs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/regs/and//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/regs/and/stack//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/regs/and/stack/access//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/sched//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/sched/avg//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/setup//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/setup/per//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/setup/per/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/syscall//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/virt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/virt/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/have/virt/cpu/accounting//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hdlc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/headers//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hi3660//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hi6220//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hibernate//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hid//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hid/battery//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hid/betop//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hid/hyperv//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hid/logitech//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hid/picolcd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hid/sensor//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/high//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/high/res//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hisi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hisilicon//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hisilicon/erratum//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hisilicon/irq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hist//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hmem//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hns//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hns3//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/holes//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/holes/in//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hotplug//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hotplug/pci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hotplug/pci/acpi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hugetlb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hvc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hw/perf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hw/random//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hwlat//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hwpoison//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hyperv//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/hz//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/i2c//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/i2c/arb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/i2c/arb/gpio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/i2c/designware//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/i2c/diolan//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/i2c/hid//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/i2c/mux//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/i2c/parport//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/i2c/pca//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/i2c/slave//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/i2c/tiny//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/i2c/xgene//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/i6300esb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ice//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/icplus//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/idle//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/idle/page//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/igb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/illegal//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/illegal/pointer//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/indirect//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inet//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inet/diag//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inet/esp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inet/mptcp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inet/raw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inet/sctp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inet/tcp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inet/udp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inet/xfrm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inet6//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inet6/esp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inet6/xfrm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/infiniband//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/infiniband/addr//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/infiniband/addr/trans//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/infiniband/bnxt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/infiniband/ipoib//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/infiniband/on//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/infiniband/on/demand//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/infiniband/user//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/infiniband/virt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/init//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/init/env//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/init/env/arg//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/initramfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inline//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inline/read//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inline/read/lock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inline/read/unlock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inline/spin//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inline/spin/lock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inline/spin/trylock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inline/spin/unlock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inline/write//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inline/write/lock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inline/write/unlock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/inotify//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/input//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/input/ff//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/input/mousedev//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/input/mousedev/screen//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/intel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/intel/xway//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/interval//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/iommu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/iommu/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/iommu/default/dma//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/iommu/io//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/iommu/io/pgtable//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/iosched//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/advanced//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/fib//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/fib/trie//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/mroute//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/mroute/multiple//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/multiple//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/nf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/nf/arp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/nf/match//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/nf/target//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/pimsm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/route//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/set//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/set/bitmap//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/set/hash//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/set/list//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/vs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/vs/mh//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/vs/mh/tab//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/vs/pe//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/vs/proto//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/vs/proto/ah//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/vs/sh//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/vs/sh/tab//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip/vs/tab//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip6//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip6/nf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip6/nf/match//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ip6/nf/target//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipmb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipmb/device//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipmi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipmi/device//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipmi/dmi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipmi/panic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipmi/plat//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipv6//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipv6/mroute//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipv6/mroute/multiple//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipv6/multiple//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipv6/ndisc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipv6/optimistic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipv6/pimsm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipv6/route//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipv6/router//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ipv6/sit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/irq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/irq/bypass//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/irq/domain//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/irq/forced//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/irq/msi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/iscsi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/iscsi/boot//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/iscsi/target//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/iso9660//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ixgbe//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ixgbevf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/jump//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kallsyms//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kallsyms/base//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kdb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kdb/continue//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kdb/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kernel/mode//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kexec//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/keyboard//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kgdb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kgdb/honour//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kgdb/serial//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kprobe//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kunit/all//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kunit/example//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kvm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kvm/arm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kvm/generic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kvm/generic/dirtylog//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kvm/generic/dirtylog/read//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/kvm/indirect//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/l2tp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lcd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lcd/class//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/led//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/led/trigger//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/leds//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/leds/brightness//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/leds/brightness/hw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/leds/class//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/leds/lp55xx//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/leds/trigger//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/leds/trigger/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/linear//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/linear/ranges//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/linear/ranges/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/liquidio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/list//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/list/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lock/debugging//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lock/spin//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lock/spin/on//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lock/torture//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lockd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lockdep//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lockup//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/log//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/log/buf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/log/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/log/cpu/max//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/log/cpu/max/buf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/logitech//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/logo//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/logo/linux//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/loopback//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lsi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lsi/et1011c//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lsm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lsm/mmap//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lsm/mmap/min//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lwtunnel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lxt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lz4//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/lzo//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/magic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/magic/sysrq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/magic/sysrq/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/marvell//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/marvell/10g//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/max//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/max/raw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/maxlinear//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/md//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mdio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mdio/bcm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mdio/hisi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mdio/mscc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/megaraid//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mellanox//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/memcg//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/memcpy//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/memcpy/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/memfd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/memory//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/memstick//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/memstick/jmicron//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/memstick/tifm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/message//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/message/loglevel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mfd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mhi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mhi/bus//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mhi/bus/pci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/micrel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/microchip//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/microchip/t1//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/microsemi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/misc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mitigate//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mitigate/spectre//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mitigate/spectre/branch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlx//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlx4//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlx4/en//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlx5//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlx5/cls//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlx5/core//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlx5/core/en//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlx5/en//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlx5/sf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlx5/sw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlx5/tc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlx5/vdpa//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlxbf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlxreg//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlxsw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlxsw/core//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mlxsw/spectrum//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmc/block//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmc/dw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmc/ricoh//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmc/sdhci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmc/sdhci/io//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmc/tifm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmc/toshiba//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmc/via//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmu/gather//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmu/gather/rcu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmu/gather/rcu/table//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mmu/gather/table//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/module//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/module/force//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/module/sig//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/module/srcversion//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/modules//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/modules/tree//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/modules/use//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/modules/use/elf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mouse//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mouse/elan//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mouse/elan/i2c//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mouse/synaptics//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mpls//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mptcp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mptcp/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mq/iosched//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/msdos//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mspro//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mtd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mtd/cfi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mtd/gen//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mtd/map//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mtd/map/bank//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mtd/map/bank/width//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mtd/of//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mtd/physmap//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mtd/ubi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mtd/ubi/beb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mtd/ubi/wl//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mutex//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mutex/spin//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/mutex/spin/on//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/n//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/national//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/need//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/need/dma//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/need/dma/map//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/need/multiple//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/need/per//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/need/per/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/need/per/cpu/embed//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/need/per/cpu/embed/first//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/need/sg//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/need/sg/dma//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/act//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/act/tunnel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/cls//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/drop//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/ematch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/flow//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/ip//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/ipgre//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/key//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/l3//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/l3/master//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/mpls//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/packet//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/poll//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/ptp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/rx//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/rx/busy//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/sch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/sch/fq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/sch/mqprio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/sock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/tc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/tc/skb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/team//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/team/mode//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/udp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/vendor//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/net/xgene//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/netconsole//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/netdev//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/netdev/addr//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/netdev/addr/list//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/netfilter//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/netfilter/family//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/netfilter/netlink//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/netfilter/netlink/glue//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/netfilter/xt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/netfilter/xt/match//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/netfilter/xt/target//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/netlink//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/network//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/network/phy//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/netxen//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/new//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/conntrack//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/conntrack/netbios//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/ct//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/ct/netlink//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/ct/proto//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/defrag//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/dup//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/flow//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/flow/table//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/log//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/nat//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/nat/snmp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/reject//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/socket//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/tables//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nf/tproxy//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfp/app//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfp/app/abm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfs/acl//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfs/use//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfs/use/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfs/v3//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfs/v4//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfs/v4/1//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfs/v4/1/implementation//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfs/v4/1/implementation/id//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfs/v4/security//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfsd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfsd/v2//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfsd/v3//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfsd/v4//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nfsd/v4/security//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nft//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nft/bridge//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nft/dup//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nft/fib//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nft/flow//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nft/fwd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nft/reject//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nitro//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nls//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nls/codepage//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nls/iso8859//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nls/koi8//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nls/mac//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/no//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/no/hz//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nodes//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nop//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nouveau//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nouveau/debug//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nouveau/platform//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nr//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/numa//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/numa/balancing//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/numa/balancing/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/numa/keep//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nvdimm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nvidia//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nvidia/carmel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nvidia/carmel/cnp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nvme//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nvme/target//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/nvme/verbose//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/of//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/of/early//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/of/reserved//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/oid//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/openvswitch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/osnoise//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/overlay//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/packet//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/page//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/panic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/panic/on//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/panic/on/oops//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/paravirt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/paravirt/time//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/partition//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pci/domains//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pci/host//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pci/host/thunder//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pci/hyperv//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pci/msi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pci/msi/irq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pci/xgene//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pcie//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pcie/dw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pcie/iproc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pcieaer//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pcieaspm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pcs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/perf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/persistent//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pgtable//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/phy//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/phy/brcm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/phy/hi6220//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/phy/ns2//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/phy/ns2/usb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/phys//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/phys/addr//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/phys/addr/t//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pid//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pinctrl//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pinctrl/iproc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pinctrl/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pkcs7//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pkcs7/message//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/plugin//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pm/generic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pm/generic/domains//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pm/sleep//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pm/std//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pnfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pnfs/file//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pnfs/flexfile//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pnp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pnp/debug//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/posix//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/posix/mqueue//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/power//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/power/reset//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/power/reset/gpio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ppp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ppp/sync//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pps//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pps/client//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/preempt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/prevent//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/prevent/firmware//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/prime//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/print//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/print/quota//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/printk//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/printk/safe//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/printk/safe/log//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/printk/safe/log/buf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/probe//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/proc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/proc/page//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/proc/pid//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/proc/vmcore//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/proc/vmcore/device//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/psi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/psi/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pstore//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pstore/compress//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pstore/deflate//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pstore/deflate/compress//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ptp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ptp/1588//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pwm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/pwm/bcm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/qcom//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/qcom/falkor//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/qcom/falkor/erratum//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/qcom/hidma//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/qcom/irq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/qcom/l2//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/qcom/l3//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/qcom/qdf2400//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/qcom/qdf2400/erratum//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/qed//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/qfmt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/qsemi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/queued//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/quota//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/quota/netlink//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/raid//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/raid6//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/raid6/pq//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/randomize//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/randomize/module//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/randomize/module/region//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rational//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rational/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/raw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rcu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rcu/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rcu/cpu/stall//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rcu/need//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rcu/nocb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rcu/stall//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rdma//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/realtek//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/reed//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/reed/solomon//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/refcount//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/regmap//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/renesas//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/reset//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/resource//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/resource/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rfkill//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rh//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rh/kabi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rh/kabi/size//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rh/kabi/size/align//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rhel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ring//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ring/buffer//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rmi4//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rmi4/2d//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rmi4/f03//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rockchip//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rodata//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rodata/full//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rodata/full/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rpcsec//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rpcsec/gss//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rt/group//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc/drv//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc/drv/ds1374//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc/drv/ds1685//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc/drv/ds3232//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc/drv/m41t80//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc/ds1685//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc/ds1685/sysfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc/hctosys//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc/i2c//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc/i2c/and//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc/intf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc/lib//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rtc/lib/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/runtime//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/runtime/testing//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rwsem//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rwsem/spin//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/rwsem/spin/on//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sata//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sata/ahci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sata/mobile//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sata/mobile/lpm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scf/torture//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sched//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/chelsio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/cxgb4//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/dh//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/dh/hp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/fc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/hisi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/hisi/sas//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/ipr//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/iscsi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/mpt2sas//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/mpt2sas/max//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/mpt3sas//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/mpt3sas/max//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/proc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/qla//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/sas//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/sas/host//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/scan//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/spi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/scsi/srp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sctp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sctp/cookie//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sctp/cookie/hmac//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sctp/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sctp/default/cookie//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sctp/default/cookie/hmac//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sdio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/seccomp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/section//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/section/mismatch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/section/mismatch/warn//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/security//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/security/network//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/security/selinux//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/security/selinux/avc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/security/selinux/checkreqprot//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/security/selinux/sid2str//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/security/selinux/sid2str/cache//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/security/selinux/sidtab//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/security/selinux/sidtab/hash//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/security/writable//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/select//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/select/memory//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sensors//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sensors/acpi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sensors/arm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sensors/mlxreg//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sensors/ntc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sensors/pwm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serial//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serial/8250//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serial/8250/many//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serial/8250/nr//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serial/8250/runtime//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serial/8250/share//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serial/amba//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serial/amba/pl011//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serial/core//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serial/earlycon//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serial/earlycon/arm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serial/of//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serio/altera//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/serio/arc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sg//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sgl//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/shuffle//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/shuffle/page//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/signed//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/signed/pe//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/signed/pe/file//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/skb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/slab//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/slab/freelist//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/slip//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/slub//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/slub/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/slub/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/smsc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/soc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/soc/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sock/cgroup//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sock/validate//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/soft//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/softlockup//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sony//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sparse//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sparsemem//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sparsemem/vmemmap//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/spi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/spi/dw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/split//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/split/ptlock//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/squashfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/squashfs/decomp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/squashfs/decomp/multi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/squashfs/file//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/squashfs/fragment//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/squashfs/fragment/cache//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ssb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/stack//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/stackprotector//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/stacktrace//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/stmmac//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/stream//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/strict//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/strict/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/strict/module//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/strip//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/strip/asm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/stub//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/stub/clk//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sunrpc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sunrpc/xprt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/suspend//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/symbolic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/syn//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sync//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/synclink//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sys//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sys/supports//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sysctl//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sysctl/exception//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sysctl/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sysfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/system//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/system/data//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/system/trusted//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/sysvipc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/target//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/task//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/task/delay//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/task/io//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tasks//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tasks/rcu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tasks/rude//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tasks/trace//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tcg//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tcg/tis//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tcm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tcp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tcp/cong//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/teranetics//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/test//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/test/list//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/textsearch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thermal//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thermal/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thermal/default/gov//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thermal/default/gov/step//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thermal/emergency//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thermal/emergency/poweroff//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thermal/emergency/poweroff/delay//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thermal/gov//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thermal/gov/fair//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thermal/gov/step//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thermal/gov/user//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thread//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thread/info//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thread/info/in//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thunder//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thunder/nic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/thunderx2//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tick//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tifm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tigon3//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/time//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/time/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/timer//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/timerlat//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tipc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tipc/media//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tls//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tmpfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tmpfs/posix//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/torture//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/trace//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/trace/irqflags//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tracer//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tracer/max//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tracing//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/transparent//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/transparent/hugepage//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/tree//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/trusted//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/typec//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/typec/dp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/typec/mux//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ucs2//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/ucsi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/udf//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/uefi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/uefi/cper//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/uio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/uio/hv//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/uio/pci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/uio/pdrv//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/unix//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/unix98//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/unmap//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/unmap/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/unmap/kernel/at//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/uprobe//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/ali//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/announce//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/announce/new//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/arch//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/arch/has//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/autosuspend//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/default//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/ehci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/ehci/hcd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/ehci/root//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/ehci/root/hub//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/ehci/tt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/ezusb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/ftdi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/hsic//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/hwa//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/led//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/leds//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/leds/trigger//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/net//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/net/ax88179//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/net/cdc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/net/cdc/subset//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/net/cx82310//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/net/huawei//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/net/huawei/cdc//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/net/qmi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/net/rndis//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/ohci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/ohci/hcd//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/ohci/little//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/role//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/serial//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/serial/cypress//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/serial/digi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/serial/edgeport//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/serial/ftdi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/serial/keyspan//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/serial/kobil//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/serial/mct//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/serial/safe//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/serial/xsens//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/sierra//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/storage//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/storage/cypress//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/storage/ene//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/uhci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/ulpi//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/wusb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb/xhci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/usb4//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/use//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/use/percpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/use/percpu/numa//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/use/percpu/numa/node//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/user//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/uts//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/uwb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vdpa//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vdpa/sim//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vexpress//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vfat//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vfio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vfio/iommu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vfio/pci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vga//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vga/arb//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vga/arb/max//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vhost//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/video//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/virt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/virt/cpu//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/virt/cpu/accounting//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/virtio//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/virtio/pci//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/virtio/vsockets//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vitesse//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vlan//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vlan/8021q//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vm/event//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vmap//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vsockets//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vt//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vt/console//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vt/hw//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/vt/hw/console//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/watchdog//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/watchdog/handle//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/watchdog/handle/boot//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/watchdog/open//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/x509//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/x509/certificate//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/xarray//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/xdp//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/xdp/sockets//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/xfrm//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/xfrm/sub//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/xfs//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/xfs/posix//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/xgene//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/xgene/slimpro//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/xilinx//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/xor//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/xz//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/xz/dec//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/zlib//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/zone//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/zram//usr/src/kernels/4.18.0-519.el8.aarch64/include/config/zsmalloc//usr/src/kernels/4.18.0-519.el8.aarch64/include/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/include/crypto/internal//usr/src/kernels/4.18.0-519.el8.aarch64/include/drm-backport//usr/src/kernels/4.18.0-519.el8.aarch64/include/drm-backport/linux//usr/src/kernels/4.18.0-519.el8.aarch64/include/drm//usr/src/kernels/4.18.0-519.el8.aarch64/include/drm/bridge//usr/src/kernels/4.18.0-519.el8.aarch64/include/drm/display//usr/src/kernels/4.18.0-519.el8.aarch64/include/drm/i2c//usr/src/kernels/4.18.0-519.el8.aarch64/include/drm/ttm//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/arm//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/bus//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/clk//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/clock//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/display//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/dma//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/gpio//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/i2c//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/iio//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/iio/adc//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/input//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/interrupt-controller//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/leds//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/mailbox//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/media//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/memory//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/mfd//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/mips//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/mux//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/net//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/phy//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/pinctrl//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/power//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/pwm//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/regulator//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/reset//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/soc//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/sound//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/spmi//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/thermal//usr/src/kernels/4.18.0-519.el8.aarch64/include/dt-bindings/usb//usr/src/kernels/4.18.0-519.el8.aarch64/include/generated//usr/src/kernels/4.18.0-519.el8.aarch64/include/generated/uapi//usr/src/kernels/4.18.0-519.el8.aarch64/include/generated/uapi/linux//usr/src/kernels/4.18.0-519.el8.aarch64/include/keys//usr/src/kernels/4.18.0-519.el8.aarch64/include/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/include/kvm//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/amba//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/avf//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/bcma//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/byteorder//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/can//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/can/dev//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/can/platform//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/ceph//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/clk//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/crush//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/decompress//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/dma//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/dsa//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/extcon//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/firmware//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/firmware/cirrus//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/firmware/intel//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/firmware/meson//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/fpga//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/fsl//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/fsl/bestcomm//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/gpio//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/hsi//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/iio//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/iio/accel//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/iio/adc//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/iio/common//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/iio/dac//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/iio/frequency//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/iio/gyro//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/iio/imu//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/iio/magnetometer//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/iio/timer//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/input//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/irqchip//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/isdn//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/lockd//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mailbox//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/abx500//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/arizona//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/da9052//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/da9055//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/da9062//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/da9063//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/da9150//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/mt6323//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/mt6397//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/pcf50633//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/samsung//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/syscon//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/wm831x//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/wm8350//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mfd/wm8994//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mlx4//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mlx5//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mmc//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mtd//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/mux//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/net//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/net/intel//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/netfilter//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/netfilter/ipset//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/netfilter_arp//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/netfilter_bridge//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/netfilter_ipv4//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/netfilter_ipv6//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/pcs//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/perf//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/phy//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/phy/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/pinctrl//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/platform_data//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/platform_data/media//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/platform_data/x86//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/power//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/qed//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/raid//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/regulator//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/remoteproc//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/reset//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/rpmsg//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/rtc//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/sched//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/soc//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/soc/actions//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/soc/brcmstb//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/soc/dove//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/soc/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/soc/qcom//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/soc/renesas//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/soc/samsung//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/soc/sunxi//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/soc/ti//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/soundwire//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/spi//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/ssb//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/sunrpc//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/ulpi//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/unaligned//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/usb//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/uwb//usr/src/kernels/4.18.0-519.el8.aarch64/include/linux/wimax//usr/src/kernels/4.18.0-519.el8.aarch64/include/math-emu//usr/src/kernels/4.18.0-519.el8.aarch64/include/media//usr/src/kernels/4.18.0-519.el8.aarch64/include/media/davinci//usr/src/kernels/4.18.0-519.el8.aarch64/include/media/drv-intf//usr/src/kernels/4.18.0-519.el8.aarch64/include/media/i2c//usr/src/kernels/4.18.0-519.el8.aarch64/include/media/tpg//usr/src/kernels/4.18.0-519.el8.aarch64/include/memory//usr/src/kernels/4.18.0-519.el8.aarch64/include/misc//usr/src/kernels/4.18.0-519.el8.aarch64/include/net//usr/src/kernels/4.18.0-519.el8.aarch64/include/net/9p//usr/src/kernels/4.18.0-519.el8.aarch64/include/net/bluetooth//usr/src/kernels/4.18.0-519.el8.aarch64/include/net/caif//usr/src/kernels/4.18.0-519.el8.aarch64/include/net/iucv//usr/src/kernels/4.18.0-519.el8.aarch64/include/net/mana//usr/src/kernels/4.18.0-519.el8.aarch64/include/net/netfilter//usr/src/kernels/4.18.0-519.el8.aarch64/include/net/netfilter/ipv4//usr/src/kernels/4.18.0-519.el8.aarch64/include/net/netfilter/ipv6//usr/src/kernels/4.18.0-519.el8.aarch64/include/net/netns//usr/src/kernels/4.18.0-519.el8.aarch64/include/net/nfc//usr/src/kernels/4.18.0-519.el8.aarch64/include/net/phonet//usr/src/kernels/4.18.0-519.el8.aarch64/include/net/sctp//usr/src/kernels/4.18.0-519.el8.aarch64/include/net/tc_act//usr/src/kernels/4.18.0-519.el8.aarch64/include/pcmcia//usr/src/kernels/4.18.0-519.el8.aarch64/include/ras//usr/src/kernels/4.18.0-519.el8.aarch64/include/rdma//usr/src/kernels/4.18.0-519.el8.aarch64/include/scsi//usr/src/kernels/4.18.0-519.el8.aarch64/include/scsi/fc//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc/arc//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc/at91//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc/bcm2835//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc/brcmstb//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc/fsl//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc/fsl/qe//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc/imx//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc/nps//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc/qcom//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc/rockchip//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc/sa1100//usr/src/kernels/4.18.0-519.el8.aarch64/include/soc/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/include/sound//usr/src/kernels/4.18.0-519.el8.aarch64/include/sound/ac97//usr/src/kernels/4.18.0-519.el8.aarch64/include/sound/sof//usr/src/kernels/4.18.0-519.el8.aarch64/include/sound/sof/ipc4//usr/src/kernels/4.18.0-519.el8.aarch64/include/target//usr/src/kernels/4.18.0-519.el8.aarch64/include/target/iscsi//usr/src/kernels/4.18.0-519.el8.aarch64/include/trace//usr/src/kernels/4.18.0-519.el8.aarch64/include/trace/events//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/asm-generic//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/drm//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/android//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/byteorder//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/caif//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/can//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/cifs//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/dvb//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/genwqe//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/hdlc//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/hsi//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/iio//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/isdn//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/mmc//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/netfilter//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/netfilter/ipset//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/netfilter_arp//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/netfilter_bridge//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/netfilter_ipv4//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/netfilter_ipv6//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/nfsd//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/raid//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/sched//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/spi//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/sunrpc//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/tc_act//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/tc_ematch//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/usb//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/linux/wimax//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/misc//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/mtd//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/rdma//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/rdma/hfi//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/scsi//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/scsi/fc//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/sound//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/sound/intel//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/sound/intel/avs//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/sound/sof//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/video//usr/src/kernels/4.18.0-519.el8.aarch64/include/uapi/xen//usr/src/kernels/4.18.0-519.el8.aarch64/include/vdso//usr/src/kernels/4.18.0-519.el8.aarch64/include/video//usr/src/kernels/4.18.0-519.el8.aarch64/include/xen//usr/src/kernels/4.18.0-519.el8.aarch64/include/xen/arm//usr/src/kernels/4.18.0-519.el8.aarch64/include/xen/interface//usr/src/kernels/4.18.0-519.el8.aarch64/include/xen/interface/hvm//usr/src/kernels/4.18.0-519.el8.aarch64/include/xen/interface/io//usr/src/kernels/4.18.0-519.el8.aarch64/init//usr/src/kernels/4.18.0-519.el8.aarch64/ipc//usr/src/kernels/4.18.0-519.el8.aarch64/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/bpf//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/bpf/preload//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/bpf/preload/iterators//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/cgroup//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/debug//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/debug/kdb//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/dma//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/events//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/gcov//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/irq//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/kcsan//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/livepatch//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/locking//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/power//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/printk//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/rcu//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/sched//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/time//usr/src/kernels/4.18.0-519.el8.aarch64/kernel/trace//usr/src/kernels/4.18.0-519.el8.aarch64/lib//usr/src/kernels/4.18.0-519.el8.aarch64/lib/842//usr/src/kernels/4.18.0-519.el8.aarch64/lib/crypto//usr/src/kernels/4.18.0-519.el8.aarch64/lib/dim//usr/src/kernels/4.18.0-519.el8.aarch64/lib/fonts//usr/src/kernels/4.18.0-519.el8.aarch64/lib/kunit//usr/src/kernels/4.18.0-519.el8.aarch64/lib/livepatch//usr/src/kernels/4.18.0-519.el8.aarch64/lib/lz4//usr/src/kernels/4.18.0-519.el8.aarch64/lib/lzo//usr/src/kernels/4.18.0-519.el8.aarch64/lib/math//usr/src/kernels/4.18.0-519.el8.aarch64/lib/mpi//usr/src/kernels/4.18.0-519.el8.aarch64/lib/pldmfw//usr/src/kernels/4.18.0-519.el8.aarch64/lib/raid6//usr/src/kernels/4.18.0-519.el8.aarch64/lib/raid6/test//usr/src/kernels/4.18.0-519.el8.aarch64/lib/reed_solomon//usr/src/kernels/4.18.0-519.el8.aarch64/lib/vdso//usr/src/kernels/4.18.0-519.el8.aarch64/lib/xz//usr/src/kernels/4.18.0-519.el8.aarch64/lib/zlib_deflate//usr/src/kernels/4.18.0-519.el8.aarch64/lib/zlib_dfltcc//usr/src/kernels/4.18.0-519.el8.aarch64/lib/zlib_inflate//usr/src/kernels/4.18.0-519.el8.aarch64/lib/zstd//usr/src/kernels/4.18.0-519.el8.aarch64/mm//usr/src/kernels/4.18.0-519.el8.aarch64/mm/damon//usr/src/kernels/4.18.0-519.el8.aarch64/mm/kasan//usr/src/kernels/4.18.0-519.el8.aarch64/net//usr/src/kernels/4.18.0-519.el8.aarch64/net/6lowpan//usr/src/kernels/4.18.0-519.el8.aarch64/net/802//usr/src/kernels/4.18.0-519.el8.aarch64/net/8021q//usr/src/kernels/4.18.0-519.el8.aarch64/net/9p//usr/src/kernels/4.18.0-519.el8.aarch64/net/appletalk//usr/src/kernels/4.18.0-519.el8.aarch64/net/atm//usr/src/kernels/4.18.0-519.el8.aarch64/net/ax25//usr/src/kernels/4.18.0-519.el8.aarch64/net/batman-adv//usr/src/kernels/4.18.0-519.el8.aarch64/net/bluetooth//usr/src/kernels/4.18.0-519.el8.aarch64/net/bluetooth/bnep//usr/src/kernels/4.18.0-519.el8.aarch64/net/bluetooth/cmtp//usr/src/kernels/4.18.0-519.el8.aarch64/net/bluetooth/hidp//usr/src/kernels/4.18.0-519.el8.aarch64/net/bluetooth/rfcomm//usr/src/kernels/4.18.0-519.el8.aarch64/net/bpf//usr/src/kernels/4.18.0-519.el8.aarch64/net/bpfilter//usr/src/kernels/4.18.0-519.el8.aarch64/net/bridge//usr/src/kernels/4.18.0-519.el8.aarch64/net/bridge/netfilter//usr/src/kernels/4.18.0-519.el8.aarch64/net/caif//usr/src/kernels/4.18.0-519.el8.aarch64/net/can//usr/src/kernels/4.18.0-519.el8.aarch64/net/ceph//usr/src/kernels/4.18.0-519.el8.aarch64/net/core//usr/src/kernels/4.18.0-519.el8.aarch64/net/dcb//usr/src/kernels/4.18.0-519.el8.aarch64/net/dccp//usr/src/kernels/4.18.0-519.el8.aarch64/net/dccp/ccids//usr/src/kernels/4.18.0-519.el8.aarch64/net/decnet//usr/src/kernels/4.18.0-519.el8.aarch64/net/decnet/netfilter//usr/src/kernels/4.18.0-519.el8.aarch64/net/dns_resolver//usr/src/kernels/4.18.0-519.el8.aarch64/net/dsa//usr/src/kernels/4.18.0-519.el8.aarch64/net/ethernet//usr/src/kernels/4.18.0-519.el8.aarch64/net/ethtool//usr/src/kernels/4.18.0-519.el8.aarch64/net/hsr//usr/src/kernels/4.18.0-519.el8.aarch64/net/ieee802154//usr/src/kernels/4.18.0-519.el8.aarch64/net/ieee802154/6lowpan//usr/src/kernels/4.18.0-519.el8.aarch64/net/ife//usr/src/kernels/4.18.0-519.el8.aarch64/net/ipv4//usr/src/kernels/4.18.0-519.el8.aarch64/net/ipv4/bpfilter//usr/src/kernels/4.18.0-519.el8.aarch64/net/ipv4/netfilter//usr/src/kernels/4.18.0-519.el8.aarch64/net/ipv6//usr/src/kernels/4.18.0-519.el8.aarch64/net/ipv6/ila//usr/src/kernels/4.18.0-519.el8.aarch64/net/ipv6/netfilter//usr/src/kernels/4.18.0-519.el8.aarch64/net/iucv//usr/src/kernels/4.18.0-519.el8.aarch64/net/kcm//usr/src/kernels/4.18.0-519.el8.aarch64/net/key//usr/src/kernels/4.18.0-519.el8.aarch64/net/l2tp//usr/src/kernels/4.18.0-519.el8.aarch64/net/l3mdev//usr/src/kernels/4.18.0-519.el8.aarch64/net/lapb//usr/src/kernels/4.18.0-519.el8.aarch64/net/llc//usr/src/kernels/4.18.0-519.el8.aarch64/net/mac80211//usr/src/kernels/4.18.0-519.el8.aarch64/net/mac802154//usr/src/kernels/4.18.0-519.el8.aarch64/net/mpls//usr/src/kernels/4.18.0-519.el8.aarch64/net/mptcp//usr/src/kernels/4.18.0-519.el8.aarch64/net/ncsi//usr/src/kernels/4.18.0-519.el8.aarch64/net/netfilter//usr/src/kernels/4.18.0-519.el8.aarch64/net/netfilter/ipset//usr/src/kernels/4.18.0-519.el8.aarch64/net/netfilter/ipvs//usr/src/kernels/4.18.0-519.el8.aarch64/net/netlabel//usr/src/kernels/4.18.0-519.el8.aarch64/net/netlink//usr/src/kernels/4.18.0-519.el8.aarch64/net/netrom//usr/src/kernels/4.18.0-519.el8.aarch64/net/nfc//usr/src/kernels/4.18.0-519.el8.aarch64/net/nfc/hci//usr/src/kernels/4.18.0-519.el8.aarch64/net/nfc/nci//usr/src/kernels/4.18.0-519.el8.aarch64/net/nsh//usr/src/kernels/4.18.0-519.el8.aarch64/net/openvswitch//usr/src/kernels/4.18.0-519.el8.aarch64/net/packet//usr/src/kernels/4.18.0-519.el8.aarch64/net/phonet//usr/src/kernels/4.18.0-519.el8.aarch64/net/psample//usr/src/kernels/4.18.0-519.el8.aarch64/net/qrtr//usr/src/kernels/4.18.0-519.el8.aarch64/net/rds//usr/src/kernels/4.18.0-519.el8.aarch64/net/rfkill//usr/src/kernels/4.18.0-519.el8.aarch64/net/rose//usr/src/kernels/4.18.0-519.el8.aarch64/net/rxrpc//usr/src/kernels/4.18.0-519.el8.aarch64/net/sched//usr/src/kernels/4.18.0-519.el8.aarch64/net/sctp//usr/src/kernels/4.18.0-519.el8.aarch64/net/smc//usr/src/kernels/4.18.0-519.el8.aarch64/net/strparser//usr/src/kernels/4.18.0-519.el8.aarch64/net/sunrpc//usr/src/kernels/4.18.0-519.el8.aarch64/net/sunrpc/auth_gss//usr/src/kernels/4.18.0-519.el8.aarch64/net/sunrpc/xprtrdma//usr/src/kernels/4.18.0-519.el8.aarch64/net/switchdev//usr/src/kernels/4.18.0-519.el8.aarch64/net/tipc//usr/src/kernels/4.18.0-519.el8.aarch64/net/tls//usr/src/kernels/4.18.0-519.el8.aarch64/net/unix//usr/src/kernels/4.18.0-519.el8.aarch64/net/vmw_vsock//usr/src/kernels/4.18.0-519.el8.aarch64/net/wimax//usr/src/kernels/4.18.0-519.el8.aarch64/net/wireless//usr/src/kernels/4.18.0-519.el8.aarch64/net/x25//usr/src/kernels/4.18.0-519.el8.aarch64/net/xdp//usr/src/kernels/4.18.0-519.el8.aarch64/net/xfrm//usr/src/kernels/4.18.0-519.el8.aarch64/samples//usr/src/kernels/4.18.0-519.el8.aarch64/samples/auxdisplay//usr/src/kernels/4.18.0-519.el8.aarch64/samples/bpf//usr/src/kernels/4.18.0-519.el8.aarch64/samples/configfs//usr/src/kernels/4.18.0-519.el8.aarch64/samples/connector//usr/src/kernels/4.18.0-519.el8.aarch64/samples/hidraw//usr/src/kernels/4.18.0-519.el8.aarch64/samples/hw_breakpoint//usr/src/kernels/4.18.0-519.el8.aarch64/samples/kdb//usr/src/kernels/4.18.0-519.el8.aarch64/samples/kfifo//usr/src/kernels/4.18.0-519.el8.aarch64/samples/kobject//usr/src/kernels/4.18.0-519.el8.aarch64/samples/kprobes//usr/src/kernels/4.18.0-519.el8.aarch64/samples/livepatch//usr/src/kernels/4.18.0-519.el8.aarch64/samples/mei//usr/src/kernels/4.18.0-519.el8.aarch64/samples/mic//usr/src/kernels/4.18.0-519.el8.aarch64/samples/mic/mpssd//usr/src/kernels/4.18.0-519.el8.aarch64/samples/nitro_enclaves//usr/src/kernels/4.18.0-519.el8.aarch64/samples/qmi//usr/src/kernels/4.18.0-519.el8.aarch64/samples/rpmsg//usr/src/kernels/4.18.0-519.el8.aarch64/samples/seccomp//usr/src/kernels/4.18.0-519.el8.aarch64/samples/timers//usr/src/kernels/4.18.0-519.el8.aarch64/samples/trace_events//usr/src/kernels/4.18.0-519.el8.aarch64/samples/trace_printk//usr/src/kernels/4.18.0-519.el8.aarch64/samples/uhid//usr/src/kernels/4.18.0-519.el8.aarch64/samples/v4l//usr/src/kernels/4.18.0-519.el8.aarch64/samples/vfio-mdev//usr/src/kernels/4.18.0-519.el8.aarch64/samples/vfs//usr/src/kernels/4.18.0-519.el8.aarch64/samples/watchdog//usr/src/kernels/4.18.0-519.el8.aarch64/scripts//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/basic//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/clang-tools//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/coccinelle//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/coccinelle/api//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/coccinelle/api/alloc//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/coccinelle/api/debugfs//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/coccinelle/free//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/coccinelle/iterators//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/coccinelle/locks//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/coccinelle/misc//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/coccinelle/null//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/coccinelle/tests//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/dtc//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/dtc/include-prefixes//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/dtc/libfdt//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/gcc-plugins//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/gdb//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/gdb/linux//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/genksyms//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/lxdialog//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/auto_submenu//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/choice//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/choice_value_with_m_dep//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/err_recursive_dep//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/err_recursive_inc//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/inter_choice//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/new_choice_with_dep//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/no_write_if_dep_unmet//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/preprocess//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/preprocess/builtin_func//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/preprocess/circular_expansion//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/preprocess/escape//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/preprocess/variable//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/kconfig/tests/rand_nested_choice//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/ksymoops//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/mod//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/package//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/selinux//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/selinux/genheaders//usr/src/kernels/4.18.0-519.el8.aarch64/scripts/selinux/mdp//usr/src/kernels/4.18.0-519.el8.aarch64/security//usr/src/kernels/4.18.0-519.el8.aarch64/security/apparmor//usr/src/kernels/4.18.0-519.el8.aarch64/security/bpf//usr/src/kernels/4.18.0-519.el8.aarch64/security/integrity//usr/src/kernels/4.18.0-519.el8.aarch64/security/integrity/evm//usr/src/kernels/4.18.0-519.el8.aarch64/security/integrity/ima//usr/src/kernels/4.18.0-519.el8.aarch64/security/keys//usr/src/kernels/4.18.0-519.el8.aarch64/security/keys/encrypted-keys//usr/src/kernels/4.18.0-519.el8.aarch64/security/keys/trusted-keys//usr/src/kernels/4.18.0-519.el8.aarch64/security/loadpin//usr/src/kernels/4.18.0-519.el8.aarch64/security/selinux//usr/src/kernels/4.18.0-519.el8.aarch64/security/selinux/include//usr/src/kernels/4.18.0-519.el8.aarch64/security/smack//usr/src/kernels/4.18.0-519.el8.aarch64/security/tomoyo//usr/src/kernels/4.18.0-519.el8.aarch64/security/yama//usr/src/kernels/4.18.0-519.el8.aarch64/sound//usr/src/kernels/4.18.0-519.el8.aarch64/sound/ac97//usr/src/kernels/4.18.0-519.el8.aarch64/sound/aoa//usr/src/kernels/4.18.0-519.el8.aarch64/sound/aoa/codecs//usr/src/kernels/4.18.0-519.el8.aarch64/sound/aoa/core//usr/src/kernels/4.18.0-519.el8.aarch64/sound/aoa/fabrics//usr/src/kernels/4.18.0-519.el8.aarch64/sound/aoa/soundbus//usr/src/kernels/4.18.0-519.el8.aarch64/sound/aoa/soundbus/i2sbus//usr/src/kernels/4.18.0-519.el8.aarch64/sound/arm//usr/src/kernels/4.18.0-519.el8.aarch64/sound/atmel//usr/src/kernels/4.18.0-519.el8.aarch64/sound/core//usr/src/kernels/4.18.0-519.el8.aarch64/sound/core/oss//usr/src/kernels/4.18.0-519.el8.aarch64/sound/core/seq//usr/src/kernels/4.18.0-519.el8.aarch64/sound/core/seq/oss//usr/src/kernels/4.18.0-519.el8.aarch64/sound/drivers//usr/src/kernels/4.18.0-519.el8.aarch64/sound/drivers/mpu401//usr/src/kernels/4.18.0-519.el8.aarch64/sound/drivers/opl3//usr/src/kernels/4.18.0-519.el8.aarch64/sound/drivers/opl4//usr/src/kernels/4.18.0-519.el8.aarch64/sound/drivers/pcsp//usr/src/kernels/4.18.0-519.el8.aarch64/sound/drivers/vx//usr/src/kernels/4.18.0-519.el8.aarch64/sound/firewire//usr/src/kernels/4.18.0-519.el8.aarch64/sound/firewire/bebob//usr/src/kernels/4.18.0-519.el8.aarch64/sound/firewire/dice//usr/src/kernels/4.18.0-519.el8.aarch64/sound/firewire/digi00x//usr/src/kernels/4.18.0-519.el8.aarch64/sound/firewire/fireface//usr/src/kernels/4.18.0-519.el8.aarch64/sound/firewire/fireworks//usr/src/kernels/4.18.0-519.el8.aarch64/sound/firewire/motu//usr/src/kernels/4.18.0-519.el8.aarch64/sound/firewire/oxfw//usr/src/kernels/4.18.0-519.el8.aarch64/sound/firewire/tascam//usr/src/kernels/4.18.0-519.el8.aarch64/sound/hda//usr/src/kernels/4.18.0-519.el8.aarch64/sound/hda/ext//usr/src/kernels/4.18.0-519.el8.aarch64/sound/i2c//usr/src/kernels/4.18.0-519.el8.aarch64/sound/i2c/other//usr/src/kernels/4.18.0-519.el8.aarch64/sound/isa//usr/src/kernels/4.18.0-519.el8.aarch64/sound/isa/ad1816a//usr/src/kernels/4.18.0-519.el8.aarch64/sound/isa/ad1848//usr/src/kernels/4.18.0-519.el8.aarch64/sound/isa/cs423x//usr/src/kernels/4.18.0-519.el8.aarch64/sound/isa/es1688//usr/src/kernels/4.18.0-519.el8.aarch64/sound/isa/galaxy//usr/src/kernels/4.18.0-519.el8.aarch64/sound/isa/gus//usr/src/kernels/4.18.0-519.el8.aarch64/sound/isa/msnd//usr/src/kernels/4.18.0-519.el8.aarch64/sound/isa/opti9xx//usr/src/kernels/4.18.0-519.el8.aarch64/sound/isa/sb//usr/src/kernels/4.18.0-519.el8.aarch64/sound/isa/wavefront//usr/src/kernels/4.18.0-519.el8.aarch64/sound/isa/wss//usr/src/kernels/4.18.0-519.el8.aarch64/sound/mips//usr/src/kernels/4.18.0-519.el8.aarch64/sound/oss//usr/src/kernels/4.18.0-519.el8.aarch64/sound/oss/dmasound//usr/src/kernels/4.18.0-519.el8.aarch64/sound/parisc//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/ac97//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/ali5451//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/asihpi//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/au88x0//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/aw2//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/ca0106//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/cs46xx//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/cs5535audio//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/ctxfi//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/echoaudio//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/emu10k1//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/hda//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/ice1712//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/korg1212//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/lola//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/lx6464es//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/mixart//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/nm256//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/oxygen//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/pcxhr//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/riptide//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/rme9652//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/trident//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/vx222//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pci/ymfpci//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pcmcia//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pcmcia/pdaudiocf//usr/src/kernels/4.18.0-519.el8.aarch64/sound/pcmcia/vx//usr/src/kernels/4.18.0-519.el8.aarch64/sound/ppc//usr/src/kernels/4.18.0-519.el8.aarch64/sound/sh//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/adi//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/amd//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/amd/acp//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/amd/ps//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/amd/raven//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/amd/renoir//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/amd/rpl//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/amd/vangogh//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/amd/yc//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/atmel//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/au1x//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/bcm//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/cirrus//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/codecs//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/dwc//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/fsl//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/generic//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/hisilicon//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/img//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/intel//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/intel/atom//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/intel/atom/sst//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/intel/avs//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/intel/avs/boards//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/intel/boards//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/intel/catpt//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/intel/common//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/intel/keembay//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/intel/skylake//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/jz4740//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/kirkwood//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/mediatek/common//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/mediatek/mt2701//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/mediatek/mt6797//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/mediatek/mt8173//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/mediatek/mt8183//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/meson//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/mxs//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/pxa//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/qcom//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/qcom/qdsp6//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/rockchip//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/samsung//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/sh//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/sh/rcar//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/sof//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/sof/amd//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/sof/imx//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/sof/intel//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/sof/mediatek//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/sof/mediatek/mt8186//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/sof/mediatek/mt8195//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/sof/xtensa//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/spear//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/sprd//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/sti//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/stm//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/sunxi//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/tegra//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/ti//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/txx9//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/uniphier//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/ux500//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/xilinx//usr/src/kernels/4.18.0-519.el8.aarch64/sound/soc/xtensa//usr/src/kernels/4.18.0-519.el8.aarch64/sound/sparc//usr/src/kernels/4.18.0-519.el8.aarch64/sound/spi//usr/src/kernels/4.18.0-519.el8.aarch64/sound/synth//usr/src/kernels/4.18.0-519.el8.aarch64/sound/synth/emux//usr/src/kernels/4.18.0-519.el8.aarch64/sound/usb//usr/src/kernels/4.18.0-519.el8.aarch64/sound/usb/6fire//usr/src/kernels/4.18.0-519.el8.aarch64/sound/usb/bcd2000//usr/src/kernels/4.18.0-519.el8.aarch64/sound/usb/caiaq//usr/src/kernels/4.18.0-519.el8.aarch64/sound/usb/hiface//usr/src/kernels/4.18.0-519.el8.aarch64/sound/usb/line6//usr/src/kernels/4.18.0-519.el8.aarch64/sound/usb/misc//usr/src/kernels/4.18.0-519.el8.aarch64/sound/usb/usx2y//usr/src/kernels/4.18.0-519.el8.aarch64/sound/virtio//usr/src/kernels/4.18.0-519.el8.aarch64/sound/x86//usr/src/kernels/4.18.0-519.el8.aarch64/sound/xen//usr/src/kernels/4.18.0-519.el8.aarch64/tools//usr/src/kernels/4.18.0-519.el8.aarch64/tools/accounting//usr/src/kernels/4.18.0-519.el8.aarch64/tools/arch//usr/src/kernels/4.18.0-519.el8.aarch64/tools/arch/x86//usr/src/kernels/4.18.0-519.el8.aarch64/tools/arch/x86/intel_sdsi//usr/src/kernels/4.18.0-519.el8.aarch64/tools/bpf//usr/src/kernels/4.18.0-519.el8.aarch64/tools/bpf/bpftool//usr/src/kernels/4.18.0-519.el8.aarch64/tools/bpf/bpftool/Documentation//usr/src/kernels/4.18.0-519.el8.aarch64/tools/bpf/resolve_btfids//usr/src/kernels/4.18.0-519.el8.aarch64/tools/bpf/runqslower//usr/src/kernels/4.18.0-519.el8.aarch64/tools/build//usr/src/kernels/4.18.0-519.el8.aarch64/tools/build/feature//usr/src/kernels/4.18.0-519.el8.aarch64/tools/build/tests//usr/src/kernels/4.18.0-519.el8.aarch64/tools/build/tests/ex//usr/src/kernels/4.18.0-519.el8.aarch64/tools/cgroup//usr/src/kernels/4.18.0-519.el8.aarch64/tools/firewire//usr/src/kernels/4.18.0-519.el8.aarch64/tools/gpio//usr/src/kernels/4.18.0-519.el8.aarch64/tools/hv//usr/src/kernels/4.18.0-519.el8.aarch64/tools/iio//usr/src/kernels/4.18.0-519.el8.aarch64/tools/include//usr/src/kernels/4.18.0-519.el8.aarch64/tools/include/tools//usr/src/kernels/4.18.0-519.el8.aarch64/tools/io_uring//usr/src/kernels/4.18.0-519.el8.aarch64/tools/kvm//usr/src/kernels/4.18.0-519.el8.aarch64/tools/kvm/kvm_stat//usr/src/kernels/4.18.0-519.el8.aarch64/tools/laptop//usr/src/kernels/4.18.0-519.el8.aarch64/tools/laptop/dslm//usr/src/kernels/4.18.0-519.el8.aarch64/tools/laptop/freefall//usr/src/kernels/4.18.0-519.el8.aarch64/tools/leds//usr/src/kernels/4.18.0-519.el8.aarch64/tools/lib//usr/src/kernels/4.18.0-519.el8.aarch64/tools/lib/api//usr/src/kernels/4.18.0-519.el8.aarch64/tools/lib/bpf//usr/src/kernels/4.18.0-519.el8.aarch64/tools/lib/lockdep//usr/src/kernels/4.18.0-519.el8.aarch64/tools/lib/perf//usr/src/kernels/4.18.0-519.el8.aarch64/tools/lib/perf/Documentation//usr/src/kernels/4.18.0-519.el8.aarch64/tools/lib/subcmd//usr/src/kernels/4.18.0-519.el8.aarch64/tools/lib/traceevent//usr/src/kernels/4.18.0-519.el8.aarch64/tools/lib/traceevent/Documentation//usr/src/kernels/4.18.0-519.el8.aarch64/tools/lib/traceevent/plugins//usr/src/kernels/4.18.0-519.el8.aarch64/tools/objtool//usr/src/kernels/4.18.0-519.el8.aarch64/tools/pci//usr/src/kernels/4.18.0-519.el8.aarch64/tools/pcmcia//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/Documentation//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/arch//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/arch/arm//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/arch/arm64//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/arch/csky//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/arch/mips//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/arch/powerpc//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/arch/s390//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/arch/sh//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/arch/sparc//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/arch/x86//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/arch/xtensa//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/scripts//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/scripts/perl//usr/src/kernels/4.18.0-519.el8.aarch64/tools/perf/scripts/perl/Perf-Trace-Util//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/acpi//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/acpi/tools//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/acpi/tools/acpidbg//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/acpi/tools/acpidump//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/acpi/tools/ec//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/cpupower//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/cpupower/bench//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/cpupower/debug//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/cpupower/debug/i386//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/cpupower/debug/kernel//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/cpupower/debug/x86_64//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/pm-graph//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/x86//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/x86/intel-speed-select//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/x86/turbostat//usr/src/kernels/4.18.0-519.el8.aarch64/tools/power/x86/x86_energy_perf_policy//usr/src/kernels/4.18.0-519.el8.aarch64/tools/scripts//usr/src/kernels/4.18.0-519.el8.aarch64/tools/spi//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/nvdimm//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/radix-tree//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/scatterlist//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/android//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/android/ion//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/bpf//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/bpf/bpf_testmod//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/breakpoints//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/capabilities//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/cgroup//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/core//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/cpu-hotplug//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/cpufreq//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/damon//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/drivers//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/drivers/net//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/drivers/net/bonding//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/drivers/net/team//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/efivarfs//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/exec//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/filesystems//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/firmware//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/fpu//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/ftrace//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/futex//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/futex/functional//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/gpio//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/ia64//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/intel_pstate//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/ipc//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/kcmp//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/kexec//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/kmod//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/kvm//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/lib//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/livepatch//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/locking//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/media_tests//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/membarrier//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/memfd//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/memory-hotplug//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/mount//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/mqueue//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/net//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/net/forwarding//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/net/mptcp//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/netfilter//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/nsfs//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/alignment//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/benchmarks//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/cache_shape//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/copyloops//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/dscr//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/eeh//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/math//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/mce//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/mm//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/papr_attributes//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/pmu//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/pmu/ebb//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/pmu/sampling_tests//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/primitives//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/ptrace//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/signal//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/stringloops//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/switch_endian//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/syscalls//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/tm//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/powerpc/vphn//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/prctl//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/proc//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/pstore//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/ptp//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/ptrace//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/rcutorture//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/rcutorture/formal//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/rcutorture/formal/srcu-cbmc//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/rseq//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/rtc//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/seccomp//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/sgx//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/sigaltstack//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/size//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/sparc64//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/sparc64/drivers//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/splice//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/static_keys//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/sync//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/sysctl//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/tc-testing//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/tdx//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/timens//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/timers//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/tpm2//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/uevent//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/user//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/vDSO//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/vm//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/watchdog//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/x86//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/selftests/zram//usr/src/kernels/4.18.0-519.el8.aarch64/tools/testing/vsock//usr/src/kernels/4.18.0-519.el8.aarch64/tools/thermal//usr/src/kernels/4.18.0-519.el8.aarch64/tools/thermal/tmon//usr/src/kernels/4.18.0-519.el8.aarch64/tools/usb//usr/src/kernels/4.18.0-519.el8.aarch64/tools/usb/ffs-aio-example//usr/src/kernels/4.18.0-519.el8.aarch64/tools/usb/ffs-aio-example/multibuff//usr/src/kernels/4.18.0-519.el8.aarch64/tools/usb/ffs-aio-example/multibuff/host_app//usr/src/kernels/4.18.0-519.el8.aarch64/tools/usb/ffs-aio-example/simple//usr/src/kernels/4.18.0-519.el8.aarch64/tools/usb/ffs-aio-example/simple/host_app//usr/src/kernels/4.18.0-519.el8.aarch64/tools/usb/usbip//usr/src/kernels/4.18.0-519.el8.aarch64/tools/usb/usbip/libsrc//usr/src/kernels/4.18.0-519.el8.aarch64/tools/usb/usbip/src//usr/src/kernels/4.18.0-519.el8.aarch64/tools/virtio//usr/src/kernels/4.18.0-519.el8.aarch64/tools/virtio/ringtest//usr/src/kernels/4.18.0-519.el8.aarch64/tools/virtio/vhost_test//usr/src/kernels/4.18.0-519.el8.aarch64/tools/virtio/virtio-trace//usr/src/kernels/4.18.0-519.el8.aarch64/tools/vm//usr/src/kernels/4.18.0-519.el8.aarch64/tools/wmi//usr/src/kernels/4.18.0-519.el8.aarch64/usr//usr/src/kernels/4.18.0-519.el8.aarch64/virt//usr/src/kernels/4.18.0-519.el8.aarch64/virt/kvm//usr/src/kernels/4.18.0-519.el8.aarch64/virt/lib/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protectioncpioxz3Taarch64-redhat-linux-gnu                                                                                                              !"#$ %&'(directoryLinux make config build file, ASCII textASCII textmakefile script, ASCII textC source, ASCII textemptyOS/2 REXX batch file, ASCII textassembler source, ASCII textAlgol 68 source, ASCII textUTF-8 Unicode textOS/2 REXX batch file, UTF-8 Unicode textC source, UTF-8 Unicode textISO-8859 textPOSIX shell script, ASCII text executableELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=2b618bf3b9568c38e9e100c96852c5819702ed3b, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=c6b2907259094d01911760b7d43728fb95bdeb62, strippedPython script, ASCII text executablePerl script text executableBourne-Again shell script, ASCII text executableELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=63c69356d43ee83e2da6e5558f81344d89d4fa45, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=9e422182cc2db351cb0a06e5cce6866c8a40f75b, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=701eeeb7feec080096223392458ae2024f937216, strippedC++ source, ASCII textexported SGML document, ASCII textELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=5b9ddf9a596e3be573c6a8126b3d73cccdc5d78d, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=c4774579233e627a9048deee2329911c0e1c827c, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=6cd58d7335498cd9f2594060f2245a82496ae33c, strippedXML 1.0 document, ASCII textawk script, ASCII text executableELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=6dec1bd42db649e340c90826d27b1ff3105095ea, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=ac6ddad026c6f61ad43fcca79ebfb7438ec3c2d9, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=601673f32451cf50a194772e805440f3620a2747, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=eab71ef1cd0b0a1028e056d31b1d54c00eea3fa0, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=96f70e9adb9e69786a5e13aba6b283f6bfe8c023, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=5d469feb4236525c427460b6375165f07e401c5a, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=d1ffb6a0b9efc6a9d9b2647c2d62ccb7be9cf313, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=171d1b2957882174c092f5b925cf5c10046b5232, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=7249120cfc9a1a58618de33cabd9254f94ad8cf2, strippedASCII text, with very long linesautomake makefile script, ASCII textbisonelfutils-libelf-develflexgccmakeopenssl-develutf-85ea9ce51165fbb9a925ee2aa0f37447852c449df4820141a207b459ad7a16433? 7zXZ !] b2u jӫ`(y/ٻG<ũ؍/{ q!=iMCF/'<}G%%فk{x1:Qc!ŔPKL/Wg3;ԖujMxA]Aߩa imq2QC@J"S %?ͿI5HDKft'!'lv/r zvjv(u3KĠ]-(Ot`-i@hm3iѫFL(n 4( B$N^麚$ͲAч`"(wّ\v><'4{yE*buF4.Ʌŷ˳,f9H.?^ ׹q ǯ2HX K 5GKK qb8_V{=mJ7(2Й;vTA%a"D!A;㋍Q_d}0''/NvɆK@=J@{SZQQ%,*Pwan+LSdpR@#cBLkr164/ bHꦥh6Ӓ+*Xcύ=sֹٱihGrejVUj'FI;wYSՇ܀6sKKT˲d!=2u.C֞Y@ʤ -ֽ?z*@\@|=+$}=0$4ejEi ^@V)*16mo;,+}4NH>2;k/TmϟhOk!V.f!qA1PBLo*BMg?H 2CKT=wQ|j\E(ix%kPay\9Uw("2YͪpDXqW;̣RV@,vΥϲuPd;VVOscU9c;^p)ls7c[]cs=A<Һ8:e>IG"Ya;p˵ v0R2< ΘIq~pֆ w$Hlw3X.xG$O aY%vt_DPJ0t$=U?dη`tD_gД q%l$]Ek-Jj`LsM$%{ ^ ۩Ib+ ^IE^(2I0aX5UWBbjIHcO֐鼤yN';HL+.  #e/ !0RvV{j%|;*94 kp-_3qʄdAڋ̃G`5Gt ~VYhI{\Y*$+uK= 1LZv >bWJ*ȌT gy% tws/qw`W(z# {94ӮJ~siN8~fc{+erQϦ3tcc?HjjrrWabqGMʆJv~R?tdq9!ν.RԫIѷ2#OPɊst_W-sTtWEVZzٟejHRPc H|{3Gi?npvffԋDE{5 nɿ+8o^ z;+si\RIqr6dIrvD+AG.FZFE<pu1C'*(bT.Uֿ-YyY6p G |9 HzR2_#\tQoLN+ RZ? hn؈R*=ѪRҝtdǻW@zoքN dN\/#" ;bB _\Dj"GXQDz3!8p4=?٪E{ZF.bfQNLtKPx2MY[</Gº'@wd2_iGFr5^xoHI]wQ3Oϛ*!呡 (}d&`6OgԍY=?}u XvY7Nt1x)1XC6\CArf Kx=4VKNV\5βoLrD]'X&./@b؀Q]#Ar"x`%f\* H-q#'tt=Ot-ZܦmԌAi1q6Œc| BD@n/n;XRrIOWIYYQV}­nO[v ! bnm1,/Q#tc)S3]ߏCڟQ`ԃqڽ}kk 2y9;r*ڗ3Tڴi\eKjg-urA2AI^aYQ HQ4ȁQX A1v 8n@$#44H$=, T6A9}S(<1`-  4) W 7Td^@x% mOƋd?gY >7}.#f}UM8k}Rv-C- 4 _VZ9{&GCAc"%+OS)҂!u/!7&8'gK~Eb#bג#$ c!tYx mBEl  zv$dmKm!f @C%}hmSZ$M+IszS|NnNHhIگ rԉ]`ėԧPX-ZimRa Kh1,t0=  UDWiU&{2;m5V{x$@XTxδ%&Z,@Id 9zrL[[ 7,$c{(.ؕf# s.ύYm9e;GQ=hr aTnrP+Z@ɰ۶K$C Bד 1y: NBBzm:$J" x/<wxr,ߏc&hM$𰈓pYg]. ]E 'K#&8 .WcGǂߥ23Ѯkr6hJ+ޝ酪KSqqXf߻)_M4c&h,q;Q{/#;L\!~藍a̓5iEƐ< }ieWTU4)<p֩WWǀ#_{ tCC毣wVܒ |r |>:-n@hEWntx jb mV> ᧥!NPyw68\}}у.Tg-}8,4: ~VNS%N_EGZ׵AM\cu΍M;wȾ>ȃΫ;t oT]b\T)L pWӏ N|-`'GMC?]S.Q&6}:!]69ddY޺3_ǂƦhJL\o#Qݻb]ߔL֣:BuP'E D`L3;9.>tآǾ+9gmTkT2kFcev%[UNȹ6)zJ!5-pJ̱Gݐe^LHHÉP`sp%5S(zO䭼ڼ #RBug?D8RDGrYVۨV"C2. Z*SwO7C~%Y,juND͒t1~ *Z^Qn4jx5E)fUD_.G>8J't/ ca6U;$0Sؒi Z~Lw`E7v]j\G5fƼ9~Uh|?7xr*yy}j MyX*hN,ǭRDeA3RƄs([!ЗN1OG4(-IrWO͙ˎ\1JqTm<#"g㔙7bݏR;RGѮdv` &2{Rli6zC]ȠfkǴyDdE.=Y6hsuDExw`ênx=-gyșL>*}]:,J%ub,@+HXlq݌髂taB+ƜHĨxG̕ _3.ߊ#2l?F\93Rz|S}*?5._CS (:,i`VK`Z ?eL0Sm\V(ߘƁֳZ MrZ}xB"]c&(RX>T߅͗C5}(}nHv~''2`E{iĠ(F!ss~\ yȧC>`{T!irGmM1@B] j `LxK=3nMu)E02Wq@p@<ܸĨ>j;͠qř/K/Uޑȝ2,ґ^<^3o Dܥ'k`" qkZU_0'l'_7$}jZ!QJ[ǔ_D{Sxy۷G/!!#z7QBP±6pPH xF *˩ʹϔXPq[ض]dSD5d-mb+L!Nz{X *bAm~۔-(ک֫1CQq^=]N_檂]7N7ҍ? T!DJ\a2>_{lbo ~|*]E(SC_4"|UB&vJ ?J3a 0U:8:Іݓ D6d{;W+FetׁiCU'3?m4kq1>B0Y?(1v "Ȳ4 0=J P".e\)8M@)XB !DfNDj.X w,5K Fs)t20)I ڿMh) 9§d+4HRZBQL!?w~定t , PLy|BfxAd̫beɏ贫y@qU ߩRɓIcAMz!(QGiյS55ΙS*՜n8O;zSl߬f@Aa3gb&,י{PT(>c*?˝\UP}oG)4߆ _5-Q`,u{V YPhz@̂EA90٨2<CR߻"1"<Q :;x=P~&J݁}j:fjPYjkefkdƞT]r1;s$iG~Z+ƷTnwa`a i 8'N|^%?!B#r=-b8>z{=< *:e֩,ZP @|fz5pg2UE+ ͪlk=h e]Ƴ^4: pjuA-?s2yփHw9DD5ѰAWKVݥ#~.Hp7xmfz ( /{wGWB<?Ĉn/ΫȟC> UqxA!{3md[DZvCG?2~X3!L[N3*k7r2+<||+۝E`LpjPi 7K`߽9-5OBC$JQ(o γvV6ޝ|6ӹ\vLs#ӌwRrq>UWu<,!},~VNXqn+'"4vȝdDiZ{>ϋ; F(+X0_(OaqagS4k].ZhNaiXu.;.&v*hՄ/U_VGOonv%OM|hN7J>Ҹ;CjJNRN@ϡ:oA@R>TPoE,5-r:SNS莉k{mScʞo߭@` 8C{cfuvT{)?R{&#/a+rJ@H 'n&fb 94ߠ/J<@ZnFB/{$zeغʜ\qsLmXm*RJ?r[XdfT\s_ޱ'8uܶnhߥ7JPf!y)ӽ>._T;JZj!|& <ưLX!xS^ZdR r1D]8o3*Us|'YBn w :T.s8xUts>̨\?7W&KkPWVִlglaY1:H9!uZF۟8ZRLNfլA0y-:N!p c4n&va3i  iDk=fL:+ rHVeĥj!K0D6=}מMafBx 2҆r2L͏ ƭ*77%0s`Y,nswKǯha}$+0xg=@:S9?Raի攒GeI2"sWq1wvee$3ZJ&iKCk7whY7Ajq[+[OvrSVHN/gֺ{3G;y5p u4'TjK#poD Lͻ+ƺ6&7`9K&7,7'˪v*N+aRՖ96XUs*\lDceyx\i"&zJoz0MёCqcúJ;oadl"X8+߅bM(X,p=8tHa %p3e3W~ :DxtoTU;S=){<짹 U*;x:>/`o/l*1ckr̥ <dT%B) K2TYP3g2 I|PFS6QizkSU㵢OlD#]{7p!&BrI#sIWb|Qhr݄?|$"RAQncg/ sV = & HcJP(0sT%{pMQ)4ooĈZVa"1+"^85(7nZG,;|(?VԾ$T'% qgc3z^MTsQho@e<'VvM!UBi._AB5Wɮob4EkOTK&Ğwacyԅ]m (w,W-=K{4,Pd{9o%Fr5E 龚\l4ky{iO.uQ,(}aL)n {đkTPcCPp,ZQ :G?)"~R{)0p O*/LQ!)5 #=Ǡ7T>sT>+GSϑ*IT'D|Q`2CI'YX{FdXo8bzprLF4߸WF[ϫ,o7D$(Qewya qp-nih$x^/UZQr^}x;nٙ}m}cYopghcv69D(_VH9>(s3Cȉ.Օ8Z5J+c{ƻ%AH $3w_Wy{ JP\*DOڸġjɺs0]rCm@zGW I4|] <hB.A>` 1 yfjhw=w(f8Ԋd N=Whi"K*ݰ7 9)AH覺 (-o±wr+-P-E$nssd 'x#sϙ` ܠ0,j++9E;^I6sAw MT8{€~|![މ#s[wт(;62Sq'LXwrQ bĮjl%yeFT]]S@58 c+#Yvg1htgeAS0H(^;/!}^'\/,v+pjb  X8gE$Xlc$r]e:WUI5cy%I[g]SUPMҷH-fdDuߦ=J@IPYE%.N:c&4wftڕ:S2uX/VWm<–1_dR% ʝHښ; O 2U9,Xx(DЧ9YQHo`UŒ$8.V|,Eߜos24Cc1ku`TL#yj!S@!i6L𪈧&IcY+B㭗/4b[Q[}mR;: GtbU0b !ߪZ.BLɽO9JĢ/9 ]&t >ha䃑iʁ]֛(0+;ah # NҝǗ5 SBƪ6O$PazqqgBwSk| T?%vUCqGǖ(f_] !&rCFiz!sSb^|l{:JhF+r|izxaBAHi7Lt9RN?= VVVL:#\ Yh&ҧ . Zt !Mnm&X,F$qJK(EnV)Y4T XOnn^ޓMLZPJqĸH)](k/ Y 3ӵރG_1HGy8EEXLyfUr^р" lk4- M~z% $Ff6T VAxj,#E,g}ig ^>9/3&1Jq bV`pT3fXnܗ׳S*) <TsGҔIFdw "Hz3.Ddjl )5ޖC+IW%Ai̇8ON [h`1T{yp`VFHuMP2f¤ ?VmyaAiРM~mer%P"f<(Bz`&VAjNڐi6,w._@d:dk^dF2anuE}>"_9qbm99ﯩl?qf?l6-λ!go1돤rG]q;PM^dCd.e.N#Y- U1ӮDVPk41 ۔r܀Ss ` lX*T3j0uH1O: ڀ87@hEmMeSsy? 5t&R;))sǽ /9~e19◗`Ze`rgF?W {/Aڕ|f8B;:N+$U\INdc%ńJCĶ6j1a6L)Ϣ]468n@s77 [(HRijYjx)\%qs] V{0H> +&`*j +Ѣ`!Irk͔Z<&N?k7Ks_#/FIb`IS̎x޷쪇p0S34/kQ贝vr 5~yG{ ET#iv K,n6bƒ"r/8u 4ʈ'IfT,Yk.vbKzSGiҐ($rKE͚*^mPYFHTeWpXO;j ``A:IF2s,H؆]x$>_Yj(b7P( 4Ԥ%ғ+8q9VE7x:{_#QFа`bvpUXH˝(J+uvҮ*պ3^;T)_ )1Iu7pę4q}1gBu+"Cg#|gܠ^($(7GQAh}un-nk؁RT<-|:#b\Gn୍TLj 6+bI1/hTbu;4 u4.4;ɍA ~eb>8OXUj@;5F(v rAr8YWWv mdaǮюRV^Ot-eJbTF,~AzFf_IfoγQ?>CG6YйѫkppRamI9E-3l򑡘~H_XKPA̧m]l\*.\$;hηE=a' MБ{B"6u~}y9s%d>I|`LV {Q.-ik>!mgպ*7w]CL5K&H=c(ڶQjBjGbЌ 2yep@Ut3WݗLL#lJ)Ƞ.ҍ00&92 ۳ ^VNCKGbZS$yZp.`۲#CLu)m-+"BE3'nHMH=5zE|Yզi6dUiGfx00 sIRf Wِ)1LqcQ-3g)~``tG~)y/7P&,qz2Hꙵ,,on;4KHAtŽo[E~5_m1rbcszz ͫI=s,b@ZAvCx9S؂QPvg>fm`\l,zz jwT`;s9=s`u !GpDKE5$v2 힦d7xNH2w(XYʜ zMד x.tcYj)ظɭ-r=qy$e~, Q_p4k%RUFϭN |meQOMC8ЧC{Ls 嘛o<'e"I˛ wI)#=6H-/2`[mWNϭߌ'IɆ"gK@/;x#9>P`0飨UDz G-hEEEO˵p>.hyZ8%%SفNK;?08sK"LͰTܦyR#.^f6`Ғ Z'"-,+3,|&9;[婫ͯ24;s{PQ*#//Qr- ITVZfMh¢YCYb`vAqڋ 2X+LU0\7zS>ѩF\ c1q69SKZΑ"cGtV6ȱl?α؅cXuߔ&^`^޻ ˚G"{? i׶1Ed~s51(Pp?t#fj!c׭r9HѴr8gLmjPTP˕E3'RfSO4a}U22Ҽ6;/og}m\o{ҁe|)).w Ri#Sh"D~Ըy-8I5Ɓgf).=BM6U<>Zݮ AJBV2[g:fo1_LS9>he7frchYj֍6e(E*{_?0( ݦJoUanm{[p&s{n%)}NX ̛CoL[Uz>WHz痳y bZ;QsM~`3CHhHE-f䜎b 4#!ȧ?F:푎'aX9±4w c|C،!Ǡ{.-emV&(7gӉ};esjB6F#zHڪǥ 1~5ɬ_aJR] ` 1*R4i,wYe8Ɓ?KcY౹kNQK{l>c(&rtLjS=Py{X,>3im4Orz3[^{G8̦3RKYtLUe `o.b)K ]Fn&@n\Fg*od;:s뢐(vLU~ ]XJPxa\UX!/@cPWx(X9)(qte <tפTUqAۢ3SӼe*4ظ_xtC@n<,9uJ >r}Q1t!#L/3rhn Rј)@8-UP_q;axˎqIF Tx0ҨM;A2WB [Q1~olZQ *ֽABfiC?Vo$6k[N7doTzgŲkՌ+y F=I(}4LY& !?nzRc0\ Z-1)-:wc")MfK[٘:N# 0f-B=*F5ۄNJŨ/ Ș0ZLe_IƄM[Emu4Vj'f@y6g@(/ƃ*DV|tpUDQKA=+϶Khj[Ä(Sw?O#F #ؕ$sEPL6G314a0 ݏ#Kɨ`KǍ(qp:xP1n[̡u]7e@ G0\TW̔;ϡX> 0|MI9` _AEKrL`9SJBEn * b2~jT^E  RRSir=BKTUxs,LڣHbt& 1sC2g*93˘Q0v#D|%ʐI _1 Ʒh4:YHYcr9cI1B])x pufeóUXH. +0K(3sfʇNhU:VaDh'i[I)c⨀]D}J4o-"("j^дK5Tż)IU 1E\wE OkC` Ndy qA 6Jw;i%Cin6R suW4n-,, aB4Ucoи ˡKBEIkИ߉vLb a&%ط$Y'7: TLv ~SWޱ e]v]lL| _wm^Q ux5;E) O̾y1<\*i-\({îh;T7qܑ[q ԽQc!X̙ؼΔ̪=z{ Yd:c6en<(G(3/SScrPL5Q.6.FT"gMT:U|ؒc)5ju@Ry@:'\3%u*_ V0b9t%#Ȍ I%"+l;bI?ǐ> Cc岅iZDki9xv&g)j=U.̓A/Pk(XK0aS`Eg6C !tEi[jjd%k6!CG'>~5Oq\!`̳?3KH^9ƪcH8F"rD}_e8l-Aih'"qilQ5"F 0Eo@-vKGiS^L$?^ڌ;8λn3^9Ky}^aD8cxI yTM(C>FZwLWj3f3{N0FaYXW`Ou- QlJ$)qtJ8&5fU HN Rߣ鱠w BPҲXD;EvUN4@Ewص>#ʋ‘{$>EtbRv &vrULCȡ~8a) vp v`mL9CfU-o TU P2  folqih0:M3s̩{*IZI~(}|*Ƨ3:>k>>ˊ7 Sea_v[$D}z3J pշL)50ZdP1*ŹYD&{8qyED3rpC3l]QE޼ݖ&:hLS@# $R In#Ծ'}Gg:hQ}\*o)ӽ\U]Έ1`bq e, b`uʕCdQW='pD+ $Ք0ҥ3c% rEV{'k('٭a0V5b(C1p߮[ ~Mi9'&{jڹՀXH-(#ڸufnrXi 0{5c8& ;27Yy,5_gl RCȓ8yRf<|s+R0-`0^:F}+r'- PhxW2iR_K),[zS^ψR#+뉅v3RC ~_9_Hl@Sgxa$xSy'7{_͕ ->" }nHHRxܿ38~S5I<_f&VBڊAR^)_+t 1ݢ,'[6£SiHx71TzH[óB+LSK]*83tZM@޴==c#Lr gL,+tU}}ė4H#XJ=|3pw4ARqSuΡ$$Uo7ȖTĪtT0s7H@osG ۖșMOu>xui%0$Ƶ4`R OHNf-?ČתM|/\evOkQH`&q/8|[c"’l5F3J`~W9P 1tKZQ*k%FI>RUMʫuIm%SvbDVi7 dz$R̤3uZdh>ShAV@.>r&OmCKE.O;h^PJ0)WXah}˥NEҹrFu9y% U)vhF%i'iQ/fB??50exuy(1xz \ 1gg]*6bC*9 ^a3CHM8Mz `/D:Y_9)twP'l/UΕ{Mc"b#+x |ǗSP{ՔTaz+G`p9/b4Lj4BA :0-IZLcU{5VP>@p 9C )о نr)\3x/,M/ rr1;_Ί=cpZF,< m7>Z`'Byo"4٪ u" 8}z&HA" =ž!, }eeY8fx\c5qϗT@љV(}tqNc7WԂaUi7J<jki~;)ZњZH֫  3ă?o<ÇiKs+J! `7zJWF,Yb>5)PM դVkxb?ReR3cEta#}*JtF zYtJ%5 G~G_T=0ϕq3 0"(q׳X,.\#)>`@-(Mb}|k{1DW4t jUlu,w\ 8mBle; 6 <1 Gr4cD5:rFnݑ&QKŞ\Q襉u03qwCrbdk K1=z}H觵ZK|dQ,+iCzl;6bD'O]2F"QnDҵTCӆ~0͞s|* <+Kҟ4-<ǙWmMJ[)p=U/j^ٟ1 ȹ7Xe{\ĹO|hm,o>QqZ*b[b <-NC U&jD"ө'kPv{S*[>~1A?<̏>EJS56s:äR͛sVs'wxͤȾ$|g|:8 ÚrC!bB^9pRxy ")Ui-evw<)Z#UR{h(>J/ dr(з4m(ZtɮC۷vːz@Mk*&LHަ=4iim\1̕nG~%IA;k?xh$Z=0:cLm{-+̝%AvYKzv f(T ֿ hA|}Rv0~9k21N/RJї Y-]Hsus︲D8?)A"v8d *Y]ڊ◄* g@hx3vDWvAOSf`%xNI1C"& ᘟ$Q*orڀv`n ihDXY.˚Ƚ9W{&1ǎϛaa8?nޅ訸qל08U﭅,>Ć)^ !H5Men-; lhSB:vSvՇ ,1ǞىehF3@ H@蟥 9 MRSBy ɞ`Y;QKA:j)=HHygeM"lu fqqdKh[$AKprkMIޮjX*hi֟ڲukl'>UI:Q`E\Ʈ }]OMrPvK1Q8-4ƃZm»"3$_ucjaQmyYհR17iBO=lYi03}C; %i+Fmu4^44wH5S@RJr{<⫇,3)j^rɿט ՚@zR04|Z)ܺus%ޚXBc'VQ\z)MIöD@\\|_C.` !( 8Q}7>S8^gRK8'[|Gt$ɔn i.gN= #\scnWy/wx#gF"`t݁5GM0ccVmIs1h<#m-~ު.7yfdzDǷU…70Z %w8l.^qN?wDL eq^8݄gޥ~:Mx(ePuXw7xV4kx7?(0=,ơ* q3ڀo Bnk`pWaDj򠆹Q60ɹ"i~ggpYfm$" (ςAdR{K{X==:lڛCdMx`jd>^GE5hx0T% ig"LC2b˾>.*(*ɠXM˹t?+/"#u#cKHMTڳhdC[ͫ Gg"E̮f\D@Txa!4qw+f7b%PǑLd͖;CMS`ʘ%g I fUMweD|[Xs̠X/c-rZ0=GaRk@(S-c%+*aBFvY$Z k=Lol ]QcQ7%+8WZ=TKvTw_%NӘp}ZyL 6ƓN?\#\='B- Wwxo fZ=tkvg6zKޓ(PWԟ=}4j_$~H򑀴tL 8)e ѩ'=I 4[d/[ HmJm|,o,!w/KM @k- BƁkF].Iah7,h Җdꦻ\|e4X߼UYHzu(/GjT?ț3ʫha0;!@:]D]W`s$8߯[*G1Wx~Up . ?mޚ-h*C )uQwf!< 8 /rvRe<&7xWrpzR1ZBjf#{ +J?%$eBC6 h5n9`Q'6?c94 ReC:cM1|*VNpv(Se->ȃb)bИQK@*F㢼:hF)Ma *8M?o*I8Ύ$& VzPCyC|CK bsVe>-ic>+c,ʽ''h'VaSw QVDV \,Ƿ9ځ~6VxD^CkF߳J\FK*udg zgDB]ۋy# b,i \"A5?f4FScEֺO6ٛ̀ Hu=ݙXNC=h+S ˢ=Uń#aďgsз U|r+[?Wj6 vqqѶ"ܑAyjEglltO/‚ K.s$>ChHQ`5k|#bh2C&|JWo2OHg_M-pWdrHE-A{T㌉]tM{>-J=}.:k?C]ʓq m_Q{ܤoʸǸiW*!`={8V_;mu#c|RAek?#T4o3GhtT$NOQW Jgwm] fbm:q\|?GRJXp,AMq'<-aߋ+A"ꦃOdX]yVθ`mGzipFjA4p}=0N0hT0nTn#AKg諭-4s8_SlۄGxU"ʯKZ+ ^nː,Ds%qvL&sd}T&gL*@%C[ j5+:& a:Ae 3FȯN23䴯Q$ *O7G >gg#~w@dׄ֍w= c]ԋF$ևuS+p(>֟-<](-}8 bHAu\4N?V. 60?PHW(hFqcFO ! Mau^3Q KC j p0,;jo{ym12YFjUQG 'T7P3m)5+н cMdt^-`^sNz)Gl}2l\PSD2?x؝@=$9+zrt J!8%I.Th51BJHƎU3;r'i?ܦ:ѬEEpH*BU%w@Jw.w0ːgi--z]R+~WŸT4݊[:թaEl\!^砌!ǜn,X#D-At }K?S4#(c(>%[3:'2DQ9{(2`q8< xlkG4²0}|Ͻѱ}_-ڟ~дmuZ\@s}Oe@rUGqǫ'ϣB^$T0l.;OI)Mr3]\d G+L/P11PƋ*&PGˋӁRpB}YD3bթ*CW`TٌrZK콸 w"F4 b@$Ǟqd0.q" Af,b84:|#靕 ߳) Xܶ[T;S\_8U+Mӛ_*{J/wk9j z0ﭥ{% #w-"~dײ $أ{WΠTk7[Fn16vG=V\:G:!s=Lƨj^G!@bqY%f$,~%V~Gk)t3$2:N (tqJ0lBYU(oNYmN i ȸFѺ&みf4t`<F ㇜FT2"cQ<5a+@@>tK }RդCq%;ӰV AYerٶOx+~Kl(k[?}^0M+Yʼnfb ]n: O lYsri4æ0)ܜhUjt\7q!@/8)2Ee ;(:>_%GuH+l>= |^?Ѿ4!ժ}+vƧ5Sކ.hdo=td7 Ð=g$ {.1=ti%Zz߸++p74L +S|ۈM&;g#B)ӿ<lPMA{n'l"B<ʳiXlGK‰<Rْ{c&ZU?ᨃl6U =ޢ4ͨۂ–#B zʲy-h# Ԭy­P wJPw--E&poD,X)PG#_d|mVy Xh$OtD` q Y hA}dJN!)Rs8e,ӿ 4E ԏ#ESZZ_=DB~2"lٕi:X/rzV6pfZK`rgvnt]$Ͻ}%0fq md(ښBx:Vf{f6 d5qPw=׻MHC Ra/2$u_TrǶgYuxLԌYN @Y:E FDZ˝gZ!VɲA={Z>d- .!/i:Llayn?xu#x5䂹+%#oh.)JpaY$9e/A*hNB` Qf9X(qBIڙV,0ߒj@ht:c0"-5n,Ftر"`N~w wtߴ]3kkϾ7ՕXliV\  B\nAha@m9Jt0l~ ]'nWl@Js8!L)$L|<ǩSNiUPuG^|%-Z|KBclM@?(+1\Con f%xHKodPAk^@CisA9{1b>l%]#kCd$y:o.Ӡw6=oAR||㳦Qrn+%R)v'<+r\"]܁ԙUa4'yD2RDgu%unMj(!G:dUy_afB55+0IVȌ(]jf(Џ'}~[il[c{'bd |_7mQo]p|$;qרsOq~n}%%p<3YnU6 zN;O53@}QF!)#\ztC|8B.0qH(^g$t4 U>y ݮgIV/`^zuGӹ LA έꊀ+U9cDAgU!hsW%9EEOU3ẆVMG Jb#; PO棜NC/;xe#oD-.|doBdv-]еC捳R*bIo>/e 9}C f2i =0TtE3]6WҎLǫu֠ 9g%>Q09Aٚl N8%ЮJ|PMwΩ *[[:YHFRhqwՆ Dh2mJq XAĘ'`]{ՂԠz(R<y[dg^I~ 13%vmzfNzG&b-~̄(`(?D'sb\L-g,P^֖X <ޓLWJ5Oprֆ +Y[7U1 mH>ˡM(U;2PZOU"͢Ѓ "S#lLq_U=G6;/w[chC1U{?#~Oؖk$zKO9A `GlO38>ܣ|ӄO ?;젰%[%,n'LWM-`ڵ3ٞOc\RjoWꄱȢdL_VU↙4ڄ 6=b` V8d4b=T1=(82ŒhȑM4poxZk,7;sS*N~6 Hv.29?dr/8 G/'WH3NjDh#P5Qbߣ3Iqk-Fo%W ipb`2^E$[>:g|iM-3]Gdy{1v`Ы û0mXq3e >@l;FFXOﶕxb-Sx+Yh7PaJz@K(:͸'TLxURLHҰ%#CmPM&m١oA `)V%y{aPDCC3FkswʞGz}b5 spD/~-98u0?KzK=T3UwPZu{av/QEr1# Zv猀Dq=seBŖR&&apzTK:KC#/r, mgd3/.Q,:D7=mE!Ө#ҭ/]O6qw4ÉsXzZ+tɔ`9>Yd/V >Qt2QFKjwW$p$h_e~a>6\;R눀aO K Z1ߜ&S*nO#.0ğgbr Ys(8& *WAE:?\m5:GLIj0"6X4&ml/ l}[殌iBEpztiz<Q~vM!vMG"UuiD:Y*gȳ|3RPv'u 5F^<8_I G ]npR?=ͅ&FtєJݴ$>%¬=paNe*G] @e]70(aҷ -xzR*u1(Qp<AfFҧ&).j*Puv6ǞbGݤD 6)rP,hTQڢgVd෣CݢV ūߔpMajUb$:XK0~{!& U8Pnu,iF.hB_Qq)Kοu?_n?q]It̿]Z¡^)>Μk-ܹ(($AJ؁$2Pw+9/}-:"\/lq ~ 3T:v}3?2h+N8 Bp? !ȩZxL"{?Ma=@wn)szUnPj{R[G]ɽœV'6YL. RmxN{Qw*vF\.tq1BEzfn3q" -& ̎SĈ6 rapuBi&2¸]a):He`~MXX-5T^$ Tb0#OnRމ69y(Sǃh!SI,POkI%͹ ôth8p#:j~ >x!Y~CqK31fܬoӅ1 !曽;&l$IollOn+Asn&rn Q15)SE?1)ʬ (8罵Sʼn3^I~=ipӺz2ieQ@( 0;Q\n޴'a ?2(ꁟ̳X:AѮ9)dWb<jjn!eZ]Ӥ$.!Bp?93Ie9pvܭ wqyyQ&ڨSG'5nD،{qf(7`akq$+:ó_{ϫ{_/ҹخxŮC܀ߣX̻M(>ZM5Ӱ/\Rd[F1Fn8 /|-j#ED/69)rV'7##1@`'O._D;K<)((ch '',.7 %ٮi *`Fm(1z8W@}n7d{ThC`S;h:Cn:!P+[9`ԟS+6C&g{7s8!^_^AUb<\&6gĞ.&!ۮ|^3JTT=KԾq:MK-+"' %; `Du7kKSx"F`,3 &HXxcJoRT`kQOOb3K@:`Ч 1 qB]Fq1OcD3h!vù `1zry)ٸX?taig y W[ >XN&K8PmK <\>C !{(P ͘~##l~Ik q)50jL9a_7ٞL~ 3zglOu(6/YJ,_,519:g~o)S4[3Nn&tܓܟR(E¥CtS`#i_(uE9$8 #Eq#.=4 dyV WX!5DǪ5U&&tn%#X+U!$tJ}besoD  0J*`,/Uً٥T)\҆-1:.={FU櫑ͣ‚ 0ou#~oCi*ZMn`Y!7tu oؔ֐ T`:+=sEv1ӧB _s&`?i%{/sxɖ6=LLAb /{n0dփT2Ak9dҭ SNN0Brb([]ᕙ֑&BƓ@SudHpF4dQ$cwhǰILR-̼e6a+PRK#z QowgQ?b[=Ne$KwH;5G 5<^oJٱw_dغ쬮QL;8 e'01e0{giGsK' fqCl`Sopp jqS`TѕhIvPg~ ߝ.BhOgrkXKܬ|UN]}3ޜܗDM"X峫G(+YN^> %SW9hWڥjTZTYֽOʴ?*IH92rN#ffW5*DH4{C5kJEF{cw 9it\i^Px-zllu/ɐԹoZg*zqщJn۸*^Nj c) .e>HuT|l)Nq+m"-zhgu[Bղr3˼]gk`PHXq߿}W"JL$%TBeHd.L@_,fۛv΍ϳ@ >$  fp$}j``vsl[m#mVA.11 aw&Lg7ToO-? 'f {:vGD(QZXyc tr8"-11* q`M=HNإ2ReEh 7Xwx`][msDeCH*Nޭ!?aP%"Cf㚎@73d1S*8@<)Y!]^"GSUftɼĂcØԿ[jќx=F Pu)j6!MǏ$]ndWYclI~Xo{%=c#Kżc7(΍Ec6g܁;g0+\nIݩ DTR-Us#ؤ69ͼ%Zy%S/8AJ 0҆iz-G.9qn8[ q?F]`aqB% 'EHXc i3=fщ;z' *oߊ1xJז:VجWN^u[F:?ŪOI,T}Nz'lXx{HDЍyb[ݫco3lJvx杠/[.nF_S/sM׌"곦@ўB_A L%xc~<!挕7 \&&7=P"8zn}Pr bHEVj.3ŜY\ z<GTfpaL>J\/ e$(@ڱ>?4 T<0zĤTŏ)c"4tU͹?h8%7,%Ƌu2ic6Wö-wۂJpb\*Z ; "hhhAY Zb,*ٹnl({5CKOWҿuЙRL5Ξla >9ǓRnpF>Y q+eM/H.7Zq {kpҡV~|:NWͿw?`u|.)Un4+z}'W 6܃^JKiv#MehR1:rRST \[*fgZ1T!/<& Z&ѻCfv>5u-w:N?5@'F[ -pBp>ջ7x2PѱycL -X8j¡>͐K%D$7<U? <01-5>{]DhQ+¾XKeID'=4NΏuK*gG4ܚX6/<-FHh>w(ڷR.K /R柵K ]0 hwrӴ DM`}ʵXiP;dCD`PoB'5izZzHDiҀtڸ”s%/t֝5a~VD*v(}& wұRtκlZ"VcX ARS̘'&&6`# 'ʧV8v[>+׊yqnΐ%U:bp$͚tw!g5܃$AKp׍7b%կLIH!$ovy% 'E_ B4ir4}W]/aIDHEEȬ2OzoD`ʒY Bڴ.㒭pYQ4%J/ɗ5?% uԈeSGԨ+>>3B.LO4i#$+zUg*Ux-M\LpMeIy7 }/.</j5i5jCzx2N\N`ҷ[KA̶ך5y KY&cpa{(1G m!.'՜ByNjSmj[Mm9>$H0[eqA#kXIl~aBGQ l3 htҬ 2nRT̯qӷ6EXz8=qs O^+g%U!7pOV͖[K1H)($ylNƦ9rcvM( oAZ[*`|`h;CM)9zTgiĦ XPc>fy'sj~A%`-"@L5Y,Wf|m[ظ!34:r-nsk67*;DɨtEgF,3rtΐ:e/aa5OLKaRW taDorxἼ2}Se>į^ LhZ1Sw]Xf4}yx!ʲ$:S# ;w^+@E'żGۃI7RhXL(ik.ɗҗ׍rzҼ˂f&=oV6)F8Xϙg0ƒ- Ե w6Y[KD,|H}bw@0'/^[kڲwNdvkB^Ƚ:Wޔ+ ]˫"- mٱ@y^{߮(jlM&`P. n5unm'iF8`ұT#ڭu:sPj wZ\#҉_/b-q y,rt7iMnTֹD{ï)PD$E= հ @@G}A(P* ||0m#k|L}{U(oƯh6vyC'O߶Ecx*лE y6923>Ldwtx9}ϗ$ո\J=9k>.j6z&o~&}^7JIÕoL[}> , )~\5]YAId){/e"נbbu9`KysGoOm 3cI?&Ym끣~թۗ;wJѲEes"RV&He#aHLv)AKGMX3ñmPyY#Cm a:ډ(]hb{d  */~Z5}S^q"k2>mC{SYl= Y防VAd`\G'%[q`טįj}ȼ&ǜ *l'%g.b~W q +x@x6v!L'y=ջTų) ň AigΣlf"*3GC^du}p裈%qczc{t~ *Rb|RO4oqL`۪ =ޒz-6iP( AIEѾr)ܖ6ȔRaLs)Di6gFg?L;1_|1[%"4##h2R9~'3FeBLD.ݪuGQ<JtfFШ~麹ɴ #|ejgi$JfN4r`apj qIw[h JÀr⦔=!A.Bwx/3GmMx,ocr翬!r˂C9ahxą(!)0MG/,oZ%T8h`z[ MBN$ XV^A׃iQ$|=!f ;鼹Toࢁ(D`hgKR:v<  niy } )J%u/hGfM.Zf^S vvO<)Ů`;!@ 2WkcoX>a[_mLnKe͖G>RV r 3q G1GG0:|pGv p ZdNS0!Z^PC=Aͳ B>8X)K*n*ބJV:}",-ϋ.IC\BH&?<yq^X#uO$&"7~N~-4%зCZ^tř\VNgpM$/S1+mg䯦eI>|{쒶S1n_1 Ʉz?M5jIvH|U$FK;g)Kq7b2;Kxw87QC #hiA_Dr^WRO1KoF#_dºmE+ EN 4 !W}υ9NHB _\ru)fGublŧ3g $&aeGy1P=t}}6/G񈸝x\ ~~C/Y&=W~ kuLb>|J֢?Q$uȣېvNnOtH6Yߙ,ˁhMqWCv^hƅYo 8"ystČ"0Wq]U­Z̾mE%DW~3H8ξQSP$.(/ Ԯ6F{ehAWUD9B]!} .$T& 3 @ Ph߷jM_zc2SVo,0Wx:GWEb,͒g-=umkcܸqބ_%luR!\fKQ y뫊JvI{=Y(ѿL K׊-%8 )Hf Q~tRD6{@}֭ʔץdaS\ e5)&k}߼n9rxM&͑NMVD3,->(۾k]bME6, t!`Vۦqe !u~G@oRTՉ́4 H˰'yn?.[.dp߂k2aiFN %EL1J_-zdR3Wsb0o\!`N!yŔ5_M7M߳sZJJ507 Ġr|TDBObz2[vZ26{WP Շܹ^u BJ"*?v(ëVn ^7s%k !HW ڨ<&SZ|s{F0tgd+ 0mgk{Dg=,u/U7FIW90_ȨtP`DmIw;'O+-% VlELB6Dyd JZr|z.>h\+NZpa7.M!aOf&y4H82ЇڷC:yIQ?#e1ʊg]\;~wobk5JkAmcf %fk`A`?XBɞFc]bVM‚aI\ [XXT@%LwV)8cDDӡVzu ;8PI]Svn4Vrtfj6JhGּ?i?fۭIpGNFտ]V;jH8pѐOI7+|ǛC#"̋ouӉi'Pq.>sT`:,:R2U^SF!}abU C+y+)SzYv&@ߜs/譱!!`(>nT/OSp}W^Sݲ.u^^ƬdG ̹eaUzAelnM )#B7YaZfd,y>f ӄ =w )/Õ 8-؟gA-&k`Kb&^X[)$u{JiA \xl.V۷GWmߒXf<'jEK@#yzr6. y uq-ɨ[ʿ)!@i*y=P<('inI.mM<(kF>}AxE4Z/Hѻ}2|ZA $mXftB,zx_?S yJk/ U4~ǜ o8jxxi>KP;^E%ns_ {Tf ^#!;XlPt7F Z\71]Qtab@r^j| oPRŒh?%DzlK W8rݲYgmY}Qls>=^6BɅ`WGƹh9zahطŀ ]ڡ`m1DK:Y}ջ.`: rsژcn&҆*7zO^YqAN,sqpKMeS*}EOعVAb&9RҏYp,Cjο5X| >ǞkWI"C ]^@MqA{9W6iCA8 y;ǔpb{8S!K.=1}GZCmY+lĨ^k~ֱ<f5Ĺ{*k~gNſ*<';+ -ɤֿ~ms#M P Ўˑ|ZLDNobS(p kQPqs#އwksr2+2A &BRfV!:q@>HxGA!/^[ u7=)BFD*=SnlnCeADxq'?o^,A+cb ~B'Cµ]VԱ+lʣ|#سmWy4{_uphJqg猽t~e m=k8:ۈ6B/?eHuw?l+-.L8!՝؊yԛ-V!Zm=<84t\x:ux3@,h~I,vb+d_@4EϺ qeVUdaNgdK@cp ƺTgv]GRڷ@>oEcV\,@u@L$:=ړku~3W6 ʄֻ7naVR=W\ءGTbu8>_T ݂~SwsIu5yCzTazzW-h5z=3s~խ^Oå;G?.WeY0Ұ2VbadN>n龞i0+Ѭ׀~56T@BOWlqw{9#PGAcѿ sX}"= %ʃ7I9M:ᄃy 'R#N,\JC7FH'nd(+MS#<.DWBq.q<4vcGAP4 : 6˰m uW!"(cTnv;kFM1{xȏ= x ">s>IH2k+k~%]b66J؊x jQun֩BE]zޝ8sq 5vW:4AWіM^tZ^_"d`J)QK([t旾1ya"\" TbRm^ IһN|zB0[Pڷ3 k=FM{Ѐ"3.5wΔ]tAF n]m6ȹߍ*`}_,4[N yI:pd1 _֌}RņrTul3)7Ui%B=_C"wII;LjNno4 >>1zg:NU?lֲNrnkVwQ fjnE¬Y,ຼvCOLp4>T9/-G9A,F Cé7>^/V(|iȕ[j@j-_OzB8(;q?{\;9tPʧ#uA$RV=H<ʢ҅Ca;X۴xQ{ݘ#3;mv]OaM@>KI+]Dha N5knv`V?TtjXf'W}9hOAZoe/߅WJMkr+%-_jMX}{ ZJlcх!ziW6O: b blF:;rWۯd5ɘ\\ftIަ#V}@t@_ 'f% ;*(~}댭g"I0woDF3 j)&$j%(b^IRw7+(!Ghe=ɟT%m֕lR ~LiXɚeϛRKM/ArCϪ%U^qidx $vzaMƃrkѕL]N;qvzfiI]jaDV'6X~D/>i ] !!bb'K|%;gZV_\ 5jM 8>PN Kh+MOͭ`"YQYOy >zn^uwiĀ&zp5*hߪLCA-okěa+O)"3WR}2ؒ'Ke tf寷$Q[D,]=Y5SK:ۄiDbtCNJA,%Z* |mDoW֔˺A`hb%VPC#$ rDob&%ܷܡ߻qTPJ(a+]_C]T xRu2* 8p0 >}좖U(!` * 4V% u+#]7 ۺ6|¶73Mv% *fN1Ғowk1`ѧhscr@ vZrN$:kℍxZ 8f/]Wʋ_c.{&㧱p]#B}*KQ ~ˋ4w[ ?)UEjpԄ8vi^i`(q&b+;?W@,Е8W^.wh)r43׈&F!.+! u\E̜B &oGp&SfvlQr{ud(_b bgl;.hM0٪;Qlu 3\es 9 o5I ߕavEOuSWάͱLRgb|H֌K1 9#{: I 4A]]1Y/]C\$(7moR ve@BXW^o 2B1qaꂿך|ֈ[ [sɔ/,V񒓋 H43u}`ˆƹQd93ש &C%YjGđKP;܄Z'jxI(G@G*DyIjd@d?T63Tt56l7@`Ԓ9 0E-`]ut]l43\]/{=iHjِʦm7,WKqw8 k6b5Lnr=p`\rf] , cA;Z/匿{i@QϝkG#אCyB qdjbӾᧄ3(T9E:$?)d0gZTMRo?!' ɢq\(C cEm~ 499UNufp2MZ,ra ̌-*pCk&3ZLQynSf+w-Z9\y [,ݶ  j~~>a2q~ P˛|$6?E|z&v`C)9(]60ė\E 5v$eXNv"7Z@4cM^=^E^Om` Ju#M6ID 慌X!u7K_eZkڻO8">?#(WSuU5eU"Ò\@CzD4sz1v R"b74e}/?R,H dk5g=\쯺brve8:M)ltTuw]<(a~C%bAТNSg(˻/Ɏ( ) E1+bK(zT2,M"> ~"7'9)z w㹔BEpB( E_l` Fa˷!o&~C%/fwMrFp,&.p;aPU`[@:_$u;?Pțh=[;t'$bAQ o &ܙ] @cI:)_4SggAf >x7񫋲NtjVޗ8=NGs^BDN(r쭔TjN]g+q"B@kО{kp(>U#- ~Sxt~B(|05pKUBfObceil4BgZ WX/K:KTRg/S~*8!ӕ4gV6;\gFH'vRqt :B6 u{24ElEf*ZNB&`ŋx̿aPAbOdP7 ۃd6ՌW&$/sʸߍNED%V4 OԭKyd\ Iβã|"-PL8vB%k ēJCxR`x/T{fWkM b鷐KRhcƠ7toի04~7`4ՙaEA 7`G*v .t:[:Z8gdKΏJA/o.v?s5QBi:{Q%P4]vx:KLl| }Erii+m.;?܃ K (?Ǟs]#v JE\\o%㨶(Č7a:^qU z7փSa3kq pYjN搩OYlb @EOE2;Ӿr삜Y(/V{1zNgƇzeZX,eـVh2GT{tFUh)6^` <ϸPDuXӠ|aą\&7~w /TOS jBTIKJ*45F8BzMzpSFVCfI :ds2W&R|-FmMYeKT ~ƈ%*SXMIT*JUܲvhMWw"їSAKp܄R T|Kh0|MV0r\v*@Q9AԡsfR5 b c ~Jp{K'fC,J19OLER}MmPZEF{@NDDCoźCxPUzj2#Z>@2c,="Baoy?OV R/W)47]ꯖ u:;TZ IIv$+eXT0>6Zezvv /J I zU@e ,UVoOŏCO5B }$4|M0)b#?S;x)ʰ?Zd]1r)gz-=/VVnGgqh4Zo4.Ȁm'4ڮ}OY@MB #]r]00 '1p5|9KbYҁ7&~ HYLmgXO ߟ;^/0.4pR'Ş WG-o^K*74ٴwZ+QpGA%?ǂZu9$@mR[8;)xD5tӓ˜pS+2Gt9}VdITR-Vf&- dpWItխj=T-TA?锉:M/Oʯr zlKM]2V:$GP?={~%`sVBwj9 c (Im+*;$XGJ6!Wn ceŚH]wB3>/{ifGl|h̷-FJ/ "30)YGJ T#%|ž~[ϏEi~I?tH㼹Ûۿgd\666JRSxq?wWM7PAtx>o%*T#dljfqhFTV8v2YʇKYw#J6Ȳ+k'^k hRH--Cu$E ^Î!)h(v#i"-i7JltTzIu# 7g8t "Vwڋ "?N ͦ-w-YQ.E$e!)M}]DAfmY7Lb{|1%yā["q<:]k{Z=av(;l؆?Oa b4][Zy >́%vt!<QR4oONG|Qql ݇vtqEJJIy:7Ї"rchN>@JtW=]A,x'A u#ޛrs~Ѥ> dA7˜V Zdᵬ\Y~ciEKȺB׻#T 9Zn}7\]JjQQ QwG8cYn-iߋFf~m#MVK>MrL5`HDP$![!|g)THFCf-YӶ$Mꮀ=N_o?IqbAjSDbx 0?qBꧾAܽݳ2cx<7 !_ƁKϬCZ>,!YB&8)v+}Zn:+H< +U㚓nng @a_@YkcUr[0|A(x"Q!rV,[FVxCD|ZV)w} V6o9=n|;g9lx3G,cBQ/uTc-_Nwhqj,΋rDF<| 1'F ʭ!XiN2MVmglm݊ic H,yKf-wQ !ئ4ag(AȤ}u]yPOND9 |q=z dڊ]E`+vLH%DAΒ0"9PNXyc"sǝJ;Hbjp0yqn"RVěK7k dҸP0ylbqg#qʜwΕlILGwHK~#gv5;Ch9]Z&OA1dRx} J}Se uuJ(Bda ;4Ӿ|Pyh'_Žp5uFW~!;<(ͼٻ,V(zTg<^ށQ9 v&kTG|B't4-=Ђa/Ox*G84xe]$(mHy"r2g(f!"_? ʋ5TmdN0Hu0?o,G]c`V"74kW/+qz+۸$/֍u+EK2 <'1<5 z@ a6 s 3@kwY{ܲs&}x@qcB~3cca%ϭّEsFA,0ל8ZwHicVL,mnW! e;e*5q } DFޒV~p/Uʭ AդVΏQ^m_x1ՙWز9AR)7(8L.$fv 朒͌澢P0{A7U}4%[֓zdݔUoCz!uaߌfu{4yy L1-j;ʂQ>J#Uo.׺,U-x*$go/sl[k~6/H;#LԽ3Ό +1%rRS'qhgX{ ζA&Ҥ}hrυu &?!~wQ1qmۘ R 6'(@ӲCS Bcok @&3 ~e0!\p2>ݷ!Ў,N'&|I e v5r"}fig[Ʃs60n?/IVҙ녌뢘6$ڡ!y ;#_)^Wbj8&M֌OO:QyJw/P-ъJ7K!/^5<85:>~ژCy=N$t >}ҁ 9rbt-|}r?j7۴9X yh t#N Fˊ,"!sF̬j ƶT$}.|,e[ t}Pyh&!hK4mS Űd >P |]YD".-yzqp$~"eZ/1)!kXRj9K~irfd@S %1>jzTDY"?-'+1FE5Zu-X&R)|ٔ<=>3jz]Ʃ5Iz7H'ATSDrWKp6mi`{ ?ȅLʩ5|JX 8Ki zKg%ˌd)Y'+FBEAA c ͆ ~JpWkTәKsMkUzDéR_N]n/$~v8 6rR΃C D6cDZvzXQV iRqf2;!LrL6ZۙQZgcVCk7]{$qxnq@y<`^ZiSr:V[ͫiۧ@[0AR|$8j ,#@. n9nAmZ `r !nCoaGaǟ~"G@l]ϳsN-;L=_Ya۹x ’Qq#(6!&MtyS3UBpFkdՀ_:>M2ߐ&N5Ai:ȕ' Kİ b3b |HTlrj3bP:_}V;B,' B,r4O,Ч*ECoo3x. *DzZ"k:T]* j;@GfѰ9e)٬_g`[s:<3?3E#L ~4 KqN"1?VaQ bU%Mm~h~7@-{J`)T %V'Nng;r$0[7'[&_+\NE?|!>N|~Fq1CXYWuٞ:DuLMz"5t`>1%2hprҝUCys`=8̀ߵ u>TU!:aZMhpn&WYX9C&E ~C>W[y~v^stbQ[;c юS-;rCDfrq+^E3&|*oO!ט'/z7J4zX|M^tH/^BLǗ`J0mHFwrwefW\NID9GԄg=\lMԅ}[S+0ж1Pv-t82-SW.x@X3 yZkc!oyb6һbrdryh|.jS-!=*#d&). "&8RI(Vzr_N`æy:rCk˺ 빦Ch0/8p+%X!.l?3o;*(Ը/#Ac|-*'cC3{_v$Ho^ݶj]]7F*a!?O)-kp {V5b ڜWnuwCCk i>/\.ꌩqi= _H1չ)36KF&&LfI\6&b(k CįhP8\s4@9 x*SI&ws;Mc&dۿ/5rgWIa`Ne+q6.+5MWkǭ^@JFP Y(k?\~[ A.Ⱦ ԦIlkнJ ;]dEyabnM'ZSr Ur%jko ߆c8hX+#g,uX^F9wDbH=A8A(퉜^R6nHȦ?]]J(ɛ=k}&*2;,`_˛Wjc%ȯ2g1qM"uħ$ O͜'#$l) JS 06# <&Y3WS Bn;ype.іrxMU㕠:!ZȐU¦ҹ >8qH'yqeaɅÿ@l{bfm+/I$W; 9zXHnʅKHd FBLo`gK8_?%j4򼬞Βbc`iMg_Oή%n$ꭐ\E$&(B#JͅKT\ {85{4o4u0OwFbLZlӋ`1;0 1N;y"X d4{$I]Ad1X!nm [0V0Fc`n'Se =_k$~KzL(ԟ{:/ ;hhÂbKKrDωrg.yR Zv ta1#ѰA8Zlg!31l(eL"FůoL rN쥍}YX*z+h,r5GǠ;>9jyh69JUp #6cz1&'ݢ4#u[)Hj!qmW+/ɩq{` LWVS/g0 oqca1%%=jYiQ$>ҎS(-E4 ]dLj.z GUT8#55m}xi6^!_TE+!|r@ɹX.7+iX &R`DXzZHz/+ 䜡nJn:1ee S3Bvp0!$ ZxP@sAH#Nf_PZX)_3"usKYliFGckX_,BΣD((+81F zhW|q&c[gnB5ƉDpU^~-7^( WIߵ$5ZkO4Y<\&&33W?kEZBA3ׇ#VT,b j6ۺ${ZϋΘM$ʍXLR\rk )..Tm*lܭXC 7;K Rԫ_zRўg&9f}aٚiOV2xr;U:-)h('LWqڗ4dI(9 TRÎL I.1/|yg9+d8m]pGeGiz,wߜr ,1R4E  JO(Lt,72YnZZ_R~ۭі~txYcd-'noԕRg^)~DTK-3G1^ ۓ cSZ H7EQLWnS$k5@8=6wUمY{4ITN5s[ֿ\Ȣm#v`"lD$5#Er$St[0;ZhJCbCkQ٩H2ZCS]K/ip@ iÕl۠_+ Dd5 ZJ)hvQflw6UFlKs3#e`;'v(AsUWc+WsJ⨾5nף{$I+?7k\gV6DEЗ3c쵊aF0,ݐʼn?9&S ʋ\&rgq,Na?BEnR69"ZrxLVIEhvw.~._rZ2`.@v ;f<^ze˕Rl5QGsě^tev#RP4lsR;!D>bFB' 'Kɨ6BhtSئ)ߵOBoݤ{!=gY^x NsJf[vђ,#ϏZ?u%+'0g+F _C n F= #t.G)4U˳ >7VG>.0 KqTTmBG#/g5)Pn?3ѨȣYǮt{hWڛVg$vϊaKMJAD^[3Sp9񱇶9ik< + a;Xm|\~ҩE+JO7jM(LCjʏC7II7~ȇ(g0v}{T#Tq|9$ʿ(3u vur'DjɪGOh]FH.9=@_eO.=.qhTM#}\e (wxBòo?(2:כ|`Gg)7v~ ~asLsUE;S՘Le1(VrGH1hudpYpe|`R= [Z8Jz2í:]3Z /C|he8P%hzFߓS.o~v-=N8C/ra9̴q鳯ߩ_[xm}/y퉇)ZǢ%'%b45B愋"̠Ѯ Ǥ*Dԝ .t>/aTl;*3 hW*r8}X\guGbSu'Bri hDXc7ty%1.4GaMX\:ޏ W5rJ4PLY'4JT"G}?xE;u] }[ϋvEB$Z\Óog =jOim6L7 P1 oY|#pN#m1j 㩆*;*%>w~l6^3-U+yH )/%ҵ>JZAuQëRxDvEaBIY#P< f w\ iW[4<2X[\)@3m )m)\&nJ`aWj֟ QwBQH "#OIc|Q9:?= r00?0ɴ;3w.γ.>O Fcp@})U1eDMҔ'GDڙ${p=լȊh^Q\7JU]l5PQ7$2ao .7H:q)*,Ss鱭&8]\p,LfP6+WJcNF܌RW蛙|^^GJC|"z:<+ OwQLrX%5ؤ+41ϣߵQ.!WZD<[rN{(EgG:R(< O_; M  *:[@e&nv@An&T UmGd8*,w{H:HQPPv(KBi'C~_i$wJz6bG1w8CUD=Fs;.͟N$`a_mڮ lf5LqwHril!K!rp-Go9%N]R&y|UYXF*1@@խSMv)"iHHoo(Y7cEe@hW@RnC_8WRFDu8qO֫Od%r?X>?DkI.dIM=+칄BA1[hbb`֨2>:/P"jvx֞9Fsjg6k/ڧ0ͪ!=le=Mk,0>C~ܙiKĉ,ru@3[=np גZI^ThygQYOt8ԮyN^%cOM\?).4t`HP-W̏td `jw#7eRs)d@bn|8B;@!ɥ@dtRneZ"mȥg1R gnc"K +I^^חOHy|'G#}葱2KCJ:}XIxQj$zpwL6- -=xAiJkRƚn4iv Sa@f* }WH "Ĵ˓C$?ATfB"zؽ+q򉍩$v;j`+э' t"d4 2>W ~3ZUop;E)_5<g+FH%Er2AEQem0˜a={CiO!0Ii#K AQS B!ݘ-_ ҡq>kD~گDL&=`A?RDg_ M~TJy! 9-/>l:/9)י{2,HV(zqL#ܠB݆+ -ԺaD r؏0|ň: ebkNqg(UcQ%FT㫋zH>>f ax2q&45!ft?Lfvϝ; m2$'V'1C5ڷT:U9|$ra NrlQx6;W3+3T쀴T.[.á Жf?s I̎nDkKO+bXJB IinL:i1";] v+p>o熵Ԫ)d5&1!cS V ʱ/m5ud~&K\@bR:O2)+S@e aXv3;QR_t;.K0Q@凵Ԟa8cК\qɉ @J" !Nĉ"&Wdq zF5F7|9N':/4.⪷A~8.9{Xt7g0¶0s!q`jǺ;%L̇ν]vE^e9m>>zgںB\@p c).h)1莔6P.q PO7ھڴ9??C~h\`#"G "Ož'/mbNoYtV7? ABKBTvgFM4F¦ZfX WZq]cؔnC`{ ﳵ5d v`qwL'yE%K#3y 7rDw>wC׫BI JA-ґʪ G3Lݴ\GL:_tښ*VKz&Iaaɑ r0ޭbaD삒2Lm{ꔲz3qwዖBmYlyKlnM|"tM6<8?|92T3!GWtLv ip^{jO]~ؽRPt`4FnƮ8yʼnoE)xM+>z p `Xd:0'%*{I$~|;ޱGtƎ۶N\iШPc`c'j5g yn_J캋HxZgE5" X^YhU~ԱP`Ut Q9( QpKPt)+>@@bOFu"p284f\z{33H)Z5M%2PBj&e~_Ѝ[+?c4* 1ZUjm*zsF9\hl _h:G~^IYOZҺ % ųb?=a}_DUc9>d2 0/D=s{-N'33@}uu!]D1Gm;!D+9 Pt ?tYs ;裲ؑ!Xpͺ ][v2}'є5pD%c̪W㷭}$B,eaZd1s,Uݶ9f'iE^|p/ܼ?ߺz>YMb:@~U,O$ Y!n2Mƙ n#&=*3frS͜~cFa[{0kR8mF𰔌ڑkh+c&0 V}WIDj ˗0x`|r!W"p'%0 `#Q/T9m;qY#ܕ("2`9=kAv^gg!k@tu-2! \ĺGdy# )4?&UXx^I(;N=4N-Bwy;m?f~J {+:1e-pTh ~{P2,\P e4W5F錹p_\Pzj"L9;+CN-r[DaY[كO'F-R*R*r 2@YD~kp8q$lr0aKQPm$9q:TE}ta6d$l j2#qz@ۀ_Ayg{Wΰg&D@Qd8HZ̵=9B"8t2$5 P3]4!Uw&h c## `0 E 8;93*C@wg|dW}0 h&D^o{H&ʡ{  tp )\vݕkW:W q=}z4r4wP|¤&Fzz8)P; ;.)jNuYdN2_:"*.-!Sc:KkQErhG.id\:ǙaT 䶠rSoe5RE7ЬiSlyRF2!<Eup i|4#AYuYShC­T+D eZPҖ䬁W¼ǥܶerDAPvjC p!M}6N nn]hs1UNfA[h69C|X'ݷ6^&@QV}6pI=%wAf=Ety"Qhyh4eD7F(c0؜X\ǭz1'{TOӏ!hShTt|=OT aB&dq1DnE9<x;Oo4r Sc1m(~SSWEOZ_@qjxQfv> 7SSnrI0Q}yB[kEJY#;WR98}36!jh=,+_k'.9v$`'>Y: k^EN?o}geUҏ p@$KT1:&ҶIkV4kcd4GE!1D6ԻG4 hGh@؅5(H}5M7 bGڰ*w_3bF>G-8GܛfR.aCb FOKMg KuPF P@~t?(CӖnVN,шS6$`6֓`9IG|FcYsk+YEBN&z8+yGAw6GGRxALgnFyKqI+ج.vQoeA/2X `a{U!7kdظwZW߳~CL%}?\ɏ!\x,rZp%ӣZruzd`oVjbT_` cu&Z[.A^;dCa{|QNiLC%[S~NK;"x*j-u)X/S+)LaŇEY9HGۿ(Ge?;,m?=<^L9Ue&b$,]d:Fl!X)KFK^FH!?װ fVEx*,!_4"!T|E5HM@P,#]]Wa܋ q޸0y%sZ\xX5]׋~2_XRE_ƚXZ f LtQUA 8""cUJfWvSߎ|ŸmtޢL(+TlB;I9ABkz^Ӿ>N@#_l;/7Bo%1=*>ghb 8AO̱Vkhb@.p24YĽ_uKV%XRX<1S4.7xVrR''7t;ϣlOF B!}|n>P5(ŚUDI6 ߦSޑ>X}H޷s#3mY*1(ZWYe)ٹ*$\(%T;Y$r#9^HV3y|.?Ù:+r/:9LiXC:sN! kQ/HI("nr`41 D:0j9{V5 1b;/)m1W1giͻ0KWs`PmIv7kTjmeNta.]T%z5W n&*njX4s0]R5-]vh~:Eŀ8"Skw`bFG-'T_?5h#z 2}w&Ưq;~,89UN wF7W^|7Tu%E;~Bx2bտ+o. p;sC~ҝ'"*n A>ȱת;X"ԇʎs2rXH'R8՗-C`C΃ ]Ū1ԺsC0 { 7jF" 4R}B6;ꮼ)EŻ#ϛbsGs3z㔺Q0M)naeqi>Nw,}VcCD]!agP9'f_68$U ?mz^$Q_3fxl2OuhӦrAS݊+G8G+#Z+}t8e8ⓩP3;8 +A&Oңءdw]dzG"w&,x!4amϕnZ'3 ]BnGm$k"[,'_"^q&VoA$ LYoMXóɚ'?Pl^+gl"|ԷO8Iw`xm2y I%?faE7twCC0O8"HyAsXwG q.L_Q GG $+PBO7T@c%p %8KǛ#v+M ꭸ"vı2dS@vȜݐ#rPcJO/90E0h*z)X,5~hJ !n%5:Vݐ-GBuRFM ۛNUPT1oj -E^8%n( h|sCUEZ ebPtf4@ŞKF:㺌cWAg3& 82˳z:rqA0u̱%<_i wЎMZjG5e NEKKQ|p UB̟OS)O\hWB5|4Y;RL%KED QvRpPr \8d(wriN[͍U:q=ROy̓m4 ~u%sW[و[Mk~'S\{69/wAjk&[䲍GǤ;f7b{U&Ew- ngeRϟJ%Wg#pw@]ƋZb%̿a,֡4} [NK:]jd1 SRb2:v@Sɩڅ:o"}69GaJ `IR1 鱨BQs*8}>&%s!:2ǵ6<ߓ~,=AV+Pa|%}Jڞ IqI)qmCŢ|ۨ(-@j_|ޫq=vo[Uٕo 4rV|!xJnkt;ᕵf\XcN FLP ]6Щ5yވ貳><%3cNW ~Q5|!G=;xл7^w1SUX˽5u+Q-W?`oƫnc`v 3pEn_,;Rq,ha|;ۙt+t/$y.΅OP`rt!@$K 66-NQ->\QaF}ZY"|UDp=r2aFoy=wQ"*5^UGLt[fCt&( hbWdս٠ /W)O<_IugY.GWx/k#ZofPfIGSS:\[0-,6^Q3JA$b`4u_;=P#R(Oz g.vM= bQ,(GfAGyWTi;肾*<빭.4`2Ij.q㩝Ƞ2cn$ȬSԬVKxEuDJ,U:uWe{0W2È|?k`E%a*Fp_^S-wF&pI]I kMB}uQoBQ&lD>/T2nhol-\8<a`ClA.t HG`hȜalwFӑ~\7yhŞr-U/q@X\uXO6|ٽ}292?G2˹;,d4~ %u+AÌkgŞq{9(*9IYU'ێgr-&?n]OR/CͶwR?pw#TjJy݆N$nR "s!IR_ u:^$[ntgOQi/3 "m}yS5nؖA͢ ~1&\v㬥7"m*yz; ~6fRY16~H_GT"S{9%}u|ͤѐ}5􄪔@ӎa0QWq Qen{b*ܸˬU!ucoB-.Դ+0+5RQlLWHE3nN9'H nSJ9(!5wFÙ=qr꽭EyMfTTI ]RBZ }\#V]+v1&:R\ƃ qP]*֍;D֌A (8kv=+i@aCBWᖓ2J=-?C #Y&JR~0@2 +g~r6-c%"Z̒׼su SQ-'@C|Yr13AP U`Vz1nH<9wql)rݭH?~hROݢ&xm0iiD ZTa5$uNMb&\| Yp$KޥHulI/GSEf{QT> qwhQTӛ!(D"'ԋJ:"R6;XפZ䈟ޮ$3Q0B8- ˻W(b{9,tMn/uL z )uG3(XFE϶]Z!kI,nTa>:5CdH@NAu5|5. #l;/qL|)Ŷ^SBeC2Nv~|X8d5Hze'p~FT)/Gխ ODF?Lngȓ;V^r7خ(3I#Ei0Jp%N VD%uF7βͅc| 1^$n;f؛GسâOe*PGpe DƊOĺ^?޸Hv4-d:0 zwMz7Pɺ$z&uwA@Sv -Oz]͈LH8M gr^EPЛp nQ"GC(ДQ'/oI+=n1TDBƀKLӉnh~#όQo f^ڴ0ٖܰH,f3fԬlRA_f\!C8sq+Hd y8X$Ж DQ0@atsQ F\ IMr$2A+Nha =8T۝Sײ]Gbx@IMG/5P^'1bwH~^߽߳E99_*\__hRn2!izp;aK_:}ޣ.w?DECZKrd lw ~<  ӽހ%L3gY?Kjru(Z*) ,q@WDD~S- %5[p XrT;xR÷)f~sMw,%]O>.Gݎ叀 ^d^9FBM֬a{kQ{R6< ̿G $(AoBW $qnuǒRu-lT=#E!NBQ6L!f^ k7c!N@;ۺ,cI: ͏d&^S7Lqϑ%|R1A.)f jv'j/8U!͵-#J,j[̸8Q Ai[jE7&v" yQJV#*GrZUc߬&%Z!%Ko}؍l(fq8{ũ2FzF&JU%˭ HcZ/3j8`?ʋM^`HQCjމLthVLs w7:tw^rNS$2xS~l9ISזa1Q@FMXGyHdm{J\|k ] U2OΩx8F[0 y88t쒹"*}})od皠1GInѦa;GEH\3a/)(oz$b ZH#Ewz7TU=*ۦ%%5Vdm῝d,?81&L 杴u"aH*6xK%jTs,*@ ԺCsUGTIH­)bu':ˍQЕ'e-x)Еpؔcbdᾤuvs_ "e("0y[A6H" )e\? 8 [q}Fv6o-po7űҩoܑyݸ*w 6ssy U14!WUOtfzP,ּ(6q+@ygN!8$i;~JND"Wfօv!F{3HEMEl+Ѽ}~-d5\Vm{N"oLH Gz\x(jC;x/:Ց| A@堒{qѕ OeXcibJڗ[UZDy]pl=bMK~^39+ЦWOgk#}j.ߎ|u]%ly>`KOWWvĭϳuŏJ>jɸ፜R7G=,,xb@KY`R ̛a\p3­~ -4uZ#"ͮ60p<2""/Ɖ(A+JQ|e/**Fs5S,'o V9;avP ,!Bhvޒn("#;gM҃L?I:jȼ20<$hg՗c;.@ hn.+֧qj!}$?G'bd?1o<_ԷkXsH 8[kQQ$B0*N?jBKbz¯vK y5YJvv['s닔ӳUK0$cSg;)s+*;_]Pw/PMQy. 5"¤7Q,&::HrO^uvg<&Q3682 ċӻkC:l!4˙c q̳qX,0v0Iu7Wjxb<{0gu6œ -QpuLzt G{,T-뱀$;BFޮmUS^cG`+cx 'q'sb3t.VVb',,+4 C8e5Q%JfA6:)Jq`3(rt qmWyG9 .㎦zsY5KT&a&Hndhn) Z:Xn,Kxfw ;+R,*v.jޞ9Kdُ YXs=(~|~6ټo2 1 Ra9O2y/JJdyGDMw_"*}+!oD#r !ͧoS; g=g;9/RoJBYadG0Uct{gA@CT$a^ץnٷvP ,.vy?F ĥ&>; g"'ArdҼ3/H䨼UaI o #xU1OGa*`lԼ Ɣj^:^&0!A/#D򩭊մf|mPs,+WX yֶҧ*Gau4B'U(*%F1uM!2u$OCu:Sޚ Ĕ3$yoarN-QrƷ+VCٜ¢YsnĻnfb\mM~ۆ칹\j#Gu7⑄^ VQ`a Lͯ>uzTv n7MOçR2_AɎ R&xV+xI DNMjW,WF "N.b`}z|A_ *l.uE ٫CE7TV6Uap՞& Ʋ.?< 6Z(Llx~^c.ePbC47wT̍z?E}v 6&#Dիb&.@mҨGt~w 5h8ǛphVI+IE欋7Nsf0e?`$"E}*8SH4E2%ԖokqL|F o{ =zcDJc*j6FyVqy!yd)ⅻ臵q79J<, FYaOx󄴓W{YtY`X x0h q!- w=G~US1xj$3niq.B_:6<-sP$d"pLҍ6! T ĆKgE}]cEyj IgdyH*X,-죻EY_ i=#a&ZNc0~r:Ѧ>C,p,= %@g~|i[1##MLI+B=ԍv`_{ߴ__4z;)I`v$z;TP\ M *ZgK4*N5R֑=1| R=T ՒN:|hs?s)"|jWw^9/ˡ#Q)u+? KW(D+]rkgk*Ok8\O{hh 07' +Mu{3pMj3B YW-A,IY0Gغp,JƱ27)g]Y  vv5;6"mTE}~@?ߒKeƆ"t>N[6ş|k;E8\2#Y<ܙ}Ʀg%NWEM7ƌB<|[Xu(٠+B6󓱄Z_K[@0!#ɤJ,BZ.^W3.r;⵾UKbN.J&')&8fDnEJajOfSeٖQN{/I^?Ԍ 'p5,(VJjSeqXC]kH /3.J@Ծq`l~)`4wޒ5 4:7gY[[zP9hI+i򹈳썎&%T2^5IT_}41bѴnN'bt+caTq8vfN'nM8 ' ˥ItK2`E׎|)"Z=L5qeu:Ŗ߲\QXaz51Rg[߬ Cy +[? n>0u?J,dI<Ԋ"7Ӄ.jK:fX>q> 3o :JDz\Teؠ411A F[}쌕7^9tW=0`PXWMH]+mvIPS_ k[Yð1n!aAyVr|b_7A 1_U,N˽)xU1USk-ʷby)1HWyi蕣ᴘbZ8,89G&֚ń$P<tvb"T,2j)m.PArt3h:n/;pKGƬm 3c3S@Gi5&&7_O+XQQK^ͮvBGrprb2|W9ng s,Fy{ѝ)=eqL5yú䫴鏌"j . ++GT?Y쑀hFLxtځH\3¨ZHR^"9;T 3h !^70._s'.B8If[^eW%[Ub_0Հ28k&xW}_Ǩ^Q7gQQTxjfqFc!Isir\UyY@,ce<'EOZcB=z5NU<Ta .k;15@9vLxy|0p7Z1GR.k0%wOf.8#^XZ>wtFC[wG\^[L ą@;"P{O CUr~gfV QN+](՛i i)~l'17ؑ*܎׫B<&DqE0^Xg(#ۤܣ/LCst(zX4tNW:>Β{9Ǯx\F]g)/s3x3 Rz'-`Etw`NG.{q_F"pѴG-QΟ"5M>V幠ph,pY(*uEl4D(8o/{ _ Iڸ#ɴ7`GVCنM?& 6#;/ / g"W*~7[9 SqUk-vH"t1ԏN V>P^ Z,Z3mX2ͬ'=ߟamރ}.UE,zK|>r[-@)?Dby3*Ԭx XbPq C(}II;a?TbI0zppDkSQ`oS\ WA1R=JD(3gCiLQrJ|s6iV?۟d_Bv"5e#i.u˺eƏZA=@]3Ơ(TK/Y`Fby+ى,CțD&Zx!,^IKӒ֎Z5!^H`#Ls.-NQ# _ DUk|"R*ؙ._}JXf.kYQA*K^'kQg *$ʀPKj=b;['>h Z;ͤ=H^.:\q}˞Rq^X,5Lf+K{E:\WmԠpb&XvG!GC_@ 4t  ҎC b]oV8ǽL=Gbw߄S^遄83-AJRdAc}tʯd3ZiE{\H(!u$ވr D*?JOSdi94UA6u;۷w `+Pǽr+vKFuұ3,atį.AM> `l?pnk]音ȮsC ] ~ٞe^MLKuR}*vw&qW;hdgU< )3_Ga!1JY`W>2E |u1|+تq>LQPā۷ GMF(Nq¢83YQY#gɇm_n: cUNORB:~Uca':lk`Qb+H\WRb Lue`"y3>Sqy[񸂺Ծ]unw%tf>6GdhW1KLx.[#8Dq ӟpýZ/!0Գ,W;6= 0Qo)R>A~IXza2R#׉Pʍrei$/*_jD@."N#`YqsN܊_ˬՠڏH\{D/8wXE;2VI$[G%L,[5jIn@Vu*z Jh-7c}3TT|,v+mwUՇ^/¦6c"|0ZRyX"w }/un$Wff@j$\ }b^zFr4$pd@v^ȶ~( ~b8ꄃq6qO,EwU~>jyt^]]cs\ڎ5n҄32/j  ! 6|NѾc1(ߜΝPךx;l_=~~gii7'.vʤKJD?@+G`J00{' zcdǔ:,XFQUr2M&δgiZaq\es}vՓ]0\!}n*PDNbnhͩǍq|`,J<Ɲ`PZKKYEƚ-3-7?#(wTj!~#-lB"He]{s)ʢ-JF4w8,6R F,IaA@9:<y. HEiNא9eN3/#SQVD 7r[fx$1;?(9ͅt'7:TiBR\H+&`,w~sqB]wa)8rš q!45Re̝}K&P/RtWd)u JbD9LXӇ6=<0kF U} bBʡ90o"0h@)+ `\9OyDO3>Νu?$v4dpG2*gKhجӏ䇰WsM\M#`=©BVfyBVp7R+;JwY"WrNfyЎ/*mZmKǦNGhʼ@|ӅG]+.3jp6:ۜHl'ZO{|UE4)=jEycNɺLj|l)#{ go!=E用g{ :eYxHvMۡ#TfGX&ii4;vI0"P?D\YGs$tx7}#Tb#-yɹXq2mٸV+ߧ\cTɮrɺ U97+ R~ t)} 59:N?D"u2[!y`;*)VaN13ml]ݍX5gV̮H03DVulG4>3R lXK< &v8cpOp4XN29Ru.0Λ4P JZj1-~~3a lIj;/^[!@rՙcgε>eE ҳ=" Q u6}aR,m V{n{;`ڪOn_8 MPTZR 4ͪCQf7 ul[fr؞[dP7 =C3@VH[ONXI;ډKg:/TyijC@qnɱD=Lk$](<2u-N# =ua)ֈsemW t3گų~|wlAkoU+vCM?5(!>Ŕepoaqʶ|P1bdxGK/Y~Hă46Ti X6a5z,z $98aiԡk Ms$-O+bl)k!dJl:#Ҝ ¿ ,*pa|Mҗ$?$˜Q<889WCeBX>IV5'R`QSgRٛq2`݅%iu0:MX]V})Ov^5`>* Θ 5hqlsfpb֖jD5pF+,V,ʟ9HǤS+F98//S"Jq8;&H 0Y\Q%.4jB(;ߛPcӶB*$σVTP$S$JNz DV1t;2>Ҩ1r}rqՏ[trZ\ g=msD)\ιaKIPb.HA癳 7g1e ]10xq(ZeXighxߞ+"R5` ]QڋjRq :*X98MO_Fm4QQb>=8#C=Y%D4@\AM5{G!Kc/w(wO]^aT{±jY/FQ"]?|aC YOSǻn ׼y#n/~lq Z`_ESM#g y uۚ)g1;Z7vQc??O֌F/^H\%gFɂ{]ݩoʂ{hOʱPOOIAe+;T\ sO8JA+2>NߢXRݺwQdUJcdg*_!V2=>zO-`BQa ?s^*"{L){YVc#HeW݆GUN)zQMq3konvaqd .U(.`dI^[/9cN4t-xP|u*l(h.a"tU`+mPYv0.|6Xӷ?r:gcx Rm~aVV .Fk"Qq4H]f' ܉+WZ^C8aΆ#@ʍ9M?>eJQzv߭#E];(x$[,gY|(//ɫa\[RJ|(@<428A5QF HB,C9L3"z zMR W??eFi7knⅡI"\,`li@yHGr"M{iw9DQPNP}6.f23wC9x`Jiҳ58qK3S]D?S~`$/}LK G ;tD G.Su)9ޣ|%a&ӅAA)K ||(#*{ S2!A(D-]$WYkY: Cʘ'*l5晭ʪ l*Y6mARIsIr Iĸ*q/An2@/S\З8"ْܸ!(on`Q*}5H\%ޭoAbmiCq; 5 UyL 5#N0˷_!@^#a)՞4C ) ;hůߤmqO/T7%f~ֵS\ pKU0j֢xI?R<*tt7O"=gG}4rvd{%$+{H$z՗Ո!´yQ߿|0]1oׂԉ-{D<?r^On(aQ:)uj? m ܘ 06'u?~~WEM^v!d8d9KG@ZkIގ숃̰  qN me L;әy%*eBeW[F_t.m&&On2qޮ:7ed\G|_S sёY]~.oT1&_UPԻ 0䥙mls9 {qAŬc%^ˌU?{^HYJAucR!?;?PôO5z(Bf'!G^yt5IͅQcɿOMCA:D @ʾzK+Rp5@p]qR8[Բ\ Xw#M=k fv[T8+в b\D/<ёI-Eg^zVMH63L:*7#l6%@?ӣ9$"JQ6S4cppd8An^U:$st~N9H5\(_'W~059;*rN:(i 2FG pu{F/ 2R>JWOJuw Jy{%t`nBL@:Ǒ懵M$&EDra"̐t(8jJɀV2LzFMʼk|7suJ/NW)zKVPѕ\MtyW! -Vd~RCշ6~eNvr02j5ݡm'F%3`v>Ӗ \Be:{I| nKlEAW*]cY2}_llkHrE$ '*8< {e Zj!?}ՎAV(DNܰ`ڈ 3p,9%f v?3rSs1:7#ցo"KNp?7=E%jfftC@9˶+sʆe/W`HZ B.+)܃yYi|Mb|a. j5V[Z> ZZC Gq̠B8bt_6Θ Trq:Г7B%S_pqHm-]rg1{?A{Nd>ݩ+[Y_j}k:v.)U?Fmт^F(ڪ`q}ZrRN BSU_P.N>d&a#x81圁yϊ$o3<0$͈c-,3u+(}Қ*\e_s%ZYf%}57 %*]h|A.d18uUb䣪q 6a4qkQi"a ``| LVCD,(Y*K yn2Idfdnrmʕ/hpDAVŻ(pcn_R$>6K|Mfy f"J#Qm HEO'5(ٽr!f1mō9R69=WػX&HfXq޹+e7-Lirmƻg'6Tkw'ןvT:O|`ă0.Ix2o>ޖ8AD ^Cܘ%+dFHFC8J4Vkj(v+? TSٙMlIdg$4(:#\>ʀ0>•CM `j푹 ULldVz~KE^$ƅ i[IO_:UfzJ$'{5WtW5~7eNNL_Vu6> =qxnfYSn[>e HZ_O{cL{ Ǧmj#\1A3D'="ܾCRVw $m/:Ҍg\ =B $KSH΄̦8ƴ#m%γӑg޾`XZ2vp@|k_VgrOll,!oᡀ0U6Q}s`qܫ1wHUdF7Zm|FWU}O ,ޤzRw 9e{Ѐ(%=z܆0)KU=uNWo&˥Y1t2U:!=.]7[ P 8A86OLJi87+ޥ,PxudǍ+ ]#ו?;Cݓ&m:WS>MDdSs} &vJRU8{K{.?ES?LV>4f(UW\Hb'9%<'#ǏS.8.am%msWI\wiqS#eMm"%z8 EA`fWj%% >ܿ҇9)+( +@WWu;`E!o,G؛ǔP㼃XkһY8[v8yĪ{9g/NǴ‰E-Eyfp=K~W1x~ovNfS\;eج/iB~`az Us`H[i*إ׆k][oŨ_Lugh4loL$i8Л eݾ, ׽g(?u_Je{ҹLw3y4`d7nxxeNn5Q2٤N/|/\,*0,Z^kVƾ`3,a <-3z Ѹ[x.J~c#Bt"S.ۡ₽sK?:huck]y>wX]^FI2u(.j۶Y. p_IF6(}-x4nlbڍ#g6f/iM2$AVBmbeEmi {gt;XgNffմ̞^DЅ߳amgL!Y"$Euad^kB;0̦'Kas:0!q]oo2cm m'_uGɳx9Ltb~f~9 j~-E6 8@4FdElcW*Dx', _Bbcx Xe|Yjts:Bq`=YI结GCER_G*!.0y 5=ii K1\¯[hns䡟j?;+s |6`B#gHCCӠkJF3o7ȡ&͡긲C&Aՙ4 _Ne?H+7;3%ݭOp:vWWÈJlK =[B@Tm=S,St(ˁZۄHd#*Hx1Z~ N0+*a+OQEז.S}Khp iq.T5m{whl[cSh\tqkH%4ǩ>(oy: YZBr3B8HE]IPiDgd%10D+ ~]Mh[%?4qa7^Ͻ]X22;"c=ӥ]C.Mk*pJXHiiC,H|pǜ`9nf.jLg*;ĦȲ_YK_ߩj&Cg f&ɭe{%7jX"D3P3U9<\[k:0622;~ڇDϧ:vghǡm7Ulƞ^~_8Er5ʅWTh]CA)q"Qίȉx;[G9C3&2n<辻-Ӆ]]EWsHC>欘G$Bm~h"~ %cnӰq{|".qewaM#|YfKP'Y87a;'F /YHN ?zXLBoy7T% {)2CVJѺW߹~||FPJT!&殀Lվ^)IKhj;+(!-sk3WHR5{>A([ \ e]86iwZ|@,O; >=!y!$QVjI.(x-CK(}pO}KA,ٱpBZiJaW#YO=6̰-:_2xY >yCFDXQr(i/|,XD  Cr͹]iVU|b5"PWj3|z7'ߘnݘpaEч\lOe'bN>ܞVLowE8$ޔSCT `PHA9ozWͪb*hdZ 4Ts6lV/O7;701bBeZe֤?^c{m KNGҊ6U&q>mcí8\3MCBIP BXm[-n#ƅV}t&n:-EduB6CրV@u{׷T؍EG=9vj48.܆w*젷9_b[ݱ+Κ)ИX; J]hh|nT]G^̏7@vfxe+C^Nv[:Y~nnuCɇWCsڍƹŔ)mhH$i<ԃnPRbl( Z|S$nKGvnW -0<iaǕ cGȭpfx1>ۙ|a!&v8gÞKgK=Nv*;P"|4|&A%uFMZ e0Ydr5H5L$N:X*3!/WuZh$:jx5–V&[8rӱs5ۦA=1sp w' .Ebp=^.8z/}嬓]҉ G*qn>.8d*woUCflBӑbЦO=T=}%&˷׹cTJc2;0{q+V'3?Cuh54U K2 KՠV,pL;4,HIG3dvel:%lkuITRЕO $ⱍG?6m<7=?6 /eՀʶݳzo6lSXa<{Y3 9cJ_j~ò'mȑE@<3azB'YŽǑCLjaIkx>,BX8Cv,yęe%꫐8 8ZӻktaMeTLdaut'>α5qNCsAcn G†Tq$C%h`"FF!w$)ϼ?eb[;!H|;6-M~֜ȵbUeI,&$c|{u#=mz%UU᛹vs[K[oVrAyùWxrz&pFxV㘝3WĬ+LIrہ1KtrqHÒi NJĂs9+oWݽ[>|5fkF@f~̅0Dq7Jt&[л-s@X>N  oȬ XRf*k+q&8HrنќVuO\\&_+ZxXbF,Nt,~o[[!*8Gig0:aIff!PWuH*7x4u=Pl0Uiߞx}( T ^ #k,h?y2ua B<49alw0U<##Lu/B2hu tJpi3v(*fϟEhj&͋r$RMir;-Ʊyڕ{#4LJlyjVy>wnhTEl³ءw!)*~&X\9gE}cɢ=75!Cl( ?Hѱ-D|/vӃ='8@bnr M1vCۜܧ"a6׾62`<ݜ?m-P6kC3|mHZ U6}ݜ$oܪy8JPȥL;fqp709ΗvUq35^ [w7)U/:H6:8sNn[,'YP@[v T_'VAGeFKqJتؚ,f,˶+!)'iJ2ftސ5%'FalHt˪ :]3HFA `MXQ;ISEbCڏq7hLUw8 ~7FLd1|Y!+W=e׋.z+55veheA ^%3dy䯠QlRj^zۣOp\2.j3tܵ>@.Ci?0 m\f;@TL:vyMg.6,hx2uBN!,!g)ߢ728Jۭ#n+D_@JN#:fb2bbCcFa&L-zu0npw ~`Vl5b$i W5**Ĵ3j?`lj@΅ $a r87zy4Э]6V#OR24m)δ;߭rAEG2,A16pzY쮆zdi UO8ȫKx@aҰv≡r5\kȜ) 5ղ6 [v˽AaT tPZwNNIdW\DsDᴊZ1QUtW @1zk:/`=3? Ks =InA4qGx[  l:|:v݇^0F8mEanO.Q ،6PsW R ^xHϧ5]޼ÔvLOz~koGݏĎU*ID.NsgMTb.Q5x+?dN>;EL;#*jcZ=g Ueb&At';LҊ-UQl1VssR~da_ڶKA`āoSI;œyqE5ôy#/tQ>D:75궧,H)k2V32Dj\jVbnŒFܣ x  +)%z?hՓV>kéaZڛ`'n!I6 ,7~\Vf%A[g ,q,`9PHGgN MuҖ@etL ;};.V ~K[ G)j!p CPTYdE=qݬ:ל|1c9b}0Fr%|o y¯Px*s+/XiZAP[4t^A/ 'o>?d$z\UȃNQ(0=x~oRKǥ9X)Tig2J[^P[!R:p Y:$GGׂЍƪUlPh3{*ӀOϤ5"3 dTRSV ,G>!^?cڴqѸ\Guqq7?9=p幱 shc1TgZ}AŎ7.!+WcWQ77Q9MXgSbKo/k"G_tEﻥEPCJN VyS{"׽,%;w9$|7y\_\ f556/\G/ooj@oҢb_G*r{jpWG0"N6dU'## DE5W@>Henú7a*{@U9Q$ _p뭊e3?9B/,FOam/WS8|﷿ ,e~2iXr^daL zz,2ބ[PښNM=/luT€:Ś,I9Iṵ75{6>=Ɏq2>銳Zr*7AT&*ΫW #Tq~MfX%7 aGnj=fFD4Cr M뚋v-n?; q48ķj{XLkf h#+Fe 46k缦x {)@N;>p0zTСhPxOCOΕ uAWKK*E6Q 仿lzX\>:YJak` ߳iYRp"Kڛ6f??ꩠcO>άkf8)ue ꤢݬiJt{ڸL3 pz~ 319.vqhC=ȟί_+u6,'[[`N} Dz i@-ϖ=i 2[x| F孖;f=jqkGMj˘E}2OId.^[^P*f՗ [iP _`+_ԀqihUsDB/0Rs^¶7ͶG-r|?`l7`kՠ=x6Qڹ|xh rk}-L.,E!i4x,Ƚ׏oj3|oРz&"ZKOLR1YWCxEY-l[rRC~v-HY͜=ʦ8񘥬12iaxr, zYfsG A4C߲nt.s[4o bx?Y* C)@BY-XNƎ'iC VMfTì$הT{ *8Y\D,W0[m 4M3r S A5J2T!i4MeȎ6ϟF k`’?/t*"P10WK҇ZSќn/,J;pM4rddLJ^Ә]ljPWl_9My AC+kH9JO&lTިRڪ'۩AYɡUHO~u `b>}[§$l86AF(H=3Q"c.,SNH/ 8/hA^;G7#jE;ϳ7궖 >h{ə6)i}<+bNʅ6~-B:nNA]A8DȜL8'%5JR<{8XMdLa%e!}jvfOG@n $Aw s@Tl [DZv<B̻y.ZƲ)´HCt0FVjt}紤FBuFPĤ2N~ kQϐ3qX)(/H%I+R3y0~^Ư\+5?%? ;݀#hI*jhn I) o$m?v=2NTa)rt{4ߍʼ)$Vǁ6Z(\8@Uʯy:.L5j,UFj,H]O7QE\pRJ!aO9KFK^Gq熺z:n-  wY_Oh$FzocP?[&C*i[<;8O#6Yfrl+7c {PoE K2S n 7X;㒊݌gW9XBrn2^.|H+&|u.RvˆZ"3P]ݎ«aHhEYٝR}35"&)M p\b26軄r+k̬7֟]uۢQLN#s2)(7K@>L;ymjrS&qGt A:{ Ws^.R _ntX2Bta3vET2L2Ne}7evc%ҵEGiΫ\;DP 0`i >0eo43u3cdZ畍(lQK~coÀW}GF="nqRZGjϞ5g]ECgQ8SMA{t$,GCa=XF S|`)@DRF#Sis8+,?ێs_^ۼ#:eX*T]yJamBzٮgx%URݛh&Joɡ 讟%Y o=vD DK @O…*I0qӈ<Ƭ?GMo^RZ2x&X|mk} .[Pf'ښWB4 5qL/+Dj&nfCG sN'E8:>bHe~A52=*ccw,:QlZ ID)$F5(~Wvj:/IWƙX"Ob7ebLFeW&P>ǹhlcglV;6 !L2GL{0:yH0jXٹuHl^pぱPog/HE4~=I`q3.R$ k~7m;[\zji_Q. (Wo"ue^Q;dٜ#ӓHܽ^E]xTF6Լ܂3Cy6"!k=F7TeiߨzuF"UbFMѷL ɮQi6@ .=s~1<M|OԦuƵL. sY#gc)uI(}w8+۽D Y(Z jxd" fIu~ILƝ_Z&f hXCN[YGu Zz5\,2QFozEaarb ty &C^l[' , Dt#d5U1<ڜkw]`mlHјkC뎓ߵJ'H[gH@'pME%B_K_w\`߀X)77?HR9"h-R!tS\Kȶ~mBĨbP*&D\:(W ('e"@pyI%fXt\(`ǽ .DߪL> ):ch">'/f; p n}%(*f`$2Gt {LԗK8{p @;v2_[1 RCPb1Zu.f$(C !֙w=5Xo*b0a>&o\ @]&ViS 6ֺ#hW} ϸO|XtXh%с툾4A_R7g6^Șc?ƫKiF "x S|k)#ZE%4R>tnr9s_pXmyS GJȪ?S].xLUPxE`Mߔ-3_ hJmF iSLP5W;۸^bF2/6Zjd`Y/u7C!YG9H)_nRyn0c(G8#xa(3)zN6ve@5^jxS*`lKZLo $E*}GӘh p;`Op>](u/+hy`ju?j9* h|!H6C1]!kyZњT:&3B2Srx`qWr?gG2}/V-(ʴe(|QS!Q#v9TnWYJjH0np%Pa倩-/ =)h.^L|%V+3x?ު'&19?1gMZRrǑldk79b< 6cW5'B?>kvno%jJFkd!tR.Db6εJFb:rQ ,;w95nXLա8N$;;A蚪6iuH'黼+оvϠ쇉PO@u#6 9@q^&r'4M2`k-n^?"џ+ y3H풌6^+IÁ3W|ȧ&c~<n15h7`pFC(Ɛ(e7ra1b;ɱ9sɦܫ̏)d4.YE=2XcB o7kJD9 a9+v7DhE,^@^I7jPzSSWAmov>*UKK'~Ъg[ vmaf3f2fjF7zݏᒳe-^dw~݃ˌslm%Sj'j +?ݼ_|Q|.Zunp}o2bi5~)w>ox_!Mɋ\ҕY98]3W,pR ?I~@MpkCE۽f} ><ޡ83*MAjVPA> ]ÔD ҧNwsiPcx{$4+ ,7`yuMR$<ѝz =M͗=q|u'?3/#䯰ObHD+?>vW);;ݤ;c@byI2kiH9gaAmAE'TiXcZ $V=ٺ+D=iSߋugt ?9?z4{ۇ&6?XXkJ$43eΙۄ. %.,R#SݮIC{+sk= *K?¹eLT(G_i I1E*\RW%s>E/c^()Ih'ςH`, H+: PTK P8fi@ECkJh~44DDW 皉|xDZ\a[_0pF: ::!ΐ10g)CIdK!ݿsWVk(blIݴOF. S({Bґ2~^l_ZUJk(7W.Klbn-g }ˮ}F@ <aT| d^j7fB0hj/w; 0p&=K A^.] xqJS,:ZS_B̪uTO NQP[Ul)9݅#1QI)ބaҞ_oK mG͐L)FC+%rY evce>o]@ͮb6=*ׁcTt7ц0sP'#XQյ3FxXH*h3y:=ja]ZGyLU#͹z >c&Մ]\u)m|qgB͡ *]])N0R$jwߪEBf?=|ty^e A^OC\4w,yW8& Rl3q;$[p"_4ˌg}UEWmwIP 4)v e]۹Ґ OT-݂hG0#Kyi=[ 쥆@| H|gpⰇMwj~2 ^Rc`~RR/! zphz h m2BO D#*"rw`٘Vo@VnVGrHx۵ͯ>(~@ #BW\"TUkN@w>@ yzv[e%z][.Pj@cOZκ\KbIq%s(:+ i׶r7SK PK1&ιF7J3G.cq^.ơ8g7]ЦPgp@*}w,:˚XC?Att/@y`B'!"67OQCl+'}%@|GXm]d 4E 3}y%+L=yt2 l.wVNs!MW)je\O;{|fGbΘdxKwסIMj (*;0W5anLm)pbViR;M[zӬX")۩Ѽ6Sm4/3XaUb[ISμ o_™ KL#C5;oGyKTtH\g [ JQ{v<ñi&91 _~qOA^RswG=q47gfeb6$-|"򕴓w܈3v$%4;w}SݷE,y1e[:RVhSiZ[m@4q.}7M jy?KjI#c=2EäaaɵRE Y`s͈g*lJ=2&Eh% 5')4!磤u:+Yb JNwPX?ɗ-g>-b͈Jy4lζE/,gq'AvsPjX0Sh>1ơ+ďz0 Hsb3J$ Hi.5ʸ)1J} \l#,[jfvlwgVx6Z&ɤ]]p6::c ~;d5nX>-XcVTӠ9m AKV9)O}n F-PKv 9 L)"wʋ3eݍũvdbufSyUt%1ShhGH=}Vn'y iEYx.KyQϣSHT17/Կ9 ):\؅Nglށ m!{p",uDTE"qb¨X PF5ZRuP-')3GΟuI1r"t#̕]GjqOC/2b]îSZ6lv: ,. +(S%޵H*`8&#^ 7f_do+oAɣzL *0nZ}1 $aj/t:hS"qNt7ݣ7ƾ>7fyv wl9$f k7 #qe?C 7h)Ov=,^` KXv@Iѧ|br'C-@,ˀ~=BTZ^ONƴB5IAOݓI*gSmUJ[*jw).ʪdu`]e fe>;=ӎ3尠fOwaW&v{P۔v=^C MIuu^r!6dTARklbU|}r,M)3IzgIY5LsE! 2?htUBT W(-}d ۔/'鄎{lsիC=3b%336ѳEƧsUZ쿚]!0%|?UW-VS]HoSӳ]1',=g9x"3< !2@lZI-لЫ.*aWc옯͕Ch 'zp]nuL?"{|zw[؝z>KL5[U>h؄ZX[n_2Q?ؽovl? lAä,ÊfJoMtJ xF'N*.=P,ڃےDqdG+[~H#VƄp3,,9̟҃!G-gQhig>K?҃W+j՟bj /e:VƊ<峗?UBCňK4"0'zUlupg-sM5wAbRZFy鼥48s@ޔXss!#L9k7B`!c`&]2xlTC!kMRWjԪ~x󋶋!R0$׏Zyٛb9 isD,qfd|8 1]R; 0.7S@0WCv}JR8J! `4mڌR?}#F]yKC+TɊX$9^QY̼V"1;ie :Fh>-zx(W6G[XO{К\sJ|WRL-r%ۣ!p`븑(:(NG.ԏ(S95ͼ|eݙܼyIP g_S̔ZKFOoI$m5dDBx1C9S"KK0oiܬ'8P/xc@"`I՗S8GP91?!Z#B(a/zD`xd1! 0mi7·dPr s`.L&Æ^JQUi![י!W@hAh12 kM0S"$m1ڮU/}7PY|Ғٱ}F/Zy1=[lAw)HuW]ٓd:se+ /YhB)ªD ۰{twbQх*2! + .32ڼ/K/YF/m/y%u M%|"*?|>gdLl1ւJ T<d^VBd.c7ej,YaI >5 sbg>.|&@+|! \k|#Rw2JȒg:=Ȕh$DxL^q;Y ,5*]j c*@#ѭznTc4Bqb"$h,3$3MU?Lf\:^ u o{ȥ|wPSxhJ[g/G=|Vao)*Q#&#p`i&ư F M\{W`fE)/ hG'ݡn_oTGn8pʕ+tW$ rl?aC+\Sar,۶#?Z!3= d~ک">Ts}Ss)-VcgϔI ">Ao&5َ$ J0ZE_n-lD&Dn`StѬFL41s(K᫴^~D=dڴȩqU7*:w'%TV,@YyR]zӟw\ Ӕ%sHskk^Me;E?G RPڤ &Rrf <8(a$lKC`$pp`r+e%f#* qW ݩ tr KnfpU,pĢx\p/Zz<:K#t=j<3CÔNؼ*_i)@g͔~ܟWB eY+\(}+^aV?Tj/XDD>azü)B'*lO]\8 rۋyFЙʚw2 #XUϺ#*g 2JԽ&nzҟ=0_ !'GˠL[zl&L{;TZ4>ⳅ4[%7dM;p$nPi¹dɦ/3]tS97Weu TJϼN8ˡI5"Bfp+NAUc0XMly..To%gOQ vRQKoVf0m+`W/7pV%o)*eV6d GlB S2;@-4a8@+Ml@)@ G][va{|?q40%JEAt˴-R:*q2SٕeczR]E#"όMjkO_ 'O,q|ftKuTgBZp#Gkr?U.Ⱦmlp98f$# q)=9̭ +#GKEZqs ⏟eKw4:7f>y]LȺlw$ql nf. Θpo2bTPcA}ZL:QN*It y [EvpL^ LJQFɴ l|b TC% P士z,/:dm6Z~ŴY3/NĤoo7/POߑ[]%Zu I4zI #;xd6VqPSx~}Z3P\R/жEy"cKiv 'E]'֎y/ՀTNB⥯ Y%}Uj v!J#_ u8گeԥ3a ~zS?Fl- M^ tq[t}.Ac9( "GLEןcv|O"J,[yB~+[ɤE&NG(ނVܺp-{ *v'Un{nsbEwst-" &0"S/2$_j[|\3ƺºԶ<N.I۰%9;6e5uK |Սb\a><NJY_ȼ›J6Ss`Ipq/=G`}I. X7/N$LOj)D٣8JC5B2edOQ/BYGDGܥcwB,A;;p⸫q֑khuKy;>7\?XGkf["o`v,Y4!CEY^pq=T &xf؊a`'=6ތRcr#̡Y^2h3.0٘-MGeǽRY;/Q1@-}F+˨5%}Ga4(OUp Մ h&|h!% ֪یLE_Z980en#Uh& m_t,ݰ {b^UϋnBd D5$ f i̶[LxFjccd#ap[H**6өo{n||S'[ }DZغYc2S ^ n`tuM׸` k k?*';S|k8h{܀%|ɰ!0gR90nʑԯ<:6jV힆\\3y:<ɚG]h/P ]K蟝6֒WsL܂QwuX[2D4Ho[猻{DkEr:֬'T߄!Ȱ5\o,p/-cu9\s~P7#JBfsdJh?kő?(7%pt؀A#8y=B+jܴ !ƥ<i6 M65ΕAEutO]X|f tkQ\|=Z?VDPxH)h%1gw>3>_3qH Q2\r7r~eXE d7A;#"xno |fRO V缗Ѹ^AϐNͺ1>;J6jsX7M_t/4I20ȫإߑDXB#,9"VǴS2pM:9| MRɖ4:]sC-3>KB߽wcFwu_G"ǩ/!Pan*+I2)s KݐzCj_d H 9J /@<3#Sb$xղgأhy}fڅ6ԞLGU,cm9 /)ІRMo"Wy펻~iO\"j.=C[Il[ŋm`HL\Y^o | ]Ēo,x笉\f% ~ }|4qoJ9sxd&BUoCLc: Lټ,3C n>iJ0yq]; ax | M1p;s) /Er7(NJfۦ3fD?*,2ZJ$O&.Z x?BVX>}l$:]u=_ d[T~W:32׉gpVlpꊺb T3==-ü^$dҘFNzx@ܪ:FbyN~[w T,+K{,/hSmһߌ*u ңѽuҀI[i?rH=EKӂEwRy|Nz.X0DO>(f+ȁS;șC<Da؂sPbs]V~(~KxAjȬaD7zu `~ l%Z 3Qt3j#*ׯX#9UAL qiEΫe`rC/-ޮ&ڎ@eSýa#:mge#] qy%8bΥ2PΎ3Yvz'p ȶ!KW ?qvuHCH?5/x'~o Uchy/.uzFA1=An]&3n+2d" z܂cE L|"i`ˑM 5C=X(!7 P5'<@^\D&X-P)6slqm)%X?GkP `t@_G莣3 Ɗo nJ\gd\; ,s.vtV9u~ ,s˽Fq[O+O5ʟ!a>oR=Ex٘unc}N^: UTz h+}(qηWk':Mbb 1g=;aJUr1UXldJҢ^^~nSԴ\ b# BnnG/$Du^͍jT#̏=~Mq 8G6T N~դ<<`ClnlazMlUk8@L$֏QUX%Q>Zm/fI]q`;V,L)lʫ0;Vp! CU3)_wG%H@?OzfqPܑŰ@J 263jk+ꭓb>] Fiso4!޺8 ?r[(T&EIQ>"4bluݠ2;ybiA*ϰh+2K@\^ J{Ҵpcs\ߧÜ d"&G([rnW -8U&+É%Y^;S_8c>R)H!ZRic݀ec8>i}iUI]vS6\N_)> t _vA!aZtax߶qogrD|0vL*aw_%ݗW-Ʉ$ד⁺~psY%3U)J+geX–:b>(#v#Á(N.Շ gS}'TSXDHQ4Wӵr3{)#YOV8d8بN&HmXvvť^zGRG#b"y|j|}3JP ȶ A^M"\eܠ6>T$\9 1aV1M?κjʙ*>ɭ%E={Tr&0Ln[ki*8!QwZGXl?Nn</ZkdSjBqP\2zXlZ|‘SmBr;+"~k4  ]u&ɰQ0)tf-QG :fފ >B5  8r[z5HWv^hh|1]PÛ2LK?ҕbn1%$l$ӅFEijgzS!J/`n(ci{B {VUZ)dxv:nCI $Mei[Pt/8'԰OsZ`q3&UU{ܻPhiBRw,kFe]`jH/i1勄;5W]*D%Rq͙櫮-,DoK$8 6MZKbk>Z?gz(7ݖ{,dVGϵ`vM?lvf#W**" 1Q_)ySu5)&g!\dD· =ŏ@J" W#ړViBpkos^'JPk;RSq 0)T|>5-uYul|qۖ#NWsk Jx*uXϒ-v6#QQ:+*0599,B!}j{4X.O[{{F9TsPȀWrÆVP:SX1lcEid+CԲ[fJ"' \[S"JIթbG=UK+lR{s:뉛ϣE!g/n^K]f(J|~`6o5̐j RD~bNkKP9^$.Z 䪊7L:2{Y;7%*"YC5Vx쎬p)I;\[ :+ NY(4a˜&*ft9\٥zݠC/`z(R> ?$aSz˜TГRU%qDH܎ ċ3HJTUlv]|3FXY5~T>i Cit6L/Zf)y|ϐ>NM6nh|Ah ,"?6V83U!.]!m;b(XڹSPLgnG^L!*d z:Wxfn!e:ifNOw@yq>Jy8!(4ca6J}n(d ںmk~ tjicβ̜qE> .P(RGæ}2AQ[S5QOd$c={s^.|RSB *] gS᫭ߡʕlGǑU<"jb3i36DW/aJK1+Y2kx1xiKhwvIEod.nIiYq ITX-=:ř</nyD^h`iR-E~BǼlogCa6iBe)Ϡ;@b+GbnQÉB6{\*%S,y7EQoׅyQI9g/8 (, z 2Ӎ&`1~ @<ɋh2 IJ/@W|N~Co4:f4nq_KxY*/1uU+h*b٭z}毯yH$2r~qkbAU@]JۉJڱ]QP,<2}ȬY }_'m ayξ-+ö/w:(β{ꩵlO]|^ڃ-6.OVkFa)Q/+9.bd\LTo{P j 7sb@ lG)8WY;:,wΉ*a> KJf]&+D6n[Maegf3TN4r5rD%Ψpw9Km+P2gzk;pԝbjq VniJ| ә&rfv'Dj'rywV__m(?fW_@ oz' ij(|8iඬI>_%A3X۫.'}9kL3wu,q2Vee`<03 QLϨߠα&%Wr Vw~tX.5ra7;L"+LG~iܖKʙ2D[xl3s8 \_Π@<ڣYf&eJ96fʣIsQ`-`칬э ~3{Xie">R`_r髏01? gtihcS:[ʻ ()2A9Q/>sysvDs ݒu3h3?e\Jrc0;re] w.s6:I<Ot  LzҾQDFp7XP2ujw&0\,$gufB "ȵ*_l-Y Frn V'R+oYGqg؟(L/}|rk۩KAHKeS'gBT>cXA»d[8M{z!4Gt}u4$94Y-&w`Xiu:܊ag\~]4֍h(]2L\L> Y'9Hdٿ<:[Q5&WB>tOUmٲ|ݚજ.ܲuwQgS]R j6hJ5-X6~[iI"$tAII, ^U; ۿ.sٖ|Se+-A7V9/C.zFc8b_ ݞR[x׿LaK}81XʀԌ蔍I?KwSW3hilkw,Bhwf-=8FVbzyeZM~UdCC8;B@,Շ<+~e!cm0b ks=.R[[鵪u+/ìaj)S'{%x/߼…&f:d6GR{M։wV4m+jrXH,eq3/<^{?)Njzԛ>.Hቷ/ UJ–@/ަ{?GfZ^H}79Qڻ54lJQdx'{դwȭ"o.U eD+bYirj"T?FGwju]!b0X^ W&gCm_(tG`?:QD1H "+M@ᩰ&ޠ!FFyS`aj}<ә 47)J|o .p.A9#`@eku{4āLa",[kنڍꄓ/!;w&#yE;RitɎW?fjoXrjqc0߃=: 8͙ƱzFZeUDjLƴg".0QƓd&ϾB2;ʣ<&3ƼGE@IͰUụ̈̄uƩr@(`ӱgtgw,:37嶊[GGXY8Kߪ.zmf*8Y r{}n_QE =$in|(879l,z’ItDN^);fE]YD8>sX 26{C>zE?~&Uvm^BPjfR|ijou~k2N>cԆAせw^zZ8x-g}L XE| W0 Yτt,r.hisZ4 '< |[}IF@C"@N#>5:C/k s-|n^=h)ǡ6ynEppu[ghyk8Z!Aoyj'檁HV [E.$ ,.u_\! AR ht+26BgsՊ 3 hqi1n"蚫\4Y6!Ժ}F)ʏ{eKـ:")9G(άCguE<s=DBnԻDAK9@h,nh!k0[iC0O!m(X}QJ׽<8%Jtʼue NX2zyd+#:›){g[3U5Jmh0C{G΄v}A,p4wbIHv'm6>(G~#='HUc8!Ʀ\de=x .hwiV0J5`CI ;694JMTVPPw G.kHm V)YCVR!@v$ >8AFf9$./'G%AՑs9֗i ..΢Jp|<#-H qIm5NUp}Z7lz-E꼃aa:z-ظڥ畻kqWTW!#]<䀡>jER;e ߈h֐aysZ-Z1>nivlcbRk0V'2LZЂ>oHy`/f=+X/H}b|̓@&6U%(a=s)2+ص:֌3aSHj.L5AV6%OKAǢ{:d^BAAVِ®2ho[no7t*,Oba0Mdr3C&N^͔X Hղ&PK\9 q{%6\Y+ȴx9^vK8f2|r /}``_S+T+0^W1/Nv~}P"6LٗO\U=Vb:wx.71EVv؇.R~PC$ntи}`] aW(}JpM SUbS6p`D..h5gd dR[+Ӭe6 .v7 JVDA%?%egU3<7jGGQwTL[Y#y┺$QwkjN$m:&Iftj!zQMEZVW9xN6CG5xYB%NA$_Lll8 ~?{ZhyK_փpUq$#vPJf[ cu,ۓ@&^=qB+p[n4s}՘:#uȐ6:W |a?.QTJARUw¾@Amşh{ҴkEEB4*7I۱Wt}qs?Ԃ[e?74; <˹Y]%W]x;9n B@K/ѾT2|^ DPhVpQ 9C9nr%5:TchuW~ [j]jx`vݕ8;[Dv3/wpͷppnː\4q}_x͡OsOXwv"3]ZT| %cn[ Xrw_BO6wFO |jVp&͹D`]F\ܘub$,óWe};O6z"ŢqއbGb+luBUl\z[R"]m"8R*j[JI^H=unZs}soe6\z&^gPyT0>_lSyޘũpM W24zy5Jn89x%R\uZ2L[䁏oRQʕשa%'#}1mj2٢mYөC$Z;{   J_9 a0% q#I#N2&Kb X.d8}*x*\ρ:iBČ{$W% ^h"ZF %5Ox8õt1#X*g~' XmW}Ǹ+|GWھ9?Vqw9cȼG]ZovUbsNxl'>5)@ԴF\cuEmWZ3GSle 'er@ЮC~8ByM%x-9Ur5,!u!،ҽ,ɦd 9I]^. Ufjhfn Vp:HB'Ftg\Xܬۢ.G6;X3S5Cz=Jef_=+Nln$k>(Sxѐ3^.ץUlSȓb*1? ّLҥ o E>Gj뤓2+(DZ뇏&{Ac?mEZ8VrQvf ;H J`&P- Xvra-sLRV\#D;M X:D alLA06O3%SwHC&I>''?4PR: U:;`T:׸,VN^܋t>\ 'G,: +ϴuLIޏNrnLp,RT>A?"el =ץ5Td0R: Sq0B5YdIOrTdZnE ]%i(U"۹0GǓ(vy%3t~G5~ޔMԜH Ls1ܦpÕ&} D&=shi95,^y3җu,Ye@\g ķ4qtxH?2FTH0X]1)bE]@2âNoaxMkDF~Ҿ}ub[kڈC?GڒXqP #kM .\7C24EcIM 15 KI;% 2jC?*;Fb"u{l &k&Z蟽g[u;$Od2 m~$x,:A(7>܉bB >PmwTHfm'Yk dP+͟z23 TB/Y.?Xr ;΀Y|,A` TV@&6\$^Fhfl)M,&/3LK%RvZbCք GN6O =R*W-mp}R8fg`USVf$BWB=_X7>*Yڟ:v 0ĉDh<%6n)9 !UZq5?e'fd @4D>XO(~mHQ@S뒥ﱫVI )ovrD'L-ʃJ]cd+Td 8t S/tjujꛂZQ!(?<$v0"i,LY n3s( :J,8]':2Otik&5iGC /'Q'+lIE FLW7]a1&o̍$J@>!49}.p =soΛ q*sX}J}<:oG>GR+qa "AƮ.\ ݣ$}xVhj!uiʳɠ!GXDj^7gFTX\FLF Zm§NHSƞ-B9-Qi䯈@* ~Fm|2*Kk!VF_=/f@ç4M&/gJVFI0/#?6QJdw=2P:52/UX#̃3?LU[ɯjoN0gM}GZfa0SJX U&緐bBԙR΂*Vۇ _,`T8A w3lK,|K"̽Com]^)/$\ߧ Q@[ 2hb1"Tx{4ƬUHD}' S%%EΒh+,̨5sd_9À 'bxa˒ j˖^ K{TQC*"?opÿ\$p-$Z ί.C!l܌l8~\v^?43"荄)͊$X6 {c ˟$w[_^-M}82,rL #E`xPo੔S<ߪϹǚJD=o|mqp+Cq\--:g;!޹-Rj}6WCs?zL ᳓fcmb'F*fx zTljN!8BS%y%`ɐ1/UM˼g⍂JZ꼈WQvzd@w%ܰjeAO1C~u..bwo(A'*!V/ȑIx\?AV,H8)T<s[,]ȧgTgO)PFעyg?E dDZuuhMD)A/b[&u|(ۆ9v҆9lOxڜ\3ӵ31dnș L&Ւ}Y~{0J{B0,}^&:>E )[|n`a`{ l_?`;[س轩L8O@enɪ ^*Zr!f95ó1Bׄyju_WB?]ϤI.IıWA{uq9̉~*e!IHJ 22.[cwVx ]Z%.__8ԅ)XwKhjP!tҞtO*,{ey.3iL$EE!ԼҌҜC Z⑗1Hv0R-p֣_9*#ՙC5꘳l{Jgn8{4Ûz&u;K]ϥ&dInedY?\؂P&jLnyeqGU3^8{R^@ ҢOxub 5Mwɵӆ&<*'36lZ rcNgwz8btW7#qa) N6TtDsX\ byNH]U:m~O R1@+I_F ol$\dܲ@3X@g[AnUG7g|d3=4Ӷ(e1'S\ Ƴ9'qF۵G"@D@AQp{/BƎEϧI0:=N4_*2귬$%k~E? :eE˿+"?4 pƾչ| [* 1]0m\ -+kߜRaWʵ\>)&Gp=Q ®@ӆ Btfd&;[Msft)' 4w@RWKI)ȵR%&ppWHq[FKNzg*x=l{2tS6?֍vqê%Lo8>D33d`çz7'JxeDʦԳ*}`||߇-70HhuPt$'8JC y;u!ęt 怗L 3#A#4Dx;!»5#2 ~Y7m%b19ѣ{@Mߍh;':ꦢ[Ga?N QE5оJ c0v0s-mh0RP+пoY5v %5M{C!sw\6tb*ྃ]b|=WTe@ؠf{14Z1i8D;u)1s 6[Ȧǩ[(g[ѷ#K ?3L-]o!e6Q_`1Jqy CO9t$>IxZ}#XvYܕ%Q&Dlޓ9zK3ok*>ʹc 1ޥ+9 ڃi`y &6k HIN@$v5rL%{!Cl-a"/Tw#lL$L9Dj7] Tg+&dXSdwm b( ִݭA:{0s0Н'D^8~pk+OB = yWQst5@qSRcjR S3 \܄ {F#sLZ]t_'plUrrJ! (]660+[T\|Nae5y$@v!fgg-B9Sv%e9ھ^&])HL45$O^9d-_,c d\_d ![vLW8*Ț  #̾3xR|{2laKb8W9MO됣L? * ]XĈzOaM̳E+Xd4c>&>^^qS2p~٩R2lMGl2s˄hxġw gL-7PM{d.^D;]|ێj*[c(êz])zmo1Z??.j`k+~2qt0!@.##[e*}Φ6c/'X]xA SkZp?m 5E,s r[jʧ@+J7`w;5@gmK:o `EF)pgYԎó{.Nͥõ 1Xz1y#O <!xn>@08bDwH<_zXb1_TbKeF4^l-?p~gOGfQ]R`YO|RTgW#oP >M^(}<Pgh {1M .l/U0ˣĈeQ16ݠ^z?vY Vg."׋¨F t˜Xv%j?؍W!ĕ$pD9sS="ew=!NR qDH^@+bX m%ti[XU|ke`#`]&IQ\e K0e6·B nj.x*vte@],lFu -Zy]):`oE6#P~UOn*~ oڽzDDY 'KҋGh>pڄדQ 7TQ9P 6i[/cb.5l⦶-@R et|EjuPS\EӳVs\ut _Vawn= Mz7RFh|=P)THz_VLLy8=9\2njtWc?"(UMgyAn;`u)*\\sH|h%c}r@8b"҂ope|ZNF!SC7 5)ߖ> h@bDQ3iҜNͱyW<$ޑfW<4WU'؍{IАī.vj7A|ǻKQ$Վ1hh-7lsϪ(J<#Sv7I5/FL_:G S]* RzXG*B˺[+Df5f bv|;^9T-\G4c(j$7b4a&7QT#?hXƧю#e]ǵ?&#x,:"r9K諌U 98!q&V&|)du=ѷzΞV`$8^Q=5$|TiQ^ؑXr5k&1Q !_ri?t[H $I?s,4!Mƀү4&/صYhbx+W{Wb 96 k'89- Y̫- W/|l2;`_0ʋR~*mPBEcqYBqX"Ut\8]b@6\l2գ3lzX 'M:ז!_<BK+$W+=ABR]*bIJjR WNUI4&X>4 ,y#3/KvL'E~͗6MZTQO!"pʖȝY 0x]s.2 q>#[iG~93VU 6dH٪FmFf8Jڷk,uúŪ|KWXJ? ֘_nx臦 ˄i&Cu09f?CEZ\Q?J7LN"GeinOj/j_KO(ܺݡ>~T0n/v9SfC䙵]T4<8munl0KVC#io4v @8oե9 a9h9ΒJggSj_[Tm2kljȔ'2j!{_:s;$o4՜uos6ʷ ߭/XIG1akx&\]K[dy#>ZOtsK}_a>4C7u5[V^Dqy B!pKLBVy@Z#rܽ#gă9V#P=0I:8zCv!pǾwģ͹:%0|%< (*(BgqGn9AFSU^T&dj ÚLg*e X # Vo;3=cuY]177YW;H]@N nsl[YmʣYw!@4IMpV $SI7$fN\%rDG Rs*& h/.~ cNYI6PPzpW:9ŎN*s!%i<"\ !v_8^=[P%ɩCzpqDٸxJg̙m⨹$e_>xUJ@ O=&pъy;+dh8.t lI᪰+cIgR=q胛~g3pʫ@-FV'5Adq&i3[z!<_\U_djPe;Ӷ?CZ3`XbϨ;>8Tf)?wHg)7s+_Dn~>4DĆ8n'F3,uȟss,|#]8UwqwE}!irHi! 8!UHr:ZgxFRZf8i\rn@an&t1lWHKLqHM룀eު73hVƝs* X-M8W@**UBqᙄAww%Am~ i RQ]qCf-#nѝu}NCxEϝ%Y_–̓"Q0iifÃZ.[Z IQӐ3!%c8l?7V 8q")wſm36I΅cKj | >~bGd&K(yP|PÛzF>`(9BRS}aLs2R@W §ZkKQ~y_rWIP;\A>t\T0~Ń$e WJNـsɎP]z:! ^{ ^RCA(/w" TfN9XRr,s)CYYӍ}0+ǣu1TPwpCM>]p'i߸> [p*na Xb=;UMPt 3^g#[ʂOj؜pvU2MS@Gpgօs.AFMBm~ . α5 JW4e@YZUEMOZ mRDȰ _+.=L!mMC$䀶|$`" T2.U`ؖZ7!Y?!M$gqg}dx!-V-,v^ua:#NL52LPW_E`cСi &KW4{CD?4 }JN'IKlKN5#- 8{8  _+52=bF[ UMӰaKmZ%m+(`f̚^m2ׄ5vmҚ}nwx q@4TB_StddGU;ZXRyhcA\5):RSi,gi^5ߐRJى,*H^kx^/5(_y!{%spŹ˙U6R7 ;#v$?YRb X0 bSH;!WZ ambUs#{ -`Jt O+!@Q/FgkToiDDAtsIPt\aJN^d,R`fCVur|{ĠYyzH]"~ 5p/z pVs(tsKQl֙SMXsPj9=9RnX8h^|(rEgжLByyp6I٫t(RËb$}hTt#28 v7fFW}kھxu-HQ'p_JBhf9&5Wt՚`dFC7Vӻ%;gcGD*_9DnX`A[u/̈́J(6\%BB=-1\@W䷋>T(@ϷȧH#0ߏ_$X"3hQi؀WdMLӪeBqbjɤRZ- 8j!%.$\!!uQ/"sި ,Ò4 \p8aaXq\Α>+D[Ŭw V:H\ |>" GJ+uўM$\m֠IIЌFh(9PӰ.NU>;쉑֖\^iI")75ϥZ3N wyqqŅj-zL`$X*\LL'ߐ{ \UFbpF/< o:p \9!||a1/b3hƘXn]`)IZmm+l-!]|둽qYUCYG`:Y 2z73|r҆M0 [FtSL9Py Lo}ekA`6b1BcHOt?!${|}0y'<ڦb,<̅u_Q,gU2I]V~`_Z4̒ meӈRPG &#%Pp:Oqs~ ^*WR<ٴ wD":=;;m%=Y:a{l@KcxunօT)jHr 5%Hߟ+v?YҼ㥚A3j#݃@dfϞiȕرvT 6ܞa^Sq C Th#6W jW@Q7-_Xd&SEh5Ye1? C>Vg"{awcvR?}}4‘]뷪6˜.AJf Ǭ çGgM =ʛ>%3( ֻeLZ+/-}top,I+=*l81MJG !bȒjfQ!H6hit]/kMiTɩ/\6e. 8Q&rjuWeOf{שp&ִ+CsWS0-MJ7#v֞ "?xsJ{Rk &S^UMiS|bZK5?䗨tӊT01(hvgi zhlȗgƻ{rk,9 FMj6bʮt㩳U_Appr}^5 x:^Ly W/–_ҡr),l:=ɏ0.rZ&!)ub߲Їe5\|4#|69 (Qq%+1|^purBjXg{KArCuPZsDbW/}P\6Z/|hGU/Ք.tW.9WIffdjNvѽO @(8(5BK LBSwmGQ%(G/pymxNlzH!D>/U Ak%PD,j%u zP&lR28V/r"'4O:yBڴ]9Â`X 'tGaDjDNPb4Ӷ3|drp^zYFx/1>o絈Ÿ3"Ei[OMZF߾atPV,v8s`@l B""8Ȥ_7-Ia0o @pQА:ϐ,?ލS l@naf%n*I \;8ZMAǹ$m=xNw5k䘦uGAeXպύO]֪3&y!,N#1Y jutaFA sD-ɍ{ 0b_n? Ak7Fsr\.JK1by#F >!Gu%Fc[DRG_HF.nN9t}x[3*u i;aVxDDUM)`3_rJHԖ ]}zˋV_Sw}HtźBX%PX}szuރCj"y7ZDsH pUl"S&΀0RGAȜZdNBY'J竊YqFVBsNn>vM P EN)tI k+ꦻ4Sd露Bp#) ٰeV qBa/8,x5TލZԇOZM&4t =p|ξx ͐,P xi1@M#>lfݧѣ:dz5& c'S*@lvq|<LsR5` ;\:3(}t<ĹQLXr*|i^X[-ׇW1J7 ܒ _#:-\S7]A2(ZV41D9L5j*u rX8^'^R 9rU4UPӜ %8WQ3klsG:S x,wc?$ .$Aa#4ݯ` 8D: Vi]sc;E*#F>$UrʖO]5I6@nP7+W:>8䛕8"ȧn,Zs %$s1a ._D.~*wRPVJ O؜7g$ו"] }jNW2"Lwt6ά c!=[*IN'6vΖ5Sp+:\zC~3iU͠*8&A8V]ml/6bq]$oѽ*ynnJ׋Iٻ#ɶBn]I*cZt?%-(3dM_?jTc5_؄ +Orpl/7\+I|X>h>o:,.;ٯ(ijaq&@na;;( sqp 00_8^Y~w a6gx Oc1R,({&\OC?2Od[("k\?HaݞtwF7}YaK惱-<lڥQPDHS8wh|IB>e~ko)Q5iT"m=ԨÝ OGS82LO{'PA7C "ҫH_/Ѧ=Tn9 (&z!<)iCD*iA˿ ݞ"!|և'HT9-\q0}Gg=Ulr |& e?./jt??kRkkHД5PIOَZZ/솺v5xzYq3I *%ayQ_[QȢ_lp`NI ["ceזbBxV6B]:SH_[dh`m|v@ F޿|G)jf I%dCq7dBX/r0=&V,KEJ<6qsʳE'lfkF` q#HW-8ϡ^_S6r똓!Z*=x aN@Ĝor(9 zH jJ +ugA5Z\zq\Cvqh"!%S ć9(jEݡIuD[TnwrLTicO&/kvˏ->'v1W'S ][59m7+4!3wrx/Gˮ'1D%5̄l{;M'/OWuJ{ ˷*M/۵M7g]Di~PG}EA*d`.S+&Gܮr3h9Asn EsSeQ+JWJ b! ЯZ _QH\8 U(J-DgD#A"'&˜; 8 sUE[|{=/L} #!M$iEDb;!}k[?l]{3Tfϛfr3?WԞ`?7!ASVP@3]DĥAP"Ќݠ'r &e$<TЩvZ5T x%>iW?( s D).lojf\['l?NKAoƘa_F5&pL sCl{SRF'KFQ_Tij=GƂM(ʃC#4lߑ3dYz!63G{\uLuiI`2n0%ɵ ↷mV n0u1M RrVfh8ouv{Gphu3&_D#>c$Z!o`3aL'0u!f1SzQL>)TT}t!/Ȇ'`Ր2͎s}{-;-aF`yZ%CiY=pbL WnhCKf=x-Z2n J>sCh5t}<I<2i9ԷQݕFYŐ: ]9^!\OC]=[PDWw(gW x=Z)fn6{y$zu Rύׯ(c4HǣŭZR<"93WqQɤ {V|rbƒt6^, L7s K]QR+:iUEҏ\N,lvbSx@_Ԕ݈[Tcc"HlR?&L73sہHh yW@x (w-<1 ^"}%5f/L4U8e$f a;(gǍq`&)a|y+HI?y>ӫW{9fxXAS}R{~==$w69Z,WU#vQz5XY 3}*c]%K0UGO= ! Ÿ#ax}m!,S|Jϱ')wpaV}N !-sxD]&Up!]Y1L&-.ͳ%ql +(+{{xpݧ_h Ʋ5Zph}Q&ԫmEț{NڃZUK{bvOpX2Ts}GP%LLuѹ["sL\(zzI'$?چl[ŀsᔎX}ȇ$ԯ)]]BqlHϥ;w>>EPBվ6:B&="I1J8 FZk$c b Sz3RZUO2ԝIۯ oh`jU6 IՄ.u s ]8n_2kWh99Y( pv܇Cp v_,]Ƙ[vB=c2g(c91.W³Ɩ>?n b %U2pF,zد8EmqmsPhImZ"]+a`L ,J Rrgp׋~%]WĂ߄Uj3)t \bQbI}RRP`>L I6;,s8oػ?O~2I39/r}>0k7ȮgNǏ1aUJmR2ӦT2" ]#Ěawer 8;Nw1X Sʋd_C6=V9('vMœnݒ l-DHBN$pxr 2q?KJ^dlyK f= W}_%@4}(e6_+ q Xdzdu&/`j·1ItÒa=lM?sҔfcϠ<%ɠrIKӑv˫2V;ib^_ۣ K~{ZـKfdRΪzTw(|m@8*8 40Ԟ(Xw7Ph<*HfѦXq1S ?qɳCh]?LS5jFVo6QldǮ- `=L@-~YᥣOܕfh+܎pXiDx$Re$FSJuA Gyzldnd41"w}lkr 6>2fL@HvBVMh"iZpEɀocAȡ{O;y--GlUt,dKv bOԣ>թ^MݤcB{E5.UL ~׫Gjgi!%5zёK:t%oL4yIMkOB8.4?aޢt^aW֕ nلTy&p:{RD&4R`[p3.҂ Z(#_~F\~Gi&N<+C+J,&y֢Ce9R.;?|LilwS> +buS-9#Qx舴&j0a[*97[k ckD< 螑 >7 3@☛p ovvRkV,ʸ^8g 1]SEo0I.ϣzO\:A9Θ3ͪlGiAl6Pd]d6Lwc -h뽟bM2 5S˳ ^\}A9 }- cdޞ6dJB)Y:~Dճ4k__^>ޢĕD?,3 5)JtHFkK|eE xëN }%~\=yA҆=WJxԺ>ez#q4HRv@1 %2~}@0e7#agߐ&Q; /+xvkS9Fv)Yu fUdVG*[M9Өug>զˏwCy /5JA(2j-2˶z͜}Yt7}e1%~ #Gkt&  gѺǰP BG;t}XJHgwo42$NR W ? L>ZTn`'it赴[cf o‚ĬlIb-(xN{C-mis0 UˮSٸԚ;ʷd%>4\iFݬ1<T?p޸FJ*Hΰ-vJ ^B.mnEKJf ɋ{;,FxP0AZVzF)y'9;#Mu_ ӌ U<0A>c(Jm~skF3QPeVwiṟ|Z%y}H(@h\7DFBO(M)[7[QC+uc4:=i˘nӚ myQvL9-)!Bb+qdĎ^^k\ vkZa6X?뮚\D"[ƭOZVu) +e .i˳3BV\iZ: /4IIמmI|)Ay 5*% k" tִN -ݴw3Eޣ}0W;o}hTUJ"ۮ%܀(g+{*7< {0qt)L#7~`L9ha0F,9jpynՂ+[IR LrgtpҜ帹derM"}  wSnYT&NSm -1N/t-(rbcL&$߯/!_kc vfsV"<3,0X j#问JxlտP¡e=x*P1h 5Z;[JWfQv*2KE|2Jk(&*/ inWX0-GEZێ嚿=by)I ]>.IS}].M[{f>N^>Ot(Ldj)X%[UpHtڐS1S)TSFشlǭqBBPk". !UwJNꀹ4-V}%$ 4U.1|y27\t%zwwA;Tl}a 1qnO$G )dQs5H<֦)N]t<=PT.wJlRj﨓U,q4FݢSNc7'Z%D0$r٫l/ؚkP-}ɞ̂D{xJH`A&{Cd<+.dm'0!X:ar{HMeN9lpE g OTDIBYs(B|şW0"x8'EscKuOܨ p*lQF+\X\@oNiAԫf愈[<_I'H[7n%2fOrR -J{Hy>5&Ei7J *{'*!Q4Y%BO+b $įI\ziYtgğs(md!am2T (nӠ'IJor;f^7QsI cMf1?Quuup"eBU\8\Ͼv^d|z!p`@ɮt*mE-n`!~ ~$L)m[-ka6̌#8pJڶr@BmIYⲗFdBی^jfrJ˝gQ3ĕJ!GrޙRC#ΏSWk[͆neI7(o>Rz_׮`zJ-y:4ǯFhTyfa2w݄Zi`D_"lI*]/txvGC91->^ 'ҫn|U(N°?UȂ.Z|1Laݞd{jAqr2t{ؕm[hJ9,,/S-r&qt{pj 3\7'8镏K_Y:gݻz.WfÆM+G#YdrF}Z`Tt3ޥ#.>(o:ƵK>W:|=cV4)KܸjP,;;k"ByYt;Nŭ$MߜZsdvț6ټqSК ~gމJ?YQ*?\Wzt~ 9|V:;|eeߎ$/k( ̈́YѴ~٧lESS? f˜I1<_N(_%h5ւxKtK_a햰<=]B8>疶Lf_UfwT" y#'Q? &|1!KMr>M>b#5.y}2.$e~*6ӆ7j=CM˕A_b5!&"{) m'^6McoLRYe[@}˻,9}w5tDȌ{)=k؝,R5FA `&㙂ՅkZ[ yLߤn ߊtĸ#*h$$me53[CI\_/1nꇛNr$t4"ע(xkX01/T@P@)xFxf4|e+s pv;U _nSO5%xd_RÊɅv8ݼ#^viu:\"cvKQv*@_ 5^V 9ʲҎmv8.H’/\tZK(f{4Ac|s9 vЋ lsFGI9,`;\$IhA:Qzt6՟Wۆ2y r0[ >]8-xzM̨  UnګS7 h տ,Yr& A'>;t" c ^i\ZU\]HUU7oO1 <~xl&x|+,IO s6j_|ć\ +zO$ue=g+ !XKu_ʹf n8`Vnuzx2}=6rz6 ف.}Z~[:FC'4`*ׇ8'׍)q!: hv\7?aNyԸډmӽ;u [N#Ig]ֿgÑ$s=r6BЯDb b.RjDޑ!-dlUmD"5q tܐ%Ac )aܟp `?AE~Vp3SVK&ʙ꜐_%_mfR$~e} @˴GرU \jnNdRZ~FOa=͋J},p 'vJ9d~49=1>e{s Pwfܺ}1HR5[9pV)Dֈ˛]L" =i+ tLSyBWCd;m!qϊ=,%^{? ?&2%.,<ƺG Gyy׏vJI"L'(FNJw2۲)@ Y& ޓnްꡐ3-@ҕ&Q]\K=L#YXFv4=q`|!sGh/| GBLƑ! [u\ P"p+QO7SqA䡕d& #,`A O|YW$(h8%NbZg٠6ܥ1ۤ]@K].. Q*jYBhL\Ԅ$wDgǚBŮU\AS1ja6|2z2&HC#і"x #y'] ؍p `z\M"ѹIjT[G٘r 6 g6ncړs =\v2JuNLQpi쇾m7=w}dV|%z_R=d6š iDMfKnm*1~#|&%!Yo49d!o~Juw.AN31g2 > nn- tVAHpӐb*kbG)Yv[CzsT2($H,tK p53QSS{5 d;Z#%*UH+ DYa|6>;8^5\䗣IDo%Gb\h%+E+RDǭL$@:X)s+*>c(=) n6NGov&:]qdt0S\ufBF8N g#s @Y$d{{z8KkJ^\eU]:1w UI\# h|%ݗneɔ=0.hr0_OT<c\Tκ4?'(Tsk`xWbb:Cѵ @Fx )7&ʜ ~y>1as`q;p@8A>JMTS9v,v( ߧpX @ kQ6`nr֍qя Rț&}AcPٟ0+ƱvDEߐɣV|ow-`7ݔI5(̃y`CvN8Ѭr޽ ٟ\)]ET-8ᚰI?e#Linєȏy9ȣ:7‘%vR2r惪?e!l/&T?>dYKYϜ]*2LGϟC}g6[ M kMb!jd<&@?51n{|/6%:!j$X>"h9՝WB}NnoU9 bxtC3e Z? C:&g>_($ ^X5lʚn+p2U2(RK 땍Z3r.@B2:i/*$W9gVwtA":W6"TmqJl꡵ϙJ:>H_tUnl m$OXJf;*8$H?}dX GI#rτ2R{A^(*_w`]XN[} ܅F\dI9f7e?Xۈ.KMՏK$ED=>U4BC1?B0phWG,,q'kUpS]MG?ȅk@Jc~傹zt.`n"=\Cl_==8KE$No (i͞m,&9vMubiFaQfS[|m" eܽ 8dJ`ˌ9 WÆSMX0riL V|Ĝ`0'ű5#)yqWü<>nծ֐xRg%JB:9ӒN74^!aw(=SƝӚx4M:&E l$6gwҐ!" 0,i'+u90PG7[oyB4{os陵=i $U!l]U.SR&w]xWIThqӘO Gd|Cn/2?N35lHfwXWaq5@ԟn5r3aQ з37Qo0'&h4PKdq6%( tzrc &AymQR+%XǪ^~V@B`)1O g v2P N4)gz}:Z6mpvgabbΌ ,^aWD 8~ rJy!B=V)ˇE]|g6>iᆑ^Pzf쥲n ;gUǡ:)Z æ O6&$C@.Ic>F3f}MjwuJŢ9…\{ Z#>`O,SilROI#ԑh^Pp"͖1]?s/@ZqW~(fB Ėc#ަ6uЖQQva/:`lsiBX>V,fI)ǩʏRWR^ymɑODQ-#T`8q#keC*٥zjqAO`#^ \Q\׉&tO<_Aa*,?ID+o#v|VjmN~g*b_z;I#acĺqx2;ĚͰe$nqg)Ŀi*<S>T*j65PqSYSLV8`Q`C Lr&!n^j Z6ɝ˿XQ\3DX#S-2 ڟ gs/<30VNZPdMmJsӠp0Ot2`|*W%T&C؆E[3O.4nI,=@'Bř8HzDD+znz%mRKsom "EVhbJ~E\ g6 W jd8aE:1#6 E:!Gy'AUK>/R^z]Sg[ pA6[q/PvԈk(CǻWwJe\uQmvQ+WGQ)Q>nb[[pUU T0@Uʁ5K چ$LzQ%/~xSo)złOQ56ƃD|i k1?$aKцt= (|cq2w*C\i`ЗBs´s )~qчrϜTkl~Cf ,(^6$ fo|N=ͬ$6{"6ouNWx_Q9Fd>*Qeicfs# ?kP08LAHcJ_RwZ@0iMQ9m*b\R=V$F}hj6 jв%!c2V/k~5PE[JKU;.Q:"4X'D.Xm3f)0M}w`ZO`B%~/q|to6gB6 l,%VoV8 wEe(dz"Ԃ[ڛ5::kq%#a̞m-LcbƊ107&u;:.+ױ :Q- A}K']!q^i< #1 a?] wmU,u7eQtWk: &`&9|9ߥ)DZBw _<=$=O]B,V]2CӔiANǡxQ %' bj !v[83 &&MK{I&yq4q&֕tjn):b(؃S ~9ϔT`T:&ooPەВ"O+67e-WK= K~?';+nǴUPLq}h&jPW j-tKǥ2lF9 5,K#:> #aY*. NMGu%Uvgf%79Q Y2aLqdEsL7RN #cq1|wWE99H 7\S,AIΔɎZr-\f;k֍w8$$1gh(N ̨Gjm`JLFcWKK&^EWWdNwraŲ,%5۳-.mEI(U%,iA읊zN6r(Sy (|C!r^xyʍi2U^$a9E7Q=Զ+YM)E{"3@ (Q5.S$ aZX mV>քaVcl }^밪M`ߧ\yE 츶 }o4:۲|UW3)S|8oWN P`Δ29) P;\mX]~jdz`(Fs_Y0c)Yؘk66(!+ u=o= Gʩ. d%{UEO|QVa=˂y(hλ҃i>QCٕD0$]_;Øi 93ܤeM?'dsФ 8jA9i ]s4-ג|.0oʔND R'J_ttQtBl,󴊲v|P59kn2Sōa$&Z-@Ns]cfYPv۬^\3UjGbwPZ:3uXZsWI&mM'#ây ~&vE4q0U&S/u}B TF%j&vYbRuUO@OIsuV';_T M4 WW·U{7RO}P^|vYD1a'o`f!d.{rdP䉶@O o+AwS9KRpTV)7IQԆo.`n'< u3sxRkݚܭ4/Kw\{cA4mhi@03m g", zBkzjaFy'/ɀynZWBz2fUy:0c#ok0Ta:| qj7p{N\ܽ<]: sS$Pm9:'ƞa?)2,,EnRqu,#g M/X'l ^ӄQ sl8VmfS" `-"i6!3Reb-][46oc@{:#i_݂)#yZS:t4 l{v/IGiX#ؓ2lx8[@Pw%lږh-K 9٠LE#<>0~9fVA6E,ar mв2$㕀{FhpGޛtpDAx!#_6zAr ~ې!ƺtTYWstBBzp\u;OTvZµr[ƵfM<3q|ڤo{lJkς؆0*j^fv;iiHI՟)o6N].pqnԗWn DNgj>#Zߜ 1|ܣU&2m:[Ӟg*Cs-urB,Bn@%Hzoԩ9H&ÙCu7bfE7YP z=Ky}B5֬NC ݋7#,hI}OJ4w؃Im'}ͳ9rU&8q5gӵ wH!ITzZ-ڐ)C:Ri'Y93Sl1ŋښwdRW㯫}Fo\`1{O>SQ\} X71ɗI{e'4g‡~͙a_${~ꍧ }+"A%_^+ 1Y'%y 9e\ӳ K خoED4-*Ћ{}Ɗy1]ݝ4|覔`lxC &55˫`jeҍ7<%ߡjĸ · OBkE*=|aQA"Mojϝ~3P8sXMcHF* F7!'<:OQ;eD|$d0L\p6 TVdL|؉0 E}u|U>t2`>SCeno?̵> I qs0=*j\%нUO `&ՈI:I#a#:cnTT,7Wo0x6jsuݵꐗ7bwsarM1IiiocQ~=#kĴ)ߠ!ݽ2ܨBńܓa^Qan~FAHQ+T\I58ENSۅNЎLO,(hA_Ay M%ґ6+u4 ?2F}OI>[WW;!j[Bɻ.mЈakǿ<K^&euXse H`'<X`EYZu”dl.}ǽqF2 x֝Y44'~dsy#NjF`4{7ûm@}nN]^*L_._ьGYT[_y K῏eAHIc!0k,e8f<CKAz"y)YϯdXr#8K v9k8J@dq_<> Z(z>L_O;3O~F owH=XtΝnPo@'WOiQcJ0>lʼn$k&򼎚Ӂ,itTG4adk#2uCO۴My6SW[vWg$޻w tޒx'# y0A(bqM25jko}9M)-q_yMrq_hF ExJo2Dpi2ja=ӠS=H8m1ZY!ʘ~'iHOm&dC (Moit^$u6|%d lzwJio X :~醁[y*kXPJ}ŦR<%ѢtT~Js2^KÿZFm~_Qբʂ~lQ=) eDtYoXU^*xEҬiy|ÛBɁr;1aD_nWIӒ G* Vw{>GDD(}we;&n WZv }FQcȉ[iBAoMouҏj r䘇T|3Yαp bp$TɯOl㩵88@j5{ k QE .oCa(?ZƇc$h-ػS! wCEB4Zo#ĭOZ{n l'$=~nͺ"a 砫O+NԱG įf";eh^KFbEr&҇mdz?{Y"$EFH4JCӏPוc:y ju\/ƷPão TVlõx~_$"5{ ODuGS_#b60oD<LMBRQC߁,&|/Zܸ}$bE>v\⮈&HO}̸qWh&P5A3U̦y=gcѽi}BeTꡡ[;{kIʰ@>}}~.s(%o0 2\buu(^v/QQYY)9͋~4:)8W"Ipb[5GArI7ShB9J un TjÉ-]gpdMJ4㔝t{}u/ ]IKb cSgNW{9%NZIЉg , 2ƼȤq$Һ8TWξHvo#l1Y+f} B!_Oq;N'J4I( ASf!ejZHB] "Ⱡ|usOJ_L:ゼaXk:"M+sd07OkP/)YEsUO˸SW|AF:NH([4XJ1aY9-R*xaYaXH0aE"Zum.KE:%{2yOAy_g,Tˈoiw=Wы̵k7p^)|滯k)qVu@Y>`f}'d<%3'ph#@شB.,qh8Qqpf54Z+tXYG{'a(2u8'v7x 6ŏR j3Ӫ[=# I/Gcn{arm 3SoUX%nnvxdƼYq,vl[4x#<ٰ?u9 kDt-@٦N2jll=#S4_#{-H{=eo~oXpωb2W+P `Ҩgĉn^^h`!K7!_yK}$8ș4Rlm;_ī_ƕ/"hGUuw1I]D &IĂF^ Sj$ӖCVI= y]ɔ0Q,PCc"i5KS+x6Z>j_!C2v?X(ҁfJ^>YjD~k*oiתމcЌDd.i;R3cRR8G&4[dKY+1G[m96DTĖ $NڻޫѯvҏTwXӻ֙xP>D7Ei<5X  /UYWSmOF;#ޏ%IeiSH>3WAIr+l(oeE4U^04c!9J M*x5%wc3N~J> њB|a{/u^}Te .dPQ'[n/푥bKA@23 1Щբ/~X1hACɫ#3^ٗBwe= 宑4hNh{l S[V2)0a n\0{fP{rʹC;k?iO{qԒ/ r:˚oW%OMPN=sJ)1̥⬑6{qj5NNtXpŘ{z-}E3'e|#}cIea )V\lS2g"cû ^w]~5|5k++u}il4&AL$NQਆFyj.#3*hUdd ZϠ)F;;DlP(Доc+ZghN-s yQݵqeQU/Yias$>G1<9JTQ $7%9dVS:d|.6m'/z/A|" H4S[=͙ d*t F!srm6%wbW[JGd}E0ܖeux,l*/dJzL ɧ j)6Hun$*NIRRHw4ƆsO``3m˨vqXbe_*:G9z6o7Q,ҨH(hr#љ 5M"2Y?k/6,Rpv@p7JRwk†$N-oԉQxp>Р4yדGX 7ښQQ#k1@ln.id>Ssg*{Aa\>ian@Zyd6-̡vF(0QB%;˙ 3ݎݛ2ixgW| bI6ہj;1\ nK{zza{sH (Leq6H+_?x+qB`MrhCqy* `*B SS(`}I@?w:0ϛ^1ύZoјh ].ZXS2S\/2g)W!xwQԭ?vf'#. %Y=Ƣ1x( 9֌խd<0A+ \oNˤ4 v%tU'(7>W"&Rn XM-9]^{W2줱TjTq;Ʋw>{QQ#@]E3fӇNg1o uB*49>;]:.x)qxGx$ThNt[*nHwAk45殴Бx89]t)l?\l[IQcAzW>p 2N륔Sl Q)Nsx`jB[Me[/c'zV0eChS[᠅lrQ#J ~myGض.}"n FQzJ}%-e:'2gF.â;M;nV֐hMO †s;qڋIr)$M CF9H/!w [h, "sDgr/?ɒ{qUY(Ț@P2k]M1ж}2z㿗&9yAfʥ\P+)uF(e /\>ADZa5V<٧ FLYڸ].รtV|Og+l5MI8'S,aE1i[]SfbT eV{Q$ۚ벃>*`t@),'rTp nZמr\|n3` >f4*ec-AF14Yəy,.Ksi0U5W7KNJ1;P?lWk@t'vVdz-lħkr&kx-_vM!=?g'UU5Vمx۷PsYœ뚔"Lmz|ϦiE{ӀQ+n%mQ8QT: u\'y UQz<.'H2aҢ?JNgt faz&ol*I0J`R&R"Z? v|s1p*ry3al҇ kן\=Naӱ_ FP㋐Df9,K@:>Z iBf-|cwO#9IZbY @B301YHpw+ VqDrRRu%RCl^ipx7 ;q0kB&H x7Q-2q£i~2_< 턵)< -=TM%C\A!&vY8{ +;F+ &;Km5&5E# V06* >I(ɥ$oH ص|p/OA4U/AC5[pw}ٕn'F}]4]LO +MVv5KÔ,'\FK 5|ˉ`` _؃HE_K$4qJ=>}t_%~ʅjxIfzGLF ]w .r[X.^ۈ7Ӊ$q4 k3g⪝:>4WE f<Vn(Id,XX Bk* q |ʓeMހpi?b1~ӷ7}Ղ Hy([\TDTd8 FA="^ ƀ%OY`G&%MMK\׃*Mi|y2J@qzԨv6f*|nOS,*k:F:mhu𫻏R =ͣx "|an",1Hf>PT, 6a%IDTbj!3}ܡ=y𡺒ajpq xG2SpexյN 6gNA%qÔ ;۹{p$Iy$Li y1|XuFPmr0{#Z<}ȸYk ^k!#=YDz}+ ~)Uߗ|«gդ]^ZKeˬJYc? uqm$R@Ph8rЁg%1"B&^h#Ρx`?2h#MHPmrylA=ʣ"n!e`H~1ߞ%NF_a[-:@$],VKƽMOjOݑM^eDrz H(fLŋ1qsJEfI &&~k$N7-]W*p2eW"2Zˤ'JS?3Njd ء (GҧY.Q՘$M|y&Ė,Xb"/jچ/΄!ƴWH@E%9SVɼN gͮ O!wyt8z~Wf|)J@T|vylB8ʹZ lahl03ɴJ_KѠÇA`9?bMHNQK=TQKGA.nj)}w]v^|BwJH{ )x)B"W+Q~U(^v!HU {mVӥ 04 z?bH,6/#` WDW:j G=yi69uT8 <þ[{-8<+%n1\6ؚ"ԣaJYV׬)J%ٝ7P4 NiuA0j 8 "rT6̡ၮ8dQ=%:҈zAe\!b00^Ŕҧgw _U9 6 O PgXMqUmR۱ 7C t69zCɐrQT])$ L1.}2RK4st2cgqL]_t{;B0,^QG;rWH 6{K)F7 h"0^ $ׄ}(DEKPp&L]HmqiAY"*Z*Շs;5RHO@OGoq :e屇igwy A7gW"w'Cwh6 X=9feon]v*G;7[%w>Ւ2M. Ka# p>_[AIMі@֌'YG 0c3*gTdqU&tOMf<վLG}bIe <h;鑚{oL %%GpOrvoȝn^r Dh2r"KL#;>g¹r$|^Fkt(ꟿ ~DCar︯p^MW? Yb]>>pl;z7Ӯbr%ھ\Qq\+0 zsYǸ LV}Dl6KDX"jovk["tT+Jo?oVt8,権Iu1%_#-2.~] PY:ߩ>T=N.`\JﶧNKR&CItƪSlTʍ:|`H-LΨ"L&n x;\tVL .#?"vJu~uX%wimnפ)/-}/t˛ȴG p[i5YT o[kj0j6i _`"Dߐ/%mOA7b|0q*8ԟ~& yȁ 7|n)6;f-78 }th)OMӮx[H%1&q$a#@#V8߿gKt\d4Ձo"r8$!{l~9tz 9gTMHEPhRq+,_WntЃz~U/Imy =d36A:{9rkaUl'us0>˽#jO?pry;ngY"NXi՜`êeo(G=}D''Ůgr 7E֊55p GpV1ah\xQfݨ5ԃ oQ*DQwyٗQb׶!*Tfjvp0h{fޣ[}CGp?ᲾwndU 09q;s |[fd_RgL2@]4r5qU& N^iYڐʘA=RYyHxp5-S7,p9˼KCuWn?XK 6o[Fӿ#~k8©~}`[q;t4EJ$ xQoE-X_C8HLk uIGH1t^f/ bA@ <γ%ڞu8E͡QƷj$zP2ڳ) ,$$)Ȓ!CjzV+~vo{1|Pz7!^;4N//L@z_h@ ʱRv3RrW\z9:(S,qΏ@5d_6 ov-Cy?~ $dA@"8E"ToY/ZŰ%f g(s@=mp@M_s$B|P~3@90Kٍh# }WF/e ۅxUJB"K4ѳtS|]Yɺ{Ndvyyqb._7Ԣ`k`SM?j1bƱ3% mG=e{*f8Eak#\!=,!5qϴkD:#4mZG1-vsd A7 ^*d(i1Y䋼l?OBOܨG߃cO]a\aq`/%tSJ#q t-[/qtK*~Noh>[-'#ǯhơifIŁ}՛.JK-hb<%$K2}P(qMǮY=I&Hn4*?ߡUhW& mY{DUR $1.__gvj"/kXٟFC Xəb+PQ;NN_X|8APcorx3g}r]Jbs!X>Cpi폦GV߯$6v[7n&:D-ͤS sn нy/n741׿!8Wedi時k\$ډIVHeܳ?a2h#ǢwnKH<41=%QbIpl#>`v`O1(8qg"#>͡`EgFyT?q[@$Sb O%0=-;we.s:ߏ}~L+ZYb*^fQFX P$`hۧA4_ o)eJ HFYi PHp-K]vѹ}y^8sD&-6::.g< zK;]UL2SvL|Iğ4\tdb` fِM@q,y/=Zj%Z2W ^g9OE%ZE*C#h5# GCanltb-U>iTAɚ͕9M.OO괕z53@=|E?V44ǐyzUrleQmfCͥ_S*f'hsm7ԔJ۶.ڎEV>Y I?Is3%`{yƴp7܀ g@b3o"pT'܍L>aA3UލZ=l!~pO83r* <'LS T1FJOe}[;4tX?cB0o7èk:z7DnfQy}:iv{I\(ρRω[¨&C AyPGwϰ_\?#mZf)|IB@kPǂQyqgy`Vbm6bAI R껾CbJ5ynv- ʜjwB-,k=(+fEb,ׅyfGX 1tT=xBxVQXDX'\Eѹsw2v/Dַv &}z7#[3ԕ w"~BpZt 0(-z\W>Igb(;Qa s=7rT:]Գ,u>8Ģ8$h ilxa/Ӵ{{C )FuqPTVa6=7";!Q.)B[e_C3:-U ž"ig֡!lYXTR^8_vp o5U 0dc_D O<@JI/43UJ͵y,]`Jxm Ai||tݩ@<#6dX~I~]~B͚5(yp$Сy}yi$tT7"f1pR0 EcǤs\]v>Q#l.W΄# ]I``690* bgO+zQ67߈wFghz u+~Umg199Xɺ J$'\p<ȭm-#F :s̩㺀٬V?uɪ"/JT`7L%N{p4,dFx%J~Z0m U8@pUvCJ¶ Ê@\7]V0p\k ^"]L&o*fqg/oݻn9 NQo) g#GUs xY9,v+^Nı vY6VKlC2j1 s=2q~Vm1 Sxwm8]vCJA Į3Lv>#@H8_}w|b#f6EˍTqEGf@μnռ'ćL( !* ŬNBAE$`RczsY/`e6xn1nv)I^Ôc3u1v^Sgx4Ԗm|0滢ȇI9"dF50c*%h䱌#MLωf ߻ځ34i:‘۲Dx+QqMa.|+U: t(Y8ϰEhx:,NANN}PB!@Fm=rv&'icJ}aύOhi-9c#B3:Pzٕ6-ۍR#oք97HMJ]oSL$YZ($iYYyc'W$0kώKK䬱҄Ń'0yO 8J1ue\'UgGټD=KWF3 ""6: r uXp-97mBIB[̮Ȓ^@?:iȺ$97Feͨl([EPY31Qoy g P Bu$F2wAC ?5h87|[xtMX )8%$zפ{&o3Ǯo@7Yg~r|갷)W$w>n}bh"dg=}2Ԭv&m=JX`vGa-#L|Nʾ!r!ԕ;Uct;*RGdhQY@h:IbTN4 HnbS&TBy,s։D#fnN^6ݐգM dL9Ew75ͤ:q׍m|Ϳ;o+DT} ;R9kصr(ǀ @ :K(k.sn9gRagp=^و8.3k*n-0!+dԒdeo MOL{"q͏X܆o`>_/l27^?s*F6 sc3Rz̘xp.V'4gi{ +S|EXv"ihU&!EAcWl%pFs Zz%}]lb_Gg{á +<ѓi)}-hM"eOw;q!HKo|У j0֕ͿX8 9f|gQ wÙ?e\o>˒]s{>NxXuW4HX/x:}f5^EA'4וᰇ'$]n QZPJ15b);<jF9>|+QPv@jBp;vcUj,#y*,"듁 ^&H۔Dh{$ [HP#$@½E "]tq7^fzRN8{s¶f~ Gк)Y9 4ʼn!/>gQ0n3{@tk+ub]I>`|OJZg35p_f1 kC#hEٕm=MEJU&9&%-^@KO.ʌn+'X{h2JG}J|}PnMk1]/jm"tcieiХ7]m+P';eB 4y,do:KICˋ5iy2oA'+.U/҄TW B:mY]o+BM.5Z  IBx%xɮ?@~Fv,,Y 4GP#Q9'qq YJR CzE!}A'p_u1r4- Sυ׭@H=?==_X̻f hk|RJ>;)$\s)輐Ėk>UBKgWQ}{#TyO5U#Tɒ5e{|k҄j'7.t|qӓ JʠiI*nOLd?z%"XAy#W]a_IX<4Ck&yp{;gw!`_᧕@Љ8-3FQGoW'k#Zfߊ*vGf&oϕKhaQy4Z3eft4lH|8rBɜ˞U3<^y0 #AH2nBY>sZ)K`\&S(ب02:‰d,ٺkWkʉM/W#EXiAŢ31(^6^u^+#㾠8U` O'{mJGd@T7,bk,'ʏȝ!U{+c5j2e!w NhuٝZUҍ~ EZ\zJcϊiӀ;^/R/ VbeY';Len9M%vGʜ{@ #NT !*k^ܿCJ؅B"²F8*8JtQ,]-ay.~TVUx9IP29 8Pg8 ;( ?[":AQ+1 ZXǶʐ0}CNTM :YpKMC 8TI΃M\H'zB!%J!l{@a.y~DqYa A539Dx| O0ە`b?Ho}OD#`~.#6 =MJ&~\u)@XSgSsm+F\OG<:Jv<תN>x1M`IQPm)1N@bK(Ahgf@.Jim;q-ZB@8Q;BHv- prebj%~qXI{eQ0=c,_Gj }QVjOz3W/Lħ}P0F2+& tl? ) _^2(v:9fw5<<Ž>5vWД@ć8SX7Y%?ۤ{(ֈލ$C6sU\-mQh9*KKEcJG :)he#wˁ<TmVn m,$`!Pڪƾ֭b6L;TM1qx۝%Š=L 1oʤ!22?9VG*LM?6.1E*A!C5L;;@xkدI_ `^4_c~620k)Gr0Ar~+ýOz@ Ӆ?,NRaߢ+a_V 9o8 e}ﺷ/!Lqp z=׹%h26 ̜z`ShyWQ9/~x,L]0VySK5E="^6|뫡N}r9!V2])e'ys 3N)b995ٵ4I0+n'(Jn= ۼ g).>|%+RS#oE Js<#oӹ-`}C3<|(S(sbWHu'eI]*CH,'ឝ'ydQ XgY=Vd,,5+ Fn_Y>q8^`W`߼.~U{YFd w;`fPy{zr̫6>naq4ZJGr]rRnKbu$.xi>-}lKfpѸ8ESeDhsHjH0 aW&cG +wC4e:<V9+\O)=-q:"M/QIZD Q.cS6$Pddw"wjBd73h0_89֘WL!wU2'Ͽ:~Yc,Y3p2jo[b/FwyO^쐹^}:v+"̓NAI M5yHir0G-TJ&}ބar1`u:; 7Q2t9'S-{ixvoɐewQI~"d=;=8.^Άy=u1Bm>ntdl؊hF2bOuGc5בa;9 k(g>JxNUMR$~ɷ֋Ek-0~|vNHv{1 %ЩAıG/"EIjZ[X,j㣦d='Ռ0eYq?ӖW?"({. dTTI Skd*ٓësJ!:k0Nbʬ>Μ?i#bj| ÄYDxVoÉ{] 0~_2BY}'{rq(FJYc+G"?TA!Vlm5S50liE6 BI=t\O{ZMŒd )*+->`ۥïE:ep-,*۠r a s] Hl ov%2By=M>dSCUE@XBPޔz$>rLZ21,~ Gެ6m;Y3q!*&Njg53ofD-r*ON^si`m aUbxsaY'0f^PUS&|!z k-T,#<^M -uj. wLhe__md%r,\7?K7xBP1g oCvgrP3xj,QGg,ʛ&uˮb"7t㣙%Pbk@p%?70̒WsQk\}l̄C.)f_G3'6Vl.xxnz&:o0"Fph^;'4FZmvjO'_y*wFBSa`H B?9f$qVўֺ+~IEbDC:qs&y?N Ky2rdi/ wܟ$"=NgyTN±,Y>3=΁ӿ)%oSpp5AXX7M͊J ȜU!K8g]ܥ lPUGPO`QNw!ȋ0͍VWW.wqB gXsYD^BLO[{WqrV jNG]W1\ɠrA% ߈u"Hcx*++FSo.l<_Ta>;2hTFu"a5_[^ {?=?»x9).|K-lj&/YsziC+rfDQKd< x " Z E` {$&)!`{6*D?L9#mON6p?Ę!F=6eH.rkґVW,|Q-3y>J ,K4MvC!jt2F*5KDŰ%n[c.jV0(As k~WHLF=-_erFPA6v<틅! 5!R\R@;&\ Jc:N,tud # اm'#1shwc>e ŶP/n8J:L 9<68~ nͽ;S\ NFRK Նv!%GOOe¢VS3H}?;eRaIxݞ|h uqm&D,2^dX[2NztH [ y(I“Z;l3U]#*+ >sOze=5q$!mߋŀ:bX%4.s1Հ%\̻7Eh^޺ >AMf%DWADn0hZr֬qEBmQ;mSypj" ^?oB9T5e'x@/\` AP+-1t=!?+%e2NT\֜s[ޥ\%L $*-@hD0U2jZUłU(<+S.N7/{CXB@%|PO"E҈]ZAVU~C(5k!uY Vc y08"y-I-Ք7x\!@-Ʋ%p_w0]ƓD98".DY:t7n5Gw=tVOl+Rgk>}CZή:hN|VcbMF 7 ,聮N?I(,s(@*a>/yLȍ[x x x+gHO#x&X06(ҠWַ.nohpϕ(*%@1Q0N 8qf+슮9&!\ݵ%D3I>q\8rROQ8K7 u!qJg=R\>Uϊ6{Rk,BAX(I&]+k{ ꃀR#O!l4u̳pb \&hUUqfMλX,{)>[f_cTZ4V5EO:W?>FW7F:n,[A$$kǮa UMqo5摶9}ܚ?hnf ؓC!$KS dR M(ҋ6A : 4Q!Xs:Ptg@yuDPdKWxg;|p^Io7{E$!=R iajl T`z^Bu@w!PBw_ϡiY | _z̊]Q9}9ڳ @oL.RrLo!'ǟ m 0j;%5J1p'#,~,6(̊wBiS\ɷwLX~Ri*XPDΰi[:TOtqڐTGfV~"M|-2ݮߙӠ7/['PDii>lJ20wu"&q f=`է-j9Gx\>+U<.lw㗆a 4{eϟjlL{qaYf%"7#SuBar웣&S~S\)цZ4w\r@*[7 %[Y JY_qALI:<ٔU;Jhf.34=O]hPM $]ܖ.`9!S3- `Jsj^`ofRڈUf&n/Gڼ TE2Neg퀖ćӻ!I.ޢv`.8+U VuDJd u<>>s}Lm8e0m4=ZdB7꽄h%ZLIvč-N4Vx9ԝRw#*S@LՁ%p3[ݨ3%JeAu3 ה!b(U"r Y3zrD,+|Ui1 GaBy Yr {/r*b(wx V|ykg?|SFw&VPNhfRk6Q~NS!n-Bx=$1 gRK" 4>;:>;d&u(]b9 lV!NJaKe%Wp:./Őt@+C= L1QuT3V۔C#kݶr"S=j+bC}~,\.1VUML3Y^?T{Efq.Xסl c8JEeAxl2^~ڀ,|drv 9/6Y?:E@Aw>t3˴$ެ$ f:Al9 ' F{]n&|L*V@=Z)KxLC~4x=ofh~YTTHakmgN|E+U bRW%BiL`O)#*C}LXwuT _ 3xi9r~$?[ة `LFv'B ^چ\?>ԳQ$}Wbk=d۶fq\j_O -qxS3 Q{5/ ?ޟ]  ϕ'Y@DC(_>y\֍[Y4PesKK16OX0[Hk#C HI3Khv!Œ+13rAN#> ѷPpZb7j$m$NB[V"=tMgC@AFO`2,83lQh\9V2Ӱ^~)i[GE̲\X#1w-1IxViҒOT0 \pc(=h]bnXe~?!jLqa PX{|9l 0bB!5-qN1'gOV!ZXr֛Ys!aĿIzbxXcLW4 3|rK}4 ~H'I_ u/z7r/JH7ܧ;tsnrw@T[ <=7VvJ-n[eT+ (Oێ]'۴&zX,EL|{߹CFe"@ogX_h/ب~{Gӄ#iIBM΍i𾤮1sěk41w,6pà[ b Fw:1U2^_ZaZbcuֆV:(mc9AX6Pg`N*Xaߥ=bU~%r[{t-bkkt!\, `|1iPUh/ MvICWčJ7ּ'h7_lT:+*}TKjֲv-[j>Vf4JnknYHx/~HPK6m}oүd* }\$r%iPW?C"FkcUޮp:x"tmi .&pTcYެK8G&NB-2rnU+)lkR.gL?H|򿬑ܴ0Π vxCw]^$0O=c'=l>c6V_}?]liFY a9CAzx$4:;%MMuuMqb洠r=꫞/}s>6[8%O*n?(Mqo:ܧ(CÝ>t EWWA@lDHשʚ5 Pݓ.00`&۩dkws|W3Fެsps&;aYD_>{Lf~J_`?vܮ]b*`|N{Oug%<]< VF\Bj!FNBi&177bUqդhEF:kSrZ},9kUaHW#*36frӥ3S'fLjJ?'ԏ$2A/1ƧD`#2fHuX+yގ-NAh!y x `})g#TAjfæZRoخ&[O*9[Zu Mҝ7 tM{NwJWL*^ȕB4 #)vf= H,`춴 EP-WRFQ9,XYN'|=R2jp+D 2g"'d/jz`:b1)̓(jy L!SJiV.:*|}7SPJosn<QCC!5V@>uGZ.7 LlRMN6f\rz|JbMӆLc*i9>48l8^&*HON#q2`ڃEAQFș{pa9 =pZwK4%5{rTw sXſ="b쫟)[!+9-55-A{sRΚ8ؐ{}"7|v=8lKjm߁dsc!7ʌ|LSa]ɵn@pD]uInYܓf!x*}%CAGӲG\< e'%2VP#1Pn;d#/f3?}xNeZV`Gm7y%(V 4兢/Qe@uF{hNfIR&f~哈s$3 0 y%=|Y>ZΜ0Ywd/4af`-6cC2E}/&}mٟp]fEA@c6Wq^L۞x! "ۦMH\zZ:(7n7I@Q_^'l :J?&Wp{l.E3ym;b~)=݃OZ圙eb$ԇd:IU$O|%z^|A72A6M?ı @9pEys]#6Hy;1WCD'H@_uZsAI=UwP5+O&-z9DMsBVT+h^6NXe?~\ƃ, 4$|3vW)@crz>`f|w(eiS'hWI3a9`=u\U*E=hh21AW\J(د}F~"8FR&!a 7{HFFOLn~\[xLi7{Cq.5VQ@MRmزi6a~-F2,z!샠xҀݤt*nsAܜږdPB4Y1:|Cd88+ṞLn'R!^wCq3vޚ9fEY >duE槐bMRKW؁C@GoTwl H]dTgfۆֶv^`'JC=+8M,B!;u#!'?,k;ur8Y*sFxM88S5\v"gϮxEFm2?RY*ulQfu8i9+ph0vv$<3 AӢb{3Ig(׏d2^Dt|=Rq[m7i(=cy->haE4Iqjmc 6;Xl $ZE8)$7*ahoG B"](U8yj1Ysw8P:E︟.b Tq4 b7 '*Z2ʇڙ01*nR,vXGqV-jئYH)Ur9#C=aAlǝhk -W}Ha_+7-t[HEvQb5cA$!,vl_bs}{hw]_&Bvx1$4tN Qj/H(KT#@]e 1AcZ8k@h1]TیT9y[:ܗ#.8!B(_h+~Gb FU0 #fuUDރyݒV͎SԔIٱ޳y'xk ξM=&Aw̓5Őyg2CCʯbɴ2:SR W6O%~F䑚&8MC]F<;Bͣ3ۯg8jɤ}u$:74H (aQvgjP i# nxa Vh![L.u.i,l&NKNbM T5Bi~h Ҝ!dֲ*X-Xq~EIH$8Tqtѷj\XܜlX˿yIIC=Dcb QVl*]0qٴhى>we@0i (+I'_h XKr8)b,AˑNOI8#.^O[2 v}4o6=AO:9ޮґJiݴ>zxwcnԄ\9N$Vc_J0vPa9mk|O?߱"*DT=C@v½3WOeiۻ4=`d6ly9Yu CW20FsueRѶzT͕lm4#7VX݂+ 0a"w5K73*H5~&-{DOޣ4M:ʸdsȎrOS-uJ' >WO5%.14)c^<6/ mo+FMQK3 ;L#F g_bOleOYȸ /=z+p\IQ:񟓉7Ykֻ^YHojj3$ix@3'[[K9> 補RQf7o`ϚӢnH.<5UL;e!:*r`1u`WKϺͨwdÉhxfed7w`Q#G֏&8ujlfJ; lUUX`ژ>,TG }ͫf.rL1\(G7C8i1+6ioĭ߳`h0m{$Dޫ0E_qya_޹i 6D-E3I?6 ݊G=T",AksdMr|oeE3{u>ŸaUc*ym.)jj GcCƻ ]Fw%]qiF|뾌u\qQ9631WWZ Gv.ΝԤ;<t$cWpfNP0_b6/\`mKTe asw>9p4>\H2ȵ:ߓK41aYbTHo .JB!7P{yk*oĸozC]h8TwA]{2Fg̎53XA=#3kɄ1!<6 ۈV!,BQ^g?ږIʋ +֝͠VA(323k'=Ģ^5Gv.LN_S i(.5<$P͟+X ZxMpy&VѭL9>(q?[l 9+A+:0ǯy}.LGwpiv~#Ego['2 ;e1t=q_b;,2 r xCEd )\m;(aWf(|p}$?hDϝU.>~NrS<@l,15kxA"ptaJ>LxjOS 3yGОh!|3]YΌ;h^0MʻϦ3m/t'  /VsǕJHM K;TƷDLLWEiYR=KįU@ɾ;Cx`Z>  ]PR2ѭ-Hc=ŜWI{w{3~7X t+βLa0񼦱hQ=\DVsP[BH-hm&F&1`C{ZBMUT 1| M'˴դ3`ew3~n%i/x!hdIv1?Z[|$y"G$ VOB3xA7. (.1 =!و{|qᣄh'mDDzT} k9&]EHVqLO>SGc A#: 0yn $t1]ίj+3 ؖCƚpfR fP/vg}IJVfQ\H4V/!@_:ޠCzy '? nmݪn 8h0rdIoB(+vc40{nGo y=lM`y[R>X#o*zrd!`>6Rc/ѨM.nkz"JN*>"X><cB.ll4wL)PC:KY @Q#RVXJ+I5C̔67M|9wB+fVq( UI\F7P3IXL,$zrggi蒫˱radKѼQi$A̘TsBP}dlU[ht{pGAdlh(L:2}}zQ!zp.S4AW7 |rS}~cD8I  4fXLFSfe'H5ɞNGrJ n FFZ%2*r(ntIfuLKb }0 UHDj%]Ln(v$O 1MR۾kɠ|ۥMxx; JPU݉<85hsǓ5=%Zki\.}*]V[^&.3RA0r*8+b]q(3Z68NN/fz/&*,A~bP9ĽؼYrBfW!RCOvxVjxdk @9U\uC Xm:0[)z%{)f_Q%ɡ>ۅsdEZ]ƾ€pãubRrhu%oүy}6I(A{iH;[58?=cMnӈLkv) I{bvH;:c@LpI; =dM ^E CB _gv٘ADXmt/nZA~֝s}n&,mί&32ǹM?2ɮ&"ncv U@93|XRشD[n&nx{$BSVIf?蚛BchY Aǂ([yX^!mN.7{-md 5IyqAL񓌻BG}9Vs]S!{%Lx9+/fAJfSњm p;TsYʹ%UW6{ɾ,.D~N9~5]8gD\.c"r%_5O(z^k[r}xQdur= E\S/V$%cƎk-F y"4$H( =x"(Q'X>y4{.+&/Rx=wa";\I*ZEY!R7L;3b$8ROy+o`rHIݛh& >y50:= RW_j&7'zfh;ٝ!vd:R%lJ7 7Li)JkԀt *W9e*1!. /-=2^Q bavÖSQUAP'ga g02v)`=m'~~={KQ*]m<RLG*}caV[Z,p2dZҔwnL `Ӏ:hp6>YK< B @ ҳ3^ӯ S H/!uCETdFhʮl(mܘ&dQx;}M#ɖk>E7*mUmQdn{ NKD!=Wi~Dx*bJ+ĕzlv ]fg#ؼӛFJ3,bgpy-]{̂ƏL ,vlxņuw$531W+x/l[d8ݜcQ\ڀ^?4Ei9DZM0wȕsd2s3_ :e7r~r宪kpbIk3!үi- !BM42těq<3: 0iA:_CxAA/Z8pLR(蟤<1n85κ%ob8}! UmWipl@\;rO$7u-xӓHЫ%sh?%!EXCl3V*Hsmј'==ʺQU Ο[1р',#";[d [ Raw$|*拪8J&Ǎ@n^+.l+\迀m7EޢϷ4M"}mn/G+;On y9??!O/ҁD8އւ\%{W<_TP#ؒs{/̼)@Lӡj[#N(Q  4yN/گϭcsn2A@hS|'ȅV7^Cgv8?D! ed? )AKb;HW7a5mvy/Wo#S-Ӎx2Fa b~ޒs#58݂~,Y33P%`3^ģ d9YhT!EGԬ)=շ )8>vLW!)4.O,Z%Ao# iNK?\4^ȓ#*l_@&ߥbHIoxQʄ_'oJ@!OW➁0X^U^z`a/ӦZ* "S-Le|FJ H2("w,omgw TKdS:Y%]:| __nXĂBG,j@&$cU+/.-@&!o& jc]^]r|O̽_jH[h ?AD+[ILcIL IxX#uTŝ5+}R`4Rl,,p5%yfq̌ 96wb*M9ykp7'Z-ꐤt.&*7 ֈX_C"V%tb'R }Y [ɇ؎_٤I3R/&`ի^AWv#|_ͯ9cW|]Rfo|dT\z}3=HaiOKu>!eUd[ 鋘{!»ƍwTД6] %>lm\%8\+:JfV8f#CלXza%`\ NJ{<|Mۺ=g:Y>r_]XzއMe^߱4.De}rR-^N h9ZʞR. }1L- ~-xrN҃WRY7E{dˀL Nŕ[gƨqd(g!Uݖq2ڳswnbN*y ܆)"P e J@/9@ǂڐN ix2 ;h`ti]m7>F!1W-YWbڷY>^(>qK7jht~;CI$O" :@Lu(%j%{#whͅDc#kU5CԕL]RJYvP0 ^!! oР5f@6zO`r]NM fe|E  7?ar"WCRx5W9+{JKc!,Q$/Cfqo&7 N?ܰ'"SQNfgEhμL_!%Sڪ@UyKAڦv#t*&;De80CMiysX:gIj6m!kۣ;[$8Njıd=4'zΠcX{Z:h ۇ4ayJ6@L,OWP'{yr Pz˪ }˪Rb:t3fZzذ; ٽ5WvL}?i%3s N|C8.bYmo^_\\ ŗBWIXSX]+.E*~&e ~zC&3%·ÇgX&6Kh{$7HἶXĿeP _Ak06)+5׋_Og/yfK@z*B mt;'t~I%M-U{88Vf.jF*yY%IAN \SSy %lo*[@$6d0a1"qH(!t+2Hgu@,mzo 3I<`tru!K2m*l C2thڲ]j*f{w9qB&cޠ?2wrF\0:h2d]6 %@_y`1) Mq[YC;P0 sUQU+-G$7MG\Rm:5z 9[CD9ۘJBr ~}[iXUi)6p%cMF+̷?b rmgGz8rQ [#ӛO6I"u~ <&IՋyQx)o>٘ LW(zK*Dנ^UË}^|l*ƕ5~;āO?]^;]l精;8m5"mhx/`5,ui1QX4Cg4x|T*~vO԰5OI%^w"yW؏KČUj~;rlN^+᧟ȘVX>QBI@EAUƹH"<40E5ˬRVGs>&tc"|4CgKˀp/39`I:$^+Gŭ&q'JZ:;lPYOg%Ap\NfFk8k8 Wpp<̷v]?hG4XfgVY~e9čYS4!eiKB̊%)Fǒ U  R2=b$() )'kw!X2ԁ<%iVvv =R IB>V=۾O;SOA0A:H"(iBN5 ɱ`/˩\=m6ӌ(?AniB1wY`q)YY9T'3]BS \Q nPkRpphDĭBɶ-+쉤7Fm xlz$oIؑ9O34ή5%G-\2k,H"Ո6;¯S;vSJp$%F7n&:}zOʼn|wF힍Te~+axA|k1gިP#/|vnL2KЎkažlѵWD]ʽ\1hXr}([U I~Wկn;('|H'^ ¢nEچX97hX"t]Їq>DwavcS_dU\DN6&]S=zgَz|M/|n cc=E5&+;W][Z|P\< C>M@|Lc3]_ew& jV#v~c*ytʘi$p;Zr a;(FԆ;/7?~?4Jqx`oIs >lA)y:meM]J*,^L1t!#JwpRBq&kiyAG<4N^E@"a1%RѨ!ȍ/*04 #Q*)l2*z=i/ DA1U#dt,.0;M&f{ v!1q-ABsWN]jY(݁P:c[a. ck챌I+P.I-Ofi8M>"yq^qQEe%sOiH_/Ʒ- w4539wED3ybp}mKØo&2LJQMd~]kGkc$#e"_c ߨnsmٵD1E'dю$'bj*|2<&\ج0i?br\F͆h8Jj-xPNIY6gM@)3'p"fyU 02_nnXoDj0rAuW،&rsȟsV xv7ո[GâTdd`b2efC?%`U05vv)7ŅPQJ4rW¡!NNY]VhHtZj5G8,zjpWE3uy|"!&58 269hֶaxt^p<:rK$Sʗ,RaWKG{.JA`W-a׼$b=0oimՠ/,.]z"4~cqu>|:7u04W$ $)˹yS.6z: '1$4"ߙO,>YeeW+U]\TXں2o0&b\,vG5)}n;qS_X}}*1 Le@$w"jW/\a=E@ VH|)k3f[|QLm9=fKvS2-db|,/"q 'ݩ5oȭA)ף^ }tot(qA oI Udr D^&0 NR!_ .N^_?B)璧v^2߸7W {oޚB~*Rá̺;bi;2OL!'/Y~Wk;(vb{u3}7K%FeqQ%tӵqRBmh@_ϘLYSXPXcXTdپECeéGR@UƟs}nEYt+jFiԲo$4ɰscl+Օ)9y^Ƣ`_ytepbc%$!(!cmbyB ^؇`=F$;VIؓEVS%Fq)B/^=S8&[A)TahphK:oTȰ}՞%Dx3 _H{6^.sYhs Fh稀赤gP h'w1ۘqqdOVj[^)ׁVߪ/x_Rӭx_HIpRCRGhŽW.=Rb>@xYZQKq #Kt7s 7k4-hP5+Ys_`PqE$)e7O˔KckX&}@j 4f[9R2]ZW9?_uR%qkdkmL@qӐݸ@ZeO*a${ߘAi;[^]]g U/Gv Q>C}8g+2F`q(ކ83\ofIİ_Аb>1,/ɏM1TzDr7|PF73|tNVγob?W-2ª6eb5e̊_=u~7kְͣ?3'FNƒtVq!`=m8IO$ںU Ep[{k&9h-τMT} ʠ6w/8Q($8Du~Axf!XRDߣUb,3Dp]63߄w-kd<ȰK@-0S֦v7= #ge N-C54}^ pNs1n4(wDNFMX`{Pˁ  Ս<% "Daj+oYjT[2#eaTug-#jIR[D[hʋcai\- GT>:3#>3[nM@jx- S$'oཙ0fƙ V713,D u|d`.W.a,껢+xتM@M@fy3l_Em5bȢ$\c(mIƩcq)C7pkv{8#jm ԖwICپs}sQs欻v$<5>M^tƊџӯ1g06L9X-}WHڒ'ДeԱĩw~SĒ9S r/o* m /JJeWh&|ݤ;'^BXK=83*'NzuOYЋ_@aNofZ+PHŚw|3Lh [ L`1+,1"<c2IfiK/c`$c|k!N6 fF9w[ \Q^7@Eb' ^Z&H>}7y /'goy!,]Aeiq$gܦYPU0tLy٥DK#.@Os|P0mg0ȾbAe,$i6qݛfGT4|X}lc?4{ +݄Vv-`,(GZ=ңOF4Kr;EKK0՗~`iݸ6<֡1"-,x>":,Ω,0x:#Cg訑VPшn 3/4?$n[Ί ١;W<\Mqy>C%srRץ&<:^ ;t vm77k:&o[LEy5f $ɤ$&`poC/fqDg̲Ckђz Uqd:Yr]ȧ~a O𸛀ng(e OºKߤ r ^ýM7߱ZpfI4zuc bܵ8}^ p{WW:V5D_Oйٍ$g+t.Q9_c׮\9Z ū_+<Q]_N@K6sɣ [2foG5- >2Կp,[v,G=1UJ, :8 %SA4pX}C@kaf%1";W;s.Gr 7d!3r;7cY)Wu6C!V.X`8BZ+uw%㭫P̢b˙y9c*ec3RD=[sph>}㿲 KoSB鬾e4MAh4([U_zthI:hSa@>q)5{4TF#qˑR~X섯5xbe9E m?|(U5ͩC`}I9g;iP9:g?1z֜ūJɐڍt\je{x[A<쇚DW%Xuȶ"xBS6wqFX p-X}^}0 Z7@ܑ!k|$bsoJ LFRHb"f'h5V">))Yer+q|jI`61Hkݿs?,~Sc#hj7@b=dQc!WvRhUVPBH /d;gAYW[g<=fMxHqּ`w2q;;wuږ3D؉%\Wp9@ai%e*ax[zg&@Mפȵ*JCI6 t^OQ=נAUgq78< '8en@U Ycd)gP&{VomBOGxW(E 2SI^H%{|KNkfhDro_!]`n^Sv Q]\<Kj =_V}*g=(/~ڲ;Z%c0S&sxEp7~C&r{f,G6"W=ٍhÇ`@=`` @.!wf q,t֭W㔓I?ӿ*>:5->âg'W&[އi0)kvHk&>]w&ͅ  jrc/Jzޔ2c =:=iă~Տ4.C J#25{0)cxfH;XT+ge5=xp9J+>l`oC Lj3! V3= i%O/;CBp^3<{F4@ 4T0l L€ݵarfL}2R*lit&bFXÚ%*(FcTQc^m j{r'RE G{Eu"V8l@" ϯJ8nݽdW>w8&S+3)\]u\:ͬM`"pF@s16{BXaח$dD/_iH\6D!b0ƘI8`I}v[l cͦT]zQ1 ):!P]@J/qP(A|~Cw}| SRɠF}YUV<,R78 Qb!j\ ֧CO%ן, =N> sp8g>,p6D1IQx?[3/kOB3rm[]C!|K ݗϡpweJbn}RMfb8޼DhܽaoL1GLD=43#вKQ(5^J [-z5r{ ڗl5Gi pm>rIc*zŷ0pW"6:` KZBrX'ђO&𣥋b2IRbx湆+‹~9hInA"ԕvo oxg`w*FY'yZu h zO2XCo%Fu~6=l.2plMRm{nkۼKvݶ.,C`nw<ǽNSc ]pC ǧ< !X¨Qw Rf\=QS|KO;5MzTfD级,6TY$4}Q=~gL :r|aIF?'Z U#i V,qCweˡM o(0%E]uGG$SJں=w,cj[:L^C_)VO4[2ߎpdk*9a\K׺zūzb œ!e=!jBԚ,&}l3{e?Qrn)nz()HVrX;@pDSv4!EA\fA6ܐҶ>eDnCGa dw ktt"M ?~}c>Vx$zN湀P]G+ g ~B7 jw-1=_7Vt1M*mXpIyK&p?wVb<vZņԇtXRlŴLoHHR5lVc"^QKgzCWձ|0$=A*ml}+44oL"Xc`V\p>~5eg_lA$εP. #d봞׶ZySUAo>IkG6?KG,J|h 1LaQAv1f(,=)Х` =,، qb3%[{$Dz[nEs+2C!BD7iȷ'(Hc<)ZP=ʚ֊!Lfh+rQi^#Bǵ@ K_[)c>I`6pxXJ5u(2\=\yT1YGPf3c&v vN 'wx f,ж?a} _L{ϱ;7}" :DdHA#c_SjcExeie*exs #5AK6^\b;ɰʊq36С%)=H o>t'\LnLΚ EX8}Y>x&9WX| L.ֹGӕ\9[=oIF)Y"h['. c3$<7F[~C°5u\\$mH=69O$.oVڠW`yO(~IӔ9Im0*nl=/a2֪ܥR_(__SR-`O`[0'[׷lۗC\סgEQu_H('Wki8p'Zx*"V"FZ5(oU%׻ ./,eia$SdnGZ71\++B0 <ha;H^l@D?x.b ~/4)-b$Z(ԂWLYu$^|V :TFfavh_ӣ&]V =8G {_jC}9!{^asuRR(y[ K ju.D煐csN/Gy,X5wBaB*QC+S( [9_.?Wa2f0#[IӾKi78L9'ј;yv '8:mN,l=v5 }HkKύGko.j]fiƞBy:H5X|6JmQ";'~>ѝ|KYGQb3g_i B`Xkk(rӴ^<4H,F-]ExJbHu-LkQIxFwKZ۷zC ("Ƹ kS1%fi{TY!N插Jлy !~sq)QVu",ޝm$Ve\/ٯG"tbec9FSK)OllʐaDMjT@i17ۍTyLhDW2)gZL[j(NW/h r`+OM6;D8qշG?Hղettq=C75=l2FwDjék5?6yqEΘ(-ʥ~@/f"nPƺGE? pWϨgۗ QJ2j:)I[j靍OBz"9/)ޫC]ѠtEܼ'5 8YUR*$4>Zʏǥ-H;@J&*ey9m$>pzHؔ,v]d69{YoI=ءG2RB?XQu~ϜeSg3X)`8F*B)xԾƉ B G>!ՀkDlEQ6a*jt gq祫`uxQ9!\+8\zb@cW(m**fMeQ qvb_hGyB `-W]R1SLد􆴋_K;C3*eqo"άKHQ?cf9v8Y#HsyaDۊl[O;\ wl,Kf=%l4Qo<*hu#r-@<$lINR; !i8K3("5 =G5D"nc[q/QR.2pk 1)#C@(05$zuٻ^d;;U نvSb Jb"] >nf&M8Yi:Dex`5R} KSRwl ڷR??ddB ?VUبm x̂ a1;qz א<}V:Itꂕ`jv/ zxbe,3FG ~%\V8FGXZP#,Jk_LΪ6ky)Pkj H"c9vD`0+ϙ`YFeo՛ݝ` lg 5vD3 ǶURzvY5ܙ9{I&(ƨ0Kh0lJh?*NE (y޵:9xٕ4. ~ v6bauǥ!S)بǔ۫@YI̭h0^MQ!Nئc^Td 6sWj-4fcd@>ʈj7*Po}cEwO՛QY4 moX`f^Oxl&gk!;,_߮z!툝l ji@mzt"w F9,a)jNTe9s `]&lqC!݄+^]3?>Vj04}gxR;˩\%#2SF+3aYgLy5 Md[6ڞN'Ov9=Q㐞fqLGNS0ApBTZPNFpC;Qޯ;t^:8IC0Zy! u3 Ʒ_ ug\auN*F\lZY.D?]1(2{+CM4z&0@vs<;mncIvp M3oˠSCړl^?~@ )P+9pi | 8(\Z;Qw [I){ΝO4<"w*XRM!7V oY[3]jS%$୆gZk/", ,~R]+Fuve6̼qv2'l$t#ل^I"Q-BmW Hn l2AC$.s܉PR4*Ko!ΐ_T' +ʣ^|ق S~QNFxRεΜS-RysD2,*#J,*&*bS-/QT 8tA5G^W/byS04#f:ʐ岤eX,uv+ʾ)>ch:g$hjՉQUQу wnăKaiWxBR)l~$ږd9u TNr J")Kbm@Pp9=6`,mg&WNW#yZH6w\8BғFE>nmoZB:/EcNK&TZ%= Uz;E6gD@6;X#F-ۛ !|LKAfF_)3/hbFhZ Ӭh> X䬫xݰL`j-5R_ԃĐдq(ܰS;3#)>Z]ڽ,Bwp;l`낳O:?RİW?K37L~_d5bR(%E}73.:س042_DIaxquCSs*0`8 >+Gh8oeZرmԄ:YQe`v+1*"Ľ2$uQ@4O8:rf5DR3[hgQktqb-CZ`sDKl[4[Z)%bεD֚X!:LԘLWލ,O'[Aor ^N*RpmyS]zbg嵿N\E1`?JܡW Dۈ9(]`&`&Ipaf8ߦ?)C?6L{{FcjQ>./KAL!DY\BGu;\ד)"~DCs4#_ Mpb6L`9ۼBTos|Gic'/(tv6z/SaT$Wp:q|pZ1tE6B3ؿ%@|6{bolR~yIU$xXtwR+^++Eb?;)W=^ݺy#=̄&k4fjy؃ǿmSkFȱ}z*=Ӟ H3FYW3 vO,ZD[ VzOXn2jA͏spYl| 0@;p8HV15[oLMM}w>u7) #tݻGJ2lj<%jUH%6Km" )N#a}d#u%iT(,dOo3`>Y/+fVk#4GC$:s;EX鵏4zL}A6=|X#+?f˜Z`'9 ((Kt ߝY%4+Q٤AC(`R[Pfק݆!o2п2w1뻓g~{:LMŤZp0 LJ!EH 2=K|R=&>WFt:rTaD/Vsҋ|BMUa@t$+Z oP_ D FUr bnB]\QgOTm$v<-n2ZIovcO;qTfC$$~l7\oCd}ͅ`n3%0B$ԅWͲdF;upa~,nF`j u @A .t9uF>i$|'2W>.Y[NƓNsA01)Zn8GvD?2\vz@'*d:Ҍm6gQ8?\R}xYVnZd_s8=s8cY|W;Rx3odà_ф.VVEV@pO!gT~jEp(E9W^X?Or]+W$-ҹ@4HV@ +,A\6K:@l<2iPlßR*C*\ lq " qKNWuuW@X)\ . ]9Lʼ8E7WdT_v4^IE#° +Ex!Jh:婭KffME/9;ly%g I|Ο=ڕjVs.w} W{I\׃>"WvB,T-8n)`6Hds/wxA=\fc6khiO@|: Bsv'j3lL7GG'HkpTC?}h!ruxB]iԪ Baх72jpg !ݸ1c47%pkX8+dŝYє~AJKfPc Xi#Q)L!P`BlNjk&dҫV\u Ф-Gvj{_}e{#j- &\mU>sf%C sFoIenI{ZN+欦 Wć*IrO0LQH %`f )Tc6Z%t86Cyc-1J 0 ~ۉ+$Ѣ{rסiO}HŜ؉hZ{c5,:gtOC44 ta(l{NܽuI1:d?kZYF5ǂOsfdUXϹh1fCo"*s9\!XkaFJTP/dQna+̉?svpX&-'ρr9r9AX?8z6E t`_*o΄pqǶ_c~9'C`)&cHc,ʽ@n|q<fAw. Mp>T*h j]#1Β#cXO_'Pb_1d"BKPST{e:]uL'LSlwl]?gDUY.9vkMumdy.A-=^ ,{/ u<ǹ3&%fL~mzQh̹sG@dgϪ|_70PokU=مM%qLH5+5SŸ1f"}ʦ9eAQPcmȆݬ^c!Ȁ!\H8Q`_O_gnxN7I\T3'gKMwnib LH cQӌ.Q{s@.i[7T[DC) ].E $l֎ghK<9}b`?Jw9ZU;'^x޽ bHZS}sیLQjԻ?x{ذvް7HQqv`M`ݐޑ4lwkMb4@Ja!& bl٬m=ͦ:(_VN!'$`ePY s,.Y^EuI5@= 벂+ W|9 - UAs֗Clv&ѹ+؈P?H)o&n |N€$m??@mrzC*| gO{YsWdeptwV}a>2>9rIwf,ox{<}xv&!ԥ{ъ7M.QjwP-3_ TsoM5=A#GjaY6)|mϬtW4EaC)A<dn{\~} vO-`/66v;/}mJU,¹ȢyB+hh+].]SeV{{89_+Ԩ])Ư*Cx[M,׳zy5hVSlݛ䑵"kb$Pn v dcGr" "!bkVFl];#*V+0nށ{ho`k5gUxUlqdZ" oV3Bn z[RBӠtQ{WS+:}ܰ΃I0@OaI6H&vo@,A|6,Q) POj1:iʷ]E-ca/])R^^#Dz5 !qsH+<%Ve=`? ]Pڵa5YcF\gWܧ[8EXyWDDQ^ >ZxXA&~G9n+KmwޣtySe6V5u3XG gS]\Buhر%a꼫֐-"W3o~%LmF oL^z+)|9/o'F%L̼G88fn<)L̕tlFA+_; CjYdc!hѨ4bP͛;j]FEt3;C~PuT,q:MG[k\˺w%܅a8lz-&2hcs}_RIGJmB/8 ݰ⸒DY5GĦg&|t;W\B,:$s~:09HĽUOdG \ TDc廎&{uIHzXA_o}Ψ qFS@W]Wq導J@zfe7+)7].#jP0cqia/5K OL*r~Pq[z@tA hC=4 UB W~;2r ]~5|hDy>@]HXeeTM"w5^\js}#ܐ(S\tX'+~%-o OZ ^)]Fs]@ 3@`.eF< ^jY}̯y8i_++w&_nxs>WZ}zj>?T2  8d]0DQs.ϫ'܎{|?W1u 8Z^7Q{Ձkl1uH%f*5N`m+.K0u~7qaBPh̙@ȩ%r$]Vy"]hń(T$)I5շRj¼xXmDrjL WM kSk=[QAp".ɭ0 NVpPCĿ*]}Zq'aʚ ܬϫ{Ys cM$#z˰ bہ;_nDi*ʲENPd=H{cy{Ny'˥T sW9o͑e`_?jGJJW#/ Zx݊Ry¶$78L1 [ln n q&YF@:b3|P"e 6 Ҝ':/id+mu F WDl{9:ZgE4Nywhߢ* $|V!&^]</73&~_\g˫j)vۘ$Gf[o628~<<"IyߎLI/~-RرTk9I+-^<-D9ʺi-;bAK,q4Wc_Q^Hm]*v}T۟[?rd6r6 b[> /L(򘾠0JqA w<4-&ozil6VtǴE]`)Q[`WJ= iv󱬝HJ̧~dy#HSb=+T?F6SNibd| '0_CTP_} s9ئˆV]P GNmVlE/]"^)%[|܈@g(gJoNc p1t}D¦(\TH<揻P,S87Nq[ _=_ C$շ<\ew6u_j߂p1rcCD]#1ھ8^%W_zOxdG&e@eslT4UA`AAVړ23zϽX+@-_ay{ƀLې?EVvEvgoAap!!ͫ s)J2X˝j扏O&4(GwUI}Λ. sUXe̕{f8v"akfHŹ }麖3[j?hK4QPXZ,G?W|687 EGБʵ $,+G,p_VjYz/Pf$y:8}!(q:%ahhgU=ǫ`Uш1quE%=8jFN.)v l".]YIcvɜeLPN4ᥞiRpk=dP+A})I" v -z62.ts ׇx ^vJ F1syz.[F ތdTSIOYOj דt_w&; 7D-ҳNA-L_ʕ4n-"O*@Mwv=9")ZW]8m;|YQi p{VYg#Z/j(ײ6P=Gss}g UX!vfs>X&aRc$@~hȂ̙Om,͐Z5#y@SSōF}RG=HHRaիlMZ"`^I-OL*]n8}Kg.s/TXQS 2t"# Wf0lP&hEAxs6{U؆+lYJ.$3)T`"d"o0"jZ4CŤdP/{3yXMծf,i2!_ng*.ü΢(; xbpI8=_{ n\i,~w-32Zce@/k.) ւrxx'<n׫H5r=uZJoKf4p}ogv.krP;f[G?ӕkt:͆~ts%W(t=I{lAFUsۈ5Lv4N\,F_¥[808Ą2@[L2A6քԃrHcNQmm}0;. ,BܟHB5FM1ǞY0]LYW4'5?TZiDכ2K"|&EchIB:] 50`qg=02}؃(b Tr:G̘ڴf 3`^x /T2pm 5Sz;忖gZűmпed ~nD7(t Zt`י۬1}k[&S(o@Cj*ht*fZ͸qs-H7,Ӄ[<`|sddzB {%*BԊ-q6Ď@ݹD꼳%j 4w%8@rf >/#Yv`joW_OGctd#ԠYz[,Fou(HN߽*'lO1 3(4`X\"X&\uޗy7w¢ J; j0XϥIC0 cI2;MK?^C =ݸZ Љt)1^ s2L"MiKceuԘP Tuk lU+Xk?[۱_ǃ ;ϗz2=WqZM(+C G8%8peGۼg\El Öⱷh1JCD\uB͕YS0/O?@hcZex.<(|/ Ϗ`-}@N݋lOh2/(6^u$flE*kvZتW%)@r}͆l Tf2L77k?PP Wb/csWĕ#vt O ^V}*VƔ"XW@>}3LfԑFYCw' /ܭ4ٓjdͰ{N6u`ݒh#|p?k5[wm)uw s2cnٜ$EUOy~Ac5) UUb tBȿ8H/$uM q?!HH{X2w*nL2*䅜TcRgQ3b$A3F܌:)}> :"Inc=Dsyq~c5\e! Y26|S$5'tc49;:^:@t /@qu#68#W:S_V{ߐd^ICllWrFLVK~_ ]L~^I|!x׿1mi֖$(tj)z/r9&&f})t*M%'r?Nx8d|"uJ}uǣ]UϨ}!y1CR sUhϊ v<< I݅Twg⾂<ײx6%z*]^eV#";}cfD0POYYXI4X6=37t((Ih*O Bl| kciɺ8l=6ܧr5$2&$R_it.r{v`dF4V*{)&4e?8{"(VIWQ5G{@zb3rO!kcWKQ33) Uֺ[iJ??pTI!S?Uo EK*6!ESx͇10WL5-'Ȍ|Tڶb LDzx$lU%u係Ǥ{%t=8)!Wd5V1N%L۽6v"0<,F0` LEN @"zbV7$]M{BVnnsAvdۑMW%NӦ8Y CqSӰ`V`rQ{d!(ʳrFfw-Z׎xEv1 ܩ|8ٌnw,6'^Zn mD:OUޡ/Y8d'ؒ^bx 1&|ҳ`qlM蘟 M-GK*)!ACHpiXnjr8!O0E[s%BT$ @A}npBuvq;vt[ z - *>F"|"bKWl]ۺ Yp )%gw;Ng0,p7oxʒZSN7#_ZId~*^l9KZ8=k31Jѿ'R|6OU ߚ0ďTWD eHBbOHNLGr~ߜK/5⚯4bIE3NyB_[wM: $!OȆ`iՍסbfe ؼBA]_4eT/{; Cb)B _+}҅a{E$atp݀݌V UZcqG`S:c+9^}r(֙[N˶~y>ArݢD#?9VÃ7W@$' v:}kpߌ!I?y2 0{7ԇrY;Hߺ[5\'?| MdTG*GZ"+tk|2/J!N*E!iK r1a`aS3 [a1p* 75ۈ؊%uu2 %_` d@9ml2?&bȼZ I:,Iv<&ϊ%[2gvf=Ρw? ṙDwn2;h*NTj$[9Xȍ,u5RS3\: Z S<ص_I۲!mĸM-y IGܑ0F3[P cɅ5#MVlf-㪱'C0,gmN݃Wx}0WYڣ pK|{sd<$JPEじ(n}Uwin;~1Ԅ4 7:.~FK<hNle}D[28qB~7pa;xw'! Cu#7H%D+|vfp~C_C#>,gWM)GPxjUm >lb{#/ƢVZC*~PC Bo{n<' hǍ2Cp8-e\[bj83$毈#1\RbvLPc_@8)Ϋ6]ăP¾m#$cdG˃ K,G_A&氅6ʃD)9Ew[Lu7 8M)h4j8L`o=lgKag2Uin,]x*SMll_K r,Vw}5b|{V{f͵,Iqb|]&C[ᛢFPx\%äLjB SI? xCWdR{r,VPD 6i۬,nSo.C2{"S/æܒ xUGSjx\Sї&r )c1a2AC!e 5W<A޿> O /NEdX<-aNts A{8V8ܫm_% 2r y=moh`5r%8(O>YuKj% B#cmY-YCO$.r`%"̖ R9ҙHXtIGT 8q8/“*&Og2xo֖_hO!S /}{ĉAAN~wçKTd#PBDc4t浐uq3r?XބZ/jc"NaA1O(S4k!)aEnϕp8Ld~]9{r#6 x(vq oBERpoҿy47XMCF0Ej tBU]fKul|8dXjPQ1IkJVf +5zp)% 94俸rU&P uT4LO=o=Zx. _炬DZuH6 nCYUr 8Z;e 0[R'{yWp~=fא܆w**zS# \s@%X8>5+4+4h٦L weߩsئS|`D hϕ舸r{EpZv"A7F.I`%9}?y"f5X^VhJ_^om`0m:7jLiZ.FMHm-/^yZBqS0Mp`<.z 'հ.߁%;dAnhuy75~MBmV/+8l_}e%¯^ޯ"RYo|ÿd(%D'!7o_tnm B-qX&r/[8 0/'w~E3C>M`~d0ʆ16L('PAG\cS*Jc>~cd`mNElsZHC$ʑ.{F-P4E uĽmYe Hpw 9|".#)2R3gQ?7'Hfgj& hUٳ6MΖ r"YY5ch누l(ֲZtޔF\ ڠkƔ^}&zFLo{ ƯB: dV"E0.N7B&hwu=e+ZO;geoDŽ2`NAZal}",c7TR6CK]Vɸr`bz]> 뚁?5䂳Ӂ:p0\AY:yY{̕#-- o'n:SƻjJ!N:~ V`s@UԜT6r2aJVu.2XQ#>́$[ jP=.>(pz"}r/N(.5+pK"K$vBƗِ4W$ݑll};*" |D +A#m?~Xg# 5_b?x.qޠԞM4qmmd&UJOjN@PHrzSd{=W\ZE:okETTqhL,QO/f({ 6kW[gCE}2p9,IE*[lgBSKi[bjo>g WI_ea:}2δd9z3VKAP \3&hNྞ#&p*2&gJƯv)HJ 4, 5-&L8z2t 9e h$o-/PC& X/Eh"侇XszNpq.˧5A 5#-P q 7/Q'`%ޑ3Iq{GohEW\JtA8eC-7n, hƄnmq 3짴| /qXl..jz5B<|KYTǽ-@tlCB=HT?3E']2K/+JBFF[ ba0PUr.vnǢ[ס~p>3/iFESbl O>.&!en\V [!+RpyK7tG95 WW']fMU8X5Eԡ5{x? *gXhE:np>ua Nt$7՜==A9Bzcc eX|gbByΒ@~ _#59gL:/[U#Ƴ=y#1Y$Q{p;9&)\dCSBOd;[g&j"ibL.uyvm4L>oK|]6̧l? ۡw(Za-,L_8+8jTIUfBP<Cvɨ"",CPub?v+:&zQ`WMC wj ӽQ"Chcxo>mܤLPKɐo͟UK0VK(Rl om"fEk?ǯn? (K[K&Ԟ-6ZlƟ(B(|ʙXs/)&xxq2tZX:<GLb/% G6hydYɴ2?Bϣ&HrzO1b0_=9`TX .Pn[({ jx%l;y`Tt V`ocE^I6"152)I~p"y‰#y$Pv3Ω^{PlFB \C/z][r(hjg=-)"Qc+A͏ZmqfJFhM5tKhԀ֠<'sUϕ k11M!Ĥ]XSxkV9OpnSnX8OV)[᢭gUcw&?^ѿq-MC >׻OdM6.f{Zfq¾ބg-fܫ]dM1ȝcH'N+*ʤ8~沀+sӾz'/0ur |jQy༙ХK| %UfMi]KYU eUVa)tHĀc)VIqnѺ)n-JTi*:bs*5QӸ* :$}HlMzEҢL~/IyBÒ^F}cp7gDF)!"o}!88R0Sqh>VWr]8gC,J~녋 e=t2/u=n^]% TZG |x˄o' J n! na^:`-A%U'%҃ ,eR'lG~T>o%*a5>oC҃Չ5: 3K:2yzBݰp`0*D@5 yݸaQ62vjAσT; )M3x5%7.7z4$?؃8<;o f R6>~kcy4<|v$4G,B0bqu]:V;C^N"ۯӀ vAT+>~zn"9w}tf,I LN:5CT'>6cJrLOt_s?g-/Rܲ"#`1{ p_PYMdN .y1nmҞZ^epi(⓵zD6 sQօ\`jk4s8X1 !N>/^ ڔn%xXK9pnv6d ß?Iئр1uWe ɏSM]ڧ@pO RW:Fsn.ʗrԔ:4lxɏs9ZJ*̈ss 7lfxZ e>]ƝBU^M/iQfvHD *=|!vږl)?X]r;f)h~Y5l߳4fap8.@zvP`6(/'#bd͠i,F y9cځ{+UmCc^L)+OƆU=6bTOg8G%*7"1&z:sfC2 W:i鄥@/" ZˆEnXS¦OMO|ꮖLE?\+Mѹo\w B0O6ϻSZJKG |T]_I5AɁ^.JaEg0JKfh>x˹pARO1Rbr4i7/:z$Y|`f}FbE1KX5G:I"ڙaiD3DxDr")aq|uaTiLn ®~RXx-cdYh=WFp?l%~Vm7Ժ|TWNTSq_ː6|̤{6#USWMN!!ƍNjRPXH[}6Tvk,z$ !>,fc q7?@ah}gm9l|Tp i֓  K=ȡq %uE^.:[_-8 [=n ysa22|'  w#^X~.]A)νb 7ϘےNoKAZ={PM:𩆏o%0$ <{FKڏ]E7NP`J%qݶovP,VDs+Լf4heeZ*2m `<]A"ܫCMx4!_>`e7(brduaj+?e#A2Sm"nY$YԄ'plvp ڷ%OӵY2jͩHMMS7W,c5TЮO4'Og {d>R xZ1es\ŏ1AU<<;dowK0Y:ZWIšQYfZZq)ɮ̣ i1,?mAK!/}&[G>gcE=v4csY7@}. 5jT{sEHItq 鹖-}ia1+x H902G Kh2 ^&--Sk%?d~'4R,Jyj37=S{Ȝ[rө2aC&*@l8H~4pa;;p.ʎO?h{ y+eD~fR m.)d H96K DՏi [bu>B%hb F#~;OpV$W]vbРSrZfLJxcz.@?cMt˒uʣ[e2 h XWڛ\A~Ke uH zS:lfrN{݌L 4Lq*y].@r(FiR!w}/Ӟ![C3_Thcs{˒s *5 s_6GGn-Gy;ʌQGI.AJ]&c) {2mF$x$-Wn #($Lzȷ =|Y$n_ F,b1^rs0[%w뼄 QY,f[eA}ylCJc XJ8 MUEv*q]QCW!'96.FyT_U+t QG/8@WOnr a䭷Wa"e^}dg>%1ͭ<)cY攗'Qü⨥l֒?e{`IGù ~6]l렘y%747(-Yyɠǂ[Y~u0kmCXV8C5w]ȳoF9}])#B@" w6=9_Ƅ tJu᩶WcӏpH߁:q'_GPld#~(HPxM\EQpګ;3f ON pY$V-ǿN~}r@9v"=(LKd/(?X}a ,O@e\\Zs" Ir} +ȴF1!7J 򱬨⏸5`Wp$v%  U^3i$GZY_a̻0yۉ'ůU^uY'2~Iq0bm: !V0sVr? .s  M]AΏ;E/T͠p|%7i75CxTRR,1fiMC ß;0f,@dj؄FQN(.FFr*їF# ꕣa7py}W&ŨR i! 5`(_ks.;Œ,޺,DV$^s]VEnXQѩFMЗR<Xh!(@ڜtVe1@𭩹hhhihDQ .xޜc$U{y9Ɋ˷n8㼻NX߭Ae' Tno+G0%:\#re`$5dC;Vtj)A+ߴ ѮkyN^U"z#56M3G#i=G_w#P]nU1֔B.v!Ng4q4y*Km,UTzx1t9,9j{T(:%Nڭ H yR3L K;Ǒ: 0LmWC)<~ϸv޽-x#:8ޯxQdB@"Bp}䆸IfƸ P9eV&4tT 5 ֒nӀ3mB(b Յ35c$μы{} Tm ~xPC4H\i6;Ī,B޿okLwP@H-JDYu­Qbmǽ}WCay{4cد+TA_(, [0#eIpuD(GAdB^"YiNʨ +u;*xUDA?% ˈqml~;.K[n>*( 8_TM ޣx4a UVi5v VrZJ&│Vk dQ<_0OMb]gaYMVckkqf0}j]p^.~i&Ҡ UPAx] 2f-.TW",O=!U>9IgN 摞]Ye?m9ܵj;x0UB4̚d;$]P Ԯ[vA:Dt|#) Xۃ>PB==Bd&xH goE,%!тln噽(EY"WS.Cjꈢy1-ZZ??>Bd+gW &@埝"G91A86!)_Wď C>|I1s ? Os})sPZInp,P =EJE8^lu%|]C~")gC.fN-vϴ )|1|S$jۂ3ugHZefRB5 )%C=qR1V%JO@dxyJspQHK*IC" wNK f (/ =En_d1?~-x{C9{؞y1|𙥝F)&Jn]8:84:{D|tv~6AB*5rNkʘN?O@K79,4>ݥ8*sR q<fH{}\WVBv̶*|} ϠDuNSͨuMsu\q0&GC,q.BdIüj|ٰ&z&7uy/w`4bg!96oنA(Kp`u$qzz>&_4Fa 'dJw/ޫH6Sd1NWA9 n輙E`'H=`%?O+:P;Q6KePR(`RF큠ww'JHLDC *s#4!?0KxXKgo#֛۬i(mZ_5ndf/ǟ6gZLr6w]&[U2^Ř,Wf.H:%@[ tE܂A\ ѕS@، օe[ʔU`m=d7Ut<_FnRuC@GL''YT4ZUW!e1!j 7LӝP:hu'p$fi#~럔AtV$QJ#>Q)} Sy;|!WbƳS1,긲G*@SN ix{PW<].`}K;d _?ѝ I9'#s=WJsS+#q6#2#|]Ч 53lFϥgtv)j!qRYW'޹R"$<}nEjܲx&#RVIoPhZMF_1P,ܰ%a5_d"6mh. M-^IjF!l(xRC l~k+W -. E(" TA S\h *C&]@%ImH?"[沤A[jԈ<aUPC!}QS:`  x|M](2 G2&hm13L$`bk mNAZ={[;[t7C|w1Pm_-0I([K!JgbI|B(wmI7ɷ?5R4mCCN*f .1C.?Rmŕ]7~1Lu@q s^{tNd.s}2m$_ek8A9=C cE}F>e ѮZȥdM犙;.(;Ef*2i?|5{,pi331W {mai&n@g`Itv֪/c2x% /z_IՇl+WJiD(ͣBrDcj:ym~m`ciTK>F"S!y hN̐龭H`m!tm{yb4lLXm`\~yh-!2cߚC~D9.?p+i9BΗ/)ԯߕ@OlC"i׊"x"t9CsLf/!4L.s-5BUeg2nnXDL!l]ܣP,$jOxG6t2_#BDd,$~Fi8\&nUfm'3`|p2{NF7c܉|38XG6';/$0|#bA{5dSC\n" l-B]Me8xmK=c4ŷ̢3Dߙq(H}&xhg\r#⊣ݩk@0R 6,i+91ݨ57; 2uCK#.:"A}{y#ۼ]NbQ Wm#iOH*f(߃:{Okw14^KiՊPdֺ>i8kYkpԴHT[h:|J֪f$)E!Q$f-Zc6,i?n952#݆9~m{$D--:ء)} zsf{me߯ޭ> o]r04tptefiRrXҍ*^CBa|8#" =:R`Hl΂)/ӝ,8]nN'HJK^p}s!̉G>~ja4,kp3y \ 1蛕15:e_V1z]4cֽ}"SC&WdT cIzk(^ݏ臛369 v_ZbPb Iye|<%q8/%Y`_4 0>[ZՑ絕ͬN"l.J?dtkI~R!Y$)˔ lsuaRaqU^Xou%ea ?S:/GJE\yqŪȒ )L ag(.btI;8"諃kEwWeW] h;j*=š(7ɿnCdÈ)`KqQi0s/PH%;~~%Hd{A޶_Æ~/0\ə_&{ra|y?if"@ 5!8%vvKیQ}bEIĹ;5sy DR͙'MjF8A˨t1O-WX36n?ֶT ]v]&IqsVvt{! >sxLͧ!.U5@0 JQ{:k.1bѨE`%Su*X$rGW67rSRԨ-le8 x2ե]ֽٔ(_Qf{rc+FmiYUEJ{:Vz ewOv1?GǖA[nUog)AS)( P2p[ VAh@q=To#&s* @Izq"c1< ؓAp!P9kbsu_$٨c^Є~b4MɅ'xjRʚ6eI~r.amewrc3!~p– u؄>#*j%&͚ΓCV7՘BQ ճy_FQ%I 礚FDLQEo%}DҤ۰J/"I=a _d9/Bu4S)o葫4D?rOi>VYWxTyf-ω8ڄJ4=0r8Tg.L֥|lf YZq]--} i+ҶO9CyFjؠftk3GJ-+kع](}_i3WQ^z6X7o b.wr#j] r" 4桠-?6D?u<]tgڞ|ש I!ϟN ]EiG(*߱F9ϻ{+H4:Ꮟ*(n!|xD_DG =O /YJtKSr Z:ȕ)w""Uޣ+jpSdASގ}|Pb>2X#ÒZK9To-T|kI}Q8nL@L?פjRK1(P2 L=}7&MK1P|c+Rgߒad%q5jBR=l3D Wxac[-p1(<2} O228 0J]6d6uQ̫x2:3۰KO'H/3cM ݞ=Z9%(#ϗYQjz'w}G=C o5DYΉN}~w4ַqak&\ !`E!}

me0 mT%֏mL Vzz$W\r[ANL4f/}nN9ztd&$ÿY56SrݳB/|4G7TWh6Gk; 079ښ poh͔l%)ܫN]_ 1vJnkQ0aɆi rxJ.hYbW&~kh<$_&"uka6ӝgh'L_pP eA6x %iCZi# Eu֠ icL 9i[K |\u߲M~4>ۊ%-Ch!ZQw˲c^(yREv-ӈռ#BUgxtZf0(O@4Q:)4?_q;X8TǼ Z޷:C59׀}JĸO4$f]^p6i_*Ƈ8 eȶްUn|ܗ$TɄdS׻Nv'{s!;96%I# VXM9I&Z ts?VAk/-SP. G"s-Mjoڡ'XHڭqXy7=f@ր=jq$18C"H@bl)f47ydi)|pgK/hWڽ Ne4q, gIxr׍]~J-v@&g\SRA6Xiҁ':^1n[_UyH<,ztz\NXSUim5[%SzU$nF C40ZQ_ {ufmdN/ohvAG ϝ8i,L>`@󅉰V6_I?y2)I'D* hkN)xYJb޳*Eژ"wXβX `a,c*[6dE !^W':vyN-Db\`'sX<(eW!`q/$;D%?-lS$!$/c*LF^2䅯[*eOD\Y rsʮf^Gh5һv۹sY1m`ޮV#K#{;13En\%ETW0_Er/"7ֻdg-mN,o^ty^x=5%#K䶈)A`{hb*P`- T;7o3wgC-D,Z>oNyW$ τQuX^%P|(IeemU4VrCZrż1@i^OTbzK~3|*L!βM`ĆxMuvuG\\ΈNFnخVCOYM0kE\IҏC ge|x\OG83r ŇM'5 BC7^~ =q+1_OU5( +ܲxG,Gxe̩lCP34lF< CWi&!<Lk'>*%}vf8 n'j^E;Ryoċ"ˣKM_k7:qͪMŸJ^XiُHO`;!\ZcԾo55%S-w'MO6E*#m0npӎm^[wf(?7ߖғ"@w&_ U0A о= O]^ۥ]bKWJ23SoMxG .f\iScb߼9_ 5Hw+`wt*4Awn@d.|ƴ"?C:e(2鐔P!ҳՈ8KRHֶ0zΕS փes4k[߷{qyyw?HA; Q㖜?#1%ـTIbn?.Oް337gaFB(݂0]DqA> wԊlxb~)bM|CZ?}F߭G\έF0IU 02l{ #<-Tg }m_a!O$U=x9X+jCY<]aa ]8Gvޔ-.~t)v$2ԎLœ.TI±Erব5P駦“3θYUAG(i3Mht+o IqACщ6JD(2Ջa7S VX!,A/-b)Gʪfp;+dݗ} KrasBŖ8ƴBH:a;zc#&Ju"*I~Y37>\Txb)C& 6>7ki> Pq}l K=2Άr1P)X:&A dpzQGj |W="^RorAX*ɽa߶4 =.*>+Y׬_tStϔ?cg3\;y@ᝄfmB#"oMҞ2_Njggf:2L]Ng8Hn D9*["J]l5̥`4,GҾi !}XKXh vLXB"l+͇IPo̪ǚեVp]W&& ;Q2 }*bH5XP4 g~@A,uF_[sD(f$2[v. fJ-Vڮ9&ymt@'Y!;tD yFgP N&L8ō[dۦ!X=kV"aQBT \qad13Otb‚sI-=@WMoNJP#xۇ#E~q/qQ/(v 's'`=aSsF-a?PNl6Ѐh#!B{w ՃvH~ը* dC59v*љ`|L&@-@߮Z0JvŘjW==_=N(@4T<{Vy ra1w-g6} ZׄQ<":- %e^N?:q|{WEBn1,?0^'#T$ keCv[ ́7j[nl\hh Zf&ur?{PBǁHJ 88-<7JH-}\-|03Ϫ^ +&KB_mbTma5GP7/k9dQN,*Z@/GmxB7U[h<<eYF>ϑG(ޣQ9S!ޞSz=>ziŦY/׬4tn #Eyuba$  X6 pܩSV%,,Eu ^X{7;JRIlue)1KNK۵P t}mV *zJrȀ:(J㦸fxSTp3sccg_YʧTH slg>1uEY."Xd^ituN;ҥRM R iO0lofT[#|uDT,Ly薝R4%Eo`,wiݓm亞TOHK_bGK@vJx!پ<8xwhNg_ B6[(I5/ A!8 .hȤ3H%ZA|z8vlXԤF*{Xv`SRД,@ e7gy` 8e+aƪBÚ]6jA9HқqmHo[Pzx Y(LSb(mM^Waۃ~=8]dZd!n8/}** ȎY<˞ X^~֒mB&ϲ~(ʈxK0j<u 9/(Xs@VPr|J_`ɚ ƹUK]E;珍ip~3Ope@V' *] )on+b,_u!:[Hof Jbam-O`7q KcUe31B j.%3tVtٻDZuc"tSEuqiFŒM93}2WsJlaCbd=#,U`U5 v>H+&[60B!H@V4ƪrwbn .<95!MֽG³ ]ͼ\~%8[|EHi!JopT,¾+Ck2ai1u@[T3嫿b4‚s~8.h$oA`EK+GO(DžB v ݜI4*u q|i#! ЖD蛬R‡V2$SJ7Dl߲<1R+=!n=Qb]"& ] uAwKP;v^$"mVUwkRc?236և{?_ڿP_HC1rTf qx.^x qZa-l[58R3-iT̝̈ءﶈdؑ@LRy=px`rNT @/`?WTXY)cbYՀY]g> x׵'Dnf?mr MjDUg1Q˃-phBt0mL-gɺ6M!!*'P'U0! ѕ"]?qAq={Dz")$~g} ɀH-E=`*ɹkaSi&x>j[J^@&>ZHNX58h s-CM狊 }L̎~Iw ա[yS$A@aBD6uQ R({|Mu{O&˹ x'ɸJ0rvM-`%}@Fglƙ9KrE]^5+߆Iwfcީ0y $4E yu`bHQhZ5n7{~C{@nlge}ӟff|gK9}q (7#ve^<}%a9$|]8gR+ T^=2b =3U||H3Ӳҳ B!Ia_>+^ IwwM{NXrD;>բA8c7Wlʜa% *TDKq){w<~礥<_OZ% xۉ.^TEUq4:pyrFd 8!ѐnO-{5gmInȓE06gC:t_GH$q ?+9#?b?an[H'7 T`WE"0<Y8* O3:fk?#8u_ڐrvxH:xH\4i*hńW8v/clYh*@Ual{7ř&st  %?1qϐ%V^C3qP9+/$\ a'~so}w (AjB|*)a%h:R1-v,HH2C,zdzy~ᖅ 5FRdS=~ἪTfфٖ҈L6)>>_˚[I\2B%?rX$GaD6t/H3 KI&3uikI7F>'nNq·_h==̄pkb-"4qcp682RZA1n5`;6)Ҵ#ygh6?CE;}ctc_<@eӔP)ZeBXp5Tz,qI[޼mlPއ|2)tڳS b5}:Str夏o+nxD~(6"RJ@>`zI&'Ik_ W5AQ1%ڲhUEڳANi^u׋IYlѤ9-Qb 4;.rI !hi$Ifg= bg?w*z"P%{qR&禓}!q 1 ɠrnҲA%>:UZ9g4Qʍ/|ÖS~wtkzD%+ϳIPT)w)رu@>/3/ ].zL LD^T5X:O>(fk%_36hԲSY3crRnIAd5 I}Xo izH/WDO@\ N1k؏s1v3 :b)uOgy(x<}'5i9לRmI!/|d}`9njjƧyQ{V !ó&50n9 X.O1XKɥOTAeP<L+{}:*mGmsx)-`2 !5zT&ͪq"Zƹc dMh\^-gKs09>^ZkB}3F˸NܜC/+)`%!Vqq:5b]yil\p~LUeGۖ55BW.Zm\R&O@77\3eP>Ix%:ÀG2P?M7/S=2 &V'`ў%`HǁFSF|ejnGhA N/WW"  QQcKjDe-E7lizY'Y#s(1Gz5V/!έdxM*?M Qpۀ NY\}`bi\P~}n} _vpv$bi1HJ=wNw+2o[/J1=h낥9ɠB5i *(Wn4k)Ŕj<~BF-h1O@*+&b]")=JW/n΁ogU\DLj?{ݘr qC!qr_&$8Y,+ 񐉒mo9UiO'wO՜[-hY?M[ܗi J 4"w~g6HWF:/9b0#M8Yjd/:am8[P`?a8=cl9ߒoOT%+'OsGI} N3>G'-2d9zG5 I[QTKZ}8,,!icbH+-c1i@x.gᒀV9@̤NфQ˙LR`0Eӿ/YPb/GJtWM&Eg%(BR75Y8fF i>>n/!brlJݠn%g^6$ -P(4!45׶׈35zy ۖͨ5w{Զ;vޟCHcaoiIT^n$B0Ƥhj D#Oz?$ħҭl<@3HCIj//&s:9뚗ğwt@(˭eZݡ+dKi|F=?m%ãiE˧SՖR8[FZ\n#yhPx==.Pj=7Bi$ yT,@)nK :Hw1Ч$$dLG -(js RρIIh8#`켔 \sd{J[UXR^$O<|d(5Y<7.m^dT\Z&qNCp :Ǻ(VhB[M4(8wR$#؂;#RiP_5䈘9Kk, n pv:mVu),:9B jmBS4!2«$*TWadg.3{fZa ((!.t*PZgSN-ɽە/ARޞctB D~\!V1Ƒ< MGnx}˱gXn%%8&XڅEĨRxj @XJ?2%IzK6uZ 7c5tY7G<ɀ|o}~A1ǘі>]3;:7 ŸA@/)ՉE>$G^[K>E-eХ\c/f 999ߍ*O|^Fv@L. 8Az"y}kbn߸";YW x1m/ P;r՜ڍ[6%d% ;0dWf{Vikyn_:Qܬ~-BCjM6yX[YC55P bۨ4yKt~P܇n86AESc$AJ躥b-'2VNó̅D $(|IW&UɶfWivn4e)ZȪ155 3z[: e"?-H®6)jJ-S9VC6@'T!D@h! *@N&ӝE@*+,ƅ cAMPie9\P|hyGFs _~e(yL$$IPؔ Sqi3PL}dwlOGhjO&"[]Ǐ5f1- v挩$LT0/8ʋqߐRδyAfFD92#Sr=E{}}qZmmcL2W v=NqQ39}[t^|8dW@վ{ hĴGS.rw\_K~CdZIibVy'is=p lW_`%#fݡﺡK3Hn1M,tsΫQ cޞ7Րys$1~\ʍ be>Ppc^ k~/f1 1^֙"H10n}uMct>;#?Vivn!zDI ^o"+u:FBm$.ЃlSYbzZ_ӍK} 9uJ+|"qj}(ocF7 E4s]_aBk%$|H 꽶R7;akXp>NlTםⷤ4?7¸םqå/ X83ɫOI^Bbp<6c<=Tl$Gqlb&S%\6Y(?pFZX>Nsr;j+tȎp^sNn&<5y޾Ϭ%,]Dfmcr(PyCXMY5^ |3rl@=WVt\ɋĎGƇԻ'z)>LXh/170u@=Xm7 >40ou'yqsόޅpnT_ۍ(^dy/IϢq$cg'!ddZ8e d!?LM! M""zlƩ@EtvJ* #tچҭ4ۯoI.'Brb{iù#%ۅMͤ]!EA JBÔs~p8 g\ٷ.(1`#zA04iBM8=7BV\,)XnKh$81mtNd%YRb-k?F4I5n[ !i+ri1џz^K&Ωw77^*WBSۙ[OKmqF}` T,bx@AU-Q6uRMn."]5[@^LX)'qRnۣlMgmg]"O0^#AMąƖek?Bi3Z}' Ψ~+`=_O>ʲI 8b**gZtL 2bHҏv؆354 A(p 1lx8,sQRsu=zT79 QY2an/>F݃^/!ҦE<4ʹv"JM y`e^LnzNBK!祸 ):KB0c0!HD??NA<3`?j)Zp!jDGOE?-`D6b$ms{s١|v oK O5IJ͒RvG~lG5$CONT.sS+sv09ǧWpC}W{fP)dqBH?jĺt \VKOrRpO|Hp9g\2Q5i'e\Xo=Vv d!vϳWoqu{Y2;rWb(%XMx+?a93\p. J!MmeA1 b#ũN喚JN(?@sylןVz[@3z<͡}9C]X! .&rO/sַ̪c(YO#.YD<ѠU#'MN~;Q HHA+Z{04^ozÏ*Oe9d֎輕-׊)!>!EsE, ԉR#^wuzp}r$wjrVwmVRxV=h4Ꞧtȳ`E-RQOO IUL̓Q+fdبAP6'O"iX!,Qɡ6]g O8mWfd=+^ĆНZm3l+_ -ZwFi>}wK*. <1E1+]&\;خg# ](լHOTߣ Sh^[w@DMH"l KG`۽!DܻGG73*g6ts-4osؐx$/B"Vw̴yd(j~(<iF%FYphs~斲 lj, iw"S`*pS!\K24yBsO4P͜Klya"xw3wq:NA n>&gy/IApPaf]"bJ`a,Owȇe¨OTWaFr21<4u 6n".Zro7MϙK=4|FNrd<#j<| zT`29Af{3y_|cK^;IlibzCCk#ԯ/-ȳnIAcNG(wBpl.Dd!cr@}sً@T}fUHN[ 'axͻHsrҚ0xG $Ab+q&߮*э)9WO \2 U[AcBepO\KizD=F̸k &Tf91>QYc>+x'#i Ö8AI>y2 s?۳.rMow;mG, F5)/VuF|Yn3 vKFG szQMIr`W8:%*US-lGB?~Mr}FT egY[YLU$:\,QD%X `DgA ˏ fL/OZO(tTodkbut.1*tz)qXٕԜ|k`&#oܞOsg=S_u{۩,128n~@\^]Fo!Yl!}0lW8Ӑ}c-?q*CuMUCqP/ 输:G1nJQ:'Rv;%Ak 9z-SX/pu&kc5{~ e+~ ~ Ō+i AeeL4ě K06S>rC|jKJS3L U -eO/` Y&n>Pl!,!32D7 IH讦)B2z ?NRLmAߝV*/rDQ?AU,=wNWXtƉj2Ʉw?4Msoɵ/(naIKɺS*v뮃RqՎEǩƤP2l7~q]TE{Hs}h%o\d}{8ɫH bj`d`qo,%ȒЃ'J&l=K>;.,UTܛ[AfM,ל! /az=779q ^E6Lvhz["3G &΅ ?s!ȆO} s?dNcS 8d%͊veTh(B#|9WpU1?80`ARMƿU|*pZBhүjtOnJdd- Sk'1hޱ>u._7p"F ;LXƭ.ĺOIۭrӉ` ݁v嗼q6 }Z#:lqm#.?aK@b2VȾzvϫzR fE$4T|(v+/ aR#[Lgss,Gd"OTمy |^<4:ߢh9IX|IЙ3ط=ibc >hcٺ/ˬhmRō?W`Ѓz?Ɓ&eJ< y#Kv_az(,٧qT'cV^EZnb}^;-LGn$=-]u.G!(SOUg;_c%f& o{qn-,F ~$A? Y"V-Nh\ӹ7$V3K s T:8eA  ¬\RiTuqҭ`t['a t*3Z񬦞d0f[T-SY>vY:kzzn#*:c,˝MZ(״)#_hRj(ѭ:Wojr;\(^&VMD *F ݘΆmIAvIלuC &WZ!%2OKጒ{ɲF}ҴkV:,`Z>$խKz|TqtNbmwiWi6Ih2;px87I!sח 4e$p rcI'VnZǐXm"BՌ"Z* ՘".2s0R;Zi8~VCm .}nhxjPv&6rRQg̤ˣ%쪲IkM', :E@ǻ'2QW!4?eR UB¸aO6?d]*~B95 stJ;]3_P:[yYf'~O+߂7+~;tne_x!,=Aa]\UuU48C(|e-gM1O F uƇs,xhz wJ,\L-B9O\Jw˰l,+}]WB}r/ y>NEKkg, QUH!+pA}l$BB9ܞ{x61?ɤVxTwi0Ƭ-R|Z#lH5;&Hgzmىj~ovFTf<ۓ;wp ;y /F>qW+ Y! NN$fm ypI>/>egdT&hgҙԄ0]HfF3C.}|-D1o4t ATl}Ƈ '4.CʖbI)_%P^`R$՗+Y%ʵ "~d扄*IJ^؞5L } dK7KIɩvl+]{K%E?gx{93߸1% EZg1 OѪǸȍV:41$XuH^F'C0*,n`u8ޓ/7?-aT TE$0 _,MHSX(vq5;c@,ەbbAH/H һweLPҺ]#Iy(P+ dNF/-`8e(O'^1\7D+y#vauEbMMO["V&z QgĬqx[Xw,OSu:YKwȬM{Q udi YtTFy>:[G 8|Qaр[?֝095N &&;6E5 omJ Q넎L*4Yd}7F{sWK]/#?2JI@9Yٛ&jhsͱXd'.\?49=.=޿/w/`UfV4 klGpdt4! u؜LV2DME[#Kv8#. :%$@26X;8v%[jB0ŕʼn}2`rQHX=}erJI2JӔl$ DP|V L(e:eI`3l4;p2Zk bxlN9SBHehg>wx%ǎ^ (e!u+LGj=m՚-DsU%؎& WL`=9BZG8- E qd`b]},ŗx"#imG~B\s~f )DG8= .ʰXɑW?ʋjHH{ 99Xмׄ#]f? .:/10GĬgs[NzMIr *-Ĕf",Wa@؁  +mJ^IY:cC03|ޝN mڛ1f{L$!ߎ d-0ZZEq|?OžV K 8lt'tCov!hDzam.ԺTq2oђgC5;0WHv2 G NǾ>ٽ1?duGĮ.V(yiru:_1DJ *Do1%"i߀5],ia)BnI.~6L|^ CvM$ -n(-5+^ ae4\B~5 qZ ϓq#ܬ8cHU4%82us5lUb<!V%:x >"6,P]?ՋދC'4Q:ṹ(#kCDQ(HiEhPx_r41K,1tK]dFA0 gjWw*'15fduK uzC $a;Jpɑ ?$=05@=>չ9cB9&W,+ydGQ|0]oːG/&® A=H}%)d/l*WPb?~Uġe:ær<j? 5%y-Rtcg0MrcH\=bd@GK0ұ)@KrC$lu&6T?nj$W~!g7)YP>L_I+ )ȵ5)"7jUZaT/6ӠӦ\C1Rۣjx0ז@ KSzt)& ŅYC3uVl_5gVIK0ɟU\{PYzOCENƵ# Wsv ,OW.ݍf!U!.ԸW4[6%,3fXdkPi eȰvme6j:L#%W%X_ڃEQ*3tnO 1nƳ*CK#<-Cܔ%ɥR*nJUQoMO;w>YlyȎ8b9}HȪ_+ZWloܷGa@]e cЁ?M,;&'Z]"Ef|ESH|nʧT›FVA<_ϢߧRK+4(iNGRy= MƐBL-iiNluǼȫ$],wY&lbӂz-9e`!.C7=%Ό)!ӸǪG]zx4*Ȉ7pf(Z0 hxۛ6;Q<>B4>QTnz 6CQoܛjdnP긂 L"!LrF\u`\3lj{a.k/7 e+jOu>zӃpʷE_X-6x&?6H;:5H7*}N#:G P } 4#GNsݳ4z*0<}C k!L/P,1ԋ ~8> jc7 h(P=@2|F8[np7Q *Tަ/> f~0S,õnm?Fw7?lzeo֏9sH˔u">nVϋwny&Hk2VINjܾ.Los9,4-l C@PYǺ$z,鬜 t'sy~җmϕXV"lyKU:إDMBCJNWF0[mڒ GX lR/F >\ksl4]OdIIˈG,$_gR؂Yj"])P'ip]4ګDz(wILI&J'q0Vv@PQ1܏_ 1*qy2(a `Le1v[kO H g [U8e)oCOG3^l5['T\@d(1zVcx%?G%ZhC>{]%M6IABYz1Aʛy<"N-<}&\r%tt X^!ىFmϠ%7\*"|^ڊ K}fnv/gX% {WwQ%~b@?`]g Jqe}f8T$fbPq\5 H듧yQ :+ K-)m: "=X2csc^Fq0 OťNA痢HPrQ86QREq&YaT #wkX}3]hȌ)} Jy=b.b|q jβ&Iㄥp nɐһ1ذO^T&`(9]Ɲ°@:别1fEO9xs2`ݭGYkdof.vafQy|U} .,c6NyKh$UCüFXs;ko\aК,t%Ts3Ӟw7+Պq~\/iodժn$|ZK:>Gj1A 7*] D{qyA`,JA*ME_"qڸN&iv27q)vF琄Cw1Ɂ2>1w)U:rbBW7pW0^*Wt/*xnhw/Ѻኹl%?mJ0}%?}\fã"}dQU4X%RB,!+tB va cIؤZ0ܖ/aVfXx Azp] 'L 4')9Wʛw%23"Q_8u֘DSբН(\ی&(c F׮Tp%rۂ|XCkA\H:E~7ֳ0TAGO/Ixb8Q}rs@J. `ΉTbIxKS]T#@ڔ(󨌿GF|HTH5S2W;CXkԹ0$GЬ M`{WTV"9(=K*R9ni'N2?A/R+x'xJ.[(br-RH£F'r4FbrJN`["sGygcE~,[oWLP'p/P" 5,0}zU+<)/{(ecm" hwl%_bɴ39ZPCD:5|ѥ9ۅ:zj>|1z-JVoyYn1Er/G[ >} ʐ)fB#rL/'o`E45{R.ӽEl.o'G-@>C;F }[ẍcˇC" 3}:KZG_ATvŠ8 () @&ˠYr\@=14>0>{?A|!Зx4gf0F* }wqbP|411+?pP6nS?s}tҟ8$?^oM}nz)Ѡ*NV|jyӳJC7Lۻ[O txdfWARg\I3aW_b wlZTR.x' #YA;? ^}.6pM5X㛊p'\,T&,j\p?Z}ڋ ]nV n%gAR3:~K;i\@W'i2F2nV ْvW2ڨe|g~YWƛ.z`EUk9'aqYb%!<<%2%mIcſe²3UvR4^Tt; ֚i)L<G}q?;_zPTWf|teGyLr4yR1ĔR|'k0Eo#_h+|ʚ&^='s-L9!uo30LgHp SgL;zh=C}<ʥ>F aV$R~(/.7hhkwA%BZL"|_m'[5!>d="VFeϘ#_=<U?Gפ#$8G LG{>=)p#xEd7=^&`*.Kl 7_bÀAAxRhdIqW+$qCKE$xU5go@LmWWME麯nݐJAO5햗|_1He3i)NjX1˵@zo0Qxщ`_k3~9 /o^|Aڈ;%ЍmvJ+NvQTS:]4L8'c`?sL58"mJF[!Y\P-13\PB#ڲhsgsvlZ(@P]?4*IX4Jex= ™=ƨ*D{c8[_C! ڃP9ήG>wS6nQQAͼ52Yh'{AO,&"?ÓF ,r[Zxb1M/FԲsvu050 v[OȢp h 3q7D \̙H*8/ɤ5|/zgu ZuS9o# #ՈC7m!9 >BC#C/ iq&uԫ;-GuIg~3a=F1p.˄.X_ϸ1y cݼ(_!fZIB0eN & 8$t؁OVmM1C(ޱ'^OV =P1M96+/ɵH`5y_t+caj,Fjv~e.K]4~S;4~1xyF-H}y5׳Sp'U·l7GX87y䒟1{ =d87OME8وfUf4`/U"K c6gu7AU/lv+ pͲ &db  gKC2a-O$ ءAڣ`OZ?X?ìqEt>3dB-6T=}rj LX"G,>%{Rv1\dSM:)v.I~h&)O&)y̅Gf~?1 EUq%xZt{Jckc5BYHļ*_Cʩ?=4ZR ЩŌeGJyip.+NU.u2ܢ@'hSuR 'Q,)Uu+R0BpO4#blr假vKLcAwN$-<ވ D {\C$Z\Hyᇒd}qoOQ ?B盵{xDxǂ֓_cC"Dk5R-xyr':# "y ;`mKB!*dBDOL ;A}?[~ޒMOR$b>c$!Lo(R4nIi[@~6&ӕ9 D4J+CVΌ(J{sE, %*/ft9 PZw_f- MrՖG шMc v3ڐ,'ьfyh2,̼#uĘ|Db=Xҍ=S7S>rxhq) ػ9 г}G8# jB J+mwSaN$K*/CbYŖUC;JQxO_R~,$aj{=.&4v{݈Wt kXfEF1d[8T]ƣ[.SL%qU{M* TsZZ2Fb>:LR`34xRrm|:D:C 4ޏ(U3֓ƥƼwCI[8ḘO̹h<:Si~-Et@V ف\o4̗8' )qO%>4= @3`QA39N-h,b]@-̿s3pgxٺO"Q|A|n.]Q)(Z"F'LOᆠq ||/FC]l ٽۣworhdn[iyfEt֝ΕJ8@.M4:ڀÉO2-P.[LX\ +x$ 7u*#`scerj?n[ʀd\tP{va!KM7f[Rs3LJhO }8BճX>ߐ< bۚ#_E{QZG.NQ~ ;0FSw_=N0^ *):?b UPV#ݬJJD) X Kf 4yDB|SȈ&[mf_t3xЭisR]Jt o%):111mL*&R`jݙ;`L;-B({XoPQ(HS4sZ63ا$! Ujɰ&IeI;%XM4髷Ҍ 4XtWrASyOJ;Qq.-i9$szdTVb<=)Kv[0γJ Dm5>z oyz0FڛhJI*qle-OA'aYOHE4*&+-LnӔr9Cx?(fkǫKʞr? Rd#΄ypplЇ-ꮃ?].Rb,|wAnٔ9)w.ygrKӔ(EP [;BJlHLh(>R 3r9t POqIOQÊ[#4hxĬӘ΁+mkV0l])$JJؙ86s ?^to-e x.mXX0>p>xMgwݝ>]ϡcD.OKxs0umWr!HGEy=L+,W堋Ӥ>.nLZd?:Y'Djw|#;Ac|saG ,PƉؘ'G`{dmGߏ,Q8Ӗc4ۡ'xJ7jVv,^}OUUO`gcmbQXƉx^|sǿDyҋ`A>2nΥٹG- 'f]d"WSѫ@ZN}u4x,j1P'VE\Mo׀'ߋR.8,nH+V'/_ucD"]xP|xHF낅P+,'bƇOʰ7 No믡1S`1 Md{rZCų.VeBb /e$0u+&uìެaMTACr6]zlVd(<fT [h7p(6)E ,ihܸK=ڊYD2~:4V{sm^ıcSN &,DS (8_d)<9ݴmB+w(aW#F2iOzNm$L^m^.A]^yBN,(( *qb0#=axfܚM_UjNі\M9NN HŐ+N'-d('.LyMJQ=s^Rx2Zvb$YS7ڽ=sn#7T#'!`jGMJ&F~ipw~q҈&=Xa[,2oШx6 Yt|{ VD7siY[{ ,+7ҿn*8<<9~m_FFI^,ʥno_U%ln|Qٿt˒^5bMs_|w^S5jP,9~/0]f5K) Pxo?a;f\f]wH/Xԫ˳8k9vBs0b&eta!M;(#R:O^+AơrA( }qgյٔk}ilhY5bSRP!!pi/F Qn|(QIzO,&i 8)s[ ojx2߽2je99sGh#&qJR W6;AH |}3`c!} -G#4W2&iD7"8"R -'(!tBEUrJl}ھ3/(Fix@UU@ t #[238dZ<2TDp-{2γa223 :&"vgxD5\n0N]Nf^O4R`N8X4+ y,Ao敗ŏ ( ? \Xb6aW ^ORʒg]6,+#H` e&SQ Pd궳HF!u:|(š0> *k{l:?=$.vhgpB~xK8 5L7cqRŴA!o&S99!1R^ASam8sE*H3Φ3 rX<=aT]тZߌҹ"a3IDg!+%*31ؚNūa8@ Gn"nj[6JGafD2ib6devRkRchRHU1%֭?PjըSRWȼ@X͇l1 Nj>MWml]6ewbxXj_]Y/QbEݒ:Z:^4BwW&”aֲ;jkSKf=Sᵾ'5ckC\(AKpӒxV3ݔ k~ZJn=E12QL-`E&JyV6WUj&Ӹt"Id.]u >SIs} G0F\'.60){@/^êĭUrh xgiP 5g7- ן}1F@UݞLϹ DfFD X9Vb;ިs6{ vj !&f`#{=3⍙'83Σ ҵYMVÂy UQZ]=awM:i߻rz"18*P RO΍2W(:vwp'.z~ ^C ܹue̙n:J)Mbc$Ý4c{j@Iߦt\)#IOiP`)v7WG5"N 4 ߖG:S('B$e7&WjK0JH?L {tILm\I22k7Tb⁲=+՜'N~2ƨռO0$Aj/#1\3MCC:xd=fOB'Ldkp2IIŒv#dV"lsD fyTW[C82a4kydqR4Ԡ;s PU"KW5vG %^|]ದFo٫:v9rM+DV.G؞ ]e7al^rQj)4ck.4aǾe{h0! Uh,[ skM(z|MlLgFN~:peOYqԘ:hYtq(fKd?]Lѷl%M'!SP}Ҹ@czq~>NAq9Bj^J[F<[\-PJ,k&C+fRht"sPsV֛:~ϗ'H҅<L9ѾhdY1[bk>yCYM,S[w-lE[ZkQ3,Qv _84HO - |0Z@񝠳ց+qzgCh\eǩN6yC?O3h^b)4lEelh6[[7K;3 :`xvO=(ы o+f{QqrmS+#wŽ{oMRxo:M@E2!qx&`i 8#Yڥ~zxaylӐ5;Rl_KZ/g#OnZYRU*ٟrٍb1敜SZ,28D-`>tsE[pPKyJ-S$9:vq@)0*ª{!@ )#3>. ә> m)7_Q*ynj`#lHm`L^+b*g:CcnOɀ9Y0xM0&͂DpsxVT`FٹmD5sSz!p, ^=BNp{R!*.>UwE/DN4Z.9͔ڷUwG \XBڿ`3Nl׹}+NT k |j'7E:IGrG`x4OK єU&W%*R ErYl(W9nccv ?m@—'W+d/SOZ ]E.*)֝Y&DGb3ceuwj=3X}%T MLUY.FBc?1M!L,1] ,lYTz/p z# {ټd2mI+y:iV˞; ޖTVàQ 揿W2g;CU~z [ZOw,A+2( AQ? +Po'+Fտ]*@8(?F;Ua_r0! l*qksb+e3.#kJdl X%y۟"5_Ʋ懊wA(X.އ<\%OqI< as8xe;ڃfml1~˫r(Gx`i47aP<9'Hdf 'Tvy%O߯X0Xb4Ub:}Y=ʦ¶!F뽏 |u%j,j\/aX󘾶Rt ; $EbgF7qGُ+J0dKhZ'}yIslEJ`4ia145vXnI>箰Y,mSl4 oA9Iiq{,@Ԙ CF+|eb(V'2efjyTzHJ|K)&x-C-r(LC7|q jD(/k?ݯI;{.^Dҕ]Yu9 e^;W`5$Mx_8 ; #;ORn/ Ro@UA 拔\ji՞*Fa70F4 &qsiYcٹj6˜56BwG(LN#PDM+= V[z[f-WЇ ˀE!yGK̖JYPR`aDNl"ZϺU)Wt[Z,3 S^խl;wq]xXE oKVPB=ɷ$=ee Zyc_ZvܜԪ)ļi競! Bk(^K\y(ʵw#.P)-B6ٔ#r9#GIx5h,q@^^.ZM֐vkӠ'곍WWNpqV6w4&x̾@Ѷ%} ZڪKCfNӴO-l2/H @qX"'"(%ȕ|ϕ6H&^t+ u~eFєVnpaP4j~Lt|s ZV^AH|~Y&be1y!QiRLSP;Km&E:NM0z%@ހ#3z7ek@%֞出Xw"s$x2OY!fZޮQ }PՁg Lܥ ENO펊YM*T'Uo+h X6/sRt!RFkwf{%=]u*O>oFfr57pEAQxH6]w)h^%mL'dXBW=T3Sv.mևFSUpef?dԢ!ȷQ ˡrJGL0"hE.1z_{!2Yg>_pAz0GjD^2\jcJ Q+e";[qhDzE?)4 A';M;Ip~^b^&gR o&ghvOT\*Nm1jq1Gy̓}kP⌣B̪JLk]`M ՍՑ,~tM5hqzIRW\J1 GZЏnx'q R*~FԢ9+I(Fq$d&36K]UTQ!W"CX3(nU՝\BuoX5p@ UMK;}yJ\HuB* 6HbzJo6(S⽪K@= P bgO6Ce?tu Ҽj `]ozp٦#eO@`D#5vUIB]u3j.15DBLjHr )@l_ \wF~,{1$RDJ?Z;wJi-8Y5$Eyϒ0='^NC\PA׮I?xW<$S{[܄\1|JR1E[-"k/ppM #ۢU9rN!yqÐS{wr[O-|jpLً-/jѷI*!J>OzbEO)^ B/iη~`VH]o'-&WQ 4F`f,ȬϞk _8FM] 풚2Yjr]b[W] 4-Ң ,|< q^AA{4RW;"A24p*=咵~@Qdվ }6>֎-_Q~81bkܠ7 WjL+wxĜ . `glm( R!H#kB 56Z9$mP% 4enQ@7>\ k?NL( jѻm!IqkD?7; Nv*tT7CQwU||4Uml($ɥ^iQ3uQ^ n y k&Z()#\V\X bbNo_XTŧQ7vai=(R@G!+ȕbwYa{\@ʦOX ׼S=6'1OPZzP"}f0D<QWU>KRT&,۽eGR:uz0؃.@<ѷj(; E8!fҚEO]ݣ.k SgM/PïCwb"Ed-p˟-1`8)on\u)@DT#b}'CmRb??կXP$ܰ/ؑ31wTOlϰɳ8>r+t-K}!W2崤+yۻ5խKJb*WiGZ)9tEdQF5 ; œ3ؚj5"i';+V@ɟkEϒ%B 'o @4ݮFRYgDA4䡙"Dt 2v$]EueSjR'#_Q=Pcx}KZ[!FәjfETvbl5ͺT/GU(LeWɗ{ kVD@ 7O+>c57 F10k~SEO '#ƨcd$|~;=oNz$aլB=v"Q.үá:x[z }w;yҒ{Cʐxtrp6iuJ@Ƀ>%T^{Q$/haGn`)kMxI%s`1 $E?*Y^ RpSY]a,|DBU&zK8}_,uҥUqhԀw^6:aВ\Ė|{hdG4E)^F.MOϼLYZ`3'YH#̓En$['NnM8)(.Y-'.jbeoSq .?T&JwN<@؉Otj@~瀺vHC{yc!.r_5P4s`fȻr+ȑDor?iDE^ͅ["uT<TkzbMpZ;+O1YφK00> k4FԌUR)β$-#PTӼ7*a"YSmz虽{*|s +cݿ8(~W3FĘsos>,eJXXpO ǹ0eGutXP_f{)X_|@^k"kP]ob @ %K$WGnR4IryӕKޙZ ^Vi#TkYeF$]˗,B\g^)M8{\qFz'zN0Pˑ ,Ktfr oA[ILM`^'J`#AGo16rHK~`u]k{FL F]7S h@2|u9 $QGpj@x<9-vk]OM+X~KSpW˔!%efX=J%VhC!n"|!K2QO}'sD~XɸWҘ=W;۫YP3 oZ˭+FiW &AǞiFu%o)F,Sdy/>>7:{6WzẸئ)'QP15NIqMq%#01ffcl &r3V+jW:&TQP/{w5W:aTuiCA$!VrZӲ(# {eN$K<5C,fEXCA$t»9$Qa)\ !6Tp_Že"t<#}T~x0S)f9Eۈe9TvY Y I>cHsHiŵ' 4(com퓕4:O%1z:dNm ~bs;9nyh7!%?N)鈲ǯf:pؕ)]Em"C59Z_ vI_Yy7.]p(3,BT'>ԥh_uˍ@H(dLp^B pVUF8 \3t_.6$mI,}=!F`aUnGM(D8P`?uCf* 2ɼٌYG*%uҤx:ʪFQ2CKէĦ͆JCSH o "OJ)'  >ۣ֦M|^;KYch$y#ƂP /Tc56EAaiޟ-vI [TwJSKf:_/v䣯m+8(. ku Oµ"mp]f*9?S"j0g9{qɲ{ԕG2C8U-m0z{ml,֊!mqK$0>m[ e M)?* U=>8}S.ViC?D|uԖF$'N/ FZ> ׼jcv:M:=rNc^m蚨H>K),(>HdUD. mXygs*ä c= ^DIEj$]pȅ Z ={Lf7U pɳb"%($!7k~֐)r'}{rǷȴb/G@['ivZ[@ *9lxL`k?-w$c=ۛ:©%kj'`yCSе Os1v1Q SwֳKM5D :HZk1遈󌿉Z)GI04STZ,ݼt֣Mx>ÿRRd>虜}h;{FlC֋HKc(n|B )(z^ ]9`'K۽Ң|$Q şeaI9L!\Ch#ac-,s~ l c`f#Ox!̾/j- :d󸛤E"׏"ap#2ko4_/z{#*# v(oCȗp7ɖ*èפtı,H0ˇu«* ]kze>>ުt17jM3ν9Sd_=38U¿$yvgxϴ)ceX4՞ΌLSJy9O yJTi +1c0uQ&bvvu E"m"q|8ﰦF<42Qւe$C@_*l-SLHv7BwbїN% 5n"g(g{@]ݹyA?  ^+.Ks5.U5"LVjXnVvߜl.JRlY29ӑ[&uy43Tk,erd z҆W~'#8V$ jU9? NMYA11.U;$ZY⺗ec#F/Q_YeIׂĶ*,Ub.yv짡5Wyׇth%kletc&4)~M邤=Qbo^vO4_53٪kfB!ĻL`PV2]b?whL]R2*,`87*/)h0dg#OdJX-.A;ȯ!Ң)=>rxy%P 5vvpRRv pn9A|_>ގw2D¸s9QjHP-ɫH?fNO/ٙo g|"d=w,1l0P7SB]۪ߺd Ϭ;{,Z(<:aGt؀ ;<_KYOSW#F l>=}Mwn46$4aȝI tdUfP U)ZUp[*f'LP^[gLlnHʐ7[(x} 00Âن ܄個 A:I ޷O BV@1@Jɥf0o5yu`~T|R1FkW?roqR{/z&S8IӰػ4#G:V{]И2ry71 C1^5O'1qx#cEQq)T q&K]Ƚg S:QFDS)#iޜ  n@v4tjt(gFWxٚ N OIFKjQ962[͋4?Uz}HvRbCn<u26c=]yR*'_;ke9_H,KX[-ΰwːzg9,n {)/orR*{/ضBj0jTD  IktF9TL:"aLtm!hV.nB:̯eǤSqqӲ HqYy+n|x k$4j}PhvSGdŠCj$lHTS'e8exn>qٍ0Tؘ[ktEZz?y>c;_ZZ:Y(W{pcpT;yLt^"?ˎm\Ln2 "w~3$} "$G 3w;GYLe=oB%,ͥ4͔W6J{[jdb`20s 0gn ?-{m+ktA4d{@KJu)USi6kR)XXq5nC]VؿUɻT(*SUqq^UMl]i>܁=>P))}&׭-kn]NOD Z{hW\dN?rnA>{ܗHlrjLmqn]n%;ւ@idum/PB M܍N5ܜKa{f8+mI(I,P+P$IB*=ŌmND˭',z%z 5+0ngȨm`;9'Z,^lL@]LЂ u[وCbv?zLf>V`*"L]G `";#.=PfZ8#?vd(H/cf9_H7B?7 C>^f7T8F>4ϗ)U5 M֝m̫Yd3wKf3๟fQUƥU|CW m,HGY%AA? S\`ӽ՜AT].>xހ%x;弔S>Umu<$ὮeɖeBioH "+yOa%2mLLq(^\V';=]#}4lGA'k 93/tRɳ( uYtJi4B;Z5񹈴qb:-0?|]^&%O!I 0ԉۛñ.zQ'6nYDK(~ߡ@e-bVb0p ?_+X߾u_xJ (pֵY2_Tڈh*Ěv)}0OQS %kR0a3~5EL0\bdn[h#Ta;|lr`U"ȯt_VWcv  sƦ_O! !9՞b0Z}" 4Vx^57NuǍQw(4p!T7։b<%υ"C8 <p"8|9 F~U6{a+`b媞J:b5 >e|1駓s&njt"^52In8B"MuOpXCrzy֞/ sff"Ā}4֟SJP<)ݠ֤ 6$ ^Eo,1'0y6^Z/YMʲ H"0~J+O;i/ ΨCJ(u(̟viAD+ғ NIQ* AJ!!>@PTSBP>ѥ/*qA>YoOxF{8i|F'ĺĔʏbBA P)|yx.%"%g\W&vAigTjђjGfV1|/'b*GjAE̜+w}WzQu ie=l?>z-inV̱u2mX7'ӓhM!ey`&r HYVPLCFЅFW,! ""uX% %)w8֛M{iLQRnd>=?3&BIc3U.LöuX:( 6+"0}XՄ`Z!mQGNv0iIǤDL50κݩvq/6XyHVVoto|Й(*Q4?_~U5Yc|/1<~͎;Y6=F+]I'p)֯9ڱ4wt$BYHGu]!/Q#$cn"I`-rںMj޻Z&#%E3t$šݪVxӵ1VmgL#bQj>q\$S"QRlr\mj+v iDtδEJ2Xlom?.̕26~$LS| NC.?mS hG ?"@ 7 ˍz]Q!H@} @<ޭe?`ؒt.*2[@=`U8،<6&W+dkO,>I6"\Nh/#;RG+x|"L -R퉻Bچ8Gc=]ٛcfHF6Y_6'dCߔUۻͭ!L/(㴽.Lh5DKȉgAтIGLRowm;NJ6Fg7&9,l&=iLR=oyI\/Si^(B g&#`(0 jGG"c-;)Ay4Mg7 ;i1}ǣ9K\ۢ.#@Pndrĸ r&]PָN#ިKuA^"Yj ϸ6e?uЪǠ-YJ;OGD{1VgWkq 2fRr|lR`3wYV/O"jd3`Ct+#1 *Dsڍ!S R)@RcqK(l gqF?; WѕԳ,A1*d=YR HHvδ.Wg 5W$-wO|7GƷwt'+"eL”dP) },>/2M|"piQZSe65w#릹 Lv]+-BAE˴?:a,=eؔ7^z{q[Pi iOƙYB^?@ 5eʅ-ety[[3E?^ -0QqJS{'GpoH$p}Sxj`ng )L/+UfP&r OŝШqji[ / SL)[(r-0pAJѿqcXk[F|j7c4O2ӃYrZE[.q(*BG)V57K"WCÎkf^ub|$d">6b& $q.hb?{!ZDBĻWUABUub?ivӳw.x_CK[3jVuv+b3mcݗڮufj+}NlsڥsބչЖo7j^/(|4#9cokiu+i|3FIE;#)AHEi{)z_Ks+PcK+J:šg,]Kl qB 5s,-ĨUL5N8OЫf_D̄hr T/0Ni@5Pc@"{ !G1? D.G_/iϛa}hφS*)cD% O6?$%ׇȔ+`/ e%<FGm/a*ۄ8fOF}2Þ mKbǿu4[كY̋sLM5eD8L-Dz^ "1&HuOAqD٧KCf݉+lR|+ cBEr֞b{}Eex!RuCm6ĴG,רܧOyH6~xٞg 5֍k9=Kb3r]= 91Uj}2E\α M{EtL`L.M1#/kіkd9ęN:Y史E_y1$%m3V-gwq՘޳*mI [=ҕ5 _ɼ|(jf{ %FgtFQkun)!{)?7%Kܲ[Gj4 i[E}o}Dp? @-Fo-ϣL-"K|\ƻ\/\]A]ddWpxbB(Q,A.bfqiN^p0$p1ڤdb% ]$7d eDЛI!J[,51C=Q+*aAtÔmꑙmhDTښO @hס7窰R_}1:.ճ@V|}V`׺ĝF7h%Ċvʳj/q:1kr2Biͅ+dլ 6-0jxgasdˢ{:^Wv'w Rwd," Ƴ r΋*J=D-O ܎(Z#żhN Y45Ί8Xx:,;sD3~ LkqW-.8.ƨ @å~24n5%U}|4f~pwr_!(b3nhs/.d(agWthNBƮBb-PfuyܟDM%>Z-y,5mjmUzjhݎW"g#!b_Pkc1oS'FN{RBAH]y3%SeI>.ry@+rA!e"F6 RN?'glIF5%P&PC v4 )یUWtޏ5w A4Qsɡ9Zro\>HGb{JLj鎦 $POrqo$pzR͡5y:c8N L{#oj bnjE];(]HP ?)G4:Ƭ,Ezv_ksZ̃KiJl_~:@IVC(U*\@z 7T'A<;kA<^ ] h= ZILu|ȗf406 D4@KуqkŒH 'W"]Pu+h2]5QwP>lT$2W0ۺ 0uψaED@s|]GS8Ty|RSceOkiq'8BAW H3C5_lVXp+F4҂[iARӝSC: ),˔xjn(\#^YaArje1Qiڂ(mxTK؟+n* SM?rZ)NDwhYR(cp[G@?4Ňa'[G s v&Od=Whpw>gN ,4tkN-QN8p6e'80bnMԘ5h23N;!kf $,PJGx !y& M\-ԧ kHR\<heLl]l2͚-VnpB7?`^鈗ۗ>cĉ{Z|ۏ.3z-j~b* r';}9[L|rt.7w=jd`k94]A_46w䥆9Gt'hsO f8HhHM+|k٨8\{g +%)y0CS+$ Yqίӭ dYUbaE?ﺄ~AZG$]CKS4Ng9MS֞#i]Jwıugd@%͌1g&ܣ{˦3Gk"5#RBQbA.J8X/鞙·/-_?Zz[G)#7$r't+<7Pޒp^@=,`w-|D ǯGAMo!ֽ= ^i##+-߹,k v.sSE̅5+[|yh"> W{]jyHA/K`()?}8k6OsxYOoAwK hYثiM5Mq ~Gqf)3yZGLNd=ӹHu {3]Pw~Y*?T OB^ګL3*Bp^1Fd)[>1TXc2p8 ( (n%Tq4+G ,ۀ"=̨})%$T\:\ k]* _Uvw\3eze9"Ύ:f]Rkw M[praNet|sBwVJ a)' XfGվc҂Ser빁$GՅ}ʰ!۱FEv MJ2꜐ N@앣._xVr+wN iĵkSu\cRKp-¿DA.x4\T>ܫ8 J.#ܗo?@%hF#8GRvU'cXOLopE2*FI] vZ9S&Cß13d(cT?WGQ(d7>:Y,`|'Pj:Q-m`Ԫњg nJn5FmZnD(؇@(O #64duQἨgP&7A,F^iVXv" {a >s^ZyQi1~;=+y͸{Mcԃ E'zӵ="zU9'cPѲ4<h'}7Ds(B_rnlq(҉ zk|tvO}3 M 1'q)Z߈<2(zUFkzk_hbdŐねaRbdr$}o d.aqahsЬBV*~og qۗNFcte`o{\Ksт` UepB$ۑ?3۔3g #9rc(PM:ZŁ59+=X /L\0˔?G%n%yK& d$璇fLDҋxƤ,7W6H+\3\F}M Ew|-iު!q(w{N6j%ƌ|Kfje*81@ iUa!»>@c]gT SR tcwt7|RbB,*Jˆ+,P.+zoTS0b.jAG>]tBx8\ov pR3?Z%ntu7T<C{@( [n6>?'})jB~dC}8i>ck&p(8 GZ آ6Bdac/|a@ꦅϫd֦!uL"&`9†Ոg}ٮu؟xO ).B:`nmB2"Xa'D,[Xôw҅쓅 Տ΅(LpQS9l%A8!ǐwݗIOZ)5l3y?F{=P[t{Df7"e7¨F$c DylLnAD)6i YMQch; xНj,˽M ѓukw%U㨟Nd}=@0TFװImT`X8t8ؙҖ\Va(;vx2<DM]%ZsN"Z*{.P ȅֿlSg~&V1@vhFժp8 v+Ҳ~+m_ܝD^8'g)[T@P @I &^{3m @>),<y ǻdg~'k,'¸Z&L__>.Y?˭ SLU#Q{Ȝgr`z{1DqmB &O,oGwVjIEi_lMx.?s$GAa9'q k\$rЭ5+șFb~we 0(PC꣗Klmcth_n0.vS dt^RVb ܤ)E>j*;-Qʙ&H'mO1G wY_*#z,@8nx[XmŹB1Ǹ)' .80F.a$Gc!&O`"U#G̜Z!R-|?()mFT!?$(IeIJYH ciˉg9"=kZ=![bdYBnuy K36^=vGAVX錇%a,L#CYB4"D0QSk4l{iC?lc{)|MЦT\_WZpTj V]q@__:3"aTܷ{LgC2v~T=ytY@\̀cݜ`ZI'ÁyOgL|jkk0{: hUg j7?D٫n\h# ڬ5eY<'osbQeTzz>{Y'*Y54zD6 o4:C'hњ$q\/+2e,`5gW yZ-LJUMrLsV5gwL+_͈1gHZZOɪЬ y[w7 .j Lyz. T[ާ$J&q?RiO녦$S9e1>T2~MPCZk @wxv &8G `Uҫє W,V sX Zv::i;^2Z(c?A+8 YFe}S&tz̋<[itҜk ,oa{>TrSP?TuD! Va2zMm<{ :#I#7} HO'÷˙ #M]&I#n0iTz@i¬+a2$Y6d7M n' i~9w6ߦyxїl@SC]͸\EqȲfl:!HqQZ&Ei:x&@8R >z 4!HUz;{QLRf)ޘc%~AU?yϜ_u{2p(3Ua1VDH%?EoK7!28r"^$sX~O~mc҉DZpG_',X*/+-b:zj,w!lXMe^GV[zo ;q}$/Ҫ^%B/ B;;E^ίX 'F_! J5.3t>׬RuRQ[0T/cM v~@RDʕqDSuJfX70(v+V Iz @,?}c]ELW%/ODM9`)wFSS2l^TTQkcCZrEgG9{UEMR3YKG$2dc~>&kB[O;?&V%!*2íXcJqv07Ȉ aKEֆ Q~l:jGDŽGWS!LV (?^XC,,mHHņuDc%#gIG7FY!^ޕ6)!Lb!MRԋQ^0Er]mҙY-}pSX1嵀XMzܸ|x9# [(y~"m;_ADYFzsrE-%ԐI\+B{xu1S9"|;)~o}YIBoT4*3IW lζ{xSמlщmͨlb=\w;RwZMNQ`r0rw￈hMY)3-s1VS*=,#ZWCKt|;/::[wխzq^FYȝPGq[ -7/Ivb9h~^@_+5Ёkm蒦 ©k pCb.Ƶ0`f-|^gT\Uؓ2s^Я7+]ɤ+w gDĿy/_c*v2&CtN2P::݊wTv=~Fɕ́Ķa7*ɛr-6T{ ty+/)tОŵuFJ@78^LOyPꅭ_ZO%M$"Y:{W`<,^T]0'M]PԖZ=+kP'!{l.됩.?W"d6io ʞgAM2ĸNqYI2 Q,8v4H|]9d^G^'۳ɛ+KL3/;P{h Y,؛@$SR]("r uܖ4ӅېvL(jG)?AP|oxM%FzanVuݖiYžJhf^fx6YoL BicZ1}MG?—/v W$tf o1M0*$IjoR\.=qAUZ{Z HuYDG ' - 艂ͫY7_B%{lCi?MoWH{^ ()64zT v)xڋJz;e{!S&?s%ZrVX *oo̜b< xU+hdPRE:6F!6#DR,)o[5ûdQa:93^ցv8>I uE\?Zi6,iD:i!$^/OƮmwlMYWtlj/Mu{y 2`/Xz0g ot2d01c5hfY#Etx`gmQPV^ܞXsrK@悯HPY-E}B*StI8;oÂ{20DX|۲Տ>q ;u "=BX[Qqrj ,ZM8Gm*?U(IxpY1/X2P y.%Vi rɀgmMk*ʂ 4ءvL+@…1~Śq["i秢fd}ȸh hؙU<ԁ^g͈iE8Pnx/QpCnlgI]R;!IŀHUnJ-LRgm&?KUQ6*H`.SHD/RlAC9`E2aU $jZIM!W┆L(Rdmf<`Y-zQ> O2V*JZ{. 5-g.tcͅs$&}Ìk^pK[/-9/ H_1tx͖Z`;weLU-W@#ګ+pPdHP۽ںsiͧD˻[?"~,B V"2 TYUW1d ݼ΂V:a|5f5ޜ%1-uC æFjrY)79ᧄ|*'=.;T*,TYg΁I,_F<oSj=cawx>Um1$# [ُ:&6^k&%BoރAUVAoVk҄;~Ӵo'k}[Pg;MR* t,գ|r[{zܧ}VxG-/^ HsPӈ'p"K h9>JW<ۀO$!%pZp Tؠt\of?e&!uR"SX): {&tXy-^_Xi:rbgf9? ap?y4AED"[=s cĂH&O9A%&p$NRKEg8mf^UmH'6 > 2u eX„vC}mK;{c.;Ls*R˔Q (3K !bM xrl++le9"`csCZ!=x&OgXm˽=M2lfT)ai޻YS}dGqG*s\H1HV0x~.V%N,WI6K/]wcB.gBU_ךB$N=Nrip׻;(}^֒P "m)uаf j FX"D"*VѶ4{ߛs*|i4EԠ.Q)7NH&ΛRI럎n zB [t ~:ޖ ~^9w{ʵ4(PC)O?)BM} gWC&3AߦUɀ'ڙď3|T;Rَ;zڈ}ܵ!E:Tzͦ!ʊkhY'&̘4\ +~-<"md/в, 6$ G,SGx 5u=VT(גQiDL&<{ W) +yR2y ȯ-C 33X}wgkWL?~/7Ѿwz9rֻK"VfQJ6`@ KkVn(L  c h\[YgUjSh8g*_F% R$MQw#8xc+7ǶvY%;g=zjѳqPٱ"(dzKK+B%T b:Z^rK>w{L[K؎`Z3GYҊVoFb"Oغ)JJFV0bp* ]TSZʷGi/hD~{ UB7ALyT̢q13( S.|38 xL ?S^x5_D&M$1VcGBn0*mJ\F}tZ|_-;jd|MҀ]LRXn N.jQED^͐zf+e/b+V.D*YTvv*q^W!ڢ'́_.{h+t]Iq^ ~FѣssTƽhsB'LċmL!nOr.Me`ԆMŸ1QrnWH;U)3b ׶mk搗4" %vuE99gdP ]ɸӦ&HOyW~BKw= DLtIw`SA _D 7f#M [7[; -,#8GZ*ϑ{4ոvˋ5\ˎ2QEP='2QZ~x ~F[T*+D_hw:suq L%lW._ATRx>zSf~ ]&ɐOQ0e'^y4. > .,h1B8y82{)ZAj5e|[J~.WSl"~n5Zб"P ̧]R/k-K6'=Y]k,:lEv=Bjwi%g?mۗWv85\yi }V0kooN:z1HһAA~VbMNzC큄}i<_ecDS%]WSV߳ec- 0=V>+fZ49*4^a] ΌO;ᯨN2Ҡs Ze^!aMqQU<=3 Yr C+EJ>vRXDԟWMKe$ .$:B7TP T[)<]Ay]L!=\Z8qWujv,zգ9~\ wX;ศ W4S d<\XP` f:cmշ ~1FʩgP,=Chao;" jS8sT7Û SdaŗKb7~5)*e9|-,63-ջ禐<;3 Gm9A)~5vը&DR-m''1sE w/bo5C;gM~}K#]:P r|iQThΒѮ fNnTiTLuNρd}HDnmSG6o$a"g4.l1G嵑Ǒy~+;n|6zz:\6X \8ZGnޢ2Zӱ|U>8^C<U"5,QK\Mf RagԾvFiQOҶ@ި2_[^tqz'R>Ӗ P] 5>#woA§}9Q !Ueb4k#/^ڴ`Ĭ #)nbB\u0j[+\)7K!.csOe8HH8<ՠBQWWpW q`86o%F9Nq-yWj@ĐCFC؟ɜ~$:h&Gͥ'׵8m6e9|)&ml(]KO@U(8Friixmeܼi*d=vj[w/ w&Pq# M ZYa*5qx0ͳ3!nm" eveЋhH4l^ףZ27-_yZ@Ay"*?HW~6jGlA :6 25z>/ {"ME<:usV0k1R1؈|ЉzXrΨG.\Li vJrMgYX$PVh`pb0.›4Lq(P6>@׺W@ I{dcm:yBQG/kcnX3&(Cj_}ibyx⾲ir^iv!9̌?%|$/?7: wN(u祡RM|y>Ҙ6+1edL݃PHg}Ncy2mJDKk ë7fLFx?DA ֔5!`3>?"J,}ޙ=%p[R8l;j)彥]Oֺ~Rz_$kb)Sޝ*k #A.Fw-=^MLaҍRH HO;.@1S<% .Ȼu s-\Qq؋ʘ8팘< d~N 7O.HFuQ qSj"!CVg2@4=SA:?{Aɥ#D$3z2|&_šGwnZ]~ &ĔXY%-؋DKy}E֫c筿 >ݯ,i5%ꍽ;l)C9.lo/FSvNh pj r -)*N)6vvj;\\Q߉AoiiH{&ڣ4 -T&إae1FC{%d5W gqe3`nk7dMEg?yy)VH?H2{ ȇcP>@/~38S2~Fj'YB] ~װ9ԑK*b2k/DNE~,9]bݨYb Jv@{=lŷgw~U=-l94rdCS؇~Hb'˾ ꕀ7΄Fg_wWI5.5{o9Bm,. V!F]pk22%V?1L%~g7skRt&> =Z ?­Fogv)˫>5q7s`b.cdvHnGmۤc}^esJVYLR`0&} Ew0`H}ѢIT7}s?rz*y!heڎJ@=>:B]8kGdj޽C:?~e\\' ؛S#7PHAeDZS!wk_S[| A9N޹l/օ`k2J喲ͪ g $Nꕎ~לV0lk,f8mqZ>-Vx7xdoq1hd56 &qa,?՝ɚWM-e8ZdPi]ozdEd6Lډ#*]L]#vDÆVRMbI orJ9%sUdH:ڃ< ډCY tg j|k]T>'t!,äm)A98 ;? ^ASj٪lf7Ƕdր3jcPb{bd(V V[T1Q:j:, H'lK14gEc4dyJY9vɭYD :9!ΥZ7V6#t l-ki!r sȿc}}sMWҬ032/j!@YRcV9b㘌.Q Nod<̈́!wXTf QJ@3d,;tNw^-L|^^)O+L@/Py*nbq+>d[,>jD,s*%RY1 'wv0H KT&$k8f`&W?j=(9WXBT.VZapȣ!dIT:SXw'viG̀@(CH;bAln ksɡ┯ ۣ'c8[- 315' YCU3qhcYAf(Q/lsjB(د݉럺if>p5¸c7k ! $>^tR'73 ELֈ1vjKĨB2-O &2͸n,ILY ԺASb_v(rIa~+ڰ@1Zj"A`z햘;5/)]1i5^T{Fp "!ۑ#fdJk|d %HmܿےW C}cO(hD#\AX#̓e6oorA6v5+q`8HVFzgKV/~ưUXl!_1KUõŢݒ4TRWbzm@ҞP1D]TmHes'ްj`rD ! hǫ( eRf2'5M&lG-FB3ŠOXkޯWZ窏cW培'])_c5]ZYh mcdum~XCS}FlN4h?*KJ'+8[7#-E%PN |twZ:`7Q۰[MN8$wG]TX#]mQo(QFѤoo44Vko-Zp c늅SsM#-r&xaOn,;,[Ŝ#l`E/.EUotl~O@yЙJ#EM'2X 8c4ma^eWѸkܠify&-`to w<zI@HW($XWx_Tqu6{? >y52 umQ|_ʲImSRQFāb騿PH Za4 ]v ihֿDOLcյNh9eFvVV3JYn"LE4?lw͆ 7tP@W4PHs VJ_wRP\VQS0 M')-YiV 1r\X=,ۣNQ^#",ݬ; ?"NWyo..S@`"{X&ͼ j|Jn>?`/x:h\|pMPl- Gp@z2a)Iڙ72GX;&Ad4y*OA5]cWLy;7fEJ*CK sS- edz@pI!}S^gkCD><d: ~3pgA|^X/oNiP+,, 5D6&"{B3;tJ"e2ZF5_g''׷kWV.aU"s*w#ic-48OVרNɶpPKaÚ<ڬπ/xC4jTޡi I`ß x8Umeg[G1pWq3!JI67 nKpm{j+=}>k.084;F#w6weV500i+:8uȌ:}̮ќ3oKk瀟9狳FQu<*8Τr**i#U<(*xe;9C2,{ȇ!V HD1$B$/8:GQsG }ө0 rCc逡 mq-\ hן@Jz~W0b bwpJ)5}WẕRdVE9æ$Έ4Is9MKE=(w)yq&7᳛ԏRh7m}eAxř$|mh}P @#wgcUU<w=AVKD{w6kAm}a(\k't >ń)YT m> n0gFm&#B~7<"}~ 6 gPt$5^z07"nƲ5T6n=ɉ Yn[_$[U%%YZCc[xvB a9w gGqXԚ}ʅMkAAF xuO[aC[qB[7I$$ܳBtT`po-@( [Kֲ0%fuy#e@I f(h g!p[/6WomKǘ vB/+b?v^_)O%L / DCH'V ΋fA E f1nI0U$JuPBg"(XuO&~tTf^58H4d]Faxf b}H ƅ~dGbjW2 412\*&֟kbTwI%|Dgc0Gz(j[/?qiC2nk_ ꊋ+ڄ)Ȗ ߍ\GQy~%?>V*E yNG'! _2m7ƸXάXS :}xU/>ū9qӀ@E dRM:uR  gza{u;xo8s|ƾKXXO"_72ڰR]biJb ┽QbCyiKb $!죟5nL۾>ئm Kx|rLIj>Ĝf?3GD3둰cz5YQn@fH1z2'c]rn6DՃ&#]gol] x C2c}t#yJ;=.G#|%+{Q Tp&y"mQ; a#nT h,zpI(sKqOP嗟x|48 QKH\v򙁛F.5X.^@&\ec<$REQ<@Qkt"4h'pS/O[ #%0_Tu9nOLEb&Iva4>(M c&_FcTXrLmWҽr ViqU!,[PWqcU40!Hil{1?9 >l(dEI >ڃKrq!R3iLo!M#dOaNcVU$7ෂrnqUHHOSչDZC6RhI,ҊRJ\s=52h79zxH'n"z)"xf1bqԴ,+uFqMx+0po0C_>]a9JӋ̄57K1:^x=$I[)`VT׸&5t#HuUeow ^zfvusD۴쐯Y8F7'mzso7E0K!~h)C mD}ΩY>->m( 2>(Pȋ 6λl_/2O?G|PF,{'QPDa@v $:8 YB OK2= 2-W.JRH3U8;Qd9 haзȠ\D o և RB>\Te[LbB> gw{uV4lU4I-q EO'2t߫; ]+o)ay0_ؚ6lT:Fb[PTXF݈,}紻M1Pyzem]J~~JްT (q'ڵ="A@:jW//к/@׵cnte\? z t"ܧש%IL<eq~.Z" -t#B\\7sn {cf]Tw?sj=XBv.i(edE E']{`^lϥP2ѿc6*3vQ5<P\bXYS92cUͰW̸m5ky;0kCjt`>QY|PYo,Y![k-LgU%o(̷!^f(Oګ3;'6|KtRf`җv 7$R%H 6FNs/cA*\ZF{¶B,FvZPS0m,e$ٱXsyzZvQ`U$>}3,PdJ/zH%wyjYt- }hsPC 'Vk!2Rk%TA~v~B^tSI@تUs[)~Ao-%5^ sy[L]~֩%z ;U 6z{pꦔN+u&8xpAEAaS8uPϥ'('NB?uL+hs?N8 ˘)uyN0ɶSkپ)QAÌa*/(6CB+TIS8ل@fh9 Wbh S9M>kӢ:@ s[o H3kl*C.^z.9<(#YL󪅥KerZtV)~Pk? Oauoѱ (Jas*kjg1A)hhuΠ֜﷎I2)5w{aP>*PwW`^Z ;@|c=iaf56"=?$P`,hԫSk;*3 rf;B7 38:o|a)33E'ښɷoj^e]T9ש@GO]my}Y Nݗ[z"?Uҧzʏp>\N (eKl&$N?~|}跗s4sJ0};q)P]fukdOft53EMu=[A`F'dv}tr"gZ$UL ԺN^ Gp[Ójo특׀opâUeni甖EZm݀#y9ӹa{wR33Ӆ̜G-H*,fdmƑܚSMlR:8F\φh!?d*"_'J!~8ʚ{;:ZlmJWG9 ^PBuE$ms@3. w_hQ!nvnQG9 h?   FxUu`@( ]n Kau~SZl4R%-5u5"8Md+(>\)b[ ;$IX7x +O}_w~HO8))jKur];~A;~ 9.KMR,: 9|oW_'=p?6X3\13yJO`nF +xvW)ţ=H ,V'|tdޢ)JA;GYckjzdv{yX2t+11QKDn?XX^!x#loǑ,/RŝԜf.6vtT!~ 6,hlm&*~R A rRb(w$K2/1K]f:2tsZ{+[PDWsGNjP tR^'sxwU^j:l$[5IJIh.Z֠sï*4iduaAَ Kpǩ<yo-iRKXô7oqA&Kra]ڧ;ڌq[Y8ح#t NSޱ`"SX$ړO4+EɧK 1I6kRW8?H2ff.KD"6mk&X¸9DϨ&6cqDQrbp@rʏ.R>՛w6 QB:gǶ hrlVkCm9S*6cfj=#9ژ1wIk#h}YWQD\uQ9_>$bHvhZ抴mp2 ypk3 QKV2Q)⽼yr#XraA~?A e>Ǘ%uv|7#%FRIPqJKT0?(8و䭕ٻm܉a=^b>@P 9M9liLh-,]."H3dU0Nmݾ=χ+C=pc84[jLs\%#[oHz<%puf8i!Pw I=ȍ?̫ {:Wϟky(XgA[_q5n! s &MW +o7>7i^F?;i<f kK,N5J/S>~ ʼLZT-5-{H mdR[HdvUqՋA2!r 8{2qJ"av "L3eAO7еto%c&M_,80ÌKl5g m ݉Kݭԏ8}~&J|P 5faΚTPwvmfBk4*q52iY/xT@7vîPbeͥ=י%AfpKC[kޮ_gOiNe/ !O}F*OS50&Bc{Rn>=p 㚗U#_DK;[}רA((0w3(wȋ S`?EoeH3gj6ơXSGnu@:no{۰aӃFNY(pKb HO![9 ٬'Nsu_Shze饶ߠjoۑRaO_j'*eO1D0o/^ ,CrL&a7n}_WBK(Nk[ӯJO:UQ[7U5o䁶ZG"@F#-kPz)ЃT!c)͞J6uϛ=I. ĀUdN+sDg`1žh4T[9&MHC=7!LzU_leC@?g^3ltz#UsEZrL4=deOcja,Ĺ"FX~`qQ_G(O˼AC l5}YoTGVBe#1VSo 0*\'0$5wsm.ʤfVxF|h-jqqAw3̨ٔjno i)Blaw\#K;qh A(Dlv$}K|JEFLຏDI[cHˉ HC/#OUP }le: {$L 0џ\|VsVϫ} UN#fuuqpϽ#4u- 38sN::}D DgT%dj;T^]dsU]V&"t9(!%|:/KsG(߲_Rg4~ Fzݤo$^?'^)R4fTN_W 9Vrm li8JGvG( D L@WcPr–i%.X{l+sG BIKu82 <(-2Dž\èzfIH)MM6Ys$ s+wzٌdw-3AnH "22r>ӮArWƑ ؠm(ͥW&Ù 7=jgخ 4?s%*D 9.K3GձMPWOe8]}$<1 xWwismw <˩孒"ヷO͂֬'z;pڊĄ՛i@l)iQ C9Ǣ[0~+M'r %h늆-փ&@pq;V*5'{Z.M18y{j0Bǭ=ca7ЍP]j"&֛J<`-!"ecL o4Njb UArm>L}BgZoX!-=sH8|ӛ^6YG %RJA B#kjɇNΓ˙m9ٜd0p&\E>,H\gZP<8j(Y(g Xeuu%\?L&|AWۃ[<EG)^V@.VNOCҋڡQmO@c2:= j𑏄b{;Wjիԫ7dp)/7C2Lc>EnqSU(I{)C/ j̓QYK>gT)wgGeEDKx§HVTlq^ouf|i :\}ĎY-5XkW>|۪єͬR4<@&G"q|MJ)Ň7HGJ/sݺJ趚 =J}.X nA5uB?ƭAOۉ( EH%ѣH 1Ik7MbAH\-ctEhU!+ҍVvRDy8( 8r?w.~<9 _R3< R-Цl='FNOd+/oƤaei zmaqMWmaa tG:י"MHfPyfdDV܄)'橅=w[L8>*J*;,+Ladvڅ/UiU@|V::4锅JMu~S_i ;:-ؼqD)G=݀-U-jzRE94{z i !dinHFyҥS #0')z+k9Pþ+D ϣ QW:oz1-ϖ95R@-G:49Os?w:/NPiM]UO>)L[0;_ 紎=Z]z:#E[cu;+v Gt^&:pQv $2}wGNh>@,bb9a`^]kw7Sg\a"$"I{L*L6RcyƕoBr<&m< Ű{B9FnZwdF֓m>=`(`05]*܃Ϊ=XgWP,7xVתNmRca`wet!5mu] =2D˻Y5]gn7 ":[{e4W_±ں!tRB,p".`(/:d@yN t'|†#@sEp#4֫^4!]ku*AIA_$`Ց F(c Zd0,@ 9-T:Mל y}Kr(}*)(~iPAvU{+CGB;Ⱥ FS8^lE$IC)Z?}! o )Ms|jKxnlPv[/xPDOO0wIлp?i;W]#f/m8I/Ol6hyC- !PdsK8dK7(+MHZNIo/d.o{OXLb'(|\x$I 0ĿR ԓm_; <oOfP-`s_:kR")CFk]y߷eNRk(?h H)|Xq:THGC/Rb.}U_;8sf֢-}qh J|wݝWK^q8ȵ$?ފTQPwNgmܑIZ# ʯ5:2wBϔK96mRr9RFwu4V[_|\RnhWJsq8̏ZD]ɖe6=F< \/\ykZo:E[tZn/5WNM;ϚwskRdtsqb\Ŭci[9+vHJ}ż*|i)p>腽 M}vިKó%H}ǩ u.?nz[Dr9bRX%N$QMfi(W \IQ$8W#3H)B^8*7vZ_hw*$޲k~sPT*bgԧ1xWFj!g HLbk' 3,t(WIͶTuaU}w̧ 0Aў>n (6}fK2`lx'8fD,-JU״Z)t-I`>[3.t߀hԧ~Hʍ2ŗURAj;,&t0aj6E'9aCw3W<ק]!$ݲ3%7C:߸冨*H1ٰ[p@_VGlxasY۷y+BYiexsxX]<}cwN6:C7$%E~ظL7{-+Şe3:Rbl\b.z;*c%!eM;x*a`vpDDP}ҖfՆ0ӳ!q3!Fy ¿D/Pٓ)-)pX~)+Fz=8vCJ5de{ߦt2b%X-"qai+_fߍVl||Hd5;rQ5ƶW{\'ظQu\VK[)~@=բr]"_H'3{.t`,2-S :a0 & ,d}T6DJhGVHi VOn. pWiS6֙ ER_q"0]EzܴS|@Dҵ"/9;Of>GQ}p~W5o闫/ $U?N趾#-si2]+'dz?;wHXp^-יTӠތZݥf}G.9y{\?a2&rlѩ_!ReNb{3kPǜ%8d*it(XUVG\M HC-ܣ Yrp^:uj \+Fh`ȉΆp#Kugn k|hg=_uI oܨh\/XS<\k*vr*u62ڏ+$Pۉ-`Thy^8@C[F䙤Y>7^Myll ;R k,ւΌ{rt.0ұ-pg9rA~ u. LPANNayPN[D2Je2ݐ^w1:w 'a,BƠ=Q\ !rK :ul[:"w5JכPtYWkONAt=D /j' ] ?*b$؞JS%-+2]ϒ:oesO-fEF{a .i#4_p VSpFǔQ3_1A3&ۤ[*^UϤ`ϣ3uJcD;D rA["rU35~m>Qܮfrfmh%8E$5meO|acѿUPAKW.L JDkiINwREbƚ]Q.\ەڠU<-HŶOcVR9~i(ǩY̷vſ 1jN!,KeDv,0=(?M"F$ˈ5+/"ZpD4w=-|$NNKPLe ldA15+@ 5&G`/8 { 6Ů-6$~dw>d-r!K95:lf9[* }JRujiÙ Z)^H ڷZamθLy-X/"=.xC]YSYY\oa]1 f\6@]1gTŵ34v #ʂLqUқ[ &QQi\QzA5m}7TTk0B0?/QXݭ0LjE젣3' (փFP+,=> pqR ?V=NP/B_"Z;T+|JVB^"~6@Xk$5"Y\,"F=0`_4'*x \zi>Dgq3]2?fu.h#Q&2oK})7 i䩪3}3^|qvql~)*Ϳns~KSծxSNpDV$7i %@'8Q pV;O(HgoIYo:}3Yl^jQl=A>Әҽ&]sp&:"ZؕL+00 xhMzRkj-\>[goRɼ0m0Ow"<Xgp]<bNY KuF¡݅EXL^dy]eXBvGLj')eƆXzK^O_=?\.[-o?|-cI,vb"3G;2@]T#;ȧJ. ]@Ktt;ݧ qOw-l-ߓNцbg56Y$,p1  uQY6RCHl_!Kqk?orOOκ!O&?,u|]h4*!H3\Ebo?܋ؘ'_)b炎++R7A]fPOGaP >^/'j]qe>6DUSn}]@ɥtPsqeLPO.՞5vVe3&c>'Qp|XXy?7[j (5vRjy?]ڵHj J,ջ0UG~Ip8rc~FhJ=!0G&6LoDE5";\h:'\vůub Grϡu+*e=>+Ir>sm2zAO8uMjDNmd(bK{}l*]˨$j_-۾R3@L>:/ *]W"Z߇SR+L#آ˘٩'96SuNJ]ٸ%x$`(kUS/=J(UѪ1kXW,F>Wn̆ r jgaփuD|(tz_wLYv >(;4Ԃ242@oraM ,kHZRG(qϫP븺V:y4m"EەV1^1|Z<$q9a|4Xܢ {ͤR*WWOẴInRU:`|zںߥ pks+~y8 @.zeB`2c_b)eFmC/\i=QOߛ~)V"xn}Fn8h:L{ۦ ][lLf[jg9Ɩrk߅9Q Yn~YeH" c4Y)dK62e"[~r`5#^0 z}/&5[Slâa., ,Ҳ^[1=sXmRa]e,/P+ T&͋_a&{iw0 Ҋe ,в-ImILF5퍌ݽfTW,RYYjM5Qoz?KE M %5#wcTǁܷj*!ʈ뺔g^A:|dކtitJ|7 Br $u%G?NBwczQ1}Ά=rvJ.v>\UGzL2 3y(f2%8 Ԋ; (84{7377^#Q%q`:r/ǚtZL*iOY /*ޓP7]|oit aԂݭז kLb_v%\i[z؀1mw^ӐE0{ͧ0\!(:"ۆ\Qe艓^g{HgwmcEC>ȡei&JAkSS8AQbЌl.^rO;U 4-CKT5. MtI90[74;>W209hWj1{~o-qSWMe=@I(i6mB5?jLr}ʊ֋#uK5\ @h֧֖EجHjx<,γ9U٣|(4OX^)ʩF `R/-ӻzXܥcr%0p' >$96Gվ,>jy'83cPLTAk%Ev_N{&}`¤5BCZ#h{~B dST蒝%~`%Kw Ɗ>"I&`0Zaw,x+@#~ҧwOE-Sv2ΆYw*fqptrl΍WzM-GDzفx2HT9pO3/]ctsYUiҹKxrX1]:UA'} G@3χm Ζ7z\1c:*}ů7ʨaZ4E>4bmАTǾ>7{p#+i  p3:1QkE 7_쪗84m0u8>ځIzp\o!w ]h<;޼cПך݌+'JU#n$*_ǒBW[^ r~gƄŻA`::Mri3m=jϣ=zp&~ f.v4(=]f,\ Zw8$O#!YoI;L f5^&ղsf#$Y-O)`yHW=јaʖΘ~& ZVژ/y\Q"7at$D~.z;ٸ_jE-aYQiU q{|[lL[SN}D&B Ul^ʴar l<3@!h~tՃÓך*[M 'u\ Z5{n `yԆv¿ǦjT_%褙27)Ys)=M~m(qkKE[cRE1Hj  \'_@aՇ;]<`07E8) zNK6ͽ'qIl|ߧDڏ#߬WE}Vv%=zI8F=þy [b…( N;FcƱϭ'̐qzo) &ѝٕwu1oE@1*!XN!`i =|ejn 6L6%TxS )X " |m\y>6m+DwOG}ow~[2XW<^i91t/BNS/QӇV j۔E87 `hRJkf^Fy uK(+Jئ9jɘMԄ?K\C:YyDkU}t@/QAqת!4B@81CT6r[1^) $幱ۮJWSNs}u>|\2b!+/Ul?ylcJ_aq4b-REؓsWI_?k;t|,&Xl9S4q]oz VƆg2]APRat$6$A4<|XM-=ý=H{yVOgŶrDS'g0\h4>tوǶqI#s$t3׎4b5F f50/5{D~DuNņ+hSB7`ʪɿ:\¶O kd6O3vaS tnHr1jC('a#Jx#~iȌD'Wt]ək w\1Y+jX Pw\`]˜W&_i L],(!Wr$,`)NūCpU q wg|\y̻owOs#\hQ|%IscU0LqbEQ_xҬf䔓Ղ6y2G@a,'2ϊ @ڱ񚭈7nV*{µL.6xdm{OnM" F*gC z;k,Л/~lLD9nsEO>8ݜ9>fP/!`^dn-\`N(cgK<6pö7P 3Gvܻ$8+0*+Sy! ^8Y~;Gl}YIbY?JĀOA{w uǶ(QLӽSͨJԄ2g`jx ^M5Ppd,?]@H@B,w 7lWlpCpk x|aiP |hmnGExEtH+0͇xx\.)ؾ3)k,'_1e" 4PsX$kx|,_"+X 8e n& [SNZ;ھu0/j'j٧fm@C}9)Z F[\XAHcENַfl3 UZ.!9uӘ5QE8cN/HԎ!!՛?Cĉ*NmT"&PQ~w`6݄M"㣗X)yN48.)[hjr0{2`>s @Ғ-igytl\aϣ!Btߦ$sMyn)ĬL⭅lfU@WQwzGr{9CYEYJWF]A閖}-Wx]Yz_I ڱvswupug@҂&"v3mrvƖ $$~S͛3[o@kH Cv&UHFK J[yBSa`U({r%=VYK b~ [hV vRr+ :'^8KE1o{Ol-t `͜knJYI>pQk56eW54w̟okJ]*Z)$Btք/_}U^ ,Ӳ9G2 $NgʗzDq(:oy @vT}S*?0 4 eCӥ*a2ʱ=Ul3ţD-*)p*@/if=?{]8O} YJ}51sLh5 ~@NQ׍]]ׄo+{&?xm8|~}k0DFSᥭ} |:N3l&bHCZNc2 >.,h U0B˛H#%ϙR:55f=POC`QgaR\>g1e/r nHr|rh|V5Ga"3 01yʧ?N}Y(DiRmnŝGk3CQeњlF :bշ[A@µm,A'f]㧵]ᦀYF&[Fesxci JP}޿!S]34t8.߽s7q6ݳ/dv|U7-ă"Ys/v+bi&(,:JО:tO#)OdųqCo-}cd+0LS?ԫT`N¥F{VZ#ulHo9 *Z{)*'|?Hշt&~+eܸ9[e3n/K~fҩ<9Zv&/p$ AC^CN}|r,Ng VӃ~?]x FΥm#^ IBz* +qcOBkʴFԃHC:䕤y {{1i^MnH#؏'4X7[{wv"Cu05*sϋA,k/ϺKcWJ=YՏǑªn\ϿdT:~爩OA1oSMAӢPqߝI&píXG>@DIsa淼ֈ`a^u\PɌmO n |u\ӴfRi*:>:I"F.g0#Bu3we9k tm T2, aq״VBEI,FeMl'hb7x&Șrf+s=}OQ0GϋLsƩXq,滅cB"yu?MChw_5'~׃fbN[:P"Wa~,?s1(ve qG</&@ BSUf n7<i؞$MRA Zαڵjw̤4Sy NnzLCH֒.xi :`1VѷՏ醽(E aoпq p dBE'poM5Pn[ a A/7|vu TL_!+=\ 3bItECL\̾D𐐊<` (7xߛVdE3f vs 6CVXG[w>rDХUȮMP)CHI T(mj.QgC{]̈=DrW8h>$w'R+hm.:z@*#xG7Lz ED]yG<5H'AGG=ZT1, 8Z(=g/OQ,+&Wt9]6式._ơo\N~xEh>}Rb"Vr%tp#-;dl0 ŐBX qb^FهnC}X~ 84eG>߻p4qYhX[zȚ,kR7,xȵgܷFR kj@;c <*=ltLz7/jq{if}@0Q1MhqE(+{[uR'07fZo1W$# V ]Z̀d3Zʁl6bT(vpy^׹޸W_LdzrnW) NkFνZU+n / R2"q"HA=1XA3 Weî%Q%X2ϟY# 2Fc b~d Vz뾝nNF}&Q̹b}Q1ow-~x~ji+\]JC6H>{j(exӌGBz*y T<eͥQM=9 ˧!Î=Y ";BI0V")r<~dTRI~퍟{v2vĩM8G{X`98p&aT Nѯ!n O[iFSCsQQ|Nw8Ϋ6_0<fu1LjK*}xɨ@ mrp ~㛚(pGvc k Ps!%~ (Lp(.!T i˷&9\7 #HtҨRx Xۭ 59ݷFҎ-*m1AuϜ%xn Ѿ}zqxzBd% 2hi{X6fBM܁+EK^Ǜt2)GTJEL+H/^i 8 ~9sdz̆[W8+ e}(|{M%NCM`:fܤyzi [<:~_ "g0fN33W,[B6 _M(O;جD+0d$a'"߱Px5]3l;j?\Wk02( K͵ ` E x"8,i Pl;8$3BD<7},*cy6z;<"L%=e ?;A9|X2rzf.r$~qq"f◗C"XwԎ]52@B, !4o (%*%dpI OI@7o@h2w(uG+i"̕s{ؽ@?M| DUZO#+$E|Z^in8 -Sbd-f"%r7 ԼLA݂N T2HuF&3vlѳkҩ(j&M4={ݻ;v K{9Iuȍf-hQWɢPWtϭz\EPbB&knb8$~%/#-ɓ%e9m2!SoiJFW%rdpK1Vna׏GR$_ajBe|#^79z0EXNx) ?sޯ.KY5Ոn^WBVW!#{Ӽ#zoUwLڵ4mxdmGQsҴ^\J៾`/XEW1T 6Cdƌ1[CX8AyS6G5t\_|!gBaqIj8r`s{>P"OrfcUGߍ:JQ3bKꥫ>F9x+^>GVAe(0\2K*"5wWk%˿ǒ/ tjsP=$%*Z0z2lI_n|hV 0.˻z| yzKׄ/I +h\d!Z?^g4[fxW2ԎՐ^-JGs(*yKS{ݤ' yi2t]^Zo.9aD;WJ N*d>40N-}Z+>>Q6.# &,f7} $G4{8"-2fk,F S"k$I@鄏敺/-$ז'3 vY5N * )ޱ63yt7r8i1/N|EkUbvB[~(ޑ}~%Cb0F -ՠ˜܆&T'Wٕ>*C #2 ?X(mHE-v1Vv6Nq)%U5{)SEڗ-** _v ӁEN\DeId@ȡ䈥d<bH1ͮ(9܂%}+bPpM pQhڑrP]ú2Oy_|H-9'^!:Q "V9^>61)*Y;4qNPKiBO}r._Z@o)BAǷPLnX׽cMr(A\W`T NsKmd/D m9 Sּ oyn'EedLiWs{V#FIϲp^ryKi>GVZanvT_J!Rˈ⑸6!ܒ{oHk B@l=yEvӭPnJM6z+Ï: 9]ռ+v~'! ;P~H|TZMoDv_X.؃=h6Eɽڄ*Smbp^ i!V )}u;9ڢg *hjhՄZ@saP9ؘ:Rw|eW i\V+ZnNIZªƎ) {^l^׫ mk X ' mü,1;<vVLvj[z,ZF}M/+krwjO?QG{M, 9xw/fq+2nӔxes~k2DٻZ7MADMw3A/J1N.UJS!KSv[>JXzk cw O3l?^-j,H+a4nO$ v }Ot_ S kMG|hGw+#'>V o#Vwy_?k۩xq]s5^Nzleo0=A"U;dWS_}*u)b6}8n 䯳?ui(/Q^ faƽޣq/Hͽg-º~Aڽ#)ưw^:DZ|"u-ekjf_{Z"" W'kƥE?l11M=vl`]n+ua` A-S(+J'Nza]73]6G> xB{5@]EIq3#wg(97:5` 4~XlauܙHXL>@;D֊o![B@7vD0*ѳG`=h~ lKn Hϒ`7A^>7ep-u{GEP7FSO2UWOղQKY]ߠPQsl )MC5٤-PgOe(Xv7%:!j!1: `%fk8SoW!!)x)"!i/# &1z+(7U,!PcXdϳ6tpՕɵHXbf"߮Yӊm [ڒ[-~ؑESGf-Zޒ;fP.=saAȦkN(,Z:[]pFYeR;8Ѡ ͭ. լGQK^B>4lyJgz<ٙ#PQd$ T]Vʕ>"(?EҮ |$unjD'gt|a{i[ʃ*viYn6=xNR$QNCg>Ug_[q)q3|ʾX.J=HFe+oapBp6п`~m=,HD޲7CԵi4RbgWT`Vg&UgHtɺC(mݠk.I?!9DKN9o+%cC:1%zQtpc6jzWבCD"Li#TlD%gиbWjv4kwKdC0qS{žS'=w3 (oVъc˚5d?h8`&$ﴐXZ0F$[i Z<|M@/Y s-LgpkwCnv ! B'$H?jM)bcNT_vsD/* `+jKN{ASThbPQ# ia!~z>-sgNiUjF+晬 (~rٸuwf}-r Z貝ۇ̘baie_`J0QnjT SCV,V*mz4'h$_1{suk%iyO2lQE}Azsݼt(g%);ynI Ķ89]wܖkB/I ;a4 r{KEbtw=`_ULԛ[0QKFhxC"a>C FqȠt]k$y膛}ۧhVޕ%w֙i]κ17Ⱦ66 [(,w>jEx.9 s84F2qb ʡ}x ~X[b@ ~ ?-d NsأapMhDzV8tPH(m{NFT 8xĕO̦i|d7,b[Oڌh!+4Mdx+r;BF+L 2djQ]ܴ<[q5N* 5g!Sb{DpҲ3ݔKU!Lks^uj`JH| { Q o l<@hMlƌ^L?Py"]FZ@涬0.a"_UwxT+^U*QN$ ,*-j#ّ(B(߆4MrRYG3+Zү]t6T~;i쀟+Aę%Cn l[+8&}R|6w`z nʪd+REH'{{ѐE@eэdwkkL- Μ1י۲ 9eim{˞"kͰvMEj)$CKS.@9Lٽv`cm.͐xlĻ `گ #^X,7ŏrv*MNN!>*W\g5a='fTLsWSC\A "iy*fPCAC/%XP@Fsm+h}$<]< Mjv#vjA.7dx5R=`M[cf9 {6r%^pj{)޸>h󋷮g_$ 7Jo%QkTp˒]ޥ9ND%>P +3e tF(PVMY%S;+;pD|L րS+T8{Ɨ}إ6Q|aZ}y۟v7mR4So$d볦" V.96*׵JcCtK6+=h}Cd9+(}6!v;P%3l{^~#pB=M^),00V6,-p٬)f٥"bhJd9O47Uh}!q c}@= ^U}mjAc<bP`TRHU-Ƌ~ wB=ʥ\ T<ũXvfjkJ)T4"n$WBȞ .zd΀\#cF!Fg9܍C-Dev;][{e)yڍ1"Zֽ`&H==3UJ&96'?bVѺPW3nЪNثklǪw|阬tjO!;a-ͧ*.̿KmŅ+iI ,J8CPZ,i=+t 65mi rY{}hG8yњK'W 9UvjԿy0&/FL`wA.Pk}4-ǔ*qηC zK }"LzN-i$YFxRsQ秾 Nn]+52#;v~SG#նӬ$e{Vla2 l<5TDD}GEN4`p!lx`{CzųQ=]˒DyvA缯MW7$ _\s˝hox(ATZ!^.u92@ڂ4}>oj^򟦲gPݛI.*YR9VchJ$H8Sa㧘hj@S؜2{w-r !>=CyHx400d(#sUswa8=9nc5 tPY^+CeIjUkA)Jf&,Q,@mR`_]2px WFeUaRxoWZ*,%m:GEr;& uJ$#I_#4r,Un9ZGETje* `l?-~**i}O{('N9\֏iQaMSF Pr`xҪb}ˑQuJQҝc*l&>iA$57q/b<= $o|@TOM[*g2XE>^flf'{٢O/- 0س&|yC_C8(x΃_ Dufu&"^zFc`HFtYۧo7ټbMlgG{]AgFQR7L.'i{Lˎl א\vfĉōwڎ?vݻ[B?fP'']ϡR 1|gBȋvv(9@W˸2nR Lk ϵWF~ٷ{X@d%Pgiаz8M1-)OA$wg%WVNEfi$-`dp%$10ML5Hj!xiCK:FXouvX|GQba5EP]ʟՁtw PֺFe^k~n?IM~MOڰŇ5lc.~ W"kݔOKgeFb".Up;4K-8f#B>'0,k7c:~UiHj@ځH!<휤 TBj=nX*%pN48gV%r N{ߖ&p͏ӻ/(Ƣ^n~/WU2g:!˪<ƴ?Xoz!ⷷ2#5[|g.~ޙcXB!RgםGO%6kOO)# |-9Fcj nTr6QheIK6Zyg!ɶ1HpAHTec"]*ׯ&+|i =DFv|r^䊇R=hnSTMu+`MQya~TaDx lnu,Š6èDH7H+k҇ M FTo ;g^/_z-dꡈV^Iyưw0X JB'EeSpwWv6|C%MlGW 5FVؼ'k<.P:p\4~W?Q (7p#*H.kA C-3:G&ခ <ǰx,]n⠋ բC@E `rG9d=4H5T6h9Rv1'4|4;F]T$UDd8n+IxWɨm6lPдd.CA %r@V>w;n4= UOEvI3kbK~t~OdLjZyֈ\Bj3?fTNiWfzU\8$$ 2<(w$t0TM)#1m&Ga/t/_[\cY Vѱޡ1HG,re'|*junyI3R79 hqhZܤɞ8QƧ\µ+%dʘ^1^ֳdwD 2;t= r~*cfZI;l.eٲqp-#_3bi.S-IAҼ"o(}K7pJ`Qv#sY;O9W) (6wGR#)Vv8H9#&Td? н~  g:%<Ѹ1@oW9Xc'K76AXRHw9*\Dq[H(bF<5Ԩ3X @ ǵ1^S2pPKDwc"Og W %Xp.[_`0N3F \))h64ESPj wMhR9hWԐ64 * _~ٽ \BaB7B>I;Oy&Կsg!;UP'%9ޗ~[eU*L?@G`!b`}&&`\_9L2x"vzD\(AQ>TL|}7ŷ"m"B/*& SYyK`ִ51FdNHlDU~RxҊ8<_b(rJR :dǟ#(̿YF4y'n}!m$##Vmy!o'J|֫!=T,9q`,R8zm7iUf64mEޓо}t/f(`7-@>@$SfdU䮣pn|-@";8n:6;YV}(xW6C p0xPZ$<9M]՛-1_ƥԓ㐧4;2z!hjj]nʹO5':6ӊ#^l4"JWscbz_$uD;3Ή [#mUL ڌCLTb;a+MF=țB#p{{[Lڧ@ϬHGmii >a?XRM.V~1;B}QA +h)k3\q.?g _ФWJ#@K{Abx0S|U:RMvbɎvX23vuMz +K9:7) %}TGZՉ -0Zp e"WD)"AN4?VFQfsjgSAtY7:d ~a}HoIX#|ְ%kqrL<銃eZD8%LI8=DŽRVb="L@,т + P'"PvD%4~OBwy!j4*U +Y6/\k :LXƏ?x2C`y#\qp\i*#H-Gx\u!m-ϔWr|.})o7u3 g*p6oz2Q"8k}>80QT*&@c> 1"8B~QxƠ̻B a7_;cN$@N .g{ rAB+'Kyl|Ho5 4{.m;3__a ű ׻z۬Y.2"`N4 Q}X:916Đ/C !{uԊ{lm ݇{"ذLÅA_*XEÀ|ۧ,/-ޗ%=7m3cC p,2?r8 C=jΨ(@0_uHJþ.Uw @c-hnlEy]zB-we$~{g,[<U@wT!̓I.aofs"zs43E9 EՈ G6baOs%4O5BkL-w4C,p 1=AKGSU]\v\`'oĐwޙV'N6-v/K/+\ԟ>e$"eWT?=rY^\d;CF휪p?ܭs @v$[Vn)}v(Y(R ]!'䟷;Fv-biLr&i1n˧)"5)!5ͧlֻ0*Ii.%U՟ZH#mT4oCj=i!p/w֟˲.8L?Lb_؄ĽLfV[(eoNjyzI4-A zNxUYCnt[v*)0]`M\;S~o yyKĄ9XvE$ r bW, SiB ӸW>BxOhyC*I# I{+Ap]z4R? gTN7rTDο␐\o*Ĥ/m[z1h8oO'2ey_e I oORBYL2wr9Hi =6b5*&X>I/pq˵_(Vw(%z=z6_rq*)3 u%|6N ^T4 3rTKs,`׸Dj*[j5,=DF:qB{z5D6԰S\g,`|!S i+"'7ް-v 3s d5e pKn=.T툂>zGWz9lr=X@qrSM)l+)u1xxZyh`J “쥡k5D[Pɱř͉|WB5%XYU^AC 7InZUH}9Ɨq'g96y.+XjGRk>?GdhW5WCF:zPB)T+% aIx'H9DJe&v \,#n{}2Aț~um_ÊJe{nΤIh5>*snm-LIH/l2_R'4$\AEnryC6|)DZ[*c/pp=mx/7ŤK$^DVPfD& qӔXaJhʮzS0(wÞX֫6~r`kLDS\#d.܏XT&9KnPGń{q99 O-Í4>+l-FNCG:Z8#N/UlJp63U-};f2BDWq19rƷָʔuT:%X7(gM?ܐZphğKQ*°cR9X#p, HX/Dע'e A(ʡ'KEiΛx!V'RN z&WX̋s8I1ve `vWi Qa2rQ+39JU\چePK#>M4^Oc)!JvEdFb C2Ev } +Xviը[8A'8 ھ ⻎UBBs ӑɇaXhmy<ˮvŷqkg Za*opgHA˥FŖj{?EYo_&Y(Wg!:6 j`AFZ4ugTI)^b\R7=_О[͓?&'9ދ#N*e/v ^b7۪L ߻14Uz JO<*.ǜbs-xJ'阈QN $nwϛ5o4 AL3_XWӝڐwq_mX?H _SӇ>1f+0,VOa٢с=ꐹUxTHbW*O-cI"Ѥon%yB\:S3o w HX5%iC/nGBmNoߨK6%erNsT6)nnIOG7Dȵog#b4ΥS|?J2HOXj ^؊ @^%A>Nn(KBa {¶ *\jn{Ɗ,B#\.5t0'F33Mcf~!*P;EQfիPt} J&GpVSq +DCd}>B2Dt $;͆znJgmUX. `z>\Xx K el;ɧ<,>-v(mJ 2 9}1ű朧h)p+IsEwtM=QKMhYqE ED*[IXZ^dH iD\o0K2{&# /njXbh&GuĵLϜቈP'$2j.(=vXs6S7ng^)l/0A/Hܽ2_v /Vy~tx:0 u7_TRNuJT{M[wT=:4y*oh/?vdnM #Y-cQr$k6FGF/͡ˍAT7}Z4aOr`NBN-ipwtq˚Z%iW}ey`On:(aN+o)(-_oU2D`ߛԡj|ހY 璊TA\b ]`]TxE']-W+wkÐd r=/1P;]A&bԪG#MEwu,#/.Pȩk*T!sb]ee+#ILpmS$"ذ߃w|U8g g7'A܍/dQ[L]d+[,^j?X%\ba95aB1hߕ́Jn\X`[h3=޾16o-AIjuw", ζw 7K/W~s)O(X,:6 _슨kE\>ȤBe.JO3v3AA{[#]r?98 ޴Q92s\Y}ş$ēM:0Z)^5鴵^Z~3@%! Lc]`_x׈ i%>zhߍ#NCCF4xJ{Pg nب|_r8Hɽu/'m[9=30H=Ce$r1Hwrit}kU'YӧG 1ImW)`nJ#d)bTDZL>W ySudA0vm+vUI*<2mO(!E0ѸD+R{`zH .zL?KHmra1J!.yu)T՜ĝ0]c5jM>o٧z+SM9i/t#:5 ȊH&f>*%_X % :SE,=w5ge YYuGND#li.nNuQ!WnN=oagetAI;cu`9}w|nc1ZBIZ=DȀgX|m!du>ǛA8(ɴ_Eɬcoe*~etѪЙlJÐ>b"5*}ȺVJ -k(-\cagr" ag92:{JX,+=ңצpj cC=p謳Z`?)!lpV2PJC{esS$ҁa 4TDm>G[En!AsgRS8 pߥiL?0J^θIjy sKl:OD/Yn붵kz?: R\!U5IR=Z#ItnBUڏoYwUȆR퐎0)vsj^ROk tROs,W`J}By\/HҦ?݇jN(T1b\o.k7Ւkry:Mҧ){WNK9-^x:]nPtJNE#X O.hX{uj2+E)9`i@6:( Ab,p?̮i׶Qg"mZXn<xGzT^h{E˘ HTN O+fF !c ѸݢZkNPU91/9 wM0I> QGOxp72)CW̡,u<!'ϐ9QSӛWg]:g 1y-C幛NrV.=M&<4/pyjRs͜N:9UQDqղD6@1|.p$13iVh 胙#hqXEl! V3"]xON_u`yb-uaoz@3%7&qoқoq!ǿww lӍB`fR.;(g6RZCzAP$JQGׇwmFyqi9"N!ŇnqMmEEt6Z()w>@jӰ*ϯ&[&~F-V| o¸gc6k(S@ʀ]@QVwa7Juogw*~bo8@ aEs&&rL ˜άzw F@lK -.g"|Gg&"GXrEd_% PE΋fjZ= A5$5 R&`btT8#擅@',c~beɷ e3+Sd8aV(+T,(ĞaXH)P/EjWgzXuB_B>&p@QZbB93l"$A<ݮj5^8d+;4u9=ẦᷣFo`7{//׎嵭QeyYUc{%2gC0C+<JxLk2 nREx$5&y+ݲG|뭦&qWjίM]-|G R^f evfៅJ.lL]q6 wCzֶCN=ߞ^c߬79VEW|tJʂ /m tp?E?Eu3cTSoV;\#X6_1:.˲ז5ކ FNT+ӣZ&7ʦl ]Wޮ.LQ $UK8в~<{lSeyчi?4yɰSZOh}-+cbEպctݱsuϹ\ aqEL\P67)W؏DyśQт( ^/HsBi f$)J =4Ko%s[>K1 yT+j/~y mO jD ֌gFČ+&[ZuGW!AqHrky6I$vV _а  sZ_$6SŠr$1`'6r-e#QɫƋ9)䯭X0݆֝P.KYKbTl'T û$^Nњ8}3y|"Dr?NpSGjh¥2⧟j`]t;y;tY)Qu(WFX*x $5aJ Ṣ0 esB$RZ2SW0hoVCy'cZ.T3D!_YAGL+q_0THt?"?eF􅃗:4HҾ9 nt1%f4E?Ʈ=*DK { qM mqj7nT]- I}e%H>z"N[Zgzq3.[?Ƚgv̊>4 L/̸"i^rc;0;29xZtqI> 9n/.N+%Zo}~Yl$U`$2qxPÁ,$NދJ;.E_K[,oRyH^^QH\=?XDhACΝgAs#4|V)>ήbdO>~3l)&xxaPUc` pi~l귗 \c_\Ϙ=C=8j־pK@|A'Fň&y `St8Vlg :3ymc}b[OU[C `FŹHY(0~hW&k: #o\[CJ^c0vli mcqe3m&xkD\y雄KBpkdorC#a6=mMI:X=h fEꖽ*3u懫dP㊐}j3mʕ P[XcNdƻb6ψ,"ؠlywlrfB,< >fBGiAθ] s'6SH/3UҒ5 Ki c5FY8Drjj0qd$h@N#=$#W%'"rv̈볝VHu!(.,yhVCEkaN j\ CRu|D^˚*%]`OEBb@54+䥸2Ub>bwME7jO3R)m!(o4?EL91X4I|'}5h S;#"`X"xϡUrSVy|6vҊ^Z&j0J+ &D]'ƂKV1)/.m~[GZ1J3>ESp2,0Ú!ؤv0>5kb噁#QYIaC1uvS *ĄS0 m717,fϝDׯs43zѤEFiWEX=UR-{C7gw,zN&e^2f˦Y2Zuڰ*L/CeͦTaVRih 7v&kF\ ŜIbN-M"SPXg!(^+E0ޞq JB #J`@w3k{N eFl"B70i^L6VqtkyM05Mq KqmСahR7[fQ`!LCft<DNJ;iަNıE2A86o(iUs=c< PZ‧9]NŞ֊I!q}wF4%e"6K  Eʘ2*cn 5d)+E҄Ǥ-E~3W#dƃ2Ck_ODǂjy g+ʸ#>~˳jTxienA776Fg׻hxdH`j4NU\=0uZ4ES=ZPp@k-څ*ڌE Q= LJ~$2Vn$]1=ߺ"ﯕ-S2 Z7TI\d\װ^NIS(YL*X (Hmi?ZBxPxQёũJH7* jЫaeCL oWkNHN.8pTu.8\sA5Nb;2]BUOPS񋀥 *%P&Nי^8 [ >o|6P>wDW#շWzl$Gawٌ r$ZS@;H-7*w^B//XeZMN6cZ/5~$s煤oBBԁVEk+y˜vw|RiVL=CeFT< ]/> Mf$=GVkk z< &((uVd[PwX&YU´5ʼnϪjt9)ګΙAcG<$ ? 0.o w;@lRS%ZʱuE9PN>0ځ̰+j|1FPGޱWjkH2s~N|(ņa~ $i9$!t2RPdJ$(P9ay=ž1S΂h%NUF}bG4-+Ef!] {9JPn5p T.E8bcb|JjNWqŴ9~o<<PU3D N14l21'Muf~>[p+hxT7 븜1/rCnTjP//^mFvi^h_b!),7dA&\6>O`. 6}݊Y{\?G2c.Re1Cxcr"G!>YH-`ml*PyH 1K "plT@)bT<ֵK 1 WA0N?oHd:CjpUduGz?Tc|=W#\ s*: kؑ"PwyćyhKҢH0鐋J6+P=88+F`0$}<^ebt Kc á[xI~m5btd63Q_ ]&]6Wffpx4@.7(NV8P[j+GYߌ(ZڱN"Jd'阺kSpSQQvS]R5k>$,fcg@΍:Tρa9D΋QMau82r%/:sU!g)yt-SglMhg4ccݨXg-GЯ󮘇L]E8Ҵ_g|R0}.!n,edm BgFoPFU|T'V̿K ʲwQz#%(ayr  /+:Gӓ;R(Q(e7_W<;c,{ җuzɪP@* V' PBgpf~R \%I-9o#J:/ R [fltaaO_FHjomS/vVo ѶMe=i fjsYozVeSmy`IV^B3+l @Uc30[ =tDN5NtɄ>)b֔bKfZʚ rD^jdTjZzxG ö/a@*?/5! If[HYMu "軽zE&]v\8Uok-O,BO, N&q7uvn*s<:5H2)$H;bXL]Nl\x*"l:gCNi@[Ҫ#*czy '[5?TU\K}KRe\<7 s||]M^NXz;WUk~`}R4gFhf9tLҚ㱔lɰ7CGI:fE1lVt)X~MB\G4]{>1D6mcE<՝jomKŐwfzW'[ ksþF%f+-jєPBnoUq87QجzK x)rL jMxyh3PvzhDoT 2dz=M+ gqSY.ؐ?7g2oI `I$%}fB0 h=SI[fMoܰA㢮ЊQmPS T|Um7Z:ŪE|iiHR)={;xUJ=oZciIkaT%hTU%J5TL娯 :s^rܧٖ/T|WW]h;%K[o\)OTVU\&D=Cj|.k,݌&?ALV}4NePE&k%hd]osI@TG.Rm bPx`KRI x F dCuBE9vԳ\X'@E( &I^j͕~uS,G5f8S0O 3=>e.e /z@4^vT:Ё_ "ۋ9]wm(iUfУV*'SEH"#;:S!$?50&Oԍy;,`m{ ҕ@cF:r>5O}˺G>X. KZ]$M&3i2gҠ=)i_lén¶c95I^j1Aw+2qcV7Eyf&zbQ9ְf^ &s¦~(CSL Ɵ9^p^ˢ:E+`LJ e q?Q&}hw$?R}GilG8lCzgѡ) gA3Y/3S_oeRvs:1=S Of}IY̪$@+(Wi*r/0ʐ13'TBoPL ^#Mᬷ;!f&R1U~fJ[eOHev\d>PADƸCp6UD6W(F7ޫԝ .< upK˞_ *DPt}+@R|τyLRB+n߼U9S%4fWm 8j2eΩ;΀r FgO&aM@E=rW#@ăVr^hz-}n$H.>иlmzD'y8Vr|Eu)\ GԤ(ȃQdC^p=Qy~9աk3;/8/Vl0z:#ia)8s&jp:eW+Lbs- wXIyY'JSh SZ+1Xy" 3R; \o &Oژ޺-AdXerj'S%o |}*dA*G~93>nwl+17<4tm|Ղ[Ǩhjjt'WPViiogK%,`{SnE|aа,ga$hn uUCr42KQb/MpYG#@.ܨO/2e$g(8,#o-W'|I}/kcZZ7|&G݋(րCH'/}],t{yyӣnKBUԕ0˜DV>uCzp^iܤ͹"7 2~\^mx]]iǭ"/^=.Ў/R pb)dUVz'88 K0qUot^߮D,ܠs+ L#5 ýȢҐOS*o F]xt;.ه,maoreO5,$|~뜬 !d$*֣VDWd Β]lTd(W+6~:ڶU#Y닸R**'jd5 G?-.Hj &a2l1е-TKtY\mUH DΔft`0ɮ"fx r=sK->/I~sxEV u#V/Jާ*|Y~%56lNks? g'&jiC#oLmqXY_uTKK_8j:~ j0BNG4SJ)KKC!PGEfq~ fZm sݬKa5.N V32me|lDrF0PICTHj0`1S(N+<"ˌ+f3T)Ѫw6 1_P32?ZKf!hqJ=GE }(w BO- 㛛J5/ijZjS)⭄Y[בmar;"ڠSECd jO,knWv_*-7fÜ+iRCA>/ O(+pn *Xd~Y7X|&,qnIm9II@t?BN-OdZzS.UMYVҮlm%h[tqah&s.woɬ MCg TՊ.tһ`τT^(vo K؍yJE2f%r"!o2]X͘)˜>yE>D|nFi/f1E7;A6l_sxJ,egLtslL#VyCPeݸ[/Ùotu6୑\bg(K:ףF~.Z,I\_0vσD6 ӭ40J-G|5[YwBFx>$P%VVryyH!1rA.NiLPdoH[ͮO`7MZV}i=V{)Ѧei芄rx{lL@sECUOb[#qy.ڑ44:M[& D]5|}kpp)l(8)'LY5@h ]5vj" lm8)$.|l(,!8[BRa/W26|&-:N\x}#&%..4Y\9 nyq4:xPUMh:wދhǭx͜J,šؗIOȢq3#2Y8E?W ߣP:w.v:ZJBe.,7)hAfaşh\ ;Hna^ xf$2Ȗ(+cL3 @u挒5wdoaFAS-]6@X,}Te+9X ɱQ_T|{'`5ጻC#3\ n~c O=گ|z"`#! Cgb\u Gib7<$ Kљjynt|f.C ʭӎ%h?m{ےo~徛QLqpUC;5?bhPEMTW2 [aLԜׂ}J+}) bif>so~^{6~ʑ'M Mxm0rc9?׆ 7rTZ7EZTVqyƬѝ]uUFLgsM|&Xc1CV?=uƄ O9DLW?\*JfE=}[!n|$?ՠC`XkZoQ g &y+xe!"5.*H .i4[iͽQ!9OVX_"sx/Nj+ *<=#tUq d3Owէ*Ov8Q(TTJ4~Ťwi\mSV@/#J@,`]X}0d20$ + `z h:[&&Xg¡c[dBW@Xu;׮A>p҉,.158<u 3!]P |Q]vqh^qT< %F܋f"f؋ PoΊǸI*ng1)/Aއ##dhBiCFFD9u"bܲ6*-8Q(L t"%K(G 5|:x{ L9WP)DYsOۇv,jIpI[΅ 9A,I` #ϝA4|t6xH!yd #:O?,.TacA8 H*:M%(6vc(qM޾,7{jlttNQr | :x\x|C2Ebu;|R^4f:&M}\3|]xe6ʹdV(.=1xsP[!-=Kuˤc|yӎG=]37@ج*;C' *W\STLBȤcL5{B\=]`C #)zhKߪ-?$Y"kI_ɤA:xp~;t^v!AjMt6o mX85lZU[& Nzbp\X)}Ep$N\',"8NڇV e̟y+j^I'Zvm3f2f~i% -h+Eq)#31ʞz^DŽE>L ew͂-oce p8:rmÞ Z61!LҀ4H& +]!hWGUɐv}iR>*ډ л, v7xb#:D[/iִ~d&O*xUO1BDOk6]8IM?{@%8mB +U&,74٨T #֪0F5vOG$w) `1d [(>ڔ!#f1w< knN80koo~8{VmbRڑնոO0quFp7t=0sk䯆rrNPV57ZTr-@''.`ɥ:% 9Cjv8E cP Y qtdQUŰx.1jjzELy^gHHy2ءIKۣO[!xʎ1lo>Вfb=h$9s=0;j NvQA|ee{ Kn2Kam[v yʳO/e 8-@8 ٿ2|t/׳-*1lPt WA-. IF.`j"Ш,qSۼ%4+\U2-5s1&MЛ2/af^LtK6 _M >Nܑ檨9}2 xFyEUֽ.3}_Hs7h!Ьf`*De16vPnsqr] h*_{PmƯעB2J&euE.7ipt6īs&LZʝ|͕oZ ~Sk7Vb`נH\/.n^bE KXl44hWj(=|; )RzjXA$@\4#w\gqCDd36j`ZZ}7h>[ _G3jr!ҟ(QmKM`:ق#q3}5H:cIW$6n ,> 8eEK,OEI5QL# DN񧤒IP\LgfSHY4ۭjMj.L.dIwRU 5CM[0Fw1ܲ䅍{,dt4d4xbP,Yey"5ݍ|o]d>pcKՖA XF3d놊$e )3IFF&FTIA5fLXL־\$8~9s·9f{Zƶ^N~ƴne|xiJAC菃CUWQYA!q)g !f5FzXz50zo)\Օp#=ҡ #8ҚCĥ$ ^˙&F <S% k}^(,|.יHψޛaL~u Ka6NL(!~Ʉ8)q3\2 Y"xƪn2>G( WaA,pw-ʥJ2Y鞳YRK],|r=:7ҩs&h 8v2`17u5In禥Q B' zJ⽪)V\x&V%lשoMųҪ;Oƍ =w]_ 0_x p/yx9j9_`פ4L R9GT\ޖ@X%YJcGԞMd7Qy9ux#%G(Ӭe6`jv`2ؖRb:!ý?ܚ.C!KK'-`3ΩuaMy B])A8\мjLv`:=o`@8v`>lC DPƹDpIM:ó%nmt0kq<]bfnk-Q `wD/W'G כs<cdN¿#'G(.x<>b! +Lz*T> +p>B!2qbظfC9RR$"}2ϿVȻɹј⚔푃4!]zc] \>[꼭;{r Iz:PQ>S#xxJDJHںS]J't8a\8GR+OJm]Xyk:QN(o|)\Ĕ*Yo)VDL䞏(`3jRKq ʌ|;8>h@뿟!F"N@\vm/1geNŽ@nzc[GQPvމ23s3{ЁfDZŠSLrF -.h T &>>I42-ik%O?( S~gNPp{6UV /3= tnp<1S-tf/~w"}C&O+zʝ3($孻Ņ7R#G{]2y-:yb0\D~vF?)x3 >Gfj‚¹x Y&3Fra?5Y)OE ̹B V{xΰj'>l:"n :h:NB3ÐyitF^ZT4 x:VNejM.(?K*FIΎ=FNG Ny!8{K%8~-e}M}cN9+. B[擀fz(+R&91h`nri@YnXbvqIt;0yJ\2ٞ#iM| Ao̒h4+ruVD{;H>m=c-!,Z/?`Lk%*\'|!y9`{#/IyyHYa_vCHt;o'-! NtHdAK򃲢5GP*ͣq f,v,zB!BP.SC EFN xgQr4Ϗ0^o]):4Sr0tu]=RYx/7xeF}o^2^Vumv23NԮdYɃ ^IFtw9X~^¬أ}tsZ7!@26մXͲŏ& 4yb c?aJm[B2qmr(ɺ\oZp<>n!x1cw{MޭFXV ;cGo߱HD+ Z=]9p̝v,6{(I6R_J)^y۝gX!\NN \8}E(# 83]XR)񸶍 `Ey}{R I,sQñdYPyr;mX+Λ߂DDQS/z-'4% Q^;?D{IסN &ys[MbW&;R(!Ɖ5zޡA|A ^$1 8辊7n]ov,h3qut_4Ob}1Bz_K ]]wIzE;Ӟ'NX -L5^$zl/C3n @J?j~-ѮGQܛ/2Ei VpsFlʱ;"AvD(XxLb/v{ , LK8v@ыS=r2M#!>sDv뒇{k*T\VH x 6&) C<4yԄl]3͂$V@ j2V'v62~N(Ьmf꯮>GnMEen2rH^ xNz;*m.bXL&o4]z5+j>X!Ŝ`Vq Sͻpr50RvSDc5E! ӆ)mߑf|/r,2-Gpvb9 !Er$)[yu0g,kX5 c Am;vNxI B^C``Pl}lQ@p-jM ׄM*zz7tχ*!w|%}"͢d/wZRD( g3׾Ab#:>'x\:.IHs[BwaI6$B>LKdF޴^1"4Kq9VcF +OYcCRjpïŏqXrj_pߑM05LHOraK:J6*/G=vow|êitHhuӘxrQ{M@IX7bJ{mwCz壕%CHR*u,8uQoT~#X͓-/Лk#m99nYإ\W{)JPDU@n{A$A8 ^^ @P֭\wH}Y;杖c>כ|#-kg<9}Vc:ԁ;\m"@L L!#8!!!{tv!X}WN.Qdi?d~wc.*SJe@۫PYt~5Ö sET ^s^)VhtԟnMDJزPxm3p2nqq0|ԤLrOdh'Br)OV"O;M+L롁KݣO\"1a[tG| =use `1&En3KZږ3`OK x8N//4*(`jqY,°kz CڅH]֛a9 x$Cgt8ze&UB)@Z+njYxa48z!Oh#~]ծ1 ɬ3!$ٴUG1{%Ng|H ʅ@Z%C~,|Er;FM+t)Z␝xK#qCɄ/X~.jۧw>uި =I"d""LG\'.XnPT|4rFz쎖ܜ/b:ĐxD W*'fY{0 Z./jޡ-V!V`b2|B3\Qw4 ߩ̹l@7V$4k]&v5P)f>ɲYPi <v:4L:̖pոڞpBSNHe.qCb*'JvNY0 }2,n@ӀJ8 0]ȃ8G,ʍ7k89ljxV-> "1mwj+cH7t-a-݆~Aw鴤'/+uB!BXȷ +bqѵGxҸ hnF 5S%$+' ;oTI࡭|Kt`> j[K2y)t1ax&tӄޯ߯>c"MJ2 k iTjJQ^ [ vgvvf%bF?PE{A"Yo;ؽ)y ܴ TDD,@X3_f#[!Uo(Q`ܜ4)_kfؤK EFM$mL7z yӮ8R}Y/QT E=\5Rm׼ ʕsT2+:%$Ԝl$-R2̋GiqX_ qy yK=jL{hge}I%Pa#pQʕOҚ(dT6*atAP r},ݵV͋f" 엩~c/օs[:NZN쒦~~Wyjl@_)O]~h `j 8f;9L`laݾP )()-o'g(&VRdՁ]ܭ԰>jGL I+8ǫ#4LN\4+N,o?ow^kcTqv{u<񸢑dHw}3rx@{FԦ G1oc2ru OWFceRsLDG䫂n l]ۋM[n7*m%yh`i}oNz -5{w}'J'+Z)pwAq!aJcQ~"{Ir@"9/66wA/.x5OÉm&e-^:7p:81o5&xt / Tg .1ö:z뢗zjduqeQ :my$vJ^Jx]*f!kY^X+6׆]$X4 %/iK^CDwkW6vRDVEU[3C!t䃘G0a(:;O&Yx/1f΀yܭ_4P"B#f>}K- h7h|7C2DN!?{XI|e$#Qc+\- Y-¡њka4@;nj}?}ԏÃ/%hNatn{Brd/ϢD[4Q(?BLhmw* ClI5ȽO˗:'1l3g(HB"MT+TrAMm \e.#Cp@j%öWBopbRĊ*ԉ߳ySl\ص{@p.eO`pphOEX zeiͥcI^:1[3\N٨A}qJ[GDKU<66uHKE<atff8I<,cYׁ@`|߅Tٳ׫vPv8` ѯXͭ16_9_7u .фLgL/yY adAPjZv !]+ȷ  wX {,M~F[ #)pGsYmvx߫t-~F]0be1XF˴B&LvR9Yixq'6$kuf̶͠Odلt)y- < gpg$LN|ɒ[@8Ht(4<{I6RNсS D3R).v:7Ѹ DAmuEj+1%c8 :kp3<ٸTG{sGA5% B]zk;9/ޡ.NEџ>a<˂Gh!఻X#1rROzǺ}HkۙC06kY/avx9!Xr$v[9 $u;Aoxex~=~¤_φ4Yьn5J* -Wć׾RKf⟖t">2fϩP- |nyCP)JB4ӁpQAYBUTعpVV1@?Z à̓thO^zĥLK9~ W{j E줹_}gv'AGZg/B"W(4~)T cJpݓdžэ~-rH/EܘTz7D(>F!)5siCMrS.,WwaѮI-+!͔-BQ: J"ÊW-wf!Ȥǫ} =4/Vz65/zLMZˑ1P%k(t$Oz/5>xiyLTVݥZ1\TB,&1\x}$pp']xM}kcE,R%h{l@׎mOhQAJ:82rw8k_H@ZU**\ ϕon./:U8Y&2BP$(3ymv ҿ$xm j9I`!{Qr6Ѯ4͠4b#1ϒ2~rDWux:CZtufjQg{3O \ښ iyf]EDRdjt]m"Q,,lӝ8Y/[oO@-kxr,2qSPawNVoڽԫ40WZǑ>.0[H& giեXnؙf//ጂ>y{gw0/}UH%{J®'BXcfLH+y\<-~hu.7+d۵>Ͳ`{XG |EïNlD. ~vү^γx Iޝ}0K$Mk,5+jYfov/$YA4Niw< M{EJ*Pˏ4{OlrĨs9OU0j.YLt0$"1S>:vJߌ^ )SN5oTݚ}.SaB3R8+s(u %, '&o/`&zU%M'RIt.A2<PgwjC#~"|ͳ58e?O)-= O 4; Ԇ )}x_xh-/#6.4/\/ʍ9%AI]*`s=^ s2M_3|&-^Y2vܔ+(sm0/D]zI@v.t΁,wNБcjPUI] 6fbt(m3]pb[3K-ӛLOW) FŮ1UI>N7xN*vl.MxdWOe?}ٶD4zمNh`kt%m,B#C tOoʡ>;%Vx\ETkp1fa450rG_k5Vgnj-Hv A,/SCfOXDl4" CEBX,.ρXu䩆4nvǚu/Ơf.c 43os ] aP#U}yY&g}?eWdh?8H|gj;oo^0-5t}aX_Kg! ""oT04L9^bYz E+ֻ@Kliv )ީ_ hus"*TK 'g%a }eDZ@qмViұL>urj Ya+b̔ 5tP~i~Xa/.ݛ Kl_h o' -ŏ+UcrcY{Vɧu6XNw[t7'&0j=k>[?r= tw#>Gt4BJnGNj\ֽmG(?3ͺaNzrXw]!5pԜ@=BLhhN8ѻ^P^WWƋْUZAw6Rw: &rە[2R0[czS^l)UZb6t<@}Ey3.#bT$RvIb|F^\ =xYA}]yGaeAYԠ(tXwVG!Yk4;D}F H߫4=ee>vb;4* !N3tnu-tVie7941!dF¬ m9X) -tAZy(PBU8{ ##!S{k}A{8r:( +K;>--[K!@tEW #8Y oA' (UYܑ 23}|+b^`:޲j b'uFn#W *s2Mf Y*KGmaqckK~lz/}3H 49ɻe6P@+\2yX/!>r_}>/*iAq TR1Z!χ^qe}< mRǘ8z$…\+Nv794V%\F%A\׈-c LWwbkCZa4| &GZk"`,=x?F̧f澡䮰1t/,!E;eK x3^ek%%]L(ьM>v6%[~e 2"ܵDzRQ;^5=T^:*YJuz)giw}#_% iaʬr!,n@Li;;՘ԇMB;AGi#l<t^%C0J\{A!>kUgq<QqbKXG.4v7coʮe}F4:^}5~hYZ| PEX(q Fs!m7['-R_3Nd¡DKI¥o-AV :l䧑iwj9JRVSaVQqu IڴPtq̈`v%=`ړvs 'n+(6.lb3¶StNDTq4&O?TDf캢-IA7ԞoQDN⧍kJ]|tyw\TNOcϝgc~zSRY@*`W #.dEޖ׻Gh.q'Rss&m8j 6*F, & Q:+B܍rݽuRDj:|zl NX}NU暆M38Z?XOjo^y@W-[s,a%A$<x2u( /o׍>雌Kȱx^%ڕ]uB׺Pl24+Spm_~MXUN'\Ouy4b)AF &?rC(v|{Ÿ}Ա9Rs,*G̋2skKP]}s- 8q.e B}en.z?0XιWZW8)Ǥc^=EJ"-F2ӡ#1nފuXP X4Vq9V Ȕw/|TZ H3۞`B8 khzw@j4eժ .5C2J t9DgGԊ56Y\2G4kPk~efo@to|v#hAږT½OO"% u`V;ڢp F;bY9ɋcv]qôh1QfAj 4WS 9Uwh{ygh9S:Qܷ6;›:ehN0,t#>`iM8jgSӚ&1"5uҴ`6Q{v|CR5XG?q @o~$nvsz+ʛ57LQp#!j^g*[(UM:Y/ Kr[Gv|T]qa 23pz_ôއvŝ蚻Ɯ+B*"ʖ)Yz@l0rFl3W~Yt|S&*7yT)cqū߻lnVMlVZr6 W{xߤQ9'YGzHJ^|mgn3xK7㝛izR#NRa !5 zMR-|̤]WwPowaH"cWw.Jdo+n&g,XUROuZ*Z+:~%l%9jè^{M˷zd0l㟔UAUL5T/ban-Dc;8 Ƌ|V.zREZZ'T/ `wgVm1[ #VهN6 bG)?n eq8vN_/N aCEnR3 y$:s|v`=HTrJt2ֱU:Ce(8J[Ck%SL$IsF&О 3gI'i*y7KRKX C<-Hsde6CŨ7ïDZ\ҽC@w~ΌzИ燅m.v!o8/s)EO/"2/G3MK^b0TM& t(|]p.@Hs>|6.}1ݙ}3CdAneQhOWHr}<{LQn-/WfeOތ"gBd}_gg;/vЪ6ΒСr.ޝk:"Sf_эTڙUi06cLX՛[u zQ! WmmqVKL>88cV9w.cl;*YS9VsډMD2Q+P4VNԟHmqi\4o<DEz/$ _й2B7H,_D/Z0P]pjK$`  2HMRO2Aj `]Z7O%;noGaVn7s7q2,=4ƛz&X-l;@S|L> i4D'gMǽ6<b60 ֖E@BakpΡL)mN@ |c"%eq$4Ė<_bF 4%ZcusE CC6XK>BsqmkUC&旅 m/q$D/]e0 $\sZ·tkrb{5sqR(9b5!Ţ ;T?Qel=l"nӤ$C93uE!+PHs5x2Įo +rDQT{D2p@F&&!Yq|J@-ic)3- ?P` :"7"-bAؘ̋r.#GZ-#}}J IR^Xs) X LTyG#6~`뼲e}.򧉦 zߟ &MZݪ(N1آ9ݞ`ǔYX]$U$ǃ'J!l}ߕ;-dr>NuW_~roWuMڤ׏&E7gBzW|Ob)ߵ6&:6tz/;A Ҿp&v9$v{ CP朠|*=|wK8 n al b8V7$K y -+ԟqT[vdVcTנBȵ܀n4.埵јH󸎮l9VSލx%-EfcsqHܸv!7LFt J92ݯk3@ly<fy1Kv>7CEq:>f+Sc!l X 2kkw%WdjkTWJi8}D6A ֕U{Ԑ $-kSto]'&ojΐw+빡( F_`RR6SxPτvFX04`"pt3OCxrc 8=įQcn}J 4h")5vB[:)FAۦ;HL%6Tnʵ ۳]Yse]bV]9e-Qᠱl F@Hi w/vC2(*k?v(ظI4ΫCHCn\1.>W)^S kJ,:i+-0/Hwݾ3VEcU\66Om +1'Aʆ+> wzHk.8 ,{RK&4D+#SofsGƅ10ׇCXAeBI; ŋ? ?+(ޙZ0p9G6',v Ŧ 29Zy (\.L잟ͼi~rv-@VTby&r*UsF&Y3ow@8r ^דZoyZCl"+ I`c%CvmOFo L6IlZ p;l7[ʌlO:.%ð* ADzLo^?L A}Ӗ-Kܜ͋9+Xp1͙yJ36Yc{2KIa'X3QhFd-#QQh|Jo?K(t*}c{v(DU|)(X LРuE "v }aʾ-uh sFT7{^l[C2P'P.YhY$Ӝ({\ACdtH>}+b:ʅE{9P#Q*qڧ;Ԃy?2/kj( oX=hm[ry%>%~~JӾ>n^1g[8mt 4|E|)e&ygJ:MEWL ` +-+>X=Z|̹-uHӼMlnTqk;_j+2фTGXl#$Y1\"u  ]ϫ6[xKnMd.[|؊S582ʻh +IH8`@QZe,qG!m{o품\ӈAӱPG]Z 10W.VbWo){e&46Kv;R8uMx:OoO;)> ) U3"1d~g%؆ӒH)Qm #MzW ?їi8-TuhM]|ja})y3gh|k{A.ȳ-7jq.HNϛ4;>{!ؚi$ M~qɌ4vlX ~-iJZT;KW("]aLםbYI0胇`ܢ/\y_}ݒfYm*q3GZqtGYYyTX;2Yv1vF;b">2Q MMI[\ۃ:k{da+3n쵟1xn7 Lԍ)> ZIʼn܆},wo͹Q7K4ׄͻ0 G\@0-<l[p;:QH7:R,+dk^f bjL_dŕ7nSk*&Wȋdԏy9Z3$HK-Pc/&;bc3ͦd=vXL$Y뱹:?} !ckjVWW4[E|H'^1vSbCnk0oBkXV(;9&΋.<Ѵj{7D~b9PFf@ w$ec9ƩSP'S۪ؕIt\IX_(!R1߽auv~mQb> +B<CP[8:S11y:WZ`dggs!OL=b̡7za Fg:Y0nrioɵ߸VT;PIYf%֢}n?xŎ}!= Z'}"}RH*U n#:xnz']=XK:IBm@.q<]Qot&sSd2kUh7/IES\bޙJF C=Iq ̊ Þ~3ITEHfΉ|bƆi:+2 ?CÚ ،>QZ]~O[z#U0gL`˜M> q ):`Y8am $&J͝; l@_C'xCGX"h*CS*,WBg&aԢnDaMԁ)5VC1zL 8Q׀9Ѳr ߱wq5BZ$YW a@ԹUymק *zK$6_9l<&+2fx)0'jwDBKC:1LC{l ad@wv$"~)i KZ:7ev aK|lh^jУMB(׻9 6 R6vXGIr(/\=eW -۴q1]RMHKPa[zLǙw>eal" ^cX dkG{Ўu͕͌LECXʟR (geF*`PJ.bBGg组YT4B_|a#Zoxxthg <߫,# Cn+} $3w3oxʰilx@Ķ [dvI%=se =iͩr *=F&Ңٛ`P2W Zظmyc+kߧߡ2"1'4cg3Z8$b?-eKԑn ",oюуgB%Fi~QiLȗʩIcj:3,%>ćx;B-Dɪ^7l  ۧ@S=MN('ym,Å{jA7PSʽӪSƥQ'<9Kfz3A^!G\]Ơpg]׋bΜr)]d5qR{$:C߈g*R]"Bv<6G!U|It(K^^`wDOz1X䄳kO7Se=fHay& ٣ ^ѫRQpvB6@MbA}Oe2ѓm2s)aVc,Μ JB?vĄǧ``o4֨HV PvƙQ'hG܀Ɣl-(zߐW. +mxgG%. `CZ1!e:sBO-%g : ;BpM=0y7~NOu|:~Scw~_;q TW$W=2D㪰goEG?tqi$K?mr0䀘hEk `}nykYV* *=eߟ z%.UP·b"QPbvR,X}X8)-;BǼ`*x둝'ʵC 'Ij8#*fEk!D _f&+_eh?U3-AaQ"fx\H~ NI3jP2|J-ŠX.ă:zrjL/4ổ&yMF)VwdtXu|߶n菨->( 1|.6=\A/UC2̓ēYǓlkgir.D+"X xK|~b7Q@S}e2纹Xfjdn&%O ȉc9W['DtK؅&L,K5ȸEr)px d|S' ɭ>JeKo>5s<էRi,DDN+;KgUE2[rVF>ϴ!Dbw/sa0c2IgLyq&W>kE-YT06vqXrG%xqFE61|Wd >|S {krQ)R.ԭuҹ154oCD&9@ hUb8u 48ے&TMxSE:^C7we> 8g" 5 "LuN27`p$]AEΣ5G>&9&5 =t.ݎۍ/ yI f~lʱ/)YIcb64>.wzVNu]y} &̥,"!lmnQ'nbrvΕ:G^ Dp5t9og[yu>p3*9WN49ɚ:+HI(1A0]m~lv5Hf ŎΐmS G理Wm$քk}` {""!v&n7yuW>,ݫ2NZbCfgB#5#;|}ɺDTI*"/r^u1Q"\ul:x?B78=v1kck{~w457~MKr =7jerNy~Sw ޲B:7\Q#ͯ6h-) ѳ {' kzSKhi@s[h)p>LZBQe 8h&bȘ[J׆L%^ޜntok)svikt`k,Q(V[A;jhG6"Qޤ7Rʕ@?n#R$xV} %m:|RUk'3pI^MKɍsk0<~6ݼOgsVGo^F-}%ʄ, uF)qtM2WydRBU}D ׵[גe?JB,RRo@~,V}lA3щ_q9q7ei%'vE C#+:vr/ xz$RFuKJJNl!Qcn(%d48%#eNgdG+~IdDkUw5wv (] ݝl;3x"ĝߴ%*4:.ad!9BdH3 oX+i3T38ig#Gx=A_~9Xc!MH@Md̰0P.R> gyu%O|p$PE.Kоd8d> yꚕxTPrE2C7H,4m`tzWd|y~Z꾻E iST"Nu8%3;F\0AQTW.v ,D%9)hG,|2iԂQC`XPڀ`A+*1',ޚBN7 ުc2Q@Ma ,UyIoX?Q>-q* (Gy?awݖEhc >paoϢ}_cU<1l13 ijtTkgN vcq҇[5G(ϕۄ3V NE;;1 R Z*]fq'=Xf%R)_LGݿ|Ƽ/ ziu4UZBG6-b]B ?)=戊iYݾ\hI dA$qsJ8@AOBFd576bSCƘ1~NږFLObǺd:IXm+ڥPP{Mo jǣ[PdG;eəP o#~MLy|q2X^s@܌ݤu ͎=/S,\;fͫ1d6 vyyO9l߳/`$ "s(tTK &,TW;ʐEa*˯Z"'kzށe(la{ZҝMX/Z3MIo^hޮe*zd Z{,9B2zQM&-H}^i%k @B C!dˆPahgLסtGlNbtQ 8bۡ y#ju!P1i+uV۟GPg/, B0|Džnd8_DzR%U?֑C*qpbWbJ&s ̽s6v1 nU":|O '7~ {Y<+V$[bʬaY3&licZ / %,rF'ㅛ&Ww5xLԊԈ[OV̍eTfշljx&}gxEik&15&(3=]j-sFTkADA#=w=}K ` l8Wʄ:VxM&rA8C) A^npË]Q7sf ߥusy3D1!;e[s}} |J"DOB`[߇B%.7LJˈX`|eCՐZG$c[|(Gt&)3 \!ihEoGŧĩ̡,ڋL+xw(mj_w<&xD wz_cbȨ|IHK U nKH@{3C:sAQa'f&{شp8l҃#JPc!@Xy' Ո.H8-SɁb+LXQ~Ng;*q:S8>VvlGckM ?.EwGPP:A0Q%ٷA`[r']^L6ƢMC'v,&vQ֍X.0)Вu>b}Ge8ƨVrÈake,x6 B41wH%s{  Bg\]\ÍVO_RFܘǎf4ډer:"~Sm>X>;MZՁ$?3QWaN ryd"hO+Z_[ڮp7 /M>wkx b F8;? >bH~ i}ď@TSDa7RuBaK ?WbhV^(?(=$gby+?'6]v7l GiXpWC9w lMrHle9I [.6ObӱMPPz#} ŝZ%R3DM9ͻObvԶ0 x=K*SH=ry94F)l ^@n3)T TXhy55pټCFnVky30Nt=:ٙ@ *rQ4%foA# !MO$tPA - Y/pB8hO_*]nL[:$B_~25s8 `7N E݊Thc“zzOtҹe[DŽOބ ;sv;Daaf n6FCQ_ h4F@~~"EI)ޮ"р߉oC1nNxUwl=}ɜO ԦMQDžoצɅp;JDUhsƷt/JubQP{!ۭ)Dͼ>#:{^-se%#_DNĞXL|pYOKڬJҦ{4\{]2L? jPv njd0u .%S;$re+$ ;٭Vn;~1Z0ռ)lz ]ie7s*L2tO5Lts.Z0q ztYrt)I**J9O_KԄ ~! ==af+Too tP[KnwmsArʗ[].=F9FG(#=佯h{5Xbt)8TndACDZDhu̷JOǣSt/c]Gd%#q:wodxWOMUC.BvxAQX|Dќ|X)V*c R{E.^xt<\j]` s6@w0"ZdnɴN3;MHm'~G#bI6v0Q_^7rLçHx"(~`Ju)/b^Fk 5r\|3K.UQ0Yݛ:p}ܪImd߂ݰS}s{3xMþd[Xd]tIy'MSzAܸ!|ƌOA5=+׍9+ݕ vH lf[Զ!^5A/+@^V,/# jX؜]fy7^x!rQEsFX 1"u%㩺P",)#^ R, if#S(ٝeRTnc+0{]ҏ9c @bok| 'ޓnqY@!7xO Z%){+ƦoIt-Ǖ`1W1DIsa\UoA1lB QK˧v1:;̫|ֵbx,|.'QoRly}? !'`:H& tG319Ș2YHN9SHQ5w2jl'GĠհ!/T?rS;։4WEzX4pKe8K}i3e($'5! ڮ<5sahS(. j@*iOya-S3XRlŷ0 .iDW ˺j*UZU'~ ̐4(Yaa%IUz$l8Vꄯ1L4  Ob%6ta҄.NSOtGXoOUkYftl"MmZוXXW6,3 Zb>!Ba\֚ס]@LZ0΢8ǰݿD!σL!=bʬ1T>RWZc+ KE:2+O;Y)`:%6-8;S(\hi4\nބoIF=,mUC}^4Wa.VIH>H;II僊ꞹB@^K "C/܁# ao:(c#ex %n'IfG2|3*"O Ŏdr;S 1VD=֍,U'6.ŗ)ć,Hw7–}n=_4-lt\^(}v0gQN~Pzz}EU]Ov;7^^-0սe䰰rhu-BV4:Dm߄84!i\ɩ=qe#6I\Iq0=Dҧl<7g霘+]=V}=7B( 1%r"|A_ 19rvvJ:%Әzb-Fe[ʯ A~7xI3 oN)YAm|ENܠ-_B[|Ջ=MFi1rFT G}?qe4wf-W[f8Mcp_7MlǖT%Vm8J-QZp}9lbܔAf|}IUc< Vf"fF(K; ^Ϗ%M&|s*lTswUE9wiG^=3VB߭B]@2>:ckϤP@79G7l.5+&#>hGPQT+2Hŀqr[ P%_{T,1!,zYysPEwߟnM@ z| ͱ**yiy9d'sǩs8K*:&9yM,QF̕d -F8ԏ1N ܲmjH\b>x*d/,ժ+ps:FcZ@(^# _ 'QT ֒kh=aGX=x);_1n@VRzM(ȨF]'MCO,=֩K[ODu>!8z_-&U^ H:p&]jsTWxӮhRU05K~@wJQMR+_e򅁞f ΀( \BG7L/V ZA (˞&ѿFsCBp>8a Kcnj/Cl l/+%6 }^|ʀ}kGW?ͼ :Scc^)7d]}GPGױj "dHĄ"AK,j?X]jT:e%%ɻ<\Շ\-8+}ktZaNHMdO҉~ A]'wQ6Tm˖:§]4(5HWWD*Q.ml[/HEu#:VtA.8U~ߜZ1]yT"ߓb`K8R]}VڛѦ`Tݱ?}}gcXUgd>wʷ\_XT7;uV?|:Y )ٺ-DYŗ9S|(?zpp+ߢe>a@3Lb)fΓ>&A2z4Lv+vibRZޔzT8ifd3޸O$Аȋ"7tXXvqfinþ]@ * BߵHωIFjhyLZUk^ 'ʁ)2`b]*w!gb3s!^ .p%Ie?lQx0$[oEm'48pf;6G-D9j۲+pޟZ;->>[UZ&[`H}/eֵH\AWTLHD A&ZY E߇k^hJ}LCF#K{='0NY܈%|O^R#-mYC1S֊^?TiĐ+pāD;Y!W#?GI܃BmS;]SRyf-&g4b}W)71 Ӻt8) J,KNI.#Ca7ndlDp$W[8W$Cɦ 4u%Dn%qKz ={z\gH2Q'EU !,cLZ߃F`C1 4@Z19hoRRSPSՆ SqgVQX#i2n-dE?~u8u G`Rdzo{U3amF nxv7w⻧ePabzRQsh:΢ _JJUY_g .Շڿe XЈ,KgqKIQmj|O#֋%Q6tNBamÞzRD^z|t"蚹/_|ZZa% eZٮM0y8 p!mye'5<#yǡvLdV}:i+im};G`Z!<@VdTb- xfRӷyP%FD:֪Ŷ阖hyGwz׬$k7gW0L XփuD7jr ^X~ӝ ,6 hWRVreF7j3}sxs=N^ ;(l$eTW.gNRʐ%C̖~+ђ%C'< Oy!uiFi/9hbMT9Fg$'`6t(Z˦\\5[h1g?iy{ʼnyM2V}PG~l!@c޷hKj67-Yq @.1u#)]GLuԚiO N_CdC_VUsvZR2q ]Ei(pmhYUY&s*_{wѓYdY9ל%D|.Xv{oElrcisQ鿭l|E]hXׁ)Z} _6*7h6^;!YE+Ql_\}"jz1vDRP>B4~rVn(tdWLZͬ}ڇ׿g2^JDa%U:r[Wȫv<'vF떵8K Eyd:5;,<)l%S[ )loLƍq|$]F4zH|xa&+\Lj;rmoKN"yJRs}/?JԐ+SS|??JB~ !u>RHrkLMiw51!޷Fng斊*L_ FTo\C\'k@ZJ!I F,=/=A =NKB{,}(GEZ ˈ1#جOPe^Xs]% FjϪ4 7'Y H \G.\`EU6_}1 $Ofs7A2]s,E5PD' '.{?[O1Št(R 2_ nOIL\.ߓ;^ /3)~|@4T-^a!@ $u.gڼAilT/֗3jm0о?W"MۅMW6q^7j$D,noz&R+qE1u[5.cZELNJI umN5FzVz=2g=^h\ᑞ&z+#w}dXOrMRf,=ۧ{H\P:d^j?dpIΟ6,iC7ѝ>R^xm;eq 02{pUY\(p [ fytxr  ]В֨h/*a8:Eq@N+ZD,fJ}-2099pSf,zvʻ3Pt;M3l\3RcK&?C=`y`10TC=A Q$yzl̓,jMUno˵cAa?ۨW^C`i=d;uïlHߦZzL-.Ct@fbi2 ~InH3`XTUck52UOyj=Arc1Ցmbe\uKB2vSϹ}z!8fʯul ;9Z*Q}aD8>|@'yAO{n ᷳDbe&c5֛czϒKA੆@2`~h<81E?Wn 4H y<#]j30ZDo{ SPD@6eX!cp;V|Y^ȌNAYbUÔɬX8[nQqPof,p/􆵻u|q՚}Pnx_BD_.'^EMZz7=us[n*"h~1ױ>[[p1"\09ӴF4r س+u@*e|Wt4\uO'̫>C8Z'ۤԔ*+Y,K ~D~fBIֳ-7܄Ξn[@@~ݙ |ڗ;9e}ly :Zܔ1egrjܲZs[``mʴ_ut3vLPd&3W0c Hwo[D ?8趸b;働NKS՝b/@~9j:Tnjy̽`NQqJEfb*ދΙPB'NKͰr4f%6';ķ% W;*^ںZX'(WL[Պ&xkJ ]rgF̟9 s[Nӂ* (ki?9"/7DO?]Xy ~lBŋ󯅯 5frNۙЧOh,֔?]zkMW^+=T)-pK-Ɗq9|ӅI|^W`lʐIp(gIb\Puy9f!N5τJudk4MBH{uC`IT.mHI3=5,@A ZW,R玥Eo q`\!,_L$ ԜIhA'AݬiF^)9VvR\:zlΖFQNV ͅvȞa-z}Njv#J3rQrnt=b3#7Ę; HXkm\4d?$#{壀}ta*$˥%&/mvETq`D2 b@C:=bc}̥]{i  &WN-] >,عǀ$)>&>>bߜՖnHNyvwZ1u8 H.$W.W=ߘ'SbcbE `*HyD3i"r ?]S$$"vKu03[ Pq-J:$mÉLu+Y6>bBٞ}:$cGQͽo^-.]-wSQTb¾`Vgj ڇ«!XZ_Ps):%kٸ&6+ONgwlK 2npg=V"|NkUNv09{ȟ&*vg^~E]u_ ;0q&*2lmnoMLݡ4 f I |"їv͢$Y4WR@< a wAL0ÑOS$5*eI}ZA*F),0`${edi^:$hjV X/ rɟG7zo* |ѻ 4n D&]m>0F Akj 45a\jCZ,K Jᘥ=RoTh:0:4^Ĥm82s+Y@)Q]Ihg1LO F[KT,Z+{ TvDՙ Z,8d錰 L&PDÂυd%lb[SLzg՟AY,?҆Hp4*}͐ugE@@k<nRʰvM;͘?v#Vm`w{QslW@skr4&E_d홙m2a,ṣK2jn[N5"ȇ0TZ$.7<zg$t_vRdz^yivdOtp( d5XhCSbsvFѺl n?ח @@˲P!-Uֈ7x+ wGxJE (/*y}9rO.e.i7G9&TUe%Z9;c#-,]..8qJiK )fGkdȏތW҂l񄝷ݞ"a:/1Nr^.6PymE䱐|\V~FmYA^&trFRc"Ⳇۜayyfwfcu-#m7!O%] Rs E@xΤ0>}iKL6'Z 3e0,AMS'![t 4=23xk-mfdrrwmZ{R.mYϼIU:nQ~vN]m Q 9wZ*z^' /ׄhRp In{u+F<5La ~KM%Sg.F;\+RwDM4Ov>} T >o>LXuhxPAah|;Ŷ$`2,[og4'մN{ߟ愗_ |< %83I4f*T+&jGxءW=#9K{m6?.s,> ={E6;1R KLs7@nsmp(Xolx|ZeVt)M~T[>s=3A0ɵǃJv2+#x$ST9eiѣ?s5[.]?yŢSINE a?HՐsB}Y{ToXQX/I4;>_drvLٞBWR^P[5$cbjL.r_ӡݸA1r~gE8hCK)#LbiZuo]ȃ3@i$~_R( UQ"ߔ~So'0a g"f9\%@8-3"Ӻڜ _gv\;miv0N=OPbfR\֎uashЈAp? oÙ~[)ؿFEMkK?"j9 w]!mb>TvJeяeH!05G aD=H7.Ѳ)EB{*dPN'V^'BM  w;4t{,㭱;5zNXKIɻ"^^/#4 "QW-߅)-/TmG4ƭ|._9F{9fTvݽhnYގil?%*2<5Ce>J4{hٳ:UM2ye9Y&x^|?"]RI{t{犴~بz%}&55󭪀 &?Ot9s,!)mĥ" XLh:s!n6=(*0M_Y9vm*8nW)(vC+`9ЙYV#6~U@% F;S: :Yvr,6M j VwƦ;P׵hO[1,E_n68c(_!Eq;o9]I bg~EZGozoDZP?/*^ǜ<5B-dh)彈6ME<PA7~U&32N4marxaKFI#~nDH4LA0>H0l+ (jy76/ !M$7 ^9"MҘgϰ(8'λJ_/ RcembH 5X6']tO`~@A6lGb*c8?_|vZQrKO9&vۧ% \5`2$p.diNʔk7ďlY \QhP "6MrK=lqKݜeBpwfvϼX~'/qQAB[5Cb6MG/A|SO zlwq_b`d^ ^\(\ڪ7YҦB /*ޱ]ѮMmɀ" jw 2a6$߳v %; Yt&KdaCp923P u r]A#YSzs_#ə(2T!l%mI%(ӼT`^( 9623o*֔iyb>_}{_mExO1ux[(c){~=u[K1ЃI 9jIU%T&iV#Uq7~%E蹐(w_4|&gYbC}5sNa[wڃ}6{^/.tt{]2 T5P!^@đ %SO!x-?+qN~XR_j[^)?Ge \ rٯ|zr*`X/ոƓ ZCGG)O edju4ZTm%/Q[*|Q鶝kk, &4 E>pn7 BWx!L#ZSRԖKdHSgVOBItvC27}M Ho:k JHM lgKWnmFE9zʅJ)F{P3õw-T@"@ Ge7n A8eI<SFX񰁇UuBUCPKSSe@@ajr$1f- aT~kV7rbT #{]8f FIxՎ< 7.Ӕ++ 3s*EnQZ~OU)$靕HG[x ~ *ѫ.6Ⱥts.HF={)6͹RΑPREm ͇RZ8^9Xo3&I}`)bٮdr"BC./V;cdJRɚ^ôZV8k`BZ.AQ:y gd.¯?'(؝w4>=MA.~Ѷ"άFc ZE_6UN rw8S~ɉd fI\}zڴ+Tͽ@˄4gsÇ* D&V8 sAPVa#& lI<>5@>wͽRdQ&$=rIGW:c+Jxt h!f_@Cʦӯ-mys~]<'lyo0r6*2]hf`Saj+}jj2\"3ً!BQnSR,yڄ=c$a,?EEgJQN > lY2<>M wc>]YgbJ*u&^܃ d{'k#ĸ]}k`Mo" BIJT ;s!})y A<H}rհ[ĽQ)s6}GHYOdW;#XC_RNeጏFqRGo幏7G[z!,V7Hx y(#Nw6i÷%P2+cEU2=J_{ڔ2݊1ňZxM? \_)&|l[scrIp{FHR-.0 R8h"ڷ7[zzp :/*2;#Je,/0d p%7P 7}9y:EǨ+un_Zt" v7tȱ(Ҵ]\"xCEʴsAW(}H_Fīʽ yԆH\_99\$48/SɈ~ šm &JcL/ʘ I;b%h= l}z;?=e:4j@ k h٣u/g-Y$T"'*0^NԀ"$ I$J' ʚHƲO%L!uToA #V)Mu0O5dx(l ]oψP]}X^Cp!VÕ-t633>CmVwyҭm3"UK8Ɓ4WP}MuS[Y1KLr5R!bXZP-Uh,ug X1Ƞl2[2 䆹 4da x 'gK/e婎r@y%k<9 dl`2bjDZR=3W}:^ȫK.w..ONABͯho 'ߊMl8>zvmOYu<6(谝~_ɲ_OttvGZicT+͟Y omq&:Aޫ[DIm]3?~>zPȗF}tT21\9v\@ %\|l:p]ȇ3?MF ^hYvIwL)?X'89t(Fm{s$&=+ UE'7qlPTeۗ|ʋ-'<17 &UʳOHOʗv$l`Av+ޅ%^J!蜁3U{E{'m Ѣvjv' k`5iN3/^c`2s{覫 Y1h:Up"V3}labY`SeMPsǽ #g AZ&M3 o0>?M;3FdP׬t>t%E^ A_[ sIҤdܪ.AsT*b@4&Ai+q*pWQB9ru~ KDpcf`&D7g?Hat4W6l|Lw!fg&FK\d H=F|&0{ʪlo 㗈.`T{#M5#?oCn.tpwMqS?JPz@TWh%uDY)5(+ A$ΚCH`4/jwn;(7~4q Rƻ"{m[oK@[C_D֙X@Hm'Tw#-F d @}G uTD$e7/Q<>P]l .ў{[avD -fO± ZVTHX qi}NFy+y³DW+Dף]bS#YҘoJDMkWwBX9j{m:}l;&el3^F$G+/V8!ͫg{l\-{-y-"=6h<‹=9a9/}f4Mǿ(8گ H.%ĀYގ|*|sm!(l#^=uMaï߷TP}E[Cu?Rv0`0{}T$ۊH=}}zzVucwEK'VlXc)Z4>czL (ҾoH̶ >1 wos87e?sDǷh$D\*~/pmQ: Ml!) S Z \Qt10?;Π~wdK35uV_CU)\mCKЦˈT Rכآ9,ǎ,Y36MʖRly 3UZSiAc&͌JdJQ2W6Ofϴhbn>}N9݁#ȼ+S>/o6ɋI6&e܄ٺs75 ua>!=)DO7Z4^㋗2bV-9uX!q>3* )Lmu^f7]{|@fW+L W$1>ʆ QO}gNFny(/CO7pK[PSLF{4rִ0"/?׽!w낈o@^\b\:)#\Pb03|d9͑t^C*;ζ34_S),8rZ!Sc0T wDulT:H!sǟ_xϒٵ,68LSЌsa*Taop.0]5wQ^ DU G|hq';iIg^%o\O>q -wh`OXa 4^**[SyP5 ^HWrwq|@[)tdXK K q.αV (] eV׾1苒Xnp}yZ,s ۣphEmW o T[f7^ZÁ=0&Pe0Z6Kv|0WĄep o%orJ*̏ezą+pBwWZ)Gxb!9o `/o^InF(C'*j]9j٠ԏF>1ՒOGI/HNE@l_^gGaP93*$pЎD=wgyt:?vd5?ɶUِ!xc%rظ^}ߴ[#BLO}{?C#U/Ǒ&dB)QLc KEq` ߤ6yFCRSZc Iԛn$ﵬHbեKhpU۩Dž8an}d Gw?Uv`c0.VD4F4I;/=큃a ,{b.p\>fҷ 1g[r[e:y:দ]t\ K h߃FDlMW^-/tkC&?f"6KOh1(1zRA`fм\+R%ƞCśh;Kprc6mX8np-('IƊvG>x#-n:E`d)Iewٽwۤ &q#(%dԍ_^%ɰsfIK8$/r$~vjzh"8vJe*)3< } }HD :'o T_dԬLie*.BUAj7+}'[̴''W,Ă`N?$G$m2 >7O<*Lr"]V@o[qHˑvh"K{yS@yc4ؤ{jMo g47 %Y0,b?LT4\vn4Эtp+GN5i]BApZ$kOJZ\!%j!kh?Gl,<qKyI~`F(\z%-&\'qJQrNjDil!dxMmbϹ7W"{ 6Dq,: bN /׺ {s:fX|cOA78LQBA !p*w/-|0s9Du? `tGTV96>XO_7eɫ -3$c[ z0#yl%#XX^a[{h-JQNeW>ycG\foqjMʉG(lqBZk#Y̶:<-Ö2qiqX?&RJiqNY6<+GEI,W&b UbBxԮ% mWv]Ų8ghE˗nx@*-ӞM;Y!$얻}Q\,"glÊfXU¾)c@A52[5Ni3ow?Rk^.F]^9XmH2^طdM)04;x#*KIlb;˺%1da&KPoN: $ J`A^9$&ezcSF2eɒ9.kXT&7ȵgk3̼SO{[iAxT*^pxT )R33`ӼGO&v\Ut\[O'Rkk o<3 TyXKx P>ݼAw|md;r$tSSkY[{?{ ^ TȮ>m0~A䵐0coH"S^72xgPcoj[GV[l&XGE?!!k&b{爴Rk\~ Ο[hK%!>m=K~:YEh d*OŘB/)\!vZ{V4G]a8mW;"e6Ѕ*Uσ5`,;Ӿۑi:e2mʵ>L.5 1M81gfJFC|d2nUS#\#ȕ(mtU7[(zxNx\] fۦ/sStLm[cӀaB.-*jF ,IgVb˻"h$^ƄOEM:aHHT7- ;TlaEWNJk)ٍ5b(aRʎZ&A^ဋDi{^\+.X"qfEi=E;t=b*¾Kj];-u15.ɖs`:Ye&{75bKc#I"uQY]‡R<3uqOh۝!L&m[BAA$ o/ ّz#uǟ]mLh߾W?Iθł]oe\{uQ]O4ا/t7.7>𛠍jkxF?VUᛢƏ€كkXeNpw2jR 39Ԅvu/`͡qtR_O]֎n.ʭ⧝ۮhK}=ǦïDΔs2r)Q]Mo!x-'oPZ VewŽߨ5v<`2{f"$ UzAj!s[C8fߍʧu "4!RxhNkܹ0I~6>yNksml 9_L)T:`OHe ƑvƝ@Or~XYr)fOcJr`J67JW)vO;ƪ7۩D,#A\f/^M~1`P3`8?- coQ9ƺoQU =&Y2&=ߪsS~qJì5l d# ^Luvz^/Wd^Qa2ĥ}з|n2f#5svN7jբ IZns-{KXZR,]QM!-q""ߏ$_g{GȞ%GX@B1ٶ%Z_PUT:™,kއ?!NgPN OYe˩>?E ,d~M;|ԝ4q Bc1C6hV!u~\q**/QB&X] ;@WL9O =:Ba߱PHmj!7NJ}:V:PuC&ϸI eeE47 T5|/=lAgZo^r%-u}A 6"qwT%SP=)|H] Th<55j@ Ñd8 R^ Ӏ--uҮ{[~+iZU񏸝ƻ $t :gCc\II5TJVUS-X^Mαʃ3#T5;zzt/n8,QC h$MNJKn2Y)7;v:\[pEj+6&D۳F Pk}3r8mEwS4>˭%Lhej`@"@~c^誱ܮ3vi'*XB0<0%&v[V'Ϳ>Џ쯈] m*R֑>a=Tr8}P8=з9\>YKǵSC3QLWࣸR[wZęt;g{-Ɣjx#m$5Y7ћm6E'H &J011>pr@<$~ 2բ,0!"Wi-.J&ʷ`$/P.uBok-I{UF*F%p*?X컌zeS Kz7^$[}?P ctoQ6q_ h< O֪1G6_M݀BFюd~6 I*spNIE; Ÿgkq1\y"'d@AJ [/>!lKAm;$BgwAc ]nU rmxUv8ͬ$"ҵ[FQcܞ<G}P =9`xQo߯ !1F[oo4qb |@lI[ C[Wq]dmʑ"BT'ݕ Rƽf`|P'qK, Hg})NگրͺhW2Rd)"`[=Xʪ T`upyz6ȣM_! 7Z֊˟ىUHGF֤CmӌCqV@9 =ㄛ68FCmY˓^TUml+͹^ SJEgEL77{8[܊ݳMtR54)F@y @h=擳OÜQ@sM?/uax)դ;G(z#|cYKB|t/.'<8ڶ_ι;~5E%t~mh细}D#n+(}ʟQLKZ)^= Ñ&"[]Ud7Y[S qOKt?rxDv!CKz0^1ϭsT~ ӝ4orV{ ktN3;׍i'wyȥStutIA 0!$>A>ocnJ3R+PXׇob@+A✚ ^0 i%$4<ѥ /V`F!hS,7\n'땘7~+܈eY;L$Al: dtp`\dOP1\3 K.FPSm ]H!³|lx8Bĝ,EfTY`74*Mho^060!Q-t7(d!$eH4-㶏H"\jQI1_W":dg}u[cń\GB^s0wԢ|HMFS>5~4&oH?XGDb&Ma:☬"2'x)3iCa(9؋GSahw<@/sriD¾Gﰃdז$ j ::ZNȾ{Ҏ'y[%fm`-xcn?<̓or^`]Mt321>[y G>?!x_ ?M+b=obOg>u*?KhS3]#'H3a)b9Yg 8woKfw.)CŭŹ-Hgzژ*yրJiM V iljWbWxt@yCEs>^Ojw^ zi !gzP|1Q>L,գWEA𖺈W*k'` ˻|>ݟj;©V,k%e\ T3M,"Q7 GnGpH{Q=J%!M),ҀuYN+Mg~: {lnƧp8@z9Qxy8\e?k%MSW #zYQ'YźK.>^zxGdֈ.v2c|iU/ѷ7'到7[ybGUW^N:)n1ԚzK6,[z/FQ$R%{Ϙ|%f'6rKATS ih#AlY9z*`ߏN1==Pxj5%mg!8K=x'!^ou?Z}i?>:Ej3ٽ΀zV8Z؅krI <6Mށ'\`/[S1G 'q_%-ޜ ͞R^w4;5fsNܲj?!6xi(b_ÉOBrF]I#^ߧkO!p:+řyl 1u$&6g,iP!nҁZ~ؒi5hpԗR[/wP^!ʮ47v{agkԺLl"ʅ^ MCnE)pisVa#9d33L&#!5j$DߨxA଻рm .iQwV}*SP}KEoxWYdlK޾xʉz/3"u!'sb6iT<^K؁ Rg:bF L MQu8H2s ;NjSs-0ZQPe]@oS;Ud}@hTN(d+_+x!?-qH)o(3F!O&'Vf-rh( := w2PLfUؖd% ڎ6̦d# L W"el h.Rǚ鲭S=˫[5JJw鸔s8|!U}nz&S,$221b %imyElj%žhҙJͬ%""~T5I2B 2F&PO\ۆ0`Vֆlz FɀvH0}t;OXNM1K-#g7e56p+C`Fq,oD+Æ1Қ`I}GG;dt-^zYس|Cavj{_l )V31tpGPd^|_ՄC!P}uHWz 33ޓ 9hי[PFbdNyCm~Kk#5)Nj<@~ySW3\aЋف;8ex*~:q괽)0iVmR 8zj>6eP3kLGc 6恚sc%#\ʃq|*Ĝ&HK}wxK#Wi<ӟ'd0vN At ·FJ΃1v @n hfAĬ;f"ė<*Azpak1 i3<)6б #BzĀϤr<̾*SN5]Sª hL/ÂQ&w=/?I2h]׽`F7BZDړ$CoLQ~]+\>chHFՈ yXdNKiW½dA`ԵI0 N&OJ^$AfjQ k-_ĭcDCXo .LƖD\c|J3Yf23/;1r(HȽ*9"wU]xMNphr櫿Y1)*Տ՘KAGg5FP €uETWvJWײF$?-q}5|!ak[rKݕV =ǘ WNc TBGfJRDcۻx=A߰n`ˍ ٧ܠ;Z2V q%16F?^83#IƎK,0ߺی0{e,C}i@c%b+56_E,e mQFʓжQqO'K{ *%k{`BC!B -*"VPe߭OOA.K9 ry5sigw]df>bxNh 2T>Pb;. S4[P|$c?w?`$Llp^`7NDrCuqO u. 㕻H^NJ*k%WSwjR~v1N!y"(Eώ∫ݳ)Iz*`j/eH}"!tw9c/ @bkpuU#i4?yd<׾wuMݤc6fL(|2_0At9px7/Q,ɼ?|o|V_0K, L2|ndZLxvEBb=ZK1ltuxÊ+=(`D?{z\>ͥbIuW 7VQ8*F 3MG,=Ͼ$41j"gxaUz^1H` j3^R~I+{c!1,]6R7'<fguiPKT@}l嘿BFp|J>uBdɨ>*}trynsȾ~]ijNh pf̮6c{-v&z@(b {soQ 86I^ȗɌPnlSKXwܶti+Q/H"dE$%[yȿ2qSڹ*zD(-c'63M'&gҮ㜝BӦ[X[b䎅Y_{ Z3:Db3(KXAQ Df,7U!]*ԯ*愩(InQ^91Bj]|j:40g2Ϸ #Jr[ZF1I,zu\92&Cc?_ɒᚃQۈِԡ,Z})ϭD o89=iy}Ŷ˄-GO3츟P~?|A,%hyA9*Њnyy.YIh3"tpȈ!" 6lc^HGw@cY׼^z4T?'W\c_eWsnlo~ c5:N2YrWA$̪{BTn- $sP+-Zo\M{z$-{?u oV$A#&''js{[ٿ ("S\:۸l B`S-7h=7LE}mجGPe6Z*g7_~lkĒcs,af4*g23%գn\`/@[$Zr׹yAJ@Iy"S2P!X{c1@5YZԳMLj@h^`3TaH.Ҏ O IDO "ؒ9Ҡ<#6]gXeT)@᛭Ӣ5^קPR7RhIo5֚Ѳ\qv8F717 KꋳiT#B J!(;6cY0+l)HW΁ U.olQ q`a 2< N-SW ((@/lMo{^z}2QM>H5Q 9Bd6 ^'t/] 鼙Yͭ(e5~dr>S%XVb3C BI%kD]{O#}>PAZVr48iee@Xmc{0b~Wӹ2ALďmH)c+<4i`5@AydT Y]^4$oKXT,cϹDC(«JYKp!"羧 &HEwP.Q̸`óx2[# pl>o_ "Spc}J3Jيz1<(  )?Jo4 lWMуU&Ϻv=Dr؍k`?͂AVwl>Pg>Bof5EI\󨖜VeZ^|$Ň쇩]$u>`F_v~D2'R7W&SYrTxΆSyx4⩅Ȗ0?C4z&#vZ4_8O~z 6 _N\U%^չ]fmnZ'w{feIh8`3jbwJ+ hjTjUTKE:\]#9rS% :1dOV 0 t3yk&m/ dAP*,*1bUGV!c}|+G`'%feYfv%P^ܪ00~wGf ~\$@@(LaxgE8r~TمlKYkPTA!_< мyh"7JZ"XRnX[4s_WS{C̨*tz=](G Of0RU7HucMVc,-eD6h0eҔ?/4Fi +GV8g8C9$w4'v -P8V'Darl;Z Gٽld]Ɲi!;,KE NOkQkG٦8$F@yڭKO%0#} Ġ~h)kO-.hFqrW>rk&2Pú|/}%M<TNf$| cќ?>8Qs}:I?wx#lICD(p-Ww7|M5v"m_ǰ|l 4JQZXk邗5s.z|s%fɴ4sEeH3! DɥbaOۡ= ke$xx1 k,17G"dР>,Js6LGZ ϰ0g% iUDˀyA$0ty;ݾPJ+"=[,e?P1(vI=~lq~$+cwm4̿pAwtz=|~ǟ`sϏMJbx!nkYYH'םYBC8{Hpi<)MGO6(GFr̩;RdB-!ۆ9 NلY'7ܿ #Ed5:7zd(8x@p5+UF˔T{Vۺ5W"1yh3LѤWg\TtݮhP}m =жT:W!CM0qGSuN:gwl9YR8nd0'*(Gddy1A+GD{^Q!/UPf3Thr * 6 OD&m͕XN9h$v[<,ԨPk NͽbkLr-_s (_U 8Τuxk͢="SH ī ٳi08Z.[܇ǬE~Ę?ٚ%<;>mR@hb?,vl~pHRE .; Rܡ{s]ԩufgfMKEu&Loe{54Uvs 1@ORGvrerVG/oP1dcK[#"<' ocu."G5:(ltE(;Ck(*`pBHn {םTUK+Y|Ֆ,s;Ԅv<ҕ&?W5&w )̩OHBQ.lА&y:,09ҕǘ^*u[{d$+TbSR{x 3eyN%pON1 tD " D4em6t`%[<X`q8Q>qR2Ss2+9{ jHusUbY8,Ք˱Dr}$׳w0%`XoP\`q ~DCOPIm%0aLԂb34h1|NCrE'I)o`sJyVNdmP`ş6iݙR l"1 x_:Y7܇$_\B=Lq]!ĺFvY$u|dO $Zp'v҅`PHP]~0 @>$V`jFkL8\C&?'r%驋ջ31ep5% BF]ª࢖bgąC8jSBVv3fb RA66wl#oThCF8 %$/ 8lZBDtxm8-FA齃bbe4$VC<~ [h Iݳ(襍+FMh̎{=V)@ Ϩ ´dC¬#sm0..fgE T"n^/Ĵ%rc gkӴf6s|~"HCm)*P⹟ ʰ8ue3V:/ҞQ?GQK @<X'f}[]k5/5miq`95:-٪<al;3gapX,W#zjṔeicp")p/#;ǝ\avJLF~)"T̀\w:u=P埱0Y')̗x/.2Y _A@KKˍ`cKGZ$TDSW57薰.ߋ!`qc0x@,5W5hb 辸` <yPPo >LN}sNWtgnIeKfrҸ7g>!)0 9K 'cJ]Az_tH5 h!2oƃeSOoj(f*pϻpg\јak,ºDumw>AZ<#O#w<:V5Kʥ-l60]^kYl؂䀾r[ҚP0 Uh*Bq{B''Cϟe^B`8O[b'87wcgpFjMt"Sűq,@Gc Iq.lU!%>*!5LMqGOċASnGrS|ǺTcrYxs}5. Q@ְƒxe=g.!9R]|'\fW'ӈ8͡ vm^r+KmMzEǏdM4œ?g-Uy[ѓr ~_{A| K;o;]V}: }.wze 5`4nc}dڢ:N10p%F%C{Y@mZԦraDЏdCqZMjin(}&H&EiTj:?ɲb_R&k=W;5nPqӮtNAנM˨5tZE=` c(;W'qkY*P_GZrIL |FddH?.Z Ld^{oGZ0M·^lCD:Oy+Xs]=H@(euWL1ڭLz. (D((bWز=R[,CZT)04_Iq HR+YCW䱑S5/(XdjjN>ҨY? wqי-@}tahdoȗZsm7-xĤ vF:YesqaM DjLxtTʗ9PՔ+?W?;}|Ƙq纁$S[_x+ENYҎ@u"r# So_od_(Bb\;r;a3 R?ߓ 4 ~S^+⏎owY3iGHg !m ˟~+ > *s'9?0xHU> -&uA3GU8:ᅰDUZ#3R -Gi_>>5fW]C0W XƋ8ހ&biұ2gQtj\)"*nK:;$Ӿ^@DQu;˝o~AS- |Mz)?PH{O3gq%0Vp 5䇆LB>lR:xrgs5tb@+FH,y'*qo/WtY$yY)J>1hPF}I F vNPw))nn0 wT`OѠK/@]b&o-KtB'@A;=BaAl"'H҈X GA{ݤ6Nr'6?v&L6s27iqD99R+Yt;*&R-vmLKTL^ɝ4mJf1Hq||a;c! }0F%?gT9Iw"\?߸$UHg]D$/5ꐃY^>1 Ta2Bn\w.=aǖpݞ+z>2$k(p`)}'uew55/[U$ 7 QDߠ8ip$Ҭ?)1=Y^ī۵мO&E>n(Nj犫~ê}x?lYۜpдx 5u4wӇ}K|ƾw}uPc yô)9F<@!."{jfƾyb[sv~Ar\ħ lv]YI Q_B :7 q O 1.=aQ?ڣ^G׆n27B*`)1i%Vۧ?G9:AсǑMؚ _vKjWh6L >-zuq \a^Z[liTu_ʗ+.X:u 6v䳟 Liikj5p)wX=C;Vvuk?ˤĥ6XkF8:{Oz%2FݎLA3.x$gbɶ\++&]Zo{hx㞻ZnLRϴ3>iII!v 3tV࣓UE[>\>lIIi^ Qܓy^WxwѤ@PNHa 4ymҺa !\ t#A%fPYUM=k2ߥ D~ooFKqsWl6jLjvxܮ\HMQnftՐH 5^%\ɻyg!P8bSaIv ݂ky|G/WO1L,yLAc aϢ'CȜՃ2|]l#=[q5{zaX\+ap~.l3!lܮJM:mj=.fQdGsk%t Xsg}<i7&Dladhll=Bt"P6I{gU6ELsB\** cZt;0W ZwF"Q2Lv+=g?RWЃQ?"wus]|s-k79%t_Ȑ%#gu],.2haʂH#}.5BC%Ff% 2\|0LDewkubP(&fn(ԪqidžN[2SPc_wpsg!" ieg֞`mtdy7 >C_GKc=aA%v"pD7kB ;@+ʧi?Tp +tȲyZa,65T4-T9N[ 1jRhD> qatbY'JK:l۫(iWˇA E]iր(:ZT̐ބ5[ >%L3YGIYWb<Gгn6/d* Dtvn&?5s$|X!X^Xӣ%HaR_9!BAՒynl_lO +@y ζ&>YU%m)43a nFVvkG–- 9ywR*nԸVN*Vaw-S5Z+UPe!Pǎ9cTmsM7d~9m'PLGs[JPd)ް,?\̀:O;A-QF:ݔgkrLI8 $^*-_qv*hsh[L%DYy]sК>NZ#%eV:H8-Tlz-3MujQH< b;E[Ќ / _I~M;@L V'ȇEjφYJ;Ɋve$bvܜoEPY0tŽ oe:Ow`cن- d$k̿*IԒp"ͭ#vڕ&dCQk qH~މHKh|3Ay՞СSCf;"zT5sx"/ž>PD1'6 ~%_26m#/@}^Mw];.$A"Obi1IKYM1)_\Ha8cpȈI$1I׏L6^Lg" QLdBݣTQ;0gqtrI3gS>V$ 9{ #kPw6.!AO@.^pGɥ L-pŹ6ނSo=_{ӻ7 5,;7vvUN,6F&LEHqvTl4I"bgg40[y8+-(17!\)7Vu?ШkCqjH]cmq–%҈Z. mnaR›h eJgq^cs ՄAv9kUd\~U&RKBkdmJ'RfR˥d?^,~ʗwjaĒ %֯r?<O3.P}66ӳ\j1ui>vQ*KeJ$<)Qyh4ϨoVTlge=f6C_)?^X^25=[;i,ӥS8d;rh>K*4 hb7SnA+a֘_7}K))-? }M/w.4Uίu㡕/&ҢF &PYoc-|>](ZvzKo 7J $els%8$)T rn#CR+|I89N%P²C~J`AT/CV, ↷k̻}!Є4EWGTm"cs@a Vxڵ_W3%"AY`j-#@ /YlMfu_Ls ","O@̪xN[n ňRz#FT\1.sځ"vQD`7wlW\MwrA0ˍxƘ+{'Qz]Q?㧁C%( j0=/B;q 00qhO)q(J~Ȉh~ 6nqJ#|NnlޞӇPW7ǽk!0]2MsEP*jF:^}}t(CجsMHKD.I~NOLΫFJ|#s=ܺMQ]ߐ0xܣLhE+M J6[r^9{\y$SM;#:sp8 8L MP`LbP n$JaGpb@BCɫՑQgaXI(q q2j]?l??O>VQy* .Z&z.*_G \>I$'r <Ҕ|Ҫ4 cDDсC܌t|b,g~ؙioe+ {O*8I+DXy9;3qs m'$z z(@eH)z9x}K GSi*-wCEDhٸ)p>Te/{,{o/\;FGn"ٕ{U,ZssфS"t1c">Ϥ}YCiGK(h0&g\3&b:JÜ_ˉ}S+=!ojyK,4T4SA2D~M oZȐ)3o}ߡ@sAmWd/BF!--йP 6+PHW$􃽣x&G HX~%9f 3礃5C(S&zf˺ Df9ح9b[JfYnjT;$gj,ho=UBGZf4\̯5߯vاIĜ?Oў9SXa-; p/[*bƹX9&3/c`4cvPX$%&K6~cSh]jjAªy%Qd+7UD4WۄmJ뮽 E, '0WW7Gۉ6˯ ^?zcRoUqG5b5vٿx${?yKm{URbqMrAzV&7?E0uR?VfQ*IM&*0+PSdv;M*[[1Fl)j_l`J42~*v;{PkS^<ꨶ?wc 3ʂ񫋬 t9NJAzF< ]8Q>$,x]Ekܐy5;+(Nw@B3;@(x!@bM fKA 9 y~8eS}dWEHc^%k }lL:|4H$8%TڰUgP35s鶇uy <( UpKȵ,lT b&ћ#cwXwҠj@3)Hz;TnN6 XLT:I'(Vf®w#07iM[3I8O- 3_oBNr7; i턼Q&^=4 =m=\EL`p~Q2"pو̌ eA3n9;2sRXV«vx|zŧ #)&hXkSŎ8_6fwmbK˲f+dTg!FÔQ/۰[I̅ZUA`Czb%76>2+~ݼ~+:PcNg~->0rU@HWi_|H9oR4ٴGpP` G/1SnFMy9 T[ N^F<)W{A m~Qo,R݃q'G1o+'NʅEa6/)p[6.:}owX:0%yU>̘*612!^DԢ7""y4{Y)Neqj#}LifN^\TwYx ғ(ݎ?u3~?] ,NhR"[аT(/9_/8,DiɶEH_љ' K մgJ/z$x@N<Z2AFg='/^DRw7Ղƶ ^!Nq';tuZ߽*fZ'ϻf7!8]jǥ[Ɛo~r+K,p溅ф *Y(JۿUe={J.Th~*G6w2D%0c,}RB >,hyx۳ 6QCL7d B?75 A>iq [aG[D}lD3'-2;OA47yX3jdu|*J8=.A(7 UޕXezDIԶ9J7T,`#7dK.;y=ޥMBvVښH7xPN(cWg)1p:}4W 4lszvJ,`:1ɶsS&2#1jttVTi@ȴad?:4fɝ蠟G@@&z5!zmS0hPPǽd@T`3vU]|^/u_D&M%~1˄:gq ZPKRfya&M-4Ǧun.k뻨'{,k`[գր@vCYH647:0j\(Z l1S_s}/NRض)7IcOê`%px]b v; ;7kd d~y tV`+#:}DdY. ]\tى?(a9#[֋mUl{q6ӑ<>|AJKX.Md"nOMp`"oBy7%h%SB;ZA6/նYd O!GЄ,-Lˎ~ə^4?B4q}A*:#%9Gnެ^6c6Cm^Qv5Ԙ~Nb0cE/F|Kk68Eepy sCO! Y!3 )z+eTf{|#dNBdVVԚ+`>OE c*8L:sq:m;&l}v^- `ߒ)6{y5LE~wu -p^2`[G2+iz* Q@i}-e!܎b@6&7קmonP~Od0ґ<1RDgoR "Kks|<&VY%s߁r5ar% q ݁5=#(`%Sfkm o?t!f=N)'}90O5sg9)>u N:chyOpܡAS #KD ="=vdѹ5#^*ߝ`ćeҕxahu"-K#GB!YCNc# j=\[6]?vTE57Vqz5:f@06u&#t/EcmdaȢpH ۭuP^np$A>08ul< V/!朙vᏣFM6G9ؽ*RW x&,'?*('Wܪ3؟} &Ww"`206Rh=Jg1ӓBf^&xQ%l"Dvr *?Qф]-嘺m4`44e @&G4r)atNlI>ZS l[AK[*T~.{8K[P!m[ N2m7CG./]t{?%31Vx`}>A <ԔkAmAܙ>~I[R-1=,ZAm_QjH)da2%Owkv0d,S|#0IiZ{W^M}#!V/υ bV˸{!p{YVOh,'&7*YGteˮY!~ ,<=7Ď''\諤ḇe54SY'yFۉs˿> }gow~BsYs5 ;:u,dUph"Q{M{<^W@4jί =_Mh>;؇b`פZs:gkfYi20-dFKQ +zeOpY뢴Eei% a"h yw|#PhNC|lʱ6ITAAuRkg$OkBsh1<?e0@UkU Sfͭ[)-(doqY8C}mZ?3s7#|S?҉SU׹z:oe]<fC_rBG\ +{-8[x:64ŧ\^cj!bټd $w\e쯿1;~DV\\l4٢-!+OFwc:Ýs=@ZY+8ii].nZFĀ'%Q.OߥEY5f>L/}cZɖ,4lJ׸;SscluUѥ5$hK )R4iio잽:aAOP-^(h*Ҏ}N'x,vgU3ٶ:g_~W&5@xVyɄ*"Z0r,R+V6}7(OmSmI0{qH, )i1'(\6RN)Dj],sWnG Qm#,s% W^-WDw&y͹U N4Sʪ fy]/@npÃ-p_KCu^"z\}ߌZ|ݼ9خ%yᨘT NT{͌1J{t2)@@ţZ`._]Y4B{3~G?O8%4p=֘)%4 TC]'CނjOP8j)+58R>¥/\ v0;|V%qNp=q0A<0æpSh!U򞤄Tf=$\J^dHj<㬦L3gD"ؐ^y#kM)o =*{ɍ6YeH s @@C*d8aCe#$2'2u,tZ>$qI؄>wimUV{&$)ZCSBרk\H}Y?}NgU+/ :Gy'XmPSQZ|v'5H2pm(nNR5 !HW 8 49ѱm+QWMiA3`NCPMuO")NH ʩ"yU8B]H]6sAаV Z* *}G.U“5pZdEK e:t,4OӎqA>z jeul:- !]/G(\,a>cG!Ȕd.gR]Q@0s %ߍ2gn^h`&NV'r"{7VƐ*((x(r;3)`!MǸnjPqdAwiZ3_sǨ9%fd,B D4@VMƙ{ Pcxy6N(fVbH+!t-53<]H&nC'l(«281H$x(Q>릱̺d3\zاϤ$p]}Ce_^/u3B{ tV м1W*C^kReątt7WGY>֧t/v[-YyL&H<{x}3nj #ܺ.aXZkSҮ.!f-Ҳ4`陕o)lSkcڒH飩Y> %e+ί>tvI,L 9p T?)9ɲs-7"iGЯwю`'s)&lP063)5`=^tTI=~^{JnU}i7è p8y/vPXz[-[ se=W:/ǀ2b52;8.$RX׎y}9t;7^0zk{EZ .T.SiTmTcd0miʕr19+2v!9.NmG:uJ')C65b<"4H>1KTrp-ެQ5ݴHۺHPxCGq%C玿@HZipըLM3ߕ fGKlar^0xW„H ~l L8S$ &5/i=9{qPˇ>Ϋz:b Z0C<%q_@$>=Hr4JH6~%FʆXSuS%l;nYH&EwlÜJ2,<{z~js2"4DC_ʯ8{jHxUDu4HF).)%ȵmۡ7?Э?bJ} ;k>ڿ01+B_猆)ȭIfn)b>Du3&^)s&K@Cj7E kݔ^5*W!qx/: kIb eh]lxu:w!Ng $LjC``#J[E,{տMOƧjbBQZ] '^H'./%3FiXz*VK2])O-DYո\MS ~M)`Ɯi?o ` LV^OE؇1ūh1۝ff'A<ߎ7\l&pI@?Xꫬ4hZ cA<1 Tsw妶Ռ}7B7ߩ .&&O<=J`h:#Y9TcmS8cy81Av銯E;ˣ^kb1q 2(:2_!YǷ<̴ԆtEYE kVa~dh-~zwxQX@wB[y#|CV+ BPY[@k +5ĩ{hcz( δఔyŕH0g\_i ?y%ߦr)xq WhkA,9ɛ&,~©v8ثa3kkm#[[^}7+24-|w_,vp*gUhC|F2kd.n]~J(*Xx1|lvCM֔ۃR9IWb%&|q<8e< S0 /LQPe`=?6{J9oh4k%H۩nS,0B\͈OK cW܊=hQrqèF+FNgN yM%6YWIM_۝ 3m1 yЂ†}n3Y((ʺ)<Є.ҁ"_~8%;ݍQR$h$F[ Ե6ؘx+hYc& >]I8;Zz>ș o mJ%N.:x.i} &Iń2fyѿ;]G~dbg'~N=HUb5e-zڒ\* /7 ÷vAYEװSp!bw䲑ϥl5!ˬ!to^7 w$,郏5T򇲶lߟ;]?eg킓UbG11t%96PؗAjx-Rr\KԒ2~ f1IJ.Κ3ܣQoN.`S )Խ]~w&6:KE|nX|mDYd5DnEo)0!e@3j$o7'kSghM'I|pߩ?V|J#t35`DO{Tu&l?8^aZ0wC5T[#|L^)tҎxMq?7ֺXjv/T@fR ԙm[vqS4&[b{Нwÿi; 1_0<.ɕ7SGNh'n 8"M>/,Sa~X@x5'*r \DҬ2/N**jKcK؝U"""d~YșPE0:9J~ `BJE^0_v!iH$O?d/8қy5_MVpΨNP̈l/.S8BͩVonu˼uG#Șó9NZhcul?.}򋠾Mdy[5k7Mb<'68 z.nmv4 &D~*:EA D\9ESV8~6ne]fQPIi#fY^qKb6q;j|월 ~f,i?x/l]=X'9) h>%hvR9gTy{~ IyIjm &XeHJrMjv# pfD1G=v%dh. # f ۦ3Y'xh\~Y׷l[aX) 4+XEO:'?5۟kY6#ѓY0t"6_ 2z%B£Σ^&I\N;Ӱ8\v7/"BPD*D"4)^ߵ!uY (|)E5aYӭ\8dpShk&bD3˜?-$ +ּ]Z-yZ <αe|ybWQRwaV CF1a4{}oM'E.k<(ؿ(;Y]cgZWo'U9ɎN 0)0 8]r3g8\{= ,]sr4apǖHpKM =!dۃ{`^\u$)tkR@yw$G U ؐ#Mz#hWػ?}cßN VAƝ,pjܙ*p3SUJUJ#nP#zx[l 9hzEM9R ~pMC>-#  L`σvd)< V_=t8 c/W}|^§ vᣋ$p-[ 1f7zi@Ƌ<48c~;5;p_V^tщ! #@p+e>wL %x'!-'ٴ٬0Xb$Ģ"|Bjlw,E>)]3X/MFz3u^4$U |&qu:@I +L!0#Fh="Bk7W6Jw8kP { xf gRv]"(ǵJ_TBT|4 `-s 1-V`RY=)O'ۼSֹURnPN̈́fW[Ä"#}xH>D~-ꢷDža &՞iA0W{f9e La>92=dW|% pLV UmMjtvr_BH2pIIKnK-w [9TVE[hX1-԰JL!(zod֍sC[Eqf2_1Go_ht~k6?MCp9쫊b]P Jn]CIUG$#Xl V3˨cGyޏ~@_K1sL+`s';PK1ir^ )7C/ڙZ)WNSEbtS4Ɵ< cZGŦg2 ӟE;P*)j%H|Xт~dր /*Pa KhpDX1kE3츠L%J7 Daag\lʦx/%/mF5E q2)scCZ*UMS{gPfgk 2,(UkX%]iޣ_gpv,Tjם]헯3$}M^f h?MR$ ~^~w$[pVʶ؞>, qIn",n{<&c͚dN[r/;D2]LTؕWMI*ȴvxpq?(doZQ:ǧzVQ(<jh- nJ$/@r NO^"8TaU̒437% HI) y\_B6& ik͸δ(b?;(=4@mRMUhެ&69񪗦S0i"UT2Zl<`W*o?ò)59_fq_iS:)qP;CrG嬾T?-uKZZCEK3$F!5y+eN | cAs a[w/pI:u;_b徒P7/VG GZSo}cj-GL}UCދ 'b˖?MO\ 9d%BH6 w3 ru.#Daz`V}v:a޾ɸ4Ww#Y|b: җ,HvcoeB>]ݖ˵Ǜ#1ՑZÁa7X *Î>wU*ISvC !rA-olDdULǑu٬rͯ`5G\AL_%(:wY{<$VY=)1wftilwҝ̲E, ޯR `Q&Pib!&޹(.؟\4:XtU{+|LuaV1Aw= 3h"Ө"C,)&eF`x,GHM tֻC@Wüy:8{FAp$X3y(%Os9٘YEm@czc#wBL#u"([b:U6b |B1߂W" Kj@\kGn|,E -FVRFC yHU@'@H`rLGꀗ1"۰@y$;yGU6@wR^*& axaHC#J*ĥ7},ʤ[:8Ճ v)Ho4:}B~ Y9\Os7 u59dQp%"U@DJpnmHb}Z۩֥祅|8C&B(qYgSݨ~S6ԧ5STxE 9+lS{lJek /-_6Y*~7"˶`i8(rq wFpCd#1 OjUrp |ݰУU"n}xv( įNTzf:b→[?k@jxFl *C{;*j^>HWEC-}6]k lDJƴ}~G_ՠS ,c-珐GH*)! Br]CB;::2h w>)e>$kkyv$ {ߢvt,H`]jR,r^BjcZ7[fINrY="E=8a^AD[Z/Ndٵ,Wڰ>HQ!\+F "-cXg0 T3^ma@}]tfctsju?XUc^PT#yk':F 7;@6ԯ,Rҁy^1Dխ"WozyŏTcȞx=;Km$~1-`"'LA FlfZZok~P)6k8;x$F5u݂ DF Ӧ54wb7`r0 +[XH3(kXfn,kKƬm*@/+iOT[3wi M̑={U$æA2R,vCqqBa (ZpތN,;[tγg --ƉZ; HGE궬Q!_B:O/EbqTUUSi,pjX,^RrP7hqz ,e8&pEQ.D89}+ F@=奤RjFIIi_}DABT\ Nw~~Nc&!9T[J g\g^r&AQ aJsa &L܀0Yr!D&K8_?Fw14f=Sh3%S#mFH(#;O$`'*>T*:4>>(޾L0o; EEZ||AJ 4q$֭v &LgYB_6+POlMw7eɽ#`4/wcUzhx/5swsC\ঁf׻)YtA)]U^Xϖ}c'Db=s]B:QNPT$ey )#Nᘴ9BUQ\E@F`(^ͼǨ<6g MՈnG$:T|HJ?CWPqda39 z&o"0zl77µu8(R4za6xhBΆ_DOαu0ou˳T2GW[)Sd6SMhn :7Fօ(̬Jh #&t]y|/ 0~tsB:+f[x0rX ՄNN  *b}YoT btRNJ3fp&݁%!) :P_& kBVGaCꍣFͲ4:]]nuRvԬH϶ u?uݢ^H=RtAyJvpUny Wb#WY1:ISc.WBP{=YxMO**I"?UfdGM@A(W\k@^:Sjzu*&=f-9Isb>_Jo:{N:e`|DݎJAR5WB͖C/L v|>OX_ ..{WW\}'s_6_ֺV|n:?:ă=":/16mGӁ#!Ɲ0_ړXە= rG11+ȏ[>e}=XTYB[{$ ҈/>h iaL/R|,rs x>Q{!/xotEEcT+UL|C=I(Fx6r*O\\0,V**)`1VjoN2 hr09\+T[G7+S"M3O5K Kvȿh'q(RVЏw| c~>i<.)xyZ 9)b/%`h1ruR;n8).8ty)rt?$i MlNd.zq)|`Y7::UsmB{аHȈөO0eRQ['~oYn } &菡fF/"(Fؓhw>S=ԭsz&)#8Fy!pNK]xUWCjK! _C=&\:/<'B">3aÁk3EG,0>UZgY⛊h 2F (/Vٲ@zIP⩔DI{# 6lߠ҄磩)95?~;dI~G0$Xanoϵ43Sv>te"R)ɍ֦i*Î~<$ x  k͔2~Mȧ1֓ ,cbjWy!N||򏈿};Pn?)tA0i@| M.W2T'%>:0NײoD}\sSϊ].NpõX2}ɃS0'{bDA%z |絁+5& ,"ˏ:S,ST9in<*M X0#wK ŭ?9[x!]vt ,݂x2gLԟo2ڭS|eD50'Ύǘ<+fm(q~\fAiax /T8K{f^zL ?*4>at6T[\EJs`gcOnѤ:"0:hՄigB*7~Wɡ&R(ᝳVm!h_,oUڨ1r Kk@<4vn"S9#T '  &mDdoeF Oo?F%8X%7+ otQ׶q:'&00: jH.gdL4K MV6}~2΂HާN#. ]7>M R,StGMG| J+xED=;TW`,h$&IüUX/~y8@:=tv4 ^g3Jx\eNG[u_.+RJ^*mY$n0mDaXCr}DJEFsU**.=2lfG։b(fߦ5A[{] E\s7}#zAY~\Bk;HΜ9v>]wHkόHaVܦ)鎯~3CB.o .60d׵4cvG`T(c7ݫԃ k2yAHjxjl=ʣ\Gk|nE;7]Nj -Iq:ǎ:r(UJ/ Z@|JWe"4/( Vэ7xx f"n^ٵg.n|C>; qe;Ly){/a6uA SY_OJ^![0v|+jeI6 NR7njH KI{5ޱBzWLGWO F{ԣ tK龡<=@A]~ v@y lQBYFUܚ2!@k ˧ ge!osVR"E-neGwxh'/`K>xQ֜dV[ )Ihkx2$(Wxs б%faxao8I[,0O Y9毊ҙۣ3G,̹~vޮKOѨ0x*VF5X~~;BX p  "gQpeK3Cp@FhUwҁ3[Cg68@S'xk?V3v/?P u\j"g;?^ ORRH^b[):{ç#+FYq]i31xN"A2 O N==VFA,ן2,Y趞; Ya}Qm Y⇲ l)׍MxD?;?"BɃ0O\`LSٜXYRTzK`ڠ?htMIހr5IFysF Gy߇ [nZF}Rl= QlDu 5ܳHrg-N $Gٛ4%Zm:J>4;6bqW=yF|0dipF&)uCD? 6RT=H1},Aa 4U/ '@SQT+ U;?qcf`ĢfZY7,,ȡ'5[4ܑj"Y >Ιf*z#HW H]СEo7F_5K{Nm FU!}$J)[jo%qYcq5&?#?S^ȧU:.יxAS*bqN PA78ZfË1u8`>>V<>&˰LJB 4(OnߦԴ`/) G\,K@T;SBd.'|nLh`MZ8ȝHG>;TjUiäQ}@sT(e#hy93V:M* t=$k>ag8v[URN 5@MBK~}vKS3`} <^ ,bvc.` h_~T&(]98TvƽQ֜@ =J]%~Bq 4xʨu7i:EOPAh*zxĬ#OXO%| 8Ţn`a՞[eaZ/rCEjȋY i\@䦃)L"[@{BŐS|ZΘ !e XܥzC -DF60gMW>$ZTWNA/4N3$0c֫'qB{4ONzgAΈoF[{!`!XUZQ`@ؘC}ݺ=Sr5{G]˖422{(*b]*z'%)V_W& )^b΅8b(*jQ -es(Ͱ34!!0jQ0t1PQO^:fW3.jDB!&WgZodeod):l>:2{׬)7Ucܶ>{- ̶xuPT 1Hzv [0DGHIۧ5: LL*omY 2{v\wsPE< #[mK#JD15]@n˭w'm"" MDmBcܟxž-4=\vd{Dž ˋ|eԢ3r4PQ>Xh.= RZ0dx.Tt|οĠu\~Y͸fB̽b-kꢖ8S6cwU9={\gWNDWIos"\TN0p˴K'% rps3\6Ȝ_glY܋8o/O]@)}f1u\d>Ь}#nSt?q涚D5,ޭ渃DM۱$5Q^~/'X#lƞKFXt5<4 ؁^ 9j9kٜɑh~9"!]9Fԅ>?IlfhY3DW!,6Tu't=jyj]m㫓9// 5iOlbQ1-UIXg'HHA[b [}fRҴHAp4?%ZeL qn}ܦPWFqs0˅YH-IZa{etm IXKOQ^Q<2*}\4J:-e _#RjDf Lʣ _DsceAiLKu2<*lueBA4!T+Um,Uřt抏P^n!&}b>׽bP`61*[=B\F 8@d1b)KAdsׄ~a ")1Yo Izד vL15\R5 /N'AuAFf i)<^({S旴"iIB ķ"Zގޑ|j1 jXz~>R@3p=dT9sBVa;AԶӢ(h#Q3,= >_YK8Mz1BscriO`h4,(y'u`lrU[zx%Zt'gD=e bi^x}2[])JUpX1᳀ 6ԣqh6’gt#b:SzLCfeA(^>^nk* sD9ǚT| xe VXž͢ʺ|ИcF@3ja^dmT  e0}f '%+'8wD

s&/tخ4Spt~H;"c߉S΋7sƣ18^gR^OvѢ/vؔRв{@'nrejX5|%of<\co0Q[~Zr0Aseev6QKޱH:m=:(М)?|~T3]E*Dn38mv~Ham^=76-V]HLW%"7u[E! &v@Zص2L@&YN/.ZRSl|[~ᠣ g:si?*S5$=^[Yde2jP bNȼv2MN3]6ִvY݂= .EKW]Y[ SRb*踬(jTw-} cwt)b/+P))G)Qyq )D`nO8IP?;4bٓa5 o Jce#2,xQL%c B q ?--dP9c 8⊋9 JΫٺ *4X<)kѸ+-eBטJ|vG#]pQuCd)p7]lt2li=!͹UZ Xk;OK凛ez3WB|qz$J(쮖vuo%~ K?-`" -P]g'恵c=ت<[DK$TEb/̦CP9 0V-#>d̋R#ʉ"K̄>33ۣ঵ɻhޟh ?Qlx6,qU| VȺR+z E5('@2PM5yed.3- ljiCT,cl*Q-%ٌPq@Uw߭!.QdYs׀x#Bǡ%fVpCtׄb8^RJ xXHxL\!r= i^N2?ͭXU%6'SPԳ`Mתfl@) Bַ!~6CwV4jBXy|i.e!ٟJ~vC9*Mߢ'|CO2_k䅼wvvݍ_ص |Supx@vuvK3 zlC,XEJNDד(FN0@|PwB/mv>Դ/X!P' Z,rEb8{:ivfyyBޗRr~l*.4 @}W(KaA ibs!w߇v#\7k†7f H'̋;zlt\&A~zڻ3WCI'`6*EY#TL? \g$bk _Ow,3 ,i'Fs$p" >Q>[! wѯT(K֐o?:ziLu\T`^yfapp,"I9$V2Ub[B+R<らKMr?@xR_ VT\܂ /Ca[Es31F9YyMC(pŚrksVrwn9Hewk6~e 儺GaIGJ:ݚkCyxz>' Jrg)T Bf9">س7B%YeT99mfFDk>EMw[n*)c>Y/lߦ s޸ȉw.ӍkL9` -Ҍm =BA#U􅪖nCۖ:Ě&cw_ۇa?8pu8NeZ\0|χ߸~$.Y_rɶWmSFV+2? LxԌE'\B&|#ɘN4.3H‚w@'*DY[ia* .@A7 g0n0w,ZN:;d|c.Kg8G=.ZVS ?һG ǁ3+he8!E;Hv߼]pEsHztqv'7*PN4,]SΝ?ZdD 29:klnDxyQ MLt"wxFzr@ ˖ct_pbr"\W t>./bw;Y<g#^ E0D^*7¢1b-^i9A xg}ru'Ǘ oJ @[Ch [cŋ.n9@4=hat{q'*{at0~9 $㑉x)UKJTX1p;9m¶ 7g?IK9k!+E5E7m. mJ+Btd7.+AK6骑ܮ,"lql䉨fp|U>CEP96(ưEۺv<"֥"AIE.Z\1lcGw4'$ b⩷=,.x{) jƭ%f7F`~T=>{)koa8h#ɑp*:JtoJ7{OiI<aa^(QD{kD)?u|E4wqtI8 |対a7LpUL |()(84zv$sR{!_~g!7dd_.z@UCO<ƎR1h ͬ-ߞl2m_+P(@$.o#Au^~~x$rTLdܵ['7|VG3yPwut3W2 \}c)*O m|g4cmzZ0j@ެ5e&Hq3+܏ W3D{C8& =<ÅuRk07Y\{LsBB9ec?Qe =̬xd#IVg:0)Yhӟ ۖTEJ (# V߈$ǷIiFUIGp2-NCQ6VY7YcD'҇% In9biOO;l .T`q5?2(DJ{1HqZ"E( HY!_1Q7l8;S w-M 53B9! ~WN\N~1+<51M+)m$o! xϺ߽ʔq-1e|VA ?z @'aa3q4_!t@z^k_IW!4s EYZ%+ǩ.{Yb|}Z ?>e = -i}nN74r@{;b=U{ݟ!g0 uk\k02޲Qץ<zY>*ؑx8 -ʝ 1":)M;f9u*@[^BXۜ& 'e-qL)j@Y)!2%{OtQbDO!{:>_S7xC hK]Q-0߳k~ L,};]~Ll6lutEq 5W;{>qv'%)|t:ϡEH)k]%HuQ_q&5t)ܺ%klpo rF#H(xN5ȘoP@/"`{fnx<(u\é zuQ~Y!tu!:w|By5Y)r@wC4R@j58\ybC 0KOUd6LFFep&\j-JUCXEYh.lA5EDdyVz~2} GU5,ߚ= ޠm/;X"+$fw Cq k3 iVWPX38=*aտCmk|u9,}i/@he!]x XEYA h\![ /,ceIXl"EjҎ^923'j7qɶ܈~t a|wm ĀÀ]6.ԕ\ߙfؓ#h,d})1qV>ӧ&e sbksZacJo7V닉I$}d>q /DeB|XSAFb .jQ{_K'g: ZwI .TԀkl\$x+a3c9{s@OBb=,3c߽ 0¾$2#&.]K7ec?j[. OM_eʇ"-(?J34lP΃l'ݞN+{ht VDe:Kd'BdrO#o(~(}~:M(h#oyA=RC„`^#jBy42A {vtDE/[8 "pA2CPwu EuX=q8ɂ7/%Kƌ 7I1+oP~)}wk 7zV5</`g]']7fa(t|Vю¬-7yw5zIkzZf"Mb8@Jg<`_<(l}@0p2]RJL| bo_jrsTe =;`+0rQRS<_B8ddB<!HXUeԥBE)9N}HڎmD ~fz+'G/iPhR+w)9k ~$ kohG^PUV((ZAm"vm$cb+)iau1u{ӟj}MLPA1y?лK~?/ aL$cJkuqdzw[vINlE5M $Ckd1͑k~ _ =LˉK?GFAVt9PmbK桌\n;N.>Ru}!T3Gy*&ʏnT}^uwU8{5ygesɣRl)UϗT׫6k Ţ1o4TkQ+o45&r9A YD@M+2t:p :P>KAUaUXaI;Z)'mv',(CʽbOZm{(9#R^L+fX q? Q ՚p[]R^' :4`&^%@ilM߬&?j:}jZ.w'Q_xq%WcWd=\)ZBϼQw+vgSG2+ wguϥX7|tc7W`lc-j LivRJ*P5`=Rs'`ңގ{F@z:یnE$FA)'g- oC{u[/HzG1 U+t.Hd D"&s sfNeny$˺q !} ,d_Ef-ЇnᛄrEer.Ru=\0 T)NeʐVϊtKD80}fryY&ĜaQsFGy+fY@ӊQ{ "c(N 53\D+oO$ ]$-)HŨ>^Y oBi1g'Kdz%) 2Q W , sovΊ ͢V: N j3?JrCr~DqM׍ _pae"`d9Aҕ؄p2QMn*4γh8?# n4, ~`*?$ɝ% ƒgUg^+BFm2CY:3 dl7K}∠ a|b8`5CG$\5T!6&('C}4<"7w݊\ļc:R# +7z@- tcZ,ɦ]YŝM;z`f4+F(l̫F:`w4n;Ydꄦ0=(/7.etD|;k.XNݓnihtPn崘Ş4+dk$p# 4Nj} |z}_eaZ;H0u8JшRʱX.bU>KiZc*nj¶us''M`/f8Sgc" Z2ߗSA8B{ ^9䲈" u37YSPs]hMiDOxٕ*1eQD!~"r:OA+o_B{*E:T37HlϏ GZGK>V#JӾ;Fghd&/lšyӼO¾8NbepoK?7KS,"$jȏ0ug=IDãXuv|t]k}C¨9$<*XfNƾMVnhĕS& =%:hGkewiuC܌k3SmdpwM| R){#;"A}*)#8dM"5HX`k);E?H`"52'Iִ}E௔'C[PS8BvbFֺq޹e͟uӡf{[5j֚#Y}O_ 048̞X۳_QVXRӰ̽ +0wl_,,aTOL ܞk֫ gS}r|K(8>ytUjXcؼUNbEF:m܋V?C0>%vPo65ʹƻH*%% 7( xtO!+aDf\pjg-ؙ2I|b59 tm~FdO6Ķ^w)Wυ(=  P !Iн`< XժcE? pʄaxAǵdGEnJaح&rh\?R14DV.E{-h6wSYI!`bquQf|&RC|/ӧ]xwx4w%2T;LnYkAX;""PDH9'u' B2i/'BA)pS>|׉sy'kp? ԫҭ&c P ,-#'pq?4wbUD߽\Byl9T{tbv? ӟ 7gyj<\ȺzpJY]Eύll.LHpk788/I`Y*><{{lcE=,@fo(*3uGpEd<Œ; k~A؞ ')XPt+1qe&p;$YPat36W uR|eR`e*Nw9`!^i?FH!|ʬTN癣D1j/~ئ/2+R>#;[77Fr"d6{uSew _Ch2r'F *q>!*--x7n:-w"DFp萱A$>|/ܖe2[KEA6i\On)t^[ڊDM"3}|)+L\$vy4$Zj$+Qb-B{o=cv<<*SpwE!$$%蝪VOHM"͗)ea#%m~twcv/ָh>831 |f=veMk}yϹ!Gw A͸ؤ2TT!b-X/ . wm,_<2Dܖ%:yj4YXOS0) CKpsQ}AVmObq6*'aՄ7!+{= xᣁi1Ɔ^'fNy'q'0S9ZT{j4j:Mf'S!%CJo?a,­w5ZbߊkaA<df(H8~ۗ4s<C4Pn/X Q1&'r #LLlh ^&qVN?)*Fh \-!CV4IK}sco~an`nQRY5hSb/uѪnRn=a{K br  뚶J ؎ Z_6ゅ{"D'PH9&`na%Bg85t(cӅy+-hZַlts%qALsk,0̓ U%D߹Cj|O{\adzפbEvseBO6u$r}ipadQ6H1m38w@h v)nn?ا_tg}ҕmmQE_o9CS+KЬH$'jj+Zu-RQ1x'No9s*F`RKӅS`XEq;'a.a=3/"םq˷qtUHj5(da~,t $@$AmQC{c,s YrH2= UFzdsn&J*Sy]W+} 2$P47o ?Q&Q\Fdz _Abn) ݱs- o:y| )q8+ӭ>U6@6kN^B|ZN{ax+JM"qk]"i3<.ϔ?a:705z]1ԍ7@ طq+\p#}AGo Dt ipEXazUgB\5uw-#0ҔWqUkO+̖1ܓх8W #*;ڿdO A?>sCs-er0jpT5!IR.ɁWm [ W"(^gV%K 5̨1N,.wv ;=ryيR_/XS" ў{`FƟF[7HSJ~:0գ2y0>W$SFף'G"'>3ѓ2B]D]{(W7_z1q.p? 7}0 *VK $ DNfYl2NܾhL!Bn3Mϖ=_PF5'Ws%D.jQy4%-QU>Yp?B̤цWVܴtm͗x8E%趾hv"ii-lܟ2vU3BSDN9#+32Iaf-D;Fq~;NZdbgk(V_l4^:Lj~luAk[nyJ֦xK>NP4O1HgIv*x4k.t1*,[=ʞaJ{SjJRY'Zv^݇sNksl˷6"!?xtBGI),vAv<Ǒ¡}d #Jٻܩ"0gZ%#&Eqh' ed i:+~NtSׇKbƼNm"cW^~Y5-{7nQ 8)=34t}YaWyg=Ċ,is@|].,J]a\Bȸ҆N60ZEܐ=YoXp>ݪEGŔ>5lZlrqEqu7G߹d|4yc36jGOlb&H\Ϳr|E01qi:(i]B 8詮t[vjJ \߫.0S(GKet Y$it-B( r[o?9D/+a>ƌDK] -,99 r7r{>-V 07[^Ԝ')dS4^LO ;5Q& '^d0'84( d=M#\c=ٲf{e#V8_m"PaT]CykAc(5A qjOgYQ 縚="Fu:@WfۀE]|(*JD!+Bٞf[R"kB:;<.bqc CA*?fϗ8,fɝVkС1@RAe$AUf@u*W?Oj,kߛ|`v#A|B4xbq)ė&EJ( !f@7]a 1-])_;%Bæ5烜wG ,GցsgZ mMPd^PݭRY fa Eq,;%LP@ˤGYF֗|a2$`BKzJZh'fnY]& 3< "~gzfK2Z&N<1* [10LeHe8@%T 8:PH- 8oe;5Aig?ճͯ1p!BTm@DNcU[ IɔXPc]+7_p,ӳnZ34/KA 5ݷ l:MG;}Ԥ͊rHnxERhCHoh綐ܨpg8#M򝬭2dViy`ЭMCЕ+UO^r[DuъCǺMG m)[of;=0qkuͣj$.ۧ+?x=,wW,QZjlcz ']WHR粬G|68}_=֐1m`OP{8nF g~|ĺY䓬]h?NI'ݭ wWʭ>.WwA{ǗOn>)Ȝ03h0M1h8=f69:NĮpwp4xचsEohp!*DlsW$[.~ycd! Z_^3'$RWl"3Κ+G1!BK!E91iz!fTy ٖ̘\ PaKIDZB΁CJ/ ?W zvl |WS__"ͽ z`둟-Acf(XZ8n9[;Z3};c< 7fy(3ss\yQ2A<YRq4}VJt}) %aaz`&=[73DFFLsB}8Y7aNFd4>m) ΅EZ.Hvn$٩~^9[FSrZ\T Ǔ 퀖TTui?0wzI\(;i=nz-1I%r'{ %دR~ќP 2z5GYa/i4 f!Utp]*IQy {Չ/ޫxLy O6JF)Õk˚mTgZQ(=ecPE3VhOP6c| gYJ3`6A_UGYơ֋ΓzI) ,b"1߄{(go$ؽo9?%<^emay cg+<3|}pefa`XUL:[2qp1_IM5Y 8=~P- Ux7f[gy`%[/TY7ak.\PVBw۝u -6ԕⓅ}`/ԲuƌlZYI^W NvKT69Gt;SY 8Ivo$R69!IF/&KbJ<RMWi%qPZK%(8"CZ/_mU)Uld:deÄ`v b-fVv8 TִRàV[3VNjEQM0]PRy>7)Xc͡M{1SĸaOF$&ERpЕI*'|^ \?nȤX$7̂ 88:yZ79cMv UCB[4 UFR-gttʾn_淿ip0UĂT&B߽`D-814rFz᜜GB2a9vZI񀼠O^IOwG?m#896򡄞 _?EvI*$qs3XD1v|^ؿql53~1_٨!Fn䣡㛋Ĥ!٣ w*lORi5rFi>^ۢoM䣎d4Q-rT1ARjN_?XՆ}KZ7xa©cTuD`jR_-UDvx.fAP;ABQq,:#w9{ =PC Gr_#'rH9M18*U\L\l[l$*.c0{/U$_XmAؒLH8 o;rh{.: :8ÈrO WƋnE?HG=kwAtqʔ_AAdM}̇[cxaBB59g#e1GEۖO{%T0 Jr61дkYubJO)47zS$ߖRAUcLu6޹`=*Rf%[-lloX6q>t'jPI* &62tez@1^(E Շ-g1:x 22Az? gu8OSzsN!lvp]_ޞå:m!ľ1]U&Aw -XIa1y|dD23ݫp0>5^'_+`뛤9ܷj)I@p%X v%j)h+l0v)ȇe+&WӚw4!iA4ኑ OW,tM0;X}ݱđx";N'1;v9 ,{KWvXGeIV%ߧÔ,4ȖHaca fOJqeJQPxln+B6Md*~djѮY؟v[ *P7fne K( z}VM@UCĞ!D;HgR6hc7aĪ4p"Jى|eYΚz~FL„U}iuY=I|{X魙P'T(7UkիJc:wdsetթw`I`(%2RƧ G &) Y,{ڐ٧z[̋.b]&FxךJ al7yqJVđ̋|]2ͮz;?єK gyay㗎SU^(1#tP, l kBn:vlmLP_*CNήlD,ŋeOC'c|ؖB97. 3N>VbQUlA|AAO,ܬg_rBNlNnq"t]&o cj8V;H$-h3V|p HDeU)I'x0 tR]=kg4S S ll<P]t9pR #-?8ɫ\(4"E5D"wy1-vv .=qcÏV?ayI4 'eR[7x'!?2> S6>̐Y^n=,Z6Bv,^K)te7b+$ti̻n^(*slJv_-c1vZ^"ZxuD77:w] _ ja1sV~9;)|VU^$U7t߷xl~ykhbq?pb _QhC'{#<–U Oͧe\<8lBaSÁv_$xKriPж< 2>U ۲ElIkl~+bc`Ec^V04La>& ,es33t;m;wxpI99גXl36q[A<\lugqRIv-6pT O!qOɸj[sƊ~|݀jdLT N}!KEz}YBTey}e5˳$\*?pO{EF2S,ja,CyZaē3}/X&ÅS0i$aEO)jU)lo#b\=aLGͤtqw0Wq [%v5ĜD`zH)/`$YHޓ>$"\1g9M<a0q[_^X23ǖ ] ivo 0@ZNXoi,OJ`wZldV.V;fϮo_{>ОW΁vAWA>ܷ s~YG +)R"R*;Ɏfм`y`  7+M)3 hn&OQgdhYȀ.ū\a*X:YS4LK E@Ό$/ti/]kΕ"Ф <DLjKR^s,|F!+Lzm'Io@' {P 45hpJje% aaXPL!a P9"#woyի+K !N \ 1T.V#CmY-Q Q͜oj[4y w {mnMk[1 ziAيwy=vMbķ? OJ]/ş1c>FWEO>@3\yN" po^_6A6IWq|bµ8͉^?R 3~kۢzDj%rUy`ӉE"=nm?lv6Yijt57`I_{T!;- !ԟhG+\bTԈoFkUЗ+1w`k*4,ꭘaV7o80Li3)d}\璧;im6eYSc x!|H@==_؄bFc䏉W5jP ~KQ9ooW<%v0JEz*nD [>ଯc%kCVfќ{LO98N{RW;c\#$7jٹyF#EꊝT-!W[p4b >4֋>r7]jEUGW~*""oueV^=yLMw@ Ajt⏔r =t؉btUӮtqwx}=\Ο:FXܞ_4LʁWL(8N,fˁy;FdSRN _ _ 0<ןU8РZ$>> MH'Q,G'-zUuF0z8zܖ++h`7st7-U5d;aVM9I_q*BB_q] %\{J'XKA=>2kdߑ8,F_o/O/}A4ǺN@Qr~}8zF$-SwXXdbhdz;CWQ*&p؀ҡ?a0.N`|Fӗ Ƃ꒵ FwjkNê(/ m2)tWi~BM&ƒ1#W>(컃D~s|DIQz(.ҌV!av$٘&ۏ$gG MLc6,~ZVMPu1 };n^LJ WOU D0/Rh8$;zB\ڇn6\wA lHi@B~rpݨng +I]HZC6wCO.!=<.VУ'Md(f{9)WL;ZWuDypK u`IUo l(LϷe(F=\sNǞ'sFHdYL /zFǬ5 #1w GG _> } +sH"oQE;L2OX^T}"L2LBXv]ך-WcOٓ\9!<TV,D<78 {:9o$뽌Q*BmXh}KLbhOjjz`hb+]OG7W e#R?';pKeNr bWΟ[ٔq8DDSHdb^X.1=mÊv1ɷ z$iza,[y3V88 |E:7YM%xќw[#.-Y-~(YS[C]HѭumdNȕ[ "iZhj䴉C3Ӳ$ͅ!l":ظ:[ƢI![wU@kt3.FEPMGIx%y Ec&ZކMWe:΢8q7!Bi㣚h1k7-20bȨ)\ y/Dk5R_VJ L|%J*B4\_`L:hg]CG gN#=,kXn'.`c$^'F д](AZVN9z_̻To 9/_hZI1eA $+ R<f?PLUŧ;8KhSj׍ xvRT,7'qUV 9>kKIrO8)OHU#;> o3594Uk/=~>'s.::h"Y)†MWI1 UWB!Ehz#WdCc?+)*黎ۯo[1E1԰"Q߬Z73y1-Xo%NLQS̫^K?EȵF̲/[~h+ۈQfbE%_>sͿ?yu T!jB-ﶦhfMt;뽰(F/2rUo.s{ɧV$^F%^ʊ Pk!+ Cz+_ıE}[M}#s. aCŃP9P%qeA{9[ζb#Ez oo *5eܖ3b[TUܛCԫk=˅.Hr[@ݽ{~ƒO:X{\ot^6Y$6 !*:̠#w fn2gym&I#Zki7 Tc(pg6ҙ(ar j? :)ʆ깮4|קBDgj8zv&R =ypfPtШ:. |5oʽ]MPor<v 6m(N6)KhKnmJf:odIN[RVp` 4pC+4.n5XHylj< ~Ĝ)]NrN\3$E:E.=["%r_"\kLѽOGxh9` af-/bk&7T wG,y yg͐G% jho\T~@t`c캵87!w}YXv0PdD{'|>!>$@>-G-hWOr&D#fYPa_jQh_( inuB*pRuV t}0;\|!3JkXc@ʈ4NV:`iME`dȴn%#oGk"Qͯ;!ÄRˇy}R;cԑrj3fe]:}9 3Q}Udfr?6헲3_5Z/1~A-qt\OD G3 $x)GzJ6D,EKE@[/XML&JqyҨG*#=o 9{Lόt-n_Ɣxi As"kzqr"̓9|%4e+su^:< 'v4ŦF3<#j9"y5)47]f.$'nN-[bKc[(;mPI~>>"EAw}uC!`L,$=Yۣ?|ti/ \~*IdrO5iPiCk-TzZ }ٯ”\$r`''ËVRs_!bh>]JL Ğդkb fz8Nd$N#/ OJ*>Ȭy)X#u3>xSi-P{ PlLfm'Fd(I*|>`o})'E@$A6}уDӤTrFiQ[U螽Q;~-^ɲw9n_aWꪋhk6jEh51uO,ox [⃈EN!X[7+䍧>Y}#j+cI˽00qBJO`}h6_:O}~0̲ '[ hp[(P&:<緔]_q9Sޖ$kȁ !Md!fOe pKwI3 1vfiپd9WlBc"{Qvm-ok:F OffIUX9 +J){/(\3Z"#ެ$/Ȃ7[F` ʖ_}e {Oq?j;u%)AVX4y =N2у̕nT%y>g%*Rꃢ":jZ2PsV&AF~)t%ПuB*1)?ِIѨU AB#'){0Ji=h44E9Lڇ9v[0< W5G'p@^ Mk<0Bĕ;\,ݣH=V&d;TouاlpÝsЎߣc9az.'GԖ* tz+$m#ߞm^ն^^-qeM(zpElZOԳʒ!w -%MEOMF;-ABV!AO6#.]d4-'DOR2 d 65;(@~:bFJYk{O0q}Rh PPe< %h8lwV 9ȱ7܁o\1)1!Z03SbV6QĸFX|)JFܤImUQJ1(&>n,0QvA?GDHX/-* <ߍXh  YP;Bфi<'\ r$;1d&?t._c_Tj^PD ˊa"g>;6 a*cLr6#}2$h1BA"͜D&R,T*LsOeb[`w-Wx>٦5EWI3iI笈(QC=UZ<(HIoq*NqW.K—VjqqӂGM}a5y0cڛAb׌s:]h(93fE". pڅtu+wӄ&| t¢BJ3*@BCraSWMh8".mHh&C.! {2~OOGP6gP)숷wFSH4:/f% *&/o5Kb\Q]%$4iJF~-}I則 1*#o8e\hd%B8M sz=Rw, ֈ#UYCGzeu"&AȃxD[e x-ϢhsW֢ȢKxoAciv@2A:LmƿBը6,hli-dQۃB$Űޘ WPKPl 2 !mscFγ8gӈ^' g΀;Ђn*c/iFQ<=LʻP/;}*Vr4 +dcfduTpX`*o bͺ gTWoSxaJ)sH`KEtOz33ГS-2\^Jv 1iԆ7SEwbmO:>?x61x `g W}/ЂX}˂^Ta41)}PFNRkVe`QY"mG9~!_'leB xg2qU0G;w0q 2/ʿ@jP*%ZM',UUJ>AccցH:=!V2:S62\/HURvE~~pBS"-^b(c)F ~,AJkerzaC:4Deu~9%2ѷ"?w 9$X:J:e :CԖUc4&,#j_ΫW&a3T8#a-KSԺ ;n@Uݢ'@P&伃~ke 0`r%>5![\"@ȚĈ'c̭ o@\ֆ=CDStpO 2YLKE F*&%6rӥmC=(f7M[j>Ӎg::QchY텗*ԯQZ&]ߨp'M܊ 5k'/1&cB/Jグm`8@.&H1 VH݌ž(!OE/JXV_R[q~*$vrkl X9_ \`}N*%4^YD8PJ`\)a= %Rtg\, Z @k24"أ]H>\|v>4l I=% l,[00/u)4R"#gZ`.B,k28lji*&R: -]ELk[!ӑ6RwO2=lMi d,c.W 3 %OR Yl׭?"q|Zwm C.5s+NJae]ȭSjNY]{2-16;(VFOtX lS`OW$K k0Y]LҢUQe^`[@N ly B(&,Δ,$yXٔJӾJ_ '$-m$4[ /,p8vm(JEBǩZ"]$ixkq G%:yy(EG\?T@G, l;muQwv웄ҝ YSQ>RTk"ˤK sc[z+,f#QB|i A3#\cl]- &KGCM}g"Ά%^u V3 f FR9b_9P#Y*c|7J x5plz 4,U`--pl'q?>Ybri!mժcTmUZhgc7M˘T 82uD=eK\b m@F$g-gX?E<dDRnj^cq侀bITaY4}KcwM3ޒUxѪ.+VPo|]Zf#:EIyKa@&bzUz/pZG@ lF"5hkLS%TH~2cL+-!L R'lǠj-nY1ئŝD._87C "drԱ,r& dZ6%vZȿQA# cf *Y q}(o-U cmHx~ Upcl,^@ _{U7Y,Mu%Qyx3*wPnyZb{)9X'CAAn5A%BXrQN.0|tܓΌ, sLEHMT6<+hm=Ty6x\pyiٹȣl8~9=cAlyӥ;]+M>Y|&Vآ$"[vax1|08Sԑf2 FiPf)/8S;Zf^pggϽm Ċ ~=)re 2بN}Y:ddvZf^O F4y)fvGku7= 4fA>,k|%+Mzms!G7};]AݩA=kqY$?Wv/) E_BVC5 E?.FDXz.{ˣT[rP$ƾP3xU\B.=3tg=J=|C:%<,[ZjB9tHTb3!+ͣqdO'emh]x127Q9MewBoyzŅ0s}[,M5OrQ cplk%0ψ ӧ`5;$V)x4kw9DywMU,&8Čjٰ&n KE@BX~ 7bEkD@YB EVܼ6ـ' lʜTtїfA~R&1 Lnα"YDXīMsqNXX~5xxԖC#фfB=_44& ąu@v@a׎Q$Z"a7K,L/s}/y *~b5#4U{b`J6M}Z/LR~\(:d6BQ x w|S"3^^ #i̝}(CR(wCӨ)A"J+I"{pYaK,2&kS/W:H1_,PUqt}U_~`]32f} _ox8Ϸ ^!FƓ_ie$ # ]ڳx#@<` }Ys$JN~~Rj,aB)`!f侧:Rg?d0/厕٘H z؞`cBȗɛ7_QQsyxM;PӺ Jćmp 5+"9d9AsIRO NQ2Ռ8oP֘8θ)Oj|rBr<- *_wUD`X@Q.7u223aAK.:K?m$$ RpPL~BXlChM~CH{+TއHDe3dǝ H+ue?!.S7-Տױ\"rU TrNJ0EPByS+<ܜcF|_Z6KPMU@O SL/Dr:7Bf# pşqLb;E V0KBˉsuA9uQ>zQ,ʖ."7G0~eG)fG(=;Y4Д^Kh );PBꃵx3m*AXsZMS&ЅqV ~:Ʊ?hӞ/6)l{aACY~nE_L vZsMW"̓4t~0mI(+!/U[[i[)cjߏNjo@}bJ7 Wu EB+c5w+[E DH.ꭩ5BA$ʬ^4!go!81'VU#diLHU=^A.2*->Pj*ǵ&SI/ع|SCN(I+ն %/KԺ/5mNa 2wKM~°Z#B{nW oخUPBFA'}\ܮ1T. iL@.񀭻Xdg?;mnze#-vuTMޘ}0ԡ o}n>Tԫ%ٷK@9ըpibй2Cȹ+}7K3c#ivŁX0 ߚC9Qpf[l%I%:Sm,$Ğofm/ #}LÍ(ni wU%p(+kw/m3B&AأQ(Z6s“^06\{a-O3xWj/!~%<>YMlaϼl|ҘFӦ!M1aweM{mWn??ܬBV0Xɪk]wSJ#Z(&Oa8 -xiVYnAjg3:B5@X~9PYeQiyJoURh&G)E!; ^.OM,ޛ+*`<MʻpMߝT~ |p}+tj a0ʼn0qM|0#+"h>J%`Hv;{Yqq.=7a_Ɖkl)]i{@NKo׈ZM|q h<6 ٠5_Bilj:7k,r,o.2 r Hk<cLpLQ!?n^ j`#eΈ;~HAkc-ydrO] gCƒ2DFߒ(t]ۗU6XJߧw38Gq4vd LfaJaZz| /:ZN c [5yɱ۔6X% ~ط#0 wtma6߱}IZ|ߠm8812`Ұ: b+-kdlxJfGUTIĶH̏՚[+o" D\)W7v=(OXt.`})3fQ 1JgAGM*<:ҏTZ)s*u`wa$ *A/>r"M ӒXUk+/G"72PoЃ~o;A:pf}E `k ]%[+Z͜f^1;ۚb$L|w3,TQldc4 ‚lN {yPb49"cٍJmBUT0 #Y\R+>fTgNRYʕi'!EB.A\$Ls`$+c jI(=ZT!&ḇV EFvU̎7Do.#qPQ$" fK x#/leH!#ym /8xaB@Ig@?uÔ^˰{AW*n6s:L=1Yg,W&-Ij[7^y8b2Ȗ0~-[/]MKھ`+NfBT@/3Xl|O7?=g0jU/IĦR#Oց^zVG-S]1cCdžkg۾ŏ6~{ËxM0ʍsP9e&x(/PF 5&zh%a_'珹Eɸ]^;,nTPntPNC&qQ}~x\UJ'6bq[A s]%/nxgr{9+({JL?SA~ WmLz'lU0`]HPդ8ئMyH>69[^!J54jRb8>B *£ i`ϵfKt{s7Z~q]^ B:ڟ:O$yWTro35Ufhr$]l,2XJڋA͹=a kߡQ^$<$8(p: сm;"W^7hX&\nw?E]ZT!脰; 6P2y)WyGe1$,~8 i)ڗX& Ώ%+N0b[S2].X̡ʛl2c<ÂKiZD 2ٶrBW c=X@H7_":\|6Y&I&K"i[%,ec~}8F)Mz%KVڕW Mp{װ'p}&e'H9;qt칭ʉ$9եUJ_eZP%l?b KK}Z1f@uhy3KՋqB;4R?鞸iYh!f"p76WY6SFU%TRQRYpͦ>ۆt3\"7. ]?'-tVv[TKdދ.12г#هq:eyE A1@,\oji9(;@u,NN1dCL8 oѷbLAg4 : p4DXŎT'0wAhfFJc e]r>Җn$#Gq=L`Iw5?L`h͹yÎ () h`U}LBd-R V`պ@^,&KŴs΄swpCWAm3a RaZ!3I'@d]NxF7?,ՖP 3h 'h!兩_Nө3ZMxȈuPxm:gJaݛS}"W?r) Ha]{ꍽI)cآG3/uI˵7"UpI_a< -g E*MH}=3Xo;::(L͚d(m^mR9α8@EW9'<dvU';o=sU!/ds\.Q`kppVit@ꀤ2xN(Y\\İ\airH!rW1,)KʧB/aWsM~ pܡh.*+rx+@hYG]r D5 a~&e ^0) 6JTI>/d:spbFpZNm͙o}w s->l+-{M-";V0=, KTZșvXTSbh\u+#^d 0:Gw=thVxdȎ#PB%veg߁Q= >BNYaYr(а/d܊HHTp^wE wc>{'-C녪w)v4c6 e!N;c ] 3RPh g4(% `03cDϔDR_S)P D*G>L<'ŧgK)WW$j^r=s;ő|-E7e6e K gII)xdmds안J_vzV=5snYuAZ D |ukwo~~~RhOy&IT~Rɡ%YJ9Z5n.NZ%Ǿ;U$*`{}?ۏ KΩ 3w3.e8 bŚb/#pXS [ffz@Vsfy5U>ˢ"D cӾcz!?|sE l"#[aa>ɀ.|-#t뚺d '%Ʋě Q0D]*GI@U̙5icWBcfǡN%ٱ[?ЩnJzHKX 1(p;ycR$+-_ϸ2Ȉj{)g|۠l Rzxz?y#ho\$UC [qFhĢ/Do_n"ŧJ_ 6%&7tcң?!&`9hdQUu;5{7ӐaѪhU栟-.qFvӍ^Cr}8>p4m%&y'[V#/ø?|;kz(F~մٴ:M` Bu}2._WHc `k6ŝLo;D]lA~\|<6J:B;QUOS5Q;]LN ö^c},I&B]2^9vo[M7+Pl_?D}d)0ᤓ7 )=xJm|iLPU! ~=Sn05PoIZDWtK{S+V;9od>F0_S4KҗlrD@ e/F{%=NU8 uh㴥qQx%BpURR7NQD# qw I~4odsa>.\?Hc-x6 g\pm{&d3TQeayFfoH_)#޿ yɷ>XP7i1 \8ck XQM+@f3^ڭ>o mr,1"d+zHh WIp?)MzR jp8QP#6h&6.4>6v;SMfzysK|?y&ԩC:禮jTd۶o$t_ D ?Y7 evݣ RZ };Hz)8Bܭ4-'2jQxRd#~!:GWi9TȞnrYLWNׂM5*8G4Bz28 >9/P\ rպv0:O^i[%+o2N7Ƶ2'j)^v∫JY:^+&哔2/DqNjpQQ$ BTxSVDL'F6l2jC7?7ivXz.1hxVW%0XRvW :*:㌕)U@W,<_6Lx`Bv+F2 e\ W"׹i9NA ="v@dWM0@Td0AiB[Z== x~3(2/"<˿6h6#?@s)2^.I}r2WS{.*A3w ijHFi̡;ZK_Q8(r//?iB?™$uj\#ϊ(zj9E2K~7 ?->8x޷!lnp8ݐu_)(E+֌oh0[e_ncO騬`˵oJ]u8K]FR[G{I9Y9~I Sx66.DxgVAVl uS{] l(GYWhe79hTy rŤ N>3]%dT|L*={ 'K쎕>&xMa#49`]Q(wQ1xͻ'FQ]W a/˟am=|@_S{pfrF_&u^1Jj֙-c{) -|O([E*7Z`tNWd.~z$p3xjnrBHMTVEHM7C|Eu0HǜN0@-;АCJѐN qz"< rL Ib[5]MFG͂SʜWy&8J8j7Ǖp'>w4'x{ 2f{?\8fj11W(}Md [kQ F]CH/i>ZCO zyܤ0Q6qFS`WHۧD$WZ!\0j :5+/Z%SP2n ՃQ&_yj__s)* j~!3$L >~iVfȗpz\ew@]N e!p 4ܞ.lX#KwaKv3F;ui涵PQY 6'^qbړ#0@,w*Ufx|z@*AJJwzjzPwp[*ޯJ=2; ׋**iYɃYC$'Jh~Ͳ]k3uSVI6~//bYUfV @ZNl,qG9kz,r8W;m?d4׍5T)N='z f0ȑ%vE8P6<Δ=gAk۽ܳ#KV0iTׇK]UhWjiw^ Co+HV3:J:9M\.)gzvLaG_i궜u!ޥ%Y8 U`[%[k Y 2PƲVGY 3HZ nX>fotAAijHby-+u,̅+VR_-U@mm^Ϋ!_ ߭Z JФ]j|]NnW1U\GI7S"_ AzWv*Ba@{JѻZ][<8DfE|Wyʼng kCE܏_H>m9aǩF;L_;ZcڳeeV;Th貦B%D $P4(8qxs>ݭ D2W _2 h@9;cwenmi{"tF8xs,F;Ҹ ZȽ:caRwi`OMu:AHFN$f~%)ٯQkW'Pi Mܳ7ӻ~RmBU1/}VoAr<g>m ]T2I0clD@א7g&elKS ;XDtYR{h*š΁ABhwUbEJ4P^,ʩcVI:ǃ3M(&4hrݏƌ~JYthkQS۔ҎI"cgqWLPUU _ⲱ֦lV4pyPMXFsh!#e;]wbhvV^W)ibI#Dr ^2`h0yKaܟR9 0Er@ oڃx,MՐ%$\=˧kB__1'S2#դzGC|*Ӗ_+EoC28/ن#/C:Љ dԥCvs?-d1+ܰ~?^HJ? xG{+ĥsì sSr=ʋ ue3f+^Wrzib}l}]~I%Xxd9dU^ӄ)D`Dcy! 5`B0" ۫s& q?e蟴H|#|<> O?ݪhLۿ$܌ɝ?ö?LCSl 6S}1 M-88P2"eawuh~>%Psv| cL.kӱ_pI'MI0p&r<'آ 3:WS5z|u3aNI!œ^X5 حRZ_!Z8yG0F>J?ou S!n„X@JꯐA5d$[wf_ sǻ 1i_]Um^{!͗Qj?dx}8Obt0Cמ4 N&w؃8_~|#B;v*%^kQys˛`]! h6 UB~:53s+!k6-VZLo](ERWQ"Pg!Т~$S1eͬ{$C*SBEycLZz؛`4cJ,!~=k6e͑w5jT]a%lh`*GqAI J: e=@#]|LF91:N_05q/=Sd:;2~46?v:CG LS`q ]`q3cUẀe6"D4y Fԇ! +\u*{;tTja煠F7jfxkauWtU%y%xFJ~ndxNDpɧMi[n[fT^b>&_#*OK?yƭxP\z&Vߘ)Ex6_4?zUB~l3}~״$Q7=W 2طa!y$L0_|ZJEܡ3C8,ˬdѕ#1,/1?ֲ qy>OCU,`i+a4k )R M r_uj< ISe`h3!y~!l!F)!"ge)_{3g';[HpB"[M-lKIFgL~uu=^ܝuHÁ\ ;`\*)NRh"7Xg^`iXni?KY7(R z?=ns6BWsW L N>S.V} wb /9oYm)Ġ{0Υhnm[ʚ5/@b5e/o z.ljJ_3Z?⩷P%˖u˄ْ肠|8Rag%gB5W uͳǗY)Ǘ("ǺT$' }AR(B >W#7V_M )/a D>SoD? f GFOuj"15Ӳ{%djR oƱl)>2x;<[!Ο]bRuKn7*5Kϗpa̛o]h- 8 u&6<@=`uJt~hɌF+j/^ O.]1 R|Rԥ=^8)aXȞ}>+1LSu2:~֥4CuiFd@lfٝuO >)cf ʘ.QsN5k`ΝDMX ĆXgCV2j,Z"h=Ăp檇#96ٮRo `J6@ K$fl,ٽ"*u[T1j~'TU mO^3Ϭ?}Xd)Wf ZUELgg2@6d3RcQTe]wybA}eKޠb(f;[l0섁u[w`L;4yY)<>z)BɎ+Aps1}?} n$Bu]F~VLw6sT 5ѿA1Գ/Ǿ E@bG\'{ZnĴ1 !/`sC2mN1NĿGVuR;(Nv/Z xsnS6@]MC؆q>*y|IF̗#?.$Ѡʪ,Dmˇ :5qz?Ny'k-^_CFZkBM{f`3 1}C-,т? jM^yy"ixu2ja)Ugx?V6))Q5Q/rjr?(]BrgDM 6Ӟ(XcCMu9L.*n%:q9yєu=wYE;vm@Lϓ%]rY{aϲdVffh =]gB 5x7Yh b+x߶NpM3yՊ1Ni^{`hI#Уs&3ƚ`A2Gh'Ü[>թ4+w@@ӏGA4P>͖v]SvwW8~u(ob&wGavQcҽ H! ji5(v;7<9ux[6epvm[F:{)45a ?.QCA*3-8sVm04r.0<#0w1>SoQx8yh*2Y|08 + ɗVItQzŎVys;k>`~%pW.eH7R VX䋎'S'0΀dn9'L4bzy,Ld!J`-G^~#\8Xp"~쾻o 3W ePng;P(x,1@cG#*cW:ϥpTgo8IWߧ+J9*=,h@-D9 Mt@j`#ߨ iH0lnJ|ոUL ?7qN'zJ!=9>NM$ܮ};V%3*/Uv&a?CyҴzr4Hy |}oLZW^<ï0zL5귍g+M+oFzW/M((v)$[@r1y%wX7M>&܍z e8^:񦠉)C*:J MEG_< 44"`'Bqdcve9cERzWg ܒI?d\$b+`9'Uuc 9DE}.# =<2Uڕ hR:^n>I> He/MmTA$.8!^jId=D9hAO0)GxX$ʘn[-Z#Rdȁ8O['-`r7y EK̭:e N+ qa2cm3?| =`@֬Oe4xaX$ZhXfRޖfr?:c3t_ *a(Yf{I`bSin5LX:hAAŠZbN.x Gt|xe2 =F.Ht-qE*dyM~^Bbsאt<`eIbic/ ef 2@wFh<LCW$N$~ rFV6+hsA@1'1TT%UJ! ѴAK[h޹է; 'IPw kZĤz5R@~g#:7TmaՍ1' , 'j5Q" AXy/wJw’m"W)K& G\ F6zrHsr/_% N@%Z&K9WB2]ڃcY&ۨm"X(,]ɵT̛@yC>5tI iwJ& toů9Ze A[cr!ߖpkߖ6FeO;Y%G[%oAx{A=)V$ o)Im/x0r \kb41iHDh+k")Z M3 1hg=g9cP(GZ_f;r*h|fk7a:0e hvV.ϗ|P{6r/4.k{;ՆQLH䃔Z\I=ڰm}NV4b9 _V4pm zhU%مVi, GD0"3I(m.37HUΎsM}sR(WK mPyǁm:.7 [J'3ԅ*S➤Pviy2J:RF~9HOvPE`f?RM6Gط1m( yh2:ռd =cudM6ԌgHK'aфŨQG%ދ3[kCd_u0Q3{o%O{ܛ9pQ7aEVTq`f:8-H@43qںƌibNf̘oqM2gey^Gbizx>_6=USoJdXL^+'OIb YOp0-Ge ުeVl3~IBwC!€=ye:^{Ϩ}if[r,TR2`voZZ]rƂj#McD]UdJ D ЎѦ(2?, 5]!48ڹ</TB:%~frqOMy"pQE6]NGtws?2+]ޮG* y*?}4G?LFaQ_ tSo]MM||Ip:KHV#| UGjY<$.PL8"Ɖ6ҴF~H4nE{% 0>[dE^"߾^{p`%J>g=2Zw `dȆB+Eh$)3=hk\G9Ld/gYnzb݊bȫJUq^fzH(WجQ5~۷ê*EhjV-0pD@L(1b>{UA_ڇf4 KDQ&AE 4B:9Gpn"RM`,J;2}Wh!*|_I[`#"紞j7PB$`+I4:0$*G &S TWU/Bַ~`+ `r85W6;@I o8fna9KxdM"W&@aDcb}w'S!*] 2?el V& Pzߴ b{kl!('@;b<ڤ ib\c͕&F0[T^HY'y%rUl3( UYjh#3 B]&((yG:Σ"cjV,ۻuDNX06Ž\GVBbe-U鴛@ψ%BR رsobtG5"~Ұ3:D'N/NHj%z (Vl k~zV;i;eܯ3tihռ}n_eeb[Άc\|ib_>ub851vĵQ,cnܺɌe<.&/5듭ѷ,q7Mtlk`Krs?G{+}fQ }A>X4rHLL=?qݤɸ&x:Uo/|cSǣ|j>A*lT& vq# @t( 3WdfK㓷c:R&kPhu.mG3 1a]ޫ_1AȮhp XΖMd>8L"К ߂a${ʚ~.3Xȟ~fviX ʫK%e‡Y%| }XEq?D9Zc/.GjݳmU֭wcZL%QGFSO< @;BrFE#Q wM G@mvLw;- ]fhW~=4$ϹJsuܮ紑6Iҥ2ܭ+#ez<ή#cBz7L0^f#F2wb_ k1Aj}-?`y 70Gb,~Gc5371J}[:c im?9&[Sw姴yt$NxWR^B\NB 2 vm~?sJFi6ϴB^I~/ NĽxT+[Km y=bz)TZ rVKo`t t*˯ 8,R1'2s;s$=pr"1A}klpݱԕFJqքA w;WhQoXfg-76d"La&O?V+on]aVob%K&9:zFy +A7ZM.aZB] N(qqNceS$ȳ0*n]܏-tr댯E`D=[Ʌ7m%NsO]HIn/´y_Jh45C T9pʥK [Ȉm*j:@bj P\c|Y ՗VeV|E|Ls)'NW J; ޷t*'~m3TrGu=S3(!>NLy -9 E.尧̂6&4 `7)P~h3c3u;P E=/ x Tz'K.OGvRQua7sIQ xҔ"ɯݐngI7l6e*H Jq#?iErugpX}aStXްpۢ͵!*@ XY( wYvHt`r8¢>:zT kS_t100@y]s}Gҁsd2D RH`Gԝ7?ȁ 8WZG+Y6"ѩnhK3fPc䄓Zr`fRӂM}y@ك(eɃ!,F|7@&1ɟhXwjY =gJޝx0n!+ 0Nσ|FR %oᯛ7Fn ԘA5LQ< F^vlݕ—lJX!J|5>rBݍS54!ö_F%dȜ 0/ƣjs*tViddq4܊?Fg,a:zILT7zxGpgR2x C\k•~T =6j,G5P`", "9jY\H+! 7# dC!ZB:)6d_RN&7w 4ГepP!du7|bw.#zٶ7AO)m"г.d9ʂr;V{~vQH>m;N5\}X%wOT"x>6K8BԿ&ˎn[RDrK-S(&$C7coP{݁L-oB9oC MI-.<(!R!'?1͟[cX)ɌYx7H\Au7BsZl4"DufLۏmG#KvO=SV&}EF ۯlMRjP_G( +%kETsЈG`UFk"'Ny#,jrmңN晻˕Lu4<+7|+'I'. "s[rOéb{bHu}}zr|D/u%KP K%UƗJ5U [ ǾzV?Os't jm+=AyπDqGi3UϫbZr܆Xk۸vhaTh3= q8Bθ~Y&"}4!E݋pGygfCq%~%"pbMfOxqzl+e.n1cw/C{Mɝnpy)+X{N9׋oh7rFo[}* _ܹ&o9Aa*%Բki}8ȡ .}4%˸oxDu۠}4ǵaσ1C}/ļpfB5 /HS PkF/.]dqWI6}p~֏@FpDJ%l򍛹mȲ^VP?-Q/$ƏPy" \ї9:=VFA-E6f!3*9PT׶/.2TOޤR"{|n6+䨪6nT31$r`n.DjfU!ؖQT?InGZ61`4*E=`0YaEMk ǣ)i)ӋVP,| s.>{A"q -cr1*?͵ܤ3̏I;!~`3 [M8߮.UsR~TU{,^.}$W$"WM!>;r̆u!=P\[7g mDc.n 8hA^+x1kʪ$ڵ._zT\&zan*%T%H\vͿ )&nNth#YKcۄS% 8rZ }z-3K&C:p{(zn+mkKcl3XB6'o >:OjvjGx#T8JBΝe6ٷk%`R&)BQ.{aJm&'C^eo,mV^C'X>^# 'L]AS'pMz/mЅ r D嶘dJE4%$&cZ~ҋ8JPL٭CX[TL%opq- ޤ)0VY,ļ*7zJM3zp :4?Ețh:O,*Uyi&8dơ?sCR'EZmX:ZvoU,I4w$Ze:YzO'U:&I*PE_[lzmE J?\b eU !>>bz\mzuBvT7lFx1~}*ǃLjy[Sq٥ <ͧ&F5y=g!a ¡da |@$C I&wGsMkxi'7VCU\/1_'Ki-qsAAdi:Xus(*sUjr`?Yt!-(tt87펓#iԨrpVjwU!NfmOB@9ڷⳍ.K33sv+oP./;5{Y.i0V!y19 Z\mƹrz=Qzo_p_P-~}Xԉ.y^(֠FzU wW)R8i `$!+*z.IV?m-"Y=銂^Y|AUFUCCQl>N18,)̷H4&r:_IK 6uVWSQ, ]Pj;:tok^8*²Wy,U̺ l 7m3f$3ӹ!DVQUfǹm#P k"Vesܲd JRjh s Xds7ɍ%@\o $^8?D\T 1 :RZqgש_HOxL2<{Ec!6t9k3|2Ԅ)ɊÁD[urTqu2UR,RY"(DZ59l>964I)4k2*nA einII`]ۗPps"ްZ l,;AqWnߴh/̓i*K=-/%R˯_0{Vᥚk0XS"I)Cyӟw;4kLΈik`*C;SD;Zv9zU;]^a2.zt^2U_L0= G8ÜX"%##ܚ2J֗ra!,U;/-~I(d P,t?Ty۵ k [E*r\ϡJ"(L;kyf,mvayJʆr^9݈X2DuAk5_})W &P}K ?:!O4Fg,tC.!uCw@7CL귢- h*BOwIqdJDNQ:ݽJET^5weYj ^j !i=LA(;пkEzc.2j&XbE "2:MQ8DFb@ *,>\pP<rP󱞌&uZM2JqNn P'Z++FAYǡy'!!( O'A}T.=R+ˌv,Ks"ގ@hf;Gmž榄UaǠR'_Of/δ? O-N\l;]9)tfFy{v#k!2WG2P="զm7!jV{sГRe8mxX$2 y%3?;|9jr>(<=֝#B_x %ęK+<⤛A*rﯢ]>)TP @Y72eC=1,Mrj), 3IlkPD>Z&'o%V;Z}2G a5Ά`[ u $1spjoA#WA} Ĭ-oCbI:h  yWg %ć_Ձ,hT!9x#Z\HsI ͻ}NL2ZNp/=2"KB Tʰ-QM}LWGg$_5 ׼z,Zk&2>ȒR9 ްݎVp.=+L׫k(VaLrOr;DU Qj^T%Ȃ3AI&]Jʲ/K=}{]賀ɨ :M(y/Pup~:yglʹ_+;l"WJO4ma*{Bh%&uy3K^:*,IS@۬^7I5.q`=E_gV0k?ļ,E4NaKR@#Mĩ?Oޱkk6.+ׇF,!ל'9dY7KXUp&ƏO ܸi )p`ş<Vd,&{>(cݚ `WA⽳;' 'BHs,:;z6UOOu0Ѡ*Lk`=zozFhCЃ|trT |tKUjZZx\Bs3BV e=H1gK,*Sz&nߝ7o&%%(sv58; qBQrfwKwW!o*!BY|ZZ{'ȥVΪE?̄豯 h⊞YXxC3󂤓0XƘsu$ d,"柴!oŐSSp۩N&G-բ),5G Y$6g_9  19mg/lm`@OWL6@1)ht*k8jr5cehYTi 9N*naè !NJ /'Bgӳxm|o.fy2yrPz+&-deC+vhW^M m_sbل:[M 4Ŏ=G/j_<~Tx&(]z/iXzm.QA0Q|bNtb-<ƻIof-={Q4siM."\|9ն;M#4 sRO<=4PE[V{9-=YʻZTX_LypE[ [qiEq]hQE:M5W^\v9Z[!trm[P"-p'DHxqrTuF?HdϚlĩ3N}='0_c)6W䥒@<%`mx җBU-$oq0W+pJ DAnLV?P3@<ׄ`%ʹL+fت d}+)9w/֗G$U.8rԓg43BLiCLC/?څ~PH5K[d\&0 wa%v9<@WjlW)"o4_ 8+څ SxW*c5ԭ:Lqe&/E!9KV:T6"4"Nē*JIٔ"ChDu1JlZ"{M< Z0 Br#rW9:✁y!#s`Όs'LOYܛy>qP aZ2:}(ŀ8.#ϩʼnɦL.ql&wcE SLZJ hЇEk)coYɩSBW BhO{X펆ex B$g4\} Dښ,MpskxJP((8Pק]'Q6z aV#_ tݲ, ~34~f}ۭ]#Ħ#"C ҩE\'t=e8Z8,Ѱ%/8~,d2陜tN{D5ﮫŚ1:'qZƺؕsO:@:]aWOWfLd#Ro|5NjZ$?Vgn-(y/i#uHpyv{2ݟ L. = įt/b ດ;gzL5[j#Tuĉ@*.gxan3dK鈎;l Lכ!W*esu|Je7 @ds 7Hܩ[NCN=;AtH0%2K%x6.[ r-U?*Ud6>RZW$BCa3$~܁LXGҺ|t:{#Gæ!}^`6:0g y{Na ?>6AjיP*^3Pvj^XnNes&Yih-bsExH.דRG! ÊwHh ^% y9X0 dmDA'O z9.щ,}ԠY,(ea J]ZEq匸qWS3^a5'7cC]6x+29sf"3Je^,qwn&Wr&c튵N6ʪ5/J\(0X xgĸ '#r;Xx근AX)[C*y4Å%x3(,E)`?`ei*D"[%-TdOchr[/0[= Fw~{rڗTUrvhC'~vT%_j2oU;O ǘșԉX"hf&}܋ p]ԍON` #!Qsk%SA3jqb'-%10W Xh5vssauםOC|"ȧ(i#%q8Z֡!Y݌5@̪,x8Y"0;33džjMeyC>xe`]d&HEq UD'"jz erE<Ώ̣1w| ށ屨9avͽtf 7(3A x\n#Ĵ##{Y,sQo9s9_:yw Omӡ7f7Vx@(E :׊Yw#1-DW%p[V'" W&?꛵) t<~Nޘ %ԏf+H.OV92Tbo+5=8j"ݧUEr<\@jC /ԩq2dw{ ՔI!h[q4tQ3"VH2c V賝a}_ JVsevZcgŌ*\#ԊjhrؗBu3bZm?~y\XWU6$́eLC7s+t^֙|znP#l\M8b}ؾ=~;=WF6lu@ѲIbHXcj2uෝц*oF!9 SUC~fޝ.;1lEmJNYZP8pXɂ!믮TM)"GCJ+뎭gf(Hg@ާGao(W2x.$(sXb 3eL Z ,'o-/a#&|+GM9sɠ 7%Uܫ" !i͟QE*:{) Цs G%\hLZbJcs vݩԙE)*:@5! ?=\ Z]) w$X!_j= hzT/\JUgXjx6Y_]X3*QJhL4rTY362֧ƿ5iWnp#]F+oផ6y_xFzy4eatwO|%y;< /;&.." L,?vZb8yGkn|I߶^06r Z]d7ZHrŸ:h'dM1\v^T۞`%1! $!|RaN9bfTIڳʁ#2`/!G_۩]WWY{W7G2KRб4~dt29np!Axas۠l>H.ԛrsj5Y &:% (Xɭ ~X*RAާrzI:ȹ:Т`@>JkwO<-ݸrb6ƾxwR(W&3|^qϚJWK1ipըzE>1Ό(~=w^"JrKϯ5rm=iR1L+.څhNwO imB7g!L,%a( OiM[*>STbֳbp2pѯT'HZ0DbDHg.MXgsW"^cG~<УVr5Dc-su2驪g~V\RՀu]e &#ІsSq#1ʬi& +C^W̞aNbw K 5eu=w`r8ȼq'$wTb {t;JO͵>~_7dK qt7[,t4jCZ,|N (='1IV4RZ6:!cs.Tf _7s!YL.:Lt]3Te1QjR3x;I<dۃ+)ЇƆv^@ƿ7/ _e0Q*lvQQᶒ\$;IxRYXgY4FL/ YF(1i+I!0f՜p]rogwF"]Vg<UO-QTu]+#IsQVBs.}R4ouYLaƄLAtUbБX5HV + Z}wm-O+g0^qmuxBozA? d}B]uۘ͗c r~!ˉaVZyxBsIà':'x;zzV_" b{gq]NMk);}:$> E ϡ?9ά0K;Vmcd_JΖ^5}!l-u;[˄䞆vvaq|c⟯'T)_P&gsR96SQlk3zY*ZRTF8E=rf\7M %ʒ5[':D-=xf֒.8΋^U"`c< zU(4DBKЉIfR |D4Kj>Ae = ZqV7w@2[[i*#[{i+JTHFo|]+8CF@&J0oCLIlZF <_j챖kI*RY31CQv?L(Yp:\Dh+L%Ahj=e4`FP i4-w~3hIZx7rڌ{VХhic_#;Nq)gkb90$>FUq;VduT[ֱ#lTgi\0P}\Ჱ`3IH?Ȅq]KZJjOKWl[!6tƌCi@{}5b?3)xs.R``7jś '6ã2g&8fo^tq=+@Pݎ<':MjJ;p5sX!]lJ cеK}YժH"EFsJsqB0ب 439%@ 37g@Jd /a>(}c<_,GK8`E'^lS0W pw3se\Y\2! =gDaaWpw4v1v"4ȡl fiԐ8Z}îꡢNW-rۻ2n ?"WB'݄qY_<[!`H#1I%}bf^CuV: 9ɨީh0F~ێ:l' HW.lr9C85NX^Kڭ jz$6ɡG=+K1^= >Vd96_D80a!ޖHR YlXx>5].ȖټG"u@M9 >.{Wy] `zyLi f vԿ4NX EEJF Z2P]\Qn 7W < crEQ8]=; ) DDۺ#܀w]YTH>E;$m@gmaK03#L8wZz;^39!xv $B?|S{OfP둣74I&5Y&HIq%oTy Lp6,8QM!:J?t|?t[ÏJ@ڽK2oq{,ifDHn(Գr^ Vtj5^zh4b\Ό@e/獷=P[9^%nbw-OZ:e6;$ʾg0p4I>>hf#h&>SL۝ \%0- i4VhT}i欓|^p>~/ 6spPRAŕOD#p) Yήo]HzHbNrLp*v5I}Fpycb @11Y?>U9M1"Y2f6{¢ Ľ5ٜ$T "UĊ;~E5%=k:T0 B;Pt3V(WhЩ{ %]", ft}m R+3 ]SGs`׿?li淛F@TO >^ DqJ=k @ğ*f¯KZ܄Јݪ])G̩usI6qX$e; &kBux[9_(%_9v?ج~#8͈ & 0 _iA ypt ko)0%  ~ $X(U yegx/l-.W,QI4GX R2У.~Ӵg_W3MK>TƇu!Zf3'ǻBGa14NYul%u|0a$D=T:= ,^B*R8څٗhHmHW|+奈l.$7SD~M/!c?L;j_Y! $^rU$? uf|U9"JHP4n* ӨGfuqzEzpY6M)$̰⛃r,?rҽ:EL+rS\7j7RXє͝=U|[&YV=tNj:~٨>[-gc\~y21j+3:=?.DY(hntƁRUݖsx鋂%Fݬ${uv.ZL Ad MgY{[5?੒}RrR6 t+ HO(mrnJSRUێK ;7;Uv|&4> \apc1 ;<+)C.t)CO `͊{7 p0UTliO1-ἇ4w9%Rb)kAq>|d.X΂ rG *ٵ6-iϴPj5lYzKeϐ5dUQ==iLjC.=I1ZW֦A*axKAӲ(XEs2 *Y"] :jc(ȿQys8twr ?7fy8$xeb ^38{)2Q`~0 `w/XV"ܒFL,O$TVɆ[lcpZE}>[Oodև;3ÐpfcZ8𧊒}՞roHL}x 2\dQE,˃|}YzdgG0u} L?$E2ޤ ZґUh͐A"!b&*5,$pO23NWD.2FrZ`fi=jFyEFjy'Ūp֢cciDý*VSf:^lY8^[W E5И﷽ԉ*7$޹<Ι8cjUɥ$z1'ӂbZ#HIGlJ t&2s {sqsn'~u9?tf=[|Q>؝N3dM?U-}I +?sփ3: wd >z-W)BhaBd+Σr)or`+fV5 ^$Q^'Rs/6m4p> U4I1i!m]y~@3,S:9zչaPNԡKO)6? rps86,TBn撟rudC;}[( ze L0C:̲֬X-[_P K:坄]`_j}Ҏt! [f7͗{ݐivzWG3$d!Zml݌xz"𧒠F?o @HpͼD0vN%!5`ICA$[ȠN7??x.io,ft _9ML#Or} W46 e>O*1 Qrn LG&,XS$T.Fy"|5v+EEϘ悑azxQȠy ZP5< {S!Wcwy:q;D !Q>`FS|k.m9A" sQ$Z,^ns9ߥ V2+6=1&pzV{ U\))p7v̜NiJMٙU)^AK gu?ܣ?v\ؖCʐ?яA5N0.%b}L8vEˤ۠URjas?X;_b* Px9c*Y?ȑdqL Dr/fe( 'SosƱ_YOpB~OEpKظ7T?4t>:ޙ*{*5-\xSC9F0/Dqzqו)/WVh_({A{!eʷ+ٖhfp&\>UmsP(#ó^NA y}B *dqni4̕%{KD#Qd>O'gח"L{,4Ah9K* R1-zyhÇyډMPf$v$/bYL_ԃ. RM֍4;r$M1ZHMi<"d|GeUE __a8^[G7nAVIMGaEKTj6K40 8Mo 701č\(wŧtcooEpa꭪;g@4m?"8yܭ?2ð-oJ{[R[w*৿; "$'F'/q?ǽoCȦT@3 ^W\Ao/G]SsuY{өGXAA1+Z=$iyY@|+%\q3_")N9=Уg\bNye{[ &996Zi.J2_*}(;a4\kS#5׌P8]qrį@y0>BnKc{yDEg şx7l ʭa !_UXitT=Є:MhLjИ6 Drǂ޽n3HK3Y;SF;;sV/yqk*G:)ݩhVv@/bP#>:[fjԛBapATzV9ᾠ)iKZ _Vk Lv&-Үr#?' h{aĎREpXC{p^&  /!aHԤLJ%VHg2Cϰ*yȩHHv l9]Qvw9_['8C`lYgm#!A+,! w8)?{A#tYZpۈ"|[ᚷXVpP2 ՖeìW))%v1ۧ(yV?fs½v,Pnu 򓡹qu1u:s)@*֕SI/aF[oqA 7e)xʘ#$!VCG>WsaS%ϥt!G2 `F#M_`oR5iUlT.3IpGih.9X6r*`2,٤rh%{_d}2a懌ޟҴ5E+"Æ6£4J*w^yzmA9\IP VPBb Ld֤83s {z V|;~|H!0(@8d*/ { 8=ʷgFCF%K\d] b#ٵֵ!A bWǏb쀷!jSY ABΕ̼&:jK AIUTh 6U<; T⪁Ei3!":nN͑cGZ, 7Tܭ &f*nQX G8V1X!M\`vd9Iޕ\b Ս_Kwt7OM!Ϥ oq|,ہ K7ⷁ HQ`/(Ic[,Gv2Em6u5_ϼxޏyO8x ?LsV{?kA5(ש.-rdc|%)-Ƭ5`x-$@ǜ|o1~VpTX6FMSϯ^ƿb,v@mp2%vejXPh0|. r8oДPCLd:#Ibi%}z&%-up6Lg>"-6S$Os/>1ؑ=sLgG#+:˘I G2h2a@Hr&Rt쯐,MMV4Q8.FD ,$Hik­~O%2@`#}^(ʙl2A,0lL%.u{_>!%)fϞ^AvsjfPH|5(ym$@r (f*Wlh U'Alb63߱})qo%h6W"DxM7he7Xf855<8UӰ`! ٰkõ붌t$=1)Mn0^GsWΘNeGt'KUR {+8~Ϡ6;F}#.D[b1VmU@=%MxI+/T &;7{v";ΪVn<ٛBג .PT O-\J140G60\VJ>VOA {Ͽ$EޱaE s@ tӢj(YjAŻ.n8PXtgˬ|U'f!Yq=2wN`"AV@Gr&Ƒ ʪr: o5{#6Khl), |)fm?CvY -k&IlZA"vJ1l&' ɤِRtytD?ŕi{j$YǑ\XW0)@kJD 5v;:9Q%FH6|*$5mG3VbZER{9:勧o-/+.Ss2p56r3aFK#mMԃ<ޕRۋ2C#=(*C#76H*Ê2tD]e5fE1Nud\[>]61; 9t=f@"">نX쟪K;ör195)~)?ϙom de$LemIR;y۝,ؚu'Kk EI4oYnjc:Q/7VY%z` `8>k L)*_{ht3]f&hW'7cn"Ńo~*[]"帰`輓-I?_kbU ;_6DFϦJRj3|jӻiçf80Fu/6MVYԅ:/yqm4><٦ÿTwNl/LW'Sb?">6@[@(]b0ql[K $V2!2ϩRShh(,y;y7J LU4W6R-rO0}Ǿ?+傥2_,{͸ݞOC4RT &s2G@OYIŋ Yt}7g~S_ % ħ2i39@RF"46%ޭOwynD2:l~a#{͙D#FE=ezArM^ye8 F,@36zRmE\,zO Q@+FCM16κ<2LsG^G%`0Ě~i^~e{&ڱS+M]B:s=.n0Y^ŎܙzЗ8M`kXȂ;cH^"Ϗ #j&h9_Qhv5[ Y/ǓM6ƶTF4dL ׃aϰ,)# Ma_veg<6f7ѴzHqD{f1)w<6am;:ND }+?DPPy:bO1p )r+?3I.1E&W>+ ɑevU{|.,'v$ 6BTd6^8`Xd"P_8d x\z*]cr q8uN%%9{P֐]+K´; 6/]?@h !]vRSRd]NLTEͮUA]Ak'wRlYs:M@( SlFa76yM@ILRl v=(І0yjkql)A(l\)MY =$ %Y|\Z;@1`GuŪUa\E1CD-T^M*Eܳf AT8]E|[{%S8U5ڮŏyg`ZB^5#2"57Kyda? ršaYV؊T _QCf]rkyz =:VIUXwv~Ar`~l孿/5r.*ErjBtz~@׉ȨӅIHfb(X0%'d[vhM[DJ`vR>PRHa`6F,9 VrD>'4+=CN9SoJ/D<% Twͻ!*lmG`7e8FX.syLB—,QÖd3Vj4&ATѾA FeِtM:q$秞d q!oeVqk=V-a!K ; q`lڦGU=gŸ,.0+Pc""ףh(sēS^+%b엧P>nzW<'0ڷWv=m7cz$w93i;nܞ C8M_SGOWK)")G ݿ jƙgSg5iYK;@Aa&z@h?2O+.PtW30E0Tٸ3:dLck ;34(Nf4o+-j77#_hrzaLD_WW2P\Smn 2D,kP~ٗ/z&Eoѿ6VrAALhƛ/hZpjt2?Cewf3]J&;tdi7:2pf^>FooiF}o͟SJ9'L/8CNlԙYλDJwج3EdXӞg5Sz6J)fQUw?:K߮9Y׍ Rܩi 4f)eC(: = #(E&sKgqk͹X&QnU:޵Pl:[2rE_4^7WxaCP' |/`2TдveS4oS;c\xSD4Pnv±AStN<8]#3uӝSx$nrFI$g|a!4bLl[3<7Y3ΎY An4gqhja᧻󖒱+\`}U" lD :ܞ[$sPgZ%߫J/6T F=)Erc>>2(%ZyUp g%qwcKMЏږ_9R\s)sK8Ìq/F;a_{7^=suYVNFD \N v8Ljm@bY.<mRˡs.>{yxwB-YEmNeĈ'wTsW*s᭜7_$r-\]g6TV8hvκұ1!*:$Z&jjh©~EI~kɌ6`n\Sa1A"FPf8b*a!\1O`Rk:`ZAQ[1CS&XsPI `ԞT_i5`xIVpzFmC%Hduj_䛰14*ibo#i# Rdh!6c5iwzA5zmjϐ0ퟐL+7f=YV_ zN,RϵKܜFg5r"N`qq0\wNa>S85;mSUD.87hW4*eI| ȷx}# eك|8%%ʎyVʓp=`$) h'qt" ٦g㝉QfA.8\D`wD3W@u ]'zݭ4*oZzIU/y^^FXU!ݚvTZ[j+-T 7w|W A %zL';XM0WsCIYE]z7.|)NpkF ֮V) D^gD7u&)^ţCD(@n8yH$o6{5Tr{*JVgiň,~~*r4_shYh:ãu-`meaU"SU7 :oLFv u6¾90BME[+u<}L?pY z0NDuRWD: PASsb}Ywz7n÷L`'qryB|8‰ QA4:'G&QAWTmdLN!STZN . )j6 |2CZf(A%5'Fڛ`3vyX^|z<]tN MfM"WpJZi}Кӄ<ݪR qeS9t\$%o9d5P5$֑f{^ 䪝ذ0_o&C̐ۄ"RUorJ!0 kec[JZɼ|96UA7`WO/*Y* rT )䄆wB&zQulu.p"Ur3]֩/l^ B"xPG0yǸYgtծb^jeB>-JsV[;M;ʤfMFc` @6\9+ޒZ2kO ʢJpN,UQ:s1ϒ{z[/H˕ɱ$U ض yrImi6dzͳ)YT!QzXf 2!ThP9Pa>N'F]CBTiHgú}S4O{Lk, "mTJym !$kQFljgT,0#O5|RnzLսB\!C;"aә[i^>/C{~̩tvL)` XM@:Mxt%[<.E7m{ְk4RqB 9 ˚ٌ/?c>HTȀ>McOO\6_^Ǚ fYS*d>bS!Mg1s6VgeSk~StT.|K>G%o4& AGaI߹y}R8ZԪI^W/c6j̞sG\TMMǗj7 t$w駦7]D+4YѠ?)[}\pTa4M=K{ @ʖfQ54;S`/sZֳ5t&mr7AoUjdXJ s7S%D[@m#0 >Rx*ZD^Kʀg߇}pw3>E#Ow8D|0xJ/|שZD)|$l˲L0Z.I7u!6"VdH{0=F4,F-rbNN]iaDaU-v7DR^Bܛ' tO1a9ܩ;u.>(r{cSysBGFߠ[@I;0Xnf62T`xP~ڋBdG$ {C)ѧ56"j6F҆L~7!qn҃cZ[7arXF*Ru:!8VsJ_щ#dnXN$uu mJt≥vQof'n|;PO 7e1 bӵMfPrP}āYt+Z#4SEΜ =* T?e"sig>1* W j ZpSSn|Ƃ] z[~=t%<O#"FԒ|y;\k7Ƽ迄#ogV5_rSMO+j}1kDYRO"e7MTIмx\\M&je3yk0),\JKq+0MԓvUmzĄ̘8~ ͳlS_bqOa|r½VgfpA6xkݓ5\fiSf,wǙXcW¹PwYHI,M{(iD^k`A,w u0@N`b0w%< b+4g[J3_^I6^ +d%u|{w2Vm OlT/ކO[ կWe}wv]Ɩ")(0Nq<8@9vȜϫ Bv 79@\B@zT6 i!r]ZF o.ϪNW  `^Gk44`19ԇI n+hc?&\B 䇝r; Դ1-}>/fIMFZiJm.Hn4TQmOr, VFTþ.tim $.lD)1 iΔCΩ-*t!XWU1ہSΌUX=*?cܧl~}l#mL|}QLeI]}vGUP۝@j4!e6b.h{rK4iˆ2Y[!=kJvh_U`Şx BLǼ ^1y>3Q<&ڍ F+euFyaleZ8[ }R**ݫ8c2tCO|Hi8K ^ K(BZ1ȍ0:dr d@ਘT lLPdб6O9׵`Emt6?>g]GjlZEW]cHWNަ޼tmb/m\TQP+argy֤)mԷNn5IE,he% )dW2r: ׅHuͱIO(hFƳfBQWr}ѽ/DwIëlhu_Cw35qqe\Lޛ.s-oz$DDI,8Y!?:W< Lt=TG)MrJFfaB{Y^1xPV,φ#. apA2; !"k"W&d>v@cG,|irzؾvF#=)-+e2$kU 練rٱS4C?C2L]IIdO/7tjhcGK \Kky r#} "X_Bq ,;_-7jw#_jS?#5ĹyKs܍;67-gBeݠ d ?p>Lv=tC}w"$wڠ ^@G5jOOvu'2}m~S|# vIwRJd) ZԵ53j K#ޘ+= bֻƆ8h9{,I"u7WuXۇa [5шM5FXsGO|ukB?e_bԟǵC}M'14Dde%^yz&N9O4cYBפu)V^oٛT^/NnF״a%=J\\VŒISӨ_="$JI*-* *H`~AIsϑ@(( .o$/K{ @J2iנMadMo v˲*hb.N^D\ ])*4,[Al[7@=1@J˶B._AS{9QZՀԯ" 5`P@`vi:ВTge!z2RhuSova V.Nl&Fkp:QC~߱x= 5~oU >V>/P6shzxڃ`7s.Sے q5g3N::R#X_aRm}XvGݵƀTa*tw Cϭ"piOE6%h$AAǝBu ]4~ H 6n)Sȴ t$k3 C*f8ݧ|c!cZӅlwzP@#~h]ˠΧqZEi(o5ec^~9ȁpq6z5P8̰|g 6!I^3Io4E-IΝicV7C.Π!2l+)hU曬CU%F[M2M $RiiЙɬ'ZפoL8QIRR[n bd]NcTM(* $@d'm0E*͓x~@w&] ,>XX$7 E( tL㟧 Ъ4䍌S캅͡4d9gb_R> +TXb}T-J^!!LFv_b M֙L~E;'ߊmW!%Q}ZbZNNja6З?_F۵_SbCn=s%?4&EG]ePB$p4qs1D8V,lb37%5 #n)0 z@ꒂbwa# ;G>/^uf h\}Fzٛ} ꚩ= eo![q&\[ҨsN׷WGZ B;C몛/jQv?,iiΥσ=`h3#@~6 U5CM8Aa>?_崋eZg ͊lU Q ZeSƜҗU,jo&6s֖q$NKy`_m~2B}KGZ:߰*Walu>ڛN\2J,PaREH{5 hb^*/Fx|rGr7@ YǮ[$ %=K{2)#XQUVhN +Pj6* ڽ|| s$w#Kpv#^\_gL%I&EPr+>hk*9Ѹ2u Xj_{ĸчJؠ;[xtR܎G.Tsر K5vt˘:=WM5: 煇/* u1q5Y:ͳVO~8^ysr:Cfnci+H&U\"*==O˕8b2x3=/ɥ*!֒0tٺ9*6kEl&n&5AiY\d T$ fAV%ůs_ e.lkwZe069TIEtee;/hzT NE$$/-2C{J:R?d?QS} R;frmV;ߛA%tO]:JToF^tG)unzIG~ݶࡔ)i%茍$RoZNJU3 16"$$2L\"NgzqmL4C20kL+ u4V(iux}V&k)Cx?Dv,+dpzT]|CKU\X@_,:/=ygWҀ} \aA4i|ظZeW/Q' %ҁ m͈F,X)|So e91zI =V{[(aF nx:쳐w\}$nM}{LÓis)2<˃Ls{իX8_1r&.L1uVqlGb I˓Ъ(Ê)^H5 f|1N-CV@:j q.D T~5= [ TWA|TJ+{G͹>kmgg 냓~N!ArTWO8-mRplZeW=X[wg\g1t2Pn8wct$if=e@ oQ.MKc#kkdc×q-F8ez W2R~x |'J|ͩyf sIPee;4iw_'f|InEVF}y͐[|r F٘ /X>:|70 3ĄdOO_pF\ཷ vYНp*oT鮥B)j,Ĭ{3i ~TK%ؼyħxhNbM>Rz~&49̓q2opʭwi;'SQF*!g5Q~R2Ex?t$vZMx;\{*ՇԸi9Ւ 'J 䖠@lm$9FUMEJlU\^ }녮^UX ^!DMU^`WB-qOԹևEE="'rϗQeϹ%%7a~R/SB:(N%a6N*~퐢H ѸlŢO0b]$9I*dIK3r& LX4*۬B}&os.M*x_r3Ru%mpdw܀{pnABɃC>֎H_?kkE\?: *?!:KOL#yF[S\4^B5H˓/usV]3Th17\#fT@~KEzsת,X fc<%:HZHdX7u?1J%xVxy Wq+udKUP3QH&Xt(XqĹ\=C7bv]jLh6² ~7N1*Uo*r[ߤWҠ 1#k))w3kzToμ[D#931LlH`$;펅:Dp~\TixZpC@Du'j,A ` wGw1N!lgiN˝fWCQ Rf >Q-mRpw񡀣D99 |FJ :\IxlzֈB|'U[]Τj94<(հ+`W;KVs3 OP{j1}҂0O7Ѥ^* SQHw!†%AQgӭ24600y盾fVvo46M'>EOI3ǟ ؎sΕW4yoZBaw @|=}A)NRhI ƕW!hHc6 ,R=%A$FBȓ0P(Jv?$%0\)7 3+ Hh[o 5yf~?iaRsjh<RS Dg+0bk1_e8|rd"&r&BƲ[P9b#P]iVkžڂo9<~;Uz {@~nJj>*Ke|ˊ͢1J1 6c^P*M[ UDqHKKd.H{@Ke)2aa>"VS φat|FgPjep߻ }a|eEgB,IEyo> x84kK Esbn!w)o7Vg440vXP-[7.YSBV6El8'bKg&K0VMN=p0 jxQ`sȷPʺ!4dwy- |)>M %|/|%%>VSznڸ~6LE / ֱTNJ\~" 4Tuԑ(;j6_IR;p .Ug'r̒j o4b6aAn?%jl޾֪M[^ rRۀ"j~*,g,_Vl&ܦ:nIYQ\64TIQ$tƅOMb?7R{0$A*7V3U !^װ51.N0w?2m*lsǷ;{?"uF1Z:TzS2UdAhc֠2u:yBr^q_iQnիR_cGmq,i[dȵV6H}S#OYpJG' H&]sB %pVd|pLi]ISee}2Nѫ.}ص!,|Xn0#VCa0/l;H(ǶȣN $fЫsUWp2X)>Ttl܋O.LXl5.fۼNZd]>KljbK>C'C;CȲwCDbl0^3#mDRۚ N,_=y~n(OsX`Z H &yڿн2F+^ 4 VM#w(.G#Kdw/~VXϤ\rX+!mv 1}5Oy0q l, ]D^JyUhCJ"*Un#Zs*(.g/ڂik}e:ɉ/A MMQ922@n*r[#xLb>)i2[5f'gI"=%b?`/<Ils<-nAg ~#Րt$߼l(Q 쾵Jb *iyiglng![X XIR -+H;byٞ.`uHtRFNc* O#/<_$ԗ|o{YI<8 T!Y~gk{8( 0ѪHMԞ-I⑾} B/-l~gKiwQKo;zs k_ mU(G6o*`0,1n$ؿcl1>4P̏6I&`́ O-7ыOKL<_/VL\dWq6ZRvRT뇡a[wkSXA\PmR myB+=*N%o4~HK[ SeZ;[֤jQUIu>Ts\}ٸtJ{t]HLM\h/K1#h=0w9QLqE d ~ +НȔ'6}%594bDp!_;׶* s-/_V|]c4C]R=E>Mr> UyFnxodCR܊>:"Q*.jrU)91-*y[HsfS6^)J o欂}6k1 i R߅;V_\o1nb07lbsPfj4Տ>JԿ4n,:$QRcYWd{1?3YD_/Q?/63KC摔rw*T:M|}K~]jN#7ej"Qmi$QbW쐟"Wn@(͔* 6" H1R|PC:ÆX,8rff ("ɉV+j"C6'sHtjo7qrq9pcan63x./5 =&o孪+3p$xb䴂=MCjdy7]E>[#Fm$SV fէg:ە9cJ 2h9z QGS2ǬsaMpfj<Mw-s(Tr.U*RWC@`]&&0~ݛٱzXRh}SScP{xk|DS* ({'#ST5"WT=0;ZMƽ>dm \WjkiPZ$_Z2(5xZff9nP=|ȕF/ZJ3#X+I+iKRG[4o1n݆N|- zfV$G|uˆUK%\QCn&in/w]ɻD8Ͱ<t~8ФK+檙Ejf]*d}&|#1cѓjҎU"Y23 ate:R QA*fY2 =xPsZ P#0IY57-G 5ʚ5w49bIvh-]Tyζ a īRU`}B|QeOc{1[E<&unuE躃u01ƀɽ@$ng{N,ڨFFp8.ܬƿg+1OL9A-XM'kz_@fI V ?ta|ԅ@߬4YSܨŚ31`㳪B3䦪Z@cO Po9\c]_MC`cIa7 ,Q'F;%+r*GrΩ ihIZt @ƙc)LFAƒM!K4n'pL1 n}#]P[^)?>$:\Aغ.p J8e`g= *>s(،r>{yLv;9f۸MD9T]mZ-a^B")sɗ 'ƒQ73_hQa#=߅E][ p8hρ,مA羚2ݟQ^?ɲ0'638(%(*0=A:?Oh,FL(`E0j ϢvM ӰH ˥}kgne, ԢT{ X2BYw#h]Hgڦ8ŷ|$&+?c˹ 4ir0ËP9IC3Eva5, qЎ :vBr 'E2~Lp6@{hjmvG-2x1+NF5%Irp?4& 2J3MMES^/r F<1e.x\4}s}aĶfKybXs4 l:Dm̗Q[r,<{J+폩!l{mZPVj鼷lB2w"u$wNP aC Nt}8sqC "Q-?=7)Í lF@X:” ..6 ;uL7W9 "&>os ''ʔ7'ۗ 7)= w$;8 bbXcS aa/X[Fk9|ouzfq= Ӈ[t₪@?PGT)ZΖ d|xx"!1@ @f,nvhC~|/>^F6o8Ѝ(}>k^"xl@CL|3چU ylO-E=#;M%m(eDt'ܞD L^Uz&MzA`;9lC@żG/~IcmWRk.(sآ,_MIq+dfX䰙Wxg= Q<fzۋRS Non$_6CH7z²i|;WOGEA|T͎QGCpH٢sW)A-9E,oo0Sa֫zrz"R整V MySo݆uh0kQeDi9agc d.i" EW8=!Ue5(z)4F-Va &=>{s^Lf)Ԓ6EOQ3=(G%3zvԑ ֬M S '@<.xMcEZ?cOLMs~4gϐ<~\ S}A5ej`u+! ݿ?V#x4ȇx5EP9@o5V+Ѣ,H/]:xGM\SJ¼-TNN_hj6>gtt\iN( PXtj =M &;qt@pe[Ac'{6bGڢ~۱ѣg{ayֵdhC{h/6^Z.mTGԧT@bҙ-}a;QNJ43>ybe1ԣ *@0hΐ~!}|nOH]%gAYw?zt:kd׿F@EV;T\#dSۄMpz&[CS"uNL%c6Tz(Ln Z}1ո,D.Lyx֗:wфXwtJU@KM$N@%c:Ļ]s潌`S!; w@5RaQ٦ٕ 914 0_Ko{#Z klghp(XNK-ț%(:)D aV¾'awb չ e"x~r1_!g]paZV s)e[*me6\ OEގԌ56Eig#.32%~ kĎr)e@"ϓPkƐt%=ˈ2<^/↨7yy:Ώ5Z&u~yT3AEj:[FN To휈7i=E K͡d׊Y?[#3oP~mj*X^ &yV ɚE}{W{dE՜L. T8e,,nء{+V~_Gۯ!J]K6q]qƸn~#Ijo96쭨Wۧ mO>e<BS孽")Dir yr _a&VUЂVg#W/Df#W)do~b2OA>!l)0$/]1Awsxh@Y)(b JU}) 񵃄lhF]AxӶM'EԲA8+y1J:ٟs[̉2ؾ3X̜s='#{NM) i*%[k;@Q#y{+MWGgu&lD9zTd^[C^rr-:nh:'6R[ [y'"~ŭRL& Ï(P2y A/X[=R~#j!t UYK˩Y?$^ s'Z rW#Llh߭쭙,c^is_uT,&DB4Ng座2%]}4k4bfyst闤tИ-#| Mc&ٕ &L*&}Wȯɓ@dx΅PbfX*b㽊^ˌZu( IkOq67ßWp@K+%f_PTUYgT_tq DG=ڠc; A=v@̩'-$ˏ=kk$zĭɬOݡGdNu3]K*yD>ڻ Ġ`\dOO^?,gϝϾ|5+dV'zq~ZlB1`QRz;9 QVn %JrGO Gƙ x1ab Kwۥ)h}=x K{Xd}jPFi@lJ-d`ZbI^$xixLY 袳3ez -'͋#"odr0[= 8pb0=}[HUj&3Yp>3T+~-9y Z8OVDj`da_E*}Bn#/F-)\Y1ߊ$axYU:{L\NmcUØ؀v{V{#3 PX#-cߨu!%UfMy PskyBw{A0NH#Dmڋ?JL۽D1|Kc 5hˉ)5  Pڈ~1]]>7( P2=.ҕN]K:S6#D9"(ըb~+mj/ϖ/zKU;B?f;SWzêtG7ul$|ISMŹG{p_&+"g3Ӯ az1eINzͯT96KwPa2B)Hd%9G/: 57qtלl]O S>&qs PՒ O!}tA>`:T/0-  `ӥǾIZC F0ئ":_%1"}CbJnj&[z_ /?R1}8AX G8SЕށk|2r9gR3ǃ^^vyV~~}o9wh>|uvDʠh ݵLdM_ L`< l0sD V,u7+Kj{l%nib_)GՀ0ued D:F^UЉ[e=m VҐjT9 I3B9k.a[(KZ>cKm6\wʝ=Q$~F@&Ú U,bLT%A]N{.A??/h>b-3 \ WdgxM%\`uj s*b* u3VucRzWeOmmX4>4ZoP2EIfQ}Nhy׏䦏Q)亏X b \S?#[N#/#D's<=gzټ,&> SO6M֩Ghuo[Ҹ0xʾҊwq;.i.Jb,%~ ^qz7kvV =I3I=TkrSukH.;MV٭,8k9/A HqKo- BO֏.}< QȾ+87 r)}Xy[~Mnd ?AS;3ldCK󬕇rOjY;?ǞT01_ {{hltv{4B+MsTnAc>ć'b,)Y<4V`Wf-`_Z/ER@65fڄ!7tum ʨdOPn۟Бܻ"CTis>v&fc[4S%vP;Ng9:KO@QtAuWMe6cmnV ^T@Eh5|bM0Ǩ\B"`~Vˡz-X#8`s8C熚rf)vճ9ЙL+!eʼop8eцH]sigbs6OauzgFܓ,}/M`Q7*ĺ`n]u{Vqmd mi(+% hX1CXf&ȎS8#cwBTMTeq)wZ`;h'DzH1a1++>{Ugc\*̪хA#8#P8sG{Q"$~6e-HsWsJ%ތۮ`!Wvg\J#-4ico7w2EIeɚ .y'Ya>UJ9&l ǓT3BD_k@7#A|(О{Ip_x@{Wv Ai =>F 6}r>-\Z317?CG,xZJ$}CIˡ=KkK.C+n#Q9 |wVJ/\g2FpPoL('@Av2Ҋ6{SOȨIlOḭÒooM֍I~k=8ieqЖfQGڤKeIEDZ~lͰŮ*n"@8;*PdO^1t]w+'¦PX(8RNe2 yVD~>cbxʑzķi'IoR`\fgAMoQQVNN_rt09YjT'!#][‡hب,VD:PĪ?\pfFg&:(;jB_ٷ0,(uX<+.CX'LCs,JJfSB@Ye:sw[[~Y5V “|'X;A:*z2Md:2b FOe Hz͕7Hc{wR:nt!a[j =Q zA}&o!QҬ]ZcVݏtܡ-0B }mDVb>#񙌊?yy!@fq Ŭ'0d}\(7-c,sѣ)W⊝FamQ)f}p)d1tDE'Xf5FGiVHv*񸱄!`RZXRsD3ndQNwsäʋjqۡ~WN(V۟#bEϏyO2EW~F拋B,DU#S^EZM2ʅ!Ed|e Мv4f[ՎPH󿀭P }I+4Zpض@E} L $E-,9ctGg$p)'ܱ14N;An,;Fq*yFs5a\$皂 D<( h;1|zVsk3 ?k`d+[I,{ĶJz~i bjLĄ"qnC^Mō1i'q?;pEKXv|W) nBx:8dlsAڅW6e/$d7G exT91`Yoܤؘ@g4BP,C [=hi|hB' .R5@6Dو~79퐧?eAk,؈{J齒 B GaWzph_ր?}v3#4xKak#WY$wsuڱoǮA4+ $ʠ:y Uh3Rfپs`isjHї@CaIOjH.<2aJw Y&a p/<|-vѺ>7V:\BVSi޺ 'F=,0batq`FӶl_ zM;=Ci503e`.jJ$7.E}DZpf@Z[u=9-[?cg~B,(k|[rL0=f鹬Is{Õa󰩛T爡9h?m}'(pkS O[{syF')ktO?< gɊBt4d ! z$ŖeE4?FPtg$,BzW{sVMg]7 gqKEArVM#,]澚Fb7''sܨx *8iC|I›X 4F;?; Q%|\i`uY՚{,)xby, +kA.Ep/ZC\$OfFܵmp$z=ˤT"ڛB-R˕a jdu(`rJ=J^˴-?nϰs` -Ο ,w]fYRl4nPw3.Ͼ?ܹ#A{B*-vRN׈TŁECe2zZry✔q.}<sE 4IJڵUH)ߘ.Ykulr tCa\|[ SGis sN\Յ?3Z[!ؔ/䱖}[VcEBeqHKO ^짰}7`+J +u%srq=٭2Qe :W2u9Z, -`~nYb WGטab@I ̿J^Ui{A&-#_Ҫ+&/H~ LWfى,HNDLZk_>DjfE"YRp[*ADm6t?o,TڲRbcsQS@΍bA{ޟ0@j\^L#~E>"j#;T>YRn3)T;:E0.~;b(Q]Jl9T;qB*- ho?(o*s~6`o"enYU~#t]CmX{h𫪧opf3f*hǀ6?[?&:Oz Q;?:FT^\m^:l c۞pE8}>Ew/xA4[眦ԭ;: 캆vIj*7:,J w%WBXc-VI*sꁘ*q/*uwI& P ۇ֏-( hHa*x@s9[qBr3DQ+Eo?PxzۚޠPg1h d DA8[&1Te 9(`0S#y?TM.@BNLA%.sjvbxuAd:c'KJK}|?N>TDVoV*>=|F ؃sۄ(>i7EHV~QF>yo;B8G"EI*N~߃ ;YsK;Î3GS\eAɂ@i u.̗k& A.:jj}*_2xc]=&jqR*Ml7բ+jrGg8o0p {Z@E V&n{CM(?8M]r܏@mj΄clGhbd X 8eZ32ݫՙm\5\[j^ $]. ʨt|Ly]BYDXJ—)QcD H܋(<9/{8Gߋ͟(zXXmh7~L}2ײvu*0@g'5߮52HS0ٙd'1; y H/Up^#myG:\@tW/nJc8GE^AyfOcKO m9g2&״Ke(kӄ.3!9 yԖε-yG{dNb!nuQKs0d\%5h,4s1EK6C-FCB1q ZtloלN7#@F]v~Ucڦx"xKtYA  \I{ |:U:8Ɠ…Ah4+czsDRs`T|@'؎Qmn~[F v2q8zL Th :Wt#7;>e% D,TyCTe B6,ͥ7,ђA$̼$G)LFlQWڲ-άvE%S Ϯ2kMk@`Tf"q@Jߧ7(DlL7ic!VA'L$rfP O5c}טl|3= M jKz,)g]eܾ2*>2g<E17b*hD뤨  AlȼNemp]V"5ZXsemǿ:omU(FL^"RձvRv"qhif|V8FDfa[url cJQ_k3Kc &,-},r+,~[BYy$*$i}GD\ һV 7ӱ/l=r^^-H%Ƣ~{, mpJMtRbo_NI[hY8|{8Vf3J:35;Ŏq<"u^ږ$9D|\(dmqwCh;nty4[_ꯣM^ 9uY"g.@qL-Gfʏe|]k[#2?.IJ3XD|6:&0]d82?ph8eTЅ][5ĊD\mKsςkc{ȉ\q°UGWFcDD+{b0a)-|"'zdl_"\! 1@m=IYǖjChbB֐fzxȲRgwomm}Y8 >gI<{2x^Ll*z}D[Ny83Զn$^Ga ^d59ݝ&.`]ȑ X9&a?íWz=f*6t4x'&2 Lq]6D!YdHק^][^) C܋Q{. >%`d FڔSjbuJ~@ix1٬W_UukNXp^#tidϓY!sy~~ƒ#}є6H4,ݙ]3~4X~ Z_Xg^ސ~JŬߝ`;qO[xz^iʽ}4|F?nf\2\%ӕ84UZժKCXs<"7Xr(Al"t }lʛFdCȴZj$ͼݝG๖%G=9ΎόEҜ{BRO2EN,.XqƗnj388,d@ 病Y7͋=$,̶IʷZ,~vDmTi'ڱНӜ D8+ԩugǏ-#ddHEf`ePGu:iC[/T(u.1 f.(OxP_qE)sG_-~m -];aO+S2x8%~%T&&_YfCqsDfbcE:uilfuM};>ܠs~b?O@Op3КSξ}}V@͠g)WZgN!X_SiF %n^J=K)$ ڽNkNEԦ(wTIPx/µ~Z(D1v*h6_q1]Gr}OOIXG@.voN=ȷ]OIX5Ozw}L[ZPsځ#vA]~V;ü?a`y>1F%jm@WwPqDzô )mS{.x㥢|"(/7, ). !Q,ȽLf{m.a$mۘH-s[U{sɡ▀З_)dq- w]&pW'G>J];"W'`{wȩ-`"M/7s Sv3#MǓUP%%-k"1:(ы5CvbfF1@݇#MK!TI74 -\,Dι-DPhE zNM.ֆ6.աBI>&JBFSt|ڛ=ٮ סjTR/d>/# I'bɬ4I  JQm~a)ڳbR0t76N<'WS( B-naoD*'t%w}a#GEM^J~Nmn01>~j4wHbmt1|΅"ݴ$t^O%q΄#63$H al)GӿUe,c~zv6:Ah[[Bm$PXajFXw}µx 8g$ocj;ɏ EPtG 9}]0_@OHe ?p\|Uya"w' 22 ث҄!`܊2_Y],ow FNHR`uXIatM6$cC Q4\bxŷ ʢ.h[ƈm)yW%H*epdhYpP ^ӑL$yԆj'*mq]\u^Lp俩7OcM`U[|IӮ@>/9R҈`"-+OLc[ I@i09WH7#m}09" TJg%m`(h^ i{g4h%*5.ygL]4  <9uMS3epj fhVZƉ։Dxz)gC^x!ֵ(e0^1Q0)U[*d+ugN9a6Gp{٫q2X]Q 4"n)˜ &p*DCi;bNHܹ~{R%v&(6JTk4F]M٤P%x;\ !->+/[C.kޞ@Uؚ}]j|a,Qaի\ˍ -@rK2== qo%k\yES٦`5~(~/vuclkJWsLZ-9zUP*5.͗X(mc-x_z"8A"?*=2ɤ~.YWEʼ O#5Hh dFp$z3ѻ=;&#Kl8X j\rO!l3 VLbjd$a7=?~zl)h{>H@9.ԅNHڼ1ވcs'*dIp>huFթ c 0?Hy}:8%$vZVkP(3nG>`-7kZGa[~_!ISHϔkr *KN󌽪7qTaʆw 9p$fxFZo"FDTtw0xhg_ύp3;aSbLŻLX F4*|?Ⱥ&dF@Y>l˔,ғñ^ sS\ZV7+ QCw,c׉,G udhח^:e"w1T]2K HHYKPQS 6ęuohyo`q%.Z8LY UnHI)UCh[V?$[SNn9"nGKߡ?)UwC"&[gxn*Y71iiKW~#ak;-f/BfI j $Y#0)a|*nI8ō-{4_@NER Xm`d j$6Јyqgxtugj\kPJG3 uZV=0UBC\×<Â;B,*,VrJs_]/=acm"FrgY38F7 :g 7`SDM#Se'y[VM Yva[ CUd5|| ZZ쳩\M3i*2'$|Gо{Usn۽nh'ܼN6Fc Gx%K BfXIl|֐8%r c[oQ樵ϹztAy,~lAZ@pnqiI+0S_g`'>Gtr8 OW@싵 CY%;VՉk:y̰Rh|W!Wȹ4 U ݱC:{ 4?08)OȭJS#Q~&iN}w=<5%cunf qQĦLX*_6݇ qρ$H6Z򢐏2aڈb}vg@%ܬ2ʸ#lIFok-ʣqeN)WM׿T~^vMdsDُ9KQ<h jl ]d`99ܩShxHDp3}SL&yzE)]2px75ckfApC8zHXsVV?N[rگϯ̀+p[v*E_[xhHW5Z ,20b3ϬUbR؀S^uf9}*fhfӥO!~?eЎ4f26ur?@' B2=qnܡ48ֹY,֢u{=b6ζ3@vf6s ( n%nHsΌmWm%OW {G. 3D*&a/ uQsrQN2/ܞj8-ف/A31Ҋ< 3oC ]fb~kVWdG51mYkN¨ .YZ(r%&p5:#PaG >!2nًOJߓa贪90FS+ſ=.}t9Y`V'4r8ŭ) 9#++RK蒱 u"85n튱R[bp3&a&̶?9Si1y6A@KrxҤrLd)*2ʎ #ګuABi0V*=|zHMɋ@n՘޼;"SK KyQNWTbV ?/oKu^XhtrZ H6G>3HV)Q5Nx?$UW"9e$[ץi9urp~h"xFwuy#08vus;Sx@١E:UʄPņ,{ho$Sꇬߓ28$wWO%\vSR)ɂFx~#FM42JհRo[< FtTcPZN:hBdD6/9,Sԑ%=J@$6y*!ikJm!9p}.\a縇hgT >7l<0u ]5ɉIX I֨ NK2F[X\q6Y~Ei?qrؤa>SL;suiLyG?Rmqh0#VeQ4w8gۋ3EdGff RȎ)>@$?VB+ I7D>g s"׊W >˚i_+uboP'$8on =`V+/h#t<2%Ll:iyn,V0@#m0 N2dqOJh/c&s#rfy`?\2POsotg঱97W rQEx$) Ǿ'xi|7dߍXdS͒|c/x' *;C wS K0PbE| /pV )4iU8$j{0L}/1-ۑMЯ#wtZ lXFM&wO4#4oWA4s|KxLB۟ wOy<*hG<07zp2>FJvNŴ-Z򿍍J5$ s.x*0W#'̓Cy=t&AUw)FU`/9ɜZ&GH#B1Ygi2м@;Ui4ûNC)UqULدOG8A\n]54ٗB4Px9,*9#6BGΏ֓$DcHi9Ċ9w*( {b<9,}yEXӄۢP7FVR-s@##8!J\P\o*(_ŭ O[Ez=|} HX'Fv^uM[mBE5hkSĕ,R-F-WѶxJWKMOckU (Gq!A|yG)Hr`V0Qފhc>ٲ.? Ò9$?<兲H=$}'8S6&lQH?7~;=4 NP $ln!4D"vCV*CG([j|*nGnIQΔA%n'?0ѡoF t럸LնUvj[Z5ߤNEF ف+)~{i# xJm A 0(/ɒM$89!"u`@6CG6Z2X ڲ/$vxx}}N5PWKF۹uqc=Զ!^I҆q儤!ƉrT:fgCLPK@J跊}z"?,JR)~*d0`+ ;7K]e,kL4՟VwLsZ(X9=},~/[. D05GЩ׋{Y)|?&yS5GL-s ,y-Ce"@I{ISTq}AZa},wl 6" &wpR潐%&Nq2 T\?EeS ^wfx3!n0MU8V{xW'p/RǿF_=v֏lMqIxϹ`1ai1 =ש4,/ٻ*ܲ^\`l1)b%!SU~!HЄ$Z ٙ9Xe8#!-wiP8%gXBr =)6{GR;#-j)nR$1"Afo$ۜNQswA%LwOc-! 96FL 1 s3giJ-k8I~T˩o["@xjq}C9O=cy)ύOZAs>ʬp7@Oq|X('.T[(*z %Ԩцdlu,u>s?N=Ԯ%"R]MVPK?7#o^oFX5be~-߻K_bI*qԭw6\40n:H\2u0k5p:ѨJޞ,6+ 5ӫFSޞb[2͎ pǍC6&xOv(0qR(&"GO x[¨=8An?b#yڗvSA5hs Iڏc6'} T^K-g4~iu%kVt|&I ھq`%<7a[@~D@a^/eoCϾ9߰lY#+4f=wN2L/k5^ $JR[Bɉ9Î?M(> p;xqS,EV'fqVeZ۠TT$hǼ{~F)|J̙źC5ŝ>a:| nh(X%?"T:Cq>`NU _o\9?U~0F얕+տIs9p0<dmEx XtZ 9Hl 'l;XoFk\.I| UD <X}qQ%g g+E]7<@EQ^3Fj.chy/E[zyZ}=??S5.yhxk1(2~pwJ5iȗ u>۳Vg)t|cIE~x}n~Dx{yr>y85Qfi_uKQL8[ 3, UpgwS'k=LO:V!Y!ŖEps'g?8%y1=8Hb2Ȼe}gA.pҞۭ}y怉b6i4?4z߁[sLRR>\ <UZT18qE01)h4) c3L&݆TH6IJu$xBSh= R'%:U2UWerj2BvG ogn風;FS1bvx@tgwIm s.\B-kN?]i$,nIыO=&Hb( Zy TLɞH}wfZW5pW$ϐo2^*ٙ4?:f . \*Rt@dđE#x<|p).UP%t+܍+|evyƗ,$@VJ|<_un <.u(Js^4\puH&?\'\c$Ao^[\y -o HFMbc2z28yk95,$- ]!r>Y>Oӽ_$kX%܉a2H8t4G1eVmo(;뤧/&YN d $No^i'FأV':adpQx׳%zR=H* \fˢ@YO7z<WK:w 1Itb[ v,)*]mU&Ъե+3]⺡tv~FBkW΋򏆘ERZ/.2 vf_wfhڠL*/Oeq|S&eLpe+6p- R W*mcOq߸D .5ab1͏~>}[PfZa-r4; ^ydϨz-H`][xC:)YIm9C6W<&@Ƭ[3{(zPc:e2`gf /%WJP N#,9%VQ).ozfiQ{EwQx#x:/`E,@ #݇x EJ+u ;'"rsp,gϽC`=Mֈr+/ r;׿+q(FuqFx=NvXʤx8cSKV ⼴4FcƖKaQm o ^ə[57*ZO&[ݡ4ͥ陰nHEKIB'zz_;74#\; k&vϷ)T)Dw'P K?I#D*[ oØ/XQ_g8 =tK-t)aDŽNL'VGrʴ Pq 38h\ ŠKVP|]yi#$(m,@pw~טLRf~Qh!G!L'a)kX&:,Xu=ubLw՚ `>ǏcQV^Ξf֯W6{lN/" _vu8[(]6rEBᓯ)AhեLml&lGь/ ~ ebrqP|$^3XܞDN^B_W5y7}w˼Ѥ mu^I1Vy *HI(fu9w ouf pQW[V fcvӎiig6%ն|ݤoRMY!`0ުVb+nFI -Su OЋB;bƫ6k+L8ONrax eѾz:ZxjJU(aGRUEէ~:5\mny(1C]ռ4 gxf1 +̯/9guC;ot(]!]!4E|5PD/'j+gYҽ宑I97ERO59:򉞩U\P$?v᎓Ѣ_}۩L厺V/ēOPU*EWkgO 'iA 3zA3NgPjd/=b/ד3q=M> 0B]Ԙdk?`ǭ6ax6gE,XLKtyJw{,(8=1d %ZE2Kwfjz:-ћP[nV+D6W8$T4$r 0iȪAҽ,r}w|;~^܇)pOo2_ @X[X%t}6Ycf6~дltpRVjҋ09,T ]u<~"®-mB$%PU񭏫a` :"91Жv$[uY*.7OȰO\> wHB̍oaY3֖Rx},ɶ |9FiR;km)35@a|TeU˅6!]X`ke2+l H+v;1`бeLazm䈢h^ ,)wD;==4 l]GE*,_V|t+\@1٠{2M䋛NTF&zt4ϵL "e" pzz7Z!_çqՐ;oOYNe;=v%] \A@g~=DsrB#o)Q"Y#MM xm.UĐx0;- ]@u)%xrv1= } VM⨑SS|Cr6V~:-ч[ ͦ6ݛfOwQbQsߟdyjw3ĊVڱ= F: B$Q)OGd2(濉SXG jTwu.qaAaGǦ ~Ch`%sird] 8ة;&M7cR_ܿ[`<5%Yi9Cz5D(MF{SčyKBP%ʌybyT DU5qy/|c0oߕ!V5YX3& 'L !jhmpXk4Ta5op}X]dXΖkLznVsu@iF;_qI( 1/*!772ּfP vrUo~Жo& wXiiL=kAsE H)ôX$]#lm;@^p]ۄ-꣜x5M$<~4OKW>j 0n*HߞwsYԋE~8N.ߖl^ΥM'⓭~.7"xߔ.5O!΀2-PDR>|g)_#*;߃;?%w6mQز^J?UşJwf[i[F^W/(X(]"?%cLg Yyh<[8c z\o0rn2cRI0*sE_PPz1f^0PEuCI ~ xO3 ilŅ.PXeȸBtbsT#ctu̦7Í{M$~jaHҼ~ -<7'͋)@#RjZVޅD22`/m6B$ +Yha\N[W~D9e "ZݰlHv'K ٩D>xMv*dcXX.kJ6luApQ !'DO @ U#^:9  >ˆknGxm e?~'pA*";MaIO<"OֲRW|Oje}SU>(!(笌r" 1jpdk.7'-uuocZAۢwg;<utEZT ݕp=uwP5nV%/uMz2MbV][,f'Y,4"G:U ܧAH9Ijn 1 /I QX?`M}Uk[TI!h @I L{\,1%$sV[|0.U蝾U%|ÙUǶX;L#w.5NweAüQt OviW5hyΊۓ#q0 R|ws.P2-QtB IbU)|TB6~D5KAR>%RQ|eDY:U2tHB'qg-Yb O!ve3o^#EŇ.07n"3L8M˜S^0QN6FlQ i. /^Ba^>_Eo6PXk3,dܴۖfvZ`T{bh;?*4˴ ]gYrp%5=\ыx-#uZ dg? 5eHe GO֠O= ZfaP[DR͆gK7q-*ϒO~01h &nv;ܩg{ۅJ ?V!: Hq D^}s+#aVZ5 {bS`ig!9Q4IeE8]P])M6 oEsWˆt? ~xv 2w }1'4>RtVƊ(:qJG9W8hW&s??QZ(!+]y3<\(vVݽ<% ?M;&5> q;h7 tŔ]81T /r7i,g9dqb(CL&Ņ.b=(9BR߈jZ'Ƶer) nU !?B&E7 N$}a&w0Ca;IIp ~dPu&ի HR32+pe3՗8Ւ)Kh?LAUlo+Xb=bF{ZR@DŽC-C*VBz[oA|Ma~r'Tlf'o qZMs1U>۳G K>Z nMX\zLgn|Wu{J1B/:0WE. U~?,L)eXf]J2PWf-P;Piyg(=@Ōt7_`DSL1 aCd)WhzݤYw>aI%Om3WM܂3P"..~'01RC퐓9Wy`憐 )ם <]\e;D ٴ(yڊw,PK Fq 'YCzp:: O\ 0/)gQ7&j0gkԹɳz߀)jo<e&~:cpG&IJ|M쐋g={R) H2O3uX<@ SPW]k}L"qT1C [W#pquQ[s'a͏O#Dlo@.R3I5箥3j!÷- |[T+B6g셅 ) ` wC-0-wMr:, &eyڊf@Pyb0a9`c[jbuoSTmNX][C9=h8㦎:7QS)CZ+]sܭ=0HG??b໚`#{:3orȫFI ׾nͤk$D_yObs6mPh)p\㱽G-[ CE]KJ?uL#¿2Z rIXG tTd,hd=1b狗C @k;j#̲aiS'06NwБ&D4r>W71-[dbeE)jDY4~ M1c^ \/I[d[ 8,ނ1 tM¯O:E3> KU={ m!ǖz7Xo3.紐IZ:JyGyje3Y7Ci_-0Kdžfzp/#h[O zB':jmU֐JN\MQ&Uh8d' `mBj3LR!#Z6 )cG%R|Fd0Jy htV8M>w7k#>1R%R+5#r/&zOI`:ɫ^[kl$Y6DVzc% X/RIƍD-WQƫCRgx!UE ">CsZ xT?@"y?#VDG{fnK.E;!TYϲ_a$Xo!kk] ,нs< McV.cS_6!e`ǖTiOZ,g%, "|A|јKT^׍&']\M&C%RY4zW%wy-WAn(l]>!3A^yT;"-E0$0#NfMK-txL882[!l 41ÝĞz@d͗0Mn8!k>ȭwɘNMod1OTl9N"#:OR5& 0Nѧ%ƊG79,GOB%"Ŧb7_) -$j͔a <۬|c\>-@0*6 B$f4V&C4^+`oph*Roaj7rʥ1*j]SϏ jmQ%@>8B)lb\B ` <"_UO p)qY`_1e=I;k$s!_~T"cp0xA4F!gQ2Y_к8@o_V=9V`$й5B{oUGΡ?] oK.2wV2Go\Ʃv;m݇iQmS*bY¦eS 2k( G;L^i&FsX= h%[eòƄ˶)ZbFjnIn}sGEyBUְ"˽s9~wrEV: Ld soJ_FO&׀٣a/ ittOkH 'l,2\Xp, TdhK%觖W:AJ3 JO^٘*6PP;$q!u@c3[G/Ͱ"e03nMJ53_#Vt8&+i"I C1Tޅ=XQF 8ޝF@ x}(g#$w'H\(ʙYFw6Aca(pB /e,] 3lm{ t_o/].N3( ׬bԫK: J Zlȇ҅C',&*i(v}*72JȮMK}ˇ)z?L3.4eӚ,Ӝ/t/nlCn .N_;l.r7XJin#yH-;-]~ 2 '\N@\'B4w*1Lk;NP Okܢx9)W)b_vu1͹/f/%m&"p}#Q~Wy>BaTomb܍(j|%eBI=vUt $p$+oHJ V2>[.%N3Xv{^UTsz&K޳mL.|ԱcyF_'0 {x=d!H K=LȒ`1Ẇ'#"I "AO)8dv шXeBPWA0a`40g x]P8bϤ?  MCgQ}f*}H7nwA =k**99ɽ> Df{Aw!pŏ̾l N9/1 `&4WiaЁ^Sl1q2Q$Iҕ255@i@1$% +%sM2@-`BSq!Nj) iͥ;UlB6k;N;p>spl0ȱ1B+ZI֥ _A_^B6]<2ѷ"1Ws9瑘/bډh?f A-]5uN2 Vo)|XG۪pZE:)L(5Rpx_aW*5vO1eS6TI0 rfYC 3rb&}?xnDvKאk4< td(6b Yvk]E9%8sdhú {Wz*D:r(7w,/w"TAu^]OVӅ~~k'^DR-!h)3=du eSoQ4 zuCfq8ec$.koN17D.z~(D/`̪Bv^{d8$@/g||St0Ȁ Mydםjשu.<,\&lw[yv#01@XV"=B#|BdHޤ?#!Ȗ ؾo38ԧ݇$ d<,Oժ}ɡlWj~Ԧѿ<P)z <$!Tj /!x(z!(BUk,lFzx~Bz\(}UFv|6wk{|>ןh9̪"GĐg9=dnޫ}9jp.^:H:'ŶL%-|onwCp{-ZCm^XD%{iKn\ =ޝAϒYq6H.nHJUY_ڀ"xLn<)vV㺓h;ŴiƇT 6{zUp ? /C#N5DMXlfF$|*1io /WI4G1T Du3"iGoQ,R (v[q `X SiֻJ5r [O pE/(=6kscEPyd@793fejUqbWoΓ$VqY7}v&:X,rR"AtҜ#BWò1|zF5_QjBQ` 5Dk21)H)G&] "` P;ytW B!qbR^n sOx ,Ylzg9sӖk4YӲ.I :i %z}K2uC?J;@1;t5Ds2ZC|Own1L?ӡ`UQWTIJ.4+Pٮ-TpQwQZ!Xvb|CЍ٬{G{uH̍[33Ae࿯̒;?;FWHm[*9uܞ,HL<;r\_2VHTS֢7aD7c~C s-q 0pSֽ3;f1VDB<4d J|Bq#~X~elόɘKZfG؃ީ`O$֩DobLas:>u>4a&/yy=4^JjD;h0Rv)gÄuxˊ }C0Y)`Qf?QQxy#l;8l=xD? zS}F.Bj}YL :ђ]kS!L Ի ̀ I)'LE-;j􎇬NPCU`ʩHy@Ҳ;:~HD-}*[ ?EצoX&&}2KLL 1Qe(AtPdsj,oQ޼J߿ gI \ylx9}"<mOn)݆]gĨqb _/߀ܣBB#ObyHb6, tCK$VYyz ^\ &[/d|o <ox@L,CC>}M?FM 9,KXq*'$vF]b_~uKm? IAx'1fz^+Lݬ]u'=0eߓSaumK*% PddD(4YԄbd|?PaHIxB^vkxp9A{;mY- hx 좚S#ŔKsi%i2VQTRZҖAwV^Ņ+-| 5nxZ~( +ñ ĸV4t FWak%M@TvåA>p$_Q= ],]6cfرjø)U9~XDu&VvYs% TQqhK,~y`=Yi#6);cZDA7V=\omḑMQybW`f>,8}ӾR9puj8ޫm<+Q#$r]A![Vi}$E YLt';^ԳO^&!]B"Zq=%ht^XgaV:vHK=jkcK`W6FīqO~zoAb02 &>kfF͛ZbI3؋;q>羈vFd~6\~Z(l#UInb\؀"E^SkX埆T:fGWٸD*Kqr$]=6grtŠlygPӏ|BZGQ=Mbz[mY*fB57-n|ͤ#ޣ](Vu!{p}H a-ͷ8P6fX, bt:Щ$6ʒGеϫ}_Jџ5sOiV^oUjB-!闶ŷ,e%FiuٓhVL=l|B0|XЃ-d憝aPaL"KGa-B}P?aM3  '0)H>l6x@v_L"RhSqPȡ zc^!^Wi0Y[[cܰS5-`Lpl ,cĺP}1#I%ޝs,S@P%G.fjQp0ΣV\q"mHexǴzmxYW^kmRPE) tOᷥ 2-rI{_N{!Wt&ӄk"RV)'@d-MKdh5ym=wo[.IKP,a!}oF #SJ/$5 XG  htQ^ЊLOxozTPFʮD-Y>"z1Rw^"t3ۧJ,Sn<&(L5&7L<_(T>hRJvsanvtz|.bɠS.:Z;!rNY.Q3Mb(Z#-vKuLnRn؎zG1מ72<7 ̭f ػquQw:bq4$_~ (dtzv0r, AK%Gc]`~>5vf\sؙs9 Ơ&JDĻQƳo݆4_`0X-w^ш#OPBz]@ cxgl<_ _(r;'%ZM .zPȵ?YTs{u=dp{R8cPZ1;v-SϤ\`e~g$_t+%BV8~jV!D qFDbfO^:G&j@NsE:K{ߗBdL' ?#4pALR!85ʲQ! }h1n0`fX*FN(i̦ YnIs=3_)Z[+_͏FyT Sr%w=} |`M0p&!j{&?(saVIjpY*_>Q 0#?-s7†o Nf+;C9]Ofp?0=&9Q9P!m iܦ%GZBۗwލ &Q3'TLWWpf 2ZSQ!}bnSC@_jV3m.vVن Y- '&~7kX\ 4P20Lˇެ?䒼=(Ef2@Enؙ4~ y{MTu4v&I &.s"cֻ@؆d F5Qn@4K 31Ek4櫪($sd/CZNڝcJ+ɋ^_mLYO lxvTN?e;zBRhһ<`@gǤ1{U>>64 4{"s@VǏd%(&`p.}8jI]QϷ OQA3x ! 7ݪHrCOa$7v,ݮ}*6ђ(uo7cnHqV`Zin[dڀ _HZ.R:b@t'94&0FIUW*+VzDW]ۊuPCH>$Fm3D,=0{ s1.ݠ-ͫaN=)ö:T'/~ 9ek2jnN 1gBLWe?ߤ " 1]Ku0ùF@nP7i!1έ/x|.;xWkYV18Jچ^G\FȇC= ;IBvCHcL\3?kg~U: 6W"a/c ;oiW> p\1͒R . `ђs8oJp} }o,I}gT]Bm!Ok٢UPu[ 6(jbb#9vϋ74x{s/ Qpy%xC B˃(CZ~`Ԭ@kmh/i75'V}F{MIL9Ul\f%ӥ*u1*6I}xtRӺfT-b&uNZ~zq.?_+H7 #!߀GSd{b /~&RFaMe?YB Y{5:ilVX>}z|$"6YV>@تR!-=}?R ik"EMp|_%TV\m R*n@*: E3Ӥ+[(zquM*uWD=} /NPBf㵐?\)Z4Ja-n#{1q'o^hJ[&+d~R%ܖbW\h'fbJҷ Z(ZUB_;Z5=Piڮ^i _t%{5fbT`iP k'LF`c6Ed׹'1\t*#rukiuף[h#3qI;'dӓUA^J&hj<KdYrA"||8p\0vۍ`2ney-Z]~w•g9צۢbϽ2)P GRN (Gl7=Is tGxl`KA^t]?GML M~G}lPqf>_Tg%B.ZaZYZp!Xϑ{/3?EҐ uĽ8)GXQiYN-{0A9ʔ̛B^k\wt! %k9H54tf (L 7,gٓtUmր@Ra!'`Y<ɿb؉%=|f8O窩>cJ]*#]Pxj։W>AnH;߂,Zف&,?eݤͲ E=44ȷRCfoT _pp/_ V+VX}󤓩[žaD!Ӫ5|0F~+fi\\PjBmiewqQQ <2h˪Ghv\(>#ց _;YAL8\o,FqIچ S*]400kDӌ)T p`zp}'Խ,pݴKPr&jWW/.% (\rܯ]d*!~FhO@JzK4N庥ml 9jЪȶ t)7N~jkm\^\_n2_SqXs_٪1A>To<.lNþ5gۿEESAɭg4 UuPD7X?'X;@R"'ih>kCFVK{97AȄ ̇`!`kW[I>vva/w@GG#fCyzyrUc.HqJnqFoi-T#k'r}X,J됲&kT}./Iz5`v4v7 {cRfL,Ԛ*׎NR,@m+sB!~9P{iδ":ZI gå+HFPpғzupjN?Ec(Tf4v%~,gF&+킡_ =DPy MUqxuJҧӌqlWP3|* ȅRԺsY}WźKuBѭIӓYq }p^𣚬 Ň"=JP@\IZN:*e@]>A,Wp?9g,t^Jv8;U6xJ7WQ#I-2A 145L݌-'d}8OR}CsRIGNøCܩk$rЮGYJȍ<[^E6<lL))ovA/7u7e79uIGJtmD9t9X n0CBS-vf2<:t 갞.h ;._:D"%*qqu)pPp{G:)n|023v^τ!nwrz|e vF|ċ/㡩~溶Dq^x0=/}9y[AhALAx|f^`u8Ŧxu.+ʩ&µD1b IF'd{Nbe! u@)[g[sRUtNQe̪waR`6Dj_2t#?&Lu$4'&V&tr24]㩸T 2vʨ֟N]ɄKg /j&X|qU i3 ;J0;wK)ڡy߭RT8RE%hy*-jT.D/w`3Gb<"i^LӖ}[}wJ Ţ[ eMdLD( ,PΞT˷dO!`c|+A}#޾Vw6rn 3P|5$fb ?s9Rҙ_לr4XR&K=m5ӰKq~ʐe裎;3UiԻF"n=H s<`EnApuyDNre;i1'l5QŇtKS5ۜCX%eRGooXgT6${NaYz>U }`_D:׉l.ngk&4~vȓ$|kc{lXuz<:<͵x8kuO }޻Dc9!uPOUXFUmcz;r_ᙓO4G;5X|u \4m}uQIt].t6X > h4}B(=my,Rcr7rl'HYd,ь,ȼj}Jr `Rt 6L6H;z*O?i͂ @$KJ=UBNloMnx.w9';?GlZ%M`8 ֙w yB$N|Rc]O!$On{{e5*.uKCKhGn|\en!`{*#]MhYJ)--(#"=/ xENYL[\ۉG Q3(=Z-"ʵk.yE*ّ>JwO4'Qpޞ"תw\p3uZL39 Zb([YPs@%uh-unK'͋/.ت^hGG/)UV~/q9(y7u=5w *0"j_f`]꾒wUP#%nc5x?A~Mw K;M@nc^Xj3E݃z4 Rh'`^%|}6R+F2"5Y>~k͐\FB_CݺGm}2XT4@G$ #[.{V>ye+ezs -m[M[*^,}!~[r#/ޡB^Zo۬r6IfSET(@1(gUűKUx}Ȣ_¢Zw>ZI)h5K'4 mr$Wo&/ /ۛ(V;ȒCs/= D)~" h#s>K-XHmj Ygܫj]T2ķʐ^Jbl ,aJs.mVRia7{,EΆ߯yR="Wʹ6/~c#;@Lv8EXsrN0\f-]Ҥ.<ŐBp6d$fDfOp6zJiT:ɳi%TOXq-> ! lЈ8]8ه@rWJB4_BܠL|R#uhحH;N>4C 9Քk3l'5?{t~Q Pb|_m-#sY:A&S}M{kMEK& F[ ԋNh%-H,"Mæ6)N@DöފppGSLc5؂p3Jp'*eC )~KFn UxZ/rE,p S]QÁc2/y9peJ|KoH'`gm X=3+5D v ig#׆bp0R "fҡLV'pձ^3^zl1{ NY#c!X)8w(Е`p9n:HzO@jCg.N)~]@XFRYǩ]Y5y+ @"@z}l{.9A%_uĝv603P 8О[C {"q!A#xm䤐z:=gK18!qV2)~A 㦎6=8(?ˆ~%t9 Dm K%p[0X ^@Jy|nmv=ߥi;g[bBڟ \w֕48NM~sQc}!ySbNqэ#į65F63\XU h8cII`!=3A.tjMwUҺ8 ;Kc)~@j4*좹ĸB1¹kM] Cz vv%&_kqm cc$X*IBԜ$[R F_NgޕGA@:O]-*:٘cf@Sx7٠B }b!rM).ڥrLZBT-=BD'k baI2bM'T[FL~B[zǶi_5BD'/Iࣀw̪A\'2٦v8z~GO6@`-H8)G(|=LJؑgPnOTAdq~dȀ`j.&Ov{- MIukVG&.FyX7ڟ8fmGQ>=i7̟"Ҿ>P&4 ED'q5b|O IHIUHq5s~- dVXlDK*ԜOle v*SL2*{tY)ݚPt\F]cx"~b]}P5q{'$,yv{LWNB mG 'x|`R=fϋ6/PhRH@7\dS&篓ÿz3e<ޑH%VK͍KBcs a^\DZ[KŮtNvT(Ζu|Sc7sWa&u30ͨ {/0ە ^z7XO>hcK) +R4J5=>`ϛmmŸ+vp8xF9WMֻx[{jѸ1Fn#g2/w: y7[G&)ȭ1_9,IŦj;|?;6+sjރ{rn$‚h0vjsE8p%ZB 6%Z[e0,̎Q P=g)TEiBo C vLŻ-ҿpiU?i Qi%PN(U:ͼD~;?%T8BpBN$=J8w ;œY$qEpD? (7?H5'Eꩻ| ~6~Be* fr)teu'F(Q6{-ژHlNJLwgiw#xZ=(K0C;8Ƀfը9'&ŞtToG]s[oc+/:5-bpx2#'i.2#Bqs =3Z؍є`| {88% WIɂBYDST_E.;x6drԌrZy]J5T̀` +X$i3UaylcQl"AmsNK(E3oę֬,9 TtZ$%2ec%9ô JmɃCCe8Z/fNOZ>?@ܦ9p݋\` R_xID&aOlrNpM@;^75ѥx ipLhxr'(qvwH78O?up<"I~nEZUV#/C;o-yL>zUBo[FwRE 6M&3-\{S%iI`W-y3q'L͆^ CXV?E3f8A42LWz*]j)znZf6wz.i.,1)˶1), 6w,_& k!S72Z!CT}$II8kalAf4TTi *^Q&,Amݥʿ}PY;t0E)jh.ږVNtdld52!RJ 9= 0/_RG$r1oy/L;f\ Q~u u:+p-ƤvB`FGSfoC;h 2PUvze݊x c .L6 ]-׉Hj %.TAw&&~ rXo*n3@2#>>/x/8/es"+Ww//F7DgHkbYJ"̀VYt %zysmB1 &_7 )Vf+ cHb+ވSP"Z"am{#O[2Q)(N6T"^WF} , nCjb\gw'lG%MeQq#%G)KZHQԉ@P/GH(. *i7u٠*I{L/}^}mM(Ƈ 3qQힽ8!NRK{zbьʄBMI|8Npo3{ޒ4)|쉋rXrw,D\lo͐}!'Ȉ[EXO|?d}zAP~/̑5'ey0Sf7V#Rg wiF; _anMrvjH g}>&ʨ9/soƄ|HUzkH)Z%!@RClG;(<Ym1s:lB c5koAJۻy]$ Q6,d[.zS{eFm Z0tGmOi8C'Zﺧ8M̢ Mo茕kaEIlϥD& ܚ3^]!2h,<*,{C!7Tz-_huDc1 x^J@ms܅i_n-Z߸lRRb4_d 7Er8 y5ʚҬpDCEJO-s8c L :midA;˦6p{5ОԍG?L8B#UZkuν+^xgk,ӏ%Z ?X&Ǭ؟|%7PJ&UV 4/cKK3 1IqsarٽG ]\"E7 1 ݫriiq$YƍZYL 'GxL Bo̬ar%{DʫB~)pNZ'қN"tr*w 2 Ԍ03gyZqVXo;% vF?5z}"pf6qV]$bXݸЬR}5ex1\kjJ䤝p\aRA {2<^xsx5&a.~0'u3SWWBY? 1MT} ܙe|FXU&khCAp}%a"ۻǿuma:xUaį[43ߔeH^7fD6)~,ffB?˙ Q3;zZEepNAF^ Qrl4ؤy/:uЏqLSA M#(˹KgP7H=p!H/f`>M$*Tʼɒ=H\"fqy8ֻd)-AH.xdքAUJ{^7\6 5/ʬ[CUJ7rۧc亣Gm^hzCmm `@0א}Kn]q@4 L;1jFw4}NydSVܞ]3O%oQÞ  :te Rì)̞ҕPJR^aō̟cT\ z.Ba T+,bM@r\%62$HqiGŽpc5-<.,Zn}dzhnL~+`MӦb%c fG |pLq:B3n!p=*h^oS/ihd/o_jw$z}տ|&6X8˸ ";L1=QIe-*<QP{n}JK9;3=Q|oZm|Aa1tz.er|z ;*D</ȁ^`U隡KO"APRFrG)":TKo9)04dS{? )jQf[!,&{8Vu*U?GA:'tye`tlJo+pԽ'h{BHMۥS>FF ֞ )TvE7˾q ۷9S9b-)B"*QNץ?aWg\56NǨ< ^!)N}wܞ?b³V7e57,70I2gEh`7.g8DLʷ~_V8N#ãu&x̶W:pv+} K`hD]XLOKؤ6iK:<7ljRoGl\ʟsK/m$U !HQ 5\v DhAҊO 88 *KVTgoE`ו[f|P!jԾ$MY`pEV8]mDڣWʕP #}Z6 ~tL[Ψ o_X;pF>xB<4tAJĘE%뢻Chsh 2o5 {S !0`2ӯae37^4.:ˍma":M?p9'Ynq uzO2bDbv0Gzڭm}͖ V@L){FiM"&ĺ/ԤL \ v*@8ɧNIE q1ұl؉P!bb5F5AP9`+I K>VĞ4{+ɖ*4\n| \H}uz/'zQ\įWfE~/J2yޱ6W Z'K(Rf;-SOʒןw/ʊ u]tihĺSpx('E:P>lX[R n3 y1>eV'_ypjQl(Vy-CO1< o2R'ULmsKgd޻fzPz"]UX6fhWɲ{YN 7S^MI>YrON?D;GUա]wNk ޳|IE?WbxQú#~sˎX2Hzև*۞%!۸,P}hIA0[R7Pukx OL4aU$|[lӆ7nrAA{OIi8A< s]7="i("Tp/ 9|tczӨ#"0.jw~V|̳K0+USvXځ'Ո(4$l9\v9#4b! 3p\t1i[Pd6guӅpDw$௏9"ٖ*o3*OTˋ[yf׳`۲`A O&l+頾 b"%*;1fpQ vzނQ!Ɨ/`ݧႴ;xɹ5 8ӽ^P0&f$ȧ!t4KU˘0᪩yDۛ'<VmBnaWR7` !ԧFLNg:\ÕkuD>-J{|)| Ju֐=a|j?p}oGA'MvHi:zTAf" n; Iµ׶2RCA0 UOmamw_հﯯ%58jds,֨Fktưڀk!WY-70isȷȽɜ1 ϽH SXE6o-reWQOBlgʭ3 %ZD^R!M,tXXRLG {=[ReBpmXRRwf;h# z"1ѨcU<ohRLrϊp$KtA_w&[UFGiQHTQ>M0FNjqkkS,#Y+6da䵆L(1ų}uOJіSAx }PI 9KQ"}"h^á2`IWjX艡pO"axJ Bm FIT4c*#((rpQ&{ f&rΒ/(N~5LfPȂČH3ƞk{Nox?[QMLe&vݒzc-tQ:@$ǤBѿltۤf%lMk'#1c>x:*43CnBWyj8=۵5PhsxI/0d-tSn\.X1ޛsʅr/%,4V7LbfXJ_%,8&g O_B:1gxۏ5TkXJܺS3%En7t(\)SȟVmy^ 4N(w I:Y] $F(5ubN5s ㍨ل_0u6!DMZ۳昔+֧:7]QMa "PS,Vv Uh _Ks^>Zy )n̰7^/2(R0ωda t+y*SПt~Ckڦo͟p4"C*D !o?KMfB/Ua^vu,]nRlh`? (NxtVVWZ7/ nnKa˂M"6P An ?M5o؈|6[{n ;cR SOc Li~ h|iP%]Q/ޔ}% ?t8(\Ȝ'+M⤁5.,(E٦Q 7|c!>DX =}̀<*"أjb],}ImGI`sEI0:1XAH,M"s6㬐q\4Er@7IaG[mmoHC|0Х:,I\xE2MN* Wo Vńy\QZ-c!p\,;3 [@c1Kq+J7fP'-> Ctڨi8e&ITJYֱhF}3nC?K'v=..H<]r/'] 35{K Jý+Sʳ)Z=׷Udw=헬sWu -eu*QrC$|nn1 9OIEX2iN_;(2bB3UBD!/ۖѣy?(XS,jMq|ƨ%4⪬@ nq4yRf9"DߋTmNyw #YZ[fubLx̷@   O K@D\V8*acaXǧLG%Z(7{UO^wNm۷ ;,b12@R:>Ұ".Vo3tlC$_|J iֺ%S/;۶p"4J{/BQx\77|^`㺣sM 0Hf!AImΙnV66a1 s5ms#ڏv٨{,Yl%.$tQ VuT,Mx8a+piR^в,ڣJwCIbZ0ÁVl_0 )(Ŋ7tvN*Ғq8G. ,ThC̎3WZRiwh*d`}Dy}Z+\ϡ2}b/f9h#LwNvI^:0ڍlq#:ᖎl sI d T&!S.%V^g)NIX 4T\S_`kf\ q:BxƔg¥&h.M1eVtP`h@|;YCNvn7k0Ic5L4\}wi&a@ԝo0@1Mx%_%)ޮ:}"Ɯw$n\6틋.cOOy) ts, ئHJ@{>_4F˽R?!z=^kG*?gpJ@4RxQP~QgR1GH!zPl/؁h9Y 2x EÕK G)Df\*lKq$$hj)K-.^GH\gms46PX ĥV)5W&P09r9-tfVdQCn{y[W]Z5Xb%)!ͫXݏܐ۵ckofg.8pe97:<;4=;`[8ijI=^B" AV;Јj˕Kz=Ռ%_>fd˳sݢvZdƼsX=ܺnR '9>TIp90$sgP&O+#XjYغܣ6L [PL!:9w+BZ%RQSRA_ IH6=`vV W/q`SdSDpg-L2ϢFRtG@*8Ou:o]'P<׌pbohf?eJxw^6>܈_e[5#3:. 3&MEgq4Z2TiM-(ՠr˖JSG쩊')%E%|Ieb\~MGo+^QmW4 P %Dޯn%,ނ\eB^w?:#-}SrY[E/=&XiP'.\Glo*;V'!l,!S$#/{㖏矱5[ ,FKv[8>xl-,#;ɥR+}ّzQ-3pm%Nt !dhaǣW6)lBJa_wCdmvz/$A;z۟ST(>PA 9B'_:;h? goK^ԖwkDS?,Y شLkApXE ty%5@h涁r%vJk%Wlѩj< {}ȚÄ=>Y"049 3)B'NwN#1Dϐ~G` YR>] Ur%^ Oepn:RN5s}%zRdlCj:-g[D@1BU>g=TDxD"s-}u}R2,]1hWP4 rƷqϹnjuT?ڹ,(u6Gbwo|9Zgu Gbs1*P(Pi ˏavVb5v:}G1q'rޜf\P8ipTu=>3ROʾy(cHC(\W#_4j;;nA#QG?;[Grݖ_$Ic)<pavu.GmpVC^%7Js̶!"ɦn(se){L6.!rAQa}ia/Q.[m> |Vz2mnm-Q[ՑTkeٹ.}XO4dX+ A!'"k齴vhi m\%v7~*w7~'vlldgK׮mjUp}Ia}ƺ'oPq"ڠ8Ӟ]{e췃3D(cBuk bEDGA$gaY+YLd#&et Dv)#⋡輂pFz]X jVMK?_um&;NYpJE<3.bsIFpAW> w.G<|s FړpM~{2g6sfb:eFw=)L۸QXd`>P(i׈nk3cZyV<κϫ͡v͂K&ٞ0AZ6Mih߈nTx *wA^yCOf@v ! "ޟh ؐBs/1R3AKKy'QSmuHy^3s̡9Q[d;^"_;!$Qm[=釢7}$(}Z\^8.y|젔&4Q0{9NȻ(yNjYK'Jbtt9F2tDb LdyGK8T@s~DCجFٻɎd3^xc_Do 5|5>Z.e4Vs"E8~<gWq_t]RGjx Րk,&!0Qe7FyZXO(^/ qT )Xy\̮ Y~*-+Y֩Eu@98ߚ[,!OLQ2+pD u&O&X5)^ox<[ăU/t=Uh}35!xF+`;(r6HEG?ĨT2sMlǰ\TCn5+mm5Ow!YC`Wcp.c@t㚶8Vg| Gh8Bg[wZt_%ر1V~RZ[2iu|}Tx'J _HAI0X1l-1I+ (5!Vto9$ui}DQ|%19_c]/Ƒ V}Q2ާSW+.=ٟ,3`f_.N'ϽVR& o?|`˃T!!vVL bӇص̮rH,B Dq޽w6fZ~\"\>LZ  [}V"94|t@uI`O`?1UͣFW` 6>ZSaS"BT9RD7upv{ڟl|^ [N/R5M=g5/q̗Z ~'I Qcᬄ&WGmY] 7;p4mRn %iFߔDR~\Fz;Wëud-G?XwOadoJR-* &iu@<8@S` =(`w˾)Ƙ6KI iU4EݩqVA$0BjfA=㸓Ay>aey[3oGahESh b:-F<,;j+ԑG/]b~ nH J8T15P}=>n haP?sh8oF(<ށM>*4y\P厊È@;Raڙ5YDRϬ"E B7)¼h)҅ %Foq kRHU>m XJwX^ɛA{)YRq'vOڭBCpormvaE.N n}0g3 l]:oHݾQl!ie{R0Voֹc5VYg>ؒvp&+#ώޗj&Hh0w /ȒΨG_A+ w \,i6nQ45QsfJ̀K>#isSo"Bo/" eܼ\hY`K}kSlj9j|BP@:U $^_Fn}=Vr0o1f'Qɿx 8=f?yl / WP:Zԅ;>:[ZIB*]T`oPCFsdwKV886ˤT@æN 8/@L0s׭N=r(W50~ x:W]HR`q6e} m(AJބW وִz~ٳ\VJf1ŀu{o&&Ad, N۽Wkhs11E tC?h. Ѓ9HByF vO>CJO Ip<4t`H}F(@Y<.68|)R ;||Tp@Pnd;A5H ^eIS73j7;ޯS|9ctq5[ej\  $ge0WԆ7eGaicf"2&|tpȡƣ5V)>αڤܸ0M d˸ {\?!O?ȰT!6T/%$&ڋ;$ M6F.|ul6F[7>1T%d߇L0XzaffOLھ^?RpWm1խTI^3PMU/Gr5T]859(`FMs)KmQ* N?uCkpVO p6 g[D`F,5P)Q )"EQxY'" n|a#︆i{>mJ(_{WzM+MZz5Rsɹ6.IiPi-7_5K L9%h{ u@%ٯr l{lWG22r"Ϟ፬@.d,ez<` ˨ PbYzhkΜcX087"q"OjOSȆTk#.'_j;uk#Efú8]4^L}WN@a (3f5ϸAFAr ۀ/̇>_"P] sQA>Zfp,/ G~`<6Ot)68jYѵm9)oZ)抓to@Ft4%ͫp5sވ.?I;1s}W2a%׉wH1-zd}l?f-y}ywP8?) fN&g*bd7RӱuV8Yˠ8y,F B.1* \*#@CoC1x;0aq?ς6ZkȳΈp/nLn.JkRuKwΑɣ-tRH8 ٔmhp(|#zƼZ=G$7 jt]Rjk%V\00zgE-),@qzISYkk/t/lK  -6sxORx9ZFS8N̦$2!! =o'KhhNb X.AP^OE5aŭ|>$R$ܿt7@{@X}*w(-n##ְeaqbHHY;b3Mh߼O#}9SHt2k$jt\Bh{?dwyQq66F<830opFUkoF0]G|1QsYDxVމ!>^P=6iζ {?fV띏@.PQ~cNhOMwTϣU:'#`%"uK5|d+tnlsO GdV*6$ZV/2 036:X+1# B&21'G: Ԙ)B<ʄ:*D͸!qȉoMkڌ {/T|䁦}rtM׌3߆SF=3[tÆqF&*9FPt j,5(/W0:#OWOr+r|hVӽmxMQ‰{o :9 =?p>_9NЅ*4J0t|֬z@6D@Ay>|lkxYi> }w rC SlNnpgx)I3_ 0&-]_0X|-9դN^Pُ.y0$w-UQSa$TD@nPo/a=rPHXZ:@hiL5Z>9UuܹH"䈮3SN͘]8LR27 .Qp6sM<]އ>\l`N"bZrUVvXqk xuy-**4uzeHiAW7]۲e+tSXh r?uu*W@+0Fs7p K\9M+wnK_oSNr6ЫqcYwG*[*%[ݳZʜ)遯e!gaHcb7ze[A<1dڲjzxa8m MYX`z4;xFqX=`qGxqܥ3ub>Aˍ/=`ե@RɫM QJpToٕ+r>/$E/GsM7oKHLFPl/kJL1_]4\ +]jY&);p͞^h9d[yLx԰ -.Q%\_KYH{F}/O#lL)5H2RٳMD$ ڿn$rx$^k*&ʼ=#ѤsP -?gugn\exfOPzj|}4& >WT 1 ~mwƯN #nUO`atS$CCtڔ`t;p˞4vX^(}Wwo:T QׄHXJj1Z6>03+X`Q9zaFݐLS]ؗeN; J Q":+z5Stx/Mr.5xyr22c~*CZ H16X؄[+u%L^YH#>1KsZ"UQl?.~L.HMa?$ zN֬j`1KKKV (K!ڥ'3lzs鐖C6N]k`X{RsZ *>N^_?CW0tY)W7.we(Br MA4F*UݱL0N1KOS+>B0lh x5Q`IU[/&mX W]4Q$[i,wGRp;\CBsb( CB H\tCt 9_~vEJIZe*<r+Gy(Wd,Pw|S˷!œ>-ٙF.n㽴LpR,kt/><8Q+6Gļc01i_EXɵ&ߏ5 ;凯Jb?^WUͲ[q, >Wzakn(eI'(W%^n?ћx1IrUr6:S Yƹ \Q`1Cu޴J##o6Q-~K­M5K DJu:uOX%0Qspidt03AEJ4m-2*ٖ^uxh97hi.mOc1Spod^9DZ i/x{ZwKwg7eCpvϿ1uт,1e5o;RھUF/*Ve6>0Xt/_nHY|!Iܑch۞WwvMMby92 ,Yb Nc* h?GG]ކǿP0Sm @- N`uȸN˚FdkbK|7g2E/e?DeJx`4TȒv}m5ikp|gv[J`z0#E~T9UG/# džv) gWЫ3p Ąy[C[(™oatB2ۍXL|tG*}V3RUPwŚ'kfwRF<ѻiΤ_-OrFA,aF%d.NФdzUsԻxDCLG(d`V\B39u!&/+PuO)ӏ"040I0O=\ѻڗP5L.L8~ϥnaqtlԴAFruR(4L55;C`*Ibu-kX/B<Bܹf00 ;Hm*\aZR}v{z}!{[V{ʬUWo%jݒu=2Ӵtup}+nhzq:E"Z[*POPt߿͛@0C8֍.0R\m>tN YL^FɐYGv⵫?{[X(h-2Um r^aY(y-^**3멈J;_j l?ODZixY=q-%YK?>\ucGs`nn6 '(*d1)fqeUϋhLg)Snu М$[Fs6tXoq!vN⽆3% \:1#s G`j#k*l`y[>RbU³:Lb)D]DnE_g{@Kwn}| hM%ӊ _C,EʟRZ;ͤF3^P#CC4:͕qJ3&ŦTBH`}ǵ.OJxFYeVLDEXh`nű@ ⻆Dhٯ/O-z2 Ej+^uXu;G%+{Xd*^H,@vL~ÍfuFy_隐k᭼tK5A]LTK[kk.o&Tn(4$7m!R9qyp žcKPӹ^f u}\GbKʟ,AS'Aphr&_.oGE+P³h|M㡥hz1h$ߣְ?YB0fZ%Q-`\_pEl5>츶Pgy=N^rj4I!btn.V],!kf\/ 4{)7g<$1Bne6bk_N@B&STaKjA]z2 22g>[MRp!QC޾J݁WgTW@"lO^ohZT)=XGz@>~4);t>]e<׆gpk'0%OU[xx"RT N~\tP)|g;ɓc Ap@UgC*5nt^&$ޚh GT*N3P`1%p֨A4iM_* <:,T !(bQPvٲ\Veɼ#Vf>P8s?d< o rsb ʛˑU .YuAp>zT"!2y8ye٧zb UO~YL dWm51" wG܇J^[ lv̖d͘WRx!bwQ9{ayST hU1/~> `GRAd ;G޻r<>p&m8$jPP1[uh( >1 1:=aU(Lo_(Qpk/j6qr1PѯY5$j_8E`=M?ouSI Yb2v -VrfB=sA89/%0 ,eY7 :Wķr˓`zE1zyc1 mi!i;Jdß▄i'*QF-xKe4c,R]_T MݽɅA&0][YQ{V-t\)C1ӌ>_ˋ9MHk0 mLm0W:"|Z&2/c!md $yǽzF ƛx$X?is`@XQ(L Ӓ(>p3gfrntUw7f-S⻃}<>+1ei4GaGױGk xeJuq8b 2 ]d§yaTA#K ѿݻ_ٝ䃙G//dͭ2,3S?+lѣ,~ Me!6~`xV1ʥ#V~ @z ǎ=.XUZA%-1BQqR8FPf:f>:0eWH5QـFRZ{]Kq1R6}e(Zvݴ%JIkhZ"FXV@`AYGF":2%.WX&+'6/1_x&K%|lmwJUU. P>m{= W_s$hOPAFߗf)u8#ku_u](g>|dğbožO0w-,vyuuQڝwPq(l_0f@"vʩ9cD# jPDhՂqh ʻ\4v2Ϫ1bĊϐ;ݞXqYV.Q3I8¤MjQңC\2it%QQ߱[=Iغ )u1S9Hv:ypQHg:beAf+@i~EIG&^Ae3C*[){I —B{&f-jX}'hJ.$tPMؑx2[ _`Z渌 u߳%(MGǕ#+sʹ҂2k`2jV]3)N$@nӿt5vY_q;}M@b%PZ_M4/ |JBuPyU e8nrχV 'g*>_S*5"B. ģX4_)O8nD;홸pU~FGO<f6/cӷ'4"l^fK=^,] R,CP ">S} =pcB|2G0HB;,UGI^?FtH!mK1R'` SfYt.T9ں 3!0ת /cEԾ7nTaݨ{m4)p<*"C m9ckyrà̓p6^' yY#0#-Ӡr"gE[Ci~%U% uNu OqYF(?OYC 􋇯M bԎЇ15 ג##|Gy0YxIoF yY"o%ʫ۳'Ƙ&=KYnT Km;T.ӫt41AG07fY>CBՑ]= E A.k~ D/1xIڕYĢBLns鬍ëH"!8Zxu4AF1;k*1D[Q'z)ahKeF㌕tbkJ܄rsJ3BVٜAUw2޳zUvfQD}!ˮZ9t)nñ¡ىws6.V2w20|Vf82{2r0z b0II\ ^P٤]Vظm~Q_ۋ1E+ 3%WVr6}A-A&v`}J? ?&hQUګN=+1=&p 'e'FRnЏ=nd%ݿy#?+ q o!g-ުT<;SaNfhJR1`]罙{bFďPG6mbR/W)X7)Hx˺֩#ޥP@45>sR0<~  (PB @kA۫;..IɏNFW&i7B|`P4l_X UMDAT㶧m'Vj^?N мHVVP u& ;_L2-\Z:ugk_0oՈ_IKǎ'p'1:ގmA5HjHU 7Ii~P^W"%SP)j0}܄&:NOf/}t)V:A9RKuTmذsxK>=w>W98ZnCgUC_!&Bxۍ+ ߞY ƈTNۥA վ SGMZV}64SʜGhW\`I@OHXH=f )~5ęPDG>C}Pq]ȲѴ﹂j Cb MqH?xNn:2nfKT0SY_TҙŲ.wOR6o<&˜A9dm6Ƴ|:\Xa"" \~l3~u;PҜ1K)_Ӎsx4dVjԗrgСH~Դh 9A`W驐݄{C%rb:MS+`z q"cw[ߵ\(EǓO8;gaydž>2?_C!\dyR/ׂNM-Οy_1p.@;O@h[CtZ 9 {gǠF8U o@eM;v(LsTs~pY5Uɡ'u̽mfE^"g 0],r7av\AV${e _ _l9[)mC! 1zESoCGdɂ \:}>#9ǭK+_{+2y˶vAr(k"C*ޏ57F=4l^;Ɋ/>ht;;t_2#}t3s18 A䕅RЃ;mV'KDyKG0/b!B h#m8gWVeZ e?UZ\fӟ BXǟ$60DG4iǂ +rƀ iR8v/~z8=qY9`:R~Cs L؆A J*jcկnȖK|FqԠ LW>/]q`fUK>WH0`RMCL?F.!ݡq˂oz"n3 -dNU. 3Rl  pDrfS5pj5p-&ZLm~wsQ"ODfz.:No˿DUc71ɇ>M?SjRNۙjC.ZZnWH=U:hXM!Z 3 ߾JxE.ϳ\9%cM&ę@v)׺~"qO33[\n Wȸǟy$e -8N$hҖ cF.;, duT tuB}(⿟~wofwV \Y;rp&)8D-_G6r3gm!v!PE0cVUA෠ݒ2z 1^XBu(*#;Vn^7-nŬZ2Ɵs0~@ZvHpeŵAǍ~0:5FHay' bJiqִ7Z@Ȯ{;Un?+L9GJkZ0Qyu2cbC<^]L&t6kUDrU3C?#9`pjF!^FIFXi]OGc @)^,yyOj C7hSULoL9%=Q*>7.TP +Ϊ7)'rush LKpCxLQɘY;WQ3_{vL/^v٤CJҚ8wNO~?yƠ'Kݴ5PJrM{|Y~8L#lCK@/tmw{%s+~A@Eb^WvQU0W^GcYoC*˾=H]̞Gl̍ܕK|tꁑ[Ks; QU sa] 1p${_o\Pv}ap=g(+dBng.K@ iS1rM=DjW؎Dc hW[%sGRm4dMϳ݆=jQwޯݬ`puHc's2Arٔi[ JJǠ>8=+Y7{h o=H=AZ6cP:w+)Wȧh~ݬ ;16] }92lm%V1N_$GB?9Q<5!w$`{+28hLkj1KT.aQl\nWAw>cJ)5!]DOB \V_>g=vq}Nkn?ԓ H.d5 #T\UK@ޜ3 l(.Zo&õMjn5d}W(l y6)=GZ[? )AD;QS'&;G^Q4*nхgYv*a0"X*'iAnqgiJ&P*x7X )~%{ |u|dA ͤ]&wD1@s4$3XNGwVӸIfW~]A5_njDVʻW?f .͕zo›!>V)5ơ~Umׅ{O"Χj 7DzEcn{jJ5eǦߦHKv9"Ai`9:RB35gͣ a d)+ƹ{<?#RA]CedlC\NC [[$h9r TUZ( 7#) GЕLEZ8u~B mArณO_bvt8TJU%m9-D8nAŪPݓNpi#wS#.~.wSrյÊ4ni prq.BXRa1HU`$dKZ0%B\A}O sJvNUS8J:嬯99=Xx6XSlvo@ _ƌidMAd[E>h~ZkضVk dyr$r*^Q.61F+yˮ}r4#gzUl:ฉ}A٤m[bWkd77(:rEOO*\F*ߛ].w;q;0#G+R pvuW c9f|{;x@)ѓáZv U='5|P@ՖWjB1}cZh'K͡5o몘Ѵ _'xiqc؉GDp )W9wo ?fZsybk &Iojpnt- G͔3Q+OHfVc`/2u>NLj^PpAp"[N@@=?nƗ~IiLga]\ [[ŮJ{AgsPgq̱ CH֩i H]W膰/d?XMFoɗs@*7ʃ}PAYدPJ…v6 ^fbB4%-=9 9h[#7Y⶚ABe;t=4u-?Wrs.p%I> ǧ/opSw>?77-!ץ7wWp*oi(^kFTGfPῶU0v 8 R/ClMIK͌Ž*jfɿmx'<[83D^pXI3rle,G6E 6qP549>zpfL5A潅hpAِ>f$suAbVaPaX>M3X0~_u3Z[ qģ /H {8 !eS(z,\XZFmKLF;qPf"di,g_\l~gŵ!sֲ4ȧ-s;dKlES(ZPv5p43V8~ʘT fPl?Nh3 !€On|d֭th@@QMyN\do: b/i_oh;꧚3k?w(3)Y-8m@)9P)aD˼P^UFzH.[Z!ߋPRI&b V6$$4:ܸ J6X!Ֆ84w#-; DBGcm%XKܗsyk. 2<[`tź9lqHL;܏_RS'`W&\j۴޻&Ȑmev!kdG4: ,\*ZPU5$Ul۸Ճczە %7K_t aU) f,ڕVLJNF.Z_f@`{B/oǽ7:psaz2QBj'_gF cS㨀.>H81t^rqUqqtE@b`jҸl(ݕmBwYwIbCm{"Z}3'Kcy)![K[HgUQI ]xѢvˎN_&a7/EؚFH^*9K &.9_iih-.CiMkIZ?'ߕ 롣5$z-m-U+8dR UMjV~4̚عi gb:U%35 3UbEDa5 IWϸDs +TĎ.ah z1n)70Wq n蛽S^~}<оⲞcaxsɥ:^b!T6_}K3n 9/s 31*B`$e rWT*w= 4^jpKSJ@ KY /-]{7BXelE-x aq=f2E2!xjeL h-="/ O`dc2$iWUTUKoIV#/]>cLPU]Kr9жba@d-mm%f8oGɮc̚L4эmdr\TL ךcQ(epY}͠'>c/p lp Rȇʴ `1͐H +%O7Xo\JBvze”&Zylc|yrYuCoXoY#&VpU ) ʸIMcu_nF~d&Z_Yd>5Ϟ fD,1] HM9uUؕF!qR{yT`7%t#Skl2!ěGٱ oo.EZfat˾ ?dQMR>a e|O}U:O˃ ˞ ( *[tZ4bn!#jJr_g"fw.,bza\8z{wX%C&HAg?l:!EqpL|qYkj_g.^}+70e.OSZns-E&]`)-3^ }7Xϵޯu U4• k"NiӾ/ᐖ9غ02 zp+Pmz>'ziFh0-Q>Y0{S+ю09$/:rbq߿4g>k]-ĀP-(B'z1V@w~rGב$Ba݅Q$3Iq(g,! dx9 9= {a~ѭh%iF#NiuQwnt(?H:LJ[R߮ƁXz!Jh 6չH;?-q!>pv^8hBe>^FQФh#dF!˶N\Ę3fA<Iڀ=Kẗ0iXP3km/W2&&Y z*jC_ܟ jw|xcTt,DUkOsf_D[ IRA-6s D`+ټ~jvq^Q6Ȃp2 rX _IQOЕ~cm1q^l܎O %[խ[KEuiKlKﺁPQ,7}B(Qdyc4[}ol4~<]U+^O3r+>ͮCnSmDtnh@rlA`{jipT.YHe5湉8qcЖri=zs^1s2*uqnHo!.p%j솾Nt6SNYS=g'"ŮmmٲdY#A¶WЖ7xpɔgx/$<8Upl&ĻY;K4d{x)Ng5.~zDtkWyE1m؅ ,.9%3F_5uqvr2sq@! 6'R_g9*j,L*+|wT Pk_Y8F%fg~mz%^|w @ᩥUnr io'!)Iӯq{mZ7'7A65݄e^XTڡ~Vk8gY8Y(jEd#ו1OY;k"&'O/Y\SI$~Uozj$y^* c(F@bmH 52fsv 2|Y4(+qNzVt|xyeT͖g\=8Z5pM㵉*s폿 g0ݞʼ\r?=V_<6XH(KwAE^g U=88Qٟ^Wm$L^7͖߰uOLo)$uM0Q `Tc "77RϥR=֮(Q˯oOM0!1?SdJh+H?N_LiNoԋGFQ̗pȍ_)cd)VtoptM=^53!sRʤׂ-ZbN@5ؐre_[kۘA]15$,A9L J͟fb^(nzy2Z>jn?(I<]_ۗ b0 *^ Y .O4%l뺓ZwE`eeȈ |*魙]`Êq8-z^V Gtp{;E'ȍ/<@$̼h& Ogx ̞Y(5`fJ %NDp r^!P?`ƎJ>t}ـe lRm[~NcLJw)XIѩXF|" 5zÁE$jvJXclwD[ ą+yCqg۾W 92@'A|%YZ]4HBG-Ep wg7"Mae[ꏮ 8׹X?QXrI3'6h$*3kA\Tȡ&/azJW ggGYRG Jh<F1o&pj>̵.U>l1G851_"v%:BP-]:r*LrwYF=ݯ7 Vn'5d4<pIZAlULJw_# (xB%"-Ɇ&Kn1DVqlkut%OlW rXՄOiF p=ٻdβz8@Ə海bȭF-> 4L wx! 39CO!F:a$I;|l*!(ƬJR{N1jf Q_:Cf1ťn$^>z%P![bZ~QtV,OKRVŖ%uŗ>Ī CEf颋(ul䯁$ ÄI$5xglfMr1$Z+`:թ,#s9 -"!:^oʻeB+g$qrrveZoWӘUS`b SC0s!Jms4Zzi>*r#Twlb.eg^cz[oHD5Í/%nKfChwB {YAElcg!#ihc/7 7(J ˍ%Lʀ{&NEɻ'߼ugV󋋊u$Gk*ɆϙK{"~&إ36|;~, .Ѣ HdϊӚ6YrĹ}%>Y|_-q%vJ@x)]Z#5j'޹usy ='*@`3 w:t!!Sgy#kbg،Q3ePڷŊh2^tGc/wE/[cӽevEh-@H!h9bRII_"LA$Aם8C@C[A60Y:*OAEyfWH%\HHgGQmқ y)( ha^A`mXnNJZ?\Kvh3 ~!+5N'+6;mUM Q׎+aMAT0&QTlň_RIGf$@ӗWi֬f6V2Z+6w~XDǖ6V=ޡ(]EjgJN' [hف½S86}DV "r3b&G4%q4TpeiX\\.֋z87k_T6ԾsDfU`|T3$,\NYdIXg%+ l(:H<ƤoS{Zmp M,fWKTu8 VSZ|9"VoHDb}g"4YU&O ќݮsuo[N7KѾ 5 p!l/YNElBAHNkj-6d#?Z_8|BkƩbZir9ddo!R;hŷC rwJ+ wr *WzM~:ڃo PS= +ҍsľO˴Ks3Й5frc{ Ab$R61hƕl]Z%)-^uU$˝QtFgJZB{"DFK ˠsΤ8'ר*S9ݾsк{Rf]S<~+U~p?|7քF׉ӾN m)w^"2IL}K(+:RԞq z4{qe"N>v5<@ӅN!Q2dGYk/8\Vˆ r Je zNjϬ%<=v,ԉd?SyWL\SǎBeoBXKf׿w(șVeYE5b:3PԷ.k/*Ov8X\bY2rDr=c Cv^!( ˩evcb zwJKS!owB€\WS)!>(q?RSB]wi ly21ůҁ@?2pߛ--,rDn!i^_B1=DB["57%_0IBTFKX>+)$n3R:|uL^9k3-6@Ç̪$a#is""JfmSKBh:sAu:c14d\^L#+;wH9ޒr'JI\6gޜk m^jzY <_V*Ϸz8KWc~jwR@١:wT8̹+ Pb%ڣjFH1Vr(Xa! $8^]ō1qopRT7ǻT%jYOw>7 TVoϚM|OOH~i @oeC<'6ͼHun={{55kG^5<B㽆ǙG]K C`Lzӡ7XŚBqr5R%?c}Ȣ}~>{IEUǡY(,>v,ofW͵6|E#Ʈ !i;a"=wԅ^7HcykbN]^ct9f>$[p]rHk,LEvKF!]hàe{BN "DѴB}e 0:T>"'\1k1,쭚w?]b;P!:\Hfi,$ʷf?FG:H_Z_Vp@`auITTC(Ya$mZʼ65]bTP[QV^QDKbkN4103\ ?|~=Ͼ _v4op:ۭ@@il](hJ6 ezipmX>%c=; t?o6u&}XC#!5EKT{-bW}M*^xiQ/quIKEf$ C'4S1E,ט ٰBTVmȒNZ\\'+bh혧g|f1" 39ObM% KBKLsyRh},pɵo-8WWT)f V-Zbj>$vMBD.pI'NDw+$W^eUzcliUMW fxR"$茤%JZ՚ܔڔ?_1ଏNglbpφ]Q͛wbǦ3;h dW|B? "j-+_I-'8]~Oqx8_r+8 CgLSWGNr{SkRmK PY[SLoOlg'Z6@T1 !~( 追Y\rjܟN+ x&`A;l}?{hŒ| Zzt!>LCuH%,?:|-Fhk}>ėO|I t wx[s+x%~wW$kԆ1ظʪ/ò$2B1tetυ8\DlmĚ#q_8؈d~Hsƌk݇5Rt6*! ̈2 AfrPbi\YعpP? .dVp싴7!7oJHr骊9+.fLآىۿsA4cܖP]Ӟg"3f)lZwrAI^`MOcH$ ?!eHuӍbl9Sa\5*)·\")@GɠLgs’s#~X,$Y1)K?xQH'.L}Kh} ًKՐ咼fHiein qz$OM.<81~tHy+oo!~=)2K%nC %~ˬސ,`=^W;!="&V%U1.߭Nねwh1̬8~[,"67 !pCtPbf2FAB,6[ P7PlC`+ 4E+1BͿ0H;qWB\kȒV pu.=2GFΦ],\&e]{ ,-WJɞ6xҾ*ta~N0iNFPE/k-Hg/2KQRmjå'L! 2%1!`Yi qbl'y6wJ\pj(M*] ȝXGҦ6qaK-dz&WG~ӀNyZl8hj8$/ 5Ј n_S6hVlXS>9y/ !]zƆ=)9/؋XYil7Qm= Sv'l@HmhDHf 5LV3&מG^颗~@ 8lҰ=nd]袜8bkmҹmY?dlWSS$;?kM<|l!jޡiyV0m(Գe8#jQٓƣ0 [ITR:-TsC6_r:h?o~Aa${Mm5ƣP *)LW>=([5?LT݉*Q7mI9(uZq,>`h󾽿~ߗC60σUA~<kck*^?܉(%;BޞR7[#!fW DyywR όR{P]Vk^` ExUB1(@p`Q3hHa׾R1RK/8,CSVWS[̣{1Wf)$m 濫&X֢Mxr)z6OtQ >C1)N@Gއ(#Rw%EP1Sż:Ȭq Zq |Fss3sfĐgٸ˦NX YW|jM˾ZP)xE5pYnoM[KL7#Taw:-&&WQguڴ| ~Ee^qdt9r4~/NBgv8 N|?Mbj4 a?J'2zi&.[ M6(Ԣ2\)pЙo"(RTvJxpa!cje :x)ZVy)ekfLA6ӏ *#@;^^DjXr?$ cl΋/꛽W2Y.Ĭ]2`(Zva(=%NS ¬FRx , ^91v=FFlR36s軰!)/a(Ј+]ч!G?+xEBljsٚ*8~BfZ";q3t2p@ƨFTx!d;0 :Pݛp^?Lp>\](tAv+*i'gqg'e.:•Cs'JNpL>'p`]үG{VO­1 5dAy8'oGB>",\ |Da}pXcm~&I܀f.:j! @mIFyzẘF~@6i1m}J׼egS~uuƪyiu]BNt]0oLFp~PFN$䟣u%$ny4r p(MW=;gؔ~B|hpG( um0rJ2X] Ro$tzKS"TށQO gF?hϜur4.s|z&KJHo3'c+H4U._ e3`vD(Pw(Cs.+tm}f]mXZoS?^[ rП _?B18|ĮGY7ŠZ|DZdhVh> /vʦ8?^E.J S$kbn^'ptN4K(h$/`myEŪWNxZl'M0ė4HćeئO4A]>:ڬ8swra@jCw-]Bxe \a3&e& $C:ރDnvUՅl+JTUD \Ȩ:n伤HmȢi<[@%&_C~-;PlrEhA@hbHy)ܺ +&k؏P=5@ 4[˗Rʓ&x~4-fc5]zmzZ1uBC5j"S"QG͛}Ay326eqةk cd{F@)yqnj,8Lk/YǂN ٢~̝AۃQRe-VٍJ5x;Jr?6ߐ&$@3;Z}C',p29C \=6Zhɶ :f ]; _ r+@9#Km?(g1ahK|-UH08 A8e=JG]V*aF7Ť쬱 O+)qq_Ihy+ t'a8(X*Fg4FSCbAs8G]{(zqrts)) oK zMS0*p!r8hO27Fz邫K=JDbu%lbƛ\֌P1('TFș<1L[ӺaH4pU.ygE[8i&:r5Oӵzao暑`ǫq]`Kn."itD3i}*&rtDQݖ<{yDUe'X^0TpYa>ωPE'- ҮoՐ5Duhq;762p6j3< J9@т61K'?24%3"OOoAJ DŪ9-7 &3-4 %dbnxQ~jCJNm BoQ̅s-nTigDⓜ!!l#FN\~\mX4'mda6 {ZQ^N_$Eу! @c!$dHzge$6P=f|-&MuQka8zL*v@r,@$UeTZɫou,RMxLcq*AjejSl\Tp-(Q'j$4[c<](agyJxm#/ |RũeM Zrj/zk?U?NO]yv:_J[% (Y윉A^kbGkNJUo =5Ww~jN6 AODj.Ӏ8@bQQOGÑ7"P~/ݨ! _p^ZX({GAYJ@;ZڞЊ)d 9D*_h̜GA$qBGJ1Z i?,ryiTŒv({<='M/^Du?_I4~郩*5W(u+4ōl׆N$M3lj S,Yy<_P;ԉS}R~~ IVrnaҿ w#7ژ*$)2uQP*fØw= 7CQga5<`i# @"2I)7VH,mErmCY^8L3+*Y18ʫ7+P6p`јbȨJ{ΪUևe)>`\ވpp=Nءȱj8m>a]' A~+o(l;nNS ddNϚ|34 (ۡ~VR0ZR^24{Y RZF;yM`WV }k]ȅ )Һg'|-WtK<Ô=ټWW3R NI6ƶgwƺ+-k+줛shQt~V'1H$c#l/-Ь7809c&yQ嶨aay;ڈY!Z%3aS c k(t'ù>h 8f){LEJ@a1L!̎`,y`*BI,C -\Či#lA"&7Я" VK-@v'!{BfdwoM%afr\G?C4luGkzk׫OFhkÅa]zFD;2%VsMlZx'/v}"'tu~HFJtxj!p ƬKJ! 1$$ ڑ8x'X&0BD黏i!.E-"iz H$88&%E-ȴB}8TL^gũ~tmelb[U{?IЈt =&XFh7C3 ~=8FhmZަA᥋d>WyvjxI1Ǧy7"i1ꌨA&t5x⢹VX] .USꠝ{3ˮo$[ZIvgxKnWtFzjل HWSr3GAG/Y;0ּni;)DbH[`*#d{۸]gPyߎ-6JG@7Mnxggvla\-﯈c((lj^ ci<ammu)<(42Kf||sSvsmy/UC.|rٱOo"['8r}qu;t?'Ah*-**C/ͅc>fVPF!fHUt`*[x&S2e  ^FY$A5o< D9=!f:_@T$HZv>ksUXƳd;O7Sjns(}hRIp'@t {)5#%ؾFwq9A*Z[S+",9n3anQ^:uD9bZUZF}Bzbj 臯Pzl;3g3hɫ` eh9)J駋 ʾ~9FGmh"ci [3F'Bu/ʒ1V (ېZ٩D%:G:@AY:E dSagNݓ1r$?c{QEG['^$v'.Z)~P䢹&ZNoj^B{&2iv+J"'ӎfP E}s4v$ů3J&#Fd[O{ kO哑P40f@~cZGxn z")\Hh܋\fu""mФ!XߒW˲̭eyAm*.:9୒(վJy2@>\.Wx3Ɗ hxr!VzmY$Ov:iƇֺmQY9ʝ2k `% 1Փ\MJ|"m/mr.@ k?,לZʀsx/9ڧ/E|SnȲ`Xd'AGk #4nnnP\|.4/? ;:TdŇpk$~y'[G; nIzj]U-$/v @Gon3 UTJT.hJ If!&AڲNw5t.uÄwFXgzHc ^qQF՛`|WݦhkMƘ+$*Ց7h$g'Iɒc=O}"tsV:> MHW@`1܄kڅT߉&fJB(dRۉh۱] ](e] )Ǜ?TSnѕyu7b!Vt}{!Ti` &)#2V k׀+H #. >$=FWёh#o/6Ie!p={fmQ'M'Y2:n8oGJ5h2% ǀjӞ1䟢v|Wgt+Vh$HYcj< 5|2g t\`'#kJ ucU{*L |5Mb8V˖\{p|M Pr(HJ)ơFz“3 Ec#erS% L 3RM~=Pэ=N:&ԀJzjBLaO!-r<7!9ox# b34uR/=-%#8i@k/(jKa1jz:]9lFzrg|,M5Q(<\ct4-* \q ӑza,|GGp1/؋ 9t@Gݓk7fZ ?81N)0!6UFea1M$#jЖ /{}]PY7mJ ֏HYdqZ.Rޭv)I?`w$ڳA<ԍ|;)6mXk]> 6qq(/hqftYu1So9@yYM"Mr/Ĕ >쎁MetTkܬד?&Y\KSL&]Vux)9H2W -r0zN1;KMo^qgTu<2\aΕ;=W_ztU B^fbk-mN*?{ޭϏp^$@ F3:TO1@vz= B"VFx23O]# .ҿfBhqu49\#n8NmuCe %Ebr{=t3go͈5ݎNz[Ѷu ]48j ߼%)債LCo+ށp1'S5 .ᯎ k~Wz)fc"ܕ_wŃ^o}uPR靋7#KSQX<+{P]- :K9<(>îNDmoxY?#e9gap2q -X 0 զU!K\^4I^m|}lC/ז. jM#:<z۾_ԁ9@6RDVYԭ&b9#09{}K-"abfHu`O]P< Y\"DJ'r99?XAM?{:m;|ٵ+t!Z7,M%ݞ*XHK6R,kN3B|fIYc@ոz}Nho V3X80q kVL]!ÛhC2>T,z\Կ:|=%Yֵbgwk/Eяf~\jo\e.nMHA1S{̓&p*Kܠ"_}Fgď-Bh^D Wȡ5p iuRH$enJ44 :FYDsp%EoZzꔹ8ǘ)ZM:<҄׽?\S:pKiـ~jc]^AspOnV>Ꮙ+y7JJ RVH*A@VgK1f<jwIwhq@N`}-A*pN_ n._$4m+P4s5[XY>tMT};U=W6ÁdQO? O:{lnh"/ϱśaJ4P욷aI>ۊvʰ$%LG17۵li;,B6r=*!\=ٽqc[N2vyv.FE}ĝ㹏-48t#Q5=wmUcDWjYfئa|?O uM,uTxtIc#6Ӹȍ8igW~<4fU P x*5\ w]X4Պ 遇P]j MϢ/;nxWSDXj;kmQݴ),&Ys#PWAc;'h_5'YweTm2UT*)%].b)at9huPʶa& c` :#I݃ #uI MZvf*pb1p-``'GNWLOavtżX"xTB !̠DD x!qCr:3;kp]܈Fwft2=+_w]4QRI4 \ a{k%&ve&EI ~j> p(jtme_!,T.t<4y-(7GXq"fzgEcn:CI {S:tUQQ Rro*/ե<*`5*?? [>O}j8EP[:NH%Hx&_D6`isXDR79A]CHeE %42U&*vsق?p$cjGŹ?=%3+#/x6Hn!w*{ #^D5XTO^E[Oj;8~s KEr&,Qn,c55+椢`bJ;v/! C1tǍa-k;;XwSuHii7?3^Hm l/E![GrBmEXy@xm Pdk=EԻoAT>g&aiKHdӴ&y 2t 0;Ҭ]\I5cY5ߗr)a#I6- sqL ܍Hm/H@t7}v4&f0^$P+HP <`*YRVXCfeIyq˹ZFO'J7i{6`mA9xNRRHp\HA2dx+/{ty=AWMfـd~ϵ:hy,RPbdrr!z܋Z9^.1 S< ˄ _WG=suK9󓨳6?Ț?6~ʹ<z]^%7& sړ63ay{q#Z3@eZQ*ږmNTop5ϮS5BQʄ~*FelpB=⧔ K1/GK⌤sɘږ6KؒpÚhDW.JqfХaIelAaj /"H8FMR9zo/$9*-oA;TIQzԤlPzdY-%; rw]>'ံ&nޮ=l8$hNC>jyD XqiC!Upo>@vfiTUh ^JYXx\s)&fq$&sT׋L[2巟Bm3B.YoͲA7lÄ1}?$L0GƊFO1.Bm3 V-f3BaҲ[ ~G.Nq<HoĠ1Õ#.rdsic&F%"wx鶊|2D)tt("ǨP""esAͧz1Vt˷+xVD+iy)WlQүkJݘ% H v'E49H[ȃ.fZ¥Lm93AUC[ߓ:8䗖}s @.&9o͠5 |ĎMT\^5sL{v'ݻ53Q͂ $ӻ(IXRzfh^)~x8߷!?b3$a~B]F(" >ix=Ɓ~_;kW?Wȇ 5Y AdAњ仾B'~ MݦY&r"a~p(O0,pIF1DF1{#"PylM/#1^83fw@`\>z A]eoh~{Noy.vtomXz]wFJ8 h;QwƩ81eBe,r cmY`8J\cIN|m?cY3ޠ-j+-+"oZR^I<Vp֫;jhqaZ􄋓Ӣ5dX/yX=I3im߫9!ᖒm:V'EriDo۳=T⛴D܏Vgfr8$9Rv ۢ3`/Po T><@( ֜ k? -6$\1 Lˀ[@a4k1zrQ4!#ɱ1n8 A&9#ڠ9zv@|sh.C`NQ}*`8rb Fqu=1=m $ rh;JyFt=W>57wau3-`aKRC븼VNy{]N@V[(a61$;[M‘=!c,࿘Ppl"#?-2 Z g3୚?(&qɁ5^Eŕ\kXx𕺸=3UؾJ.vsm5(m, G*B!W{hϽ5?4w+ v rGGd%PƨYS}%@Wa?w2'("~m^y ?*PBn] :_(Gq=ʝ]?4vvn=Yߥe0!5o_ot+je-#j=ι >"гk2!+h4(ƜiJSPw_W4R4h5Ȱo'R`׉A>`:U K5U|<%2$Y\+o#wVɯ6e#Uwh_3xk̼U^ݴTg \_-ǔ6㍫{Y!3/+VCue%]jr4:SэT(RH<7 M5)qo *ZYHZO2NH~yQO_eͿ) J;'`[SZ]%gtqc)ȽhC،3O73x'PAt:W0 f?JFBWLrREgpAWM ;<| _X`zuY!f!iTema5iU+jpyq0(Nh!+=}nQYx=['W؆==@؝\HwL̴ )Aӈ(_QyJP=ok#Sq5Mp7B Vsu"n4F]h|]ɡ%4VR&8}{ꀵ͕gjɊDUgfq7$'1 MVvs8ˋ0xvC}ZNO!ө۠clajs&6r-hIN&I]Jjۗ)I wY%R|C0:Byc鈮gWUG@|F@r7$ MvD]./sg'/~_Df"!PH ǃ-rÌmǻFg/I`1Vz8d/ې|#"d_CJYGLTkS.b{%%@AL7ylz|sk6dЙ:WM _B șƿ\Od]XCT,yBFiZIvRBb1fכyAqANPihKĸTQ0' n *͍C13t7QDܪ.fL(vPd6xr6 I = J}n^%Jhक*J!`RkkgƜ(w&FKs*& ܾ]bf^tZ_)%\t,Ij*k"/ć,qq_&`9a}tnHJz:y[RQH>oQ |!g)%oy5y\Z *:hht28,XɋKޙy.:)zJ5NwaEr&?Q_ ~>iQ EIu;#mH&?SpqV1^gf/DMWߌɉa0(%y갯R"K>bYD, r_uyOɍ ЬSiS;V?ٝ;?upªcp=c}Ŕ~SE:xF7.(ɔihw@02k}oFq8 XjaO`ϣ;~Ff6l3+c(DD ~5Rn8m O af8´G,;t dpBGCUH\\ah)l7ӱP>`Ypk6]}I۽\`N ۝1Y;#eyM4|)J!%h̀Shlu@Я}w:twTRcD2Z''CG4נ"p/4Hj6DoB$m"G,WSjULw u6"C2)GBsB f=SwCYy?#@-R3~&Bm&"ռ-VVn{5/f0ַyF0Jɱ+1MصQjQpw._f>!x _]fѾ?HA_Lb OeKs:Ⱦ>nW)Р`)? HEqw]%&u*MRz-xp: 16#IkϴNM7egfQʣތ cIT:`!Y"z ͆i& & Bg#n:"?!SM9; E?&uüزKP hw,@@=L"?d) CkZcf mV]Z,^$Mim:4p9EA{c(Zs]ǜgL$,:uSK'&jo>I?o -g' ɮny|E~Fif.dwS+YBh[K)vG}p/V⽰ӳVOWGZp?sg)S+woy~~* 12mH[5_Ӻ(,yGi}hC15quSrӀ[5LH2$fetEgYx kgEYPlTOhK_ho%/f)45WWC0wL;Qnwdv^zƫ?fnm$O!5PK?qGlE?;CUM߈j$7eigK:*?BLQЎA+ǖ6P\^]'Btjҩ|st#Ѿ#er7Mqѓ'cViP<ErS=4Bl ?DzA6||q]MSNQh8[Q?tVAצ4n~ʭ/08RrjBǁ~G &YClJ2_{r̆K@fDy.הik-ݮ촱n3ÀF$7Y9id /Cd+`d$=U;%>lùWS?Ȣo%mxDЉ6 3 *{_ȮLn3 N߸e90&U4p]zڥ< (- trɟwgk? sZʴl8^ $5c|\G}c%1L"e`E>NИgjy&w98pL}.h |^7~3Ah:%"t.ihňELy#2|ɯ)@9o5w=5(Gbvb+8lp"!z Mqo޺xfՆlevu{VLJ GRqeD_:j3t.vZ@V& j:+]Vza -p '( uuw9dւ4Ljē~iߜݜ#hۊ;BOox ;V:!*o}-* W!"}T+IR]쏥;Hu,w.ؘ.;,4Z`?uB*ֶ2OT tx1bS^:BP.6\Het:_Wf~Mj7kWEס4ka 6;PI;*PmI_Ix7z ƻTq=G+ !)VUA>ej{90>d|0Z{VkbTr9WgdL|ICel4|solJCښXޯGOdrg]M,lsQvԷ_N0%}z"R7]i%FH /8g80ɗsk0^3$6@tU+bW00?S`r蹀DrXI"S p(b-m$:"ڈ7ܝoavjzaĸ ^ɪ(`=XF@ߔ SCUAs&1!6i 7Lr4[fBRYI;?&N6A>;w\ϖ%=~LeQL{/M 0( ]ȷ`e-ڂzArMd )ۉ3&7Tï]4y7v c`16p*D\B˖i\N (vTnAHA,7ft)^\Fј$koxA@1mCgOhpc0^W3O*u$2V.w:.iMV4`۱e\V'L>} e&5Ɉ5B#rVϐ $ͬ$6V@F wk!χzW[3SN>xml" .ixlQd\m~*NG5BEqW>l9&ls* hnHXwC$z\;AAjc u_Bo#@,'.}YZF$N_۽˙b+=F -"j0>cwSCr\BmhJs`4^S]_R[4eLC[:Lf&]&KѵIBi FH.UxHeQ;B&9YޒI7V5&1A?- 4:b|ߖFQa-183%)E [SȎ.8\ ]n;AK܆g W BL\a $FC8myc0aCPSpu20+"\q;y\D z, e>Y}fm\<8pGf0vBlt J3[RI"f{`hjqZx9Agi _*٪}Y?Y/+L+1¼iې.ʗ >ZKvin6|^ 5oL,]nnzXizW1vku4_0B2P=-.)OɎS?|Vy#V&r26 J0P%ϴɈchu{cnK6]mtCH)i.8zRDLfq1ԛ`)4x8 j(%|Ǎ'}e|=RurrUrǤڪ.!Iqņ;RvGgwYXkj"2{ )-0{cg:CBl)HOu83s˫<+j7PlL0}y{cл.7/)4m\l>o۪=y-&[,:P#vekG7gyrcHgPػIss²FN"^c 7'yQr]%ÿfK+DjdٙG- mPW$@"|*Ar|Ѹr @$6].W䳂腷3x {Q~vPPqᰧc& rrύ{,&M3@)xj읐H4>oM* GiJMed90zlmsQاtDL՞ eA.Ma&8i?9 ze r}AdK <$F6]5چMv ܀g>̣s¬@׸O7 У"N3r*8 !wK(HYck;S举RdN 0|XG=(}f&Jwr)#`[ݘuN.6̖;)ywH1>.fe(/!ZR;xMNz14a(iAGN@1NÒbk ɕ!؍KPVd'E-]󁖑9 % =mwsYcarp.{ܕa&7:H/->`]d1tܷc#LcvæmwILu OJK, D1› 7@Ɣm ܞF: Bkd۟t#VCn&J*kԤ(C7Ir1  M ].\>J:Ac2HRVWapev`XJ ^3\ґߗPZV$f~9sYS;ZG1ْo)G QQۣhmfX:X(Xdv"oOhx:q쌹:YwIw2U4YagPw0[B`@45e3t ]>:>}A[q&KJC7=#ܚ:0[cBj&%y4RòO7 L?@7zLu kO#UH|iמqQP4f WAn]~BeCm=`  ƤCkңbH(UaYO3 Ynތ~oiH o'@@]LpE.mWtԚyH.D V .TV sÀAGyt|Ng[C5#q^A7C yIК hèܧ( x4uy7 Ĩ`Q̾TS\1`z6M_&[lbTހzPtQۿ\ya9R]Cg`Qqhѝ`GcP$˒dg9V,qZQZpYup+ 2瑺?bC-[4y%o gxx#. `G9@ cC]RHI*"_%I =RB`63Z(4`F02R!7;$J^$@J4yԎ=R[.**䳬ض8r N. X`MJ -jJJw^ZJQto=@-PqpC+@z29!V >SPo7om-7VaZ.{T _A@i<WTwK\AJ҃!h!Â+яc'5yY~ӽf~@zq*'f.m (N^ .lxdw fNؑ}zar`%+fE7Ahk`Nn=@\_8i#azù;qB0FoWV$>!%Ax#w r6#XhXNŜ=ō~샾9k0TmY6G|!2:JdLU<])T-תu_r:cg!@<09@|/mХ#£(ΐ:肳2dͅyko-0eGaX*< @Ϭl2AP Լ sVtFHTqͱ:[!iݞ$ 'wuh/HCQi:s kd >俔<X3Nn<,vX#-ΠL/_g#ߦLJޙ$Yp%w9A5}>q:ߪH}FB.^%{q'^cR*Y2(#=Qrg?[/TQ Sq2Z'e{,#a yiqHfD˂Q(+ `n] PGI~)X/<(jl޸@ۋ޾i)8"Bi 2QW#v5F U8n\(<56ĕ SNQ[[T uE^GGqZ{̕y=RG(@:mlRJ[i55HxkͦTݢ*K͉"tSte6Jcyi%UЮsEIw2'@ޫ+YyQw($Hޝo9`zb7'1r  -a@YEu3|s  `Þlv0H9vh1(,ctU-x C$ 2αm?\sw (|6Ua:GUYBaaf,|)H,Zzf+6%BII^&D_|ɨ<ANEO8 E dRF|pir@ȩBqJ7M\K4O0_y,$RŦE?VBldދ⢀~_cZ;a! ݔeo2}ׁ pqm "󢯭oiz۫}D KgΫZ|rR%S-L2Nׂ\0%.(|H/fx<gؠ/h&@Z-Q!4%.AT_ii:ﶔW;cOZmdOcUDϗ=rY7&\B%jׁ;7[P )' "!<.r poS zl.aV(*na=!.p3N{`,$Jw#6OEZ]sPg{9\VFM)^l}QF‚'WnLqJC0hZֻZmx-UĔ:I3NnīMZ؍}.;z=n\:d6 <4\+b9a1ĄH#>FͯH*ߤ0Fƕc}`yzRg+CC4#LȖ1#S6eA4(kSGb9j9?m' ˧x.[HE[C ]|LN܎TjBc$5񒲧ʏX765Y,d*U`ҙ]!eF Ghq:$y~.г}% $,_uѶO9(F:g?%׃xyO4Sl7Ilju#0S)Mx MEJ7©iK' z?kBP/h&'x  Q 5lyMN;j:,oF'zMVjZA  T$1D;I<{2ޜ@ttː(-DI g9Ft#iVks%pØO=A.{wNҲ,t䰖R[G/0W[bMaC; L,L] dҧF9NZz x{j6a#'E*Uҭ[\/-${}^32nv*?@ZEdǁ&nb>R`rOw b=3Jhduw RВHƣLuMpNfk){&m9iԨ/3 xc[]14,5pvj=l#Y9M>}kYW{CCN`%!1?cd-W# Wlig*Ϗ .`^`9V RCep]]l (]]gcz0p*5♒T{PuyxTݍK%NJƍ\yۿ7Vm, LfXL>QP~3N!LpB  i'O\Yk+Dmmy!z|/SC3I+HDhvO@[XEȼ^T-3NS4ӱqF3dZDj&(]uӽXFB=Gαb(h]䍈=S|8易_*rˉ7Wlz94 6iߤͬ>G}B(J%a/)Vz;me 8LƧ1E~(_P,#'eP~n0*1DqF*4! c&}̣sFfވry&%#+˄bKo^Ci]ѝòGQP*/i%YmQCbzr~)Rԙ!i5,ş: MyL>^g)W5" G^U'ڹH%4tȏuK9I|̀2|&|Qֱp"b }#fNt`cD^@Fp4mbd4! Ąvyz'b>6 +Q\#*roQI+5S3mUK"iPF ZoM9a~cgR0MsszGUL9އ[$8HVk7AwnѡsHX5aKNeuT'uy~1QJ0L]Ao@ƭ%-#"Bu4_Z܉ hbs{[P%XB>R(.Kɏ)\?k >F9u`!U](,.ր M#]'he)_6A?b,)ǐ4e2X˸y/~ ǀ<>v99+BIcZ3 #T 4Q{h/-[m`vmѕQDI/TA]6'~ ,΃ouQ{u$v>I7_%t4/ 憗}`16Ζ( pQ.}e#"~ni.)DBemOӦe{`}(j '`a??wDG%F/ |s7j!G/3ت\J27R4OR~bLq=cei` `tQ0x|كr5FEfAWP6WtV'4tHr|ob7;eDIp+00t?EOoڸ71z +;XV< ;klfAv$;)z𯯃AvؤE\pF 6]VWoF]Sκ`1} eKD.Vaww9ԇkxdS3~S{Mv1VvIsDF(yLe|l=D`Yq730'Y<*9UKTԂpUU;%,1Ƴ\ΰnOYvi.W憚.woWU{w:2hXۅh48BnN]lj!@`xIL 1 ,yTLQж*2Gʑksl>oo5yLո_F;M{I`lBmr7[rɳ'wҹCMm4 pf6v>BpgP0Bv\D~Yf{L]&mgPRn@1=/Zy!?20J6 ZnR^GD4;XvIsP*}8GR7$1P3.#lVWC# \6`OD9ͅqiO@TCSL˖A>ig<a~7fpo9_ JUxmvLdIë+ X+9mDZ}ynh_%V􍴫?&|&fQp.>t%M ҷS9D Ꝃ ۚ ŻLj{UWב |pރlKJ,Rtm9]D*>'C7g@KܜIBzs_o7hhaT" |H%4rn*ܗe@s!&̚#'#`D<\Nh 3skҡ> _5,cQ sLځ)lj|wKXjwR3c.0bژ5swfU) r\\#6b {)Iz4c$TB%kev7-4LlA0kE&8ԥxz«b'ݞ+ [HeQmU1Sc1:Tֹ}6^[1Bˆ@)ʴCLug$`sBBIM`?8İAKٳ~tke5N`J >7$r,[7ۿlU>9} Kԣ `-L 0ׁdE+W[ÃX#mGlK&SS=u N;ڝE& ,8SjdK=òE#"gY6H_!`]>nIFuŚ/(~>.<-5]D*)pmuc:bI e4*{Yf%9FR4,uěo-ˡJzcL- [[Ttr1k]Ņ=9FH‘$iġ9޽٨]WjQv]p몤Kuy8xC{KbAjW4a9 Oikޕr³ }ԞFfp8f@Ԛ0ڣ<ko%م0S v:ϊ~a36)K7suӾ}(7RV+?HɪsN?G"4]F@ȑ<59^q$Idw(woD_(msbe"yT5nKd+}Vi:[do>ڥۉbgq5ti_'ԗ*njJyw%BWˠ9Юt*=3L&TK%8<1YyeRuj 2ݺ27)he65f\ LHʲ}rM1I]ѥ8[&D-8!݂N9M M]pr{sBP5nkQ^>[#RD!ڵM0)xZRb؛ wDb3_S8n˥ Ţax ϊChϷܣёϤ j"dxe=qsL 5S=y} c94+Ņ?,OxR s/j]}!D0cb# oQ[H|%P5b<)MPexWΡe eZ[fz ,8K[r;nt+l)+:iG, bk?F I Bp 35Kh=eHdem8lѱXAm$cpX؋uf\ˁG1IkOez:C^-VyPLoQ[vQV(9 !yzY{'UF,EMaDd}DPs慊@sKdB|*]b͵I_V՛T浀Zc0w\,b#Y&&,y'p=r] BGKm!9F>qzںӫ5C'W?z4ٽS+h r nP,|ׂɘe>iY)i|OlpфI 58siPу m罦X0 oS}j-F@-m$D#a!Y<pSě@i.yPbMŘPc/ - (V3gCH"Od rB@wAB.@4DYw< nJ(BG'CxdWvM##~NLjt6['8n CA[4;dZdl-@n0]gZ^q!0d9;ch3ߢF_%l"Wl"7L'( @[W6SbX4,-~#-2NP~9g%7>toDޣΘ׽TDHy3:RufB4_׷*v/ބ Mc6XvJ=H552̌[RA.z 5WQdft ^Ԙ˗Tu3^pD_>BYM1|co1A#ޭ7J QI{vᎉSEڿJ ӹDr h< Ӿԣg%|lh 9@9bV1ve=2u|5K?kO''ѱI ֩x9LT܀;XSK ºv[FWUv ,Z IJP3Nc9y=XXĆrW_c485҈*.i իU6P؅g3}/ yٷ̙ad}c> Rז`\]J~4wGRPѠҮߍ mJB"X}fmxyV+ٮSa\QT'mq+w\Ck'rvLq|1ɖb/vҌ,4p4&+O['6M;&gm"%'{g^f^n~XS7IK?'lúZ虼"\X f4Xd؜3jVKҌNrҖp,%.6Tr / I2[6M8bՑwm/ .y(X8ymQRͿ"qu/"i|$mΣ:ڻߍ/da#ĵŗTd'ԑ4A60H E{4"p\uoLR}Dʁ}`KXPonE-C׌dtr$s @@K__'Mvc%8hdz2_wfKLBj!T+8Q~'xN0u,i0("X ylm'}uN`Y%s:"I&WU@V-gjnQByz.VW;uPY`naf шoJ];"k7bSR ip?@ pG_s`axA/1"CX?m#mUSO'r/aa2x!B;RH`S @ Nf9c X,Ε0-M`gVjRӞ|g'2h(;=fQ{J9f%->$veg{w@0Ir(8Vs(֝vhHKsDu ݷ^d( !@=*>Ch>cjOEqUJ_lb/}6TZAsU&z @e*Q".}ۅl۵}p R!7n1<_nX}XoY21W 6#۔#'סm]Ձc1S\[K KJڌv\{5Y RC*=Smqg d]0Zt|z,|KS\7{`wG5} 9󃀶dSGxjVUU[5q􌧹rm˫Նh  =s,*Wcۑ; CS~e)ڪ+xy# 2 i*{‹摒q҂N誫>`ș7on p[C+ Yo r#Q;&FyXfxƱ|>AՎeő0Aa>ÍC:p`bG_rnj >E@HཋAa["Ja &Nw8&h!tϿ|𔠿r3t Vd0on$t !Rz2DdbJ ֡ZlVYW 1^Zb>8(e[`Q3&=Xz[VķDWNJ)GvS0Yyqunt $,zC1}-R~'b_M_9CF3c( L 48R$9ܔမ&$p*j4Ę>s)w$IJ2\+bUs^7Wt t߇xsjN4I[>inm8~Ior7SxuY3zaPhGms 4@ [UhP *8iDfJJ9gVc'g)ρI[ڕki5qt 4`iF$Dƪ{ Dm'p+Qͳ ‹ju)m!kTjMA 9XP7*m{DϬSE;Uİ7( T `3*7Gx0Jui7:rS/ʴ]=Yխ"0ԑ,V/q>_v#zqnיrjiHHbtgn2mr9MERV\A,\ZQsщ׈hf;NzUTŁ\zh18;熿)KS@Xz-0nS@n f]bŇFʵNM]=7=H:1)1ܓ/@RǷ5BBI֞ajY=ZʲuXH~%@b:3jKm.}El,%HޏJ33gWAlZs"qub;_L`ȭqs.dl4w;F6)`B4psi_JJ2|͉ȿ65ln+0 ]8Xl[=/EK{Ԩ̔ :t%YBb xuPS߹:$E%q^Nl9_g[z mG}~b'½*]`IO8xȱ-rɨ i';Z[A\Ms1Mb{vₚWK IF,m>(}7AK;ɣ 006l-+^uCcX^-29D9UdX ;)Y՛ef_$Pg )@}}Ź% XHFS#( grica`6#{Uj. \ uԿ$AQ^uH^ n#Y&v I5|H]*u$q z i邏)}翺Zq1Ť<;%=UZHlSr W}?9x?ѶSK*QkQ^EmUxĻ \b1kH[faX9l ⓚ,S`4 f/LѨi&+*kmޡOIYoʄvdtxSYn7b-ԣPS4o[}OI@A!- U=/ze_%?2ު>zwbLU>]_Fxv$=TS!S{{]y\ʈZŽϴz>S"Vp!EnљSNGb3Xgifep~`n1K@!oAv[+D]'_wq̮M$Fxis+L<@`g({Gk7 +E!ZPRJ1`Q8Qc(΍Jt<+ɝ4 S(7ڲ#%tJ2g+y1BcWi)%|JyP5ir*Nb}&?߆ְY?o{rq#x`8)V$D$f8n$g7Uj^6# !^yGY?P$IP) (D㛣.d"=e! ( ycKfI_sީ Y\җ[#) 6p=V__x󆿧lƺ7M<&MjʻY "?+yҕ$6G2㹦˦0# ~:JB 2ira2]gd8ܢt7s~mث^WP0DvrMdUgr4b㷋U <&li\]t s(XK5Kd^WO{#FfG{8~R"H 'C+"iyz"G:ԵȲT?ה6Ӯp%pY}_?ev,V݃:S9|M\[UfV,;0J4NlT8ϸ ^Q1[=| ~s|2' ݤx%N[]@㈍aB AC:\ ->h/Ǻ8栯P;?Qiq:C$U- J3佯j\CW-.^?FRG֗DcTSd'lع^/ 9T>+t e ^)?z5K1KZ-猈 z(*ھQoBsjZa7 j +[yG+b@{Z#(emPhY}U u6Wl4b-ARǔrg! vIM*t1:<0F $HFNpp ;TD>AX7r-%~{xQoZx\W}]rɴ5ÈE@ng9?'TQ 3f3G&I{­xW o#EVRJ9$ ,Hl$ ڰJߎ.R9[E 'oh|QFmg*-aUT*)݀\E@H !:{aOfفmꇽ3Y 7]/0B86Ǖ8;^#N0b-nn5-9'R_'ʻ1SMZW>p^ySBI ֫9 =g!X݊ 23p؜*){ \}@&i/L \Cl*;!|ݤКgUq`(bʷ쀫\I#;HZ#LMЫzV"Ϳ},-G/h7<9=~b:Wy-KC+580 (+KX@a-&̇vJkZΈ@y~yzqC id_ۍ5 z[wUTOL196@*+G':_ͰuȄ~x^'`3~lb~' SgDļ ~p]+%--4TA0+n?Bw ôgDfn`o8qAMc3#D!F!w@_\ۃ s< H٭LL\*{,^{zFO:hp>ΉZVP%[&׭t:1ZO ^O|\O$,T}XKeq1C5ܔӤ ,w!K֢6v/+[t.p4f͇P !-A݀?)}wXA:Z߫L\h-"nc8b݋;3NH6AH{7Ŵ7G.Y5XD9O)gim5Yb8.تXD"Ć$ù|3U@s> MrVuuk#P9TOFa9j* 7Sې߲:o=KY@e|E( IKl\1ab2)JqȀl3F9=vC`6En'ʓtyCI5#p'4/>7 ߋAZXHT8[/ wJ`Rf盔Ql2K10_eq~*XI~Νu#V2y"Ec&d-{tj9:T(6%2ҫ' h( Ju\:taڬݪU$yFr)M! 4xc} [谱,?qN8.@SӅ4>ꩮ?GEV-#o@;l*BitkL~Z8߁70jv_0H)lcԷ*eVc,pKHCf0 ȀzpeL6].d7Oq 4RVZ5LEYӹ*N>YZBEp=[sshVI%:ͳE`ń%.}\%ǃ,0l\YLgWEjX}C\CibLذj֥(q)\rdzW2=PϭDe rc1`sҖB9tLRH@#kJD-GO1ʟ05Vn/eoJYоYt"{K]~WW6ݢJCb̥yBO x ^,4Қt;z@=@ǥoހ!\-z4赥 { έpvƕŵI#H_}|H%=xH]CCth8y5U+gQP;Tٚ:`>(sb,nqÂEKP1w{0";-gcf#:4,"mU|D<$,]YF埭ZVt-r% Mvk qdh`Zz|-*S8Gޖ;gO0ʄKCI;-yƇEٽJjrj`4ީ(PvPbsD$Ļc1Gx㟅$2|]簇֩.9k\4"Xz*_%;RkJ]Io#u $0(-/ǜ_EH@l/z-{%sӀsL 3g0h'\J{lO L!)OQ RLJ7zJ?Q=oU`VӠ4 lMjtv/f!w`皆@_yxh`!B5(s!mr1]t(P!0S= BpJ]by{lqW$UK &+oO~P3NhΔ_l0lZC&CSriO-Kqфo>WMc#m-|puԲ lM̵-Qh@V/$ ])oH.6wMtHi[@i%Sҳ[dP-'޼wgˎs*g YHnt,k#~7Q_m .g{aśឮ ۩#Mp\ $0.8itƽNOդXozP9"eaT_l:Ĩi!a[`5ƤwlORJ7RwS}TPݒ D#O|`̒9ɿ2* rJɵJ '*AA8.1}vvFfY}'z[LԻQm8`b;%s>+*[~뜆}dlbU9pFҨSN1i.,3:[Jٔ } t10͓IE~+׻feow.ox/,p}(,"FEsCALx]WԵ΁ɞr~\ljAsF@vKѠ*o7O"GM!-y\NÔ 1Q,,%أ cΥ{l+}Rc{ow5w Z;zRx :؁  Jp+s/Y^R`pnJ>c2 7{8rE1cڃQLA꧀[ epbR>BUn?'.H;)o $i\[g[N8ϋa;b s Gz):. x`{wSAMpxh REOĮ]4APWwDeMViLFK\D'ƲGZ$fܖЪ]kiw SU;ǶF >cB_OKҮbcKƄ'uj'x:r[^7 %SM@gg%墋-~[.V\}U"6F<\.f:_A"+5\ YAaO=4& 5RX7:W7gR%Йp"X' Yh`@Y2ќYbD1q>,j: &YAuCv&W)$SAƅ[y!6!fnUe):} Yv`g_݉Ze_#TK5pG_1 |%U{{CWJvv##r+wtG9$B&A;:cu.K0lQ"()ji@RxX2^)4y D]!(kuDX_uBl"U,!:5 (嗝=7 i~+1QG=`.eR^ƨ,H9 /Ί'SB'u%侁~rKfA1Ҹl(*_@KTitZl?4mu?-dqiEMy(S_"H$> :8F}{OZ\NZ^kqѥi;^Qu/+$7LcymPPE*y,Jdc *Q]>z&[Z=EUkjMo ]Û5)'3*BnS!n +~y+ʗ)lPIwp+ӝ#Yz[dGƛ4r8]-p1 LӶ%+p3%uzht;#| t1%y>͂ t }bAt3)e.E#>#dOfʛt Hӊ8#j)/}`Lm;$+vtTGPAحC|&n8:cѤBLTye CGXz:0haPUxȯsZj`8zB sex t}?RP t6 ֤!7(hcTSib/ aFQ#AqШ{!/YYmt)uQ &Co5^_l?(e'BPN0k=`AϷS'*1'In;%9gr.i_.ǶlYۤ=0KAlfj}Шݫl* ):c< T'z=kyQuQ9?GIG@#Pn`&ę93;~OY=5:4#SE8V44yU0q &\JMD9FW"3I7*=`.@I= z^:B|7N}ηGvcCO>m҈Ehu_9iK'z5cGnIߩQX&[#Ԡ7X-ߌԚY"$؍oB졥beQM跗hYg'ONJ}uJ* ~+J:5 #1뗘8̧k hC岜(0w4"SqT "SI] ̲ )ni2O n}9 yMbCeb.?&񇥢atqMvz1ՅR06 xL$u*Qbٶ,o-.W ]|r=E=Wځ/&3!mtZLU,W[d?[̔hޠQ.^O۰Dm&Z}qg,LX3Ѡs寊Wɑuv7PRLyS,k/e-)?WQVvO EΫqˑ rﺋ)KӐÔ@'y&a~PV?BN}|!{x'SvŢtv3$6?E 81 BpQde`BQ`.5ݝR'WippђkU\'v$|[*i[晞~W}=G]x"M=&ȇPn5qrHhL8yzItb;{ө+8A31L0i5[2>8tt#YH_^f]zacX( wV#Vd ZtВK#Ŵ͸4J:^4-ScwVJ/.p9Tc'PyN*Iڧq9GY,lMQr[!! wΙOli3k  rѾ)Ck->SlscvlF}8ΨF&|3 ASũuOynpNN7 qWrJSӞ~0p|9*O[F6_$o}+ax%w *_)JԞ<ȶMbL :cUpX]G;߰bc}4J$@AjT7 5kgaQh5`%#e{qȵw/䔣T71m{E߬ɿo% p\ѮN:fU @4´p~Uz !&v\sFyk׮"`ĸz4\S$Jx Ndx}ՄcɴQ۴Q ZOUX~H1鰅tȱQ5P !W@j ?w,Lc,\%~ _)\/j+'|S὜[h?9HM6tli2h6OV-7ɻRՋ )Ngb$ԧhI>4MeDwT9Kx[.EvΔhqtDʸpoP6ՙg)clOuO8._me,IWM}vH6ý{^Bߍϡ9(9syi6<f蚃czk 9mJSD  xY,4ׇ .#Y$h&Y.sb ZS*z% Zhi*ȣȄH ><~6j˧s\zW(ֽ+%110d5O>%N1'zn[GBgQYM=MP{ ڋJ +a~RmFT.[]4@2pd,wETD,C(+(Q.u*C$?]hج/QNٻR-.*='ce:O%ظ.i:?˜y,2/i$ b.؋";Rtk;Bɹ<@f JGhn]O]k3@ 6ޅCS^n[:gɑXc9=* :2A8b}C3V$z@&-mGsB&K)u&NAM.%!?@\<8)Ͳu㟵OXTrkT1aapidFN\?CJ}|AjVB bZki"r@DݒF(48ǣzXs-ĎC8:v7Q7P]i\9RD@nj}Ȝ[9OjCso*(a(\(dK㕽1_3.Jߢwp7 kL@؍֯t+y@VZGY ODT-iТ@Փ1{ูdj7QǑr[荃!%^FO?g2t{Նuxɷƞ5@8s+fCuYdV2Y`pS EH{4OKavC^0Ǣ¦h㆑z y9uK}!>%/v¦v`RS %:|ۇ D:$rSmWW ׌)V;dnF' P̪M%d@Eo[s.vhQ)HU7_ӛ|v^,{ DRaȌiJzNW\F-K'S =E3 ԵmmA&O!F&(!p^䟬mj Ee'w.rGY5MwJ,e ~aM9@; xsBF*V7M@qeq[Pd%Hwb` ĚBZ{b],0-OpAevJsuO ݯ-#"ڬE ¸Y;`מ:t,(6hhg.%'fضBu 1p 6C'HJ "i3s%nF bK͸rv)>\RmTmywr:NI!5e?)~:ʠ%&ems]5ҔbRrۖdjTleH42slA(2?#\0(d&=&?i^Bn ?{0S,>yXV+[1hNגXtŹ{W9=:hˤ@77x=:P3UO1Uhk9'u5Sg^:/s3ѵV~ G-tBg'R"۹Dbǿ!M=<4yB1oUFmwPup3&a/~hp}-J}3 } ٙE/r4ބ=}~ M,FoF!R1T 2 SK- Td)ucds=eU X\찼:dNub u-3AV;;j%_-NX 9*S]@EURDJrr\!WbwS=kkp) )b'b; A)Bn OxٷDWm${R$ƱLs' ! 8}`GP-R9EGb!@놺c]vMq:<lH-!)> V:U&hjk?%rriZWG矂BwڄjWy1Ï":кMM >v#'FYyk]ǝvIC/hog5-Qq!88Ef₳ g!-Ӵr*_Ĩ'aD`V{c@LR?+K|p 87~imuGOmÉ!MB"[m c2Iu$5VQ۹]5]FQe3:b [D:[;&; i('I|P>U?SoW "_QF8sƇ;8kCB[!vfL&e@KKh/|Qfs7b" +;A?Z^:bL[F<4Zf/bLصx00?ڙ[P W2C64)6l1>`՚l%*:\Сu~%C $>'jM`IL;IA0ca*_P8 A&FMng 7=L_D=0K06|y<(YZ.`EǏ`P4]6tC, nݒ~[JzlD7?әBS~r:_GJ ~-{p?Iӽ]NcAGo:vfl"c;"`b}>SWY7sUHT .k2:Й_2=O2.L!$B yF1[gj$ J{p*݅@iHUM} y[!ERd͌gFsim_FVl 1֛R՛q.ġ2Mxc:m  zg}S ўǙ{p>;*Bd#se`89ȭ,~: ֈBN&ؒd|4(bvn\M=@ ̶;`CT j YvU$w͈쉺DRrcQm U< %L"&5p^'vBqvrj$>q~ބA$9?߸EoFA/Ulq#Zi+)[- (Rp_c:S 5#BL Y3ު^wRAdҊ]ƕyHuTT"E:Y-k NX)J֛Dqz_yKRj #JFv DF|e$ Hidy=>W+O럜7'VjZ% "v}e3 "m% g6n!}p &]DINB="%ڂ \5豙گ~(:d^iポdBϤhPi %$d@/Pn<qHU6 {M J\\J'P]kvx@H._oTV[B#~g OBH {yaVħɄEñ[= ``aboG8N[گp; _II,76٠] $cnIVu,v쳢}UH[1jPdW^`-H ާ:rS{Ÿpй0wmSlH[;ٔTp*ft"pf9q2}r>S&Qrܙ+@(݉jṕ3QC+4eK2K}D!3%Ffӄo u,ooi , ^9MdEa*.dȯ̠'FZ)B8I >oge MEYwR|-ƅgH͟0T20S^#ɵ|8^sѰЖ:Q1\f7Gj"PQ(MϜ",-"oLA*sJxHwYtL+7mh;V9Ŋ6nG,$JJ%qPJO%-5(ґր= ըǂp1.$-DB?͵zVNK^( 3&^1~B~VלKFJt;OQ]Kؗ+r#ꕬD cNYFB@B ?> D}Sh rYO? 5!#byn K8x=фQ$#&6/e~&ϕaUƂT3XM!aQQG' c$w`"WN`jqw̟ukT,9>KiX\UCf¹4·6%12Д51 ȦoIoρp]ܚuB.=%a"͡q>UH(2ՋV?Qբ$)88Am,Ei H,x>¥X-6zX֣KroIr&5+YKLV/Vx{YwR)qI 8)=Jvdfڳdf;*HD8z aϷ{Hg༼yҕ +,6u(h=:)ୋźhhEr뜮Y`刦`rD;\H`L]H2IWַ۔`W Zg{А[6w?d))<3BJ>Vf8qo3XTr:@oىOoScJY"T6R[٧31f.B^ VyȰo[M-=5I[nu$4&G{^G }G.jMV$# :!5.uc9;}Wk11ctxmV7T yMjic0XKsa0 gF@ \`K_NgE/ϸ=-]}HU1R䦟3ˮX 8@ evK뮞7p9Y0>4 cݴ~^̭FO`'27;ʉ_Ͳ,wWoCqGWD#G='LЭP](5ֵۂ՞-3nO{8&b'Gxztڗc0'{B_ʻGQr `Y#9a#,z)#Bp?)[%r?A/ʏ0D?8}[..vzex՝d8-nZ7UNlj[S;UY WаZ5X݂7d~MMכWQ"ۛOڑ ΫN+ֹT+ s nY{Q^eϝu (TF4݈w#L/ɅE;ۼ!YZگdf,\OCqӌ*U)?e6F̢-Dj"~*e:hDt{{Y䨗?E1RE#g NkClPχ>qG) "ү'*,wn>Ok3Cհ2m x",TEsuB*dew%Ibr-JjFK6 ~iC!Q2d@"7 _N[=:^;?Wrpt7%'9;y9j(Ngb"ף '}YB9c10~Oi֜W,B7|vJ~2Vm%e]FGR K"Te5,O?lcռrʬ|c8hb|V~7d8|ylBb ,Hb\I-?DWbZy WE-D. uQ;r ) n^9yCLzS`|@cڒF'} SL12^dho'ʙ)mN1stFÄiN|P3ĕK} b٫Ru^ۑZ2Dob2J#կ{<$#q)N긃t)TFV:6 N4틂t| *(k9gC፱{b&ӧonPҊ4 `Lؘ`Ao2nT|iQ{0Vmnc ;6;P϶0.!h {bD<_ Xs5u)2GX킑D]䇨X>Ͷq["ߝf2WpzCu# G} " w7w$ZX7%-)D$1D+SLzkȬE^?y0)tץ " OhRWdp5޽z%&ʑ]SO%/UTط#`;r!iml{H;=Ӧ䆴B5i>sU^PQt(k4ЋNhbŹYcp#ٿ G]j)Ԧ|FDmr7e+Q)ә, m)'3I,21WDqpSfVJ!8t:(KAǞ1)k0r3S*rgG)IF jΙpόa/\W`,o Wѳlf -@|AcJ Նid1ɝjS:\@wr_1_F?-My\W?Wrpo%5*lS2% rt"rxBa҈3cT(:,3P];w\\Ú)ϔL\j},YR0V(FJ&KS]c9ICagR!Fguq:n Tt/L{XDM&`|dNV^ J^{!m}ۯecD8{JX~p~" ULm[tI iK|Ϋq{bm`2Vk>]iǝ<ʖq`sX)mQ50.ԓ:G+KU.a@5RrT ˂*s[ٛ]:MdY?S?"^ PK<~zI_ UZTN`#QA67${XE8 %#l"T=K"߆զ!Ӣ#:ڦ.p?A;*%\B*b{,dʡ9&A6|>b#ǃj]jEP =:*Yeȕ7``;+Is.>=:m^\FkO݊!ph& H2=XߖU*^A S"Z5}Rȳ0>[0r}1ΖNSύtU&j^O OYD}+\ ؛RMW2Jj$pJddo Lt]Wt "7" $?ϞDf؀AP"Lqa5qeCX#~))N6> 0ܗ1 L=?M %3ϻ7>SI5LtΤn_{q<`f;j- v\}R}X9%%4rriI*su/9C ,IT|tiЈN^1;bDh"F3?+0 f"7SD>bS.OyLaj-|'oC5%<~}9ȉL2;4,\Wvb]g5qFz6/NXEV uTcFznt=eǕIe5yȸY@i){7ݏu㿇Dj pНz#V'b3n PpO`s4 kT<@n\\F\@sR tdu2hmH`8ƍw cU4 KqzV!>gv:9R .Ot%c$Ok^ hO,G cL.Gs;kO!fvVX.WRM?&"x}Yc5hgeЃ[fVȈ/[5n eGqBB5o#4trAoYRr[|I+ri„ T}PnX\e⦞K໰'y wrץ Tp>)5$`T:t2U%n@iK׀,_FpN .Yxc%֤OJn[djDhr' E+R&ҷrφ\"8s67T>jL%0fG-eE4=44k̎ıT"̱$xhIa tVR]ǽUe x5tֱ~ Is#l0˕/%Rs6!%;zǎL^T) %Iˤ a Ri3cMe£kdhv:Nєe1G!_mdj&APjǞxk!ޔyҚ z!`ș/wK `S f0񔮽nt ƾơX٤>; o #c(q]VH$1CM}S `q7ĝ#kt#fڧHqh Zӑ r%[[ -{` qoX{"b1 -#R5R#E”7=s8){B$n2rUwsKr"8uVL(nH_ d[5t;^pJ 71[$Ͽ.!~+$@}M8PyB7y +J"^+vTWJ\m7[ĸX0Pʓzn3bǚ#%]{w\md5K&8yfr2H=ο׭s#= `;$/ZUi.}2岞D/,h_tsQ) ?oiWuk|%$wRz-麆 ץ -L Ir# U5'yPFڪSg:34A9gMVPz)42m\8@V 즲<,Nvhי)X+R\{zA9D?FBB$wɰ YЯAU̠q>:C{P9w-ƚ2&oX Nߟ6C-nXG(-,F #ycNbbe:+eJT6'KUjېC#zAIHiL%T{N8kA9Ͽ:أWO5>Y ЀxǘV6z 6'aOCŲb4+ +Sм_(LLҮ%qR,wZh%>_#ؿT9v.ZPEͣ*F-_k@u*t͗w= ^Y1LpئI[ci2EG.  =~YJMQnӬBl9oOSdndF` UQ11S!BPfBc a2v77)R˧b!qE-gُ x"3*/.XKU?r[ 4wH˚U CT D/J hKڴG*'6䴒Mky{f *_yCQj6 K1uIƴ5")K!Vr}ʷ>/Lٯ.V{gxϕWDɠAaME9}-2R0L8`fOXU P}0U,iSۢ[/+`z]!bH'ZYlPV| + h v:L|v$&~xH6*Єĥs_S9A S ,F Ιʋ u)'UP4vΕ}]7ק;01A:GO/G`,d#FƷ=YNB4!'QK#`%z`uء)W=H1# ]NGo ΰ)_B.8~~qwƹC]uJo10F{]mFՍ.I$qGC(iIy.;Q82DTR~j]]mg)ȩ8)=WiX_.`S#v~(:WMy6s*/~磋Ƿ/ ;}E44ة7bfj+Qڋ"7 6SXGC RblpnS֌\fH3C%:s\*MQgăv]Ruyd iFO$^ێz/\π Lp^TkՊLQ %hn 4X|MR qI+zsNMH.YzS#rlt2=p'vkuzbv?01a*#A*aW8:3 @'W\p6\j+ѧ#h}֣,H|JH`}ۑ^ĹsccR0 Fڥ!}K &,H;jč UiQwZWp.ݙ($٥Zj~_X{_F1eo@7k> M/|~f$ܵ*X0/yYy~J$Pֱ~%]%dzUrM0y!+t۵}AB'qFTTToȺ5\;+- ֙As׷y0ga0{.J@'fڲԑ1v-~k=U,WѕNE`OC7 Q.h!iz[y/VbY/l5oY#z[QF>JbRp4J l¨E@cV 2}ėm0g[TxJiz 1ĿMXEU]!f :F#]CFEN |`pli1bgt]ش$@xOXr$6qJ`C= u)u@T㸺%s-oMfdO6T~ȆZN>D4i䖉*X`nMl#F`MՑlnG0AfcSdG\vDL[ncJ2n.)ݝœYr?uv=G+]P gjCЀLQp7U]DxaʇLȠ|ТZPtuf쾈J-1\:s:+d`A]$,`G:\S8#:0H R"~Mo0uš kfKJ#"mim)Ōn{>"j>w;ϣ;` ѐQ" K- HqJ 8t@>C;U{-t^K3҇e{&|c [[&D^$,3`t#oMQ '.NI5>S2.,6y"&3 N?ᇢY`q:r$pO节:V8J WS$3w[E5g5Ft*l hTs`)f5(&u9u#rgDTH{Y>V*li}{*ѐG^@mcb;7oby\X]L-%H$(XߩגQ@dRMt#tuHZy3M\o8Ϯ_ĤE2djKO1e?ȗTuc ̼I N?g !&.}]$(lV'&Ɗ~ y>% >h+8ѵ qD~7CyUǁ@;%]xyqN|z^U6G$" #$t9L?q?ы} ոrՈPƪ eIج@T 9[P$LVG5,ʄkxfk#K&t9w+X` ,d`}z>e}qS 1 @]؇MbąklԂt(X/ XsFgUUKG( i}~\'Dht{^ׇC8;@ᐟ;" MI@ZmzֲC<6370Sv" ^=D->ѹFjRi@tiz 1qP纁9-:cGh_wL0*?[31Ii  (g4 ^îV'l}̧h!xO܀9gFikեԱsYcgc%?k$Ót.}əPuwy YrM.< UV2KVk{=x)O^eA%3_3m;S`20%d3% $`KO.qu+j s +8b!L(J!Yj9KycU1SAЗCٮd53*’:Mm i~iP(^菜/rHWMzpu6w5o[)p F};,o(.SCjLܱK\y]YH&J6%`D*r]$QIcPG vP3Z+_},⨒j"k Фc 4P [׉*yJ[KmΤC)~x)C6#塲\j{d1l{x9X)¥yt=k~5[pK)w 1`uK˝qxVy.DO>GwsT%Ŭi!wk߅h%.dH Z?jpfh;ӽ5p>ua"A˗  :Ox& W[6nQ;ҰV /J?Ni81ֆl J-/֯[ikK\hθtbJSX5X1,oZ2ZBFu,tDkGyMPU<&O4ս^WEdګ>?$ߙ-c̴M(FQs3UsvݯSl5er - W6m-]O}q,9뵺iNZ~}"V6nnlٚ(1MgXV4WҒΖ^b!hy!+6d<+a>Á| ^š0f!ހ 6]J"#^Τ ϻA9DeI%6-VTd>p0q]tt XZCaĊu߰b(F YJzhHb7)p G&i,7mFL \Y~AI%{Et{1ԛi%( [AEF6W 0U*K5j'?NLP3grYFB']]ԓ|ɪ[lIf^&.HfS4\K^ S*:YNuU7&ՓkdYYFVv5VK4*HaXc??,0.=I]S-4vmrTޜE5Xi./y.^\/L0`0-2`Re^D_`8^z!K4 ߜN l[^Ƕ4dR?~wv1q`xoOtT=ۤ QI5$:k]ڭ =Bu݋No[4׸T!NHmT+? KY`(K{zȘ\@" wz(aS!Y'mpkW"CѾfw 4E$$nBqY#UxkiD;-$|icKZ-1SEǐ[W/;NBxRd<|}'Ru>uW'| !u7^-h58I(*D= DHNw{ы7%M< Q/7\ԺrV~]c]мWуʻ6l8sm.oM r:wl(y8J nEU$gb#.2$fn1ctDoՏ'UcZL2?'(~ ^^SiˠI/wJv+GScu%no孩|)Y}?7wJB>6/ 6h eI%0`+j1wUN*A?Kx,Aۧ2p{Gl=9BTAXT`3S΁h7iuZ.Y^]8w4DQl 0A-+ܿW+PI4Eh<7AQ<@&5os3p?#J[GS@ MMP"Ra:nSp.MYt 4txQGzrb)&@*HeLw"V11i{9q LQv֮ZE^Mq˚ 2 fkؑ.n) ۉ'_FЦAwl1o-]/o.K?%L+~hϳnYuw*&Mߒ_1 ~{὾iPg Hz%/T amw(ibыh7: My6|., 6_7Jt\ vB&潤(3l")WX!ʵ9QYb G!@w}'jHSMdyl1LGsk)0U*M8AzL,)c InƔ]Z< P? ha& qvX@Yv \6.u0?fsA܎nxmO"H|D6|lCMn NJ[ hWs(M+R vi=X c> ǴGAtO9FdҪ:FuTlfAt@V4T;T?Q:j82I&L9Q\zt42Ghb#(v4tyY2Ńx#ߛwnXY017ࣅmɞi۬ۨy{J4 ďU2^@޷֌,ܔ G @z.L a™Њ2̯02y#&}uRv9tcfCU5 ջEeku 7iuv(Ί*@{tO׆ e>~^A(t͛=}=*J,w#fwɗ&\KQM}3(eE(!HR˲.?hqE{lK a0&R8~墥ȯ,yǵ6 /cv߼jV&m*+bOG Qϸ]{BPdGSl$潢8ʁٚB& S ?]ZC|'ą*FDDD /?zbGCb@Yfe(dknR9࠴Z{f 6ۢ{2,2ycP%s+ܷKLP*6A ;Q~iEQ=(OAaj3G{K^/ 8Cu]e̪T#+KoVh}:`2a K/`ʭUP}}b+Q L*vv1pGYF:ԝޑz$F{2lPAj'[!SƯ5+& k]i,](<v/;ˬE0jWDJ% "_n )t_&=,o:^/TUvp-o;ɮDAkw)o@j{{ʺ*WPMNl8nS)Ҡ-?20r XEQkKk*1OlYj] //NJ4Qkl_`;ś/ȅ+,ľ ވ.OO5vV"Vƒ}0>B_[?+(B%b ɾGCLAer0SǹyJ] l`>.ZcE||Hy6VuM0r?9D}zpW ƕxc7Qdj,SU#}.' 1,(&t:ӂbCǶ,E{Hq#3&5/!Ge $uIDSQzD-F69Iی$Zy:)=BAq=fg7Qgy=#qћAS*\u%I.~$*P|:(fge};Dx.oCbk fiVti)`v)5^T癿WŽ}H+<1Tt._NߜVwP 2|[!؉]T`[? i$\R n̠㩍Ok Bj9`@p` !K^YaKe.䚄LVyF8?ͣlAXN;~ز"APA7ei*uva>#/K}t'Vһn;bMh0lv ܺ=MNԕ=߇Fm߮6*o:@H1ze?#ڂ>u\jF/| 72LQhwÆqYFB쏙w͸WZk_$[$1T|3V9o8Ek BK5mIEF+b~x)Pɢl~3YI`j_ϐdE20\΄i e ͑6j4w#rY낔=yY+hXKՕԵCKY_ wEMEML+_2BЀGWApbj Q-6_"q@[L-(c01N_8ם#/>/>J ji$gqg`=l- ѾưGGmKˆ~F0Kl!ڗv */(bWmG.J5ҶQo_[~aw!XtQ\M34ܝݱkYĆ+偸F?Tx<8m%=.Dؚe{rЯ6j7ýfPBi*I2s#7$A İf/o?0J\{Ž'!HQ̢ h!TUeK f0̽ϟxׁz>~FGc{ݷՙoZ񋑧3F)&PSgt;_rCAԋZ:jߖ1vk=#ySBl<%N(" fHI5fظNgMF"q${%_HSkoo\J3DX<8%^gi#4cфsAng6dL/#9炻 c./蜻"͎]>k7[ Y,HZS1V$1(>I: s5xD^L΀,mXAq1 6z'mkojm禟tL-rWGIhhd0 oE@!a+FmءicЕ UE]]o=nKS#LAN.^U/L{{DV%v-,_ =_)0),tuDNϊkN<ߥC#Ȇ3be*zEʸp " Bl$/&@)hXI̠gJ 6{$`ZE~WNuxL'jYG6hӞsl᭢:Hc^3/GսZW|oitC3`6MSђUPQY`8JBԝ ͤSh ͼ9=xF&Ёu1r3*59t9= 'V8}4wC#0u N~&UۘdHʹT0vc4&w2L?b,$PJI~يDzz/A+;_+OXK:?sӻp3cP J> dIàOU`xۥ<~ʛ;"%GEF:kbۤ;>?'.XlVGT͇nB+q0e+կ,%B>Fs(jlI6嶧kUU7|S_.#D`K[N= a`8z-!ĖLUj2t x8ΦXx0 |/CQ< Ҁ hFPwY*/嶕ZXc< gacL|G;#~ek4*N B{& %rޫZ`5a&z)eַ gIO F& ~?"Sx4C(hC-@ EXG-M+vTHmp<6{==@$ZVziBG.={%AY LA|$z >-6$8KԨF· ҿ "ƕTPɦ4JB<|=<}5^ubN9׉ӳ1zh2\蔲u8MZfQ3de>D}by߁< A=Ir;MTW<]Y(٘28DAq 5ReWɚX#is}=h.>.ԝ-nhʙc"fhTU ڀzQ!g9``hc!;wUΣ*ΒSmL#{Fs@<&xM$(TU Taf2^2%1{{ECI. '+[ΪL!5BMJ_B1 d!ـǙăj~T2_ۛ|>L|s0% '(d}Ļ <ș cWJCY~HY9N /;=C5ي7T@ezJ$p'fZEeBM!J@[RFڤ[rmfY&ސg)D~ugw*KLF'ʌ޻5DR|~" HHN5S5ȅ) P"ۄ*қrxJ]bOr.^ڒU(~d7e k!)lDr4:ȌFGG[ tߍ9 ÒtAT1EHP6p63ĕu,YAf3FmqC<6}x{ah7-0`E|4-l ӿdYx]̐sގc&o2l$|T*8ZeXrLIx<}|떌x2:S5S% %_ă3hېۥ4 "vjq P{lpz98x"y!d2D̶8}--3Z$暩{I)׻ygʤ^NoxE5R-`~rWy&0qF`kϗ}H;aa_ %xŴTqvB{htz~-sR~13)u&93봑{x,9g5S"YEZOĬnklPq:!xU <2A> Ǧeq) }%ѿjw:l@W)Qu)؅ X{*i]k&4GYwylo>m9S] fm z|"sW:52V4ά"<8vt2V7ݭK,dno~_]4-O0M `[k'|U?G!H ԧ蟀+Su|Lΐ$|D.ZGk@] NΞI?Bbt|dd(ün#U4E狳l_ČquCI Ijq8$=ib9{;Nc'D9 '~{nME4c(4hS%6(P~P1bcl@ ZxX2@M=e7˕ y>V1tQ)t<`h]\/-ɧoX]zv$:qyB%c)YȰ{O+m] G.%nPcxӆʞ;6 *lE 0xSLؤ"X,QGqn7~2"W˱uID5R(^]że!YtkXGn3fjo@„ABhlKJ3E RIAeKmq/~K5?AF0җ {tiT o"YS$ Xa& J֒\m9ݼFbiNuP&q_ vD̔evN8!5$Uj\7O \Dk6^:S0DEUc>E\+,;&W"XJfN@ NvY- Ŭ;A*{ڢ#;/6"#+(WWʁ2Qe`7S@ٗ![J ĎL|cߘ$ ?*B?^UZ`j η~qCCe^~GFP!E"* |446WZ5!-h1wy1Wv9jxP^8/Fu)(p^SK|{@n?`.ߌi !<>z뫴z,wksu_qلCVq>7ի sٟai*cr+ŷEMQ 嚡QgQeDĔ1/Å@v ۼ (c#H'F x^!!3èzqdKmͫ  <_C,4Mضb ~De7fϔǁ΢Pe&uI86[޵1eũVϕ 2x-gz6Aٮˊz$a}|8dJ"޼nZ<#27I ip[9~iL(pOGԅ*8r!n<_cm>߱Y#4qKQu$‹8:x>K7[ЛL%o e8fR,T (웱.+>*mg59d2= 4EG*xFhɸ1=F!mLJIԹ{e/u̾#ݹwx9ȑӝc/_kYCYnGgs}[YsDM=dk`گPu< ) oqnƙ4_Hh G׻R6lT@8=ehk5j~5GM!r0I̾EtyFWzꛙ3OECM)ԹJЊy(QێMnoI˧|c۹:89GjBgy7Mث qڗQB>9߲v_22S;α%?mI-$C MM ~ԎW[1xcĕ\D~%]Iq]eg|>{{֔`яkۊUĿD1jls;Z{PB#U`1p:^m_FA!>3sD|2 a#PNS}y#g+١=$e#ܶM68B׼b\뀑Y}66H:8y]g#ftpuNNen V,]wygH/6YUfԇCM >  xքݳXasBU ʎC%;=9Bjӧȋa%q6*! Fٝ`#h]Jw %EO˿ro-Պ$׸zo~9wBąu"Cާ:?I슆Zư P)&Jh9g9Ւ$܉TQgS.T)VD7يjMgޙ\ߞucy@b}8˝! !QB+ JnhMgoRiz82x.Êr%"C1 |"B(R9r+kjcǹ(źv}50ٺk1>f $dHMo:-A&07*,QM@wdTTylۉ˥e ,teZ5sؼc /,C8a)C\r'AŞ{ U mkO4l0jat5wGbԐ#K[]FJCX),ƂĭSVB_|A4E%erd` υV(=a3u`L˵_v=o2[`z7* @}R)U"f, */ ѽ8%{d[tn?I%͔8<ƪ%:co~b~w_~D"*^(( u#$\Zf*&e}AKxݞ7> {\Q?zR\V& x>Un C1ih-hj&iH#f|֗?Evb8J>.Z:4$x_FvAeA04Lw~J ]m @sl *ierUZX\&Z]ENݩ.SτGb-:L(&\rAPhz蘒҄3^D4WQ_p‘+o\Ӷ(=>/)7:Z%#C9Ϯ1Qq-ev $\9ZŨNj܃םY !s#2dtHgFA9lL^2x B "-g|Md-ͪ#Z4QL\J##A:3Sf@.]R 2)6iiݱkC6=10Ga넡N4[7=,'GC; ^CtXc4Yn| Np̍E} BOYa-kqr' 5WWhI/? ;RMcGMV> n/ ALR_dg᫄}7tm @4ehI칎-YCbA)#!ާ. vo2LB/xƭ%i٦ kG%SLC?ϲ/Ѵ:VLy! f,Ib%7ooԲn.,}zfM|X$X{rk(2>to!B?iX rH{jS7lh~SUaaQ´޿ +_Eօ7e~S"5A~c ۆ:pӈ^ 4(T^bSz_ȝxH aE(0;rËP/q48\[P繬f#^1Ӳ]X%ߥBPo_ūEΝжѺ,u-@5_ϼ AJ{)9ݙZ#Tc0,l !}p8iKr,Tq$!=B71xݓ"/l+ .NY!ӛ;CXDCL7(v]3o(BG jl>"e<OO!rR]ouloI+4BVWT5޾GYz\vǶP`S vPI#&9rEk\6,E-VVnF#7|}@֩eel`p"EDv`=KRoY-j|iV9 e͊6rN_`_NԦØH5g6X/)<06JdB_Ĕ7 oyf N<[,L%Cڀ>LUnIPW%Lgt=QHZF67wc ;tD8ְOZ|FS<P NST䒸ۄH#Ut'6uӚa pFTe^c.WM`.nz_,K{{sR񗟄,@AD0swGƆ\O卑`zy0Ϙ)SVD4 `̚3.ր"0c zR9wL`o&d/^~+Viz_1'R*,G;)i1jǐOI߭ _j3\a՟S XAɾH9G.-Wi Ur؏m+%U eFs?ǚ`8k~ ˴v&4[SV|zwte=kJeVNS<ˆXfP"R<r4@$t;.!auF( +JvJ>PߢQ\1kyDI.BIAbQu  tji"\u(bnE.E;Ck]pnBՈ6pSmc&T:sz76rI >^>urwTD1 aSg}z≰1%k-7&;"Ƀ/{v\د3w1E2/7xז@&vڒ q/%Lq*|oI2gNqM{CR";N]gVjµw*~|ES#U7]2R ?>J_Z`AQG+#H ;ҋ{-f0H1atve2S,JdQd+_2e]j[X-bKqTWݖ&ҍޭC?VW~7_Lk DP0s:J`qk3B߫7"xAQbX4IG:-EUJnU\I0)jkz.9L$j`LsB{"R/ Xn0}S܋oTRvQZPi!I@\t6JEƴG yQ[f["!FYu*ӞR0~>󤢶HH'tA@Lv.]guWtNғ$!OcV,/^4A7ю57pry\8\NX;p-O9(ʷVL'"H|Gtz:[&ՁO>gƑ3A_V5[jѢ >v+u=q_ap[TeN$ζO? !+牉p\OV2ɠ))x 5+ F /o@ĒWLb!3p6S{^b};aC1l DFWG(<-o,+<~< QvǓ5BYd -7egkDWъh嘞ܠZdSpEVVZC6`B&OLUጠADE/Hl_ W Cauue”{U3YI"B1_fJ+*lfȚe_ZS@.Kƫ%Bo͹+ yBjcV M髡\ ]iB%''[.GcX "W}*,Y7mI8]R>-l׹]Dgm01鱛,h?ٷ[KVRAJuG.*a%;T?r-/I||AaɼUn-I՞u0D4C.sq7qsO ZSLIZQlW#Biz+yY!p?uZP` hxҀ]TxrV-Osyӓd 5^0^쌥v_x1]vmjy5yq>QeN<_Y}@ "XESb _J;%GwdBGU\ƍ/[}94 vkQU$~݅< b\@B)35`1'"`"IEK=V9qܚ4p~I`HuX @m@uXY[> Z=`SD̚âxPY "(b~U]5GvoB;JnnbrGh^%EGG Oͬؿ>8kÕ4rWF7x)<V р_.3tR' BGd"Y d7ۑA8Ky\J 3/= p5FlC fi$ Ƞ2hk]۴CVrs8)#c&5:Ё])i|w!Nk]]8`b,5'O_\:R>"{% pDKeyv(썿&=‘g='f+XJkʖq$u7',~הxC*rxoH$RO;gQp 1_`9mmt-B/Djq6)骏Ml'9V[j D;ggKm\_S'gt UӤBUHCaEIԇ1g0 n- ~ؾ:"1T1֨tN8h*˫<W̢ca>H!M2U^-fV#鵲Dc M5r >_f6K-zW!5@jCVV_r71Ű`(U`Y"X[FʙKŧTJTOftOzE? &whWji*ఘmd4絇&7Yc(H?x'ڍAi?ae2AV }dj|tnJ[`Z< ة;;C:Ve(3ew4[ O.-]2Kiy욜盞 /59Ь1VU ~K;Ybf ]ؼ~sTi"𿰈) A` MЍb7.DŽ5'.^5F~;hv3bظf N]̃_di$ L@[EPvIc{B}ŰI;_MёF]yH)F15]YvK$3^?ǀeJNplWkHd0֡5ٝ@q5^V0 coQTԹam \֊{ΊZXfy)Gúv@z-KћT| t=@ٺkw DC{BZA<& ?>d@Y`_KW?6>Or DZ3Qh'I]^'t4טg4(,MN#I@EH 2UFڤqlws?{ꜜ"M2R9  l\gQPX ˩3JcDNgđ%ğ1b-A߾ @7qTvQs)|TB!NJ$E߅nV'UƴiH3f*g{yqjH˯n˖}B_A/YDE\X36@NM0*L{BH;'L?% ^^H֚ jqB1#Vj s@Rur#3a3˒'ބ7%t戨NI~EWqэ: D8wg2yÕ`x٥|NFЊ L;yqe(THOV>^cϋ e5+OG80!&DJ2ܖ_E Ӣf] 磛ZdgBFoW;ܱu0Z2GKSkU3>Hbo羟QvHX'~qEꀺZP(R?_{7ryH.q(7TR4}i-fbq4՟XTj1{}]Μ`^k J،}~h&zo4LבI}bv JnM+QU:pղsn0RGʽlб e&l[qC3hh;h^]@DZ~3 D& ߑ)rn ϷMY_V[u6$IDZW!Wϵ.f7At34s`x8o`06OfqA.,)ut:]ꊿOYÏ!+٩Px YY,Pm;8'@>L 6[|J, 9h))1(ِ ƙ|Dx6#%PLFbVrh^iXνO0Nc5l8oҹ&MY0TqO՟@bВ!Oq.Qda:QmW]^4ej^uuC+UN~7r)):ؕ9+h&f&KWl"C*`cY tRS'PpGA惃IŔ/ ж_BΟT*$l@Z/BG4"5JcZNI:)W])ZnK;o.#HݮH$` WMW8ODpejVG<5ʭNJ~ZrY,LTEK*P/mD&v,jZowLYؙTվX\!%8mդ(sRR7%K݋L̘]1lX cťV㑮{m3M9 rq3{8nGgDXoS+$J-x25g;GD0V8mOxt3)ثaۨ(JTv;CmBnpE6Fssm+F+K~Z*(X^Rit#Ok4PsJ]4pLGpoJlF-Vh}ۣD`tτJj!v&ERo/Ș暠hK6Ofj:X= oD_Gx!"qv d:q{G_Q%v>#'\&%]]P_.pjAR>תo,щZsԗٺLy&63ފtkt c V01Rb9:mVZz,P)!w#oEed0Z|2_aw1b2c.$m4/zAJ/u8!@f yRu*~/3vZ7'q=:tR!yU ?vR%[O3o|~Brɏiy6od׶Wą# ܌PCF%+;*I|Kd=pÓT'K^ߌ7V i݅ZO)͠PA A=@MFY<{gcUMs?3a7zŋEŮe5C;\Bn-L;_1e[;?ݓFDf ,\5[igB_/bwL]TQaNE3_ - Vf/U;{_ضU2i}oEiD]:(itF,a!T&xM$ߢRHZӗRԇe.^IgwX%Ý4Pτ?zpEs-1T`T\f=}h땟_A!p_MYm/R==ٹ6Z |ۺ]5|yoD!? b~ut;o Kc^ū+kbo6"j4֪XXIP޳ۇGV8hcٝI06l҅yYc|BN]e\B$9$9 @"z[#5AgKn 6*+PE>Ŕ5'4&4|)p$>^U$`WBPEqwn $>y3;4/jײxtAR`jy4 (ŖU]kKALJf SiTr(Qqt-hEsh;ހcrtwr?Z(Wχ2ߥª@7Ku-V o0$e*_͓n@#A_uBFLL  ? \.2Hiw#pk[FL6z87 ؄?{ % XӰn"@T(g7տ.H \߿glQ63b,3m:ПW1@# pTaƍK@ӞT W(m2pK"zDɀSatkY֠?mO[M:Las DZĽ#\g?N6mƹǬ+@y힇xjQ䔺>ڼ@ڠF]s@$|3*o @Ψdk g8“+$BX̳Ap 3gR<p5_9) l 2Pj'xc$9&Ǟk@3hn}sL&ѕѯBRB"5RNG#jT3rGYCf}qDy-2C߂TWV~Mh~_R-Hֹ wjEX/"$cӉJ$.nTKC`l/YT'z iid,xX(M2%%1:w]s+|&YY/{* R!`v=ʰJݾR ~XLk"u$5xPK֕C|gZ;bmV71OLZB%pP~Y\ȯݿ]E͜; |2ee4v Fwq)߳>j贌+3tzIzHN 0L A:5-7]ػxRr _R#V[CDː 1ә猃`f#<芮/.=sXmnQGg5L]$d[;66Lw-Hk)Qsr</MSk G'uX79[dAkiY :RRP AU!Nug3VMvhP A |a CmN6!pJh%53AR݉gk-s!@<0Ɇ=>JFfXIs9H!!LpkZkC> pb f @Gnbsޅ]H!m^z|[MXQGF-}p=8HLԘFUBUQ$kѓ167zgTe-m]4-hH-@LYvH6~χlH;*~"_s<_[|t´G5=*tCh*3[(b5fqKT0P\z-q9? Tw*%gi`(SfpÒU2F]srjV.sۤfyq_IF Bs%E78,wl tN`Nkxe2e/صB>7 Uec.nl8h!t0$ڸ+fc˵K6֗Xn :&]dm+7Bxmfb!|6Z6[[-:cB߰Y{(c008%"-cC!v'uhza]i~UKq-Քq*O Ii@Kz&/q`|=ꞺPһ5^ >81= 8l$߳cڰ2YA,r3\Rj߻fF:J$r1?rž^93ЅRvȂX|T1uwG@{cH!tJ*JDvԙ͘ZHFinR@fPڈB,KwjNߋ?QT$p묝H|d}CbUBjؙG}$Z}6ˑɎLjއωgs`yY[^CCMgb&abtgQZitɭ  V2%I  *;OA! jEf|s]Z- ܥ}ܨ{vQu-Y}ej e h|Y3X 5Wf!+Y_Flo(΋(J"n +h*OVs=!{k8W-?>BG"& ;7q=h )b*ъѕQ -6Ӝ&?j j)*4lVD4~Z/L%7[߿-,鴯]>8Y0- (Vf{63nTD>^xvf>Q $䲮(b(`_J{ء\us(z)> mIgFA4 #.k= ~/nE4:GbUpZbE<7u!3;mmtlfJf V*ċǽGr߂oDUqkCar͵-ڭөJei!-%s"4/oY!!2yD/asJ+G4v-Ns,$; *̓l+l$ⴖwMDdWOlཛz{CIЎ={.uok9aB A"N?~Y"Z&^#NGer` 3I)Ppg`ow֜]c]3В*w:<4v@v +85r mI:ZNx(ӛbYCI uI;." Sj`n1=4c5%4`QS՗21/硁[,['G|}.js_e!02HH.[yʨq.\k4i_&%ݨ4mC_;ټOX>Dn@VZ؞ae\ o@?ea-t-D,&y' u _OHd.' ]}ډ$+Edo!a?ګh a̮yQS7ˌ7ndӯˆ#86~#tCYnu7=܌k8SY IUf\ fU 8f]~hS_?MKjx%pG D Zx3wpK~\l55!o_+9Nzj(_gmwau;h\o\ {qǽRWul֦劰8!_ :\y, ^c+[*M8fʪ5@&)X3ꅮ!bLW:SR,fʈX)2W@wYuWR{kcGϝ7)µ504\T?յYF2$ F {9XQ0V3ZvI$ȫnv3E*JTLg$2)ro,-.v" : [\ | r:\hA|qD4T\ê9Dl;?֠@}1א.78ܩ*i]IPLhF{da"4K;0cbmu& ӵߌQ?sXoVD{\A1(%`ܚGu)S#2YWQ%:Wi㷤sz'pjb[{PbXp ,3JbDi%ic>h/5n2iJwԭ9L,47o{<ón K@-~ɶOb̤lҷ٧? A>N X3l_@3͌W`D=$frb+ 2Q]w\sdhZ"USKB{G5mFv?i@L{ ۑ% a SZ5#h4bcnY6[?k"3(aR_ͻ4}A$_n 9a4M>&0U4`tGl!6}<ڀ: MV⦡d>ݶqCؤ >܀W4t zkCmsU"|^Գӵ )lx{ ^nR._p7Rc88*S3W7f&5\UwZVd^y!_/}vw6b:Ǻv[&AV]i[ DM2R8LZxIkbolkɱUMz zCbD@ Kl% wQ~UtyVܿ?54b>K9csh߱\7>B- `_5vOB+d%G 7Ң?:+ꊫPjgS ѡ=]}='N.Kcg"f.T&6̲ZupCtS/ l*bt/*VӐ(k{sKxB#a_]qyg_/[eVԐFt/F' { .w*(/-6%|I?8G#1v @=`asaD_sv)ֻ{USA˷cdz>tURXLf܀L,cThߙ[jLCEfa;2 PT/@+>OU_W9T&~&][_ѤStKR#_\\i]ع9$,Xvx[*"Bf_fЁ̩ v5~~{ET/bN6 O-nǹ+>OVq#D iz[j]HebXoerrfP5S4μnBVE^m("ɂ^kޛ"c!ʙ&fdIV^%(rʺ:Du$b a/A[΢UE |p<Kg=er\JlʝBщX3ؐOTEۃ~JuQjUIjn˷$ū IM>zir/rh,kyMn!38\AjUW[vR19cW!,pbdMRH(eY_K$=oQi =vy~ U>=^%)tS/27*-qc >;jZ<}&Lσ*8&OXe1>ѮV& _Lީi |+i*ڮm\.Gyur0\&)=pS6G ՃOhiBS[XN&k$3` Mc=2# zpjF5@ *M9;@Jf[81zy - `д,MSrEnOh++x\/Pv̝E^ŬWQ {5?5]g׉SxzM$N;dB̓8O )ٕaz5jBi(d|d8rs+Ұoujg σE_$Sw!ܽ:9U$w:ݟ\K+0r3#XPyҊ-G\"Gb$qXo1 ~1pRa a(=ۆGL6"@B`e#4~c~?u͔k?@?oMB89Gbwp𫞯g@b~'q~5aHfD6]Nv~c! ܀]zZ:ꡪ-/ ^u8mn&%.'$wf2~*RJ$' V"EIOa>2cz,DZ pm@:|6?v&Ǜָg).QE2#d3MsK5D"c8.VҿmZô,_ p{qNs,Xbx L:2C_}Ef%h$^iSy~5Igjc+ݬTj7/$p%wT@ʓ7*,  {Jz\LZC@Itui;c]ZO3͵c)ߝ\tlq6nN72<JjцYQPU1n WołMA}MmeQ1%#CFOl|X}B:jiw)<@SVfr1bxiTgC19.^{K4H1xF]J^΁‰劻\g\VےX_UwUuF5: $wГej||Qn7/ZE@|g1f0o0~ಌlzcJ"40 `@5S#|M$u;6h),XT]|r'-,K Rtyl>z{sM@]?X&z8BqDhWD|$LPYn1H5` b׹@Fɮ@*{U{[i1BWg|χxFp[瑩Cu n7ؚ)H>MDm*e$эO肢c~}TgU :mB9M{CA;SZLgO,k),fدbBAI`Œj:XSod|((TEDQ>Nz_h]Tqİ}(|_(BvJTS3 v"NM<08wo^7"@u=ZnG@&/32}.2.nͽ&Pͤv6[\%ơ2fsi/emATYb믔w#mjۤ^ыDN  d63_ ! IbMm; 0gn}zPHM7I PX/^GN_14CSC"0ү$3濜V9p2%Q `yX?1m݀T*?w1۾*W#d/8׬ɲ^ܡnb= a %:BY%;q&;if'zΗKIjIrtssSl^هL݌<0ݐM4Z(Hbk{j,>η/79$T62?"aAҐPԒKYԶ?1`~ѐFFё-J%mo&T4; ;%M$xn AΣFAx-ʂ1#1T(l^ep[E|c a*n 4W$m-& B2i?\/?ꂢ[!4pSpoEj,s}&:"60MY7xw="n6@xinQ\ "׳$G*@ɜu1TBQ~$h ]<_ʯB摁?ffhU51"K݃-;ٴP-qH P$!Eq4=Ua+ʫ9ش<4U!B[^/\[2 (iȵH}/nONuw(Kv r)鋶"ِY[$J%7 G\^3^[:dMtꁏd= ɪ< {a|ײM#Q+ u_RޖFfGkgU X|v[,n9V#KfNS{vm7 Jh^MuNsNdڠ hz&. HES[ 礗6V|6u7n/@tźvUrFumr)e'kWZ4?>8\?hv TZ*3s/2m@DwL+"ҎTֆ$t6/-׷3(ݭ$dB8ǺisQc߼m)Ym{4B31=b/IYMG N^(eS1N5@qhĬc[\0S~v׶_l$Im-DP3+"kv,;3jȘ&nQHي: {Y _qk2UF'>1J$['`3~yHom zP6D/i>&iJjk,!i0;k4@Lwӛ/U{aR3ѹa#bRKbI ,BlX070+m1Q>Mtb@6I #bpO ,G)zV<KD~>WHB/`k iΏ$.r0 IL |}AvΣBDm/J? ̛\/|Ixt30?2 |!d!n~23PTU>uoSY;8IrKEd I\J *){}_: 2[=XԞnPa4nj~R"vh g3հ7gn+t_ǃԞGRvwyѦu:E8lqaUY 5銉 Ks[@euL'[3<6VU]B+_Pʹ.~ WpwΊ'.WhhgGAL~X\QF . Mc_$Nάq/ "yxw檨ܟ mCӠ+X`Cs)5m[oqoDx1t..ܳs;K۸ɉ>4X D=}YظgkԎ7\Pr5t@2 'L>CRC< L*F xs W9  w[w@dV]"b2Lw:4G> ۮh2hW(y FD)=Y_+x,&C3Z F@+@J HW7 צ#1V? TJ{)Y}`d@DuxΔ4*jS+".wsɰPY֐_u1xM \c7`ľޅדT3lD DnAl=`6=q[>1+[  mA"N;TϐA<nX>ھKHP( b+Ie IRNLP"P}ȘKS5؆>%B/*WoӲnsZsĬx@ͧUqBz` 0~-=^;-Ҩ318sxƠQoİeNjqLp wSw [%h Z%UR(6ZQtgx"t˴OǵBDףu9%i'c-:WV gǫ 1+s7W ܷ\iwGh]XC]aNj]SG Q1A:ȬG~HC>]愖Clwъ#]Q m0x!Ցdh1>{nΒsG1:Ri̞ !ݸ0:&KCLůI'z)y:bq,2ZH_}.E"a:Gx]g9 >X8Nz~Jw lHP7jLͱ2vDҌɕ,J^9pQs|!Կ1d}T:VYqn<|h&RN3 X:+DHH"轍mn>GBsM9D )L3ԼRA ΰ iƺMԹ3FAK=9p=-O}#v"ѪBKEwP@(C߽R%| N6ᨴW{m`&- xv@/+э( [ҵ:Bw|IV=Tkp%hR)?% ov1ZMQK"x)-FZKFpu.-ER2Kp-5}(َvlL[&^]6 n$L"uO+ 3HLw?A-VonFKvJ;Vh n^-+3odۚ4OAe:;jٮ?zYwXtW3T>(λTO;)jS-GE䭱ڨ|ͥZGEab qB-s̕Oolt\<8Jf[K+A*(VU;8SJ>=wb#{ؾ Ej@l9:Sdq` w^QOw C3{ZyC{demnta$TneG̸fOQx6TP#=i&Eq })߅t1 QZpXl_.pșgh}~{:_+ OEd䧠~W~\}Ճ$q;U̡Αo 5+}YwOW ]nh*F֛5h $è W"k@=J۝&W8AOum5cL-!!@N:fفU& VUBcI;w{ʺ`*LszԼŴi/?@5<12%[z' G@txqD9F+ar`8z MLgɼXYuֱtGG7ew!v-3\?(?C1~f~]CW|U%gݳB*P̍WS)z{5PsUa'L#4(LV`vg]!l4h}tWx>Pc<̼Kk,3bҫ^2mӯg %r0)|n_mXdL/S~Y4֗ʌ]NbÄqZ ;{Smvc}zo99wav&i:q0eQޜ??Uҿ^s>[`>Sk5(T Ӵ:܃}a0wMaKVq??%KL)WmuIW #+WɄ!Jm{ñX.r>4@QzrIt0,{Ֆ;)[G\Թ*/MQܘ˪i/Q宧)CJH+yqr,hʣC}LitXGAIhumq!{qt17<0gHPyw_b_3skTU$&D[1Q8^RgzےqMX]kӕSw#%vVMf˺c94b:~$c {*7͢]*a࿣GջX+㚪n^=آU8fLb }1"Ž4sAuWYLx7CW@7YS*Uy\:>KdZ3L]OλVMkB=OsSI6#kCu;W3p q.Sf"'Rpe4LN$ R:i>I_?u !hZݠoZ\C7ZTSȧ]v4陧Pf҈ χ$ecY$: ^j :Q/2ۢ~xwcZ.=9.a(7.?ԇTV$ aT,Or, L@EfU-"&;쑜-6ē-ߎ#A+cIM騧~kM?|-В0E=@'Jql ܞF2_ܦ5֮"5ZAEgǰȢ;#noE4VMݢ &-(pnv djBY҅Z/_Qv0&t. jeFO\ kkSLD瞭cNygAhĖ’EHb>&p%vЛ _8xc2p[]G;;`̜$]= A1x|Ys2ĞVK b|Ymư{?3PbicXvRڬ,ƗØ^K^#, _Ej ~C5KO(p݋A&;<{SEV2ۈ]&臺l;a JlG }" MvgnI^Bl91]Š^̑*5ͦSCJdJ-F8#WY1G8cu #y@Պ+gE39ip 0OkD4DnEU_r78o Q[Oc[z6۹!jz;d0ܨãRC|1ao= 0OO1f(B yI(M*`OIB2q<\Lb'nbt6C7S@Q:?ŇE 6׀6}> *k:}-:)\nLއd<: aϱSe l $cU/ ̔U߯cφr ssNmȑj( nnTeDY-7hNGVej 8̽H7OwPsmN  >E>DqnsڑrhWwyg;RQ>R"p-ph4]'ܐ"3wONðkdN?<%Mm2%J>PM~+>sG[R WEg@9L5V_:x}D/HΫCokLuxBtmYmLQ@[=Qc6-SjcM 㑟)lmSsTIUF#V]snUd8v:<^\@}ثj||TR;Y 8]t!(GŖ85pcW|픐Wt=Ɯo3p?)u}r])4l1ѵ6 +<Ȣrg-6 Ajѯ{wX>y 5|G=)GN3ǮdtʳRyUuddV yfZox- &!F '5&JZnp}c\<|Y˗K P5s97{Q9V)Q= JaaT~dҀ35rixX߯F7h,&Qe i Jq]!F.[Gp,3k(;PskodBArnnj ….vc~J )5azx526=)_fJ [?Bɶ|A8~kITQq<ՠ7f{S^r7FZCڨBE 8()W[xőrps  b&C/0mI;r> DVjcv*onJ?ѓE4T?6o@-eٯT5b@67:(pg{gԮ8}4mqU[qfߚ j2㇟;1RuDA Y;I6kپdS3&Rlbn2Ԭ>$ʙi'!rN%S؃yJ(BaA\/g5WNI1v o* Ľ1.!rEr=YFוuCu?b,3#Ws1]0Z33\T{յwg @ 26+b^y?լPj0^VvKs~RpY&{QZYLG~uP2*M(1T)Z$D LU}qjaw@m-e`ǡ`R?RiiϬDӗo%-wP@ҟAtE [AC+]3nө\W k%{$Db8$-Is(Wd@Y"loh53&#ogFFp7aQ_=QN[(tCiǹ9nmYB;-GDO.,(xR]]]P6%^v5&ʶx~4Q2 @qIT"zCK6- L͙:9xJUվ5Q!4![5e\0lZr]KK&O.wNY`AHEeU*4R L[^ A_a;3|]6ņxtƆ@3RL-|  Vt@yy@C(>ڄL74e\C.k~2m t?01GWv3Y.إOsr.[|iZi;#^{ᚴr59|KdHLDYOI&A Rmlˆ yFVlg]]}A6Z6/kEh#(w\71t_z+K7آORxSsyЅ0>2_ <9'b̰ >}br(+D|~(4!4s .#=%; JV$MJ+Qdf9Oԑ!c#n0HU9Xc.{@<$E+ض1 ¶Apɠ&+Ʋ4t)x9l>8:u#3AyK}ܣs3ϾyQ`q>qHב/UF Ph~O$׫u,rTM`'X ]I\}X7ަNFÀӡs!C}&0k*ekY&G '׳_Ӂ's;`w u$ֳg = 3R(dM#耦a'BW@)DoPX[j@P\V6,*ɼُ5̗ԸNhnzZ:s^9%SyR A2tY^$g1fpn;(+*u0/h!N/jebZkIH1x'!_fRK4K;>v5}b9s󦘘M)[emp*p])*SCu v:Mtm^]t~3HV>bOhEF\LO'M8?}r6!'$Y*:sۻ4I~-LD6SfW dx~ R-~;RY}*z &Yo A_6gj4uqc7Ob}_Ӈr>>,㈈A~_7^zR2FjI+{Gk*l^)- }o#<?%rvP$祌7!s9N7dI Z/~J-dQL|zBL:-ሰxe7N/? O&܅]]?""7Ip}t$X?-}.bay9ϣWÞbυXb>5FhI6|j-zR?9FAi1ҏή̬dX `e2q;\_" ÆjUf>eA!dЪȂZ:ڙ(S$_.?,٭%n @& lko^>Q66n0,P`_2;F;JBa y&$#B*1(B L>p 4"OCLh߷dW\ҵf,tYٽ+]q /;AUH|Ѡ^{[+y.J'eW+y\C/?G=t7l_GW6)]#[Z}VQg l|η>.`[껧KS"|N)ez /XZ絟zcz7NG(1,N I8.d8$28Bh\_i̤&*<+}`'ʼC;*x LEI2^'?;G> ߏX-}NMr9Ïrn-@+BwpK;F2xS2[ص3%R]G O hX SMU*;xtŀ:ǕjY5.uZIgst̙z owۛ%G[H+iJlZ;Q&-FH%5 5|`ـ1nV"ڱ{-sR4 `gُDDSEAfx4*̘h%r-ty~ ofK՟0*2R2\DbIn)' CIe[w>(՚iiRe5R,!~#١ʑ2s1M /E4 X9άNW_ e们|]ד dv,*pprDNUZ5+~ ?Gs%Hj=|1!aǺdu譛^-g6f?j2 Z%zH+(pZ +BY`z}] P3*zp6_He$Tsi!f:O{] Էs1k;mɥ#"%{V%juAQ8; ف#C^d MC'3WNj F8B;5;LxD,zi@'Q9Ɵ?@y2R~zT)nr[G5r4PGݓL, tCŹ(&[IbO}Mh Gf>h}'9w {-+$b4Ҥ箞>Dp87|A=6:c1,ېBjjNĿP0Cr*ܫ&N|(&g9a{k\l^go Do41&5nHFJrH"dy ܪE0Ur,.KrȠk[ypߌir+mPvsD!*S<"Jq%e +C/`-S! >$63Ɲʏk פ$ \b m{g58:Un9gN'MjLU0M+J"w0>Z).1D6%0\6q.ޤ}He/V\D(EF|0}±g.U mշSc$ysi_;C^5B=VED*ŕavŰKEmLX51:H)>'HXDTWm@I#>_h>P̀UK[:(EB>3^vC,DTtu#x*?ȳ #^<<#`,-'yeyh]g1sP&Q́ 6x9p+ԯ!5 }*fP:Hif{%?=[!}2n0J>,r?@"" "#ifBAjy#=1MMɇ <X`fs5w< rR_)r޽sZ@)y!Ƶu$3ImwʹkzՀ~2._@$NwW͊hD[{A AN_M.,y^{k]4Zkvk2 E i ]M $Kn%;F4rA ,:d6l|2< )k jmP vG"aI1l{sg>wY CL<%T/ 95,#rFZ& H"׵aΩL5?k$t8+xOQ@i"tH70lu$CM|I I;WNSo;| 8\pH达2hk(,*լf( }dD2lSd߾67QtܵEg*(ˎtȑD+%167i SA}(v@CdP 9Łp|EAa8D RNrI(f ޸&9 075m+'CCS7\ڷN"cp'CdOsan9TRN~2u"N?Cp%uKa}.ifJZUg#C0?TogӐ8Ǔxh֭ThlV9kUv;)A;Ǜd0))l>dg} e۝:Lu"O~^~ q3`ao9# o;[?%q^5G>ƺ§g.sL)oCSC1`hێjl`d'ƭ7O7; D[!׏.~RcIsZ\վ_7j uM~N铷|~+(Rw'X"5  8Sߋ{#9ȟo4_+^y\z+ע lD-n-)X:?jWG< YSobzWil6< k d7c@zM&nZr3f ll{ac|'̸odX9su6Elg̀%^D F-pǒR)"2^QrLTp|bRŎ$)R >O p|Y&Gy oE܊ ୡݲz'͙n .+->*Lh?tYoۋqx7y#~4~>~cⱋ>8i.{w9`Zc)M+'Գ5}$].WA^#}^K J^U?qg0 Hw H_͘P>kː.Ty]bٽdc-P$ul^}g# Z:/P$geQtrb$f3V܊_M~vdNߧ!01*T?"+i38CSpE(NZKGtTfIX6Y,ؐqXx! Ns!MTxp;= MF'l\6(/MDo6 lDlBZ3 ܉G((p5 } 8& *&$ ?k+w;!i c7r؍ J-l33F= 'u=k{Ĉ ${"PJ8-%E\ R 㷠T*… }z[HO p mɪ4OOsh!]&ޓaC DpH;)eTL^kH^t*353HKf<<)T+'Wb),NVy&x0g Jך? N1fE}Xi ěM5hz _x>f)o: 5^c@Xj*\% tfgZVR3|~\ZDǐ,9beԴFx R8SVm!1RpP8׎?b8{.옜Oʂ~y4ffod pQg-6h8C</EwK^n(U{"- vGOh}06Lm1ɨ ?VtSY_44 "BZ/l0Pu/SJFPò<)0zo 3QZ90L?6ci5ic'k089{-<%4P6|qТXQhm֔~߫2g1 %VP1xxTKgBR$q>rorU~FBzV_eHiޖ֫^ Ti!}9Ts0ZoS.4;p%& ՚+DᠲLU +9knM;΄BcBHg`x5]noa5koåc:F7u3 86 +i7ޥ61iÖ,mE䭸'k3Id&w/+8Q*Ӎoors }=r~RRXן8ea4#S4|ڴ"'Y)͞fϕy4:bϩs*Wo 6; XB$ UC8n+ᓘpz}1bIb'OFIC-B5`?XZQƩ2j~ %q[7 WqPoCU{鿭p8$`JKc"6FLdވJ5zPWq߁/WUC$[c5}KB#\|mkyj JZϦ|[h{3I>ZAth͸' T<>6HVpӣYiEK䞼utv#.,\xEaϺM\ h Q3x!0-TK^Ǜd^{~ 76Zu ȃQ85!SKܦPLT ˶TJ1OGvP:%PFb'JLdLYhO'١vcY:lBX|/B$.xv5S]Z<@\a8F%isKۭ1C&H $qrG]<L1G@gc(luI}L)Å_s9yӽ8"Z4g^>Iz ; թ@׾I?Dv2ܛ[ h;},YxCAkHuګa@[yV/se}“FY[I$,m5\c]}U_')#=qF4Z"j$ңs:bI}27ɮ x-Z;! ~?cT%>CF +qyP|'#k\I|\hH.1pQȷ,=FeuM=rܷ#Iv@2ȹ}z怟$H^z&b.%@a ZQjL8}-R:Fl n1xC},#0!X~EAMG:RχŚC}ueD)ĿW1*څ^D`+`mtgxn?^\[`Ii7][FmDB( r֔h/3J;>4Yҹ Dd {`V+Xb]1cuB%$^Y5^uܨlR,C* r\`I%.D}ڽ۟F9_ͻ@'<䱠`BlۆY3C]rccoT쌄=aa3ZچA[n C e $u7pз4cm)F3OBJg*RR S'N3gsR-e>dSp)97=\ *e-rp_O1ZrM/!ނJߴ͞q MZ̀wA=d!|Lȳo]>QŹ0ɝo-YPCo'LHmgW⇇ED)77ҽnZYO1t tvvܨ7Q K؎Q?AcQ5vGhU~Z3Ւԧv0=XVovodq %]gw-Hpu 'Zh^\zt ZP^w9a5 hyOUjyNDãٛ%KD(Km(I<1Vb=#WBhNx7dtuU*qU;-T4fz%4٤X(.+!P@L4edUrVˬb1eV֬IDzxc&TG,_TfXQ>^!ץ}%p;bUSP([,tN -v55Z-k/ ]*ɷ/p5 ϊAm۲ξ@)eMdd3@lGFy1$"_4=[HR5D<'/zx V<<9*NeX$P0g\;xﰢ`Ǐi1cpi u|8X 2y+\e%" k T찭bB:jpv ]:Oɝɚ(|>drtALOeEܐtg'uF?_8EX4ai,JRH$9J8VMԩ;x |(N0&pe懙6CĈ1At){r5ni}1WF;ID4U9?nNTI2;BHDIg ӽҏO.d#MJţ= _H\a}btd}lfIB2g<u!ڞe*m$%>k;jb Xt:7Wbxdl,xT%O2TCsmY 6=[5`K7;W52 EhR͝DDp>ݫ.ٕ_)=?7dD5ۗ-"6耲}a!t6H,'-.o$i|9 {HpҕaFqğ] -!f&ϾQa1o"(&!kˉA "#yqɝAM{kC[CBޅ7{d' $Fw=plnḏ\69`XbR;^[Dş?\&0|kh\fUCZCKQٿ{Ĭ f*Y𘏁) F  MMƿ`}mt!=(7BIdwn7:ٺ ,tE ;=6OhqՅT#/}Tnm.iAY$/9]ω;ﴉVTy,<R8}} P0Jz)!=C{%sV-1Y? qĤ萘__;Q vO X]Zu7(HYSEUxtQ3QaTa.pU3A{ Cg`xjwǂ]1HGM H3iA{8R&[vゎ({ve&Ӿa@-`9mtHaʤH2ppqwt5sŢcz[,=oد)2aj<hsL7yy)hpXF)q7}{0^/e Zo|#l!^^/ `1-I˜ʦB_(7"smx:ANMs ;1q&m L:ErG@3ʢFxDcv!N]V8s/&gT6˪DzLģX':N-i!,x ݇LP6aM/4d1; ;y|)h'ȼr5ȈxR6 695KJ0_Pdo%w(|LsA\%qkSE3k0Vd^<"1'"]36$[;N]@Ez\dc]jvS{pr~WfTg 4+`2 nEUotňJ>p5Rg,H $ 4S6.%@CY& P<:&\!O*yܬZZ9;1 _M< Ŭt>ຯ3r)Oȕt'xa:q2 ݳ_8/φЧYk< W36Q授WL2?|Vmsel)ל@`tj's*}6aX%lV$4P– ~ixؽ&8^n7g+J&}z.lVC^,;-WGkZqDtGtnmcGx"އqLa4bTqó_ xhI7od4TGif,~dE1.jشdOYX>YfZD(* 4b&uimj =y\[ʑi8I'B1)Z>D"UP:DŽ0eHIoq4Q]Ke R`GOGLga0::G]Q7>#,"ZJeޔyx ZCrHG*=j vf:+yrD_4{l+(ʼ:&[1qv** ʽJbap؉ _DV;ǃ|/b!Нz>1pj>p^4W6{Б5!fXNq԰ZnIT g,pcg6/&k!E%t޶]0O+ I +TtM\XG{갭W1b=\eNgH P_-{ z- 4~='iO2&ve:iW-:kzl :%e%N2lI;FUGFjNzgSkϫ\5$IuTxͽxi~P^wS 3햓~f[7NC#ϴ&k8'<΅ވ3VjKT^+7iv+5 Zc;8}N?ed2,]Ug|Oc$4y,K00`aYَOO%y07L=CV`5B ?x;~/Toxu,˻]-nrtE߫J82eZo}6eo.=DAY^JӬ `*HAn %ul;z ,W\7ͪ6$[ϵLo̼t5Tܵ\o{KD^#W3*?ҦToß @gJ0R58 (;Bbwe/:hZ5D;UX~ R-DA2<=D+y#@unIŚՅժN;~y)*hQQ`X4ߪD?G[reY>#= hBfT(`G C&pvX[L*f_%Yϣrp`\Í p%?[ڠc&#(ZRfYĥI;;(*&837+L5d{#ț G#Z@Gtd6!4 _n7u8YQͱҿͱ}ٝX(QsnpU݉D#%/E@^3]X9zJ`[W SӼ G2S,1il'N'C6$e/ .Qj.6FAy829b6l"ѵG߄NT@G֣><ߚkESW(.~`t}SV0CQ=ڔ䂿Z=> 0=hca D*``.Nb/&AyLSpT09Ip!8[3_ڊ,.C^+MG ϞYxEPա,˖EJYlQx,FD{gj_/3s#J`Dܻeo,(;rG#JԼad5 8Smf2> LjGu#ʰup*QNuO``\ɪ/r2֛WK C*4)tO:<"R(9i؞M"s3jfR OXvx34v 9X}۟$G.;dJh!է`2ۯai7OEvWG쩨2[#6oU$OQE`G2;^x| K-\ё״Gaսw;hp1gB#1^G#{*Y+ݭՠ] HUN[q[ Py9k-aPTff) M#_g;qE-Rn9K2De0h6'"֨Hftce8݌$> Tsy `Ul}-Y+PgZMO"":2mPJZɠEřo2*E]5ϾK7mRT}~;*_HFYy4w-c.ȁEPs@1b}j73(1mrX9ǠrQ NiṁL>~YSc/.ThO?GҁJJ+B [߉mٚ5l"Mp$hS5^Ab/5GCM_D7%ҫg|Iv&)V y'LAw t6C۹4 x ~8@5'a?Z_W8ޢ]QŪM9 5PrgZFCؙj?ȅJG<3jYZ`RfCc˗P &5񄛗CӘzmXc߭*?å8jq|9 X1w )e"pP-)`S =)֦M?Nؔ;V"4y꿗fpj[$3x|e^{}Z{FS [i==T`?\.0\ 2%]r):֭|UOJ2zɛJHg5nl>ѳD"jd([~"&yԕEn,.DڸqI)w4"ݱpIb7Zב2D5

0ȃ[{ten,E҃o _q} .t{'T}$O舰Y+v/&п!kOAd+r$TopnfCӆ3 :^^֤6y:ijhFmF.^mh[PdDO*M g0N P8şM:g.a ѥ{m,Z<a c={FShȉ728o2i_JuI=S ? ;,B7?HVҭB@>Ra(t *8!i$HTz,ӧo*l0WvxrtsF.$><`E8:rۯWgQ_ =~RS8σn2k5&,[52v?t,S}?=^v9!"t\D%'`]]yN;/k%sZ:$eTdl|to@BI աZ&_2OV$9C_xR<>G[K[$"KdTBE=@׍]uݲ9p ZOσb d?-|1PJ8ڜ-\|5b@!}Z&qǂ] lj\^ܹt!O-8#M]܍쌺esH׮옖CDc>Tw88 euB, 6aK~h t}H+ϼP蟤/`sNQ"q59%%uCRZݺ?~ VYH% 098NZ+aST;Ixpχi [EWCգ ?B@ͤ2nbO9ỿ ྗuq 's$*%p5 Ѥ`('XXY?}-C ]QfkWr˃{Guu+j \a3Pr\n)A&w"o,rM~H4J)t}4U!#H aM8e͡biГz6I3L;)Wr% K7/XDIUWL1aS~,}saAQQFI@F*e.wΉcfZkiXzLZt6 =SY,-)bHV՞3nB#V^p`yQfQVO#Kê FmDV}rvYS[LQT&OwTj,J3Nf`M_S#Ao L^ D9r3Mi"l Պ%)_AI!I-![#o^3\ǽkAr93.kDbB—7w)?xtx'{* ჏}fK𐸈 Jg 7!2"88o`3YedZ "9$85gAQuhZ_nsF S?FmI# U>`ƞK5:o\K-n:u$?.!PY壪їlÑp! p]CboœpX6b)^Ck,pE:ΒDժ:V)R2Bۋ.t6 (O{Da;LbszQe3Rf+/#{͉| kyin o~O-{i?oIy1 ؋RZR|k*fI*'LE^+b[]ʦW+fֈiWuiakL$g W OK-jhs֪X (UV- 5컥ɋ=JTSF3v_Ƥ˕٭4y}%LxDG OHSE_@G2uGGMH\(9U{)H,J|K[ 1`$[\Oz:2y'{pCrWҮMfA6xHx&/.";~hkBKPҹ Ӕ3=UKfƩ XtpzPpJAL G+M̶ kFc2@ :[ԮF| O?N2 i†g:A0n|0EA[3R*.OjJti"%ڂ0oksLڽїnC(=l_~T] DGL71BLL.ַ 3Hi:KQZ^$mkF@4 c|JLJ/AЍo/p;x<ܘ>757dK ~GREa[t= 4R2q 2A'Ńُdn[f?66&(5Sӳ$IQ $8sd;TQn u>N^~ ҁdd5BܬC&, ݰٍ]}AaUOnn^| %EuwAZ&I_eAuW%]^޶ MVS{ˊ{QGNC4Pܸ @\5kÔ OΚB_CXeKFO Lhۑ}O3 Ӣn\ӐbٛDl'׶TB0.}OO[2F0E?ڗ12 71B.Md`BplF"D~u񎄳 "3QtKcNzډEOFy{>td38\"9 `>9=dSL|/\i=-|T<"2"'Je+%<̋fnz}6TX,G-rLNowd h]cK,*8v&٭+5o\-&һ)O&BÞ=pHa^˗,{%>Otahһ([,U|,hFn:؈uHnmPRQPE7JŘXS(y9$'Δca;:ҧEPh4RcT^>s9q~7f|Ϸ(jZt^!Wjǫ.P19 -[%r͇sy?(R%#5KxJX7} | ճeSPw[߈N\;̜؜D;tʼh&s ujRR܉6.q:İnYgk[BMS\m6s*nqtuaQ[iN˞ͨvxS<> p 4_E~tlIY'V ^I9a@whf \_d`hYn9ߺ#"Al%&nk<5dn=KGZ{>4jgmKe 4hC.zoele)'>N~$$R]l@y$gG k%+ 5LIS:TBp QJ6tWZ)@6wQز1 Sv+i8Yf(VYK-Jj fsšp\O3{g!^J5uF$lwQ@%Tb}BatFU3J/g[R ns ΄23R9R)0ˉ#vTnyP?pMMC iF 5;IASCm YdӶZtSSXL'*2EuںNt%`rMByl~'.i|7h?w7_Q]V,GݞK߇8 QaLJcl׏?Fy(/ OɈAj:N@sWЂvB|B {b)[_x">)(H ƣ/@L]5J םI?1<\9EB>'QXktbN#g*)!$_aYa]%vVY|ZN 4=/ۗie3 JǴ?;RďN S }/]RQ6h:W٬) LV0b .,I ް|=W?j]VR)iP#!ɳojҹ)oV=CTt&*r98tOD[K;cyˤP7h<1jmj. J4|.IgDAX`Y*ǂ&JQBj/z~ΛRj7qqDžZg/|&4ZVs/-`m7nȹzo!a]7 JN`ܔ/E@59 ؚ8ŮS:XwQ"uΆгMM #nA&~<N +sB}K2{iPkt̊2g5ǏB /3)'J%PiEɥC |n,_xԯϚEܖL-C=~g ң̦? "8:'סSV*ae I<軘7^ZeͩQyoϻ$5~ͨ*$xH5o)# ԔAC;!anee\/D'Iuբ.SLHF18Τj" 7O/E Ō,e.|%â,OK{~TwfEa)(~JK bGω]eflӭ/QP/+x) M^mNm6a"yF@ك}㷄WZG=>U9J3@̋RۍmؕvF]/ gVͅaV8ȕ7CzٷLF{@qNiC3ٹM^:d" brڷuz0ލ&|'SFx@u aCzqUZeQ86 wz޹b]xLb*E D͈UҸg |*_[$W=3.e*`1S].rTw)!{N7iWyS485Ug1UD8{txqЯ*$&9}N<5d˔o ԚͻrU#IĠ8CnP=e(Еmܳ"dNڶгOKu/@BռI&vUԿBr1#mk!J4IR^/LSP9L97l~J#E# > 5%FZبԒ7qb]Rs{4]xJp5wΏĎeWxpY*]3j1ÖwJg+tz9LpMtvvK4`{s}|!\m ۻgGFB\QnmIǖ"7FoN5«T[U5޹FP6g;+ wbGAEao̘2tr-qOc)]}To_Y@ŋ䣼`6aKӭ+RK3)TRB:X[l=| >}'gKr`}7cVugR|!TJQl7P Ӗp7d xՐ<0Ǩo61S ہo؅:>+nL}Y?';:XK^h-kӻ }/͉OiVƓ@9YrHjRBnu S}$5b8mJ2T'';`aGpCHhxs \6InzU%)=RX$+6lp^?$l&7_(;"Uf }3T00sPjK }e$cTm'YKNЋu9ێu ᥺̿tT6D|^1d@ņ,aW -=})TZU}MR1d ceFAͭw]#a ~ ӷĀM?a -1^YKe%#ϜlyU!:9ܼZ45iit\G=4iLdWv&=KF/fʣM^˩Ƒ vH%1:KXwʋ'hɿ~nUjl9/? @8,fP@Cs/Zj|nJ%|jy݄Q R?ױ~ o]m:l#t>=o6]hџ 4 2SmnW<:GuSP;Y^/^*S%iLh MY/]}aK`=]QXrGIHhbF?y#дDcrvǃ+T}I^@A#GoJ&'LbĪ'{~7)b3uJ~$kFG}# w |8U]Eqd|` io_8v4fKԳ|No)vu]*nZ:3fL:ْZ3:fVkk4^@4i3mdev51nZ%/ۼ2X4LMHA 3˧pܳ񛷖9'䞀Dy/ҧ{]zt/p  rE~ X. _Tz`J+>7!T.$'g츈e!'j4v.F4bzSe_O qesSƠ 5}2'cr&u a#Ji9~ B>KJ_1Y $_DkAt J}@HRH]٦3"i+cnK$̢(,GC=%I{{ '9*hnP6cC[f>i#LrՆV)mW65R(ow\+S-up赎[`rjGu4%&щmqSN`:m3ƼRnTsZ -Wb]Ța ~te +"cWTM1ա A#ҮrzK#(P.)8҉VT*dM @,W,!"WŦ#@|}1$3\i )jhq(i D!1 '9#j(22an}zF 7)wPՊv%^,kNwʹ@+d1yק=8ٱ]e'XfWr*TyȤq''֔q&g9@*;b a~|wԆKwQ]ٲKVw}o*b?_]k}C :R? $DYIa\a}b$IE5t{N`H/o+5C端 SgIb3ng7c)]Fq[ȜؐHE9Kge&iHus!@kH*u>B&qֵR}#"e+cȝrr5E!Ʃ hDhW܅Jq )V;K;cy.&qnB55_8XAHŽU?Uu25Wȭ(J[w ]>P$N&0F5|QuN=QΑlPʛ`{O-BLԜu"yF7?Rj2AK9rF @灅{(eYqAQMb26yznJTZt G 4 cpfl5H#LQ`йd<8sr85vXSP_"d˵a D4xVѯG'S6^pk>2uUӅB6ohNPtR"S;Q퉹um4cT(`T#)X>]H/B!U+i4(:|_W5BJ` mp?I)Crc)>Zvl*">oGTO ʇ6MV {Z ˃^ō5;u]#C nS\Ԛ?ZzNhXW}]zzl Ro$D̜=mһP*MyG̷BR+Y@0v6fRE<nИCU (/\=qA\Gb\riU㑺vD/CFqFHCs[:*Mn>6Eho;^dE?EI !?v c3b @,lqb/[w}粏>:w٥*X 0L0b ZbQ&]mѡ3`+Mw;; wݜR@W Iy|>9[KoRSW8lV!@HIVow{PjYߧdpۜfRTlth(M엄]R:&YD`H}R4 $l >5f:9|oYSe/1 Ȑt"f&b^~C*H"n[I1(!$BUB68QxJy^ǧPEG>7)TWy-r9hX'4 D'ybs̛()s)k%&X/5XrOa;4MW%JW6:V$=9F,u:3ef6M_{LؑfMd|r. n9Z ,~V25RE¹341?n, cڃ?FHH!VoжhY.r0kI/5i)qD'\ix9 fyrr*](r~AK}?3|&h1L% g[WI`M*oqv*c-(}M}@V@(ͺpU6ŭ!eΣgLn(;ChE܊jsefa 0r#Y+]1?83:{gQD< UE_J u=%+vdrżӘ_1OZ*X;-*_EĘ?> OQ_|>WS?G.H,tgV^U2 [f<5HycLs|r $!Ǥ )z\(h2bǡZ+6!2ټw~fRĠ) (Tbo3 ; r[UI+êl!rWv3З != ҹ +0dsV5СiNY{uW+7k+0sB El$`XrWmXHSm&B)hc p`$J.6YguK8ʪ 6EwmhUeB^x,,6uըT_XVt2 (`X&@ vhHj74Ȯڪ+)y#7D60/~ bi݄(GԠ#zJcc5N8m:DRO*~Ă?:cĖSby f-/GӨ)|z|.0u)e6Pwqzo1 mfda-7/`!/ۣZz].ۨ[#S9 bLd8Wqe 0p yP34ӓ ΉsM%oe2A?1&'wNsX@:VAG[GA`+cɠ˸^l?v8[;gsڇ Zߗm;|}P/z8<ʱ6 ѵCd2>gj\|&C3M=nx;6JHuoŅ[oo-79+~VPxHc85#īX*BheԿu1 WQz 1bE (nۣMM각v!pZVo]:kF@'gߜ "Eh֦2-ppW"6z&-"ڵL#'esm+H x .PXM"_R eAS4ﳎj7V/!wz`59ה Gx9Mo|xbɽL*vZ긼)|ȋq㭜JݑoAa5Lӵ.Hm[⑓@lpmy@q 9X.C6v|?&fOtEl "I,Wb;$$c ʩ(#,^!jzYd#W&ќؠA}r`ST\<4G1w?, %y 7QEOkt 'Eo !K 8BmGzW*!pi`?ʛ`ƍΉh-r ,yl ^peEsɔ N*&т󵯱=y%P-u\H=X Qq0_V>M+s(2?|d\ 28P8_g8,ec"jB-Fϒyи S@^""]KZ"h~<"{Iy-#. tQ┚gʱuC}t8:B3@Aqy1]Eʒ%##P!qALk|ai3d u<35$FX 61m. Aig܆KlN!qm8 [.ڥ.svLn@.Xo̾ji ]*BytR>̬{_j:IFJH^GM㴿Y9Vj19-¹>tR1G1o[&E)D}kDEF:,;kNҶ;Džߪo3;{cnOӡxZJ|~KgrӇm;Q{.M0qҼMU6IR~KouÌ-d*k8\c>~IeCba"ueAfPW"L)Elw G߂"tȖųfbD~@֛(b'Û͒4ҞHG-NW6Qs$0rRxP' ٔ^=3?93!ibF<(*t Y0Px>˦խ7DQɤA䤐tLʺ/db\_fkEj7#;!9"n=GM(7W5P\{cI(; :mxoQX g="$AL\Éh wB)=:ղiQtQ77[Ar![O!GyhtZy{ >tJ~ʵ:68w[*~ -7 @ QrHR҉$HtHОú?4,|vMe"2UzEq>]u< I偳m|5vՆxO?LV H̓d+nH+F|}'*cx\AnQn ֹq\ANb|ݳ-yDxD(*9$)wdkGg"X_wvg]HNH8|BeFZ UVyKĦELGݦް7!}BhŚQ/Bl+ϋ1س̿MC3T Jqt(G8p`w->'p?KkF ]#k8Ia"]?SHk 6}^7BIA/)2]=9a$>OơˑL~:gO9>T]'7'-B+PW@[ ?fz%Wʖ?td^$L-?YKRk˓JU[ Re_.To8o=lFHMJ-īJ7g[b5۱XO5d^l xfSMi1~WT"4oC LN˗##(ث݂PBQ+zsvJOW&pddG.} ;gC^aq&͙ ,9Ø'&KWcb@{I78;׈Zо }2xԫ 5nDfؒ#s^t+JjYMMY3LɚX0?!}ݬ.&Wgʀ4][W>s nBz­aӖg)l N~uv?)<+&cMe \'?4}caTʆ&G :0t̃Y>or嶐~nH2N#1@Or E?l0H9ܽhDPӯv~c>v U1bD.|Ɯsi'(8*c.rgU⑋ |S8>kԗ:|KJvUnGMQ<ƝSTP]g^ [v5/"]e ~ j:t Q*74 1h )dCk*bncdP \a,<6}>Y Q: D rxNa7}gz*J+#c$G1vH=([HLܰȊ| X 98qSՀYW1! lIr5vk\qSi 4b m!9%t^(6.+[gaKZёKC$#RӃ A,[jA,A[! [W $ig$quxu(k-/:X7_Rtx@1@jorRܧ㗙}DXI4 j l /p\i=B,s$OlL֨w091#>!#3c6ň5,b:'ketTP.kݓO0#Ea՗YȸV)ڋ,٨P6t!VjV٦ Kw bI{:a]X u%n%Dros`ݠYӇNꇰ s2֦HV=}TjK$4ֺR0|ɦ]|iϻM["XַP:}=&ACAH}EA jQZK#8_s42 h舥WE_SHvǷ^*dpcWw7?\§*w[T١!OĈƭ2P5 tx׎UeCdQDOGV'bGtF 9u-owAtђ rz &PQ*psQCi:gT C5'S}ߗQV9>4vtʳחi\Vҏ^YyNUv6NP+[Fm䞧!iDm4U5 4װ$/rYx&r <iibBc84h̷te.VV w:ˌy 1\=m >.-̑'lӕ X\jtZ}Ɉ$AGZB)lO$ EX?Eׁiar&.RBD.qps wlyuM}N(PF'PXI-/^y9D YӰ8W;$͆=uHF_{*(>O8\:ݓ"H - KI"Cr6B:)}m2o^(H=W(gGR=촽ok|d1tCv"q`#%յ(WAcE yAyd&)_6-~ \J8 =3=qc`^6ȻuĊG"\b_ <…y-l# ӾRZ {zZ>lkC616"Lƶ>N<{i G&?K< N[HEwer)v;9}g͗Wڃh}I#%ͥc[Of Ӆ~ ^nv7v8g Std✫Zկ6Ok(n*r@NHI¯%aP^oXmي|VIGP S$Cr*!+ړ߫P>_(C' |?j, RΐѮłO[͕C{yan?jfxCYrհ#1fd6&a ́_vj@'I +a?!?gڹFHQ|FQx[|]?#rUhj /7XKU"NJ4l[fqcC)e3)88oPЊC)+)d(=߿l Xݫ/|؃78'-Yqm0 4i'Q!7 Ek>휡402H!{d[6Dx$mh="I qΉP4;Wlg> J x-6iNBzNL2՞QxV4iiLcp߭!_0dOV%%6L^K"!%=_l*  mesLSY Ahf,:Ux{ Xʤjs⾖5%~FԭI4CE /[E3BJ̫+{"|U #uJ]Cp5UG;\XD;qL] 'hA&GUI 4*SIEQ%=$daDYwV 'm- s #Qߌ, Fg "6QU\96^1`gc:;$ėJ<4brYԒ/ cF0eO +,f!H尬Gļ'TTU%gҎf~m۟ބ&$y"p:(q8`zjtv\X: +2_JX菃(=I0< z֏%ᨼ6g=/= $vX,'\+Nm Kc741So2P\rBiK-ҁD~s:>3:Ζ2y_4kBGC6JPoX&)U?Md,<}':ETHŵs/2c*'͙Q6 fD%D, R:4`k%ʆU]E`fhk@"F i*x2)6<vg,ʪmh&m}OЪb J58MobcWe\ /Q7egKFk̜XGTM÷+xAs9g[=`n-"J%KpGӟ&U/_8fy9OS ЦY䨪rΠtsل]g 0W: -e(~ Jʐ%G >]*\cOM yn: ~E2K(@¥`opi%uц^<2&9R Oq'R _վCHP^JvE˪S1_̅B"C[ ƗvQDN1E6Wm\Bq}6Ѱ'oE|R3^h;'Uحc-p"a] a€~*ɢ1Ca:,0i3j GsGz, 6r\|M0M+#o3D h4mX}÷nȦyBNw;}&/<*-\ٲ\Y2a,#]&jlxǺ6ujdb.bbscj. /uPE!|;K=ڮZBǞdl?R>4w&djf%@/F\e5|7Vr#xLbf۴I ҖBW*d >ME|ÇDždf (ADK acMf\8dy+bkp},&Wv n&4YaksxE}<q˔߇Y]*״- [#/]ϯkbvie1,-N@f{{ OlXu={z%Ԣ-Qge&Re)%O~2ٰ!e!LJR2yا ]}`0_)z6Zug{ HOX9H2'؟>_C'CƧ£&%7gp`lzoϲ7SqՖ#{k u^UoOQ[`md2gDWEVwڕ4GA0 ZxMB4Ui>%~>tBzlo\6B s2v66teP2L'&Jj_sI:Hh/rYʻ>}ՂMЍƒM+ZSFbm¬śB)p0s2It7WBZ7D3:N`ѿ@خ7L.UU+*ĸP{~I-mt kn|L=ˌAR_NhrB_2mŻ y/arwq]bVğ oC/[39$M<`"8z{ٗ{PD3`ᘈBlhn9x@&$݀ndAyNQ P=n"|97‘H0H贈֑)otߗ$JL1Rb&ف>J6)5;2VB.* Tޝfu8Xc篳hN2rE 1UbY6)uNbi6Z5E?8/1'\\tP5BBNJ+RoO)VlP*Vq&TM1 L/2th8-JA|,ԗ&5;m]g^Ak,N3H^C!w"2ʞ SF"%Y7;LtyuL7bm4^t:6P,Yt6RO<9"_ {u6Q0ό!~P08pBwd';=CˡjmlˣYhv $c *qˆ3ix_RrzU_!'O'+#4cs O aot=54 5Og~)rg;OВӂ9p6h{3 i8-qRW@ xg m[Q@~+Q pwI~0*O[K45S81qLnkc 5y ,79)vAɴB\Mgg{J;GQ'?}gȿdy8 /ڳ9XT@aN!9&[p_x|Q(Q?7sJ 9G ;: 9sO咭 7@oCYsc)pkDڳa;쩌TZ_Gd8WUo:%[5 ^E+R5qeppEy,\4d].8->NwP1\_vlU8jM᎑bE_1tlx9݆|R8*ooF̲-jɟQ}wџ.`|]:I+K.}CKTJ$1&F{#*MO%jRі6}~_h0f!8!ujяj2CaV;UXSKfG#!'*, … m 5q旑j' @L bvCQ!v|+IԎ?X!q7Y_N=LgwSG=E TDzC}ӳ/sh%;j+W0`]xCVLzD6rp\VeES7݊2dwPJ먾= uÄXC!΅C܉yP)UB[UO!)9Ts ,J&Yom4zĵIgj-e }RjX"u_9M̌t"cp\3 "g) >t? AU-!H0\@-*+pV}^Sڤ#s?U$u2c«4c:?2ï,W:ү$TTJWtA9\pQe3-1>+HX}Sv\I uP9($Ua h\oTrQ 6y[sKCD{Jq:5 H&Z8I].y D "j.^@uK*0>RNwEeժHO-l4T/^cF6@9T8r zdMeyz<76whLA]Sb[%wS90XΑ^̣G < {X,BJnZ?;qqm֋!s)FD‚|V1p!Q,>f7rةJELfl,.'15rBD/fI֟ )7)aS_~ =5p[ J%75Iewp50m!LP@Hsq ^t[HLqFF@Bd^{s牮ӗ8mRwgvdJs5D^j/8b!I n%Gڀ7Bi ka{r V'\WK?&r-#/Lc3P=Ǥ\Ź]R0@;7kJ-S :.i/cYE`̉RF>vgNeK^tf%B%q+jBNa@6HzNtz1ѼuZ`S ;LVƢFppa^_H ~d>G?:8ʰP`WH)z>8'B2}d`Hq(KknRm5nV*Dqsj:`<9; yOƏ'dIĥD5hr:|0~3 *'jJKLZqE',[#0T ֮768aS̼I"I U/P4 all931FC 1!j6ͽM39y<(?nDa,@w4b]zφ-ݣQ"]ۨlLxPQIr kG{g/ ˩56[ :hNG;=6SȒ[(#<>%ŠdCeJfKo >I 1W% m!f2J{'Aقpm;jr0tVFLKEu'ɠ맽Ko.f9~7F%#|+ď)&̍4gnp5tQkbhZm+x{CCc+7 pr߸w |]6HH&E䷴[Dloh紴(V(H%^B3hwg~Y\+u8r]4P"%( h41,)J?;va>^k槨ُ>3ϬcoS|4IKAv` 88Bmu t+53a;8; !?. 7#ח4S?OվKeT0sGL$N HTxhJŦ(.qAb'~bYP_R*eݍií B y0,1hN?a- _Th]S<#ZT*j 鍙wb@iYƳ#" H*p)'M~rc@u(hH7o!Y}]m~]J;1w :2JU$J]1WW#[ [@@̜o4LY2_\J9xA \B8OψUٻm3js4uV$WE(*G b2ms؂f(ho5|`j.Npqhq/o &e$u:oIn ${ĶAЫƁiH~ ˞-W⣼0> BIr3밌.>*,!V :.u&vWkFID<=rrĢȭ-"[4nI0X8s'hW <8kca 8瘾} iGY퍪]ZTĸM$dE·[LT'>kԩGAeƉqaz!Z~04OTRfMuY ҐMhM ]<<LG:d9`*8+?FS*<<_Ԥtd(d$8 gA*FLhw*_D{$JJQ)oEȠ|TjpVf\&s^~Km#@aՃ_/ʶ>@V+yrzn3L^&>'YV T9a*3e揶eb@H/`ʜ]n1JD=0 k"ůlbKY ئ%]L'ءai-"^:oCQ.:ّEEd%YK`zޜ}ב `HoSpfpO3 3ۧÕm[ض"nY_%P L {K@lGSqQTkHniq 1 )~̽Mܠ l +Ugpku5J") -(^]=/tnhVz x| ~1$~/N] F 2t@p{/ib7hX󆲹wW@E)$qW13q(&q蟥V.݊\o1۬g QYC[}#Qm6Ai.ZS=L_nUQl3k{f!S^*q}!)%9&nC'y:W/Z$&kNyuvݬ`IUV+!ӻ_G~ Wb4Úwܒz`!O]lG6pY96x6CP?d̨^q݈1r+l?vCAnHaD^gF"b}~=r/%9}QЛP8a䥇[!nd)aN<@FNk+]jO.ѻph˹ј< y3u'ϱ=Mɫ}wqg!ms4mS>]3 6J?T`8GG7_lA*;4euܕH{٫jQm6ęg!W~WUe-SN,4w0-B[#X [C]m DaKbTQ/nk >[ưX5xcpU x^I8.Z/%ZuBLӺm"!N`-1h=2 $O˪m/04]%T'D 'br> (?xtkpPOE휖i  jZd3[hStY8[_ ~`}CLE+¡)%_tE X*?FN*tٕ2j| xз6zaDsJLy. q<7 Ts* ?3xPL)"fiOkX>VgB:z=vL#{ "5Qu:K @72^񖽓D(s+sP&d97'ֽur}~l2cSrۍO{ 9xڲiQ8bZ;oO/Y{JbW34Znnh۷&\!mbqMf6B` YAĖ@ief)ʂdfR{03l@ ֻi A-!obj .0m24.?3P^ +nBѮ\Is 8_`>Pg(|Kӣc;H:] }(NerMth} 27p%xv3(F< SB VZB:Qt o(  1AoZ9oqD꒷G㥳B Ekܛ+;6"4-ݖ;vRΖ0U/,'KA1dHwLF: ҆;q39a'519RU%%ʪ1%;]cogcYA`T20]]O`KKɌ; FмS՟6 \9C4oE tBKI(ljxy'}ŸJZd:dXbyCS;"尊K2t/I#nWPo0. + kĐ=BOd}j +/Q ^ɽ$׫!TqI.4Y?Qd4~RQcyKґҀr NDa!5_*3[\IzFKI ztbw΋ 5ݴt5)T|S1{*8GYC桧#&z[0 ' 8D9jIT,|TC@{BRLtɜF,|9bȃGb\"1[e@6%zrg.9힜yƚzU/,0G xLJZMFRMHBޝO gx҃tBCpg+@ɍ;ZW*YQl g+I 49v!ٚ1j!@i8i/Ma-K`k"͗N5#vR IveKJ3E%Ц ślс{V7t%.,_]vc#WIA]YyK Cktwó\[|.ߕ$$C%\'m#\(]+t4jA=NF1sɼ?D3&px2KG"Њt2k_hёN`B G UN1BdUNvT{MYYJtQeYH/{T;1RrV"Z]O0@/򚆢OH."憧cS}(&dOaLi*rzZ!ܽ{c?k,gn90p(I@j "*RPu1/!@A3&Q8%/#qcyGoY(WKȻXqe| uX f;M4;"z-4p}ԗr/R`cDmR\Bg( v 󢽰x y?N6]i[Ѽ !&{oB̮zDxZ%%1t_X x+^ {9]IX `xZ~IdWt)xI9H;2!bs"!;5ۥ?$ozLG+hpL_6zՖK%kW!6ETSl x%gmEcKV;xU9 H',5ۘ)r k@kl@bE#6+њٗ) 5,*XTdvs~x՞elq$7b8pJ(6-MkK: xJi[й0|G1eu\N%z(QdVs=O M5we9Ș[ +iL(f+ΑT" (~:٪uJ*ʥᮤeE 7̨3㦻 d3 "7fc\m%e[Y~pIWu@W?LO"C [R$.X{TʷS!0={c˨e<>bcwab΄`F>d@֍ʰ_'MEBOylPb.˶Ѽ?|.dL41荍!'=]Ŝ/{H!!*k(Z- ?ָ?ڑARq /6\*M*F/^H yqf3Em4 l~%)8tX-RMDZxd~,Rɥ}O|P~&*qOhj1B6B:0c1DBقf$Vz )=)*h#IADZҊ˘ee`8%Ir*K}K UR-W1 |;K 1jІ`}%uqq""? NAF1H-nG!8Ƕ-ݱŁh(_[*# J2wRm޽l?Gq ծ_ k.Df  C 14^#js- E!9./\hzn˲J̬U=5mYz5Z,vP >>jSP8Qԗ u aa^~eg[|7~;$4 -u=Ϫ`&*k bmzwqą0ٗ\i? }@L21 Қ(D4oڞ*K&d djR6PEӖ]}!L쐎+V⡲ʄee8bA-:2v<+3{oۘe엠<҂1+~e۪n e@i5)RtuTf0*cʆ-JDw{rqcC077Է;#▎rȡ2C]8e-B \ٹp-c4e͇Ѹ7pA-RAq ~$PV;/t0]y>IgI$bj͘ +|$'1Mdp1cozv-ҵ5= B8@MW{[&Z;H5mDf#ڵv́ڡW &W]!_8DPÔ]4"EgnMXҳ޴x^#C"pգfi+ʂS ;e @ȽِiB8[ͳ=o3Gr=+,(NE]axgT =7+iC`?F`қ)tjonXMhڜa%wαgXڇ1bQ=]B=#R9U'% jN^IyJ ^iZH)U|PhtK~>Ru[I-tªVHbL|Bm:>^+ V) ln+zt%& sq-݈pnSQ1Y"yVNֵl:Oҹ! xcY,)o,_Ő(*̙Cv6Z9JƁ,!}Cܵp.8όD (㼍.{$^Oc`a'$)Yox.Ӣob -i0ws沽Lna_-CK!vVCvVe=P EZs@EW}Fz1vꌘHz^z0@(JҋDVv (&+'uutmxF6(6{؟ؓ8A_,8"Ŧ@s}cOl' e5g)2۳t8ns%g{SuaE*$_Sxx/ko> 0 %2:M|^XG?B$H A7[J7S2f_⬮)K5kZ g;/C\KJ >VMՒ %K [Q) ӊ(|jkaUe?0SSq>G] Vah ^$, ToƩ̧qY0/1.R!:b)}m/9zYB5QD/̹D $>1*Ji@&qx5j61_^<5.2љݳ'X%#J~Qd2sPPJ?GX,?;JCo 7CniF{+=idsL2ca/2溧s+23촶 o WI`*͇[d KD=#7PIX+pRPsץo@dVևXj k,pz2_$G- ü @f;l;@]`jRu@I"鏮6+ɫSGIއ%馟&r:,ᖩο8آB!52o'Uӄ|Id(sXp|l[4~$fV&e,k8EL" 񝬀32-'{͞ K5f+ \o8F[J׷ߕᴄBrasrGlƙ֜` (^JL].Nqd#R;VݒJB=Y[rTr Xdt\t SӗJVX&Loݑ˖hJ ]Dc^~H`%dj閌|Y ;"}"nGa:6y^ 簖HK7O؂W ˖ Z04Ϋ;-֒qo/aibbQ9wIͣf̃X_d *yo l_U -tWfO̪2/J^=eΪ#U2}5 E7#wq]' ‰l 79CZuH3RYmAT6\?I+KWVSz1n_MxcS@}\R8\U,G!I7\"ڮӬ^ `s5U:I]ڵVbdd;HKX-$7@w_o "b%-~)E $W>(5T3" ZnHܗW|8cɯ˒{8]ew08S0M#n]Bkm231G{T%`Gr^b=FC:%8g^vyNp=4xt% P'yZ"KC @]-<]h9Puq:0zEܿS_<=qa)k .$H5Ѹ05h?/MȖ@ y~6#@ pљcG\4ag{%KRX eżLgFl_}R@X8X2>)A5`YAFIΑ0QuhE`] j6ƼYAKK҅!9jϗ-qAt[ƊpVKrcCGQ0qpҚ~)qI vĽO\$垉} #!WE@6 .G tG _Ϗ:hNmaLPuw&r-Y]_GzB k*–#=%\o( *hv%F'z;;ThI2Vs"i i-AkdP Sx#K3/*]8QQ^FmgL q 4mx<)c^R~EZ-FSCPCHd`Yn.>+q=Gﱗ\ MA/̍ ٯk\0gHs"ID>պ'ח9*0$5RElܖB!2ԬH>9ћ5GzeAv wuXVUfB(z,܆y鐟D͙ ŖĜ ",邗%9u7c7F'8VneIUQnD3彸_h"P{Ks#¾z\Qtd7 ƭ e&Jvo&曷cm"OӶ p~$A{zlMRu !:EHAX?INRn# p$^] jn b=A;NhKkoW$^:"k  !ΎۀNŜy/}5& {1b^<0-5;ܸςsކ{ϛ:I 3kH/XGG}BY&7Rq'S2j/ ^©7txjZ-c_ Ou&*Ί8Pδ~3ia/p¦&tMvtIHH^#>w ._Ajb~M=i(}c`rHU@8zԽ1=3 '=)a&@./IC38ѐHtz ΐ}ô8'5}cgô*(2*\ >G5v Kw)8ɝlIJp]ڹ~8{n@8"$fI<54!nHk._}F)Eqo8ET9柃N` 甈('f y ɮNoN4mjw ̘_*ńP:tú9 rCg$/Q6݂R|c8=W}u&duX6?qN*^bI H{;~@Bvy|S2p<Ɩ{ˊP-HXh֟(f(߂:Ĩ|ak8 ԼS{ ^F- P @*ldla\3.go傫mmb`sX`ύbu5nrHBKi(m$dl Pu/.#1|Ӄ3> ?Ǭo8 ʎv;!|v)xQ~X'Q#z0<"C[7wİPԈqKJH v3"0BX71HB=J~d lNy՝Lc5(tN?Pc-Q Pv-^^=1gW;];a8W&?V GռN8uX8SYFФ}p NpҝQNunD$eod"P W>8ɳʼ]mD+;. v,p& \ g c;;XKl\ xl)2CXu6ů^^Èi,8Suns ˆ'PiZ|~a-fR9TNPz"?Beg@uw>5\Q~( SsZ O s&|o S Й]?q+8NA͖R[ݥ[28SspVD會]!o QKOǥ]wpdfB;F廗N!{0ľ%!7+=omO$uPzTi[06")G3&r/5^f>ՀJ"|ZP/Șv;A) ա:7 oKc*l}<0uIREr-$c>{dKz"ZD\) y%gq=%/#ߙᗾ͠bʠEJ-I;N9Uo33ӎ/lr {<(Z.Z2 @e㖐` J_Kl9bA#6>4U=BfZ˲Q٪' ׸8U㵔}Dmi"W= $_zSκS)5vtk1W0{U'N=e5v%~;T,dq+倿\ZQ~zc}߫SY[[V`u}ʹ xPM]I}h{o)/gzٸ}ci7ģ%njeGd('sjлRp>S=z fFwz0y{o V4;}]399E5.b^_O` \|#*0[BEQ-F@s7<6NmCk;Psup^4;(֘ 7 "rv|4;Uam#lX ,UOۉcm?z1&s۹w8%ڈl<:B f"C 6~ z3(ی,R&m➇L%;hcx0j+8v)FY;sKbJ҇1]ZA-:\tljJ'*z=~jvv|vv>vgG>;}E[m09&$bGRy:Zu"p!p =C{oMfpuhbLSqzXŪ)u8m$ا%m"^BB(2[ڏe)WEkqt|Oc5)g]j\8&@ss.H#&]|sb'%v>c ,3Y Ӆ}'~(7iC 뼨'dz5p 4aa\ΑZϺK-\3 (F(͸CKpK>w[3 |գ+ac/HAэĮ9L9 U+zWk58 -s|Q(#y0Foažzg Q^?Ɲ:n91 /{+GO=[GkZ0⸓ @XLQ'i*sY ?o(+-lu]'''U^#K9N4.p/̣>E~r:D>Q_fk1(T c3 FhЍ^ΓK}a0&@&iώ}giʹ ŀzalXl^Nǫ=4)Ht>+/V}"Q(<0VN vUWJRBiEZ)+B:@Ty>O ZlB+waK{Y#Ư_܏ڀq<)a+c4ʣ׸ 3waLN o Pcf7~DaQKKIJ|+E~gjeoPAZ'|&pU%JNJP.\GQdJ=D塂*'n~# oϫ*BrL;~EJO!U8u)к)$MAeF +Lӫ,&ۂx!xc'tm!.l.Y$kgn;NdRχy}t}(@46 M,PROrIqfMVg3cnVa O`͇8gW^ ?1нv 4`'6]Lg8qZG^Z8a)+m|UJ2QH kۃlPAo[ˆ bK1)CԮ?qK ,%$?!jLY<5'InW=/j=Jq0)V_K?S 5Usc<̟ąW>Ojڸ+말 JMn;KN q(AϜ@yKV!Am~k0g$m`w יEu=#֨|y7YֶjtgO9 UR_NFN[mE/F"ץA[$080 }72PԠkhuԞ|gcxjM/_;Vc+=y9`IU7E!>$x=pz&"cPG_&<0 Dy44Q_|9@)un_A5u1l wߙ#v0Z懗]4+r}3W +qBzWb]ƕ08vZӉ͙"PthȪ?W2>CмX_LF"hk}'pmcEtW[ H~8"dΣ{eIZɽAF5iR=[<>p@z#8>ɜ:Ndzh슔5f?h8}l$i zoXwB*'m/!i?8fXC&r3ҹX$ZYFAv##=_5 )7Qx;S!F7" ]x56_gK_ngoxsrdR\|m'uzǘW<:98,§d!/czcT`t`ھA?,;vyIվS\N6T'4v)Z~꒢픷*,=#΀% dlS-lzՐ=͞M".5sU@ƸT#K\r+P& qT$m_AXkXo%,H,Wѡe5ZW>`hJRRhtVJ!$tU푓㓿ܢ @@棬`P+Lx -2F*:B בj€$&1oLO#Q'ɮd~a dT'ɱv(+usg3^^k?[4y=/=ʕST2t{LjqSn`ϕBp='kRE;©J DG^"o\U?ljR8Und5B< \<zrrޘgc|++d}!˨5@tBkE ZM f(DW)1F)[Z~oV݋{,wxqw*f\7SRG*߇DըFOEJ鴰WO3 7}f^lyL, 5\!7v>F߄*m"ݖ2tQo5WtVd~u.HlfT|%nԦCZűJ ӽ`eRlZw;Rdw lJX/!wDzMVв-Γù%?sűPH_PHQ*>Ck@-q 5MUkE©\!1]s R R"{ bֺY6u1L~st~dт&s_Qt)T)OI\QdS YAvTбG Ezsٜ;I*:6SS M$(Ʊg4wv!ƈ~oџdE#B<ʰ}1ʝ6ozSg-*╶D G]>LdaoOal<=t%V}x0I Kba0`2Ql9tTzF'񰅈1ا73U+/?!Jj_* dgP X&Mkx gsT+eC$[w)h +U#/211(4A8L@@H/~<K^ԅ-Xr"!굚v{ǹo΄μdweO#e fUDV$a|"fŪ/UOA=ur ىFD],D)& <`( (݇#iL BtǞ޵{CP.-{Z@U'OЧgF0hoW ; .+5f l8QS1<"17J1(|ɠrL>Ah#R&ſOԷ歒B,>땫dn,ߝÊPIcd_I #馨W֭GkK^%FSrnPB '8_ \[.v x="`%hLkwkni0%@Vf󫆛 6 74Q9dSREׂ $U`S r 9>z {R7N<8_NX_݋Y)v\*~}[]xGC@k<>ZnsngXkšnRZ Lp 6{޵0p-~y;aHw-rd@G#k>ߐ5: or97,ߍ\M7n#)|7ߣvѶvk" ]ԛ xcK :UpI)ǒƁBs4)cAQ@. H R1p&~A.dt$;H[VN٬\/mL,TU'v,ؤ8)C ۜg&"EfGdc| bF;VhN|D2+5!s7g "8;S;9R/k|Yhcdrb*ͭ6ow$7z+Uy IK% >e3tޥK^7a'] S`1/t %֘ hc ұhƆb>mQ <ح5 \$ J+Գy _QudO`h6!;7,׭d`շEX{n mƳ7 aρSS* ' qx PlZ261 QX9-Giae,h:t񞾕F[6tճK!;hHIw]{X +Є^OV$2Bdd-rؾF_~֯)mvGnJpVp$6p[DMB,px3)@c3 oRZa*e#Ȯ)NZЊ4u2eb!_+H 8d|‹ktBYb9D=_}-/P9 mAJ PϺ=_6Kjf_vA6 unʶ&LK-vQI0}N$O7[]h?ׄD% 3 ICn T_)˛J0)4h&y@oPSˡu WgV%#'}?cO#70.L/$@;R?lߙ,EG]F|m~ uox8VQXbD"7fy#^ߞC1lNێ"nUbŀ8c~YqK)FqiK:w>p`ÿp|`~RnN>nn-/'uTLʀZAtUklday:9M2<M=+3^}ᴟ4e]r\o^@iSl(FIY t)w D$byT{XUWQF8/s\_[aC)ZMpaMw. O/"@4?~OXEX[1u`0Fc~  r- Fa!ZQ Iѥtq1,nu XCԒKbc̰ &BmZL_%5$Ffx]E7uc 2QFb@G%.gL惀:H nPZ"9ZP| ͢v]RlS֊wn1;ʃN?CWs?g,Q K'<ZF/Y}pv$SYu+ M*_Nzq$'=QrGOOӆ(ByOy[5dI8/]rՖŮP6FsjX3o=mt,WP/Àbz2>h!* p:npIIZ5!ib\cb0b05|E@eF GW!GwL3+;gs't b~6Gy;4_3Z9ҋ92)`[0"<1&f7(?ERP+5k6;1k1D٧ak8LvH ?<'sE:'2=JvuaCnq1K57u+x\lߠ)  84p+"? }4U]!JC>(_gMأhD|qcG&oНAjl Q7Fb"R'E˿^08eu{^K&+q㸂K+B[ٞuyǵb}_$A!rkgkWiq ZHy.b+o{ѿIlHxg4/AA^ 0=CGo$xЄ&4;"U( S $b"Ҁ~El#dZ U4'B+<_MѪ\}f0Dm*)G+ck:Q䳤nEFY,hyEe E->5w.M3 SK[lQ)y{lod34L T\& >ҭ {2caJ ?SP:@9<,=cy xsTP_ejsÀbhٳaMsp/5LƤ68˅zi`d=p(h cm"$f(Œ# FN4Hmk?veȜlNOq1\ "OncmR5"CAQ$1!Z6< \ݔZ)Qo3 su\FT92tRb,{ OqzxtNO$3*y18¸:ǒ uaW?bt;+@rO d U<2K7|l`Mre7}:4k `"@Q<+|-dô?&`dB]0r[H_Z!mY%}B;NP'z: ;Q`1^'Bw@1=2|`Lc3py"w; QE<|Z.JhAjyUqr܍fGqp6|z4|*H*4{sNXngsۀ.P2_Xry^oN;ڵ# g%UxLa"Ů7 e1r'#9aD1:Uc罼 ӫ׉Ȼ3w^aʇ}o$dK>jߑbc@Jt>Q$)",i}F;^%ˊhƍF\BgՏ9TbA[H(RLej7aiU˵؎@X]_g{ŭLrVHd1|r6 !]H'dNBa}a:iD2O<'ýPʀ=;Q׽ 7bM=IBآJc=]Y:n8h<ʊ:4lK+aO-JN‹joh 2(cˎRi` 7@MKՐ,R5x'#!te9r=EW5|BI1h|cmG`h>hP.1-A'=` xkg.&1d-p IHbF#d>vЍPokK 紬"ѻ&{c=%,z R8nuDTGzM4D#)V-8 @B")!JKNNQ9wtfܱ]jw^7ٌyY !\٪sl=39˺ww=@e^jґ*GݔsM8Ʒ8;Cjj4Ll,83K(>CZ3Il䘍$ rc9U{i?`UdP )3~{ˢ*4RYA)[?.0<$;+Ҍ13WywdW H?Bd);4o& {*#{Y{& V`brN{/Wؗnir DGKCbFR`e~bP `> QQtY20p/iFP]bsfn|!{jUwnҘ%3vCB z'[V0׶mLtkŋiύ+ufd$^;5"gjOd݁Bd֑,&IA2H 7ے 8RSl(g}:C>mLF`h k5IL* ;I*Xv䦾S|CoZc~FR~HE SϡЗ_uՠv)k־DZBvL#݄ԫPjc;'Mg ^.yϽCaV*!^̈́O]O@<7`Sg(I9XJ =5{⏕ȑ9v m pp;'C ~&Owhav$^+!ʟj4/[ i9'_a-?;X`?#ދt0m)bnםNJXWU=}J{*Hv4A1? [$pd%/g1 I:ɚ%Tg=Ur8ޯ"N\NmT(XL5t$*vZRLĄۈ0w.^-}b֔{,NfHv."2 Yv 93SqZE.LןMs-T c*N? `YډOJ`cJ|бwQ^͓F n6@(=*ǚ0îe7 L 蓅h}.#ZφbxQfl; /\ȷvn3Ɲ3ll[^2+E{eSX-Ή9 MjMwr+ qʹ59f0+S| WP9n M;{:Ʉ _< WXF1?v ϘpeRe-[T\~{oAmL u$V43t ]q;'L`@yZ(o49io2sZ*T!n."f!r*9H:" Ի;۲dº+@ wC]º<0 Ja% g˽\.DYaF\fCAMU.i|X E{0vRF:wb6o.{IWRv Fm4 rؘ%!#gDx97χTܺJS%~+=μp"= AcOb;r 5 n0QKICi·H'УKVo\}ݫ1]WБ.ڝY?z+Wӊ)xXt]p)G IF wV[QA{ծmdpĨG 5cg'w#ppBHS1CB$#ښRä:3jj!vT=i-Y#Oɨ"6˰EcPʵgժ0nt~鸴 -f Ӛw].ؤ~4" WETh G{/> hNMjIJ83 yj* bK @^8?j+$ulݎP(•+7-c l!#PzPHMlBӹ VtO*Qc1|] 1z^ewBa%VOҴ=l{x``Q16Vp"9QQֲ6Wđ. D M ƾ[i0\0,8鱪zCd_ͧ+'o# [Y EzmԘ%b㟅]:: 9piHNzS^B:ZRoY1ߛZJڎۃ} P ^{meaH&Ƚ`_JDz` 4o )A(|ɚ6L!qCtÀN}0p?) A(D 7X,>F)giw EuG,>,rWkƱXX8nkƊp U"+aꢷ B ywU},x9޼O* ngA3!ۨ]ʗT8B; gNSy쌳9wv"ʯ׏ Dh~ />Jtyg ~3$EE3j_ɈoIDg^ U};!򻭔C#u`IؔAI`'Cdq`ACsܪRY*1!{$Pk\40@OJ0ӐEj]IK=pk\`N~<;МFEѷŎ[_FAę ^X?dv¸N =7\@(+C<# 3],?/#3 LSdXP? UН |pNmzNj BVjaa*2C/[bH HRp91T[8 76.H֤)\ayi׎: evcI IuܱMI/aaM<ՓUyOY89ZWKK,o}3Iꇮܤ>on3j€I'TW` 8-尀ZB!?5Dz%SAku ClgNsdmo S~xy%ӕat6802߭L`:sc8PvQūع%dĮd]< m2IS,z6Բlh>3dBfbti!A4zUv^ZfE \~٤[5RMԌ&K{r1J`?>E2D*3L"J%*s&",;O">#H*nIWھ| ~bu{g֭주t]vdeW2n|!tvFa\ s ow~R؊(2f[$.Rh$eJ,QٽwQy-r&J?.Y Yw @>I2ވ`ξJהxB"~~5Wz˙~vCB ^C■;SE32YhOCFTMpM4ūdqg$pKfP,A7X" Upxs!*:dW/@O R[[:cUu ,"2'~N 0֝_ Tگ w~+KˉaJx{ζPEtEܠe- 64@n9U8kW>`61GYҡ5MXQͤlL:CHck~ X\cpw)R-v5ۢ9׆wgfEDWOY>b-D!;PhD*R5KdCbǒ` ldtXk* Aakkg_Q,mAuh0Tc> 4x8 h F#~+( 7y$Ca0N?pZIcGN5D_=@K SbU$oywF̂B͟H0}}ˆ&Em!UWFb; Pߔf9>Dw Ȍ/uzg4Y}Cn`eT[nigђ&㚓 P~: JgMGL;l5:p/1\0CJE 'SO6/I*nn^s PtOȈ$Ҧ;7]:Vl^bVJP$)E]мh\1~`]Ŧ&} AcO4f|дt"(ԋh$I0JiC5+ Є퇌Cc<o4lf`>"$Vcyy穨gIkv؏j@Xѽ:1Gq|'JC E9z Ѭ~(ÄW"# `I_j{FII Hn`LlȌ92S.k۟@P  f5]jJ*Ơ+h6 @R8w]wT=BwIڡ[p t3Dքe♗囩`}Z81)4Slug(\v b|q5EKa̦bRT2}6rZ> UVWɤ1F-;i%k5EV73b(L(R[;quK`q_ob5Qtw"  ҮN-(Onټ1R-psXTG7˖|eUP^Ŀ!*#]s\mSVF\` y$ ̔?aYY1b%zKȯ庒ٲW;O}8`K+A1 %:H|jms\3A']YPN&8[mU+'PxCVHmDBwC$挆 PqbdvЍ4EZ{dn`ڠKb'9\KQ['dqƻż Siv~;['k~aya ]?/v >scPq[g-bJ#ƛaHUZ)|ApV /46U[UfX +9OޖvOM> bd3<>_oLV%im#֛%l^@]; ^f vj*Z)R3(XՏl%iķ/pYq`Fڜ[OC2"zV{g1JT%mUv-1q%ud ]I^i*|0)uOi Xt57$:0E݅ZHKU uL2<)̯uOP"X_!ϩҴW\ړPۀo2cpBϳC,vsxsUoH+~1p7B`f[ъzcdLBpiKՌNQے7EBƀT᪀""iUl=XG*EU=K6-_[& Xrz장[d;2xp aU:?9Gs[Tօ؇6=O -(i a<c`́,;NجW54՞%]T=h;sްEcF]KOaSm4Qzs)ZDaK6Ǽe;O92>$Z:xdXg*Q;"4j?Q :J6ӕC=d5l6+dQjJ걐{7{??muyNq6h*s]!Yn&Vg~]o)-DTaT*vImLR[e 1;;Q b.umOHu\JI %jbwʮ<u1M/B)JqI픴e03&[&vH(ɒ68chF޿{z |PFߑ*1ez69K aKWU䫷l99i$IvEI7p +uϊH< J4MķVsgILps!I\,Rk =ŤCE =AS&(jW5JPS& >3`>Y"F$0d8G/#L` ଵ{!bC&̩bFܧEWܥT.|4hdiaJ4R{f*AIyXpA*?[RkChD5kjyنVFMnOj)S$].”C߁dXa*TǙ,a1jYSwѰ?djTXig m3W)}#D]})0z៕;ʄB@;Rk>|<$:~ntP@ϲ&ԉuFQeC$hm}.佺{N5 k,gʟl^贶ؔh _`B#/-,'k'4Xd½,5"Ff җMKg\KW0zr}b*B!ɷBϣ3|Z'q0o5.ǒ" >snfy}PY*l&TÎar ̅v -+7M9MSŧdC3!4)|F?^j& Y꧀k# L=0: !v~\ZqAᘯ,Q@}>=jz[]]zy/ґPJL1筁ig@` eF'Xo9CJm%Vl6.kBV,|vNإ W",=26uȗ))𡏉ŞڥK?Sҟq7u*1metD9aUn"j nd/ZOz=F bSkLG5(ߐ?)2k߈5g'4|觍+fztk dVRycC3lcߎEKdv4sq uw㧪j 0b.{fjNK̇2λ&IG W2=4=CZD t:Kpju4e9k9!tweB W$KAY}WfAPlCCNl~ёYeЮ;B 9:0$`%BGDì%j)f,1ޠ}Zs̾Zʕ٥5tSۛ#yx*@҂Kf n27VxM7tIZȵ+BGOrR[}c$MU蒾 ϴx~ U،I(( >A~i#6U ɟcc(=Yr۞9"ٳW]k~'{ߪ0F'uUXTh:b"} IT3bo2ӺlBP%X?&Ǐo5ltXkz{^Mod+rIR&W*OpR9aO4|j' Cuk{F5ԇ$_`x<,+"翭Xeוh,jr:kV:ø5Ị,"O&4c|l6Iƞ{7;TW%zV^0(@ڧC89ۊ2iI贩,ӱ!NyJdbFTk|Png<8IޣfR9 wr`̐L^nS~|fل6ᔀ2Pf\j X&֢@?f#&_,xe*sp{.9:}t$4fr4<%C\n!^7uDzYCbV(9cn`gԾ#9[ 7[5>$\ZE7-U\ϛ&:08%!·υDʔismeА-Z1KO6tE&ߎ*-K%}OG 0.)5'tʝ;}#D7m΅cپMЛ70/5`d\DKS͛M PG7#QƖuVqm!έQ&VI^n~`q_wȻa.ofLYh{`rj hOA=oqKQ2xX/ C fvNqeMɁQ'@}))$pD\?3Ncvu\ x&`Ṇl/LREa.]'L Eu9镂a[K 1MgJ ,1~: xő@dRnw?J01p,wqu9GhIM 6=>H$e~>5N`sM3l% S,+Ó]fÿ ^Ӌ=-HrhSZopbZ%fn9IAa䦔_ mL<{;Enfƅn.IdJ0xEP -ر,ڶoa q!+{1"1i%~9$$]38Pa,^YQ`VQ&ZD"N0&ëf _(2D?6oVノ3V,xu;ddn479|qՍu LӲP猣O$={jEꙣ6(tm`0U Y|,:Sky P sr_}P;5 g>}"$nҳfC=ᓈ- Qt!oߡgbY{IPKSL3br^ƞS9hA{5ѽϑ 4^8moY3( I!~FiKJ aA~!m w@*H@\#̹ukְ wBykCl%]׃VB /ܤCwS< bM1^~C 6aiǚQYmPݮ*"G=9hF*q8**ɮ9,2q;z !_TfG$=/u[HsHWs10[3Y#a#!+'fNL<[hڴ@ e>4cU~\*73oi hlF%*e_)i 6}2I NXa]gle?"LXXFx0=$ATKRJpK:9G*0D%V}jUz6(xNUBDZ|Jzj/}#=UЙӽvXgsY14_YK#/U^5&K@84 iѓYIZۉ`CWs}(5p,3>Ƅy;'$xKE6^L=u {ёû"ȕWnJU/4׺|^xb?f)>Λ؏q{F@7.ZX ۬ ՄZLh$);y@:XՃ$ڥȾ%YY(R?#$wm Zw'0m,UP@[}+~ r?If9wI®QZ)"Tǒŏߏ#R} (In+JM{PWqykǩ3{Nc@]#CŞVͪ(wyEȢdI71HLCz|8kiKy oV:p^EO$ۆif|6뷟q,eeՉܲ1vHtqVİDg6Uv2R7emk^Q':[!睃~G<@CJm.P$j/P̪Wb]E* ̹%ݾQ)I=阯9 ] *w#qGݪB9 M>JrG 0@9M$;b-}_k&vl37&[b{55l>7/s )`Yc7 IP-QKPj:B7]]@QTPLnf(^rj %fc%K4!uи"/jƌ-k{D["~jxKY?W) ?8| +eyeVOe9LnUhޭRyvohI6)eU 똬Sf"dKThmc7L"LjSsƀBz|7,5x|iĻޮ;5{@LolJE :!PX7p pe,UۮaP$+٘G[4]X0! -*w\BnN@<~Cu`JH ST"peWf>FG-Xt&n3d k hvgxXdd ŋ P{P\B0Uԓ-F//l8l4x:'RVwGA[F\L{ֶK0)"Q`EKRǩM1 ψv$㵗9|/ŃZȁ=ɉCA{>%c8Y.AIɾ9mof Лq*BG]>XP[ֺ`aͻT$#u"B?:lt-:߂Gc b迀oz[a:b 0kI߬1nu8KwI!F;!$OtKd@K `Yx]6B{"Gw7$碫~SU6OMl)Il2y}rW@_ ;3bLӗ}ƭq^^mik : }DXϛ)(sR>w{Cd7!wE!e}* ة̬hC2#xMO)iRgǷ7 R-FNSNA봽ٌx3IvL&9w)YgB3+@eRd9&>IWp,jKOEI~Ew\ fžf)0#?.nAϦi GM*;[f+M~PM5Q: ~2/4ڜBb&a49kL8̝B&oO4#=hj)lEAS&6ޞ:Б2ɜ弡գr {r=}:&Gy2YMEr0{BzE, b7׍F}z+^(H$AK-6 R9oO?{UCV7K6©46t Aj!:k6x%$@ w OLȌxC[PBbM>%% p $xʕ&Rh(ŸhR܉lS3Tle8lM٦H3^B%+׌Y[FVo(O5:|>lD5k!rE#O1DaPUZbjfax}:`XLb/YP6,]Bą0k)4N$,. zRzkIre['>Ie/IM5ƣ E?\? Sfx> ɵ-\/'J@r)V aƳ{[WBQ7oTsp+(ifVaЅB9P%kDE,̺,0rJFF?yJ^wuVXRsg_{+A\Bސ5n< =jDihtY1l@sf^xN34eʉ5@Le6>.!8ef, ZV+$jpu`K#Bbq.Ǭ[`Uڝ4Vl0pxO~ @yz)M3 6 s@; >cԜCK31v7XJҽphL~2_1z](-&;[Ďd]9 m~&o~1Yg4e| ZԷ稇uͪL\z8MMK@)DB-Z2"4,|ٟ6pN.R`Kq45Rd|7qѩշ+CʭէkW-IH~ " #({KvYX0Q+L=ByK#oxcJlJZh1A?+a/˨d2 Դd6o%-BO0߬ 6(GIiL9yƋWhh /~xjj̐UY +Y=#7`ϸlH)zJ-:M.b#/K7P˗V̡ٖBgWR_>xJoKQdu `QИލ^pA.ͼ/E8%Qj9[̢XLMFz7a=.@*nFϲR%zҷX\M>r_BF-\r?x<ͥhj7jZ(ܻr'{Rؤ ,@o0M 5~"*Gm0KSSQߜ\1L1k\St,N3: ̓ 6S)r-vbbEM3m BC|֜X[=33H|eXvŁ~U5b 3֒!E~ #;ΔGyKiG&B%Wgp81 XR1= QsI8wdlOt \{]Jg]W]eUnX \4 |QX,qda05#BU遒=HFRJmYf8oY5Y{9?_1>O0A&:Z цY4蚎F8 i$o}/?HglEх٬g2!ޏas)pwZkøœR~e@BW ,ի!vZ)0ҒAq\]yBcj8\˄DQgu}}V"XxA]nB ~CފrcBÆ'|\X o-'j"! BPzU[dS+;1*+ >Qe-NՐ0jw`El#J<{ m:^f#d)C>_az̏;Wr0M1!goE|mS.R%-,Щ'#R6Z_q4.ĪHR p/(.pFj5$#j?js26 6SZ^uiz&> 4YJo{(~"Xa뙏c O3Q%w(~'}Yxc/ZrWW(^:~t)jO]#CЯx!q4hdݧEkt4LCxBp%k~W\Ib]Rm1bqn7;fm@}̾D/ Fpdf)xnp=ŵB46`%q)R`";GCdeFK>Az\GbsOe`dZܮX,b `EHT<b޶BCa>X3#>!I.)IIHjUx@ԕ/颇> !jwF|؏^5 YQ&zF\۷I( iWٓJ(>Uop cwm& =r -QWmWuޘj!_^)>ahbtOK+5\H+=MvL"[7hfJ03F Czrߎ.j/1anj6 0B 鿠)+wE/vC̰AyfeB^AYf MQ4,ohx!˱|L:.p:VԷts*9@3C.MAREK=̨U+#"oPunc%Q)'E3ۦ7s|k:kNfo*ёۖK8rۭĉ1m9>|[MgܢzAKɲ&[^)w<I;R|vu-̰h$em7JSE8Ѿm;Ґùt-?Ej&SB6Pk0E>25T 9u/*9H|NJ4=rC fYϑ}@x+t`R :!YDſ1Cﱷk@َ֑X]V!v Ohw*=ɳ`?ʓ8f4ٝ1AѓQGG@UC%Ȩ[|n=hf:5T]uVi=cqлXeʘ_\FC G7ZYPЯ'*fflV6wo}n)os^$[rƓjZ}҃9dKw6z&6.Sʨ_%ZxoJ|ٿ;9bC -c _Їmz2#\>Z/Wb} QH*[zlTOcKa@(@gf1̖=Qm\F@Vgb @s!{17^-N3wM;0a dS$ti7@F}]s-gY?<=ƅK!~4u-L>[bԗ4|<ߴq>"= p 3c]_d@B)Z&I m>FmXVmrHh܉k꬝_(z*?X| )hH$4~M3~:'[f;GZf#ɢg[ng(OiKုߍ7tgΓn`\:a5!s5]z)q2 ahc4l|yC01܏00a\U(&"љډ&|.-`yWxqDTk5IƉrSN!T6څs>瘽'.` 7>%VN%/0~wzun.*^[T孧})]sHzhhyC<%^k(dۇB`;J=d̗'a6Ta{@S{ٺ&Rz!t8 ٮʻZ-ڜ/pŸW16gBd&JeuV렂r.Piz=Ť'CzMg瘲gq3$j -ͨj#{_~K$[^ w02dw)a9LNTmOrS nm*q, d^R; d-kQ8jQ*r`Ļx1^MIbyXК:<-Isoq`%pCi ,!u̇W!S$({Bq+$9Mkd;!'GNhp傷loߨrV>I 6Ltfjtv&Gx0rwqܯFpUyo$*0n\|a/ׇF'N¼خAHi=LWEWEgA-gsm_SɄtR;(LlNm'Tk[)e<vAę"sZO Þ3"VθO<536~ebNHyH멅V;< %~;lkd=+z:4}?", Hp8MYvb7nS ,[JZz*arXyͲx|9BVYe;% F5Z pb#MĎO&zp+` $!t,zCO<ث"S@h fEr{:뚘XHM{ۺ _?wo8lwpߠCDC`WCV_84mȄP ģݣǏOMoa}kUiC.Qox $ #"'^|C8շm"'h$މ3nL3GI>wo6J~qxXG)dQ/(UdÖ4*& $ޜ< qlhhd Ʒ^Rg7)c3BFqObG֣70?#dWZJl D2fujey"*[2|{7P{Et.*py=J,mͭG 62C!ԟ(5r]BlԼWlw|@aDi1b(q.#sQQK ܭ>[VbH,$JדO"f0zfD\4puk4 G$, 皉p{B: lK-=7l.Aa>k+EӨ}i}7ljYE-$#/KukwwMi߲y7!Ri?jΰ'(DGHEWݺ~ZKhӚ*-\. y%=vR u׺)OX/joK(O.I}x\j8dVAY5qc;CAa"=]69 Z, F'o#wC_`RtXV(lj/`XݦSq X@Q9E_2htiSYdEYXx1@'x QWnifFT0U  E[p+&/g$ .9rKN?W{,7,hܤEp@^mj]͆ ~DE|WYckĎeaY5U4KA.lejIr ^R}鏓eјUj b^v%h3 F5Pb"P:VYުq,Y#]ŷB˵ k2{ް2m7&fpG1,/zYx/$mV?! $\X uNzITJo/))S!]I5[X\%X)@*x",JDK$:XЪ`mRPk v> e]j=MotJy yWy3aWM# wl7/}-vKͳx|~s 0LQKk_FY>yG9^o+)Ћ VÌokjؕU"/y2\v>fFq1FQWAdoTk^ Fc!#܂1)2w^EI.RVuPF [O/T IR<ȧJUŦxmdT3\UXHa4s{}CJ- ~-Зd\ 6M*Fi "} 2'pt~_MQԿ~JK( Ҩ.k%M8TQtD2}~f Ñ ,u|N?phDn $J! 0їZ((!1mvd,CU+>h'錖@cwÀR\սQ ":PNiDg'Mӱax$ߛx0Uߕ4NǠ+&@he7E&\$.\%BBRNˣ|\&ӞA!c§v}_h+Y{h,fxvجl, ,w=G)"N5\V9ŠHGi,?&hnYf54.&XKN ƍw\Ϡ˞$Fk pKciy=V v.1hGU1jT`!\ɘs&kߟ;„LT$+Mo'!v>%FʾF_h;@)}z[bSI1a+Z_jξg@lH+A^%)9uj q&3mu3s:h1sPmARSx+̕ъ:USey‹$fd&!ADgǗCD0 І[ Y5[SfftR[I)YlkxXwjah9e+>yקc~N ɡ qA.$|  F,U0y&u;y>`rXJ VU'?έScٚ/sLnpGO*g!1uAl3d0%Zu\EqwQ1 F$` ;]YaOc8xPc_g:2;$|V{815=RAY Q- uwAQ+SMx?Xr17fzjEt^[q87˧" aA~S:S>7!*'{kͽk5zD3gܒy [$zzhEqZ KO[W=յO8% 'ܯJPZNif12>!Ah+SpϜbnPl!3̜}Qqo0Q*r68KIbSՉK{^ͱPiJ5"FYEjD ڹ1+Pyiߚ;( X)w޶F$!Mw9䈡mu^ZOTc#SA/e8db+_-sn}Z,Ɖr`I" 0B\Ycz'гWTxGQ"ArJ~^(YzETK=`=Tq_~=܋OyۗU~ƅg{'3}X J+H"]< 9T5E8QD?N "Q+s#2V~ $xnTǶ5 Y{ںk;VzmȴaQ׷_ܞtSv~,jk -_$/.颟R[Wz[%˓4 0^\ ^& Oh<͓LGŝ ыp + úR>t!ɐWD>W5.[N/=2 6^*=9*t/5㌈C[^L"sLz/.=.=.}XLZ1p%@C7[{sJpXlf5l/e,L*Ђ,F۰$1u1l?r^"r,s2NdJUN=9.)N'0dK8;y[ ՃWn+9I딎RFe.\KKG پx;mvl0#Z3f f IFJuv 0eJq¾5"?[#gdf;FB~ۋJsV߯iKAU8͚6\i*mKtxDžUXW&CJa[UY=aQF yn`=SXUϟ {IRAvbZ 79q~vY3$ py""ynȲ>9(32%Xu8pvX 2Heeo\U|)P- b%HDi I-%H&r(Or,u/b- HKPX"Z?,$HvCRgU,hwtlBBa8ہ8yK*q1y&%,%GVHǮ / &C8S6n/<#5XY5S@Ɣ[㗊7'N!g$.3d.ǡ"3Y'ȷmWLp#\Z -1)ʓGRɐ|Lz 5ˣ".h ʉvà(@s>"^+jRL6+@<^tܦ@jVjd'R"G$S+)w=fP27YTbZ (SiC8,璽ھb؋%f%)[i) %kGBa2:(Ϯ6_7'*B.?dl|v YrSJ)ẛ)zFRx.׌0;81Dm!ipoTlٸrNbp#鎇mnUFu sB䡈7Q9ϴ&wXj( 1-^L7T\g~Ό5SpsKBۋ;ŰRP. u enFmP@wZ=D S_{?Cl,u w*H9ڔ~=,bO sp$ƅ]<1wHt4UPt$8ضxBmkWb l7u1j-xo]+Ȳ-vme`ޯH\.ϖZ~7 9j~xꊹ_HB2|( ^/׺Z=-LO&Ia?JPmk"yR^z>E7?TXEX؇=D]ыT LJ*񯪧yd={,MBԵjs86He5d}h=p Q08%I8lKi0H‡Y_~?8 Kr>o UԂ-uV5GYqy4M7z&-Yk& nCٰOnddߟ-O?*Y~G4M_D73"-3s0s `bش!d1]*1>H-ڈ|<=4_讹3} fT˃ :cDG)p K{E2/d7`难aȑL~ӚĽjՍ=r<78 .hG3IN|9hnzmf Lr6,#¼[GT|֢^[ y;&j~by&-ro}WOZ`]Zgv1F1My kݣX2-ܩ%@hR|9,Yϛ]tHT |2H|PM.y/0i.Oq}~sEE ?@E:e&"|]aMvj愣Z5wYb\1 ǹo ]2oO: cPꙵdz2g^0xe;f@IC OγwLk+2NQJf$:f}mRO-7R.Tm?jO͢2QP|"8t%W9goK'VDt۫FݖS16LAOAdlPT;͡!^c=_yM0Eo𥦒kQJ4C "m1d-bYѡumJy\lM8zi,= ZW-UWnK /' {8 ݈:JVN"N}dl+_EgJ^{ N*juJLґkdo&Ŝҋoufz~("SLz4IH./~9jZ0.f`o@+1 @ӈSdK\NRo){ztE6E=`+~qTK)^ 7ZȇȾ•si{rXeh/^~`R GjQŋ5 ^Ԝ1/tL55xh@B'Bt唂b>DžQ[xgkťNsꗍ\Q:QSw! o,JvM>js.:[R?oꍥQcv-Zl=5^ o28O\u>bgSe]%6f]bfa~!mao oHCj{T/[Sv)EenD^J2M"KXrl?ȶ ꙾fa3@Fj pOY7 Woȶc}痙61'Lϟrիq:9&(z8gaO?Mv$ߊmΕty𩚚 U H`l7k'Te#j WKN<"_$:lwo[:>zSlQ+HX`ްLg>/G Ф}9t`&ᅰze0(t`^嚉y46YkĪ ǵQөǯ7߸'od֕17Ss=Ɛ ̱@s @2O ty@~-hN>bڪ`8j;@ۈ̅nB{FG! >\sI:(Rˮ2u?~*@@ 0p8tn\*_2mRk;'|Ԗq||nX ,LxGR^ڼpV6YAjyhy;Bp/7]"._PMӲw7I2o^w, oÒ-쟆[߆4 ;_N@k6WtK$ePa߿+w9_8`;ߓm\]yH5%X کC'fJRJ0 aIr<};aO>vFŰ2j9-59v&Uԥ^ xۡy*  _Djz$?V̨ 1'Rͥ1|[EtjaeWX6-!S";sPXF))G ;a:gHS]J\7ix9pf64 P* g*'m X"~O[[6XxTH~CNrR mhXh1-82W 9 lT]8m^{d-G! 5+Ǜ R!\p׿: q~ ⊅3< ɉ/gXaSH9aVJ nSL/> P"zNZFE[#4Q [oꆨXz"CXޘ,R$I>1}*> [ܺn>źZ:T `9X_XzA#{¬ *2chǀ%OکEbԹ7iɹ6Gߩ~Q!\ҕ2mF9wh**8cK_m﬛{Dm/Z3ɒƾy/37qǴ4jDMQxAeq9 ̓w>&&sTg$`p Յ b&•y ¯nyt(XsNfum!tg _ sz,߼\l"}וND>,xeZ ;k.j fBΉޗR]Նwj%Sӑ/. ]XxDZf+uJO"!'ۖcC65S a0hj @Id77VUcwvECb*S~%97H{oY[Tx?[ѪTRÏ3Og2B4w| G a*} UW[E@eW K6xImaP*7? ?yNە%$9A ~3)}aȼo7I2#g?#bSKZ%'^i1i>C3l gڦ9_Lu_;uY҉h f4AV)Gf^=sC-Gm*C'oJLsT zXi1@^IݔKL~|aa."QsvNvk81Ry4pN\m*+$iZ)̎QZnEB0\Z^]ӍZT mz!Ȧ >v\,@QfNHғK/%1~oƝXtzTfSPhGWUs 44$zLӍHM\fAVb; s5%6-~j:$Xw TB%e_ZTzzNv?Yl?u2{!u`]2Le>]n ȡwzWwl*$N\h!_YF=9&fbˎخYyɬً)-DBCU00q:bjYbfg/sKS 0PW1 H Yp_/u`6@}w \W!p.Sl.c d |rIEceMarFbFP$DT/?Ϥ|I3ny@ds ƿcJi:)S+HkM(q ru:;喐Rd?#@V WqL᡺; g Ǟ'8eYҿ4%ʦNUY;1TM+7,'y/)Sl} }y A8<3a .zRCO]Z-*I. y`."ؼkZVkPoYz9[M 2[J=$Xu?tJH RoWڟІ&6s1.k݋LCcVoB.rUpF11\`nDO<sX;' OJ rDGV#=]6h$?RCn0̂oɲ#7jGÚbIY wo.(>} !՞ tC|ld/k+M}mv %#C=l3K>gsy^džɜ+!AWlc(:CT),KvxFo, 1Ǜ,GRj3 Cʒm{Q"5ZJK\m犔^_c!?>Mo,F@#"PQ]#?C KHJ-`%m7/)H .ح . _>판%4bwW/(Gx- X`a?^~CIPtNt"Ȅ_=a hTgWq>S'1tCTƶyvyi)*Ѧ8`Oڽ`G(RKsjP9 L X8uلmRBs!Q,o[ã6HY&g=?`tĆ4a!6+"54]s?*I>Y?r! 2ɒ1Gt$H/FʔE۳*'^8+c-I$aE$*q%KWe1n`j,EAa+$oU]KO `l,41-;¬Q~V: 'IU@ .Zv9-O[.)pg 3NEɑc#h[1pאlf緍!։Yۋ(03zba;!n %6t b)6eݾ[·4_[:hY q.o3EÃ-DZ#R]dj 0'"n"*|-KR-  AI{8MB46x\4,IvT-shsDo6ϋ_ftY.-0t+~l5$f>X[dBȜC^zs@\ݭKc]Wྥ ؚ\\3'jSSIWusK?b) :yz(dea? 8A %,Iaut4з~ Ŝ",&؁% 6o/$.P:'0.IԄX+ØClr6x-.kۻel>5)XpH͒ц[ ԍԑ Lu~{s w| 7QKL~QU\)]X@U@ɺBہz_R" 6dzqxeFAS/s55gm3B\k gc~,kUޱ;0}WW1NKW,y~ :ZxRh'w &0pr:<\q586g;>3';>TR4 ãPΒ&ֆSGҘ̨*i2Pʧ=5TC6^g5e3A(Zf$$k"OJ"K`ts!YxMYo}=ƖI$'\^$ Tl )ӨmmjjaiE@|5E{7ף6_ꢇy 3MNQgc~%3X+zOeŌ@uoTd= fo)H({<%WȐy~~IoSLpV_VB4@=otvOwy1 cuzYʞ$o7z fUsk3fKXש[6MJJCOs䦧({wUT=t“h8%և=DA;f|SWЁ޳~l3تN: >ևN1V-4o~NWLT+dX xl f1ml- N/o<UCLl@ n0,t犡qlIF6qpo->-QMBY~V-Xx<9'țC,)DJT-tZry8Gp5fL2j/=ۉoiuh@VTENYZlKPux;k6R PBv08뮛? jdVIzl{Ag&{ckl rTܠ?eg$&+77OND:9̜Wjӌߐ /2g3~lc{ڛVnE,=\~@u/}>AUT|5%wGu* 'އ\]c8ASo!^:یRDq%dCPƄLH4ズBZ.X\fc@R@Px_U׀m0ęZș8Fq5b7{?[`FMi:d1uQŲ_ u%A}m\5̢fч\L\GI,~0)RD2Փf1\,L*3h* [r'PE3+W0=Ín51y0 7E ~9Bm {.%]2C &F8b~v*NoJV)$$rnЅ4)jB|I1O]J6<~ f)[0[`FrM(:KO,-A'Xܓ8EabQN/wK.YTR%..F؎IFjk&3#Q#8Bk}lwki7R/'@|,&~t.ƈ0n}+*JO|g6MZW#'kQӁ-L4D7,14Ɋ|8saV]vں**|=ZlY#%yߗFtz r* 5cE ET5&GvVbNEc]\{i~ ث"ޝH*1d*8Sb0GP}q;0² Ƕ.$dzEDmqPf(w&١*Wr_њOϐg#C2awu:^n+SK75*4:D_ 0^@{t1 %HCKs"@4 Zw[8\ȇ0{~~}9hf+ELf Q]Yb\F;^ kI8 ite{׬Q |6"ąk?\thtpܽ +m7Ŝ>)@A2F4k hW^2qO툾fғvZul9xǰ#xVąq1OtuOE bl"x4l".›@zG0eM_cfNKYTl~*4i~ xޣуLO_XyʯSm[8M^_faN5W5ъMpd*,!)> q6IkV jf貿KIL "]:Zt$iZ뾥Ų[zy&!Mߖ| AQ vD9\%.&_67=w@##_KSRc6 %ܼ*CtRoDl[@{nw/p]YoJPypL)`QYFo˔iPODKi4 ]&"(`qlG[DKf]ickDzNݕā,RF8:q'm+.4>S*6F;ۿ%I%r#xI<;E1vr^`4ǃ~4HhH/Wl#G31ߨ߱SS`ef݀b:sۜ5hlJ&CRi[Aȶ6EmSj_{APV \?>شD'tǮrfk6A5+A7j<_ >IB'6jeͯy+}ϗ䜋+ooi/`|+RG09r;An p<-@\+v">(Z;L٦zyL!ď4+pPB ԍND?q PTۭe`ۍId7&1:W^LA ) :ZFIg~=oٖ7E%îbF-؍N̿9R9}r bR,E0ٗ!E c4ScEdE5ɚ +Ǚy-w;mW%)rEyWHN"L% x/H(])k`}FSx6푲h0_qwge\ˠHdԛRcO=/e;lI! {^0Sd|XxUO~2uiLwr#Opíh$j_O#8:%SmD BWh*3S<^VC F`H(8kY`5Kg=?s0i- Uy kXXy̼3*6^GrE غ[@-%V<: ۺ1K4.+,QqW1lY J%mЎt}<{a ~o A$`2NQi9%g Ɩ;t>l$#򏏩<0~ %Sy=IDX{˶LZʮnx0$|jʵӋX9wiZ!B1^ɔ]pu-3-Zƈ\E1Oc1:/3@:>a dBh#hlq5h$H]t,eS-yL?2CSVo!xfX :NҶd\ 3c$bk<δ8- ID ,!8ǯipeIH# L=?])9(4|tBz3Eq+r1 +0"/aJLOLWA14[4 WٰVgWm_b_BGE˛H4 7d5/ZLFT:꼈Ko* 6jR3S]0>>FWϝEX=YC}K`ɽևU:NQV1K6 neMe&;W4{,}^2QL'\֪sҵ[j9UV?T`n~M}Ҙ#r$I:Ǔ |ΨfpVC̦kՓ@ +|/z6^d?38KyZ1 E4DŽuœZ# H/\k1\2 w 'dE 1Q/3\1y7{mi6!,={OlZCuSᑕU r:rrwjEdgp caq x^Hdַ褥ny0s96\>$υ Rd{[l jZus.gcY8gUK}W `rCgpĤ1sa^5F0/Np.NzIGjG h*{sz%xD[;(|Y\yu5V3'_/oBa ,$<RWY}7dnp'vU LU22'\mt&VeJ˲U[(VkCPl#<HU?H[DyYmٹ( Lqna,E lnh$+f+;w8!f6E%pĉ%y3, 6[ٵ3#Ņ7YT&  $DRC92$3tRgw3gG"OzCmسFhI痸n߫jkc39pŀ#1㾢%w"鰿fDnee[L|HDMX\Ǻ(Q^ə "2q`#FnanUw}~ugf e!TjXGo}詒$G<0SbY޴dw5_%g_Lˋ-lOyAh2Fs7[ )hKʣn4:/))4-Sx rq7I D0 d WJ,xsePk`&逺=WڤP_BW*Q53W}=sdAf=Tf9"2 [r*$@Vꙏ9Dmy"%2 58gaO%v*.)+Kl֞T{ˋŏ0G.AEeleC^|v}0a_@)}RO!řJvNōd_֊cvש{3ЌdHsF؞ 37E1qد aǕ1QzNˁ6&;kujZ3`#LFliDUňYHF#',O4A!Ny9lZUH#?c "M313UT;;MəUOjB(..?6PFjg`cYeLdXOm8Vhwp.B]-M0T?4]41:q=4 Q5VVN@A;cGUax9}?ϙ蓢pV {3y ٣~ky݌yh[ ͉Ī5^CL] @gT/@J4ȩKT}bk u'#yo:؆Qƙ"%[4/b:]N2k7 "~Kԑk67o1ۙhaLAP7WJ؁tSAߥƜ-ʢbMرUEjyNUᡞbV-{:ǩgsJͻy96+I6{N{1^]zЦ`d $h0 |UH 7oZEC$bAp=[hE74aFٷ~g8YyVD @bi2s&vzOYTΝ я,>s ;/8DZ2b(,J1XrX,PaD47pEDHePrN@ ; V^%s dѡб*HMVC &Y9k} -EgMǍKʟxrd|m9M=W6|TЯsRm#8tH2>g Br9,؊?*wTɟBZ-5"#9\%gE]V),E?m)K;[G@x/6Qw "y*Z bAZ``CY퇻~ ݷ .Fr\aX +hp:oZim=Go_by(KׇgS<[xmmtڝ%v 79) XBLճӏBj2_oXbӇ!Gf{52ґ. DǗ^$ETmFRIP3N68E[{멵v%:ai+[\no A, 7Hݠ_JU\~MْFr[a 'Ϸ1 yk k Q(^q,-tkŚT%)JmnꯙD65~珱{G-zy( \tA%' 6QFwFNo?t3iCyiROuW{[Z3=VS?л*E.Tt:Gp.:GYpN _²\s(^{tXF3 Oq -De|ws qC~|[ jV~`74w=rWl+?j^A#Izic]VtsG%Udn2PZRcصz\-RNJ8@mR~1eҥQ_iNȯĭ#2(vO<7J|"+XVDϰټH(D}oylBI|8OV+ŭ\K'oVM1Lڼ>P:s:Uce5Ѝ͔[iϾKrc_cɹs„ݳAd7S͝⚬2KR, C;Pd8vmGZ&q~dWri|>Tcecyaǩf ̹(m5(8jrdGU؛90CdCeOC "N/DE&)uLW:=B Ks1᳓_׬/*_+YtK)# )F潽ܚ/CAeцv,Ggm{ʻjډ5D[<7RH:PN&ꑼ5,MG^įzq Vj'OZE="ٞ}w{f'߯&Qec@ QA;[︟ȘIG+I14xe"f_7Iepn ֮ͮ\8}.%tJZ,Q2AA}`JK&JgiwLXW4[{e[E*R&#ʩ?5aKzL58HV [N(h~=h׆hćr؍.zgDݦ뛀j ١РI|~=Wlk2߅ZA)*}*Vƥ-ӛw}|vɺ)ZbRl\Ts`O@B.ZlV6'\Į|5p%Oyn t"BV#p@kk[xs jkd FmF#i+R+fci5^Fw(d||rH;25VVs"StS~Y(6ڎH<(@Y:kXes8c/ib4rС3FSNaXQz,Y{ ؗg > ؅xsa\fCZ,&_~]ahF ?g~X6l"%H0LKS&3ʒMIE'I٫"f'adcqC'tb!qu?tQ ^$f-Y陬ԣxIQ7.mTY&@fNmYDLDAvqk{u[X& /~q7Haoyl5N3-;BTy.4Lp[@ hzZ>bň?ÁA qZJ&^ jݼ i8jG[zϣcmBc 574AK1OeEӺRF53qEkXrC}beQUOh&a+b4 _4.#RC[y`|Ȣ#8MBqU`V(Kd v28@ ƸbA7 N R V6]\?7gt'`*)tHMBb|v0C -{+\=0NS:8f=T\_[zq xp{?-C uPF_Ww@7錏UsYyO,&q o߳$/Ǿ1|t}8qKEŗw|H}xWoqE1zC>b2V}f:n% 6xl%R+W\nzRIţT&Gb2.Xϱeϓ6P73pzUĈd4FA1?%ԳxB{|9r,PӄNC㠢mLVު#E?iR+#랺h6QaE'L`x2En qrp_k>KFQ5|!uDNn5iL0-/z MOey|G<.n$ Lq̻wjq5 Î*G׺ٜBų{5Ԕ^gÎ9z;ꗪso~mzc,V>R\1 ]Fs>r_u\A\>Л~3 9=Xu<!RO³$ 4d94yt1 EF|{e; aD`PunvԳV/JN}{]H軛Z/9h9f-Q81[شv-ZZ/<4DV5Gd /'Ut.8SZ6a!+{z:-fJG+8Z_܌VWTҾYF_59 bHQ }0(;<P;իEA`ӓ"GsMՄ0(#zeHЁ7(=u([Q>9C9)Dޖy& =Xn|ɣ3l9WM;tF7Th52G?f۹@;{`;1YzU C>l݅+@YtwqS}{ ?ޏh?0Ѿ/rzVuϨk^h %zcĥh$ol䑽0}.V kS۹8d»4* R\ ?5aXVR1i> ĵsA119^P>+?-P(SYdbI~즴L']r Mm>W/꿗fUoVgy̯ÿ1_U MW{:}׳cUI$OJ1ؾOY/ƀRw"yttݐ ԁWU T͛X|ۮ{.F`YGUj$,jpҾtFÏ3qSxUu¸_jFCyF|#Ȥehu ~OF>Zr-^Uhs#.*|cH̿j'%0Օ@)YKY#o&i'КKO? ؂D|7Dw (V{:,Uacb)\ ) 2PNuZÜZ s^AOHETo$W,({s)6`nG' `$37׾o!ӠJ|sWRpڀ+2 Mz|aM^G@)U!ꩪaxӋJa)3VFF{YpX-s0X)yaBtvMZ̟:SP EnNpo>"}1a,tv ;i$ m1yr6$%Iח g)ؘ͎̥]X1vzEr8rBVvgF3:)pdGkusl ""8#67|Dt=ѡ7Xi-0>|e-\sQ6ZGDA˷{G$Z>atj&ʴS7iVAT<Y+X2ϛLoGZ-U Y`V;-yS0(׳iaBh8)`u%W˙F`@ni5^7qOufquA<~W]BĴqEa{1/-v\ʿ})IK =mh/׏@:( `4IUA$zG1#bU,}اDjJvuߙU37)պ[6ap~H|g GOf`&H&%mheuif|Ɖe뀠`.z {y83p"%9i.{.Hd'f:>nf˽-;z~- qX߬6m|o{,-f6ݏ@ý[ǸOH`Zr#C364/77TQ}W>rDlqn̅)"?c݃%j A2KWmha'^̚vJ.u ,7R|K A= :‚GCn EX,_cIQ8v"wJDct+霟˳vWx[>D4:\eMt PX\7eƽD8@dA?N%ZYL: GM}WC}|RӼLe|dBBxG]{a.]IRW$FV(oZ&߬p'dOIm,r{'}*Iu<#9Ǵ o+4Lv0*}"90q3ɚz5:Q)6eqk2]vio6FVDD-V: 'N.&/s|aPP|tìC%CEk %#T75-[ j tEЩlq@?8-ziƑBV0, ބ箶S05ΘSG-6X0F<,2<|Ri8pM1weo*m)m^npӀ50>6=>׻KXWy 0 ,j3bMT`7p{j[>8ј-5g'pkVh1UPp׌0sz+b̆G% 2D]jÕ/f@t - [&K53Sn&vΑ<}qj\x0)Q"iIod-gpYUfNmzHaq-ObiPVBaokӔȁ%5r5O+~՗g^}j,L,,>gn4bzv SwX&ràFLio-Vь,գSe9U0l@:[͈DCUkXyYSeZel{ЍXCe@vHXi_ jqrWARjH冯Ծ]˸B9ke4Wp}I+75j픱'B, #ZGփn#M-0܃z04aT{ꓔqGDvfHPb5W8V2Wλ>/?dM&N"DzgI([Na6@؃{$GrM3q$Qq_y= J9 sk/?{Ӕ{$i+U.#zPX`'\5zGٍXp(2" j@ qdx[p I ,j p:ti9M1- R( 18ݖE]I1c!sOw)O͝>)v WpB3ٰnZ7~8/j0z\ֽ:jC}JWH8J1S7Bq[tthWg7GN/=K9C[!濿n˅\01 R}pCHeOVur)J ט"(~ 8 ].K8 Qh N"h6+ۦ1(XLl/(?l4Ft*L:Omxa'7Oa8@)@/cĝr+{ngպV4P6]6Lvɋ7Vj-L/eQ(O^&_cMқIAibypFCCzEC_|HoACr< 5=HGjTE4B̦ƫx8/X!>L81̩bKFf hQg +O힥ElQFQvsJ XYb/jL+M/phh`?+;XI*IPPћVw0eo}Bp^_3(0~h0:gz[ݒ]R 3&';&C*v[76Rl@f8nI5!D"g=((Y\0+nF-WYl€ώ?/Z /yXQC[dY⊈mof>m1Ks|',wn ES\+xV'`9z'?FJ1Oºi^kO8%a\4f{Ovqg BSG+(i+;#!E< \ Ag/C=Hg@.%DHVANOXm9f]+PT'a E}7p7>BYɝ (u ZIE&c,g^!&u9=}W &N/r'7**7]@M{Mn䮁94TUµ+iXia6 сg:8[Uݮcҿ73 7VqZ( .X(mQ‚ )Ce~_֔`)$u[N vk07*OgӢ·yK<߅dGVlOHITV+l -{ӿo+:JV7GU@o*6vϵy l ax%؂VeR+Z>SePXdx(f^OB7E;Xr([7ůux(vcv0<!l$LxGXɯ c _auLv"(-/ીѱ8FBYQH` XiIĘ7i" Ťu+>o`u/N(!0&mɊ^₢)t?4eȽ:3z0pḒNK9C9$>JA+0AZ=?ܳݭ50u9ԧFrX)&E9^0j^vQs"8N ؟  PC"9ܻɯCy{l$\9чaІ DD[NdwdERc U^qxڼ>Uf?%5è0-FS9` VJM E&Qo]dJij@9ࡽT FgeHMOVF( '/X"^KyiQ4HR52]|O~*SL THʠPק, yKrR#.t}就lnl1Muh7Vkc^}!(Y̫F\ 0"5a5E(Fe.)v~8Y֒7Cs+e] ,`6v H>k te]mHD3E:n=RN,VI|8EZsV/CbXv(H) \ѩDd\~X`VgD"bjGATIx9GiRFmϟ^]eg5)U ٱ{yn50Q#n{Wiu&T2eKj/Y4|~K k&Sؖ PmNf ߦcܔd^aTYJ`EgV1{YfwNj X[&C-x0i9l6 ׮BQS*i7)n`GZ}Ek|94D>x^PVpyXV#T[ vxñgPYYJd(5GGxԽDԘ`=ݦ0+b F&vJ0([EL*HXR8Ц݊D"2[ $`3rD/}P|ycJ<5?.tkrP'N -,Sî .DZe`p9o/֔{ܕ pyib Hy9`?*O~A1ga5wBLFNV$+J:F~^+,[x~/hpQ'`+am</i/9DkAk.gVEB>lA C8Jfz)[#fD>JoNJOLn/NNM'H!9-}-3݀+N( $yER¿O_J+@㪷K fE@;B6' u*ЌC$^wa+=/n uDQYBb`FKSoOuB 0n r#]IrDnia WEXT(\|bugl]pE[-.R U,&{xM2Z|ޔBɸf@>М~Sbm\<ԏCHoFTc@|\E6`oqG_4~[|k̂(q8rhU=&僺>xhLu$M#/ɚA4ܰma8@4eWoE@܌+X(Czpf}v } 1ھc9Q"f)4׻5ZNUSb'{jUD{$ؐ]Z]h.vYV% n ʙ`9Q;<;ʖM`h=ͪep+I~vfyd7 v=hG;o3: :* 3c ـxbO;< 33#B-dc/t`d#FtNkL,쵂#&>!L-XiJlms :X;Lٝm7v'F +tSJjd/Vi#oXE ytEAn`7_ʱfy0/Z3wu@l^pڀd6|bpY ve44-C7%ՔߡynyCݨrG"]Cwc++@X`@sا ]D'R5 @"H?xA,Qa\֤3 1Kn^a њ#j׭uL0 A 2 R/p18k΁;hqݰp'Y}SI0jN(OI8v{+юf̩\¢Dv$ں#1*-"f7ݻ #xV/pÆ iK8OA\8OxG!sX})x J;:CSIUё7%&f2Hys s.6tFLLd$-rhVg'$0mцJۥ]zeޣ)ު\,cӒ}Uɬ|~C|"rw*~aZFzzB.W>}̤W% ,Ф9.!G-mIG(d:sN$A.dQS60xrYϜh#d@7n7ݘQqWE$^YOC ŷ9+0F~# o4AGR!'M>Ml"G+BcB-)| Bbۑz kk0TƀJ#6^p8-E\"ٸ3?K4|ndZ.#Ғy O<a6sc\OELD ǀ?HwGۅ{Ä0P0zʳ&@kJTIgmxgbHBicjcؽIj? h 4ZmC1rWxu݊MΦdJc4f ?;DzEtʺr{$Cf`,nb[XkPՄh\Hqyd}uD@au_^רaXw ho]m3sucK@q!G>/_3hY]҅Z&+G M7=%*l;D.i"y:6 ^KƶfBd35$>f8_W ΉLwavGQǍu%}zVfģx{a˱cgσI5(*pRMB 4CV"؝'lD`x0ΫM:STXSRkK A־-yl:U+I qNw1?ށJP3{~SbfZN1* Q,!&mvH/؎> ȑq?c,Sme=,Fؓ Y#Rܘ{tM v1cfD2*492Y]x_p͏%Ρ!m_-!b#>cf:f\|+ȺYM&|"~2^"3&xo^'\6Ҩ&O20д:ֺ7TAH7`1mjd ʲ0E+;7^QTH5s8 0|;2ӕf~Nh 0i+1®g㖟hED x!o=ZR*a*-gl_)il-W'ƩW#Xн=-8zB5N!]fJ]@UxaiO#>1cY|ORmh8Qq}utlGeJeݞ[_4wVge%%rIA,isf[PJt73WΑDE xPX.Oz_p~)fX DfNrØ%q)ZM]k_CKcn h5,&"_NLB^U&pgIoXś4 Gv5 7rS$|EdĶo ?[=#Cu[Nk%($v5A`4v!ZK~L JuyMcPD;[7םX9bۊ9ؤ:+jޚvVڊ˄&P؏KCh:Gңpme ݡR63s4L(v*8D`)`F@Tc .{%ãڡA*n{]4d9AmvLWF=" |SD? _Dgb gxdp>.@HRLjy:x&4]8$Z_l`~%4h O4>;DA!vw=_*HΪ!±ǝ@^։ъ@P.#12]0 93|rk#N^\ցD!b]kmYl@==`x;^[6whه@4YJd/<fcid;bpYJ\5M[?m q60,/nBScftDׂ6{J!{5U+?q&ɕ7-8jŵN6ץs^㌓{(Y֝pύ^c=}cm2Rţ+Cot=꒯AG|}&9$ص8TRW?C6Q6p~`Ko(Qݷ#-b>VP"f48&Gs~QE"V΢B^0w79ʹ5abrЕf ߻$ԉ ܁x5ډz" 2peq{euҕՉ>nzr~V; -|f.k*g3 *yh];c8  ہWۃ>q߷Bd'w/H)O]4g$KAb C;v۔&m\4Ja-*ćGb퐲3y 6]hH<|2"-[A"n1FG[P 212X~Y~x܍ $կsQL,u׶記pݔoȷ\ȷ{j1XuSid}#pB=z\b'=*ԻdFEKtVM]YM.Uk5o}CW9,x|g[.I5 Ҫz] =VG֛Ɇx94|}La7ҪHRZ-=X?yT!R"H%h YcEmѱçO}L_BI&+o;%W>QӒilDFL/<0S:&~2+ eua|4͂齠'6k> =Л%8+Mc{VByGKҩ㤈0,J.bHܣ!T0lrXGz8D\_q2L>OF#k6wn2˖w+&[8L褛j̒bo9/a=0?Iu%AX%mƂ(Լ9J<[GmȝD׺޸oRmՙXne8/]GE`ZEU;S_ 4"uiw4P;Wym檁Ѡ9L?Xltx+kͅ0NŴkːW.3`IZA&8fTc8?[ ؀Tv̯(=0 SK:˽l TWz#Ԏ.Fx"wpɔgA}%cd5TZK䈕hL"C"u6F Ԏ{]7Q#xK@3)i~3]Goey)` ~5Hm̿-"R$ǐ.Fk7']|Ok,:!1~,K?U䢣RDy71j^]$PIXW2~{I,ڨP22"n s2R-qwJ\=҈UqjZ[r :'*y[+ȇ]g}8k-8|ôK+Bȥ8wMHx)凟dRJ~u OfcR*U 4 գ6SEDrMyq2_R27~ [A WPl+s:0nʹY1Er 5[c4iԮɿ@8$*Jt x4U6{AVTtv)O7Ն%ct"dE]*@1rA`_-@bgƂ+bi]sLif-Hdk){'8oF՛,zps صX˙N$ e\(J%~^,"O`̦yz=8O@4󗞓T>k7o ZfUtyf0d~T2A1㱆UmcbcDH_} [Rӿ; F{DcHO`sTlpeZ IKt20<ϓ=႐N,\Q;+ڐ\Vv}ga uI!=כ M!6ڗyȱ/f)jjM&?Bkv/Mv,-BVML-m9FDRѴA^\[$w 8yZMDNie2:)! =^2o/H_J)EWu?DDhF SގHM|:G2YսNSv/~/ٔUe5.ڷ"- k+Q&{Vjx*rY3Gdv`=&h8.#pGy8le|G8/l&cؿ0Dhq&\n9*7>Ve =YRpNJB ?far?SYN4$]{wzѥiҨAقX-uaV~*сQz_SÆwD"r-$NhseS7'1QRr1Oq`+>W<~dprDKd^z\GGz:ƽ:Y*[,E0zMsQimγh"`rʵڄ6Z DzXj V{w鄼V\9+x_A^f=".iq[L<{tZ_x'VrDDButd6u{ђ&mmv%a@ -vh%b(j ɀsHe80lM,6@NV&km'52M%{b(^ivrֱ{)*9z[ջZ-CJ.mf"_pmH7,ԥ@fX6"+%aeUJIu7 0U͡3ȧ 0Q70Tؘ}V??6 "^i\aexC WP֬E!ϼ`Pnx](l:󔮬7h"gdrze2Zׁ+8*>LTEYZֳ̕@E PbLD>f!Cx Be"th H:W$Z׺, %+4M [HyṆ&t6Ļ:bHM+JY 4%(%hCczJqb g݅)2'b!:_$h6Zį60}=jT̯ޅ= \V6-yjm!xȩ)~湞7C݋6ܢ  P{-[8tcDγ!̽ ;TQW xoXA4&+x<@K/m׳x;tUS/z"+x pHE;Kޯ+&9 ? o=3%L6'_Y%T`]/BoS 7o?$29ե3&@x52KH8%=J<}qv>k%e9]mG IJz[NIn[⁡OowU00VzgF"Cπ3䈀}nknsdQI&^Mi2Q꟦J,3C4BMOܫf/R"*2EJ4f_P,]8eN'kS'4^" F_3vV 2 b`brM {şWqu_ #NT)Umh9ynKqCDTi! ar+uWύT`$%QFT^5]2"a;a_FxZҴNGEƸ*, ex9$·<ѥWL6cja03=o8Dk[CC֌ ʫC:. u61rCz.TÃ=-]H˾OW偘M %fEwE,*W5.F`®@׏%B}y;඘P3Sp#bX OZL$˜*8$odj1oZ/¾\u Y TcZ.x^\ȇ\bJZB$|ckBjb U';p^~3ԞE*6+QUQ}ukv%9'rVẹ̛w7o۾X`z/L-Dx+qqSɨ9ȅ0ur/E<*!R^[>[LQ%IӨ/1F^ntHlݘңbWR1fٸ\Aİi*hAS!aqlrTЖ%y"q]7FgM9}X5៼fr*FD>k6YI`D׏Y<gd=`z Pw']Nznvr-eal4&(Ey eK㊼聺}^'HmpՎ9xrnJeǍ`6ŦiȲ7i.܂/MP_[9ʳ2Q;F ADdz9uJ]{f0 )0|j u#Mg$=yהY 7-@+nʖc m9,>'Eyc9!B4weě j#ަ9_zgZ7^g/: nFYag~rdYnq^LiV}ϕ|qeX:JT:!S\#}?l4Z'N8R\BPTY%<ގMɰrt?A_6tK. U>nu.r&e_3A0G4O$3dgiR&t d9J+I?6]<-CDTTAFC9rU>dޏ]+6euWI Aqn ({j&ecNkvv@uw})ȑ6();>jm.G~#jM}xS]@T I|gG&'^qrÊ<R\dYf\~u^+&u)\τDѣtGHv!p#NV6]v "cdCإ}}aUymp`2Ƌ5&2i .^$] `탹U? 0. 1b}6eZ3A-QɱC!hb3Ztʰ㇂וad(;<VJ]Ij*s|oOL\[_깫IAˁ5VG3]\:$R1 S&ZMB!Fp†HD*t{d<)(fRiu$'DjaL8Vgn *ȣ)K2B] k1,0~L TWkv,Hc5V4ּum4.娵 dT&2MOKfbgɜ(N_Y-&xso"^oVVBY-egy޾t ST9j0(]~\NH}qʑJ҉v-P4U>; ?@~ a%p=c[Lbd8jT|Y*2:Xu] @lq|7ouJt)7YܳIb Д?I!1qS JVQCtŽ &ݦ ,u\?\tʲ;]+fHiT>qss`^0Xj=, *}]YMk~IBZS.Fi ~FK$ ȸ9o)dmL:cKWg G* 3Bq'AQN7- |}[EE.4Z@sujz:y{-@É5 lO]M>uvdyt-mVRJ\ u]3M)/io8+4& mob+dz'H*U"[OB_XM~O|ܮϕoeE"ޔ >N^ύt*y2<o[ Wz#Wu׸˼'ap??|>SI৤˽%ܦ ڵg|O.eo~;|Mkj:Y(/;F48wB%d v(Ĉ/+kq^1ޭ>[VeXA^cdLw@mG5őSz47' gt2N"RYMWk9>[EK^bZT40}jaQ޽w?-ŽLo4q>{7c 1dѣd/l~p><BXr Z:^gR9l³:i?;tEqg,&<8Lf/Ohاt%7e$2hw@oS; J@3wr:)FD~UM[:ցt kO }@ٮ g5xȳ^۲?M=*_( )N!\flr6)%_Oݫ}nF?aŃZAa`H(qGޗdQm;рn# h2)u.eK!$yEgt(''kن͛r< w>ӻwY9jǣ?A:5^kjAR|_w&r;vL%cyCMoOҲp&cW/T]a)2#h參:ߦz}.ZĘ} {" \g Md+L6Ok&ifCW6<ݣ uò g=<5}2gк.N{İI]7W!1d+>ё̣EEڒε=?Ɉ&>Z=H*W8xn$q,Q'BK3(7޻ {hP%ǕpXMdz_>qt'D<ӿ]_* kZqVY;trIxRQ~sKm-$,)ILBNil<*?% 9^b4w`FOd4Hi^?[EwdAe\LYˎOoU(%S1%&up./Y`ޔAԅsSᄷx!~d C#2=-jKljۓ̭%>L0F  LZY kЋ:zi=o5uv^eZ Ϛj V R ^`k쮨4,9Zw%k?~ BgnQ _|2;iWnz,.6{Lv-Y s ) ( t{Ԁau>$¥$}--/!L;ݔ FQϿrUc n`U }JoxG<,"ړ}<=*PQ\lcvfӍuEg&*TVH{|6W 5U3/G1 M]2Gmٴ4A7~U}Q'2Y|@g8=ڸb0S?|y+F񡶂%B-:h!7ɔ*y z\O-ňo 7~>8pŲ[Rk0ο9tg7 98Dgb28V=)u \(@'u x,2)Kưǝ Wp50@ nlew?y6=ڦG<W=pIܿ>ߕ0C3oRRHGJy;G_*Ҏlكk%ӆ4nAчt\RF<7XE &/iikc`GHy93nC Qc}&@)S2o7i5^|J|=\ڤm TBiJS~5tf[?9]w:A4^juTmĮUU ,a#A̓TA2XwH-Ä4qBL{}5}cW[ /edynޓ 9\{-DKᭀK0ʺ3/|V]Dios)C4')y3w pR (d50z5!z#bI35.4qk >N6wHpcL? +=~+3$=Fפ0g3& l"d N4=$Jbd)oIr95/?yw,1;pM(r6jW0sӽfnJW@wqu2G2D.'S>eoH!dSKGB0JgM BU<6 LصAУ8iҝP>\ XOpu]:rLMRLG&yße_te鈭فofgw\"_wI;"w,!Y d|G$OWF؏B-ݨo%lYiu:9l k3"KʹRdY?Y`P#mgr3AȊ&q]a5JJVV3P0/! r`xLxGcʱyCդśU~S UF)θ B @ s 4:f."=}` -1NJzw KJ/.Pr%l1pDRvBzm<_!(QwVG1 ;M/Bh)~>Tz~6F~W*H5daD2m˵xvaV;Q7)QOӸMMS rb8U=g#1 h%DAZކC^S.j|"|h  vيix"G "FalHWƕP [3 C-DvnmQ|UQ"N+{} wZزexZhZz^paѷހɗnIM+ v@\e&#Ki>rXvWXOta.>mi0RVłU&8Hb(9h#joGOAR`2wSSeTM(lp ]f pu3f$pb\= حae.#, s;06BCԁL]grDC݂Sr4#9M^'c-7N*Y=DKaF/^Z] ?rK/TgJx5m44Ӥq9CAPOcVc7oFOʲD1Z̈́l&1K/E` @+[Z̭i%<ϰWk/K2G˗s"_G#ͣgŽB(.& faS_au3˴tvc5%4`#kr@jJ!&CbhucLZ፞Ԑ]dq-/D25۸x h EW~ɃN6bvBX&U݆g|`Cblʹܴ U{,=˖|39p%8@"rTE\4).?dϼHxr%:N*3^+o}* SiE+圗C`ʴ9a1)&#~>\Bb| /?o @,'PX\! hi+A{,A5+ǧ-JiHrp1 &2+zߦ_(OÑ0"Ko3;w>JV3i3 {㽮VI(U:VzG&-t:JNQp%f)W 5جmp;~=@_l5jyKW⛚)6d_xdFt?"UdkQIfzj Uv: bNQq.,h3o/C6gpwD\(ߐ2E0ܠ!N*paV >)hK_]&oY"A1d[!E}d*vZ `rx)wob>&(օmQ<5G#I93%FɲEo5@P!X;9 |X4^2}"~}4F|8<=ӃPr}oɺ'oZC7ׇ28aǩzBfoUig''sJ*:VZQDig2P6Ɗ`",W:|~N:;v֕ rߣ-1þ(^ߕNNjL/H1f W0NiK[GNO\! `].lߤ*ҹ UYb 0?HMKg.M"&JekXs$DiE̱+5xAk%!8u'Z7$43*EK9RE*z,R)ǭ`tG1a#5"bmJ%k[C8Ru7{6[s4œ@(v4Daxږ扈{1T B6AyIhDq Aƶ-|Fۨ2g N]r{.6.tEzLiw}ݚG#V8H兜qPF/>(N ߘ`eA:4bC1}'8ӧd 2#1/3[~*a[(UbA!/#,丣,~  9.POǣS9x?h1+9$U\GEIvݝF`vjn*XfKG5*gaNGX \m J QbqKiA8$<>q6{WX%Bvxsw :`C yd! hFW 7ox[!z*M@dn`aRDқosHwr'bBiz,nRF.5ŏt\:cCl*cGhKN%jy+hb.=XGݔK2XpāᶖcI qN3\{"`&\õ.KE$AU-WBd9uDrڂTƟ^Ot= cV&'we?LgC#:w`$,$*=J8O6nĉ?h *q"IC6l?K/u^|͵O/q-R|QE_jIѱR aꆵ>p\L@U)̼ ҟ!K(k4`ìBq=`c`wZtUuYsPPȿomWp Li[YTtQzf$UlxJ4Na}cq9lb|-H\"LkXN1C~ʛU9C%2 rż) wyXjwxb?T/_w׏{gOY?$5uL h}qj{~( 96*ۺVNJ,UKS-2ں!DWC偠wfoQ{/ex&WaϿX u6* =XŸJ8$Z RW ?~j}H gbpkALKٸPuEDUfWT5|x%P=-2Iqhl- 6uG-BLTU~eڳy@![6&QgMkZpy?/lMy,uA_ Myt0mZ-1aUeJ7j<sZA04EY]'zt2a%yTe/948hRc!3?g~ y'w$@9D35QEEz'3VH^cvK\.&}%I\X-DʿRX?MOܭF:"e Ҥ="l<[j<%)` c J`YrE i~zz≒ʨil. m|@,ƺW׎v(P#W+X%UE%SZvat> *`!۹V6)ss>0$+"2 +8=\YџMp0ӡEU ^6s2/& |;0LE `˴pTzk5n[ 2 Z_`z3[$Ŗ \j6D]k͋+ kd;g43btw#Q,&<șॎz!A-`^#]q$\O6?cl&M%(BB0zɂͅ\/ch$'JDܟեy>e8 7zψA0킑RыLoEk3X|w ehqиjF@T/99mN%ˬEZFfyq~UAD40 ~~6{O}YZDnM:p>|mhJl"?E,wypYM3X;TTiţ}nYZM+`2eζ ]jy..(LdSqBr@v?bX H$P+Njӡ> )dE~[{`ⲻjbU}:QɒQFwu)JꥪqwIߋ.>;NSJv@.7򆕘9m })%oxȌN"OPŐY`!#c~hf=T ;W8CbE֩$.њJN\b42 Dh Jg~EL"|@A浣A`,#_HD?eq>*ŗlNVhn{ӻIUүO6N|\5t#4_j ׷9^؉S0m+XVmǖmDo@3$ۛ$B"Qçi]Gw]kgdLg;ܢ t9C |_N2Nk"Ms/>OH^ {`KS_*Q8U>+f( }r(y`F-c(9h?ujgA5%փpb'kD!/sMTGjU99S9@a—L]3@>Atx~ѕxL)/=jV#+OC c.~su?WL] ٗqu ,X٪>P(U\N&,B@&_CTHYbo|,"6PZ ?T7&;CE zեXq@m++t[?0}I%{ r؀`X_ǍV(>Je*m uه KO+ҎLv<Sˣ6c}hc[\JToZaL 63qϋ_Qc}?`Rt.v1%Vj#s)ck/̮!)C5_T{< DX"_6W\练WAN L0I^Mrsaϴd,V}0Ӥ;`;0R2Tb VϰJA_H \vTWQ͍f5W;+1 xv2N}ܷ,q;EJy({`U.=Hs ŽIpF5E~mvL?vϭך f:#/qHcZ95LrS.|vkcf?Gh~a,4*O/YC;70d++n-tasؘ♛I sY~Fj%r X)S!}w#h'@,E_O]w|Y J0pŃTQ׹*me@freZ9wQl 9ϞΙZ}.xz$皚@QKb0'^k |:J%V{@h;`n+GInqfu:WY$Aj)JF 6ژ dg~<>I>eH&{V١7Om9T95 )h+ĩ[_oiI . Snܡ0!AgͷS&6X.՗!>Cy2 7KF]} @5-u8޻ .4{=D{wZGD8^Hmrhp IN~''`z΃ '@I:u]V6YH" FX %ܡq87MRH zcXs`٪;_ abt2T <>IX5M i5n/d@Cl>usp O{D^DmxҧG8}^mXjꖇR}o< a]F1[*=G 49;{7О~r/g7xM!0VvkDL`ܭjSNy .oX vıyi+̍YqUb 6G{ pos~nޒ;Wy"C\[/; {7bĂlyV pɷ/ gz*_d!Lx\!4o_^{Fo@A,$\\N۟IZLv2!lgQ̾gȇLIwDկipRS+>4!TC&42Ee򤺕04пڤ.3ܐzA wT-Cњvkظ=@uuY6O/##<3jrSRՔe)1G=PB6йRd"ғ{Ҷmja;X$q1Cǒy[.2G#lXܯ7M1|@b },:x;g ֬P^RpM6xPRӠ?ډ$_{-:Uc֊%]&2K\5I;-pe+r,T\_ڑROI4/B`3%_)Anp ] Zf  {KUGY Kˋ_M*_7m2z:R**cjx6, XVVO MaQ| k+,uY?RJZߓ=E궉d{rC"}[#3%ZxN$r&ձ"X\X$`\1;ćwBrWe:]aYz`_ U}dVfJ+拆熮v&BJ97k,kL\ɨ`J=eVַfq@&i*Q0'"QNk5]8`?vk@teg{IumZ+Dk|^=H-_]nEΙD^}l _F;/wҎ)rȪ~+1)'!BfysWpkE똊/Aq S'c 1J4E0I%g_GčLڎ:*։0FAbnz!lqD&{DH|0ܤ Dsm[al٧^lXˬTḫ3ڡXpMTpFqQKʂhU{AzAϠJ >AjP rg Sb@YA=;E^YMަ\g45Fr.f!¥ȳ<<踥DnDj|&P SۅΉ=et,V!*Ug ~=` 0X>/Xț $$p/N18d!,uNXU^ &6 V68IZAsFB7ǘx\PJ0@.Zt.7vH5Vv>|]O Q4KUDeV~cBq"I7Sr 6T$0umubVϵ3:>å;di/=S)༶i*"Y!ʛXMN-$)`l/RZ=60me%/D=k>3E_NxtKVcՃɞ !;>3+%Sn1/*a_h.1 !  k&\mStbdԭ-Uu]dq7% W iZv6?RDŅ_M*+Mc̘bttPAQ^4V9_ܚqMEUat?(K;hJ 1vá.w ґXiY߃)EgOÑ5L>28c|[9y"#89-QuOl:XѬ&b MqPHrV#}wflQ ^}wLk%^_f FK8Ds8.V~hg!9z7I7I"M}|J<j@s r9&+X Yt* K mLrTMsS@CP(ֻR<~&;m#mPycD~%Xl%6y75 kp \b_d,A]:hʱGc|vw\P*fHuͶUl5Ugͮ2zТXr#Ub6c{7`yN5OUPcW.o"ʝn2r ϠKꂫ~vIcݍ,DzGmD\mEL1=;B g6Q%Uy9OlT 3r#y8!M*T5ÒJ?-xa(NڳB*3uIX/4@nùNa<]V1&rF;~?~ D@YVA'M3GB>d[@jB 9uu5>-7IíL)N44$Lq.|տJ|Φ\2gsy$| '撣x|f#2 Q_Pi]mbFAu"~nu|G1=CۃF%*D44xqק/p6lW%_rR0K<HEY }cIX6l^,Clݝm3Ilt40dv()!#Lb<3jdf6pp_r4`c1\Z  VY *0x0m R4z؜ <g*\Z,s>3K+vAM)X ҃&޼+1KttSÏnbf}^avCvgkMťl@YLIQ4dqwvYse8Rtѡ;8See?Ou1tL 船sqJ}ƖNJ) !#g WAl@.րJjs=^OρF uq49ͮ@GD ~eU>DkDAF.o<(jQn3 Swn0oxz fM-[:mu-Ri&hs?yV7.\Ol3E3o;bRUuؾYVIVQA}.붴!f_҇X@3kʉ"mn).t?rVW7&qx,8`gBbԓIVG#*h6(bՆ;72&d64l%gléNZKIg+ݢmnMg[ kZвJ?'37*}(7Osc)Q@>F@,W<4؝yӍ&vG"F0"51 1߱BGkβ^P#?~әޒ=< 3T!nn\a a "af$>{l<8INb/Q PZ|w''\e6ot,)-v Q^leX`F+VF/ts~Q8̉D=go-YΔ::ȵONyF²qt-ڮrZ]O_櫁\}+%8F"UUK3MlozO8]f4 ,v(WFe;k5R'r]?# xy@qy~- VL'7,RAlN=[/6ndJ}F+TίE9 u6w:+x"*#GPEմ<І~ie KBXcW);eTRt(wJ5#;xF u̿9M{C D!npŭ+\rVɓtS֛hH9Ԗ%rAVt5 5I@yeP!&hpjVK֨G_OkܤۦknvlbҦ˂v\$9HU^2q1F3wX/!J2`>MIe)n[jS mfm=Y.r4l"&wgO0 S}@hS,ێcemYrΐ~d sH/X]O9#9Ԓ"/wj7BwET`$/ۂF^Ej_{lj[YT%N}֫7!f&.S%(^Z*G^")@xsWĬZ:[n͗ <Ԙ+>D4H2XPs,PGyR>=#n-ݲ]p٘Qd{H*Oi9WCz:܏72OTgf!ok(mD.lψ˩@} w@s}BrfUdzԕ]0!:4 }7rZa"iSZ#fʅdf-Mp mqp7 e0ǂBx`ke:}SYNI#-,#P=PZ! , &JvQMdhaSX8RքB-LCx/g 9^vuerse3< 1eoV_:G_C v"%2aS6r&=k ?t'W1>]x<;˔17.S=jO L:Ÿ1Ƚ3$waefiW;2Q9z:;Yf4EMc¨{aw@dU~ k6 ӷJ [.oj(c\_tbTƞ*&O!': nkA" UĪƹ@.c +09u:isRZ+(5!Uf\K:,;~D%Xi`kAKJnŅ[_p#+/9j_{R֝{ttٚ{d1\(ʥduH4~̍fh=֋>u\t 3tf|f)on:d[W~;}|$h p$Eo?[cB4\!́ Nύ_"I[jiewM Q+2+}_zΤ0x{mW3- WBK կ,&1C2dm?J%6 :^ŨFpvsJvqWwAZVIm9&b0;WY:( W Z2ِ۝ĻU~rJ.#Uuye &*t*p:nI 4*eLdxEp\Ei92b>l \Eh!i֊F%*Щ ,KК xс2IdTK3[ZU it odwkP bӦEt5K0dOH\bcyN8#,~vT|;a8: D) GkX̍-ڄ0ΡxN - Az!]hz]Pنm!_JW1Bl*٦Jzq{F:I\Ľǧ$rLUK1ב{mtszKC ;"EZ$-ITaHaw~"96 6-fVJ x_! ל6!Usǩ8*b[c O_Tlyg< îDg%i'tvYjfh*#К5*\E7SPOl&^r>blw>T2Az~ J?;9cYuIbO>pꄠk799emWSQE1|,_3'*ۣEzAZŗe=E޼[{\b&oL%ovD7[dW~;vdRPO`A=Է +kvd3[" Χm8U^B'x!deU,)v8gli=/A Wў]v #[Q'wȠd "pqt5(L?FFXt_55P y}=Ď~I:p| !/bUGn[G3'l<ɾPp,f |O9+X3K_ʇBIdM<ڕB`9VCCs٣s[1TWLEg3ii(v\"9M~ȮřVC~YGzM}2QO3zD4¨X~ M}mui'M2ŒW g|VT5u'G n |,)$8CŅo: =jEnkoÏff?i3ʳ!tV_jPQ\ 4fd=2 y$JK 3BbaHiGj'C B.AE:K{`=. LU&.RqPTn)˵l>6D׼cg{A BMwjӳv;HiZl.5irɈ甜_X|x4߰8? ;f-#8` o<_(ja 5q.cgWAY15_@q:KL,V=wUC BR;gke [Vy:'!b);Ïn#(NK{(X؄N;IÝ&rZhnRC$yu~Fa@`:~OrkŔJVMA4ٝ}TCN/EK(C0RG63Thww*(N~>L6(jP;wgA; /eA"#5[M~jH8hk}bdxaV(L'>ɗI`CW7W>7 ̱1 Q[;@29I{o=ltKP%bPյ{I@kt,"/A`mib5H6tG0<װ(O &PFbn8#5G@E*Hz4ڊDv#-|1yWwʕ-ct-`"o>`j;s9af*ïToIek(ՈDJ%2𠠥bEb#|8%Him&V ;0`h\92+4?+#Xg_3^.^tV Y~SZ3+tRle{Fv4U"IK %Wb} dcy'jVM7 s0$$!1JnTe㔗S?10-pLW5PJo4çj1|[$2*z^zIoȭzPDKSVױbm:dp-kqW^h 'JntdxS78Q)g9.ӹ_'6^*hrbtAp:, ]v/ZH|q5xe\2:j<,P.,.myX^#z+]4-T7UA@LQtf /" V@"E']()j~6& Mu\8jV}!M64AoƳ* %"R./U.8-x1'xgh) 9J][ 1$y*8o]|eA3ώfháfT; vГ+_xd푼նD_ې3t҅2ܖ8U/"=,jk[#j2j6P̤RԂ(Z':j҉ tH|+:pNkCĠK%@R>S\pRontNpe( #nCܕ ׭bg~ʿDs/z'`R]4)ؚ6k+[!jI-}fxMZ*r}1+H(p`-Ӻmv 5|ENq-yST%(\L6˂~RJH5H<U_Ӹ[`%8{P}==.c- SjAZ/EdQ`[209_"n[RkgP肵=Hژzy,62V٘Zl)vW@*&>{` ˱ٓS=h>3gY c\W 2D􈁴Z]Zўs nZ8i9=((r5Ǟ GeJ^}ϟg:a-:h~l=g)/_dYQbEk3$7(n4gԡ.Ř~2̦פ?KlNcc hZfI9@+ƷgZuevlwRpGMIPPiy/g:7|jznRb|;13ێs*y~ts/mRYP_6<葧>x3bVZc4Fq5yQRp5F Fj-#$A5;h5QUyPl1Zi-_Je$* "ZoV&o7v^5?v*ociրwӢ0o.]vyx|r~^NIcc,"AҎ=C) n<{oy!E‰Y824' ]:xaF%W7fA&nXEkPR{? jQh#p'3m>nփqw¼%KxCz`U%K5,D)6Z^4Mj }QW-PJۍkoEr&'lx [dgdG_܅31X{ABcwYF4-ǵn 6@"D\sj'I[z~$Nq8Vˡ!pG3~Co㾋g*94E|ܔO=t.-^,LMϭWinf/S.׺w|T8 Q1v ʹbsGq?ڼjqY۰POzn'Ѱ(ϟt{V1UY nrZ_OՓ(րXrJ~TJLTew*D4=z®A?m}JВ[jyU1=ejJ&K[ a~6G[3ޡE!f8M̬)6h]Z 8X>$O9fBJt;Ö3[TqS*'o WL|@"n,e4#F]gUg^+~H*Ĺ+یRxVϭʱr"jU_Q5VFl}(N= cK/TGA=5fxT|=mQ.o[؎UEFDW4lqtӭկf_A_E%-xS^pD\?_G 6oet-fvn.cw*`IP(yRz(Uzq8  Ҳp3hH{-2Z eYwvK o@ttrQrЗsdn݃`( Cxt9rcg!KF5=8 '333's>l9iA֋*4T^ߞ2Kfvd l~}`FZ[ٌ5p 뜅c;  lDo3/o`ϸVUCɤWI`؍ҿ\~2UyㄇX o>ev Og,̕+z Ds}לF2ZiKBBfeXRkP7OƳ k\_/֗e75˕G_cpdhT1/_Ӯ8 nYc I97~a<8pf+i"#Gd4>\E^kjV! +xD+ˠQ)nx0f'KQt22\8W}WOޘ_^I43;SI\2(-yZ$\}?] l:1f=nñ*F[P2CzqRmbT%sb#w}x8=*CQ@b'2݋Y.fA*.*POEa88;pCZ,ZA/Z RY+ӮVkFX*b>'=O3c?e3W4;ӅlGi脔Q`L's6cΊnH9.4~ rsEy3HjM8T;pPeJ'%;@,(t aJ6M}AenYUf&2`EPW#:n*l:*,FH9xk^X(fO‰|[TTx'09p~MQlwĹo~MVms62|cX)Vbˬ<./t^fC' ֏% _LJ_v>d=F9ld &B?]q\4*/|9m*2d[б6Uvm ';cV@f9V;}i|7Ћ E -q{awղn:Χ"B(߄Z7|7Z3 / P]#0J Ue`m&US=m=>] i++R0 PYQ._7BS[PìUCjGqzdI٠xbUcn#s!=ذuKH$A($e,>xԝ/m_ E(4fW ž nc}*lr`")$ۥ #H \Xg+y0Rwd.zp pFKL5_X >Rb0"72O|1 !6=5 vDmDfy@?vgUml@˃)5pVW=xo3[Z8[&\&؂ژz vhY \48& bsF Ӻ<шLQҼf4t]*@GUJ;.k2_w W 2卓EFV^!7$m$_&[n7l;ƃ>wD"V0"6 (We;7Y-ċȂ!ۦի$b~B3qڒ+t[=AvwdH{+MyчNHl_p#hBK 4X^x} !X$6[ڡȥn+2V(:'JY,VTf^2HȺxxNwnBA3 5(LcA(_7\3]jpQ{l/ &~j+-׼92Dn&0^o")`'2Ɠ*19CO~4;RZ`4?nr&lRڶrt=ŸLf!| GѣvGbO,p>u-R Î[ ^&*{렯 X3Y5%{ WBwgR&GUa#!e ]= / j,ܐ@dҵ).s(!NJGst $cW2w=|/N.('HŲ0ők QI[U;QIec F[:[LszvN0Y_CcxH [`؝QsB ZA0dd۷dtQݒu;oz泿m _S>M;-;"M_쨏@m=_u ;[u %'ȿ[[Ex )L(#I8RtO :9V>= MbY.L.Ww; &xzQ#:JἍ;m9R0ޫ};@>rf0;zNKQ$>'ƳZ8S1d^|n')Geaɥ3r6|0Iz Ըjh '6 :1Q?kP-X@o9|>AdgnڿY'by [VRٞJRV|fzD3stٻ2InՠzN+#X̒JADmK5+A{9s,3!37ܞT$”jBEBvrX& ; I "iN ۗr?YM9U OBE z0iBY-\Ņ`Cu1Jn,fi@0 ױS0_B2)is,dn/{H^n;* )ok]dr[~q )StzLj~ZnvsRyEßXQs\>63.tKB,E\ CϠ~lssa 0qhH˚t{SԹ:h4"wЗ|8<1e-*5#AJ5?Wgj[I+i$ 7 rA{~p"wOn \ӎRg\4lGd4*S#YqNa)[ɾm⟚ 9Kv?Fx&9W{(G4@TO߁Z)łR\$YdmJ$]~1{yn|dD xBgX]K>iB~XԐSfp[ @KxS+Yo1S[$T!9wQ%y+vY!qgd[ά t@:^YLqBzs̷U0p|ō*ZĤ"ƈbtȈorbZGfmXo;1xH ,?@` zqEUxCiI;[/V{Wci~^"$f;[ 4*ƥHm/-HV.-&@WvnHi]8Y!=˺>6K3({xe,(HO>eؘ"(3׸YډE"{>;3tQ㳫~f#ڒ0AQٻ`h+\х7-st'C xJ?Nr}sE5ؘOYE_?Ie%EBmVgn2͒3 C`X\ZASCNh TCia~R(]v#8KmH>ܗv% I>ϦN!Rpr2_p v;Z7i 3 R Y0P:zPb[PY@3`S# 7]R*ث$ ΅"|_p[?RH{4AsqO_oo|?7_3F8`t o䪱vG/e: {u \}c*iVx~ Tؙe%v3sBê |M o|>^&.50xlch"s[*ުx3C<)($?W6 ?NKhAc+(j}^~_)ZPڥ IvKǯrd]i3Wqmj{M/_Rec/!ژBar\E Py<}~O!3WfG]T h?-[t^f @{-yXsKTC (O ;b>l h4pPRzpl @42d "לtj4اgjԞV]8= kYtrA!o✃3~}혘 Ng0\`K^\.lQ7 ;rcQP%ڨھgS"}A"?IPVfqh{yVAڔ; pAG}z U(٥I;:VuXwjpЬs1z7$khS=RdƕHEOK'6PX/H̤VAd}ؐ(TX!5s$'rrIPzJ۶c Vv7k&*\Gdo{#Jq,XM3RoR3{Ns{4]KklL1fZ9PS37ۉ2a&cɰj)e` %7fY<䪊j/P#EzZ/<|]?4lk68 n"=B/3cj ٙ~mRWNA@[+ZDm|r:;ʅWħ1dCM+|[sw^i>XBefu9:LvHݜ5u}E%mW^6̏ȼB& `({K´~؉LʯРi:ykq;f|JP?]94kطx5ӌoƠ^]! 4zٱT;di7Ic͟#o?99W7Go섪CJA͎Dv냦5K\RydkdP׶ Vz=qʌĔ]|Kz[ފ=1뀞I{ DbjL-Ad`~ K=&Ƥ3KiF8BZ7 [d^ZHKx[nTt~~ƵFgj#)_Zd⻆~m;Xqr5ƆPRfXHHO]i&.3ih!eZ~N\m1#?y\TT$/z~}C)" ?nx7cHpFԑT+<dԮ^ا)Ф=E6V:A;CI;]Llߓk5ja>zL8ˎ~(?kk>{9q*!S9f3D$z b-.XznbAzڼ65(^ C#k$.g)mgTJS X`Y0cn7JsWv  ç473 'vT _S8p!"BZO#ҺYP9~˜]ݞ[ˉ6Sk:RvaM FI ?vNત>dkz-N~5ԩu؃^8ʤidp%c BN[GmRTw ejtt-6#=;[^˖zw )sA ,Z#oF H҇)2N}MKBob^N|S3tJh)TҘlviB}Ja}zIe]0-bCKq1ǫ~[/njy (r@p&@ڀgZ3;G{bx[G,woEl2LB+} ~#J>x9PRy(/L:ei;/bq̫|u{2/䒏o+ \AD6mퟔ3ۯ;򛛁[Hdvx?) SCwtykjY7phN! d͕HA B!;/4/՜1`cǁ0@Du}kd0ٺ; b^5,%@-?Bi{_ ؁-30LM޽E94U2;tww 6qWT D Ň"Eo/^Y%>0e=kL݄E/}3V %n7Pn*>^}eum;64>~jH晛@BZƕҩz5==yzYLSݛ? l5l0Z#G伓13CSPKa T熴#96N!dDX3v0q]hB=bCrQY־(Z̪vKZ>Tq;c4r#Y?dx<¨a6؄{sQd{3Q ]ݛ,8y[Ӏma5Uc=@ou$GQ<#_ ; Hc:bZ4c)$c88a7v?KlL6Vߣ~ q"ĂSz9%QJZf_*m]'6m떾 s Co puoL( hy@5k>G))t-T4]#P kVg8~}`D}F$РK6 sߺwAHܝ%XX=&cFF4 +T%,ҁcl"N7h@{.<ٕg'y҄*8E# /0Wy ,b jzf &)J5[[׼)zӧA3yO/C]DZmEƄ;dB!@ 0n1h2,L1)x[&*r{'974d>\6 tWz26HnkU{}u*lcĥFM .qHHlÚ-.Lp78:"ʜZ PT;.g$=, I0 GB4N= ddGqlb ]l;rQ|B=Xai}De9Is,2u}  6m7dĂt~H}Fj>xuSF(hBn *'ɱ'^2OcP]DʠҨWM #Hy~dNQBxnUO/!cș FbP΁ϘHg <,M/Ŏy UٗܐĪc=ن`g?L@܍~9wO.i.NR}9&6bĩǢ >*ZϨ~ϷkF@.1{Jiulsn/fI~Lmg.[cq Dg6J`H^kibJH+{-r\Sa9,c>MW WdӤb?xUiQLB@jE)B(0q+f(;B:r{ZT]ϷeZw?jG_ۆ,͘GHGQܠnZԕΡ T5$ܴOǒޯѲ ^*IJSV"aX0 ENRҢ Rd >;UFtXf3AB{ _CX%/]\!5X/\8a6JEV{N=C_!3I! bb/~kxD?" A~t}Pl}oHݯ)^֏d*r>?t. HLzȠ˪78WB,4T-U &nVr$|o bx̀W+ GQ O.~!L 3h%_"&oK~Wͅlƃ$th3w\pKpm78iM,Ffgedz2hzzk@jNtf?>~bWaxU'#{I1oкYY%y04T^nSOxpd%o ]sqLfNx]dfހXu岹yhl"Q-nŇhꃧ\UWC]Xl@6V74jWbKO8}jCǜKZ##7KH%:p{!"zfکf䞅J0=u6C>QzRNd@}4;}:fs(aqZ"C/Ξ5L>.Ĕ>B3ه>BSUq"}`o?˴ . [K&}J\qJ fKJ@II֧%XWE7XhƁpz嵾6T<B&}:u/n\!?%H!hܕ '6 +LyDZ" gN==Nkp;no(exՃha=6C ~!!mH^eK/:j V2`͙-vst4 /qF-F*☂;)f.%$?-OiEW~+~ ),T>`R\leT'ܒ=7VXPQ Ya~'79bNZO?\QM 1x:B|Jb0RFKhy׀|0Xd~O_J %A>N<16t ?Q>8u_hDFilY@ Jw9i1~zAfgmh,.[,Z5' _f 3H\C_!8 R :)9K">^Yeh" X͂3UZEE,%ai"r?ּ (m@5}+F*C7 e+IkI{]smɻFBaC{)s%꫗!՝U JP*37G!RUr>!؏g"CŏrD/ŵ]n?;v J`J<:5&,d`$M\@,j}9)z,^Wwy_UUU(Qū/x^3dMχe&&W'7b̸:Cğqf CBVG=暿[ 5FTH~xY9;3Oc#MuS`O؈y5GYlk,~Q4QNQy!Gs2^ܕuUiaD wAG:_zje`I!֟qD(9 >jV$N@|iiͫD #'qtkAW{׌P'^ϬƂ(E(je`-ΓήKMhlFչEFp/1n;o]V ɾHso^t m!|M9xíT迅OݒK?|TScvWM?z1+cҦo$ !3rxgܵ.l)Oj\界Xfsn.yChۏ'XK;%SuoJO- _X.w1N9޲P}砿j@TvWdP}T*>%3 <.۟BiKlK."@y!5TD'Dor%2sr']ðs_g1u8+7Ʒg5~?m90BR_eO29f g20J B7,7VBm7}x{7ƁEp,¦1;^I[OJ1EV&;ͩ[07|pI{X? uܶ͘?T!LϞwEe b]8oGLZ c*a>ݍ]vZ~nX _Dt ,fJ VYPe_U9B ׂe~uA`:N+i>s`g$Hr=PE0l}S]sR$+Ʉϛ\gc92ȯ^J|ImK=ˆB ҭ2X}k"%A}嵾+T Avǻsr=CQp×qRiAM r!;m ,V0!:P@g͐,;Nbѿe((~)}&ΔUtUTNρew7 rmT<.mWRfo:p>p4 É3Br .3($) '58LRY 6YN@oDY,YV\ ZW|P&b3f>FY`7DQVuhF^?ϜX`U: 1w0iH%IWgcRGNm{([\'(5Df98SMÿ k`xXxoh:Q[#G'PmI?!)ٳ {'|t9_6D ?}1P2z)­uG}LfC7ɕxH&g8ѧcVs6ÉII?_FԡnK6J;i]l9["\nI}ͅҕRI iKi],ɔO!as?JkJBbCnTSe1v\і8|V(zv 5&)qL/ S<>`EUL293AzB́|b΂(4`(ܼ~a|AR>"̀1.@b8y: f(ANqJEAic[6ҍ9 4]5EY7&^>$Mz?'5q$]jtds9)`,DqLwkD%A¢ 64gjl=>ZqSa/6W40>6Zu;gOˈJ{T$ԴBiiIwUN)-e$&ݶi%Xl{ 9l'2~b|H>e0 J*ψ*K\|K,=Ye>VXFyP'j{VjVfG۸w1iH '򁫣K9N]0c]C M*X6)EktaMvRX7R.)36]&a(Ӣ܅\{y[Į%UXp ył|B~\Oso\AFLmu@E*/fά|Nkж+[DdjCzٲ&a^Jb.ۛgx rJW\^yz4Y瓂(%\G@9vܝQ*"\t3{Pb;;T#0#H.e#=${6_5Rvv~7iaJL|,P`JF6ob$!^ANA1Be*VN0"GM݃Cq2ef2X_ߐ30bpt@Еwe|窨dⱃ+EpW&3GRKD|LՈ9EthJn.WdQB fk򵯾;q'YڝLsR~;uf΁9eU2zP7aPA* ~MZrufZ4=Vw(r4UPp6rv}W26QM?d*{S" B˂h>؄ju5rC*.8O\IM-48Cgs+ xd;x!8 BPr%ws@xw:N](KD'7x6[CUݍ k qLrc1Bh:oEb2Y6^@1Bmm|KЩ/g7 o6wnGP"X~c Kmo\J6.vצ,/EK>"b=Ui&5nh)Snjq- "!ĤT0s} (Uj!("}@~4QD%˶ra .p`3R}GpƤ㝥Wy[y8a)2|^A)_dO>]G@AM6%]Iކ' E͏~W?#HRp7\ű2Ӂ`Ym_ws ?ȞMԘU !iՄrW[hn3lߤ4@ E|BQhd0 f;).E+nb[f}R իS{ cJ>~ $U)DN۶Cb4նØS ++B7ΫxkFtCyE [-.~\,Oa,:}tz5SX_X,1T/<3pNFs{JӤb|zW'2b> ) qvN67rrnOʐmh E^Xn$zP)N7~'S]+jcrq jzCrpE^g51.9S] [lW+B<%/fxѣ /&Iu8mDWfE3bSNOvc`bͱXltESs ĝ?bD"lgR<”nsOT ȜPQ]pRXЈ{49:a?;GŚu\4xפ|iu*&.Yt=9y?~:.݊)S@UY,;U1g239 ?77dIE>?nk46Dm25Y_}x^D|p@7Oӊb# UNuR [xZb.SF@.yB0.^ʿ^( ]#Zb FiiNբz;YO@!IQ1Y>Oa?XDoׁhpw%8?aX1 ak2Ü|5fs:;rҌcX~TgM-eh]aW_(\ G9k,񯚈ZzZ58PE Bc06eD6ӠeI:a ݃_g@Ħ̾wVm^TnC_/ėu'@O i*V>Zf#_c Jgxk~;YpiY4Gl5X)-vH.(*'<2EQK-&bsyYykoO'8n G&wΏg z]|R"u=6, p˵z`HCVyN7YQI}Hb RxW6.\S5D0"F/v^Nxh|h>(UNV:[?ݝ҂FHdmO:9&?<3ѫBHT dJ:m@xםJ$tmk|ʈecDb%{FqYgHG 1q|?Co uo0z-pjZYq44n}{,*x#R9Ls A&&bO~@6ˇ Bʶ-bN]oz#H43BAd"(/{J{<|h's4ס̸m6/ åU`=ʨ^$Y=F"<&dBK/V#[`c  9iA]4) 3ۖ(nC,ոzEpF8ǡ/aB>/qR1L[L<)OzW#/Js;qU)$!*[JjQ3Cz.wV[ AS2LvIs!4G*"7Gכr;! 6(Ntk;2;gk>՗LZ\#ԡG<TkIL@ol*t0Q:#ZH) ĩ1"դdNi.-VQͣ&S2KTY7v9Ӗ2%r3!r FK݌?]!f VLɊ1ޖϡzN>B%5M/j5x; {0:oҺ58Ob}齂5:[vܪƥȩ£ű3J-^ܟIaVTBycpN>n0aFԮ죏0l߇d6iNj9WV\80qme֔IRk\dnbz&"N2A'F=vE:[mO_6Rb@FNgddΜO2hM6ʝ^oʌ u8ҺcNQ,DB=b&l'vkw6{NunF g;h\8$⥨,iܐ y")#vqժԀa[*-vYdK, YcyTo?NYAo(Br,UiU 3JZG~i2n%|kTu(,Pσ,6E_^/R:}2 \f-jU+Ai;^FU}}Xqvh y:ڄ6ilmIY7sy>:ދaDL4y2ܔ3VD!\~qގS4 RM7ym2nJgv_5aU*|},rQʤh`Q☪ :ZpScZ$@*݊X~h6]:"جL4:5 QƝ-=Mjƺ[mi℺/P5|/3z*|PYrخL/\U')ٝAN9E>zQ2?!0䫮>qI2yЃNCߖ$%>jOy1XݍGU7c|KLSQ70+vE)D P*0e Rm ԸK3c=_f'pScݐ%ƵSуڥ?<i7d[I雍%_6!j7ϋWdV _1h>ҏa}^Yg(ߎuz5&D4_pN ew[hhW%HWkZ"%z/m23|lZbDi@{R3W gy?W/?M >Tтq7=e[T6OP0]$}TlɽN2@DۢApưT+[rQ!w |2C4 .2SšR7Rl!J[;<"~}SXT'8ꏑ>C!z'jP^)c mlHYb)-{16*@ڹ D'sehi>9u%910!-LRZ_АvxּmAs[gZ55O;VFrTfBWʚie+lDW$хiH7=q*2#?,c4vҽ$@:ܫsy?/'rDۚu/o<MAC߉ۼR{[ ve'ƙPˮ &1(q~ICƺODŽ@ [ÉL$ԑ/NKGCB:hMWir5,r Fy?r7pQMduC+&,<;&X]~oS|}%ipvO/p WqK<$S |'cV?IXT^OfPrCD>EީK41Lb`kߣwP]0] ef%op^?rqj=9@)X$06y|/׭|YS.24GQNY[4V1¼ !之)fmm *YHRD\ˌ!O޿l^r :ߗ`K~ ^M}"v=5FvƻK$72R@*W,rN wd0 'Dأ6x q7%@b7cKgϱ[=uGz5[m"" $KNoPP|x,cGiF~3؝(uZc.}D!3qR|$`D@@$픿$a$*{4A8>7gTZ?osChcT<\Unڝ+j&@MAUܤzq(̈u"TA}6s=:SV+ѶRk?|KA7b;U' sbX wXI+L]_!_qLw 93-?@{ Gy|Dt_Oݠ>GxK_jEΞ|qwfu) cU#>x.j2S䖟^ k/*%`}Qq zw}> MLGCv+20&H c!3bIܐOoHD8~j%bJN}׭|׸勖W.C׼ڐnD9,Mb3_K$Y86egwXíߑRt HP`.jG>,o9X͌6iɪ7aDNopȚl pf? SWF53|o'<TY7լBx`]L_`C= (TH] N ]GPĄ)z1)E84om+WGxz"ppl(< 1r:DmqǼ6,EMFjҪ=lW^ =Pej4nѲ7N椩dXǪ5㇂[Qb9qmYM۲,@0 L!qaYH `\q%]. @f)Ưx-CaW|8!\MVB@ㅶhj_ Lk?pY?z#ZxrS,[(AiY*i8 [My߹֛KRkŒDct,hvg+Ieb1{%(A(i#a ׋cxaThͳ бq)tQc4DDಛzrL-80鏜!:jG5p I!;Wa~3|{4O Yꆎ0%7"ˠvEX:F++ʞDF:r.:*;SXUBۊTlWL]쏔9l)k`@)["'<wG6IkdJQhHtHU M4؂cWF%Zee°@q97BI&„2۔vhnֵ:p@_ g@Y~GE\Zrg,V2a$y@cI_>ZRK/ڜFiߙnɦ IZ rNPp[!i|Wh0r]  )@RbLkWYK㑸klV`LU3Kt Sp<s Qi6$oԁU(8\p ۣ6 r:q-íG^qnd% ?QiX gp\iݢ-xTX2Yp6FTI04#ɋm0P7XwQ0kM>Lr1ڄ=!SwJ.yQ\@KC0WHm-k({P=oaUk3?G.O)wcȸ\Si o7!H@4e{)id0 起$}ZKJgc \L"|&6qa׭vCVsu;t <?1$67ET4&&5?f딊 SPYġ=d+~ h8gDC\a<unҳ&(Pxp s FSt߀WxQI\<ЅL\`u:}AR +?sP1,UK[ C~w٤0aglŧFE[ּ_f M06x^Ću&7~2#Ȝ[.PLLj0C{< C?CÀи>"[90IYNN-Yfg{{=UZ1~vL Qh!Ev\ s$@&eGoʇdV= | h./fᆵ$Mm0f%gQWHRå^F4a__2[A(Wf|FP)_Ұ}OyÊFrB|t#>]!5W"PG̦u!q*;ffg.#zQ Jƶc`~󠠩]Tv8(Nd]Os jh_l<T!G}JoA3< _RL׵Ex 3&C#=b 2c7?GL cLAՈJ^!-`) G S Z~;,zGtDZPaY/@d~ ©[X8ϲpH!p-?0U4g. |4 `|\XE~u;\MR_*<=-z|!Y;nܧTp9~|_UƱhݫT>4OI~ #T*riW !Y}hʀsR~;Y@B ".9@OU! +&Q%oSn)=rZ>±![ 7)pr'gX'DZ^9.gRiYQ|{ E18 *.ېq 'YU+04#O7BxyM[od6kɴ_#x6#[VO'sⱽ8:LRJ Pg?u26oE(@ZԯhcN C wX߭P<`SW0;>Oک0σlJeoe";g0?b@lb*t@~̵s]\%(b+Kx6 Wd+N&)hl9P}3>I>0a =yg7mbC6t}(&Q%`VhG^Z=n0)nS Pyj5ߔARM̷\qC'uJszLX. h%gr6X>n#MS86AuޖJgI|?(M? {(MG 9=4ŤTf]F!9wSɢ{7N 8Ha@FAj<^2Ga% BD@ܪZYK6ɴrwߌUNʣ9Y º 5?4.T!yvɥ61431/d?"|蝧ES#Wy "s2+t9y@>ӠEj"՞ɑz2pa_Le.RfFs83l(lѥx=> gK5Y%X'OTqY>1+be38Xyazңʺ [TDiB;=O?m_9p *ՏG1Ɵ9}X 3oO겨dBdl)\lBYrFV3@Ԏq`wH}pxKE:nm~02cw,8~ڔ/5e째MĆ:{K)78Y]{-BamD?3Z;;L[1 Y>y\Sc)9 >q۝lezHuWME`%l%d]uQHFԬŐ6ӒKYž7R8 U'# Nj ' QO'-d#JcD1iǢ rX'݁Z bW c4ц Nh0 ́^'U&"ٷ_.7brO t@2[PF/}a cUEkE C=BJ%dCΪ aLD?*SΎ` /$`:PUZ_+K4OXgTͰ\OjW-N0eS|+O6/3H' BUX9$= %E#JE5+_C,6[. RA "F>chV6洐%NR=9lT8t@3*. -q>&adHop Ñz?[sBJpvʣAu 5H:\0.$"_۩1\g,䶍;^j-Xg ŷHoubO@Y4,PMܨuq=3Ns牎sXA, 4C&z< 0j1N۽B&Hp1oC՟˧ܟ`뛿=WF NJ:q*g: 鮶N}Z>bM`~Y; =U8$w EەXXfkR }zXdBw mO\M87 @aa2=/ykd?|Fƃm-(Q8- h܀AGtqRm݃A2Nζ[\>ܙ5q ,_ J.jr| JtȤN$a YMìKP|Nځ)m[!"s*(VLj~6Q3(ϞzDLnjmili,"[gf' %?Mc;|u|#.;v%Åqº gЍ\7FNVsqISP2UOfq0{Y J$%jز6"/ٕșn.ޫdݕM?O-ސnj/qK)qsI,a:*ϛ;<$ax-,- YdScL*T@JW,6rI[hRmmX[_KmOfp'"߇6gB|b C9} ^3$ZޚRS{[ɗG'kuٞgy4ĂtTȋ<@91'NY`_ah_Y33čdq/t=Jkr JPDwdu BXmljfR!ܘ˴9l|4gNQb ysK)O=Q+%i`48G5k>DAU\Y SV7J&Jmlye7)/jB]G-fC6qА} `#.3džn.4 ?BҜ- zV}=UV(SM* ud%Oț{z`!9q|u!-7hVjũ%$6WM2\gZS׻&w GD~?A<\3PK7TWa$Oݨ.rH=i5*0t1Sw⿓OTu$1l!R},PD?<A:.HB#1U SC4A*%QxDp`( ɍiTE r3VX6BV'dY:rQ\O"q1S]\3Qᙁo b%y49W A䜗>\S06lw8$ߴĴټߘwh<<;tq~>b#J AI}:{Ml{juhh6l k 煉p}tEʶ0La;(.|$V0zGA&Pyfi.3(,A,D݊&k@Mid5xA&fx')\\ ^8c,ðUo6b7UC,>||Q٪"1` qA)Y׭`ybcBt{XGƒ :"O&'CJ\-JDS2WnӨpV1U#gq u/$Eiʴ&1M#_ܰw+Ir@ˁa7jZ}wǙu:#6c#1?fS{:m .g V'DW:F~:yw5CQʋ-1ɶ,v\+^9 PmQI`8-=琬݋`xC`L>R ^mǺy0ƾ(ŏ;k!^_Qק['VZ|#ɨ$ޱ*6<`Ac6,x~ &lȝTU* PҒݥC59ڪ  KJZ>o'".Z{]NJYX0d5T`yTrƮS]"eJux9U/W-rk -O1Î+}?oh u>I|qbs\ kOP<烄8ݔ. T 4CB[. 8͌U=9À@0WP@쨎}ɺ穦xb"sr).d&?r^$ {h;+پD `-3HuK&Z 1ItD@ 2"HDv?w^[u$A^V4 '@EB E'{i;Y%<%~_>ͨ}oa{겕4~jC.qH`A"uऻȑv%}$'}qEG4CKד6l\Qb`NJTDa#gL@#! ֫|G<>7 ez/䩫=Qmq/&Gh|?T.^ hIvZb{ ?5Hw->f%}¤#jKB;Ri.!Pr);("cۤ*+eGt ]%87WMc]٫.-}I-BT|:Y!,5 bK0:vΗS.V՝yO`w]qDL\L9& n`nc6ZGڙV\Gt7h&/|Iaeיl<]1Yj+\ JZ/x|NsF/Dn@-8L+ך..VBhY~Nqo9HH aBh 㕳}5B7 7|/&Mg{IQӗGe4ʎjKCR7o !p tJ.h7oRcFpHA2tr Gƶo\lk7~d[%Ɋ>qwD1 nb?}"$=OrH>u%`(9}!"{]rza0l95y5^ݎ jԀg12}ya6j?a1Y=&fB(Nl;7hcUE& h;8d [+ǜK&%S-'`w>4A]mZixbI 3ּb6<,ت`` 5A-ppmD̏1AbOitU!OzR˲%;sgj(u]";z@#ڑv/# KaO2OA|%> r#ia:'Od*[z%8|P, 65>Gz喩( u uo Xتg+i:M@U 7MuUz[\PDyݙw.1O61SߥR?.->pYjćݺ.J›lpŏc=u`kG ҅Ijj`ii*FJx ʣn">I#h7ʹ{r''K VDZ SfzīUi"zԳEP뢜$G$>Tnt_Q@o:8 [!$|_̹'-4Ā3B^;p(Epa'v(#H,mP;xS.EuԳ66,W;8l+BC,k1I]% b0v u^2R)* ?`_Ys nvuhU%FbIde)tҬ?8UꌼQy+ۂ`.Tv@k]*Q%$ %LU cLi`ױkgE7!0wp7^j@0ƀh 疑\,1 [Ɩ%TcbjP k-ΐ+2؁U zҀVGк.~!-Pn$~ p}髮(\.!--Typ,q$F^h}{ƞǖ,vϒYLzu [L`hc+/yD=X=f W:kMx~{( ' @pߦ<(I 2 aj@(+/?hFD~IemX ((QPՃW`3tCWw=d8 .pyPD >ꈥiXCC2MF83xh{%]?6ݦvx5 (AI d<i`oNCıYcrngNu)8qBiNS*Kn?ByRp!p )X%ǻ)]oQK΃^GƒJHE Nؙ]=daz{T0Zi%r qN*n? wѯDd>i2"Ik#{|ᤈ}x?Ic[`yigc=dp榝exDI'Q@{kh!1K}c Avu~c?Hxf)i=tK ?37ډ{JFRt;WQulu>CPO4 2`a/O9,f:{lg`jtOX47 v F@ 1Lβq#ɶ^U %<L,9x&R>Y&ܕ>ٺZʰ8ZWXU?kl,=1vvl0*Pp +iNbfsy5c0h[HNlzkD({ϐ^\}eJ}dr9]g#SyO}1wi'C)QM惤w14^vE)xgb%y+UQ:  ̷U9c:f{࿸+DZq2_/~. R-X7ϒP|p˽ +|Q \H7Dk\#)d0p0ӿ}KCwl.XV@޳-Ŀ@JjП"7 AV}O6="+ik<  2-^\0Ï8'(qj|փ@h;+ /Ehנf4Ei՟y싒$hY$.Bm! hm.&fr.x+|K2z#AiqDS eH-9ݔAUşoP.%V]rT{?cr?EW|&]q$Qص!7 o5ڂ1nc py9X:|'b.~1n0ʁ:;lőܵ+'68o K}p+*_3Olo} pDsZa=Js'y(bgeGjog&n-]xc/ ק|JzmAx5~9R 5 kbe\6Pp%zZVXY jd)!'|D8t hC kʔ_w3pibqp}ׅ݁x;nS-l;}+i@艼⽬QW;kVb>4A#+BԐ]࡬{';[^}z8Qk?Lط*+U˥037ø?NG$5UF8$Û>QRdQhWqW9R\7L ">.~'>>R az!8ħ?}inxjXA+HI&'P܋-DErGb[cd Ga0Bt>&L@RͰ1}C\5\GE+x(I۝cOHqbd七2zTV#6Xa6`3E Xa(F+kLԭ|mU,]^HeǙCb']ڱkZ :&xw&."Dl^O?Lg?Ipr47I86CQ-zh iu -sYeL;rR 34&RԄ'dMKxod^/O{Rj-g%>B!yZ!dB^oM"DZRT*õ-OLq=>Pxu(*kU_)y59A=]!JK?gs*<: ^DWMJhqx#BI 1TD n[B0FT}]]AFiw0A'e)Y$Dx*S /COw%4t| 8@} .?$C[5Uic-O C;$Vw$5 L9ޠgDRnn";R'r;Cf4PI4tP,*&䏗Su0,t]s4,GEY=5_9%S*Ԕq5`Ndn*!nuDfaƩH4 ;8ηjH*목n-G0&cWշ@89Y8M1=QiA{t0:tB"IlLZBF=J~ kB1 jS9꼣ІW{,0-j4VsjT5,+Uv2ىlKX@{|h3c-ch8fMb,ܴ])ﴲ_Db_ [3g`( Y*DZRVȼ`CK- ;ףӪz?H-H"lv?5='cH&Gi^C,qT/({`?נcgլw6z_pa-WI)2cxMܿ.p_(l3Ҥ^l[1Pr2LVb?2D ) n:Ve2.A&,Ja\rل. e7" AGNl]}4kELK:_KIT~^ #k%uܐs87"Xn-{ׄ*^(C@ +x՟BXc*=Xe h)J4en:t26Wt>'w)j3ks=ysOok{K0\݌6O͒pK@yE`{^r!4ʱpi/V@wxxT]\""IޡȻܫZ P=OUa "tOt $F-g, m!UFÌ-2_)0S&7c)ujKA([&JFXsq.Ep+,l~wӷz-PmZSgH>#!h@b^X9mfZ^!@LbK L B@hٳ0q56O_@P0cv6H [Tlas;KKk-+NWu}o'D(Q$mǗdNH[X}t$8S*".տ2,H/RζT,ἅ# (Fip{)ˆ%09wY B82C;"To^E}+Rss8m o+V?/~& 3.fLßk&Wr6-K(\ Mv( tx=a!5 Ʒ=}Br&jsթk'jRIbS#DȱSH޽I2(!_DpN_ cT#DnԨMez,d$UZv˪% ?7n[AF"Q$ފ.h j--dס(<2 LnW>MAIĸ+ -d?1;KW2ޑzK*(Su46̮Ʋbܹ{&1?NķxƒNz:tګN4qhΐVltGPEXY#|>evzl9t4AVP)}0 m nFݡV{X w{'nӀ|d‹-픉<oSǚ6oVЌ/C=p)-\D,Z"_$|O6f[7o*3i/䍟8ł Wa!X3&K,0 JĎذ;)j4JFYtC+ʇ}1%X˝m`+.wxT o7 6a2#X?Ҏj/&wpYΈ6^u䍚477/FD 9E@S7._`!?TB߄u@RDFSSܳUiKo\n;_+n!nYx.\?''y;ӻϧ 5Ra+yF tgȳ&ovk^㳳^%*[fB4TBN=:[hM 3[j$:}j$ATTI;f(0vvm/4E2כlq8#W\T!cAP ˇO ,[V2I7^2 |3fYĪ)Qq^sm+`q$0_^eB}BYoo/jkIwL6*{A@qV⦇z,Յ R # d&+8@LB\_Bn(VT>},!/w!ٍB`m5 G,pU~̹*:p54vʬ2;3ZU]׵oj1~.HwdUh]P6XJ\lWISzdV& >UvF:<1'!#߿jJg7&7p SDn}xN4msq.%6/6 Mӏs%OQ}N/Nqd+^C6YAM<ϨrgQKyv/*5U5R7g$(J~+>u Puo[Soijh 'kw:uS L8Qq0{:t|R0Uj)n}~`~EOg8#]g Մ@n clvulq*q,бp+k8igy.Amm'ڄ4 xJҘ _j(A]z[ r+@R4Lz,ݹt6Fg觯ytЮ6GHH0CQ9W/uЀ G N M7 La);~kdh٤s"@p|}o"v-X 7Xs19D]965ư3z6CIo-hxN5FK&)km~uo->jB+nEZW. C?<ޘQi%_{'EDyS]iZ 9|t胉QosAJGx Q %*ra4"zA e6;]yDK?w{6>N~_Z5hs> L2l;ˬP"VZm9j 48R{QxHx&R pdPQm\hb[3d: 񃇢^+EGS7.ɏ8ƫ-wQEdEr<,]/8*K]M(e}W0Fݟ[FO#a ]v番k`g{kFϳ>7^;,1yV,njo@U)KbKNSƄy,3=#,:__nWkTB*)\VEX[\c{d7I^3ё gX.ǯb?ۯn(a b9 %f9Ecrh>LJ{ HP^hЀ͕#_sԒjH#Pq=r40Hɾ)aY,aH1y 9񄞭ߒ Sݘo㵦m{Vf;_k;ƾe@yo;,*iXIJ"Z[ʆ x1G (`[yFDKe PD7]k+v h;O)qspNg_f~BU2Pc7/9u!c Q 3:S=a Pu|6tl,+>Gnl ODtچ=eaϿǍ%K5;HN.W8[r[~RJlCFg%TYrzIIW:^=) 1*ܰg/CR'IHp:eE >θT "s 'Y_đУis92~ʌöZc" t?4=',-֠Ơlpu!fWT\%/o;""u( q jT`͟R ,f,+*,5T[x ~A2iRzF0q7/(wqNA-:ǪMw kx~;ӏ]D7 d蠾"%CjӇ 9N Zi¹v{TSyHwk6jw`mEp]2F!t8D~z4[`_!DTGEʢvEe9aה2ҍb󄆠1 .o{!ŊR/.cvXj.c{4Lr,H%<1=3]``qXKb/ &lOiN*=U_Ze禄lԩ9`V 3ax^oh}Ɍ9Q<nG+pZMMO5Ö^>ܗS^F+NBǗ!qy7,N.e i PZ:CV\[R3fdXjtw>tluj&ldIW50SQi+6? 9An$7nL~8y͒ "ox9 [5>*8ʾv%4lJ̷jY>&r=LѴC($kLTmoy[ 4xU*C&o5urmz{ޒ /;(r>^\)*>jL¯v:ۦ(xzp8b u?X[ beDA|L;# R&¿Å]0_Kunt^IDcf .Չ*V3_^h rjG.!q JΊ9^ٗ2e GE8R(Y#&V;4 փޥvꟿ1?[&@}"u-i庅Jݨ z;BVbYh2lWڤQB€,jϷi2gU8=e t+x5:`' ͹i) :#[2q"1KV lQ ~Twvc=J2ya OuRI"Z/ˁ"*% mcu4U[lx  <&KXRWYAl6:qݸcưҌ̦mU^Fc2Jb%gq"L!yD섾(f#+'^rQ^_cST́ ?GbO"C[5WS*,kZd v;7բ1Qɰ10ƺ[,P;A5vFxVC ;P| e`X$FOλ63nC yʓ'DHW[Ua B 80v%bxy. PILQTrRQRe obz({LZjF=4miOt5%NХLK{&n UmRVXfVv*<$#+o~%LzHym&ia*v|^e[ W3v;Fd /ҥXPs cXvbtP;!5aѠdr !؜ ,j;?@IUDM5 g)}w4e-W".l*X w1fVzǷY>&58n 3xhRAMmbZcdMv0e_:"DRKN~+dD9~#w zt;iyV`NbImmf]Pرy%_l@RbX_Mo7xp9F},t=E9 N}]x GBVk7T I}m%F|"i&h5a_1evOHU!(x2d4A[=,1ڋHfj'% 92 {0J7Wh|2EYVXty?Aj1*sʛ֔t|-2UI8 N4J h+}upye$YbK}tgzjX0jC} )(0~D.&;OeT0-cyض94s1>[#VjWLK -]&. U=&8Q!&K5E\QE|zQӯguf'ʜ?{e9Ha},ȬB䩵\ Ҳ (4=YlTg>tW %Co4E>s Gw$+rL~wm Ք!6dEvxjȃp,*I2d |$ji\_04&?»9sc߽jIy&PQ%ėIOO__Re%\{d+ܞcC3}FTdbsyW{I>FvC F* |C:!@sS#xxÔn#xH1{"c&? SѬ[?2-,> &"[ X`$W_; -⟑XG]0g\QaοɀA1#JbICzܯW+k wUK1UB|\$1թ?~>,jZ>!"Z4amxbQcW"+0u\1Ut!8^΄R3˘Y bm7 [0Ht,0{eR4c VF(CH( 7,לvmD[aY2 KW^K/ "Us{* `YP+>ԣ|֙*لOՇmbVk/OGʭyqJ{SHt}C?pRdG(LJav"gfߏ/*k6Eqf,I9.Nllfiu¢"N)@ BLl~ _s"TjV+v }p(iɫX,&s%g*@G6%uv) xg~״5[f3 ax==f U#r[mRu7@s5`\ BUH G1Sw˕v&u2UNX sJE35mv +Ê F K%xņ6B3nMq!{h88r莤yC&`(_aZjes-v\|$̪wm]Q̿)l_Jfl3|2J ٛt-@:CF5+GZҾqAB/ aNH?A3ydGUJu+mXT]9["E :Ęgf6MH 8\FD(2ܴ:՝~d]Bװ^=gs 9PUÞiU%[ae B+VtwjY[8NǂAݞ2/P8j7f[n@jUI90zE{h=wͽząuW?5Da)A O0G?8͍UZ&QzY֐Y'F ;ܾJ5}DzV%)qӞ}o| >`$$ \cMvcG;FU6ÉOė偑LZ?mU2%y,.%o}4`{+U/%^%yJ#פb3e9pGo?r> 44:.ߴ=3y=cx@nH"Y.q%ԹF*P?>omSء {9wHSLQB Tm8K4"@ht{03&W:yB9*k!`*Ox|i+ј$v^Jo!q LM g<-y n @T槗QBL'gbՕGTw ˯ |5 Sl<l xp\fxsOB tR 3QxJ8\N k YNs!hoSItX gEՌ@/Xg7u#fhq .#[凣pg('}*"_L 3U@{~q' u Mlap1=6o*\1$;_8k`E|X,*ь-蝪FqOGgm ާ ʕOzwWN$pݠ \qN|]d0RO_"GZz2A[Yw,pU܃$KVG^WU2r`@K 3Jv*[7ȿjuk0zMr$E3)98xH1||iR O(\Or8kVE` <9biAF5No(~ǼԄJ~9 k_;'j1ƅ|ܑzdߡg }JNP&I8JV`Ï ʅ 7В)S\UF=w}{=nI*qaq9Ccj}6Rg0'&D1ߍ$ݒݾˬ0ЏA7o~1`A @x*;=JMgIT;I>R}ԋ,KlcB0 IDw#Vܘlw+Q~v6]͆CJK`}tJ\.8JNX &:u)N"NݱԆNTUҦP#TlQ@рa'uέTSh+X`Q ۥ 5ӯ%1Jg3zl;u+rl23ANSZJ ]x M_v] [>]m}A^xQ3Եɡ(BN %d >L44%$?GzYZgɿ>CKm^E<ܫ6+uCX+Rd[SF_`FX RoFOAc̲Xx(^n`0q˧b@rS *l) =ʅ 7}H$/j>L}) IGcˤdɒ>',3˱S$g"c/) un)J8p ;/D5. =gV|C\ VCЏ/Pj1= u$xg?ȹ%JW'6{…Hg=`ŦR22wߜ#bD)Ûv0Ә.^^T$8b<o4+kF94_FƲŸ~v(~f] @=`׫{p;rajR6p2BjMsQT*yD<ض!6Aױɫ+3u=yjѶh og3=0G#O(zi4Z۬eY^b"Dce?lۨ{OW@—^o1ܾ.#\ѫX'3 2ıbE(:oPu BB򦫦>e?'̖h8zR-Cl7.# -Я %ES a &_7˦F߰#\!*~EԬؿL;˻=%Z#wFדRb9E&.N0|:gPg^L^ ɻ͉GcDL!{읗n*+1 J/nkyGim|m+1_,#'O,- &pʎj!f]I34 'DUT}[T>_C(k=̿B+>:aڼA4Yxs;`?`ѲټF!tb=Ci>YD̝n'&PDevMo5,fvȒl}4Qd ބOm#5^lsܿ) [I]vejN64 m&h`vH+,gGknëOEl.o]z)@d0 _a;A%)SFqMn7u+whB$؁cqVUޚ= $%.  +H1%fR"xȷ9yN#*p,2 YYdz+POYL4*=iYPHUߵܡS@"@O͉C@N5~eۉZPړ-7y"`ա(dwq%$E?H?\8]Jo Rg=e6f!T7i8 <8?C|Rn^!2E}W+Ej#ÂkNuZn6noNuo g<}(} c#[,d#41&-*+i އh 'ʸ^"O,<;mSJSiO$5CO7`;h,5E~,d @(ޜ,+CAUVh` |V<@0AYpĹ)@9Ò\\՝ n/Awj\B!_V}o#Ɨtg+ktB*B|)aޕxNMnvt/h[lc*˵?"0⃊laſJt6?BK:+n11*R6TQdӀ 2!K<V |N8|F!/w]|EFx+C]6! D kYW^aḦn9!Z۟A z,q4ڜ Ѻ;J~E{dPYW6W!J O.]ݢSE&/V\S2@G7}U pYc~=+<ϣ<ENpϛpYQ_5Mk@Vn c cKR Y}'%>iq+3,S2pU9V|WBCXy%Vo]UJgiqE>.b`ަTvؾM3qŹWs1 v;Pyy`}A8 Wz Z)M" I?S[ԊϢ9f7Ly\%g 4ul{$x)K&8zXj(Fe|}Ƽ4kJ !5Wd0{tmMdgA CYL#uɍiK:?ՋE_tcJ\z~ۤeK|9@_ [6Cxʌm&#kPHf;>(~6ͲNNt)Pp3oɪq/w` AtXHmIvf3)_@fnKJAyT.`Y2āe2{4M W rP+<ea׮rߦ"؏O^ӚW76{nηUv\/w'6ј7Z]F\:ʢ'TF]դHx"xN)H` o&{zY8;.gLWwiS@zK[)Ol/7ƑOޢCa#«?"X&^r#6\S111 <>|"h7۸eND{{8\돿`f˖1.XмcTR=qbt9S6)jOVXu!*PooPqCUf /8gI kVs3sfr*价uMHuͣKjńsЃAC=p'_-?edğ߭g]!~%b !WJL~7!2cVEMA-s$*Q  2 f s"ptg)^mz?%B8lM\0H) X]-\ ٦@$Ø *s |XWfq4'$IJjl8VۑFukYGn%FfΡUlI>g:' ZCD#WLhFPC]^"|Y">qqn3fKP֪SlִJxQd#"=BKg -\&WT&tADIBQ餷]Q~Ljl 0xOXMt&vçtQ0(9`v(X ޓNvXHC;G=0~!{溒}1pv4_z1eYT%Dai?BU,4>|!%趾.|auZ,BHE'foM8%rJ%5|HP +\!t3}Sx71_ Oϳ jnD28Rad(Gք?ۈ9b*oFyşyۿS9;FKv/~ {*Hŕ-/X \auH+t~;~ n !WRɝ/0p(l+˫=:*:ҟ/@߂gG.!̢R*zw>+6N? wJ`a|"l۷8nSz;,:_˹" 8WtgyU_J{RF2*h<=1"`(X25|ku]N냶pJ80eàS;-W2 w79@s::-+h4G\fչ[:]7f0v2,yv5~P5W~ ;%wmU 3E ;<~|Bh ,&x` _wzYL3J,s`hD 9X%X`SUY'ZւﹶzV%ּFPShБZ `ŠY]1 0bY7{ !G2ةjd]P'(ܘbv-QW]*k%WHwMqv,c>H)D:[p? ϗݫ1N¼\zoTc Nn*bPޙUwr»t]t6s]3R8 \Pޒ&7P#!?VA+nq3gމtRaX dmo1M/'&KyjJ/rSj|]D52Z4% _[Nh.i=Oa][gS=Pd~R WȨ\,&(`Vl,QM?Fy,F:fTOM+5&r[? }jc$LJvx'yaOЕUt)U,y }TE0-S~%Lz7̖(6}tqO8[8 sBR)#W,R}{jIcaN󂗰_y7<j>vVd2C$9=* RlH_@3al2S%ьT j!DvX?k~)ڥޠEGU2"ЮY|޶ 1pkZכz"isjÎR-f/HeˊLfo[\3-3ctbYK׹˹;#(C7x~,ׄRy^ލ)Oy5% A@3I)Qd{KZickvP=>}y M۾h./ņ=ۨFpC7Pq$!qOcC07mqdk$_eiep`uܹZ3.2GQKcuT[j-;K<Ч3Tb\ܵjRCc%Y>4ތٖ^<  uѾs; )؊1״qDM lJ|9Hb$8~]</=,;̪DEn况Sz"cYMHl瞕o!SJ@m7hoQH}7@AY؇E6 0x&̥|'!lC]qLŤ,Pe~<$P gNLJb GzZ/HgkA+{6JdK/,N}bonNKw{osШGւdRէT̻lwp#Y/T G*t ͫ\ |5!p9ڽ5OwUfBĶbY.y Dj]9/nb zQ{nni'K9iI 0-R.o-DTyO.)Qp]56Siq!>X^A6հ:snn#y!6D3sNn@o3ƉB?˘u l3swNt뒠w".cu]@ҞY)lƴH|Lsc.f4Nz'3!e[QebכX&h6`ߑ[ N;JڱGŕݬzCr8xj-7SD`f#JbI pjhy~HjPx.6KpIxJVrgR~/J&م|i/ ޙ#}FS|Hyh[erFĠK?b=Gm@Of]G{ƨgM{Y?]}"zfq\NS-|&09E4x*nHv,61XO.I_lܐG1kuSXJ*PM'驻oPNR[c$|},`]MfsžV$&x?ꭍ͊4G"Ϥ쯍ٺ Mހ5<\j,7IZ3!+akr1a0k7&XҿY=m vȝ _9T ?9E ܚG2r;_Jo*J{Zc~MZy7~ hW{F.)٢U8f P_l0yn\>蜚b^2#P^gy*Sqb _6@H3;r2d0p~d5R܄X#|(@1`}66rJ1=ߝ8p%,?,}ymgNLt^)~OR8+Pyg:';9dtjG<|X`kR*eKN#jܸ"OrV^\=u𠮤IJCc_ g2\p[~/̀UdgɦP,G,iFvPe/TUGy"})!?^>eNj[ͣǏ}$R{\Q_u2vHzR /"n|'M-5 [z~w }DLEnvH 1jdB, A$CJ6r2_y2}(pwe|IL#Ϩ_Ӷ}4w yNdַ`mlѢgy;Ry<|_z2+M>sؠ4=Hzm  Ă͏wBՋ뫛X&5WI*S,)%X)#\_)#ߍQ%as >OcDMs3'7sE$vyc?P"%CWNbl| 8.&FZݛt 1ˆGu%Uxes\3~+jE$bfx)BR!lPΜr 2k/; M- 9uoRˮ& Xbi8a=-}  )zw'Vg+Fn+soc u?J{n&T>^ÁHbjQFxX# HaqGĕ$d)xRhmT @!'-r.̊,']|Vͅx)H7:'5שvz6ߡa[xigo璚abjI0 }Drw3;s>)<~!exn t;qdnjԶR. ΃مelw[۪y N2n.-Z č^+R%.*_N W I4 76lT;L${ȆuQ!T3OzqߘIfRϴM=4ЭN cNv_MglGFrW%Mc+MeDS<4w34޴\pxY ~RMwDi5)R|E&L;>ՑϿ[^0ǓGy,hŒ-Z4V:(8YgR tC"DF>md1]LJW4)c=9L[KҪ3>H轴_%Q[?-tVt|RQbboYb "# dğFəh.^U$l `DŏЭ ^QSTz_nTd27Z|ͽ|kqa O3U1$o6zڅj%ɍb]{ @@Z3{op.8+.Q^19$3V2(fߡB{FxპLkn x)hyI;KAp^ [v4*͵ S^oÉyjQ}ok<^%~>nު`afm1FL>`zgI#|guCm٫@TD6=u,)4Kho’F|FeCE6 ؟ RMߗG.TRGWqy֋+1k%zCs#>*ssIƲ4VDL/RȖwur0f_7)T"^J4Ku mFK+E{C մŬ5 YgI;0PސS1Y&H1>ExWp<^$mU ѡ?HxzP E{$ĢlJ=f͸ 7R{xqdm-Xs)4)PO+ )?ԕ `,&@&uf*J]ypFd>^g˻6e@@-ucaA!/Р%G~*܃b\v:Rh1x|t{h#^5 '_7lHU/;Dx?Q鑶;5T{:'t:0{mZKO(]kgy -l4Ԛ*mm8Xf-Zaz.U/=tq1eH4udSS?IxBY.W}J& O2_P]g2_Y|-I^5pk{ߌG3J`Y[􄸷W/)As {Fi86?y(*}E\9<H@ta\!'LW-`[n}zRHiWl})˘>\ۺӶ4pCI;6P(OM"kXe|:؊D2@mdIUNJ@4(AS{+͇6rH Mib%0 k\CŒztkbm{ '18fZyʢWӁ1/ e_ H@cKg咡u`{Ћ`gcjA"A ]= 2zm Z& bzziҳk64N:I5r~BI(~yPY_?u-ĉG SyIrtPDΈcNm]\_E7i:k~<2ꑊs\zڢ aϑ 'ϋtU.|%,Gv$:D伴/3GPq@@G&S\" EGG&M 65v`8~W/w*)<: |Йr+QbCqLr@n7+%ud< {A(%_b,Ko+Տ]XOepG+FRGa$ 5»0GWByB鄚 .nCC.Zppא6z;_3qW+ma =ËZN}**RB^p֮@8e[q:`h\F%#8tn桽=rH4l\'y#R`F;`ԖVBh0xq/#zS#Y&;ީsݷN8 2k~Fbf@jր p_C@ވޫC-~1%ߖ=Qw3@~YF#7 &K-^ؘ5HR&;rEYK)[z>&wȤ]6v{O oC?"66zQ튲Xx,f2N Cʫi PܡWĀm 69~{/W 0!4Hnl\Feآ~}CM %[r"wѱfGpc2~rr~aw{Gz 1D I)t囖Ďw&]&BCpnQZ}8[5N6K%JqQӹo?0i_'Y qӒr6ѐ#sJCxI4󆿲=IXB yG|ή1.|`-S1B9ЄP FǺ+vȃqz/1cbK)IDU#aIJ=%)7%7Qg “ Ћ_!5!N5Oϴ`u`=o% kd\q|~4*II7Y-2zOK>YLZ 6;,6Dza^Wzn೩e#KD_vl;v5g7^!9D0<5~Ւy>xpE/@^`ijrȡպn9(AL=:wj! J8cOz3na#x ݂>ėxB$捂VL(ZOSmo/Cƽǖ6?(6xԆcR=0Qly\sghm]G>y"<[3^K!g'IDnN@,e7hiݡ!QZk{JYL-h&S1o(,C$jA; ˢoWAE+u%!52_%>2e~"ca%aǤ/9PTᬯoȉk$ǨB):SBZgyEWDuvhrU/Sƌ8 vHEBOJ 6(GKfl[ X} Òs~ϖK8'QbyyYYmsM V}.CHR2&Bf73K02`7Xrŵ[%ݸ/H> Uac-2DhkEF Ne6xRcd;`פ~) G6V+RL䙶NBؚi ݳqhE~MM(un6uafHO/7 R˔(E7̚b!TN. !A5 e,Ov&h§; 쥊?1|?w~b ȫW-\t>AZHLۏOebI^v1V2^l]G} +.~}wc s!ƢA?-RDNe܉~i)Uys/;>`&p '-I#+U)W]t9*+AZt;=@bߐ6)NG%2uY8B/V+l{&aaDޱ X|,&c7 ?>F pTϝ!`Dq#fc3RUQ!MMP% K W~-_ayaDȵZMAy' }ҝZaWP!=R bTU0O10E{:@j1ZJ RBH]~dPr5ӥ%qQXWU9s$G((uR;j?I *Ȥ|x\PF7Y#*bZ=ahMQQTZ)iu4$M[Ĺ?f~^A^rn}`w=j@&U[7\I5ڃ偢]*~ J~Aof2P[+aX_Se~k_]⺿찛ưkrTB;^qЛoF8zKg3C&P" lw/2vi9Emw ?q[(A?V6U56{a M@V:EZ|u#sca R[}V>3#k^u#8XoHWHh4!fhhTOL,6pd;TNW~$Y2/+Xˤ"#,R*]~=H(2CIJlT=d!̍7:^7~36/_@T'ZX= -Y @qAaj{&@tW)edrGK؆7oSxjZ8aTEk(O_j#s0 I'|<.8'rcG3H{A|T3?`f-D7ymYt!5}lRUqe$ChR ˈ]8/4ik`Xjҿ0ߘN@42rGI? 4q2D^`b<?lz,r(y #C"/ 7\^įFj, )>2hj w N`#}i@}%hNVߑsC/8m=C b 03cs)i'yVBfCnݪ) 3b\'&B?:Kkb`;G]F7|WЍ,~0 pdG/h`ig E4NLC+9nǜa_} ^U|l%@/Bc %޷{ǰӑUQС2X zAӲ.Ӓ.*7\ lɞWּ*ŠWl^£h_ G~ u5 KM]ƃ (,JBA&=jyM,r#F)o%W=}x-^ ([B!FR_e'HU_TŴEC+w+9υՍ_KXB6<$Gr*aZ;^X* HvWEgv( ?#WKԖ*X[P:2@'%Q2Eͬs1l?亰g}qYǫ1t.`)#ׄ%6Vs i,-O_FA /- o?KaLt!)jW>T_0:|hf|#.Xq>lpF?ao:FU@ʲRL:9+Dn{a$u̳C=J_sxp Ƙ{R64#ޞFޙr Kn⸇Ì{l_wz 66@2=feSXGHlOjdP L;ElϜNsmNgBa#@0&DH'p=op2jBi4mΘ$hDjn2|+LRzG[oo6MQ+wԮty$l:AѴ[+p'L#6^]q&b >X!v2tQ沤 (nmSǿ^qS .14]جL|+˝7@b낻(V=U> "ΐJB /ʌ i[d/7gAuC$#'|Gn&!. d.kcmJC|) 1(KtuӇ&؉04ng; z Nnig :sV`mw)Hk'UPiU@W2)zz $x׊m]Z44HFzcCx{NPj=VPAA4&yKKĶ(зZhi -.}@#HJ'*Do.yXc͝^ɲT)z+lkew[JwdVVу߈K+ղS`ZB_`}ַz-q$VsȃܫAo"lN,Y41>eP]xSgi5hTa4/3XhU6- 5:c6qv>[>yyY 4j2UgU/1 Y JgbbgWLZJS/┯-tlK㳂kd2&'pecĠQ0TL`>,.4 '4 VZh94 ˄sAYGp"="eZ0wXk+ @6 ;8V[PJϴ`Kr%շK}-a)ад^D+CN"ò8{ٲ'ٍXmɩrO{aGb+uɾM5Kv?yI5,fGx۲˥PKil:iEP4#%/m Y,Z05kEm2ѻRqt(8G&JTi˔\v #.{UYqkc !_ߙыOd_[a'&DÏIXw;|#+ 1ǦMw#7!sjWv~ 3! Ȩڰ(eLg,{# ~/?ʃxX)RcӸޥҠoLg!1Ooc-;tG[櫠k!CՁ@'UƌP%ة=>FقTr0TC`E%ji+5G#iLz}ݏCԄ>aL|uݾE^CLA?r],&2nCvbZ/x֗Tav knфo^O2eEDʅ͌m`\ "%7Jqv ",u7T~Dr5+E{.@VRJm|tO*_z&FWBmGxG+ d-aN孃4EYI/6&`ƤsɹGuO̗\& >$Iqz:.Ce8kbo&{E4ѴT׋+6e/,Bw:Nsqe{!S7F颣\bpDDq TR4VHIbn L#|qHjګoQ #'|Q 9-~U>a]yڢKSĤ`!M) &~Ɓxͪ+;zW8-ͦTCq^SGz=ӌ/@Vf/c@ZIlu@^Zz~{(?&$VWHڛ/Gi7-m$ {ɚ<7r%N X$t<\ DXjP len5PʢtwS1]LOEXp#3Lvws|g]wɽzXF[:tѲN-1'pw礕ހAFZW sEa ZgiWJB6S(o9q22J:CixVzbhoZۑ'uwߣ޲EqӠ4Yu_ ͢@m1;>:GKE0GKO=$EV,;UXXɿZ$-ќ,ĒV%}DȮ|tH78wUK*`$K;dtĭ q+AEnΎB> ,*.X2*> ThcSRZ2`1w?=Tg9-hxw ˏVGN <1u-Wp3gK* 02u̬aB >ࣛz~e,Hp}#1_ v2$>WkwEֳ.,jj?7/D3oxg/^G%G@aOcnRd8a;z ^11:ߔc H,#U%iV}G״hFP} rW":0HJEgW{eu"ͥZh3SU,B. S*Zlp5f2#\&)ۊ δ#C~~wD4a }f"\t՛bI;(dh{E4 %L/g'`FU^a!{" S\0r4mJ wD0^术,GmMzݕ/|l3kAY@' \^6ix?\it6OAF }9ۄb3 :׆ @:O"JF0.Ɯ?{ @뢱GLɖޛlmuB:IA RJmHpȓQb\ 4wfB\rhbZ9c* p)1W o/XI[Q|h  A3\WV"DM I h@Žg~TK.\Obw79x ff@2\'>7Cΰl␾Qmh _;((L##f`_2Zb475#]k߹i*5oje,z#lRq_} .ʍ@ՒGg8tK&lŮբ)yOߛuӐzޟsrJH pcPQW=|,B"{mQ8+ГP MHC Yˋ@9Io ]av%pPtpO:`uCC $HzDDW WαcG{?>#Ϛij<0 `5`s/.pmʹXzmXo& ?2xtf`!+}K~O4)R҈T)=βlIOaO=%ŭMYyp CQKn;8ꅿbrAqxWkF8_UOCe`7_OWK`|oh\HJH' hz<ձ_c6n y=(BFLq.?lz73LHn^US,(rA?x2Fr"0{+O3cQuZf5dI 5ڦ(Fx0b z`# w0:N &φ;@1B4-#2TRhĸ xc$lp.rkəSExRkNPƈݮ \~8~wi)e$ "VQ6F"'A5Es)Ms#0C"팊_ykWG-Pb`iSn#9=!:GyhzSUɸ=K$FA~6,>ʫ/ B8GԵaQU 3(R_$† KOK ?*JBoC5K1ݷIt&z̴l )Dą5DEΖJ(ݷ'3s)&U1uvZ~%A(cobߠIV 7@jp3wRuyv/Nֆt%ĺ _(EFu,%~QUm/&2giqoxTb`%)2FQ|v+6[ 4f,!\4!H0O[ N|mJS+.r$K \%E+"Oy-J/dziJ$%s]b2k,VH66így}j-vHZ()!VtCx v}O[1@"fH玴 "8@6'h<Ւ#+p4WE0@]amDZcwKUZqg"-፦} @B MRS]{e6ao@ꊹ$cN|!Dhdlmz_V#Z,6쯯ͤr/&Ye~=WPyO')2s .z8ON(;CBaK9<,ͫ2^(B83!&o:7* %~9?x>|Sꋽ5x!{ܲ$00L9/^ k֔w}qu?YW >[lh2 NIr|5fii&Gɡ%Jŭ? MoT{eeb V-@XO U\&$v:]Ǖ@Yk. <pwSDs/=:fל&faWphF vd%ZgkdhE%XˤȕxN-0Ӣݸmuي;{N7H v$׼("HCޛkvtpתQ,WP{]+KJC ݹd,Q4ܻfzsU L7;+WGC 呿 z&e=U5|?c~vek4E>[yj}]ۡjܭgdeX=)3u[j˲ӎC̫PjHӺFj7[2&cx'uN 8Ij XOwW!'v~}-Ŝba^'<|zP]4cО-v}Dlg{֐Pu_s8ܲϿFyb{\WlpFXmWƤVRIc Y("v!fb&3⏑1Y>fS!0ܐF9A:KM,9. xaa `U`xϏUT-Ƀ)G2?u7jiDգf9 It uX,^wx;fjuAͯ`fotC̓T +nYdؑDֵμ՟#4ϕypf\Uz5Ҋ*pU*~~JCel 0Щ`~4Ts]_~d-a,k)5Pru>8oe7+P}Z|QIU|=Ɍ zN bz*8G2wv?>J;RLA!$;~_@uzѭ։=N X]B@;mޱh.8ybSw|cKJ\З]ƕ+͕=Yځ2'L6>\.ê4v%7huw4NN;smb&1UXm߄b_>?7_=qdgxVBa -;39_Nxխ@-xMR%c@)9$ZrܓUoȣKyE 2_k-7}36ʏ0 ?صrK#ޫC#쏰o^-":b?Z$)؋ئ 8=U2Rt3Q=)X.#ݭ~T8w: Z=Y+ζRXHʻG`e!7UzNΙcGNed2"w\X4GaU{3L4j,oAp@ &2;5J6d$KȜ6Ϥ^ @abcޛwGS8y2Kf ͞Iڮ5{h&E"'uL%mV5{]B]YTò bcdFή vmMܮPɢK=:PsrPg0- ? hhql-`۽}PUtռ ԇ y2Y?NbzLj]\w_3x|Ag2 $#pFN 4f@$MgJFiuHD((J62v,ZdK[! Ї*>29D*wO0#(…N,\&4PfY؟>F( >*ڝZ>/J+!tL^&iOO>v-.*5MF#daqubym‘\Z94d+n˃zmMTtM"ٍ1"p7ĭ[Oi/ޑc22S.RCyO3tBY|9-iRJGBZJBiY&iwl!X2-h 2iηa`zȖ-+yJyPH#w;gهE?)x?!=foިUޖ cg,D|Nz*yq{K52AU*[" ypp[f-ZS'8 QiG=ofhbK#BE!XX5xxhQ欒ma1O*պ:&`ޛײEό(jF:4b0ZnݚQ1gSwNm;aI.wcpW0>]1gn:Trv.b]*PdFB٪f:X 5,Z9P.ceO^a˳`$&z!ڕL 8҃j}AKm hw3<+˦T\aA1Gi@iCgs,42Dj)th !w"׵_<6SAgCW 1T\9,ޟ9fjysƅވK]:G^qL>X^CE2ͤ$!/kV㍆Uc  NOMJ]e(.qQjß d_iwQML(SQd&"sL?qo-'(^v4Mff@Bg=3zza}B %jUx}4n^J/'sP/z,1 z_adaT!}ՠ;s3,T (J= 샀 Ez yļ-{ z,oQr_{S|9hSi/$&zfB&%K&/J6ۮIw]n @?2?0mhyBx$78(Y8 ORbbN!q=oM>GBt> YʀP:Jʪ^ omOMא*̽v;kdS̥9$NJu0pSڰ$u=Ɍ2ܥ9їSg\ tzuZMkzXD㿅f72No~ f硏 ^c'oE?85aV\8 Oy.̓6 d[r'Hat >͚4Iߑ=J _6S ռ;;Ш\8rx0-xcL^kO wa2 w0,Ms+[eB#8^~)!d| ʾ e=[&A~5geZ؏5t@ۜ [a6\%@8˴ٷ  :`̕R;_zW-'|nv?;׌ӹ";|N1~MʻwIZX4Ʀ*;f1pdfLV?%p|On1dSPsKBV%ҷVWs\[X<`{|]AG♜1 Ż Q'=gtFJ|Q6)`Aԍt^ӿ* $yREGÐךw^^iX̼ˁ•}7ĺBm+ i,׃_. DL["IZX ~QֵxnZr If%]Us~i#Pwz<јf΢m<;S۷fП\~rKJp{АN&dhsNScYɉ2X0]fZ" lRe%_!,GWA`2 ^E<}^ 6rҔ8ԇ9W59eq:i~{b%V~jD+]dU~a`Vzt@_{q%Gy!Zt.f8g xEɑd ƫĞx<ӛ|j9L*Lʬ4+SEĐ{h V>6n\u/W{]@i joT"%F,O@`hڌ{vى`-v {Y& 3\KGq+0+&Zg6G)C'#[vM2+GRQAEu *a>]"X&`@,RTy-Ͷ X W%&qzj ֤Q8gUjT}C \τZ{FNgi>VHwgY9XD'y \YO5 zTvrK̩9JCgtTp=:í|wӫ7PsdF#OnMHBA㮛VJ4Cӕ<9@=s ,v܆G]D 8L Q>+R@7CVǐFc?chdcx*Wϔ}Ϋv'z%բ`͒T4{58ɵp0 <5/IRx橉"FYF@~-P,0zxBlB:?|*GAqswO㎶RMM5`=)&`kog7}& gذKП%E;u#Xrvg\g>52I0$LmY'6ݎRdfL(.'ۘ `ڟ!&l$)<243Y!KW'a4{e:Q/чʭ  є'Ͷz;2-yb{(Bm΢ޔ ( ye(Bw`6MSxZQOv-R6Evyר%&^󋽈Fedǎ(neι.T;PB~Y7#jY@>` /7еʔVw \7 xX)oCC澋%Dʶ bijgSAw48LZHnx?lN6W9os"K/DEgy :JD QZ)73JǻOVTm576i *^毃2#),#߭HDx'z%0}3j<9JHUo uy &\5~ؼidj~*BN(R*YlHxz):զ9F4L͠Z'5T-g?l\ c.[])3H}(Cu=LD<0殃WL&wI1Q6͕=I5S.ǔ*g|w !049oz19;Y%&R_t3AT޵bWKs3Uj<>!ةQ) W)5beU[dI^fZF him ą\7 4BD,ZEnPUM,@<]F iRI_EtYGU5O"b *._~YCnNM]x-CHb4`8Q>! V'WE(ӧXE}Xڐ-;:,:LONV_}Zu𮑁` ^ SaYBI%G utq#TXloSsԓ/,42F+8ξcGҐ3( &n !G$S\2ûp~1dqNJ gԃjy͗}䅯m:},m0m+6s7vkLR4wM/+RFNJIC^<3+g8V@cs"d)sd32a\ARdz6GkY"KE1;[ ?ɢ"Ca` yTcvMm"vV<vRChֻ|kݪɒoj mXuVWRN3S" :z:<` .=ҭ tsE獟 1>tQ7=.A )|4+ESN̒ qo"n ђ[6- VqfEQ];uۉ}f6 %?EOR1`S[@r5f A eڡcݡ$C o(:N: Bjee!U)L!TU3j_O\gRy㷘Eb?e=ÀGXXLk}ٛ2Hz4U`FvL~u=:c' We4QUҿjcO+ fZwuCE{LʘE', SYHVz$gvSe}WNZ]Ƴ#=[uyMbZ4k/RPyE-4 =|`E˺TtCM@皧' GgIs bo? pٓ{׶&-@%(;8qȲpx<وӬ<¯o$s=7.&=)36BzJjJ)CvV!mC$OBlao7¦kbElo=JiwdbzoTO13ޑ9oBII1-حRRҙ"DfToetf` _`B-[ 8T=͹V gfGr@%T{͇zR9F&9"݃/-y]tپ͇1+RE x'@>j@@/{6տhJəerP!>HZ64dY.XC?$8< 1.]/zŊ%T/l;47Tzv4fWQd_}VRl&N W> Jxtt-<2R̨,0#@1hR79˵#*{>4F?o;M9Y5W$֗SIiF2Jfֻm5C&y2oOFӬGG| N`#6$X2l2e35-O \i(. A-֭҆?~涥ZWu5_ %H6N}]&Dl7~YV^:,ߠbow@=dBVU.荟*8“8ʆvcu|ءރ<}L2Z655&(Rkd$?K`Q&$ cjH&/uy6m_\0]?c6^frp7Z}oۼQ(+n6iSl.peE}*i>}c_2d|7RtW@R}}`2QApo! DQ`K \_(У*R&O"|nU$ Dr:JoKƩAڮ@f{3 a"AX'*2~j(T)÷Np+`KnqjD |qNQZ咟i5b7yeM˗p~ M cXK:~?Fk” 3\ 2pI4/ M_ [9~+/US=P_@9OW4eV_/]YSMDZ؍t;lA>ȸvsؚk'Pi%8n&}j-cy-776PL!k3J0\OΣЛV# }!AHPƣ2ZTO!4i¹&7l|4~u+Hgn|`8ӊyy'ΨS3lP1j#qXA/qs!b )ȊPw^G@QZ&{6VX/b+V}M횉 n@([{D$zo@"mzyfhǩ}"ghzfd1pmxڣVMR!Ifyé~3NƗdY_S[Z?^ WGE_@iGE1d]W7L=sGH͎kuOr`8V)Mc#CWPze4d7 f(ҍ2 2ފB_djQ/N @ 1B.^-*6A2d.pP(n1JӅ1jٲ$(0aoSVVa\$qĆEP?`nJ4تv^:  ~ J-:? 3)B-)6sAHD1"s W&ѭSKQ =tw):-2-OD8OzuV,\QF(s9I1P1H(:z" -03֜q'[ie2ٗ^m+O)xDe/Nl,$70O^0 х*>3-C-3{'Zn#O1aQ'ힰjRq&}(H'"6| w눮yeH9Z fS0=vf.* Lwߦ6m)L:`0<ͯ| (lќ7&kY)W! o? pY29 g?w i[NS &;mjzK6<^^LW(TUD^|t!L}NNʫI@ t" k#RM٣n9蘣SLG8 B+X%5qO5?YpU"{/M ij !?\Lգ訃!waHGFcEZ݉5/|j)w}nk~- ;iό: e3]-'F΁k Pb󑠾ha"RY--G ׉=^/g'bK6fLdZZ`#L7L]=dO".k\MFJKqg> q,;b,X!}q\iYԄ u= pSoJ!w߸ IlG(-cp xONJ}7P]`0vh:l&k8#۳~r^d e p/yk}-&YlEm^y+15*~ @?j3PfcRhD7n٘o#V-sy{i@~?<4lK݉kyQMHVMęsp MYJrOO F{Gg#3m(w;ݹ@sId[?G韫m;΁N<5Py{A!-#>?VTF bmg`[> o'2*QX{4+TL:BsLqq,[Fae|\ľԯLP:?Ompl'JwOMXC|G/ hFasƇ(0Eu۬Z!YK4} =a%^/IDnsKmQ'CAf UЋA$Ly&fgIF_H(zk 9\or{_}m!/ka7>x}]r ,;p~Oډ98r{zbauSd0_* p&*VϥC%1?i.4OSF*/}$$΀:X06EԂ0ֆzNE{S7 `As&d<1PiK,TGz걍EqI7MH`zzE63u=gّIe6l3[#/O G"nyoVB@DDnȸLvp#l\5,EH PF]*x- o فE3hZJi%/yq'/~" „2 ih{"ҨX 5ъ &\Fj'6z8Z7g*g:F@t8,t/)7qB _l.DWQeRTs/#؋BwnSsY0;!PrCSވ^'DGbeN12){'նJg#Nl0^ 9wƓȣ|* %^>NEWںX#mD70S,>//pBi~g:C6S>$D?\"b+_[Lamuio&&.S E1l g'颉{=AطwAC (k8VRz0Y+Պˌ?H4Z z*L/J̠D2(h;*54qtFyP𿍎F~j~IC :ؕ.K94/EX/XT?3sw=L>;q9i]3t{Ec_:$"T@DPYu*ף 8D_' EuCƌ31z跁G1STx !|7Rݽn32M`(ʠ|hxjû} R[:eH eQ7HV8Dx+`4":g E i7r~t5+TK&ƶZXp!!臬VL+nr#KHOX6iFx2>lw?vh-RuhDeS }`>^ \dX)*9|(߀j+'Yot [Q`0£]02q).?2HnL0vgt]ld:(MH|ߐ !,wpx$T.Iw}#VQ-f&|B[fuAh@^?^Q Uh䖿k%Ev;waS(^vk8:"f5Tm e {/9`*eDBsՀ/h){YZ⅒G A"Z0PFMJ, y"uk%~,ۚqaX\$g5)xSa!@XϤ;K5 Ƴ">VF9n#ueX)Lg}F/qLO{fsd)`" c["'r 8s6T+# ]jQ 6Y_BJb~wG va~p 5@;վlPf1Ć}8΋JJ7 AHƲۮ.²|mk8n_"2]չ IMj }ä`yưgߔ~? h=XE0mk./*l;#1揜V͓;t{u yzHySPW~-M(_B9ǐ3*`+MjPrnJb%m{!Ȕyyg`'%3DiX|rQ{s+|pE 䫟f #0gѤr1mw%SJXnFH&ABcV1uMSrno(.LX%0`|/CZ؜t i/gt{R-PPaۢ 6VQsb?y(qb0*~c z~vrbasa0էly3ݙ 2&IrOK4x='`98RH#5Othv=xZvDzz+Պ<( mɤ?=.p}wIM։CPƓ|* |f6GnHn_$/~nE3]"hWOdPA~'#hՁIl?sځVl`QH%LKq@Oܓ}& 1ݠ!7ȲFޏ Eh+1̹8=0x_;hipj; ~^Ap=gѐnI?D:h׳z9w*ڄ=,ȝ2h?˿`Ȁ3$tt4$ ˥h";|sqj;7{t;/)zf(IIxÀ.[e"t?OAAGƒ5ԳaS^N{c<̺$Cb33.=6,[ɄA=Z \ca4^4aaW$VfTG|x"#l.xL*'ф,sc!=[T' `Ab[aI72H@/ G $ -0scOCJUMG܇cw=R z)#-Eqq.a-{müUJ{>ʭ eGT-]2!xXNnWfWV|71Xcmїk5v܉tA!N67Ͼp,Qyωj20Vcza=az+iJPj]nJg,koi71f̴O.PXa=9ҹSe;DFƋl-@υYS*kî8Q/L?_͇xT[6D5_GG9Le()fBާFy#$x:YYef*Pӓ|paf9$[]WMs;6S8:)أ EPg9 ˳{s\aaqLłkU=q ndk\ٲ%i6ϹXbVZ[;ҀV|fB'XZ5=ktwAbc\/LLgzg=yV/u=! Zp"VR%( k8o?'x?^",͇2!1&I59vTm\* [5Eua4ia Hbc]<6Iwbٚ\v g7-U''}zyBmZ[WW=! du3yݸ:/a˰@˚b"g ָ"H0P,1'O"yi X"LƑp0r ŒЊ~r@.fQ&Q(),sԄ"5ԜtVmjP3+%*ԄSi}yGܴ2S}sEm{ԓp[( 2rMlr:Y64"*⧩2+bˆB]6OQw+ʊ H.ia C@OXP5z''\\dY^KK젨&kcN$GЃpnxcX`[lz_Bs4h(3Zљ}Z]=ͥrybMm] qiHLl9揂tTv8` r\amw :ZR.KBcyG.6k6FOQ2 PA7NGʐDI˛k`+{y@֌w.7m~c(ѥB@BR1Rk^r-|뭄i|SJyfr[5 u*e͓wC`ug=zCO},HGO8:MlܐUHPfoIaͬPrxAwPm3V5.`?U%O4ꋀv/,j,䩍 6JN{,6|vN0$cH5J-( $.?7)ciU׼x|~zZ1nL$&Qg?xnNQ=i0U5EJ|%@Cl^1A#d}IdzZˌpfs2aLo/FÛr4*:;ed KEB$Iu~wr>?GxW>K?9(0rvE˘wJL2v'Wq1t0ߪ&c:riMDmd(VE*WT$N,$Ô8ܶp5-Vqgu6b{yWvώ"ʺ3<ٶc^%6rCGθltUcop188wF,g˄ұ B殛䗃H>$̚ ,995[(ni-P_G*ցjvgw*qu[F- ,SgIn/Qt5'0Ej٫%vuB`|&7-07N)x c?%dHRZhsap}YB0ڶJ:a soŵoS: ;P"4-Tx(pu;PWx Rk  PskzLR^@`W~/$tԐ\ֹJ9j-O]@LtfSDc~y`PZG⋮\=lM4gqA/`$ark63LN'}6v&8续@7r8 CnR "xu"ړ)]ed9Z ^[HKeUYn 4=1c`%փIEW7I! b{9赋]yA:H=VBL}&L7jQtaKfl@ο9ś̓cIY_yՋ!sjs-DOE֩59f3$ ](3ms>҆fLWWsDN"9&j,a-H4+tPTg2QFrem0tG?#ţ^r^[3Ƭ[ K0F5r2Au{ >(UIHczo =-Eш8 5xM z%w'0/n#Ğ[g$iS0m(.Ca",N$؝0"+RU>Q>j]xZ~WS%u0/7[E2?ѴA0/ϛc-/l_8Bj~r=KP_N7?.I# ŭ:H ޕgID kM IcNhnw" _'@Q7> Y_JW )a0M"8TU'gg >c69$!' eH96sRcQcҵJoӸ=QhGH$sQW(%/jYofXX _nմs).+( VSY ‰OzYhO@+7K!#UAmY`_#Cv6%z| @nOX?Z1W\ӣĭm|Ivƚ1|[{>O#2@!P1&ybnDB-ˡ)`}(Po?#ym-/(a[e`Y]}+m[o^ٕA t#v"wEHP^DyBI9CЬ>J8{*N#|ǭj`y '5yu 0l:^䅾I1gjCYbrRp9m/.ɣ RФZyaV4LP~2o蠟 v&G/]LΞm#,]Ҵ& "m]`mH"_̧ _hXFUVVq1ef>^K1~ۛD$N (1x!4lfY*9vFf)/{GGlA$5q8ɉ o*CpܫѡN5ATlbQZl.[b;j5͑hma2V7zUӊrWn@FF 3%J;id;Y&O-P.}l],yul9a;Q<DQɭ—帄_;:֮HL8#krQybW3]Ym'vԬ8A c7FqV;B9@z"W _@N_`k%ٷAEHxVO 8xkٚA!Qe{ 77ݶKF3#/ 1W("e~=tFR}P :@J+Zfys b5u01Q7b*3S= `hW:qa r|fkðVQݶ@vDf nuoϯoycAFQ\Hǧ I7 l|Ҩ-8#7Lt#5 wLxX{ ^=cS2m%l˨ءpi,QQ8L)?1?&Xg5/IIgpp0<XN"(1- ƪ.FV= "mxW*Nmw~=K[hi);?OhڍYt;4H,Z\s1tLVΘ)UN+VCK/ܻg.~ATZ>AcsolAm339WzrdZN.;H.6lbEeL n7S r 3_Lp~ViaGU ,fQ 3fWUh@^sXo Xv<XjsM={%tW!&&tZӤV Cs+$C5寛KsnfnDR5m EuDYmx(Jh_pvMO-Orl|P8)m~( F3K{v`D,%ܤkdGl D튾{1K뾆?5ΧIl젥ӛ7@;~xݫ=~fp`XEAצWf7( (tPXݘ^ڜsBQkѧ.]ĔvW5007Q~^2Sg @LHTzX{b~w0,XNZ:z?^zsݵ*UWk\ [e|21^ӑv~_kTE3!n-]rF3]u^)e>FIX-wiBMr7XE?n. % #8cHdD_8 LዉF`3lv{{|`uh:m(D>KaG]8]4FL "jAЙd1b3\W}u(ћ&e~PV(ڇz@fRS 69)SJDޱl&SG5_G|:?9lFPoDY?ш^-Y#-7o~~i \F׵r3\-e7hT85Abz! zzsLoJWa.sLsg뚌i|caLuI3"4!Mg^pl?,YݚGE(uBevߝKj*ޞ@+gt/1aaqoQkI~Ql϶.Ȭ &k>Lrؼ+կTƤAe!%q# T)Wq鎚EE yj?.H^!RHp[=#-yڈ ·^Sn!(% x:G2⮲掴*oS}_>>Yf`+*I3-H×^c H9(+L* (BYbTE{d`} 6Y0F뎨κl:+wEw.xbn&!fr$j0^'*ءc`9fv89K"5.a4Sj A&=޽RzӼyFML&|G$s3j4~! edԐNJTy?s1Hspk'+6}^w"/]<,0^?)Z/a1 Lm C^Ƃ[qɢظ91t 婅47ז{-<31'K]Q4vˀsYF`nxS9t'۹ dA"YWJ˺=gɋӒMB|$9!Q %=#mA[US Σ#[^Խ:#K)H86i+J{y_!#T/)N@Dneˢ 9qGPJ{|[Vsuy6a UR6_A(55x e3">}DFN8*;;:@ӻdvMSK Xğ IuPRSI ·ߨ%uCTlg;܈D6$)NP-ʫ{KCpWi]=A輴QGK67N/%[RI˛/%_)ʷH|JPmej{h< Sj4/7M݆IP5?azUo~&5ewbp+̭LQc! %D|eb`mBt+aw[cH9a;?+Q]7:v_Yw Ήl"we`dj[Br1ipŴQEADnKҌfBFÇeC5@5ѴOd$E ”^=<ʘyUMLXEڀ5J:h=nR3aT-5|rL$sJA y19~,Eݤ?wiGQmm6kɆ <%r \  xOM]/F۱3O% 37kEIvH3q41-bKI:sra ˉBEeޤhH_ޖC`Z/5\\([۳C]Q'Pcb@ԪT3DVB>R(uL'TsSC}:T hH/`z/+OGգZ|t:](n@3igK4ݾFvj(wB"OW+'8J r, V/jMb" taW?1~_hdͫeaq$Sio"x5Ii@H5Yg%DVc,[*>x2/ұ>6icjrZq\5yk3wk@[o-o8 0J Zdb.a$vmЇǙM9]}4Na!cTXT8^̍rULH6JsfJǂ?48w|l [pHL`s@Ar#ұJhiAgp伆.6YKIR]Kh][: ^Tk]DZ)=τL|6:QG,2 HhUOrZ]k5mX#7R=Lq^}`m?6*6Yiv!ŵ AC"`DelX*I V2M؂}~j(=I'>Y#a]s'MDa5 lsan rj*U.,W9ӚѪ7GV/g\2[t0T Q:btD_ݻMELYwZX -6 Kb`e%P{}!ݣ$TJGǼ՜s^>RIkHbSHurmH ht\w҂ nGBbaGFyz{29IA 牌\NSQjcΫ[cik E0jomnQ1K c.U+ uJ]V=0g4wjC [Ijѝ|FlM2Zk{'.`&JӻQ _+{@U@D b?EbTTb t` N/VJat𦀚O=@8SVQ˹U =?RMOs~jM8cEzEgC'GAZ5mwu\e9g)w+t\{dD[ ك[+R'L:$|.$:\VD>ngMT@zQq:rp4)];W+lN.=* 0jU;ņ-Ӻo.5tf2š`E]#3,heI)ȕclEC8^ E?D:6v1C[Kx%4M ub $Lwx3c鎃~.Jؼ_2-xH $  طɤL9.P-1"ZGLɸ`i&P'$W'!WSVA/Ȭ99j0D57rn͇uxS[։Vj#ji29ngb%MG>~xk{w[>U[ȲRtgut:A{Tb|vM)vl; o.ٱ=Ϲч`a-|ϸ[TRq.aQ?{MaWg^!}5Ab{YQ\~vwr$/.v'AJ^=5#l'N,3LϞՀ~?r8ܯ*X#=eGqɇQ8[Ů)#D| cIsbەCNչ^ԫbmnzKZr=71*10Ğ)QPқ-kL;v zt)Bg&/4de 'ty XtӼc GP_W${3W= n#]hV䤄߳kIs/>y,$yS˳@J|4سu$ՎjN) rɡ%{FMړM"_&Ӓң5˴z0B!kkye`>5 ,P#VO&bH-)]ƵDN"+V d#hA?ÈB 1f+'MKBgT#6IQMCKHMd oKL7xYˌ|>Crn4ͩʯȑBj\$1E :QSd{ 5¿~A6neYog{AMRk8[zN:,MTT~%%gcO}9h1Qc:RثZ4cj,:Ce,TZGM靿nAjoջCNShu\&8諛Cc>Rތf?P8Pͱxu p+ [ǵ%l.EqQhl@4&+e+\e ]>QE$fO{kB7j?vьuǺwt*[~8Gn ccfL(M.`4?4?je'^_`"x[Yy ]L9oRq/)|Z:, $g|lLݢ,t-W1qU} /' ,-%xJS0UHnEH鸴IW3 pw LKO5̮Tp+_}}s-`DW?g៧L^8Ԛ :jܖPŚ&kXt>亐LGO]JA`%HbѬB0jl e>M|}ak!%+*z5G^]ds4{'}k%F"ໆ[QE<-tʐ=P z6cD53w{=ܱ(eC}.Rj[/BFcd(/znL-(= < R4S@au*Έi֐ \\+e,ZW@LφЛ7g.0V9c;"ԩ"^KHqń%@_zJo1eTA3 K X$).O<ɸAQls@sLgbT ٰOdOnԭ2`-؎]1rɫxutqܣ*w2˷Mx)h˔P+0WMp}уx1VӤ 2J\N 1u$G  lVk&AH;in0CZF Sha:Dn[H֮w~-k,0pݠ,\FɿPϲduBCv #t^Gҡ[I\9)*j$Yڂ]Ya@!K_NI.R22lgJ@? ݬ<(VZV1 SI[w Th?v]H ouY NEqBsjwm݇'M(d[ 73otjzcE޵ 8IC<3 e(4P5/EʓbF\>Tl[WQb#v$[~sIZ޿Y p`\G1A+q >24YLj]iL&&v TBgu_z<}gޞyl-w}_M+6 QᓅxNCY[+ah\Jp8,+\V, kIlJc] e+Lc+s;A{!vg:}f~ZtH(六=I}d3/wIo^_V`ɢ(A;YAL[H(u.x˒t]M;d ]R ybP&y;c<$:r؃iBc*0Hf-\qбNN%j4s"m@Cc^O#q8ttaDu+!$8rEE&!rR=.i|+I4WnqlLWu+W)** ٟՁuKű][IUh0b;7F~R~_eyN6|aoNb4a=_؟r8m$5sZKr߶ X9v 5zvsHX -޶vb W3-TpSW<"_eĭB/A 4҉]e3pq6t ba0Mxeܡ=n\:֮JJԚlV\zѹ$s_x5 G}ZE~ Bo,|F-qpDhTטgܘ_#51Ai h9л7c:9‘K7D4VHOhЉucE)_3 Yvu@S 4B튿G]{ [ㆢ5\wЭxl((3 Y@'a޾ ?&JlV2C' 狙ܦwsfCh~ NŠG2, sZk%|R!*gҭtJ޷q+JH,puXѿgQTbERAjeCl7MU :ha%,q c~eٰne)}ߝ ЭѬ )&DeXg P)|M)kRD+G"皐C!6%K* +Xx-@r,ԏwF?Ùe}Ȣۇkqo t zG᦭fۺܑ1=nTgT(vg#w_=/P71H "Օ,bjw=Ũ9? H4|?U|H`}zJaU*!5NN$Ri"~67{0jP,`Y.xQ8W^}.9N76o]of#<r(S%Ua$THFy&s1&)v2 B9V GХ-NrhR)"ΌoΥay$e-M+;@5)/FWfݑӣMl* hrj;|;kC)^pd4',,w%t6!8 h7q:ن%ou5?)![LW?@f7ƼWzwன.33l"b%;8 q8'z+P0k?EMOxG!z?>4^tw,EPޥ挽VZVڐ /tA$TÊ}JJ^FqɁR-j'6BٌoG HF?:6m)>># _M,(0VoqdIJQʛAjbC? ҭ 읓9p+U 7 GiXMٗ3uG\%?Wx͕%P?-.~! %OVw~'F'{iECi(JCR`=9}K`҅UI씩= WЬ-! Oja7J 7.Uȕ|JI] ׺e)@/ 6);:5Ae p\,x z.z(]`sHW6ܲ 4?}rd v̠ĞE)x}U"Ix'osbb)i]$0 !fӅe֡ͱbɘ3Lג}Ӷ3*]5GrJW7cigJ_Wד#GI Rʴ54N\$ U{PǏ5a أ(ݼD>V5WMm.c4<c~AZ]5(`5"dECpT{m }{xGYfpG8&~1&P˪0^?tRRI~ вL{1?S qWĚ2u\: JEcP>y1l Ob7T]lk-7.xX>1 (TWB#/_LmJFm~H%DiauPa oϚc;UHޱ]o`FB7dUm2Ȋ|!.* f哜|pۘSNp pH zr~n ܐҴy0$TDwyv5vCPY-K?5SMļr&,ܶ-2 20IґkgU D0r}|bx˥~wm\$!KH 9s fB}ng'D_L:_4'g#nλD=P -O7COMOYHH0s5QJ^:̭KVPskgw:}x  cᖍ̡:_|^]]{7g}sKr  )h7@֠ffsPa]}I((n _%h,ɠ j1~ 3ҧkzZDy;)˯:j}_ ;s`!svmH*sZzfb>-#FZ-O2h>=,.AL4-7 0|~+_oπ8֒+q4{^M-9~0mBpf~V(igr&2jLbke^Myڅ +rKBTx{Őitp&زA @NvWa9mys2E(Ls B۶hHA ͱ7W+/|V`m;8{\Y R+w%Htr|} ^ -[po]gJgRTP V1LI˴,.bdmg ሻ,3[xg} 8 W2vB^o $-w {.Zi-?gm$a&>=z. aUٴ=ч ]_\Xpg ۅ TfQAf+gj{N ڼV$ٴ.( wɦ~m܅uߘk-}098w\Aی^ZpR6QcIճ:T(qE^~Q>ԢG)+Vʬ҇NInAjbYNV1c8*kn8_l"OB%lZ6s4\vDm7JJ r CY7q~|N{Y'~l /f(3Pn6faPZn^W.v9 !WY)ӆaBCX i$妃PE"\9͸ U*@iM38"5J5Y.:' Lw ۙ`QA2Hzvo97V|~U>6pI-5_sE3ΰ` ErCNZ]3^ϙ5lZR'_w? (=3ʛab|l!^/G%"H`56-Lv$" 3h nc'?\0ܰ_eVI ?lNmE| ﯨwm(/omZڂ&|Ofl2Z1gZVLIs.ѪPPQDgP2f.uPڙܗ$^9w_rA3>iU˛-9ԑj)vp-Mv/KfαS2? 0IZ!Q^ZM#ՏgO]㳗HLZ\,@ ćɚ!H*z{2 QO}>-uT3%x{ olj`ܔiv W}EROuꞘBwb?3l62Qpjx]Xuii@H2CH˫j9JSl_Xή{牝"MW9~CA{Ǖ%,;! q+MEky]C}+xBbԻ&l}IY/X G?.]-eh,dR"]z:|n3m9/ܔVnH~luUZ#%sG,qjEP";8|ׄSmO$rxCp_ba4?RyMlDPW@??ܚhɭϾٵ| ?O%n qoX B]G ~~>{%߇ $y]dX=kW3.F[t}FK nj^"(')l{!;v %Wm yQİPVQݍA jZHuV,<RkԪ~Zӿ9gBMfa)ѧUI< 9 K`m8Ȁ?_:G ]3配#)l*xL7Tܐ J|RrZDŽ!fs Sq}h碽Or+OݴW|KosTyxwW}pnXz_'l&ЭA/e+1_l"{wװ+d c6lLz󉂲=&a%maLuʬ#ʱ4 -Qa (<.H#ђ|o6# ~T~PRH~H S+2dkx%?My>RdAi&2q&G,1haRjyD+;5Qd){Ja,,kη*+\x[dX1A'bhH~bIҪX6Q.OBФUԾv-l׻א*CK=y(s41>E\A\֟eM)_+GlL_0+?H> -i_zǵb^oP/N`/,La"*;9Vg "Ui @3ʁ#o1KCP}@I8<5\vZ}B>MqQr=Xэӂ6`!nv,8G`lLr[°$p{j^Zi/?s!_#iK.% ߁Cg G7~[rd H7J.Hx}N_Q`ŭC}[ؗ/+u"CZAbЮylCװF|^Ԇlsќׄ]ۮ-:S7@hT쒞΂ x3NJjcUϓY KlZ$=`.Pׇ9?m8M cV#.;{S4Ӡ¨"jjݧKWfXXPI'o&7EW3gs ׊ֻ4zf(bAQA}8hOљ,ޥtEpdkG~|AH*0D&kNBpVicg[HH?k-HX?|O|wiOΡ!:j>*2n'mlgt#.'  [ dw]CD#6v ƥTkZLR&ի?Uqog5 ]=ynonL|ssLJCAƦW@єQc܀-5BNSXϸI2bE4]p怶k)`+@U^miCklb1iHB'aUow7L+|΂pc t+GY5h۬b Z턄vjj=Ƭ`kf= \yVYX v%}Yfxh}(* :Gߢ :7+%NSs.j}rҋY,Ҝ4 H2a. x:U}j$ KϜ,vBzgb;ŏv=D9H˭^;,S8Cig*i wlm$ ? fs%t4r aIonEbi\% ~e<~doX R]8_#Z8>g݊8}Dױl4/6ë͍{*g=M^,sY%~qg1}Yl<@ 8\?G|Ge-iftPntjD^ҺOrs&|o/._x(xzϖ XxxTtڻyҮ 3qҨ5L.Gmۼ+Ҫݩbpf #NEžRQ Pʷ;okǣd{Cm2Geڪpi%[vgrSTĩŤ$NR씶K=]%_5):hy>ǩ39f@9Ip6R^x倠< aa›ܡry>&ź:>WRe:x' n|g$-dž{*DVog-?\r=v ;a3m;,7$FHI<&񌫦j;oxB ԿJXxCIF0JJ!1fwET<jsi`AZmX>Dk4=ЏU(]6 zYf|%3eBNohrKL(9( E[fn+KUyjivI-G5&Tiޱ` XX8n+Ҩd#̲'eff?ϡp$]4E[,)bJJl9Qn{Z 3!uR;en`m@y+mFXMw4Tc燓k-*¨VM5PQ& mwGMʐ;C~Сj06.yhFFhUh3v^ YTAE dTX6Z b It؉k",|;e=׆bUL:\O v稓\!a'!(/^AH}'fa")AoMl g=UGޤ?zfMrT MwX"fra J̙VAka9еN0a.͆ژpWBɬ$5m'xmX3g-qܾjt0iM#'[u[8Ue2K2?^8UeoOXG`lpAZEZyVeJ̱(ߴRU1ۀxY+\e}gt3؎Av,hry1ʢ |c #Zb`a<[K)RJRp0!@dt~4 ѢDya1$PON2ߩPt0YЇ4xp:qtfRl? AIve Iq_*{cD,T> 7p4'|~=d;8E#^PG9svmƠ_{SdM{_?XkuPEWz} 5m/qG~/5&g*0Ʌ]+:B_tX\ KYrkK:4NFDdlgiQzڡFSAlդ[ TlTzBt>fBWi= 8NڀCNC8a ]W,K)ZKwVb']xšb "ۊbS 6b.n_Ϯȿ5vT嬸?R}&l'Dq+&lx]w8rjϘkäQ`F ߮9iյb*G'{j.)!.Gc7z{QJ|K6n:?o d~kJ)vVW[3~bفbw G-EiGv= 1P"FtN1΋={(R}'A4Ȃ6N7=OyjXiB=Dv2jye#8EhdbQ;%Oj_q2/";.LqbZX,0$8߅/[[67t]ղy9s b4rܓ( Kf00 M?қa fn]U4nK[|U}N{x兽.f?qh/wWPG@C(Ur,_B!~)7XKI?o7^azES v,JY KP42!Z88O|G#阫s92bi~ ·wAlCf~ƋRW>G%,ddAQ݋{u&S7~MԹ-PNTUHE zEj3-krC%5!F"% RgpVl"=JYy*+X ybfm6h9髍#i ҩ[B2ھRɠAن}v[Q6G "# 'Qj=?:KG" y8{q_l6L4* ։.+Ζ=ts a% 3Eƨu&$aI/Z)nagZ)veyXBIP'|&vVu6&631́^F\I^}} z=8m}/$tSosD]& cArKH5G zи$f^siQ"0*$ ͈]܍c %rLGW)nks:ٖ;łPɜY;g?4l!|BN)o%$C7<оYI:Ɲw2z]QnQ ͜/<ltukI5qۼҨl`kvS^!&,zw6\Q4 4u#I>͙6ssXĊ .(!y3Ƴ_β!RA#PB̯@U>pxu밽 'q\ф\0yg:@LQ̏]ٰ[ ! *U7z)FZx7sX[6;գz,,ޝm;rR3]0ZGI%+:·klc{! aNJ*XFmu v OBnBe1:cq֫DU8{$͸ uF#Śnd)(]c}R}cܱC˖}AbɦU@tm}*]곞3.3j/l:AFQFC󕅿K M#?3eӓ k#fKfmE5z~q0PtA õU,-ty` 9FF $¸&KΆ%ȹ]뱈vx'oKj8j쯮5K! |-B:Ј )\̛wr{ژv|' ŕWv F.!I*-gk {! W7d(WQ8f ŏݹj/7x4Cu[V^oYDDb6O:YI|Njn$ L+mA|\*sJQJuO=C>@r\* u^0GAwKg5l35c8Lm1Z=y 9OwN$=40R$PևD\Si\6ޱ7B9YE&'?2,+!L',vE ~^hm\U (V0{3NodQ2*{լL4;8f@Jж o*)+d9&76Pj=#&_!;?UNwL>c!kxU a 0Rѥ'ã9왷!߃Μ}y|݊ 4ysF‘"~bh32U8{;פDA]F *kXH3LjzAL=#? r7Z Z$CTHl|O561)ca-߰\E7,.bBЮ^Mq%~?eaӑ g<)ࡓK4 ?R?a] V9,?ҤgG>1*ӂ$񀭔+B\8 x :(wZXp=;.^u 7V-^FjB& ?>ZuQr&B{NK^l43Ӡ^y=`:qc,Hx]Լ@&ۦ߈+8-^:E`T!\as N RkrYyR!+[蔐C`D.ɉBw35dXH 5ޥ2  i&ݑ'C.۫t}&qjx$lj'C5"Bi7A Ew]H})ӬDD{!paϸ ^4oG)JVoDَ*ÉyD.dKmJwo%T[I\E|؎~$ `9p=1[}P>@/=" ǟ'h[-Ԗ8"MLeKNo_]iF/Wgh{f.voBeuTD 화7x)Mks6l!{ѮM1@z.N;:hxխwϦ h19?.;Q˟sb*SӚ\c,:ce:d! ePxk[=1?>0bNd?'MURQjuV3Zj!y"V= 8X b4PĜ8{Ot|!B@3?ƨ`0)WhשCt>Z)pXb&̾('>) IXYO_Xj%+ǜe0~+u7iT||Gwra0ƺ?m )q#beIհsA͗EFvgUM΍`=GVXhraUFdzz3[]\ **USźQ>fPOL&$^D=[xegb;5}* cF6o,l=O~wEV.1dK73z6+?S}sքRNBg}:5~=%dL &W-״˅U)Av  ȆV!ގ Z9-$\<ƮxwJ蓮.蠃ٵ)KeS( : J8ZS—W9;YXspTUD&\ʎ O0l]FyWWhlE* ҭt'yhLG~a$/U \dܾ|P>WTpjjx>卑SVN8 5\ac܃/sKg$v&Jpjq'd-*_ {x*młͨn\겫2+U{-Yv> dM*nS{>73 8ni::tWPI20Ǣyv{Or틁g 7gmiB~US~bTZO(R*GSѱ6Ly5Ew]$$GUqsI;;oSd.ÔfYD/;w51l0Rf姜VϞ-㍁rlzlt"TDn 8CZ #;ulM]:c T$btU|)rwqtfJBiHDd1A ϵDJp4r`"g.`XOދf8±Z{JzZC! O]:?diux(N]9EyR]ݡbDnҘDm0,ű?Nzb$*3z$cH߆@N(Zڶ}(7ּS_hcghǕ!z񣳁bN"8F@MY8[9p~h&2)T OЙpԮjO3ٶ8(u\H4ʱkC9B >%r^H!NZ,sAߞ5L|7fzؖ%SzT!l@)9)%:Cg VC1H x>Rp?.+נ2i*/k57AM7Xy(}Fz"mu㝧3Veuv%iJŰ$0bQ-BczpB `)a`:TC.-9W-ofD3_BV9P,Ax ՜VЮ)?:~7A` ӚW2v %Bj d=+{MG;Sb%1 2qx24c5Z}zY浤P'yQoN:.`jXj;:_nT7Oj6gN&enʔs#`[YKVPm#{p 4ov'f刊IhNɵ¾p ̚)!`")RFUGj-F5v^]oγa߾rF"k(54%Be)8Q/Ve)[YLud``Me p+J ĸqtK :}6 ,d9^xQL`_):gJ5}X(丟61n%A]JB2XYiA(>Q`!~)HwEG4QSoI@҇^(-ɲ}HXQyk:S aPe)U%2Řkinjr;'\ YoD*΂Ѷ Aԣ>"1ZO! g(FKh-֭3UQ1ldڳ %q{OD6p_m#> | ~&s$W~5o~ɓwlRC,B} X'TsK8vnȼ2F[F1]"%&De体Tqeg jF]{򠠁 ta^b]􏻌}:nhO(vޏ2!I^P{)vϹkQQ;8^K5߲fle(.L2gf#Z킒+:"Ŕx#U0'>HXV`<^Yj<B2̡#"8jѓt0̆'QCⓢlxx*H.Ӹju[ pZs\5FM=hŏfd]`"XkW|N3H!90OX+'F} 0*yw3WaOֹC<@M ,{^I]ѽ@0֧jY^'wcju.uDR/hv2EhҠ(EV['5G<ZwMt]?\\^o5o启 ҡDp;+dnG?stLlWAXKV-6m8/FさmƐT*'XlΖ 0G-a pj PSE590<1\ .T)鸇0]zn=_r.YIlRݞ ~i4ś~9"I-UI7h4% Mʾ q%2w-t5K`0RWNU(B+ +b;~iDw7' x Um^:sSl.W?tgQH~3gAT|]$U*씏hb%w?ލBJHj^O~R]J Euyя ӯ=kdT:`kHE f_ FvR^KWeD/ah \/_U"<ϤGv$a"չ%^̒CټE&nIّV(RZ.A3(2O4`@1|B&㠪)euVljCjU,52 i,(uD5hWNó\@l.J߀ ?PMHԊbQM$oMnnb@őDBM\,*( 8@>Fk &<3`O2̦G5B`S9Ev`qJU> jh;#};nD2Km\0nIIHZ-lmH)ט,;m@xYha'#4e=`,k}n=4D ѹU69Q%=M;zdhiWPpkN5 O@[hlQ~]et- wڃV}L BZ_fC Iol֩KM߼N(eji6veF~@|2UWcql)?DOI7<{W#b稸yy^qF^/#Hv>YG4~um&TVFIL$4:B: ~^ !)sp:簓$\jG ׊ʽoS >0}*}ora],>iPEAnZZ,ߪto>Y7F8)}4Rb͠iWcz7Ly۱LJnpR0"'<3wy&nBіෲE\<W*w_ lwyy ·'+f#Ă!KKd;hsV3.#B|@89p=E<~x"-Ʃ'yܧ`RСE!%?8Ih?dsڻVFɂ% S+\P[8^_ްf2HOe4aC~B"n/얻GAc hW{ʉ.#lvxd*Y<&*"BWt7hrI* 3h*_&nƫ~4c$ʩ~ p5bUh (OvX~1jE} 5%VHNHw D+]h; Yl۩UYucA1?:˿,v?gi"ÍktA&I]U  O׀HtxR s2:BzKDB.KSG_AUʵaQcE\  a@;иchxQ>1p/Pvb($( ݗgE?W嶵g勘0E zEa=J%4!'/}1=aB+Lɀg|vxCճZ8[kxMNo:1rIV4%Ԡ/-[H!,)H`8Q?RaTʱݕPMBf ZgK`U~ڣp䊴 cÅ廃"62D|/iɾy~^B"z6֧nP%u!O޻JoMC(:;;yF5S-![KU?,~(ҰYB@=2E3*IhTd~P\ r\>^ϧ"_#&$%o >y^-R '?r1JD:9OL _.*4]5!{!wRFdw)+lDBo^>9<^Qb\ +t<bj @:>l\nOJ;-WTrبy-3v p?̳?Kq a*ț;;"p͏fMv3xPf ']LUYjҟo_Ԏfc4JI͖NU|Wou6I P|`GZ Di4!x@mF|?uC{y:YIkpk1 ?Gvpo\6ʔ#iO1Ίd: OSf]cw@]#`$ = w9gbn(w'|CӼ0ɴK]ZNO+Y묚{y'ڃ6>+n[t~Q-I(5k ]Wp6bz".m};^/Pؖl1㧼0>l~4nG^J.5)hzuT>ysoᄞ:9I8s/QwZjQ֬9?d!V(ܘ L ;2Bj}E'9嬟LŜ$}FıBTF.i?=2AeTΚc2.ATx7><[j"P]"uV;-kcJ~3ٳH b/Y{_smOnk%b8K>172f† $#LܧV kJb^اnÃ;gurte+杆C)XT|CL0>1S|l2Ud13!Йl(SaGAa*NeH5+UX>Ua}t\U2JxI^C ́͗1Z\f0̙ <D -Hi("-S\߳boBʩcAЁ}Bmc 4j>(5)=-*0 z@Ce@P /$&<Ϩ%f F Z=;y =`"?[7Evy`ȇF>WNU[2zX0ugPhM%d^ötly`frb_%|,k`ܝ_-ź8mjC/y"i?GF{:5TvN=,rdK}8H4X(I[`q?QAN,>$|"O/{Gp\]9m-"pz;*4|tl7bE跎Xyy%-H eP6r6)̠ظ_Uㇵ+^&U.uC瓙-}:i&vsޜCKv*xOewŔWHF)@.g8kA1,} عR&Jz6쾣zomq7٣b0)`|VvK*+OTΡ`d]ۡJ"{ e>y<:s8w"x[oH$q#n⣣&Syۗr|U[l;=ݤ 췶7qAڢc8s;JIdwܨamcv H/35; !Ј7̫H: "YiWk2IÅeEX Qc&m(Po4'{3 cL+3Th3єgya_߲? mZ) sB-%ƎjؼA0Gf_Gd | !s,  +[Ab#p6P҅;jQ^|EN׺RBڧhhbe7ՒQ.xy- KFwv `!T6a-9imcf̅}(_u_S_XФǓj `KӳJ^֮QckRz%!DWA! +PNL>#O }5~G"+A.>iCu;ñAnϪt;Y }^oF/5+ZWKl9J#1 f1]<wl/pz}z64ipuդ ?dcGLpQ >ŵPȡ!#w{j;7-#\qD ^%f †10ճq^xͤ n9? QTЏ@f_ԧI߁Bk-E#bi0[AZj~.{lSخo"xS؄܃SSq!%31rHm)l[IE b87q:P 7M_55/X5G M `X86r'/tFih3,C=٧-/)^8o ; Y𵇪͌hV:? };:N>ʙ5j9Ο:2[R_O9htfǵc:W}FPL%41`lf y)1V׆z¹["@}^~n.$۾[KmL(,J"GC:q"rA%؞ǟ݀&W#I=VCT\>QT`gB{ɰK+'rFǓ =\=Ndn{gU$amKߵ"S̯/ i)mVHKIȁ<Α`gz\37HdHrv=ߘnȡ&1c9B:4c*\0S?jЛ B!gg2@~%"t;3AkF>=~P7O vdyBI K^5RBeΰv2fXw##Wꓟ_FÌ:[!*+?nÙ60Wk "~wjV۬yq>yno\q>3p&n5aO06 /7Sq_#dT㧝{n|ZOLQLJ!jA:b]ִN6XJSzr 6-c8i$ybzu (6)}^3ߧ8]fR.aC+B1~|AqK=+ymh2 iQX.# 6µgA'ᑳVnJ؃K6+w c;(zV70m,>a:e/qCxKr-}ߍTrpJ^J-ퟰpI2x*HÙM/oRsNed3Vf~)7%|bRK'`Z+'`|hR]~P0 V^dt',@3Qk~r,ۙcy~Gc FG$c$x%i[HУ,44M F}._Q'_IOn=aUP&pP)i8x#ӯ Iau3+d Q,$➌9A@nNNרhbAJ =] }ם /rbNjh3RGMfZ"ejФG׸d2|av "'^%1ni Ѡ( U3bϼ2Ja@kngI" ;p8Ḧ|cJ[gBC;֙R5h69FV0hz$~dd¢j, ht\`~erzd;̪Vh/-Q| PPfs8bY횞_0+[8REd V̨d@%7 l~]fhaa`3'BS`! U&;+BqaͶkzc? E%.iL[\_ߞWʹ bsh#"VƟV-Sg2u;dVPGqϟjA9-IWa5x3 6^_6r©Tqw'刃p(vKY[<Vrk 4Q-Phӏє={)9 <2R %G'+ ³F)iTr~2ں-/\n` c/No6}W,بqi˿8cum1A5T_Hx=ia;f24AORNfTckAV埙^:9v)s(}^%؟0%8%ݳ9~`{&}ՅL,=g>RQu5ߦ[%Xfpn2j";8vO9.!r:pmًQv .FנIv~uoӀ!"Du[xKhe[0wHzUi5m{{o_~n̎6 ź>yȼnpawD^ӓR5,ٞ6?Dw3sW cECӖ~_28]s)tr.&,cV;{Q5YQ, oq" &A=cK(2HlnF! իs|qOd1.u_uh3`.'ʐ/ӧ EԒ3W+E͆jm+ AxoN|( sT]~c:g VKOqzgP0/*510% "ڢn4c.g:( Xm ?ƒ #R_QaEjd$YID\DK yy>lېy|J, 㢢r28ٜ`{GkhW< b7b@OpbA[\%$.W-_SKra1$ ؃|i-g.4h&%Eֳ8-VP4wpZe3O|)8ΔZR#ݾ-%O"a| y5'9{."ZFWg"#h#:d쓓w|5yjPu [j \ߦ0F8/&q̟;f4m˥LLZ*Mo+VKSi92r^[ӎ,V!oNQMk>s* tl\>{PJW??: 4*F%B全Eu+*$Uup`NXqa(i_KgAF63&VМ#y] ʢ~&~vZ-1 h6eڣil.+4tIޗ.G,.պEfKz,gk= )~#ͫ^C|O?3:OcBxT!Nb6izyŲÑvZ$-t7`c؜[!#UkDRVĔЉ̖&8W>Z" (3z,tt/ճ xfk0|φ#z,mu +B")=sb j621ڊ~bicҼ'NY5^k`o^BM%Z~w 6 dK޽:+gsV: ;n_ք&l27`8JS1m4PMyRC6Oo<\sm![e ~[],)fB_~\AĦT{Oɫc(*:<VLJmEDQ`T1Ip>8<7N&f yY[bp?RH$Ζ8VJN6۾~4 mS1ZP0غY.G{a\"3!Ps 0t-޸@Q l@JKA+ȿ'X)`,/z,pe)k"扳YD2. ]+ Ye<+g:p~rKC GT!n>X}ݠ?HˇVg.@ڟY=/Cc1`- L.&ɊgqˮS1rGR6HzR<e Z$Ƴt~_5g!Y`Yya^Tˆ lF.C{&U_DQhJbEAxѡG'6>x{} c,Sw\^[Hضml;GuvtSVQO]axeXm82`T򆧴BkYQ@\'lka]ZjEZD/x|5;l[^NԒS3<`"aewH0(J29ЌTPϬ+^H;֙iU#b@,){kLJB/O=_\nE/o/<,tB|+3OԐӐGr-9j]E|vF#._\ ~^~-Y4F۠ipr eCZ_KY)iLgu9fg:r#&d8Sr3RD6><Cmm-l.j] k1`-&?9`'D1a-XyTVkp.E)a\* b]Q䐅']a@HPﳠ4,6sp,a)7bѕd.a6Q) l=j/E]Hk4I8K\Ԏ8igJ8#@%_vsWBIy씸2|lSǚXX 01lɧ[YgSwZ!0<$`]#1Qj'wqBb(J9*M(cnz/{ăzz]$%"4]KCGzSrwa\D> Z`1(xѤTD4p0Czahu߭^Pm~@K b>2Ʉmnz|{iОVR`ɧX4Ib,('k;ՐvsNJt[e1RRׄ;H{5*VԡH6TI&qI`~{Ω/@-: K"ʅP!]o/븠`7 )J#oUwqK5|Bx7.;̱pSqg.=0(`^;&be_o?h<e_PJ5U$li$hZj3 Z| h状>&F'bg:2?VN $݋B ߆Lj~LL2"+IF?11QCJ55F02 1Z8c'%#؎}wy5Ό_?z\Ƣ>Sv~|_|}̬"%nuÞ|/&ެ TqۆXjZfEzT j:#%ۇ`YB}/ KMۍymw {,'MIsr~\⽅(O-1ɢW '-;Ug64 @pm !ab2'AJpdc:#axU17K["#x;GXHc Gߣ.-S8(xqr L>l|dkZMdF]|6@iM%" Z`pƖH"F"5Fe b@S eOT/ Iլe9pn bYz0^(}/K{ɞv`Zjin3bCHܫR[qS/i짢b9NrT&LyIKr$.f=`*p 9Hi1&O2 w^,+>h$7ddO`^SXqFieߍ~9|`r4( i8:Gx2 0aQؘMc0 ^KCG MLp.OFP?9z~K34m [N'!AU% у.mDM,.'ӫùELiTUDNX$ Bα_iZ >D5tYFrO!%hP@5u k$P@kyP=-`Ęn%GXH@S\ Gޏ7(bx[TYÞ`:&Z疳?m3~K>ѝ$į{=ĭhQ N6ďQ:,`&̆?/pι>/l^&iawK֛Pmu;?`)glV=1KkװHS4} ; ً]ٻ*7jtEsh} *(a^2:W?X&8SƘX]\HPr"``QÞ0 ԵƍJqKŮ#7wYQsvgG3M]QlDJK`Z!O5o4uI˲͢$,{QMf }+,C|[ 75˥>SQJfPVW yŽ[,+mpCIXX /Q;DQXAw6iG8c4Bko $O w{=,:" `ݣYoKPS3mLV^SҴV~wܜHz1^5v@ϓ]KUӟ(CU?z[Hc?Do"wZ| K TADb$/ ]\5a[^JOÜEkmbwʖrǨ 0bejtb91Pd ^ CJ1\Z^WRrjR<_ @f,KWa\q?P)ccH~L6l_V8KlS<[EtѳX)% #x*tSJX/+jD 9FA5?LAc.r/YiH s6xN;@=~?J2[WթZ B4l)- =q|p /9˹ ŘZ)O'Haђ˦l䰐pDal;d9sNׁV1rƅFo&aրp-B6,[ٯ{(}H!DT"oG9ŦUњw=&F[\ d"gO+'|:%"d-J:Sl3Sɣ/w oI05? _)FDsyqh3KJ'cHvO.zf2@(%r kzd:Z 9,/>& u -aBGU _( rql]j`fY(I%s5| 6TF# xAٹ! uRK0Nv"->>ڡb1Z1a)!n#IPf57jeu!rΌ ZO|=$P\WNr`ТGc/%_ mلOι=^W2oD$&k?Ha߃Ơã2[K. _9Yk\,~39\t% x6 1ʖsqT' z`zߪ[ـ?TE=$&Uj\R\].UbyAWIҺYh4T3jrK\K Gnz\r-كvjO7Eb~$\f=n7M$ZO5M8n(26"dhWw)׮JOҟfLȃN[iNJ$%C8 '#>0Ҹ_TG{w&dgldwRoᢶj$4{h"W Xk#Wl_M_i oUFDւ6OhZx.ޱY_Jhlq`T뿑ļR5u9*ڠ =eAՙ]|3U1 D늧Al =I*yF͞"Eѝx ‚3efb # wj- #B +N:>t҅BOT@k6bJ^]ߡSo~;)K[xk$oJ;zgC+1N.KLg I*<@7VZʅM鬩38 rWE]+w?`sd6}9`Ǭb'sD!  6JETH} |OXy!J&a X  Uj&y0ޭ:cJ!ʱ67m-+5HS'xA\U[K V_߄s2u lH-5i.|TۮۧH,v-qIH(bE4pnF}JJla[l)C,csx?(7VnhYؑ!Z:8е=n4܋rku=Ww[yd#O_7.va_6ş< e׷]`&\w{ #˲77G$㛍|Ev}8bkPC+"S> X ~!muZt#ރ6ճxR3nndzYkwxgWAaz£F$t.jl ;+2Adc9eB. a:?bS%, 'nJs߅J/6#\ٵ.TՅZ ۪꼉L_D ߢY<-q&x'BBhG6thޘUsTF {|: g'Nh PYg8zPZfK㤮Fʡz(Ó6q# gR`;'ڌلf}j< qPLuK#Ztkފy-N5* gj`0!`mDn o`u,SB>qw^՘npe;5 mbV=o*E6:-kr.ECZ3M&%h+l g!|LЙt/03.ЯavR/m7XpȬ9m.&t 1-'Xʚ,H+FnfpjGs E?AL f[|ܗ`|N>mʃêFn1K9~NINA"D00򥒀WHqMGoL AטfJtcNjMJf/UQn1s_ډq*$k*UH]= w#"֔Gn;! 5Rv+x7UAFXv rg)|DM`Vt c̈́#PXTHWڒfsH\ 3PW<>q &TYm<._1dv`-&ôGDޥIݲS!xt^k"QJ~Pl΁wЕk!YʾcP'tS,If}KݥߖNq"^ lRpb*QQt(ivs< fAbzSc?(`>9Y.BUA DJ}iocjFLW_g\~+=S֠9OA>yu 'rOpbMi" 9Ib J68I@2cUFQP8rɏTDʩy $i׼& fQFAiLE㾜k[8amMpb7fMzStHL+jEk](XvH naKoD@|x4 P[yM?<l)i-V|^3Φx{Q%TGq2[5 e3pj11L ^*¿]K?b̢Km펂Ę6pߎ/ 01;Mb\E@Fgґ^x5D&8 E&<Q(g!ϧPgzԹsMeͦ{8XvWy k=8$עuiUP5b}_XcP},A*` C h5\! RaWR4ܩZסu{|7QYCAim%I;)WXוy/JvS}lq}vuEA>.Ʋ>hc[RC!$P!Q7cVtͦ!#"E>" 8%L'vGb# Cw<)ͧj^u&A\* 2Ӵ /ރ I)9*mf.yBOҘA;`n!~)3}FEXi+YFW>IyoX iF}F@kHwGo2,;ܸ~e4^Fi`iZH*b2XWf߸2RK-(4K΃Pi}n"ck78`˽}`ݕ"~LUԔ?B0蚖l 'BVEeV2<<:G&1=Ե6;њa/rCQeu L$\d\:CG*d9@} ۶@̸ց P"zqWce;ƞal5egdRةCs&sQţXI7a 6 lY~lxoKŌ( k2bzodn4Z ڟH:d*j@Q6u@ǛY+S"R C#ɫ} \I?]i"4[JRLcA4jhBn~958; :m+$lN:(bSdyvˢ H0z'&,N]*>Fk؀@{)9r_lm4*Ǭc l M êF($CҭlڠOECl"CYUˡ4T( }Qab&_-PRFM2m^Saq\ mN]gS M c ~ADZW[.2GK~5:[^ckHNPsJhE^i٩*b蒥s;Z}1I~ Yzm&jgw[`kQ?ݵ4 kb*6DkTt^A WG;ERrvHX(nPZ9]a#,ˌ*@Cыd5'r<{CPjc`[lƥC=2mk]@95RUMO;0a9\*KttLL hs,GCջGd|]|y6++٧"vpzRMΑnNdQ $98gE$y`17י쀨9iu#|DoFUHԻ}x [!H~Ϲ-uXb=b[e@vwt:&)6ٶ|κV3eN+-s@0waWWص5اz뿄x3Odb@5 'ZjZ͹rKyhxD?q.(۠T[<*}w5 bIL,)\|MO?m|b}GZ.AB@IVUE摣} Hݟ1[M3yx0IT  w_ɑ58k(\v}TK-F(D}1r7FFL್0IC"~0rpޏ3ҍ]XhFx; ";K~ @|MJB↙ w֌Oj52A^rE5>NBۗLP,lן(VĻгz;7Mn@үrT6Qr<:^oOVǍ,dol{˨!ams7ͧH!)#g\e• ,XMDGɧu2~Yń>J ;8tu9Qٜs{>\'ufn?ul 䔗>w;ID"%:(%!͕˜Om: 6-~4fc9ÞvQ0LlKؕ"K&2,(x]3rU% קl9sAӽO9&Ӄ9{/&,Θ'yxȽ'-UOp\Y.r,v$mE0E׫)c;+ y݄\4},EE_'Ra#.<%Ly{T+g[߈pkLRU#gQ5Ć(+S/iFs|~h >ȗ$bU7}N|\gZ̗O4:Cf֚F#N3K:e8pp!do>+nT"DˎDkz 4 Kn e(jm8ڶHX'?v 2ѢOO®.<1oi$"aG<ǢUxt)$EW)TO-9bY hl}Yn##q;xUY j :a#jR 65Җj78ͬj|Q=_aM'@-һ=&Oŵ|_zWѕyn-*ZPhĀB~NRfoZiܺIpNh}IO (\gy3\OA~̧ ͖ԡ.FΝYQiVQ$7\)  ʬQ>~Dz 3x4F鈂pڂ. xt4?hG1b~<@6 G-0E3BA&Ȇ7"σI3"|*z܍5B~*`ZᰠCxZVʆ$3Xu' 1X!H/8MF#+i-$hl Ϲ*ޫUnH1]<䈣?q2Cp#`Gf`V ½1I\OLE3|߻K:+Є7f63}wP*<>nuZ'0BVK&(M& Ak sQT) k"3=H+xBXx0>yDY[7ME˞Ӛ+NX cP슰Q;~@Vb =ڂosxN6 ~͑ރɸL+v#115!y)kт*ڝ|iw^d2lM=Jsu1;n@Ņ{Ra,)eȀc>{!76p <:9l]!Q6P)~.s';]% ċ]K PInaBI_mZ7%NzXL4y1Pgam27C`b=CGoevn$w.( >tq˽8sBl?  )U0+n݋2اT`ifH|}><^4hƧŝoƆoy9TF{CnwEg#L=dI |́Fml6(gIߝ/ kEggr4 ̱}б" \4.fqJjS_-?2~ڄYp$7r5NC;Vp}1Ջ 5gT#G5եYHX'.CH*>eYǮ7bQ°b?q@A;k!po1^)nYv|Huy0wnZLqD,1ѕbvP ˨I&_ -~5۹&mc²#gK~TY;L]xOEQ'>đ$/' &KmE6ԕ |i^r Sv\F$a΅bŨe7/l8l^%ɡ9ZЊUK_"P0@:j̗2U^:k==si`kT⫞ې݁f̖id]o3KOmgV'⛸)sLyFѺ2.*'{?j-YBf34C^E YZc8ޤyrJ,]Ƒ"0}x)CroR {YK9ܦ׋8I7tz:=5z32BXZ+{tK9g9W%ddQݵPU'.yO3%( qQ&r=B> ?HwGl|-2@2)cLwԶ%+ |Ѭ&hm;\mhr5Lzc>Q<) %4UNK#{ѮhחJmtQ8v UW~JkdP~)j#[k\U3Ѵ 6zq,; -"в:fLw~/_"c&U*I.{q }aipQ lou^-U"K*ViUbbM1kuX)%oPdgh`2u[@a5%^djv/9̘iRECxi 57ur8~Vy\Ȝ+dKcP8<߷J0Hz?Ѡ"Y{,ԏ} 5W)}ߨ0{T`)߾8RJ;rȝY{za}E$ &+צbwr|ԫk 3wD ߷χ^ORo9G2ʻУau%<i w|^:r+Je:l=N n1ùZ!^Σ2 Xr)`+0")nA:q"n _'#_]asF0QܫE8'iRc;;[mM6ϳ;y/XJυ'wRa~"<ݿ#~U"Ii)|`h{(NEԡ,k7t/![æTق- `֊s>&! +o?k'H4HDj#spy9Jskߢ r|m z!Y@._t4--8%Ԩea*@x`Wkⓗ*l`cz cMk˙DLrDϷ+दwc V[LzN&"H,5̬gʇN[nH8a:fE  1ٛ~sߝ3ϰ<ψUθ/zVۂ KQYj ;o;K_&xԊWi9T46<xO݅L7 ?R_7uH*سr <AV]i6l͇ݙIy*SָTHý(Gaܸ|_/ov 1/8Ӎ< *1ӰYkq:{¸D̑4TwFn/;dnc'W";p`Mꎚ۵ u^SfjlMdm~[M'}#1Oa߄qY'~Su'ļLYj\E$)p&4Mf|bkك]RĘ`j(1}8cNziy,^7`m`뜗mӚ>J-n|Ol%bdPN4zr3B"<-?ђ uBh|{j%Ayr+&l+wk4pi滛gNC% K'Eի~רG[ɐ0Αq{/b\8>:acuV6uhRNK/F6EUiS" "x\rD bf>xƉ`ɯf6G;iA n"X>V%+zy|2r+Ğ ޅԒ(5^JS>R#,> ?ɵp$U'-B@KQՐة&JB01O 9~>W8RpM B$)$k>s*u:4d5)k&;m Lhc4!ьS.P9@o(W(c *8tc{jFU씵% E KN9=y+ːJ <0(>c%FOG}u2V|3: QN>Jϗ>8YM} Ƞ/ڦq3 xW?#6L F!"a#ٝLcx5t'!1EXʖ"O ac[Mv= }[V;VnY-ԑ5ahvz;KxY7bؕ)nLH|n0dTh-НE~pP}6UلrTǛŃt6T5@ wo9taw 3ij8zNV{[ʚeA4 UjƝTj_ (\)f^9G9yP͟>%t );ާa Ӌ~Z4=g6bE٨Fnj?wdpN܇yWQTZ{}ʎ`vJ=!Iz55O%hRb#b}vnp-;Mzf8&oQrm?pr!c#1G}]zS3v7eRrͣzK̭%z+Hҋc+Joa<$4v[M<Ax^en\v!ɺYe^.\ZMߝL1iTtžuOuXڞ7s1`jVʛXQm-%%#% ԝ5ޟZO[@hʫ)Pu~ ,(Fq;ЎE^#1p^U~NG0U`0F8s7k#O̗RsXEX$M^S([_1^*3Ѫ%Οϥ-6ku]Uc2K˔^u^Yj}x48e|-)d@͇+:ܥ%|%#y`7UJ־ol䭬b'%h%]}_g(hXix0 KETw$UQT4jVSNfuѓvɤ돏l[p0]W$%hul.֌{ǤP̊ ~G rco^o2\ Uz~#1\/ykEd2Jh>17}|,AP)ŷP(3 _D|qwF&Gn3Pw`gCeTyfuw(O6ë7wwI3⬷@cntFi][` p~|_k`+]̖L+,U#%Tj0[[[Pt%p{֏9)o1pY],.W(9)q12)HO)1Em2Sv]4:wDW{E~3ʨd@d(Evb?#GL8P3|U` i2fH1RصOe M/⫊&ԿPp[PhE4XZoݽ ⰖXїYf?dzIy,~^vrgI,<0Nfq D{Jd,8&/ vADc 6筽'hT`D"E|.D_+>3g,^n[ԪO~&{[Ҿ^ۣEN U .IA:`탒tk enmB8+'бxw_"\RZWVO)cXӻGlN_ oözm*Ks,h?PٮGQThFѳyP=Z2EoF+ /+[Gw5a7BBe[!_fc^T޷~7^pP⮹0|W1nDAv玵 eZ5ܿ?]5 m=.QGڂ LHɉN}8c4aAXB8O\ ]ߙv*Á@=~)e"a IJ%@/ByB|nMk&b4JxAo@aXᛊqKh(' ®Lut^ *qM74py'íBE`T5Ņ*:8쩕).ʄheP( T`4k 5cYcx.&H|E6fwԫPɵvn^ABrq>:Gk t/:ٔ.g{p4Ə*_Fiʍ;]iŧzvX\8=JXkTp6m WYsO0 0lbkrY[ٳ"FZ8V[}{+ Պ RKY`:F2cLCwF_jH> `G~T2I).Bl-׳?*$L_jn)ǵ#X3L{'}.$tʩf.`.$h -.aA9%{FU3Jw( ΕuEy/} }lC֎P(Zr ~*A,uR-{e͕Hzd帄L-xK}Sq<wC:`Y91!vPty5b'#˜3QJL8ɆzP\[nYV ͅhmE[.8Ҁg) t/_ƊX*-I+*e,Ш`9!as.]GZ@ņkFCB2v:;e9l78ӠtB9+ ٚXo"iQi2w|L)Bee@Xru&"['®hOIl=󍞝E` ,Fҩ70+~ G9*n [`D]FN.t)Ȫ-4p9ͷSl8r53-@ ]#qטb`J+b@+TY+N|i_b 0{2DZ\@ - 7k4 v MыbD;K𐁅!/nla#_F2&][>.Jh 7TM2Ȳfa`̨ume9 #7f0u`Yy"o<(z/T- o޳ ǭ+([͎yԭ I-vu@}  ?ʙv {h(!Q<"B@ԣR0$pބU4!eyPVvgl"|0vU/)w-_-~0"El r ڏ/2_K7|QfN;vP˼+͑ jb=QH'50L3#$N=a  ?0Ay"='! "EuOfdz$rRFw`2vTK9ZN iM=~e ƨrW70gg|LP~hԞNB&S=SJIf떶߅1H([f3 uZ Ug&xN]F rɧ崈^ys ,E%ʒ^6J]]w<"dBׅ?'窕,RY+ }q= cERXɣ) iqwxn\sGm ǩ1):"n ӈ>WʈP$W5|6<|oBSXg,n /?b5ə:l{]i>MPNfl0Ҭ$ﹺIY"C(oغiYnA)e*ToE;IPI%P`._ep7O:"),KVԊ!4bb MFNRPveͦu3;}A|I6 K5as*]ZH6^rnIS/l*bX`B߄0(Kq;X`G؞ bdӮi;_q NfΪlMecωLLQ R( (BB¢:;n g:ݢ*xnYE4Z%6.A"!qۢ[BɿI+5،uߺq!DH)(FH˗f>u먁Z`r"E5c8P;(گG3zXBlfiCC\DoAuҒ;\?dCq[ÍDmf߸gќ /9]{pFZ|td-fG[;.li9Sq+2*/ZSܶ5(_m`h.&t3d^,U{x٫F6F RMo #(h*0N`bXS<ە)kޅ: ]3^fإ|Ql!JAp?Iϩ qu(s9:k} ]o%vIVv %5iui ` _^,x=V!BׂbHzأn] ?gO׿ț,GY9%gpLV]D [ԋW yO>sqc?50S{ B% 6&8ExJ:ugs>I=#./(y{L;U܍I9R g ~EkЅW3 ^ڔANk,cN^@2k圷(ylXu%W ,ľ>0ҨOӧ\vW=#7=_ת \aNV И dޚNFg%f;_N >Gu!_IWޕCKA tW h{Kܘu$ PZ>F4*UPhcÀѱYcWAr73;d ̔P1L|I͕ͧa} =Mi]nb"oDK |}G7îhJHg2#AA7F+X׏}E~PFR a(=`1{^ISZl0i BrsCfUJPT*~ϾQQ.P%g0CH#:A y>. T_n:^TlU 0Qjn/8o ~gf&VZi g._ƌ_Ȑ@mI| nڟ?EPK*M I6ː9!PC&6pARb}wBiT.=XJH( C,"}gZ3jؔ{%zd}8N)…xt~4GI߰ lahxs y9 SV"+ K8UwAf$ WJ4Whyk @oR4vMjo]< x6ceXՍ !!oҸΉ,w==*n!uǔR@ E)u0CQԞzZ-@h9^q`GJyҔ:Gm/pή| a1lU CFSb~nO6iԼkOė[f1a ?e5;o7II >2e)/,KYe<5r1A]4@L,P8{.)<:5HbϼGɥi3*3E>/Sz){KW8jɬN`Gty{KtA` 0Q&;,RZԞ|1K[k^ >][L*vE ޺zHZmK=d,Z|8(q,onN'9Sbj ӟt\MNt'*>E;焖rsho + }rܢNaO{${Kؿ*dZUnqNh)Qˍ(X8\䷝cMWs)#{ (oy7 D RPXVXիqKcO!E~z=;3uw(9);2+`guQwo'LC<[%6ṯZC OEįwf3]Ү꧒.T z`I"QK%>Mj6Lo4Saf( Ȯʸc }CP> Ž9]nWUKU#SԐ{ V4=0Cs vdƩRhwT"YY^8 9ҋBkQP,_^e s,r3Nvlu@%$M29z1VtG˜']H_:kb0{1eQHLYLN;079t36ho{$!Ax!L(y BW< F2i{`OTs}tvY:Q9ގݭd١Qj\8ןz^_;LP"3]R;Z?[Q,kmXr72fx>RknJqo#Ҋ(X3ùuJG/ }ɧNc'G6/’RSw 66NQq΢X ,Vϥ~J5wK9X~p wT]b 4ۦKܪVS$- %ҹ,~? 4 Tr,ji ҷϤ njm 孵#,TA2>ý N9qM&|8C]gϫ; /%D)ѷ]#}NR5) vtOk<-I+5󷌂]uo#(v~ߩȁKkO+$&48r1N.PoL', (EC?vA%" |Qu{ѧ)6\\[̠X" cY v1Los0 S+@t\DNln5]e- AO~XRhdE|<I`aᅿ${V{Š`(7Ɍ|Ǔ$o? T;R Tv"qZ`_Q=7֨'FmJC=04X/2Y25QR6~]?S6̣t`*$he/E3ۖ9΃yt.eM^!0;p sVӺH({$cfEOU 'N\wʜ!wFZJtoAnߐ Sz ӎE[ %sC}M$xxaa'h; 'CG XQ2^Mju!Cش(v騯(.@AJʷtg4Tcy1C/4k΍zal\!;J7VP7ӈͻiU\U NPp Ҍ,Y H X+\ޢu6?ܾJqq}'T U𷄀 X֦:[GXÐpģAbn%7'o(w>^~2o4 S|cu8 Iw*rϺxp j f#Qj&G^ou +%W2@-D5pժSLR-wB}P4M?n֣5jQ7L*ҎzOGEI~hHI_MR~ZPM~μspAz@\;JA ̑@Sn>]W7-Hbm`0}v>#5VrkڼF0u6~`49 2{ux,P ,hpږVS~B$Xa6xԠ|Ωh abfT1j9U+wIfGf(Gzv| meV#XD}>k= Dx_ ^ϣeu.7w¥&e]ߋ#§L(*}U'Ì.$:ON. gg2ÎazX ZɕA EP kip*@_UX-&|`-POHt\نEOK\vH>/ԉ U&^c"L *D3e` p)eJvJ#ߣ S[CzmǍ7phȁ7l K15 ̝|'(y4n*K=ڜ.]X\)^ W.^D1N'" ,!Y3Ϣӟ0A8lnS"OCP|n;Ɯy*àM4 QDVdBx&[f@p[Q!I"&\܈lT,bcn ךJ/2uA=H޸؟,`YbCQhY>{YhVosix[xh[n`zœ+/vW),$Y(}&I Z0SNeՏ,j/z {zU=fK9ޛL1*@+p-=]`N6v(XVbT)c!e,U̯%2_D> -IbbdЋ[&}A:V={ ?P,ٟCduAԴsӕi6dEtvIoc<}Lf~eEu) oApT2nKUڏL6Gy~yf>W]~[ `N0"wcm,(DA}U7ȥYD\5J|7g]yH`R&@a| B^f'&usWȰ8P!309 i,ܺhѼvoUaU6baQdǥ0'=EZ,LGc=r]NerJM%Y9`i> ۬ߤWV ۅ1,)R[I@gNJ]ӫ䨋s4$:רX* k99ٸ'^+!"ZϞjpW ,HN XtiKxIX^.`<]^c 0&N,5`}4e2l^zcؘ/1-Gz#Dj/Zk29ro?MAq^/*_DگwֱxRe d6Rqf%QAi߳ ]4~=ߡV:̆|ZO~Igu6Q M*.꣨v){~ IAu.|_2&^ vO0_Wkb)8{wV{\}$aMRqHRZ{ s M2F=+s| GB~t.ļ F ܧƻLמUWnO;CYmC cڜg^pa}0(FiCD^ F$_5s3HǍqB 9mfrnt l3rgqٻqCSv+1w^1a0ƒSDL#I,+K~{Q6u pY:MomŮA9,}eyGh[`KC`u-6_X d)JgkI֛|}j9TH Y:/1[1jrc*MD0Pe^S jYc>nх`jafM*^O Fo}o$,5Laxf\mpg]d7%]VhٺNTؓjIBFVhQV{zndo-:WoBZu빩H (EM_sbx?#ބT:Ҵݑw-9IS;wP/@5 o $B w/&H [meܿnHҡ(l r+P; sv@zJiDģ|c~]*-$Y)+a%|j\̂ı-#1RDid/5\[,(,w0Мr *T:t72s|?y|$]RYQ+;YJȹ +Dhm_19^z\SJɇXL5lCa-p['Lt =Ra~U1(<;Mh?IǕlƸxG[~ͷxGDs D܎Ƈ񜺦(ٷҫcFP'NT< 4P,ߕqueȃ+y;?:ndh~j&@,g\YSp= H rJ4L4IC!0gl*CZCO4'$/$!Gb W)R(Td{_Q)±21'%T(%-&CZ8QoPr8yU7gf F;XBtQ-0 aPS@[b? b$G C6CKīeDE\w/?|+.c=Y(% k6P7,4IEpVL\MƝboM29_F*_[_$6`W?Lc?}b;8sO9 J<GяfwŽb8@#"lk9Fx}Plt~B2O4WfRō%C@zTah67hJ|{7SVR fFp RM5em[lbDw୸0Sc샃*/pJB]6* 'Uś]댶x/#ӇOId?!3Az>4DzSʢ'򎹵pW=6ԜUQHDgv&"=~αXR+:d8 ogtْ |ЦiN0wcueQ6ϖp2J*rK%8'%c+ǁT?|\:u+њ<}yp]*pV;W)Ke!{W0H8U쟷ZAJ[ !&{AKV'LD-C'k49.8܄iY} Bo #"Q}M}-mp)vYZ;T9eAsF=k2[>H~X KaRJn Hʪ33xwr?80,}]mo\mQx}SE}eBhmtE-3~ٜ")m\zqkƄݦ!ї')-mdRr`Jָ0谊DŽD0'b@4v@]HIoG6ߴnuuG&cAQC%)[~>s2'!BxU?AV^VԚb'Ms#uI!&ZDTn&,MO"irVX\b:uW>T;[gANe/IVYTPijң\ҥc)i?V^F<&q0;FftW$/aGoۆ KŸ/ԋچpц2'^x=j Y;!Jɩ m%ɌCQ?rzŏ"r6,;|{h8fc/&YcպmڻF@eo5_-Z)IofYHP^х8؂oF8gŒqyuYe33c>Ue:쓢u7֬MUlIBb)pлLc7wC'sҧ8xNqXa3d 4ˮ>dBy/Ȍt.y-w3ӭXDbv@"$Կ ~H9 4`s-wVxr/Jv d^P]IU?7߃Q9\e ͭpsZRP ŵ.eNQqMbRƍ1xln? \͆􏭽t$2Ʉ0<1كA$"Rǣ*R.k(Qpk"kQ)Mk?u-k* Z:KvSw0 < 5 B?Y FS\d5l8 PJ9IMD=Ѹ@6򎼿~/oc"tLЃAsRg z抭T9e?fTg|D9n 2#^KS9TxVOzߊ[pV/ekz/صъdDs fl%pBTuI3]R<vuʽ$q(8upm#1hS/CM/QIv"WҐەYVCm-<^׻$Y 9&!K~!wa?J}7 ceo brm&9JV'qDUpl s /> YRdbuVpcl ^FGMK L8!&D\qa!'ӦȤY?q܄M{[qm5A lO㗾IƮ*f$ ntq!cLN\:;f K[3%/CsYA-monWXg:qBO3ۣaāYH9&`L/\'=wzư+I9['X %+E`)֓%f*6q5ǫћk 悜՚XFB4zƤ4XZMj?C8J; а; %]5I>{y:`=p( g:2r2ʸG!7" J>It}⧹Ւ$p̗iaZƃ`(夑r(RazÕoe:UP}s_I]ݯ x)SRƟS{6 ^$6O LkYi/iW@XwH.Rhz׷Q!_d2)3 luaqՑD€-SW}y0hX=l"N&f-xk`glLTYOVScqIG:*2S70a>36XXyG!ҸgMc&y߄x{?^ DHݎOyД_kEK@c܃i_%&__}ذpNv_ efSwq)۾ 3HR*:Ua#BZW}D}?<$pLSW@_ }m0Q[;y쪣>·CE}ȅl3+a,=+>St{;y=dFt9t \in[٨B6v՛=uwhͽȈU& Z`ͅBe :+Uh@:nn./7~ҸnWćI*l5h0MKu3sҏUyP.&ꥇȅahL۔Fr-,MH]trCG ?Qok)pC9FrAT1y17 U%ؽ2"eڵ䥼M ұ&4O"V4C{c,G@&!D Ʊ B \4@.o F^0rT.q o?KKCB蠵[M S aVS4鈙"*RLɱvLXVu|iJ3\ח y]f>1]%x|cmK9bY6 ڶgRxQV|D GRٸlZG!&ǻ2잙4GUq~w?!I($)1?6LnPvWWGA7vj~`9'S-oXT?!{PJί-W(-Ғ!]2"Y2qcIܟ 9jwkHׂrB-YP\](Dt[G]QT}ZtY0b T Ig-r6,PqI | 84isyy4f YNCF9VLetµUAN !Ql_{hL`ڡ f0UN=6s53}z昄׌@Tk^) o\] @C(ؕ-LNmoy9$_m&mz), wKw>֖Ҡz\dc%(zȼ֌AI,̅}oSē/1 heӷVh)_I8j~(C=Aߺ_dzஞgo)ݯ:h0`\RQzkhѬlS06Fߧ%QGQaZ0?JNM.rh<2nj%֯?^&>ICB/U\i糺Ĩgptw YzBDI&O:UB/"NR ]%0ZG23)tRS9IC.O ISAOBH!DZ_,:XqڨNŭ{ pB-zHƲW"K&L@1!, yیc3OвjFO[  /534%{!p,擳.MU8mL1w5Dc)YE0L?L{s}N_ -2] yHwqnJ餿K84EǦR=6PNd;JK} %ˆɰtaۚsPj&> nh? tޟWKXjY. ϛiJ''wN&ثȬA=K*vsu. K㫉(%K2$bTA{iX ou x>ڧb\czX}K|XV&.eQlzK;0] sZQ[wH$ SvЉ9JiψzE}˘lc12 ܫ@^ɳx$PG4q0VkIEZq.a@ۈ~33 AC!oTqDDϕڭ9C/y/i̟cdK?$^DoAUKT*WK쨁}ȉ0uώq]0((CvUr)ն~-pxSv{‹s ў7CLaq6 =0~WYC7xNx`Ԍ#t@ң.Wd0 y\?&7[ r"| V41Lu3O≉Z`4V:guu 77`79?i~b?2<s's>>7"F{m"%v&\H5sLuGDs3Eň8R4Qy\Jؾ.Z9>Npc]En.dSÑ@4I s ~oN t;kX1 .y%w'ZήjRJxZS|A))F='P&hƔ'l0-;x] -76y9B@c+7 fh-8\<^O@^W/ݮe2BZUQ g$hdbQoR~@2,|G1h7~+&L2tƪBo`ƹe4pƜC',h^[?: @ Gjf,r(کvI&>]b$t3L6L_c $ճ{G,kfw; /?bF:~&],Ya$rg&ʃiIFF/E?7SI12fe?T6zjke$x a"B2p$.EWIdјc :)_€R/m-x@JWͽJ2&A2*\vԆMGP9ؾ&$$pw3JPVyևAq@hVrpK*2$!A:fO`oB`R&V.uכh0:spRi=k0=7iۢwq/Hf>n HZ?*999D(lgShu0" r#\/݀c/ޟ3*j-xToSlL|FȏYAki)$~//7Z^pt\Zw鱡 !X`8LacTdɧx #th(1~|vB ;$;?:$Qmsӝp` %7;^B4gǖ_mB牼tZ[`C. MuTT302 HrDvmR aR>"p_+}qf,"~#|/"D!a8L5φxdE`*KF 2`TH5nYYf#񻫚l@=ְ׎eerhooQ:HR&/?`<'\!~/fhѴ8An[=m][JXAV*D|| x!:8&mɝ⓫Ƅߊs+RĈW/[:9<*Q$N5YeDSut:aGw$5dÊUe7iT}YMu,QIӥf᫹P_M(.*B9X9]O'y2pȖbf3nH|Eb*.=pGrH&`h KS"J%7wOS&C#Pr0 eY2^>c-Q%Qed ; cy;|^KIgj%l FR?J$G[Uh9e%7 S0,ݼFs8o$].5)|gHƃƩը׋*n;0e 0rʊbyqJl #j^SD_AyL˯`0oҗ?:7 y k) > #Wa,唜F 5@ ( ɐb4`0S-դP]KCI9kIn'+x݅hG'[yis.Ǧaa81:zZ8eJ|P?9]X$Dϵs_0܃#v}j55bt5=fB2VCD99:z9k fRea7 {w*ݯi+_ؼAqZ$2%C3UK&m2E/ @%7b0 Z íFsQod" +a[~ZcO˨#IVQ06)lI€D:JaG"߃DGut jYfɑ$wT+AW>*uetq.D!lui[2/"[%SB^.s`&xUJʏ}+-NGA*;UUD*f'<91LgoOe2 u,OvU4wHLAp rgy LB&%0YBKWƅV9$%4h9.84BMf:e ?pl R|" <$hH;Ur t 4Y}(V1 Tu#*} uaY^?M̈́ZqM$u)F^tp^Kl ŢRtޒW"D_[ 4FkHK 58Rh~+9ff"\빙4$La֫ "cjE&6CWw_^ +sbf6L"ecuYCkNGt ,UyϿ" LӴ>()um;vOqdb-OFql1,(i1^E B,M4g{h&Lm[NL pMu|*?>7v*6ȖLS:aԕ N)edf W_=w| KAC9yŮT*3Chضp)mq]l/\:)GTtqp<友a}!օ unuߟqU|_WogqQbtw~rn[t#ڹdK>dq 0\Z]IQ"-G+-"81fTmBWϡ \>.e#K[Z'}?PA-m$ۓ&"4)I.$?6S߾Qih*IҼ3ń6ԢW($VV%SFcIe@__w s4 ˩14aScG{ݎP.s+hĄAaVTO@,:jv_,q籽+2Zsr4EwUVD ]9ӱ^K[ܬ 4LzS͠%;NC8xg=LE--OO(7r ѷ,AW—&DoUͱPr~]0b p]Tnպ؏)f}s쨝ֻ瀠  !YCzRARS3#DM9Mlx1̘HᕝqWDbMӫ"Ty͊ 40,".aN`g8U|Dw9)0(GfȈ˸CFe䶥} Wp:[Whd*@#J!SƈbԺ+@DTsU=[OhӰB.SMChS7}ámWF+,[Re,jMgJPe1)l& .GyF|q󹤡cODzV8˒VQ9rᐥ]iC"|2ʧjwZm$ׄ =9]/\-Et4Ȩ9Rw ,\y) 攚uhk)*mZ 4EqG-j!Ef όrx!rv 1-`Șl k1CNZ&<'UuJ٢;{I6|DmRSDQaaS-FS=st#ƟI[T/WN]*9<T sjo7ש1%D=U>1ڵf6ieU[O2Zo=H3$vAt#3wtc e5Z;f=E+i* ȢPz< \tpVlY̮/֖Ρ}j j^6qo nI?D;LAr?Ĝ0pOO)+d *F7vULkdVQq<=L5]c':Qٛdjв8a .ډprR`JSY =;Mu74(pi}YA/]ɿ g>SYh1N$l'q{Ԯ5A1uIu?tJ>?|"aͽ:7}J^7 W'`3xSd bjw#Wؽ>L>.U BaqO|JxL[_>8O ~:Czمund)u^G)%ld*c/ؓj 9ᜠBi^VY_U\ 06_GJξU!-Y t3 %9͑=UjrJ !N})pEѵ(On?(ƵH&ZIF= R$%оdص;gA2'F&;,OX62Ú@r7"ƁZQKi2bF*!$|Ï; .,Zʹ@ Y8#U|Hth%u^bZ 9?XBzޱ5IB[Wn)ԁ!sn`DRĊvԿ;0Ε,>S.W]$k#CLot >\zBk%RDW Gs3:^NdSigs;">hM17Y [{5N L5~~Eaxo<~40^{<> L)}De!7?\b"w!m0Nc"`W#&tkHZ.X)uYFwF5 3nn$g=zeZVɶG>@@]^1  ~ߥ?PuXcקP|#z[!āqY5{ΦFFqC-p'j" `h90LqS$̽_x&Dx)R"Qh X<(h#?ԕHbh)5 ;_"P2ɠƈ _$-)z_ ƛvzpid0_mĢoACBx#~sv8tL0 AzWpSD_݉ :rnC AT!Q8RL2 /"a1&mNf z2lMHdV4U?a3HXuLz]Zkބd|5)Fs.oG@Y aJrכU)-mݻQ vu'EǬ12xBb/bxb\'x$}Sg"(N \Rt._i6% #1<#ɛ%]kkg峕7%cAS!-$NHòA`Gk lwPw&>grZhf7-͜5F vwqϬ-@p zCČ;èI2f RcXOrPBR EAɴWteɫM>'%gAJfK ev.]o[9FG73E A_7LCnކz[Tn+ 9.@w.^%::?GnK2\uj7^mAu-T-4,"j=V32/J'Q[oakN  ݯrJt+GO2-B2N!=0Sp9(7[mG~B ԍ O诟nkNM|2@]ae')56Va,e) qO?9 ԅkgN5g],O*x). cw;d2I*>.a7E]h;ΘfGM9Z ~mpRS!Ri.5X'T~#̓4YIu?v:/m}oiyS7_3e[p\sؖ?p[| d5(  E] Z?E]8z5h& 8Geݺkƞa %XS&Z؀QmAEHӊnl,Z0D@V̪`7<P #*%-T5l"|{:p+0ϙ6"<8Ԭl&RDXѝ8Y9+Ha}_F{J re]6&cZm.mLnY=4 5 &kwྜ{Rd؀bi{}o< x]HKkD @Rpӭ7Y5?@Ow]rDs4ܗf'@˼ I+ hI) l3VtφA 2^>+ay0rzUTd$U݅Y"g_n wz˒kt.wⴸwa*,\'vN(Y~Wjٿ&ueReb|.+J+=uY^] q*H I9"M9jk*z%p6bLNΟ}%8xT﹇=Z :=vޮ\t4])rVU5},y>Į̸< hLk!7;$,!="%.i -KCGp1O;hVrMW= e?1R[ѫVT@( =qݨi2,NOҋd$';.ir*޵r(ʎei s7C(:W_eavm#M Qt: PоzF9dϩ8m=1:"=‹#f5i$M tW0{B ?ISoezzJ F(a 8(^۔1sR~9NI#gż'&<6(!XUFCmv|-S5XUK-vn6RU̐CK[M7nQ+U:@4'0㸣A?\d*&4Z6MI>W ʜGuEw۳h4vޖh猦ȓ6 dSq]0zw}6Jis,2DN~uD Xw߉*1LR>g "2]h`C_Ei+Xl $rj\xU]h%;|ඪjsu@<~,W b6Q^gaL}k_]_MyiTw'ʾɈq\T~jhHl/%EsQ2>.zz:Q HZvnClԻ `yOot)pf̔.0ۡ0ÊwL~ +av}X<}qў.H{IVE2I Iɳh !"hfJ԰*#˶8Ɓ;PA)HTK#ԛrA'*g7 ۽E}18*Izcw}Ը?7A S&Ow?6u-Nj7Г ¤R@<΃] hZoRGZJKV?*JhJ}CgJA„n &|NOqfw)F 26Bc/iV&[W,Jdz5s]j<´$~R\?;1eѼ3D83 w.ޭ,7b)'1Hz3U YH~ȈiXu1&8À\3욀Lv#{; ,౰J,깴WNr0C# K\7kUR\ܾw8m](MpskC%bYj0y/Jg 2c=}@T"6WB Jh?i\شl/LxOvאco6Iÿ7MOg"MpJ< ,Esӧy;FòA Ew??u{HGѻ]C {tiCW͘+1o0uxaIƷ$`* UxE[@|WK7IU<16M׬SBYuHb%ᄓQKV1 Tԃ ˯u@5~uPTɕLSb'L 7&A=<-Ma$ MJ1xs2~/.d"n5VD?4On=$"JoaWeUϵ;fee(mx/Z$e򟝞bO\KDl8Z.$<<$a;Hl}w!4%e<J+'O7:Ɗd'5jR꡺ISK%)`cylx쌢 sLR7χV(޴>bohI@>l Vgr1t Ep®ԔH[Kܒg*2KvN㫧>S5T˃eRp {[QćZ=wO @.8u:4…P:q]0oFe?gzjhL=|s ~Y -my6A$ݜ:z5tnЦftob-vrMv7l^ _!ݴ{t>Wx Rk?'2˓DE%/A&v`[S~T?t^[u}YDDؙ"kl.8B dx7Q^f KGՀ_,_$rsTAF|55.#0j SܙhUXD]5T#SU?&A3Œ3{ެ@X 1iV5L "Xa)  qI1&~^E5YbVnrnz0G!Q^xQGO(I\$.Lr~b?9ūWsG;?*>҉7wVH9ȭ 6ř'C+VwOzL,(.jtwKst^N&2n&*pԗC u5d:;E^fc5RpOͩՇ^}& qk|] K2g/#_ FYVVd=$cyٰ@>Z ޾9m$w}뤢n뚢gهv}ajbU X.ҩZr|C𾞸5W=EW薡:16eaJ؊/I+"E2M"䠕&˸aZ[}#1Aʅ%SfaweÝg!Is4|l 8brKGP }5X'HB-5>WD:O}4v@Q ](U*OJV)o5z-#1/1MQh!ym߽5uZ|>P!}$ɑ=UOJ?#DԪAo4d"NpiuW-ٺ i:-d<_#ظJvV|PGh/DDę> = Fhu7nk#$\S8bEx+i@2(9`tR/Z8mVSB[/c33ax+MvC7%Qpyʆg`9Z &en/JE]MH_y-7~bGkUw=EO_R![K פE$-·z4:am3 *65\DxKoGŶH\;$yplK&i5%W.X+gQͫD6ONb`xd"tNNJlX[e׻R>ZZU#/  H*.Vf=_ 9JŮ<4@8&>;yzy>wVb\rA@ "5^T!xn3y|q) )0znLr?bRM~*r왢shTm_^j$! Y{cTHbmސ&,vǐ|0㸌"^}typʄ4URa@ШA#qT3KLOSlV~H% z \3[_e@ 4RUF'PE{W}W7H@-i5ViXVp0[9UaS+'(JM>'c\5.^%,gϾ:}Ĝk)=:&DZl"7_9c_"o(57x=jO4C<:]"iu82n%"{3O&G`B8C׎7M>a>e`KV7z}Sº~UY3!{.ߞ6X5I+'59tW~<$}tiV|я m:&@fݲ ti0圼bд8n8b?LpY9tUաLs}'ya;糘TL02&2L!sBX$/d]Hˎ,I]֍Q 8P!0zĩoínb* 1¥wd9q֌ @cMIZȢ1[ t>/`6㨪p fvpV-1Ni.?Eҍ9qQ8z^cB7)c .^OeE:vSpv֩| ><-|fә:ޠإ'ٗD}@Wk m'8cgV0jU=GDS R܉+=SQ(LpMkX:ALߗo?{bj[Ȍ?<" ՗J G fl݀߀dLJ #r@[Mp&rI/Bu;lTwj4|ʂBz㪮ir bvU2 i&J)֖kh76#A ,CVxGmDHr6Qp %1- ’%z@0J@~)=mǕ6^Hۈ3keğ#uFk[ؿ ]%µ[(ݳYb*D1}IUSw3ƩA IpF~XeV)kUy\_>jX2j\m$o8mnБ$CQG4òxV%WKq.WT嶄d2,kҧs0O6lsQ8ƀH*fx$:ږM~TނS5Us"( =n ɳ;h3wϞ$ s8?W !Wի\1`M渣LEࡰ퀵Fu2uq<'-FfӟIdm7,ۃx@ژx+E1u8Y~.QdzE_vǞUチCknLG;KAeߵ/fV!÷- |f53ј?-4et Mn͠-WR g:Qtܱ>8?Ѥꘃ[B+q0cOjzQr!iM[ZO& w,]7{UN5wr1)jo5 ~c!wb;^,`zD.A"^3t4+_Y+1B5~3/vq9Q]A6 ;2Ou H>3h+McNEL)QkLht4xx;vf/.oSV#0V"KVK^Ûr pI4v'bK滆)1Lpgh2x NsQeZrs1 :?57/i pN [ǼNg]D/ cBNĆq_ .GCӪO_@/\)yZk P0R 痑4B:d4}Im!0AtRP=|^wڃ/ܢm&j61v#\{x!Q@KmX!GHJ&?(H.8Pc.?>HS xqXFBWHe<i /[{;:SpM߿jd`.7e1C7Em{s|~~ݡT>ni1mSM3TjQ  $.p$nU\0Ώ*yw|CP}Hnz⍸'huA2ЗיV4״+RȺұ`SX C?JD4y6WOŐ Xõ\c.[IpzaG$"%pxFn.wz5 aq&픸׸7{|CB\$wH |gJe4{^IS΢"V5=ӊFV'-+N+R1_;9F3S)peXbTqC7rE_pWh hΑU^QJYxk{ jrTvt uV=eRpbqt 1,tZ5D\gdA2޷b((_[zhZʭ/ R(7Eͅ=Z6 ~LsnnN\|ňuhi"NASpp99yS.?F؅?`H窎!\refx7E߶DYpڶ=t3_ .Tb pge7/67ԞX1,Vz _uM'2tIBǫx '2}d]@hXII/wG"\sH[pl@zoۻTbw|A\%XE9{AzlHXٰdArE|J4ZV8IЉj$nš`cte,~9Sv O;q@#_ϲIRNmJi?Pm;ͩ?=衲}1??P-f̃'Hs|ҥE^@Vn]qϰmm -Q|;";7cNMk_sև1fJ,^G'gWꆼC M_쬈hi=.]ٍIK'|VB|ڎEԆU]C@{\yzhCa ؀4R{v^. hw@3ҺAQZbpuHjc.,y.0 DheIc%=aܰ^c9y>MSײx⿓֥(-t=UE* rCa;~UrQi` V8VfIz~Y/Yř88`XжC&0H֢B)dv q_ۼ(3i( uϐUo.enΈ#9}>M*}yz47н~sPuV&d͵ q#l|Qh 1-'p"Gr[bmZ^]&Eq"\j M'!`uu~c9LQUoф|FGJ.֥'5-WlӀˇxTݿ㫁u =shѷO4i ᇎ" ߾SFx~ܭ &o97cC^9.c^wP<_tŔ3fOѕX5$ (iF:jZRrnK{+>^y˘YY6D`6XID+_lWj "@M@TZkӕNn1ۼ3E`+! ~N9ya3O?cC5\|AmT4Xkpg +? Ɇɯ/' 総ڸma-Mv 6PzPR'hQ5l98|Ĺ$pm;Ov"MW1?{:߀\{7= cDZ3c=i)DOe%hke6E(1ծIG~Ϭ@_@Bn[+ PNnǓJLFS?@WdCMI X} Ie|z<;Aؓ9%0^iD,'ڟD%BuU_PPBjѫMG^tLz4(?va#3KΛy%)ct,*7k~&zMpF Z_[+!I(Gܧ!M\RDMABZ4Ht^BzY h"K:3(Bai 0IN+dVi6Vd?" O8N t#e+D+A))V">Ӗ2{V{b"S;m`r~&z=,SƓhZ*; @@ű~v8ӎaĝs``r} nJ DЀf`if2A8I;Sd"}HHXCn{=kKRNK L}TLG(TZ!r?<qAp_L@a:c%b.fRכrc_H}oR [̰lV.EqW_A!|wޡu8єEqE}Oir~t9*k?K^5Fx8}8)%Aj=dKrYm P~o2_I5y544S"*4;<,-Ccz)>&^kViSѵj~UU.@&2me.IW.Or`5H)6;@W٢u`U`~i9kg:;=CO4vQfMVۙ[#ٕm[&ϹO@}m 8#u KہTURᓤi%bc]-Jl/Y k1KO$̏:WH\5>|2I~O`bPudM?rM su۴C+)~dz|\tY+Lx̍+!)Sl}adZd?%ag+k4I҄M26Vܣ?p@je`GŴ ƥPԢ&iӠ8ښ1P.ga]-iBUC,EP\CS{ _%׉s%74\KvIDm6dmsH2QN\3?O@8/9vQhF~@`Fk tPJ2 D@F 񪗼t~R>2JL*|Wԛ9ZF)v9I cHx ![(.:X]Gzоz74G@DqoJJH|2rڢ7䢐O>dP|[E j4Ku빶7^D/Բw)<0[$?x8#DT%YyiST#9CI %=\BY@be6ZWNAxz>0qg.gVVOWWn|ptYD=zͽ=X%gyN@sY¡>opܮ_O 񣐓;֌+H( He(B8p>1.YlN7>c tѤJe8>ٙ~'*ERD]MroY6M[kLmG< :X~=ϥlܛ")~ w8,JVii˛Yx[iv6 `Av.>AG8W'r \b!r6i,!F.߄(Ծ+ zp>׿ t t 9e QQwr!;*{8f' "dsmD\P׫.KE>}>#5(6c0!}1Lvֻʖn 6%XρWLT-Cb!uͽz@㦴gI zY0aTSdT3OK d[mꩪ XQ#݈`Q[;FLSKkr%8_˵Nvk 1g\R'ZυSUX`傪y~kސʡNt1{K^SR m%&9R߫1@>%ߑ0 XJĞ.Ww4w6ށލT{*v8dfj[GKm+odSW )i(3|<:umIMB< "|n^NU?% ss*R\CjB @Be^E">}~a" eDjMLke=B {4OؒgK+Ug1c|Fd9I~(IA/=0'g=!tF [aIs1š,lg#J7ZwN>#nWJ8" =z#z9~vxdE6y҄Z |0LAare^k'۔P }$2fb%n ykapcV )3Ku18Š7+ (o?D"7D*GHir5+\'DlvIwU{nYpȞ QaXWޕƐm1i,1\o@lZQ]Xʴ 7սΔ5qS4$$w@Tt*L?H05gn`4ѣa YL7xv}-Zx+&o=r.>CؓI<?†*~tc8-_S Zq Q7C!0Tt})~-"KKԅpdxדO!w:KOeCI\l)|o *#E?`Ht5өY1DR/JQ)^?OJoHΕReo nw|buLD=mYKqA5>$࿰ƤIh:^^J-chvr"t\hpJG|)<Θ-CԪ 4{L4D:ѱq`V> w4 y1#[ҚfMqn.ǮjCJ9a|.jt4148s@=0Q@k`bU!ps5R' s b"e4 Pn .V 5M3!C)\hhz,ReFM.?;em6(!h_rvK؈"5ivˮwx水h.W4)/#"ʕ2W.(-V1wI"Y8<0Y ϯ5N[Ls.$,DLo A9k/Gz"`_ ^%v(dAul؆>i4WXtׇ#Q'7ʝ=(*"R)zЗeLhQH4*s|N5+66ӜiD wh;)FV},bĝ"ānw"+TMisVTzٟWχuNt67%6IVjGhcI(X0?8Z68hW9#zWD糝ͣ4eAdz.=a*U+B`?x|ILG IdЁEiñWCFܳپv XNL@!ޫiSIr3p̸qR(ޥC0܎7:ML"hSB:T (פWgE|4εd6>1p(ȵx`l[gEGO~w``͵M Tْp섹tiq8t^w4gF.Ȗ5=m .Nǣ_T,(MS+[^ݪoc+] R0%ZkWgc? dy|9\͈R B# DJ;Pu?${&"E4c⿠nF<5UOkոdv&$뭤ycĿfrzNP =Zd>VD4g3F6El{K Z$ ~~`YE5QZC] Qo.nwMɺ*;{|z|1>]x֮["q75Z^Yy2{đ(bvqHL1.:.-7o4st2v @AFQȩ 7u? _ߩED^N,pQJ eF'QC&V^kp.%t{!=ustdtohѓLI&c嗂- 9.eK8844jlCLѲ (Y# _$FHN,S7FQ _=6; @.A2SF|=٤(ϟ0׋?B"Ff3\>3;ʃ {1ͱ_P'ug{@9=VM¶:6gj+X 9,.L *XX\:bvMKEW*YEDȒġb*J|f'y%MGpO;B\l2WiS-Ki]5 2W sA`^xC)1bbDO碢quŠ'z!_O3$>#K3MR yi*˷\!6NJ@17j8cJ%i!bt +`;.bSvCTp¿\iXKֆ7Yf/ǛA-π>ҤsG&eyG)J5׵ a\ATq{kiWDDG 90 lEٞLDewT*Bۇ 2=^ #6GIҗ7_[X^Rx>w-p."HV( 9oZQ#)|۠6@f¹9=N;Bd Z$Zl"ej|׏2[ (FaU&6=4e GziR f!u~JC "w[߻ usp?,wߙ20N]>1+䦎R!cz!kv-m5]dqA~+I EXeQNM'V˓d-3i!:mʔM-{7یt "Hf8{k'XvU%9ī}?nE @|s3=;70ŵu,stJCYuT fg;{K( F?5QL9 ./|U$Ec; ]#eAk}P?zhQJSD3{G(jOje"{bu{l:^Mײa ܳZHzXmE9O5&MU=YMl 1\\p`^J!P4c:.ItʄXXU)R?+f0G=Y#t/jsT]2_ๅRbV5JM% {"GݛFMqTON=~w& 2OwCĒzG75+o !Fɼ̸4hm)it07~99!~RS9 #K s_> +AM{rG5*8ۈw CӍ?8|CC!nwmn˶0C3!ߕdR篡kMo'!ҺM{X4/ęHˮ' _chc| D.SKv*!UNDjwG˯h7>dnVXMcs/Tm g\ڤL:C xjY|l ٜ袴e3j)8P5%_fmӹ]S./v-Ӱ脧Mn6F%a\N Of%eq`U +Ŝ,$;%D *e=hF2y;6~_y+R)k@8OLG뿂{1@! 0ѥ>vs/j!h"Ie'PVdZrG4iB4˺HHMp[ >kޅ[*H +2nl)>3*H;xbikuıf\qkߋua9V "2:!/%2BQJ͉/e6c>؍FS@ l 5@XSDLnZ 9WQ0ʈȵ1:j޲pOT~ZFL껱l2 Y90#6kf6g^luVgdma4XpsK-]I"4`id h'UleGs Q[4uਠ%n3W^4Kc[T"pbIhԙD`pMlr菚u)R R{̈́@+鳵7<ܿE9 4-4 TNk*v늾&h^=C,7A"4T\/q~KP0}>ݰ1ɍt \6d+Nh2bK,n9{5BawW}ҁĶqH33e.|Hg ~;,{/!(s}}IĞm6yw6A çjH8ؑ(t{0Sϵ/$ Ș2 ;yFeDjp/h}aRQ8Y0ĺYOyˠuh qcN 8n,R3C BRܥj*h+4Z%y)܅J Q/AT?<HdHs ˹Rn(LV̓S B侙 ~vӆr5Ɇ#v!M \{ 7)|NNh)]Fz3wpHxDIJc'pij5LۆtAXb۶x2] Ƿwե xΘ]@ h7)bdM6(GmcS]#\/& C+޾WflckY3Q+9 mNU4=_& Jh݉itTCB!̌׵(q':h5B EsO<AUyJ%cmO {J Imx]6l}Y8 o@ޥ@+3LcO? o0Li@Fg,ZNYJ5=*\W_>r!@4V%}!3CŸõn̂D(bi)O+ v)O];JKlͿD#儒`Xك~p{Qd%qօjƇfV$A > >_8Z,MYhL nO|TT2sqS҉Z*4eD[qa]*Z$2DlgzN7*vS$ ߭0DxI`7#|vSG {߰L+ˎ\n2c@q4-3Ze"dL#( wn)Xr5xLX'r6&]_fkӶ& p6GǮ_ RՎ >.܆O;I:߮'eks2 )}ŹFL\I!&3K3JblU%4I^DڽGt#faɾ:t y΋NwD+^Y ;BOu KK'ax6G+}9` J$ nQ9WwFW'6%#W[01  Nc:g6LMH}"k5 T#ɹCek';,WL菢 6MРZWrJSiᆉ[C3 a;ZπQL>%oVjv͊-HY‹ -8={cbםČ ZWv=уy[3_pYoo>YRO"R-sx+\сM-K5R{g}K{ p zmnݜ7B(:Qq܇ܿcaI R(鶣Մ8+-)AIO(2b W치 FИiMͨݫnqt Hk53|TXU`O.!JP0V,(f7YJX6w,?4=lj8ߥI)Ouv(#2͠>; bIy]1N}ߪdg+Wh8gi/m:C_xj˘Wd[I~p͜R 40KIm!:D{= 1)NA"&}/zLzIMY嘸#ҡ'SxC6nD?1vN&Me&P'Lt ,0?3[wsiI؏c'ג m#D<=YvF@^2V *mA9%+Musm;4E0vON~4rkN׃짐fKge\spXYk*Lײ+6[aOSp,{Kxo QľOFшL)S–jp.z F r.o! NW,ZH5ZM@#x !ˢϸv&mzM>MIt}M\BӼ&؏sL`Srx}$bRd8-lgDMr~O#ޟl+6Q>&MsO`$;gv#ԩxV9 rȱN#{veL^YK_PYȷ*{)uE9hPĹcDk$z2)"q U"w!MB#\܀a5ֻAOFĻ!^%jRC Y,xū~Lgezit1ǘ7[$=6?X5lתvge҃'ձi., NNMCTg|& y֜pV` ˘^Ha:O/oh"[O|'YMoVWϏ0@FM Ҥ_P@w4># }*y\<<(dBW(~1Z]JB>*ޗ R/5=0 \ K%v>!￞vȂoU!N0 i%nAhaVUdt[ОXl :BqepU@.9L,ֶ9..nrn ڍMd б>=c\\YP-1PS'vCt_km:%_׺3!W{=ˢY 5( -uٿ oqׄ M2% D!! %ch+h? o>P6J5IvUпW9#W Ԃ}W  {L?4ToKmrowMi5b}"qGM7o_,z.L3\z6ҥLk%c ϣ8M}m SޘX.Ezjx`x\ߜD|0h\z,D(ythTcpЇb 3Vc{kR$ۑV2#}/R=?)3خ Z!4੢nj |˂zۣ%̠We8FʦKdA~W㑉fSesFQ+` uݏ-G>AT<#@ynV^QQscӠVFWuBbs햶JWj b/>JP+ Eف)) Jlp+2+ܘ'Ua|twl>W} bD4s^HĻĨU$'rÿ߂Zix+IB&m$p*DcNMnǼǸîɋi=pzDۨ.*u< !fɖb[ Z$! ŖjR@QGw)kݛZRc 2z=bCB w ++ypC _dr@>2u2Pp%|uq39:ۊ"vTq[: BfBx[6^JQj}SlϊLRjK';=tN a-蜝D8`r``pl菴d CaĖ W?0vdګDx@ %YÕӶfdZEX[Z9P̯=R Pvͤ([)աY0Zcvg/BTFI_R>WS&lZu[d'5aݐ+ض+:[Y.UCEx$}O{t-cWP%wC+&lNM^NpUSqMtc)\<0؝ZRnB)̚,~ OSڊeeݻ-b?7ݖ-<*E:n)ՂW#ނ;L kWAHOcQ`8".Jq1%kO";G"\/9Ȯh%7'DzEy'~|ZS#,fت(=W376_pk82}?'0o HN"h(BKIxqY~JS_ E @`6e3լQh!TiE*oo^*%^>{= >k.e%b-(Ł3:jiSm e81d/8TyyE(9`ra@Ր%pAdy$ Gh*'eFK`8"M稸lk)/22#fY0ը%HUssMh}50iO攕MIʬ9^0 qk筁 )у\Ψdx{whb7gxD71{g{G75:]nIz3Rp2QӞ]dːyxX(UASd 6ѝ{ʊV5&`pR3|$=M]so t< txL7dX\)2 np^6̵LkFo@k}Gzl1̠V#TiB9J O ׶rn9I@7a)08a]`CVq(*Hz<1LmjCl`{McЯ| 8BIyiDeE 1"(oPMg]GH,;p!HNKAH|zېO*mA9 xg М C(M69?5`^{< L?~PA|T5H۳jF0QEiT f:;+d`Ԣ/sZL&:aՃHCWQ-Lz\*[ 7f\~¿b5!_($}Шd`ѽM? sz@BL6_SATc=T]F˔;j T ]&kJ޴`=w>'{Hd7 >ۨ1P^ f0hJƭN-N9^Ǭ2-#eA_yK4:gk I6+ ڈ~B,P-Ԁ[B8.gV+ו!= !, 5GBpnC*0a1NQd;ZѹOS*5}N9)jP;_ -_)al|aaX"bJP|}6=Pm2{+d+Mm  l|,y@"vrP_ GS+{aI2_Y!]< 6-ņZs 7ZgG[MH3፿IG!LFm s9ղrGm|fgUE[&"_tvAo>ۋnB9Ai Tbf,P1o5XȚ]>#[7Mq= T3c)uFm= #;hQM\}]B/p7So蒆j=&CN^fψ̀h]5Go&Q#KEAڕەLr^"$ щ s~UI1cxu/F[#Ϙb8"E|\t?8X%jmJE-20[ @=U:YG }1VL (0zxWk_fѢc[LRIWyS$5'qЋ$?ot\odd~=nZ2>Io2Di;$W< sCB" r'ْ} Hc)6c pM<0kďo?at&68'uLd>\lZ,xkC%y\0lk7 Lo0]yxN؁\=xx.LT3&.dZeޜz8xR`}#z?3x-F@! Z1[JM-=sF_=D@had9@1fp![G)-6ZRh 3CF1E 饐:_/,O|Hex@D(e)ͭh$uaBuYs =9&.hNKnݭ+0v;I@ƪ}붍/-ْ\ q*GkxOΫBBEF/rœ:h~ 0{|eF RFL)WW_ Q憧biVYGjtWj[Ύ6$^흋Eq@ᒮxDU7|J8jƱa~hBwc=֧a%^1J1 Fr5Qڴm4j<%J ;7yE4PRBj۴t®Fu t"ēUT'!fl#?3+mqVB^)dNo4F(13k.2R=L.&wq,.#oŚ·SrWXnKQFT::h KoSp9 3n"7|hóC!^j+ Za1 ~p=GM5<֭iEnNp=GZ5Mc7ע_F%Fn1ݭjCas }5sڧ,"yzIG!'@rbxrVɹH'\~`!C)oȪ._P `@vMi}ł;A2i&V%lti .谨, bY|ׂfne@p:iU 0B9Ȍ(TѨG΅£=8A`}ChL1 WVC!vΩѢhٻ5i 0,Φ&}ɔ.#UYZ8Fi-{|VPwTNT>F~[1]wCD=v%Ar!ٜŸڍí[)xI.,`YWWsnCI/0"GL (5;w f0?SGWx_F |֫2gF!洂>#e{d ΖK8tv68DY5EK]\5o֫GåN;H5uLs| ii $q|JV|VKjghv1tZf F`gu!9OW}=!+{袔 ᳤}ax:`[ͺX#YR\B*p`jQq0U2:fM/Aݧ!S#mHPmL]2[\zk\HZ&@˚nsPe.zY3dTe*5?p5otI1'-(]ݬZ K@RĞfBR!Wz!DMt)!v\-T4$6UůTyCW ДmN+:v;\k呪Bzؚk96*ҕ Aklz3Χ{d{I(%yx-}wP *)Coif+1KDD}d7Oe K~'ܑhذS%h%yhL˓NخTY-0?ɫH*G0o&.Ir ?aB{\F:+r6'wI y,6Йt|lF hᖮA**T \$Td-BE^hrw =-6ɀ!"T4w;E0`,%&B<)*WO:XRͥp߃]tb*"SrAUU#nXFŊRF "X'璊 6πJZ I<M}8aۆΕ"REcvN5iC1ݹ~^[Dds. anDKD8hm_7] ٠r5 UuxL .:N@ro["m',h}9*8R(2AOjrU%+h_BW-mKU[#?z!K?6F%B+}vhrD%&x41uDo UB<) =SA{V?K^2G|rCe`^vWG67 jX58_xy%z;&?q{D'wAncakCW(r8RG>F] "7[Wykyleltq$kҭ>]TvZe|uYU˦ `d4Wt\ce#aX'h6pK|_$V h%c8pуliSx0nɿ![CUFc֏z`]5GDS]\~%CJ쪖а$eZ6U'Ȯ$|uUOd) a;v "u,ۘ~D<\iJ9! r%.%Я!ƏOXh/UnU,G4myWc=%γ@ݣO~s>w-/R6rf%5(0A&j`>(σ"ɔs{_,l6U=oZHRogdX!ixTҢεsrf$W1[&T8ImzM-KX3v-;JQT rKDT^':^^_U+- \ckGUX>["%H*D V;ҋiͿc)XB%b$@ i9YABFEu6ۈ@wBۄMk a`&cD\AP#`q7 t꽳zl6.74N6bsr :&1jaZmߢ1roWӠ3324phm:aZiёeB5odȦޞc X*4FG|ӯo,۔l7TYK :C3SԀˮJ6`cs <-7(b߽ -:իF"Hol#i`F!I<' btڶp]6iyFBHw"me ߋL6Ḋ!sqy_]5@/U L*tY2P;[q?"0KKRV?[.V<"ikKP,>kdfcyKdpIvuz[ul-%2@hCJdfXRܥUqvP/(>_BBIK0фv Ia~hyEa Mq,O ,H :?U6 5`n#ށ33mCס)f"<q8b`?"S[9ugnBAď4$ 1MEW@PydEiQ|W׉LѰi/ ) I!:䪘IpGHz<;:Bo(m 4 LJn6Gan:elY>) S(_*bZAq6;֤:(Xhf7"E4U͌œϢf<ނnwxS7# j"ʾ{pj(sqhCQJ-['$2y5IX5:NsR.6;{A?.:C.o"CInmYk]LW3 +XYF#:5#v6]:F8^+9OЯLϯs|&BQ25Ur.to|Pw6 42Li7XE5Q!J ^qkQvō?;0}f?LD6=.!gE&BXuգ|9ԆAGU=!X 2s- Ę|$ 1 g6 @<ɉ*ގ,UE,~'qd!εO4}mKn؁~`ke*| /7Ä/[B:KOp^${LA4z:= ;-Ei\me]+5rcroc=wEsqFK :TE /-.uÅϥfH7%*L E_" Z^e.j,RCj){yclx'6rnrm/|>srxG=n}&}X7JcuZO()f)d1j5Q aPX\pQ 3p8n)g4g~UPڸ a|Jʚy@?%|M&.oJ1Lr;@8kD6̮2b\RB~ʦCcc` gbHߛlx ՅެLU5<ٹ-l-v{4tOk&sP2\6\jn^\u4}g2NW|Ɖ { lz(N%*gk0`h$p3G @%[*ȳbsZN/dupatY_]Y%nuۅ,ȘDPB^)_!u .F_j-=Rd_Μ{p„h84wNiPE@euގf* S\ #e{^Q 7$ D:-ȝ&Lu43 +϶<&ZF1f\n9zŗWnN#&SWj䘿q}]-H+>@[%N-!t]jR&&?Ay`Rv6l>`9BlU(W6̘' g_ x`cU%@L\bt& (XUF%Zdc5"}8l,ãRBKG jr(d+oө#0]kz$ҁb,H |(ߓW~R|wNQ_17Kgq& ߽cWXy2}0-C ĭ(:Y ͗ }fW@]RoCq"f3r\CUdxR4:Ԗ)0c4fmod!`fvR\ƽϞ$U.4dR~Tݭ0.>Z A& 3CG_σU'nu5 o v}:2뒞 RSU8Ge4vVq_O/ʀLѐ+ն;4:[/ĻEҴQ _ j}cf2x+R}IX9= Ў$$8>ao8 $e|*ջ_l]/^W5` yZvcɱ(YKNNhRQc:bDW{sI^izC (XƋ)ŋ 4-Zs.,5JdRԥ&}L5;:^)Ap1a;QԉpEؑa%CD7!ևinaɜqqR0(ցʥLd~GnCIt/.]8[$=k @g@)6e|^m_tٳ;-VT2{%2^Vn1C Bb ^pŋdj[&9bL*y..J' d z'Q닱/~_6"ה  k'27:~+D3"5 ;;E`f'MB[c$~毜.s.D\ zV73jFޓ!BҽDU&3r<l.!{c8|I*C^sE&:0F3 +C mz,ȲUNɱ牬*ŋ)Gv!ԤM $2@3wA@ʂMVxTUWnDaEn xSR8d( Nپe*X|I5# 'tl^b vh7u5@o¥ 8Nx:ibiA{w@~j!Dcau*..&(Wϣ /d@Z9)R9of|#:#%l+ [BkBc>p+RB_T]ʆc-î cH6w3@φլPzP'$l}V0 7eK_K%H,(Qt 74- #02|ՑD9 +5\ݑ]dUQnylDіKrkJ;[+VD"v#ěı )a48 sGj8\pk\h0|KaUI􋠕'3Z|a XJ _O}H7RٟͧweOb[X2Eliׂ!NnX+ΚӪMͱ #kl,QJba>KbFJC/'Q .GK}Ќdⱔ QcjEF`׷rs ҭ׸aZ&ʹ@Ҧ&Vb0p`IPgHr6%e[Zi-"d-<Ȏڭ  "VOrV[e*vQ=ʅv(4 +Ȏ< f&o/r9= $}D0zE^7G#QD<1Γ{-R.0꿊C!ip!i2r<5.XLBL]S1όǿ_󣧍rս3zC69W_βjy!.2;!֏,q$9XրG%6h$w`Y_u`ߘ6^uJIqj (~HW{)a[ygwYT5.8li$C[f`2ӕNڥBx0(/肫_9>y.UHdp\PL]җo$5't|+\̼ᮉ0:/`0^xl*#gV:L O>!%&J$m 6.l_ǢpuʽҶ<~8Ĝv_ JZ ~Mzy6aD|y4:v|=l:v4` K %rPو4|(Ze5*.?fBWUѰi.V=dm5Q,#`"M lRL^R6CM_F0g)1BBcwGQD4o^ya *UNcDAb8KFtJJcq2)& /_ wLxHs2~<z bxlİ"rwx'i0Ns`? k&s?WH[|Q@Kph4EyH񝿾͍G),i1Nj,H!K Am0H1gWc3aׇHGfj,әC=}mcgMd޲ 8um7ƁMH;~I9A]R){. }(TvnӃ'I8zN.(~Yg)uggq2rmIH !^nh5wZJAvv6`J5>\ sㆭH7=v%I9R,j3#P4n Qtfnmp7i=Z&d$]i6~E Z+5 Q_0e/ޒLAv<4/" Z^r=UJ3DksWPZNMsٽС1Ktږo6VTlkQaI:9Ey)B{NJ2$3횠/ /١؀[9|0jIQ3lBv[7=;%ОKF0Lܦ''2Awu%vުJ _p9=aۆZћc:>AMD6|b!뇫N:=8ڪGoŸ5`^cNq_9|Խf[nep!)A.wK-P1цbGV| LlEzDQy ?6"FKGgc!m8;NK VExRc_OaӇ9>B޽M >AD#S‡pw:Œ?76g)UuBsG-Qջ#6ϰuM7lg-LVb548fLO}+:]~![6G/HGm@iB2TN l<_M|߄ʉ̀yj % gYw02ˉvn*`lXQfݮ@2SIM.e w&f] b읙^e_qY3^/|>Uʗjؿ ]fODÜ%4h aTqdGg~rRrdsv\TMՐ/'AL/SVm3{pPRT~Eg06 x]WP< t[sFj8(f8(&)m%`ŌͫM>D&NlaT؍Pn-s,RiNoOb_[NrpBi>79zs_u&,N5:~K{Xs :_P!^!tX=Ԑ$q $f6T\Q |Zh 6޴a|J}xGS0awˌz%߇;8گjsɾ*uʳ%߄2KV #I_SL+ QC=Pmw9ףl/# -D5G~;r뉰~[K'p|FbVqvK|zBVj!X1}scx`~Lka;'GM+B1VSO@?3_췾p_K SP?Ny2eE`%àikkRB2JrBI!GG(u@GF8.:Aݠ` DӿkM&Ydq<=W?%v5Y] si;QHא,H/',2.gxn:bȾG} XcB4;/ڦZFى Y~u5I>z}vBvnv[0D,0hPPn$VoB2"/|,Vt{7z~GZ{<` } PuYuʊ5|U ]sdy6,r~PHxpCaԳI'0Pj`+S3`q!Ɲ qze PhVxe[͐&Z{r(0.0Kv *Zd ewW~q HE#e/k}φ[' (_ 9nWNoHTGu,02v©W ~VTiTۓS4B4k;8T2yc&͏~mjoMnjB( 'uH(ﮆ)ֽƦa.@Z'F'I"0mbQ49"}މxL *NeE[,]yFJA3DC@Wtme! rcMXB_Sn$}Q%@Ⱥµx۩6TIר N {i4bPNd|ߑdFЫ r9yM>~-R/˽__iX2xޗPX~L?{ ȱ)A4'Hؿ h#趣^v sW/Gߑ׋bVġ* Hc4nf`%!s7QC)`D4C5՜8ip9*Q1ה}^cb\ }O74D7aHب3zd]%<D(?Br'Xľng|kH~.봺%.>C(4"PLTh'hwKɺF8=*0*kI`@) y֒Q 'w]Z'7ms/vk1f h4nj Ah!>|:< ɶђsb|Uda0҅/Ht҈Ou΁{2=O pEYg78[5%K ,_";8 j.𲙏 {ctr}BFzS&&w Y=4a?v_K"ϟW|qELdcSaqCͰ붇AluΓ{.sH|+| snWxPIO,㗚QGAئf/<( {K-As4KS@6{j`?lkQVsQ/ҖՑCQl t&$B|drcA T#g% MrJ-H糿I|B8泜(ZxTK@*zpHgQNs] %g-cHNlyvą⪪bZ895$hn]-<&jfk /f(';kFC{ uĚ&? M|̉W vgs9 UekqRAAمkLel'Wt> QQMa1f 䇮5Y>^rW Zi&0Xy.IRCwb4s3s2IOܥ.2v z|7P>ܔS`.u}Vu8O Y']m51۩&.t{8*@zvbr#:3~sb$>.0O90/Ycxk/(2!ڋ;֫[EY>?|X[9 (;55 /gbk5#wcӔCj9U>9f%HYx,JMnrԨP;!"g rm΃ե:- Dū!ޝDSaf䷯o+)W6r$ɿ&L_ɝx 7Tg6hG_uW>޸ޔD 8. 86GnbjN*1c,pȢ{ &x .#ӷv ]y[bc#J6S৚;6s.2 VS4CRO%!%#K& >ҥ@B^cug p9o .^|E^rf[tr[PC' :-K޹~yNv\l*%XLVj؂6m탼\C4dɧ1x]3my](X>! nV]|SӟfJ/vYaXOǜܝTʹ}k EV4NUṱ+skqNٺ>/%&r;6`jtM*/f=ҡ נcUuW:Iv5F$4\j2t.eШ$(;Qɘ8b`V*t/ArRpƥ䍠X!'VL?77k6<M)D3h`Xtj0AwKGLAl)Tחch5 *!VyApuCp{,$jU HdDt'%/Iia4 }.wPgVzK~I+D j"6u%OS#R3S,^cǨ zm~(HџԝTYu̝kx1|JN=(Uqsm[>Qy$OjtoJ=QdLw E᫓#k/RTzӕ}5zv{d>6R$Y8#2T:b5dsC`u?@?aM'k,/Hd 9QDAms-NT t|1("I4 4PKsI@)1-g*U?$o) o0-P}`CT )Pi혪{qv 4'rގ,Y}JcC(EXVzϗ$ -F:Y96 yeET &Ѵ)G۩~Rg0&/QOK!m{hEZ?1k׊B$d4<+ώz 9N꘩ ۮS$cͧvgz=8Ӆ"e)m5 VNL]>@ЯeV^b:zrH\$/9qv}r0{ѮpڄYm,ӠqdY^}хv1Nmz;z;Y_2҅oOF0?󶮓J>D~ޝq Y >&49l8άJO̱̣$B2r4G6tVиޏTJ-x\$*}pV::S('i4}_qG'ZLiCG/f)\&I9C'Y+7II:DREw֏ҫ< .LF@9;և#?k=@IY700p*vjqc:RM9g\횼NI&N &hz#}S|u]v\bڨ<-}>P{8t X6 0E-%*f>Zе~f( "[Vt)w$u22]q.u֧q+?B12w26vJ. pZtXtp1r՗`&/2Y+vnv8ᾬћC8Zb]^#AF%Vં> tK :vBC&= LjfԺl$4v>^!<ɗô gw_{a@G\ S;p0b'G1Q$4z#1,jϺ( ]iv4S'&h^՗xQŹޯHER +RDخ>51G'4པW#  ^{=Fqs3}V .IX'VE ; X \vYgW T*#2"Mx2Me jQh(Zaɦ`3fD9JOd 13VHȅvaG/g QxHPj2hkufx-C@] Vftnpm BZk*2D 4F[XVR.`I|ح:4jq&4:kqMT\-`t>(rZ-eY x&jDvu(aOsD@w#b*j0-S1XЈZF{w {0¯`kxɫepFMO'JWcm@cuSc`aNRg/CS2It|~ѮWȣQ~xZJbVU㎢%i܏B'(ΖޤLJSu!lӁ%8<cO20_wµ~԰19 []?#Ob$jUdzVDtXk}m'xݼ2}  hS3Fo#aVV߫ `ſ`YDb+,hHGEf3Pul{NŎ#)Xq^%̕xf 0 )dj^Pw_;G\?ex WiiW';;nEFDtŤ&bgLck`KHÁϰHԀ-G33@Zք /܆=ޕxYTYHof[o#M$Vh(W(ZJd'*N7 ҪS4mrr00JǙ/?Ox*,?t/,(T9A%up!C Vb}SA+vբ*[ͼ9ZN s\KUzE\ s NؓgP9ح:( Ԯ=)j/xrvze1+G(_T?T+RdxnHݸi5h{A $'3f?36/dUAPk4MI גũvCěYPsKs[TJe[{Ԧ8t3̐K3^X`!qs+o wȾ,?F7>2NLV1lՔuMBjt'FhkuƂ,VkrwukUoc ˨=EtImb& {`7@1/0L+\rl- DNc_m ȕ5Qޏp(~$Qu |@KN  rÐp!_L!/޳sK`Ⱦ߽4t!"bwhc6Z`V={|_^FkW6͑oc! %T ]v:  m\J ެ6W9[0zKi[VKG/ f^{(G KD_;1~lޞБ@lY'ޟrh~ I-"c1V! 0EH.1bvW߱mmWj+¿b|K9 v.@?7=iJPBq-5lBh8ʈT?#kbCte@` ߦKR[$hdJ{3~#pЫ bn-rbv謫J0ג|6:Od{4㹏/g$+ݸHAY2!Z?gv­J Q$4-C7Lʼ"> ʦ{"2d{JpyآP%u+3c;/4iE?P!gs4))'ކ[˹Y[;17 "u]>.ajzDzxUߔIS 8/﯇P=ɚgEz ;(r~8UFP9h ͖`\|pLmvW`AݦlwȂUڌz`L,t|sj6.`( >G$!{@ufGk4֤!&c>ꮧKΚ#G@LR% mJ\" u1ʈS7Q%np)@YcJ?FLXm[/P儱kQNic$0f & _vAkw.{d']$Ԝ&/]qp S eN=$t(q#1\ IcUb;` g=&X~7qLEl^4%9凞ߨjÞ?").c<(peb,Gޭ)b1_@JG6[J v9-l6嵳5 sz8tGr0JLVآl^Ȗͪ\kBO,5U?ߞ3BUOEީ,4{.R&ëi@g[kXm 6b\>j7@2ngYQо+!?%< xtfBP/VNGuϽG Ώp`SUl\15f渳Ϊk81j>G`ο셏) 4Lj|]_G߶ًcq-Ȏ~hy#ז<|-Hiě;fż%8A]7JTU\%Iippˣ D7]ڤ1!Y]\Xr Gq'Ny4*Ӝe}ċ,(Gi~눏ss5 t5QPbqjs ?! vPJ{m139[$'>\ݸYNN)mϮ[&iKy(vsv;5Pt-9bqk0> H+yh<FI?"^ Q?('`v*K)Uz2i灅1Or( 7*ReERGk,NZ߰+}&4 x&ʛMMK}_l߱{?g שJoO#kZ{l#N;la+f*TRv'%:sCP}Ůokڊ;oreVO110Դgvs-uX];wM!zyTlςK邶E\x]͵>A?uEҭ-x7Td ʟ/m~^T: >Ffg %4/OLwOֵ`zӻ;iFIRd,V,]eY/:"LËg=c^r:{ :WH\dT!ݯ+`^^植E׺c2a2"^i:Q@IqfV8XZ3Mg5 $U>w!q:,/yvonSur{E%kw eByAr܌ q Cr-3inG5 z;2T h[U4U9Yfc-Z׻lq*k.&WpH!wWeN&F(梂C. 8}nZXe(@5jjW=W(OąhG5o󢌕r or_r6MIp`nU5* pZto' _Ѝ2N1'oу G~MV}uTjHB9q+8Չ\ٴZV/eC@-<#CϐѧVC mc^c t v vL _+ 'xT}ʸ^3#r8McVT5wHǜº(뫃exNٰui־7>6ufx[b״Ij 9'ͱyؽ=Cb,b,6_G TG)V50 S28E{;? b4OQK((E?VBC>ng:E9\oǎa2 0wx& rTmPjK׼ 6dQWSɐ֙mRB ۞qZnT#|If G-a (H$nK#.dȊEtϨ\*Uos鵁$rLF$s[No` -o!ް&'@†pN 5&/R '=zsKăVUF%˜DU[{f^ʼnܗ{%bTԇ&E.72w7NGV>=t_yLou)hCt5$uE[$˓:hkO[ӴO"dU noA .Hȱkq"JlP yJ[(JQ8ő#[]Zߣ{Fg.=r5O/v$DTsX4TۼNvhDQp^%KkuG׳$j)*ri Ѿ pi;mﬔZ~&cn(` h"$^ZLrUaPL)RwyEfq=Y' aB(@tnm7b]v UAU.c^AN7ZZ^Ղ:i`ImGHx( Sg`;\2Jԛ#?O=0b.\E|x˧/=w`B/  4 _p|.+HXF/({YrvHہKNj(%=E<_ ىY@=N Z+ʻU21ǑoqLVpVG2uhEϚD wڝ [F@ ZqږQqVl؆ Q;STh3: n=t Ų,c3>IPVE vt\Ml 0.cF칓*@ZTv,4G8B#CWe{9Et\q:*ei=oʌ(f}>f߼aE0fJ+hvaA-UK<evG+= qowH꒘5JTփ`' h8]p72 >з{Z+/Tf?-p35{1qi=kHSӟb(YN^b<^BzX+{^)'+n҄#B5g L6a6rn|'R8)! $i  U6 [14zlx)n9'k wQ\c蘔35bzMjon:06Lj0X1҄x tlc9ȩΩ|d LGꧣD5p"` 36}Fɦ9`S}3rb&"Po p2& D( r zwoJgkZfUx/B  S䡤fidRr9 zkgFu-vsTG6޽ߵc)I J9э̫g8(+m[fIOf;=Ttk??amB7mvHEi*+[}` VxnvZ2(fuZC]᤽Z hҤ_(dSJ]d6|#Ff 兌48wJ(0 } EE0LTF1pCB ~}z޶fy-D3v>XYheZ7JJ 6I:k2 }VktsX¬9N.mhi= j9<&f^&RYfᯘ8+K^Ȼ6%vz5nWJf>=< BLBždW+ >oOI;рQ79]2+fN*۽Vl⻻no8kא,cK^ERJP sZycSJ7 (]So[V氋7^w9%cYؿs1_eI@;!/j} >%p,ѿ C~;91%NAm]D\{Ζtآ>XE8i_܇"\}_nnezJ%2o}1=کTyՉBJhf)"†BL3`$,L Ak+Ds, $ج#@G/&:j;i\cZ6[Ē׀> _|iYa=Đ1}?5(BmI#+fFlR 4O&, !QLUTSOD8Ep|:f>Y\x|2E|{?F ^oѪllw (yvncCIlӧc+NBz  o$ZE>%5m&iEx[ }c!/j[VaIQ;@1vč]W%# !UטKub=5ؘe@K^֖3K@0`Y2j:Ht8ٲ䄥R$vLN#{Vyy}iK1yIyZ/P}[N`ͨ~LWf-2@6/\Kʷ&TxKtz~V+,``փPn &W%\ؔ30%8"U.YKa tC|Ԓd,yVA9XB߲`!^RD|* ]S: xâɸCh]2?6)O +HZɠ[TH] gj e"9yɷ4VV\I/~IJVOmR %阛*-bIݩ$pu6q kjĄVh:|]1'gRی uٟK:1#rY4 s:/AE~_G*!I Aݪ초 I9LhȢw"Lç$s̕a\913(݆7fj.Q{CzJɥ-Wf؝{]`ÄTF* #6Bk^3rt0Mvl@:PoaA֦Eެ>+Np,ө^lC?4mSewӎQ&!] P7|hNdܒiV:nl>Ĉuԗ fHPpڧjM8_X*~m!WT鰡OZ._wB ߴ | {ōdO+`zy#tA`LpR|÷iXD^3ܗn%_4aU_Ŏ-aAC7\뺀βcּzb!lqF4J >BKp+FؖLعOs [PnYFjVKQ{@_W?ڳ4e%Ss]s8[ic{ݛk`:][k }݈-EBb AN1CfYk8ƕ<.e}#I,Q yVBk+ lgv6eu}k񅨭xCiundVvW?PpMWIX5Sw35 }/A[O}Bιmpz /(70`7ڗ37k4ia fhDxvKo A cV~*t?W㱩veZ>R2)(|'`hĘ51.&2MQ;I#qdj9_H5y( 7 Ŧmap<0)m=GBEG!If|A %t xjざ@LBawEԎ8-X\SaU krFuyf5顺t1|%#bWKmͼT]_*)Gۂ"Hh_Q3zf5:Ekk+}er<&z(XSR2{%뜀FIPbF+"KE(> ,g8{Mѳ!m^Rr9/FIܠ)s0.RۛyLDO!kIֳ 5#v:s9sdЇ!9E "&lE ݣ2H' p2h7Tn&AQp0oi;FsMuNy-m̲[7]_GH st6Es^x}B-L87%S{V?ճ}~>5˦+q0)cgYwɺ?6F-sMG[%nK-_F$O1kONC!] ypskpԺB;F͋җ9eNW.*F;&D"zS;5<ݓ0`r$L@'aǏgq ;bj 8se j~sTk6vk`=_JC.Yi0Kngh"S(Y3E~ysdm۬븪G2JW$QPNdY m4D঎gJcywÆـqTuGn0Mx"iVZMY~5r1ShV"&6X@)pR^z7ٞR;0S)E?4瑅-P)Y`32g jW6'c h=b # P*MU?~ ^?7giOЙ *>HK[WB6? .ҋMsv%+wd17oӺx3vOu |Ȗ=ulHKO=NX47\{oZHBBaqrY_۠XtH+eLshكpA$Ls~^kc}i~kt/ ط_/訥cJU C q|{N-1Tc^m:Ҡq .ٺ?n 3850)~n^ᓡ:9Y/a ݷϲ@Y&wqwmk mFUbzWӬe)5׆tgXJWmEPjj_1mt̔R3+Ϊ@'/[Y* -gk0,b8Qډ*Zֈ($b0`sch>K5˦3s) Sfp&.1Yo>هx1>WxNBR0kъ -,eˆGcY -V)[<@ X7ȓN+0oݼݖt Bb'8輷 <7|ҽ 1AfRq^c<^{j]P匷{`27L&ys3}.8nBq=H-4a{/bC"\~T'$rqU=zC,rik*EorT$rI"}gYɜZe(ʡ5, KU_`U!isSge J{}n/ٛ(0Aυl"X~ .j &J֑L_N`S>7SOeSD|6A!7*n0'?U#bvk[i ȱ1Ҿ> ̖,­0}dxg8&?}_f 6A~lvCr`>\4Zj,s6Tϴ)y)SRCjmซ6!;+ ~P#nfY>eP\7ܼԽ' b$Z2OI̟MaPAUg$TkLJ7z,'!47Y'qnk̠FFճ27̈́sSQ3'<6Cxa l6/O9%Jdv[ J3.6 )K19(pfrR9*q(Q2^]s:d0B8^cq j30:PBܾ͟nedBHs}'f~d[Y(1?z=P:T%W>mSh h'mӊ|v/@7Tmd6Ėz`@N [:w4M 5 uG#i\=7 M#HPIoZl^7珃ۿnl4)QH .5r܀;$I-gOwz&atkB*:Aşoba 7*7i{y]I,:*U (NF;C_6sJ U+vIt3[kFq> }Y򄽎,N)j:y2!ZKji"4]~s@p8eU_ )`ZyfC5ppa:G$+'aG FSioԛ >Z#I|QQB!+8ݦXk? -HDkzz&xa= my~zCPo'5cۣl_7=UDy[xꝀ@ r>x5Ac" Y^2=VX\ Ą!o?q)nR-&r`y~e:% zN!sٴ͡ >V6K?Ka:_}2LfaMKp3 tm)}s 0PE{Mo0ڈ>n_xZ="7=p]._%>Tx)Jo}O9]{Bomŧ11?yPD)[֗eՃS/aGn/\>T=t\\%fX79+4?ßx(//JWa} `jpUs;ntHuaNRSV/׌2:0f:дeVS^I}Kjc Lm1&x=rfb0=#f؆7ћщQ~9еJpeF9$fmM(j\&*XW|@`yhQ )?Vhnp>2'z( 0%?Zy )u!P;rŽ2 ew#07T]-T.R]k)z I&Лmt`ZC-3SCŔд[s׀F/畡SdEcu-g2'x d܏S PY[ʚ.J3j앚࣑ B2; XN# H<8@$u'Pڜ+wEMա `^%Z> M]++'%MJK|hIaa1h|Aqг.(e>ڒHe>rv+2 /+|6{+蚫z RW 1Q9?ǥw̓#Ayf)E~nB<>7<7ऄb`ōG9Ad^T;x=B>&UsQjvZ-tZ n>)9~-"߄/^r4_dm/ꫂS]uyu++Bzγ?h/gŢ9*dvuoƈ4]ʻ=Jmςu5voR'Tq#Nc_?(VLzsr %Fϛ܀+F]e~MH0?+ 靂&1V豹JjIk&hRRjI|QGJ-"EaV¡=B+ j`>1Pi̘Z` J_/L&c'`2&B +9mt!*Y{>Iڋ-&QN\o o6v|KU@OU{$cQEca.C 2gfU]J $Q_k>8c)Ȑ}#<h>l>ędNH ~V'_pis :\a%)7$Z`&Bz'ٜ@qrI @^NGu9I;|ɻ@4fFm,qH]t#kFraK /7DuhvlXvw\s:djR ^pRb/6U8soR#8i/%=T sߎ/ z^}|?LEXm\`e+2ލ=WZbѸf|``~QB ⭱bWO_[Z Q)ܺ0AFn 4<61㞀4P _St\lAGw jr6Q!_ Ǩag)?x`g;࿾-$[Q4%;OZE!PzNTpVR{2Ju in[ο'a_4,5&{C=Me cu [ kl_EpȈשY WRB{Ly,^~ӦqQsE|!f:ƶ:O4mf@:SolڹUh\w~w ] r_=ķA)x{EXK*Πa鳂校sRq\uRiEZ }#Y1Kky*taK/W!=G)*Rur3Ƀ|ԁV<ҫara߀SK+"X'bTP?eלlyFa>"unY T; m0[g*g˛gnCgHKIA=V*Rƙ=n7pG5L$m~/9O=Ŝ=3nɍ:q;/D5d=KdN8;PO)Ϩu)E>eJ&Eï $jwkGnk!Ez 4|ZZzi*Y9fg".@0SO אo?+H9ɭJ6ܿy.%YSlpgLU1D#,I6d֖zZhp`kk}focR80!\$2 Fݔ{gVJك)y͞WD7a qs K% O^+1&>hd򑀜]@{ɇDQb@~r5g(nW^h~g^"PC|aoeb,`S?oVj*h60+bL[⣦ĚdsH&UxkYC (ߎi{;Ui4sd<2]W,+֫Q 7@ErH{Mb6zLqvK6=([z Q2^[H>+I0KQXsC^N+q^V8sv`U 8W̘k7FdA (̄xhoh=xI6* {kt%;)vy wx i=y8bVM2plZ5lXˣC沽5Kjh }wY;tV9KBA=q㋕+r,̲*z }Aa2` |w4G׋6 dX:tRB{K&*~OoY|9}prxoE|۝&ZШrSvaɆ3шIPZ.qV]gō#0Vpu5y^d7zN`u UZ2Íf&|gKbǒM3H`tdf% Qg/CFf_F ]t7[f+ty;ADgv:r}wivpj0λj݌L餣8|/?O8'B*+j^6眫D慼GTCE ?QQBjHSoPsg2 dk=Ohz-8>סPBRq٪ʢVHg0.IdD4WSlc/jU481c+jٜɰ} k\dpw Fyn==S33w y"`rkhm>YV +VDv!=BfwX=:M]#PhXCq'ع SGI!o9$%_vY#bH%msr =(; u\ Xr{/!Rt-6A&nf6Дn,`O")f2"Jb;l/בAv*B=B+R f[ 0r—N%Uϼ?D>:O[eK;Ng Y&"Ku<A~k> 9 >:4zklf(A36uJ2 'Ѷ̱Da=5t,[\7Y͎ܳ(+u 4{(.wĘjwNLxS')oE[:Yb w ŷE=m(cףt9R'?$(IP28dچt;c~?V|A'ՐfTEE4AA_~ ¡ܞru"mi%K4YDA=u4>䦸ͤ}AIO?  M+"BWw)oi߇X;.Œ::U< gi %#< |޷w1RjRLUJtt0_)GӠ@ǝ;?k=|-.?dn|PneKߠXģf :j>5(\8u>6[̛ ߸y/ޕcG>xjN]kMżUJ`+M3)d 2JH[;ªa=EqQB%4b!G7Tq9Yﱱҡݠ ^lטɲ wA6Dr@nGc[$)շjȋ Ɂ}0tgϫ|MQJ49q]4`oZQ|[ 9L?po|SX>1/L Ŗuw+Ӳā'PA]r$jwa -lJS,/fc˝G6>XEj6أ* CH2>SV6ٴ&aEF91 TԿC);ӭ57 Ʈ5Y7^HG {B SN]G%n7x4CƄ6О'K Ź1j~|t; KrLL[fWX8jq$W[̞ݣh>mpN3śuJ]=m .'߬ɜlY=捸š5MNq]p!4UcSI { Xlꛝ7Q/6_MAOK'z`6ŕkvGv!F:% S'|~źX%9gh;\,PޒDpaC^9Z>؍a$6Z)S($a%`)48"6_=rևz>nVhy1/l_\#Ua D M:lg2#)²(@LR\\jx#)2 e &$ɫxO:ӇL+̪1 ܀{qkZk40EKEJSL-{ 朒Rꒋ; C5}Qx%0ޘƾVʄLY= zh`읤[Nu$A秊l}9ta YdŐ/Q!S{.P Ԙ59N\`LvMݕ}Dl[? mP7p178zt#/+EPx[IeQۜ'kvVn85@8XF\:uzl$n t6Y~2ތ s>Sbu1uץJd-r \[Me냻F W:54?'/Zz?zRGC,>xqfW cBJ,te L9>'^ۯ"̝?0pyf^y Y^Ar$ڛ`&Sh?Onˎ}5PWǣ$uq:ҷq[{(+hx/DuОaI隳!"@۝/mm2_h#Ne|IŞW@HߔK) 'D bxw-pGٲ#Ad2^w;)}f ֨,Ԭ6x輨$pqCR(E A氘R=cm Ngf{6ؚՊDMa x#If{]? iZ|"VdR|iUH;!/&_o1rH`6)|2D1匸?m=TIZ%ɤ/4B$W57qT:"^nnT2GnXIy=I2U>h-;y`.mi~N_y+fs\rn kjNb B1 [fBWW&-[) p%yeIٴL m;0I=`R]=:/3H:? Jw&vk@Ay{:&Et?ƾ<,fi|`=FtI-e:L5EWV%ǡ)2qp?~+fS<"G/ pzWi<%탿XdHFg>W-auD   &mЕS7 -&8i553OE|#)wa˩[رYzyTiq}[ |V9ŸgF֋"(."6gbH^ c9rѤK<Щlw~u,ve֢b6kJb5Q􀒫!sGeL6/y0@b(|Uia9 Ȍwq(ۛWPS ɠZ*+>OE2Pg[YD,>;88c#6Үd_=2_&IQsx%|vF/RXtha~T pc)G*,r9KQsnAwtcQoPxD ']י @P.̼ sfirJ. _9cLLNXCmE:/9yG?Ӧ,\ǝh/}X he =cҷ Y~v.pVi޷.Or(C`e6;K~|+KYoLj͕YS2_Ckț"*.XIr'0ɜwC%m05*bS1u7sѶJ3o>9xMvY zjzi]GփQ*5b$Qp r@18h"R31&pȌ|]"f($!kXQ،. 1+32XPc+s<N2Ķ\M&6/:(uBd]f)˨d^|1 Gf(4y? ; Qz79gG,oj)RhUGBv3SA卶nrnRclTwH7r&=6kx8Ԡ6rԺ'pdtKϺ waHb4+nee7 јNk`ᗥ$~3Y[vPZ3g1_y6%PIH0;wjRt61ro* j\J& f+$\&]Yy^z?R(/H1();}Xc!O0>tRQW^W3/\eDL o*߈= E#6?[< .O\_٨ÜqGץR!Ϫ4‡_SrMrЮYr1{U -E.9` QXTa !>88)l.U)Е:>Іj; h|a;/h=1VpK05@0}>?w1&י2\Τ& FqdB~HU+ ǀK[jbۛ#ue }8VzĻ3d2HVct֊@p@D4,p:…Qu.5Ո*UUg7:mYIm:g "ٰMWh` #0{pַ~9U>78)vER->DRĈi=Q6,;!L*/<ىrf( #er4 ŀ`@bfncJ"8Ӻ 55C{94Cv4[ca'kYr!l.#+^_mF^{KL3h5]n9>YSk <EroɏEVSt<1WKt(ZPhѿcF!GO25Mk7Y72UՔɾ[ SkEpkB-$]<[8Ie!79/M6;)XB!uH a׷6RtG0gq@z$$۵i Ja {_#6K$fJ@G)Qg? I'5<øq -o~XҔ^?aGU3ȌfcϨ-6>m{/}A33ќ,LyȉK[ڍ;O8aT^p?rx }M{u#P& >6582hJ~ls?wsc*x0xuL.=Ã[;_UhΑR_; к%?|R뵝UyG≃;1C2Q`q'nQO*%.GUJn CbN7gg/%K񢭗$0փ#I( 8v+.{G]Q *ޔ X,m=ċ~5+HL$$h2Dfd~UlCsA\ 侬9#e-yH!¬d[?"B0"2VjhڊAKr?KgbUxH^БV6[>oNM4Tw_ k8/+K5')A  ӱ]U\YL ;s_].4?hFH-sOlr}A;FAYHo.Z8S`D6M@IfUFIfC59A-zsih C&f 1C~o[ z&ict5 |Z HX2 q.<`)'!U{X(&@#ss/q/ |TZpACb͚\fD/}f_&4d~rB|$';YZ >7-mbкlc"̽$J W ?[O3TpSz DPׄ3~ϼC{-f߼iEeI>%UPf5o0\%bRΜ {z恉gpcAhUA!-쓧-:]Xny8[H7f{k \R1:XML)p8"q_ڃOkXɸ^|nUnfE" jw3w><6CV4WOf AJFP*C'DtLtdv78FkCTj46~E=k.nI]tvk}--;C\(VL TdyQ@KǙ_]YZI:9l]P=Cc_'x+~%||_UJ_#}ErS:4C`uqPZ`XK٤.|װ -{痍]\xh.|ʪq3ხg~$ 3",iDu` v.?bͭG.&ru"}YNm.%rblwĴ6#h}7(ӊd_Vd*'3I X"Jd{R-z`2ќٓh%(BR eN_x+yb-t~[~0E Ғ5TZH>٠2X1*UK>4enyIwAs+(vj٪ #O)b bc;Ud%ߣw V٣[%$5%ki M)nf)[hOpu'Rqg3 [B ~FUJbX)8#[J=?O%br.1DGvb )=KR8E3E"Bkӏ^W UWw2uʭtuH'僀5eGArn2J,x;af=+sWc}r8XXZ&Ln4"&>ժ #EQOe*z)R4w>= 6ARٌ+r&Nebq_=1(g;8f40.c}hQssQqtPBLUC ?Ӟ:h `u qU.%Zgu\jPWPTDG%R{, <{lGU'd8tU;:c–rJ2]rƤ'ψ_Jw@q\4KҘ5P&My]bQK/l:==_bӣľO31 d]CSt 7i))"U3"۬} ()?3@we`l$,Wౚ =8q ;#cm> k ;ZJt:KImŸy,ϟw`_KY'ĝ%1UX{&xS/f P8j4!/|i)˝AsH`J2 @q&I?lnݽ"f\&a FdCYhf:]!1ڝ`A_u?uб?zA\m! r GO,n&eQXG%vm8*@ m6 ٛ'Fo@qϒv˪㐬 } ux}6iro.|qD`|4. RA|\#Xީ׷A%TlUN+ ﷇ1,W|`܈uIG5L , QSB{&@\7 ӪȔιH.pJz'_գ։M+|ƞ,n$W5NkH,`ڎg)93ӴwX6z##9ǂXrBEdk+#i c.@2uBZ:pB[32emA6)Rwd`OWR%ү@r t>g&MDgCX0E^aF)z>r]:I URpL^ڣ*&ߨ|k\iSZuݼ{0MVjR S ΍O?ZW`gŊ h!2E AO> X* EVZC/|qzayk#_X"1ًR7 d*JzΤ jq>8'a S/OW^~-Hg$_YuD;M1o7p_P>^, ~F 8Tf_/3ނy[M胬fWq@JxvEv.LSe5 f@xs7"  V| nZʧ$UF}Km׬`_^ϒYXb2cڵ.S+9  lB-2ZU_$?z-_$H=&#{~Ir :A;ooᲂTl:GTı pX, ?Q\4 t~@Vrq*AռpWMG4$ekPT!Tnm(_ +Lx,fRU^MV 28yYL]2>G(}?a,S bJ|o7C'ܪJg e+6R 3(8ÕfIB)Z;{8vǛ['kU%F P>oaKrV #ȬtT?Oi[o PS 9/4 PrOk.   d!_dAliC fBH"^@AGUqHNkyT/L 7 D?(_g'PZ*KV'`cit 'xWlr{T |08ja J9|Vy K0fNmOK?)?Oi43ʉcdembĿ"7}=b2, ?i$buYIrWܪM)]/ɻ:ksNyuˤ D{w|h'_*XHop{عR[Ujwm F"hFm:%R7ƔhPFSѡY(FEW HWa2VXc]ZfΓ@IOSdMYX=lڒ՛z?v\ ~#&4gD `uhbznւݑP.F\x;<Ӡ' ߤ~Hm541-nfZ8H( ,i0%25dvD'NZΒ(S0>Gmj!Cjp_.kf..s)UXևf2Xc5zBh{BqT *,r[k-Y>ː|(r&SM+Ubί8tNT!&H8@+'PDFo??v 2?o1e8ZtygF$bzLŠ[ C4U뙈I1z1 9dv(zt%fe;&T4cfV9-T(m(!M(H*3o /CpXZ`<iG(gBvۻY]tJ GOB:Rov㳸i[궨h":9*X fx1}ŤޢfʡQT.[ oW뭢q=PQ.w۪;A{dcLFrt ɐNZ'e : I b=C<4y\ea*r-'^×w*ln1%<4^;I-,ZYԫ<"Z_t)3M#0 kbJnWozNdkwR_q ?I絠}eq8#k-Vu C-LUk9>mfoW\%E:Z܊&sCr}ɄzKj}MT_XTEуpq]E{gwܦI̥QۦR(aSq6ˊly;1 ifWx{$(F&|uh4u Mڪ&(%K#`B(Wdq)'10vq9\,qO8u}E?. .\`<1bJ][؟@T49}?|Rge3Ͳn{:E.ؓ+fƴ(4*8ȽM}'ܬ]ؓsE%b9 τV +Y&5"ܨ/ȏw5_ Zrsz wz]g\&CE12U> (l W Yw!G+&1+,|KʄO\ uTT[sίNMtT ߆HkorQ"p骄ʜmf^m4kشd2D=Wc.~ᱶ)}gX '<@ Jc>j',~fO(oxi9Nz{\]c[ b&o[8$ @#'(ʾqzE۶Jqq0֥LF4.|_=P&F}S vUF$fe۰Jqqvͧ͏E\/G@DwyZ2x/dB0R_?`wS0;`~2i2H/,hOT[ ǀYjj\ {[$6T,L½n֙ïm΀ssp6b)a/oQi }h/ܼ֚H&_jyiWV)KLmoia ,Nm8sJN%QH,| )9?1.ʼnyolRo~iSQ<' 84MSfAXNRIMSn$D娥!&=s\'EnHZs [i;}ɻw)$xЯK3T`s޶[VIQ ]ޗ̇R@x-;K="/V@fJ`w?D)$џ  w ;N몮2lvenp MyXxp؀p4 M%>嚲j" πDX*D ώ,}uI ̮dgg֦%Eaծ>os)#l@lzdgy+Z/ëZ C-3:ic +VWr,Kq)*ziOH5cO$#X Q.ʛ1IC+vTk>3y~Pi8cw lE dqZن!b. |I/ۙsWS_Pqr_LEvDu#:ܮݱ#($ e`%51/!X"i`}`ȉ?(ZlhB }wِ[R? ٸs'h$&O :?U)7#Tw㟶yf8MK`le1B*㜎(]x`ĞVl`>!"X^Sa(WFBVV,v@=p}?|Md ,v>}6{|K !wq{vƪuU u6v7 Vi)Hֻ*caGsm]r5"4`}>&.ɔD^s.Փ:h:z >oI`nZ{Kj Sa4 8? YeѠ`{3hF _xkQg4rqZi Z]5X&Sg> uےݡcN0{f%[gBA=T(D-B6k Gg(^Df`.}NV 6YsLtV!95kȊpP z)>0\ D\:F⯏r~l}~nC';wXsSV((೿qǞy֖7A;+^r}X̑܎%-pEjs~"Vz1qG=g5p;(sUnSR{"o:B%!FO6F'ڏC3?uY ȁM0sDV ړass4QGo=odm+IR>:WUC&$`˄;\܂@. wf#39aMZ"'] חV]Z'3Wo"qG[` 6gE>,Xp}jBlR}ʎh1O].?qHvlZ"bJ.:A6.q ᡁQ_*"8s]\ #ּ ePuD'g@L92"^ӭȆt|Pɔ ҍ!ʊ! e аV0dNzo W@U7>sdH wKuY\HU@ auꁧضqy]pX GB6EX.ŸF > /DUj aόkZ3` '&"DraRwNs3ٛmHjꆱոAg1*X]e 61~O.pC7,L_zBn9WԮ[Յ4]a[bcאq*֐UW ~demEh.+#x-~Sg)0㤙K8+ Og\ 4BJ>p!bC4qWL,oU;q{D„|@S3 y8|*Ofq;H. oƱ1[}^l/wu{ Тk.MaeK.7x`~p XptdƳ<# $˿e䧲HK=Le-Xi1MMFxjPbpd;XAw_gc]>]cmLJ>ɜiqIw>r+rQfa{5Ek+!I=UB %X`rn\}ȏmŽt1QJY'1)i42>VMoW)e7>KdOdr4 kIPK+ k071yz iŭ#> H?2_-#CYs8v\:8u2ˤTҴpLl/o{t8 р*oy'> j]6$MH6zz@-bFb87s]L\i0bIfFZׁ=Eķ+#4:.%$:rh?w1O.sV27&f xFT)fv"D&?GYpo6|7hFs"@> Хí0%Q_'o9u0MןbT0WZ߮%. 幓H\d.f`Er߽!TU"[!ػU5zC0O0F xRiYFSes~Wm q~nO'sEw:ټlW8؊?E4kǟ/wh|@OuO "V=%a^N9í!5l\ʶ25o r, ɋ! 0mW)rqkF#h0۾xDr”F@*BarJ RL-K32mGa3T=C rPB.́Im@񺫜N.iDJ8Ϡ&Lz)Y((B\J>n'n7tdGu tGu 3aA磾QqosjhC~<]݈5'!fﬣ;n×zJ6 HT=(؉:jpqv0K͵> 6+}I0>/g\H:x .O{#"'d.rw`w Pf>AX2)k"dF~T4z!Q;%eL$[J {Uj.Nyn.כ} > 5h[-^15|vAW7 sjvYkHbV:˟Y =P',<bWUiqK;Y8Qo}3 B*3|ρQ]\Fi{[EDVY?[ka":8l;5JTNчҎMG+Ϋl*o.9% C] AeJX+^:gJNPq=y5TIcZ4O5MRˀ+_ YF[Qhe%2HQW Z@@c,@@foK'U 3)Rѭ 7]y,_60N:2Wkln4\7:}v cekd7&}ÊL 9A.~ >z9jDzlxv{$Uq\PƿpVj'P 7fnő2ǻ).;6+&%9w'V AG8|-aŰwK5R$[덴 ɷC̙"ۤuOH.^ai?dVCamO;LTGQ֥qMRF"=4?>Y@~#T7mbIn;r0;2O#b .( Vo-Fd +Q!/.̓i4np׌}GRk *D= (sTaV]I?7ٲzao3ƒZ\cgm%$5Aٸn~n}.Ln1yc80ŧ{بMHIy'=,6`l(@H׷{[L~7u'|!* OVxe.q&"iHhu<G1Tvs9m$0˄W)hpÎ`iC:g" ɷ <%X#bU R?Ք'-pU X?8.%86J{ 깭2j'gy*<7?{iBQg(nTYwdojdDwOJݳCd ɅsV ͙8R3ƊVW! {a?jsj_='YgtV|/&Puc !'5t0AW$>'$EVhsձp{jȌBE C3|0n`H&qS9$9^QC1@aAz^2IE{\\wL-FySJ$!m*@SƝd+Y$z%5u 4kd7?|N@=P=wInVE. O "A+^+9J?,`\8ZCtQJ@f2D3EQ+bx&3=N5^Ii 1 5pЗ5jٗG('O7ޚ:7NE'E2o{ߍTF:NnSi[@.3f7C3=: $ܕq`bv~e,V, YOĥexVm;_&3zedx<nƆۤiLvyrX ?L%|qPϘ:8AjnyF-}*@z :$zi}c?J!+ֳYq@aeh:_HL8i8h~[ =ĮLH7\:% _ h vYt3+l/T4>팿bfݷ1oxHhOb896c؉baǬ8#d@!Aʱ  myݪ-*O_tF} !84.oթm&/taU=7utBV9 ׇ!y%S'򝀏L$D/>.t|IO=C:e^ {mQ<ٖ@'8>_ag %:f=|>I3=~SNMe$att}CwzTU ױIRf+8*\K[? Vuz/m3@'7H̳/@[0s}̾dY\ުgv2XT ZuVM5=cOX=ԦCLB'^2Har>@ġ1)-oLZ|cCn\f=g_`]ҖS.xZF Ma*i4Hs6T環*w2eo6:_Bn&H3"r:ݑcA4N}ND; S%ݙcLXj.]άʥQ&Bwf΢ B)j/=ܻ>ͱZweƓ6pDu2C.Dr'ŁJ%)QWu=;y`3upCz:CVٺImϓ&1PAgZR9T7R&U"D9rnٽ~B/٧?TܙK{wRn9;x{׆UhAŊ?>? إ@g[HWk(e)8Z Ɂ+7-' ǿrJфO0ue"H"@Vφe#I {PV*3׉{`r=C|;o9\Ӑd19ܲ RST)$qS{X !H85K^Ǻ~]➉;{#3AUeާļct}^cG,2*-q%ΑL{xo,,تG,Ԋ*ٔ#@ ԢEzEMۧK=\ .Nl\ ,9jV|cCb_JB qHP0W^#LiDwpwHKAT:m$yC]O;xxUWtOAa}k6aΫ:y\&Cm."%D>q2ށuus c:BcEv׽!-n0Rw,c:I6.T4I" "VHt Y]\<%H?Ӓ@5 =сe=IPϋw0| " [h(e>x>__ %h=9B!a:Ŝc'(( \w7WȽJ`4BHrdHdH cY>s?eD}kO pJS>r=10ޑq訠,k=άW;t+ǿr)A,0v .88 q`R@VWF{M}y䬣`nTˍaơC"a)\߈.Ӷp\m3b]Ӛfu -aX><s 4pkgxܤ{d*Xu=QYƼiI a(E(x O\_l۬W:!&]C Jn:ՓMfcnJmdIJ6oZ_$/$GĎî͂ :ԇh+kɣb,!m&-}-jiR^c|CW8FM0Q/ gL,+s0ߔ 8-#/~?'y hvʇ42> q:{R5Psݰ$ez r9rx[uRC3+RC%\v'Z)e{4jM8TX{!E у4"g }Ҝ|Gpda A2~\~#NPY-Z:sJx!Z,:qu=}}Nr 78Q"n; {SenPkjͻF4C]tW7[e3LN7b& |֓NuWl~As(F1ŎA$ k_T! egG2ֹ !?mG$z}wx J" Nx?#[KXϋ1 Z;L]]f>ӆt>*1Bq@(à[Y@=P'^!`UH&f1( VГԌXX;;RjwYm([0?aXFD`->*~.nEQMЈ{74j5uv' ~=K9\x'h*D-ɑvA iq[#rcdcx]U1Bx_saV.2HًndK4(_H@\&)YhaPyl86fJt_BM;.% ѕ$c^zYv# ?x饘ݕKT@s)EΣΉ~* ZYQNC<"-EBNUp')I[7=yucd{՘sje )t \)XlnOaρۈ؏%L^Ԁ&ٯs, X,3 /`~hg. .ŶX{wd1}GDXL[5 Mvh:e|̓; &A*N&.B%MFƸ z[`Y >qgȒ+x2Ic%Q l8i#fp" 1R9;A"u ͮZg/cq]qk9D j֙[hSߪ HT)¦Z (2|[8?%Y9dڭ歾G) 1jm,%r/OO;wF RF$r\4zG1b/8MY}_&d\?rL AL ̯"zr}%ޜ^u_ 97x~VH y "A֝? U`u.lň| ^ߦQuW.9XgHFYuVD)¢t$|@K^:_ȗIF]P̓M7ڼZ7 폐FPQ},IaF@K"!7q98ng1rFL@5Gˠ)=)|8B P]6n1iRʤE:flGi /IE02 7Hm@y!s;Ea胄a'Rn5!!oܬ!gNDZ_Hoص d^/7U~%v:-n/(d76ӘT:9,E~Ayc_֚@(Y'K6xg l9?94ǵ9fW `r*Z :YԚKz+B9K!R"!3"Y/S޳OLLR~SA#@&Ivg%g@ش-t*k@ y /cHw9u]`7>;O.!Wd\ekmˬļ,7ceW̝vxj< Oޝh Pِ7qp+4?;ˠVl>DStϡ疊dsY.jd [|7]$47zNa ް0u)FϟZG;jÝTvb:ԥw2>/1 RھA/kC .U/~^̞Mc`vi3]-zjk^h.e^PYBaKT$ZR_ { 5V*7^&FSMq aDfS^hmT<{/Ծl(Q1H |ue[Sm-BUPwܶZ~!;%1P@ӬA o61dWD4H$T$` OU!æ֗?za,g5 8'%aD]p?Fʝ0D,,!%!a/S@= %,}Ux//jO_p-]T򝓹I_ث*hÛJ—HV{L?ΏJtC2qT ȣtV; ]#:61q=h5l\r}bji Zl =٫A홫=v*.Pqb'nFbM@P6U-EQ?<ہŃlr/o!5l {"^ɴv# @k|mBFRa_.ԅWxKԾ%d蓭Y R"uAl;H S'||5Q|QZ}vbgi1y@8V _|/іAwٜ#qQM>-3t~o:ǹSMvN&'7d=}Jø^yQ8ת#3Ƶ{ǯՖ*)=[53~X'>jaIN4t+Mι;z%lZP,@vF &|RR& =ټi-gcvymKu+ bHD@"/K«|%ꕳ,uJ A?`@άdHut|9rȽJlϪ":JOOWsh7S_ I,r"Ern~Pw}XJf˲_0] #hB8ʷq5[lsجFA!0]9N e-XzyM#uXٛzȄE07MLMݩKOA 1O} "ʵ¼q uot¯nF/< ֡Ɛ0LJYPWìatǔY,SP{RGk{8]@b&zCkJa}!K2ƃtT G\T:ذߚ*{ۼr8RLF۽^ms^Y< u{F]|{z$\V$.SHdR#VB4QQ('k0%{XVfb8IZ#-po '\Im5Ga5xsN;'TP[P)XLe]hبol 7?~9}1C_\ Hi&cYʒ'Id;v~ ;*U;o1 l=Ȑp .x'8-_~VOҫˁ4d%s/Tx%W@?q1orU,dbanB"pk1Y_O5 s"/ TUӤ6D9@9dSȄEY?X1$%l#RI'R3zQ**knA݇vۓјVƫR=?̀ /Z{ޗx%aߎA@X^nXEoi D<|r)*|3svMaE)Ѥ\)GWs`; pC).+_9[!jF0vܱkF"-h\LI#@O܌1GY`KMELq}c\j5=Q:6mp^2֒vԊ* @.WЩd1k,'D$Y;؆`%4%#VRW䑗HSBFb# W.ؑjUCWzxk:c|Az*>jyHc!s)/7 >~@ÀnA58A@P d=b)$fѶ&k-V { AvǸ:+sK N:+<G.qRcp ~DUjS[za?tMD] 2:D O0bm_e> 4G;񮘘_ّ@3@-&ըG;I oET3 P2GM4pCK.|6B$עm.EE1Vnp 2~}LD.B{z'&' {Aس( K ?NHS#2ZFwUye([EԀe1sh&OYEj`f\ җ09(}/r~fwdɈsR.rLukmras }>\ vF-D:ݰc0 5[CHP%mw</Ƙ<'fP+gXyLczv"ĸp&-vPym-ݽH6$䑤@"!{ u>I(fot,grZXGX92x6 :F.'rA)JA،p/볠4X Dǯ8ukd ?QX2T'?넠mxdYEO./,E5p+.8{<Ё_PcS!R:ݗw}ZNVB`ރ4*Oc+|psEb>9G\Me?{Qx:$X6I;}"֧ fA$ e$͕ miZn5-2j"I69E4OnO갧ÁkrvKK9+W‚6O%oNe!gNZ#~R.pUjUuKk~Ratiq23+Ϩ =֘)c/?l 4zAJ@6o7Y]e1l|VFYYުؔjG b- @3!)tW׀KxmVD%A]Xï $/r[[s aa?l%.ٓYDkJO|7e珽}x>BD\[4q (,LCHt|kQO/]PՅaۛeXA3Ji3PygM{CFoeS"d/٦~f宠ҠV|)4{זڴEIsƯx?O@b3P*0lwܫBz "^N'5WFu%AĤa ءٽ?`w:]_XXYn{Br)Yٙ;#cv~f3XrP%NnWV]| ?&p*95*ƳCt3Pl ťntAs%ipNO ޫs 6Yv>+ >a0+ zEh}0j,@Kt{d'|L04Po;R݊-)uSk5v](\E,}_CžMdMhku1(64;ZydJr 4KQ 1H:tdx4g@xE(Ucspg8iM'fV./*ӒH} EȈs9)}.qJdJK@|$)劃4CA-&,C=poQ)fu2@f"lpeu2M;-N^Fq5u~I{F$Zn{MxiT[GZ{[E2.3/O.(XX3zQ=g+mTӝF6:ȀOtQ' ۶Ԝ֟VvIᷨ.kuٮ|+U>Fo>.sdMe]lV#'+19'<!qg50uea.S?#~d+)VKHo¹o'ޙ9UU-ϖ17a<˶S(xZdZ`?H*)6;rJ߯ sFH0;_iGuLC<M:&MቭpoPO|H(hAo1+;0jJr#U ==[ZX7h6g~ܒJ XQNczt&sνW$-4y':[| 5gb3V&]Hv?7pL*U^W}hS<4Yޠl'ƫwW>׎sT%@@4p7L1r F. B6; rQ.>G\sv1'΢nb/Я96̤Ok\,@.49H9lE$7ƒv%*-=T ?82XQAIcE#rș~&RD}iWb~'j'5qq;܍E}PY<o\PSE|Mhrl".l|JJƉ2ޏE=9A=:eчw\,*aշRF~H:ɒe>&v,l@%xoMߒ1Iuulѩj,{h?Lfu FmK EE!C!:7Tco6c6&2ݐ aeERVeEf*+Ȱ[^0􀸘s͘^mt$R,:$+ndrm4ڎϷ77Snޠ7\.dG'9V9&NRؐ>CW8AX]_::rsYs|1/}2"kpX 3^\_=#[b^QSt&rE+ *y**L=6J GuR%c$+1)X!U"H t\6P\PcWzHb+I1p9Nۙݫs߽i'ұV .MTCP }HTSkL)YzH g i,hfir%iJa38h4u'fpfdw!_?k @5ѤU&[:ގ-5*n-Z\0Z][jH UV-+d~~7MyqK%zCjAv8DE_hӜ/z/>X<"DQ\S?yWoo)#:Ӏj @|s2R1e&/M[+ߊW##DV*.Q|IIEj1)&U9P#c?rDY վsǜa%5ג32#?otdxiq}fYW,k F.]Љ#i(|1;p>U/KѯQs6j Y>@M:I$o?P7wWBK ߛv$}NîzKr>1q`"VxV~Ͼ^GzU= @$[_&P2 HB >Co9F89cU^${)ҾՏĜ -0gzFb[Ntb.C~֜brv17ߘ*yg4{J?lx4[k_`E/v;^{o =zo#s.Q gqtoh{T.(~3\\y5Kar=8#xXă]< 4=ݔB W԰R_VqtA=T,V'%?3.$<:uV*O#bNg"ӅG)`y){J!ܮO%*gB.TUʪRDW |s} s,3c Fo;8GܞT|bI)mW-iM^4Wنצ؏E9V$~5 4ٿOJ[1j .~m{?>*&aaE ;_կKVD^>`74*pEt7 AAQԜTN$R5!cE/19[r^d>c,!D,J!5בvhLRM_|&m"cT'^cЍ6kb41H g,Y}GhV/y^T$V˟X [r :{-1C`$V1Az=Ď7F#5)?FB&e2p}MZ%e-JS wOrP6 %'Ge=YPI_:Kj֙-6Wey "soRn^I ϋ퇠'kTB71 3H`*VTf!|ۭw*5a|8?,&*ʵ=.=Y+,Y(}(`JN4b |0 Fhera] WGᜯ= s0$X}RƺdM>x'`RK`fGpӱb`G8iԸw97*}*ϴXQv KKmL *tgZm˗IdnK#3Re18o[\aIE$GϪ^/Xt rUNF[OhxޜꝣSaDPGcGM(R|Q/\ڒ5 L,F?hήIQqĻ}5E~i3@h fRϵ#˨bg%Q5奈 jtEePmSԬC⦍AV?,-T4f ,c#tf_Xj5ƝF7IaC*A'jQad V w!)s%Bе ?d~승WLA5ԇ}T̘ri,d2}?tX\Yk`l䵌jU-R1Y(G-م`ҠE] h0o]V*Ae=z e>=Jsܪ|sY]WڗB~ѩ$@˅i]X_@_?+F(]&pf{riOx_3?fNf2$|$9MwWUvIk D2fG\Ɔ<>QM^C <XasM`Am*7IKGhd{JZs]hBN\Yڢ7 ?Kd6u[{\•qFP=~JJei1A1D?gnnRڒqM˃B- 1~0#절qѹ>>;njbE2Ĺ{2{ ?k!M@- R.CԤhV|ƴsPbӠz!12kMȀR䱲B`Xc֠x8Vxvׄjqѵ +`<״'j-&Lh=4VlV'qD{+ G4&6c>l2 bp4ډ Ӕ,*&,ko|J8_1X>j`eb &sn3+]%`@<_Fqfvt,lL1ڇњby ԏa蕉,9xMrlnp-dU蕾XL').++?F!Jn CK~i0/ZٽMס[|z\ r)]1(=( un󓝵S ?S^lZ+qeEy߾ %~4.zmHg(,k78Mkdt.X^I5 ^\ӍVebHq܁mo6c)%V FUiB}|C7Ǔlʷt wz&P&92 J(y2^=("Oc`.3 \[M9J(:r|&sӸ #mʡ)a Y ڇ(1~1k;l~=.~ uM4-P~{M~@qLLS. Obm݊fyyI"Z$7P0UòRҺG*"k ksZW-{,FNfп Y|ע\CxsDBp\WnB ьѭ݄_!qL:1h [x 8J!ω048-Wnxh>ʪy=Ozf֞im,m:~5!oYIsƏ"9[X~}F)Kbdh K}-YZto>+gBDd7Gd0e_'+rGr/75J|=C2S؜ynǥ;>sM7 t<`$jLxZfl{*Oɒ+Aؕ Adͱ@#Xo ߾e _'Ŏ, 9@W]wI5&UL1P}x6g8="QK(o=0^"LY;׈&𘛝ʃ:`JC|s/|JwĴKQ׍dѳ؆z!XR^_8o_-+_p! cbSGgfcLM+FHS`3;:oӑjI[L!+Ey -q>/sTRrΨazٔ- Uɠ %YrwvdzE :Cڇ_e; /95b%w,4X s % >[X;N Mܡ/ 1__?T4#H.:v',sn_@Bwu<^Κ![$mAQ=fTīBXw$oM9KOps%3yjg 9Jv#{wܝD nv#y G^EMl%@Щt;8k0XŤ(:)|4ǷYw7 UGG~P&jR~lq_ <״vx ~"zNj͵w+<numRì(96CÕlbrqid@2vR<呈j ϣ?`UZ)7&%3a Sb?}s.NAEUG[.6yO( ֟6YոRΊ80RO䭰(l\YlJۢhIkDFKxGm7E9Y;) g~6d,˓Ն, ?ϴ]ףY?: TZl$Z`ޜO?.ii͠Φܲ>1$xT=o~]~`!׻ N,t ]%3oc-Rc{v-j7U CRЅkшj"`+ C:je( OaHXv mU̜\SYC~Ѷh/D]73oR[mkj,yS&B=~iˆBDYYV]ލIB%ϖc*s!'P~,.Ez'n {h~ޯZ,񷠙Mϻ%'Vw)R0fѯd#?)J!/ԽnFq 6_c uWh cft(vgtY1~Jm4 +HonPg[M%[Xq} (nA,􊿛;7't";KÒ{d&֪؟KK\xA Rv@D86lSR56k2s2*zRLG$G_ͰDCrLx-C*EbU;PY: |EWzlj.J㌒`-UIĴNM&!n̄N5YEDHi8+aS]+[2TPͲVK H3)TTir'OMߌNA͡gΥC#^'1?G:^N@{ӠɦNvZ/$I]p=CLזּmoA7eNOu7R7)\W^" 8#sDL|t)q] өrgę&# . TQ@TWtwJGAl~_Q 3#f,~PЧ*/G_Rɼ[!YyʱB1 ԋ{7Bzn= s֭%znxAz8!QW@kєu$nfS.>:O?5HT+{7.DV%85Uiu0R+4"0H`| V8͎CtZQU ekj zejT+N-Xm%۪|_JtAFxRPeDmXE4L!g N.idBWa8iGmvzVw8rxFꒇWqwnZ$-Nr-DfSs7򁙄q;5%r/aR,d;ſo|UǚBf݉={ CI2%p>Nwe ?ٞ+Lt-^–;Yx%cc!d\")Ռp16 J#H0hxZI&6?2<ƅ'lIgwاMV'=y،aT|=\GLQqg=Y+~ %(:qL;!)ɪ(vǬ,g|"N8}D&Il "7qKLmVQ(XP `gEI~dAu3lE󿥝Di)%g4+#1Ozoֵ[ #JБ;ukx?e)B%[M<"x̊EH/B# ">aK{PΈ(JH&/N< I S 1oѧl-Ff3Tn0ُxU \c@+cPSp~:<,uY'XzJk7nY0KSU)ZR@[^۝5U.ƖwjF)P+UKih>efrՖnJyv)>,ee_ !-ru6[;j\_k?Ҽ₣uHx` [>Γǐ=3(M5Wy2;?^,ш:p) ж1A 1jsMVKഭ3YmCS&"=zCҢ@cdMđ<8W3rHD`kn-s}ym]N aX|-#4.&L{RGvl[VJЀҗmp®a}#Fz7H}~808x ث=5Ĕm!QhN3ꤾwKL]'#xJ!x"&a pDK^pnF$phM ۝![ &Q]] 1v2lT~g,KU~]}%CE }#>eJ{gH=d:献 B`xCNU ׊P/x7Szo+*تFe_06&onP>˯l&G@c00ZT>P:B'Vɂa'kh#IZnn^؞CKb::#~|'sG*GpF[pnxdϰeϮBe9N:_{ӻSQ,n(}[)\ E˥-#@:m a ;EI^%8?Cuy,G?wǼrhWM8CVS[PbjjӼbp2mГ͘S\ư<=FP t.|A  HayW;a|*j30"iqAG|^[Ƚ ry8160+/f zGe>c+nOʑA}ιOfBMa\.] p0i_͋zB+Rr=t3?}/t˻wQݹ䀷kdw1ܲM:r̄R7IԿZYA^^zāY/ FnpT2֐bJy]D:pz6}yۭ5|k/\z$Sgjܭ_fjy<GnPЉhG֠ LZLj:ǻ0CUR58 qCd<8JN؉p_ (~T5}'QMO^% d/aEu&&U0 BuU;3>;@Lܧ5,i`~5f-۬đ?D?x#YzζeST^ D5*gFl| ζ#,ulF@'t/yqWxu334V`-@< T]@W#^83r6=lWOJ[NJU컄T-|-a~G5)|vY̐kV,Cld\ EǿQWUi0toNԥJ3C0H/"P Z?ˤpELW7Ȥ!7lfQc&6/Vvrn?_}a[V!,=,vOTLY{=>B| xH$辀BC`,vStT_npa='I5lQ`o_G6qN:AgPB OFkYZ3)>7|CjF*{x[c#V;W)L|Af\;nNTWs|2To x4izfNfАF|O$b,+{?%P?r [w[cV͞rf-yO[Cn@Y/Lcض"}9Obvu-uyPik^H YdHo9v0PtR,[yX8:J_,#F粒SVr8DZ]ϤجeNhXp)ஂJM<Vtm"I7X+^n#=q\u#pTF?3V2dٯq"}Ky.á9ٛ?-G<Ġ1+vUbWD2N+<䘥GPvY e({/0V!R5kdIϯh ,=pit(PZWuq瞸C݃rN ˞wUӚ?I ,Px􍸃SV,>4&EkiigBdi.Ic KEoo}yS_òatpm$80 V|JIȰZ[^^ʛ¬)U]:Mco@Ec0v  F!L9B [ou#ΔjA;Fl* O NZPMoeȩe̩,`gk K&bUeUǖ_8.l! gf7&-j,-%w#57UCY2{WuSd]Oh|V,OcV PG}/jbPl8GuP* V$[ou+RoȬKyǰo SLwQ_; B9@➙`̓<7ڨpׯ@}{} a3ro8nK]3 f5͎jk"(UX~ϼ ,c->\hkDI?0>m,އXV&$M'-7:n;?>!r>'-# Lj2X"SCbM[2H ^ĕ\ax~gb-Uaπ}esnG7w!ݪg8>{*\Lv(#PhKzK !Z۹+_aT[)4 ZM.J֬>::Vep׽sc<`ۜb2F,xm5@ .vSa!:J nTĜvߌR9.GO^ĩdv_fZ{rISZ+>=b9lh@Z XJhUun> Vy{]gʕf.A80@ٱz/~؃mz$mmMy457piņOM1pLA"kgHB[* I-JxisnW۳]*{$,(YS^_~ 0ۯ:jvc3lPG1-=P-YܜZ4 M)v;Ѣ ꕸJ  D `XA !lM^ϋ&46f@hّ8Kèp(Jxkcl{$I 0h-%%4iMId7xO^ĬwަR.vh{XpR/ xNE"_iz:\d@ָ* F ߄Y"Q]1~0] 5i 2-|[xժ͖QkJ& ?c>8a~$R?K~!or's%uݝio8>i%;>"p lL@l${%>4˕c]. Ԛ Pa&^cپyu e9m)P<$I.ZAJ(ۇQN@)dӲJ9( ]@l[Hl':|'?NhnZ4 0S_"py 4lt10d皎Ri\P#8?N|>䗬t)юxk>Z?4=%p<2% Q6t&kR2*nLӔ6+V[gn4Ge,b i] hF4ew̃8kz#ngy JEgtF2l={x *:F:5Ԍ]@?Yw:ơVԞ66F"i'%FH@3}六64G:鷍*=;ch䘅;-XIi2FPbIڬ &ɯ7!LA%M~Ɠaٸ1bqSJmóBj T S&8횛5a% "aBdFbm39aT:XOѱ벀kq(!m,56A}tp3ϠǏK' y9/pDZD;lV䰯nj\ 考p ]I)AN~tZ8 @E[J5skmk{,&nE 1?XUI ae82M&Z>CćnI56)U[kma,dV/91`}k:\iud¦ _D ȐISCQ+kgJjG`8O\t7BMv@pi^,Kab AB%#EJ"Ο(eӿ@Tg tvX[`:{ɽ7K8pftrfl$k,E V "nV+o^3 28x YN2 AM#\u9Akbju5y!r3#;o|:Pێ7m4P?"bl4w%v\71RĹXL;td~'SR.N͈L>F/`ZA]$u1 &]^c{ªk+V35t {9Y-dz4YK3w1`\:x۳i&&ڡmK/; fjGIş'2Źe&/" t8#3[3/Һڢh$3Y{Ip|(=;hSj1 =OI|X-qq*̸xKXcb4Q/ʼ)/p C;i 3|9l#8⥾gxɹWpęI4qS+1x-yߑ6==l 4T)Ըup<ʛ9O#h5-ճYDP|-\b,X,ﱛbXK:`0-m\ *=UE-ޏ0K&ssmeNe>&Fɏ9xJaNdЄƨ*<;;#sasț'aFNY$LD"K{ի2PdC#ܾ}U~lx!erk]4ًhg ]֡"xa41wE:w<9 D0731vTjt-ng"ƞLy1lc;=>}BɲFesrVawl:yepd:]%xYwu> =R}٩ ٲ2ZD3(¬6”\ZIڀ&_c5d^XBc일r).=R#仁n ǰ@'ԢŪ˫ 5z~_7! n5A?m[[*ck(RE2g!ݷ,^h,LGC-2$={>йrqî+Hn\p-~B/7x4ˬ P#!UH PQxF^O;øxe CUi4:p BGQKQ#h+m 瘼XɻjSb2Je@MA!d'gX(\зjLIgG--3/ةh9 U;#5q iaWXs>ȜDyԳcԣlg t4o_RD" e ZA1B i{mp (uɑe]id-;iAxFJ4RbD NMB ?uDsQX %xqxW;_.bToa>߈+:j Z5-08lU_ӊZXQ! Mψk n#:fkl}uY}4R 2@th嶭_إG :Mӏ9X. ?tD<&0|NJߕb l(a.;sb1DC]@RVwV0H]{KTvMkՁK_aYL HOk땧e1/%7)79T3{^ #ܞHO}s*nϾi>Z-V#ުJeNQ[ 7UE@+A/:|=PJ_[slnڐw=Ddڏ}WJ6×4#F;G(اWt r\Gˇ7nP7Tg0Q^ɢ&}YYTQ[] G}3Q^~4SnVo 9swk4CBgE\LXRI#fh& +Lrޝ,0es2 (}*7Up&ݙ-: ݳv8ˣy^6;$I9Dy5J|67·:y4S cys@u|(;̰W&ZyX+t_IsP^FKS"Ȳ$n~H,T5#Jt-=E<;\:10aBf~ Ru;5lo$۴vXj)ME&zXyXJLJ ux^fЭ66| _vK F'_?v_c oGI~\PprGLw91b!m JFy{cSY&1p-ol*H  4md*h㰳`ж$Sq}O@ۘC<>j6 /wB[&ɵ'$Z#h_8 ұ0YX8>+WDgnDoT9T١hƤPJ~ \CF1^ jnoC]i8:B>y&2%ǯ , -z&OeTHculhORt+aطJOd2K232Ɍy HQ/nfL&QR3\[6ah<S4#(-DD݅R3iaxV}{cMdHQ:j>PʀLw##Q)l 41@u3Rv?)G<~txD5m7C3(խ YƘ*֭aLDyϬ[zquRѫ|0݇E82͔vnOw^^ 5'OhW92CʕXc+1@ QJ?vO"=Tsx6nb?yl|VbFϽKI'{(p[[ O(ðg "*4=p;iܜͦ[^fhTtT0 =-g̃tf%8Zqd K*|yVg䨒O3>ZgsÄfJLc)xXkCת>ޟX.v¶`;rYn"s,>l^ޔ!/eZJ5eF8F!?H>b AwvzfVG:]d!v5Kfmu_1`zxvZR9&΢9m[Z˫91N_ϪhR߀]=Un/7*Q (#tV+0S䣡O/ǴFAl!*tkfNNv?rFp%t=d跳aћr?e2F{K#7$ېai1!Ż]mˁ1,9@U愵-N|dL|N:wKqVJ6Ø0A=AKwo|t a+͑XU!{I*hB+M@̋#\&va7*!r3TӠ<,q?aFϘk~Jl#r!|Z.EY+}`BڌTь73\T} E8xuPܽ i5 *50Lfz`7԰G7B3v!f3ATWȔ:PNԾb _X9}րAn*v#cytErԳ9G],I~}N,rVR<,>rS?xg"F޽.g?.擹nu ?N_[ֵd.P(ƴ|ҨP͆@J0/j@O'zJ}Wn$!s't omTbPiZt G(lZc 0Z{W ʖ\[EM>Dev#xШ҃yO:)ZgHRH50e: 糬C1aGqXG[vwL߂2-!ڃ1Q,*^tk@D%b58ęS P./sC>xf39,wM_S'MTpΣo{Kl!7V~E`5elyÃBf(`F <]!uS~,H^l),}cYX^lW ȱ@b)qԅt/y6*CM~KwME cu+JIS}DZyC%2a\ rK!hԍh5hlȞ5mTl-e ҚR Oue 9/880WqV En ]noy kdX!k!VӒ/}("ѯ"= َd`fPj1NxhCm]3[M+g(ԚOO<& (EP-68y\NAj{f1 A77t{x/(<)gh̋ (g>A3n#kj,(|Y /Dd+_x葄O为ڭS<_aGޗHn>׉Tul}WKE}l!PNIqRm87q狮/uc*5% œSgFD:]o QZ?iH7Ckr5KN D!LXլk,1ܟa:U?~AX:3 'N絯@(:9!ZjZhB]ڋ}k@$k?V5rg(~I1Hl295(Gq#hdOQ 8LV|WoIb(S%[=V][G|4_imHiDp>WHԩ.oY?Vs#t~ 4J'wO@J|QݟtZsHĿG5̯+)6ݨiv5ca2u4aWyDf"Oj8K3}zW2;mɴ%UX'fNaHh+eAU#efzp_b0}CDz rա;WyOL e1ۼz],wI~yq|윆j%YpppO+g[!Y`~FYKxnI<\&Iŝv{mWu niVqmġhsBR|#LሀA+rwNѽ":*G7\g-4N9|w];8S%EDW$F0l XuL P,A& Vl:mliSR]ݺVJErSԆ%p da)9^G$Y[&@ў栉G< ~ir-JS{ostlViV^iNz5\1R1Kؕ⛂9Bx,KhT;C &p > Aeg`oKkFWu~Tl΁1@fw#DQRQ\sn!sPCNd>ʩ(sͬ$ǐp<ƃ:3\jK.TsB?uHRt'F7WQ*-iAbռMNk Eդ̲UIޟ~. 2^RH YMv6ݩb 8~N@uDX˞%l_>USFm|,m23 lAH? ~I8b_d/#iw[-ӹ+2$G=h/.n7X*Po7Na266 Vh$5'JYS1@ *hf6KtBXAZ LlԤ. v?3jMgƟ: J WV V(k8 )$tկ[7#q2?.*}%Dq@Lu)iL2:5yDiv9qaIV8S0HZ$+ ]bg'^w:HĪK46"2fżq%MȐ/'QQ.()MDDl׺ [UVψ'cn O]$j| %@+<8j^f%}+j>\0V)3J`BYF2kLǽZElRd,&ku#wӆ_t%=,Z~ЎgCN0MPͅ L/+/42Gu |)&6Mr, րo /^GQ+pߗZ Gg> :UoNIS9%Yj;Ðx,3\!:r% LҠF';'۳R(T@E}\ViIe U=wRx;l2UmjB˦Ї z貫z~qW7v<%&$1eXF6GSnq6>ЂC03ЉQ/`e_yvME$_"9N5/s ɔi"typ¯Vߗe`ߝL$ cw,*3=8=&ki*75m鏚C{>~'uo~E!(!UcD*iʁA ^lV(x|*RAPPB M/NM8;d[} D:崎`k1c0WD݊")}XΌC4cͦ!j /AjOOtoי"M z!gLpy\xw4 -Υ|>#Ie}Cqh͎0IUF*{w9jKp8(zT _~I3¿"|[q>}ke&Y'g9VQ 71S@j\BL dZf"m[\V0xCXF OhH=TvގypRF8/`,z39j1]R8t_e7X |bGJXhG?s ,_p5LXB#j[G؄(bf2 g߮W)G 2c jBֳBEb> $ ?"H(Nq&_NRbub@e}K'nKP!OB@7e. 7Vb5\F,LL4g cz F>"G 9t#qk|,&jq AE={n$[YF=_ug\\h6YhY5fP {(Gu7֑ R[z1Frfc_O(Ϡ.͕D^[t.9<xP!Š2 0̻]B%'>6vf?VRJt-E:P^ԬPG2 IW\)IW6,/ֹ4e\W!w5u!: #:\}6lJFFw/꾈Q"<Jщ?smÆ>l{|6.ߓ> HV ^Kl:EqosOGX=FgUFM)`#6=Έ8Y %v"ƴ /ڴ*zi͉AggOT~$.p"C 695HVEq9l(<$T機юWEd/dX_''$O,@e,چb()H e΃apV@Рb]Gw?Dw H;wm2# ^0jj-j\DnP:.=6h:QCD/ɇ&$e|Ŭ:%KBpc*0z ~19[>uH eFFH?7q> Pv)FNEoG5 uKE z4G5JV4%]+NođB /%To]r@xhv(y?\%*|JY,e~ soeQɩiu.OwybݲSBHH,cAwX GC 6F5ϒoLk\=Mt6h(?qdm|ԢԅR*jsi΢wIY*bFdD盬ަ50@3`=3sbMj=Ú1({o]H޿}tƗ9o6퉫=AGG,Xǝ9^r > ,(E2fSMη%dN<|IB8OՍ'k4cnRab(X (,)gG'. åeUW"J?)2˦$mx8F )|22Jg<77-"W |'X̗L4MO[; -,X9n՚F:9G)L5c-ڈ@G:b~N9J'<j5{"-ӴX`__ uG 22dG\`Wv3a̖%XA6yRAq x{ ?JЯV|Mљ+z|1%,`Q9hZ/)i8598Cx ǾdbsT_K%*TȌu Fw c8w߇BX=(.b֋B케 O輣ꖂ#Q/ushK͝ߦZ.#V]sZ~Z󏮋0(]E)ӍYz,hYxz?fRCcs;9]yy_ Rv yb1RHt?^95F&y"`4b7/Koδ dkz6u:(/`t@=vɧ9>y޿_JªdOgt=7yKe;-Cd4n]}?|Tщ[j? @&O(9ѴQMG FkO+^"MzJ"mcAm6ؿT֙bлUטe _ԯD[9UVBՕz@PdzBUAաMqi9dȂGD0'F#-J@ՖcEh { ؟Կ9TՀ)¢uz:C ~sXd7Mn%5U4$`6FD[gg>m܄`/43-?5]xD %zzP sH8 ,viG'sGu9I-PoƄ"ӱ|U4=rwQ?)},^\a5Hw*#faCQN~IEj&Vm=xǣ-6h07RTjL  L$GO2Um<>d7-z:gˑuĽRӪ &>:q: vuO0,w<}9G*wbKgϿGu:fA]0V=uOpH|3mr{l-սVi7u(?c_t t5SA ?vvݭr4oR<ᚷƧ|Y҂YCy[œ&)NAǎ2lk@6k>u{o4/ #QSVW Kqc Xߠeb[Vِתg>3JZs phIѠnXlԭO_] ^R%M-1)*5qSc;:@ v3mԳrTE 8*:/ i( 맜RI93j3N`cn~.M2jܜR%@RibE W9jd_|y )Z3M[j4 +ؑD!(\eG|6Z}]ik"a FwmwU c.uEf.nn 5з"4gp-IP|h$JuZݠܮe xE)[. v%r\P j7]!‹(_}$ɫy1YF/C]7{uili}=1FODe{Kq jZcU>Ae#u3Y\ 'DC2 ,uC&Q+:7E F qJ W{(.Rȳx@/,a#>PI&"a"|y 27Fҗ23AƆ]Isf<PՉ~(& TT%3O)od%FՄwYPL Nݢ3jpLc7;P?b#X4*q'ݔgLs؆b c|ߦX gR|[V1+0dgrɴl @)dlXss4O:ҁx]g~Yq^np7RH^Q&Z{Q~>{vG[WQuqbFHw1bw8,d.2 Úm'=,7=0Ғߐb**K,rO1W!)ySai}n4ҿ_}'{.$'kb #U^֩@IGQ .%%0Ɋ\ibSY7岆oPJE]m6Sle(l#J^4T7\TT\cwH'[^ܗ8|mx2r;fU bBrs\ev6$_ XoAI+2DIw3#5ϑn0160 2sF(FG>.y"J)$GoVBnx>3H !F -hK›K~!00<۱BWyޏ7ɜ[b6$N2FTH{ 6? V r[d;Q Γv |'qݙv/ W5b,[Ag[+ЇzcdDm ק*).:82iU;ao'I lUM؂4X$mF7 =$cq{dyn?ϠXNY-[Nr/0x.ɄýofrH QʡhK[lzOQ4eSÚa  ;?#DD9 7g *{US|k|Gf#`01Nhq C ځzH,JEC)e,w?-o^z?tT 2>wAÅFR'> %)ό,:C<l^lAx>ź^Q3fks'MƉ8[nR.) lx'c {š~%y.$?I`rECxm/t2~6'H.܀/v1+U$[e`ܿº0M+ t$-5 T.Pu76$P$iq\o4F01&z48ژh[E@%Ku*ת/<-G9P, $=Ft8?D%KvPcf.$=$G^-41V~(S=$UK?^SZ4f֪(~9 /ucӔ|)'lҲYd)ģ) TRxߊa{ 0,0O3 IA}r 6S u8h:*,,NNuTt3^+G0.YzMO ?HP"PH#0saŔDhiXܾL}Sֳ:n̙ܤW hxdME:$>v9c!St|Tv(RpŃJrLubd3/!ƽi]iɛ,I֜,SQJSAnڦGƬÔx _p vw7E9 s?.ɹtRs"l k><Z]U~|iݤvG p TUwêUD@gQrc)|˗iYac:Me+A)\{?񫋖{YdPFkGĝґ?Hq-'+uMsHTYO>iNNn4TQĖQ=o\7(Ǒso\~' sF8 [Gp\d9`&18Ku@4[+ 0"6Sϩ.FVg{8E5%JO\ VM-eZjm. XљVj[)Rp` VD:%GUimf$3gUrᗹEw @![U)eϚ;fCcŅ A 8 ގ|.7s3N%T}[fYӺ uqlB2f<' 8"kr%Fz0y8g Ukڝ}#K)X?2:c/˻z A+W-l[]L"# QMS 6JU"=4_< Qa;}Ԙqe~|r%I47Wֱ};mtںW} Q>h缐« zv17ڙ6Qe.L۩O!쳶YUdDiyՠa4Vxw{E97OX,7ٴZ+a戳^ǚIV׻1Cݭ)9窄]kIBc:YwPÓr ޙղK::h6V'(9܉.c#c/%e^RR=#|Qm:^돃Yo"C([) <&H0+<Kg 0" wQکȭw4c)[cUWIbi%|ҟRq^%,&Ci^⬸,-$Mf+ɱiP4=)(ǤK d–2r®NUY3w-fͬw/DZ]G3+fuTuҺm lQa['I@b<{ ,n ϟ˘x2?ltglLl,T&隍t6hjG-: ,L tQj, ndgp@Z e@Id FyY;SNr(>ͽbW5MM0@vcG=ؒT-qU*)ڨ/*A1P= QxJ٤m/>- 'e/r{I1wY/ߝLZv7- ҡnq=h#M.w~J./Uz)V:Jn jqYJ7xpVJU) sg`ҺRڲ q!d.XwXstvA< ltT>(jQa+aȘ˒_N1YamfhZ-15˄D;X;wSG 0L\EAQc+"Ub ;yY>`糟ivVnED)]j*[^< zoXeN+3u :xM)!@=,!L+)7 O _Pd||={,{6Uq̥#MƌBG"]YEH>pԕ-%2f}u/[U:滋 [ՙE4Tb%hZ,.lFkDlkR1ŒI~8N{߹>Bb:P p;3P͊EtQnb݀ҚT^Tc^z77n($'f/;g%ob?jCқW njÚƻ+o/u\iK*~l,|qI,2mU֫\˾4u QPI/~ K {>z҃Zt5y%[tvv|}mA|͓lWIf*t׃Vo~ 0q29uएVh"UIKJ8T{hpdtrֽJ* sOC:z<ܶ?}{*,f!LS<"NɖRLs|Ω">(ŀ` b3Q ;-/':z8A&-#VMPQ"pҽՍuhyp0즵ٌd*=¾Ylr<(6:KQj^HvX+*ublIMjKes7J7-/LY\Gu/:b,]ܹ*gPgN\CZoQ Ff#ЧKc+t7+S4M\)XԽLmt`h @Va>ҳ20k5+UAB9{]>/n_*;5̱qt"Wc^Q˯B!7C))b%LzU9AJ(:@&VAtqbu,4upoQ<*+<JĘt+Q&0Dq_?aI*̬= 8!mF54aY;ptm]@pfӖ/9 g5(r&>L#j 9ϋ=DV8V[i:~!Jj}#p}:f}-0IoU9y@$õ?u8 h7~|v ^p(@8ʬRh#:Dlc)G} (4&Pc<.ˇ¸sS|3v3Xl!Cj4*m2+'i"'*@Ll{0DJ1O&7I᠅UǠ/<3b o `~O Ҫѽ vB$ u6$ki>T<x[}ő_׬1s/14'DKhjӂ2f4$kGt>EHK |J-Oش [B#U7i{ܟwW*v {~Mf텎4Gú@~Hhћ܉P4i) 岅|]܎(?$^wXaBt"D|rvz 2Y34dg˅Y3Ên &q\Y FBXSYjB+aEm5_$Oa,LDh{rJfJ ‚}:]=,#<06bnBN|gDɚ@ܾ)APM@׍v,A SPPq7E"8~Wrz2 _snua o>Qgd Q4c޶1i8p;Y{WTN\%1i hLY3{=qdCobP~؍$#J$eNZVca֍L-wĽVι9LY(9vp y+"[.R`R]ЕN@1d&Tz=ux# EY Fx*Zn5'h㢜%r<<LVLO- L=} P"iwh4f PEeosTwh t*=ClۋӚENRWSM&\%P Ʉ:gm>=Y\l+۪)jA3ȱe@Xx Hߥ! )PK@}G)Q@5E1P*=Eh4h1Tȑ~dZ=6M &5"<Ѣbj)V_U~WL}dd|&Žͳ&ZRXY6FK<(QpL1Jk4q{)uIX9ly{n|3#cf(Yl >kPcv zLqÈ8x{&,%-Ŋ[`)FAlUFzr:pd|G'V`qSE< .${J$5'Լaxgz蒆ޚz*a袕$-+=]Ka4\ԉ/:A8K1 ̷<=̷ ă|J֐\栚e 5i?u-Ns=,TS^|ٲ'G黀d^Pu6m9KJ6DHOkm%%\T-xuƒTQbW*#°PEzwaa+6}?KJ $bõZ,EL{|BO4"{fe8juY% #7o\ZA@<4 :afb^MQV9g!&P@/Sې@o\o58JfB9QPn6HϹ.[kWtYz_=)TlDu5Ӯm/dņǙ46}?](uV(5W?|nʜ2ݙĄ@M ![ɣ,BE^SOku_C"Vqefc0^ahE2: ( ],3q@M"ǥ筆#%ϻZ7ES3z8c@#J(5->L'R(e%a>AQv`Uإc i#Y+Bg.ߤ[[an=5\xxct1]pe6Zt|cEUOju0DJ݌x@V5Ce$X_[ BWF Z@)DZJx>iCZHxUh:2= RQTE9%qsX_q/(̃!cFᯠi߮#5mDE+h=v)[k֤Zmtj_p<aKԳKWjx-&nh~<;V$BJx1* gg% Qv;C8&Z4)ͥWFzZZ]`~i/Szg[XqE¬=;y Z L1> U{w |p1|k@rhzf,)* ˻t=?4>jՋ>С7+Ac? Zmara0C#\Fφ_8m33cȽ#{hQD*jF,30pi18WXa`3|+*ٶ0G3' "]9 qXLFj VL:`f}EПz@B6M32 p0HqݴTjՎ\ԎLg~ Y*u> U.Wjn͢#p2$gl.؞@o#HKIGD>:ԇ'}  +647Pt9AlJsm(w ,Om<,! Ԋ|i1sH5v-kVˌB%〖Rfb Jl$"kV;@Raזֿ{NH`'π;Ktݶڿ h_|V_-O%TXBn{dnX3l 90=>2炓7OlC~>6[w ̓CK DY֪e-dwά0<|z P(Qvk|qjksSFfs1tk̜-=fKVDng¥SF6}2LpX \ 9qN+%<_b 2Ka:o ` RYW9WV"5Goi%GP6s)] jqGPeɡl{\0iJr`t+Uu}9~0as&'O,/"Y*4i#$٨<ž!Sp휱q@Ose$qi7]>ҕHC)8ȘlF%FUu1>Ґݼ1 ?ْ ĖpTNe(/߶g:\Mjpn[ =qF)/π F! 0b$ ֡D܈D݌匟A_I]] Di.Vq|Hqh ر~xPbb 0r|0l܍iгO(B_P =0w&ND[ a6iw6\Nh9Z(xBC +znLE]^Es3uܦZpB0"UyĆRUWӃFPJ[;u %p?XK@ [R0|LbO!P`w;Pm`uޚǶLd%Q;BBYHTXp0J_4 p;2n|D$5qx[<.c:NNn;$= =W˿iR@\nT@L SX)*eSg%#اXjxw g?ӭ0U2Z%iQ״>;=f>fYugcC)| {l~k>G22L~0ƯPY'THn*Т!YvJ\H*@_t/Bi+Vhy Ofif_<"Hpz[WZT5F1kS+^X%mr`CK *pL3s`Pv$vۏ`YJVn*ol~û(G+52b]DW-ʖ=gAmy$*.^I)x?`h &ic*ӹn,:1^edނ) ^AS\f)DLhql%Ysn2kw)FJRKWc7ͅ$/*_P>ShO{JƄ*^i dAy!CA_=)#(_'L%nvL}ܝ`lYdCAPG0p.u1HVYy*j%_dz "O'XҮYlRdũ`8| x14D67;% yӮ. x#_!4*Y6əfL{ZKjcq(HcljIeH;[[k̫dzxsqh^va?Ø.qq-<L¬;1 ϡtP֟s #gU5PH `Z `H~erEQeIc61^78ܾßLÜk.[[jlQyYk`4}t/ңM_ $Y9@67 #Oo5UFXy>te̦ r3Ў̺={i. H}N· dBPj>-Bbv[.[RjO uS[}FsTLVS O#Sh4JXH I9u}N*o#oJq- l,ox'aɋ~6 Ic Oif֢q72jFGKT߸^L٧ ~&}O| EfoYo\t!gg@?' NuԪ͹[(+0g\fzDvŜtXn~Nx% ư2>mkX1FBj{3=btD޳EGX%uxmJGfS 6)h3./Dfz,(RZw$|9z)~YęQU 3(>sSk^dGnUp˶7ˮ [?ފu^ 1tag)ewNWDӏ-I^Mi2[IC,vLF$?ؐSDD^i5 !g/WcSC`aĎ}mhZ \*k) ī3>}jvfIWyvzKm 0G?Vu(\wT䂫&@̃y:eA0؉%n?P BnL[Fف,'#wmbbU3ZV$*~BTHoTCf?da#ҁŰVw 7w(K^4$~cŸE?\@v q; {I!w>H{mA4{aBYi:̜#@+-/.' 4*5@m L.VF.4, B<yڻ"·T"WaQCYpi86P8_-(CZ 9yX cyg=ij ={)碭AMb:^wÆ%:dP\g$׵hO3!9 /O{f͉ڑb7bb~cNp4Ap6Ƥǫk@38{ 716 &)}L$sE_ڷSgg %TӠF@EwNЊRY6Tl T..d(m(nkQP P7f=#httژ.!1X0,T 1֨IUGNhO|I?-<,dp]ly̱ew`,[`n;ylV폿ƅc&y&#xyۄ3zcS8&ET:Z 6EV=*8&wfΔmfّiYL gnZJW'Tf7*Ku4i7|wXBnӘXCN3O*='|G3(5r;+[]|¹i|6}_%Ŵ&H6# Lg &ܵUi2g"$ P2p"ok=+ZIB50ny^h|5a.V>Eƛ'EMrn82 ه.n`_SR諣)P ܭ^@H=Q>>J9B' yb v]m r, RMFj }}:ҷ8*2{$"= O;_`X!˂ Ć(2x̳y[ %Tu7\Z]lC/wp54d*o=feɗsEzsws(pyw $8T8YSM`GPT+n-l;F4v`0kye卹kL"< uDs!%N,i)@l+; I6K! I0C?vC$IE1X6F.5 9$^>E1V\գaL=(g]m.a{aJ"%AgE;qx%45NdxDA"%:܇>yyy,Vsh Tz]LQ"yb]ԅ93 )jh:ͰZҬA3gs@ZSgX[Hv:#^ԏgS@<?vw.W:QhWl6N{Y ^&\n/3*ץϹ?7Z'?wTVBk(+r uz\U*>fUdZ?Ge9R2mJ櫜ԚD"!FтEa|~Ψ{D{*㷲cyCZyϞZ>( -o C`.xN41f_ !|irgu Aܽ9ej!{fṮ`lM:l="v  H$|JHG+Е Yy6pM1-c.u)'x4ZxO g$ů SHßd9QP|3nULUZ|rs$V iC!n١sֈLD;11l)08G~XEɴ+k8=e.EVhԩ/#JCԊݝh!yA -pc& ;Ak4;y_qcIIVx"L5a{tRA:EsfzZ2.iDNRW~FE;H3N \c0!Gm@0S07'L/$ҏ?pI(26}T,`Pfxٲ7bB<`L}H–п8n4儲,=(zAKsC]Fa.*z:-k/(H.)Iz ,OYuK5]1V)%+tElZGp !zĄF4cS2>"f7J@'@͍]q/Th.06{H7tomMe EǖrC)+M=Ҩ 9ⲃ&uk^ `VdJ+FE8vdSIi_M:=DŽr3Jw@'d&(Dzs!C_ޝr%P@d5bΆ!MƅٛtIiB^y0mZyO"ݎ -?*'WnKH,Uo^Mv:ybk̾&OȽp]n#dd8 Rl VG&bIG1BC߻/`w_#d$y 3\g5.ۈL>k]1RIF AӔh.h@hP%Gkf p e`V|ʹӨk\ /}xQIZ:DZQJԹ(Re(Ҁw41h;I\}:$«&Bs,wFSVQsJ%kmd5dazCeayܗ D"߼ߍLjuZAŲKPqTӫ X~Ϩ M`}.Bmbm]v-c7 4qIpKHD{ ^ǽ39cSa݉K)UiiV'1=:К:T9{`f++S,cW'+ |2SB3焓 yM'[ \]! umŸab!4ᅽl͚.3⌍Z)ҡf\`2/$# &oDpNc/i ( fqd|Ճ_#'lܓ?Uɡw3q)DKca,pH@k3YXXвM2pjd ™SE;}o"ێӶ%".GZz{-E o˼V~ntɖDei[w!ۙ2c)f{|Fk?CA)"b[~ՅPolل3J WCy\"F1(4ʹub8͙҇Q$N(Z [O@Ɲ![|/Z85/Αf<0cTtd.W+[=5E%/}1p(r2!Gz\fBG*bgqvh"(#f^BGOLPCso7uoiB9W=a1p n:*%l,K8neET_D5Km~SlOyB3½!:T5*]NqnM'1ST^YySmVeu&_XeDzȐا`5 Vl_~zZe`BR/UXDk_ϱ!3/aQܥ2Q3%URdO"ڢ8dSR}A[pd5L{NuN#`D?se5f\uLQu_YuMf470d_׫EѱX3huV"n_wAGV`R:t{t4nZ}vTt_'Sdm;Qk}<䔱Q2 'ٱDܢSXב[g8qMK AX91P*Jnzc oJab)Pk@Uk:Dx]P4RK1]o"Z|3Ɯzbx %RҏшxIxI\!~ƥo|">e, ~Fakp`^EA-|!&b;ФTH8un]f6YUy^R*|3hx%㈰0Ķ<:7_1Qr./aKV]Rv鱪LS(N_~P=ܵKM`Mws~e'~Ȥv< .w]^K^'J" Qo917 YWzWc|ֹe =z\u1-44ڭNy F{`q 2}īu@`?'NvOFtxX'9"2W Y>eO.yJ.4e k,Z8O,(쏹B +TOKM nޏSlH(sevɡffέkOPrU*bz$4+\/j,v=6gw6*X_ly:\cKLGӅ>Dku #Y$0X+(tgL&04 I rnЏ׎,/5_CTlF)^Wd0ԔZ.,lGjֲֳq+xd Hx+Й2>2XO`Hۘ6_NOx υqwL#{mx~`(U [؍mì" UJN1%i%|"!1]ÏR*锇蟷9lQ?vԸ\r?r=26hohXKb*'s{~bLw/-cS V҆;2a 2gՉA{W-;܀`pqpn?6iq}=5JX"WvLCY#B ?"▩;5v.:AsNk1=&3B[b+Tdiqg;&K-j,1zxGឮaArÊ%XGNhu9N5DNe{i A.ϳoFBm%77& Moy$$)Տ`槢? 'lKCͭLy(ٓ7.e'm~!#[yCX2ϋ!xbIvK(&aHo}]pKD)=M0 Y/F2|ĕKk7P>7:R>>_zfUsb{,^zkQBea He]'7Ma'-O%ja&PƠ(gg}.'!gފz M%J|j-j9{0BE-MyKݾ)p[<1ja:IeW^NJ$-sA .,g53zm=9S)MkKۗeELD߼;,\5+jؤ Kh-uC7]:eRScpMζX/"w~ /mp~%͂Ґ4 +Rs/@CX_-)80'UF2[7X뛏{E]w?vWNYU}neg(65Hֵf7v$U} .9_khX:ؓC{` _ S8nȬ|$P^vyQɀI+3 ;+HņIA3vlp0PT,b^A"u[`X vR4&v{<ߢ #Op73*kOGy}t^CYYs)qo3CFɔFt&_\~$!pi\෌PiWN3WsOdS ۡ˿(Ǎ㾻j! (Ȼl%VpÜ -2C!?*ŐFy b%$ yv-IZ#J/vuXxs ƜNfbгоy&ٲTtmQؕO] on˻Դ" 1vK‽./eM[rbPd@йTʆ|L3u(7}9UE I'Jjt"(g[_X i/{ Ȼֽs{õ6zbk`:Ü`&pL<[-pE/vqY据!k=u%" _O{h5K5;^P?ƳvRUʛttMy%kQlC&޷㵵/w~Վ d A`v+obC@>ސe;BPS^e9' ]6Q!*v.a[(m3 @<Emtk ݎ61DU˿Jlط1 bi˕9K\] nAJžC?5Dlzl).k(8vG;v9Ľ}M{S1IԢJ3.~nCySZ}mܗ2ea4JĀsdн4JFz+ڨ=No_![MGB0yEB::csr wUva`j)UB*HY-jcNƀ0#uPs. s"j v#}*kwHfWx_Uq30 C9w<VHFd 0Oh5VױRXtϡtƂlv`[߬)e.uY`_m7^53=u'+DZp!B;K)B\TIt Kn~h-^Fj;EY;PC7]ueUJsϳG#j|}B#1y")2 J>֖?Ht:zc7d_}xWeDd͐iO|$i5i3-X~d+4b%݈pnaS -Is&3*1Ta W H ddbJWkmyt3Ԯu{_}eI{Q#b}EKB,8B,{kK-^`&\~ 9b)>)ڋl9l]0`Ûd?y UAy "Fy!& VǨ' ͥ1d.?ߎH\ $t/KcM\K7.\KUhOiL]N_{3Xr[Fÿ..4j~t{zjp *l/HgV`qg- IgzLkpޚ-4oq}A O8C%-fBBXj,yc |qns#is C_S/ v=8Lscc *R4"lk~(#wJ];`pRC61gc{ʌ/җHy)u9 7fP-W3bU("`?ȿ`sP-nVOZ}Rf|=G@wZ=uhzh|!ޟ5 Jkez.o[L&q o*+l#C:&7ǿKlbD%Ʈ>?s-NI[6x]Jdw6):A4^X iYᥚ* !ōi[~0wq@]"k`y9³peTɉ)e-0 i{\' drsRc#{bYWR;mZNCDQ>6=&.Q0]oy"Mݗ"6wZ  iKe4<$0x&\F&yPԏen(34.Jg'/@G~S%^JhnQ'(aNF>JLuw-J,P~/=1cvw ʇ}[m$s}WEǻGS@<8090К ^YP琤hbB?34Z :ü6zx7%ql(ڛ֯W<$wIt>!@(-W˖J C~G'$.I6>yfN /|óvsK*"NSxf)qZD:GA%nY\RMxj+d~ ̪G^ }MCɰ )|O3`Q+5 ٳgynStC: _͡9RDb-ZJWR✲% L lzK['ryNGH 0~Ԛ.GK‰kbd2pPKs nFJ@&:FIس3EK[X~&w`d!_tmȣ[p cepwsl$>=iW[c=; Y/bZ4gO\IW</M1XF8s,n,$w8TKRK6g R"IaǧPu3ѵ קi*ll*bK /4 fr'!QGt#º3?ʬCW)y=ȡ#,lc)@P 6)Q0J_|=m`ZmFi2u]])1a~GvA.&>>dfYqs~U^a3? %h9I['DјN5 (da#R/*K"Նf+6 X"IdPNR钝¸[P<{R(ca:$0⺯vk? x[9%vJn*\p{82YPl:A&tÓ@o | 1EnLhi6``?Bdz/S*F o~ծ&i5[;=nů)-EىJpTWģCX`~[\[FlYFF:|(U)|餰SjkOy_zbhX%J]lr5YBb?0SeMmP~O`(a{[Ӣw_~5A~B3ִ_rJ+"Ft7գޢ6W^gzԍijԥm#d"$)V%{[Rc?{Iat5rǹ͏%BD.@K! V!ƒqjŎ^tdHg*qr] Q(>!#%/}Hҏ(ZwsU [9+ #mI~bb=SWp67 OCu_ru^MFAE^iiu%EfeƫpL"7ݧ1˷T-l؉HvN˫ݛ?_SHh5co^!Z_C(7S]ÊkEC}q@6S8Nt(?>Tc֛\S9D~<8JH6e {m07n8Os0P-fżr]&F<[w?-y0-A 6$g;4QÙʞ{3q|a;Lsbܣ0=y/i:ղ0U0p]" $F DMb\l0R\J;R %@; J#ŽPsi XY.T2)gnCo](sV|B*˯1Wt 5g̗F3hzg]3~IdCW$AuRsu&&u@=B6l1Ścdkp@f jLG$*n:c;ˑ+C;;=8*?jTؗ$vYDrCĐV=QO\.%3kԲϑx;̸R1GkU"^vqc6?ۣ=SfF 3t@S3)x\UUjUp8}FT=+hr)饑KI{%JRdntj}LX ^r>-ݥY܍<Ņ0>9>EUL!G#MFB>}=$ҩ\6kG/}*L"؍owy "07{ D2cc#tMY[ҹ&fYQ ߏo<} IWnp]Cc ES v.{x-Zn4FZ,%-d3oiz5V0g"@5c^S=pdgull}f+x<6KPEMJeo<*yuUiPYO)um<td;-[&tXn 5qf0xԩ?1ՉAPPYp~VJc;czEr[#-?G\@ݙА6 U=LI&{Fjbá-Q~'Q+4o#H.*+$))wR rTi:Y hkPx0iH,jxTxP'{厹cOi˒&9|u#:hgj~ i?e~8`.40Ewr3Ѕfv0buZ4nߎ"2 |? $ =rϖ]Iu[B\Q Z$P ߞF5 P-5Sؒv@bװfç<^W a LZX` {c)œxDe#uͼ<=̊ɿx)&7EZڂYB&V-:f6MϏLۦZ B}ʖTI]~gH ϋ, P*YҎx*xhOsJNCWt-JjIKrOQ%:znrc&JpZEq 4l!vNA񨰱+ +͑a2:}RѸ,껩'N9AXm/2y[~)Es$а7=ʵyțL1PV˟u9v+5bB_ˈ=?mvXlj%,+zulҵ0JXD*ӗ>K7<*wkq$=*<}>NFJ>eP5G?с%,1o0!ͨ? PNprQ~\/vt+uz0RC7#(_[]NB"#D"ٕ"E܂ɟ<4NYs]]` "sj5HwTYFR?ҕ,VJ&Аc0f ws=!erW"(<-LDˆ%ASՙ]h/:T/[.&0F7 hϊ:jZ4XQGcÉ i?4D p~#6eԺ(m3`O;gO RアuskZˬX1˽q?–El*{A{*%uMy"8p':ǟ6 \'6߀MDByս,FW-eR VSiIkz2~Ԡ1,MY\4õ݉4 YTfuuBt2p&٢B'jfxX(Y] "a\usym#$ƪ5rz Nl?dj ѷWuq$b]tӗd "\2T̙n}3b:gQTӐRnR"u@Q?壱D|)16WJ";-Lǐ.3 ]_/~ڄCnexŚ~_HM65jF5?VmTSS;ҡJ!e9xOTH3 UF[ xbDY{ IJ c5<`ަi:zfFSOD5qZDmd& DYDž_D@o_Xѽx3r#qwF&+C?ri(l5 `[ʎa8I@ʟ_ 0Z.*QrLIjR%^o!UmɳIOD:YC a>mX|'Z;stK 1~c|%QiHi_T!@ 2O~n}S"qٓq"Ug5]X%@ Uk4K%s3>\iB`znWZN_/WA+?l`lˆ1YPX[G}g1(`dpY?,*h[aD$`~¾V8('@5) ƥazh /E1k:'У9 ܳ3,{f IXX/PuoaOw-?ҤUQ忇rWzyz}jKIh C(scb5Uwu1ΰrޕ9[Eء/n+TK Y(N EVL)S#|6^blK7kksf@q˳A3W28qG n6qѧ#HfU|3_>z vwòfQ!%C9MV8S> t1a݌:?Ą s_DD{33fH8  QseuHnTBηjJS`1R,w`V1tj*x$X.b^B.(h@.mk~zfg%XG􇟳ؙuClpDY^RH׋DR8hR\3hkg(\r\X:'ʓosgдr>n |68Nò+wom?7MB#;"TiO$!P8 e.1mh \nLAXZ> eqoy^ "4Ǐ`wjӎG!C, WW:FH/c%0rS $ z?F2+``i.DxV9%LlMgZA3$. Ve6gy 4-zc{_xtX%Tؑ[%Ӑ6կ֌c%wH Pls'%lfɯ\V;N# d6 ? [ة=މ&)Qwkgr4eo;Ox }p^\HiaHYJ'°eb^ɗbvza1cr4S( qҎ~,@|[-Bݠ?^LeH,ovfnu y: ?s\kA;:G 3߉_ۢ]ZRcfJr/ _zco<޷GnOeI&Ȭ!8T| [LéO`BrP/g}>.vf nG"Brk0GW݉ 9I Z,iكM!wr &"K֋Qe=M{oxvBj@3Y R kAȗ-! (CZRBt8Ͷb1L,/$i܈uE~OZ⠃cl϶=4WFG5TGz*u>dy ^\B0(ۙ4o՛4Be@/NK:–#;wYią0H 㞦ru]-@$!0@A:7RK_t܁)Z#;[H;lٛf#~|Yr'ix]-xV'H52qnIY-imɳe@rfn%v’FT?ʐo]$=3Ln3{?S~d:jS6ï3 Y$ۀXU֛ܿ<9l[4Y :_}8 $ ́vGMv6UvrvsN"yb 5gu?ԿAev##D!h2Hs=L=zdϜ@EGA_kJ@-,6 ˡyAr,((u4|8 !łH!U=<Ðkkwp !- +ۏ!t/F,;,hmA_ נc evDoZj1ް^0eB{OmK{㣚PՕc|ILѫ بKQV1r?A|0BZ?VdͲoNA╙7-}" 1Z 7Gc:ޢut(B+m<:nӪ1`W0S4p/X\ٓ2dV{YopN>b٬tN윷˫1At^16ئ6,==$߰. ,nӬL Bm L_4Gd/5$֝IPGpZ9מ` KI۸ya%pxLwW1S-UN;YLA4O!/"0jRٕzS^F)庢lQ (qFE-]."BIsIXI؞G|BU&h#fsiDfXp䵊7+ 5#VOncB#5挟].Т\xo˦~DRי]ցiS@~Nu[=KuE4۹ou hu"rbC`ZfѪ\٧É=4e7"(-D'ǁ]9 qJȁ{2iכ/SdEЅ;dqBݓI>Aa9$Q?h 0#.>$V|tƗ E"U7Vvy"MNࠇ~fQp>LAiP\>e`F".&sa{0V\Zԣb<jOWa|X874ߔ_z^ f٘yT|Gu[iDI F'"׎]*>rX%ӏCgK!0]~ D/<\J6ɽ6zʽ'2J 83+":džΐEf4dGpcDQx3LN>j ^jԈA-~4oR84 z6%h?$1.$1ӵCFoN?4 (Pc7\OO'vR5W@:*&艙N[䔑F\%kQ(G\πeQiqs[ąC<#B \-zRrpPUETh9"A%3}?RtNc,M[Ӽ٢ga w!,w+:"?N4/7cDFYZdZ2N0#? W R; ݌R*Acb R.s`!$]``r ZGCq(FwFLN (*I9[Jz;eNm]T"YLjx ) a_oy捑n=Q+1sx<.>Xi3I?y-е`uc@ii< f xy]k{ %23FcaHRq&93 .t_UN7sR/2A=OOZkMpmRv"7ޯ9C#2o\&ZZ, (MщN+JRs;,`I7$& ] 71 (ʟ-lqNIB;| }9*PW+vrH4*; HjQxzca+p^iF˓}PVI'?Ta⥤,ٱ#cw:TGPpy!J!9 -8Ow]`ZwB&TJáFJq N+Scg%h$lH<T1šn.b ,alr ?[\搹6Fe;} f)m9>ͧ,(I B_rMf8 V^⊵zeyI!vP}"%R!-&@À[-hը/$=PH@^]p2IN_w"jfDD ,GJĕԧ-ҵI"d1gimuRRg vP vh:ȥ+9ٜtA?݄]pBmq:7T {$]Gcdbr3_%V#6EL&t̝,n/hXתڏ°*gRX' \|A+_@)A '59k G/b2z Q: mn 9VY\ W?pV+Oz&PάW@& |-43o{I hzyQ/Sfx{q4gQ{BI;M AHJs'0j:rVLVԫ(֋'*%oB.d[TUK\Gա!(<)ӾF1ކ47hk"?&QO9-7na^P/Զ]0J}_ q4Ɖb4NgfpQEUuڄۗ -7Xu_uI2Y-Sm}N͊!8bap[w0LH tDrg(~DomޖHg8ܙYsNvvPNQFo2__aeu⺱hѾO~d۵m-=ai{ч_h>Zm' eژ-jo|K}=J%ɪ]]ڇfڷ@ w[h|ۇ3qCFu X}T->{U~CxĤҢbi>4TW98q#mbPPG42B O%XfIt%ON<t /Fԩu\LoT%5e~CLA&{vRhKWyYgHȨy[em{ Zfv(_24 Vf hWt4J?C _\8ݬnr 1Bq!:|\田-'7mz͞nܹ\9cR_ E.e tq>0P"?6} b0#dmpADlJ7't[\ 5klzjUX{Wï+M]'c&ء|6cww!jq1hk$+|TM%]ए1㩶{륕pVa;?L ešD9@NDiG,| 7Ov@T gp /]\Rӌg Lη8-cM4'$a]6|$ (sybvKbb`y-x62[m6[nvD,< 2&Z5#bMX38nS ;wLj/ ޶s-) #p}ڇtj7^Lo&o+[dsűvCȠEXIozGYmZpMW8#Q>ňr nP>MV0ޫ6jڸSSNS؉4|Ǻ$*]t;ʋvIVL+HHrsiɦvADaJ*Kbp5F]]3aA_lŐ9'?EVYM@ r8@Jv~MI9 |7ĽjeevQ*vB|4sU2?J] -E#^<2 %&ˠ3-ǚq&4ם"{Z^Ъϯ6y/E|lIA{mxG7*#NK;)[7lFK AS1B tc1ע夌FX-qZS*oK6\ʣ%?=?(Z!D-F OΫq~`#MCw=l H,w32@6ǒW``3|-wK x8M%+qJl}Ui.N ad0CV =DX9a~f0p`$B99C|E5ٰCV 1(4`I H? cv" r2=J?X6;[#Vr{G̭zë/Zc?27D^ێtO炍8m*M91Qm_v)*xWnv\fb&k|4~ԥŝ.8 5zp"Y}UO ӃM1 05 n*'m223ePaFs-Dz;@ /Hf|5`k;j$??D%@3<Cp|pD5u/SEoA+ҒO7Nʴk4pN=jq7ɾ=GzWGd CE,+RGd%RA+ÿ{\-پz$#l>7}5٤YL:Fwke{$&LLwgO(җx(9wGZ@PYLY(@3+:@oN{q#$v\.TLL]~cܴQ1W')KjFb.fq j}]Î`IHDDr,XZE4c= Ic>(v6; \xi 6xnRq:`#,4vРUQ|C_@4vHW_Ȳ=:x`#11c .y*-HMU :?œn+>4*|% Fz_'#c)FeNYLeŏ  znU¤LrY2A-%y,4@l ⪎E`-KVs=dCu&uo~fW!]͝]g^4,[$@L@vm߰[&= w'+7SҰXKkZ൛ 7ͳsu=Gae %^ n$ !ߍY0z~¥G_+ سOW@lo0,V$Abscx`BgRkǙֱ# A.qA.g=t!N~2šǐ[Hzui2P ym]'S Χzb,g8"WaF .&m[%w6RF+jS+˧92R"o1޽D4kfE K ~a=EOajϾcȀHsY1FF°v^]BƮHڱuyNA*D$mԳ˦sF ֪[0o5 .mc-e9fM2TG?&PNITXZ;UJ?;R2c'r)сH7/% S JŇtp0660LWk|4L݉6R(~(sԚg6gg -P,ԸzÉHeXVHF3ƊKWb<sEbWw+A~no1a߼ 0phBʳZl $353\irnS#8Y{%=sWepO8|;VTU3RZߋ/!aCǢ'\Q-{)e!ߕًQKwNs'WpnQ˾wBא1ZÆ-DDd]s"N3_Vuɬ!E2jv>vMkݑEA}׽O^OL)mC`6A Qŀ;wf)!Qj} z) Nc)V،>t'jA+; G秈x&B˺Ja+N=6ySw1]Te'|쭍ںA`aZJ| /k~s`_WgdZ%a?maݪ,BZ΀ H_lI+?4([) 30uf=LǶyŁ׻ b"dM _CY7+~wA+zDzZ;ЊMTdl= 3v7Ä+[Vg{t-[H>ȲE{p`E8,4sYoKp P٘EӅz̙2) v=Y`wO@$3 gEGY~>{i||BG{HGPnYOd5D[e9)o #M\?ZO4Ŭ|K*C#IjQRATGLnBDGX:J}AggYVr&j%Z@ꏦE](i Kӯ|ޭgNݿw:&J)OB] -F4rFJ͡ȿ f&AH3 {gND',xAɔ;cvPYL7"LvuƍuR-4 0 [iEƖRubܩ7+gLCr+UAVZDfK%|}zhn/ 0v٫8}Uu BVta-6z1x5w,6nSuq*^%x4(#йP ?~8;q<)e̊k)f:emw<۱,BgPJVckX9N59WG%"\{sdހI/`JۭX9&$Y'V/ad,+e: سW{ΌDE#T-ٗ$^ltwm6+Jzh  h&ՃI&ZL&NpJ!!'YKTCS?`+TQ̌ޡ2a=~v]Yl=ntM~i05icĻ.CɕC%f-/n)LXNZ[Y-cm|SUkq̴?d4Θc\]t'5Ŵ 5@;zU;\ge*뎨\&&_SB;'6餠t׎XFQX4>6AϠ(^ kn!'} P~TԜj}Ơ\CF ܍3mC070T "2S  dRf<љzyi1+0ZrرuۥrjUnʷVI6*y.2~fx(w5h{cwWny7w䏌ѱx(] CI]N lQ9D=5*\܄n'wo]%[S } vnyNSD8)7^/zR_Q{~YbS\YN8 D`VEiT$A0)4u>\EX޾ GO A*As eR;KFFtĂi~vZoBK"AqT3EfR|>́Y L>qD#c@C<F> ERĘj~hidP],aʾecD(US"+P)?$2Nؑd h4?>W#rrej/T |v;8=ߦ4Ywݐ\I?%Vv>$5g/=~ؽr]+3P s9=|Jlb&jvLXnY>mca-UrxWd9b)g{]%1+]4W=IЙ@!J|15W%E]sbr H$$`}Qd<^ cF VzS9m@,ȥ%nomQg)?I_Sk<u9;7kR=&Ȉ?G#\C^N<1cX[N= YvjP#=fw :\Ŀ)^[v YȔfHb˟sah;>!aݣ,MC KȘJᘚ䷳ 5IAvdf0,Xն/VCNe-b5P8ti0y[\Gah=~ (z>Wz&C+X[N9~G2bTa7f"֩zrG=ˡ h')AW ~WZً5JCGwynAqQo8 ~!v~r-LPZę[= J[l &Χ5wLJO T5UϞu$ 0_eHO;K߬687`LukSb≯ `ӦݭZGJaFng`Rd w7~FT]}ޒټarpDjn!tCcN˽?+bd=bvɻ,LG!!=7h V<0xqBȑmX<8j5l 8Oݰ"6ӊqB6HW&N,Z\ˋ9`v񪝯:\;Y&ƜPu;o%=N.8.%mj\ Z;Y!,V eE5 +$jv1zpHʍUِQgk +'jQ;V);HKH*i'Lכf'4蚶/wP*2ify-q9g.#va&(l"VEN-KWvz\>ӥEi'[;<֫A+"gɩI"%+Dϝl ( 0#2& +(pl"P2+{+wnÓh E5?1NŴ;͍ |u\N", z۳s )Oɧ,أ}s~7W9]ygt3"RހT ~ N鈲˛ƕU$jZ6sp8rqI))H5E|.jzRH\T^P[ at38ޞE+/f&? T݇;rD$B6<`|I.{ܣ8 Ys]EK~t CZ #GRre^X5{=]<=-tl^ Z|4 ^i7CdnԒ$gF+VpᤆuI_~+r:> Y'#5Ny/}jrZZ'jH֎nDj֣# 1WLP^aQdx>GIs.B6FהBxXWq btd|Hx-&! qlO4O~ 3tMyakeyMWqS]Eա#629nؖ2꣪Ā.'Ued*=iZkw.IUUʄzw+z@D13@- 1.+`6Tq`>~ᑱ^Fq0Z!)>ŁG )Ρ΅CùSkf+Lue.XjeSq8i˫r9l*WB,<ϸtxE o6Y%VłdC?h|n+8p8VCv4 s+MB?7In$*\2Io\ˀ6vi2i'Y`][o\0O l~[wwl4H "rW혏E~ɼ{2N(=Pz2` Ͱ:W`5d;Jءa5Lsq0/.ב/G nAx [N]:E/$+w)ƋI= y ._}!B:[pvgt LȿVZ -,Rh rdUSbv͚ 囗}BtFw$!z˰T1ZCI1)~92W^N<1Rsd %k%.O㲴մ6zv!ZρKpN$#]=!>|Y%~~c֭XcL&=Y湋DWwcYi8/ ~t) k9F~̜_?*3QlbR6n:x5$+~[4g05vÓhpd* '?ҡtz )MRq2~AU mt6-6)V3i qh0X*sC齧`@K ^G)cZpC̈́닧LI*PН4Q DSQf S.R?Eze MqcхcʏoQDVu Yjwc;~iyh/TA6V=l"AG@+n1;ɅD$ohɵ?.K ha92K]q;_)_$ yD$ÚTËոI ^GгqĵٌD9-w0dkz J#api_4qČ^m X( vmdAF(HYlVU64AAdBsМQRCTz郹l6x#P] k rM;@{\Mpoy>5q^lg!aw3Z D~ͅ")AjC6EƈUOz+fcoF]r؇}@ױ.}إm*7K +#3!k1 Zbi2M3833✃46zkTqctU8S$5p[e=wxOi܀ʨ>{MDr(0ixMi4.>ץ|k^0IBS~y'Z= uT^ϑB%AmDKm`\S(VML^EEr֠.Zy=hn{bw/p3@kJޜW.plSs]s$a$3/g,"+4dyqN놕ѵ׺ܐ,] ~* Дf3%?GR 2\J{4qz\4bk~!7_Wغ$JNZ*ȅL 4X iz9pd7&dP_ zb Lx`HB#R iU@&Jf=]^W>XJtNݭkgE?$JhOFu1ricJxHЭi#؊V_]h''x#>%KJ?;RoSaر=IGpwݓ =IΥ^b8lm9缣s.̿SyB׎vLK{Ba;c6a*HnAh!4fd1m{x38}/bW V"#,=?.=']T6OY@/Uv(T!"_`F9>b[KJFgٖe+Sl@DJn:}zbs!I.0;Y:)W{DN&Ys_wl.TܸP h;b( "+ne5f~7dx@x6=L.ciMvTw9K|BT[ȋax ݬnBPooKviLl.7YJxT% o}"Ж;$F% P!>a8-}')DuF Axec#DAʞ< % Ul1r\۳ʲ "/v]>-GV^05dㄸ-l& jtvw"hɚ Źbg>Clc3[σ{L 2~mH&嵇@UȑLH/POC4o9 !M{9Z{`?ngRu0u} HKQeFFIIVLZpaKQM!/;@rdb!wkOܩ=GX¢)Ut3u\}[rw/<6ˤT8a1{= }޲Jޕђ& ;vPZ `YArlepo~ *XBFp6=‹[fKN^~G/; '<9]Hף/Lplߐ7$4U >,6$M>Ľ_hTUGxp ǿaD evL\V$XwZ6[2_u S1 :4T 9QJ^2XGT?J!! cNY+51TK%N7R?-=Yin \f045bvL0.xc{qrL &lg Aau87b+"1@I";Z05U"3\{3BdXݒiϸt%F5zpo--rD1@ǐk-m?ʞߔoݦ4Qqu߽OZ6f /w_ZֶpkEN*h*/y41$c^*2Q5 nzZ#r~|3gw 2 ˜bx/1a+Vϵe2kZnŦ1=?Y/3{|?'yzނ+d4}lu2nB^*4\=h=FV 7|QC 5C|*gyG*wʢ@DT_DT^BJhbw;= Ϝͳ%3; q:CP"Kn5^8NSЮ\ r΄WB`^q{nTe 78 #?uk7?&{ %2llY{l|,T8hwRHmmċvKzZWyWK-kd-Jhtgld\7((Qef8?ۛ s Q즚)aX≂)~fJ3 B S DOQA"EG3s_C5p-ȷxfڰ)/ ,JWe_Xy;$ؤ@ r_`k#Nk3#AI\B--ӗe0ʎ=.$V=й|,@N% 7CfXq1c )#>nhg?ʔ7v֚'= ;jl&d6N+?n%4᧛I@ZIG_%ɂKsO4k O`h͏G~s:M803-]>?H6Sw鱡v2^Ksu2Exꑚōi4de(:a# )$W8A05|6ɡ@)x:ITOV6nu-t| kFƯlk9/ g~=z6h1sq+/h*)v:gC֧-fe^J䶹:࠿iU82tu+h>23!޼Qgk*-F߇(^,/ B>,CI5bn4 R/ODM8c7a167lKU Sn  0'3$z(u8P8,F᠞{%dӠ.uKVwB1"=‘jAqVތS@#5)Ҷȣ\œ@IEiJ{zɧ~ .wD.&-xU4͈?Č|&-e^ ZYE!ARV:iFC>]bBBW^#r󮅒~䤜i1 Derk;GbQ 6|ImJ 6:-By2M@]xr1+jf48I); c#9Ԇ2D̹f1:T!'d @ X3-LT3[05k%Aiz EzyhLf9h ^Z6PU% 3Ӵca /K#*#$wtf_rFπ?vƘw8-VYڙ)Tyi]i/,&A )&6ǂpCcϕ1eAXhumԉ`lu(wپ!!bӃ)dS1B;8c }DZ0_LH>iFEԣy*dRlP IsMUɁi7d -N%-߭@IaV[J=y Qġ\P^%snCx<; ׾ݝ'p5dٝr!d:A-B!691c7NDc"a3,4_]D"$1gaa3-}?t{͞Y}{ L S/c;~xVxg hl`bjbP_(lZ* 6,>%gw2;՜[iT!r~ٜY Z$RN{@2{APk*r48eGW>_ԏ5_k>@}wD=Q_=e[vL2IjHQp'yg C~7DB9+J bh2";[2Dlt5vmzr+G6:J$+1%vF|F#k(JdJ]a•F5ʪrR,<2b'ז3+Q&2E(!zӃ}gp:zhl#|/]Hjlӵm#%O r;l1w-wTzȚaDzx+G~O Vh ܞ5wPazd3ݨHbîYkz]>YzI /c5glm(OoKz"~ԥ@q Mh)mlxkZˮώB-ݏ)PV dvΨv 膫:wR3R۷< ;RYY]Fⰾcc9p{qQ<%[CF*f2Z}HǙﴓ;:cjZVԻŮȂw ֿdL8=R sy7ɬ}9y IY(|8Fhcb!tA&}A~puK~@*LLJ`Jf^#+جвŧil_cCeVG@ޭD;<>y7_=~!'fj`;C"z'xI &#aOT.g>:*]%M$48o.=ˉ aIevBn!t&KH jh:^=:lo;2L6oj 3>,\&:q?FDsiǓSQh%*h/pd)=hm6ڮw ~&^&>-n۸Rzml> L0\d2op#|O*z2%BmEe5Ί\^D`ͳ@aVBL{>IlEVشY"-k11]B7mSSU LIEq# 5oU ͌Y3jQ:V|KIÅ#}~~G eJ=lQ፛&R؀^iaZs&zikd2wTJ&!iòO?QUg2@IxvHdG2D*O!p{OD*QVst ngQZ?{%&_s4V2NY}X*(LBJ |Zٴ刅_AAI(O㩌Cmr"WWNQմd'/&\zߔLLZ?C@I_d+8 t^aW:LHfD`p sу:lWf-rm'iO9m?^K|\ ^NWu!wuU§7RK1lDS,3?]}1A|@uلW)oH3G|ƒоERq{֊qfٿ:L$ J {JO[J5Q%?@n?HlP(jpeFڣބ~A}y5ܓ4 F6o"JW>e'ָ&Nw1`u~;{3LSǷF t=Q3(5$r8Gz}X'^w(i<w!\_$\0Ilk*UKlY(PbY5i~S~tsyOdM%-0罩rR?Y#ܛ TCw4GXdGs1ٺ7Je`͊B&.Q_MZJ|Й WK52=*@q4C: Zp>_'޻"-P]^ΓhJR2a&RkQ=綥֔Ct/va-q >Q'UƵJ$ډt0;h? FҫjOWʘ.n'%DM ;82VʅyH@HB)E.rT^pީ\`X_ggEV6_) nՕ%::܀1 a·6]AVgWmCUۃE,?ç2H ,q.*L,{b 9MGw5k i̬>nϟAdlkknɮRzfC!OU *(H;h;47 Y+}(Q dc𸽫y D4dTK)F|@+5bev쵚fo(u_K~=z=?Ph3-EuFIu@/m<0DeIi'HvRNN =UOȺn $ǭ + e4RsZ2;9}Ob<ޮE(y!N?HMD6'P+{n"_kizSFx2 OJ90~=,GvFcփB?)FWA)ږ Q pHtr O;Xb?Ʊm }!31F4xe ̰H-(֤$SKw5yJV&`ӯïRU3U)/|ӢБ{lS`A-~w_{a儹rS~ (G )K^ծoln,(j / KTe%ՇlQ[0%DA-~CH?y-$G syE")"z1AN{q&BX'l= yuw4t>ڎof[SK0IPf-ubDlne7 vpl2ojfa2$qz^R}h 4-^. J E#MZт̴\HaOh :(`0?_L{^:)$_ 6*XA 5\s6UEgџIXu9soIhrBCJCȝU$[(_SnqBcǚ!F \?*#=+ H\YW2D8)՝AO¡N_KZdZ0'0xnJ2y r^!qxܫ;oP.So,X{#ȼp㖤(T7,2=`#Av{x-tDW }mzdw,^[Ώݿbr D}ĕ=z;_>Eo)2>DFXm+]I~}]j φ"獫@^P(ID>]G#t_:)N+ sJkv,KL@f7+gh@ S=BV9wڌ!ުvU`.ϮiE Tz~y~O e_cBCοW/=Ա6^[i?FAF禢tS(FBLՙ@AQ+j"(˹(plpnuy&Wؐ[qvxe$@@x)-\K K!{3 $t eTh~iX9ˑ% lъU~  PGƩqj)}|b>xKAHg2fMzˀ^`#]tRjJkX&U=ŋ!+^G(KDv&':FI>`W4z:ٿY*+:Wlp<ɾ4cs`cCtO7B>TF5pXǾϩPEmCpWYwF`ż}zw}R"dSsQC &Y}3O6S( *`Oǝ|P}e8VJQ:"e? `?ï0Qz>T銦-[XWo xrB @lPeu lbW* {x&$(,IӲUNܪσm2:;#:W;NtدīM<<"qH4JGK.|Lj^Νm͟'Q b~LY.ɬJ23ʏ|-M%h^3}yl 1|56#[?oʌ<ԝii }ĝ}+"mWl^KnD^r (1t-~UqeLmȒ%RIZ Uw'߲o''*t`B8dv 1 F+w>6wQv He~TD0YM46+|w[Y+ʏp۰ 0{.ö]g y./'K@@Fw'lMʡ=2+ 3~|t{`obcVc F3]\xdW>Wytc|nLK[ S.b֔(n܌07e8=DdpUO!V3B,NޢMK{,Fq+[G4qOi80ɯ{ =aoȩ>7峢e,'ADCj?{Zs PgJZWηs*,d[E'%YZyn'ۖ_8Yx>6`GL\mxv Y@M^L(2#A2K#j;Z]a,IbJi-=+Uy'Gzuj0NTum.GN9+)gInr"q,c~$}A6eeCq ġ|]SvNdR7w? r2y &(~Qdtz"~OO"*HOJ?.Hx\^`5~?luO G'P3)V+pD> >&*a5dz*mDžh!r,QjO&qsU\H*%/l ؏G)qNjnHƛ6&F XKwQibGt ]Sr m`f\T x0N%MiF|5Q`n;q#7.T(3otuǑjeC1m>ZWό@0FHbSP~SKK vYF$~ޔkK 'IA_1=S@F6uTYKS+N(q_>|=}i-+JfZaT Q0%4@h+뵲<Ifj?n8Ā)n^m ץř 2z^~_3.\f9$odq5XBHW.yG39 9BJ,n{d]H 1& &on `nW=[Gr;d34]{m^0fHXmL-Xf؎j#lJXϰiy *2pnAeeֺAg yJ?E:pMoN:lcLA{zWYwH\Q`ZvlhtE^ǿ5u݃,p0)tJ&XPq,=X^*iH@[g:/] mXݞȼ/2#7EL?!B_0}r99fBАB Z|xG[k`aLMt25IxX>Beb̈ꈇv *2J'rT3"⩧rJll6 M| VZY 쐵s#{AET:(Ƈ p Oue]Zï*E^/P IXΏEDW哈O@AQx稸z_ȳ bNh;aGqnaF{F!Z"|71*XFkJ9CWħʝWQa!Lqc~`lgc/̐  = 1#2@2;3 ){PGJ@7\qhSzl|ᗘw7(x͊|`E(]&eٶsSYzLYz)Eq|ZuYup*JF59x@FQc(E@N\[3tRJC )Zb%4Щ3=:F[p ^ܤrH+,%\C %Lw?Y`;RfeA(ջEU+Ej/l;$se-F̼J3NlYgɥz0L<^Iȑhh~U^8˜1z?LaG4ARt&СL"c~2&SPb"ط*zz| mփqe^yyܕ#ɏ V+R=l&\eaF҅cdYnX+Q\=3uC -IĩVyx!0+A]]>w9D0_$Qܯº }E՘k5)cΝ^rԃɮ܇[Fcsæ)ѨeW .y`5*fⴍltѭ4Q s5@D t{ yţ_+-vۧȦ.Ï|^hF}jk=.=iuY:7j2rJ~d7+tO7C@]{zlj +01d-}yᑾ.W߼  >`,?*]3 d*x)K HܨvX{ɱ\|]8iZ[ ύLqNׯV_Z[jjH!kz|V>,sUݳ]uG{80f$];Pzp3{{ºnn*ܓL:ǀO@?8q}U4p&" @}aGdNhu<{YƥCa5]yE6~s)ʘ &E{Jb#Q Էm$4e=@(?U4?t$|P_nx&ݙu`vFQ ]$ fuldT\Yܐht @lrZ6K-owdIzP7LD |D5 eb\ۇn^&̽,"`:D|52P똮e*U@CE0dϰ9ՙ/U0ļw@Sk&S(rF&Ͱ_v1:8=Ҁg!l H@?\:_Љ(_bP8Hru^շlmipm}2NlU:IQU2 ވNXwB3=YleC/M´La`n>nv cUĬXV#2,]%L-.cfǢWdn&e0<6^$[N +f+I׋>܍ Ґ#ܻQx%җnp+]:+q8.XPK&/޲$MJMo- O\w¥7'fǍ faZqGr` }W .ۘ4ոA@$4I КDSaqP?ZcE3q&:4?k m2D7ޭ֩ƣ.mYHގ)/&.σtժ.i^EC'ٴFY&PEg aswsl#wd4 TkPE2gꇐ48~"uPdfՎ +{ ZY'^QP iSO'"5w..7Ȃ<,.YHĉU.4Q}`)5o!{V *0^I|vdBµl_FI8 A͜P!)k7 o㳒S(auy_X[$`um%|(|~Te#,Z#|9KYcu`ţ.A4k\,5&/Sh`q֋e; ,=۳}6&*zt'f٫u6GppJkUV|kV(`j%ȏJWRVD)!3*2ՠ٠Fj;F]7ѩT0Urzox|K3b2g>O .p4[fAjzb.I8wu^|+q,ь VDΆ iSs Qw1§h]*`Ҁ_]4`k⇼/7 0SF,Ƀ,Q~K69bq`{nnb$=%ypvODH=6O;2l4uu C)AY@ԁ'j>I̊^H\RG Ťn|SuOP#Bx1ƀtv f$e(>j ,7H%orlS G ugA xKL擾t2S.JMǜ= F273f怣+XFcxbRjCgSW-mz;Kz5O':hD9&SP6dE?8l`ʉ0W9 U9vSaQf7 G3ؘ5 7 %3&C K, 2zM;VXDĴL '䏽SSI7򽄔K^d[+GRI~Y2Kwg9ҿ~gZj'U6)5WV)0?ُt%]j2 `%.%.38%5ˢcʐG֢HYWan s<o4)VڎK`voS:krgP$IWf o7Hw=qh%Z&*]Fw>t?Ū8Wmz+#ofL{ sTS@tU*hQ9o+ƏޏC8H1%=|M8JT_-0RL#NUB`i $GezC#WfVzG~xzJ#yqcOJ ^!Jy~hmQ'uY1@wG"rqLµ8D*fh`ᄮնHC4M&<{P{qL趱jA¼#O,S~Ǘ9DwMO=#UT?7;l|G T7eʁ:VqEViacY%lӀcڞ: h78X""+ ޲Cca}T fxpnfTT]+S;)4&tNg1NSTpdE- wkj,]v/=|ZWsi<IAD(e"Imc?#jm) =;^$r&欅52ݳ9 #`FdMi\/M}ذ '(A-L뙳RsjٚԝC]Y_<m %4kr>aJ_9Ԥf#{_aw&H-E;/9 ө}ifC_鶣3(,ɉwҟM_>e1Ef(;*Vkd>g<+9 O2 |³&AiB/is+[ 7[iI*ͽi}+y5ԫ߼~X\qK/#BD]ZR gxqⱈDǘcvytɱR2s,Ъ6 _g2 1;W꽨  &3n/kSɏŒʁS|jR@=3S(cd6GMr)DDX)yXyF牢z+j2zuTYkA'jg=kz.}tv0IUr0.-\{PX}G+pg@^1Ho$.뗥qWl֬#z᱿vHتGhΛ o3gORܞk`A],IhuPCbZ+uD#} [؎che d'XebK@xbߡ Z7@G {d QdFoL,\>ͪmRYePʟq:?~2>ZczvɺAQ%(nJ2`l@Ilj$T"Mmk$-f8/(`+ڑĊTUi/&){J1!H2¯{gI*mω.6R:GdT;b !XyʅN*ţ=Gd>;`={[UMRӳ@=fR~8-E,ϡ'!iwu6.z<#EGW?QE[ F6ICt SŠh efr Xo0<39eNJAoɼ& lgrվwb5 s61J!{vq/nCKyIBK5dΖt] mR$4<&uӯpL~h _ѥn ٻCn-acoT[N.e֨DȔ|O`(nx4WaC_B.&.G;\MADC`NWJ#ō*V_RXƐ@Io<>kne!n}e.ԸQתkSآ8 o^s0#Kc]x$gG}p܀>Y~13w~((%?&cj&>{!yZ:.N> Q[[fX ӟnWsq[|H\`YJG|İl# PXf'9ʡDڋzl{J:XehǏ=H[[+Qe,ϓW=}r#>bGJJ"itFCmB@DUBۨtqBhVEpx*+2V^G쥛H5TI[4u !]aJf6yqjIL2t>kPd&z /C;}<`Kmv. )89N_o64Z.j \A0xMH4z};?բW5D`EÃ=D7K3_j߶%m%OtOyZ׺~q"7j%P߂I@@ETO=SmfOMajoP28h&u[e)4fks!O*o΃gOaLjp/b(#Fڌs! zb| g2 #0͙'Mݾg`|rbS'Z-JECS6|T ǎ~CM'Ij !x۬lHYNU+'z'T]G>c=+B \"q(2mP=b$7ۂᢵ5BߟSա}gOFSsL&òm$q6VeZX'DN~4.Th_ My WE#LDcCL.l:RԢ3[?,}Đ,5MnzkF#k[,!!{ȏf ?AWbZA z[̲f4bЬ\I 9UaIHY[#ovڟgqY⢴(S,uLNI-HZ[JnUs_h7i|򌕮) r*8dR\J{#pq`Y}?ؑ(gze׶YacW3b7$'tha>t@Rz>oV[k|(%x۝7=^^QrGc [)iN7YKٸ+?kq t_Y ?L>y7@Z(\*b`^}w)ub[Tarf wC59Qf &(I/$z4+_$lueC/^݄^BY`?ro+f$nB!.-`[uP 9>< +'w^/7Yqʬ`xy.تBxN9qd.Hפ68 G3[hIJDWjoz;bTJTʵq$bQhV]!SvnH6*V1:T'A^{QTڱF2!zBlr897CO7󠅫w)flJob>p0R$[h ]Y:lª/zaF7vdM?ۮlw`7J zVbk[e5ױzu8B-wŘ!Bp- g yL\D·+ AfQ 1ѠT<\%0_gORsQl_F͢j.1jLW8W+ @Ho^9SY(6x q1tmH"RyWʋlcQ Eד/2&X^}}ͽ"e(Q)W=(BD^a )SMqBk#,`%r 0+ BD/op-_}n(Xnl-Rԋ #n K*Z,|OFkKpiz [L/4C8]#1$VtpkWn㰧y<.ujJ#@S`"e\OyZC,5fQM_ƫߟ)hXG]fvAchOd"L Y-]!-m[ҳ,sԗh|{. J8zqƹEp l<=bg@Dǧ"̦PKDm>j}1Z]j^263<.*d4ЋYQO*|*+kËĊVPNJr3s|3T˝~P3֦#ɿ>Kicr'GruBMh={^TqEGX}hQEM*v7 t %ADaw<mbP ɚh񎧭PB hM^SF%s"x{3zuw1^:6[z(*\OZE6Ta)LkP_wu|Z";__Fs%LTmfoDY!XO,Ԉ鶡%w\(6 C&m9+r~wHU*^ŜpK۰ ”˹@پFc) ZC6LàΐF|؉WfN"߿l[([;w NR0:gm衕^u2 2#hg Ȱ\ ;oPl9-# Sȧ!tAg!a>={ky}!z-ZxFUlZkM>pmƅyƶ/D `u)D831f؟'@JcVh/Hz8,_Ezf#,K) TlR= 2]^GobKxI>MI}U۾OZ8aa9dݏF d.'7rOcS僴"Zu & NaoFw= -NIz4 *GlHŌVXr]m>p6bWG/wk^\dРo^nTfF%ċyjZ=nDK{F%ޝZوʷ{,翮Y?Y94(Vـֹ] 'GWҙ= LшOXSĐxC&T'vjsAOenS&yUrݣAJndҹ/.yL`77J!²jQ8Y>_jl{QP._ E20tF&J*ZJ +$P5ÚE̬N460N)uha& :ҙANJhW0iVs^ (0Z|-|elbAgdZQs=gf3 ױl׮L4HH-1G{ |,jI` ^X5;'!e]V@, .hI=O Ο!aq莟 Df-2p$'pImM%H\d*G3cv|AiX4lQRmV}\َ?N AQqy^Ag[\@WNάRv8bm;E?\:G,$bq?ǀ#y!N4O%d?Wǝ1S$v־S5if8p.29<'y߸DP3H' =ڂU"D4ٽ;2lCjYg׆ۃA#p25M1ӏЯi-ýCl yUw| yT,7!Z-<ǵ/57(LR>a:~;VIM3:1.AijZ~89Q-v O`CmZ/_hڼ^|]w[D3;BxZTJ^o^j3e(Tzhcv|*|&Ut ʋ#Inyb‘ LkMJ9usC71S M ^Lz.[qX1M!&J |"C:e6aUȮz{> jfh EllCf)Hjk{, ,m]¼jͭ%BͿ&ī򝟁>/k_2YAqB°hU|+Zv9QTMosCYqpKЙ&F$@k1P@̀O}D.A:C}Q R\}z|A pu4 #`Q > Ν6fAPs0UUTvESkP-"ӇMj%qW {qCF 2XEkY7oj;#fVl?`2EqC;bS$4=m%"ˠK&x\ G?eec'lgUX+1)^>Á޺uxH'qqv7J{͹;$ `KPg"e=,aCG5U RI|܉@;J g{Y9ĮjTWe?O4 j#e9]ۑN#t{/tĿ&2M4@b;n֨@عt=s  thNbg|S~~Ʀ@n$Ou ?N!ZGrU%wұl b}Y<UKLH* A86-e:qJa@ß:.rf=#D7cQ;ܡc8oOZkH/ِxJrQE ٛG{3".eж1Hi"˝{wBk>5wzwE䏦Tf3NCW i'EcƎ/9˵&q'QK?Fd}-z5>11'b& 20mwSbȶdslEeQa^{w@8Xa-Ce"9k£5)e&UoE^Em#uf;κ4&İs(aʿr&t5p+ݓ.S.z}H[|MczM]W`R@b JG6ӹ94DԤG*Έ;kAnsg<[)zUx;Cs:10qKH(utKi!Zn7gC{>LXǙdN[˜:BSL%yԓϣU7~_kH4phmdZibsڷy#aerpӔ89CBP:֊ |.I"9SӪ Ax!ysBO-kC.jU74y۬JԜ9Cgʖ{Wi*0KVaQd[sl'v)?G &C+jH_8꧎yU&IP ]29D1ÐXDsb W™<9,$ŀURT(6ᡫ $#jǕ]{ߏ~~'WX\n|?hx꛿a=lAOB7jS627lrU\LxG@jS3Bz)IT)0l|me'5˯ QWoPeǝ3a?RnD~b ʟ/E$6[ǰxڢh*EpPl2Opq5E8'[?0 gN$oQcB-r =[Fq՝Q)ֵYSks/>e=A)Ak%҅{;X^f1|˸I,(ao7e!܀^PC FD?¼ݪ\+%~. sט$CuK.2UI-*j|hEFph[䓓 /of,Ø=aiDMEY( Ӝ )l51G1%e v[KA,]D3H"^ !{#Ց2fED֒6r)6H< oXvxu,ðDj$3;^bkg/UiIЕGmdzܛO_>0vHH5Dž^sQ@sR4}2l4o3@*嗜f}`PfәC5i_X" C^ۗ{AO7о_KLlodxY"? τ\aEWëgaeζ VPPbj0U]կ( T' )vݞF>W2t:|"9f*>T)`փ d-87ݺ!VμɈٔO/M ,RQGA71}§rHyOLef2H5%!0ͻF]D'L1E˙b.ƪ;XBx=UڌPфIzt;~eY1Z+p&x$/ku; q5$Γ}gW+FO'bPq΁t?=q#YEHH$JTE\%< " >|9UzGαn^0Cc[׫dwt $4;e7 6aDvf=c)!PR>tms.ma**r"@1RU&'9˗MR4&&ϺۧЮiskDA#фJn1?;rop'** `Yu;f^f Q7œ1`$oG6gIDd^Bci=~Xo9(^}Ha<MM2b$;pg6LT wRHZ\%H6}tY#3־rè&.{kJ&F;05i 9^wG cƖԒPUp8.Xo7(pkŸ<33`O|aW>'}U9B@}sm7NY8Ï]0kcsڭ~+[[s%邺Li/| vԄ5g\ʦSߡC?Tie'Ts? }Z䭭TPDYiu92ș/4;{NFAJ*ˀ..('O )צ8 $b'Azᪧ-sc5 iaI=-=dYgEŔ䰕]s9LU ӛ4#F%ůwZ#Ө- a83(]y3咇T@;ab#yvkwޣ{@\cGF}"_PL&#]{O e]U&·Lt<β%*ӓ29QyփbZ]eC*ȨtvXV2$c.g)7УaJYh~Iif_BU7_=e"i28QS:~zb|?%Lu"t}@ |m0m^R0i~|n K}!sT.-\|udI <ÆV?B⼷0pЮwyaM禁g9gxxPAbP's]e+(#A;RV^ztV#'x`=ԁ<>}|PAR9k2ON3*jT.h amcbiZ yZWXP1zc/v9✔"=f>s׆OIiH3ck=]?܆)JΣʮ!;Qd쎕nel c^-ΠMKƃE)E۰l.,dyUG}GFwȌ ËH",/D9 "NhXt?=v~ gYPKB!'vfwWQC<:1oHyrL-¹6 UK !kDBc%(2r䊐WY=JIȀ0,[X"Yy_ 02<+Tx U^}ttMtBiYPg8kSMM8ejx:,:t =jɮ{68>bUxި}29Z#DͥOr CoZG lb{LxfVrA6Ga$i-¸jd a q9w~D!Q `1K' ȩ(C7 M* x@0w+/,8%8}.EJUb]ja0s=1ڲA/ȽVYR9TTe)9ˉAn,k+z0.@(qށ$S5ѐRZÉ'?DZKNgO-`oukr3CpxF{RV':=]6^A փ]U%l@yx@ L~ Dج#X8u) qK- %a]{ ?;B_~IϓJ+1yDw}KbyD+V1zsSaR8 UKDz'Hg[a7> ݈bhnD%iX;(oC6y kf&xXka# TἭX0c >ĵݞwi^{K'Mr Nb3~ݲQ^ڍ۾G{9s{ o.l%e1D31`"%QCAB=T̮8Ш^ GLV$hk$i"ƲR\ L3V DOc qLb@a&Ք*X R0JѵUz8e/]eG3b@Qj],H 6@&6C=9/vT_U/(/u0ܵc=kSI+9XXLYknsz67V!$<}JMm y:-lTus٫@Z)#٭lI9]Qhòq[Y 47 ^b޻5M ƳVp,7)¼&թ*;֎DՅTko9%Ox5 (#I̵ˍ :LTQXi,Vzc$&muy (W={U^@^!j?D!*zA ȖUlls "a*t%@8ʹtxoE;s=ѵiRcF"$$˾H'8]JT'봵(-# gD,o?4-$] rۏ]_T=X'E9z^]y(ϘVG TCd&<oS "8ck[:\)H^ixmbva- ҵ>p[ dFWi&,v1`D]gSShdT1|ɻl0t{R`~<6|Qd! #p85H(KS j#;2kl._k ip^V T&.~7.5N 7Z8)<4jrɒ'Ж6ɻ}ADIFkcL'Mo@ubzH S0TkXoMOpVօ[~Tgmߜ,: c|o0Nh\"{ae!zY&5Tv QĖ(P-b&]G5Bo%Q=̔<CN9ԯ`QmK!rBa=X-g+ zX3*J'ydnMHP\}QKzE\VQ9WF(W8ނs;aLzy͢2y|l,[HSsvzwfAqh_CLaxrՑ悋?Eq 7P9&Y.q&b3GkR l~70y2./gnU0*hн F PտvrlB$uIkmk3?hHI89-M%}7xbf(+ -,/рy(иiCy&>ΏwtBb K=`PU><.0_Tfzئ:+!<~7TP=Fw= UwwYdΦ~2,:(#/AU 8=pDs@#~%,x8V/ zv' rUH/TKi~y6˄Z:>JqX5l?2ш>f ُax1/u(@,O{r+忢Rѧϣ?Q?TdѝW-H=EZ$ Sh-;@t^੼rsptY=W0;@ DzSfh2S<3n۵!n ^M /Qa:. Nt })O{1 Su6ɳhhxq5}4Ќ&cuQ׬k}$E3VWjZ=/aoz*B{aR7LVWhuF$\}̪% њ{ad":.Ws'ڠUYы_4|EQ",VJEnG^gY=<&;OZj\m6/A2Ä!mfiކ„]aѤ $o"\loL v u ()w {R:Ɇ0E>Y 6c0"ywFBoC0H6EAYCÖ1YI"V79"oY_+(z_mȼb5XHIig(Q'5BRjtqQ7f׹.4bvj=0[40lp7o|A,h'y:suE s2cq"Bt?_Oq0'Pmbi+H+9jݶ"nFrCT PFHf2ij*ZNhưJeBf9cK'3FnG;zfc5s.q?r }]558iŔ'%M!תsn"Q>|NN旛T`ρm__WQG 7G75˩2ӿ6 I]o?=1~8S7pBѥr9w *dRAGZ@+އ)2dVjKlg0?䧒gà:1\%0ItWHm)T]K ;ԛCG E07Ҩg/]]:$ lou1̙_@Lnm_ yEOΊrP 'FK {v r"dn-U~D>WI(EU_zI)e]Ed%ź䦮Չ<5Ax-VڮlySA~A~jWᔠ_(Qhre!aD$U G%CH@=^mUt_HW,Gcl%1`7|gc{ޒJ 5fG1R`a9r:t[pDcCXus7D#f@Ws3 cZ7z̊llv .OaN"-ܩ;iϮ2+~k4% O$ڨvFK3!c`{pz6,܈')$ӘzְKq6d^8O)u"Xzot ~ʼnX]b볇$B:pd-sHrIasAlw5~0y3Ą3d> S@]wR&L7(u"aJY E+<7uF4geB>f Ov`څ(y}}nS_lN5:`K.`~ʶ.f6h _!ĜrU޿~c$m{.zfkt쫘&(U'Ϸ"?"v-@kGlGuԠ :|}-^5CP^~ǎw(Vw&\' vA,ڎXً.e?(OSd'EB ]t*die0w3૬Tu K9~ZUT^CQ\~ǝ%~i7܉zweDqQ!I(Sʨc-ݡ N-yUz.\.9 3 Heu\1^'?ԩ܄ L1^E?8/ <@Ի~(',|ڣ 1$k!5bՔ%PBh/G2"H!D ExY^_b2Jϸ*~@23tfӮ-NBdX>%8)"D!d/)m }OAlP~S $}cS8i*1̵ЪN]0ƲǺ 9xlv%#X"\ձ鹽Ntk5{Ù {̵ek'8z5O(C$u+RrUԂ,ڡ_֟BZ~^tX\3Bǫ.ygx(//" qvW ƙJcts e1N#UR=_U 59Ġz6w·1tqiE+gc0'kQG AJG7{WC-#󫃢c PDQҬlukCA=A ڲĖ!}0E._U> &` #\ OlRPzzHj%՝@s+J0*j-Kb5i%CDE}d1 ?8p2}ڽ1jL\[ Uo_<{h m*3j{kX(=kIEٕ'U5R 1X UIh,J`4}r2 o`^ȅaf @ےU6dƀ TSrE.S\ynd++}nd4q(,ź!IKdLD#OsA78_D4&U*(s̡$c_wum C~Ht%f^;QyL/uB@@f7G7FI?FEx7HW~ E=1 ;GBf9v n+|a%8 J˟#-Ziyڇ(yR[~UFܲ]IS}:W'+Ʈ@EWOX"zf%'˯ %q_<_JsTt))1TY=}3Nj}sq܊1Jwպ~ZV} c,9TO h0u:jkum,?ZGx~Q7؎IʪGדHS',ⷫ6 pTEع 3)1f(ثeԦf&j=?튳h%9ɐIY=Pbkz()6VG34_<ڛ`+uEZu+ͷƐ_>˂;Y\C9|stwL,P+qlع[#m߅0CKYy?  Ix#cw`;]d]A̢mQ¸ҭrpS3CO XQvTP\)@ 4Ȧ5= # jӉ}lNI?]YҾ ߊ: ۪mX}` ;"6evAM :G-D ri'f (W/:G҇+h e5Y[rat`rOI:([1eGxA0=V(y^lʸjvL unsccv*EF[ΉklK%Lrڕ un:#MMBrVk ؃ρrb:-fWm|s@"BkʢE:U--u2CV45?SkB6X*i(+Э!&bA0,g8qoH;WoB~Y-q#FK 9FrC@, a3SDŽijm]4!mC([v1䵋Ƀ aBe~l/h@"K6KtKK5*\K>Ac]3kWI[$?rD흎_xhfCu)!{6V7Fx'N B 3ۍ"@%%bIZ*~x@{%N*9zCjB?42T[ lA6bm1s=jAzFpGYPh1\u0kBT=`Im^^BVÜk'aNcQ^qU݃{ZZC6Dca.uc7b?(J fS6^RL٠_~&G( 21n 4efWz,G}LJl:QTϾ)aPqe@&q|-ˆ"a4η<_VMJ爪\_J75 b[h:ot9Fڇׇ)-o,)` ߅| "k]y.Pئ{ [u4ES{3(*ه ?FsD*3waB{eWMmOL\_ذ;,S/|v$'$HmmP\ {H>4;y-ZLp dza0^yb_K췷m5q iatAF Lf.{g\ͺb>B5q.#>?`Il<"86v7b$ciU< vv^ @zI< =w\i[|Po2[b5.,d^aE0YUtxBUNSmGk ,Y<|{|XP3,=s2SZ u-gэQV)wưcak*ںp5Qt"ެ~a0w9z݂WV~G?K]ċ@y| `gSlk; Ji]9].&| Mt bvN; y`c@+ŵQ/0o=|#f7xhh;$q"xK~t\;݇X ЪaֽE#(#D/DO JWv|3&쭦~Dk҅)g(M]bBhl1vEɚJR6ZʊY0촔 WKIT{5N-Jm^ V#|B(oXi<&g< mY7:0z7o%0" 2 /P NGPqꡠ /K_Hfڗg6Suj:ZB&,纬^dÖF=6{3Z!~v_ rnasZŬF;.,S7JZH %!Wβa$) UmU{e+Jّ`x_;9*%`['y +L|wH&ƌM|*y|+ =(Fd!7qBcDP Ӆߵo ;L x8q#}3K;1)emKE.F(MEaƩj-`W 6`Ch#rkeE*4MV7Je56T]MHDS5ՊOtiiNGU%3)#ȃ)xY*>HC3ElY ߅ܞQCY#9}! HV+'! yX?/GY4% |&Z-֙v<ƾ^:&4U$B"3Gv8zBoS w:[oda^!16]“JU +lq`HsMr$lG]K~2b@ 谗ֹV1tuzƟ'/q84)FQ|RQ=*vFט neIT-'. |`~1'G6Oί+ܾk#&^5-pE8|cWfj J xxJWm! GYv/SR?5 وJ}RKI)b; PO fIxaUUYƓ#s_PVP+ V|Z/=BY|{k5~~Yuf" ?O w)ZDMn#gZD&_8TdrD7sdr8g)i"_=r3 q!9On JW 9zTm(s/>kËIBQ:KSga?y_u#:eaR]uټokp& p.wBV0VgD̬-#Xk]v(XX =D- #StGh rElg0yy;ਥWrй?vf"s~"V߂5`|~Zjwb,8}rkr&2Yޠ" ;th8ԟN G1.ɠ`uLvNGy+%%8T,\75&=4&85ݠKv -uETyA֘"%R^8K/r(G:P{GQfd Qo?,B bolCK= Ěg/d1* آݸ;>rȃ1Oǎzx-vluZAf$ HO7偘q Oѥ'e&۞Ѽֶ 3i[gF-1̼\+uMe|y4w-px'$AJg 0pyfAvj4j!:s1Ԓ׬T e0TX'S%s]:;ߠM76k}%ZoNn'<|7V 1eKa ~t-,@Z6 x`䪇B^hN}-o {ɞ 44Bu[g%B2\CAG+81SM&*:/ڛUr en&UGZR~@1?)S1@ԎG ~l]Bu zshmo. cTQvRf4yj[=֌+$ՔnWK~O<~J~tG`&tWIt{-YZ_1Lޠ~FĽ3$,Ϩ?sm@U #h!=C]x Sxe5:Hy4leo~~u{,;( JkJpq霾z0| 7|Ri]؅xfTd}K+p-6%CƓO4 Ub {xraH6%Vhgd-v֜1$!i~s-Q~ 5;;qMIrU{:zGcK%*(̝%'ܞ͎!W{%oټOB4kHŤCݍϸ֧mNG ۧV Q5?8Bn:9W |2`v+2I: `2_y M,$Y^hQ^nCsoFWˮh1sAklF:fgxW ̗k"&@]>.Rdy2rv"<-6RcG[l]4/@(wb:eA]$l(~]p{I@޻xXT~m",椨if&ijP9{;7s I]HW`D^ԅ*ML\>Ԥ-1@42(㣨obr h$-,t-n_\gsߎ3 3rM6'Ly;2^^Ho:&+,P9Ђ4qP9yWbgc"󆠝T!. }go/>MD/9Ěy=K uΓAȗFY)7W|dR9yc̱e1v:K-r+{9b,W/C%=~6&0N;Z/:RTvuS4Qz`9 <<*k¤~{rޟ.O2lP? 1S0lN1CZ͒/,gæJx`^X3+5IOZBBV':X+5Sc,^Sl[.O_#qBkphj#ܟSІ% x )lk'Csuջ۵hdKw&'mG^k{ (WZ#{B_r*o Ɂ`X"ްA<٪sq"s;ڛ^+ }R* TrfJۛOfV;WoJJsS `5[w7MLW(:ScO'8~ONr֓D|F0qP.Nwy2O{ٜFr2eNCDz0'_7+ ƒ^Fh.I:(VI:OvaCH)~JG];'|F̉ljA9vf(2+_/wU9"Gͥu\1 ._ϻr4c>Gse&{K.8Z!/(NJPb ]j`dFK-V~ ӋoM t$źƑ1:[.<&g|y %{P Z}jpsF%ȶp<TA{ly{MϟRs*k-:)%JI:sa%P~ϝW R_ó 6hC bF$Q݄a?gW"u/ +<Ntl0m347^ӵNuĆN dvxL9ݮ'Zr$ϟD dcÈGhUaR0E^[ {z3p6ŅXG-.Y[{JUńz I1j̛w4Lov53PR% qo 'BJj+`F'&6"2@ Q岑R._QcsuZ3!/*jƎ BVuͻdOōa@JYA[.;~]p.6XT {΀f,ȫ]`QrHX0n"S1+R0fZ^d:4ЉWy\scW3r+\\4D['kH Y2 "{/z1[j-ڑM:6aƛV~S:^E7v4@r+Ucnʣ&<$w1QlN )r6x?D%hӻ֛/هb [{%Ȧ:)z ǂYXO]t.s&+CĐWd{ g-!w) L0v5n&*d/=Cf1ife\pdT\$$Tef+evCSK iL(4 ͸T@Yz TέET}2fvq$6&m~~H[r<5ڎ wMFyWͩ:(hvјʀGfŇzK#K-.{YN(.'K3q[q40Bt۲2Ăb^xhQ%a3,X r؞$;G?yc3BOg Mf/}}> *DK?ѽ!>bImoh[MI9&-l|2F D~ K}!WS~3`E#ۤneYd$wD~G@fX`ȍh`\%XVbuv-c5y0mnlPKTϴY v^ 2R?ay~o6_wz_'|U;y ~T&!3 N[LJ>89̠G ۜ'=p]4Gbu&. f$^W][lt9d?/t^gYnΟo{t#luwY95]}5[sqfi=DŽկCRbv?uec"\E]YTb+I 90z_+Toy:/y/ɀrS*{vX,өGȪPE9ѽ}>jnmfĞ픞vXaꨮs5gs!_B҉ :QfxgSZ!2oį)K ?̸3ЭQ5Vq̞5kaȩK`# B3W0fAPObd6[4S15M licd4w.·j~Sw,m ź@"P(EY_-<VN3SnbdZG-ܫ,;tǵ2Z7nB Dm kdO𩟒áhFԲ-esZ]z?_$EľS-(}~T\ggJ+#I?(u'R~&c BVˋG-|0bٰKCo/E73JRcFt$mx̚~t[Ɗ̉M{4<1g,Țõ`ZFh;wNʷd;y'-$/2X9V"lֻıx*NL+RL"5yHw 6EE8_ 17@杻R)-zœuo϶p g#)Udh_+\4Ȇi0jJM_sUHh'K,!>_quQ4^>Pch];'_H3p\WۇmiQ#0c+O~lۡ=rTeaῙ3PC>s zpYF)&睇Ԧ&n["m:Іa|nT\9pcd4s;Ͳ& #/K_m cDY,[(fax[,}WHEZblQsbVl ˱kz*i݊? pŝQ-8\¡: w knu:8Rsr*u}p22*g:+W⭝ILtB\Kdk[Gw~[Y>|<{Fr+'D1FCu aͪc'u<4C){h^}TyN2txQ;v IsLuldi)gHNH)ͤ5'P.Ӓ^Ȁ+4wh䛫ZXC0ҩ[֊ҵU" KÅ",\P EZa좾ƉdܼN-̽}sAxFks% 's_%ԥySyle.uN:5E鰟\hW?̀4HbBt/gż˟[N#;Pq 0ӚߠjP8gJ,R[蓳lnt"7YwdoI풆j_gltQ쬩Խj-dv6Ʌ2m剠(J( S3*blmޅ9Z^N 0Ko9Pܞ^٬=.w4 ˪=eW- [ '__,i 8irnu=v,X7F++%Ξ_"8oQX5Ҡz?%6 S蛹{H^6Ysf-=nF?9Dhbkt{1)[8_ӕm?-e4'JJ-C my%XW @ZJOI#7m5[ .EE[(+!ee2bN ja,2+)D9=tPB>EA c?›,w_ r8+\HcrKAԋ$t041@?@u!os,# &u-W=6qksz고@*85w^gp<`imQΉr|M_;%yӕ|6C 'vg Kwt*7 :b&K3heoCNTMҢ+t+j Nen CaL)H#4hIxiFa91tVci$gǚ`؇ֶ}qbS,J+)HY:Dph|O KSL Ű1iȩ٠-!cqiY/O>dwŝ-OɯfK^U*!R!}G%<ڗa%.4GIڑG/@qOـR p}}yN\/Ga-[*w&ra-h툎S}XuUX ,4@]-C$wyY2 ws{mfZ,,esEjg6 RĪ)Ҭ`f􏀹Ӓxh{X d.k 9wM̳>^ti96(iB!JH71zV,kkpw1U%魣iKѳKϒ!@M/D5rѵ6[)}3ؚX6܆J3P/A'o*P ӨOq8,ZVM)=c@zc \JCqZ!J۳`E^XCdߖ/zqI׃:GS矗sx%nX UL%Ypd {-q*f'"f^5 ehcWFA(~H [20U;D׵);|t #$.ӶS ;Uw_yym[wXV gR/S \a5rc5ׇG0z]_30b:vJe*E cʞVzqGx_^#q#R{مhOu{҂1yOש:lH"|[) ׉_M nfr D Ք&4HDTg\O*i#c}M;3T1FUV~Gʟgwqmq-4-=&pI/l}V;p{f: iQoxd5RFsid2a5g' We9Z&sE Ewp;S>i"<[6zßf;hkRևdv 9 HZzv_M/·VZɸ V^VqEL,P6R!҃1pc*rG1~ڂ3Q׍$<>l`5( wWM( <*6Ԉ !`EiW1|lKZBy$ܒwY/LТ.\B?i#r%bCR0\\] gk} }cq&nK^n?ecB>^} W%L: 1D".\Io@0_ȕ9#RǬJTQ;*ڝh,LbgFR Ldؐi>pT{f8)ّkߌFԢۈWE]ɺHz|;2f:ڶI#tMK y'up U /T>;l HOu/kHC𚺔9`*ߨ`( W(יO%P.KӷoMS 88aA @rTј L~Q {Ϋ+sis'1kn쨑Tj 急o,;6⟣-}傆D78p83ޱu ⦃p7Ld\b=|MWa%b :ɉ:Br [":!z4 do3ݍi7}eΔ#)Hh61+&~)rVwFD-?,L0xfwJ/PF {p`bNjMc&8nAbV-oZ) z pmNJ܈n9q?*>#sZRlƶ5)icAJWvj5`n[)dmRĥ8$ͽw6{` Iݳ]5&8p H!gh^Spc"HN1  :6,* NE3zV, iF•HvJT;Y5@]'BC[^alh.Pԅ@klzBYrIME7Ny<YVR` /_f uv_G%7&GBl]h틳S89J.)S6% ߉Z+av=um(. hL`Oj8x@ozsV5@`'Mʫ}ɬP,*lʓ8Qż= $.M0D繻!RM{lܐBwژ_'7ᶏ ogn00y7f>ldXGv&9/ 4sHaJ+G8_H36 YÏiǽ_ˏ.PTwV#;nh ؏F޻,2uk8 CR {[_{fCN,ٌ;;X⿛zsAt_1+dBěuEJ$79XPE$<=&ȱcEo;sJ~pPe]`;!.L([I\@BxRgYQv R %U ǃ&'B@ p{=_ Y%Ԭ߉Ń  Ƨ2aU  ɹhyO:;<&S&Ы$:SQWa`l?6/OWV$[nu?-4N~[1k:E!G~rLXa[o.5$hihbyhzƕ]7Vt&xȠ242mXm?0ELЋ8"Svh$X{ 2ұ/4f3-)^5JdLw(4GMZNItD֖R5sD:y֝LYɤZHl/Exc{@D|Tbg~>ƅp\!Ɵ*ŝ jXv-V7 |:ZF}JʙXj،ˏh7&0'V={\a62/jff": [O|d 븅1dnM1]2EȂ:zrdgO@@$d3kU'O)2CQ̯aBo',/k4WwIQę{C8#e\ƠB._ ex1I9 ^̼tc)HO9+9je9;y.t؃Ҝb5zЁV[Do(q^uoؙq ,}R@ p53 2am6|j̷Xr.%HԬrz735̤F'``9mmLӌRV-t=jp_ e{%qNbڍ>-P!ik~dl0d+nLSh͙{ve.iyrm&pɋKlCz#1'0)8FzML|JI.-\|R&+P_X^M9',#Ai7\.o(Q/6ù9MԳ*=($}An:u@d,%bKY &g@ /0oDii8D*ʼw5?d_U,x')~zȻH3J 0@dqQٰNi ,>f<S|Y #Le0HHƎ?D[S3kKfOH@$-=Otc 0+%<EFN"Q܁AYB ~\bwl-^ *Ua;>^3c`X AkjwVH#ò0+O7w}u#`b({="7 0Zs{ 3'Ro;*"VeQzGl̃% ܐ43KPf߂ݪ1E O.9z~d qGtc/I1 ֹt!!oaUWrC^KtJSO+bgmp|;0)/ł‡ ֵ%Oz˺S2*4k%g4>]YВWPQb''+3'qZF(ll&᪏WŬ옷z Е7'mDeKdO׆lg?+,wXJcS}4\W9vQDc Î"bXJ4О[w0qIȉO}D 1fx .;nth(*В7) Pjf-ڲav &=?>Yb?%>(D ;ː9)2tTRmᎶ%xjk;'"JLm?>r}SW#p!&-\|Bdn3NAf1DM%8 dǪ |R|Ccݖwc#7G봻,+lRbe?2ӺrMwT9?%/ (WTNjnD\D(VvNxnM]3 e8Q|T/!<+ u^I˸?|p(, >& #!!@0;vR ԐKkN03ZU.w&(QjR('An0Zw1ӝGSȂbZWBSϓ$IP"8eQ \gwTזRb<]܎|{`Zx bZ0*LDoSE\_#u%33a &tȬ'KE34ڨ˘}89J4K"'E9F+HFАQXEV7z)vSg>ƠoaM Z w2D*'\tݷ{k~~.c*_CW!odgf;:Oѕ ړ0&[7$_ĤDo6j^b4 >]׾ ~r^ף@!)=Ǜ1]=YZdT|rY#&x l*5BGj2;o6C^:I^U7e4nQd$D¤I!뿭&5 !.?du.A:v15 、YlH f`xq޼XG'Dzw-l4f/ ?WOCʮPJ' J( rg*]oQb,ls̓s98_,@Hؐ# d'^n|a.*ܽsKVYkYd )9'JҏoEN{Zh4 .#Ӂȯ϶^cM(T;_.Ucݙ,ѕ{cW=ׁwѤ Ɇs^;ZPs. K(H9p4l^YBF= ;';&BZ{@0ID p kI`Ou")`\p'Xb5 lHP#PTߑ(;Зs[dg#n䘗3HS<(E+{GHe7A Jy!`riuvxCFׁy K׼T;PQUBCV$ ciNp^Pm+%ppYJK|%H+x"gJbDodZH 7q|WI-ѠtXǷ+V~ݽw3">?pp^ai3%49;73G%n bچ-,`E>#a` ZCMrqV@hLeZJNy%ЦHDI)(UV9<4^G)TPcjybn4{"4 o[i~%UK2%y6wYѷ§}d AxK V`\2B&3b2@8T]N䨹/|w(8a#iWp9swUjM޻. ;Wћf҄+H9xQwMyeF6NECU. wO,m-!6;]I7% `.5|W ~Q$\12!D9/Gabk1;vQV;y֖y 5C"ğ^'ּBtW,qÎZ8|5/S^݅#:ung:fRN;3w g1~/|d|lTِ{*^Lt-8ʹn Tz-V}a5B6(oSXŭfTD&%W(VHYrf-҅XvD_uԴ+YΊ%L:;jI<.aTXE1 Dž3f~(9^˗Cڏup4F ms<mڻ{qf(y5y .񰾴G,XqJzEFB(ޑ'K#_[s"A#t(ёêSEoet&`|: b$@?Ԟx4II^vӳ`o;{P4MQsP;XI~m;j* ,RXMgpL]OU&0-)Wo^=RnGB.fbӇz:nP޾bNaޗ#Jh8mS6CW0 l̯>I>MXa-512bI$H d'/-9ъ.moĪ ͂tr8P?, xgf-yl%۲3ZS{ b^f(56Yoށt7C0^7'Cr=X*'67 l}|3ჇY7tc5RKp Üi6ܨnnΛ)ib;&*DE?A_0{:|}AZ O,=;T$!|͂cyjt6gvc[_I|)q!> 9aGW lK?XZ$UNAP#\I8s?>2{q_)xv2m$Dݶ ]|nKnwk&X@){3GZL]~i׽1$-1O-]h8Ӑ#㈈#~Poð?ID棨fV"C!DuB+h\^9l{Bl|YKPma YAYu!uӯ,\yuF|(Ѽh3BN~#[$IHfZ<l/!˒T2蚂h dqe3N5 *W:O ,3nvj=FUvەIh,6$a>{oýÛ>qݏE5.eL6Ñ]"a#ؑuJ~ -vH[K@Eg[m+oqL4Gړʞ$Ÿؙ{s4o+~zDq/4^fԆf=dd[2[-'jhZ ?[ŀ3~qKױ_L;`}Cҗ~q\{MZLX N E xͯloԢԌ SX`&9dq\CTmϳ#z4_A0ğޫ=mYw`Jެb٥."b7_]ioAμ%ɷ@x:G~_| G t4-$OOV Mҫ9I_WưmYa0NKPC{>_g̝uA1U0(/!΄Mrڿ/5$E!Ung}/–ҷ dX-ّ9CfEݘ}AoߺMRuAN xx|_ɛw:_%M)Rc!VF•ssY"6!pD^4(Q_nup K!>UǖH`LٯAS% tR >/hKCW鏣Ln s)un/e>qԟ;b|`#v,YV &"?<bJgSn>XX=U#. [unmɪCb at#>9BY+}54.c&7fH3?Xq8X1]?*13Y]d.6B (w6%pLnĶqdžK/L GRU W1e2[M{i.zB E|g0U#Z(VT<ֻZʿhbMLN[kZte;sy#GZlܨnԊγtDzI*U0e)씲 Ǹj8ܗ %'1O<gB8LI`GS*]'w%Js6F2ļM LfýcAnr~ӆTo\v>d3_h_ќi~h%da$ tG/pPm"Gv}4N΄ř252["SADQv7u@䩧dwl>;s7d$~~SE6e@GMc8n>wTČ)YP98<r啾$VP26i ҂3'IO-5|_ 1dZk*$MrY(ATBYDOuNx~iQ,xnUӾ 'BԴ}~̑B lȂ9Z椉[f|t%3uAGBw)LXH2Tf/1=~n_[Cy2qySGDҟ%6kĝQGDGjx4g1kńCx .,f!ڹkZUArzU^E}!>! Ue{}j6-Y9kxӧ{N  滷]Xc?8ǝFn> {rhKN@"Qe+MlQ:yt^4'V¶|B0ЍEta|[Հ=d㿓,8Ȋv8vs=֒H!AcɥrH nHǎD~1GsO2Jz|w`̌ő@/ '{sq`wy*t>]fM#N1lH9_q?#k*+|5fmG[rӠ)ha'zz >T+fMaU0ROLR[Ie| ܨ dTEΟ=P 5Sܮ oSbHj_"mxx;"=C#)5o5ml)_p9dZR'Ep#Oye'Jlt*;w!Tg!Vqf{lW k̞mnR-=gAkqKf[5-3 e"O2fQd85:LD9㍩{ #2_'5/AKy|*"!2"l5Rj'J?!K`P*g!Q?vsw0 BNj=.' ]iPKtHVnVO,Y2M3&mVvdjLZ칙3@ryGmS}fi+$fnKrDaتB$Hv/^_&?+E (^;¦-ho cV-.&sҨ'\G/$K?[S) CIImM3r%W$hgNҼ_% ge:j~o[ET&@0p<][&M?!7̈ ߺNB @ `F O:X5_YʊTxigű%3qwDu7j+2ӈo5}b_cհ8L  .kPq> >E;AEoٙ[D4)6?˝%↬cGUlOW W$̌I07_s>|+Hzu6 z شTo@ , |ֳU˝QxM(MڈxFT걏 'd,_}3Q (-xB?>1r+*Rʍ3}O 5z#{=_' orMKb`(wq].S,w }+,SXz/YLk )SAN >[U`},瘌fZ*AB29Ơ땱L)U +%m5mz:X0b-Һ܉&$a-@ JR\@pXǚ?an"u3hfc(p@ymN˳1ܦTŗ5q>Dx٪f2ُvu;gV.+3R˽AebtN2y?japGxfK QF¿qTi{.|0pOvQnջ@{zJn=k\u 6 J9)O|)rj j ͐a?ȘG)4=~MXaEI~)dFkނ1 dsH7`XtCiMs*6&E?LXIQ-yp.L>WjBT/}@[{YRޟns~dLpм|,S^h14zX#븽b lyW(pp0@. N$=E5 >] Z3y70̜+y!&R؆0V<nKzn[ry?7%w8!) +3RV]C>ۃX| 0hlr;؊Z.Ža=Na Gi0E$zx`E#US.`H!mIڛTVzk1,uh FKqä%nTҠX4s$7?RPЗ8x$Ȯ6 !̵YY5{:Xc(EC޳m{AiX-)ç@bZGO3C)uI=8rNRQ4Kjp2\}'}ba[CIE&R#2 8AK8uDm וr0aڳԝ9VMvesn-׿Aˀ^ ao q@gJkrX*7Q}oG|: D 3>MG^sJQx%Ԙ}"3rpC1Iy3$M3{|]%!9ben6hd) $ݬHzPk'_he@9N~?Pϟc),9j ¿LmߜP{@<,_[b7a ,zΫBsHЪU;Sw#rG˼g?Sc 0ɽ3;APV?/wb:.%ͫ8Hn/xأ؄M2|`(,$&.+|Wc[Ieh%нm#x>4A׾NRDn9AEʽYPYRE' 3pW:h{I_+p3ߺ-ohZa1#`dC8W.]lVuSҕKHfZߝfqYPkO]U%S. J7b\`]sK-$c'*K!i6|%T̯L0i8©_;b L5^$t U%F›0rYVGVgw BĶ awE&6$iǖK"wa%St m*]]nk噘;\ J=v׋/2;2O퀩ڜ]P2qW$P| &٢LX7;j]$c2wt1LB3Žs;rh@EVx ث<930P|jG=;d"Rǝw!0~Δj'gDӳ{.nsr8_[kggJv}h|[:LS:|A7M9ˬR Ի9KH>"`ۖ$#Hkإ+ФP<(a@juUOϑɖc^lvqgLW-Uģp<!J<Ќ@>҄jmXj1쮑;JmV_?03q1W=9vȔB\ 6yz4*U0~<6U.r4l p?ֱ4@;QMN5u,f}Y?P*ܓ=YT.pᮑ љ@bve}xQM'ZW 9GD5PtО N2t>Hk^ZDVPs :z "M5t za+sKSΆH?I`ZAqb$cơ +])vG \Qw(8+6۾4ky2z QB󈷕>!iEI{cЁzae_[CqW%|=%uPy ǖph>a֑ڒ_|+y1Lu|$/x =W+j!yiS+Y2G8g?tSxrU莣VlM3,SV=/|37-M"(!ZV7mxg]oEJp̗PFs%= $@9ɟWG&]3V̤Ƨ$b{[?3V|!ŵyWЍH̔hϚ* {Z9,٦WzI߰s5!T^j;t elT!Ǫzb^H`j"{|!,mL&pKXu2p<ߒߗi Bn:}= fjXO̗^i,?h_`ho%\K5Q<{3cG' f18xw.NOGpyڻe؉&F>G햠 |~b@Xd9}fVq{cjL1ľxޠme/5⿚3z0#9ǟإ7npem"DO^[O`z)C?V\HhŶ@@oh,bЪp%l!;]W^?f [ug4&׶ط{w(ԧ6m\;?{cjv]EFC1~و YMѱG񁢛Bg9Y9j+⠢u >Z:'WVQ]rô`[t@G_z gB3 Э٩c_3zh8c+36{36\ըkX6Jk ,ɋ bYtb bs4 ,40TyHI[$WJp A`{ N@D!R6s!fՋSȲaM8'B2ZYk_:X;`]ZOTN$u+ESghUؤl:,3̰9saQrH2/63XHʥ3^c+1>(s,*'`@~2Z配kr;x1;KRlV ' :,PS\GLvc^xR*}zA?:f!s{?d ?E$]u/"%=~6|g~X:M1"Rt9ӈE,*O|o Y_FA\N.VD3f^˺-D3w~-u EFxFc^SeEd1UwZD1(=+^ A fמA`6%ӜE(hU9"ZD:Ne/ B 7 Gx}2okO)LO96,F`M0km'6Hpx3R<9/wg\31ļNÉ/nUj+ľLov]h"+3Q:*-o,$k\P(LaғY|"~FkK~&Ce P0-=08xgХ" ۞&/ZSNǦY(hq,;vZLGQ.<]P8Zu,ʺc}[0K1txb 0Gm:QʯIDķ_U|f]MDmP]sZF͸>"Bnf|r|iAzQRБ?iǰQkR-4O oNHW9C>4ٖ?LRyQ!~)P V`>BPBAـU^.grqFs5v >o"ңsl{҈Kp4*9 FEM?*MZ0q-:u}|xw X?<͝P2 t j\g"HΘ78/lK{+ʫ!qv`Y'@-)8qYxFŷ:?È54KF!RȴRb-!8cȿ;3 [7 ,J٨ҏ[$Ibӊ57pVf-oNB.)fe)ض,'I/unX"Tydl,xe;PF F>W,ޮRR-`,m^?G G¡2'Vn'ur%i+$ ( *ExZ-Yݙu}XXCƠ!|H/y Ȕ{BA 4\3^Ma&롳B"##su].3'oz)Sk:w#"t(㝓GR04=2dww EwOxl52YͬC,CS4ʱX_/7rGN*}SUm %ofGTo>0_wb]!w`$]$>4KµI@gFiwSJS}C']l*69v/la+gb\랲п'JzןoLM]Q(+?1}<2R|RkKUVDƍ6vrl4gLvч#b9xyho9\% _>t{2l26+ODƠ l~T?溗 Im|U 11ih/$&:A# ֨ʍhTEr;9;A~Y!Đ_"&hrd!ce_M#|3D-VB!FΔvs)vΕn1驲\<7NC~hkϒL%K`y8B~Y6MSH+HSFcYgw[+oSr:$.()kH1]8j&r\ 厂Ԣycy'HEgNivNv-D#puOJ9qdC3/ʜhǾVFըo;O VxJnNzMD+۠%cB5Ijª^^{o#)v0?1Կ F`OdB-tͳCEUl%cWjI2nս6^jn~12RRwF d6.{[سUxq  izŗ D`۫|XfQ{jU;ZC6 u$W9@ nh;eNG hNyW8<: )U,Yc*ĩ-@n#(bbgT{# WfDR91/=Rs(ِoHTטέ$8^pAa-:|ӾC.Gwz oGAfвoF3 : ,fjNv bѻ LoY[s>-nꀇ,bU_ ̰DȂQz/nGCE2rcOj2אx=d160?9AD{8Ƿ\RW BJ9 srXsέ)A$v;W<5Ȉ6Q2 ̴arzF 2Y|T_zC^ t.RWc{~)\ˀ]r %{ܙatO9m̚ĆX׬XT=Yn:lR*,!48nhtkm®+F+Ya(AdEFSO Wq l9w^ޝȇM^:JFSeʫT4F45Ȥ7Һ/X}wtyoc$OD_B!.4HZߘTŖyG1oA0:*TpPhv(?rzBt,n'2;y6\%(h{Dw"bi 3 J MGRmcnYGoy8k&1ħXzOʰG<9‚gH#-gR+pΧ]A6IQ ]4`五e\ŒLGL 1f̉iGHOpz6^"є"hvk1>RW,#1-2ӜHp]<)8n^sbDzѾ hp} >ic. .yKqmuv k0g9{#j"a4ghJ`NOA: h]<|)&b7ʍ2bnKM9TOg``& &eR܅ XP כ/:m~hCSK%ZDPO/+ #cb~A(g"䷫b [~ʉ)7E vJ+܂h5٩ͶQJ(\\L=uVn$)PIFfVHY[auן~*$^ y_y.z=Oo{XGU_)H{gAfڮV|0kO19.CA9ۍM"8]4SI I֒ ,a [h <&B2AE* : 3Ŷ .Go+u^L&'vms-3MU:VK0B"pU ݟuӊ :8/vOQ >#/xU8 O9_s\^ewW,Li̊g` |է i1ʼ,7Gj`).Yg^%U+0YFWF.GmKOBgx|Kǹ$OsƮ]Oȑa9Z6򅣛 gUj _7$w dhxau-ÖZZ:/m2-ŹK;ve61b?/#;2-?_lO*xb |lbӓ$FޠuL=Q=_*QQ{IؿOj4įs~ܭj'Ɋ"`2]9! nGw4\a+ gkVl9U,|s"Ui Mt Yar$Ǟ+0fd'Z#y1[ugָEuBEh, Ӏk<@NjB-0"S&b-,IR;6~+6s ͭI΍vsX|D6B:EW] 6cB'ޚV2e't=5f? R@+80 r[deY|$%ϱȫwhB7=gdS}n4.v2:u6 S,x5+uT`P/cEàԇDM#r_s]%oXXU[Qą?3QюXW\ԇ5eAqM 9riU%fLQrr5$$QZ#D0?(*}O/jM{n<;37vT;=z{s#,AE)@qjł仿YsUa'4˾PjGR͛#Mu|haU;WˊPɰ}wM+h378Yo)9)!Z^ ShGIL-/}խ!z,^2jv ZKPK* y~q(W.fYQۙ0I4uOɦG-K* o?'TÞi.5P«S'6BOJz*y1w|vHT^kKJ]),Y9&[)L$yMأꌍ!yf"YLIk-YgDf ֺQG,zA32yvęy# uIX+-xM-~ 碘YJӀyvc~;!ד2I $]y 2ͯ_JA;_z i+.^,s޻5D3XANFY<'DJS|EApQ=3QsC73q~SNdC_nk4 |,Dr^x4G=(?-c^)ͅewy E=oYk|WMXy]ô2 "D]Ha &ά䕕LX[6Bڔ~0xk:.bx4ƒYZP+yUDͩ Icڏ5$'MVwѿM1vh.>=fJ?9UwtLj(KNCj /X]r?w2_@XO_FC,Fq)<1_-HV>>Vr'4q ' HnVZ,򍨏}I biEϠz&=4c<̾)؏{15Q -eԵjʑcӿ5զS9&*S).yAWUQ_ה+&nt-F] zjv?Ė8Vő9\N(:Pƽ+!Vr:<[ԉZd0u~`m,ոvf0dgԈi>GQ:Qwj}z_**S:>#] `WFŐEfL5Wֹz~ɖ^A`cS7-C_jːj%آđ*lWN{M3 9YMܹ_8%LxN5o7e*-X^ddsQ^9o-CRk+^ѧ,*qb AuDfMrt4L^7{Z܁S?&8ehE&@Hqxe/NÑ/^)1E~&,h l gQWd_3s엉c-6{6 N:3M/Rdg8 D>Iϧ@j. J&W2|8H׋+tYhݗnM!j=]l0P}wwG06ZՊi#ͽTdfCtZ<+7p~0{e\feଷ7J(ߺ->X>M$UX(`+Gc;+P'%$ d}eDŽ!81c-fi tVQ?l۷ɹf=֟z_Y>lRClV}L5st)C8 JUL 4iC?Gd^^gR fQe_zo*nJe0RpM^ŝ rhT!ER#]m6] ƒ:êRKSBq %PR" Fȹ{#1SC"m.]7;_Ҁ@ϱfįPu[1ֹ ;?w㼐l2`6-](BloК֭ae rAfqM3c|VX!}Czoֽ 5zډ7ßD]FoIԼ*=1z!< Ԏ@Y ?z=#s<#o0_Z(t'@;vIyHi{rqNۘcBXY:u'G P7R DdNϦʞD\n*(FS> }M`%RDK9ٷ]*#Y؜Y v|g=)ग़Pm~'z$wI^Nw2MKAS&383ݍ' >Uuü1n'BUE5U铣tX,-9ɢ<:^_0|נz0;c%%V]oxg~:t;#0#lEz3~81gI wm&vv5BPgRHͩ\UQE<%Gd,N< 5Y` FVڋruU~Fn8C5l ƉEF׉ړoLfr?:qšxwdFpg="Mpr9~nWt#k|"3G[RATQ( ?&#ycG59:ʻm{rFJsU3Gk U9a3J?zlm܀rTZ6Zr+v*RydVtX+6v0%'à3 / k`:Ic,+a<|ۆC(ui؂Ncѻqf#_uZsT}zߣcywx^XLkΧl j~*^ktגf];ŎJ9Iyd0=EpH) ޻=n ip!bfcp(?l{ioc{FZ;q@7+45oWG%潴Εٍ2Az.K5θ&PǞsipE#"9 DgcTxa ɮҮyRIE/ M, $F&ܠSLrv*?59RÐcHOdt-xw"g{{Zd1FHDJ(tsUצ+jr 7k x GQ,͡r}4TCD%NZ  ;\S`A8XjB#Εߒ+eI&b[ =5ӇSw@.\ej^ۊ7BhQnYn`Һ|HCq?厬ݜRtG#ݓ,,Yr#0rDA⠏ɉ򲃅* X#+яM\6"gW3mrdݴxRH=^?KUP7Su @Xِҿ~ۼB2ŕἋ gA(<QLʀ囵 lVW=Cmw(s' ڢ6تGp %+w>rl(ЩsȢ[eԈV?+cB99Ao݋|Q&mhGw7d7z1)&( ^ V=izୖK>\ˠ.R;K?E4*[/r=kJz9u*O3?ό7J{nl5#HжPOp1ws/|B` ,y"q4^}8ѡ&7]EHe=cEO &y%2,n79gǐO Df c5OWŮ˶d_%Ҭs2S%Iq _zl~_Dif*7x:}"6υv >.PXRYVUX{(5a{֯6ʆ,⇡{K>Zݱ"Ud]]X7<"ei“"6$}KQӾ`  3D!u^HBQ#㝩Z ;˙>ׂW $!N`6$R`_BqEj W \{&\ܽ()4Ox9;[%vQ @UXNfB)e¥?/J%Iإ^GEgub m&iRKO/g".E|.66zљdn.cݗ#$2s#a c^< hB[";[Cs =p@@oxT ⠘u6Ț g* 1! NBh+l3 Hk m&~jaj77תXe|;u"7z0<_C&u:AMp]cmN䣵gnj 2Wj@Uj$Ԏ[ =RPFEՒڨϯ+PxrS@"$`%c9xz~R.Odvلǜq!RեWԊ,RTh7uҳMg2Mz#SGe)C%Տ>i+HπR=l2YDA 8Ihg|RNHWjTǾ%0aLЂVv f%'wtqQ;ޥjٷ:r6*>|@G 2]9JL=G'q S')m}j x?\[KҰHtnb|մ #[8OǞxRqQ ^9:2PY/8|7AL߯{LplKK[jQ L "+=}Vp|FZ D/%*xQJװ#Zq1~|r;˶ِ kLw[Rq9YhQ:gl03ěwy۷N7# W;53T,RPB CaTW$D=0oɊ4`IL6]m3!Zy _VC(>7b#6V{!7f=)BSZKh<GS̫d.o|2%@ڤ7k$zmueE(:>R?Kg"O&%7T_-jj7e]x%2Z(H&6dx^`}rCA(cVPO Hä]kyIʅv&\=; dyMƆ'6< '[?PCOokĆEJD,6 P,~iI}*{&L 8"GAfK4h޶7Sl%"7 'Ja*l–۹8Y wuld0]gHظ%0N 8nuX̃8 x&0#O"*h-QC)GnO?PZNU<+{vHdg* qq|-12GŠ5:ڜcPM-K1U}ڽs"h2^+{f~&LΣ N 5?VRkoE 7mS5b"Ѓ\1GJ!e41j"@6=t D|q'|6U߇n'YD7Ҥ $n af!-.R23X0pf4GTL\?_T6߶S%vwNW f(՚|6k*GAIOIXK7HNzrؼf3HN"ro\;,v!Ya5guW'>Z"DA9`%pv]Ig-:YW\ @qB^L9ZHũ'(u?<~5; Qș6xՁ؝s/&D'3# \ t˕I9uE{"0iaLgC@ X3Iejez٩Xep`D V}- uݫ͚,֐z[&L^J}j+5(uG7=fIhSqb#Phb)|f=YI~ rU[JOMT@#rм b2OܼRW"f (C/ldpg\`b3R˷1h$wKSf nK~ ԣn9tKʚ[GB:(Qrw( 9IrR6q3~+=X{G3+BQvi3˦m|?#1#_ZR5T%x/Lۊ1̰v` t B EkD#2W]kΐrannq zOnyW1~3ۗt>R5V0q%-@ w?T=ST `]3Zz+_F &D6JMqK*<A5&o!ݐr)\rc8]`NdL#g0kVs{APQ1uȠ'o{Ɲz4&U=uO}^'rGJP=JXFrlD G E<o)LC#D8 oP@T'nT!㿬oTy~axi''K8(Ye /rr K~߲`CTX:bZ)z"yir18hTK,쎹%͠ZxfS`r<<}S-W@{hd͍mRSXDSTw|G4sX,cFd |ػ1"g OmЋk:HƆ,'c m+NY;tO@T+fCTr0KgpfGqĔ) 0I_uyLSۤp>i;5YPyLi-Kd<@-0E8t';e˦UԊ* {ydSm霨#QalKΔ 6E߾پiVLE'w#).|NpD%ʲce0xyPr"5 Q}<fC(,qJ)l0L~3R*dJ4FL!˶SYu4֜Pd2r\N Qw XC@4Qd$B8;[`0`jͧi)_ecjU9 Qa19>) a~fe=<^06[̏t͔MDE8|^֒|O(/=$ޢ @Fcg!V%}"ÓܢniG+4m ` IZ =]XvRMɐ8('}v].K\TS Lqd87QoUb{)K}ǙU(k.`0EInIœ"Σ^q[tb WRP6x8iu>w1, JQܾ|$}&Z ae暦V17`p @|';\kՌTL:պ >ڂ;;秠B0öz&BYe¥37) ⎽:ֹt9kjC+t#*1?uF?вuޡ}\bĤlƍW>_ksJVK?bcU`ķkO1ex6,#Pٮ=2i%%F'NEzaA^CIsY2)T/}1g>s85JEO9Yҋ텫)c"ESj^Y՗BT}V% 5h~;>SH-І.Kk./aC@_Hn* amdn WǴe&Pbr1r#*Tk|r|ugLBLV}`P`&|Uv"ߘSc*d,qwEУ/q bgl.5 C0w(>CV'?U[t%6@?O{d&910>F_u= .rP$tꛛ g%d/ݸMtXXf/"9 J (۷f8u!s{os{GLp2)$ JzL*a[TlQB쀺X iL~$ sqUYǑ0?JHaڵhIx߲E^8+69o" kI 7Lq[5Rj|@ B]IXEo^nHB4;ΧAQYTxSGiEqǫv@χW\I7w+rl:ڠz3sc3X}1#9mBˤffVyTalA gbW.uC+" б0 c!+~@={AFX4M4.:zvKyA pB.^Z% e4/iL(Ukz>-}2* ;jsE{8h I;{ER_ĪXUyZp^k=!<Ӿ4/ژ.G!&J"{JX3W)C<^^th\=%.h' '&E=A]ujZ@y }w$i5 V HS R[G 6;glI_{N`b9ZM[@Gw |[FT@GŽhܷFNJf+o)d]:~Dmʛk MRz 1Ce~夸AF ^RrYIb#p-n/Wl. _ѧG5?}yMy,=dhT`>[",w<Gz 5 #hc:{/מObut?{=rDB='#YUUݛi38kxY,kV+ݧ6{ҞrX w'2ϻm1S!X#Q ?ͦdngNsǸJKӍ4 c~bޤ'/c'y1ZbbHH}եbQj@M8:֝W yzTAlάPʥU.n}܊۷ ;<0Q8\WT5{V}ld҂tX9(g5D* u7ۙ5^zcmZ0I%BO:0hO  O/[Z /AI}%->,!#V1*dMZ+CaY=]IB4P׍YW牮obGS,U"a46a @a?HWg͚!WDUR?ʆ8j8`#MBתCYY=g]L=;uOwp&t%zMQqNwvt^ӿ.n9RS1U 2~bFoò8Tmi]K@ @]wo+V^oɧK鐨ScDwLݛe ?ª)goov/Z$<"]7JRF¯Ƕ 5<{Zx%O5[gE'na~dP;CJ^ѩh\)xAWBf[ (V:ϻ0>!0V$=,5 ӌ^=ui0@c,)Ó$8Ҕ'Zm+8Cű\[^#EcI>qϐ1FtЪn T9ԯ56/pQvN7t3`i;mf =6T6h2>ɉ/T@o,ct{_ {z 3VfS_0~1+k&F5_ U/,Hy]Ĺh4c8i'ƭ'}M;-eޱʸvL Up+>*`E ID&Q$b )#갚/!2 GŽtq5P߭3>z[2FW*bAͱ\GDV-#U\#@,ٱRn[ rSckE`?!{Eow@<,0dKY.**~,$)"EcMZG^N=u!c(Sn1[i&\- ;#7UD^8 }nk;OJØk"Jz4NYb* g529.D*V@ն/6|5#P->Sr&D0`#jSqԘG `Lv r܄yC66zku.1=Z/s @Vam$6"T5@9Ohy ) 9hce)rwᄃ0rfJlRيMwLRt2x-Z> Lvvlž&=DOSoP,.LRy/%$8 UҞ|`}/ưXAp~7)xbc Ooi<E9tzԝಛ T>!qY&ɸ8/ &SDŴNhC^r˧ ?"Dd-t|ά[k;u9sI]McR$t}܁Xyu#5(FFvcc0);Fq_~rXI,9m;M[kp7BsX9Cp6B.k=b+X1}HҖhlܬ牜^K61%;v2v"|5j}DT_r ۹׿|Ӽާ'Jg㘘F 1j,&.m'+Dq%~,3ytm씏e$۽Ftugg:#"Ck g%l.2Vڪ HS6׮BwۦP@]~Q2U0Ed- "FHE}AQ3D>0/`cMa `+vr1BPG*>rqR[WR$8y'jpĥ1${wq}d`= ru;w&_4 Z#⭂œ8L)P:f䓄i nxD3D시/Aq ˺jЄe6B=z's9DjTdr "PJT"ǨOu77$їصUP/*h#1O[[ӷDT/Œs6D߈GaB|-L5e {,#g®f:Z2omL>mzM & ,(!~gQ7#jY]K,P3*OG$N`D7FӨ41j+muQ `;ᗩIπye֣1uB1ΰ 3[%@(LQ3\ܷ 5%%<^*13@j`ԁ++ȂW(WZ)E9撴5tX}߼_f y) Bed5g4D^-š [фeb|E }ň_04|MS-ɓ@]t/jWՄ48EqR9λ8;{L}C 5k#gϭ9] ɀm^OAmKm(>v>G/tҥvuO0wH:\@8}h RվMd\$r>'?耷fDوp"',6/$zԔ7ţF(ڦxCSc }vr̕c|$\~oã`𷩦bi8cZ̪I|nɻ+ ˖0;^j ŹbSmrM%F+(_V82e12E7ŸaHzfv9 1Ƅ=ŧApT|.Ҫ;28IWly:9ܨkDTfN[E^7Yb MaEl݉EIQ(d[zBFApbĩjsGEuӧgÖ6)$.KOysyЀj+ͮ6w!Pm@jm_IKMJ _ E5p@~Om7pGnUʩqYPM`d!=a5 *+0O)-\Dth*\l )lR#N9 ՐԫѨޟED C75T83)7SW1/r#h5{9ihTCHd{h*:8*ojK>ϻ3Oڢ}+;B;8]-䃏vY64%T`hEv-\& "wZotx޴o"U[[3>sN_63U_Fs=0AUQ@6;ԫdGt8,I}zNnDTܽ~NEn(=9Oa刕*^M"& Beڸczc`\,n?4Vnk$zEOOf)5+*[6d! ^PW]mԆQ`I%#.FEk^!!89XFEiLK O,F3#KPR *q䜳]m쭱R#?6u}Op̖KXyW Ws~;}t'f$8 {6$gu1$6'=C4`] (VdDc{b?'"Gy,aG/,@RT1ը*Q~tŭr/cO:QI {d-;CnVBa3]q_?M698ֽ9O~o%UfEC#IWY<4/] Vm( wJXrd ȸ(-C}4x*kԳxQ0k~ɭJq/糞T=G{?cNߐn4)aĻ6~dCٳEhwC>lH! z?Mk8.w룄o҂asglt3B f FtΏW$n]lq- X^Vۺa,"{vU4]h.*xr Jԗ Њd\?Qr~y 0-Ji\&v_<2~3T DIUrgפcy>ai#fbͮ^fI ppNsڍA'.&yy8lYuk^%;>Khp|pATa<;q*pLY0̍mUԂc;g > :҄r-4 $_MB84ƤbA.kTedA G}}g;WJ5 hAg.G!H: ђ;hE:cE:^qrGA*l~k[C@QȪX|=ϪthoCQ#`^нZFI!M۷ . Es#7'?4ȇB@KElkhoZe[>^|?uF&zPXZ\Vm #UJ: JUitl۞u4U~6SGܤءƣgdp]Ҥ͛ =c ;WOyR Ugy8:dy$n?(rּ5te;]& (* gU6Np21 30>`iή/96ism{O0VY{Dw؋CM $Wrk^"Oӯ]w,B_QsѮz#LW=EQ.9.d|:#-+Aq7`/'!| ~o/LhF8:´4 lV}KnVT4JOG#c;$iP}Z潖`EA~m?3Kص׬)xo^n>L76Z>T6x0_sI–sfqf_"jd=6 1erXmBPD2ʉkY/# 7L{+baƕ9E U,;DQ0kׁ_18@Zٳz:^Ok%Y*ؐ'X0h/Y7W1fy}V 5ـ -`>gGc~߁]*XcՎD:ofӬz1 eGC/q-λkޯߐ E:2 m3@1:4znig>A=q_;tQB@`~XSr5E%@Fis4Rp {i1Wz1 5ԥk,Qc_C m_m UWrߐ]pC*%|q$,) J*HzZAk&3"ͳݮ$M-->fFn%,3E+O-=0.|etmQڢDu'R`V4 O6IbbY%౐ʃ#uCA=:6aYMۛLSi5I%|y]ɦF^>?#/*͜=tδ+k7sp]!1yw&qVx]/>e*qܷQ#yWjՠrR%)e P4mpGz5Փ͢ s멄;/Eq5jkt0cVپ[xAh6Wa@\D1]eî?)O7EcюZe*"Y,[ީjwiImLp߉0l#h W %n^ZeZ Qek Eb{*F;%Z֑9V JL4DG(4Ѯ= {5nW};iQj!(hk4@83ZԔ˷.FOeVW (H$ {s, [Qa89뷢)Gdzd635#5-QOEbf/L\QD CVTYm3M4i|3"vGahL.s\E>%FJ6fcX%7t~MlQwh(|J6 C˲. O#R"t -Δ ? K?qY= ?%3%Ӓ.,=dy%SC@YY 2*L\,/q~B>Hsfv̀2d}lw ZG<:= f5 EVxQeOg {7c@3ޣ 15*%h&ANȈ F1+M=kTXˎ4 خ1H5J`8tu1H[(X(bK5.ʪsڃ5v]%Ip?>A'ԐZ8G O7{ϟƇ h+_3O{1g,vZ@fpjC8ģ ť I((TΣzbjuL4fsb+"Zp BptJcpz:}J~  c*;[h&mT 9K:D̚pΤ D uҨ 9R 2Pr@Bc蝩&I)ɽ4, u.[c. LWA@\Tu\&>Ů~䣉8_~K `:%JZ F Xo9H9la*/:ޱ/qXNBPqLΒJox^#jy;zP~9j qR]CvT)ύ%ع|ggk;j4g2y(Xaj# RPG& k-~5rLn•#3Bѱ"+0bG㰩P!v=wu"2-G"; &PKfⶮ*ygbt]._ ި9=Fu,J]~BƝkk wFqA,wL"ʒ*nGGu~ADkgQϯv٦ob]-@|w,4sY:󄲰ClV5ëCPcmu54 8*W/1+PI{, 4͖pQ󎸣#v;% $Θ2^R;]8UvΓ`Vn 0oHZG-q@̇ i(Bٍm/Z 1H0!ܹz/o_V_u;co:\R w|;|bGQxP *1$kDHS3/ =ӎ)ux}+aEj'5۷Ra״ =scJR9cbR0 ̳{x܄E5*F&Y"}7z{Y3M a# f*!C}O:$8BHdo͝'~H'3̅:_S< :fV cxD`6v(?SPaKy(3K-LQ;LR(M]dziW2c--Bhp3/'d" <ߙ…sU$}FnYLx>x; U:(t1GO$ӭx˓/co*RZH6iұ!LH} w=e\o!2F AImǨ(6zxM p*+x]ɝNOJ#1qNS68IJ *a랶{WtJ|q }$RbLi5j|/hBzӽ!$Z1YBE*C7LD?&0`bó0+Wh+h_Qb=F}C䙈rDA!iA]myf;&}6NwG*ț'5WL[vHS2ÒÄ%0[#e=4B@WaX.* 0N¶&"!7QelFEaF#[vSbJ^#ng\tN4/?HVjfaheJM^GcΣ2e"͡e+THх&vJ-xؓMh qc uPgPF\qfnˡj<ݐdђ2X%<8$spҢ %6?jrfOyo}+_l\E^=$jhӗѪʶk!vt: `TQ&TO ƢzAݪ*Wn$uȣ.{.FG;ȷHBF]mucwn@ h`^9:e#N'9`oe.w^Yp7E~"vt3 9z"n/̳XfȈfT&} g b/ <3h6V|)%l1`0}}l- RH⺉)j q!$9AH'!#aJ瘴/ SLé?<7-LCŁ5?$VJ|@cr6$k>  jlR.?Ufio:Q.B$ۘpzKI8'\x2&6pPew^Fm'gjΰqvMO'eL=ZVE]׽so'KFY\1 HyO)Pxm]]e`%i }Xp,\aY \h7'/o5ޣ!4-ۂ$M@@O)3وw=K/jK"Tqr 12֧ _U*.\3V?'*1|S[+>T1ECXcS&bξ1o0lTDp?= 'ֆ4>=&yE!;nmPm/f& 9c/0_W{w 21;g B/=w(1g4my /3 DFHiqGHfⴈveuZIdy(3 `L99&c Xot Ź\]|m{W\l8vJH$총9)@apM=QZ u1מN]˴ F&x dTD?/T#e6xK|"pF:Q^&}Mo\N + _+UB ➊'!l)9j3جx<)Ź Pvq8<1ˀ߈q4 "Aeu`YiolY4y|B:l[|C:j6[X#1ޖ,4`T~( n!X킆1i ksʹ}eRnhiW,Q|^j2HXbwtb?9-+ms]Ky q7t6z+ \yL8mA~G-+T!V Cg-hFhK6O'5 4K* X-ĦL^r7,7nw4 V̚-٢:(IPx$Пll$n8x9l}-w2÷0+n%`5WgZ|PXJ%&eV%t<`Ѷp~F>[JXS@|ޫZ> |MaO/jigXD%_ IaH2_Ľ[jen> U>z`DץjI.~Yѷ~[sqsGgᡜY&^)ud `Aqǯ0hWFN-Ԉ\Ք.+ޔLŞ ̫d,b2a&ok1O{d}Q gq#phe zPOgk̯tSpE:`kMI~" 77s>1wX-QϾW'A]E-2+5|}p( c;KSZH/(Y,H~_ R0eB,_nSD-hBWDEh=<Ab9؇qFʹ66ċ-^; - `"]*DFbvru 9ӏ%eM5Y{_Ye-)lū2`UILqVr_d}=&Vp~p;oHTMiݯ`M험/Qڲ>"QR AQ"S߁ hu굸2o`) eNS˜'BHlZ_A5OA?IXՑ*|W}1RÑIgIw׋*o3vCz>EfeX3S9zH7l7U%VsChaC8uo tm:@Il70T3i+A2nr/ g b^T'g[s`i\Y7Їm"sMC(^^du\ZTxbbl/I`|TZ_bi` l]IaVC4(-vUͻC}~RY¯6kaA˄1t/;,a푐*[g'c=iNo'|RP3G"ggO?!ݵ^U-#7SzX q>|W5Se m `1Ÿ{j!wF.pBc0PwrȱfK6fB͎%Å+x; TeujFfI==8.RLu诳#_ τ 1KJ2Q6? R߱L= >,B! },?K򯃯S] qw;ao8 )Ry%g O=DdeBgFԥg;zN2eFvKNLm4K̲QIi\7uuYCÛVe|OJ=lu E$t|WڋrNv=3)yF?T?aTa|h2v,h)t=yeIf1y70ml"EˆL~zI^H @_W; Z`4$@pA@GbHP`مrŁHk96Ÿzz#w\y||eb};N2zDJ "bMQX `o# =&K-t=Cޔ1E;um܉iR#ƻX)gvj#L,s!eWg$9^#J 檂RhQ2ЏW\d.}(gX H{QAlvcQ4ڰ?!OTa Xb3l4VQ% )_+,KJ1t6"'mX Ww,E3r.|Gnÿ]M`ó2vg1ķ,>16$.:tP6[Xځ鑪7Feʸ$I+Sђ;ި >@`z/բjHHҡ&u(vmqSUKu bnJӎ)JY d݅Z=>}W$u(H*ȭO^g,l"n?͌?."khm.w\ԗ/E­SsO;\fD[d9ʄ/Oˢ.9Wd<ϗ)#}C>H9.Ð^b|2Oe3n??WXļM:}_Kw#Mx[/,Q_M9]Rt;W8؋zT !%Eҹ;,jl{50:zt&CpfDiad<7ءhO䰸+UF+(d zz0;AYUP{0!EzJkq 1u$Č0.r>8D ,P[nrxR}"+ԑ} 5*E};ŷU8a)mk9YNRw:T^##$HC,IUMx1[)]pZԙw_hK=ctƀfz4QC\Te[q2t/em!,԰qD it$7ۋ*o0%λ Mʼn-B3s+'V'i_dlv[V) g(քEEhyv ƽh#;#Oo|tHyzk_5޸nntd~=fdTT%Ϻ[Bi؏\Sr8jW:Ǟ+ed |]8&_a[&TM[*7q~X?ᅙw~a]IPJ:ςP+t=QMw!$ƌɸTK?(cz Nq-?BM#!lsJA}5X*15l{MKGr\|!7(4E* m!0c`hDw%#Ծ>bV< R*uy[|C'NJs#T(}as$@B0:[^#@XLq@'ؖyƽb">p8ZC" ۨZgd$TÑGlf.DpZT81!OX]ѦDO>涗PnN8K1%EP9xĤFc@ TzU M̵[x ԹA9*,*H2̔߉1͜NS!pv f.sIC{lv!߭+ Ed+QxA~@6ݫ&@gF)>a|#Y?(YA-2 7&S:X27S~f6^OM>|IrS{LD-4,1Mѳz7@JX!行̈I`?lm 8֏脱 4k8b= ɎPl [RP=Gƌ-1jY)U@~@Fc~$5repĠނw=9 38)=oo懰Ff{0|4r$OɸG=%OfO5'%z³p]`{@yimxCD'C.=kZXlF$a'!o!F pq`EJQL ]yO/GvPQ|hҤ>[ Rv7H'~Sɓ_u4bso$RʥֳJoUDWs!l0jG0arϩ0+!$"}:Lǖ&+[=to ķ%Ƃb0P9x~K%tK~C$Ƹlꨦ>IX_ T4o j>ṡ2J_K(pᱶ7~N!& B~o',23,"(}.|7TSJi䷍MkT2l 0.`LCIF bB`k%PjfWLǔr[DVDarU@bXEOJ@*+.Z )I5b9M2 vb:Q;1{M#TaֈnXZcbѪEwX!KKw@4#!-F 0ml)_{}+um {9!ֳa3(KEU~'Bt 0uyzP˄,Xq/G%ɤ![B:;Nf+{NT#Pc][}$˒vCY-khQ'AkE|BS)Lߠ;ߊ?L0ʠ6`# ٖ]^Sɸo0d r7X֬@@s^~'ovI!d_E6#sˣZ Eu,_oKsuڀ_ߖDswvos+Ç5ua%SDXuݞ. pky!'1"EixN^tRK|)!+NR/Kjoh6 6EV+44P+.HgCu2(${`*Xu.so Ng.,{*@-26$sH֪ch)$o1|x?y#S4B}.C_’+1oN4dˣxsW:AK2aU 3,9Zfg)=,w+*᠔WLbI _vS S*/Vwd*o !Ol>LnQ"nK ݻ+1ޖU)5n2o WϚ{4)25@1:!Mlܰ"&[BG>n!-B1'Љ'OCG/Ǐ҆ I)nĮ"2KQwbU 1!Ճ;s]QLLu:¨J8kDNlCX(e/~sJ!:@~Tu]Կ>"U>@ꔾFͪs=I!:t<)](K9SNFfns{Ȓφt&2O8=˥+edNF^&IA?˸yU̕bvČ7InaMPPGd){=R4Nnq2k#x_i*`-Ia7ߑLMk9)jVѱ_IKi¼s_X;u; _ OMtL0́Qs_Q4Iq',[T5UZ MD!يB9A wܛǦɩ4eްbƎIΌaboD[{L:=@hD³sYTg ub@f]N1 /ưʳ:=9{[3V*@6~e>y|Pj?nVM mLhn$f`njI))-F6<{P{i]Eo>lEN1 vj($5SMX&t{/rDJj*y۶f.m[BW EM0x_/,WXҼun]j[Vis/-S.Z1s~߭28?RISq)&Jڶh7 %Kq+Z .)-)݊["1n\YK&Gg>c_|˕7L:a&g0'ؑ5Sx9VݨD.~W4n(" i\se40ǐVXP$nGij-'Ukڏؤ7-@y,ܒ'#)ϊ'jAD 约+\ J+Nv.vF#iaKW9c8Xً~.}b"|f\-lz VP.L=8qO'_.rPjvQ٘wwlAbr._ bzC(4|vP}U$n[J`MH2{T`$;$69e@CIE{"##7tyֿ7Uz %u,7T 4Ep7l}rwGv )&CK 9#8M CXI Й 3y&|D,VЕjZۮKbQ 0xv؋aʇp Ĝ~2_ nJع.dGYeJ} zNzUEK KJ hp_(;!|9gNDk`N&ٔ=#<@Do+B9,,cvlX+ﯝW|^H>sɓW{Ժ ),h>+u%+t֖hV݀MXy N4xjRNX((v㕴-& &?ủyc\PWp)͏?cGܩ`5ȹ^@?DwLb{ pHdEk`]Ym=|င)TA5T =67krVBE;Ru䁒 >,"9sR^;r5r ݊'@=RBC=)A@ACې6vTOѡ)qd`osy/Ph+dovިeţUwL68r8!ˣN?x_%%mO Y`ȞY4dsJ".EGނ3P)@Q#Z-LH$/@6]+48n#~`lYdcat%g(?^xA.{[z`(X '(fm;,W<&V{m _LuK1B2EAdeIwqZKǿ,GnHٲ#ntLa\m"!=bjid<ecfK|]d'tަ ,|&-']$a":Qfc+Ex'mx8 ^v{IbqJwvf,ZɷBA7d.' 3]$[,2^c4jRŌڋc2kdB@ZN\Kczlv ꎔJPN\̹IB8tϢs{?()n F2{T;DZ*p]O(hQrf :qpt5F"fYfP\?B/ƚve0]zD4?Տ ixYmN_KԆ/jf(A OAr]!Ym 4silhY(K p0VSOMSCnc#FK10&ܗ?ύp5w3$ ֶq(?:ٚgKӀI؀㲪/z^+f3}IGL﹩U+dJmF0|nr#bڑO 5AռWvp&穫sQMS9WOxSY쫿ed7̸oEi")rkڰ<ȚvzA3aLY.3nf˰"s!O]Gf:bFbeJ'U ͜9tD N`$,PǪ_rEd'Um}멸W[- yL=:`fqcvP"?})=fNy#΂E% ;/A睽?ukzŏz4K%C N~[lN:%ː(5oʑ4_U#bmbZBxi`NU beE4+ lFxӃW`49zrfo3Nȵ/ IT} S{' =Ί٫9_L9\s]1aK֑8s*f¨l|oM_EKEzÆG`=lmS>Y%S/8U5,%R qt!JիWꙎEHIxQn-em`-|o/q.]boEBXf\ж~)$ 7BDQ$ԤA)xt&3{|v~3ω}T z-rq]dKU] ź 'g7E-wϐ=iܠ;og=jX$n"qnB*TzPl71IFJ5_q[Z k?3`P%n=CCi^ Y8'g ̦;g jyY{Dpåih]4U񰒗>"ѼVoL!F&h,~__.@9}a3,uC 'E]\ղx?/,fQاmڬP׬ Talq"m..4 }hi*!zW}5[4G_C.i)wLs*on!';8Zwm״EU;Ĵ1[UDnz:GDM {PKdAߗt@N+52Ӕ}(Vc~Fa~,47~z {D+V]Es[褊 ]}+8_y; ~wo,IՇ=PH0F512\~ q7#?$i-uZ]:X'ȩRNd";pȄ3oD떷Mr`Fh[̜R ye#$L.KQ&X $^iGUlp9/(3kfrӘFw҅햵]ȿ !RgTO -ߓT&G^80%|&ĝԱB@R^c=ՙAcD=NssvQ\X[쇟8>~>OSBL+q?] bmx/TG'N4p9M2'y[ \U-D9Ɨԡ3Ǿ˧ӷ4ax9Vn'2'G}5aFǯ ХZ2WG`I-א2!z`(C2o;N:3Pդ-$+G!{'pa-:4q!k̒7+I#t󨖸o*Ν=>|prK nםꃱ-wzHSnHd:vmU^f%i{nرz<:i3_6a{I-렁o)ǀ{,gͼ;l3@7͡a Do8gM _^60d⾏ {NZC FLk~R1ZC}})=K)m,f.M Ex0%XA3m\J4LaaJ{U ~`~%dfC7nVŒ)7S:q00)# l׻\ƚVd/z̿ aiȭ x~j9;k$EQnNc|["EQOj6jfzsE`J\Iw c.d>d˨ Bb.K8uP:J-*>?-P j`4$j-XuWuR* aiH$-("]fIq1ȱ^k& " .&XeBp.3Tr*tMKJALu((oP=J*»$"Ć vw%ɂsx;[+PϦY;4հ}hSU-vf8 z -R g33 mK;,1^jo t'4:upLՅu*hUsq 4&??{ǿdXlx@ۡ'J¾>Nrg. &+e,1[kiW*A וҵ5ﯭbVȽЁvh]B:goet^H_,4Ւdpq,ptO-!Ƥ-jxM]DZOB63bC1QEPR18.):rwK7)lӣFU8̺vl \JC=i 1h+[#jېu͠PT7fxoz飵o"9F\>,)8'IhLKNšLYֺF$ܻHC"}Ts-ypoIM]Xd,Oλ׮*;ZDؠC5Z eB5僢o [@~ /qqW09_'`x7l6}MU^NݢTYSD]DmCȪpHc4Z&¿R358Zd)< }Ѵ[,.!_͕դU 7WAR)ѢWx;CB (I2ϳ4TVn.G%6!Xo&_Hj :_ m,.ϓn~z0"ƕa/4zUƸ\KZiۛ(0J;Lw9Zr 0!6n`݁HZKxt [d"$,knY.nRUn֏KV +#16CT 9_ʢѹȍ%>(68$_89^"S9RJb_4 e_Н_1ɱ@"$_s%iEa^4bsv`x$+;X\;L=!#YqJ|v7!q?M-Z*GUCSvNK92{ru 1-WorTRUwQ _Cօ sԋDžx6DNv bXgf+0'~|%÷fF|)X".a^lfőmìݭrhDž༘8z.i}[.T}9h.-G!iyRٷGY>vQ$P狪v՝#|fOʈҚ-c΋bMӢ\fP((8I{AG }ds(gaf>XDŽHkz)0C5d>h 8sSGn5?4?)zH`L㵨p/~MъP]HW 䉰W@Ɉr͐r3PҵbтHS'~Z=,Tryx6kϫAk<\ q.N"#z,!E:ƈԀL*תkVk" px.TfߊHmD yY vj EohI9}˵,#9f|0]\6ʳIIϊ+`EPI^?cGJb#2?7t׿]kKcŗu}t׺ /DRHVD/.rŋ) ^[N,S׀{_$7W C!y)CP⃮1xZ=4Qšms|Ww_%=VɉrKJ MY׵?aoP1S: ȲRI\]Him[sv@6 sr9J_l/7kFVD#K0^K[N Gձ|yH>ZJ{ַ} k Af-ie!䒤~43hʣ1^ef9oB;g ͫS^` V2 z_dHn"@#,W0 K|ncAݔQ֋,5(X*? pAhD.lY$.KNШY h<|*%~wGh7 _)?. RdNDJh䨱=51z|kܓxGU,ýjPw65\|:MGԿ"N-ukB0 P},hg-OvsSYsh+0zY%lTpB/Pɷ㘹cUFQQbʦ]cREZ/^ЊKlZN#L"># @[pA-VuȊSP5UhyG(:L%H q9`}NvΨ`yx˜h۸Ap垚M:k0f7Dt2/'BcϭS"&)Fe$k6k6mUjΑ1uxIC{>Y e{)ӱD;)*]vN*oB')IEuqcYr M 4z&ˆw:@_ ]l [0pAT"#h繠-M!+t"a< (B̈́_{Gϯ~R񘺹@Taw!7)f'p5@^py*,wb׮*+yI%GrmTŮ0 ѓ\~材{T9b, }^Y˷ikQ:O腼8Lb{Y]gEۅy$m!Fע)~슓r lTr# i-K E_,rNsyc.QO/u& !,yAĜrc#zL&Xx60Q[thAqf‹Ϊ`ft+P f^) ٓZ2&N8[я$Z?k)J`9Dy@zj>6NԒ}{z͢ U62`>2*$%.gb2IR==9ɦ)g^h\'Ip` yڲ6|]?F-V8WO]?:X?߲#Je"4KhmVx&RvÕ, BDNh;W|!lfΛdmѸ5ZQ&,RjIQjd"̩jR/}%SPs=XFl sn”`53:Jt z]ќR< ÆC{a} +rVU[0QXIe&gW&@Ӵjrٜb">»LREV9.ǥeFRMHkn2F= xcyC'hPSuؔ5ߋ8?@X̦ Fj|z^-H0~ݨũOhd=JT{9"d W:DΎ&G݅hM9Ŭp 4}(xgsbhXP ~1>BK2R8{q#ZIÆĘ%U ab\Hk x`Z?5)a?6FT>ňEr)3;h AVޱG8@~;!l4U6Pc%JTXЬp]UhEr΍t 0{2<'h\`aaN`mg't#0)~T,'O:_+b&W@s*"Fe,SV(h|I.GvGjz]}O Ǟ_o갸E"yΏe*{\i3QJpw˞ ^x;=,1;K8XSoh_QzZ@bh[1fS$E#U%hEQ-2K(|_yZ{=YÛa&7ǧ"{e I7s{0}/iǝVAVR]N5: 􀏗!a)!#`?>jͿ0C*G2R"eCJ&l{ސ&izczQiקc 0Jga$vxfA%xjޮ?Y BtsY5IB`o=0Yʑ /Py& biMOuǔYQyCnE|~O7| $k:oe2 \cd@Da`ˬ8d9)NϹ'(ܵ>nŞ"ZK_sﶘ &z0&!!e7%%R$=5#2y,QTEΜx%uBqDenCfL/Cy|]C<[=Q]K]Ek1ZVpہ7:۠jwtS!d 2aVBXՏcl)Cg;j~idCpY,'&BV+{oR?l~bw`Eg@EH176<"q P5 ŭDyKgw%grNE^ˉQP ^Z%tJ``jdy'Q+kOl:TQ^L)8:î%ӫ[ {G*&.9ܸʫn0Id5gնِL7k ^4]%A %-b@^g5 F"g0>j;&2.n ^rҎ[~؆;:m~FyrX)踙%#Bf\QBv-ē }xp님*ip:Gn*٤8 0/^83Ajyzݏ##/TbK` ;L'@ W EYv4Z2hλS\(|J7k$ OjݺO𦍣D^qw ^ִp3y?&$T ux%Ќ`/+P>; ;n8Gޠܕ! %dK`A ()D>f R K0Ewⴞ2l@Jσ4IG,I-uČ[[G4gύ;6+TSp}f3|cDc(Q^AP3@alPfF*Oi7 l vMio|*>݋o&9.qs2lc5M:J"%mt]8 FSɝ waRN'rY[~_Qsp(%5~м`Wr^(X,ɭKCl5Kt[e:X1K 8P;V("Hrzpq&KIGBEӝ? zA,& %ٸ;k43Yք_ ]sztv/,ԯ5\#V:(@1^`])|^S 3Cn= u(CR3=N$k mG"9z,`"!u/ (Ξ]+DjZ K$]ɁCJwes4|qS7Ϡ;x07#Z kXivMKٱi%G, ClhrinOH.OGBj%<5 =Y/>,:3#1x"Tt&ѵTC"Ug+WɶhN*Rꮔcu"#mXfp3P~6#xH| pH,R(C]CmYT:rsF񓼽\t)1S:~nGmOHW^{T'O\&_;X".\'#m; ;tZ֬|Gqp^e;ͽ{n p,PŞr2 Yr]sRYEZR k5SгJf\DȘ]= xع!t0JC@ڽ_@75a&SGjYx_r_,TK" w@dPQK7>%El}o)K(.aǩP^ S<[.^,utJeE`Y13E{:b5>@V㓺Ι;T oSo $'< &v< Ir=t %'Dd0n\ =\al8xjxo<E{@q7s aq(>QcC!}LS%Km`TG p|*@9~rTyoi() }M0SI irUCF/㠣3$*Df !L)BV?S"tZq3sNPN\B5cDRkfQt!yB$?c4&rE]5cYUxr/焏3!ع?2AGv_z%kzyZ?6uUX2lWKmNO!_ s?dDPz·ۢ܀7F㦞nPzE w.c׀_)~.@`{դ }/7xAi|HC߳>;Տ5HVu:Zzy.= əՃydFT(;b{w-1Bւ[8$dKTк_̜gXt@xA:ҧJhJzaR[ o Gg~& c_QhMޛy':-NOyG:{RKHxoP 4GyKI`* w{0{V_jn@4gno,K }\7Plؕ˺۝.,ب#8G T2S>}t飤?W'fw_UF N\  cu/h_=m7#[C(=: y+W:)B+ +ŞeSCC^Klh]^ tI;0n1i80Pׂ26tn2娮y΅ZiHnu=b|6k3S$~V'*Bmyf4֭[q3n[G'BAlT B)b#H>KS̲:y$7֋ke;"' %H.j?ShA> L ˣ\@ w9[>`_'eS4Nz HPgw!MZxK]}uOP6izS'䝨>LP<^2lQ" Phfd[ i/fZhԨPדP mC Z mtr\4fM@J!Qoh/LK Gu~EI5`Cd;#s2غA-Pi$JH:sM^Q u~@O j BRh8VXœ;'ݽX-G(8j%{K70~PAI */Ęβj!'YypH/IGAݷZJUz(kyOӎ{LGL!j^AjwY e&7L4P1A7^Xw,S=AuV0؏)?>A.׆31fpi[R\>k<;DDr4/&̗/}Mj~/fK{N 4;D奨ur]{ؗ}61a`%]}Jˮ,*NmE$~m!;`6s![t֨&jVsC2 WoZcp>໦$@gy, pe× T걓:<>SoC2m5%XY ߘ£Eڸʢ*T36*vR?K ^ޤ*h\LɿPE)O\qîn#FT+dIqp23|5JmXjJ/6\"}\4HgBH t>Ө|p;P<^ٚ@c?'CaIXag k*+bNOlĞ(ޛ#a쥨|gŹN@=bĊʞ=Cm;]NR)% ꠔ+r+r05 ck~7i;B8 0Vܢ8{ UP0=ApNTYdNV&k-0<[06m\ 0og-7Bd&hvq "jTI;8SvƹwI#S<ٿ%+ v ]:$lrDDaɟAqL"q.҅ i^^<[yaƛ5UbS?;,_rL}S"ZWKwՀ?N2Kv|ܢLΔBרG9gϧ`w)v֚Eǟ ƲD桝Y!@D%n(GC]IY$tRtJ`$t8FY}ufbtR.j(”La+g-%eza/JȖg+7o+JC,)jP4ְU8.].q6ip7Tvǖu1`t$0DPuHw{}$5{c;TOfw>W"nvV.;yV,-gvqA>oK*^@ u;/gDteq%YFwcfӸTv@k(Tuz^֫ ٹd0rAXe…Qq_1C3XmʑBŐj6OfjC>eYX4Yv!w60ݝ:yd!QC'vT;1m{EhRtя v!N9(SyZ[Q4ږQLKɞߓ>riaXB+T!&`eU}FcEfAṈ"z>g,YnJq(hʺfU$fm걒A*~6&LjLJWGz:jI1~gOڤ~B$rNea/5%J rm0-\8"[1|4 r/XI^;3$7K-.'#H ,ȩJZ'bx9mP.v3t̊}6o] ,tY1 8e wqgQÏMXH3ߥ.56jtmYR {՟[Ti9DU L^WEN0u0+9 ?vmVM.> (H;&"&7@9 1ZokқMڃ1T{ d#)mA!fb ci* \fʄ3` >㚽r<#nGIlӁ4̐Х?#MFN+8)֦m.6΀Jw#&~$\`4$6@|?,tC{nYiޘwlǺ*wlfVͤ|i!P  %Uyy=Ƕ$:cK\&]>{[`Θsxwf;~#w7_* rbE5GuBw mD 2LLC+ c=lvk;/7vKg_;`,$)fkԴ4@&CHO9'7E3q<+\MdVÞ"PFc2WXi={@34estG}).,+p<``cvY61{ў jIe۴}2xFdk->FknoG^6\YjY00>TbIEdwX?`t4(jgEbCU¬N-юl BD31S g&N›!3砻 `ӽ`KlyD$}Ԗqw2;̳k~8.1rWhbKdXfyH´jD@nnR:z5Ȍye0/$=?-11A)t"6v KTN`"'bI8Sު'Ї h>\pƤ#{`WgGA HnEdUCVU]aG,11ttoMtr+{?~xxI+q U$ғl }}C%TvÓ$Sif  *8 i8<=<7|SNx]. t^ 7 .#n,с4Ul=Lo/iBfX/gSBx#K!v)Z"hvIwj.ܭ|yl[dT*)(R[Þ@kwΞnr۳k>mr4v!tl-? uqRSA)kUS}6Nl;Ǜ_Ap%ӰgM!aZ(&NkdJ36Y[ͦc96tx{d]yɴѺ'ʅ 6q5Ɍ++\CKruo';;VB3\6䃓[ KH@;8kYWj)$1,ַx.XsY.aFTPFhxn 9َ.<.BK^Z#Tׯ/dMR."*qlyOOpڶYUsmȓN*TCO"bφ.+>]DFB+)~(W}Ei$'|'3g"tWJg䆖T><+ъCp-lwu_&^fzU48kcM4N20%iB6?nƨt 7Oߴi_MZyЫULbEҹ=쪳3jܔL z GIX_ҹK_ d;7dtwPBFΟrDz\ˠ_X9`%#G 2F[V]&k Yz NSjQXu:{vGe%IB(&DTm59cH{1 2ehhlɫI"؁#s7lUiy-юYGphP}\QBQ$u=S0uJKT0ɰȗ/>B ݪRlu{gv%X:?0)_P> n/=ʴuV_M2DTzM,x27Nat6$Pp"3:',*+9=5q|{P_C;~>ԉ<9V7={Pn/p/6 0ՅoB-Wٜ} n m>_ ?^4x3C۱^hXy9r:ȱyV{eBt(3o[؛BmpF`n % 7O1b$[-tb\ӿ%VwJG,,<!^7+uG_N.0*5^ [9qJqu]\lHZ8.t Lr:.Gϧ `햾b935ڠ6VߌQ9ŗj/vf:ٷs!L4NHl7As3~&&"|:/j8s{dQ!5wZ;u(zWRUVʬ sH c-|/YqS q~wnxc:j#y+!V0Y$pEe7Hٞ7}!Kܬ\ XUYySzx)yyG3@H|T um RYl#,~P@^b1glA/KW> 2PFF!kUs2 cpdF\]!C0y8 jÒ̞,Lhؠؕ7qٴ=PK9#,pտ }%O_HˁhЗ#!el8a\K0~"/#.!|jOM N"5P!@h^̞GE@^?ӻRSo4op1?mcܯЭ"r(ݚ{zJ/?"?>N,p_SZspEBr Ѫ1&d-G2췢3I@~Nr> #=5qbHF6nHW, ]1죤j&U(b*Õ 74ꗟEҖ@3 'Wwˢ8f|hgq$[(cڅseABiz.F0Ffrp׿BrsH rF;9T ڮ;gt3 \̛\C >`zBeipō)2Y=TE]|=(el5 3jL$wS 8)cx5IU "5$tQ(eRaݪu UFwG}\e+lR$.#&"YGC, 6OK[CVV QP,^bQZ^3?]<]Fr\Oz/xj 9ahL\o4a9),s>OmZ'-yjfݸcZ^1Q-RQVVSe19+̹zB,c~]pp2*όg )q'{#4v`tCG{Z zp׋P*#Z\IsiOWݽ/gj, #.hV$,`&U<{޵b pOebESk3V"|R cYixp^ a'{I6*_?\R*y쏉*z|J:1Bfg3 H-D/LM{yowa'aشRL3K)itw;$ѴclAGdﮨ3(,.<>_hQ,gݕ{P%SQz,&\\f0I' *>㡡p0mcɢ(A:]PB})f;;?¹DdeI(LC#*a)TRj˂L;WN}%&$V`$l55\_N6}a_sFY:\jL`ui+h""Qv\CfZ0j|HȯEQS0<ЙB)IW(MṾjџ#yi Gm(ӯ;ς} bhnپO* >k tfVE. 3L g_ /@LOI5Q>gȿEB;Bw!>0KCLmI(!iX}u79תɏ],p2Qw>튃 RחP"Յ2;G{(ۖc o=t,&״F`ke%s~Q"[$a~M2rjM+eS_;2<Ն^碶]W/Tz|^mzX|P-*ۦz*J pD`3rmw'zUSN%ǧF,\1%1R?Z[ʊy0" JePkI#DuӴm$xc(Ͱ|gYAo7AqEf(#<؁2 3VB¯|0o]Ĭ4^5'ωhIL8J&{4#[p Wξ(nlGu#0 JسVOK1u›-% cy|Mkȵ^ZW?D='V~0xpiJn#tGl3w9CZ<5GXZ %GnAi9ZsalGQy _1s#<^O@V֕U*PG %`՝+_U炕v$6u\i:OaZ l$]k/tL& )H0֊O }fgoNٽ!,ZxJdAf7[*Y%۵l@ I޴0HqX3Ğk[CW[1-}RaZ5Dɜ9FFLW-Mm.^eX}1wg:( E!X3{)q yihISػ:CͰB u bQ90;db=sYyͦC>*e!XWd%c,BkaJJx e:ms2ZG^d9šCEր:2眲ۉ7Zr*؀θgdV8OɥkB9<8"68` 5ww޿mW,9i;.K?-ΗbwUȧ`\w(R Y_P2 c  73NBCe%l#Z;@ Cvb ^,qt:؂ 5Mrd'T-_-hv;uG΅zH9fc<w=\ m#;KdwrOkôdG:JݿӺ2HX%:h̢yJr'G$nu質V]&$Z 5xNR-OfWW~THL@ߤ]TJW΢|ir:ܓ.Sxw4mAf}8UI/h)nS g?tgo"vVozUG#2yMLQُHPYN[hQCkÄQ9C-܄H9MV>1dgԭ_+OIgmFA—Ohsr|dnŇK صj*`< |=؞cY;Omh'VA{|感€.JoşN䯪?23jfkY"_D*%H0π% *VANG('~Ƣ߈;+o'&?? x>:<tPi-,MIt@#QB^ D,9AP O`EN)JF|j5@e)NvedIPQ T|8w OxnJWIxݰqM;:HoJ8b:j|, u2 EkG6Np~`RȻCn<IO;JWkBϴϮE 5T/p 4:!IhMfv!tOMhr> aRu+s`OQv .%g5Qr_ 9؀v}9f1c0Idn;Fl~\fBSWYYpGwG$/X8uAدVxADϘoG4^wuwKyQJ@:N֨( $xƀKSm[V冩&Ew?RM,}vF&#"y"6ÙEl1cŬs5k/Fnz$6w$=S\hq>1;)2 L Q}@V|#Owzt4_X{ !n@ )^ӵQ-XKUQ?Oĝ>ʿ_='u~At';-5}4\D?TD t>W['Z5Œ@90pw9gja]t);"H@qKe'QJ, 4J C-FJW Bw@rZiEX4)֙SM@/U"[KRrNa4WMh2U=q%lmA{g0n+a@h W~VP :=e l$}+kvvrgx>u QI o *YSעk6ZLep@zI+ƁxG&ªNAߚHhq%Xkǐ~nX점z뀣[ ڠ"Y؅ܙ0Y! ũ;L9kiIl93j {[i\NGsXb^_׋C "rLi[pa9֝"Jc  9„@f-\^ewxkIK8>mVFL.uvCVB]ƍV 95]_X'U\5~3@Q&#(+W.<#CzbEl$ iy?e.^7E3ADKIЄ bgnf'D^V+_Q ᣚ`݅zt~"ȋgU$.7Η Gw{˶ Mh%km!Ǎ,NC!|+8VGiJxiydj5[k~QjWAmGRIBc_rEU,^7, \I’ :a{Y *j;JHt'QKv^U`[NcD0Ɋ.?bR+ w!N3RW*yîw!%?Wlm? oq=߉6dH"Xa|;`pZr~]uE o=oqy0ivuk» \-i ;Ca!HiOzMG Ji$1zl> W[ͽ->OBh됺Օsgz >aZ Lp-B# £66esDXAb: .+w/Aԍ>iNKT1.98:~W뼲jf >}pex;zN|0!O ^Nء+Zz /ffCYd1 qzY+OΡ'&hS}Au8{y|Q:hEw$vRaV.> q\)*?'6꫙O"qIu)&˶XAF%5"]{Du%=WQB}OO8ҲbR3Q^,B[Vs~_Wo+4}x"e~]kqigC Ŝq#կgdc!q3s[?:rsHtCV"pW'7 "-B:]A>#R/na D;:oۊn΢d~,SlNOQRIZ BUdxKA)hзIw"ړӰ%̀? 6`ea9m?Lkŗ"ۛ ldUdT " |uXJQp:-((D"x)(/OUWkCd45&z>o/CUfG<1qHx|Nj MwuS>y%8ChlqCqXsA6i0?dJq;/[j _ p`\11. b [=|>Fr3熇ԜNm $5N؉5iB1o3Y]/^xƖOV&ZkrPިiëyy棷ʫerĈײ5*b_`[.dUNWg;eOY~*;+Hʗkl8Q)0^q {p0{V2Y#Aܺ:Ό:N^DlX0oa@ELLɛZCƎ8x]a] 0UsҦƠfej,ve<9P)W+Z ֊>XrP x`]rgQ-&#M3}w =}[!O{Lp[;{g PTns(q;Xdd?gujw^VZYP>clx ޞ$&B cDvGE_guQq=&?0yZe$jW1C@rҽ897ؑ +ߐvWVZL/2Z~DP)-|eV,cݪ0FV=\nɒX! IҜmH_W)hr(mkPIh0`yv)50~p<q7Dqw"b{Bi*5oK֎bX@u O2[l!! adp:ԥo֫ۀ\h9k ){L :{w<fɻabnRhuh!.e➕~sn3޿ŨY.\>7Oe3veu82)ǙseՑ(p <a"zFhgD.HSbϡpfARcgnyb&SӚSL}|meYJϾY@<<jZ  QS**UKKjl]e5.M%\XEjӤzƟqsǷUMNs0p`bljWgC:[^}y7nZ$.wf [x?/6cf8m)4O⍋l(uk +,˜sr+GOb$j}s^7GTڒ]s;wcTftF,M' qJ %l6UZf t7QCCصZY{uM"r[o e0 xM-rMe'qf]\hYWC}3q;g7djpcH*dm^cTpWv1}'ad5WǑ-{!vb*SG[}$4jB@Kr){W]GH~oHl0q!s*7c\6-L;H{Jߕ ]Oִ*&Wvm*,u ByGgIT Jow>i.["ekM{>uƜ[Y7&_ta?[wy3;ra>S٢<,Fz؅V(c0mȿ%}$RJkwN~nΆ%prq*:e VC`A}1wY|JCzh΁Qpp2BNO2bv%:>IA62S+^W:iFv2T* ؿb?^43fv* %m0Aǃ3Ä[@J%"-k?.~޺ 4X<,mcF^1Uڋ%~v fI`GׄaPȱ"e+ vJ >_xZ&hٴ`ivǾ<C O2.D=o!Mi7eǭS: IPƃ$h 9 9|F*Wc"Šg3@P] v!7d}kNg̛hzJCe,sEk=aJc{5YL$yҕB!ۇMhV\sc|m.$sG3*VТ8݇u QeiI'Z߶~6cg"ڇ7]%8CI󟾅J+1b*1H S?_x@՟Ԍ ?*kP}0%yIU*3 '^Ԓ ]t] 91 N7OBUp`՟Z"t#">>e$Pa#BYkW8""߀8<1H=k0 pFgb=";+֏:¾Ȍj9ne[ƿ2pmLpcq/{AjF z60~WL(Rj ʵ:7>BTcT :D/A2'(Pm`?4zPE\V#%Qfj! "Hywֽ`JƁ-c1(GPL9K3+%S`]CV r3zJU[+ܢp&u:̬%ARk#kghekFh0?%̕bZ 3G^ 5e9\K˯Tj)jמytNjό:u{e[1l*Vs^fU{1xc= \vDDzZv#Yq{ۀ}kF|v8y1QZK83&Xk#éjkY$^05O}LKpY#C) ö/>ƺ?x_. e*8HɮRp,3^HAl %ZG䉪Kc8k!}3\D0iV(O Hp^tҤc {71t%5&Q^r)=>]kdBs r$j_dk̿xMtÌB], 2 X .ѡeɃٓrKNxQh= Rk}B@O!*VNB^oȶGDI Ruxt$F=Qdރ̞#R>ƋˆXuY7"A,'' cAΐ~u? -Js3+ȜTJ#laF]QhR՚t6\D7~s̮# 3۔f@RvBRy&Q{4s>ouٹQIPq%'_t@$ϑoԾ8Ao~I7_KAClb %f wAd2Keױ@6K20jNqzҟ!_GZ(kY)!H!ISDCޝu 6ܵ]xqcg( b5TѣbyKԋK^ޘ\SBrp($FՑ.;R\cR}s a۶I,3Py Up@gǗ,v?go6fexgҨX0Qi;)S_[u9ٲ~onrZ6vRPbӶ!dKsM9<}lʵVliq-4}hxv%i byaZˈ<ۼl_?|Hˡ-$np(*Q\BcR[G  o2 !@;sANZ uyaEW߀$#l pG4ψ}ySRa 5@ST5sbd0w8b^<5S|btb3c"~R5SUwdBQtvRox|F M1HS5~t]ބM> ͜bM7ܓ4}}>W:'YW]p@Yv@̾ N._xSϱ&;BPA<~-E"j~-B2gp#,U4>$ ^B D,:\0= ob*+p-TT[R,Kދ\uz;W;{iTGCtXgK؄@wmdZ!TVuOqB(E}>ėmUa!i8lli]*KqpѤ҅iX{Cl7bߓS 0![԰h{M֯#! y${z:ӠYJ+Zuy&i;]#tCcY>J YEO96(Bة_iW'ǩ7Y)C~6mI+ݕsZzb$n_)\G8~2s@hNeHz /H;kOۃlϸCk"ɸ?MwB#kvUjejS%[ZH.L9cǕ99gGN9 ?DJl1~,}QcJu%"'j3t-#>6%2췞+9wJ|:chvo|0~5U* vy%JV9oH 䁀8@W#W4ׯLtOGVďtQCqbbڀ/Pʛ ?KEU?ظL)F[4efE;vD#m)4< OP'Α_~5BaQI'ȏ:șK1F?Vfё}ơhƉX4Q<va'lnV+X7ЉV9k3Sz@Jk NZ7'cjft+gSlP$u!}]=^ZeƔh԰NT.Fֹib .*&BS5[gtjp/ɍD8=Sɴ24\E-wf{)}6M9U%,[ -j !sM9HD\xZQdn\^lUaD4a5qp=:k^`bp#*f@d=Mr7Ktdd? 7\kP'1SHteEmf4F?+MrĦ:uRZjGiyGt|KpdrO?[Q3>}!0j EPTIsh Dy<_zAiլȍZZH 8ZI@-5ۈLU3οG]um&g-c(cj"X/E #/Uz>De+k?#dx GhDCgC2]ZW-.$Ɇ60j^P?es}C`6#)?DXUu;Txs7ӌ`+ Gm+QMD?'j[2A*ٞ%g!O\NP~YTzXIQ.gxX9+[s%o^ȫ&*QJb,LsPѫ GbP+b..pMbᩩ1T8MXl{PW?4:gd%v:l@TZ a5Gm2RknebPυL3 Į2UB焮t%oETsY'q1lR{Ώ;pN*[*N"-2ZL<""u~@Z,XB>Yce;uCTYp%R9nQaك۟V>H#g?kH EB`'!N/KD]ޠ5aߋ|iU MlڕrtؿUIgxƍ"vh$E7N>BE"NZQ/EihɷAV?8fúljVoϠ7:<*5r]^:.!LoEN[ 飞1TJ ImK͗}TlOծ -Qr?zzcw y Pc1.+ PU-)Oi^!!_(De貮b,Ƙ3Z7s"XgV &Xp r`xώ n 2#̧x8 [C[:/#\,~!%: iAj K{4B>vћ7@7Q\oVU1hڵ~& .i}hA VӇex*55XDctiNq3ֺx^׫Gudz Ve'2_铋)F$ PN)M5RTeK"2B.C6X|q 3L5X݌fGL0 ̉z2%0iәǯFIȈ{gNyEr/<) г9w{F`oJ z LnKM!h]jN%nagFɠ^73,hAE0kfӏ`?+TnAbŐak'HK]X ρGzsR?qaXiX'ih3Ǔ=TĮjM )ˆrςA%%-T}lM'HUFvb q_X'#x0+Dg7S(X&r@#2&ajX0[ GJVf %2vc$\>{;_LՒȰe-Lb1AX,6̽Bc?""&EJ H2#fxyRY%p1<(w0 ,E̅p@=G8yǘRlo? ګpBqcBv 1[ ?"G &㏥h3st9kˣ?L\MEf5[a/w-M.yeÝð~k$8w\E#wbSYH`k*9 I'I1 "ٿ ¡t^#v7@qKXfAΨUNO*>&27K0I!aZjY1)05_!)ǺH)]]+yϿ|gwB*II]Q@TH.Vea` :,HÉqe6,wli2;Tתq_СS^ы;dXXmѶ*R0%~CۂPG^ k&JC㢻H)Zr j1Ɓv"k}Ě#J ZYfd< 2"D*Ҏf{P^9޿@嗤$n[9XD&<*,:z|Ik'vL[8GJvOﺞ)z |lZ*Wx `sz 7^a H @yk}e@Ja JA'Z˕4 D}qKzA ~ª 'ȃoJ =U0V}vҋ8LJL/AO,A+F/q:"U,+m^q-B I}Td~69Güxs?v#%U&cbA>h8 n!x>uל=zadOcMB=SIOa[Qp&׬"+TSY3H%y}U @V[B0kg¼&١qV+njW6"iC`s}xD3fv`=bk7ԘZLGn@,' Eh6\s䔋gv²Cpݻ%jӜGj32C$>sمFʾ-~PɏT<- mo6vj`q+my?uIRp^8^0 D΃>-!|+@vH[wRzwn@"VQR/VM2nir3O Snu:չުy"Xb ɵ!z(p/Vq|=ny>MBSY^dާtTL])@=S!gvbu$sfy D)3NƸؒ#9}T/\$Ssʎuc%IҦs"zVeo[=ќ{PF'}2Bc`v;J P3#  y~OG݆T#x"Ai;{)p6HܒYw#O}ە_uwB^pH"# eb:P73K[ ӝ~2q`<?t9E|6;E 9C}ũk5NVLs254WXJΰIc6r' :1~!:$'Igo =&C4-];A& zhqE뿂RϋJD?PL5D<|9lsV@E|'XV؉MAu $SgHLW^PRW)5G!mcz4.}26cXG-pA SR*1po͔s*'y*N rNQo;4P{s<]JKsoL$Fy[HzћQT =3勐Kd.* O&vzf4wիb&N Ivq} ˆ(o•cIF>U $@e̶r).2T-%Ц̳+ M5{RSPlP"k^xOGgVQM];v'XX;ژ+ @Ȯ#T(yCb{E ׺'_4Cׁilkud0yPtm3S? V,*8&T̋Qb= j8IZZ+@檾 +xMLX[]3s o 8G̼MG-#bl9СMT ސf=.̇ fwjMu)*հ':2XPþSoRhy 13?>oQX %fK> /&w}w$<-^J *iJUW' .ܜđZ`BS2DVգ:I@.~MZ0x}<;->lLEhHePX" c"(_Zf̵IvuRr}8N.I#@w3]ͨ}'.ɟqgyW+`Y bT~bk_dLqOL:.T*SK1d>_Zs7;tS>ڂL1 8do.B[`׷ vb@HU)j-4|vM39pb@GCY6g+<4/,Nv8[ῲ zk0yl>mo 5:sY:PQĭ]Ɂw1(r62GrE / ;{9)<ܬ`IAYf֮M MZ/k_aôhqBz/o"L;}˲x4Ni#Nu2sxmDL #%,}WixASbk}rIkna8ۆQ ݰX[i6(gDӨ+e!Ch oJ;\"Ϊ]0~wqh vաIum^`SD+@ޑUrrn||cQZ'Oi86age?+KQ7ۄާ>̆5J_jR9&mL&8c: @/YJ+yVhh(YJ`bu !,}VK"* [@t+ ykI\e`_bغŰ)=Dp,ױZ [1vbwO&00JB7,\VƖ5FGwTy gb,X{u'gShm;D,W8l-_ѱ3?pBl-zWK| DS2pі~"rY!m$ٵWl{u~U%K@ }T8Qw SsnrBRn >ևL院X|x 'TUrycx"F*l>LI](I7;LQ)?HO^O4pv-6"k:X3w5;'3Rq pEJ{i-Q/#x^dA9*\eb<$m8.L=̽Ҷ׬$ߧ-1\k`s8S&'OwJ.8n:Er{Qu7* b(/lBbv}Z%* 09(},/7 y ]ʨ(K?p#HNPG0|[Ttä 96]ޒn7]:}ԙR{5g7y[i?v>[n.}CM#mҢ5'bU+%#N\N>L4Ŭ;ZNyYډ^!s1hl >| Jla8pE`Vk1!!'B͆P" ג5l: d8|B`O$y\ܣK"gǴZi-Px\uL:G`ӣt'J_<99ڦ@yS 5PA]ļz9lZ%lrqFT}߾nӧxňlC nKSRM˜ KƵ6JRE~vusUpipeأEEWeLत)oй JkM=9M0NN՞Bf M6(s\;F*#왵g yY`i1ז-gY>b’\/T ,Hlr^>u;Sľz.DZY= J!Kω|M)Y)L+[&@T5OًԠ7^v$2cZbө1qZdNZp# ~P'dtYPgCqq211sԬIiRw5f,=G)i9UA:jk 3yԟ @O& ~T,GZ%vg%#${QEyal|oMGfOp +}=h%\.~Zy0*J$ȿ7իgg!' Rq X4,#ݔ3,s2~Q)0rȪO#(Ma5hz% |p[CX*sg[ؒVENF# `ee7Ǜ2V#1{ IzaKhFK~m&[G:MC{ *{2*bOѪV *Kޗگ<&E?D^0N*f-V3B>ÝscxT/GKd5,Mz0g ife-m$yʅ"R`6ou/:htjXv{8}`MJ"&͏޿39^y` σWEowmVl>͈Ovp N{ˊi;bDw K+=J",若i_Ń͚-!c#](̞o^~r6En#GjD9/fqbk 3Ka!z@]ՀÐqJ{&0s0պбg2֬&mf9M”8 +JW0GΆCp^D312pLVv}tɼzU9c6v8y;Ak!0JY3R b,j:fx}syXo8F=!]T2!۸guNM&d=Nkz]0d9~K 7ťjzTc&YFo'm+ŀ˸$Ex(j:\X0th/^o ",رdVZG Lހ pU<,)7iӶ&昩>^fT]l`jl d0xhe5h!'b0IN/02q(9 SE K0 L8њ5CyGJgrY;X еT8KrDunRJTE+;lrT`O~ 1Ϫˉz41f txk?2ųK5Q ח&iiyEzv-&!uOu>ڲ e#xv& 9* 9[ۻ3+GK7;ϦƓ* BCRPWdnTto$2H[.E!nzГv6' V:B#?V,~MLYCZ.΃[%f֯}EZu%LGRf?mӡJW QqL8z}]1M}{\ѽz=H(u#Q0n^dAA|ͨz{k:ô?AVB>K2quk"Вq|"E/DdW&wpht ^ >ւ KksE<|d1.;gDb76Pxl%(xxHi1k>]h5/M/FFJ0b^:F Y4h'PC`,4]]}ގhHdˊ*ظZߍy@Q9WOS7z trs^ܱgq{@XC9zLvk8?!y]6 rY2a`gsɌ:!0o>BnK挋k`:= syt;Ԫ-A[=t`%AHҴ2zR$YTZ#I6Ojޕ-h`J}w|=Y/i^6`t0𴴣f|d&QԃமBjiyURЏ(. a&ҫvqp?y. :'X0x?rߥ{^S~o O z Onֈ'rUڥeúܤȑ4/z\f0Y"sQS`c5F|PՍiZyb.3`HѓgFA]6K|t C!(·Jg[~1BMO2i9ۣmdeԤ`-ZsfE0q^Fp쏊s[yˮƟ; śpR|)~Ꮑ*ğ9` 7c~)5wJn~V50YpؤG7?ӸZ:}m3Z-4pbVxR>Ia}jb[O6_wbg-6l>ċ(jsNsPZa(W+"@q YF[K.r׈_džm L>=ҽqz4Bـ|"zjȕbnsȮ:@s'ۍmc EY)"ne9<ɽ1*0K28Vʹ;,'+ VdaYĪP h̬&}ҲI倻WLV Oͳeز`i5Ask7J2t[K?o1bu^ׄ._n<^;7!6Y2׳[,T"u)UҰ̙ p,- a Z,Йs`;w֖@8'kqIg5Weood4,~$,9SجiWCRhj9(\俇Xcب3+zέ1 T0rm$cX٫͉ o+dUt Y 48G_Wjmu 8 Zn2^Dn]`=C.=aMIW"^U?i<lRN_ī1،eÊ[z,M޶# -},OgW:i0.,]`-^p܈^-T]wp4cb?/]G%,[""oׇaSHy@ ES𬓴_g]sDL'a7$ rե'M1'TҦx(%Z>3KĽ`9ŬFA姥bjޘ ɬDw Tg,YֱkO)G^ Nh% %Ș;YacwחI?T xZbN 8nKK9$譫AN<!B~_!jp1;*>ۼR ;,fU' Uq/V#ri̷NRzr"SX[VNo^<7$PNg\Pm'fEO^m(J\mpēdyFSF1ԋ,<:?A#[$̰SA )[.x?0(%G`2Â8K&3/y|D@8}kpnX ?me{VEI"k? }GՔWtI憠t^ہ ԔZ~}ڹg/8tH*.%_z~FqZ/ =@]8(xx8nG* $dB3g(Uh:Z=yiNcat(7E\!v>eGi!jt{6{XE-wgYaL@v#qCr:#^D?)ZO FL`B, J528|!gB8j/%bt$CtSݻaԇGx |,~0=Xo]XMWILqS2䜮 lDGT ޅ.r"gd '/c"8;_7Z^r4mTAy{$wtGcOJ|7%x.5oѺw<)_=MۏrƗAdҺG祦}MuڵEj-Fwt%_DF9`G>ZԨM;ђ0Jd hͭ?"y3V:>6ii-RDZ;}rA/;3Dk\SH 7nmVUpx!Hcs60L{:c\}Ψ<%CIYn'7SA-SGeK\x2n;;}4dٱ c4%Uq7з8:bB\< ۉ;많j$KQJʠ$i:\y^PųL@d1?YDb ]'Bf54y bPn|oYl\>*7ہץ>X4U"[KxɠXq^1$98j ʶ>3 F#p7<4uxXU|Z𱗩]h+wEcz ĔgXws$SI3R 7XaFc2A,YijinUHvx Ktvy) }9v]s +a_ b{'wv ?zy nЅxYL$5/BWDs_A~r8 }1l_/[RxaqS[ oY_pǽ_t 1MRP⼐!`}T _6H骓 ڤ3A %O38g M/\"H0[oM/!|0Ĭr;_?jkWw,܄5բޝphɋ+X !0)O3(bTc:oXLmٙL.Tt@ߺ}qȣ8 7z ,Ln ^Eٯ/?CR&eH1="v%I`\rz0972juf =q,~ooNp)CJ! Di<Ȥ+ r+xz:Ք*%О+DWBQ٢HI_n>[vF{;7Z>R&^2%ñW~m:Z)S~;*R.8i:Hy %^Z6M;>MtIDuEHH4u sZuCt\=T#5{73M0i8qe$(TrW,'KZ%Z $' m`;1y^Kj1ZymTj3[tv/5^3ς3|*"T.m^Bߍ*~nCdzFl04jԉ}5f"cVp]1DJpYLײ:)՚<{@o©bkVUW"WD+&MuzR|nݐxM¿Bxd+`P?P6~x[ځ:I*:3:xɑ#_O&Xc*# tXW˒ģ=i`Z<(~½p"sgd;T92۠/4u; _k(Yd0b8CPoJxܢd;oIkȣ9IuP֞/1K݆ Yʨߑ,:Y.j!Z{he_.n(&2 b|żeUέёPZH]a!MlZ%hR^$K$m'+uN %Ŀl9Ѧ{ 1 +YBdM/0y#PnaŞST/(1Y5j"Mi:VEji7pْKR2VK|D8NJNFmp*{S1 i?9LsLdnRNs(m=,}DG+#R㥟*u?'JWSar{7(*FS3TBl5zƠ2sOd>Qr%Ph?I46-USB@[O3jrCEPZ3Y<*BQ-HLSaҙ5| Tq[ #q/?"jBX":wQh܍Zp?oue4#MTEm%%c,|RfhqkFYVpsAfL g3r)?JIo QJ{1-a7u <3̶|ӡܒ笿?eĥ: }>NХҌ(gZ9#$dcͺ{C>J'5-m\; NT쁶xDD5 LIz <B>pAYymM FٓFmyV+\=$q`^}էrAڽ =5C@ݬ1%Cw yW*s# x}@&!lp ?Zt? ۼӿhi_di_ʶ1xTe7D3-UױF{ 8}g nuz9+s#2k w}ƟӌW*-g=Sfó@gs-KTFU ]>VVg \,ӻ WɂXyli4jf f6شvX1 VxΉ 1>Q2zMY&4huDF`9iwV70^bmQJp~uM>t@t\9SϪ촂%Ya oac D(-bVn& үA5Wdg@̍:yRY2w(hBoy"fg vZ5zڃg|m($ԖK; DȧIU8`fdziZD;Fĺt5=: lЈoS?` id#\X'FW8鸦t|iP}G_(_85Lɜjɹ6$e$(yU!m_3Me0.p!ɷx$3WݘK^YqV%}ėAٺVB8j`?QJ_AKoLxz4M6DF'w)5a"{51ALdZlԇkVPvuЪ`(6)Yvyc#*`>-~2|7O5Tڊk3M{-|% 85ʺzS,,l>g6Zui/ ?!d$V>Zs2d}ݯvahvr?ƨ[u@ExƎ( Y9VeTjR>I +VR7BY]W[mZ&ܛҵ~nC.=g~ۀKX-};⾣#b;9_ƽxF26cpP,EƹD?T>a {3\YHYA5YN&G;p6+|U'V'ژ9^:;;lgRk횜jͿ.5€{%v F|u=j :џ"#鍨7he{aGġ "t\w"cT{jgJ|x['1\5+}Fۥ4 YIF@7e&]Ӕ)6m~ Av|Twb'D],w!2&T܀d IO?/04>s #1^!FV9WVAƬuοQ)DQZcJyj_.Lu™P[Uغq.c$M.CﱠW(,V yve;aLIH;4bV2ח>|&-Mnxu}ܠ"^VBiwFoF9۠bZRlujUqUy-u %?LM/u! WM\Ŧ"S0NlsQs!%k\)뾝ѠbdK{EXIXr3Jl?f cG?LzDyQhMJZdg=q':Hݧ+x#>b݀oD3hnƋjvE+Mʘ%K%U-rl|c[?/{VjxA0d He87#WiU `e: [ոb[Ȧ6GVR{6Tdꥉ(1iupVbϜhl Yi՗]o&tfpًTٸOy ;"R7nS;\ \Ed`$+vU"kvKIa)CĐIl=Oq-EMz_[" ,8T>]}#=bnҫ_-5jd(xDWY!s%ҿ+k_ξ2횛ްgs&A^)B! @?EXW]ɹ0lbT_8W5ɛ,,6zDo) JҜ?f/%G0R%vUvQ|"e,bњ G>t5]7J];j~[4Rj grB_+@-y{l _ŰM+n*f_@ܳI\C> ro\桁|`O{1lǾateDM c\\{0$6T#/w KJmKz^Tb|lNGj Խh /\jTթ͜#2 15퀖8Цom"FdDAʜ(j eB{BJjx> &#"P Oټ{uB|utѵ$9ԇFa9X0%? ?wws QjsQ-") ^+:n[j^ՋhJ^f@޻%T*sHHHcM9l6P=PW^sܮ.K6_T2YBNzuN (+X9Et^(p50tD<4%Iv\8a$98 G{<k̝廭;K5Rl"N3q, 2x= ioeh`ĆMЏzZTwL8L|0VM2z"bۅM fLyA6޴JʌvBO6%0mp[≣/E ƕܴcq\ŀTX! /,ci!]Ьb@rvKmqX"%33W̐yaμJ̘z)!|ơOҫdx}Um&Avn-I5_.8 N1ZZ̆5˾\sfz'DEE>ZPT:YH1qa1+eis=nA`#- >ݥwt}.(]r3rɳtTYiˊ;8K Xfhv,gR7jB h7|I~<Ԅ} G g:Po;yu9AvDQ_6w',<ߡ6jݻ1 l(Pzs$BUzago otֵ̥i亰73p}]k Q^uFYl9| 2ZXrf~KPƐ nbZ{+@mġkh/y p{Q%PP0' 3EgN=] PNpc4#mQxeQ~_]n{*1\zCyXJ7$s75yVL;(dHc3 S!72Sqx1ˬ2q 6ahFRpJ[ PKslF$N`NhrIth!cBpd8I]~ٛj ǚ&eu蚂>4}$h͜ 6Z<X )Dq:}6uN Wtgtfo]69X{ =cĩN>BDE.>g)MK5T#]|wݍx1Z,O$JL M%4pčp(l0":T@ Ŏ2.MmtKIJA\6(D+|F=Fu;åǓ'm/^熌z!BIoOY?Q;qr6l(FN%*?E Y[|=uϣ9go( s)$_m m|?0,nW˩?Z֣jfl_g¤vS]No`Yt  [ĥ"kh8'yv FF|Ն܏X6{wxt8?S ZN$/pdU`2S!)Ud5G^$[?MwѢ0?8hh ek= $ Qɡăb,PNA+BJʐݖҺ(a[27 qIR)D90<$r}PuC6]#L÷< Η(o4 > #?0HF7p?2f#2>3}uK ue { WL̓NcJzͪo?:;I5j.yqq T ՞ź& .%mlqPB{th*"{(!= ]H7FPӄ T~mفCa*k^c(_Y`Y>#5v grZiOf[{i.;5~{"Ρ(gmnU#pR4$seV&ׅC~Xl삕=n:J*idAǰ~äT~L=ɼI.{-g1IH:tT<CsEXy5gEjښ9@m@Fs'RO7@Ui>m{xehDŬF}?vdk`sҞ'hYVZ "0dSJ~)IQ`kiLGt9DGQeigZ`NgP ΂ɣFx kO`fYƬ{^t}u[AN)=f 5]gѪ.bbZ-_ " GLӎ`\s%߃*[/D3d !],&scqs&t l@-噒Žrݵ(N]hm7#-%";Ǭ\;8*)^W+ʐ^UռRʚ\gEJ?A˨#2ׂbƶJrcliϋ)YEw,^${Ic;Oj mPEĢHڱǕܘnGLn8v~_6ET =:/,Ϗ61 K48"M>LF k#թek! #͌i5'$1H|ďïlp#n#Wo(QDry M/t16iE!#6"Femq?hJ2)&ēE\LT=b%Cs? _E,}}u6dc#S$z6G=?gMH4O1S'O#y%$+?u%K3bdz-ee1ٶdpx4ꉍ0{ r9jgMglrNk;?=?bn>o^%FTtT;^:6JBa?PeWbiY+yξNkKBosU"c#{c ޭb[!Y 4!;HtAs]dj!h 5R}m!hrW%9y|A~elmT[KI|,Jr o(4ׇzp1$"P!R,vcYC99=4Eo P$Gr9.^bhFαu0߸s4 czX<'nt0iHK#Y/sJG'g$K\S6)_i;dΡX #qOv`\11eEkG-ϯ8zSq .Ńk{^dyYOdh*ml ҹ%Khٱim@UAoS4sIHwK+4^4OM2tAti}m$xtѡ>^Ɇ:ڒ -LvS˴D6y<+*Γ_U[CBK$vf圎S9eqg1vdl`N-6 `/X_+SM;ǟl3ɵE2 ֔|u‹y&;U' k_7H9ǑԐыp~l n݈aUSx8a*&Iid<:0 Nȏؤ>Q5XHLjӝ!i\20(m\B#U{u9-CYP_l$/sN kԘ+fE_)O&P +G\0sRT$2nЫE)o.d)AMX$/FXPy>@:7kKp 0bS4ؙT}ZjmoͣԎ8t(\bn HS**f`9ěz#gIɁaf]qBq46 :Z@Wn8'@3A\\!5qnl`oIOoK ZLj<Yꔜ2sk^ߏtW"oT"Dm }{ii^x9YOw,*O朏Ǜ?g[^H/ۃ )eƒZ _s}`7qjP qTC2 8>~sN: zB)f ;|irV3y[ gfMW9KJ35[H >Zpd%:+yz.F]KЕG5ۛbwxd= ne^}3U'C-6ABϠ~z n(Ϭ}мx{2q9^&wVtyh:shG -L=οRiOu#7Bݣz{z,\=i!mK<,k6õcNEA .Un£<'Xx޿WC>x@i9y8ͩG^o=9fI]-nCC_酓NqNn"hǗNR& #nZ"BYV>I n_UH `eLN=H;0uHyC~p#z#/ *deJ]\v5쮺ߐ Gg:N)uO+UkfZk {#wغ->S uy0-j)eD/3Z -Av$IO`ٕYh/%Zӌz,nCxuN^a=X'Bt(= vyxH|3 8Ɩ&&^ N(iU8z >48FizhoaMܵRc$A/?-am=%<ΦenP+W}[;;F br̾:mY Ð,:q;ꈜr̎<MIgMoFf_`FaPљ oTJ'6>#7޵_fJr ѷbBvuG}O~F!o. W!$2"9; >h"M\8C6N!Z"YưzY0`HTB&=[qQlh,t&m jDL)saf7&3U:ͰQlG,\lH>!% ጕ B\랺пaᕑU/Cn=7QI0hnI҈Qڡbg4 N㈵Nx{F%}"7Wys9[x"OAa -NT' c!/w _k [ukc%H֣ u<'4U]Ε)\N+`y5;lʨDt_ uGd cxfX Hdd:y{flO n&f.Wޗ23Cn|xQRՄű0n]C֐2d`fx(lNK^i;i iU9;#D2ӯcڑ"c!uDoJpENBK$Ouq>Fwg>5`*M.6hA@bF:6l1\R&;)잇ۀ O9ӳӜj/Z򑲴 1` ^+ֽz&Xj@DnOB$p< #}\Z᝽nw<ĭ9ILYad Z+>!ZH[dP4HO9VɟO%@2-UṲ&,n|`',^8Eʏ V_D$s ; 쬌Lb>p?3h'JlnWn}qqr9Vl[HZ*n @vכU}%$G2@k3k\}\vm3Wt)tȌU;qzG FLly2B O}gjՈ]SZ{)0vtSQF'CS_'^&<0WD0|-B[վW(M n A;aܞkG^ A{JV8(C$s!R[ AAw8LtCX-42WךVuSUKrgII¹8UL G2:XCH)*6!9z\ jX8dnٛ߰ v} R(1x12H_md& γ{IB8d M*1WÇRDPUyӔ3:Mǫe:Qdz5ZL Ҍz"?x=jZ#3]P^`F,kZ V'qo' ǿRkE4kF#&'e&ZĐ00'ulY=/_m+%cyɹr ML q]P n"1pii<]\Ae%7'KokkC)wY{{B2l6"Aa5c5/r%`ʚ!U©POܟudi1px/r!*)1ŕU\kbI kZi_:[8R}2)fq!iH#ZU&汤EA@Dx띯NU96/x:̆;\ x#ɉZG38{6qh6 zy"騷+HZ.Éݏ($j1MQ?NTOʰ4`+D=лR.B6e]m J.mKp(^8Gj!theϾA`waL9mbDgN>`^WbH{LS+MIT.=S5] OpX~}A#1} A%'9ސL!GcXAwgS_b¸ԆH5v "B&˷ BKf?Z~UnUƁB) n˛jdMeL0R@"x*jp{[NDz:^]GBD4*w?7S쑦 1d Z|y2&AY U@LF҉Яy÷kxj=y/aߖ Gz[OC35.^'b0(W6G9YP${|I0:8M~Dg1(} s4@x8A)q%\97 (Z'{} iۻ( oycn!':ڑm$eŝU!Y14Qq5y1~LiHLߨ 7p\LFM2wYS?#rSP(YSb8Rp; 9Tos3/J-X[7bzxQ-ixQg> UVwAӃ"ŽEc2e;TL~(m-W˺mK QD'f׮=T>g3\oo 5GKQlVgV2*Ku̟ljU9+OQPŁJDK.|iw2 mH,'و"[nԴ cUde;<υ0ecSUrTib „ i?dF faWIq a2 wH;P:ҝ'BζA1iУ[2qbrp;GgAP佂:xWAtq__Yiz9` ]W01wR~7NYcZ6~T=jSz)ҋ3  ͂)J`㚵 25O).^%--673p?mhV*?octz{BQwuaVd2G/ ' l{ Dl*fƳZ:q/Wp`qU8 {I: s~*p^eX=j@$X!O5Z$ͨPr+Lv&ڣc $.lj)^p#ysOwq-QNh|ȥ^jι> l;_zlM>Cfc kEE |\@ǒ('!kٯrA|Ɖeߦ^%ظAgh/GDtfV m:y8"Vx/Ę9l~!s5A{!pM+9ݞ(|k bj,gā5K~,&9uP e^r†L|$c#lS)d= 8p7 ЖhnVᒆfk ‘WfJ)+I 7q:.J-f[)N#¡bogNLUق06ӣUw2&kZ{uΚ{Vbp75* ⿦>a3'!H_*"H^-;qKKet/J6+9ή0aTuCw7/>>f@X͢"pQ!~’"!|]U ^aZU=wNX{_f% uf8!DžǍ=nFBQc!.2QC5yfPϟ=L2t7rгdiָe`_ny:3i8j.,3YggX8yx bXXrPF벅rZv-,OV5@l=*OdAuoN\JӾDmDڀ38uTg^+riy6GRՏNǺ!=4YR4LPkр> oJA~u`]"‘"Apͅ\vRgB޽zm(]DbhRXh}j6JҞ~g5x*Ǭ[~,FuKws.;BA c )ю~׹jUBrikE kۙ=ऍ$Ţ@M.(9 ='wʬ,XqMʅżV]\LcX4\$ C>^cP%""ߺܵPșΝZkLޙg|~=e c 5,Ҕ/჈y ~kơ1_KbvN򏬟~hpmr#Χ[=DZCwв=U?+U[?d|ܯrkY}F*TVS3!!q{QkiBi{};y=1W9`HpTe߻d ,iUQdFLdJ`t^4bL# a@ޱQ!(`~SQn*g.nn8B*Q1J:)P=:}6\TۂX?ε}b &11&R `~? zx~ H[CW͏YKL]{וbbMjͺkb\IcW As^V0򤧅Tհw8hqܬ$DZB"K䫵 #GjGsǂ8]Tԁ ,lnX,PT3ld_^[N{;QP._U+ZWLVYY4u)dO] ϱ)l{Ԉ&MTX 7q#KE`^$LWcv j>B~o['zGjZ@\mIfB\duUVsq@Ϝ5%Bߘ6Dq3U3Δ:7@6ϽŸVWk+g0.ۍE.W@I&< 3zRVNp=6CAV+D&} +LnjIzHn1 = @k?C+Ձ~VOJ^{2fI.hJ^өഫ)69fP-t`Cobi3Ӱj0shU ^S'XO *7{NBD+BbtSN饓S\}ts?.Agka `T ƛ*)?w s+Ձ=F45HoMeoAV8MCWCK?n}R<,.>ŕ8tk) L cxdjTݵؗBP-\-TN^=,+}7S#0tjֽũHyHQVD'~1_ێ~ eBL/p(f ܔXR_D͔EQhÔQ}E ﶐gSsk5W$nd5׏b t̨DμM'Ќ"si6T=4$dtۄ> 6R X8B<~$ۮ2$K16QOM!7Nuyi[%01_ΥuI`}I41| *"Yv?Xi[VfѯoR%إbzB7jnQ1dƭ*mԭvok"I CjNA] @P(T-!v#QYS ӡg$l~l4陸y@lZrɇfE.RM1/Z˘pԼxU|(xnN gјN!l3QM@0"m$jʽ\V q?]_"2* [Z $P_LSt,Z\N+SꙒc >C@jpYJ/8a{tya2YZAk6;㙏CmkH_#z!{zbĞlQBC3񀗌׋]Ir #D"n:5@s[lj$:D3oaXayGjW3TWhǹnR'u<#o>$0Jb񵧾 1),e-w/ ʹG*#>ဆ-yG@~ǽ8KF+}M9v,=UJ $W\ ʐ.a[ʄH @˷0[q76d_֛lxw{@dqƎ +k)\7P-(ҽFwOCVYEC%,ԗhuO.0 M XdcٜzVjb,&dY\AHۥ䰙U'kXTpеd?wwVɼ-:I0ak H̬8qQu/A"{(YpSoU=IG"wU`teD,eE nlG[snZ䇳 VT!^LI#0X=`^dwevlWLBr_Zk, 08\gΪ7߻$i:Hl[x؎;Wk6I ohZpP\5Pz 0; o5p+E.r>ˆyI-ҮGS#XG\`ӖqpgzB#ʴډQv_%c1*k<0-\HƯʌhԢ&jh}XoYE>@ƒdq]6zzʸ|z;Gl'96~̥l9Dao$"+ }CD1lo^>~[# @edKTOM`" xsC}'!&`YGN0S2$A}t7ޯd_(?"7^MԬ<2i6k0_C:\XYxׄ;Wn9$QޕrE)6!RZr!k{sX^kn).Ϭ{;M`vi5wbNW[UKoNr~ ` chꍖny춌;N)#%<]n-RqC[ޗ)rKTGo!N67m8N{A׹Oreץ(gPׅ.…ti!K[.NyAw{TxEU$aM߫;?ŕ-WM1"Ki$Lsew'Yp|`80^o76B2qdbzۃD=:GBP@Cv)&s xi@$^[ۇ~ قOۦm%$PmAH~fAkcT@#JA$7#@vԛkQNF@+!xa90 +E^YSst4X5Z8MQ!Ytgݧu'!oS)>SL=)mCsH(RΩ6guN̑ПIETܮajq;90 &8V2}Y"v }`KU䞨YĐUwˡK?C'+骀nqvTbf@/W%upg\,V~9M,19JLbrIu6Ƴ%Z;蛏V8v߳vWJfղ퉒g}ɠ@pw`k,,1oA5 T(72~'[,nCy19t8O[Ws5̯ yўD`YDJbT tN?$4LX>D_(H]mjIʔ5Qqi1)(_ 4w)DB4M(樓`}P˼WO563pW\k"bx-gmws_mz%͈ĩVX`3K,DߖbD WtOJmR .xV攛_eT."*f[ytߴ$YE=A ܰ@+jS@KQ.ywB_ `" okgեϚ*iCY+AdK6RgL_E*_@K(-3)IOI38ErK{V?FnR$$q2YH!uVy%j%kD{rʭHfuGޛ!x 5Rlb-ASTGFЄ۾Cu_كn6ATS(/͈ / R}gn#>;pQeG~DS@0]mRaN?~{Ъ,kdkp`q`_vi$"'&kdϹ䂯W{)R% B+ΰ;W7Zm1|XԖgGtUVnDẋMPa:{ŧnxcJ[l'QTOpLY>+0@֐e9-!NrZixb6@=X(-ijşX5t2h0qreX0F ;gY&f3y)Cɼ2%6WdQ Nl G ?Rha:gn,7̿Y Q?MWHTjT zMۊ$9h.Ŝ&~t/D[0u}ؠ$uSZ8g.a'\E` Kۄ,suN>{%'ٝ6#8N1`,9\ S6romk#CWrH{Z.{Meμ`x#Ǹ5ȱESp5dlN}>>݂t_/UKsXt̀wa=|RÔ 0R/srN(>t.ڔقާ}cA|e~N18Íc *NNE6Au&Wt =xAGBrܾb*%goXfxCwuW&gxD钂D*kK =*~.4cdtaVjWR(cn";/('~'6JD9̡\ 'mU}F. yO1i7QYaHic J:H4}'~U~( pZ#ڦ4Q7`A^Mxj (Rp`?&4碗uےņ24|Kyfrtena6)ٝ2X>3j2d>X~ۢY+/a5BvJw(1}]:5_LJEKUDZ:dR[V^W"qzwPB)0ĚdLĞXz0qp#L0OT~s~қrSH}bo5hRjAX v(å䬔ԺnTeeș{Hd] 6d¥ȯ VH-dcݎxY}SV1w l_Jz0j>yJ;|0qL="ը b[vQR80w*9|3tꐇo9 Nӏ%[х}k࿀6HxEpк~(Ic*뼑k3&YisVS5#-eMU/0SCqO'oaD]bKs+<8KO>)L'h]nZ|{à0 s3ȱ-㡅SNWIN.}ǒU-5_3$FܖCv8A77bC#>J@3*9/(H_x~7esAepa+n#eV#:W?o \K~Y&J{q_/>R}lp 6,<3}32Ax#8&<}&W+"كn,""uc6Q1/ܓ d (@ R Ƶ6]S;kez&XvGQREC֍Hjẁ=;_NP1`X^J%O-rx]$pn`4wkxזg2kgHkK̥k/ zau(nb% kгkX;D^. nO'P`gЗp{ex"|cԜV|vЭmHJE*uאO9Dz*!z:9/Mط8/yç& ~dpX N&mg 2%=B|ȌPMӒjر;p{ѣZӷ ZwL HpYFn>|[6;[c2$4Q)ڲSHPF[bNc@=`v>5wj?0aZ5J~GJupz @r($>IIqI5KDB-!cDjG_%;wn9$v(N!_qwi˱uLހ*eluEV!DBGawa0 z&^PcG YU鐫&.̮︣n-ɮ~NŸF>/yWof:l+s=O+OzMN{nL a aܹԉe<֣\ݕVxG Q[a!Ajo K\^&sV17.8D<^IXX^ 9"*#_3_%X@QטEX\VcC{ɴcCV]EDGR5kӎ/%}I]Ի\~٧׃\b&I9Y|x<+#!fC:kW&V6 zD?33ōkpFĜEⸯ<3G/!x.jNǝ2/R1×u!;! B(/B5r5&Q(ՐBm&!b׮t0JDx 9*\Sib2 K~-EMjɃǗ~}..r)_ri)1Gm={Uh!mt?8&iKيyСW06Rc C ~;T݈͠S=x$2.wfc gf;4)gG6 Q=*{&0Z/M}/+f%n _$uI aK*a3m~^4 ^+~jX׶$t釉b/i`F6 uObO[ Ycq > %g{u^Cݵ5ÙI@(8tEB0lqjX>ܣ5& o.A&f<R2?n}^1Srqd~0-)ZgL,1L W*2⟡>D8P/JRo42_ ɼA892<f][`:=>7[{f/`% DzjNa@ X޷8s[9ujtp$^ș}\sMP M\u MtdBoljxmq!`߸n\{Cؽ -Bu} a$+CZKJnb)[֒[ ~s7Cf]7qPHg`2F# HX2Oޜ_3,~_;;Tؖ G Ks.f7e4%( z s' uKM\ rOͺ>e;'U3$vCU},0$)]ˏ(=j*oKޛ<DH*y8d?wm׃&C! $#x9K]E.)c_t܂ ,}I;-vS|2՜U>U9 &t4c%*1-vX,Zで6b}jN<꺢4goqco 6dw5h"F10Ij1Kˠz1A1[,ZzyR"83 oUb ߢN/}D,͜z~ĜV -<Ԋ8LtuB8RMZ_=G:.f<ґ!\Κ2|;_=ЦxxjJޘb;W"VZx t0ߙ5&J *L)|F&]9)tﲴ/e$] $*Y)O!FUc[)Q5<|" nepG\# TRkLuw9X򘆲妠~XPEQ$nP<nX^$Č"D0(锦mE&s Ҷ塋inXIH?\1oşb'W 6ӕ rb!|F-pQ+!tC ۏ.B")Rǒc92k[8ĆYĮ'xߌnh;IԦ+偺+QNg$TO{I`AmE2G;g3]Oi cn[4^| B;֢+4rNGƕĪN<-E:Y$1 AO+Чn+O]rf_x22(C̜zȌtch4bY埕;/]4ׇDⷙ#g0Us)׍<#'rOjB2;A` X ~И*300#޶ 6\5 oqE}Kվf W:,$Ƙ6-UgC&~k=9 (yCoF3C megDuV)>(_t#qo`CJT Pn%=l1Fƪ4J!yU"tXSb?L/oWo޶ .|מhD~Ժv.t0J#30ѻ p4g< " s{ti E#B+(g_)ՃgBnmL^\V52l,eS( .`HQqz z%" UtsgZiG  IENs .!>[KC?D}C:jȈ l xwę)aryG{6gAv_F|}5F\vSc7IK37hm%x]?J\y.E$:L] IQƃqU!X/spOg7dvYyeAAZ݁ 8Q.f^ZdзH$?;hE>%',W?lh=Eyj5ia7ע& ?2C%RϣUpКc|g)9ZY ~իjj î2@,jtoȐʼh~i1Dž Ԥ/.cFΨys*&`L@)DAf .kl}),gйRTh?|iQ170I{SAs[x3KqR #tSo,c`3ʳ:i룆̶UCRh}?Kdx@y"HTb7C[u$EFφS.bW[iz.{٨O7e^ qwf,7 i.g8-@`ƭS;Adɍ_BωKrlKA0@{LrwYW:"֮6\^\H,0FCrZ >@Ň9ҹ"96qos9}z$o UN'o*ֻfN|^z8+Xfy)ty}?bRF:?. 2(3b~7[>vE]8L^Bȴq$+,F s1CP+vTb)鑲眷mS񪍑n'=r0H$}XIb8 fp=iDJcJ9>eW.˃mcA]o uaj"]vP5oL q'5fO7#| vӰM(֣P -j{ѽB `q0̾OJ:77ИO2D]ЎͽOVA| >hhﭓ: +8]uMA]v~ì@߄Wsvض&F݁Ռ"vۿORY//|ɯ[}NuxjTƄ2[G} ҏ*p`odq.:A_P# CӼ2Bn=2q T{ #ANjJRk/%x\؇/'IbSW,لtֆ%Eee=ҥ{nrƽa\dՃjV)zP/јLV-h3ao̫Leϻ)gp] Ucact~jENEu1σ,mڏ,PaQT΀:?l*j MiS' nre*L'lϗ#d|@Ywܩ)W RW;+` ~!@ID);]0V$1[ס,W}~H=_omؕM)o [:ɏG{{l+#)^'zDٺұhذ*;4Cq#績1˜w NʞY kVJ{`p v~OMqE_DLHqGqd[D@k*PP7$xlj2Zl$ RjpDa9 xb.&UO鸟+20T<Td.̲Nlu} q$^e"#Dp#h$i.RDHhQ*!v&E4YěS+BVY2g I3,0x5Y91 hWoyonnR"w*,Yl1x[ש֏]~cIa4 ,#5+蕩 OC?Ub^r!Zr5ҥ EoJȧBR~{ViN}^ 28F^ad.YQWNU'y,Bj=@8,~e;A^u(+gx`# {]z f_e\Eª_`Qeg~>Yĝ!%[ mi'EԞͷ1Kl@l rc%aZώޣ6xcнEJ=R] IR7?E;DyH 82̋#,Sn,!+pwlDm<|U?gfOf&{*A*IS.chJQ.ӯ#}r:!6l)ۢ?XRD/7r~,F/DigFؑ;Nd1 ŠR*k<=zno_;REk?랡)II h뷷U1պw8m eRcӉ/l:ߞTRؓHx\luR+ibIq>>`9s'.;! GO$˖,7k1`XŻT\@u`Y&O^1}wTds r݁Hց%v"{ī+{ťRR$umذω$ MS1Co|7r Vd h[&Q.IUSI]]9-h,I̖5n3=mptP X!H]ANЧ$Kc zP!`zJ2O9;!CaAH,n_"6{bœPb\ _<yz께gBƌ?V `r?ۤsHzpYܸ-ԸNk/}Y\h#Q7QEÑK H$e$LBs{sX [C~_A~W#9ehX~6Au7A~sV׫ˤWaeWr:54, £0~3 {uE 2,w˟ *V:Sun;-F Ռ&8h-p"$[֣ͨRca O+N>c~FU}p{<ƺ_ioF[o$l֯XFj^FʳӋ#Ռbk/-D-}*Yhcb%| Z/;xoP[ɓBaoMx9}AFtL 臚ȫ9h8p[X;^Ouw5Φsy Km58‚ꧨ/. _L/Ⱥl}ƄSUqeE %@BZC*"g8pQ+XF^t#H&g:ܮ|f3dK.ku%Ub!藥+=,(hl=$c71 Ąp2V'o2t6EcUSO͖\l{BńJ#/B$䉊ANK@J3OYuv ͻ%3Ӥ,%^ S2s.0ት^BˢA=2 n p0uVFsZ׸*LF~-DGb+Ќ $eGZ3ʅ긌woWEnh^gdQG@0)a $N08~`gi a{&-C@O*}IHZjvW1 *PEJ̥Fru` =_hr"[\h\w^`gCN+ޞ ;e\^oyOXZt?ΐ+pimWuHCf1XGள*Ö́ ]Xl}Mь%`q9hX ˣ0&TdJwQ>w1I~ w₝ݞ@x>!" (+g^gsͤ.9N)ըxW_·QckZE/1./l,O/t=]p kh2=`j"m() Jc#j/`9]jcW7:٫(sGj?!͸HAݽB4_(6¦ZQ6\ 4Zď7񸾮q%ң}ueDi +\_y޲> P/xyN*v ?tWͿtZlV..H db_eܪLﰺ :Np vggrRהi|C9܆9j1 Lo9]s^i -CQS ջu36cG? QTJC)uBHx$wQ_HKjY{<丗ȦL,;$2ar+,4ßOxxF5Æolh'Bk G aާn(6ԧzIғUT(]fM(.n "Rw [טcO7& 1áh^u=eTZJح˝>NyaëG f㔻bC\,_,WH1>v6eJDI =% _LI\Z@g3M_91dzyBb'{!*1 L_q4"!-_i UL(-9^ #ba B)*r,uhpnrK Pcz*C%T,&}wL VbvReΌRLmΚ%Us?FnhIq|4*$.Mi{;>ޒAn]j#,`~ȺhRC<&5- I_u (k -0=`lh6?aЫv5db}[-Ct;&5^[ռL&WWx@9.^oVdm*]3qw%TϖΟNK.,RA5 uh*<`9O npaD;{yrH֨׎+)yݣ(%Isi+΄#yk.CaV]6AesH'M? $;"L;٪iȭkOBU@@W)P^ 8i: qh+Uzq1a3e%0k^_kFIi.&[G^(ӀW9h;4ZXo`#1ؚ/lpT*2\xѲ^}3J99$W^ϧB/ė&ԥߏ κ%ްs;48䐌p\GW+fe3Puc9ׄ7OUbwd 0U=Q亯]:Gxx-[_YMpB*TOE֧~ t5*#uj25ޯj݃F&*V49{8l}1V6idWjM[|S!#Xl7۹̷BD[߶_x6wWq;$zs'ܑڶ.ɀۡ]Zy:3&kdJ P W~mJ_1!0F̟=^GT[dq,ж^SZk;BJ4 7I M:A}Ό:k4ub0ݺSKbЄ{C4: !`80RJRreZdbgko^ I^ױh sVs+jnoj 왗E'좺&zbxg6Kq}3G`{K4505W=sgx8ӌuaCcbml>8 }#{/ Ce"] lrʆ<4Hb+:C*GV9#Fx}ʐwzԈ`7V`+ma;G* l`KY->oM`ezj\p"V@rg[n0Aԇ83ZS\'K=F؏U] De6$Cg-+b!Ծi-:F?"dOz*.h!زWOJGxJ@6{::UN|s,<"a~a4b!,܊mU`2MvG-dT u_A"onofgJ>,@f ԕ~~)ĭy+{5LI%e+ѫFqqq;،s~+e*mD!}(=IcnD.2j@ Qϴ8~Whvb]}Bl Зu 7b"^%AD>d,ll* X_\~af/rFH[@8Tǜ7Qj8Hj]5-qo$gmDn1E9%:(&/>|^HkЇ,zp0cy@b)\Vk2.~bhO.C2vh3\&fH`R 扮]J(5UvBDL1h3.Ge%hR5ɃeFT'X^=د3T,m0ǼbBfURKjٯ7|-˸ pYot8%WCA'7z2$ ;a:y6⧔h[V$$qb 2e8 ŖnJ=i.9^eQKK 0kXXG#BG^Jhh~Dh@_Ms Osi3|&͇E2tt_57oatR^9W_K~/қSbm` sPC,BgۇR=`0-pz©qdR͑ h6y _ q(_x$YWڢ19v/1Fز]DjϝGfza, Ї5@K|&q&LJb,`$ic^)Y:NSu_bwz_@V_S=)V Nj>CgDWUR"/܈fO9*B$.6 ,]bX!͆(&B*wAMMNoMӚ 2MoÐ*p8 W& ϷͿSݎZ#RA3&Cmס`)/6=WY"(7OAQv̴ ݭ1Ys@{I7Cެ+鼇b=SsD#ؗV|I㝗meALshi?cmXwmğE9m5+Rg=9v`$[A{e P@x [(=X7`mu1^ږ\3/M1.txIV`6`mO!&?d W#:/a[T\#Z J6ޜډ]TN1"cޭ`=qK:]m821?)lQBi2)Y( R^K܀Xm:Y=DJlռ' q| 'Pi4IS >&g?F5GIM6!*1)ĀD w)8ܞ{~<6BB&]zj@DFSmp&|Д.qI0vGlA}bpY)|H7;cgC %)fTl?j9mў JEj]W15UgaRx.)zH9z5!Xqv*2eg*(%W?s9 uŭ[eaSwaY5JLj,'bl*% NX{xLL k6#}:(Z\ȫɺ40x7O=Tձ2KlE@tD%AG]^O'N܀o o$(4`x&6Umq!xC=3:]u& E6 @ip*SLv*2q&=܀wz=cP$ xDp- Iخ5W]+iVlJa&4vH3:||tKɕ>3W{3stD'wgߖcy9KWPh?@\VmΝc Ya3q .B םPOt uJo3H2^LyXJ(o[O^(޶i,]yFGBv-vG /3^~/wiУ@hsR*WOxlpȁ2j%Q5Pin=Q%IX^X; d/ Eo:vӢbt:d1Y8dT~4?)lRw-a`ÔQ3֬U|gʇ]ܑ w}6f:jت>"q=8đ݃rcrԤpB{%C] V YT͈R -W# 58H_o jJ%D)ae8 ױJ'pζc=Y(͊fM玍:rX.Ĉ6Lدw.C)Oz0I@KHLz% (Ѕ6USEkVw>5Ij_nM0m {,Eʥ0mN,$@@ ;SeIk^0S?EC`wB 9MW#ϼn\ -1!Mr~jp6f|O{a'fFS-U :<_w]CߗhTjk^SM{iMaQw(bKa.-L (W ύ>}:7ݤscL,Ay5ee״Toq"- H !A|ƃk>yKbrLeypڊ *A0ecXԸj|ehK ݂n 7{mkĵ{N`Bܶ _M?MLh+hoTY\v8l@2VxZN()ȞjKQݥ$уEz:?a"x^'e<4]zP<[mwb9ʖv4޺n!jWd~49ӌg^90wsl)wd .,0;9˰R*[LL vj4&6XpLӧ(sLlAtT,NdShZ/ѵBdW=;J6B+&tw&;iۋoS/+`fI~Chz2DPE6BH `gAt5:Қ>.0L7:k a3XZE'-yaHFb7SZ~4U!Q2ԀMXoUG1}qwK ?EFu_J'+M)DՙB|̻Fۣ9z4v y?a.L_|^6Ezb+7AٚpD0V#:n t*7=GUwN^TLVh]J '΃n6Dc^L x"d2aiC2d cmin%6uRY|r^9*S}@Sx#gK.* 3|H@xSk('<]JA""|h7E8<؟%~&= 1C)8Ө9uLݑb74x߲j *To,W=Ɍ fZba=Ep瓗_r"֊ |oMOh}0?r^6M^I*+鴰n\n&E<% Wnm[ogż܎vv"'7'&*IC65cЃx*m'hqDO0!-b 8ńPZzȎPZGBH炁  py?#rz2^TW_m{t(ī6t#Ug'RQdwM+=#"b\=4)ذDx(GJd_}IH S:jJ-1ȠL Zє,l'Ol;\S8$2XtIo࿯۔2(-܃?4A+3_OڏhR.:eG_Gv 46H <\Pj H+OäX`gS Ԭr€xΒX (栀O%BH+>vJjgaLRj'|VBi˿g<@~1 v0yiI*\uD!N0NrZ*2'˻ruʾxtw)(Թ;6UԣkҹƗArwTUj_ؤz|Ls,%b]@YJTC)PJPX[ABa2u}NoNm\*5"}'~\"Ѯ3-.Ɏ|hkz *Gy5|+LheIDj[Al~z-Fc}:!{,G( n5Y L('@[\ՑAx>X2~:"r7y7 vagZJLO ]`a |1qL'!P;uCu@ "sw@n~/ @Nou-ݴ+ 2fQ&e8S# {oAx}ENzz(|GTdhVy,6bS/ڡhGz)KR߇PS`TF]/QnW.'Y%{o0AxE3Sе@ }?o>#j¦K .=laQtboK*6;`o2hp1 -HՒ68?n) #/+ T_:$NqcZl``IAbs: fux# +!`%pou3ԋ2k5oW.xΥV!ǕDt|V+ AIM)=Me0T3>9Oǃ_/NܭGU}JfB:D7ũ~бQW;Æ8:K Kk ba=5#O|wx\`sO'ڗ(y7]Hm w&݋Rd)˲v#Tx%[*(2H`ՍX+XœD-H5CɊs`jj@Q@勾Gqb&%Ϲ?U vjfS{RN0)OzG6ʣ&s|rU5 0X}+Kg2ћ) %r!EA?*m  [qof污++GԾJ.- c%xNG.saqWiI4#O㭀]<*wAl<$t)v2_LP C^lYr&ҩ̪Q$9E1v|))aLizSf?"ecQOؗ?gBGOmU><ˆ gh<5_ IN{JК{aEH9EVs_:aDo<鳨V5DmMۉE-mȘ?@]ø7n Zޒ<)Hec)aʐvezލ閶E'cW PܣYVg"96D2\ZnG-Mӓ Q{<5J3T5qy QO=nSN@ce2JRƺۛBlbk՗]@:9-"onth\9W1JޕJbGrOȪz?m_ 9]W+X̃1CwXu ĚC6Ѽ^\DgJ/b*.Q;b`I 곸6WlZFެ(hIa@nB!)&oe.fTmcW(E,̡iCdZf>6 LeZxd]pFP ^7n. H'!5}-`Q &xTygdY+8?sɳլx, m)y%ΟnܳxSNgҜ.̝WA4!`a`Y?-|XKut.|?B0|2\A\pX{&M֫8^A! $ a /NyFaG|$yZӛ=&GSeJ+mDE)CPT68w' O[:#wwI/Q(_'|DdRÖMݙJ׈)2OF+#z7VUIsK8!OgHU R#mxlo{ 2j7f!4(ǯy 9>AhrajI䪭 Ki0`%I=k$;vkmSRAG?]K}z=pY XKqƜK"[&iLQm );+jMڲRKPgi֘+fGQ5k(ka j6KZp? 'lˣ銣`iS3ގGᨲj .~72PGpJh#m k׹`gzAzJ4iSJ]va1քɺסrgp H}f4":ؗ$~9\Oo/\L-c no976A%DDǜ@BTb}r,ZvjzLݗ2[bGlԞHRo[`⊦ݤPM/,x-o|-X ջNռ [{z̫7fؘZ&i#.EZ3wRkXD!7Ww-hXc:eVZc @6zFb}ʛQާ4YJe;b9+<>[&/$oj"Xx~uW%܍|#I0⯅s|ͻwdOb/3BB$8 c٘j=F+|ɱpR\e܀qwRѭ2]3/| $H/rfζ_=BK{"Z\%{M]O= "ļ}ڏ61\.O!M E#>׶ gluZ2s&Aj]7 K>$Ӕ'7=Ajk皗&k_aI͝cR%%Hh>[s[xO_آ>Yw@O r5b6@u(/iFn&ΥcNAmhܔ@WY0W8VwwM@h%loɿjh=Dvd~EGCRcq\M1Ȑ3f{~I2y{(M1%/"'ǒCր.+][28>Z_z6ʌBY6dC|V []0pOgN}yjV(*AlrZOĚ'1`'fD3Fxbp!:phy4[6)fbM4l{tfʧP' +뿘Gh6e7{`g$~.!3%^{7P*x/r"z Жh@HxoSw5 +oPwG]_ɶMM>C}aj|epu_5y;K^!~_/mV5 Ҕo kJl_T; E.*M'HZT Jr6b津#eQkS%o+YHvL^B[nJX&, ~cۚMB>-+j}Ta67owDnUgYUqfa5>׏zJF;'5&z#7uj_tۙ,Dh#tAS1/.ef+aAeWO@t-i}*\\F 7)ʢj@/[F`/N| ln~SF߫ v|O <*k_`-D&%# 7͋ȱ0:P9z^zp8#c^J. j٤Re),cm/߁ t|zի>0*%uۊc LxNwͺm5ԨN wu{}[ |GlG!Z_{O.هk*aY*h,B+ҕC^\L_1sntqO9c7&gG VWB7J};!t aJ5 zd᧫ rY'[W~8*K_|)l&NED`StPN׀="qN} 9k%ϻ_̀s':dq 'ٴU>伓<~f5ʹnh`'8$cvr(wkKl,Q( _NNG:;3O@_uˆB?qdZ k0K/+S2(d] @jAs3%Ȣ;B46ݘ":4mx('1FW `tJ3*)n,*/ Y<rW @ĉͰu(Ws.Al4ʈ6I`Sʄ]q^Mt/ĭF 8sA[#jйV}Ȓu|{m%] WXg4j@^pa4#Ȟln(=q+ovwwon%]QXh) _\sĊ11tvDq޳Ywb+Gj7!cao:,lR#*m c9 duv\~"Crz &MiBX0uq9d`~R8U 'z ?GKL 6G&$&lz+A Fw\?J8=[WE_`b3.bpLS/g 6DŽ?ATRw; c+i)/fXepDN:OI. kI;9Rz,G{9!t|_uENDpJM:̃kͼ X\ߜKV6rHŠE7.5)T,[-'V`kb͹I+8O;rwl{F\u','Ӓ|zz8[ 1͟raNYj`${gK\;qQE-8~?#q'ԊTu~ UCzpyUh. cn2G9[̩?t\bm>^O|xWul vIB$ $ xbPv -n!l`dsTV00@f8F\+K "Coa!ВaޯgZ$\_=K 8t"Akb9\-jy#Bā "^mu(*4@V×C` e %؈$K][9Ej(CԚuZOylle xRT^|ɝP;-Y/3%&#Ӽ<&\U J;u)r"]7{-fLhQUl;ڪz霹kUu/4 V*9-.ln̈+8]hEWw~P˩3@ms EDJbQ.sɤL,p\ jiVpJwdeęHމI\l%J-٦ #P% f9g;|xu߿>Gi. 9'Lr%Ȫ!*?wE 9-W$CF_]C69(Q3AgTp'ȁ>ٗ7+DhGbՁ  d '\=`QgZTH7a Vm" Fjy3I+VXLa c Q^h#nM39I2r,!`bB^TfC N;:|}`lۮN(j骐v熪⏕c;[aq9$8|}!6 e܂G`F+.k2==Ϝ*!|@ZMD4.t_$ k';KVP:yL)NX"s}i(j=(brƄˀun5iM<4k>D 2UL3Kfd A] jj%r!MfsP7'bR2f{^&bǃ[xΗRҗTB {ePCӡ71':U)٬6y{sWYr+rQsNNO t.~i F5j \MBwa3[8jPMcJBXZ!:X p3qk Ctal?^+z(*L9He!_4a+ff@qe?X HKkƶx΢uj;hGsH}x5iASŇ Szn@xrӝmS1g/:_LjN5\¬QI}ƛ&lo+ 3qWgFze啇]@>lZMo\,LL]SɚP+plI,F Fhs="EDp*چ 5e @c1sPIw5,l QV+X t̛Gp`#8C]mNm4DxTD" rFDJ6JʓeLpv T&Έ1eҷ'<Ƭc{MJPCszk.Q(cH^Y&K|q6/vL/NJ3,[_Wk,I#/&c$7^ED &_ v!/gxwsp;ƌ`}@ˑUlH]B,ñN3ѵ{[͖A\,:'L P[9N:-`׀;#u|]iqmQwjETAw~{GrӴMEl9sQᥘ5 4nK2/geCk딳ymrFQTHنRz.80**3v/XR}d\"^>(3)u5 kV!i8:$jx7ar^Ȍ=L@>s)3Eq?XkߵYeG^w~>p?bR Y:D'9HMaBBu HJv] #,Gq9ǸNsh'a6,Zz }ւEfSsu<f\yq e-@z*\zLE+Js(,t9,aB@E,L@1gO+d*ncr*gX Sէ3!# fcщFiײQ2eKiR|?p$k *%z5esC2ܦargZ͜齦 uɓf# { -E vذQSeļ[Lg+s[ULбcNo1 DX7!$lp ZGBܬ?3sĕ;Rn8A-+6qBAn,fi5 ǵA/O!"  ĺC)]+dAό1 1B8Echm8 -s &pA!~Ӫ'E_Wʋ`0YK,+F*6L7i ȶ&k7G~*˱i{mƢߞu ôD7Eq.,gꭴYgmz۩(]u2w"5 ~ÛIߧ?c4c!<QqLԪY^z] 4!U~ӹ>azU12ftcY>;N+W1nyuJZ/6l|V5¼Ҝ^7T3+@'x``]hjO{֒th E;)9)l^7v}6︗S2Rl"q)ڄZz*Qٿx*qu[9=bɞA#3V=󖫱!M%pHujXCrl3^WP WS R9ӅBtT-W;[ρd,R {eKuu+\˺}ͱM[zYe .Mp2)@Ĭ/VګK 41kprwUkݤFy o_5l)b4[j1+{F-,=΄x+7煵9iXߙ]z}Ic-ɴ=b":As/duv*a6(O;4R6z,V-RYXQTTfң O֑Nuh$N﷭^=t Z|zE>,uqxiGGXn%X:BVyU$8K@Y!،h0 }~&q)U|;;~\U2sIɽ3N QȲ,6˖~<1`d;' ]wZ\tTL a 5}qHYpI MNkk̪f3Xe6WOJjUbIfŪt5ewwQ>*^ e7)wƶYZhwQƞA299Y1osQ R* CźJw-XĭsG'X ݡaz\ 136&Hd#Rq`HHMӊB U ydr=6<持ռv*Ѱsg:q 7ls{N)ˤN[6wͅsus?| ImŽ||*6dؚ0"K~_b)bH[XT 1&_#Ѭ/j YZsE1o28|@1ak$:G& {҄h e/?%vʴ+lj^CKn<-.49DPʔem2W^5pʪY `.u|n;ӞSos~[L#C'bAً E#EidU+ڡq. t`x J|Stf(G%5*E*U5[y%1gXhV)1tA`-[rՖJ$ͨ޾"Y z^*\ek݌\ f6y`.*Ӝ;>}FښLHN(;s^ԀcD~vrz?0iZ{SEX5vMmYDfHER/roQo/<jIp̀0B*.wC`?u( VqEX)[ǒ٥ J J6&a` D i>u)<')DP93iX 3]ΚkHZi-%ȁIve @ :̎Xd{C~!W8^ӻ(xϽ1 U<+>K,VS7bC_XdtYb17 02:#ػFuth3Hcwt2[ 8>ɁlyYTSZУ&2 HB ]/Q Ro[3r/NS+ vje/T -E空Ƃa30L,rX:ϏUoF p_>K)jA%d0xGY0qRŠc*R( / xf 9`DL IL9a]\Y( %kYcv+ZF}zzz fNe`L.IL 6Xk-'/\PKNn3 d.ڳB2~Ƭ1ۯ籫Z[`PJe7M-j&]@?V,I ܻ!bT0zf!C) 2\}QF69ln7㸫{<66㠻cXjU31dtxDc'PepkQ1@ { B4*XN VŸR?amxhuˁ;Bjމs:o9\:O"J0A'VϷRBZyNrNty{Q8EP=ΰ50)cPA4)Ol(2@8/{uD>K5ӌּT?UZԇoYF|byخ34sBE@aG9<3P[fxv.45o6;* NI: B< ADqgve=R߬Z@WZB.'>dU> FjD1 ˲b[ @wUZ`5`B]Wkph81@ sjD3#qh ֋?DٗB8>؁CX'SnлnVDAXF߶3:_gG#m}\ߚ6}CR޸Z[*%e isݻ 5L~b#N(GWFw"ʻS$=ʞ.4Tkko *Y3f®)ҭf1?)|q0-:R ұX>ip(b߲RXü+<= XLkd0rMưC?8\ ^ 116*&F8DL\1qJ*X$ia+n2K d/='kWz}Pggx! '{h(]\.vEJ {W2`@9{ oڙzur YzUw^39ܻ \T C4leOv5ɯ!]W sg-\X[SaSjDɑ@-Pl֘lOG!@ w0Bs&B=}tcFniM mOosƔVMjK)8~Hjurtx<;=|7EٍM4^{.+(;H_$]4E1+?Cu \/n뽬?! |Yh^q2H4O/߄ڒJ>"6^t(-^lQK ݝYDۧŽQp~0RZQeANdxH 6t=['i;)i?WmQBo Z 9Qo$w p19[TΫKʭ NVk!BrG,0qZ~nHO(\1{л y틀%uF FJПAntiG[Yxʬx6"mvA*8-C7>8`)5Sʐ<ͽ}ouEI\v3O辖hyڭ6Pz Û7us;ױYgh*J7%r|MEs'OvEodH[ar]ˮMrD1X9Rf W#t3E# !4NCYOp8Gi?66ӰlCD֣dh}eo. ᨫR]M..&Sh eoA&NA==>K]"%M'1yq]k="z(-<eY>SV)\LbP`"׏' V H9=o>ŭ0dy:X>Q)_p[kE,5mj:Ӵu1-q◪V0g|O W ӕRXBmfo4ӝQqD55:abjX+1E+!K֍JҠKJ8#hK?FqT0+䘺Q1o¤ V֮1u;=}Iw߾h6ܨȮ|,eZ5_12(PRЭ.2n!y, wZ.LTŇ)n@bGQjH6Z`Ψe#!;ȳ=deU5hzmS,ipV &Joh4<`{w&E#!b RN0 =; v =,~TpѺjSj/NͽYff}""+NΟd]~:e::c<+vj@j὇Dه9Zjg*м5ca /!VoMH;U9&_E!*Y)/Ud!૧TR:8Oѩ{)F㜥mG>i-Yʁ_IW^Dxqu:ωC5.k̥}\@3oaBݣ#'jGΗ7+Jυ_Y8n-B>ƞq^Mq$ .e v>: 6Mzđ>1DR{~23/PHbxC9-0y](E La­hŽSK1òYg(B"9^/#IVrrc1tJ"| RUk>f |q$-PcIq,AZ P@S+ON" [ (VyMSuxӒp$da(:ܕe(]ˮ@ }jcYI%) w QlhUͥ&b;Ww(Ȧ,A>C, 0["ŀMP&5 :DMׯIep/B )3اqeʦ@6+LCgN:]$VaG=x_Y,+ELJ."t:a'2ڍ"'z,CUt.ǤsƢ vmsHr5+@B8|f}G#O)qpڻ ɴEŢ|P<+h-(an\[L6IbzԼ-, Y[L*0gjU'cO2n`X_TT8y@< oͬDR FF)F&'Ȕ#c.u ﰹȉ:e5t:akJ=!&RhгG{U:Ct}62i?46^ y8O@̹\)/bk͍ [ #~QWfS-9I8l[JHcG!Do4Xb [uHu 1x~%쾒 v3Fov#ǕrFz\El*ʬ$_O )و9J>AU6˒.#߳y,ơ:峊zE=$S9_Ӝa` Y}7_CobF#zYh#0j6Y!rK_+fKl?r|˩T۾4o_!h7D%SQG}Y.tX/oL8cG;#HVz7=H|ձ3]<CfD$2^oޤ?#/m$Uɻ%>R*9J:-nWsz#C. Z(RųKV.I_tMVlŸ.Xd-0 -Ci.\uSzչ<,;O`b#7~ 6S$ :2Z#(L" *ZOm~AU!e[ض*cEcUzުn&퍋\0rK؟T֌6ynuA.ָ%&:C~GrB~tgIr:I˫#bHZoDqqHw/}z?1=V%Y|}ɠ)}~I$ (9tP0X6 ?s!%gO)JUA3-Pf& M(1yb6^~vɕ@#dᵍ!dcK R{u)k|gq5zq&i "F@yÝ ,OΝ7E5yIM@;]ǪV^ʆJ= ."@ʭT~N'PjƑBk/sKA<9ӉUr)d68 Y!S287,sl~-VJ7j<4CJT)ϗFcȽuDZ1m4E* w+ a=Mvj5 ?aQ lMׯCZ.{1b?2?cp \ P| η!|yY77LGb:؞%6_%ϸKx,(${-U%B7evWX[ҹZpD˚6v6 qnZfx(!b:[{DŽ1kΥ$*hT=D`.*b̀kذVxYg˕3)""mBY;>c:Tjnxtuz`O?Z}3bt ȿg`T{Ш1r n`RugStz2B3p%\f#]&ֵ7.G#;w)THq^ MF7z\OJX1H_۫c@bKw>^y#;ou鹤6ŅKA6Ygc(qS`ioN'=y*[LӲuw$Wqz>:r,R k\Cbdتb@T~CHÍ:1uRsHk11FNN(0IZSnNgYf+/M:PޮUVjۼEJNMqt"k+ZHvߦ!.4ӕL1%O s5&B@rGX s["Q@BF$$L9I~X*H* Vv4cJZ&S\T7GB8tOu#ml0T[ws9TZuോ9X̸Z**.}zo͎}+팂I'ۗRη7 >}] N1k{r+GN(Mێ8Tզ=11c3mjƶq^1|ʾzE@$A6<Ċe3dL/՞-Evٵ4OƦ~Y Ud;3it$?ѻg^jYfRܒh_UwkuAx37(Xu%_HbZ↓v$r7A6RIF9eQyEE_+|zA֥݀"&TtݷV8= f j835&S)5+JcJCJHbvf`4ZkݒV$5ӤP*!`];;&6%|^+%fLl׎Kb޼~ i{փm"F Eڝ큌' <6"Uʌ@a]E3 (< P7~!HӮ]4N#JtʾBfU]̍-ĐlۢU{Kvi&v:戋 nasy>M7_>ˌEv:;vOMnUsjߙ^یAO14[aÅ(tJe6fuiU/[;qͺsv91@}W{8iAk;]'7ж5tǀ (~ +Gi?~X<Qᎍ$:к5 ډ 9zAk/1ݣL`1;:oo:2a=Φ4PM7+WJ|Mjjv 18hTn'Jh/b.REM)*0V6r,|ZRe,BOj?*QWc^ S:XjtXxd[}ծ ymF $S5q*iYS/_KۀiPOd(MOq-0[ݑm \-eS;?g{e-3|*ژџD4lpBwĆLlK[=v̪1qf. X*N :â'4}imzN o̖(mِ9~ ӜCP 0uNP, &.e¤vM(k˩waV!;y.9Cb;`:3-]DM %LΕ'y+;x!mvJ(_(|H`Y81@QyOYqiN˫Eh?IQ1*Fd"eS`k=׬'NRBW6m\Q "su?Czl‡s.#sstq{&L x t|WU $[1J/|p vߒ)ַ>%xEPަĬyB%f4zA+>1Hbۄsu':ewpE.5ᙐ]1S mE &P3vy^ܵe4A^6!%KuI`x;Y<0h&rQ"͆?J6ƒ!ȼ[Ê4;+*jѽT5kf@ TFAHK4V֤z?{̵lxfpy:Cr 堿3@ЫWC6JS z׏1!,=|X fљ,?N֕Ni4KjY2>ܿ ܙؾV]bMmcBG1$JO 1W(uMl#AoJ#>*!,JGTآ&v~!N3_)w">i OlLZF't\ꈹI#%C"L9G]H44jG2?J-l&0>0a4e-R99rQ]6&$u?^NR[:u+҈ś HpƘPr񻢭%2b dl ޅOgGGR4ԆH2DѽFSrFQY`A^~3IĜ瘂n qt RO;1iΥ|I$i[냪qځpwC|O)+q́B(~obl5&[p.|`c/,a>0k3Nn g[`]оXY@w^V F ʗ>Ll8X[Vطb Nek`o؄!VO26a~ކ"A195\#T?zcTYރچ0.kJW2 KDVQe,bV8칻}XU}z0[~=ޭ.ᰕlC㄃185=!̅q:Mhڲh:չ,~kھKotLR9 a'í`&Α4.CJi@m.8cb0jomLL*hVmChRDZyPj^VgͣXzclVA|Vth 5%~juj>FqLu5U_=m%*Q\p'sMpBeH-qң%+o M*U˼ it4/P^Ӻ5K !|ӆe+s [;̱ Dwu* ]FuM$ @DUrѼ"{öux㳔NJ1_b)sQvIJKxEO=І) [y{Z|YUfyKsu+ЍW~cN/ \rW;It0v|TpBCKH! WQMm3k`bsiP_8m*-/pEb`[\/ M1 _zk˖@EJYd"!hyeŁؼFOY< G%OgHUF;d`U-.`c~N촓C4Ԁ )/SDmG|O7Zd7_'L7*6^AN8w&n.(HpHд%~m3 EMx W.j+Oo4u鷺Pj1"?~k .,72{*DT)2tf)3.ͪITJp5D$(jEogP/˻4`/8zqQO!ɖ5w 0?W𓙚IM/h񐼒<ŪE'ݘ2 =s(XwjN8)`LƠ(FuX(v HZNm/#7 .k]s&Ln{úb_:_y_]0CRoyǣv>p{kop[>;"_1Z\P@X2%|DTp2uwR3su@AW6"Hf5?caE .87a xO&*/:.L!qIeү< iưsI!?bi{63Hp,rN v}TwKJ*hh31s~󡲨Xgbp/۸=@,Zެb=[{0~4?4Aˡo;Q13IOł5u1<փ9yHbwiOfGl{e8P:}U LT4%KPYO@9H;'Ի)p>{Twtپxy!ola%Enrql^ J.e$NL6ֻ_k`hmbl<@U.E8`8J͞ k"3Q"t(so>eX([}Z3['!S\uq0?be,=0:4ftAe_C&?U}YVSu%<D/SA)Yv],w{?EŁOj(J[̫p1 -JCU o'Რgәg}Í@\rCAJ<(ju!z qS~S"&ѱϯVs-"yܙ讦нI> g${?_|gmyu`"--RY=OhDj)XNF/(hcuOzJ!9= 108.hQ^hu28s=lhSJ3?SV㛊[t!d S( ;8exolAQ ӹ|䩔Y~XƓQ ๺JgT~X$f:*rt sZab*~{Fk+}7?M$Ohx`lʟLi71AUY=$&in/p19+ {e'bl^|Llol';CC|\8P ܿVxyc?"xYZ??1rY 潒WHRz*ٞ6_'/,5ܮBocm! !)7Of'ع{a?Y43\eO]O& [≋p)+T`eNli.y?(EJaLwʞv](b~!ٸ5@^/wJ$:1uQBR_L\3,vCR 8J';/%K"A^ǿyZ1@ZCXҺFo@Ftʙ&P粄#1솹rDFHQ^ԚEen)K9#ԋy Rd _4ٔYR}A{څg-bWxI9{X0*z3 d.*f8#>>jLЌQNei.I!`wlo<UVG XvnGNj[Ҩ_-rӏ#e&lrBi+Nl!Vɢ{5ܐr ׀0b[UrI8aL^@GkjqM?xg\+!韫X0Շ/*mI! ]E B˩YVYSH } r&$Ҋ}%)^.wMiiF<^V6w_DRri _QRDoQ!݇eJB8iԈ,voiGm =zc av4>աT(,=EtT‚VOqy\ۋT&%x}ue aV4-qW ==R:5 e2gf^=BYPZD2#_=Sh=6 =Hk#bPܫIK[;{)uN`v '-vݲ@:W7{IW %@KiȠB`:~@e߄=N_$k=* 9e!c`4njd|K`%x'8=48Jv~h" &鉔>ӴFb;iP|J᪑?kijE3h&Fe:TLa.q* VI}6 ۇN̉|^+])*BhR;+pHUmMANH愸fD* R2K_88p0OvOexNޠr9gа rISM8@ڄmXP\֔ICZ#G)K(T?ojI F$4Y?wz["q@~*x|cL>6!tb6jJ,k181jx20~NhWHY4R(?3~BҠSBڎF]SZG\_m&گCle/ .fʱ@`vi2R2?<%WM`@ r8d=>`wNxo J5"@Oaϟr&6.z.*ٞ*ØF NHl|ٗUj\M‚ry=Xb7*W)]Z+j\ &ůS(؎Z"5{v*j2 )rø{kV2M'Րbrwmb;'O8)E>084vKCP|}_i!CU7bDd5#4iSvG ^HHU1P؃N4!Y@lp "Hs?#:O3oVfbTb<BC§_UkizkI &G| 4-1~_G%}6C Ltuۣe-sqկl_ :.ӊ 1uyˀj/VN d1#G lI <6qBU(B)B[KECdoƔ)QBe"uJ9l^ GT$4C7l⑪d+;z?Wu`<]Ji3*AOUFQ!DݑɢfD6!A~f vri #dt%8_LSC-wJ X++TO!/|'nj/rX>/LtJLd^ғ(_[J(~PF@6S-jo2:{n~GVߨkM zY-c.="CC``Yp0[qgqv7?{MܐQc;-'3Đty9~}ϫB?(ZiQ[]Lj T ЏSN,@+lũF %E!OZ;RDF ENδCz{袗5rN++UW:l3A6q^QC28#DD4M5eBV&by A [_ p.5829n@kF4څnXN W"4VB@ɋ2[~~IHX 1=< o|sj* ѷW EYϽE ,6D2wمNY f-)mhk؈ט%0OםQ?'9Rhq^6#@sXRX߈mP}²iteAudA OZܺ :1<[v$1I1B2<~[7Jg<:5^ ;D<ΏIMhm<5{4o)XZAehm#Kީ@'fu9NŮIFOk}[GA½-|/ۈdiHm| $s s,4Rxt^^O2 |@M; 9 H+%] M*|zp?oe~W"+x*mO}%lh%f+/6%ulIHjSRZn= >6iQӤ]R(`x ҽD}b{D% nJe@eis!FoZStozotXh؛+m&x249,7FQ K~7O yuc#fC&#MIm Ok.,u؃ ܩj -s(K(ϧ+|u+K&k=1!60EoƸz[GtlȦˌUyp<^FOU?/j/\{1>w -\}}Ȗ(QLj'( h:Mw]&(G©DƈVTuNJ99+3Զ;MsffDZhY KCcIhϼcKD|S)dVE 0\w??S( ũh^(/څ!5zܝspq 3]mwB"nF!o*:_RDŲX1rEZ0܀qySVM2"L8PDq!zbK_|lٖ9WT{ n>"x"6 9NQ23pTme3[SsRbyJ>Cv#ow&Kufd,nE^ہ-/(o6ԦԺEe,Ľ qHC1Z&cLWUT7ж=xԗ5("BߌK>~ #40ow^PE˖uMJ1 SL>:\Gi]yj77^{c'=& LѬ'6#9л`Ts}[~vvj{qw'm-حf[g`gjZ|vW]鈅W{Wl@ݡd1>:3z#X +MS4,N ~=Q@!<|sϪZ=Jy"]u4Lȅ ;}ˢ>3|#:sJ5Z q1e:$6h20D[([mP.OعD ^O?WҩWkА_o֓jOEgXe1*LP D|ViQ+[>ckA0 )>I\GG h,L=X84#~aIz$MNPg.-"ݺ^M-_>%JO C ' _Ji 1, UOpc<ҽ[{L8V9_2UC=!yRTGui쐒%Ila}u4d1&-2+¸ 3ќfEV;ߕޤ@>&N?s־h+nZKVds ^åP*m vI=sfnJi)!4^uA"rq;0$970B*%[5[4a `798* {R&&#P{Yq5] @-aSB$;͕7\,RC&4G*jЕ*utMji*)[1dcGjOpN`ɕʡqQCԓ[vc$0?33Om!k|ڕҳFH6&Ģ}I  S)(PKaR1oJaaH5h-чH2ro}}c>_;jmqSY₇9Yy:tĹ@ϯ&$"Cцl܃*L^LnfRHS#EG}f9υ3M샨'M9g>ɿGbQm^r7gԵ]xhJ%Yˑr9+M=M:xgt#A,H;bþ!{,T鴬7l/g_>7[Gh033OeXbb^3> u4Nv}:tԲySk? X.WMɞh:2R2бҿ9 ^(M@k&_I_*D)4 >{;`ɥt_u5XYN*Nop׀տ_fxn}*@xf!GM |"-Ӫ0aXvâk]G3[ۄW+Xa1魡$H$;E- ˞P˼ ^<H l~MO|5^ J{ʫVhgU\B9-~^QuDۨ8P&9ig8Uܢ*5"og+;,D IIT/?ޑK^$䤾;ꖮ/0+(U@ |kEݒsTId'S}N)=Sߔ0Ħc "Gf\ۘR ;, Kcұ{uÅT"VjHY%Q\_.8A/+-nlWyxD"t8MOK rsiYю;|pk< wNIh# bk!x6 ڀ=yS/4$9_ߟ-SQѓ5=-bH&}qBFGW$?1.!@2@"\x-?I(yruH7J6:@]9T)O=,]r7KSad1UKә?1P)iv_8L$p 2c> njGrr;spTș?voƭn eo$[l/x]^]}7,}wFS!j^"3ܽpW7`2Z7rH=FQo:ͥ(+_o7v"qq_S"@ӧz\) VFH1rFl_5ϗIWK8Z #nZWF%F ,EectPEdiM){yeyiԣPgah"C#(=|O*#Ju_)dJ*]D$awNC;lJ BHtUD4J(›YVvj_ᙸ҃c]%X/8Lܩ4a au[zuViqO͂a;`WNtҫki#ڍ;ʹ+eh7% ̔oynh=BkOӮV) _vV|͒B)[Nl&xiKWUXpLAa̵XzG' :2m5 "`A^|B<IHy2 ņF1QP yc}mNƈ۷-J>]{^^lC:Yn;@x$bx}W DIiLYhD lcp 1aʏz|Դ rզ 1+mF>3&\׎Bk~=p}HjL͟\[xo:f 3D<,s2`^ɼ Ɲ) >!Mn ٓ$Jd)TWAwU'fʗI )'E p.!b=bͨsvŊur~"DSkV虦Ot5YWr>:*ןF Hآ1!_tF}"n_&b{Td˩,)h: 2–1kU_8*%*u\nL̈-!-05k7,w)> fh[R—  fNೢ8]pwCE8o]-Cʖ|Ɍ[K@X3h3=_"Ĕ:or('J<2$[w[nQ =P(g@ a˿ŪZyq|ΒʙH #a dA(ݐᙆyx@qBy v.?2w̖!MSV [wd&kL76Vb=S.gTWuFBU@fᛁ˷/hv>y᛭U ĭspJκ ~Ȋ-A-k,sZZ-oF2OUbV#Du6Z7yS}CG^DW0R!eq?.5vlG02{R[, 1>L=5v,|k@p%7ų$6wju]@1}MJ.)"t0(63 CS cFTK;4UBU)v%va+d3jSJwZ4zcsyG,?I]O{|i罅 ;lag= Tdԃ zXWo}\xsTKPJjNjh:yV1Zg v_>*kPbj-;k<+uc?(r@57P)y햪]`R?^F>V\ܬ]ᱧs7$i؅-#/1.дj[vuo?(|x#fOU/EnNC4(i<%rw^fw *Mv1l fHhz6o# ;t &{4]1]ݹSIm>7[2u,OgS3AS<Π7&Xr3!継C  M鸞"/;ҥY&sޭvІ b{%- ф=F%{>B!uVE9.o5ߋDuƆLq zރvu2;z\ų{=>ݦu(9 vZNrX5oQq'A'ZmfWHenA, ^tl +E=:p_U F|,WcM;#p>r)f q1~h@{h}ʰ)ZU32K#%]؂hJ3y,gOX{Gs'alU~kMio#Xǝ3OP EFhȉ#g0ԧZ`(!o5%lӽ!Oe;6#3}7Fn;ύIaYuŨ.>wkS]ϱNVy` )45LC ehS`%e҆]KBPg†QTqR i@(z̒xV`lJ-سe ~ER٢ 32G%ȇc8=D]AHqTշtR+>`h(v$U`PɌ~a̅MpYCņCq VЈ"äq|ĴF>|&V>&[RΊ7“I=d#_:FD! y\8*&=0Uy'=v6 k>l{Fsz+1Tqh%si[@Ң߅%YۅD8uJy'ՋN'_]x$zR4lP$WI/gpO\uaSN< vUw @2 k=-J[QrgX}ʝ yP-鸺bP@A;znP hܦi$PC`FZ;Aavr8 h(riDzC,_wڑ,.BW3c KHwWW%gސH G\. TNMcÕc}Z^[[ؓݜ9Rа%^@`ƗF@z}&4$ܓ^۰zF^J {7.LRG$V.R'FDnuKǐRm{\")Gy Pf= QZk@c9D' $ ̜O4*OvHifVDa{0V򓄴rp; XutPpi91acl+Cl}keR>Q/Ur4q }@vAuc鶂*}8*lP1TJ$2ܞ g;* "a ġ la#2[I~RґRN.־M%G"yfRɧ͂?!E]"rK!tZ?ח,=|FW2}*x3zNA&(rE-/-dK#$'7c#/ K){;+[Zj8,6W G) ,6O:+0NՉ&B$)'W"YGq+īr}:?0;sY-cccO!jfł歡 YZLT!C4 ɼ^wƫ|T,vIXPP B 3sL6rPM96>[ЎrLD$V5-I$@k_="*2k3zj|B]Rp II.nOZJTC9C~.YO^Y=`%L!X"x/̛ݸ5;"d{,ĺ/2*;ظSf>@3Jy={+^ 4I[gq^|$2- ,P ClnܡGV_2K{ܓbo_>I9B, zk䆥,1+Bnrܚ4 %0g\nO|Sa҂-v&~i桘eF{{ m=)?;a^\Z2d Ũ,PqNI>(Z=3eH@TVf*{3{?OLxa78ؽqʨpaaK-4al~XM.tdfJ-$ݰi>Ӓ{w2-=LZ蚱HyLKAsWnN .5MkYQ&/WYSO`U}f@ǚU2ǗdD$G|aF_}m>A;_$4+!笟:UÊ/昦nm6dZ*h}v'=; ==!Qdj[?'uAyM~YJ|]B);3%G-:7ģ`qv~6ƲVAȏǀ#mæ@r8})'_8b%&J^amSaC ~"\-sFpNإ{objt)V8,BD"l^8*^.IaONj9A~Ȟ)\s[7lӧu`..5+HSp# $k'SOvffFaj7˰lq 0rX"-yEBfM@uL7)qz6PjM1!q媠cBn3s$s?8E$41(5Om㠬>׾xF3hI8O-]ʫ~\I^ѹKv`1FFFo.X=lQ'0󥾔A=@ÙAOȰ}*VJ1,&/^rk$;3ˋUEMz?M)SiNz?t$h)V~G; sIeO^$k& 7 }j__{=̖?D=-J1?N^B. Fos}u^ߗ-އT1Ci#P-N3{[@wZggҲ~w"MqxR;h1xZ?ӱo׏ $$ٷIAxDduGAkx@l}Z3/?k8H[;%dwD-i6}?iWަ/oOO]a;V.j*ڻx# "' ({1`=iQ0i>+'R~8e*7(^ `_ZŞ!t2^MX}U>T>UHQ?ᙟţu4][(:5Oq-zY,έF*#Ot $`RDOGĞm@ ;À%f4`z>^q=;]#P^jʛEɾDy_r nCkhoB'|@dTlmǬ#f-H%a[/cY/P' x?1/BjkcTYà_`T@Ot益Rv|+DZC[N+{!1l7a<@`jKp@{kfSɠ~;JܢZvU^-<R]+31l+Y'w&?.߀*ӄvi\, l I7;L9  IT @e49 󗾶>MjP=o 87u 氧3L H`ەz{p)5HU`hh\ buB[+?$& cyj/C\[s0A,N(|d-miQFEO ڹ֤WTY*/:U}*7.vQ՚ }Ft֯3$cwϣՊ E3KXbM ΓT>qNf!FozMEyC_/ʬN Udt,rSd~>.]t j8LjdL^b7Ʋ^t9H/ NŠ;q`)i$aVClĂN+ _%Jk*4ZfEo c򉄌mu^b:ecϾ[eg`֩'p /e.Ht*5rܺ-=~y_Y:k734FZ?0 3: %{ZA\pU$T*8_x[!?@h̽**}p!P+&U<$ד&i~ab҇ÃZ&kj!a`u#<:#2/g՜Ova m8 ~-\X{:a: `Vጸpe /\?,/,AU]磙`zl;QwMɹyoQ)V)6PET*N>a9ܨk7:ynGwȽ(0W#,Vsk͸~tkbAUK[~z2v65A9%Zd!mo 8[ȼ*\>!Z_ܹ54m_]P8ħ1'ɰ"zZˢ޵jb+גy¹70(NPj'򓼊u&DSoeup}*7\r60آ>)z^CMEę=<!%{/aD5RZ' 0p+EeMûP1oS\LaFȟ GM* 5Ý[gm!mSF-j@<!̬ԉ1U<9ZPjc4I&$] ZtP<59Uz6X֧=}Ĝ74tc%'K; ߔFWsi|%3*"3 !ݷsL _{d46G^!T#l<ęǒ-uMCed!.RZ<2nXQ0pUNpv.Mw/{@EQtJMAK93Tرk\Jx>1tZ5`)#ȎMjpfKC_yq![FXr:`3gv$0|oae socvu=ͤ<6kHs] PCs ES>Fx뒍#c\]@VX؅NQ0E6o⟡"ۛ!cK ђݢy>.-Lh2m=^L?I휞W#7bE<\R*evjmSY1% iQ% NLE B Ƙܣ*Q9QK|!ARa}08$߈sapsv"9thzK!M/b5@|##0+i$`:21;icxhfJeES$8y+וEY(tM&zsє:|!{z|fIzWd^D_nSEkJh=4^>u~jx+M+~y"EWψY{@O ~ȍZM+"XB +qtj!>:& .L>K`FrtIuhqnZKQŌ[S\d/)]QKO @hlhl?&B*MX{7?{9,|Kb+ רnSB g"]=@va۲?)+x+B DGa}52cWK̘z/D^emaK^SQϜ}Rƒ u}[l0\]Mn# Nϟ J0h-i&i35DGB;sEMb1Ӱ'To H`rE!FMN(!ÃW  pށS`x(4BjTQtBh@ݍFØteNs+SN<} ^Mܙ&9w"9eDf4_:Cȥ[|][4'(t e1ĂuzNi@h9!.!:ǒػ柈 Ԫ ƴ7_L)#]p1^kXº,/,!};9^XgrR{#nϵA]h0  /ڂ%ؚIE700|NJ<>9z$%jWa#.QIxmK@DLOU|MhYnCsڠ ÐSٽ`LV9 \I0MD@؀֨ڵ. %DR ʍ1]j ܜO0NYJ6C2lΐ?)rۣ1C*!*RoY_[w-HXEm4F|` /lp͌Wk?EQ/Nඎg(n*ghP35ko,|7w*)eu*ƾWѸ,Q"Ik8?{JzQsFO%TaET\hGؙr7v1↥wğv<\^f Mߜ_FM6J>mYw#yJkZ5,X{@Kf;;e޶\1X5jA6YV)]e `HoH+Fmk4%&o!h, (= L.2h@bua$욦`Q5䆼Hzؠyh,?w="+ҾٙASu( w;HlOgZurZ..6aS\GYXY В.(aʿdj[d=^r[>1\9OznSS;Q^_.b;p:>efX7|=]nF(KÎ,JjXi]"QxeK8Ol][I-4쁰:C( åBM)r]=( i4Z(YʛOK9g=[%T")ѐK@A*]Gm5X$f(Iϵpۂ䈨S>yJ V*jEDFI7"]1JJ>(@X1Jp)%qh=<_pnZ;+F[f{Vm&b4;c:Rt O|j <oSC3]c7;s1Z)" $ͺGa E<Ѵ.D؁}'kc=/&~^Low(À0zPn v,xߍ (,OR7&'2/*7p&FClM݄G A7)5Y]CUk%)#<Ϳ60g%@mJ4#7SD~tz]IS5[K:xz7F%ZcץԤKauՠV=ADX@OOR@?o0~҆6x>b#Tvӑ&OT,TNN{2FY3^$>͇ *OHpm. YfZ v-4ǐ^wuXmP\nh_Z*eیlH', dᤵd\I}uCIn2zB8/q{?oN^0D+bm/"_ЋD2=Y y+u% ǵF4ͼ {g\O.~>'2+yYÏ -E5sC0{^zb?$gUfh'|6@'д5E3ٿSѲyqxulq}MyHm_/FGf }8C sSq}gRᐋ"4HO9<=WY+37 kE uϧrjvf2`k I$~JZC:!{ d~*RV/* v~Hڄ-%jVԢOa$<n}M1pT8\~"U*ò#~Ei;bqXpCi %JT{UM UӘG0'KX^@@q(>m;Ŋʫ`S Sz‚VxL;Ǥ(pe23WI{ N#sI:o1¬s# y F-|oE"XCw4B=߻l%w&EItpܧ1n/M. oV.?UyblDgpWBp1#1f`(Tle} Wth8ITTwxB)Wdha$g}^EOov+Ɂ4*G6䫉]Ќ'X[}Nm[PUp0=G;o+UIS&UEɘ\`%Q7EN~ * /~ոnޥ龭m^ᡷ0 O-\k(* 1Hx*W8tlYhy&lEt *rQXhC%lSe84۞*X%s{NAQ r4p8?L;()AG%GjCL~]oNt =jL 4%j{r mID#Ď0:']+cJn79(QU U*[OZz eM?ʋ'V!p\_5֌&V^"TTɿCg+fcMT5XQ3U<9kL`C.zD*/yI2QGrj Z#?.mQc 01 yOr&B? DcNT[r bg 02f~/$snF-cV^E^ 3i9 ު[Nb㟈l:uCMiysʬIP3=VI|C\Q'ÛE+:82jhxyU5kو+ 4EwEĶ3-e!r%MhNS^@;HЧYDY@?Z ?kS^vZcsnNcpF:_ zEҵ]CUƚ1-e;M|]B9OEKnK+fgϲk3h?B6xu9,'S`v c9lNf$P,P +\;I k! B*((IjnA@5kQN 6F VtBAB"_bF~˄L-㇞w+7DY䅈Yv 'Qܬrɾ&zh_!gs4:׼J^k?νr?&!G|'QJa{&oɺǟ@d$-;:{B"Nx骁XrpWv<38b1}oNR#zB]ƽHѤYRm ^UEĊdĖ$V@Y͂Ml^vtyvC^R ;^w ԻS\zo_`MyxC,T}̪ ݕ.؁8zIvoKCHBnLsW$+hUV:nV-'=/RHl'LzBBPʖxy| ?5CB.CU?gM;]np{viћg g,;vwBw)sedLܳ=sK@N,6~E1 5 V_;VI܊q''kXb)^㫞~/;h:t ~{}lm9/o;B@`(,!C-P,d.89ihf c5Ay.tM( W3`kjn,:&⏵a`+(gLf(sfڶ7Xe{Jg/#MfP=/0R v~ C u"a4 MDTiT|E0jj'@פtD+y8zk|]LR"тƎa%#9}RhAKɨO :9JbD`f%%>d+r 3*r7|UăIT9Vu`<9Ov(&qVlGs'ug+|r1͞wHX~j-kFB/yH6;gdϭSjħit4^ X+AsW(õ5 }M: WJ52SGhef3 "Hgf8(JvcDt8k=am!YKj jd75[eF3%tڎJ5U+7bFNӻ=bLP/w 'b {g[E'k$W`ahꥰ_+X?{AG^hL|R/M \~,2H͝dJ6v(}c27kzX3#r0r:M(tL.30;,7MsmP}QQe~ ^HG=Ql[ DRm+@pڸ(bDX|~UѢew9=Sۖ^igYn2 #&c  D9QL):pzxf]&#Az0A+SوQA`?b$diec R&{$W%Ih6@ #y+%f/ߌ\j[*6+pf*j{:IgL"F;'HoYW"?q*&4Q9]d\e`璀u`6jO@%uiQ,;( L:l [ZO7UV0Bz@#{jJ8L^Gޥ~$1Filͺ֨WܺPEXT>-, G4}WKC!XMDr+u'Ď*yXp:<7l2#CLGճυTkrIsEh(rc?LEU!μ햲95zE_feψ;P δ!".ě6e-`Oש&M* pE=0vׄEa^4]u\3ɑ*gɋ.2t`*,OcD jUIOJʗ!/6Cr}WoCD8nPF3 ,akQ'׃!'S*4ƒ\1c~1r-xֶE=*Ҷ A8GB^BV48N,(#8I) (#6h}S˫%F~hBN2G#qM}ԍ_ҟǀI.Th=E>)-\.H/j`:Љݷƨ⩟PcP{y[(+<)3 Ae驚+n(H_N*yR1ňLd%w{œo>'z8f}/AlPHEʈd|w-BUB(N}m5RO(<`Ï*:[C.0KA@?E' ™pl\18|wLT>4\g o_6B1-e}\ Xx+Ssߙ2 c>#:<„Pcb:bw )[_-Iֈ?)|޹p6y[4@}f̞VecȢtherP"yWp:~x9e)&LWJ 6@1Ev9%[=P|CW4x :VY`7dBC&NRøliQ̘w"DѺ f3 "h&kݵ ZwJ6/÷X`[޹ ,kv>[I]VR*M$-ÌcxN 8ˎ qΐe) wrzG/,0J@7Qn܂xߒuoآck6347rNA=!u'j^K }< p9=eB <@BKg lLZk%`=!bnqqH1-e΢49v7F3Wl0AxVzqF8Τ55j>htJ-v.A ʌqiGuR=C{E]8;uU"f~Q7wBȄ)3I2r>Mszba;THBdWfodOYgZ18#SKP4>mJY 3M oGl2_3鱗tOQS2B0IKl,8l9d GvhCfT $ly1*fNg*ZfOP dh',_¬ҵ<C}=Q|j0Z߸gϯ!zhQQ;p%٫C?qZǏ4܅_WIӦw 9\Sw ٮXH~3$HP6W4isD=,;<$6 >/!ݑn9] L_0N%f7, f'w $z 6wŒ?!l%I3K& 4|ߛ . jHōw5cm@cR HpBmgYFrE/=uf75Eϩ@ĝ}W՝?*߶1|;DOX\ o:;<⒉7Qz7KJv)J8<\"y}eBksRժտjsmc;aD>v %<㏗IR>a*f-A}{tD Qޢ~鴨Xف ϷMx_9ez$rꕜ8Ҥnݜ7^$ k%~`Tcnn2',u sm__ /TFDK1' hm"'6W @(5?]#T݈m`؜t/{8,B(n$}yQ,&j;P&(>1D1ÕG哣FYFY1[ 8v;EYPL`G ڼLAr0EI%㼬m6򚮳F$6+KY toS A h3"_u960%QKx+CjV\~hYQ/ @t-s>s,KPX9/}KDtG3Bk'aGZйQ|y|)X.4Q)0^-_<%BmڐļNleFŇf(?P6YB(EGu8` yb :BŢl,n0=Gm|(Ac42tP(T@ih\zmÂqKkV8v캰 L[]TҚWCO⾉j|^d ƍ\(Nۅ>qlos7'H<+2 =1B7V[OUG@EXX" ~oXx$2Bvy#OZ2scU@lNo<5JZ>ЪsC} !dTjuZIfboeByFUdAIs!!ngw͵c!~XJL"ȧؗFZϹǪ]OV/Ѡ3Ky  7eu/ǽ^ӪPqe#8SIG Qf]F7X%p ʺj+88SmVτ4)^ EZo.'tM`eRGzLQc:SOSm[33N?~/-7ʦG;I<(碨~!sh9G7,'$(4?[=,:BZS4GKSkRdfpip/*whxdl a9!L{i]^:w-B+XW8,>S9rsp JdO\oJ%trc:&U|,u#Ef/Qչ d"h 趢 YfSKZx/W!3ul,pQYѲ^>&گ+/Iuzc?ePLӁ[vwN̪ 23j24}Gn`$%mA\xuȲ_ gTIn?LV_z[1عo(Cƒ;xֻ@#}K:[k/¿e$o JS[Xe簒=0x3ppPP-ǡ51 7Nq_ll[waLΦ[ 9%H~+ aRIDT{z,N{(Z[y!E?ɅA6w|/lWø!ZC(t (cyTʊQ$/Ukz@ܪ دksZo&vsݟT:PJ+s6xxup1~9YuJL(EL;/q;|v/n\V~ E+^@[uʓ#摫OJrז\lmhϊ a^w ܻXdn5Vu^?|0l)5_JiZ3)yŴ;;\Va X:+'O>s ػ4S_UKN-Up"p" 59U&Ku oⓣ%x)*S}G܇MbORkjG.bjcr3$ 'g ă DHI1^L|LΩJ☏~TmU8f^tG T;=+£"py+JXs&_ qb|kAHB[H" UlXͅ-'pZsrդ TBZv)o}DR/?W8kԁVSA!U#LENm{#/KWK;5q2uBoP9 m@\/J.urgPk`Jq=c_@Xr֎goWONV9aXA^q1oW\)dm&]`{GTϭ<ۜ%iGz1ALnCЖOIP'z|6Tt1N^md5 gb_S'lhϙ4yo,nR~omTHC) z;Y嘺Kk c ~n.SO=nu/WKi.^+hN80fWe(ZaCiљ5ux酧dz־^U6'0˰} b6OFj@P܀=ZO9^_les!y`zQq-${ WZͨ+h-W"d=cd \=ah_HןD2?w8N(ΉE(d8P\[SKm,l%IbEMJ-EaE]/q3S%@^u==LC'SAH+ [3ִktGX(Pnos?FX'ȳڂnuf̶iv_ar-5M<2D fFQiD[uҐ|8JQ!eB"47Ɯ[V5p`B\D#],i FI_+] HQ[0źutxw4dkH14 ;߇RB?k1 ǃ@+2LS⒕%MfوTӗ zK£8&Z8/f 6SѮKN`],eO$cx>AQۢ:{x'Ol ($Xa04e 7~'~4JrbY%zGܩfӲsSw}){Ul! lUG(lG,B!1 ~")w4nsP!N=30_N =Uqۮ2QͿ9iY^$Ӌy2_%VQ-oR}#?;H>A~8хYHN5vϒH^ޟY 1R av¥O٨'m'Iw+" Z;tQ{B?㷌`WREmK&Bm5j;j+\(d,S)%`M*Ks0 BJmbc'̴+x2bllß8`FyCE\)1Mr&L >Ύ ߕd  iY"1z  y|Oy~[? Zȫ`'{h:X@:4Aa2mɷKu>u1E_zᥲzӨU[uFQZ𰢋naV !6_-g4T6 ]@%yƃ^K .ֱNnO@ (XL]ZΣ.IǼGٲJ~'N-jCBܻ&g$^,6U s^$K'm8$K$V,qfÛdRS9'uK\~|s8A:fW Fj".>]guJ"@RvKMY2g(A)M҂; 8J$TsbہRqG2 %@>hH 5,oD=BlipȈN` fbv"@Dl(7Hd'>_O2J#-]쳼Ї)LvRm<ȫ]ji ]+g)h% .V=zP s4bjhjFv-B5J1PptHoݶV,cvSatAp46.9]ISFX(a&i耉v01٭` w$Og TI~e_xd|ѿeݏlt6>YkǤ&'9GI-̄S DLb,A"c]cVmxDW#kPR*8׻FSMlO8EdM:/l ߪ EbŒ8( gDVkмÀ ہeq٣Q- \ܵ$vwHf~MZc#Ȥrɐ؉87|"K;"%#HɔjY5&3^/3>rCaB!NBg07H.F._ڹOi4L/Yq:vx_7^6lOi&HjH^bT]z"7GU3. 8*l"ӨnTw"wTܠ X9Nu7x e;F4oܰ0Y aYUhq HI pG%M*]߁CA<aBHG= ؟nDR˄򹧰5 Xd׭l n? ? qqN ~Br vy ;HN٠\7თūՠVjpy_WdC9r3`Hw.+\X *p8݇5brjᮺ9Y-!+]hNDгoރO_q$¤-r M@^ Oȸ3dk(Jd#y==H&H@y/] b $꛾{[o$LWxMuйleKnvC,հ3^A[}DŽ4_WQ f1Gkߋo_Fn2&oQW?Y~Kس8J;(]xQWe$ a>:.~\5Re 47tФadM(÷><6QA$P3abr a :>b-#y֥'+"<]g^15͕Tղ-*09}2Rv-UH9J,4e<"Ico*[p.1lm_x?,XKm χK8IUwhnM|Jh7 v%^\1 T. i 2 cvq ޖlCL,dß`b OPy] @DJJqT_g2&1<)N{$hiDU: \k#3S10GSϗ4)ѕ%xiޙI 1"0u\Klqm5y1r}?s-Fp[b.ȵ1Al0ں0Ae_~[at"t9Rr~BCPp_Ǡ=gӸ /˳q)zG͇nˏp|3cl~%gPBt2ZXoB i FTQVJ<]".]&tHKɕNg&cA8)F?"̻B (ꮁ.xƾ6tGeU%u-6Iո{)Cvq b_xTO zp%yx!Sđ.t7 ㎺.YzfkJACLU䃿-qPpPoNHWC^X(ԡ1kt uvHZ~}Xqpz3WԞyY_̽sҸUwbxo_]=O1ؔ]NpFPmӝt}8@yG7 F[ɠwB+jŌx}8΀qQ՟Ds,){ v%՜(R@Ȟ 5^2)7R\(BQjZbH' C;ء$;qׅiO])+ҧ2#k b :„K #z[_@#{T*zXc5_ ~,xO Eod'q\4:/:uzJW ~^ 窾=\7'Ub 8_z{ϞptÒcUdckR ۧ k A'“:6:fIִ҈GQNi[< Cx`fVjLGJ!Qh{}TQ@%BL3{j\!hhH.3 ՞YoF臙ǝ$5  as *%GW-$%V[ cdOR)UrSUg^'xn]ŇC im7jD8"e>tk##,r|7󋎜$΢,4bXI}Rzߌ?a#&'n<@xlPׅ_촟+[zA^6|iLѩPgOGM4F8;z&.ڄnY0J}Bd!U7@"X X;4D->8͊zOg+-3BHKmHDե { 8,:\b"8$(~j,@ !'!wNb$!$oR ,%KUt6vLZ^3{xbY. azӴjaɷu-E[9C$ bfmK\GIԻlD[_)թ/Nvّ19mϭA3si [&9{fgxݏ$>\A|m#ՌHYͽy' _;AugoU`+7ye&? |acbt8pOh:e*8`Whۧ.>#إC @y rssG$XeL$ pߋ8)˘Ry.Zs:XfbEw{L XղNjY!-ϒ.2lA䕻hz+!N}[in.fӞT+ex. es] k >a1hT$\#fac+R0ǍT5zUFl"9+^JeH/l塿5Sݖ ʝpst,FE*5i~ }q )hO\٥ԩa!EKҙWgEhP9*(Rٸ<h>'R;aHaꈏFAjl"$(UE<ͣYm4Z`^LH#)1yN$T_EL*w5T>s!Y a0CD>/}5R}"-q̴h3(&Xϲ7Q_+5c;bAuSTڗH>$Zߒ">Sãmh)|4"܊@eT]gtVHè m>~2tջ%l2)p2Fˆcmۤ woCtKb1Kl͈6⁌ҟC}w&5E*`:&/`1~G}Hh=ƭM|R+4VUʧ-zՀi4s:2+ oY/rPhpuO@8n3yInhw^%ڸtBOE z>,(b$45U& F1|o(_/ɢYڷTdc&0Xi3 Юd@V6}ޣ^]KWӳ)5["Kxv傓rhNNu5}Obv%fOt;Ja+ra]۱hwMDPvV&_Hze5;kp A]NZμ^.r3vh%!Dj#)^1:[h%f(uST]%kvKP(Zv^fE|F̙=ޮ8_r߲&t* lTKx/u)4D&3Q/,+`})\y{_/E v=ّ3p'VkW"qC4tB^"*rVjH^m:~y@Rsa>12ckW:Rcj3 ҕ@ytdvq<Ay/Pmeտg7bz#uiy҇(T:,f#4缪qbL m8"p̵K]GTЉw'0.T 7v[B۠ 'B4!)AX^ d&[ <R3-C, u~A j7i qpHlKE (vBUtJuR~Д wp% ^F8dGÚIu%=\"UWuWf];fӚ赣zJaЏfǯ^BE%DS"a]l=zZIRu]]2Aߤv\oE"_L> QlM3ͩ A¡dAυULlO$XڣoZ}>"@jwHAQ MtGX9ǽ4.iW h[̀թ')2y΀LqBזT?ROfz+žȍ2|:Tz` tF ,mNʎEykE[ >>~0z;r| ig5*<}8&-(Ѵ~ևy}+sN?pY6/3 IXqCׂe D޵ )$n beiK$'!Χcd K  cjCa {86SC= 0o4QwīC2ggQJ#pRւHkP(..ΕWMp' XGРw糒YkZbgH yO&g&! jT4ߧD_W+g ^!FC[RҾt-p51m|C6ǘq +۾HvLsfꄫd8ck ؎J.!e ]ej|Vxm>Df-cfn{Z95<`y>j ӈ|S\OaN÷3\O`v`O BI&/B:|Ik{նz, <]^z*K,8YX%w:R~Wގn/jL^R@Æ{ Gp;YGDufxv{G6PЛ=R@PL9IcERV`Tf}0FE(*bb_ voLtS(TŪ"j~ÙyJuT'@dTR6J2 `Q125d+Ze9|Sgo51zmZwm m_W8`W3X|8%DP(IIM ]P;Yere겙Z m4 @ҰvLTl*%_svWF=#8%X ^~Np}iL:$i)W:Ȕ-m^y:굁<[Mf%|-ZV k5mb;i$7ϊ'Q-;!(ǗlpƢͨ1?@ euJPyH2Тۙ@*2G9}XPfmt:;~bǫg=`!VqR nYtGNkKݚ 3{FeX̔9CzwirԨVajw1T'ًN7ZdRs(OCt[Vroe Ra_9i7pKUu!e,`D+KF&h76r(/n23<,k}ϔǩOi $_s{e*pk;yfq'%#P%}UVrE(c WbP]MIu^B;e5&p-nX_@k,%#9ɁM *( r@k[ee7zʄ0uFBlsW XdgLI]*[r^Cz)璜2P= ]%Nj{:&z`4y6=vѼ-.b ]D4GO(؎G:WvFZ/2)/+h!p3t`Gz Qǃ> ux0.d0]w\;|/K*At?%Kk;I9x> whs?w>Wr=f(lUtj~̪(kDtyxx~Gsq ]sHQJ^.mg*'0%^$ȇ{jkBFFETu8G㝅Q3OƮ(sVR/Tf|pLr> OT!@up7 [e:˷z3Yy~uqGq'\kܟ<-M3o+@l{H,?'q4Wpr@vOeo~vnNp8ch!ʅ&?2h#;)/V?~{'t$P7;0_%J s-y6a\ y䔋6;V]FdܽL=,|4,gPAtz|q lb;?xm~||TJ2}B{J~(v_S1A&䥆92q~E%h)m 5 c&ˣ-偓§D(@t鶆w1ր7Ϣ)U:ʎ@(iGPa"7= i?kg.g+L2:,F)Y'`gwpF >/z[+ o |5||Cn\ z _L 4vUE4e Be.C1j{˅c1VؼӜz3ßC p^9O8ڟ۬OlvqddmBZsƿw\ܺh~H^E"l:zĐl~"o퓙*9AlН*oB,m k//]{;5~;V14no$?AZ!s袵/m씼WhRDQțˉ&~.ex@%<(*f.\v9-z_l(Q̺&+LvG =gyI'Ҡ=o5=4”3o:RqȺ)UuM ZlJ:eo1"$}4 ' j$#\9o#GEǞ;n:O4ur Rj)<"vۜ=/m "ֶ;gNHCܲj©<c#jߨ'plZo7;]Az'+)͸įX{ mP33g:\%i>]W6`R]4kX&$^&2KApe&Wx'Ǐ*#]Hwl^ O+syD12Ik氈b,f ]@Qܵw3'/bD%{bʑVZ(CЮpgL/;S ui] l7`%'@s#p[QÜ/\j;h &NZQPvY^ Yɠ6^.~+oO6xc%T$, =ȣOr^,KG*}?=Rx!+!+MB[?-`@ ]Er1fXC}8znm(b8Tՠ(ءmafx'ͻ .jiG%7]ec(]c\ЅU6Sx$N(ZnD@4 <6Yj7y| &L'ٿC{my `[9GZ  Ҿؿ#T%ugd*Z2BRP2}@/Jwis6<lMř$F x:A셅XlDWu4@TY\<9>q6ߢɹApU=dV{ _}9Y-fvAOҨ$NVoys-ϕy0G-9Ş Q+kz(<%.e~>Kۜz>px~ 4$ BԤǨ3EBo}ݬ cIc޻a.TӛdF6)O5HbjYcܝNU(j&7Mea=a)Cʞ[4*Hz\hޣcb <͎~Z2`<)f(<Df V >x=V ND2OU"Z=ŨB۾f@9ětb$r!ˍ3*T/||ލgv u0- Aܾm[:I9MT)V0T}.f,1aj'Qʮ0= )3$}JP]k .J+p 56sFbhE\9`O96_1h8@qKŃH _@Z; j5EzԀˢ r >mmŔuW]6AXTs:>DOT ciA2t$x#[,Ť<=%qbf_T4~LiGAp5唅S6t,L\v sHT9V3و^žxKt{3[gOmWgv%zji9 ?)bdt[I4*W3kxueiFQY9!N_5/[BDa@QYx02W aƌDaYhI[ދkI|=O&bP[! ̄e榕Q ndd5?]F0ʹ.Z T?,]~Z (ꩀgAqd4 ]e;U2'-:'FiS#)Qw(zGv>Khg>S3nh{WHy:vbĪ(Mʟ=X..vm̉NE(;J<&|pF FM ȏBp7&Qj;'@˔6[ː9scw/=vNR)5 ݀%ї5 a | 2x/V{0_ON*KT|*kv'{#rGghjٓjsA  |$;0(zubģo d0#tf\SMK{eBip؄ ]j)KS>9Y"EGr;7|0c"mzt :/>KMť[b18DHNGa3# ˋ bT'(9g7'K>ڇ5&5i׳ NO5ӣbqyU=*XۓjC,*{]`CY`{Ł䐩o))L!hND7뉫0hy[.Z4GO$lB4!wͩĮj޺"T4́+sJQPoeWҝ]`޾5WQKB'oFY:ԠRBsYp)gXFjrMgD1GX:Z`r-px2u$d]D3Y=ZVl9"حoMHVQˌu;yLM5S V$[K$R2E}QW MZ2w|.Wy#aNP# ͧV}&oSD  A7q0WÑ< OyX`4#Q9=6Ql{JrصVvσOS>iƉ;.頼r LcYM;5v9"? my._*1QU E2^.nI**v,hFC>xQI|G(.voʞH-"(X#z~`4ͳD4<6m]l~gc61?>9@Rg |GwZ38!(: ]uH@DQݓ/`3:+ciA?*c@Q$5PT+(]}j-^"Ks= m@.aB3m+afLAs[-5/q'f9^% vwZ['2R϶W5)>8M&AX„x+U,S75]xu Zd1./k%Vuv߼AƖ%DŽ+ɑ4w+<$1鑦[te=#lYba-<3|I t65(1km)_=>sPiϱ3zl3T6PrP)3Kx9qTjfK-RJ4=I=~F6Lj0Id2"Ԁ AƒFHOZ OemѪc~ , |~:Qvkڜ֢\k-0纑AEk= X8.?1 r'-V_ 1i?;j6a;إṖXtP~掠@ =&,l} cQmsY#eW[W?K';(*ܨ 3Wa7 S1 zzR0 GbMt6~ثpO7}~&P*1`ܥg`O~.ZSE?%)vKe!+Vv؀ONB[VA(l e@pllM T8fT>.xPL5,+'WF6T/G_9R3Oq k2IL;*:򠄒koj'# v˔8ivV—q7J ;n֒ѫfU:1Q٣`0nWUZ*T6ձD -b-,rdx7W(dn/3e<:)e R$ƶl7DB^|[ǟ ^8k(,`z;APC!Αep|- )jӧ8'|8=Q3$i@ CX4 `Lk/(uG}SB]Iljd3# Z`@:@?`E{D:L89~M,B7^xjOĈ Y&?#ўM2 I2__,l (yGL: 怑6mDX_̘9t]e=s韱Qo} \C ~0XBÊN_/p8t;Ksa_8RBWwe ay z!+6mf.)kN̴2 H(9yyd;}P4Fkj$%I%it7FvgPWtP k2AzI;[+/Gm6BT$mr ؝zlYSC9NpHM\Q˃p7 f GNz`ʵߪNLjl2bet*~92x9 8+t޲ |~0|3WuOmyKKrBuD-'smK=ۯؠfFEa& 0O R/Bu% SgqJH[/$ol(Aqr&3sPKOIV|a ֬f(E+d0'yZ^Ϫ~XN rBC&$w5]-ʘi󍿈Ht¸vj7z޿4B'pոS[ ^)J4EJ^@i?v|a;.QЫi9wsFydVꑝx/K-7bMcðr9uR*O ,E/npif-͜ ;@Z/LpXPSB r<$s(VpUJF.Y$)Arؖj*F aWN8]v*rzDxX]!< utH~rEѭEDVkpqߌ}b7EpD2s;ݮc|wsVfrT"aĢᾹuf*>RNWVZV }.A] K5C VщBEH2<ٯ#L|*ꛤYb {1.@pmL]E]Jί)ژy@OO8ew4>uDifĕӳܜsgLBD 52d1YIP|1<~@~f1DXYA~Lk3/wZ^!s}b|"V鍘ez\}38fLGaUF<&k \bPWڤk{Q`a-]"-1d%~{[FtlĈL8Ը ^r;IZPJӑdJK0(e<Ս`85I"/ҍzqy!N7n{2h$'+\f<*c]hPT˻`vjbIr7F9 6|X*^lYLs2SE~L_(xb01>Q62q#ڥ֌2[ÔGu(%.ED'f^R1PZ4{4 {i~AKI;N?F-/,`9MI&5`⪛tHOXk(! x͂oٜ$ifZ8y̱0l&$qU l550gʑ*'zzL7[#^IJ@Orous 5czxAYH$>ac([e<ބK,zqq/;eť0|:e} 2eVYZ}MҏEfRƎȌ4NmՍmɎf7UΓ3h;tdqte=iQ."YW-My`y%__*y;(m]h(ГEʐ6Hg|҂>1mx5_XnM:_dfz`lE7q6S36;r|fO:;Qv O^Z =NPtteD*c: QP#ђWiWTʎX^V ) U罆}?7\_ArM<<$p {(|jZ(Fs3 L>:s{8p_zD#EB&(/ʎb{jgr7ZRKvJuun"@qlџd}}$~L7:Tg|]N+tޥ^x$=[񅣄Ro;5B'/BagYvbRNݣ@4܍( nL@x^@FnATZO Y ^&ZBPpn$j DN٪1ou6/#R.L|

H`z=2.vGVʿD 9=.2#2a:h*(HR&[hAZgF+WjU_G߂o\-mTG9O- |K\Qɑ_qh`'"y5ӷvX6njȭNpaI@z_ Ś .]II*e:%ίPmǿO:`@k"rpbS .su!0c {2s۝t_dڻXISbdE{ry<+%*n&17}4pD58'?!;mI 5 7H]YCYpw9}:ʌH'T J'%=PmDi0 ARׇ U\E=͖'-Jsߠũrzs̀F U44LˊN}=##ƞ6ӗ%#,\cjzhV0Jojd zp k6K on;WTʔSN[k>* ҃*AVLKrOU0mJ\|uL4=Btu7s:r]C еZ6){DUo 7)ՈozGVkNK^_RERȦ2e֓!a.im2 .: ߐ̟;;H8@ܴ\}ʎK~u->Mi`ֲ(Pܦᠢ5;Е~Ǯe)AzvS ~Xa5{k[ HF[OsƐfT-L h>4ﺸ1ɟW, T,9\fHUA6 0Gυ" ŶժU ⾴]oDN~ɶ5*ZFf i32s# q=ChV 7Qxw?4b;;~yV?mud'[WUcaNƑ{u%4 uYraG dzr;](yg]mZ!X]^GVp$&1+MCMB(6͘WcNR(-FHn ^x(إ:_&yD;ty7$J %(+HS\tX෍k晴Zq%É0J<-՚.tG‘[ /$nSz}:09ܕsVn[`6?)3|qok21BE r8$p"rGE]QvCo8#=Cj&%Z!)\w$Nw\ZxN _$QMIUͷmd~QÌ5F%S!0^Co n.[O" RZ֠$Ly{s)ܺUbjǬ qET =LJʌ*%C楻,tGX۴2i Aap=ƴnDZ^L)ziY omqE_[Q? O^p f +%?H\Ky)lx<8)0=D'eoٿ싍۵}2{F;5~1T46I??ȅLi]V&CgA«$e9ZxON\H/K0Y%+m_1b\z܍6U0tg62?-u qn;.)eu@ -勆,Wi>99R^ G[SAdᅨ`Wk7 =qWmyW_L{&IH3jUjopn7+F;); )Hu|!%ˉSA.nK- Wz\ܹ۲}Wy4nrSV?iw{FP=6>\#=p/xǓ5 ڬI_fVO#^^Fk_nR<œD_)xVM>2MƾچA xόyh|`>h h?ޠGcVWАNP w*p[B&5H2/ͳ=zǶM*[Ys\xG&ռLH0Uh[DC>HL)OlkdHSQcX !{ WqcOu|MOv Vp!sA6q`Aأk*zu >#d a7N&R~R .(&pfQP"Yyuf^VH5}yѩ-J{}df.Qن翳W\zYK/z 8%۳ r`nyPUt_7ahJ..MD B?Kd OʦV嚮{zq}Wy47Az\' ->Mw &]ted}~ZE៪XU s_b{R01lӣę vuZ .86J{U/LGG-L,O-SEg̱ &DzoَCB7y Eq6N#}P2@Uj^t.6$lbS}C^.S.rv2U,]+˥ϩA~T yKgpb&!'b$8!Ơ6G]X1\2S~|.n$p>FqU{BM%^Oq8`AVɡ79/|nwdrkO>]wXLe?ͯ^*'.w ev\OrEꦹ9cKԐ;ZypS %1ulc8"%ruWڏFq ˮ8r+x8jSNLl7}V1Jк`?+wo GٓBLKmD|xJNc[3guN?1jCme?rzhWQ^).oH#$)(*?e\0isGu[)h O[@Pe 4Gqw級f ,N~℄z@ Ⱥʼ\uB&# 2A!.xVp(ar>R-jpyL\O#ߋ[;(wnI ELnސ2\AnT~Ooit~\:h%'7.uBo|dѳcU_SoO8<:2֌(]hUto`q4ݑMzAfyf9MHg.KǺ %)+w ʑco41jHv^`Ms4qƝ3P>phXǑbJU!(V"25ؠKIKsܦ+.ΔrW_R?C=XNp;wZ}W썣Q*.v ڞ G*pknl:m㳑GԯuN깞nhIuhlЀrڕaz\Яnɼ\-0wHx~/l~U KR^13 |w V{t,4U=62)f(j='7^ qk~3_FKi`a+X#St`\U0t%xgs#2b$l~Eq ez[c5Wp1,h23ߎ92[d/6j< ` |wU?JiT멄a< C{PIvB}+H( :afO. 9&Y-ch/t !tH%ee=F^N,_X7Γ!#u 5)`?VW.ȓC7:t3a _KP'ܥ0뻘R v!SдSV r;[748<>ASա!{/VnW ]Cp2aW?DBdҾ8_"+k0HBhUlJ֟˸%JK /{wé0:(~@8P "J[]p_?Ə-SSnfo!hllojqW$]KSj z.dVhoSV6U)t&^ aipcOs0CEn.'>J̍&J̹Uӄaz#|O5c~L?4+'\sg#ц'Y0t;̦UʚO|OA?N>t_*=*7z}d5e;L CfeLX [XZa MV@V9VXvbf;(,HX Ӥmr ֜%@Emŵck]U`tyP;9 t9[ca*_8Eb] tb5WϛnJ3p1W}J!߆į|}wAJWUQ(YBۏsbE:pzAخ%gfWf5gU+(t| ?L:lrɶ*LqoX SlNbԦڻU"uqH7,uD]'hp$'<|s$p}Z F_'~ t!qgq4N)-"|ɸzGج#N l+*lĵ*p #rW㎙ȴWG$arpdvBǏs ;0T`qZҐk]81.K׃|6[UC<& P2eG z%aQ Mi) D|yB%Mc,tܭg*AgDWK, %ǯ̩?{΢mcmDKecz!O br[*SY,Y㸷Zw-C)"{J-+[WD?92B}~U4;G&C>⷇8|M2>.nuCnBF^V j![O V씘1GTP1Q&:t ůcӈQ>`RMj5 f}l+\B㚹j5Q?$=3 gRȾ狅H{vxmR]6@r{QqI4~!Bc/k58xRUjiuBZm& MHP=x߰rUoNsu7a1@[}V<5M;T;mpᝑ22ҫ)z4ͳ(330eǴ޾(")Uk: \ \/ v܊`j m-rV>(1f^cuV|m78qjt TF=#X ;Rj!U67  u ,\%1W/S/@ѻ?I%)ӕgEA~6+Njq[I~Fe/f_Y{euv="G \m_XQ= :1`1X̌H`>"@2 iٶM^eT *[)5ne +`ftBx)4 /L~+]MMǻ,٥ Y^2tnϭZ.6(DGLMĤ)sh5`ˢ.zh>YkD?!ݘi$/Z%Oa"aHM~ךMW0Uy.Q;rw9F=[aG X}q*ve>^#ªj\binS'/p6"JuJeVoGX*{=b/趎UlhdC-&S8{J*~/ dƋ替ej$G;S]Sp.3y.BpAnȔ{BqZbfL" P\L(\kv *J BLNH' /^386C꠹7cp ƗT~:_u۶ϕejNEF}=boF+Ct&1 h޽Kqje2'jY3qy[xcpI8{#.ȹX{!G+ ܤRƚ:(t{;½rO>u/i}趿9Zݿc~RkhbB/IZȻJ/FbIö#1/l[  =3a~y=[]L$^ҁ|gwExnD_F?e4aEUB/+ƺye(9SݥL Kɑ}έ~f܉|e`jj$~Z77onIN_15[yHE((>R 4 {>Mqsm*4}5Z͙|2l#MAۯD]F_9iҲ9+}!\ B 3d~<+[)XCPj*&'ʵk`ΎWqG.7/H<Õ^}]K0 p  -sE/ao!T{ODfOH@5Iox1|'r]?ړ[ٝa#p.w?쀲k7F7 ^S"@? F&pijA>B,㲄yYnCã"؍+Z|'v, aDly?MetilE T-k6/t]E~ȫ:f:Q}}K /:١[1+ÄۧKo'oOd9EWoHK!_",2vޢ)E{ /גhc6,X3,y\cqGѶ )͍0MPo3- T^X`-u/ƹ" X[N*zN@VZ:+kխ>6aA0`f27W7X'vAR/,y 5om:CDi U/lK+O lN8d0DN?n:Ϳ썋ΣtFTުNʥxm:LUlͥ6? #f̵LtŻb|r̎Me"rG,WFHA0G(@W4Rd&NjZUȃk,W1!g8֕ |`H+IIU\' $Cvzn^nkLoϝ\H@X̢J\$aF4u<"l`93u74m g|U֊QM\X $Wg+3:QG<"*F 7]R婢')˾m1G,uރ7 i#9'>>^_kы0{NY!ʧlm S1rǏ4B+-I9" egHRSDe`o"'ǂ@w8ĠjRi1ִGb김ZC7v$,V?sI=9JfViH>鮃?WЖokNuJHiG$뫲$[k.v= DS2ئnS«+'k&+h/V).(? aV;X<2aE56HAUNE@Q{":[; k8Cœ& F{P6lg8GMݑZ +)6J_6WPÉY-7h)1PH8`ir{Y5s$1_E 7>! D1tG۔2⼫8$Q:XK .r/K5:j:y ^^)Η E\uH9!@"BNkFivcf%1%q> h-<"K- RGWiD@Kuv N穻R˲ǟgU뇥2N[Rs5 M-k1j{D;L\e&,Q|TB: J$3<𕉔_TǎSWC[F8#USdϚ*  3(z܊|j^z|,8eb^zoL}%Tvd]&Jk>I^}>SD# HC.7ŗVX[1%E<u:9j|XFzہ?LI~'JCcO;N9{[KՒf8V~i~X_]Y"GMPOw:〣톷Ng:|JўyoS? 65N${4+xF:GQE}Վj0RsN+&+tw`ܦ=?~8*p_I6/0N_Kׯ{ ;7xh 4ZE:C,_ymsSyT݆p:ΠM٨;0Y5$r ~jw_uDo0T2oď3MwcfyJ;3&ө|AJ1ov 1:|47ދUjZ0A j>UP6c먬*!3 m4I[GL\:WĚvM:P6_ўXZ!P-57LKIF`ZDF)ғxn "d/rsN`-zGM⩏SȄ5/U|Dd9ׯ 3TL,NˮۑC]`{A/ƑAwD]0֌5$N4ƻ 깆J2ȏ.eK| ęd̯S#zյ1ptFqeH#Dc$I 'V{ O3_Yp9kPX)cz*"z=7)0uy:`ް1ܤ}@U("ޖ|˻hR Nru< HIO# @nn:RNx+2Mߌ0HgO3g`q~reف mNMk@v|Ŏf@TDcJQz$ ,3ct$4ǵl B-?OW=Z ϰ`7( >YE MBkwo2Ar , ?MU;lmvY(ll^R ߟt^HggƢʯYoas1* Y/FR$; ;{321&E<ʲUswsx&-TkyFl |pY/uJb.ڣa7ca5vqMn 22GeaN'pun+tZbZp3y% ~4q?GV\zy#=ĐH*ײΞkaFaLD,.EyslZ[;t\KVS-,)겙j7[%"Lt$,.e<*ăe*nؘ ָGH%lt ݅n&Rap)릗:?(DЂҹ\儐 [<%%Kfcah~=2m4_qGͩSu* q~mRcbhWfphWԙK+ANRr$'j^ M‚QǨ&7G)qV$#+դ۶|PlڠOۊz[ݦhaGj:tϲ]NXIVMEx}{[:[A{{zQEC`XQ/~uWjv:!Ϋv[f"&S qYn&F4wpfV~ JD$r # ;ҽBCE[ײ,P@W bL,w DHBx#;B+KhKoIu'Z b>ʭ/@|4W7!UTs(QZucP,jcorDQA֍B㋌(B'ΔWIRZ$yTvϔTAd(_.÷onDzW]w?#ot0 ;zտ85~ %6k_PgaoXĉ╻nrpes4>u:{I V3j3͐L!j2`MZL[}Xd]jHUcZhf99 N˹j_"qM% Xl^F7'It L0!kcƳJO8=Aⱚ@KO^p5J폰ҤL_$>uY$񹔫PK Y_H_}#?Rr*Hb^ 9KgI vd`]`o7yWʠ E]lz~ []&轢..^:Pp>2 )Z)8,tZfq?: PQ!֫rHѢr|Դz 9+?3)Y"oWd&(ч4.sIn1O7Q6%R @9- Jlzx9b-a!E-_Xs׉ Lhv-7OoL _Zv0 @ D7RrB2 L y?XoCZA#UHi8H# fg(X9_>,llyw PՆ]YGgޤ5;A>%$Ա] t7ѻ/mLMY'$B_N$wHgUsnM+lK`YƻG}Q s6G #2 ;bk}09K"Ղ_=^҆ vF4)ZǐB+ހ l9JLJI&x6`0jj9>KA $ 2 ARTd?J]r@n*Xl%@ gtG~Fל29*'9T!BӼ|TFgW!l8 _m& a?E9r O)nɜǻͬ)Ih[a)G?HB6pt~YH4ً&E~XHʑ>R3.cq]#y53ELd=:ciz5Ge˸I6mey9H. HFc1%toυ1|jMg0t!/f~gyBn,=']2Y@*6ك{F͜w{&La 7,3,oۯcܷ(%cui cX _ hk_ɕ8*\tjS❇A)DP@&qbpɽcz"Y7Yr4֝2ǒCvnC ft4;-L9"arL|O[d[*EPT:-@2[K+Mht+ +$1xJ>p8boplk"e"QAFd`1_b'x񽳜 pGA})C?pE]ٝiD4(N1qYod&W/*Ì+Djgo)[yqe_؜5nh!Lvc?Gnx}k8j35_(1\L.ـLP1j'Ock QFrT)ARB_ )+՜s-*c,oNiث? miY艐`Ls\vg<,lqZj8|ҹVȟdq`MExR`ђlCwRZoD 8Z|޾a-_M9q'!|SڿJ~>zvp~ˀ3[TuMl6 и!~h/ &OZ3ݔhtݏ~g/ O i:YR!$bi~4cj6 Lă,S*w( {N~$CG-Q೰僰,z-8{u78Ҵk -<., SS\a_GLXs&V^GIۃ*/{0JEifk^vA?NC3M K|7b+zRʣX!?Z}$8Dn3@hx.+* \S)m 7" WepcZᳰǨr.bW֛ *bɡD!0*IwL83M|bA@|i"W\`w3Y+8BRgVͫLM>u`}Ee/5o̺M6Y~?/M(UD}e"iW<87pnЂ1j򿫟j15p3֎FCz,#]ّ+Z,1^$67]"^Qϸj~%_x!`)!H#LttZA bI԰: ks_-}hP0(юBl)I iEX%e\[5E"Z9͟HêPVNt2ç=Ml4Z"gfFs Fi::LH9b)i䴤 -hGњ& -'%O홽yRvAw/kϕ6O$Y d0":"dу10V4嗡4ܽ{j+=o Is BHϏ:g1-t۠9N+S* B/,W ښ(f^P7aNK -Z}5"٨f]]:1TNr3c^ɺG\ǝ w%WX" p4$%&($4fF < PwqN ';dHJϕ4ܔ n6P>3҆EP0)r0Rx'8 Nҫ9qΌ ~>dIܗ I--d7GfJ?axl'Bv7Px?WMJ١yȉ%zYlɸfU% M8o}#n$j%roU}_vN`<bh2B9Y} t"JS.U vc"=(o9vVq-xv @6Ddo+ssEPQhzߊ z>,Z:ROqEOQ(&f7.dE+zW~Z6R_ti.ݍ8v>=[ -?Uʋˎcf'+;^0jSᄡt1r=Ʉyž}YW# 5ą; uÂTQ"V ԛGuםap="ihR%j/ixG%wE/$+j@(lvdkC2Z>}<~oxzA df(ݺ|RfNd;D2> T={-?,J3n8|LiL66nAb]2/CO0-KЯ?3qxjЯbZFPƹv TZ ~yxhؚRp~XwDuJF^>閦jj.{Ro ϫU*VՑvʥ7ZZaԐn?g7YOCh/l*U"75c1pu<]Hy,`Qe&`юoum yWf3. 20tg 36r"[ٿL<8FB"ـ-nRjYw\8Shd:NGSr筆9b3ּBʣ ~ظ3gqVl'2рZMojE7GƇN ,A&S8dn Oz|:2د&^w0gq?x6Oԍx`\<"]![ֶ+g:XJ~3.n  -S_-l<7[fE'5:V8pD^Z6l#=c}ݕ`/;w;Z5NT"=xa$|/㻨IX ~ l5l%S5'$Nfs :VcPD&JVh njO 8ԟ Q.m} =]o:E.d`o|W3Yq9P  x \t-Zh*0Rc+j^ o8H;5$t_d7~}< [Rb+fANǕ3^Us&UY{ekyYփ7I~$\s H Z7UDOoҭpњ?hX6Ry-փDT4i@!bo0H{/EQtmK=9hF ν>?S^֠AבR42y!JsetoS!Y*^ۡP ۳d \s;=X,I̚uСDlpml<狘҅LH6ˮ>,^e< a`4σѓ% HGT# .{ɊNUV1@9 dɁCFE3D[=ܷO쑙eڇGܑ+">(› P `ޗ} Q 'QXs X yA H_Q:|h{j uM\ \Wr^Cb-]Fltl؝*lxеZк`*KL`B[;,##dLP/;&Ӥ`:elQ^EQF r*V7o0^c˄ۏY^ap\+C9Yv %PT?-]0 VD -8r m /e.fV.=qWv .B$koUigJ.fXȽ?_YYT˚X$TN9J|b *rgVXRC+,1dt0" 8^OkV!(R?BiA3d86(Y!4{n{2I;mĶ`wo *q>MH?S!ļ9)pFQӭP Zbe[|dZYJN`h4k\J9?Yc+FavYL(2a>S0͆aQ/_VF7Z'~e{pthO]H=eb K_9+9}ڣ'1ay9@dV[v O$,92xI*QbBKtj+GCiDg5/4k% O۽ PhȀفn(xQpq'Nv$4u9e$ QIx7; 0PNSX/{  !M0*d>:Y3`-zиDViGQ46'^f5?f&vNVn@6o_^6r <-um/]zNRpv|M %CS9NG."Gƣ8w3%8IP :liκd9Ciƛ ;(A,Xu"l- W D(]B_0/uVݾ˵9Hf.RROYگJİ/{Yu,: Z{,ZCEvW+8>jca((2Áw[@M@IpJ bMhQ c8-,"L`6$z'[ ts#v"woQDg ܮJ (< +=%-OTS8{?9 ́1-ՂNvP2 °`< $Be> cRr `W^Q, U}4sQ ;*5~gpNw &|5Ão:z! x_Ku8gc K y?{hS%@+)OCPoYcP9ƜcQHK¤-Eܞ\&e7۲~=qHrڭG$Ў&c`T?վcd!!0 :SS&+â9Jɥ^dĄ!{R!$U?B5q[(P2n1 E\0{̌%Dw@\FT3\3 GoKA=t9M镝I=u'G&񭉒iRM/Mpe&fHW JaMzs_\k?k,'@ρe$%e #$9BQj֡g3o~UnƌG(Sǎf ؟ˏP.s{;C s.2Ɔk_ Š9Xg敔3G|Cj|0QCk~8rs: \B'Jѓ4H8gR3h=ZԨ}o&tT7 U0zBHa5ts&XKЖX4^bl9AR, Ufq Q ȬH,G8k-f JQ#YC15YlA9q]E %[Q,KŒD'd6(`4# a{s{ =-,*# k7 qknZԫ^aҾԻ e0XCORlh "+ N3.0A=(Ch+x),Ftঊ7=ƺj ~<°mC*)+Ǩ}?M9[iu^z_Ss12;gCT2X\P@#[=4\U .BA{/Z<; AMBj;;ֆT7X=9ǻ&2jdzՉ߈|; 'T̃\+X6U]ns| FA+R \nK%y|[MU5ҴEKً~(Ճ!S7hO^$J!,!DWW mV$BdypkdyoN(M]|"H{R1I_eb\0Zzg\HrʔM&@))gu7_lPBCE3T;Ѧܿl<)'I69Hnm@|, `s$9=-Jk:rDN^U9N3(pw҅3w96Ez세\G\RH : 5ô 6vfU\*/!̗k[C^ 4ȼuuU88sCJ`;xSB@ X/P2qt\~`7ǻbVI9%$M U<Ʀ`股Yҵf7W)kK242gP_3Q] Fp&}G.,~~Kh2Qńz<|pgvz,#?Y !TA⍸h@l[ʦ;PD*p-yЕ(YPLX-[=лm0=_?Lܥ;R8h*>zP]T4263blCPg14Q <C7%l l IIO޾JtcQ֮#=/Gr &VU&#,Mz#hڐK8h|?Ϝ( $`$B޿9.M'_k,O{j҇4K_$B4.YM!eŧ_`Gz>xRGVHHJX%w@vصPm}Tc8 N+I1}ͫuj^,!c+l"x Fn93GcyzɌQ=*? ^8ȡ!n+|?ke7O5q A21+/`;%XC ɡ9HGrMT4j>J^ޞkSEPLhY踳ʣ: `y׋\PmR?cS.g vyDa(~qT2eA 7rcQ^Ť[߄2;mtgφ|ƥ&η5 ܂GIc܊/hf!@)81R,),֦Rb$G'o7 'Q`'y*3$($;JʟKOM|u\9һpS=jf/-vd+XoJϨyL)JKfWlw ^epɎ!,}GEU-Wc3Pظu7Ա˹Ýt&euP1ReZ 8VVA<%s*ѻn2ką?=YzX4zg|@ ~fmY]wQ"Ό/;kڣX4b HN\Þ G'.AFP|ry6O+zPmA`ovuedXqlX+w}'@ޒvM ɬXZ[Ee@ og#^x`̌('<"AsI6%%{/+tu$qe× #Fq ~Y1*~fD=;3K0ioi"uXڇގe=Xŵ`=TK/SAFe1[O]SCKj0#=SėSk0cgMT)T~TNY\LRw޿mn/|_pرzWM.(OW"@6ꦢP%gDˉXdw4sc *ɹ\w&mښW͏'_ APˈ6G㮳MjC0j-?qTC*^,8X-oܹM4h #02`\\Ԡdy4fiÌ"sǬ` 4'-^$R5+A"p6<#;W]:@4F'aL3,w%_P,~>1[j"gR/ _BafӺH"mqBAn,LisXxM3xk Lxv7ix&5)a:i+|5*|رGUڊ :ч…|'n]^t[^R50oUԮ3vg2! x;$V Q?zCln(&UC,yނGJ2p8QO++b&p0Or̀9g{p8gSi]_[DJȩu7ixb`J rW`֍zgv;:{odp|{&T#V&d^'<"u"/ hb;9 ~* v]/ʓƙ=m%Ge_?.#/bZ;YPZ,$DT QD8ؑ5O?<3 C6zsvƊӏIìq=to TkeD\fv-J]t%.e~ҒۑBBUGALiKSQ6NQЀs;k2'Y5g#Mvq֨Z n3m9tVЏ^:^_9Ss\6rrh+']LNe~uU|-w(N{F4Jb"Lex}l[j(_ 75˗vFqS*럝G5?}AӪ( ~]dDc4YER]"@Q,)`^W,oıJf;Оu!sqRPR9Ȥ\iPW̜ prC #fSWZ.M8OR3nx_*ל>I#xԈ=B7Sr rفqDK݃4}YfP#"usP̶meG}9a@t ɕ#Y=lg]9LUH1p?gJɓ2b~!PCLOYl?l(C7Έ\d bdĸͮU_==.7%Ӌ' CN@ܗ v2nqM,x9LV+i)񏇏7Tk-}Os;['FyIqcֹ̝(OSV1toρ' )y7BQ{@)-2lA೼+ɦ9T8VHJȳdV'AF!a,7/wz]kWCox' |*b["`2k =jFA~MɉӇNbU8m~<]v1*M7n2kCh"wEpօ$4&$Z(⍣ ժ>?pFՎk$ue!W_,[ܲ&buSCEzi9p3\ `Ď4ȃvz! p?jfV("1 U#\ՎN Zղmz{0IR"yŗz^9I Ë?qNʥYD݉gcƛƋ %f8@˃ áE՛#H_課)M,euP7Id7Xm M(yY5aRAK[rf_U|B>jb }3[)40!܍\c9eZ e TQ5yGAHfT`R ;I)FyȃSM4+H,vshd?xGy <]wmU}DLdiq㜇l6U| 1PR5qh:H|g̴e#啱&;mP뭼L@i^hU"QOwu1a,M/%$kOϼ[? ä$mbO+a9-zmUuV5ioLAK0$ӵn֡WL}`3Aru2ڢߞdyPbQ>?yH;-u1t %GƓ@sAdvnOiZa, ٻ4|žVA9J%@b,<_cǺ84Fy>Q ݳӼzWѓ"Y- 0jtl}|B{YGR!TL„I:-d|Ǖ6'[24 ɯvlHHb_rPsRoy-sՇliF󾢦fu;b0!#rff؍{/񲆬WbNQ'ĶB}7BBHT)8@~wiEi-9IM8ZměC71A/DI%{m|f6-HEZǎ? 3q)wdU~E?lјp|M7G>Gh穇S|.Y{2j0AC3ύӈ0c2"x2M<$tP(`7?_j j);BGa/ՖU2(%OC ok@71U۴OM/u%.70yc5m$5w` 7V4} WUލ[ȵZnЃ(l?5 Qq߯<JϚ T!=;cM$xґTm(L uƙYVZ.!}} ~ȼ7M6w@ geRP֡}/ʐuT]ΧEü8CRަjp3b ՟WZ];FwHXPwqo[JT/VZWaDYn]`-3be>_ &7s /͋_Njf0bkMnUq$>)%zmEHphθ )Pڅ E)-D\A!s6*f  Wk=<:B!7\өvUzmbUk?LD7Hn!Ms,\1|)"IV\6dGar(͚f|,|dj ʏ4Х$)#ƭũ[0ʷui6wmؕ >< cR<%7ߛ5Q3.H4tk`?6:uVvawQENv(Tk (}+pU͉ VYe*0N3-XE+5Cb[epǡh^>P%f*OG &/lE}瘧XkXK|6}9Eb;%MeSLN ؚ͞euvCslh\6s!i^67j/ \#Zw\|к0}]^JB5?p5>>1r1xoͩ7%y<3AUp y{ z7X`4wp M^, :uzb5k8-NX%97y#ܮ:5ԔKC;YKR0_'ˑ[r""%=2gMf$WQ{o%*@Hl],7XW倧WRc3;q麞ENh =9-g{!n =bB=V{$10IL5MݖX2qXHHb6D$*j\UG}dRH z<8g\' rȸ` -jT:WgN`LQ/ mO)/HF}(D^)Oa]f4aN E ͵z.^'=XA/) 65<C?sO]̷vײZ aC?E㇑gmHsS3>3&s -4+T=m@x3Rui欂vh3L;(JiGmcgS[|cr 5Htttk-voQBRẃpgA<MISm2(Mdﯘt 7Ex % %ݏ>\elK{3OQ9O-)LƱ׺Toӓ%a0{xo΂§wJ4#A~4u7ƄwF5NjJa66|)wpC J{zݗMH=5w c :Njٙ[R93pf Q٫=!Spڦ޷nl`?ra2 dZ(C+M9NϻѲbw${y4Rw6(u)r(C]U=\DĤ{fVrpH*l<1I[ c?S7"bKDXf$Bnto+_C&!\R?"8女Ђ@xRbfc-^e|ՖYsZ7Vk]5bꇝM +M3j#.-Ee[rqO-=7C_hpۏG p~!#H)m>1f?L^1f YC(b!NyW%__Ք}Pp "0fXnOhym`ɀTL%J-tA5 ML v$8: M"mוfTz: %q Dm3 Ea~^w"VnؚX~P7Pʒzrf'u<,4= Uk_]$=b;nݣ]MQw#'O,~zMsY?2"#(3FB|1A n"QTdJm>j!-G>pѢė^bK˙0,AGS9+ӵ\T.hрG8rZ/7IZ=27UprzoZo0C<,"@ R~Xq. ɇ^l9H[6X3۶WF~Bqi u @GQ`ĂAJY"R/E;'Y ㍒ _~w][q(G>! Ie6W2lCXQEmt&{3HHROd񉟎'dfSmK啼GCXa5p4#*0Ҝ\@(kb-&IB5ZױS GY1YDf8:L1@V \d glF(\3ڕE&/t񚴟٢yq$)N W%!ڏ*^XM  lȎ:U47:6$c H)^NK |W*&pY2  OT)s]@P%Jᜄ͟O(Wg3O) uN ?j*.>Mwz$/PO'-WNҿ,zBJ,k- ѕ~<]e МjǮ{pЬkcZw3)Af |jx)@*65.J:iHT7`eX ]1x, MvjW]qO<7Ce`gc^Ѹd*AWaX2Wwh\D@KwP9vƤ m׎phN(CrlٌkЀEQ8@-YE'2mۓc>+l0E/TU3%5z7Iݻ`xA9mo3݁LۺG26Kdi ՜˟6͚Wj":U}Nv2>ъlD8F `~1tЌ_9$rs28="&WO&w74ĥ+GYr?:?Gwc䢰 i5_̿H2-.okbL=DhRwJ ɘ&GP0+.KW!udXeN"Pv =BLE ZtUrG`FV#ʏ@)-XB?I/. ibȠBLcl]"5DeװV=qy!:w5kv-ϊY=4B 0*x˾wd{9&xgn45:_"X,GHXTu<7KGJ Eҳ.hkmj<ïe3Q$ K]Ja{QR%D4i(T-H rhRd\'e>5KkKb^s$%cg 9r/eb/@V]P0j*hld*ҭ%s)@'d3XJn<y/az%wX#x|`>qYNC Cp KV|ftԇR2o/чȑ7ӝNaM П#Y6@MРz>y^PYЖxAD^H>M'T@1yC^?A Λ٩߯wN$Dq ѿ@^X9zc30s 8O*o/@nj̲,a4cVŎa3;etWR|nܗ_lW+5̂o޻G@Xl+'"a9.Uږ7Ft`U<`3ǻEYˠTÞP9L%a"锕Ct@Ĩ7l 'kذv^R|KW|$\?̑ttO0JdN9kadZ~=Rz3\%*װ!_Mm.nf2΢K9QI಑O;8.8HvQ@U-^'giU9L!#** bG+D *̓F3q$*#QƬپE+B!3JPYh3ܢ#ٴQkSbŘPGc٩Ҵ:, }،gP#zq!LA15^h0ZTuîEN`nU 3Hglu4nL@:>&Bұ؉ַ)ڂ,f)'ZБWG7ҹ!Cui{ŭ h4 8jfV, D׏}W8(jvTD*D.LW9Pfwu:EcYt]wuD픰bImŗ( cć!qkZ9w$לp(GڥNE e*©i50KsQ!H&I*H,jjG>.=H[TUz NS @gܥemG4s=jm s-Ab-j&hb1z; fs|OF.@0No -% `4ܶ+^"V䂺!I<ԑ)"-7epɱ  wD6Կie)0hc $jzz41ez&F.P3e ['ءQq'!AvSV'P77͓[MmHy0kE&^KI@v0]PdW|BN_|Pf?w 1^;L(xrL餥==H_.x0]':;/z{Jᗣ>T #j|'/`?lekH u-+Ւ#7? .<P%_T,_6Qs)>D觝?ft` s8Kmȳ m4 Xz&Y<#7uGd ^ᾛ/4lZ Qϣo aNf+tps$`=( Wu90h1]nt9@ ]e f޶/ ӔH&_(H)ϧlZk=HLk/u5M^Yq/,Ks )ۧ=rϋLPvT::XK+2HlVtz{WXT0S'Q/6Sl5Q nFwGBGJBu]z^ !Hs"c]wt 7ER;g%|{"> ZS={joda%j~ (%;XLQ5h@Yws[1z8lq` Zd &rU18ZÁ@RQ3BМMnjCbp} A>.B tm91냄ҡ H( ,oI oul WuN̔Eu)1%,_;冓Qɣ} Ji[NV1xfT iYlPi`d2픊@*n%7 >UHe;>7hX"0jllUhACu#͚vݹ#w=lK*O!7< ]穾h>I%m}akmX*ږޘ(|SwMAn:HTp˝Z/D3>7j$8a[e 37MK4XYQt1])Lr1P3Wk<Հ]q l8~Q({iC'RKAd@?<>h܃;e-Mi< լٴ%Y_8 _aNgrScٿK q*-c.Oq;m!6G‚T@S.TLQ0~X{(\M`eAY}iP/O#ܝ{Tݛ哈ԩ~:dcg QP8pKÍ9Eiy}Ȝ\k XDЯjLF3τb}Dv7W¯Ii=%ܩkyAj2m0 1UF# rUh@r3#goK +g^^v"et4 ҘѸUV:DV?LWC`f)ly4^PP^tAapWjNǖfS5ӂt,Q^b|+{PSZyk _fHZ6a){C l’eiHSys#iD.=mUÑck־*j`γ=mE/9SO0ův]Ѳ$s;Uҫ f?LF6-*q wAC=3GVCFozBs7L0<_0巷w,I.o.f&c#H^iIȡ`;ޠp~w-;53YY 9kU5S tr^ֹm,clht]Č3j!аQZ2p*F𐍗w; };G?2x: u(xՑ;v/罷WI~0r5 \#gw,3! Eڨ'>晏tYКqJW5/Vw˴UQ:pTEWIs(7lj3 &$t"/PT%ft{`XY}E2$n+Tx Ć5NmݐS| ©%/S6 =$O X;Q&cCv T u⫸蒓:ׯ*qΈʐP#Aw*62|i7-pR1)Ȏ&W癐GB `zw8x6o'"--g3 .u6V mDd"Sp 6\+ ER*[q^WVht$x\B ~>*%"/Ls_VGioOwh7ͪ}jzKthh Lԏ1mt94RIRwR_!P!.`\çuJ0S{:*?bB9x1.;߸5K'WfH2c;&qt9[ c]R417sɠc|o;U֋x!67d1'UEJo RxL;W9x,jJHڣ]装{W68/ aw4}Dy!o#_ep;ZRhk9$R/󪼷E-GәR"d!Z\,,Q6Xv#[;4aj}+B7)1ЙCWj!,>i/:Fk@;b[pg7#O`.-zB| _ \ءccBV193wmpiq$D5:]BVlБQ&{6Y³J rdϵ~wN_; n" ^$qg#y@?nj-oWN &Iɽ8Z26cYCWXPi;0j8H^UIipLޅ!4kyx A@S 8tYsBU0ޜY ݌&'fkVe4}S4߫?ݔ*>{@LR_v*4煸T&R0tM&}I#iGb%L YL ̂,ޘ/sz JQ3u޸:cCéǛ!u9, Tg:!w\(i0~[C}FF&x" zazXxS+Eȗ'7-8`2#ָ d5Vż#<9ʓa|T2uO 4e?>5m$nmYe~MK!Mx[,hk`1$*5H #zgd,،W`z-*>o?D2kw U<-s`sKCJ 93eXh\j굥4p*J3ia;·‡ is(%+A~Yq31IP)WI}2dO:ePoRJY`b98"i-qմǂUb)}ԛ2-?USx?B㘺]%<칃]H*띯uCvMpŒe~,U q]Z?v7T 6->/mDhLX_޾(-#]R?Gqؗ'#*^PpG(},1GY-])PQ; z&1t^4iA]d⏸^erS# +Ǵ:xVXb[ *"v@dTnHyK:\d7bnT >t`fP}:dup(3TTnf9Rͩj5vKk![_>Zn6, AD˅?{M. /,zAD4\mA ‘Y$WASG`rzqT$=5{r>zZcPvF4qtr}f\+Lǂ#P'R /̔at)>˫Top ux?W|ueRהԗ}=ӈbVwtQV]g0]#{9bn8Q0mVNp>*5E | >lo BؾXGy0IJ{qa<W)N@9p'T(@L -? lAI>԰bIB[UVҐDsؖl:-66*r;J2HKQcqDv= FMhe+[Ie C3ծ9' ΊWo`aYV䂊x@`;[M^6,q}eXm҉W_mPam¸oRDO+üs<Ԛm9i_v,cUGDd╄DT*!8SJB6GN)o8:ݑ1}_Tɹ 7쏇Fj|~椤D> @3&{eC-ljr4P$#Jx8Y BtRȻQ܄,y\qax>ݡ: e<:mFud>@J@I|Y$L6 M9`|wb5m,zdizO*u7wpBq:W*^z;.$ѪJՍZkqr 5,`ETz+qJ̜ L )}0&k9 Q7)d֦o#W>Ǧ(K!m\L]'Ԁs#9V(.uL x]햃sc23{NEc%ʭ9=DiNH@!˲GWPTS Ȓ^']>/zKڿX/a.L8QcMj L&0H&<:=ɜxvZq{NyB)Ώ􆆁?ݜ\cs=Ћbir M26k3:sB\/1>Q^6Uu#+U'@aUK˟'`Wi2@ {Ǫ =柵q#XSC@}f̧v.&,o3v[%ԭg5]4Xиvī0rwDSWxp+ ֔GzJi|wa~T#ǻ@oTX/kRiR-('ojsܘj1$e-k~}j>?O8k(HYЉCb˹/abXV^V ۤ2e|p,^bRS6a hnےK{kvZBe7DG`IZI"HnfKgՃ\ ѧœCF7BEX+Uk|(2;i% ^Dn nrǦOM{n`B2 9#%fF"C0)fJdxuZ=QGfON\:ii:f 2O/Mw/\-7Z&lAT[X &&3y<(L٨vUܔTt%p4fh79t,n*"ݸܽJ+Bۜ0mÛvx<@ `f:bµk}7tkqڌg\BCf#f#9B߳ [%9z~ |0ʅjģ6!>}q6Gq- Nv1gI0a$BaQ&F дah/3Q^)@?m,؇o.P ʵQ}X/ea\d 32jvgC^JiƮ0@{ ]KnȅE q.i>!ْҖ-I{i~h(1kkEhgW“b۞"QbUynw*?G#*#B9^pp"`B4oӰn0AAV&,%ω,^8f~Z{b&˷|ľ.nC{n|p<"Ȟ"Ѥ9Ba۠ؔߚ`~E3R*GR [YI7z}E(=\l3? NZb#tn] lbp}rD`s'՜_ײq-OpWDKG'zo0WNS]F\_Y_CJ%ҿ~578= e*Y _j~$JO @3's/N~Xla8n@1ƄiT2-XؑN BFaBF rϳ@g~3 bܲbp/hޠe'4[\̤EF &K;m7mX^j<6!!k0lu Э?h}R3܃q_~hKO7^ E{ .Op{Nc~wtX$h#!(Nsª~;VQUOgL=SW.Ť8 )l:K8̥Dрũ@$/r> \$Ҳ*q LӶJ6,2jǪU5_gdPvċtc&{-NԦĝH]t} {N6=ZUNDe6k:M0Mk,^h6v?nQ%R Bn/,'4ת&Dd24\dVOyG\R\RѦƚ_Px$ʕJ#VWa;w)Wc&A9. (y@mRX#aoK3_&XLRDBu7>!}֓7Fn$Sk,G[A]$[rYXtZ9,Yӷj#1fމlR l@ LNf2l3 [ н8wC(#6]B$`F^Rr-Tשm/23Hlԝ*[ڋj!pAR `G #G9pُؾuF4A>bzMt].A;ƀq|U:f0#e嬉nqq܊K!_4n,8<|ɆD8ߌR+ %S'{GkKa@MR"j9ߪ hY8})/ @HfjmҨJM_Kw xz>뎚~|0tV-5 p<#]z9 gOTсYljEh Rû$4)%  vrgI&>7$,22=p ʶ.Cֈ#mL_T/ ͂MX˷e~Jņ5FUCޮGq4֥]qI%~RK6XNnȦ"BI0|;A|/-`Q#'^PO =E0g$iG6l΁c>X>0[jwJ8 cEq 0)UԬPp^ &$\̛_N3vzܽw!%oˠGrAjR-`YQUrҗKyXGXb!S gl\~ xXPXSP5BKbj>!`Y -ɉ7h?TT/!,j*>V W]sHᕥ'k=ctŢ;c:u𢌍&q#fܬm\)F['mQ)|L[!7a|I2)# 9>pmdA<ͳ,"&´q#[oaiC*@x)WxEʾzl RH PC?/s,)UO%jTr~]$7<0ug׌/̈́ =g)7R2׼DBO_͇Ⱦ_{kLKw.DE:O+8=ڳߍi?+BuCԿ|=3 P Dq%(2]j+͝*1w/gՕ7xR0FJhqnJ{g^>YOF?40Ku\f<ԋA >8nK|jaEԛvDV>tWK϶QZ8*[ Z99fkX]7{#,aF37-KzwES>F)3OǬk7uⲢoY15+ T= 0K]O3%aN@`hzC.qT|더 dzcT\ZH:JQ 4`!In zC 0 +:7.Os(ɶ&՟q1,U2Hniᯥ,f.yua -1S'QlVg*[Bhr @̽_߳bX= h6fc/V{-+ߧa& 8֞7Iv07 y3?9vc>K$Du屧wV6IALnX铘| 7bt20gC9}LǬEnylmcQ{aiՔYOfϷ TQ< #3+H5US 4H)ɇI~aH6{ށ0NCb>aYΆ'XI0{Zfq\vAh$?B,Tg8Y)1A7JBxrCcdxǰP:)[,hN:l-}UߴFQOCD,@2Ofفb]fMƑ.:\i+H@vʸϫC_n'< E d~hߜ(N+-S6FmBMy+im ț, GNv׵ |$詑#wYLsG>:.ԃ+|ϪHd\ou3#h"4tATjaQg{QWô'üQWZz݀#.0ygg5DˣubX 8BcgomQw7 t$ι!|R8 ֬ظ4 dpyh#,d-RAUɴrD / j H ܫ ѣOG 4”l/6㈁tԋpB}#e 9+)45ZUb@Ou1 RSJRdw´cic8$pm^)uVF!xَI s]Fзd_/OɎⓨ} aqƉ Uƞ!8?M9幾ˍ2Ijӵً~<]k/50ܼȁDJ_?<#:Z&obDvG$YRK,1 *A+S'*Šcdt潲> uWN 0[~cp+7ƴS5|dCjǽ Ȧ[%y~ 4[ HF@U{>6>?jHy{J {m8ZSe$ˈC=tK_ʗ4aJZ: &N"I]=a(FzYi+2H"x.h$eoεvvOm\d,^659m@Rn~`PďCtrlleŭ섕/0`ķ@0A5{a!L`f[>$ [}NsYܡOaV}6Rv>1f }蕘ۑoo?<]gU$dQ2D=ѓ).)wHi\waY;ͭvY&MgfPFBSA#HOeV^@*^9,>#&a20Z:'Ohw̍Ob&mB`6E*Mtݯ=T Af^@h"3S; ]rۘaXW`uq2$FI=ATUByϔ㸶u^m{-}I*xeҰi8TPȶJ?T0dD@k6(:V3|Wt[>3sT] *ij-NíHuRICti*$7@}Z$@}l~j>ĠSk f`*( BToEI7t,P!XWp2"SaUT8oZO*Fe s1^VldFC)'2b7آ!_Y瑑>m'wDǜ究6 M*w U_"Ѡ` (EQfB9|2 iɢY U֓{:癞o-"K^h$B.d6J@""NԌDZg AE6%f^t!ۚ:Z݄yM["hB 폺`vպQM:6E%=86F>aglG_EANjI=[Rqݼ/nλmw⒀=ڀBEYu7+&nntK qOCFq'&ϥ߾; ⤘@f̿Lot<bPrBͼmO}7#cp% tّ>y S9{EY%YƽZt6?g^6TgN@>TRf!Tгq XY{9Q,IhTun{'A<$ 5&@Rgd*|ݐdLJJ]V,?|GwQ3E#iv$`Ju@;6cp s)pFs`7Cj[),܊OK׃.ȾkDJv'TG%Eisu^MNoRE.nf?JՐb ?u.c]ZwL~BC$s9.Yž?t O=qMSܦt8@yTjQV)vrbjCrTq.rjCw9 ##N@VLꝗy y"*eu63qۢѨ`>F?f Z4X^ ź>e(/*{#aXR>=C ,1}K|bŏ}1}N6iU=O&)x7sIT3z8 3lA'h`]P\xBjxA)Zä`$i9N@MWkDp uK9;5#bѐAT4i̽ f ah"ҟ;b=3{S=X-yXкUu\P6^|Lo)Ha m@v2c&N>es\xx"(Jw;E6Xӳ[kkhDuML"=X +` DMKxY7,zeW ?^Y!mȄdpR׼<1I|?W/Gı j47]B*Z嶯2 B>b 9.|DjX(1t2ChQ>VH1v+u9ȒgeGuﮓ6i〘`)db9<dlz37&25?㪋"i](6Qg{WS pkq:BV!78Qq汑`6fI TPLKlr-d./81>[L3@Cj@`Hh聾Fw a{L,܏'' "b(n`6< dw'W@uvJ$ZO#p"`qj+wj3j*h?Kni||t-J6g;E?<}k 3u9{v(mVd}Aoms6ۂ3nY5bф(nވU9bhF6U\ּO4QhtIL K&~`S&Cvb|LiG Gc5I,=hy}sR6ࠣ@Bl}h1du++2I?,xb;_S<2ABOVy )Q2R 0~9Z͡vAtS!S5BfO0FtRiF? ՠ|>~9gH1@xV`K| /D&>@W=Nl\V"+Gdx۹{syg!Ka8JY#`-RC-]" 'o!WF҄x8-ovL Sk2k|a* Z7f~j5˙v8%&KZF kK?gLDa1VNJFk&MLƩM94Kn+4fR?0U2ru}th0f$Re/3'ai&RYs(N ? L)N[p5Qٙq?; ȖBDHf\묟F(p@k ?1QfFE>ҲsQr} p:T/LbmXq Ľ,dژзEI<`U# %? R{B[c7u<;ʂL{99z3iz-`/R4#T&fmT#=ՅtZ-)YN5%YR%F^͂Ѱk@LOeqրZ좗UuᚏOPE1 {#2xYt!ѽRLɐ4?cg T nx C`s<aoFuB:?4xQ.a|ϋΞr*Oe5D\lnw9E>/77Z_ʘe* J??H\,AN ) M*IWЖ̵^תM`}9\Ogn$.v; h@6|{g{itOW7O*3}~O! N# u1:6 Ly>hwٜ^"Rᶒ]Tf>)։Jʸ>Jʨe+AF"%%œщeL*^whᶱȎ祱$Ua+7oGX>Z4>7sB,͓2XL!Pkt a{`™r4]chr</6N#rK){'ڸz݄TsuYm恮OY1RT-Q˹*S!m:2m?<ɬvE, a@!y9?ga>J-,51lRi6궐IXqXM}`^?c+,l3WvJsL%q+.(Hr{_[ FV.A3Ͷ*% 0OADƼx3kAkfeA߮B=N/CkE (}n5G-ݺD.FV8ב}ߌ ?rnF ef`y$+Ƈ$Dh5(n@pR9llx̫eU}HdDkiHkuN95LԽ&&_^1t :\W"21ˋ'D Aw"4A0Ȑ ~OV&{"Yn4SeʧU= 0jcSw64U#fRaTvSC|I)_5/ 1{5f!^[,?ي4Ik|v%$mv7*.YʟBc<3a՛!ΓI EJ>߼+j$0tmuTdJUtA!b''S]rۤ@"   HV-ӒԫbEٲYql|Y)Kix=fs㉸b1% Ul+ձbqOUZ`_ 4zk`@8vg}\Z1Cwx 6͓.DC aFW?J"HecFITP1U5|ys7-R=رe3ZU44`|h+ѐ/Qk;r?#h56Up<¤lB@fUpx7 ("ZM)A'-hPRu"I=P;+̨;xLKUor~$!PP&,<ӛb @5Tgĉzրͦn!oO\⎷_&M6}M+k,?lrhx_?-zbN$I>j^^Xk~Uڊ4SzpFvx|6ՔooՋm-(#͡LZ€Á al6-KJ^2[ =F9<]{A*@ָ?0: zqd,v`%ڻ ( +|0^+?qEiv0AxU=AtJY 6(WOlv4O7׉S@2Ai|Ia[7d5X{5q-rr]M.!#+-6M5(%AI,$DǙ]14_ &m~6ft tۚ?!zqfrۄv\y]r {z%c'SbKh[_kL#8vfxG?ð!܀uζ7vo`^9j6Osl20z "C$6U zo>"Gޗ!d_c|$ Irp<ퟭ ))ФFX_ ll[6K늀Y+AMexV 8H1sGoA]WkSLׅӊRIp e׬%+A)$M#uk\rS| + Ku-${#t{fՆc-OcN#i; Vco'Ƀz5I ¦vց#' & jdq2x l͖U |Z;{>Qu5dR`0{-X u*ua(p{:hL(#֨9p79A~M((b%"A˼Ncj5*P2q=g(Q;o-3Ot".Z/?_1'3JW,=Pb)g8H8btWeKz(2m(5x8Pd IܞEq\VQt@A+蠵QSc/U *G Tɗ11 zU/;zb˫jnRgءku-@HNiƄc˿U[] S4`z_ob:_{:rUMvqpST< oxgO9j):ņ#y'`fۢI0矫*6ZꞜ{#JtÎ.! 2֐|mhl[t`< =9cJm!Ɩ6eNf!G~&GwЯ0V9:#ɽ0lZluk&1Bd\=$f_1:'$_)86߾eܼ Ä2ACSw4ne`FW3o˼1*u:]8$RA7/3ŪSZL6a6_55{M3WWln?T*Z.T ۥ Q8 *M@ ^̈ydWf ^1>|,RXG v쩀3l/Kw'KVq\yPE~K86#ݾ|T96XT7dn}[P#E*G# Ʌ;Ӥ8΋g\bJ{j N`YNU\!,2xn 4=P׆ơ5 "tS%7r᧋L"/V)gfDE^ i5< dRS{"Ȏ6zЄRsMi $5$skm0bJ8 wjcߠ(t?c>!E?WK.x7NH2D6E6GkˀLvXRh÷لQD3n0C3XNhJ6 jCԣN1Le)]6-#;np6R`T ьc.`-RRBS= HQ ѪN98Q*9<2uGJ0SUUa@ ’v澻0zIW쟊7d Vtmϙj߰0a` Fcik7_.֚YjuD\\@RGtaEDPhČ=n 9'ϓN!b"NδJ}W`\S:)`Pk[03LV%,H vQBIWBq"kRǏ$>lץ'aψԶ9KV!rl wO ?[ g_v[WICE0AP";|xhQ{o/~ssrzۜj`]a*86a@d55YP==Q f`^k͓Mu4 [+4_l_2 t'KS\zmS,49퐂F)ˣt{ۮ~2ri]&7gCVǜb=Oj:/o"u\![`~Ǟkqʝ:+=6h{̨ eRh  Ueچ:rJg}5vs_7ZρJ/Լh6}9j/GGʙq ױ>W߄Bq){qEqaL-8kG¨|uG]p`_~M7 4)Pb \WV1OVK!X<%=]/khy{ǜ 5 G3meR?Ŕ).)/%rȥYVHBf> 3q$Ovm#¾wts|/@U *,Cw5?zkS -Hi:a$c|d(s&7.GORo\Ρ=5WɯʡcegQ,:d }#+aBIwf),LrI~˷#& 8s'ln%Ǟ{džeiP}`o`+vk"=xARz"c Af@%u\+6)oP"]e,sN02ă.LQhߛ@Rx)~F8oLiTN2~-#pry͝vOZcCQ#듓??Ke oӍH11ߖ\1'?gГSG7N/.]D˗7Ɯ\jufSm"i㔐|Ĕ|k«%죀7)B,Ԑ˿c_ K\0(&J=՚.^ vnB#,ױ8 w[<[C1J͇NbM̭ĥ}xTb4R2VY W[< nk,9?0 y5VP}}hUB.IEzx^yB|~ >~A{4_|| #^cy2r2icIzMK,-[s䒁KZmJha3pu%;Fw{]C>gRv 2쎑Ug}N -<2TlUZUbצkY u BOy"27{b`[/ ~{=ݰKxfK2JZc,7u$c^O 4{tlj@+)H^,kd?CAs#%}@wWP2Zhea^,wNm$Is}RcvU)2j~I4K Pː J |EӳCgxn/M.oˍ]#YNvN mك],~7r}`Ւnخi&IW{u Xc ?;0)-@_KiHѤK D Zb%xqgӫ0)08Og~K e#y3t\VgdL SX Sԛd-vTZTx,?QU.T#aR\؉y_@ŭ#<'7D*F>TL:}/5PokWhӹB@ebXH1e&ĜG"z g)qM+3ȣ_i`os(pbN'җg'. f/$ѻ\}(@iW1_U'/O8_u 2|0{؃)a݈r+|sb$fjXvKJW'&f;>2ZW^+wrP(+v0{aC=b]Ǟ9f!z1N vl"#w .\kS Emv=.ɼ*A/`!+%%OqvB>Ue+ľ M@`j%2fιC ЧCQNcy8!I.a5 Ⱦ9+p9kw&`S?5^W # ;W_`9  dL}?*X|=- AI2l_ eJB^%4/DBp@BON4 2gy7zR\hHռ{T2 B-B#=N҄y|kO&g'O{tcu߾KsQgޅCb,-iBH 2fĽVJ;m(׿;1~Ӣ!H"XгyPv~z9$qq{}+;c" uVTHZ.: FnG5&8 lx"VI_tU?Ą ZOA8sTq(4Qr lr^>?mm =3 /7" ٽbm֠)'G@eVѮk cK"ժ7p7u>ڛ pߍh!KM$1.O*t*ek:ӫH)AZmyE6Ki[dW[/>t_n #xdvSM؉5Td"Iy$i#ѝ`wI|D}6$nY0rJHÉ|´v| koUj>"*ևrϊ:~^ [ڟ}& |`SF}=^&&)rLX7..pAOR[>|f=ѦJ?=52IRH8L5JʀD]{晏&rALQL1@tqN[;u.Mڼ속֭|ҥ{^,l}䝀xGM`dB 'aB #ʵV=2 -+WfH0$J9jg#a2Z8v-ZEoS2OzWD5Ϟ^ߥ<wVLe4d)vo@ a8Ȓy>L.2x$@/) cMfY_`Ba8EV1=-֒kNň%|Qm˦xeTq ~Y<9| >t&m8sb.LKjc !+k ߌ5/Kd/)^鶴lwWO` 4q- Go O(D[߱|"}nV߽9V0L:?D.&|3r2]o#7nu3jhTX.=̯ms.ˀeRݏ ݸֲ%&YOuҏk! zf'x𺈽K 7h (D04 %V `sG/nEjRO_qŲNRi[y BGf$m*֨l.<,֋-{;ZoQ%HuR ~ZF#VjP:,n\9z|+m9fL&3ш;֜6ǝ9@żσ|{EbWEz>{P;:36_՟ԉ ͮ6Vbi|Oi|>0RTkН!fѺ3%f>Fe8<*{FpJK+IT6/(UAAn8r)$0m62!GzT-HVHӴ0R1=-pgNmׯ\> FX ]g'o/ k4_;g!63W2p)$,}!pl+`2]WݖMXLb OQkpΨbxfs~[)ȋCVz4,|+OeA`Ƨ5 ;?K:s@Aha!dIG ͊SNUaR/*<: ?^_ C|VîXVO4yv&MĖB{95, 6f3&3 \Ov2΄(TlU|0]d"ԍNag%c)p"ŖDZuS2-ycEO UqJխV HwlH9U6pk;_%v.dΘ}df~"^ 6 ь(V7nvnCiy1TxߎG>I4d2l%W :@_q2ؕe2Q^D9jbEإm<'۝ɼW?mW!a}l|_>W0=q Қ?γ!ef줈;ᢋfAlyW/WE<2)qQIf gp3 {IǴ(70aD-`)R 41!ջrG"J8Ú}H!9tsUlP#{9.Z4ɦ? ' {:>Qs&4M^6$VqTr ia^5| =%Bq+ZdqrSX _EЍ2/>d#1m%0!¶mPOhd2þSma}3"6 akGk@+Ǭy9/kzW74g,>E;)5sԉ|"O6yh94/z52GIe؛)&`%f:[J8M Fu KhNZ6dy FNQ!!I , Pgpր2P]>wJ8_W(E3Z.,;"qIl CnD`@.W(fUʏ%$ru]RL" Jd9]{|9}f0Ln1Ki*D5򋭚`}!$|2_: Mꛓ+zW8v9LJ=WzWE6.9(H21)yŀ4#5{kw wa211(|\y@2:^){%Lʢq64EɠKK%Rĭi8% &r~g%Fq',H DB?X[J,;{Gn7zO^1٧doFIQ:zxɲ|DqT! uZr&C #X$WA6 :YmSaSi@]ְMQ;|:ސZFӧ[JkBFAR>>:,bPgצ hǒwpˆm S2)yՐ@x'IJPT6,VM> bA Jܡ9uYB0m ,L%}ZǶUr8 kRJ#}AfO,AC.0\=a7x2tlh[cs$twkVHwrJ9S|F@SO2ѥ {N! [µ9Rg2&B:Lj#zΊxS}u:I"n5Ѯ(И#!Hԍ33xA^L$6: 8#}[T h+p|tnnlqYDY-*YۊlhĵS - T#}E0YWb1^}'MߓPIM'\^JeBZ-ؖUKwe \-: *BO9w0#Girc[ڸFNFz zȵɨA!]񝣄ZǥUC=[1=4}&x՗@2[5X'Ku W_YN< ;E8qN>hϻ8K,yjV?fk[*g.0lHĖF3)F" ]G^Q 6<;T*dzu6'gEb #6 yj`wnol;}2~6^6""YƵ]O`(Il'DX~0rBd 2*Ydo,X#SARƵi9w[V7AJs$`U `[9ڪQsj\;2VGlK`yjP)J@&&ޱ<1U]Yk ]NiIꇆUP^%2< ,"h֤18;8}2X:^]OwHs-Qy]F4+f5S]UO %t$@[[xk&ˣ->MçQMs[;I8<ٗOaXʄ Hfi|4M-Ba5MhTu+~iΠ-#nǑuqW a$(5X-v uy7 .g2 RaT ԝ% ,zձ֩6 .#fP,uP#,pll}}ZU&3lRN.:jǢXmI`b_eӋh ZLڲϾ#UZ9wwPl7aoTSfT$̺ Pu\@g"!S^;BEpO)Xn `iu܇TSw >ִoj] Ŝ *9䑵n^KmV^fFOm(}mD*H{τC -x_@b'8#ܼ`KfJg'zDE2#uFcp~:OM'2.pFh4)|4]M:Wb9Ӯqi>[.[ %U4$hNWQ3RrL_TbUr&c!K%0<ЀֻvWVw青X9+c{"@WKHN2?J񊒗|sddDU׹Gnj6IԖi/m`ӱ+9HADܼ_֣ujMdEo-K܅^ۿ_gӫ VXIOEfte(8wDJ5 FlM\;a#'_eי1 D%uʈd S(>) Sv>pt쁖Վ>P "9?ݶn|Nf3#,; M-K1[yd=# 鉦[Iuu:5EI |-i+EoET{輵B3a3~6V6Y,Q7-=OM6[t׹ɓXC=B"2vW/nbQ3V+QIii'<>^0/# ߘ>=ѵ0Fhf+Zb c;1Ob 7˒)/*j,;VNl%[bB;Y(5ļZf)rJj/ >-9ꥨ<6oFUXsY& QM"LgFڀvCFV4n6yJ[*G}W /~I{} {s]B=xk7p[i d2 u J_<%eWs(?oJ]U\&uGzc]Qּ4uf ʷ'+lvuD /QտE[Ӧ.>h_JѬc/ B &KL'[3'*,/;D $`J /±3&?*}>B*>ɓ@oڦĈ&fx " AW"Pxl ޽hhd67hn˩ =de+s,Y6P(\YI\$v2e%{<-Ǣ3^hH|=uR(ש1sxGZIJFD+ QDɜ#CnuJ/4P|G=rEbE$Pg]'絴3U%9"i`\D5A |Q:ƻL?=!&*D|XSyt.  qC6#"=1>Jh8?4sd%ȺeӗÌ>s5=+{(X`T\ 3x4 cꎉʣ9F1K0_ Q d=,ON#Kȳqf`ۛ{qh%UI_7P.i.n:%c7[{Gu aܳ`MxL:F0XOavUN;@YտG1St[ gvJzbNNqôcI "LlPB4=RS>[eo[XϔPs6iqX"/ӉuJ)5$@\SwEKaD=eaV$B\gRcdٵX9zE]+O`Q v%A-JT׺X8~!F fdzS\H4m}w[CzxUߊk%s [H4w{(/ie=t pQ)@ʜncfKMg3̱.ְI{Cђ5*NPPz8!a6‡lG +7d]yy6&Fz@ 4`>ktcnð_nxT#.5UNl\WUs4* R;F絩VϽНT>q¨w1Z Ls}/QF#i&KFE7Md1>PGTߚ.gmd֘wіc忢V6UXG!03Ru%A7 "g~L,L1Yr ;CkBYs}FzEDVy]߻rxNq>Aayۮ1akmCYӕ;䰏78(TݚHjZ@T)Jϕb:vQO1[rltJ&ϐ>FEr+7ARFW! ah|ڈqn.^Y~L'rT͛@6ME++!t}[ Lg@A0c϶}W:Zh\}B/NN*\-"8'8Fqy"EcT x Ѳ`f;la3 /E¢%v\QTCЩPvȳΥ By/zsҚȱ_L}. a0;23j5<=`xBnwUzםn T} eL1TNOù ~=}s-DRAum||(a=d-egLҚ|R h0pr˚ps!i% s2lV+HH._w|v!1Hy`?9Y0 VI1Ôp~Β.ƥf19`I8N%}щ-kw-@M { TmUS8^oWZQnUp4z=ěN $ e"ioEg1OkGl]2½ERXo1"Qfs.&Ƒ& y2⹈zT&#~3`c х^ΰ1؅)}/Ow[6Oŀ7 a&u^`u&T )8t@O}J~A7b; 00@P~yG  㨓7)+0XOM<{Չ?hm6߫ `4fE +>Щ;@7IKNPzUuf`mEzGTx%@\bFI:^9=QR)ܰhv\ Ed):#2!2vQxAfnS\<K0Hdrl}44|B3)\9}u ȩՌJ㿔|-f0'wL$Ufl+47a<-XМe ’'U ߣYT;ZΥʟ0]iQ:OF[_5*8ܓJeEwTٰEī{B\/ƪ*np|_Ժ+ib |]&2)fN'FTܾ!}q'ȉnP-nh' 5.Nd)D"q_Fr~ ;4P<-cC(y9VЌ lU_|$\Ղ͊̌_ @N?UG}Y^^`hԑ]`SH+0Nӛ7mBCzZd$K! %T ˀ* |4k>s((S ju)>E iYT9DZlUuf"¤P{ZA9Oݨҕ Z 0upʖ2.'%>r- ҇y\\wnˑƑ1r~.I@V򝿥$b ýZ|-*7" ؎8y{sp+u9oEd`Jmq$-kޤV<,.ڛ|_bI9YV|2qLVT#`71w"nԫ);L% 2CVXM|ZB6 &- 9wIݾ>ZPJ x;Bd@g/b -*P*U[ՕҔ\Eukϱ1ubjqo3! _ +-xƘu.ݳ71T% k@☄OP3F&V-c-_ m;L}Ԁ˫c3y O;R ".<^A/籷lp]cX#J1;9wq0L3->8'US L]mVŸ57L^_ۆtޝf2w$EiUf!wQ4@J;$ꤲtphA2l2'S=. aRU=3єTLyFh.= "9>qZ6 ?eyܝ71 e/qU z̛LC_mr@Rg߇R=2. GL8#Z!]/O?ܝrCN$ɑL: Pt@^XztJƿ[ $ aeY4qkfFzOyw=&!{'>[>xԅjޭƱJpOlT?bG,ll&I ۱5CL_uF^K,`ɦ7p1!5݄70zgn )dO:?zo0W'8-Y"?=Mʻdv ?b 䲛V4[X];ฺbj!?iAō",{*'b%Qy> )TM@"O`oݞ_%TP 68;\zT]?a3T(-ϒqo <}j=L}5 xl t g9_[:6ߏ#lL97ILS4J,=Sx2`-; 5EK`Kվm9v<;InkEGČrVژ 2\iDdr>|Wr,58HiViowOAҹdxBx{l!B9{s-#_sYድC%PzPӉ ?ao=-a}}-PI'hf^7ܛxU\Ą6/_7 VY'$?"'܌H 80E"j.q!CkB$zJӃ $OI&7ƒwiQ[1ٟZM([wcђm2-mǍxZC/e\kLJqm h4q!=~aDD ńdx_v?1_΄OۅJMZ<ӥ᧠^k+MQ0! =ѻ_ $ F24RD扅02_pdOG; F2<Ÿ=I; z>n G|) u0"a|WD >͔+= *cMFL=ȧ P(`WߌF^9­/Zv;F@@#O__uxƞC֋iCݶzvXEn x*9G@8 iK!9|63w;I,+i/l's8VZJH&>tꩁ=f=m+Zܗmi\GJuH GB6]%*Phϣ_֣. ' !%/4V<>q[:C*7YSǍMi} SRқIYphl#c^ĥZc0_?dTE 6P7@Gڕa2wEz ޛ+NN;_Yy{`ؼ/l=(x5v f}JBҒ%MLLŏPoU~6[; )yae]p$ᐠ)>g@li2UvZT҉rK^GPNP a+@HW}BD" Q/YP&-).x/)䱁9!s^9ˌ[J<V^l `+ >k>hiX'l8O8ᓙjl~1LS&(0}K.YFeɫa`kȮط Xa̡|wCyW J*ywE2i)|ܺ7?NE3T~|FkU~ 3]DЍ VX5ovIp[; %>G]*Q;RTSWs4M@z$ */l%`Dcш5[Ro"oǥa}a K ]•LZ]LEsx3] `k;N'OvtUcbŻqGx[BNƙetP-o <ַŞ┇]"|8t؛ /]u[$AVlQIj8-ܜnx]]i.Zd#Ub;H6 lGs{H;ʛz:ߺZ&plTs:8ei`&GhS(j Mɚ-e ۥmc^f"+~(7A4h9wؓwnQ>bkkSHxTULo_cy\MeP!!PC^N@Zh3 ;pvv nkfL$х[TʖcF/|z~|p(9Y sR8b%ܖ ƇRjAhuO!r󒤻xcvlYH¯Hת2z6t_Mජ=b2ʍ;`Y7MmeR:x`!F;kS?+ |`](Sy Rdz$G$SΤ*O ? )j^/En$6}IT,]Qrw0s#ݭv,߽F+48MSl{t Ktr+NKY.OOR+)CziQC(?jb alI(I~v!fg"WEbQm=$jIx؇mxy;`ۤYZ&C?V5=-9@kpF= hb+߫,2ȵ;կ2Dժ7&] ]ò3+)פ-Bwp" !UV)NeQjw@ef[&$m8b?jøJW5=c4pЮn 6&xx85@^Pa~.A c!\Aa{~߉dgy|$ڪ" B?>F2I/wMNj"${@ WMKX?e'QF MgZoۙ(eq G^Qr eVwTJ= oG=buYP $*ZE2$xWi^7,Ir @d^ /m՝=DS;+c!xr.%⪿1שw(;!TSNv;0E^!`RuR@$Mhו} ĺG9~"XZ0ZQBח]^j%K4ْR,l) ,`P)ѠO \|לM€@M ˌ=[%x2#/zb}@@c}O4eSQmBZ|_Ҍz;Mnrq29ÑEdE J뛫$"+B;eΖ}tPk~`g0?#HMk9p%ڄN 5f( ךL:QfZK s!!`ʯ&*wpnNY*rG$jFH̸ǎc'+#Ljw'nuhPhԗ80Gs??Ƣ}00H# 7S=fZڞx<́ǿ'?3HDPYyةp֣9a(Ry;P! jDHW[q"޳ UKz2¸j)8~p<Z1X3 ݧ[Xrne*R1hZB/Hc Ĺ9Ɣmb(fE9IY֤=c7"OΞvV<0ʪڴ147i +MªJ ^ҹ6z ֢ȀX:Y]K*%|Pi F|])5*{"$D)jߝ6;ߩ1L7i߸Kx_Bi6n3بKgѶD+6I3K-fWU6?4A?~uׯB}FΕ]i$Yh'In&{^d5'T^ aXˠc󊆃wo JH ~8\G53k2TÌd{b*I,yحrApl-@ Kf.Tbߩ<K7<^ˣ*2LO q0mx%ZmPu|r{'gT~fl <@ً*[>!Mxyn#ciwYA20 0H֤䯾S5NN^bD eA#"iWC-FsNʈarPydy%`R2}H7Wls>﷛5aUb:WxCD,lC+M^3VHI:L_I5|yf:sOD/zX3qC wB"Y., :h 2̵yH܃-M<~R+N ~@g9WZmFMHHmvȑ@jH!9A&3nȟɨJ%4l TMğu gqk F2eV;,flѝSJD9^JWaG'`Ǒ:DscA_[ ] вG DԔ?.7HȑN!{9T /@sΌĘ3Yt](k'oD0C։E_6T|,|Nn84\V N/B[0@Psr);lɱS!R)D-1e܊0erɿK':\$~GN+\S-9quM}DT0lbb'!DH1?˜-ͅ@V#P8`^ZC22i $")KKsNɗ3I[z0q_@cs,r6/7;n!xuK_pU^-3+h7fεKyap]<[*BuSdXt8h &[`˝*֏ Lxgz6 cD7,(ILZV]Dzr'/˙-*v{E kAOW*WQX=X J_]\-3\}~ MNتϬ OWaΗ䐃}ٛb$(Vf~zr XͲ}L*d "q/nY[]Ffr)zöE0,^7JɱPY<ksn6#mi1IoU{A\+Q3E2t'+_Ϫ$iv= wZŠ8HI9u<޲!_dtO|9v!MT59y:-wNM~Rm=.5v ߨߚfi/ Vђ.BUdr&*B?B3%}VڶDČ/1fkoQ "$/h؆Vd߶yGDm`H[atc L~zp:/ڋb'C3!}U;S FrLB*0]3kp)[m`N+:jՖlpkј`.+~Ft.ޓR I'}z-5GzrTXґ2:,35-l4kPb>EL~.+i suHe2JR@+o>8 `ǕAb߃9ed9]6䇲ۚ b_wf 9@\R P@kv.O LzjZYɦv:\gۻ˜3b+ 'p-¿BQR!œqwcY_DE+z|MWcS;nu Jn~&PwJu4B=[.ŸrCO<>u11yE0|hС|pOp3nP*`,./\]Z4!,:Z $Ϥ.-v3HfYt[iBb|i4c*ؓ#}W/S\\*_=6erE4W:ֆ; N;] ~T'0DBpu25BDڌQ_@u}ya!z"wp7t{8r@$2V2K^{D³/ f6c'u풆6>XX0dP9R[*yHUN" vjM}C5|{ Olo7$Y}^U0M13M 1UM\)f|g_yS4QPY;R:^H rD<Wq?| Ts%3^T˩ȝߝlyώA`[N6;h%ܮp0~(I^l }AYҥ+NYjxj Vs3V@Lq JU9o\%lO?wV`mAvB S2޸P*ujT&V.pv7J ?djM`n%oY3ad!}BUf'9R VG6Qk$ؘ n͹yT(QWԅELLwV졮}Dž1R7IZtígV!eЫ&xrMRuA#p\ԭ0쇋c%Rx2A֦େ)Z[a\)N늻X?րlC H6^gu1FH?-63‡I< ~CT84M7qV30sEb.fc50+OŊ ߍU>L׍gJqTW@_;]V|vB\FkcSʷҊ}N)t (ufzÑ`/!d@}I!0CMX F[ BNӂCMz|izV\)ᐲ_wNS}>&:]*G<=fZv/hF^ÌZN6VQBW^9>I[k q`>Yg(^~) ʐ)'Oq'_k239uFbB& c3 H_Go/_lznÖ]'&YOJgdanS@ՇF[cÎn Se缣1ƃܞ C׈HIJms vhIEK+yO!YM~jh=1OyO2-nMw\P,U*U^C2e.)"WBJs )L Z?) &uejX̎%Ag㚬%JMcO:zzsN^oQɬܕMj!2)bk@@ȭtET˕Ii~juSE噍$-vl#r3zF+58 Bb(O_^qy{8cC$fy1öWm29HҨF蚋ph(z /N# =f.mv1n(ɂu>-g4Xբi@jS% C+gQ xuq'e !߹o +T.oJ[S /ޓuД/>x`UJY_…J}mîT YL6P>fb8rG"ʻkfLb/ܐ4we^ksUS":E)iavzA=s*52c K`Pl xi1eAzy&IwPgʛz9<榹>< +Urax/7ՆǧYe+u>P]6@VW?S9&OChhZnۉru 8eZ&ݬ``,7"In]Bt$Zr7l&W\0  sd7olV鎿 $>J|&, GîWA1wxbZG E챓c؆z0N?ET !7, o &GJDWb3 Q焈3nGʷ5$x=9&-l`~Ut ; -/7 vIJ9rD^ЙA+#3mgV7 Z/ZBQTP@ztUZKjms>[9,2kK6t6&᎚emD{W©; Xs !i^SͿ7X[`c*Gd Ѧou;+S-JߓoDJ2׋-9TE;oҗeRT;[_}L]Ĉ:?0`%{s TtB9--LEcRNC[+%FWVhC|4cyvcM)+h gk1LֆIJ3֯V 14#:@B%jɦR,dzǔ4X~P6{hTQHF|S_%qw!9: J}#=.:0^!vCS: ̰z^/z u8C7a SUOcq))VB;F%/Cha2 Ԥ/Rg"RGӣ$B1Mk 2Nnm`i)1̢\] !Gا0p`8qAm!UXBLH8Cͫ:b#L [R0v棽[ryF0Oa(1}IUEOZC 餻_p2\OUܼ]01]qJdH'3"ڮ_G\tRGuh5Z wJbY3iE³Ñ4=t5}P<dѰ_Vۑ@̾ϋ] Z׶4*i{ZN?asA:l,K{j츧nc a<XZ3PRETz( şѲ ͽC<%!1md」15=7qzb6Űa;񻥥@P]uN]NGLfifvoۍ]JDtf"{&m \os.Um6t8Cax#_n䕢R W[_ujS#㏥0MfԞX,4~OogJܐ"r1 8̟DϢgOC/[ rz@{3P3`?G|uƟ~#KMOs⹡5 K3w;5àwX2(_B_e:~sQUӆ۠we1~v54TGW~?l/m5U݀̎>]9 Bu 0̀1K Y)aFM5L\ ߋSWtZ'˚<TA "6#ԴL nvC2{@?S_ dBZI/J@ mxX?Y8L-AFLK,q vq#L١-w}뜼i1%jhڜ뎺gŸ[Zr;M?dA$!Ub'Mڑh8M{yX4l6rۺukr7"A1acne}Ő`ɨa*>7 b*3 ͉ zH. ,Sy hN*]A,M!vQ o-GoT=ml=b I>fL M9iGX_ب&~aMkI'N~ 0%ݒ~Fk <[px}'ZwdZR0*xd_s9 , Eh޸h>̍ɥ*\p5n@DhT^䬄eCEeㅐ4W_0L,(`ruՏe_H)feyD96O\*CIW->I=b% YoFWEL˰65QgG,/TFVB?MI/9g/6R.J }ÒKID4ɬ4tR6h n#Į8#|&iWQ(] ;ن߫#EܴI8*7p24Wl rey _Ttz'tVeR[evxgH=B4]->%m =[+7OpyLm@@/X?&S.n+qSV. > rIMIN>^,fi2`+ҊEX.TgSD70 !^p̬}Ao_ [_=u;%g{Od^/!h%.{[?³+Vr) ,b]n8Rg@Eifzcm`|iJ"FVx5CjxV+*ue :Ip6D ikJJ)=D7)&$>X] SŭB\y6. FXg+טvҙta{qRzm?,`mnD.ߋX:KBFa'~$ZmN8 cpfZ@#Ӆ+N$lPpinR+P9AC: AZd‚^Ų_,6ntr s2ܯ~˩SdVlZnËNfכ㍸H*wɍx!$BY],*I!pHUvoes)tgaDK-$X ne cE6GpK0urDlז©~^xD(DŽ (0C>aXn4!>#5#4OdˁLd7xun&k4SV2šO{s7b0锞&_m"h|.[sm͒8_NhD[$s|=ˆP6exSd=9n4i/17DB $$Ԣ%rcFy cWT:Aq qԎRDx!*t }B:۟{Z"F␛^SqvM\yjlmLDs:@Wht8V,q 䃄C4iR=uk8EL)O#x4ApaP7B,SS>i R`@ݽݜFE"n~ \MBM2uŨ[̅~x=H1|ZA ·7Q{5WS|};cw]In`מ.1gֶ 䣞o0$3Mb˷[8e9lNN:gh-Uԉ:i0)+'uQ^|Hfy$ty{;3zCRlnuh'>O妠[Eo pr5eagͯ^0wANy@?62E9@жdҙzdd(&Y7>&˦A7w_CX:Je:oഴu{~hc|rЎ|9@I3ߑYe(R AÏ$VE+ȥHdQEUzXP$PI&IHɑLtLCWpwT5Z,|gRi>6cOUVB[Pb6/k܇clo,.ZZn^ywU gߣMc7TT;FL??q#xdٔ c)=uΝdON`涼& Oe硯Pa zog䄃/5Rq3@tcdS=i+%q-âZ<'Dj~fܹN) ֍ŖA x-kVfF}jк/)LdJ1r+=Ѡn嘖´QڪKիP6Ft5wFP{uDS6d+kT/NwnovU20HU2SswSIhKV:\uGZ'Z<8rYC ù $_)"$d*lbq|1ye؋ N*ܤ6P? %yi)v2PcGsfVz~Yt }֩yjMP7.b)Lk"ba5*k 0oyR,q0->53%zd(9ސ JCф].ٰ"E0Yb''W~UG4%x$1%W?8}:)")$:`}fv5B?IpHz]˱7{9;&B'hY,>,{ -(0H)GuDmm;v/e2*+k@ F %*kp>T>&x@d_Ke8zs\ힱ=؝`K41sF$z덩ާeO(cD,=I+@jgm\Vh,  " 8Hk^g3,]> O=<'3C$?rk@.10.ՇW `*i:cUF{PG 4z=`TEaѩ7U #5lQ}N&Z[Mq*ʹfZl]=z8 7,}c׃9e<ELB/}]PzO뗔䘕z]d eNeLsD(+`߲C`3>ecaqS@i~uՓ2/2 6뤛(kAS@$vt6$͖ߜ%iâP2o3iUP?/Ֆ&2<$ f1D!r{wUi:x( N܅7 X5k%yS] ҋO0D-: ^enQ(,^<ڽ&HuaũCg9'(6ԯjݜ/mAtJrqQyxBkA:LjBB9bpslL8J5Aiv '@# k/&egiхu^51g_#:p Ս&.yjۑQGpYt+ 3;|}m HSp YzSVfW]MijqcdPV~ԟl1S˞iyoTTn v(3WaD݇Du-iX?),\:k}ug/X W>c5CYԇGV`YZFxY_Z˰KqzX&>:sW8+UnņtGRػ#KQh-;G%UgWSѠ)y1$hXќ+-w :)N?{IWN'5?6X kޒa!? U5䡙ӷ#z׊>ƪv8Oת)W4r ( yLD[4D^:0- K&:W`ς*nn>AwX'iYY߈/ޱ}m7C%M)<Чu ̓cr啗K Hq@0Rr;Qɟs$RFAbw"EX(h+PLLDDy |v<J^b,T5CB6az'Ѵe}P|vњv97=ǛmlPDqV9$bFwvEx}Mw8-1`UOqIq:j( _@yoAU[5S@T) gb3σGRkȬ<5˵*nbC0 ¸D.`>_uj`@)˕BSC.7EnԚ%};!B-OnnPՃ]J6?^1C\n 7W` 2q&: kBN` %,\j+hbu*{ZvKR+.>$itGpe9yA<]?PtЬHbi {C VC3jbS쪫kg#EPQޗbiC(՗l`iqN,,g(|0Rf^Kz-T1=yRE/qQ~mrO.zG/׺c8:;o4#jX'潚'_+QU]&UD P{w1=/FW} W6k &D%>!ז {4R wkl gD2op ts] ?rP{EalEȝ! k?OJ{߯W<GҠb(^=bΒOD>QD̶7ÆJkyT}%9Q嶄aqѼ=7tI$]lqr N?nDtu>/x:փ8}8u\r>,Wu#;IٞԪ< 'C1&NcI667nngƜPKP?Oi=Fޞ 04h$uPc$s7<9+4SsnǞ(mƑr/ _# C ˚WXRZb:cFQt? (1Q[󟀬ַb DtτtO I{¹?\+SǾF&Q^n Kcʎom`C JۈP<>A1 & 6CDs +ӧAnSѵ6Y|k&p8Jkc8nZ6ㄚ3]3[$Z#R`uxҖ꩖G)E *2_tH)unI-Y{ I~yʤP^qffS||L2D8 l:4܁m3Ȍ'nxz%_ͬ,lqÔW2H^oZ}o9KddM1<`i^jchbЊf'",M#oX:?Dˢ >bc=L YU0;on[5l_ћp7nPْB;Z7NK)g9C@RѰMQ>J ~*s:+ʫr/SA@%?l]8xNӋx+Vw"rX..3e[Sڅd}`Zd]{IS5qR3ԃ[m\N_N%k6ͣ.ޖ&.F xk_X82@k/`f3Ne|p6 -h|P\^ +.{"Ƅ ֕ Ꮢ[~?q;HZ 6/YZmmn/_(c /0=!Mh3E+|ӁaJ`*KM:fB 󝏈ڐ(1'?lAۥ~;b>c1KgCPZ;Y,T{E>82KR3oIQyɄo@M h.5՜̗iqW 3RR.AnmnoŊƏ:Bp_@pd71Ғ~Nf22g8L|V3 ^;שu P^ڂJ`pAX2;h=h!C1}6KE#r cP-wEt$1GX@5J^YoRpx^ԒzCO!-$ Ao%֞Uw(M)0|xNpY[b-O`B9Y _ɢ{c[W s x;J})!4WHϮx#u4x}ln%wAX( M> Hfcׇy c@m^paAr E,J9%_?m"MQoS7z%1zx+ Xyn`CeM`7 Z9t{\+?"]U¨ŽOfkCI?%a75ȎO,VQhg:{ m=ֈ IG˾&& ;D(e%&6TNo%'p@i T9f*MɅ=vy)4C.yfKZW.q(E*px#7 +PܿW!.!vGj!Yq=rG_ HLel@|b%F;2^ӳmHuA(>l \~X9bMͮ>d 9z p&b&Kf{r;{1 |+7#._cih/d*O;䮑iŁN0+n3sa"Ǒ&ގZc)+(WG2 KT Td-MQm^Ͷޜ# Du`WF^/QR& ,[)+-[{qP$HÛ|*g]"~M+s7R(W Ic–9@7F ئ19vT3tK0jojSx 0S }wjnM;[xw:7*:9~n 5 ,]1TEXhalZvsV5^B@wj~ڒ#{j j>ճ1}¦&e"&v ,8vA2Afӌ&t>[)@ L*!U x?flhXK20%[n d6h(H eZNU8xN~T"цWjǹ-J)L 0y40MqL#O:rp qfL < tXs ^F΁Hd#p-TK\1FbBӚ7i1{r.WJ ?$__Dn<(10;Ɬfnޞ˞n\ a|P8sT&GhøPŨjP(VDWI!S X?\TV^Π6;!A:;(6F[vqRwqCNp*f Iݝ@2QͅJTũ[ҹ薇CuMund<f$)KZоc➡/ D^MiJ3ĀDݓ.ahV̺Y()liw^Ow+f!y,A!Չa2pݳ+Ij4^~W K$ZjO@!? k"`?ʰ @<5EH090t[kִZ^~bk&b;5\$h<' cBi&KݎS[WтɾMcoit7k(?02u"!DtKmib*_ejURB)1s e5/>u?gW.Ph7,AqkU#8ɒxeL`"s=Ա>)h) Q@9o;%WOAoF*^UQ$a_~pUkzA52,NVp%וRּeM$yo-NW?. ^PAgY*)^c,̆۝Q؋APpy s:lAthyo_2+1[Fpܑ(D'ӖSh_YQARZ(O2DT83RdMƒ]tL4p/zݠg-~ U ؟{թ=2xmLKO27RoS:2,92%c90||$7%WV'`HF fZIؖP9$o J6cӍâZ-<ӛa'~rP6#yjHTmԼ|6] X3'(Xt0DE6b[^ѢChy.7u۱耑>5XgBYԌzITO@)or2Fg+zS4M\ 3 8Y8{׬8A( @)2s? /{f3z#˱GfV ,mHʭg:KlV^ҘLݎw3KISi~aJ9]F8b䩡I!ax&Kƀ뙥2掛Dھ8!uV5n%tCVhmĨO\fp^ۺ)y.}7P 7}^T$G{g}m8s>\cQ%+Uc!1%;u|`GTv~YLW-ZN}঺ewb.hx5qSu1ƧA$5VoYsMlp_AЏtറ"AՓRQs RK*41;Őºi9rq*N3"4x {?5%ԡGI+<$JSw ,+7o%W8w]݊8J `CnKJ0pl\D:#wS \'OqtE6Ҝ~nT1/4}pvÂ_^|RLf6gq.%[FAՐ3$ $6*Ff+D*_˘luib.@ r@6Ȓ9 u/lKFFxz}8uP{)-Eh֠rqG)cJ"&6[owD[ga5M2|0X099ʢ/jɝ!].DuK 4XʎVGn'aܱ0USހlǥ vST(LrҰˇGTWԧMJ DݚDXB ! dR@zݒțHn>2d@0" ^jEVnK ɩ@zeJ|P"vfȇޠ-+\ xn $gf2If8t+tUP.3xxj96TDߔ1~`J,7*B؄,]O.{aW5rob,)BiLtq ]GXw' 3F}ПeT-]?N? v.eXѨ42Pc5&O 3&B1qFح(`V|$C@LM~JWk=h)}4z,\fdv_R; ס+h=^2f93oLCi;ٟ|jL!x` #rܠy0[43k&!V%5C.+Li `g&؀_`LذYtmǨ/%Pˡy`$44Ef8,'@8 [7>߶;)ЪAVH c$MēĦnj-_ˬ(HL]FCZMN;L`-d7Uvr;kFt> ޏj8.skp*4<4N5[X瞦I]4X;'=F3ըHT `\ƶ4,$,^QXG3t^Ġ9w fm+w=r^_Gؔ59P_)wf}LV\Sc5I W3Z5R-LMP֮W{_>5ĩf a{M)n2aD᠍-ND6 "FR!'Mwj7i }By@߱9>;nBо;׀'HWU.DA! 6,Rzt{xT{GteLQ8l~] Jآ'p9*b\Pz?n++K9WR9y|r|CvLHw)#_βP/T7#>[mkkib"697Ym'QIai]R*x&FB =eyJo1w:lfWBe8rImO"F$~[)[Y3bMK|ZerپO$FI eTGr.l G^5E3 %eKA0v4ܼJt4-pP`q:kLЛy w2s>2jxz=mr VGYӦ*O@L maAg/`1FZec1-DNm! >[41٬fomj6*z,q&=(@\p=2&WpO熂J>2s)[8֛G/m7^8tCMLmk?dEsj3g/|Nj po4wt>"ebNekwKI}6䁓5wLސs &SpR"?Z$>_FwTKEԋ8MCZ~_f6NLς{ļ`ܴB)0iY^4Q' "u?'z 6جJ#B]2$04lYfO֜2?4eZɈ[`y&q)!8 R_}VZʥ;_PMߒ]!@jkeujǭMBan!u0$0,SXQ:faO[y]E5$U ݸ[NO25 &{mz ,SZ4`G6K=e€_qWƆC H0qOqKIb[\9W&roK x$3pGc 2z'@xM9KX:Dht6χN hFS-?tX*hzA`=J6ţ_d_uIp}=t?Tu9SC?-7R9 $ M[i?Ca,Sy9 ؃g`Y=z2&gmֶA3$R:36UgQO'` !a,PQWwrT}[LO%f~~%= 5 }^_G6}tc_0 YxA{iV&nB4[`DG'7ˀz ]Q6~d!"@l5"Ŀz;yG@ArCtPV910 tni4v x/9x ɭh-ǾU4O#8}XqlF&ΌF|)K!qܓjpY՘&yGaGۂ>nPO)^G/9G츰}knfA{CiKQ*غNM,f\B\yq"!y =Y(P3t0#a /Nb8)dlS,9)' jPdGL$A>\HTUCJ<:U+s:|2|[vPY8]5:_38:%0?zOJFN$yܶ[^sE hX\^ˮŸM7A.!c^R1­Lcβ䂭j :ԀJIG^&zabEy i^ Ž~~5T,:v)h9El-Cl%HI{@cI4"W]YNIU 5|/*D= H6iGF;$:VGziF9 h!- ˑɐ7Gn#.##ŝՕjNj `I3 (/ҹM1SkB11gڮ՘|w yi6٤R9u%%l}hB M?κ]z{i81Kjdҿ]zmpc@H[Ut#R oucÿ́,p6߀~\D䏋zi 2!zafk*WJ#wm)F3j-ً/'YV+A2GA&jhט1ck跛¸@/q78KzSK`\q_*|_݁2a|ֺc\IO0k5Ļ $EqhT8F=O6> Z(E?IŇ֕bTۋĽ0/ʾpPǚۣ8 lVMȨfuX!S ;H+L"s ՒRMMGWNLtK0GSȞ\h#U&RA?&`IEt~^r&oM!Q H{b!@A'ڞoyUb5[P/A,`AChi&#;G8N/]\/3P*]_`A_5?f]J`ceb֪R5$3zU!Ft 0id܏t _>13=Fpx䥀V/}% cfiq' o.N0ʪ6T7;{KuMLhI] 'c?v rȧZO.“jAba;u`OZжObY<3,{C`?,uҎWRAx~ݚK*}^NM5FWi gZy3wT ٥Q>MfZ[E3,ڐ~1 d3aLoo]Shqd {,2 2$AnjyyV 5 :o:SvLE+*w6/V_¥׋!Lv{L<$NۨKXW1@"k/gie %#kF&5B7փkoS }㼖oaE|!6fJjLXtRtI葕`ƒ/]'Nn<3H`BfSCp7c8cܧkv\My>a>/~Q.E/>%Z37|CUwX_,fMF1ۙ1U-h `!ZeqGZȰa(5 # ezdJiSȘk24ʹ;YǑRN|bkܜȚ L0oŃXS3wIXs.@-vjbf%#Qwϊ6ǃ( @->xKŒ39iǁ -Zڏ񞓉q >ZkA{lpdfޘ?4T% oV|Wą\+@/03H ]jAzCf qCȪ_jQo./q~QcDKO1wg+-!ȟ%dN;%(73q K>t.tP/&05櫅TӖ+9vf М}F4ZF;άn>&}km864׼`HВm*Yvi$^|,A<;$&#Sp{c +͕Y\b0=C=/yz岘ogH(~y%~>42͊(`fmVT;C  'Lj)r⩎4GVזV[JKBZj4u0<7‚"mn2$X>"%3w\'r<LJ6뻥$P J3;ֱīuQ}-z] my٢OxvxvF#߻o>AcWn k,"^($@Қe ! 2Bɱ'T PpT=K1ѵjoyDڻ. h ؁e iD+t2Zr3ٌ@=v.%MRUT 7K:uBQ,G &a*ZRQƿ[+E@_i{@8 ?I &se@eUi(D*΂7xJhD-nϮ`[=EY" AI@@[mn#ܦd"OI^SNVo@w2anUHnַh%tw^~^.d\e[b.D:/X'~q-k/}V , @r5G~(7_kȁ׾N!/`%~qOuV gfsGSYUw ="g zF6z$b?~u?Yn_xisb!3`#ځ$$+OE(8lV'Pm髄B&k=Cһwտ;>v%%]5#e#3g= CW&ABLL3UG^}XbqACrYOL-ԝ#p \Ų}lHE)1q'ׯJ0x?:~4꒳TQE063-/h8Օ>UUyFZ:s7 5?ˣB1mp-F}]V}/AoB7_V@umTkW @AIZa0#wqm fBf|V̻ADԍp @j G7ąUO>JTɆIZD^z,&?ZtY"*G)v)'!m. ZjU[yk H['${=|Mbq:hqh )x^/mCEbm9&/E3ٗ*՘Mz"YE,#<ڣI H/G:fj&>$ kō aCKWۑ{osU(O_Ҳժ~yƱ+}Ʌ۸GMQ0nŢR W5DJ_6E{A@z?*hvC!֘*H[-> k]1EƗP 52ٝh;ىO_0nXU0s4TeԵY^rԜ@~<9a Qeyз#>#LeJ"*BzJfBWLEu;ծ@IS/O8=%[ )%"˜IEaHFilyK9m4vu=F\C'kNI9iFdpF໪sM7%ٍg#`Iݽ?%u gX[3]x J|KW`YϠh]# 4$b !#e֜3OcuEi䋱>'.g S:_ $Ða"7 O=r~k㩏BX`.3{JE ]VM,b]v@a82Ṫ^6 P>Kzo t)loDmJCY\b ?9K8gtnBGc"ن 1g-Q$OЙm:c31GPN1)b}U&i]GRDe`ik *1D Lu_ T3 d-EC ,;to95F,LlUթLIW\v Bıً]l4KOR0C4췜ʣgCݞ$I=11YNE $'ya-u *(9^(Jbpo"l-؁[$ LY (&5O.{4N TX^CnȖ P6?Y|w.9$]QDS-P#NyBorb]sQk`TS~m8.V=d#Zm( heF睷h4ObawnTx>)&nly48j1<&l'eQ` |ZB\*LԘT<)\ģ\" ۇ7 a'j_B{$t-.YvS_qU0>`ں_yhu"X-K G1aˆyΑ2[)%,t?*/w4V ~4v4YKZ4cTO7:LC7+;|FG܈-ۚHܶ"Ǵ0V]2cs@ XN@&i-# 9 #ɝAR,.fLiQ!5@#wh%k1/d'_Y+ |VU#*8wNit}l P29 bpqY+ibG"裨@--b+-Zwy%};r{Kq44*2[ m50$9קld#Vބ<SMԽ+(_ZIzpiU"B.ç?4yWIgco_d Gj}\Du3pK5-$'Ӄ9xf_s|Ĩ1nfa`̄lhx\mq \ a${bjACQy|dQ_dKFHkθ0]j^ޙ ذD|H=C]dl]bhJLumFN+7% FKZ*&ylغ#3n^ ɤF5~a2€ W+vTWϥ/T[hsjEAx.y~`%[7O`88,Ŀ+&̡&5ZY$g)_뾝I'>2maˢimXZgL5CLKaՐFUӘvRr`(^J\!B>) 4,KHQt%op RplcHu'KeR7@94]iQxh[B H(8"eK%Q'LN^d4-<4V|aIny*vJ|[.2nnl 98!Hhaw|=_N|RIU?$:HCDE¶]PaQ`U߸˔. B'pQ,fު<;qnUj2ЖA@*\@>iǦtɩ6,=ۑs 9hJMbbQKSKXc鬾TBIR9Rfv0)#خ|‹;|Ix6"8#L|&~?oqJ@J:# !{;W$״.{#%P'Q[e !"BjiNv~ HUJޛk0l>9(,ne LЪh36N_r'/9TQF_x Z,7a>@A\82D]DI GI#C^ISԸWVn._[m_*,-Rkg$ZWa"}s`)W1lrvvaEp;jM̗CGARUYQ ,^'7%|Zus;udͧ&mc&NH͈ih/=G-Jw䌥8,CBn$۬)"L@/j!=HD/ .Z7-¿/j!Y7-rBǧ-f= ?U{ȭ@ML0aӀG=D?o[< eDž@M>I.ZmpK_2Ehw̐F~Y<џ[4 ˭ !VT?9Blߘ%SPR+B)݌ s~sOѨRLAQ9~Y}vqf1ŵƋ42yI4hŨm1 }%@5JѣH_3ZΐOpnYavg K@@?iB.B,Ͱ W1Y=oAU:'%H&Bl|pP1y'N BHƼIIѭѵnIt9~ 7uAljM- 7`jadA5ݞ6W7D`߾Cj iXJ]XBHzol3}#V~ܫ v& Zm%TrqV<=JV{@7ٱ4%qa: $T 1>1y[|\@Z0~1UYzr{iQI&\clsxIc&r[9Bӥբ,#rVzh=PFVo=l.uL^7,fˤO§hKG{ J~p=*̿",X]%4H`hٻ!y `QŎ7Nm@(p:YIaͻrRlz/xΉt~srJsSP"8qZd ϣ]& ̀Ejg? gaXO~Bgo@n0x\!zL)mH7h\t 5lo52r^ۛ㭏QhYNҒ)Y* 5ZM8?'֞>W f,qa Pr3R_h%KVy} ;h/BVzr*/z,ޙ\YJj˽ [B[E9X>p%NT:޳xl+6j994ZD r#7?p}g >7;$̺·V3_a)w@;E'fiH^0gb n?u;lG)N#ي , ݿ廑mp1GZ<%䃤T\Li.Vo]7t\Hk+Tw֛/BTtpAr-P)4E__6t>ˊ"m.6OPR*m*6SP}G d2 #\VVYDQH~dJv=&ڔf` I7MaZPසGb ̐t4h@^1Jěچg|TLA+>Zp`u 9A=븗_7k{.#=0*VaWzE,P^"A Yҭe۪O 9:@ ~.g dB^z.@"xhqcmCUEarW:Zh^g'zLƐdm&RT^XsATE|}i-N|:>cP:r1xlz}D3xduD5’AƄhj\&cZ Z.Dٻ>a@|mqkI}du,"Ku*xC/9h7Mt,yzO)|6$Ņ`4} Cq~N%45wAfJ薵ZlElcmʭEM*P <r"C4k^o|=utش{z܅]6!ZUKBcpqE5@|f oL xj:1'/dqKwLDfTPg!3%-%JhBb̚W vՍ M3UWvdf;}j+8ESt+ :`2èhX0|X|*J {'tZyqY\A1 /iLtK]-iXju^F&y:Iv&O6[g{=rs _zz/,n vW5OD\@#CX֫k6vf%ڡ%1q,Bo*ˇc ٗl۬=S XS?Y"&Koȫ)3# 2~GD/'&hqLic #Ƽ2|:T|ah89ٕ*בj|ɖžL>ڱӌ|gK5L|C6Xf)#TP 1t"u.:xr0(C>zytz)ڵ4I2+RVd\1~h{%Oa6A3{nI @Cd DeX13dAp?54: G(͝0+l־7U(-/_UBcC9hE'g{?z)gIS OQl)XH rE?2\qW "QSCuJDBש#Yѐ!.xR4@%UBkRNOOvG ?kc+u\~HXcΆ6`DTx|M ^4#lfCB<$p53h{CUiutL]#f0ڵ&/Yٟb0$D<@Zx/ q*';o}< GȲ+߫#cadG.5H5|6Dm&Ӹ:m 'W!<øeie~W:qO/Z܊b}Xh3i`pJzBQ08ov984Gq$w g"QʭŌݠPB=g0+>A{ڇ̹}.,%? Y}nmr3!:ytϷ?f935@o/Ȯa.$a1]4+l35+| g8eW! Nnザn]t7d{e 3-wp@>_Rpo'WPw&]m~9o ڽO/5@r pzcT39BdY(AO[֦M0x0 [%^M8~4JuKp|#UƸlYb&)gpэ.ܹi[ٟlj+) F6"ushkVL݌9]]-ڂVC]QY=Ҡ;IrI=1 /4ne_/|*Ÿ֭]I^nV(Woވ4s9Ŋ'ԋK97)Avq-J->e., 'X꟏ct#aP q+Z'n^VB =)HJ8rנi0]N=#ZA-&>%?8'ׂl0+LW\/N0l?¥O[C{M1:LIDnoځAhT'x&ieE󹵈=v1l.=zfx(8Gr#\BƄent|DpTâ#ayiXa?8w{qy9 ʌ#ru Kr_;J½EL|PZ95UeګcK_VL {H%LQWj|fjwSnP`j򏰮E-*uq% u13T/Vcܼ]ةֻϥ<_:3 &*'[JmWk5h矶!^EE*M䇧U4WUm#Dt8߲>[e"zxEw0Ly|7??)xv ڿ݊\ٰޕGLbܧ=G=;j" %R3|U3ST;JXQC'0} L:1sD>~\\ xL'Μ+fPh&UΩ?#Iv\v]n'MQ {Ш4@f3!> D}KUY6&FKShc-@QE]KRJԕ~E .?eJyP}9!D_exjl_ osl:F۝ {ai~bur.t?y ].a caó2DМC]7QI ʼE s亵?dcg/Ɣ'+8P}}M U # _');|+@Chx5 Y8څ{i0x msG{EKxfd; }I5o.ܭ1(3BQyR+^.0޺(h~˒4Hڱ0;,%KdmONLFFQ۰kXo`%AiyG5YXz¶p}y{DTR2!鰸vuXoQZ[{p.=QEaCCLTV 鯶bAC!Q3P纵^rX$6H ZELN6zgb1OU"WT4ISm06Q_r<>SG,5J#]Wo%hJFha}%`pa9GGCgwL|q1R5NJ"_ҽJՍ6fsZ~ļ7ҋEj\!0e(@dz?\ 5Cs!ڱQ!/Zn4B;E!Śa!5<}XY[Wfռja? *Tތo>.1Nde?=88MXnOp:*Curx1MMlҕ zp*R%c^ȳOkŖH^z-lcՙW{̚9 z/ P.M|FD#nn>nmـ 8y _,>l_#cݳ 7)#A^ ^fӟn*: JG5FHX!^OteF A* ]rz:”ZB{SͶ(49Wg]F4  2lf ~hJ߸)/i $B4a̒+ϋ{ְr4Q3di) tPo707rvs*N1'bv2#l_|+}玨}ML%f"/.i[ l#F͍/ YNw,)y>݇ Qlm|Efxp"s]AQl#@״^ҊKfΧno)g` ɽmnV<e Z'C2ȴc55+P+I}Mo| `q}l1MSgIa*0&M9 I ]̓ qF1svpN!,e(oĴ&J&?g[;ɬr&_ !)MsjU- $A!`TUe1K aT4qX雙CeDYeL]Ln}y%gE&MO/ n;gV}BͶKQ+z{1;Y#~6et`Wa T~-Zu*JurǏ1-9%4#62Ә\{oz:V}h21oH`R,XV;AXϤMa.Qr7GS$˒.a;^e/EQq<%%|s'<̜G NLܬ"x}Fc&IC2kʸ+ochj/@Zל{{nbl)־KwK>Ԍ `$9}"yyh[һ __~>w 9bu\ux-l%@:M .<֝f\[ǥ4ĥr86&͡[`H83!h]\3L&OW{:&SֶO_Ep|4њ+-BX롥c\]h8R˲P!B̽{ ﴭvY8#gߥ[?V6"[o;[K)monv#d =h? Eu}s4|J*Z^\'!LK}EL6\}߯%U6 nsNnqx;% &EUT7b8:ަvH O=ɑ.=/ҴC(9jn$U< WNXva:AHjQntM/[!X\ԢAVPކ_P/Fvb>_F)3fǰ?W|%V|a>[lGVMB6. բI`4Dʢ JE0<yL T{GiHN+ ;p6t`:;5XY\imb!?`ul|og!c "ߝAvI QP;"d"{Ws3C A'ʋUd(vdU:?h2]+|-ث19et+,a=t?i U8-N9TDXUX{O>;:2w-[lU>DPkk4^G]-ʮ36`Pg3 \Jy&  y?OiU͊<]q-D= by,i®}Xh[#XfjnONDyviJ dTCT'E:a`2R0U#nh"\0 sI_qߪT]VuWYc zr a,o91;fe))! xLfu*-d6˭p_\td@%I KRj`~VK9]|YsXW-Wm 0֩U\ "v1,`9Njy,$pu$'d , rqk5P>V"\&+I2LqaBdSQ1n͸sklo=[w)0|)ֱVҚН~_GTv\?Z}ӷ8ϣ6sw] \{0k~mEr~a]dfxkØAJ4`4`d>GgDDxQQzi7VHQ?WU*/dk.Zl4re||}yi·R𺳰 ʍaƝ'MFTt"ʁpv n׌l P:(eUw}{?Xjjl6e%"X 1a-G7De{uw3r]n q`B; 0s-՞[2N# +_O>2Ad]Pc)RWb qͷmqJ"mj}D!7z 4j׫Aڕ~+YUh_@m}VF#²v|!aK9 C`'%#% ([0FA`"(bv_JbA/EiwCĨ!:^r*Wp1Rߴ=-y¦jV QA3kR诎 =x>-C,~gVRB6Ay5Q\+,UreɻqlZoJ g~0~a $!_z_)D";< (EmE h^= >=t4vWlWӠviUIw/AV"5 -"9CÌ; gT V *u#.9y'{5Ez!lCg&!6)7cS [ǩ>muwjķ{aRg]@A@v#4B3o1xxXoiʯ r5\*{F1U-".دCtiTRxem NSݨ;D{] KOg.B9%K5ZJ1:;HWD73T*ېYYqgyUE%4ze>xƩR>mmb3%i65}̇Cm$tQpY=J~2P*p3n kvwE/B'ɠt0<ȷU}gԬ4Rk*O>WR uՏ#NJ= mܜL'> 5֓,J}%xїB9ښAIqf?bC() ۛ&m,5_Iٲ<p#Ss*kNc%fG9ؾ=k"Xt~>q=2 $L^|ۻ5-s8L*N_Jqp qTj$_}409!| ͚?rp%Ϛ(#Sp8\aydR ԝPgu~Y̔)͔@7K@~N#N, )JN%zq$82IBV{跽5Cԋ𡖒 4@eiO"z@0B{UX-&9+O'R lI2>0W2Z|ݝ:8V.H.M*Nwzͩ?h>{-EJD͔}bViJQ1nN S6A^FB9 H9$HrMpq_5m. Zott.RZ}#_dBr;+l ͏~|XU/eeQH=h nNP#wop`\HLHgj$6Ī?,!o }pw"TO%+ j*'Y|jWUq Ӽg0 1@eJ>ДG.hg9D9΋ⓒXlcT.w'L7znǐ ]Z!~V愀 Ϡ c_p9s 2N|v\<b";dlp}F-ܚѳNJ% }GuBp_u!U5+M}yѩ~y4'-z럠>*KKQ0dTkܞa;3?KVwWkƥ_5_² Ij!Mdw1}:&SXq85ZaXqS-\45qqwse,|0oן,xpYoi6i}Hi =:6?@K݄?6UJH R3v P"e: Fox=(\Dyy0n5}ɦƸ%+@YLT12IGiRݖʌ\P Ds :! qA>t8ƘPz٪}v?Ip$Ljzc$f ytۖ OczB!.Ż`|z-2.#N^M8MqJjy^8;[:"@*Wb/z8(|ssk-#$;+#:A,# E̢/ I^L7AA IoNP&+Ikq҄6/<ް`_`Q8ndj6 0ZEh|`fY_TY1Ty@)U{[7.T邞BDd[O}^!{g@'pP|JJ 3߿nnt #'ᭋHBs1-{oҽ-l$%DL#G;}7HIibT%xivMwz$e/z M\!En0ZF/'ceJ1^~ޠJ1#Y } :>Ό2:-0hm!x g˅i6g8Ҩed ɉD/5gd&}A˧x#zxcջH~˦up4dp"#<팮c)ݎrB ~:LY`M-vڰMح ɘжnkj6;#DeL7n.D aTY>nJqh;fEH0i?Ȋr$PӣUP @]ٗe6;^JA vLN :i"ek-%j(lk2:^0Ilrx~lS뢰 $$ⴈ(Mɵ9fzRϛGU-]v$}ӿB_etxažnOMi,kL[r[lBJ]ZJɧZYڌy%~#E~)(![G}h<9`L/ ja58@vŐ2%H~z`ʖռUP0x8|a\ Y䨈*_؞肫wq :FX" : @v^H`^8f]\qbݡxg^;Θ45$Tz:YEjxr!do9\]ud@W~©a䨃< 7ѭ 깧2k]# S𤰚iǡv@F෩vc`0Lb*9rC1mۏ_qCr5@j 3 v+,$h4 3SXs)%@I F/@ezl 9.n svRvYէ*I/0MGc_ؘ.=bR]m{"w*˫APG[+f|-SBE[vq*H%O*Te  k!XaxrUlFk+#NjVPb7ZWlOKf9z󇮖Cc:-٨L #cf+|VPҀ$IQQj63XR S{4zZV Bfz>40F6h{)52GAGF zben? jVМ `sZuvW>^/[?S@pRՓz 5,fnTִHzdlAj^_ A^ *T:S2KyaDKHd>^{Hxt,^빆 En|)}|Yrk)&g9GtCoŦH))V^K%?nںKɖhQȼܴsL!ge5|샡l䅯h5%)PL/|̹ϱk @ll$gU QTqU <}Yt]l71צoaTnd'pw2D7+%CMU(J- 93(k{0B XGN`y3 pV\ 9(4Z豜wQ"1ߤ$2!1NkckbP7 KvkGW `Ztj~#Q1e`Ψ$$N?$IՅ5dW}>PJ6yN:v6Sv?Y[`ZV 6XB^96{ `Ec^qj:pEAK۬A|cBT!w ?-__v@ѡ>jRV^^jT|25l5w a9]i #y}^!}>; Ou^7?f m)`' zp5ݭʘv9d\2`V!4aa'尣NxKy%9,er)D*Ճh3蝴Z&}Wb? fu͜-ޔYMOw-e[qaldF)U C]Yb@O.yWMZGn~{^(=m9Ӡ쌹]OcєM[a3Tʣ!Q\NU'Y+Dw|S4zŵ+t1mTqy:dYL(^څKI@xe +݈爵7qQӖ(AE})17Ĥf=3(Óg CS9,"Ƨ &e1 n\ƵIrM{4n؏I}gc=:卡ҁ; qK P(ƵEn|ۗiSJ}Mo5P~}GĔ_mJtqe 2&[Mh SY+\36 vԞ5: P`};4`ŁB`-j)4q]XmhWͪQH3ѣ@׉FxYࣵe .\( 댶N86bAʼU Fslj+ _Z6w{zj DЗ22'(cN~/bĹg1m^WeU*:i|% hi]RKp:XOdtmLgi@1ynvr/aAQaJ?-՞=Рy@ 4)=Y=%29m;*N]:St.B|NSg tX)"BZO8g*r#tSQ6sd,i~#jZ@S`9"zhk=A##pɆK'uG-'WkRnj^@(/;JZ1X.} YD`_HOf\Qƴ:RG:+lm3Wl6%z/s tL SvËRDG E}/vGNt WD%*!%M-`+&R_cg4%Xם[5˷'eȜ2)5R#g: wFσ$W =M-%~VT v{`1/HMN7_?qM\4]<.d7e[3mQ<\$v1l}4/w؛\"^y 1X_帼5p A!9WKY?f$UB`-&FKBQ~Dh 5x4=S $9>$q|xǺJ+GgC X}IYLП8Y ~^9EX͍l"dhE46xpHߋ PA~!w,.1Z+"s &5 #Z5$~1#ӘQt6tllXXs0b~}Q(;tI]t΄RK}T$G_,}wە\N#nаegt Kp{Fi_}z!2ezu O%U3q]mr'dY;[OM -!g } }>[F2jܽ|%ݸml. l͞"}d@1&snxNQ:?G anƩ3y-\$-;%rAdUθ6ث:_M۝ >:p099 ,/~C|&whP&9!C|ϞO.;;;a0G~2 VM_Б34`57Zpt)1+<+ !ZRDBi7kW,>E :Ή9gېUFt%oGyH%A.Ge{ia['C 0a SHʧ{PN2YPiJa4-dR'%͓rQV(Uyے-Y+?Ƿ6yO+0pY벘 i^tFVz'M2Q{s;Q>3JE,Rhqi} \C h|XKAFKC 0snG͋~eK4"?5yX3 4fM_[]5<%1ɝ7 ҕJ;JmLywEZ3͚?,6{2ؐJ4&Qu]Gb2@'<bg- R VOXNv%x/.uV$5`j -,e2mO()6B-%C'7@yfh7"lCy@XbT\Y+~^EQtF厮h:M.S9v1y5ؒ>6760?22 b]SpCpp&!Q `I\:-{M  xE6/s^PpMFZ P9UdM{loKc0h雺D rW{w'jM7ة7"l[8[{8_ S{!1% %ݞO򆵒0d4?pI\8W[T@biͭNr"Of%~̽2Lx{BF66}|rpD_+ Ok \^\( _N>*,B_  }'Xmn5wrG ,MZEL]}ItK]̷>gʗFCF"XiX42dq6w%3>iy2R%-"߈.Iyy&u,Ba )D0vx+&c  pmčWeU|9?{ΉIDp-4?Sn tK"Լj޶˛Rr -X%# Jq3׫V&| sZQm<]@(*BsAL}p Tksj ikyU2|FO%?\^gz !7J [odڟPOJа%U+7-h#Q b1K}xM Vn.~KW*0&#u`쵘dަMRTFۜ[ݪwj4V: 2ik6E5a/V>;@ ٕy-o0MW~%8)2`&Jwj@ع0&%#;!㿑qݰ/T2LĄ<}" yN5472ﳷjP`(Je:dkn/( 2_Aw,+ ^I婱9֭@yݵ1j$J}4-bHCrMJ0=3ɝ}4dGdnt9,rL|yQl0!Lj LGvAa|R U^-n|} EH./A&:0IXoڛ V_/*@x7aG].?ΣÑ k r콽)8}/.€gJJr?'З`-;8vZ5XxLߘvX r{Ĉz%YgS80̼,_2 HTQ{.g ǘWo7 Q_E,_b1v'ONst 뫨6EaGR*S 8zȯPߎnxK_㯵܅ꢞ3*Z]i&U?tXQ5MNK5AR{IʯI+{st0wԋ,"0L*3vE6 7}7!QYRi LX!*kiwxf9%؎d"|GpPLݜ-Q دywe90OMD_L 7RI6ԧ־?.B96盵 &^o$d^ĦF4b.Ѻ֨1C7P8,𘀚5ōNn3Ξz @TfV{$Yzi NBjAj&qE0<˜ ./Qi/ϬKXS":ذa^ ^Z37˄Lt'._"hzmjf.jY ~*Cߠk>Rjg;e0FFpz+g- r>}MBCġ?BCz&{ Ÿj6v Rv[;w*l B䷁nQ^gJ3'GD.i厧F/>ȉ5ݑ+$ u($4*N F6?8%yrJMmbטk-!UbzGjk|[.Tz7fcп˙Q]bҁ&jas*R>xGq4#-h䋳QQlD[oTOBl^Xk'@`/!dS}gi178; 筊D:\Fq|5j(X$-^mؙP(ewv:կ. A&8IG̓l{FY ?~ *O(XiO_[ڊgg#LPN~4_vBd&>.Ccuzz9^ ]:S.[a3 J 8C[BKQB+c]GtTnmLeװ RJ Nh bqr:yrCNZEO"~2Byt 7357uV‰fVDb#kpMH 0Wq<˻T5;z7sljL22 |J[ d9/BO;Eu]qfiGg bXt70Xo:͇)4en\vl4Ua-5ގg1D",~6iO7tpڷOI-flcn,TKQDk@DKNڈ Vc};'/ӓ^%4Ťʈl-WP~J+CO͏͇ꘗf[@}': ΋ۈXyOul)D"  {r|7vjIwk\ yƘeZaBQU GLdr~]?Q Ÿ:usяY] -&M"3X M,_"H`ȉ($zʰ2Őoxh,6,w/,HRU(,vbJQFDZ0Lꯉ.,Ú\qؽwpBi+A  aGzn-OҕuƲAOE& %$̾@cΌ(jvW3Ngշ7 sw`; BMn蹢8$U]ޮ/KnÜ3Wd~S"alq٪M_#M< UB̝^BktoP"hу~;2*(D)aa\O\׆6?\?`Q@=r~+]fu=I9ו{;=PH|1[cA n:+VfoDE?7c4uNihA~%i`fm8􈷉nB5*+&q}]VSX}/7CX$~m\-QP%dž7TJxݭBhGL\z NGr]R,z>gȸ)_e%thKn"xqc8NVB|)5MncWV@X)=Jr<)mD4ab%gW}$ӽ:'Vdvq4AؒɘML5sCw~EV.7)xԃR$dndYIKT"25||2n\a|wh]]֬"n/3/ ֠~>rǭ va=Qo8 :է>P%m{hő@2x]l{n;I4$*p;QȱP|i+'OX0}'o;cT'yN&ҫrB&[ёG qD%<Boaj9V-i$Mcaߙ>|hb sfAŮ9Lc5G{t 0/xjֽZ4ٸ~TKqM:XfWeq`CCԍ=YGS 2CF6 fȽiFO3TQ`i֗ў=jYe\\A@_wl({òqY Mί]%A@CZ`:F3 ?[ңB[/o[̉>FύC.65)nzU)V' #{udئsq`笘+ovh aG#ٴE(po4kIgKL(^EETn""8bk;;J~/XD4<$9'oeyWEQ:(`0XaTÛcIFp# z<$GSHD#WSʒ|WhA.|S^k0}UP9~c!h սޱѸ2jZLbt6]7ŋy-Vdy%no酂{Dx6zN{T=GZ"zZ CYD^\߲°ca4=.OqHDL*+sV_sᵑX"wTf{ q'Y!LVODc>rxѤEeJkdr^i,|.{7 `u paD>IIlxCn$5G? 1_e-^58k.¬XqyQX/1Ծ=̳p(]ȂEY4<\B,X^&C #jpY`-n3<@ +.rV/]ī:E.)sHToa/ _neɱ]Z;>sB LR0b&N8=#ӛdlFYm=7ɣّxy-{tHvYWWqROgbPk !ei`?H nFBz#G C.)xv[ s~[*yw}rgӛoOs-&fk ;=$i29pQFlX ǫ8d,!Vbv;<3hO)X>$9 cP"(*ŶjL 1 ?Grz>ƪrp㴤2dd}~sP`&,QÊO0{A(rgPslP[8 5B&O}.fWZ O,4~Hby08]\}=9P,9ZSQ9 $QtjqZf;=TA#, MGr5( /~3mY vTOq=#®+$Mjb^*׸J! D=~2UX~8Q$լewk@ȯcDxuF9 *H/ۛtMfėIN,mR!w+sWy5C- xc;ҭ E9[~1. Fup3DL2'Hcg!]ḵ1cb6]LJZ @#,݊6k!N2'yF&$ t1}L/@&Cm`n})'/Z8D!2GiKTĪԧ޵9l6?nKΉɡh٬'5#Qi8jug{L|sxF,`3s݂MH3ZAţ5?0ϭ,/y2dTJ?f GRĪ Jx=)ЙLMmRV%%lu)/a97nYa2Kd%?s؎*zlF5˰'j  L;#ZF|>gw[6-I95+Sd%M>L$t5Sc.[,"(D&v%mN2f\׍bs⇛7y[*;r,^ O81le`/;PE$~F_HtBR,r`u d2Dvo/tttdt>J޴ujT_Iq@w>X3 /v#$wtyjۓ*_BX/ٱ-DǯG7yNUI*A$|FCttK@8*2q= 'j"V-eooaJ;L_ZuzALsX0 zE$Dߤp$fHЦ"*Kto]#񱠊$š`xR?E N~s9X/%E ?8Q@t{A0 A?pFs%wNh1쒰FYaƅMWc{'9# =WOKqv(.1HxɬE^8 T,8/sjH]Rߡ My[41by&XXjJm5H d1 R5%|7F3d_9-mRUj6tyt͆PbHKK0S]߿oTCl܈Kմ GhY?ɳ'~y#)|lVvF,‹ﰥ-Id NIԨAGX]Lt&=q/nd ZsgJa9 a 73!ko8z? U2Wgv5cyyr(O,A.:r 6:,K}WPf7;i:~"DfϺ#v0kRDC1^#..1wIAɑ3X*qBQMdҟgB0Eܘ+*BXi(_mPS oZGbO;@f1:oV!1gm4ts7ܖ=pF,_if4ui2#0,#Lrd:H' aXw.@d C軳)1Apd'z%x&پd.$z)WP$;4 0xP8)xaHL_pDud_b"0ב;K`7S: _g:sl~fb95sr Ne5b96]VyN*X:Tu*W dmL]J, mc-*v0 3 ,@TYHgEV-\(q_ f pGwiъ9j!pHc7 {+>qf"Fkh';` t ofX0wl=^>˱43={I eUm3* d*RvD4-vj&s2QȝAz㵇l@Pd^?RP"#(2JǂB3b|lNvfyG FhغV7Ø&#r8Œ8o3Jp5~t0T v$بќ @q<3) ,ߞ+̰`]qM#O13M>b($0EhZjG,Jj EKM|2!^|?[k9_r.ăl4tOEY$vQ&{呝l^ԫ\DҼ.2u*ֺ?|\qWH~ӆ<wUzjyLj;A-e\`/C3%k NjCWդڵz:0hL kUhCݬdKF0JF8(A]iN|,6m{}RL/.]gVQln/=Ỡ}ˍ$;PTxO)mKųv<(E1WFpCFG]4cpv`#J[rPG.''J?o8 2Z=ApyIv d'"Yay()*/Lh.ABI?)pJ8媇Ljx}W=Я rwdjsJ]0wLٽ ~nF|^ TDÖZ ټ D%ژv;4:R]>di| [P/zp>O~$)ϣd$BBo836}ҼT3,uyl9"5=3C=̚C# }v=_z_koٺ[ Xw'ڋҤO+?:dW"Pd_~JVHS=HMg㭱'hYLq0-LĀq.XeK8FW4(c\ݕp D 2լ`& VV|Frp<%y|Zd}!9 I&r&aNK{E ܡfɓśLqjgG(KHj~_UZr%SjL!x֕=ĘNTj:ә3\_0] X/q(1~N wCKQ޲سxGg :CQ7jړb<1zamMtjNKx$LAh'i<>C3oc7f!|H کPj <ݍ11fbg!7qm>PӔOž&^֏nRAg{DOpΌiFf}cULݠ.I@V'=}$`(n-iC  1?f;ASp_ɺT{i!E:3I~L)0Ć8wRYŔ|X,>O0W$S \m Pj"dILĈJ;lE%%pP!juӓX~x{393~_ԍk@(B/JN4TVڴ$;'H{W'S 4)u|QToދIփi9G2/`IzbHW/ˆٽa6BvћɘAkxw Q1j`ܕP .ts{;:G5jRD wFKhÄ4GeQ8Hdq`1rbA뛺Ϻpx}g\Bky E"]Կv57͗v }Iߋ U9xGeSAiOBD9S2f:i;msg@O8IcQpBHRA)X@3fsri)uIt^}eb,J'i0ԝRVBL/ *Hkhes jUPeV[|B<%ó߿+}#piIV]HFb0FO@Dfk3վq@~)2RvTfbhV)&\C+\ZIL8^EAQXqٸ/ϸj>+QӃۉ- t̛s¶մh HЃ-^ Hޫ,f>DPfsÅ't{,o\% $l-fmr~5]Xauh%VaD,Zr> A_Ƒ֚"ݴE.j9ènQ{}tëQZaʮb *T5 ٢e\(B!yG:._͓VoT48wS ]~lk^eO3kXoMXa@@>YȪѕſKlRPs:?&A݋z=GC[Z>>o`~#GǮ-x}RIl:҅B1ֳ^G]߭Ζs3 ,~(h`w-5:]P)U6/h Ɩ<ϋU %Y8eR`'LyVg#-_?yF?/ݚҐG.N#P?WK6{TJdܜ3MVo'ɦue3;ʡkj\w7Q` Gl@*!wصWt2HHAGOj?>$ ޘz( `q ',bVL/(ps# )3PrgSF eGԦN-V?g291W'?6Dd'uƜ_4K [sM HKbCQacv7# 7 o+(:V =?F\msG'I aP: 06bl95~:j?B&]%S2AbF~4Z_fZ0Ņ9_.#%Luȸy%?ْQސI2kB6V  9ͺpD=t4 [71~5jFT[BEsL\\`N`Z;;RZsh$zLf,+oJLʘ +FURGSk('xfQ3U{F=6@4>CV^zM:,;~I)K84|DvoXCJ Ce.qdθFX]Sd+6U R> &ú]Y)9:5FDTZ+S܅R i|7 oRhJ,ʡ(.q$86tN8ڌieٚxүA3ٛ4>,4@(Ik-~j~AQj;EQk>Z {F(Ag|%}{!Υy-<(Q88CڄttFIQMM[*KG~ T .YdLH}RI ;e.r=S'Zc)hBÖBs!Zl[4bn9/[ 5:cop>qkv4PmPTZ@ld+ҧƤjQ+rՒ,}. @9yk8^ jZ 4YG;(k9m A}CLT7s($-.8u##7c̭އ%3BH} F=Äb:B&+DVgn6TRPF4õ'OW}DW"HUKY@I_}bUMc5=*QwT%۹Uy96>ԸNu{ X6‰Q*ל8,"'X {9YɄxs&f3 ]4T5zO٧~&L;C5FAǬwPi94rj+7]+hhoJs3 _OU*n{P~tTmC YܽKm,c$[\of˧/d INyoN}jRG,cUxm6cVg%cOcy<9(Gc!5tED<[0%$t+?2a>q/NcSc?5߉Y ̨,v%ix)VWRO^*|z6n x2Pz#[E$FCG2W} [!+k\^-Xy@s_]#l-7󌓅$l5nWC^i,j^I|F+u׷xcݥ`2t A$ =zݕHxl:}ZnF'&,ow96lY'+L*qZ]BbDL`_X;l!V$T1"3dLw4UίېE/’p^&4[őb@ڽXFs4K!D J ?֍\rO*,m.ȅzWI#V@kf0+VѠ|V:T8j ]{w~doy[$km 7sQ5𧆓 12!FбK>f~T7$߯tk{4nQ:eVzƣqЫs1soP)I{̰*=duɳh$k 6-LĂ tY`͖XD@NJۋu]J_ϠGG@NL`#nb(wW bP{}pW8E6 ZmL~oƎcVEpm(^LH@5oJ${C~2GWF{>K!!-vTZ]ǝob9T;r MyԂ#{ʡ;]j~÷Q_/F1?4 YJ!t^L*/8ٷ5W;xwaRf|F!(K"m!ݽRe =Wzݘ~C]*&C휔,FƑXy5u4,W}A ;MҊ |h_Rw@44g]bb.UQxHIyҬF>qn2Hbw`H,D\d JU ,/x~6̾ǵ[&Z!\ I}+]D>FV ME;(T>&Q |liY#V:@Nyewbyq'*H#d#Afx+p Rc%n5ީSq4rvpd4_Phe.gP􎳧JS!.7Rc&/y|`ݨ*Øjq~g8%2s=~(D;wSmǢ1O |ǤO]Z]c@tuY6۰r¨PS0'QD]72;S蒆JxRݮ#.%v 65R{4ϝk^P^3]WNq`>6"2_ 5@wy!٠{)} u2 z^WЃ3Z66~׭6K(,Mឡt_xu}5'Ӛ?IVE bqMW$m.A²{ qJ"*  cC׀zO8ȇJJL5j&ߓMW\uפ8QE:SMU#Бx_Y~y\p׺Of,֫OޭZ5 B&Dz ]V#LލFqK8X/1TҾJpwF|٭`B~ x[*Y]a R6 _fO)!9&rf){ZPG.c2]?1?yHz$n˛ ("59Sxw9f/cQtvGR+*G eY1C|P. *doy{MV`kfFH54㭒b}"*wVb|vnȄÈxƘx2ʊ9AKc0LWSf4~[]sE7Cs9 gN2x@b1*29i_)u(CgvxglI,J] _Ɍ*rUPIIld?G4a%yLO/ &w2!P*m4T\8?hFfcaa9O*MpK|::<:9x#DB))X<ERj'}] 7-<ͧQ{ ŐRlK_7\ks-v3b+ؠEs]zwx#HA+\2` [27Tvs+D}P4myl=KoMc:wZXi>l}Y/^nP1/tN=RnY} 3|(+O)uQ3T:G_2ڤGˁEނ:7 yk -&D;::P-C EYo~8m-U\6.K08ǼcN'N`ÑGwߋ7;!dqWBmY1!Q8DCW9-?…)*@"PLw(e%˭sՒ;ڤ*$A|#qQlel:t!1)1PCT&>qe-@/OwլP\+`6u ˬ5߇m _jniEapxw:9u IJ*ڳ h.`2~eҲQv''2=-%8Hnt 9,7JWsg9NAMZ { 4ZzoU(,teՍwX#n|s߼Mjּp&웊T0}T#F?՟K #}{bD7^G8 =JY.J0E@LuLwwP272K Z6(-{$UL_ԎC@<.kсuow.WqA# 29I%n ֹyCװ%c-i}dc)Hʌ оmIĨfwya,u~ͨNm1_@N\Tq8Y]c?S/h*.KeٯXiAZEM޺볬zgfـhzJnEai;^5{@c2( ڞ7QiEE fbOj@G-t\+qI@,_3}?;uՎIE ?=R!c4a(xmOyt7%@4s#wf&,}PT0AKAgIJM~/Yg_M-Id |f NbW,'" cٿFahǢ r7Ȇ( =$TPQī ie_/8䶘_3I3d ]QP2[Qgb9*"y-{]fVrȯ/p`Jyzfborj'@f<{ \\lV~ykd'`9+؉Jo˂/y拟-)@86>>U>w TtM(s,-ɐ"@4;\(<߄mil$I2恥%xIj)bE#tYp(!+UܝƀgE8Y mCD&j RW% B ~4ά%/eP,I@+phz.Gpqym2(?"P|!_%ҝ@:ͅ`Cy nR}l U7,7 A@#\n > TTQdqP,6S4~Xeeq9*oi0ZV|?%+"ֱ982Z ";9#~R]} /r?gt#A]QY]<-^ 1~m;[s!>Dt;(mT.HnGie 6;e5&inmj:a09.z0rN3{Z;$>J jBMT=y:idbO鈡cR^}LEî{/*:Rt%nwA* 9ї&= IqSPzq"Dwݪ~rɫ^$ʨ:E1T@|9J$ MVƖO?]I"%+?QaR t5Z+y>Ne;$`,P./7Mܞ ҵX CE|PWy =SF 6zuk?3zᏁ&>O`=`OֹKJ;z%AF;=|󗞣P9=B֌i?_S/BrZW(HƢ˷CO?+FedvNL>A׶ILJƒJ^G=34ϰgn(īDe~ Wu(PsHz&:51#: $IIBSLwڈڙĻ*"jE~ԱA PC|?l3P7igO$N3j`n3)sqX7J;s*F8B \8O:{UΟ̡\{]o[%\_$,E$=Fi=3-Dr4`/ėJ}O9H?Bi9')Cuo 8PgYjc}_PF ӃztP=v J+/7۸y Uc:[ҩ6eD)jTIS:xٲU>;IZ#>D6('͋&h߽}\\ZI G;M⻍QWCfڝmI&*'4nHJC m~clkP:gkBg+8baL=FjN/pJ}4lU%SǙF :a5+eOB0qtMDTrDhjk' 905(Ȯ9vƂQ1Cs/jo4z!tȵ/s ]Zw*j>y/松XBR kL4^l-2EKsd xVX4/1qbDh _z\? Jqlҳ+RmK>ۿ fę-65FVn7?L'ʛiPmcǂʭ+v Hj.˫C_E鼧Im̩oɄ5@?h7u2nILrj#&R3nz!Ŝ.AҤ_C7ptK+K/VB% CyNZ'O\BWА]wc@0i{zZ=0Z&EhlØ"OoLaMzC᩼%R^ބUgVu)_AIɛWYFX. Dcty]mWh(wm5NLX|][YO^?_y$R=ls2tW,~n)Ncp3{AXɞ?ꓒ0wv6K{/ZQtR4~nǒ0a-P$qS{‹H|``YU?sJBe+6yn1M!kIC1u?h±y'П//dJ0pmBS΂D9LA"-Ts׻[ߒ  7 Q[tND8ֱ;T B"ulDIw BXV~y 3%N`z'7ͥJBay+mPaDL ^c /{?Bj4<,*`e<FטGʵ٪cz4XICޢhM({mT˜6S#6P~T펎Q~Qωo6lQ l[匴!/Ϭ,Ow_FMeqA1FvDXP ۷sSINri_35뫙{s-sRsq!$U`U-aTԭ휗u0r4n@sxaEAI=aPh_0߮=&<2Rnp-4T<}G^d6;δsbv#}d/\P]v,x1`\ː]F3;)|xjyEiMIZѩFlف7~Б3$ PPY;%Ex Gp UEM0Ͼ&\+YNc:X*Z1:x܄c@AJοы{ % {bz_>5Er5(4ԡ8qhp,Of^fg>Y'\^)"|bcY.F`xqL^2G[l15) H5U j3ޔ-" NP}ԝ,G"؉\!W?xl;m9~8]VԈKJt-T9AMN(]:6zlFT_6 Dkxa*v>5=CNrMW?7,ğWEK<<>J={<48.cl1V3g J({v!hWmۨ7f&s%K\㪱A_)9`O͘ދРOXLI>1,&fڐU=e\VL_{Y/C1v7E P?{FO4(E1;*b~̄g:kʬ5q_Ͷ3XxVWAk,f ]p= )ݰ1D$Xh6 DR,'p{f֏G(8'g# ώY}-ޘžYuPϴ*­[G%hDVuwg *jeנ'hk#%IKޭo17֘> Z}bT{‡-` 2U.+&/[?Z@Ir冂ƀAy[!z,:?~H{y֛KklwamE:.hIw&x&dX/X_1upLц7@"Zf[~3pTcR雞.Rɑ\!θI0X]ޤr<)j ޅGMl~Bg1{$K' s3 ^.V9\R~?YrC?~2{ H&3޳,F|dJH-½W7DR}XO2]ȅ 78)2ο("ȓ.);#۵x= :]PLev* A87@(v3aZ$'Q0=9K=@ mC?Rv x{z[S9hWj l, sP'jBwJW7:s}nzxÂ!Rcv108?Yi3粙W_uG_d~KjU*ZTǃ<oZ[`"oen yp ieeRNAPSCqE0QP#ל /A9SIb ND<;'iLo}TPw$[ˑڜ0#tNqZ0:Av e /c $ubPp'L52+ɀ7)|Ny 6G}l}y؃Bl+& P/Ȃk)!3K7f-0 >3jw(9xRZ~S#MqL]Ը3[hHKuƀ6ÓzW Lpi%ly' QS2G~dX{5bJ^Fȍ`vT_}0.F߇! QAAf#qԊ8Cysܠ_zjꘗVwG ȪbpإJg?0NV./v)lhٞ-YrP龈wt f+c/5M$&!S:-2m snnT(:XB@I=Hz O۾GBI=6^䐷淟qO.h:VT0H`"3?ғNɿYžA3XTݳtP3Sz}NdYvR@zbHB@> t>%N f;pʺ$/v>+LRfR D2N^F & 1B-WB8ZOZ `-Y]6q8fRTyxу$W0zGR1r L>):,jf; Bi'/Ѭ 0QUH ;,*A:{ad5bї@5'mZOtpVn^0Sm: &nqԣze߻7_!Hh (|IqZV=SsH9RG+y׹+W(VY@<MC;eܽ~(lI>IWEb%TWy>THXkv̳i" ?WiUMyԕY hQ ƍ-s}`dk+d4 |D|8qǻH1dbX+%6U,%gՕPfXi8b6PQ41w^#+u{蝔D CLdl+ZH (a~9{j⮂F@ Nq|&|!KH^=8g{,X5m˅x]>e>לPnOt3I 10ħf\Q/UC)$U7ÅKE4uG+17U8mA2U&iuuXG&r!뀋ü9p,%#Cc1aQ>i\p4Oj[Mh>s,rujpv_R]4ݑU'"ICC|Z@-ؔR˲(T 73F'?+*ֿa:,~-78)_W0؍l%@6m=ZҐx mP%0sCa4isS#a dkSSI='M:mA(1$l~6,#A) r-3#{;߰CѼPT%(פd1OqT*6sW$V> t`bc 6H @fJ9GZo ݍ H씜֜ѐ:jgHHaoH`kaS0#bz'̾aTaO / (ǣ bƓ1&2 Z;6]`CED[F|64 dwS[5(i*Yկ0>#]NJUA=ΊqZQc UU,=ġv*ZXhūV?ہu0/>+6|nM^+t~њ⺦v)2VUKKA /!jKtA@;/vŦœ䃡oSA !ʔejt'ßܳZ&=R,c.LN.lg'p'LmYrYHz/*Wr>,pa`I޻ X1.d?޵oE~9͊jiE6Ă!'2&V&ЍL2q@h;rijƺC I"k7Zx ij7D^O@S@GϺd4E!jtW!p57rYѣ; K3 6"k9 Pum(xb< /qG[wꈫoE {wp$qDwwk<9cWT9O{x) sx¹g3Ţ^ASgd^#KHF wtI Rei*K@6;Y HE[}@l`}8 ʴeXdjLSAseD>*|; #mp[ΌiTok8q#)e:h ޳kfX(:T({PRW0fbZIo>=UQJ uhCO][I%l1Cنou׬j2߽ݝ[^.OIfz򋬙[X\^bSN#$ĵdOW yV3E/:p?w̹>:؊j;c: Ѧjo$מl"h": f'7 dN[2ᬄ*Ћ2*jy" +{Og6,Öؖ(x{`~W1D(XcXŸk/;^~|Q$ׂDzsYJBZiN] xu+Ⱦg\Yt:\ `lV>ycٲs{y» 3= dӉP2 +]$ָ=.d>4xt 㛤g3 ]  v#+p{ުM%(_86K⒟\\^J"Uv9>As&#㖓Qγ#fI-'ZCEɂSHb}K^rX7Q/ ZU0f*'2Ŝ5e*ψA! ޒcuC-XRC^hHJ fv-%9(L+ @8o3b{.zU<D渒 &R>F1}mBαF7ϊgdba'olI5>V"-^4BV&Sv,։ۧ8ƺn&K,5]s(jj42t,@0}1XZjE(rO}6gO)g1׫|,Jb bODDǴ*ьCMHj}^9QjLQC*^>?0Cݾu#?FOۅ: $qnm:FJkVPW@K7w]=C;lpIuAGן 1h>f $PM/yxSucGYjBW+_Y2wb0Ԫhyu%̉'5ӗ`WY?(C {{5 wðRpDzih\1t%{hyUPh{お88-~c]V 浍f .Rʶ^4km.$Җ`SF닛1z+PT} :DL)12ED^Ձ}]M>ĺ?zKW,/K5Z]݂<wQDbDk29bȲ1Sxϗ:Kc¬z*JP~Mm6CϷ[˕!{'eE{J^w Bs3;k2֋Y'd (˹gD' G3pdvGk.=J*X׷a9Զd\ )e'eʆ NЮN S.N㾝&.K8%ҹp]`2cVώ4U-`tYn&?bz`>]l!Ro!.hM2e!˅|fHTeRr-ME1h1`~r2Ў5[R,^Ӵ [s UH,PMOK>jkY+[\Ӆab›H|Rojwx 9c:c/[!n0iа"huc̲Nf1 ri NEn8m7%CƩK!k^{)ٔh%|NwqB7S}G<܆pDϳYErIcBg`ۥa. > Jϖi1 <*$i|*jUR_p底03^2NM5Hn?ZoJ90$>mN8ypGlCڈꡩ-];z ix`@rf-H* fg_6W==46ߢ,:Kq^~uD,>2=.sɶsZR 1ݫ/$A:!5'aFp9J챺5Ja&İ*@E.'*I\1z¸ezro+Hy<{K!!93`vJ\ 66^HÇqiU>*?uUӄg^Ö-[OF)٤&`.  wVewJ )Bfjٕp 0+ ?Wd,2z֖Ja~sI]oeeLtRalzb>i>Sa_!`W=V !;{9Cy ?NX"]eѶqɛ]g3>u3OTCMm?73JQ8'R{9ԹrĽ}c_AgޕG ]k+^li6.J"rОzD#M0Mx_ }VC"0ΉDS\OX.;,Ja'Y(opbi.ԹJQZWg wߔ)96:L4-'HiydyDwl*mSxGkCkmurǟni#0mp Z̓T[ѡk딷k>BՑ(Eg癠ͣ]D=ye%!¯SQވC`UtBnyO5ɸ/ULHXŴR9HН ְLE)^l5=R,'`0PMR5ǿu+pY&,cܘA2ٿ +}A]aK-:$o G6^A {8( ;,k^*jŽhlEYS}eK=s|5"8l oN[ TGh,9 $TN<SBHuc 4;,fe;9PxnD5V 09Dg~Qh`aOON#櫎ѩW=hTA@Hr.q^~}åS=h?fp'Ur@K"LrYTt+9?/I$W ᶃlIk}#U;yg^%rM@mk? "T)mXֶpju>VL#Kw)u޾}$=~lki{]a^Gf -*N҈CnVΗwD4E.4,Q?]HI7 [WFfeF.A*QhERPTK#)`e#Z)S OVU_L*4Y 쀖Z 8 -R?P:: |o Ru1zD/:o) C$zK !gIü+[Ae~/%'"]&=<@hVEP H?e,wi$ai)(ť58šzw$c̵։xXzlK\<}:Zb4DUr6d惥9G|nV@kL$_\Q2mYhJ­ WwJ(haGqN'1Q]c/%:a&Qy^.襊QO?9ٸc:GB^to-y(J/A=Y>si21`.'l,2P& 0svTAI6?l3 d]8;LGCo2D&~6!CB:gpƆ8i sG+7e;6%į}iaR!1YIT'm/XC(ˏW>7jnuVq?An>k(4WG ;7-EH1g9ufŒ+EGD"{9pa`1@2j&Юr|X-TH5/k-C'6ιsޒW#]px93Nɚ'4|?r|4&''/r)g9"eeGXtgж[?XdޓEj i pm&RhL{/'tK4גtcZ(Wqz3@ˠUw@'#!\pM;A4@,OyU/D8t1`==G]v#bhb:F7=u.Sy2%ρTA ydiJ/64ܳ}V*va::s@lA&%'$^{iQu]N ѕt÷emi&:nk" ȢwƬ9_vv@.]f/AcF4d'{+./ ?J)Я>כ6`З o薊.ÆNBW'(97p2X\qɨ?-`2J9tG-/yipۅȌ{9|P#L^g(jK Y,CEc[(,)xdj/ MM$&}9 Z_8CKTI)g~ Mwf`@)*뭪uތQjH@۔<n<Ѧh*c0eڑnf  0˾]4?/GŒ2x%܃eh&t;7#sEQ"ԟj}> 2]bʈ"A|ig,pj;"~/<":g+ҳh0}(cMm c+Ř]Tn L2E9&^O7۬ތDPօ$|Tө|܍1 Տb"E-LoTfke>Dko*҅ *>4tFŊ@+% 4Kj"?-vMza=vI Oiom?M$N466+,k ;K4Dͫ! e̲oN`!/RBrN+Mq3pJ~q8[GQTj_¹`JuSIg:٫cv#Պxb|_]L۴n=kTvbXw_{\>݅.zuܗL)oD:.lH:m Ԩؙf Յ5@Ay] @Tv{>~9}`k?2^69#侚U@M:EsTNs2:B*| Ĺ \Aܢ-|3Mb$tV^ &"|>)Hվ'`ҷ`'wgEI{%W $;='(۽s~{{7aZrsIAio`dx̖:^kr[} +qٔO#+lp!6Jҟ"~J/`ڃCMDS5ςLC_rw ۝q 0gW~(겲h2%J_FԀT\~\ >2@\Ի">֭w5 Tb3սjᆪU`>$2\2}L>#<1Li#)9R#TXL<|#wIG׳j܈1X@KUCVgߙ#|jSXp$Kl -d` yeCӡ{2۲ Ѯ&vN$!.hϝ:GY{/q$Ȟ9LUL3J3 W_wyJ<ʹ 5fĈGA G~hQ5>O&"f}ݭC!Ləp yy^@Oj #R "ȸ@# %,p7FbAւt+A50JqJ"-hqQRUL$?8 TYPY[yK՗pZ>* EV'\9ck*DJP wn?_Pv5@)ÐX '!|&y},Πl89PFbM,eȁ\C&76o"`Y E`II-."6E_1.?2] 93y?pů;Mr^ >/^_ޤ'0Ϳϝ>rWfpd&j 0N*iye'?19 vڢ*f c7sPT\Eް>zHV@m+FyLeRpڂמaJ,f-Z^B\Ց-c*Z؄7oF ~,${VѤy_^x^4xьD2h%ըee XR@_VĈ7ߗ$P *?LpjM=?h_O(3qRK$s1ҡuɮE73e$,Ge?-$V_13yj1Zj CdJ?l/3laD )dipo=R{6nr-fkD|aʏ!/q +|ҷ=E؄)!ѰŖI==h{Ru,+o׃%m^_ ZX)*qks:RujIPINf3%d+{%6郔#8}4)Md!0r<" zo>U2i ̺F˵=HVU64uFE!+^4!“1'~Yk2H惣YiM0/%+3MD=Rmzs_?N@/ABăE85i݅ =>c G泓I&_cҰ]MxIMQ4+͞ʪϯˏky@m0\j3PJ)^?L'[8F0n`?р`TSPn;j&oIH6|.5f/&8 /:r7+ohK2 ]liDH$ 0Yj"ަGjyLn,Kh2_GJ^޴%NO`i C=FvRYG,vAP;&f KJD )A}ulN&>n ~wMߘBɤգG ޻2yG'}2[Z1^w_;1DWri 1dqeƅRC-B $C~qD 2e''!.?=9󽳗i}Ew g@9T\K,fB0'%C@\B8d< T6! 'bd%_ǜ0zUC@ i6s:ΛxNjSk;Q (?S-%r֦C$%_V*4 ;1h3ίdT|IZswD⮢2>s=?goWa[gL{}.tuZ?e)E։ wW W|y8ziϖqA&; %|#4thc`Z,mDcy,':8wRL?QkfpMo*td峎ba`WnliGbw(?G]'tuEj_ ̪x.V/AP̅؈I{U`c9u/eg72h[v+q]A:ܚĩ5M&D;΀wp~a!,kOQjJ~ q',v{ tEOhN[H k$?C0ܩރ4u+Y3?ˎ麭eq[Զlǃ޽J$I,! 3uJ+E'?ao<O qkS2e^oiͬ*w&8[E}/L{(a`8tWԺ\N'\Ŭ5us:'뾰lShjJek> J|nx; ER !D@1%#}&9TުR+&1dP}nxCZ)3 \p_EHKR9'4vsm0E]W> Dflgd`ĥӽXm8UgFݦ~Jg~5eN1\9Cdy*?&Z )p'u#|&;ӂ;Kwx- ch=D qm y'U`0>xbl8MxqRYV&cg`NB]ll!ْ9n-LTFl\Jĥ-ˆ{Bl(HG(|QxIvtFEr8-JQ v"a|>13y~(r L{Htd{jZ(1DU:0IU eo7Q6s~Ӓ7RF' ~s1C:,J^wQ'zz_6&h+pL N-kWv? &6W FT@ХH?qX|%yyf*b2~Ğ̏qxċA@j{k+xQݜuY^zH݅G3s Ō+QD=%QW*&k[qrpF ޻լ;EYea}8T^@Jf4/j Qǚ)pQ[>CANoQT`Lԓ*#DLGG&oF Vw(pib: 6|fE-Q|9Z]:" I*Mz# > a[+c6Oz䳯zdcNKX}rެ?aQ'&FrVOx!0]K:P%!V |$'Q,LM. ~9u {T#LqgҶjaSrFwξiź@e^_j0mMFr4֟c^OCY.#4?6Toݘa@EԎjܴ/_AN0Am @A,dkq'q,soQyT&PBd~iB%''ުw_#brb%g*5ب~}r `0MZ/jӂXvspd¿]9hq߿7ZjГZI_؀F kf"hR[ ۪R)M7rkF.n@Mƨ׀ڜsDP& ;َ 9vcv鉡|xi["|d'B\x( OT3s g-ٯaOD:) oꦁ-a W6xw]\,=C@ǛPɂ)usaкi o tG`Ԡ"1}ivؚ'ds:]vC0qrCl0δ欺lMjivM=}Ht QЗ/1]CΠ" VؓF+iSN8XyJ>ԷqX[$G)6~;  2xO[hu/pٌ/Lqܦ@CDWm1g( /e ˉZ2NtrFF25~|2Ady02|7uavfZȀW B{ *_GOnM# 7x Z2S42Кl%A9a0\IHqcFK>#c H fkM#>hTL6"֍vZ!zܞ=A&Up,oCz_4'Oq,uvwaoOR&o.X\u!9lN|YEؠsqGfA&+Jwi2+ԆIE2)~8]+LѠdTuM߃ IkX<ʡ'΂Xuvp ڙcȟ$vx :RY}l;g9'B35bK8ߋF`ׇjw3l+uwty=:\N=[ ڧh hMLY"y26 5BwlEJԩ硛{ 3Qַ"alca͵hmA^$^)RQVۼ d/CpH|؝;k"y"%vG9!~wRu*A CJA}xmF-Zwl.TݠzXP-Jx(~B|'376t*0zGN~{>f)G{Sa7,0ue_kXTZsCHWX~<^gވ8)qa$7MD.uz]U(hؽ[͵hcof:a:eu; pt% $Te`ǃ))A& hebx>]Au;iY.~s6ArkdL(? yv E$:b@6jL*vjFU- ($ ݮ"AK1;)uu\CX <'PI֧ͯ nCB,eG)9#Ø1qq Gi$ڟ &.]yj{ҌfVbMYJC]u#@HN_6< B2gs4CU@7>c@Uώzx ?o:ڨ<I-'6k0Օ7ZC-CRedx'gW^a-$zx7fƍ\զb_]yGa :(GV s4ʗˤ̾~g$aΜBd8kWD :OI8K]Isvײqp eUL#=B;Kԕ/v )1JL}pԅ҉.GI8@d,C-|[Hk{ڣB#^bC R>2m&gx *UZh&׬'Aߐ:Z@J'-LjOMn$ҋs\?Y5>m%!]|w6_N~SwtCTܑEWiy+@=\DT\אlOJ庱e&=X`A/]\n'ܾuhJR0{B6GK|/`b?p^/l$zǯfRP$듂2Q%1=[TcC^ i\N@P |G h2d^ySZwP+iP^WcjwlΎ׉Mww%*K^ZB]N fC^%o`٣6E\AT|(;eݩ3:빕S{\tjJm Oa(g{=S];H*;d+Zs@ 0Ǟ(t. '맴^x{L0l/["ٟ]-Z(`gNzamη@<9:c!:vZ.vC␊y.2vHYThhKXJm% p\FOǤ!:n %awVJ'jvB 4W.1wP* 1f CbR]FFX18UF6Qran+9#]Ȓ8;9}W x˺ն} I |tOW0 h[Ei);96P+1x#PnMf ӰXcOVa r/>T6Nf62FmXSrk-~)΍Q`, +80W ,\8 uH&0- AQI[߿?''lDVHɔ!~ύjf >&̮2U<}"wC _J_h WIHxqy)e<3`OW| 6κ~Y>3BR.Ild, ׫nq JviS\H)<":s^S;[*VOV Z+!Cw {R^!Rm/ *rFYFbk'B`ES~gc[KK/L 29eƉL<%Y<%6+g\fj72bk:]Kƅx Uf/kVmNj5*`cD-XK;7< g3t`'7ě7(H,1ȸdT06ctV3:YR߻%EYdB5a͓txӣ{@]|LY3Z顴]V7Ldu]ѱ8R4$Р`-⬙vkpS7>&g.>{"[k-6A\EMXԮ.}|=0ogL{ #ȟd{} \%^4GawwG pkT.o+]6: FP@z.?Z"؈Jۃ@|KrԌ6C؇}ݑ^30en EI?B\My PyN~C@[+NMnZc,=Z hR(@( .R^wcELʴ/?># 11UIeV,VAgdU M@[aulXs9j-}U>OJ v EbKM3U%r]W皎lA*5x tJRm;L/BV񚋼ڸ [ڥQ6- =3brCȡM9 p? 9z PzMUꭠhow[`uoXw6Ώs^T̮> j^Jn%Lm].z.QؔҒV1b^eE6Jd{PF?[0or3(& yJǵ:=> 7LU_}wq}YlPq !5a sϗWf_>LFG^PyӴ~33kj>0;P9IoniDC깬eImYWK|ϑ̧ f:W휾Rc!VVq 0:uKt؛Q{v}npLLňԬUʓqX%;y8Gkf f+62_3{*(J`hziE +@k?Ω9&nv cSQܧNX<[&.+Qx6qNǭF#5ʖmq1+h[g^>ip=UX: GdvY.`n!3Ie{sK.s-i.&n7/V汲)hbt9dP3+z%{:y[UbGQQzh0Zjh.q[FXƻzw'Hv #˶Z UlL`HMK!qZ^_31 nV N,S4K{9?|o*T́8 K|@ǒ4̒S&̨: F:r=t?qˆ܉5Widg $ KaIZg;Н20 kO32"~t;DHdlx$T)0bN7f5Gڹ@3X*_%& ^YyMBe]HJ+_ U}!AT$O+X̛O9HGXrwd]d" FfUvs 0fW>*AG&cU%J)U3x )dm\goZeU[PnsMqr 3VZM$rt癸~:|$͜m Tm)X] 8/J<(͠dPn;T3?歟k՞/RIJh,jHRܱ Տ Lj946n[!| ҨBt|0 XmiTiJX}WͩWmyR@Sޜ4%pJs$>A/.~NzOk',i^1w:К{i{Z^AoRHI/|)[D(52SG.I('B][X jb#'UW|KOZ\uWtA jam JbU5A1EUO:?~"]zKMGB񟯖~kfڬچgn<uo5DKRdt=C9R& x?KSRe3% n[_*Z=G]?-\mE(8B+V iRt"2"`'.Ob牎}gĒ4Bk2t5`}]?<.=8`@" |j7uFoOTWRݵNGolלҴ_m"֭G3!weɺ*މPTqBWgBSS|9cAfX)@A_ap:;(z\A yCA JUH˘#e6֚W(@YC-o=!Ft(N|qs_')۰3 yS_ʃ;z+b ) Y.v]5`C݅+Soo-'[PE=,2$ǚq.V8X? ~mKBM ⸲'\n묦ݽń&F 3B!5 Q^"Ew 'eg 4dĝ>Ћ,mfPn7(_lMBD﮳nK <~2!­ @Q82f 9םMa$[;sT*S.,cK0R_Y wYHTcE: `:\ XeabN_R&#ӲrvcL@$- Sq;[tp A)[6עc7\ݻv23Qm X+/_0]7CDĴ`,$^`y`&4/F_XIkjh{f=")*@:ah/x%$L'DF搋u{)gJ-&|X_z/T0qzoW!+"<(Se*y\1-otm;UbNIL0P oБ7^dˁrjg2v3i pv9W֑èC_wz'SgZ[D'6)L> s(6\"Zo O:鵗SWN٦8QE8_W]recL[0_Qv#h,8=jl]m5txzs059 @iMFZ8Ҝv)/}T#ybn@sM2bbX+ުԃ,_p \_{( o[&%˼<+v5kVj@ 1t;C sNMA*GL4rH)f70Wan!Y'WJ9A@~OKQ[z 2[4b=.rJcL+aѽ2g糚RX 6(Pbr tf!ax`OFc |v1rTqys*c]1)nn‡ႰJH!st#XRr'g880\X6V5"v0UrIYFLAF8#-j_6~%t!"gS($չǶw)~|KW{w^+PnUgIYQ.0?aZ#1M dR^lD_{ wDKyO`M*q&Q>T5`#RmbUQ~i1[^HkG-:i 3Hi(u4L w߅M' " $BxYc\"'6O;GU8%M e\#񇊌x<~4ǣ$%% a lg}jy uk#fbD!x:*2$ [!^"G& !aQk쎉p2kXh}^D>*A.@N~j$mo<Yڥh\(""S~ a[<Ϸ[UaB1M]۹Cە?ni*fqo}#ڊ}],bN1p~S%%mB_qc"1`mt#b)N R\e]jVy6tn+f8F{y&v G!7ZTa#n)-ώ,y;V|!,y.qᄇ<^> cx [PIkOJ|,d'$R?]n%`dʌp :S|;dC{t?\ c㵝ܗż(-(uKb4yZ~/SD-Aj [26@fVC@]w>%%Zf ۻRq1qG c%@5:KʁX}GB)&}Ŕ/Lpp*1\J]WC8E}2|M0 JUVh9*ݘo`tj iܱmm4Q:q}TOPў 爺`U7)a]ڰ.%V#՛۟`w0z^͛w2SL _׸[`f? R-)voKB-Ś{Gh:tT3տW:b^dk#bzCXm7n[PH@Q'6(TZM+2b}V7{1 4d뭙Nmpڰ|/2iInI7^8NLA֝Qq_۶[*^=GEª.0\rhQ)ev)ϥCXo3a5h':!y68j}Saڳ\jO+ؒH,ψK&s֍,zۥ3 F4u!ܘAк;KΜ|pʰ7AH%&m>1/aõh_kEVlƝl=dw/GqZֱklZT".1s'!Pv*,ӥԤrK춳ԥQ(4E|h?6Lo)|e(ZɵYG(FsS\*}Wj(z'`T|W'lz|\ͺKUR#8EG!ٲ-Pm0y2tXr MjH{f'Sɐ=ݻ@]ID* ng#ApI@ ЧkJ|Jy9!h"mWE(_p{pFD 7=d< hȻ`sؗ:M_R7]|%-M&T)؇wcϥws@me"> wf'f(/>Rg{uL@(Bh!REdz\p6ìm!tzX&W5C)_%LҾW gъ6 dmъlE@?9$Hhy#Eq>: $87J>Ӑ8zɰeܠ1R㕉9POˢT55 i~$ Ol>Rt%#]JJRa\3IAFw1D탰,jJv||z0 ٲy!u6pxk" <-gLZP3YK=ְ}7m΅0[֕F6A8u j` &] >f6B{kX-8ΰ j}kT4)c ƓD+I\>U"m`xi rhl(Y9Rԛe,KTh3&K~O+NnLH_@L'Mn}L޼ltPc-$ y&~sr>5DPߟQ\5*3*6 Wʮpb7,B#n}jSUHh qiG"4lQˊo"VKRWݻ݇xb:{ 1B샇1|AH0hh޼^JMҕ UY;f TK/c1+@ˡk(Xb p s\z n.&A~p^ ?:Tcs"{ZDsH!Tv,OXrO:^:|GibĘ64YuV(wރe@(C`6Q# hɣ lL ;X3ؿ90 O$tKΪ*2 ۦdhA𘤤 E|#W}E0 kՋR-۸O s8~+z:xGbEC¶ؑJP{tiO~kT.˶͔Rn~{$%l-fЕ+6Iz.X^+'iZrCԵj(i||jH12lF GhMI#q 9N@B -"h$XJndqY^@lCE8땼dy[= ϣc1 ͭ:B?<+wV՝(1.d_.0v[0 JZ9n ,ksJIލ OĈ/HԘUY͗X'*8V7rGnC(;93G GBoMgI99gy]㽿aLKw8*]On2Q 1Œ3oh5ԕQl.lm߇H09v.)<(5_;M=JB H[0~Xgô) pY bWA<@Mq-Lj#TY*ex(/IaebK :ki<ЫI':Q9J;p)$ DxR!M9Xd&8._YJtpuҽ -"e$Zsk;og /_n}*Xwɑ=).-VhYݛ]^˾u:2HoU xL%\C=*rSnA=JT-"䜹Ը8dzaɉ*n˟SQcחSY2),ܼI(FCh؍2F T? ^0ÖĘ%$̭$,k) qr%.sٙtj`g}`,FX?sQ&P! @ _{t]t, G5. _e)a03~#lr Iᮏ''o)S PVP4{*V=?c fWuf%;D E{+ rJ~->#sH=$>w5l<ޞo~ANvI*ܷϿylh% ZWETwQ٠x$ ,@'RyDfX8-"ߵRPo>rL&#lg,FTW :c(7< hC.s7<i >H$H spYjRJ}vZ7hEE(ZYAӖ_g^B?LqVDdPChrP;@ȠVy { ǝ 3jo_JLt6mى)>٩WgpK{`𥉉_+.O[V.Nxl}۳6ȟ'͓X}'%J5=ÜRMrD<5SVpG)ۺ'~ü'R_`Pc ;1dUnQ 0L.y{r|"Qc'oQzVGqjPKa60M3P)9v, vM2*ƱbNDze=]̈l72B/#^M5L*g.ټ~գ.zi+!wQ:Xv›a@+u%7'.@SW@3 W)T@-E7 y$տ]2BNw]/PBI𸚝U[TYXr3^H$YWǿZV!gtv2'n3DQLm8ۛ2:}+l4/y[̞rE]4,_n- 5sgֵH!^lȯ ;O| HCg8h|s-}n6Ԇ5)8:1-oY/5+_&ƁWC4Jz?;3 _<=AJM(~kCvT0b-GİIsh=i\Q$VO``x|gf_(AY2i dz%TWU υ:]&8ErBGc9&d3gc\Uu@,5W+#',0 A{c*c a/N-*0N'XAGhMC@t8eiߚ =`V2&1WZA^jƻ'Uf$B-,0ND2{gZQ튉Ϧ4/`[p$2i bKBn Pt~ tBL[O^炲3W.&@4V&*v/J=Y߷2߰TAM:hkU_J59'"}c͏w*v{pU Q0h.tebXe wT1yRXy +Yj1:zkQt]~KPQ=ZW,eۀgL|#mvh@^#dS|E_-=/H:ŕ}޻36DO[sG@cUn Eg1<Fib~!3㽟J uw70QA_13N[pV>D k Eix-~ AKe#doψe_>eoEzg.L?\t.7| :*1\ RYl)U:mݫKUQ+\ØC HUK= 2K~˾)K4q8?G ]^$x_*Nib AP$1nIn/VuP8،7Xf+%(eD|5_6/=G#g31n9@mL^"}yYC8L5G`YrOĥʊYN< \i#y-UȢ!hRtugW1-V {hm5^1Cn85u e"`@hI yTJW 9M#i}e:lkEpCC{p&9GW2X7R%&ȺZ$| YŖ,#ZAՠ{^MޡLƽ9?Cf2Spk'sfwBK` iD-ij ,g}G  ^+__0{ ;y3ZM6=OoO6exO/P#D 6 *̓J0gKK,eXn-?rGJ_+kyadΑbfNvuqHWB '.- fkMQ7oWms)Mܝn :#u'hWqHhU<ɛ`MLx(ܐi{rS3_H8+:᠉=KMi!ȇs ˖;D-c{Mw̓+PP$UyʙrQ56꽅ֵ)pcK֘ u-Y 96pTEc%4gķ"@MI8(Y9pt'&$g4M Qq;,5}kps,=!\D Lb5-ԺѩJkC#\'9V! ]ϲȚ [KSEc,KCANr:CiX J+ tdީ7d >+F7-/@3'+5 f6W|bUABstl ;Fkp^$J >#2T2h(Q ! zDn5vɓ{ȝa&h>_1&8~UlxTH)ڹPZ"]W`XcF ƁkK+U܉Dǽ8:&jIwhT kDiN>Ԣbn] dc{nH>ߓ/)1'w_8ɛ;)Wv:~=c>gk"+dsZ){ gp+ʰh2zxi a &+E&8Ym='op|-O x@$`}Zq`~&R d&DhUJ?M#̉~p5OPI<0 L t`X87)>1lT301 il[={40>yA-KVQ zعW"mSyPR &@@vIao#!0쑟elBҩZ ;Hh5wB(0Oiޭ;j4^=+LY sfA&T )zIz 3,g2>W ci8vgAȪѵ*ZBsG0_س%(>:;EG_Յ0%"y!/t wFPsکnշ)q+{)c \+>7N$ SR.Ceqn^؜Sx\An(>9:ɮ0I+i_qqj{uDt|R i+kEFJgZ)5m44ZZ<<0sֹAXEzJBVOL^9B i|xF^:˧i0$ v| ~_2x7Ens:-ScPWn$v;F?6a!B6(qmiGQ35]]A5*/|t8BЙx2&#vG IcrOUROWT܄gv÷n*2-›؝K5(35E5¸_8؃K,RQ6F>^P눻 A5zWܪ3Ӕ4b?KA X$AAu<&AlG@maJϭz"O1E{ ,fXHs4R:@/+Ul-5n';WlbNhw~;.+D3v̤2.~Rz!_}հb}}f%?_*NK8eM[`7*toG 6~mccή; 9>Дie\'0ޱ`G(H ъC_5@'Zh%7zI` &:nqm7\ֲ#ϿqSn>o)`ƟeySF413K;;"Ozoz€( 6 *Fq+<8A-njqoӟqQ)@OO}3Բ7ZZD:ޜfw$ǯ 3W:#5z]bIB̪̣KO[t|zy{ kٱz&s)%r'%^ϺPO-H~Wzjrґ~b]hl.1]NalDoQw+5I8<Hr<5aI0c;)֗u|4Ew'#:2G#&d 8T%Jž) Ad-bE`bJ޸kiX-_ >fG^_ɒke|BOK\#{[DhUjRV/ѳgD>Y}풆;f[DtBpfǤ Jir'4OJ(#.­ [z%(s{f!J~4*ݕ#neW=ז^MV cͳE9l~JhyV|I:ylc Ő,;ϝ9ݪtˆ@/^/Plw)..^8Ij6 rdppz+8wYҎGb1Wo#p@X:ьpBxRW؈ĕ"^0H4ܙWw6 n&Kb#fSn`^D1Cj19jGԆ骋3Z7 `:aa|벹S9$ohiv$O+Hb1 K^$UXnL% 4uMUݏw=CtD\\fP;Bo>3gIZ0鍉@k+!Ћ;>Lڳm-L!ڂ@Gw'7g(8_Ty ь&wG^+ Rq|2,G{"oVDi/[h,.?uY`Ж= fWފEy1ulTqZ3(r%Rz8U-՟-Tf)1n&*f4Ij˵IbY4G3}H}Ux!913i' kKR?pQw~g(0JSw׃LRbp=ҿl/UG$x9g,JPZUB{^9eޥ4]@#ˆ*=b5Α\o-*-^X% bJ vQSmdcs4y9swćxtEIU*Zo[;p踍f 仏Vgm0IW,.S+hIb/?DC2hh|GBrGM`+iݮ̰rISv5vI"8`g\} pJ]1W)g-)9َ V>.byNk,y`FLJ.Ř'.e9lnua 0"B.Nxb"r.E$OѴ2꼙 /)^?5e?8X=Ot%'OzH.ږ4+ 6Ao=B(6"FYy|9uqsӰWK5݈q ԩ@Gkk 4g~q'Q'Į92?h҇1lIE۞r*zGqc92 [?5O E_=N^ Db0~!tgQOmI=%H&Ӛ#^G,\}p6L{G#'nyd428פfgL\j0yWXNN TɊpi˝ĉ5fz!|(E!ӑ "P̑ଥ,@= H\m %q`ptANTakftNK||a˷{jDm >4S}Tt'qBPY܁28*%pYHgm 5~|eX;Cd]ѭdKSBq&OetDp_* ͌@-jȇ bp{0exM.U9oN h|cJmJ q:51/b^D>:1lVVȌ~eeWo9s29.wۚuVVU04@P_iZ0t·_(,|6rB =d:#)1׍;3yhp VHj®M$Ovn5j3x##wH0ЯKTJd cl8[8&QzAв/?6@+P`#;O )gt0oD?Lsɳ~jxj_ens$O$@= Rl0aP HEoVd=&&V4*2fz5Lť3dc͡CVILٞvV٦s9gfMLz=_UЖO>>҆ÿ8l%πЎx rgJgr?}jSJ,zPFT7!Pu“pVYd ́Os_ ;mn`^8.Ok7EflFu I5y䬄ۆrBRՈf;lh_x֚ v~edxR=VsY9Q79oii9.=YDzb偦7BUT65x}C;Va (HOrkMP#ǁP"L{Ue]1PzѬCZn &Л4n곢6lߚjrAnmx#"bH_{[Q_zV{? 3T2[S@z$d&+d>SgZyI^t*^% =ŠBJ1v E!2[V9)݅ndlHq$?)8=C|g/(k2νoh1CoU<{E8RTx33bk\-¸ڒB|'J=oGPA򥫏?(L3FjD v`ʋx_KuMIAw |~Rt1< s wdQH=@)9| Vr~pS6-  Oϴ[ ]ϕo7)k'`@3jRkJdڷ[SW"9ů37)w}>FF**rakPtn-0y)'3j2` 7%.s"S1OaY3W$^j6wF=6/YוBoM*) `ΐx‘1&`V p>׍f(l予O0y/ Axt0pCmѡ]!x-8OpdTػp9 RcqAGi\rs)NfuA'#<5xOϟP:wmx`˯K~51#~.0"RrH:4FII @N]z&: gKe1AiӭB1}l;>hek| w{8"U}7*m>dŒBޚILe^u J˿ЙE%,Pa6%~KK<0!8TVIe޼{-`1<7Wf)'[<_2g3G_"~TXtviҏ_؀ɛD}Xi{[9Ic5/RB3Dx>Jꄺ"f90x̰NU-WVluسgcRrVqnؿc6p#S0 PaB}$O;y!5 x{SM|C[a"h|*_O}C뮋aK ,02GKI&oaIwN|~TyR?_vXvYV}3->5&6|Qk*D9r |$B8˃xrW^ә7&|KϾ2 ܲn/;gaix;vv{`iUOAA5_]"0,ֵe%U@R!YyN=ͰAb"^ 20"1*f03]ST3Smܢ(|&5Vf4c#]7!{-_y_L:vu^Z5&{GR@$$srᵶrjvq!f(Ⱥq~Ж]=Z0AfM2AEE2#MAtl.S%Ds |t4oNI,syN_AHM(k4EG4 ]]Kчvhl=G3ѷ4OYuh 4 `0 EϮxwh8ūŗ {A ҭڐKդ8u@U BiUm'i-+w_pE}_-3l4d м"%Zy[6;9d9_ȁvefpP;$B>)=!^U X B<)ea > fԵUP.FOꙂVυm@N@V9=єwڞV7q[!°8_f6a&CE:!Y٬aɹ9=:qCMY"plֻa;IH"BvXd%`( 4'YQ~Nvo|vBgmKчh+ߔi<.f3:ËQZԿ2v:fIKG(8-Q߁kMߺWt GL@4FEi`v|כIy"HTRvn>38uL/׋.=yݸ”w%lGS00 ?h6&zME4ޮT_*v35DY|TxA+ poJULn@$|_heQԯr+$J% ' f VHIGG˒v >z7RhKz-@-"] PIO(ΊvDnj0UK8ʖlLNɽdƨBljEC! Uo"4)EH|:)\mb3lf׈*n^\APxaފJm<.0쿴gf*v`þL&?K je@C 1JMZ^`_'>iiۥ5Rgy)'[{w6it᜗$CoM9q:[~)M8=X`7zr!\M IF}>2w3K{#L92`uƆqft gi^ߐjV;Yq6PIMU8|AHouގYp~m$po] 䭸2R@"G]E'\6auRf+X*u&bnE'L Sbacȿ;<ӢPU,pn?\oY(mu2N9(L #,dπ/YL<3e@nP fT)3~!Sڍ|33av3|'aC?[xF^b"æ= .-m 7sU.RE~4 N77*\(X,3}2xZk .GfeU#*Xo09x{*jǿOJr|Rfa=&~ bfXZ kNd9j=)8Rgw:1&$Y 6>Xf4t#B\{g0Tx6QłڜYJ`l*Cako O?7 `TM:9)$l+"ɺm$4y/ eݤ+~DőjєWA4- Id~+B(e1ɋyqt\aM{z/3?N TC Y&xGWv=&]Dv$P8}PDuQTЌd50Ow(f#s=jG/mf5 R5~Sc7Q~X̽ +HoCl?}(iʛțP sVX3ޫ\+^p2s Z BjuT+.AzښKQ9S>N&|!5+#]j]tA eiS%y hf^=:(mAVA=U3P/Fw0!ߺ1ƒ,C\R,k'Nv ^QNE8"c8 2 0JN9A"!VZ %R]+RqJ2?WZF0?,:OJeDSHJε)l`p?jgmv lB=T1&D?>N;a^urq<]fD[u|{jG \.~i@O1Ǘ&_/<"e!%,oTY ÅvPm8O(p_BGC ckoXҴUԁkKl𸐪W޺z^{@;ʄԃu$U?$6xL-Q _绁7g8]G#rt9F%^Ȃ@\( ]7+?Fap#Tօz뷕4; dkyfDm5*TtUޔ1fðf[շCAzEsM& "nk])IizJ[zPCwֳ̬ͪ)ܗpz|_ZMb"RB4{']0szK~얶DyW^$j1Ǯ ܐcb#[ aA[`hiSh~QsbQ`X=D^=4-3DpV,hTp6y;mujE=$[Р >Qb0ccmi%ti| XnoJ.LS%H͑ JM?$PS"(7u/jysRpR:k躾  ݺ´|X}u9cT/B?Tk1;%~AG8Sbj׸pY-"s nwz./zzX)̻'(#=6B&$OE8 OL:+#6; \3X)WbY3\>C _\YPv C.liW3%e)١ qp hÐUT\cKђ,ٺ"gLPH2PKMPq^M┇5IY~$Й' \WŕA|,h]ؤ^J(WD)%Cx gNӳ?KWH**SS>dPy(W9q5h2ͫv'ɶ½M.ؒ3s/#˹=дRpEaCwjU.㴉7I+2wLZv5\\lJXnE]R40Yf u)x)YmrVznhP>c9T"D3bm0\lN3W.!AlfQ1TjO5ASh֡#x+H4JNk+T Zh˨ا#X=Cb@t,Z\n'ww+#^I[sJ/g)ipQ=zl3+IYo(TJ,[>Yi tc< ݘܙ<eXYq[H/l }y7 *eƼ>ifC{ʭs@sM,J}w-'x+26:TuېN'9O/zl2Z7:MH:CP+y)Ib Զv p ncDcť,Pd3. I *8Q%ups)4%NЁ cEW2DWEV3] uu.r;4좐ÀJEv}6G~g5 BD%Dƫ ),u8K2z[.ɁGNys]~eڷ'Y>9W6T9J۰TpGu=>jۋg/Pkr1}Ec{voˠ-?8:ZY_~5<ڽQݿk{ w>{Nͣƹ>I?l*Y+j),F"-mAAʩCA* ,It055DyU@ڪL 2YT2pdiDߴí9o@ A1MpU/ttƶԮNqx9ۘ ;m;

X'UfDcEyjw6AGJYn/ =Tn(8f_=xDg/>@0ⷁKm]ޙ>#I$Xb`|#l+oz -Fd,e,* iUB"q=MӌM1c%6b<<>=K.N㇑y3!\O<QM :[b-޽P(u!KB+Ӥ=zI ϺhSġSf+Jt9Amƴ{E ?c6q 0f~_dCk-iR;R Cm&SqW8h ߿(pUN]> dE^>N @tRgb7gUM=?,$vXY_;E5b`l@Kk@=9)-}/.["!"fzv԰QdHQi_Fkj;.ݶWd02oJ~qjhڸ%V uK^ ~0|}}_5bH+ȑ"x@1Mfo(<־ >. S|A,b9StUr]}8@qRCXJzii0BkMmxl1:Z?ȝ :*[xGӪ6?游Z<)B>%PnjO Ovr|On8glj'i!D;S3/}wD3єWh3:G\AdEӱ".)jn1 \u\ﻄ}Q:W`et6:Hd5#tq\6ڮ;S%ĽH|tI;Kk:\bYRh.H򶎋;u>f*lFFr'i~=sgvz('(}^)PW-) T+"ȩ#r>/ln.|]Xmh{ƌ`j/n ;Fel%d;ߨ̅R'W@.ntv`D;uX~^arˏjwS5`~Sάͻ?}EY*/WÑO!?ͳ( g\r^y]4QRR(hIK'%6%Z|M{^p!^SP|.E ]~ ]Ait٤W1c. (-n7f|2 c;=丬!|YR V[ o)&a?suP@FhYMp(p'qjߣ=+CP&v_:9~Mϡq;@{"蓿ybn e0Y.P@q|~ b|hLPj9^_5OE>M&K\l}A1hzbY5bSL$.U_Mp7d֘gr/zlJ:h5WON<cwF΢j֚ЌKNz_ej0dh,ػmb2ĭdRjIwCPoՋ ,chm3{a& D4)Rӻ8֚W~z%;{ͅ܉^3>v=f,;sByVN-;.\:ħSeǷH֫*L0zOv;ZHӾvo+ws~̌z$$>/4mi(-O.X1?_'$Ӽ閺 G+E`̵.jBTx2mfB^NǭbP=}+5/Zqzq1C{ްgt"0R\+f CqZ)4t&8RE{>>2I-4+m1al[`C@?^4.["\P*ƛD핌Eo?7,8uc:Dr۳AkjUg7@{ОU%!-PSgL[⮶TMeݶ#N۵ y6}GWJFH1P }ŭq'm\`?L;Lt~uwʛ޶ܼ>-'"Uw(ebsBqã7'^\ohH2VdRC;}hj⛀{ WV<՘//V`sƐ ]lc@armaˠMQ{T^:k~SK? <ʌ4%Tww9GoCr{ݳ@b)9RF^lIjnO0zU⻃Xf?a` `«]]GA&j uYO30ϷTب1^Mr~o!v~Xx$0FR"ҵCMeb X\NDa ͊a޺0bfsp y&F҉¦6r^nc. ґeP6OS1[d,OAys4nn:Z&jӷ3b`Xtϋ !~(s:6ĒwA9G-tGduX.VNуa&lt\ˣbU(^%XZ%E8C;8Kޔ>O^ { kv0*z\xYӣ#Y(VHWC(!*#҄I?8`)SYd[FP?-ҘhFG#~mg rY^vJ ̍Ao,\0v:֕Š>1%FU#$^ue*s:w 7iE4Ʈ^; v}n_"{cdxwHXN܅d_S{t\%|❝jMr[˾#T"w04"T/ a##x= )o{$ߴO Ҏ4( KQy<rW x0iߋA6k7(Jm|HLI1tٍB:B%JcN{HNFsHSߵK}~КJGZx20R qrmLE\}wuM_D!uC_ޕ| ug%gy #Xs3Lx{ CC>/ ^Z-Cȕa$qEp9/ubrNtĊl/ZfML@| m;!ƞc*$i) EmMFch*GZl~ hz֒?0&A9mӳxpAhh^qS:yxGKQ<=z\,7{ ۙU毡q=~uϦƣ6F޺ȋa+bT6(b fʷգ?!0+a "'NJfJha&:)Ud Zц$[>Mu덮*;Z-H@,u[XZ&n0le¥xrVr9Cbr-nҩW`,HgDe8IFHgPF7,b ٠3{Eu` #Y`%;cgު)..tޚ |PN\nRx01vY' XHX 3KGz(ȫUy >b)ő2=BIr^16%m|Ȃd"=PߍhIC\PkN*R;dEqM 0ٕL㏱ `?h:lVl$_35 ƀ1]a m! H"0*UBV]%<3 +$ҽ(p0D'.^nG``$͠P 9DdRm?<~^׾f ~8&]@2ɖ1ich@h*yWm7إP<$Y`0k+| ~١Fngˈѽ>xa7o/) ZꍎC!ܸ䈳 x_Ɓ?ZY G<_]T${_^8Bb cGѡ4"2/qd3Yl7 4̔A6ЙbrX':;-O͟joᄂԤ}z%F=3pAY"R3*O^z'V-پX10/?M{: %4<{}ZB^VZ@}EI703tFbᷥmzE*wѽq8HcnH8}:}gbCVS3"Ox@pX^~{ BzNbl8[+i2TVi[NׄxsCǻå2Ԝy'+KhP|#=G=MO_>Ԍ8z;Y?mJ+l(]C5[)>| jp+pp9Lr# {P`2Q+t3=-E C|߳ܭC{p%Yg g֠'Ԯwy5 9h {`jD?q_\TcDltKd|g5[|!4oו`^vRh/$=0liՔ~\LxO'kRɳW,:| %PL66ũn#&}:`3Bzv#J<|c[eSGNR`PtSҵ) Fɜ v:#͉F}з> GT;R"7cS/FIS6>-bDlzbҏ*lPZw.ͨCR,o(hj 57Y ZGfܧ[%=6K.t.^[#y SwhU(9L{b9KpNF>Y0{l˞h˜r\K'Z.;C!G Js)'VâTI=jvct]tYk5![d)u|3n8T$Q9dNJq~|vdo9_4=cfj2L"TmM%)7pK&NXK9PX/uv;1A]F4HJn@;z5ZJDPC삌o0Z׮wfC/?lVT%v+I.KOyD̷ۡfqcB]r#RsRx ;B3[@_^}GiOK3Rv.5z *{8I SE;S {ʳg,jHx{x#U~ag~߉íOy Àz^ <ǶiD9y!#P$-et}yMʕ!$b\3 a?vJI+EX(r͇.Un%3͜i@f('=02tTHM#p.qdi$Pql}T2L}QOq!&X}G̾gtPh/ E5K9hSFJ a~fTrбEA9R;$ײ|"a> b[-?hH+K)F;aмbIm9l~)13j@^K̸bc37I>ٵe@ND4Mz39[BSVq(HQgy3GKu*c`KRaȂ_6&<s(6HEhd:jE cR {::Vخs_,FA 7Ґı'x˔oȂz'ǽSjܽ:ݒyҪqRc˪)ܤT 10 E\9U[kE(Ur(a/=-U5ģпFdZ>i_drYdu$Xhk-C3B2(,vm+*+%ثeFב@Fdl:̀>DH>fL;jηI `'FGb'pmǶfsG'~o<n_5wva>w@KFǛ EU &H7Ʀ&wÓ̸ȓenUS 3_v w3iL6~74К ziXAP&e~>Ħ%Kx9&e)>n3 0>FvDQ¹ @"Oʭ'_  eQi,e+ jˆNjGB{9e48M+~`Sd$=r”f+ވPf<Ϩn@wRe?,uzd(!gwagSŔϵ8Y9f/~ETܿA@ouIۗW6Q- &̨I{%vSb57Mp=)Y (h ɸLK0e:n%I;QSvEɢ'L"E AvhUp;v  úvϧxVjl_6v~84ENaL(PcƝ,-^z˲;+ya#1{Wvj$1H?1\v7y}kpffشkbw(>q26΁RCzmu3\QD){*Vyjg6䯠4;j]y%߿ԔTqP'cź~(ZXs"_i֫B<+ R=':B|{&m%`5'Z=\DA6I)Щ{c1l<' 7֥}yg|aK"fv4=%h鍮iՔDќ[+|CN^(zɔ%>=[ m)JRbvO׶ݾ/ћDt92oHÌuu]A*aO6$\ #_jٽk_}4p%n >v=ة9a;lzq6L{yjR2e_I*ŠJuO+=+q&"޲=;;P6?F SrזGK\|0`lFT^rV֕GRJTL?]|?oJ7j79ʲ;M(5N )L=#^wAsdgdkڡKl|?k]@.aN6O To9ڞouJ.<6e}w!Oa]^3mI{$ @QC-ZmH/5G<=+X- }0\>~%+dc\%͜5N7#uB LCէ%~XHZOkhM/~ACIMڭbN>lzKoalm߮304r+5ZDJ+ kI0jP؆uM%\3m `;uaQOU;uJ u3x`&yfdVeSBO.$۱Lysk\)HjǦI*}n^Ao,(Y1>-,XvQ y]'tP(lAl   ׊%24PpR=iF9j9ji TީW'x)E#c\$2b{@0H0Yq#;<G>w:ib7.I< #W߇ζC]JZ:@MzD$8m &<2k¼ʆWE}!3xd_ 9)b6_dq;;A xC,[hen(iܫR|3*/<{jT23RY`kVt,,cQ̗m]PK8_C0jΥ=]U KH%u4154ST eSx= Bx9K#F^lRfaPNVχXq1zZYҤiu}3t'k̝ΫP Np|4]*!ZE1|ve?K Se6]ImflJicj)m8)y>dUAjmED1u[ @y( *&=sxP_<#|$vUNΉ[ԙw,LŘ̍&;U{I[ ޥv5<7%q;Zy ĢHD , ͨFg~ͫ۱7|нvwuR`DGS3AN=}._r=heL3![+rLΕ _P}]VvM"Hm;vQPfMe:0)ynw=]EЋ2/mcO ZE@l%iBNíFr Lc.zESxk{`_8fS/׳_BOv36.b:20έ&nCٛ-#"a^dSUJ$;s7yd&Ruc<cp+£(Ss4C "65^ ;*aW[~M{Z_*%tv t@94gTrd.Q#L%EWf6m-U %2YMbC-[>''/L^nCA}Yd,(Kv|)1L=! `i7;{+wflaڗCy 'r rHzw!|V"ruU 2Bl6}u/Gl{D=6? ܕGη$eJVMgk!9Pbt4Ey"!tNw 11?jyc&긠>K7䴹eXaZO{pޘ?hW*sTɺLBXܪ'M_ ?_s?8s.=5Tσ]}ߺ>LR\z'x5~xYS)_oԼ&9:dw|KEQ?N#T_hG;1TlJPbA9. // -RFw3)wqi-~QR<*ob K"s􍵪lK/)+ZE$ |Fs,!Fcf8[/fg:WA<`pɅXCԼ C˦(g^#[^~|Y0g U::Wfb_+bmCC#YbZcRj x C;cP R|JvHKȒMp/D$Jn{υv/Oy=6Z6AӍt85s*hQ;7& F?ױ #x(d>޻j+m %/acRc*-|z!`LQŇR?(JlFџ. i_R\!dKf\q>$Zny`"{b}EZy̔ÕFɉz:"Z5t IڸLJp'\0w?j4D x!tģljw E7P m@wz[AFA?Z+.\ qu$^[F(r0X]HʠiUc-M^r8un F#--cjֵ3&O(~ԁk0.- eep#B%mz4+7+<S 2{ 'b5)R݃+T[|M<܈z>tYC#[u㴊+#A?'1VLr@l~ D׺dz~q>,B&=mnR"2MeDf! <oQ_LztR (?) O³"\#45ӱ.-H3k_F ?Hk*iۖ' Ѩg,5An7 lvI{:H< 'ӿO".֎,SB ]dyC1eeƽv%rMaJo7ۋW:BvHc6ZhugP+68`=LL$e΃P. Lvm셃]n*78ANL^[zze!KHb^(B6^0BLkgHjz^`32IZE@}ߠϹ {Im`;Oe`ym/-uS]F\5 pd*t{ Vg"J SR0鈖_ĒFʼn:/PMuD-@4f^;ʺ\;c9C8l׭>㨝i(KcaJ9{< )>t3$O@\]%.Y.i?j 7)̀e(5QxA6~,=NISK#s*qEEMbzVtb&WL{YФ]RD׎4g߽QP>E#lmyR4μYl7p+h UՅr7ThGX>Ywpv~"<%qtk^0zNOjA4$q yeA8?̱bSMO>0Ό' {#h?ǢK"w b?̽`L`(`df6b (f+1ڮ8b:ReIEĒc6ܙcs-:k}Ñ`BKy~GRE7sž: C23F hJR`H<\u9Jzޓu9XGff%Z C{g䙬e=jlyXWe:QBgzAnou憣]ٝc0:,QcF!3yFMY)`v'P&z~ō~57=ؿi|_eT`ij^+ ߀ sbFW dhq$iP5 9Sjܦ c`jn:%ؖ 03Rm Y 4X)_Y@mt\M9_owWo'+}Fq.W^ȖUK|A#;"=BwZ <`ԯ[8ҵ/W&A@46"_|=@”>HLM^c_c]zZ.+x3@A;E _@Q[|;PS>޺Oq-_:p3 `&Zyjd*%p,PjT-A=HrW7y43+m6?Ww}f˿.{{ tηŊY wNjU[ 'Kqgys儖/.VQvFwI-VLuVw 6qbh.˪x= }DfD{#uE,hW|IwH;lkگ.eSߐFVؒT \rpY_j̕Ωd\5kHIs@I|- VI_MHA=k u7K` K8| !_`e'49-85psߙ)}xv8G|,FvE`iG˗jqu7m4d iM*I[ߟsTdXİq4ihyG ]Q5`og? iolOik")f; ^kM*EA 96Kގd&@56 BR\Gn@ʯLLdwPdG=a䆿]dC F_-LYE*t4bZ^kVi١Ўt{ D-ҥF _o2Ȭ%cH1wEkwZ(g"#DƋ-=%iTkXa 1֡㘪"{K%Bĕp92]&& )egRsܯYNxbŧpD` .bV)*iicX"KAyU ׯZg$l=t+{Ar"~*_vQr&fz5{Vܟ c\ \0GhNE cю7oeJ )߮ilj~ni ‘?;&&^=qjØ֘=bsb"#N[ʚ/'¿styNCk3©$ì]֎ubK>_//0)-8q9V dp(av kj-o5z(No ;ӾO+M+^>Mjl_yoIJ6E87Uւq-I%->Y'.`vY^f9SsֶqHpۑ{gxp_Uz)y6c+L9ڞ!' X|R@ۉD4's"VW5@i^GVE@s"?Y}~`8bgrl"-Qi%3T_<(hH#[ivM! oĪ}wc 2o#Wz'"ViVrIUtV$Ȃ$Gh 5Z#/`c硱* St{i~DlyBfXS8PptSa+f !Ffճ,@%tƂ=oWMFwZ\I k.&AbYe3j@82?ٵ|9lZ1a@=B$XR LY,py9_Y֋}Z6ZпZlY/^D{|$ӎj:E$'FIG*?ROV Q31Ltgu{b} _XIỤ;=z%7K YG9<ǘT߄$ uAS"U3GX1 [Z﹋- q*ʶRJHUt$Zrzk6E$.xd+8Ѿ&ϥCS$݄vnh,۞*FwDAGwwƕ>-% BFdgmJOD*J*AXS5[M,Ǵm`|D)Ҭa;-+;k5[ y_S=a S%}p?k[JZn>B<N(^TCYȝ~>\g$K9|FaJgB!-$ Zx\vNSa\DSG;lj5[y#8PO}7Z)kU&xxۏMuII/~ö[%l$֡*tEVtTɸs߹8.dcطcPg4rBDGi)uZf(9WcB1Zjװo-q=ɕ ٫ÝC8h-&Z@Is=Xx>QaBa-SEE } xG_k,͘H?suZaC= L<,a|7/;gN%vz|DWAӼ<8O-PՅ`RnNύV2M'2u mFUM Pq |fcza9qs?UBBU~p F:Y3z@]Aigc,j%(?n32oy U= &6*k aG Nc<&LN})mWu~zf9ix#BsB&jFgMYv)b^r#w2wX ŷ|ķݺ΀P.;O'y (oo̥o#r w G.hxdîi\.x*: 37bO!]rӦKN/Hv ATNӔjtޮNqV^:JϝcrV|ݐnUjn~] D4⥀U[CQI1༒GYu9y'-r६E* .R-40x0r&фUe9yx@]6eL ̺߱EZ0&jږ|z!0ERϘB# ׬5k`fkWc'3E$)s|}CS֊- hC~}JAF8؇7:NMq]=)]Q0$Tupx :.|")8]17Raꤔ Mr7xWp VqwLLCf~TYN5xœcu!K.@d:mgϟYnE?$zմ Pvϵx/2$Ro? [*Vw( e*XC8CG+^֋# a iU5ĥt1f0X(g+m7~y0HJҎ|| ^MS9J0Em[ؽ :-hT;{uR\HӟyŤ͖PhȟK fbF_ʹ*?بc{R~6DEp$ _vтtv׍T “8yJeGվaH TZvfKpr[X]_Ion1PPv`׏뤮eR< 4ee=`ȵ*7xu4`ؒx})A9ǻ ; 7vJrkIXa-%Ҥ@ */ٔAe}0 OT> #-Y0ӝ4xW^j5ĩ.>vMkǘ\ZPL nG`Ȝjost1Ȓ3DqO9B^Re* #%GxL .d> }ycyp: ^o<3:Ko?Ȓ.j9WjmxRNb`J;PItŮ&bHXU̬vBEoQɉv%7.;,H.fNaPhmC_1۬u1B3  9s}l/2檣Ⴆpv"6Ȗ8GCRDbӏ1X+F"qao+he.a@ !|?hR1j2}3@ TީAyXC,2vn`Gl턒p0LtBXHCW"Ȝw =>_+߾ǪZ-6H+ag=Z07>:)j|.F&rL% ܲ17 X"`6~DȓO HA? ?l:c?8< g<9tcU/71asw+6D45l`83-Bl=qj,Ise  ^ ] ӐU{,+<]J=e)1V9tT]5Zz} `3,&u%U}JIgQVDeO!(u /H̠-I*yr(I"O$вY3XSW0O:(?L};_%/ՅK ڒRh4.2Tc5C k3Ym_Y5QU`k\D@[/9'ڒQa [/K9Rࢋӡ/\s5 yW)K:>T8VfZ[: 0A5pN6Rm%YZ^VDx&kyAnK`xt;+ԦG}dq Еle_{j|Lf2* Wjng%p&6gwar^?~ Ag-$Rv"84͖ $JӪjG4D Fsla8^1E2{%ӥ+Q󻛷[E-dXɳKv˜ݲ]ԎǔHL(B܃tY,u# /d wVEbmn*T I!&sbF]ДhīeC)]dQ48(F]",V όZ1a꭭`T)@g hzb߽sрJ]Ȃ$`Ȧ%hPȭBT#!P$b$]>oXvoQ`ߧ[.WLz Ü }o$ LfN@C?-GbI?Al*yN p>+}Jډ3[Z`˨5UKu%".rһSiSt/Ra)Y(KtB&^6-[Ќwn? LWbLn]78gCoN.BeY'10e I_Kpq3ӓc/&pSpuR4:wsxw?6֙ +^3c vn}-t24ڭvN:PsPblFE_}g|u?1Ld#!s¼AE]CcբX]Fd.}st:Sߔ|%ݫ/8m,k@(;\"E&wBv.hO%!jų1fCG@iznMo/d 2Q.H|B[[ \?B{tOd&m Du+Ҁ]{X?~$t.bT_@[!i~H~5受Ru2%$e4A29ຐS…=D ;By!Y6 q.TN_Lx3Giz#_]ӝ8gaF(k Ȟ 3U$.Ni8+cylrg gP3Q.@Vxr{"%MlhU#x 's뷥ؘZiPۆb2)3y m4ߝ2$&K ,٫rj”^i&ކNjӜ)ӂ{&%_-ف*-9xaaϹr~7ȅ~H{>q-q1ō+Њ RM62В(\1.ui)8 K]UY)A[խV '͛>ʦTbܚz#PKG_=cIa%;DK4H[7p[ctXM„ԣASK&xZ "N8[S[8z׋T~Ny#sT;Kyvpb,흘c=#}^BgY̋ٽh=fL".0Op0!\U}by'>  rݙ0\TQ lby~<7JR|\QQ"q'P%cb y y TPd4/5;Vbis bd}F'WvI,j&dĚqj v пy¿\¡\G-?wȊꚳ{!|ẓdClyo69PSTTH1Y ; (?*hEnܳiP$ᅥr뾨Tpѓy7{誎P*bFxI8PG,%cjf]9N+E~]TĀf=W{:'-8FՌ*McٌMIY(ȁ'c 4ݜt{S, "4gKrMe}gO51يN-EjtzƵZN.~ s,E1ЫZ]R@7gCyfK ̰ϲ$^c;(>˿eglܚωf_ng` N nf4=l>⡸)xu.:DŲﵭ^`̒Γ~<1jgHΨ=@z;wDH/Y=)썴S%r csx97Rv6R?8})sAAHRIEm `. 9ө3uFK - `MS Dez) ^Vt.^ H? IGEb_b=`+0u=C4 f?DgfGĕ|^|żpI_%t9;0eX1\ItOӵ! }$sr,܁8L20|Гm5 L7$=ǐJx\?{wo@3"Dl QHAjzz1@tVH, ˍ&OsK8z &ev٭t߹;ߵ$= hLzd# RG55w۩v0˹"+x W3`EԸ&{ "VLU%ep^|!K9^'C FcUj9V%%55Akl/ "#!¸S@ NF3 l˴TOs̤䕡ҧ4OV,ZVW{ }i4_x zLT7ރM G뭷t ~?P.t;D/\Ʋ]rRxVzg>Y15p*~"MTPKB(RzE!t$1g DW=-aahϋQ)edj-]3G'Xq]ǰlM8F\*!"%nnU\7h2vJ+yY'w1hw|:PICm26~-9OФ88kCՁc=Ç l S2eJDz   m2bi`P9g [fwu4WHP~Oњn1 {njH=k;F1h׽2D gDcR<_#2@1s[svxOd ,>qF-`rԿN@r/~")Ifw@O?K]E,01:EG[\` } W/g$ncٍt 9lFH#+|.i/Ɉ`ӽ̠h7BLP}%3/Wh9{ 71v~*;x Naõ58 r)a*q̀e  FG1'h٫a ,gp *(Oq{M'gMR[2?BKX>qr0Kd!ߨtQ$p1M@Cn.!8걷](JL}/~ɏNvɘ.kjc?j`&@mY*;_=Bn-.miA_jN7w"̜B9ڌ\2"C7'Z8CMѴ+9r;rB95Qo7U=XBT]'x`_ v+o'1mnWBF&/D"2>fbW?X@6EkbCQh^CyK j*bqg3Wo"#P>\kmfn3MLcanH-㵡-"SQzIu)wC3p(^p ƃ+J6)J {V4Z F7tM@87 =P{o͸%A[#1_vwO2JҽLCOZhchsYxT"Q$\{!۶FK4vz겢UL/Xk*9) Xh?ȱ官+ŕ"QSZPKxt^սAJ&wCߤ4?s0zI(2ιgޥ'؍f`%2VH~vE[;Ku> (%/I֨ s'N%pzx%MO3yq'~#B' \i3_hS("0+Tt+*JDJ,jꥨetLßB96)k_y^r}MO6PN_ UE0u&)܀FLš13~J3CzOd$0V#K| ^8Jz ?:2+ ڨ{75_|uyq\ '*٣^ X%U /"g@|mz3UUE/2 D/pKpb[_;TAp>P DH\.܌8~o 7<!Iш]\ k]+#m I6O8/S֔0òY&ܶ*N7sQF"cMd*wscLciBe](XB=,}0.J`aի' _L6?G:L@7z~J/s_ɖo0MJxN{zځ~gH[˿ Cr˷`M_w1@'-ZkCv$" p Ϭ _}nK?[Zku( |% E_ co8`^wJ5%^֐Nmו֚'G="ڴ ugwNG߼ kKΙL詁 !jxዹ5v߃H_L$dxۙA^m%~zbL4RZQв1H6 8jq`"Kv,1թP>lY](ԛ=V[1,1w&W>ik0J Q:=6$Xx翚'/kb D [0')L<:"ju Y8j.Y--:@ЪiL2BE'4,؟ovCgX%wQhv^m"|ͭC?I»!oazH-sP=]N)bMnL8ow=Bɱr܃* `5<`XwT;lc4ڇbltС(Ffi'Nx!MY5cn{@C9pp4% Hi# Ռ%`6,`0UZ"y}\gy ffG?qʠ MhF+[9s zy'A3etiHSX;b_B}c%K6ꠗ i$ׯW9L,}&5-yŧ>f/e9ͨJo#h.>-|N}f Sll-7aY+щ/Hsnq#|vcS 3d ܬ/OD,}[rb'Y \r1Bp9\BhEd_cCjbBFF`/+Eh.NJ|\*sKyE0P#6)DVJHyO1zߨgx%$3\=2Bfקb*˟\3,~v d'yf /-ƹs-edwDi'o.FD]óBiD}DuRQ!(|$NǹǷ߰2OR,X@5føawq̐1+l17g0p.PR {2r#X UrFu1G폃εK-2L_Myo^6)\s8GRI70D3HE^VE%Z&朠 P7[gj`*b<9O_S29}gBjU쏒GQp9Y}/FG7 DÑ7T'[*M~t-y}Y>Y SH6|KPl@+H$j6\3ĵeɪ'Zy!H2L3b,d?9ϮM!kه` $f XgcUBP&ǡ*50l`~ͬvoP^Q%"eqNt tFpKC,vғXDe|GFe-yBz{cj:6D2N-AȇcG( ]χ>|;rhv5G9Pur?a>\I<+lE$IzM58o:+slT7p5ˬ\a*i{(@-䜯|IqlX%t7\\')T/=X!btK[X FY^{V#rBXjD̈́*Z ZT~v |.¹B!6#9\'k :Ü℗\{D s/RQjM$&Qm:wYmZ˷)Gɀ\igA?2"__k9#PE- =YU0NA#WL&}o((@D]r&U>!v?qp~U'o&Ockm"ڎl3,]Zjyn`Vd2ic@2'ӺAO0ڇqoZ4CL^i-zhk{Em˝BߧyKHը⛉3vIΌ؝Y^( g䱷:1̮?OE"nޑHl v+^%vSG Awx^|뉌;@(zwEz'As"瀡wȘ-<[@^j ȚᝀA'ͺhr,C0Z\yלh tJ{3c < LOUVԜpSH^2Z"hH巛+!+YxG' 5f+\XSEy).I S}m^qvd̗0(<,ev]YOYNԔS6# *{ʺ%6Csk/YSmɚcA\8ŅD1& ˜5)^NvO]e \6ӜV!/{RKfP1>%\kZg7+k|Ij! {n5Ÿw@X~Q7 Fc0N3u}YݥB9q x!gqv';ɔ*TN4H#x%TD*(˥-fre0ÿ M$9 r+Mp3}KBHS)k)}ͼM.p9јG3 fqUŅS8R [4ڡYRwYݤ/3zi|5OO!!(-ԗۜ217x8ssuIKbD5^ IrRׅ7tr-_wXE{IQL)+L} WuӃ ÿ>]fxrudH`В[R=scnA$2lJa.~tNWv[nTCkK4N\ @0k3dtM?֩P\Qו]AʓȘ\a]5iqh`-g%;b!2?)%`b 1|{@]b{ l_8U#93ޢhc/D{|q;f?_+;u9aX.AQw+̵;fNF\n0E +3Za`]uܴo oݩ3ef+fnŹϹ&˔f_x*dg:gMK3 ٮ?4iwߤ Q#/ǽNV/r-g6ms/-HU{&H=dN.f̈́ 6Zv I´Fj-;dx;=Vۜl;NXAdaZ1^Co;iNVbqu 1h˩2\29wuOFBv>Ls¥z(9)>F?%\踆hō^GqbPmTa=]|7IY@8y^vWR6 +E ˵i+"1PujV%TW'o_U]%Jɋ!k庼EP>7/yHa-ѾWuF"y| a h~n.!4{K{}#/U7E|fqF,9}D1%组U}`z>5=^jmh2xrdiK4~ &,?ӱVTmʽlXv"iY@ YѾ﯅cL%aLo  .@]+xy"FQn/ d/fp :zbXD_rE^u6iR6{P'W7.pϏ;ӡ:SR3IܭZL%7 cҩe{pB!a`,I$*kqvsY#R;Sx-W/Czx, dmg;B8z"㲮 23e~~sSh#k,J޹K``Lw߶l1ׯd#6kBApηHJB}I7Ö]ɾEwӼO}x&G炝P(UB9 2[<0FW- zEEi$9Ȼ,(Vc]Ĥ1#([ӇI5Q,H~ -Ƃa.Aa$+׾v2HkOl6\Xu5GE=͍&zIyln*f}>&QOP2Wޓ޶#Z7 J@ɣ~׬' 뒓:13,<6LEG@8)'jQ~9i+tMR4&a$7.T?̫~{bW3Wo拥K2Y\2q.]Q`\XOU+Tި#,s}@ g)d6D[Z0im%%a1A6?ٳG-J<]?~J𕚅k<48G_@V% VvtYIv?HpR`mjanZVdY'ڥ=ێ[8Lm C"DEzMu %S4 "ݔI?~S6X3?%f(5m𬾱XAR%هt1^R 8aBvflCjM9(RXjΛ9~%ӗ N(_MNB_Z0-IU^}~9fGzS2qa[w~ 3א4r(#nzx͎д)CJ;;$xJ 8wCURiDPtُb i?'j0 n8@Ϭ/{}h yN8p/;G^ya/1sµn˖t`Sˆ|È%7w:3jX)WxRΝTC&P jE[AN@ Ɩ0mb߀2h`b9<_$?axGa 1.QChpb5_h%"FO1/j`Uz( sWiфVRzYSܡSie HƐhf=>ړߪ\8d vioP-ͺHpF] }]U8mJX]'7;x꺼^}SG$AUYITv3 7k> "?Bcn%:&o3hE:LC#|XTB8fkiSþ= 8$o_Gmme@(P}wP״XE;koڤY+`i,~ E$t$rJrˊqxhB_Q=vb h'SZ 7&b5{0ZqImI IZNC?էnk/c|"8%@d\\y5  Za6V\6MjWI/·r]fRg]7 ۢL4#0V[S) d;5&WH%wZ^>l{yNJn!'DOfŃgz]$B `-3vwWS}fug#7]Do~z^EX7d`aM5qkly juNd=#yӀI3_|x2UHzoWhLet֚)0)S1Dx5=?Hn'I"Unv \7}"er$kr<`{3>Psu*=pVX%PA)fki L쨲 )@D6%%䥰Z'Xro 5ws !ѐ2Umhۅ"|fR̾u\ U R+twv | r¦cmvE{s8 &[aTɲwdfz箻`)MhG/L[>z[A9\e53(8Y[p6$BwP8LXݙ,5 瓹%`l\EoTJk)a7A֎@.\P \iبLk"didStBMgQIQyeTZuS1G68rrNYn ~:@E5/P +ae'@D&}d( N|RgJ#˼EJ>3d(;UE y߷ƙ>ȾNt7};t׵~ UBڙX(qz(J5D"ێ^-=\\yaV!Sx84$!ah!,])7u#g|riVEIA#RZ:pI\ex,),SLBgR`p%'b%1U<&ajÙŒQ+SLbNrb IQbdKЯurM\xд~󖬺nMΪ\B;Ć.)._pvE%d155SWOgq;cNviοs",6Dv:Ay:Κ+Q'sEC|wr õϩLKE0{{"NīNrLFRimgus׏xs>-7;V'}hlG/ ĵnES}PQ&! -*GqvND߃+09 j]g >s2Xە>7l:Ѳp#dUqǰ pC3k iDmm}wBcy'ŊJ7""΃OgW@-\H壒 7SɣyF ߅J%yb?| ;+tr$oo{: %g{,II0, uoB"#dO+!]rXOu_"jѐXQMxaYOoҰ%U$;Լ6VL)bnU,uTlf;jAjZ/Iwu.-Qse>g̋j)t ױ.wbBͩ2G-0N$3n􉢰7SSMޚ0}OccROB,=,.];r.6I%:# ;7<D|pۤX @8-}`T*k, 瘔i0F׫eBZ2,W-|g`KYY"wl0k]50T,4(`uۈ 9~bj϶jo=&"\)i#_=tWgmxyk,,.p ߛ`N|J]S۪F;2n;V,Q$]] 3>ɯe9uEXkEX*BR'$R4Yՙ͙^]8.֦váƽ)kn:aQ Ng!}@dsgv߁ҾuSKlM& b%p|5tUx>u.:M) \Ҕ_OuI|:s݇Ne /ε"[GR+ɷ*aW7wʝ$RTBYڋɀ:vb{5*mߋX ɃP_frxoIbF#5xeŠl}& ".nuI:ՋEػ`µ 7Xia>xO]\Un3B䍴˕50=e#U8:cFK.TYL II7GmwF[2aӊ ƍT)cB!q #5 W`y ^(AǕ+ _{HP.QEўg2  1oD]Xh˪D*L/%o [&J[elDC!BJĪ"8gK7jPYGTbDv'}\g0g>}>j#$]jpځYJ3mln}(>/RwE2%Sc~TMS$c !!(O IS T \Gd(ɣG>Ք5 6;ɲ GbU֒xs*)-O3\&22 )%[16N8&| "lhb\PݢoӘa\͞a.яM0t1Q\P/.ļImӤԴJh=AAT'_&%ױA Zʅ2%6/Cɸ~5cr"gqUh o:G8_Oz1l:!i[`%Dh9;PZ"}3ʭ;1"v޼=e.—rވt9_`xlp:D8,d}N  $Si [3_GVp' r &V̼ tWksPAǦeDeѲz[lcBi$5͒w?ex!_[A;[h"m=o'@tí):$(xvy2l$ۘ ?i|Զv<ќWWy4$>(gD>00J33a JP ccDpzР5WR[[nPZ'Q ucRƣv}1C.&>o>]R+Ze_H.0D  LFK{k@*qT; [xd:Ѧip `즴Gt lvNX< `&zs:ˠHyUbdxOȨZWUyUs~c)wzbx@7Xޱ) ρ"wJ#!N!t۶z,<?8U)N|<N67Fsװ׍ LϏw7= +!(.B  >}oc \$"ZUAbfe{*D~q>eEi/—QLirrsW&H+4sՔl&NQ`֥O.(]mX-c }`n|BWjߩ bYak78kN s%=/Aэ O*E}s'ZʫZM! e׷=2'J)9ѺtO9TaL )!/\ttAls-G:~^4d|YAuEh!;ŐlI 80[H(=aF=5^ۆo[@UZg=qϨ@gW|H‘ *R:b#9%em4HԱfaӊ%Wmj*||pFH|$:u1 gUҲl̋h[<7/dDᕚ%";Gqȋi2>:,zLHTόdz`N5Ҵly^A(Jĕ,DJxT1a\ڽ|Ze8glE'ylWRo*z>2#5`53%Py&l(dpT.yg*e-pD]xl9N`ʩ]v9K*} ~~bPҗ9sݾ jDRqhvf et+Lj'uG{ֹUo)UM 3*VT>,wsCJiqޖ)n16+͈?[ Fhk9z2׽NjdUxe9HC((DO{½y(%@6 }霽ݰ lTXiw1}rFF(v.Exb bĈW dqHq'n^J$msf,,GI9g\*Ww׼&iUW'xAOba ʺC^}2wFK1mٻhGM»UV VMa & c)gU&gcjtmBG-L; GԷP؟X_}W`/T5V!1ۭ&Psi>B\op 9$LF_7cc3 C80j ;&^AR+F31[oiZ@-<&Rꤠ?#H9'<T:>#39h`nj;jk!̥}ḙXasBKb &Y ij{94r^^HԃxNhyy2[Un(U/aiu"L ;ڼfƒ~HTbLj.*X!nYC%%ew̯*/?6(ȧk %^kڢx/"z{]%iv$`pum8ˇ;+o:r`~C5q+ #1,Qv; 沑LH#>/-Li[f @ S&=p 5 ,;ёsz$ּ7{C7N%Je~k@C3)$1hd@|uڽ*n fKa!Q!5Yi\D{ (n/bo#Z6 VV%)ssK[Om F-Z!Ba]5Qu@&&q!ɴ\qJBvWP~l+{,-GM #5KC5pXZ6(z9;"Po.. j($%\TE hFgSZ=:(+1s>Fjƌd`%KAsrQohK3+:<rrV6iV(Qfכ :@\~4yeAT?6;5(0rG' ΛR: QNZA.LhE Ux̜,M yXE.ҢhӠE #]ګ6Wa\_19 "DJP'5EUl9{^&$5/ u o PؤBu; 5JbG@j'-ά@,a_A/3 &"惁XtM:7LR UC4r$6ʏv`QxBWfJ|WU}:!8CV.rٜݪ-2h-j|jrY7񞺋((ږXJTմʙ =nBZ:/ ȏŅqa19hG`ЄlwoB,ͫ+E?|Fr|mzutajldbvWag(Ym(tXn|exvI%xOD{I_p*yS<$%R yJw9.D˕O bvLtSSZ4/:Vw~dQ%CB"9v'>+ jOV7"bLV0g[}1N }~GY QK;'rN~eTyu6 , c)˞JhTEazFMQ^pܒU~}PUS "zD $|"e?A6Uh4?D.\@sD)' V;§N7FH5=FF{6G(SWFABdb9jnǜ>dovΉ{H~t%UWS30y/IB)W^ԀMڔO',Δe@d"/@@c3ƾq/$%ɳ ,=iyBc1R9F;X' t|Uw2N|1ۥ^6 7zFde09댕d/ʌaRh-bYՙ0NE[ !nKIzMBz澊 3*対Swjv}m]ĞJ}+?Ltp,UUzcöo]Yigac xհ\E&&]&v__-&Jm GƼY*jeQҰ?uaUY6 G׼VV]6/'gU}i䭆8(W<1QJ6쿕Z~s˼nkHEƶ ZU*~jb؃AZZAowaʃLtcS#G=$oa >;Dķ0%i[G,7>pH.B"X)]%h(Z '4{Lˣ0rYĺdBٽsZ]dyy@E8ctŦ&)B/76*:m/iЍвhc{r?D@ibzoPn΂kGy)| J]aNZtdy+N= Lp!xv'^b0RE"K;玳ku(M }(G(}9Sff"1&h$9>}e'38߈oPαڏh@=NB7E fp2G<c"t+eQ !syRѷsѮY.$f =/pZWj/C1"&~ց:dɗ|P2K 7c.8 dI{x~M ]g@= FBf`ޤRf"Bo΄綠5KBG5ԍ4DbU%NCXZp<%)=SIB͗{vBz "1MwING>V=D;I7z^7FBڄLծS7p^S)R+f߳r12[gm@|a_ 9^d {.` UJ;OP^yğ1FnEK pޒ s]͉ܳOҀ.tu͵#-u3?zI!W@rmCEl)MFnPdT"/^n.7O?z&zeωtR'5%R"Ry͑Ն%Ȳ0UTOM%e^eoMw9_DPW1uv~s[Z%5NnR!ziRX8a@)sGh#/T*7 ig<*e$-B-]Li{0#q@qg nMW7ٺiDOtr7z~hjp:Q3Ah$L~*Qd_X GB:#V7ЩWI*l.2!'>Υ*A{,L"TMb_٧ DAn Oo,o^1rcikM7 KDB G= R@ Ohq068dUFh$"jwu!$%WiO]4Կx6u)F80fiXƇu$&?QF,/u"?/i.B89 |SQX[].2@KRw5$Ӌ?&Å}A* mluӖDb,Sn6/6ZLQ˝:_nӇuGpGQvm0F1 JȩMxJmb{-N`:KXB~8a6~($oeJeȟ]Ax{| C"*eu.#8ozw6v?Ӹ_7Q=pkmZ hedL=S'[5Λg,uufT@H5p?aŨ| Kl|PGk;' +#y-iذ""AӗMs:!7 TiRz:nzRğw3h}7bAy̦=K_9Qn}-2LX F`FkZpl8̝pX祰lEn/Kt ZB <=&sV=Jio;[d jw$HA&Hxc̠"LZ7=ì!ۢsyjCu)ȇP}`0.na?`8@3%?kWiغ$/+CmsB!%갛0?հ2RǠ1= ~ bEyN2l'H RGƞ}Ceiqxiqhw9EL-0F:ѧ~΍ v3F.Z(pnydJ#Hz^cgː֒_Ҝ]MX#mu&Htי'1&s#Snƒ@glnz8^xVVU$/ d5dzhې9(n5i;ϩdHH>LM:ј\ Xǯ?dL.LShͪ6=H)3yͱD;}>p (e+6+]V0A(߀c}){s( x?3b| -k)ԓIWͱC,%!\v| \s3;DEЉF< Uy=8-4b (j3C,O jVuEfS_OƐ '~̐Ubکc0iy4F3%X>O\~DK_>;'By0CHCX(E84pzѸl#J,jR4玳~sV='zKU>U-9%'XmJNƴ70IB8OFjh'4R & ^#Wz`瀠ohĜSe1``qgd sJil>'N ɠQ>}Bby@J #>;`k(|9vSfhefҬf NjZ\> NRb* s<^aoie QU3VHؼ&V,,\b'[WI 4wzi/ X1漘zE%L\QHZ{Uxqɞ-OςAVULĉ>` I}\q+'-KhKCbkYD}5,"*H<^CxZ ;IY۟cCoix. M:^,e" x.UF BKMLBo~@31.OA_,KCՉHg+Nk,:֐O[-~^8 HC<:~XV-WSWƤGɆŰNb(#H_a%0k$"צ Eu}+d*{QG(źd43mгwU{V2&d]]~̔j90kr.'\wDTHPm(ڵW ^3?B6)$Ot Aʵp8kBƢAQ,(!NkAf?Ҹu**5;̷^:1N[blЯQژ1~[ 2Mh'vрC$[^#6})jRm}X8-"n2]e<@yښg1~"= آ^ ZA iZ޲"ډ(-jjP[1Ĩ;9gpvL^ \fHwekwr<ֈ#?f5Mo o>1GdE#qK|T3T9>IRQ82QO1"U3_ƹһt/hBٔ15J 'dY /(Q-j( Td1J0ݩ[ʑiw՛OD㵃p7`A㤎~9ۗJ7?ߖ,_(oIi+uZ+wDSuyb:G0 ^*ell/GEeIEe M<kr^r¼=Z+TosVTuj2qwd$AY~vfcxc7&vՃMeK _V]iu{xwz!_'-C/`xD(7k^ p?dtkJΜٓ%Zʗ ,hd04˰#y˺:0҄.1 [U=aۅXKaY08vb}ŵtmK\|iC=^uPrD[rJH܉BHVX Q!ʫK`?B]]6]k_753,{(D` EQEROġ `bOZi|5a\HR/ܘqEJ,dAr+9/1 cTF"EFc#k Q~; D8txgx"+N軭SKdDN6%]4,Iv.aںC&DŮgORJ}4J7M SṿCg#Lh9 Rifw&鏟@& a d 2<*BtFX4Ԯsa| ɧE,%`+rIRPr)?z;yƟf .r?,D\lz9_KYD2!$ݸNr&`UmE24T΢7Uzx' k aGǷ" $p(!SrfKDWD4yAڃ-@J C1wpK O@vp3)ُ3x/?ߘk+^mQ!(.CuD#6;|̟,'Y/E59D?w"π1)Zz<` B1Dk\FWKuMyG ir^S5]br?,+SȀGÝS.S?ЌeH2[#yܽO誃ɇGǂ)ZphnA8;2weۚFsᙇDJ)ߎƒ2Vz1-U􂩢G \c3g+s8)qM06XX&l'qjzŽ$;?Z@~\Y8UjwBrK|s\4Y` Ǚ4+ܱ=|Rʓ eVrC!*sGe{nP(NS['+xBkB',zvVA[ p6S;&=S* ᪈76]{>c?Y92Y>a!ZgYBh^XhM>r+9(4I̘68"9K^x"d0Rǿv' T~G:yiIZ=3AtY\!@#hTM3}~~t<͎.u>NLTq % 3 -|& #X}o)#o5 ~-k3wsyN4[G$5:aGbQC83I"FQz͏ qЖ[IkRO=oC+eQ_b .aK|s?O_ʒe|8jlv_o\ors]z*=JUc%io#!K(m D?2v PN_+jn&0ǹ+?6RbZ/o×1_iޢa1&.ej]eQdGEtp1#ppj4ÄaPpI2(؎Үr%"U8鬺yM4@{D'CIM 1X17IMwo98 |xEA4C5жCĉ h#*`;m-;Fc2mdu6QO9",6`HdEKut3IW)!rn֊m' &`1nw\7 7 d iT..: S h>XG6tq )} @RL!R>j8~|EkA3XqK>'bFPX8ayķ2/w]nZ^ ey/_Tas,`Ke7Fc2ނܥTd P^%K<``61б*05噧Smp2>ƴ3[T8》የ3b%id/駪,M8])t| ke\\V,tMEV $Z ѭdU)髅7Kv|MѴx,} _bOï9ˑam<΁{] .)+DyGOgG1Xd?LdABeHȳ'(Q P=j{5]<.!m(|{S Ep޿o=R2KPa,E&.-y@wnHx\ h>ϫ#I;lR7RW.?WVzMT /Ms,s<3X_j] 7,t01(wJ9jQմtM._E)(M !8Vu}@m9`8|3iQY,/ͪy9Q|CDJXeGM35ά7dliZ7dx?U&tՕ3 eAuO0ҢC5zɌ{ꯩdKnGw{&@3̉7퀅hlY}|yG;f 7<ϜiDCgj\<`5;UGXlE wS@W=*1F-\!:tC7ɕFIt%Nov a$RG}gk%)g+&([2@A iօ{iUO啜[ؠƯj>f/5cEe?C $s&X좴ߺǦt+?=M.l=rͩŪ꣖&x}.w yXWtc{,ܶR'PF+=K ax/y }lQ;^ޭV~ )q*P=tG"*l? :n07GI?\/զp0Bڱ[:+s՞7sHwHR E8'kjNLbe-࿱w0r" isTp`ik=ͳa;/u\d+A6a|FyHUEje? g7mH7I/1S\Eg;:4kד![v12u4AO FYT1'߄[A!ֶq>,dwN{9jd ų0! Vze\h!$ڊE~4|u[\ bi\JV 3ǨgyO(2^Y߬L#vuKy_Y}\6/y*& MbKсANShp=iOl í 4y*_6 U_PD^K>eENsApᗺ8=y/^* HҨ=HNB/BdԻ&J=xȚr߁/ t D)h!~UZ +7W@!l}QWK+h]r X/ÑכjYpT %:zn=ȍ 8NaQ <'jZB2@S#ӣ=[%@zz`[Ev?E3Jk&a̪ePIdc)$ӿ?p9u<,vpc*,¡/.F#'P0-Yތ{ X) 16- tRX/?6>֥G -#'.P~DyFՉ s-`O(:l.Ûs+T!hav.ggTdU?-2Kb輧 i˭p)0rjԛ҆;"η}]Fz{B\,h?#Ihv*FTg0;R%\Nm#Y ~VÅna$`S[$U. xۗH3n(3Zd@H(D?PnQGp@B9|6Q։KDO\롁UIӭ?."JrHW'F :tk@O`7jsKxnTmRzT 7Z~wzvzrM,1PL ^nkٸ0-|W NW4qN֚B>'j&2nek2E:JeR[ɠZ\w)]i]`IZ`1:WF, kMrFwEz1r>O0LOGoolې$/!p䴍Q9MK6|陒t*T 15G2P KdwLsӎ%Ź @/RsWR@WMlM 1?WGmJ> jji?dx&gu0Mv~TQ)G{l]^k㱽G z#d!&2,+d.\tsV6Sԓ(k|G~v5-c ^w5Mk_jC[k,G1.u>^̣(Nym@[#N>{ᴊq6| ʎh]e-/f ZPeR:X 4m]/MxB1Dſ7q֡~\k5S[ Co  t vZ8@^ٗ&_/rl ٝ 9 fzs [_0-.},>eTn;2V텔Bf:G:Tld+ET7LS<fbek/t3ޤp5o:(cFIO]h]$D G35QWVpIIe? Ńqurw"0E 7T`B!7MKsS} t}wT#Qξΰ7Z-C@#raF*}\>,"qQE([i졲@EgU-kY:/{΂].ho*3lSa3Vsfs7sm{ٍ]a-x:`|+JLj 0)dv0VsW)9C̢UXwoM J vx<2Fu0&Sr#._~K\^tҡt}JXRlTcaIkmek%\#kHgv)Qȹ\/Iikrms!F; 缴\Jyeƨ=#E F̠29.D%规s/Ӡ-~ǭIP#FK vȠzӧ~B 6'g$ϣR4'sUq/q>P&~Ų<(z'g:xn`%5:'pv27d&,jGhlӤBG^c^5i-v?3Nh#J_' ;J^-5QՒ~fRu94J%9b.?a4`4<,dlt`j6k9quE$:/q\K.H`[҇2mdT[e'ꂐnyy|tKC pSn8y#1-NFMi0}XDZ>HR?]Sm}ЬB\ EZ6S_3\nFl`'[vjWƞ WDQN+6iFXK,zl1+ŊMVJ˧mOqq#:]*Ov]՞y-ȧeIJ7KED`)ZzBIYJBFB^twFHFMxޘO"h:J3ʙV/:ũ󬼷*l~(3)OS/QV9ϝjά Sڻp̦ž? fzeVy4`"lEO+,`AMEƈ,bMtgnT.]CC/ !1a#OZ1@cV 5H/J uZ2 )vlzAF(07⾏VL=opp84DtuE] 2rTǍX!xi֩ˀCRP8ẤV77d*Pٙ[&\?O)~(yPhsI1@G3x6w0ڿ@r$ELݦu9a Zx͙{..j%5Gº-%p%;́@2T[c.Kwd) l1B  KSHgݽ`dpo&۬e杫YtE+wȧ1ƞ쫵s8A܂ِB@fwyҡ4^%ؼ )Vs3801ALkvO~ܽ<(Sqv.N- IQdHXJtHPכ|\%od,=E}+`F03\k# RL7mc*6xwJ1သlJHG\|F6뚷jƐ+ZDzfKctiêRK;6'I37[Fݖ-as=i DTd iovwchؑT &AD'Nuy=4+ G KYB>?zb$,LDtKh .i,9wa>y[-Ԕw4>1؜5 ̶yAGxiT+ JE<ٛ0aVd+'4V0QmLtQi-.:38#K}yóЯnpt/7mN@Z{:ƿBٍMʄ3@]B&OQ HjEj5OyT8S*A;1Wy4?OCD1Q[Ql!ĭ;<sO:])*]:[&rD μәav7d95jzTC!|yN*@jAF%W *J"ѩfצJ0TyPmm iWVN~]'wu 5o7tctS-o %HQ0'`"D <]yv4MoGʅ/,r$۬/sKje0.kdrb|<[m,O^:h:ځh -#% ՎHFQ7 rJ8ESy&å{C E1hi7HA:pdHk$2S\w4KnzdVՋ C3#|)PY8 v@uDMG")3N5rM%A w=ް{Q=,]#^ zr\䳇oRmq:AWSN| w%vj.VH[m31 Kl.gcc=mJ`m[IfO>{t|u`S6Т?֬l4H UZE $K&ށ~^M2:iȉߚߜ#)eX#'.S ^~j<@>~G*c{G,`/;9T/l#mW|mvЧ#7 pQq|%)+]V=RblQa, vLAMosUKڦ Ʋ`Wx~'%Kح^ >Uoivg#Cup>3ӶrđŁZvx/j}Kp؟فͷ/:5'ރZh .휿A:jl&oLھ}@:}1G =$ZBЉXRvIO[WB[=^HW,C_/yHOz"\}0x.4Q߀&Vk xē\¯*S̱&Kr87QpaT {Q-] Nc)>H xC7] M Pp-Օ=1 {`ށ Z`2!Ӝ@,J)柮9-QZm14*ukRXԞFݠ 8#opbUzw}ax 'c/ 3HiGXNQ_4A"CvuCGUi>O^٠ #I`$:nLrEtky _שwf=%?Xj%[[^cl6оӾA: iPX/|?NEh5wc{UGAzkiAFе9&U֚)*5*4RC=P%1o\2$cJ@jrY.mhذ%}f7^0(VVqq!)+9\BI9]gHIC w0a"Q12o(>^KRv:Cp:ݞE}bj?U 9 s19<ΙW!7"sD~=*e׎VgR?< !W.D[sRd0“ӆ(ycLӸbVm ƛ*dcH {e#yJ*kK!\vMnM{тkx[Մ/b•x inFl/i͉W% Toğm*F37(DX*l{Ĉ2.&HbhDy& غ H[ܪ؜#P,_Nv9:ML I"fF_InѿZ?\ "o)٣mY`oۄʾP V]*֡@s 4= c/Puɢ q}w42* :f\trǖA jor715% ^ 8[xo !1;{-O]K1wwVS\zH?.j ^L`kC5W fd>9=~}+.޻pBE+ O¶:>4/^I%e'\.LVC_sWMN#e*}X@ʸ`+p /zI(yAzUʌj-7Bdwj8S=ƌ$g*SK%e0;RP ]Eb G*],ߙ|]=zA:6͋JL'&N<^@RmC-i> wϲC2&DPi[X{vkQ#m8;ncæh>“8%zM<^-So@Ⱥ]{V8H.U }DJ ]BL k L I*oNb%ѥ&tyQL9 >a|tff4 f߬^Dc+:Yx֗:ax;iCۅ~Ww*sWkËo`pFM*h)s-dBt\^f\?C )Y+NYcL崂40)ߍMI)A3sĝUVH$fՋϯfE>?q1cRd{,>47|%Lp!4js4NkfmiZ"l`#<s(g i[ȦRPu? U,(ka >SToE(iԈhC flF!-=8hs\1@B] bE9k)J&MiKp]F!b$K.v\p^#R]nk^B+9A\ W r"LE~?yx㕠 =$ cߵձ1Fc'tNoY(10e &ENâE.urHsKX﹦@+Hs-x]x?|e=~AYI9;mSe#p"%\D5; د)Uo-b*-}@rx]L~ָ=Żԉ:#W O5 q9dX'>=Rs߻F}<Ѧ I:wB:3Q6wwPΓH?ԩܷ.P#U7?a˳p7)/nOQ`o5{S}hw^5GS'J3D/rC4#E'Ytz^ ng˥^ ˔Z#^HX9qugw~:(I>>Z(..A)-=a?Ss!ɩm zrsRA=\>Im!?GWN+%̋zLVd TgSJ>3`=ȣLz-4<"ll\Yd\g@W!WP iS~dXOQP]vDndX(4\;1%ؚMa1G1 aInWÙUxly~4BqϚ4W'OK0۩*3)%%pѶ{@m3ͯ.읃$C@f~7vW /1|o]c*=Vաr@~m!s?8NHb!݉SWwD3Y3TnP&#uzu v,^ϳFӴQc;\'uҖՅJdslS.M% +pN1-5|g¶v؀GWE67GPBY:ӧƅ:I^RjE,p`ozCuo\TaxrNztDX2g$􄹛Nf&QcHHT`. njTeq%pOtǍ;hP갥ڤ=r$&HL q}3bme92(e_'twJRnjzUM*y_ʓ{⹹bĽ"'~|x9L6 ĕG6[7\!gCA ԗ]CĴ?[{ǩduWa(̲aq+-jV+2 iP+ٳ(LhhkGM^Vhb]_E!D$C?[z%@$1$ ؂F978YvabIG`pZI UW݁bJIF+@ EJUxNE!ӣkA3T,E=9o&8-hoĕo#s´>< ǜD٦gZ'Uݠ-&E6Ax=k_j8W) LlšAAggSV(vO`*GfK,|*87z^j!Z,ˊ7_̨9epr؝çӂc]JAc~&W.@CS0*2_el Ewb\r~g|dG}&맢UzFIā zfCt5d܍V:uM2*!Q g2,ȬFBhuߢeJ^|L,tQR\I@VJ k(u'VHHLYzҭ{Gʅ'U~yk܈ϲINh,ͤ6Iq"W? &/0M_PV2AM!J"Sִʧrwv?VX؛+AS-ۊ bo:)*&KK*{qD* 9}T0H‘SEVX&ٺ,J1$d vFpqǯc9n_`u3"˛'we(O:$x.{uX/Z4mLG2]:onqCCmnh}a#:5ȔꔎcS;(DÐMՠoMݡ`De|A ^6GPXU_(ZcN]p =G [E&S.n.Yir;ۤ475g {] *M%YËUJc?ۆi9vh3 HosئE*É *fUM`|m0*`6;jEB,osnV8s){dC@ 4@"RPXY4v`LeJ48.+T0SsF}DpH"*f:"#$6qsʻw'I`/{j\Mc=MbkCGqW8Y@2Y@ğ j.D֞Rʨ\2SX<4b #zh?=f<<%Pg÷͔{eJb"iV ʟ֕ H; {5K>&jlS9^Oo<&Ɵ|]jо#zvgb<j18f~xvT K*Z`hPP+sϞm@!16l«۴}s6.E q˥, VtZԁE'$4YJ5XlyٸcL"MqM8Nybʀ(7s܌r{l`=Hk*|.i Y|9qL5MT"T$7N-]Gԙ-fUH)V1 ۆ79.Y=vFB:}K}6#$,A%b(:h$VrUz/a}D.lbn*); #BpL`AGUi/0XWG|n,{'9DŽXۭX4i%\Ab?ԫ,:S 3a8ey%xUq?Er\)@l^B,Sm -ƋLېQk@BC06=S;xmal~m"cBt֑0ʮm>~A(G4i.O&Icu'A}m={(%eF;uWeCz58~jԺy+^ظ>9F)!ߛ^7O|Z؏9qكY;֩[{I0u!4iV r 3L__ƍIᇶ HVOWG>cn61ZLZRj.~۽p']:1n`3+{у5 *ýLvv hyMLZP>y7mM$@Mٻ7xl%GF6zc(*N9ӓQ$+>!RM=lͮe&+ᙏArE4V;D3r WV ,ͧbN1llyF &OCJbėΓҵY,*r rd YȫhEf ")l.cw0h٣wek#0ȜM{ƿ $ $Kؾ3dU'Y$^Z}Օɾ%N(m`S^dUt2mDȢTzYy Rӧ>M .;/>o,>Aect5mLbcnZ0IH({yїj&.xNNEq4 sx7I2ٶXaR+洺_FwS4-VMŘK׹m0"c;xya24٘$-A1|ة5kenosdYfuԎJH o 2VDŽ ^+-i;^Qۖt3>wWY-}lie2~w6wd=K]ٱȴ~0?h!bLoELÆemyH4' 0)0|l3N2_Go Dh>}3Oٯ(~aLs.vAh>H:.]Xۈj-o觵:ҙZϹޛH)}[@ԧ?ȁdž*V{EafW觗X Y>43PO=4Z!.0V'k*Je||&& ٤4F h*Cy?'12[,ٗ(gM~$)A BB~숮H@\˦-n-_ ?}jR,jF|%=<сo_LzO \D(V,I%D +eTlU y3g iwvqutƆD 7{}?}y5L|SRա^l4_^nh@ڳ]zL('wkˣd`&oq,%:wH-LjϺ=8=Yre:WUl o1>\v5GRlCG&&v-TQ"B x^C;J#/ "LgƆ?`Nsy}kq}d e""9N)7VUqb%dDxtӵV 5m,"""{JD ' z"u?FJ}&' f~\0aGynB͒pI [څR[ΞtZ̕!b@K?Cn2B‡p$?FaZgL$nPt<4:A m[$fi7h랴D8T`~JHk-tQW rjspBɁ&ns, 3ue:xk_}1l{I1y/"Mg ?O՛gP)@Rv-3 6N=IFʹ kqfD.qThv_<u':K"cnE( 3t`ڱO`"JSjc] X .QT'P[,"7}焜GuIGy;4˜0(qySK;DUҠ3DsU)p5ŌFh;0yۢU.\rqQ_~#9\(U[պR2pT]mGq,Z?p!qsr n.LooEE?"+,e90 *)"!:M`}oBϦr{ЇC~C/zr'~kۨ\w<#ʮ9!R>kq/}l</Rî|łD׼Xto5fjhиP|Ժ EY@y@"ɩ 6m)xCFp  GhkCo#uwj",WW.%:9Vw -5[hרmPa3_S/y8tZ6 XPL[4nb N ē>"bi՜~jP>mkyY!vy1@tQhͶU?ѿ.o gF6xw ̠V١WO7E]O+fȔ/8ޫe| W{VxSjW,Zq *SWQWNWl _u+7} qbF14kK94. +F]0PeÙO*X)CǽIFqHֻBgDxm cje*eo9뻕3]<鬰%d+8Z ׾ 䖇o%ҁnB%Ķ*̔Q,&)%t?7ytT-? jBP 1+Ӂ{DFck0(MDw'Sg7:&%CN:E_-8k/36dx[?4-{$@|"OblŰ:Q #i-.%E=| Љј FLcA"}r'.E˂g_Ӫ !]5Hyj4Ы=r5emawcJn{WR\H!x`_O E ChTJDD3E~DR 7& /^ʃb0fčCȯlY1i qjX9pwK8I`_4uJ礏-Y]yt'n)S©.bf(Mamcu2@i.~S=WRf0;_2(ߊy5_ûZp|okph%n b=ڶ&NHk)m5f!M=lҥڄ=ϝ wJ,} ^*Lm|(es6ڂfs={vBNl5{ aAiez!XJPV?a~ uk,soM] ǃ_MIRNlaF۹~w,/ `Rm&-tҚ?ӖcQ1=̫9cF< 1h0 Q &zH6G,FH<=|8PGT)K6"D$WY"Եwm}_R98 ~HWlDjiz>$˞ 8˜ 1Kg>D7E7 0w|ǂ~Oٯ+^?}ZA,K*a-7צ {cb$ T%QʄN~<\oj۶)۾LV) |UI|y~n}Á 4Z)0dL@uj=ylXsLE`1Mz,1`S{Y4uQt/DAfJ=)`&ik/S` )4 p!Z/Kx&JS~߫~u!Ts_ҩ ԕa~†5گD30x_ȑ 99X[ _T{P|!OU U҉VP85OU;-zHhg7䒴:bw %pDQJROt@b`hbScܚN Q@3w\]E!FDӛ6ۂ]XHyj@`sIR04w=p֕{3Whfy( ҁd)(t3qL+ ^s6m_ +W C-e dw>^tR51g4Cse3cC%q+vBe AeBC!1:> {vpԠ7 ;v}~UgYM\!pwI`*n}6o=w<`zUhh 5RZ+r̴;\ VuxY9v8H^԰دnFΎF w+'O3M˧Q p2k%{N5!]^2ЩӷwGY=.-hu Vyt%n%ynFI` \b1õC 'n)8IuǾ)=^z,ce4.JVF[+"^YUW L(My{g4d@8k۬CX8k j=h4#+.䣞O TyƠU\߰w[ҵ9lF9bXgpNSR=[ fRx\8@%tufq^zΰ2Jd:n*eI>Ùp|(S;5j@E'WxhZ^-i{H2^$`׶0b̌u.B>$7>q6ӄ}!zRKVN-]FOޠbzZ1pCFD\ rUÙt98()QnqC TonV5ReA0dȯWP~,jlX7ePyipD@wxO7LJ#66] -7n.X$]RLҫ$j8rygmlvxr&IZ e,Q+Qȇٷ䕠"H9uK^OBQQ =8If)1 #qkAQj b-NmQFn op-:݇T?WlH*VNuWq>oT\sZŀw B#ƦQOThf:9ܖɫy! N\fkT򚷻^q!EX1=mrw{GVHDjxPݸDu!jNL&٩qI q@ވ~X%}b1g j]EicƯp0r6`3,'rCx| FWp[DHqm_-OźNM"x^.&ki/1*{׬3D|^oE9ܠ&q޷#p,zV& 6rZ ;2EwFif% ?*ϴ;FwsHLV71Q=3/HqG0b%s6|;sxY ~7 >6 TPvjZW=MPhː ߢTdEsmXز֕Ki_,5.vx4FnU$/k!`o$,Sw U0NKm*r[\L:7W䖦56C%- Dj;AkNwnt>"H_PlD[tL`/i>j7@$4K@ŗ'@YHvW=5$hV#2.VzFK ī GƈaZNPEsú.8q1.,*X?D{+kqmd -hϼYO*ik5,.r,9)5d5'V5ٞQwÛ+z~ʟ@OU{{\s?DK{`ϖw~˱6鱽dŢ('=zhg b\5h7dj:ډRs2pĝ.,5)N pM|V?2anvQN>Oҷ#"v뎛ߪ+}Ut[eBBKXo{ok}/==~{#CQ7LPX/,|]SPb3*D)^~:Gp\#C\DUN+!hY!,Vŕ L%+L|_smS;ZQܶ?d`n,ǂJ`ٞP%pQsBl#57/d Z4斜$zxH4j̄Ҽp~;u cƻ Ƭ #qO΄rJGQ-JdXV$4X[q]'א-|נ${)tF(ui68aBz/#m$L  f ^puo6Wqvp贺Z>9qd`n;Aq-5cS0h bҰ9ՄEӗT> y Su%9ɱr2DEMQVoY8Zyògэ)3d0K`|o1겔pHpyTħ7on?'-qӦyTJ_"ZTAbZy@"jrhzl}<g~k)( am/I͒ Y"*_ٿ-|[I*W UyE#xMO;-ȲxR/SCwˤ 熗d#>XFKEVY3V }jɳ p3|@gOƀW b*ӌEhO }}vgp>Rˤ-Ak8֋7 lq zCO5%+ 9jHfJ7\cwl'I^v|$:Z~ЄПWg#T|T}V*q\r83VfՠЯV :ߕLYq%s壽km:$P1oPxU?ɤ/ t:oFk3^td%v}c9ua8?W+A{H8+/stX˛fXطy`,2|X|=asҖ ]n_F(Fɂ.JCIşGd%,׸#o,j&W P~$1v? -kUGYx C^QX- >/H]n@UXo'-6 #dвȕ?0N=~( epksuE狼!drs=lYlϹ +ij8Jh-˳j.1$7}YD@y4$ Y@ii039 fh2 ]̧HE;MHN Ӊ{Hd Q9V=W|].,:,d`J IkpLqP{SF^i3/Xz 9]UDP@Vt`ٚ=nd)$7vr2NJ#/屆!F'{~1G}tQ ^-TDa7|gcao]3ðʢ\n,CBT's??@WOSR> B [%lm`rG ҡJ§+5rHfOµyˆ1!6xOh{!\2눬4,W78ZpჁigS-㤔j 2@7 ׆EJ?NjrzȋoYCő1ȳyWz{Iۊ^r)r05C>S" v{-+~.#`co9>!>2~x)bI|9َ~sրg? muSAl:1k.<P:^4vIX:9A{C7.\3/ RR& Dtj-&mPNXy-iATEyMٓfuZ pRO/A "?Bz+aSrF&џI5B2 ]M>-G1bS'bު$G^u?[::"NdDq[]ubMjE!rU%<5蘝ܷuָBHk?|A\r {=!tz`6|(;Ɇ範.I!~ržE;uiR'\42(z$ C,y(va vˑKeggN&HLxw[F*3M测^f<#i$+X`3F"V`X+f'L¯7X:P|i] Jf cxRiEi ]K: Lז3eJ#{FYmyqL?2r1AH-[*^Oc{ױŖ:0GJ>nsS3yfK9j_gZUSxe& ^Xbl׀YzW]Յ5h˄*S,+ȅW(A;6 h?_shZVXFQe,A]{c@E> X(Alik2iKu\]}anLeHǴj:W^8${dm%5z [L,:TRi|%E=qUu毇o >&b@u?^?Kh XnT-1d4vd/߰Yurd¾}vr>PN}֊! :6S8 ekyUCVX^:Y((ZP3T~'0( ^(}-Ω CtxCíWAu]".ݾ|۹@~ $o3(SàG8Zjꌣe[ f1DsELo2] *inYę[繼?5w ѭƺ{vu&gr:Mji/$ꠙPhhTweǖT&*Kr;(ETHq~-wsVH{Mz wD@^uOp}ѾK4!O҆`s.,>W&CQω):]u]LבVuk6B 7ayG+l~?EN8$zZh#;A =_%:7]vCk  U a5W='$nuQs /Lm#SH*5g99U@$[ܥZ>"]|:S\gu]{Y1I8&Y\ ềT |RC[:&?iwF _2-`ECcӖO?󯺓vn݇/mX69@ ӞxObfdIs> N0NPoq|NJ ]eFBڃ|N]N 'F8RB⺧RNCbv1*cdLJ#krB$2,\3{/Q_F:+k3qyʏS$tkWE_ig!r& aCͩТuW7[_LILFnzsʁ{/F8?+{re&,mjtX!Jxl4mLv-8UW!/v ;aVz.6&KҞq蟊LFk}Xke[a ZN?+*|Ң :WSwQ6qG٧x-[' ),9E ,L Qs5d-֮G}G -'|Kia 0˄E3 \6xrY$}_oR7aY8á sWjL6̭ W8է&&"  ;жB8ɺ5!D397k|}%֔y }Wkv(S_ WN ib^8sFkI76O.dDFD:̶V>SY@%VfHGGv8&F|]PR`ݮ(=M뽮m ??p!)ͰH4 >S_zYEf<_հE>3os*B8[yl? _ֵ;ۖgnEnrFJJ8Qw8Hv[rPKCv>`q3\ŅR~/MP n?o\23\% `ɃWNvq] ߠϔ2%]BG>m dĒgr 4ٍù`,r//s$")>?QX⯈PUo< Ev{y@^Zr>Us((&92^s8 -oDs[+|eIc9{h e}"@Xu5@ .]oA fv &bn˜Ӑ&bOכlG%P' _D t{7dĴꦃeFSY*m@rc'W8:oiB2<'Ѿi >  .JCL,MD?{jX2 eP"ރȮGӒkb&џ&ݣ[pϮiIc+2#-vqџXҦ]kf3hljɽSɻopDR0\.%8&P$v0iǓPlf we 2X,U,oZ.TKxV+W&yf2-W 20P/B-o46j=HUX@>7 #lik5/*=!! ;UTѯa`[ !u;B楿uHX࿟0o/\X|?'SWlf(p#NǕ|vtLgz=$?URg@"n,ugǫ#ysvEY[̷(sBğR-SOl\ądlئȐJ|驐2ZrI1 ,EJݍX-XB! QT-$x gp˫8Vtlg(0OAc^MPOT#"gD9GrtJ$λ):4Ia Z}0Q>aRD[MO O&  q'Ifn{%Mvv (;%Z]:dgBޠmhN=S=0!3;R7MƣMe=b :J,oK+5]`$TC;BRa+j֔N;]%>%~cֶŚQО= l"KIѓAӐnr![ o[=1ɳ_Q] ږ'W>9!0dX,bڕɸY~SCs!%~w⨆'"B^`}[w1GpءXy tOG\'Q^@r=6]C~MV=?̪FɐjRYEc,GKŠbbSp ,׺p`oߍ$ ;^1)Cg"ΪN]r8v0HhfդoK\l *ᥲG~?J8*k)ɘ "Cwlݘ:;xOT1i#9c' b9axD οL}Pw¯k 8$ P;*6E/S1ztMz ?A}F ; ύ ?X&?;@=~  ~kA<8v>PSS"QnR}uq ڵDV/R^t#^@Z4=XX_.cQnJ6oT\tm3Jʤ)MYE?"uUVKxAj%AX|rO:yȨOEAQCIARIQ}|yEExquW oc*9X\aGcΟNLN;<#yBk\F ^ԃY`WoU\qmE#XyM)G[H+D˲Ѝ <0O>r*|eӈ|ʭ5gf WO9F[Mם~̜ZC=OaU %1dL65YOZI/?Y ^7('˨@Rh ]K{`Zo,ܯ73J1t<'/I@OO E`u"ODҬwk$yީSH*-S,c0򟯸/\zm|Y05ʳ4A)y*̻uҿ-uCږH Ht;gG̢'dߕMA7s1 J_?yN_5 A;x fƍ>iGK&he#Lh.苫٫R%dUxugJ˴BXeNO׻~Pj#7Zl#3XgqP!x&˟(:A^QJ]2;`Lי-WdLuZIP?`J'踒1šp^1PT=&YB2Gp9ڻ:OVx''C#&PD[v 5av/NlWddsHTT86C-tAjbְnAhbO3eTmT,('{>F@l41փzMuB m1,8͑X}y1-q^é /` w]+SvStGF_#bN \`mYBt7'N@&ds|0+_Ȫ6W#~rк=@!g|['poj4ek kK@wkx>#Hn/#Nǜf1SyIaa7u _E\* lFq:na_q 9O_4? V$H!mW}ɅDڲ/px k}΁U<\i te"b8jW% Ԭ\? 9L2cjk|)^r m١InG3k.-H釀)B/[/.[Cťļ*3U~&uEoLFDNo< {K\1Hڈj2YtKA ]@Z F%aw%Z01Q*6̠ .*0ƄIRRd|I7ҧZ=fdi|#6\A)3:EZ)7$zn Nco=ض|A'a֮ ! Ra$#拔nlىIƑc=֭aS|$:G\=J=ŁrA69IWs?P.hQ◫ǚڜZ2ꄔ(οP!t_qw qZFf=+U>"x8 lm`ŏa oAEgfGh2Ȁ'3C܆Y|2xu #YJ|`=dnQr^7fX v|*/P:K&Af* heI֭2;Q b6K2w2\Z#֢,Y#H[`*bi4F >Tm:tIp]:% >q "/ MzA.V_V7 d6 7/Dư FjYp3Ax7|W! '\UƄ2]R=Lβjm6;6nO)Fï+& QPq yϧr]ْ?3g 203stRO`a4O);ǠBcL}S-md a.qg vAN߆@ Jnh'@JQFqj&&`؅G8(ֻX۟UQQ @rҁY:g3nU_@s?; 4*#w6?u >p-^6 ,,$K4w |`/\A=ƜXo%Tzi赞 k}!I ׾7_D'-'z+8`-(!Jۙba8D _}6ީ(4s)|3ɀr$ Fkɏ߾nk r%"l6)D@ïVi$rS(H k!h+#yѻi`"ph`!1v7SSڳ7ׁ7,G/pF)Rhkg/~0zui#x?IC6L.D`|0$kv'%!ך"NUk ŋ ϔf^*75^"Glz-w10G|>Rufrg@wP#[beKkA4pfSN9|mse*voڷoQ –,c'BD| w뮀0f.%m֤,K 'VTc gWeG["%M|-a~b+x4.tGr73b6 L=L`T 7ן~s92rGK8iȓ)v8/sOB c(BDi}HȂa:B^`8p}]>aΨT6H#O!W+/71s G{sN34hE_b2!iNw^y}ϧ +X@Ф;Ƽmtg.rǷ(~MWŅR]\(IcjI=Bw!AlӚ?ьHAcdԠ )v5iȼJJ,]VAdխ$m %+##Q̂(O;!I|X@=o*{&e?Nv((<]7X5iŬti!TovP_ 1dzmb-l0KE1D՘-CʞMdHYAAY/NM~YCZs]82@…"Um $ utqkG!Rc>/B DnRRp{8[?s-,qb]M nLXnnBL&m#܋"L7~rYӮo.,Z|WX,1I@_3(NK7^_SO==]UŇM}3B|rPhSY,7[,t>u/^^Ď!Umڦ}rmg2R֔G "4n̋A2RLO]4PAiƆЭ1LDגM wհ   1FzeH:A|ZrhӡdFfyei%+0]Bo@ ds7eI*ӗ,utSO|B붞 1ȉK+YDjM>e0f\Bx4OY0gX^R^6T/ꂄ0ܔ% pDW6҉dok.$>2|X`87n}T-m8tp ! שZ4M ħ!~`Fa{l-n|I 0B'm 3ژƚcX"TͰAK6e_wڎ^G䲊 `Ek:K_l/i7y o0vC+K&Q~IU_aksrXS睴4/LZrHpy kŀ {֖mCmL}tL[e*\`\jfE`S5۾HrBd|4T0%5(!4tȪftы~aTzHCABdR٨fa!v0x ʑiK$_s.TЗԉ?m; XãI!RNWcsiojZaX))-_Ylaw}/ J1z=fg&oǧA ,dA"š":@GD2Qqd W(hUI 1ED"!:n'VŪG*}SH0BCW) 4'ωF!dJ_&Ah(Wyy*ش炛aԬ,hc+/-UѾ|ܮ7DXM'F^GWwÍکϏѪ,$}T~OiWߢRCW/k EGCMTDZ>}ÐDx52i:R!hqTMGˀe4QSpr{ry5z'"#:}(t9q[gj? dp.&92w=83^E~KUr'Z]^V:xD]e8.}LࡏLV$|^Y00:)PCMGbdE{| 462'eXme+:po? _hY"S1#Xӱ],:> `^-pWZq%ڕi>UGF>!m2,Bw䳨(ٔ^N omM+.vI,!JN* mgoFpϘ٨$?,dE4Eann@a6Bh`F o]0'<"NaR(&X]!~[VCLZJ/ /51T4dŠc7V,"*%.Dmd ^XBەaa*?{+\(Һ0w#WW~/Dfb܏ۭ ׵-(ͧ77jjx \nd4Vh_ۛq|^4Ŀʩ$/BY ԩn]3vڔWnO}nDcE3vGWA? #ggã i`X@Ѕd'Ak^% 67>/P1? U^d"'2.(=lA =bsW(,%' /hDBqZ ~ 2_4rVBMM.?w0`;SW&m˃-*'^<%xFIac|dXUKѮ6 d⪏7N3q:[) n/qiu*smB2+exd ؅ "B8Nox['oqK 8={# 6@ RjCY&JX,HNRڭ`AlwQF5:T0[[aYuX-sK$^ޞ!)ta1G'6cc]_w<9+ }lW4fl{!S"7bPiF5ӗ֊(=1D6uTdatA˕JqD@Xk`{+G+u-[ cDU2}&;rׯEq"9e.vXUK[LPqSHV2t^UݫJ<R7 b$ܮD 8ε ,ߢ 8'l֐r#kKNpAdGz:>yIsX *젼O=T<)t4铸LG~T"G*E/P@#3IrLVއ@b۸8 |zbv W/k/0wqZ#MŞ^VVΓ^T6*?yӭ}K]y0e i1,-.ѹ30Iw/s `mtJ0K*i8G%w;mv-!>gWzGE J0 {6od]`kV):п|\m?6,@T`$G3ՒudX$y; cX̐[!p bmli% Vǫ}'E73G{􃷏2 =] 6a<@'ϵ=1IO3uLwE8<̉շ ]92wRT#*6ĩJS{a^ c2*MaPYxz[%{*{><5fO wiסfN/Il$){bh ]|ҫ߫9E̙# vxR3+j+-+e? r-iJ A"9T?t_7o1tDRtKY9gxꧼ`k#/&G=\*M/4٫NIVM~b!mƓԽwDE۟_m٦$;RI@9ZI*C[XKu"1V~鿹:6"/v_'kXi^'gB zGg)T.|/dţbhmV2\('Xk1EuJvd1e^`(G!2{s:|pA2ľ| ߅Ny=EV yJ44 |I>;¶`(/겦6dkqm [o46jU~dFٝDW n;ֵm6XD&B2Fpx{v! 5lk^ G;)\$K(txdJqގip^t]wxū`b,!<\b`j9uo.`?ϗ.È|~6 Uy[@qK\Z]y Mqyw`镩ԑ{AOc `hj؂ ,褨 {+jII*qZ/k㺬C܈ֻcՉj!(쵷)s}l@mtH-cSdtn%EUQYձ:n%dIV"%)ڟTObrVbxr{D+Tz1ː]]z X:zSoŠp{RuLL|5 - -<]* )VIϖIlW|W6D1I/[&b<\SR:)ؐ8Z(.viG^lNgf=ɣc?ISqQ;9԰"Lo謴}~13)'$, 0m:Ms6S+ OeĦ:SXA8}-;t?7D@=Α5]L@v.:çFm@BSunBb@7 %ƍ\x]W"R`Ѧ(8x`ZhG ,__Md&Xӵ|Q^Ý8#.HRga$M1$q@Um_[((t:kavesڱ*-=o+1bOrXA=(\ߧVZןb_Y:q)x0B_9IM0:鉧ߙn+M(5qI ,Ek/)I|*D롆+.,;uM "_ (U=w㡿< ]ƠwjqT`jeX,^ cCT l4[ )Mc-ĒyKXdL>HKnI&s^g΅ ޜ5rI}2;#:'fp.(sc].Wnz>/lLdd1 :p4RH.~ZPFo_o"Z?TTzZ6:V G\gz#1ĕ/ܺ#Рoy8uys LMp>y&B7l^EVuUz+JM *B2rkUY.ȴCta.J{roww٨d=;7x`2d;| :@tlXF)$tsRx\z1,=mNcڻ^7pP5yJi(A9ʣSjóJ(}ԥۀn; ?^EE6mVR@fq_!qW ] \R促">"qBK0;4Dv/5xُّwxu3ͤ^Vs p%҉}Y"` xuS)^@G~糢NWRǯ# Blх|[кNU@;Cv&~GK|'o45s\wqg:~tRd `ݝ FtqpR:jta33 awzB.ⴃjeHZh;ꠓ lc.}8&|] +ZStO;=%ܨ_Ñ=X `ȇ=cq8luo8J FLQ^x\0`T?7l12.)dε-Znf "AhiTMF߯Qَ ܇Wq,/A=Ԧ21X spfA!zC(ł\/(%]v|lŢc ^Nx>YCLtr#տ]c5K1Rgւ?86$HٚthXX ;Q ;Smtu+cgv_XO+k\".`u7,yek¸&8QA@;[Q~,uq.trYv eO}Ƞ5+"tϗ!NSq~aVjNOm+ʂL-<Ю$->= )e44WcقSc9B ^~iR4tac1XBGoV!D1V/j=U^{zbWUo\PlߩljV&{"kG04[ճ΍Y* :{s:?~,y*U5_[mYi95X8YZFrS&5Bnu7=a3D8 +2IdShU@(zSwqpVW¹wRL\g5U#Od5df:yfIm~9buʑy~V۾c}qB]sw_K%8|NY?w.Q6L[7ؒ(6\rNFwZZ>&TЎ'>_,Pxl'% HN4tE~zPM3C3c)Dmw2Ƭ50Ս!AC,`- R-T!50e۴𶓝;"כ*r`gx }†!R# օ }p+ 0;{s't]֑1>^_8(+r/֠o.ia{e,9ػ%f(@NY[ 5&w[\д-:4 fUd=sσmlI7 :I AgdAzVOfiL=V#qc֢quU[VՐߔ=PN=>>U @w.z 7( _r߹_o[-Rh4Oʘ,a+X&,7(J:vc@@Xh?ɱs>m Gl_Uք͏u_L n?P ĥڹH7 %{/4b,&A!"wUhՏ /N@W=&υZZheNk0顇r )?š/*e!Ab|dxvO| J(:/COhc$>+znWbQp^`PXeyu]88٨'s9xdC*͍6jkCq:3Q9 iՊwkh4*EOLxW5)1coaX ʐTNlt^庉27Rh]ζt[1F :?M9*]9DRgO\6P]/hTR:łjI7L[#yOP~psى^Rt$#8h%O6iVТ΄*1AڥD~n90fYhUYF)zWo;9~mGW)41tyuAxA'th5`׾T4GDBwpfE:X$ۮ%R#܅SW;1Z\nk_f ~MkLrda?IH^xn $ ^9F `ԊVѐMGDPLD:]a, g:y@!4Y谓7E5N.9 shh.(-Axډ~F~ 2rZKb͹V ]wZeS %՝20f%IPoMّ{M2g4Xl)MTKAoXA({8ȎN,l^D/\'X["@ҩR͋!ζd?4:on8qφ(9AJ.VMI,fU'pƗF]Wd>^SԷMWFtS턼`t.-Q?ZoF:MwtK'B9ʴDB^ hhi;斁EB4h 8߳fHK* [ta5\@!32xRy㘾uf=N$uAM=([JLl^!0&_ /fP1n/Bs)BSiTjF <[N ]-4ȷJ c_FfD`O)(D[Gios,@9A`$ 8r42dX?ƽ/Dsz$#jS ?C=ev;@Ingv*MQ(޿^(9;ۻrrvFo^7b؈W}Jg:סo>R5xGڑKfA瓻vP[ b,cNs䅑SJwqԸg65Aoqyeg{$N$JuÓ ^Nv`sN!&?z֒c4x(@A#lv7piW߽S,CPިRͺ1rAOYvcb-DE:,=-b] 6X-&u\y DRy0A{gq*-G&4z0'PI:&7~* zx"Vѯ-EX2pO ̮1h s[5t37o< sdၳs!f ¼g҂nu0ͭqN>m./I'VzՙiẴMU5LZ`_#UVliEbhb9ͻc)0y7߾h ,N}pAުT܄?n&9D!۱'%̞&*2J?5uX~o(cʾ CRӞ1!yH96@b :LDnl @Ql:Pg309yNx12F ڐ82mV|~ i=C1=xۿq5"bBMܟ9KZkRAZH1W79 )8 &yV3ZAnAۮP.$B.cfB$?]vwZ" #cڂSz*ͲZUvq5tR&S1$\fp>z0 p^)aֆZ1K#0qYd}fN Α 2'l 9`:$ 7jA BL3_CO!&á V[2˖5Q?ӞM*yOT>߄m}d·*i-[Pzs wtvn:* Sah"|M $$,)l&O2m /Ͷ# V=8jhHq\̫!%6߷}:A <N.,LVГϣXTWnOT"TsЈA8s̵FT~Ǫ |vCO?nL|5ڐlEwQfpdl'YFTIFמ)Km?$Zzjs[,JWkcMa6.Jmg?=2re.qN0p;E5ZЂqx?6@e)q \T~ݔ#׸\lLEc~B9k;&iTi[g@Hfwbs-qG5.4E$ 6; iPb1wTl$R&Yb$\fd Ak83EK/DqlnS=0C!Tf+M7^f剃&|\ SfPV+ue<7yK7Z06(~=)+r%1TLPe}%.}Ɗ:֥ |HZ9X "u!fQ:[k[3O]ac W 8fLgsF9w0j4.l>4LomÆA@VcLz^cP5gt}0B-@&9۱UmPc_v v$MГGtd~ԏF1 PǠ Zn^FGl}F]w:[?SE]R[=ՄmU{ǔ޽G eqEt33d3'iNT qnKBm5-wfѶ>O wV4`LW +v9'b:ٰ!f@Om>7>?wĂR̰˃B"͍Wou%jz`Õ5xmp^_k4OXejkNSlL"O"cqu"hlax8}LO;GwZ_*$lP7գr!m8́ϧ}*qns㍛^+MF_7 ֲZmӿ,. @݇kzIV6pb9?mf'3HG;EE׭OB_д7!ɐ6 ārwSB.iBwJsc܏36;ĆYFA.y׭׾=[^꛵Ooe58*~Kdy~@r 1('phiիB, 3NmiKTg: м8#QSb󯝼¶+NES}ڈc!sa& #.)k+cTv!?mwApi|Kki[I=*%4x\Fgnk9 (#J5.>>}yψG_Da2'eDV4I& CB!J cW}.Mv02H.yu_Z!{uE"!4>/I< w¶23Rs[4_!kvݭv#B0a}eah xu2vPY6 0.&˝2C  9%#!X=|t@,-sM9z#:`6/Z,&ZBͿӛz_ɂʝf0/~ERRtʼmA2]DOXT:֦xFί@^w\b0+# 98|bH $'$h!>5stj^d}w I#{#He$a4 v0b+Dx^{ُCM/jyҩq v4SϢ*.QǙl >VΤ킁ASSX i#!6>2 cdsPi?\|Yi.Cço<1M%IM,utFŨ aW>;6\)|"ЪhdT,lnwk> N،%cu91Ӻ"^&8 J@PXy0Ab#Nhrhܠ歍[4F$+iGS67~(Kv]a5Zfn!#aGCȴ/Dٿ&k_۝n ס-IM `Bî$y(z ;TLLl 0gj_S+ Eg]5 WL箞jXbZ19/ *i:0K[3 U 0dѷ=sR!rP>'U%T+MzgGPtUξMyA']4jISR'=y Js_OLȘgҫ-ϣPPD "b-yo"d,?FRcS)(2s%ŶP1},10hߋ=VClR:ѧ|j4}W?_ΞXqG᳤I؂)fqJoc] *D k[TY(De4cir6^7)t1?P:g^^Ɩ#Mr^C"tKmu*-' ;C"?zf4{.cLJU]ZlKeDncJ#r!WaW=ͦ4 }LU> -˯RV5ūmC)T ܋*uZ4d+ /<Ξzhׅ =bw٫~$@kcAc;xqxaze.?{: 4…МOӆUr uJN{ȾI2LJV-ޝ9[(#<ɐQRkG-pӁ3 eg;@UIEGE=tHN/ wH.``Z?3|? )i6[ghobE92:R^Ymn7D8s<>@ M[oo&DĒoC-xՀW㐆|* Ml{ :DLq8NIZO|WȮ r`o˲nQZ&h"7=W!UE 5tER(-DU rr{Ɵpn[>56La~h:i1ʑ춦 _$F1`g(vŁvPdzL{m_+mы(Zx<0tnf0nK_N :1뙧>-nL1}ĦTw W!脾SP3l٬عFW_y D+By.,`$(B; cAÅ1*(؋QYfŁ' ]^6QdtH]:wh W~e,r;UD* )'PbZt(8 _/oVn.,Bnܑv1ʮ[;h[egP0JMɡҁ-yN,;t-6 q S|53PMP#Z Qg>*qIJHI?\7g(JZ.Gl:dG0no%"Ǧ<&J;v5e e$E (_"J`}4.)`XU{ٙDuiKa4<6G ޮ&^WLPa̮ʭ("V@QmnDT13ޟA?8Pcߔk;$$YD容FL] N6ςqa}WN?9'Z(8Z6iVTs2Kb_^r|oW4*#t=OZz|A'<^N:[覠`R `x2} '$ (P\O9_0OtM)HVT|k\$Xf7;sT?}e]A)ÉAEL&㽪q m8 u}܀7 ͓;vur/t?|~^&-ZF<1Fs.4QWd;$C)jc&ydK_FvX0\Wk+FG Cv}jX+ r eɺ}yҐ{ɦqUQjbt.Tt\::,~oպ(|xZeIJlMm`V]'O#\E ~.^S\,!s7En(Tdկ2-H-;|֢?,uWCio%j(;?O7Ghy1_')r@ H1 ACkݬ.)Zx{+&1JPپcÀB!S[&"zşgE)c0SEU. Tz'&Jtwj5=q!.2(YyeRMHh8 R?C?:0gaxR # zǖ:_P"+a/AG(kܝc.[&=ꐔO6f&u8*gQwo{P2w&-mÒL44zAalU\izTei˚Bimu9/;݂˫NCS! pk_`$8@] XBs<{NE8H5tRi@si\OSbcu@ϻqEEyte܆/99y4FVh|^RWU,O~v<>ߨjf 1SFВ7gܹӊH8Jwc#6aB=[D 4Žv)RE;JUZAA;VaZ}Eq0nwf"y W9Osk/ZLZuՒg#7YG"9$1u^=DO{˲a~CSV=to2򄽢-?y,'G%=Bo^T'ψ Em5kC͂҅܏%8䌍Ŵ~l~]+-| 8OeÅınM(s.5prns٣  s#;[[<'vr)6ފ=H\4"`W?҆'K:mžuIlys{.Jn{]h'Hjp'T?[,kZf;{N8]lPTk&@o۲}m^.? -7c'!%B!/ fDY$3/6?fӥއL 2|t&P>!I'ᣐ4 [l~9TBrSy=`pyGG2(w~LL~wY.xh<%E[@>#:7-n. 7Rk{\VHz6W'Gs 9jnwRmMsթ)aNܞN\-/ $z~5%˺h9~: ~Nd7Zª{fj[nig-x^[Oc>`ͫ+J.a`J\0GIwhj.qH`Cq+!4֠r0 ȶЈXHJQ+|%tA}z2 KlqKZ<;S if0p:@Ӟ:.i-4 m$IFr cQ$veV?vHZD30T` WٗGJ:0arSe,ZGw*ꌓ2b|^ٳھ^orp/=ϺmȥV/_rP\KWq?-IsgJ5s?<(Wh_S~],|>)`3ψ~ > v*"bH.fY_IP^KcC(6 #0^EO,8vf Fi*ܣ}٭P?D1j~ܦwS뫵^.R }0.,s@x[|CIo\ebBcBbiҪdYrI4,`R0t=PVGcN >h܉BtuͳʛKHXQ a?f0b Owh4G9(Kstac){!GcAsF !PVř)Ky;6 J6weʶFwW-WSɽ'|f!ܼ~ "w> uwpͱe@Ye3[\a3QT=~Eaҿ^WUFT%hT|6]!W~yD(S鬧\kq}Ɖ).(!5YAxbC,q6SứLT;bިY=92~%q40-3A~4H_f˴#"G~umNT#u T!呛nm8hȫJE0F; q1=з q8&\:kv'%É @ F6zRtq @TC1r I~_}^07JȀcC^Vd( FLs fѿhoUA1"",{䢤1YZߋABFm̽­LݰhR $Ea+ v@ʿ6!SR^]ܐI| 򂪝8yT;C+ɢݭMcgօU'O#)}]:EՇ(oq$.yl$HJ ,S7(T_E!Y" -dD)MJI.yjG֏zDgAN xEDUA^{1:?p+ibFXrGT}QTyum~3pƃ+꬘WXd$YIXl"\(G$+~&ECyU>e }};hLnMWIzZ#̄ez0AvըsՌբa9E5rc2F/<:]n:u1WGIY /S ~,i_vHs-ok<A=D T5GHՔTR&$m;(첟2]\^)kBn$J?6+ f0 [ ?hYCfmҮ.IWޏ#?Kݦ} *oF> "3Ǒ3(tYHbvsu :β㑶RDa+ho=1ON&jhX"Rrfb'PiJ+ݯ˥]8v2INH!?!x Xb]&4MJ)$a /:<[Iq)qy}g/7Lju.y.b=upmsOۺ6tQy}|l_K`@z=A7c`4Q퉋k2c}Ov|j3#8v\9vZXvHH$VjVׅU}:NSp_ODG?AجLG}aCMp`wxOPY'Wk񼉀% qgߘT&8 QFwzkǞM 럙D)iA>h0(BX˫aE $2UZ;9O#SqǪߊW*@F~;SaףT1eOp&TJ{.p&2aZp ⴜw MǍ,77[{LRyĐPWO-gjJDR.{ʄDA t^N3L hsy2G͛471MB.]ZnBqc' WF4r20042"zz&Ky)=PSt;${ grxʄI-Mb]N#h;kXfK+mJL_k&C+=baQnCY3$a/T|:o|} {2MS{^#hcp%#h4ْӔy%.54vnKyKM^r`G=/6I*~_a&16 7=r 6ˮJ&^4~CM.rvJ5xGyVQA|Iaɺn(tXigHo_f@R)?"qX&pBxҿŀj~39 YEԨSJȋu$ gu;S 7X{EG(k ZḅY!p?XȀ8`g&Ĝn ?oc?F!uJa,/(T`bW@B.ׯ^elưq_UH3I%CVj-A= 160}&h,/+RSlv 6?lhfʯz܊qw#$sFG2J;$ihPKh[@h9=Q:gl7լQKr̤F׬Oiit_壢Q,i>UGٝߪTP )ռ75*FF, "W G#F*+ ;4~jnt&Ijv$ɘ.w&!RT2 ;j< arG&KZaп Y]lpp^pP)׳N pf+ʛH,1@hH؊?Ҍ&J,Rp΃Yt['F߱8`9'XѲ|T+;;Tu>/ԏ!x` edk|I:2]Kݼ {8ᓄCyB; &XK7r I H$P r7fY l^{OSʧeR/N@k!׆Mn>ELp@d[vOk|+Niaf- .BP̷{I{Mڢv)> k"ys KK2o*#@wkf]֕ ؾ9z  >J --,S3]QVrڈUyc=oB^ˆo0xo]4l 9yxi 2CeeXh1 7^{wR`;*A`fTw([PS~M$Rq>'3auOy%*߫"kݎjQ͟;@saN[A-TJԝt{un@g pLfЙ t־@IMV7 ,V}Qa,",ѬfM`Nẅ́>qQ}Z}c#0DG+ .Fr&$+0vqRi9)JS|*Hu|+UJ5w+}7%ۊ1k R2eRXŊ[Y40hjR4an4qE)ÔU>%z3hݫra˖#w֬"ܨ7ԚCTo4^:Cs Q;>?K숥pwNhJws8U8,4|cM6I>vqԴdw(i#.Rq5jPK5@ݿE>)PD}(Kl ~lz{U&FI_ݲ:׀8rȃ⢕ŴT* ybהhQ۱bɻG&éX 2s-S8#盡G)mJ՞f?ӱs& [e~BTgN&^c+6'sz1MB1EG?aq^,=m@c&nc #X ˊ Ș߄oTDYX@Xȡ 谨,yzWMJ%3u20GEq`#,rޅ.Q-[j# Gm|}dk1aMΣkO jFP~ȹےF翦9bS,e+ t~ ms;ХȒ<F("4r/px%_̤)Q1"69GLR.LM  ^TRЪ:M>i ͒sBcm">YI@ Zpٓbi]_/p e~y(BoVXݠJSn|H9rVx41uI桏9?|4}@ BAF԰LJ%F!buk.0ЀNFhS@OplY h1osr`]qEp.*&t | -^i*#]IjJi]ͱJ:BY.HG8i^GkحmJtu?F_ԗ[fV/by)JH~A/d`bhKyTUȕW"/<j_|݃Ͼfdnp&DQ+E,%7{K5.7Hd9ݧCw?^.OL7z^e Ln3ujvlHj4v̷UEV]^թq/, 3|+|8+7dUʍ;Icx׭֫ij=,_Y3O\#H2r6فY[٘.޴8F7VkD0ޔlzJN]c}>C\U @JX "?sϢڲA v鶬[s94Vf۪C4H eiUAk~8 0]Ѓ6Y]uh5H&"}<>H\툺DLW*G9ޠ N@1\4jMqTҐ>O%r:F݄4>%,OZǦV鱈XVݦO|1giwˮ$Uܟً)ӞnU~b=sG]y;`)OE8uB־950I; 8zjP"~lb @P'4ݡ$ý"j骍,j)d ubDQԕ@L/Mˇ0_ 1'ڿkҊCy6.A BY˶z Dkn8@c^r)no~SWL!a%9b+lE+SPό6Wl>_ x=N>zzd'0oz@<6ti%6\KK3x* k3B&fэ~IOEA5C>A!;6?YS)%rFHd|!AiTV @rTkWkT58.V:;rR+G +SlC,{hIGACp\BCڞ}GQH/`5Dڊh 'QJT1kspU^_#dCPTWg2 v1"&`+(D!'x(Ȗۍd ry/r$bs3'ܵ1@i6p{aBpnPA)-Q~{+u&YXKn+ǦɱGVMlWЯ{VO{;vXd+oU^kcMҾȟ5vNY kU`v% _z3a6r_`Y˻!NDӠ k}U0VY!I;u _|?fA!3Tͮ+ }?kлR?ZĂ˗Rٺԡp1mr 0NCc*˥_G_gOvWU>,R4Bs>%w48Q>A|R:W~` ~62ɬ/aeE_َ99#/"=,AUfmId)x6W V̹"j}b_x50Tȉ4w_n?Cn<'f·[b}%"e} ×(R\TW?0,ke`9xf*ŘՔâe?.ˀ_3?;~Q$)Ff BTOWc2Æu{m @qR[^7H$2w$dBw#Z9< ^D=6Og'^ kdei&kiFɜTŃ›7iram񦑂wO8I;߫mmP2xT`Ȗ۫6n^CiT; ī'ԈI{ۇDS/RC :8h^RI -؎(ɜZp}OtMx(eQ~]gxjz 醆9h4]}ݠ wKt#hsP ;)&uÇA~;HEIDRF衶2u67m mwT&\Mupo> !7uOZ-#ĕr[۰#3Y uk.3Y*Rna` *YOeҮ \i+ hkNzvե7yy@H.uorũNcD5Uy#{CX AXj|c:d(E#w})`&AXizi57F'%]>)s Y{4P81՚>0e#ɚ'PFu;Xxo9_Z恏]R &Ե`r>sփ|WɈ$P<Ľ ؙᜉXjX)/Z3 n`prfIw}yt6jr,Kd'YQgmKw!jP~I!RIz*id[Մ9G~ʎBTdeSK/764*OQs;C'4jضOLӵevea.noE% j(E&ٿF4p^أZ^?jJI}+V.Vbg kյ@\q%FN%# q!][U]vYy ]^L/lkt%ׇ%Gex89)./Etbk}6 gî?Hn& y νTE+="g[K9BK!DV ݂J 馗2 ?qY %9?k8Ɵ]sũ^rGVaYy$y,xd$z%ۓ>ɸӺu):\"2 JGBE P齇 +߄'Hl4D Hg6.+vµ5T۟A g<Ԫy.!@Ecs\v10 V tI;6v|z?2"E .Z+eAah9\/E̾Mq4V׬oȚ!4Om| }d[?i[5P{ԯfS^fr,bu qӠf3 0\-/fO6&ͨ}u1RJPQEʦ5 q)Oc]OJ翑nw`;cI<4k3g vLE[:gV=+mgqnqwpn4|̀YqvHac&H8c$rQ<>}.d'<A`1@ki9`}@t!uJާFhBt^%k,NF\^RT6Ҍ5=5;ncTIDJ_q)-r0pvk\3pKW%cU$Ul5# l di||zWPAW ǃޓ@gu9 }$!啻gM 7D)~-EUn&`!!.=wDWB9c`M?^H2F pKӤse)Z mVA֝d.'-q3~(dBS`pY ̶%shy#>R2޸;)r۽/޳x|n:fnz,sXĸ|eߣ ҳ%%,"/VԄ"1-U*{qi_oNȎxfh9$Z6tb@,6Ap=V.L3_̜ԵRD(ؕ: Fy:&*Dyz R| S2u: $Fg R|J994zo jsKLmTOoSaeHW)G9#}g>%@Z5?Kpꊳb_B3[*dq"Z΋lyT ;wɢQm *z=4f nPe< (&#"\tPǣ[jaR'J(RcC,NtP^%ᘟMqa(CwV{tqNl-*mq1fMSiSHXzUMqD3{ܗ>S#g^v1.!iO\M%W@hNf2nc*nᱨ-c9P?*W~%xJ0-e(-29RV!Is;KRor+*mL[v:X&fەG^W?D/1uJrgaX Z9DϞC#6}"VxW#EibuOQg>.x{Z|&*) :z8!PeBv1ۂV5 !}r}~xy*Rz8 N\S n),*Wnl?e}B629K|4EҊZ`N*zpr1*m(McC?TN$GǙbg*NT6북f@)FOːpcn-\1uA! At^~kXh>'] {a#NivAH%i]?BsRa%¤oPe0wg_@H]D|?͐Rd}⬂R`G='(,ζr\b&C'Sأ8.D ~ȇrAXrKDxVwRt/N#..G sphrf(A^zzoc5"u]_Y28rEosɣmUʜzC/.*Z6wEܹ#ۀ#ѣ0 LeOW.DfF@d%=w%Zz6` ''2pdž3g|[CNǾT0C7ܮAN:!!7VoцYV_Z0A1k̬KH"Ϥ9l9t2,v(?t#Nu+ZUށx2»=0_T!q^8DfƐ (p8; ـ]'z_cz曡Q+M1;qvAV11x|8Y>=EղDŐkNϭD$a ɡ=?]Q!K#wSmQ GLD{X^ުyE)^M4xt8?GC*<ǵi0m::fYM6t0\{:m㧂g0$Cp/}EbӔ?uEknVZ(B9SnF=tC9+_H8bKLĚFi~:qxF%iGAOK )RR0Taݕ wtl% sqLSė^t,{xƸ/7>كӛѵ ^AiZ6<3;kƴ@ڞC9b19$ Gnr! ˔`%†**qqCZΐؒVR/G͒S='βfzc@ߧ/^ ݗ2U euf__P<0ںfĽi-nM<#OD[iSr/X0p4<,SJOI8Fkdt&O 8 <[TVLu^Ktr@~PDm9ÚFCnwUCL =?'<)T_} *FդNma+;ŬsåI >rYDž񆮒t[؁UE dMfECBmB_Ksv'3 }YJLadux# 0{Iűa4JO %*|8-s=+\|C5an73Kc7_^qZ49[b{\"weKҀs@q*32t]m" pTcJ\B?@/EE6CXb ?x솦8ED vq)cfZэNb)%-&knŮ OK,QP+vIqT U{ntᐲM0[zIu$MThi>0Bh5L,I6$砓TX,NH_8d-  ŗAփ;0ߝy;8Xt.۵!gypy>'{D&LU@o(Z3F(ڴ O'|L`46{{酜z-^a?R^1OI}?!7<W|q |}1c̴j{;?<̢‹ jz'sČC&howu֌0 zϾT2\y+jf<5Giu<z1B?s*Akψ@몞HI+u]u'10v7ï֏OEJ+XI2ٮE-ID{*b`:|4k;2&SQ / g,IcAdcW)A; QP$e)ceH._υ+*OnGJY%tB!ok D 2꨺kxWzw]()Am·eqM"gåL вC%oTЉt@bƌ inq]e~[ Z(_mLiIU݋k3z5]sI+P ܁Bŭ #ĊDޔdge6 eqB3M38@MNuˣ1]MQuX}ELy"8lY;lKŖApw?O Ѐf4pf!71N'k|1;6!xm8g~휌kWZѦle5ҷ!|]/Z !Y{;wNa|]?lv gprF&pYʭ.d*Nzg! ̷VձwZpe$f?Ԉ_ľNmT#DV.a3hau5ȗ? n2:I3L :8S~4.Aunul}ee~'h:lrT54>B=HtgN$@tʧ^vkxۥuɪ[l\^" sۻam|۔Al𧡱̃]5Y 2t r`YCX.%Td[;xXIk"7@%TA5)Z")iqhСsR*1 4&8RgIF\?ЕW\J͕B*.5FDWwE0$ۍR՞%x,]˔8+Og^ rQEDLHbS) -j~ ;:') JG(trXEV^NOMW`(GGBеa%K}_. c̋3*)B7y(itl~68QMXY n8 8ˡ=%0xG 2 UU=P,_}  ?d[\P  #E| QDA987; . '4YWh|670Շ(D2dTe߁.*J>{'6Kwn* uGxpaMS;yWM3FFǏ(W e~SrvGYN|tRlnHfogJtww}Z3WjL||^PK!үXCo4[PSϥK! Kz4U{9_? &Df0bNڢ㏎~8(>\CD"KgoZ5j{  ֪U5P 2 _EtM(<7&>M?A2qie,x9 lZl[m:Ҩ0$R ~0~ `EnWsɦ6 8qm7CAxBuU'Sx92Ab]g_j8ς_iIZM.c@~Ήќe֠G6y-E܎FI 6榃>XЦ!ϊh6."?QN7+·yF 8b8t #zfxC{ ܭ/-b+]/ŏV%e RMZXqX[MO`]FF)5D7t`4 y\mfR&–)YAƒfkĕBuGS{'('ʊ@֠֊ڄ9xì:?%@/1Q8 Io{)NJoRfQuNQ+q%oFb<J'NPd3)60{ f@c q7%* i z|6r OL\ȚGpNfwsfeğ_{"Salܢ w@k̺Nj[od b/z \%3V0 n&J7ЬT lgo"R%kH i|́eG"SzP!3#q-Kex'[uYRNBT Y"؄bȵ!\IQG9Yex]8?`eO) Ĩ+EJ'TE\V[Exė$HI֫e(q)D]C0Sܭn0pu5v后mDϾ6 :hK!JV|AO.$$0]R:TִOtԕe3=MPdSPI|T@dE*R>p^˦~|9U}oaB4(LcbvѪ!E?|Z}x| Sj[nz"εS'1/ܺCTN+3KX5~xa鰪D,X|O51G//x| vcvį,aߛSQMz_=䘑'cPKӥE1=VSD9(7YppbFQHTnFZwGY'`ݧʉ*6p=X$a ܧ1ں[#n(-3Ab? -5#j5s49L3S356Kዝ` L<8HjmAv]w9y#YK%Ք>  _Q^. Q?-gS*἟"UMwPĄ(FQB-e%:~STIy$.Nc0R_;hr댠'&eώ*P$pP5Zp 2I{[Y4!Qb$.]y9Q.Շ2m"A-HdNOܲO`C:η[Aj=(') 7~‹)D d84F[U6F|$)H-1*)ՠ;a Te[K ; i腀$=Zh2!DFddPhiۓLQ7( 59=8MLlidVgw†_bLi/v$0alLRVXݯK0șF4`2jUB?1O2 *rj]R4mMw;tBX^/L0Af63T?'{5!t) mG&]JJ1v0 E |14@6uOmIxz* @.q6L,ۚ_Pwcvs6]z9S ˡbjɥaQO2c؟4a/`N6#p{Ozɂcؚ`-`U]%Vijr|\-'禼y:+48d ̊ :u 2k㕭ե3qtFv&\:+zk#@ͽd^jݦb,`Z^eWŻrH~̂Xktxp7zT&9ux%JsH ?P1irzNPK+~2x.(i_: >Y vLoe]";[ c#97O %sBջuc)*<1i#0ԱÏ;9w0w{x/&a։AoJxdcX.SV- RhX!t@POυ6NBpNaC,q8~ZU~'-);f]x4s8?U]}0Χ(465oNV Z *?v.ONkPT/,ҒɌiKj3\,Yܨ}iF1*| ZWy_o+RfZ&#rm8J/i`N^RQQB-DYT߽q8w*@N5`ICoRŖt>3YMď r/CC|?neH0[!k=m[缵TfSG}YXu(^]JHʫS`W~52Ro+͞6@؛qǞ7)cUvљHNj$2pPDZ j;,*;hILX H6?[} " \ɎtWk^шBŃSLKwwn)5r=ǨŜob;x_yS:^%^rv%.qĪHQtP~'`%Zrԕ{:SNX]mnE͙_"9}e3Sa&3!7XW%{ܜ _isL†PР k'*O5r/t=0;ؽDk,}:A e)-.Ǎ'4TȨe?HUph<݁:\ȼZ校ۗ$bXBo WM6AC:MwaWH띵5HGN/I6wipaĨd3& aԡI⟢p9'3(ឲ(hd ~Yq̛Y&wRX;,UZ? ,Bg,'1ZH\" @-2h XGvb"?'nz#%bbIL0g`Ŋs#-tzE0~*]DF"l]XS)$~`ۥHdA^ ei+l邞w.-淵&ULn8kOfvJ}kͥP|S苺4h[J`ZZ-p!cNСKc2hrܮ$fo8ϋ1A#̏xbioT"0 xRRAJ[5 C/ǻ$kiǂG3SJ- `7'\zǦH~x\*$#g7䬆|IITK''@4SI  TaP7P_ IzNJת1F+:#&$~xحEٯlMdo!\^̈́.lp*Bc7&R앛|3'9#4s[]fkGo ] f;.6e$x Q٭BH^PNл.sEswY0$X lw@u6!1;\gB{ރy ;g7`FF" 4o4bb*{K"Gui.eWcBfvDfU5o/]|UD`2WFҽ>s0UzXy/sR_Wt] ZӼp!X r}eVyiΛaRgvCD뱌XN_Lgg-&UDɫb Tt>L&E\'u'R ðkUs&T*UGׁlQ̐0oB];Eۋkxxyq<kє{X0VoDG]3VPNy"ʹ[5һXA$gC"Im|J{M {H]4CN%)^")U56xPBMo"1l ת''ħv KP*yYrrASB'n-h3~'밞fc]uWʳRi(~l'g\ !2ҩ$*oՎ˞M!Va@j@m* )%q%<=LثPH֌BOOh(_3_=_^40Cs-(]:vsRG zs?H(m=)bn^>k`H] zf`Sx:rGDLVI8ȐKUv34[%ۦ;|L0OD9IdV˜Z*W}>xAG\\jNSk8e@:q?g<HWHP@ $TwW- Qm@F~6Wb 8].ӪS+OY9blfje WiptB ˳( Adk"ǩ{%^?4k)oM+ౝ$wq?pfSb5B%2jA_ԟD,ʂrLE@MMZs-f0Xg#$'}sI?$Y_7,NHs&qbKfU/4~-@l&hhysV%HCwmsPHYڶS{ Tv'73ӓfvq>b\4hU~9o$06 &YZ_L#n;gqQv <sY (_ zOv_$ "ӄ^Rb=SօT?{OSX5-mOF;Ik68A:U ڵ 8sg u !A9"ו ?⣅Bf|ȉ #,eJF9/g9'"E@AN!*iЦ:]$svA1 p6vz<|FA1DDL do U֕;&QX:CozKsq"yxӏ~FK@ɌF+$!S.^:<;'?T81&ƽ5ET(ΰ?=4|rJ-f6Q>&$]m)hr6C_㬻C]'ez^f}0|_dM[m5lxqd"_T C&ך&ۭx34LOJ7"F-6yg"Q$4zy=b¹`+O󚞍uӉm^~G>;3oU68†1\]nY>!Iǎx@+We-; `ӄ@MYvaTiroRNbbx#}ǩ ALK7㛚!`K=~pM 0" %j%@GNϊaKv1it z*~횫&@rs-0Wrﰔ[M;G ˮ^KpOaGf\Ā:NQctpcbFwxIrnJ ya[pٷ?iuIFIƠg#nx=61QEW3K45g"z5ȟ8Hl仆TlB4:l21}&PT"ڡnĀ1!i+C!c@rr_)| 7+K=mCM.~4 Pl9 Ӈ,T؝|%~zq)E1ʨ+a|N2ERQ^4Z O5p+'iF,6#K9dfZ\eЭ9U&r@eB7uS(pj<+7(`Dѵ cY:L#Q䅘ab#Ou) ݇ztU'1kq3 Q{/F$E) +$eIr6}o]/=9gl[~RKi'QdN5-|ngI .,PGH l2rnS3xqΞ(qoEႯk޹G~'|{nͅvΐ9fHFc[㏻sv t+n6\,H397G_*ٺʡ]pje@M$ Q?HX6!&rub7K!Swgéo}W"^Ga]f9şPY*y rQ"ZDZXVSsRf;v,ɰA^ |Hۊ$ RTIO6^ oWr=tnaůBYoܥ ?LWeZaܧv0Խ F' #HRiuNd &cüJbp daXs !kCb_x)2&.*Qkhe8~ [H8a8BoVPuxOTSIIv[4i 7njc}Р\{j7ʳ?W8?4<2~z4g¹8" Gͯ7I⿦Փ݅& ou?#A}|_ZC)Ox0oIE]6H's#&Trk7;|:mz|Ӫ*2C:@KM1)U闫7zSޒ/(;No*UVЊUb[EYPi|p#M nh\xaF-,_j}=[.iJI7[_LxOH˄65(Q4"eZMstc~Ä<ҾljgQ{"qQ׼S;]OQ3 Z勵VOh\Z )/{$32u}c~W>?<>կb}'ӂLje lI# {KXf-|d ~ #XЄ1˼T;&bK xԸ0cj5;g &휳BdKgx+i >E|6'~d'NѓpN|F?7`s#4q q^8!s"LW#d // Is ݑ$ẑj=b K\U%=ܤv8I:F}j-@7ci8K=ɋag_[x6>=oigG.t9|Nk1>ɐLr?HK=bǷݤ/Y~}eqP ~ BБ y~1G`k3/WIJ?i[9 SۦRL9Sjs? Wl|('*avRCT6ʊJo{ O(Wv])#="}ż';Ǫ?PFU':[oYEӝdO.?Y/o-?LZf8$%JOH-320b׸}7w_@ͻō5lqxzlPWnvwluc~gEQ|lNSI4C㠘wOOu|fp?|͟b5h239:` $0 ͨaC?ƛs tu:U\Ɲ)U&ɠ$t|ҰxS@޽^d-&l^X/{䬃?2!.*7|WƪHidfo=E7 t3TЦU`m.F pI:(E2)^ V<\e2`8ge(y&$3R|_^.o(HM4ǗY|V5mI׃m?O4Vh%|&XߓKh/ l{)Ny1=CcXNos@؂ê`|<%D x/ZuA&,eаZ+s%Ǻý"ob?Uj":aVO@!QeN?$W!WUipOI`7 cx J­ʼK^7<jWFFX~Ɵ-PeF3f)ܻ÷ҵ~!%%Rc*f?khh/6F7? ܇<c.~jfX1aB>V( Γiv()۝ @LX*Gϱ=׹3m^g, M 5絧l)&D'ٖ! ]In2WRCTv nkX83 ,3Ɂ4Rdzog_+P'G~NRn"oMF 5"'cdH.$I>+tZ~K.9+#uB@36)JP4lA>9ly<bzTB8I#ZSv=! EH-= DQ61C!8=}p%HoڎX8c?j&lEBľ UNp5"49wAⶕXe1 p?Y\wUH+zFHa;5]{[9/ J 3\8!I'ܿ*kЅS*ӟ'go\=q@AYO@]tS| CHj [ř!6({6f`qߜmsZ! !KP]`  `grV|GU]`qrc-55kx~aF?Wq$ӫ$g͵_%͒KcWUӤ> v"2e o=>K;#)gr ^}͍é{iɪg}XT2c3!9ccמO$̢PYm4jxW4 7 Z{#eZo9k7?c9ו۬aC$ZOHE%}>-H̏˗}CD,/ot0 84-|*\i/}Ј X0[NŊQI~QaAװbٔ K$&N;|'s[a?.yf2hH$ǀpjtս߿W IӘH>N4!zRcu(;HЭ@RY~8RPw c}YX b$-YNj<̣fD䗪 `#/~@e.Iūԕ@dAg~֌ M$ Pӥ{#QCmĵ4o_cTB@#zz3 Lb pw1c]h bL齅?:i^-:.J}ȣbxcmӺ%b[c!9^,mAH(H]~Mktkkm8]IeZA!Kجk"'Jy 8Ai;$x "zh"C{oUðUCZ<_<%㫖PnҜ1c-8?LA5T0>I`*]EQO!`~q[pz5 uL/,?0.a6Ӑ>/X|e`$cS %k^{Dc ?OwO^v:Tg`g;(oeA9X1w6 }_@,Њ5F[\Mz~pog‰%f4N_p"U縔-iaJ?15XwR )"6(&$j1oH*TP@z+ݨX+Q,,~ <yʕW ˰>_!,bw瓴ŗy̧jQ2cY B6Zr nB#?Is}yM'W&^=O85 jq#ΰ(ZԠ.<>v"W;qŨl2KrքUFr2:,vuɼrmbP;~ s4xȘdQժ*fOӊL0s"cAAmGR!iq=q\2ht<#N,r>kv@,u/}ظRZ_5 S2F*7+1<t./aka}y|$2#i|&<ߣh sTU/ouY۹vy2\bL Cq?'.XS%'>*8 ixr2"ܐŷSBf+.qni%sMV!oPY=9KЙN;[ϩr ޺|A8D9}͊p-||t,~M5&+f:$Sgp9g8P.2@__  J;@@0B>ozo'/2Cc ʸV ,k]A=BFoo_R[`@ըAb:VdDtpԲӚ;bފg!S6VZJa|3w4Kc6䖹*')iǗ%;/RviufauL.ajXp, 5L#~'>nCQ}v9vQZ(eɢߚ_0gIb+m1&f GԬ˓kS ROa)G o[%( փW 4\T{]p虛17vΦXܔ~HGm?=@j*EhyB-Y%W,EB*z0`u*j:/:j,ObNX0zLJ#z?;Zc%ogo?4,F 1ܗ1g]q(?#A`Y3\!b HϙڄE?몂mQւD1_0v"7pT@0)8 ΣD/ %_vPl8Ulj$$^$s*=qu,'4!$ݵ Eol:^O P~4BcVؕ:ufd 3Y {{R3*~ ߴj-t^׉Q Ge_<}6y !ziӄ,ŭ ?vb0LfOrNéOpx]w aBkD,3*BM߁1aH.t.=+#,8Ӕ|Q/UQTH.5k~Px(:&uݳ-9HۛU@P1$4$l,5Te;w۽_%V0M>]9NeE98@!N6=*] $. imc-ޚM&*nnΟ܀CaCVFdPJ'svYn_c1#[vԭ͙J:4.`@.nb]?X_[܁FdwqQ=B$pam>Cd5Vom 5x(2G.E`C]Sq3 @Z2.^⣼Aԉβq& v ;aK1)HNBdιhMyt]zGŭ`öl;'eVrmo͹i. ab߈/=I@6ڋѦ ?j}W5VJ>9-<|W" 9G`+V qjzh0hR/4 4D e01$[t![;K[' )r2[aQ? w.t-2u GBs *}/}Fga)7} #c Xp`&)`ȬYw#b~f~퇴L\Vн'".ƷVwt̗3J;FJ+}<\? h |d; IY `鼷I֎xR3B% $i{ j{4Gh b|#DaҺ]G"8(u 2B/쩿S._cLK@JE] .TJQߵRÕ_ݲpVz}Xzɂ-qkL q^˹H*'Y6\x_EPLhʑ:f%}|RcMni<)L/Y)q j< zCo8c l6NjBYpK rk^vlŁe"`3/?Ǿ&&q:JUӰvI0wC!Ȭ0&RJ@,v=0Xo/Ah y ϓMNڂeG`E\-x17h%M!|vM,.ApDݽQz@*&e~Ƥ NYEި$j("ee#%}0.in4\4WZha\WZzF\-Xt+f:" ݥ@tGcVt2&3 i/ZӒ yfJ@lτof8-L=A,7ӂzE -f|ثE^v{Z9s+ilKhIbUbK,@Hu4{i Oܫo{DմHj[,D|"x\O#^{MRyC/,P,Gz [ w,6룮i{L $_vPY 6׫, : ijO_<90wu&\1 lO?cq6yHՂ Ҩ!Twx ]`IE-@y7';.~l/gO߲+tj+ēa`2OT3GGC8r'n mla.pX8p=|Z[[OgCK_##!U7x HA5- :c2スYHHԲN P\BI5WVeRk[B6jLNJ_Ľsd\b{Z~78seSkx)Uz"T.mNOX4}%A1ngL8 TeAaHۅ!'{qs:įfK'`-ǁ ݥ";zE#?.D]ITҋX)[8$]MouPrk|ޔLQQTE2k."KF+5sI^HzדIN?1G~sAa9 WFzv5ٞ#uzs+]XY{ 0֌Vos^$17RW̔Ty7[,ˍEAJ V1C~} *%O%grO;9yF`- 4Jb^8z{ aQå1 Hi~m֙[x+h"),1IHvc cJ`AQIt@:pf̔#qɖ:WkUR WA<۱Y3T9Av P(ai/ƐC/+@oY<rk6[ó+6 $^_Wƪ<,pݶ`p4h|S|lƿ"?eu+ϏPN:޲ 4a D-j tKQHkOo.B܆5.L~wv Rҩ`Z%Qd (_7 pݩo4V"涟|mfyE$AY{Eg#Ew [q|5 dyC79+wOӨP]p6/L3gź3)JWRbaaabO\1O MOς!Ŵ,FѨ*)Cܰ;o^8 m5Od%BqZB>Y[:]1pٛHLe3+\ĘN`osq~PW\jBNL' R IX8Q&V6AF9#3OI,y(qm'DGă4f.-nbj,KnOYiSB,DV0 JQʏRN  7N^j k(& ,;34?G~.qf6U[O]z:f eAkkd1 4ӀnIȻ//#3O1NjV ].nzx,wa#DyI7[/ Gbr0v\8Q(Mz0.Lz*0l\_]{Hvwά$Iwy'7l2.ƈʪrK/$V 5xGHM\QS`5t\ӦKcf2Pi!aoՑuވ\*-n-0'?! CIK~ ꄃjXpwU ƎPnnha AZ#9MjS[1[Wň {VĿ+р׌,,{ߐ7:v]ʔURO.+$5-QO_!q#w)h3 !z \童N$wL% Җ!R@H?dk$#;$FdAwC-e6N5چ ~>S$?&JD>ښUHFe'f:6 A rШ 7)ۃ+vg=*h!Onx@'Aqۡ/stxS=n"(>TN@~֤šDDFߚ\ʀЎW nVwf72V* ^FѢYfq_y`Bd,AILT,ia5-JTM?P%_?ppMkE o6&|R^ZڿII.1>K:Iݕ` JcŨ߽\' 53dàK:'w٥:pH’GU <3: v&598ί!NDVn6N \OXߍE& SZ߮Y1]64-IGCҽW?kLp4,==U6uk?W{bTP.Ɵ_cȪqe1Dhځç32t5$w ;zݜ7?V-^`;å@N]_ P'N0WLxr| a~m#T$oHXB4XoZ B݁ 5$zģswJ8K2^kҲaFr14./.= ?m?'X 3E3pԕkR.y3A߼Ǽ;ˆ~qDSͤ,9UWкgXCU s9+|}ȍЖ.`د`xtC E]|f2ړ,hwx!p>s iV$wlreh怯۱|N0o&<;2РA)@;{?˕<`]\|s9Z!v36*9QUgq VOuAe]ʶڻ__XzvR޼)O'g/PWĤz5HaaE5q Z}S0ҋ!\;L1 3@ah LB.QTj0VNBt('$~kv$~('PWh]~y4jOՁC >T%$~FiC,~͹~F,"bF,nO#5ctC Q-|'{i D8- v/ $|t8Csى@@4-Vt%L;CPd%BǍtQp`,Z9G:ӠV@B^wJpǘ-bfRՁR?V.wۆnT LQ4]s:r-/G &>a3_͆㷴1Ta*~ʹQ3"b}v|PW_`[tgݦ{QKH}L5/yZcI=*-] 6*TY#-Ѿx>kX%-X;g3'Jd{ ?Rfoaa;JP;H97PxvA_)XwyPnu=|:ӆL[|aȤ YCBOioW֠QXT+_tC!ۍ/S@B:$5B0 K:#LTFÐH\,tvA{y-$rE7uYy\dFQ`e zՀ "g0b2lD޾2|+* /ZFu~4~wՀ;vԮċ {q ?3cagl^{Ĵ/&BgcףLd

cBѯG2 huJI*DQ(0絷RZɦ 52Z^ 6I\W)3ә#>;]Rp-Fե@0IK:QРo/\/IsȺЄC r;#ҹ[΃x$".q19j*ZWȯ:)z.%Ųt 0k$6?|jp]]Z7>*~{Ls30s ]=L.n I_L|Nv{y;8%&~5`gTMUIC’Շe!!dqe!g({4'8_׻4C2Gu96r]%mEͦ c@տ0Yˤ7mSq"lY <;Ec ULeHAtlWxL+yM[mO 1oлQZ}i)ƉLwVCv% b xb7}m4KC`E,ȨWʛb:Bv!WZ!wJ!DŽLllvtA= zoRЅ[Xc]O8GCP0<9Dyze[ʹ3Tt9__YšyǤ]|>EzSe`{C:J5H2r]gm^tVX + 8F̘E oe*ˍahٹ<7w\H_2Q+IKtk9I;_;>;~"GhNBPX[w!_T GZ`;<]$Y ,1!:){Ls"w(w*U -*~K`j$,RҮ> gL[Icl5X#W.whx>rgDW@h,LdOl^6ΥĥaMtn/:? 7Ԅ}Wuoڏun_R=aJ$! E PCO*ܜT]U.kL{ϲ 4pp55޽Hӓ3O7}SHwgW^߄Ov?5rZLKtiPɓ5~QݷY8MK/;ɲu;]0Z;_ ]>.]K7+G))4[+"Yg[i}jԝPnY߉^SflBƢcGNmE`zWlSڋNqS pZס50әԐ]{z}fʽ [C'/#oMQwtkp9މ5Uĉr)'f$oV8tY!Ǩ*vlB/,2! zh͝J1Ot+Ā!Y2\9̀zGWUEP8xJڴ8;69ּKRB3=2{1p$ ȉ޿ml\g܄~+K{TwX yuZP^I5Rxí7ZMi~9SMͫFxs_C0 W/4x2J(&1hҢnMiNtVd_#:Q4CLR%IEz[.Ѻg\t%p7ův'ϳP' 92.E.,{Z$l]v_I$4 rrn}-#cGjOm0x:$} 2 PR.{ݸ$²bYbmO$~ơWdD3Қe>SYB&Iv7'f,]n\j ;Gn6Ϙ1_[;@SceH z,^I-"a'{`/"A E#P^'~ #Ŧf*=Y<3=,E]JRqst B^6AJ+sۺɦF}y6]ۛb*Ǩm\wBYly6%u l~i9'عPpIm`ceL+lۺs.P#xMtN$0ܹkxMz>0D do]ǁ?;Dx=e/XM(F TP{tOUO*1#%#pߝB47~޷B$*v$1c51I 7_ZYV*,jo7^:f!Hlѩ-"0,%Aa u>++BD$Fc ,bR't *~b:HUzØVLM>0g߮~7g _z` Kg:Nk qE2K%\  fڹ]/v:ĐlB'K)\&0|₦{88UԈ7tjo"5!s{mfplT&Ol}^7\ϰmh8ك%7wOk45Ր[&ÄTuiMPJGe2I~++#"?A N+b Ni|~,!9[%*sB#RttzI9"XaԣgA<6sg6԰|~X{c6"? 4:(n*=RiN$ƛl2V#ʝ*I4UӤY1}q:5ElCs-J p̎eص܁RHY[+ cBl8% 5|NS)k XwDfbwd%!A}DF2@. RϩƭY9g!|^B5TBv[7N+ ,5k$n<|dEtNNqBQ4)^[溨w1㲆dhB^B>%MU7F[,ӼUK.d.2hV>fqiRtт{MOԬ(SU@X靷D'D%p\=}(WF%U@.UoYeOa"1ʠki\{EzzږXedž&VuA=/\AbsއKVQ9z8-ap됔 >8 f2[c&d5( |◆Ff4QS, vO-Nwo g''~%Pna'W)K)+f3s*Р̀1e,Šǂ'OnKp7j%(V緻ZIW/fv]^k,ω^h4᪣{ uRQ϶(_IN}0Pzjcrcz﵏M)[\`Q+̴MLM'4K/hu<7`9wv"✥}~E5u.:&crÀNlQm$o% _ ܑO= O 3Q Q6"*VBȺٳ~.F$ڒv7a6D2b{))^?O1_]#dSa[8=n2&Up:ݯ'q3dPhsJ7Μ/a[te]ڞ6*e~KV&d\Ur$:]25A!NÆ$՚9!r۾ɠv\onLMH wbdz >'h q6Q*A #MϚwH턝题|b Mi.#x图nuĚQI +#7wj-Fz98ήw%)d_%`*ǟTi% 3ʱ\$am[h0JSrZjD`^-$5eHJ43X8'pWPn2%Tor։޳0/Y@^)"7?=*gf̅iHJ 9DifI]s8‡9b0 QӰ(Nv9k("X~BT {=眕\ЦJAsyə2b哂@L($:7 vYj&5 Y 岍 +LhQՁX<*>JC )|EHI{iUPmPa] 5DCF:/Xu9ӱh $sr Z_ZF09x7Nq_ 6&8! lk!)!JsIh֓9;qp2Z(4l|s!*7&Vs! X,0 &1e(s4˰ 5gWQTw2B\NxTl_lS^ڀ'N|`̌Ҏ}[ 2Sʜ^&weOTc>nT.AGTa;q:w:t TIEFM}SXG|g:bp5pgi~DΤ-T*>+xg۳wJsaI(3]jtEdi.`O. hcO,`\Nq6\ID j#أeVjڭC8g( ֚ '5n\ Yy]p%Nӂ1e1{D"- *!.DžvE7"+G CS#/D{~[MfX0-Ǩ`aE|!裖fm$, Fϕb)4?kT~I]Wwd4@d w&Qdp‡,pɓ62pD2r_Kv7*.ŎK24})"=N/4>DTg E`&UI{gMM#/On@mZ-S-E p9[OJLQ|0 2I1)Y\fG iDRnf=l,~QW`/5£UyI;Q.Y97WmXGjAw-zu2| bԡ{TՃZöSWA&?]hMF;zc6ܧ_l,x30\wjO`Zxh.T-F#yx.'x 6~j2/ŕ;8Ȩ^tFSEah-{͢DzU_kɰW) >nvC٠Ǝ:ꗿ=uGnmYMڲԪd*ӫo*t =*\8k"{ƕ-vR/d5K Rl3}´rD4%2YmsVF :8eGЙpxPǢW'g5=ôSSW%--zjmJZqœ 4Kj m~wo B4Cc6"vX^/7˜6ȬQXvMΆ=|‡]skϟ-s_Ҍ4(dI0V^,CZ?N΀=%ۇ,,I|d#Wӱnl%IHCt6=5VyBY5YEqDvD=4jeURn jN aH<2/{GY#ߐ>KO[~XG6Lqڡo(WL7T6KW;FL 96(V2w\E3<9n=~@,_wdLKn)<|/yl@%+lDF;P]HXC%wԅ![0 ^ӄ!Q(34JY1ToL V2-Tm*хJNv5Iᷖpvm૑6( E],y݂BYXoMMg{sxp?2/DX)+aJ~8}1]ꟽpX,Mi; H٩ z~dk5f(ƪ*yͅ[~sd6gʓ1FOHKʱBCj&"5A#XD;ČDa<jj~b&/{"] Kt6|OTdEOB?R4XP5(V(!S uJ8| enT߄+eW]rh)"}v|gܯG -]I]48*>q΅dGQ{zN;Բ&^ez]\0ERibe;Fs 7 ?kZoO [jlR {'.|?#8TecEH5keLvGaDr*^ppN䨆`uQS{:lvͽ!;ۃK.b ,MC<\O( I6pTdE7^yYv` x_^g!2InBZ]rkOrA@;bzT," Gd }pfB)lY~|&0Qoe3ΪuS)ը/T&T" iz^{PbGq;^c1ՀANQ1U:bzC-/4Y%(w2z5]> @ޒgC>}Rôd̫?z 9|~ŝ}f\7m3+:5+7M2iQȅNw0FV W.4T +˙_ ^Rxv*\-kxy:4}nBzϜkrhH {2ޓBт|`RY>?&i{KFK. -ܦ̎RCr'VQ0s3]wa9K4g0&齏1fX^l 3]-)Ҟσ#Ն Ɲ ,q4743-+Yv}AS(DҔ~gF=Ǻn-y!_Wu`WdeHp_~#2u+ly=DCщkyHT/9\pQ#Y2gwx&ȟU;nNuUclG['A1] ~vfUSm?jBa=NfJ]mpr39YΠ P6Լ%|I,1X&Pƥptݰzm`ZE!vEFG a-e`)vux],5HFZbRC؈S;blKi{ܵVɈ&XETT5|uQa .kC*64V%` B:LMvm4!WU'ƌ:PZwl&$u|?p(~.9e@cY+Q h﯂k}r[1u% zGŵA\m$*nP`tV5 jGBQ5nܺSj@aW>]C )ǃ?o><mQ+BI`Īj(&;8|'(2tf7sϼًAdc>>.d8I4wy;ͳQi0L6CgUz@x[q/ čC?5I ^1H*F᩻t \ZR@7`hq%3;:q1GO3;^Vԕi:S9lY>V>þ$ڀ/|͠xA{3B'E8s舽CbzVd%ORs(կ-t ;R OCFcɚ鼑Ѽؘy]ดF_,_xq d KlKrw1 * € M|d_˦kh0X8?_I9}X6)-X0#p rpo>Y&?p's0ѳ6M06;fc2[J,A‑20)D5> =%\ L(]wmJU{A >Oj PN5Y]UE JQGv0#9lʞUtîr|)`(-=Yt2H-7fXkar+)cņo_xSٚM KK %D sm&"-[:B=mq`UHiY~V\Qax<0󿡆1r.8 OY6PHc,E0.X)7ekA* i rXVk'`05IO<),ۥ)lU8ox/BI)|]_1E[65xԶd#0eB} @%XSf^BB;{w9B܇n\򄸨逸5w7rèvR9 j ;oJWu j&7G\E VV&Cvypjl .k摅oF9XF&<kє_tKE憡Z d{/$4!P‰~́tsn5$0IDŃ+P`0۸tEq.YD'?5*wJ'^⾎YELHiB-\5fGpW;w>[҈e=HW|jtJI bс?%~r4VZy %%Tߡ/dn>;J"WD-j[s!l2wi"X噕Ɋ r,ї5\J%{DHwʹBiPcApX2HSh`pܣJ<Ӑ%^_=RF 9VX+rmKH&wʥ ;U|5:?a@#` fDҡSPR3ҢM8 Tox {dN& 6 "< Q$ 7bLRRkiF m cA "X́nt1d?,W4dRk%jc_L Rߌ<>S)ɖn ŊvM)t(s*,!$ުnJ۶!QZW,7HEe}l!VqhEpkzghp}`ϘA4 jHH1;e-nnlCJH *Sؒ,#i {eUfHl.(_\M\hlƜ~?ɖtk'#?h!ٗnɮN_t\^.{g^Pc'[֕"Ի*IR9OJ'ͭC(깲ft_v(9%CkGHOy*Uk f 򈔿5Dns8-A2ss߽ MbhaoL1/D]N&2N 3UkGo"O0gw&5CiҒVĔ~eYO ԱuB Bf&OTCɖ=%!ҷDY`2&Gp3(iTZCBG( NTɩqg.#9dNd‘L >CJA>]UʪL0uUQ& ev{k;6 nXnen\B:EK|I{"$uxg=PfcF H|m32FD Nիti=Q2lXi½> sbc $qGM yt7in@f~$jB@'I'+oO9e "Mǥ/pCNFfl=WAV!Q@Kq9=ߘс' %rB3pЏʜ! ˱x `(a06p`NyJjnYM4RO؟QsBxn^N{դՀj9)E?#Kw9 H=yʞj]KpE&wޓ6lp_苹+mYEwX"s)T3˜33/2*OLm>@Qx:Ss U{x>miaPoC%u &QF(G-Ń t$#COsI# a.k#R(#+m~/2gW,f6"83}TBtjHM|3Lt.(| Gt{t[ܜNV$Ps1 7]b䳠zd> '_͏Z̥4YA+ CDع-agy7pc('+|`< pkR X=mDTMb_]1)ϯ\t*ʨ`3:5Z`(GBy˻J8K:ڣ&֌O~JF 73<ѾCo .<"ءP86l޿۬By)IMG~.|:#.Ո8 R3>Hɍ!Gya8%IkЍS0͙HW/"FTln;M$k¾3akVS|ۢWgH:AVk"< F\[Hr>9{8xbk9qcj&Y/ْ=2,[M ֦o q0 [Kpi"ce -EC+A7R#zZ7NwHRߋdܪr'1L-`H79M`fpƱt߇_6po/dy+e^l(NqԘێ}-'dp mpi'.&prߚH$6M˕%B*y4Av ş&!PJKUt+|.* ؗV+h7"Wh.W0&)=D(u4N|@Afj^f$Кm]Q7@ Cb]>m{Kn(ڒ[CݾP߉-NHq_j&ar †110o^"O6Ory pj㽘DP̦ohH,d8~҉ry&bN}*3 " v 1LgOF *MIn.g&S4*ISt^yVm!E 8?|)}ƈ zU2$}8XHXQKɴ9S&4dN|i{) %[ }ɵ'NFᴕ02_ר&P7.Dݪ2r p 海m %V@罈i錨U jPM-Xe$gn](@9!+q~8ϓ8!Tڱ^yg"nޯWNO= ~ 4~E: ~okxp_ۂ!a(I -g݃4gg۷9dPL(ڻJtmfBx9oUj_ŋp#܎h@=EVA-E(XJ@S3Q8Fd@vElBG~guA# lqS*mޙquAY6ՠwtpˡ\BNn&(ԇsT.V+E4RJ0爅dψlAp9qk@(Ԛ 3p\ X% tvy{K*% 7Kƾ.k% 9&adE-jo9I% s_?sŵY4w}< -c2k^)[+ע@tmh% vsqo&N3LZtMk5J?ȰwƜFU Ua$$a|P@U=#:W[;OѾt d. ]KWpqv{󜞜5r5kq)w\c\ d`v7F3#/NE*U(k \9EmWJA U sv&QI}}iQ9@}ѕAMABv7i"^r~08=Dk>Er/'򇫤8?'tWKNhx~2+Itsnb ~LJ{ն-KCNEQE,sko]1lCs0?vBbNfa-:Nn܀Zksyja(3M&+^<>F&R el@61C6Q d-Л&=o;s( \CWJ}3`uO*xR~]߃+ cWLW{J]?v(t#B)&YnHWQw:s&~'@NDxYCnZ3 (mx&HxQwNjpP>s 7\n"q45L5u,};!pJOqmYB[ևQF=0;adR!m&Lx 5!ܡAڙuy \[S=7aC3"cw1ŐB->藛S `oQ/ g}+&De5r.>Q!VgF֎ȬC­񴐂L#r3JҗedV@o-C:.=auْcmʣԎk` vk6`&U'"al] \|̗=_q'&jF© h a4RE/;Ü)=Jn8ޝr0ϸHu*{F9A~r0`Fe1M%[ErS^hz[*!rOC\f02Q_ʮx_XBKOL_2zVv?HjY`^^RӴm@.9?x#\}E{I&*)}ch6w!6ʓ^9΍Xhfxחklk`N MOVA8v;Ir?ISC[sn0_B6qjs*cGT]eρgxRTډ`Q2$_RJ}N>+%"?[__j@$: ][Y5u qg'H2An~iA$-lZ@57>~l9#rs#)V3 䧷\kΎ,5[W 6$סBe[t'hKI\a'P-oۺ1vfZ6vc& fŨBcP]rI\̔҃u xue+d!oiD"3t4Z˵g6FxJC@ྵ?b)vn!wCeռhm?c(cyu q oCz%ŋ梐}p;=M=8LMY2nƨWA c]⭅_NϔXTgYQUˋ3-%^GdbWJcaMӸ:[K BUty9*+s/G*"OXQxJA]J_{1C1=$Ho 2~a:$Kw2Q5* s9[>5NГK UғSۅ+i_$j;yxͦ!+$7ʡ m= tQ(c#z=e"Aj5'Gg87 4%̼Pi }1#Jj)\yl9(Og"4ݴ1M6#:o{{]ed1ï ˌy;ߓ=V;NmRYYԟr :[̾L$?2톲]GTGDw ;gȔ4҄?5ͯw/-jB.tnZPl~!Jrro$EL[:įκVY 2V+.PC56I3ȁlʝH bd.sUL[T< fPv5cFU"[ U I$U#'`_CYo߷*@g1AYӿs9^'T*]5ÏڜAu7Ć@Z-9NxQKMAz"um4^?{щβ&j"samBbbb!KT`{p];`:h"řϪ}FR5, tE#W& 8$Zb}GR,]#,GAD[wnʇH8nUPEǕQ0!ߟmf̧K}\D->9: K#d;#̸ ;"kPm-Pi1vԑ'ŋ-&D7t޻`+.7J̤>(a ]Yz<\n~{f& U8&怌ljr?@u;D]\.bVlqlW3O%eīۧF/"ljYdbkɑUH8aQX k$,tz/:A1ep|Bppe> $-Cc| lp͵Y{X|ƞIVږFPLS=!:z"DL8N0nD^DetⲨ' &# *G135+ZyY_ĆH&,K+>2hp? dlVƂn^/T-lp+=RbKW3T,I5۞u$| )|Ś%P;|O㍘[h~mbSDƖoYUU\0:F!J%*悮K/́ NYeqT] "OKY Wuc.¥ n#ƧܻuRR.Eo_m (&QTM`φ96r_P5zEլS_;Ege+4zķWOc.sbQ0:j0mk't*n#^SzÞǪ [(1vs xP w x/{`2 $=xHU27S\ S84X\tׅe{ď2YNkSJ+B7(R:by%$G%%* r|~HA_x+6cY^4c"+w3,2SLf.N=on=C`kcC@wUϷ% !Ԅb]#2qDcĸO99uUGySIgk&ʬGREzn:F%6ZcQrY"O y0W٪R|~¼NǎW?/Ϩs:'&9.O)Wx.% ?G!p~OgʡbcزJoW=tyᑉ&+z0pYɚlW#h~ CAG%QHaԮ &@0NU_41-M`5`xpL2e\%%4~v6Ka gQ#2/4F,'N;R朳{&J JȨ3\Y翨FCVߜh$7l۾K';pB#9RQmYLNi?oi48;8vOa'AxzZPҕ Z?00ՃY'z5̙LKg3צ=7-1Pr0檉t8UP e,uW_-mfU0V/"Dw+K̑ .͋JGN1SR?DN8peި6i6f^B-S&k#, wA+|ܐ{hC15kQU: 1t,>Ѱo=U߅UEق-\{b ǣ]t=ZU*W8ˣQx삧1~ l0gmL)r6C:jlB)E`՚v1n*sgS uG m$[jx!|C P4Y&MA_(d$<-LϠ &Wl _92+'1#NF=B> !%m2>s&L\['l 9IZȾ +#Ro%T\]Z3zҭ|q ;[NeQTZCh-祁7E%twi@fi#颩.G䑲tB{sRG{O+ݚ& >a.Gk;F"B "@峬7{r hIn?L7]kNշXFARPT* *K82aƔzSXVJG5 O/1TaN =wu7G%`)B ZGمX`,7D_%z?6zw8eLHh8E!w/5U!ơ0v A<렱MFo 4x^~ Lo'˭h>':Ջ1=Y bG_x+޽qjCHnOy}ƅbgY6oNΩg^}<$!D(iJ8Iڸ&L %N8BR!"i%O_JQ]Gװ Zg Il9EBȼ]M$\Wu{yP>l 1LG"=j\ɱdۍx֖@Q"RAv:ZՃɜ& Vnm(J ,Nvr )cPbMRej6dFq qliKIbOD"v~8kyVbkZAh4?~[}}2#XF|S0|mIV806'p2G199=^ShbŁZre[ÉX`00*s3@f@"m9舟B+2i[b`![s5qqmzo8H0fY":dgނr.<i,S9=tC'%z=`FG0RqFv$I/'Y crzKл[>]mpͺ!n-.q;)ztP47q6WAj"\mz6gϊTզf\qLAng/MnūXM5uw%syaeYqWfX[ MCF~:z<%z2ǎmY.q>v +Oy+\ epm #'4j碵 P|OЎPOZxЎȺR{^`dLIU){[Fs*9˭ƺ0Mgudem++y,qi |+O<9pXw?R<ƒL"X7{-O9&Db-)ؚ F3-J5BK#0~~e#EI}w\AtP]© ()"PH/k h]}0I#6%1ɔ~ww7*x*S_꪿e&ĈkNFHP~ h"ɺ-+j$Ʒvg6VC%':**EX !hf/d#^TgnnLx'kzĄ($~brs]WιP2_MQnߢHYL'L3[CqP>B@>>nW!uU(0?%<:.,eNl(j G`Θ)Eau8TorS+5p GrЀ.Ֆmh֤qq >},3~JP$j k7P%Ֆ7=6D (IAe7Q8?pw9 Pߙܷ9$Xy|Pk SUI7*dm25JS[р[y&OGT巰!W5y_;dADXU.2z*26Z~l)aANje*%URm3PCl]n?v(&^zOSv,C;m0 ']P .73?f{(E0|SIA eG%"cQh>d*&?Y4]ߜe Եe,P>  gthD<YhxO< p*($њXr VNs1Jtkj@|EOd&S=QkcUnDS1;L8*(c@oxmȧqf~yyo> }C9g#IV!/j مyꀈ&&Mw3$pQ5lkXw[# lPXCHnb wKBJuctS{~aAw_We+;9^\ip+R2*zZЄMJ/ɟ3Me7H5֔A^Wl";q?ѭ5O#D$fYK %Awl^X%(Iq?٩?8oqtLQ:|}׊R~dҾ>$v !Oa^8`s{y"-n^_ C/mT[KGa668#Uh'a.}Us@]{z2fjv ?9J7a,tIh?(##xVi[hZ7M)!hL* ~}t$~BxxKYE!uѓ!GC\7MH*0MLdNDn.>޵|ً`+> \3^OaCmţBPXWtаfSŇM{/-4:v*bLE,}O)Z5u3 C _wz`Oh@X#NW&d农34 4$_?,<$S5oyUO}>JN/h"ߛ Y@yk.{gȦG^* nOp3-m [\-R ҞVx._F q)Wm_Rn'fgzqNsSꟑ8UQ"s*%]2ލ4ɀa%:dT= Є++h(Yti61>J(DOe5{~;1y<{TN ̈b_'x '47mʻ{ӨE5;3vEtxd:_Pf_KBLYn1J9%^s^P`F`m7R*?l(]}/(!9R*mc/%2X޽Jgq6[93#3Bvk鐿ltSh Ꟛ)A!E4(ӗ.g•&'=x% J]*'tnE^}?7M;l4L\ SFQSB,4p[ՆX?E2A-ZΈ5r 3\3ν.bhru== I]") 3Q\mw bYeA:F=>P;-x;ޢ(!1H1/8֏)V%c{}n="g}wE vH'* [{*~7(fSO"(K`K7 Yii/Mf.܏n"->V(`p(_X-rJ] N/^67sb2Jip$%'|vVP1k t23Q uYvI&Su'WMY & jHl-i*lE@9SƆp,LOv5,3s\G,L|8YΞe4TtW-P=ճN:ҷ xGNQluX58rkvg|wezzjF*,'~/!S7qGgw%Aֿi$/IiUcLOwr}5L%z3 vm.K5E[Ai>~HȂeR_W>^gn.G#;pmnZG)lM_TV|./K9N˻ad +p)O~Tڪ^m-tZ︓OV3/l1|-.Ӻ"3 ]sp`~Vq ^{XoQY#A삘̦ n8,ϭH0DCh;F3^6dgd{Sdtn7) q ?A;KjTh> 6B;Q.8Ë푥 ¬,̥GC#U7כ+ƎY@VG J\K+4d9hY q  cny5ۯ巘K␯ߺfd8 >#:w#Ce pMI@DWȅ&Ϲ'<؎Gq'╼ )`7뗝q\%A5l>R ' v^ާ|V) SF{Uc )-W8NlֲK\$`7}8_|c(-fc=j2`/*G$u $(N .B`Rj<Xk3Hg"c 'f6O Bq·1#U{7-:e+g.X<> @߅[E;&+oDGhx'!P)<~lC)ɛ+U:uiGunKZ4%$X- r@Zfm[/ ;&p[P0/<'EQV:j.:̓)`hheaFQ>&<ʾqpZ@dZ93pts`L[ڏ;yր]ڽPH ;NdvDzUǿEΈs@tⰎn_˅ +C}9ؕ+++cs .Iy2/Ok'jD􎴀: U.Q贩4 = -n&ةTXBhE98R EF>r} W )Ǯ$fʊv*Np+]f^nZ7/@Q.!):ՌOe"6GgLJ&]!/J/wv|- mĵR8cb`Z&rBgr@;A}q񜛣>N1 -J!N b^MXPd2y2&F8k7l2Ϲ&#纴C~Ģatx*NL9 퇅FfVXcGzK4̍<ͽ[GLS@PEs_$X1X;e ,MY*cuyo1h\E@<&#$u9A sS\lhv5,*%G0f-:1jF** ͛ف=Zc,Ճ/ێɲ>(4uD9U@ڛ>?)+|N˵OUjݺhs@"ԧ3*lP_Iqg/C$#! ) F [*ƿq]8o=̗jA_ub{*ciyix-/9j;7M;P orb S d'_-43֘yI&8,xϘ or^5W-%d4͔18KCTB<\Bd{m+ 5D]|q9\ڕf07_kgeSW yŪC+!Ҹ(o"3l$DH$l6{`q%<T Qiqj:U!_2v!01NȮBd5P>L-΄!GCX}YH1H.4Q=׺~LL^t&!XpA88+˧'؄0U.B`j: ^|B[YPVd;Aƻߜ7f"a=tיVVW9v}b. B)7L%sbi(p:gNm:l=&e;-;NZBv'*/)Z]W$ apӰ5cj9YG|tVQVjRXydhzPM jHh )4x9zFQbwі"\Ȝĵ:KE4t݂/;&(!,GO'Sʞ[<)2{!_mGfDQxL/NPnD`:go^i8"k#2|X~bor{xgrȾ[G ,W视ٕCzz gIc F\>aI(6xWbʄi9 r`V禨pR.SN OC2 ܆0nSolLtAʢKlDbSQ&=3iv?MMg=F$ V3P[_6ȏÃcq &Xg}ȧ/)(,25un]9Ս$goAPVreK,f_J_3=y b䖛Gj}NHÞk46o~tˏ}y/|%ih$ o;)aBilIܳPWó%4mHZCL7WC\1.86 “HΉx^l%.;ĘJ5EPQ,Y5j8-iܒ{:Ϳhvg1^ #9֩_fA{0ư7 K픟×vLbK[? #nbmҸHJ:-Hn /e .0^ۏ0+66^PƟqJhnBcWѫ!L2-1};[.CLH>P.vn<{] GIWrwW< lgiuq9rG<#iyqS1~lP,~gJ{~pI皇 |dֲ@٩ޘ!6o!kUCTj]ʏueUР01wc#pH,Kr#arZ)7R('p>9 F%,ai rS*xH/͸ b˷\tیgM /Fn^؜yI!=GQܷ3v &2*8ylW.MF"̀8܍*B>`dzvfriA?CUyCv@{Yc`:xZlNa/ZUlG^J.ּ, ?Zs6h̥nԤdH\ӫR jD&.|2] c97AgZcE@K^*3#ŻRcqѳ(l'm»m' 'kwuGv7ltxB7:^i/`e&" %ՀC|IbOdĜ{l*\;ę.qjrYɤc/FC1SWI6Ǹ#f߄ Q$/Y5|I)W~|M}(,m?C >#m2#)%c.Nxz8vbUX}VMhGVP?h+RYmZyhaؘ x\0ݰV4XT8y˸ 8B)w\K4j J1q]p)4Bgɭ$*5]pDZFv?2}+eV!8e"6LLc.8'f1[dPF L1 bB0p.Qb{]Ӣh8 :jjJD/* b?EKeе*T3SUa'>BH)3\dA$}'Skx/ϵ@'4Q6-'}yW7\8㇑_o^Y}G7t:v8].v&ÎylDeB-54 ۋHO[kaOeIqs2IRnZ\&?jsmWӍ$`3}gL#4Fkf(*$,+eX?p?c|`R=Ci EӕuQ_ i^ia3xnޓ0zQpPmd 4((}{ Eb廍_ͷ{eLeイtI/w!vxˇm4uJ~+v1VzmMeqabyO_]n#۫XY5{cH*]bô6[`uqܮkMGo wӸCEWbJL#"kt BI@..d7m4r\цyef &e F`SV&\лbkӵA yV=li"96cf}]][DY<~LHPL^r퀌q2aד\ܠJiTCXݬ(9V$VOhԘWFG& G/XC7 +)44vN/aKw2sW+vN?l{ N1㚭sH;TOf=ZI!݀ |xXzR:D]c8hwm/M#s Ӂ~L;(i K%dBl6ɞߵK~J\fINZ% qT6))d#]>|5pX|L-c@j3.DW+'bX襾E*/ݭژ/+giM6("k1BxJ/HӂQ:tu1C7QB2GWr> 6MۑC l_039(K$Ck,p91kEF2 CH嚑m1Ql#׮b $3k.!nz?"ABZ7ns!rǙ^Cr3m:G6&4pQ40T0\fumW;kVTYCM϶VT/0quP҉C.";XȴٟDk f x yiXTE[]픳pE>M< i\>ːOw%!:OТݎn զ`/27!֍-'V!hՉLjèA1~Lh/!k´la+-~n0Eb`49} Y}6N}f[Q]NSx]qb{i=Mc/!|]acg| msb0@s;aZo2qQse!8, R)_*N+E 8 +Ol@TDl2-%0\?AYt lV`\Փp,}d_mDmsȅ3NGw(4eܽ1|bQ.?g w,H(NN\ KLDo3+m篝W#"Ϥ,ojFsz1-y+M>`r#re+pWMCz[|-4X\’~}"?C_Kh՞ֱQ*'61'%XK<.Qgk"2a뚍rKtUkkCd:ocNx1ȦSO}+DWR ѵdI3D伟)gŝGV|&g{GBd&^=ǘp /Ak"P^?^ŢQzRTZ{Zb?R4D`>_u{[pILaỤ55[S^5vBWM+YM y,i*(q!&o JÛ6Q,D8]7q/DDp`՜fxc2KK? @}j{{#sϙ wCp  3R nM k/yԯo.̆vZ[X${fB'Jm<͈uvbbTUoc/!9^ /ZZ!v17&T 69),Ub.NeXEW' (u&q ͱd}_Ft \BA{%zۨN-KcE}ZR=5cA%}յ뷊6]zGfN&qta μDyɍϋ\Dw'lUwkFٜ{&\R2=1wS֤iHS?B ktKЃG@N@YԛQdd04<-f%X?Y)9 S"<*GlG2zfmt׀S)WFL! ;\ dhXe_'J".`es]w:elMt51 ^%ZଖCR} ]:vaJ,cD(M>ȏ8|=9HrO`֭@+2T(uU!H00j5lb-ZB_q`.ka*s-ĩ[<7E7* 麌z/8^yG ܻ1izQy ze5G5d̠3f#ⅅdj6ٽt~O5BuIΰH=#9Ǖ .qT+wP4nZݡ^9j2.Ď]a*0VfLLaMf3r0cOY"`Y)pq667$<!`So8;q 8*rtݑ|XmEA W2'}o ?C~][2کl+³gt1]C`xGr\ΈzNW{lҧxkkBBٛ6&;Tj),9D\UgHc/ D[;+[@ }ǐ6& rm`LtMR[;[Hy#+१.NɈ^ݰE[չ"ӐL;&IMԝHjY<`\1I,Zxk^e37z- +?ïj21dxpeB|NZĂ,jЊDdVۋ,٩ Uz?d~7`ޜA"2exh(Hò7-ome#|xv|!|1-h%2ojsFJsKH!axA\xV*$Nͺ5;9ү236j'T |Fb,8 ٿ[ܚFy8:nX(a*SR֬fRS:]djPS JrH%1Ύ uwFpbBIY?̙p}I{m&-aqB̹,MN::g۷wa,(-rpD~ſ2)^bp;f}8*_xci:trwl>4XJ\AIb+:'>Y[K(K1E.1"D p⁄4(=:ov:`佇XnYE_ټZyc(X-b!W 2}~Ba/;&r^hi'fV2>dJCƹv;93Q@J^Ny'e~灊UWYEYlM'Ε~~0ۚ-X4TRL+,U5?#ɜPM&zM}U~E wjCx8{w ɤ̅( d߬%&qR 6ڳu˕(eH" :f*@2[/e DEoDTG!R 3hɋܶPxp~w nrKȷu???͂kZ4O/_wdT,aGxtܑ*{C3H/g)B3B T18:xnB1u=ORu|-`m13d2}OhK9ۆOC2[we WA %Z ~2JgWѳ:vTwd{YL43< a.i?R Ks)E濩Rsv;qC&kRת lh P5ȂMHKe+š i8Ra[z- a?,:T18 >܏:Vzep쥟.m~\Nm3l|>s8¸:cfv`hLYKއξ1*kk+7'X_YSŴ)d^!LhubtptBnQ^o{bLve#f8m]L՘jvMMA0. o?(bx`0ɑ[I' p6o͍ay702?,g_|p҃ pYyXn2_B:Y:B_XDY1PWRiioK^AyP]!H8y&ۯ Udfw2=4~-mq~Q^sM_?6/hU˯/ *A~yl]胁쨃L9&S84ܥ}#ioK3W]05 'FA~r^n`d{?2 (yL;*{;E;"Ɯ/Zw#56@oVU-8>ƃ@ژy㏎s|lٸrxDSӐ JL9{I[m ?h \iMWQ:8׹,$ؒG/ 606Ip !ybE-!<3ܱ[Sl˸! o6ߒWdO3;/| "n1G%fYC'b~Scaܱl \ ưW>eJEs5-7@ ;)Z*v0,cwaȓTw_Oh'RjHDh[ ΏKV`/@[ 4ēmK}8PĎjԊ8:f'SeSt"k0L[o" VuR:Gmw Q-ɍ,tX /}թ0}Tc^ >$i722!k;ab*R INj_"Vt,Lٟqk=e2~6߷pXlv.fnт,% 7ckG yjqÂ~s6'jqzfU17\Yɓ72nGp;`Z즐M5%GGL5X~Bx13Tu14H* ˴=_P"#þx'(mYN(#u@=aKЬ*U[R(wn5x*'r#ht~ UrR $uJE,zDix2ĉ@5mM/lݭ&Qf̼+ 2;J{8+>oiE(1~MLICl$bqH'k?B}o@7n?KNXF}0V P|mPmpM/$˧4 hFى2.=n7^\lbd ?ʠt1j]f,%32ÂR9ŰJz dU!VF~0 hA٣뗀'X䇰nUX<EVG6p팂lz8EɽZb:<_+.'c Lһ~Nf= NW-v E(ӵ9pcR!JAqO =˘d@pSqwb0_wCH#e;E rz Q7Vʰo&X ?j%S X$d^OWD ܛs>Ge5ZDTWKi33<FT?e\?@hUӒW߹cs%6R2ʱ-Y 9n^pJv+4Hn0i}&/c>ƻɔ(Z9(ofF?Фцms%7Zv e}AM rsi]Zqg^!=S(j,'[ivϙڏl1Osjfc+4Q3*o~'r)7) ANHf P͇(JSOdSO t-Iv."rSq) <ܰzcl&['>Nt}Qqmiؽʃ1fBNmP(7@H %Qڴ୹hwJTV <Ya:} _Fmż0amH/ 0b.?mmg.! k1V\7ϧa1ߘ$;KWKL7.ϭ8q#xp\bʿ&jEMN&=: Z\@x*;wE Ƥ^ S;Xa8թJ5WB=ms0IffZU4 U^LO Sȕօ/Z3fhǥw8#8A+-).onqXlPMM$v!ABgp} Y1@sd<:!0]w^[GZcl30y!#3%7kq_4x-%5$հC4(6[x ][}jOe\nw<ʠO|vX8/ eLC^ &.*!UɮVHʯQI'ghN^eJ:JVYtqTN2TSi u%ݢUj$bdϊoC u8v#$F Mfjb7%YPT%tsQJl8x]RuV -KM$tn=PJC׫BSyyT\vXLu`?a[g-0!$#ZU<M!Ӵ;BZPY:v.3Mwdep+` CX<@E[o"0;e‹m*נK~&w8:MX!NUמ*+}?ڔd 8>i>mײ̠nZ$7CƩɏ)g,Zmզ5y2Px"}$Lf6IYEq]p]BؒBݹ\RzǾ'~"ibG>v!meLkƓ\;8\HLlqPKg+=ۍo7TIٓaYQRH^܂mB8ɳQl (Eo Cӟq:w,WмBB.ύ:{05T)L!~ʙ'M҈&װۋ9c' zKI$QkyzBv>تOqEF3w|-e('lBN3m7@Ǹz}*2hbG䷼鸐lu$;DJ6{$Q/*OȀ-fuٚI ^;)cvL=E CqE.f(Y:,W9|ݣI6[q b V6)T[_3&)ΖaB`Ef8GN ?g>H4K?J0/tЂ^#= xu9;/ΉTkr=UIYV:,ƶy.Rry)L{RVߐI}>&l3|>6 ~3#wOSUfͫ&6pϕ3l1̄ DxGlyM|Sn•؜dLl#U%d̟"`ۇOdr4:.p]=}%+"f`v"=1?v7Q[FHjvU|etS'Q>)lɡX^8y1= nr8&`ںYQs ${ƶ*`BG?ŀ(]$^RD v'V ҀV$H3.@]zZ,ڴz*|2Z~ZBA%; ]GZóAn? ~GI"/&@ce| p-̛pn%?mWg6ϭɜ?E9K[:|=lJA x >pÌ6&mt䰜l"Gu*%zv=3 TM$ 3 Yuz_V֩2'o4| E*h >V[_aӏl& ;`z] TJ'^*'@$7JqSʯmmTCn208YwNj9NEm3sv&ݱeq2j{p-+S-@7ɡ.w Yxo 6 2ꋑq|VV?w&?>s᪯"C%dMϠۈ-^ONqN5f +bzo2Eg P[b@VNOdcjs@J%| /#W3_I }3MWZ,N*Dhش\ЀݭW@*/vkJ5(8v)mOFtsuh@Vһ2 u9sƻ#>lJ7YspwK?mU.-ĉIq;39Jg;R&mAo1˒x-}hÍNFn,CoMxUzM8o"Vܙ(-F$.B{&o5z=St#Y.W#l5Ux"H,%GY̓ \8X?櫌 1o FFNd`l]\LA2h{k`ϫr{Gw^`LOl0{: X<>tѠ]v<&CE qu9裬FD@ֲp0#O+p\`-\){)Yvr1B/pMy V{aL_3rx+\< _2=HNAB9+p|A%?c($_qaT=gG[Ac\['k\g]lNZ45LZ>+Vղ!F[3f%3>^bYOhaolW;zG(6OAN=ʢTYAI06ְ{ϲQЖp):iVx_6WE^r6~ Qϓ ^:rGQ2m=Uzg!.j&Yrhz>ɏ7x0,%^ a =E؜44U; ]cUzR2)Xu-Ёa)Sz ۙ*e5͚2vG41H* s-KѾ:dknY72eJ F>K-qqҸu9~u9MK䀛]K)X_%cq~ΨAԅu:#K:E !Y;xs(Qєqf8"{6ZnfŶZ싑,Ĥ= rś^LobPW4BWwD@co:6̆jtܕ!e57lj}N2o)g>t_%a8FCye?}dWm~%𸲘BXѐ;mk]Ueį}(|uXVd@[hVK,H̶8z mȒ_D$9PE?^nE$ܬ[*~۔UiVeZH`ܥ9k}C$Dϑa3Rc9JwģjӐ'1?.$P]U_2pE!cec ^B7|%.RdOЅՕhX6DH &Ǻ"5/o{s@\]V`J8Kdrm%`ӦGxK,@c\>f*Y.h}S}f2 +"ΎrurǓ˗:y ߝ拶=~$F5T3(>2*2zYY!.eP4hE͞mcgͬ2mmn_ԹM4D_%֬'+[|' v?;H^ƽf{`*F[z?h b\]mI ~=f,ݡl5y!{CԶc ~7@L ,"c`Oyaʚ- gT1O+,۪!cv "tkboXet0/-EE9ڧ"Q"?6찐 A[pԨXzM},w 3@!v_Mu}"ؤz" | xg(z J5׵U%] bM?`&N$gNsjjrCa=E_H3T)ɱAOreN\Fu#9&Kb*bBW6I[X%#)#:TuW4*8q/& ^(ep h vǺ&]mEH F}U1BNg;h{fqr~ԐVB~^cs A!d%XYJVa J7ꔇS}ўi'^zjsF]g}5zimB@GF0GʏIީyJKH[N6{ބ%wwFge>&dhBfG0>3N.ڮqU3)$pV}ӬosD1 =2OW| J86xs][g#S`ETXewYã]uPyn8UKWpJc}(lÌꂵw$Ds  n]ȐJg'W5Kjsonaj|5{ ,"x&7UOe iG/တE/8@{ M3-Ș :Ŏu=F<.\i7Y,tb_5 .hYD>dAzˑ-ժ¢^ҫwi!f.r+ŗTgT/`ԕ|mG΢"G|Fܘ8^5CBV:1VL( \bؑS,""ʏkbp^zT~HU1Wm9+ߏqn+ tD*C'ni,HaI5"O0%!` En$9s1>–|HΔn".kTNWƠuYk\rzsf%DVcԫM"o+!x2P`|pvi v'[ֱjHуvɞ`^IMVjNv'协?3SiRFcl8Y<d~u͉- rvL/`?HzoE9MS Uo޸`ܔzt,b(iϭ>G]$EtbX1>x7pAȒA^9NKLgyR⃱1%Kv]Sb3 ?2ہz|D,v0rRN_Á5s:ٷЉZVq/i@efY(gspi4RBNa/]:w}6;c5!'ArǫP;/z&=_ڂ`h+ѳ4HQy*aU]za38qժtVLl~pd/B;r:aƾF(ת}L6a~p2&,T'[dlsoyg( b5ۚjF>Gco<=Up '8!C;]P\@@]݌ {k}!.IjǼ"qgEua'r\8"*6|41t3ޱ6v&׭qvOK4ENczт&r:Zpk5tUwU $X z;8M]ơ(dٳrK.@"ҁ4G Mi2Bvam$ؠ/@Ȁx74*ghb# >|۶6R&]Ε8y;>WW X|90I򯩰8,xb7gE[}~vMT%ZT&* ,,_ZBBQl~DvAu~k{362͇Yդ.hFGAA- ҈OΏ%3'/hQĵVʒh-o!tDOVY$\&Ԣ|+@Ě)vVܯb՘ēfhivYBͅhfۿY3]u` iΙ>2!GE<@BCC" >8D斈kͰv `y1}^F ;pFvjtGOmO}܂.Bڊs&:UpSg;8әΡ7-)ⱩyL'zbr䟊 $)Fi ɚ4V](n~΍ {6흀;ȷ #u:SJz/%alʰQ@<%k+ӊl@5f~çwƱ*[[@M{g:%;  UGY0Տ'){i*XQmj>Av=7uFjő#Bl2k1U1K{: }VR0A=V1%>3u;ҲG[5.6dϕ {U$|h$3h!b5 y{]V3+W.w5pm$7Uݻꨨ4PmNEp/őתA`@{jϘoc2c[tMgZN"̧ن.rg7^-cغ,UN;ۍlm뻟iض !l#}凼McFH͉ g#IĥX\xRǒrҙ ]cwzQ%xxs\[4i=ːusL. Q7d"TfiGԵuY 4vK_=dcMsQĽ!;QS_Xͧ-YyiH!HVJ;3x35fjm?~,co!.<8u nE%ٙ4)0.wfC<2&g?+읠;IS7%$27B0^č6+}ZSh`uu9Ξe*#ɣԖ/TC5Y|tulN^8rW&_׊Cfx6.z? J?$Cw< w0Ǒjo+IV4̚VV Џf 7Gr~'{ةacQp#ljɖpQ<}f8΁Bkq` }cK[s]kXȼyUv,`<KfF\ }(f32)Su W ~v}S0&aĆO؄<|(M\TLF`f"0D~PH/MC^EmcC!aO>uYUll"]bUU&p.h>MaIBɨ۫=C i_őQiGF+Ts䄊wWB[* i[/ʚH;n8଎L6s!yl*Y&{3;D3 jIR0ʢZ9މxLڥ bN~i+9Ǟxȕ>r0DJJ#F^6x).jg0z$Fc~චHVAfG x+yPoy~ޠV=_*bO>ɴT_VZT:vuÚnLa"&[[AEnh]ؐ-$kTF (rg_ʤKBK3n4?J5ij/=6{u1=M>Zʪ `VXד+]tz"G:?{_/2/W_& !h!H8E) cW!6XaT` 5ȁ=W(R?Oum/& "9 sE??΢ы/9%a`#'Rpd1VH#֟|dq[lLscV*JqMgl^5}sZr9Fs'oAtvo^|ROJ*G6p,:sʧoRvm->X6:`uzc>O! EݫO3j- @1: qW&*4YQ~i^Q_f9Xkyfg K|f#Q뱼;1 1ω*e7RQGm]aQ##1OՄ[V) g@pA痜$) ams1?, ]Fx:32tэvۈ{I`Wۤ- r (wGW3Rv6RY{,3;{W:p] q;G\mAlic3*lwf)Ͱ*\xS |{0ZءM!*lFmY`$R烄e8P[3Tg _ҁ07AӞ/‘m-£KtO $E_$RӰ[Ơ ί٢ź7ϧ#3.lHmJ< i&hm}hP=2|nU7q>, * sKںs8w@{H;OrAB?:KH~ӪQ |SrH_0v4`bT}-֚) q+.m~ℬRt*S~EdžfF`,t1JNδ2EJnJiKܳקjX&ۢVA${ %Hϡb:7m&aPܜ-  {r*VYh?IS\X :ّS1a~Z KPɅ2.Z{pjl 7ͤ&cv?Lk6tm6Xs*!k0W-Xk0-Xnl%JDg3{$SƂD 8'psqRwev5?tmEyXCr~hZP)&;LGE!̃w*3n/WN%~~*%~JxSUµ\9i@QDzkf!buyw9FoZ1Cc~0kHޣ#dL:M,/QI3tgz,hXvHHInMAzsА !L.c,̆;nC3IAq) =qU\3:XAp|ŸτA_gm'E" i.Տ"k|\Z?L@<ٺ"k=|rpo~ΝNEQ QJ1MäA[wiR$kAyδi[HY$(iSi6h0'yd*Uv2Ii+ MbCU?7~enCu\iɎ•3jsU(X J3mXbTz &}+¢< F&Bd>]>; <Χsc ulBbmOGh-r@<ċZ9E j`P^=N7౐zƉmW|JdMἕ6e"" 'XcP6 mxKl:&RQ~5:2|%\QT&V< 9.^u{\:x;YZ# al(Q#PEn4 k.c?Du.% AI+vǂ5o QuW C8U:uVӮ8Bo5kY &?Pv(zL%WNNe|tf›Yk7܅Qe#a/Ց*4ڪkquYFuY%P-Fnf?܂ N7qΞ<4m*WbW7]r b :GMbyxg-3JL@}wB3l{QYSy@oK5IW\dbɩG2 T`#yR4#+ZȜ |_yK)z-0_|mÅO088H5zoK뵫C0?שG)H"s^x1" p<؅fz{l}44~k#6Tۦ.-eL#C3z!lb9QW̭\5`>r?-7" 4$დ0gwaVzt؞68h`>4熵{]ϑݵI4Ӱ] a&z\/M-w8ݪJRiʚM9Gxjq]u!<;Sn@g Ivߓ93i\Kh;Bѣ؍@59m1K)mY8d\:u?\l6zi}tTGD,@ !nn޺ITu]e6lP3N4gAФk"wKߕj͢4Cd A۩vOoR΀;IQdYȹcrđ؟+Ɩt,܇ݐ.eYhϞ2|F_'$ ]ٶNL\0"R餶M߯A74u]J-|9`U6rxwmjk<-+">=988R3 zoasT:gl`/EH'< {|9_tUr:+3WXZ y+soL9yvw?2c3t=b&=]g 1^25AD&NGPl`:b*=8jOOF+JVA4;}B `j)=y3kgZ+8>d"rqlEfG1{N2m:~GZ2 ptcAϖ̈́%/X۷TӞuDc#"#'b$Mh y)3m= .z<ѵh x/3_|?./"|@`DƘn㍒Zk`Y#4އvYPM0u%#A$ ~9], X`8זh{!!k(76^Ql'982ץt>GiEyۋn7KӄN08yf]B{8P{n{ ^,M;`]IPT5UrU;v ]slOW=8~ :D &9t"W8{F١q4I- 9RcM4 BFD9cYxITfLw/55i$pc+ga XNß{"!-Nr)Co?:I*̥~/+QBRd^(/nB! 5D=ƫe"6Ii"cx޵<_ohV[yT) ,%Bv)˛(27@e7<]3?iq ) lce"^7U \c 2?hM݊Nϸ M'̛i0S@?1c /E]lEP xdWVnC [.!%E' &RqAt^q*/&E]M.=U.[IJ}@zk?Hjh^{̐j|t??%fC_9ʫiy!\ H{顤+d*Éț"x#K+ vA4C 7 +J-:BQ'F3TJȝx qwxiTіxb5W46輨UtTES=z~@0`!Q .]oq{h@ŷny@NnE&1[49~?qDZ~lEE⼟$kUe#,ڤJl@(ݳOU!s "d0Bн5^ܳKC5iZHIwii0LU| CA2m(INsgm1#܆v jP,haZM(W#q=+G-u6d5x'%^妪ytw⓫`SJSQ|Ks9P5]C(3˴*wJx9? G>只j4ue΅gQ[x۶Kڤ/EfPJݠ7<"+=F/3tJod-EYl=Z)+0&OasJ2X=~ GLQ @#ryh=ɇAroLvnen $(n8!10#lX_!"[ MYMk}?\K i(sL'WYC [Nqi mRI>&ΌN͖Tbt;ς'= y#c[木+T)ԆZ'|P`Y;ag*ɮιppFA"uY3qEЭpcjJcFѠ=/{YqVI[Iǧd@m]7y ¡i7V =41sVٮ)C.̣vXക<廤6[9hMرQKR_;b  ,_ V<49;~i{S+e\Z;qm#-h# ^[U,YIf78W*"'&+eį1r==v.Crux0,U1nc _+skcuwyЭca0wWfiBv 5XQ{)QW#I<9#H YI1^_6d>X¨jkpsd{x~aSss`xRY1sj @/P c:Ȟs9Mʓ.x ,Ħr lw*J)RYb22+8Z134sjp K#[ye괧c2 olui ,&̐L1=*7v(qH9GzM-U˟\ ?fY sOեR { U >U!6G5vϓhy % >-cMP+ pLo\x6w$F2 㞃6N(Kᎉ6dU װU$>/R >AX:.1\x+Ԃ yOW:#>řsgd KB+Uu7JMGveVN冃J"EAs zJ|$弪{wi څ%{K|3ud`'?U+m@z P!pϒhtߘBftnE#b*0*nFj"p2V9 1S6wGjkoA]^A"642ÜEk]F_6r~jXy㳅S-!e(G(tl({BoDJݗةC{ؽCϲ^7nL[Zܸz]9MqZ סl7D3Tfx8l̒b:mf/>COL~ Ϋۀj^P c=1WK!yXk'hd']prª*%LJH<#1k u $_uM9n'+L`,H{ HAFb{[y^PFJ jYmꁗPy ̇)yQ|7`*0ː‚_yeP06%Bbn}@&ݨ[1/nTQ%Dg+Ol}+(%*z(K+r@6g2rر/!T~G:'&ID۴q0Ѷ$xX#+AF5x'X)d}Ldw0%Jͥ2ݑWH7B'R!ΩD܀̹ηʒ*t0d:w&i h!'/XN[~E^L+GA\QÓAH>񏇗O᰹K{/-GxGFZ @չ5LV~MVjz-L\h)z/{hܽ3s^a:FSݑj9)[?UD+=̨m Gw!rb!d7;EbO1C) TH( Hp3ŢT;ԥC^P?RQץSa,bq*S  ',UXC֡=t3;iTφQA 6MH0X< op#!͇}DEwiYBǪpB֜ͺFFD1/u7e[^&l zRgv3qvC 7 /{Q4ߢgst>9tM9q@"sՖל p FͦR[6, _~!X<\yޱR`D"~ڋ=wZ8>vN8=-`OC(S+\HnLJ]-3\@sS~s 'Q^s]F'5Gي݆LaP]*5h-hݵ@BVYgoBڵsjߛhR?ifG%N@0CoTAO@%Ŀj4ܞD#uiQ ~}jR>Өk"lj[r`Bм_mDNJ&.Oq-2rsT2k!A04 2P 2}R+PhRS{gkz"]Hm65"[A &׫a~nwjn٨XɵD0Bl7$kM.a|40WnmVf|R9$-9Xc_R%`_$zzBLU'-5u($h_EEH,OƉMհӟ*nJNx!r"H sܫω} ]}DQ(3TJ<#]w^$3;5I=9ֿ1H>gÄ#ĎoSK2Q\*U45:hv i2ʢooxq YoIs=NcD̄5at5BB`6 7^$-(Sv3n$jj*BWZo]<̒g?1 \UvɈ'\q)7\ni+h[^#c~65iT=>a ڷ[`,k#&YAPgZ(s\MRjElk#tcbV!XnPSVP0\+.s ߨ6.I<ypj \|` _axFbRjɮs__Q~:/ѧx>Ӈ\b#XˏD9$WKmpOaIӞ=BQoEJ irsۭ7*7t1U1&Cʺ_2a8nS[P+Ɍ{~ŒW@ ~˙NHp;{ӰFДݩ;-tcƮX'hUl%zqi;5oF*9EQ]Dҝ?}Kt:h.7.T#38Eq'԰p|JL`th2 d߃DەY6*lXV f/\pbvA Ξ>)Q^_רSYV I:PH*,wd8aUա(EK !/7'c6SS.t8=D42<\(; 3z6 󋽆RZ>+V30;2k, k3u"ɌC(4w^%‚1![v:w@`\nM.%&u9YJzf`wb2Lh8ƞ*U()G*Q巣Ib'V0T*4kR%|&x?|_Q#MiFbÙH~0ˣAr#1z=-b6DקܪŶ ~-0C)MpdG02R1Hq-?NY+Y9|dH4kQp1I#Su Q[1pa!'U0PTIn_i pxtrKflLsىc-Rr =iAO׭\[ɊN9F{mqF ڠ:y2.)"\xP8?1.Űc1:(n_I5T4oMX(Ϡl3ӥ`m:6Ԩ^jь,G`Ɲk~.MJUp+'j,a_cZ]W,yȶ0/B)TG4%0%MyFaT߹nkjicτяl\lMszLReܑפ,gY"F)ZUTyi v4bJ->oF!%Ψ{ >شK-r؍uci3X?7 nTg H D [Tu)8a /hkuP*K@ь:)4ŁHMFPvDn-QrY)4e>8䐟>S#8mZ4 [҂g`$Qg5$XߨjxkxcLnB:o)xC=M\@P=.g!8{':qc73Eaߌ6mBM2fD_nxnP 1zr|1n89ha~( (9qDa#X9$ր;UoNH{R8v^l Mߜzjc֤1/?v H*!I%fV K\ t8dw!Fu%@;`ڿhgxR|ܳ^q_G|E`O A L$h.n}튭Lm;ݓ]hqaC4e27\~0=%)O SWZ̽j-m0B0U[2u|A Ӥ'Kb,O'4B#g{ǝsy/B|M8o׀DjyXjpvM?/QVp+,07ĪUzbp6$΃aW27Qَ(-F}niH xC'g]' } v r]'="$O[\0l.LЮv*R^mS[ٻޮϘY+PJ%GoVIvb:? ТM7ռF.r=.ćCdmܽb!Zm#d(6*[2snRhn(0Thc]B0T\>yֿ?]U&6u 1PMRh4P$>vEMw)_ʛkһ;Lxj5<^=c`ʑh_`9)]9-i+gV'mYpytXtoyJ\4H`@B9{^av*,,0-}=f;gU]H c3-*GjX3_ 0*%ݦ0tp23ڜJ-^82]fsjX_3oDj䩅 cvA)1{aD,3g> Gt nәbp+GCށO(hȎ?/ITmuxWXj7Q .N:!xDlH}M&*!UXqѠ@-I x o!(ޕ̇֕eCb,!+䩶, L:Sކ-W:ӢEl#?JY~(v3$OWc"8,ܘ .Y';zh Ĵc݋U@gPe᪉Z5_ߔ&+uh&\tD>SrDOoeHn@3%CjbGCMZj$,۱X:z.x Z =aF/rH圇X!Xne57}iXn:$Tݮ42BX7K&~`ZK 6KP~!'L_ $;/9ISC j[D2zn!ʣh;klJӬIٙAg‘Hw)H`5HJz~tOy oJ-9&h_[ZQ.U-2+cE1d_O^3{%'<(*؍0Bg)5=o;EU{qƮ%'SZo Y+`<ψ.aa<1G3Pmc@Wt]T_'*`<f8f9S-^ ,e[DL  ::pTV&Ý{&8n z7YH*G[>CT`@1\ CřяB6g#nI5_,3e`s s9z%\95$|_d_ZcՁ}EO0D>! \ԃLւi^eWlkaN/|qW:na"8V5j*F &_UISgH]\>~huB]faV'^Qvyu6W)G Rzз"t74{]9(ٽC+mFYg|b@tP{k?X0Yd8Pp-5SXٻq]!Ă^,?+$>>;KZfF;#i&}CS><*8l"zbe=,% *t*+GQe= KHό3˰NKb_sX+K1OZ-><|,ZBd@x rک2磸߻Bh.us)etYahꞂSY9WZ9uAS޽vv #8I;IZhᆲ}A8B"$V%SC:*-MJu_5[3) LXԁ9+apjvjʍ|]F^t3(oQFFl}dz>}[T1)ycSGP!Ert~bì,%@/췇Qؑ_EyTY/5Cf?$Zݞ^.1hcm%tϾB{#,5s5PN _ YI/nZM,, 璂$E!Blri݉MTzt{׊h$,k~6dx S#8vIRU٤NyGPdKTGs ؃G[pKf0x.c"ߛ?2Q7F"+h$YM?iAK1zwXTNop1]E jc뼓Bp]G(*%땆v2ܔw ԿI{Vɏ2NqI+͙v{!| ue1N_׫Cxeơ1Zz75,kYkzIuRH`vuŅ"fӯmllv;X#:^Ҙf·5a-9=I=]7*D:"{f,"wO<}nl 2e ODxȷA{$b&P ysà e]sCKE0RTtB4ѣ+Re_=p$YQE Ts6%Ӷ'2sS ߊ˭ťW 4DO :µR)cm)s>皟v+gK Fם>J#IN{ ZD7;㒂ua[JR[WSV6/?~gǺ]vu?ʴie,̆m?8 F8#37ZҴHe\BXҦm䄒uZ,kCO|geH<ㄷ YAF-oC-2]XDfKReW:Cw?cQr _gSeD@&?‘ekHP/-!E ~2Ե/Wpr."A97?ȸ!)\0⩕ָkou;i 8C*S0%=_zSOZx2[ЕiJWϒhUp7 ^Y)GCb$BIT-E٧%\1(@P%F<5K ie *#@Jcb":CHhB5m΀ ("-P[s|?*A-H r5r~M6vbkzB>Hͫu ]NcJj4VȈGZrN7:/$ "])z&Xli}~^x74M3B?ţXk(mkH*Q8 :mfڱH0L eӐɷ$,t6 j*m_(1 J7hC]4MܧV3VnWF*Iڌ#GIr$.^w8RL vb%eҾuL9q̛d] YC 5dcz0ryNq[ort/N@s) n.2kf GQυ;+m TTR^ dEl5h ;Q7i4]pr3LaieE{MҎ ~!ٽYVϽqA}ZU002*.g%uɆ]h.45+]؜to*004$I^~i-5[N_㊏9Ղ1qFKѤmiq@b8_ JV߆UuIi*K$g:A(jgs7^dTc n~2k1zBoUy%a~FZ=d/ n9"ܩspcAԕ1zf5)|u /YFзFۑaه> GpfHwe{{1tbwlDLej) \&,rs3|En\:m4Q^Sె.3<7RdK`yIC grxzB9 ]X{Uׇ4oaꡥ}PA*4\{MFsD&*IӍ;H$%(wR FmlqDIw(շSן 5x28<'[Xb7Bdl%(I19S?[FmS1iO\~.kOJV(rq+]ߪvBwYNY<{yFZ(WX(cވ6]ɽCIR ?I9_. `6,;$,n  2}oS- 3C#b"+ P?y?xa٥6WFQT>Et2ҀTyd[58[չQ'v| $v~ۯb$hTcc|><,7ҡkUܓ$oPhա8=#c_>,0rݯ)2;<5\cdr¡&@88吏:ˤs$&&P'os.s1wq;Kp,=X9>SZ-N1P1'~4_l c b_2' Ȯ _|}yEC2 l\o+@NUrpz©=[j`cL @ Yl4l;zku8ID9ζPܣ>GKtUʐZ4Xg!pdüLя&"Ζ26Bte.HQqjҲʝy jgu@Os|ZRfgH}y1fS@ipԉgLx -!Ӯ<l+lC *gQnkeG?i hg<"9yJz-V.#iGP^NN1NM MӚk_J)hJ u=: hgIi5rd˽^,Jlo($VM4i4RgV(=ʋ^5ʵ\OH5_)6<ŨE/xaB(i_DvT8NK`+Bl9Y!ZT+vGZX{O#h$$2^rpA $egCG.;#`H!P:kq%nɁK5 ?+ӪwvCe-b*%H;%J% 94Gjʊ1tiZ.7x4 53TxTtqlP,rT i̇vS$#yl j. >PTDd뵛;zwsKxזޤdp=eUa0h(su͉h $/l!Ĝ(~'E7I~ъghMw$A-j@L2IbJ$W'le. diN:Ql\;,c0pTСz()b_#ZaĜiE2 q 4p+RĖ~2H9b&PhE7$Nd.] ]a _FS81?Ɍx/K3f2KKBR?>tH$,pcʸMk *}x KIR+D@Q5:># ,e(([$/cNt>=_dh7p2zҥjʗ[/0\MR.fPsǛ9LBQCq#Qc`i1V۽&x!b!rԑP|B_i8yKhݢ,h Xzd/ gXY) uG|F|Iu5$er:XRkh9?{s_1Vo֜ju¿.wunϷw`W4= YgtB7ԁI~O3zP<֏cfaϫ#,\w7b_}K"Տ@[OϜ͈3kx?%$q7A$gpeH3ɧ)E_FP! 8[tyU`@lnZd:&$L$吳 )p;Dr3+IN&~67\Ԧ:#e_VMN_Cl2XRxOe(s[&z^kۀ0-"s)EW=-͍8T|tpˍMOsqAZ?6bydBUؼ>'b0]SrֲӠg*Rؓ R0JcD ؽn*cW,DXTPǶ2\eZ+'rbcz jO, 1+#TnL俱JnG{ٷ10=ed ֬=@d\S. 4鳕c>7vFj0`G)Q&#3tb2FF< >6o,}dpECOuwK]jE0X]8՘K΀׳a-w)hmq&z6ԛGSm.hH`7Z#b(c\Tw#5҆&a?p_ɼ'd {̃͞O3-Mn"46!6q3̛ r7K`|f=&/w tҢ^p^T*ޯj;$]е!^}VTaTMVO)Fch~|t/pUJJ au@{FF@-G`9gh"E 1KCQb&S͵V^x&TzZ$F/nE_,FDԋ5Z@(#>Ox[Ng.yvI \,4HčdT\#%GCp8#v'x݊7~mQEmnBDXw>1Dݹ]H>ch*ЃdBaG31#큽zӾa{hg_JԡqD}Ӱi3a*b3!ӌ7p$m 0pؔBN^$aB7wra L]61j$iqXҍM v:T`0xAQêuk"6,Lggc}C[۪,tITzdS G wM ῼåw Dګ'jGؾbV&]5KY@85 'iZA Sb֯gϖɩBB^."赱k`6\H-%%55\YL(AFxm#7}s!7e/7&pb׍Wq1BjaO䮘u$pŢ,<3Q .j5U 98w#yOkTI̓~ o"ɓTVd,e|do~"%RBU9F—s}7&LHBZҒJ4>a8jcD*)^#BN`"@?ɦz}G>f!J6 = 2z*!VVaQBު~H ށ {!6|Е,}WOw!S6<yD|p鑱$|E睽:F%m'˹wzods=>YjςeM{gWSr/ex.+_#ŠV8EZ+;>cOg?׽Q@Dïa@>A}J67h<+79$V'j":nOvpC̢ģA@s-*$T:7L ~ތefit9&k3Oj e9q(3 0)O%PյnlA؇2?8,B7-0 ÕSGF yڠvla%a&=XA/\ p")(~B_"NOȨo揚M-AXi#{b6ǐB;MD]Fa&Z֋p]2aBs ΐX<ən!6Rѻ ΞBVܸi}9Lz$ZT5"nH:HBV[YKAܰt GAt?jT:кshQ$8F-.u'tQU%D-dֲ W$b%Rd (٪pˉ o:MI %S D}R 8HhE1\_j'e9zL {-c,FzԲ^L)R?qׇ#ĥE"* ]/apTjEX$gԿš&6ePt@5v]>tA5": RhyLa˯X;/ll4M^l㕕h=I)ϥ u6Kxd,CK1͔k k=:wsƛML.Q"a{F*pwė_/~X%0 S0*‘aIp vX0voi$Ĺ[S|f-x9Q>l#>c]m p. F ň}XSn'#PT[lQ.^4s?Zk>yqpSm_,gֿfj wf=AןƧOґ{8)?_ef׍ka'υGĞ! cUYmclU ,)4#Bbs _d7 JFQlD  N̈U<ޝ9p).yWcqBl4 ZP= r!r8Ry\OXԘĭ?y djVi^$iʼnf~Yi]E~ij7kġfCkRMfo 譚C2pxnG9/.op{e4Ev{O,t%3 wʰn=gB6V 1,FM~߬Wlw9 <8d. N!";ݝ(%e^{UC1 +BuP!&Pup3nC+H2b5A[WLmD>}~mn˜dTMNb3% [pb>_6qJf@Gx3-L3zysӡgwێj3/bR_F?.D}ARaH,5iZX-od l6/'Eo2@Zt<. '3&ngxf.`[7ao2{$As}yx]Qp VZ5JŢVCsuO0_v/;=-7>aVK A,qrybr2#JpUPҕ1)ֻ*;Q?zM1Պ-sE($)‹p`5c±7m!"CYxR@Q{(ן] Jq?AGH)W6d+{AbԒ޸; cq+3=Wpi4MA'&ywsFrV>Jߓ~˅fSF+9#kKwG!L+鎠?>Alvg3 %lKQ2 fh%@ ϩ8<Z_2밫pP/ྵe<|a )UUm94Qz$_t@LCSO] zRմ_Eri }P ELR(K-\`BL|:!f\6F3x:)^AčIJ5#:*3 hx~6t.q@TQ lsEYr,g$y o@FlʤU5FE_vzZ4'_}}F\( AcF'g/W7ht&ٴ,}Dꍿ |G;I@d@٠﷢Y`vbsnE}S;z^$ΔtPt 4u/3xxȊ(X3V&?blp7X}b)V\"+VO6P Z'Z {g(u٠Wm-q~&'\{a  UV%PϬ^1KƜAhPry;mDzD#Ox Ќ՘f|ϗŌNs0#&( |Ԝ`M`TCT6r/ox50{M<ێNz998iD V(- 0qWOHb<9*ghsqRw"%|GZ/WG2Ծ Uat-5潌&QzjҗFpwaD}x"׷4S!0Kʞ #7΍hnnILF{B'wk63ܫ[,ߩ堰Ů EqbydO] f實׹S? ]`o[).E#*7-%G!7 ;Cp%y9.\@.^޳q'&/tzz7wT'BfpyG^0rlp&:I%g\.dB*s0eA|s$| aG Ӡ(+pu0n*w-`\NrX=( gaה|{1_3wĺ)SsFv}Ta^tCt ;gH'xuOC{N_kX#CWE;㝛}K_=gR"3ف1ۚf*%zI jKydhG;iQcs;.79'Bzvhzd%ZlҪ䀌ݩS/Pde%ͣ]J:x4/D 6 n[Q.a?y?=~QJN>AQ= vZÿ2߱oWf?30BE~4WPv5rg+,v` mѹ@NaYʐ05j"{%bLWBp'k4_ohSGJ@ƨdy]b6 %$)P4ܚ}%'}!vL%)_O\rYvƦ &8 Ha`ۉ(1Wh6%.Y[f ny/[`U%N& ZurpcF},2 7Mf[N 9:eSۗeAX|ܷ dz^2(PHvs+5FV yo3 fZDhei]2;KxʘihyPW+ yk֤ WaC.i*>q˃^;~B #4riE[W/ 4n-:$-@r}˓XE-\↙\*u.&tHv;Րx.E[=@aF*f5Z[0V%(NCB}G7eepz-1 ayHmiDCCen S5Nlk0f}hUtB}~Upbִc[D5~{F/k j@hsI25RY~(1-ۓ膳wFSƔ&ׯ `p |) Zr!\>޻>t1D#e|;}TpN|WiYc†(g:ξ!1Vo HX?ߦmUԍ2:kޱ-Z9 +,?]dǺ5޾73U(֦d2̖Gn晎"'b dp{]8 s< ȜH1CA!#$kuJ p15BFCS4Xt0I#pTQV'qK8 (%.<ߦ-K[[-GNI>K &Yۀ4nc?t%hb8(& /3%ҝPS-uw (*REN5J~AaIzK>U-eT5GŠ:Y1V}ܠޣUl<$TzӏV`!4?4LE[fa gרo3'ͼA<|f *=;e(XRy~n}l AS;(bNuzpLg\{rt^>hg{e!uG[BR? Y^N,,.XԝY^^]6ZNAW٤lz|/hy+W2﹥q Rr"f߱{֌H-?9tTݙ^+~3qv=@xMeE9nܼx&rjZcPGTz?.&+qvs/Jgu/iqUj/.hj>ʄ1٘.ucpsH3b`;(\C)GwP#!"viN?[: #>DF!dJbXe*Wk C5w8hӓ}KEVـ͑ү`pllӘ먉gT:w>n^Kh29~UbYl]=ht:pߩu{K˜uTb;$(dF~ HNce|Q'UfQu(g/Z(+!;XAs-`~V5N_;4zFZ¯#o̐^\_w\P|)-I 4@$qi`4h~F2*(_.6yU!-$|Jh37uu ÓSRLX" jPtΑC'u莡P&i[Ӷ?*'l*&bd$Zs'zn~l٪ٮ'yt]0}Hi˱-/P[SZd!kz)&;7Nн~-Mׂ0 ڜ\zz5\Z8jx[^`]: L:Vnya<#/΅!v#B%6G9nvM9q+ëMሡ@&[WF<e4Wj`Lf(iDxM0f1Z vZIJ}-Ge6 L\+(_ =/t5y"ޒCO筁Ȥm9AezU*k~8אe1:]o\u}#W6~s?E[aCmTO\|wk+}{UǦĽ!!M+'_} +kXT\ހ[ru-D&FNM4Kݝ*c:'QR4,p҇f<ۣEck3gg7m31;Yq#B¼OΩt&ܦuΖO ;c:DO*ӡ0KWZ^7 Z͈XT=X@74g0DD{W7 EMΟp(`_!8e5-䎢F4ۜ7[D *Ͻ{"qD[&(ʂDx[,o9K(" }.{l6Je`mKpܦ:u}k̰7V?NC, o/I~ޢ̵(>OX ⻈!JyxCdr?0r?92:I YUɾb$4,bww&Hӽ5a{ETk*1^OOyhoHΥ_)TM6Y#sLj lJC p7Y0#AsWBlI{ S'u&x| %ɹ h[Dl@ R 5{6_p⩭y׫;C;";7|[H4agFy3a fQKR{ri'\#ywI (bQaV-xi`Q_ zf+*$Iֿؘ*+kǸ ^>oW6 2J;c~tw0Eu#39YI9݀:Cx\;B4[ˁcx"Q4 ihD1k篢5JL"S-)'tȞ-o6 s"=y;߫kksʝ TfC齾La @naj`I 7FC-۪eZxfDZ'Z#ϦdF$B y=JZ# Z`x{7C?#X!ͭQ]sT ϫAӆ96Tq*Hu 78M҇嗋rnߖؑ*n!An9BՅ#~՛"lW^/ !Dm>{ȴjdx -g|a)nGz`qESoߝ.{ݺ&Rk=ꇳ.ݯ|Y]ٽRxp7V :e ra>H׮^ruZ_(p>kn-m,V11*npqAl۫go&$A%8~mmP]R_4gW꒙z?+ {[tC} g#qnURvsNUł=ukeVt=ft%cR1`(4,Vޱ?7wӊ><]\qF^s$:u,7$=+jap Gq'JC$?U&Ț`ub'w!Pm(o^dG'i܇lcQ*V\pn!>%z{w1(-T1aYٖɣueDm 98Wps >Qf_2ѡ4ka3.O'S'8[?Ei|vY^l%hmi;8{䅚\.]Sy2 h"b(,[vL)FD kBK;u2e`-5%L48'L?VR 1Bn)lACʉ" `@YCH˞d]WrL%vbKLӱD_NIlG(`t9ćW oX\vP̳P~bjm{;ahj5n n #[^wB$LBF(WrSQj͆a?GN\<".u>vFA^IDLqAqς~8+S@X(2\8`5>@@SHfXp d-Ӗ5߯MO8ĝgW}ׇ@pǸ +MQ1'UJA[^4LТ,%]y)V]Bmu4!-חyv0euS1 u&vbfV0~F6yHURHNDq.]_xURsT&!}gt;H]훡B.I,A[QLtRR/x5fԦi]1?yg+L&2U&UrG]%V ;6Z#Zte{͵lh*G[Jp\]\0+2щfY7B(hVSV&i_0s [d2\@<ܲ@ɮ}oN9GUM}S^_Pԑ>+QG}CplZ,+AC;eVGRBH;=oޕiVtsq9?n?p)L{F G6A9,Jż2]e ;55Bt`iޫ3Ua;w8yq tCy#㭄0Հ+ySrK h]&kb6'wei4"B.ĵ _!@&ՍV0aQ-) l<|5TjQ '{#1i8Yܷ2ZDxȾ(bGw.S5moēzm7j;`8]ûbuƘZPPlRvĪ\}r]gYVFG\kn\ a捶wW+|˻Y7_'zg峆{ںQB{ !ʳa<%]Δ$IĝC}埈Gt= k u@{,7w8t{lVdo>_D\ǰ?K"Ƨ(,'1;Y ]Dݐ\.)V[k /d.wk.l/:OZgiHq`T"XhcѺzmy^d[#@QFݕyuHL~laV{pb bFp N5l5JJºtֈ~O,?E: y'2&WAF'D=a2<"me`|ՀfUp(}0I`aϔd.\\&8d o&my]H@KQ_O3Ws@u6Ds*Ի=5MH6~8tzYZ.@R+KS ,Cp62ubM6Caf<֛1w@%r^qv #muE\G'9۠C*:&ٌ83X޿F?D(uB KsKm"-hОBM:m.^əF`{:݆ssoxHK=)ujR70k-p;Jdc XΘ9+lo\eGYPIǮء;.\ض+0/1~b픬F.O8GqrX"hIx/ pMFu-(YqS>$tAh)$-G!G';CeMU <CXa `ĐHl=F["xE. Sbe mMo5=#6+ ۱W\[fQgX~c1_=;)[IP|Ϥ=\՛2||L5&=]ȶz|߮\nSEd "Σ/TÚF#~mqi Š7l+%n`|5 dJ@*Dn7'׻$*HQ[6G#gj~en>@ƄjUbZ3\`)"U8)1AzQv@0kzՂ梒C., !Pg!#Y@)dx }C9A?Y":7“Ye`uOUr$XJEFl#r Aa ɽ[H16-{ SG٠mKfŒPۺx-}$4yڎD+*}"者LeJt'6z adK.u:Q@ uŚA{.W.ô*D߉3m[35I<%C>Vk!_a#s('^|C܊=ZpnuE .pqSP>/4]2>=\}Ñ53y5#jhb6uiDfW}@^u%$E Fb`Z6!\{o5Ludy;s_ /uꑈdYV}J"??dC,NVDtx2sO*EX>(֝$u̫!|] *hJR$Mn0H~cE96zdGlӣ Pc;F~}${7WRIN*Rl$$ؙ w=a&Sy#ϭg7a5;`G(rt~,V"*Hu@|1~eZFj< Nm5u`H˒+A޹)TZ i-9 ED%e)IiN8~7K^7ok%h#UܗGɂAGKT̈Tu1y gGN! !NQk%]aHc=j-iPd: kp<4ne^ZHXDSuj% 5PTCDZGtgbHIP.T(dB]frNMgh™_p8k_qw<7mqS$;PM"ݓd޴ɽjmLHr].b&4P{ZVA!xn_n#uo@!1a! ݄ pN9mTli敆)C#zG8ѝf#gQ3M_2qCZO{ Y32=I<}C_K>̦[Jv^q^{,LyЌ(`@d,RY2MiEDy#{:0Q>г,pݱ 8h_'J8x:c?@/R{a $5/R딷+J52fdFu{'#:4N@ͻ &erG[Z*xoYb'Mɕe{i.c1rA;xtG.Q)o(_2hy3 "s4ɴZν}+S6'_<@6Y7_ڋ %%w6}o QvOut.RX&ƙ;Ah͹e-c|bP'޶tkXz09QwƑ0kR1) QAu; 5p}rĀKyf<+E\`&=G yZK@["qҠF.UTᩦf+62RF6(QvM-wqX0oJ3 Z\ms)0cLޝk>iLWQ#$ȁXG̀0ր]iuƻ@>|(.c?tE 0@Bc vW\h}*ӮBn )pòAbWZaBCrY*ӣRΌ*Oz j05i̍ziyϵx752]/y˄Y^-h \rrb|E:+ llbr_a c2:O``(^aQ~d5GEnӨՈD+ABsWlߌ(:;${aqɣ(E7Q`5kY9e$ar.[n`.%]Ņ\NŽmCxPsfmqIX鯎63WTd&8I0SErvLܮ.$& _Pl\Ykx VOAd50o$ﷂx]0A6P5u6f˰Ga~( n+]pDw(+6`o({j_}x[ȼZk\,9ID?8# 4C{/jnɔ\sugsVͱ;; EbEނ?[]kqxy!jn{5 *F=oF~i(ne+2L 3=Sޖ F[6y܈Op<555\'#YڣJ[qhJ#T_~R~r-ȡ͜*͟9=A򬾆yax/sfl'l]Ф);@cpRΝM}Cp `X' .XnD nNK uaw#4_)Ye=vhKs[d |dUq"tp·4?}_֏O#cOb>C>"ȨB$s&.VX ЦPu +Qpr%RW۟"5O\vJ1? =`L%qכFO. BE(>pfHPP.'RZr T~kgovVh2Ƴ`x{)IXf]Nz P|m6$+(أMLUbN?nkAkXCQ9axݧSL9 Mtpki1QZuG Q-r7ItLoOw桦S5ۚ'E_~/s| ?Oz2 i?Mw>$˛w.ݩB~GJ[<@\vwv\k8=.ҍ{ٞ lTS?f(up:jvf* g76$jЁ_СpaA"v v\Fu >E|vΡoP/$[k'_g]rA(1 aK]r6&PȆҔ)S FWfI&޿.5G\cUOC1}+AC_ JhTE.B5ﯦV}yݿG5Qc]"#1 hƒdJ>)o'YcX*tP}̤ ɓt˱?!k&}Luc5V/J@G 8l^Xݰ5Pq%u+!X1+Ǜ̀q}Z骖 q'lK~+g2e􁈕?#\ w?/ %.2Ð l|̥ yvD8Hcf'jaZ}ꏯ1CDβP]2_vZ3˓(jsgp(\QK"yhE 'W5x/ꟻ7+u|=BEzn~_T3{ &Dy#| >K?`];/K oLj'3\`|5a]Gɀn1^2;'I"}>P$=LJ-zG-ן % \*X"NNy''hT NGrv0."frTзl&ztMr 6!D-Q~x4Ɨ~DmQ@h\WMv}Š9nPK39:!<&GfD, e1<'徲^j HɌt`#F.`愊XoDaߍ4߿N_5?Ġ u] .#FG̓ym{$q#ҰcŴ1O΂W؟{Tf*HI#_4pͣAU\}M?t++]eo9?_6_AGl6 (^ǜH[ *#M0*Hs"%\9ZŎa *cwjv5",L&}k(~pK2-"@hRa:lO\̂'W,_]ɨfp|ٗ<í+2D"4T @ To45} ݷ$& Z`gEwj++E)Jڠ}!PKNAiRH%[ CېpTMG\ޢni߀ .P ~e| %KMJ1C}MNa!H5x|,|txew]~߁0dvtLI,ڡ\U=v0w-{:NLktH @~@?~yZkfǃ51oY, tR0?y}7ҮQJ)'sj SYG5nUyk9nt`׏!=& kzq!-jŶ} lgffl&jS( E0p)Um-Pav 7Ňe B1&¬BQR:od۽d(@GR\Qm>q2-Wv >Jl`*4MEe% i7/5mJRBΝ½ozE%15(Ϭ]x-VWf_ Bi>'Dɩ\ Uw[Fw1n8SBˑ$"-D'(ʰfRtԊ`@҄lm~:ҶL֭*c)u2!:6oHt?Rb9 Hކ[Ё6@H6az[bĈ82ZyS+<~U^x2+eT{n{ 0lgưa_et4z%GHUIt#;<@%ɷ[麅*b|(-C+]=[TJEWKo K b?&zt1ca}ukgF\#6A[U|7W}S@"]+T }|D_m=O%~K2k"}NrQG0Sm򉷣!aP{fpq@)CEu=Kqcnĭ5v5$pZ(WߓeBZo~mTJXq*@ʆ:B@|8b{D mybc|_WJ`޽h1AӞVivlqM0J8jRt ,qa$*9lVhNٸ$;A@"w\ɗS2vFvǮjXjBZ@P ݞQ12s=b5M a!ۆP~Yd[dvfփ&# @?PfF?619wh);O$K$LRm8kmRza"e{ߪ+VYpxsVo4-MJ5w7|w( X,%"NЙl>%1]bf6Orw؄-K8Z͆ a1069e{&d -μs kt7ly^Z|ҸmpK4JlR3ynH&s- <}cV1n뷱'KY۶8H|:=cHsU߉oyf_љ @ؓm9#|ޚgh ~՞2I/Ր3[ yTڠ!HзwdbDOJ-2'&L_y+br r)S; yZˋJ TP[kvZ¾i[iQ\"ew}ٷ)yck[pwVϦHC'nشyc5ܸ;Ѹ< lQޓךdb4> fD4  H{1k^&?D rZ=UyGhw@7 &؊SठzY#[`ƭ+gK,H+e`gȠAO /`$zS duz$"ꇖ2q#_*9쥠[Ȱl\iU6<}@ih#:hOʲUFB*ڳNyM;. mM'{wW/yi+ܧo]fÇ u@;vg ^ZXvy?𕶡kRu%(>sikg M0 z\hg4f7aa.zg CյG+Lw9hQt~-'xHL%S_ӷ/g.!]C$I(i{?gU;{N9 {_P2.z\|Ww%r8~ ErZ *жZ8T. guZ_rhEkM~H:-jB) kh(>7DxQ8/T;h}fwՈ_HdjhD%|,0UAڤv+ʒԃS3Ze׷JHs܃۷j1~  䲸. H+F͏8|a܆1͡1n-lT$tz>O74l(q'kt.~5$pH;bZ7uZd&ͥh|404n-hUpO= !H;"C^#6OeUJ*-0gn>0PsZS8v=VBjQ= mtT\F) =v&|sRG"V. sTdԆLnY-f{=S1Z+aC"10^(Qh岺mQn2 U#;5 R_Mf;ͮty~^?mhk 0iHoKCBC0;ڮ`Il[2ib."GT"wE(@f[nZxaE7EC-N4"0RP( P[,)$IDsշkw˕>{%v`\El.8)GL*i]BuqΆP[@$#6%F /;6#x έ,0y">04^Qd#&޼@YRNtZ2- Ly 71z9y'L7 >GY%7(BU @vDMHLQ_ki)WZs7)o#d9dndDŽ+{g@֯1jYtm&#ܤyts}$ #E]00%|3l I$s;ݣl>CrxC˚&!D?ue] @n7dbcHͱa5/8 eq0qj-)"2 =l[Dr/}3,Ыkpb574NOB])q&U~J8(W.+Px;'aMZSA"(B Ѵ15*=cz_}R 2A=Y|@'AmvQ"/PlbhDJhB?6YtcEb@DY'B;w-f+&2s̜afї17  8tF q#G-+ zVR9V]i .иͭ}F=f]qXRAr4h!uˏ?+~s#48YLz0ŤB!Fɥ *8Éx{ A`!oy6?WBo).j8{i+Jsr^dExHzk6\Bm[edȜ5+r:A}!~!"yq]OJ9qxE`%$/w[VT42<ZlLbǶҫ㓖匜a|>@7SlGZuۃ<ۡի7&n _B`y uxijߴTﲍoIuguokH۴N{p e/9Ɛt-1;9T:[#`:md9$CaUI3%P?Z*7[H[KF`HE 0# K`ާC%ċubM4`[Vd 3_Ӓ=ΎEQt'Hϐ(mn'|Ӷ x  X)_!d?3".TRYMޒ۬>uUv $*_2[ђ~U,Y?Ru@yZ9dYRA \)-Z1РjOK}x,dкݢrrB\,Yatr(d gjs`FqvLx6^?( Q__݇X4:Q K&[ƭp* ժd6teD.#vO'D_Y'mX;20^J;~0iVx."{2JǏM0XEvU9+ Q;f~ّEğҬ_m[~~0& :YSu'Mq(f蒒'F҃apnBqTj4n& FFĦs*:*im[p}9P6nJЦ [ظ8U嫼E/PG3;@P_E83,›$u%t gClp $\hANYN/qɺ{Uk Ԅ \L}4ю<TrC~O=э`>˭y P_gi vn4H j=psȍy ZTͪ#mqb)"†8pKFH(iU;>#M(OR?xQl@-->jP Ba4WfB˅@ Rޞ(6|qbG |V!-@])PDcu{wRʾ"M{ҚHUCD+4E{H}pm.u2۶}WH-fUz@kX6iJr&bҶ>f o5* `7freP_x$ )ðJyEvWS<߂%ĖX&0J{ /7VU@:o^tl4ON g6exǠ{QI?"G,g8oiݲ/2Ӵzm|MGRbG7:m=xf֒|༱= %9g3E/`֞B'ys3P3q@TV#Xmv"lӟ=d0"!8I> .ݗt΢fhƆFlb #<-3Գ|>otVӟ#)rU'F!ԉ6P.ģ&9f-˫41^ Шɽߏ8Ao !? nWou3F3K (qXnj;ޮ$);rpam>OAޅ1kWE=N$7J=Ժ3 fte8g 0iOnYvm) j)|iVㆲ$KJsiu"~;.&l؏h"s8sj9iCEhCH;7^^<ܾp$AEN Hk4Y"UQ-NF,P&cIX+g^tg>d&TZ# (]J1? _H^5F [:7KO  M&mj:F8hRVWL= *?xש^f'XbCO a:bOOSM4$7L<£X Ï~ [jw *ѨhM+nq&ZwPlGAbf4r= ѝ aRE!x^6IxM[>Oj C< q闤G,q^RԦ;5,2EH8 Po] OW!0:y:͕bu ڼ4 OAR㷗pϋc1Ȕ#KDu| ='B2;!y_maFZ\ڢK g18ru0C~2è|^0a$W%3}e,1ҽX;i֯B򖾥[Kd$l}uc7㗈ݹO"0u[k4!aE)K:TZB5!Dc~7Re6ȞuDuR:˭Ծhmj'ZAJrtEpJҩN1Lg@X F>x}WJ Vj۲Ԉm09OPOElB~;McBm 1P=& h,%2V0.'\-ьACDX29ƚZ(cX@+ǥozZ_/M1WУ/=)AwuTԥeO\K¬XWK[+hI-2Ga|g`n?1@:uZQPA޵4Hd5pj:`Ϲ3…_֚@ʀ v^`UxV)ڤ?$rs`.oM%х/HfYD?lƂ^OA%ѭ5Fe_m`Y6=CBD~Z9†qY@UH-*S%U!,ےeoa{rt1AFKu2mao}!T!$$T=v<pq.dB_5OsR0^6s3&\S$6rXP*JO ˃+ I͹LTB fCgYJf]grĎQnɮ T\w1mW6e]ĒՁzl%_Vpގ1LlJU`#+I{O=6]8S?J8~8ڭ= vǗapZ2csp.ۋ5׃ꍔWZn'bυR mje=:5] s|nC(.WJQL䐩a, f_`L>^)(rI{\9}?P aKXVo {f@HIdeY#%:|$ؑd*Pp-V~ӱvclO9˼*۱شCq9=B>2{ +*3#nI>LNѲh,cK.0)YhWtVںQg]mP1Jsc-oи=K@2}8rX߰}|#o& z2 f?ď.+d}uSbf lćxl8yuJَ̣E!M*GbdLf{\{Ey:d; bEЛ|aŝܱnVKܢ3J;<;u[?f ~E YkJh.;n855'xI7e"7F%4/ u ,#Sn`L("׽4LuG=aWRl IؤX,d Vp0ŀl KGFCLC X;xJi@;e Eq ݔ Rv[,S~Q{J^2U&-_K;ZKO)^[a_wCǫ8w%aJK:,F! EZM`n7źI7k'A55*Sp|lS7TRod)qAYѵ.dmyJyA/7gp8ƐRJj #t؆hM_3g0UCtKJU3<h00@o%/*}wMIX_k 9aYL pL7j# .Y(q(4Jy'I .y?aJsN8*+Wք-c24ѤJSlj=A !E6JD#o 癴rP0ptӨz+f{xlz`gXRh=khIzI @qc78qD]hvgUUP #?+".Wu5q| ҍ3Oz:O^frgԐF0eD%Ώo6wَpX7_qm59` MxgaB/R8K)Ku댰zޢzs!!˶*]O.8\u4).dv¶f+ wƒ0шǶ?[b9L 2z4;@: ~& CP]Ε܌tP#QJʀzTLt`jGaRo~ ùSҪ6>wL^7 d5_tKwǂ42) nl+2Tl_ňƝڗyKR_eoyעaX6x7st[bjn=G/#~+ =&8qlS=¢C{'Y9)վhLٕ>9) f Q@CNJM!.QOw#9/ePۉ 3-m(be#ƽ9>:tbHh=dEGFG[dJ>xu`@vf҇A!Q!fQǻraGv mA[ptdE ؋^H$R# Wo Yi-U8AuDr}\IJݓwDȦ?G/Fh'-$Auϕ@D4@6M!9-ٲBƬq`Z)xpFDFeB5i_9^{:Ho;=hlj!ԁ gӥ* Xt\;enϹ<^Ȁ7PGe 6ogZM*`63BĒG-jq8OʊSx?1Llʜx[-E0S?$||:O/yFq@FnPB2 u]1imO8M6>.+A$ɌLb:-L$)c@MJaDSC$$-5uDdb*=TX?2@b9>˭x[9y])!cU1Lr| zWm S@Kՠ?u'&^>Z8on[szoSN&~E'xF ީ"me8QS:s|Ϟp '3PzY?ɤuL…,XD6Ī71}B5'2neGVDC]czl6y|LİUPgUp$|dW)|RKF4i`6;ctJ'Z49Oh.JeOe(ub@+ 5|W-m]S6Q]Jy!:s:`ﰆ+y*7j*^wY"1xȄlVO"|0(r+ڻiu- դJ1&w;aSD?>aI Hz~L U-qoaixGSGoӈM~F_0.*Wi]#M 9EA= C*ݙGrDcIT>½Ajx5`T85%.C-&?QΗ(οw]/C-0vgB6Yhh+K=׹Kբ<\&E/2Pf`wd<3fp]+6)%zGfK<R]/Dsg=]!l{%7eX^q;@aYrv7c-%ً-^xJ(M^[I UfQ&upՋYq{ /77_a9u"R47vpev7r+*ﻳLd~ 8rl/]~QYIg (WVjvUm`9~RNHyY_t}km4m<1c&MxxYlnSou\Vw* _gj L>n Q.Ƌvx`YĪ 9Гr x4?el9%|UzD2'eC?(_d5ʢB-j8#x d@p'b3$ljϥ܊G&3omwB=Dk:@>" Y yFrφBe~u98DjHg'gEqCS(n~U9q1v]`"&lR(VHI\[TdFXKd{"UD0}h0 $=<Y6i=dV`]9"W~p, VSKTXD].]6q+Ejd\ȂylPOz9'[dEaҷBV(T$sm FˋW/A2+~:$tǁѽ}m~TVLIvZb~hP[g`p:ڰ5.M+3IȨ unZ{hq/gdxĹB2dtsUb̛^QH(<(2lQShi(V&[y84[<z`u~d&Q'~KnUzF1X+ K. K0cA%H#sr[zQCIyJhEԽ=$ZZf$*A \ +HunM=rI2V5RVI:l37w+&X@54@ɋ']L\|@,MDŽ5_pRxl|G~ /(u8t} 9?$# VX/I{-̒[-K|'lDdfxݮ֭`Icƀ@f\^`6k]a79&RcUݤCN=)eXi8R{2Uz俇VjdFx{o45iBc +kRahu)ѕ4W0# 1nnB_Ѵw`YSѸ* TZ Rhy߭> 8i}D-*4i'/g2RXgXu/n뤫wy;oVِ*?P &{\:*:9~DXQe\..@2zZyJ }n,T.!Pme%FenCvovϿyᗎpIPI*FO XҮ<HjyPbi1(/- +qy) ߐ"ohmVjtu5 _]udB?/rvN$_O2\g+>-VHQg.B&Ö K<7SYV/_&[!_ź&Lv8tc!zcXI@{_AXPHlpx٪jelUzSG~jjJo/AL60|bsӱ+ [۹'yjyg+؁t, 8mTrҞ-Κ1A3B韧2c Ի-+n0@Cx{NdUV}0Up>\ioń)g~nKHM0~§ӒJ5|j R >XFRN5(XvPl6ڸXa52iR[ tiJ# } 8M0}gMT83a ~{Ұ'ftෝWOXatY 2`ۅ74ΝCJ^&"ȠrCmb-j>_mJ=7ϹVC@b(t#򏫵/ Dj !`#tkϞ{`}'iJˮ \(iY( ?j!^C8+1[bi~ds6\O֏#\w~dóp |7db}qGy1$R 3diGvO-ospL$ kr)S~+plSYL;T?Dɚͱ|\{v;Gqū1DCBFSZU^\[˹{2e7k"ؓ|}cEA+!bG5@]ll'歙̸y!yviw  &9l/1]YR.9}3-< фdQ@$0%hN8!jS=>_SYhXmOOP -@}"KZA?J"OوRl} l/MLe/{Wξ>5KJԬ5˩8u)ڽX0, v06 ncwnD&WKyM)JO 1>8#xl1q# ͸]MZ f ޡ9,n`ŀ" >HiSL-2r428NOxTO yO/|9>^RvUsEdf-ֳ~62)1ǩ.@jX8/tCR'vlGߤrύmIɧ򸤅8w?Za 'sՓv@3\P$6gNDgy5]hmɪ{u_Ev!GĪMJ0pgy7 ~%p1Z)Uά|a_a*󋨚CqR Zl˜-zT(K#IS TDUvFη7o)O0u\ٴOzOǰvu=+V6q'¿y$]㕡?D WC+8JO*hF6nOJQhempψwPFߴ E8WyQ ?w R ~p DrMJ}[l[񀦫8T^t0xORqmaN8o|~$BrkmV 1fZWeqk' rOOĠd6 Nt{ S*s#KN 8B !5/(_)^V)Tª֑={D5Gq`٠/QP6q(% c* PZu%F:; Õn~A1dHܵ+p9S9d;^!Gfޠ؇Vt<* x# 4쳰x_ -h`"[R4w]GLj慾5Z1hOnY=%C{Cg͑Ԥ0& DUr]mXSsB ;Q\w"6i#۸LG$֜ 2 WP6?oEߖ]/*F\i#(l*h!|zrQP= Md { vD敔[|u8U[ZUn +NnX<ޑ| Yb]4:]#Z| QRRd|4`w:z2 \e pY6&e[ z%pF2v2d2Ry͢0L:z3!, XħՇSŊmLRG { s{L yy;:kɧl1i@Sd>;BToV-}W۟Dm'$6R{fk-"߽ L%&'Ȯe_<‹dp:ٙrq@~5A`!XǛ ovQF7eyW {:A{V ]#?wu@^>fӜxZa7Up6zc`[&T-l0^u{jqh5ЉB!?1lZ)źI0FpWU+H9 GwSP|8% ʄ}MhHؓyJ 2g26(%"w zqBhe@x.=DC#*f$hG]✭oS=5-輲5C 7(t=i^ ޗAg8SK>[jazW %X lR|?ÿMyCiڸYC9r$M*?/Q`uC,15Mu'i"XöᏭPf/wc{$:~d aQ;B\u,e @ssMnO${)SnCB41A+Aע؈`s yq$q?p|uC Lsu樰y\Hlmz]{wb6aOW͈E&> Ɔ#x-?kv))|@p"+,HqG$xHIއZM܌ uL˾BXjT# 刼UdIy" ɺ 1/M=/iw;2hG[rqUbCe)>_;b|90M^/[7`lE-]^w,*ɴ62_0I`Xdꁬzo Nvi,5 *_&s 2R;?qM\WW[ Pxm(>~MFo ),o}oCJ̵,oU5;5gwW8Y*ם {9xת^\okN$La*j _\` O[t hC >J̼ÆaPbVݵ>FPt>֗ĜX{R.x%U=R%u/i%AK~qxA 8 Q)x6yQS; `8[:VjJmg#ȸHPw )tnʙv<®"Zbr/9)ZH`ܶ_Sx'8^!j`͒{q&$E?ȅyu<*f ޑʞ慼e.$ۑc̡RNQ]_M~3/&C9E^DzhRQ >>['NMn{ݍ*NxZC+ K-7ԝ+t?\}`Q+[%郜#ˇ0>TѺ$0d&'& iy6 6JmC:eV02>2Õ1/S!േiQRsgS8 )؁Ϳ弘_?+VKJ./+E/ AYj$SOHȩ<]TݞZ6؏M;?f2J&@j. V?d|` a؅8n$[(j!QO$c2"X_+lDPhjf m΍Qҹӟsk;xA3~5Ѐf8ٹь u#/ypJJ" =: *tdōuG_"n6A jDrEw% " Y=Vg:ȑmiIڃy0[(PU s1lZW;Mg-3C* d[UY q\aH<Q@9+fUR) vIdeP~2VNwa!־,<|VO of#$IÌ$LLt_$U߲I,_2KjGނ2߾b-94<`c؀p1=𹄃\D9k{L>mp'ə<]My88f+NVz;z ^$t+JiӶOLJ2Q^CT_;>J`pޘQ̧p}b/bv& %\%Pž\ʟ8bs1<)xlu2IЉômR ]/{=g=IKbwDF'M -ՆPόQ[xTݝ) "-! 3]6J:Ly)$u~S;X ZwFnĽ*)?9Mt?S[LT梺]1!U-c4,HO0Y^ibɽZU)u}A9:V9[vS C9T蠙-ԯ?|=[HXz>#u*ss.k2`[Njr&8?m.H Is#L=l*#*HA5KB4{r2J`j2< :g()VcB㘩zxnA=[`ρmeN(yGʓ<1ji<-Ic͓;E4 7 C^\k'Nf9=DByxn2Z%3ƌ}#wMM|Ol_: M#z2eof:&th =Ghg2M8E4dN$XK%p)nKe(20Z2=*A' f_eƂ۴1Sq}>Wu}Tks 8ۖ]WO#pUg'F(u2Q,zNjN{uh̳!%V}=2*8lu%@BPfy}{cUxa4+8MN}PN|/̜RnZ7[aU@;`4sm*9}ԩL1¿BYSUe*/∽h,҃vu ?bV,Ӟ)P?qwP<+|67`25 z,;-IjZZeʋK #!Jv ~DY\fN 3 ,+?Z}CRHL0-#)&y k6CHv~uם-u𢇝L FaCƂ ؽ4 Sس֢mCR΁܉U{MC^\Glآ?x0~.d]JQ^arI0l6X;0U3C؃yͶV^QBQ2}<>AY^"nNiKV[{r}1!7  <̆Y=Hn3xfZz5ҝb]nAy]U-PlشZ5 "77"[|>{^k)9Hr4tj)$؆c p So]醩k4K/[_o "ڽEU>'NN|W0^AxaO,s1Y4c*44{pK{8O6>mARX0Th'ۆۣ}S0 nH)1Eċű6&mf &OĄr;<&bEܛxFTu]ўAGgK[h,9_/NzA||ޏ5mvӒ*=Jn> nVT2ZP%O>\dtmeEY @`Cܦg|j,JP>M9F\ي)xK7!go}%0,7HUlߒFC8#Sߣ-B#+KɎV4_.^5=Ͱ^pl߃J8\?'0%įG 2JBJ4)NBmwgr!L0 #2B$EА?fFbA1˿^x'i=7/-JOAB['Q+X ]N ǷlBB}Ǯ u'jo|>l~qB&Ÿr H(^yDҊ|ŝNglWeNed~n#ĘBCy`Obz7QJpQ]#GE8H:et5䄺i[UfLg'`,ַq?I'%HV 'J^!M^.Z݃`p"6Wn $rL\g4z_va =Xb;ٯŻu*TEl6XAb$2D{a;Ί1RDMVEU,o̸̓Xܬp@ LYXdM"SWImNu Hƙ F(ckTeTi+n!G\qT;c4kuSm|4>dU>LbŃƀ⾦j_x峏%-\Z YBYuC%?IKʃq|kREˌ%aԹij Lu#c\F409*-,I\DV Bp0 9A=F1.ϕ.d;ŕ. xh.V;UvT^s?@vbZjŲ- {tV' 6G[S.ʇhSUUyхNQ5iM8~L?]y2ȐN{{;hDs;dm[.A8xNb̄ '"a XbR_7&dJS6`=iIc~M]Vv@i ȳd 6<bԭ-^KsSQЭiGKyXy$TcL>iCђW;!)XjArFc~gX7k_D`ssM bG䤡?9R>œZor(ugWmJ l9g* +e\SD>F?:A}E%x0C[{sT`ea/"m]"A"Ļt> z~Ap!ҮJhto>5B|,vB6LͲ n6vWqwKdyYgQQ)]ĀHwi\yg +Y]b|vaj%Ffܯ#Z|_טad2 n]DThY5mcm/*E\LOl!{kҒ6Y'kRV;Z,@3A(;I[&ŠFXA?DgΖmNGVOmPL5{h;byDcl|?wiq.~TCx6z; xlK%L{ԃPhiƪ}r5Zo.(BY9nFJpB==?S>$ADZ$ĪDuVS%cҷd0ͧUFzuVћkiDBRpYݖi!cMpc/…KGrL/g(:dOg^^GG(wK,ӲvZvˇR2&\ 0*:;mzlz:dzvֹC|(>}]'ŦMOj zRیɜ3ZJDHJ')a[*%z/T!T[w}ᎈ=E3 dF X{_:$%<_,,DtGi*Νeݛ7D m(RciJn)!҅Qh?ǙO#;<[b/:vXbǻCzNڦ$;4Z|jƂ.B9@x zthNz*enS}({̧.iږx(d>Y"P<=`iؚM~OjoqT&)V9@a.#/蜀W@z&zN.c2'ly K9ǎб5 weטbCa}*Ҽ<gꀪuSt$wQtE'z}Ő+6hnm ^:U*y֢#nᨺi~ȒyK:飠dPMObT*3v';#+pjlG/I8"б3VaqJ}ؕz<^SG,FW;MP*5It1:|zqsTE|Hu!L>=% >6@ (Ք~n IۜIMn,]&؊_0@X] n<Wi0'w@\*N ^î=`8,tz@@lxx2;eDt4q[ir)l- ?3{8@VvjgI0\@vq*lly"H9Pfh4h<-S8Ge:=x5vX X"B'FEv<s1?;i*`d=]6PYJ}2σ#\ɞ U^PrT,Bu e܊UuaX~< n%)Օ5?<^U ^L><7͍) ʒz]>ib< %(Z5d"EC_-.!̦"`] ZӘR!AmPqk@!ubDV-hWw䯨JAn /'jTU@ˆL7~76/ dQ$&] 0w4RY%   围e}B;;Jwk+ &2֤cY3}v Qs!'⯒\jk[O'PLж'\4гbJlXzGk[1oWclNKu?Kh?ZV22B/rImM G!e(?h`lI4TKX+צּ#]ޫ(t[HP'8]>s&RS ]~BuG[0(˳ E oRc;1'3G_Q{Zq:ʯ,ݙ9[3=p  ^b{`s9-q;EE^29ɗGv/墿+lS#pϔo<"pRZm/;Jt WgiPc)2J )|W%> b,DFq m^tbo~ qC.l[-lIo "ֿ|fknP%t_'\cG0 Pڕ>;lמO C^U!% \FxC͌Z@jE7ɓ)(Ow .W;9:eىT u{묦%yAXBC){N9"A7*BzDCBcd0ThbY~\P dTJe,"Ѷn X 08 QY). 2YUcŪ%LdqՄ62%\H& Z}$%욾5gCb6Z$\X;ҫO(w^b?K߄zD?<g)ђŊF^~IJC@6h+և|+QƯ]>0nŜ)Lq7*{UYlzUI.[:)!>/l{j,'qrfPlZ " B@z:0ЙM r{\x_H?U[ݟaui~@qiHPnݠZY[WcYy8qs#Q9gf JqNq0}zp$CILnG,5֙+ g\;z_ -'Kcau*a+^4hMp֐1vf_dٱ5n)p?/qN]3o@L +wuB0v,$c"lFy21Rkb"ŧ}v^:YnSPt x Aх0+n^%S&o=]qfI_(l6 E[nMpdicSnn9wC,fFqPpyRC8qtwQig=l` %+u0tdh^Eʳ=j~(&zv;I[jg?9rHYp&~jg٪C="Vh^=J-ӡe5'Z#zf6ۏsA0$ l#jMAL }0 n%gp9Z%}K [E`!Â"S[Zİk[=~~3|<3ޤ/itRcZ'KcP(6dNcZӌCxZ[g >`}54܄Y/t ݗ*h噡*DWL7 ]eYۗil8Z ]X޶K7K}w^m(o|F}N=q6}J\SEuV=< "x6u?ptJ@<,@9o:\}2@(id~t1=x{*4vJ N9-ۅc wZPe)AA0د@T+}Ӕ\SbYnxE|0L lBNjnf%tP--ܹr$G=۲Dn}bݫ:9at8a7EُHS axw=z19cnAR3~EOw!%CJґceMgIK.*.^UroZ2wSȚׇYĬL{Eӿ;^D~]*VRLj֊1LPApDs4:17s>v\B4+{:zČDm&@6^Y9b09 Ť t96yG2'</anP6Ky VmOV sҺ$f4{u^wleFvB¹cg˼1!%U~Z_Oy%F8傂2ӷyO"A7Uw{\t4*JlQC*ΉQfa㡾O}F~/yI z;5/E<νa$efd2zmI\ ~_bSȀ}ZT9m9ɛ` d +JhN9{fS\R]-͆)6H Z2Ps ~R6#S"h_y#Qqah)E!QOw$`;CH sMQmˬX}[<.gycoɃP!:NN;i.GaXHVLmYe~>Nmy5՝AP GkdrC 6Wc&a j& o]H\7& G|_2Km}8jmd!§ `WMYh Sd㰒1JɪgM=TWa9`oݪܿn >aXM`YKQ;-iWQj qRQ@oZf:9kdwQa_Ϳ6  &C \QWREG:|gٮ< *_,c7<8XŦoD`[}7йeӾۈ޻0ydgfBJM/pS[)=']U^hE_D8vV֥0ñP_G$A &e֓FTtK8Z6"olQV._˰VyM1mueE3R 7(^ h+5g>άFfeL/rѮ&[^kDuY-g͖qҠfݥ-K'Keg\NXi^fsDmzMtCǞkI2?n?~}$APpqe.F>%5&{Iz7I` "~ eu1FhJW4p9Zo>G=*1(Fׇxo)pܛDmv"W xVk4Hs@hHo Jb^.pA $cdf % ܯ|Bs;uE7~vUy80lH5,$ҏΚ_hI9xhh52=zџҬ|ƫs:"lsvmxYΕwѲ=eX/os{v}x} ) >el)/T:#^݆qܻ*kLE}Dq;|snhr_mI:h?^;ԩ"h/ukBFL:tf,z2h'HK{*YSa}@z<`Z5X)֖rd;ʚzڎi } <h&UU#%b0Z'EIH(-8{ab9Oע88_3xȊh15r<@.aIJjWn?L/pXO%B{:E'&w e 1ao?EsSNzZ?xuO#K[@TI*[5uI5#h*<*ar}ܽV\ܛyMJ\^BqҾQ*(MОd$K cay~09[ݭ]" Bmy7(V,c]d%'WA|/]8@D4`ݡX&8>`nJac_-<+pyʀ '٠D1_OL^V$lMoQ:Ϡ`[~fg .yF 84#]yu{j^pa3[x=\n*|[7TLJ<@[q'x9q,Df:on(7>0=) c}Y|>r2P~1mzB NՔftƍ|DZ@+tt!G w H0/R~w@3kjŻ 0=&IIکZA=5[ˏybR948RyF,ܡjdu9 g]E4'!@PCۗt Fu?+IHtw9ި|1ZHE9-gszYwJt֜Gb;j^6)PE܏BeLj2vZ㊮dAEZ8'OVp&$* ˹AtM}>8i"MﵘYU0xV^Cf}Mːe$H u6-^Ǥ7Ch-ɡt!)h 9@<`}%oƀj,)EQ;9[cg%a&KI٫?LEPw*wr,3D-4]R "pF.(Sp & C΢wb xƺqx QbYE\.%gIGMT}1ka;xr6Znmbr.)07S9\-ru腳l? c82,<:@qZ_^f |O:`'xn Hwۻa|Oe:n,RQY{G/F~cWIQ"nR^S}vJsDx| |93}A OPl4tNE aSt.Dsi;?Z˜7X4CWX<4 k3G##~(-/X濽ۢ8)NpadefCtO M+b=e$P$2K:اŐĘDWG[4u9f-i<JBX1%b,%4mHΩT>X0[VvEnJz:ٔAlhhgs/J #-x6Q[C`xmd$%?f"ZCYW@sKt>, .l"*.abWaWiyG{_? fGTdV[ۭHSR- Mz13AWxxAr-јUuF- dlevLu`Le#iH1DC'?rVsX9;[8}GeS<` Avh?<=H6?FWAͬpk`+J[hׂc%Ӫ $,ylT14r# ʪrw2>Xd BCǑr3^P]m]\D( )3;Pҿ`29'Vr mR",S9U., KMOsx%2 W|7vݸ:},3=OV%Ix@kSУd#; a.Ó\ 9%'ZEmڃf=o(Yi5լpuEi %vfycRplΉ>eWI`܅eիNΞ41+Wi-DH<\" }AB+vyhv.\$|LGN/$ڡI *DnO x V[ɑߠnɡӰD %*)Jc+Y"!x90?c Vd?RmFҫvɝXAD*!;$PFy¢IA:uUlB)Rb`w[vMfj$ʆg9vrp4M>I׀a6g99~ej9]-  [,<{jJ)QTw 'Ǒ)֦! !cM>TA6Ӗ|?K6_|f vfc\jN&".$;s^"km،[mQYVf-Mi|[?_"/{XO8^)-sv7@ʅ1m q M 0UUNRt4YBxzB3&?Q47weaXmxBLny SSO%tuV&R>sHR19)GYQ&Gm9A3\gYU.k]v3MƈBWhT v'xR|}OJ-.HZ:ԐJ_rɄzA6EE/]O"kʎg.#8}rB-(zC$X;:It6HtW/هmKB:5$d| |4 l49MKu^(~Nv 9WaeKa[ iP99\p a1.,'o/2P Ch8.aF*IIu^tcD7*hqnHcWjwEGOlaϦꍕO( p(%q/W\lLZn2nl5՛t5vFM1ljt3v6\R䇚TLQʃϲ21GQ#kiaV: ػ[aC,xgwԨe7hvͼ.HV ]W /R%zӔ/^7wbhzٱr-UA5XF ̚$lF)˼maU!Bs=]h[#Ů""#[+LfKΞOL3B^&PH#Ⱥީ4:N0_&q~|cU0$Ν/|7 כW7W|y6AOz A3I c`C5MhJN1Ҿѱ_2K{]$ZƛYM:ka3aD>-6N~C7,e\".N?Y>)#&657jmd apa9Γ;ѓSai"X0P4`1Vad q%G_p4ԫs6_}/Xh 0յ*Q{1yC=!9JrR&F 7oG(\} < hkQ)"Uy'-~VeWˬ\5^[w#$ eEX٨8i3ߙb'Zx#uGiT RK6K~>rMvJI&+t6=݆ /^ o~>nߵ/hPנp~DI{_dT3k^ (IXYڄ\8(GyZS/RGHbj*WyA*czYhZF&$hQ̢p ',Uޖ$Lj^)'=S>e,=q'lH/%$*5)%Q2k<[@PܯEX7{ W?D .uVBmiߎglrk(%c>NX'v@ p VR.H{L|1PeLӟ[=@2`>BY0_Tq}sVL[X-O lJy6m=L/yۉFL0 vk Ʋzު")~疈/x?FdK~U Bַ_SdHRqT)Il>p!p\+Qi۫cTo ;]a#aQ%E[FgqL~D./!oRخ_d5X4{m`)w5P_fR^pcq BAw /!_0x]Vb6#d*~hC" d{:}oYN]6ȕ*?<뚡·_~3: W9w]Ό\@n C-lXC!qNѨW:V4[namA F[8Ħ_2p, [7"ɕѠ\H˚wdx(8+۹!s%1>#@:wz<0-^68Ğ:Uv6 G .>Uq=e>%pgKkN^^Ldzۿk1zРl[>9>?h"3 HwP4m\j]e:d1WEZ}OZ6r;#9F[ԶI5I SH n9{cؽM+GctQ\E$wRC؇򅮌ʞaJd@ׅhn!A·{ ?\`~&3]2acm~[Өhl, B5H va"]U0 }ely(Qu5ɺ5>^"Ne>x@6nlqYtL\~sW`WG @>k0 VB!;B1$*בdmΎcV- }v$ J jleki]H^(S. E׫Oee%A)IkWDOv9lrtn`5A9NRuq#i Ff|l-ABl-i3˻De.F<59 ) _=m9hw]oՖ:2 BV.:ŌaMoRx}҅=7q4< 46_8H9#҄yE﮸ GZJjP\I񮦇<:8=co< (=pne-}Ab@1" 1\Qð˥۲*TVĞ=c[PNAKaB;=#w)׉Q_#a=<<\= nu!B+~>Aqc^78`vD&ɠ0_y9ꣵC|[ƽ>GMT{C=u=}SL#0$ !VY J1P ˷ZJ{052ιӯ ba+!Po~l%2m1DmF:N*t>qW}XnU͗Z[{5 >Y/͕8>ߓGE+M:xVx"ssK&(\B-6Q]^x$;T{q\3r{,T@RNZ稾ĝ4Y~lr> ~]"Gn:V+]r OdTeYBHT ,]0ʪZa4 W"/a]=I_{O&l, hE>Z/*EO@3Ld2mlz8$5f $XUOR8Ý)N▝GKh+&o:3x,4@CwrfӱȸyGAuL_Bs u ݗg%SHZ3*}NWĿ6im`Dv[3GCFĎ5*v ߾}*'^sgBT&v薨l m $TTzJP)3\~/LM+xLLD%SVCwN{|&bXxF{2=umR` 9|Zc%o~- J1{ZA'Y2rE# Vʆ6)pAqzuϴ +^ TP ?e9>@>N"ONj.&6-_t ՙxę g=죥~ _7/tAD 32CImS~%t[`O%ZD|X&CeO#T! 0#PĔ}ӻБ*Β؜M{p=[cI" BpaʛߴD=l= 3U0@Ch/c1󆺝?)U69=T]ctߞUXLwWgb+\/e8QVWbbojAŦ0>g{c&*Y}-"E$w3}=B<'\bGM¿Sl1e36?U=>Ӭ6{ƩˆCD E溍2pfP`XY8Z-z@wx͆0 Ze꽋6^S/΍u$hj* R 1UA26P Rv{ICliT#1`bO}nW pd?$>$+گ`*TJza.UGogu&RW􉻷U8" UH@9CĦ(dz{5\y7)nYHK?_.*B7p iM;桜=Cc{y*Zuf@fZ7w*S[FwlՅބ1qP]@.},\qzXbOd:\I~T`Qh((xVtĕy$sj*nϘ9NيLwzaF)TJC=}&OR6q>(K1̢7c Q$ڦ'r݉HM])z] pĂ[`5y NW cPO숳WXu@"uO3_bcoX>"Fgת]yNHks=!wlZ`o5}Dނ_V8,ud`BtR8__[!?b| sP5xH:0s0Zt"[#C)0Њ"Ճ.*: $gP4fQӄb;"@ϡ {gSCDFI`r0;оNo%݌EhyeoH50>CKJh,~>oKe3-sQWg p<#(CU$6Ha>~^!96Gt⎻(u}HZz,=|,[] o,+GvԂT7-a\"dmc9-M3<1o GɣPg7ȾpBߺr(h.8%+v\ȇmozjGJ| s1I\j:u !'%b @;g\䆣PMIkȷzwa@CP('͹\1=;R1Z;&Y_@ 2aJ>gcL.in4e\1MZl] ɢndL Mvސ]#/{sځJQ%6eq𾙷zo\x:ostQFWHl#RDሓ-dT]E`#^E\ r#Xe:%V Vw{)b؆RI/-xPKS[M< HD]$ MUXqV|?Ŧ0>#]$L=ҳ)<m&CV78h2J䟲I}gMr+hD<@fJgn| b^v = @̪ 1@OUr @1YT^~Kl1 Iքd$4=}b-ˤJ$Xڲ?b0AP/*5+>&^ 4ǘ C 󪱖u:·$Irε[VHtӸj9l#F]83ȧRVdrUi{01hТ+|.ާ;Ӥ۾w:D0oKſT%. FwwN}PG_h<-uu~U?` %XEg٣ f"Ѳp)!xT6\ԝ@b&[h:1ZXw\O=g.ӴH$8hh ֡qg6n  6mOѸZn^:Ps # *=N.:˹iu8fȯoGeY'hrpLX+žׇPC  9D\|!݂r& 7O^3G9QS]l2Aa?hkݴiSQjE\W б/l2\꾒w=E}@(!f#SCUuj&NPiQ>[A fai~6]ba4/ݼE,ۯ!pѕ9+ 7d>t-SOAR%X-]g+,c%1j{BAyy}ADyĚI]ݏUEmvtYÅQKFҾCd'd!/}F3lX⇁.'\hk:_*bAqG uȪlu=&Mp (e"wi,;v;n3xjInup):Ԗe-n\!U"=f K§$Y= ɐE>ӆcX$EGeXA.֣tza8L-pkʯ_č(\iHpChcʑI[pUzfmF1\`nmL>`puTGFW!֤W/e=~_ʁ3V{+B䠤Oes~E:p#U> !)Ivfɵ`>__vLbO։@y~ok! `+neTA3Tj|HH) <eW_nE7uIu[#EenO=458.(f+<&>K" Ö9/qQlbBny]vǵHw_\TBS1!-5uhSl;wE-t9XDJ) ]Wz"bw49(j1~eu\c6҂\#k<03af :dK><>ZU}7$X5;(wtM;uZKT XwmpHFQk0:`:gѯP)u0@Ӱ mMFH ֝^~Oe<_@r`bs&fmhu%I;6,)}w3j:…8l|:; 6̛^#־H_E[Ç&Pu눚HYO4%N*l&O>Wv\+j"Ĭ]ƼMitom$PP>N`ۣu>)'!*ڣõ7v%ՕU\;U!i]*RA'IOJ^UĔ9Ն!>$M4C+ʉ^cU-1FD?;B$P!E\V;3Ț\$3O-w E*Jx`lJXsh+9U}C4Df< fs[ΨE¾KeTn5в`Dbc#Mj'l8Pn . [!U.*apyv$@.dBYsQ^naudglL@j6 $_dpY#jsIڦK@N`JǬ/-=*B/RCؒ ;7*WLs;n#hd_LmhEaRJ#!OUb4ޑD)7[􈁑> aB94Be>%gz͞ lY@oT=o?"a9pOtI9pSQ-@̙w(^Z^= ~pR#/|#I̎={6ͯ0ǃrxYymLI%щwDw ƌdxӾ3fJB3cfWI *Hs䫷nuG+ɸ1cΥݏ{=̭%IFt辿h6#A*Hr[[Mpv( Þ'o  Q;gߊ\Uck=m=5 e IQJ칵$tBl'svgOQ-is0eKy,\Z-;:ĠjOT"8ȫK{2E }S R9Q`<}#GY 땲vnXr!bSZ@IC0]$eL#{{OX;Dbs(y:au ZbMjX^ ug~A!8 БaW>(iM5sDi!4Eb~M9{SI¬ț( :RKvqܩ؝?畂!"5:H1E,LҍGv!gp`\F{!@g;/6`L{JK>Gwz=xkZш̕nAPhVO wn k`Np>=໇A@=N zlQ zM%3e*YҐ$‘tUsT > r~Y1".ONaUte{=8Q|VJ©Jp/@st(\4"زhj݂~Q"?jPhST#F Pb8 WAhV٘ [.s?C}ȳ=lUb۲ߟoe[-ݨte6zNBpmRxLsY ^̵=.G2 sf8ЙQ}(G^?ϓEzD~-rjh`Փ~͒.35ߥi453f}C%2=ΐQܐ?c@Ġ.nDxM8O-ϵ_(kIoK(-*"b.]E6INʌ㻶5HP]36G;#%Q64\r7셤@B# PSDL.Vd0({5&.Cthsϳ,E0epUzxWFŪoyYQ`復]Mt ]s{F\ 8׌|嶴2:iQ^RRjTtDWՌ89zVt%Eƣ,2͓ g4-C#( <)* fl>D:MhPKGs[*qlK,C7ՙ0ܵ6+_yr`jz8ppH,C+7DFf|k'dÍLFQ Qްd'E#NҎW΋Vb:0 Lҭ0O-;W PЊ8 )6H!<1F2z;P}sH!ŵS-ȴ3 }B*V#^0 BKwRg"(_n/祋)Uf[䖮}؂Y%BPbE5B&ՄsO'TYWn12TwEք?BK8[4ue99NްF73{6h[=L%wy tL{W)~He3` lsDzw/ob b= zkdWX:V9.lNZ [DclGOkdias!򝆞ͪ=k 5| WLSJ;o3m}\j&ϑp=@"U 5{U K蒕HZEw]8S1rD? 4]ph~q?'݀X[\ bO GS jG^*JX_?[k76zBMȩps;'u$HIz@yDyނT$ZFn0;x!kG-'*?\p ^&bE?C]$g3*:]/j~P$ub gSOB i#ek!aZ"B Q bHTR]: D_Q7xTh0|$KE&"T6W|[m.MR$nk%z,Cȷ}7~V?|Z&u!O@'%/< N7~nN5CjQ{TaNhJwTމcx(7ClWY]H[OQhXÙe7}=f?+ QT.'7PBeG1D ln=(\6Wq:pkㅷǕM5wPݝ' Z)#Hϙk *H ٓ #į`dC)KE]26ߚ)~,M>Ryr^7-!!ުid@bd؍V jH.gC[9\EXc%׏7exaf΅,ޏQEm_c@CG ` =kͭlyX&m|q|V oKE=Q)5iwXTvA3}U~CJ_ )3t}B~Ģb zOC=67_ rNfa Ow؀֥mhGP)hJ`,IF)o!cgsO"#?ŞSljBWL"1H.ǫ57'©@TRLNz[#\.S Y^X=UaׂG}ؚ~:66Q-f^9bWղX Z]I<(nrk7DM* RBF| Hzh1ɲ)~"gkhq.Jok.$Ux'mdrݰ-lfwB"}ȍKVE9} lʉ{MLͫJ,пlP 㓖u@̐q@LV(9^?}3 y 0ŘJJtD7H6}Zpz}m@Ktn_[i Ae//Y7gGժtwf4^ bH -Gū pg*]xrT(LR+ICeZ\}>Qal=w?$N?rwI|}~ 5!|SEy֓`~ CІvy[E5Rb5 O*\ Ǡd?US/P4owg`*RKKA'k܇/*dӿ d3 U G!)?Y.I&:77La_H|ydz%9fByl#\fwĤ5WIh4G%5$ bQ1.+<+DCQ3-՞1*ݻMdq҈KY}DX '|kNLʵ 7xPj@u`:eYVAVR* mYg>0~še4&>򘷘Ff]b+ e^O2FoZ@(OZmkHn dfK?YY0^z||!U-͛Q:7*OyU׺a]1ʲ]{-)0D۠u"MٳtNߜ"⠏`ȅKĚS`͗#xH]rK lNG$+1^,ѫ֥ƀ-^ikΎ aܕ-&VɚKK)Vtl+7C") Cye"ۡ(Wrjvވ` .cb$ ϏL݉?N % gJ }ߒoUCLwT3[_h/@-7xL[4XX\[gr J.K7C_ 3 ˈ]*J㞼=ei05PK׆cՇfh|C[0=,=Lømj=ˉxbg8:U׶W3 ESis1{D%zl).Vh6[l ߤ ,pudH1~%WgvOY9]hpB'W1+ %FYy[ҡ@7J_̈96I(R`>% j2,N|ZշUjTWm^vQ)!Xf} K AP)z>,?;AGphJqRiSgNmaĐˀH"6'DXɧ2M nV$}Z?9 PEun<{/w؞?օJe'C}Lv0G$ã=Q^71.61C E'\ M+` *gg\PP%@#&3z>YsF74%9DE%G˗V{PdVF܊Q'JD2ѶYB;)\fR>+b}&v3KW\ӪHtGy }+Jji{}VL$X*[,ӻB>K*zQ odhǬ\a0!0 3,;gs"/LZ[CcJV*>~ٟNvpDOAX~Bo45e.Xfi#$epU$#O@z{eX=qjL>nu?}OL| تSĜSxbeaI )!NK |;mfi->/\Hؠ,g]Hj;BHnn.AtQ8nAycŸuJej~iY*~vx6L X>0`(Z#P#R@8D Yd܈r LFY-n,^psSܭEw}P.kF XLX01AeQ"0uh\AҴDek ȥYsC':ຎg ӹ9d,n : ނ ⻲C?Ç[9O=)i:jZ0[Ν*/4DYDnuN (GIQCn-ˁjJ$.,> Vr5g10PV*8n\9".";NCHCX# {#PAT9%/N?KMLcT[) 4+O^rE,Q~̪ ˛w1pRg3@g8Λڦ 7 WKŏ{)3<() %pdU[&<2T#inr 7iIw噲]Dmh`%F9VֳArtTj%S4T[[qD/޶tҏ7w\0WlYK;RoJop^EX0{Y(g\asRVKC3Inry9lp˟iς<ZF++HkS\"īzؚRazZ[-K֖D` ھLoC$SH"H6{%Vv+Ў6ib17be̴qy-*0"@,,dy.>!4u"S- Z, ȳ8~ψ%Pt0&"f6Mbe`[Gڱ'L8Vx1* M3O܌J_XI.U8u#eE8 pơ'>!Sm 4!sB̋0)GD\TFH8Doz?7utg.}؄v)`;pg%?ȳ aA~B3+ qV,m+ #*S8FO,*| M͗$/x͵T^4IE jn6&#ۗ2 &F3yPPWr[K1XPY gܑnM^.C߸7oQv| ]Ni_=Qu|R?k7-הRs$ 1hEl!NZۏYbEiX'^xj0s5龎3a$KrG_|X\f<@Pko6P1/tdhWY"Q6w |PG$<|tT[tpjS7X`\]HR7fe(Q}UI] 'O`sZh;<䴚n-sz{ | m@oWS}޵?510j9E;ܪ(TՑj+ER_'G#;Umdۓh؏;`=)($P!@ZEI6{τit6.;3K 댞m5ƿcG[@ҁJ kXxJ@qqO䮺0'3lc7;/l IcRRZrR ca&xrUbMXl4Ѱ^>%ln={(ǤUrd^}HpUx||6$;"m%I\ /hVceEaAt+c/塢lObgE  B1gbvK0Nn8,_7ܪXiti$- )IRZv1 E9gDap=Iv=Hs 4?'9}$,3`ry"F `IW&1ׇo20%AK# ( vuǾMXMhuUɒ/!aE0TU\ Z< 5Ǿ+G)YԄ9w3B8X9 [9qZWcnX/=n2>V~٢:ZJh^JޥžRsd9 &Tki)Koqo-볇tpiaNaZRGƭjӥ 6(ְ.H Dat ,b#xUFWz8  ;)[3z^T/V Jepq-sORrPT51eէZv Q+YJoؘ[$H yDU+᠄0Wvrqy!v>ϖlP.U^3S&%Q5Udi)߭KpVgn|gxյgX#EŽf~iq),\PZ\o*sή`>S3mLg#z`}h@j>-1ܕO H :xwT(GR(A+]7,n`tz96 =[oN>E(=| lX\S)8׋C# Kc`@(%t"փ" L i@He}CW?qece,Ƕi6m?l H}PofiNj&=9 U*{UIM}@u|v& )"ev4r5c0Gγ-IK( OX7rsI(Hy[.kb_Up\h>A"^ُ6YE7w2)D[\9d]ޏmNdvuAdp\ O3 aԦ]0?DOtHaV4W:HA@.MJR9N.Ufԫ rx RtG)pܝ!pP>!%ה!*nTqTWi1gZ>`HZɑpSmOx˼PI/W!m$#W)'Q5 r\3'@kO6&`a~D= y2.#8z(-E4 D0=#1pNZ"@JTp%Ǐ]V}ol 'u k撸Ѵ+͑٫W^=<fn^\Y|>x34q?0#i?%MX &;" &O׵kJk5E?\O 1%D1;6vǻb{]݈(|Ɠmz,wlnf(բ{ ߐ*YJ DkݛN0vgo./悟viDVsQLe$6a#"̘&SkITSDbSrx`J9T՚JVu9۞מ07Gqգ%Jd{1Nn)}RyRwkP@&F]o񮓵`7|4 LC$0M[O=ސژb<J!uUBGRBl q8?DxdRQ(o'B wt|-AhL(Ҥs.FnSFֶ=dXYmTQixp6wT;.]F;JnجLjn[$p8As+/JPܸvQ\0_]/# ""ohs^O$'%#3',ׇљhym} ty"ȣN?Zqڴ֚ E@Krjg*B1rb*Ns< 3EE ΨKj Z8 g~]O)yu \>zrJt7ׯl)O7ā+B>Ʀی+vgSpbm'c&?evvBrM01f@-7MG"&ɺB&I7`?]U (: _Q񨥏HgĨ'rhQ;H_ @X ͷ71dU؝Y屯TmAr?Il:v.C>"I qDWm ?Ro2wqy4pyݬ=L<8YRi ݗ&ŷ *Xᄐo he-D@ʻ%2wz(a;ޚ{?APȢΫ Մp2SxK<{乶g=&e]`F8i.}/X/~8 Y ªy/ -߆)2V<Qn9qĦ]OCCX8CM. b*3)Z4NBb}[7W5jc)$HvtKf!땝<>=Lˁ݄" ,Gԃ >)A?kw;ުoIeWt: 2x1M0t2NSK[H?7S'[1B^RO?9YHŎ{K`TlMyǒ4 `{vMe}qC{ehĤ0JW]qL !d #<7U,zվ:arD3EcSC<1NȈ9 }WlEEb1qq-|YtU&px' ͫXPBJXRWyÖqW;0w1k }},)v+ Av|Ni_H^EC|ߜ1"|Wkڑ[v6߲PR?1|<ޞSQ0^x\,fPVh Ԑ<0 ]aS?5Ux)x/s`A%2Ezп 6H0&u8Y3#yg*ZX9F wIMl@( thv;5dixerJ=-&CbHxAD[K=,%GhΘr9:FvHp! ̲$t;䉛#E-&r΢6H JueA,sHJ< =S& @ *ĺ!àb]#Cb<ؼ<8 ߜPaJ[JIjob9T0@6]\ =k ٷbɫEد-u{BݑuN//d[g]8*a }dwGXn׺B'‹}rD+jl߬I kW@Z&;׮y ΋_ f`J @^ǡ >A_-a2V0x\ ^% H}z,yj'p)Ap.ΘJ &#&/65P F|dIrB<ʥ7d^}I5_P]h|5t .կf' % Wb$?;́w0&NPT+~ߎ\ κG>s_aISW>kDi0F}I5ԴXU1*gRZ(`jW^ $zS- k*@J}~$>"]j5boBrm:MU޵`c\*-%C .g=y/2>2ēx-V%h iR&3b{KNխT)}\a'EH4E'&0,0S281A'̜K = n*p~-0 xu5C;ƻQt1 i6տ_.A"$2m-PY}Yy߃k;!_ 6tl_npedp7c>;nWcr4i& qXn[yXc:ՠ1T0jeivAʓ'7Pu0?Γi˹gl.ndmO:8_V~{Z?8mW%H饫Yyf%j_5_jRk˺O8!7PKA 78T <]* Rp]PmnB S.Sy\%qr7@`fY=g /+l;҉EGyT2*H=.B/(#[hF ƾ0(Pj"U8bi3[&]WiO40O5\ ΀)MZ3/D0G|Rq7LQ@K@xN~XQ>b|*(D(&= e[]l(dkj E7I#-X*rn%-&|>čلtT5mϽY^i r (BS/W ,)M؇nhߓHaZZ 5w=d^5ɽ'z>Rc.2ft%_yWJG/[R 5E&-zYC"M:p Z0X]7C/0m63Џf/i2zgKӛrEWsU}Rك|י>})&'cSOm270-TJEi1,Mp_瓾Mr֏\Yf=2NǠl/Vȳ28Y靠Mn~4&]V1DJ$9YIZ@Qy?*^9 )Ҽ\XYIqT٣>6`Pv=O:pcdKhM{)0^YC$ Xߧ&#R\_QԎK[T}R9kX15F lku3g{[L|~~r\`*NLvѕ⳽>FjO|! 2|1Zt&i`n{m{o~=Ϲ#P : [/ddV8@+MƄ;t&6 lҢi$:=c0қ HvmB;^u@3#tܿ4^( kZr^7A,;@k"5z X W@PrA.5V$[EczXpI!llHӆӘg!x9NLV:5R[?ۊsOJ[[z##OCҾj~i%o$w{@+4lt$e|V %-=*dتG#3RhYn%A|>Upx= NLPё'`|H11GBEwJb mÜV n:%nHC owD}xt #StN,xQ5 9qC v.1 ޷~ ~^S y{DG%o'c>vu >!UyXf*wy+FxDަ#ɋ 5,| wPgB;Xd]fiB4EIYINEVrd3z8.VL)~. Lj)̒XYߜfOJQ\`(5rog=ɾhp\;;)8Ín8! 541 6v֝z#b^?@ڝ}>{aC`ǒL񬸟O7 uW2?* JO~7#To͹"<.\Yd&;昧1CO7)@C[*c׷tW/絉xg^<8u|N;кl!xOGh 7 L.CH7 >czr=IbǑv$Z,jI!1N =tPA{`y`>ye47Eq(+mYTc`=)áƳy ƆqUS|T҂!Ƨ.q$ta\L U4\N?d/ܜW9۳1Y‹PHYz4'8{q9X-VjzOѷ*4KWǔUE_eݸ26 Lu}$mGV `D$m!͢+.۸1ps8mXy&P }!তH=ĸЍJoP1w!|sZK &?^"J^fe+}ߠgǒyn(e6O7%5!&gx^3dU{?W5*m=.dOA9JWrk23rHH 5FͿ?YdӢ70S Z h%P>C惔#Bɟ*H]!).pMj,~^ pt 2d*7@G*̰P02 7_~dÓ`w]=!dZB(Xf2EʄK4F'2x:hBT<'0nl>c۴9'2^e ;q2n$mƪ@l"1-.=bSp[&nuX1sI?{^70X@=TjԢ&3;MzSEPӰdU&ƯbmKm&ܲQKbI*W%Jǯ U$/QrrB\ID|D U?FlTéSt<ڎߺV4O_ܯ{Ya2(DYGrסAtsl6!nv2a|i_hiHM5w];Ed0 #u"#_uOEȋ,קApB q_!;؈JAI]CCG&دB<8dNP,nP大?c#k )zrФJvzE`U'++gVE(&UK}y\Vv ' C𡉇 z}ÂH#!8?5*b≁_hQk cƼ~]P];{ԇ zӤgo.8/ܾF|NB5Δ<__-Bw5^1ex3Q(!_pҜ7p54gi+f ּ)~׌|$?ƷQE"gC|y ,酢PʳOTm͔hgj_yҕFjK6,H?"<2UBk i`;{e_jG^4iSﯵY rԸ3}`T異W~*)́È 1U{ϬDG_S**smaS\Ħ)!9paG+t.z > ͩ~$-شzN&p94;@$d#)gY!ʵhŦ'(;@:""'J vҧ/.@,W`)%~ _˅j@UX_|tӵg09c.F'{A nD8N>6xtcl|'#Cnj7keĔj`.{3^!63#Cqj-F! 5UN]'B9:0VLӏ5xkqmjq P87Lb:dK1d5)t/B*6u|ꁀ2G cq-\ W}Cv;Ω3xq'RC+Ra^Bng}Gnj[Kka8͗<_ J$${f$҃UCg=:r£!M;ܙ LFPF@$lh Z.7\ b8sEBx#mIoX\TyFqݓ%o #4xֺɊ sK2Ћ>*L9FT*$gĚ3(DΛbx> -w ޻)ѠHTG"">7$!a\ρo7vLi>X?N?aI 2WJܮ݂éAXj>g?q (r3/ v:" ? Ӳ-EHx6c'xά*̩tMQ(k$kf8.;}F +} 5'#"RHeGBk?8TX| %LYZ|qXEX`I ?KYT%i`@idVGw{PP06Z@(jB-@aR[ʯxh=vRNܯﮖGo#5o~ Rh'J Hhy"͍o.˛/OkY64W+PO$ZU B)zpD&/v4;4ۃ"HDZZ>O5A!JDPrQEK];T2ŽCVy9az!BA2 `?{LQlUqZo=B~(x2ToʺBv"BFǺS!>$kIbu=YҵVi}CPГ}ban{ȾBN /(FXWB3cLJki(M Ye)*IH"Kee-}q5yjͅ3xz޶sP+ u܌bmwu\EKmD^B9t^eB48I7G_a>.ׄ)"ì^"$*|1v mӰAdGB$d%B%*СƱwp+5I*I.4^eٖ{i&ؙ#ᤱX65R|6i>؁*L0$U  0Z9r*?3SnO!JVcJODǝ$wb1ڥ)zcC[D ,4ksJ|1}qNy PS[7S'0$>2˖D>W2QJAqz'}B$)Amp+v3X'l\?@ܼT9_0t6154q%QBd6>TnhAh:sOp# eqE?J0]ޣ7T:ɹ.^gK*#^l7;R ^YjO o)\GO mR6#3쳃|c907bEG)oa[̶+q"1* 3OuHޡkPN);Lum tU!?3Y${4bKXof[z3a4Or9$mڍs5a_Nb,^~rSa>cpV{cvu-7 H+ ~(3U`zuILܽ7Aoda)VZ>U?@s6%[ָ&s~/j,pg6 uj {bx:[9XP`wJ qy:}PC,vl!b."ض2Xz]9嶃RS|.OMGG݁Z;!_WS+=sm#[/Zb" aJ AMYSn}gDo0d2TcNOPfL2>O8YG _Ή {L{WhY"-MQv*@vE)UlFRY8|ׄ0 &/!"4ɮLXPѸ;qs,[Gr gNXRit1V~}ކ*Ռʏı"[<\&u81&#@cNhfv"۰=&XŤs8sFm"D0lOT1ZP:6ul]ϬMw wVAm0a'`eyۨbm!{}pZRx>=KT71 HFh4]k1P2>CGEџh!$ `㗳 cޮnFC[T3ϩ]2KzH#C2N3. JDKظm+]@h3!d,F9n9y?>?[7{_!pp8^YیYpꕭ?7æ |er7_k zXG ֖UǣE&xm$-|+_k$x?U@+?'w`r۠!O.ߝm\׿T!#]Dۏ~) V$ثRzڨ% )#NYpx7qaA;ˡ? hS꠩7iwt4S*4h0pڷ3V^66 8+ ϯ3]H`̌X:NL*P+JESIJÛ9:gdʼnE-X$q1f7MdR?Qmfo8?lvjђm,X ܗl1?,Tу{9ӡ(45h"v ":޵xr=;)zEDo-rL6tڪbѯxL[gc%O!ʸ|ꛁ-q/z*|sn0!{pAR9l 7M0[㚲,i! d:IJE‰~@J6rPjK%*,p"`8\0OvY賵HʤKτg.A mf'W: 6NuwCz qSA X~dħ+6Tj2 iD39F+غUF4 K)L#G s[LK.Y_H8Wq}f+gęewĂnWMív-vjx)̿1jB|vxcwLFL`c`pETqILA_)ꆀҸfKm|O|b7Z?Ls /cFǨ䠯J`I7Dvʪ !sډ]=skjMx])Y)b~P_߅Saù'1;hRDںDIDWk}QTo1Uu0.|(B67 pbIKmq$nIY)>)MfBЫԵ>LZ3X#Kq|/trh7 ê3A9 -c̆n{l%ܣ1Bh+,"O5 'u0y)=vbV(bȶ8 -)m*a.@ -v?O?eq%!*G8ML_z공T۴|eWqGP2 k6sǿqEW}^ eH-j"\{j2U9Me"iV ɉP.>ܹEq(w#9g)8)h Ӳ\OݚigM~A]"s#?آՓetꕴL wBVnQ0lH dS 9+mz<-p g5c#V{C ~ jN蠚U']=(޻:}'oxѷ[!vɇ=&_8j%v/P87_lmT{H"HOBOza>遡%_"P&S_^ІGNcEP¤_F7ןt,$М m^LD޴ E^ւmd/v]]"BՃ+Dze;b^wwĔ&Np[-ZAK$LBS#ߖޙu%Bwcp,>Eg42hҎDs.uJۼ8K$j2;4Fq"*:n` ͫґHJG Q4mT4NE)m bJ&-ZZ Z[ШqS{M"[[64ӎrإxۡ"bDC ,F ؂Nd|݈9UuӧG)ij*͗ (E%풝Sbz[ytJFSI:jsP#ՒZx SK"~cN_h~ę\v}RloB1M8'_V܊Pef:$W'Ns:507WU)yt˥Vo*/,%ekeܦg-mQHLT{~Ętպ["Qõ ˞"JbK,X'a~,]mhdT+uq ڧ)' AkqV\&Kl=Ft?Ɏf{Anr|r=w?,݉}:pc9?dg IB_;,gť~"1($p} ǟh 6 $Z7_+s6q}U^\{O|Q8خ^5Uhк#) ^IS pC `8p]9HDNע?Þ[P$tVm wxX~cܔb׮t^nur${;Q. !WaMǡIC|csjӜ|Tz|jSwѹ=An?眊 ϯoō*wNܷogfp2GQ}6 C͒DFYoNJ k*XU+z EV3aG@1@$!y#+9,igqKymO靇ROv R]qta?, >y 0Z<hj X-$7]DAm ɂP$4c؉ۯ?L8t#v]#Y+W`(Fͱ1 MՑ;s.2{t14-iP~rj^G!hH\εAcfqKq|I67 JZWt#F;Y4oo<9Ȇ3jPz4+tc~="7fɎ5ѡ.Hhڅp!r0O(L0#Ѐ )gjU&L.U3s-z޺P}dqWx{G0Tj AD.w0PܼٻHotxĖ[p2e008),,Q3YPbŧ`ۭNLp[AZMnMA!T$mVZ+b/A Eȱ b t7%F KLuqs7r8`,@$sK&ڥxUXgٝ+7ç_x{VEL֐(jFʭ ". 8|7yMETbqF3E"p'i R8>wόU`rwX.h*m>14awE 9~2JNFFuzxGD^r4/ hԂ3׵fvKq M~rTtVKl'0̱0Bw\LY9Uq}#쑢h6L1yoEx{鳏ok2wRh9AC~lK$]a榁cx-!k3pzeIooT~W.4n?3!>W ! pe?c9WQ/WS*5T ;$JL3Yݝq1zOơ oq0&(o3Üzoԥ*~>.aAp#QVs`K!ၧ2l*,` NGTwj8y)F@о Oֳ:f5a6m<-c+ $Vȣӫ޸獎xJ[b9ee"荩ViZ7@Hg8C @Oy6f; 4"+Ɗ{Œ+KhJt8RŌ,+q(ᢣ7~Ʒi㔛C܍Q'6KEwZ4Q S"0*Ta[ Mg"9fH03.9O6p-KU["P5y3Wxl}":?1޷4ѭI?T+?`_ImwH)ۋNQ{o@9fve 2ܚW`OXe= ؘD7wf0[>R}w"wB<}r363H+UZ.o-޷6~ ׯbiA<l3TT# m ^PtWQPWj]Tonyr"Bߏqo:>xr*Us935sˉB7{B.8ښGd4o)޸\7חAGZr*tojK`Nx O7خsk~Y@Z1` +2ڎU' E%کy/SS;l騂TTNb. StDP랂{IN)uUX˞J~eQi.>K.^PŌM[ct+(ߌsHj=cc45 x7/z^.-vk& ev@LtO߯U[Q[4*, L<ָ46vD?ɑS:خp mc K7~Jf<!co~-"`lup1Y"4x9N_$pqi3齏WwWцQcXD0؍ sWW8j9he3(3TW[/"J1`8SIim0`b+؈Jxzy]U#!=q^Lk2q?Ug8D0&M֡63 cUD=Sa)VЫ7hbҽuCD5hjA#p |2D;W޻ܖe@i>vԝY߁S>q ɣ~gi {sZ~UJ$(s>A8M5u0wfHQ0ޭvl+ģknaBTaZWA"sJF۞>b&G!++*T~K6L(þeL`]i+ӑXlo/o -XbRDH9Q=ye 9+AG $3ONYݓCawmߧH=BSU[*Z)Kg6tNq7.[׋g_b1骹e']&DSAoVO 6'Һ*@pl?M x.YlW-h$, 孯q nl'M뙒 yϹ{A7> g+\A^ '`׳t H))J!m+6l%s\NHuLNT>lh%]K؀%5󞎑&c1{[?FqD*I}:Alt,3򺟖1Bqt!'#a9ŌWthZZ^Z&4*;] >Dv#gpU yPVaԷha<-8*&gJȄi#c?zϦHfo4G%ĐL6 Y9y~+?4S9~28oH%\VWm>[Ru!ph Y8-$@z@1C>.рie"6C!Q2'|YjP)tb°w;xkAfVw'(H,ԇǢMBqa˸A67MW⡣Vmpv*[B~{ )Q0mtST 8Vgsk%#s)_ӹVSʜc4=eZ\E\iK: "JC6RS5~|떜rzU,*i/~h+ ܈k1NCRPďhW` BSsI:;rҟal%ϕ`s;S\G* I$#yH=,,/e흄ޤ _ HYablsiABjﷇ JW85*eB Y23kYB挡Yk͉ʍ)]DOMp/{ &n4 IJ\Y6`o)/i} #$y"lp Ф D\Ljzf c`~'k<:)ؤ.R5Sd289uo>dLHuQ_®"t;ə[v`])KJMI  (d$*l[w^M,3+en.]?S3V PZ_7N-=WI#1WO΂cḏڂNMGo!e=wLM#zsn*~ S:?V5U:DH/ŭU*PI%J+N:^gN EJ/OIBu @#AQ0+EߴhCCKm7T`Y%Tf5ܫ >  ! bW8%nl۾4o|նƻ*UqF]畻c4bT*_(sq%Q4bos|8UQ׎\|7珇)`M&֖u6o}ӆG4M <'p,un;0.Ư~ϟ~ӿ!xitpa^M1DUƛ̠#3TSfWFQ8Sa\#a-%䦙B$@߸$漸1uJ,8GIln󅰌M$@wz,i|"mųih);V Gj̋0[&@oYb{x@}e.ϯHI}fkn}GSv-ug1Tu ߒ)8Вt:6/hBj+~.A,@@ISj|'-5qu|]6P v(x,e +W fRt67`&Y;zEXo)osrjd:?HMlalKM|Qd4#ݮ1 NO@7wL$i ՀwDǦ4֟Pn;jyٿ 19€ʆԛy39?2WI{p/L#\fIxi]iC3Bboʺ4^>ővHhՐB/ͳ0=9yR⸓ź6E_\)'Y ͯC7./;Kr5 0!v3+6w)(г:ҁdlUjYV^FV PX,D&Nxbiׇ=hhYWusD5Γ_ /NK$zR 3_79 f?X.EHQ6Xj&)yc,f8:3 ]6 -kW&LgOYFJG%G #=CXz\5چ4Eپh7D4E;``ג E˟|e*lk+ߖiB*w}#Og0 뙸CM}'_swrp:Z4axڬGAr"!~.K8r>-B-|TJx #ּwwϮgٷ]WnVG$r^uΫ,<[?!Á Ǹ,gQ Ö]LPFZ#ޓ{hӾۛFe =4"}g`dwOXFy^2rEUHw킢2~JzXS4] `hL I##Z!ڿ¹1/Ee_ݣ?a~bV|+UԾF ʥPdEfi5~/:6<5QjZ C"0&cE/v67$\dR6$z\)bu]ҏc$΁ֶdR#] Ӊ:V Dvhh+h (dp'!6Wȿ;B'}#Vgpc6q5sA;c:Gcjzdi:t/\˺Y[6}*k 5BaS 3KslS& nB)@%y?" *abvAWN~N*)';%?^A~1%G$.sܬ1qAQ'l{nwgAb'to=RE}D3lj.!]6l HWW<<'PܸIŕT [^Jh$p_73ѿD|oԇ=~F/7ߧ&@Oe`U.Eӓ9nyϲ s{["w_ $[ַfmݶ{O XU2̯?Fuet0Eᷩ4Ffhhv rhsrtK&&"%(OXWFREOrI= /%&8@?Pc@>ݒٹPnD.pˡy{=t(f"~%M9VoN* {b Bڌ *fgs (x\B91άLp\D}=QW9uX.*Y t9+9A+zGyaWs/i0, iѯC^Qt+1[4"}fcF w ho;ȝI0IxԌCeڼY>#m|V\%f1I T|iMw#=!22u@QpG &8qy{VϞ}G+}hMv49.EYJddsTilhqTҒK%,kjSqKv!Ǖ &$`EC$Eb8j5YͶҘU* ;\H"oc$Ff\UP VqU3mOF*0EW!taY sV:g])VQbY> yª++9ԈR6ӆĽKf6u.Qdlj*2Α m#|^4 XLRC~*ӗ_?bl؉0^W]g?Qfww3jx [|$; rٳts2a0ܔ8/~kĹH{_Vc%L.GXzB3hmX@))n2Rϫ-Â`dn9? 2KRakoi@2TfG֋{]x "&<"!W@H(蹋bS>M;Va<=e }Q4^+wGYBb/ܲ ){wؒJuoM^l?]>4LHӽѨח,%e4NrkB=*лmI/"."kv'ǔ>Chv= zl,*L۔ "%_)"3~guՈ~^xRd=)pdy\nw1罡JTeiŭKG6,|vvwLxl j6(3ѳΏVt(5@q(S9A92;^˕ٗXF#XنA;0UҼCxF^n_15៟;DYpA򇑸~j`23ɜُ|]wap=/d-C¿d@ws7>A-a[eu,p1wtfQ% \Oy;v܃B4TLo03lدs8 _8ڷylT}cgZx gzX.8Ȥ Rk_!-!@_#:K#Mv`0#6qs=f5j8s3f8Ƃ৐%L(QE._`ݽ-P5 h h&5ݑoG( -sOL%a0^`WV0 s.Ҁ oLvh*: 51k?^N'h--l<~:։au;"we,j(@J&@y:G>Kcޙˀf}<i8[VIS¡~Nmo]*4lj'YBΊM29.AN( z9+»%9enIdbP9 lJއ7."j,vjMggNhw'bPX qcnx__=0qx!DG1"|&,uNPJw eǀ}(wUN_{sT.<1'%- ;+ǨA'?# p.X=8lf@A1:''B6m/ܠP]1ӼކE%<]Yч%H{xGП߆;"q^UR@֮JoBUڼI:bzUqqѲC Jl K1lKKT2c)⎪;& 12W!O.oNvC#YuIk@DlSwH8yto "z=Bq7HUTVbpg~f,瞎0Λ&6g^ zptM8~ 3dK_=fa7X9(MIBQzK ZȎ! Li"8rĕPHW{!lÍ|sۭGx`LQ4j2ʃ԰Fr?d GG7 ~1p- IC\Х͸G}ڞ[ғ0 Ȩp} 8GVT2'C $I b;Dm[(i' g>l(H;ƒQp']YNK[FG/#?"<9YlKo*ؙ@n,\T[oko5^V`Qy^jQžnv[퐨3qjm#cdͭw2)5=bO9ޠXJÆ`hyک)%]}eڼ7\"t$`%H VV ˭Qka‹r{Ʒ X/'h H\ e׎[WyuPe(#h)Ox8:)жASSW.uڈn=0CTA+W۟G*ɂ8لHǼpKxvOw٧[eڋLE2gɏhEin_T~lnş3}:zx6D1 yАI]M 1lhtTxIVEҮ4֡MY,AW3çVRV1BYE0j:s1# !p KX._;r]o>1?Џj3 6غ^<_b7h 2ܙT1jyP"$dwwc =ղn3.$ÂgFL7S_ |Sj8{i==rtG4#S@@XCYUHqd0Aʑ?6=qr_z˒`.m-BHyBfǴ٬Kf6d7^a.;.ndBgYmN B^v+gM[q *}Jp@Y2KY&UmVГTs/)%Ln ]_lm>h v TxeӛeE;2bɘ\I+0s ;L1RGrBpu;3Kl5MUw^P@/Y~*>#Y a*?7d8ŭtƀGB+{)>ס\FkxjtE_b*bJMLcݪŦޥde e;+By@F16;-1 `־anUO$s̍g>+ ;]y^OW˜B w5ē}WpY*1B/&a{c T'EV1%oΗ9L #;AѨ t!S KSm5Q+B^Zrk>0uH&{-~ 9du!b͝+|ŠxX޽3딑!?6Dl;P^-,\ltX;be ^ĄRTm(&b^.ߓ5锡k?PVD)Vb,eDŽf+Fm3QI(H(D!:Ak)Y;c[NxcśS`jΓjT[K:Tls֍V4iI}1xÄTz[|~59Eמ+7QG?ѓ%؜ ujs}>%u 8ڊ Gh.\)6ֺ"C2/kl<9D)N*f vaLN0JV]w[mfU wgD@>|]žqd4羁Z(yi9 摎2eg)qo:-E2z MMwBaiY%ʽ`Z5"OiF lW͉N(y2RzM@P ۴3<.FݦD7T$U!6\>h/_0"4V8xs"EGoִWtf?B'0 ;',34Ұ,$kvkb@n[B;1?Z/ 6ogQCo!uZX{&!E/{dz;:3bŸSia=p*nRjxzv!`1P] up|IFIMn;ƞ ^yPtx^-o(k=owJ=iR|̃@PUJH2 <{9YD@ww_QYw)s̗ #K 1W%c xo}rR$QhXNTI۹$:NgÖϤ8v{NO֋}Cd ]zAQq8I4tAeгn\9oX!.Q]COj= 'ϕKjf#*Z;SP6{Mwgc&ަiv+S>d|X%q T(>` "FĒaAQ^B[_u.좠7d\w_k_z%<1nDDF27λ*Z/$=V 0(i:t?;}z[]Rr3]2aƑL#뚻SQ`(F}}(APQ- 1n^lI+Z{v=W[10,h;X]z*ǹf)?\6T#.S Q\O%'ŹE@W&pw* Ip3 4b2\rU xv (MA(#J w\DZ2 v1/Mt} ؏xa*+ˊoՄAFr0 ;vWz%Hf٪mra/҄C׏Avr&[ dhA\G:Mz}gE9Y14AeeߧtRO(V=\ޘ杗hӆI "}0!67 XLjs &MRJ\Y7]>,V 5y_~?*[im@څi]GICKu5e-"뼢qQ&QQ%PE@4,HHfU}K^= s*bz' )"bhT{IA_MC;5V!m1WLzATD0-l/% FB*{y0Ij>t Iɯ\>ԧ*fx 9YWYOZ[Z: -Ϸ‡յc7yyҍ{ R|&`ك uZ|XcNgIgBƭ vp)0#|%DNekq`iRЁ0~¿~Czid]ivm1AUDFe*eޣ}b=N>'ҞlTXqT*z' gWHb5X,_Md6c@;OBum?u8H J}Gbn7LQIsc\;ThX8 Nʉq`1֯rPa 挡d\|?lt fwK1kr} xsZdm͚^"/a7 ȳqA^H%HO[AYF]e^ ̲|iimZ⺺%.3ٯ\51={o>BZ<0n`C/_Mǝq\٧ .B!Zf.Vwye.:U*.3vO-yȁOM1F?ޝsl<(rHO-5g=ʪ 3 ֤kcE~SʮGRs'צs,AIV"3dj"u`r4v ZGhF^IF/A3t}gYnI-tr~C褘WVtZMd+]+``Ua=69dtR2fX |O=txw |݁x ]xO =uXc ( +N-ڪڍ!,,qPX"u~*>VqOeHp_$ GI8䜷fShRn,PI)-0 [Di:t(s3X5:˟kIBh3pfV:+5yw_L}#Vl̎Qt*G(KH@C'-.f75ĂQ8T RF%SM7 x&Ϫgbl5,nesI>lvۚ6q4#mDQ_5ww-J׳.e,L3 /l{WF84Z0L܄Ņ# %GU ^}yNοGqS_ Vǫ>lOf˺8[(Fđ|S%%xgFpޗ!v!%\e? Z?%hz}:W ?AݞT}ʉ|_ 퍒+jCNF,icwdw$Do@B$gb);z6`QA5O/S03+^'fY>)n R{{|%]tu]Ʀ{JjGZbXxQ0-  `p;G3鍊оK @gQ,΂e/&>~̙ 8|[`&\s^A^dY5>S_t?>O ';?f~N5E< ;YF1YUҗsP ЭnYL!]L졨`E*aԺ9^?! OUE2n;waj(wKȹ&P@;sSjtJc[= X"k^L0&0:ut**MMKaP@PI=Rxњ I@]/xw~|!0Gxg}DQ8$0JxzsYüC(z.]*!eZ7 m#}i>W5W<bt3Mۻ}-1ϬUr7Juj ?n~؇NM[RwQI7$Fa:%nmR߫]:T)Dh7Bz vc}}ijOҿU'S8rQ c©]XD e+6KAla ,>G> >eD/+n%h諸z뗗G+Vr8jVw1t ){iŜyye(M #9>}k( !% *e(@HAp|w/V ' 9`iH23]Ã>_u #{=gCDlW('jK'a-KvBcR\)R™'9IY4y1( N7jP;ER?Rb]8NT\]a7Qjkz\mG낃D8l+V} ߽e,T 5pߪ:{l%uKd] [vSC*ԫ9{ sI.?i6;f'#C-X|IRx }T-8o#=wӘQC1ܽ&3~ (w2^Y5 ==OCk7"܋j1KF`ǟޙ3,׌R-Nӕltln/5v;˛+/3أ9BQo[IdGxE $1ȣlDcnHխƞj1G Xjv=]7f$}ஂS~-4F@px7OnÍ"QDv{Qwr hZs!;zRK{?6B❖MZ և >g80oK%1[R) hRmi7!V 8b4.KkK)_6K+\iFѳ?>9q mC}Ҫ\OƝ#aW]:C9tdDؑ"ZD٤B&tUߌŚHA%ap,:!+3H)XFᘐ`ERl#C~]p!ǢI N_Q*...nvұ+|xN[ƈU%n*&bNadzf4ml|ꤡ~^q)ŕ:9xJ0hĤ→vtMlk܄.s3}+EnIѡnݮHQx)}5p7vDLb^^E{ChDh*QC]&zB`Xjm9*Ĩf( sd'Fu~m)?"To!b3 Fd}!y..ĮﲃfS),YGhQֽd&y֚XO<g欚I$8zU";IZ#{pDhKD%_k@j 0t'zMdi:w՗X)`#9nkW`1l3Dk_UR m=XI ԙM6HSx*ӜQb&MBr_]ʣ|o2M s_2q? zψl?B7M=h%̼u`-*r sMb$'F.a$&tIyWCă/Ym`wЎWU neb]JYxF,-BQF#!~L &Kg-ܳȞhD<ŸFT?pм|TQf-:ȸ:l~R dofp &y@R" _[T"jwZHc{8aŌKwql|x:x_ְ,7aJ&*9~Ie fH&ErUnZAsQ_ysc1SjҡYh*M"?\,Ѝ93*na;,H/)me35*?⺾%ۼ]'a)oNqp=W ʥQѡC=喀dڱz][%s juP hɹ#,/0وXY4X1W$]+ + vv>( !gK:F їQ&?C ^pH.GE~ܐ<|accdPg N~e29_ ^۾{7Pumm= @@ɚCpc*Ȃ" b,&hP?_cc!C& a#믊P&&}٥a q0怇bܶQMJY->BշeNT7{RNoB~L @v\WJ7wUQg!7K@ WIrMlHf .3v:N s6U+S|h-Ïs0C>;߿Ymӆ2E'ylz;DgF& 6RmbnmhJ4(nzgSIWkzPg),o _ͲC:^[hq fO@qsxoŤ@;x"NR>WH ١1Vnu{sN28Md4^\(f'}V)ȵ.C(YyP[u#- mpM Ŵߛѽ Q~ JqZO/EBZxdt#:_I!Ű-{SS$ycϟPMJ ; rtT H9PvGêC(مAN[l.(Lrd+D|4R'-JC+;vHq~!jEtw"8=3dVDwBmߦE~M[#i4%y|fvAyp'~hg5 4ZZaՍ.S#rbަ6y*I2[F; :.)g'Ok0JgשW!%cb".a-@ 1j*z-Odb1ZQQC"1$8}01)~{t| eUP !|ibV&fH| k_vO~<$AQEԎφ5Wp,n˅<"ZL tJAy]innCa-İ7x" JU@3WD%RjPΘh z Pu `/3_jPR T`B%~Uê6DcvnR}QjF6*dl4AB#v4U &3Yg$g:|e)/A{xK֤֕)_(*7eSH F'.YN1Go<çRbNcک-2MAnSnbzt7{'K5Grq˿-~ >ZP rNYnPϫ@9F-7΁ލi~w$eoF=->/4=S PU`s=bR1JLwS'm$7i2@ʱhd}I͕$٧2Y!Ң/mfbҠN{]XAI}yF8vQ@W]1gXױrߖ@.RByhg.ORu3jJ:1&iwR0iHl5QyG#5ŭ}`QCkӤ1'hLR q`'nv5zP_sT@noΉ\@%Yl^}aO=?6S؃TBmd 7:۶ APy׮Zwр3 K+"O,iNQL &yQ8NIctT QoXV5ifVldrӑgu`8_ǠÍܩ-W Vq csJv1G:9 =!JVXO&ꖤp Go\!Zb7 n|iBRоS6*^j]a^#kacr N4gE~7yl3(tQԶq^6 W+ň>{(5[9j!ƀK~ T#l>ʖuR^!o&Uwllr}U =Ƒϖ(6+HFP*_j4 WLw(E x F_Mr-ɗq*(MZQ!~\vPPbB탋I[ςvB]g "4|źpMf/|m3Aa@tAn*@⚲I獧GSZkM>W?Jm2=cᴫ3<+aW$}~Vϯ.5Ň yv4H!2L,CϜecTxK|cw򄈃V7% *4ĹFS2WVFk5݂f^Z_ #[2! .2X'CIbT戥Uj~5s% vhak4Y8`?=4Ȍy d.kl&dv?~C)9tٷ ooTu#agJRe6Tq1Nh{} @nr(Y@0d$u.?Ivyj$/V&-ay_$dg7;QX,Z'^P6dz$Q3)%^y\+DNP1l6A-M8dzvo6rCnuoӁ(u\<Q5Fdz2@ʨGrjojoDJ|QLjUNZry!uD1 -~Z2r :g4.=șH8Hc"n<7i3&ڲFhg٦<ޥĔn?&r+/Aj3U#5>a #CdT>x絻5R |ן ibӬHQP.K?>eX+ë)5RPѐӄk 43tf*) j2Tb_o&CHCk_eP̨$0oNckjf?+cc])Ǣ :DB\0ōBcYYe@;g2?F9Aq"IlF,6P:Bz, e5O/0fh]Yt% Y9,BYXW5hls>28Gi)Јk]Y3<(cG"!z [ BcK( Q:P0ލS{Fh@'_4I-fV8xӼ!hIV;yV BLCֳ{:t㽺-6/+ZCbU.'=`t]sJ8Yv HV1 F6.(uf`݂".}7a9T;dѭX΍aKQjıߩjgLRg:{|dzWl@f:"}@)^j?p4՞:z~5;JK zbSr*5W[&6.48AjN|*:UU[9bpփ LrٚzN`?ap([SD>e.?^RͨfTg Ezg(G.#d;ФZz GGT9ttBM+m`(Y,mVS2F3:"2F#D* k3gNqaڄj.c9Gm%y7@ZxN}[r혆NX's֎)i2Ū^`SsШL^y/%mL+BuVB J-b>NiǶOYA }T4]V*q+o`rDL з^YblﭗR[ y8 -kx 4i.Hvt߉#cH|r5Fg^l_zs8ۖc\g]L5INuƑҹ3M{x"'iOWhE>FzV^#gF[?b@抏Oe*C9;FM8PJEFmlF~링mvL窆}_*)ʂY#R%LjfMz O$%c' jPe/hj9Ƈ䡝,E5P7734zCn3}Y>ѡZoZ g+i[ e(wJn{{=k k>ӄJȴrHsקpx}B+'H L f!1ng,Zj@UvtЌN: ϲUk(]-EWx>Yu@\V4Am5J4OVx;_I<k<$<75Gkѱue6+p_46b]al`wYZ<0R)ZѪ4Ufa'EMq0Bk62|=v4<k:!Azq$ AOBl^=$nsG^DU4PxD*<@ Uvji&J>aPw##λ`NfL11 ZDe"Q]5y})O -(;Ѝ#`\ ?!LdH#3*FUoljITz ffdMe.HH~T,$/жņRk@Uy.~11OH˻W3QF0W F2MȐ`7@vWӃ)^W:r~µgpMbu.[U%TL1|_6b%d Ůnݔ UGaٚ1[vum͹]͖hwnڿW;?s|-oz]Rm2Sr48;SʸhkxRLsb"/D w'i #4JjV֦ B,OJP`vK7sDcs; em`%ކt8PG)|>Jr,]jA0EEϸRŃo^AߎI{Xh#+_5 PD̍.ג"a'}\ { ۪J͠S<˻k7dJSi*)}ꮬ3Dꤳ?_/l~I؝bA0k?5p/9EV1*͓TG4c_CO5|ӟE ޠܤ78d:Cto@SACwj:w@F9\ݎɈ%26xr>dhq83?e5pNMJ*?i&3WqU\/Y|k,\i V.;+jq6ԎD+tۛ!V1Ne߃h‚P3[gvsKɦyK9fHnڸX0KGAx&mN@zLdaG)bE㭗OpM@ruT9tq [uX( Ի̅kB)A+L] w=]Ly2[wu_>6qdU݃` lE _yCP4X?ƒ&{nU+NLAX'D$ <ŌFO_ 2Ml,4CdcZI֟j;niiY I<ט'x{D4#-75UhW݁]8J*`sLM]ӆLUW>Y#vlg U~#'[atNhZOl@2x{{w7Q+ZAf)֩v\ؚsWZh6 ]!x΁-)=z9R#H>G.=5K_FrQj.26tdÐ?92iSƗyhrLOY WϺL3<q0#-D*ڳVsR(]6\oS zUFXʓ bL#4^wA@S?QTؚ>ʔkQN;BZ|$\&vq fGEQZ)BIJV`2hPHYMzgoq5a!;9nգ0>d1~!4q_jyr+2p]]bJKRFz; idhL:Hjdo.sVvyЄծ*DZTl`U׶(:-A"U4 {&Qr%+2W:l8-8*YyO=]ʄՄwD! {QLz^Q%Ν"!#H@A/n-VRȄ=K&4,:Tv1rS0 =1752h\(d+90EO;/u,҉ |',$~XJ!kkѬ*D\#ҀT%5ꇕVcv2mK"uȄv*i:W ߳oU1s+Sa?Byפ롱)@H+b SW{рqw!ZaXmNV2;p򧗟:ۨo/_BnyWq5WtX.ܨsywꊔ\ڊcoabkZRmoZ :b:`FzͣH36fz{%@BJxMn G_X+gz-&0#o[aW~K ꣰b59u_GXkͷtѶfuvΚYTEIzY3!Uy4r)m]Ӯܳ Qxo׹(Z37È~ei6cO!x?dtD_<S\$d'P=qV:+[>- `H.L82drӈՎqĩ)%%A iQs:AaxARl{WQg>whScWO:AjܤC%2 )L[G!F%s~o,xlv@X8 ~Yן1Ln>"_hbO63昚ر~r8]rv[mI:>J@ͫBώMTdU{3ncW"G[ hL1=,iAFq>M=gY"xeX%Ҙ!z_k?jqC(<霋Z:^fLWmGVT'ƒš ;^ޠ M.$o {hDuNoNnN!Su' +6C7A?E KF84Fqu7y/2gs'jPxMΧڮjNf=p|<*x_cbā陬];Ṓ@ 3FȹH||;_F5;y \mԇ5lE|J!m60G$Yz}\zG4$0[9/pydvPj 'UKY+zc|)Nv6M$[IT@׮L @Lݮޙ"+OpCBo!Fl11E+v U~UN5MZ¶%c8O;.E8>'&VE.>z~P’| ܅ۧ4IiXT(5c&$ % ɡ[yg)k@{Yb*! MȅɣED7DAgz6'ȸ&LھMw ,6?5HoR![ "S ͎g\)X̷5=x}Ť|2h/]_4`tUOozG'E&ՀHcpz>4mJpEIƟNפ4ӂil`mn?VvM[K28RQy0p^_ u~kؕSn<_c++\:DӉẄd~$KZKXu}FS , y0ت\~ٱn/'ui ˆ꼋SZQ~;LQ}y^vIJ;Sq{ꚮv8n>j'_nځW|Xd# }sTkRum^v#x I!ٌȬø_V*t>u%\U^ BrX$:ڛxdQ?@)7Վj\hkg45eiSN:>[zҖw(LQy/ :75\M'{Hh/L 30mƎZTך=ށNi@\az-ɮ 6`ns ';cb=ۼfnht&[Ūe Yx\UY[ᯏC"EրЁAdiORz;Ze-`E ICkir=Rl Ʈ o[SN,I'Q합B(\؎sN0.cڙҨ bBݾr˙rB7SVٗI27:{7n= 2=VyZ˹SK ت\G3CFI] #g龓pBtD-/jA.bU~G0]Z]G`ZhߧˤHFۥWC|4$]L0s/&FyO9KY|?Vc!gV8z1}ho=/VAP(DBCjAڴ:Y#T*oJvפ_ Ʒ ؑU!nSLi4>)Ec*YzT/t[X?hB3̣\XMol~4@t@INo> 5Aߠ^9]`M:qq 3!YEb6_{h [ z̢E٨h֓&0bccT'{ӯ.wf/<#FH35=y|Qz^ghvcBDKUaM<% J]c#*L$mמ=}?(=)4y@Y&]԰yCv4MҠAP\vƵg)FNuZjHBɛƟ[{fI/JzrZE=2HT[&n aN1{IKyb^s}+%S I~hLA~MK8ݜF 1Juv+f'v&=S ģIce[ŀ'jv5)/u-0u nA+jƉ-ӗV:.7~ׇPJi)Rcdyȱ,KȰ_B3(v+ln>#2Y-iۚe5#(  4M8Gd> 8 R-)y}TcV8am5:rpTچ{Sٴ,,|d* k|Wi~8P.[diϮgiL s `QV_=>(g*@DcYH!4|%kSnԨeN& ]dƈ/QBH} I(7,o_HGk p&p#yꤱZ?׈,ܯavߓW g>ߥ r@dXNYR| jiMQowv.k˫/ɉ ZaL_/ dŒ>2_.pi "m ێWr@jR$dk_½?UZ4u}붔nŪ) _dka_Ne. SsPHRWL1đ P#C ~sg4✲qǂ=V[qD%9۲\i(qXL,=K1H?0y(,)0RH4ˤ5xIn=]uz-ؾd ;z 3 ,&_P%MGle]_)-Y/-6gO==԰z@GصUK"ʢԙ~la.I՟w8W[H%p_qQ 3`䮆ԒZ#BRǖ*xQzWbv/TПʲtaj/RMlwSȴQRW8@a~PC剹6\F\CλTۛqz1M=ʯ҂}E}]&?JU1%*] 5A5? Xװ[)OZ:o`jaJFVްb쥷og1!*L G̶sxhvQDŽ%NBfH\۱;OUFL2v=@ַU;;whN~ce3wNQ$ ΢tHe͠T=A} hfȜhۇvUMB (+^rl|!V3zH<U7fN58T4w_t%5Hj Rӂ?Њݢ)L #DnԧN/Rqդ%VlSiS!1*?z~amqsޑL wW_CvZunB`)ɓ )6_DF|`0iK݈վ~-(;oe8xA*UL^LmQ'UEkX{(|li7V ?8'yz8z ;[o$FSˠ9R-VGe:BldOW#g&A[c2"&rzF\kv"I;FxE7Z : 5  d=~@Fciq_OӰ m. CH(SHt!Bg^x{o7fr7X~=^A5;(S?V`6>2Z" LҳLůAO =B|;~aޕeZB/AdĽj8`۳S>lH4Zjg<y`MJէ,Qm 4pmi_[R򔲷 {N0GN ^_rvxم{iW~(ھ+=5u>8g10 $l*o rLjsB2r7dE9K3CPyQE$sT<95TrLb2Om'{P^Uve͎:iqg0|ׄZ!Fi "cE]Դ2Rhg1nS["6XJ5G ~J){h H.Kj?pK*0|"-xezs^CYg[BŦ2N-g%j d D oƤ*HL.%Y8J*(ss0d;rљ/q't;>,SaJ;rUP ]/vlNi9Fk{~=I Ǒb{R_"QhsJIH|XRBR KهY =vukez7g G`TC*ms;Gݾ8j8J)x&\إ?yj%'Dh@ٓ|&!Huas.f=x.#TF n2(A|)2`yO” gjI?^zQ1ԅ[A^ E{:oV<s^rI->QBؼolCw*2evmv(@kd %=AaČIv/Ua"y0KW'tju6>kET74~ej,=nL:HX3 Ŵfوf9p7&.F/aD <IǾ'Po0TWqP֘h" `2n@. "=U ?'UB„Y#u(xFcu tNW`EW]IlT?"ݙdC, Hxl6fXQa|p:Q7g?('QmX^9{=@mb07r2-6Syk׋(e=xD=6l/HT]i T&qd*ɖlSSғGDnm|8?:NH3Wҡsdbs1X@E`}3C^ @g!hQX3y,z.ۼsU~_Mܓzb`R0/PA.i‘WC%fż5m,%Bl-@zpDRM= JҞV@8SQ`QqPZ,lbkGd_ڐ ,D PFh䍹3{\;Sn4 -")m⭯ a8@=0FkuFvY_{?֪?AR08ENn5Qt '>ϫC>!ṯe᜼kgB:h3-t\MeYUaBŨ:Itf>5s/$з1YK=) [fMԢA`uſ嘛$Ff[{Wq&5_}Bzj܇b{؃y%-{-{YiZBɪշtr1K|t~Rk&Wkhъ?-_M{]#05J(K+,*#23x0KCcp%s1\`=;;ѽ+߫Dvg8 F))h~Q ~>Vd#o>RVw)믡n?^-KT@1}Ҩcq`,ZP`:˒iӨMßg@Wª f#^q@njs޿:Ay6F/x3)VGKʈ& }6N- ^ 5+]mUݬNś#ޓ2 ~x,ʆӈh6/ F' Ԉ0yXlY,\(Za_)ķUmƼC%wifcjC_{u"-xz`*1}(fTj^P?Fn{AFZENzi*t\9{(lBtkl7/UtS(l_1m;ĹK>o+Y'5+-ǃܢ7^k.\967U&-#A.n^$ w| D\ӧj5YCoᇖQQ&%4ւC{][]B%" O8-y`9ǘy~9zsE2oU) SA=}9\ `e-L=+hgs=Lhu ;VzL1 /KwwmP/&}1%~;s5x™Ɉs%|בodm4ВM* >ؕ.KL5> ZqB(IƤF߁4T0n|xKv8UvqDpBWԣ;zLT0ȧfyrTշg/b79VHB8%)A霩nW jv ȷ=R^WLVVӜ'izZ"$@_q;RaN~<))g$tSjtEȂ&"Kj0VI&˞x+{F2 "wK#~~ (C! v~9MqpZm@$aCEQulFˠȱ-@8pI].MVdܫXǾ=ډ'7|Ʃf?*ӊH +*xNx 6q~y?Ψ1!!aXswS9ҎV y%Ӷ.8a[FmpP6Z6*GYٲ1%ɦ S%Qȅ 6Hkn]SeYmEΰ֕ic[FMJvx+{Gz}~W K;,0Y޹*vkޭjWK~Յ H8ة^*US9D/zT#L i\ELګdދ}iUu 1=jF&4kk#סui k$6 KkG[m36r{_er~/6N,͗dK)e e-ws#̃Ͻrn"WXM?TQ"I*l5IʳGkTi:V%k$_o#z4xAwa݊̓@qBUPO"S͟ZN8v+8U<KEvv2Y6 P΂<(_r(1rL8ޮh$lWʯ͡6!^;?x@V"߹)s?hX4!dxK6عJoCO`!VGs֑ '׋uBݻ겻wy͖~Ae@%+_yb^&'ojam:㑘w'DzkmS$ !xIF !FEkdZՎZ K#5on `αQ6EM^\X~n>sn~^q;i4b*}c>),0|",/ym89 J 愐Vr'h$]zzc CQaGol$~Da%rs[փBa?<")D;j6c}SzQG# '$!7 :{ysYaM׳DqI Í@F7N->F\*f`v㛳π`mj;g>2vmv8ѹ"Um^ф mmg*)&vMF>|GbR CcY BG?s#3hZ ꐽ8G^݇}qh`OZLNHæԄc.'RìBz-=IΌ~9ȥߪI~<Pj_E# {1& &eKiY4GQ쵯0UǥNfKH$ Iz8\t%]얞3wXb6@w1d=B_H$2~M?u}|;y=jVZ^SZc[p;@XfOo{-*^[@hhJ*qh]k ~_>O4t*Iӣk D8DL`b^2R+eqR*K\mN'u0VW֏MT/K)/ל6]x8ttCdmȁa4>a "G M ;6UmfqaŖ印4C&y6I)5t3H|`0wC ذfaKդa(- Wd)ͪs\~9b\KSJxZOB\%̺JEl|?n;,Hf_rSd8󟀯4CT+.ql:yբFO}65\I@}Qwf6BCT݅ Z &WjƜ X=Uš7M0?T(t2ԩ܎lNZp4?_.Rf MO9fRtqe$3u12(3Am}1x?]Y֋;UjVJ4V##{b>zݝs4mOn3\;cq  B,BIǛIJ(ݭ52>,e✯XEkƅiVY>7ƹE:$X{<[fwp$&\^x/&+kTp]eO.]8o? ꕾ@2{r/=VqyggbWF8m']7k[cLͨKȼmId<Ȅwn dSQSb*T|1 sp? ȳͱבG_'Wx zJ m7jS9Ts(`-6:=ӅtUˏ#C5̪:N؀i޹H3Y>(l|rm@:b>&g aB,e:Gz 4X=ʇ8"g aھb][`$ >^eB \~gc"i 2S"KYV #L3|&5mJOgUR;sߙڧq+:ĸ/[ވ#?,;PLƹ}U i)A3vјgNY) v7`9Ke$p"jq ><cI1R$o_L^23}į wǕDŽ$.W3 u倎x{T@8dy o# m4'pVTjIZ :@VEE6P_QW(#TMpj2%0A#; b٨ma=B|j6x/(@.zwEiI ƿDOA6a*oLӟ\j";|u|ֶp^ZQv8t»=Q?D& eU7ZY\(/$-ṱcEBs̳^>ࠄ'~1? i˜j֧_O/AUb!nC^%)YUΒ4?ܡ+e{5ep-l{h;oGx Y|.ƫzFմ.Mp'՜ -_tw"'[M?oCsߩAT.~l&z!I$S8o',RH: 'F?1e<G0V38ɉ\;ۖܜ3H2R@HiwJ]Sۖuk0Jt̛i;\Ȃeiehh{,8^yA JT6}Rͨđe~P]ʂdq(ffX)2GP }Q1nɝP%<%YiڣON|{ Gre X~` huwő ~O.(k48s ..kJ#?9 ]e/dHa?,oӧF6uf˦6n9XWP MMXN +Խ }i](0n/V--Tu0S{Aw˭?Z|r&/ӛgAFjH4a'^^` (I&7xd!;p$.Z~AxPo|Ts?|R & K`tg jGۛI"481}?zW,t`Sڥ{fz%9%X۱Z戡/,WJ R/.DZIŜFKCr8yjI= P9}y쵢)Jj2y BDۿsHSmôa27̺7iCcL"6.ęsmH*6j _ MCS?4BSn)GPbu8}stP^"!&4O.c2(c؛0>wkwSۏh %cN3t08E ;?0Q֖ddّ9L 25 mJJS"eE≒׵F-^Fz=!?wj0<^op3]TVmS7RSmA%w;.0x4|Lӿ\lkZ\HH54/\`Z MF jLv2$i3k!/Fѡ LTawf#sسD!s¨e끼y7L4ЌשM+>͌DMy9k]a p7OTab#W9(KFҕ^v !#1ۃi_;77E41PRRѩ^cf"EN4J+:M֮rc]샑6ix豼8.kJSA\ ԋIʫ=HDA}#223ۘ~LijVk*niϩT v?6XQs:rhbvеB|wdq<:DD~f]D!4]M+ JM y%6FgM͐:Eyrpu4r8HP)"kjB{5Qh$Pn /x-#C @ fO75ɎG&HGZ{+' lcR\V6WGD|溈6B!~qSK˃=9)  ]KR؃EW8owuT[5oUWRyݏ?%dr](mOI3eϙjYh77wZzPP#5{'0MZؾ=Z!;q4H; 6[q@](9Ӵ@4Ǟt[VG,EꓼQ!\{L*hެu-J]T!Æn#l7G krW^h=^;@-۴_(hY o{A"VYR-e7WO :h:=/8Pienݺv1lJX"d4 }V n y˼f(ꟍzp* :'Bl^Dezq󕘢m4n P9a:vݷ$N:+r ARoīQ*]yE>'k^MWĽǭ>sQKT)OhΎTl/GmHOKL` ҍ[" рDA-J Je *֥닎WYxӀjٿGUG-_jxF k9I8í.Vd)"0nH𥠂WOgє G1y瓔 $\FOOť>VHo ."G|9M~ѵn-79*nqUKB)JVMm^!S?5ڕD<}4 ,>o3gPErBa,n TC(D֤vl4k2⸚xo0lcj7$- wkhb5?YRs@ d56$[IӔ~5Vpp6c h@~듍Yn*9IXN(1v%]:m>iOp+R ]^7۴u ܡR 7Jx=UԸ'1dP^R9lJ賧.}cvUNùWokR"*mvM<旅T ;!Uh {X qV;4XbLyE8A`bn/+AѼ؜-=T(|π<޹B7.~6mJB7pm=MrKeN$vcr5՛n'~ulM2~A2v >v)2CLðhz\-/ vJ H.FOPDZj&M712٭5 sBŃ$s(S !cd f:n:ָe]_7-V c ` H63j9SuYelVy{}r֔2#;GɻZO\nzzP)/+ R8Su(ي "_M3VHLAR 6e-Kkߎ5 %8Y TRu]%) ۯ?NL-lhnM!ruV=0"%^M"a!{Oaƥ%gi+/M&j]\< 5dE3Olḃ%w[HT2È4 /M^ &eiQ[I' 3$x5u\.[PƠK>7Paő;2ZF[ݭW`1C_T-O w^g.G3x+hJe'Y+dH" | [# tԜDS%AڊTd>_VK|~^h9_wL#;1(W@VBd/v'#!A]E 8`%`>}/u |dw>%ZG~ƈPMja'o~7XNjQk<+7o}v<Q:#̒pIQjbТYl cEC]VLjZ'p2Y[><"Mhfڄ^SVHsb^ +D\QX@cȉCj↫ƊJbm8KK@Uk +e>[q+=S!d0 %(۫-͖Iq3cӾ1%MyF)PK *?43)]BaFA4|RNYT'^nad_+DqDqɁ\hPQUDq! >ESN'[Ru%hmO@h/LkP?\|r$qF#WD _zalG̰hD/ބDw5iʕc`(9 ~O6{CSyzak87DG=j,n㜸]D_BWK:M+FE`:i(vv $B9)uw@n|:G IQzY?)mHqrLЭRP67fI܆\g~:|j:'rh ɾDG @jcN4Gϝ[//,A_ rAʜrlf'!m?jI Bbgg[zP`}c7\#ETARߑJfTe'WEew;-_S +#V{: _ķ2ӳo -g0a=Ɠ@,x8Y/Ba4Mx @\ jl㵙tv[ ;ᄁS unsDøMКHJ9B _"EE;o#5W~OvJn+*hv"ie)Ek@@D1~zoVƍ5j4P3F4X E%SZt$JfFHb`TdC7 2F(]9aP(۱Ex ZRcdu3u':C59Hf;~;.B2wh{^>RO3n8ɾΈ͌?5];oD|6/6ތk/[ZJR0k_.jbYƝVE!xuAf9G]d5Jv<'Zd*I+fQ#wfW -BqOۨS8a1w}fγbfxD~]I,/`"b,VL'΁a=M0:oJosn3N>@Q5`›DwrLj$@59HCE_6cN  ӫZWVX:A3DG4r?,/d=|H* n5eUV9#ersAMf$ȦH'{J)%POJ.,^EVn EL3^EE+T=a&?I6 A9K]+f\K2}uZ)<aJz<C$O }D1i({ ":.젬~WaK;ؖ jb{^CV:--AI,hJ">xvQϘ 9Cw `FK;kqN<^ľm Zg pEg7jU=ocT@6p뼃7FHѯ ,'FƊAr64=O;\$9()>f:N Z(IX_U[R:H Yi症eTLo>i/]Mשf_ , BŅjR[#({ӌvE&lj@ /a]'@TXHdpu._,s.T`md6 &ZډU\W^Bnsć_C3 hK\J.ⶒ2n0t7XQyM0aTl 5ƱpɂJu#YFz}ǖr0 b2'AYKDi>7f0OB(8AkCpkw 㧁MiL#v#ry󴉭ַeӆA6dj>q֤K@Uфϴ6HP؊|U0:&JZiL [gI8vՇ}%>vQ-SBrg}&4!9nmr`%g#V_\eI nyrёnX&$An+JEiaBc`RትƸ$ '>}]n`sĵ,U\5$Tzc$+a~!ga5fƱ5c=C')!غj2i[١NWR%8$Kb!f2߮2Nl8k\j G %GFm9}>5?%ˆ-ew6Nh=VA{Zt@b4&1dx .eOȤ;W}tw7Α@\.mFo7 $ =톓U<^׀mסΧoe=V0e4r'0!g:݅iHX2jǃMT W30(ЛJ"AWKRlY﹋sJji-NUO~2720et> Y@lC/Z~} [˹.yjף =;]ޅ  aCn#N&ݳʺM_p`V@/Tqݚ<9~3]xM4lO}nUU\FYwU)Ɓa_gmC R"x1̀Aqܤ{%(b7fՁ|x/%+-н=HT(%*2}cA2M-zVb9GABŵh%kÚ4-9Y8c?k3 3gRRĐ xNGp =FrX$-ZfQ-9-N}[%cO9?G."l UAE\ij.W{[YTJ= :-DR$  l&2lV~@Iޣܕ8}K sG[~йG(TLJo )-:2G4X~X9ζv݊>%bjsY6c*ob(O:Df?Vܮ43]PwiNHb'uRg"|&332 ]>]'YLJ\H kT 1(&+&GԬ AOE`^IAUnP'ACq|h;{}#42n58/#`8e9Ԏ(29>ϩɛUJtGQ}j܏ͣ=Z^VDR t+5\b+=xOq ]?D.3 B32\.,Y#dt5ME \9W}%S+5,m{G\He@H׸_ \,<Q-ݚkXkbÓMR/-YCذY9C[|E4)o5Iqf ^=$f}88I/$.C((m88Sn 'A)mA#3x823m7c.{~DG9MF `#}:m˞iPE.h=}Qz3N-bJNOT) w3GζhiUNz6{++q͍Ff{L%uw~c4xpdD4v͗=zۉ"B$*@U۩" <!MQ_Ղs:{`SQ*:|ض6yYN%jbMճZi-ŪKNGc GyY[A UnL8t7x[ðTr0:siÛ0QY6rpG(p .z;X[C/OX\~)夏vj^*MwOJFxsI?8jgó+WGaQ=,~O řJK"u(AӁLU&SŪ0ϐbxB]ʹ?_:FyetGZC6n:l~z&E<-Bi뵐̉fAREU\R5:>SKMը=aT]{W2e,iޣS1S#uIҚb lINmUrcn6 >Dbb Sb߀(GstdQZ`"ԏ0"Ya>.p^Eա{^emFn;èp/ s=4_ʝx,&ml[0[ΜP:H+Ipz9㏶ l9{~cA3]Ty7X] v7'&iϥ8fK@?gU@ACo[H!ϧfּч~Ût2oyZ ^ON(WW%t 4Ũ*ByO["W$0Ց6M^jW8$*3oG&(nLȩ$+Zr96`sySMOӾ/iY I}?ͭ'R՜)R9E sm,5~b׿תeCS/W;xqa@1!xeV+cm"ax?}lO4H#sx?c4O)Ev~#_D JCu]Qcڗ BIux-q:xRkXn=C<ϱU*;Yq3FƿO)A6N"-n&0~âw,0h4N{I!=ӮbAݐHB5X+^̦‚V3.$PtMG1Ul&W!)kB2)8*D9:(θp48ߓf.c~"L. GOQJY3oRk܎|'E6 hw5.x!^PQX0RI1PjDY߀)4G>yY]x:bk&ڸϙɵY/i8 d6n1^0Rp&,A_nus]AR<).L..["u ΚMiXDU< !Heƫ?Ы6o?oH]0"ƌഭQ>vܨ\AGTPM)@0$~ͺ3}:1)_SDXalp[3M@Jܻ W^C4\8ꃓ`':󳨸S?CT dvvgK$g~oO!?+J.;ʅqж>yOPiYݣ^@п+rf&oc}ݣdJ:jfLb"wePwC0Lt> B7xzOwM70ݭ\ŁXRϳk,1`4dZPbukI~ \ ,8Dᥗϒ+ˢVOX<벲ћw.zfMFl?q,Gf9QB-%(Dmu~xŢbpF+k<77+YďH4o-ݹMgFi[G *ZZBP)EYT g9|2y`]c(#tGjSFT|lJg],gzfKYۣX*F0] _D߽䴱(GNKPTS?o%o4{6~tfu{8-0JKG 9x9m?"VXybcU`SƖͼ1 ]{\ĊN&Hb ơ,zM4VwDKU,t@쐅!,Cְ`[SNnl\ 9%(jrq8ZsKnj8O!^F#y?v#)b,!mYyŁvrBE=lls L yhg^zOVFCA)ﶏPuV&6±҄g@L@KE_V!֋\^|>4?` $ 64\c笨^]"/~@Ȟ۫=7_[MA)zR˫[_(-8񹄗#ኂ>!秮7iTk>&GyWOEt F&cv_Nx; ['Ne?0bCo'>o2<e!>9K MMafԇS^1w'x\fkUs0Zs2F&+F 0C4.<^wղ%`p9lIۨ2TAe څԲ7Xo#r},Fc37os[O(F}R8%! UYɮ{ǭO&(P|D&1QYaG4 IT iDԗ֘%sdzy '9[|%kr]3CV{N<+Efz1&~xAm#9iw5@Hp/>;C RӰ ~EV$VsK-I\\xMy>^Pdb,VWjOï>@i9sW9>Y P7ԨƳr_w`Xqvz_d8/Muvc*DH19zMgm^QNGH4;z'$JYc^1_ӷ)ė)Ncw oQqVC1`e%փ&9h'ndCzH*z;ҞhW#RLF>b08^>_P(*t1 I4ǔ&tCsO׌ș 9P$:tuҍ]?ܱ' . U}pL(3PzxWM^a?5܀SҙojcGV4λ>@YI%RuEŸ#FWEK7m'0b"h+C&WUOºIC x^<A Xsb^ےRDFs?gHJ~{fzb@)Ԯh5]tl?lL|M_ap锬m?'OD\19a `[(\ޱRW9Y3@H yk*QyFt5)a\V:WCy0:=KozR[Cu(5L0KKL:3،\%#Cu\1 ~l"œ)发Z!]p5 ,8xWfz=oﮣE#/:}Ч68o8Q*'j=2\ᅃ[BީFs4rZQH8 Ϧ]5%Dm_\(z~CvąYgE.Өx'.6yw]_<^Xמ=bO=iRԵE]1v5jUgGvT#v(D~8 w B3f ;ƳYe}bq1rҚTgxYh~[0A˔$AGWM`NNKM-vxbp4=e1#|}tjt s^ Ugx 2CW^+6g!wm,c3ңN݄nCly0$B}fmDĨ!U3!wFyW@&~hhz0gJgêQHWZJ:@.1C22Q~ 6*y\Ѣ^V҇ "f;(}Y2}q'lÅK\-]ՔGǟC(&9 @NjFQsҢsAPuQA1eIZRҏ: }~)<@qUҪ'\=hP[goԼ p}0:GD{.|',<5/98J@y[Sz< du7g2,QNbW岖a70vڤc_\TG‘q^eݣ- oqzPLۤ$ "h"]F{l23r 엲@t:X1=\֮F"5,OrΣF`4S^iA7 퉐䝵%͠e X~S<ψX{.0,r] p`@}Wz3C]{eK+)IuD%Ҿ e; DN=VЭ,9wrsќڟXL%bxI-’za>곂=o$ɿED=073⽑& t8L/"9_ ʲS߷\-[ȹ`.ʤPEoLMBbxc '.v'8VeT.6P4&)9;{=.r$Lkښ(lm͞PiQ{^B2Ѯw_b'f+Y'!x4SvGlrQTh_VQ<>$:(!gBْfA4ュ@k$LQ[1F Z./tMNTpS7lo0OD&,S 1 ]D4/&02d2њ.-+<~zA%4AHZT`ka~i9H&hx(IVJUacpK.y OIw̔K3bhLLq RfRTB@*e@mӟ&Olb.=\3kzNgpƀφdQr}uM( iG& >p'9y\4Zjc9Lq[fb1Iex+?"hE9|j[ty+ &ȹ(\YK)Nq.%4V]  ,+=}k sLLLC. mʽ _?Yv~> '>Blm9H1sLRSTbQ{*k/z9(~eNy#Yd#=1ɠc _ "H=$Q3H?|Hp2,{Vʻ^WO@zX7abRT_G?@gV3IKD#7_WіS641itw<ޞ/NF,w"Zߜ0HX΁ 3%SQ$9vxؕvY}ql{3K1ً :Erɕq#0CiM!EN~ڍOh[IZBIaie\֍0z1w}TCOPeq+P4&M #oK$s#,zT7bqg-p 4ȁf|_Tv9*@fSA@=J̣%Fb"v0KtfӧS-3]c)峈:G &YZJ`t3ҤTRZÌ9mzěGBdW\{dM_/&w<NdLnǔheFmJ ӹt:z ?̓F8#`uxH\;GRA&T($>PLvtk^NꉋP[Ke ^Ѡ@ FF pkn:6A4a~HQZG~׼^/Kkq_S:/%I:m1 ʼn80~O9 1ƛADv):?;0M.Upp~<CjrN5=r3Rvβ'L'IVq7-9池uj] =淛E*]viyƄx1o@>9Qh`Ub#, }kљ,GϨ E3)ن;J|]o Jh-YFrsBScJ;1H.(z~8lXgps)\V:ϠiE*g*AiB\%[3\B'N.'X1aD@ p#sqY=l{T1gtcNu1ՄWhrBx770=L_ڳkˮC&5qCBɍ02C(a}hq OX9 /N=6u4glqh$} ʺVDN%1%hIQ_-UQ>:@!d@8~[czpzƊ2єX~7^"'i"WwrX %׳ xw&n|;h\oc=`ezc< WQiXæP 1 Qa렔l濧73ȳdW 2%]#֊zHcCQHa"1bש99QRУIE梀6i=q[HkqpT/1:YſY:T"oj\;J@t䊉6Mk|xS+BaФw%V/*GnQ[+n̛ hLyUtYRPF'9pdq x { A}Pd Ϭpbz!| i@UNeL ~KPcCr8X@خK jԑ}{"B8'R"!@@i]Z3CsE X׎ݧӴJ!8 .B+ c1òHqCON~~eT|ˉ38` _H߈fvX(`8EA-;/'ǎ%f}14^|c^mzFi"sm3%{n`s" >-kڅѰ*P1I ďd !ʰ OmޙVIl([WV4kvŵZQYw*i-/RRA'p4`~fgfD-nˮwr#1\{GmKH[Tt$cZDIܚ4)j/m@BNBw#wF3*ߠ Vk &2#v#do;ĠOV)I͜Q\T2ln!zB.Iλx=iAm[ 3k!=u*]f& >wqTS¾ &3. 7D_,)md )[cWp/ps!O\D;wd }$:Fh's1'q3J)}"ړ+7AF2^A<j:9|r*̫b>U/pյl!n^yY t0x"/K/llaVj4 D?&"Ͱ k dcDlHu$Cq\{J G\zY̔BppG`6|t( v2̣{3RޢױDvd ϰ|yeڠ:&AS'.Lli<~鸞'?7,CHSp"HEȗ,; u-2 = c`te:--P'~ rUXpNmN=ݯʡ#vv4,g1ص 4&X8k^)+eWdOz\ye} Кf=q?İ wI#X wې6ϭ4 9h-X.$>.iX!hat F 5})=?|ڼ拸9),9֝HDÿוmd">h(@;d>. J9/II! 2.l 1wSGyZԀH1yh6tVyF"Œ.lt&nְD6LKgى: 45uGwrHPZq V *~[8de8E$oE>œH;r] GvdjNO] i,)'  , S:61\cs˖2# n+[]؜6ti^eηb=&0& WYb&a{w\׾~yw*{8_kY8D2M_ƗZ@uIPm_K,9kgn. pfwra[i083ըx|!E-[Xhq JA-Re.5p8\H>@ $gP2YѰB3n{]SsbFt.^*k6}/[`؊)q{&DIɶriOo=~o  meәIW iD==o\x&ohj%]kCԡx&,;*"NړX23KE %dKVijCXz,2M'W,'n@UvHR>V@GrAlqN 9" _|*}&f f|2?v( v*"߶TeʻBg/!޳R{X$P%ԧ߲K}tHmH}0]6㘸y]@J+D&sc7NN@Ԡˉ&&46@r*ZBJDtS"uO?% $=4}ZƱ<_0\ܜ_ߍҌ#./xl0sl_ނEΣ:4n= #} ^, \~燴XJ6fB6 ĈTg}F9!^%U;X#Jw; |a=x5T*NǤ]DW%hX~jdVaDF,kQ%lQ ^?5i]G]Ƈj eRϵe'M_cr5ʏC^Q.c=cbG"{L+L@ПQY/A{ɘ4znL=[4U'΄?$5f3ޛCBh3G˚$8\1IƖgo4tm ʲ#k_hTS-u1=;;]TXoxZOnꂆ#zƎ;s8xfQ4w03f(74TF ^z?_zݛۦpZj:SoWdorhR˘اX-Opiv5*MW<]+zAK(8 O.lA`hBt&(ö1ns1̡p'Ar7xd5Vc Seƙgns'ݎ0-Ο*o5DZ Ryrms⇢xSԀlfhh@ Z }(i %G \YgNO| я3sD}%G,f\܇ڌn&>2S!T#7[#u({6$"M_X`h\ڽv~җ.3_A~2;z3`jwӚk f;m=yEZЉ?#jNJ26BB<`h)2`smW op`p /D -xA!ťgyBe]ZBb#JtJxQpPxɠ+)86D|nfzt@*3A#7L}DOz| ?o:hu_6Gy':b\œ߅aNܠ!a\frNr3lPT]*H?ڝ59Z /r'2Z~ ;B)ÈS"% +'r 7w7; P̲p,;ƙKp#%U7Eqk4'O_c"@15%iO)UdZ/BIb"rt*csaӋfx7,xCS?2A)@@b'w }( Hjm)bLO? ܪQ攓=6fδI-a&gU0(. FZ!{&׬bGXlϵ=5EsG1 %`~hr rkkd‘^kO]P=+ |@C)k"D Xtz%{E& 7LgXODA7+%xiH rڜ]9KtZEyR pͅ"iWP)adC-O5LW4")NRNI~cЕɒ!V#V9* YLK-"ˏd+Q˽֭L~ ]-9FS6gAV%79=f&{գ7C$gJ겾 j*TaQ~"@uFTb`Q"+۲}"GZhSOF?~x냭0`i[N?$px t;C)\fd7᜵CPSUi!'2}[m?5ҳIs}%fjL*\o4m6^Fh'aD фGm0 +գ7ƧUa n3+$(z1C .Lrz&3Ⱥ/snPjHSuQ ӓ2w C% $!#QWDw-5$58-"$dˠ Ľxe Y ^#bv>k]S!ۥ<ˁ̘Yh(Ӷȕc|zV-`-w$@ΰork$ҜS XE]0  DuUaDeKߍD {f`=;e1TDԠA~Ē$ZbO!svUϲOrH'UH|hd~#Qtoʚ\i o66M6D>X&*HXm'ߍu: \3*pʘAXlhۇO$7e3[;Zqu5⫸{Sv|N]nB08K ƍd2{Ú20^%\3ӊPwޥ`^Ժ^cw&qT_Wbj/٠UaBɍLݮ~oO sָٞ^Ij2 <43l'Ցx ZbU񣥧7|!ү*F\M[TP0~;J!;(#QATpg\JqdR3<ЧI5 SD?l49ctv]?3 מ卢M`/ZbCij&ìj[,֡-f_QqU-ڜҏo!T?$n=j9B8l5/vQdX,iVVcTiQ&PpUToBWYєٛeX*ÒY$L94}1hF NI<'S]=whۉ)ͯσNS-̚6 Q-0҄A +ȳա˞wdǬVpU+tWWH\I=JI?E i?_3;hUm/Mxc!Xp?R$a-`>|-L G܁BEZO>Os] ëAo{VZD~7HΒ2< QŤZ AЫ68}χ?NR,W8ea[]I'\5Km)/ `<f]bzӾlS^̖Rte2&P3}Ӽ/VcM0BR$q[pB=_?LOÎqQiLbt|-Hh: #t?hMhvI{e&*TS12'"w r x^tGjk5Z])m[)1~W*vc}7$.vw|ہT*[I4|S"saKE.z |~w|pB!x΋]sXmUB"ݴd,0$C{aݮ}|TJ& 6$Γȸvahdw~h_AQ]%Op<3 LQXeajCv5H`i IN~<'/OA弑4%@f5wI0iJ>sA5F s*$F⭰F|/A>QY z-+k+sP'e~Wo o+G6}v\[rrA"rG2/Th½*Ʉ, YFUDZAnGjO3T~FJ̗@v'G"\+LMb|2T3 RЅf[BQqJCQB IGfHQuH]ŒT_<8Ka]nA\R!+8Tp |t9#&spRVuiWEx z\ ;/wKLv8vHCϒS@/jH{[Cq^ZӛyĿt.~Nf.0UpJ }FŖT7HsAKWۏ/p>sjŸYB⸃!l "oC~v D#ǑW E:v$lRb량>!T!hAS58KFR"h<:eL!j,\Y2H[cvpG(h$Bi@P;fPf+ۭI/,ʬd*KTVW7{B=7W)pey26/PYJ5g5sy} W!̡ZAmbǖM*]+VObB:<5mlY LVb3D/((S#Z9c6 kH^*k6ب{YE`vѼgW+F)kg4D4W[/lYrh C2'qDfx3-KFhXJ)a\'qJ4o8>*9W(ɤ"L0+Sv!Upn?t'hTmvz}EOȳ.^ܨJxfq}-ͿSfGؿj-`0^s*YWLduX[HoRئká$lWT7xE* e T} (Hq) ~Mq8C8Z -XrMhڪsd8!YoW-3{zďX2TF<~db SL ӌm|@Iϣ\kJgT6\wks wY[km7}9v6gXWգ0讱~.! FXMٲ$4$t+m:'jC/ }:s*f+8Q$<@p w%Zdm">`VKzC΁>{H7,Ra 1t-`GewL,]=pE E2\k-AN2~?: FHD잻I"Xg@Hu /3HL*\mq٩ؤa7%(ĸ.*SAb{9Ebu~=KϸeZV xWપA?fR*R>is12&2^O憀5\C:B}rى#"Ӟ9}M@l :<_"%3":k_WM*,AkUAݺ.-"1L*uŢOɭsÓFEgnj&=pBZ>7}zŤXmAXN><tA!yJ3dž~ i8#U 5\Vz /)ǘk`A_Pslu'|/`6I!K&plFFcM||y`4U`H=m~RUyqkq~TNˇ&lG!ШE_EJ< =^.7aGTq];FB_Ne\A[Ţ]9janх}{;W[Æ=`ɱƎ?5SX@w6'W 0S|ǥ-*2Y3dYA+xlM5םۈ9@- 9&.Vp~oY_4g[js|c?eu0Z7*S%Qޣr5Gh?ǫ~@wmPa͓aq6 Aiͣ2vDxxzd}p)-iw>]\K haJ9Ilb^vW]^y2fc*V*^<d">t>NJ[>I%?KUW3>GA<,vF̎jeryHX'* Pf"> nYp7D`{Pݕ.5cǠ 0}?^P%u=Ȫ~8gM1? <.$iIf=kb„+gަ,ۤ3u%sל|P)>+--$y毚sD6@k`yOgCa1X%B-a)v*RJt;~spjbgz6:^tGct n h`j $t3pӶZʑ31_Bׂ#LGo4і&jHR YI/ Jjf[X_Wd .[v,y>`((K!Ur=btPZZk)Zr0kXbC()<\ E; G%䯫R8jkw;va%Ur2BewˋUoJu~A{$U|ڒX=Ø- Aݧj0SnI˪ۧbFn8)Co: lf_ 8$#͌NKw cI3AwuCOfh6Hr:m=,׻w*S?gѫQDK#PzNG&7ۍTrׁ0M$"g3LG$m!~w\ߟ$wAFYb˜e{{duv wh,/(E;X+i#+a`c0,`X;f!Ne+3݅vo,rjXsy#p6zԦ\h'՛#. p:1*wI n3>ϰOeܗ> x]x7Cubqt 5΂ >Qt>}dsz9ebdXl}~(BƇ$ (#ӒCZ/ӓJ-.*t/c}mZ|<,[7T;1m}v /adO*+\r;OO۷JB9l)!!؜c%d-yT16ELN'E.E@R#u-=%&ԝ)ZҸA @~+mmP X7bS"g8h-k-I^[)zuʚj  +S&}pm)gZaMp&>+Hj~o|h_ny?P]7 sڴTEϧB ;#)GUu> i+Xw^7\P4<@2)kgi-plNXxTvc]}hqd)tP3zn` ožMovmYpO Q;C*' F\&mfǢDc%+PF .BbTs1h¯4Wm| 5[T\݀^i$Y~?aQp Tym"ոy 𓁏e'vƊr-5(Z[}mFˢ=892qt`X䶀@TXQ3[[_gt0V=MJ? !],А1"M >Tц#1fkW {aG?($dI9SZ\!?_uY!EKV V@$nt|x [O@lG$\ T]ؒ_SU@ұ\hgcA6GauX"Ky,)Uf OoYUGS5Jd;t qVfj6)CȜ%e:]o79$j1HԠu9C]fN vuO]W2pTQR߿-r꺒R fX7- a  \FyXst~\̏&J'k+Id+uyn@42V3NZnPFeČHnYw<.w ƾ@9vQ=%.z1GKK+@Z|!.ך

~̶>hfeGwZL$v-I4d0p5EL*=Rq3C:KjdH]Q7!r:bP)oڎ~0D¡RQ/' 4 sIP"b@Vk3&g$(qxifon09]D6嬪Ο-xwMF0&>cj_E΅8909SAneg3+ {% *l$LD<B<& >T~g#PBs5Y Ie^+L=a<͎K}j|8(r}S<$gVŵK U({7EX'Xqj&7'LT1@'ߩ Up+IP̿Ɲ9FlZ'E۷_ft#9OKK1Z~xp?rC>nW/R[ i )FZ^uM]~Jݯhkf5v/ vؚx+@isxL-|VQ,d/ VeW9ys[dy[q ׄeKx.$d5z=g33lE>>P1̒2k޿^ۑmbK3L>uB׭9ѹny5lxS2E3>GWgD1Uڅ+؛flژV8Rd_ϋNrxQ´auRsdtWIGկqL24GCZd1%f=oqKBU =:6/ '$RNSǦI'#(M%bb |=oa W ߤKx)Q |u9mb(v3>5-ڃQ= ^ǘ۵S|N/Pc?n+|%|Y k\B^ł^n "FDpZxS!## 5'N`܂nUIF"Җlң~DGn 91ex9W{j0(sɦ݉lL6<oHx3QVZ~N9ܧAfghS' .ɤPMT) x궴C>)S0r.q3;@}+$5G.B* *ПAq('^3թH snҹ%zWdUktƈ.r,'6hifzֶfyN v38\cm 17N'! G,^'#`֜ STB*xxg#+(Di\66#Qw'; otsȳ]ln4:Y0)֑Xi=h1Io}R)&,)>9_ "s7EkYcqUPlJ$O=lԲGC!{3P{8 fkdQS3C0o샮w%@]D_ 1ƘE-Fۑg(MQݎ]%_|\ugÖ[ η¯ +^(U{kzLׯx"`_T&f ϹäH!ݐ 8",~{ b̷'R:N^9ug n PmÒjFCz(=a|id:tYD$ ͻ Cq%9A,G'WD9#Qz n&FO}%tĖFgT׿ZØ)wP\~]$pw aRQPb-KݿV \C@X> U:jBQZf2W+訯PdS* 黂n@#7sbNvH qqՔ,Erk';G5dA5(Uf3/2%L|P`f֦%݈ Y[*ZIjr5胰78M+4L;U9\ b >Ey^v]wm#/zFA)-]P <U7qE B| )U&0J=w?u؊*Sք+۬!4}օ oD0S]E]؉z7O YN؞:7ǭqujoEB}%vb9`)p:nhcpיA)w)h!XL5摹v&3ʘ^s Ciq+0]#+lY}Hy*d!OpM",[[k+6ԕ)m3zÎ!gҐJcթRg?NF*$;C%Z c{Զh)І1k_gPyLMs 6`1r??ueH>ߩ0! 4V_z* d8&S+!Goh-Hh*gSrI.pvTh9ݯn|ٌՁf >U eǢVeMXcN+$VD^] H[NA/i|%="fU괛pU X*jPyGOtkеN^ Ý@J: @ *TT͛_!8pC6B-rJ:Uf*Ω R^2+[C =+#!Ce 7/΀hiP>C?)ʼn>?D%CQݷ R$$ ؁Lw{áGI&j?J&f!kVB$Vèh_x}uk${֤lǔ*qWgwϰM,nirp "Q{.]qbNjsSGG0Hiɯp_r2u'h"BY ?$W$6$e$)iiAQRZI06'_f-}q|8|X, e¿; jaַʄ'=8C4DPM*z{J'c\!*oYr 0_:%ϣV@hۼHzԠ&=# Mei!ȄR>]|L' dtIG-: gvA::>/1> GAFGA.vAġzn ڦTS!;va#'" rWr+-^Ǽꉮ-{&Ɵ`2G>SjRP/5@h9 C9 >LXo t!:?KlJQ&dYmCBΉz&T榒a~g!,/=, "?Rf'ݔMXsc_8; Jà*g-Q  =AtsҜaQχ4gC^(w 'Z\)!.r)aj9m;6""*v賫vM=,g'‡\iq-8#1|}lv>50Yٺr³hA9O]0θcUucq$\}DNCC|a[~B!ͼsBQFpy,5Zzf %9_"kt `:@n)U"0=$R}>d$WnBouT*vEA2ljʻ΍s9=K]WQJܿs8ۖГDy꧹Zd#YcؒњRbJ> ǠT%LRo.]"SԲ̘ Fih'T-6#z7-- ElX,*6Wµ"J.g.t{l!@#0mFhq$ e4y6&ˆ?ou{eW5*7Ohp$ifGW& _>[n2k]z&cxX(2 ]s7L9w[]uݚr"8,lu\0X m^{MҴ2%毑)*1-54&`tNKM/SUQ4(sc 92j{Ǥ4 p 0|@Wx_v͂+LcEK|pHѝ[dZ<;+blBYZQ _2%-Ku֞.cxe Mpm;Fa s.\aܫjtݷs<ހ¸C/8o[ G5S խCee]4 8ygJ6j<̐ ̾|+PW<2(n!>gnNS%C>d} )ɱE]?rn͸$mt:Mo^L\;l>.v gr<؋,hd2冭︦,~U(V[V`W?o9JorȚHYƠg KJ;kf5DM]pӲO N="Y;Q={o3kcdZ-뿪ʬh;l =˖%)u S(l]3 @bN.ŭA.#6Fw.M5T)nKRI{>D9s E044m{: kZ^%]HɢUEpG_FU ů'yR L,$b>oq/􀜦ʹ,p[59~ r`'?7*hN_[`ۄ^yE؎vKh.R;bAq}-c:?3'M;{0A^xXapu蛍 v?o NXRfjQQ.L*(% wۛVH ΅mUF7>?{LaKm7VlرF7-o&N/I߉Al{*[uSg=ov YBP{X*LFE!y JTx[ ֕z4/EԚӔ^g%zRNUXzG+ܟ  $uzhO.shvbsWV^s3FᕮF̺Tlq%}]Q CayQ.#Tm (oFCuӈj?߂3ڞ%E4c }s9|V6(2XqMY &;dW; }tr^XlViź{gSO'&ř|A$DvoTo6e4:h}۬7tYȅ"MN*JJ GFajG6>GatG U?:t$Diou*[V@8|" vw`,kI,Ț ׯ$,T҅Y8vBK^-.H9] 5n!M)}~ PK!FʝhG My`D^ي|DN[kx~JMduw&^J.V&RyI~f'~A$kjxE*wPg[<}j{dxOx,_ռkl"X:6}ŹĖΘ|VwNI a%Sav H늤)H͎,lG5s =|s Z?suVݡvd{ J L o\:n6*G?\Azb4V27:nß3#${sX @_ZJYu[FxKD2\^NCJr?RӚ^(bnx;ZQ z^|rmLɆuT$m`XY?u"ے1rMNfT aEt'OP4,8c5Ŋ4\sN@YӬ+O޳-Be/PzgUiˀf!m;ҖV!!8 lvwQq1`~5ٝ YcDAg(ʪZMz(Ũ< nW"Yi"9y4C%VˉXwuCJpA[cڋEʔ;G\;aTN–6PaӜYO='7KZߕ{U{euӖq:ôēfeTcrӟ?evmxDs#3uFR ?|!W» (Tn)h$ k"pdέ͆G J@]uCgv 7)VVFf"xy8Njk8| d&#V{#fxovvπb#t Š.fAKԺϘGY\%kԹ_2ڱ2rLȷK~VN Fz9r^e{{q͌ljH Dg!HsN[9nK׀XمϿ4N~DX Nސc/1DD {Ĥۣ\%\QjTGƔJn,e󵣎Y^AaS?IdgR 1,7'1K}ȵGpjKhh7m~%O đZ%؁+E&vhĝ;%AY $.,IX䇶Oy 4G#.A*&e4u wud[I 40VEs D.c0VΓ*~Bؕmtb>K5 FT E {"~k w 5;'ٿ2tǫ`=&Èc2enUX]UBTC8;MX(fNv:]LKX0l&|$*睶4f}>q_zpY195?B՜W=ËPQ!:hhedx o@(&ƩP7 펩Đmg;9*[$"ھK%d1Iй"оR;H"̼L'$+'+/H/E.x"jpO|[Pќ񅕪arcb+?iyfƀ ^iFhUx>Tnh52o=J@DEBorCyGcs5ؾK 2f}=|]]x"wżgBVUzJjJ׬Ȳ|хd3MO"W|V$x+Ų? G&l!v?eLHIjY7D.lNpԎw> ¯ л/%v'A+&E=\ uWњ(`zңz 4ihYbIӨ[~cÿFFEG^w*EPU/ܗ7k_A"M'Oo5 PV~S~:tnlEg~f}Kt$~Q w'U 6 hǐ2 |.{FYE9 蛁hxvu CbY.dϳ#t2'7 **p$|vR 6DJӡJX=tW#>I f L;=.Ki- { 9Nu4L\hCc|#]]w;ȰU˅ci\K.Pk{j{uF%2W@B tS0Fw#JdQ7RVɑ {T{`!R 416Dr3PN[HxVP5÷>E= TS8)ߍ;QUqW(P=]}GNw]G(cf(,' v|2KhUۛۥN- flh^ŧʇ2|߳ 8l$ dv=^WP{R5>dK//𢐬zИWl4[4jX,+RAs{&~ok2STu]4 bp_.;\S!q! E}C%mL?US S4,U"Fdg4 b'nG b[Irq~@Wt1!&$Zd !+GX0l#B̞G(rIBV_ >]j I&rA I5<ӮSc8ߛJAJ2zB\ V2tT+Fnj`Pxs͠: "D qTW_F~S[wHR93l2~⤈[L?sY(mLl:*sE^>yd1t/h i0Ê7-M?(CvT8[Z'5@D"N,s#.DY]]Ap6$j/4꺡qN~ 5#?z5.8fz{l ]0 7Û޷QͨG'Og5YdiM7pځ萲5_d-Y z󡦋 V@Nx/2˘L!7cazH|i| \9 VcN7s1!\ N2hWq $8uUz#@ G6&%k_%.Ku;Ls~ %PM^h\-"SoRkW0,;phFdaԆc^K0SgW4qv[gA>dRO{\ȗZp&#GV;Pp&l5n~1 mܸ#ʢOɢ'&Ĥ53!~Y}A !0 9(D;SW!G̖Ȼ_FTߝtxLyev`E ~/6{Xmצ Ȟɵ&ls1[:<6q)kVRՉzo3P7(rہ/ZX)Y*:E!~5Nq1D;JfЁ0نqcdLpbAcTୄ%}w!; jxS[: \m>>y}8V¥\a)(C*xo,ID5lHQv{p~ #`oU/(l \t<0&j<*\(;iŔGzJEw֡~qت/7  TeF eF@$u/fVe=V, F,\P%>_p/J/~j>oU}8DFwTƻN"Ne;2-kmah31VcGqpΑq\`^Y=-}o@ruAK]bNDy\Fkvv1=85c"X= !Y mpYOxB=LS/;;?Zf{sZCa[+\XVK 8{Lڹ2rtS~5/,!t;sC&2ExhbxX6;&gc)J m&HX3)}۩Fk7˳b=U㵧9z44!p3kjG͖P$VccKkjuA2&CQ "3xTAX?uhGʨM?z y!s0lS@s[ qGԳ Hl2 /m/cJ,(Jz-"/ȣO5%ͩd8mmsLE57)pBg9UpB I6. _QMm.0 Ʀ~꣜;C4&s1 1ͤ!ԿZX@ ?^`8BUi~ y9.Q١ Tv+Sz;/1;X7ZZA4;E<=]R9aI ƛN۫"J$a ʲb:vev Bg|j&qiZ^Bz!G+mvלܙ~d ^ jD:e-ƸdN6 -0 t|ԧU yAFDJ3#kGjtlF%1yM8jh+䰽58LpUY.?,gXDB3 X4v Mg {;zqd.ibP۰*L@7=N@l]gy?&vNzyLf6az)+6RakpqNx23 NJ\t A;O;^S{<`-)NTxƢG}z߅lRBƂ,ӂ#ZlW(Pdnyd$w!ZN;T%G-W|cxaR_(]t^r;- [BQ&V[*WRf~paJTqm# #XH';<tZap ~30N|Mk.*:U9s~Ty?? nR,sR"`yFb]!HlE\. lagy5%Do"s>^l88/nk0ϧ{6-QW'3:)żXL.ýF=EBx݋h'`ط)tja]5MzIg1 ~A?~u}|읩,wbRJ!\=Z04hH{Se?5o/m}T .vQ2ɋ6D3^7KC9-!!?JO9װDtǢ17AO׀߉\GsVlOzu-ڪosch3(f`$HsWHzV0mbqdwށ-,i(k;4_s `Wֱ3 P*&0T"ﺜ|z"ȭ9X$I:&9웫SD޸|΂a W]tpIv GjsvQ }+-w^h[jєH]Չ+lPFZ7kAJG5QGW8I7(ݺ Sn<5yn2﮼#٧K_O#yunTA2S¡@EMa F|_c,0G(4 Ky?au%yIЕY*.Ct5=w ϛ^&r\^ԎH"]?$}zZY75 WnUϥ  ~ -f}uH^Ie B+F3hvaz[*zW1߂dɠ[gzQ2`5xxzY=4OCTuM[pt"J+uƥ?vp Cye@*<}/Ndg숄u=m +F%i 9=A}}ti+g ':u)i }jA5gIGK,^u)1l}zʂ)=ǃl H_E/h|fϋ)8!rW>E{y^kɌە7^F}!DrG4$vZ7j8[$T LS:g2j CD͞QF+gdTNW5wÜ{2msѮ9+ yZ-E1Nbok29pAPPְbz/_@q%驧$ucIz׃P5qCLoRG G,D\r֨G7x-*q;6O"u ʹ/YM}1׉1 W,=Ljov?Ӎ59م ~N(G!! Bj@ ۪ ^wM[ w/-aْ1i| T\閧M W҇j6Vr\#`ʨ|f[紎)@OYVt3[Չi;*(A׀;ck1ТpP n>8^| cVd U⺥(4ޛpڒ V ߼ p_o~Mcߦg &@_u HQ\/Ə rY*]2m$$_ۄJ|W(l'1*†4p|s B6˝֐W |8I!eІ|f1hU0['uC5c>϶`N`奙v͍^0ba#] zmù=(䒌~^} ?؟%gƕ7OK4:2N3vizKgJ?We짣]~D3z!IwX BCå/lH:.8Uq8(-3d5&Nx^SCnx'?*dVճ)5{GaH>GM!1oKA#Dm#5N㓳]z| ^6 u(z=^\|c;WQ~A *0ߡpy. ԬDg0U9LݢxI6#C@ǰFd)h/?Y}R?.ӳ3bꄸC ~QB:O8nQ,1H[$%Ӱ';@Hܛ)kC 3SOu7mrҒ_| HsǪ&V \騤rD!(AoM:܈jR Ԏ)RJ2v kŦ|r?;n,\'/,P$ }(]jYp14qqCud_ٹFz9S~Vc:To۹ 6Œٰb&_-ƺk^A@0uj_nGxKsdӾwO!B@A{Ow.Yc7!Am#1ꆵ _[u3(ʐ]$`>fqeތ|x'TTKGSK-F2 %c&e'Q>ބ&eonc݄< gV->qOXkμ"*qA6;X@Mr#9wXHu agqq߸.<tBg oQ-H_i*'1 zg%;SbGE:Qo)v(6MHW?Hpymx}һC!FW<:ȑm+'oaE`s鷢wx܊pD Mca2]M+ NJvZg * sm67`Y)ljߥ yc)M/ wM 47JYjמB%GrkF2oUc>W9TV>`%/M05%ɕtxXQ0ZmFx[%`8|#P;{@6:Bj 0(7[Xfj_^1[p~ P <ÂS~Y'c3a҃.jbB>aW!C6![Xvh9 5n겮BH2j~m$CY")In0OGtrмf8YLc&<5Hښ7KS)ރ;Yq(Y\Қo& I1HGд_#kr46wG*D &M[$RzyGA[GG[ C<ٟ=}R&;TCӑvWg*QetP=z;/ iKFNk.I}4; !3k]SVt'jE@%Ԁ#xpk纸ٰ,8,#(*#;ߙez^{bn(`>ʔ6{}A vTB#=G7NÿPOre"e |^h z˒qsbLV%2i#f>ށI֍οʏ^$0Z -7m-pp etw+9{$DT]3 ޿Bn'|ltR mh9)7'>ЇWCpızaO V_^QxI'*† \ڝր@@]7?o:2iYo9¥ǬDaKj/~(*RAzCR&PV3<1iv)jtDY"4Twn s-42&.A CB+ؖf,-ba Ժצ0"3_t"ֽqR4%C> aWr֜NH8|pR2]N+ Lt_qn,hs*8xy7^ƫ^ՠa^-ONA_!tJ8E+:1EIr`lO`\&q 4V\TL:@ r}zw8^ԓpCoU|\jw[Y5-p? sJrAMۑ16k~ag7Dy% ȡx!EqϝQ +m]N;X[jrI'IJW V:@[!Oz^ȽK_g$P}V;iwyϺ}oĖ|& w9I\.9:F}u2^fI-_jj DQ Bxȸm\_(1sZ8K07? F*TUq3Ը,fPv+_Ã5<y~bbbhyِǃߑR_\oi2&oi4A+Dh 'Qi.`c \QwdtI{^ےxM}ɐemm) V7_Q|Kww L#=7%g*)r%[ϻ:$v|ò5$Yţd4U|I7]*&[oDU-ؕnjuݑ`@Ւy*[#lOdpYqL7.(+7MyI/$z{m2^߰N=lXiX5"gT7Pt~rv&#ICLtÓH琝%Z{ړ^z03R<:? ZRI5(@Xqj?D#8efel-=L]NZ+v@Hߪxw'xsۚC-)<n陷峩0+3Q3|`I3ā0(l x*lv!BQe4zmӯ%rn[69>S0Nab,GP*~S#IBj6B3>{TRɬa}fP/Jjww{? ٰu)Ă(܇ߴ2f  7bV?"W_FV{æN oibcC P(hPPa7Dka:8p 4:%(*fQ{E2nf)m@GLŎ6j**I*.+º؀TvxT9BXQZFUY!(Z*y { sW--*זlpA FbTKL`$|sK;a"=:n΂9ȣ5P{""M%w> \s\Dee[>5ym#2dd t3goB-2cVxCSvk=/Dǁs>oqt$# MG2Fp\}B?8u]j|eU; .F݁.,8/zv|jvV ƀsl5BvΫ|J$W! jFs3M0ئx4}xy 6_5g NmtBٌ'j,n֤YҏZ] TocUeS 3! L#艔C3r;^rsT&K,R^9TEC\I9i˾S ]x; #r#T5`U܃/ѱ,yh'z6^W)Wk-vϷDͭݤ.I-FZR/0#SNj+L5$(:t#AR\zl8R'=(F5GcCk: < SLR\W`Y ƀ^~-Na|X֭Uy9/IlldrGL]4/!l S|zM2R{#eXZZ ʮ/`NiH,feNlބĽeOp$w&Aݙ^7g!*7K"s*v4ؐD#ʗpLH`uDžɏ~`1 Tըmx׺gUdv2fQpҼv?%t ܫjWu ]/"ۄij;?Qq1@m)>9"kC\.Ҏ)ʹȾaS ֛SJDTJ&+q̬:a rՂ/:Ix6k|X\Uupzj~0t4P ΎrA+τzN3ڶHdmvo&?P%uQdkkGgqI+]NWpqED!pN0&~:7Aʐ _cɎ/085k@Iґi/=YK./l x͓ T 3hpCܽ%j%7` x3m\֥۫!襖 ɏAe0 iM}\Kxo%Sf%l\z4mDMJevk8Dh+ifO Hօqll7W,7-ʎÁ/$Ʉֲ1'g]gFA"DT~ʫpdۡn6,!Ɋ7WEi/ȃꑆ嘤ԆƋ[Exm @ f]Y8sfL/K)0Bx.#%\Àfןi5]$En)h('P5E Lp]\BJэ. -TiQe}#jE^'C|DĪqvI#*uA{#|UJLSDwo7:Tu؊rޞQUBK7RljR,}IWuQx[ ,!!!U|9-#EK* VgUQ?NơQʆKr[h1O۱7GT@m,?SѕyGeִT*,`H/6E3Ic+4l'8_O9ŝPM Ef!@~K'NbncU (8Y0(Sw?uXCHe<2>{6{܄@&2'ƨRIKd(W:tzc`S*QzU;R,ˊ>q= ~[I7O؏O&Q{z;J~C%mL2_&PhOk9JsEvTt4Y I 5͝H5.ZymyoAO|,,8Jۂ}B45XMb˟)j0)mf/n_Ae@CuBX0'1KA~2 )GB/|5A"f3x s7Tڨ7b\ `T+_ߞl ) sYg1Yel] L4jbDnkwFMl(J?-{^6IgQGܒ[P]W/w)_\Zk)UY8¨˙ɚrV\VH{O<# zJa\XX\b_bѫ+Ed /艌Udz߈%,L$frQYp qt֙}df0䃂-۞WP^3M-,?I8PU!=Z1Vh4VO|>2VXD?} enb? ̘?~szT ?pU6+j%`6|;K mM~H)%H~氞'wq_V]4WZs-:́1-lҚ@έ 8ϭQ]eB0&|)xms6K\T x{%+<0ZQN126^̢WZX>Qjz5^撟!Ǿw2>_j 2 z &Y@j!C TR6YyZ^V#e+`A a(d\Z)q4GN`p\hnjcw]:)ʝcǮlҭ^e;9Bv%UlJ*ckT| ?& wX~2( l?ף/*/hJ@ 1e(O8ۓ#\wW؂Cn6Dq2*nbh`_ .|u=g.~+Pծr|ua%y0HDS|gؾ=A0")7LBG&[{n@YcMX-]6r{DȺ{؋ Fܣ<ơ^^Z0{ |)匘kU$W ,w=c,_gD Ac;]4K-WsberL}+U ^cH'F` z?giDxm&Aʵ?74d6ъVEyJ Hn@e)0?i!tftx%e&ҙ'dIs\\._'{%>Et]W҂) #'86 5چIuSj-6;९0m,\bB)@pvER0$,sI#$xo=^V~J`)p  mC@8TfQ+ %|+C-42KQ qr"i;78'9;oo$^5:x 6I? ` 1*%z6ͽ xnէ:-$@:ؑA-"<)%IL*65Ҍ `ԟ wgVq(}yFOQRY=W:7sJ/7WC-i$:w+>dן# Л*Z!?,jk~^_1 ZT-$P#}qPQptH/vQ!̩viN캉&Ԩ4w|},lV@ h0 rηYF~;MvP)4ᡡ<8,$,Yغ;<3%߱k JZKl4 Zz^z0KH.nHVe >##笋y&R &[ BoY/\H&-bwIoG:-ya!8ޞYXxR4yOmf(RP@yNj[;~"8~,K& „4 Ooq*8EE~)$MF?>NR't;f bV[)3'ʟ:I7(_CMEs+i!*]#v(hH,$y9ITT⥼V%Tô5evpzuo&D3}z%H87g먮8¡vw2Rj9?~{6q{`%>1E1nT?ifX1%ey6yU҂TpGklVHB|˜Î~#PpoQ3A#+r{k:1{Wa~~ adnH( -fq¡,R}8cgM=0(6T^F2J|.wAhe9/ڷ=_+^܂%l2A{vݦ XJq՝|w9m0ը)M (b4)?}FH/ًBl &ҳNI 8pࡷ_ҹVlj/"Ayb1 E]D ;Js+]mPD_Y".EIk4Ԝg\DcV??}gn6iݒQz1TK#!cp$gΟ#Pi4=34]>"3g3P^PR8{~|dp%?QȆ^%4b ߉u_6g~ o5:by`bӶjG{ηJlv:D7áG# Ez\Lw=N|a9' ZohT'ooby9Sbkw+dPMQ~1V2^B<P)%Z/?Į橩h%0søFuFc%eѪoP X聆\ZaC8Cx$,A*!o0Չ4.+Hޅ`Z*G 1RYȈ~M!X0h;E~bQbAo-q 16ɂ@%l=h*% ~Zy%LX=)U tNv.w808FFHJը V1nFlKxR*.![y5Ado5}JI)Eؙ'!:!PUK6J:LLG/Soъ?,t5*(p6Xn;R/R{ly f f~%}keȑ;!u ۮGb@eo.UnZwvgfVc~ǩCk].]x O{%5_`rέ<4$nV ʑ,Vh_N߰Ns#1a}kV'Z;g18d^>y? ou1'N_dmA ^M]Re C`Եaq`1tJ@m38etNeN3zi 'iBb3 rɷ?ut؆7G}1G8jRgjA٤gCRa8 $BhJ)$sUBehBBMϞ9Ӫ:Z+:P~D(o\ϗrA)|~>RKOtt 7Xo;VܵdɈ{B/CvhU\+ ˼61{,zF3%0毃NO?)".q`nG'O-Ɉ̈t~΁2Ets^NВIE߿^1X7L@8}҇]e|ڞ mElIY4sUٞ(Z6OzۡJF_jrűVsP1 !BsC٩Lښ}JzZ)..L[lci 55-Lڦ3DM̭5TcOl9Յ$إ9c+/ENYK\ɤ{ػmfGb5`1.;0'I;%X {QSjbT7o͠J]^թ^8IZC .!\Ѝwƿ^ݠ3SAÈK_C._?AT"eGZsDrp.;hjfY=bթ {n?o+8ϫTHHݑA(Z)-LHSKg`m7G&!rVoWN$pêHI )'b"i>:TrR3@fMV70dN"!8F==iIc{h;jdF-]h s V6BDWk<#G_Mwb΋-{d,>4Id5]ezZq|dH4 #STRqH%>3B9 MgKOKVp,fF[aC.gy:jVL{Ɂs$3>1lt}d7f7 D5k]xXsAcƕI[_=gܤZaߗ- rI6R5=uO-,ehg7H#3|q)uvј@NF|*3|؎N.g f.r?.`d| ٟ,M$1<(9y$p#RSL5|d^fA-)#XGTQ_e*>OUw^: &k>p]y)UzO[\5&%h)MeF{;I+<庂ęLCFj㑛њ 8qi.[Ll޹} Zg!sMX5e<ퟘD%uḾ;Ԯۛ?sRj|_RMy$ 46R)5?X`[ǬqʒU=;k$PRƐs?2 Iΐ">$ek16LQ\V./=Rn#kq,ҟ>IP!HyHt1~qcV7^>"dCU*)-*Iz΀NWA'4=1c(בNT?n6eQr<*F~mJ5JbE(ic*eCnJh}TjL=+)ۑWcl&Ɂ,ھĐ4z]qtіjʣ+~4m%Ӆ2=N@v^/nxwN{ bݶC+n_wdw>W L3L=DZ*Bsķ;?O Qe%.T'J҇qZ=@Ϣ˿ Z}܎=5(q}=ٗ#cIO+MFc.Eq 1 *N%js ~^YG7]6Y3sm U@>Yv[c11?fV;‹%y Z0Z|Y ,vw+`g7x-ucooGlag{s(uBIgs/omC(~ksG).eЍ]n|'zYOX\nkA!6aqǎhzd1>9 Ya?űQ4Qåƈ~WbCO~8TMJh$Ȳݦ\}k/|^'p3g(RSQI^@XPK2 '=8}{#i7.Ėry@0TcT,:!&pt èe&b_hrτy58[$gǍ2u(4*-7Q`R:.!6gGL$YP-@{; ҭs [&D9Mxq6YiNY+VPʿ_NAsLş#zp%~umA\"EDXsc W=(u~X⪕_.ӷvTg_ Wr\zˣ흝<#5 H1^n?aIy.p0~Y(pj 6$'N'at:XQG7-gCKv?1 {*R!d%ZMsߟ#=Wf ebCa[| yp2*yƬD/DtgAb(_Gvs`|>Up: uօZ|`K6exz}!`4gdN!j'ƦaUQЪW)[#:2$P~'8  `B_d= J\ љ^:nY86 /y>7~>LB,5%[~B~5 Hk$T6Aы]zۏ#)_I^Ul!m?0H-JeIwZ͗ f72͎ Y:5#Z>␨V'znkKNjڳ|O wm m\RIbu4H=U,aG ޔxd 'K F난 |s.a X{qY^|[6!6URG}?Ý9;>UFᕓfH igBP{˳$E z@ <$ӻˇ _=r>L\㞌A4Zja84!ꔼ޲B ĻIV; 0*|޹O~KvX{_8j '>•„F:ʯl vE:5>aUdQp{脷 h,I[-L1}[Qgvs{$>juA -ŅDHLS/s`[;?{GS˞zE~gWMU-ЮBv*deYA7qu+7=^Bnm"Ff62p͂SoJW{Ig8np| H]V9-h 8m/R D@R.,\1Cn݃-džqgʇ)z^AduG/kugr) B9 [vc5L-A XEK36C9fEvZ|4{2Ť@L}ZhSS>[9# _Ipjay[MNR>+Mi,aGv=ttTY)Z;fܣ.";WYǒOSU)df|5yd;dCeֹE7HBX7}91()RTjDyP#{l# aR2aLY 3:3p YK- VdeN_ʜ\ 9` ;7/AXcCK2U uU"VK=}Ӈ 1t Ak'J!tbcuP>(/*gjTFw%Fnc<ٙ紓5zsQGV`yrMvd?8"(R (p2~f Gޕpp`g4,@M6`iÈ/ El":ڔ"]gsO Q:,̅M{2r"wqU: Hh [!z]gkB ̚/tr͌%\\T-^*>rgRp դ!?Jj1&Eњ~*I_h-ճxWf@/52D:/ؓ0O&h#*n4n\qtʌ?|@'uaO(OnU.Gtz|*զjL;Nu$A ٧'UM: pa(kKE?04:C$ KĜ"SAYeGʆмcB{,qL%mz[/5Q_"hq/]CLaPMBhAsgQ|y]sr:{NڣJFlӷcq΄(la͓>'_^ ^[ӻj4SU,w1sb 6cǶ6CYtku|D=5) x|ƐE~uMNt+~,:27KU#wa}c(?F1hy_]͔7Mw[DUHO*cK|c{Q' J)vbG黯dXVp:q ._wt=?sQ(spg7- 2 G#]3hN#bRs0_9tUʄ{0/`ڶZt%?@LRa:r.$І;E"}L;IK5\\PͺegU2 񧺍Xs<N6r8s,Dgmd12b+[ :H-[*^o"ҎGDݰKBԸ8둩*^pi'zܪ6X@[_{M eUclJkhv}gJRȱ-eRkB+5rDE-%hTci#&lpc|U/6_<|*e!\2 $D FWg-ZܾZ}-6LȼDE)Qy!*+4l,'}٘gZ0Lu0ʙ^>ݕe 5 tM yjpDݐ{,PD=2cV(HE$#y ˆG?-s~~EEZ .ZT3ňaF Azo"j(A.xozE=XS}-(L6 Hpm$/=ot:fK'9T32&v^?E@wAlΥENgW{`u5 /;s$*EXU;h RF]s 3ΫgUe x1:b ]^!D#ܚfba@B`MQ12;dj!|cK"[{=6TAU Tz5KeW^RT@r/{XEuE`etcTC%$ܺcl?\K37 zkRG(Dd偖+~oD#E/7d]D6^1% >4R^x2+vT@T.HGOJ2$aʿ.D\,~kk}α^N˸DzĤ#J$A-+z⫾"\}w 20:lT2D% Gg&llږd(((+nS5X3x $e6?[JL36Fߺw i#D }}=pK Y 3,qУxx*j%\[nY6qdk2hхLȝBqNG-7msq?bs{ 2(T5s@O|/P?$^HIKO&̏t;"ˢWO^6oK3A[T-צ#"P''A`0᫼9 &mk\ĄnyCхbmG[|rYρL⤽sgU9B@==Z_QF TA]PR0 "z[]c߄qxS}Q޺GơvzX'P7wjIػ'\oao=zSIa_fJIaIǺ|A754(W1R^S~tG4u2UnvAFqUbODZ%h+g՞w?G;mTqOe-qzcuj ,+ֆ.˰3ʋNg8©R !Q{΂#*XSw8"PSk3E³Vo LOCha(7 Aإnm)k֠cx(IBYg{f[˃  yL r,-w&4/0cbAqD֌!EG]9}XqzXWU\֙o(G8CxB۹%IjqlG5CY?S ˂M{QB.Ď}Uc]$hRAnSB@J:#.jPݸ"52@sѴY=|-Dɬ$tJ?01y|FU0(ېugN JL`.#qyܭIp[]dǎУgȗ",_JWGK> G!P_7$ f,=n`Ǟou|<ǧy`|yBi҈8;q)f!h-3'{N5ct{$Bjp1߯y AQDdFV) kty/x'`T(A]0 3ߴ Y9,·`u|2:_2mRV\_pm-udyA5Z2ތɤ.,Ϟ-mhk:.;D@(R8q>[+@gbWη>[]Ƴ{Ÿ_y0dXR:ޣ\^?gʏ[]Psǃ\]Җ'OՅTz~^1Q[%}N`]Siks<(JX~Y>5^aAOuh!Ac;oaz^0Z /׏Dtu!hAʏJQ|ؤ ;^i!o͔+ U/vd26rm0::/. C@HL[`jo. JW}CЋd8Q'w㟨VB$=[ɏkɱ"+`%—nL>P<9p gtq*/>jRʑ*?%Z9Rb~bbb# R$XTtHO~ǿ,VN2G88HytKcR0Xh#s -%ȃpR i[eOw{\6*-Rlf *bŊ?)>.F Na|B!^dG$AX.Ru?WF^ <^ْӖ_n#oHqIQ&g23)Ic]<I!n;A|tV*>ȕ#?}Ypeu}BJ<1;c*E5Kmmr#kehiU;Y^Λ]= :e%OW!C$ш bץ'aG98'z?9.G>62V#"bF@SAR] fNy̽MTPڊuqa_↔clexGS &@xgWTᰳhKH0Ș .a@֚mUx:KTy<}áezfE2rT٫+ s}u2J+_ÿܔcRޟ~=&R;3ua}È+$r<}kSKJK0bSʎAfGp!w6{:ld! $ hB4A#u fi{uxifvUi(ћ'9侹@5tJxTA0)B0*--Eyo箯v0%&p30e9odh4$prC]NpJ@ALVBUsL*'QR4 ҝMSJpeN V@M6 8U!EIrYjF{G<7T9[֥nx1ӌZb!R8% U Lvl;FO;VWRQj]!sKRxϫ/-Cuu=*aߢg#-1L%`FXX6$O(UiEI4\$#UOgڂmR|o>jT&npɅ7 7e,j:ZY,{`Bsx='gN>j@t AcB vu|ƿQU+ڼ$uUpCSip'͙ v]ch$Ob Ck-#N6[$.=_uh];V= RG?t&"@!39 T.A|ZYؑ{rro?bX%ݯX\2#Cn|EG|k-seot-װq'Nn .փ}Yrxs7(3: aQXq'^gf`^X&A=#k[1)7xoqwHA-ΘKY+)uaWF'CiI}|ً5h7bav# v6$!$n֤&^媐Qb)bVG ʥÊJNB 0ٕdO`U2 Ω<;LL0q}o>2iӡ9C";~nOuLgζd?X_N8fI~ܔ&ڄ VǚPƖЛ|Zp52Gu98g8i-Ur A&A% 64s~EE1 n&Wd`!+-9jWNfQ>eΟ@wQ$>>,.R@(7 Yw&mX}_JlB*MBNFvFrf 3xň D_-HDCէo`Rۑ%5~IOU[wf65>c1z~|ɷȟuk#.C5@3]$ -|G5 ԂLrz^x O砙tdda`!ogUoPa=:oRV.&{OW iia` ,SeB 6 ]O]Hoq1FI4ܴ&Oc0B!}k v7X"p2u{̛ Js{E997/[pߧZ: hPWz$ ?AK` 4 .Ei\eqe4g9k.%!_K[=z`Db-;ߤFl޷>O ~% Jp&heҴ,o 5r}iY`XlW}yх* D\CtyT$"C< BB>(H4`(Hr5[!,4 ǘYBfD5 逅)5FF%ڣyT[g/jǼP* m,Cܾ(tvwC 1H,}T2&=:c)K" OWk'c5\McnZ2ܷU M\ @?\U/MjʶL|n^9|%̚VaI~!:E1ӱԱtQz OtDx^E=7^CUܠ )z:1@ÐyjR9 E*4pjqz@_ 񀗣$Znw;vәg;}Ă& ԇ~wSNꏚQWTlmAl(zc |ݳ|Z .xpY zZ\ThI ݠLݠ+IɭT >cCWqqHqRX_2wȤ"Dp 㤛`gԳ9‚Ij)ۮCjh N79>mt.)`(_}f\"#570I3* FR5VKŴKFe=5 Mh?2 \5IN<`rG'aP8  uqV,=*:^Ÿ'Z0xT{a#bLhnf18Q6AlxՄIM}\~sXXD`~8_\_KB?%W/8opK7 Qު:g%O9b42@MI.0W+U9KAtF.C"6Z В2Cܶ`]° Ψ:4ЦI/ 6N=]8ޤˎWhZU@=79TQ;b˶&:'(/]/pJ!=p!vpjKzdAZ۷Sљ[)7T!Г~""yՄsI5sO*tLNw1.lO>Oܡ( ) Z޺8}aڟTX (CQZ/b@P܃de\>NRG ߔ*Zq:P9TqU2Te`"!2 BỲ!qb2:7']ZdaC@x_qVVSں2ژ熍]p5<Fi;'c.еyl,J)j R4?BX ><'x6Pp4m[[,{ii6f'rİ9d8RU#Z g>q]$z(eRljc.+צ>e΀dIE&M>(eLH: S̗U4jSAgn=G)2l6 #caş(27Ls.Q̕ ^KkHS,OlcWTDTֶO"&jUXf8H/R+;!0#1ݞ@Cc ̑{$nzz 00h=/Bs~&[YAq&'4jtȤ)b#@=¿x -HҦ7>UTЋRnbÎj`8W1_(:6]:T㸠IhPL܅!]unY݂Q7 (Sw:WyxНT'WO.b7ݡb>^`2q۫ BAȹ"Rfm^g~w^>b٫ʹ Q6Vyj]x^T?F ̼Tjxn|j)zF'Y?|fjji"{]t|EUyQ ]l#׸h\(^?C-wU LZh[(4dtxI^% ϐ~z9 FE1M/8f/? {YLj s]EvbH7!;Eeߪܮ|7$"?"u,1HH d۷vq4y'؜|x/((iӯ@U*ۂDf愆bSej IKG^e!a9Y6v`~T7RŻ`|D8R⽳Ps&OmY7ivgh?4-Ok;VsL9^ǿ+ϔI.L@NYz5H û'}l'WV;E1;TfcbqG҆BI;֬K\̜Š.cla!ːr? /C;`igZSvJr5€m m]urj-g^@aM*~&W:4]þ3feC;W&^è*I$WNX{tyZ/k3-*L*Fs F N[U Q!~عaNjICwZ,b/1n~r>$h+.5,"?!xˈIOT~Q8Q`ۗ{u麰&#sErp$L q%TR77),|1S"9ݘRX\Ayޔ[)Kcp-&\E% Gq9愊F8i-^{u?=4;;Rd9u#͞@:q[H20:*ݵ\{yVMe VװvG-<h((W-JdF~F0&opQB"~5RÖ}Z.Wxa-̔*OAS! sNCaZVUH9$N߄_"0fA ZȶtH}'cy3WEn'a1@4bDe)複0[7\@RQU45gqVquNp|gn9LB0x{m N}pvh o#xv%le,Вw];|-Vv/Q#ਅeJ ` Qb #@Ҟgh54@.j,M]^xd_Ysusַ@[!DpwZHz7!|et"yw5ZN^FXԂ~HX4e \VMR=$.2#^wGl+ơ. @6b+=y_|1/kg8롅HTQ~"S{8:$vR_i2Xoٺnϒ47k|Qb9u=G$W |+pR,5W׸Y7J,LOu7v)dA WD _VwLLthrMhPNOɲ3'gPӄ#ѮV^C鄰db~-<õLdnзV;LqÌnL 4r5e>unh] ^7ImN.6px]>Wy^f]Я\bv~}:3fSgWF}09سX[/"V[Nj"!DDr띣kGH} $\A2"eTGO|}_4< əɆC8;ם,(,xx +aB U[ yx(D <>F8" N~~x _UwLW^ /(PE\8DZ7Zv11b#ӛU:"osgH+]-ūDB>'GuV d0uZ{ #.͈=hTnې|r^Zi Rl&)TEhh#ጇKpDuꂼ hlE/c8jy{2,YL gYL5-ͪr]͘(f 4P$z^>w/#ni_A9ȗ'?+rCsztWuQvv{!BKL!s0գ2mSvriucv ndL0ܤ ^3u%#IS,Pq6D/lj㪯2ҹ Zk4Š<|rf!a/3`Ε#FG@(A`l*0( @#[߻h'x{\V00>Gӱ >5L*Hʏ#WBS֌369?JS<)p "jO#'qZl@cۯ64.B #~"ҷǾ.=n tRPfof~:]?ӂS ׭wD00qj7b}TԦ6Me"vX}>aWc5nccP )`[opL(|v_Ih=wb6DJA1cEυ #[-=O=g#U^WFdV|7kzZ'۹(4r^d 9Ů櫨ҷ{d>3f!\W._,*H7 `VHmU&t! hRn)@۴V"Ĕzkʀy&ߥ1p`R_D'7ᢄל7k`J 8In)CD%'+ "ә34b*~ht@`∲|tpcLy\S.qVP/#+1kp>Fɿb ˸_fd#7R4{BZt* )JKBBedB 茩B%3/ؗMhCa /2`:,&C0wJN&<)g2::3vP1# LgTb~6,Eh,^"FHٛ1%X/Q9XrPB}45!JFE2tܧyg<'mU9?"#FAH:kDd/ a:P&*-vxT|̧NԸp T +;4q}^߂/%AyL,ǧH J4L0/cmCwّJnNbJVHL]-=oqœq 33nշUJ%{ 2|,n?E)1Za@j8A,iW}+bԿ| k{[x .a#{0 Jg#z=Tפ-ʈ&n$' "*Ӵdbi@ms}BE7-X;r}gg$bH)+ڿDIV-Y)&ܖX՚e]D= vZiD`5§@$c"KXQ@lnhҷoT2"w 1[TamSpM~@$2:8cxZzȵ>XC)0.̼Dro.uɾdCMN!q~zOTJgFk;:+(Ǹf*!z<+0 @cbm%`[(2nԜC/ӑW)C>}3f{ ˕@CȄĿO?Th YBߠؙA8R*{oEoZj.Ugo ^⃵B(*xT~. XƮlE:y9 >i+uY>VTCS~F`KXrseI2rL) JUloR|: {;޵o^m/Dc愆|,!.ߐ#(V9C/P߃`*.<Vffr1Ct``.9܌"`*?瞰[jYCoș1  G|{>߬wLR_['C"sM,> uCz{Y!5sdz%WdE셱&GO]7)+ :Kx`@>{(G?=F.}<(CC9\fsQδA1/]k \A4gc\2/d~Osaː&otwO.k8N9>ɖ!E5!Av~goHLO˙&;UUjEf7+irN}ʉ 5Q};vܷT<$ fY];kTjyZ@]Lʱ*nv±WTOvZw&Vq:S\>҄C)m!sw^Fj`A͜ aǣ,9a*-P0F|i1{7L[M._>-!5C(ţm$5;9e,iU Q$ej Ͱ)߀X¹4}v6;hcZmzB *vdF]{QgF~%V'=jx5GIZGy5"ܚ0ByA$ v`(/) &N~XMxS姠_dVK Htst,[MNQ$Ҏɭ%S6ɀٛL :9Lٮ݉8 Zξ9و8&B 2q&"DD`j:tCxу!НweF&SMbX$Dv idY:A1)Lfs6_ޣD.,˧qR᪉m!{`3:h$m-0+Yz> 1̈́ї};twMf褁:܌J=ϱ8)%@x>S80B[=aOn"26boC?.AnQl"H.dU1@#q1@Giq"v.tyjl87Ӊ UqwQB޴f4LmC,~v,E{򁃵0gHCr-`"YR!ix3DyH$nqbghw!ڭԆymĘBqMT3GT*;Γɋw\E^0b.[w ~X}F@r\|O NJY6:C-Aٷ^(̊hLE_Ho䱶VWRb' TU~TutA~DBYUkŁsy}#OL5SKt}xa,?en2޸oIk;ݦ~>˽X;bn5_h{AjA5cT1w8\T.gi SOM}bg}l 3gAG+[i…G>A¥45d p`U!%T<{ms u_4) v~ JmI_Rܶ-,MnS#`Y{m0oOҳkf7PT UY:ۑqyj^ӬaB"Oԝ;<[@l|!ۻQ2W RN++Z^T+زkmM/%\cDkRf"Z+>>Qg~苈+5/K{p9iZ Y57TRDXVc33+܏YpnE/z(h][e{lE-Yh<v/q6aiXc/ 諞Ԣo h,N'JgN +3"Xd4iqMNkRJB7YX~$H6ؚZ<-&XlwP ty) ֓/F,RlzvS<Å/(5~i@it7R}\,dM>HB+$NסK RUZ/wuf%=h<2/tҚc̋M~}d$R)nJ;H- dC|T^sx553{ZlVPQ'ęz]H|s4 gb *E?2Ugniw * $Ҿ' 6 P_tػF_B3cXl\ ! z- i7rbrKFT _U˙1U}HF)A s\Oo{`<FG (3 J 5AC<@ x!d+%Y)cL )rCwyE ť"w}i -4qZF`?,u4$use0|(uQ2#"=#FCwU ʪPgp>I<\C3i/;~>Mǯ)=N#A(d5Ʃ DLgR{3{_95$ĎC$5= k,\`o$j?b$hP v+-c-#?ف}>5ܰ~BAqU0HS ߩ# y}kCN#gs&g@N-"}GrFO j08'v⸜{1p:{ۥiF᾵_څQJnWgO}ZQ1/RWjhԿF&,[K؁0O){w_\ʟ; |W6bBVLF`KNeC9N,\Acȥ-u}0A~Nғ3[`eSx)!;e=J^/dO^.Ҹ`eUtɧKGx d 1{ˊEiS]j/ڃ=r)C(`6#E3.q[.+>yQ:"bM qiCogKcB̫{l(;pmɮ+΄¾B ZBAX)*Tx7O:oX0-Q'O( Dl Bi-C%f|RrmBLx?+zP+fC&BD\( csl% oR niŨJZ;oW<AIO\ )UFzM$7-!z*stƸ8ג&[DOqDD0 K,m)AyBl9%ݍn!\ ]#A尧J2 ~fY!u_) 6s?uo%` I nH ?eT;"{>SiBfZ))(`;D ˡ4ogB] =L$^ _H^VU [ɾe! :Q~y(=rbm{?jz̋ri=m,/;9b"3h b..}~k^^  ُ|TG ϐ:<|׽V:8<ǂSjGfB"t]l9SU+'JX#"2bdTs&t XJj9~7E68zϢ$7קxH>ku A2 F'16Vp˜>sΒW?=;~모p1K,M -%@XF{oeȹ[0ķ/a{*;:U=3;4Ĺ R2s QCB@2S-V= 6UQUKνf,6FD;`#H;hG}!N⥝学}!a܋Bf_7ЛbJ#kf^Zٕg\mʊ{-sCF$$ ߈Τ]6~E)*;d=v3OnѦ5?\t[{&ޜFV~HS"BR8XSٞޥX;OW.noP:Gb602Roȟan3$nC+/1O #jΌMP:Aӆc+qS#$.K[#`boiw!ThMb֘h^P1iʾ⧸)xiyZD)KGc1+@gMM{4[e.YQNW֮<2)90+(~G<$mJ+ǡ˱ӶwWߴMeGիHi]b/ Y Av%9JQ42qoZcc>E#}>]7K 19GmyZ7N<}0ٍ1"[C&vh^ ."NRp\m4a[l f˱1J P UOdYL`k!lB^v^auI *mŗMZΚ ty~ HrD.kak]_HRMӵً`[-3KTl #̓pu=b2ofܗl4qIʏM-Q P4v6|1䯨O}C% dUq.`R1H fsuȘhwS0ם.ӃeSqdMSd{0--㣽>1)$23-7l]\c0fV %* FaT%z/)T~ ~8. *.~NS+Ze8Ǻ _xEjNZ]X&}y@ "a\tJxڝ)BlA*ڝG6c;Jn5-a/W(\xKV #tj'|}zԓC0@jN[nH--;-WKo4YLLMb̑}ޱNЍeB72EB6-v/G"ZjT?^=WŰ`F~ X{7 ͈~55y-i3t'^6BTb1BAú![IZƏ$NH؃q1.W~PtZ+ιU'W ` #QFL*98Ҟz&%zPO;%.\z3z /Z ITv;j4{jo ~)V$៭Ta?W!z2*v7\d!yڕϓ5Kw ju@&~1Q:Vaл(bpE ,u%+m!J~8r4Z+Q%A", ޥ2 T ~ь\cd_BӪ4q⊦SdS5LR0\Sw|g S\TY8$ȃv`*n6 -+2<&>CvL_c)\iMNavhaV}xǛAy(l00+g|PN{Rr.^꧳)ơ yؠ(:ڋ7@KWNFwy!.!\ =eMEۊgJљ p ^.HC"l2ƸôQVF9L/Vߺ`r@fI &Gi~gT :^3a#dQfU'8i25RxvXUtdfRp*Yꭧ=m"r"HLRv1)TFxkZ(格=*z3JJ<5t88h'fUC' ( PR`Feuqz4ΉJ(yIުD׸M5*@F!z]կ5P@%UN_$7(ZUDr֖Qҳؑt2/}8No!SY.6LGvv$9-c_.WU$a| "A+\9Se3oJ59IÝ9,&t D]$]. O?PmE(Uʈv9: lKSjte#/(y.q|M.EJsžciK\C=?NI2ŏ!B%(4DHӭR;y^+~86)NܣЊ&6Y1˦Ǒ_EF-qZ gGBdJu4cR\(^!o*JY.`C/T1K¤I& Hn1#iP`fB ?`#esM3vkÖw._5k5,G:#XVR0!$j4[ycVTB-Zʒ#„p u3zU`AT*<6}cf*D< ,m`(Sv;tJʩ(qU:ˑF*#X},C~|T8|>3N4[b)ʊIR(oqC-)^?遨YW^( 1yHMnD}L! Ox&ҽtn!<d4Y';N]D0n섹U~Z%m%zV̟*k[98;Hsa 툱if:;rmз}*v2SSOh5W1|gURL`w; d64eJ(\='#8+BG_P/X)2cR6Hc5m[(YX|yGDxJӟM*/PVr.3ng Kx(p֮g62S) ;yҬAr*qP3Ջ5Fpׂtk܁&p(0Y! +dD~Wdzۻw`6ZNX,P _tNCPlr`+#s񢟚GT!QvJnb VR?,#PfoLƗC܎;/ÔNXnKΎZĐ`7o΀ry,wJV9h`!ctn14 ZJs8L +1"O!Nu"RFM1=hФ:7׭?O><)׆z%0?a(tndAkOz͋~z/N hڊAEoxKx(8Qiϊ{f4<2W"PĴ^`:s~!oFG: ؽX;^E׆bF2 z%F6샿Ff&Y_p#/BlMf>!gp:2'2Dr-:깱18oUm_:MOOxGy˔Ch=#խ5*ue}W9!}x[_PuGĸU'ưldFƆlZ!8)L3f*j.B:ňrk@`y_Кx'eL^̱܈wT\^ֶvNB}tQNwqc<݌ Mα5(W+ |K2p$@Yt 4s ʪ>D S;#*Qɺ[3yV~YNo]vƪ̆+,}D\~j3PP (9 =CAy\yd A u(e[(sN*gd@K7b -Q)◍$YO&귕nT8P_*)Y7?{Hɿ.SV*x+ufwŇy?tgO~74f1C;%tTbqM%I]~i94$k(J ꑬon!* +cR*SE"!v*dj IMqcभ80v 9T`|䤵)0;,\#w:腎F%\ێO?;5 r`oEg-T1kcףּ\(MI.z{"6N ]z^kp0a-F=?f>6vRf_} y>!XS:S2(@=X\=? %7 fOک:./JL;a=}Y+>W[ƀT饺S2:4tQG 9L /?Ï#㍫T4}PZίT‹y8%!V'0"EJ|/tȄXm) l6$}DV{ώ6喖?C7f՗jW:GB+H,eZrbmCnġp'%kx|.ST@&'08rԖM.$'b`i$R6I.x{8\(T;$xw 4m!Wuij\NƱfMB ud1Eȁ5Lb<Z>,>Rz(|㈃i31fg5Ԣҍ?9wIOS zg72xOօ; }>;2X'9ÒVF }G.s_ܵI%=}O7B#XGck_)rIgYaa˫Ҕ=B-ቛ8aȟ1:IHt2f" BXAHMi) ;*e U~>\fpU8YG8nG@1Z)b@e*)8ͭ#˅%Fϻc6inʧЂUUa-eO0%#D$Y#X"Ygws7@=CUQ_ ylo2$q&f/#3P0wZc vgo9F:𭯄+JK6CGp}4:,M{DH|qrΞI]Xns+‹*%9q3YEZw:?+rD6j嵬 >v["8ϛm;ucUR71d95 W7+M0d+MpX&-S! *\r؍dAˈ3<].n_ȶ2Gv2ޖ2D6-oױ;\?S0~%]d}ͨӧ5 e іZ} u߱ j%[Gla9ʌ酀ձ^LymOM4dІejN'W=e&Hڶu7D;GRr|dmf48RоbY8:⟖b9H%:V/a'zmz;Glje/l5Y؜]N꜅N b `UbV'O\@cv|ܠ׿]#̹%|TܓIHl %EvO@+(FI%=p1lꂿ!:^݄I>@2|LXz% P?nɰSJ=0HJzsa|g-ySx&,9eWpdZđʹY_[$y&+BvsneH,*D6[>/\߅'f^xvYduQ3,lz"w)!HRbfF(mz,=.1fS'h:j)=b~ &(Xr#Z׹Mq3 Mq'UjN, [Y qF.#&c$D+XSwuB][};T}X_l~*u(ެ4' BZ]tڗAϪZl[7ll'nGR }):mlEI,>eRz**|o.#ڽ]! XM*u|{1&{FxJF4dhSyr+%Ie;duQh c_]yQ" H-͗H07㳍DT*C&nT{Է<2:yČm >W@! :֦z׌H[H4jsw"Ō,"UhS|)>j]3݃)-U&AHώt/WAm"'pı1 ^<T^雱dY鐒5 /w K`]>]1aˬI;v,Iס{yF+΁q#$.TUXc:śW2ߐ҆~ӗfŒG]+Ńn]{MsXD%*tfgW{']|Ugtxpx<:#I) vs6*> er >Cզu; $W #Yg/sAGq ;]|$'pg< #~YEX8ߙW-Q[~xB A`&l)nPMgQo> a8T[K0jI5t}",KqD/Sf2d #%4h{Ѐ̼Y;]:O?(JIe4N^BRo/aÁ:g cW.)#u#ycKcF[ l<K>"r1B:.1'}^Pjb-:% : D!3|K& J 6A3K5$@+RIACH^drm>8$Ɔ|z89ˡEw0i$eŽh.6t)Ek &S"qvoZrsm_ 1V¯A95DcފLPsfQ#xW\u^5mr_Rɗ9 P\N!eu2uRF,X?pIi`GaçW*Clőv5Jp, 9=#~RmB7(ao2uJ)\5_镠wns/*s.TaF WX^s~>QA%um@F*[?X,T%|5C΃)\p>n 9H8¥DZ l:*?%V8 (dJsN?Z=dص}EE;SH0T3 A5~qQˣlO&Z#[_x0)!m>v%oz攘b[g%`{h\jk6x/f gCix[a{?6w{g3?;svk f(cMĢɅ̈́,L]smq`THJ\U)X_rXaB/_ZSj4㠩!A\F-z ezG0IiA'#Iv2ksrK"#gS@4>+Z`23hϾG>I3FM]3őT{QD3UZ'.E;8,B6K1=[ǩ3 9j{ܔc2uJ=r{[LRbu9/?\.Νg/Lԋ3's$GZXwk[NHrۀ@AKܘĆ{X*(V}ОrЍMm ajoNn̹lpܬH<\g\yC?w7#1JMa=JbQRs9w RGɦ"bC5Ppvv徦|jTyBR7>]@/=o<'>%u]rEדPb  :`◗[p@hZe6,Zӗ4w ( ϥU!/V;N&-/OBCnRAMZZ)٫V@M7+8!'u2N2F6VNf\0*p.IabKm_MXJvc"&&*`6k/}r|} SZr&;0vH+/RGZ#@uLAa.uoՄŽ ¾$WҚqE˶^2,(OTNlyms0X-l2zOKT)}4Kx4u0NQM]b)-s ]cT}M\s>Dě@6bN\"͒AQR%л·D _v.Cnq[ $9 i °9p=auB1|%^A~pn+ԷG'kS4;T2HD ._k D哎M Dw TTmb]$(Eu*)&j3 v)qT5.Si֔~#0Ts=6lzU$L·h'C~" X>E-4g>X?h51o.fYj#hC=@*/ux6o0Ұ|m~Ӣ!gQN[nO+v`"$,@-Rc_U&$4 x]&[Ry;fq7e-ځ"*ZL|E$>e|5g#Wu[TrR @(F"$19ChL*y 89@6+0fw <2{0o"_"7U}-vR %+V1?k3?u޸9@|ƣIQ 5ʘcW*;8kwVm.},sO #]# ,xdyXu0c)_/ ]Zu>=h@P2$ɾFNse+|,7 wPrB{.RS gl?DwPd#&s;JLex0kR+r%ax-@=zv_S&y&ڀSOKd? ErA`* ihN 2t3W$1aB~!"ЗŠP  VbJa环X6?؇ :%g]~HvK]cp ̙υUk\f__ۣtpC0% =bʏpG(KCd]TR&(BŮ1 veͤghyV}32J\%'R'fʩ;݀U˖ E\0::j|mX/:?V{6s.7kV-7HXQM"`}zqDPgG 'n Q" m[&1Iݑa_e5 Kj,I3۞ a+ve~޸i<}z0XʹrLIeHgB0ZhVǥ-]:;5 H6gHI&>Pd;Jʏv,XrxSR\*p,Xf ^Q7mpcξͽĩ vt+l"ZA6Ewf'-24 8*1+s߫c{΄o7]8-/ ( ߫GwIT|U| #ߒ5h n{u.Z Z_θ'js5WGe`)[Ǜ"|O9PU-v {?TXͧu͗I ń ^v\걓ם{0YvҮUV5)W_le!w]!H.Q(e墑_b<D4>XIt#"HGI@ Lz%ˬ~ .m9 }Z.AFaC䦒gGAjEz#6?J3 z$U15X;j\GlY֍]MxhO>cxޮmͼ"IhDpd+vc&:+?z E'v.+Zj{Jpw7rm?7F%F^8) f5N 솝?>qOo ,r\p>mi'.b"2&6G2飾-5E71JL:M?}똗ZY \E˥W"H3 uYtnMɉ,֛8\I,Y$:B`*,Ο Ź,4r>tzl)#,j+š^C lI6_gLa=Dz 0_hӽ6]%w !R 5Qmd0gȜN4S+~mciF 1 ] seJjF6A7Cںkҿ7 zۆd#ѥ qy$ SIF  :͍afr[S %;cl_k%jP;P|u {2ZscE^niIsaɃJi3ɰQPw7#k Rn NТ"U%!K]{P~"vpNx! ػQ{`q%qFGV~k3a_Ib-6aHpDV{"g|SS) |uS[z) :C1]G #Mا'Љ=]|NQpOs22h=,ӓOT֚mXFClzOU!m +Hj+@/[h@S {ʵ?U暣@r]pw<|4֗2RkB fk0; ҧPa5,S՟N)8V@ٓ}O <]FrvȪdl"(gL۫>dS6=yuFgY8Z{"-&97i+JJ!ĸ>?]zٺb7xO25eW"LڭKZq$CKB$T{ح8x ˟f AשX;ze"5+k5*E H?XOښ\R;aIvǶUzr1? 'HV tn D':~0J%RshL> \tHZ*6Y;jNu$[Ĕ+Fl,o)$CQGwy$3,O/~fp&iI8ަ,c]=쪷Gh>1Di4jJR֫1I$'RHxNS/PD?\x?Z;Ph, Wv2/=ֺ/prb b.ų#L\NPA%x I ^_4& 'I W]2!cUHPYuQ isJ}CPIyEY@ΰ5=q ` % N#Jm]7 Lx>:dcn \YZJ|X$ltfc+$/r׮š:%D?Wx48*͟Y+&ZS=uޟ/wK(&8qxX ޸o%-!#YM|\Z pss#+o=URKX`|cBcv1E7Nm0q9,ta-6Imxo jx$+bR+(͏#f' z ~GG7!̱ܿ E?׻`R tNzl'uMٻlCu|J_ԩӌ??؆yI}8chT?E gN<570(fpD[G>‚%$> j]C%vP: cj#h1)fv.˙4X;3,WlMk#I~ ׀9X>ly"-M&tX5$UQ2oNɓZAWj.{I-hdC/P x/3n.k>B}ɲP._v%KȤw$)fS-<7r(u&BOoE틝ݢY5\?ޱ0n<@8PJ_}Zԩ,<\;՘p2a,ok5Cۯ7wQ%J _epKDϮ?즰XҢ zuOVV.'b[8ۍO~DGEh,ȇ2ͮnFEFS%b9]MЫ(%káXgçm[,xPuCSO36qOn8κt6^{/Y6BD2q*}ۮ ώ V%ڄ(Wp!âZ$K2+w2lO_PGR_:ǝ+@\pWQcXl׺̰L@ӜJ r=:8e;=.1 FQf,qU-uAC<72-Ὲ9ʪE}k?h/pnu0vFp쮹,j[Js5ezQ%iC6%7.(Cc]B:g\afwߔ>L "]g3ALQzKao.@qQh=ޓ )z_܆;L ů 85k.<l7rӊ%ŦTK>ꛃ%(LEd׻[؁\NWfm"xhԛHpQ;pPT!1?7~yAB@}zTᄋTb҂$q8]|QfK 0J,gx~ꣶ%̀?&"+749 %V~I }F~) \xMk:e6s AUF@E*[ )aDr5 /$c5d3?*F To5`o<=S|=ͧ2hq<86n{{O;EP('ka"Mz5R8QfU"1xLxnKz~]kX翝;cHK5AՂ;wxQk|()N-[8 "b 5';<{R/-!(;\c֝e|gmTnax˅y͛7@7&nE)Y.mM^ؗIgɒOsMHFwbi)i)jkA:D"Xwb飼34-qaYDpj'7Rr c&auߝMq2HL:1m @I?x'a_ڊa}Ca4EO\ y۫Uxg`YO-Ө$x.:+(}I% \ kuOi~HEЅ7o qW&L*Ў= I09Z^? u iqVQ|qSE6Fj^2˵|Q׸F;Q=UY%eה>띫czOř`vjVj'ٵFV~b۳R[&jkƇn 3ne,g0ۍ4lZRXmdrId ֿ4NC1ܨCGSV`֗YxN.m^vΎ{0Τ&+'ĂЮ̪Au>7MNZ` Ev) V-V~no3NCGޛIJE-mַgq.3S֙mW(z; )MV70lW؄zv3JJI#/d+ݟ?8,wdvJtYiݝhzpzͳ1e*t p)I8 IQVwz<&codz\p\LNi Hk碅 5&"dWJdG4&$ȝ}}ĎQ>N_ӧU:B=EET8d]%_!JaYڥ LLQB 93f$=D=@txcbc&^$  b:q:dx=r RxoJm,&ꏫ| ?[3e[vP(&>Qg RƆH S9ݢ 9MG$dfꍵ ~&"nj-3j,FG>i06b3Ё/$gOV%77z >eoxm4|)& )f/Ν<Ϩ:ӾuG@*5ueoroJ*"p:-*W8e"V}mn(ˑzρp.\dEe+YDqBc@.纺 qceOJ}19J#{ͼ,s_?^471'h. 8w !-dUL fdzDWPv*<:V42NV~P'MuѓP.ݜIkj0A@CEŘ(HP͠IbZŊ,Tz}\So)k2G^ܮ*bMWQg?҂L _5GvaBeQ(Q[npj|pDU~O}g )8CQp4t6 Qist~4Th3n m+2Il)DIUDn$ٺ2Ot:;3OTV^&vٟA1&'\*+%3?6!Yn$]7h&s<_W/׌&[^Ӯv1)L@Dg{=4R ۇ^ 93er4Sߔ!?.YZf;ɢ}3t2/nynGjZ5 Sb>ڭʌ6\Q4O+t'['=%LJKjM YeFkqOܰB!sԄUk߀4 8,r2١/0jHKնcR'K? lh(1kjܞӓ S+d_xI_1j;BGz 0D]fz!tE rUBB֣ QTR:snjwJ"N=X?|BS& ϪD )lՁkUA2\EVbyҮH?f$Sa͸\5a>UQG?j AR6X{8~| Ր4<,=Qzt7;8+m'DSN<(+6:)#>cN9WA紳TDGXBO9xRS\cߢOs*chD:xpsfFVF(p]@1P:fBU- |wuDAi+tT:j~[0Ӿ3`i%wdB%Q'k*PVt&]C͝fٕQOtn~7FL9#T[l\j.{ڳv'c Qv$X)? iHnSHB 0r ՝UrFMMXw]ߜUE(/i$;f{л/)K)!+1NmU ~J; GSUd8̿ ++}+cO$(U;.,UgᄨJcEbr Jj#/ l55#4Rv0Z‰˜fNߋ,AwX#A3<306KqiYdQȘǪ48rϰ_#"[/%+dI%?l TuZw('sF̊=ZW7G5~MfB'xZ\L@j2ѮNoI31a^,X3jϦi |Kaw;,iqQ.渖_鼸Ijm%`8R+l4e3{s`ڿ( * b0<8RTU֒<x[1b.Qɋ ,$] beoڹts$'xThkdX}PviyI-6?!ȣhloĻ½R'~"5ກg gp׷ ;{L^h(180Hb& G#Pjbc(`r\>j)SK~?ј)jΎu%ARMǂyftZ[8M8!Ÿ{"8BQYlekQ3gd}V&MAkٚK(EN31%X79T_ _n~ -Y1>;D[5fb*lpNMu*ʈC/%K¯fγ[# @xhFe.}_߈]~Ϟ5T(t"klS4+^WgA^2TjH.Ȓ@9w#)7OָšnLߒSE I;Bj!/0|ޱ9q a7zV#wOX{Zd+ HGWQK/eaJ/lO$%9p# 5f)KPOmyÑ15|syF}ws p&_G5a,>\Em[z"CKHW| GMk"QVc&rÏ(K2(xп>r`sfUӝ6>˔&p+~_@tPBDT5"g{ 9L qםzحQ`휤W8ؘ'~.`|o4An a^ILؕOzi~?-zh~߻ݍ!6f׾k#IQo1|0¸)cl:O@Y5JƧ\΀P^OjMFn]w0Z4YUSyd'l3DY#P1u4I59lM'*"w _24iE7 #ua()vaH֗_x\ {g5d'0`2iNĥ=F7̮IA)NlQzش)7o^I|[>:,\zYJ,ƻ2l:!G;A$&K_d* >[`I^cBMROޔ10}N#ak!3lc 36׾dFR)`|88'ȍ,ٌ&ulzK':'R%g:SQ#sZdgl?fЕfr<׾.SdNsY4a8}8.}UPuThM34£ErC“Um7v I7lbdJ?72)Nv^G Iz46l˚HNG%P֦lAyykɲJbpL1M_6xZ= J8;4XO(E(<Ub5]Խ@9cuk,Nh®~A@H9K?غ!HOb0~i %`CKɨR)rmw@9zy)WuabIe#w`Jh£'$&- Wi( U]/gVݟe2$ҩW86Yi/B@b>BicD)pV]mo|Z3_f)H^Dݡ Ѱd&@,c]]MgmZpRyUg<_kv$Iפލ|ـ:GK@襺H݁<0/@:@rNKgBɢp]#ta^YJASif)qӄD_{Nb;1VtOJ¢98eYP4(oj_/wЅ`ljh}Wƴ>k(1MA85\FfJu#S: oJ ڌu~)H )9\\( ] 9wr >AA9A.53^DFT(${(2NJai̋x}:C(Ө> HT tUGzTU+*LDPES;ʵhGU!]Sj ~&|KØۢ e1! @×5m,N$q: 9ytySm049T"<z `JaC^nQwB S'.v3jȔzb qDSمH8=ʕhmHL bᒮgYܘDQnL-[- oXM~]92k/1[]U&뀽rR&3$cQ t_vp]]Ыi 鈝ڱakE??ǭ0/Y5=PI5R:0-ģb!N>0J|a$Vޫu>~h:w> շ8/^w^CɺP Jv  iB%z0&\q *F 3δ1),Pe~L/]i]j'AR_l~mҠ8 뉳^;5J'%3. !&V8hm=5Vi |KNo-rYn|Y12 ȞGS:$+ZYc+lkZ*Giu]m +W<"/ɒC, X!c` ] oNZLAP &S]tȀFOҢ I]@QX cZEA%"s.HIOyOa["=;?B`T%RTx\j y.9GScA y0F^ҹɏj>5~|NQaQpB,k |婄ܶo OpĂ$͜JS7}͓̘=eeN5 a)>.7:`JX+.Qٿ=朇-{_ͽ1 k-dtKJ>-.MvPR0: ,uPGll?iqT_t}|u2h<4rZU7ƌQ">1B_~ypHj5t3~:V6\rkQn<5"JW|GrκTd}`ܡXOԅ" HDgχ~|+o46[23W@{|EX8h!{@ZSoMM]ݭ&m͚u]hxQGضta@i~ LT– kLZCo2 i&[Nv'~B>S;lHСcnd&wV}JZ>!K'v*v/.J;O?& SzЈlu+/s\RSjEKK2ޔZtYLWb;DGuO?B# 5nf̷>Iq뷌HwJ|6j?rib,w}޾'+e [gW8w?aX3U¾gV~ޭ%1c}:mOf廝9E"¸衊imp*BF)iDMW =Ԏ)z4D/{A^,qc`&qDPmgt|mkJ(|*٢טo 3M+TD * ؝/{~& VQ޴zJNZ]~5aWf95iusM1 { _W ׊UW@4͸-W)v8: ^!8ЂفM](_9u'1`,VQJC'LBP6>&]#cp5CauT&|khU%=xv hyOJrâ|^lDvfD9Qz~m` DÇg-*#S<0老[Dɦp#GGfafyzI;}Z@&wQSA2SL 6hbM\m'NÒ''P(mcȀb>$i}o)S3ԼXҭ/ڔF=XiXU1+%T`rapEn"QtALcS[W[[F8(>NleGʱt)k:uo+͆1hhU!-B1 R'~c]9rjڒ걪4(V5)Q1!%h\'t&U p?K}gTCj?t.?hjW~B<5f]+WkQgԶ$Dp\Z }< san`((mXoz]pС2FlJ2PX]I<$H*!g\ m[kQlYǜOrT1zyvѩ(";BW. -FOnuzy ]tʶ2w XKRD,[@X&X`5lD:y`!y}&7^t|~,md ) Þ;^,3 2҅=앿 knb~Jix.cvMEy\4-(q! 3`Gr -fHCXRľ̛-:|3:oys"HxR`Z+hW>D/ޛ}e{fԞ>*y ȫü!΂DE rd1S~j3k\1q:8ĩؖN{>-veͦY(▏ŅdCo֡f39 *#aPJypF PG܇{i`;KZδqЏNLd&e^?ƶ(s楡nѬuGŚ #ӈ;[{? jĪ~]>oIE %=v}-@ sp8 7ז8 7e!)p~xGJNJ'-f0'} X3?# 8ȁ )kh(-'i07@$d{/:8-\k[`6iԚ9p$&\.e7̥cH7"F5QcFs(I6{ '8s *ڟz]~BB=Ӝ7L-&E4uO [Q3J۾r]hH=Ń2@TOj;rI=Mz^S}lq R2jN_{X *zn<8MK`2w:nIGXh|$8po~[ftEr,1fʸmbir2;.ف$0cYr{tb Pa7G/ш:xfꀉ]vh{`_Hs~lψbH Ufc(=`M7bYao?n Ǻ?xqkC}GdĔ&Q8{ NJ~>ժutW.N@aH!^P$Rs<͒, LdퟒpƵ9ZS_i]iЈ l(REؤya{f|Cc--\|ubԎO&8nอl ORbn{OZs99Ta-`(l+@`QZSq *r;xE7zqIN䆨y>I+ԘaR#D ǽDpO֒g!S6nG8~<-܏k# yQ ҆gSz_ZD?˾jӪ$hra d >ta^T] XeGP,۶s yF nZP~^12 hƦ$kx$ ?a. j6 <{lp"^[e쇔;5&2-a rvZ8]smA3q5WSGe\_C,_\\u'#jm}筓MU]5H+friUjp̿FV9wf!/҈*%pm~vU[=/#M ӈuvꤺes\IS:κm?o3=+AGsu[{Fi8ReJ=yAxOȽ&-4E i5M64O?gu1OgSS .m$]A~K%a 5⓳+/2s#|aXMKS -HKܟ-5k8'РV+KP yN`&]l척D )Rh9)^nOgV@}tsu?.| wԂ;cwikL爨D-j[ PM`*Pzԣ,Q4Y,5ʤܞ=稡A  Rt==pT7ײHj)]G\Y/Kon}׆"v V"wjYfLgpB5ˡQ}y&Z l˽fv l?bkh0 *c!CesGY*߈8eE6N ?U5ᛀWh70/{P[sio|ul뇀s{Pj K( 5Y^׻1VHV4Jm%: 82v'We8~H'0@zxf_ Q߷޸pL+9F V>sƖ-QLcY;{ƭn@46X4 GkT\U,Vvp:u)4# 7wO!"Ȇo,ߚL:uˬ}/n#oӻt+o-̋3o>Ĕa*6އ`*|M yjQ -BrB;nx"]YŐ@2p̬R@OCˈcAmSޕJC aN(y(!ڪY/kvc8wyFx2xLҢ%Z@꟥3kI}Rx^+@V^5 BFvΨVc+xwT 节}X_, ~Zqi/Wp=rz(O<M/-M;S->cIeE:Zdʶn mT<D4`}t|N|WyMkkq |͔+2<?N}f] 8eWk{E6q`^uU(*Iu:,qAXFFDp 6-)ח,My,6_w6vA`^YEmE j"ykivC`EJ+Ҷ6}Y< ZƇ٘c=wRl۩ţn4}Zn?&Gŗ8c|0u!$T|0q677,!`mٗySp{kW"xi*U&ز+ ǦZOD6YEa[3U!3}IIăQ֖r|b˥ue 6/b+"lbGq?;M~խi۬V6r WUb}~t$u[biI[a3pn;\d)g6m@s0;rogt`?2qP #Ɋߌkγsw-$/ _ՐD$BaI^$y0I.Ii]e["=_$+X0S]\u2Ȥ$B D[NCѪ/,KI2\E)qM"q, aWO+쾔Y R;+rnߤJZ>q'k*9;~oQ֟Oo&AQo~q!Üq`5V$&%zoubd>µnҭdzzJ !T[UIHjgNoϻӡ_ZxngL$;Tw`$2(paEC)zJ0wHUlZYSpt~䥉YT[鿠 /GG%ވm%HEWi#Ot[* u~h.9zA20} Molp܆! wBF*jPv3Q:i߇Cq|gDFH/':MjH{24415VI,T.Ie(}@ ? %Hv%ι^WO\܋Q/P~yF zn=#[xkLtmS:(alKC ħGu|,8On%OY!ogk][z;p:rtW%&Na * tn'X(k;[m\ Ƚ잺lRH伧'!Nn6@t8GJ®=lFs$Lc-d9' g#!(#D`kB~ݝ'šcG3;A;@:jyS-봾%mXvp9 ,gD S3{ ,ug_8>$ȣe:eOXˁ)z@h#ᜉ4>bVV{(ͥ2`?Y/Yj -+f[݁V*;b.]zh0XAH8d[m!y6PPeN./b]_j;b~yf}:)'cԵڽwK|5CV M +q.LE`ga[GI[5?0PcQRi?ڜxi7|w3&hz2w+\H5P_C۟ly" e nKp@N2@tǛrLݴ{l_+Uf A 9>*D,YM[rm-HUgn#Q " _LZ-Mv)b^|?4tK2W$Oy@)Pq;$#32~ a-Q1F*>3*ڴ-3zdt7HF= =Z-EG~ʳmDfjͫ@\;j=ym%L w9Y*1>.,V=\8;ֽ%⠺ 31av&.44rtaqb JN[65V*|Hcu'y5xVәXAP\|4f\ٶJ~ˀ+s<4V=PzZ$OxWf[>QAX Dy=c"/P LhrW" d\`@whcq{߁T&١֎S//R-0\r_=KY<0u_A\"afw]b% ߿֙k^cN`YT08f_t:]GEԒE}:)dx*ѱcFR0YaLL4 ٌeRGP\ uUm{9ŷ8x[/+}` ]Z`JcZ-:C 5ާ/Z"X 7+|4%oc~$8},a߉,[T\vBӂc<$Q0vd@fz"|©WޘӲٰcdڱ.8z禎kZJwanW¨VUo[;u8:Dʾr 4 Բ(L'HG4qKZ!TUl9d6WgaE"=^ @*J s4cpG|>_bې^5(}x9*c:~kQdutՊhS}HР﹙XU@޲pJl)D` . &@?BwjT8@Z&' 7٪UD ։|}' cIcCD"oa5[bSR ʈ \wO]9C`/ _&fR)sv'AzpKBO/;j!ari4{I[G!q)aGwzڗյ060B/j?}_jmg W`ڿ? g~uʣaf>8dkv 2_ J.D:I1fLUs/׎m HK;:a%DԤ᝛FcM-?QDY.wbDž^p- Y4296~]gp{ [`Ds4b$`:LZL?}LoP1:&kR>ݰwl|&٪qN;3gEQu={)([ LszDn[,𙻭TBŁE?L)3L¤3)x/D5ijmLM=+lX5fbZzn!pk1x=QC*m&%`M_Fr8dW&kކBøP/Xr^31\{/-mȌ^Ȼ-DqQRZ֠6C3>zɕ3]m1Iu4%_;[DPwc츏>|;=sJtzy\ \B;FPA 8ZXRS7t8xPr;QPĢ aiBLF<pQH ~rNW`zJ.߀ u6?m]((inGNx.MopMDnCU$$&E<*8PxNF:kGRy~Zw?Q3[Lz6 [ hz0] Nt+׍oBfA-Y a^C"̲akjN!j agCm`)0.VǨW~VVs-G>Eg;Xon&}nkldo0K/;^CbitƶJl~_`}w#5vGx G.<":Ĝ]!|-{@}o (;#Ia--֜Fl/Mx$2)2 v'_iWF>D;yˀeJb۪wԜP*o ֔WLZ)uƸ<ֺ.20BSwT֏p"ו%6y:LX x zoա|E;./I#5~98ы/#2 М2Lshpf\xf> GW m.63q"z%nR+*tku26{L Pv<>dёpPo{|.V[Mٚ*=Rri;O ;z bz$l,jQ|C*c_6N2<>w8,j֪Hl%d/mlE5Hy>LoN,aܦ]\ww/Fڊ JrDCEoAM.6X5.D{Ru1v`hX(h;˚mQ__]:!3;rD TP"J"ÄAx[B1+Dj }ay? Ŋn1wN qĺB@z- xKA@7hfǹg8c|Zf0bnNo<ֲ_KR}tgƀ$ѰOJ" hVa4n FvbZnY9i:S@sxx'6zv[?]KJ"rG aGbkd꡻kXȶ$Lף6,l׍~_wvYqd9<P7Tsߋu1><.0)X7gRe)ݒG)H%y[o4waa{Mh%>jT"|yc nDF ~Y@N\Ur!}b1߷'c3DzaY} #DƟdVqO+'ͩt/zg`iNcbH@mshTsSlIahˤxu])6/vu5Yxߡ6і/b&-f%pDﷷ}5HxQߠ*Q{yB= k7 iFKkڒqR>z]H.ӳ'~ӖLYuaAw_q ߺ ~  PS k@=%]=h(sZlN+/7sz2r7N̕ ?Uh>x+!Yg^]&ђk_ a|Sj'fibnD?Cv $^(o6Z%MP/1Wd b.7*TbRp :02P (lyo3s@D]vE#^+lo\z2 @4(w vs%Q$*a4s#mGAѩdAWP|7/IE*ȜQǛh~nA8yp+^p 7%eH(G/&y~iŎjN{މhvP"˿uSMqb˛AһǞ$\+f>Dn0QHnkATH d7"jt%e["THQ_yS4p&R} uT58O8Ĉߔq'ds#r)`^t\•(3"=<*w6!/g>XZYT 7G\UK uH_6^e HK(;0keK*dzBӦAgJܜIc&A^:">|↿r=/֜FZ8WoSÚ O]:_?yO1ra@R'fz7`i܀皻uAb͋6ع/c w8fCuP#hM}ȗR9tt/s_&6 O12--dghʱ 5b-U7tpn+JT3W= qtA CN3!pC}βPޜALe˗m5>[ٱ /T;h$>iHcZK>胵p/uvy5Yޱ/6|{j3E A ~^[kLG6ẹr .ԗ^7]qtcL|U>a)1c$%Q4 z 6m-[2_~8u! {ߕCOK$7Ƚ<} j~uq-KՆugfJqe]SOa'; *䲐fRM։6Rv?_v3JE66YYjz%p[픓G6̌:Go=Qfwe^0|)U:2"Qb)3'K/eFj ʛ]zsɴ%6M1'~”K,{dIc ۇR_Heo-Kf ]R@MhZ6BQDyljV"ϧO'#ؐx~ ۚcN4rnh](*L}[Ne5_S 8ٞzQ1Xu$1#0}sSUDĐi/`QپS]]ʿ6I^: u@6O4-Z|^_Nd#7W*-MZM^m؟f>NTtj5%Ys$"1Mlڕ/0jq}un+}pBG'.N }1Wކnn ܊h;w4bO~HOqM |I8ڏuy%VuW>o)oHԎ "bk}"žB zE`a 8 iTg}5+l%^|&,ol IJ{S>UJpOϝ=F9C >M/RZ :] oyWY@ + Mu%4%-"䛁}v g=dW.s)^|}OL" uWB\!*%3LGzM7kϵ0."ݯ0H!2c&aV&@VrbH!Fpn#~Ӗz+sD(K߮29:b4iUWj-fzhJEaeUx$XʘiQo(K!F{?imhxf}-T_Ak\IByy\#Γ9.pI SW_# t!'z~bl,CǷW`-VC6%Ӫw)o ΎsOΖ<2ߺIDmqm6]B)ИINd;Ի4GtCQzWCBS5#:чR"/z ]}*y{>"pPY1GZJv:88qOD}~&\=S)Y]!@S@/kT4a3@x; 2x OQH1 žF=wZVdg&wSܤ$b=6ZZ :Jf%s[fSG pf圜fԯQ֐u&>з(0p嵌( IЖx:v}T|A}0uY+a9ӱf:!Vh  zkmjceWr\R\]P !G;3G 6Y7 Z*gZ}H#|ik^_hrx;Sg$_=4 V[ WP'fLJvd{;mi=$S8K /i9"7tuhJۀ, ]6D&%\ R?gxk_ -'Ea lu2Rpd43тl ߅*F H唍Z8EUZ"bٮE3L?Zj_DEUθgi;rY@9ŋrE052 _=q}M TYyCoO2VsVzO^8^cY Z>d7躍cƫ:)p";]jkȐ޷rFDM3&xLQƏl~ܳ5!1^Ԣ( ީt B%vT@3#ʰXLO?Í) ۛ~Qxk(m4Yc\'ݏLh ^!.R.1|S: BbʷE% >֕zJONz6&xKP9g/)^A1. cMζKj`a@˄q&题s+b)FʄhZ+0FH%)|($ޡk>ZIӋ%ןwDy))ز,ohn3h[NAe ttֈ^1*VeX.Oޙ6?AsW+Lm{<+ӣ}) m\UPK=D+8tUBv jpnhhVImns]BP{0 ECtnKrE@\}^NOP{x*hNW3pM'C{̯j`{P~t!k*J%yKI ɏV8%o3aW47Ŧz/5眍V <#Dh]}Ě?;Uߩzɑ;vck}pbFY(%$, PYҴ̅_ܢ84SAF@W2Ol9(;tyawڬv_ oK g}BlK bsA5?6";pZ G;9Bu2# Uvi:$s15w~iV)aVV=+Rq*־uɪ|K^TY̆ݷɓC غ8Y]o!enjGh]ɬ63S9B ?~Ȩ_9Q6&nWqgkB' 6%Ŀr@ӷ2wN㱴e#F\ISj-(~m|̽IPȐgreד\Fys׀khaL=6B΂(Q32% _cO%E(نHҔ;dt@ϭI!@^͒ano;@1&MB ;`UbaU j"&kK\My_57uԵْMaaEAME߫s->1e-;-XfBi"%QBO6ˣ&ցă0 m‡_Ø2츄qlIN)X߇ ̦D_V{Tv6^5optM9 G]ƅx}LDi. ^ 225,yыߘsrl WvlgB|2!)l*\]uQITl#adZ_ЖQH$I8D[l3#14_MK0%[>8rN/jTBThTXJ'^,l!X|j1ğV;&O˘. M?p"!;l)Q>_մ8l)]yȜ@zKSUN`™uϵČ7?yzq@Tli(k #T[@ʬ:ksNW0 }pBʶ9E"N+{sW^ZPZ NqpJv ksk`?؟8h;qMof]]AK%3L#-́[ Gta"R YCi7k(%s\KL]TV߃a폤t+o["cղ\A/ M/0] UIt84_S+@>"mc\m%Gvf)QT>nat]{/ ytXߺoc7٩\QXV';J=4)' Pd6q,\+6%.: 4gSF 6%I%L#J(HԒZj\X2K]n(%)oQ97_ SL,2&b YkgR=MaN cuOv8TEFG׵;`΢RהxUfm FT[]ѩNqVq&uM|L7Lnr]hP%DybQ8g]3S IU'Oz<0kPi\ "ҳРIuô?gdxdX_ ny۴nrP^%*UrH6  Dfb2jU| P\4 }J9TG52( bbQ am² "RM 4rݨ>a /U挲Xi"f ZV,?KHdr̒|(tkG 5XB (+S? cѿψL[݅W. @ 2vN2c>/1? kK]L9b_>-Zj4VQwq!ЭnmQTt3 K$ ?),tZ|.TJ${z_}tun/S:\v`*wFL،,nSo`o ]MKuTs }Q/E]8"۪+?` ]1TdV (E zE>A0qEJ3$Ւ %W0)QWy:mۂ$ z }꠆O >F#jW}MxL ^ Θf;lGI١+iZAG\sx!6hS9mx* Ttݭ<ksur(؈7M!]3*}Y\7N+u'D/ܤ\  5 lQOaoC,a:&:?a~qOhBw_ss65p=کiF9;0i @t{6-ȵm؅P x/OOp;#"R&gCfBTΛh+O"BqkVQ"jo-dYǮv_X;sf.h\"}>#ye" 3CfƾYWj O1 u W!>΂E\3C+ 9x$DŽamMtng䯀x _Ҏ6>B\Eؑ@wS(r`= pGrlՌFiu3cƙOr *q4uV#U z7: /w{J(>&0=Hcǹ-E ? ck^Ncu m)6 E!?؊N0 jIgQs˹/|\Ƣ|{\xVX f~#OD$?'F YʖV߰. $G C42ש ~4X(skt q'3vtMD^9r<[wms F>\Cv Jy1[$>}&n0O,J?>_w1oIPeKu9QhYXG/9F /vD`k;9Ⴊ:m(/JCLS}_;: V sݹf/~JYu=aEB+rk l=SusC󈀹G)xz񖭯F!S_}OQg3_PT?J{Ԑs%IbT8cu;Z\bпIf*}gcaøs^wЋr ֛>.T4A؊(=Ȯ}{>a6ML;6͐y;7eFD0m~\ *W^ab[*CMB]۴jEڳ򨎓OEN )z' ['=pٯZν^^)ua+?]BN# _?"yd4p{^k>M4r爧>jVwNu3 @+ F<ʇk8m]R־|6\^s<}WeENX.Ϫ6Hj(z(o%_dF㣙*wQZOӊk1iVA n7‚¯'0V|DZ@Qy9N0Eۂ' H,X8Rv}ODob(sE7/t/:[GP:YFuggS`+  ",]`{p"[1_%,܇N[KÖYnHA%YRNTQ65H(8FLXI4QE6_˃S(*j <)ũtR>YݹQX9[~)(f᫸i{9X?K/<̻wƹ&̹(L3 Rp#3?sG_P+]Y=6I;ĪW8ߠ-:vhb0qi)'O7 5d|wN",&<+@''Hԡ9D!oqiiHL|#t&L7{c(5Z Ւo>6#?, z61ŗXYUx߭0F ]Re#šUSlcVɫ~mI6G,2Q1{gk9[+B- 8+w߫opO3XSمvg()ٖ%scg>xjhE,ߨؔar.(cwAu'Ł^6RNԂJ8rÛ/%Z98,"dobv;wNFdr~f?V2Tg+);27b^2'E)ֺ΀:]~3Ejk[$O"ov)H;C/޶݋fQݻ3jO$Q&e4EPLV LB8|TEγEJfwuo5kW>/]V~YFueS^sG1Å;KbD=jGq|fz4qGa2;Sil 貈BshWrűh m)b*ܒVdR$DCy uUpofôZBHMf؞WVfNuB,=c|c 4P-(Sq&ʫNUA"3&(Ѩj9/-UKeg=5.O]=&p<ԁ-vϛ] *ޏJ͖"IW#ȭ5SEѰF~&>05`w˓a®SK+:Hɩ1oI,YNq.S8%?ҝr:][v^ nX݂]3>`Bj",}yuHo^4ƅ@̆,xW(v|Br= e"aU粃GE1kZz2)")7@Yz>OIc9Q#pmYł'JwA@J>p~(jᘺ.Ӱ,T X_Brt fe!F8Oz|##mvW N|geL_|D\1vD^QٍJ ?dOp.o_ 9m:ۼ w\9fN\lɱjCGu?#ҢXl݅ϒK'-"qЀ $sq}?Cv`g)<ǝkfo.`NhH}+A2n窓F2aXvkpսxqlB[ۿc䒠rI*X<=  6 Ux S@@Cp~@Y .VN/'6-> cD*D1OtHVcU]tuu悓:Mf(BT\qa.FkؙV?)۱=P4Apзc-W~ 2"lWseR+ja8TWy`},tk2*;AePUw]"9)Pyn޷#tF5惨U?¢]yА^Nk!I_<B1 3t]b{QpW[7^eM0,Z4Wŝب"@x[å*Wߢ -ʰhl*G8iA〢{Qga-"TExҽvdRH?~DŊǛ '|MHE+\npjs<,zXIjMF$R RI~ysL18Sv_p$AK8o<l˘-yx懁LH W xYN~a+ Pyln$L~υ0l4˅J6*XgkN7m'IIYAs  ?-> d`U&g!ؚKo"[ErtuR3";zw@rDDWE ջUtԡ d`\n'zтyDa%?\2=-X4E?.ݔ?I#;GG$?P.ѦѰ#@pgQ妲-<_ .:]g`qsvWQb]t6V]G,QÃBZ~BDHЕ_" ҡ6GSoM.nz$p"2Ofhf1@D]8@:BA/bt Aq >AiؤV`c¿i vW6WXaƐV0sM.I :)dP:sjU1˵\y~sO0(vWdq|FVپdIգa%+(h[FA:3|B,3u uK*2]s& Zlx7I5Oi!rD*DG5UO<1 ,iކ/ MnRZm)CD:s~zcҔ:ѢҤe#q +G8V{\ Vv΀}:΄W\\  Pali>^#F4K5p& -V5rߚF.'U:* |Ոvq~hpTd,'nZ'=܊TȊЀ&?Nk숒GZ ;Tl-GFd+褩I6)O*]nk b`!bF$\ .nrgO؄QDK[ y!=6%509/:}Fs?I˦l)#\W':Md/ _tT9@{vOR5xfDPOb{ aZN%E~@w"! 2-.Hl6fnk-"{yۖ8ot!$?cT}Ρ [ L`P.+צ߽>-lF]Njͬ j?[߻ζvzPi$Va*;<V]St84Tmn3>/*8)L*s{PlFw}us  R4QCUQذ=c[E'>iߏ4U }:zL>UYTït_D!r<(]W˰ZgzPY@`C.0=p;{ 7GHi>03W:/;F$'r+$C,Ѩ7'Kwa@Y3 xe}u؜C^Qv/w46o(4GB:=&S`w2poN\\Р?UQy<T\:䓤ZTSvɊHЊkY_,ӊ'PFj沓wvuZT _K4W;oPGBZaEa*`$e8x1\ ;J> aKx2gn<^a+54 ˙(ss#u:Ӛ?HUk!,LU3)=KhUhו@8( :!(SnP9%U3/4UnkHn-'ηVzu7ƢT‡$9m ]؇4kv4Ye3 K3 1թш t;2eqILE9~ffN`лp4cHcjrjhT<)Wn.TY82G# ""g%;Ѿ` d{:o"h Q<# Y`ĎwZJ[A{2!aSlY+S'm|v̵Ub>6.+Ŝmhnzzq Z_ѓϱZљ$;l勺2v4GU\Y}i9igY_?1!}Z~Fpwh{WC p5ٰPk7ęf*V7ep8@`EP phc 23~oƟS`4pB建+TkipE݀1yef") R+4dmSWd~L+bckK`>D,utl |K̲T&`|+^%t%&u:G=碦@PXrih%"4q;_FPV] !;R[6V;.P:xaLcy:p֥C6|YF,a5BNq,I2ti0 8!=8TjEYZU\ԪU0e٧>TRgO ]$_b;Oa2 QZϗU3M#95%%f1|P5ck/ǿ7k4n6BbKqs3:⌋7{_`t K0%)lV0 ZMsFM3|R`wxvev}'2dB;soSNM7 ݓW\pl?&# L8tE * ]qa@·}lh[/SIeNɠi D$^JClq90G&caSD&Z:!w<팿% 󠹙y@Y'ů`qyI2ewqﱔK͗*}>m5&kl 񮒕.gW%鿽@6 ?u /;$`%h:}&mM< YVz,3\-D X19ĭpiF׻1(v>whmH8\"lބ!7)O7OK&q0`k%0'W*if7UEߘ -o0r8׺G"&9zx }eN'+OńiI^mixexr*RV7 08D!>^#` &e$p~>l &3 \ 4Jy*)()C'O´/3+y>b# mhI}-[pKe3z\&?Ώ&28pcH^PtH8ttJ fMm÷yoT!H`r#ĆhX.FT1kvG+[%y)VYJ*%#l`È'Ƕ?Wjͪ>5 BZy_~ ZxT4S/*EClT(R66^1B(ML@T{X p>/W'̿#ZP Z3A,׻SLFw ,|s! uT__<(H[M~k5ތIM]t*EIK5m90cG$++9C+<%H*&aU(wEUP՞yTL΂!cnT7Z}m*/T&ϼvs&M0;U"+NƼ˧dځ p#"6( l= DQqdB^~,lJxaՠb :fuxd׳Rkˇt|.h ٗj'ӎ3!x1sL4os X⾦6t/ s ,I5/вY`'pF\AO_."iy0^K>-sÇh`wigZY@C;p'׏o 7`EÂLP'*c|DVUI-$eao٣8Ή@t41Bٮ9s2\,Xʳ ?a,uLXah/wCb 9!5AN tw1u 0/7RO2U"HSza=]. ꇱEXzE<V(udRdpe}z\}F@ ܡ(ȩ}=hM[ki:iXYYJ|iLzTPp9*(n-ǒ8M"_ΆU֟P&[0Ueދ* 0)rnߣv PCq笟h %cު׋Npe }b:^/:/`A"'dG7y७&m,bt|ulda p̾?4e'u/Si(6)kuy^ԅgPƥ^w^;1~y䳸/?1I?/Z݁_*aq{f]PۅA9xP) a~t Ob'A85bqaf"t2Ps*9P'?)z)!x.vH@ +J9Ĺ_hXM0IZM.[@q6| #OLO|taFҫ$}>#n[]H V-8pjZ #в)|'AY2 )2{8b*JWE_B NZө.5[)Hl( d /sN~\QA)Ao@XXT>'XVc\zSGpWΕ 7 ПyMb ~c ƕ(Խؙ7QGV^]TNMO+Kp6`t ^sHZfTͿK#SPf]h-ٙa8}{Z%(VLe%䩆(Ӗg{E8`-/3~*Po 6+@/_TCu5ejJʨn(:|VObP P7Wd"C_akiF{V/KnIqΘ{P~X]'+NK^b5jq.jpV&(JԱdW|Qg$#D8.Z/b||eT(^8B(ćmj+%KyX0lD1LPYAA9a̼9$P3GE4?*'Q_'/lUFkG&v]+crAb@@a3ˇX"ii=t)=B (nP(Aybs5.Q˰v%{xxk |M Ek4%^^]57hNp5yO釔eށ\!SX\FWsg0RE/(+yK.?ȗS4ex%߽Ϲ_х̈́2I -X(+CثԾG$\ Z/o*`a cL 4Ԯ09ZlWݧi #fJJꇅS<9r&lٍ˭gcfZ<KZA`' $1ӟZ,[(t8@f`y Mq,NM5D].oAw6ZXD.EG\ ͮג@>P;돷zo{>y,;i{Dbg*%e*ڛ( 4K+;X v FNvY}J[}l8\aėpIgi nʴ 2m070/#0-ʆx2Ao!d߆յǜ-mi.:YT]6+ BΙ*Vwb=Izi~h&dY/@sQ/l&*cX'2t\BX?jL ׸U'u3P[F'܇NF?tD;i,~:G4%#ﬧ$AC@)?nۋ T&Þx*j(Kdq3Ũ:6< 7`I fY迆M/-cҬ !YYN-nZ ".y]˗ȵ+<ݜ TӒ3K7MBwe#dP"S8{ 3 :qu.힮KeN_fAEqڤG0}asI"+P9uY=[Pb3"P^JCL;>oXP2\`)wNoM*E7ʵ>%+&@ i.ʘk~*ݻ1Ľc̤ tBA4& d5_Dg?_~c1ts((՗.l;TJ!^ZUøC/"o/%r0'MRX¶fK[*.)B;e 6LQYr1.jd|u!ڸs&5/+S[_rlJo"Y{y;$p ? n$hgCG^zk*7ysWgkob c =݅uCV d%Jfw* ºFUAبmMw"= A.=cpzm-ӷ#JVPk>T\A9@g]/a?Bs}U#_@` GZmu`N d6XV%*/^Pmˮ ?l%8CF,6 2ҰB49~73gOgKh[ښ-4an%B=SRb≙i`$?+%02g2#PC]i Ip &q,#^ie5kUD9F2&JLv0d=AwYDbs x <>>Hх-O?4k Biw;!%AqЫuܰ M LhF/`b KkWȟrDIqfa}Q/]{UOuj|WD:޾>1%x\b\H_K1V _So+)@5j צq)k{?U=(u[Q@_70yԺw; iF((QMQqTyAZ(_ 3uChOQr}G-%ep#f s"=~V%X-'@' #^M#ˠ7bBcGɹu~݄*:th|g:|͘$%!W͐#Lva p ,)#om).JH`G`tTH*}ޮpN|,ٟ1\0]Лg54*Yrd2HWLREeoy12 a7-Vp7OJ]q8iWUUwzP@KίƂz3E{41EY^' A2n;)~2QHB١}bm6WO$Ϙ]Ndqq%租ܠ@+ө;W}޻/Z3xiC Q(vE4\ WAlWȼ:;itєɰu z"k Ai -g4&V"r~6P&:W:3FX4ۂVIX6; o:ZJ{(ӽ9A ,_eN<߄[Q;V`LnքzZ0ČKIGA )ޥ J"fYJD [6Q1uӫU|IpL%k?ѦsXj^ڕEUC"S<)=Z#b!#w +.M<%D&ͧ/zVFfG*I< p& iK;x`J6jH8;8oa^=>>1OxY- l/ 5n4Ruf 4:mW@}Qk2Ҟږ|uÜ*H dAHVޖKd'f4y~Xfte6LyEX" PcT37BFnC"6fe٭0[#N(l!SX}3L!`R)c#t(>-/H~ |%L1k70$kφ32[x,#e.u_⊉?!otY̵ctn4/?z 'Hf-"/]261=հEz{:]&nB|4 ̻qk:#HCRw==ճ " '9J1'NER0X+ qCj= Q*ԜXBU'TA Q;(W)UVVܰB*7)Re₥y;jۈ?Cp^yy ڳ0qd؟=QOWlZ}_e=aD)Q?ΐa!L/StY pT ӠrF=y> 㹶eEC90lA% BH':yO;g vRHJT_=_z7ԀuǯQ!zxDk%vKkf3|5ٻ((FQ *dG2pUL{gK'(6L8Z]-VnMvKYq^PwM'ϟ'8ӯ7+1 [rɣѳt?q%;,5(H!H6ܝ}F[;=_.^-79*x?+ ECtkCxpc!:K1۷K yC] gէt(d i MYpANN23`}@әwB0kp3[`.Mp-Y3l",˙ Ev2aCN`{j;cM#x,!S/"R^*fUjKV OGc1B ?7OKE{ .!\x[(n&z@a 7Q#{EĘli6%rxڇ@qVA41W(ls!dR>6>[tk<|ڎ1@\>Yi?cC\u cՒʫ94DݪQm ‚ԧX=R$:Ja2e&րo Bejw5QwpW#qi[xqs Γ,Zl@DGZxC͒Te)џ߷}xc]Ńd#WSp[1ǖnU连n39R,PEh(wYxa:YJJ(*8Wd5"*pʬ$/gD0+(~.8D'Œ{M┅n.Ћc| *5g{Y9"F!?ls0 Ұr =D#~"PjӺH$n*N:(I7ÂL+^={C(ۛS /J~UG0+=ӫ _ Î>LLuQޘ_呂v2M Z&B#LdT!rM 1Mp $NQpup/t^ݷ%6OԒ.˙)_}*ѮxaȔF<Lp=`L/&H)'?h:_]Jz˘mkAœRUW^E0/ia^&Pn> '`XKU#vM&@>N**g&Hh? ԱIUq4юX_ Ey#3PL_MFk x!+Sp.#ކE&mA'64I7 6Aj@K)0C$֞JV7>F:[μi^#WUe&\| oH}?sx5=\pLEA6ݸH*Frlǧ鐷G](Rjҳ܋wP\0ڬSilKi-UCDo.5mxм3j)R K*uX2PղH+Lx"YPќu #ep_رt<7'2(_`'ƍ ^GjM4zC`j'P?eaxvU|9ß|˧U~ܱkw:w -cO%﷦ K2i`@RfNmqCm$v>q:.ۤnv/-uGY2CҪdpϢ̭#nyj6Ehk1͚?DŽo)!xd%휂i'eqQ!8)SE^lN%)'! 걊Rڲ h,HusTm!p Ӟ5p+9(G$<0?Ķi.Z0Z"G8W @~DDM)5@N7wtL=/ ^~Iolduʃ7"`O;aA6"P؀U'GBrɆa @&e{r<ׅF:-(.)%3$X V&DŻ::/k;QRDHEsb5S[T/MkjCIWТAxTVb$<{X4i?&E„ZSwDdS#VxCR`gukYy茻{q"Ԩ=`̰P@+pU[922zB2[p6`RwN]e8XGjPH7ֳ  B, am&q/C= }߷x8x4fjNԧ޼ʸV{bVNJDp$ }xA6pׯXY <ؔBZ@U1EFM1Nepd B0,uVetqWf`O9Ua3^`,_1Oι du=u[i[hHɣ9A!6YqBIMã*[T͘8A"9,A9]6  ]:[)&߼E$YedpKp<*UHϞcQк+N[ϸ tzx~#s+ZwQxtX%q5/U6Lct785i^oUQuN#QuB>;P^F 8a..d SVo'P<5{GyZ^D?wwfh?Lu9])>в;E „?[_kQ $l]shl-K} <-6'&q'rC&3B%D'"Vz|b\9jѠbK hDT! vs$` M?x=+]D,H n.D0}#5? UyaKmJ -NiXrRN.p8Gc 47oA|1I|ʷitҞ_eC@|9 Q`&PJubpc.n4^I<)V_{);Ʒ.=- kUG՚Š,k0;O=pA(m/\yt,._PuQV/CgR-qʙ.5=s-ڛU׈~+^EnX-`$wvy,cY8~ ̹UXĈ#_V ʖdwtٽ/I$De&,;fәAwG\4|j}[ez: R'FtLw"W' ~1y*'M*vi I| ]+-A -®7,y9/0[@I|I|qF%:Vz` %B#Pv{FD-4KB4.e@{-BqO/!Oz.Ly7EO5`[99Xno@b:1;)1'a|+{"{s福 d^^s 0ՌԴ F#<=y(~pk0N`N>$7Xb{R=-0r1Zۅ>>a2ŒS)n,stv= i|#hs8ZCޮ`FQ+}1IbCApUfv VV #;\4qrm'Sp}4Kr;<:+J_3d)IuZ5gUpn&~ 1r:헮%,uї u Ll|/X[X5A>oAх߲|>s0ῷ1ͧ؍*TLTTM^Rڳ\\/ԙeN}[QapއF7HKODIH.o. E᪹X!>n^V`5~$)@r*VQ H v& 9QH(.]U0e1w!Sb([ ez!Rw{4iO>`û)W|>(ɴ6B g0ЬtMTa哭1p +Bu`K:)80 a=Yr@y9\)_u 5rĀ@͖H}]-2^ig(RzȬraB`!Ƈm0ZP&\ j>=E-[JѮ;(qN.9'$'K0fp\[748oSSlln$YN''4]EKu4鄧{YF2:v$UT6qmeS_6'H#f l/WEَ+ 3ƍua#ty`2áfyU}ƭUhaIU3؎Mv97lH*Dkz~@[v?Z4ѯ9:,}SW>@bTyHqWXQ5@܏r6 PU1]q΀eSөitV(5K!r@ DHg29={hqh=gnU}:$0ԏJ ω*#;it%AЛah,*XZT0wxKv)ǠȖ.Y)^Ε~8r0`ar٠!F_˘wq'c-N|g4ގPYƳ ೗d|zk T 7%brЖpO8Jɱp/fܧdj"ғE` eU{Z.ם25݆[ wnۈ*xa^QrBCuf?7t&BAXқ@ВMFnAQ̡gSwD1bKZ7+*.mNj7  C+dS^@ 6WߐcUmz=dslZƼ ,p=ߓk7DBt%||reƁf{kY+z(@]5w@(YBHo Ա[XRvEGa A~bIFPlX$B||ў43;3Oi  P!s#kfC ?\ݡIJ+~KkиQ)M"^퐩a+H4b 5^[DQםYi2)'􏌰7ϺBg*c֫ ,[Nx7ĥ^.u~,]}"ےu = U9/ 4#BXZ} ^M[HL`%[|8?/>!+vH q4:kQh)V3w!j?E慌h"F 4Z̤Q9 x%Kmfm(+m$ܐIӨ)-&P@&[U]zYx{ECeWo@&kO\'*w$nȾvQAVCZmV7;j? t[N›V{0g]Kzͮs>^u 'b!L{5CE]< Y96rXeIU뼥Z]:ڤekT˂L& qΦG O놋0any5㤓'L~R׏^2LVY=>_Ghkw]Z$Kq 5l.< F(aPf2x8w9asEm7혔„9D*ۓX ٯpc7FBڱ]D--G,@|󧽺+x[[;nEpCЁ~ ('vͳͅ$)}Wq#2ƐBG/-o;Kd:;:u~dhZ23ka sF JD| -O(.:.H9';Ok0헴S+\n.X/]}i3 !b,ZF[@>&Er5 &"C2B6L5 &3dpcbjw?ѼZ ?]2\nH-fA?EڕF@1n6EDTb?3Wc hdRRk4}6%0dBXWj޷5D+UdB|=YZXLgMOb W zXH6sI>9z~VJ.[âeQiVGUhz?kk .{>Wޜ:JL4;,a^8ɢ)_4 [7 K1h!ݞT;Z4{C4_/J)W4m=&^mQTqLay]F: يPa"֢^.7~CPPjOS(g#1Ccty fǡQj`IHG /0ȳ̢ 4.:[P5(zC8NH 2!3F98L.OF :0K}ˌ6YՓl'j{27Jf~lGlŞlnW(K57g?uGK!3*7FƘ?ԊjԥbqD^H& J[0ĔS)jz< Qsuܖۿ.EÌXE!BˈVx,5O[ctr]04y#_L_Nvxcfj~@nD>@/9(c+:Z$'UvvT x9 /Ggk‡w$ 6ոP3C ٽxZE5m3Z6s$:B?I^X>D:ƚىO@Cn϶g~޶* 5-R^2$ܐ7p5K~#|DnjR_x+o> _֕; ۩<6VZλHE9?U|ymM:Wz +TV jjg8C;r7޿HT^jʖ>q!sJc ]UR0f%zX=ijADfhB Fqt(9EH <{d5Aga/NR^?v0hth'b'|acZn=m6?(ޞ 䣟cEpWrO6& O*&S \]1-HB~,ܵT4UUN@@ҿ'p͖I-9hMW9⬭#ٝGR 5~w; ʞ3\=DŽWVhJX^N:W=jL3Xs,k>`b".4V;}ŷĠFL 9M| mzڊMf+yj7SKb+KYM]jwMNkmoo&CuF9O0E{T Mbp}O{qߢ/gNqk_E,7)k.њ1uڅc/ BfS A^_TTc'-hmuL{ G H 8a] 4zE"u\[*kc"\:4/OTqT=;j&dMTQ lEXpbYcDILW0u(JG|$< ủKzyS2}PR5 QKݘ4Ev=h\h"LV6#KczpS[Pr7 2,zItsFsV&9L++ iTa|4Nv/l➁~ Aњ Gpgn 3P!0a\W X6K򋎬ʗC1H{/1bF:sc_#r)CfhIy!UxM(0ތFxWf'a.hцkܯS;V=%E_Xހ1\,7뾖Ֆ"yHTLr ,M>A &8ƒ8"?Z"c CV5r]DJK}-1>UA{¹`GQUviU;Xvh 4ʰ(LY±FEXɌ)B&?V]I1Gr+myG KDƎp@"λ+6qֆB*X.ҭݝ)' N,[P SIlG lF_]}xC}zۺ^Z bZ_#vbNJl< ^7aT.&óE?$ G)b`x\M\8A75d龇6?p!LSA]6pftO >][J p4ey)[эOf8EÌR7t#v?x997D,j-LBNGsX+bp2z;Jg,pj$w(zawVA;q{D!I]4cz?k8J1tg8ƃyb>CON rEBjt鼃E^3\,۽Q$g,w/3Z3Lմu(yL6 d{tF>sx;eCÓMpB})L MçvH@GhHOpd._n*O7Hne.o L.~/, ˺byi ƔϘÎo!:Di6DG^N&z~]C䭄vvyYhHYYǡ:5MN."Êr!^u‹QjjJ܎#^K+c?\63_yqNEcƸ0֩g"+Z5S^D](jpY*N,^|'tg.zra}P!7{LCǥ㏠)yuN B fOaapU.1] H%%]ē)NvYq!O&Ǡa5|\9m}A'l3Q"gj2DTECUH3k)Elv*%`\zKtjn0g –fr~.w#!t#G^LK+CA0`E]p|Dw\(d9:.T+)u ϋX8n)KV/1 YĻ8\qj[SC}jDZn?e!_sg. >/f~veقŖсqɁU:B$b_#,w O(oiC*-#,_s}!.TgR"_ ߵ9!|OxK%)6gnͧuť&seF:xr NG#*lEi#}B; :w6h 0*l>NO|vXDžxoE['| iQ9EWϋ- `a͐c˅L  *M^dkjPܖxp^w~mOԼ{ϼ_qA=%Nn9@VnoBp/[yXŃ RRO4ԙD7a4D^4x'>/NK07t<8 }e GbrO‹{$;ݖU?2D_:gU%7厗 [Bܙ KKH̝7B&EsJF4}XnvFW. k9~'l 1i][ZKU̓/[`{_Z0oho*E6G!Q5 *s\OZ~ %9=si0.6+ƪmOA6-JSdT[_wWp;*-f'^,-"NY4NJ1=QT(o\k+&YXC.n/q^.w1Z7qu{n JVYx"L4/ wscgQW}+թpm`ac#fEd9·P 1郷<{'НJґMq~H]KݍW5Z(zyK&xHSt094~ z> Dz 9{Jqd g:^%qry|q;oJzٝ=_Prbk  h!nI`cᕉ TD.~|m1`H4j;d^&3d}ՠE,ae* kBU2 /yפ@+y-^M+QmѫiE ܄]5^ARPthjg͏T5V#c-~Xm#~-]灱̥%QlCj#V7}Sz?QRou.T%丐7_X25(¤&]fqK.- y!͘RE?tFLO ]XdA\O2uح82Vj\$x!m *yKwy|źrf"R Pzig ^8z1Y NHrtr5!U1d4oS+9AHlWN"2=U@)O.6:m[S/yv D:!k 2[l;hˬrq=TIΉm@PX<J6(NI0{+C?{4e[!k߈B[`"&5ݼ;$6:*4#yOob0>)z_z: {#HLp);۶zky?ݳW'5BmYεLqj \"2!q>ԡ+ Ց2+=Ki vLh%_m]YE#k͚y mw*}ŲAtBgBo/"ZyLC_\ؤ3ВO+Hn W. ֙@@;ޫ jrC/6a̴}^Tq2ϯ {{tm;˴|뜨]^mR(y{'abS!eQ|mt6 /=7S`)q-4J m6B3U/󱅨’ ǿ>T"&gL bR5.Ci4B9e%tw6Ǯkڝi6FrFԨX,((cI}~dĊn0'%zÊNPM;iKF OOhRn;nF3q/u3DNNŲ)⍥Zt7C|n%rK)g)GH&BX)izGٮA3GV<:,PuRK, 3FE"$r̛>Р0JLYJ;s"a0=^14D4YGT Uˈ=Chv:٬LBs`}鼺Hzq) [NO_qlNs$d߲W4iԃݑp DGvܦ-.Zw$hZh@Hw$bº朾j<%N7M7" ?cuODngZI`TtdGBmފ^PhCrٳ go&{4^ܙTd9,91G*Ɍ)ѽhP #7G7Etu*rr?]3Z| ^:T YT eбHO أ>ֵW/z5/i&XX;YQZ.~Ф8PXŰ~ftF߆uej>䤺$6<[H%/<v0jH[zn.9  硑i!?qHZ.$ɥpҺ{2s3L# drOwv ( 4{@v0 Mg+֮䇆vb1j%jkrT@^H`#r O Ŭb-nBAe=p.΀P/tAkK|OpT3+ !'Z{~AQu!M͏ d+o|e$5Mi=e|OiIjH#^&oG|]ngra׊@SQ\Y'<5\x Tv5ZgI*'Ή͊O YYҢ61[0^}Wifh`kò;APE\Y9|W +X :lL|kkIkQzI8h&#ƦVήx>$wgN=/#:|QGgI^Vj𗝗Oz׻~C{2;MZ'_+z"B{N),osPabpVMUӖF,{܁ap04'T0-J'~K^^)0ݼ! %i ͵%lHY 9LZ5RXBXD`*o(XYxz/urLjGbY]MwD;)c2zj-. BEQWب%o+sN2F+&ڻ^԰t"`%>Њ^׺,ɇl C.Ǒ+ms:G IW[xA-w6Ez*r F eo:pߺ[h=V}"q#.؇T= ui:ﱤ8 HW.y4汯MӪ.c}̉%dsmDYK0]}\\gq :Y;ԬP旸]l?zDZn}2\ѿ R\@}H߮W t6_(FuW$1x(UkE83< a>"뭠ɿRODwogRu R6]Sf#ʠ;hm|俧цtYaCEon PR/D9#S \(4HoYؚ皝WM!q !{*Ǿ469h:׼zEN ~ˡKgoO!!ƚDE0S#[D?]%}Ԭ8"oa7lm!l$l5=7n$v+hVN:b,]hnKer;IV30+y{s~h,C;~ WcW)R1OVJ"gd(I^jsj6C }Mc6չ??|t~0M_f׫$T?eae`Q$}<{&6:#ʬfbo5F:,!RNm}# P)-UUY8U53UQƧ{LTzwһ{eF;aTUmTȞ"z(vT/A% .$76՘3sR:8;~bx=[6-RȗBDToA{%4Cj%R%űǼU?iJ >DWR _䖩,raa(n(FQ0vbՑ.ue("f<)dt׃Oe7b6,(Jѻ7{o@hFB H { -(%!I#C)!tEIm}Կǰ.H Tsːj޶0zCR *43ykM(ԋX,!O`6\ "hζݤMcԭ^fe6-e 7;>7K)cFAY  ON4e ~`dVI:2|(d_'CcK;d]BwXy^kk1̖$ߔc"&-#t,Sj^tUwm5Z~(jTj3Uc8뾏C@ z^ڱ:O=FԲ.!mZ)M9= 壉1X,ƬgSurr@bpîՁ<sKQ,f@IyhO"!M=Ի+d]*M6|-3 gӮXU^jE}Q{# \6q>|ˋ9O۹L $AoJ_X. ŅtVM?n3_.:VڰWp"Y)ҧ-wA6,Wa0_2Etafr|_ګ=UJƊ."-JDWJ|vFCHRb: Iouj@sL0~ \V#彳|& 0ߢÁ“oHvWnR- }i83(vf*N8K0\ǁ,r <9iCn2F=X^TcCB+c`hW u_(["oy#)o<'I/׻89 `jEDeBU_s aK'wePǖ=AI sbӼ4^dlXh_ .xJiIJFdhs})s.U2##/󕱾mضeWlֻv@0\L3ρJJ^rPA&...`iw&!Ci!LP&"eFE陬731O„ 7D2 |HZm6KЛ7|sj(,FB3N|OBULs)QDh8=4[XEl$f|}8k·qFL]][Op#MK=Cm秕W$pMX}m%llf[p,b,j&0NWFvMV%d6 FW&~^?Kȫ9``V(?;ѝwK߳7>a+qO?+t8Dsٜ*QCUT &-tDvhdՂЃX4%ڸ2&w!]>yR>O-kvx1:+[ >Ov8)'0n0 rНe^N_ލVi3Kr4T.jB=k(),m7i$lY=ց[LSN(GxD\tgBsjFѬ|Ѵ%1W<Z"H(4 >eI.AGM@KBTzaaCh܄8f]+BC>=f;z!AĦ+P O mTM,hk'7PF USγ;- wMY-~+w޺bztQa|A?e xR A`UҵsqW榘^Pް=lQ#AO@?t(4ecT 1MGu9KߖVޙcC: F~j+wL AxRi5\ICVl\IDXoIGùG}H*FYChjIj|F/+տҌO0d8 2ޮD4u/Q% W㣩jU+5/ ." WjҐpJşK=Cxk+-Qk|a0NoyP̱Y6u}~s_Z_د\s8"l{ɭg=]֕;Q,;cyb9yϞ4ew;e9BOx mwA:h9ÌB#Kѥ-˓K:0yeu1D-r: ;UgU7Xu!H.T+W1*(u[BvKOSFGC9G:7%*̻KÍX^E9d!Chdhy_iy3 RخXK4Qؕv*ޚ؀ԃsrI0yܱ"<,aDlj46Mz)cZxKѓu 0c䃵?[\ȱ +",_/!x{.TJ-?;). $fi7p{HKɸ>x&2X!mnfWs!;y-Ä͒w W6K| e}I@ gdfa0 A(9ooϱlRDՁC/%T8X2]\ǫ[~~ 9MKX|l X,[y ӤV&O֤O9 Bu\b$񈪸,2UӑSGr N)Yg^E a^ T^Yɱ2&MI\b՚>lo[kA g^u 20IZ`3L'.ZTFF!nt5"iS]f51i!Pˏ+Ȑ3Z/[ja9'k9pMg kW̻a ?u@H<R"@v~Gy9`S5]BN`hW#$v5Hn8nq`Ec,G f5;NN:2`W7ÉH_T|a?ҹH6Q7R4d:Ƙ DVFb2 J&ײ(uW6ZDi L! }b!C[|F7Ymc!VCXD Y!<'h_QVs$C 5{%_';ݏ7 )z}ӧGP auEq )&B QGg@bNn+ƅ6"4-w| si8$+ JPt7eFE8`gu/5gXO̒{%WQPpDbsO~ _ɇ=;|XdLx ;,TwRUN mlgI{zp-[@( {)5v*Ymy08~Loq7s֣}z <֋* DzpI*MG.X|$6t~&4>41:,piS9 5l%Q'Z $ЏoB'lU5C6XƇP&!C'u3;F#5`~;X_g;K0r ܰN60Q]W7:r١ɇao kch ;288sr MQaU˳rFz^h'%q66Мhb8K_zϤƸ4\^ҝˊo e>j:NmolkH*YsÞe"/-'H6Łx5#D sa rcS:OD}{>ć[9? gn(c DgFlVjL~S/=K!Vwi] جؾT J F [{H9 +Qm >}cYҒ-T Dž}O ZS~2. Lq.J.|#%zV7^bRd*%# Xr0{G7[CHa ʑ 7 lE0Oz,wpvQpU) /?FgKÂת'V]"fBCps"s ]O}9.c$`w+xOim&)7ZAkN2X:]ѓbhHe5jⴣ/uiPQYK[Of3_WP[.}l/х+JB5vQhH Zܤ {dOB&%u] 3= P#&zIq_s7rfvqptb nh\hG O8%" >nˢ7C2'@rRźN}-ˈ^?=pomwЫD;Fiz>USBXb}utĭ6 _+|?o dp .ɚƗng]Jo@WD#CU6ݨ$` '&u,xWhPV{c1m{UszC&9:Fr}lڊ!žȭS64Ь'm,/,%xXyy&(:z7څh #W+G,bE2 WJ/]@n"bq¹xQ*t?("2̹ QߐAn}Փz\弽 Z-4ZW7aʼn. L>iZAD5:X%Q C([$-PxGHw!WWO@!wr##k" o8TgsMdˠ@5KYlv ) f?Ꚑ5~b_,MAI,+2@נ~ :*-?/fqV)7I%+yІOgl&0yf/Qc8bauhPzLGnֽ)eKƄmhOҰq=4S"@1dy)Ia:JE M7ƑNSs O=Cfǻ.K|xݯD|lE%EDL0 ӌx$k;,[ildv :9#PP6m35R#8߃9SjP4"8`̮!_gj1îq u]ܞKZQ,)[v(Ӱ6I#6L"O!l1Ҧh.l/Es~u_r: E^ !&;wCd_(Dgo䢔ݡq =A^05@؈=V~6](.cf9ސ5&uHbeQh.뤅J*U}̑5O6 AWۚ@@s)"!q_#d;3;l1γ7d\{OD_Euc\cƬܫ?W$eAiI7_OdDsں.^ a4N1qqS$kd8- wP x} .0.kJbu&Q#;j/pC:% [W5pjF"pawW Y,JкL5x-Z0mtA/yxTeH H@P+T с '*mNu,~qspli iٛTZ]ZPmlP )5V]Ҳ?@6Ҁ;h3|BD4mzpġKap>vp? }TCȜN(a.@lq8y +WwfC!!VG gL4^Uy éɗh#(|q<.|ф"5)Q$gkB+!%OЀCP}X6.$e |a~x*iQ<߀ܕ~>| '4,|ku&Bo%FJ5Ӓ*qHsuXJI#Ɏѻ>[2+}kd0T}Ōx Ww囆[X>TSWw,`3KcE\xAYaZ rץ66(wرUųarr`2 eR#9I!#Ip Ǣy[2+kc [ʁ}} O*zc<48ܜg!a|Jr}qɢmќ,M.ᛩmu&f74{=1fyI]wIŦA,R~.QJ++f btSl4($מ@-.t2|"[䴀A/Rr5#@x0IΞTt1jU ba5< Og4w)jIcF77M&_N ){"?UI%~܇BMf ^m}P1x4}=K]}$X4)~>%AJd.m(9c;*]p,xc KոbAr]n(YB=<%UvCWX`pZr1wja$+7f | /ˣQ- Psx9NqĮwAGB|{Ld!<_aԨz~ ̧t)8 +ݝˌr$Ξx}oUIM+l{:OEͧ2yZlQV`%xu6}0Ŋ:zP1a{9G׾ ~6U_*)x5\i 1@OD;۫ j"{S 5zAϐՔR͈!I$#5dwng`?a=;'*;^*S`mIJ7Pt$E@[ZdbՌV8TS<߃e)W5z;3{y\—YP=PG!BP^t./5ݓa{gx.v넽gۜjMO(埵DQofW4LF*75K4KYnyʇLfB-"5?:zE: .й&K ZWGYVd/)O5$EV O\VH sTqRH?aq"Q 8e={[b_ NCe/kd?-È1D3~0ŗ`6*W-keP?n RGRrF mVxQ9oRI)¥T%? |ui pNQFi|n}LSuR^z# 1G K#Aթ@ϱ*x1"xo+ۻQRͷVި=;AMK ` ayzcƑf-Z2I#x|`O,]$5I:D ιpcꎸo#Qm$p_ŏx[gь%hU:Um[;8}L#y-D&RRhxyL; Ȃ^gRLhesorJ!F;赜Kςg@߭2() lΩE9 8D"P 1 z 7V,MlJn)ڜW?%\Ӕ 8YA%} i'=ll{$FO}9?Es$2"m!Tߐ7@~cFgCfg&?^ߩf~l bL8^ZCrXc - >?nJUkN *w|# !|[uP@ɬ+ 7u7xJ&o \nOʵ۠v,B\1%m"%r;zj̨D'ҹ^d`H}FOvY~i Gtolhs+ɚTYj]%< yO*XʇL |&b JVuvq?m}/)Btk@M18D1)N(u&\x~]4.[6ekA^!>hfOϏyxu38A>$Ta z\OR`F(?cAߜk='K~^&<S%1|Bh1Zs-X],VVPh=7yo%e8vZMjlO~Kf8WVs+8tt.,n80!`=*^6WRBDnBP54S>+ϻv9Ae#* KحT_jiﮙ>l|O%w46=2OJA- z7 CL\n֟FtCƹ43Ptˤ2>R%Bqv͟S5s;K#ݜ hH/Gʜ#Am$Cļl_hZb$-ȕKQ\%eju]EJ9j[oE v|!3B|{n "Fj;YFzLj7w=ӀBCeEk_cOw9f!\2 ! b՚?+frk</Pyy"ǩ:['H:.8d HBV!Tӧ%K/n٦O;4fbшhbLc8#I:ÑZ 9W]wm%%[s _ѦuP%sm8/GDkޖvu`b:8MgoH=y9ӑ8-p,,ܳCЍ k~^yԪp]]uM} {E^*FB~@o{'_i]NReC;LGK,gQK:Q~AG>m/@/iE(+2u!.K F.tA޽{+@ %,' &Y2\tkSޔ ,Mӳ]l/)nB _Yaϰ 1<8qZl$İR1]*w p 3 ՍQ.5gF+/7o{giXכ9/yyqJG3C\}KB!bs{ԶTm5\r_Z{Nu:!YZ]U~B ҼCF}[49mG]Hnn@ғB9Fb <զy"+BTOf wAHrTi3V.+?k*0ErR98ڂ khe%p&;]dl˂m&;q*ڧ<wLWVoĨHUb1g]_Y*xvlOQf"gwQ#A} /mps1^6Y"J=Oŧ䟐 @D#zF'Ks9k(11.+twaJ$Ģ8G{!me8#MH.+M_E7}.~G(7D*F/ /# L:[*ՙ5=_nKCYq((q:b,[ҡMڀk1޳\P߄S{.gz.>5u2Gȁ9_H*{,wc%Bܝ9 5b|^]}Z|3N%ulb/w;Tu?7n=i\&p>{p熭\D64b' >o: D=$}w sʲ͝%#ji!S`4yZFtd}>"vy 7Q}VF]45j{(A7.</Yq "5Ojh1J5:Ĕ -1?6ŲS0Q8dJ\ (Cصyw׳KxVG4-r~~%BGf;3dHT0=[fb,++j%Od}Ł0ׅq[VPEOдcm%#Ֆ0O͛I2=%xg GkʅCl%lX=;!>(Md*p)(i V#P&4~~yWOAJݟR {a `Jr4ODj z>L[!xv=+]@`r}wBZ5'ϘH醸DfڌL_H}9:qJEZnw-` Cݢ1qp{?2S; 殩M.)? <# ؒBd\yl,U.mHk;NHoر'Ww[Vp (7oV+X+XnjqۀA)҂\'P7e2n&Xsrf\řEdT}LJPu=Aw-UA5‡gsC՛ w$n&R.vT^F4]N^FFVTX=p+AK5Vb< W 9SUTpq8B$.B+ "Fukj83}B,, w{{GᔇVP.6ۿpSNT(V\@9S?EV:q# -oxfp`FL 4]9;VRv ՂݼxIQveZk0VT׹ӽG#wS M5iEylH ^v)k|/B5u>zNB' ǩ+Nh b=ҴrZ- ;w;A7jB_n+ZkYwTu 'n]TjXvJ_hgdDn og+m,͂C( *R\݄Qf9R0 pF[?ܓ y^{n]`UEvZEm~CMGXX$!0<]ܴu5._~0 *׹~d;U =Xze Wx8o,ߋpLf&swX\:;MDˆ[3ÏkBy~}̸݈O._|l]Nk̜kgTX˅.aF Gg~1*NC.h-GB:C!|cʬюtM e=~/|  Z@)[\#t} <[\9OQp߰6<DmT3z@LhLY=rfJ<,$ӬpI?ѡ}wj!]>ܽ/XPkG7U6 uZvGY\\qu'xkz E3vl-b1o4#áMxyr^=:vK wcK6UXLҼszlsˆo&M"ނTx$2vkݳ׉ 6 :5B°D]>q54j`TV~l'QՀ&㻳;ՂVRBCɪ(-N~u#5`́\3̩jWyk9urYƀzU agdH%N$~=}u nfBge+2A\r+!any Y m1y}^ۋhDWe@sS aN}t8'Mmvsc"[tݓ?uH*xdv+T<f$RbE9r9O \NSJȷ:b;=vvbaV$TƁȻIMt#sp`u'߇gDIzn?#ys 1Dh ]J?39jL>f%mB4,VY&ߊ5itp>Xt28AQ%7y'B=.s=T?J`%V,Dt}סQwؚo^d[AD1ihb-]tɬZv-=ps:+rQm+ O*G~Veq 5 ZZ)C]kYwuȕdžz_nY;cѯk w; {VtgHVԐVo@XN޲lBs}&OkaۉN?h{Ք(!dtbƞM$^Q]ѼlªUeD@_3 M[ߺ0av7_ x+"8QQ\u-PCXմ8e-,ʇ[:b썧1pe P4rr}tT)Y?TmuA$u_ZӨ٘O)6azv+/c ^ØfI32k=a7ARi3k{8_QpE$iL/ %8|XZiQcV҄/`گ"D:*d(f(ꚕW}-X n9}ǸRbןj5sngY҅u/E/e:&n KL#1p\{(pY@M_!䶏2АU3K6Jm}ٱ+t#FcX`OaqΔͲW7uꛫ7vNJ=$#:mǒJGeCA5yA3@cķWeh^]&QwaK`J-=V'R;J{- 1tes`ilU l\S,py)|ʡhԇ؍WIY#lS{ez@HIL&m{K ;wVW#6hc6$Uu\au?mxiȁ d Z+zbay15 S}v ][~#2k$Cy>+_0L3Efy>DvSNt3ִp&wq0cIu/tc\HLgZN"PgvК`6{5b V<!QL1&ZZUnU);Ǖj(26Gҝ6{l6 EA֟hlEKf ڝ[x-Σ׼š]!^Y- $~la~RkI=<ᷤGM—9MrX^eՑmLʵy7Ou#^ 7/T'jz@*SUu %ܜX:dnm鿡([ubѷ5j ?ٔ2PL_TwGH~h_)IYnrXōF_)¼Wm:>D`y`&_$2E #`[cMn/ L5ℌ L90`բV<9VOI+/1?h /@ .RpЫ^{Xf\ MHF9;m ZDBz,G57q30y/'z u*/ k41ӔI`_,y]g D n|%+V"Ley>kOF\f.-z[~s Q +ʮ3p@j0|Mq=i8g̉vp$G.Q9:UWm1.ubW͖A"lih;2/#YwOf[Y"]E$sPՐ׈N|- ~K/ia x$VC$v]/k4J;:ƦG6"}j0);l0s\:Qm06=эUr\ei`[A`Q"&۽TRv%&,NX^XajM͙d@8R"C&S-80 R>\4q-d `::'Dt@*S :vKgG2# -=dz/Q{jh8/τcM=6E:%4={9Bbγko#fjq! XjFGShH1rQ(L.Pyʯ3JW=*;DȬ[Wĉ5j -ShaP%>yv!Ix6z0?xJڭzIT_С4Lq[#2[rL;eVqsPBBJ !s!*Jvihl|bVA0]3{.ԀHkJ&w O%]xjuufQK'R^+FKnD/&r7d#hoyn[4e~8UED9˻iZ% ]hyWTWt{~$#] ցCF6٠7RjO ~4x 28 ưby,qN7-N XϱeZ0^6wIi gf?~¨? ԝ"倦<aLɌejȿZ%4+[1@;webadAmO~:3¬}Ӿ9~eqigͱl[:2zډw,ǎf1z6+%$7mJH2;oJ\Vz ohs 9AMف$a-qu ĨJ\d֑;._ۤ)13Y&VN!9C½h<˭ܤzFEUܡDPQB9MT /^hVI}Ǥٜ?!l#@XOb&;~]xH~ Ԋ.|NW0 ZnĈ?w uHTnEUH;< ?8 |w4 q A'ck2+&\GҺEm+\bkhWd]- ?_I7-+:ǞmOZ~jk3'΅mtIa3eÙ}=QۇӥT=2o-;h)\v;ΙV;bH-^Y`5h*"M㙽 RR\Lbx?d ZH A-G)*Ͼ)IAIo/ 4lQhXǽrL&pQ&TcC_~Z]ȤV oRʼnTs60l8,O<=tLXUIfDy$//($t:)UOʢ``:u c4[eKCJدyUudA@fp`&/rX>wlj7YI2D%d=0# LuQc0 ]r? $D\ǀrLU>p6OCEÛ}0nS:te{!He}NS! 9c {e@Ӝay Y) gj&Q+~_N8oR ۀђy#>1Jd=>7n`<1Mm&D>Wv(@uSYeBb$JQ￁̽M}Ejl"f|̖U&Gw;v)ߺU)GGU(n2mcM7`=ܲ= ":y^(iۅ CtvKkI]J@J=SdgU MiXp[u_7`:!ؒ~%å1=,qbmJ%PO(7fi)w[ohc3 ftX_|>P6uW#J>"..mp3fk/K(Gfq/Q!"6aԛMM8P}0%Gjt1XEZn. jTBw֮" lӻԻ,AXĢͧC]‚C+ ŧXq+ e{H_>7rv/}tIt5TQYDCK*nX]g|HV i.Y+Q \:j^BGE=]kMo(;\~. )J0x7]1BLQټ5Եs&+O觇%+ Jj-2oJl:C >ѧS%98F;>3[bF#;zC&ؔAB06Σ{65A1qFQTygYM=WAf7Wenz'Ei{eqx$3- 1g$T9 h 2X~&9p!⢍R8C ܈g-fz%rGVt&^A f=XL[]YU4mR1#f!a;0e #S1?l>-@#ߟ=3hpaD,#qNa0FZ'h4t%'  Nht].2(sl {_X"MϑVxe)ݼRF?P=C7_ 7)WxѰnFO/h6@8[̈́Z^u_W74. \aXo[+B1N j8stq쥿ɁR A|taYwjg懳2*JHZԜ8S-vql>HӠ1]0b[ԏ{3b?4oٳV9H`qdn&p܋,D'ݷJU_b_&|.Kj]I!?tO`PlPKgf6` A&ټFC%=\"7˭JW8I-HE]\wŷ͐CLyC?sF 1Dn"ǀ˳v!SjCyKNsmFc*Űbm+{2NGL$5)䝥NLJqٵ3@K0H8VA3[ i >FD)cc9A{nWz\ j˺jTHmV1oea1;Su`v^Yn"Y] x|Lɕ2"(IDO軍[6'p5ņL^% ] :Nx7Z$BϮ"Uت?ϾdqR'S}I0evQO>fnmMŠ\;aa]'$ HM9YctHG31aP8A%q2:3͔JjVxOUT FX BEjbE0iJֶt('@%ُ =h\Ud Sn0ٍnS!l(t}+\goM% fGU^g<@ >3`~'Аȟg ;lrWω*_bxv:q:\X;bՇ5U%dh2դn]3$M N՛Ɠ~F] kxrXֵ^bRϝ/<4sb[Bi*[!@/DLGS٥/p5ip#c77-K[¯tGqV+֬p)<Eept /rp8$-ҽ}"}Z&WVWbGW|/W rhT4p^3Йu-鹊oɿ`F ;:JV5zعA}[X;S6R 4XQ)ņQ~fMWyЙOm~̕c@( l0t6F^CdJںxSJ,g&ceJCZ&ds d?pmbc2,Kh`}̏%EOVX^ː Wk/Qv9>Ɠ;D{hU-5L Ŋg>,(uYf_C&¨8v?'g;gi: o63γ*"jG*{Sfho":5 r_ȔP &iM"IzJInTAInUЋyunZd8l-R?wȟF^[ev3ΠѺ\NGZwB ~cgBmL]yO}Њ..ji^ nDgȻngv½ӢI$ߊa oR&t~N}zF5/="SjgS*mI' vY'B6 15xTQO7΂Ѯy4Ha3Y=9Tޒ*QCmHV88B2&n2-@ qssCtA'Gq!q?asW%bA܀RF?Ʃk]HIj#Ux`%">UXR{eyh,{%m$AzZ:C,ZSxQlh-Fm~-hYc\`i|2echB{0 ^iP$ m.Z32pYWB+S[EJ{Ff4yV%`^:ꣅR{݂o8!%F&V52I ( u( NogOU)"6Z–(h (YkC饈yn`V =0kI)ģ _kV7EJx)BtQusa49\;>=x̶jw4p3<ReBUtV /9< 9Gc݄QVbLv"2_'뭨=s$[(@3sJg `1,9=B>ߋew/ %jc'weh[QUg-4-L.$g?I~O:zi $DFγVyBoe .? 0C؃.lKKC*X\%)slPB#"ӛv3 ,qv׆@7buGT]Uppv~ yH۾}eHH%?J5JE`9IHZY hBTvUE䇩npAߥu5Ix]] VU,< \I;ٷpyP:+lnlrqi e5#'h†E[c?}qZc u~POr[-*M T{-jAqp|&C ^mFKIc*M }3h #Dw^RҥIݔ[Vs()W]:Ξ B(”M:rNT hZ6OavcI!EM1W(vpd6=nVPΰ&nSrZѬaw)&Ӧg1kr-{4 NN "f;@V8ΏCۢiA\U"M1-B3!ߢaF\np^CJ )wvBL#r8S==P g }_NZg~]84\̍Il.qbv(_=6W6X1Cz5G^d>#bPԓIt jfxVɠq+d,odJ!*`WHFO0'ΈKSӓ\-js0iH;M%>vʠoЌtGKPK١P隉c?^J"Fp 6o1me5>#ȏD]@4bfф2I6}ܭ<֚)tU@j3|wyPQ-\PUe0ג]wTޫ;/4COdWRL!gLSG:, HR? GmZ>&;.Fs.ZHb0*E\Z vT ɚ1Ρh=3R RJ|"^:sKomg3dXW\.aof8P Lk*7J@MGOC -R"l|_^\ PD<08qMv;͟Rɔ#A|Q"Q\v1i]k":ĝ͆#A=iFcj[B؃1 Y$iHqN$6*+ZJJݷe.r݊*Z\^}GC|3#SYu)ቊJ]#@~xK$Ԅn.b|W?GUڹƇ(kKP3M]-ʼCՁ2%Z'aG -1K6d ?2>/½V(pϱ(oZ@r|=-TdCufp,mqX3كZZ7 [X[Vj% {! \le/g)"߽ǘoQb8H R5IB`4Eɳ)e7ֿ~꫹}OQm@s"E['0Yl:FB¥2+,[Zv1TZOPgڠFG'{?9#7GѬJ汱˿8J>x۩W( nb?e{ZY耚*Tdxˑ%[.'v`xQ˔3ېE 5EYk8ix~|zamOM<09rΔIгd"$R?nw͑8CO{*BiKI;'ŪL|m|[] 18xE}`2K3Dy̳H1fs9&G1JLpS;7/,B[]H>$u3ZyɡA() Oz6LA5ZB|Y't%'/ٰ[`ĨIEk9qI2J9v6W#g?3:10*5!߂پV^6Cz:Z++u<hHaB/ ̐zdːsA'S!7Rr-7hВ`y媂^OJdSfy[0kkU͎AK!x=tސ(Tk>U{gd f% 3%Z܁7~t'"VDS42usi4S˴TS ,EAB4b?QJuJ ɺn|EF֏ഞz 9^iI 2ʶc. 1FFZME|aPCo e_2pm8g ũmTX8'7ש&Rǥre.|zMRE(2b>߳q5nXI<`qg;C[ѐP?YsSSŐ|PRU+½a0eXB(vІg}',KʖtgEQƔN؈4{́{JpWZAA Y8@i5GҏS.B*f#8r"LbRu Wzl,oà2X6~І[*=g#!Kʲ.l%l4žp2kB/#BR31w g1i[4.7m&vktO`}VbBr2sB"WwNeN3)Nk f ?8qw\:07|-MFFR?9ݽu_B^CHEgߕѴ#跂rS)[Qi r{2+!n~ͥo׮}TjԬV<WSBj {a8h)=i(qt,I]AT>Ů35ֹ~W{_6P@njXA, $QChD$R!(nqp(XG QK9uP964l1>ٞ9zH/״9ת湩宍ϗ·򐡤dl@Bqb?ީ8WRR}T}6pjXJg]|;VwSK/%]é5!N}͚D$Q#H󰄞k/˯+;(k `Pv5o:)Dڶ`^"j|et?VZ-q H6pV!bz] :'wXr׆LbЖU5y{)@?[F=.96zN8-aXs"nrՅic1=A=,GNO0a׈ Jofg0dX-.*YFme7GzT; Z/3.tןZ3#P q!G& "[쁂}= 97YUsw8T ,Ou2Ѷ,H^eMDRc!,͓rPDCj 5 :W^x;I1m.'c#s IN 4[gO):!np7=kQ|aV?v^ԨEէnBH]h &5z'.ؐs{e 0ǖo򃦝E\N`0mHSuhA !pEDm[%*Tqŷ4 #+(‡Dp|HpImMy$Zob1D, .[uԴz}QA͞&(}r7?gBqy)ffZA>UqݔjaMƮ#pIG?UB$s)]NQ"Loً湊.PwE %{3 Nv+LeAG6xX :~rXZU*!R&K^`bb[Ľ3X\4 ^;e&H",e @m\$}2Hжٚ5+ݣ7*Q^gpBM +h"avVzWݾNbެN5\TP() >,4n1B m|5@ ?UoX+L'F-rY+0Nt!NgI5-W`Db lC+]=ټgj߀j9Rw)fS<~sXnr$}GL]p}X6_ɦ.W}9 #B =XcQ< v |!Х!8z6 2c|?cTdF!9.D ^)ItXas n{@((k_թQ3),.+b<-A4*MO,{l({H<2)Hܐ5dda(G^p auwR1u"AM0EAJ]J'#0=Zx>'euRZȳ u,2F_h;Sb&fX MQiUVME>;YGLsuڑxVTb Rbz_hqzf_80liiނVse[)[9w.@CR,\: ;Oev&+4}?wn,.OS  P 5e.L F:s8SIQi#{>b(޷HsN G{daoձ6%"it.9x(|㤇&Dٌ݃l^}E_%ME\."dtX3Jx7elTcWF:at6Y%/jC)U.mkE4xjȼݍD+;FE4WHX!oHH$Y+gGpzLjTGLyﶡ9ݠ_ymyK }?ljFu{y&j4%D5ԇ6DN[!K(:GnV4l87Lݟ\=Gp/ YHlء+w_bwARU) KR?DDX).)ٟːE\t<84ΐ՘;aS?_؃j4(-Bv\k>M wR2Jp>CSQU;qsRmf8AИJ*yN-p=^ʵy~^1цć;/פT;TC|FA|d'dD:^oviv@Դg!Гmƍݿ2 @5 hQdwING0Dvz jhS 쯼T?i_S f:S`E M7#.䫨Wr؆}\ץ (>VuRhӱf[8I`h H*-ǜz_܀b f6{%A:KodIs@X3QD߻7c`ǩ}"/C8zRW^|lEuw=~D; OpaFoOUn/ږ3^q$-P bizMtaVXE3n֠Lk?:VZF5>S@iݺ8.q`$ɡ-ykg'?0cG̑#ehHqo=ۙY{+*7bs&Xo>nD[~ J1=s &Ax9}CV ,4a?AA 7K"+dߠP)a_F?0`[ J \kI/>Cg3Ȭ]-i# |wֽ?7c:ޕcEHkm5\"is@ +!-rUL Y.pyyڦH}*n7W\`!{>(, s}fM4mFةtAw ~4%"=(rf昖Jzc9~) sl3`/{~82mZi 99- )ØsX\G 1ggO*m.Bl_nhyJxeF!x"ait6JCD?.Gfc(gv*b WHon0W6NCP(qAqT0㥘 D"|)g)ҡAٖ^QKDossrM$VvzU 7ƣE=^*55 PgSdFعsX@$[cʈυU>E e/K0؏N8.ߖWS<;[[2PMFM9-wv*PNuny:Õ1-72[)h.P vѯjڹρ)Kz OV"@,WcvɴOecZhT 2OVz4Tq|웉$q9Uٛ;t3/Kb!\t=f]@f ul>Dwa3#n$Hd!޺(%@49F;숱POS.n|)4vd2o4<ӤBX$vHEA'͹-wܝ+У,"5*Hr_ۘ}e\c)6ԶXl~8Ix"M h 1Vx&K6n A4^I's&O+/y5sxRC $z]dz|JN3EOHtD_L M.,U B>:W!)=Fy%„AgCZOwF?k^Cwْ;X>BKj3!N=]~Y3?!7G]΁20J'HNJ<>Dɩs!!/gn^zA?h_ߏ}pq2Ʃ3%E]r8ɮFjٯ\ ? pw}M9f7xȉ4uvOu8E~L k۱[}&:F]GQwx qs^:,GMxXcZ'9 yo?`ޟ% R4 Eۃ@Cf~cn|W;aaF4qKmtsd8H.|9>5A ~H) GN,pB%QAR^+UDMrNT?yTqŝ)Fthbv VFnTնD9}߻-NPY׸%q +gZ:~NW5}2?@n*Gfee^aŞ7s`$ٕV6.63D$9F/yLC2<ə=:'OD45I+L$>EfMv6f$Ao_=)%N̒h"sa?NV4\5anx㴀Pnzs崴ƬZȯ/}9f#s{Msԛ]ŦΝqua]|R[$:iTp&5Y_obs{rfQ=&CNuXMFP]Xٶ~,&# pXlQ)s^;k$Zk_CTo?,W=w<*8\Z.iM4=Bl~T0fĎDw<{h r@Esz^iW&W/ŋx/+B@X*b ʮTK seoc{0"3QEICED) GW0*ދ|F"7F)ud* | jOUjHXiԃ*{[ CCAי+ҭ-g#QwM{(+ߵ 8H ~1j7V>~dY1=4=ջstJ4 77lݦ6Wpgg^&×a&/fW/ f3QL2۬p'ɨկfWum$Z8RgXԦV?rh>rn\zZ:X 衷 aC/-?u]-AΊT%S0@bxIˈ[!ǹ*x ~oS{V5 Bx:X^eaj'/ 5wo#!Do}R)cR糚 @t'o'V[@FY;1cEx0I +|&?үmF '& F%f-4"s@ ̅ 4NPs< ZOn?O[w%"fK=! T9> SCH$C_e3VW ShzRYb" >#TG;>04rTxHjif&2"9E.];VEysDB~9wf1̓b!RW+' z[2S|@J^iLYDWu2PB<$۬K 5Va!(H} z׈ɏUjOq8'"VծB3yBT6d>A8+ L>kp3td=Orytp,4yfWT *IZmkX $c_S NdjLnXYR0K\CS9EnMBͭ]Ā);`A+}JjfN IǼ $AW"Bҽ..W`oO2@ۦ*:H>wιN`Ӿ6N*)V0Zݮd*W1flː9G5GJz'?N v5~ˉ,YB<؄- xddji|t`8щg<I1qFz'o*noPw3MkE2@I5=:th\Vy>.N",畍Z"/0 NlxN"᫨vjnFR`q_: gbI)0U([B&" vjt;Yd%_{=Rw<oYv)̱4f)jɦJP2ޖ`^* P.8!OO:/=~Wa%@NVch`/w}L${^>68ry-4 @$,k!bX E2!hDB PR:n%&:Lf/3[YF#^ӡ]t,6e-G6m<awdzrћe$V|eƅ3zqC1( oF^yQa|ǹ{S.$sfeEb[bq߲u|@ΕZKR J1܌- 1J~N4rnz $1a֮H - {(0 v9(@n92l"<H~7HR0gBvZ5MC+^vmuCQvxߤ}ҔvnBIGĆ J$~P H 6Mj<@4J=(UxܶZSiT!32hns6o7kQg.v2Fڅq\'sԐ=I(678ۭD.k E^ +#1{t&KI1~ m] ْ16;w3T{J`HEezNWϙ6hDJ0@ޭv@>a0 kA5f .,b-/E_ye<5yaY|5ZqY A4YEǫWTDƉOv^b:qM@A3ΰ5,TP`ܘ{GȷѨ䧸zT"\I$c}'+vD l^M iQ Nc)whωՖ zD#(9qcIM3T,-'+i3PgI`Nܿ_ δUx=(km\߸@ ӑ$_J^|0?_°g=R+4YfaANGYK2:"WO:Ғc,aG/뎏09}h{4VT)ۿ%ݣ*"{nA?s3GF_^K˫/Z88FlБpT9t5T(J4I/n$GF\%]F~ i;k]5Y* d>h≨UQkkΙsS ~kF2ÏfFL޸8KWw<>+JB@zL4)M3UOŞ,$/792;)NErc,t ;@,rN FoZو dкYItGqWcļ! Z @7FƓk,yΥKr%4smzpQڽJD:D^ =We~Qo~"Tnֿ"\|RUX@{7s+x ܜAY ts^2a";=D(;q,Ph G(/ٍqK23( #x@`#ƫenNN{E5p6[j%,* UbU@lWfpT8Dϴ\?ͽBKRSZ2:M+R mb_ _Xvнܒh6JqsWF1aw@qYmѰdʭĺ;܅,nZK1_))U Dڟc=WFI6ۈi'Z&Ա_ۆj AmdbA'aҎ+ű~ ]sa?Uf%Id@F&.o 3@U "}d_M'k2N[qU$%!^A {_H4@Vҵ9+prƁQUR&LDo4Ejiw!'F'ǙhfL+&.`lJNOhI#/!zX#e}Kߴ0;v@)~Ũw5񟌳Fk f5Ko4|_wfvĉrzɯ)Lo՝妅s#<5L|k)ѯ6cbY`L/ bs:MĥO \:^%Tq\+Y K*ȱP; D͉/7,q]M?KU:r_əPCyӯ': C ΘZ6Y!w3 lWv^>Nj'/hl^ M;m;/ŧ%IςTp= ٥ךc쪖BIOl0ku5xMpmƌ| 7` .?q[pة|AkJ➽^L| ؙ` sѤ6;BВ6ׁ$|ⵂ:jź+_ ;}?1*W@v5n2.̦CF]{7{JW-pa`Z Xt>\F`藳$ @D8 ›ҭw˒"U8qihz])ǩ*GAke =ҕss yRb lF E.$t|7jVq:;\Y㠌R@6LihLu{&2%O߰]I:{,5Tg0&BAy*1S]ʳƶٟ(|M~wYΊ R@B6֭z߉S~f9z/eѠסB-k{ʢᵴˢ2BJpAflՙj{<[eFAsLpʾɻ)hFY\e' |?[bUx:f=Kܧ,iJ.So `|5?|tS*fmw _3-v8ӈ@6Dzعx($w B_ϪrDɤH_;ӯd ORcio\ׂme$!.!R$7|2t]=AE5fRcף盶o]!YM$ϭ!s]/_}U9YIH?́UsM- A9ܖV/Yc*'JB:Ū>)f y`7]d\C j;,7HQG= Hs"c2 E -4NcVgb7:g]aű^2#'߹f/Y%eq''z^ZҒE Ϫ0 '"l SZL|yD3ausŪ+X^qop^ ̂D{F̦/aKiHoi#C/bmWVظu3@}3 W^bOX*!@7w `~LCoEP\>;߄Xd< <UQ 3N#/p2 oA ~E&(؀?`Sv9 =tm.m&~1A[@UQeC4oNV%Q^y8Т;a>g<3$kUm;Є,7]'y06TG{k93Y $0oWZv_TFc d}x}V` .sLUS<:cj\(*mup)?]H]_! F "5 ~,ܨ65Hxyj$ W])Jfbs))n,Aͭ8L鞬+-%!ڗزۙVU4%DBAPp4pc`U0-{oƉS310]qf5$İ cUR}ILhβ^M7n+o]ի,c}6}eD%Q?.O=!E lySb+Գ BvZ*ԩ6{V/?Fh/7UX<Ǧ"aβ㮾VOSs oNAg`6ŽƘP♥*e\Ip&PTDVz+۬+\]y->切'o׽3HN`w>:#m!ɿ91l@/DFEKY 0kA;ӲPlR )Mіf  }i-ɻ:&ʬJI㜿BI: {;,GgaDL[fcX+' ޱG^uΡkp6a }7->f+Wyu/RW7K}R#44oVhlF|q;EtWn~<.xo9UmXwcV,5,`/h5$Kvhiw5"_OTM Uxyү3=i! u#Ǘ b=Mspc8h ؙ\8rH)GBH4xQ B6̇H@Ewu"`)87r=XYP0=(| J+f7ձĝ81z-7oں_xL[);9.70!@M"y = N{!hM%, z=ZjvC4J"5BdgC4C q@Nbb(] m}i)":$ȓUr6 ]4qڎ1YW1K/J7t^\q Kf\Ԃብ+Xuͦ̚) iљ"9&]3vo ],mWȆIw#zq %Ld2𱉣68tu`s]mu%Y+sGWɐsn7j۠$ 3F-0(KǔͰ=O=Ym"ɀ1~s< a̴*(WX"/̖qu t$- zl+P62 Լu* ۑn3jJ7X $͛Ed┒\p?2o4~tg[kZPD>'8 PE6 %k߸rtg֨7ӕH[2uW$O9 g6!/E̼smTҧBdXd`y^@9Jۼ 7sAi>Ыn\J(խ!"q&H"K5XYg?3 !YW0Uk Y/BƔE7g/<;icucY2c(Z/Ē[|Ἇ&$[FYɹ+g 6)~iG8o߅>PӈI_R4"_ZFNi?~XGoJ|\zwZ0- uӭcQ#iX2eۯ2`(,i0;N{$Qz^.6du=PEz1jejfFhW iZ6PJ(-eI Qvs ';|<;D-$Diz瓬M($&ė r.g9!d&kEP7x~6THH*{ؘJ"Jne$$UE+b{۝yJ.v o۳XGCU)*Q{Sx__6Md<3up=jB:[gQs1z^,SvLPYzD@bE6iXd9rcTq iO-)돒BZ&Ejp|_xw4~t)fLbHhfJJ%f)'yPO?f8rO^ɽA*FLZNV3#P|!be 4 pI Ґ̾2\%o"u_LҢ]ŰqsM 7LĜ3BVQ936Snܾ]Lcr<%ؗIƂ%jLѥm6͋76ߎWD2@ƻx^(;ag(2wÆb !m韴|fuM !Oֺ.;RVv `n5Rk*T;2ۧƬJWXwAG̽#9O媈P11 'twQV\ who3WYtWMlu\|_N <S\zmhuָCvgM|xI`^:''g9 Z 0D`M X*D. TI}½cCT0nu1B2Xa }P:u&lq)KԱHPH:f3.sɶBW H=F%M1) pQ]ov~mƽ@oޮt%ppx8КBW9@h :;:f3)bF`F:;()e"R-S潷ݕ")2ОoX3{}=5+OL=}y kaFGKg[J+#E;4to,>Gtt+ 6C}E8L<̌}>!;edﰷBڿ"/Pr|"bϺ[25K&(.Nq)OLȪ5_$1S4,K^,=$UK<<|6*~#3oO.,SdH :(d BWuݺuNشƞ$@k˦9_f՜>n0@*KE%ӏHupdBBG5(v%lC1E¬5X?Vc{_ĵ+0u\xX>m90pnt٤=C9X])|zՋ?R"N0>8:Kv͑3iP ko,W̪JM``Vo̐8BeB=b&dI( =sDw~|G͇lD(bM60Qh}'R?O $ol6=^vcN ;C{?zj^V +DT b7JվDj& LF; 66ՒmRfdW1hFT"V~ mMw +؉ wUլXjݹ,{I\0ǎ5]ȷM.b&Q;O]&x[@Dd%=[v7Ⴧ-g$qzK5PcDӲr=O/ك=N\a8yy;(m m/1A{+D6* FY/ttZt66K;vct>{ m@c)ܣRgIN@jTv'cV߂@-vʣE`qllʟ_eRDEeh/&2˧_(pWI92K\fdp8O_&{/gYIҝV㟡K H[0R, *{xۯ:㌅M*%_vSYr6et2qUz%HfMbmB&-O$N*]"+ ۷oU`)q[QʴE_-*B .eW |tEK[";lKu} 7iEg-ZC*c [UȂCF>v1 ]" {3=ƒ멠3ېO609G^A?-ٛyIVD6VMe.ʟì&B|zFvsLCO맲 bxMj^/}IXG [NqW!Ԩ,( '#fv]ŵghq9[1]iN]*aIe9X:}\ɿ*PQ'I FBM .4Qa۔'8|ZDe(ߧ]BFd. ch{D׺F9 "D*r[eCӱIQh#tIFȯbbGdR)i~’m-3߿w!êu-=N|G2~d;1K!ц4 s(hO% v/,Ȼ1Yrk~Jn]DByBԂ]fjc@7|/O5?iғC|$޳6nǢwPӏԚxY+ XgD4x!ig|4PEZG)G M{:̟p(f=dzl(/9 g"$m`tnNGqww5G,L /Y}XpyGȀEPdX7u+/9k^O1\ տؓ $:s˔btiəFb@UUU܇7>vk&llsziHB'+Cm?l*̷ye֞6sAimr-"ƶ߉͘?-;&%&| 5Ǒ бQzDB&o2Ge;J `[hbۏ=XѴi{IzlYa+fn_, A?syra4W.4)n3 *<4 -zZw5 0͎MԶ-gc?FejTVi2XGH[%lYioט[Z<,lj.bRګnNLB8Jٍ( 7ʥّ㝛c *JNrʋD4B~`&S$o{ùO;% ͊bFIatRV?, $(<9omktecfEǾ'7ɲ8|Q+ii˟6}d,dC`6T]VvlJ|۸azY#T# M˧--?،:[T2±ϔ]fB_Ճy͒IRԥXE+5 G$E!a(Hσ|VX +XRST%$t$n#ƅ\1]yz[M/X~76خF:Kq+Kj/!Ux|R tu'~V9c&!VX}Q-C.aFv ';nY־B:y n^R&LqL[nlaz9̷\敇))#lH/_WKkL6B/5b3ʵ0NS@u/R{t)ڳׯKr%gqit/֣Dru/Rg4rz8x=,g6A ꌇZްG$DG\6Tz)elϽXOt$:C2fGa$D𐀒5dX3I ttOgR'FmW2 p:?٬ Rŗo;'Aw  Z.kz_Hg=Ly3:9o'AEJ{kE"ԥ]FCLZ4L p5H师z!:3K@m5 Ir:L@JaE 2x,o?s9sB 0Zh)bGy7X%q"{i$4>NPeޢS5C2b3RhBl"]Cz •Mb`P=+?&lB~YzB̆=sJ)#"1bEKEzq q$NkezSGRoM%RjAy dNه^I#;8塜qd qiE(BĦ^QFTY0HWU{I] -ԗtUMYi>2խطÍoBt"c`܋@'.1zИöB.aL:T} C=.b$i [ z5+ԚzfRE0nC:^+#yp1ʺ2?zڧc\En ՊcoĢ%= V%z(WW|61r_}xBN "輮_K: ħ3x lf)Wdg " 荋c{[Ԁ6o?[S^ɦ#ylWQ(?wh{4.\G"mW$[7w'*WiuVU;}5+&=]N{b*O]{3i@bg'Lq4$T9 ,ʴԖnQjs^T+Iyo\Qt. S"q{|{d&z`wI}2ٚluVK{ ϸ 76Ph]LzV/@n:'uA:$͜ЧdQR_j…~}dFK8BSFv$m-vw,Cv2>v53X3_E~ϊ˟R:Sw۞^Y[x59@Ϸ".LF}plpjD"<@Y!2(ţF"*>lEd 9]| V>OUKr/9r<[bz;Z._'`VFv[,/aM3o]i&]$m >=hV~0 g zVjo+_c{MMe50-UbL`zrl* hi$8۝h9\X :Fpcf%lo=:ߌÞi;$.l΂;[AV (sNLZ׃ zv22~72}+sg(fK]ض^(#buY kh|e| sM!aY,Kob8/׾fI)%DЕ#H/z'>1yx|ǶX˧_Jj'^nr2b|F|¢Σ"JyN u(Q3LB Ē8&jYFB%1U)@0 #<8W U {5a7#/1?T>6zW&uP;zxa5#-!Mk'gZi6=q־XCAzuz >edC{0C7#n ƊJ{֏'&VNq\E6U9?!+\ n %wCzUxLGpH.Xv /4fЕau6xf=s>G0YB8Fbw@&^̪2$!]|<ÒT[RXǬ74ƾ[iwecuM4r۴ge+ N6{Zlwq4yml_zdmJ ɝ +8;26BMZDU!poAbvqܳ6 =0G׭.V3.j PL,JKYXv9Ul=[ 3rc{||kXkUԃweGZ"}ӹ5 cBN^ۓDT45cXd艌t7~T >=?1"d+7´H|$b]7&!RτvpƴkA`^i}b,=SI1c` 6P is٘)h~(T%5ȇze桓7YGxE<(_ 5>: ^y07. kzY&:QF=e<]^ @,Vd:kҦ3<5 ^`ڵ# 8_Diq h3o ~9*(y7\AIz#gLW?1ٖ Kj1ǶͅFBoJ~2x =d;_zй@t ENdlP 0E~.dd5b /E*?cY^_h Ϡ߰>o1:O/V2~ +K!, Sd[n64sǹBOL}fbLQOu2m}HSZMj $fHQԦfC3)'%f-y!}Ks鰠8hvN([]^Ѭp kY84:#oe+*¿  n5b;@. L4"<)$x `ܠy/:p .Q5D_Daљttcq*̝5쪱a5`piF=*$ ƽ5tKP0vTnꏾcx۝u$N5)8mJ/ixVTŞ[j:]֠vw 1q {gRb)6 y_ab{ሽBj/IF`ɿ%xIcG^,W3)%=m/ &͖Vw.Y}/K9QȲw%م~D<=]&>Z:A[6=Pt{O={P@ * uu /,"^B=L6k(ߙςS֋DNZi ޿(k9k _p&Sfwвh=AKtSo!Rd#gEbKz}\5pQ"SM,ptglOQ΄tii<>kv#UU(\LڱẾxc=]0;ʄU A3j;Ψy(N-X87_AD۸VT8}ݬ0v=1b(տ"O@}ܜ_4tm 7C-hk"v0h1砲 Og˓E|"D~vs:`V3˜=q|&8h7z$c< ST+s,8cYh E1coU{QAI>RMF +&hg/LX@ϩ!mΟ=ژf<'j AƢfiݻɨ 9ZP x2h=\fN~Ns;nI}5?ڷ6-Ӊm@@QBNvlc}q"$ h"G?\JCşø'I_dDXv+s:dEAB6̵""6k]h+X QAu8sk,^ӤZ2u:qBr6Jɹᅳ1,gHݲs9n|xnPw999Oh?y.YƔz5S)F0qYBv0*}}AժŬr7%uQX\Ȁ:i; ;Y\X7g6,E ބ; 4i3*0j滵TCaVK?7@aow.xbx{ښ] 71': }L`=a5XЏMTĨ,4j n8(YLп=^uGi?.3'7y !b!69bYΩTLy9d.R) cb#}ej-B4 XM:jp! QtS>xi26@\ao<~na '%5OJvIg"H8c.MofnlL8|S jZnǜ~7i:GCW,?S^! GD1Nb}MdX6Nt*gw7#MLE6iޡdpӅU6C`t6 F9ՓPB@RAdž5P t2V*.S{,Y)(&_!S`lxVlVE-㳛<9;g$N0!_em=+؎9PϩS;71# bnn\. Vdn_RW~v֊2Sw3KapAƦAR-ikPP}6M`:7?kaBrZ(OyqFv;G4 B2ED LA#ϒng8Y`WPo(pG)SpBye¦ҽK㞹m0n愊Az{,XC ϼh">-WwQ!Wa̫0X0uNCi#×5ѹM-gfΏXP^1,r^z`zsJm[$HźkL 5u$]\f.f>cՎKҌghxW^lo6P,Y纖M`js%jgIZŴlK:94*ѽZ J_9+G\j-?䰯݆q"d8LPKtSHf\ L_+"dUۅVC:qIޯ,N;G3FqOĆN a1%03m}z@ݒ$I% y8ԧbZx=ϵUZo O~6w 05PmL5]Ҍ40sQ?Tw.&oA#k{*:Ø:1NgI8{I4[0r(T.J"p&|ЕT܊x\Q;ܡFy 1뮿r~X ̧lI1]uuV&\3*.ol<مDƜsZ&'+vB[g%n•nTHy:W-ޗ)O@3NBHK6)fOKP{d|1Bϳ;GAīċÊDL--~ێŢh.,ZXgkjPSVq cEje; ݋ :ѳ֗<ʝe hF$'r|PJ6ib;WC|:v% S: `qjY~O̲⁦k7I衩u SsmEQ3+nBU 'ιÉ9N,= IM(.ꪢϾ]gٷqݚGghW@u9\V= Ds|F)06HJ{V4ɭY]#મ6f3[X<Ѯj^ y;QLr}srN'aS0ž_"+ވ*e.h=@Ln3avgmS?m!9UeO ;6CQwN:b\o\)fuiJxoB!357d]J{bGJpG1ͶHhzg?s6藢g#ۼTF+`.5̓>=0ˑc8 zeCQsïG61j # Mn7?N~)bUyhi9`Lz?X-~")^!p6!:kP =$ G.rq{&*O"J)e Ly#s @Y+};U\}ZK~F.)Un*I77MlOi6,jxy"\h5U ЬYyצl1ؠ9֫zжI- T9?"N7R|.ۧ^@Q4#(.M&1,wj!XATO v1 ,Nv"AՍ b~"i%rʽN֩\ py&ܶ `N\d#nVd;l7Y^1:E*vW[%:/3;F!mhz2~PjȗS"GasxeѦd#[I]S/T/6w &aDP2,v'9n_Z}TSad5%r-#,=TFi_O$r6/"&MLVK2쇭 hPzE>Yo~$$A9p퐳m@ĕ?J{XXho P˜Ya#θ u:nt=9c?ٓwtN@:/$ mmS\A*?*֦A>Pw#FvӭN)kV((PDS L9} => H.?,2JCu<(R,ow'$H$okO$ Xӹ-M3IDJ竷T>r11ہKǦI0Y>#VBļ܎e9G8Y7!tXvf?D/Ox(HN=g"n@TaW9a{uUl9S' #wc[Z-^mbt yE $?,iɂJ"ǝ{r tpÞUGu"ZE,rՄmnOm!AJթloi'j ˸"Br_ŚX%[qb9,Gk]|M˼ոRjLh_k2$:(!l.(PߩDGeoAf %@Bq#'ng:rٱ9u IәLiiu#ۉ 8ȱ_/+6UDzgu ~Q[i&eߘ1!R Y"iWja,.;fYQFvĭzgGU Zܱe.y5}w`W/4΁}1R^mTȚ鹽awDNG ]%e6dp̫ ѿB  zwKKrL{ˆ|>)/UY> pغ/St?OP@aRA+Fa[e|!bR1/h5pBFˋDʡǻZORΚؘxe.]\dCF\-W&T2-$2^ ^\;]Pi@_](ˍH̢D#|![Eni_\+?_:Hw]*'wV(B(:: D@&R>y$Qs ǸUG -j;s>iP^mE5)6J,ĺ$@(/Ð!>ߤmЧdL^5E#ɴV,9Aw&Qsf?3 |3wBARv#|xY NL-*版{ i${Y?\}- NBg+PWa[IV %A؀rm^eo~쬲wsS"dO F/e3C:3a2imq]nݷ.Cgy7gU,~1f$O1_:X͜)_DC8`̧\Ds@B[EMgXQc&;&{lI Z#ɕdn1/ubTju5D\MAdP/oyy .Qyog,SfPJbڌ@KF[*6rU]Bz߸hވޜ=ź]u؁kZ+@mҍ7C;NXvV < NQصϣ9:}7KBX,_ Qi d&H ,~–3_f8WR~5ti@׈)JeSZgű bp˺CD+|Q")aG#竒&^FD8daje|w(eR0½dwo mhMꖎf)z`)AY6so$$"Df~=]VG{Q;J5P9:㵮nWͺeDx?o= OEUBX("*t 4b7A;ZQA?ty>ȅ9y2`Gy9'^ ǰB|epgviXں@ 5kQk9bћ{J<d^$tW`.lA C''=YsuAKk+\!%ØN]C|Ժ[ * N]ulE~7B|?=yd?𢿆Q~7_l{ iϹ` 6X?<kkSHyM{EWM(svNSWe,Ÿ,f6WqL2TߟǞ4:g&mDG_% l[nVX%k O1AV\%WsO2=w2~O M(#I/-zʁq8օ^iY~AKG"vi{?4%-V4C:3$Rb<ߊ75qR~<˺ϡhd[:gZ{F@W.6ԳLnHfkZ/Q2FG.ikG#Gkl6zyUC˱.eTE,FEUhMȺ= vJ/o=MPapvJXFM花H:lvm|VDe(WS`G H+c"KA". P1ҋ&JJuB^5RXqJ~ѝT27|`Dy#@6UsDKs?jr ?T^u<N}m 5%3~tZ{m^1ە4"5» >X߶>q3iP ?[U23[NHqknjsNsʇƁrhf(pq  5K7XV*KO%WϨ $V(9: 3u$`ppjL ]> V#`vuOG(s97:4~ P'Xg=i6.{aI-Cǿc2^FX/3Da vI εWQvl_cm8t3eZFJ;;~IU\@ߠBkP;7Xzهю,NnsGp1OQ1p#]wZZ.1mr aeS 4ʹc`/)bCx"marue~ǿ1^f7^/hFpAFi5G,͟_¿v!Ia1v震=4?=.`Z~Ͱnj+Œޣ\`+HK>H6 ZȲC̡Ht8<DhznGg7 RYUp?ݘy ;`bշL=y}VDZ#8-/~tQqQ={y'B+arS1TZ#DwQlIz2d#=X|kM^P4EԨjܶ\&ABMyM(sFuen0Xs zHXSeG_}6v+XҽPMM|'6$U^:lV~P!>\|"F2džIU#MbEҨVۡg1][_I%`<) ()(hvKw1tw9]2y~rs}Z#34"u9J@JlCgp/VIAN";HCxoe@wu?; WVfb'DQ:ʷfE^)Cq]\G 7TV Edɨfa;@FEGYDɢ %ѷ֓ĪϜ(Bɪ,ϝ{=v&:|.=nn IkoygeS\Ǯ1[Ol~!J紪l;%t#oBBЫ͊pnX"vl[9qa!>ձ<2#ߖjtEh% =z9K%J@>̛ A9 <6o=BY{Q)K4LXq$.dm=yꤕj'iN t?b<45ȳƣxA N+->/DQ誩 }zI-@z{s~L#3'#^2`X(%OwpL1 n%?Wrf(_gXry,QnD2ؗkᾛlUYˮeԈ+.!T[Y?Y0f|*dɤXð'8 fr*2 Nx c=EO0}fQ4Bk3 #cHfTMd`7(ja =mYz2 莓2`m\;9UxlUzA4vԾҎu!?'vt>ό qķ zydFrhn/KV-7t$1"VL܅饕A0$2hOu :{r/Rlƙ'x<םV׊5LC./ Ty{]oVl%;k %j/9EHC@T3>BeT+_aĚ5Q-#@'͝.g1!}+L'mq-)`gz.@eTNH`U*wNPf%!O9K(#Y)SK3$Ckn&ߝ #wUȲlK&Z2s%c;!$bm 8-w Akad \ @ @pqNHjb(.w!W Oޜ%cGd]RƲ -d!2&s3s>܊x9pmOQ.EfE#i<UƒO&L-p "=*e_U{Ju4Ϭi/n]©m^W-ADMeN {P]GfmLn>#su6]6Efp6+u"#yI*QP\LfN2++<ySD<4*{˾BW~twcZu bN_:]GES.k[z9 t{/&j.ՄAPrF0?mǨ忢 )(`Qumlظu!xA_;(#|8v b pG3B%߽0\ rnJKy!,+ǽrr\&=[qq/jMkpI45q]IT00S}8MiQ=_5pJ{4aDǡ:LMuΐRX?G@;.B-J3%i-Dͳ^VB/ի-31\n4qnn}َO"M ݨc;~ɮ(yŞd$Yѧ&}A$oN:B4 6pͪ۵'U)N\_Wz] \IIq|j'QF. KT_KfcP@DJTVAJPmE'/"F_a Bpksly?' u!eEw_q!YXFfadx>y7RO>RS(٪c`!4.pRs|F/9-.c`o~m^OA&Ip?K,S]D|HqXW }笘8/[ :)RETj\-jC/ J-$W`JZs| dէpNU4'; V"LOWg vQjQi|'k#Q!q)C@V&,RFLL]TR1L5gbW~?(Lrܣ*->tID@Z 5֦O1&ΔsrCM?dy$HaV/j<1ؒ'u#4iSBT9 |BpV"m0z2c-Ioǽ.fo[ˮWC>!% |Z d-K^gs{x*O~ ǙǍ4<`TCw|H4ա#]]CE\ _?#&zd(gV6~/K::ਠFA{Vǚd&oLݲ =s9oy,‱퇏s "V']aVU7xjzJXfa9Z pq1ri,*N%cTUoh6{jQeM7 'yHz()U5C"g JUA^!8ZٓXFCS{WS&]#OD@ #U څ:4]WJp>-^Mpq-\ڢsɕm:N%{ k+ Ӡ,|m&Sաv4)ݨD +4Y'rٿ!/:\ A0JRK.Al 6Ո7Eâ6iyTcI~5+XOB kj;w qrF ~8tJlfLRiHzw/hr+$7^Ek?%ki0oRܝJs2ںk:z5 †HOn]} hQkv9+ym} 4K? r>7vEG„c(7oeU!xaېmX(M"EAoKL򤅣"-MC˩&9SGlss lS巤M& 7wdk I΃^()6#x ' ϭ3 I{7W6v8 yTE1aDA-!](؜fwE#*M)mGl8O/]vfjߘMgϒ\l+J_pAEWKhOdP '?zg!|$UZ#$sRunE h}NyHr &m9L1 <놥Df2XL0;hGn_/&ZcL=NBz>p^ފc`ao)@bVK{ EU$#LMަ.U{صY--bcg,ޛR9lz a&sSmTmHjm|%FӒ-j܉/,vUUø>t43|fd7'3͊yȕ{Bba?,$qH(m.CFx9B?4ş`5_,Vwg;Xys L?FIںQ{a%l!<.J؅e̊Dng٢JF:><'iE^XenV3+wV__k<(rH=\*4_ݴrZMȏ&).5]lbgӌS;6Wk`&Ƭ$j)?4K($u1ɰ_"jxA6WĈS>%p7.:CB{8; q8pRiF H#RoOVP 2[f'9 jA/uSQY4.L*X:b0KGH_b'j.rA$ g9٣K)1l\#\f^_i[ZS^n}͠: H<h_&5<mEQnha (K?Bx/!U[q"GNi:#z p`\GXvҷx(z!kLc7"/"S&}Koė,׾Slw R7 8>%-mfD賩oy(rFZbq~t*sMЃb>+wT(:oq6wIՆ=RY!K 8XY2i QQaESk], ,׈*xM&1Bݦh4aY^=A?)|׶&TeE1jlU]֞b<,1Ew4gw!CTFp*qkR[Cߌ""!>:Ȭ-d""2e!/ }_oT ]aﯽ2`:@B>mnBҷ7g[GNzO' VNXnuQkl=V~!u Җ6Gyp~Sw{T m'DZ5/ * Fo^S[I ݐi#ZWr[k#DfM&SmȂk!9dY,dOg% Ć8W})wp4s,© VHebn8bJI$ +hnHO(`@t?OsM y! 1融Y>(PEȄUzZj%հ >U`Dޟ1(D;1nz 1C7|x~\.2;zp&!l{(_) |6Y2i>:&7|<>kW:ǟL3zvxgFZ faީ&J2{sD%J_/=y$#F@N#p;R6 w^@f '* sZ#)w`~r{\Jy'5'̐!~rU**&uaM$] z\z̮paW'mƌ$ #b9G 4@|kiЯZqӪ)\@Kw6+⍔qgbMژl nYqMcP V7-%Y#!}@M#yfSQT.b8k7bf"#5'CJ`9l⌌"$asr(53bب`g;1ـc/S)!i\-ҕDG &yDsu+UjjD@e\H5`Łްp$0F9=zǒCRb|쾈p(E]U @La*3BT;_AێD.AC8TMeA12_4Z*n_r/A"be-e@fu>ꁣfuT-YDtg˞cLzZUiDt=ĕO\Oܤ0x@ h.cP=fYb_a?q{]EVY6N!?6B Pj% 2W#H$"ƎzwM%v{qβxR3"H ̅H-pŠ$݈q&o{HN$tH̴3f0Zyr>OtvsWAǑm)'W? YbYsCacf~|:֯!6Mop4ڡeix %G& s48*(d;Et@Zt'"c!1Q#dfsکO*C`P* 4R ]QXuEB5'ê/pPHz\2d IeZSx@)NeHl0ܶ0!޳3Uy`|sV󷿚 $+jCU@fD}mR;]Qי Q݈ܙzb(?饸f y{ hIV=7B_cX ۊsЕk<|Є,%cli~-~e@Ǔ#4"_~YFK@Pasቆ^ic@&{s.OpMv) 8n Ɋ|,.lf{OxT6BÎ=[8$nRTW5@o-HlӘ9~00$(kHJ[Nܨ0Ci>aކYY+2Il-Nd80Y]JkCsVB.GW(# +!%$=mEU ukd ]欬d>(a'{pYP!S?D{Y.񻳰+q֣0~YIk$;0qk4W@MV_@mV3ьĭbyXH5GP?JYlYIRF:`k <-͹h_G9`|e7UMceqb0hۿ]}/py{b\_ |,vkg,!xbh-#I6k“8Phþ>l- )m#PmK忚W!O3,b_O;ˬ<`Yk>dɊqPd2> 3 D IK{Q濏Y $$S9k ,QLJrmh"((}ݮ¾sX}K5kpF‘BW@mj JXVLmf_AdPVuv"XR:QAw2v3^8><4S-ܕMїYMPx[d{n~g4ӧM:z Q"[یէN"9.٬ې-3_H*YaS4eVa k[NV6 -+;2# 8-g< pro'ɘw3ʈ nI1'4m.12P}۲0Oh"uP1 *Ґ.ZV 83yaz(ETXr5EXFO-~nU)xCZ6ߔc9 >$5TM61l>vĬPH;]Q. W!KLX{ 0#YL-2!iUOWMBz-,חRgPL%+Z  'PP`? ,SJlٜٖ>wCA`N,r)8yph,kW^4cibU2{!T#1w*2/$܄OIh|N['d; 5)&dTF\NSSF)tHϋhھ|*;գv~Hg(Iī3dH =zVM7ѺbwLmGe !/KP41؇=] ڏ?{MQ+ӫ @[*QeЌ;z]607({U/xIjwo[^9˂t {icNk%+ŧ1w8>qOǤ Z+C&iKPAaPzoōZJ?Nd]ن,@QQtn&h=[^Md0xGtA@r׃FhSrS*e RCF6eb zq0w swFmJ|H's. cK: Wʯr='ljz>p3tovaugȤdiқTtsJabp0םYF:dI>lfk²]ȥAg 멫2}DͰW)lw&:b5w9j#Xw-5"g|2;6B&o\G[C"8}A!gYJUpb ΝqHWȼJY1m"nX MʒKxQm⑔z-i?`eAl+6MX8vD/39C`p}moh"80$i9hyO^@hˋP3hT"al Oe&}$. "QiО9ĂT,]N3'e!k 7SE0QT=[VSݤWg#9EhY҃7z* `~ 5l.9h-<1{]K gcMZ[D૓5 S[ _zp;|;kqmo'EMOȝE4jY5"ug&#Ak<}]C8= 'XFSQ0a諥3W7D""?~m8bM{\6PGtCx3E'P~ ; 5/:63{nX&))(51t.9.aM+LRql^3؉%9@ ]#!enDg'|? 0?gAOJ1SoPl%{>v$?n 7.̷?e )j7VX遾~[>VG]$ű؟Q eIWT(ş~$+ZpiJ92\Fvfr 2UȞvv518>5K詜 *$v JĄF|kpzp~@J?.44Je@EzO}uAcTUf>۾ Mo$ 1sA}ElP/?Km;ES!9zSP;.LV‹89ofLcy$Ab?i[j廗\,1k!o,T+#*TOs {{X%=s'\ey }y%,m8~^3o|*PaOغ~dkNGith!(Un*IX1&< \2N[T! ^p愺3_´ ?0i0%_T4u,M[|S)aWW-BnP#ehR ѭ xJpG.:rQ"]K_yɾZ E\u]<Wd Op#_:swjB~O^^Q RyIbfRjVj-HTɂT8չcTk y9Bg|QkxWGx%(.b{xYuCFB fH~kong{MN,~l-]+l/I[!-V"38Cɀ![t~t#ZY=t\2Uc6If{nSS3^daISdtS{o1JMBй_՗ػ?IE?=aHR{r}RI)]eDŽQٕp̂ƨɢ(cqFn"* ɂH(T]D e _F p`s3=IVn7rOfGc03sl\1mىsBvo/}]e*ޟtY-b Qp6u=@Sh "zT˜ӣj{p㑶 &_"&uSKi/1Z UiK:` 6Pta^<;UNaQ:,A%e HDJm; VzGՒ4cʢRAiزVGؤh-!6-ed<'yNA |-s: ) .h^dܩJkIi&U~_If36GQBAKXIPrKZ$8z v,bHv/>E, 2NmfKЌ48P񝰯mAɝp~'BǤJr] ǂ c]9uu? savޮI+ ;6k7VNɾ s ;9;x؃;$ٵ@6C֛1Gu۸u)rXzsw[*ab-`Gp3 3fbr@ &UDqP_]0?:*x?SeI\H o}:p@?$@"-23u@Zz-ʿSס5x&96##N ]]e:A0x ! RJHN '`ԊCv|LGŲj S&I'Bg,/ &t4+$:nK߃ܚvD$Nqcٻqrzt?M!I:?ʋ* | Ok dϋ)2o`狲lՕ#b""U"PM]$eI9m(*錄1xP~B % ҐCBE,H",|Njr(6&,7s Aq:ƛ[g7I2h𐚛iReA:/ D@ gϱ^}{T%N0rYWX /t~Ȏ]ϼorg*TɠG8>1|vlrشBXBpURpp$>}}ց?vĥ~^_whBGyu؜ٞK(x;Q@y2o:0J9RB]יjg'XYc VRlKAw$eYה/#+!L"Ŗ֯++}]`AB F@TCC I\`X5h}\/ާ毜ف%ل%nQRDvu(XizrJ wa74RΙxb =TbL ebkkC_hƾlH@~d3%f祬 qeqRY})A 9Tڝ( &l!$DI-n]Z ўr懰Le" Z6wa?{ceE !hn{kmJVtoJ,ht\!Wp6E[N.HeTHܹh"\5Ӽ($Itm;/ !v1  ם:2@8ŕ>ƴ,qhWᝄ /l ;Ǥ~F #6pZj|ބY#[@`>0ܼozG̨r%.%+ܸ]0>&V҆gЯ̱PTs/VҲaV `H[ 4gxd;kGZOrG\s~Bw.țsA}2NN[v~#qrvbZVPXV.]usM%UNBƺGhS|2)-8+-hQĕd2pkD ځA5 n:x]Q@L LQka&RQǒX6l{ /MM˯ $K~?rhj?AdnrW@rf?'Ψ2i%rB)l9C%u;'a*fOĝgGŽT>T/-.i†c:la a؟%ՙ0£rZipV PZtW݋-sG$OjNv3b|B0NIP\UzSaQk 1*u#is,F@\`Q׀;N՛hq815U KKi7 +MB`#WaPE6|1 Tl[M.ӑdq" U[LN "x{CR"h&M+0zdylڿ u\cQ층 2cGN++cࢠeK~ 5odڤOHCλT:ֆj'ylw\N+ewc1]DKe~#˜}Bo;%A0k9n~dg# GIе_){CP䲹`D2%/_ ѸA2aLKu$Z_4gm;= V~.^L:QvoR2n?:ۦh w:O,۝A_əWz DЃv΁ ZK8G'Ku\y,W ,# AHy%a:ycdFtne;FLL]kԅhE6"oW EF7nKHdh^`A7OU\P1ڳTo\''V+q}nTɮ{U}Юߥa-i`}1Ҥ]@nfi)h/v5"m;q)){\|ăp ˻ǁ2Xɺ_,.^C16)D[Q<ƃJ3rpۨ7 mPJڞw? j ?c4myM3jjv@:Y˯jaKm;26dJ)>E*ZJHfG FNXO61Ybj"$I;Jdl#R9-ȋT!"]<\f < Ԯ/Eo$ Z{6L!S՚Hv]6jY s׹ ݈g%Ew;sl)21)X /9z!xh`N4BSO#pf4u%p6`%gћ$/f (xB!]EA j%^L~8X%iELZdxwrjȋػlUMg`5tNzvDX> 7 sa= 9\%%=D fMOٚx1Kh402sC^T0aMmm:udCX-aowQoY_%@TGpuUKW!`|Yh!N9mۢk*Z k~Xߺ {-5F(B c?VuVKd q7N\,&?0^_ngxeƤ|M~~.8 ̒|@d^͘NP=d5WtZU0nCBlx]BHatgԽ)MB@$}L::u7Ef f(̾1rgG4M:qnK8.g>b3D ]W>JA? ӓ,q˚8 w棶w5b N#h̽.Qn/}%%Cp$5_6C&#x773\R [S[ti/0 DtVbŨTVu>&Q볠2 ?"5!1TR#a9j.9kw(9]e7F_Тtm"MK58@5IG|RZ{ !]ƱI]'gaf]~grN3t]ԫ}^#%X*H{JìoȞai_SCC _zd *]:N3B(̛"W;a3%rch( D1w\h#] o8[lb\;^ܫOWpG wAp|Mo"E, sTJ쏛12`D.^ 5[[|EgK!3pKWAD/C.WC#w"6J3\:Џ"akl{#ϣ+Q5FnN)z"CnLEe"p_<k7Y3&G~r!om+UCBSN.YROy"_E03f,~OEMh&jk<.7:X= V#~a k`LwWl9YBalMU$7=nZK_¦)YpX\4t ywZ$@,B> 1Nt'Ϸ& ۮ+in%(}oPo j"R\<^K˭p.l_+c[/~>`, yL8,+CsYc ;61GdUP-+-=͋])VgJ߂2F[1)꟤pIe-gti@)T샑q9gPqEv|f@X2کoQ^9q5=Q{2(2|[뼸"؄45KjXO71[O 3 ;b\* ^ЪURg 3w_ .!p_|KW+ w6%c?$6.a(،ZuZǏءw G _uPà]eSW3-'s|#/Ll8N舌 )b hI ^8z~QDԙ2oêZKC,5h:w-b u_=9q^#wE2ܷPPm߄mn);S,O#`Ze[5]]Es ܒ\bq;K9Z^{L7Z,& m˰XǍ.ꋭJxdd6 W[VK6 `CZ]z>.3yNd}P907TjdǬ7=w-RAڄwt1R:^:U=A>HYm=hFP\TcҖIT $tߗƒjq|)D4C*sװ`wb 5RjmLK1o=ԉGTSák[fM6"`/ UB@&sΫ ,[l$d%6GǤ)LuoC8EtEM)/UrV;>PD}zØlxSTDEqCpI8 _,a\$~F|\9t߷A.suNTv0[(45C SN۽s𭪒?yt1. ?ϵ/ 8݊$0CA3䃦,l1匈yD[& \N^G6BDleN/R na_8PQ[ kG NgR#d*(-MQ#/vk:!p\Psx1niIJQ$RiB\ŝ}UlV ˷(shr)sYG@C ѫO`i̵w2AxIit78J}nJzw;Dt)ծΝ\y&>q#j>;K8*#{+&G!&|czt<RO 7T}/ .cYt8Ij[V٨v6 "l_SɝrYTx`y33z~ h@!Z ka"y͞qYԖy(E49FN}wIHj$ Hg,*o,4U; 9 &5wI9GHe퀺%/5'O񈗺o_%-'dli"_3vR4<$kw~H?xtS{?JN+_N`ȡ &Q"K8D\ 3S Y0vd{#5Y&+Bp71⥬$\sNiX6=K^ĕ^5t[' u%9R  tL%ɑ9TR?kZɸ풭ɞOPo> P^$7sqeLd3rxI[s/< WbFisڬ͠(VYi+ߟΝRz#0:,L`9%dzvbXySW d}١Ftkwoj~G qmj{(8Wɗ#|(bO +3ȅ6{Jb$@4O+Rf=5T~nVGt4~T[/T7ms SCS;A Ň}&L44 DXaHYBHsT -.J@TVmaZZo'RTAȤEgS&8}BjcaNBuwr$M8@VWp 4H=Q?AA>EPPkziwΑGoEOjvb0ehG^eAn!rֳV^V0WҖȟ.|^55vL:o`[fOaXwАSR2ar˛9l <㊈bl- ]`^ u[mL|_996F-1 !u eCBλFɦsS[5| (SR{ld2l45U,ZuB$T /LJ@=IWе9H_J)֢JkkTcȡWUmoC::qˌeA_vnS"O/ΩudWi(A@>Pa(⾞-)!qy$Pl^qw7CgqvQDwM2{9&\8iiQ 3jx8 d3\'%0x/ƈ)F-)v -L0)Vi@MCKbl13I:Ui >n5tV"Ĺ:ʞ(xEse }s%FC:TwNqDcO'I꿽zusH$?C"bC6r ݘxwa| !Q-jNb\ \:ua+s<AQ2*XW9]noq{NpI;\Ӆ[8 Bm4Y'+ S7{ y䃈J+bN n&ՅHd5 dJ ץຠpYtͱ+Ay`BnoH ^scnk-+'.6]\DzĬ k=L5NrRz q|z47l^g6naĿ K&D}w@rtu-D6= *ıFZȚ.u؀s2X{#g32o%8{.#aZBN_HxiAjL$de:6H@k+o ;g`&oCCn7Q޺S@nca_ꢓ:n$?cW*jdsm⁊_ \CR]`(=m¾镩#q[t0UvT ssf* k|)pشۃԒTvkXx'4BNvul 8 ]}v˨Us$l30.{Ǹӥ iy0[KR=+n׎Ugxg#c+u{L(*Y|J!k7yo f6vإn8|e-Ft#,5U idyjD*  $26"$na "usv-HEA-2QnڞrDz*ՙ}v̉3@pⶐEi͘8Ȝ2~jR|xQ2(G 1mn߮ɛQ0OUdjCW9tWa!fBcL ͠h&7O*YD@JHzР\M}<>)0]>K] &|>eJEcشk0&y$Skh3Eh\B"0ς#T& P݉YF)Q8T`ܘE{83zj~F{P}TdWtK_d{U]]vc) jn-VO`h^eOT*_ĚL^O!,4q25Cؕ@n%!:rQaHz\+7۾( [oD{ =?F, X5zV 9hJ߷+ơsKtLZRsV8kE B,):M&38> ̛Bɇn ; fnmO swvr\(y$910ae>Oຊc9q911O8aW_}!?\mZn1+A2o~*5*2ɀK Oc Khd+ʦrX}8=^gjS I(}#zGyH>R)!?Fg(bG xS [2[aߧ.)%^׫ٍm`Q^~J6K+.*{7E[%Z)rԐȴEr| 6N8u>M  WV`@7ZS:i_kFduMSdث)ov-Wi}&g5kǃ̗yЯ]-:5- |>ߤb&zrxfOE<&! שb-P7xO{p# L Ɩ r!6qXAe'5X@u?)/̔[yha"}:cGߘ~tp3r7fqq?VJ'qD+&/y#wpzH^"X+ { #YTTg)̎)K2rRPg,ZOZ?K-@Is}Lg*TƸ4~ź=YvslcSluNQ*hs Esk(H'#XCo%قX{Y`?9S[njcU:1ijXOD]&j·$#ʉ0/}rg!Zޚ+XX0bs[@y_jy^ vT-Ql1~2@0b _LQXUI LTuf ipB[M\u3/QjO綵.c3%bwr )H1>Q`VU k)y}57`]Q BcH;!(c:'&nWʥ!m9D筬;k}TifHe+W.8n1?f\0gn61qV,:ڮ5TE`T|ܛ,dx"?dn\$Uk 0i3ȹC$c}6&snK3}(ܤ/r.CС7Q5^Ku_'n>gH!6q29c3˶@Őh}"4xIB̿`X!ژ\@SL#L=n9Cm$}^-6r}BF1=D%ꥃpں2*Tអ1b`Q@*6-n !ݿ&cM.99i 7fyϲc>jIAq렮O̸: \yml5oBg6{Gyy61߶eR7UkZӶUً挔vJ_jW.0QsRmdz1znbZfN2 )7 Ĵ*`S A\v1R6B싆 .ڜ;qlOeυ `O˞OїT[5s$~)g^.pf-H@3ƩЫkh@r\?rBhMZmP(<0l8 ^eWVYֹ:V=䝁ʮ^ trA%k N* PN*ܹ=$YmVB\48%ϣtǚ1lHA$O'Ql, y|Wfި.04$>^ʆ8rb-au&v(͐[~/y0H#E6}Jxo*/_&cϽTh5U*Lt'ܯ1 ֟bd!3x %svFu(; !V>ѽȉo1(ad0rF'FުA[KVv ` eAC?$zS}>̋x)*>gtK(YLxYhx)Ҝ`؅m &Haj%"ϭM 1Лb%x'a/P6O5R ŞXZ _RK,gչPFQl@/ 3>疡ڋ"1M^?ٓ>!"u@)@9D}"u o6X ;[OGm߬1iT\O4T`H ۤQ3{}{D>T4N m,~"aO EȄxwo^ŽgWS$PToTy$Ph`( J:kh 0G BSTt¨^3գpbZgF]&m% %H띇χ|]b=^= :RN'w \2b*:Yب+WDPGIj@LU!zo`o;3131\#&t._edܾG ߎ3Qm<^ָP6Lócׇ|\QJ0ل.G//2FU(NF^' V;qXɛ9ߥ;J&Z V/b59l [hTfcqt{(ȟnudȨ`RvFrwm\BOW4H2vD5p;E_qʚ e Wi:@~Kfda>?sK1Lrkz@tؠ9#q8&E"J- qG{RP WU r*<~"YTڃ((t?k]fL& ^Wm c8C|9vV??bu9N<2E۫pjH(>V_gO\&dbK-3 "M2XEY4i=H?B9}Ke]exwgV~{"9_~<%#$SB 5$akȎS{W9_FMo]o25hS޺x/,Iyw.{O;R='gBA~ 7-%>:u\Y V}=qSX0čTn`ROKY^m.'hD0&^?y2\Ҋ2iƶҙgbb):.=``^"ݦP2 ~W8'[>]Fan'nvԺ"whUl>! /y9tubxj tq+|+؀ybn|cfwE3Rp!hhJUW3S Id@?].z|#һtݶ` pkOuCw f,iVuejG_nPцKKN+y:)4B&CTMǘx %tm}׷\;M'E醷C4WQGqfh@Xp|dF IirG?~aQC*]a >/l(S(4_Bf+vi}:31ch^L٘<"QfVtmg2-1'$7B/E 'ytiM}.1QZ`3tW⏈%z66ce͝L'W_e#* Ը;nӅQiC85b$L4Bc;' &:d譱}BTp>x \o:<$1[n .>cugơBHЈḍ0Um0Q#h$To t3)ib`-;}fm9 CاJYV!T}&7NI?0y*=.tFn 0+_Mю,R0Puҷ{eo.ɴ9x_4b^.1 (-qJEPb+ҍhS^PNYՑxwx_3Tg™cl2`1Vh9ĹןlP֠}{8PoG ?HSH\(#@mG d2 SX*z~(N5wjڙ)140u *e2΁ 9oU ˃q09hTܹ$\F"xs2ٮ{ORμd: Y5 i%Ѯ(,oecȣ/vޢNN5.^.ƥS}Gdp|`˵^i{\j Bkݵ5C2Ir$7^RWMݐE&=O=us㱰~Oz` -k_cΝhK!ѠV}0zC dbטx}6 'OD-.ia)i*̪n.HN]oHY@׼"ٶ/Η?,-M{^gv*WA:^nWTzi<$1AyŞa h\w@u5~֍K;f֏h"zʑjTS\: Ъa6VT0.pcT7f^Z":LkWe<B73]b aJ.e5U{f"y~/Y&ܣYL tdoN?>8Pd._Z:߇o?*S_R}V I2׆bqKv,ң1E7rD4(cI 9*D欢c {%~bSyZs l$ҡsˀ[]k_Mk.H2ֶI>y]Smk:S`UK(n6x2ɽkg| q%\A~t8~e$aXjXwIn{12m~YA͆FeőRo$fBo`>ڝt]TmI˧,"]⻿d2m6)5TX4+ h C_٨d%%W@*xKAyIT^D(XŊ%8_`ߤvEc=5H4Π0kbiEh}=˵Ws.X_I\XUNXX8[wIi6{Wڻ랋+H>HlȐQL&B=O{̪1;a}XލP:G]v'ԐBJx1x3Ǫ:Q-nf0;=f%lJ^Nl-F l瞺o \_̧ݦJF{{i~$)?>`-P=SģjT?,^ŀR0gp#[w&8ꊵWG7^CfLl^dסYc ^");|_G91:K-2W®ġ|1D jaP0)=[`UH3,NEه,~3FWbdESX~^r f30W`pojQ%ך:LeV=Jxf~n@;y,bMg'+yiFPs iaْ 8 1TCOhLI]d:j4n))`ra:«SK@<87?h%Knv73Ж/ \aKHAB9v~*AgXe~OPJW @:"X]M̽o7I]7цRVӞ퍅CQ雈Y<kF2IM&sC %4DͼS,QKI]OXofb2mZX'AW;תn }yc:{T.fYJ;r|=a8t~G,9~l7VBJ5Z&D́Uz3[ق8 0 MnqTI1/t襬IނlwV.0Fⲝ2, II?=p&F `KCjI &R,]̈́K &werK G+; 5pM}NpOҍ "Y: L|l NSx(=_EKY;i=|cѣ) wwo`zfU7\AObfj,ͥKa.pIl&[|D?2^C^[~|cDdA > B%E`FtUϲ`9CfkO _n ծ h3Xy %Ǹ|o뎭m*( A ,ϞZyf߉׺ Brz-/ wDiPC]g/6$DП+YLPA5~dp^[Cp F1}I4t4D՗ uhy\bRcy؄3󊝵G/!{',L9YRm_⫵yu]P9ˍ}im`*PxDҋaM2oc[[UTt}LRAq s5q*)D4RtF8BcD$M"@ !(:y5qHxU+I.;tRͺxFr%3mKE y*wNU.?m?JU`'ST5DT3_>Gm"$Pg\*URC0- L+o*= ~ѡZΦ٥F2#d׉S0xQVg6]ћJ!9+~V-70Ç kmmMiّ](%1sס~dhP2pp&CJY^vG|}УAˮ8ҙrܫJ  uW`{P~p#27N=u504-֘S AA'M߱ܒOp 4Q,L wvhƓ:;K[]B- ,A)(L?>0;{)3xA Kt0vP ͷ}dK\H|P:nyeKF# i bwoFi%?جؔVt õ)EHf@;Tţb!IoCHַ_0??鰾.,Ρ= Hq>լysb\1t̤A^-#[1I x\Xat'/5hY6;ԑE3$Q7t\p3ˈm|L8Oوj6?eAzUziPUKȮrr˱[P4B=US-c.zړt/jY(I.IpJ| <#$ a}"ROmW_xQ3'7t%u_l_'0D0n3 c 0UkɏP9#3 ~& L6}+[yI6w"}Ƽ~8BKޖ-PGIpG`.}wzgo233OT4E+14.Dxo&`+RœA)gֶkW_\(+CGzF,sxi׳+ڹ́gF5տ%xy3ۈǜ*Bg<& = xhܣd=&[s,ݳ?HW$l{ȴKr[}'Td7(9g°Ptd^?@^HO?bC>c:_tMZ-wRξ>5d_Yvn bL'{iD,N($~X/Ey@0(6݉KUbT%&Py01%, 㖞k̩OZ[s{Ή^?+Cl¥Gzv!RPAggؔi.8k"=Yhɟr&j3ޟdz`ΓEFL^x^=[˜LI>S TqNqT W4f^c`as WFhR5𩒲q/j X?f6'W@5z75k*ӠCԧ5DnlOඳg)dܖlaVHRL'W4WZ5d`<~4e%ƣ׫16pPuMȰ&aʂɞbEX+768AÀ#3{h܎%-7"xYN%R7` JY|w5:YIx_Cί6Dt)izy{:Hk^sN*o_/Y @j=J jJҹ`-4`|{%Y"ҚY-R#}Jp9vmw$=xFȅIt-s^)SL뫝RejqQ7k5%#U2kZv"ܭ XܠH;a&=Rq9?sy2{3m]\`^q2dE{6VATL2 'Rzn큀LT\ MrEMC4(KL)UU~RO-3"Ed8,|ʐ²Q=p,űYNؓ+N^~Uuj̽'ae&}_`0]r4aw=$&@NMHZs..^\=vc㯯 l9zY_ZJv^5JNX[?aFz1:uUYg XI8zmW\WK,X%ķJ}:pUۍ-{0KZ9 ֿK6\D\415_Fiy/SPL'%w5WA7N+*Vd+ B_Պ$q:$2!RL7Ovwtؒ3oXs.wf`>q-bPАUz֖rLn/U]9;(TXxq)ҧXk  9}1tk+}vɹ2%c~LP̠xEP קSЀy͌x;, ?a3&X bO염~K?)SK>/uD XiM_a'sLYyiZ ~/lw^dѡfzbHc^/?7SwEq+p^U,\kE{o0M#KȞt>08/PZ#ȹ6 [>}f/H[q{F@;4"X^q 5!|  a۟TJM| ]Z):V6\TlI? QU]hnCscq[E#.$*D 3!`4b+HrBea➱@cjV!|u#ZK54ZcBuksfۆ c1ݤ1u yӆPtcI 'ݿѹ7{\=2sݲvqa%å&jJf #6`({qG,=|]U;EEjq:f׶T80{hJlq$/Jګ ţ)uq9u~¯A (0SwjHrZ\K=>H%ZջgmN>7^]lsZ !Px\5\P[XGe^*ٱ#<;"GnZl`ztQg 6x=k,ZQH k`)K*Ivwkf_}R~9 1;Q)oc1{9zRQEr|UkgKJ<*g0^Tmf8Uv.V uAah%S?s'@rN+O2K ]C~'N,n0zњnbϗ Av.ʒS\d,y#9'CM${Y^`RDH Ehy7pޑ2-ω` O kK4Z@`o_- ێыNY6݀1h9/cn9s@,[ NF.OlJ>˃$ڤIpU=>yKnuݺ j?03ƈlJ06ϱ?$ȧ[O=O ^_ݲRhܥQ &akoeJ{yjiyidI 9n+4 f"2옂QHu t2Lmty]N|<>~9/90&q tmkסu߿_ ,&͆:yWRg*9HR(i 螥g9*K&/BmWD5''n7?~>bi ҝ@Ԥfg| UʿvLBح,!e&|B2#S]*ph-'(|p!#7!!b{g+#75!>2-ZZN@++ 5s{&@e3'Uhɕk̾pzՃ`JdDvߵ:GM*efM1Vf+E$d+/6 JW~L^^6n츆.(n^"=kLhEᗍ_mE %>)"lʼVc",*g9bPBlD tak)k-w f⒐_3+{L ဧO=rS4is4ggYB6b`PWImW}7K C.܀ ۩@?p*w._Fi"58duuSc w#{Ox[0U _ 0!ŭ'q}f ClI`/NP>5v!3MO? Ip; mTT&c42} o˒huZrp8+1g16zI_ sYDmD@lAٜ7 bCo@}$jEAg:>&wkdRw6aҢ("0y_i\Im~dNd68ù@ϯ[WŤ??=GžEVQq"uoU96BgQĻ+˺d2AL^cuY5Fhp4r6̜s ;:ڀc0 Dz:aJm?E)ggDװ,ٜj҃)5'-t%6*qvӪ;PlmJhn&*-0>(rv jzt}\f]P&\{#kqk#YI 4B++ֺ׼Q@%ܑͯv*.PG_XwVJVJbkSg'~+t5H$-Ɉrj2p.c 5)阡K$ODJuת._%xaV>(e^tic`,[Eƣ-VCjo;<5c6`˃ry(E8R݃0XSxV?9IG+~ tDO7!+lbrVq8V ]uZ%d+%C*4zan'p leş;y4!7:5+-b QDq|jZ7)jXo8's:y,=f .z:Co/k y"0 7boAW-z!޴3GB0Ofy,:soB*6RsXe/PIG;zQ8et%b1cV4@(`'9g?ՐfU ٗz $wƛT+5;klX |bOI*6kuJbN!#9krɲZKC9tW옣|Bc񦉥<{hjfIuFK2 ~ o`LX pds".WRw΃ӝ]"sESd?Rm&7_+:Xys`ƅN‡/VW  v,"vsWV<$RB܏I4D,r64ZxV_r s3ժKRfynl?a3У{P VnMJ˭*m}gP3$n❄FoUvT& i|6}&Dּ& a[Q:ZH; ᨁ̈́Ť*>}']:s(x w\T;#Sf39T^#zĝF~Ii!q딮k‹}`B K}pZ&0'(Cw(`7ve̕Hz5-r1V+;^_h}? ͽp olԢVnA5=槊 d;fgI$~K*#)8" `{ 1iR cNY1'DAJ}S> -= x#ۜǼ4i9.2vUykϮYB=6\B/2O1\s%ܡTPр?US!oa)gw<Ȓ#g,Fӷ[8jxU;T=>؋T%_jpv2& j#˞؆ "ZܲӞkmD4&IV8:r~fDJ3nȂ&z^2.V3ả@nB}!)B~t4hZ[v6D%`v,I{hB1Dk{N^({[(?Ns!V9X\ahŃ?[U :PF>\,-ۿB&b.4=v95\ft?P?}40v#]OcE?\QjG˻b0A%_-` qq\_T-@w3QxU8t`EY2f>Moa:0KuznxoB)V-h<+ݭw`9STpwwE|[/]X]vPG0gW]>: MFNZ'X CFgީ ^g:bHWr/6ǏWXf;&fQߴ_JQv82}S pט>@qYG :_8JvO:V]dmȳµ'Fm 1K 2 h>⥳&uގZ5 x !គ(|搌g#S, Kە뚊 OȂŪULα=ypxCR)DhG=`o$Z(r68Rjr{3hnxWXy4QhhT}(hF!ȝ#$|w jRo4]?8F(|_eL]\\l\a<c j'k w3.}Bʁ=+RRat._7s=ܛ&s 3 ؊4ӈbvmQ9Mք AǸo #X35YEp NӉ`9vBTPj >(VH(/L5o]Td, -4o38E7[Ƞd&d<}Q@MOs-A2eFI7 iOtaycat(L%QCi译bX@颖ab,ƓޮܾtMʷ ӛAl繡\xHfP%+!t\G0wa%,Smf͘6&X:]CW;II(rG``gU,J̕c.v.}U%\6 q"|]ҧG}(%K8♅az,dЭ-z.M)mp}wYzkĸ@HٙO9<1(nZ|" FI0M&Y䕍S`/o9sFB6k].r22^zFtoOvxb~;wk`=ʵ ?H㊼sGNew{;ޤsiBQr/h { y I殉)"`pW"9੸8|1S ^s/rUJ(9;} x(KT6ǶX|L"wJ~T%S3qB<Ǝh-t!$^|y4-}B??xLNef CIYWw;$zAaW@"}9m':{A+f`!P]e7Dggn23މ ! wDCgQ 8U$_V7z:ܷWz݀n'"EaUf1K}U)$e"Ƈ))o)|)8j9`HPA.7PcTPH`_`` `!1'PpfmjcD/gocT;z|Q]TS/rjisQvoD]hƿ}=+DSgsB+r|Pˏ,v')5ԷfS fiYB-VȨ(+M -z!RBkJUNQ-D#Y"t\ pZ=7/Վ m\$FYcb^4%Ϡq9z5ršjv?fQC7y0z? ޟ #xO{ 6G ZslgT5b/[fuG M P>HNXj"țqj1. ЗT1 Lr |u&苕֋cj׺r[lLy]xO^Z@.8-G͗1͗{M=QGRYW zTpy$0ɷ8S1A8hc _ČoqlDvRƻDV5M-c뉩43M8rD)xn y萶HRUVe0964[? AO lJ'}:* <0)q^ج`e0X<ɽҦG֯ĥ%8>z45K kS:gWӪs]XD`$O>8΄`~{cKQ(B%Ԃȣ򛡆]2 p ȡtTOgS(uc ~-"? B~L Ц7'ZǫH 7sҪ䟏%LO9ɦT΄Sr /F`iRPT5nj> i(N&"/n20^}܍ iU &\瀛3w;iL/қMmMEeE{Rl76gO2N灬]BFOMUʨ,xu+lST; /n+6i[`Dm119yWM/Ezcf#!xR'b;FV!&ZTQ3&3hU@ɒ6LF'Iد0}UwA}gt|# uGغ:i`X%*D켍ӈOL񜗍b /@ ˕.FW=K MCsJdܠZ芡gƁdʫB9 IA)ܹPygZT|1>MW0K1+`•Xiw{6 e+tzbtլ[(Ѕu?GWuZ)ʵ( lYYہŪHe.a_OMXsSo)WU- xFLB3fί+Qh t@V ςu;[+F~(jzx]MQ+ p\+<}/_T|'h'["EJ*_~0ȸHqFܰ{Om׺AРj"]#lX qITNҌ_?s%zrd!X+@R} / /J?K1Rڝ#b@+5<J#AS)J7Dp~05 svPbЇ?.^Vr<ħBHhky)U߭u35+ tuGVݻQh (nmp [FNNSƊRzj YhZwuD4,CTpuָܗl f^yc鎕pEE?M5jl_j~iJf* [k\.*M;D@"v (>C[b~&cى/ם7G\PG[VV1R4upj%^k=0^xƛN a=[uls)yɹ)6t MzZ}D-QpM8dE:mps(à`o TaaHs˦Yܙ b_6"[(T^+=؊/f7a#Rc8wz ,)LtO˞Z܀>dB΍)7bۈ yEB{OFHR˫:- l{+彊x# (Cl/Ѫj]R{WP0F#* 3)E{N;2+W\8Ai )8E|2tôq`5>384+"w݉*@U_pԣY#g>[PjttcFUa9yhtوN4< a5(8 )-RI%[˫|NkҶ:±+z)4g)٭n7) 'pXn?kAUഩ{ߨ9U7!#_iujW2BAs&=l15IFqP /!-RUj yf7>ǫM[\ S, iաx\LːUo AV;q@>&* SISK*`5O[?[Cct9K_D]-~4QuOhU$iG5:CE$ ,"z#UhICoh ȝW^'oE %` 6㔭A-%y]:84nV݉eQv>_b'BQdLw ކUCk5{ا-fl)`Zk5Vfc"Md[T:AlhWUүcQufLu >8⧏RJp{z.ME έГ8Sƍ:FxdYxp 4q\9ŇD́SLGSf Rd P z8ؐD٫Gykj!EC_{Ze=KDeQeڣyM`bXO-Pp15_99R-壟t5ߝ[-XJP-ÿP/՛D?xwC.HGhBE}jtp/yjܛSВ:db0K|xċ; MԆ9dEn UOeۄ1<]/Ha(cĥwT<(3Tb'Θ4"pEDA>tMnd q| ]SwO[)/Di7󣩋uR2 pD $z骣Màf*}myπЕnhGڇ OWUC~T6<@ywmGSy y ݟdn2 ׮Tu))FSy*#J i;jmIJ #m/PƃZoN1¿IV`%_j,1+O<˜M?x⠓nj  5^9c\ݒp/OWKx؇d_7Jݖ~؁bl37o tA*Wؤxoc qγP33∳&}rt2jj F@p$Yr$~>qV\wS2;=1vsHeE 5\a^QEne@dȿCɄɪ޶%("5'@&];ꫡVx6 {bɣckKs ,WoWV-)9;Ow/ 7]NgNp+QY%ѷ<4 DѹMFJPρ_0鹕t.Ø@lŭŒe\;lLpгMYż|dU}F `.4ӄc j^bwϨ 3?o 2 ٵJK+\hp^s-wGOr3'Eyψ^@ow D\կM> ܾY| NaV"O紜~6;^/3]&vtO*1`s1i1(3QBךSR}?D _ ڀʜartf>IPH~y,ߵ@4.P k][\}g疽| 27s7DS(i@l/dIu0=.~)~uP|Iid5]pÕi'z53iJ H'Xa͊VEɛھ#B%v'Ɠ\ vJXON I`d8yX߲/֪ 553ckM^-Fn \٣blDȟ:uF$VӇ%(Z>T\5At%jJ%d"nI~"ʁ (/ vU:ɍUm3&yx놏Q-t;,l%T&&}7NNu-}2ak YbpyLOe=0rw^eeͩdrLBsc+AO"4Y !G/o"xLq['Mr?8!tUǾVc>~^״nOmx+dg ɯTG`,kMξ{\Tېes Q!U\?T:RL@ Si:IπHvOl$L]m8چw޶Im{LsJpb ONrox4 'a u['|Ľ 'v_'I߻ط?+xL9EMLxu_݄ɄXm- ={н/@zԒCkr}|ȋexjwifLkOz γM4MrO&J.JZ(`Dv AMoyYi`ϓmIuZX+AӮJj]{h^Y,_a)(D4~xO7vl[zɷ% Fy?|F=D^ w*\nt?{Et{|`ջ$ͣ`0ն-~/&X۬&42,?V0_ Tb@XI0:!cϾ!_?=EiSIuxCrl rֺj;(/m>Iync; #l)hdڲJ5A[ Ÿף_4SopSBQu1Z[u 7T~[Ų'}kk̵*%ŸqG3:^b$)ߋ1S.e^OŰ9{_ZH0~xNIzc|_[tg5Q!^ynG4WAxv]&wOb,#׬5d20y.ߕ\5VQ\i{ B.'kb2):o'.ϻy?>hK c%fTQ H+d\7U.L0Bqٜndve&d[Y0GEW a)墤őmU8;m܉E]&j֟x:o8G&>踕X2:= ~ 9P#Q HƊ/m+sL ~nOAMYp~I[٨eOQN{hrsUA^9j, K 8 Oamc?uAAr5pLqc56X#JaŊM:sҎ ڐŗ ?7j*'׷E--x h+k iɐ|$x:x˅2if3AzHz汤~XϓkOڟldqKA!CDŽjڸ]eAGs}k} "ԵT>vy GKI~}Y!dlٌwNad`#o5;[^8-P'7+.LyJT 7P;z!;Rabn/__MTNj]&lq dI[ &+o{fdpYa7 A(ZbSjjJɝD;`F<@? 1j @]ȩ2'O=,R+Rݮ}vI3 ZK&@f뺻ގ$flS1B1t$Aß"ЀD {fRл.4el}G;r 5wBp⊕  5-sؗy-LtqqVc\Ty=L2-H:`E%aET/&qCۺa! V#f.[4l*"yP?hi:d,~XKBcvsLe<ޫJ}[eߺI|\d@ 8z.̢i2A.Ǝ2Qo#1 ?M^E ]YWOjz}pe߶L3gĎDy aK1jl (\7LuB}ex)ǹ{K0*ik 9VK *`urֽsH&YFE[8Pқvr ߜPqn .CK|iP> H K) ٞn 6ObZ"{j =nS~'Rn;)*~ Twܙ)M9dfH\q[3Ae^^SfUwi~UA758tǘ#GL:/ G$]/yWͷ=PHj& obK,"Oy)^?ʬS0<?Aόѫ sZ,v~ymA&+=k]yhipnpf ѩJedRLjWnTiѿ~Y2rsC4)ӦmdQH891]1-^BÂ(l33~'hWsf#ؘsn %"LM?Ye AA}'jgqm.3͆`>0e|İYỺ@XA.8%c}#LfG)|I\se!Ҷxb&e'@)NW5Itؓő,+o>}jRΘ3&bVZEHJ8!ˮ;8!d9Xc33h!T)52koa6+_ۭl!A&_9e]]_*y6HR(?IU!} ba۲,k^XNear,.$r뀃aps7Jwy\U+f@CgL+q^6&)&{;_=8NGm(V؛H9@4mU;_ B&? 2"׳D='c3^&:׊ VCECS7ayW_-Y)fRH  TKɦ\j8-BK>j.f騵՘MDi|k|m] qj-]׺t ˼] 7/&qѮg)(F.oֈ he~a#V߰|CY.8ߡ=A`4\aߣsß97gN@RF0]11wdn a0;Ie]ܾr؂}iFoȤձ $4"j6~ʛC)ӅA LF! %:+h,a,ըp̈́CRIx13EToFv墷jw89Al)*b ~F?>ž߂ ,0&F;dDCF#7Z4ByurC>JjpL P<4Z ZN,&ɍƵU>~&}uf_ۨZzɨ|%ƹqÎ9Ĕ+ kͿ BBTYgp)߆`f ˯.=<`VCIOjU ޿F&BI0/B^g8N?NVt(\9G}=EwPRb>yNJ@H#=.=˜#f֪ ֔ VlNdFew,c $A-r6PIr<Gu#?%٠%4`A]R\drؑUS߸H{c@1i֕5N3r,ӹ}!i)G9d;HKܲ0\pPE`!)ǟP9XOK:]g>_qob9,RL&$”-IבƠ9|=SR|<ԇG52fDqjye2ammm^3 i= bϝ" 1<^es)RLmT_&bgҲ6B"W9kI9Ua.Fd ê,[ٽ698'Ҳ*%eDKoeP]P0+W0$6ivQ ;Zb9ܷꆃdHw*,urJ8!g: ]smCZ/|!_ע|wxRev8b]?qׂw}u镣/4}GkyB՘sSE7_!to[π#cwQOc>/'İ$rVT0| ^4ū6=d#.)OAX+Ō=8م}11nԭxqҘmWKå#i8&UL{<$gOp˒dX+O+blN%IA<> Ä ia˪@O+!_kh+VNp|&vt"çbrM~LIL  |Yj'!^#6ZU^~jW"ѠRkAs Iupp(Q4J% uq{YJѡ4_r@$HR% F4YNl%#aKLzlCzU(ڇ;Ho~ 40F0s! >>(a EX>%%iX(4c IR'6c c+2.~buE ^"gK/: g뉰QT4R /LAz;҆F)e#^K1&Ɠo;ۜr{LXni/L*dj>RPp(x,%}M8yʣ/x8qЋq:: lC/sO$Ղ}pbB+ I~L}םs%-l[HO+aY+G{=T!{M0=(3eQjrҝ+r _B(@6pivrr"] ] ҝt&<UqM_%F] dVzOr٩܎R1;ejHS.[BQv۪8TlS7PI8CǪ;]J!#neM\(2>5d(یC1xsXPuL~S&e^ĪC4*&2.UP7o_Q(vr%⇍| ]|470Lo)}9@o˫s95{ p:J@z1 Gɓwu,0*@m 8[i2,:RJ%bL0yQwvd{X@;I7_P A#6cSQV,cѯzzj 34t >wHU;ӑ (K TO?]4OUw{P9  d5(AȘNrR(oF*~=kEN=yiBB#q1M1FF>MRGL|2lo&9̊gWz Ȝ|j&c!84S@ů U{Ս.(MnǓ ṳRڔ )t?`4CNC.1(^)w),m.P{̦a -^S Tcqg uMzdh}وww1v?WE`{Y 0oS!`H6UT+K)Q4=j1zEf~[/!zp oLk\ZMcG#;{d}zz^ƼK  om<2#Ԩ9wbiP8SIB\CL'VիPq-=6 9Gt6/R32/GĥI{X:T1\]q@"d4. T8U (/ipf7&Gotp/^ET0~ǩf7dn&DbkL1yR% 9$1U̴'VetarMe{r$5]^$p@$;"tH J̄\'|)'?t O#{Eh:^DZ5@2:+ҡV)(oN{[dvY~k.ZWYQ((JpOXZ0W7\/$IϾr:}Y=.c=j8A%g`Zyv|g]lXbpa?,k! L' Mr9| ,ZZzH lM:v0Y/{Ol[Ek+:D;zR#"݂inNj9VOSJTJdfsJ鱴"+a!~̒(3VdeTJKi,=z& ǟB[u MlNU6]]=I*Ѿ7 ɔIE{`\toQ.;Q7Fn*wru xk[3RlQ>`dJj(+{g4~J ZނF*(n>XBޘK  Hqma(WeۢZ B>, 檅 / ,-dd\ !JM9z/֥d|, _ ;=ys00$^x6^׭:x (ᣧ]9F@ԙyVI NhoCpdɾHy@kO炩>Ȇ|w`3n}6ӧ}Seh,'{$/`s Yx\Q^%kP ?4K<Puf2z 9'x/a86`  KSП[#8O?L='F"9eIǹAFj=$0_YyDleEKP =1ɑz^Ʋ.@k+"r#@qmq 2槪tp)\o5a`JDElJg2wtGn}g5*WUt8( `!h DEhW} bwG5!Lp|~vD̅᥺+y0" f({Sx2f)ln=-,½8 cTTG kkNy:4EI>ܼ$`*$ fܑQ@(B"oӕ?)Qu$v!hb"ԅni\E6;2}X&G#  { xg=Ch:{WcXڮ~,d/mۊߑ t9O#D54cr x `H&Z|@pD4u,g0SsQS7Vl7γ= Aw>D6_]6J؞b G 2-}yqmSJs'ɛfsfa߽Jc`~nI?չlUү&b,BsxH\ĭĨ cl8ӛ;\XqA)36eqH?uj@gt 4ՀΎ)b+N_ޗzL6eynA`(\vP5k1 5$v͝FŤU|)c̆&7}!\}§,y_g1 ]b; SRHڥdC~ؙf mz"R|w`n5R1!!eʁEklU>thwf%jf3p y e&j"e'eʰ1;c3;3E"W(N܂'b?zC2#+43_)mc`$8tTVuy!9;`ݖg0tB`Tk(Evs)"?5Hqs>6eYVO7-F_-ds:~w& 2%VtU o1ݟ2vTro&<}DZ=!,F!Y^˔fc߷8d&Bg81)M!~5UtAn63{ Ɲ0ce LkBŋF^fb2t%Iɨ1 ߝY'?fYda%4kwcaDGKXP=a8l݀@|0?RaeY&*'MTb0zZz{Nn4dG /.MW_٭yh~Y1Q޲zG_ :9 ҍ,U5?3%ODhBlч ϋ^c=;'K}=[":? ѓ 9?6$vWP'ltS֞7ikBWK@JTF:e^]!6;.mS|?[j{CSʿ+FZJ ARsi*AZa-i[YDQ#{BNJ49At`?!MԊZM1򜶓 oާEzt/D#}JO3af~[a. ¹RlQ}^WIљVn([X0 -TN6px){" F{wdX7TW-"=~5v=mnǴ6N]^Ckl5‘o[|۹%^`\VBk86{v +"~9/ di'1' RsW/!47; [?P1K(z9˃¢g".UѨuCkhot刺Vj}Ǭ4+fW`Ģq K@e~"hL;F@U[5"6:!Rnu&{тw1Ե61Ӕ(frSoܕ%kQ(8\@A\oʖHvL>F{K֒3gD: ?bs5C+P\2Uqv$Ux=@8C!G KἝt.xz%&ϴGQZ4WнuFJUw񢞑}88e'v]o$4zFMOǣKR|Z)'IcyFׇ39ܐʛOAE?}.kopN3^ߜuݚŧSKh,)7J96< `3 ?ؖQI]vCZ YBucIVȅò`E|#aoTcuZ$~UN4?DpGb3bp4BO۪Hur1m wQtvB ?_q%'QᅠTK@20kͼK+0eש@[t4IMR W ֭!$LR$9Wdb?@x&JD{@- AgKThX3O!`yad"Fq#)$QԌzT=D~, CLg,7Yhi z} q,S:E{@VWxby[wPd Gv ?*[3wV9o'Kry9ɠ{?K ~G=]T ![?= ľBUlH$?L"7pA-q`aq;0 F l:!ϑ7Ojx_0ОNo8qaTq7Ů罰tl:+AT:6D1Xu~r[:3: ~VRK/ 2eYa d뎼Yjc-F蚛W2LLv{KL&F}P luiNMz \R[j?2V9Ț ' vBa{DYUB\>uhihpc06.C g e[k(_ִݷ․gZsthaR-į'-YJ20\JlWG̷~*[Qb= ݝy @<+>|5K9 D LjDYfi:,pd:w;D13 kL";>-QmH sN]3o:a7KZ7ҎY^`<αB+XFN#C7{=j5xR*|~z7y|I(l~ _M踕TOiߜRPz~jZ%,ux1@M$͈swۉ_Uǫ hhxZc.gl-ئ{o[kƏHdEg|78P[<kj'p콘yEQ-C~c62>ssfd4Oj$mѲW#3.ܬ>{>m/7,~Gr;Ji<RcC|$d!edb~%56^L-AE |,MҲ9yPC'mkkU,:FSV7!A$4ÝrRޡkؾ] @L%ada}]?h׽}X>G]](/6|asLȜY2\[nrЃ%pŴ Sqz@ƤCڌBHMDBA޵?AY+-Yߞ43}(p.!ت9b4AKTɬ4.sI׍$1Pg(`[n Ma{:k>TJHDjA E!9=9Ңu->grq7+</ep4cdƸ&WAxCJ/7~\7Q,Hp?ށ<֝UI7OfPo!+Q&?Ux2I=co[KR1.]i憚{ga,9 y0Y-ǝcySݬ !kVt?Pt!QLO-mk:ɲbI`y{ڴY! a4Vê ~t,EO瀠eiC@ܫq`nןh O)-rsU;ltF4׭e55 i"Sw$7Z*>ΜIM̷}.Rj7'h'0NW+8$|Qo+qvJi,B&9D;㗫&K(.l7:eS2 ̖ktү8ba0]_n5ӌGFJP\_5qCB(綶7<5f/ aa9/ܺrL_kը4 ~?#!]i+E? vg?!ʶZ.ႆ"&o ЁAVFhJ˫ĻxCeRGIjRMx^V5*˙XμvlIdL<3嵳GqǩJQ-(˕9|=2*Y#o3F߁OmEo5UH;=ˇsáh Rtwì]AS~{9 r]/)ے{L:3>gY~;%2NW5_!paS-*vV?'! ccoK`|uB(#0p;P(}kDH}1:2fˏJXu*WeO=/8Db i[HU(U[d a]tŒxCo Ĵh4b>c} wAvL7HƲ'uNÑdXunO Tt097/\camx?/CKMtSyN֢@D@P7̘Zk$[8B\Jŋb \!CC1)p^vWyꠣW_yٹCg@ + *P&txgBLOu2[vҞ%@E3qX!{m2`w^wWjmIX[`]#Y@Ue\Ԋe2rd 4rDVU>r/YHڜi(9>+f&2m`?9V1M'+R*|@ˣJ56{g!X9 <4 HQ}IYD0Oy C͚OFljK7 $R2~c7zG`zOY߅ ~yDBfeo8;TK<*=$ |k~`7.1ybcgVuFgqKl朩@6n+dPփguk GDO> K'aygY% v7:1]^:b3a4r U-r$5Zu騺VkCNF9ǽt;*#1`E=fKVq;ƃo!au s>UCJk·9hP3]E/U=LPt}SDppzv$|hEiPhwge ֳh9 =kXU}³-\}2uiH ^ sTz ? ؙNޛMflPW&ϴ@U]EqR~nAL-|<0kd\ȧ 6U+fàesJv!eoo`viQ rXka> _zΆ)hP\ZSVYәcpiD!oWl).$\xYNЧc )hmwCZumQ% }6:VXRa~2ȒE`hTKp{S3O\N "7<]{`VXz^Dnɱ*K_ݨtmH" |*;npRƮ FTIMi2{:'YO drv2ԙkW<mЂ2W{D6U`xyVvoZ$FA/f! ^F̰x:?MșSrllxc$wԆN]Ѿ\}x=`2yU[F&v^df:!fq06M!,x|l1vHo_fsGKmF566G`3@”ʹ#kհHD+)"ӉK"r'^đz F*jC +y_fʶn?n_ `½ue$9 {[Џ8Rs;rVFz?ɐ= ԃeGg+u*[cvڧa3eϞ2ή4}ݒtM ̊ 7X:xggx3:b % K'Ζ0RYslֿ6<=ApH Fز[1[(K+D^gO' !3 OS%ڈۏH?gNK 4#YJUH%텛I]|XZVHumj v1;j bvdl ^he<~ qD{RqvS[:=E4_֙̉m2L":v9s`ڨgi(IK c;ՈWz^Gc85Z`XwDGs )J9 ݈#TJ]ݠW^*rW_1\ʔ=ALr ux8Hˠ_Hq WOo[0b>ey8I;V% ;z勚}'`~@Ӗs5:PjʇVKW*{MM=?Q$TW-VOjT&a$XÀ%j|$>ZХ΁ L":2P5a\dڝa¸VWI^(|R.Q#**DqnILp|լuv uozgjiVvPq@NJ}f2c*GDXSCv#f pT\Ayc'3M^AJUKGFr\%C` f2A%)L?=P $l*6B ci!V>KۡMH9CpXHKIyLS#Oh3p j. Z9/iP~O[NėȿlPSA`@}L{EF{;W%;oRe$X G(}-Y.Qq6pT^$\MNb^Ic_vԽLjH$!n K_A8~TBՒLf/ܸ $}7iR$Wcr@QҦ=7s5,S]_6,..KuE.NA7Ckcc*EOF##rJrĘ;treoqS#~ao*t/,\?¹3pP B" 3]r BK I5mC.nr?^QyW1Æ\ڬΗU?l;\tZgAp@h\ڵgWn&DvB[NnD\i$ Y/Rx鯘j:Fx ʗm31 ɘ;vci65'V ˒~Gy괓*|GٲCI:J?jX@|^bl/!V]:Ѱŵ_' ![wu>;g[h3CS5WzսP]3uoI wϲa_/r#k[n) 0!]=x^^h @Ӆŧ@9GR{;5qfU8j6C/y6xepɮ\/zd^6xӪoZzkC'Y[}M\u.czs7=T2ŇI)%ipLe^E/cޤ }a~([ ai2*c^}).ZzFR4ʩw%%&)6VqI|00ӝ9 5.<VTr LAykgj,Di[0e F ,?NaRg#GUxO#~i\i?I*jIp^>۝p29t怹!|&]Wr)inw#?զر0L_.dގ1Mp? ,E1N Jy l2JJy$\l8pv1"{'NSI5 6Nj|]i:$E<zf[4) C r-%m^/Lg*u}"[iۭWhu}9H .pl^ n+4KZ<h9YT Q^ps tD*7~^C%̎c6xd-R8$J4NXs=xEze4tk,<%xR8d!2њtR'XB<t6֣G*Uph6 Kp-"`jDgq'ҵ `j&GNl!J}Mh>2yh@4Dps h]dK,RUNNP -8F%E"M~2BWrc%d'G`TU2QF}Y"҂FsHg5GkqO"81ɾ&Fs(!co*V6mVdK1/MRƼW>kl\m]C:i?F%+EW+oCpBd\2Z.B1=Y]{}ʓ089Dɾ1{Mp:rY݇) ww|l/FCQk;zyyQ2-Ά+?tվa6''J^!qY QUBK0 G$۩GӣIgIIkGсugQA"&e~Ȁ + .[j؏b ^P[s*Ȗ0  =WBcLE+Kx_bkbp o}ZpNMqK4ȕ1p܎-r\&F{'ZII^S&j3ClP 2MdU2s傂G杧Wxr(@7̣;bu'KVn M(+DlMJoC"ZPVʾҭn- Ҙ_ty{}cV kfu'^<AyF@f9)3p,RHEzJL %HG3;k6Q{埪lNqaqF2s52/X^"pEgY =dfx[6:NE]hU>ǐȵ sk6>>l2woݘU~0wh?>h<'Vε/Ģ65ՉJN*FonPKPYԘ"r Ɵ3#b]3 ;~Upb;+wEA[96,|f[_;퐻ݡQ^߯T>Z" / c8&@YMt) 10JQڊ3¢OJcbdC,j4eqP{\_ax6us↬lo "Lsz[AqjLqyы'X4=OhX[~ Ȕܸ}HT6XX6GEX .5N/*Jr3쵡.+d%÷*$KgTZDmyCwQҭ2d'Uo2&%*@a;!a5k>Ts[Tf0ό͉כ{YI= vkm׃ W@Xˈ_撇 > X[vm|}ΚMxρs)S&/AڨXZ&FU EPQY3熚E,ZC~DNIs72U|9$bs&fOqfHHM|hk;=gB!u<תVMLN ,ڳA8^VrzcJv\Ώ|2nv,;->,oN|Tƍ+G8uH3[A;s<6M*tjSuǼE" p?gcwc w@ʆN5> HU.mY|[:50H\ 8aLDa Τ0"+jS A [& q(׎6d 3M r#J(ayD}V,=ÏYzڋX'^rL޿^fb.uuLl-9x>sw腛 Y5>cvK"f n0cz8M:pp{ +h=O0 ׮f4't*Fɍ&HÆ9#[nc~#*U 9{(F(; g7L?935lCT&F"!.3P$*QچXSܺ"M?Qg6vVPܤu3C.n , b;&Q?Voڱ Z9S?ss&4ra8 {׌I1uA[Z4Mq]&+rΤE|Ug{!= _P gxHgo)$ Aflwi =#LI"﯊PE$wҢMq>hCg6uyz]ǩ*S͝em<_ŏ}hvN.|3oM^njm]F;zDU+"S*HbED,a̤Oő pL/u6ѮQٓݢ"d_J$q=.WaG74=O6ͧ߹>qF[e0rW4 HƠO¿ -*昊lѝ6w:iITU dއ3hu(g;i _ tiٲajfh5[A(}L{'2w0ڄt]Z:.z MdDwJcXQ BueDyFҮT <ބjNG"ʒݬSıwy9j[,g?(z^ V5R&cKA߬RRކʝ!kV9ѓd &&vq+ٰ`I0h@C%w5Ę۝꿶0hFQS`GџbX̎p} к`zզ:m&yX`N iWHE$v W m%y `DWk`zTiiЉ9p;y*e|XI+3{mwXЉ{l*G9oz夯7q +We~sMz/nWh@R^l$ hLtTxկ>: c븟w* 䣥_9a T}|#y&?w.a ;:G~y)6!TBHj%BZ^QaPZEˮ"tSÄANƑvT$f1,ԃlԿ|^JO7kPN1[0nN |u: QV, –A>fs_z'rְCv PGS>nۣ'|f"^E١u$eG2P[*?C2^,>[z(MROyïmopTa՜DlI_)H !eP,<>3M99{ ^B>< :]X ؎0ja>ɉ "ИaVZҳrKczhMVeYwYCSɘW4]Q/6HywI]fw+A>o^Sfhdsi .v|ԞPDu9Ցg1!!oПPE;u_ۇ)fIDsc$46 6c+sd(`:U,r7[]=&Qfg CwV LO]Qoj)%<>5z=NbsD?iTb}I{y&s`L'BItS5DϮt?{~|> df Z}x}0{BXAh[.r7Wiƞ iGh$CO>+1浨%qzP=pTQG,ht L^P;(7z\Ҳ s@jg^y;k>)=]QGy1(cɇvN{} 1ɹ֎ܴ0IPދn+#ij9q-vC9gf ( 6Q!ftegS>A):g"|LR-r$?&Վ{}x`o=|HM{?3iFFWZOm]5H[_ A`/ΐ?&MD 9,wc^Ro>wW;c#,v_zgةv~YeNƯ6Ph6}'t-iʷNSy|x?-rerNns^r>0>tJ|: ?vuNn0b@ilnm(jjA)CbZ({^ϱƥ]Ҏf c@_q*ڀLr;] VE1,՞&%X8Ɩ16$-e'vʃ`o "qKnPS.^ax/oـ @,]{LGᐲt?T#m5$?#>@>5-=+y9<"4 ?{9Z*%Hnjr՜+6XdR&4s&ZwX\ydQƗogRz#ԎqOZ^r-#mS4os+8+|ϘC\Hu \e^ _>![8J ^<O mZ3j0KM'`HBAfAغD3<Z4o+C!Y/k2{>|Ytx9{&OKg{N?Z/?nRÂh pyMS֙Kƈ:eҝ-̶5ϸNtPuFi~:CMq7һ8iۍPIXic'\> ʶT_iTƳ [=?eJ H[- 딩9PG8t%1#~4ba4p..8]5zJ @#V{;DVoC/ O'z+t`!L`#񢈣zK^܄2:~gcp3Q6oF!0V[BduJ9EÖXIz.0 mxbe:Ik{YCɣz ihPͺn~%B'Fe$^w=pp.>SwiͿ;*"Q"߻2 #-:ijANNu ]%N82nЖGa:QrzQC6lXc.ltF#}D* i LN)tem+g"%bRX. 0{&֝oҊU-x*Ӻ۷?Ķ5ou5RFllJ읣촃fsW|ݤe݋g{ s*Qy _[T@|a樄|򊉘37L⯴5ߑ2-!=g423}[^#V:*hZ7++*b؈@/?wU$1tE@]s5r/sS Gq[[B4-S 7zaXɐGΐ܉Yf~haR_Gw?M+'mh7@"@+PS׿|^ ? `+e=dPo/ߔSGW*v # g5&9z)`Pa " 9`jC?q:~X_C2VZe1bqr *~%kyY$ f3dhRCE|)cjC+z07gX-S6ȫ0࢈yzu^}MYX-(oPɊ`"߲uIR%&6p I yqݖd!<$^k {j  JUIٽ-1`d'a4SWsZٯ KgsBkxD4V:1ϫ|<)W,Z )J꼉|ܻ]3L9_ TGjS t1Tkph j-%ϳ!ʪ,njeǻ܋#٧*sXBF:]qKhm%j1Epb`BFfȏ-&3=օu67OM`TjFc6= !4^?CZ ']pcpynuPHLF9eE^YBCb0wԣ50}?yGƃܯtzJG%|4q1ۼ4 _)|SIgJDUy(0u\fE+nUu6t(89i&G~A|l[{6NByx9Ȳãtz;F[6 b2-~ #[֮1`;H9ԧ"QY*8H V o>#oGȐ')u$7r-Ej|T~X7p1K:;:=Ae[UQ"Pѣv]"wY޿LukKPnTS}RihnH$9f" DU6'}CMʲtIB?BVo|ՃL1r*A{Fd.|>G!}i͘B:;Wc R"3#7fCU\kM^0~-C]P@ۃy-҅~_LPUFW{2Y͞ R}8]}T0S@Ot& H&$22l@ Ev Š!gL68>z!2`XTJ}Ӻfc$ +M }Ƃ}b,dC!YuEWsKxorJH/g?Ogt_=c*kemv%,ױƯڗ5#Kb>53W|p}=ҒCe7XUp$h,byFX/&EBE1_E`BwhSG#/ebњ48aarda ^q⇚7=o%"J%!oO $>^*iz3k໿lKn˫k]eԮjHҟZL #7M˻mP"yd/dgFkSW/ϑ@42dOG?׎/;*K27%4=|Pa'4`E:E]ڿz`AWh9UfhOߘ6X!؈j{zB-ki[ۺەC a^2&7uD[^"i q~Ś .⌷URݻăԶlEqP?Lܲ8])v!Ppޕhb*]M`r S$^{8+$P/C*' kV.z@Fm離k0 TȢb׈|_W$s!  |IG`GL {h3ݪ1˹č_ .M4 qʆj`QG 0xs=g=ܿ4;+GEo*dHk->0;.u 9ƘRZ1^os]ϑS2E AZȫNC;B!0hw|8-qb 6 OVC&z9o#?u)DwH,954}~H^d1%,?C?b7{Nl?%wIjx+i~ks'"44/o~ *c. iQӟr7* ?:'laes뒚"w(7Béx 't a\2M4JD9ň;s;\V.g yL4rڐb@DQ!^ ޠ_Pf#~ I0CRdAw}:qJv2|D$@FAySs)،I.k@SXæ6u^YhS jT^=xˠ\Ar )s!DB$=3zEZN_\@`RCOE3j@[8HC];Q ]C|\ $YM\oFuvέθ2T ;"f27N%o$ fo5F~oN4%iSWP*#OF~U80{nCkm%TvP[KΩ@D5Vt.XD,ea d5IgjK l75`,{`f1:)9C$ZBeZqI!ewW ig뱑:SSiKFh[>fGf6Q_;@b? YB;eGxdK6' {'0TZ;H$ӣd(5ף~s*xٶ9Êbt{ŎA.X]]bϦڋ{~I"D(] ]0yZ܀Zs-h!ЏԜb"dq[> h.-i…'̛膬JН@6"do*^ Nuvi T\Rd-ӡ9p)՚egШ<]n%} `J[P[1>e/E˳g*6AfڭY :TW |GZ~t74a!'vsF#Q-dInV6ػ&mV?7s~ぜL2*d'ۋJaw s}ŋq eϧ)8iPѵ#J5vö7(\(A^|Ҿh?G/~»ݾ8(t`~e[ּ?f l9IIJ5QMl/p4t­yqm\?PON,& 8ɬ`3c8(Zq|7JB;iVWv4ttIEox5L>ĝ}źwuwr-02-BU\7A <-xkƇ-߲4"4;LXR3@'[-Vf}Q<SasK;@ڣzWv\HI\LBh/Vn-lvmg Dg~gCh+4Zb69-#nw=KCP8vlpc $  =6{{,g%c$5Fds* -iE~M~\c[mjDt YkmWo7&WFpCߦ\^vl] XDc24`|Y'} SRU~UfC&>>khG̠8LfN9s걬Jz)+rQ`ḳa<J.%i\f\-8pޫ(Qo:7 uLU,>FIb"x):$Nd<D#"}Qa/To#+.z-~:uhsVVcL}F jRXRz/EFHo}'^cG3}@Hs]]Φ2B15Ђ e-y1-T,bwyrrNG09EmwA2@p\jtS@0)}xZY9E}ع 5S޵et{wcR)JNN:}nm-!)bۉsa\r7#Mvqݙ^c[!9Dhg,~ܽJ-=;ͮ8'"/B$=`2adbv)EC:m5DǿǜX{]k^^!7&wMWW+j L,uFR@{u {eg3bυܿ~y>xsbhU:NFԞg'v{O"L\}J;h>h[VS0Z:vT}$0~! u!H] 38%Mk/,5q$$a!ԍ")Zz9.G .MЈsWO3m: +1WWv䠁2I{HOY`΅4uBDo4`.mlcT3mi j^OY.J<1'4pр.HTVJy)[\Y{B_$w^ G,7yJpX~I+غ,F.Եl=B+AƂ]΀ ߪc_N`w~|aؤ,7Ֆ81"N`sV>k@bel-0. _LdYlv_aO. NAYF2-;-K)FbH>jH+tdz\/26ŧ,ljh#qZgg<8FF~E͍GuB{L8gv&ךqh ŞUP'iD36їo:`dbҖ!QciPt:%I/uϹ)pfQ˩qlk7qeȳB぀WBlBSҖĐΓ>klk6Ի05tO+o!4~@;\v: V@N=ىE"=9gO„5x>ѹ#ӂ!e O` hЯ\BLr8:q[oJmNVxnrpfKZ'j򇼊,=UUZrx7 ⲿ+h=h/܌uMEMw;?nYu`^ -5Pe9%|kˋ]fjcFyjv5<>1o"z |z-Fkcc3ZEJd~%3`q{1$CMq}PJs,adf:S^zX=AM(`bw_Vuy ϜejvҨ(.`3"-O9yJ8UKܜϣ[bV ",xrlv w*h8Q+NU^??NR/?HH+JF >I!޺F>R6kxo(JB4@R h{♒E.ryLq/gNl:M!34qY禝~HZҡJRRяDNr4Y޴뉳F;Τx%OcGz}94o DO[BH S1+sk z.O';n)^qgAǖ7Os鰷\8è\]̌'O4DFn8-d;t㫄 bs*ڵ"Wq~.Lb)熲R4wOlSuh\%J4^h9sS,~SE|ugH !wBcwnO6LĈ}+' }4Ufh=(]- \*[v{q04\zO*Vi9;(ttDZ $߭/N0*r&_ B :ȫ"suG>8W*{)c  SAzͶ}_ ~4A7Bh ~;–^~Qpr?290YbNHM>yda7rpL釄Ϋ 0ܒ0 @Tי+Y.&E0z'akS\-'5m=-URHp`^S@AUjDA "<(gexuR /~tK8`x'oANPՈnS$ 53 ޫx +Od3pD;Am&_Aa6w{TVp0'?CyhQ`3LD"(h7]Deɨ#~dŠ;nջ'QLs|7w;-O2ZHt{f٩&Jkp@`h7 +p~+C1'af# ,&T20k@Qg*ϡTeQqNƤZq <": cĺb۩t~k60orՁlRE`Zis)ށhQ Ʃ;}藊Zn-d I#SP(ڿ rao@3Pt K'MǽZz>w@Wï͒ў6$\`=/rݵz5\Gf~ FpFϽg%PQl+x"]u8Aj}M}]@vevF}9+7A3].O8Hu#F-(N+%K Il/Liiom@ ld9w'ofj]2lDִ$HE?tPW@M20c S] jĖ=IA( Vn0ow޻aL -bHZgAPbFX0&'4 oݫ.@x!2k<1 }nk#},f]-Zbf$IOP~a\"2%𥴒(827d퀫*k΃xߨLjIy85t4zSpIN*E:zW*>p``;Bl1,] m(N@ 0: iiD'+G)* )E r6,j>]ccMgYڻR %X.O) ] s= \@eh;]n/%ϔU>4aQbF31$W.^O֫vD|\PBA $b0hMu_u-̱TlGeHEW$l? -hŋ' ZY7@HA,k\ev0ͻX 1Oc횵YdyXʗ[ a 0'taK)Qc_)Sj!w5 I0dY=qEYK}cL' L\1_/0 #oN k^ʹ,òvj#H!#.P3fF 6?`!փY]ow/IBx[$YoTA :dbu AZЎc>+*Sww@b o21}oaWr*LipPM/諪WY7MkУFUNF,)'u # ~.Y9ϜWnNe|B kDu0q>؈.hM,Oty<ϒ|36 8[cc1$H=p4@fO]d *a+.֒d'qSDe b#+Rt.Q:QX[ݭ<&w_=6ðdL=13b>wvc mJi'sh Wt;tymv̭6d\o_́chg}g2Ŝc}q\&Z&?Н=w5*eە'o-ſ)䈌m:A>63_]l홖)^+m[8!eGV"zK֪xdA?E6GlM%t(+ 6F1e[mq#3<̖_K@Gk)'ѻi`JYOt6%,~@L 99$Kw=F"g|3Ϩ.0Dѕ)jk,6¦%Ř>hv< ܯ7-ښŧ!F)Oeecaaؔﳪb qkLNtH4Jӽ]\6ZMJ}G\NDFmVV>,~sYE>C gLA0;'VŢwL\뫱7ҰFNCk>ղei%6H3z`ް#Zbvh)s"BO&νADVE ?xq\?|`4jX%12n/v(^)?гU+ jDqH$2@0bRWװ08~fxW"z&^━%)!I-]z!e`-:¯rg/tL 9dY?acUOjSxpI={G: vkܾyxyA! wno$H*򬺶3KK=6_Hek̭YiaoXiS1̑$<iB3"*^kr71ux$ Ny &$pN V*j}HU'a Cej{i Eh~õB0-Z V ΍ƒ#/6ҮM;@@Į}݋@- %2T'& .>{(V+XӁv4ū-R/RW+v/=arS{}Гd}h0^ͻ>kYeGMl`٩)cte2] OoR1e?]l Fγ$82΍U8nL7bhi^v%{n1)tBYCV̱+Es~n|>%S%niUDBBpeY^H©^YLk8:5MZ>lvI8NQݮ" ;wGiѤ[K_s`q)*eO?%XCk)G7$N)XDn %wqW Hl_Z}I^r&u(+)Z"XKl8;mœKU?OeJ،qIE8Q 1k_8N ۘ '/A3}&f#oȔ޻č+j '7 3e<5Cf"mTL{- /6bvnP'R p{ muZR՝^| " UR VjGzRs`}˜B^IzMYh@msT9^%~↿5 Y j.!n~2 :w׊\)?혧%Yjn7> nfĐY:Xu-{'Ku_->!Vs)9.f뇤DZl;7:=hU52ļsK?[g%zL]iGy)R L7\3S-;>d6N1gD8ٯ z1c*Y>PI0 t gM.qACIJw;o}7 ] />4k'6>p+5dh(+0O6CMKݓlk`*;a><yNUS1<x;'zf@iqdȦpJڍ +1y&]=:d~o)36i,BsŞr OW<$utγp^4H)SKП*cmApf(I \Ø])ф'Nr1JiuT"#ldj"IKBG*Bӱlujn whepq3cw`Vȼxep[<1M uxױ6Iפk¾p%W:6x]}n?nf౫r{IP޺I1#|aYszy iWfB񲊈 ! <=;nLH{L+{IYRwɦ/mֵ򗏟 ''nۊy͗mR#1 1/GZ㒡.H8&~Uq1梍1sFp&CMxl ~7fvu$P47핤pr5å /(JT |q]l)aX:8DU1d뚨67jGBvykkE&Җ=L5?f1NT(E>D|!ۮIsmzJѱpäدp3".گ~8k]-`jˍ@kKI~(T4ocY(Pp?) ~,0 ʁsbr}+AM=Gkǥ<Ԗ}(@ s`Rfpqjq)~n^ >G#iD@tigjvQުFs쾢y.$C@ C*7;ur} }w@s&N}LKB(,X}s9n2'7N%r!/v5ȵ0I0#e3n=۩feOd%Du1UkKo*KdR9PlZ%f˺+}NE1;?B _`jQ?8ҨirhBB%{k8`)gha}aF+ʃٴ15,_B QYyزR ;C) . Ec fOY \e3C(~K Da/`(9hc\lQw=PG>cAugQ.L@V J!R&K@k 9#H!X`hDSR=A] C@ZBغZzs&n aw ?;ΟH_` cFKHz<R5~Yg $_=pGNyH?9h47KwoCrƏ>]*iڄ3 R@ L٧YH"aGUׯ!SY]o8q@Zʅ8Z]I-yЉ#uijؿg`׉"^?Cf 6mW Q5`/arenS0J?pgׯT_)zkr%O#\:qK{rxJQE$Nt}r=2ُT`Ƹt]%fnl/'e&qY 0Vi.-⑻bt\ ]XhdTqIyi}NE8 㼦Ac%U MB&>&*95Ұ(;HjpDi愻VSjl #񑥔a\-#7BŶh煛Bx*Q-˄!y7NO*,vɓ؀͎H~nOȲz|*D.sj9\M_cm9=Ą׮o0a~?ZߙÔOz3:8&l$u PHmŽ·7 6]~]Kv/=1Zo*ڶ]^^m3Cq L LrlsbӀ }=c-I d)$(WǛitbim̖!I4Su㧞M>nqYJk@ii`Z$)ʉz4Fx4Qe˲}#̼Et1$=\@x o$T5,`7Sdw֬׎%^t.K$ U&kp)?[Wߞp/gʏ {[ӉϽy:Uu2hq9p.OinT Ϲn{FwSR *@; s봎9%By`,'k Zű}Ca&!&]}R*Ҁ(4]_k/~ȍڠgCs躿kTo껲k=?$]XpF"\KQР:G?+`@=2^bnfeAyL2a>} ?̺x7ޭ'.;,y돂s1s$ (E3DyIوMT+cUֽm6T .?Ըc5 {!J^4gb6d].<0HXX~ sf8O^=':HzO㍶rRuz'ge+3n~l\ I~fMFHUIdR Pjt8w#9Rr nus{Jb]}ȧmuHS>9OKʀSong } nר3C%kF?ch ۈR%;hTǧNrarà{-̓fDؙ:Qg)aҊ(Am{Y"sͽ7FHӼnբt!X*#$`v^Uzs3nyJ>*mhvpҘ,=(:E-!|}ٗr]?l~H&ÎC}@As]@|1ͮSs-j0}RMۑ !dJZ͈H.*R2 9cj6Euşt-&3jm"YhKN;mи@GlEb 3wܱ!_|BIk )DI1 VPpih\$ Q?BXY:p (gQ\"I 6L40ܙ|^qPo񑼓;#[$焋KB o<_ǁ"-ke_~;s:'yp ު]Ϥwi.nE${{N05 Dpeu}>xvIWY B%U@rz!=?z8`dk׸wzP֧y|r?(SEzJ=MV8P_Vz5WN(L897*UӂY>Lt>c|9ﶪ,k׊+-7sfwW1ǖT; ڒ~vܭR&r@!L;fV=>,6)_\D9Lay+mE$e%Dt}_q[ɟg+CWJ={!?)*sF 礧=FdөF< Q"D\^k-gwB3U4vZ_.jZjI*>//.!tFtkDc6 G8F gکb,5]k>?eQ\Ӂq6>ț'$'2%YAb Cͅ[ԦKMY$lAaGA'GjG+=M4N.A[`AO#.;ӽCҐBGr.aY6^Z$+g=C1 6K[Gk++#x ʂ}?pS)݀=F;:PdzǦe:˭؟Y$A7\ZΠ]J.+DNO'PC@`0߾#5Qs <(#;Pٻ?uiۀS2F%'S:g)E̾zܞ2~'Z݅KMZ 'jnܼ _ @H G>x2zͦ/cZ %B8}&꣨ggLXg ?6Yb?&ޙ1f]ul?Ngx⻠BNer;m|7_9T_Δp#1냃@i& z}/P.]ʙ+㺲TD ,C=Eyk zCbO#&X2R]k Eid"vySGFvg[?Fw{~(uƤ6= :ߜԋCe, R^R`c/W/נm <5lq/jo5]()C&*g7=TJHT\a6l۬|90ݐ8*W8E d3u3R7;͢k;E Hqց4h ȊDt qskE &Gګ$PF5|,[g2;tbrqE+-ŏ<@쌇|2%e.>yZY \'>!kUѠ:& ~[$6 ;dfJ 6E1XCmL)f&+"% we<ɘ@{7A Zo/Ty K-t#z0)10Ly*gy66ݑNJ|R NTO_f^;|R6ڦ!+4-g,?ux:"Ư<(Vv@ kBc@y H)6w{OK{ݜ 70(Ϡk/)F +nex-.4fZ) 5%3ҕf-QՐsMӛ@!HL\Rm=I25JҖDu2Q鵇'4M3Π eJ~Iv;-kv}sZlWb~@P՘ V~@ԑZI| _hoYrȽ ¦*hl-N fYYmC1I @}mW#w۬u@yHVCٺmYQ5=[3`:JL~n>w?'>T#…p7rІlKEWoV };Xd!0L}/?iRs%w |40X-ݰhN?d7P|]R/Ұdg\R *O I4 p2MBAIpɍ#m'+ Ą*⣅A.ݑϡ93.HjuFɳ(Q 't]ҙLJ鿍Dgp/uM5. \n@eoRyu 1č-'pMaRB+ږ 1;@+,St!\Txc` 2:ĹsU"^AA[f4E [(0[A!M^d{yyl^"@^/~c1x-/s`R횤4`ŨɒKRjvRY}um 3o0M˅ {2= bJTiԳĴL'8ةqg2ѮALIeЀUJAp6.j04}oHRmkFyS?;׮xg]4Ⱥ wtG =<=#P7!əFs"(_ *Fc,ei+ xpCyzP:—ept~χ#Qyq)32C\ Gɉ&ls+l[B9z^c{Fms(a>$ϾF.moa|? p AsXr c;TI7@`e{+<'NjiCH ]jX.4ع[[!`ji%6f'LirH%5[Kmj鿃Mb]K|3+].uToӝruАj"48' « E '=Xv|*2G1}##Sa^lC ,`Rk) ˄=D sbav α፽td 2k@U̻"A2;c.pA94e%¯Q?۫-˘m HS箬ffFbEKs1zGY{xBP{P*r yJyQMY+G rHۣ,զP{6C gH.P94N闋UOp0wpMƩL'W SfORwhMEeMRwĕy"9NX_c/3IYvF{Xp4{8Oh{6-mtQQOQ=vn#E*? 9YęiUj:[/oד7tPaY,1 a;`6MjUXMOQ(ěsDH+1>0 {q[w+$lSqO&q0nc F:F]n] hCaZW q xyXm$;lqcQj$_x_RHKsvZ,X;$ ="Ң锟J]ŬRԼSX.YԸKh G- mA^4wLVkMI T r[OPrr:j*Xe; Fp?/&M x&`[uЕG&Dd20y_ 0!P b@fw$yXxT&nE}]=- >v-8HFN[%Lq 2Sxݬ$n #V 4^UZI6ӘCdYLTO0w{$Ŧ ƹG o]~77ROғ`J%HB3w}h`2b =S'~KF@C< Ԃ8gݪl9r2T|LP))y \[@=W`@Z\_O셮jY_;t]K'J;AC<2&va<|a=k1= $S]vpe`RNMgXAN6Nd# E üT$jhMTmL|$7("EKيaԒ~_8f"d\s( gLu}EJP(+U0ld>%(5g41C+PE<6ymJB;1X:wT99&W"s<@V\PeX6^e ϻ6UWd {N"Q&Ϩ )gaXRڢPG7^;b ZӥQG ʋW!΢U<ǩBf3WY;7K^G>s&ҟbԽ{e dsWSwH{`ٸ=.M=},(G{\_d%oF )0w ] l6 sݐھшŏg:Ḍgtu4V^p# &mᜊZoZJ?>9f["ނ(u܌c$ .,..Wx݌*>*l6U |5ѕ n[&bmA]`4m LlRӯz^Juּ|E*;HYqxHBY yEոb{ԭkeKgA6 Z nbAj9k^Ot 3"_&& \z -/"*yr }̧ee[>z:3xu|j}rXb,TĹ\97#:ӯLӼ -ep]|^r+il bKT"y4`rer,|􌧰OHiΖ學dezǸB!{֨zw0`#ců0!z,U1!m6f Y*^pWyDY"п/fDҤsKLry`{]L?LCO`,*ys~zA/$@ j4}O-)Z7һ"`x,j[筎# U6ea֚|^`@tXj hmJ;~ ,4fc"N7@LKN~1rdn5K㊭o rg!NIKDZ`hX0^F,#7zPrgcw`d]2-yGOqCmѴg,@ 5j3m-T2}?N6sߠǂ&NZώf/?>ǀ(E)z1<9eN=.I#inTg[%4K= ! 1i<81\}a`!VFfB 3 {u}0[4U>d#˅ w OFM",WUQ29J뤴)4+4gbCQM}3co"ILut*2,3gCo k8Vv2NRߩ#x+2RSg΄R(\1ٷ8qmܪ^v\rBmiF :jБQ@ȴ^rIT_(|Cy5JmaiqysmX'˛+ڬ 1+Bܠ.r*iT_N=QCӶ*:~7Pn&!t6103JhX8_7av)2ߍ&[\#rUA@YǓvC<+V,FTgw:%"Y*cj՚N4Xvj85MVڵ)`HF4/ (7 6)fԗ#'V؆l@z vI[CC6Bk=,ȷ/v5SD䜶yϳ\GEp>8 7dpviìK] 3/-unM\u 'Ň#ap0ž 0Zay~4O#3$SYXdNKd8Ը_?8vX$1 S]"h߁7r؞ЙRHFN1/uC <*C Jdوs~Nc=%m,tOё,"TPnZZ *"w?l~`:۶ I7r`/Z!uX"HTxiBT5SN]C<:K_e /nؘϲgXt)2ʹl沶j12k#p_R| PEVX <'BR[bk[a^a>[2 w\Nh K(0o@[5MLJ=XU{%72k!j[Gfdvqqc9*42=xk.k0 S6yڙHxW"ԫ5YOY@Xjڣz/ kF}D8p@G0]>~7-2Hv[80N,^ laY  j! TRcFv!3dM &%VQA W C-9O'Ӏ$qM Xy,иnˁ .;/m-JBIѸUU5(mk|XJƘaކbַPUe&A&gP<໺ B?>Z!dSc6v w?đo9kpÞQ`;_vmyau=f[i])7P5Yx@3!*@ϫv䌢kA擹RZvgu?@pj+lf{xWzC_ $I&Cr:ja `/QjU\ B>,}s)$>dXM+;eTi ~6jujr?Za#x$oZԀT68K.Ablf|o;hI(=ҍZ$.c߁z̊sMuz+8"YOaJKk]ǻ>٣Q׬CPgȂ Hm)p7NF=/UKrڮ.:SjP8~cOp%BeIĵ'l.;՞qbܦ5{;%soV~IfpcBsgWTj$n\p]&*4M%B&:D~q*(܃3a& lYk||uq=M=/~#(/ Χyw$vA؍c(ND=դRfӬCD{N%~{,c08B鲡:ȸ6uX *-[$D%>ˎr' mlku\mb{CllU'qL˸٣ۃ##:=zgG 8AlA9YN'w&t͎T:FvE8} t.݉Ju{5T(4g ; ~,ia[}wH,PzvC+q]ׁBէQLh3v*\ C.-`h0er*+BO$f?em1;z;$Tk:)zzHeO>\^ґѧlmEPFvɱlձ[F >V4r\ͰY0@JFs&Гc`|($]3V׷,*TnƏȦAJXpS&-I.ZZ - W_lg~ .b_R0=hlվ tY9(9/Z`[υm^ʧZkA[xS[e WM? hqVJ֬G3?ą䒐*ئ4lvhk͸Nl)WZ癧 7#X^&+^=*`Cc}cyXݙou|jGϿnTyFXA2ćFE%] xxMcJLQM]T꧴;*sGVҤ}`w/x9xyqx 4Rw䫬H;[石cZ{&JX//1q<@E b~ b.HrT^NY! ؙ /at?Mvr;W_ק΂KB6R=q,6!wq*Ϟ>',Ѥ ES9!>PoPyUm1 >:Tc[GJYR cBWiIUVwU֏LBݛTM5&C0㫀T N!n~ HR[vUGqL'AOQwM34봮R/+wrQ8`iRu2a ztЇ3=1C/SҬUO7%)9@Sr P>.Xo6c7W54"<]R 48!;՛8άY .'[2zy:N!/wr\;W1TT5 T;8xV]T&qLye/6b%Żπ']~<Ղ9+{o#az3,u @R. >m1(?H~ucQ7C%\Y,O}( c|o ,m-LpC\wU) iZI5ep/VFM;yӡ b䝊gg$LU1Yjz@gE&_?re7]i"%dU#䣐~T;agP2ա.f%} ? JQ`m A)×FFA$C-8WiXb r"g}T/fs" X9lUl^n.cc}oė2^Nm)\;4ЗsA;|3D@J æ bwRoGXB$䮮l U|`UHzHs`9b0 pAl;jA<=_9Oc02z|Ӫpc%_eSyȁQ hHc5gyt>`Le_3} ,ܛ IiQI[ JbSW~(jkyz[AleXuqqH=CY#UI:gI5s\sx" NZ6ؙ9RNB/{-I88'n-gn{ U>1KjSy4VC OrpoeQ88H\RZCш?q\5 wZT,k?L}/\BѤC`^,yJɕmu-dUr1BnUM%@Qwz;/1ol@bzFE.='9ŏn0}Em$K.mLtD_R7#(]ŕؗˉw:_#EBD B)1g2:#պ@2pMu|z3s*\+VX[/ɑN@<9-5| pDaʎ0[te7Φ}lhUs{uo:X'*tGA0.V*^*-W0MB BiN iF-P3`oD>v`iS JFfF"-2L3V3'QP,EpsGI}lapҪ b5OSMθnh$E6,(:EAlt, kP  Žϵhb i]h#*8i ;͋þtCN[=F xqÛW_RIy8sJI󯯄2Gyb}Q+ucd'h*D.9=ELʀ`,s,4aF}} an.K5Y@vĘ+!v)$k΅ͧ~ K~ʬE`7jhlc~cƙ1bR7<DQIp0fpbÕ!PK=U]Roa0+ۡ6!ifϸ+*}m$ O>bͦi Tු"%D Ld\0KN?/%;'_J]M _3_Wq_1me!E1(m ےhd˵/aY) ݍՁf#]iU{R?41}x5daA-iHfp[ND`L;ġCpҀ^sИ4;O-}Ϝ3s=s)kP4pTTF'$c!Qk|!GA2k[x$8E&)R$d`WKR2Ws46R=W6q8 Y9R:"}4*Fl7E" )o4xDWAB!Ȏa?k7uSW=†z\LJ Q{q7uރ̴1"I(6$Ρco eO +6ⷲۖͧ2=fKKIp}(3 u]پQcP} rvs a /xVXWaB*75Zm(ŵ;0_oo@X0c)^QTH‚^N@։q/3- _Ջ^{v(ۀS{ Y$#)YRT(ۭ`uMx5)9Z8d#\&leN Jc4)'oChQ>qyaQ6mR !9Z?iU' I~_jl0  F"Ccj63q\Ooɟ7,Ca&eߩH=.CsP@^Ǣ;1J{*dhoBm <)pCa1bWЬ;cEi2Z + c_hkfže"{J[Bk^+ 2]3}I>~@grlWvG1@γ4G/ vZYQ2㟓燥ΓиA-*THĉ"H4{H{2WPv')s @""mGz]'4GxV_wpوC}Jo^RR$QEU-i썉&G1o)6KKjmƢƨDXa~,b"9ėL[̙,)u;Pf]`d޴-5xmZf`^;(*.Tr֕\/`FJ~?cJwf)[ /dq|v]NZ' H:z#l2M,(SG[ö1d+=%^dYS5ox&mX\yC.*gG+ҚM;TD,o`NAdE]D"DpfG}i>4^,j70kr> {GM\Hʟn.!89ZN:TԌTjv"F]"IDe[fDA syi^8dO5_'O'x.&Mcg1R~BDP59@*(\jr@wGa7P|(pe~d}Ң#^?S4gL [fMT Z\=,ͫpYܭ1xęge>srVqг֟1QJ#7Gg~{O-e"n TtNѩ~NP>2eEu%bigRԙ$u҃Q&bY RcLij T-UW!CaxWڔq ڃ נm ^>UC[Qˌ&:mQSؐ'G Yd.Xb*Xo6i3X M0FGI!o+]~M+33zOd =n%aX rA xS௤;ApsFa/N:'/Ζ<#먮 *;cE7S_;;gUugqTG͊T~bpp;7ы(VG >!Vvhfh۱[*yCU;u wޔy*$tjrn//"W@g $t|}Az/ F>&&>vYQmc k4-R SM*Y,c)e [b-\\NAθ'{H PC{qydQ*j !&8_w3b,V;2՞ۙaQM@rݻ(ZzԀq.1FbeiTLY 5D(cP&8񛀢UU Gt GnNy?uΪݜSUI7Wu> aDapIUp . #ԵF#tWy4:L;ˡ"Nr!*2`Qu eбCQ+<$ ߔJQa:]CP'}:&oZz`$vNHqN'T{اHc޿ME9Eqs8LP'eΐA>n;2G c{"~;ԫ{slV5qZ5<@pƗ?`c!Wt (z!'ӆ-Ay zCnn#Hu.ۤY Ɩgo,sCV:y_02kM`!9SVzhI-pT r rUf(6Q6/wP<5fE}tڵ}G3ZnnҖX2fuUtOOK:+V}xG- ɼCjaVz63nnfzie9,&'^,6 ƄBJr(IfQPD*Nׄ}P:7B$4-w8f@{_1E(wN/~Wm jB?*ZBșzӈp02e(+ѻgn.,^K@=qԋ|L.~2Zu otҹkbfGkf[uurts!R[q3쵖L&ş(6 缯FMhcV ^M]Z#pd Q _Ӄ>3kʪ3 C۽FG`q)O ]~_ƪMT??λH'yqk+"1+p|aR/p 'ʙe9k吐jeӝ(VIWf19ζ }NԱ8J݅."He=9A] jC&s7N+ZW6yG!E:a-WbC1 g[Z l\--XAcw|\- ?SD쬏{}ɦԐ^f&0SSB3ťB[LƊ™h:A6_iz3+y3Cfo8cS>:pCAa))^M>#`iAgJT~$ô|$' !z6!xdM G/9Os*Og#ab!߽iZ1-!ֱj`>hn]L ా9qxM)GuLG`/.YUdN,dE^M٠^74-W-@bf/[I|1?,p5JA6Ƶ *:֦"'^5 j(h#~X}`Ki"oЇ@~Zx^Qn'L;p#yrN %)[bԿ~@:7KVFŢԍќFK  k~?9tQа.\&TXujl<0 ycN} UvID_ nψxR~H+NC悱#UJM"-'biUxk)kON6i2xLk٩au3_82{SY/W:9 ,#Լ16q't!P< XӞ2}?_=gᠦ>6wX._b 0ӥJVR>u6gxh4t.`p]vItfU\,mlS>*~U%\ЋNǒc}ԼF]ha- w?hҚa#P|E JĄZs3/+q"R6Iwa&#jTVK*!v:1-tl3yMEḇ$Wgܾ-b6eKځұRaԔ<.dbb{!~6+>s[YGwU?\Djp J3_E?d=<=1X\yph6|Nё3ܴߟٍ۽g=ңC0Bxw?˷+)'J% #szp;hDlbHHd{B5ƸԛO|j@i1 g^J> ޜ:~V'iBϮtph{Q%^{꫆bt;UMPrd<5 Mdl ~4*pQknfv@o H)UUeƜN )|snj~O-xՏH/5Ÿ0 QKYUY`jG|~б|qj8~,b`ʧi¯&!'YV |nyoi{ŶrrdAv/;UcJd*eV4V$v:qg0*#-F-h?AݍBZ&W<Ʌ |KoH^}E7_uz$ R,IO.qGsc۴T7[8\6rgyX.Oboe(k;gwI) .OU_[ $vY@3td$CPRBgb,3R#DZdO)oj>L%hjH\%{܇Q\Ђ~<g*?>/9ҼwMÃV\F >[cdm?k':ߍ~F &py@ mHu c!9g'|ğP@'Cy*̭4;4cAn-Et4O'hȮ}7~y@k!N.I*=dJy;QŰmQL:$gDFt4EʹB!Edc"րͳ(%!ng" |B"VVӽQp@c*ӁP42d˗GXbcL @v7ī=ʠKGWi_@l<<~-+Z4IJ*Rif\._qsQ{K\Јy}Nx [y}ĜG`<KDoVףt ԧ܀!WLn뫚}˘m/0h>"Bp0ΤzIErZ#%,MI5)]B7V__`17S種G 62g)IDq!~|:\JObʂQ7 +bgRO@u 4ĊDIT aC:yDi!s8$`(F]? g;n {O8 돿UoqJ,>PׇM!']sRUB/Z]-c>tuQGNJ8|P;n{Rw9m! c|'^bUtQ$ND"חmsF_ȓ9$ a#sj=)LaZQY3z_ŭ(lr5'pT>:T:6. -mTY'Du>S+~{?#1E?آ`?$wGevΧ,' yՁU'!̵{B>,◳YAcKKw(ޞZapfhٝIk7HA[K[JG#P!>iKPϴN[W`4b\ _1]KPws6Jj"mv u[9ؔe? O`JH@@KɮIX>e@&Umr OG43ktn%ckyJDLf6.u3\ĊJM7s9e1,n"ʪZm*sx`=k;AriG4uʏgK{ZRЎB wZv!'hs})5QL,SOMٶK;=Ƿn3Kp0lC z`u5~یaQSF/. ڞ潣2AmjJx+T\&b"zl>OnDq\2͐'TZT,`pY`:&:HS5aN(i3*>+5E2m9T}/Y>My]&`w_|u4A b@OQ0/kH6mkx7ɬjw*pkZ(&qdyH;k2}d>LN{k.+; 1ve1>V%w)ςBɻG!<î`K[QB EiK8H6n#ت|8 ./`p-X5&€郕w# C+Ln);bhn70`!T4з{1!BjϿP=އ&g\wv(MQt;ٯ](G%2ȫ[S3ldNi$:a> 9Y(HGhωk݈30M/^Z2LLbtwK?;fE32~`%>٫Wwmʾ'Hf1eJpJxu[^TtsT n4(נKINWdE(hIJUPNe Azob솜Hš$\BjQsFm/Iǿ"<)kR|"qh+!RP>$<:}Tx m!t{8/L&{x/jϝw뀨m.wن.2IxsZ,WaIFth|sM62^c$U#(ډekwF:o U$^3OIY4:Q&(S'z+*ZɆuJ2PJj+GKO煮kz]e f6}TV%Kx|u k`M@zBJul~{kO|P`7;o5ٞlџnoST%9 h1rB]NbÒ}iEQKo6-ב<݋p L:DߠavT9 uiw3pj4 G9 + O#h%(d v@&᫚ )% ]F?pOҐ8zai[Q>:O(:hikTA} 0:1HwBHEn feưsxJa5dv#8vz2YN[:]uKYQ$mb ȿt=?D@#ה D˄]ɥ"je9)&9w9A'u S@1 <~[5eθQAkQאىϒ#djҭ9,UBiB͟IK9AFUt+t/Mky_`^r2?N Ŕ0(av8KDM!5`z$!KiL0s P] ^&nF3ƣmU֊#tpRKMj2zxE`5G7Q;?HF ҾmI47w_P˿Oטr[aa i;N:RA@{eLY8op'.-a/矖t N듍AwWY1I3#7RvoPO2mc^1GN+G:de6*kuyНŦilt"I\_A$'S?+E2(0fB. w3Pn0q&B{{$q) -d=.v8\M6aV3}KĪq Tijڲuo0QFJ:J7h# &"k-IBDڍoi U9g񵺃.N͘ Riyt6J_{%욃5D7NH%6ejRՔkط.lҴRR8#`1?¦w|Ve㊓T􊵔krNaPE,"W)`ފGnL& [QYTڭ ^i@EKLΔ9kzȝ[񦛈@?`nV`&_F,m0w 2Ny\NGpT&k5ƯGIl HG~)Q`URbgϽn%2geZ`ڈЭ: T@lzʯBҮ%n $Z!Oh:@q C}Wϔf5uIh٪[3\GøxPҠG:v۰щ] (8_ uއȂ:]*޸`# })FV،'C$$C vK'n%<~/ѼWmt:fʠmҿ{=wvű\^",r=U]֭*aϗq0;.v3ndYrVsRO>򑮣5Іr#KCO(ͦOxcE0#3c,c蝲ע?tvU+MG7@yl~@1m4V½;,I.8f/C;s`N)Çje{ls!XHgb)6jf2貈 %Ufpr<Ө]>r4Vcx Ϫ 8&(+!o?"|(pJ$7*&G~| zt8 #abApRq)}b/OJ5 >b` K:U#"@~4 "xXQuiz<8ƻ56m/iÅEU~3Z?MYo+jZN\68rŚ ,s ݊0HD欂~X2ıK0ps[*D3U嶑HGa١ō9 fLK<BxІ,{Ur^_.7|響PUyƏIĈ1!BP i[LaΗ:WhU&)5r9i9'KxTkJ3y4 ESqe8?~R,p|jC[=m^+ FrBM8 Uϊ T _}˒o"=/w'Pnlʃ=ha6Ub쪡V^i H \Iq)ip! ̗^sd WfIC1:xO l~+WyǼўY=O(;4%Ek!a3~1OFټ'ߒY[@J#sNřybhD{yB)v< Ӊ, {: w 9:}NI1=l5,rT`W79<]kd.Djta_ 0ժtsn#H0a*%q.+@+UhUx{ QA+S{ܦԘWUbJeX/Z<4/Br_W^84˘{Ēb )53èlCL FGv!!h=wO:PF|YIhs+O@/iЭ+ P= [ꐗx~twcZ3S26+*\((L=,MQ:_Z0B8XփjEIG|64Pl(W>|c̀?%sA m k-S61sXJ.IMaBO3Bӣ (1}njȈT؉5Q0ʨGWkBKe5lN'We8&I7Su#y_ö'k3dQO$#aboou'%cX\:CT6FMWq?o>"IجPtڮl<"yj h`dLrW;l2WE?|RO׽e| VRZassb<^j>j WcjET=hM磋Ugp{.eoT@x%R-OXKs[ MY\X7%&R WcڱM3O{0Y\=,4A ])k3Jl*טǿu0la @{?>EmĴyfeϤY9;VX=t$t"UoyЙd{Zl h[vO elTnϸU2g]~Uѕnp^ VgUm\pȽ:-f*<"Vm F_gK4D™_{0UAs?&=)Yg[4 U1!ь0i׆[SB`',) j3S+d{HfKV\Ոݾ:~ Lb>[Zbǧ ! !nr.& V-):ڢ- I.ݘ2oMbn[,+B+!4P'aVٵQ{cy*YᯇJN=axmY¤;o)t:HsQB"̯=eEx .[Bizpn =v25|ϴ@u=̞1y٭1dzRA\b&X +P%.{~fHwk`^17B:ϽBr".-~{83,]jUlQE-̻0H\+Mk}x4kĤϵmq5Cu@#amA,:Pa⏢~=(nTF f/? uk y*qRk[eU*m*[dТWSBʥW S\+;9!l a O$\A4 Q:cefesɲɒm}tFoO 0@Oΐj*xQhF6wIsp}8#-IWw8P>1ਣtg/Hضh(} P!ƶ㭎)9Na|ci(Fsu`I1-98U_.Hrm`-֯248"_( _/:~eD}6ߙNU 놾rXJE箔 % ^qjwׇ d@=~]S*C'wB8Z.y"*A-TIaEnvȔ<{ƨt#jL#i>!B1Ź -[`4t6&ŦIRt%!ьf[k~_J5]}xIs2Lrc#0vg ʏ_WtOߐXV/c6 0l!-dݥX?'}3+D=p4i(JvEsO6 anTRW+88ïخSͭP] kZBeΨpFBsٖ._*u\Z]k>tUkӓ?Yu[eI!`(B~"GwKr1HB/C, .~=Z:S."G1u56~(P|>ױ>|&'kZ*NrMrN /936 ;@Gdt=*BD烩kuxKubb'Wk ]i$Q0<,%#\g6 je-đn"Da-iqvi@+]MԏU$060ĄU{X~7{$SWG>rVy]՛Ξ(a Tד]I]YRˉHC _߅PA1Xg叜'Djp״.thSW YNTv_x6۟aŒbhYZc*_U,H+Q|æ:$$Bb/3eK;Xi^jtLlLcj `DB0XD:a 7> [qFWKۘA0ÈI@<Z |F8ʅ2t"!£ơP2b i RIA Kj}O1Mc2*4_m:qKl[XnK};XE^Js‡M' M =|j< *q8?)7ʠo*hfjJ" J&S76*|o5{V9+4L_PgsYo !q;/C+ym` omDd̑V >bS1dBi|;)3z6|YI#) G+8L>S X0Ot9^|b_e)cP*#Ͽ>7=ZIw2*ۣXkuZhl_(T_#t;j@tͼt"$+ 3N#\߼!-S}/kM9ɶ[2D)~~fsv<7@'x*5_JU쳣Jۗ )*zЃ6*ʯc%'ٕdqx Pf9DR~ߡU W zˏdcS'*d["mcEP/.Ob"f*>=YH];rE"+O0Z76_> FXU$36g]+L]58.h66w]{L `4@^ڹ^i Ow7Ezd\pqCR`V/7MD( ٤d2 &)2QKNLrb/_.DWoHbBFۃՖ\u)xuAhAѸ)މZMq>Bbvx.z^Uu&([Na̶KNӱK05[GUj!Cp[aV V*!z:yD+oL+e>|=kB4L b9hi>3,M**H\~k89U7Ү? +reuÅ\mV:F8c=V?](<39T6$EYQw낾Ԋy gqMqz*6އz* akzU-%@=gQѭMCB$$ϳS,K߇& qn!4e.Bk Ĭd"nC @h7Eitg$W&]Ɲ~GiG T}r ^00}ʽon g5]r3 } 'Q;R) ׸BEfQbJcyo朁p*5Cy#`ia2LP%nVmKCil>ltngLo0*/> 3.77 ܻbrfptO܍0 (LgO$H\#M9+R30l_ +)\n? q`~j?'^ֺőwؗX!4} z?~80u(#uI 7g~]`S@xѫWMۺw([:3{mU6#ja/º|;BEjEhY/' ]qېkX 7C8qvb')k/EٝbI  R6Ѵ"|T~N.pH3z=ZJ 8aU3LA[kݤ<|oOkHQq4|,-(37yc<Qe߃28vdzC@ X(|EOI~Q`7Nc2)./{uw1s1+Pa L-@ɾk 3*~K2ȵֹ-d3ս7JU_rnrSeBȊœQ$z?;ʉoS$t?6KU5ٱ%nbk:IMɊYiP>Hf[h hp60>]UtElJFm64T**6Tf/L_g|׳ߑROf838Yv8nk"JDYgz}zjctdViXGIn!{J챍3؅SFS>=doqۻ-V҇<ak[ f4uf$CsWVFÇs5Vw,~tAs믰!>Q*͏)!hhB_D"j TQG տ#PjbT_M?)AďX '2٦}^ZH~dg &>谖zyP ZaN)]1jkوNTEa#/ #CՓAH HפW$->IG1e-o1 A9~XM:=$ަs ٯ!f|fC'gb .Eq\7hh<[dVt]hv C7H8Sn߀~Q/O;_#pJɂǾE^(QKR?9I_=\~A;٧Q~\L{.wY{xIZm4fiFGj ߥRQ*'QΰT>  XzbR v 8-܏ !fP( :JhKL&IC0 S٠~CǤ2P,}?+H[ߴdg\N- k;Bf N.iD=eoJL𗾾\u>A@I,J掚J h@0qFGTe-N[X hC~fˣߺB/ !Hs%%H/uA;8o /pri1ͨyZo#%Ab Z8Lh僲(qPDύ=. GZVˆʼ NkKw>F"jHCFR+[?;p[Fv4.pݏ5   O켕\v5Wu:?7r4 ?N {ìoLu(h fޟJ7kLp.1.3t]^l|6Q,W/yAF}HɋUiNJ7?Y} I媍>i"߿2y{G"wERA9HJJO~zߌ[8"9ZZևl}b9X%=aHEG%TC:qYK"!Q&+_Brqf-h Ԃk 7_Vq 06RorSb.A`LzX"!r> <*9r, /?V6ʾ@{HiEIs6[YOeZmV%givh` y~ Z{e -l62,#1 (w~lf~L ǝ3(:6SB#7T{AT$xAmv'௹t I&åT#75opxC.+(:ضNnbB!d8uB)9LR-eA_ sٸz5Yc&3真\E`p 17sF%ɵvv4*4 =,g Y\XR%L\+axOف!#<3ģ[>C{N! ޯRDE+tw@tqvviR|~qE^wg.Ba5X,AYd!5 кs l,}%F-s!+u]WLL>![,YP|]D}1 MKTTMvNMz\t$ssi(pXzDSY 0D I>K`IQf24A|nX)մek|^HTy* K(ZtdCFg[XE. m6YuG.i<-ҰklNEcldbV°-ܖ%Y[{`k\yfbyם<0 26vߕBŨOO -av_=z{{m:Nڎ0;7iQέQC@jCqi).,.bQw=_[IZ}_<:2z<P91bX&\EnjMd~FK\Ipz k U(T, q_jw(l"ʢmk"ߔVR7G4xK|BcQT}?pIׇC'Sv%׸gqźWcw8ֿ~p/[%XydRGW6`7ތúK(IkU3e O]}5GrGrA+oI-v[$ڱ?ӕ$am!GpJcS&e?, g, ,FH;ڿ\}8/}<ݷ&"Bic4*!Nu "6y΃  +hbqq\ŚQ+.q#K1kXכ.p6*UDR 5$KDq r=i"dJ s;>RZmhU1c8(c,lZR;$6L=-\% -!I-y+SW ډjyo5sV2cĸZ!gEKR/wE5## Uml;,"ՖtBkEqڎ<{on,ؚ4ARǕ"7?ۧT`-ɀE ] t+X+: T ~ yė?aEhtР_/{\7rC i5Q内Aʷn_P:LȻ] {^1Di41|nTaHkP+nyCyo|=|0QtVx;[+zJIK~Iڅ7'Vl>/\8C:z YWC1bEVs8oRo?87k :Pm>G6[=zڐmGn_9)-j˾zeϔ_8QѠ鷠sf'eb/@F%{X2TR*^dh-' 9&zBB<[ݸE;fPg+Tzs(D^7gDRs4ÎG/=˶&-""Xc ޭw7V Uhb'i߭6!NHo{fSʜfy YJth?x8(9[6a@O]_J" ZB* 8\,̩an#lqļd5#ANm-p ^a'e.E 4+%[ib_Ϳz&LGĦBԅx Ci^uy]o4uwcIzb57~-z;ʎ*gl.0k" yJjՎu: 1Rd"D⨐ؾ1,ʉ)hvc3Ys@i}txw`o]:~|U!H𨄁_P6ߵfNHu> TR$$svUwIWcNi̕ \Utc :z| R1QdpOb[(Pye''9G @Y>A mBB옔Ѹ΃[ۈw(/^ `ՂXQr?MtYACRd+r 5u]njsrݒ!ȗ7v5]r3p?:< ?;2 C]pC[OY ٞvϮ߼k܊Q7AA~Hl̹rM6Pon*|sq5/\"- =/"Qp6 ~/f6ZQ [p?")1 XZ9ap'@)S{ S՛75BcUyvSN>k$ M iuE[m%[a1ű^XOxgEH]Cic7\NKdi .pN93i|W%.=0\ewu_-4_s o MrS0|s%_a`nWLsX?_lwIluɐ\K2#@) S d *.o%QhwȝfAн^[hE"UlLhC`Xhe&z(b[_Y2"xOXW+4U4[3Ց0Sedp?d6|rsSjwUNu.D4e=Zoҝ4u%UW4V/c>q@a.8^td2^&cluved!0{g*/0V@\|*D _}șmgPECc{uM#U2-vRF_8HX;gCBW?EZ)̆6ua:JI5A2w[T} @ֵjg0} =Ko2xUpbUx,k8D-g쮺9w F:*ѷk*pz˘ύuu1RD]Y) a$}c%Kopy$'ؾA_>>g\{a2ZīZ>٣nFr N{4K,^$[p eUK=vOm_Za7u+ P'y܋1*jj&XcMYy(`.YŇdCW9{$eǹNj\N/Pm€P% gUr*4p,[Y:6{H4XcXȆ(~>YW؄(.Ͼ!}*@"(ovdXY`ѻ|d .a1i֟0u̶tq+5仭ir)BKǯw޲<0d]c?"$ ՒDyP"Dc b*;i6(-2r(ʍ} D D"qf${sVʿkҀ4/铩"0}.kC-3A( bha9أ/q}Pk ?&jr=5 IPm80.2d"˰ R&Ei_rae&C%oQ-&JN+Vy/U!3? ߩ$7I#U}z/kFS}|2Y:sT;PåNV)s!cJчxXÑ 0w8œk)P? Aܕ4@ 's&nBڎ_=}M7F +f9HN6+6JuNt 6f l~)GlM۔QJ | I!jcc3ETH;0[=ݨFۻzNd,Ϭ.πe6FIO<ĪaRs[2&;NW-kQಇi( _s)Fgz&&L55tns"of؝l^3Uir`|IOE[n%O" 2l؄mZ&O #;埭@-R9^M1tK;1IKxZ`:{]G73t{ ڕS? _vAd10H8d_BPHX')}8s6%A,|kίs]nq1axabEti('H;BRD'q`~/R͏Af@̬\{Uw:tR(w#2bVo8 G3J 8޼f^aDmcvsBz8m.L_-:VXW8TQ0u*u[1f绨܀k@mp?j1 x XD l}8Hկ7>~~mVp%K:T9z;*MͲ;2rΑJկ~Wlcƅ\J*(lx 6]xS$itGlj!BEV4SuQgIrS*FXr~N}?'a[~5wFlfs/v{7w-^=bJH%v4o:,,qޏ'R[˂rvҪX}j NNf%s/BoN9F[LzsʧKPk@@@GY룒g'!AZ ݯ{rkAE{/WGU#vrA_롒M8qDdkC˓q5̝LgiAr}`-ʳيT'SiIԽm^+(_?R%(mktb'3B5N\shwgSl'ٴ~6[>jLk8K[Ś"֬򺵆rƦB ?ecJHSjUz:yjBw;*ϳzPjVrRr6G_C5SMcsz9kM~`>4wδ s%3խ[?>p"tߖp:KK7}ƟB#O?-:A0UI2/1TwluL7rC<\2-RFE j;-8ZTQLv-B\cjZ;eZƥ; ݰ~ PDh,/jxoBfX!6+.>kې\>+@j1+=Dm܅k"B]m<#-l2 !+,HR0I$N;)VHέT&nm5KyV EHbvfL6F(G !E2'hL 7翽o"eL:Oe*8 0N8#rOCrP\(9~gyPُZ $uɫ}8JQIOM (D 0@/b[fՒS_A4҂Rʯwwx"> JL@(QaTO C (u*qքǙL!wnq~8m1 4B/_ _쁹!:D|n{l-H9px% vk~|ZcSM"o*]G/o™[OU=䐕ݟt#IQMbcQ"=^T8b@a2&C|]8.Sd&C/2ӵ֘2)m dǘ3~fI!28Vb<vL?C~ǜ +)_xy4[CI7FHH\xuN89vrUp c,Y bm̎{"1cWtϐ:IPmLa) ^Gb/RI7{% y1x,n2nG`\ ej_Qpا͂LeY7`h5VTٶ2<xxN> ^pݩ9J }y13p U Q,+m/F @ %uESsJ,RNXom64&N"{rZ2"?^)ID؟۬ <(j `0dVQ,E# 58$xsj#ѡ|Abag>eNG\ݗç 84e1 0CK4 *&cRld"}M*la®a'vϼ;rSYvmTmr¹& nP Ccbg@ۀC[7l)E`0pMN*Nn_2\p&-okN&C4 OFܴ䢶Yw̲d/oX$Isf.PӛT\DșcK$^V8hh9~NdX~. Ny_=̎Îyz?b^X6*rܜFV В^p4I[W$5HqH䫴-uop߂O 7/ l SWmIQRp=/|vJWrMݼ`01oтva7>`,34`Bs^uK^>``!堛i҂9@ y8iZ`?P*S *jlV>XZ VVa%/׃)5Bo\$߲~9_~^Lͩ}=5-44E-?ѨrD g-I^Z%z^{yk@۠J6?Li̤7IJdۻ!/v3'ͤ*=,ݱ0eq8jAĆ դ2ni,f@]VAPҲO֪>`pZ|陥Onls3:`G-[tiە)ixc zĔyaS,Ա !!0JY\2 S艷?!26T;\ή4W 'Knag+$\_ gX bv᡽z_x.X#)70_VݳoADvv= n[asݪQ @Yd\xp6b}16Huf|=lakXgNDd,V.aT=GD+E$icqP+է6)ț!];X93X|xnv;ҹ,gwVa#]Bs..B6Ljz !$؈J$1-*V@FMc&,Kg";I@29W[4Osf7}H^ߠ%lAU*@iiYN_O>=}_9aŲ:v_mB)\P65ڝcK$;8^(tb8mt ms`#1jfBӥ`H/;iXK } [M)3 DhhJ}6}| {K ̣T3t0'@SPk#0xЭuq2Mh8/,\ei%տ,&QmR@EM#ӸnLMŮe@NQ2"ႛ54{{HK׿67kmjƂӝӠֳ_c`zɊt2D5J𖓯1ԣj'`yusIAlN7pKH 2^b.nGxkHM1Qx.mqE OTi‘o? 9flǨWMW-e_?hĸwB)VG{CR|ƂH _ֿDJ$ WuCPGDۼRP\\{< C__]E˝ـ:q4V# WٯTb=%0z %:w*SɩihPoAБw0BN~WR'->ݕ Ʉ'Ȳ\% lIlmv9.E3ڔ$3,j.ެ[Tbɻϛ|` E؜I  +7QF5,>7=dל]N&oy \X{)o,-UqbpV3BÁ`󻻞ġJ0'Bvmh \/e%eM tXl+c䅝+8\ˋ:c In )VsN ĞF,D+Pˤ/=%W&F\ igUm{/tltؕd 8"YtN֣=ZA =[_!PM/.=ڹ8vqqVύƒ.OCYpŧO`kZ9"4} *~:cXKEXP~^]<>0H^-=1zAsJ8vF/nxlS_uw 0rt^|!b5V oZ,ihk&c>TPD(H˫luYng s8$ ^[kVn*7Rϣ B~SR(&fR?ǞlGeIoX, BM8H/ k^3a1vʆ7"DIJ9s4`(ۭ)XJ##,pUSY\|=nW~-0?Z33LPץVI1g[BmTt9F咘Yv5d#O Z6]~p ԣ&!VW7=|r:$$])h-(z96> &☪YvHdZ$Z::9x">%6V]h~5iosȻdfWFDYU_gyP܌ ̮F,rngp^Щ C B&6pQa|WCeASHЇ0!' Jm1.:ӏ)פb8_WP,Y=#(p rB69`ASOfӽF%ÝUrfH Ly .İ ߦ^}!GA{w ƒ VUyk1??֛:ŒIgLL) G`%6Bm08Y6SS^v2:'n%)AnŃȟINzMuOО=@ 0T0a*!!/r9ꉛKR g+LZ`mAČܻ~oSA ~ B0aa)=}D14Y3>{Yy`.t'̎*X%XS]vה(ַ`Dx.Q={OI;hO%@85{!k᫏U =ܵA&I4+nv=SE ? kHَZsU#D2"SkfAE@*d >v%=f[s68t !'_0cץ$y.YTo3Hl MTd{O4!.<'lC D;p*/=1.5xU:>4<<ˬ]˴MN]zgs]k-z_8_,qԙ)AFoaJ_x IH5ljǗC UqZ]On.Zq#R. rbW#ן%HLǶ1N`%Gp؍K [:h5@_d=b[=a';.?MbO8{*:׏[]kӟ !GG^V5I!8uɤ&EeS6EEvcmZlpc*7n;Eg~&-* /ӄ^BbM@˖ot1Y`hW qµ `kk:,Ekk5(QOAŵ@_鮤5NE ?Z 9:g>hɤU7Q[2>'8>;=Dְq##/?<D#HUs/9(P\yT](JV8nC[bUECxio B\OLT @ٝWn`s;>SaX-c-yfMY/*c-JV^>vD3f4V2$+6au:*l18wωiӄ"nG4]qr֩'#nk9=(q"+-+i;0@@l0ZM9,nȱD^>kpJSS~V7 E^N87.OBgD>K6D5ޟc7r4EXb웃)I\j'ߙR<@ ,=oNN: K%|#%䲫1T)(PU)jCG+*î_U1d̗nSr]Pr(<#Ih]ekZg\{õw+o|iH[?QJcm'۝?C Aqˋ|p.2Կ?Tx= N]gPi1\OVa<*B ,.ݜ=-԰3b>T~Ǖ?j=C,oI&.4C;j)SB0.rI7[= @|>8 KK0IC6AN5xbIsY'xNf T11讯KX}u2q3 IE,_S\~F_g5,osIcl:La̞hV^?ƅU?Es157 >gD5عi{&< nBmﭺ;|D`icc@i[}#jҀ яldSCLv꬯pWȼ538sED`aeyqx]{)-'%}}^J4]N#BtUwן[(XP/.O"uB4l℺>0o/ wQfD=.^V2RQR}t~ -Co!<tQJG.OrIXb1E\{F!WfA<𻿈1SP:y=`na`*W\,<^9Ek(Zi4e_` k=k`ҹAJG1&դ'ǻ"*θHlw-}o4n[l e@Pl!zLT>:]A<מ%> ;mgFFϡlumOt};gSyK6/DX5*AkN0 aCnH<4TAoZR>{pSdO?hr%">vhR ?j^u'l5c 57p,^$BN-`1 U L֕ DPs;X{SݿEB5LuE|8̝6H0=+n, lz#|$NfMy6IGMR6OR/Y7A4pҐCxO̙՘pE` YEvf1Ӌf GMDTW% )DIDTwcl7~rp( %(_w\ ii~y+d3vACSbN!рᛆ 5Y{)1کS6}X$tEmɒwxi7E1v7ߊz(BuuiUK %LȝUdRT)ą2P‚NdCP|ShX&\&m9À0K:3{Hrt#pi@X.Xu @j*,<>1n{X (d1 <2u볷*jDlIcg kC1=5LSBUH1@'G&nǎ X\b$o8s띾Al?A^b}3`@ S9 †!Ff`rLtVz{XXK E)C*;tL4vd8t ~'%ch9sx&;tQ F br-Jwp5p *A>0}ݔڥ+Cϊ׊JX9X5(>E=7c8D)B\ ϟ|ڞ: .4 c0πжxuMI3FxE5u#-R(>P,@˗]g֌(0݂S1^Z:=H YLn lԱy8s?F}Bipt叢Z"S9CuXSh6{30>\E3!X.&$p;0cߪ# 0R'{xȰbuю:].'; ?g7O $K.빟=Є<ƾ޾r=A!xmʡ[Q V|*N Hbӊb"za~R2 -O;mENi6v܂W GLVVX(οQeشېa!Ѹ)tX4 wZgt͈-N#^Ά /d);Qzxnq߈b²f.ܾ #VHo5*[ CUgOa~IFb;jwo CN&\Y)l,AA<_VެUm.'!>Q/PԇA0^_&Z*QemG wbA* 1#' 2ac!Wn1fpI>Q ą٣7:dxz|0(ZlQcΕdf TL{鎨!}@cS9I:1F°08T; Je9}E1_1#;g1s0ϸɈl~ w0r<f\|ι䏊#Rfa((aXyԴ'GU.s#fIz06ŐR$ybY#N8S*=LoQwQJ6ir$'5|*V,^.6Άa3%XZR;gu{(XZTd/"PKgbYP6N-iSg V&QVatvnOQR)Ʒ n['B:G 7C  }e1W8ЊI^";&.솜 UH[}5Ŏ<Tك{_O@hQJ뱾RAIm^cPE:sԗ?Ev8@}|HC:Q+ ޝM.KA)ovS'y?g`KU!۩qNu *<$X}%؂Х T5||$"82_(=<7 NÄ Z݀PX8 R*A]0wNV?<Zh '@\ h880KaƲ SNbFaDRwԪ:4oi*cه%(톋=;}Dv $/aL-j[zu$DlV\ƛV)Ֆ.5Դ|/-b^:aI]4w OTzaw$d ’,6*Qs{9`T"|Ԝ~CLٽjyOo^Y0U+|CIs#ᆳ[ZC{z EԠ+ @h$N{bkRSdRd} ÑA6_K,狀ZB"䕪e|5$-tn.i90SЙ<ד0gnRk;Nnfl^;U^]8;x_\Fg wA6d<'Pj KF8* .D|"#@E9,Ŏ=ZKo%FFo=ŷXo)~\钰@qSA 5[(=Ҍ8T1T69Opܘ͑qxYc? 9D]ZDKo&f~m8( CeNWу5aTJ9,/T澆`;Uw)I/B."HJ Y@&>M I%3VrTk'x`H{L SŸ.6IC wx9‚]ߔ sM}*D|xs;z/(fGJ`N'_?.qXVzʮU>ڤWސ4va79X&Qy+7L*We6\H}{zÏ`FytY+7,i5o9Php}DM""<ggIvTt 0HyUF Tޚv[V n;&ˏdƟ<&%yɹ/n~hOf  >]/PC$m%P-ek Z(dο$=WSKa_aؗw(Z:yX5?~‚3nZ^Z5UsT+?%Jv!i(r6??l3;r/(pFbøJ3#? ,q#]PLȡlDReXÆ7ƹ@Ww^Lz7XO[['ڢ;Y|Ӽic0*;ZSGVIᐳޯȌaB%ą/KS VLٔY{W2.*9|"dm:5ezzWfn]+*EooxsQ b qr߰?Nv^p;})_uVf?ToG]!QTtۮF1Wʈ~Fj٥<fjj7Wh֢ Wي +xkb ` {=Ȗ6۶殨p2.Ĵs{_l w 2"dsXna ۦʵC!Z(`4t[TTkb3 j#s;N[JUNGt",2hc幁9.NC[.\ IjbcPڦzq"}Sw4R VV+c7J Q\D. w:硧6) ? OY:1۳(H7Q%9;c?N22;=*hoB'v.HPf2)mNVوQCSsiw?'8{+ s陳<. ()bMb&D-52zVuŒ#?' ?t;@(_Rr*:7$wvs玺Ef>;i{z*2 î07t8ψ7&oK|5 7k6m<D1E`- e/ ; P) 3. 6?ANnx̄Xfy'KN˟@ `,Xd hrX!WؽWQ>*^iMSp8qhc >ba޲ǶزD>e5*{/DNh_6 #T%gXe@AARI_ҹp\A>jkGo|`ʤj-\)v<`*(VsRcSuОar$$8p3m~ڒa@%#|1Uu3߫բ:/UE}޴rʽVzW95-&d@|Tϯ`8O\`z9R;6zs#zy̶<4c(9R\y7ЬӸoF4#9օ }|z d7(j2sodRݘBh7dFVX]GB>uHbR&m:?d\_\N|1`dIa_/3X5Ѝ3~|nJB^2NF~+b;GU$CX*yOQCOkoOQdbӵp,Ka}:2-;jޘgDkh(]C_j``BUoa.2A=õhǐ>>޷fe\gUm;\%qiC1[ elV/G~?6̔qWEzT|>ʏqU mQM&yd#S+5+W%skl6/ vIL8|';^ H9h+7w^#}--2Drj%C ~sQd^1hnxUbo͹fU"ӼSB#!~ӢBﲽl1UHZ66Ŭ ׷`^ 1/9{x06 Gb:|>l!)9Mcڎi8d."-9NHm?t}Ϡ![4<~p`bSvQz-YE2ڋ~."boT-qf(3{;L1r5lI8Kw #1pUX@§x^զ#y\-wlf6(Q3Dv)1- i𚖂E2*w7v+* m #|7'I.NosHZvjLF1s#?տ 1cOF~(8BZNoTG%Q<q$5|U: jؒCsK17ltH_YrR tcV#z☑"sNǐ`$\;uhl^ڰASDqIdQdzҞ9.^~)t]Axx D/V.zqdς +Ǹnfc;gd-d TčSn;'ϑXF1GG3r,]҇yȵ9v}DJґ/"Ih%pۮ׭KahR5[.J@  ^ɖaj.w5[YLhBCZɅbŕ^Q6"pM@oGKO۔^ڱrAX~>`G[6&X+ˆ S%aKT,hȕN>K r/X֟yz2b^‹ߨ-\C%8u@K | $mz 5FGCKޑո2V* O_?jȦ&K.  o|3|DYa-n&=Oa4q_C*>=NI P?|vuK.!&S~h FWIj/[@4Z"̾63]S 3䅙?SHVN/OZGY,şD,)njk5)?y§Ӝ6Dܤ@}J-$ ʅ.$n/.|>a GZN,qM[%B>7RK郋_>ЌaXϳzHQl8wM-U(2ǯAV? ߛrU+:e8BZ(jIǗ3̂V5:&N*9*{*`g@KYIiȂkԿoY)_<4Lh^#1 ,>ѶQ,_P:t)ל0cl&>Y;gZq38Co?=-\Ux,2KĤD{ohCLMC6):swBWi׮47#h,>[lg"HYҧKLhSŅ'E aIcTDNCIS>r!uZ!! 'H 4'Đ[>a]XdLj~FF-' 0oTn )—b!<JCKUO1lO=Ej`9ϝωXkgRJO$"ɻZ"IjGf$&k1%"ALPUg;cCkP壤tw"0Ao_& UTA4r֌K1ԖGg`!** ,]L UN/ =8LHMէ{%DƜ,hK_e-Y'zh~fec s(g j=3ا5h/du!ճ㪍@r& ;~cr)[ i}A2/@jo8+'[µڬ34YzJM/ 꽾{ }+6T[Qy<9䇯g.]Mr1e&:7thKcQ.I(031 '_K!pfŝ+=Ud8Z:V-ZȑQj>Xla6̀8#lITGPGz-U ?\t&'[EIo2Mm8wJiȸ~6IvEYXF+ov\GcqF_BlФ6o.mљ'^\h_k7`{z?KK f)uAy6FX4%Oj4pӖݰ+DR\Rk#$d)2-T&"ۭjʼn$ Ȍ:>WY+PG= (xk$\3) Ya$ ݓm4to [s3r^V)mXJJ3i蟋[uN5豞UK8TioB\&Q|ژz@L"B\|v^] fwX3ȏe&גI.#btScn|_&>B % Փxa)"Pb('>H„LHQ=&5 ic0 WL(C|msFWbHySe:]kӲhN ʓrO܎.u-DJϯip{'ݢD ʩoe+,{dXW]32#ĹzwsHjǂݴX6yFd{ZQd|2 7VXa{CQ)g.88F1u=ɼN{ ́SN[0/5+h"#͟y,Cꇌđq.dI0qպ';gW{gMYo "Q%&\Ҵ(1x)_{`F,juZ*eCno-QN[6.};p2t F&=͢SCvxT N5eGeC#pp94;<ib5+Ț 62CƳvP$E ol[}LEL uha L5֟چ^۪e=/$8MV)uG*>8;nۺl (N1EgYڕnUTDF~bN틋=-0`|LE;ΟZu#8(T ?pi]߽n]ڸZSjit*T2 90vk'* /)>/яW"B-m.p2aCD&z(aj ѧ\FHڒxdK^$/^n?x ɉJF4V) XZW?+mlTI"\`A!D-LS R4$`-ckxZN!̒84}j*ByRK/&Y+pP&w/f];*j?N:|wp e l8(*0LF/pf{8Tajx5w)3b/Q0Kt@g S:hwP 7:yws`.㡈4ˡ%|^[=㞛xm>P2Sa-;٨՜/}딞؏ 0?ǯeC938\#~#JÜ{d~@`'Ѐfmqq%]cZbz5k:* r)[eRx-E[[5pg$hc[}2+}g!9UNxeC#ݴ >_- ] 8>= Aּ\=(dF_Kױ'10@z/>KT2 /7ʡ=%#F{62A#&?YA{o~tb>ѯ4YpTL<htx\kKܠ{GCa.zFEVcACŏV}DŽB0y-wT\`%賸CMD5 v1 @s'4?.^I8@.FD& 8İT6wYV)p$<({r\G0qK;3~ nHBq y nm,Z(_5T`5x͙vȀL {Lwzt @z8 K]9:Yi˘=!&j.|)^nb|xk,v\if1toYeQ]ד<[>zʹDS?MWd_ 5_N$zR-k &\QWHO"^Ӹ!Ic%ptcf_QUމڸlpv-r[nLdB;c(*ung{spՑQxX$(H϶Yn~MyT.mziXhػ%M@#>)ŝf>[O]W!)x KK(O&l.{biG~*@za`z+SK$ LQM_zUE/W+;sD^wXfJQvK3kDb DhsVL3Rn;>y,MF>O$uѬ`zZ:/>D }RVQuZSvgWp"aղ޷qWI'(b*BuUD`9*m)[/!+["6vdS$XRq.=nnc}-fSo4NR\cB0~ٗ-,.V( _!͞W`X4lSI}cwdi!.pN=W&]M7Ϙa'WY%xREqHQɿU9 7B`KLg@0754N]VM=J`V)D@={xt#9OK75F'@^ġy8S B eyCFreyXr§ @.quE;"Ӕ ?,*0v?G܉46$yw~K<ЁsO3`,ҵ$ܫvM1 xQ7Ds f8{u:V݁n侈=cdp`C^uf zt51t&?sgi3Mi+*:c!umlUljvO}6ì|'g AN6`S5w"Qxj|B?ZbJn[/.dl;j^]uv4@@*3#'H=SG,`] k5vxC:pTF7z1WM18k-6%^ =}W7hBHdn)4[I+^Nd xf4dnu&cj[J<pL{̢1Z4Y(z/f&D[N9M'! k'U)Y=Ersb6%V}츀(y/}+0=R;ZUj2cMDX~+-z6%H )v*Rm70,blL+nq}-1"a}Irz bd=LK@iTQN+9 ~x)or2D#.Aͮ\x _B2X8m0(pf>m e}dhcw7tcWltxb=E%43B܀9R|*BMrER՚ z/ :o3l39pUeظ6kLc.Hf셴h= n Q寠;㨁^1[mק^Z!RS٢:)JzI-,=%4( _$nZّ`.N`fC#MlaῦBn_k FV"kPYIn㇃< /ۮ>9e=S Hzd!Cq?î]F&!];)f蜀gt0]XfbC1]"&T}(aJgbQ2![ HоV UǂnaϷLcb n6Jx1J* 6LŪd2z\.;˘-4T^lA~S~GUxF9%9=ʙɌWhA."ȮS5-S0äeT=*kq.EĎ/F$JوeЙpA"ƾ&Tr ĞPP9ʦl1M &WXWjR,B[0,:VXs/fzø+vΖ*Adc hNk3e$|7efg|fN2_XĄ5G(g@\l<4KkYd,Eq)`UZqA#Gok1A'-.G[+^,̃νזjYN~_ :,4`K}k"yd+~W?XnGa_l& n2%aS}6V« lSCCjM6E,ؗȑqj0>,>$-kMOQSʨefr GڎM xl*w-3µS:"x`^/t@Cs2.p {@*ψG\TuĢX6i{JFy[510[1+at(5CVܣ wM(| v/W"E[g2_U EW1xٴGsN9T'!G`iULK,ԔY368U b]<䯡%0# p_q_.y]o6y?f{^ ]n G]U"m`dr ט{w:]`PbHސ'?ďNRF |u̽j !ʧS?6.&[p_;O+d wmrύ4h?7q%sc̙"=yJFKfdyߟ̾|A: Y6v W 0ֻb]U"UMYZ!=K.B-n'+IxB=F[~r ( !DZ)f?̸ C=[=gWk7Tc{Ӑ{Q u2 ӘI׋(|_u MBHjώ}Oa[q H.lrU(+:B"ЭZMigbQ 17%J~QءٱdEyI%d,FڻqnmpٵH1j?rl€4)m҃::}yQ 73[ 5s?{E0V};R`n#OE)eq 9!1h Xig J/II]F&xn5W&;;{=i:JF~RI H 9 W i>G,a(g2j`po՜u7Y 4!2F{jDUhƆh[yG1( e3na"+;GE4I[*EٌRm'Tx/#d`K}$6kD)()WPܲetmkys{7j9ugFYuD,,fT u%-nn* BIakݐTFz ZF<{9sRG!#3B2Uʪ"VZU: ^ziyeo,;#g )B E$lB}% V[9YA8aY썸r_( eba.DŽ4nXsT-U.{oEXo獨 `UeN>A:Fd^F,ץ\8S)zSPB !7ﻵ9`]X2ys]\zq;t}tgcŐ&Ml0–>` e&-ӛm ;04#h~5jYdHf$‹Dn@o) QJ5:|RlcE kRҚswr0X@GNf%rҍ!j'SMxոi ?S3;7OU &WSFC K{o:a!.HKJh{ Y>QGQ/y;Sj8Mm]w@fWY? ``l)*V fJ- 6T E"n,|+\g.#L{llBV:Ͽf!kLskK4D #g̹;~ݙ]xC-p\dgⰐM8螳UעP Mk_r2۔ hC?[EĨPС\c?FH,fx6,)Jߪ5~ =Nh/l:|}?!= YFN`As0͖-^]&co\kEg4Xueo ]lIRI䜅ZhɀEW${K olJul\%=cne[8Z[KiJa V:;z n҆d= G,h=4h.lUJf9Tw NBWY&4U(ڳpӭ@fGHy>a44 ǡT\UX-d*{B=+ ,Ԁ u܋f@Q&Vr۪J{>+t8$ ?.)/6E gŪ9I Zglmy+9?kd!Aa"ٛ<&uZC븠kX!̹(h=BI"F}#,yA- *dqsl hB[>5w>\cLaۚE DI_u%ߞ4 .wG:Xm΃۾$[hFe#~@8qj mջsZ?vDoyp z׺T.lΊk&oD4`a4MSgd֟m&|;x +'KbhՋU,o Y$ R wN,(1"+-7Z0#jB^EM_s*Tjvj@O$$=Vvϸze=r!v&kDe,58204 o C)2j$kdˉ,D_(-e ]>lz\p2v)r.mX}qʕk7w H:N)~[r4w ~>#z, gִ|Yk|@Ңi(0GiT-ڀvgSO[HW}40yFaYy/4mu0Z ռ+ʠ:D*;iR%ەX0c#Xep,h(\ ƴwzjUKf!Dzz$b" y>/2|Y Ew0 DI94OwUBDuUt6 fa>CE@ XaF=4# {Nf(̊v1m6ɼfثFT7'٠ kP0%Χ֡ঐ]~[ڵefQ oJX M񚝈7u>g򲍃̹s9>DJa75 %&?^0o}zp${7QڌZSC4f0Vɠ[NC7z z`V{o8ɺm~B-F2WK:Mr~\V,{yi#7S@b:r(Ɯzbc-k ;9]nPn﫻$eϙQb?d$}ɼ4F݃?6, z7(4>τ} FIC&0ivSqeyZg7m=~困(8tu*@49+ uMv"μ&e>cdO=j@Dj Zۙ=,w:B4՜>zĠF\HÝ:ƫr18t+䲏rރac=n> ŗk^(I`4 n2?o~P搞MÊDEfhҷw{d_MB dJD80髺+S~&:J@ڪy46sN4lc;$l][~ҩ;72G{WfP㺋5iR0gm^{Jӟq?< l,73AXn*F`{ag $;?XVW솠`~M"cF%ά4)6hZG-i }{HYO\ۿP'-bw-<۽0!R~}ybS׺EJ i,OmZDɯmX8eݢs22-ƥ`̽Ft2 @e>RqW^A"]? o_ =C]e~ZȈK0gFA8c٨_wbfzo',Cb ?F7ܵ I1uXqv<7z­Mc"~Ї`4qVGd.ojVJLb,K1,f(JEj&hx˰#Y49ȍ,Xd/Öl2)6lg \ѩ3#5/WJkR!Uݔ$`@c?ht8νLKqLj_-4ee[ita.Q#F.QMhn~]~FK#AcBQ}0<6ku@RR4E2a"M]Q5¯=\;ҝ֨C"z'{L$gb#-u}-Dzߏ'9[@CPhPknTl|v/ċ%ej2KDjvgDS[&lB$n:6 2$ӂ5B pfWwå b>soݜ,DV hdsh'Ml v+NJup _.dMyuQ37`$9XuPrr?]fyO\ iuU< r'ڗkMmYe/D49 3ˆAH^Fĵ63 @=O#`9Z R p]yFd5hAmNcВx@CdYU#hjbLr޳,#}Sgr}~mvh&<ҙ`UAQ0o!Kz=8JOKvǃwxR#J _8z<zjh+|Z$`ʃWܚjoRNh}=>y\| Cqu͟1mTyXNABkTU@޵t 5u:]AOxZA"$4B$G;N|doL%;.S-6(/Š[SP!]&]" 2"]9C@z6L,s,he4^XϾ;zy@l@c![7Gpl]*iHMm[BAHUݤJY6ujψr:)2qOvK}X`:u)m1$顆mn->x2!TC{^;V2" svGS uaU:)yoԛFfƨWGAyD鋝n GAH "j!Xs[;4TTm+j9J=n@lXuyQe) v2N`7}h>|rU{ĥ[e !AX'%'Q_n=MPQwJD\%Tkܿ_Vw(e]c6k<*!R愗mWv^ RkI|fFZF7mas#h*Ƒ#h@cQ$P失Y#1'ʳ &WKQLrt@&]x2 .[9#fGpt#m.V@qv\?X~딍 ;W̫!}39WJ1C }*rch"/ʘp܈#uReA+a.M鄅"lQJ7>k_lKL(Ϣj i)1b|_ i(!fxB[9 u܎:e1Ku6Hd: `؞~;ݲ:+ӘI"1aj^j'R}kƑgwdXe1k\WQt8<]I~HD \*T3گlSİܝ9T 5<tZ/XR;}$T޸ؐHG“x1P V9V7QF햲!@#?SI+"P^%EWPj7®\Y eY6zXnT]ǭ(4Um]`zB' @)dۈ7Kl5򏹚N0VX inkjcO^> 8R1_o?6;ƺfR{;A1.OcHA>zPpt/ [NLWҲwO[ aDp̞YH}' ,\Ըcn715g}ѫ*и</ۡ@e6}*.9U}.$O854aMP4",bڿ&8.켲EDmI226iCxYȻ槥ө4Bhh"шRVLPh ٵWmnа]mc-+ aMQ#4{jq*k"hO_~eYGBCFm.vvvHI_ 9 P~xg~fbsPz!f*au)8&;*~ZcEuswiH%iSc\RE7h&k;KTWAf6(u{eFoiMa~^{ĄHV>pHٲ'P^o/\|6kX-#_J;Ayj u;pΧҸ)v1bB @Hmvqtb>JQӞb? jOd $Ԣn*WJԶ[䬨 hL`q ؙʛaXN߅׍楞렒z&i {M&; Wvha_&'Lե"nr\QA>\}>J\eH,qbCUm]bmb&LEAF Qɨhri 1P/䮇>ͪYamroQM/:wۼ z^$c=X '#e?`3$ sK<槨8|9߯ b4ߝk Qi{j.DCJ-2t0|3Ano3`Vm=ȇޚ7|b) 9Nؚb1 K$?c.cX⚵z>SjILOu:fޝ, H:I&2DfH)!Z.a7 Go0 {Ǻ?2^橉-pgDi?T⠇gC=I1儰|#yg֛Cee[^~i+ajvC0Px}+]{̵֘n`M2o999PHOֲ&lFD!حTCg ^Nh, m`!SįF4J;.xRS%P!B;t MLtVNcgHVZh[PdValCv͉k0!g2T fO(+Fs+@Uut:t$x䟑n~j)6_ U>exxfQ9Nϼ:Ć7;\n95DeI+l2l|}8|1zrE1WY|ͮm]&(nh5Zi-2} ˻}흅D89eg;p9F I|4:@LV"ɣ'y!oWS}Hsn2`W00;RҥzEZv}B 4vok1'x$`\cXNWxN] y>;b묆^lMÞE9b.tMD _JҡpYSIyLun7)3a`ny3PR*;E S'doNQM_SAHAH.>$I3S8gd >}?{ \(l/!f K@GWХ5CPVErI aH*g"Z_ɲ'Tkf4{1tamo;Ƭ,ލߌ]K6 '\h]G{^s(8p 7+.5]D왴tXq锖b=qkvA}x]b.\0QNE"h t9MVtᖪ$(>J.%O! &n )D!iPݯ.xi>k!-ǯqiBi@gG.3ظ 'i2qNOĈ:6M#g:B&_82vMw >X0v |ٜq^JyFn,v`Q6#{l6mۮ9OaSj^ s%GG|03bܣEJ03 OVʇL^6z&!#Mkđ!t6ޮhtWxpkl_\XE=L|{L렒\=R[-QU,/.JvmQk#M4^Z)ty=F^GΞģrmPKn=jxxH͆ͷ\.uxz]6m^WP7he<= Kʮ7#Dm%/[zƣyNL@Jt\dens:>1>b8d OilĻb@z8HJ\[+RߢJgw4$vf֠2b OO@8LDoBgW.8bxQ*a&)̢{=Y @J 2* s:7{GG#L%3tFU _ rFSO B469. µbi-K/t`n+]3/pH!شC^_ttƿIM<'ݞf\Z&hZFWzl>I$6oGНe2a+= ? ݪA.WjG>1(sE[yUO0lx݌,#Ik%1?5e r;XHu0 ȑkǢ;@iyZkdv^PșgN'mNS6k2XAKI!2P񵎍A >B ϝ!ЗHDܭ=<;)qlKpWGl_oT7ef~@fY*X^oWWPQR{H3˰4IԜ'ZVy0]Pn'4n9$/p-!`E QUc76ٚH&HqmZZ&%QKـҴ1C r{Zڙڃ]6ѩ|OT#. gЅx||0pK5V>jjYL(<}W*R9q`er_,'Yk\' [M |Rnӛc" 7TרZ#tOٽoD{S/D#8nr{X%繿Cy}|DuF,8}{=$*Ӿ=OI$zA\9DPv4i8Í:uv7 MlbCcƗOX6Ř\=KkOHdRbbxP"퓰K-6pijG(I$%ô$h!(4g0o8@6Q߁Ik4.X Jp><6V}7>o=m I>DUA#,;{e9H [!I`cA'\_XaJD_ǿe:oK9HF ڭO -b N"q:Oi7I>+)`$FvOvxzj4\9}5`δ<^8cJAGk27$4q^ӻuM& ;=)Idi]D#4U2! y8}+ٹI5G>L}.d#^>'Vw瓩B4'Ց"ueq6 ]-M[exSLM8 p ;UHlkQ5kYo kcf:UY7MBjjv\9Ν ?xְ}MMsp'p׊RPn?ޚq ք>ub䆓)hQQz`II*s{!x%Y A^;*J|~q|PGF.9AeXk MiFca?9G^vGOѽ/`1?(Wli[Khl~u,7<ShGH^oIyvsssܣj-^$ hd&QLx Xg칃 YC4 FM,vXGT~5_tlP gi`m@1JuVՂfWa-[s %@"D̀J@ aYO/:˜JcK"޽Qb0Tln7Yshվ Fg+IuVw_kW i|eD()7bw8VM/$Nƃ*继Z~G >WdL1!j5$5~Q2y;>^R8B$&9<&OJ֊LۻZ%gs܍|f53n*NU;q1 LJ{dQ@*t2n#7Bd3@M#e]ZxqT{q <+.bhs<mPM^Nh$dKؗݰ2_Ǵ,W6w!A vZ9Z9?]N]xT_7zf0Jio^Yᙀp3!f#G33QwTE҄NBE QxZQLVm2-I7B/fPqf0(ܜ B@΍vyBYγ]P|'pFlSÎHRgeRߐ}Ϲ]w2FRH*Fٌ̔w/瞯2ÀD^l.W92MuZ8H[/9D NaI?`bY.ei~OJx' $>/-;cvr/ Biu0|q7w,hIT~)+cYFY0la)X9`?{v.Ĵۋ3p}T2f09-E桋S;iuGgQ8):@| u&jg5& R2n:F>*"jotF&z0 @O/~BĒ9DgEeIxӯO-z>I%յҫl@D)zu} y9X*0ߠC&iliaF' pADnr@`\eo0ґP>Y vs,:[d܅̵x7,&󣕷yJ4:gj$3oTB{J]64zu< { |Dϒq6:&z#V˞ڜub]W!96_C6V{kO&= ҟƻNβ`cS*e o7: T텿55m(]sMɛ2 $P*li9'L=<]5D3Y(W>JP9;rJjt3lc))hWrq1`w8fH mk&X)OsQVίOh5}6%V[.(i!Aը~T,FVDs8i4}`m5?Z)ƶӋucZ{ăOx[Pϲ}mqy:g#R(|,0HrU6ՌV.S9 +B F;2jbq;܀MW"Sq~km ,ҰSR[¼KfnUB3L=#-V"eD$g{)pGgՆ4GY?c{g PPO$:#%<.N@Ώ 6SUN*EOSlFG&s_diSsԉ O_'JPUF}J@D-$A!%l o5\ﯤB-.̪턔p"A= @T"QDZv._K8h~LtuMU lE(\\'yZďQYκsңʞ :>ThWFɝ @a9qK'ʏK ӕL-vNw1ۮO],4-Fn!. B Ta,WM48%}7N[@^'?ujZXԈTv$d\Y efϙ<&+Lũow,]T|d™5)c)JQo#xqzsBC| Ht(iawGǛahci)#i2 ʠtH @W<9\qZx -[y(roM\{6e} E)R01;c.1ǯ٥3BgZvyX>10[f%IcleMD|pV́b#T\~¨o=8,裴!D(# qd~m:b$u7KwS޷-%1@2uN/ʲt)zk2Zr}HBD qjӔ ʧYc/F+׌٫cD@m<^VypP%h9 E%rc$bV]s5)Z8S;37(gTnNiE+IG)ogp(W ?kc4u -.&&SU7;c`lmղ6̀ceϹg V_Ssf0l&oS,[uYO~oVNw-S2qA՝ˀn#ݣ4`I Z_;~QXu,y=:-'*Ȗs _+H6gzi6pCs}F)|ӞʢLTAp" kvzWdT5%;?Lp`ŗMTNٹ߰x:`,zĦ> QE rYڼ6AS.d In&<)wir[PL|ijtZ gsnyѴI ;x-6XK^,n& 4ٗګAT_r3=AѢ-k0'9H-6Dѭ 菪~wGk/hU̱juuH G6ffβ=m%yxFi4mފoI=z_qT伩?K~sVoBF>  ϫ{ (ΨC5B~E (4^T\@u/CaѕONϳ{)[uUGFywS|GIw;{'D$n{J,άsS,X-Ì,GM/1^9wltrϊp>WKe\, 8,dEǓ}E 4Γti˜eCDPaJ<}^0 ‡i~j]];πvDFHb؃$ ^,Ïqn|h9F tE-M~fAEWm\>+KL#o \=S)z4W)v$GG!;<5[z|#ޮOŬޜ$8p&wL`gG`MauupE7Ykl 5{S5I*:*s  U ,}_2?"(inР8d&aSdDli y?:Yʹ,wiKگWCNq_5Q`ND]!^$eپkӛW6Ö ZZG;D(YG>|BJ|vѢ]? _|!ٚАKW('0w/)_g˵Nv^ vؔ$q|Z;Έ2*K4čTRM b vXDfZ<B"<4Dc lb{ ,,ڜ“}C],T8z}h0fP@պӴPqyiV*fLH$ N]Kv1Uh _gwzlj=?Z+6c_ĒyTЖ( g"}+,KJݐV⥸F͡7õG\$ `^X8At3hc`6Yh b*q@Aׇ?[XХs<ׁ VzV&2҄ka@YD}ɠBỄ`5="d /b=[켩RV wpkΩ'2f]>9!EhAWhjB؂6$\|vqM^tnjE7vHƌ qTP}=%t4lnW\6[Ck9]v!꼁Lϴ5z2'eu[(ZꧩE325唀SRv8j ]$ kSg S- J R ʣZ0TMlŷd$\/(gWA8:ӀDJeBwcУXJ G2J>-e:+v vuR!-)lPHgb94;,f-.+Նqvy)V65[$V8Mz-!$E LW_bW6R#;5gƥ׍Zr&r) l@BY'TT[{}PuD!Uy"\毆%Sҷiߩ$^8-^+fʊf} Y UJiTT*P}0$[R,cWU\A\{6nި5|RA*m/ }SZ4_4 za6~j6Iewun꺴 '@t4~qHe4/ e̍:[Q*?2X7|`GYW]F e7X d ;9$Bbso&9Xt9xx&K[+Z\bݪ7L&:}пe.("yL:Oda!LB*ΙB_9w[=bn0ahG(ȶ{w35G_v([Y}k\" |)n!FD|M1VWZY9o߰n}&8UyWbL cR3aeAH_VڰAH 4[s1snv]a]IR3dž$3ZׅSoUĘ>MNHJd@D PmoI*dw7V1]X̋Vu-EuyCXZ %0mRI>Ƒnl#UXvз {VUWt`Ȯ٢Wo@fk776~qD\5F4IOਛ:},CNXY]RYZ>>A*@Zkqw~TZ'Eoie|n^=k{fX5I:V¸K[geoY3Ӡ[y/N[Ǥ23~t(`m%mf|NV@A]hsW?0HyPh\ܥD\t:BV&| c ] { '9 2A϶Va }2YHHW}YXv: nޑ~w?9-jx{ Q2W}.ht]}ΦW8\0>;e'QEITs^=n3T^E[kj=sq )D큪;z EԐ=~OzOJaےb 5O !ꃙK'TLpd|}9RN\k1av0+Ja:;EW,qyߖQSW7@ʧuhqm;g#@!T_Sщ'hxW.ݰnI$˂QB{`Oo 0Xɣ^avxwzt1LH!wt.J!(tf=s:#5QҧbnLE*oV;`a7 ?4ރB8-N׸yu:+eQ`ryx ܦaR3Hf+kXg03AI,H0IS^"Γv?.0y6yH&Te*i3OGtN7<6A:˒6u^ I,R^X_s8@-ŀ(6yu:Ym *u8\:(t<.>Tm^Ƨl>\)A:8&ECd_2e#BHE__ʶPR -?1cr:O Mim,S/o -Bvh#롇-_z@(5-d#j%ˮ$z޵$+If5k6$> #_[t5.h E?v(k#)sFZj>.>'`('jl=)7!י; fNR&{[KmpXq(}Q$ ň"-CDF24TmFF(Ktyef?:iH*'JBwp~0A(C˭v(XT (N[}P 񃍹Wsibrۅ1`hNN \c_L;iRe4?r`o8GF0"^ ͻՑc|Q{?RVB>{k#[5/L{[ ƴphw0,~tSRﹳ|]v_y+=W<2=oe5t5[ާYE]oJժH A l;DL]EX`2%1O*Rq'FCeKCx{0 HÒ;FzC*7t!)#RHDžG+ld_:֟AQ]1KT"L,lL"#(6 So&)wVESQ\sa phY&}PMč0[廪 dT]{:qY"'Ԡ@򉪟8tcxo 6X@]">OԺ5Fljkged=(zrۯԛ^1#Lsم[K8@+|;5>ZNnTeؐrND~w;VO,O&'C`:6\ Uya@8U^> 4:;,&{5;f!U]$a746a yP+zʊEQ=Z|I^JBGyUN0t@3:ܫ%5Jg3}?/_hz+&`Yxо,KU@7R)oU*a}]U6xvx)LQ)I? /iXHzND@o h0 L6zf˶U. JG! ޳o_t:8 i l)툧xD6}9Iۄ¤? jrl}WL6ėSCX8oxs%h'e9k +0).}W5N8%v?vBRk5 9tQ/2vN<_B׉ KOo*l!'"Z4X>CN4TPrq ~Bɕh*tZ,_N۹VL*)s!Зv.f3o`FdP٦2kzLZAdk(O=HuB!ǘ*yFf'Z1[[h$D4nܷ7 F-Xz:kĂMxj u qE5jZڦE&=F9H$sai燏>pc3 ^ʨs1SJg.f7;9m֭qrnXl ɖ=_J\ǩ­@/ְT<">^"G$TKYL1N8uTOfV}rUl2Jދs /p߅ud`CxAܸf;?{%0꫔פwdTHVS8aL|h4]o}_4k{|,#ĩ U|-6ZA-/u|f0ͭ* $%zޖ.˓Ƌ֧ 1R+d>!@M*{բ\}y#yVT9422'Ga +vWo{z1Ĵyp~ݢ[Jc#PjLͷXu9\^Hҁ-ѶfyO & z?GE}E 阍Qj~d g%Hi{&9 Ez =!@ ]6\].uIqP亓'D2KK wc O猈аi{qh6o#5t:g3tOM~ {];&1?/x>^.昭wjhY^Z[УSpkGNQS晓FJsh{*WƝ4fݛT"E+ S _6~AZ+Dsw-"^C|PkTzuێ׷5$<.q%yr.^I^_`mWm_#+aQ=_cxiA?7[7zZAE*GOgU,q7AH#TjF8ꯕ% 4a(mkzگ$Ջ i0؀ttwgŋj7G<u:_}ȝ-*301ɜTxDuXk0 Cu./xx7Y~Bv'p<ٴB(V3C a 9NL~ҳ=E@A Iգ&G֮r? [+j_msNٛ:to{>h)ȕ Ҷ#|eߊ]osuYh "^ۃ\Shg"2glϊ~/BH7ZF-D]iw<4_;1b8d2CIkZ|W Yk5v"$ 8*}u7sۄ[W\E*FC&pV?k`DkQW[>ur,`a/d2]܊M@.]R(o-ʉk)o'xÑ,qU$0FD%JAoCfRvݏ\JA!O vL Z?@qGj)| 2SlOzIn4^7~S| I؏g6{pϘ?M.[ˈ,-A?my \˶$蘯uPY.ljٓCf]8mcHPEMFx xQL *&Rn's`LCA7|: ;5:8h6YGv=PsWMyn-)/% R~Z(yHmLv@\єBUJjzL}òbuUu t˞MRu.H=51F0D9QB0 223rdE"qظlCMOMhL0k{VtMv* H?0m(:3n}K*$pe/&\t1Ah.onۈ`՟銚ʓìSpBv3ӈ_RK\ QjQ\U=nyhB1&,ٜpZ DzadHڇ.H5hѾѯ9,V[TUKψ0sYpM@Tw`мԠ6T$g*pJtDK@"S6L8pXQMx񅲜ϋdF0 \B:-{Ef+4pS7T:gϲ: m9t5L @"!Kzl) YTA(M%=6P#NhsYVpsm`ssJӢuJua,LPq 2u|jOsQP0d?x辟Hx i9 \Ѝ*AD 1ƄL`C1ZORjhͼ|y9餚۵ LuL%~+a!;Rww!ftƅғ,SvHeғ/:YӬL HWGK[\w4r+Ho 6ر2seCZgPC=yH8ӮWa6P{|&\ȍ_ۭ#M50zdoժ߹P#xCK\(?,#")!Vp"jig+@˔H $4MI!) kOlj˨^=Mwg j_v{GESnD wȭÃ@) TGcpǴ?5%_G#jת+ҭp*9A͑h}2+j'. \O˛iͼTMͲZA ߅lF < $ B Qk`er\qV$ a+ aF /1PW`~k1ov2'r[]:V:/gLhCekG;Ua|Ug I'wda[&FBd>+X +۷D0='=qt*ܰY4{?mi ngs7rM{;;l˨ Kf\6pXJL.,ˁT}7T"k%oq°OL̑{XJW%g RePCMZ_.v/Ðf&>h[#]9'L_C#'\Py(q U=D1p ^d2fC}K[Y!tJgP"dž;(@@BQ:4ҵr1:6J4 gb91Y) +o {1+ M.p!7ms9#zQZ%$m4C ᓴ^YnV.Ag Ԡ4_F< /*T'exG8myوuNF' A+Ѕ$*@ 쎺B4C:k̸5u)3Q>\:Sғ65 4YT]>YE  t5$uCa28/hvgٴtvD[7UVPE/($8* 8Zesyv;p'!G3#PY6YcDWFp{2p~~qb`ȊHA 'ƍ%vo_G~H|x˨V fԙ-kp  v@`c3 'o&_d|~K9D\Az,;$@{Mۨ L x1=),OJґ)"Yd+"Vp_$Ӽ,m| .4,'uK)`QpGh.9L5+o7?V 3kx8uVlWͣ@}lʏ^ZSNՖC -@-:C.$nՆCQltU~iOrEXszJe!+֫11k:oMs=bpv^X'_-z)'dܺ3̧s lx6\h87Q:r<> }׹UJ)4X4>Ró1(4fKZہ%6y"jqmn߳=mhǑ\aRfFmZl>=n _mM4*f2]1Wj<8l2,86*IU7>C_s݅(wo~q?2I]T f5E-ݩ ,7݄p`GONQܯ:girPbmu vD;`FR(dJ*9p>XFpG ^&&2Gc Eohv#nlB[HyLPԻX/ d[ S Mn/J2}qHZ5PAB/?''s'R5uT_?9ѺZ7Mnj'C|nſOxDpBxo],P{ _+nʱhZ 댄+ȢǃY PtgͮDA. ey}K*D՚qA40/$65%T]]Bd=a)ᢴY:=, ۧZ/$DJEhj}/i3bof g #;5y-0 -{. qV] LFh%3( 57~YRS)U\8R/6Gh.XsG>=ρ;0.r@m{ZS&6f߸٦Dr;<ڒHj/d\k6Y?r@d91 $&rUKM$[ԚQryMȠE9ŀ 'C3%GJ V^\==:{SIsFd@j ?δ9s& |F0]؂wc|v:>U+yi O{PR&Hx{RuTA uZ˵XzXZGYw0^7P#RHGy]{]e cjzy+bI@BOU Ь" ?2a]6Qmdkۼ'c)_Ahi3->,羳I#'*)UpeWkD)Ň-:IAnĝ-d!~|p˕dSBrIJ [H-A_[o{RNKiܺ ?=5C|.&0+8x7VTb;pɌ(vB1nF֨xKu^bG2/+B|yW~qz@Ǘ+6~eb:WN2_^Q$(x͉o2D!ߥ%cw=(r%,72Y9%0*uHHV fnX~K/H?%!At]@ǵ)p$]u@)uqjdd&N"\^~@nVjɏ+ JO@H,:aPws]w@-Lz 8p/d5JǞA6As OC#OunGrT$:\1]~ {f9Tn&2fUfKMZ4ɠQ9vBuɝsxxiYQ^ 4JJ*]hn<~ <&(#pS^^p]̬mI[`n-#_n`jT<߾JX> 7[ Ƶ<猇FVv֧'Xi89,[cȶjmKX#'ŸBAjNS&.HưCS}W rY^3ABY4c:jYwh#n1;o=B6k@=h<$>| N"7,C,NXIZA^BMS wH6A.*"0ׇ,PzqӴ%*W&vص#gē'f*dQSNٿi)`qK~fjY+9h걜{ Kr O  7L}f+с$„R;`!ME IMF)i?8 XƦ-a$Kod(HxE;8aB.,)Ĩ(@N@ݾ'7+ch y5LYWxbւ@&Z# 䭇O Oϣ)Q7z<%)+ަI)FNB*2r?6zs4)>2{$ɏh]m1ا:6n)Vp+0T`0#{𘙥i8) EN}%\W_l 6r6Hẵ= XǗAh>iEH.U vF ye: |ίG x>&0>%Eу?Hk F\h#M= W7L̽wM` )(4\ ƫ4B!Hl=OVۤY ^v˫CS["Or~5_ gZ02hs-؍s8n\^̌vNZ~dΒ/sbH(ú:W5ˑ֖ JG#vAFYF #k& iRGQӮ.gqnwxjʑgQ ]^Ytpn׸J723,U7cOA"mEHNVzWMicEƣhĆ`40LJ<(ts_:FzZ: 1D?|lFM MZSy,UAb bc&.ESw72V%Cjǰ'u^oB7d9p/6<<A5v+2ErM/W+p+KiL‘1^m"Cy(W}P $b}MF=TrtnF^Ul6q)_,\(/>I2 R-qnl%YE%:3=ӵ">%U󲚜*0lSy5v7=W''W8jеSA'Ayań#m8eZ0+v١%!-=vOL@\n.;c6dNnf#f,!M/eCKSCS"䳿Rȧ4,fR/$;9ֺ"D9z0_V 8*x6x>eSl݊s|yEYb 32eÞɥO0%0{f8I8oH3.,Y&O`W*Ǹ/dH }'2R ^nKcIJ~`+J'-$T51ە;N3||Ww)[+`1=ys IЧ}*2|i0%bϊG%mk6=p:?!$y.$ 35[%&f,I4avᒊ¶}=#y#ؙ>VFVԀ ȸ+Mx5fV|44< r1{{ӵ|Y3+S܌IQc'+7,c%UrN6Δχx3Ϛ7izHUy;$NeM (++I[6Zw/B/|6Bz1XEQ`. ̻ۉ*~h[YUf_ݑr7r3REfl( ijhUբ]xsi,_l- &Pk|8U~]"/&QA&r- )sT>%G"o|Intdgᓟ3<1VS>~)IN6K6\$51e*dF' A-"94+0zn{5BK e)p#])WjL x=AZ8aaniݧ_fVLzkE;|EO5?RLu4@#^N4}B*#LOaAjLIg[qfJ1M&n.'ft2W;Z Yj&p2r@(7&Z T&K\2xƂɧVϑ^FGwݞm-կۧ !G$T%peצ@πؾ{>*ʥqv|z"`Avb_7^A&P}DbV&S9sNÙo9Uy0o*~!A|9;b솧 [R$>Uے3;2:J'ƴ\`B>:1(ؚ> OW/桢d5FL"p$&ٯ2﹢ GuM}1jhwzGE:Ne?ơ]ŔL'ͻ>)XH}"ŵRvi/ 1*m{ l`Gƭ]!jL-%@ؤ :K]>:w\] [zLI5ߒ"f2L0:?iEORxIw #pO_Ef|UT欟ȍuǙ6DH< @VGAu9 LƆsE ])(zuo&="Uʲ*/>gQ*jDES68Wt2DacI~%)P~!mXJgXg太RFM̷Nmbm7DH"M}:GK#``@YVF2L,WːF1} - OvUl%m(y u0eASqUjwge4q=QZ $79 9={'h4Y. bǻhx WflLJHK6u c c+(`Mn]\~m1w|1Dj'ȯw&~OEWz5ff3*BM|>T D%)3)ǂEz=*Lr=QdDf(}B?;EMU2HzCAE VU|wwZӦǫMeS//CcZCOJ^cbڜNk=|$+ y@xH jIRKI%kȏ2[Lc "ݒ6@dO WFec|uns$[ ;!4XH.R더WM/n]ϛݫ@CB/2r"zj 4G"wuo[ZNY.mrpg`+#}>X\eyH6=9Ke,x-L"f%7Q!\ l .$_ ضϷ`_']^bo$LOf 2-r0ZԱptYJG|hZ&e,裩 ly8<ۉ`#<_N=:rd ~m" 2 g솟؄G+qx䊈bPjXLm5M=Xm(r}zXeֹ ( -Ce cc}F <;B, Y/1W}/]Anky.FG{KcGLP v{ 绨rxz87tAQFbfmoj~XT 19:h[|g$Ab8,U[so!(s^3('5^]OX澖*ګd8XgV\ sSjOEs_Ȥ#\z2Roq09vjе2r5۾ΕLVc ope8SwLQZ\:w ~-/jK"YAgRgT0\}%Q[ x+q PcЦtF2T5X`gd6Di8/xV τ@(S>Ed .LC]sG4oDMٝ5L0MJA ҇Y$6-Gy,B VޓjNK?9'7VkdIj/֊opJţ8*|sz|Ӊ(Id} +Hs%ekr( c5U I謈*h›9M6 /dZMڧRz|uޚ{[V}4ia Zk ceIWA! Pi>mUD+xSdJ0d#S0Yj*Cg[BTt3d]V ZZ;'B7>8 O>: \iYEA$nXʕF!D~f 9MMipP!Jh9x c "g U5\{^@YŹǝ. b xnh)tgoHծ&Z{J7d>}ۯbP Xڝ`HVA=Q5q=/W-]qȼ[ q'ӐHF1#y8Q o:shXQef4ټ 3^ StbŁ|ASRndS~H@vݟ^5_lX=C`O#lQ[Blkot:!Y#HrmvIa.3p֍G]BC g1Q*4#a` ZUFI'Zr2X eu`[u3_w9:;,^. rXCWobKѢ;J[TH)s"h  *uD.k$*bAߣZquŒC *GḔZӝje&CtwAbIb=Ayռ XupX糷XۯmІm7EI|z6 UoxMiM>xn EǤRU^Q*wYMk.A( 51Z#h1Pv]Q P&'M-̧\ 1/7mDb)P'c#}X$8RA޴zQ1?ÑFAC_Pb}Rbqr~ ȋaE1E+fc7S3V9ճ;+9%_` D uXM l7C?\zOl*&)n;0S64So=/ei#GAHe 96]+]v)vs*N$Fq2,6`@9-80p¦0'CMzb2e65-'eMc MGg7VF!fB/a26'G"xR1S]o[/ 3R'OKx[gKj !&0уm#lv7<$\^‘ޡzldJhR\"zrVM7F<܀uAf@K!N0vc,KsN#eomGɟgbG$ŮaIz6ZQ#ɝA"df|b& _eF`"d4B#qA ζ~?Q}De&%/&g$('9cQhMz;F(SQ)#7] St 6۪Map"X5IRW  LdPԫdSt/awojL<`+9p֩8 9zXXR)ɯi7m8ԄA)`pXl=p:38[_lOݮIEte PMM?[]rZq몁'Ӹ[Ⱘf0UھǺѤL kAfL/[sJ0nwe N@y3퀐;X0U? G3 ʧ  Kt˝IZ(|T`f(oQ͸PJ!eN"MAg M/{/bメŦztck.˳56[Kz ib29֨Nk49[*{ D:je>ʝPtgGN}:{,M6]LNa[~ DDr Vկ1ki,' }+ !,$ښéQen[6U 1H]4IFYkWϰ D%pB +z`Sh2R,p4VY;.@ <|#~6ԚHG_yU 8?ڸwT G=g",(\%$dU|smjWҕu 1~ѳ".UWG7#Ϯ A(ҞҤn{e]JyAmm!o01HIpF$*`HpznVDOJ:qxU4#Rv X >oJMw/ʨ@uMLzNżgl?Xdt?9Mx'უ6]R:d2bZ*fJJ =Sp؛Af[EvtoE;}s s/Tn<5' xz۫-0V}^dWM @\MAoV~OAP jhϮ*J`iš<ˆ%ڤ06*ܦ{\1NfZ )kl  ;)-c>HcF5T$RyYIH+&Ԣ^…k&ćTo8ķjkF{ם{RoJ i-"8fɵp]dt H;KJ|0E@?T3vv33M4#*v7t!*KOst*Aumܲ9S8~\d?xATx:,dbN)<8C6siq21'e]Kv? 0*]J.ևdcP-AzPe֙ Jh$o &^\Q;B֣y@.;k xS~DkV$`1I_^C#ǩ 1T^w Xw a[xe6KMT´s N(Ω}2q=BQzYH1̾h}G\^!4_ Tf9>&?'S\uP8hIެ-F7yqʦOocSdk-dcOy~-d"XjɴP`q 8@e\.>"2'ٜGۓ, 1Zi9 сЍϜm rgxOm#Ȟ|n7crg{#D@q~_M4N(+^e ,.$?1@C=ӎtG38cAӶ$;)q6*P5Νƙs,1&.'X_#rGmVST<*Ct^a<#UM.L5ǒPWtd TBGݹ9-h0zLrkJ~IUGL2OW"$4 * -%߀>SI46&IC_M#:U05ZIPq#}l\ ܮVXjXH~&[^A3Li)D*c+2GAqM҃[/2~EQu~3~Sd0S;V_G ZAZթXeS[pR kZeGkVb_zKt*d Gdd/ikv%Iw͎RDp‡C#8PGĄyx1ʝhxۯs6؇*L=}):fq^OLZy -}s$խzR4zCVk%z&t:w\@`4"xrEhY*,TeZ#ca-5besbZaֳ%]b͸Iyj)I~.s/GW mm"}dPM%avk՚U) 4`8p-Gͣ']ރ2oEYL:dP-v>Ar6'|yBEqB~6VCv 'YڞN淡Ժ#EH*!0cSb~:M[1n$7EwGc bi,ʳ^UztVbz" +P,Raz๺-xD8GCVC18ʱKl#*캜#lx@oH% BE'p/Xs22* 4ȻȊ$ IHǦg'Υ*j U;BA1:,!5fVPB!k1hv| GQ(vNE }t 3n3gl#Ĩ9q~} v9vnv ,ބ HhDH'MT; d%HVUShk(n d)]Vf곜RbqxFVgl<'Lџl< ͆D`]2ZZ[>^[Z;_A_~Nbd9aYR pCPXZu?cIh Kء㡓Feޜ7-@0 UlǮ59ُl뮿ǝY5<7Ϥs {+N9FN!HYBsZ4l~sap5#hX舴 ic zt^GSd;14(DxVej&7:uBy0Xv!Qo4 z.s|ڧ!a^Ug'j{n״`ԩ^d#2.sQy!Zٙ>3p:4XD2ZqS0}ṞNy a \D5=&Ξ6ixͯ2ޫ, ֤- Mkl}Vw=S"}o˿fHSau /BFWV4cTeyZv?URf(\`ubr$5bqV|Ap^|PXv=Nɣ{^sfYv@m{#N]9Y5(E'Q}(&`Ʃ l_XCe,s[eNV#&[~%1ےpv_6# = d8}H-Rbt`SoO>g}9PXS0o@&s8k4̞] խpE,}941J0 |$H8IJ|6Co9 R٪:U $xFGôLqބ#h"t_Dh5KF4PCZDFwRZE1:< &ׇOݱf-E4<l+'5HPq|uN1Y[ȃ=˶-2+ꓜq&c/ͦ-t< :i(Hg,{>F*e,tmԴ2 ?(zHgP+X1-7ȉp]:HS`v"1.tSF'y PL8j?~|erԖ5:?|H^((rNs 4Lei qR4A} */3?D% pOlcR$1+u|nLDm~^4@+VʧW㭗yuEZH"!LmS7ܴ( P^ 7xN4 ƷY/ss̜jEY/*'*i Bz At\8i<(6r<\=$KCv2pCQmܶ7iֵMkT>JN;;'5@14p3Cݚ6n,εg­g&|{0m64p;dfR9_9Λ q}|bq)AIpjށLV@BA`RG$rNmoW4*WdkիJ jQ0"hyїu/0ͣ\!n-2Ts24;4PdGd< R{v\գ K%G,?pfBlH;hղi56k]uJpSk>&x5#eg$ڀh2f- y| Цf>9}Ȋv1Kc2rd?oU1!0변sCS jY|GESYCǫP5DQMOt9XűG'R>L|yt9Gu+-]\RWTJw*9pBk#5"NqT)8Up HD>H+1H)\5d4=r8vſ°Ld0<#(n^E qe:w+EgR@LDTETv,vD0[w_.imz%Mpb'Sx .sy&c1(q-tFqP.j&Aq6b+: 8s[?0 ;LL:`ie?w(*JjSC8@c'Xt_)> Jף l_2Z-~NewlXWX(Ѳ [Kh:C*~"]@Q ۥydT" UƑ-Xwp|H!pqzP9U2i2U{19@uvHKx[׍03fQD1vwaSfx=MGQ b"t E.0 5 Q4}apAK2V8ghPb̤G{P7AˮjT{lM`?Ɯ݋qӬqD{K.+T.AR7e4 5\'LyaG?DHs=s۵u461Քf /۪uCOV3nI-u U|l(EZ>!hN -L"/MFDO^AYa}baa4|g7uĎuӄ @1n ʀBFr:i?5c", ۩rlw'Յ.R _FjL_u@JrR?fDf&0 Q h@dTjSc :- 8:BDELP-oVJ)޴f+4&(1zE|5^Ky<gSU R+ov5YT|ȡMc{S Heϰ҃rWǯ:[E 0%ؤn'"6/1O^rϐdlۨ-vh xfe+:i?xCXi銧Glf'pdZ'qؖC|޴IM @hq ,JSZS>iS\EF])Z ʈUAD*t  xN[Q5d,add[._=͏CB)=~cw+ vl ˬ~`L+`TH"VFȈi:9Bnuu2a;Gu@K |2;e=p7E0b z'ws^qZ!+yFbے c`:.,sfo[1"}feeG?Ag֠&9WIɋuf0X@Y`5[fD}V#}ͻB. 4Ӭs}؋6Qsl4HGk[ʢZj$xԛ1M[DG:"$_QKDqX鸲&:÷>uy'K>3"b4-ģ1^dUe@H]9LJ>$G ҘC!s DR5lHIsp-ږxɫ! XQ[9AA> }JY^jpm,Ʃ0CLL깶x `tN CYہ1y}s P^iۯlк ץcd݄N#=ų3{mHOﮋG-Oh/rwj,1dnPA s%/:ӣ]aS$ gڳ ̶IRU+5I\d(ǻ*xhUr])\d ѕ/m(tMI WvCg>x_d|Ŗ<2[e[\yGN?/6_$8 3$Yw^y^тT 7](ZϩjG]wNk⦋Q3ï8.YbJh+-<|<hx p!M0Y!>|d;||%<ҷOF$ ^<I 4Ԇ!"?3D_~Dv46Z)Z==?NhrKt܎7D]|а ҩ#_Z_#x4ӬC̲/E;u)b:G}.ɛ:=XSUFIS$:46/B0@,0q1H܈~XvDc^lݔ'ZSE3@%j^+/%b`mG)$2ipͅ7.cE! Crd?HKu63ۣ(: P@h_ӆT.vR=?9M#)!7{Tj R3N< \ZS KIY{a8ٰ[xGBkmBp&^YHY"?,wi ؗdY 24Ϭ2M^6,=wRK!֙\; m$\5+s͟#8>wz48O*M9yxweBP2,UPrƄ1׺"hylu_P^!QIl@w2F``ϭ'q:-)2]1)|eb% Q:'  liI@ud>q] `ix[[Mm4.EԹW$]Fg}cJ/GGSkOW\toDLQngK;|2pX<&w.08.! dI~R/u3͖`jWS3⦵Jfv/.6Ilt| phΜOقGB]ؾx=-(<["_[y( ^1!H)NP*" KW{װ7uihVM 4B*7dqiP e&pQx0VZ<A(0[#Ц'62&͆Y2hXri/Skl`ԒH%%[жyfzZN1݇]"`Еc. 8yS$8*0ڭ@6#l+"'{k"8Zt*Y:72h~ q]Bn8v N휵Qk%ܰh9|eöϚr٠HH0tr ^cCI {ψK=)Pd b HnDr5YT?\_.!z&S/Uzo ̖,v'!fQ~ۇC|X!ـcN tK\*63Br1r%CW{?0wx&6Y-Bj4t' =w ٶM"ů{CR]Pu'FŽ*ّx* d@x(/WNZVWkxGx$9\cvZRř`Ĵ54HS=o}6F554ȥwa tASҮzTX]>@Z75!d:!f^ 2dP9e+Ywwlʢc2)/0K4fװAvf T$żzk͞s*ң eט2 G~2jJo>>9Վ;%W=jDM x̳-| gry@TB/;N݄#l| =GYnck?&aPNoRN넙4AJPћ VF`ڃm*;lD@XG,.҄+vVS:nsmGχ/N [``L "pqG7n' M A"Н̲vZʩG[D9-Ы|[h. B|z&no.u4RydFRc}g} ).PR/㝕 {ԆE Ozf3(73't"Џ82&jm@Jo59r#bӦ*\r!ۻ|A͡~9rG6n {?K6n!D@yfdZ5VE=Xt+;O@yRV d}:hHIl OZgqLe[7Fj4y][ ͓1u}fO(_ ~* 0v Nt Bm1SZ(WK }c'5 `uĔt1 5.ԬL |nu᝶t'+mH[R|EPKP@NI^us0؞BXp<}/+&Of>1lNkG77ィ^(n5sL-%/[!6Y<&Wb@yMM0#9;k;;>EFjDk?VX4/)H<" ( ƕJB:z= 3_f0Mg&=mq[k86T\-GbమJՀz O|ybۖarhmlC,x]oE &㖈K2Ó>NEZuPFD@w/`>q˶Ճ@!?E^SHh'_tx&P /N3Pt~V:P4qckk=q%U c-;| G-ȑ94+v׋_7}̍ ߂5oRh=XԞ2/wYmvjx:;(qɌL44G5I9X2IvU{gbݠs0!a͝=ƨ@6D@08C#AQh…0]PxEtgV@=Va\KB{LmC_)vTK!u!("u& KFl%m填3M%>wx30r}t8XRAV0욻 @4G+?yrI:_P\[Sf%5n`B9pwc~&D.Si؁Q f ~B9G+%ٲXhRVjٳT%57wOW ]r\3^npAxݎm?)/Šupw;p[Frؘ®txAlW\F}2.&e'[#:B0Qx"gj Һ5%?7֣~ x gx ocD&3u;Y QюU>qyryDJs7N*qT$QM_aޛ6MO)%`CFIpl9 Sa;T;o泪n1/rmߣzC9>>:@+?=m(n.rѺ -і#p\3,Mڒ1V=?1ܦhmhr>f. E"%t}!ڬI{ Eɀͭ!; l@W" " 'NJݨZBXْ2T"+"fv K79aӣsj eQ`(.g_ u"gFbJ./M l:M9 pj 4R%k›\s.x-=TlGĭY"AcleC [3sc }6Á/ R$lyON{ )ǏX,Z`IBqB};3:"#m2:7Nd+?}T /4S6w^y. "Z;$ qH?BY~+51: %%t$wB pXn!d$J|Qr@;MsacxTd ,AaYFe=}vSZsp'Z `сvςTCLoxf_7+3Q-1TUpQ jJ8G_HwfeYmS' ^礘 ۚR@m0frdipBYB`Hh;(_1 g,%CMYjvoAIaxot4AVxx~/t-5i .Z!x&9c /:>nʅF/qh8^,m2WAQTX[%(`_f;0)'Y0y05~Xh`1wj -AWXEݤy##FGn, tpΣ䘭9f2-zwJڻv=-!8xS 3HJ-iD% |Q u  )ęrY֔PllVZD1j u_u{7ƺn7i=| ȃf*.%!Yh@s:e7Z"EV0ūNl}xd̋kL8F EiٰZUKBG17J\]'F5>8fE> ܃BOQ2tSz Ošsҕەdf~OFEt)؅L+hϻѽ<F5_/'"}O"! W"kcַ449ox0'~3bvxL׃Tpb~Y 0>Փ2/bP4&)ݦJ:2I孭%nyz.Mk,wmnKdq]I^%ZGsroW/kRgZ%cg1pfvIdnY=`ܞ$SoHQ J08zfU AJPa}cb7PqFBO/ܟ0n r:`*ъ-,EBV)=j_=q!"ǁ%TnC3XKiJt[ǯ/J(ɶڞk'Qka51ő(J"G8 [ƾNgS^z%*cKN_Ye},]lIƏKu3k8I =a)08fvDyFv8hM啈b6[ZAnUR>o !ygȰso,Hm#ߎ: c4e6:4flOb^oV!?D[OOG3܊ߛ q7ҩ4UCPG SDv ZmAjFzeahXyūF:,t/|- \ؔؖI80A!F&H8q=%&"t0\82װ!ITκZTǩ0vU`=|w Mf&K@5!QV#oDK[GWw;~6=\ GX?`b ^jP~P_|* md ~]ey'Z֨fwX}@6_"|5)a4Cbcw!h^G4ƒOcƎ`^Mvb ^|^wKw|qԠij1R{oZvn^t?>΢S!iDyA YeJo v|Mc^sndSalT>z,%5he$a@Jح_#(xն WODC4J#oPmfB̂NI=Y/v'gX\Bpw'?eG9-fp6p^ΗUiL5ښȈf&G`!u;6&*zXʘuF*ZxQu fwmE'p\q)oN4fCzoA:{,h̗ZF~r'2 ##!|ؿoAHҵ1Y\H3(]|^떪+_EG\6 nm_rRJ.>ځΡJ1U]v?T(T%ԖẖUT2 S%K_NWق@&2mb㭖LML'HԠ6tu}ĽL7J/qpi'`|yc46,kTL .~LO0R'ɂ.1~~=ѧ{̋ülYbj?.BE[E> ģ~+Y0pA!p G&dT5aER av{&)jSH@@o#uC@"9iu _ڱ7 Oyx3e_6$O߲oƩȶό&"cȦ&Bc˫%3<(' u1f5DYCٲAwsZIr~7TBy$yv94gqk>kP;1:8XSA?(x$"(zlG(p P\KO\[)[COt#m45;TH a&G##~̗AKP+6`ޯ )Ĕb-lpG1>\N] h@)zgNU˽5x¶ߺL#O{Һ{bfPjUM;v}sx<S n'BR eolbk@֊*q~!3MJKxqQ+kyJqY4 6a~"whΗ{ œS[HO:dM"hޏ%JPaV IIBFɘ7e9((KA]m=Yφ7=L?C䆢p+JUWv}Xǻܳ6M? Lmbڼ㔄ĕHf qhwx)!8kW0=./oNNY^zc YZ*[*TwӘ VMۘfj1`/*8 ^l]kfڍ<'b5ǥUAX1C~0A'Wic#kfի]#Ќ(4rJi83C?ˌMJc[)c/KNdFϹanԑD2?OSFVo.UQlw9D>v#/l62<,R_f\X/`7ԷZs;@Vsy=UQ*Ӛ4YKY37/X> %&UK M`O ?W }TNyAyUy/a5|e! Jݹ\[Q~~D=r[`W珠`~RcGg:WyƼRhKK}?X3B0: $*DQ* !g*؁xt!7K )'8}U1e3R ZH.`P/x(ѥpnaa"E<ߠ؟3 AQec}93^&ټub\?eEyV-hxǶ'3`_nQյkHb8_^ޭ31m@Zr!a qgĬ ?s;dHM蹝!uqj'0pPUgd(JtjY#מs @#$SNԼB'1L Q;WBlwD&vCF. V1I&;Jƾ =}ֽ j_|p7be/10lIbU4q|EiɈi`[ࢫM΅3TFTtszFTQꭴ'qݤ9ž(Q' Ԓ3Sԏ쟈b ᷇@#Tv:*!^2LX\qcC9?hV~dW\9RGK3fE+Ѣ0oG?z #/x˼?t`)zo' AZvcۑT__KgWr*?^.iϱԹ#)2tlsn*[V1\;j*֕||sC^%\5!D"Ϊn EfFy.b|ˆ^"o!AZj-qwbZkHwljfwuېLRw*Ω"qp cD"{iDZ(jzj^IH7 ^; C\8hӂ:Pަu̥@ޤ _[q7ŕQY&[qdi}UP׿puFbNBY[ LW@yi :c:]SV bQt0 2ݎ8g}H 4Dh ryZ.ǎ  D98Bj Czޤ:X/ S3E][ƈfp8$wξsj٢\m@ LA \c E pu`ЧzwZg{Xe*E*{9Ȅr܎R|wyN}iIP=g*Q $s8)?*!OlL0C:ڛ\lP·ur PNa]VkD6L |Bi.p ?X|s fojDer).T73FbCYar_^=g,Z/2 Qϥ.%n ' m/hYј;4ǔVAc@KCω<kA˱{ѹLܡi5@t鿥Za#?} 80н9zF,jUV,SNNgCNp~=:oU/ QTAk&C! &Tˈiűb[G FZiG\5 uTزM1 Vj6(l)Ut@1,,NVДROI7&np"e9u%c0'e?=DFfpA wؖȺ^~^~ciRN떜m5 b,`~B#~-[`g}Q0{ϐtN:}UDPdMs$]Wteo=0Wl>mk@ID&Z&c]qk#åV?WPl@@j8D#SD7(FbkY.ugEPuL ﲪxɪ^VU5?=9rJ,_OiH6 /,jWSD/jdժ;A,*ػ*U`Lt3SҦzv)d1)ThtPfLA,S+ "gAfJUʠfy[ia>R w&Xf7y-IM81f܋ƽ!Z=;:n )nAgM nfB44NEK3LUCzv^z7J-t5|~OS$˕b 6}^;H_gtP&xT9vTbPEwTtMB[lb|Batg82u[nF <"ǷDEƸ_&C^LnqeJ;@p1ei>FVut#2>#4{[ , 3qb2riLrۇ/vd9\&hcwo~B|._O_(vh@3G1E޹Ms=rTS8 ]/CY& 㶅 R7Ͻ&#]o=iO -\EϘL`Χ`So"XC KO7%SI|AKZ<1;0'N̏%ӗ!Z2`x(EC]S_Qxo鄀#ͽO=9} jK2Vƿ]  |"̘+Yg`לϳI\!Jԗ5~B@Ma<*@Xh͟џ> W/@7c]c nJm{s'{#NvIN2#:v-aDTD \deVWS/1Z_F{=")4x\昮_Vj5ME4W_LǶG앧twGom +.G>dhHθ@./ Y|DUᥫ.Z-C_$\_I34*o@ $NHW=Z Т\pot ӹ w*DTe)vQܛwH/eb_MD/>NLqX/DS|PpV(}W$L Oܧ-5%aCAR5dGM{N=us(U>aa=cz*oqw@"&JtNG;W@S=O3ggQmxf,U`(c*Z]4l:@)?@<Znˡ24%:aQY'  x д=Mf?Q=~N 6/B;a%?S=> pXZ^L#*Yo $B*WS>_4AdK HOr6T7M {VjQ b,E"X}DFWRAYٝ%!җqע7@FK2a!cy~kR|Mmrrue's-&ɇX`0S$`\,{̘gm7qux#h`uґ1t&?/BsR⹥^];.QyfJ`ȬRf:0UVs37oen`T T $ürSu d{%v;gj96ϓ6Q̈́7ƌ8q``^ mHZq3A4ٸXH33]P+' RP<0ԢJ'+yGl<1:յD3U9_ 28*B|ixrV-0Y (x涰4YÆ읦C7z>.3RROxYx+:zՕ4*P:G"mejɏSB&HnXغz"]=<!0V03\ ASDb6U;Pː-̒: n$g)%uo>GdCg +Vz=HTZK=A~tD,.)a)d$'"Ҁq?g_*RYt_};ge40i/+A[wjdb>1fqǝii9K3TF9ĭ-hVndh}~R/&K)V#|o.τаW3gSQ:> Ҟp٪Lv/3&w1Pأ.%Ƽߘ)P>Ґs+ٔ ~h`Al*,*ɴ~f%N4ջW:VQo)Z{\`ґ旁eM_L*2)m6PC ?8,2;Ykbm\zSzC}b=8:zy䇹Yv2ȓ^ޡ u\s^w3>Ho^mop׭TEx[HR{WOzHx J7"Ӓ}fO",x `Nyla>Uʺ뙍6XJ#J{=t I+ڸFGBXy SV'30L=Vk0c𔯜>'xM,黥{{c͆%f~>m6Ї&xZjbg/q񰏗%W }p :ָkË6KRۧCE_ *LNvYpڏA.&gr7C6~ԍ{'Jpō:b¨۴Ib~. M"[Ka#n]bFPwxOBu+TA Ql@lu ^ y,[IjҦX*O9֡[G(fӣo/X7#>ajk/)\-`#9F<@ =ax-hW^wT\qp?uX+T', LJ<%]Os@;ӿ1jRn#mmVB imƼ09wVEC8tDkҁz`I@iNsh჌1S1=;yL9!g| %>bvl _Jѧf 2uhMW:o]P%ޖ5beO~N~lP'uL$61)9SZc3謩/\%'M%)iLy=6~v%Me9\< ڙEU+l4AmQb}z<Ӟy)\>iNMMix49AF^]-ةw%i9Mg썲nESm/рb;_-^QASwp~ZS/45NR PjlOܿw;6/4 ,gC.YsېQ -,*bSt8zw#դ>T͒\yF(1޹>s `́&~έ05CГ(H<z\"z!%כVNYVg"<4_RvbTm}~+RXb(i'@KW6V\+5ڛ),ĒS^{Wucбuvܻ[hE[OtqayZ8)N1&S^_lɄŃ+x|­xtvN*q M^X>ZRǎVj Q"*'YiZBAH;~f8.Ĉ[eE]տx6S;8A-~VV`R*U2B. {b|#;P$7hs4Y&וdYE$xk_n.x'P) A,=" .TKOAk3֤2,HJ끮J)ITmmkZ_o1FgG yЗR$Vza{j& [[udo?P?f hu/*Ş$,]hveB* ²0zR;GK,#:\/w)@Ms#UoI80d?m6q>fՓBoIdoQGqpJESa&? },p$b9`TLfg\4{*c'a~=߲B9i]*-)zo׬&4X+l7Jך\G8A+`)h8cs7΢1nlj#{Z?)٨ILo9-tnO=jU7GiPv `qրڇ{RQ/<. 7TwėMx*00M'hY 'qa:wP`ɚ; X<;$JT"Q&sHzٍo{ԞQRz٘,OW;#l^JGͣ;^Y|qy &pgw7:-چ R] =fu䈿ycL[ٔ8`4gG}${ C!Ea>5hP-'=<' {̆7sb|njC)B4 i͙s?y`hy*k].T^.NY(ΒVcO Q/ݹLtvO+Sh x x[m1 ज-2Db|?Y0UwMc$~fn=R~Zx%3TQ&tcU; VW>֋Fz<1@l;>-'ߢ&9!x Sj͈Z=zy,Ǡ*V67~>-Q!EYZ}>t"y<'ST={#S*7@>L&pzGBFޒ;ۈx}/GN4 RhGjsc:ӖɲR)-l8Mψ9?OL>,Nqfe(uieVf:N8f0I W"9"{R\s)\E!3y4 ;A? бlyĠaOYsIfiV=MS]"ro]v`<9Ѣ+A9aۀMh"jp'Ww3J #t梅10x-L4ČVyIުћp>Cx% m3֐/t!S"6SaP2l-ј0" Vn`ˏ[ƍKGLnsႉo Y "_px%mb׸&S@mT.*$@ʭҼ}.,_N 0FɝIBw[JO/S:e.H6۳sbјhbP!K/cU|?ʮ+1OzpGx\ XD(HHªʷ:7*bX+C㼀G^%׀NL_aB2}C&G$\nkVzN+ͳ+JxI&s`RcTf7XOH,^C-Oݢ {.mRh@|Vx9Tv?^|˞+2ŵz yqU.L$7 MI5CW`VzC:ESnAˆZFSw.H]Cg0s ʔUܟ,$F^ zS/5$qTQ7Af!Ƹs9s㰹e&DL3n3Ϳií8K):)߅5D :3%[#nފjex ͈Z yzЯ?WWv<7z97be + ?OCAcOׅNF{3= r5jCP@n+ w5ې׻NdT 9@};=V|NFMPsi?k7#k.)8b +5h&! y]I}kW`>]r82LIՒ8\1ݵ^v6Y O0Y^g*d27ޭ*xZal"hD#=0շ%մXhL~>o*_8s)PMs|hR <)0R=uPaUO q[*xe6A oʵ;*>Iv`X%ML>Ɏ6azrt:Ƌ FZ[WLg>?k&ޝP,B9$ھ[V.vb[5Pxv0JY}xsi^2P &] C%vu։3e.4Db10P}ځ.:x,x%N7 t qJm٧lvzD(*VTB/4HpS>&BL* n8,iЮR&lX,ݗ۳-Yԯ7Dm %cd>ֿȢ`P %@D֍ӈϖl&ipZ]a_l[xco0/WE2Ӈj^Q gMdWҎ>q'-p-;9-ΞߤtW#o \D6CõR׭pX0ej lKr YAעdd3Y^h32Rczq‹ 5upLP_e/7]6񑪀Y W8 kvX&}Xw2O1a4nj7®l̈́MWf e >LopHCKw*Uc;L( "L3X5k!β~d́ bSbT~jɪr"k '.)!u.xצ~tSڀ,FYڧh҈Ad+:nT[n\0g42R`fZEW$mWa .8MHkЯ\;bF"9#lD2Z`xDu KcZ8#& 2%2V]l z/T.5SZqjK{ $Jn7D"A 0'xh/Tȑ$+tm y\%,7v\ؗ$>:$g3%nhM ўM=d{H(Hg%a K(W)dv^,i`ʙQ8LG࣐=ڥ|bmhЊtt4?7b{|TzFUL15qy33EcZ{md 'd~`]{…>26^E-.ٱ8l{1@$V `g* _ L<.Ke1hv2ZF$$ aCF,5 DE@E2uhZ 5nX*|_&rG>T"{zzdo RbD%Tr:"WtyUoܜߣ\]ɦ٤C) ߌ!d^ңyTl ^4}NlEg偟Eܯ.ah! EA:T/K0h4o4߾֐jl<Z.0G?<1t]#AY ._K[rq }_MzS`Vp˫ \Hh"}TegxLK(A۩w*R09QNd(rLN8Uϼ$gu.d e.5Mv˥I+ų܏lJ@Kw8!ry6swJ{7" D~"xK|:bO^{yU,N#ZIaSj!mZ; R;׏C1Bٚ>Cz̀CMJx^X+Tn"$ ,#ƕ'˕?aO;oxIfPLg P4 - y]ߑVdOeB[hӵd(4g?+ :F/tP /I0fT%aY cbʇ ^2Г5 %|1-$bE\XiQ¼qn܀6L6,)n{Y6G6XkW{M|ŢJ vO.Q"NV硐2 ,ޕjI%׃%|KbI_E>/mǴfog|K7z*BD-䪥?[`X Ɲjx=bl˟۩kn0tXf1* rf@}Πk>8 36߷K\pB5Iwu||2Y}iˣ2s{1 _wb`j$T\z֕@I[g;r%G F! 3- eP$W#a@{uOTS0jjgj`__=D8p23@g],ڽBVoPVOWrgӊk~sY1]6{C5i54on9yəθνCyt#CpTikPm>nfr\s7%m~5`ii9R8~'@9 /בQj1h?q?6^ژCJ_] W^fvsqNGM'`5"R=`_wá',ѣ "F9lNW%^!rdDyEOOAtzQ~!Q 鋵tA=\q: >1o/*UZCWV,yh(9>q&sD 6߉UI7 5=KSdS+41LNqcs}mn`!+hQ iI'3Nl\Rgg]Dt۪pӒiҢ 4v5]/ImcZ=g5gRmjvJä́ as'siIнђyvmaF \fNW$?ݕ^[ ڰC:w4^"5%c>pl|0ּbZirbB&bv8r+d_U"4h Wm*dC #inu# k"U (߅ gHr9zU 9o !(kѰ猤.d6-i[iԦooA#JoОjZDC!rN}^b)wG\tC*ICD0X/#tQրFǂM<. C<ﰇ-iGnPErNZ tMYRj`6gXd,m}8rSc9 v{P-o{<λn&n|.#Oɚ4VR385@QCIh?q'ʊ757d`Bre}c{@O>7`γ͗%G*AlCYB1[p "OU(B:$fNDc9N-x+t Wwቜsvj 6_#ɱ |Hȹy ͞u^ IXgS]K\ZyjYj\v{2WY5`hO.+]x{@S/ FS^0Ƕ> 2[_}0)9i+˷MрQg=|k@CqY|՛20*2ЙX*ϛ< 7C'tă)E)Dq8:׻L\RU1hMDyfȂ"Z1gmV kMYf U_?fSt_8HD;_^]ֱQڍ[|"30{e\[a,yW!73ҕm&Xc/+5SXr3_6a "˼SW(YBq 0[HPNA$U,$9evF;NBv'p :پj>>GS괅h‹YgOZ&THz<F< huruwQLHQ5`3jCb JClpn,{?ƘȍdlC ,X#~a_H{}E(sƐ:RdN , )ۓnKc/Gn#G3^ҹC=ê_u.5u4Tbov/iZ=/OC(i#3]9 pR;Qy%cN $ XYB9Q\Kfiu#Zq<`v"F18=_88YX{P^Bu(b<> _,}Ʉ˻x8hc%,FUQb״Ҽ*>oL3#L]zc[_39m6 hC:1VRI~8Nj̄ս='(5q$Ueހ[^2]eЃN8R>\IuPx#8lRwNk0 R\H:3A$H܏#ڑOl;^pm45.~{t}ˀl|%MH1L$/nA-D[Xzoy }L cMxdI"Oe³5>˸??uDAF+ĉ_ cO;-C?3G-U^O!in _Gb PdSU?Yعo}IVjԢxN-„OA mP 0HlF' )TZ>c)f9Ոa M;'Iϱ7 ab[$\/' e;N@9fML)29B'!*o^ș8#.NjTvQM` Wj%#[̪l)ְH1@[J[߉-+#?<7$I1rR曂j iر tF )ӹJ16=Dkμ i+ޒbfTvQX>?lB@3 $Τ;&'݆yjʛcxǃhBwK}ow{* 㠣&7 9׬1"UwNDGy$s"P\p dO ϣ7Px y~2Ks`@&P)&wa~Fb\7 [Jy& qvH_RU[  uw} i\(|&K HB(h|l~~խ дQ9pԹy+ : 7'RN``'Y'^@n_JU?_-2,jGΉ)~2{)XGЍ 9S)]y_MXm4, zIӗ>^ȹpȚL6lfKd{C̿ʶ ǁs=+K_DY! Y|f:1fQ*NeCĥV!uEmSA ؖ5Nk?L%ےkr`IЖy=", rCa^rzc@/FY2ܗEjƬIj< iG5 lL:nbc殠TI 3R }BoC o,;XAVb۰qEQ`v3yE(OpGl:$]>8g\,(564(c hd|_-olɋX_;V@U`ތf2/!K,܆J2nM)'wwKGhV%.X,中z*Zuiוc"8%VdҵkWnFz1*t@֦U<\P-lq 1).0Bw:v%Pz5M6&פG/L"AygfӚ-vSK4C Cw[6 @6B3J7,,`O;X U*;&:?VxpjY [6a>eQnew#a,q)0NU:/ 8EU`~qȇr2k~PpWFm-վqľl r*O)>h/<LfٙKaw=" M"~]Z v$[Hln/(C9'0]a[OԖ Ovn $7kC`Ed{JpL);nϮXWk쭺 6%>vzG w@7/Dr\KdTohI$ne!U9+!, g'ρ}"RW#rr\j-gc JH,i Z|0)oqJ\kCh1p$($Z`ߤktz1x"KebH*)#ԅߤaOC+1uAcX=Q7jzU_d HW}GVU㫐hW !1ٝ2 a˩~5~b,9͌Vg<7"T$=]t^;tg뗤$Z腥koy#Cg?keoT9YC+0 g#,kNa]əc*hk12KGz<^]R# wٶqX$L0ޜDvƹr(V>|Mop D.}ܾV( aAY,n/힌-i:aDWO+K#GD c22 j {cBGY.6k.g ɰcR1=(4+>]<ٮs?o/b[6nxjǤf1WnL~4$Z@3SuP9Aydi %JTrkO) pq]-lg?7V2뵬#엤Ιil;koH+%Gᶊ*B*~7 Y Xbll3=VPe+]>◅ԡ!Sv{.H\P aӣ jB8ՀiY*R1(Uwf#ʋ+_ oyz`~^ W(,;qCL}3O&HezZ bZFP+k.p\5zR̎s/)C^}%E+Bi-X5SrһaNj!-Ei:$dQGw$_:BhdIE'`@xb!]0D|+imlF0~DA ~* @%Q?9%Rv_)n3vj[D~> roƓ|1hcn;n֪6vZ`@qKV|M|!͊QK׶Q !ܤ=vd`.zޗ\?< 2d)yXhW:z;=Q8ǥvy嵟svnpm$^Lm0RRG%dvX_;}A"gt VsgRWC%/e(J vzXV);x̪UhTI<%S,Lmï(뻰%n[;+BYdiG m , "sZ- 4\5^QpH}T.H "EMoNWYlTs&WK Bl"~nh<ԄˆJsY]pcT$eAjwvΡx>1_oK%yxBMN(*4īzoNhdg~mzʝ ϴNG?SӰz7`l{SdْKz+y*QݰQ* $J"RGőr3Fos /a}%_h(cTn#I} Pܙ?!Jҏa>`4eµs$aB-! lQq ~%fq}*1nOrCނ˕ 4cL {5FLKoA|Q@ݯ9L Ŵ^o S]7M|lra a=cnGwpۉgtELPk^4ґ!HO.3WD1RF*H ihƫ%VE9\*;E+I {UJaP5^$嘁u>x , CWi rRI A9sGs+Lsq65FSӑBKn5LA(v3>Ȩ=5CD5t{9"&rH 8^O S #b6D8wV~^`J]}4ncMH)-WN_r\彻 w]bXU~i/!)zf"ܪNbi=^@hQϢm9;^;Y /+z86J)Zi AQ7>Sׇe|؜㩚:W,tS~^ED1|t_t+8z6Y8U)|]5To]ُ[;{F5&\U^ލ7Y=G?՛lnjHJm=!A+0NOXp[ؒd4P{Q_""ql9m١>0gb9t U&da]Kϔ4t5~uWYӺ {y 1zc!n:弣@"A.]^5!U!ļGgM 6PB.D$ads־Od6PoyC~tlONƭqgggtbsIcF/%e8~*4JYTM9vq2a 'â-њi }M&;?nA`سSYd*dhc 0/9`2k=ׂݣ8T!(C 1G;Y=(|$/gVI9@YQ#7"r.b\=623'Y s(BUDtV:R5ڛoj\&:pS2d:&Unad(Kcř[Os}E+^K#xE2G?MC۷)q_wiSv/`P+ijcPy,sÁne ΪM@+4Ju)\F,'^6i$M4BIє֍ iL33"ujI0ɤ?x J#L(QNY}-Po\LrrAaȻ,Kւ^:GfvRGCr%pƺNU#Zp%tYwN qA]kG[ eAfw?5ŝKhH9*5w.iD}˚nvl̐wx@[!gj74)2Ӂ;DNZV5cx!H[% U`w%qn6>_}cAId9 t*? gaH#kW:u 2UH cۖ[ɡbDe2'tyޖ1_:f!&l1򜒽R`;#T/ q)w;s\W 8ϳQZ U_9J?GfWavzث&9 {څ$+j}I|bTE +qs(/6ULJYg8ջݵJ6QC>lczq'.d^(#^䁶I˼ƕ?<g>g8+#cH́x%OrƼ}k]܂ =, [$<ߚaV>؁S3t6#H/pH%0 "L'P@SL>, Nx(ժRQޥ2"G+e5$Wi,w觜WRs lk8*T\+焧>4I*}B2T΃c4`a,hӊV`'v]2V-ssS <>fPF5}yBu|v%|)+ʯbcC:f}"WZ3j^ԩIlDC#MDpP+{{ij,;-=/rZU%*яvM7 hO?_D>ڲ>MYE~:oIfKu^|;X/FM&`:@YAۺ &1pe+^јw v@Fr*azB?() frKhVV_1)\?Ӵ0]0{zU]}8a;H2>& 4 #$gn|Mkrd:-ܢjR&L W_$8Zc"k6ʘq*TR`f:7#]Ơv;f::/5\6ROv3`cEΥd$ĥahxNړJ-gVkZvkeOz^kpҰ3f7'%|к+ӛgQAkDbB=,Lxw0D\+y;oH;cH^rZZW4;JX2$-t%`h>'O8ō0U[sĀ&7#c'9=X!$Az~yqp#ه!x[@ zv4>%JG4!I95trԧv|SrȁaCsr`]+x6D肟kYKIv"~G@P"tcO>;< 71//QDJ۹] [\ij4*?g!5bH: ;;8tb>yA5C4 =DT;`ɁPZ+=Y֙r{pc{/y=BI>Gx4M7$0=s~c7VknSH6)t V(5S2@ ͏ˡMaKfghe-%bbi8]{I B|0am}bq!zASs$\Z4]n԰ T+3^Tw]\pl аQ=D8U#7dA5ٴgrYm0Nխl[h*g߷= 4+K)K3Ծd,v&d'O©4ePTٺ7_^ XiʼLƫj#^ X&|~o ɧ]g5 *nw/:mA,AYrޛ]S'dʒs2Kj8V|8x,Eh雂 ڋ32$]$m9'UbGl88(Μ;JmS7C98S!yr=MFQ 彈/2q6uC|٠k},&)e:5` ^daW xʹZk"u9t>גp_T 2Sۙez-l0Ќ*}2 T-:<4I qet șQx͝:9raKaakav+ne Lc@tѫ1"Op,'8\ ZzG_ Э; J !?,Tk:DTvM 7}xCnP.a7QcTXy,5yxmW]XbnK)S͕#cff6> 6hҧRBPFMF殑8=ؐdÕ 4L_d*驆JYm)9K.!T8(c.)bXw:pC-i٩&W`b/ A[´zO‡5J +fƉS@Pw&#SV-[%e&)~*-P+W /Ž`ǂ㓁rPfPKNɂrȹj17N$ݼ/D|SC֭#-JťI'qz`?cTm1".?Cœt1ƥ5fqUpPJcy-0kKFH@(du|().+laz-zU xaP 񔜿O%00jm*}.RGWg͌ ڕys3/=14wq`m<v}}N1aA:ƣ0 emY}LϟfE{r,@ Z,,juvx-5ʏ?C0 qaLxNj2Y? 43K\Nqj3ԿV{z56 +v˺憨 YfڹrJ>n4`PDb/?n|$1`e%HVWXNl"8 A d5jk'es)]m;?!*\FX{eEқAE$ @<\?9nisA+}62%Ixm3/6*j)i w.t+U3[}z'z`Մ*If^ZBUM69Eqw\ڒ.D`bkƚktLb;~U&ijBu,fNjXǗ:i:lpI¸&<љrTN?z"X$d;Sw^uo)%T/5qj*'9y&Te*].UXsE&35 =숵 eͷ2C[9QÛS7gDDzx@P%lӛ XŇ> ,k)ml;wA{^ Zm"W@7%.?d6.";n%l#RK[vxgƯP{< tO&L=ԉ'BUbӶA}bZoxrF" f^4.Z4x GяOȗ;z,M 507T:4AuƯs욤tH {vPE*DYJ-["ɑ/S0CYRxm"խ3~֣I3!5!(-+/e 2wZ8`ek.8MpH@ يaP2g*,+>.?լHg+̔Ip* elV(A.tЉudſˠw0BIpN*̣@ 0G_Xǰ8u@W׾LEV}#W??>F_@V }K. ՔeTmT1mђ|vP$~7E>-7 bp) 011%TD,QDsb72{󏗕d>=Vvؓx=@T|SO%zXaxpah/{>& 5YPJwP;2)fEKHJYn O+eӘ´/fWOֆbV.O.1e&]oBֈS5]/e2^rJ:RV h ED~ O.]%KAGezV V,2SC4l)Y[D s^~V>E2Tx_iqL]M\f=}v KtX=Jle D" ~ MO-1$ۀi}L}#x$^/&抓iaQ8`uS5eb8|gN,wV'nXW--A~_}ׂTiH aCW2X}Z:)DGF_  =7_NQ;gjPjbkm~N[f;w$l9WL,oqm.z4( .m% e 1c/)?y:e,(wH0la?WO/tR@e] lAjC!(FXRc`?羻?S%Q>Q9 W58O9g{ \ Ќ^E>(VJMֲ9il]u^44VLVWvr;EU~x0)T>cUҟyLAwnuz| LlQvE,^3ÌGj+pLb/r(=]W܀r槸 S JoQ55+2.dnHHZo=O72IgwVz#dٟ?umΛLf%{یp,OK+S"㗱sTuaVcB/>}HaMuR_ VKumvPeBS }&w@f&돗j ꡋNťyr{ VϷȺLjN_Ȇ_mz:5DUWY_b2"YF)sP &bK4m )li*7z@4 ˜ ',:YdGf}oi>k^Τꇎo콚%% L|-8ŀ pYDRT$h5"@ӪKi̥5.趱^苑!Z#&{ 6EX+d1xeG˦>D"qV-T"h6ؘ jue~;#og-5&)KbQ } !gnC0-kج|Ⱥ#h@f_awIImZϷhQ})dP>uG}:>)lJa<IA(zw|h%w!AY)ks7%LZ}Xd-y|ߦvvu`[a!0b+:joJ{kaw<1-A8d|0{ -V*1L5qn30.W>FW(+;& pԌD.ywǕve&'wcg/-Fb,<}76&9H;|2I}Ie9>-b~@y[~01$V3 h Q${jr%1 gMdGF"VaO;+&FU8g;IҢ1 B-4,8:"X t|4uq((}6y7c}@e!w el]'_ȯ+iG""p6T.%q*~"N_|)w|J˖][D%=C1S=6^<֛ 'y?٥]zv݃~CX:L` vz~ώ/:j2w"l%( 'G59aR-0GLH(~L 7U~ҹU_t<'{[>Af^vj\aՍ|p( URZ9-6!.@2ufQDQ9߶V,$2rzx}(nJf2ZtAB&}dm#뮌}S"askH9^1]U`kNi2VZis!`}6ËC1/7ˆ]@v>=}Ȅ'˕\'1CN*(x7[t9AMٗr[t,c.W1]נFxat:>)1 KH&\'acٛ2wׄJk77nT||=~9EHRˊPAP!`^Wo%"e'6&<̒lNJxzk"Mjfw{tJѝ)k5j^0Re8,OFۆ݊ 1w%?,BKFzRtW;ORm?UcFMy"~`ퟻܓUA x0ŇkS,!Yo(@Rzt_ %r%IdHJ'*G~2$?N=d2\ 'f*?Ma*o0dcω2Eg8[hۯFoc `wLvZ&\ y h`ex8r5 a߾eyR>ɒNbByJB\&v#q7 C[ NL6{=wlFpY¸ڍEIFٹۘ-QSBG6K$;N#3hpp;*F(R,|%x|U~o!eMuQG3~n|T2?E2L R$}N\D'hwPAJđ|o97o<؞X c{S1THGӴxC5^Xf.0RNBŌ{q$*WPEk̈́RNq.{< kL d zh^Fmf]G傕RʆatU*s G?*CZ2W'Z1wkq*x^kQ>U eDl@eaf "N!>!}E}=,oDn^0<xZTܫ0<]XR|>4'?գȂ\(KS$W[f2jD hֈ!ˆs\"EE/Z5~m|OPle 'Nh+j);N8{aI܊:0{!CT .fLz?SEE綗pxo* `/VFzE=6Jbg2 z$1 BcP%9݂'HZ-iװfoƯEUA;KLKRt:mMQ1:M *bZQXI"Ycu3FlF:0Tj ;(-{AcIZզ^e@_H&<z R߈{" ɟT[|6mN n_< %?Jcq=P+6GRvAo塴g $h𡎕g23b|PK ]j39X*`=휈P3VJȷCGZ9W$MANm2=p2sK'.\ t^@WEl&({Sl6_Gb wQqVk9yf뮀>poq!bsM]R>ip7M @# +_j'-Ϩ| 7@FԈP`sA3Z 읉}"upPXGJnD?J8հ)?0fkdr> DNr檵ig=|CY꒡^cM o}6φ\}V `<,AdQ~JJ폡r:Kv_2 G so2il\%YiIg0MĘ,w--ҋ,pNWo&`bfmyE3 ] Nxd&+`xW@}FTUN-nwÍsk6\d"~ XlT6R_# .uNG7Nx$>2 2 S{alOT\R NGoYյ]n)4G:k(s'Q'_."Q[1) ar`V@,C-D~ dH|<Ǭ9XmG,<Gn]UX 3{d%BwA٢Y`CTwnf (=3J!~fQ!椎T"̖hZ6M4c# -]Pt|<'o?~! .zd޲ .;er7,4,jl%# !( ^?ֿ4'*+QkZa^XguωudФP5U3ɹtJEm BI!LVԞ= hDb&__?ј3/I^K'T x: ާ[ItÈ+Glt{tv>9mwrLO=>JP.Ti:\%?qrPa~OcT!A#%d;ԥ=;LYəsKzaM4(m.hq-^X`QuF7() Kq V_' ֑Nm b"*k;*nATC&Gh%[s@D=t붚n"S|/L$Qfjg^HT&9c|#! `}^, ,K3/K6<.TT݀ZQ.26<]w uwMji'DnW0g"3EtwK+e7Ŋ"\d1@LQKd<`GHU.&R(o7r#aakFNv 4/"WWA YDj[O75&4O?rVKuiocm8u/_hQxj`Z5o[̷8|MVʉ>= wpfkjHdPsgiح웧*Rׯe_Ch6 h>PFt{-5@o(70<|DS nSz 0Q# e F!1#+s*$~YhSKj  I6*Κ k/smv 2l;27@3M@x7۩#Xj s6d'W'= ZʄjT RYBbTq>]x*`q'lopNkͼ41 y"Dy`bJohz)Kvq8BzsՇTB7= Ђ .Dfw:Lv(Xl~}˰O+8e7ָԥtc[QZ Dݱ7sA2O@/rjȹgF\gwaQ#D<]Z62؟ *.1E6ZR?1"+d[YD {b(:Ps&;<66W$rYLլ|/[oOP\p჈V33V>)UWEsSе;}vrrvN^lM,AS k=f3Y M5bil4嫾/T2G ə}x9,G4Xh)*)#|&E.)'Oas/il57E0iuT7I59LAL/Ag|˯tq{AITD$œ@KܕR6/fGI'MJK=NIy~k;Wͅ2aQ+ b.LD3'ĞAQxe8o $ݑɍTz?:_IV`Q 9r(ne&T%d2I]Ȥ%PHfpC8>Xv˚_U5ŨŘCpX23yVt~$z痊_vp; k OGzVp@T'c٥ /U*G '> igOÝ}SQ?z? G9a ALtQꆩrB- U褌 VeeMAԚ:!aXYM8G}߽tԭ>7&deg1䊌]%uM5N$Խ!D o Q "kQljQ>rޒI`P [Oj#R nӓԋW=VS% uEsn ݶB~8*5`q+n ;] lYPM@ڜ=#cgfR H-횑otDy}ƣ0 /56+A|thVƚeAZLk"7J̠ZS{=ܙgG'Ϗih .yS#eؗC|oBV"ɏƖN]LN7pZ(oS,ݰg0n̢w@z3yzR,교_:},(])4ܚ.ZP3A++-oI0?\n5jSv**+z dIHo uri!-, B>?$ +GOVVEi w$I]d͜ѐI; ه0ɖoY"$M,BN(@i U1ZG9d# A $N*bR&o3v'Ψi2\7U[.vg(A4g#,Hhŝ+jyBJ ]rFw3I)7 03lB|U`pqjt\9SshV~H!NX?B&kRMX1|O3 +(&lJ,?Qd̃4`m|d/#e@etmL<g_V?O\x/˙y}{7嘷rH FQ:Tґ9`;1\ǔ򦗞*8PHb~٫ _vg]> e;4GNqűsl(5tl[,yu=8 #?TK)S&oP+v|cNVjH'fԡzh:Ѫ. &% S"cebfGnև>Lj6N33 =&={r~1\Q0o4( ~Jģ7%9}MUGfݭ:COj_[@ѳI]ۢ>[]9RRKNaE2  D=U~hxW4ABZU١s(5a|9T~To~7%g07,af:"?+ e{? d`Al_i 㵍{6) Wu l)'c̣?iS=ezp#\޳E%S* Y y~ ן4gEgaȎ̹ hfP;HqYѵpeBtV]djƣHKoDUy_)Q8s l.f&փ^@deti ip5vGvRq^ںؕs`xpf'N]'6o:|ǜp$ ԃJuN5YI|N#h Gl^8G>+#J Ifj(9jɜЭyVӊȨhw|`lhWn?'lK}Уwfr~d؊Hc9q]/w)AI .7 x$"h2;#s;ZkZAB\C2&m kJU,ZR3 J"M\(D޹~eIuuCJ Z-IмH q_Z ?ĪP@Ł0LL{A9n1n7pU`H7+x3z:jOs`Q/|w󾱲IFاn}<^DQ-Mq6 14op5M`lč@$(POxeE3uo!C/ v* 圤X]a3v40npf%LҨf(k.!?^Bً5p/ĽfoѪ|T,$-'D)p7,Xcx}a$AFA|l_  O2"9wp7Y~Y()(4yl7h$N\]C}j4(:$OKRGFpG#ĥ AfTڊI6AL7/L27ImE)Rܠ*Jt|mS6..8GӍ]NRK;Zg hGiYE|s`|<P:=ې2a|Rbʾ^Dq꿃HS#Ġ^F<$4p4F UI"Kn&q* gRJ5Z@=WgK- j5Uz(0bQmz`lBD5GYQZ>hNvpLbr L 5*])b;W*p¾`'Ķƒ^[X>PA[]Gj~*z@ARП rPmyѕF[4HspJjᕶf7ُqR? Ww2J1:;FFDQ0J`^]NrL2pp1T$ 3Ȋx1?+jfy5B>!Z@?^NFb2:]%s]0J|~a~ t%W&l*qΟg无!ؒh(Ed5F˃(F~I wg!s~C j1ȟ47_WF8>"Ygȑ"0,Idm2 g(Xm*T`! :Z`82q}Dgʓbltkp`KtXa@ ߫7–BKZL,nb~W r`ȍ||n[-=AY;+).)C5B.nªH(]N%ɾTl:\#z^o&@VM#kr[uz޹h](꬈*X@'srӵT^nټӔ1MM-%Ҭg\@Syoۇ4WҩW-4 $\۶Ho da*t^Y8Om_lh~L3 -w)G(Nc=Bp罻L_*F$;&# | 缹:wa7p7m8Xv3R&Frb@-eR arW2ܪBISPL0;Ej5q^16^fHb(O>.MD<߼XloIK/;}8e8G1yyD5#Z͚py~1Ȧ2g$E#@wkDJxQ/3Ι{b Bjwh:\, PWQ>_g _$9~8&Lj ]3~EU^u~Վpi/ 7hÃ2Kh5ɦ֭sek LM9˙"ʫ9?Vo+""DWO/Iz/Mo_,C7%bu+^b8B'Ba+8"T>0;~tA%bbhtP^ԇ"lKe }*ñO}`Տq>uy؝uObEh]x\İ5/Pr7%uoLtٜm\tRMMa*+U3@l)]UXV+M)6έmSoLEO+7a8Q"[Tfc\s VLs| G{)gHl>׆3"cv0˴kچܻTcoo=L-/E3<$:Q/*̒h:|îp>k"PQ9p rjD:Inc`cikΕcMʡ *y}j6LJz6;^„Ȇ ºc.J>V%QomrtDKn`+zJ6nh o$ɟ mmb;+M"R+1m&u ~z]JM %~ GZbRKToH|vVT/@eYŀW@]~YuA5:z 1Ҕ 6+4Xs2S NeQu0(b~K[r=ӏF@8%*Qsȅ[m0%~B)'6>Vkp_n[gR=]b842QXg@cՄS(sZg,F1|t,X-`m7exTu>py=;]LLE# Hȳ p6_D:5"c݋/Nvd6 C|NeMJT`FDxT S ?$6Ǵ_m^$?%flP@w)6>34/V_ UK}4qڶڔP#cO> 7GѦէ\6a|-wsJb-ͷd{ A{7<'PQ8/( rTg3}Sp]I N'b]oŸ׈d|iEjŲok2V7{і2(y.A.`j4nH}_tW w6蓐1o߭K -xdeʍY_I}gx0|κ6eUڙy; ͞n݋%|#,À:jM_ǯJBe[JHە Dt~"#&<gq 6.U2G0~sO{c!( akyVBd~ C!WqUrM G8L [--zK. 5U _$a DбnרlU lTpG") #06~o}W^&@`;Q#3𦷗3agdvD'yut_CrZ-QGBlsBw Z9E tVϤ=)Zll#}yS+)'* 'W Bo׾oS@6/Q58ѹ)aK(/:$mh"NHaM?]ݢXh8L[ &Wƛ[dPChhͲ*@V=p4w-evʗ9-=i-4±Zv Q;y3_+OY>O4b(.lu?'MA&3Yp~v+aY'-J7 $b)@9zED`zu+ :(֫oLޥ>TݝUXR%+!{aHQ]_jԘ% ~'n-}l5N<+kj$VߥdtT,7e{'cfR9vC2ɶq;F U I{BZU7g[Ov&[L[+W`lji֚zzڿдE6-aKUAdTMQ0x[(@zB34Uf%ǢL4"- S؀/Η.|zHgX֫XTP1&OQ~,(ctDg${pBTo]TWkAejL}ˢr!* P*#Oe*Mt)>\QHUL"s ꞗ.ϩA4 0yl#.gײnwj4 vbb*QӬPݠ."["y s.G'Y20S]["r~c@fux$a:HDWYX͙@{;?YbymtBNIy ]0qmS0#h})mzXVBZ0hT)Ala\"{ ӺOH {t=%<60MSb⠺| "  ]ޖxl ^|ʉr4dPx Tµ> HAUOLkEx{:('ajIc6I}A]ue,0ɕ3 I"U!Ch?P'@֞tZNdj5BM̶_{*^^z6rlN(ر/l|K/ì;Ox}l],/ݺh*gc{j>}?2_ [r?K`EPPnѬ2wNޑ@bV6UĄzt@T@+ CLbP쉋{ؖ4D\g}|ra|a?E:zOk?mE_g.3-^87ry6kK0E]Qgbj?q26c ?]*BǡLx`-^vw,4Rql.diɪFjr{~ZhXsIx=~,U33+E,*x QWX .$*&۽IEW8pvkNl3GG?Ci}tGէlݰE]W$oO,Z٧h ' hnKPFMJ]rcR=VG6{B4㋒":xk[Љ{vNCS گF:od^ )5yqШ-dcZu/p32>NIo%7RP9z$ `MbSUsN1 ,xH]Ws@˔]r a fW6-G yXmP| }$\6RϫH~ Ç"37dĺaMKw#m ֛֫<ЖYviKJu;H9'>*9phT^olxMG@TiƷ {>E/r'n_Is&3" E5\*Z TɼUYvM0W "0YF "E6y,1\k4PY{Q:ґx^ U-(ԚQςhP^}/lI1ee&> !L\,MP+>1[<[-1^7;"Fܭ ,;.2+iЂX\L9fc}7.yq.d)i%~Rֹ6 5@40͙( , v% P6h7NS!]oL1D1k>pҒQ6 8Փ+sfZw!-E5g'Emd6?P =9f7ҲPV`S϶֚tQ`K.)njhqvNfAWofeu=ZnfUjg7P;l#%Ν6engg rHK`c)R0k 2} *lPC'p 5IevҽR]FZ ͙k;:=+" Kg|5y+XqZG~<K#yuTj4j~(Сuo@%&yGcC:'x]{S˗&ja3anXlfԣ>ɘCj *B{6:Hd<$bF=OO@.e:#7@'\'vhVyx3؟Y=X x>k#zR7{1H5#䳟=޶idв<<:hǦĤֿr͆ 7Jmu-T.S!9ܲ^tj?ZC(7Gױ s+Ԇ+er賕'oqhR GSjH;P I:41!H%M?iֲG}zƉ}F r~ٟ yNKpx&~[/IQz hdÅB0pn<;S#x([Бp"# E=pu4|dcwѠDp]O Ȭl/`0n9X؜f)e2 T^C6B=/|y/WOlh0&zOe-b[vyp,mT9en4Ai3& A1ܣ|ςޘĀGP`^48S$a]tse b@lC@j!T.y;|9J=WxƁ|%ۤisLiFno~)zv>{${gjVS"ξ%hxn:[0Lo%c.U6Æ;VHB+FU,6N<vIMBh' 8{PRz2{s! /y9GEn*qz0j'pK4]%ZT>1L@ /8\>mQhT+RPliP{60u&M ")I쒛^ $Ԝx-K=Om/L\#Sk#թϲ9xjGOc&.ˠ2&T#YOYf-QgC9N=/&N@8&#QM$K։WùڥU8M$ W8@@nae;[]|SgQ 84HkRc슒xma.deܾ d>_ UGGHTRɐ ?8'c+S<bN,N̋t" ~Xvosw1e$USK/SO&c"$ o `!̶x̄.ѥ..$F϶#8QrxQZaAӡo$HjTʾovJXK( tQ-wES Y۵nn"cgVY$\+a)Ɇk VhZ=12Pd)b;l2_N^=0,hPAH&=4%tǦmZ̢DMR|sGe3R'1OdGl.R56 ,;1kW } ppX935U[1J)Sd1 Uyoi"SP>&zp4w%ο꧱N}7gi <[gycOK)ٵ@?G7 u>cڦւ"zZirp9xH]]e`J 3TdAd#g=x|?iˢ>X1~V-YaCpT,֓HTH:ɟR˶~ x$Agq-<1g>Ûc3&H p_XFsE˲fq5yf>{&/)gKu9@o-6JIMqY˱b%].CޑgN19$ڠ,\`%>nF.PH Ib,kx|El2> &<k{(r(b[ig`dIE *b3^-Kwsǒ(*caZd3M| z+˦Sjk?zSs|PWAZ5LBsj+F" eM"pCtqgVʩvuܿ[q窔H}:bHE6?W:JY2ibH4 O.^\P28#({ M1=TAS#t[~+fk=p:7%t!U0{؁㈣~3hx# g\^{vS^6؆H)sPp? pgi3NqѤhMsAW`ћ:-~&vQ׸|QCBjM_{)wt{6KJavvNdxȱ?G,V;j9LYȐYUyJcBλq .YP K Rjw#tR~]ФykB%U2>>a=.F$U%瞜jrl44dBOG;?ڛMyJ;!N%O]X>/FMGcmzH$n֢3))l5&SFCϻ*<@+EM,"})~7lŒL N+;kxo#Ki'ʤ֙.NZKtI$:/ 0Y04^2mg`S!yY, .Bjz k~Ewo0ӧI$StsP϶1DOڮp,Fl(`ZAkd/π$jG t[[ :)?E( )1'G.oL{.5@/0}l5//V619/Ħ|޴p|_"Lf$ژ6]gap=MׇLh4RVn;@qfc%nc咐pqk[* P`/f)pYޖ q-,#*2uƹD'Qj79wHV| -E*վ@e: XRHo'7^1JGMc'fJ UGגpH 4教hgvtm_KvDՄg/Q^oE>%93qn&D1 õ-'FOvRq1FPO2`!0δQfl#n*ɴXȚA.V&Dz Bf!Q_z`6!";R ̫ sU=mC} ?$:J4>.OZDЀL@37;\z"YH!em}[p9!B gK($^JW} :o=\=z K$Ѡ˓_ĉ6O6zlUo,~NnmaY{WK gb19;o`|0dIc4.s(^dm~C^\P\W~*6Vȍ%2e;[;C5ޞcngJ9ws0IčA/,; >+lQO?H Q_k7ԋ.N#2~˞vMQ$Te)G*:cm^ЌDpcpLJ#ѠvPyUׁ"vq0m"y 0IJb {'ꃚA5.JjtfIv>sɭ]d.Yږa3*.?Xg@ ApBys{xaQc: 6s@Y-Jǐ9i3.:u Qm[- -'5cWԙ*lAl-^,Xa/9ݒ {%Uu=՜s.^ d豙7mq}}sal'L "r7kd,VTȫKw,8[h߬+@AxQ݂u+8ӭJj=^F,3&"Sɢ#gqpj;u(3P.]ſHiֽH!+)0KqkpؔK wK뵚4#tOK)McKq_r-c#g+]8 3+6 qi57/ F_]w'+V_,PDN<,*? cArN&!FRo 0kT$]Z31X(- PbR#P\p5]l `n徜|W٢Poo Aο/{On*) (LQaH@ЫPQ-X{Q}[./URyUjzE&-'BhT*Jk4=_5G_upՆ%=ڠM^ eW>Dv||rqDprp'N=þ|[#dƋEv6iq7sj3&In6i]RB{DZ(j$ݒv8O-" KQ= f hyJj_/ Q.i4X]^7Ǘ-ʃ*tT1Zv\ ֙(KF"ɦRL۴Zld9Tlg䁔Ek/ o6FZ[<%rA0A;܏tyԮ!确29"J*ON >|r;{VYÄ:>BN mP E|ZVa+o6 u>{n3B He~fH5"k͏vgGrƼVUqDn^ׂ.xc6D0]:(싔SϬЏp5pwx(h3D69h'Wb8[ U y hYwYf~tErfCTA-&A \F0reDVzݨ@@p1 gߦCs#>FgBCbQi}/Ҧ!cg'wJ"_}L@`uQ=`Y|(7n!c\n\SCh?0i޽KvUe֬d{Or)S8 "8ItoqO 'l}H΍N}tÿ*?7ZY4 I &1\`n*YAk )%ػ?t0 'ó~pHzA 6$z# ϸJ&&kNv eI= _lFSU{$%,\~N Ƈ/8~Ř[?]p *ì@Asq-73%#h*㙲r桹7ev~JM|ue>-O|Qwv^_|p=8bɛ&S}.v.sGsh7gASK̞0wsc:t7˶x,kF?r*z}chU9]e18WxTDKw?8hS-_gULL-h/ewarH~5JJVxK^I,3*.1 Tvb C-C1N,7yc0o R&>"@?"!PiŪvF!/+X@֘߇ T Xb H=zvj :Geo-Z7&zl&_#c`6!*ˤE:aə\B-H71yVQʿc@dtJp6@A{x 4(u{0Փw+[Im.2R)F4'5F&Ip6EHX%br\wD|XV>z k%RsJW4. $$`!6u29)7ಓ+k4dշ^uPH3c|A(D[Px%ww՟v<\] 3` sf~ *`=#P@/&>VpW !ơ["t/j:V^%DcND>$Nd38!JoX"u0fUKշ`arm\-kaxp>qTM( ~O^Fcg8tlYr  H{.vtU=҃A58:#ǿ tWw\:-6a) Zh)]ԎdNة͇b+kd|eטi_˂W)uX _Xs$yJzDf4՞^ M[!ԕ=g5hC vghqJ0=ipD[t#Z/ѻ؏d 'PYt9cWk,$z=&\om4Y P =KPg'7b$}1T1Y4[OK ۷a/rU^..q"EL]ֈԄfшYz\1s}Id(@ To$|zQ:b8Jn2Dc3d%Zp8ē`LM]e0OJϯJ\@Kg0Qrl-2sm4SLHsF )XP R:.f^ts$FnLK+fw8e|(%`֑z!L֣eԊCőVw~ySQ\^{/ Sznh1U~lE# }+ѫiU($).7(pbLq[n'l ?8$ 4jh0uLq! ^Bo/'`vڑh쿔Rx6vS)vnUB.|A AC3#)Һ:b+f/M2}:؟l]~xK)]!Bbtg~~m6iVg0W|W8 Ӷl%g׌2yJzyB#jX@n:pH/C{GƐ+5\ ɩKeVeo|RQZyNtx[y-eHc0NgbUW'4y8|E1H|@ZPR. w'G/0/zk >OeK;SV *W9ij/nD\@S9ʤVF_pxT\)W9&ͮ2巋yEݹx/C?]\wUe/PSE@|J/.c%m&H{_ifᑃ)-ZC)Mރ)S@ItƥkYdD7 7!۸=xA-W65jҤ<fBNH4f`AŢ hJ~G[ tOӡ7|WuXda[tuF= Uc^ %딐J?h6˷z0_7#$Nl&=+אl.pA֚*V̿wtt⭠OGUel@ju#?1fIcO$p@tJ9xSR4;FU[] 6b\3eUl=GWe S[ r5Iɬs6<Orw:VTz!2;$'FOG {IrHLߧƃ {qQ,wjcR@kJ^I?0ZQW$`j:@P\őW\"X B;_ c6DZ~:ٻ%vM"b!#&9&Oc{pQv6 E~AClgNHLHCuhvA:`jV𤠙K>ðK׾0pzU{M-hY$Na7{=*m~LVEQXFw .+}KY6K70u/ji2^-2ʄj{-/eD+ |{;&gelE Ai7g:oش-xB8&0"Hu-(_2&:l!>`^՘gv8su:c Cds^Z;7I }H*wɱR~.]Daۙ;qz3z/ 3CAڞOdl(TچKr!0άGpG(gG ([S\6GtVxafd3h w\O<n_;Ŭknyݻ jM,@7ɜ]%5-C`?@汔8ߴx%GX%kZ˔? ?YhwA*#NiWodbt56D-oe+=j,C+('uW*x`+9:u\q4f+Avp*__PU4Zۉ=cA H U/qIZ,oȨI$@ ^|#B# q1 HL{v~ޝEi ~)y|`L9 Qr|6Jm= YYBf鸚9e  E꺂xyZI}:yBB4m<:-i1srxw׉x8O .fιxAи%bj6N}*e{jɡda7aUG} ^4n[ϴՠƇ7) <:?o77advL' Vi_: ?BhN8E k 3 oX/SeVkj^܂FQORSg*>aQm F9ӇCB+Bs6:G{q[ Q+mCG5ҨO&yF!mՃ3WȰ3YAEKbV*ٰtbpmBRe]ww0 fxyvZ%Jtr:͚6\⯵T1z)/;\wR ,At /: T&#n7.'uC٪ZhǨׂB_XdR@@DeeNx=P- sD}[5"!>'@je/,e'[i /e8S0|)g\k5`?|ԧ+v9ΦXyl-#B̏24-T ojEl|vI1caĤi3RёSu'YQJ3ѻ(d9e[&:t tTʢD̸%?>oWwj01>/9,*}i25ر <צ/h˺w2>>`*1fL5zPUbaQLxW[ +>]/&aQ~'ڥm K ߉nkdHF?LS+}GZ2M»P V`C# RT3X"hkŦ̮VxەGƷvB%FtM:O>3IN"HcB*\ݹgHf M0fU1Xv,a5q T(icRbpo\q Ke1- aP)n͔I  o&pgp۪&+3bMbk(+KP#RHeL?dt9k;J;9 nP-*sf6 }۳4qWNԝwlf}ؒ[P B\q;<0YzM3AJJ\10[Ž"=<#zE5zŷv 4#4թycerA%T#Ő 7k@YL"S#Tu Wl0Y= Ȑ`4x !C\ j9lO!†r|/)!@機sClV{RH/!w`g .{eپ;PUwHKs˃3ǡcH'a@ˠdžtTY|MsO'O$2ץ  Obc$(^qo;i"~3=:"j!yZjӌz nuljƶ9 זV4YMFղ_?&qb[A4'c6tʆdc-xljәp{gc0(TBηm5R- `2wsCz+ $Yê-/O>0Q}NF3.?^y wIYH )n}JOr8$6|p'"%o*\r+wI!v8a}8nߪc5V4>oJ uNS0XxKV{m !йlVo^.w-[dU<8=qy!-;+4}#*$JQ g=dMos_ϑs3(4*UԃHR "&[D~f6GS#H'fYs?Ld;m-?A!d47)WGwRq(J< q4@)i.X촼y&[SOL)x%;KKp2H|Z oZ9Ek2J Z#;s@FO(.A6-Q# :iCqG>-x q!jOBr99\BcK2Gl} f ^5^c vLhp7Er`l܏/.tD+̈n.69ߗھGYbwtGӛK'9E4el\pS>$upfx7lƎGno&6Ib ~f˷0yuMУA_ . mH$/A"& ~M[cwؠ|{8 JS, خxMvlU&~\h+\J޺Sj$С?aTڪmݴRɿbT㽶=$^ԯ_<}A^[<` m+8@};u5m㱇x4Kf=^}Nlk ;Ѕ/6H΁>hV`zsܢ#_n40HcO43UHd؝r0 pt J1H](["k%Dw6 f))TV4H\*O:TsLg.bz,2*I#p?nPƼܡ!,p"IQN/w Ǜ_ Y?3 7%O:DXf+] p4vdʏ2/?$.U -5Q7ML(BsvJ?eEF-z5ʪ3<&7T쀴e4;7('%ן,!}T)Oz'r͞)|)Ebł=DHb7x+qo~X]y#v0oܙςG1$X[4F/%sPec!Q\-Lm@zIRP{KW64~qX3׀dW&vA%0~{ӁKͫr(e?`+4Qt㷩e\gzUeG#nXO5.֨VK@Q;DdɆ](n(7,[z>WJadN> a[VS IoE6 V,15BQW!*x?T5,}WBLBVl <_\InWY[7dnviG_mK4T(df5+Ɵdm/$_Uܰfy> ͎9r;Nh|$Pm24AA؅֛ʻ%7PTDǰm+5' M\cfiфqU3HDߠJXoG*;rlCOܕ|[,$]9חp24f^b&Tj"Jl^(Wq;x@-y b4UHN{#uetTT)cJA~(`(@2LOC(u·#JfB(Ewawk67݋74():$ ,ܥq\;P *Hn.(9ۀKD!&bd dD6ٳkT<ߩtLpDFԐbF 7SP [}gƹוA3m̆YM89cd:oR t2ZI#v.M`MDD&ޕ%l<;L4 %˲5඄-VaPLI1itU49)":3"EP EV +8,Þ;NFkfF8ͅ(@l['~&ߚxպߜTYu4J'fo1h n=!KڥzGsK8ߛwiF Z5,#(OD/Q|[DK!qY]yntlF2MYxڑ- ѐ2)iOs}dfKKJKaaˈ28Ŧ3OPD _̫x@ߡxX@7!X)qudLWQBPضڇ8 H X]#w3:$Je^""5ʡ y'/ F-RA۰EhLZb,*>G5{RAֶ@h'2iVrY|5v~oVy?bY]%iQ Qk6?]w%6oHdy]6XeB4Rc–7НA>3p{5=Ueh}UR73z ,A(!M=`ȶ)+85+o(FdzogYp2 *yR:6:/R#%sD-)M;^4YLL.%Ѝv[r$E@**fE)!`  (E6k(Noƛ4b6KA,Y[ۘ<ү{ؓ8Z|u0 g"$8zs Q;삋%_RwҬ2V厒4!=  ͼ/`1rΝ2`p!›{/t2JGTNkWጉ1kAzUZT xhk Q0WaOz -9c+ׂ;ͅƁ|d%)VꇽZμ{P3Isz'|dl<9T֋/mݐec&&ⅷ֙-@2LjV.eCaD:[{:OY̷]㇚СY568Q 2?LT&0߆ /VƱ6ƟA)*:.FYCbNLU,VM>)>W?lW{RP\׷k3͂@ 6ָrJ}CrSגJ`qm\f*]q ɵk!Od brn%њ{<@NOی-yɞEjz'!EؒaAE >/CsFOBmAkb?l@醼ԇVر!&ʺrߢ$-C)'@Z$Iy EF02]:DӐN0>C`Z`Do p 9jb&F lo4_0v&?:k]+29\b˼?v"p2{Yט[h3챶*'GxK=< ?4I^&KYepb,H 'E-}@ogfD$!]ָܫ<&w.]J@ީq){ %1QcJ-!c&GPF9D@wk;gY\ڷ`4Q2NJ6L8 ȩ}xHè]91 g8OL#UEvͻ8zXx# ,ٸC @NETLWT?8{,6Kfy1efݯP!_0 PŃo((G8*~k9R [7Je2W+Ixkv,]^i/]pM"noɥ.x&cm .wYm%+ @b?zU9HH(3hyls CLl\(~f6(hZ^HsD:~EoQNÚ x.I$$ns* =*qzxX.Cmo>Rd YUeHY I f0QVHH=tyV32arfHr_b G|'V<@GWs;AF~]䤥0sE`H oSl}WϬW볻X9tWng6:8[ faX}S"Y!-MUm)=IYPpwdJeK1'Q3KR nmђfhOQg7z]r(`<= DK0@͠Dde~KwtXg7U頻Y S3LMcAM$.E}YɬJQsI^Yb~f .4YbB y1JϔaLb=ңtUk+j˲ ^OZL^uٗ(I=6"f] zӆtcڪH`~㼷cY ) +qgW޸J] `Ǭ2e~,_/8CUW8)JWżAyKUzdT3R"JtA,'5TX:CdJ~JbZE[`&䫋1Yj䬱H',wNosƐWXj_pZ 标k5Dj(փoGk4)yLO|y [W̺QCP5Jpuzl+<]+mZĸډ:4yI:=H܋ h;hm=yB'.' o 9@/z^غjmC|½!Tz ou$eU|Cycd?~$}y-q6 я.!ڜc5xirtဩNݩro&X$$t,&v{edMbSPDAz!?J %`!9Eӯ ˁOEڕ,9r kG4%#bOkX^X l!Ӹ~@7|s]<-xj~PvBx-V 7@޼ +HFbBv$,NbC9/]w(5³J hn}޴W8 XJd N7Z "v Rlo: Dҋ<m,8d$ua  oUj0$c|[.<!BXI؁o"Jq -a^۱$]"_w%]\$tfPNb?L1ddܱco.d$*'վh9Z $ PnIrZRuC2ݦ2ORݟPiy顊7&E+ ciq F6.wÖ8se!mIc fZcP ~I{3 :%) ڹT4:rlp1 \$EPTٰ hS7{9؅:xѺ mb$퉤ͯpڭ7(071Q81~V}*>6(r R5~ŀ7\H*Cx_ܵ `ڕd(o*~B6mt*RzSa)Հx-*@i3HآEEx| V_x2@_0mO3Vk_dc8'ϳ1Mlbn傠˨pdW7h`~L 몟v}!v~{V՟ liTSUq/0k3/;#G-yЅs cZ vJِ|iRM$"ܐTMQ a6{f!(i .?B>u2|yFV?Smy/iukcÜXXw&g3(BUCrGT嬰u)y{HS^!$}EI6uSÝ]ݒ؋OMse|д | R[DH\>`W {^vYaJ" oT~Uވ֫.9>P$qbfQFv JVOe o\&z&L z|ق*qp Cv"nҗe?RpZ0:5ɧk/HbchL O>jOmC([BM#?e3Xɷ,Ic~-Q@E{|;OOG(@MX%oXgw"`wF?yypI#fj.DWeg^bzPC{{JCbJ\QҘm,-1I};o5Sl#؝Us쑭<a9o*E{(V m[u\MW}2ڤMZglPe*_?)M^ն(񲗹 07-7V7RFre%;ϨҕɆa0F}3(%bޣ; pxneI}}jz:Z%E. ote${u.#Ǩ^YCrk8IQ!Cѧ@֕v=@&4_ɫan DIJp>\IbE5om$ KV] }$60{Ϭ>k5O+Kyse ޥWޔZW*wy䵞xlY?v=3(ZS{-X| ='Gqx#Nd_nL/lu$#ji)i._Ez^8i.ٗ\٬VfW^$EHDo`?/HoKOZ(QHy3yк!g^"&0UwjWlC;=T2TeϥLIO%81]Uh~ϕd|)le9Kcsl*ã=u6~* x/T/Ip;(pN<Йo"e|E'N`o]]/q(j'vT;Ts/Š-y)2+xZYP_sۏHN{E[/{JJI]lK`fmfIj|m~~F_3c eV(h줂Ֆ X .㪍`%0ʠr->ΧbCٮfp.Yq|i^B{1{-kS14'tya-59Qn:M> %e(IvϠ )!,.&K2,0 ~]`FeBܻb4:^DM^\|ڞJLuK`>_9d@T PVRde3V_E,)I_nEnGkG8VQ%BL*EQsk7"UBVċ~݂_>:MUYeth='>:xAaJք~ot`N•5 0DfPw9CxVj/ ,2B.yq7?П5}QatshF6~̈́`HU {=* Nt.|YX4@c%LڼK bX &] B@? 5Tȱ/G!`o3 3@^X\Rȅ͌ҵo@Z'tӠEAS}HJPCGN76 RǤŚm|IᾭdeoW` 9#!Rr( ;wgxv7KCKBm; Q/#;6*mzh3ox?IB{7*V(Kv*ۺlu 2b[*A![g #*~!Agw܀S'Wz*L^w3U3톁9t%54}(Έ?1p&,Z ӳ(!%BV?;Hr8xԓ05QWdIt]`!΄oT5 ΕzD[;C?97% 3$IWScZ=EOqK;_leaeiʦCХ1N$a#I2 wݨ Z3NJoW J|w+ĭ$y_{~^2I@:˙0 z*"hٷ|o+v~и}ƈ0=gc\Ӓ,xUk=S݈D'bicmФBg(u[^+9Mk<h,7|lZ#3[I.C"(It"3!@q*;WpD{7nXkN~i pX5kO4PN`URgtkal 9!zBHö@P~AV}1ڲgQ$f0+zŷ.Ekql˚u7:&RG.`vB"aΒ7j0)ģtePH ,~O 6e]0sAeˏkj:/R,v+}@{CJ!olІR7I{5d긖\)8,@@+x]x~$)CS!fmf'u-> %3 ùs=/~T{sniFU`J))qy+W!13 u&XiwAI 8(NObp)XUI^p5ʉEA[xz{P3K;ёkM@&>᧓rŵGWc߳1tp9>;^SeӶ+K<2Q jXg9 NTHͤN_<:{R[2L\cM8 7ےh+Y[wg쵕'Gh>ACA;jDG=fSrdLVU)\i3 Ԯ;oT|/q `t-֪"fl+)!u;I|OpZ7;K¹1o1ۉ"螅Lyr\ecJ1׀Z{]H]MB/>\I[qzfg\m)ʛE{ MI ,`a|ڋoJ ! Ao[@gJkHL˯We衭UPLD( 1@uu2C zM(bQmBKC$ܤ e51B#*9G3i+1VK#Dք 9z+l<;ɞrOhx4f ҁuib &9GZ=5hO5Ȥs&Ϋx$qgB Sˍw)!8l[o@"o91ZpLꅿ-61d.ėpSLVtsn.}BTmGz,5UfAy2JXHZ4R`iRZ*|$өo3,UGc.<>@$U嗬H9`ikC=M|pl"]U(a2ГZe s܈G@8c\/< V>^,ne_褯,wOXbST˄EUBPot z}H M^24 ⼖-'9 W$:AOOx9^K΄nt?\BFTc/ L߂p@*k=}i|]Jקa m\)? L>HoD*W!+FI*Fe`+*nKsz:8r`/>+;|{ϳ4lZ`(rkz,9/ɕ9Q߸ٻ%+EAE1K.9ǚ5npցS 2)x7XxW8 x:ihtD?_N 4F7)X@$L_J[ڍ؋EFgԘ̄fh1;_;zu_f 3UZ`o0J=u6JOv"W}&2=“{ُpəV#WY?gvߍ5`_7t^hcb MjsxՅV%vPuSGvJA9c}+]3DDm]p]bDMk{fn HPtdJLcօ :'o/jzѨlxpDq8XnD .]=5UV{=3mL XXa j-$jPG3 *EK++~9 9+-F# Y\i<*g <}Dj,_hػ~ƻ`(wY7pOBq*rO< UМMpRy+8/XC9|GcZdr~O!޸ ]5&zX[eh ~[z;)gФ4lk";)] [aߘ# 4EbgɄ4&Mң>4s OuKJXDtml-`RK~+e^wu Ohvuo+d%)+Sɔ jD]R!ƒ T"KR1C]]~p%gyd[-ʪkS8^G Ƹg,λ&[)H;z$]{J2,h੾uò3]Ύbs)غ 8xDN BF(&.XPX](oj cp?ezWT+;N^#"?}ꀁyvgb3 &z/OR)[&>qrWHAģ4vQG*Q& |2]2#\O@p˲t[6_ApGdE2;e\AN>>r-b\vJ9XzUc_XnYX׆},dL 4 $$P=w yq3' MÞVW&W\eFXЯ6k09B[Z*cbJYRڔSw8W~o mR(b E}͏ˈ[i`˖J|!Ө$F}%h/R"B{(E=БQ?ʼnx 2Q}ꐄsyDW+g#NFh*GR\&+iNMu^`B3lB؄pMK߶f |gا4vh4rO bKRQe_9 /w*@b~Q_` ݌mz.{گ62"xyU>Hjr.Q /O&Gq7::v_ 0%XP\ ƇRzZh1%fyF޿YM DF ŧ˪:7+[p\v2hR_YR,izR$eiZxr//|;w,hPHx%~W҅}+ ܃xeh.5o]P&:܈=5[avkBٞyZ TI5@N,Qے_~6NBa*X9@jhr-~qoYx#9ÒD˄$ bQ#+fqC"p,o[ǡq5?ױ발u|e*d>|*b,Ԫ:!ol-Vެ?I_X9ڧ_]qBJ)8\$CAfϏ:T)K}t+ɳ̥P HVPS^?ڸ]P'˵Ƒ [TX )U~So-tۓZ - iqA6N,iq\ׁ%ehÉ0lZTOA5u/%gxś(==}aZ1fRFٓDFzT '#\mQ:tax?͎e+$r4;p=)eH E~ rB&C7"x j#}r娷>Gy6љ tm_Qg"7NPP`%Xti`_x5kP9PnY,x}Azm9)w0zg_,}di KoЃ)b}h_z^;ⅷ R V,rotͩ:U c8~Hcq]Ưt=dv?9'ݩQ(g-ƴ7Qgذ!)`-Lx͙25d*3܃hOdIތn]Mx5dcK KsiI/oqa^WT yЀażҫO/YC %&/`e.G CIro%yByr30I<ĔϚ-9|ZhA#Fܚ |ٓ_n|6V;adҏ/$TGӭŏ$PqpJc@87~,-l3M˟XdiE6hdrvb_ŸApYS e7! z@h?1LJ+oL8?%・4e[o%s;E?-vb*{?"!b N: J T[“}fZ,x?Y|tvBǐ\zsFُw,ݹџ_nqC!MHa^1^u}c\"u?iUI.; Pi\Ƽ@x}{Y1|G1 _WH/ 3J*&4z/5r]*OC7+թL٩Qŏyr=c L"_{_wהophI^%7j~Ur?`N/Dʹ G(r6ucBFܶh2SKRqb&5~?By_aFBD+UCmu`Y ^9 ݧ׆oAP69B2JKY`br2L+vI,]cVWP=u  $)Mo6jW'硡7vE┼uaMƣse@kV='~̂AaA} :RS7_$+@qRA ʭHן2β;ANJ ɸP3ȿ%BiUQ:Z%ǫ"gRz_-w7Hu|# G})is&gJ?bsmWI-9cֆ񣝪%PVDC zd2T,Mio G#hIr*KvfYiPj%08 ; c"z1*ah~,1[a5F>PM^ʌۦڮ~zB6E+qF %@ȊϺ^Qi~W~8o$oq4j~kHyHγEv}DEo *D cidE߄[t4 Ov@:p7fطU  #Z߯A]PY>S|<ߣ˄*$mPlx\B^jgR9;C9MgFjGPР0syy&-K!"C܇5E\54);; .c8vhs)MJYHcȊ0 hu/H_Dvd)Kfnrph'm)g='N~80ZoAZV{nJrwowl^MH^p菧VdsS w|.X|֍}?v$s22o킞PmzFZ=I\4sX/dQyPd7/fzVD-,AyIshq"ͧGؗ kVBRq-8AEvlD"3V<1i-3=LFUJqDN[@؄FY<zf0.u02뷌@A0c{ҀZ@6OwK^)#B7/ֹN 7'*ax d_fccxUm )m7qTWXKCx#Z$wY#o{q5~pA%:%u(uuA[On9ew4wF]Rp@(Xd瑚~b\Ꮵj?کiTu5L+%QY+iTx% 2-Aj^IE/՜'oA?zmͱb˷";:SΫ*,qHii9ۆG^}Ĥy;?tDNf 5\wxnW7e0T^Z}EN}ɩ-[/iu\+jy>vFcɚ@[` c2z@ W1zkz8E$6dg/:"/#^ވƓxBlmTKU3CQG{]Uj?;k`X_󠨫+Kʬ X.#10θC9l{ x* !C.}2-}4$VRd?,x9{𰎅G'+䘊@UH!`oxg]C 0NnEֿHfv.{,2`piC4:D";cm"{,HX`/k7<}>l}63PT` O\HࢨM© SY7AWv ?ӠF3L -0/YmUҟ@n1|8S͛j,vrk~  )0fP}Ul$p dF4E '~yAeMn1#+Yu֝%i'I75_2`pr@?)լ~@E11-:өГF]>*^dѾ`oBQJ' Gi :4l~381D3'B9}/ {6YT(+TGxѤ:J<"laKp|OHw:tv\q)WX|W{e,P}Usg&oD@|2HD>ޖIe}d{3ZDm%uZ[Ԫ.k˦!Z5';tXӧov}RFnxOj6AM*Ně$Q}١^ឍڷs)ewhrXJoN[,^R 7&HMT 0 ֽ2Ca!"(%uǯvAd$Dܰ(oQ7!vXk4HW_o'@dI]#0y ݮ>G=̀{r-̥JJWNj6wJ?XPHl;HoFs n=>T܃$б;6(W@>{2I|^R+~ A G7g;CڹHlycvw޺68P]yxL<ܑ9?Cd?Wj J|8A,wbcME,1OU^I3BSW6b=wOΥɭCf/=MDi2>`=*[ϊSR<9Eч/C] zt+J]Ww^Lȵ@]x/&Kj2EZQCD'5i#Is%ڶxJO4|rֆK|@nN~|#+)9x'8!v_ݭcwd8lԵ'2pɣt,<\cnBK!BM$‰tJb]QM6Ymjjx)QúOXI5@=sĸࠍELy^a5Oo7UOdpppǵa@wz26$s^9j$s "^t^.)&j*Rl2(Յ= wĥ=uZ1;g[BbaqsȦ1>bCУsGX,uQ)Wz*i6hиҏor=&d8yHAs7ىg3Njr|A&$[T7ͽs4EhA Ilǎ~*VP׀{)?ڎQq=}BgSpn9oXŅ>N}:.kF"UCJ \ˡM3w;] T",b,>ZL3r_(N.%ꙕ6d%׾׷+ B}ZP G%!.3E8 pGEn5(WTmp ږB$zGc#﮲IG}I Pn(<;` S³O_W@{J 0$e,y2[-. fz5Ags]k[FmB5"Z G/cGqp欥6=ڡ)7 1F[~0HtN C4]_V8z0!DD_z̝;svȫJ0̣H@Q'd ih-R5ҸJa-=CL[icW]]d0j 2٪ 1YVlVGcBMtw&c-C1ceXPtk;  EQus&:o3]nx|s<$<1&s!Fz##`dPy 23ǒ~)_GxVB! AIX&M$Rin[Ԟߗڱ4[hgV{S{C.+ 3c75zD-gr70^bnbMhk\ Zz,4E~=_H~1 }q2Ul?t&V9,d+ !l%'̰V#mB0ϔoo(FE "Jtt $|JSHK蹯ㅀ5m1 ㌆2Wns)J%j݌#y0Sm0N+oRMIy h}CK*\qb{cXb?њBŽs/R,BԺ! M=zY)W*49sݺgU0NL;lS8qlEi7ݫ^3-jP~Z}Mcf R9Ty>eøZcƈ9p!1WH&ֱ_ XAmhؓKSX}>l,' et `D9Sj.Tǜ'j,ERV|Au]ͪyZJOvkxxk(P0eeV")vD=WP8CĴ[s>ǵb՞a>{9sPS]Dtx5̢_~?'\w!N$\}Yd~0pmhoOގ?J9aAW&'%Za="}iv0 J26jx  " 'y?’'cOhgJdչi+1L2?Dr'sݝ#01ˢPK`P1{; d9jхp=;u`}B%[!h3E,tEdJZLs]Kyl0-6?˼hR&a° C'|s|KF6 Q ǀ޹6݆aTomM~*ȹ˩7kwڬ*I?/bֈF9 2*i'<#L<PҎ6ak2љ/Mk˩,9Ӈ5z@[5?icҸUu~_'Sx53LrE8NJ+aBJ'PB7aUt -MZ^1l`V*\NaS(ˇy%&4LoՔmoy'KgUQޑ`ăIXH0z,z.ESmKKN/!hbqn]lEd+\Hg{lQ.0#ia2G|xMq$8Z' ' X-1gdl-:Wth*< `dBlC>V9ȆjE\7}`8۲4i HEz"ZӅDC[4&`.Dߪ(F&z!#'H{ _K\d2,%19lXQs6K gtUS8E /*.i (HP[jДfoѳRD6myIS)?2&W_܈KŬؼ)BF20sfωW^PhS 3!!n3+cQmSBbF¶_'v}}0Dx`\FG'֒d•K%9 hKHZ~[Ύ0g(`b1lPHG_Z{IӋ < }-ۀׄƁj5ڲ]e#n`rĽq=n 9;}4!yYa~V+$h* CkA݃ɧK-W8sᚌ{mQJ$22wVIVQٖ̖b9KK. .#w cO htUU-Q9yZu_6r'7r$U 8Ʒi\Xs+D4V6SUw\}|rgJTsV) 9:GGNzV㈁j9W]<j n?eF}G*е6M_lW:Dn70qxc{M1ͩ;^RiRwm ֬P%Li,zi:>* d:ml`ZgK\x-AX=A(yOPr n\xcn ۷n(^ ,m ݰvz7zLo]E)'JTMK5k;1ryIs9* KU${E#g-ln+\nh_5vR{O jA+'tY /)\]V4H"UI'zM`2bLir$W 1.U0فe]BI sH7ϩ9%1<ܲ?q }3H(=XoӮi^LY> q6pt`\*@Զ3C8Oۯx=gxp;퍁jE0.ˍtTq "j6~Pw)zxIRP#x9~:~>(¢M%6CWY1' _`>gS.lkƑ5y$o[H[z&]JV*0D(?$Lj\{T{<:V:`l<%lyaZt|+#b4C;? TO2 'gN~ {Qms;"[W-"vxS"wX (1dspRHڈq^KFR` xR {n!UoCn^ۧl![Q,OZs ͠Z!n^e07%$OS~&םڿ- ʴY9oE-@hʿ?ĖA]sNyi4h;+%N6qq)!末w/oe~horJR|+ʧMO~I>ᵱq!%Zi}QU  AN3COoߨd;qv/&RLD^ݤW~V6uUF萒E]lE=,RRv]?9Wmb#xxؓJ!V{v\d"qKHh훭WU c vFo^tr9?f("Gc%Ί,Ǫ7J]qGBtMkV?,B#*5ax%[5p$JfozZUẏG$0^gZɉs^X|D{~V_[.2fc0G.GlK8Jg\wj|wT &:y$w% DG9q"\OKQHNʽ0}:&hԧ,&؆w[N>WY ˋ"WK[iM5c], ߢG]ɤƻr_5;Ÿ;5A @*_dR v<|vRsPH-V(-h.CޖYf8dOwɽH9n7Z :4׸m,N ;fEx" SBIuNY\c0fW-Eۖy2ڡlB(-lnC^z^#~ eɝǴH\[HEAe/m Hy0W=]޴XI.wLx |q}>o(!imfçTcI%Vm% ,Cu;h?F_΀zn@%(bX2^^؟o6 `hR5d4k˄Q_KN]$EQ.3IpiڔF Hb啒H;-:p;#he/jkcrͳU5f4֡xl(qC* `M=$GX[[޲¬N&]gDc<&;zTnP#S4pzY9j}w"LFg(/Kw0YO@SNQǙ(Fh`PD//~N!m(_ ~nhR'/Zb_j}2{ߍT \xC89 WUY0ɇqLY,-*-WV^R' ]nFx҃;E aĩk$}{=x%p` 5OT] PWp:c^ :Cp]m eIjĿ2j6Ĩoa?@JL+Uҝwtn|tEc,w-s~a'UA7VE{0ù}W}sYl2pp>x8,:Jǵr@Fqpʱ6-N ;{G AkzwD ńeVGX< >AzB-k}Rj {3__tWshEi,uNʱVn z:*O姏(ю=Sz x mVIePnhL[0d +@qT'!oQL*ħ&Vy+k}5<b𳏃S*WFqF` t ])qiz_l_YwbՄ2033@"fZod/^7{8RP)!EʏCaS,eH{j^Ofj{8佻``3f&LBbnJzϨ$` 5/A[W٭x$S0Yr6]-+B=z B`D%j5*|{UBv7I4t(>B{`8E&N\قk/֩͛6\4E?me|5RPw\ñ@C4zSJ E2԰?pic@3}5J,J (!L@ĸ B5%8DƧDc~{ɿ??ҫW !+X͘3xp%$ПgHL3A ͜Ee 97?rN0Wf2zF}i$5oG:- +9.t܈uj'{Yj[_PhYвh4LzCtC]>9F(U Pd3;QDHRBBmA L)IdÆlC޷=ղF~ %μn4'3돵"%: R, ŢĚ#^X[pI"phaXT۹T ⯉zE @D]@NG`dՍn-vEGpo2V',|FֽMzUh*Bw|e +EK=a@]]9r3]? ԅuRvܝ'ZP݄=_j7xchx *fc)m?/T?ܭ~i1"eoXx 1GѴfS$ l itUcalGf{UMr;IϺƤO+ƅnu%ta((lj;R2ovUºq/ʵi8 RY9YR߽ L )(f#ʒֵ+/dYA,UM m2r|2FUw!a%ѧ peb/.4utk,z|pNR(XO`k԰2Tҋkt%YHܡ5ݕ]_XX_nS>c:!2#qt8L}g0=ʬzGMƛ`oCS&u C}Xw qPפBsPn@p,~z~cvb=ʬD։j]<>#NGb%@zv'V?R׾l^j C.q5ybtN ɛܬŹ y5JϞԀzo5{s`56^]#ڃLwB_t*J_-UJOˁ,=PhOY!dG{kwF"Eba/l[6m9OM| 9B7HĴa~OWϻDI)#>%nA:yBm3V[ HxwUѥL#չ;!6)-c$xFaT?7v ҇[j !k\dRfCQ #5jaKT:67l69dY8m`+}?[D!-i""ոU˲Y oؾnVx&D<bڕ-䅃;G)TP~2r-[g#uro)z*J&x$I$6#e惏6'EYy83a0Q0ɥ$R*U5tQď:٢RV☓Srhi(3ĄZ.2*jWi/[H6T+E9 ИaHA,32R ay02-[dž/.?v8hגxU V\a8rqC<ֆTQFw l-<i@uűC#LTvV8fh~YF3D_q')?Gշ]ŀM=g!kZ(|cOqo{(I Oߘ.YNo[L_1vtV?7y]Y`]ېjP4'vqp߃K[x,a!|$;iw ;|{ \yC ڀ9x>PPy&4?盚ӻaA3v5ղU$dyI FK O_&%ƃN8 0:Tt:Q1cfى@9}hwM!Ӄ pVu>'<=iQmĝөs N GެyԷ/10'ϛ& m${7: 5 !jyvl#.H9K5c 0T'Di+dsa7|VXj >jTiyuժ!C5|"ě-A;9ZOo 9MZEٿH70fjB+BL3Oe5^Ԗ { ȞMx\,үحt=Sj4"cspҌ'uM%1%QL>30o껞`Srش|s~=JeSHQnF֐0 ގ((>y1јIIʆyGhݹG|)=0Pnj0g TqzX)>r[ʮr}oƫZU+!u19[>ШJfl3ZTE%'=\hUh٘Mt/Θ8F1O: 7yj&e;1mLO tL[xOݛ?MK+y-єrETܘ~1˸E9}7u6S? uEpC񅷷[˜mgIVȲjkUvy.*#M`IxNdI,]!Z8|[Yz̾%"x@Y:y9h-q|9%iB8sj&R{i3#%GԍdoC)oӍrD@ +69ҝZ\Ip=CldU"+,wD`"D>%o^xRneʞX IF⭍FzY٫t`d=ܖ-O1>(9fl AXJt7M|}>UA3}(0ZC%O (>E27>$Tم6+&I.J07Nx_{{ >&|ɳ.|&Mح ,cŪ"o|\ً]\2,N6e~/ҘsIdPJ镼n^p™|iPA8 e^a>b|4_mD+ిzb΅s$\BOȜ%ǯĎJ^LBO5p H/+-N9_ LƶUtF&DӾE6P9:E4LdlcdzMm^uE?S!kĺ/:}J),d)@0iy '_y;[Fn([n).ֶ~)~0G(8.K輕}KHDtN?`1i8w  `|su7Xh{>@z{"IV}ӻ\ySZ4/:׸|3X#kqbzsӂr)XUH%_h_{bjnQ,27V]9G!m՗tQkAǪK} "J^1'Bkh[  /PvD*3)GiYeSrabpOVFlPQ]!7Y~H;I|<7FL?Oy<ώ5Z/mlKMH:,uJHUy1t70hwogBz.zf):SgxtXsߒHcs!Z'e,:%#x\8PbpԮZm1&  ![$or+ڱ% l^v [-%l ):N?&]l`i4f+oV̓_Zi+'{11!g3Kb$e/+Ƽg-AՃX n葀r͚[q@W$ԷyrS9eKUhj7jtjm7r^#:;} u0|Nr3$-q}t>ZLx3?hBnq5BUh|sm.Ds#Ҿ,g*EY#07Vd6̐ػr)Ñ,|dcA=M81緌)EATvr@Pq*f=1ŽlI'/NbBC^aZѭH(Q4#QpFOwUgȫ-$\ ~˶3eȏj3 Gv_ @Gx-[,5esPXU-!N|x@@H +L[I>px{4 <:+0|Q2OAB (܋)N٥i]l밠 Dh9l˥WdU;<"B`KCBDΔF/ EITLhq!&`[:;K{5߻C)J״Eצ=^?32^(aݝt[ NӅ}|*E[ҠJwEd dt~,3X ο,LᏩMN/m nc”FUI̤䠅K3,.:Xn$BN˱]7 -L$tQ;7^-'T7acc~>Ⱥbi?˘߫jϕt@`v2&<s3 ETkh VPTr}n_"B>2Fr.kX~26rSOCTlqU<̢;уj:1k_Zpłr5aɴș~vRɜG{@n 1eڲ5\oUo L ;MÈv 1_2^XT t/ }OZ=Ĩi]@EZt0D+i9''ɷearhۿ+kBHMXu/܏{*;qH؃A:ǰp7-g6֫7%6MX֢(߫F3!8d>os)1ҕ:O/d + 1?]bw*Z$|–*md_aTgkS<3A6I<'ݲUR|&G8' CUafҤL/'OJ/,Fx5GÝPnW 5%YZ RvHIc@l q/BzxwaPoO^@v.*:;7n'B9ۍ&8Δ?(ra{ЈsC AwW(oFMrNpLqz If4 î!b,h^pN#;Sp omr ۨJ-wX}p ֜Or!Xxf.E ZW ^ \s)ovtIH5#.)4\mPjYONOk ʇڷ [y oN#_^4@]#.)Tz}Lެi@Inq V! @do4^!k8H]zu w '{Jl)b |L Q$ )'H|s5_ko:.BZrt iǴUtnwq*%o$LGPf(|o4ܘsMtyϝ EihUXrʻ:A FQ3|9#v98og'|`Zƒ@j`"1T; *f+m6ZevSS2ZrJ#8hnHeT9N}ug'sL jirLJ} tjwN`VT@}fXFE_$C,4I2T@)]H K|J!_} CsālVKsi$L-[Mbh].3c!XhgMM!4E%w? _tBKwgAu] y3c)Ja@{~":5^j#M(k(Ј#fr:H8u߯LQ i$H{peSwIbYsKDom]s0iجlw']q$T$>qG* ZZ{q/c K !rsGmcroRA}-sGM׌ 7ӫs貓mcRE[s %T&".f܇co6?\=R:_sU+|+;ue&j:=0tJ]1F7H2zۨ>#UBog#Jcƪ }`aS8?YSίf"]ZnJXW^O4?*ނD..C & /VQ|7]f-<\fy8wi>a{e 4w S+4T|!Jb*j.]+;5rpREyHd@i.Y`H~/)'8Ο lt(yHv1Zۑ?lp, pQ}MWa͑ZXҥJBܸѐZ4᝽$b9Jkύ"HpQȢpEj@tuWQ~yk\/̵54ީdn bO?Ls\6]ZQ#/a !Ȳ'n \Rd D(C5ʒŋM,p^e^}+l,ӮXu#[O%+_}JTb>ςN0r[L,-Gn==/`$9?_ih-]"ɢhbV)6g NDJď4w'+Nyn=ܣ5,% *sV5RSNͻ6+ʓw19I)xY@ +y`a3/NF|(1gSw\_>N%1q8$H籉?$9#Bai%Qi!F9}:.VJ]c j=NfCU~fW%4n4dP}x,Z̻`el qXkJu }⠧ 2fSN AگOEV/ 楧QbG1/ljw8H5|)YX\ņ OgVu`3PM5X'jD(ey-TtJD%~pPf;#|ldi]\3gT,YJ")eYM+ݯjDWUXqGR)͚?2GCGRZ%j :<ΌD[I&k#Dex9vx@Į,fJ;Ԟ*dsh_Br\ig~_Xpoe6 і@h%<ÿz510j;;Gk]Z3n'-Ҡ0+m+'Sd-DPx$@='~3u舱\m'a(H*x|_uj!)6W ,\Q*%0TIv=V+RFnS*pH]®"olW9&BƱkE%Vc2 BF(Oe&kBٝ TԾԒzJ=d `ws)8ָ_p'v wjW.~PӾqQW*ѡNi⠘ro.B\AƉ'o(oY2Wh^`;t"hఆ`v،,g UD=ڊ$ނ$ $î:f g4"#XZXdo ǭgV¢0fxx-J`{G\KSNI=x5ˆqNw7Ӯ rj[3,')_+GQ9%a|4ħ+{f9 9Ej2'vGwтgi1g- %XԽWnNaB 2n ᱅&Ym aFλkHׇI_'j-շ%<@J㺖@//Dk,~OAdF܂#ʙ} }IreE~c _'!ޛ9MhHX=w>a,!ϾE3켞2(jmDeaبt] ǎycTLu젮G*VUޮJ"R5jl{}phӏ] Gln}yX0_,Ξ_a5UqNާ|r\Wkc8COz#W\ E%=d\Gy9E{_gj4ZR#Ƭ m AOb_ăSl +t{$"vχ , 2HP鈰䬔 g:Wᱦ {]nϿS}1 ;HK&O3hz"+lairF\S:՟ܞ6VțQN 7]׳(6"9X3#S>8p~hQe%muTY'UV0Dlo. #pjXV3JXߏ`"S&efËOѦ4O#3L/*f00@}7IdkA{X4kʮ&S+`NSc=M#%=D|+CҁttN&j]}>wm^9oZ^# GѾufJ}mUkyu_!WlYteM^Cj=n)y4ZK/삷՗ؓs]'4Ws4%rSEKhqJKP)fK;x/ c0Q ej e9L Ut J](2ʺWgTܟBYh܊* I[{ p?ֲ+uڠ]K]vQmBD_"{/Qk?Uڈ8L 5)\{e0ybbr1A=0;ZJLVyzjL/]qQ22V:J~jų_W;=Cs+ D9XV},iF-i13f}t^>D,p6Nc6(ldXzW6G>cb}2һK#0/anyl^ kM3vH \4Xh)! x 2T IjNp,Jgoޞ <#j&?~5}C`MwsMj(wq(MO"`\hx ih5Aؼe;N14aμ]"qb+Dy²:yh_IOgxsP8=RmMGKb=o~#pQ$[ 鳶0_zW:7B%JLިbrYF޾ 2!rr Ҹ?WO&wS~y1|8N}FR1 ֳt2!1CL>+PʅľDf|iWSuOn> W2517EÉ'Õ,+hNɩ {8; ޙU=h|QIa4: p&<!!>m%!!+ui( >qf.9 c"=M<Ϗ89.l=MRmu; 8pm>P%iP0X 56SE`5|In=" P)bV nyAD CaqB=qqGtխR *#m9afc.C ?c(nDDq=MA$pP@D|zitBS4xs7u}?6NΑ$Trsm"ZkWqj*Zu}b'tP!E 74z  Fg> ܣoRw/. Nwia˩f?7@>럐M޶vx5sK k`~~tY3¥M_8*zx4nպ{]u&;+'Y[f eK_V&;d)HRdaY1y0iu u[ZRHLȝAO@WezօCsAЋq@ԀJ] Z 0B)zнk%KRmJp,3G4WڛqHJg5E/)YlVg},@WPDfU&ʷPǃJ {gm|.:CI{¬Pk#nEѪ cԡK_Gې~+ 8"WQFB Ob6lq y29وb3%G7kF24dl ;DЉ,FhJy6ˉT͝ĉ?t$ a(g jpUxv5Li4Fy#p/n*cQ8%,썢?#;TaT c#kj+nJ j4DA}9+8dI 7d+8R Bܠ=VrR_TNp\݉GDZ[uT2Yb6 :.7OMэM^W>c02boՑN/.5_@L'aWX.&k(J vA{WEK=QRHf^r,U<]nu8f߫eϽLh_x$9 cIÀ~+ W¦G\H@ ᅰ=)PI͢-1MN qX0c0p'W]zECơ]L;5L{Ws$8pBNX76: 2mO,uyU (b.n[Q!q| 8c*Ix,6}^#|sl V=o4Q2>1!5uxv#861۶Ea#;4KoqN{A-ՄEO 5)IJRW,[ҫe hIGV!r1_(DRܤ%JnX(oQS떲DTS~H7 n~1>}މm gߠJ*̨qB&;>͉A\W*!2}jT9a^ܛt g@*hLq.ȆjU^[6} ߔ?ĉKN :/Q"$K+^#ϨQ p;wIEavOLi%7[,>k_ =`e+3SAlM޾+?kVvGv`9?>e%Bp4#B䒓B&ז(ײ׾/I]qidF5ʘ<٭S= +_m(t0Dg87Y+ӟ.;a]La,xRg[=e Z3TwWQMCijKg)5-eLZ)_ܠ HncreacZܟmS }:s2 41I ?zGM,\ݸC_d @9:ڥ'H?ƞ5<9iM07Pje-9u1Z&$#Y|{>Vn pr%c"<>[|X)`lj2.W x:񣋓j];" W ;.Ks *LXl*~+LM: h%{0{׼ʆ_/$iNѫ%zq.#gͷ @pY AYR]njEXE~^IleU۾(i߁1CtJB)XIǞJPIx z@:|ɿ}bꢩ4x>y-{L&Q)l4bFt hESdt_U7KrźpPcz4]}Tz֦yr6z+B 16\TɣᝍB2ZdO:32?L|""AJ%D,U b_PM ,7A+S,' iN?1MLw N@ɊWJ<|WgTTU2v#fS9I9 8u\dyc7o"Ǿz䏊T4ճnk+LKP}{ԇaQ42r-(Y,5zg^KMՈ=({=3~3MVSx~n6FJw!s<7n4^ٯ}(NPAoFUg=3(@v2{)|7鷴[<߶k#G:w OP"lG9;s"a)3CDuD~hC ׷"Ъb%xNW:*3,mr(P5%ͫͩ{4?9RT`3XnluF CmQܹƟWnTys{zМ~<om7)PUo5o*jPŴO8@MrՓd@:}(39.K9s0٩H(;E}ә_+bs|l(PMGvS%8Lᆸ2k[~H!wrUk;cJ LjƌkrY$X0}Xܲ)‡@9B' ˚߮39-əCpGDc0:domm3 nCw)؋®mԯY~ÞI7+Z\ TOgʦqLf^QwEL@o_Ot1Ќ16sI0I}Q@w)#CYb͇Gpҍy6zDfGZ}I|uZ+73C3NE+VU uJfjЌ gnǏy@ ꄏ.+FV?iMR1&g~sǝۋEyZۻ{wSff%+J%ydIDIb0WnL /xk5o)mQ(MyPCDI#V~66в4T65eR)?霍wMdADsb42qcfsxE6@e69$C 06v^">O=߬0xYs+w+tZɓʮQ)HQ&B+Z*|EEGQߴܟ)άmyf̱i6h^O 񂴪Pzk貫'sz",w \{;uS5`wşܞn&?cXv@UM&51ُ_޽6^-]X~2A2gXD J/mC@aͨ<&K[3 /-~P4t2Kma83¾1 {nyr'T[Bz P]"B㖇$Kh{-y_96oK1k殘ԧxM}t? 1;S5TX|1[ƸA*n.yl&|Rfɰ̃:ؙ\KJPը#t ]/"|*HlFW!.ց;ŢHH]71a wuE  d{y m햦/O/ef`뇕0Ӭ[@"l{JAov1=V5s"E+nO&E :#ʠS&}`ZNYwDޝ*Y7S6~%iN*@QY t½5T%xĒqn&>}#Zq8kq*#nVL9A wdy=R3[jTwi'Xf֘y"{rW-\^ڼ.:l\㢨|h>ayI4z߇T>$ :q5ſ2gl @݋}ed*]euϐDi,?]-?Ƥ/ɚɜͰMp@1n"kOVbi&c`bL2]=2޹ٗhϼ. LJbUb?GP+R ^#^:T.d:qf(˱r66D^VB'3R?ŹFFf@׏z^ϻIl> nSAq_Kga2vn۵vQ2Ee*32EYanf y[yBJ B+uG;b^83[; 掖TOpwM-y/N`4N + vŒmHuݳ^wv5@+@7z?@nr7 u(alہ)ZP j^+ɻT,78rHfxTyfLb5>'*E}cpfEjg_"WN0r on>#ŸI]=pe6go@|_i*(nJpg/ "I$@6P[NIRnoQ68:){0a:8A)Du [,RQxEAo<!eEsQAH9h8&_ +mU G}S76L}Cr*}0"8C>IxZVuUwQ@@ 2$ Ų%MUm4]>:l}P16AmkJ=AyГ̞kHkh/Vxn!]C0ծ}!cN..(#v5|/*E'GGW2G+x#wv; f%d-4xj_ZԒ1xW4Lh"»#0@ TyK ``SAg/6CB<5sY1ʙ`#ѳc15DŖ@0nXFTe{hBwl sjB}<O c:®l؝Mb.}!p$A}ns|V(SAƾ*9rf%v'0E&)7b"ći/GcY/ spi3?7]lӉ!31MZǏK)4L06wKpb躙xήUH&f*oNt t=t> jKqw6V]H҂D?TGAۧHodF}!x-HQ|j{ S"tvmqGB%W<,11OUp9@x=vH\8Me[j-K7t",o|4Ps7Vzpŏ+RhC0^L lI<\/ Ogm=6STErEO%%;CU~Iq,+rTtJۦ `,ч$:igDy,x_z|QkD DX4X&غ@^.Liȓ=| BY|"#Ըp (Vΐ/B3MVS/\ uif6Pl]+ _g 6^;2bj~VK59Ԫ1%]͸zEZߒmAL1)m-ĕS Mwdv7[]Xx,9}lt(,=XòjDb=9 Ȋ%o1g-OlH0/Ž&5)/u5_Rwt͋6Iжb"F9X`j <2D j$V[*x)44F 7 ӿQF7k&h$"5<9;$wm:Wb`x֝. '`w)u3 '9?Wk8ϫ^:ͣrL*u/{;:xl9+o)9nA-I+ʖ ׉GͨjCPxyPû,懙T-h̾U")idY=kGX1Ungey[VwS)*t @.ΜPܞ )]SS!4qZ,"TNk k&놧F-9ӛk84RRZB;* dd TkS[87}Q2eŗDo֑5!3BϝMPw73eiՖӖIwq7%CP-41QOUj\,4dnK Ɩ2b e#n}zr?_?J=x{Μ'A>Ky|7J:#Ni6=e9Dg^7q9[B}NuqcVRgKljd-E^ Pe*W%6-SM {siV+JA6x >3%AcRη"E51WQr7=wȔa %{+z/]ɴBW͸c⹔EF#7zg!|4wcW˸'&Qw2RxL-yPd}wǢ?1qˏ2tq 1qUqW|%do2='W?0f?@χz}_T HظP`)M**KѓJ?AГ{>ELKPfc/k`@%7ٙlPo82y8f{wgFէ2,zA/C|HVDpt6oRܨlGN*eM`+YXI0(ƙ`X-ć. pi{ĪZ!Db-UB^Cy1:^sx1HĢ{l8bXz F1 F FÚm8U+'7NfU7' v*1U ǀPjSB/AlGh;\ךXT1"}_GɋFdj+  BѨ vy ?#FǬ[r΂dzJ`=rj-,TIzC?l@pXa P}lp=759nH $|LʎvEkG@lb%fY"ovU֤DDIέ+dkٳчAB\C1zCt^#l^ cV m5iwn2ّ2G9vr-1R.a6U=7mJU&bsg<Û\bYv=2Q4Zf>NjQ]% d҇$GA`,kPW\07E_'QG$S{m*6auwR8F50Pg}T_][)Xmi? Ӗ)N<4Լ{1Z„ {W/ zj۞S0kgToL-M;hcth+ |Vʇ>vw.-"m]fh{Wnj0׃;yUg.spesy$O4(š ѣuݔUqD m{Õ%/OwY!3Nȫ ]v=WI(Y9Ϗ#S H'rKmS>mM ؐm5_'Dm.wu"[50~fQ%73VPM*`I~o4U[t٪A$wR T.=L 械HM0}FHNY!Fe(W0!9:$?G TE&B8d18\LJ>]h1\!?98I\\X$xE7BlR~,y '-}A>͂d :vcB͎|"|QYMe\ i @V_~Mdl"\Lʢp|+9G(cxfo,R6/z,YM >"'V]p3jte/ԛH:`h+>5=0ćkj ynN j%1GJ }[6BݨXC0 ] ۙoQ >L充 ]Fvc'Ɋz(G޹4:@>znhz2`L2ӳceN sz+QfGtgͦICFX(HQU`46F#~MoaKWrj,%aYLDŽEčD{jE# mE#5xRw>߉l>,u֖ ^`R @"+ڝ[0d0u<@=FBna6Sob*c>;hW0D6Y&NF<¬M6ACk52KS4nL$ʛ,4Ox]2ظ䥍"PdCyHJ {{eKqGg(q:<-CjAN͙#8m\$D2\YXkSe\p*hMV1 6412pwR3:fe~˾CN{&rCjE[ [P?qI<@qarNՈLuI 06AqqkBj a*B'@dqWd~~T'&e'kUeB9? 0}ц% 469A#GwrvCC3" <Ȃ*P*In&= ;U~HG:Z:gFoX_ N g 8>O.<,uMc[ʼiOufAY 9)+АZ>6:M {1H1u20Nנ}}!oV Lץ^&׳ R>T.{7x@t"Y)f0ԿGCou; cn]FLͷaSFFp v\wj\@gaWּ|qy(F? Oެ_\ =V;B*cS԰ٻ36&Ùt J[Vj.x[lAF&QN' 6+@Z{ RLx'oL03UyՇyɊ\'OSAh55_=# -m&U₉yat y{i03bHm^$rHTl28iv+5+\lw2>gwֹgR ޿vAUTKԶOCuz9tq!hU%+m.=I;7ޝ[e0z3|$)cp [Xa~|ӕᅌ4<>2!3qX{k\.>cHX+QR9tOәMo; [CSḣ !iYT[ӒIqe iAy si0K Eئy^-4wl7A^hKBבWHk䇰0q:\3 >jMj]NgӼ2&:v680`v׿~w?Wլ` &/MEs-ZSmb%LYFs=}iw.0cDfzGl$g:@].a8M&Zյ/uS%a8Xc6Hr{~wvbSx/{XʐLެ'g]r3!ˣųAҸl:r[!G޴raSe6/,Hs*?/Fel^Et()RGz6bzi'E_8T]jruj[ltejvۿxIL0MÜOeИsNN8o `Irn0\Qnj󲙊*렫F"Lm+?&S0dH<$[*0y'lKf_s>X8Di[M& މ<>IYP0x{' }VD{{>^}7H0&^OԀ _jN>J\6ubvo{{ M Gb̿T!Np+ )Óiρ%&;;2B~fzX˜-x7PC]JRFt{DViĩ+AL* d/<-*'}]u Ym4B\}BJoJXZI@4KĞ<]uַ%?DbyAy:MJvNɉOp<" ,k iUPq^3&),\P;^w ʋ-!ρҊ1@{g*2sHcl"? &\\sLsm.Od] Q6Ğ= *չ5j+kCXg]{̢!8q\͒F7ٔ=TΆ'j;: / շDH)`6uuO7bqf'yiCw-#8*vkVX^Rm7#Kũ"vsY- BCgw]9$omNy`Q*7rݰLrT/e-$#{?XRޒ0ɁaTѣ~%EvFA10!f1tu\{^x26l2Bu[[b3A?p ǓdABFg0Ӄ@ZNB ޼8đzz|ixJP NH)@dbYv.IkMZ-J,p d](;^/Tj#d;}e-,ݱ~1ߓ;X> !#fѱR0G9,o+;l17܄9dMr#j9ȩ銔|8)eҵxbE`!Q[guo=~edB!/O#f TJ 9V{x\%WU8V8q8T5 ta`:7F^5A]'t^I2M+F%,Ud?*5-f,ŐWm5d].Lq(-Zo {kjQ.I텳!Z>m4]gl**;TֲIxDwjK \IMF#X/Y3-2 SX - !,r í~s<r>RU$ ڟm Įtj c!ϷbTHd#WM mNChz,<7;NjQ70lKjleT6+6Q}լ)^ZWf#qgKDeEH3w~z;.dt/4ZiE t+:5$X1F-) Rл ~҂+UN'ВL m7~LvFnPլz+jB"1`ۋQ 1PbJa,uw^#Ǘ dD˦Wk.*Dvݯ;&O;ý9HdqvxJ8W!wO~_YMIաLd"rtߕ鱛qm,tQ͉:iDݲ~X%{W G>+>f%"R\+eMR8v i v@%FT6MpcdP~v%";B`V /=s+ٿҞ1!cH?o[29[~IPJ*W.>6E,"GRЂ?-5?EpqJ]tbav/{?Кf/Jߛ moNA!uSti Tp :Of"̷.a&XH<^O ϒYuv͍T׉ⱉF [̉o)>cޗdtvyS:mar?Ò<"ߋwH/ԥgHj.cy.ȯZc<n"jYƜ'98|Ff#+F7{@N0 P .pGJg yJ>9Fbofsrڕ%q*4U6%NJ AAzj|3*HwpΤ:>.# 3sNa?y`dT6ٍ'᛻:ȶ阡؉@ 苆<|&ӛ-%+a^o\^MwL,:rMSjߩfz7r](TXTZ)7v+>~lD*%g74 !%Cj{*q@4"9L]7cae~ӷ"> _ƴw\j+qhܠo>T;#jsfnu)33UlR'CuD%QF~"!l(cWA6#V~$8ob.4ŻYٵ7V] |:rG%}W5cǕىaN3K[?2^NɩG$`ƞP3 (>)~v`T`oZK/_P.Btm?mOsjx¢^s47ۛ[×QI \d6 T?xx!25j IgOie1_3 l7CAd=s~5;OV׶i;fE4a=7͹׻O SʎM~m w=Nw>%t׺r"ː]͝*@@H?Ed~9QByuե ¬?iO ɻ3)j$cOaeY/VGo:W7{p)(Ln*^N> j?MH9CW|CNwtF~Xc4.%Kw !_}K\9jEch-!b@~ӷh qvz{4CE4gE7= ,˳Ggh]S.?SF_Y1;/}]g{ⅎP:r,Kڪ2? yZP.KN<lYlWFVz=A7hV$L:  !"e :ժ>;R J)[i-jBQn r 4*r.x5MLF{SW#QIM* jJm:kY@;;5JaW]Tᚑ`k)p[me[E-& 4^+IȠDzKa+l>*122!ˆ{G !DGG_J/=`c&j'78A 2v^=oh;~{e. eD;rZp Bl&)乭{Y GRZ!|\FxUϮsa';z=-"xePUDҼC?C:W) ڦèֈTٝip+ L!goC,q>و Y@i #a:7}וpbCQL;'4OWrD8D\Nut~ $LH^է"8_zs*/0,a27D߁}vF\qUT5ĺ%5Ba5`)DD D8i+@n ;ɱ Bj2S d[>QHb1ɒFɖS/81i/$w X8,|$SE2âYR7χ Û:^ 3݌U+_V`2Zh#J|xe2EEBvB}X}gx>.X\<9?+IK,A*6@'x`q1 tȖ6KM\Og:;=>5?fIS=r/Z~XUhY~^*=API.jhY=*νcMY_2g@Uu$YІLLDEa wQ%+s{%t< @v“8j?[o{CsoپW-䪭UXek߉@pItHr[\m)[8o_00vϕI\yb-0GNML= i!I0D6=Pʦ @Wc'`[j*jx\&o5k7Q2AL],@".ʼ\ & 0fKeH}BzO6a"`)ٛoֻ$F_t<[{(=N#I_m$3M8 ݚgYu 1̼QA @66F}p}R*jF8qZYqhet[HJB8نg]EحקγµG!#_]/,ơ778( !!a/1oDR%sa˰4_g`4աTivEO8mTvde@(<}:1R8BI>Yds B\vzdݨ$9Ⱦ [g?P~lZ@0$"yVTNZqj:7bN/ b0fiT^.1KM}L&pIh7C?#ke/SE мr]ْyN00r6JpNjŘ{|z?hSSŅҬGwe݇A:$#Ukvgf3팮iG.Np !qvohI!MrqH {ΐYl6s{k]W N5!xهQyٱLIkqc獆ڶH&췬gRdRZ_]|~&{[;z(4m\Msn1U3[3(A񀱼o+=tj4 lnD(alN_Z16HtF\.ipx| Fc,i)Ƕ?쓮AQEs#dzu<L\IW'x/|Ef% Fpc`Ag D4ޣ8EA(e-V1y\,ŗn&!(@v#frV[lk7kJ+;."&ΧPY+5}ڽLR$vEuzQ>{_lu Ҥ>qCA'ǡNtx,SJ간Q'$(on-ҭFRkw& [*iW X@dϲNa ^Һ Dd<. GTi&V~ L2?xv*ybK.13ǣV ={?Po k'ŧNRS!3wqr6Y}kB[ +,0Yy4L.̷S?0Ox̙2/<@Pb g֕c|kͶ\8y$ @<@+" %dfD`hɀb&(:JѾ >^4|S0B בS>Pr厛)@ b̑8ͦSu$-c۱ ]i|> }Vvd֠93x;!htۣ^ (VCb [4J‚FڃnW2@cȓ@qrqئɉKO)q[%Vb-gk[x{>UKoͨ q)+c?sHDyS"S7sĞ& 3 s)"EE#P0zvߗ`!L>(=m NJU\5SAw3 G5jfη8qc4/r/b7uCE1;}ņ>"w_$JN2Լgt{ `?϶$ %Ox 2ow;7XBjL^Bh4$2Ukn+$9PE2wmѤg^Ӄ_E<߬_~H{ /q.0%J}٠})pghllu`R*[AϋM!*v׷pCR,Ǚ~LбM@2+o*_T[=zqDŽ6yCiJ;-& O8;l_p|m@c"_SpNټM+V½/y_cw=­:uѦȰfn;wTD Y6\E>pOrw'EhUԐ ^IM0Bgϴ6cIƛW;&:0桑*rǍ Z}*^f e_d#̋Լr!Nx|n[4 qoA*o ee<dT|қA*]1n䙸o`[h.8Pu5g9׶D9 :̺p} A6p`na*[U]PQ9/ICfn?0U 8"zW#g3gQw`zi;mo wMe,~[f5ί!^fgȏN <-·^pWaş-L*_Vp(.ϩ~. [*4]@O'02t,p 6t{WqGU+>!HzRMnn+H+1N})V[E&Ÿ/B1نV+wj V89E Q׈6VS*-^Q YaSL@1,FR>/I[Py^ |ȋXֲpl˧kY[oY.[{\̔x*0n҄ y7.èɊxcÃvgYW̓#K Aڂ6Uq8-y>pH1tcsh4/-g_K?L c^D)q%Vt6VF6FRnpޑ~[B;ؑ|}" .S%kHTw&*4tE@CG[2 Zם<i k3 S DYT%"yEÅ% =Ig&4w0x{9j;qs``l;ݖj$ d%}̶M\(5u!/FI1g<bȞn;bO<R q/+#q̏Y"1;`:/iWcI |d?i]dׂDCe ,2 4VԱ()ǼXCW?;$T{7O*\m4'fXtgbfp:35O`u[P+G99t\o]9($5in1 Gl O'dVcK? 3{LESCX/O>p˄$:ԹT5718m@b!쐉d*r*}w"A&9_L?骃y0&};PӰq4fNJnΜuutBM ĘX~bzաKi 2Kߪ=˥5+Nv hF RPÿ{N) $J'w`T{AC5[$^͚d_YGN*! ʛ{u48dPk )ʪTnλ M9Da˧6j;hGA7勑yW,&[ xt0PNyq#ۂKSyx oZ=\ã~!'enIdg036"zB5Ɖ]Zqz z֫TΰnŖmE9Ql]7FHk#탼lU#b{ >\# UC^fDu(߆Ɩ$Z0@Tw0'Cdǁ7x^g99_se~>2 x x~?o9:l㳼- PQl1m (W:4# '6|7ɱ[>iD*3v|tGټm^[ g( {.wG}Z '~9^jz]TW WAR77 uȺIR<'zqXdTP]ytpz޺zlxGf,GPY"Lވ` ]C^ x\*eB↞hyx pLG"!/c]jA+&hq z3`݀0l]#s4JL-2MFs=nz8P7cS_tSӰCA}b7$C`(_T](l躀XN] *V>wӀRR9|9b{hNgW# \|*u0y܀.ip@+AMJ!3av"MWr"?~DRNtkDw׷$dƄ4+SI$׍, {IlB ,4l ܱ4zT$tVf]ρ85#`?QYi5'ћf 5 *j}*;eo~zlUw׹muVlCG/@p5g'DY{-tH#iwQc=P蠮ʶ`XjL)tkY}dl mwS@.ByvST8 \82tnG ;ha6ANzG -l+dc$Sc5 {>B9S:QֵEPvY:oҬT@ 5Jьz^=HQ=ϟHXAVG}^roWlZ-k#~qg"5c;{hЄ BUq; \/G:oXv zӺMeXw8Hp`3PthN`%U +9yhrʲyos@Rڐ.'Lc6=2vsCS9J-OL\ᗺ (@zCiKdUΓ9D_o {goxgn n9?6Azo [ \ۭ9R72cfC?ba+(SѸ!fט8e&Ђ4I3? F@ABu+@l_ݢhEMt&Pg0wJ(6ԩ$#呣<%E{=B]<);,`uoD3Y. 8598sxQ&NcGN4YT]6j zLlE\M,~/c4~E7ׇM"_Yv衣Qdگ,ӓZ0N\o4F}ZzݔAwXB'A٘^U c*FB&$}g>?_V-]ugY@N/vm$_pkC`rX84z:f8H[yzݫ m Ǖ;%-13#:Xox+Z_m\4=g|bɾEw]f‚]X D~0ۜџ`=H(90YeŊ@R]dGM/4lbg0֣͂֬7 |XeW6}:c~I+UcݱMkvF0d[ILVQ~HZ{ +{h3ɭ2;2r p¡ \)\cl]C6 ~+*ޡ]=UX{U-jļ#@`8HXs69Vb"8{#j FжHW2kh?*^ P^t2 K( JO`Å_1(ߴשf=c)4px̩!x٤HNC25(Qi~9SYo9U"o@7e?_@(A_j'\ ,r$RfB~ b1^,yYQ*H̓RyQ7BHqYI1#~6 wZ"[f*`Df6ѡC~ϒz|Uqf=4 PWZHβ1 3R4} [3lRST[`'{yj'<3ѓgݙS7t4m)R@sũxE WU1@W:C]k>,9R7kt# ɌrN;ZpX ndIIZ ѯU$x|*>fkCP^[۞pSN~JMm? gԻ!.!>( %9:6/S9Ť4Ak3w"k"k1vR r12^Dhd0S5M7{D?cO@:/%yX^m$bfx!E9-AO ^I {蟜ێ%uE >~t <'VpLqCP4?le>~!b~yhV9YPYBv}M6iƀ }I;veA"H /f Q~CO˜سx-UQ^eB^J-gϯ\I2\!Zs43 0ZU xh˚ Dah ~5\sA[OЫ i*sc2>?.C'|!J{o78[DtQ)z* '!4Y`ЫX!5_N6J;Vub ,!yz{w)|*g*c݊M3l0Dhqg¸c=_x9lG IRsQ1]#wF, .ji^v풶o_t,|k~7B87_71ט9XKO]AtVOT:(oSy>Upҋ̕<6 5asο9ߟݘttUy .ȂQ_pB2נIC[U4Ig}N@I]DQHhtLw!7 ae©te1}W5ЎU`_b{E:*=FWl(c/yvnZd. Iv$Wd0`4+j+QbrN/9 5VCOojhVdGp4] rlޠ_u 6a9~PEJGa{}gÉ+heBo4*ʪB`a4NAW^P9@Sʼ1wksOs9Ck_=K42߽v@R^qzp^ Lue jU g2ɛח1JH4'O|Va8 ޽c| hE#tՁ(3;N.$ϖ(5:`--Y,X aq;K/}wKLrTcS_B2PEׇ t"%tM1I&d&1 l?Rts64-P"޵}Ei`xr^E1'^MŸԵpxgtoZb`maS2tsb Vǿّ !'%}Vru )X}دIvz+G?MCq!n0SȺKt{(4;A+@\%^7hx IkD.VIyG;PjeKʪ?jmU);5)7k4j;uC6PSʫ'P [o͈XŸJrV ]hQ}HlOj\!rS9g:o/\ ]Q1lAKe+vqm2L XJvT!gEgQgϜ"SC d_7ܼ;>=_$P2fn SYV! +U?<|a G큝} U!9PlVk݃X:g0uf!o5=PɲNvAḟr2Xr& )e?]li+"4/tb~CY[B :'w֥ǒz#,8pna?\IJ7p}Jw -q]r1O7é5#+Er?v^T0!Ÿ,+3VfpϨh lj _Iw2&IQJdT#C!4\ 51kd8!y]04T5{S/Ԫ3.7DZוW|3tic6R"ަ6-2nOj@R$!VII!EA#Mנplٚ!ݭ0m ^~2MBa 6S /OyYˢ^q_y8O@/ Gײ:$VL>]_(߮C%SPk@u]pzrKz4vd-(Y'%<>se$bQ@Y>hOȜ>kFIYbj_>*xt. *'|lnG/1ܒcPu@ś@"z|yz*$ VUJt?kM1T1zWu~ mJaǬRj'žbZ#* *>__5ک[::B%C'YQݺ\8?QqRS+RS[?M.Z{z]^Nloف ZqMQpˇNϲxw# ۈ,@1ˊt:?rt+U>}@,^&{*Nɇ0Co0QJK^ 16uFQJWH6T|LTqľzI"eb\5$J0nj +x-%dSK02e1sy } t?}1hI/QRt< A-i2KxG ͓Y{;8F4Jiq#P7*얠'yi^]r&%mb카)ѲI\j!gPVa5˼h 795#Pb9kC "s<1 „&ʖzb. =/7|ᑜM/Je$ƺן)ŏD&NSHr>j?S^"!cfg'[n^Yf-o${2|vBZ^~&!'ͧzORClL ||Pix2o<#Mڜoݩ=:Ň\=+8buuPY#gfluT+^e[]`7DfoC!5Lq8J+H~$e@G𸳄XC ) ھ`&Zywo g&Lg!nG_'&EV>m'VWf︫0;JMbDn<rlA#TPGMlYv3EGՍ$q@yx"-v&^b!XT>+*q%_Hbܟʍx=O:pi)ĝ4vG*Ĕi؞`=YTI-5e6qGRWRX"lCJA3r~uD) Ǡ/CkAf!Iwwed^NEȪpGPH\py>X<q`rR0I85P ̶\.32u0fczݺQp61y{,bp0wQkMy|#TOӟZ2ElR۾ݖg`yFY6p D+/ (CyDnCEvl҆is4~.eZ ,$#KYl|7(fs rmUW4:QL͞3BxF^?+꒷4£EEK)t,v'{b$қ\¼XژR{&H 3a^:`:rTe迫Vذ[-~ {dn9y=".0].K_;;@P> ((?ӼRb+ di/_G VCޭ'p]dguBx#n}Y _6q e|"&୶D=fB@F٥&A^b[sEc+ doUG6! <}!@aCÎ@v.3n:ޜ?Di E*ZJiquK/c%ZBZ (gӢuiꁻ^k ҦmE]S ],h;I#=ag$DZF gjkgS,Ojvu觢d}4a-sd71"&fD@ۚo(~qP*ٌs9iNCw:y P'RSOP&GUa_4Cq`wzRpu}hb:^AtOkZ*-+3P+j:\]rx!}s$D/NˑXΑ)';$8C,~Y6A05CGf28r_?k(Ʃ^2w҇N+@jP֬0AL28`-`zqk⮂UrjTgPtٞjh6d*R?iK΄O֑hA)1* 57VȮѽGJ9*@mR~U,!P}jS%xCβP+ؗ(0YO: p 񳣠&yQF pJ|=Yͤ/iBEJ:7TK谦 * |w}ɾal+ Q23G͑iXXraÈyR:tx8 ΄}p|Y֋Ga=@2@D\Z~{0(XBŽyHFt㜙lDdCQ3O⊾+ Wx#ys'ЗDeguz3` 5FT|́|H3~]\Y!{M+uϷw&\ "\7YXؓU!xq 5DH392E)oNKhӧth9w[FN'C,uې48R&%iv2josFm1a?5і,.@Qy2L( ^m('F@+L— d=Wna ]=\k҄K+dt[u/L"i<\p?A=E9$gXDFϾpm yKiiJ%`6-|l, U/j8*DAXuk&ޕT zBxa]iԍ| a<<76oI))Jyoi}=PTl cNwOWAZWub#a=D<4m&C<٫PaQٸ6]fj)9w:n!!H>9M;?, =m]U0F:Va?RRa=AU#Uf8;*fKMV8 yN>HӹLI,p̲6vN0'xKxoe K>im-{hDNd7mg XGzI܊WyN2hH>0jýEc>9][1`>z ~>ĉG5CX-)H=!qTF`` ы!&c7*%dC`g]N-q~Se[F-׳O7ъJf<B.ɗ%p7I7'g#?l2ڽI>gdi6m~.Y.pN)2b]?i7<QVz&AIHp&A0Tɀ?g$IwD49!Vl] nHfVv2! ?ebjXQvy.7`dnbrbU]\dxƭ[vb趿[E3Y2n99 &09G\O^7%NX_ @tD`y]i}ۑ_*RSÀdwn24Ah"s36Tn! 'Mܑ_h&r [m'XfGw.8T/FX#WZ#Xq Br͕Lh~stBx>!VmqU֥ &wuh%jSeu5"P`v4T&׀'E I2g`qA`ڲYf/DP(4z\"ᝋC \!!{ZH,bKZԁ~ М=j?RU$νC5,TvLTq=X,M%8O`b#W-,f.<)[:A@DѬQcrO|"iJ{WkLLyο2m9m4[*Ęc45ɸM5[QG2 F]!yWl *RAHrt6'uBCuR*Ӈ Q(T[:,ZN4闛ۢ|z e H JiSo!`Y:vT?7Uk "uWMm)xa.ٟXs|YkާȰ9 =T="[)C܇_%8 ~pjhpy9)0&ӜlHnf؅jHг^oOYO&憑l+XPBkuqR]ȟ‘/cWۛ~)664@RjyeDHP BD^G!Gl8a)G\\Z9Z!tO/*e:Dz9OKHMSܫ?5;t Ac ,UBb/(pc3a:dqߑ2<fL fΝhBg)GL.@kܩJLzGi&E)&eJ mHQP&v% QkW、Vꕎj㧀85ȺJED/ajڢÞTu|FExyouSkHz(,]m\hZ 0ҳ/uǞ6DcdC:a~"JlR,ϠP[ 'u51 k| e,Mًٟ{ɖ]/&9SC k]&\ݝ [dʹfmB#9b#`a20pky1Km3fB^ҍ>FoH MFq.`hC h3=w&C|9Vp[^kSҎΗ' Ipќ C%˔dֆi> cQ|1cᝡQn5߲ȋqh$<ٰkP0Ze@,eQR4G!UeTݗH4'%uX^]uHq.V?|"JDTM&G,"i:Lרr[mjw-]AAsR..fm."'` @+GC5jGM̍i ׊-7 +=g4# P+"%l=!dX,\j0;E{딞O>c$H\_zAN"[7mdUb?Uį;ˌ'9v\ֶd.\io[͔ Q. R^{^#IdlNnHQ /Jn8X+/5Ώa30n6xzr>cJa4k_9_mW"v0K~@r[c>lrN8 ĕɿ9T&$'ψ uk3E10>W=([vhk#*cp(#gO7ӥAKMQf<޻gz]7;[9ÿ5ٔĜ n"Q Z hi+ ˧-W0[\7'Wji/{;y| q]~N{_\0b##E ʄ3Hh;˲E[⁓#,HƜ`i2S<[J#ʀ A` JBpGNلzJnB.⵸JU  fz׶q|k ;+KrʆHkW^CK)bj4C7*֙c{.Pj~@3gUl\^}^74=>rylLk:vgЁO%g ]0fxȣ7Wܨj%-)euK{ZSp V/ey<%6MluY lÍ- noݶ||ٱo9j5R4GOL Ge%>Ut6ƆV^2zvNו40) *O72;/ xz{7 i)tkfZi!N:/ J0ٲgDGZQ>*A[AF] T%srM +'gp))/ʽ-k8E f<Ԍ=W%}eeȳtgLK8:@djqHy%aW]Xa$ړp1de yZM<,s_z]£l8H (P v};auZ yT>\4/4~.9^YvHAY5WĩɈn>{IlUV\+i4A͗bJWޢepY: /0WW% .&n ;qÿ;Pו]&5Ҏ_0|)ziq}[rUh&+,^ dKD?Ix\o|_҆9Qb"}Ns5ST#=nq!oO9^^3&fgJ% ʧ%!P*6>}hTGq4)ڱcb6:_eVhi"~* I]­oL3emZߦ3RJ *A aDZ&ܚޕMT51 6 D 0BC0NN;ɾgK9C+&.:dAL1R"`6oNi.&7+:1ªߋm_ۙg|f!T_(⿒H@#O3̪Ve;1P`[Go#~vO[iN Z|1ozŋZd_*t8$zibL5|;2u5iyZ;f=}8BU I.c˜e ?p[Կ4eN>ꋣW8ot~^=HEm}M45p H¨m^x42k;sw1wÜ~7{G{фhr_DT  R||YGas$Dc)ʞq<Հx]( rZx {9\Gq CvAG|tGJ| #6Ā5ZЌb[gü3_uڻ-}<jk uAE(Ģf4=sz" pt܈e.K) V $$Vŷ/x vOufe; ]@CxxGKw1$lZ Ά%UkuZ=# ͉6'Vs*N0ef\F^]j4o?eq10bb*cu.0vI9*xF+q)׃:4JoJ,$>rx}'P_cа}c2 _Kx}aJbM{\7` +sH ؤZs ̬&ph!@ gDO4D>ԐPs_(.BeEMS%|/w,uv+, V2dwnh[/* RIUB"ncC֟5K㌔r-JAnl([zcO {;I+h]SH")Kxh!BJ_w\htPL$ =omàI/^EOCrL2/N,8tqF&NqMN[] fVMO2̔;*۴HZu+o+>bdtddZ=Bo|W {3cIB;Mpqb+Lo&PQۖo,eO2Csŋa7'ǢeydpR3Il X;жv՟ftf!%)ζkrea]#nMć=4߳9O{V8ONF>y]`ԦXn1=GI5U)%T_1 dMb ՠU%,4*nuDH Ut1E8Ùyliu>-FON\ֲ ;P\uF"@ j w( K0NDdWMW?Q1b,'p?2(6% }wmQ>>>yg[e4,w{f:;qZUpcDϣ%tE%T^@A xO-;1M٠ZW;np!u5HV3fk>idFIQ yf+.بSrYSX6qlndUL8=L& SLxҷNj)G?@!g߮==J}=*Sq~:-HGs(^%k4PƝu=W^5uAg=C0(ӵpAbտeQȩ% ;:fOFԸ0۠:0˦LhY NQ|ASB~H6Ńcq/d]I]!mҔ gǫQ"V `V؅{BKƔJOMǘ?-@#cBX=tHkށqGM2TI`LWR!x#Y؝Qƀ<{){W f}~"YVT iy*AЮ; ] vڅ#l&8!3dbwu{039=)QD9[aP~bOR̾-uNlTZfś1UVyq](㭾^Pq1+NxɴGJQ-tyʧ3خ~-'j+\ +" {=/Sn m&XS3{s#a4~ Ē1FJˑ_bsXo6uSXe%#JVKy@ ݭK%D%Po]HOeG(ICyxbX8<+; @a뿈bb/+-OEᆄ*c4߰LJ{؋r;L#?S:p4e zXrב욋VעUXP7s]3V>`JU>]VQGDo]k,Pنyqe +`9\f:i dpgWY=2nϡ$Hq9GytcL6r=WIwB%ez'D 1|Dmȃ ]-aZa+ SK]z"KZ=A5u: 9S[:)BA\!{UrLQz5PMUE(9>CMsO0DZgZ2tJum\N)aT߀fەZ3щ:h^ggBwUtU4Q½\LW8+c]s]=;Rk7j7&sf0*0N3i뾁1X]!Cw<>Sm`a}V`Dn( 9eqY̩R0I<.+%Q-dlqKY~vٟ<7hJ|L+zsLҸP<+7 amF?Je dUr.fQ 툊NiNɡ"R޻3 )MՏ02lU:+,Uږ#e'IY6bk5ҭl bvμ`8X^O lB<2 ζn\0uZQVz R;g$m!!K)]9]f<*>1Ꮁkn+tY±2$ $Q 5eEcd6YtZaqU{ %{bjh[|QO'ORIPGЄ-{&J47P9g4L@ mQY<D.B+vEn"ŀS8u %D, Y/ϚQ8H^90a/#o4[,u| s9Wby,k"fI.EF4X*x'sJe6 d҅4{]x *jel]Z=`%{ x]g,T[I{S+C]gS|ܚծsu4M@O݀'x3[O g:3P9*8}Zc&^Hd3 %a?^0#iB,"$,[K^_>l枰sAgo"9н}&(:%^bcj]X]}@)Q !Aח;4q0p!ް1u83[PfӾ$NJPPqS,w5IЩGR0n۞鋐RBg`L8?ݬ.v,Gd@ ;Դ O?M6Fsc7OqH1 />"'Mq2čL޷'=11Uf&puK,}j BU`Ni5vզg 4(Wc)j4VQwԻW$r87!J) 20YR..~d}w"_HU@%) ȩq21}ND WKnaVڰ?]LB^ퟄ1y[r&/iMU3N;u|m"AǸm{HRv_J+ベ|`,0lXp!z$13,\{㓻O9mکˑуI^2VS9 -H{j%U!.Q-4]0#ȺO., L31,Q͔X05#ȉaNru|ۅi]{1p6XbO;2DfR-:J", W* C0-m-@XQnkUh 7eKȋQfBJx쉪oJH) InTK I5Cg؛q+b#"KRS"]R7lJT4zΟ6k^=\>8ڷ4!Q;'ygG℃Z$j+VF~9vq *t9YCm$s*ig߇, 7Ͼ{y@?E#F=+O,½Z}ʆ-~>E.Հr>¡Z]>zUW@9鵯["Eh>rʦkغL`(-LGd6j! 4h˶:v#̐o=&Qm5Ao,O dL~hYdA2-PW΢QqU8y}jH38.ع߿ӱ@e$SQK>5,u ,fYFc AbVz2F3c_ZKræ gIo%O@@?jɾF*V0^h${Lsp% -B}"z撾:Ӽ`E_A)G.Fnky(h0%3T_YK s.PGLfFNrdL ?aܶHn"RkKڧ2Y6D ĐC^0\α(41g)MKj֗bxA]7Aꋣ^@S5f'`Gbɗs 䆵=zW.gQE)RЄI_Nov_ ܺ5 3%(73z`2wr.a GmaΪxDBW=5[-e҂ߚ3u*q>Jy=[}>\S>=~u#W2x fCCA%gmA&U rDsߢ "Z>jbφcp`e3+7!f_^YGm]q 'z~|b%X ;3}s>_,Kc1|R-!!b>@\r8ͭf չ%:F-|>|?á" +>:df sXCB΃fD<(鬀뙴#22k%4[v)?KPDRPTW{Ky_C5fHG7Y@Y N[2abF 㵖<-۝l>JyCrtK;%FKQf˶0 rv_-VC°!Vc zhKx]C  h(uWKtiM.). To`Rdv?4ra6˓含ݵ[NwibQv$ u_=/} E].%+dzq"fl{6h$JX^m WE+ֱd]Qd\wwmZ;ffHXE 8 t_qcሪg=(miFW5k1s:٭gbCn2{y^O6E:^=r.iHw0Yb{Й}Ot _iu{j[=R Yثts$'} >.;LQm xt7/!dDQ:ŴSlg[%hT(O zЏ~ܥw]G|0{fP8KVcLuKaI0O#w\^M:UVQgB 0z4{ʐ֤r[ج:⽨2pkNwzy.+ LǽdSQ\Evweɕ( Cx?\ CݩmoQiI·s>{K% Ld]٬_IR:8lBkD@h^oa8!҃t]٘$V.+(ȝͲ ]p πgNƍ1xk'Yc8:7NJl1 -`-1f/Z:=@ Lȩ"{k&2 wlY0gsCUctH#u1/u^;cv@3@<aU uʋxN&VZB4_'U  ZͿc*]=”ՉR;)K]3=Z49pJ+C!7l[BkE ~V` 嗤70FeS3w.a;HS\<.(`ӱ6ʓM/# 6| !E3ς R<WVl %;*<[IX淃UzH#7dru(zkzXu&MKHK֬LfgmQ[n5"<:S2A=BZKM'#`(T2L$)PѷvScX"F3Q'%MckSVazrB.6s c936p^kNTy 1H[n YE. -6b,,ցcnU!L }!%?U$Gtd[@RReVq\ ;D0Uw[t:/FP`>E(JlgMSccFKu=ƜE\`!:NvGΒ'y$A M髇9 |P?Rii7-jߕBDi#۝]g!5K*f|jc0P5vGsN˞#>bM.ewN%Fjߙ0[;R>5fTw;._] nuS2w*yؔZ`<4K=V&F`ep3?bA~@gTp?LL]G$:&luq?/᜷#/e'x9fr*o{Gc}1S+߂j`B`,a,D_meog{r63!Q4@>HŨ>1)!4$22jG?f. ݔ&J0XXiari(7}F[7նf:`E٪c(7"ms;j+ %pI35fUiA/b<||{;ϗjH bJPBx VN /tP5bF>-jrޢOQ k}XڗV}p|DbmS!P o'lϿLzh-d:kz#*BAQqe2'23I/,ޞށ՛J}[49)GuJ;sK?"(}pVTjTU]jZŘqX /t 1y|R` >qND׬%/vٽI&3քM/$״xS9mY0jh2#82(8}a`Nv3D#HBP!FNv:Sa*frR~Q1%6L1M BvNNP#G\E+ ^}$dn?TiS[ӓ]W=ٜ;_nJ+Oפ-3 +WB:JL!@Ū}lۤ^ ţ>"f x0Ul\<;V-v5+͆j<6x .xMYPv-H3six>8{7O6--z:'p60Rw+Mrnen*^ ˄Th)XE YJw$$ ہ -[*G}Q_$5驖{ʊcrJ:d1Ik`*8Uۆ:}_ %&D8s{A?p.MX9$#LՏO܇.,!B|?iRojI" 6ޕ=MP"j_wŀhޡx8/l~ ̵se)p$x-01,KǤ3 vrѮΊ}X ;+Tl$B1&HSPӤQ)CUBe/"<]A M6Ϟf9[8bp0O. ?((Av HMGBHlJ %e/02J[ 2;Vı$nor^%=.5R9_DƯDw?fZޤ vʨȩtϫnt7Iya~RՈNdg-5JW]-pvS(L JvcV 2?ʷ;"Vڢ)dψ"e`8Z{܍ q)mc&kCMj\^atzUWxw‚0|hs ( T,ŲDih ~~>mLa傒0j:7 h-91 =W_/TmE/΃6@#coSU Gd{0 `M8ff,]L 1Ê#h%/ ]eY@eD W{nt،P-t8]O5t i7a_1a_mЂ^=A2"HLla+/lIEVR]@0/DU_Э`ʨPtd=U֡ll.5.7&˱1owiQhxosXHLbZwzAd25M` ڎhQDmV\w'6!c P $y ڢ}ZS ΢L~`tq@j-E8y]*Գt:Q9;{#dw2=pJJ9jL }k{i)]S'kjpn֢D<tdN7ldS`kR^ B ) HD?A$1n1B*1򾩃Nbd$VSǗL @bDIgŐWF fHO~ɤIohFSMŵ="Z )a"be>SXd~<] rRx/x "6Ϩ'u܏ Ѣ 쯄ٯ8ip/UN` g;Mq/嫑(v WS6;|[E#T_~|-IeX[qq#IM0ӌsLYMq%؃A4=@BճZ'XTҡ75咾CCW3W*M2KQ#/:#t̕'|yzVҪ etoꏬw4ؚvDkWC@u]Z삄<{5(㮤=TjWjT{p*&_+02!Y됺KVWBڇ%)WX$P`gLw )9!iErәAKj4Sd.IYY0v9!uYxd>)?H(<9 c0.MDKſ;ǰ urHH#I8$II>]߻J9%闱֯H , &)Yꫛe&3ȧq$L`$iiӆ72d믆㕮f`F;}HKniqBn3?es[<dِҏ &0ړy>&:S4&-TީΜ M^ֲŊBN{X_$DoMf-ch\&$Z3`pz#p= S9{C%Y3{V*cU'd&FYlgQHARᷠiE,S{R-0ˮ[L(OVENӦM߶&ҡw gr|#h[tb2$ՃAepd x' 1*g҉HpqTs)"\]y¸nW4`Cf[3U?JA8gd& Cf#S-hGs&p EaR'K &q"^6U>Dw"(' Uyg=!3hMx&7E}{J\֖FWf5_;;ӯozx B4% {8 [\t1YBE#w=1p< %DxŲ?v^&0!uײ7%4B"@-&_!h D R kQq7/kn@]Q)Q#k+W͸Ty o=C3\5Zi\=,3}@胝!p(dWNtxnCh69^RzDV.B B=\4~tvt֣ vI RBA-^LXoѫKa szP2LK= \ͷcc926CLy /!"eH[WA9a$_E((B7؇mT#;>2óHb,@bQty:1t쯹9Q/W^â T) !* ^鈴Kpbѣ ,B.)0-pc x D*=vX DoÎH-l7M"vZn=(L!`l|J%Z%%ywd#j!cOi|uaϷb"_5ɹ.Re7@8e*f0! >&h _}yXkeFIlR.Kת#e?nQK۫N-pCl_L+v+C@>Io2v>Ay~/ ((!w#AO 3"?89f ;Za֚YEIiI/P;E2,]F=7%ϝVKj!O nyVEF?5 g53frț{s3]E0݀uǪ=*A\&u4{S6\Ix97@gR[t|U̝ "ɲҴ)=IbV̾twʂwC9Wax:SL:ܛٙ 0Z~$EW~؝ybvЪ$GS#TJ_H|/:2b"rޮp,ԀEA GT[}PaKc=4.3"rdm^dg KB)cX⑥ Nu77;d{Kx#M >)7Bz|{HCG\MBAC+w>;.fLΚ͉JPtؕCMqIyZKd Eܹ(3.aV[#J2C*?H058w5k%A_h[¡2 PW+} 3YuNi"oF|M&KQ5  ȲqlD,W]>y96p"9(~IS?G3ՊX(1sp#~ij_伢ߧʹL<\ۻ, {;X)d3١/p&?&" f;_9dKܨqp_" ВCTc4:'-%9wX 3J豒~3G"˞7ABI{\ )\y#zま[VDcmN<#`Y84, F0Mԏz"{+[ >A'ߤ~JGO23B}M̽LwLoThe'CM у*(rO9/eXUnn2iq vzE嵸|qou",#\< Ϋ@NP!'f,%n]{:TոqqO\k&#k̐vʞkY #*SB=ك ,b(^we0Yرd&ٞ8cXc+3׆wX//]X_Wr=qtQ=||,ÄG*2N$vo V(\J"OOA,wɜI2=ϡ@֧2 xj1,VW\>rAZZNW#qWM4ƥ5\gLO݂\%gEmxƛE vɈ G9^\r¬:уsAZ j`@Qb;J7BN)ĸ9-y5YZ3bjR4aEv2[ Ps4*'Zn)0RR?s㵄-N*CY$wL*IU0Q 9Mda=7[>O*8RcH6<<095t7u^+WnZ<{s#1{ԇ-t\@Px-1`溰NC o-oO_#W//`ŢOe"V/mMNI^f sN7`_ڝk](U,i4l'(DR]svݐX#>OΉZ [J\axLͼsW}J٧m rk ~ŕc((;bNv>cX_Ι ^6FXlWHd)oEFX⿙ʁ5<ַig`Ù1|Gp|AIz.fe&l>;&t^Vt]n(i9guS%FN<+\L6ZIm:ɠS^BϊU_s̐ҨH!jٹr"}o|q !!g A&O(PN9WgAS)XR0)ѯ6ICZeeA{E*@FVL 8MGPzɅI-ֈb Z,e1Is66LS*6T z!~@^t@/q&60 iꉦpr,'&ءzxW+Fr@UѦTUzM%E e V0=Kľxb*P4]M\\]6Vвp;^R'Ϡ7x)k8JGOC,_?ܜkxLl4:4*,iҗ֗c()bj`6¶2:UTgq D[uaAʢu@4HBP<<dJLkb3l1vh*CQ? V$?fݬWR5аHggu&ThOH}uvWt>;Lx@G^K<6Rgbixnƿ'mtS͏s1տ4߇e[߀ xo8,|aJ/mn3#j[@)EEwoʦ/H뺅6 xq;y^+eޮg]'FNRw73XUXirPmԩ?U} #7+5_ю3zb<kXaDz]!yC2b$zZVw'% "(t\Kzl ~ P@񏿜ƬߵS^=?Vz¿ iIYRݖHS<)]ѭZӯzJo=:xr!ōI ી g* ةrzTE$MXy.q벜s|{Ie35Ưe&Z!/+TzN&Xk: ]ØV;j07NlKO/R9!ʆ7 S(%7=kYƆPYE[aN.yyb׆,><68{AL}Bhg>w ]8n^!cR_yW0+. vtscT]e՛hJjMG!Ϡ3;KyNy̔5A=ciTT;2W Ct`,H˨˕ W-qDHm/m0??Ӌ{%#e:N1|15KY/f^w>Hge[Է1}rFF?}ZɹQIrt~j8;ͤO1v0 ;:f@[ ~ڟRRrljS@zhj(-*<؜dod#4ߨq :TdUxN/c#U_̋hMЈ s(2 qyKXg no)YkG ތ߹83ϡ0gUC\Un2B$Jk Ig^(,MLؒ0eEQ[XT:0 ϾgltݚйQER TKjf UGaˣ:a>͌}@ED+qT P/l7mBSkv40>6JG0;Mގ>]/c=7 VI}h=Ir/ʧV҅*|G AK9M:rǿR_}VO0٤_ HvT,4g$;xv~)?.@m[9 z37AY/XZp&g}n_C Γ8+ֲ a }~%.0vCjcl Nj^1}1Bf5O1NZ,JCV0@w ŝL:Zi_MXSVI)aP;}F7+vÑU"H%ASS;T#@ $r0 %ߦo+&3} T=uSI~pw╯ק|b3+gž 'SË:l]X FNj̴@&(q^q1jj7о{$hg(BoHW/7}r/fV%Yo $QK( 9%u(+h IZ)n=~DsahC-@BZ:ĹP<?uƈ!~j*?&$yRF$DCd\/`.]g%@mtNKV'AqaȲCv;P?v')Di_)RQCI]ڇiF֟:TCXkVA*Ɨ":d/tT?RuK>䫛FBcֻ5lPݾq:FG.ٱ?0P ' -ݑiCL#!QؘW4UE2<)r(9 wUmPufuR妅Ci\O90'M_0{KmZK:~"Rz?$)q\U}>܌QG*HU -`\f )Be%FCM amI (8jqR^jV7˘DE~uEd{рC>!n?rܖS|t KvWpl :!:AV>azb8&PLaQ bfr5%;|"V9tˌvztn#GvA·]e^#|+)b(t-]>IQv%+D(!{Ά\F4ʫCƽ_OQԣLNB6-SܫElFbm1wn./tN%z2dW4\h2pr[/bXX $΢͗l5}e=3dxRkv&>3U_?{|?& _t7Zq秫p)uK6<wbdS$,6{{!v6q_"td=j½DXjpGIZAQ2c0c^㾺nqR.TyIJw<}^祓e{j IDV;רfmUK?K_ WsZ?؆^ƣ.F?/9Yw+9Iݣ^}ŷ-|uC'm9a; F^햺Uq#Ԟ,b|M>ނ;Q&[^5vٺ=)7Y1緉ς; 0AMua 8*i<ĤBe6y'loH3Z[ Z%{?kY X}[(/`pd˅FR= ywslks{t`>gW"It*%bZW8VׂӤ(L"m"^1U Ec:%eQ 3VYs$)XnDZw'+ :' % %6n0W+m!gR7"Yd_V0ftͦ?0fB\f$9vtН-omĻjk%b(KJ$P._^GzXf  >G#zXH'R*DLts %7K"u7D,]J;X p]5^])wPh,+@a Ix8kJܷaBO? ?MAt _] w{|&ꞖjB1^2 cd~&xx@'t >[&nl@4Ȩ/͞{pk%`ƶ~S/veZbvsF6_uU!M|-$Rmf4Yz%D8F})08$&f{nϕV0ÿcK}!*r2x.Sېw 0'!5ۦnOݗm18i z*I^?ϋ:b7D?gwb߾RS$2@Yt\GD=`v=" }E}y I6c;U2/Ň!'tW{?;Khү w~ (\"yVy\0\&목yrvAQ3OQUW.#D*ߤ.ݒBWTа1 d?Z`R&2mӗ?Ӣ![_V7M- *6(Ql%yNf,|!<%{Fv^?<ҘT.Gb3)1(}m%=`+ݡMlطF#IE_ V |o-(jeg;%y}ww,鑆_V!KqYJTb-`Lݵƻ~}hܒ#[y;AWrLOQMbE^IUIl>J5Sxy֒*%h}%Fx~6nkuk5ӈ\ߧ#>?50Neyl_%"sqT f㡭-K߿4QYmvo_'Let>Ke[{I8qdjЕ&X>Z1h'9fb%3'<۞=A6"u*czF>$s+Rx E+njnDk0} ^뮾-1a|=$p&}> $zϖR(_q3p qWt)QȜ?)pLa=~;{BBgߖ*wAn/gXw_$S]Du> p;O'E¬5PA',!CRSd"NN˦o 7f7pYz"p? 6+unhجWVe=fU*JE;HSjk)':,0m:PQ~)%[21|E!u_+UXnJT5IMZ&kPw;g":l]QW>́i7Y+cDֽd0TGiߺ9)莹XO[2z"yG=)U!^ %!D-j橗Cj]E焱p2˙Ct] A1$Knhr@ xxЯJG!I ɉb庒^٤QjvXFd'5̚oP3xb%~p$P]ripaIpHi2MCɤ{nҏʉqAnR"EՋfkkV֕X+o`I]UwԱw#3TC*j98H{G` +M̩P 鰕VvpIYvPvn4]rwHjfZubjY]שn#jY.Пlib^:E]8 QZӷޑ~㎎T2@2-=7c/B(IY\)5.uǘuR3I&|tf"ȌlK]2Xt:Vz_Cj67 [loGY9pn>qtn4(\NJ$jmʀ6cNC, b" 4Z) ))!)gցա^{ OGDnb9`AZ#,.w&r@Шg*h z²GE'Oϛ,Hlg$x4Kt\`B͠#ys_T5$Qƕfbs<&͠{Lrhoߗݚ;g2-q#ӽkԷ( Oz^M]fJGs"wh6 UoT7*J+G{}c-jPmc@L9~7!huolF`dx0P9m&ݹ@d(t|עx8!a7muV=s.T6d<=]"DE?ZQQ D8C61={>cϟo^Ԙ~Ɓ&f`Os4GaHvE[fE1^#M%#~dV)inN8Il$%8fs+ v[x2yBUs+؎1l}; Yo]:b^(Ssðw&hW곣tDi};γ 'C$`<_(̣b^p4dWx'@:'bzќniMwJsTs)A2t]2QtH o%O)=̗sZ-Yt)) $`!Fg۫,v4wb7˅X19Y},sܸ0W.[* x Tt "T~Hk8 "#R>vW4Ǻl?l֨} Xن+c}O0fԛ 9 >AQ,'bV!T3!=Q٤$fw+Yl`{} b/{xt(1~vsV4?BT0n Fj D,%Љ'ORQ1'A>Jݖʔ D̎"-7%i?ފTqxȽ#)eqmsZ \]N4|^ɯ*-h ~ۖEvUmu+VBe??>C w::?;piAXd];t/٦2DQ7qf0/B@t) }Kޭ/b ̏#N9:$fK p:S~%"d~[L$bq@XC;ieTBr0rw$O9PR54 K(kFA|6h7v W'YAvoS}Bc% L,8M #}+GGVv߃`]*7#n@JXoi_ SQr}QQ{NRB.wLlXlJ_ E}Kׅ̽[j: v4A z#J C/wj\w o;>tWGOaWsnd=.PQESnqբ^r_K=xq vWHpq{s[n)@%:iEn1ڞ_n6jU|)+[)P1S 1:9Pbm,x2;\XfPc7}h{Ghj"?hy ĺnuLgL@5ʰN;66S,`Ǖpy b!+!CdV vOvNh~R%,edm"xxRI}"]# dBj{WZAqu+ 2H3د]"%>~;h#=| BI5%mxb0b %VtSo#kDJaXP;`HP?@Q)e*4jZǭ:4㏂2d߈"yO"ەQ^ ݻ*>ެDӰޔt-1K4K  BZ5 b4zQj蛹 `]oa-o9\oX@X-; gӂOS7^HWhZPb~ѤfH!I%҅ .=z y[fjCd%rE-iul(MI3`J+ B|c\b XUB$Jndu-2|}V@QkR*0&@:<"[[JTģ%nC/0ҧѬ/qhU2:%, Z?OU2kBotZ6cQ R90:tiVP5 X~R 7Ur?[<1]e&P,^[4#QS}w2p8[4qp[Ci19PcIfe&ò}gjצF0sV]`d Y4ԨrKO3/_}ߓ&Ǟg!R<tfB\ˡ u\9-Ǖ(&TAqqT*>WjNC:b">"H ʘuA1AltTฌ^w'`O} T:Q "X}`?k.a8yAl,2P@HEu1snVrpҮYj|8Y q`(םSḫ6~6K3s<_KfA`@!z[W?x:YCЀp\Zzg^_u_Y ='1sPO5Guli3沉P6T0v 4)&mMjO:& )OOχњ%gǜedruNnϘLa8KLIȐL HU-tB9o9kO-ZL G`FzVr♰ J+ ~flDt1RGA\.H[h RMi b\7#>P.۸'$-E1 T'1׻Rtmڸ$p]t6K7@FxdECdlGˊ`)zz6GXE(oƠ>4iB\ p} k^uUd;颙.c3[6njh2tk˴/uB9`v$#xniB1pUS-Oؾ>DБ&N~/W[<ݺaOR0"WC֫( iFB[J2S̹{ɸtRT,PmzS˟^*ڈ K̇G4r&(}mcbӂZ%NbK.S;O THp͹j ycfm|Tmf5Mes1 {,uc陚Fye^"6r|H*mÒߒoIp*uS}T(*Iˌt-cR ٚNUjhBGA5~mZn˛i;xğ)O+ ) ; 8t*jBmVZ0_c (QQ񮕀~K=?E)\sely(m Qz1K*e+dc).BvFA|zx)sײ?U4Q³ 09w`]mcoZM!x@H9q3-ڈ5ۦv:zc@zWjx6;Q"`kuG"[V-9q-UfOH=@vDQS9/!+osV)7T 1P=6;ĩzEA"|fC.1nqp:I8 uV蜎ҳ^w0e mXM6z\wLw^ƧqJ/mNيy ,hֈ_(6h%YZd-J7>yVY6ք!Z ٖKHȮawU6ޏ~h/2襈a>LF$}P^UNvd T(1ʜJc,\p* N Bz͔1G;P Rwt%.BzUg>-!R++ƕWꜨߡZO`Tf2ųƆ+Ti*'"78mJ7XwGV.p<')3d1m y8<:wT*Gy}J5~{JrT;2RZ%6Bt#娪/B+ ?o ۥdr mk3-"9qa ?2=ROжZ r1(Ǵ-"m(+RΡ97lww>ވjcBjIL~%xٰV{B](:sS$ab}SPs= Wn۩*A0 s\c+r+,N#*1 ř!ض0"(|n'%yhO/t^wSqz +ntS]ʨ 4&CzAuzn9+NNJ\{v m1HJ'`PLuy'!A,qw I-M".ѣ{^8C@3vyy.kN4IG6PJJr0ULSM U5(l%c f`0Ngk t+#d/$(SnU='U+%p%\莋!´=/0zXUXYH5ݼ y9k f 3]#r:eSrbߟW9S4f6up3 Gkto#}mH/L5\=HY3m4|2_":ft9)9$^K9?92l3O7%#iY`<KZq> ,vMi%'i'vw|H050fXCs>nf< y ̐O=K Rr*^*W֛2˶ Qϝ{/TuAfU8X}! lz/D.^7 D^ǁHiyeoW#斊+=1_1S?p|A:Mc\'dfN*ϫ7qŠ˰LЯ+s.PaF@Hik:[ST m9aުpEu)w] Qa9n&'!Ӱ-LǘB6\ZxnR ղ$A(p]-yF}CRU6qtcB烧Rk&3(4=ۋM;'?Jޣ[6VcxH2K_@0St:؉^Z-u7L]ھ*5bO[r Kӵ6(}a* (0e H&"I9"䣳?Bz˭K1UGu 1iDu)F}:W\vRdMz2䗧U#kR浭 rodm(kț—4{ mҹ a *#D$̍r* (A  Zg>*BEdJu7{n(U-#΂~7y:ᒔ'BgVAjh,H*J@ 9&j?vҬ%X-S6:kz8: ѷ gm H+0%TxPҮf+Ժ O1{ןKbFD{=U[Nx2)!7bGX/;&{ߡ&:F԰R4=KSPGO |T7}0קjsY`Vߥ:Hl//8džK'mcŭPA1pϪcQʐug`lf!*NcՀp W(+Rhs @xVp^Ÿ [H]߈ 0謇ub~2 Z%]l_Cmҹہi\怇9+(!ط"0NGԩuvnX3:R}P*, O/{?DS(/{k⋳j&~24sG};6Wv~fmҪ GK_'W t<|d2á)uPJ[G?:ؠCS4 Q˵&Gپ>xHz,w @*? _7z:H>??ة "oMX qw3m0ӭPfIǞlF]o$y=ztZ0Ϝz1=vSNӞ-_$eUQ7x's]''N# zDDy^`>jMц:0Y} ΥsQJM\ JaTFh\y[/Y+Oז6C }A\(̻R dq$kMjUn ׅv$m ՊA1/:vfyUa?c+?2r/$ASОr,ڧ'&.YWMD[&Q)a#T1 et&[CYRp &p{jp;B@S SC (\lB&>sMco5 e|*ala=7l9Oo!\66' es7AlZ$3^EhFVT^)+TWj yL3=X7L 1n'r` kl^ήaYq.밆4yQ׵Y;vpiL{6>Cg|$ˋۯQǒ4niY#d2}ʋy|Udr}xwb$?yz=Y7wjW6څ\I-E5BROWɽ|?|SH0I0O^4_3OXͿ;ٷf֑VJvۦ10Z㓌g%=MҜhAB.wio|7goM`VG+R,g]^:.[1{@A OJْpk:O쯧ra*\#D.' Z?~t5!ԯ ޼h [Ѽʾzޜ/< a ǦMbpuF_GRfzYőNk. G_ 6{}-`iV٘oMv /n=5uVxhdAf(l pL~ٶD-јq=m5)HNghI~|UX7V6<՞ClˁK WIcB0zzix7]~ oǑY쳵 HفT'H}lDͪDu{bўC.%5GZ.ߥaS?uGiY*`rY6%}%@ ĵi1,)#eQBv虋gQ:-4m{QEQc#AGZyX"0zP?j\~ԹK]ղ|XMJYeЂ"OU̸k+X Ϯ PREגU}tW32󺓱xb~M⿓9GZs_פ# :F=ݧo6L,Piٙnө>Xr+K蔣]tRKN\5ӵd/GοFl(t l'FGxPNk^puE+0hMv9G˥klđaw&Lď43>[_KeP/Ng@[޼޲pubZh#<ߺX]u17Np.dlR KҦleu9((t\ .Aل7{ NZz]0)|=V-{\ <$?S5PjaN* ay2 BP9*Z;۔b02ۦ& 2-~ Q}oҦ~;58Wgq{sm>ˈy&$ȱ//dB(Qё(6#_%*churM  *D1z\7X~>]id%r}4XGB఩/v Q 噼fxԴzUg@id423MiM5Έ%)6(/?\X=D m J܏k$Jfi Shل֥=]C6(]/},8t PTYb@%Ev?5 PGWcيamHUǽg60$'UK=R"᪁,"\8Misf#M26"DYMNj~_T&AP91'e wjHuhO?D| hNj eXqbo }W25ETy(F7 Huy B,Ez5̒1`sm1mCZXOҀdMaSW(2hfa>3MGWɓ6lA]0(tW6/&Mלӫs|}߈XAݎ*b/l0Nt#mw(Lׅs }(RP{ǵOSUˆ#8$L Xv3"=ս%УJFCJ ^4Ԙg1#7v j PЁ\Mt>1o#@BĄXcChةIu:X0He ˚ՆzwΗ)0C M}F&}{ɹ%f@?]焗gE)9lhKWF; +4ʧ~ʅ"ӅrYS^(Wui~K"{ W]nsudm5X1Â7SJhOho`2Y,v޶ 2/g\!/ゐ" LzM堏 $&ӷ>Mp]B$k@B啷ؙ3\sD+$d/\x cG!pJcWy}Ό  R:b,l/F""CkPoV7+`]FӒlkg(v7B?`h:*t–*h:aWDPgv~p;q 3zx% ʉ6U.2'k(>7sKPó<ZLArofkck=93_6Rer}J+BmRȺ "tw w> CfSGjwI4\gnIV]"*EK>Ma5geҤ/+f?. 砡d[#$QəӅ~ r&nhx)m;bJXզk&N)n+{H4{e+CCk=nuzM_@X&!L+!m| ZKf* Z%S!XƱ#c ]f;iZW[ɮ"ޖzR >Cd ~3._KY ĬOÆ,g/ .| U]ҋ!B ԺoG,Wcxb,vj\X g+*+_{U)r'w s.Iy.LnX@BJ kO?:h߲¨+C="*2ZXe_PŇw^;hERg}+R2%kꊍyE-ăq\(6& vYM9=΃glnϖlyB0Kfla-ɮi(_']b$4ێ]̉r^X>ס_a{Y5\N;cF:6K -6qϰ+T*OVy3P Lawe}58"H6[xpOE$:}t:r.f㞣8Bt'}ƨkOYk <́.e}1A:M,#7jFۑL ;IqӛYebc*c)B ՌԻ;s4;1߹:Y%!^rwq7۞F~%wI OΌzCթa7rP eG] n #d` 4Cq3q/7OބLEGRU7MԤ #2iu{G'G 2Y)_O2aD0 Mƈ#ls54q.k\ `yQg䊦U;#= } ƒڐrjv6j=Z:»*_IJ>F8y=A2uf'b4]z;n'K9!dop@w^Ui+ѡìI]S7@1޼T 0E~+C5^R{$6T!껿BM Ly=?n{hr7ص@iB5jVphHʵΏl"uW2jq˝f_c9fE,}SoSRˆͧ:+ErOGffJUU3d*w&d1#ׅvMȠ1QҦ>#$@X` ʬCʼn"χt .f۴8 +Zvܠ,F7Û^&yFÙ婇ᦎ@R;bE5yd/_A2z-fA\E"uv8]ngWqg}?v[<ƜDR< $?\\rXoC<חwsn[ rS0vH %| i7+|N?=4|.oIӷE Kk$F B]ROT^= xQh`u#ɟVR8'`D7yrMoUe433KQA8\ի@xB"m^S]'L=bV{=]XU UVWW¤$ro^KIn'TR9Ëν E.|z.M 0pdEVX&,i"~4ؐ\f8ɚK.:3 !HE1ΖZfN3l*1|m1ypd:d#0]P+PYvӸ}jWEFm6T-f׽߯8,7j2 tb:=#NP`aO".DI^!~/}gYg%G|ON&3ls``^:o+ Jmԅ]-|O_&xCWɃ<((١m(%OuxZL&ϋpCܒ =*Ex׎)OؤC2 ’\4ڸ(!44g.@W[ݘT3}*|#8`a [|<}ړI6{E-IE#W$3jBvP 4n<7 ؂J_WDZcdF2pހml"7 Yw JVulm~*Q/6oQ;ɩB@O9OJ9/>~1)ʄ=]yGєXѓ7|kIi+ωSQ8pzq(>\-#M|sN`sj I#ZJ#䬮W<QP14t~%nD)f6fnW$l$<&w@q Ӈ#ػQ~&@訧e7-@G,zc|l _<QVڏ>ixc}'<϶ӡUOoy8k&ù ^`&zqL&x4ӨcG\uNG-i mFz\>36Ϻ{&@<O+o~,:ޜ V}cF^ȩY@:8en00 zĂ$Jůw#Q^;{pkahm9LMy.֕ʼn"vbYLbEh :c9GA iF<<f)kA)|Dmd)ۯim_Rq$2@F/ЊпF FJ?+.T[bؖ37{Nc;q峴rJ#._1\ƒƯ4mX,K@Y6}L8_M .ۢCWB){\>C\%s YJ+z\r"͖eͳ Vq/6!6\Q!m]evXo1xy$T>|׏ f3Mnrv_0aR 'ĉg/"*1ֽLA U]d#iH~U+<+%.9pW&m+it̆H[닗8/~2R-?!'ZKR=A W]d>7fD"Mģ<+Csstu"ϤBIl3sԪd7Ƽ5e%_ռ2c7$Gv}bBXVle,{?+MAr?2{aiϺ'dP[:`MI\Uxѧ3K,҆wɟS{ 4)!&LFWc_ Np# LsV cBVuR gr{Q5C RW62 ;  X@kWW`ӷGs&2ɔ Ị<<(Ź_H{W۾G p^+1IEN%l jWvp"wzo<(/Ft Fη0FTW#>G#,j[t8Kg|}h SmB*w8|b|}_";?[8U;2ژwb4>5S@cSTPc5 86PƆ\kװ 7g@fm~/L8SQhOr3ie;t fi?wYhPe5P/aUU:9@ܛ=O5vx2/);=f$bNaG,<+l+N{iiJ-K]䕣کqk|U2I -6p[4iװOsGcS1("Dqv]: zs_KD&5x<#"~Q7᾽B Eıgz ^kMv}8|Ҫ_I)=ͮ }}LpRݴ3& تRfpV cake.gf:Y@ 9,ʩ&Ц%;SՊAa0:*R`lApWH]U*+15эԾ:]TQ I\:HW-. L: e o)"CSBV-آSI+AJ X*Z&0(-J6kWYvl QKh Ο#Ί3>nA']+ٛں(*PwrK&|m~yA94#Ɛ mïԌ]\Oֺ72ﴨ;V wO9zD&e_P0uu=j1o&r ^% j>F,0m k\~YücGT*PjkN0~hs*tzp5W>WAj.Ң}3\½T lPDMz)фvK\1T/PF%,6_B4W* ҁo&x!|WĻ 5N+AB:6[TQ+Œt*æ{ȅY*7,lR3µhRF򝺒0~p:{ӛp~ɨw>t4W>s.Wv'0;ɶ5F&.vFU[ VH%:[mI6?GܱJ 0͆ݗk2DEKyS:T7DF"]GHQ %:'Cb*q+=>N i:mY#oO2{=B_CHi.OPTF<.\ehIY7Aun)%˘cƂy$;Zp:l' H2&hxAJ2Y~"ˋlN˙-\'DDU e 4ʳ&Tw`^p{|^w(RL,E?]b uG!e6NjիGa`R?jCa !azҊPq1 bf|&'oGʼ΃ wrd顧b)(<o@Iq#bSz],QN+%^&A素2jBIH&)Kr\ HFi~QMH 4^Ho$2]ϮհrSiԢStiRIh,^pYtKH佱OY, "Z,f kTgb:3/A3$ 8| 8CآlbTf%4OF9\ȣk&L0jjf@[KX6`c3͇2I4"~sMgR `7Y rX˷W&(Ħ G!opͫJ23 /܆ ,e=֘8iití>š:,ǩ> bn-R|3QEM${+R&E|r3-_,Ĺ[TwԾ<"[Lf hH 6`1yZ֊3zA- d#Yt#2hm Ϸ<ɓn>A2H)N&!yMgNɦ,Zgi.`x!Z>mZ=2\bf~.7}D+J ئzG߶ƲqWA]gc,?M]׉qW,Ξ)D˴?]mj-_&ͧf(p=]WlWR^ByֺM٦yGbw{ +$R~jFSXv<B|TcHK^kzc18w[-VmR(kM,e0=5$嶠=݌CU]pO?{eppl tLz+ f}t>y*RZx;}9FCuYrPLOM@_E:V@}? l W}@‡qMX{6f5,~R{b^nq RZ/c~֘qʡKYk;pMɏ܀tmLC/(|]bvzEv.zK[R)HG[hѤ<67x,p]QS]2R|`o+lAb.EW/Ì -wjVݝ%iKu7nbToz}ͨ 颖+K۽)iWdd:%1U: ۲6ab0 SW@YRci*˔&|4Y%ٗEX؈4`S2'y-riePHeK`PMEE?=#GîCoѶqy &ϥv/}L nGv\+T|įj9l?z,p4,O-)d=*ރ_buqUQ2=<傗`2SeVkK}WB B'f[P IH., &5 +B!!,^1/xsN&wu^gc*ZwL1̆Ȝ$ي2)ɍ/I28w&y6HV(˦_RĴM8:FQx rM{tCY/_I8@܏`JGB/nW;q7yAclO^pT$r"b`]}]UE/=PS R5MJ=pMJQLpSR2jb ubeQ~Wd;fkMu,^}QWje-6䭜A_|mfxCF?6h荒IrxPd$su i&r!CX`@剥$ֽIUOPdsKlvIlr"ͪ#ؼ'dabaAP!Lz?{=< ͥ8BH™2Cs "As >ķG Р#B8N\&_7CW,PT!piMGu{ԫR9á׉GTQYliD-xMih/܋b(Z` ./\oO=NtG"`Sl^\濞v_J6s+Ch/ML2 Qo,ªZYcWM'&w;B x3\N8[n/eL]z21Fƾ-d_&x`DIŽDϪ4-+WIL[(M R=s/9 +AsSV9(*" x\͒sPdI+zs`vΊC!A8q4h*fK!;4+L!M!S&TO.:QL]EZY>)IV]Z.SdQV69qaHvi-P=* [N`E1.QA7:㐩/E2gX@Mk?bt+ t  =ybj帢n̲ \Zꄼr$.R;$cHŬK[&35&?_|ovt*-vQ#.Lo!27D֩ eH|i˃/|>7 B+ / "YTΣ[n0{mDP~M,+A/*2o3|7KEg#H,c[}ASY~+ '8zbh6;Piv\* )O,(hAkՖyTm$ڝQǸ3kՒAvPV_ zcCN?DER"Jڞ$-s ݢ˦y}UYIՌ}m V`WBYևwKeZVY vrUnc<5. @gHo̍Z*[pÎ&9*-L Ośg ]h,&`u? {+"U1SL3eΫ8"%⠷ ¢.>Rvz5:*М+).ANl䗄O~ 8W^KRWcWh&]K2@ 4cp0pCKȅJ6 #vgYDboqXҤ/HY~o0Cm<7^NıLv/G6*h6Bv*mk5OH@އ_?F`AWp4ZbOVms zQxkS"^9L:j"e;L!qG,m} ,~nH?GbLqDG/ƹ?z@zhzccTAV'+G4j 7d^v1Xً#0ϻu}Z+e¿< b`M]9jv7M !S˘,e6^!P # VJ [׺}DnRV2ݤgHLXPVRo.O){*FUXY(n}c NK BUpGHca!8{i) Y}sbΤ֜2qmzWPlN &2{ROF@+S 9]}$a3(36vYv-5޳*Zo~{Y֍N9kǚ~Ɩ|@ >7fJpoEy7-'hsK+ajx&]h^715;Xm`$^8/b!ѿŸIm2(V$8Hbg.$.3ȓXM*tE. 5;h"la܍͇rY^lbQs9{Jϋ(=t aV%j{ p}Y1>H@xA㽀aP\ODj2'oIi&-|*O W([eT8fpX:#*fEGq)RcF fM@)}—FoKTk ˛8鲳5@ַ4t\Ǒ '7llkA+?؏"MOnq,~Y]5'AI,ޏ\ٖ5_Xݕ2#_#xD5(Rnd~\dXOc3^iK^Eq4ZeUz/:v&VT2g14T.n3c7v,K^'!4KB D'BRQU{ћ$C,)l9=R5@+>59c KݕթMzDYS17f#̹r[k-^ m4<6kmbSd*yt}JBT:+)"jR"BcV: Yo^|UXSΫJl8P3Pbb ٯ:5߽#H,oتSݥjƷl6s3{+.}p|WggBrs^_Rb,_ME*6`9 (5B͕KB䓥~*ND,'_o+3 N$\l(!SSvۥjUqGk(h)T:"9_Lzg^ᄠө֘P;bֵ@B$Tx=!ƈ @u|LT@8?gT9dħGt!nhn-w =n0m=MFbsV,?R qYj\1Կ䂹ZWB 7iǕ 7D+& }3DiTD8A-3?܇[Vu _IRB wXXLQOpXp`*!bpIT \C4+[8Y뙹Ų8!(Oq[!GA ?IqÏb*0)5S<7 QXfhHp\ߖ8h$sZRZqB} W7!uT7 Z(G+ٶl b$Axp>dT4X5Rr!:wb(M`I ]`qkcvA$j`8u)u6[9a 9[Lڕj,`WL0@hjo Y K4O.fIS5YO\DWz&2xB'0}9E!m{(,qy#)}e0Wi`䛞5 #lg[ <9DF9෩!rƫV׫t/MI?a'9^8R2ФgqQz505#GP"o"&= '6c1q=۞7A)H-EG@T{`̮6IRj6LWnKd\ rF&!Z 3g?m _@H?WMkFaxG=a?ӉQ\ | =+vB;Z#k/CN\Q]M4t I} !B` p|t;5!9)n0@롼E{> ȶi;L3X&?b &eB]I{56EHal(rɹP\:$TEN I&pY7[9)m CoCwhӺY;zF;c(RŊ/Utg(8mSw^ 0[ce 6}T `UK97̆v1q@!u݆9H?NhD$"T@7,gh ]' vy/h/XrrmxQngB_$ %8mpMH{XDn?{#aKl,J !wHL)J}$Cj>W3HW%5(A*йjydžfĠ0;;dKU'WC)%ҰG ]2&pp >o?2=>R\M6;6@f+Aua;ލ[/HΥMFe\ )I׬rHMZq] /2'8'n?jC^|V.UO/& )J ux/!19UePQ`KKkqāWslv2嶷 +akU}D.1h7k/ IHMXhelC'Yvw4õIW3?Q5QDսRu3ܐ,ر 10C"Xd3zfm*dk.%gSiI =e+A/ 31G&t3sd[x ;U}j\ >$zej1v , ej&.#pzG](@К\&"7aNqԠfE;\}2t2 mSޗ"4Im@7'zDt,Doԉu殮逾H>ssuRe z=>ȩocqm!HYglardOȮ7$ %3yjJG!rk3iCE :zlG;e)cKY91Z>au~sDiW7%&E$2TRnpK^p~\ߺXå5$ܖ-/l1{ͅtEG١kcjUJ)V R$q߭{{19eg$;=sVdi!@t wh[oXWi&ʠu&ϚbMs-[z@wՌ|;7 ?Pp2Zjr$摭'bՐ".&YHÅm.;t^ x\= kَ3^|+iw/Xm7,Eҝe Zqؗȩ=E`&ӗSFd^=9N0hb7D7\Q?0LRNIzpP|&b`y/'엑.h[B۟UL?1N3(K$<<Q@=u'f>>uLY?*̞m\IH^iK=4')kzQqdP+Eb*@\#<>'xYx]O6Mf ϙPՇ%y<+r=Y V+P_5ǖi+>sRt}򤺝UV>]j{%xe@sE2xmWMɦq? —G:>(Iy꠳BBA <#^T\_ Y +}WV kdltv,ιP_䐹;L_3x86ޫeY+Gc!8z~0ZM~vt`mN,Y߉`݄QIw+ Yj;<f!;W}pwUyGm1L++7]o8z&Bv.|&x1;ae Gԧګ+o7u3T!}?n&Dα1q8osP [O>\>|d`hK7lISnC7o_5ܟ]"E|YU]~TRoLEUؖ(r[aGI{=ƌkn@+_0Yi7$ H)=4Ni=#i2 _P2ZS9?G1DlN f<пM*Xxߒ&Wv "F~`8=j!jٻ^Ľٰri>ŕuԷ@L[@@RH=|ύQHKr܉U: .pHMpabċߟ6C!.TۉbLm4kh7W{(i^3q~X4dVbe>J/rf{y&=SCVn ?f'DJRVfƯՏA@47bAʉg*fkZrH2ywAL[5!6edznMr}x1:c`'ލQI+8|pN {XݔDݳQ-돸Ùz-9 %9۱Bq&ǫɤԦq]i+9Eؚ 61qj&A1lAס~Vn&/&$2 $$Q J1TsRS۴Ugog5fz&Yמ °{ѧPw OP-޽`Gv\9-o&'$2ZHt_\PƝPwMH5@/uFqS~xZa4VɷҗCk_}S,(@{ӐVtS$kK nqqli̷)5xQҽ͖>w_T:fw0Ggt+i={)/ٍ\^'bGF;KoI_NU(X@[>H+a'uGQT7p 5kAD3w-P9qmR[#e`U]'m%K*z[KH29:S]n0%C'm%T%Jty8N*C281Jeh˳> 溼I!=?q0LTf2_ rnEZk4"E/a.V"` JIl{מ{9iNx GC&}qed{"WD~?v)cQ0 B0O* +Hd, !զla>G_ 06T6LÛ-Ϋs}Y;KF!ٞCɟ.}׆ы!{j Ͽo+)O; TnO맼$姘 HNl X0 U yU!{S:9EټaY=3G s2T3[4-('\e3^f" z^#WXZ90{Iy J<:_W,J6zXIZk^8ޅǥզ[L'RJH+?VqxĵNFL )R[ ypŒmZRW] jA$vdD$x:4 Iʙ:3TM@cE O*8"XX1M5I4EKX#C{./` 4&z%4!>ǷfL5&'VqT+;|(b0 J鉤X\ͤ`aWbusMið_P9ܺnC]` õts5ZG3>Ύu'ÀaM(녠yŇd́+#lpYwVؿW@-x@-e@XD5 .>JoF7=jL+aڴ#`]Z AOIQ˥ˡ-@FkˌdNX|@ "KIG#* Equ̵NǠA "Jb?pr=&dgq aY >*}߂ßH\2p@|9.r~ ;\,0>wV%om8FI^^>N kReЄDUjeKK,Oҹ?R&z&KWn~Ly~WaM+X)Yr{VwJɎ}@FUMP{#BҎViI0(c2߮$g,σCJf1M})sHǶM3mT1F8Ibd<%Qf㙭W"%%GvYfDǛ rvĆXW_LJk@9_IjZ:e#"iz"Ы5Kijwðj{ʋ$ y lFբi10ؔLq9p.εA[gřa"I]H 4U-D9a:_ \uBV"S-ɡa/źob9fKV`׮M8׃/*վXgƺt+G's;zF9rK&G:|m-@(t^>(>ɀ"*T:&qddJmR&kCSv(馐d_!!(e+tF4]eQk<6.Na}uoXV.dDHx54ekɹ[1u5đsc2kӵ ˭~'OHi"fWd]z;Zhh"zڐs2l65?b{CtP$s(!⃢'#_GEJ)<;EyϮ¿)|gZ" P8ybV 0nʕI1Lthp\|zdzG[5]qD%|n1B[d9Ucޘ>!+i'w×<aʘ!U; >Cm`=ˑzZ(0S}V5o&ؙ׋npy\偐A_C;wk^O0?\׾'kb@= Bm 9*eP T^a8itt|yMoR'ךE o#p/itt]k*RsV4pwlsV{f-=`׍OeRLめ0.vv6]ǢEN͍Gjw7v71={4uKeeVhE5|BG|Q!NvOq ђhapK5Om y E6`jB`t!b-t1@9B$~5zZf1":vE5jxㆸ N4WI@Zdt^6Tp/#<ߐK}+ڃMX}qbqtIRT Q&n히>j4&{A5V{1X41EV}R)/~q @#.wqzKNQĸ|M83Bgb%P=ΒW/%A՜$q[j.-9"_6IYf g͋_ycIH.'RT)Fphʒ%$6Ƃ䏾 ""?F#B?Ys[0@pcB'M07$BH6d\97SUG0)g ~]ӛ9-y3%fc[a_J_#Xҋ^wIYNwV]4樇MZ6I1浾=#~pVݤ uSp0IWq4ȿs1d9"]K'J '.ȧԸY5<R,C:D4guYe¹F&T+M^M,% L^_rFD}6s+ˠ2-ta_s `o _dž- 7C?; g9qwMmbt+ī$>_[r)tI%bpDsxԴCU ^yN{z""܋~,+T^-Q"R%SWOVHso5Wl0~+]Mlr܇~o_8|Cu WwpMmqS5k pN;ש6F\B4q<( MJx>b2po;ϭJVc8p c*Օ@XV-D'  FGdDGY_IU2W_C|BKpAT[qY+[f' O.uԴF] )_NY|"I'ъ`U?r{ҧc(|ɡQ]4Bwz-[KH;{5?4'@;G(!+˴*z}pysEM^ê ?WC 'Z5,R_g9#.lǗ}{o1[Zh@jMcK[5yە#Ytэu]ٽlfXLfL:w/be";M`!Pi!Ιvg +Vy/ hkR֎-^ܗ(]\/fh7{O;f 0#$3%h>@Xr iB90MoAfۊ~uBJ̺5,-&}N+;z i.7M{]Fݢ$.gKGwޒ\5`;/ 7—!LŮ4XO|hh8(y,v ER9) g=Al}펼&DD5Fڌ@NfD{ 8( K|u%f& 4+-y&sīW!6<3׆?ߙ[gĴ`%o3sc< FMg2tN59ú _Zsθ@a8.'>:[ss%b>C{"p 6sOog $n,]˜M0,1jQ"RtLe1OWG4.vJǔSA3pP٘QX #:C`pBQn}JS=?K{@ M}(sR4g9_L VMIV$%G!$LFm8{5D, ɩObE=R{_X!@*o-- wGn%g'3V+1[R;km[⟙'Q:$iR,j11 qlX*3K!:ڡ,v 5j_fկpj iqn$|tC1y ˑTՄ+^j_lYr]$'`t-fȠm} 1Ρrqh~0pߕ~zfxOWMgC]~O-6Yx.DXj=DCGw/<[?ڠRbm]4 !Db-f7'!8rs ") " hM(WT/ #|IECٯz]>! ѾCS:=ŭ 7{R 6r)QĂ-_{3hqZM#6h' ~\e}(^='c&ݕX|-1/MH6K|7 ߻ xť_:{v#~c0<* ) QS> 28@^;9?2ǎ "r5k }I\pBTne3@1.K2[|[l.\ګ3hYx~`1b^',)?:(Β#5Q -R.TIҳtp$Q jhi*RskC'DBFҭXY~WvbCg[:kFڦįNK!d8dP9nfG Epn# ȳ++d.1M$wi,hX`&2z%Be2C+ c0} ^4 :FB,Ū3٦ sN;~Q[/o',h}MJw@646Obء2#q,~/١{0bDmL)~7oA"7:,_ע"{KGq!JF\/GFlxpBH\sq@fݷf5 rZP#=Q'C<9P'y{)  ;5I5I hfe&F[v~`{1'`Z1gk<}*7Q »X*Ա zUu~%gR'lzKnHYnE3/܏\ <'Z]Ge%"b2@hnJ(. ZhCiK56P68C:k{ZXzutɲs'O8!~:?rzB;놃[h&+ׄj svqO"ԮnQѻh;y)jpX Ő& C[yׯiG(bp j uD_]>ۭ]>^0it<D1Hyn ɩ+ķugd sxo_-YY3j' jE)P%oM{nh~(u+Ցh(d 6sT>d!;S@}Tqz[fyqVFO+VAm2y ~ ݜLj>ǖ^w-]2VW+Z!$1Idv*B|(B4=Ͽ߿S"n!%VHTGcNM*߱JCeӦ8S$p0*ipγψAjJ #]Ȩ1K.'VB',:^UU,m@P!i'fT'֏Z@ۄ46{Tvm=E}LK INiW,9tg%q V;#'ڧbdC~fV{fI#V!UԽgeP1p}NSzJ@U'}D'i<M {RpC `6Ee[jb&Ȕ^e̐{o`/P)>Q(lbS2Uqgsk/4汮jNޡRRQv}a@ɤJN\M~4@uj@X-%?(e}W5Q^bP41 hCp؅/|%t?z&Q ?DF TaZcf>mjxi37U/;,Q~h#`0&jD!0燎D}$W: L}7W`Y~b$OvFCrAqD/T;# np#̴=[,Pp.ܫMvA^|˱T [L,5_TlJYZWDg5Xpqɢ&v?ݖ኿ f_ΪȊۊ "le`d K BLy >/gLæΐYhpF(אL-=xbޯ6 :'V捎2_c=]R),jfi^SٟRq\L"S6ECtbۦ4+ pтK5俚^(hz0z?jdZׁG`!)rOiC|XX|H[Iʃ8q6[ܻuӃ vȱ/˻$BKq_,tToM@=@]W T`uͺvA/ב9lOrOQBQ]nM^چD*fU$0򀜝.Hƭ9 6-Pq&'Zՠ9ck-t<=334X+(7AlSz N ryCF$AM6Fb=N zѰN4@}̮ ?9ztǙ-$+PЬQ\+^hĨ2Ϸyo72V.CŠ2N!xX;eo2X:Io4 ǩb c mhJ_D},p"9pޚϡRTf$z?1״LenHB.`4k°FQ/E>jx~ɳە3jiKAqΰehb溇IjALŕ[ {S= "ע/`;љQ';Mw Hw{6G$f,weHL;xTF}t"k d]lj'F8eoD.n]oMۭx5p޽.vuF:S rQM&6şw |ށ"F sORUoBG(/x_ATb,iʇD%5Hq2IKZ#u@BLFe'o/wCOfo".q{)a7ϊ5Ie%@Ջ D[qe++D"݌EyhGQgч42 ÄE﹘y_~;#D"]Ns`@ԝ["R-,)Ts}8^+!ufД'-{Ā#gR"irxeI<` wVw6 A"ozM!w8KB#=Rh^v4~Uk=<{rb X_G$x }h5^*$ꁘ r(vR2i"Kf`\bBpi0g`k8*dqyt;~n? }_Ry'e|xPԾksQDukԥ#39B- $̩2l莉5xh9 YWbx(9( %CS8 IyW.ZYDR-,%3ь!3ɬS$t=Q%LǤRDVZ9AJXw496y% ugj66?4X63Rm(BrjeL-怟_d1RV1c>mz TWMЈO(nlvg7I:񹉅ɨv2eO81LZ{BФvc8Ǐ|4m7*ANCHXAF?TF'%׭`@ E oe ~  0Q\?MO:Ҏc#FnЇd(8 |\:5(X%r$`0*daasnsNec^["ecv!F7wT f4rV_'n۸e"ařc&mC՝;r;N lsw q 86Sm2^{ٮ| {b5<#7 15j?UpBH2NeLPn5ldY m2bt-3jbx슰&9,{ ˩EI|kūe;ggX%Yʮ ЗcI7(]'B]]￿s%u()䛗ht#LQFQQja!2 L_g\hw͆O<}E NWP Ol>a3?(4I.Oros8DHJ0*;bfWlK|mfH mkqn%'kj@hQs۸PeDLJ>H*>L2Y?T y{ڭOm ]@YŤ sunکu#4WjppL(+__IR t_C.Ʀr=[MxD"Z ȷLk'ʻ_@RNCΐ3RbS {׈e3c"26nŌo7@8C^'\F31<|5< JP?iOC  ^K kAUx}amv^ .uo8]g/G;])Ǘ1Kq+yEٝK\]Ցp.ldH弮V. ]BuSW,ƍ[FƖΈ1(L=p%ڭ!sg\EvD8NvXAjLdp4Y͑/wsD `CF@<EIJé];bWI<2˴ ΂G ݻ\HeM\եr|*OXB'd|v;HKPH1& IWy%6L|s%jf-m, [ꄸLjF,듬]I8_(lm9|:_:W Ւ2wN|SVH-G= J Y4F4}4I D,, i(΢j#J{(w ŝgbz"ޒU( Kb¶S?L8_$Ü!CxSr&_lLC ?g9cxaMל7:n m%nW.CWtX" J+3U<q 3'U @<.r;뵯qK%u4[6$׊Em]mW>{ӄ ^]aB=k8R\y{>?~@hL̾1AD4ڂ^H _)`%yD'Z?rqW PO^Iqe*X~4,/Nk.XX#.џv)(hU*rf wY-䥙ϟݖ" )u vjw^ RݮzZwr~✚ l-e§g#iDžc,@b%~~'h8l]Nk W[S`"H9ܙ,$;;b (SSuDj LdJ r}nGa)S6NrK5N"•|C$Ws1~oFvbL`×WZNR>UʾYXUm58s 8}@2YPo(b̢ ]ta_R}N $98XnF5=W:pI* !o0kS SƸ=olp$5_LuP;0Ե[zԂ:/)L 'IGFeF5zm-0ð#P}4Z@Rh(:iUOfxthW#({Qx6u_'Z \<ئM 9,i2Wkc +F,iT2.pC_"n8ǣI _=[n"_)]#yg62Nsz.m_hv0 e&PqܸwV* pr"ig,VۤP= j2#+eiE%3v1cD) xyqy:ѧ{p>e%BŔjBˌ6r[Ok@"*XĜgxcU|tKHj.p-OL8tʍwڿ:"bT3cvNNxA 俯{YaHqnTo~|k4foԐ~'$_K?ޏrnьDNΨDZ! Ԧ3nPhh%M&Ȣ&j]5FCd-@}`=y;|ì_!5PA2f"[(ȿuUx;h ϚUpOFD_lC8hk |Z-nDDZ&o w_;Us٣X}6sDmȄz24E@,i wtYA?/'ևTUR؞]#PJG^͋FDv9ě䚄gqX̥z{ ThC )R'M -}fӳјtVkV?`AQq8@RcrbOqǏtc$iУZ|2AM<,N"q/ 'CÅ_xvv1ד0 l:4{nD ꓢuy l-i&Rhe&hKz|P*5~oj y-[myA2h8)QK{8d2[5ݵ+p6"xpQID{|pzG ߕ(9&@%0{m yU]oUo2$9= AG=֦JčzneeLfQP3LOD^Z9Sl$$^/5ƑvJWغdArXm ­(Qw`kr P*nd z#}9Ʒ]qWsR,GBݪ"yMmpϖ>TF"e3iG<֮w +tNPͷgfx4Sh D]ia S\mj=IU+>= Y\u'7uþ0|RzaPD-HsCąaCA%^Hon!fnL/5'V*`'Z8a+B* J1X[k{ G\V\W?BVL(ekWo3qKzxbXxDGps(Fv@'6&5W/;]9B3`Y+`i2XJ?*xZuWbp jG5F] J  4Mt3rhzM{lOs@F[$^ ;.sΊ{͠ ɦο{YO x.ط\y; *S/e.O/MlęS4e4K5 N @fD /%{;dh~ZAx*(@L.W_ѝcп([pD, kΌ^ _0lӺ!O1*AJO6P?*m`5ڦ*-0d^mg'q !Ec I†C6%_oZ6s@F+׺X]G%˳B"]-:1T%k^HbEl|^]b-9bXj͸N"+v; ;3_ q&v7uNu&Y^*1> 1%*cYN>+'o9CQLXԭfk(XfdjbCϪm*|(%5'e> 4#r8989ry":hQ2#+zP#}=(Ld)yrtbd=c&8E-!fRbYERz6G}#s[pvmXd7I@d1FkEdc$}(6*l1Y4O_sͥg*C/B1*2bqٓI^ #^yƳ"@'<y40_ DSwJ[Νצ`/ Ro'lW]7z' AGyH$aAqu߬UrO8Wr~F/@$S`H3eDJ4!xWvf ?F 4ZT؄&B:xJ=Qm5K~44iM JxxYECUI.!sW|Ln)=i-9q"kX袜l@,-:w% E8^h).MmC>:HpOgn|+iᾓ\1՚} Q`*eM,oHb *=up}Lʢ̵ w!ҹ5 !9{ )y8켺K>Q[Q%^Hk U"tL1 b|Ue>kEPp v3˰'})Y0*nsO cuTqѝq?b|rATӪZ޹ F"86{lDE9 ePߓ~-c<-ajA:0 W lk*Uq]rf]7M]Es*lƝ4.o<`yOpԮQ0~C!./eߴ [=;V`+"ȶN-/=4sYZ3Yo@2"5_>ap[$k:\( ~7&UY^*iUfts7ڂ;c 4ʋSSy.#* m1)2ڔ 7Yc@gMlklKE*D%PmnO Zy.>PIxٓa5ǒuܹ.Tͳ[l.X˜ k=4.*+!FuPSD 0e#hn9qKix&&)?ܡdfP(H!1>$:5*Ȏ0RUsr[B JæzP^wZ*M|N&E.Xx!@$Q|fc>rA=[@&uImrӏYR!4Qd"ɕo2}~oUml^ O?&1@z 4Qd.-AV+wqUmLVN_\1fC {︍X~%`Iٔ3) Y 7Gt/yr1'}o U9Pz(,e#78%jAmSO;VMLT>/XǷiFa9"o6_0J-sD󃛐ADoslwE?zJWv7p`=U־&jc Su}VX\ ZRzC @3Bؿ-;cTb]'=' Q,[XpaT&ɊLm݋41}nI &{Iwoq%>IfSк5M@}ن™yaJ-dVVPZO @~}e⨮`?L.膢 !4h Yd3jVre3SOXdD #8lO1bXy=9Z^cDJhCg5T7fuГWF|EP-epIE2J]Y.F$e\6529bERYhGpLD yi˽#Ђ-|sLwSJ䯀ľ{ܛs1{c(k{X0o.vj t&k$Hb~YqtB2DS^@|->jSH,y^҂]ZLz]̷̡ND+%r/D y\@Ox4qdP^LPU'ţ`z ?+gg`8Gs{*rփ}KrJ]ƛHFO lG4}-6Cԟy؎bBt Uu·*lOPZK3N)&Zw,ɟwv}xg ]Mu瀚Vϟw5g }y")j!=D&{$yxNcH?:G`#tDY3Gm)P1xԼε=o? ![UG?MAPK J,SYWBqPЇNkz`ͷ^rNz>./ٓ#8wx7Ace$[x7zDĘmȌ\$#O>>6?U+5{ Dc|^"f_s_`,]4+*fh{z3 ^if]p?ExvOaI1[I_~26aeF?opʭhB(r@+9E3yQ=HnBÈ5]J$Û/o9ڔŋEm-&42I"u7XHTjv^Ax-yKξ[B&93L=sPf2*L}X4éT,:9&&`I]Idz5^OS_'-wӔLjM]Hq%%ڻJvÑ -NB{g ?{:Tpk'@eĄSo4CJlR-lh aBΤB~mu°/M( Be)-Fvs(?wrOhgǑ&8 (Y'7yQki(S9z7nwaug%{Vh7C(eoL#l0d UTp!vOA)#Lv7BFsh承;BQzmRa4B$[ ޲(U'۟4x5_$ 7M-t*jeKn&Q2R6'h{[xcqU`6vWh]uȪiM-cuhɬ>טioB<;5 F B"&$TwWnaws |%fbDFbB^G\1m JL. hYUfa.IO0nЪ5ooܦ^$R4稔kDƠVR#Pժzl %+ljGo*2n-}m=LAMEƢ1+3[K3ḍ:%`U[vԯeTJeIIpjh!Y4Aݔ?GA\y >UJo&7{{ ŤA>Fti)_TLQXKqI3x7ns~NC԰^9NH>L>q&i he0jftzU4%e"sLo}x~ &$r泣*x>A+fk7dt͞]#-Vcg.^y)$w/Fq>Ǿͧo9 Cw7 U/CǪc)u4[g>UI$C֌Re|ÝR̄T?Kp"LD ^Xf\ih/MP?Ll\mi LH1y+<*yފGy"9_Ǒ*tr?><7\M5mÌTUտiVB}5d? _ ͩ`ؖ9Q\RYZ,[%պ r,+v6)vMIYNS#sc}mϿaP@ܙʇPEh؝X$-e|1SǾ$GC}(G<uè]i3lY 5-S0s,,ZN njiCŹWn:fӧ%“ؾS3TH{= z'zz9M&m)S| +7g*XX` q, 7pPI`%}\g^l!Π ^`nlE-[σ~]ׅ椼X U3 ^XWk(Zj(DrWU5;.생_B,h@ p|K'ӵ9o^L+p䅼z56[ҳ]D.H2]LJlXpH-wY&ՀڢfNb1/3ɘL-2`K*mlQd8pHs[ǥ 6.S=ÌTVUFMWlb%`bOz:F1ʼn =[up/.fhxY, sk9ZV4vh>Hgoئ^!o{j2'&RUrB,J̥YЖ. ߨ%feq| ArA<r4A{p"))Cx+ &\l*boտ]C$}C\O1'õM9@'T~>b_ j 58Є-uؚae4^0dm/b$'RvUjW-'2D#dzŷU'а _xA;IĂ>(2n|SFeD @Di%65WِjOZZlVE=^5:uט| jp_ag4K6lQ[&SU9N]BI GS+ZaG8-@q뀪X$/WNw+ȉ VAl\V:SH=al+UHٺe[ ǡB2h~-2Ý$tɤإvKncfϰmJV?>bbq;2IdT\a3߂Y61R@M\7ܷ‡}1y-NwaY%40H#NɇnCI5`+:@[%\ Xc*5%YgJl˙Pyy@j'I<[9F|*!ܼ|}TjW^uL1 ('WsP)5d;NxRD?hn0tOM+#)rZ}ϦpMK01 /lFQ[&FǍZZI0m{#WMX]^1:ؐILuv$G?gF쵵.}_#X]>u)%B;zSɟٝ5-䔦ޗr&蹧D7~܀~z[u:z_ eY#[Zk!`㸖UHCf :gNL KBJ/{uy(hkn!4%/1jpYMr:tbӠ(>dBkFhi&j;:y5!mVk ܶT$k\K#p]Q)k撂GE*G-POcL?Tܴ#{S"XoV!*j7j@'"K&~3k@t5ŦvǘM; #~ :3\'Az|FՋMu*4x閩^rnyuȟs"dir3 T#ٕv`_Qp孪/l3|<p`{=ٖ >as\/mxW/Q,KQ@-=n% 6}l2}b9$|m}iG'Dq#Ykt xMoKmh4"`mj^f[X|ec# 8Ʈr +$S-='ZSfĀZ'; *sflNt}э_f́`}53aOr4^Т4RHXI=S@x-ڌ)C")Dk9 eq%ݛñ~`jW_̃*p >܀#7_{/o' }GD- 6Go o`65j}Zr_( )SJܒԔ>|!DDdp dapSsɩTmj .:@_£>oݚew˄ƟcapbKæ-bO(]o\?R5/Ej4?EADfs d0 ՚KaG+oF&p  >zU{g$T G=nmMm6+d /epk%gJxFAǚ)l<0%,tpCh_Y8:fyw kOQ n)1yUUV͂N쥘Ĥ7n(/KJgVDtix~4loE63%Jc1ݍG|*u3p(tqVנGR3'ڢԘ 'O1l޲3+gs6H9c6]}ԁFM){d'Wݰ}ɱN+c(= B^[VB+TIߕ>0AB#iDiaD^Dhb-Qg4[LcW!=<8o9AКt ݺʆx2uY U)Wrj+Q\[$C,>庩dZ跄*m؟}!7 ,D"j,y@[- IiLs4qFM 5+mh. 7Y9?}d"@o-Vl!ۛ1i eC #hFVXL:*)f7N* noļE &⡋{dt5%¹=ՙ[9k~3V^jZ[+ڮX(/8p^wiZ)6mkd—8v GvT;g:;.ILIZ!*l%6K%b^nvְos@Z@OMה@lRʭץħpS?;d?cT@U;>@8V %1|b'Fp(=|YG_:7u*dCAfT4!g1K 텁w_ir9!IM/Jw<5<kAߡh\W^/e>3; &U:4~z3@ޝ49iA.˘f7rq#X.x9TSFf:|h Nx6C 쳓ͫn7Y&E VNR/c:`4n?0ёz;!--j7{eHA^]"֨35:*pzrA[Y7eVW2PHiԭ ~j?@Cf @?U{-g\x5VOJW[նhF?Mt5`hTw#MxAe䓙<xv,u{"6=2ulM/?$w1V|PMF<[/יtfޣ Z3v%K1{21JE䡸 /:ݎ,]?ԝMWoKYQlLꬣDhRw$>xK4qj2`O.f)@DEI|nC]fK5>,[NݐcS} IUE3Z1Q"<off3%̟]&cHnQ&ߦOijQᡮ:K{/NեWs:K~=O ]s}裯"@`$r \}Z\WYWc|}O:on "ziLJTAzRgz+z+&Fb-^n5l}\{{{[kQ,m.쐺ۿz=LY XcUFPlяIS<.` 3ܙ##tf,%qJ"zV"C] f8 ,H/\Q8OJ͝<6G$ݠ]|̧n9 'gf)'q7:%"u-ÆY`i #&5ߚ[T8ag8'I7/Rwk ˚#Khcm# Icؤ=G 'O 8Q_ݖoU[E.5@8)9/r`ɾ&;VqT !k[5( "p_G1/YxVGs)\&jG:;^QdW5?QtW =}u;d~_s76+縯PeؓT w8WPh\&7c\ [deITR=K0 Տa1]w] /."/[tY8<UGA5!z.yc_[䙅s|`mds22~1T^m%Lܴ8mih:QD9H\ UMP9mD]",/U]| AXCy]k$4ZFB?"Yk+ U[38\]x.qPZ=BwfBϻI`Hc}3,ÜhOw;ruy[6g\F&7}+OZ$,Cc `Ov-׽N}35FlgVgl"=Wgx/(TU |=l]L cLN?w0Ih^ <2 .2_8 ]ٛ׋~.goISx@5IXae{qHq%.|,OmrXu*$ Va$!<4QOԊecQe#VOܿHG AO~svO8^`Լƒ&7!Wt^^EWFAa %[@`Ms3#n(q}EYub$ӧ4?zxcj >FIXD{Y9:2e ?]BپCk$, *ۋ-dDq%xʉGc/K׻ElV(ߔrQ,/_ML[_ wIOB(;pׂ=ЅU'IjZ9-Q{{0q~bQV綹Ewۻ)<u(99-%U 2v]%B\GF%+g{T'SyY F㙍OES'I^(hb.D9CeU]GqDL]v^=%u~ 'Ϗu=\l;u[AsQ۾C֤8QI[Ӻg%#4׬Bc%_npgʝ%WhLDVzR#<ş>oᶦeEM H𮁓02M P?"Q DaR?]E>}_8M2l7U*ٌtP'_urO\a(p/{-Dzr2-e5Ihu?پE9ԯ/#vA{U܎:&}N˜:n*JW}> VSpJ g+)WCya[tKYapҵ Is+kWD^+;S¾MF$Javxܽey?Bq#pN_Q_cjn1z @-t&4;=Uxyoǒ#J#){2l5±kX3i‚F 1UByhg|c3 Xِ4 Kw(KqiR ENS캚ʣP^~LU{& hQb~-;y1g}X}^b`m(10+w7Ex89CA\![X֍Rey23o@tPMK)JkSrU"0x/^C?P8|g,-gO}x)n=x0 e<RqOoM0'#x98.Iu!E C>\Gbw4V-bI apT4WKJePBfÃn:v©A^pZ&qʕɰ )F~[: kG, PB."qKf(>]`Q"W VO;%1=f/ZM&̫q3a~ iOlZqm BV)?VHz6`%,cHmVe|,a I+DQ8XC': lp\-Gϱ`YpB^33Lc2I/p`q"tr#"08Ϋ" ab+ AAf`-zݓ6hS Alg6ib'U_WJ4\/nKEeR^:-{YԟayKDpmfHA$gKY5t\޲+0azVC`ҁgs9o4ϭ3G{T'+o}k!!֛ReLux>GMzG1'rq5j쌣<<H=9s~e9J_Mɇ`hdD0q9$y @϶!K8n f_la}A2n)A j c@di V0*$9zɤ"Mh$y]ٞ Dn w rD'UUe^NM ^Vں*^u3iDmm@f#jnKonsշ(t ˚4O0(c'ޚ U+tj~.f^Lֶ`[`߮#6RBcF4İdqflJW]:_00p.&!i(wErQbwXxhkfm\{tX^0$GW3DJ ⪑`_X7!o #P"XnEՖ##b9 T\IJp=`L>SyCs[^;Qp[jV_K(lr4ۂ?>JAh![^5Xj;_ %(0RR"b-J^.OE?Is_=TfO^l#}8eScDB4B;.SKn Ed vZle'v$h{0K5$o@QCI䐥R%3ou%I䏋#Ky?] |Q!9rK?, Y(ږFf9"eQe8O.[Ջ$$ A`0п԰aS߫BOk +zښ|:?NEt.G8Pؿ^[:#Vڴ Y]]u*nzVXXx#W.$Y6rd9POMe™W$̢ m"R?@XzDL\ꍧTVӾF\BΡ=˱!҄+Y仓#r-oyehSB7=L*zp^TZy H4v*<^\ԿNĎ?=XUǎ+1[x[i%+hw&A#NL*Hp ЊL&ZPH9 ]]JEF]r%}t4EZPnS|F {P4Hʥ4 N,_/>8;ϥ95E p{BȏDP~RfOJa1KLCl.,+ (D]H +Ķ4`~zlrxsbB-"w9?Y, _b!%LGrDaS;"ȕ;cƳk@mi*/ CAE/Qr\0"?Ý"9ؠZ=e?kHFXM0ޱ)`=љF؈j"š=&'ܺqI'A!YCD%J塒(pWR;Da` PaNN2c#ϥs<]zhse;̫DG; wz PwPb|9^M@#dcA%o5&cٌERd:x<_,P!w)+|3JPxI$V`0BZ^i)[Vij\xhl.W_nrGߕ+ ,>R˺y%ܐ@+ɤQwOCB[En\ӴԨ׻ՓP jmM};,EodHȶu>0{qXGDqt:Nz!KK4ymJ+>Hb AbAaP;.6y7/?:3ЉPZԖk%VEle> f,6R$%2{[`ݦ.va Bޜj}ZɊ}Sd*4 WYm}&]0)d=ArZ  s7ГwNBM[|B#|,BբcȱyJCm{HxK2HͫԶqleŽQ;]  ztizyyts>܁󞏮*zƌvdoGyM SBϕ$hdRM&")?:rGZ2 $*hH ,bֵ/m "FG6bS͟Jkv5G{/7`BӨ 7s8#6EҕMdt/hc?LHhX;p z;:50>G,w"W˖(?2:kc|] =K8^Sm o{6^h5'@֢`Gd4d h"fa0]_N米vlbm(1^zHS.ڐƬDhNZ`X̜s{y 8[A% n-hҞAo&a}<yV1m4OY5<@= f@1+h|]q`UgG7SV 5 P(ƕF&ڡ[6Z[seOnz9ZthI%YٜZ뚮#uAwfSQ%7(;nf/ؤ11ԠY;M(T'pԉ9uu?UEIͼX"XAftId"KM=IT2K?y)B kU#h93f].JvQo,}y}-oj^%i4ldC[|#R} )lo.&B/MXCQ&;s#LMcw<-+#\\% q?wr61w%r~%!Ɯl3F=b5B _#4xE{QX^o%dcI>DN0 ;%GmzJO>AmW e~~QoR0LNrVf>ͳff!02LD&IAPL:p^*l0ȓ&sOz*j19>F ]$l?,W[ EkPvw rF=rĚh>֤0HqQN҈HEƢ? ckdԆehvO5ӎ]xE";}NE1S^+ pB6}T8 e3.ξmͲgĵ*~T0YU9"qX= yO`NmΥi*Lӳr9h` 7+e/(!,`˻>[ⵟ]h9g7?UK+)`'66}|D,f"i 9ˇj\:{bKC;oILL~(ūۭĦ3uz]8 N|<@f^7KLFL 5)%k\PPeNTNx$x aQ@2wȔхYn.^/b,g9 Uvo|' bHG^oֈ)ᗎV<78o"R:hʏ*+ '3'7sc6qqmȐeEq+t RPx5iJ$Qo!f['2c65Sd5.cK\둩7u:YwSfFexU&Z}d'ĥ'54:ԡ LX u/N2snOҒT&39-[k,:OaJ'PU0ӢwS 9AOJ@B %@ZC5FEh"o?,F97cɭebv?`sb5ah# d=əp7vߑ)B٠ WĄ3BE#ڧ5mtGIZ9~ k*@~ ^}BZN֙DT剪78?h*}4y.sY4|P?=%8ǰ }~]mDU #1ƀël^SXz%#':,׵VƗ{-<즔I-)nf1lU5$s9s|w݇I{\@ri=9V WiOQgY>Kos;zĭ]Sm¿Њ`O՘!Yrp!/HY{ŸQp;ʻ҉=.KGul2iQ`\"Mpg>]BwΗG.X({͒8VM{|1]xeZ6)Mh3@a3(]ɸb~bVuJ)WMpd0f͊pLjSpESLP$0 Qn4Hdíe9s3Dѷ\ҋO\8x0I9 =eXǁ j =Tز"@\V t_V\Gt0q(=ÀUp=ܛ4&~ޕye#TdžtdDU]NuʁC-*{ ux.YӤ{6rPjeWs=3`Yt`2W"FbpNCK>Ϙƚh$qp 7|k=c>j΂3i9DVԼdhdz%]>[ ԎC(Jԗ @Ύ!DG doѵBO-ʺv#R끍Z<)^(2ryi6aaiy+f<:*^d2ͺmwҞPQ,8z0Vs=?P 0':63K=P/bL$m0.Ǵ8tR7U [3Ģ3\x. u(y( =avsj_q2![]N`JH'(\:ʙN*]8@e}UKәgM]A?s$sz9"c?*z[l(X2B#ϥ_zDn`$"C5ӸDVo$`$+Tyj`߼8g-,@reMKjȻSj+©mSkt&CUپ2U:Z"-Hz"PުI9> +hIeKu؊O8Nvw} i_;> @wOd1uC?䖟{.-,7;$Ug}@Z-Ԫ5=taNs!B6{|({e^ IYb3 CeV. LQ% U7^6J#,:iCײSpHh&C0T yc-w۠Tdݳee=Vcfhg36+Kg Eb=ܱXR-Q7$IMA z6G`,b,ɌK[}0#hFI;<:9=e\&u"ԅ QǺ1뫟z7-M> ΍R@W d\̩]N YRG6 5n|bO;GhD3QceBqֽow6w=u5؄9COlyClCcaVPm8o 6 h1uvH4vFy@{mb(V%JR$\}]Za;O.iAr9Uj!Rw#v_ {ůV Z TJ`9j"!^_[4u]e [ջk\hXw6G,ns0=P[<9%حnds0ˎʗM)=OIW򱻯P(L?sm"sQ8:'x͞?F26+c'}NƵOwS3AxKoyf"$rS~qEq| º1qop,be2QdJΗ}R%z5Or#S|Rւ|;<i 8Se> A)|a<덛~fOַ 0 >@H'vP3Q !/z0d @“eJ+9Py>bȇ~ pK)dсZ*k… cQ\_FQ|}oĮuVOpԷi$[nDWIawUE3:۾p*WkxCqż"ܮihn֠$%MpZ1s~z#TtWu]{ 51 =IL$.QŹ¸PPg v3r05ޞphEyjD]ԑv`xe6DY)]Q"Nq1ʿhMXz}l\UмYَldiyݘ Θen3 (įcݭR*/ "YG 4B.xk=w9\˶odZPB9Yo- 2Zj=nc3Ezw7C{KpmdyMS]e(XJT-  q5!wmbYjE/\O^(kݰ}KL3Zz- ?}EѨ7Y^s[+tn! 5 Xy ݀Ԧu+RfSl2:5lX@ZbB_ ާ(O#o<1-fFwphr5ЙMaZA` Fk#ڸr6iԚL/ hM*@t*iL5 ۔Kjt;ɒkbS)WV\l&Z&4?ؼΦޮܓJ.qhu HnJ(-; 5v;6nF皌]V1 b1u}"n @3e>U櫐YOhZ A䣔.%R"KTxdyk)Fx+eƢ@CGVԣR]Mg[f+sczDHUt:7 1 ϐqP>"ѡ*𭹯e ب)V.G3_ f Ջ2ܸV4{@OѢ-;$Y!5#E}wA~P^e/NYI1RY^;jYU㨻v="~ w7Rm>B T4:ӭ'Λ jvt{"N!Bn;eؿh[V1 pWGzUL@ͭ$3_zCk[$C&37𯱁)*c !Uea@Biln8wyԠeicZ%2Q#^fyBQ (E.wza ܐ(Pga$+iLÆTQ̘NjvIAޒYb/FW|>aU@h)mJFҘƖc"RĜȪ̜5Ndž EM{ht(Ԋ8%<gs'^PUv6,joY)~w bWLTo'?jKvϔO.z@-D185=;Y26E\;ɫSiʆ@13O[ӶGm5\|/G.Yf9S\}bFnc'; jd> ݢg#VRomSY,˹ːUشW db(UĴ_EsPEd 4~X_ݪ֋ǻ!]h !/ڌQ 岋V%^߻]gl K;vS'Ѥ#XId+ѮT 'oS0թDVd" &u҅ul үA/Cw .{(h[B<783z("rRL M,7tO@d²+.~š ƀL!ƸpɗVKɗU 5WtTDՀi@ pk)#qܣg@T bcRnl2{ߪwOEI1C֕ OzMv_XYvDO-R oTd[؈>?Z&/zL類MXLduAo Qr=j^!\! JI#1BMu1"Ve?Q7ʼjM38t8 1) 䏖E.sj@4}M85&FD>gg "q3W~'咎\dHAevG{~*ΤxHZ0m%%`\cqY a:rM#D[,Pm)$.ϰir8Unm3\uCu]ftV[@%}!đEp1?ޭt)T"g-ErTWBG ;g!/O[TtZ!2=.DB+e}$O\+A[U7 *x:לX@iɺ@ 6=ar@mɥ1EH@>Q框Iؾ|0-q%`f:p'&m]5 ,!f{Oo%QzEk}4 4,YR@änYUjJs/D0(ka7l|r2^=W"w !?ʳ8mkf7PȋVMlHtViD1u Q_ki.o쓦q%HOKDO;)Ld2\c!LMlh_?-z*5DHSG10vC,us LK䪷dǵRzv!T[+_`DNWp۹pMF(H-)5 tn>RɛqJybT uCƼ0fOt\8T?՛\+ >&6g ;;Zs/_7p90>V<;DVt65v|vɃۆ "SMSj;qP)SZ [GX@?z숖V`)`gzS@1-շ1 ֦$v֟ M 9'$msNk #>OR;qWs>!AXB*ԓ6YH"ChwzvAu.<۱VA7d|$%S[=5TŦ|٣:|X[>=w{! 0;Yݒ+޴v C>7pP8)֤vNjֵ%ƭ?K)r(usWGC܈玍{^ /y#љpOB'Ӷ~-BҎ_>}% 6{iK"d(1Dvf2.y,ekU[wV|ڷ]y: 1%:E2a]lT=/m;QpO*wnYE^c 'qL /=X$_7ȱ\FKC=(ZPVmlO1d6iRh_?d٫>5̷$6ji{/bɣvl,F4v7ԥT /ROf/ʕ :=)G󒳛v\p{%3Z<:,ZL}cC+ꅁ|.Ҕ)6vsl_M4]8񎯖f7HD*I—zTVc, ϊ- 0C;DU47z$4m4)̨?pWnP!_EyU>ś%-S}XX0D ^b!(K׭qjM{:kaҕ8r 6,7Ѿ+{1!-, L? ߸ZZmK <+0f9cIP0ZI.拓;haߔD_ 9ddb{`jˌo&ٟQB7ت޵^"q骙6Y4Kk*j[(q@4f<,V QXW!~zϻ̏>useؑpE(>ۊWg"f RbO/g:.GEA"n0Tć.:Q&vKc<"dv8 Pf,Q:œizÀd7_bH=y LPFߟ6#'%|r4%3:kvhZ06 (K(TK_ya Ut(RBUё}&YV߂V PޫUFW3@5+[/|ۺ(a Se6O- >^V56K{+Ѿ҆ܛlV4+P.h;S Z , wJƥ}ʊd5 --ꁛs 6p1ui`ε y͛Nt#Zzz4]mؠ~$|)8`6 f+?EN-Z%?wd8 $57 FcM@II.ط j+=4P CHkҶf!7A zԀ?BlgN?CK 76)Oz4+2)xeq(Qu7FzYq]x{lݖhNdɋK0pfކ^x50 A__̭֦@6^[@=^;բMp嬸&o.L-'E<&'-W=@&k?+LlCi.qDhM~hbNv! Pr<aWT ]|f_4==}sko˓|2-Q$/#1bS̻hہ8 |8zAc#(@X]r]Dq7'L~8ԂFoFOwì̠Oeэe} @ף߷7gt`qcZZg]7[E:Vh9uB484:+MkE?@ kj$'sԱNڢő_sƲ>]QozEA=&cFCv7߀ߍd1/l"dyܯ1bGh`f[ UC~I@.Kc#A@THs]%w:ZL xb[K[GE}߇/L\^_e 5Dʼ!8žsPp,#Se8Ec֣{+ٓy~jIu 0  -1&wGt&e5Qo_wz-oMXfXDhƳe_+5)Q^EԔk.ҵj7+v<jU~E#?zkG{1t)2o,.pNʔF鼑t= +VMsvL5xN02K_92H!W"摒+?+o=|0bT~Ua`3AaS9eW5`x̩uLZsBeA@ZX5e[H|zf GVc`l6ę~yWU=0n5voҾ)H^>p|*Vǔ5B6u{."H@Z,Xgcc#:)~>ƷndRE<05Ӈs˘;ザfূX 7]Қ7Dy$Η-qc$ c0Uw3PG1~Rxf0ǁoM^uB[W4@ީ'1 Yx a>B}1ƊY&fv ti ?d{Na1'`QHr]67thioPGV@HfNzf66C8;p%$2y(E f!„" sᓃZjg"s?BjVwq\R\uA z"\ W=w\&V> X~4 ld)r?G!r^{`Ud݃<#;ɾjM~O2^ڮ 4ǟh=q:˚cd$9̚nBݢn>qK@C (pn>~ $Aw@G04tntNޟyYz\6m!Zb3 8_N<8B5(sv0)<[᡼GISPf0AxO9 3h2$j@约.#lkIMӂC߯?JY _NӰMw32oE^Ɔ 2) "^=w7rݔ3&88pMak X I:cxV6cXno$Ir>7_vKo{d!WcR(ōKDne | u)LI֦α-%񮅥f $1Wrwj#n )牁LKjr[Z81U!P>Fl=VaRኍtn&<a¹؝w,k1@_Ue;g$~|#?p5>Q Z[ 7^H=Slx›+򻦽"r5 ?Y=V:e[@0ҰL)" p5&'lt `2%caHm3YGvYa3w$cw_\3ȯX,ƈ%g # |6B^*1reǭzn2E$^#2^qoQm+ܭkOڊ^~PS!avlmF|EcԥtjUk<?PXC4잲v?=g" hwC1-%o ÊǺo K 9a+)|(J)m~O~ %5:HEboۥtJuRVߟ*SvtJ+cՎ##-OL6p-?,3M'`z$['HⲆαLeY:n5MPZOJ9kyP%y{07Ɖ`57Bx6A:6ZozkؤbpY&~Vވ M*cһmޗ14A[@6m-B׷q?]Yx$jD>ȄlEw ҾBk*`yFCt6d~x[`XvC\kr=A7QU$C qS*"rXc/$YͷZ/?b\k`6(zLov@{T#c^Dn^ AUhϞ.bĂ .{b(nT\® *V\V8(8KC9DeOHMh cw5',Swp0I5 ,P)vne-w؋8m d*Si)DGȚh)hj^5Ibi؆9]- Fo4A6%ἯKNy5KvI.*o= u57yO(gzEԉU32405 % n_@*'DkcwD,!O$S|n)ѴYqr_L6@<&׬]T8l\\p%c`Y>>~ TyHv ;vmxr ״zn&H ]:#3UѤ `F&Be~QƲ{Hɏq9TO ^ĈPX?ىc*A=>Yc zw0?C2䆺XS+aC+4+EUP`ypsǻVݪ nU5L{ڕ'qQJg/ZAxQ@#̇lۗ#Z;Įr d0!/Nқ9{0w(]vvvʛV^Z:>Y<2TYcb+A\&?O (Zs%a+ oq תkɃj֖Riȁ!KU @Fgb}F (lO4V37Pmˇ>If&P#k׳j|w3yg 7u|7Z9  26Fx *^3AH.jyՋK%UR߱rL~XMOleۏTm iβNV8^4㭌<e0jdWI U>zʻ`7XN])FeUhi#Ia=e|C {(o hm[!j{肾nyNgxYul~J:0F=Y'+,fgTV,g@j).@!|mD8=v'd/?g+S*rZb)<q?QUz E0hܻ 7C*A̗s4B.Olx(x Va4xMޱJ7H#IjM^+k'7;!O_ek/x}*CM[ĺ17\-p3CvGƏO!D>)v4XZ߾r/ԥ?q#[x~u܍dt8f拓~*L:8+s)y%lh9N#׋.Ww2cپ]0ctlD)Cn:{omv癔L܉@zT8ݖO;K&mfSn03d^hC q4A:F!Ac*S‰-dUS #Qqtכ`n+sC[r Tz/x ooܺM44tO){WK10AHL5)}\xuqcU9!i !ozlZ7g~B L?54z`ؖٗEy7S#l+C1xP[D~ފ^JMl N2\|IBANr?5+$ۓD4{i؁z @rAԿ_1M@. ?o.nU}w'[Ю$苳Z9ud hr (^/{pBD K[;-A< Nn"R~"qC}e ZP< Kfm(G:iWۤt#Qp xOK g,w _o8*!򶃣UŰc<H7p32ş`j&ѷ$=p9Mw i87jr˂.ES(X&ډ+[ Ds6 m;3Q3+y TUsa^fz`|γeaí!J`1`Ij Ѽԕ(WFbXkPހa׊ rI㊶\~;^x;. G˞J4-UmSkA[h }KzqS4qŰNVB0^r<5]rKB)aW }V~K"c^}ۀ0rW__P/}GȨ 3P|HP?uRpߣPpt9W +)HwD+Y"FV*GȔiKpD(I9֮A^ j#,2G<=<-tTLR;7#.\'.E@1\M6ϓHBQ1L\89Elw^4jݐWL+ْS1q*@ץLJd!_y17m! WMLK<tl69ge1̳L =%CBM<ß$>"BJܪ[ W 䨞{MTL0}1d&q\\9|SzrA-  m{գ㺇 :Dصzh$D6terS]Z~@ u]Xٛ^RЬ5V֠S.1F 1mq5Y":y 01~X,ԕ 43g+{Eo3PEC6P?bw*K_ XXoV֧@pm/#(1pX>A 4Ij1S\)D!3ױSo8{z|L&ͯ6WS`S7$9M%K=חk7uyfYY~iedH7Cu*zIG"Ҍ~wB KGێF1F`TnMA meO'-,sov[ҳ[ro,)D2MM%Uǀ*pZM e0X{'ɉrlјI/ Z5*l>(Pɓ"CT^ M̏SLkTVzqHPG^SCڷV UAS`N#`{r\W,On:C3]6ٍ3Z l*У ..&YwFI::c޵mȽj`#c.h#3}O fYK[Cvv\ьRS7ցԒR%4]7A^Ȍ׾&I G3E7VQ5歠{yUGW<&t`d8 (QiM3}gT8mr,`?kBT'Jh(DQ o?\B4O ,`!D2N~AMi|F *>`G hzm%zۻ u*6/jRT_`-T$> kP1X49N6ZݠˁqH9) Wk"WuU-L]Az-2J*&dxLcTI U C͵ΞN/ֹs>\S}GQ$bs1Y3cK۩fj %lqsTPCc`rm+`&f;+1{ yiJ9#ImQ4 F->$c;/ ៭|g¤F.<'ryѰa I`Fm{2r~~ Oy*WDWY *p<z=lw8ՃfYY98xc&e[Tz ;rQH]2F&$l--MÀÙV@Ik/xRȴbY"R); b۾G֗K&Xd[b'Fbz $_7TbL:DېWgJ1zQ @U`sԭDLd ߟݿ‘YsuA.En.ubhM#OM|pm[LqHqf۝"|7 $|q)o &{!F'=<i?5F _Ҙ,10_}*%͏T=KU贒9?7,2bZE[AU+J2+d8-q䕢Z9K1Nc0vA7b!YI,%Jg;Dv#nQ6ӎdlR' zĿЂaCl)`_BQ6dtǃi7g-|8h[6\c ]h hbn{T+!".x8aKN*{_40K'<VE Y]ѿdS_fQЋb`qo_GkG|pM}xwm_r,}Ki6\ AWѥOњ;Ge0Q&uG_9G%ZK0LmyU~Z&Sևͻ$BϜs} d4?CkV&5.ف|v]hy DOq6LD՘ᓷufn; :~W-+*t9|. 3M3n.kve ;u]rB3IBE͢eNe_ź=H؝'E> gzcAxO1HʛdcQǣ d .K%֐Pfйк'lґN1a4cb1-WB_~7KuYOέv]]*\~ǀ#%@Jόߨ0]J)yEc[ ZmɘJYT]}ܿQha@9e/7ۦ#g33GX#yWgQra(aj @ۼk^jEa" OAp[jxkтk;hU&ls`b2Y Ħ`_f 37\Ʋ$\pY:xsĈ,I?ۡd4Wy$#u| XT⹓>Űa ðm""I@ Nz(8ӿpl1 [3^7v3&!!NuκA;.\Mw?Mh5ɰ⭤ 磙=HG視 tOXv n }iBL%6^3Sr2N t V<%1c%VEWH'pe tݠwdp& eR70g_QhF=^seyrsis7w7$vsZRsNť'z>X0CV=v֊*;~ Y~<⽩4aS]_V_!SsnϦڞ*fPL_n>+ß𒆼o{bX)ʏG zE-©JL_0j(d,?XKFnG$x#̇s4n ڊBEizMk #Y%d8U3gCSuW+}E@[k5 ;I÷hthw엃Yhn@n*@h .~o|lGS^STDü71jhrb%|wqj\Atݶ i+Μww`prF=|vޚSOnP{`p'YJP,LXY "dxܿmc>]7{K`:n:ܖ 9|0Tp7IʌR}|`&,0 _ 1`"u =$ _\zsdqJ^az'kVD SP[d jndt#*o6ON9䂻py4jMyz=:e;ih𵕀&89 A9H?ǗDҳ߷&k _kѐJ5:D:e9rceiOO* 0~4 ELWDžS5gʹ㊫W֐DM 0אS d& ^Q";V6ڣ}C7^?L?DHԬȑkZ%l$-R-zЦT_K;LlJ 1̻ .bC'e4>JS\#Ѥp,I]È44Sd1"@wYx1blPZgp!;Q0ٱt=4j;7J_+mm;Sx^CJT>Pe6\zPG ~vvbO|8)<ֆ+Y'9c-ZASɐ-! [2ミ X~.i#ЧjWQ"%@6Pcwz0yӍO4/- dZ/,e\&E."OM!<۳} zIBF2is3#K4Y<;P7KOczm%ÑQ C#;` MXB NүK\y=eX=Fv0wLCPXu•0V2]$L n67BrՂFe_) \o&zjm>GO! VV'!](>"[<36"Q\)tJcZKnԅ^kZ;sp +nH䡴LLǸ#s>SվGғ>ע&֧;f-do|M;T'{e ~0 t^*lYUmFvDw(P(xW4Ţ"Kc?r/?J4:7/,yWv im]Ӫ}s|@t SQBj,XJqӑw*0^E*/f{@8@9 ͛!ۉ+E JMCwa]8U77UvÅ|tB'Vn}O%g`3+<4: a; ֌i}*GsYnyA]6Nj/7P%1Z詝*ۢĠ N2 WG`0c!Cׇʣr\dAJVDK#b~ zfvȂN|a1st-#/ wSMV9#d1l''j{ف-ylnmlfI ,P<00e nsrT'Q|Nj?0n"u},.rzU0#e]eIvJH#[F_~Qs[&S{xL "MG~S0Sfnn[uW / )~̥tD|*?"ƉCˬ>":bR?@֨ 4Ui<ʇRD pWKQbFSb.`\h5I~0;D[KS>WF(>jF ahvpeas 6TH:yY"Tg˴%aC>&߲-?jQ-xUG{KMbiWDs~%yîZSnD)m8#!2h;8Ƥ+!R';.61eh 'In$XRCg7: AwԪ#cȭf (;#lO4~LY)fǖ\ƨHtk_ä8تx|6T/ʊD1d!:[)! 4)ˉFgeAQ!@ l0ZHuwmĐrΞw1G#z\5|\{ӼS$zc\^uǚL"⤲og*s\2nR-By:ȭëqnzj@a՞ 9)obBq<^!;.a[MhwwRuov EEzOٙ;0}ӨZ#_.G,@LeOr9eK4UGUk^ ĂyOǕ肟?(Q4UW 5m%YnFN%*O؈!tҳ翢$2xd~xeDT3~{,Xq4 ,{B,b#WMp9pV:n3ǴAWlۃQJ?5)&+ -Xː}rW=Gl?h I [ӱ p;1YO^B8굢k/|sZPT˽ 8-"HC0ٛ1+4ł;. xz1LKk*e Ń4m46Cμ/ w\)NbK8)XЕE54):u&[D,n85Sv>FT#Lژ?ׄ>TYY<3doJP_mμd=Ր-y#wx^N0; }5 XZ~$+.H/JwA'jlG g0Nk~`i2P&`:3Q#Po8 s b aP^#TCxKb!6Pّ)Ȓ?K?B*7_koaMT 8H2#='@)a.\.z>ֿd}:=~㲼:CnpPA"8 CDa!#s ӄ ONη8f{ ϤϴbGavyz *ppzH&C$f."iGB86fyvf~yo3F=bZ痠}1^s!m~ n)P(.DXuY 7i~~5 F'י/>>?!oD3#*ŷfn6Si 1gnb5J~kBUt&, U,"!~ΌCʊl[E>gϙ? kvGCF[5)'Fc)Fx@x\z-qEJ0``Y8A $P3=`v~zQ-D8(,!.UƲĚ<;qƀ}]fHwC#'[!`5cyT-踈zu18rղQȡcJ[u PnɃ/ME?@ JAӴǔ]* ]4F6O"b~Tf> /%YQ*ޑCM. kJ J5އijG*~7 g5q`'Z{wQ8%DgmeO[M|'yݓ{.y9&7;*N-ͨ?V~vDŽSzt%[MCOr~wLmt𓘼z4-pC) N Mp[V8j5.b`8_c˪bIi})honĽYl=K̞o~Z S* `@l 9 @<8zH^ʏB68gBe5EG}?пS@خnk+_{ j[*iJWqm8_9,!7tS0 q ˴f#=`:{-M}A~z?H7JͧYj4LM[e8`MY u;? X~?STyL*MْE 22}p ŬЗU C&_kGw!v"D,J[Hy9pٟR-N=- Dz 5^wZ-(Yᖧa]`a6?6j, XujSl"2bTY6VjEwXsXW 8U(Pkw@ho83\Dҹgǽ_ \mUY XV`b)Uw.>ǂ gAa6VBv3%xw8&3󸒪 ,./|)̚Ǡ~C|H19O‰7"ҦbA#v\0:1a r4ʠ>ot4I:>GMWp;:"A@Jί%(+b^CXڇF o5`bRz87ɩ5 Nh3ar/=Ԇo$5NkF(mAo+Om<5EiWX}$?$9?/K(naz=pGe3Q݇0vg&cz&B$D CF=>Uk(q4=A+*e?FS09@m k)1؊c Z=BR?/nu+6 m1{ #Ǵfn݆ީ$VEz{A꛳<Ck_9?#@a뷌q کl"zb큢Ԥ5R [E᠅ޗ\..hixЯ-GQeW9Ӌo?2,zčU0܈;ӳ03j(<=_U4dɱ?;oȫ4Xnxr/r;Y!6w\Hß5Mjlev&fu7ֵBzSe6 Z#@|Duo ՓDo}_c<2|'@7bML6r2xgߛM59Ufb(=5 rDRI(FE,0{Va^ĠsA 7?Ep: 1pݓ2e?1im. SIc~؞LP&#S:¹rG\ۣs*` a7^u{JIL+U{MroQӍT …W쭩%vIzF`‹Tи ,Ѭ4 E_M.>5Jvo[0 'y0xot~ZS{HEۡqzIK%5lh]%U$ gD}P5N9O1L9䅟/4W E$aӪSŸrf |;C!9GTO{CY%Q@@&,L!.?*FD%e{c}fОCC,$ ~:zKXKmi8R"e ʾz) ތrݶ"z*֑MV (+թ\iܔd\mOIjXeު5\LVM6e|U \=1һ_ƻ;tJ q([zd)CF%C;;SLyf"$aRAbQ(-O*)s/ +smǹ֐_ b1ţ0#%ן! A, Q]=_\e,UV<)Pu-U$;fb7x8q1yU|"Hz_wV5ݕys}k,R#\z97&+?)E4\QXe 2Mgk+P {d]_;RBiDt vdhu,AY@*WmҤr2<]Q]i]orJ"HŜdp=nJ=VLe'y5'a6GadH ~Au-ʨwMݝ'hs҈B.G]-ΔݐM 羈]o WbSfN# KRpuu0j3W\iB9Mv aDYSf3]WXRAE7YN h@o8 Q?,Q듲(]qB'/϶KFV:*R>F3~A8!vᯂRۊhϵY_,DmA!aʌ|f.Di,ڙDZ>EfD)Iޯ :{{P[yO*wӈ>tH7xm7g3N6 ^8_EMc\SUʂ`Rs`zMK~di<))~lY+Ffketm4lNeǖ!y;WC|aDvW>@?r?]pJH3M@iu/Χ 4ΖpiMș%[:tpbUڰmD=DD#nb 8!$:M˝+5aE~( Mxᓻx0ɫy$Kqlt^5Cd2=qn-vÓ1|x{Gt n[ zD4&巑(JicI b$qHtäFnj |1[3^|)CS&̀ (|s0x}mi}M F=t)؞16|Gޫ;;C,a!E{޿s=d]ൂ:M"4r+AQM zGԟ*فi*)<(s|(ֿ]v mG"TK#I(z\|6% 8PeQiҰ̊9k} ZZ&l+9G~O5[-.R8M2 4fay.' ¡i 4#VVwit6m-.7&v֎ C|Qa[+kbʉs> AV >QZL]O~팿& j`bvEʹ,t٤-ޫ71so:Ph 46~SQ` 4 >QqkDpVw^Ҕcz, }(й >mgՄ2U&:W.zҍbDk@u A=ݸW3Zr9¬>\bLꙤo|Wr$ t鹬1m vP:#jG?H% 8#A1{]uGb{] NG VquC[Ⲯ>?oJȼk oGwɽ[ڇ@9Q=dp ҕmhxmB|]^B$oQ8Tl4*^g*g>,_RVILJ͓6rOD߅p::.)}6N^`JqXm}^s 89^ŧ2pV$_%N ;rU=R<Ձ< jOt2.じ' '# fXPىl S/#(X1ʝ`3}G"dCe-`QN9T0'Eh4pRCy m47 ' \N} o| 77DR1Fּ%Itq`9:Y#tJ?{`(e21-S;ǰRC$S3~r9b@G;Dp6Ѡxz(#}nkz3Fx_x;fL&_BX]z(,,T\tP TT00ep&sjώ>@ SPn΀2y(Dn<$U =ŧ̓%)e&Ec|Eb{HH`t_&#,RF=whFD =]z0d-.:.U\&{եݾ шcV' {lD6.䅳m@ j>@|٣sP033̠Xδ\G1u;܉\FT[ƦzTĮN{>{M>BƇpDœ-d#HUT?Hͽ)(zn6B z_I=ـeFH:2VxybSti| < ZSInS@ce/9 + ieVwE'|vJ(m!r=1b42+l@&(V Cs8S OkR8+΅mǧiܡj\h;(@W@Kq%-/jZ\:ɻ-_ \Յ)%q\[)5PWǂNSe4S6lb 1o)2  ~z ^ $?i0uj.d*^TM?bȭp3]d_!ԢaNS1^B̚jQR'ӟ#Zռ[9da-~3lh,r gE@sG( .@瀐&>*ֻ'#27} Jډyt^kuTo4*ڪKd~*0CRiƎbУ fv,ݺHWܯn;r {>,"OEۈ ĎцESJsS84I4h& Ei .Oi+<Đ7OKuqHw??N$f*MY=%2);tC3&Ԗr L֫N:l[{Xz؏huH2NIwX9H $ '^.B2䲮dAo/Fbg)wY]0-'hpmWU#! TJ'R06n ;Ev@i͂nfrci.v'+j[vcV \F&4[̭]D%AgaRU`<(6!$zjߐt> m@v N$5l= 2&5 =H/bX4Z<ϡį; B%uyS$"D@LIu~>Kk=f X) 6^+B_ժE$|7F}y݃Ѣ#U^G'j*ʂI`TQX-wӐ S.:$S/U*_p[f8YS@s4SʞTQg+_.;Pl#~ ЕI=y{n]FcAyѡ3MH/MBh s_48YE]˸!Ym#FB #ǖpAaD:h GD|lHJ'uIfMhFF9JmA42PAȊǛUFRWѧgVٽ!8gFڙǪnjF-` )-ں²:}4/'faI_E7EkZA d ޓ2gjp[w?`TUrc[H]'<APCQCy\_!h2y!2J8;Wʼ3+Aymvd OCCvwbU(4۝Wnvi BZ4#I\D2JP*@aC*.KA%cMZ2F~Zx"[څZE:v"YbS|u*h%LfiJ0qm.+MifE}ADPp.d6]d)~9 v2B=kcGzN=o~FKs=)3p!f[lCݏh}þ`_b ڱ  '6EJzIHs)tk[$"I9鶩K[!r$Ihba毠q}Wqʬ +gPנ;-]Jxs19}rwQkX[Y I{<\!w (  XTpMn$æ~HTVwTzܣho~\t7c>Tynk$`؆r×Ұ{ e6)f:6LT 1Oen/0}Xw?#j3$lJSmς/ mYI =䆽 ,#M8d\kȖJB*?+ j s![ [q"&^4H *jO=6kX\9+)[5D= zf(_ڵlCY\ ܛut>ުaC")v |M]p9AKu_Ʋ #D/ՁQzV7W,Y34Ժ@K[.]Sp2 .FrN7D ^24H9%=L\lEzkȇMQOwpq>mL8_2puߚ6fBjÐ-㬧ejPedad[].c0anf&G%e;FfB#2~nHnWJ6gvQvb oR@=|*X:3T g~:=cpW)[fWezC ߤ5yBf6QTȁp2ݟT5U>U1,gj=|C7HHEJAWc-F>,ӭ~Ȋ;\')whra < AeʆS~ JSF17QSo^ò*="FՕ%Kld񔝽G vS9ZKa6h) nKx.~vZx^TCI'?Aq]cYppAc D]dfzz,pUyHi 0C9=gq}{0q4貹Ky7(Gl$s.g CMbh癐 &4HRF-`N֌d5,FSc\XWߍ~vsD5 HGi+]IM2H(4yliSJZ-eRU'4sFoHuH?4bNJ夞d+`'s~0D4qirS4$Mq+g!8&Q3v79d,kW̖,`In{<[Z I_Y!{e`TӤbͬ{#[! Ano=l)E:^7VMc@Qz{%}n -yqDŽHO\_a圶8ɉo/LY/-A؇y*uod=sD9m1%/z$@32NwD.zUg/sb\?⅑=NiSlL Cݠ9*8O'7{.#l]-j>:ً]_ žUf!$!c!nY$)sq/G_l s"r@cDL}J|]R Cw1;d("fSՆӶ׿5u!Ue:{t?X?|bST>Жft(Hpdue?v{+rجw3\PK_#CyKqƹ Cz9Cժ:ໄ"s3Z#Iߴ6J:I=w, 4MIݷ+LAe Fr-0%HHc>-~8NU;\*}S6VKF64?d($"3ohy&dΥcOuPr^Z3 O`׷ ɕl*ic$sz@$}//O:[;D4:IUFNsmGŷKeW~1#@tZʹWr!S 0_;O6`Vl6’5e_ū~B\쌉.v}(x\2`dY͎yT|qNitn0gM3`4h_,<\l/~˧,[, WS ~xA0Mن5xijTۘËnQ>LY05OWθgk^8LӲ9gsA 拜`a*e3uA([^"Kp_SPI)4]ܣʣ_ʋtR lyo2,MxưЋ/Vk%f ۬dmxR66Eљ5d|4PO%Pivu&EJ B [74#.noe): \%SȋYH̀z]OUȵGFWEle\E;# fBS '3@.nLƃo7E:`4s<ZrHKM"ޖnp;;?JM/Wm24+Ӛ3P51ro|}k ZkpyR+ZpA\uWWȨS7[EȚ3- sk5*X<K9(6#([` 4Asn^_nS%kbdFQ$@Gӥ s6Jبzxg0fdK?dh | Xt.^sar0C2te gvQ+=xԛvζoE" P ~4}%CR{,W Y@~s UѐǏ?vCϼ}9\l߇p \V|``\^ٽi˔:ZU;j}Z7pgq)ɌP|${7yDM-tt9%q;> 'qEK2dc0@O^X&$Q2+-[[%^/_ZML{=|M#qٷ1l23s.,.mj4u^,Urcdo5`䡕 ۄgnz<8.գ-0ʽH5~{Tr.3_KHedmX#81Pt?x^8z'sT̗b0o ڟG%X :x_Ё Gv˻2x:#noR#Ar u5L$'" >,LY~$WW }fC훍eQ%v%F>KG teF h Gxcs\gRs˽ 8&T3ġ C(ai&Qg M7]J+!參\b1.4 684Vl)3cjB^@+&聞NW'm^XkE 0|!pGF^M-)!M/;h_l /ŬҩB_n(Ȏ h6s`߉-:]l&vX{f,XBLBQCImT:I!)L 5I0ͦ"XE.FF-FZ;ydT* %0[f$S̡TL$Np!FiVCUZ:g12)^5]JUVuXT52J,DTu^=z#z#|Lx_M!S; Ԍu$vˍ v.;aknTMw2,,,I\~.MslL +2'R0zӨO# ] $)4/ڐi0$v1AϗpsˮtNuFL,HWJƑ-k f{ZP[)o}#({MW@=%1< el:f, 0̑JRVbū y&mh@NEy!Ԝ+V!sh걢՞# %NneYT~kג7̊M&o޷-lT'g)YRhghbLYD^}D+x;~܋*Y) Tg_yAh:CL@Hh(c|Ik9$5`-: y0FuZOBNq::Nm9kFmѵy$*mJW,YNxz{,8g_"?|u8Um35fk#V~%[/oc<1*bMn5쬁3c1&=IlbTI ])߳Vl,M^3T>*2(Ju0od3]Q_ů>E)ۗDVF}F^zeƥҮCE 6)OK ՛)G/S}_QAc 9J'(,ڊ3#ف:]3eJpYy4;a&RrOה^_`.`.ȥF~zTؔѐkc+û̊F,2RCtjx~3Z$1u080F朋At|­UQm l3|(N.B:iE_#o?i{䭜ܔ9%6a_u:hg!+oUmهZ"Nm9.5O{^ZC(#$L| 6@Et{{$77Gh*_݀Re Thi,Jc`+NE6`6J)K/z_x,}``;E6onv/y>[,&AjWkl,0"TS"~Db?i1V@U@}Ddie&nO%w*uwmYu7SĄ!G縬:<|a;'1%O\T_23JaxD55=T0~2DaޭڙEy“3+MLVC*ktѼ75~|; NC$SQfw)\m3΁8UqA6YGs$K t}8ŐM+d }(ˋSݛɺaIۺX)dl ([r`ݳ$3*  \h l\}kYP/{U]PT^S43 q}a70Y٩i b~g"O4X)?57hy߽ `Zk*ˡ2r`_mXN$gs{­$ǞڦzrO [پ7WՅf]n; #lWB Bfؽex^E h굷>$ Hm<U2a3f4w"za E. ܼZ=-7\o/$7> . gC#EE%gF8& KS*9#'.SET%>Al/%5{3M7a[jMZd5g(BYP aOnDgnL$`Of|NN-8~r6e\̨HFr ݳKb)D;_>Iov0~BNtene`򷈨GL3;9.CO_)JǦHs3 Z)A9&̒еGb4qi8d*6S-֋wrdMC?ZٰUdu"P_RZQwfQ35NOd& GꝊD[z:dxU+Ì.[֗֎e7,2g18L¶"&9tl'@2r?{0H~ Z% U{ |nށ03A3^B : !&-PmVp,VΥ ,~5FK S,Q"s,%C/fǏ-=>0ֹ/G~{}EW(x'x_"UUDj'-=5'nߨ4Pod3gz-i]~ ƿs WAօ'As +=|!h i@-CI]Zx!9Ɔ%^oXprQӎBRٛRlKGGI3?n`J2cnpC4 =}SdHŴs0s ql7E-[Zgcܥh+pM`gzRǷ ^e77gV8oTr77p~zp*3u~sx Vj/Q< GӋFrd~r^u4Wަϲ1%$٦@NS8N|Vj\B;{=po+-=~i8f'9X'z@|gOQ@`Bm0{5@Fቓ"#'!|\٘oz_ 7HFM!s@G龧|NY%#aoE )0V$):7y(UVUU'M+F.Ce\sq?%"0]{=f3H4OC e7ψS0'Sh([8o* 2p:zhTWU(@ ~&T{N /nr3D@ :Sg&!AَNPsM7=ttdYy]>c.={BlOGIS =Ly\da;JŚ|T T]F\$^@-rnl*+ueV(-9sc~cέ1d/tkW܄\~re5|2#K|b#?¤ؿ'$4#:cX(>?'!!{Ulcq+dbu/iֱhIix!xR [WxGTrD-ઞQl6^s6kZ]p"';nx̓g `7Z".037s)[lr%~D}Vɮ10M0/m=)}-!Gd-QXse!zȇ>፱z)xIlo,hy8kO>\w6D`̙?ر($W/X5D_bɔfGz(\TKUf!$`ͮ4G YJL%Q|տr@$"#OBnJ \O=0 e]ˠX]_y`ߴ^#,vquo:Qa|L 6`<_}tIK5e#rCYy {ȫ׬MtW0+?c__64}DDƌs_\χZBA WTe /Ё܏;r#7K s:/CTnBQsQYSBu3qCeޱnkc,9G1MT__2 ZP Y}*Lz"`f ;g\␣ vk{~ RߪF JVf!}%#VB@sDd!ĝn4b'0%"go#OIOU:;+rpZ)Ò)NVz %N7*v}n\׌t2'1lT! 4|#Ubg / [2 #K'@#L.Si!(Z\y r5`r#QHrWYʣD|%\P~/p"Pn}U ˢF̩jM ەⱝڊHVJ;h j >#;Lu.BYF9PfY*8~(hTt.ͪBUTt +w=c\B]!R(ٯHL-h7ekiKGoq{M3F}M }=HCCOZ`ŀ%;n(Tr8!ھ)!hx@ݵ!!;;@f y-I<6[7eoI!3oG\jB #)ǃt5*fڛ~e%xKI|*cKU ; cLG'K])ߦ(ǣӨlusg瑋 pQ"cTxWL#fw^aU%-مXwkFbi*>NcVX?kYO5%dꍌ[T/7e;vl{x9" IFWy"NZV5մ΀9B>18AFpx|acJg k=Z=0E-eKRhx>/l07V5 ]#Hg뛤]d(`aZ g'vMHo@̢4r'[Py=6bS7ȋ<\P67 pwN Q. :2Sϑy_zq !hfMG`: @ASc+ܩ]S({|'t>3%?kn|b %<:z޳|b|/ Ҿ0)q@αnq'6dm՘ @AE907CsCf5CI YUf{ Nt MЀX<lSD$9u&Tv@y*l ?\; "荒9o&>hUZmi:ƖQC6 gDgx̐=d#qt-d UA^}r:TOHk} nViŤ^jGTn̯E7 !(]J@HZeĝ7O*:?<A&aS a$j]:T® Chġܼ,|b V H+pҢ;xқwć _zn,7V)`[" hcS鸜dop{3gf x6JI'%&Y%d h͡F!'AL,XW͓V^f9+fyD"lP g)¶-˅E7Eu ܿ! [W}RhSL^gPC.S`: Xtd p䡍;4{ꚪB amVOA,"7˧|mt$Y5xPEFҳ_!vG< z~gј/O5R7}UKfi:dj#u|wδ <cNr*ǥz$S,9Bʡ%P6bۛ=Nj㔹bд9 L2cfA5zH߶V}*hp=UD5${^r|I XsFi4rSEY/9_{ex5ne}ڝr]{M]PX$Iϰ&Gez)S_07oHӧ hxʠuDM+TkD8}QZ76FN&a/@K"Ϳ3f)oF8ߦDI;6K8q9}Cj)fUk2EvIJݣB(؋`63 \ǽk7]H[~?v+܃77کpBQ:-L datn*8 z[`f,ġ=*x{PNAidr)P 5=U+F̩ 3;;r_.E4ldO_F/,QY~Տ )펾z/w9M# f/~f<@3fι|mnip=D[ .S d\U~b}U߿SMLwRn3ٹ4r\*w7q'feWc~kΆ 0iX_p1fZ7燻HH v />|EAQ1ʕYϵ@} pӐ9'2>^VNAQLwbڼjȞ֤#Wf)`Y> UԼ.H/Y&[Q|Y{p'͇`U.5D]-FY8ц3/&d?o/>Xgkf& ORBHZ)5R>-O&VTʀ j'W0KtQoؘ}KHB5Ul6j$"yWV[~!Unk;XSFl %nh^ ~siRp-p)::W4Bv%'e"OO/WNzA>3P9.wwB%XZzU tPŜӫ2Oi7I!vճrca~8tw|wlAĸ)铔^Xcm1~|\%%-Oi z:$f]0eׂ27_A2İzEbc#䧋?4/kgz}CqyμSbw؜ ; `v,iVdIŰIZQTy*E<ǷPƗaWڮۜ }l fǡfh;U&p k%J+qb"i拾tdyE;riw{|ڥ { i X$^lL@F%v0k>1ՑGxڤxJ!ޛg?r$;>Cy Ԉ^Ĭ1!-SuQ>eWH$-)Rse>Lpcz ; ALf!2EJkb?AiM|%6 3S忋 cڨ5 @J5)Tz n ̿-q],7 eo7b1`Q-җrI#E81Z/]~9~tDx9{~|Zyo=ɉ*k%.-GMOR8 ג'P21&ߎ/jr(o̫# ] {C 9ΛC87eEKRN^>tk 'ss1(k( u48F_:Yj^iXf4pP˞Uyǎx#HQ" JT6C>;ܴ dҢŪM3^ [qdG qs Sޔ#f(boe%s1t.cr;ԅ 9Q3ARAfsY ŲqgV fQayhQCʟ󯁣{2FW;%[[lXZbbc'a/㙁HRR'`$x #&FHV=BWv'u3f*<95(kś*E) 5^N'@L{@) I%`Ab8#QMKpRo@ s46LH;D)n~gtzVD{W.'xOMbS!.c֛!i6Ʃ@գ URmtPPz+Dzg 5``kU_?ք9S/^v!jIu-\I0BŏEN.trM3Wjt*1DG*\8"Jx}N˓\4cW')uz1$ֈ" r`zf0`$PGf/#v7U =\Y)|sN5$~[(_%H,QeLo6SkiW5%"y$̰E+6k'gDA@7 ޝgz2CjeSUѬpu a|ԼPnX8Njx8uc !*EҏLY#Vp }Ҕ؝ j@wCa5P5%L5i@aDOW"c42 "6U3pAmޘIJ"rc1 wd%ref|Ǫ6,Il(ohG(UiizYn(ElL_ɳo.Z :~iGFCѨxr+Eh,5J-38`Tfļ!-o5(h]5^fmP90l/A)&e~A<ݶ傇j 8!] X̄} Q"s҂!cQ=] 7UDŖ JL% n~V,?sXH|(>f vwzJ0iW΄Y sHxO&̞ W=Qdi(rԁaV|d[HK.ŇǮXIm gYY :`?!MͰ~_m! ks.W z`E|fLRTgʑu'ƱS)xyF,$A5}/ƼEj9k*C_}`~v[fR3M;g+x5وiNc8zK5V9('^ѫכ{F8ee񂘡j=6Tz/2L~J;caiqN}K; i|7'MEI`5{Nto'NC?De޿w cZU-KWd M]цpâm`oLy\ W64E|ٷ/Yf|U"U]Y)~#nh+TMhdV \~kATRw&!ʞ u¹B,O4gb= x}3|qqܲ5w%4W <ɓk9TU3Q:\H$)7g=Qd>~Is+v x{b-js{ek}شCqHمmjҾ_1i>3ne1 6{sN\ 'P M1X_sZՇAr,R/.~4}X3d[,. cg[:`h;Dh | 9M\#iZo<iW% +lSĝh>r:]R'_yVNttq4ACΤ cQ/v\g-( b#5>>o{?4Wr1'MBQ (]BI9 0w ˰HoPq/Jf+A gCqb >*#QGi}h:RFle5j1Q>DZntDnkZN߂nk#$/_A%n„҈ G{Zg(ےU[nc A_=g"ACn0D190Wq-b9}`m݂F܏rkT8E\%uCzV< A9tLM#40/AEL0XGJj|燁VW7Q?hw%c!Wi69AG9]-ܧ ʍYµUT+JIR^wl#,o8 }+Īly!Nqh)eyy_!~#!?VHl&3mUlFAcln+F>|Rz%UU$tiGBLڋkI9ڤԺGfӘZVy q|z+~ӽȵseЀh:VQP:ujFh"Nltugм,qf&42b??P_"MΜDEddn;yƙo@ϫZ'(i$1&WU[hT_ ");v4}9vV^q\tXo/nBҤ=XK,pAu^ؓO<>^VrurF3T”Y7JoJƓgj9mDZ gc3e07>"q940ڢ5j+U5x̓,-;ErJ2kj fqPrb"k11eHg'QgեWBD80|:ɿG4p htEiP1tlJ~`tbXx1O<{ P3+b 8*߾Ξ1:}Xz ku*w)lv0 jOEx 'AS2[xK%:T6BNMB}FV Ֆ MSr"DOQ&S+Dí+`DPt4׵bSbzLXfqN=),7 iO.w §wRv ]/ k~4S:2vΚKޚmb $caz@5Jm=ZF 1nwR"fXDe$1T@J :tֲoҕwrwdJmJ.%EaQoakт`d `$ Ar K|&8r 7B+"2u @[7 g Z(^LJQk6+I~=kh9&MDT|p2TFv5pbKi5^IL#3&ּ@&y?+Jms]iML*9W0sQ.fҠ5o5l?,+ǖO?6 0 Q.4D?w ,e@c@%g2YoL[-J빪I(ğviU}H ߻5OZȺlTACg#aZ]]P, F&Ҁ]JJ-0h0[RICue!tSΓK;<)- ;r5'hi pmdrm~v9Y^]9DFIakZly}M0tՅ竬y]46x.{$Z˽*"IZ(@ǕX?B2Cb*cMɵGJ4փh `'\D3׵+@iCuxTZ܊H<qA聹ް 8&@ʈ<bK/!TyUy|9bPBV?J!11zvv> )>U"Fթ?+N<'v2{?!mkz .qŮ碎>vtXsÞ~m~f!#yݴ[fW/vަX˩ekXj1N{V+B^"_X_2qk0m訬~[LZXuKDwK|6(PYpUeZ+zYhl vw%"hutnIj/B4tLᏽ]p"8ߴۅnp{e9dGP}>  2.G-$7p@"Fu^Rf0wH5+1;]uzMxr̞XC/^u+%ke%>J#K&4Z w.FL}eXal4I>?8(D@ ݳ^@m\!?eL1,o0j5 s*4ݚ lw(n I(-w睸Y]Ѧ.Lu%̘:mVY&ڙ?+nV9ozjRg ..z]?A<~nhOn+yތ Qڰ|*u?-܈ 33ggPMa64 aҤdk"WlX,Cy̍\NmL~r^b]V78(ul6" k'υc1elarġ9PA!|ΛrtQ`omv ONZ!}!h!8 b@6P1dZ- VtW } - c.k Y@Ԓ؝Wp%kP*yҀcy'K:"#asVIs}En"r >jJpnL? ;u{`䏙!r5ٻbaV qaZޏȫnBVjF |uY}d]qOiWÙ&ք(O+9DbW/E']BX zb-_%˃@y+Þ;*`dݖjITM7}GW۔SRY/_K4\OD&}b\nMApk4ub1M{7h+FVNbdxך<x&i *P^l !>ƹL>!%u3o~R:&?tV{tɳ&[ ̡cnB (L2Sq6֎xw+xpZF''P#htS( 2W4{spd>4GOÆ EL)g]sՇ%?7m./k42TтofEUZD [*qa/xi b`oqšGs)?yWݎ$bHy0l}V(pMh?8Ɛ_=m"VPtqng g?׎ z6{jɤ \Х; F_,{bN"ĸ̊I/T`JR=XJr~ ':C^[ xRW1%"ݝ2Ֆ>{g( [) @h;M'dqpB6!v ~4-UjA~z b`giZۙ{YMifM*ʻ л G/ґMg yi[|>e, @˿1vӼD/7CQDV߼׏*}t{dLTZ֮nQKK"@)ioՍ;5ΠL#f\sSw-k'dQX6Tnc"H"!.CiIEr*?=ElHx7Nmq@«UKr="f]%a,Ez D,9pu[?j KgyVn|Gޡ䙴0SVd79RC i2s;lax[Bo!eMREbk 0S2;q⑤ecs?Ԅ0rq1.VI>&"o'AAV['*2`G#+Wŕo &{$MCxOrO?UN" !НEy ɻZ>mGyغ`Vcm:xlP#FY>LrNBj5L?r*T/hDd*,q83!,{c@")αlx\bXKIt}QHcaf6s "$[3)ljEB_Fk>NdvT6U0ħD.Mf@ϻysr![yUK/PdNTkt!ڈ)?&ZEZok"<̕(~3P]>2XDc'TŴUg YjCM}Eyw+#%}vk`=^GA T9z_AcÝk)yv.I XAmRɸ9ҮmzZ_]p)'S5z<3:e ο,;3t;ɶVjIMnr`ƅBN<+`oC d9{Z-G~BgQ,KDWv&3hpzIyfrkRʰ+('6;@tG垀}W|&Fhq5Q(~^.~ヨ6 =īuUSfL;;LZNT'/,T7'MظYǺn՚'/p{*=@jjT"=c=!$#6R& "ZDOw +;R^Pe}Kś2o,u.0D;O{~q8UY(*Wsk{p=UM2ڞB g*h !D8.Yd5:G<ݽ|P+7zoEyDA^HG @30أws"O},[ , Hy1sYrR&_P\G:t<`ԙGo細-ب\dN^|E7Kc\UupzM3}6aC>\ODE5B [¸HraljHh4xňc9 L8 vZ:*ϘGʣC N , 2KefzaDO<-^&zq ORg*t0ʆB6XHP(0?%).U#*h YK5z 2@,DԲA؏-LcFd@B!sA5`U],!Z+`R,յ.TƄ9x3,") 6 }F/+>\;]%?@IMZ3NS'0%p@RM (T=VPOCr; a!-ȩ9DRg/!ڑtaHPJ72`KQn`L˪ 5:K&{U`%CϠZRO m8$ H"‚-,*E^Ya<_v\@GǖO5)aź&%eG,-mB" ,"?KoՍ/\ Ojɳ;;V hU S7W_g~q=Ӷ?=}vp1x9;֐;4iBRb.LJZd-nK㕂@4mUŌNs/F98B蘘G$t;7{kI>Z7tJEH%ĔmDl31省ݱƎit2'FX =duiK\E=¢N!2clLfaQVg9&4 d<߾I`bf)5\'m-SI^)|"%C]ɽ8zG+[(3 ȱ B(#ҪZXgP1p4@'?(mP:OtX]\ =F#=c2Csp# ,rv0pڴ`os-&}_*PVKbiX[}A #͝3MI^,q ֕v5L"c}Y7FBj@\%-,TIg3 G0/D9Hd" Z9RY-!C{C#g}]C4O7{8^ӖlnxOeIPƋB3J>l-ǥ0t'`[52 ,yN<|E+vZ|pʔ.+8ud*In"sd`1~"!Kӗp%t'F -MkAH7# {3D#y}P{$/6e$ Nc!V.Zg-fCZ]"6 @G9,:2U⫥?M }5 S\~ŀK)K/€Q!;2|kCLY"SЬ;[~&l濗 <&*ʟ8e69lQ;kՏvʼnC*QU)-23..JW`E ё>6Vh,N0SĖԭXXª=!]dE566+O椦b'?znb$S}ۻy?r}R,7{>vO@&-#UM\a }RO7 &| l \, o8+t8vП0lZ|@Å^,=o Gu#*\ XE1k\-K~4F7-^#a%}\O,{@CiJMazjp_lfe(~1T[ï1 U+L1b% 0̓}G Tq\(pptʇmlJ?~E9MPjY#ȋtk8OO_,̊uHIﻫmxS+TҀ`whD/p тG}qN ̢|E] 썎X`plg }.@p|;KjLcA%UAN'm)ki?4@w7Nj{m&W%ݥ7zjQOgE C.vQ |H!%F+¯ӂ BuREx"F1|XC :'9#@B)s)}f5hKu*,~z\QkW}.hq,|ճ_ӌƇ(> Lca 1FFtN!oK+82{~a6`^!1b{}N QPK@H%'P|jVWwgCAW\AUXӭb\љE<̝vܭt? 3Oms#ۍo`WQ㉨x׽1 gNI\d 0P?3P!.%W<'&mcy)8 _Hin1ww4mˇrDǨZG*֐zQtfpY\s{ PƮIpmmmaI`a9Q2'L:@%\^Z9Gg?)q+,XF@*GK1eNA&j+5Qrip3iaW5Ų[%(ENl#yi#0\~ 뼚l&"fLkZtWN{Q w1v3b\[#ħ ˑPI|bZ^aX?_5 xfR fAY$-Yuy}JI8N <0Oʊ jx-%Z5by/`tcn2LT+מD1++?%qp* hmW !#ladTK6AQ:i^:7)ri9otzOP/g ?;`Tko9 gMu-=A7_o_(\E.ٜ@__/L31xf B3oEH̫4ﱠG|BC+muG ޅ~%E?6 ޳܉%aN ƾ;)061m/e_tU]Oa u R_0wq>yЀ: 9;[>*G,kٯqh)5 Tu*,I][!B'q r'˺U.fŷgO6L< S%YS|GAq9)ʜ qvɲ:,Y>4-$DL#IB@3- Ĉ tzނPXFBjq8, 3-NePF %u_.wO&W_Iouz5;C\G6W/hUoE}r>C0SIȊ5p .""hj-K vF-T/'nk&>pFwSIvO7qv~=I9_𞫌mCX @|r6$[L(K2 ͑+ u^&j^|.ܧVRF59GRϽc&l.llr9.F7'rPl)ڭ}Nǎ<%Jc4tA8uC(A,m^.iY gSJW0r~U#}_o;)oUL FӬPG> $!JJiغUN.^|Hކ*pytf[ngP&A.l6LgGĵCV/BԴQ}i;C0UNLe7C:+3C>1t_$88I;ЀkMCۆ3V 4O9K2|:'B~QHcN_FQUuŒ6Bt!gX҉‰wK_+y궼|_SIsƛt5)>GhL4f8,ِq*V\U= 2>N$#J9]؃0g$^_5Ar. U@s)9^b~7#L%`0g)mnb/668K=bLK]Q8z;F&Nza_uIeFl7ohJR&PNd}{^9 r?tc.DNEq"{ e/F=L{"yOeփ; 1Kk%ǠTD]JDz]J<#@X$k5C++2Ԫg68CIKΆPϠv`u"8J\.Sw3b%`x 50D, |0Vkizظ#A 'JRmX0&鉏mmcA!I>pc&87%+/`䀅&'pؓؼXАl sWg^S]QXZg18œ Ms<%j wrm!&I%2 nZ&&٣X"KHAa8+1˺Kd[/mu`A2 Y ˎ''N[fg sx85N 8ӞWFK GR«F'~%F;3vZZe \JEf@ SxDgFKے68KkZGAMWY6~;Sz{B ?zXPYwMɊ7\YQmN۟Ӆqҝ|֩ P"ŗ7\SfӆSY^Ka[|%gs7 99UQ!Z::-˶9ѿbj%jWL pY)|RdsϺe^ M;5Z}! i߬YXkB*QZk<Y)ՋlZ>RDFeӖzUP41i-2J~I O 7=I2&byӻxKUoOnV닕3,oK`e<2n69["}`7OTK+}}yXA-<7ls/,5؟c/80 AҚ6AbU|gv"E"֙R<ԤխTՔM أ2@AgcdY¸xluLU| 9s1UXeFI1x0Loՙ9s8zPC#,<`>*|ޗ0,P.Td5@|ԲBҽ]ĮNs)GZ +  qW]3@H=N$T[T?2)Mk:ޛ#,woJndLy9ZF3H-hRbHY[$~Cճ#*&̏oAx:kH Z@@f6fDj$2o;dWbߧ$nЛt,ɨRS56Y ߳"?6  ٹF^v[ df KӅ>:T+2tkp3q-nmg>+6I< >N%FRy,/aYs.$-nHtudk-Po>UlJmZ*Ӥ?o'C[A36mu\܆&*7AyF磒fO|Τ8$M35'^,_ _ PB¯|M'T`iBZyU=oY8w m2 hƤ.#^-G0A\0.~,i ej?`?.gS#,ԦT,lVx$pj&}LS0 {`Ed<vs9d6Gt#STپ! "˱_r8 Ԍ]6IZ_xY8ISGy嚓^(̤-x\ZM1ɘĪCooUx083{?Rq%760~5;֒ ՖVo$3R,\lqFP1d9ykuЍ7;Ϫ->?AWyu*i":̧[EH." (Ssש^bKA=Lyq{`lW ֐x, +L{<Ӹ.84gtk,(LףjcFNw֭!7Rlhіu)L&>*{-Hy:8w$r- >8q"V,$'ӱ=pUw{9_E3XVv[sijxY9Kۛ79Ϋ?3cWmY%8N$kPX&oAba8~ug{g8i5?"kLCǢb&m"5_WM ^.ƹd󡟸Iƹ"浟-Yr A<L CIN j`SvWbN;*ܲP?Vf"}?ޔ_Ӹ5DmKYs7i2jDqI$ +*V3Z!2G+{r(q!wLH5c\%~ҪΰWשS]x(1"~ۂB!mTCc';GeيQ$3VdgAQHw'E.tOjU>?nb00x\qfy.j"bi]pXC4H<9Kڈcȳrl%`"MWt{xD{M؞BlWQ[RNO1^9Z+߂eN@~4^InLT5b=) Kp  fӟUP~ '|n%2W\9Ni8ϱ>vr-۴cR<_ 63%k Lfޖ[l^% A2tP{6Q(z*˽t'e.'kʄ>[ EapYj7C0~/`T +7ۀ]SCZ)<1 ׯ8kZ(QʍWQR ǒ:JLeyl4&XN@F_Zvu*1m~[ $JBIpr}5Ely]=r.+: _gy(~ =7[U0.L}4^DCrqk n8u51.k^-מB Z3y5 pacñ7 bMÁ20Ua{ۺo䧾~ZLNUh<(k`g _zg>c%ͯ[ N/'Rvxʟ?\) Bv۲w\@t]RP+ެѝuhL'?nW%^dD u  F:/h{}lAl;"GQQDÃ( %Vpj`S;w1,Z.\8!)\ڋ zn/RƵåewXv>DI/=3K;'AnhK{~\gny #8Ƴiئq ~豉eݻ$f4 E ȘEtl \Qc.v.Ol|J'&z]'2{;wHNM*v`eZ8 _吢4zOdfҕsX >I1a- rwV*{䴁i(<)RM70"M ޮ!\KnD$@X\ZJ&,u(uE&r*9GnsZ{{YOB?cURǭacdvXc_NPGDM9B-ށ=?C .IG1i@91}sfDxQ؈'>nj~#khb^C,SG 6? Ҥ) ~tIR $zTB^ṋ\[xO$CR "i֐m͗ ?8vҀbr<58y9/Gzd)D/2%6oم»4mBzl݋Fڮ"~S2V㷽PA*y?בp9j֑ұΫ*͇Jo6{jóC޾ߖwT|hI*e vt ZzSO뎋Fq4g4$7셶mk԰-#CmQ:T"ZB-7em=72\I2[V2_)0OIfZ# "o(=Xgf9GB/í ζ0|ϣ/_TLv}}S27WXriE)N h\량:Mtug⵩5H ҋ ԫH )+tǫiOb>q4'ݼrY$7r qtIQj2ʷ3?_D^PN)}JֺHm1炈?}Q 0 =xp5:-Q,zG<4t'a&|^ t[*oՒv:j΢hAA|3Q8z]vx,U)^"vL_W>W xqKtNwI7%2w]km%'~38܈l'no 2!xIyZKZZ(WcR/$SGqˈ-wec G#KQDDP\#xY]KݎW :թ``7oȤf^ףlڨNd 0 H[=!e2-!e+ҜavBW+z^L*3 Nӝ`J.^1&{yY Tp5Ks@R@Oͥ5= @`z\ />V@ĦMQ(򶡾5][Wu~8@[=8Si_K '߄.BLR}A݌;$ēTӿު8pSu7 #*s獨+Z{n+QrtvZ௴gojr W^! N} :P^Ɔ+A=J zO+V F~ 7ȿi'!5̈́}i(X < qD4p~tR= Rjx0 em|kZjew c%M=*᫄^6`#CI ,7R3{e:.SaaJ؍7 /œ y'6k1|>-cup/PnTm TE6؂ gՇ dnvp.bg ?_Lfk&at,G?X-L[WcOI2ΧJ9(U'Z@W۳Z=t5k]Ə7#P9ø[•rItu!"oǤuZF%չ`[L: ֤:c v~8Q1lF[@*vc0=Y-&SH4~>}NWb#[Yϑ$NiH0kodxO44=hZC9 λ*Ni6.<޴ KBq!;zLx@/ɹX{G,KDK4"FpDغ)(=LN1x-@2oTt/=ae(Ws@1V3GR/5)8m Ya9W!~nڡi(8^Bu~J×z"xV!JNsM=ٷTM8^*+U yx*prγuܣH(ނ=b>8Sw^:ug:sxON2[bb>f՛/cB)4dHO*26ujOl?ڒ~5\(=ĠOc('HaoF'iG^E":H8!{c.u¥6?ATo8ʫa#}Fa`OcLz)5Y`OP4oS&]3b_n\$Nq7chkUK)~hpw>ZHVEs.$c&ƈ/}-W.??3*npVm?7,P?=x'ͪ]~侐301~>c\KGLGMc}'dYcxc_~YJL3SLpsz aW‰:XSsNJIXnX5.aKUP-M峋pyq6cx[7b@1 +yL [}W{y}sZ^ ,ȆdkہEM0-̎{i;H+&[zK䴗,7 X{uiژJ b.q};T ds\/b|9W}-.TKaGMIjR <[J]NKĆ '-a f#{h?gL ~p0fTk& :C8:QZG-Kp cMy5e=d":Wz ,NmFkx@'i.HM7ϑ F7]EحhK+Z.Mh#iQRrSq;~fHLPrW_R~%Q`DKULg@+C=ճ,vMLq] 0xü1_81>+>8BА2|yle7%gvV `7V@(ͪdDn2߇salƒ=ܹn|*B,vE?|Sfǔ@yd`″PLQ Az0dxH[+'S+&Ev}ZvA$P͵sRck6}?.jQ?{ƻHǷ`)(ZvዟF$ʭRpO/@rGpMxgl>q t݊ oVxn-" T0F>w;̟eЪ$C,4:+D9%!)9qdR9*™t>8jcy/'H %\S'5Zu*{% G@Jޱ<@_ JF02%;n#JLxz;jyiNĚ+ ,L~'fc~TE g;ygE@zd?+HȨpej2 8L&YB ZdҲn;e j`X:*_ߋ\EyQBR~y3LwM9}j_EPd|W DPn)؎_(r<y 54޻iZioֵI?}GυzI.㞄WH-qӆSqkS(O2HvSMkf_ d̰'_DCai6pZZL֊Jxɋ7V 3Qs_ A@@/t@G j0vni<Πa tΒ)wFQk|?ӠOo+e">R0D})Œ@ hw$)j m  &cV 5P9Տwߝ$/cAu\T4e]^84Z% /ã]5bh֟rIkF>vw[ \s:AR[uTP*eh;,ZJ Wcu40:7. Ȑӆ5cچ![PpI( <ƍ?l!Iș$f!M6+\L!2!aDڍ/|H>KY]DQpb M.|lPj}^CHҔlѻ/7s떊twj`^Z}7N_~VR"jN P}Y\w 8G59-Gsjl.v+IB΍9DH룠~,:@JȽK@8 6[ \./Z营;PWY%7^.9 edEW=uTY]0AMW_-3)+uij]{Qt#+JR4?K(U܆fSQf SxQ c :oFlx]$ ~v]/d=(\0CqP-De~2%u4Ө}Q(ɦԵVq/V!*ZQ}İ2^)m&/*F}#Fjr`uU za %ʗiXšsktmTCLA>\P~ nt4(ma*eE#iz+7 dTz{Yͨ9 iSIƱ٠Z9DkpRJt4ӁUM5Uhĩ*/-Y-a]*BA 8 (|mE1 4|>XQFzҽ^ʳ6qVB;2A(Sdq E2S h8ĮE_p#oo1XHv͇2-r=[D`S "L>(sҀ<(k|=:;\ v0рiUb]*,ӄb/59n%/UabɅ'8a>nu&01fDF`[[KzZ4Qy"N&MGi>H#lȔ#94Bკ*;kH2= m;7#G[< =:2oE!y˼īZ\ ׍mNa>%~ ( ( n5+y"\g$h}5 NQ~f2طY'_#M< W/hwWʌ[uM|"L4Mv?* aG#:Ӭd&˭Qg%Ǽ2Ȳo 2u5짃Jh2 iӍW0d4<o[, Bɬx^ңä%zMNnuXp%e-(*ot؄ѓ|xYJMDktU$rk_h2)`>`HӑjeiK 햔9HB7⾺zʸ󌣟sc STwsمڼ@Z4wEy1oF$l6+wUm+uA 2b3'&(aT<Sh`xgQ<|$&aB*-* |%{E*k.m]1H(I0HgXdߪm*u"Z4vPZ(xTEN(gɳ83B BfB!ZӇM 1FC$ゞBM NR=)uh B gz5Sv@X %ٶzU$%$M榋f>S-ћ3 bͽr)KP%8[l9V06O4fZ+y_s5|gQ,灲a̾9,!A;8sQ;i K \ƈvaM w.Ikt񴇕 ]g? ∇t?T>0JZt$qX~SG9xJn^[}Z÷J)`*t(tJ+B Mͨ:m3Y*N41Wqy8stV$G la8oꎽhAhSo1 М:%z@VEjGbcV$Ճ %x.y7p` Q_vJ$|0.IuιuI|X~"01bsn3;'( Qc 2l(Te-c)U9yX{8 -vf"G]2^M5b+4;oTNry0quѡ*,Z#X{.VX5,^eGBbuu5twTU"s̾1.* @,/L͒,d+IDy!8=WY&1UR@ 0!;NݑZDGʂy9[3YQ*_[` S짎W [ =?.\iWg؀~Wz@[{k9ܒxo5i3:)A"+e$֫εgw8_$P)py$[Ա$=YW'\Q`Hz3uU`;80tJB@ש;c㿟#.]QuӽYx4_:2a%`/W|H/#djFg)%j ؤN6ǢA=}_xS}<4] S|ȂJVzv3LŒŚ3xgSM!̱9 FYi$pk=!d`7o0*Pϟk:*XςTyU1p7xkŢIʌOٻK3-0%53v(to*`_?YY$_n5GPб|݉pH;WFk ,x}1%9r4 ^(tDP| @Z/v`MH'aWi]"{xY%S$F-KeaO|7qd ,(5KNHH+ž杦i[FSƅJmْ;AG;ʐc5I`3~5>uV @~alNCADSY)o<b7p}65M=Hm!癷~cU۲I쭉s&iv<|zdwv3P vaDhzbaZPOCԽ 5F[e1tS-;YU(sI|$Ċ2'sCCU᰺:O {?TFl/n_*WMPr~G׏7imSAG\Ѽ߱O FrH \M\D+jB1͢a8X &osLqKVGLyEmf Zf\(yG=ѾE_ŵ -:7JkymrtgN8[[̢j(eK]DGC6|%LHoŦ^ mz"YG\+;t~a$3 f-ZI!5kCdG1N`${if)(KJ|`7h#/N9*w&Ǩ<eb^}wfнJB"H5g06;x,ь԰Ng~r[v(ڭ-3pW뉨l5?n[|Kz2LӔ^k70a%W\W;uكEPQ!]}p\kUN>&{aL$T:grT&w3ş׉r #RY置P %kw:L jc@ŕ)D3FƠ2w)b.w&i峩lsxǐ.NSg^. |Ȣ4Қ79^DJC BOABN{=J{)c%\@- g˙[\yoÃS_sSXB,8%^6>5㹓AcmC ovEbxd8v sS9̊!͍ǝc8(eedH@󷍰ѐ';42@܋:+9'ƓR{Pew>n߱$VVӂnݥL5ZN\ӽRzAsg Īb1ߋpTc:0h?11J^Q?*>[2lI+ hW߯j/>pmu-IDZmQy. tð(BRx 5BŶ$`j$WAI.TG:8Χ;)W"ҰDG nD 6Yg<嚙?jn쌑~ \+V8u k(g]h?0ƈ{D={NBb8B]l6%0L'>QCh)݄ͦFS}(`puFl'v{_\XžυajJ t/=w/#AVF!^%[L *{}F~J%[t]k ;cw R)A@ EvRrY[E;puڄಂ8 {r] H@`̒^)_bH4x?p = tX-<*pO}G;g8%^\/2qaY~)bmJua!7O̲Y5Yp'v `Ѯ^R 8-DIT64.gBҎaIU¡ = JK 샒d[V_:-S>flNR #vOeapUy~z.k)*_ϪWHvY5>\:68BՁpۄHiCFεseb6t ,w! rJpOH6M#^"@*,;W4Yi{9KF"WHGFy6|ڒ]DNF9Ё zo煄|\i0dM@C}m@ ý(rU z?2]}ۛ~ȏKHz%bYkb AI2t=@ёÙ]8 i*fIcaT%u }mJa hy2_lZiR1}5& MII֤7œU׳Ɉ+ 25ML>1+ .%7®Jޑgl(51;(j*#n0A&':Qy qG*I^EgȌH7dBmZ.E_pFZX 0nxuo[92S# @-ŊSх3|dlv aBw(U+s7TO՟_۪cyQ\yr <~Y{kAfGEwWZ=M\/ͅIo9@weBU=C@4(o2YVF*!O.e+XCXA6x/H"շpdvF}Z ǐmoPN{PIw"/v~CUW]L[ ӗ2yFBSTP AiV}v~˂@I/#Jn`C,,g8=LOМ. #L0/7ϲ" :+sޠ`ImyפGkCuzÇ+%Xj^<テ鹟ANs|E?IJEj4:x`(ֆt,#}Aivr\w/-5充fJuI|#/5}< 8½;mBbV1v*tw츛6rZ&\׉\q6%! ڤLjš*,UfAB7G L;;,S1oq kֳzwЃsތ$tXveFB|7~2Nt8F}ӼW*`5AN2 O6+xKX]Еh7g\26utp}ͮ=THo GIxJ㤴ΉQd9 O>!2J+IA¢ndAw!XQh}Oh7t$?UײbfY)wt3a)Btw"xW6FI1m˲k͇dqZD=~R<$bSg3,g <9;g/k)2~mۇA`j Q7bs{L ixv0R!; ߺ^)Do~]X{7 D- pnͦm _*{"1ؕ+KF;=1Sǟi;AXU*BZ4'YK<~H8xϤ >b E?<tx(DD0X74@NN*'XulxRȀ'! 4[9p)hz:f(qŲ_&y2#!wIre@j?eK>6όw@M!=B^:4W?!_AmR3=?nL-z_Q*dz*^se"rUVFFл5!9D[ϳmZOv hB#S|Tw]Б#JVDB5n+U}R Ǟ: X]띏~q:xM:4YԌv13ěqF872 |jܪǧT.ɧ(L)d5d~O׽\m}Y0 tH6l]f#;QMB:4y)ڜ6{c\lƎnu=ڷAq;`zaI z d*^I5HuI'<} '5GOqUME%y]ӂIW_ӟq ?o;͠uKT u ;j86۬BL>۬b?S+GU ?mr5znݪc" 7F"jD$8ATi%sOouT* 3gZeAYKik +^„:]`l+Q)}}]4T[NOK|ySzv;j!TP3++[H.𬞊Nq3ۼt.Zo^٘O>ف+0yzT7;TZnmv6) p_ ZMkԱٮs%,6_@n@Ulel[jU*ⲟ e;ϕ="BEQ8[TT712z瞏ܠ>, 8>._]AIM*p\zLh^I5 ƢZ uQޙg(}EE1-KQ}]#jEt a -.u-w^X#Xa#^5+ x;QN$g@]bD  g84E bhj'<s( dR@yS]`{hȎ*f~GuWB ڍ͠=:b;7|BV|;#gqoR\MJ 'y1RTϖM8=8>|E@[8BǶY|<1.B+aiI&qH .*6֋2U[ٶ_,n[]{J ! j55+P ļ$X$*KK-Ja<;KMsy_!Gƿ*xmla# `)gOL%v|I2zum jE<JNZCLkaff8o/h0\_KYs}ǼEvL59*RQvP!H<=^սj)#`2Od'$)(,ܦX wO&u3aҮʮÙ:oO(}j;#]Q+ Ѐ a1++ؚЅE%%2 M72>!gz-xlJfB/RTՔ8v|a^%/-# kpg!3=0SīhJV5 !%U\i*t0 .{Kz<uàsC1Eh1kr+hv| HGHy E& \,"Ė X';RqZX543)@b-#fy3^[PE^d ;d[kAe/sy,MR˿gsV3nlh)RocxcMCgYEHAxcd~aֹlCcjӸ_[`V b,yxP()HZZiE &,b?BS DH\%`D;k:.1f2hoLW>4=bjq9`V Ǖ\$i7Ւf S{IuXMYmeWW sknޔԪd/Ӕԇ{[W1 -nCj.@c1qTCWgU*@4n^8.E;@g7c%*3cO/_{*9%: '\"YF$*AE=mB;@.: 3\jNXHz;ő!{sB6ωl;T'K!5\T @)e"VIZ#L<ady: Z&a7g?ec ږ9<^[ĬF8D)Yܬw4cp!0Vh6¼&|)c0<|ЭX:[A` N6G^`˽1GfK<\*;$FG+;R̨ 7Ma%TRWL$ q;=ys&ȂlﯫB%"`OeGg"Z/A̜8DtRo_PKJ`˥o` iq 3`ۍgסKǽ@Xg*A,gdV-<9: SN&-o?R37-amaܼxn_yjs ?RBia(asȖŢͨ{h"RhSD#GfirZOOȁd%8z#Y^fyhA]΍C1)_M UJ` V*kAI n|I^7Swr{j%bf'ihj'PN's^'0c :@TRqd/]`_YHp̃;'i:.jE68S8 ,IUiN~4= K.q`/I cP2}]nJK9D).P *|_;8[ HfŸ}]< '=GÉ>^&jfw3vkԹoإ[l\-11C3$-=1[]!Kآf؁)8}?{HľGYQJ}aW9蜩!0P)C/ u/ʯv.7s.h$@Au5KsߐŻ &?-KGqpei*s 0 tLa,+y}#6PBP }șZKL6ԵcZS3S_x/J5T>hq:-z@:LGe4zF~e>—EXD$%bݡԣK >- *(^) y09B&4m`D;wXrwcD8@o ȃ+ V.T;/Iߒgxi/]cͮ`ĵvɌK9i_ժ0LJRfBP8{87'2mdd-JwMVIV1CtlŕkBI I+\J+R&d>ԷLKӄ&tM ٠'pt.,Mh'S~bvT9.-r9fI͓_(W7̓ KU񃹏@[ھa=shyuR yw4sT#*jl:p`f|({b;K#I Jb EQ:rCY}bѭ)דʪ?F{_:n, {P)0>4cܵhjˆDKdacX+M}<  _Wsbn @$bH'@ 82#1 |F#.[yC׼G,$4X4qJʅu#5 ]h'  n :S SΒYa8\}Oxd=zɔDV8ZfH= RȢB&Sc$=NCf&z8#l(ڻ'8(/bM6"ΫD,d른HiU`ͿclٞZh~DݵERXi4ffRMkz*s1U%/w@M F]iNꤘUS{ģjSIY6d^q9G@ż uEhi~yY&8u ~r˛\ƻW9Q7#ٖo7CFR^/*,^jہ~a4wp>s2ۘcXHlkčJ]ji<üwo&dvFTFXDO$bhZRL$Me< />HS5GZRQX34w <Qt&#cyM&Cő=BK]Rj4]y2Zٚk3ͰB P"`N;^Ld\1rYsM]:tL슎jXgg'f::ۖ ;X#aN9bZ8.F Guճ*cBJJ<Ի?@wςMtnя_([ ԂRD8oc fw21!2Ż_G'ph8S0خd/YrP(VH_1S֐YG@<MBh)r$1?Nt4\nyxpg|38zw9#D $8Jfw tj0 1(dעvi3T}#5%dk@7U\aA]$x,raAVԧXɈ0u8@Slkߪ;}HQЂ3Rv4 PT~oЂeg~4z Prv.ʢج0&UZf+|.EvV ܕgJCog'yeY>žr<]k;z)2Iޫ~O\>L"w N(|t`HkR0,9qeKT;2TO+pM_J{tntU|h?%~>W9 Sg U[>3ا1dkl=:U#َ!X_'BLʄC59g!R}X#0S ̜W1_qHk>0q]*x+y"4C~"\YCOz:eF?ufPF-l氰$xŴ0ŭ<IuH]# "9{=ھ%o&F9xځ΀;Ey}՚L@ IlYy51nF%JQLw0\E;\Tءg'A faL k=k˹$&` >&RwLdwz}l!kcb#84<'ߦ^aLJkQ/q3EF{%ˎA>sNuuCdhgbM2"PB! mʋpD˻!Lcf }  ȳ8ۜ$H9};Xsbm!}ә^/o!d͟jNu湫1{Ut7 a18t↗C4Y$AdCl|jkTP1`H{b=T3C k3=^B+s̖'g $q:qwD%9Beqlԕ!rŽ4$`@ `=pvA3sF?*Luۘ>^DD;{(OV}sڐaƀaA`Yjwd숶i{[=?;593F.ζw?_Q_L[X}_Nbjl.x7|LGz #huȤ^>KSmXD/ryS2;<,.A 2YN$mnfџ`TiwA&A\ t7"\z.Xs@(7>~R?yUDMג^#ߑ~St|0y4Yb*o(]jKg#/xR<-X:E`{n0Ȍ"CyX-; anPZr=Q͒j2r"|6 ~{/>*LrO;PR.حT 8eO"Z[` #m8 ~~18& 䔅x})|uJ Ki;Ǜs^#.#'#v b- TM#< KAWS9$g }X;X#*.SJJfOI2[`w\OoB jn]t)9ozh5~ "ٳ h!m}  0}'. R]ky.F pJ ]w&aC_pfugm*'Xh)u9CP^˃LzTyu=ʿR]dW/+e>ωk>fs%09ij՚Tihzg}m.}~6s$;H-IEWўxҗ0$vWj6KuOaFNb >"9b;{VUS0Y}M)ė@[p>G3)IPxoՏ8(_5Y8`f}r ւ`}'+35D4BIwQX.>s*֖%"f) >K _N)F0gk5؂yμ6bÝõa֒O2TD]ݾFȑj^YQvjMY1g7j Pڀ \wY'VIV`}$~@7%IpGoTq?xD?lSQ w"C Ȣ׋RTί:?/i0@i@yD &N{({pmo>M(nL@Ĺ2duD~F5hz{&yF/~q vDP8\ K0L9O3Pܜ2~V8w\LCz?~w$UsWWgBDnÍBQ2ĕezuG-/縓 cDP^47tkQ'F){:uIs1ޱG㲻Qu>+#8+ شS|3ZaS8ci@394 GHNJz)}50g%p[ >mL ;|RP9j,)v8*_! CۏVh[gb*I`\KW~ 9﫫kRĥq@-> oxmCCo ]¢_x8spXYH|ǽj=b z@/0*02 m:+4 '2a~<>o?t7|kM5NXXh;#R5ԕ=t.gM+g YMx *ZXɞoU6}My /vRTsHa#ЪwX5\a F':׺P8<}F8d3ڈTX̧/wsC8OW$DSBӤoJ7ɜڃ:B߿vhOObD`CwyĕBgc0rkd&XCOvUZ@!kSk C@=&,TсBcO&"yN/D6rBP)ԃB]Cņm'W7 " sWr4tޮ?M1mjDAgڕHu]S#6x Eƞy>L)h%Y\c܈9 pl۷$ 46(߅Ԗ4FF_{ze񎇓:^p\>_tt p&Exِ4JI߻]vPHBô5=U5j=%J|A%A-yS;!ЌY.loɔD/ADg,cgOC쇾'OEb p/iո1F eQ, olJp&gV1(W 28FAp+;lٺAM p}(كw" pVY[k[8Cuḣ29!8Xc!:# O~wT.Gq*tzגyD-X sې/[: :?,/J-QkmRͩ>_蠟l@wŌp#~a aO>R6 9kǢhmgz 6|? ѭ;)FĖ<#"WHQ4M JԠx) vm N;`c*To-G?0ֱ=.{GoJQ!n kJG$߸l(՚XzkJ˳6i燧5˜iI!4Hy$t'mE>ϴu?WU46jr/4y*ƝI>H,'U"gWE}an-ƢNZag>,y^l!"j}x ~$[kW%biCW`LF#zx8?(oG+ ~.K -Ds=CN SG[%;26`K_$Ms{,B]˞.OZhcێjyo#P&1͖JaCi RvZ{]{B,d51w$le4>K7;)1H47Zζ׬)w}K`GkT#~l[ajJo̤!h%a C0ӻ@f0z'ư"'Y/`F#G[?췑s q ޖ^%IBgᓁ2"-}q"dk(Ҳ+aėG^?vz]^ԂV)nb:lio$)kgn |IKOPp@HъU{F/l|VMaU$f)Y0L4ٝ0NC/\=I98/pcΑ""H.1 ˯̙KMbdŔp7|}h|lB,~:uDu>ø7vS9afk:)qͣ{3;H ŃTto@1> :R+IA=6ƣY{=WNTVzhh7,$W4'ٯqPqcKɱG13={pҚ7[p jcv;!zJ/bhlc_}#o,rV)T<#a,修A1xx [!/ iG jṷX˲a@CY.4S@~tpS͜"8PN jG`鐋@|%]1y-Dz Y*\f73CSxОe'UvףWRS!"9uNd]Xx&]0+}uT.s@K"z߷ѿdxFMwyV-<&x93BV ٰ9<tNhn14c074Yٖ?&̿L54II_G .wnv[ Lwo7cd-jz$*q&[4V[PEehf24N{C[,?2ZCZ'ns !n~~iokЬ(Jײ) 5Ȣc ktTj~psod\ȋ~@s[p,N׻; UϮF|8`N>2h]7\X4k8 _q*Dm_{a'y2 -K.aWbsfeEbNUEJЗ32\ozѬj4e `󁲉";)F=6C~@\)28@ MPåQToO ,({5TJNԑR͡=d!:fTaBK+qWaE[O +9J/Kfu M4џmHl-8 dFx3\F< }[ɻpU!j3Q" l }ohT$'~%;P68 C~Uz {(UB3$J}g]TT^Hz9bE*UR Q)P+ewK.0Rq'~Nj; 8ɇalbb3Ͻ2q @ʆj´ny֌Hh>װJZ=F#|0:p+ȂoxKnLjf5)[kQxu-ʴE¡܇zIcKܩR[{P N_^Ohpؘ_Jf'-sDU8H+ Oe~h^~ |[Gyx #PX~qۋݚ#GͮqLbMȱ'&k? _bƊLl[2<,q8mQMpt)a>_bu@wBf4֑$`ڕY:؍ɋ3di8笷xwĹMCT_Ɏ Ֆ1kw!tcۑf[c@TpBY!rT\(NP.Ňh۬4 ܃3_#!M5eGIRp,BZE6}LعScO:Cq i P{=q՛9,9x'ӫM^)P9j֑ǎWO2!<Ϧ:ޞha n8\A>tZV!f?^<;o~mh"^'47!U>Ln#J MbI ^O ?"B\mbDX^cュW j3+\RkkRc'Z>8_Rk.pdU?,a'E o:sIB|F,a-Tww7sk<[H Җ@̑پ~{}Wm`uqX[DXg´: S!M@87*t`QT,rUIbhԀ#3 @-.1 ~BjRVT"ԥu} 2n"~ϵEMϤTImig W}CKˁ3iĈ:صMǯ"2)g̥5ց%,=+z*"S/rЪA;d.Aղ}t(q5[r(H0.D%5g0^g0Ah;۶5!c2/x+uC_8AvA{p\X×bEŎb2{?ۼeXA>vٸ}51ejI;sfb"-zٞ_Em+-$dCmjSϻ&eѡYc^[Ĝ!ZmZ"\RA7_v?= H$yO:BZF34:ڇ8a fQ8I|HX ?(0O7iPR ,HU7,:*)cy4:5tQY0nBdOF54[A$.jY4bc%'9Dh\]̚PL8Rr4AR ]˅pzZ/bGZw̟$WCWcQ1gwۻ צN P1N| Kn=πn]^*#WƮu_;7orCĩa I4̝S ;:Ra@NYm  ֞>V@xd lY UtPխ1V~RevKXZA!d AsmS‰ iJIR`Їb/,3*"1>qSZW%QovN*!-EM}Eޡ8(:l:z!x nB-xȠ:.lCe•fdQf;AW.&4zIƪE]Rxv:cņnar QjuK_9}X> 8US6mLxW=s6X3~@dC tS(DYlEQs}z &#hg J*J*`vE巩~;21;0w1>JfB6i%i75/L.σ>.p ǹ[n(o&DEaC.YbѰ pp Dsjx=ڿnPLDp}AkӅ,-Y/9*;84i2~)1 ב0ա~K S 2A`LާF^ 77]XBL :z9aNJ'y-1w"F[@M )˗-cCeSB4l? p6GXq߆cV W߿_վSNr@j'!⸲sjsA2 kq; GI10H6%8Cg>M `9Ba0@qU㻀Y0Go#x[*Xwp#N%BZE`0FtWBΗ*V^q@ ~\j1#1BS5̡ý F>1]Xn[fߊBi,YOU~3_J$Cbx^=xxd""[w!lR "P9 ,{CA\&"axXŽ M/"et/;+eՅ>,QS@U85; 27UgQ_Y-dnNzf5Ǿލj0;ഝ\1Y qؠ ZI S,jw"Ek{𴄴)} A;e9EU~yv-qyJRcʮS=Fs6,CFU4hB-q=em.ZdEncY MkV?ox$p.OdI6ZxQ~`w W WP >d_Ar~$PEPAukRį-_Wg09vmL{te uj&S+ͫh*A m}e w#Cv])2q"h^'W Fܻz20"h[e'U{󜔹 0 pc0? 1DoC%fAMѓ;nKϟ>XN)Q 95zEy$끔kdӴi@gZVvQXMVԊR62d*Կ44Fp3c "Y]165Y bQ'J2QpSox.̌i ȴh[b., 67̔'n(0߫*-)] w&* nt  )ԩVhqy?CV4aE_ l[t"Ɛ44Tz{@X4-)a].曲3t{|غ=983NlMY}ܐR@hc&E-n&$.*wܐG cS |͸~ k$v{[f(N!2L٪ߺN`ۼU?k$3=*sC~r֏)PpO?9kD}|]p=Lcͨ` )#Zyu{06,(urTT. Ĺ0?9jP^BD- COnuݠVMST1lF%k `faV4DHk=׼pzӾ]cmxO d40n0f@" ^r`U"~mhLM4?d#vkym\6f;-[ mδ{yCUJMG$74ڂE^ o 8y:d!` ӱ+B|Z(YWz˔ X{i_tChCL-|$ Q5Bɗ_KS vU:' mStɱdlY {mk+)~lRH}wYj[&L8{*yƶŌ?fo_ի_V1-lrʹwuX|#8 ѝDMnxeuoQINX+Yk}&'aa4tB⮖R;LE'+%gyX$:]!-yowgOaZO#WYJA;]0Pd.,d|/|zV뿉ΰf[0ÓI(&jcpg/:odaV3#JŶj[`),} V"с?7G:.VpgR}ug(0^-}~eqk/#2I9W7BdTث$'X ? .iѨ(iZ65s9 m){dAJ5݅8m)*G+K+Dw dpu.^@$2bAnZTJ,<|vl=Hnʔ ~Ǝ3qP"uQ!~裗kwV|k}dАjGWdF:h;LB"C(=JWG:Ʀ! KŐ4.y>rmnF%ɾ)HGzxQUᗬ6_c?99%S*MD_5$W]o̢o1 ˹6nݰg?ǹzZ_*m[E⨂wGG>eVu&%cĹ[EsSŰ'0qǓɞT'$m$PD*ܘQ՞g.⽰`&m&.UTVm0_(%07%zٮ45/ǶfLWM%E[c MG)(p eG|:&=@|$XH RRs/jV0vT${8'K~?0QH:(IwY!'IXd7WevP.4*6q@',gh=ti0\iBD%='xW/(l_ǐDj2@$>:Ӓl}\CjTb*ֹƉ_TPdF?#~9_;Հs&#LZ(IE=/-U岈_mMH<( LykԽ)2L!rIS$w[6&*}M n::뽵mhRAW ُ}1[YM{\|$9Vg(﹚}Zyi;v֛@V0H,c[.cf;%b O8_Lag5˪|ݬm:ѭA2*Ϲsn̒!?cu70ھ>g&_<4?^ _tL"^VùRh>A U'p@] J㿘?v<]% n M2oX+:()o.͊`ӷɶh(.)Vdw"W_{ir, /sm)~`ǞQ'D,:0O`N%XaD٫@v؛mѳe! O@ߘu}_? ~/DZb$k?&n#Bާf5%A`1\/\+H,Ю$U s 0[LFIm#1zSinBoeF礟+~&Pm#M}^JF[` T/N 6#*tm IBΆ no"1idF$\ػ4N^? KǪLX)bpde*94 :%%%Hg Ig8J#qNyaT Q9n|uQ^Z|3e' lڠV~G-o,MUkBvq`y{:1B٬+!$m<R~RBJ$X mT,rg+IwV~;rp)h&:`KSL nr%[Jg2\D)3l '#n9*/B{p`{g7L!*0,y#8Kvs^T$^6|w79ӗQp ׭7epP))ܝ>\dzBri4ylrҐ: *WP쨣 p^rō \L\XA9mum |/ NCG*AC즡WϪǠsL܂Bze˰nNz!RLe˪F}Ce7"}9`ԲLF~0gFxF&Z|4#=_vU:Fb/s-y" ov2Wfu i8W !"9&GB+yQx5X!ظ|(_N7R[,fC;jw6" 3ܯiZyVD"|;~#{"hc$9t8'Q83:ళPWvy38Gኀn1*|I;p8Xg ` v8^Υo)SW4",ﺳHvsWib?&vtR{kЭn[ zoCZBءqu008YhӐA";bdsfe-źu _:}Sqj5[- =h{1,WpG^=\+ q -HL G^69T:SfoL=33x;iNwxF%g؍#0*'I+'?X7/!]G5"*U> ϐn* CqqN4bUXJn-EC@yڰǚ4Cxy۶wF59%YNlx-V42fE \Ьp׹w>n"-Ο"`+TϲFt<]ʗ})2&7Eڎ ! :zSxŠ{-Tfw I[N! 28_9 ;!nFs82rih+Å.(MnHMt&QF(0>12uz.TSHY4%]ܟo v%gZ.•}$#> ^* yu-Ow= Ov#J$@| F#1$ c]$k~8X?DV,z%ot*}HN?Hy XEz ?rDO ppb(I5Z^[TboIy S*lv̈ Y8_ 2h$<{O0E5D5J(gb5nJxEZ+(Uݡ3~PqS|b0`8n'@WSP]y\Fp3QDKnt.^u/M.ce%c\U ߍA~dmFx\F&Q9Ffg" M~?|8uwgizA4 +uNp;QWHE^v7%y:y#xSʳ!.G=6Yu<\`ɍ@X~+:\[+"\ ) 5abb\BkH"\ou,}211>h{'8QaP1_# :YϹi}O`Щ:F 6<~0 NmbTꌪ'P# sO#?:ؿ܌VM3 h`G AyO `"zE5+1JZ32': ]M j!/jn^ @=1X>Ţs7i- WU ܚܜϮ^,q$#VR5xFL]2;R1qy!܃ T>5:pJ & JThWLִu 3 #(_ 5?jTZ=v]Hp},!9,ɭ&WBÂ쟼%fO;Rw@|9nlEFn[I:JI*evX̒3d.cz:ηi$/r)qr]أx^ zHM4Vdbt Dq39WdYwRGEDv&lb{y c}#5R)7mG$Qڏ1R{mD(*;X~C5?hޠ 0FQ? E#z%xlHLM/K6'Ofd, 3+2w wh,x "O(-Fu*O qSMW | |q[ DArOtjamxpO3*S0y̓>ΎS`zݝ鳠k%K) LPJh=y <ҕ{}lςpĽ:<c(0*(Cq䲈Ҙ|}R gHs}T,#7pY[C IهE)Rş9a3\lm蔙5GPT~џ-ajc]m_syMy5W3C]@/I5 _9-;m k$@+VqysGg/vwa]Wypf8Q/@s ]p`jM ٥l|ᛡŽN1BA9@TIѨؐVʺZU3;B/d/MpM@92@UGc*bo'*vm\wrW!#9!* m.GjS*ZRW9[Y;CPYs=[m0*]>5zbN]ګ:h{Ǟ"UJ)mei sGA ]/L!i%ixZv3YU[i)Ҝ孶wOOu&"ܸ>s@‚I-\0ׅAf Lm iMOo1at_eUʀČ#upĺ6[T)F>mBjsM-'+`Ԫ~'uI Z%MpZI,ϒ9Oct֬M$"0ᕺ6ai̖ɉ=Vta}4k:vɛ~,]zz-/.F`c*JJc{Ap&պ9;T[͠rHkQ$b|jGս\C?RQBrm3)~; L0 R.ew0j3ynˣ}S P=_- WDĆur\yNb{I=')c݊2 2 M̾ŮwHY\bU\R䷹JrZ[4UMfaeAF2K oF.xI׺[QR/눼>#;gj(DHЍ+-TP ɢDPuw4\?_F) Cvx8pWͬDg Qؕ g.MJQ@h+lS|?%ȋ!ފ\^-Cr?GsTgҝUW{uQ/D~7,yXz;gg3 Oj3ǮR:0T* ^4 12{QէamZ!:Hq!o#5g3nW"cZoHKk#Ujae%l3 t 7qq5Z3ijo쬴8)/Drɋ9T|YT<С3N0ΉEGN|tҷXqB1~$P{eflQĵiɖc=,ʾ* !g_2Dq~ۨ肫>(~BLTDmĬ+\L O:U~~ qYT+>̈l/]a@^I[`xY l!Z=TUOQK[v>߄sG5/ۻ`)\E wY)Y3gi1k,@R-V{UK/_bn:R z|yqid/4#McSbj62kU)cU:V/TMGhFj-?(R@3G@VoJpI#܃[TE!r~T1pQM*~1]YZ{dRW"u,~)^5?j9*_f9BˬL*yj">>oؾ R=>!kLЀἨ4UeE?" –i3(@ZtZ?kUiЭ쨌Zƫz]x "#ɓ"6vBHf;S <7LtJAY|.B^X3n]34"1^#f1p.٤vA%гNMxp],(1s cZۋ dX7ir慠ҌUM9-cKB6=^jϾ?5x\ 4XedJۅh& "|L~QܱR c;`*1)FTh$-[C(a^5QAJa]4ؚ思opbU9f_;p"EMq"p0(n]gǺ!ιckA1Z{_C85>s~Q.Ir6[si{Y4P&{~ZBRam3v'ڊ$uӶLoᙰž;FfOZP!-1+ !l lM sc!!_*,]/X`(=*(dW,%?*]qDxL{pg1^Ԯ[}=qzԬmK!lӦ<$ FZ蒀$̅[a~tƤyF6C@˱-H9*"0Pk.zUݵ^Endh؟Vۍ3׫.9<%[96o8H-kw־'e l)μIҨ)N,<TR:Z#oI JD"[%.<u ӃIoյP> ܋ 83t+#bT`G;ivg5L+d9ut`W u<шmbj $iv0< F? "Jzvuф-kç uwBXƘj"W^OD03WҰܜ /B(yl v̀/ҧ.~%ȴSuN~&^ufRFDl9`hnEw$#O|u _M1FRh6TͨoduKQlqNY.SGF5z/"PV͌ȋMscD{DB']_?L]=SinvAQgt{C05geCBU08C+ n9ggUd ؇@ñ(H{D*!bpQDž+qbZD7jh D-H[bB`X,wlc4Lbo3-N`CfרIwMIϦW.MjTX򽾟m:H!64.x0W8 ֽd^]OgsLnn)Ȥoq:Ei9„ء*No9XvEbfOTߣ{\yAi;+ Jψn-T+؁&8: ' W)%`*=6}[5Y-30n@CNuXTtD{=q-ʸ CP+d(c=ehW+GLËŔD.2>/t:F2 [_Gݗ'`bʓY*.d nQSqll,U#G6d,)ܨșsF=4ɐEblT& zٔ *J Gq2|%<G;(Ê(M7|1IEkU QN;b#2:R\J5/f8vƵ.2zK̚$ !ų,ij/k' /CV(:daDbƾESf]7`xC܎'e+z{tRV:pxr2pv9{: "C:R4`He48e`68|˒>=wV@κy %\nüT"[*bNjv3\&8臞#UDbO S*Sސ0x፸VJsoXN,#H[)2!&Îب]G}bT2_,إ݆d$^kB>%fiݲD,%l ,9`uy* ks@ɿSJVi<ꭞX%{M6۹UQE{sh j?qa=)XƒQ_dE)g}&]iMp|E!6oI i3WO2;KƲ7 9Ek,JS> HFJK)UyG2=e]fD7`.W6tq#CvRެa,DZ"$*O2"a⮝K]Aaxc!`'Jk$,:f _ViR?EYҺ{{nH3%[m-?R(^O7X 02D<%Fiiw)\$Yke A % `Tw㘾{ƽ`ap l:wӿLF^)o{0`&+LGɇky'9/ tU+&{l9xZAV1*JYR:׍Xӊ![iO10~JXTve>Q볭E)< Ǿ@IXl.l W]pnYjޛۨ7qڸ2l$5؟[[{NYm qX̹įC,FVT(EV])2 sI S2bQ֖Wh8>j?[ٍWUzA9'\6Zu8>-SကÈSHOFöpy >pH1sqwv9HTmG]ftXRy.kzsXBrׄBfP&mHuꝷ,1Y"#]HOLGE14+kbdFI ALY<(طrFHԶ~%az7ml E&7r3 CHS_wRcV&zAù`"{Nֳvk<,aUS#oAMnr OL!,M@ Dt,>k]55̷ LlK`. d+DZ 2x[GU@0#GvTJܩqE8d̘mQ/ZϻG+p`}')j/jlH#QCo_niTOS,{z@,@HBY|(z MVr maҗo?L(؊/x띔KV[Q<]"2)霨+6_īo Rܝţ}i&Ak=VM\g-D|km%*9vB;,*$07%5D \H+풛I 3jBMSzy(/)![G 2}Qmc G %2Zw-B>Y $hլ"-3edv>LY'tZ?]VK[ij]C{|#QiýW/ n1?Nĕ~[OD9v;dt,oK^qv7!"sw(5(t.k*xzBGJ'69UN7߭dwD3 lV@Qn0P1?eO[hFi;9"qGAI▭lxb|9't=úkk}Tk=ۈ_2{\zEV/ýv>~.Q9|w@=F (ٲ%(lG9Fxϡ}èz?mm!Ji#̰phg((0ۥN|{Ѽ|Nތjʍ:`c=JmE31 ^1Dm\!Т-[yom:POowLa|wlq{2 ?1 .5hTm.GqW*İh?XåjkhSi8ZONY=DԈ$Jp9SHǖցlq)q ||A:h S댑س"=F}>>nuӵv3+W=/^3CD/YQCk`&ZyŤ4B9dad~mP#81\r`S-pEqeR(8&UFqxH{݀5 *>]ߜhN=:b#&tZגmܜ}&[mF%6n ILR `Y'@G\?Y=ϴ~k{5(cp'yXjpQN,6 8S^]\0JVj$DbJA]Bkw/NyhgAHo[re8#l-ZdR8PNj[ E+ژRKޑ7lθ¸)2P5-΀2%[K@'S2G`5*/47l@Qr|@ RV}s! z/걒:{U!\lGp.`aL~{K꺊 2'R[߅V;q˨1DhPֆʒ~@y,LR L-<+׸85M";G幝b +x[1\1k{z9萵{>}1\Ғtr{֩a;7V`v&Nn5,s|9;z4݌x`;lV Ng*:nV"Ξa;"-1ROhbwFq Ges?{:-٢RM@9տ_6l֠#!(dz8=p K1Fd\h!Eԕ$6X+! Ǣ1hGl|&fKt!~pC/5ǖf|qD%' 20D|@#3 0X! 1(;7ˬA^E+h{# S2ޏ1iFo5'@1$OgAM$8>S"}xAka^_JСLm")rIGӜBVz@+M0Q^+tȜuuQ|Fo6H (.& `uY#%w^{ S&h)) "b!^zS;wJ"Ȟ e5lm<DX4WѨDj.|ܝT|G`jd'evNyn=ul8y(P'n % w6랚#ESvq[!]`Ҭ0F "'o%٧SNս(+;(l1 kwqY;1z!GUsa&yj;ӫ՘"A<7c6TszG&xvJy1pD }z䛞6L Q2b1io"G !2$T<#=yV p9yV0˱dt&%!yIF0nOr`9F שU&?l31wgs#FSZqfJѩhNzM5I]Lfco$b(hE8RӝRB_SӖ!OAƠM-%fa#)t` OUG*WA/Bw:٫ePary~9$7[ &CoVk5P Đf"UΫNI N$G'uD,l+?@u>l)+ Rڽ 6qqL&zږߛ 5% <ƥ>7mTPQEq5E:}m: vz0'$ֱ.:X&ܖlm\bgA6bdu (&6,[]/Y*KzE~KMDVlgkαb?}Pl['@CڒJQiMt[t (7CV) CO#[~K۰Y0 F,cI'`t LG suV(egL}8@,xsvz;&'8pKgS* 2쉁v%pSPԜd-CVyEV:, IK5l2fZOvH͂AǐPD⋈Eqoכ7UxC{::3f&]{~LsM=XP+eD| S^#x'[hx>8_qӯEdɫz[Xp6.^ĤL-oM@ neD};{;(.% 2}K5njg)U^|h.+rt%SMiY{A_JʃI͖TBě}fѭ!c4smL_ P-YyWp#Sid+ Xss'#H{,-`ƤNo-]P;;j}' !vPi\%-37+e5 X6^60K7rSoY7џD\Z0YB/gd֥V0S}I¸sK&F{tG8ICzLD8m{@-Ս ,-Eoba6m.L;ΝQPش領jrךo \ímT;>pD3ZTW.f2dI֔u>JNP2.~Zz̷$.: +7:YIu ~Yc0AB\"9i8g _NFlMAۤ\.Y/:%@.>e'kf7T[#4RnQ.åAq. ^ QcVO[ǽ=QƸf&^) +hV5H֑zn`!>.>h%[Yk{M&NəoNK>~b1@Cr.;B)(V'\qSV^xcǪ >~Q'6l*1T! Go䓃̨L(EBwPf  ߆%? Kd^OS'9hO-Abd9ToS;J3؍ሂbicD)CЙ Ar# SGKXOnwl*~2nOspn`BȘƱ#C ޲^aőM`zB? CZug@R^ouUcl0jqV[r|la] }yD?g<+Ӽߗ҃W&֩-//ɈsbjɬEALpnt|.寂~,%硔m#=wo{ߌ ӗ~i>62:z l6P?6H:e6XfO1$|v0&@_Rjo()b](T%B]gsDwm㋓0uQx&apYiM ^p ' p-TW*p3=a_9$!hRAɬ<`~9o OK_3ngתL8ݟqBh ڏXN 21{HMz^Z/-ΓӡA>Bf,"#btL: c*6PS4y۸5 Hm̎dx/);b +R`KO.*%FH9 $Yȹ/>W C!0 ڲvm&+d]_Rz/4/~2ꠔ@dsıgX#mlsAaTF1Z =ۡ )sh^_wh霟8C*ɡ%(SchKVgB+ T8٧wmͭeR#nY~ď}NJ:j~aɨ 2xЮF\Ԟo9[./zh+8#`*( Ie/ꑱ/xg5 ^l)d:CD#bY|BGtb!^yKHHh] ^1h7_悻Pשq:w 43sSG+^MVgG~$;t~U&RX&f|z*Lnn}6 uї<|^ÛVB)$!6`2k$ҤoF,VXT_}@;VG{"eb1fwK$:S@ XgnK~-m掠_~I7slM[ʷɆc${ZhF`*z92-X*&>,0jPLJ LL;ړ^GH7WTj|Ղ_ա};rlM]R%v˯g| rsQL ]@n~"H^|ȓ ׮UUY <ž#Mk%txf'_$c eT,oaI+jZfvC^gE |–QsƁD -14~YxUu@x ?ua$":N\vN /m(έY Jձ ցS ЛŻȅ$ofP~7d(E 7肿'`*'## @ݱjdX3vSu >wFA]c$oejg!'S-4 MM ~"8W;#  ΢/MNpW7D*|X}yPذq$rYhuLזzR GÕ]튭s90HGjaW;:-}5Tl_1xljwÑ\Y,Wtk@Y@DqLcr$+/1e>2PZBM%H./J}4O(Ĵ4|&~h첄_0ktep;C%Pyt泥2>MVu|H՘uk M`$^8'4O VJcA8xAHt17j{ o~?#ڦ*"bpvwj֧cefsaI`nxAeiKLZ1b>G'@u"B[eczVW^3鑢WX}%B R CR*~V]01Ԥ!}wJCy%} w渣f<Y|x=gcsЗ'X7R0lq1)؄bFn㲝AE+K$mtL)}q_H ּϽMJЇfhbM/Nf{&{'[6 -o="??+F]POPIQ}6 Wb^@tlnלpөrhJ;g!V/&%RMbJĚ:qDV?C݀PsʆN3>F87ۺMl3$F;U!]dNKU^bJbPX1)J}%A'# /ŘTyN/D` ʥ[k`mIۜ[bݡ^tU$ @3,"Q{QbTO*VNB dW6Ͷ J_nb78S {PUL^ɪ@b-i$8|*`Ȱն#rGbcJ \+"fP Hng#+ Kn5/M'j>ca3kk9@;x_+isSKB/\!oC&2}tS|C> g܃ vVn_\[ EiRztAЮ=mBD9ڎō,vL݁<]v7 #^ t>!qRnƠҐW Y6щ:XL볯=Hm+t}"FTSltܚyUjY>8~*:}(mҭFAjmBr ) }K?SR3 T$b"?8o9: aZa\aBrC YDXѯG-ZEPCI-%&sӳtEq{?nU:O~1XYQ[WP| p fN:Kk`2x{HH]%UpTB><Ěb,msOul4Z'XZ8y5_=SzEX,=ex9/- .pܖ',^ X:Ȧuj NtP*svЌ|#Q:Lp獵LF*IY:'NX&i ~ڥYlii:}oII hJoW0V4er6H\' ŧ@D#s2E)<)S vowc)wCgA>1VרS5Ԏ̓<z`5D c.`V^=㱛L.U>Q`JlssTdzPm2qOepK +- :ޔ`"U]E|Zخ]#tc,ɚt];!xv ^Mߦo" ڡEL`#t h|`zD,*CxFRdT+k fY5]#=C29[`iX։Q@kF?W45lwd[܁ڌtO^a?:ދLuU_8hMe<_|G ?\oGPxcXU6ahRL&,u%TiR\nGN>:xN x 9W9(n&&☰(4μJTp x[MZf T=u;háY!nc3d:` W7¨_ ه.qv%o\MlՕ:NŞX2 .J SB HjT<_TALzJ/b( q:u `_V^Td8h ׏mH #]iZL6 o!u|! /uOd9NR2˝tɍDP)Nߋthx:S=L}PcJ{#*Rcْe+hm` ]q H#rK΃ 4.ځ%bH伭/$dzۊ|~n@|V{%IʾjoZk;e0tp!nRZ),UE- _OY`-Ag$X}:C~zm:JRmU{B1yW dC?Qtxϼ!PǕTtV圻c] dOF>4ȟghkO;?:xTDLd@:}*G>Ҋ y{\v2ZwWi9“Ʋ2%u-h/;)$fC^E`EN 1x(?bHgAMQSAF^$0?3\ cϥ,M}H?3rfYYy(ʅ?& ?N>z{DtwDW}.Z<#6-zOܧ@[#03T9z'Nw!{,STv%{,qu\xO9AFAp/]1̵zlFJUC'bA@D'|q/SF <(aL ǥ'J B<>?l)k=-7"YgwJ2ǑY4U{"i=s@ȢE,ch@`.m~rI? znD lq޽~ Aq5 n ;Jf fMQ N<"kS_H' "lR/Ec|6Ha7_J9%w)3 S:gkƞc[e?~`VwYA*T䤭Y"*N`uzvVLD9`ݠoG ?۬{kɉ|5U~οT9di~Y[:7ק2 OVm B! @E]Q_c}ֻr+Mw|?ޚ}[z;Cʥi./1F֘?J㤱;%:;~PΫ9^1s'#(ɏ [Dcɗ9Þzy }bY7\ $h9~ c5c^"ȸ|b Guy?3I ԡb0m awut.7 n%EFmɧX#Ե' ʦF;sDT:JZՉŤ>lk¥X[A%l]Wf@ŠN:C?~DBbWX!ܗQW*+;^"$/FExXuiU©uc"CA$_0ZrBA! hzl)qq֞B|{?):^b)Vh́iV܇Zi_yJjl'3mƁ֠T{@bgV|-w?zʁ=&JaT 3_C0XYCEa8F w/[h$HQyyF:'5e\%xӶ )ʑZ$"ne UK?t7+<% 5QWG[6eTAI5qXI&mn5;ٷH7*(lz`45W |b{ b{M[J=U gGߖJOragPw ^s&S#b,.3q9ҧgXQ\gj:c#DRb?oe`~nI^(H˵pE'0M.v.-45-k,֭$'Xuo|oY5#~.?#UNvկ"neel5uVO5b?bBxL4/t]Rs:% 5\̛o՝ iUixM\`F7`C/fK%cv#5<|yW? h*)@ms*WOiNtgı|O8-B*䩉e~~^@?/.Ř) p`U]唾 b( Lҥ |6dGZB8lG^s~4Ua7E) ֟0qZ¸=f)+ DH$@Őq˪kx+չ``!@3 0,4Wh#?Y¨{ Nt]HAE(8oWVN:e/ZgA}!2k mhi>mbp}|0ֲ19O`krwuD^G \h)JcoC .%؍LH\ӊRGH%rjDr-VIT ݙ|x{k \3Lv4@JwVulYաUZ@y 7GN")q䴘8_ma6S:p-HblL$a<%:zF;2GepLb̬r{6tG x?r17h}SvݖeSUh9L 7d7,%/iHH@Mvðn_*aU+ cnGUbtr2 W Y߼.F!oxtTPhYAP{!q`b1rr/uX ПH.v"ipzo )ámZEq(G',# ]@}^ԸL=?@^M ЄE?mIm˘y]bi<"߲aS#3+_.b\W^L(eл(Zl~;_1\KcM4cjl f3)DZ$},K'q3=]8YWXD9rc_V8$R0_ 3C8\H1/, 5z'(_mSDfD3I4D^hoiOE  HN<80퍨jBïMb~]O@ tl:emc cĨtrPevnpC]:u )J4q N7Iw&sjY :ÿ́ŸOȀg ~B6ʀ$·Hy^$7М#!%Xܹ5M59lG" %&_9HS%grxA4"FYaoslU3䎁|;ē7g;oNQ;+?'lJndjkܔςJkiC je : V ZSƧۜP7Q(#Hd/D@dw]w6y[Ѯ]XqJ& e}n=̫ (*O3]Cq#9ݦi693ѤBah;R Q~Q"y^|%huHM [qaHF)PP?ٞXIЎ~VV#;|/Š԰Px\0.WJoO#Őn%ˍt%S"x/sh]#<:ui 9؟7v^pclj=n yFe_$9i}?#(Oͦ.yXTƙ16oZ} jףP12oxw9׳"/@`{pT^q1C@Kp-:|6z``QKD{BY/|T:jZ2 ce58 zضj0gI.QCUYb?[Wd̯3YYগAd$o%YFؐnk? 6(Z < g1`CϲgsM9H6#5QkI SHY(~za `sɠ EBUq(:%1)$2TݾSnFibP~uP,9G$rV]!2rc "cɃF,Lj쁥Eq!xKu*ՒAY #,m0VSʞ41|%G$)Hs4!>&B5Q)FRޞ/.3O,kTQd7 27;BU8#]]VأHL5|^jVFMF;ؐ^M)ISASkO) _;9K=M 1Xڒ6كN|+-U#xlhl}Ӎ*w~f?j !'aea4p)`IyN"z(vwzVG䏥\JP>ʶcc00NmKr, @Fƽ52'[3$5#r 5=>\q%yr`=y{Is*:I0 4tl(YˡYcC ]Y^36ָKk Z>J`. ~1ıc՚^&W_D'0$Ț<6`R{v+[mU X[M^* _tϾY0b#tL [)9[?[eBm(x@|'L ?|m1ˎfmI8Gw9e0/xdWys!D"0Қ݈K5`I07x[FmRS %\e[u_p~C= hO HDDIZ&[?5% . uU+1 #ӾI#fQ`u4ܙHCsx fki s3U]([4OS ȤM"bx{& BsWW(=[q-CUB AU_>KnL|\^mǙwl:Ke"*۔Xk` oPbàqO脱r, 0Ef ʏ@"9Z>u5%YlTFhY9Ϙ)><&ӂAHb|#qۺR=B̘bY[^+5f1GƬKE%q7H/:3NrFMTl5 hucD0Dpc^sdis35^<ыcP%8t/2Fett[bh\AM+؍YA 42U݅^ipcٚb73$;ō*e{?lmbuBҎ2$۶`X=Jc# '/7'w&1T!x?"Mz=^AGf_34yz0vK C4 ,qݳI:.#C+P1sfa:y)Z> At9Wt*M- [#f'ePOmi zXa#N1YgV "(B@-RV EV,懷9~]@ޑd۷% O?k~eJ]g`-߇)y(reX5YW SJjaP5UsUDs|'RtVDq?*M;&$Lp_*)tsNF2~kN5VVNtsat&?k>XTǛsk.jV.p8У_-܃ 7rɼ"ܨg{һ3%6)Q& 1'ӕ"eGkiy@l՟/fxMEBFࡅjiZbEގ~OM}˜A&.q~{='N0FBB;׽s1|~)9mI˥mՎLClB-~H6]t.b7v!w#iZL h!0fݬ5w$ޚZvH`)Oȸu mRIY}!5/tVHIoevgpoj -7m=i6vh=:ɾg1\,_-S4=~""2}9EKP\0D,@-  Z :Kf-ِ}_z+Ys1{bmQf͛&FH&%Z,#>B75$.TDx(D˿@']4>[[cK,F ED `P* S7R_)p!2wMO0( ΙsԂyNT9 †ٕ+Ib: 6F}ʹ"ۜ| H'_)q|2}wAoN.qGo2z־M Q ?p ȶH58DZB8i 9Ew {vՖ$( %VkLU$Ni#G Oր+}r/Lj)]6sD_U{>t3vbix6zP;otf%2] A#r)X@ ˇH#8b$RD!=s}U Vj8=vnpJa_+f<8q. 6C:D;YX)ٶ.qT) h):gٕPcu]!ia1lp2/"JYR:qWh,<5(TfE B ;T!LdLO~ Gh^3Vg`y5mMH81߸v$+# Ffa‚䤀[v0@h#JI>'!2ҍF Oyzd S no@-$v5@ȡq{rt(IDi0DdZeO-_qVg瓉hL&':K~hE))؛d~}'ă6Áwuĺf+ˇj!PFFĦ۹?bv1Gh>2Fڰ63pK0 M߮Z лYχNnHa^/i/9j*BS^{B ZYe^"_YCSe{< 5w1 x1'~%YǀTN֋$sZ^#[/L?qԻh Q=t !Ft4SԯIi˥*ى}̷Yij .{GmοЩ^:=YagNؔXfmD`"WS(su;:Έ WSer?r*8ɫزbt˚l[S`_0Cy˫2(6E^Eb0-/nM xUv+ز.ՕRJ4w,VCաتkA,K.;> \82üsxV;,RIꙠ7 }mf^RHZ-3hR̤7W% Hc,N N laaPRn,X(see dIb=nl<먩!_'5*90+au& T 3TT9=kŻ,v'8⟳ Y8%r ]&Tit,I_|L1 :;h#}gBE:u2LL.ÓFVrvW%`l~wrӟ7ʦ즙N-*~wÔ-5ۚx\aЙ?uFs)#`v􁙒Kqlpl-<<&!(80ni9BG B^%#dԁ3`LF /M]zcΓͫ6`@%%dr)e>)P.?kY {TSMS*Sq ~ C7 7NиKǗ$ơkw%Wr׮6לay LPa{"--xɥaߕ "d6۔E &%$ʹ„{q[-iVl<(?N]p[|Q!h:@"Tq?f&lWA;+p] MϤ pfEµ{ C C)*{8}ƙ, kK'B,7][]}6ŘxËyW P- >JPzG0yg>ۭz"C,x1u-|=gH΃{wkjI&X·`d.MZ X,S:7$J&J@وpa{P?$7>4CZzle Ou-nE3!U]j,P1[?lG"ԜZ"22HSpv7i ;EmoQ{hz'RJʆ 7+R)29dTZ"iEX2ڠ y їNar՘O*Iŋad?N&~B 7bep̚5wo*. PE. 9i O2NQr HI)F~-^C_; Vސ)9O&aӯI ߔfP|lC=MUÃwz!ogCP qx ͧK8z%_.g$C}9xp% uCIanHkUb蝙.In`]AqbQ+daaY?/ճ]]N/=*ȵ~NU|c/Y\?&{Dmӹ{Ɵ_x` E_Gw}VvEPz5.`=ݜaym犈+Rr()ȒƦSJX$TjLr7JOVlI@Bp,yaf(򸻞}T,v/k!C1rx_=3C9!Z4$QSQ+yOg \=/  P8g~ k9;aG"o6 Cx5sd)'%3g!o=ֺT́+-}za[8cL2mX|W?D " K"ZxWјYw=48':+AԶ_5.}'W˴LUu:$?QI~>G ωx-#<:xS;4 ds٢JPuG-<ߪDdB>Vѳ'D_Yu47b)+%f̨Vo1[,>@(!.~;NrbM.-/:>2ޕ4uՙWd;tgcTR;|Ffzb> #>&7Z"B$uTnKN]m،~sw=i4hKF[7VI`Fa!}N媂Bv?j3vT%>@v!ħy(Kkl.HDZn-qkns+ـxH&Zf} Av4.un{JĎO@ tVlztۋq7>~=u1׹=1@LFւ@s$^uy-vGht!JV~y5˅<H'C,( ?!^|B,R] wOkʟ); #7RuB ^N `$p3#}n>(/_j#C'yvq@ZCsOodʚueEG(|n3҆k>jBW8(sf1 1&8"1&]a+uMdppN ?,G6t#i*o#0,>9S*ub`YGWۏZouf~$yfN7 4W)W =ኋ=(3 ڇϒ`b[_\S9 pÜ'^5+BQoj@@wpKYt(JJ󂔴FћFf%IC΃O1h} 3熍 SLHZ~?tNVe4S}yә63fr;7{:\I<6YdI&ǹwtAHZ~24헊Т% oT4GeTW`xo}_Ѣ<」#Ɏ CPLit?Es5d`>ac5 qiS6 ro:d 1ËE 'Xp5ll񈉄DHKɴz{?g=DD7@an>̣rpG#vXjh#[X(vuHI<1} 4/BsVCPN,Z5>|L";Ы:OG:lfЂ"*އ=øJ.փ`% zBj4{B6bVm#Ydud332~ W ArC6x>1vTK|;rgsSY;36#>#qBܷ6hNx^P񸬦}f9'9Kn^)=^P~]O~V?B`駙?EuYXO&JPmhaڵ=EnQ>" V6 v`lX\ک(T 9V}`\ *~nCRV:~Rh3@G㑪bfI"'s 8iG v:AK\W= 1 XQc=:#ڼ =)zU@2(ΐ2 h&xG[Ur‘T=/W G=FtyX哝ʮq]ԡ =o\A~2ҢP` 6LD]vhC D#1ic%io <)JbG8{1TǖNm3lfHCoͷ2݄|0qyVevXfbPJKMJNv+*-'#LĩR Ot={ү191 H4lJOA!De72)$ qt/|gn?:wWq@6羘RFӣr22Q>F/,Ʃ(OX>ay F#u,6|: puj/AjkNR'Gt)m]􁉄 !v_KMO$̜V܎͘ pߎUgA!+K C$:-=qfx)C630wg^5)2$S;]'4CݛˁGN||+[~E5iC .Bƾd~-g~NRӊqKG/mD/hHo>Ա*\~vqy^g1Y y4+1x:F+rtP ȸ[An}AF: Q Px^xiHI[%JVIݍݱÊࣻ /r32\"RЭ t+[Q.ɏYsl.,팢`sbbyٛU^rtM+Km3*eEPUk2Ǻ!]ߒ;LdA M!܍Ѕi^BW/ R=T+8ITg'ƹLS.5Zg ("g}!OFB S{.J_y\…tMk> 73WJř2ɽ[9D#-g**Onj8`E[?cQƮݦ}z]k$Pgjtx) =<Qʢ_lф~B`}zH KjB_p07pE]=EZljq <7d>a?^hErwU*FY혧a9"Z,{]~TU[lkr|C%w4`GL'yK0lW 䫎R6<I |FlG Duȧn.eǹd.<-\pi=3ϯUg+zl򲧰mV}x+z/a&3s8h—e>ucgt`tN+mˆ&g\Meoŋ#;weC IDC]Z;58P%G}Ր'f]V3ѿ&7)+$T+yԏQJТ5̸X40p]P"'Kl!Zr_Bx:?do<m U&ZY@Ј.'C?H.ep 9uֲbhjrMYyO <idɓؠc"oMQ>MG"ͬ jYD9h^yc x̊ }hF ko(\F0\k408H d;F5=HO;?~+JM7̓eHK!+.@6\f(N2Q \iA>@غ qd>hwWZXm'G"$MnyF*ĥFg|֊h;e?nˆ5zquQ>K~TBʒ/ i:J]y!~S.24Ś)N$όlY dْh(t C yw":, vT~xG;Υ>k? ydxwVI0@4k\%0'jU!BS&x'db WዅnEjɍ-,ҫwe[ hT?HcTcypvU i?Y ܏E]@{|uЂ/wk>|o= fEv@5gWGVcK)'r^x2Ͷ2 6QGw.c}Kmo^̨u=$'Ő{iYg3e : /e: ,ID3^d#`۽>op-z@B3aE͇"B#tHvSRzlQf|L 0us] É3tC8I2HzB:<ƁWYiʱ%:5ӔڡJ/Lwx}b?߮x$PnO6pɯ$ic۶?$P+)  'GBkN)F Z;Ӑ)n8욆-'F*dɉč<~cz4CKŦÕvG&orĿ@Ҩ*O4qMb,?}RLQ*R^n+Y&f~tP qU V..F]k]t aMQo#(ToMp/Ny5z2ꊵH`$,=q3t!# wx{/ߕ HD9l"V'KTxi>؃dᮅ,?8V\m&"\#!iy[vbVX('>kipծG%f?,q] Ø>cAX1D+ed4Lo39g f-uX}_?tI=7{G=¡#mb8yB"UxmL<ݓJҜTP[^};&:YQA6Rgr骟2'Y>6f kN3|xY>9)S` WzeoMݯw9kA\^Zkg:Rff㇣`3}҅vd#i}9c*etcx.d0Oi(#$%Q ~@ vPfEs؅O.,͕ю aRbz)hAwTٰ]YT.]j_2SL^ct^T2Q;|~ZK|֊ i!z(/hh#h#;1=D=;IBMes9_62C>ZZ*mky`5w "Isv^_MK (_2`|Dv6fʦ+0&!OG9LSt!gONݹdUxnO&2C[\/gCkJ8e5O}RrO^ ēlOi`$ߩ[yɼX~5؋.o%<`m|eBhSWմz4⿸4y-m^Vy(IՔ:A M[\mw>\3I]RWQ}z,޼ԙCʘ9oW/5_vi*r/vH)K $@f0FYәau @겥)|@K_L&h zcq%Uj"-BG^i͈m+eYy CȾ 򷷞\ ƙPFa̽ϻ/?п))r8F]$EW%Oodl<8 g8jS1}Dاv 'rr-``12ͿZU٤=]AYT> 4ĎM>L;C(C&>sW6T~%hWu1ׂftu8 #z* ܒ5[^ ?;Ʋ:ALb}[Nx@7DX70 gJ W/e|K9QٞQ&4;;WR%t{5De)3F9)+_I1b[Et?8PQM)΁Fc WH1niT5!{yWo&ri2Bi";)v !J^TJ nc8v}mk|N࠲L_5DS^@q8qWwJa='."ϖ$g>0X,tE`zIhYF L,k{ Z|eh 6`oS'f"AHB;,ܒE3 WU'dXcuZ1|m\aګ, w3WtBij f\pGhCG |Knj VA D{*pV,+1d,c G)zH xlYL Q$̣Zfu(Ws˹&lWid[b<&ބFuP9=Wi;FTn'(6wrU@[zzdXD-b&a[^f4"٨vAF͡ '&yU#12Zxږ4ѥ"f|t %436]&Ujee $R>'[]9 Tf&˷=Ny \ᰀǻIVJ2-)0K< !CYye" 6:<o) k0ݐθi_MN cj!vt \hY>)|F1n~6yP]IC28:x89ٯԓ!ql~?}o]fy}ރulǕH}?Sg .6ʪ VԷyQhC@gogz-39-%H͉tYXf&zu P[@}nE^j"XIKTnr Y/WXC3frtNAl2; %uCXv*W&͇ܸeR >-]44+z/Ԡ?kvHMr{BQqm5uIw|IW1 /:svU}*.+e %D '7V43ͭ旎ݴG RJ/ w\@=Lƣh}4u!=t XhsLz38>t$8xbRErֶ]|

u "a 6 4s'ØO,9>).6v,<.26JLQ T7?Y^e7 `,<^O) <ה ⶤqH C6gu!70C(|HF{xF#[sE(\`r?;\XOe zʠ*Kl⿞RUWޝ>;$Z bZwŗv"RnsXUw̍Ǣ-<=bpkC[Q !A>YJ3R_TLI)~N"rffGn7c ]+4գOď`=[>261ChDŽFM4@jCLLdf91 *_ yb 3p@O] D[˄Nu{ps2 1钇>NYk<}f)]t?eř&@60^_ݤ;ɭYUf'jԳY`$ֳ-QXk|YӖ2&3;-p:c=QX3mftVlԶH SI)tg'r? !,xy<ҺȘ>mX7CGCTNWF e'"+{7-{itȧ+F&I)(:ޱ؁k9Z @ݜIv-2r"_V@"Xvg˩#Rt8rܱ6syv"۠Lj {X*]ץ~C^uÏIS] LV0q8hoga(Ll Mǚ>ي&%\3഼Uq PΎ Yp4r% GTrcΟ@@n ?pHSCI Z KOtF]Gw 0LIaȥOO堍]V1}MVR7bH؏$4E,M.p{aey"4N6bla|߲]Yy])3qTWSYwP5V;M&_M~!7"|j?u] pw`v4_f an')A*7䏋NT˙r'qA5ȭ_2"]7OeS+M5DD@B g}D!1'"n^2p'^mDvEhsfaxmu?XXD~swH?N1D(pͷv; RLpZsi3c4]Z~cmkgx8\XC屜̏Y`^ zq,=B8McV ?<9Cd(8"od =Tn5u\MMDŽ5`{B29h(R4Wĺ\J+B/mrصC?M,Pi fuE%>Ng5=rvٴdx+{mFWXbm ./{X08mIM kg>ΙAb5 T6hb Z-q%/2h F XHas*hd0 p;u5)P,1l!< };J>`xDaN@CalBQ[ r83Hۺ%q y fjc$OOH-M{u74Y63eҞ Ul}.< {[:nd1Xy_K[xx`0xO2J!_]Ml A흊W1О`m{zo:_Wʭ1MpT`a2Lj$E]^{"&n8;/86$wYK5lvLve&gi\فҔi!l1b}7!gKEaC"%n~9FjwF f"T5|cXiya?W%I;.uq@܍-n;t;4!FO@hAkk%JBSsMFaPWcnZ/.rtj-F{U;fS4RZxjf;4.7/ Y,-A7)_yr/"FJDUo3tb6iR&vd1x=!c=@u6Ƀam:YR𑻂@*`Ud O9 *]r(x5O Ū?N5f"k".?*GįtL5pp^mԛ3iBHj,9 Vq%eur4BJnnZqu' ~O肴/7۟0I%oZC(B8S/tEkXbEiǒ7p(5wQNdoJz 9*㴎RP^jHz|uㄓA 藾/!X) CN7P[tE*u#UzQZ '#׎BB>--T7?? Sb߆Pb'WZM+~,~P͈, ,4"ye%>$#fv@ub>|f)J+m% -)&(?iwL3*j[%KglO fl𔀱֑_Rhr@O,@SpΌ3 D]!,}u3U{m'Nz Iu:Դum5?TU~fn NFsuA㢾7mMT*^+tRJ1M]04'0#83#W#m_^ki {5g >>wT)疾j睬[n3mL>aI骳UL' d}9lF /us/!Υ=宯xO*ɢ2/1,+ރO b ;qY T8 Dc݇Inɕ=4G2nWQg};;i؝bNY[7P5NB!x8s8Ϻ Xz#_`ĉ?.euz] Rx0ca{͡dd,%Da(J ADͲlUEEiT_2\nxOrDtA<-ٺ()Iq6Ad,2SЧ/4jLJdq0ۡ*q72Xrm"r!8ZdO4J^Z0ߔ̡1G `7?3-4B_Ǧzr5|M#Cc̍j%t . uka5 h ̡*Y!Mѻ.H 4+,#fͳP}fD\>CCgq'sYnV>|kX~sYL w@s]sLO+,E"bFab.CƝvXcw7;.C诅uk _ͼN'A(D>:Pi zV+ _GBʗ3+G)I *G}Y$pˈ/ȿ -cXLcͭT_}sX{J#[^ca_9ke1L$Hf۵'W>|^R+@2%R\["zPydkJRb'SU?̳~nnJhKMb7%Qnb^ƒ&xF6xnƫ@si8Xw^|o` ^Z$'ӑa+RUqʪ_G݈{CSe5&"PʟMW-x&hWIKH1:"Ԧ>2D1gAvU6+.YwR6 -3q$Pc( "^pwί@<$gX]9ۣX(ʟY1?C'f|!96-2.U10eu߾U{'4Buזv:%6D@b~:|P6jG@tc3E3D.D酳Zej~*a8+蜓3zrέ/-MEjU:9tmNܹF^X}6 } !*!(:S#⋈s"ɠmRc$*a/8=;,XX 4fa mIGf;0ɬM>9FA^joe!v:30qrWL)D24MC쩁~MI3&rW \EU7d?ZjTB.st&3ha4^ZⰯZVD{Ne>XK ) sM?eYm?Bz?k"oF)gN$FP6sӨ,N3T*@ڭ6H`?)jOUO8: W8 í<ق!r!N/>|f.m5zj/>XJQ5D z~ >P J ?AR3r=-mÈm\#K^X D%穴mא2Ƴ~(ex@ܢAz+V.lni0;x $߉qv>yP+9侴*&Q2Sֈ7Y uLELmw7} mޗLU"_ءөP71sT 0  s!hh7Y1Ƀ͈Ԭo+pxmi(ADn0#W. 5ר*U˻P6A;`F ?S$mÿ<%?coCmy`cf3V<bAָ **9>ms^hleHVBU3?mnx.ʹk C`m.cΎ~*ݡ}9 ǾM%3REb󁰾FZNT5Au0Kj + ]ވb#HA'IB;>bn^ē4 PjlQb.|[3S|]-1?X׆okWe!._i49D̉>M3 `>JY+d(c^~I]rË2wYX!Md VeVmZZTl37kq`F> 9%IQD5'~+B0xHu.;# ZApr*NT=V\?Pο+?1MK3z$3kG}ȡâ| N9>ǜvTإ# )^U{%?,F" &A'ۭDfD)Ѥ)WsAgSpK/9v; p!`GjĩK |WDp PcM_8_&^q@˂;Jl⺠ Um[sX!S8EV"EZEŽ_{bs;3m@0ogLa?H]̕ɦ|)ޅ ^mѺZZ cHqؤ~j9#t6c6H2I0ņG.m5LͶGN`/-ɷம̲cZTf2 *#⿻E:ؗXǍӃ׶' dGۼa]dz-0b_ć*r-tݤ#Yh2n:lhn&I&h"j5dGxHIX>QXvhmow͢>ƙ\kQe2ɴKwKZW;m":\X턡yU>GY\F@{=? (G-}`F @Uo[{w@2S:D]5KY ƾM]Ŵ9pEtd>8FZ@SFQ xBX :tqhLJͽi 0qЭetT"uM)H g1nOd vP+Ƽ`?޼u 4]ϩxc$HL>:ຆYv=&דzmX#cFa>cЅ+m'ܱ0 1RTFղ5.\t@dXȂ  g˜(= {f+4K` #`'ҧ R/=~,q,9Q|Kv{+( 0;Ec'9q=$BbV˚((kʀ u9RqE8 5<㗴^pB'șBK=Mт2:u:a)z9pL{ -4&q SB|$-ƞ?g X\{*S7IF|.Ej`x LB勏?@ѠZ-/&fdO?bLuz0 lB+8E1ΕJvk5SG{&V_k%n1|#Hd)orn`~=Fֳ:8ā(r'^i ʄQ 7x:OYĤS97uL CaewBy]x-=O#PE/a:N0E=ZݷZ.VL2 Lm61atRXtt`$ Kd / T2nݨ`sZ# 軼= g pBg~9M",d,ffPi|jl 8-{+ۀ݋qa>9ǝ9ءH`ZyUy{aJ:^D̅L29-jl+.WeojE8C#7*ox Z !4}uZ%a Ns4{Dg~Fv3$-~D͉UX4:?Alm%B n Р?hE!DԄUy<} LDe~XVU$1gz"@0x|15H \!hg%~JMe E늉h8{H$1Wi5k~HL_[_Ӂq3CA܍bw?!JD\!!Wթk@HR)6q-U !\m I;fAXD{q}/?z@mpVIrgXd)U'Ǐޫ|$AhngoG 2M+kK{0ݞnr>1 O_1KÜ=2T=y4͆eXXEΖ `6JXΦGUϸ &u KRLG햎CqeG3읹YHRJq)RGk2 Q`(gOR&EApH@.bkx* NOْʵ'Z$oJ=6UXO-7B%9xFQwX/fվ S"f}-ť^ ;y+3(ja{aed F'G,f&ƣ˙vH\M J[(9i ǞakrY6[8]<0Bk )?y[P;M4_WDn9xrSr.S0[GVf߄&czc_s81ŃneQX*!?Rre u{J awLs.iT!QJѬ]׏C42 jް! @X0nxx%~@eYD@Ð Cf2 $ d1 7<2{dm".wL ٘DG/OH HQZ>y -UxU H1dgńO`埲]A.XD`3Ɩ]^mNN_n'.H Q\Dą s<9=M P{CZkwSsBY͑dft:SFoOBWO" ̛0{0 ijlOOe=])a T*>$+k{]R(? leW7Idw vB #C+7zWYWldCҕI0q@ 8.] TU@V 6M"ixpNIb XN%%'4 5x~W;TE bX1>p } sM1ލȮZpKŸo>бys3DޥѐjMy1|/^۱f!؎ޅ8^3怜z4ǃ}:z1;p1_ra |CNae#ln'6L= WɞI- oKd=Nnϟ$ N7kݖAT 'TzCpf5=%[z,ǭ!(t5 QſC謸~ c/6<Bw^1#؛ΐ-U]}:jyts`ђ(g/kUN3.W-Zt}I'N"vHImߐ$ \8ҙ %}dנ JǦY0rRC&'nvbG xj`HPP0dpv$BߤyA];rEhOЬ}2vIru`ؕKuec ]2(!Q.q:I,܄Z NU:| IM˩4้8d;ȭzrߍ4R2; %aO=fyǔP@o4]-,z[7A+S %XMf;LPS'bJNe^tAdxX,%wZ#TI,(1U1r_, 4Y^os+BTR]NI"SFvsK9k8qd]9$U_VIzⅪY8Z>4*>:cqWbIlA,2l1lGA}i|S,߽mgY.ȒprYo]o4m,1:oVQBv_ұz|Ũd<d=7!d2^~aq[Cr) gfJ |\ I:j,vgv֐cX0&/Q e Lc壕r&*4v#`L߾5CXteX8KeL2G ӰC;ًvYQ-t{pV2}Wq < eF{ `/5+f[B}\}xenPe  fU߶Ŀ9[ ז(ξ r>ˌpa»:9oڞ_>z˶dO/QLҠ\ 5I0tAO0ʓi 0 0¢.I t UN1}l}p;,s%v_å^*q׎똰0G6Gd*e8@$03I'OO EՐ?qjnm {AW.m0FjaRP!y  Y''|quõrvQsM B5Se7TIG8kOPXs=*M0EuS7KK]E.ޱX)eՠdohqfACLCJA%J  Q1I4Vb{ uO?`ϙ%Ʃ-Bhy OP#)Fiwu,b!љ\X&"SV1ͫApBR{b:@S ̋,ŠsV.ũgS~ $[Xz/LԜ٥mNEռoW_ى4RbƲ>3xUxm}S QR'z'3"\kC{;t$c| :^rY*n#b1  Wil5TXBD?h &=#xC<>'I)':M`Lͽ<깾75+-6ڕ᳉dzeބV6}ǕRܲ56nPQ+1Lu |+"}Rڔ|BnHG)9>#]b^Mc~xz8x^&~4fOb>R9/ENy1J+hGI8 X?]5aʌu-6ߤD5uZ 10lz;l[ug^7w@qf }eGR[V)5ZCμt5O'1#PfY&BHO"}y)I ɲV'I; E)ۭxG#Pas_(K>¬-x#Ņ0hP}K;:iZb~׌-#]Tyd?p]vQ5R{Uf);_цa(wM]Q2X\~ęd;g(MIUa *qM&2 Ӹݗ|IĴג8N!sJ7R¥#*aw%obaց&[km;I%\:L7K:*.̏; xP\nT!Z/`ǽiz]+4{d`N {f %6[P7앬RGh VלX{YpaVvujZ*pq/Qϐ/Uyf%{/ZYzi!<>S+HZKm ND 79y[ODuR]R굙DZe5[ 8B8~˺s+2cn'ac޽ }Ś wZrŽE ;t[̞xAЕ"?:@aQ Iu:7r` uWO&lEAzcz0]l+f`X" ))]B,|\glMD)e|-oDƛnY4uQw}6ϡژI)o:kA)0-Bݥ<|*ų{6a cȷ\7ᢉGrbKÜ?Dj}ve|Բ.b N@K MxAd[W1ttUћVP%M$u'a?"O=Aőŧ)p qSCX0m3@bP!$p׮- bqnth@v08]+XTVƗsA*Y*Ur&V2޼.j$H&FrVx.eqHoM{$ihG>IdeCO\D@g4_e6A}__$۟[FQ$!.Eo1&fk^bXq)_H\yB9m"|.spbtP`M7W1n̶BìwTC0=,箳@Ijiv/y oV#}]G$Pod'qbOVsd '퍴TI鐼*8=6Nx@dwѰm/~_.7]J3٭khAM*|p %gUs.HDlhph c+J ꜿkH7.d7';猔X k`~a# :fK1Ifa%ʗ(cf,XH<V1=dcIr츟|u0s\}s\#H?ɟYbFdD"6+ߘkBG]qUyj暤CQuس@,X~ ancF[<'QId;>zRR0/-iJ 4njJ.Ue~vpc'7J O:eLu""c팂ly>xEl9q]4XJp =:eRNXh'2TH=4UìZ~ӈKqqϑ]|Y1^(-dgln/ULk2cV5Gg$$iBxk>in_r.35sW/Zӌ*X^Yare`w?oO~+v``HO@q4v[$(kP^ty\(XOH\漢̵:}=Nc%^k"vl@aYfbf_Y`^jѱtQ*Ъ͜(2Z  ѫfBUù:K1q+[fm}G}PI3:1uؚ;62lbo g%jce.J>,rq>0 j(nE/ wޛu':GadIDQL[H As aK1b%@cjSUa*kio?4g?TNx<.rZ JpQcv؎MrCM>77buRm 3܉` #"9%!ᓯ&9>[Do&_7l]ٹer#5zjx:7< P]k@f3} f*(1(O,ػJzQd6p&%K|R"هBT8Re#,XN = P7+@AĦ_&f3+{ۃP*뷵c6`n## ^%BǾ@5I=\d3ä/ 72 щ[zV.}ʘ/V04QJHFV Aڭb ?c1Bh+yqM԰@z{~kPB-z=H( ^9Y*}2Njz$仙ȍ`KKt#C-8|\?ɖC gq`2ev%^Ys*Oz/ B|k` eis VV xi2jX]uB?*+΢yTP8m䕅E4/.ӭ'.mӾ)fWMzl&E1l,Nnr$a0 G u%"wrf_M|tcsbU-bQ83t0/!e]=C7 ٷmN-jRzD,1;<xv'd C ˜ڎ&0*Chyv2~Ӟ5(>>!Nģʜ=K,r)J_=644`]4M=+1ly=6p/R`zpW& F<@&]:Sfᯐm߽{Fvi ]%!׻xX ,OS3 hEK II٤_l&"ޒ}ܹ*(m -H"I{ Ղ{}8oyF.\oÍ"mHkBcUzw /'!w[m뤘7ג-! Wg(Qg۝Y 婨o:v5vi[r z|V/JEL uWt7 nR5]E91Lj$ uP_`Z$0'zW(Mf!ߓf>7ZN|M_ [$GW\< Jr'T1䱿 c+"fõ"BBJߟ~#{PsI/duR˟_){n&u DDBϜyEcFj~ Tz/YaKc-lv]CuB%qbB*:Ł7^]#@*`j.Ԩ"#3kx,ST_Έ-8eCM6=ڴbhDe3!YX|>$͐^+Pa=<ΰ׆BRW} 7Dq|q&18djr6"Hh'p@cHNB{Wle9V~5 )s|[%ZFSW:A4?Ӣjд},y҇:) 75qzM0ǨxZ&q0?db3$n7,@*7zܟ=MvHuX5("7vd(3_GKC-kў uDk#0E){Uet3ON +>'S.x.ҙP f: 6fl̤=AFEy-W"4CI隍=t^JiBÿniEzܫ-r4nFqҫ<>3q׀`gd\c(qܣ+ylfY3FN?.2#rv)[25!ňI43c99r79Y0tR2@'i%| \ዝ׸ERu+VzMWweO.RɨQ$ﻗoG]bsVHψ̭P⒧L0 h:7Dh;\TAe[V'Yӭ(nb;JK~kï4T4+mJ Rpj]es z.xºQ(3m/w|{)Agg;IӅulXogd(;s N;{5T17?o5Vǧ}<ǡG6R*|t2MTu}t ?攩ܨS yGRD\bNX. 6pngrTrm) x*(?ԓ[)μit%o5jvجXV\G 7Rbh%W(2rڛf}2/H4Īc+':P0|Ķ6`Fv@U 0:rʞKP*e 8d 7"eDa%"ESz#eBaT4+:]I 9tψ_'2ܹ>Wu"<%(!ֵ &T u_PH6ٍCb2U2SÚv I^KƜlgl<40\buȵXJ%Ɍ)!{O?k}du7_,hRN\f^Lfg 5;IɬZtP$tz)@WQH%|!G"3ւ"|EMIl@k߇J\LLG C-"H*Y(@nn/Óvbqrk8z\woRr 1GJp<"Qh i*2%P[_ƽ)˖\sJ' [Fyqn˒D'96&CYAchx?3߰Ù GY{d}n7$Tp ؠeW:T-5V/j']z߻`fu)Q)j_F꾳K5mnB* T>ߡ$* qc%bsGv{а^AoqVŠ:ipfHCDb;M bMQoχrL#ԕNjhk=wH;6ZJق5j q i/l5'}7opZr(H=%6]َ yWqI ;I`vj8e 7HDu|-a9K%_sj<5+ }0<|Q*\qTR]K_LTwzH 9^Ew&'kp@eMbWdqsy|iJ5 &i2amy="-ڛ̊o#+h1!WɅBc9:/ [ӱif}VSTlB)峼IBoޢUŨ!Hd3/\ \ d/va 'ka X-E}[ISB)+\ fLG ƕS ~yrEbW>=Sߏ4ֽ6e^`iL }Afxn-^-3VLiQGɳEpQQG]c̀LE9ƫx?E.8({_Ψ_dHa[T! |LfjeTHX0WX>3a B6 9T*,ڽY Ua0@`q&9Q@ӗ#˚@HH~E XLc dApeB0-Dhm+[כRਕXs""Θy+B mc]^XB9ldHEO5iZ- 8J+uy&}9H9X_\J,Ւ==\Դ(olPᇻ:8;rM#L'T3%1k\v,PIB%;.}QMBҐ)Nc(+x'Qx#>/yg 8)5rÌRs!Z#/ ;,鼿)qnF?bD߄3 /ƐH4MqKsZlPJ"DrN=N(NH]^+SC'Ĺ8*BF7'tS ,tT*th?+y騲E3y24^dU B>Ŀ Z#oF~3&<d':` O4 (L /ȔyIr* y _inpY"_`+G*KAE*U`MEggo:,[ۘ1EhN+A:vzRdL6$3^\@L;[1ѱnf yH/)SU8j篜Mq㦸 v2A9;8B@Xe9UP`~r#MF;x^>I@'ԴmxK#ɡTjt.Ʒ\m064 54 (}dsZ|` ~ ndkHsE4qfGFua]#? =43;)(N+rH\.}]p+QN-9 k4cN1[H?npA. (Ͷ0U7PލNɫr3`˺Ž7=tVD#C<~W ~GdoydLNmHorC2~[x`18pǟ^R/ N_-eFAᬕy n>b䱤y9Ƀ,+hjg ]>*|QM )X9`;6@]==[4-|0RTBhFwaDXCh 9 ~K>Pn8<83HE b`+a}3VT)TwմM}4 VȽ2_iCMA..և]҄"р.+0inH?2 ɗqx|*q-I+~o?DX*@%?@o"#wG|]qTƣ/A$m}cGwyD{ܥx7տTw_ vŤҁɋ;&oǛ)l+H #UŒ֓bK2ffgQmSn&Г 4\zg]y}j ;RFLAJ Y2"͏ϊXpɽv YFE$eË+BjRHZŭW 3ˎtE(Mx@bz ؑF5Dۢ" `w>SSuN{f-h0-y71abSA\@AGlpǜoȲ鹊21yN̪a5_çO{;TP>Z}fFE̴491'EtB DӪa@D  ȊiDBþnX"ȳK:<ǘI'1!;3")!Ɩ/K|FPyOS i$w5.M.HZtVhY`+}I5OG^JL.{R}( =;!f3Y8(eĀ\D?jHTKa "LB˧j)ޟYTz} F W$cEjd3C4!=] ˾EEEfUѣT5'J̑}3Z7U\ebg4GV˹PH}iSPj7Pq1 eJK`2F'% ]V"96nO{eؼڴa0kph_$ZhJ:1]H`m|x-&{:s3o 6W}(( I1ċwo ,֋LX1r\9`DU Ay[2MJ1{I-t(ޙ)kס(ZB*`W^ Ae ެl3m8|xA;4Q p@GD@&zmu!` 'j&|) gˁmU3$RQ)]x̐PMPq[6qUlKA|i)uWlgֲ/N2c{lYFKXGi70&G%)JGl16q[xB2D0gDlk(jA%q^A8Hަ'l[8i08ppUŻ +kc f1 tpj DMb\=w"*j? ;wj( bg>D9 "`~dR`?Ǯ'5j%9,ǚQ5lҪm=| aoxr)e0 >i1lnFI1c]^A' M\on,z-寤(Dj rIW'ϽFC`G7ɹ^6ub͐`yv T^ OdGI;Ec%JK__R^H>eZ~*O lkzL6o\jFX̠zIx?T6=C*w?Z/REGD C <|Y8P}ij;AZ }~Szʙ:}NsQh$B"Y sb(FS58JaZ c%J^OrO`s{1"' a;̩d=jBY 0!Rwƺ}+)սաr!ŭ] {kT" ,$1)ʖ.(Yt$ ts1^(M4hE# ^H" $y?-ҳ"' uPnjAAk>؛Un%{04[k~juc`Khy<9@?Yp(} N*/!$҃a\ ?`ixlH:e'@-I5njyW(>Lkiրz\ ;eq~mR4 5E!D*̕}J&t1|]mG:^4}32Ag<(#kI\@/'DQCqZզTPt-@7cQlDVQ@=F62y H֍k6_sn9g.ͬW\LS5 "'=:(%5|q_ o^1 BPKmH=R.5+Je/i:}E .jEPֽQ w ~J_wWGI(mYm,L_|l'*u(ӟ`@!rΒ=r^vy<͊}- H:dFp0Cs3FɓTp/^\ʚYAamV.FV{Qi'_ 8I׼CnGFPhqA ~Cz F܉4ϒUR̔ے"~69٤u#H\C+: i㽀 5 o""w$HJgOfҦ17:pQi& ~ڭuǿ\w⾯wA0ZD[g_g.~Zqm/fQ`M_UkzQ|l3:,@"qPJ\~ڙ@dv CqPܹsMVFOA`_pI>7VY ZdMC !Suak@*E`v3N9%k֍~0?6ϵ-aAk4 U|!'Z00̆D 1$L8]7F?>4ϤSWrq&j2Gr(ZcIu )V#j2D,a@%V\;{b /M1QBKV7U']C!"-kvI=s_"MX\:l2َmmd)aT>dzԨ`rz[]!ygБ \* ceЁj'٭$+țo:8oB ]Vqʅ_ &sVVnZ98A+,Vd=ofJ3ԄI3Şʷ8)(Ar@bR,zy?#7o3>6e^g``<f>]-Qw p/ AਞpjYyH AN[6IA$ |FWGi }VRO$D}7B˘XnTk]zѨ]6䃎iڰW0H_ZknY#>h0TH?B~e1hdx.G$7$ƞg!KI$Y) Yy(J6NVLk%eGeńDه^G;h+نSWάM[#ԏ jE0COh|&S#6]ED(|Ӗ'H |Iy<]([4J[ڶpdI>) 16rߧ?gCOW%0LS;+O[TN»6V7dfMGywu`KHqTwYẒk<ϝhGȖemkf"@x& #G<~\˯-f/veծJAo:2IZKFcg%,߈4r~aTSGI|ذBfYB-q{Tlw7l ^Z@p^ t&Orݯ} 3o8S浆ܶSXJj:l]j ns毇I؈hMT HԢ ( u|Z/`M hV9$%dy}{&%2 KҷƸ..mC m5\̜`,0l;vbZ׌{g*(G!`.ʌSB[YѬf0_˒C&..&:gƒ+N0waMYdd{)=Aro/icfpo+Ws8hc6?vsOB-f vHqX_x-tH0oH@G@hPcQHWmmHjqlX%Scf,6?i=oL>ζoiVWb659ܶ\IξvLk[gH?oɈN+i q,~?_'P4u[,!9&Qqd⽧;h}Jʒ#y0+GQ Jmmأϕ.n|]sQ6KJcЯ5LlYwRamIR3.jLf5'BḙuQ·VɓYl#]!\mHjepWT &}@}j_rdU GQ[K1pWBwE2wkd2:p})GjUi:ϕ.UmQRɍLZ _&?Awb3n3W2Z7ã|9}!Ϝ9E,3HÛdM%mjBUs n+ QU:mTexD1>tЂ`WʸC )IMYГuQJ$OC2pG{jCcܼNt̥ߙQ޻٠kJl𑌘gS|o:YeT˗]h*<:rbKHSp1HHB!ɼKm$@R,K6 X6U\g0I>'/i?8>S2Q#L+iP" i7%א Q`_@q8I]B|Yi$YŐ :*^4V'?]rVnhߡwFwߔpq1s![R݌Aiua3|ɕӆGIK$Quʍb<'Q[!C|2(썐I뭿%D6ZB@)bSδ&GEAܺ^#e';)aNR)\rv/4#6~ S\6Ͽ-< vu~-Jb{[ N"U)').wAN`OqeB=9v$ij#KyEϦ]E_䑯eg>)*g (4Dͼ3>19=p#!KjajZLi|iOǗuaba0rPc*jTo@VIR%XăLˊ9gC+yi+ERwƭg(/ m/(~dw3? ~Yd%F.ԐǾ.w"h-Lx@6~2O:u}g67Bɮf,O<_$\zW⮍f*n¾ W{esĸ)'"{PΑ{7<1'ҋ4 ;jǢ!bhyaJm~+\ d|DZ#yL|kV>8;1V [J6L>fX˖K#8F4Vb6FDBVmюӞ^iV xVScQʃ#A{*@ "mGLF@:uq8wvɘJa=%2vGCYtdi sS%pIR)2O2#8m"4,&땅}\QW[=rzSc^ΞJвvXM4 JcmrF/wL0ޮ9L|we bG 343rzr6%0!uk}(U@jn*{V1Ekb+JPD7A#`(َVOd]o-V*[Nl4B c>a|rT0LcmIǜvmX8Fb~6V=g~bplT'ء>J8,~ ) 7є'}Ά/~ 0}ͫ%eg]$z1 vYHC?ލ]Wy\36gt^9>H/+1`a*`^m0HxQo3a>2n3|9F\V@scgBaT?p]۴5@%_IZèׂ4j@Y`6=H+u"J y c3Z\LFgp]^MA+6f궁3~E?"xh&VWӟ褾*$YƯXQh,BQzխЊ? j̿BL=_2eQ}?éV e yEsbCʕz~-;J &uh[ٝݢcu?x'(/F_tSah) rJn\‘ Zzbq٬R_} hB>z7Z^׭D )OlטB~%(:CE?vej |sxnǡnzxo}f@˔8%F( qR :ZT|><|<Ѭahɱ챓i  `S@V#3niC[*/hpZs4Y EK@\&SJ)$GxM`yIOִ,R)#&[;?$RgtgWGH{iB kAaS+"=gglL˖q>-Q|.KlB嗙y13 ʱD4S[cʚ6hm1 ,B7v@x;;D٢ʺ4^Q,CTB_95bQ??l Ia!wQ}&NEk`6G+xypotn9JBPrf| &GfPPKztQL !qV$fg#s*^7t{_)}5s^wf/TK+:tYmP~~C(ln/mN&@` H4 &J9(WA-m>Eue\GQU8|M|T<8~?^.6Š-e[)yW˨_B;N`y2vč$e*M7OwZCW?LN+=b},:MK 9VY>\EZd}"EB3Fghz4챍'.p2I&jl! FIZEaF~c̽o5NGXP?4)܈f&6g@yuP`<ij*"|A_L‚")_ uiU#K-X.^p:IIlw(h&g}WuT6ܳ]րVP&\,y0|R~n\x+z.>…3Gr2tl/o!9a${, 1LIBĈT/CSNy yt$2"K w:^AB;5nsC(In࿴m99>|Yi{F;$X]V@d{+ pd ÈiR\]s@ ]tʥ#3J۞J AӝQL# p2LjVx׽ :Ic0[ߚFFbrE:J%P+Hq tH*`#H9J} ~gYm{rujW|VN k6w}V'GI]ȟ/Xq 6s=ߛ-;BW?_)jЈ?d>iS3lp+O 7ז2&UZLғ^Nnt +ىo2ɓ+fδk3܉$Sܦ»K jc Ήx)uw,t1\,Ꮟ8(gA5WбyɈWYYDC\pr`lAddպ0a;{}ZO,O}RovOS bNivǻqI|Y}bJ!ڶh־=s5`,p/ n_#2_W`8|0$` _b&I|io C1vP'RvtLDwЕRj/6qS<|3WKa{c~UQJZ~YmީƐ4U\rđۀ4q?=yw>E?1j~2V:<!_mP=O8$1u=!4*"ch,4T8?}~mjX#f;gWd.wy,[!WpO+pP95Gڔ/,RB3=^v0,dF<$Rv݄\Ρu\5a΁# #JćOH uiB*~aZB}ah+Vd=1n*So$&*?zc|iML%S#|TQ2rCh1vڰ`0a 2IΉդȇv'Ӽ۬:7˕'Y/p-.S"Jn ضCBXX-G/, #9PbQCHSGO1I+97^YS%/eSگYD 4\.tlȮ5^E,c#ɸIR}C~ryލ9*B"AgJqظK}kPl_ٵC ঌq.$坪e{Wj@<A\6`Ih|'Kjգ8D|GEC ޏrhq\ʊ6& ߇>Mj[7N:P$FwQ[Q~*I.SY[A~J£w+vl4e (gX\Dԋ9pzG~Q,2MUɯ[ =bS ҪiZ6P !xmT%m}z"8&2黎 :ijݲڅ7HQV 1%D>ti$og_!~0A>w UľNIiw.>r a:f"z5K!cd)OQ&:nҀ7%W$O@M'*۷@>&'eѯ3|j'MkSҊ˾.*ZwC`wW A Қx9JN4P1(&IC5$ħ sEv`I?ޙcvRk쟷V%5 yWM3CfGlj0;$.s 7n>%CA]6>U>z讴*ݢ@W[2BW"283OPOf֥4sK]+Fh {05'i JiV9ՂHxzWHbv;s`qvQs?xqVoM"G;1i,ݸ ;fiGj TQԙv+Ϡ"+oMpzN詁NɍTTEn& G^R_>;({DعȺa}q-S)6 BjS!;`fxّfIx qgƛ0[_n<"*._ϕiq;FAݗ:{n-Ժe82 )/ޜ@[DfqNKu!ȱn[ț?ឥI/P6-Cd Cոζ% RVr ^oVuJ'mfj(t,5 /ym]N Zَs`gUkֈ x.#{*hY]޴482 ϋ4Yy#R6h!Vjr>8<Q*ՈasLk!%Gixq̌jQ=  Mt X✈WߵvV*j8@&_JgS>hż_n-ɞT՚i HTvCsۏ.BIH/βBݸq]3 f)ײ xN &_;7.̫?Up 8/^ O˚^߿&v%aqL t羨9-Ð[ᴆ68e^^84(q b莄(p"rMP8To!hNE_%:? 'r=,T]U[6q!ǎAҤ v #lw6qZ-Gu g f!pMm@y:$;՜oԎGT֮1WMhȟR:D' ォ sa0 $2ᛂN)Wbk_c]h=jSg` H&}quLbuETħa2g _͚ŧt{ʁ[?r^WBzG 8OS<:L> =bF6b'6 2+n"8șq2)o8"~-jDNxWG2ZED[a~])wInvUW Ƣ6+E+tEaeiӖĀy (9ɶA*Xd΄?P۠XY|h)Ӟ4)Ce/JhL7.9^[l?,8JXƑ4K^p̓G,\Eû~DktJ; \.6 nr(+|E~|b.EklI3$ k=1CАaDwAZCgG"5ޮv]i\ -] 3wNjѝƽ.H1fZk]" @QH#~LS0O%nu!)5'MF0l [/H4ĮDodv"!GD9Vu "7w,%/f>,ڻH,1~` +Fp|BxzQ_~ ְfk!u,Z|ĝDz(<26*^L3j*-zA-͖.ի?6 71}f}d!\SH-<'҂PbՖ"[y'˿嬖 3x:yw a˔a Ev^h멆bI:E(8-8\^O'@|K~hNskD&fTmbiM8Q+ RDZ`ݮƓ[QzoW4,;g@RpIʾAX/H矑1 =șU zSޛ34&} 7b-,1̓9{c [TmGz#2bHAys7K%4Z1'a1~D5+#{]ہlzS׷jR":BLGKH*=!6i5첼a`i/?8hxp˥7j.!6|c,Mѝ]n0?ej p%KQ\w QUS?R2J>?SƝWs::1Dާя[2Ȫ I}J.b94W ы W7]z#MX䲲9'4SUR21!DV\pquIyc Q;e:۠r2(<Ե FZg)(y4aL|V1G<[ * 68b/&ZcaԒf `ޑ;e^Refn )`hܬ]F[ 1 9m:Dpw3_yɆ -J< 2J~!Hw(III++#oؤi*BIzVW]ԗWub6yy⸐"4MJK:9F~i@s_W  j( /T7 \9P"5yɂOnat\#emAg&hUhT\GQ&Ab4x8}02Dx/ԼHvåqXr:Hb)e3QQ$}[':2v!zWBzAۓZ"3(SOKٲpECrQTsҷF&Eyi@叢YAdM)Ey1IAtl2in>*vz1 rOo/cCڍ:r%}Rԍ ۷;kOz|PAw%:'4*>@UXDr(`Q&U{܋v!ӑM|ZNZSB x`l)~E[۞}BDQ:^U-(YV@tȸ%K+Gދf?拹ו}|/ m<>YіBYp=E{j#+*Y&&0W) vC K70N-iY'p.l6tDHx Ej1hIɞU׋쮕4$m5fiHM@/p*T> cҗ(>6kK\YfdOn2=ڮW-DuIP_\넃Tek27H)>x B"} )a'*Pӊ7ZzRXNaX0-1`^ݼm?ޔ[xjbo~ǡ1-! t MI܄]Q0μO,m} w=a@jD.FՂj9_$'s[h$g̬Ѥv^wd63Sl;&-T <=Nח`!?,W2z"0!Cj۵ϻAv!3bU쨉YJth▟lWbDO#UI͸)akH ˈ* ˖b'.as ] |kV޼-Uډ]\ JINęlcl[ZCC7DqٷP=%p_uV&}z?Inz9ӴU*\p5^nDom0`h:_Xhċp]$x ?wHŏTcCC%e@ z 9)E,:@P(d51JsSXʼn*=bsaԞ,s<ִùmD7SU^ Z~KHNM1Qm,sMQN<^$RQsVTnJ՝coXkS)7Aos-uA=*u^iֺ#[vn^; 5LG0 D>[ZL۴BapecUї}% +a^vVf s!#-dȻxE|c X =uǠ"O_|N (v^͊A5D4:ڐO>$i)Z$B+VO՝9 c~P%';~c=E"-\.TՒ=ĝXL}h~_A4A%X/"<<fz.#doiwԹ'"QL~n($=;2[Hwp-}$`ǻ~kJl @, 8ƒޕj'𠎣!S⿜˄QPf7BB45Q!ЏȮmSl;'~3OdyZ0+H8u&Z3CAfïhZlQz^BP a/%Z7)"s2ߠy̾GE0f3 硇%K,8 % < PޯՋM0VW4`#7r hZLƒJמE|GDOSs{wiO]_6V9N\8aɀ^j~=h֬t iH86T)9EarJh/#~ޱʯ7MP(~r.:P_CFk/Br{б*Z/k0QY/}IkP{'e u3bb\e#v(<|d5%ڪB.Gc.V;@)Ϳ%G~qXj4JF%'ھ4t(efQncmC;^k.녽Gsk8l`DEh"$Ȉ.H!!{]♦*_A7m;!~+n~½AW.;J|&s>#(2ٵ B/~ƦiBlâ%-B˼&w)e:PdXAѻ&Ca k\Pgc1?^K gɣ <&`.ʚk5PRtd@W$6,am&\~SV-ɼ:9P1ȷ81L61R</>aYH! 8 1/MR#/ aq׌ %+)c T|ĤNtv0j(^LC&1b>EL4Ԫ8GL@ɝ9LsO,A8ts6àH(ږtԄWVHFUEk4Ģ*hbOA\Dƴ5*K_.E[#%BXX-َ)4͋IeS?vNr=$ #\! އNRC$IC!:,xG H/ݔڰrz?KPK xg~?Ӓf;Fh-PI Ko%3{N+*??csBiGs-J2һ-Ɠ |5GaĒ5mTzRz&J)(9v/ZF4X,6@hY[mv J{(#Hա {ut PXо^9$%|ǀhVB'n,4;Tr̜>r8JՊh$OIML ?ӹGeE[X8PDPs̐i*/Mt.ЯAА)$o>L9C?fo,/FC)etnzX=cC.W!O62v}Qf])и%,,É@^;ATė V|M]ƻl:<t2IDek>݊!G@FsIF]'{m_.E})o!h,HQ}4hty3 m{n\ |ǒ**`-6kȠϑ~F R?;>G? aSZe-Ak HvII3 ʇBPI$̤@@Ҵr(.mM N+YǍGp#,< $zq-# !Gl1`AzbQ ݬ'_bI"'b*\j1]#N-9hݽ}4|j.u1KXyy:aL'?w$E*%9&JeDwq$crX9I V5{W?N !4؞3C۪(КTpQʘk8OM hQz a֭1צTňlz 6^)~6s61!)Y[ [ U1qɐ]و|,Hq }nsK_FGdfQoa]4)S{"S#a_ z@D&@9fنZN L ć1#ʵ,h?=rlR(VQ$$C A. I3Ǹ| l6T]~# 1sO?9kr eVCLRB@%%xS1mS~s;2)?r>HU$7@~GB)"t59XiUU#Oѯi>Z{e%)}tCl6 rf;swJ50y=r=Q:7>W 'DI ػ(2cݞ)- ꋭ`06Nr]jY; AƟP<'p7%˕fIeU.:Ҳ9%.uFgļ/UAZ֎&׻ԈCc>͊[W0A>?cw4~k$G!0Cp2rH>^:M rf-w%1CVG` "RqW{?~|υ{ib~:xډWA:;w7[ctYLl>ō_<=9 c79U;IɰC?Szفa/o C9C 뼮uJ?L(!P~UZ1G_-W"!AWc#vP^\vk>%7IX2Kw%1B2po !U~995.J8og7كh\佭W:H,nl=V(F ,aq0_]:e1J:Zvߠ/Z{ 0&r=0F8g'bd:VW}B՜+բ>BT}yc[ן7 ADڌu7Vªs3-^1Zسh0mvRu0pT}VrN7:(\ +M)*@>-⩳QRf¦ƾy`Xu9c];:"8E ä.Vl(t-"`hWx4?p\8ޓRj 80~D=An=۴G͒dԅp@JS8JR raa+ɧ5wwuuDT<3Ȓd;\4'Zlǔ2;X9>Eg;-CYȢωPFzMLޏ@n 3,W 5%OĎm6b,iV^oW-HOJN1zUj922+֑?(iPg'T-ˑ W'6ogU\$&m.YSZ}g1C{ 5>ωsX*-yϒږ٘W6IG%,n9E. 稌g)xS$_u*qMub7pjn\bUqh4}q -iO4#D[ -%K.۠{ū ETƖ4 pljc,~.,Ln+ZjW_uCS垠ɡf'H]Zfy Tn>:Y^X MR}|x˷DG_.wtxtMTlŅyB8#c@–k4FQ'\mOfBHւjĩ?T=eqcltdWyovL5Y)s9B&obX>52 ݷp.Yӟ_mi<=rmV'Ř0rp4//1 wF@}Nitr&n $<sG7" m.{ʑ6Pi2Q3NݒJa _}|h$y+౩D,ĭE,:D=iUwST pӨ)yWdOHR.YwT +=-,6Sp&L|`N2iى«pS0u2cC}ũ4fCbu91h1F#_Kbt3d7cN Md~v4hy{x`9 7Wmxn\qd柎L6ҰcE+[pT<.^~#RScp'Ծ:x]և6wƭZ܂ |?ى's_]BӖ^|ZLX pyPVKZUҰ=}]ۊ]ҌZ59,8B13 nzYO>4={0~`Zl|SѪSf /V3:2#%2JsLv)PA#=~NN̗[F^קܼ1'#UyBA L8Dmtl~4oz$N/.˪Sip3J' Ru/XH4$fq%SPcXDSJIALӴ&y؟F@ L]bŤ?⹹3rWuܙf'+vSylFy<Δۚ^TFTysM-WG6f,80b@p qܙ kp,)5WgпH O '0[ `(g 5gLit /'H-ΤIU4ek[lV~7+k>ѲX kKس,RC+TWߪL ?CTzl#IH 2 9y4G{"RPSI .{ = nYq''1f\8ge;?uWbԋt KjWA4Zso҉elm:jy//b+>zcheS2gF(㻮d672Pm7T«jgӤP[ #@2䒩Gϼ1 `t3yD6k;]&m/Yy車`ڟ2=LUjO HY*Qz_8jHr u'̈́CI^sϝkk6KOye ν'`iDe{ZyVUY &:qFm6Ї36x 5lNp!iXY{t@igOrX\*y,ת4u "a`Yks y|Ϙ=*Gx9d-_{1EzJsMBn>27}5Bh{H b[!Zrt8h8F0C5HGt8?,]4}zTt@+Nk'N:|yG^<?frll. s`$l.GXSJ'wa=cڒKiٍ{$>KM`] ?]|7㛮R5OB:YݛZG-[BXimt%Ǩ/אHkmwGf Exmmpʥć ~ԫb5Q'NR[ҹh+U4a- u*=w늫(kљuĤ}"p- evG%LT0ɹ"p56=Tbpȇ"lp/oA7c`~h+qe/#Ɩ/VE!͓=m RSygS*ȍDy- [y s2}O~DhtnGŧ*&I+-1DDdtuxKZR{|ەiPZüsrLwZؙ-(ᱭW2 k`9Rxs/Tm¯TSXy@k,rͲ[Je+l0$qӺKɼTa6`WRv*V} sX۫!5g`qh0Ib2jg{rIU/vYkIl MnGu0!|: xMݮ`]ν\t6sqn(XӅ>hDY}g)z7q=P7w`;NV~/'U`Ei:5O-]*xA&f[¦0Bi;Xsr H~"D;f(`!$ʎ[gy'u.KEJ5FQ$/̘0/?B/I⇙o-d ږlepdљ=Rg|t X+6YtGnC><WD9&]e-'ydD~-BPQy%]"9.Kd~ 3ddt2 l3Y[7dξҹk5 oTة2x,Z` XG'mXF;\ vS_zW 8Ɏ>o[u 7VG9@3Yd&~<$5qLfLG ˖N 05W)C(-S1'.=ǃ&>~H2"0'iQ7ᘇgCW|PmR3=w[nd Re*x=#C,E3 quU%VPOK,Ŧ~ nLi3/k]yv,H\OAy=WybQ[MXR`,;:-|1B ηG$֨tOX㮹v0 Q!+9JzrE=)/PD?$:dct`?>/4;U;?p֞C^o3v</m!cX(zַbr ~2}Uy+vњ8c~k:[ R*PWJ+><$IR&7=h(NEBMT7kr2N`LXx#ұb5Qw@])@K#ӳ޾Z90r,&ѵw~͇Qb!t_˼*$bRk=tei~6A/bnfd|RXes/%;s I88#ɼk5}oa*A%si:%VTfS+<nur{Hdt%>"(Ajp/梂<p.m⥓.'aoa\&C:H:.M tra4&lM1(GIw( uH#&\ ]cR}4tgKGΣTa\,)u@ƔDդ\W8V nէvhg'w4drO"j'(P?Cfˡ_1$Wx!yM" "[%Ts &;(k (Offvӛ9^|.ŏE"7+KW6rm/V &y󛹷~*$`  .Zưe#| I4="xe:X/mU.(as2'?rchZ, =|ƎVu[(rixL'[ԿGF/%P-9{k}%;RxftujED+@xM3#%BNz|F&ߴc*${dX%eN96)ӨC#h+"Eormw|WMpSϿGx6=M$#Gw_ V`:.6BTT踴q+Kwrݽkݯ|&w V/xY=#wOs?ʙ`ͮ+;V5*7ܐIif>Ohv9ip w3Itsjq)* ۦA8mZ>>:X1$ߝ'{F* L].FISuאĔ19{5 M|- O^"vK*;*Bw᭷d5)¦ zl@gq‹,+ KBR_4's_'^PVLnJW%4A)1gX)CPߕ!׃6̲#̰)s>_,ϫT>~X{M~8hfٺ{﻾m'^|;>D 8yV8!K>JYG-C,\}ŘYvy+}ы^iE%"E:0d:줭0W| zQN+0] \B}?0kPc2ƽʖ$>snn ,eKqnBN~ұ covw`, K%>bW32Z2D`n`H$"Ivv 1~ݩ|y0ԯq6H2][i-?E.] 3W #]F&\EQVި3OUH H *]*l:&O(t0ocP4 ,7Li.?u/Fit~Zc*XON%'IT7mo+x dSܻ*tg7@e `<;ƒOLzк"L^=UI_@NJqRo#`+ߟ'\!}q-9lޡzR=)I)>XG6<-D99S;/y`t>:~73'kÐ]{tN2E3HΆ0 /怉veZ2<Ž}| j7 XqUctIJ?>:E[ҍLR%\;5TœWSv'KZ|65P7Q2`1'EYOTݵ!~iwCH_Il } ݹťP !C@"}1/la&,=F]c)\׼5)3d>2C^ieh RW'c`Pq~`?0e1cTڥeχiu#,kCʘ /x1rE]!ȻGK OZ!DZi֌Ru*v b`0q3Mep,x!^Dh;XT'3Ir6e-k$#{_YpB˖>(&G<X9.K?E=hq%C"~M+i &S(}4PwpY`N bMm@@Ce>jt8; @3Yx o ;mL߆REizQgjbRt`. Eֈoa ˱#ܭS5˥ z [T_DmTsoV6mjU9w_҈\H YHP+?a{P$2Zϧ!McwS媆_JZ9or8we"/TN^H!jL$dx0U?X~hY }Q:ҫ#e)G7`'MQ5Gz<O ۭ pDynX<~!͊Pz͇*;]j>iW1C\O ?˥⡥› "L 5]U)bX#܌;q^>@Y|$T,_\IQe+Lpm`XRq (ãRY&nj 0{==p#1M,:;vjhDۆPdoc[kjF__zqW!ݽ%EɐALO&>HU@)cHwmNR" vl!fE"qw԰Pt I|FyOJW~8hX5 0'farvHW  _|ųՖZ ),PSȏV|_5H1_ۚuxE ZCnoIm,oh:0x.vɲYWdE(w3@Ev&.Y'ޞ 7LC.H+m d3 O5]'<8 f3PgSݢT-?.Hqx% XbW)5=9 1K' #({>^lC}hfw=w4zJiJ΃WYH+#$x[?k!*i(F| z63Fn|Me}3!n-ٷ^dpo58 B^F9^yHӑ!.f( 7j0 2Ks}}Y?yCko>qR|GV6/S7liK?22\s\2P#\g=>snmfj@ B꣇ݶ+v$ Ѐ3;KЫp%4nsLx#d$>Ěy A>Eq;S"4wrYmy NoJ>18hȡiZcDOZ1w /GNBFqZ s37 IPu8og7"R9M;)(`L7'?sHeŃbhfR .u+*!}lY a Q@Tsם<ڿH\55$: unEKSqپ"1^b9aQ& Y㌰}p mmQ&DYBe)n8Lbtǽd_'.|zln{P"Uy;"K[Y>rS}.Bm8pe߱I818wIYr: ~ߵhj  G1;R_6A ݠou8xw? ȉ HxWH : pX1]Vl[ " ̠ϊ+ȵy[M7VB%}6mN/ݤ- @xh2XZby@>',ИcO'_/qSԇ~)R6p@*u}ש41&kbq͖Go-^ (I.V@0szHgڸXh%BܛӬM9w~_o=aw߼:VPI[b:HݶYWlyiO|.  ÈWV}4 TX咔x)wu{G򼘞5in!v^n$:F.'}?'"?lTJ(ޒZTȶRVlhVֿڼ2{-Y-{pH$H_]BڏFRx2*6׻žMA)C]9iOP7r Yl@GH6%'{QgN5 ~{H$U 16ʆ ;l8`3 p+D_9յ ;c̼ϺeAy k؄K" 'Yf4שVYvޣnpR:ۨ`Ը j>z?s0I>/'^ҳgM/@c݀VnKd!51M4>V>Á.VR]W.}X..4P27cSB7NYyke6Qo<_fǃtҶjt׊C̯ILIwr|jBSw.2;a_Ƞn 1j^q9+5$08am; [[ <Ԓ>yf>_/X߱ r.(9L ݆jWg]at3>!_'EWH/5Y7'68Q떖#%" QY!+ռNk >UfֈxtIQ;혒L@Iҗc{U/ݢ$?EG_&'KIׯ,R4l_Q,bN)c<79r6ޤ.KS3ea3v'b0Lu{Hrfشu=IL%RKA0Me%d*j@JAj G` NIY.ۣy>F"MG`Nͫ*te-bۓbiZIyF  鸅ώИ!.d 5=ᩫidDpGW}xϗ-*&E98㣗$BEɺD'qS! / -r[ I3z,RJu4r zVG9CXkE)1bɄTF~62Ƀ+-J>0.툩d+4$~J 9ǝ%)'Y+x2~!lH lh =:*[wm(̠5(D.w=<v4Sߎ)=*!ByͫV)Q{ew;g9లF%ɴF48#ȓs:wVFܼem3?fh ƈn4g8ua(Sm5iɕ:M}|wDVV)[rESwv+~+h^7Ƨc Ӊ^4oE">\e4i1REoׄ3"Cps҅K!!vSU S+Zj\Rc5DNV[{R[&T%_^,0-x/No8ҫŇ>q(w8Pc(HKѦ[%\7}p83wqhTu#̉h1a}[0yalio9TY^ܴo\lݭJ_o0ҧOk⠲aM +?(|D]O}F@ ͪ}WUj]Dqe}EMh^=Ր *ϼj:Nܠs[bky =Xu5/E8o'<ЪYi -yc1BHuYc0]n{-nO=n;:59JL<]7Iܟ6DEYx| fé|;tjAto_>,+ͧl}6,Waa1~XM}%.ya*dJ >,Hkځ'&% @(:TѴGAEq_rEkMaau)Ma€BDg8mk[g~ϰZmBfsQm80Gs!.fԶ*a%[3ΨO*Hdzm=G+efO-^;_m{ n*:=h/#jȼp ..Je"zrR*.)5r.r ~ y ~?[dr-ѫ!ߙ,AƟ%YĵĽAH<=[B,\`' UC.R}'=~%P *+?0{};(ap@I(V^EB1"=tgbcOY4r5H5&D:I%{_b?8+̷Ec9|v\e=J'NA*DQou42LZBj! yA_f~5rv48e]`.>o{g"jH/sYLNF;'>ְ1r,'%)ehaC?ڀʻTZJeLMTV"{lFWRlx T^gЕ1|3,3dCyb>#CC~*Ozh~X+՟_o ፁKwo:We1`)LǕ2Bb6ڷut-V%Tҗ|rˬ!y#v>m  GPj^/.NG ]꟥z<ݓ4~r@V9kEl^W8jDA Ï6Z@>߷)&-i /$I ,N-mYo.p-?6z|6{)Y7.`\P|czobn1#] îw"UfsW3UC.*o&mqDh+Ɋ0?doUF&z@xunOgp`S5 O̸~|fkBGI5/1JpC[wUb=a]:R։koocʷeL1>-HE|IvAj~p ^|T^s0%󾧋~?Cѝ3qFlH;č puPS*Fɞ+[>ߤ'n뱑:c(2I~:XSZpغ@j9VN|=c(u\g'" v;aZg.[6bb!JcI( k {77ZB6:T1YÐT.@w\[x8hpZh+3_ppy!?rgPO qPo_Zm@m\>sAkT%A) ]ÁSةWMߒuURܘC2'rb_zv"NCpitIeGRŵ^Jf;~4'o\6iXB7#bUUzqcyZ`C<c%`&5}FmF㩹u5Wl0G.!|XD|p ˻"S`E |ϖa :JْA*^P̃d;#Ix(1XCca+V\kV?5ן@5(%;tRpĉk@.7/U 8ˆzؒZJ1`0A)pe:P)#Nh@ 16!7,jDJp<ئC\F)qoٖe'G# -P]4d]i@f{Giw.!%N`;G57p-%!c, ޲'y熡~ŒSJ̾"Lh _>Y55c1?޺8/و#|,k4XM' @UZV~IIzhh19) h-@J:*`?s:NQK?_^H&U֌rxGc'2gKSI54+@?b&lڷ+|1} sΘd:7S' }ֹnSj{%L Q̸˅D@Sf,~5'iK[nG81d4mlWa5R["# x^7pNs'օ3PZGWP>gX+HID0 KQUDd#˶GdE+)k6o:q%pRpl!g"kq{ĄewV V_ 6Σ:4_}DZT(LQXiG'}gBXPhXtaCЄ\;WK`w|KBܨ2eDthUėw{u٣ .:IГ)B4gSGm dvM ҝ+K. J(ɥY\F:G,qLh}> /\b n/4r)VMhqqs%0zޑ(%SקMiDpre?5IhzmVA !nH9$7ƃvxk:5{gl]:Ca.Xl{a:/ԋ%TfFsHO] lw?v(NЃL%W0"H  YlFe4&n4[9fOOLD-u_1A)Śp+]%j5D׋jRp3`ZtH-C0,K@?\4+WHpݱa>=T\,9䥑Vc84hI%X34׫CM\]SéJDb<2Ѧ`Me)qiR [,`埈yҤnxAZޢ0`p.U">hN"W$WI' N "d^O"Mp^cfcȋu|:*!ՔŇC\ 0Ҍ G7 }?ӖN^S?߰8wFjr_:ELzos:9<fIL {ҹ~4<]:SYEomf?lhP:asLdr{M@[4 jk~"8@u{ZKg(p;a0+,+NU D6Ԃ1-FhzC5 zϜo'Φ)ZoD $oxfl fI!X!wKqwo "֔zP r+̂'B}V,yɌQRý'ig 1衾xgbRFWv8O&B7 iUDATS}bهؗ|UU.[KVu?W_q"$|mm5tsQK6i^tX G{7%[MtlX)YNO}iY2twUMPK5=UzL=[}8J\Y7å'X7qm崅Į|/D+4vCQZC07HgNEGL錢sV'TsϚ*[hF9v7l*!BLϞ_/!Ar]5s,(/.ԤW1M;fMp+2fʍ0| V/%@+KZ0gCz@x,.-3's@'uyk/J?&\\x*r1M/hit ~x+T~i1 `a "0dܯȎ w}W8>Amvɿ7K}ld Y2zWE`DŅk f}t+BMF8~Qnp;MֹϬSٕPu]nJÅK~m5]M[yڌ`:2-t |s1diY;]:߻2O-}5ŐP|?zS3K-ǔ=Lbr9wX?Z`SN:m>C/Ӈq;*7?۽+ťsyátebX~1+e0QH2K/OAA @LC6!lmr>>2ͼ*e$fwjw" ̼c|24-*NjrV#C{C0Z,Fu&dii-yrɾGcx?=`b-㨉g 䎙O,_Ĉ'ҫSD"1T.6Uhz 4IFv[g#Mư_1@ڑIua%5[z/WV`LMu#"% ` Ա&\S߄d78{ID8c ; jᏽ7WU6-G!TxwEtgj)X,T::4ê 0k/(Iވd (H6i^쩛gH//_SN@sՄ[-/}FHED4!}(R1µ>?wYcBӒ"yVqr_B"(&p7Y}~ct\\י XИ=FoH[pFZCY}vd5)UPn⅗ܤ*)Æ\)|zAzl:AhFCqPE,'U2ߣoplMT vo7Y^̡pbRܙ95m8_r-$|hv$li.롒a7a[n~bls IBMDh7όfF6ejQp8(j..ռ8EyPoe6эz7_tzFSl~dBD#ߋKk>ΊY vx+qѢ~pCh"+O;O2 {樠 ӋmdCߠXc>}@L7K^͈5 T_{S(Nֈk+'J78M1Y*v&َpVTp` Z-P8%|s{dq U40VG=Ck=AJRI̜pU v)g#V>&=?QF]9CהSNZ@q,2g)BŽGbK+ UwγxJ]ZjHw3sL{u7X0$~jf?.j@/Vܻ`*W8x;ou]A'OZPGK݌ h^XTjN^0uJΜw:aCzC](7f˼ccƖ#0M o^`w^><h,>~ge=ڇ[=kG9CNhF=M3P_,Dj#̂7i/"GN1 {B(ZAF6)Z9dD ? f{P0!9k&-7\DKeBm8=5ynlt $hJHjuu2ޟwxx;IU؁]Eukt=s5Ⲛ YAw٢0!3([S2ы.Xu8̊a{vF#v}Tq/XeWXW9"ab)hʟӟǚ72n[CP EaJg)+PM[rQi2D`N:nQdt@n[ 8ؔ^"޾bճjf/ r{Stt6m#qUFE3x-5AD´ |g& z8Ъa|EvU~ğ 3A^q=qhB>Wљv^<$J ?Cpm690LzInv7wEළ񑉘^%b5l?-)XO^6d[ ,EO*{IGhsHo#~=2ozL?fC6X|ۭus4b9z.j fa?тϡk` oSc]-VK'5/G}) ]QW Ԁ$l~=@^TǾrZ4)*{Еg"|ˆFͲr4sw8wH>Oi8 6B AY#̋gi "ˢ) 3Oz=>,%n_1!65AF+a}tҗ۵\QD'"͵1"쑪.R wȏƀ;^WÎ>Aso ^hwث{ y:/ i~[ɪqы.s1ewۭ'f=ɉ)8 w=g,@6\LoNiS!/0{whIDYb7  y:_A "0[qXSϪ>ZC*LXmG3}̤84<-Kc3N5rl䑢m@.( ePĆ/hvݺThbH6Wk_hIjqlbw0V@+Ͷ=Moc= K)hҵћ:wq" Nh&|ϧhFLQvE.V9 `SϧHe)22S>=pu__fIxˮ4iIuX[8(/{9 MF%)Ox;6eh0'RKt,ԶH5|I n*˻ WѨ`K ҽTk`dW 3uWUolGPZ0VW}:lmzqsQvo{ƕiA}7H&ܹLQD*\ĞTWBZd) 䖁v6swo@4 ј FX#NC4iOrQ1&gpsz_t8=sȣhݍ`K ~CC MF O׀2}kqZ˦זkw2鯅.bA}3}9s&GzEQ"O#&(e1~wEo0?@U_m7bF.MׯATN] B? x.h[+L0 ͳ;/cB]h#Xm \9ʹC \fkod ܸ7,sDAYZT+b='*,V$]sBVun+|YhesyM_@k,ǚRT[ɘŵcO:k{!jO9&xfĠ15Pĥ6ْbH` +# ]TQJWH oLUۮ=󘫱((K^-ϔȪ (=_;ptn +\h|SӼ ]M,0f:_KdVD"[^ߕ lVM[Ipƾ20Tc4;(vڷMBn2yS HX&1 E(EW;x2w2isѴqS;Y_h3IY+4Q;DK 5836?zCOvw$'Q k/X# 3 8fn=-ђ{3}4j \F|Ta\vhIpL8{oU70bIjj}5 +1P =o 4C7t2@ 6%*?b޷ }x2T?.i#ԕlVt/?dv⎒e[)չ`'v];|Ӥ3t>9G.'# xD 77 2)u֝9a=Mg2A=kC+b_^ĥ)jm}NDKND'`laϨ ST ַ~tR T8S1 J-*ɉ(a wk11| TsPiG{//m|_Ɨs=~> pF0%0$nw:G7~!!"cL{gfyp^x | C q7 Ke!tZGL0{%YbKpK.g'@QtÒgmD#82Tv:K8/0EMJ& p%\0=jF;ֳG :J 5RˆZ`qlzvw>@v7TV+d[%\ĝ7pm|UZ2Od!c.P';? :!$o*rjh}P!~kipױ &Uj[`3.d}Aݾ' ЬttzZ*hDo$ `#rru ;4rMQ^INh]2vG' A~Ӡ}H % Iy;j=L M~D\X&w<=zg\8b$Yq^ \foUMȖHA.=I]\ >9f$ L8莣Z_ S+ݾ\aN=#&5mbR!<Ŭ0J)>ۗD6zOee*:nb‹'92PׅjRZ"`\=/C j["4-NQiÑ9VbilDUrP^VT1 ^vغNPU A4iatJ>n`onbCgK%F^Բo}fDzԾ+2"|y vV c /񾌰e;WjHWDAx@i{1Nݭ|"sRdM^h\/m}6Z"J/Aw;Y059IDw@h :٢bvD"F[+N8Bg4jZf +ZyJ%#o}n4>i9x n<`:2ItdRaq; RP|;P3 `:$2#r@brOYVv^@+݁kX b+w~^JeСbCxҋr @:'p^"iiDqQƿI7X%+jsI[цCSe3dS(L-eDq8u^lM8n^XkӲuJ׏5}~ /dxd8,OM5qgF\Ssp`J@HiB;9Yǰ0l˳{nĢΏ}ĻjZU~Υy"]NSn%k QatUL5 'ս6u4-CM J]:pE?pޛ}V&^H\^+ Gv8P0DKOJ2f: |}+a_ |4t"\9Pn)X"1[S{cdW4zyHtFüG!G;~`^p78l$&J"kv{]~8'a:<"ρD}gU(&%7/We/爛BzFZ2Ƕ}Qio.謡f]$>b_CP "r&H:ꝿꙤ\O] ߘVCOښYZ)eNeY- kO[HZfN%S񤣪`H1Fx_tA=mrNn d;ؔ=3T^t~}p<Eׁ> rX l;xhLZR9dŜDjGF45W|Z PPj ^V:`̐ႦGқ7N%wam@nL%J:Y>}A>K}!Ԃ! 6T ˜ xdZl$:Sl   ٪|t(j2GxÐE&򢙂pi >b9߽1Hs| F;?fm+>*jXFZOg*J}!.TY4 |9܂KjbP)%[߇$~-;+:ԗKπ#VJܴv%:bwI"ڝ)<e MTz%]Gk_Nd`ѦG)]#ghx5{GW8X[xƓSP2pgu=R28uߥq2 '0VXr'LnⵅZz6^|?S>j0׻ׅ[?dmx#(0E\Alpi``w\CC7.EW/%޸!>h-sd1H50ěi !x7N0XI3?z2kѰ'< jz-Հzc~P)#PXǼ[X4_/n1T`P Õ'UDtW)oL>&GO=MɃJ.i(d͇>&9{ r\??H+I@_ mĵQsܷc=4ҴH; u-MJMѝq=r8D¿:^QM4%駢071O 42ξH~ o`V7p<3N![B~#(>L3~uw_tx!(K*?&?Gg$>TSJ.u+3~lV :#܈ lwEaL*łdD)}U&N@6`Op Al&}Iξe}Mm{PÓ-c 3 2'ya2ݯs[FeEQ⡬A!+3 _s~r{UH ƦOQ)db0Y1k}^Iİ$u(]r(b'?hZ$ho6n6P`Pi;:ǀڃk!]P 􏿍"&|gO\=b9P4e;Y UqAc'geǐ _HJ?Lm çIpyB ZP;>㠆chBi54;IVnXcmՆJ%Gi%vNXR2sv1҆o@0AnQ#ڼԸ`&vˆSjdz@7ؐouFUZC؞6}|ueQ[p43c;Jcx! k[-Z`\HMsz R+B~ǭe{&71 \`NxNFn1{Ka0X"#fQЁQB*ɜԅK4u&b9Ug5hH A-$i519CQIҹTV YQ+*iiENx|WsY9+zJgJg:I6n?xQf_D`ǎW jn+nE_ZP<\HĆ ˖ݢ\,<^0>yFD(e$)Wt$.i+׎?R=V f暢ή~=0[-[-Jd\i%!3B372oq< l3VM ;cщGq|"_,}jsp~7ZC;5H{#Crm @|%d4Q!/: lYAHw*Щ5Y s qRUzSv0F-HpRo |h5'`oFIz-C J_ i8;sQȓ]q"52 _ClhBi([QYFCt:4qᅿ pf9 "g5>#FTT K^WϾ~ى{o46#걪Hݖ^GjO< +=3PcyFfhmZG~`\dݹI)n=լgD-6^'{G'h$ZGP9Rss">ߍi=QM ~/С:RsFB]O֏ U݋N!&Z(4v8،P~7A6gB#Ǒ[0tV1`+aH2}0՗ lނ-U)p-Ib}2,\_c[^G s2 gTo /RaJ{,&J'P$ml(KP^"%VgRlçk)g2q{Ii)A`ϥ${۴qTlJ .ncubg ṦR{MnL~\o .W9gԴxnr/g2G)4ZrC%h$ v2E䆤#\>3VMHVYÂ!&p]y'[m4VҞ#567r@5+zo(W3hmz||]pQ@Dl8s ݢ3z\yO ADfZ-? 3 rg!kIxS__' y{*0Q=|.5王h<4)$1Uv9#Ya!؈F4'3gM? Edc[!?Ǧ"iǜBz(s҉:byN` 8vP g v9MȢ^*ʊ}Jr!>Jd`LMN١٢n3V(|+TuXOIF%͂~Y~DWՠ lpj,O4c q]$6+@p"S vx79m^ X IwF3 #/w j y_ʣ0]@ouk{=Ufs[e>*Kyj_ol+7CeWYuҎ G R1>,9ď'BawOoo՛8 ni ҥR;C@ G{*&v[+IJυ'@S(̹Iy1pD){jLwXjwʏs*t Ϩa^üTb}% 'Y:C _vD3dlΉ /'dž~4oR럶%w ju!e'luͫ%nNP+5inK i$ (>Ǽye4BA'S S԰{k[h̆_I9%r79GpZɻB^#{ OxxPd ś㗓`w[V`hz %|"^yὋ\dooG M7r$o]xz5i]| Va|ͼbIn r4ÕA|)H ZK3Wxۜ yK JȅO6cO[Q__$?J:eN1kNZ'^ 9PqD~b%$M.ߣ)6ɫ;72u}>k],|Aʓ~QxaWaaЀ.<MRTm52by5He_Ix%]Yp;(Hmӽ7A0Cr|Lh8Ux7O\ I;HZU,sdO!4fWO@fd~^3gte5E_\s HG5CkN!a 1*nM8^`2B/ ഘ~$Q>L}Ah.`-ޛ3tfNJrfn u,3~ka`.vK;RC:jc aT(a3G8^;m;Էmx؁8ey%c|I  H\El''Z7{N77?rM \``pWp~cMΥCSNbqޘg.Do̓ 5ZUI=%@ ׶/J8֕:lN sT,l{25Uep lH0P+*%{9F0TI"'9s$!)Rgl jIK!_E16w"^4IP*r{'ЗDkVn> )uh^(UL M~ Tz`%NvH^އ_ÌùU9\RsfMq S*hZkIC4u;*yեN/MZ"KPkWVɕv7Eļ5|&y]k_ӝym L  R]~1hMo#ؠcs ^2Z(VkGTS#4SbΚY=̯eb:uK^h"'r9EI,Yʃb `!5r{sݠxoxkShe88 e{Yk-ju }):/]UG`d~'APAGQnH -odYmjɺB=Bޅ`7}l|ًe@'+l"[~BhU);%bXA$vK`JRRL _jsTb˛l0cSy4-$Z>Ly#eYaօn `tbɋ,EcxeQلO*UTk鹛K?WWxmE`ti(9%2?%jt$K=ҽg*R,w9IdZ1 վ'3̵tP6y{wvo[Bf̐/Q裬!'-4F?hx4-hP)t xǟ郌~~^S F^oq A*DB 7=ʂ9:USt^gUܸN:p/SKj6u(< "Lărp_D.h{-Pj/Ltjzx|;_-LKx9]zKPekFR+z@1%H5^^,Ꙏּ-v(|݌T)6:HDzfyd%C?:ٷTN3K8 ^RYNJU ڶǮ$={3(S2/pV⸂Th ef޸VX m^b3lQ~VO[3 _Bթ0T[Hplb<'q5k%R8bx(ڬtM~]ț'eӄơRa'WN^;mA"D@oKysa0c e@pIe_K*[&LL`*E QORqD޲.h 6)`sf;($Gd& R.mz-(x~k }ᢿ]X L.Zqoa\42SMyrNx'pabE[1>h,NPS!hDf=$.˒l"ތ o7qg%aGQ0n8cpiQ Ė;u*/f5`JIæ%,=,{mYJzWW{^ $q&A*4Z[T*8]DQE xc f3z1V,ف \%DNQΚiN6ym &:~> gu6:;l?CIQDphn=-{禮K{!2UY|ow<$6GlOӢrbgoPgR J̪izЕmtXDusuaߌMU!q.gTFLcxBc(ax13޶At%ԘN[K;G ,1bƳ; >x _k-C$̯S[NMc⛓ɗ.&mpbkaKK{h`&5l6 ,g"% `sAg঎MMvԇ6VSClwB]9֓1t:r')>$Ya. q*w.QO %F>70t)l'lr uwVup4yX⢴侵/(Ev&{ZvP>}_?*m(wW}itxLn@zB=^0wW"ŹA [A\舾"bQ ,NMd|Nx覔cYfypL"okS*&d1ﵨϬ4E񋵚!]&v2vDy~0 n_o!Ղ(ivx|G71zsq1;f9<#v(~=jTE'k%|3<"?x>a=r"a['#'V$ɠ3㹠`fs:6 @eiί~ гOv'ܐ:%&p r!D0eO_84$! JH庳F#@& D0*|4yECUVl)ڴ9NAS[!?(oJF/Cצ>k5w[HwRrTX3M[4He3.sezIQ (.V́hIK9Ofu~yug \E, )TIx+/]c $sd5ZdD_uO~Y`Ȁ\y!Ƈjޤc$ɑRRzN_c(_(wHK$ҁ!X xEK4,`&A2BO=B%-DڅMho h;E>ۙKEk.QWcġ^[P|2t8b60\!Ģ'Уr3l t-ϤkD swtEQ6XM-aippW@괃Xh 杓LA^5uDpHKBR^)r@ii 821 H JX' 8g܀~+b9 ,a"=X:1I6'73aGIƞQP$ʎ2=y* 'gVٌwnB8:؊=m^O6h1sz<7ۇ0إBA'| vL騥h0)#25=TLi|R"X|y" <:5 yH7e% v=!tJCOJj|\9ךjPEx5~a|a{'-Tʓx"`doN߾?SD:Մ2aZ mu\tDhfJ\Y^$@Y#za lIO0*+kG$nt{/I!+J")F)Is!sMm܍S(x$.B|w9A:jJ-f>MB\ :m~\K8ٰCsSb-߻^ %^`AJ&y 5CL&߾w^7?X홏a^y=NÙk֊FTO-6סCOcʆ\Ɓd NS56rj̖L_`` |fO(, ]mKA1^ڍ Ge{{WZ*"gP>U8Pss:]Y]#zTJDQm)q:byD GENP72ܐp`e7_ gZ[g6+)5I S`~ͬd.j[RاKjj?<-mhRBRNz8ALbx1+(OzYn( ͉ H) m۷Lض]30ISH;d `mC٦k{\n:4\X/jrB0&}+4Fj5ZP%V(P]m YY(Yiv/#t/XLZ ]0]ZY5'^F'-E1pJ߫|Ycw襫xUHE >y&scwQK-{߫+N! vܿY\8*Xj-P+BWJVoX49a ԍ{B0B] i=]皐ڊ:0 >؛1Sk})]L<\A X;M \}?p9$>3kN]|pbr |0B0-DM#>hhab,tHqM1WOw25 rnaE},*Tg>EptG$=f3H¬Q-mZQcc[ʾ{)fh9geTRXF/O+cKaA1  4G[w{`x?, QO; YTyZٍ}q5ߓxNg) QZ]aR,Ig%uZ1ڲtXHE:Hf hD&9Ok|Ls<T{`=H`bx%z~ ^22cIz-]Y܋g1dth./U]hpnxD^Zhn{;30L[Ip;x?!EEN(0a]i}(xAab;S"L7J&fv1HC= c ˓r-Q k4Q ݑC£gۨZ#LUga"(K7eEqu _3:vŷI" "4y24Pe`0\m%V|PM}~8s gW~XDeN:~n(?SzyxjTr(-q$M<{?~XDq$4%][:AS?C1m@zb0z DT<55,B+z!Wflc2V =9mD{,\mH*[mTA}v-NO DY(V: M%n?{ DY{zh;*c\9k{(hY?F`Ҁse(tOx{gFPڢo{vX#J0]c&otyblÖ*{^lf6]ayTbFOMU^1cfumwJ?UYMtXN-G3Ty(;<p ,,G|[)~LӁ@ǏCKhKԱJŧB0rqv&M6J?ELUS+%`HH&ZZN=h0GfD>`P-A&pD7xJBI'i^ٮ/L}xk+v~u0R}ƚmmЃcSlENIptǙQ w\ ֳ9¢oVF$VGWrYJ/1Vaͣ5?`onU"r2L:!s!G'^N+ֶ>>3~Ni:LkZc#c@Lu*NkPCCIՃ!x @t@j\Sh a@.%ı,%hO|26VUBj6~dhy;=B &N{:2 s"7]: 6,_!Z='kw4]1y#`G hZ`R~Siư\} mhۑ}fG2|n`s%" _8vq^ʃ!#NH{-&9zo^?pX(7ܤv ?*n.L[ɑBmw6`yd:1"}EB\e7:ȣ8'9T |xr҃kU_1l+k}1] d"/ƿ*,jI%*IF ˱Rޥ_̳ f m|2I?6"YqnuL/iOR\c^EA{?Z^xdjRphWgS48dVj^ )>(uDum/OUH"=<<Đϣ 18: 0l*1ܹo%LMDoF%FT*Ϝ[M*&EWv j&o~1CwqP6P>gxR`*O~1azŦ`+*ej] ͸R.SYhCݒK!& ٞQ(VY|tsHDGWi["z& >Ty% OܟAvW]`GwݝTMuLbiQŮzxC=Ʈv|۝]~aڱβ*a17)u ^j?'z򴬏͋=D{*R| y4dJP8l=@*FM~rkO DM'pX!_՟ӎNlĿkl]31@C_{z&Jmok Ki$d¼ O#Ju`Hz@xJf:븒.tKm?B"\nӌ׳ט]ml-7Iy.2 7O^&vIؚ0.~"mOǨ: j1vola-W9Cw<0Ct0Qdi&ffYp#M.v@[8Eȼ~5ܹCtb98Wd }NƈہѽdsiPK1-ozYHE@.)`%}jꌹX,Y^t*r^pedQR|plFr@M &wݪ_r5X:Y҅XgD"Y=A'0vna "YAx;^Vˏ'ya6 r5uCצKq4 XT7f>ӏΉѭ(E6_2ÊʋBPU1dn爗f!_n% t"n*{Ο/$;1s|9'b*3|0SDs2j:DQ!shU4 px\cӐ=+M~sxH-XPk7z :~C[I|Иl!}wOClv޸eBfp "Fx|[ QEd7 9,ǏP6z17(7\PAB\ka韐f2<4T~7&q T`ʄ $g!a\ꍹ pP鹠ir CM֌UHgqEcq,`Mp5$=2N;\irTg]j$IKp/|AJg^\W!1X GȃIPѱ*X7 Ku+QCjݡ8m]TcDm_'eR,V!1 ljcn|?Wd Z]Gt8im|@bG6]Ÿ2 ZıtM;&ʉ.os-v;[%hS&1qEwv8k@8)"S?.U199GHm HW4'ް"&ؽ.a)`$fJ~[4rOgL̓q*ը1cզ.q~5W: /j>fY @tES@iM&Si8)Q1dB2K뇌xE׷qGDhcmpe;;l!5VP U>e'~$&zU6j@dt"/RcZ%RR,/@\g{= E]dsS51I'{=]#ft5Z{`F\5u4<>toohR |4&mfd_RZ3_yb>'lvS6k}1q}v;\hc[c +S3] Uz忠F%A~'Q"3u.iu?'% :|jهfup8M{1D'Jf ^sLqB@l1~-1*6a"Kh;/PGa8[02v?fJ3*oetKWŎlW:%{F$M{ڟc)8^:&Oe qmdֵ%wsj11ބ_ХF'[PYooj@m}X NޭR|̻Eo4S48yBNJ+gy*uK*?Dz|,&j\{ӘHH0E[eyӨpN#%+ܽǽSI\ ^7'8@2%킡Կ:ъQ3ބ8ǂďk\d!~%윐UǮ_T1Wj455/~(qG"v S[LZ37 L Ξ'MpT:.I U6&*̰Xfo'5(^|lzk-m]jt ʶ;kYetntqM|x6"*N`a#3n-;l&`B]D]t(hmK댺g|j+˶v_PÄjCMN(hk|#m6c呅`2˟3{[ R""ȩKԶxӤ8U+G,>1Ƕ]d\ag@Ic1$3ثʔFdeX~GA@ *35Ջ`W1.: Eb*-sidM5/mL.NJx3S-6V8 `r8ΔF(6̲R'a\¦ JPaW*=PPEEA |ڡ$`0I B!M([-XL=w2楺mHu }]Q6]|~!G˂nkĵ!Ab1;;Ds?6as+bAnCs;$2ۍ+6 mKi7gC ǴŜwI0Jj[f5F3a))0fN^E54qKHbC]39v*Iu@Ʌ:-4Uɑ_\>w3P~87ogLI&u҅Ѭ"mr73sFg,BFr$Era+FUQ(.eV/_nqKngaMGyE$^oה2MVbJ:,c]yKq1x SԢ7Y!-"gQw^|}YlbdD4ڊ<:je5bO_dZ\_)7\vF+nofZvNDvJG8. N]hAĀ9Od Ր'% dz)_eEbHWe%]^0䡫)`*/6-MzӶPKAQKQiBvg"/7ěxCȕ!_RB8 7-)0I/=[ =D6{g.hU,Gl0a8hxNZx(N#j#*)(cQ` ` gHHe|CސL :9ǏSD}w2]4ZOU9|ךWqSI䫮NAQrp/~HO UF]GW>K˦6T.1 _a8Fy)YNxSI l7픷lnJz5q1>p . ?x {˶>-6NWVs='+ƈ5cvGfy Oz&\ꩰ8N8}6%Ul<ʜ0NA|VJG.YK@m xJV)4a{%2#M }W1:h]7P7{@Bgѿ |Ye1'q(%^~ %< +[ JV_E–fٟiݴVCd†٪`P籡`;Q 7\ֺ8KSB[-L+y Oc#l,bf|L{};h}}ԚI?a<Ԋ_s6C!Ɍz 0 an|ʧ@le^{#Ah9O]ʆ-wY(o!}v=RD֌2^q 7瓠 p%E֨)-5'5M Ɵ?;vu?'N>MǦ=4^Ę66+ID#688l&\_h($IyqG]̧o8 :)(ra 2u"tK6ϓcB-fFjˏS_Fa?)!JsutdcϭQWqܧ;k"~ڼc,4:>876HM'6L1V5aHɁic=“6"RlÅR 9[9\X $dmlM4;j ^a_DZ!jٕ7/Fp3@ hSh~a,3@ےYb+ BVD% K3?xIl'p͋IģJ*,K?_1B7` RVU@׫M[76UsQ̥jIG<mQ!8"FrJ :+oV肋0. ;3"]jOãZ ZF/'jW2t2**ƒ'BTF,԰ryZF@5mn&P?$ȋ Mv95}+I\~ Ś<f.Lz7P&o> zQi7:;zxD܍y?e}b *ף@f7sl'AFPmͤ|"鵺CP<vKpC0_sʳDgJ?ч8u[RFH[^̤Tdvβ}k ,ػLejwIkv={xkN $G5t1@| XàtŒY*ht~6R!z5rѺSP[W>5 OXž$ Ew7ܚCaMv O;NuJg iˊQʝďRqu'E wвn9ݥS:tb^Ƙ#X5\-I^j0=@FzIxc`PW\%5t$ 3Ԗ{3R!p;}F{܀ i qa ) +%˜9Z?/ 6M/\VA.좔k-ETs } WBIW|ɒ1>5R{X́f%4 &"RUNAX! U8x՝R>+8$u>Oi^@D`;"au5(]d)` ̱!f16W^븦jp]!R gs'܌`Gzzuۗ#zѼM2D_&$Єtùf=Gct$]Ǻ/yV״sg(xPW4dTQ2}@|T=r_690sfhYد)ðZ͘ meb{_,vHDý ܱӡTV'^831g9[ۂCkJ<ܭ^Zt`D 3 ю{#`&X:.ۣDO^#%oeSh_"-=ir1|諠k6&~-{SCEKf#Cf>iFN5H3EJhiz5pVc_C0!3, e}ݺQ;?LH6!&- ~}U僎O/n\>/aÛ.ăҵ!|%nb"R8Nm0Ưfg5>`*ck3H-YہT%>- 8[w+0_:@knpR+,]uzz^_F[֚p10Gě5۔ڷb"]T\ |iPvmYjA \-uY9&Y'+j 6ƈFt<P-ڥT%5 0r:HCX}{2Kcf_jaݘ{F[˛g#0.e!j]d\h.EOC(< ϭu ]3x]g"̓*i6A貹;\`/D !CHyV$,A6nsI bHZ}Kn04KPfNJdlʾK~b&LS\_Tz<wȎ=0` {;8>`~%ªQn^=O'/-^CNF+bE!UHbr,<ՙCdrV.mzO|'(j)߸5]#ɺ,#U[y ߟnL\qy9nLcx2p=d$,SJ o4,mr>'Oϕoi  #5jK z _Kq"YxI`A$G!#j7]9di/JfCbF_XUwBoњk/Edkr鯊.Ju?#}'xuj/B\*Yx5^O)6't77 S.ڭi Ƕ$fbL>a`ehVI攪%BNʣ-x7e0/sAb12;y"V@3M'@FWiFOO5sr D)gi4 <Un囲 G6z?u,]$ 3!#Sy&Mu;ɡƅPzo/^Z/ݑp"n4>uGaP_((b,ܠ? SCkcK<ө3IEYZ}\(kj$?dcQ:6PafNUuF{&S^XÐ4u9}dg pL#| y}8_gԌtr*v}5..fR ߤEC}(c;@\U.q8{Z+|øU$UBsܔ'^t}Ą贶|> <:̆k]"Q:O\^Em7'ME;p9 m_.!pbi>( P b<6stH84\ b;'Z12˳Hʓ֠)6T VzNpF|1q.y=jSebH\2pڎJݫUu(PBdgDr:_D' 7bI:ph؉^ mSMUdAY- 3:F>)kik}+FRZGp7d; Hfeol~ Wq6gRss~[C[,SSŗ~dX61ۆ2Sp,5<; q[t*=9DI&^@C@P)$~21>nB3|_JS0jG2x4#: .e:$Bw%O#7"kEKAfZF\rXs `+Fe@l9,{ ׺?9&u+5)vM/|\b:ٝnc~Aގע婳QE(0^e/MΆc@(؟?nEVpF8ܽ<;©WB|EcƖ>zMTy&pCɨ :9$hYC<$;4ԫt6UZiRE]-ķrt0Ntlaب_tm7^KꙬ_~5 M5.K;ߍG\#[IMTD۵(t̶@Z6 SZ8;?Q10HB*̸6KZ_+13+F=Ȕ. A\Q-&Czj@ *tD.Cuj@/,(~ܑ֩ xͳFk߄$,`3@a. 8$IL_4X) 9JJcV\K2Pc#X#>w +ArҖ.#$dNO@ a}J7x.jQ{TQ95@%`ս~q# G]G OR%pg%۹,<C˴i}!E YK+9"sI- l:#*=kB31nQaU8X1Ȼ`OE2BY((R1k+D@>P%CM U4w >M^pIP-P*b>g01)*ۚ>iB;p5=5kO H6v|O=n"kg{^,*;ْ1J+sKA[s=M2H@@1(,1 WS ﬣ"<6S<]]ᗆ/ = MEs(ݿgS,\^5# sCiT/Mb)^fzT=o݈q T2z:O;XE>ƫT܈c6./"x"A\łN[ k;&.K\ #`N#GؽA' \HwG!I/uo5( wd 7ΎϺ:/6PDmn\뱉,DCB6j<I|yU&ԭJrˮth(8#W uS iK27ڽvs`{}ymB ~?h rOl\X&FmYkV/I.TI:]'[_0tO Bj!p ~5huB3Gzh v– QӠJ\(ȐVl{X%k_~.C( Vì2ں-4^*`.\sul?n/A?FrKɷe3GC8;9Р@|BypZAɗ&"H|(8bLqN(]2x19~:y~1].eޛ `<@_+MDSۺ5 UNG;xy0jCdVH#1{ y8` b2]bI4d~)حfŚo2(\a :_ VW񭝰Ԉ[ܪve'dRM'v@8$%Qi ^>+a ]Q▾4ge3;@ dX6X!D>;l_&]4YTo$cߞ-m3a]3Ȗᯫ =\+b; V  *QK%ys|,Dpd" J818SGG16x)GNes r<_[R Ch rPLJ5$IeT PgUFH"Ot8#/>rpG܊Oxр&0 'Iizuus AJ TR^`:CczD\mÉt,o@T̏Zf ?IWҖ\ 2Oq7#\Nqy$,e"%+ap ZECc#;af]QK"}OоU<9yBC~wV!І1ol+)ocKRXK`+6:cOU7\@՞fCп:섙 Vr1R?/+*/<Q4~|#u"Mhz-( O^l}г1;+Fœ\c/ɑkd>MP_12$ ;,^_o]ߵVM'`40t2P8qԸI¯!Eu[X:o]( Zϖ/J2$iHt@]WyaqAS9Z\M|߆~V w:ܤ qhLw@>P9cS[: lnq_ӻ&p҇k:xm8ӌ[:4gemHă>]wgYL3go2T)?a)蚞%LxdpAO .•@ROpk\)s eaT֬i6u^/5dґ(s`4QU?yruw@(Ƀa4sf`!2rG sYR(18@,׸"(4rſJlTHeߘ;eޫ69zqϻ&k{V'ؓ9IFm`6f-Vrg䯰Zd3H6"IFhT n/p&QON+1Ӌt< BOH9b&vc\4_:3*5.~% wTbZ%wV K2\W1o~!C){ŏ!@"~MVּJHҢW-,j2 W} Џɉq?$sG zH=:UK{tQe$quOY $x!9L xu[:DDVi_|l uNTnBN˃29;,,7l|*/)[QؾGC^&rC00ݢ5=1Cܡg IwckE 0G/ܨԨ{,/+Fk}hZZNe'S#n`=r,EGPCOˍH3,kU:Cy_(%r*D߉@5=x%~-#L~Ĥ̆oWu XdP8q X`6ͥbFZbHG?t57C=۸̗AFP٩kA _"t_P&P[Vن\A'I5[(#Jٻj}s60M,+P~4t+y#yynmƢ, f§5Av8`اE>0M/(’ad#d3U 82 P6$:4RAaJNOm}ZlT(Ϊn?'L" 'h%b:Fl+6yJN6r_Q#60F=V {OhQm+| %bB}dCI38K˺Qb%o=~f^'cn{v#w-7XW;X2tZD:t#ArPx(ޒ-Sh3` 8JZG>+B(N \e." /̟m. c6HW X{۠,ÃOoU RR,ObL"c+䄹o/y=rxzXu⎊Qh`G\Q9 J>vQ8INEqcp7M !1NH^0  \T.'~*3=g{4&h3T6'lk]Ž8BG*_Skue][vҠmC*]qF`˝x~0ik~Il;¢$(H?k F\Vϼ]AKz'(|kڲa육>x6\Xj?H kYhBWы|=$Ba5 hvC:XGg ,vﵚ=׺[nNC("䱭uhy&Dl ؗMH5 ^07os>0޳n:B3V ; 645ZAҥtL< e1`t)*v .IхX/(sb4k% ݗz| _"„cN?4si_5|O?(9Nt "(%Ou4̾` Fe:ٶH`e%Cx+g笠`JOVBsp-v]'1YQ eHNKmQM~5~['sdxF`Q+F>)'6cmq)%R>z娺y/,(ܢRkTT<"=1btu 'c㾢h:TZ }5Cp-Q9R>BxB-pY~w}lъvR̰<}!<୽? foĎBɟ⶜UCv>8]ySB/ 8m%fi\]{T،ߔuvM^fH]*ˊ2 )9(a7 ϔh݉( lkou P"ٗZ0jvwIK*PO؆x6|[3r:4^>~cFT` fhY񎷔Ҋ f j-۸V\GJ#%C  1?sJ:jweqfwQ@D+7faj(}>ƒߙsQWjn JX*u8X|BȕPuN.f(hxWo_t߃%^I8!Z6}.=Eɪ 3 DGv'Fު~ ?C2)_L\Q%^]=j h6O{"n]Gueۘ07a9B|W^|s psReS;OO!!imH䗯BtQs dL)SgXmh|\9=D );ۼ+sK펅OYLWՆR7`CpN̟~7\ܐyXU:f82&gg*R]!R:-@W#X~g]kWHnG.oi1ZNkwOm9dĚtXR_R-:M#&„L}fI֎s:,aqpv0СaMnw<2YE.L0KGdVC˔'}yXC*|*w4MԨR #w<y,bJJ(oNUЧN2`"q]Aѣo?f(^K;PK4֌?J+ ϚP+yzuPhq#G2dOAG.'64B0R`( W0"QYZ-ҀO ߲ȗ(9 Ί05K95B0TRuK@n=DT6`NBqbbO10TĐM`?9\' gt{b$´bjctTԳDVHmDޑt%Cm AEf<=M>m5`\1ݹ[j_t5#E f`4Î)ҎDw?SUV=R::׵ hɅ*?yQEcsjv-k8q% nNIrJ 1A2{}W_6/{uoslfҜ_:_<2R4 ΒO֔`X>&~0!2kX3#k'ڍq-ti&Q<e~:vx{";7C@ ]LW C`qܱ 5ԝ`M>)Թ?gx^GwGa+sJF}^M } PtY= qu9ߊ4fKx0LВ(h rsڔ㵑c[Ě4& Ex.kk p.徍NhM]A+7E{u5G.ZUms{B^=Ĕ*ˌVĥ/wc1ikF%W$Pbʕ@mBxa2MexN5(L_^I@Fz,<e6|y()gԥHΣ|MEVgtGٻoG (~$ 8F1~C_8ϑ?Ts [ IϙQ. `<黖lVZ B #4U߻[_ʧZv?nkRpm+x#4s+>6\p8TQf l yV"wMv}Y<<5aHYynP qi8҅Rb 7.OPޡ#ζ0}\B0­O%pmPNm2{ն\'ue v$]okm,* )6]YZ9= n:4c407Yk-^i4PK8}y~"]GHq&RT._LG7T:<|"V0CncmKDq}AtgӃ]poJ %Nwv2 o\Cg5>@i5O:6Z #PBT)D{#!-4$$ _qFS> 3UзzlC6EE?n?[鵅^ $+)gYae27xXeQ.{$)QW?|Yv^K/+5FgK}Z>VۜiU2K,7}0 YbAn E3M۲Ih3t"ьNoZFFͰP],si YKu$*DKvkWtrlp&ZHP -m1P\@*-*dL&Z fej +n(8);A-)kyW O9TW) .Y?Q h° lg<+֤i6QĖVj ۑԫ'W:R0nkmL9>`TMH$rT:J+a)8ħ1t^ڌɨ =Y苸ͽQe*xX$Cfu Y,_e'soݭO;f{[+<ҏX-5i>iFDG/{l-P[n  eQuQyߘ<ۏ<"y ˊc! [6p ->L: =+F F xRO q?9g#6[dvՉw#,6#gEFV[턆@ASH:] M$neSWWwnG@,.SR1%kÖYJхE WU78$;Ԡ@ 0ZޢCt2 3 b)M|uxNgһW;l&;^^vȼN'º~9-5dwSGTq+IjeA;w^v0M|>Ӣ]dS!jFusd#%,$]OVS03pW$̀7C_F̨Fޖʞ?2aeWh\gy\ . #snˡm$NdF@qVb"nM><[dYb|71{etde6/՝ uW@`sgvG3fy#Nު- ~Zhݩxx-ڢ|vGFy(Px'RnFT3!0}A{$wg4I?n:W{ Z9~I.)˨ڗ;jdǦ 42b8k\^IFcR\o4Ѷ<%5l6uw,&!h2Dn\8Y8݊@$ \ڎ`W{v-N}9'~"GwL x5B1@KG,_c\dv⺅M++'qZHH*LI'~@1'lڕ03V6цү>QI}H؊fVy-`x>ΐ{b:VPt׿_yzV=l(@;"zy` !K;^UvIwE'@ΉXfk#2g%&QG[S>Hfm?o2qX(AL| Uit7^)T fey# (g"ixx l>d[;*`[E{ U,~- C~%.6e`hڮ~<, EdbMB;nx^X9pɣk‡oU*`}4{oj!OpTX u~,iR Ic]S"{1e ͙Bb^24Y`I\F RAH?w+J60?UBnLby?3"I~doS>j-kk|08o9=˹7:W$x1颧bMo)Ƃ̫NXdXh <lJ5Jn=/Apf,Z惀 DW[d} |+@9f-g~X?ׯоwq^JTgqKL*w8Qym4b&F R8jSi k94Jm̑H ďHzC0z&erqbq|bU)),jW$"he"3; A LyPU]+Zޫc oe-O a(,PO2&M$u9(B"A9f+ļ_ T0qh٧z~ a{+o(n:"4Te8L)+h(MW^6 t&lW\fZzb4PUq|fLi2!/is׿hR{-\eދ2X;¡QwGjľ /l֓lJxM.XuKlXs ٟP)o+P LYUO{ EL"x-S>tՈeD0ou1=0J{ۜiK6*Zy~V ,y9Uھ8it8kX'ux?3/([EǫN'x|ggT).-輴FĮM@e=F>n׻?鲯D7E-XhF?gFh$r."#|DAo+e@m;s!h1\T,eJ¤UZͨc/\v#?:d"bOepKr=]tk֗ 9=]]\Va1hW$_FhԬy N1j w9}zcX` :hކX jr&{1N\8*d c`Rdk]=٨%E,_Ab+a8:B~^.)Bʎ4^r Ӹ\Z թz$*{*@%⦴0 TJf1̎ Iʙ [_hdVHjp;'+Key(P*$_ų#,d|g㒓ILFrE`:so*[I5"x(q$m3{uj-!PmfmLK*y `B]9c^< M:ndb :{ g8JGxH(a(GpeT0FLj.|@`1vя15׶H!@YWz0scjΥQxD ~=ڑ%b q8&λNp VBl`?>PMؿmM&8-f@"K Ppr@p* P'kbjkR:O1 L/=v]%r"ɏ^20rvЧZvCc{l +=qt-yávk}D/|(JbG7Dãzݝ0v7q$Ӻ[0@:l7)`1LW°س}|.JtSJ0E\5Ǭ}%|v%ۋ37ѐqTQS.]dPV^Cy$%".z[baNEp^`< :;OvqDL]'~+"Dl="rѠ(Dd/c3#QT .gq 2/W{]o fΟ-+ 43KN%r筇P:?n Ҳ?dyD+3!rh]/ɾ`ɞqB䇐)F@йu?kV1|R"nKT}i=ؚ|&-&O1A=Ayp-ohWz/iz>0^rͰ0Ʋߚqn$. !7MhO6KRyp EoGQPM4 &eKȓ;C/!.$jr|_z,K o5fh,>L-^Zx ~Mm=\`H+V y $sU[UPQ/-Kt[u Y5RXf6j:XPMg=ɭƑ$lUU~x㸧fCI+BRGRz >l/{p[ jp4F6#x.s+5(oۡiDb>)`G)~R%Y.uf0җ$`2V 3>;74F7Iۭ]l̓9@^fٽls4P׷ƷVi^q7%,6\ ve xOYgyҢɐĩEL rX(g9WI@ԣ#e$i=,߲p6Vx33O4W_(?3-`#] dúx k?/Z(ՂqtdVx)OyUbH~̮ל o67N 36k ']S5AXkq˞ZQmg`hr|} 4"p <}O=ҕ/`PmH5!y +wF FLŎf-r]>NSBtdS,m?+̟ U?cl-h~g7A-ٗn',\돫lR 3+y:O>Țse@Ą.%aO, ȵ_o%!`㽀qE*yCm]<`+n#.K4Jq'5jP$BYRn']HMU'v*}I=(zkT6\HسKx}iR e4fR0x6[l"#"ǂpFf 4G#\{o4+o-{/D0RvX>0@ l\ Op⫠W'#8PK{ZHg˗A5:/L{"+) J î33;œɾk'JqV\ZT>NAb#,?cN*'ކ[*#" Bߗ5D(t(F)a#N4d SV0Gb<( SC,:6upaʼnS*SXW>qSH'O!t&p)Ƙ*5(-7wy'Su~߻x4ۮishP<;Ujᯎy9+l~!"_MhB6/yZyي"Y$cJ]U*dRT`9ysp- Y*(2b%{gb0Cg5FW1\D$ܠX0 2xѺך¼ឞ̤RK8Wh2+ `gA @ZLqf 鼌x7 4}Nszz^G}7DsL.ы R ϬbH߹W,hPlGqE4?O핁|9^+, 5K$DŽmgVoUK{u2&_Hğ $qF=g2X[[CᅨyĪcy`c[IIYɿ %e%dĀ^Ijh~+A res\=+r ݈ۡ"/&~\%Hi'#Kl4wzt|/n35팒AzQdR{2.bL}W2 I (Ą: 3k:C-=2 ͊F TtnU Mh 7!Zlt?t=Id`4m*Mؽraeb[tA\ }e+^\Btm#)_v%$GLChp(ZI,G2̙ą7{hAYDRFG$ DIw׏$y_54?${ǥ5v4yQ/OTŎ.0vw+!f`sߢ yN c43 GE"ƚ;-(ZA=ZݤuP,fzS;D^ v~"pn51ؤW#ĸTL#U xgeUjj? ba`ꕡda)eZ_8BH.  ~]vM'rV=FwF7  ^;k7A3Ev Z( KV/iq^9T-*F4/.q "<2:Ќ qW "?Rhx(P -5rHz8F9Z< B6e&!&LF>cWUN l66dIbaܥ;F/mׂ4[I9lKlbotQ~yYbC'͎OD29a]%Tf/L k~עb q'BgoTt#/A=h/sH諏 ^0LmHUn @&m}~pʼ?a.w+C&dd )&ĝl4qkUdF;ԣnE4fڒ yס7gXFww7쿝m'w6 `43a Ⱥ5iy=6[ذUmU<,Ԍ5fh]ʇT(X4Q}Up+tM>n6:y !"|D_*' ܊ r%NAw0 P rE]l0u5k e uIϲSYzxw;=HWnKY_(V)VO#ޞTތid53`ma# Gl8)}1hiӻ&VV1yӯH-)K ֓rQ;c3'a^Vѫi|b`jksj&ߑ* ~gS!z:|xjWl1_ϊ3y.sqx#$uZ6YYm|3+~ =ܮx'ʜa}^BWM` NDNo`JrD)YUOQHszUȗ@LDʱgL8<#)tѺ)H0#$$%T\0S"=c!AGp&3ce7$? -a(}E^r$W ^L|˓dd;%.P(AoT37Bho=FdaPyI+â8թQ_TA0eضZ.VAHĪȱOW|ԭ1qyㅏC!]O$:MuRҒR9!W )͂S>ɂ0 ]K=A U#KPDb`xMK~DߐI ,uŤaGߠӎ_*vdyx*g6W'N^?7id펂#mh f1RhWNz`ĀS||yc:7N։]a/тo%>fʁD–CuIS1\b (Yog4+^ ^>geA8gu: <چ+W8\}'S!Dř`JeGK_ x@qxqm+*'"Ysm LfopSHHM#M>'glPlE`n>N~W`t@% }_o ̝>_d='^ET5"٣C[pf{m2XyS)}` @틼 (@<ioTFudg_|-\\0qτ rTUg.D>sҜS ޠPٝȪ4Fߛn:YE=@""|ZG^pB`qy$9TԌZ>%s8:m_OK/(!?03.]Z29n52*p3w\zJtAX7u=dnOU71O5k) m344'21yzs4bLѿcH.Δ:35ںhSإ*|PE3_>Lggf@ y /~z땈Yeqfme^_Q.PΑ)T;';NϗDK (IbVԼ>2-.|rgWЊݑ|g՟++'UbjՓ}v2AY5=M5q9d4\3ߣɦRnIvwy1tr,͏ۊ"1m,ߟDsXY0 onq85-^5^KY`lܯ g9 Zi .H\lrJfC]~QOvPŃo|"g@ 7c  8MD,H`Rl0|2'4﵎Nz7٤8LQNgg7X(zfIHfX,b@}m c_*6{8T"<0~64T`G 7=4{튊Nbbl镒ɲ4⊉ 9\+|yY֟ou $sl+.jݤD;0)} ak1T1Ik;  Y(y@iTPIL?_ۤe;P ^A6UJJfv@"*qHD1jku;ܑLLbۿ/~Y$?B~[^oI4E=oHATSDIE/YC>H(Q_,:r^:u2\'o:wyD3\Y㘳z:C/ݹ{SUJk;iŇTlۙL{Cݷ?em~=.YޙS\y2E1"*jL~T5bV0)ga󠆸Bo8!-Tg׷봯v~L]I^U2)G>5y>-eqC)?e`SEO5AG" ^o2$ ʗg#b3>.#qɌoE:v2W¦W+!# K![{r}55+"NAdl {.?LFWnlQ89+r(h>BqZmuN& مfϓ,TO)ИltXЉldH?q?rNu9@ZeZ)$9cd;_TݼI0 < Ѕ1r+lѨM@')D4 }dQGrLwl]R tX!;VAs?4|Yϲ{I>.n@RZLifQjXQ8Rh=Y?06PбXtritl]fh wxO `gK;ޓ bwUTޜpy9 -dR_EUW \Lu~Yߏ ЎL ֧TNeS/;gNj>>wKd[7GZ;qu2X*x!)rHpB8ٖR._T~D۬ ̊^nͭQҸ+gٽօ6Gg .I֨PkGT{Dn!^ĕy~̮5rBV jj92f,ZM*فfe'BcA4~h}KRVܡ59z[}ȓVC*B_& D2ő3pWSթSY@ ޫ 5ZOzY"N.٭!Cpw97 ?ơm2C,$i~H ,"("Ife|>s|g1Ǚ i<@9a$4b_XDm27RD#\_xˬ x7/QѾ 11 !\~]h#ŀp&=RFu6.hR(opwf^uHI/K|UT] "3gˊ¢DjZXs%3_նnj2 8Q0t(o42@5~I]$7<$z}r ojZvH`,ڱ?ިOsZY)L"SeS9R J]آZYP1u@feU-kDߪoK@$뤫A2'2^s@ẽ+|t8M(K:u/7|7 rjN< |K٬ 6= erV{2EuӴLvZs4]+?0|䘢ۦ0a?Ycbl٠YjLc|R9EE9E;7Jz>N;( 'SŐ*NUP_gtWa1$`Չi+X >z<,9yIg'*OCRMyaf`o {pNB,%)i Ӑֺ#B ƈѨHp4>J(Kͼ,D`@UQE_AI}|jOa;EtlNiha-Ÿ{]]BQu2&/=}Դoy$i{]/x.0Apl$Wmn-%uvC}̙lݠur3t.px·*:Gg/XvIpJO4Tוb2O˳2MiMz%5C%gd]w)X,hP:#mg~}ъBmzǖXd6XPT)@Qc2b i4Ki9.<)ߔ5ij()}YQ,A IHpe<tT#(X+nNʞfV@7%UaK&?n*#"`9wp9!G y|5&I3ܬ x_TjFka *)I@'{$AbpP>gЖP M2eW|6 %P&6wJعz6 H&陸՜1EVn|Ō?L/.wS$^'5(` bڪGw4Nήz穎䋗NLĕO]g81}I?4l!NA[b.Ø,hcx\;|)L؜ۦ &@,:ʼn͊ p>Cgq|w$ .Hа$, 0iоU$1bVQὐү-c@KF!ǩ:rd_uNԼҨ8r(X-¿& ʦ b6>2o4uF,Wdga;ƀ*̜s#^r I *c%RfԚN0 L~0뵡zӢb<)<+U (8grȔͱ=U`LMuEWc<~M~cX{.1F23G&۬;Vgg\_x&vc!dzch匫n. Y,cԲ*O6!p'q2򇗺ϕpu5UhJ3B'r}a :b\?\nT\q+ϏB}[;*PnSW+( yX/6~ÎumNh6vܠ7V~_,Ū y%m6v+LR9a~]묟BsyШ2 4Li+:*^xOTއHi6PŊ{eY4kwz{i۞送|\^Pm+ul`ȅr&ML،&NVjc\}pynbY>F鴓 mBVsRjNxs`6;D ,nUј2}51ۺ!f6ʦ x v_m\l[oɈx0Y,rfP!adEˍۻ.G93%jk=D3Y\KgVtIeQ`#W!iTV!r \ vcq(! Imƚk-iUSFQcIH:(1F盦73e_IxNÆnӐfJpE5 #RaYz0~Mzn%\xQ8.cJey#p%_x_آY6mV 7SU R mGz ^ CzA'I9 3pn')Nr [Te'K*u,yɐM'N{֑%w?Ydk95{ϓV0;Csc5(BhPHIIWw =8*jCԾd$:RfL.Fi)ӿ@c}g KaeWr6t ֓ uyq=%k49*M Q\i'~wN' Ħ ?_ \iCnҮ+%-Ïf{nIxj?=O\42N1@Ձ!'R`}G9aCqAq Zs- ;CY5O}A BG[?]0 ]:Y5JQXw<_ZM )z :*JϡTsؿd5&< evޱ:!KHCex.|@x8rʡ̩0Q۞x<[ ^Aݿ얄(g+ad^1`gvO8=l }h>Ô`T;/c KPG-{cG*!iL Z*?q@/%ʳٜxJ\˼_A !s]Ωzf"ꄱ'8?}!T .-ᆪ7.'SGR9)  ]Eld.x޶ud/^d]3lɫ8i cGmv >M?fنpIoNaWsKdTG4sKvdKT`nt -:~W{,څvBEXVQnU@hn٭F ّGy>d) ~WT4Ф| !sqNY$:ngH\mi^(ҟTw# hY@1Na Dsd0/ fhVoQe+H<ׇ6:H%*dc)F}nyAE7-=59kEs:%@Sn')J)I:R(I1UaMTX.ӠK$dX8uowM4cUDY!x@覑)יdȁynʪC꽺 F/.bS)-&'? }])WB."-UO?,/ b ltUUhCT.7[RH <Vm.FQez h3q_WsawP%8(OBیlmEň܆Y1JiykP|D]NO|Wy-QBn-( [`\7=8U>0i1sQV_îm)x't1 n$taX51Qe:#S]Ʒ,mX[9ʪnǪ<gkf[GtYΠHW$4ɦ=E}1Io@_/x;U2V8Af-oXg7kی^{05TmB1LͬBcfг$ǁO{6#71ϗeHDG٨2jլUD]K5NmAʷ|:J%VKvMQ;?j_,2H5#@V CFƛ/r;${u+nR0#]8F}~CȦjL(~w|z rT{zYDYQP)}3vNQ pVl/{ 1kTt Ї~HZsůw`̥(ī҆3CYpx~bzb wiiزOO&8ΰQ%uʂr}3a5[.ݦ4z9ڄJIwGrJUQH67x/pai JF}?Ox[nP3,б;UjyD ~6I'0 \'9|a@5}տ5?{E /7D;Zؚ  ?_9w٤2Us7^~LYBB=ulUEd%$:(hRNCgWe/X8B<>6Yc@a\ccª}OR<nbM1H +yP rij?zTq ~7Rqđ 45q[=inq} (x[؇LB7 vD6_UtHHf.T[fbީ'k5ω-uK-]Kl,zƭzOE/yPqULm69Zbڔds#?"7G}o^S!RMz X͟\@b4(4gBcߧ˃)>Dnk-ɋ>lh ^b#UFwz hE\΄[#=}zHFV3r!s 4,8ZD`RjΌz& ܋2 A<Ԅ:K]68^\R&H7g3;HGmvPDK?:<5Y߉!3?lj`cmg<.I XeϢϻ/%~K|GN-wPd3qUf,φg.²7ohVP}ݼnoc9G|ueՃ8P8yM"o?! :(XZXNcB  ):ẃlZq$kUZ؍.V^M/,O?2:92dg39WW\'9MDڍ<~2+Ru2NmpoCkKE9.5K_VSOxebVsYVЮ5o [٫*Fu Q-t&O2 3FpGn&"D7.G{^pyyߚT*CNpZP~ F]P1Ss ,.8BZZEX2 ,b$`¾5ypŽ !2`I1Q3=Y򃢎}P0_S;L~zm%]?d2{0F.#H; aZ&1갠 f:(Ni-ω:Mz]==g%F;n*K uřE(9YӬ \=|W/cafo*lU˛Rɞcr@_Xvha~O7癸]*RrOX%Hhs:?VQrXGC{ ;f{=d܂N8Yp܉*8z Z%ʮ';P\/pcgf^grU(34b42=[-9}6bH\H.*덳QNRpT E:F8 '7IPK4H}59Qڠs[Kkcck?}\QG|#J4qF ހ׻~tjQY R3 [GďeuZ%ǩ͗ic+ۈ6i9m>} ! K\EZp a}YWK$f[Fް} Q$:~-h ̉4"3bTQ-AC&P'Ҳ k@_lVHq혶7"|? Lg\\6`I%C,5SqBE-[J/I!ؾB46@XiN)(BovT-ZaQ|-9+OZ"^E/ӪVUA"h؇LsBia.Z`F-'XCE*GkA2"]Yn9>*oF2P@+d/vN@\ޕ~$%“y e*1vC*{mNB)b aR ]x\mDê&8_0oLERTkt~NY3wR׈e>" /T>蛮  ƻ6x!Q'E1| yOEV0鑸bs_Nзېf__|z!0sZ pA(0=y{ SKkVtSM~F#DZϬ cJ,o _D8\8$ā.}ŇsKGWnB_$7¦;dý'. 4^s,&%Qu*PnT3MvK6:e-OVIAF ?{bY'YDxkhhA1p=OKoDZșLwh$"U~U9iٛrzÉ:)+ z4&MDǘ/Qka- (ߔnUٛG|/Do];(QoV^泋I5Vtt#8j/#ұ֮yf }3nzS~qПUP?( %8HejcҬY>dVE Z͖q4w}uYOoX2#(Fo3\m5ջHr-~:d8 s=ᐳv臱Z+X>Ngk "xqtX(.vPCVb -y1'Ru6dkw0KPa4_t,q; T)TfgeE4oCSbB*>hƜGF0D&C_N?}{ GێC;jdFHTig_Q];1s~Ww_ՐIiIc8 r IP:&{f *3#N(M ;zq"pNr4l̠c}dEyXuI{Pj4'#@=nlSȨvS%?Xdɯfld(^91N_vkv(FNTe;iSzz#Z\inh)%oKh^1a4!{!WJ %k"z8u8uHi&C;kwfN%᯸DNH<)}Hֲb{+z.4/#:i2yH28ӤU WNt@`aF$tUS|;.O2X_^wg|~lbO3ԉ t<'@Hf~>H!7k¿5'YٯN<㞾o4(SJSm8^rnW_ c5i|{%Pݤto(uN|w隻AN Ӈ45aVWَ폧eű'&Tz7iJx-"u%S0ug1hNed}oʎΟEpgL5LQ^eTvE4?puҍ!PO SwK?CAY,X2?BQ̑| tHN Np3eGR35؂s1F5hUU2IuA۶$X ?nx n&v%]Q=<_7r+^~ 8㪬ͥaT_@&KTB({cgI !*-^uSk@ݨ"љW%?OoQ ȇ`5!U4PL7wVO9<Ay29[-E&fE@ D#6O.6_$M|da 3K / ߓvڗ@]oMvZk5RiHHJ9|Orڎge?5cyKS*XXT-p;|Ca/~2]q uݛH$#3 459'7澍"ْac[Gj\v"_AF&GHeO9;AM f K3//RbQR:r[E㋗~\鎥:㤤``R4H:Z.lm.vMQ$ "n7^)u>i Z ̋_bM-x\Em e_l9ٮ8Г/C54(alVrZCmvedc%A4@ q诎Lc _moG ^c5h:D6\AU*չ0 ,l$:nu?]͹'6k:_Ms)2!zc0꫼01aQ%s.Q΢ODrÆoǀijC(!]-qv穹 r}dOǓsj1F "Ɯ…ON3̮p:x\<ЬœcAyegB(F!ؔM[йUH zx["[q+6M$j`rO[ mi?<*PP"=`b @<>\oTu+)taf /Kb#380f۩!P{Vr*VXe:3ٻ11O\鎵@Ŷ6n@]Z@ΣOL aRXz 7ڀ-v]%U*dMFS%OS)'Ѹ)F5 3B|=i zQ@,"~gB}H?;o8Aen6 %_DXЁO5E}4%8R?%C[&c=yg}'ոyczdUy(P;sLd`&q:Hb-uuAtlS"B2 [V)4,%y!)m>yp=XI(.ӑ:٥ߛ I١=wãH@IR(I䫲VΨ\[ ZÿT|f[/l>L%`q5n2O7*ADo#aڼlN(`v}*?iCs ]zG[/=3f5z<|mN(EJIr͋?X3ljbW[gNBm]HEsBu5V@/(^"?@C!TSR%?MhҸ0/7&G?τoU'/ovЃEʲ8U#E<ĺk-S|"U׳ >6\G&bd<%"Bc"<̨M1[)jad`v1UC%Wu/k_Xr&,;q#^T1lO}E"ثO$p=_ `%M`U5х*$<"lxijA7͟.ǭN-U)#o Q ՙ2`)U YU {!8TD`ي}:]bAGZtO,Y"&S2d?Yg^="՞9YW4XAX.+rx(|ǔDLW*žEc,gbʭ.x6 A::+Ë1&`yIxwPDhBE`OqBԎ"sjQ(Hug^%'X:ƯI㿎6H%>3oqr@mS7ҘjCfϫe00HQI-QؐHb2} agkqtk<>1z?,ԟ̷ZYn5/А%,6y'Є_\T0[+ڱHhn_;po0[}ל&, 4ց>ecI"PCٖ{ u3 {K&m|4搓mhlJ9TxVt\a +:`ZkdlnU&y.ؿݳ}894"ǨtM.S>dh@%eX=%}?k0Y6pJq:qy;<'m9Ъx{v5v+&51mhJ K DszH$"5,;WaJw l3U: cJXQ,PtB@pSpcfo,ZC8al9믛bXMfq/o))&޳kU~4R{`q>>u)6;pn3(WS8&jh :Φ-$VN֐[ՐV71'Ϝ1P,`Nj|*lrZ1mbLM&fʻk˺a tuPQ4/?'64bwNL՝S[Ĺ ,MJHS} 8˷0?dUĒ\H6~^u+@)M<1$fZ!~1"Bz pܰ1qq,f8\8̀GX3fX'J۟TLюFaM3Y EDG 'smTi}&FXiߤ]5Oť`C SD [6BԻfz*LN|+s0zFRoyn\XK6!HU rӧif񛩒 @eh;!x9/o"mtLt@e+_^EE[J" #\zx+>0HX'x7b!セhe:ȑ bӨ0þa 3*Tþqy:/c'vW:sLilpԵet n3烔5J|y[˥Nl]jǑiRG2zMQɥp$^L` sHz$6}H==+[e^auޙ(snPR$w6Sӯģe Eγ-t`VD |ȘTa+WNݫzDnV*܁ڄx,Z}/ 4z".XL(̑:a'ĭQ2S"xFxax-9WP߈^ ~PY 9p(tf9Vq 9=ц@G1*q3 NTܾr͇r -]SU4P rpaw[ t0H5V;- @s}P˛B|:Wgca1Aʡ%ݲ'q' 4Ҿˋ[;0חmlwpּgpE(e~R^]bt?=V*{n>S(w 3 ]-TӨ2w@6'li vc2kP“yl$o`_x-0q幉Qޖ};_Ҿ ~?~ȡaD X"Xl0OK1x ',jeV >zHᘬ`jCM?U3t O`) G_xl*û(~œs ^ˌ!eِ-{deI6JF1>(P@}+hf{][ޞzQHB=8;(þɴI)wIbnqSZr.k  11Qg^ quOHn)`JK*R{2_:+#o+3,*5ݖW O@2Rx|Z5>T,j13p8z&a-w6 +Ҙ!ևDt"j{v!7ٹ~Qٙ9֞7C#V,ē9^5OH)7.M}:z$YNYj<Ӿk~-u>Г\m-E0K~׫hg|-Ӡns#C٘P;BѤΑͣ+r=o$-4 :QByn/#% =٠%|1bvQDaŗcjӵ^'^}M) D51 cMU}l0-u z>EB'8H b kv9UNU6Ayu/5®}t%uT[w5 &݇_=H_z5Q_ sH0cF.|0T&-O>S-yF __tb&WDUG؞h Fgu_ֹr8xVV)ld Yk^/CߊΨ->+'b5 YJEȕm.WJ Br-R2N i=QeY#[gpZ5 LN$J^Vt"#BmvDdw+BU5x9nO X=gT8N0^]h%mM5֚ G {${n \ٙ#PO>GM E_w[l<"5Q pfO|MOQiK}Ad,[-Yey҂hs#ˤ5 TI˘A6hQpoTB&aߏlJ1h'-SRW6/i c),XNh2v^(5ҳw$2|fh0qEmWCh}c=~bdax< /Mғ{a*pNyt3-SJ[ز'!Ú<ꄅ>{yt1d31k3ᷭ#eEi7lXN@8Bd^)q"Gc6[y{IUK=G|;&^ԅug`0m,3>^GhߌkTU$p+P9 tVJq/0K-&FԶ)ta'$c8vV_9$I=+xY 6F/FD} șP2;f6LP)!{WG;u$2x^cڒ۲7HNCF8JܻH&]v .K5"*JTHtCo63y;Tj?ؿ.IzǢyfZA'?F/ZȰliלPAŘ03C00}~mȐyyEe:%X~ۅ&maN3wmAyN])rwxmyPSFz'~ݽy};c v"fKYI8@޹ . k1=Y_5WlN|ݸrf` +\k4#f]`k6:,39TTֶlUl/b8o®}?ەg*!%yI4PXZ㗞p x90MV t#Icaf̙XXWj fEE*2\Og+d}?<֖=zZ(H+B09AXekoÖ%"{wI#,&P#ǁ><5'@pٵҿڴ;;IG[?*&E H-x$E ȭZ.k%?t]404.n XZ`h(`MTJz ȘnKcUtGtGGߌDUZ|ؐO>]fpцٰٰ uKDJZf?OskmTi vN~Qv:|E YK@X_,t(O7vaj9/k0=Qs; d͟ҋ_v09imL)E5T̈Ap@+/47_C,0 X(xͮOzco9^"\ pyUns-IkIH5:!vX œ;}CK5iA.*eHLj DY!! Z ,PBtk9jpBp >^Wz>ZlzJ5~FE=V=Xe!_y%~@TKIXFǻ9v]h8_aC]?zRB!0J?+[) m{OCǚ}RR.f>MtJ,yL&%9H%@ ֺGn1 )@y)nLOZfvp]*V ifJmә`= (@%6n; ]=hA`NlH\h2N>UhZ֢p~V cHWn-T$R/H ¸*)uK_fˀ3t>YfrR(M2\ZdeK kB#*TR#k=(@":yw?~96ʈtdD!^|e#I@M2eVwY+ֹä:%7 'Fꭄ5ŅC;GB+ˇ=K;鄿C).M:#Z 2n R& Uƙfh"@$`8;{@''HL) KqCt(- x!\vgp)k€OdR'?m ("OBp}^fl+qU"osbq؉BWg]ц:DXmO,1rc@`+d9'%k+UK8gFصk>]ԃ6KgD`){6G}m+KP m~0ն[j>~"ež', mJje.ӎҺ9Pq;`DqyFbN,ɮF HZCCA)j@pـ2`E X YGs#n:-فJxxڐG2͉oǠ߮G2iPNw26+.wW`6!UwʠnK"uz9s ly$u/ E3R>fc1/9+Is1d^5Q+Yov}eCLhdaqճ3wl!A1L Փjt九!cRޫW-#?)Cz1P)@댠P e\q&SpeQٱ7M' z6ѯiІtd+b7<(70_SG o37p8j% Dr]jsGEk<_yޙ+&b,| 3҈7M4@"pjO&]%='##7F B*e\Lqr]voܴR5&ܛE7a\Hn` )~-? d$f'hpP.[9bRN^vSЋOγ/Q~V\'Tm|\<$?֞hkn,P식Ϩ֓E=m5?%猅q㽙&4P_[NZwwkQ)W CR0Tr/z;樮N떁F2LדeX\*Ghȓ+Xd/~4 |K>A'  .w0\w\gR2"wn<71n#/|-غms=i$$ TK :N ZM<_򯅨{k<:᢭R7616UQwɷoPk)gPtj i/@fֹ.Ƶ6`P8G7%8v--XsTa̝y;~:XǦ/Q:=q6LF/K69~-I]鵹r)+=Ys L?%Ff^}s3_= њeOvNu_}UT/ G}‹ypϦR@;pּ4`B&8؞YWʪ .X:M͍;]'vew#.4GwHntO-؎BG2[mHB SGx=,y^w>ݿ6Wܪ54z5SkVmj}CbQ%p 5RzT[x֘{XLG֯RJAI݊GVV57L4WrC FZAL! "h]d0}odY@خAěA4arbn O%;(D1oܢ~l̽=Ww0"V犣} kt7:BnuJ@־aoiUׁl:o0|As-qZ;ٰEjopTG(q`WStƯԣJxU8Ri RȖyH?>>v,l{#mm5b-\_j٫y ^*\_g-c%)binzv3/oGuBœB=ilOrUY*$qR@jF'b`[ٺ_K\8SDD;Rejḃ%0w..G[2dÝzDW{)Up:QYRAXȟ?! x'n DeН,yBqEmTas*ܷm)M3}ھD6p<]{:=+u0i[%8d'a.b&j`gT_`)$_LJF> :h!´tUPtW*=3lUpjgố|S|1~nr>Mݠ7Hmz nQoTg:>[xw, !DyI pekQ`ޣaMq_[C|O2a?5WěGKK/XY,'U*3:>ܗqTNgu>z52o 3%V{&i Qm/iW'D~PWcvj P#ЌXZ qxbؒt5F#!_f؋!$u+,W;!S׫`܍1Ʒ scaK%M“)6@C8޿r-+ Eec_tVU Ab7i7dQ]3$CjhR߿FsMVqa [n"NQqaUM# VE˛Dʋwa0OBhI|,$j-v+$1l*˙ <{}C4ٔ̄ w@V/{͘=Z=[ FvH1x&$C챤 o?!$:T]Js64j{Sǿ~ *<ǫ߁ãr jZ[~"dAKyx?Xg@kD 㫛*ҵx7C&PWqsd^]_`^ڃ2~ f8$q!?M?+7{FRjm`97|тsِ~xɟ6QJR@0UJ'ZolW@Ti;1&$RQ6ᡢ8P/-K^(@̝ݵ@KѸyCΆ$1-xN|(ijx,=]6e~o猗ڪu-#{'y7п N2! bU>))7;r+nOx})Cm #p]:mI"/Α){ (mzEM2Q@5NI~O銰 öTa[?wL3 riƐXp/MM(^'Fѣ|Cc1iQn~2zqlP/+>GpoH+w/Vo*Q|,HEQ{JK*^B/c66\֑߰i\髜鉴z ire.jwmFՅq6!Z%Jd ⪪팧ƒ_ƽl,5ZK?m~ K~:b#ڣ 'ǟaԬs0r_ێ4ㄗCeةXB`6AgV[0|8]u+k zsس/[5@lkۈ9'#uv}bDYVm90TXeǬՉ_dN١G;m F80]+tyA^A/ ]*k_{n`YWZBRw1fLxY0,z7U[x(.vj^`̕r#/N;)̆۩X=M) ";28T @ie]Z,k@T9( X?NLwb=HlzxxSjHOCH+\̱Ɵt؀-obn[A-a^oDF%L2~uv;c")в=i񆷋'x!x5ĿeKҨ8~cgȈIze99z$Ak b~p{vb4T ϊa:ViD]CoFWtaQgWUo5'ـ>$ 4M{fX:=A%`G9ݟr޳r\BffꪡVm%ݑҁxtbT% \P"\휉,G 7]R,^ :62 ϊ?.]4i8)(aHA%2G־{[g83 :V80Pa:7=| #X?,٪q+ NChy ._]5i04p+K#3@-6Zh9^( FD5f<:ҲI<'ߓ8ˢD2j }ap3h8W ȝũLJ9GUYA PR#JidpFe{6}ڑ<Y|]D~71OôF7il>}nҒSL@vU&ɰA+&vwW+e@):%C06>3[~[A SkBst8cM` >7&W#A4GӚ4[\'frXJj$?ﴹD}Ҍ9DA~Dfeސ,ș93 e3r9n$L]㈍+:-LTU~!q;ܙ$&F|]q:5yѹϐHOVxs_^ !Ayn倫b@olȦ쬐6ݞ_Y5ND @r?犕&;fG/?_At2޽E7RV!mZ>9=Gf9YN!ܵfSȒV.,]2#ek@jdN?5ـM B4EekOT.8ZG.Ui*V! #{Zt.=xeuf} ~O-:<8{gDH*HKgfƫgʄ94|P`4 ojw=ږ5s5#"݋Se;x&9ˇo=c$6æ *NpNjM<^ym(3"bnCn( D}]Kj߂O#s5xox8t߭uaDΖ[ƾ7FǚN޸UUiߝ~{ =*"F|H<_#i3(vЯRP:YjtVaޘ"_G$#^+4g2g gPDɜ{G/Pv}9 YV]?ec~ݤaZ&@yݨkPf;rIQ@u\7 H`mDbgT <mu-^;"~OdJ>3=CɶG#6=Ѧj3vZ8kM}d?/[^D[+y5#+QF32Qq=0R`3eB%Q#N%XioxF J sUZ֔9@ӧ77ʛI!Q ;iDpPZWp6QH7Q_>|pբG</9tfP͠ɑE =_KtDWd҂{Ơ9Β)a^jw ߇Y_/b3}+hC .'\Bnq{~[$s:pU",}JaYޑ.^q':Hr4`cs$FI&MpSD9jDaH3,ou(kX;qa8]$о'zk_P =5%MM'^JnjA{9JkUD?ǩV+OH׬Q8'ՖY +^g4B;jR;vM ‘-JcԺ UX|-u@\{7KX#?@I!3 {摳8%\*ܹ /`>B@7U9.k8v" ]JZ}|+w0Qy[ޏ|D//ڟn%iLM}q^)z996X~{ɖ rRDvWh]!V285dѓ9Ed$kƫ.~3K@՟d3301e BGqa)+xƹm4:ؘ<ΘW,ΑL kŝ1h>tu1$pI2z-vL:ݗ'{P Ndԯz$R [l-T5( ?hD)\1)bQS,z~`׿_sfއMsݟٕ9̝$:}"}ȷүT*$/+At zk|nn(2H8Lױ>p>e! Ϡ“:Ykזɖɿry]nJK}2m;!OzNaN,pHa5:ڦ8erUQbrhЅZrb dy=:oɁ}#W];Y' 0Ͳ>7gŅM4soSpe+-:3ӽɭ \,Kt""f`P}~ K[}cfqn'ׄ(X3m#1c OF1*F݋}toDVhJ"N?wч|3[5rv3AT SZC (> _|Huω`(}eOFp(b .?Jˑ\tE5?Ro|aܽ`n>P})<uk妶LIy9Q44i8,K=q7GhҰtׅGͱ)|wp6F|cR ^30ȏI^e? ?Ig&8U'O|BT AOLOZ^UW@.KBZtmƱ¦ٰh%(cyRw eAyU +C5ʯD bҒ.Vq ysʟo{O3g0NM0?)S#3SZ-ڗ19ܵLJ 4bkz}+nD4Pe:(*k%qt#èD,|P T& 1Rr5*5E"ry֒cu3F g% OIX6YƞӀig^ꨄBbւ`g 3v4YP)l;N&(s6Yu1.jv^zA!CXN1!wExf?BNͺ CwSpՎKњsk7H@ 'fxT#WYdeGOR^3% 9[~xmӼ"$LZ*Xgt4Q^ y\B%;xxuҮwzxedD/n@pjbq19/h D)-Ju>zdΔjm3l42pl$$r(cS4n 8!4GnPϮ3RuB]ԇEl(@Bj̀٪KAK|~4iY 'k r CXjra?MmGmt}gU}C*e rY֮nb:(Ǧۼ⋾y zڷ`;ld 9\WKv\wo 1YiM؄>QIǀQ r$HJ ZD-ȩ%7V'(s2nz~ Ka~ h>*oe2C7=ЧeXK0C6zKx0Rv̷Uܝs\D֞4,._+C^ƀ5^Bi~/KALMbI&eSHA9 }:9<Ѫ@WJ޺I zXeI9Az. C+/ E7J2i"qhyT6.7xMyhH|S@ʒ|81K1`ą-z.S`N$llwGX[Uv\g1ZQu>|ӲtCԥ]-v% +іr.@8am_8\$Zr9(=]izNoi2>}6"vӓAR{3"XEyNX$ʾrHyT!^VKQCɮ|&v\g9PGUv@0lA,G8WMJ3Nuc"^.6Uprd∂ <)ua:^2" T8IU*@ˎa :Xh |Z_R %s*yl&٫pK_N+Itu3Ag}[ȹ]Q3glQh} J$t`~Zt_0]GTw06I|19a\&'̄)HnX iWz%$3o)t4Oq'⟇ψ\R/U9K1| Wi}Ma-R ͼ i-ѷ%&k;2:u57@лB!xh 7cFkn[@{!V9[GEG!E_7m lN^Ӕ b ?ZAb(C2L!'#6m8m kppfEvޯ4FS'OLit7*x 5q#=VɬS8l-3]ňNFwprTF ПRxwӻE5^r;@ TUk|IJ2#oD>4;ٙkEs2!8"6bJ5*Hhɉ#VI7N82 q(t)Q+)}~`3OHr4?4_)agH-Ҭ1@2}';9`Be1'n`WY‹ sMmdOwW)l Lp1B Q3Bqkg{fsX-x! k. DȂR!&uawEAg{X8ٕ9en<=댇(Yv$FݕV5'KN#id~5k/d(HA^~$f8Myb,i#,( +P8@)$=Y򥄗8@4MByF4QJayF%.b[POpC)^nRd#c'9+ ]m. QO,v̔%aaF،"'@*[AS]8fwEEώ~\s8 1# gl`LߨfʦT~ ȔQ'g=OF"=QE( ELMĈ-5zP%.obQ_A6x=y.l he@M1ح?t~1c:0^\%U4I3%. +EŐ8۬çPdGICMXeOh/ zpvb6 fI TB<;hz sh 拁%) Yg/ڎ ,J<,HeHn6t-;w]N$ʛnN<Ө]W@xmM,i;a^ E<̟4: \J ~dƺ>0zvXyf|d_ba@/?<\\۔'.2 䬎o;h,#fDjz`Rܱo{tK̰{u?]%kDp9u]f,HqZ63G]q@h|7URdd]1JKvRes-FeU% sOXрԀd؊䙋IE%.O`_SoɛxGD;-~|_(* q0[. :6&4$n A=3rۮֽ62;U ,41,'>=hΥ6z#'rgXUk4h8FSP{N#u8(mt]RsWSy : 1˥ E(N^^3*(4'f2AE>'k̡#U9b3/颵L5Z/dk%~2'VqyQ-B(*$(lͳPPΏQ$0B˄v}ې1tCҷ43ۖ`b-59AfU%?S:t'4Pڄ%u.r*mad&K ȧy߬-dԨp1ROFEB뮱Ùx pDuoql*7d 3&l=t Rܻ%5*Yl <ɶݏAͫiG5Vf7<{xpt8TuaA;[' B6E8[ꊲ6~CԹasX=oqtV_m﫲3̦/D~Z&c>j X|ntxFe øS?Vu8N6r=Ёw]”I(;,>fE6c&.W8|pT麒^> Mxvhc֮X -8Cn@`G(y~nb15;@ B) IE=ܻj@BU|Ν98'}i+}7G۝(vrѭv(jd{c; ] l劧j%<_ȞҐ ,,,Ocu 羀&"%ĿwiH78ms#Mٚ|CfLAys)vf WM5$ɚQhI~*GhX= R_"VVkwqi ,#L_M6ҏ!7Ha WѬ M |;5XTlkS@]GGSHVL+ ?Z!}fzIìsw+xLxZBEYJ1@ZwL`sX kzB4笐 64WRH^\k"l _!3x/et}W8h"{;0Z;ԅ,?cQ[ h($Dek}С"#Xx L~ oꚵ%LJ":fGFӟ$#stDj!-x/84-}88O[QE@2SK 4|QׄdBAv@n2h߳1\u"AMϡ6:>Hء4dF#;F±jGf3Ŕ@%'P~sf>72nFiVIhQ4Fu]'< x:e带qkbWW%)RyqAV8 %eOTܦU jgHW겋9 V)_usdAX 2Y4`wsղ1d|ߧ *zňi_ܝm\VS버F=LARcP/(l% +tPXKK6& ^҈t | "f?^p6VTxEӃvŧOʉ |XY7#>-!(-+M)g{"Hqa G&W[oʎvaRݔ;k9"3C:t?h0ST,֌T#ӈecmNj/2v~kqb8Uy13="{treεඅLM((a'Q=yk z #F<` (t.`NQ#hshI ĹΦxRǮ{spm=tN鿜ڋ2`1g8?XIȌ>aEwZ'}'Lڭ{cc>&V-Ca1镯i5(yl:cDW]%yb~#_eRfR8oHx[eY䚒 F#s1! 0#"\f*,] |GV&] qpBϒX|O g>z F>l줽z$@-P(i*s}\stj*^tr<~V1*:i_MRM%mR0Ɛ_S~slNi%C g,tgb9t G<76P|%,9<Ř(q)m :ZGUσmZmD.[KK.V~4#pDYK0Isޣ^a`x?{f9gCjY iy)XM-L¾e#JC՚MCq/Xj=a0-c)Ji>+$Ad8J~Hv7UBI\ęX 1kL s =g 䈘.bWS8T1pe'%c5`RA "r˪c# ٰ3az[rD0`+AL+[Pq\~bPWqۿ9yo^aƉxx tqK#Y3@Xq՘CXp~g\gl_SC@h/xIhV=wXp}55u?Ͱ:J;5"hԐ u?#L?FkvQUr2,UT'x~id5K.~f$5BƋ4tj;X en }感šA{jbA6*7\Yf wRN)ZrrZ(d0W4fB# uEF&= {Wja;M9S؏*9^$B! F%5U8;&;҅~Ȓ֨wfkMB  J!~!MD2&܍.W)'9mE&q`0Q*aBK ˣ ݭ|-$4>kbbwb4?m nSI^X;gz@m'_\]IAՔa__'*GW04o}xSy6oy]̺6DZ?=Hm0",_㦵=gu!8s Ys~|=KY$/| WC-t"8MNEj0w+|]Pc]+HJTJ(J,l=" 6~ [0v !2~97bI&[SzZ'dm|d` %Aeghg7eiSܑEgJNݾGgZ])[K0GT.&{2ʓNVSP í),^{zA'H|M /MUՂ;8@Y@ueKKTw_oԭIZ 6.n4iˣcݽu%}gnόDȑë=J.Dׁ i1iH%8"#~s,miQ=^>M?'o&]mCK*vԡlUmcJɃvڊ[ߎF8鞽,;Vae+>5ciqXpt[5tS)25wxfʰϲtx9Czt ^,3Q48_#Df19o9,(rSK#ɐ; xY2q QޟDSTAʨ4{pʉB&b.S,o*&p8#,>V/) A_rmBzqEN}{$)p0JgjV9Āh:h^h?` [j[Yjm` 1K :7kt_Bl:;#m2Y>n%X|0NUR>}R 1W(w @B8Zk[AQ?ro#ؤ޵JOA*%݋gvkb*g>Erh,,6gc'߻nnUG[|ְk qM+Z+! $7"]7ۿ5ZQB%j+ɦt:/|*Zz'b#GZͷ<{αnշ~e@F [+i'E6 [GNt2㌃`j|;6p!gSug^]oeQ?(tum]uMsWI{ =zL&H"Vsz;$cz!,[Kg5wޝ[1']( :m:1*cgoA[y Loղ*,*7Ɖ$=J;lԿ29PXb Z9-xk~*@Q|~`>muk1Vw!l$J5fƇf(Dg1aˊ%@ɄWض)352Oº L7 b ?Ux{@^UQ귢K`8\B~wر3! JKqٻ"Z,:*tc[^̆3ziyZ[m=e;iRJ腽>#DZI|ojem#2!bkc ?#j+ &(cc^LvpvݓݻL{')/iѰzzEA9bi>?U`/B!M'žGU7}O4@&J[p([4粂i pPƾ2?1\e)рֹrO $( 1`Z\.F'Ibr`"z/MI!Ii!C$,3;˳ gseTrMROg}2Ɛ4]wä=}D3\0WXam߻?(s]$XU[cA"Fjّ@& 0l^KVW ߱' 4(ZnFEp/O3[o7ckEe)&T7xdID/rM;g|h|n'nCvju ;pJ"Qf:?ɐ/ l:njUMw"͌OjIfO8 9?jnPbs,ځr2>9O t B.HsU$>SAɦ/Z@Mff?3!~M\B+5gKܷ ]{!EY8g/[8 ӐemZ1\깙@,)HM+{Q[r4:Ql\NrUO+g{$.vh޵d] M&̰-ζVg..T+HJEL\pꗷ8}N!Hg`x)~F-bcJ73u29?Ŕ.ȝwoqiCrqLѱh(wv% "F bj=h\ס$ ۺݐlK64#䘨T|bOzxghfDd)$YbטF- m7>QUf7B򖘘SS,V©!JۅVkVN0<:P̳ ^![D(H"m*GI3F0yMasbȣ,L2M+4`;wݓI J?u`kÂc 7},G/6BT| gUmYCڈuQKV5FXpقBd3[cۉ]/Fh 'ϓ-*d_ǫ/ >pg*6CqWH,D;TNH=UҌztɶ^ߛ 1WxU Q8?K=׬qtCa]T&D4(L:P?zJ茾5q^[_SfQRdP˝N?ȃp 5{keMs{9 <6oCeto>R!˲H [C`O\5gzt OVQ5H3XQSELwJf V {2@E=\);KЙKEf[uizz'6Hoi@|zJ'ڛUi9=,/tmKSHGJR:uՖ9:ެb&h ͕}ْwrq vvv`rk]m})ocSS;r9ESQ;sHո9TF|GO{A?6cUP gTSh lQI)aν5۪!8f ̈߄VENﱦհ]G<$X vedI)qT="~uA5#v^"b97ς/X8-އXBHkc,9_k.asqx hBgchRlAڝedP@ҿ=3Ud#"V\׻O$ JoRxOo}}YotOppo\ΧЁS(i=O |s'Dmsm7->M^Ȅll$xD7,L/;Dwicٞ3pOQO@A, ՏzAM!'RŢ͋:7:1x8d`C:TwhIj@ܬ cb&3"٢4 3g؎+ ,A$Sm1VCݴ,a,48^],hs/!U{Ȍ[.>{)l(RK0/ϟ$~Ǥ6LxRE>Wt֢[M 3;"d25ԁ{odn 9p']Z; HFY%ngYvZ,s0MrpJQJ'G .Z} m3 y_!i8{ i?[Fô\B=W0i.CX;J&^:P33ڤ޺ Z@ur8EYΣۢ\xt_EOR$S|oZ)ݠyIH9jdV_7Vhlř;FuSA~sϻ\ͱ1~<֖ψpQ1X`Þߓ!N5R!Q~5v5 "X#l3#<$]az?G ` F3Q7I,Zz\Y l*+=:hLɵ!b9`H,\'{_|nnPdN %Nr5b;Џaf*>8ϐe<G(B2l|LCWbd4;]pxDN_?mL٢֣G/?KTou!ޟPyV@NJ<7EojKhtICilD,%(Muހc̿㎾*!IvC3|ER`S˒zU Ly؀vD0!JE0)|&IW(6Y)4iOY<Qԗ_v5[d衉?i[М ݴgJ;H&p {prZ̘ GNLDի7ȁspaĉ-Ad_lwGNiMj:ϣWILή׀_P89$yuO'R2wUȨGdm^Nrde v:}:sr[|B^&p<0]cK֣U dkuk!V? #B'ܹ#* }*ҒTx~m=U.%MιwQAv8E=eVj6396f[zɇvܶK龐2)p(' ܀63]/HE;k+$z H$gJbCQl}ka葋*=P 4dZ 1Suk?vl NJ[lcWiKcD5S+Ő&;{,[޾pyhTZ;SkO|iϪpcgt"H;KDcdUQEqX&[<Ȧ[ܟ瑩C=gw# bT=va#aF<D@X&^BW| =Tn0,qW#ǍFEK&&P wvjqгNC5 wL}0R7=}꟱ cj߄ј3L$w{6[Y:hݢDOrŅ+ e4B9>!.Is#-d5|ñanȨ٢7~؆G~oYס[Po=2naOx] /X;"¶9Y (1K=zߣuf3P_VתKx{Rn?w!(~Z*>{YjpusIĠtak"R:,HhC Ҁu>İ}UetKG~e|ڐsꡏaE.0ԥ_P[h?vYbmp{ Pi zBF/k&W^zh^VwI 0K tFa@ xSI߻.g$3eH/-C`8[G-SLg\mLZ8F j{̋P=AaܒZ6"|ZRm<-ˇgC%5O 7N #}:n2?ykpک^JFw] pV8Lw4N&]f۫Ǹi{Z1)!#cc "NVtK$δ7GIquobHȄ,y:T,'3W\΅78%h;|gzZ/ĵ>=t+_͜c+Cq5fcJ_K|Wdg:F LWuEL6?5PoM- 4sĕ=Hqq!Oj+S43'$3-~25=t{7Ew"̗wwgfROɣZ2k 3fg*!A̘p;V-im9Rg,j7\JImE^_a҆ L=`4^8bɘ(gƟ೫}ga&q2Kv ]h,ϡlB׵=c36sVLT^Yp/\ &H'^*2r B-0RAtÃwo/OkPA:8ՀI_݄VBR98@A cG*S;ֽl ϫjfpXo5V8Ԯ**$]aC3a{`ϑr(Y 3g 'S\X+~C| c.LI'X WVq5KZ;rLRg({&Rܔ&+ Y>ϊu0Q3p +tj(TWPW[N儍x#u.2X%ͨ_÷Ϲ WKxi!C5A((E!)=zB1h3k 5]<3*8_mo> Bh7ί]`x{ 0- s#7!6V&ԳJ3@+̼8+.c%lSiMSg(M JA񜓰7IETXrL\)[S7IȊYǃܧV;rUXa׿,QZbKԦb:lA.0++l~mXx/X5ʌ&(>'K͔>|޴lYeȻFZ"+b!A*"<%p>(H:1Eu6ԫύ~lo;8bӲ{͵qg-Onldi9TqPPX$e%8yiT47g \ lqhe~inBY]{* 7Pb ŊTg>)G'Fi8Of.w!;uGa"E?bYGK!XqwFQIIM!}Wk|:6[(D z8 F۩n Jk6 ;6Uf6b]N-Nɋ~cԿ]mvVu`2:3/ }N)1wsuo*΅ǯ؋+&Cᜰ=S¦:l-/B#\Z]խ--]C7wա S(7\†wĸUd]{V} q~uWmM]nϿQO&۱u.0-Ϯ t[9>Se(Szch9fޟ-'l$?7YCp߬ޛC(QCrn?uWWN=?2%`ȳ {iFP6`cFgJ[[6(+R@Jؖ7, mpy4.["8v'8 ,gz{맔18cȞbsM{{ruHRd`H.։Piz~g_ӭ+^tkHXc)BY\.D,exנ$^ m nk\TI34cE]No+ˣfsYbEx-cLgEW~^~s{ӻbMϰrKbiŐvgCS\v?d[d~|faHjf`sʰ!DJ۽B&7E&v|r~:ʼnsKfbƃI-q'5vLrdB+2T|ń?3շ\Q_@QVWӂhج!E3a6Zo(/70?{Ծsxy[Xh%X v!Y7~fd)΅nfcUͶy2(S`9''/ttE}|Ջ/wUx )K?<͡LhYZk72AB;[JcsMoBdžIxSW/V[ne8ӃT@KJI(S/-1`B `О1 ]F[3nr,9]ZVx|r~pD"In+"nqyb yX]g`z_W5`kȎ(3uD8Rp?o_֠l>ez>e^a.k7d1iV9q9KaY()NNmU]@`d>=);"KD1wյf0Y u 7?5xI9?NΕ qB/Nu&<wt?FJ홀=/Z{i80@g]Gr-|WgQT=_[ʌ8LlL|`@혫ys0٨UAQ&ԭɢXoGJqxʓLr5;6ou<ٵQv)3"p?5|욜bT%7.QοrM?ݝб}K os͉/)Lr.f[qkaaI*< 5ϗ{1g=6#&a?. kE}ID,0u{R3I^f6tS)WCrAe0 J|OVFh3Ա: m6'q#9e !cB͛ V߹L4xt]1s׽%s;L3.0÷ַXDNK8Q#QUl3uTof-RC }7.xށ61]f?rTQͱe[MCЫ/benBXX2fjI3fY;_:w] ;" 之(9W}A8=.ݷsZvTFQ9˙=vv,>d~~J)53>{iE8c婁ePll|BZN${|VL.s&Iy$7@hz RB\&1ȰpY-$,zK]oҢRc}z1XA.kY9^N|+uJ.'fhޝ:W2y ?]F|<Ֆ"`*_Ww}+XmݐNPZ'^WX/Qb!^.zʳ5븟VQ|5LE wyK\7Np'|:dSPfIU .48 -o `ՍA^XB3<'&Ź{:gzl+Ưgÿ9D3jkC\@xZ5?X~LlZF SN!7|tD#7@P\fzGiO(J;Xʡ!X53ݏ)|Bwˆ[3b;_I4H}9VM\D#f$[#3}Q.Pp2-zW?v}fkWuG\ڬ%{t!2[@B#QO$ .<n>*5b[[҈XO*y.9fWP2ws_OoMcpgcLp3 #q:x ?a?y{tk-x|0"m+ %:o}!Ac>B7~e{@UKZ\x[ֲ$e'MDر/"kY[)<%@ֲn*FV C-8F~`G;lՆ6 s$URK rfnѲC7 n\jӐV"!1*BE۰$͌o m٘4xiiӫǼ?@!Xb`;d1uEk*lcgnd*մEGC59csRBvOLϔBcMo&qVsD˘|Ȫ/{vf\㟽TQӱF@GWH)Ox ;~NNUR), P ʨZs} Ylc`vFpI֝ht~H*;߫`9L(g4# |=-/rx]uH87& )rxr mh."sTq*E >Ϊ3( \^8^lR k A˹wtՇ|YYwn'P(ho}.NEOV )urzRkK]<4eS4K@v2b%R>GQOul9@U'?1ovM9qmsfg&AjZA'tG{b74G-A? ~`_`zG=Xe6`3y>FhT2W4r<}i;8boI=Ѐ:Fn6 q$m2KG Chn҃::OgN״A,I+kiyrosݚMA/r_1S Ńĥ(3ǿzO(IYGQ(zKtbWqo=4^=+UAHtuj/yh SRev* &#uMYq}#$,uڟv2cFr29TC">4Y:io=QwNʶO.TA+00]Y*aw˦ẗ́_f2tyyC\v2m?tWjc"I^@@` z>av;X$&5@!h.mĕDrJGXd<wrB`[ȟ @:VoMe?vH&PCmː.T>6qa9hZ%UwfL+VvB@'!SJnjP x&C,/@yA$jl0ehhTYbZ;odA?AV@E=09&rG`$o?xEleو@&KQ? 7~?$?fD3pyIwy~JS$ nI @wx9+&Kk0DG5Nn>[$~GZ:~Qx1U>o>GEvP5>G'L |9 ',f#t{<ofpuY>!" ґ#r X\?>IC\97EMR'CКƂF]Z$LS|)bZ( p(o_`db^D~Rnʱb(&%Dk;f7լ2- c'W!j|{zڼJz,*V4Nd paΧ`Ǝk3$X`|l;i8[o7{˫`,z%ggtDhZk Bg:2f==*"}mg(=|jwSk Pn;5}faeg^ G;0EL ޺$RUBUF,~m1a{zfpwr~ijqQ[=-m .=4.H$ .g("s (EĩV>D.W.!KSVF e=J[p>].V5ϸJb/m3UGU~\tWD϶DCP; bX+1!n5vJCwibA3a8jbj?>_# '}dkx܃',GzBL7'gunx"ö/Σ+4A=r@4ZU61ũ7eSMg嫝l\!?MEC}k4sgl- 4{!]*@ ,r^,\׈K% Ni T 1t4^r©!Spba3="MWe:K!H4h P,YiWF]?w|h("}_7ko#v 5OJd|4 2&6+KNABB𻣻O$y|R2 ŋh4?zNr$x&]LJDgkeg(zi%}D'**[M%yDa{J,cWl .LUaj/dTiStΎcS?+} Xuuury;J!6r)/im ҫћ%F Mì*cv(tXL::Ո[wA41 0's]2ls]U[7z X>uɽ{y8z}|JcC }[ cSQ4qqe]KW1̋tYc9j9trPCGT28 !E?;g>td_2fi[nTV<~TlrvR#O jTr7 RSFp$Dt3AY}~mF4M,V4= P80nlxĥ0uz@ |[Epnv:`Dav#KR(wQWSwڛ9f8A3q5H-- ,; *I/ #JqoQj  =R6d$Zqdķ7>&-|yLqenHJp!@*-7uGԛtUϗWPXSE&cTѐH4 ɦ,GQ gUѥYy"env2)x0WY_'S^NUcu""A)E;A6ӧY{T(Ec-8 c Q9ֆtigi-rXvO߲u<*R&9\hv,}'NJ7\hLaV(d- z *{5gT~|d=@E9,As@"Pq!2 PgZQ гQєkwEW# 7tahh>莛 E}]DC{QYg&Mpcuo0Rތ~gUhH&2;`Z"+T!1^,-| cbGTEPTw G.k)k0)0!= G@{ӈꡧ*)N{=hPs~dS_xkImvFQUk\z1* &ARo/jKanCѪ-,}=cW1-U 2ܕAhgM 6H=3ϸ'mPRYs #vo󝫵/$%8'{8'kYW] K(tһoZF`qHBamsU=$u҄Ax;l^Pé CrGP^]cHӭlәOHSwc\H}EvQ1)R‚vp6Og -3ha [뉟rX|Hgɜ.k$ ;:O u'/ VQ>MLi⩟`$tKL`suaM昫h_J37?گA}NO% 3MaaB;XSuwӃ=J phb3U9x,bVXw)Z ALyu,%ɐdjmCQ|)i/0 iثR/]z7M)UxV=$&ϓ]h;$YZcmn}5nz*C-aN2:3 g -85Rư*Joovv$J1VMKE(o 5XS]nߗC'#c#f4{2:*ACQ0},K?Mn= yj_76u.I+9MX+7/-3mt׆;"O xH͓e/@,i#<"0tp&N!@n2N/Kӟb7Vb`QA t xtSŴAְ_9}6)缤Ej̝!nV ?mS'tӳnՓ*9[ݷRݱ~W'!PSԮm0(cz8{DžX+`&@\;h=[-mS<,'-4pO1Ykcd5PQ>ʚ2t-pIGVUfSb3s <\ARTĩ4`VLi adbp5p 8t7FVG28*ģg4xG2kD:ߣE_'P Uǐla`)"cva~XEsc={'@s0[WpA<3I$u[߿bW槟ΐl [a{??@)2)Nh{rk1(zΨ3`Dbu{`|weS9cKA@;z0e}[yUhIqA]\v*p "e>*<iw`Ob :p]ه$yaԶ 1,ϛ<i{n㞝 ԥ SfNRศӅq/?6$هSGYZ(o{ӠM'yeEEe"gi 3 k $"ͱ 1zdg,…oK(b9T ƝO z4H/mRbea.>Ou12u<=3p`JӲ, m<,Y^7S>wر#LIO`BDbvrک^viQX[Eԯ_W${iQ~ c&ewnB(]'@ BʲfĬAGCq:nC[<ڭI@nY$|ӈQ1\eg_&pZ%|PA<W*zͯ1kܞS(ís/GWRF GYɼ0G~ի,%iL% .CJxZ_J2黪 4Ku  " X`[{8\F'Γ 0*31q歱Y>0:3ŹKnMQzY ,-GWKY518rRcj>}Y&]26ɸ$(28Dg+wVa ombCU 8!E%4 Åq7.w$tNe5nAfYN<:ru_C|TpU6g >I0%ȧHԽKy OYh-b>}t{"VȢqMJK6g3 T@tGL|)O#hnh:?a%h9BC)ugsfANRQDs7#E|E-BQjTb&J= ldА} QcʜG#o[ T\$2QbEg*E4K2.NbL2zG>5eWWbv/5>qϑE2M#p M YbMp[B܌ib{i̬ mӓyB"kZjGnJ :hK?;u"na[ L4 俚H.`B4XPC,J)% ji!V :C:r(`N~Xf,€#vAnЩPQ/9IEJ)ɵˇ 5"geo]KR%~oc'K)7\0BM|-2AuL+&$i&ӍNx'm M.R4;E  ݤ X xO6TK$?fEs϶T`fXl8 O ^[V:JL0VKi&aRuJpϡZ/h@ ]q]R˨*> D-~'|2n"AWĥ3:)] <":*o\"f!adomu/N@w $(^ހ1+@AރGw6<匆\B#;*L"P q9EoH}Q n_ trְH_Žus0X .C"2fASrq񡇱%64-?hG&W\XS 3Hё$;V'OSܳ" Nϻm#K:'jX'Of'tn9a]gԾ 4zNj8# q1PĐ%9щ( q 1%8$ p>mo`ui8ElbGǧsxl6ڴL2Q-X&~~$R": Q "s!ĉ2DR7h|/-ڪnmDz1كnF-G޻1DݴޓڊczW8''l^݆[J v/uꏺ8,[ ;,iI-r=ӌz']xA'm'k)ddx+~da VA[TMг{yIĔUqd-9'\o`QY|V.DKWF&5W$_M /6=?R\6+ؕ 2`P.91m+>E]%Y|~- *L( ΠKMa䰃M}_P CQ/ԇo6ڟ)_*/-_:{QE۳B|cQ=npXcPoKFzeod@e~#.(9:YS΅,bs-#qt|[с 6"ͽ+1#xd&ggi xGW Q1ׂgB/0,?u%m$pk䫃z dx5*oou.ܯ!ty$YK@wNW Րh!nv)"9ԔAA5c*G0b u_&K"z4QQZՔtFA.ho~CqsZ+<`WjG@'8;l|eMK< *m+Dp9҇K}14*3q䢃rm& Ӥ2GnBMF 2x:R*0.<??T|t!#y_D#m+dY1m:Z -QL>L!m;SǻPFz!񿱁T֎}Ild&|h/&nྻNOoHǑdf¸oLHK}z0:ϿWTr2A|'O@enE`_򞯚Ohoz]} YUy[U/6>@0u]k5~OXeV43QPD crltpdkS(Sm@TK@X`Zz9v{%ptHLIk#ʼN 8 <D1Diݎv_˭bх( ^sc:$ ,f;wzTRR*gI䚒thcؘ.HA Ʋ[$=V6|(ZWnH0Kբ!%eB"r2Dhf磇Uz5ȧlV8hcbl":ƵKӶOȇԯy&; >!Zb=G+b_?Kҭv+:^%Zis(.?/LVe'[ R_ݯjA E,LsZ_~G3 U\'km9MNu{RѯʋD/z3vT\zzv"f"7bKhr)Ǜw֥t_(e5 #aN]鰯zT(7vHŒ5cΕhR/ߗr`aUHo o}i¯s竟97w,6cيr,*QƜ$V(h}sǬRU$DD]=%FrLX%oQZ "o>AM,5 СI'3gnlQ*QRt~nA1Td^?WKNy9;BԸ17GX͗Yiҹ,Ų?;N][ OUJWJ\3E&ZX>7J;]er+HYV5}(wl Kñ @cT؈;:*RAKE^'Y>hͻ–uDtcJL=J9^Tg`ΫÉM)L )9G \ɯ,o14ܣ`ܸ[$l0  N]<~_x\]R$i /m]ւ{ܒ@T URaŲ`K qNMdF1[.tT8c*4O @2ˢAʷyBP KԁZE`]w5}u1%ٕnjĺu(WӦmw‡u]0-QOicJg1uDhޓD\*)LcsՁ3VXR^Hi7;8Ge@q5i* v/]SL\6~Z+sU?m   w UY}rA[TOC LUj6u60+hcڱ9i0<8NĊkdA_+{bQm#r*RYge? WxY>U`..yY&uta:&i9 GܳE)9H#RT^^Xwk? (xٕ}XA!?aX2\D(Z@(y'}41?k2SQb LBfhr -VE)*qOJMr+#Ri-<_ܚVݡJi%a7[]'Pb5yCup9@b1Wˀ*7/]䑸(ƐwPnf@S^_Zk(Sh2N|=)燴fr³9n0 l9cuz>zS$046dOk^_3uA*h^ (!*R\3"[(kLjB`4eB Mo=9}/P'wW&ƵSj!(9P cH#ss΋;8"7$~o1& ?e.)ݔ=h/)bis͖\? _3:\X,YIՄnrGT8bFUY:PIeteO 4FVVRSHǘy~,>3oǀ+fbTInkn9sLnPaCv.{XhhqC>зMmeR0q%,m䑒s,e9 _7Ʒ&&PFm.}v12v /1^‘\'It4r>_#5*wO552hRQP))=4"}A h>m1Z\Da|ޅkaF6Cot63dۦ;! 2Q ;j:nBZO4{IFԔH^]%e;A,0ɣw?oI<N}{+vnÄQZÇyk] X ef 񤉨z'բ(`v˥--j܅1lٻ͟,Ъ/ .p f[sN"L_+ {¸_>gep9hnd5sUfRtZXʛ 8s_vvgAuL(_9` %[~̰6;Ar"e(c]m05=A+' }5 2ԈUw&FgE=@;~^jl$6Wy*&OyN&T=V_ƼHa~Q9vPօ7 mufVSr Cqb%2H:ve#$&+%/|:eE%h K([HHlpEh+3m5 Aa%UE_HCvx˫]>ڐp"[!=qI F1 TrcXSGNzX=92K٥̄ja;@@%x粨x2> dݶ w" 㶓]F7Bӆ\'P,r ZUNL QgQ]`E - Ϟ/1_ƻX5e5eS,q-[WaT{w%ZDvǝha׮j/bv捅)ث9& 7"dD{R/mR;vwj.yq] Zc}~+N,KB{ߎ -ȉ:}q>W_~a( ģ~Hw"EZ!?7YKqa>45@`c 3+ ?,/!Zsi3͢~˶ҫQJDd/ Ylަ&E^HMC8gŽ~͑pftgPC/ L,Ɍ56!Z~LǁHxl T"6{OLQ8.vCC (qs]8U5] 3C;dKՔ|k^ -m)li6&NY.Xtæ3!YGut=plnè+=|P":̱e _ՠdR,/L:=5)VO=Q9Ͷ" W7e4"c.ܥ74S-ᑒ ek)ceז7u4VlΕrXQzQf-}?~S+V/v391[7_0po\UΠT>ygT4F3Zl52s F_3Z pĂ¾sWacrWԩ7}_-vU<tYK!E|LDׯ. O t.ZrXf0z<}R-y,DQ[k 4'by{$kdh5~@IPBHB#ݷn=􊅰xpKXa@ Cp+;i@'K !1%KG;;JT"G}kmd:$GwkJ ipcړ{B k?Jziu3wf)0JyȼyI3E85tb鯅ʌbpFUE);oriH}yuyTa)YomzULWt`^E&ʝ#{!+dAXq1T7Mۛ܄J]M~{Pژp7I?Rb}hEM~/ypi.,Y, a1YvAn[kLtBܦD.19QxwRh n{oeՉ;_nx&QZL1@iOĢpWS/_%5%b'f_S_pQq\c.%wpAk*8gBǥ[ WxnzR(gi `7bl\2 퓛<- t] @Y (l { Zʉ×ǖ( ;LS有;+@,J0I: ,W`: #^d N&+lAZ_tY^t2 GmܫN̦n6M?ܑ<ųw7/.@A:gR ;bg ǘrSq ! ,H >? 1EsbG L3D'aNl|, Cr4J:A3=YP?8Mɲ<ߎ cQm ?bT?9hx @*Dd:0}dBTbQ b"6mKY5jz<{FF>a|p'߁֐k!9ظwHr;HH"XCw`!%O 8'ƙ3~\P2j N I=}DVV*ĮW6?JE/#~Wjla|CaͬXF1?@j:x0]}f^*ʭ om)]+.JI"Jփ'4 97*B%Y)0) ˡp}(='oa>vTFN^n)7zsr)F[KuFFCiynݳd,֢ =d}ww,վFX-dbH`KSQ(3g]5=E2Smn=4SΓk]wS_O&Ep;US9 \ۓ3$΂eFک\6K\#&~i XW`ujznP?n jgEV,3k y_='ٽ uR;G(IIjHO'iŽҘwpKçg "eZcp>#eI@.O'V_Vf>W;OvUm1~R,~~|[G&9`pQܜj!GӞ^'g>eŭK ۲3}._o&lWܝˏkb]~sC#F!-jCp靜fYS;jW"}zX5\lɟ˽5@PPcrf%o4|,-<-9W&Yh6 Ū{~kTFO?r&mLqHhxR+ԙY* 1|ʘn@;KH6t41FA&o > *w? (ZCNOj=se $9tDK s1|z葅T2;ոNQ/DD%@#<}Pz,SA2y:S ͪ*}Fء_!)jXdiHM\v/N~ɖ'N%4N>w+(4yoo)3ު-Kx#kd5H,b2yAAool\-_F6K1XsͿAj> e |W$#4KUxqB`s^I:L>t%;JH"j'^ܯ:FmFh.acp?OHɩCv2̠PW8)7 _ZO ծ &Bl)RAyU3ZS2iIUEl!oT@3X->Ƕ$<v̑qF/(66'S3>-*z|橽ߠ=X"@CJƴ4vFWrOzb;ɝ[Z2\Üd2@akt57i;*0UkG-crag=[ Q/ V~hDv܌ 9"#D{oCD."(&.T;Y{1{^as>3c0h?SFG ?yI$ o^*"G\N>: 6× Ki b:XiVgc o~F#v"K-]1Uu˄! |YgaHښdIt8Vze7@d2%GH*j%5Z0_2|SvVt0f|/Һ;rۂ10^WfT-/g~<[PpٵiUf)x iA_V]!acoo1#"bl/ p% f@`ezs:*as 94S?"v|c"{ avt3 rǞUS½/ flkđ$}N6)M3af \@t J.( >Z-w65a#"]#נBژ_sWSYNg,>)QĆOAj]"tJ#WJrCitK9Sk<X7W:{w6,˟!~!f}$G'Mu!,SfnPaPɨp9"[$Yޖnt(ćD9~*n{7 V`>H,`>sv1xb"rMDO[lK¹oh܎d W6G45V^kC3|G Ztqsz|d"eVcg[m_5ٸfU?I07gj(ZxvUqY =spۦ3@*pOe"/HК/y^4p㮞[**;%5V[ }[X:(YPC[<+%H|!b?z'zA޹[=T)=382j ߘ07o)K]_`$ \K7OIriWAi{ )Q? o~mP Ju1y)j.Ŀƹz|o Bࡷ >`g~!fNݍ^1]x0'+ehLh]AI}]7!Y`vō4\W.ۿD k:-)vl kq93GpZ#dA70%"d~Q.ƸSruO}j> i"DL "[y5 S5|Ae#]'4#Ku}d%b/~ɤ;[cDxR=MM%Xa}dS C+U>0N؟0Pte85ş&AJ`88-f5?G\[R<:_~N Q.ٜf]b*=$%!6 Lt~{e}IZuzk#oX w-|*uރlb6s}w(V.> ps׸ 2X[0xG%-5wP k_\%I<28F=l $c5ϲ h_^T T_|(=R|pK7`mȪr!K AgV {sc1s޵ؘ.ӵb):5 Dmr zז|( 2s )H)ӰZ-p *x=a]}?R@3W)<`jY"h,FJyݑ@+y8OJ:M@rjzVai)G]2'*:`2ŶxE2Ycڌ!^b[ԘPb잰@HK,[A|9I_PVlh񔽵|Li\%<֬1 T<4V.P %XQ[ (OYmϡ93mS~+eGfx9⻱:AGB-Td)Ax#Q(ez -h,eqr>jaCߣ4*@ZPu9F⬞܃wZ>5@%3F LϤ핀btSz0$5O[clƆ g}刋 5 3(2h9 O{Q偒 aUlj>;̸}=>2i~Y+ mHnC^uֻb䰳,/QbpohLPcܱT1׌P-Wf\[ȲB(*U#vw%[R8x/@E8N?hy9S`! [QMHL"c;6?ݪ6z VGz[1,|bU7@DyXWߦ2&a󎬕u_,K J,,1T6QbYKlX`EDa,g1;T<l~+eUk.tv,0Z *s8mAXp柲(5] 0z*dKG{ *8z"5(ԯ\Ċ|)pחSvv0;R4:Co85kebh:gۛ !8?tSg7T(t%EY`.&ҰÝw@$#cFMyZ^ 1n2r!~ZX/[SQ<#6N&ԓNFǦ9 M\Jjpj.˔9C0C]1F#<T5 wֿl&}&&²cٲdxYif4}Ž !)n~Ap'<ڎmaOsSy3_^]ˆԛ@kRI"'|"&L0>a`AvkQ5H}&tFs1 #_T*hޗMVwo@C&P4f2"jq{s]@ԘN[3e%/ &TdIsͱ 걡RU Lt+W89J#Νu`" Y r r(-%';p&/Et-ӡZn<9ϝϡCZgMx0%1Hl"a[! =V~_>nYJdvao#۵K1E- e%6_Mms]U)*;LX;F JcV +w P+c~'el?eאcWf@_>ϡ9po}&"vAvvݷ}no] u/듬 03j(>+7co0wy/O3g@ lH"gDl&"f ֏  HL*±sLMw.:$zٛh :wK=ᜤ0QI܃N{_gնqCKētq~°09ñU*yK$ fMvs+5(K2&f~sEmz%)(3cӱAL:@ ܻgJ 󩌯l|G'BD0qw*U:myI8N\ϊ侁me; GĜWdlyJ*ϹeT$f_nTbНZCy A pK=YeCռ6کG5W jU:p;jJGV;>HY|;.Jk޽`{ŦӓRm\WԁtV=ςnD cscGdWހrOթM#4Br^{_1<8UgSP?}=wݻQ?#Z/ܖ؍\a"힤wOd'\ ;8fgUMh^4c)[po mD9w"aMϕcj(79=D>9,:b[T>f;eFⰏW+?\AU$ĨAd8HA\58&wA~AKo;h| 1k FڸtWFwGv\vA27[Z(nB Vin!$ʨ\rQ;S~:&/R*ؠ{;Zk߆ ]K8''aJ*L9u =a>{dD)FyYFrqŃP5DA[GN7uƨ` ( d~|~:~P.ϹGؐJz r*~WN {+/hFH;!t xj);¹_?-EԾ_NF2 #{j#Q2 w$VvKYY;H*X]%hVlxl;G_KO!lIVˣ*. )Ύ0r>_z$"Ѯp_X*}* _c,g`+^/a 4\#[|jjo] QLV~}ݷ&*LpǼzE@cz,3MfE{Է#3'B RN "p\9ߩ}tdR^ZC.JB6dKqT2_'Av]Xd?kfź0SW-ir}3-J-@gbD_Ik֫z+UQNXb<lY"Ǝ_ Z !7p[wqH 5)~RR~8{cw)~[O|yI$x?$QSg6w{4VKb)}n %k0 .|?=C! !,7yZf+)4p'\UTKH{ ΋P!l)ٹ$ {ExN<4l[`1is ‡4m#(r>+<2gT.mxƛԿ(ԫ {d;#,<0A=>mC&l_`-8 IVdٴŚ,4[;5@A4=.F7#~vrVUa>u;%F)o|drhLCN۫bL": 3ij'.җ5G إ7D?;?AbW|o+䧸Gp"~=ڿ]Y8Knggu g3` nIH-/uj%PNܡBi(`LX Lgp ek9:I})‘/͞&bSmVݣB#MDȺMl,OdR9^GO%"r.AZבKYтߔ1ĚUˬ RY(13ŲpaƫDZ ;ȔY6͹>m։-tE_]L9$H"HQTmKz*/Z_p+%͒>Č+V^[D*'a"+щcY9#uc,'Á/O4Z'm}I>~O Wۧe}Wɯu4=n_3Wy5#N}<| 3T`o5i*ǯNfJFÛfoeA3Aji݌)  1cބU*@_}f~z Mђ/W47R21jSc͎b[`Yn$"W.;>8.R&,sQ+WUrsD*MH=?:P4YL :u.!, ""'(4ls~>ZCPYwC Q)>bi.z˿*ߍTy_knFIoyڊA5kZLbE//\;5epP,Ոk/LRtrd,vqf-?0Ȼ gGl1.I1z%ӞwCKH=(Hn]ԯflxbd`$Xe3є[qĸY,d,HO:Ƙe/e/AD $1Dۢ A6{aQ s uĵV A jHFwc{[GN 1V⋕pq݆;xKJM!|!EGE~%DUEJRfor,~ۦS0l?.0xXn20#sWO-ܝW.r} z\O%k1ޯ"~@z' CW(`]jP:@8\zYj>.#Rdh\jc&3zG^1sP55}nÉ1"P6=Ysb}X.$PbL):$ꇁs9FÜ(68ew֣)ab1'4@1r薲*_hm)Zba<=:tiI?]Tfdncoy&ޯ$]/?$upt/t bo;Ibv3^3ϖ%bы0j 6|yڗ ɏ!q`W ke/5|kTagIuC &Kɓ RnϾ|Àz}9-i_S|btFAeҪ}խL+߇S)]jbXEQFU~Q:B4n_=p, b4 ?t7מ] QX+>HRL0Z[@\WFpo~4}z#Cw L޶jh$F I}<QQ Wv7>qS 6R*W g9mSU!.`(+9;7 Y QBB{JwҘlW8Aދ>nn_lX]OKqۋfj,7&&w=QOrKx>\սDܹ".Q¬+r6rf5>p9;$Z{_O}w^ohR=#KSL,}tr16j%UĈ J+҉]P5|S13@A+>9ú#:s8tňIZƁ7v`J2LT,%ļ~ 7ح^@24J`pFqNV7afއ@t^Xݲ}hL짻SNg 18Z÷? IqZ^ F 5+:.5' c/EpS_ lT] (sgSfWKrsP0}ub/]vd\k.C !WOJT)ZM˷&Ƴ۞ĺI?rՆN.f#K~ >vʤOX=dij 8@m38ݔ!qm>3D=_VPh(g!5HCN2J/ܽN̓Y?1Td,n-Gh)Ɂ`^ *KZ5`_eZdNS¾Ŝ?w\ZDoh[<>]_ Bw}MY}A]1^F%mA4 BʼnYo[\"i `#R00>كp%xgqtV{ FDMO%fݬm}w>9l1Rq8 3f$q:u7 E\V/qP친0ޑ2~3p YxwWfʽ/3ȆY\ncG2 =!N PIuO ت[w)V:rܗ)LXTjDm4{Bxb@TxtLlvhJϙ1"IST+7*>BA m:m[{:`$xBוv[7(D0£(̯r_p؝<{_]c/UsG}5$޶B:y\>9zn&xLIqh c%5 ZcД Z\tu|-0/e4YnK".Vx`;2wj}m$x߹oUS (bZרEZx}SΤ)@CJpCHwjnH G#3bi|ۡbv#7Ƈ!wb)w ;MZJW~OʱV´1#U>z[3xrabebmǐ"(Db%/,*fށkpq(3W yQ' ]<%*^30nV26Å9T.꾵rApbtT挏?Ѭ~oS=;f,&φlas.).yQ1WSiP6Md-i#A<K䴤ہM>b{$7nbyyE v7 OP=:\wՙ~"t=33MԽAdMa\G$y^t:[Hk1'6#W-;(bG}LUSW=_2Ԇ&^X."Y5w̝[YUU;FᓔEu 0?Q;?:H:J_糕yMSM64{*π.bK0RvllŚ94g<)h7Qdh|5Ăw Bn9.=m=-2O~3% ci]ځ94 _3L}%DŽ7-+o8q~Eµ̪?sA\ QIo~OoӟF+.ĕZR8y ht*ݫOJ)WLK[NtqXkm) QdCX) j î?woW+0 \sכ"p]WD~f[ 桇3¯_9xje N\voT0ǐ!N amrrKRХB{q۟>C#+c807 &c4+saxcu_J'}CE%hML޳8UUFOBӥG@I%y7m—J2Xȇ1EE˪zJ&t3+;8N@KXuti;+~ReBH?qUJxX G~fHOwC#p-R1=KV+'$-^edtF@tk+ 0]4: bIv⧶8nh6fPfL.`@[T06 @BeT2%=9⪋u "!O!,kB8/?pW3a%kדjͽ ͂G8|X =">j;θA:'6*dF"aMJ&7(f䭇7@}|D{i!m4Ez|&ʣ@cyٷS$.) 9ƕ.%޴}u݄}'MHY_Lw1"_¡\{I:H":HқHA2~$Q->clc3GS2yu};Q1o\,ڀ;Z@%sh!]T']H}ap|_@ػZ<{oVI$̈&*q&.>Qnӓ@KmR/83#Oib)#w3XQM"$٦V1|@9Ctfq]jcr± ~)=(?u&|`gjvG&8k!!=~Xw|˽캆AE~,ΐ8͍Jۈ./NDݼʄ6C.Yf fy]?r9>O-NxVg?.V&g\%j$3줩UyVu%jºۛW52Gж:׳t0 D.#r=7`_ʯcUxq5 oqTV ԧ-!? GlJ@BnvC\\!TOҩYEGj3h(3t$) ,mzfg*:hC`Ƕ^Oݣ$.Y˞@FWFeDw7*d8R վC3?8^Wߙs''m^_ɲomvi ]{rߥ Gk;`8qv:F1!s F.PgXgluEGIP11?5źt%' PY5ģol.*!\]`5 6\4@+A18,mζSޣ> xbgG|4|Vrզv@PQɤbۋRǮBEC-1D n'HKw)R@,"(Jhzx~;զb r.BU@!FuGhSMN<6VA*짤jR>BSh$yLY_U#C$F\;PΉKYKQz\6U:s (zV2n:7w)t ޥO( @b +3|9t2' Jtݝ5[w9uܮgZ\G>S. ՐZO ]5;v~rvO)CUH#AwR]yYKt,=䫠4;ok[q1=HViZ%p!}ڌ맸(:O_>/QT; >%ܮhR:J 'A94ȫe[)+Sb<&F# 8K05PD."u00l}G;ޚJrjȡ~cJw kݸKlG&\p/И7N'l35w|#2!/^JJdWs;Nl(R} |iS;#D8(uo D*tZraܠ/MI!=ï>Obt̯7OS&'HQkY?#Kf?$p)O#ӎ;4BH&w]L# Z%ϊ%J MJgڨш{EqdNAW9Xgni6YIR 8A#딬!XͷB}n ɲ76QH- >ZA6309\x--E=7_-?Hg.hP {Yͥy Vl_̷7a$ jJ4=ލy|qheCOMqs@FI/1PRRw iy8}zE927I*XhVnTj{{Z|kz"ا@@+M$ۦiSk~C0 h4Ek^X?L$#C4bG\}_UK%N22g/k ?8|%>KD^aqz-]󜽎eF %m,~JȬpSXLL}f5Oyx  >.di/z*N?[wBqV'^3|{nk:.qmJ}6g6 `[]Ɣ`r/\XϺSѴ\!A_J &j~RtN %-T$kS<3 /LQtS,q]>Beɩ7u;P2U)ůeW*= ӥ3F1q 6\/i NjfX%V:V os6зn* /WwFd9\f{ރyV)6-MAޛtY ӛJ~x݇{~$??ϮC߿V)u"pP¼c X1C|j;Pwu;g+`o?TC\O{ެW@ 6Xf{A9A1r1DOx}3F;QݪPr:7r1L5z {QGmZƣ&\q)tЃ2e4!\'+X^b!=M.4wP- йAI>4rW [餙#6vjWd6Ӯ}764$x'o|Em{ errH'x6dj]#[Vn2m^{f{O({.7,]8iSm|OQ>3*GR~dUK9F|5]dtD?kyrqF:ѥZTN9rJȢGͿ<- ?~[0Ydᎇv8u0h1 mdSdՆv3(1ޤr+2߇z-7)N]tk+ɻ'!_ xlU}}^`v@VaG Jn@q-ɶ"epI*瞬m"Ҁf!]3t*s!4"$ a|yC[K"7>Y]!S5ǦPo',6ή5%l1'#'2!)v{ $BnH(*rdz}alT7 4֔5,p9^P&k?xRtym,M F-]m/]ߢ2=lk6kr/׿tI,G&bM٢&c myFc)8g˹:QjOn|OɊo:u%49sԷŧ?_N5&aD77~?3KmJl+ #+cseֱL<5x]f:uS&#*#R#ąkՍ^5J,s8vGfR$&KRiįRBZcIo Ťӵ{}燵š_+쉴y3;"ZjOEf2oiA"CoS>ƛQglMqin~y$[ lV@ſo%7Ƈiix9KZy*gkJV3E?jD#Z6Tt3"2X fH{))=a|UlEQDuyvMI yH;=gmyeE c`am7EQzrX:)]$S2 sw|fm!d2WG[Q= YG7A]a0i 30 1Q\ J^x$Js%m ]c6,/N/SM # *1gۤ&j傜 Q{I9@j?J< =Q„9" ~Deph ${o)"l]Jp;nO |mTV2`7Ȫ=[Tiˑ췬{ztxz`¥)a`ܚQpOʀNDx'HaMs#Չ9φW&kR(J7{C&`~FO&uM$R+~dSDD+mN3t% (Y-_=M') o{V=hDG27+d<Ѹqx mS8z=0ڹUj}RO6:Q1-ǡ_n4/s!"ZGt'MԦħ-'(ǙgKgxr ^:bJ2` e & 4SCz17p8˯#1,ڬ劔ZL^f[̖Rȕ4'C6VgGyjUXgfkϾuk1U2d-r?N@F-Χ,ᙦKKaⵈX@zt1c jpг(G+IBbBB60?QwBA%+;mÙQ& gHf-?tD>Q -:+3.8ݗ! 7em~<4T5^ybŬp݈b['IT8$vMo{s?x&t>1ft )ZCJKWE2fR&a%T'LլR{ǑX6CB+xUNc=hЧj /B[u{BP/}XG( ^q1mAXb]ݬQ2Vܕf'_I_gOof_6%E{~ /Wf= {ZS[HoH(x?[jqdRGcBJ(k;4I=]J96cVRC gU:2? A̼`XXC_7dl=2;CҜ菷B ljy *z5:DO2ii`jQ{qgv$gVwyEh4䟅5T8{i*^k+9Hs :uK 0,2WoEi5RLAۦ( 8=j\rx-[HVJ{<5͠mXb͌2x<dB&rTƺt :V[{ Iq-gan9%Ӿ&"n])?ͯJtoT 7p3f<𔙣(UT%#\t[19Ǵܰ"GO%v䈟ȑ޼:zkk0faT N6vv]pe A{%2!.ftSzpHfa3*cW"%7{Xb?wZ}wft4t{Эw̘No!W$Bpv<=~&o ٿQKǀֽJOWVu%6&18/y\[*o{3нDQIa39m(H^e@ ΂-l 3n%`!;<IޑeۇCv2Yf޳m=$}\E੏`Dǰx XUUn> )Ԓ"l^C *e\iWJ]P$/q80lԱx ZU.8f&촶88eȁaX:'X @ؘdV!%TO_VBXi~xRKnYv,'\,3;Qo?6D%F\~(Z^ 'fd1IRk>R}Ώs ZDwt{+Z̍[vt|gك ; G,a3fEt#VD7/mlf|.~C8'~#D=a.Cxh,s0#[4uAɕujQQGФR2)uhu08Ԝ9Ɉ6&Uønw_nZuPT(hR3yh۳_Nm\$݀a,:m{ZJÅ_'7}>D0W7CU=K5 TIKn2$$Ɗ e$Lt,{faLj|ُM w/}@j+1 xY\ hʟ>pȺV=AjVp[Է+d FU@8UN^F ,^HGt9TKi;3cr`y ̂,bzw=WUsG$ߞ[\-yx%ֳH9~U*hSˢkgp%oAMwY`$dP.OlkJ VT8A781;fT'[[b `r{U+u {B`ɛ?7h z/^+VSTir1LHL#@y1>G=5-["">^&\FhqvB"kiQu؀*lhc}}C30<Ǜ;ikW€N@Vz $+PWTJjJAaMUH+|[F;`z%s”`G%%'vw]T@`[,@V hJnBge#ϙ&,/jqhr=0i%mTkVO3ha[8S(kakH[HZ!\{슩XzOQw /NHg*Z1&g1,b7͐p{]{s]aqP5}#2S3Q_gyjr\*; AWFȚ~J0ψ'V$—mptcb['l cuu-t_)"^#=Yaf{:fkڛc*ҁ??e@L_._ eVJ'%(?tu;G$*OV .# :'/ɤ2H^m8`c@&E(<,lj#PHtNP`B:d) PKlWxgI4ڃbʼZ %(Y#f)ѲL;<>@"anab84 )r6f)}T\~foE{`pct/ 8Ft"@Gm d; ms̻ @2uf8Ii,RH c`m]I#y#uJ+6 ) Hj14 w;R |;擤J%:S,GD &/Z:T+4ؘN_O.Jř@کw5 akZ6G/3ǃUߛpX qAn{AԽn-H֧5~IFp_OtXxS^D1'Qp^)9>ِj/7$K.m(:#N 3;B#(?$#ϼb~A$&q}iݦFI3UwyۿjI15orx%#jHt?hyzVMqWCMD=VK}{3T:2S6Ta=Щa _G!"VrpCZ=CuePg(57V)8o4bJKCc[ `Oo>CA^w҂|M*, .iP"=>o2U & yN^ü9~%saH]/M q;DL'2 *M,)&Υ;jaO![HEiDP{6_:Kq: -Ƌ?ͦtw?<" h߆] :%cWGWq4={^nڿ D4p6O a'ݡDD& ;_Y'CI[3". ΆfN^|H'EL2gS@N!'B+b@y7FbMXAwUw<~~O,c ID. [!q)uv;YzI/Eb"G C4{?9z),CPȗI<ؕBQGUjm;zQ'K9{랾'zBQy6VuH10 f^6S4gm%|x>ޒR5#8X4 |I~/FO];oP wxfԢ)x )d`﹗tjjʎfd}DA`̙^?Mⱟ^(Auc??>R`fvVbcw5E}Gjنmzw%dj)@C:)K>Ig?m vfmlK|1v&0BtD{ }'~Sb@Dt27&Hj}>Aʙp V]$|h KhLv!0 hti?'ԄwɁ;gXq1[բ28c`zWٓka\! ٓ~iM~ߪw O/7Fu`v{d$-p+md5`Ĉh%ǙvJN- -'w?@xLyiVx$uA-n7F̦/ƶ5iT!ݯˣBy<uik7cb{epb @/PwJcɡfZX1ӖPf,!k:M 6)#0L_T?e戽kPlnblF ƑjG@SjB|eZpLw<&+Z<:CE8*03$pK´ľlj撥{nB *.Hl{iƶl$6B}x|'H*^{ ԲN)C&2\Lᴝ ]PQZX"NeN^ӗR6x{nJ*kf&EW?/dtpS2LuK ؟@m c8&m,hS2LT `D[W#c ?h9L/fpFhp?d[Iv4pzPrW+#gEW.&id5X >sO<9uvT='x(}$`_C3b*U4קv [hZٰ o'kǛH>qh_jSfb$-Q T'aHo.VDGnCol#9Aة[sO?@ԣ_s6z"%P4%=K1.7G'_$Y0]L;lo/Umjt仾T_\I#Q0$ 8N-ZW'`ϣ F} ` 5))d(+obzQ8C(᥷s!lgxW-n$0Tv/pJ~aғ36=޾9Y K۸&s En6sBҳWKƬ׭QywjG$b4l#cwGJZ6J=Q@3'7)AuB0Nq &f</u7U^" ׫|?yb%:Gm _Z!Ô~`:}|H'F. "匢PH?gn6oGH^eK?0]9&C[QfZ6_O؎VyTd'&w1yV^WY]#Y\,n@ J{ڄ4@UPϳl*㹌3BPݏ?-{ Ja #ȊK0vJdF|KgrZ&f7.cj2?l{hJ_La5w> O:UO!O\I_kCFȝzS|95@z9RwpC5䛍`xDa7B{Xs ݅8+e~Ax7+'pu 4:rfӼvhE 2Źޓ;ʀd SgA˶;Iu$u0 4b:նu9Z=Q{jˣq_C=I!˓co/#!X5hMbnРtǵ$Ps [Uf2 1#Eo踄/ISO#ic?h7}8{y3/{-z}>wS[ci@)$LkrX mNߝBhLԿf?E?wYRȷ,}4W2) 4Di t 1RZ_U^bԟCnx/->aK=qu,oxDmb.+o y5%SR棍34MЋ(aa/ M[wm觏:71E .OO@obutP^F%"& %t)#eħB/42>vBw;o,%I7(#`eRbZ'LO=,xsϽ{Y0/7:twJo`1\g,I}qbj{Z"~3u 4@dxqZWg=֥25%~?J=ݽ4Ezrp28pg#l΀C9S (nԛ<&+>{R9q:٭ ț/rĥJԅf~bag^w=VoaSS5OX2n;N1y6)A҅l]jSg԰sMSvbn|ldU7`^Qǖ15-mJpKM*A9oĞ eϷx[FVx|T Z/5 Jy-ow+ _"N+NXJgwݖ:ۤ7jDxy&'hJrƗhOl8TLpa "5{AXP"u*unat3dTSF{>,L).PN; Ԑ3Bކ>ft^u atm_aLe1*S? ضXC&Tܔ7/D\&6N;=;|gfM ˖/"{&@E ߴ)!N8F\~=ۛ<%+㕐oh`\D-Jɓ R"8 d#z  AFz$gXMj:*pHy^w*v/KnE<(J"NXd[wX/7!([)c&3b Q! BGp`3?^)UӻP`UNvQn%4rSrV2eJQGt#Y0A-Hl%ߥ+4K1Ipg29;~<  Y S.H xYSc.7e2`%M6{ i.RA]Z7zg-rG"w+)Ab}5Cӗp3"vG_ ?urv=z-^!r.~O[Ρ}~B} p|ӇzJ"aJ*`B.$j1ۼ7?Do{ȑÜy]b_#؛VNrD0'$_/:MR%d >I#q?ϡiAӘ{962{q&An tؗGkPm(0yIqKN)sNf:uu}9jlMAϘZ0?mYLbg8ˑgۓi&wi}vrŴh?^TrOIy?3+پsnJLD|2gMõxt :Im/_6)LDaxlA lʛelje@Z_K NB$C6X[V5{+xdLK6;D>7]pP `pPm3I&WǩƀU\DKd ED?GMKAyَHZF! .P{1o GL'1%s6zY=9,) }:iƓnc]“P5bgetYs(wX5+66x]dӵYlpNLe ϐrvIz3>yo">f=++b"p+2Eꩉ;WNӗ52U >dEc k^Å% (t[B?A(]'پNՐ~xynP|e>^ hFwGv.ٛWu~]J黎 ʦa%{pSOxe5`xg֤m֝U"Mי;.3WWj`||-` z9ul蓐ڸ1"y!T#~'=I+o53_tL0& Pcu}T< 6TS3=| L6w`n¸I`9"PZ+:>Z`TRp!˞L'1lp/qn^Բ< 4dEE 5ߏ`#CF sXK-0tH)n.b27gt'V{hҽhԡ8ܔcEy-~L2lf֏ TgB 6c(KwmWD[rn 6xZASjM:z!qA{8caQ@8ѤӽzP0e0ҳϕ#1$>L"_rM>3dd(rvrCVw"<ۈI cRJLBղCŭc`7eUi/ X9$z@J /y~Nh_y'Ƚ~rjVzLDK^@Lm8 1R=>/eSyL'){vX2x\b 3UDk/*UC~:)Vݮd 'B΁ͧ+laǩ'ꕈゔ*bg{pb;^\O!;_rAKHz%gЋ+wfN~oDQoꅲdiB=v_16h_|M\(CVU8;0yn@u?ThRg-b}僦f4"ch؆(dυG,-8f&i =s܊.G+Jî#!( $-6sl[s/C`9)0p6M]//<3a-v_\iI5I4~>4b}V+`89#TUԩs1oj̠C齜z+uc簻Y;&b TxegEuGOt|kSiwF|Cfß έ̥`#lIYC,t:S>'%}~6I+a4λ.B&GN̋p_`ϔB#޳%SN|AΙ܉3'3^=pעӀ?qS CK$-ڜp4 rB8aBu:UG4 v'c槿Vd:4H#H*|W<3EBѝ,ކq ~p駹]&_0-˱Wm*VsNĹ]ZRAq**urBu)ؾ@ɨK8{oeK4QIHCFS/},i.G\a )}rq`/@u![ `;jİHSg|v T;3WnRsM4<&;OާϼVTqBUMncٞB!v/BiwfG^h/pT3e2T(>xQ"x!>}H_ u>'.Dh L+q_`8`S M| #Mڶ˴m^6@M+[JbK/Z!SɆ+rX$?F;%inh˩A7PR*]ȧ9~^{k S8-ӫ4jȲc ˜75XLMFk]:sD|čV@a엢 wXBRYssQ'lȭBq^5~%썽x M 7![Kr"ML( EY%{ 2T."vu." Fq-qi=^4/^\ǑtA$ iBtA<$?̳|lM#FpF.R2٣43 bfy[xc-9HQCrhB"wY9J i&v'N#(v sHSGAOg@!5H}/WڡDIT^xiQC >{|c[_Fd22tis[_0l!duz4pp8%g\㘀qtnd$TmݛtV$P\1M&|YA6lA33ZDA0OR\o[OQ#w.͕#/p:R z"n{hl?9T~ C!Jy{2_ V@n BEy=״ʧ,Y T ?0DqIڥ?Z(Qcfڬi4HbC,6-RS]C!$-ůp}| AXiQj>)ǃ>-@ !;BBw=Hޙn# \2xf#U`j 9XEngľi\iw b Jim{zbtv#ooZD'P73 eEhAa9 <S"Ż +7ʇiN\,}51yoBb}V<J `ʄ]ix°0u,EPմ{V;jDŽ}~t3Ž75=&%7龠 ]Gh$d1Aj~ǐ*QIպ*yc"~)y5Ί9|]@*)O: VeK2|;ߎ$:CZ\ Ug[.Ud|sE4pMFAKc[/v\А$`]&iGX!5/Tgy,33hnx<i<;|rrq?T ] B`Hf8$xI!`Q46r;7~ (^ P[܁<+bZ0QtL*56q*dTWw/7gE%vF=N;nvn cxʍ-cjZ&5$za0Co *Ee\ s#R 2?oЎ-=?ȉK?弛Z~F|Ls>'*f@`LC/G<$(sq>c\Ukgzq6 9b&"iMR hY6'pЏq9IX0j5 4H>t@-/yQӶ$9U/YmoƵ9fs@K#+%F&Q~-?a;:Xrq2*Hq[:K*F׿1\pHg{a_(=*b&:bτ֢}F^C^fLg@ۮu&^ڶ56Cke3hf/N`̼w?&!rrХihCɾ\t5nK?8)̀ͻ ߋKFi~;Y ~WN5~9*wոp,eJ[ĭ+*yUDYPB)1GP W deVbdv=ߔ׻7٭jU -MmbV,ؕ~-%L<;"Jc®7 zÌa VΙD K_d2&`I>疹2EmCS 2>pvnGMQ,W~-/3$݉N) p8QGL#X6 [-t,SY^, <-r*"1t2f'1! ]Y27R7]o¢|Z^^W ē6hp~?܍r Ss]h 9-$~+(e쉠ơF#pP/ ; fWY>nv1y= 51%l ؝! H4N}$ J(G~em-,#pU*Np&=< 8I侲Nl2R t32#,os͚WG<,Z¼moG R! c^1\'lt/V-NT%j "Ykx 8)R eF,>sQ^"LSpqmZ\{T]̖SfR!\e8Ë錆7&2JpeM<V] CDk[06(u@ۦ@<3 S m?-QE;Ux^?FczPhc? : V^MqCű<Ø඘]g78ӄlLuKGzsK-0߉^'%Mؼ0V&\Q,0-Ԣk >^'šFϰS wc^^kʕzsP LbysԠb3 .*Q%G aS(yNИs\[އ[a\ådAgM)wuUu;pxxMbUxATek .~m_¸5&%FZG[N msKqAYG=]C 1#evlCXG">eHLdȞ<_x 謚wňQ qL}-ia  Abd+J2Z^CuA y6(O*fb5c50]zT{{zAX۾ΰMzgON B~8qW+qPӅ_̑^;?1.vᕦ=S:L;%L+5K 7 o+qV}`M;Cp0}+2b<AHV- @#hg9^~Nrzsl#3/t$}e>@f mJbY䋁Q$`][ΙYa]a+hP%֠.+'UȬ2};U~M5/Y-@x{EkJ+i:9&ʻ)W~f}[\dAf_t/'Rf .n*W4q5-ma:Xlf?f+my6*bT~?J%>\7-p2u~}afa>2!6{;As9>iM%a6$_" uAWT\\Lh>'O][:?M@Nr*ʹi>w1\#Tbt/B@56/YikN: kCx j0elLo+.HoLܝ`^7E~Ezau νT1 ;]&Y=xVp%&#˚oϴ*6_ϛ'1HkܤQ9B|yyv><0vdČX Y=# r3f>Bn\|/O|,5Z#x^~xS_ I9:s퐛q2:\ "aښ4G{(ODY˵?*̣;=ѸYәn@h tT /.=A ?SDV?z-Cf]gF#/-)yݠ˪rד|vUriprL=O`E'~f^{n5γR>Od ۑX.znQ *bkc`* ]!>lŭH $J1?!CW؃xr~(AGwLi^ A-$/u n.`+)uEȅKgvI$(D/d,+-8d´ :[mN('OBеD]Ϣi=x9UDw7Y KIKbA`H둪X,h"Ц|X? A˹;e 1ȡʝ`q.`ΝL|k7ئ/}~_}k m58:%jMyUB1NP˶1"޷p؍ B$T;&#򭽭k^sTnGw¥x5^Zk+/f3reςu2twEbu\3S4`ՔT{7Auo5#߂hiIROʴ`R֭ޟ,q/i4t S*͚xiVAg} tP"۲ mJ7bީ5?JNLCg&a8Z^Kh;+lZ({T ĨGr۶=* j9i9ɖ/Ì4UjRbl26ȔPDG<=/YHfT p#mkAL"ŏŽHN(2qKS#AsБU*SCџ_mj3*9ɥ#g2J ͋%Px&%'(5oh9O֮!L@RGP@e#+ \35f&B&f)OG|ՂgSv!8,[Qکj}'&?4j-n6]u_Sh N7 <1I(8\x W琭lHw(U  ͓vYY-we&~uf9!&YF݈ٙX@&]~ژc nXf٢vΜ[浯EO}#F֘hoGtmJT٘  4y#L GEnh皴@*AcƘVC@zLcB-μLQH "-Ɇ@Ms"4&Q6$0k4E/Įi T0)l:YB oU>R| u)t;#K? ӷSS,!mvׁ uR@'Z[q0(͝z #n?Vmjx%vBX[LF)<^I沼t_dw)ة<7SGrW .v$|뗶}iB5yfL7=F1vgO7ڕeaSd )\f"k"G)O$X6; W]u5x$*S/^bj ) j?qzbyG+֫!@Wm:+ZZ79ZtQl&ICfPE?fn\db ^gU~:=Tl5A0B˺Ŗ\pDJ%m/C~Y~# 7;/[9(pFԳmN)ri6X| sut8P+Wl6 Añ #kT,eg,}1r6Z[M~@upQp߅yt@=Ohfdtp8 f=O` ȮQfȃg-qeds¤0T9c),NF8CH'Qq˺_.FFzN)A[ߧYmCV8?Bo|Hf~I!!C ľXGraP9x7h8U:e) `!1E^}C c^jCbL5 8+[ZjXoĈf\h5B#',T #K sXs 8 ϖH7P,y8* XD~2 sFu x3H۪6I:!-YBAgm]%mFl~d_X<5թ.O(nTvL Y=vbNp= +FI>F=n1, xn ߽p,vb›h&"# 0Z 簗:'rC @~A¥Nڪ)e ]3ΰ[XEAT~%&}5==>ŷʙ!š`c{jkNY70>*~; b P;49_2[ǛTkLzB׿ʏ3-?ÖBmL4ZG٤KlM pK|guREݠn~blcn`UA %'던2YdWXox>ص*a; 7!zJ( 7eOK&g&zw]t^yG80{nx)ޣ& (W&wp }'1J,R<(=pUߐ9<8&Uˁ/k^w2UX[vz1fYÁ|GNy{1J@㠳M>4OtkjKT|͕Cwj^"* =;_s/m-#.j+-puQ9iDDe[]<[@s _Hg15 >.hpW463{|K}&,riw|aǶAfv㴗{KPw wٖpuӀX#0~s]'4{C-|l^2JpzYBAlvەR,#%MTṴ>`EM|~ڔbƴZa5E@^e],$L.ުC{+33h#,us92އ$ɛU7dOglYJ/R?+,R|ghиiƇG{٣;Џ;wF3"i)Z4 ~灻ϐOL'XR7 +EMi?n&$ 'RՇE.ok1 sr)YT9S)H7^87> ֫gP7,mJbefuT})f!ǰ.a/)ʾ k'W֚ӊJn/*e!nS>gE  m=zM*7Cϣc}983dpE͈H?/N\VKźlأ7=5}^A\]K,"3L:-BBTI򧈁Fbmxx^wCںJ$7(Yd,Z[EdfRm&/^fJ-&5 4)˽\_O{S)d/@W˜M;gt7΄McMf9WXW W!m`!Aׁf _E|`tkwt)|1^%wV?yH'Kˢ?wc:3T|d_&H讽UPN_o }|1[xmgmV PϙBZ:c &AB&L~G B.W &\pw8*  "-.PT{vmc"Nte_Z}Z`hUc*ޑ{U+3".2J@LCqZ$UPdk;툫SN-[:`jF&*KWo|0HT{49~ӎ~ C뵖o\'sl8Ti? /SQiHU\ X[rРU@։}R?iZ;k[hXWIW:Qu).V_.;dc RLJb~ӫj]+tfL¸]!ݚ`@& ܙVT9fv^ۆa)jgM$lVU4#|_ͣqɵQY ſ-ԭtdϙb 6Rb30f{YO$1G~1gѰ0rLa>{ՠ;4pVYR\vDUo2uUy}ۡh3]S3Vô}=7t팜&YZ07} pzy\EI"۸"$RX$d]<]QuȓxnwUi3~hAqVzRky}eKުENMvr&u]`&C&U]qAcgi%-d>"<ݢ%x1Og.J3t'|s$5x&$F` $%J҂?,֊UPg:id)ǴACo}u)3V5#MgUr]?(2'Q$2qHCHbMar~~4\!=0V9trﭺ:L|ϝrdFuEJimdv(z'0~h<7d61B+?Jzu:G,?+#aM#"=k]B4VEo00!>TFQp.pVOv3&r( >5ë-s99-=)tos[iGQWѓGm5x'YSbA=xTR y0/vy;RV`oFj8> uz v({{&;;.R=pMm#Mc)aTbzCs@\[1> zT:L'0L[F:aNSn c_a"Tg2pa,L:S oL5CF$JH:~b3xH\!(qG)ІbEqŘᰥq*?aܿT L {uCh2yкE/E@B 3pa&Yo\YW,cN2.*g?G>Ř,$͡%𚊭u2yUuC@t,&*R _,oj_Ÿf/fP.Ȍq Dr%.d{cc ٬BLhn~hMBQyS.[1:5۵>S@.非PS_@JB[i oݠQc=d \n}c 1P$Eǚ.[mY\nX *].\̙cGŬWȴ =g4 e=/OA EFWev4.S9A`ѯI:s_6,TC(cFfF X^O,`r`*lU#ٜ$~FbII#2xS~08_^_4 wSZhHͷ16/vr|,$|K,Mu N]ył[N;^Ğqb&H~]n(sfF) hٛzd֙R*՘ڄOdEe$ian#Q>vR&qs*?Xϗ)Ck"s$bؕV_B!w.cd oHqz4[N4Q IxRTS DcQT1w)w).uE)S,I``%M{`^+~c֟Sǃ'/E Zb$N&&?6I*@`Lun Nд,L|X^UZIRqZsqdv0ǧpaz0/k<) t8VU@̳s\4gTёX.Nk3LiPΕ=]&&(%nWvueI/MP3 nix.!" ӕ7NA< no!uf̡kA8wԋ^;:i;{K_0@gҺٌ@  Xز8JdCu/Irx'L5@i#^aT@hX |hG/ ЉTSd~@${Qc_ )R3lpe׬zi7C;ݵn8`u窓t{E -Oi~LQ<6`%!Ygϟ~OV#ɔɡ%]C : Ym }(oީ=ĂZ; (48m.u}bR:aҀYH4d~!?n`">24y2'` PSO&+_))º"j}'S5 IN0ͷ؆l_'2v ɍmry|U Bt|nZ2\&tc8ύT_CY- 󔲿XP->10&gkQFdFO#w%`t/u)#|X^4'mYѭa6-yH-ज़Ih H慳}CY=MCsU}C9˜'L!$Vy H/ V';>% $QJ]A4R$>d}$O֞<"!FtȷP*rnr!a۴:R ̈6E\kf5@p϶d,8SH]$~8o,E™6qY:% dv?|*X'Q ]+S}QmzNCաNEDQa+!R'%σ)ʢԖ9-$<ʎrHڎ >.KNY )+[>)[CxF^58y7Z5<%\Hln%Һ8 o=aqdT'>6Y3aEnMϺ*w2Kw,m:ʮ af?rTC\m\EOz~${cH9mRB$K$r^peG | T3-v|o< 1nS#(Ed̂u/ ֽ |=<]Ψ +z 8;h0=@5XYbQoz'6 ¨[<urtF2pSIi5pxT?&"wy(\i>U2Wt4w:c #{_YGD@-{ӂa2zON2J6nK/b??U1eJow0v#UbYĽ\{ u~V9mE>S\>&OESűWD5C vJJBy mQMB dPlf݈v܌kuB0"KOBnĊm:$/PBiW+?"Zi$ ]qlG e.CM]/9\%v|_Ξp;/MU ]!l:*>A(/dj\]Ȭ L_FLq2#,Wdg{Tq+΍c Mr#ς0$HQ^ZKHө9ƺ7`# }[н/ ?koЏWHf[^Qr;4NgJzȋoh1'(RuYH 20Ain1|^tTHnxn>gvmǖjPYiQe+UΨ VKI(¿*&2ѲNXjpx5|v"ڏ}/áO/gt !32^Cֿ1d>#kT,U)ܓm!Ǿy O|䐅, gMv|]K|r=Ls_`˲wALt{6UТWa$JB/A؞suF|\X( luF?,I.dqHaQ'Z:$zs])_VyŠeRz:. m *Ώ15HCz8sIi@ޡȗcMSwE7]K+Yl*Y'?Zf^RM^PNRNkb]:i;h ؿPX^61Lt `^> p~Rti%Kx 6ŚͿ2ӱyEb*<~(rrA@EFߐnŶ^o8X@ W]E ?vTZ$Íď;]- d#ɒ.yF\m4iyV'Ti<ǂ/cY׽?×R?|h:p K; ¡̵6S_C뒜u$Ntl 2֓Ti${ eb|EAG . otA7@e|A/*?Ґ̋|8b՝f9yQr_Y\揭N-bx}B]KijvzUap9Յ*tl<-t@Övwq>H&Ba|@_Ktԡ h &/ C/He:0 }/x%S?ӅX&AXX}W}{_}3P1/5W,WӖd0 II B]īH䴎}OG}z Γ#!QJLOt퓄L''*˕(^hLn4ϩ.7}k 8 X=ZpDV@BI]\:=?q37b+hCMu)'p%)m=@nxH@xjɥ``}eRU_BB/0c{mM*; 2IZ zS0j%lɵ%W|AF!˽=Ԣ{)Ex0] 0nOWZ)6w/5:0fk+9!״G#+1!.*2<0vf D%s؜俊^U9'!&o p9T2ߵVs\|5%bE9yy o1ClזZfx<2* $^|=KM_ dW(%oM9 s4Ee]Z)ad>iܗ ?.蓿Nar@{7U KZs zuBKpsS;I8jD)!=;a_ӧ׆3#lushǙYoL~ϷrB+ fUҠ2qI7P=M`Śɢ<=Y8)Vڳ*5ھ *t[4ZC| F ZI$uu|S^Axk}}UdW'T'LȇxV#J`teCx4vZvKz OznB3w!]ў傐tio >M%[M݀B)9 X% & ,WIYҴi[/>=; DY{aA؁S R ?/'Y# a}bskkMB .w[y0FJܳRBWS- /m#l[ էYɏXM?%)qA1 ,5r SL?i-t1VV=l^xS (j6{猗;mW |4`>kג^g? !f6}›=of 0">GQ&V-+a5`V.WMca&|L _`ʧB[V 1w&x˥ec |zSCrQ^a^>a6xF3E2j-&(Cs)f  !k5]PB)Xr1v!?r)&4=2 #w$ioa|ӧzhn]~<إ }@{z]x'm^[v,璤vd9g{o bnQkTx?|OO@ XPWLj{ir=rˊuӽg1 WZ9ҐTϬ'p;xH^gx\D- lu6HlVm[_`o}mc[暢)bR.u#f }L+o  `a-^YӨjM<$^존b!XJ IϘA@/~*){~r(0@cs flve(|/\?AҘ0Fʫ`Bω|m^(i^(AU0PS>WI(+$.kO9UD[mMt$. .ŷ<]g*%/ o-Hk[kIp~v^=u> &8(J\1͍ZJ^ *8 XrVZCɇR:"LW$]l;qc*I׽¡lA;OR}G gU:)|ſI͜`FG+ 3!5,',{A Lq|j AS%;Mf Um\ny#A)% ;ԛl9IҜ6t>y犚cw|܏xE FŢ~!n)ÃW #ׁ(ȧt ]&7=pѿc`aWr`yNN`;yw'd'#bgM",SGR&0J驶V]En&fCx$#qO"lԓN@f5FZ'Kd,as yMr{qźϙ ?2da!6 DO$Ym5)rkn8Exc{Z'RܶXBH']¼uEv|$u^@[Vԭ5NhP+涟4XwJSTL#Eü]KgA%\gHo⓰dҵY h]0%L Ąwk)3)nP X<ے OT -GhTu #Qcy*]NO ̎r>=wD!en P~Znq}(PDe p>5h읪@?|4n[F7.*WB~yDJV@(tezqnK-*M%DGj b?jjԔt?%Hy[G^csSھjWAv|#ujQ ly@ bjyb(&Кm&c*I`Z9z bWn7YnK֌&&q!MӋԝogϙOt/ğsQQ "c޳Z"i;4cI+#}AY3 bgzHӄpJgA6WdorBSK*oHR*^YGNYl5K:N.&&9Z8I?[ݖ&4p&+슢ޕÜ$9,wX^QaP)OT4X5hg_Q.淶1zlq l‹V\$ #z(/V/|vT@݊n_ß# 7M9Bhfm ӃH6GU0}BY+ϙ8MpnI"DǭHE![m=˘bV[сcm樧.i baŃe<%/{$qG(%u!lP|$E֝  =R \Oҭ93e!dfldYׇݠ !ͤ}ELcۍ@t+9Ɂ&_QNf55`.8s 壴GzBYkGGײZA&P~E_jT''83:yd7p{$Ct]㾝e[&d% f)TY)pI0ޡz.Y9uv]56"ң+R)?. p 3ȼ/?]aRP\R"{NnwAJ:p6 L PcigB-Br ٗɳ%΁HSү\ ^TPArU. B֌#S9َ%*vM;b$sDn#Yoa ?I.\%ki⁹" >!=~CCPRiU?z .k$xZ *!h{ZLo>WPvs YDU:)MBIpΠRڮwXI%O$`'ccSR&~X}fr*!̡!)$*ͽ"u=0 1D>= J}^p@Pr Δ1n/$ډRlU{L>eQ8qœ؎5pv%δWX리𳋳+w(S,2)w PqfBᴄ}dO h<58_!}q?ZG݁X?CU 5b31&Q^Hc/\dӯ0GA:V.wlpJnE8d|܇KZ`Sطo%3VLkxCuXoHFwjHjɯ+fKƛTQ(Ax) n}H)Z'qTvW@ʉ87r#e#zrEE`Nz&wbZcɢ}Wq$Fd ?@l?wL!r}^PudFR :i4~ iz|35Cz]@_NN\ wdq$Ȗ3{̳Z2X~Li᳐#i`Uw454X6pcΜZhЯA倹e[CT3 S 2~kL4*Y?H PR0H *,A[?su;/E64!j4}Y-h$ +,ͽaNn{uY ¹_ ;fV`iR6 Nys7>E},ZED/v1ϝYuLe=q@s~,^wlaFŢhlPV{ (A+a`H$Ls+$OVНdQ7rH 0vR!>! q橖SӈhqQrEӮ%Ƚo6'~Y5@kgIEn3&Yqƽp=%0vj `)@ \9sKy2lg y Z.=5dw7(. ޛYt_V|]iOaR7yvTG&$oiك30ca26o:Q &B෾/3y2l]3LnJE_ E6/Yx͞bp% ?F1w69~sU'e9Ai6Vwսtc9BKyϋ}|; _)ٴGG,x?4qeW\ypJT()4𤡁Ho=:m,-L3\VS;;!NxN(sQNb|c~0˰ɤcmU,Ii[{ R*;y*Ud]fزNn cZ=i%w'ܺo(}R! fFWxUtbEV/h*q%!XvP`FGyqOfOR'WL/ՅܮS9T vw7q vb{򉃕eҔ׍͟Pշ+{Y6 ":k3] y]γqao)DVR6 q <+ɢ-.hH$f*f{f͓C״k_M 雥Ï!rx {Cօ3k'*.2w d+Wf[=b{XsNOϓ=Z ZD!FG͆H<]sԵF9@&kb|ǦdB#S0wT!Ӓ,V/avt~T1Of3f }=*3phu&,ԏ L(,m-zt0%':"}+ p*2'ʳn΄/˘bvz;3i>|@.BVaJmPE * ֲҽrHŽ`FM@Gt3xN'T1+YF6c2/Svp5V(vTs̉S-cDB5V$TXjsx<| ~P_rr? n|@syZhCpBA c,rhtْQLyrtzA" Jc ʡnqg=qduUrR`MG&5zakMQVM0T,=mL,j½ l{þK癚AmTϹfre3x{@x+Pܣm\/i~p8! oiy =h1SeBϥV)W}vncjqheaff]'' v?ݬޠ3§&eu@W] ls6T"Y/+@Iibw JZ6Oj_AsS2Kk3|YV”1S= iҰG wTz&B .$D0g7 :3r4V1m wt7~vꃾʬ,AJcvhJ!lzo k)A!*R'74>uҋUޅFIedˮ P59)-X%*AWC~t}++qJ$luEƭ Hdm[#mT.ywIWCRuW3bܝ &ٲ4?#6q\+r~GYa$Ǿ5ٙ+Gq<n,AxhYp6(cRgd[7jYv>4('&ZR)^CUev^MrX3N gIPq)q& 2WUྶ mAQh/Q#q(uK1jb|Cs9`;|Y׬JPw(89X1{?տ:Cr61aoFE~ܮAy⤙>\eђC8S#^ 5QGM~D"'˟=T5]K~g}hZŒ4ͧ9.:Y/S0o.ɏӲ;c \U(@>Riݳ76ao}duA#9ÃUi TI^ 4z$$4ϊEӒѺY _re1,yi"b+U:w[Jp+X].Dm}Z۽TxgeIwX~X>,_Nzw"ۈcҰH d}QzV*Az3mF&X|K-P)gbK&-Knf7FǹDOۭ9hg>ZK5T%xs"ȰqW:{wX<ɌdrZQ23'Sw:8[f2I AfdQ)G{;nև7ؚ^y;#5ig8l\O$Zcq ՅogeFn0[}Q6d ;61}mPq:^fNi0Q*ǂQ><G ⋵!y_r~9N,2Ix&7R]1U3k.[ww ƌgnoN(5sX2s܂9˙77DÎXe"'I~HXX!G  s;%O xE_#nD@Za\|!,G>v(zNy d/?*"?s T^Dxz8ص%#sqQp'|O)aT!s!5s?1KhsVRswnn^ $[Z$@T4=,N3o۲Yo"W:VZ4pf}($ J:9]X=a#g&QN|=,~F/;>rn, ӑG?;G(5J54E )ᢎK9UW6pp6&2Y{u%ϪzR8\x{HgEz'4rՕg`VQb2/:g{=d\sي;L92|=ŞlRA1AJ_7 gǫk4![y*3^ rxN(Pts-F1 yz5ڭ7MMu@Nn&00svlipzl&Ku)+!Ay_к$ƸU1_^$Awnq1mZSG4㸅gJj[4#%l~j˗K ̩H}6퇺 çj89y҇+i"*j ak?F^X@g*js~rNQ#げSM77q#wДiIǚո2PFy<)@ce4|:橭@b+;n @\r)ל|Ku 62y4vP aj55 鑮N`dX*֎Q9Te&yE+o.]"[ ,mJ4JiSà5;Agj5c) %KqW^`2#2P_GԴ-%OKcf~FX]6.2^,\jntz Vm*B@:(1^v Vd; ñ-4ˆmI ~ 5҃fMF`zE\!Θ́T*>tg 7p2槹$\4T‰=PV%~8H,gJlϔi*.<"U[иzYqAoe()fVo"tv !瀿¨p-8bN@~9z[4d;˼USC?w~*dnU]=BÈu{7dSU1-97;gBW&.Glss`E*a57^sS.O:_Up'` v70އz[]"U|>&zW㤥-3,0l&N>QCaOBZ&rrVnJӴ1Cz,_~jާ4r/KO [!:ո&Ey:s 1K ![R?c4R*1jD"$Bb[w+'O/~t>67ǝi"G0Rl2wʶMysI6>mHBM;>ՎK4?Eq-r|j [RiV{Ke Té4YO~ G?VګZx Ees Z0#$,wQv3a7/&, Pڐi0ó'mrwH}BP0Ƭ<|w3FO%BXbmF~rڅ!2ۥ/E]l?P&`QӾVϥS0(~/oȼy/ =( AcJHQЌ &+ -+:@!'}u 6<ӫ|֟-@%dz5D ^5M%":ҭ$ W+=$vPH o#r]D3gx3?#{B͔;?x,\`|r0}BLʼn]2qj4JS5)iYvBGoiAJS:$!?' y-b6ҖTfؕ08KZ^N>:`, d<. Wt#Re|oEgVc 4O>ҽkAu"oحk"zZ} 4?u,i>Ճs1 ? 5qkvB~̀ei)P6}++r,K-,޲.q!׃[^!e\^Ƙ Y+G%`cz lA&cDOk-#o]0 p 2 ^Ыx[`lD^+ bh !7Ue ߆>aٶ0J\,FmDOݤȞ$zkvbH_h-\JDoXZV^+{!|%8*~8oiT{2U-=4 FِAFA'ᬅv,WbFo{q R3X2cme>>ʫ+?M'+TL9fV ;(+*e1YƮ]f!NPV_-#ȯ\p馦snSC5 ijd]bBd'}C.&w+pkR=IilzLz+z2uq.B4,yqEx_QIeTX( ޴M/U9 a*:[6FYug\h@|RWgzV˝ ڶ(}K߿.maZ0l~֕ctEJ;<i^G὆T}3>EUeftyZݎ|fke T% X>GS,~Xjwx_5e'$yy^vdI{<˝9.;c2?Rah W򓞇8ƽ;e=n9 g2ljtr+19XLTt Q2m>@O%B(LL;;= ({Y;"ڦxGx$hW5}Tu}2d(: 3I^vsJ}s'Q;}r8AezP$sEV66Ur\% AtS R/&if1Џk+-.vU' `Yk5 8͕Mt.kw캤bENp|ϊ+a..cqv-TMd|Jf7tCe2XN@ػt 2-#Xkc' k@nR!uveZhDpB}+O8Qt„zYT>Â>eWr,ݴ2q.cMZ+95: V$jyJw*#z:!7nsd[8~dq(b,C H:#QT[>\G!iՐxs#b'"@3Ym/00e-w|FnMc]冑2[6<*`"5H0/a>ͤeBoԤ1슀$9Ɉ=~`/~-AZ^^/!zR hY)"ZXADÂ+-_5x PsJ01;Tn핦}i-Fx<`_ "N/$>D~Ca(UznndjHk"\6|+4UEpc%+]Y +d2٩{ OѬ6~J 뤿ǥ_P ܽQR|cqo&&`cGҫDXj&*,Sn)_Փ8>+4nf-Cpz PV,m3,Os/}΂Ij% AثYϖPa&dK'\;*- .*k+h0">]㠌Ѿ^H%Vv#!>?ir(C#DQA9+\C[Z wA얉ޭ?r. vȊa×V5/J8"/ Mg'4F$ 6b.pZe~4ڻ'A[2YoK ;U fdԘ0 fԒmt]rVJFKZ@dWAzyϋArCU% 6l͟ӊ7ZjOذtG m p2]o Ѐ%z(nG/3,QB%jy<3x2rܫXfxчd4&%l;M[Hd O@.|sA)W&|})S\@ڠaқ%uOc%snል{nzSgM$ d|̧0AAAdxџ.MC;lUxJQU'cB/2DLwøSrV6G_apJ "^HTq6Q n-W1gŶMaRYGP#HU>]ΗVν-۩Nޗ P33]}/܏32x|ݖn=ŞO#T|$ 2&ţw$ Sd_rKOi?Ϲƞ@ޫscjf|暐v.\ sub7'S]!?:#=*㪨e`gs*-|3  5ޥ+9`UO>n/>,{CG2F85z=QgG'd3= ړ%qs]ICXkv\ jkA{)F0N먥k{!bu*A]`2'Uȁi}u`YRL${rJ>)ҏ'`RB(:%z 4D ϋ#0U4OFVsh,Eϟa+F̃%#ĭk~?)j.ږ"Y ƴB NjT"\ڠ T)fl=]xޭ#紥Sb`gF4 _L囙 Еf3 gݒ1i4gXcyf>|ݘU=";%wn]EKV yQ3g޽KжYTy ~hsL7Dg&Wޣ:J̀9@˜ NՕYG9gI$8X\^)^ٰiUiB݊U`Z)|Lf*SCԯY-1T88b:i 9I[4y+zh%*_EְKd Nྖo1"bCI2)مWj.O@~47٪/_cK8h rt&VehMNUsVʏ.=\JjqCYun$k/H}(h1qg;B#6g]Ah+xX˗:Xv3v:hv%X%|Z@?DpqSxa`d[1KL; g-bYp!h?ryQ@W1QɋWJSfp i7S,,8x&u- lX̘^2CzKW[kV"{Q{:لxY6EȘV™WxVa\頤5Ez}f#׈[!FZqbt[UMMcj2#t{6pǙW3x~\pӝ}?ci]n[uap5^N0)ՆY]ʆCr$?Ǟp+&:`Oh$;]'{H~!4l@6k9iʚ 7M@Q,mQšE Q8 :'ڜ?=!=Z2y_T8S J eۢu80@Gljkưz4#5&,v!b1HBПĭc3x1ЋY)оeMzׄ٨ьRoS&6ۼН^KB=H/wsz߭ BJi\J/aRЖ1F)h>)|e)BĻt+ S!2{rePwygʻ,_r8a_M]_ij%vl}AZ {VAd1{/\0CZsQTi4Қ1*x8m sC;N{#^vWe`EpB_F=Yǫv;5}vB^6yRO]&e_n*T}mr"Ʀ;3JmLH\a\;\BgvOvk%g3}T.TH6 VQt##wڌ7(izS?܄+gk:YAܢ G`i=/?YkFVT+]FmdmFd-c&Wf%F%G<HMm|S2* G$?OH"2Qb*WuQmI9.$*2\"QGϭH/t؉i7'9"~~HȲ|uַdU-gWx!I 3ud ܍ZnBI1lGM1s=&}Wn:,) )*}Vjbphc3J8lC`} qg6y'Nj'gƱ TzEsȲX> 71}6ܐ#F3 w&?FcNn yq,ko21R0)y*Ťp $;qrM尫"l6IAh^FB]='mPZߎVc#\Mlx)n梩+2~71/S-=9BɒD=+y}*{0i!t^ 6Xz|PYJ;k.7ۓA!(:"`㍲7 2BKm|.n\ghTfy@n~#BC Ƃޚ,BMG*:aہ[VZlbo4EZ[Q֐k f'>\LdWc>kp5qBImyWΔr-qv<#@ <m뺄vH# +lXC䮡@!V=}&tFZ6B$b#hr!/Xqǡr }ʥov%I<-q>9 #t 9n}M!At>"f(n@|IV՗4 We(2f`b6b:i:Yvsbib 3-H^+g_r L~# ~ng)dʿD^c7E*⳸#*'oXMM*ԭG46笐ljLm_+z;]Hf%(Ȋw;֬.[2z}F^ɽ5s%XC&Jކ.*COq:"{-o̷~&D'=BkT/v4Et&"]P8ӛ@$k]!v}h}QE<RV րck̞6!Yi(Uљu+s9hJb??Qї/shޗ,.vM+Fmܰ њC(8Z9h>?NeLܩFK9su]| 9B-mЖ')DPk-uJ-BB[VKIV|pRl~ÄtL$2>hLd$\@pͱc!B & {sT@]~鬕Hw|T(dyԶƖUK:M|/ ֈ*ҖC }cIz|,D+gٔ *x3 C]آp;*oN2$p,')?|}qft> qF{Xo7jM7ݷ`sn˰͢ ih=i6E@ǡٴetG pW >~V:z DWںk<S/]H+OýB 4*Fx~v236TI 6Ugp%bxNDT%KF `ven@Aٳ 4AvSR&^Mprn:W`cY%3+Fi[f~(g *Q2 <@/ɭ |l%bOBY.QD l6m.kςHI/ۦ7 4ruiw]{GJ(ZϡR f~YDU ;58@L̨&.lڳ#VO:q٭Xŀ4jT|'Z x0X`>K1Iۜ'~e3#aΩ?s~w~LJxohb 3G泵x35̓3~nrٺ$J^ k{Cf$49ZS|? }D7; >m[l5ڜ;//b mu?"6#'1Z` ;n}~ۼ,EuI\Qڋ">8 Ջ5.3:Mrq$ /1ߑ(>*KeMj (OTpݒO֏P0Oiˣ,k$(-p@ȑu^͎PS1ZhMF0D~P}_(ԻEd\ b<%! VDK?^phŢJ#f,SY/@N:: KXHnY'A֐;hE20GsѶbr:Tvhllk-چ?e >5S1KRЧYa$]P!ԯf.N Bwbd7[xJʆ-mnAPRM/qr_=hJ'bhci(6:=lyf. +u+zIywF+BYx)N녦fp%JFɳmPL@T,CbOӵ-,&6* \ 9V.Gmw2~_Ji"# 82*39-[wݞ'*mR\E=$DZh_\_x'L0,6'Dzqk^M`d 2ìVNg vcBF*rpν1V<7{sOdZdvib^8sŐY;h_>i`A˷Ej~>;S܌Jp;eɞZ,kXF`lCO%Gpg)πk jxm9Ĭ}L9,j:w8F4e)Ѣ{4J/{q"{Ϣ690|KxS,8pt'Y_0Nو[p՞?ɔ{F0Lt#n[OHKjxCytӢ sl5'2QOaE"GGfza`t& h^HNT˚e5YFݰ"p N~l`gv\ .~&v8_^yolS5yEN M%C_ 0ٜTu hȽɳ4@z_^ojlbm'Hޕl gg?ak+r%mP0@$oqV!ew~m+G {dT38hёt,dΈ&tTFa+Fz ɦ=U>[hK|;'gm P+"8j0 p@ݘ1\z:&g+)P5[,dNc."ϩڱ < vSy$Vj񯯩n: l#`h-JW{1c jtIΖX7_i&`1%9(~?)SyWG0\v$fIsS '3aO5]I 5gPc+*+\N ]\4Æ\;~NŗiE۵$zmk)BfJshGm5,eɦ5`U6XnhoȘY)Hc Yxj1Iͥ@"M &Eh 1{<(jjL U]KG/ߜZ EK4䓆Eeָc%Dv[okA'|P*'8ϳcej'=eu\}KI߄}xJ@?_ZoHy~jF-@a˰̍4WPκ(ʥGӪg8_/*v!eRi#&6mM,LVC]^vUK!TFXqnW ˕r s>%d؏?B(^UNpUKʢ( }ؘ 4&20nNw*[ L=*;ߖX!D˫]E 5~,JJд nP^dr#;4; Kj|{#[?CAH!Gk!\J{Br^rr?_$U q; <y)o%|= *Ai>1tl iF7P`z4f`( # 2DʞA-s 7| UGLdKv9]cp*q&|E[tW@,Ȫ:.TlOeW %մ{L%v[{ pdvRe͑GAAbi*xH~gsǙF*2 rtNruW)pPےz$k>Lx̌f)4&'zd>v%>>|(%H=qlA5ˡz|{ /i%I(ȻjM@c3AAIl!-l-Z 9l΄ML *Y6+^!k ]oq >6Z ")#0{G/{KQ:9䶛iS~;DHYXڒG+}#sjw8wQaLL]\I!!_ϐ#Gɚ7ɓde S`ъB9"bO.\ԲXrP'K6qYdx #h6{cfХ,d>#jwuv?P9Ȩ4k7&v{c" h+O\$T6,FkucIt`S!/-iD\{l%?j~0OĹF]Oaѹ9]53% io2 boFht:,VE[0<=@Ҙ呋w. I4a-aI['J&B8mzPm`_@hޔjpyft q9{+DڬaET3FN>cYxI+I'` =˙ybɗct抢;cR+ C\S j؅1$8"U[]Rc 7` 9Hf. O,^܈oٽ[;vPiBsS rWtD,#\=n4p54J]W|ȹuKX0VOJ+~i4(pޱמ&o8#:R\><i j{SI-gZhnϥ11U ` (Q0 ~nH8)gXe0@NdZJ6ɲ(;[sO}M2`Xt#1ʳ' Sd![wAo9$+ٖ!ŭa GnrX^`c<.qW'V|ذk/`u,Yb9뼺N&iSNuw@kUsj 4j?F<#|v`{dB44B uv&EꠉnBuq<uVB@ {4AcGXsC8.ԏ/ʯd>,7) .ǐeN(X hva/w߯HK='-Z"367!=Fp Lż$$sYcZrth7JW|k2q#Xӵ:SɫC Ev(N:C<C XY<+欅9~ N-$W>—f%e8YvBҗ i|q' S?-fq4Ёcr2{kl@h: )vd-܍߬Ô4iG#kA.MCsyhH")C:VnfPA)Iz .^2mO6+bRoK2 kJ)LU)z6YahA8H#u]WUBx0G1e-i\$׿ و2꩐',ʛ+ctZ~w{=6 7~x%FBb_6cV'KrӍL"t )sKu.\q9KnX*H -tH}"#QQRE]+ų1,Pm~ =B30)s&]O(n[-kPys @#9L(`Sۢڅ +Y2klJ])gn^l]aՠ6939pP4Gh EO{kl)'1i"X%jOkѕId;n-h,a{3o)(}av7p@I5KUg.w"Y@fLi{&<)aY`mBKY[;Hgڽ0E71Ȕ+28 '$c9˒fIj?ʯzAN{,ϤRoטopg?p'j+rpIc(VjnL%sl-j-T\Xh֘ZӸj;`/EvEnJ8"q{ -Kz?~D4D.Bc"{??+\5!3w&T\}j#oK2phluh:(9|=zU8S)4-9z^m`Ps" PrF*Ra&C|'!8RtN![z({تs}sۓoO.h}4Ř<{TTvMd=j+`mQw1B|7+c({L?|jqK_ 'j cG o9s(ԍW&sY\ ~_#B_;bߥ:oֻe3s2EOY).zqy;4,)z.VV@LfE)l'U©SqRvG#ur"9ZAU2Pn97g,uґFF[Dhe KߑSd` 4f.#uS3ǷDӧ끱2/kV[vNU9 T8#O Ɣ?Flo 7Hƺ4khCӉ <: B?I;[ 3>Bn8?ņ#s!؎v<:fb+eln=Ϳ^'&e^&y`mHOP-ꞃLF4P4ri@o3_ju5Ѓ`f3qƸ-*L_܉(ˋs#c{3G%gv 0|*covDppFZ4ƴ1%tuHEogϹ/tV76+j/e,lDTBM@abhkiV7?!kKm)'BIC ë2[8.9Cd_1ZFV$1Ix6"}eS)榘?[L,Ȼ5ZAS􍶳oܔl"2V}:r'pCo>v?/+##!"N_z1NwU+~V\rk5,^9|9vm3#>o5b} hZ8ʴXF`oSAȐXGSZDxIpAbȼ7|%c"{aZW֦Eeqwic_'QSMgP d2\vouAȖV.OM(@Vt/\ ʐVu@$W$Ԓ$FEڗ+ֹ=(@~,fV8lBm|_=@wOW|@uxpɹ( :3^J/#& k[Hm@8/6k챽@.eXedU<}4qG2UfJMty9wakt6m,/MݒGo6C<-˾Itx-O."y,1Ǵ?""$}`"c}2ԇ"c`/ &qD x&`JY*GIi@x>*xo\IɈOr vk=Iq7 ùc:YCgjLzIҞү 'mBY!%{%S` nVa<(^8VW+ {R40 g/:h$+aTh6=kB)({ܝlmm ZF) 0'C}Lܘr-}ZJ!(dڢ6_p8q)F}E8Q E,\h, Gzθ@d (Ѐu0<`MeL6#&|#r 4аhۮ ƿ{y4(m B{l eU$h!?Fh@?}dSkĦ!=y`,]B$k^rwfMCmZ';eoá9QN5YhPH?>.NoHO*Yao WyG0I%5+QқZ#D}D.Vޔ>Ϟ(ك䜈AFws{r gpM?s!  }5*\[ TEy󯵸pbR80\ǩr~3_qm;C}Úb8C>HOe"#OAz%(B9?X#{ov$*Qe2=|V=[n x{ ݞY[% oU6 kfbjJ7zc+!TCjz\qس?sGmT؊"NbvL ;Y5Lg]cd.U]͍d:@bxq!뭤p )6#*臓m2IUT7%O$`q'\nI_]vup-!+rۛ>L(Iւ.0^ U٘؝QE4]I~36[!1oDƽ& alj'º̪Lo{N*Lq7S&'R!O6V+_h^4 U6+l+D%heH\px}n%@L([dw#T4H[ vjȠG등 [IΓG AZ+_IfM' qF xJJc=G`_ IT{;Z6Qa]3=1l)Op"_mXr~rÀ hBVATSyŧTGŷ5IYR/GoS6f5=Vj|h8pz"wzz#ivKlF$Vw䕰"T]Dlw#XFF򄖞z+FMX/ cڬ,OCax?)7LAmO>z39_I; ޜZ=DۅMESc%^7elBjm ; ^iLDё1 +/ܮHWK% ~:Q:KFķsN}G6%k. % DZm6`M -gCYG> җ |_$#FlAa>i{?箈-1 h4RCTw)5BwObE_T;q+Pd}cX$y6K̨.r[L-34Cobݚ/ӦfIs\P0;U3]A‘ERɪf˗*9/)k'm{ony3EAr@u] U9=-~DL͊`d$=w,:{v`}{A6+rnޮS5:&J~웒Nf6/_bI5d {ɀGl6|Nn6VP?*E1A`-pw(J$B䆪i<ДnҨt##GdHqV Qa'G.\{gu`LʥԃAЅ1zkaR49^y&R嚙BɠW0(Ԩ݌*r:P񙵫@ `AN6;w1VꉶQf A(9sebIpxメ=hCTb;%u f-$4(3[#׸wOBj+:{<|50ݺ5+rYϜE3jBؽt_3ȯ Fzٙ 4kD$)S5|pqfCw&:hn(Ń yP:q24I ʧ R+>X3\=qpTLZE쳖B_o+ib@  qp[Tٴ\ 7-o\ t @.;WImϓLkن4H$F5A7(Uė"_m#/hۥ}cԝhݯrr@v=p?8.:i ɗ_ 97 /+@v@gcSl%DZ8'XN˭ ·IQ y^rbAWNN8V꺎#y ZS HO蛝&|CY.TG>Q.OC7ZҠ~e̱$,dVFӼۯmd3;8y%UsM|Tb(x`}4]Rg_W#BRIGZx\eD;;h|Nr:^r's0/9I e~_cejnŢG.+'w-!kIA냘;}nެBob0=OmYC;MɃ^qr/%Ұ{';r"" \MYq&@Gfe&i>N7-s?*lGsG([>@־=?#i2\KZ`wYOqi7Ɖa ?fS?J=歷{Tc) Jkگ>@S/$>fp WW&TlՌ!%pp 988'ƒ@93dA5Pp#A3f2m+͆K-doz?]Qy֟? R#ٹ$;rgvNOQĞ˙A  b.MyN93,!سh3*I[ϏOqĐ̦(Σ6wa|~Qn?z5 /*`VV̷ MXicLB5%3|Q}3E˵9c TĒPok z) fv'!.f1ͼeZ< ѽ䞀*ؓŽΎB=Z~Z%ތq?0OfAg}97[=`^iJTE * D-(5h'v-@,ޭfc8> )'?`b8k6`qpQ$*3}>`>!J5n*=|^EN59${{vX(zه9md IPxՌToo{mD&s ǒ!tqGX7K 197mZ0zʙONhCE}t_Jؗ`'- #γ^+(<;[GM.c9_T1ݘOaAb\]٨+]7-Vg(+d[v/CaVFɉX}ۈB~o)Z,/(AF^enŸ$6&u9$߲ȄJ}N B\rh(ʑ4}ªzwT$>0V,ݢQ > -1ϸ:˭1gdկ.T~ad8:8$5?E[fWםjD<?lqU՚ۇRk}JzϡYZnTn Gmx6Oi 5^_GS~`yl ՘WYUEx^RsMqu|R*K.#J}-QprdQDnAH)f5شe=xĻh/CeLi^tvj(8[|횶# -7XH3 `l  Y !=?ҺwC\.H -rYUts=uUs՚O&P7e@@;66yxg%JpV]7xżg;%tszԛ7Ij$PSC) u? 2RF;,~zтEO#G!7b«Gul%ÚkS`%)YEF^fJ ?ty D`uU~+6;b>ib2P9Ƣ~L` hE?aPD_l5t̡}Dɣx3q<ݺbeg+Cm&8It54El$ H_1iĂ,BK7χt~Da $,bڳwxW5C +[*];V8|7yߟ.Aˊqk0L77܆ .;CgqTk| 9~ ql$va"N ObF GcDǠ۰e||3#ǀ}X*f"sA xN\p!7-n flez'Y`f uG?JǜkU(5V&8b ň׸p H0N z%7pr}ybo3Ix*0^;fƬ G6\o\Wp0̬c̴߯d^) o/]JǴ4:#+re5 )aIU^bU(\\er^%)߼ }[Cw,$d9K >,BfE?j anQݿUy#:}6ΘZHI@vxCcʪ/1  U!7 dViS&@ezE lOTQk%W{,Zz R4T (S ûfE@yf^Kl.E/޴[M ?_t҅@#T'Y8h» )bG:On͋6z4%453Hb뻸Bm\rrk?,Ves]zB4BgG0moyNj6O~=9<҇ X_c:r J%<B 4P*_ۏ@߷@q/v?u6(pʣr;sc&1 r{-Hl4KMSk@]m]tt+@y|'i-eDO9w_4vWݤ-OT$=wls$i5;1m,[7+1gk=6&lsUYؐבV+}ؒwR ) n /]+lŨn57p͇=U2gHD,{(0``Iia r}'2 G&K7k3 2E_PǨm~/ b>vs:Hbr_b(T+b~BkZaU>R }fa#BQ=r(X"Dx'6:r+Vcf@R+qٻ cuu3¯{bAb@$_6ǰxc`o)YF]?qv$937B"h u/A@\^dDD  de-]F[ANXCZJU8;|`Ͱ!r3 ֊Qt~C4&ğc@f kC2옸8)e23:%;͸ A ~]\3 -jO4 =(jLZ3-̔]Fy$TLO%ӌ5[\nHjo q-v+YQ,ν бtZ-$,wU6#q֙gbw07ޚ1{α4{Wg, '&_zHu<n6 #6\[Rm9^璑O>CC$`:A${TDy[HCХ=,l9ȇ#cbHxF %tKހ +fNX7D8{K?#z2Lh-G*`]UƜe`\y8)l^N D xBWYf"Ʌ Mʵ!X|n#ٞ?xc' Z HMYH |GίM䋀XGA`d/3,.FFLhGH<.ZxA{]m LÔ?3"9^.*p$)={_&I_џ`o C.gT_:lHu}#Gl$%.zfOsҮ'"j `H|ӧ"7OF,EZi> O Ozx6$3}-_WA69aJי#N&U xpTR&죎:t2Zya_uk4`s7T~[k4EAr]miM߫NpS| NӗWmhk,FYEvU+\V/RB6;u{y!5BfJR(K7zatdaahW Jev<WZs?7tH&&苎I﮵W@nׅ nŶ il$xa<=ti)9O-J >A(k9F)' Nٲ~PkY̽a4-̣RY) wN?2>r*1SKfQaHNH?J߂A[ aٟmǼ73Mt(7xz9خg~='|+ojDktweɹz-eMi"|-{?Low2Ѳ`Py-j&Y_=Kcǵ%U ?|pР}7:~7^/K 10UUP*5)\.[EG^VŽѺXziq 3:CT}ՉMk5ɧLAfy12"H];U#\@*4 wRIkNt8@)ƭ3xcΑ+'-GiZ .tRN%"\wdmjny{ztK؎ϵc֓#GMxGKQpc8,n3Gzf%BApiKDwPIܡk~@7EK>JHBYప ij@.l5[K1 7V0R R㏍)PT00fS Z&/^1l.tU[R_]0GݎI=!yL+t_ }cYYsI6_Fg'`Q[x'/ @F[H׺oXoMelPf_IڰRlgu?|/IRFIc߮\]t35~đwy 9?#wKdsj޹E"K+20:ɰ}L/+doz"I ,0Ѷ+E.lQ;^ kn#ge#w66|Jxō眀Q@1^[;J/W[{bh, V$<ʽSIxNI! '38]i3,\y{\STZ[F]2/,a*Eunî{bHJej'kc[rnn>YY|Ze|fV Y-B9H;oT<]0$S?h/ `8o J sR:JWk} J06PeKh='1 TVWQ=NQ#N~|(Zi+V2mtsZ$.`:`:e)+8ȏAhnC̝um73 vȳ´.q)R !qO;q'!E+2B;q}>,hfn[P+XjҸՉK?Kjᾇ&! 5Uh7v("z u"i3d뽋xLlK_Qw}.Y\SdГ})I[.T󌭅uE?|&Cg( ;̧bCp{>9Z=hHiJ ~ǜTAhY8T]G)hh { jA_Z ) 6xVoR5w9 pDbW;%퍛)`aLw$80$W+sAٌh=r3&rOƂoxB tP09|m+KzP85 i(,󼽘](D=mah## 2*WӋaOIx,% ("7]6ro!S9_G\@TU4ab(t㣰뒁h1N>|̈́+Lfؔ6^k`Tr~^=ƞ?-`ӟ+{Z9}l'l: [4FPP)oOk6!gxҠ w'V=L/ϖWE%ח>te vC'R>vHU $н )&˷{$mwK_; € +@*e",h!N+ɏ.w փqySÃUH9ҞU(l-G lesuiս ZJe% f15URDI Gԍ2ZCLglWժ()Oho?ϯـわ tIĄnXZGIv430(BHٰMoc '~kNijX)s#~/0y WM!ZD{YR6ѐHa*5}vN_TԪ€+V蛟ɿ>YpR.hx Pč^ 9rَ.%}#Ywllov.r,>vʿdv@d=/U ^qGVŋj@rԪ944uV&t2 ~zSޘ3ܢ}<=,xQcJW0tҺR8<9T~9 CR|aXiev޹jI e ORvH|*:ƍ`Lsg|zWW}RRKؖfb6>A̦Ab?KUzutW8eLRZ2P@^M%F(C1c18-Qa!Mos|Zx#aaΟ6u&Dku>>]/$=Z᥮Uxؾ4W|}DHs/mr?P{~r'igpZ#Dtm=fq}m0 6pS$VJl'Of f;[yhf;~sX(OK+p%U6YXs\;/wJkFZD?3'y*Ned?/"ݗ/y=+[F&@)]o^`5h3`{v)z\8<o pxѮvO iYb,KCD[]:d8Yp 4ՠz~x$?~2|ŗZuVrk oA `wA:iĹ͐lej~W ֔*bGHLb'T۰naz4aI?]ԫؠڽ.eU<&ϡkJ![­.t`ʳc};ܧ:c@R$ dn]jg.G,<|o0+']eY{ 8h8Nc6{# ZCnA%51"H$b%fh}XSBBqPMMDn5'k_a54S_"`EEdC&;!11u|:[ i%bvPPBM_Va{(|䒦BeƐI6T /TSOyG#Tfufa] 鬫;WdbӆDz?x/#A*ǮJwhl$D#%䱯h8*4HcgCJ%RiDM %"'R5 s,kYu(\®ɾlu/L.Y Pl#`85<9jzuyiA 3ZV|./(7wv"_9Tk!EU潍'7gv($?n7B,"rFCwwF&9 6gw$ߡLO.8lǰB' y]o셑ӄYdLWR9z;%&rW8Z3;JDTNЕ/#˖IkJ@~sb m?q.}!M" E&Ai bcyIvx%!Ed#p[F䋿6n 5D(=-;RV›G8$9Q%YSt8sd-'D~ˈX N' x:w͚uϷeyxkD -ZfŶ][?@'.⚄ , /5+8!۸84rebow0)%鈽^ZG3RI-Y/a3ֆ8Q|~i9V Հc!4z;] Aʺ +O-Ff!rb jƤb F?d';V"| / ;#-jA:d]d0pu^W,LIh7"{x3@Ȗ$fg9 qObBLMwn3?Sj[|&m3kN'vVmN i-5KT]f-,D)F E\{v:<˴Mex1c_' !*:O*Apcp* "+ˋgVβu::`,6T]=E h>lW$R6tfZEY }4 n:Z$QU',D K j;Ҁt&>k.-uӐ)&4K ˺PW >P  B䐥ՊW/S[TMS/F$;9$ӈHbݖ Xk8T:ڠ~aGZAKSɆܖ8eyzCtEva5EV8e]rxȆ9Vkʼa#q9pf ќqy%46ov9.zE4LI[K!h&(R|9rXjcҖ%kn6gϔtQ钟G-1e ˙L !c2&pMD3B?gnTJ5/ 36gdgs{M1>'0Ƒ% ޜ-z>BYgA+2}7Dq>ڋp5IΜ쟆I5JfKM/3 ZzN8Όw'gK W})Buzy YD'8EGF]q2v?F-bbQal|උ BX:uWvSB9/'+iW@hƒf ]Y}B\QޗV'z6sէq!4oj M;Y)pp.k܊Z!zl;+Z8sdݨpxNtcAʡ39 2,̆38z 7rzDQ/\*}ŋJ wg[qMzBkŅG*MXjU:SV/Y9xց֟#o0 hh$/lx4a>IPq@.Wtк%10 ('(I}N}u(478_}dP=Gԁ]T ߼wZ/x#NkB%Cwl|/#.ٸwzpyC@ Ov_o<5lL`]}IP77>voN$v@dą2abK$$XavYXPV]FlR"(yo0`s?)!bRs 5W̏< _f&?X!P6(z^Uu`N#Jxi(Cʐ5B!*s 1`q@Kߓ}'p2+Qxr"(jS`i~F`a[%HԀ:>TlesԮTRH$ǘL>ߒs6~MR0"cC:QIi^a-ѫo<){ʵ*IHuMH/ճ2SDO>Ջ)g5zb ð(|$Bg=r M3ߠnaA(;l U8 --H㾂_2t&a&8_$eD^,ӅTyz`Dhlɲ64xSfixϋGrYB$EkV$RhsKnb@H$.d]9mdRuiΑ՘јͽ/V[-W\1/;KS1p\@F;5 %od{%I92xVth=Z>(}-`}Mֿ#g_7 c,afi!]{A}prF3偄|{MA٘!z|ӆ=/fefcc-v̇Rea/pڢ@ьhuM%r J,)s怍^6h.ӥ*y'NZHj&.*F NeGVm2 ŕ k%Y[B/rwPܩ»|lΎTZ }'4cǮfDxY\o9^6 ɇL%|4BnƃigZ5@%~󋬔E)9ΠkJH`u ܡ%n92j  ꉗa<[Ӻ"LÔhYVF2. UE.QLN{H_9G&#[Jv0Gz|dT(A0?pD( vn AAzEQ ֞NVݎ~qR@)b=:'+,j]RȷJ|Gnb we\7 vV}%p"X d#TP.7_Pmf/@tϻ0o_BR?(l&a S:fri† e]zGdτIw[:DM;7/Ƭ/bvS4;4鮙dD+Mm6]j}/DfY1|XHX: ߁6#􍜈%c2ƹ} 䖣nvB蝉&Jko G|)va#a/^]~Z|_#:p+\zM+BeOL*a*2NjF!0-;z-Pi0Pņ}|Şf$/wi_U($n|X5/R(Oo G/ZVʖ{NFQ9և'*'p3߷ 1=8ǽޘW3 ;c .UK9 *DzЃ=G+s٦|H-3/&Ǯ` @84}g#!Tmf%3jZ:m&!d58U/ 랈υtAe<#o pF8moBmӨp$bb_Ta%@> ov)~7"PR [5a#š'ŠeceL0Iϻ sj}"ڲj\0盀e"LHꨁR.]"qIR)JVۏ IFYь2%͝djCr l?t(f k߻~ g"Yn}D~ x$mXЇm'?'gfSbkS{LWok8%UUźVoak 55 119ŁBf0lUd@esvcv0a}PI_iP^'豌&K'5fgӥ5F9QLT9abXSNshz<]KmOw7b(A!c[LU=Z#Yk34{}F|s) PKWx֊68s:5L$JgInM.rRcj'֦\'lBpZiwmL;4[GD-qj^2@ oc/:cmW:&V FŮSOt ~.G IĊی||sknK'tp`NHzͿ|g+d{0@ז.=ӊŏqaIm古_22=C,qq}*y <FZp~/&'ȝ"G8O5 ~Y'fݣzh"1Tf.:p>R :A[+\ȼLeOܩqΘhbA=g({+n9x,upRۅwnf !;(LKW3b0hŲWgd{D-HA<%~WimVA'~4B3W 5܉;5e t[Q#mKv\JϰnؗtdB zVrO` ':&9ܥ j:c\D% )r1 nagپ5\#,[k/_GΎ 3! 4HT"fMQR?'fr.pruDU9[|(-ZT@IbBǹ2/֤vJF^ZXv>˃h?oBRX-:]m-ZH[nkx_u8u~?I&Yyc-ۥf=hιx%YԹ\)q8r, X6 ERdG!{xPJƣ\2_!KڟG o0Ɐ" XIdT}a&Os>&[ޫ+[| :#yNa@Li~"nj:xgp=ksL'0ɲ-3i\\==1 cKt y~(K2\賘Byҧv/6X劒{%fSX#F"M%>3i%y0`>P s<иrM4D;+(铹>4%SIu4ޗYC˞![QǪ+gʛ 7/'2WysmƯl.~|.N6۵yh\;FZżywIlJR6#v E*V'K;vt a"7?FRʤ6(nr;C}|g];s "0_?4.l#+Mf5AECd:[^R1Tzg6 YZ͸3/1 Vnk#[kSb&f$\sd JxM{ó7Yż*Ƭ}莬VYR4l0{ޘ^"fqƒu6 l/#o#4#JrGv3~Ѿ}tAYbLD1;NϡD wrfIy VuCIe{I3ۣpaˈؙ. ,%yJ$;%iߜQp:F : ǧU&il e?>@k3rxs q`&mTJ)iNL,/BC}j%<C #0a2OƲų3SUBKmͱ^qz, K@Y%;.ud/"zNpk ~؆f2;n \/h;vpߣ6VqP]\2u_$0g7"GyJDd(QeFCigكX;c=4 ֨1c8j jtΛڲih4DUJ|` ֪92 u-F fbӤ ],ŷ;.';oԧ]5|ċꚸYO^ Z'=HqLs"Bb]방4rФI;EgJRWMSeO7e1}d V$W XK4B,ɕpfgkO=~, \[qoh@ɊT!S'f2OZ Lf猛a=Aɞ$2c` g-C+GfȲ}Sb/ՃMX%LWn=A;3QΕe(cw}RE|Xb"BhBE?(F,SUk3~Emw 9J]2.ܙU  ,VcK`g"erǾ<.k)αe>G.?90ݳt,_L)g~63+X:s_6o*]}dC|񴥦GSbhGV?}4e1| !p81, J;A>i֘gw*$W_z[>b@^evJ0M,R0npEHۜ#kDJ#>T: !&NRqKi]fO"  wY-yDz^کޒߔGj S!"޺ =%)#mxd$S`T+Ch0w?-c )1!/Q@ Ed[dϬdmbI_q.A|9ѫ<3wgMqtmI%S=no/f?Fc z xCI:m6Lhuۯ]kߋųm F!(*/-Ȕw^A"ZkAS3жmcsa%Aob"BOBt@­heNQ@j2 pI2wae1ܓs $_E%T;L}C_}NOYwQgN=Q-2)c,x;h PDLQ{4 7\T4g@wi]x0deT @ <.Oiu.Byjky]~T()sd~"5&l(>>}t ]`1y6$\6|#&gYeEQqn?\yk.9z96܂GSQaX蘪s(k{lb>,'P dZX0\t{tgKoQCBxf Z=*6к8>tRq ձ,0x=#TDy}m3q|Q{/ZZ}ۇk[V]7}7!A5ꆿk'g)YGFuYAOZ|&U\ᢧ F0tk'ʙic$߀~Fcu?h挸=~+gcaCdJ/ ֻ?z< &]p*/P0feADzr4J u*x#,iߙzīɫni^fvgX=yrU. =b-FP{+HcJ?%k}Pk?GlLm&㩽h (..X.;mV`{I4KGf2dY9(d)p /(`FOtWYLOl U;6,NUPY[fҹce=, 1$ሖ *+ȟ û0%|JZSҊk%ܔGNK3"!jO~D} ?#Ѯ A07%J)Cj.8֫-mH)~ٙ%O`͎4[l(N48M4U(9@ʁ xK1<}V>S+F<x(59%"=TAz#(\51 ĽM{N Zrތqn V:bo[LNZGmJc&MFva3{Dͣ]3TpCTK.Q@-qTĭcm5k3giQK'+{DЭ}A#s6,ML+b K$ޅ;+u{;aYx ;#IRd<]zTzgs7;C@kIK O_)!QUHkg=5qa^E 817g?J:5wDqLא fkůqm@"Bza :qnaҵCKrRx\6\N"Z!?`pb$'MB%lR8DTZ#zF Qw5d.]ak,>01]z+.bDuEjpU u&hb] uz(TxJS fc!jM7H,#|j*إJIx/n,niTI9G* M99NevBIo}+h*)V$:,gWzB^vSaNJW[ ]zR #<<TBB?qkZ,؇!Jyn* )Ir!,'/Rʒ1g{`M^ܡss>xi^K>٥>Sk|f|Rq5p"4,\[R0` /$F?wr9\ЭY(ѧR=S;5a??o:ٽꗷNK |;|*h!vc$Y81?IfÑBWt#TC0_ʹyZG Xnц찛jRP] ڰũZx;IM*MzQbFg#@|dNFqji^y"j7C߭pC+P'0օXJDw0Q;-=Q۠Q><}܇b~v\ ZUɆ<%:5a2F2&%-`͐&i#iZ_$&;ڕ~Ev#H Su"G _3^/2' ם/,p\M]UIA{рG_Ӛf|gtrG: LEdM(ͅu n 65B "w@,"B18#u.+&{R6eJlNWM^[ |TNpdRQ_zNjfAnVxmؕ&*Kox6SO<>PzCG q`X p4U/dAR1of( [_c">+Kump$|3ffOYsbZi4WP?nW'CIWXRA_/jԡo 0}CGB@"giaf`ˣ/abL7eV*gGȣVPxPp{!eD#GH5,o{oXnj*jIz5+S>C]tv{`o~H3plS!.m#Q6s5+=! Z:R 9 ⒮c81(izmXdOBDny@ /ۧWLL ja(ESwh(bw~z1ZP~Df1,0nyUGF! r{*4Qג^s>J=$^&۬I<4z<&}o{b~n? ַw8/]HmCwYU`j?a|hd,憠b8{uvwb~ ^?ђ{~8P=oy116ؾ^7f읆мCԣq³1Xm$yRaޏwoZ͐.lYk.oՐH_6t#"'-syY@yͳ@YxP6n(ս[t&<|j??b"@4E[L][d[gӬeL(/J{mF3ln4?Øu\Q;<\ռT%4ԁG$V"KAo4,ΒRm!_%=9VB{zDbXغ7zbT& 2y6e ֬6&}h%hfbJj[", T9TR6ۮGGǽAԣfaXpuiJУL3FiO. F1ᄂ,Xy3fnY*(8D ַ\'LA K%(0ә0_0{eϚHn*vUnČAsM-(ās n:t>'@`h<6䨱v{7㠤?SL*}A\-ōh4\*kc(Xē,0$E"-2Qk"T<;~UrM\)Q4?J F YcԌL{~d3JpN?A}Тݢ{ baSR\v3O09;$x GHar4LN-N0[Fm%8S}Ll^u.U-fDx5_O/8OE8eZbfė}@p??gEdQ ;n#)HMb%x*w;ŝ%6N a9/Pw/-iU=wcVJ@Qm)-on3cX6\u.O7վ Re!~a]l/&x)*C&dWr 0 &e2w':t 'd9v^z:# .Y=ͺ;O z3-Jd}KxJ<12I+%?fzȚ#ڲLH(A2oNccBz<@3rɥK;aO=J! eϔ^w KGOC\eHiՒ'4 f EvnhO{ eUSU-rU,4!9sJ&laC8@GyI h~MO 4>ߺg#ʃ\XF4V4')ƃ_FΛY+xߺ #@7eY[&]TzsX؛1Nƅ\wHNNN~DgN%1u9&t'$@ڬXOjTU@ O%95E4PZ Ig#;(۸9,Dk7>XnJ Z[ gMIX'$Ffsܽ64Ùo -n@աڪtUG,:99B|Oz\v+M'0D|l~a(wv [!`]<$dg]KT[(gxBo3=b`gl (Ho&9˺O8\Կܳmh@uKb}~,WJcF_ ůHVӺBiZKō7U }JgN.E)-{mYA3Ms :4ܢif'A3VR9T;H"eH<d'1kN ˧-a^h9E~Hľ`zm i2`Uf=|1,_Q7M'yF܏پ_ގ疛I ,%Yur+ u> PYl)dWxg>ٞĬG@1`|{/0rKO8 hg*Hc4-)e*]dxNI.=>b/ 0.N$fxv?NM%&=›aBABƵ-\ˑ?`!B0zFWzѷBWQ}?>-@31d8  " ga1$/gu!55Mdw@rFد<֒͌t3? @e-,\tJpc9j4~偌 މu]b}_7?lW</ҹRIjDf<xG=ivrxoiq a|M]yatW@HRMmFH&$xyaw5$ԱF?YtS%YgEaMTDU4 Γkm&sݍXLJ ̙M|^n҄(*:϶eˆ,/Æk / (Q3"w) HIThw)wY[S'xbo^`k!׳b8ž:i)|XZ&F՟P#MVbԂcb&A] laQΞq'Xbܯ>,ZS菁m:6Z%XSVַk'-;F08SYl ^ IҜwW."0!w̿ csA VĬy}3Τ]M*W d0OkF#زJ@s^kZ ISڮFOblD u[@V6]G@>~wCoFEla<,@& pGRb)"ߛyU!lhJ<;Dۦ|E`Z؉- }XI wۤ<߻Tnz*pKΨPyF+dI E`KydrpJi o[F2-)7u;0_81Lԗ/ҭA]hԓw-67ioک,spVSj)CTִY]CxNdE|ێi某yBICOFa=t. ]v 9'FQR*3ѧTnzz0 zi X@ӱ* -+ȊwIwo߭Vm#p^.- .d9{; lU1ɝgVb ubV!߂o ?`CIsw@kl罞ɽNGU' >b嚢 +IPHVdBf#4Ed>-O5FpsUyj1u |̷C1f+NOmoeA#tbL9ei@-v\ .Xl:-1S:1]_UjB؏C8$6,)969W!E큋SlˆKCw'PK̤ɧ>4 _3sMrR߃`Iʇ簊.HHoLF(ӆel&#i^\:ɸt|;MDY$Ao%)19R\E/OfKFYGWzDiOh ? 7>{`+VKv^^ KGw͸OoK^lVGVvDyPu*Ó[KZmUiRTkܹD]$I Ud:O ]:hOE9o(P6!φf㼨_Ҟ+%qV{&}V'c5jZ; :q!!Ss!uf h[1ӱU HYsxkm&Ca Q%whq][EU $7l =~ymFY;X8OsXlB>+$x۬tXvM 1sΤquD1.X*Dr Ĩ{76tW3x*u+nR7Y K A+\Zt2{q3;YW/6 xsy&Av;~ K_,Po8lNrpl,A^@5d_W7GgQ0J E|wq,Y~[>Euw)`>w(g4FDZ ^0ljUTyh^Rg*_]jNa_+J_ M֨gO7DT^3iƽKK?}?%2&+Kgצ0 e﷋e/#~K:QoeqXm#I*#:7Ȏ-A(]'W!ZdI͗R6eCn#Pd8oj9J,4a :%p&yp(4ؼ1ź;>,H)pvxdXd9Y([Y$F4fp*cH9\vw1x 5OmG" ?QohHK締T0Ӕz}ԛ}U6͖@hcކ/gsܱC>~I EkCzEBؔ' ~Cn:3G}>iLeK/pz^:$X*n*Ӆkz[$QVƻeXp6(lw{_:pv?ުH VvV-)al/ W2ZXT$=Pj"oeNM ?c&ER AdsV՚'wgNŜI2[w dQq+$7wsڹj">vczU 0@Wdr&cvt3z_BD?Ϙ[C*Ph F1 &(dMiObE\ZWw@HCί` NJa\h82[zyfc*NL,2xK`<¤wʱ^fb7+.m#1IG=~>tiya׼="(~x@ymт2 Iȏi>M7F?zFMq&/6] W'n5!f^8 ԾQnlSlu֬W7~-g/4YfؘVزk 9 g<??oo>$/~ڛB-8t<\.cY='t b&Uo8TX-[!- rl=n%ʃ IF\ҵTQ:,YҜE."2e$ m8j0ޑ3\߈|nY֌ۋ떻G`dV]hy pI(+ U'܂δuC'6_PvaF\xCcAm%DT7GG\3v`@"[.DĀQތ&@,z.=xFiLcf_>ǎǂuy0|-lkEbĆ+C?޵vJn@|pT{;$~c)Bg[5teK91<9Ύ@ؼBbcq6o 8 ܿ{0A YqQvg YLr&.N b&Lu06xQF1-W t{dK:]GuVgRН!AݾȐkny,Ξ #m`%!_;Y-j#F cr[W=LEE ሥ ?w>lReɳ =!z6/H eMAc# f[H-a-{g!8>yc~]43gLH:9-?o`mȌ~?;Kd2n;:'[e0-Q%&_\;t0qe$"ֳ9Հ91YXAӺi;v4T^ȦrΡ_\;Ƀ!- j;dՅpw3f VdĠ8uOMHټ*(([S.}>𓫬;7R](egИʹ.,Kȑ1 &Q녪؂Z1P)( t<,vN[!R:U2]qam;XwB:8W5:RλJ( Qѭ寎k!& HF*! dKܐCχ?J0Me~1w{n[<]s0# ab@Td.~UEVY,Q5x5E,Mkl ),6-ZFžم =X\켫XV@7yV,YPI~3W_dlzWj/Gf7-+ Ȑʀ_-C#}\JT.Ŕ%B` u 3r0q3POT!g~_ϣ[e^y(6}hi@}*z&,iz-i%K"ݫcEA]0DŽ~iujh[7ol2kE&emjTX BU{RQ e,B0N+RS@E ć%R(NNel<24EDWjd˚c8Gn̷6B]uGo/=[?p߷ i/,yL.Í$z&w<7$Kf DEѪqT_ZJΦڎa]SGm"^Y-a1[;֍l-I.B PZIZ+ۼ u)C ,+[j"Ti5@ߕ21"9="_"}z%-#C46Y(%~R[ym=/X́rj[ pU^M%wו:"΢2t;+a k{>rzWK?kj:+%bkVYGWLs4rIIz}{[62PRoxfVDoqM$:PQH}w<({(|dJ?}1xWrK1C%n3A{UnQDD L$p8Y "`f0O6o~أQ^U4>NPg駕$+[18^s!+C_39jTV˗; gX#m0=p11@kKqj%jSKī7fOZ$stCmc5i?g8SLӲeOmgT" ᲭLnէAe95®k7;2ș/f~''PaA,w-G99”(cKk"AwzN.SROXAW7#Ahxpwi`v:$v*PNtpށ]=B{!֢/a_Y"skRh](C>+_Q-#Dvdp5n,AhHr\-HA{Tv4#bԢ.?BeW#SzD}z2<^mLk"N(>ū9)P&xWH iҤ/C\r >)^1ηY&I I(u>*[0N]t&u{X 6qNFnWreT| 6Pun@rN; F}n#kV`f.T::~GU_oz8,Ȱ €xy]~a3ҖrHYUmy܊vMr=އKcUi@X( ͮ9\9bՋ9x+t"+uI8lzE;sxt4rmPl{Xjؙ%PS-ZW#D vQv&Yl'ٲV#N)-'J7cc)c07mﻛ)Xa1b|z\b`QK nwwIg:"pO[c`Ā' #{B;PdЁ w,cHEi Gv'Fՠ}KY^YFHRK] Sz}-żlWW|Avm7{dM!7\|0^VQw$JD<-7v OG`Mn,w?/yڧ:*RsL vѕ="b]m%+tQ<)\2٦$SiEBU2VKl䫼ڈeO.H ?;)=mx_ـ $ĺEQ_?Psvp4׶N܈>;.c$F$N]C{ׁ-[R-0P-9Pm:`dbgp*^ew$,8ECn#>+VQy}mdj 2)f/e}%Ae *BƏR]я62 i9KXe֎igJUprc'2?Kvɥ(A]3XPA*^ߤѷᔈo!JcBxr&6]L4G \zdY4ЊzSiG^*4N'[Y_}봒}bV'>NܢsaUKXбW;pA5Ob2ӃOྏh@ĻAX^wqJ`igy% ʭp8wf, PT$1atgpqOӸ&B?_C#1J~.z9/-ڙ\Q47v YT^pQN_:4:V@EuSwQ[3-ĤWCu*rè~fe {T} A D- 3CmN UƇ>SN"]b{#Pߊߚ8#M{3/]1ߞW۵cBnHΒ38@I vDmkH}?>5VMBDKqІ%J3R^!,]B}RPO1Z .*3nn b )_Tc UՁ&p< "#V2P`8[xwъ=@c6eMXrpυt4GSjk>~ UqR/|(%d2M $wo7 2kv0r]J˷mpLvjwO{UzVa͈gO}"&zVDE,yH] )V`!>MT "4>!ddԝ[=4.neilboTX>S?:j|;y;c%iY}=^L9ޯYwKM5GmQ%$J#/5 ,R5\zD)]ႍf9Te; SH]1zLoC_0AzCmZa6Ʀ,p\¥BY$HT)KTT6V$!%6*a زpgKеH'Zv?eO՟t4 0`8lkɆ&HN .µ<g_2xr/v>KW'bZ`.B!,".N Z?al7j6hr2}vydCgͯ܀=,cRtl:*U_qS,cG LִSuc~;hM^]?;oRх϶'nz%R,tyM_XG*P%-'eLR]{AQu t웾uYygj> LTC>ӱ~a/ zW|PA(#+tukZ 9_˪qj{?~:ck]&H1$5/tn ?:sL>4nYUgCX vP\'Er`,:Mx)c"TXЙ/Dy8 8g8,͘o"֨3slۓWeN{N{GNd&/^"GP|}nU'*1 &ךnO_zg?8~| -ӊɮzԻ!=J|12?Қ:h r>3GP" >]!~J3m]af,hjdA0.4zt1&^L`ϱzDi.d%?t&!= q< LsFR1B~= # Qvβl" %.h Ʌ] iڡOE=! 5=~W@ |fED Ca Rfr s2Xa5i_S^'Kd-_@Uvz"I qiE?ߘhaӪ-HU`K|C?~ >2TCTۺM7rXJ.rK5YJ?fL>qGcpL "YsRsڠyq2%r~|}.74WА{3%g3d}F] X8XęѠQ/+LB)ySpvOH+Bީ棱1ceɝW՗̣\H Lиt Se%E.PVi.s`idX TNPݢe8iҞUW^wVɠ>0 Vz:K4n`O p,/q} I&ܛo}lbGlJ·*LOXpBz)9 0r`&kc +^0=ADnq˾E4q0Lٍ&T6\ž]@m>vid} ?U-ӺcɴRv"q"SC"84&ޭ@Z3@ s`K.zD؛=1fePѱ\ u@7Mj,HŽs1*geڢvs`qFe`jXd-Z7gYI?>w;wp3r{GӹˇSoL\êִY6n(jS՗N ~sL/=.ZOByrwט~-?^V;jܰ(b˘Vs!t`Y%|n85/ʓ-Msi[`n41=abkdxXQߣa"|\z. =[=BMV9whX0Ƀ_P(&@ʣN*À/l1 >ݹLk3=!TjԳlJhf"K7P,cyi_J-yv ?3OvvlStPVf?yl~ϬIlS&ŰGa3$s$he'Knk)aׄciC٘ Qdz-൳zw'R K c0B/ ׷1N/-ٙ]b*!03Hj3G% 3V2/@D1p8NJųR+4X|ė"7BIRV*]i03Z Z }Sړ*PDP"5td;,4m’#2u?L}jjZ[c@,Ȩzt-X7p[:u9CjvQ y܀x2Ğv %=rV/x,-<`M$dFoεJZXׇTJ3Ϡ_g%.4J쵰^ʒCpyTߣbldHD/@Xh׭]6`.쇊i S8&PeKIp^M1̿ڵ-ix[5cHtߧN=k1kLfXr[R0R~e@[$ 15▹ Crݔ9zRUi<@`Eq)łbGDp{ފV23S[ޙ8ysa4}V9qGOzmrҖzam=9J78j~"x fs` F&BJ+CDH`d_҈t F\kC_}`|1'%DwYe eWvqE쨁Xx~ Q93fD4wUM o~ގnY!G+*shTyys!;j==H=٧EncͲl*;X 3xj& (6jXNAMP5NpC^pnɒ&RR XaV2\46 DpY[YM }l[ls T5KyQ !f2.ulL=1QEGU,#{r*ߟaxZge18ҭO9PI䨟8it #`Hj>f:[yA y'.>>)# |1⹠ݤ1u\1dW%H B՘5(1/HI<[?đa]]?6wf$(''`hJokm`Fy)*!jpʕV!A?x`*/=EI pV $'.uP_ 46,ۊcW.ٹ5d"iOҭpBcZMuS/ա]X?NJlDYdpe2r^+Rľ>aם?H_7e;+K*ۼ%+%̈́bZ barqhhz,@QZZ':BFakbS^{4&? -T-W؞ [IK~W^72FW_ѐF2>8͈@}[b |^ 781Z`nh^﫳%v/)TA*됾|x[_Ap,<}ǃYM^(X+`aKv Dm1 $0FoD8 HXb1_LT8>|ފ7Iɇsqatזڏ+fQh6J`֐RWbIѸ tz[S\ezGtoq&!6"Ɛ SDB(ܱ|}v=ֲ{@{VR583$3ԿI@-rãSqUR2QD6=FJ a N_N7 d3u1jc b)9 t}8h1i} e!"Z\ōIWJ|#$fEojpBnA* ,~-mw:6lOAA!Ze/ly3 4;C}f@ tуB;>i ;c=Fy^S*ۏ| XrP.P!8@Aч{V@E>x {)MތT'͟;zyDP 0{>zUcU7 pj*n<ݾ Ϧh-^z8(D -x3""wm;6f.LhCmt4f&{8!uR)Pa!ę11/IZR!m'U/HzAYԥtu0@rE;0r\rO+d1:pgh^grZ~t`ya)<é{:ܾrTfdʻmb2-3~ \C嗚z4ߛ4<ἣX_7qUޞ%-y^s,73qno=y!E[CD(EDYܣ '\ bA`ԉ>$O卫ʈ+'#Gk(i!a{)iV=bƎ:YաM继YFF.ͳYNOy2)bRRx^XqG >Nqv١6YqF\Gw8|:f %A~A߶@w5-k7,`=YbSV:0vu\"cB x^kSߥΛ~@3lsؖ8+,<$W혗7.+1Űlw#p3G !H^Ƣơ];mIuk<=Μ ~ƻ O;Zmhfξ<9p'\X9sq<=6`J]!c>Gǿwf$S ^phc|8ZDV!dvieo͋tIϔa7ʫ$ڔwltނd,:l`C#wZ'|xU?Dh8WPϟޔ'=!!:C -NJy4r[VRwژ%`P'|MZ҈?iQNH2$[?@ 9'֪DaFe !(>47z7͔Z@cikjG0\;eJa&k Ob^oYOi(T@(?)Dj{;[ˡPfsMa,FTzL+kAV׀+H7@1l[}ƅIg>zDߘďoLb"x5,dt멉RG=/v3*B6 TlMu'"zq~!d|r D^j-]@ Kxăxږh{қ`'/7 Hd[&{Ҝ@*_ `zHYHC<,'*_T%/4g*pL碵38lZfS*E;Dx9/E_#dM m+s0EMk8KjЍR~%bKLm Vd Oi}F-XUWyMX~ 7?5J i[쎝?12ޡ6iy<v*y?=[AtR^KHy'9IZ:mm2o3^DLs4eaUr}oQo𦜀TᔼF|;CV9\P"L N_(k`ĂLB>I+&jI(Q7EdU*1CmǽnB$CCuўi26#s3~{lawZ)\~6f騜R?\s,zOÄ:J# `TEE 5b"u4+Wǐm4jQx>O`F RL&nGH%s+=YHe<> fc˜%hKL%V%+·ڮ'ťqd]^fr#!=$VK5ZJ˪Kz,de21!O:ݵ׹K&v5= #S`,"xdh)nމP^e'%xFǕG˺E%)SKfm§$ )2⃸QmsU>f1l'W,g\tKBI 4wh1<6ׄHq4&K]TI/6A7At>^DBty#<6܎]#^4Zj?HBW)11|ÌTZ۫Ŵ5EYTp c/=ST٧bdxQ(J,U uLeB]X^#t$sSc) %8dpt"086Z!YqdY-#[pz|"pG44ơ L:o5sUz`2JM_E 2?|q_h]W 2KZJSPͅ'x^:ҳ/uVMzq8"ԗGVR;tugS"ZKsGWHl.acLJڷ4مIF!}"pbhֽ 1E'uڴ|@٠zHGsu;BQ-mVhջg"=h]d:e y0,p)Sd{ y\ߌfkkLc;X2Μ.C1ߨ,IJ?[~OɎe~>72%v QTaX>tVԂ}{܈N16kZZ#:T`Fl&}&oFV>kcnmb xm1ƴ>lp1b~0+L. !ޚD).S0Pd0G( cQ3^'b٠UT.gyEtYGT-?ʆQ(! Pp)d9v bw\tV'b՝nBD-*9"/aF$ nBd  (-#ہwB!)*)*;W" &$Xgߌ$8K,|K{?G˛D ~g*O"oGvU ޽ !&p&uQӉ>F oܻ瘝<xgXeUb ^4\!F.Oxg@"w>iE 'ޚVjqcģ4zA) (,Dv"d\J؈n+37=C_Sqİ4u#':?qQ?` %N:_Wqn(C,`7f iJʽ"aS Ě|5Vd܇9i /\AE;衜?:СM$UhGS!'Xg[|y%*QvO`y_ ֎q:nsX 7e"잞䰏k9cs_P,o*ڟM/Z4H6?&gD↺d/ҜG+S>hIfi"$q G<)-#KE$ 9?bx#i?D|Kؽ##4aV1.m gev_S\ @+l\-ծP|@ }t!S7t@]f K;98B}PeBozGw>ijqZQ-nRv'&ijv7vu?l E=k<1 !@fuou)&o nB&#Ł0$qD^Ϣ%I-$j$̃ !a .}T$e 5+Gm(P} 2hq/<Yg8h.q~s:ʓ»sV}gU<;K  ?/$g|vakL5sxL=8O'%>+^[?R(ŐqD)r; 2T(2P]ozV@]2%t i0T֡ܲŁˋfvC*ѵNVE$Bp+MzZb9?(&H*G s23-)j$D,| PowCmaO.Vg Hv8?`gx+vZ\S2>%S-z`f]I[C nvBC;&uŽc|q ^+S踀f_< 4_1.Ib'q'wJ+<еcX=vzmsfb}0z4@-,!U9V ?+٦gR>Blb=s 825cqon>hVFs8Ba% s,e Qaڧ\>3xBGHR͘bkkGk9)ӵySp߈lo<<.y7<[֌>+ECf@Uӄ*PwGPJ%SȌ8 W *Vbx X5F=?"<ed[gHǕLm鄀s$ w{xe4rzc\WX 1s̻:tE$bYBG8³GwT4%+®$`şx@ dGܚ1gُT ڃ(vPS"I^D1]f7 cD"/s 0\ML 0ἑ*I?d]qgcޖ*yH !/Dɨl1T3\(QE+1xrZx'4egL!RR o:;טcMŤ`ӖEPX&T]89xݴ_"J]wÎf=(Nd Q_NvM=5 jܘxDM,z{r2i# 1 D % k ВY+^ zw0SaN)JeWjbg"]Om #K+t jS+9P0/]yU%( Q2lgo]'y*gz_ ҆ :R6M W*+ԯƥ#5ڿ+i֙[l~LJ0B%MכڦU?Qu|ƫ~[y |ː┉^b ܲ@ógqE5,ݡ|Ϥw~|eZum7ЅrB_Ȍ/,J1ssh1xePӉp~gac%v1E:hHG (Ryh/'S ?9Jr $Fx?// }ܕ QSQ3Cw3SZvDk7F$Mґޘ#hH-4N5UQ0kB:~G@k76ur-֚2qjHzJXnR/pfcDjΕs$VtL o7ogϨk6>>y!Az>> 5*ښa,Q kM FLү؞gI>CGAkzW~:(W5U(6s'Dbu__LujwkwXPǣO~:+5 HS\=Jcάd}̮n}aqKp^\ Ju'tI Ŏ1R# 9'TpLF907;Cs]Gg6Ħ9 )F=<'F$"1GȊYO162RQoZ^Ҭ_9C|k14/jcVPe6ͳb#_oM0/002G]pa^un~]kd%$a\|2p>gި<[:\EZc5Em>0gf]Z13,SIgPjL[NO4}.m0@R?{LBR;`DZ3%5jRҶh,V'H<1ߖN2 ^2%}iHlg(j1Pw ᇇ:Lz5׵Ul$OtNk L;AVozkU&nmcɏfwH3M|SPT2'cR>LX礁3 \*\EzXs mF1"f$i3;؇  yV)}kS#op&:aNE/+="Q+N&lx.PU-/|XUX*5>d[SSp $f,@JnHJ0y ) ȮU;W@Y_nkcȫAȥ@xum`s8c91uE>ROi:sr((L',3s:UHiw{я')N6y".ѕOvrq:`jwU5dA;i=4nCeNyߏ>`[Y3.2J|IKG4q}u#-EB,^mywl/&i'9 "8y>u֭56K3l9i J+NF_c _T'6tJ#"]V4=a(te!(@#3hz~;N틄5+Fz ۊ|"qswtdPdkW*T;j .J%{z QCnݩZiI?RB(s'+ 7TKӼO=S醥Q)igi )T(^[J8/e&6t"[W$y]㹇Z$6_X3 d Ll9$T+'ă)bg-8cLX;Y'rQ$zɥ74c,N(I&^Zk uF?Lmy(sU|/1cZ #{O㯖~ H]g:hT&}TQny wR^U_.a. ؞*_Qٙ=e:38a&b,)0gҸj@ sfr*"u_8|cO=9މi|Q`_Z\|p>#@+vX[NL+FOêQCy%3uL>_ל&^B,MdvQZABfHNoLwu>a=q qY: e/P?& p,i͍˩ހ+/lGYIf>ƩITvuol(ʩCdsPq '95j%BmĶߝ{C@ fJVqS^|R8>r۳su=O7+v(.sj܊"8v.7@|!$]t8},SD:^ r iAT!U0Y'zqW!J:sÀLJQ/h8rR&JFu ϔco#R$rr7~驂@_{:֩Rt,ء j`kΨ\KƃxRI8[>% !gWQ1C՛ &Kh3 QW@J%n?)Oc'u.tÖxG}DJsOݑՓ:N˝bT:9Y4DF{=$:n*F(680*s\ZA2!,2}|Q*:N/ Nfu舱ˈYM V[ҠI'"@G8o2Qk@jaF0q._|!_p1V: 5Y{#̠@ 9J3]&85CQ5'd;8װIup7~ nm"D63y)p̛)ˍĮ]XO-D/)&{:s}Կ6ʱe?Q^ qE!l>Za sAsjId V߉SK b"dUF<BW#a_wˋ85!& 4R9 UY [ii`^?x-1;t Fo7f2d*G]Y@yՓM׭0G φWTo>DaWSg/,70)';4~/Ţ=oK|'m:n|KuHЫ G%)Ogc\<:=l?H5{oxF?. #~'_`/_JApdMgm/a]ov:έ.fH09GT R6 y M!"ػzFtAHtJ=g ]x&2UрkCꇺ v'ְ A K-bf+VBE0 VQ7 n$?/qC>(C?&QLNG w;~8X<:U֨3* ݽZQG2+a0mjp ÀЃ{(>M5ԑ 9ަR˃ň'Z-/~W!w^m0[A vh0s͍c 6@JP/{J]whm z .ej+#hBH?4"Ά'4 .Þ8y>upޢx_"PNU;4(9:JBk~ -k! fd"_PK2#̴UNk4zU[I!&xtr!6=#Ժ7:>ї+d~tϭFvR̃/1=.OZƽ qΣfڡHG[[0sUq̆ IgBa0EɐӇ ;XJe v;C( /w=`eaGD@nl#%4֨i*FpP>~U Z"}}FJ1'OAKSP̲7ǒQnf[>@Qqd<:i @ a stv[a]"xz&W( I[(1S}FeL^bb5\;#! Koeb'k1RT Hii/υw$ɷ, w|tЅ[T HcC ,p>v Ϗ.7&CyZT󰟮=`S}X: _Kx@yR)uhN,ALD)N۬0F?¼lisi"4+ tVe_^{cPg?eA{`7]2Ŏ~x~lwӪ.là0> SPT۫x.Pnk*v$(T ~& p+˚O`bzR$>N? 鹢qS|DK h>mEu?(>6-Y IɐGsaB:2G}6'O7a^aL a;/1g z#T>;ݷ3}S$  Mbk =Ϫ6aU/O*%ׄYH c WTZznޑv3}ņ,Hw4!VU_/viXې'd$!4. "Q/W'dav[hӦ1]$xVtĢůKT65#"I򭚹q72r(0+>ec|V AʝQE.{m;U.0I?[u5:rF_̾hޝf Vs,z=ۻMa$c/`*j/K-Ue b~S_"w=ԣ;JwORB廦cmЈx6 t4!.^p)yh`?+8w:YGLJOǖj*7GeW]6(?`npwwe^|l0KU4BK̫QR#P a- 0dqv46er8zWAc7SDD9ӃԺmXy)um=NG.غxNuHt'>i4 >O$Yht38سAy]4x< o"ߥy2  RuU7E<&(f0_"xs[}wD+fl'?賞 Tdi? K@$8Xa83zfxZS3ڙEř`ה\ Q} 2Hq<@q!/A9-k{Blм,-.C~tPq'dLvwO U76Vv̍?Oԣٔ {վjzNwArq)NB˧n҃[t3lꈿksUӗPQWO͊[RA HɐCz1`JVfWf'sy4le@df}%&L!ٓc*@Ҹ=dʪKfI{Lށs4:cG#y0oΘu_t}3a]M U(z* tކ ՖWħEMQA$>/],mC op>dUPKb }v.7d1jnb fM`vE7U]d^zb؝QLJdR݇mrt"$D~V_Ԅ7^xTB&멾ח;NX|Bj`0~k>8]8 #7`jp$Sh7+Ƅ=$΢ *8hBM+TH9vBh# wwͮqUV/ugE ObʹAF;]ð-FtF_$5SX5^lU<MSD!awl*Ik Se6!iJ@cz8; H%oCPgٙ`A2\|:>]# ϥB2`rZta3 hv) 5 J8}'K+<57.1c.Υ;YNZ3%`3u]ka 8h.wGlM҉v/IRh=1P`1emCvi0S` cMhlVt pZ0HbG mf81FMLLq O^ls5P Y ZAjbPLD. :eR03%3̴AlJS:ըX:0+5?}r {2$ +b'ix2TH1(vwnJNZy0?8 $Ǚf^g'*JE<&SsdPԜIbwվ3\QLB5:UwU R?iYn%/Jcx%)PsQM mVMxwHJ1u]ѹ`?3Lc6 )Zz U FH4&݄(+eUqD&Z֯,ن'7Cgn XRTR[Olȷ<.@ߛ7:E"ElG:Y}Se] ΉyzTVGilz]po!t†ҞSDmȴje(?x+׸4M,LC*~爔xa}A 'ZRџ5޳IGQ?P$ doԦQ.#vFgW1\aCQ68#8;\ Hv׮$'vW{CJ) F`t2/ٺr%ikYj+'>3[m9rJ(ȕ,Xc߾xH i:<ۅhu#\]bRL^Y(vk(ƶ{4cD`\/5Ԣʔǚ3&K1{Kܝ\RqYH 8얺AcL*:^e3(#6/ #_"jq~a|bA7O+6}$0Ƽ?孫C5!v U_ 7(¿KK6v ;&OR|}+xT*b~$m\r$W>l)<]ߠk 57:gD̮.0∗xLW~ˣ{]4FpU_9'57S*3} sV)cF@|;7;TFaDZzaم*.^9}o.Yk'L[~ʅmf5"9UXF5q\siZqmcbbpeK̂>[])ԁ Tp/RB>1)0ȴ*dtۧ ``\UevٳT؇]՛eށYȳGtT W9^5 lB ~ؐAQeyReS"j𘘶@i_1i?i(Ґ&hU( zfç-&<|˒3#wt-䛖z=sA Q2hD}p: k;Zd}-t𵥷AqxcFȡ5Q5d-˳6Uw'"YnM%6pT &ʥ) ۷} (,bRCsN&;PTOQ*|p_'d|f/MT)L* iwu b<7,],ˬDXT_LCZQ>7)&}arVY6GՁ0tcl*EQϻM^ra^d[u$1Vp;~ /(kNlmI5Tdx,m.Ed-Z&GDžoeϪڀ a4)V҃.O-A=GR1ӲO&e-6-'OSjl4K31boTq^_>eK* 2GGX5h^P!Ws <%ْtUnD^?כ55 g}e>nj.5q2ɺQG*B6PTsH}y!#iz g_*p/%bJp#Q A{^M\rȕUE*XpPZ"ӵtƌZ/hd`tEvRPY|_1-Lˌx`[c w| .KQ!aMݓXֽ}PEjy;nֺ}IT@ecsiKU%ߛfRrwT!UfiN ݔ#x6ZtD-΀bY9XSVv?,GDCҋxW*}IZ hӎT90ilU UH-o\G)W195Iw=imIU)7*HhC" :!#RذHž9Ug)hߏv'>~TDN'ۗEESxy=5 |HXgV0DHdCXwʘ(d|," k覮'R%r6H?d1"u)t]_)bEjU0^z,#b[%-Tpt{ݐ+f~JFp^4&sB&CX\`@>5Q/A "u_+(g~¿K8ePHS*wʼ@jnlv1Q8m mA>ӡ?$Ӈ<⿏}х)R;?V0$AJFI_Ńl'rd>#N0Ь("1 jOzq sulߓOsRz[*U ,-K{/6;#]NX]=yMy,njlC/9Iۙ4 v5m`]Dh-$`"FqH9Ve(l$j-:˻J͋KQ N-N`sv sheh_]{\>*ϲ/=\t cx\rd{i )9 ?۠ I z)ւ0!{:֤}kČo=Y8?ԌsX B-Bfr: Nu"tg-|+(`T/}>A,`/^Jf~<4ey8}!Ĕ1^([GYk,Gly4M6a'`o Β. 5iZuJŶD*eQNй+$%,o(ۮ~U߹yoP+kl%,4gl[9X ;7L9>_Ie5׽F*؊K SބHK!q/!onvTN5ANTZ4nuS7L' Zf(gWX7qoAbalfG>s5 Z"I3/U.JWT8iPmWFT3i:-Թ,fg||e J w<,sg3w75=e3bqjFQb}:+[+׍*m!tR>t-B+Q#~ %DnXxH_N=##fRP#i(f^uD[|qxizDᩱfa芟J3nA37ۀ5Nsg@)r".{{Ϥ $`Rw{x鲉^ ʺ3ÒiFGaO>6)`ˣVQV/m;cuJnTb/l} w@E -[Vn"n7~a!n7]b36|٦;^G9-5Wc!Aڠ'1HLh[y5w,o9s,5>neN yo4JX @pFͬ6X½qG}`=!\[>~֚ q[Ͳ]K@lvqltaF3D([%\`-Kc/ lW*ЍM (_<ή<}lt7>INk{V¾Iij(\ⷰ/!F'Hr\6 `7XD\L /n p>1X1P9@9*g2gI&xhͳ<3?$x:%^(Nm<(W& dJrFGQ( K\֐Z\9^nJb0KQN!۪6#@rdy#X 1A'3&݁Nv|׵{ڼyg P8kUlgSEseblNL5hӛϳ>|f9=T^o!/o mW% yMeֺfe#~7;B";=p 3|]=~:x^̕+7yIKfǬLM )": ֏e黭}b!ȞSUߴSt {?$s~z\ñ67?*gti*ް%7lB]oH UQ])ZO{ݍi}P)fYN`5ybűܫҢXR<mWZ0~I^Y㊠ H/ eo 6;Mx|iPCڃr-kevܯvR(J#i"=#(:neW lp0=+C^f<üç avaUUC>ctq3_R,輹d!-[\+`?C_;ع{#bbM/wpkt4OʕDVr]qճ]~C XICp9Ÿ HK#[b*}|)@Ż/CFFZ{>:1ؕsc/eLBonjp# -Ug;j`II%腂t88=c_P <๵n@qr]DP]b,3-Ou;ewb8f sV`YB[޽eDXR@v3_"A IMRtgsqo|:ʻ7O{?ܨLC*_bs/=~l7[B6??8饭nC8݉E{ bcWE'}<Ń]:0p +);dhKdxwqi e w' "M"ˊ%hpӅ6)mVh#|DFOD:tDCZcq:@)5 Ԭۻ^UPsu/mC*Jb!^\1_9f4W3rgdxgП+Efd8u뗅1n:$qIeB3o)' 6{'\#TݹvI5 eINtoߡOtWDTV(6P`G +w֙iBPNU@-pxm{_ e8"2H羉I*(kG.^-avYt Q:d&wy.O`*bZaRWO._0 =4yo{7ew jaXϸ@|,WտvUsߝ`D}23*6m=fDX0q炳/d$l$zs5=0hdM`vatJ=ң SR&1H2n YD/ ޹I^̘ 3 EN!m2_/IM%l=ÿco6tcI/މ/eo״?3[Pye?GUedA]5>jFj6ILԪF[TZ'I/S p9-Mpz1ˊF7xnn =!S[ BiZ_7Wk +g[kWFa=hOxSd(1W-DЇƠ K蚕pNUImmWf=F P1"[Ɛv F#.67xQe$mK);l&~PZJZCQ̓+tPRv1nzig7#V\an6,O!3^_0OSWIyk<>[~r;|%)`+3 9// Ӌgҟ`gCVPdǵ[?s9N. fw{ ˀ?jF?s7U]굇f+_=  pTp4Dl'X. ܤl>I?D/^vTC(Sp6 XB|S]yl7\Lqa@7j:@>1g*g `ei#OPL}UX&)8 ]k,^QO|YvdcV7abkQ&ήS0gpX 4ZS`(nTL 2H'%\te<}Fմ \7x4۷Mrӎp/2;ZR,5dBw[(5\}C^醃5韤Arj'#I4 '}dZZL,QMQ<T$yIn 6GРazN\.bX_mIh}q.vX^888BgKkOvz\!nBa1-)w; u2Zj:b[l3tBɭO .p-ADҎgo>8'+Gڷg,ăd֗uX;zƘ*5morDbi6k33:g 5ij5#H-P֚98-{/Z8ilm |3#iMIHd cD$q: )*J@3)eѴ_M5.D )tn/biIT1nd,륩,' ۭ$֨niSjPĤMM(#C=L=u*Gp3&3or=9,1 jVEnW,7yqbX>56(ч< cN?#E,#+/NB"<\_l;p@b$;l)v舽j[zq6k>p#v2v TұE =Gٕ[SĵU*ϻy$].$ `k^xlBm]~Rit S!Yl46s3ݮm|"Or^9 }r+/Ǘ,Qy(R7ܻ1^D=z^u [?;K"N۳Zo.?QJls$$Py2BY;+CKA cxV3lwiRN_Y[).֫ff՘d9J5eS'ѡl[EO/G@[~yCRi_r/nZ' ''I43ԍxH/Z0 M2RɝRzDMF,b"LiG=z^]3_WAD|sҪI61EӚf#^ 1!0ih 2 jT̑e`v]ƓYXnU$ZKw+pjdl nE]A!l[>dBқ!J0}wR>*ޘH5yL\۱%ʠaDAbx¥i?|_ě B2 8@8ao3NYT{ؘ05/JbhƓcC>>Fb%"*?&H32L~9 %cwQ҄`fNw⁊E)I=sz2_Lҿ$3ofC]-Ncl{1F?x}wS-3 q5 (Ep/8Ccں Ct5$Tʡ_ߎND⣖$B)P]5y, Z*|B'oqQ-шJvK^8!q\ 8R+8~ŕ?6.!)sAs]ϴ##C M[:R4@.am |Lr/{ Vv UJP4ndgZJM}¢ņ0HN+?I{](1E\Rs8"ώIFSHn(6r%LрY"j\::ڗx/IꍧA2B?tL05 ш%3f1ݎ2qi=ScZrw23O@%@Whcti4kst!=bƚ5 ow-АĞ >q+e 򷓉[ o-Qn9\cP1~O_qkw7n܂8!l 㹑sN%*'c'&DvP<:c}Wvo#B? c* _=az P|¼{fֳFhm*#j7丌wC,Z#o]÷\cCBCf}lLA/M` ~z!lh,P{qyD(5䛎_"s>{p,Ҭ=Sʄ)db=ЯHec@D8?>,VxE$v9oEsNkEYWETɘ.BG!+{&?NOALg&0f2 ׈knK02E1(@jI2d"z+:+mRL;S&{drZUY# tCrU)鱣o%܌.Jjv|`-ChuF]JˢWFzQr.'kT1W vC̩{U[LibK*8z_=%F`Mu]HD^:IDLQxeDWݘ{cc4^Uq~ Lbt)T9ZYݽ6B:)v9HVlK%=E2ڦ3mc[[W. VHZl}⼠3/ۉ-[%_N,1_GSH>B(.C+gGLp:_]4:Uy`0堇~]ǭ|$LpZz& WzwΡ~V ;iJܢL=, -D&`E""35D B1uqL$yc:@9P?(:8|]X&\YN%iSw66n(4q742}w]w˲dmG'bYS x.S ŽS)cml}V&I3mh̒t^\Ɠn aCj'F_U &e:BnC*$!͌\$KM-dnٺ]_4QpJ0{䭼"]a `amKzLXx6, 'Mۻˁ1錆)V28`5T~ƨ cAݤPD쮹?ª?8 h6v0ӄ$JJw4WC:[EVp`ӵM7lR㠓"輻3jE6**M`^ՈHbH#(-5%Eg}\G4tifc)^AXǂ6 H z+UP ^w$Y2sIL!G J`u(Ai:@5z4ƥվ Q?ϙW᭕u&E_n _$J6)UG1;4Gi8?r^2 Fn'"N׮ӡS1 aKO27Ffc@.| 6|Q\ox=7"Ow!$O^O7=qXtE8OO6D-?wmY_6ǁhM}Z!},a¤t`6L{Q {%8`,б(w Xݦ6z#id@qapX6ǍǶw_ҟA'[[ Ď7E쓫ϕFܭ$f6" ڪ;xf+@fNZ< C9Rz<"BVw&:IuWt:`Q[c),fʷj6Rt}~ѻJcI2X5_^}q &6d$.p(7Qk9دmm>v. dkyʀhx>Q6 ( Bi|.t2_|.>.}4G=a.W>~mPle`uo~:>0.{Nǒ%kH9{/,~ТV7GɢL1j:`jinsR\ v" dq-*ͪv_I|G@PRiȃ}5r`}Q}9R4&EʋKF=B6d/LX1Rs(D{5϶ҭCa1"ha]oeCC%S$?7O;t"wˠUъ5~OCg Eȶl##ԃgUF/"ۆKJ:ubi%J6.kfTpVH2V%Be=nvZ-!dO_D+ɏ >s:K c5v;05„Ϗ=.j%(ݝS3}|支Ց㕨;#68Rzj,yd<}@V*KGe 8G]oJd'[BUbƝ-%UE/@sDñ.AT$J4]uA?@LB1ajB$>(zmd>5ˤE+IxBoZB$D+ OQTi5Ԩ-K%yޓ7t|OI/x=uzԸJ_ddA@u"5c9-X<(Y>S^*$]`-:'M1ײL{ͥ(ԭ!3o<,H'(g;Ç/LJ4slB jmѧw!/+.R rCHX 3(ܒ 8pO˺H"G򷱏# jEqmFbW,7.巧~;jS6kmNЪ5(AÉ:j1od  G-?\6=|cmyz?t;a[UPTIXtO7߻/Zٜj'|r4 ge_YaX[lخ{d^-PZY|OvOA/Q`~2V oL&Iv'S#^a:puN1^y*eT,b!ۻu7ªl#wn77&jdʸh"Bvz ,e -ֻMkomAOqd txD@.oNJZ+zXwR}x`ՏO+aT w;j\:zo`dH848xjfGyrbSF7\,.6E_[S=Ew%)"1!%qS*HHђFUƐG7m_[xD\ ^m U &OQ%MLHq韸].!Ia Fu!}LBGh/o5$4{#+bcqbXyvm,zoV<&:"S.p=E?uՑOfc`Q1!.u+``CSJ7ER}kN ÍVM Ѩp~Cޒp {/I-(fJ2+3mPY/=/}59a)w(lT OY9JNۻ!ǐ5iw#Y6V#O?1yfƑL <:u[' 6̅ o_{1RE~8be,AIrԺ2[J6 qtn3uG¨i+4$Vg6 v;?D86m=@½@}h}as-ZH.|a\'jC v3Eܕ-ȡµ@T 4TG.776&~[{J7 Zx6 :lsZb~Z5*z^<ыC?2N̵`uw (EU2уM:Ye4?yEzjשKvAUׯ˗h\ I87IQjц H@5}Z8LSKF߅2Ջ&z-=&UWlWH]XhFd)^Tsf;ϺBi[)uo w֋5}tgUL 4oxNZKfa,SH)f c];K_7hTƶKq?b/;Nأ4r#za6sқ%][XrK?sҶ#eZ/3ݟd.S r_TQs6\*zh{و@ U꣫W m0dG%z_+C6?JLziRB. )# υ"jqRg8 X-gb X$#ɠU)p3q6gdo] $Z EŒ]Z_Ej7wc{?I:OJGmt=?q (l{_vÛ_tѨi3 |ipSdpwjNsF>118M“pV<yx3tB? (\SbG~磻镐ˏTt^XD_ !B=dҊ~ښilK1t[\t6tso]:c6ꁄJ`\~Z|=Q^s53^|wQ؊bCRQ#D^_e)k\Jf `zDV#A_. ivk+rN۾?"9/xo1I8^.B򠲬yXd;q$>ױSZYC^)uF9_Gb;NDM3(! Q kz?7$љԝHu4K{<Gdf끑7,4Ykm::/o<#Hb{7̢w1⦬@ p$!N.QV~ `yeHݱO;;ĀK-fE@rkCEVpvM(ۑ]*ۚ( R3 8x=+]JVAl*i % lV!Cn} *r'҃l*J!isgSJ&(fi3 XhOH1&b0D _OWozGs~&ʸBc\N`ݽ᫠b~{'؊X a/Dl0 s<)'lN$az/0kc0m 2 d2$Mۼ[̬fwpTi9E|XtH?%P͌:/V9#B5lܬtkM[[D-x)@mAGXo*V&**V@-(4~r^"mOP'ɓk>P/aR8iⱋesJ:B{%D(?c ;Ӿc\H({;?{ 5I5X;qe4X'ʊvBy z( e? G;o[d*^a916 4xKZJcli57xlH犙֡qX;>U.XͧINSu,8wag>,g;da/{@Ea$mf [xjk5d2DJLYp$͏^3NZ fgA?WƁIikWsBmwe+l7boMlk"#md"*fB'eZ&.H*PjjqiOAJtᓛ _z*IWGE71 DD6*D%ӱܙ[ \0bDM&.ޢKySufXcDC1P:H,Z6.N.;`z)\"?<}|Us`KS/iTtQċU,Wr&q1?ٷʭ ze R\Sխ_,{@Qp,T]%]WLe o8ϩdkb5'z!w8tjrW~Cը:>j -mM~.1xp>虢7+/(5NiW}~gxnXJXZj=ycQ&`%Ɣ,/Y\kejǕ_Yuv R|gq,E40 uE988vqe8oD 6Dj?:[hk}+54IE1C@qgzL!/˸`&4EDIⴆX}:*?B15W^3c3l=ixU\*|fh~3dcX?sL 0lnK̑ﮙ_7^z!KހB \v6xn #]lIB|>Y4Cj-lj',k7!ĘhÁCPL'U-6O"gM;Ņ =y9WGSk O~iѪ aZ]ޠ`QKH߭vKb@Q<k]c7&&m5x8n}ck3 SܖmL4Jپi'U5~zFXt2Sp;4ZI$$ͅeiIba{:=XM̌n$ Tӭ .QJ~u%\/ E冎TS/'by˯{(dWD{[yUQQha聀6Pb ">g.JpvF9~V܃*‰+k Π U^lߚ y3f.hd#cv~q%`oy?7ǒork?qylVձu>WބEr͛s>1lh#[L|4$VWVa3aOdъ0+$0F od:}[]~w[%?LFSms28E`;sg'ƄQ T:6b>]uLw&hbV͟T6a ujs!Pʓ9(|g\U`;m ŅUHMMYl=e).H :2xN>!?L !=&Vlp*Rqt& aL@$Qn$6iۇl?T͜BDgY=^^x%1S 9I<?S[TÀI?W 7=.g/|nnN vh@q w g~AJ^BzG@6,hDQ];3 Aytb,M+dD25m=A n%d7=S䓪6hFQP<ͯKTq؎傷nK5 A6Q{r6H`C`{A2?q&(øA)Ȱ diLdlETҺ{'KY]%HP/45ѽ1p%)zx0Ty۹ Dg͵NoBt35In<@|7e,ƣp!7ہ7D},Y(Od<;8;A(壜0mdgN\gQ^%' p:5·¡Jh.CpV'ךg2$<l !iZ3 ~FGer> >.Zɓڝ_*y| 딼SEj#SrrL 2&l5C} e[x޻Ѩ.AaͅQؐW': .U]Z>_Cg$P.;o(fH⥾=PQ ,]4r#os e&HRpѡ_ltAʤЀ<}wKX"`QTGKDw Ob#= sh;8õnl`N%00KOsҡD33@~]Tɫy6ֺ(#t+f٭>Z| ;;98e"M, MVArٵ9UU/`t0#朇?-욜 <>)޵w=K6pHep~6_| [|$vV҆q;1+~~ȷIM*9 @RwlNk>3NvxDhڅDdZUv Xz|#8eݸcQw쥡)2&*Ho xCO%L008Ow)\\@QźD6`rt|ܲ*"O)ȳ i%s({,H2D!_r Ih t[ؿo2H|ٷ֮"-ݒm6qvQVT[LYrrH1'H}h-fa;TʖF߄4 똪8}LXqec7Ņh[l"kjˤ%x 3DznB|$:(9$$*~ *Ʌ.Yv_u?z(cj=θ5)@cO~`խ*NY54^a]X a np.zNl1)T;D8= u*l)HǜA&M^EsG % ;5A͒KM%I׍mq<쐖hwC0"xz?qNZT\##NOr zU diZrnUkgNIPmLa9"1; gne[`,Vy?#ƣzc02I :f(ăfcBn*Te.FCO@-Z7YOve@6+X"gND,Z1v~\co{0\A*NbTDbaKi[)Šyi6z K?7D(<օ-G)&RӞgaiK4u(M~*UbynW>xk&̖U;~ EbE+Do~R *h@#![ 0RӁvi P}%Ռ1,v8|=zs5EM4'<H$y ! ƭn҄?j@D0n9ogΚ {H F5D,mJ<(qkM.%ӧM1#t8W&.֟qQ)Ȉf~Âؔv?OMgVjpF0N{DXcz2ūqYx[WR<%?8Q!4Y"<[77E<ς>e<ٜ%y̏2_;AlKx ,7iS8p;GN7 /5yQ8e!сGՄ2IOjY6\8YŶNޏ-\T2\o2|B~97~!v:B!7p~ܶChrݪѧjG 8y;PП 5X+~1ɭ4KZ_GEd#I :ikGΈ\aԪ OQ)WVAnA7D nfJh& fToq_F3nk0B2|ԘuSЀ U P?Y ')t>dvhqy1:nHdždDT'D[2~~~cqZ;<<$@U蒗`D O!^FWn}MWa3 89R8|=8b}}ӻ=A[PaY웹*B0NE$Z!P!mUbPO,Z y/d"Fw@':t."u-XgCDK314 i0Hkǁ)KYpC-^P|=&@Vu<^RAxh6Z-=\GeAc!ި,]oJ*UXSii 陯oոqg,6{r< ;Z %仇 ǖ p}@^hѰaÏXj!jqDUIjhNPRyL6o>E=^+v߫CbO`I@5S,u9E*\A֪o16s CpߊppCEۺςImaͨ}.9a2D"¢pLLN*KtxD*p,Tsq[ńH x-QJu'07wqBHs53E$ca1ACfw_f|x{D!k;PRN}pSU?[u/EŝϾ?G"S2VcE]IHwu0A^:)8CښH2spط+˘: P2$&cnAoh53PCP{!k?[$*ϸW~x441 d9=Xc)qqw-務\MwdLuJ2j,dEa|a36sʼn*IЛQ$4idAqUB7'9oy*@(ϤdBɶ IOHH,zPp.J kMj|LnK 4[U1lѯhܺ,SHt=\3{ ]ٺS#4Щ"rG_cG#`"9YT jA3#Q Q-nӾ(IKKnHޏ |S/s4&Jo1 nPjƳdw{qi_e/xѭ&gנvvV}ߎzxtGK=#m1~6%H\ՙ 'nJ6٥D (+U@L /O {#EmA-~f/^$ٲyy1敠8wlkj1"r:"QJe˰+vA/2mVW/vC6jJŮ;Ԏk>Wx9ߵWkUYcz;3: T Nغ6>Wͫs`#/ 휬ms~f;||8Nd[o-&|@~~GZs<["/U4H<07őIXx[>ٌ v˧P,( wEכzxUj\U"Y+O\4/d(I_Zdf(S%.w;JF3lpҟu|c1kgam9`lXtzh="708!\0L`TF^~AaO+kSZ18?Gڙ!JH$? Ix[3I,O 0W,T%d>=lX"w60A^M E:lw?beݬ0wKL$Fi,7d:lZ2vs0Z|D 'Ldht/{>&m2و ¶Qce+Dke}, _qZpUNu{_qtٲ"Ҁ@xV6e eݬzh$gB2cҺZZHrjC ]g&iXc{Jt7ʣ:t_.ݲ#vV3ij ؟e g!> sʗ7D<g3;P=鐊H$ǹͬnk11 خp[4hDPݦ B1F!kw#S!'ú)1?t?D?-h,[ds7שըDx;[EYȫc4Ms$LImڎxVP&zzrW+ld>"ٮ;@W&p@m4_2xf @%Y ThwS$lQP'mKuk}` )X֟]W0}٠[{Nc^ ֋nutu0RNNhV匛z!xMӨLH:a- |Й -*3 qF"2SY_XA5s?iU(f9Щe !O Κ&{ sK?Baҍ ,^2Q=;UĂ6es3ةHTCOhp1m'cC#u=כSѬ'vT)D 5_ʆ#WR]`HqvE0lb5/C[^O+0vcr  Y~uԳZĚIǯuRNtOA|9$/Nr*R@ۯTw,&?IcҌ r)A>yVYwq)FPz}gQg^wb1!ք[XQb2Y _^DŧQմӎ(J~'3qsBoyiϯ%4=]t3_dbM:tfcD= R$ #- -E I" &o<z[vk!( :v|zK鳣~,Xn3K]p 䛺*ʊsqlMCa}ϼ\$1@)!.xu/G`NSL`:#lv})9I7E6kV-+g 4vSl&S3XyQ)(6¯WKEzM ̱8ztcXˇIvb/o b-MF_N_rUT&"S?($O>UsG/2d{ԅZ_Kj)쭝27;'-}'&q4ӃKbS$ x츰lnZKOGL"R ~k ?Ό@m +ɭ\B@! GnHR-ZM w}-rbX| 2Vz|Aӭ'R\:`hUE*X#+SFWZ^L9!8*+;ȷ7xvyy`ϓV˹\t{MPW̗K-~,&۹m&e]'".Y7lXbδ(NgWSܕ,Ƅ,$DpY5@%%wO?ҋWQHI]X2֗A9L\;%tWս/["@^Z!fщRzH)3HCU8ۅ 瓩kWArV= 7=|8 ݻ{F(aB3! "m%UkSKk _硍0]GY&bH<°}?~%O0(] Uv\rK\Mdvo0׳bu5XM`og)}.,5%GW狷\ l^C`F~9;0y:jIJ1߲7;)/ @A`՝?|]@Tx)1@wMՕy*`7馶95o mw%ͨ4%D1z/Z f聪vO.ȷ3+5!nXZ('mMD /yAe'A? y8jAqz.' T"u+R\XÅuQ{pRs);4(7 -&쓳zA|`K=O"/an2MK#v+PR񬂴tdRťc_%VR&IMLVI`;}\Il'%3n$6YA:&1*!v o.-lx6yր/M|LzEtsGV˫)  A#h%G:Pr dm{zD2f~u|Ag4D ب1f/suڲRnĐ(r1̂"h{?~@,"22  +9(^;;,ϥBQSVlt6|cIOyy5yucF$\^0%F5% 48ԝTPg"VߓA ?2Z dxx뇲Ņɧ@SSs\&l9,qUG)ɂb t [wRxc 5!W!tsB.-ЮUBW˫ʏm,qJe!Dzh%EK,=:N_wRVD ER=4|ou-_01Ͽd{c!Ŝew}tDW7*x6"7s#}z؉=ŚI{Z fyM.~)[krJ[PL0^ةss5a |xii2*an9b(+V*,8-N&3U`3mwsMDN^r19d9XբUĨA +^fgCa ʥO7.\>`N#^5[0j'Ń]~>D* m]ܰY\EiRvgs*$g; =_Vh7k{ݑh.HE ޡK ic 6+ft.( .L RI+̝Hch.hut)mP"A71AmПOJ pn; $߫͗NOwWN}1 \G_ Os(Zj U":z"g1V__\׆{|l5.p`]N8.;^VsMK5B7\#S-錀uUr|A4ECHz^x`61T]'7,Au206ӷ=,y F3 ' }G$. esve8! %GM07X[b w(a=Ӭ&w5&d@PM8JɌf4Z/Mܿ*1 }sg 3Kpu״ē2J3mjcg»JUNr@Ȗ)5"*DO3@TTY)ۧ bj [kuTN_g#; E߁O1 mr$&5I2'!J8],!p=h(J'= ʑ\jPpcuւƔ"!+ zҟuuթ3o`xD ԏRK(OIAzB%CaFJN[8HͿl" K*4rS6J1C_u*Sv̳E#?r2[I)>:JxAOLQKYA 3%%XYSX|.=~P ?HY}eQ^} H-5܅d ًVKS3"0yJa}M`pBȠ8 o䟥} ǩAa1K&IL$/쾥\ w!̞0=5İVK(u.ި%Dmj!4 Eo %'r_У1a7\Iptc99a@)-*~& LC e8YāJE>A#hfL.Ҕ|l0qҝ3~l#4)wPu?)4QAldG(5B.ЎI\ KNnINO+[BYdo2\n%69/łJ9DsBξSHQDj$ΆUGnldPA4 U9m~R 4m,[;up"㈊U %q,hRJWnc8?]|`x,l$)gf˩YIމ4|9>1?0Jdn;i㏱c= ªUj4 #q'2°Lo-T;Ӛn9eQA静:>.gd/"7qo{^` w!oTF0G6|eM. KѦi4c0f3jrc?[ʼnhj'+-x=2v&OM ]\T%!k;k⣠F/Vq/8wxh2ꌔq904t 82-e*F;/hw7qkVz=QKD*Ҹݼ*m zWnYGhM̘hQ}.`G6$X('VO\ƋEqiȉzjO"?G5EpPJK$@mCwD&)nUizYKbuFP? *>(vL1 .-Ub ׅF6QCmkAidcu<;_FsY~-+sYە -_(yGNfvy[({(ieKRPCd@FZEo 3*)au9o, I| K^Me%~Ӫy7tSG6!ަ 4GQy(>g]}DCK/tɵzU[|xJyWx03;AɀF/ Z\T>]`mJ KPpįEttCH|ƾ dXý- )}:oopFV(nJRn˗I} σ\ O}KkA ,CH5O)caʌ  XL߀$C~/&*o*-Sԛ)`I /MW/*,p !Cf.eJo*G8UdpW*ɫN;g?y4G&dӬj9(~ţг1hH̎\/Wۢ~~>ےYUy+Bt`nU5PLH]t$ V`n<=%;2C0,ڮ 8Cxnm%GjNXg< {3U-T㘊S1}G,CaL?MY%}R|d-d]S%-Bne'*3{KժIOtv` 2^*ƱnN`0BSh B[hdÐ1b} vَ8P7awwz .MKcynj28GTBd.V؃f+1oډֺHt"eoJBomȺޥfFV:ƶ9dLHQ70}FzF.%TVE6X*F̣ u..Mj\G).^=gΛ)Q1%Z)JBN:>^ėt_A9'VP ?u{/ 5.>UoNW(_VAfz#ҝ2Sl 8OFv!PЄ5a7_n)=݂ô^+nN4G"D 6cw_{SfW(Eo־@m@2W`괿O%[Yw*h,9>sfp)7W$P~72_^۶ED5[qQA(23fEQ gjqbGVT9#~|׃hr2+~: છgL(]$>)x9.Ga=wpMv@ {'BH LN} .єW'J;Zm={7atXu|BBuO$Lmu\z`-j}hɪN4 Pbn 2kkKwԾaO 6:Ca5(Uy<6 3lX1 L\,ۃr^khmv D z2rceli]\m9Ɗ *w9X;mdR ^ң0*F |Ih.$A7? E -GNwZ'<% ybķsOO+;Im-u,!nv0etr/\KkrNڌC(rLvW SFY-e*Pz Nx3*xc YT>Ş2Z<٭`2g$mWuacBy/'0Aej|\V1Rw0Oapϱ\t-2FIff.}t #!W Nd`t+zS:UK@DydZ5UT\wA4Y7c z` Ջ):ʖI_GǣD>gc8Wb#to(/] cnW`l66#82/@웑#̎2\*,2^J`LəCNbx1=MhY͐nISLbR@;c]?!`N>r*1k\!(xQ;^ (sOV48Mގn[H"QIi%}wvR'-)iQ=',Y"]buqT.;'a2}ˢfID}>{kki\ä>CZ P-{|Kqa.?%%/ ypD(x{e^[O =C2n%'7+Ec7EҪL\xk, M_jg{V=iRlg>h_!L/ZgNX# d\Pd-I&[ܵED4;\Ǩ<(_ Wݶ=p  KYPiɬǗΜ%qpOYݳΙ:U3re?_%ܹ^#C^l]zW:1 r#:R+qp#8Guje $U4w +!PiA/NlvhXr^d0hHtγ㌟:Qtu8<$l=4xBHV9I). Vb=VA*P6^6uMҢƈ]E_ɑK+V"hY/_McXC%յG/N~*%t=XB2Y˻aԡ`pt5(~4ܱjWڞ5<u%Z ЃQʿh0Etc H60$sUkwyv  h ([ @[_b-),-: ?#Rv\$g`c9R]W [[?@ AC;E{-`)ǧKWtPra(Fs t,@"lSd?>`[x0بbete~{7G. D{ԂY֤g%ݣ\=i/-]:@\pq$3߾k~*i2Ֆd92j* N<#9~1)ŮLͱk) %>(a wtuJa>S_6:D0k o!CP%xM`˹bӊC⻌߶)iJP7؍:KF]laCt4WH˖#r@uʿi(V?FʚGP4V{%,JK8]+z]:>#] t!$|Oc#ngtKk|*H6RAj " ?ɕ*}d#Hx lGU"@;K=X'B C2/HmdcWpS Lg?sgCPIMX#6>y'2T :ե0&E_ ԓBb !Bwxʠ>30cpEbI[Z@kQ5wYb1l) GsIN.{;ZbZ 5gΩ-/w{_e]_7֍j]U_ v#r᫞6*QOɛ~Tusnd4b?Tf<#]{V-ш'STq|+7^^mh0^IoNA"*jIn >x= r:;x}qkBfδ/^{`MSm>,ՙtOZ~u؉EtB˯5"2EgF_~!aˆypvp0R9醀o ٖGtd2ąE:GO,Y2r.0aPlΗ-6kAm+wD SDՒnΗ$̛X8D\fFqcL9MPyvyNŋ:xM]hk$TvE]}F(bT'T<y6b/<zvh0}U$"7`ܦkzlVh!Y7"Ɖq9oUN1můC|HuP 73O 7LU5! "Σ1UX40ƋT x([lq+k3C lU~;C[+eHV!59@ƲܦZgc?d| hGR@?WɏU_ fM)>>ތ:U c#Tl8 \-j_+/_xsqBB2,]lp5gV)O"PVN7pӱYCYхiYU[6E^ v!fu)zQS?rUOՃM!͵)2-5^2P] +cQv9Oŵ2yfăCINUʬ2ۜXERE2 ߢǑy\?d"4 Uo&'Ǔqlf6pejyrObv<`Tlʔ=tr|7k &ܠ 9Ҧ7tEU1$K=;]p6f6ș`fSIB(A4S~.пs\/#}\"Qz3k=< 4A3MtΣs\XU=`mpbM}qXM׺wP<#.|my}ǰWAmhx},o]Ayȉ.LϙBi[7㶫sTybgf k5wLWUƑ*iS""Z㹅jݚ)GA8 c<\AVwmg j|* ikr49XQlR< 4ځ!-.eFvGUL6wL5ve闭P@:+qSqdHDlde^Rˀ@bcU0YXVÕKECxvpb5.rVJlF5A0S=&Z\ˢ8Sv4%Juwh[c=U%YzLZwSTl\wFܮhBV/Gxj&an{ w<TZFM)[ُ/o[)dA'R$'aoL|g IEZ7dPçaJ6җYi5)[<a3*'wZ܌ii|A/Ge4hbd$5_1Cl M5im}?īuP e%Uy{ %,׸c)7VtQ7= Gspz]u{syp. lY$7Kwΰg9{R] Edx݉K_xkmr)<I:S* J oO+NLK`K &l@XxJkR.a+SF6o$덛ξR@`c8Gw1է .H29PLӌVzt ؏<Dz5/ԿN@JkH_pXVi0r11bZvOըQKh Ph˛TWCb(FUЈ[hw[1&ϿҝpUKM)ו2W~71 H>#,bAý.4=W+,NEyw8i(~qL~O*n徥ikle(RG]xdT&>[Xj]xKpHT'ft6w$og GKD9FPJ%+;y1+ Ir6S-{v->^H<4D?NOA˨٣^2FƾP=(Z8|Vpϖ.8g| ft1p]H0DU,.b~ R~e)qٻ0Ӭ­Gj>VG/:[Γ*.ą{N_mj!r'm7ӭ%k]rbM #W أ!f qnNIq'/6;xY[1B4peXY|y9üJ>>wk%t3iX7[_.aŚIyHmE(euȂxU 8rx p:b^0F3!_^@_B᳓}c_,LF;jK]?E8fcBMa#FQiUxA1⫯6;540f;[̊u-b18ڢyfYd)E ׆ekHD]W\[a9Qe.[3vșȐEh"nyl17ͻϋsR-7D5Sٟm=m#tp{?Q?q/@),Erb?Rn ˁ@oRROH3B u'FEKTߺ[N{ˤh.Y  ?6ˡi^V71X!άٽdj[1qnu&١5u7 +wVԂ#2{x! ҆(_nh>X\=ORFnov`(Mru+zҽԳmKH2hHUDUe8ƒjlh)QbgVWj5^h_s7XUE!UsD}#lXu$Izk:=rzx?S?婢&RG$:ۭ8R|=V-6f_֤ޝ~0ʫQnڢ#ŁjMh % U kX ۨhM- HA镅ǂ W c3A5bVјJvȔGh P9B :t* } ƗRg[ߪٯQ Ao{ܢB ̱FK ϵ4NQCinJe Gsl)ȃ˂`<YH5JSN+m.6&hvQ|*`~gkpeP›SxBΛwlGV4W'Z/lT [{H""ji!lBxCDz^8YVIW zn8ăQZN/0s^ D>$bB݈'_?ˮ2U'럣*9Usb?Ԭn$qVϰ m5eU-( <5q[I2ގ5gN5?/:9|ܑZocbr((IMtgu*s}k̝H:&$f[z~F[קnЀLĮCxzTǴ;ކ cKg6GXEB!Qs7nҏ'Q|=tϼ݊w7DSTqoql2t"zv?ƃ cJ&Ab $9`J ߣȔ=|ۄBt>}(l?͈Ǘ :͝&2ԣ#|[ &ޔH5P ݤy^}s ե1L GwYnDCt/owmRoWaF4GB=<C92)qLVWjE.ӠGiR*ݒv}㻕o$ -"B7&;vICp*ԥ.hy0Y Nmhwc+x"|j P1M?yWHbP9iЛ|wzRUR5Piҩn+SGҲWwGAv&Kšcvd'zV( =ģ"ag/KL Rƃ/HKs)Cß^fDe$37]_϶ ) @ĢQv]2}l7b{mi4b5J'=;\USI6s2̘<&PN"WG+O xQл C <5I8#ӨՌ1t;@% Is. ,6&߿H *Fc@D_dtoWEsnAF.m 4}ڮixr0uUihf봺_ ijRn$wo|J. B2?C*;:A,Jr~<)-9n=x1cySjve7;]=b{Kpʼ;+L$*qY= F!QTV"5Ax]kF輐;_8XM=m*OYN`"#Ω)H 88Vv؟ۼ%'r;-_Yl|29,8E|z80R -wyӤsߢo8iN绅^Ul8ÆU q'.R&Eܝ Q"q!9ܦK'ѩo%a y o?)h`.Out" Wjccr aR#IjĹ90.R8w&ebcOTL(1'ͧc&]gȇK.s\ֆܳ'+@Юߺ6z+~0aXIN&PU@DTnāq]]x2h֫s&s]14ϝ9mW"j֤˚RA_vUJ\@eʨz%\{^oZZݱk K? i|5`w|o,Д1jtilq!%]eu?^ƐS rK@='*dE^};/z<7)%˳[ϒs,[xE {肆EZ)erf%upײ$\ã[½Y@" p2/k;e99NӨja[Y֖k̪Ë\Ki7z mEî;`l1jm]T=D/Y05yLP4Q芀Ƌ /HcnkX*4WHFRuA8oͤزQx:e2ٝP xXKgnaa2U7eO[в #}bYՅxX|:5 c_|ԝ)'-}F{ Bw0b#@k~Hd gЦj59CKQ* &c۲4 tL%2 e [QXӼꤱv V*]n-M4/%:oLҪYMݾ#k)+HG:mi!ݍo(^ K6ca~ a%g9 Ż%6E) Zɪh~$b2{k{>=#""g[iPrNT$JO_$1rQ||SE"g´V3Cue]29}K7 \WxC_i߰4ZCABߘ?71Of}}EIʖnrЬ`"qpuږ\W^>&.u 8OZs敐й0fHcĘӕI^`r !Jݵc$,g\,T0 ё۸m+q>AJY>锨1!K"{ ~:Uu`SЁ=SkGO0t;>vyD?ǀ2⠯LѼ=<=T U ? ߽Q0!h%FlJx/06 VG~Yb? r&v N%li&ž nЃMox+(Mj3 ;ʎ/)d<>5}icx}GLy-}7<*j}.tX1GA#f(N8;K{ 9g*ΕVz!%mH͞/) qd?4#5x }j> 3/<ʆ`&vw"?MWӊÍUK.bLZqGmMFCl9PӞ]9MLMYSwɭ ߍgqEt(x$~(r .ݨ\4ZH)O쥽ٳxˎ&_tPM|Q:-ZMKi>s%`GvEswR{N歞.:mPGb~ d5A)JaMũCWMJ`XqPKP-kU6nXqBhL y 1j +N4H/v2cXdUF*y TzkC8_۰:zDcxPLoYky\04L(^;UjF3LXJmEG9=rZo,xezZn\n$暅Q\XWd2vDo ^Hs7o_Kr%wjCidLAt GƖzPV Jn-UyRR h7?b$ *28PFaJsw#2i̐y5F&<Jq vrްc]]w,~Anypd$ͷ*3u`.~ P{>;Zycqx3}ٗvFVcdo+[5p;El$;v46!{DBm0%r>xhQ8]7@)NPTP!.8 b=Z6oHJ;9l]j{ȣ;xb 'u2mT&鯷uJMHOxYv+)R(M` ߩr^#J`$V]/x)֫`ϾYqϔ~lx |!cjaX߬ _T{0;0+o< *e9Dͽy 4ìGtC E {V*9#8UqDr[P]&OsshުĘ@6U`H|n-6rX;91 SMg0,r}2_ݤ@wbA xbVP% 2u jNnF %'s\o82T~Y(W1&?܏+7pm-IL;wq?9\eH PĢev  vcd^?Օ rXC.rS rm߁WO;TB]kt="Q^9@Q濍z;ɰkg=ßd`f!a5-84gZZ#^q! n;(f<{/I vMSA k4X./F$^0zRt&1jy1,q3Y-$-`2%=n^?;i~2_(˖0:V'owds,d &3`y~ϮJ/vgOXAԔDONj8.0S ٢^a;u-gjNөHp= JqqvN=iBwׯxbz7ZFVՊŖu~fiMFH krNv(ԤBGg?u8,PlRaK[15pGiZDf,B(/eIײ?xIG+Hx`nvasR!Sd V7øRx [ s Ͷ4E(*=<7` #WpL6ٕ@bvjs^C@f`=mچ@>fi< TN<)1μXSԒ ?y2!q`O81\J3B%IDEyԤ%AzI5!ִð]-(xD*Ԗ6Ceej ee?}**09O: i-uW \3\G|4zx<oK,19+o1^7@(yEr>CSC[pP(G+ Qx'KjP92im)X_QlDeͮLnS 8p_[ 3z#`dG GWLkƗQSXayl]n~ZNFÌ}> 7=QHF Htkb7"_iAAޫe+r !AQe5X:+YT;TIK~;Jtrӻ(6W|zWXP*r<ތqTBuJhn'pց; őfђ_FMl(_62&nݦ$(=(RM.zqR T"ܽ]$4M=@|Û=}vܸ[@dK,L«-U0dKsaH*FϨrLƖPHZar/E\2- V ]& 3Di f]rPgu-Sua@Eݯ=NէD.^ʔN9rYT$+xAsvyhWvgWc..&,&b+-y[3;U{8S" ^u ,;yz`%hpuD:Id 4BWqɶ'w-| L640WPuo$FB]tfQ'wK b"nr tcLJ`U&_zS]4(d{Ei>>u5H@mģI9sJදtڧ)I2EE:0OE(|4=V%9B\kF۟LiA>7(R:)Rѡ'lh73jܲ@)ff۶<U2Z8 MVqxz~jK]~,MKBjnBH`'tY:(6nIo L]氵U_\y o޲v=bHG`kzgl]Ғl/,bg@Rq}T.5h7>+J6§/d\CA9{X_[t"kmpaxhO ͫ0f6QW(2æC( wJN8c؍J{") CYP|NS­cVX9 5^VVg5-h-]唻 !vn0r/x[9c.?xLw^MOD3{/!7;݄ 3gb4 Τ FZ)ƙ48)) o!PT'؇"*E5y|6s9?H;ucpe;MDX~a-^U@C^,\nis^=]q.Ov#ݖNA GӍnbf?UЃHo*C<K?E\f& \YGK5lrk5K<;L(Y]x]5es.Zs'}㐞-n ;W&6?WWSYNCZ WSM4,kZ+^mXwCjl}|FfoLtc(w8 C'֣X) !_! hQ f<:^}uvW s,:?xr=%{dʠf+9Tk x09m/cuuG lsawڏqq=Xr?4pd`ݟ٩N֏H>R-a\%ʑ5o}A>) +ĶNOaځ,qdO%gAyʆ5nQAP uligT| %<&Eyev1`G,5PfTҬ7qUq[4v6kFD2Xa>GPʴSV#rj&V&ybS ۜ0* V|ցi,D'*X~0΄z`;?)g'hBv| {XʫB$!+Ќ$t^uB'1v+D%Gujg/nbp&B. Lh 02([ %;=/^"y! u$9K:Q-}9 u )w_aA/FF$*s5gu?Fg lBqpeTi>ҧoyPb0P7m!,(Zy+Lj~tC9y-:Ali\\ݯH5XR]ӓ6]c`uMH!zv7 Fӻ!\cD)9oyi3 qv6O8o$i"؜W! >,hZMIWY(C5uЙpA:hؿl"1CS2.x`3%c3Bv&FoFcJ&ΘFRP3O4&# ⑼T=-;Gc|F=N'hKҨb͔1EY:Rȟ3u:-j$w*# 7cgR%VAnҦx]|arښKw?h.dS;Ǫ6R,ϯ%R45>GrI,;ET8ruFon24DZX17ގTuy:WAfŃA)+rv[Ȳ_ݥKD;jF牂[(1>cpWXʽA {ܹU;$V`@l}P*Ĩv+" ͍ZGA|tlJ@q,J3durL&⻝є;~}=n>}]=s~ mMN{ 偎-K*+}dUQU7(/GBZ#Ĩ ~LG*Yiml/`;w`4marU~ `L1fc 7snx cq,h:se <%ÂJ j)2GƧ{h2甤m22idu"-xD2*< ׆ԞX`|jxȊ1` Es D6`=}Ak`Cy&Q(My +(΂pU 5C=Lq ?;/Hb`3Y1 qAtj+R̻ 8jՙNvHnƥ*> P?Mب8~q4-Q$d">RM+x\>^Iy3-/hH?BEW 0jyM@TGBJyjg5*6\u7L [wilxGYv_' Iفsr0vHM$eR@]ea3n,Zx]+^.q]W ?*'X\Мo N4;eM  r~)|~箺hR+TL=oK9d?wV6_Y" EF#c!Iif%) :g080OiSB0up%C³U#Q_o @˦lZ%"'A"AR>@v~/t$CآJ&H-d[~|9=+Hl !i(3IYa?uw[ S!S9RJN;xEhNS; Cu?6&ij[Tѐeg1E)0fMڵ)u'с:du~\Koa-j*PejPP#"&+o'&I!d `#W5̚0e;~.bWo'7~[љS~}Bbv6+5*X 9I9QC&m2='{AGp(sV5B{хxgiwUΣTǸ<2X\ATBI5DѨc[#:BtW`Vm*3>RSF%:cG.!+ $aT0q?߳j&kgm'&j#s}hQ<"?%CPz}j*Ծ$"<ti֦)n/\TݏxAz`<.70<=kAFe&ӷhn>3գӄK>DJ/MO_PlҚb͒tEޕ^J 98IR9`^q f9iL OP LnAhĞ7wS)$H:ˡA#7{*_u~55}~֜U߫k~stšhZ{&a|ky龂o$&u0.SHFVԯ.8[|kX~n)!K0|??M^l>$>t̺λ|tv zPl77+x|;H<f\}U(T{ƘzWeH$o: ȃ;@jV{z>!y!Xt #( ZWPʹtMFu8،.EY)C(UuJ;*kek;!vPaqAQum?=W'lG%1!lkDk况 ㌂%?3]Yo ѣzs氁 F C7oOъѓ&ؙ񐱌{| da&+p e(;)^a {^rx棽FR(%b{ KyK4XAP>W`4;OT7BM!EH.M-Ӏn ~K T{ANzb%=ʀŽvck:>24t>G5(.q|M|y"tgIF5@:0Dkɓc!{cMsr1;& jXˮ-(TZiA+nfqa,d1ǒ{2FcL2L CkCaC^5 :]C SAP-.!*V>>a_Hn7w"T2zXf}i&b4|@7e]tiol34 !cF=YL_.pHdu_6& +!U]A\6H/c8|W.w%Һ>GP&MFO:0c; 7j~qtS 1*=YëG/AG k0{SfƜl6rRjSAGe`Ŷ)>mkq+ӌBPR$s+=嘒4RvNAm>6:dHcnU)SZڌŹGT@:hWLɞL]P,@3\#r%`y4-M 0o+2&@k+[VJ'.~4\:<XKcE'?u [\|zt(A ld! *(N34JJ{Sal_Cٰ٬uH*BH](03RPi8hYU!;&c;%(Z*WE,w 4{DG@+\e]L81ֳ(lCN.FonhDTXd+VUICvk7 wG)y' ~< TW(qzAVFB, mʻokۧ^Jnz~~=hiWWM|#=*ʬ,Sh~v#e 9%nB '(}0U #;rƼ"zDyĒ'\Tuw$10{ES/ܚ#u+Kp5Z>?6Zɘ ?jGu1|F510{W˧M T )dy«|Gy)ENjCD5aX 4c"Ix?\58)WM^+?K*{^bMYMs]pc=/I{vQ&ѨSى!&L.(M=R[ ;SgVp}3^A e_!WgFIY]*C<+˭kS.E4 ڼ8dH9׆["$B~JQ`Z@-)X56d02I[z4`3px,(M8O13!xມ*5Dy>c֬c GSKAXE&yb_pnOxLpD>VUi/Fse0xh' ,? S'hU;Êcu E |k,_ɝƫZK\u .ڵ=F[}8x`>6p!|rF&׏HT`GO }ĉZX5b/Z_lfo -"+I=M~G|l~wM]D9k+%}sتP kś/ PxEDsH,eK+f+/gu}Y7q$}*:72{Lۚ/28ae6aQSSqn"U  KᶒX%Z ۳U `~YM-P n֫Y):}􄇃߭ \?,E'I^.J[-ݨK& ! LA*7OðS+0?_j`t*"veA^jm0hs=etAd֍,~@89ZO_|h3ocʠ$htA8y2:3κiZ<ϻiW_4=e!b>^b,eDy=AC33!:{(„]HWl߼!'U=g3Re%q7HBd#eX/ԙˆt(i -+i2< pEd!aoS h3/SO'CE &2zo klfNʮ+o()"E=9dΕl5r U1LܭhT+^QJiIn]$a;}%9w ev;zx'4K0cB%\kܵCNOwQʓ<gy@uGӹ~a o/y8Փ07hpڎ>E^"ACz'lr}_.X=(ggƓTCgDYڐ愑H%ExIyM%d@nִ@[R;y)1 A^Pqn&%fQQ:ZDȤ%i,E0CLSu0(&s|~?TÐH$ U~* NCvYN~rbS&]K{(q~m劐}'HVn;3YXSx߃;R 2zaXC:AIE.t\$aJŔ9ѮUJdR}u;ݳS S}C)kօ$<'W4nj"Uw o C8U}{NRʈZ+CW4z8]O;܏; q.C<,w'SvrzhM.E)JX|Eb5`k+M܃bb<@/2,'u%78 qW.*NRR*/%yV|&Z4T"Ob kc?[׈o9Q|Uul0pA%#qG0 ui8rVJv+-#>~935!$@uY *,}I/mhHf@:7iv_r.Sv$ڪ VovlPRtNʴ>:@k?K% b"q!]h *0)| ˮ IW H UI3DGcI/ǗcrOߝMH]6]n)IQ(쵣i5I L#w|>Nu'[gmYF 0Bk&dvBDsG>sو_3,'.ov4B^{yT񉭓QQ-Be9}-nO \\S䥺i]EhIoMsc˱`[Π;B 0w9jtoW߃@A%h <5;P1{_N3sgb[޶ߙЗy\4+yru14c*L' 9Ӟ3 q=*;^ԇĮY e[”#+EAfךx#26JC_L׬yiXYldWW_k·r6 NV7r^.jq"n[3GS::2sfBaU2lk㡫ݏXvPp )~c5壻؀*ͽҭ*F-$"2c}([':yNp ipdmom+ٚDQcϏsYf>3Z.}vv2Oʆx~ 3p*6꭪G빠6ߜOFb{FNf7@4GDqPa؍CL^uΜX1b.g9,,'| 15ԳDޣΕAPwӕA2ya̢ HXdIYr?16W^t vzj7_c؊S^4w!㼪1#z/'_oCOrL#FO~o1% z I[zcq6v]D 1g'E:0s6Ȱnu q'6ūUWJӆ^ƹw0]m6A/D7.Ⱥ|?הhd:JVHVh+j۹bdBAȿSk|e$E KnЪmWY A̽M/{?TR TJIY#<|0y_J{c\ʝW.zqBK;i] pcTY]9C)O[=;wS'Ep+O# ۱|gsKs9#/CIl/Jr4 Pj9} ~ 5l퇽()B"y?I(W^-r(G^XS?"7eL3ZVV.>j[)(g0ҡ#):~"BjWdünO`iG@v )bMÅR(f*a[ړR"<Jb m۩jtG e ~;_y-P"~uPp*fl;"]E?䴯̮BxAJ҂֊%~ feUŶ̧ =#stP.Px{Nv* qJ 7}-ٮ+Ű9^!3ݼS *Ȅ;F"1}ϒzGHE.G8QhqS "muԲ/BK/%Iƌ}j:I,rmZ|SڢD]#6=/[e,'O~lD-r_%nfLԳw!'g T\M!%icuo!~܆DTէ$:z k!+gqu!P<).#WwǷ>ɹsM2?K$?&c3 ^TCygGHd5EqK4ڡN'ꑘ` s<6ćЙRN2vvTAWOsu./IЂR;ѧ o1cX7C͒&X[S7)@1[ Sq#=0TeFa}`3.D/J@toc ,٥] 7ʹ [\ ΄"1fCWB{ cJNb:uuK+Nf{ IX'9 Q h7D1C#mLw!'Rű$#vTgSb96=8tKxLO;e#۫ m 4V7enABZIKen^ 0}gDž۫datG r"_R@umm0nt{jmJCʊւ[!Fmm+rA!\רYjrݹK\eV0rر>3 :[Ѫ$狊rGY: sj'49/c;rjR 6ەg-p+]J2`*ƫPlSMﲻ2]>-?R`X! sL;eV̺AMc<8{kgT+hgZ|Hm.q7EۂbOe΀f*[$N}N~EtW$. ϫ'a=,P#/90X5%N |y *QJ-b9EF{xs]R}eĶ&DP} iZ Țɥ3ed;>* Ri bӂ$.Q%Ғ+ ̅8㤤a?%#noxrqܓu@~Db7 '1UpT \W$zhZ=`uŷ'ܵpUUөYcpl-ྒ؏k d4]\Zy|&/tF]iKA .@Wo` ;]B>-\ D p'X-jTvdd=WL,YJ,Z-ٵYOO&~PBЌ*ٙ*X]w{~\v{o-?[PE]uh@ ̷VķDQfҕuH<\ @^p: 8}KO Az?*7Y_FoU撴%e0`Yʖnx<"Qă ?DAܿJW;8vAT>^-ly9(bۍޛ ^R~q C"7cmR.|L|SQx Q/{vէjkzVFW%FӅ{6k?NF޳tV%a}RKDꢨG}V7%d" gl/J09-ƻCǶ||؃mRL ׌J>NS0t'Ȼ |骆GGpiGEyOH<͈jڞڅ${,GA:uo~z#Ef7X󷻬-[} @Ӫ݂-`ulz)XuryRn̮Vi^G-C~\) ` 2gm-h]kA0ft[2Cm!BP$la޻^זYeT{t]RG}97:)io}!l^]a+aw w'Ά"!ڊH_;mL ;fٞt ..wRaD />@k[W81H2't9" Ws!^/vsv))}Å*q5$ }ds>>@t0i S@mкSXWAe9 2 ㍲SvZE#F3F&xDQr+DAb#pA7fQ*wj؃o#ƃ HRGb5p5rf2>_I̴' 4XG$0K*IY0~gM3֗YW8}*Qc7"=)>eO3SD,[ZR%/1рn |*q_ufʚm5PH) 3+tSx=l0)P9˄Ebk*MMeu9lzDx ׍AG鲁DH|F#ΊoTڜ?]#[Sxsve? `>Q_;irw5)aXm6=Q*+xf d9wJVO>~ꥯֹ-!#5kJUl ~~k~oÄ'|C)G&":) q5bH۶:ri(KbdR%J#ԑ9a}e+Aր KAi|9p܊PoVf6-N%o N;JfsEzPwMe@5;fTwߋg=,C)c"I3϶B & kh(F_A|>Yk!"S;#%zNx:oǨS7ap4+@a23PV:r#=)NC5VgW5QENS #IOs{x}4bHv.0#ytܻa^JoQP4fetN7ͯ(:^M[UR$PɭVn ^YW-VϡLZ3hۨ;=Uwv`D4*r"dknY)j%fQ`csF6 |TؓA[.n)*G"U_NEl,yult?Tঀ6x^Wbh`2 c#6>,q%B͞A:%M㦏:,R9tkYo}arY4D7a6Q wJdȆ'J»Ho}\̪F"PEVe7;c8pK~2i{{KB($Ô~7V9ss{P6 $lb>Ht0{aȜt}ínoVO4B>d, YʿuE҇QZ>.GpPAY^co47_KڢZ\ݽ Q{02{cT7ha>txB3F$ O lswgLPD㭱 ḩC9z"*^&[QArȻfW϶,uU{^)&feӎ.ѧ''3` GxCh`fڪAY,PEz~*uR>"2nJiД39z[u: Q]b}"Zf-+Wk;S r Ag^ڥ}EJ U+}^(ɡe?HV% Ϝo:0o9{8Ŋir;U}E2@ .ni %8B2O6w$s ϣ'~#X%s )49.@Y/A[Wj^EhlșJ jG#cL_*u/67V$ȧJ,o&I^}e'[Uk$`IR&0@՚LRv`#qBA< ٨KQ᮰UadEax̕="ˌH/(yF|y@]z X؉މ)ؿ݆׺,8r 8r\T)QR#qZ\LZ#4"o.IUk?m8!-όqGŵؚtyS5,xӣ=T*`(~AҸ#i^rBQD9^G87"15a\20Ab? <}SIDfN!L9ViynU [~GRWI4T]N%*6aORXccS!g>`[4V|aCusCM5Z@E*UV<󁇢w|jԃC{r["Jf=/Se bZ IuǢSqɌ@j<{&Qĺ)(`YB C쳑u9dS.pdb?qj iy7F{SFJ' @\<"?d V:fTqM#"R>oiO`*s?unuE3? @BڣۉIVڥ,2| ' rUoƋFt?,ܬcQk?;H݈OB71?Mk'ǁN7g }ӵhńU)Rw_% i?R=ᆳ,sT7jAS$m*oPX.KJ5+b'Vȁв+viHb7#^tq ,p9KɚlW5謯J˝d2"8u4~JGm(,0Kr`0oEїvl&DQɯdVwQFmX{N2Yf\dDeB͘rٱkOlQYH!e*>>e25RS&ldVz< Fߤ44@۩c> /$pGm`9|A+,&]_=(6[\0D s1\؛VJ^:AV|H nJ 5.ٹU1]kS$Ns姸Ip za/<`@ 3<4=]7Y{h]ɅZ={tXO"HK=V, ~Aσ?fwhLS'ɴ6=_XSZl#Y=G짨IsGj}g,nC}@ovޡưk (Q\"-ܣFLL1 j%C{vSflkU%[6M58 o%s!zgKWmۗˏC6fo9kT+gaJqIR w4%n1[/rT*XLbN d\qrVAđacdJK.%V PzX+lYao'9 LN& A`Du]k}H3xHSx$xqJ>#js&0= n~hMc֛LLaS [w<{ga8MjkYѷɊ⋪DW AJv J3,RB&?,p3pzGlU}>8!Oe'ģO RwW+hOacpSMG!bh)BxS}e{wTR(DB܋fI JY^ چ45KA(,(݂PU#0{g”00st|6`F)(hMfYD6$Bve:yֱ$!tiE6Y ~S[#_!_is%zQ?3,إVyBo[<9h[z5jp*Ju3Au "2.5+G#^PDwZM] "@:Ǔ /GI$dw1?{7 X*չ|bףV*eu)9U$4>Tz2eG7U΁;3$hO; }Ea]x)\2>netLJt=1 9X\lmdiŒ*~9f o;/^{Z|AWBDLh́S7aRTrtq]J$uDQ1cg7Bn8j?Ѝ@HeL ?(lB]aYCkY`ij cHU1_^ba<=vT:}]6wпju8N-ag7JG_Д׸ -s0Sඒu?~(EJf;P0]Y~hӟHefAˠ5=.T $51dǮzp̅=ogGB0h~1xO 5.%p?![#?Qon7vg!^RdjLPh6L"RM;BiWYE:i^]oRB_sMIDn- M֌-_Y1irZ&Xq%;Cˢ/T gF;8>~|3DwPvGBa:E=L,-})D `= lj,Zuf UuI~/U &Pmi [e=F~Vmɗ*bp?(H_Q8qµbU\5^.Ɂ<L]WY-Pq߬ qȹ) N l++1]'u&I$&-8uvۄ΁Mnz4K6r{g_6\"7&f_c$(9xhs8wA+֠BJv5XpS[:>Ћ=8XaNO(\sta'Bk1CA`ߗj!+q+ġO'`PÇR>_XfabL#Dm.3 )+UShCDPc\2Vf-9>Ϻ9 X9(75ZD7@W9FB8-eʒ=,¾4ޟ!<\Gp]_R<.JX{fe7H=DZvrBfM9/.QÖ|=y =Ȁ϶3o/){ ?yzZI }C_0/yvdp(C*+@LFtqu?#* uY/j/ d,SqpSțu % h3YCw 4Ǭ3"jjxIT\RR`4';P ~xZ"N`I)k#[^܌i3&6kl>jԑPW_9(.Gth?NPd+FF Bs_Y=9ֶZ!_O˿.I9ʴRwqQ+#ss"PZ˳aGV1zyp WQ Î%lj wFaJΌGd V*5j)+prxn4'S Z MMN@P,g7Z0ġզpc8XMbH }FX润)m%lBHC޹nj^{FB#o)JMK-]Spviw,$Tl}:) 6jq7DS EISհG-|팞hZ30ӯֆ/&yk-Ō~B,;1%̾MdިyƂ[H|\$iXd^y;N(# ߂:1"#* :f|[/ jee[x^Bi*ۀp8h/~5Ӓ4c/ã r `#IFgB I+P%1jMe5QzzZy.-Vc]'k2n~$jwKNF={Nu U`cˀ A!̤ChqqfN˩\ӐQ G;AnMmNk<{r#=ɶI[E{5y>g5I >=7j SoYŠc pdJJ֥2ꋗ'(`A-C+UUFCeHpL'|Mq]l"LFhM{/\FiE c rvӂN[ t\,(eDBBk/~uԜb΄@-g e܌%=֢1kW&#8j (L}}(2*qQKmr=@wJrW2 bb04Ԅ=QGsgۥO ثZo;Q;|^i\)Uh RzTqŬ/l^KM.q j¶YEŠ!zǪd&U::18jPdtx, gaC!(pb!mD' |Q`UrymVv7x׃DQ W@G~3B@qhĶê^7dRُ01h5W)'ywjFi? ?zX̡x-:k|L +f3'*S<rR.:}QE< o@2vyRCvh? Ge53HWBba:2EcAww% h^@7q1 :86ّ4+ۉ+x>2 =RLJ *LS,9Y{hׇ lZjvK:F3d ?fn].@ <XW"40a?k˓A[` Id=BðӚQm`/BoAQ-yՕ(%_q}[2q~tHqKg= g˱ꄣ$4PQ cG|WW|Q4Ad>H@,a<џD`R f @ )ڈBB$Fqe)%"=N ӠN=t:[Ԟ̺c!~؇$}X!*'c,EIc!F{X#2U9i9m@lI]C|ar#<`ڦ2[*sGJ.CKmHUBTxDғ~2Q t߂vK8qIUX7;PpCPt/L~FUgED}R)lSkOPLaЊ)?HL5)ypAoQ*B]t֕lK',"yCN؞Aع^@%9{CS^ FL ;Q;|J@: Rj:HK = NIdS=nt 4`"%w~O?.yVhs8IELjCw z>hp9H<\z;8 y;fB19ch0[Y:J }jjFy3ttûJQ),pFd(3yrՉ-nxKZA Iݧ\ (1H7i5ӥ ֺkeuer:@)XM!˪`=+ր qAl =d 5yny"8akl &Тs7Em0Iq846 3p5*TlUTWzWrt"R ?7 BzBI-&~-dZւC79R+Z 0s~#3oWA,*+z. @neQ +4௬ Wb7HsLn zvM.?bD:޿rdr,4iUI^īs#S6RM_ju,#)r@KwhѲ,|fX3l@qz!1mR!e{9F͈ʇ,KmY r{/~f IS%m~r/4Y@,Æm] %Vt ]sxJ4+txR"-Q)f+A,}lRRПC!沔sd.tCFA_b;=m$k_GJ)n\v"2*X#gzNB#WƊ#ӘA]EJښyq,bQ^8;U AGۦ h2p;k1~F\ ȗHjfv/!u>fsy6檹No+&VKah*κjz_a#fUyVe9EIv:Гq7Ix/Y=uOYꋪ05%E(efF ֧-WkWtP2>>,W2%^z?i+ uZgO,9Cy-"3 `FO~Sؤ);@tBc]=y Ϋ%u=EvXЅn6-U5#>-H UU2PjDO SdZ%,'we?OUo<uN*%7'Ri6:_FLB̀[<٭I,yOrQEgGMu5?ّ@$\zujHA<-B# l p?4Z0;0vD0[˅ Y1O>LȄqSu`Ϧ5H.WxC 3$.U\nyTJbC&Q%wigN֏HFed>*03^94Lb떂lBWIj|{ePA+U\Цc7yN6|-"[Jx*<]7m J%[?נ3zkn.dOzJ?A .و%Ls2ak>Hbc/ڌ |"\sKw;v׹h2JJ]ŸH c |B 7XTuuD㚉@JAU9|⨝mٹEZ/5ώ 7b R{ND&SK竸d1 סq sy[=gWRbHS'L־^*)n*?+}K;`VCF(oZ?0?+{ۄM۟>55En*i)-R ch7RLψ+̎Gfe[)V} )/{hCF 4yv _TQϬm1O W,%M8wp#;[NC =M^(KڝT<:;d4)~-IqjHC&ťiUhpSEvU)葈ˎ|]Ig}"#L!:~mE]_p Lَ3E; ;]=4Q=F#(3@yi&pDeƛM'ϺWB >n fZon?-,ȼEhx5!_D`j9 Hc#HT.|ݲ_ՄՇ _Ýq~/|=:oȘ)hqa-I˔:VSJyق-T'+.]2ϰP2VRPt_Jc9ONfJ%J>gJk̭R~q{?Z7 S+|#?-\2XyMG+=x*UrC<6%rΝxjQ1TYMFKY2FzzQ~Cwˍ3U7#N`_q Pr]zmJjz5~>*pqTQ"H!*rd xu²"%LR^-;*O_hS:9G+ሇ0&=B{j8m8U>ѫG7(M#Mp=j8eyK.:u`PcnU5@XIVlKI}f?./+e^&  ڤnec 85T'kjwksApc b,2~[n)3ʘ+JO 6' pۆ n7gm g|e}&LfmdBլKԺ#wFA=QX{<̠̕ZfY7 YCȸ*",w49gybPb5Y8z j_6fTʀKܑ=!%!yONMpWEX#Yz6bÿLT:OsAb38|!͕x@hfl|ȥQZ8CHy>28o]+"I=,ZX6 v Y}$\6҆-a|CnbA@Q!*ȉ ! ~,݁=;-F2hyrp/NgW μ䉫,|^pgJu"4ӔEm%8C13+smm%W=:dM)}ë @y'D T x*a8/E_xVkN]e4`>^w'_EY{P7gk7ӄ@eIRlYirN@*=| ~ ]t8<80{3?0Y[q/0c&DNa!h.* c8r%Js0mς5<5l݇0q2TIi Z#K9DpW#'90QBs K aο|u~iyp&f:-ѕ J2S7DVH$֚j@Nn9Փ3H ̶\hÓ&},heR4 ww&96;U? YE?^rSxI=H#@4Nө1&wH >g彖DfkqYnVc/N:[ֱo A>s^zݦӓvfl`W{0vfqW]փ'.e+69ؖ63lU@pyeKq[Ku܌+ g9y]Jt!ү;VD5v .#Eu#t<jݍEW"#F02( mPV=@D\B\~|%/)$'"̩b7"[D^$??(A\)K<6Bei}4]>6'dM95=䧪^% 1=::z@c0lb@q5ڄq9Y '!,|ZVUYR^}\:_idMܿ]2 S=ϡi Q?Ygo܅Sy.WSf-'.gEӢvD"}Fɨ߱ܺjs0ZpmکCH]npgz3\9MP{πZJ(cKwVlIgZ@duI*쯣T;rlr9 ss>V*q GP\] |n>{kU=0m*C6o0zIasy 1D~A6IkFXUBu/>Qg&lġD^rqPI796ՆdkD`TEVvW8=-432֬ Es.I 93M6Q]9QcJx5~ | : 2o:,syp$KrYUQ |Bcr/k+O$ 0Eq鮈=@@*fǼI`N6طtD.XoJaiTɠH8U")o8%b3)/۾ϟLm<|+ɤ6qULv¿GYב A#խI 8nU&M<ٚ'@p<8%+ ͧ­$JG:GJH8e(7tƃWnZۯrX_bhR-pfsFĂmh;# 2ihW4&dw1N U&GaA:/p Vs&y.͗r zc~qB8par9Z"m QZv4;Fo/@Ω LnA&5 Pc%!s+D0 \Pكҩ75F/bp&D ƞavHqݚzjΜѰH8V#uM<*!(lqdiت(چs©lp# (b%@U<%f Vrz ΁vsJʟ]NfcHK<.tL_.^dyŢé 6[c\Jd wqf Kg>(v<UŰ3Ѿۺ|{a iu9/Ӱ?VF$&6*]ny]ӸyDJ]Bu=2/Y#l139xGZ3k1̳Dqze]h $yp1[ g7Gsӕ!bk%-8cfI`r>B${~+^;EX?/X'EXY)adh=StY]1/'o8N* ֋/]Z7[2 !^K2ݭ\Q2)KcǼ? ѿ O (dg9q7N%=UD؃K4=&r(N1oa^l5nv6BJ<2*֋$~8JŋAbm!7nrK…z3McriAnuUL}Z`0-7Xd"!!︧g!oh]b,Cɣ^[4W0[C &ɧtƔSwOV4j\ox4,9:KDīn]ft 峻l/ $p]H2"F|z9M$]fe~ iU٨' !Ҫ!$5xڴb{|jG qڇˈiUi[rxE~7޳k:!F&g2+ i  DWAp.M1֊$lX#Qlp%@6 C"-Sap tJIh7njL1iImGu"&A=8e7 v:=|8L9 xE?x\Pǔޏ'j(cmyR3=56ڻ ۓ|yFwAky.ߠ5TVl݂^ڽ;Ӛ0_4@~xEE.<2I++хܸ& ?83s0!}] \/50KMzhWbQHʛ 2Me0[6Uьj|o9K}Ҝ*VT웠&xThieː@mL@|Ol+m# ɐÀb =m&}SKcqDdfm3MzzQ1~.͹96*ȡyGCTEWvLL*} pNsrʃhȞ(ae,BGtجH"j ;Z6[X̜ՎjVچHtO 4\y ڹ,[RT^%JZK`9h CUviVֱM웚4mM7ֽyB'c0!(XSe-|[K0Q-A.TX+n!׌!#HdnCc_ 4nyb.*ݟfKܺ҆SNYo-˞,w<$ hSl2M^Gӡ_J2HC0"8N7dg{6^i"^N1)Xg 7jd7c*㛭Lݱk<\4=yi/$aI{(̹wʱ=>JOgɨ!x~T]Old^AZOaTvjCbZց+탿 Z[*d٠SuGجaPcyJPI~(i`$A% %o\:8c|xG\!]T5A^C<]Jê E4ZimF-v%E5-fpL(jTK@ }1yvۈ Z:L$ [T8!,_1x:Z*3Hܝ ]?NLK.!sz@7pSe͔iT~ugJ[-g>CAu_P=2`p΋RUCDOG촍.t06ЮnV rxWE@ Stvl;-g$5m0^ax?c5%bD5 }E "<>Te3܎Mp8(W!/ 53"H+Zv:Ero [o͙cJ_Bggk<^f$)%ŌG!>I mVP}:s~4h<4`|Ӳ۰rw$K_Ӊ ~L=*:Paid_d}jV0W<"=, 4S/+ݷFY>fL-ryJ6kopR3go^H)J؅^alRGُX>dz|CnVX=ʟBȣ#V-3Uι~I*$8ϰkyc3$V|0V#)vCGxtL]ٝ8 TȐmzgmB  N V&툍fK:?9ͭ.M[ͤ$%= ~gwJ|5CNrɽ4OsPGݑżoAap/<̬j{*uoUV7f7Y&i/dpt)Ka˻xb-Hv4}ϐ4i#F=(;^gmA0d*iZ$eF&&I1AU[(3E7TEgt龖?Ɯy^Xu]VH\j!/'u"@ćQ&A\nmd2_|̈́.'Y:J*:QXn &6}OMۉ ùaoRjpr$sX*6ݝ ܜi?9ȑ"$+bXcp W$?To \In_ T|܍ kT>0kuY-RI@bJD=%c,~k:ׄ(MFCN쳖 3AxAe -UiHJsHOI``R5\4.ʏ1 =㭶H$Mt+GB.a,v$ o.q+i{22l㔾rO,<\[bĴw&r4SUs!X]V& bHtXqdZ+Fda=8q\3uEMz7 a}ՂvR/.Zό; ņs ]a5L$,m"C2(sC{9Spn9Կm@!X`ߔKKe&-$TEq:8^;+Mn'=H$_Gn-Kx$4tzocuy@[}6z@x/nkOxҭAJ@ Mf>4EL!6(nns`$'X3"0MlQ1v34Й8 +_RcO\§ l?ۃR+V8tU,;IBbF1PYU܄l1j HIR~`aGBٖ>0w_ '(rqaZ,GS0I,~u`.{a};CD $Cپ~Lka:\f ArxkXȁ|~ai1DQio8`~Xö.|ň@ݖLffuUH]NEP"j`U;!|G\ŀp|l,>`~ d "ITbUymS(rh<2 z`dGDd)NMe}NIvtNust?,8. qr'{Z>8\Ko&af{a1A0se YH ?wɁ}䳖HF |S*z-Vԫijv8I:o=p8 :+N:fn,!ܷ6;&{O8CsEi]PV7%=m7Wpzlyf%zRul-=}:qkR)OVu}pdv*%u+]t8%?x2A(󡝁NH1a/aan,r=QGn+nmNfh,Lo .'d uZ;;fі$DO[-zꍵC_ej.ubof˸ np dJ6ZZ_}gp7hl:w G^ q_r3yYsNÇqT8!MEm)DJoEb5P25M=[(r̓QP&Q1؉B~j_/#E Jc)ÕuF(ȅF sT hݭA 8KPqLSb+K|ˎVɽ.om>Il]-w5B+UrM0Y[i^ 5>:uJ3,gVp.jI;^b̥8,TT4r4)8uK)$v,+ \8"׀-G5|D⃇4V4ǟTBݓ* d# =s37SB񞫞IE G9"$A}sti8(m[n%[wmUTp_ e\c A̗*x7:OJV#Iߙ2@ e~jYj`U+:*>ݲ皓UK6&}놁N+94.]a^+fd9 ``/ۊՔGA4_%SCygO!@&dxv?jX,cE zU%L7؋QOD)/xpd~u\~T<~hW?庍)-E) ]] ĕ5Ŏ!{ FܭU=.7VJS4?́ MŹc$eHwdon-CxFaӬh?Yt7$Yڻ~$KOF{d>5BHɹZ }z &{`/2"۷D9TŔ)1&{2`.r2󱞁7*C&T3dEn^9in/k8!XN@OUP-d t~Ŀ*SĬd%n &_:]ʣb`':۪"ް$t|uNڄ/r;{bŪLeC(4F_ssX޾1S5,$J|jYK\@Ox'H?~<o+sNGT{J6He/&QQIX)*R➐</w, 1bZtAS"F =sZtTLG&g+_i Bx#YOH&,3M6=W[XX'0'P;tLUXƧ;&5UbqQ7~ZW }݆),f+9)}7\ lZ4wqgw:@%!MmN^~ygunQv-G^7Ὦ ϒWW|+-\(NFZNqN$Xi~z4bQId+0*{&gIfa:j54Adp2+7fż[EC' MO@Hډ}p['ۛ{2CfI@kBZQf?x wTFiUlSIxоA?dpvl4Xyn"k^fAŕn(1 7mIgjC;A/&v|A_4W6;kٹadWSmFv>Chaz/I8-7фpi{ S*B@@`ښPi:Hͬ^Ոs~EMDz\~=O$|j˽|Z+23zou* /G{Ùmt!E\+˶mq/¸iR9I2f ܿ'iCIC?bJ$`j6>rhtM-n1ۘĵ-ond<@\MVxyQG(/`o+8`WOg``[7aR]E'IxDsN7{X_l8'|1T=De.5T#rY ]_E~랯w*zWɸm6+CuGx&|ùV7ڎ[܂#;ڭrI i¿`8#ór",0Ǯ .ufW=ӴdplΥ.#t -o52O+ 78C?SL٬lNgZ9"5k '-]=tb: ]< *J5MŪ!b!߂d꧝p%NKU"a[܉!F9 ?LR`={$/#޽s}\du\EKp̵鉁5|BE(Hj \3&f}nrEQ(юOyG@f&闫h1k)OHʵi@[Smbx.Oԝ|)RyHލ 6nx]< ?!&tJL_74LԽNw± ? O,EzwИ 3mOK8ߦ=$5JE`.R]v 7sA06Ylg=.,/rmkb6ww"w+B?$n= o%]$ħ7{a ?->AWlgw(\1Զ͢܀d9uA!p )+VNAy,nw'R>.pNtBCH>Ǡd z.l|]N_J3U_͢ŔD7n-VH3w@%{/hS7jǻ1'A!+rJ*F]8hn :$MR~ ;g*牛 U2P7 J~O*] p:\W(-VڑS/euxYgV cvy4m`|i7,^x'9.eLD?X)\+ YߣmtvBWq *>."@h۲=D6 p 8m%REJ>MwuQX04f7|,%wB`"H{=W:BˌzKOƭSZ6S8"{@v .^f΅clow c6l\$'>b]w)[Gp*O㪰ջ.mͿ[ipUࣵh0֊)w)I q28_gSȠ=R2t@ K,Q$>G哙U`0Wb&P'"s)cQ2 U8pBg^0=7;V!B0%4&F&z@})QQ^{V\32X A6Lj_yWt'mi]]pqqwpNf1Q&QGͼuhTa4TmYZo'a~u(~lgjHlqB*hMR[Fk.'PiՂKSs^;4 unsLLMg<`_tư-}-x6H,i,}y=,=J_,(v@d,2 {JRW/PFŨ&*Yf=k—~l82ӿYm4_U8O^( zB{b!n7EˢOC,5Rp=-8hm !(7}e Hr\E TRᄂrefW3|Sv|lnLߤD\!`nyWDq:+^ 董zAQkJ.f+җA7TT> T1D1E*,aٚl&w~E-Ÿ $^r(_$rW0\6=1b{$z=;ş߰ +LЪ*%30ku4 ~Gf0dGx AX2gգ:9&6f }"]?:'MSd`qqME.k?j6?] $B07\DM'6^!=H*P\nJ Q9(mtZ"$mϢ(o92*hnjY:xFpBX:+mηclaY1>A3ig!.5oնW~BlIc5-->̞9ak(R} X O`#W1x>Wl3| ͟{}C\wd2ѩ/bKGA^Q Om g)q?G $*כ=Qt &/@; .(ww1MAukUG:{FH 4;T[ƀs#-'<~Z=`V odN!8(|vNԹTHZlVW`z:I ޭ3mb (n;jT {&$%Q>TC,Y<33CǞw(chVցaZ=A t1_wgo/˫6aQK|{,x^H"bW@}cp32U5Gą~FE^>97RC9܀l%e];v~?Q0@3!=ln") ʛ YdOOv(2!\rUi*J hS~#L{a'~k&jE7;p7>ZF0z1EA <:)P>t|kf"Ye.+l0O λ.6XGlDʾcT>ç6?5FM/zjѬ>NʌA{\M%@m]WtF,9uKRWp\,N\EܟG{yG_e`.}ϧ!bũT +xY :WFgAOe.Yj3r*ua2DտTF-Z cOkC$s*K,,%͓W^n.;k( f_WbR$5VӔL(Scɮ+Xnw:4υ} `዁3ۯfNZ r$ӶL#ٺǞlPך(>adG4OQfX0b .hB6{CU.xܕݫ^Ro>2jP6KU2)ƆX'=\ NoGЧ91wΚPw1"c)r–}0Dbs$;hv-}PxK 8? Ϭ酿h%-(GºtǒvB#ʯ3Ϊfbov [EXHtgA0JĊﭓ4 %*%:^0E23qg{|k%n>Y-)IEW+Z.72 pûD;8 WtR(5In<>~Hu?ȅ#&Ȑc?tDLviaGjqg4gTDU` *0ƺА%6:ckCY ioҢs];'XNϐfcT,>NP 1~m-uDbl7s,!)`|>61V&&*m _S5XψKmsyL?N% ''H ' )޼1?yO>1EJ(.Xƞ dwQ̎vD=F!í9(G'&wNa '+tM\9$ V/1!{#"RdWr3\n?5ȲjIYs})p-9 |儞r* ԟ^ۆre7G6IC'"R0Q2]ی +Uc l,xV9G_k k@ۼ-C`ą~ywi < 8g3q~~iv9 v;Q10􁺛"GMh #Z/߷Np՚z8HΕ$L*&tO )nyͻ2γt$Lz]԰NdgI63Kζ;т߂K޼bf"}Az*391RrM|ӌEr8A::YP{+;@#}Mu BM3ɖyniGH3dI:1qe}4FVUⲏ:^wLk)|Mҿ!SkN(4fb":Np$f6=MUP9w>hn^ӔܕSV~n AE{z&^NEJ$aAҽ!w^JB Teή ޑ}4]zaR-q&%v+)f'ecR.w|g~(ݭ}㍦F9IHn-C tbki D?0_=/t2'$r3r^Vh U;z-B.'>&l[t#[E[XwRk2x> J{_͉D 1~2aOu*j1~t]n.miLj}Ií zerŌio:HS|B)_DAq1$ߐjGO7P>44hC٩re_p{ OSB]rG%!:7$u+ `+:`}E= CJƬR6*m)X`fZҾȁ)^MRZ*&f:~f+v3F8ҋ*u fũk ghYP!=ZLTEr4"WV1vkBn!W|`f-W״/Ů1{GJRkx~g%;r> -_pf|PYejDO>v]dgbmyc# .֢ݔ걗vcmJ# wJ_M-:O2 ,̋e(#~p09C*on$Iia`ϴR} tKg&(:r׿=u*WsЀ5|y)QZ]lFfg%Qa5B?0KjP/ey/VO됼'RYZXoɍPCSJ 9'%.nV,i|S'N4'v&S4s*WÁy)sQDDq0oڮ1K3|+1$J6[3KgxgOevAu_Ϣ!X;95f]o568*ۺEsZqʶ͢^޼i ˾4z ¨S?Ǖ&^S%h/QfIfB pfcG|ݨ;!KD22"M۴.n=0tet>2jc;j;Tm`T޾Fʭ!駺{"yf3EU=ޞd{W6@:& Ji=1e_$ Հ`Uf.Y32?V/nzBT6*“'v0z [dѕ\"TJ-Ð/KlZܟRѭ 2.Z!Z|J1 Gh=}Ԫ} 9#m}P}Tfbv8 - zLJZLDs|n|욪K}Z-Kao q94|F'orJ*ڕ-M_+jE:W0Tg-LWaseKL)Q6+b 63\c7ZVs5+U7 E0/NS(udz H}HxyiAs_[B\Q)ivum߿VD ,[^v/})vNU1jgqaNe,w3P!ox%|2u7G Ix9 J.y^VUǀxKشP{SoLu\ h1ܹƞdfrYf҇w/L%-j"d`ErRC%2kHcZ Ȅ4`UiJL%6`~NUH#/>F88*Iy1ٹ.]|C%ǎTnP+o61ى 1Cth|ߞĝ?O֠+<Lї$}rCD$Z27 iͦvҨ,WT*Px󖚧r}U;}g:ԔN1#8@d^Y7a#:{9%3|!E:0rՉЙ19AcFDPSI[[#KlniINox(횉l2k]+Dm_Ē22bRADv  rT|:Z#FK#Mҝ 8hp1Rؽ LI   } !* F`^{U(MaBD^]5u|ǹ~$L,u=,S>Ls73Q&agX,X5pUY|5mTϝe(,Zsz'#op:g2z)e5Jh{tˏub' oi=܉E_,Ȑ>JfO=]v[Kֆs r}<}Ff _eTzaf@eNC帴T N@2AvVpwU; zN隮%GK6LW~N]e_h0EzYM0<*b2Ou9kƮ*R>JBxk›f ƸUx!1\.`YNF]"EJDzNqxLvʗ@ecS%o#ad9bf X+B=jf)5udd]w!&O)ts>ъfrX@^s/ؓń)^G\zarNv9W6N{b(Xw%=S%I=&kQ,Mӌs.|#7PBW6mXfdk]L2WUq@Lz@S]O"Bȅ7iĘzU (2D%RvՎP/= 6KYQ5AND P=YFkư9+`i[-8`+%1Ӡ)B^ۓJ)]ne iiw"'3%$l;hb,2¤4;o"h[j߿ن꛸D~~f_> 5 ۸Kk;@Q8Q3Zt4k74<$J/+K8cѹ`v<se1Iu;D:v6MdwDifl{uY%OG oI^Ps:AWE# Wl7tD×!/ PuTѰӊw B/ġ;5OP?>$ LA{&AByRB 3KMR=S( zJ6=H67S#>@]RP^""zPaW55HS7Ɩfg"Oz+U Htv:5_ ͅ";R0!z,{ٕ2Y")Nkd:#S SW"^*of[#₣O71GpK4n.w@td5;/nɆ-Qe^GrMfP ا^&S6KT*^ZK`L`.`cc EK<1dKFm$\pD[nRzW V @>*[ f f(EKX57m-A]l;_y\ `lreB}WGBgasJ^|q~2VpC>ĵD1^x;pvƿ^a Fi]ݺ}k+΅lP94Ҕ&wRCMexی $5*qM1?%~z8N>.< \v1#a䓮۬:%Ou R 6tL:[$cwa<ؤ█7v\$~.~UeUV>lMw=G_Sul̎bS8<{/cH%wLc(%Tjd%UVئR@`ggЗdU<Y:FWQ&PD$-wشo!me\qM(+c$Lgzʨa`S3|-5c@saV|…Dg(@fx@ "Yd[D'a!v%( )5q=qwmEE߉dysǟ *gM!Y# H`@Z9;H3j5r|MiSȝHv L}JoHq3ڔNHQHZj--r]^U/JLS"鰛78ƎB龲ZOTN|FgȤ|sMp}-x&Nxk9=CrAEcʔtVVcb&qut VKt1:Y*y>&Љ v(\GPrX>{J ة ?`.AvDr\;6q,DOE^vhyZ Ev яq0T7?d栬} Drl53=#5X^M4YhL<^\lzT= P}=H( E/uPJܾmU15{NAbg<9Gk86Rbs3p9ݻ*bnv3qę¬ZCz5ty^p/48lxdQܮ ئ]*YU 6R#!5Q/(@Hno32aRR;E+iҭ)^!|6dݑGK Sp՚Eўațmoz{h(e)ּ.5*nz`ΕtLy]A0#oKkf#uZc2}ܛ--TQcq&]ys/A[QUyCK}\nGQE|?գ;s%FgiV ַ/RAoe{\}]^A2&37 i5F;h W4D.( _ɍJP]u)K=r 0cjMnrK LŰwzho\6DF|_;AKc\^JMHR r׶)]Sq#]Ydɇ͙ݿWJ j^F MGzT=QCB?~%>5W*85zݑ9ZjbZvm>E&S9S7G~&$VjE6$fzWx.%B{2L(@JG[[ Ajv(?Q:X[L̵tgB-udB79#8s\?|X7XG‰ᙰR|*Al?эA R I40-Rff7}o `DO7ߺB6?<g}]@<7?썛חBo|[YKԇ>MXX 6ڏxtծ|bCb` *hٓ"s]=T xMmעyꇴUL9U}@5ڵ?4B (Җ9!;T5URo2*g& /YoJ7vX{O[NiXf& K%S(yRn-^:1څ4KV(iVIs, {X^凮$jmU~4R4"_HUh$@zeެ=C“(_Jᰩ> ')x+Ƈ2KN:44fxQt44ڍɂb ܨIoNhܣRɽReFx<^=|}cDJ 3#b-qGi:F$ߪfmU/p~*@I%5/!Ć[&cۆ IH􎍕=Z@? yc@K;)If3HObjAu$-ц+X:49Z!rk:)Y-MϜr!;c_S[oDzOnAGmqoL+=LU(L85 74S P_ks:.mQ璓b؞j uܭ_74 ɶyѾ5<H 6l.il,m<u#a橙k hI!(@[L߰zN 6f^YwE1}y\HB#(%ov!*8w.9V>6/+:-uwi ':znܯ 9D+ҽU2M˖T+/GL;K5- g^]jѐB3P+w. R֫_kb O I%~J5*]IP5xg?0:\W]- c_7YV;om:)8,7@}ntyysVg*oAK3N%-6[>|= oS:Oy$'n&ΒבuF'M~H(s':U $ lýҢ_O4&01[ɿƺJm]rPh)yNx]y7"햔{ B.lj'铘f>g@KͼaO` 'U^ނ*:62dCd9%lBPʩi&~DtP{V60~[΁xE9@!95G߷ATW*QON9b9<kT-oATOƓN#TQlΉQPПA@8I,y|1z4&?|Jߌx.ފwa=Θ/V(-uWO[&>EWDm}l鄩fh,ߤ;b3Ng47ȚJ1>l;C>z"1ckoI^[Yfy9=yJ 7Yy<gRQ!#mdjymsI y-OV!8g 8b/pf}Ubt:CQn蜰D!Vvx:ud@d]`e6? i;` 9Apdh iCfkzcc12,,|q=R4_A>~slcKL #Z%Q?R[nXaVϡM/|Xf[]dXspqڤU^Ofsar//ϧ#Nsm ^?*wEQAp~ ܢ:^jZ1?/)Mo=b8⍎wr@Jv^L ̷1B;ɢ*aRPJ}"قGa >2;A3R*/޵2?FgQ`$ ȫD43I P_ ȡO/Z,0ixOb\u 1nh@B<5$d4~';,̥K3@/hfʢieF+~HzO*]d4Bk~q,=,DbX,Om`;McGmG8piGsouߒ.Dռ04Nw@,X"5CJMˡ X5|'bv;zy/zYȏ4R&A4 +F g h #p01ti#- t9wq|h5Y-J%%gCxt (h=l,M1mb2YYquB;E$V?ir/:J+Q7gONI" 5m?XidȳifIf=)ʱqN5ӯ+Ɗi 0x#@ޜRi4inYCSz-)wy$ 5/n%.'?1,g~F(HV} nK&68sv GG.gduT^K+7Nr_c`r.@o c/M\z Qdo7|qОޑ<hj 3`labk *M~p5GG/8\KHR2V~1ԗÝl.@ጝGvm\%&`7uK_@քH .ڋeMq.+"G BܢH kE=T i8}"c叧3,ͯt%y%2/.2Єx5c,ޠ$\>qkLڸ>j!DpeSTfNn?i-~w}]'{ڃvi{-לvo;x@,LLOqP w^C$#Cp8ɥAǥ/݋/m `+d5^y@wgO{Z>-\j[Ҏ>_B`~b0:愉U33*=SpV Wz(Ko`tشBZ_'_NJX52 ;cZd ^rk]BlFf0B{ڥ"uڒ])6EMMClV-wKh5`,˃Ô0$gV`Q99]4w4G\|V>aqƹraM|Pnc,[dHZ,SW;-nȖݬ" yip^ATajy-=JGLk_]B;71p`PqpQՇ%J$gw`dZ]9fZ88Ho9 '? Z~7 ~H4z%W^Ec;Lf)^sFI˾r3(3w9jN9_kghxd Ek yG4 m+:+{Q(^ɼ H{t_ \Q&ـ waP|xb4pVYXZȔx O^}+ o풺Ѽ SrG[nex_$koJwƹH;(@k||tO4XtFVtpB5R(f-ئ&^2P&r8Sj(. +}]"oQ+8M'=2R!O57vP'(7Ғy{FCӴ,p!ޏ.~w&fU7 g>q=7i?. F1owN sD-كlhsF^A刍cvs8ky}0CbOe񔩅Gte+9G3Pu~b@x+Wabh2uvK''8} 58Xߡ *]ɑi\Zwe k[gm} r7oXOQ{CS#&*C^s̲zNn-~LK8K26i0ܛKEg;>cbO/:( 2_l۽XON(fu%,Ôm',Ӗm A,eP,9 Dn71Ϛ@l!yYWNo_t/"t&NwogEg J޺bO'!njsZXVBe=ņ3mED50RE@gmϽ]u)SP 1Y0ѯLe<7iFo\23)pށz3͑>ŠdǗLf2!ɗ0QIh[@ǚOu#w65G@rI=c3K$wg' ˏra`:Z%MTPNi!O~`(YD_5v6B |˼[dΠ,,}+.QIM(DkؔzZJLlO//ۈ.! ^I>$b>" N2"P:c~>yZ$E`ޮֹPz4ۮ?Hp; V [m}?ܖx;Z|Ξu?GGKG{ &e>!bl&gFH.l,aHFo(T}Kr ytJpχǒaXH#ypC|dc3UgWU12%|," d-4G@V<9K47y\s|}~$4-SS_ T|ɒe"KoI)*)#D}&i;y =n+Cg#xFGbqKx'm&,0꟫ E%-0UU#Ie ۨ0Qy#ց lԉِ~=SR0m[.YF@= J.r3禽0_Op}@9u"Ȏ/~w+QuhO+V?DXZv7lvlh, |&l:?v5[+G$I_8vYGfYkc씓 Co); +4)c%rDnCm4c*=CM\r79"*1mՊ*nUw0~~XDM$ml+v)-; AӪ ՜D1SV ܳ=[CSI&Խ2 %΢u(g ǐ A4u@5]m@(J4ef( >jѸ]>(%Y_c gAk6M$6 de噯Cg fQD 8hm_e׀`‡O#Ct23nV%fĈI 4XUP;A tBWéG- !oN}aq sd^;a.3E7O:!<7x?.dRtĕV^R%L.m0H3l`N4׵00ةn :k]i낡J0Z+R#FF?ݲrk0(G/("YCcM\.n6&8ge`E`oC*o]*[qɗhǓoc^ 0Bj[d-X!h8"!ҹ54ein~#\|T$ xϚ'[ä/$L ~>"c:g4>%E-L tXNW5[/a {F3u4 λ l&x=ri?wj8]mh8n&78& ˶ f=~{>jޔ$MY?H6Zk03Vnég[B#zZxU+Kaڪ= a6!՛ӲYI|wmg]_"3u(N35g)F~<߬έ So=J+wJ i;O5ejZ0e]kUF]`e1Gp:jFBN=sT\ɨrH3'|m#{Έߎ5X⭉oqLt88o !:B.Wѯ`K&>`[NDH^_i5x^s?%3ۍ$hץQM7 s^Am~;Q/z}`Rps˓K'e >XL)+0-tn9ƂGkVs+qJ#pMMz"\( ֩>mhL HAܗ  u~&h.|Kױ*f BfC?wIV-mRX؝xX >+3jZ*]Dwx+ݦ[ exmxs *,DMe z1K!h^?.pgk{NY-+,)~Ὕ{5=Z=q`!,Mܻ 3iXNBU"q_ 㫦/(Y!(CgRz+'=j%8CMAĴq&gm+C'Ώ[ Xt32o߻/DQXgv׊}lKQT-PX^jn$eᇊWDLTI ôp-)jY!Uʏb'7 [Ăpx#I6F^ |9Im[sn.,GkՃo?3p[̟2Է#TqeV eYO\On!۵pAom(Fz@q:}JAU=9Wsמ>$mp ")LH{m`6[tmVV0ˇ!h vHIpNX,*i?BLy(|XvYtmP?W#AOsUzG݋0Thʈ>edAVCPS Z:NK6&N,?Nā]pn.2`e'hh?FgOZIev'1Yڡ:Ǜ5t 1ܞ p35=ik6: rKLhA֝H\-p.@ԃ5yKBC.P?y}LJ#˙ӍXSHsreU}حiu0sm S?n߻Z &ê#)p06U0T_qc)+3n Y}v;sGk NnS23͘!_nbek]vEgTl JcK2#qwna/S\+ GBM7o㴆4Nd=ȺpD厐rGen>aũ{e#BMzW\ 'q}PcRӻqAxfXPt,޽l'M|Wy%kҏJxkV/8a@Td]8O&Xقt<טo wq ޘSL榵}QPs6IloːW[;R8 Q67(W)ڢX:MFgDs5C$FCC,! #B 鲾maqܖ`1kЊ-1.*q5rHa„0!„@",0N?e)r{$,,Zmn1U}..8ڵ{8|]K,<>R2-+>TK[zmU7/4"cPNlgQDRJ@JhS/HCJ'v6>Qݡhs~؎SYwWrkN_( jG*ڽ)8he¶dYZ?p2A,^ fF E/~ gH=Eˤ@hd|I{n[ءb*:n]Ogk_>seV;g\O9q=x V@VFh"hhU9v9HШدj,fD޲z g85c#hmZ[q+c.a^TPAy9:vqsY/9̠HH,VU"=t'b@W'ɪEMŞI;=,?k` `.Dᄐ\K{&BvIYeaXZ#wU~ǁ,Հddt/RN)+/g{0~oS5Pqg[PTtqt[x^yiU|"͆uB%ք;Cл 7Q_޲1OE-H]ms9po1n KX^0r|4bT0ł-&8_&HeV蝱l,{U3h\A͍__8 hÁe`m:[V9u h4Oںbt's(a]B  ] 7{cJ^dƲٜCg˟1nHS bcm o:IC=tө%-=/&s5O7w:cSg 6?\+bÎ +Ԃz]s@egmFeaTux3T`=4|AB%qbfXF$X:f45pUYO4'9Ji8^%R,ڣx6K/C] =i@d^,)3b;mO 00yƈKє=$= κ%ԚMM: } ilb:HY(pFSV,8 -ƷM zCB'\xFq5 ^h&)%rx;WU+Zj7_ u"QFS|IpڽiǞ4nϫv-jaA2M$KgLfpLWS#]tB?W RcUPV8*h֭&+6.Xc~Dlo6+:;n™[m`[v%dA &N5؍s -vC!/ tm#o>S ?4E bs϶bF~ш9Rn,ܽ0}`E>imb۵AkqNwT,e+7KwA# r:~/[wfA0CՋ ?l a[*Z&[T;0л%z!~l 3]1h2t [lKASQ_.OKD肭~ 4ͩW7Ho$9~;zM- 7_\pQd _AqYH`6/$Tb1A鏠Dng%4K?͒_rC 智( ;t7x8z5z=A~_Y'U'EP|"ԡ2 o&le[!K2 ӆN`Gg]kd O̯!7<+䲌PnguDDl~rZZ)#uǷ8WTԟ/ً0-;+ߜս͇ dYn1ߝ'r^ʱ7,Z얅^`@LoMl>:(Tù1KC ℼ ?66g<+ j ֛pJ$'m ESSM-r'oLjW?)MuiF2&\aR"zCAoπQ*{HįCWp>L#Zs }py'4,be)`.*ʉ- " }x3Kg\楆srxNf9tG<³{AV /+:= MA]t1+;mMX=4ԸyCݦr/vCj ae';I%LӡSlL[l%թ&<ԚQhj1|\qɧ W1![g܏}TYrx.:`U6fz:Rmv_2Xix3|.|˂xbSp[bj OgXH4wop`z|ұ2ne../k`E![GbɉB;z,Ѣ郀o~U5,:1j!ki66'C;U Ξ@-kE4I`L!D8G D&8v̾(FF.jSʃas z?5y||lϾ&R5 a bb?ιx uK6hSx4cenS>s RT+ ׿]uE潳|n7Ff"MCg>"|5?}Jm%MQ9LxegLNt 'lX0tj@&&1x ]Qp])M!kH6&2AWIo9-muLl e꯫%c p~1"{ Sa\_ .8w93Bz7iE[|v 2seq-E,aۮ+^Dz* ~xZle|A3…)uvOVpy\OGz#:ZZƈHR)'Q̉@ qЄi%!gMR5]`m$Pr5Rڑsy󼬃g`y@IP à4BB@c4,ګT_o C# KuJ#Yn5cS ]H)UE7J>!ӵ'QyW0m[cF轝F#ʉ-qNÓ|8 !F{L& 1.:c!r;#ZoQ ȍ7Rݦ1JOwAeb+>KݿBI5o[%5DD3}Nb~rT3Jk#(qrGuՊU>t9<뒺D.@(fϰsERb,/e> !ۓ3ZRz͌7F=cqcQc Jb;qr b Y:L*Ik48dZ|;Zك9 kRy5/GN1䟜?&#C_Cb'^t%"^΅0]tM4GSݡFQםx[cNSڇ>-Jc-E-y. d~mwIX:QQ7baS?(jΆm^^ +$3aވ#|@6 +E3zy4böo9ThYTlQ|asFo$Efn[u>ڦWR}=@aCz~`zfPښxAB'~wuz<ބ [Ax5Aeok_#R iesuőT=ه TGv9o;I@O9e/N!y)2!ʾٻ&^mXJP uw0WP!8o=#q;LLmc 1F$U,_O7 !f^\3@ "'Lx1h$H[xy6AiZ(p 5ni5'Yas2ui1I2wp]#{^ӉL* A=j/$eCO*D̿MwB) l}#X%og~Oe:=ec'*vbB{zgڔ̖X%#e.1x;&rv<@?8%EX4*< s-#;#"BFcu6a7&R; 'ӪyAbMinvzW; 85S!*2oa}Q?B>.:&߳mɴNMj'o# @:Ї@S%ح|KQ$C?T`y>6F??9+M$RLc?NĚ׈7PXg):220)K@1 Q9@C+xXUӴ ;>D4ϱՠF'%xVy9y߼qu1MsBR-INߣ|S( ױOlV@pD_L_9_QO1uk;I*\Q #<1$`eL:Ax)jE?sq"|fYZ XH<*ZSuSԛU;ψjO ݎ#+4Ke]مT"(B7Ŧr8w.gִI?!L cn)& -)>Q 2қ6,(5YX9Fֵ}Eّ.'vXqm-x\{DfG;#qE-]zBX@e oMSkZ11"f EIHxEB-t)d|_ٝ[^P#؝ff|sjM4")-ZT?lcr\'D`hd/?gE8qB' %6cB"bs.h%8/\RFW;q'܂9azd31yz W CXz&Y^rݢmӹs\BOSʭbwM X@cq6s]zajd";4g]\}O|GoB,8|O&kjNLW(ƑFa-:Q'3)v3@HDmf" YQ>R'91+Q^ 58J1d9KP|Z)WgXx/ܙ=4-MA1jQS2=E}NYL^L6}6m.˫Q8sSjR9KqDj4y!ߩ`i^^9EfĠ]< Rk']U`̦-;g-q^gKt͋ЌEsyz{dGqvwݶ"넜ML x B*uT4t)wcDcbƟlzȵdhV>y\'"rc57/E[LwO~Z. 3 -Q ^nUJFl͘Z&cK\de&&7TKfƪC9%q_m ?g+~M)b`aN #٨'>bUj$2d R]Lam|$Wrs'w. 9@ƜN=F{kXۢ zT <+aʫFй${HIVcd j na4~'IhBC^W!wY) 8N,_i~SZwNL"@Ğ^u[tB4ΰMKwP-mg\1m4+E#ys0(/P7M'f4F\H+m-T촢mh0(GtYJ & ܶ܎%'ayTMdAXE]:& 9>g)fr$&Hz5}1П5!y?y )7ܜ,WKVrRSp־rpJѓN%A%Ъ7˻&ek_  +NT&LqEc/VF^NXI8X@e؅"E4%V/3efIs7OtGͿ/ܱ X'dQ*"'M2}g1)U` aBٶoeRcS5/z&߹̄@n&] 5\,xBA7`o¡w1 Qnj,L = u/HUA.n_&R!'yVDbO#1 lBn-j n0ܾG#FCBJNRkIJ9C&'Ƥ X;8YpAνs)jbsUcUݔ#o,=q׊3 vS{YT#N0Ovȡ>җ.={$j'LIWh'/N$"ܚ@^Q^%kqV cf_bԽsN~Lvc@8wo`lMuiiU-PZ~( V6"`Arv7.WVh4yMaT3I4P7ϱ`|,bY70!ܶkn>a! ZĘdVǣj( T`z , G&{I >j3C`/viڮusG/w&봿?]A%{WP&Yx}ޣa]"ZvƲ~ >g?\OBR,%V >2ƙa.Yq:j<;,A@ (reQ~e ,-aXkyӐRFTX)٪!WkDY<:'p2ƛHmrZ7"aU5cԛ!8+Pc]ĮyPJ0$f?ZBrTj.2t pįSjI BA+uf*-%+p.jdE^ C3!"1lg`vS;`j01x3 ϳٟ:vhJ"k[82͞zV@JGnYgYC<-yP[jcx꛳)!cR@ˍ,v4,s%_ɤ0zJ$=LU&7c;I Y-z`Y稭 !4 9YGӤX31imR}lo^ is[UNG谸$&(Ӈ6$gJ)[uC1pՠb^>ݘixHOwmw_`3[DR+e a %Ѓiщ(JVQ%f]辤SXˆ;JHSr}o:!E]M ׭y {]0dEӾCk5-@齦:sC@'.+rUL:(xXso[愹xNrb7xp ,i!Oz?7Z%9ɞ7iĖevFԛS,F ֵ.d!_d{Uڋvw~/.pd-C [WF,[S=21N~:`$qëvj!z ( av 7Þx@gj k1LhҼ,bp@svhڃW!.<=][pBAܾ5bI} - '~BeC$aK]lܟ?$'V'c:0)e FL34|`O?"vz{[{Gv)D(u1Rj`՟z@#a}pIJx2% Hu~Y!iOeʸ wfL }X{mo68ؙV>Ol39 ەM9%EJlte%@7lekXE375E Adg]lTΖg7nY} P(DVx[s9?/UAM?^] n&ȋ"5) 1g9ps[h%ZU:s^\*o0_fkWb{LڹP5 "Ivu uZo]w)@Nc;x5q.tE7|p6Fh\< ∁G(l8*rޠ4:Iucc>< 0̔]/L m㿀)sJ)8V!k K%APQ?ΣUT_'X>ȿiѣȰ &r5NZ1L]HNX7ah@zVw~,Ru_Q\_i{?;bZom2,N X"٩S,Vƫ_ sU$D&B.KUWHH K$WJW,ހt4hdAy= Xу k H0xXix8:h-m#00c5ѽxgqLRҁaL3Icj]5O4dXL12{` 'giŚ纮!ʶlP}GTeG: 5(m<}UzvOV>xH|RLO^6Ҩ,&[11_XꖚnkZnP${aۮ.އ1%yerUIOL+Z;^Q=R7Jy3^^7&CxP:QqCpqYցBH`-_.nI _y[`HԔ,a1KԸ&2dC͜a5UĈ1{cZ{)xEb\^5^/E;|LG+p~fuPJK'=av7&xR,&ZYv{H롵zܔ 懄:RhWzW$;I,FPR6Z ŶRtgt,2F/ՠv! TY=ĘaU-<)xq環3?y'*O= CµB3"l~Yu홱ߍX ,*}dWmLA A5qP-RSLO~,|>wsDt%YŀͬN|Lx kM|9TZ4ʃbOnUY/AlًP{H]S4ȓu>QN}m _+1v|/UHj:DluL]dxlS-Ӂ)U2h%Ut~v I O[2PFj[?`eGV䕓kB&< ; Xl5ka )_KT Xķ MKM@N^$m@֜RQXYT  *vp?N@i>r@O bȞϖeu/ rC;?> ;/+—۔}1:|] (YnUnB]?4>,L c~!ڍOZh@rݽ$u*Ӷ;(Dxri~W,GNyq]nӟP P ]B{ٝ>[w#w(OXr޻hJK//hmiїD z;4MPg vT JzzPl=xd:P#T jTIض k~^>/]),(CtdGN(9vcin%M&x.` %M*~^KeUEq3Hai~2x2y/y9ѰuU*tg#>W;y` X2V m>aB@Xp[X3hD K]8G jIPp5Ti/ο\L˺ Prs[)`@Yъt󭿊M.ݕP /)39|$a#kbQH̜x ÌCp"81h7+GLt{n^k5L0(/y 9uFlA)32AkD 2[g{\ML|6vKǢ*g&Ĵp};3MUS/r)]Kka0:Mҧg׏Yh]f`kM;'Q+3]3G9ULw s|Zm+ў Gu+{םS' @~vI 8&K*]E@Hﲂ3rV[Oq EςY (mn~V8Iʲ'YLH;ΘWԢ$FTuwZ#QhlKٞǿW_zڴ׿I٧qM翂;מϔ>IވG?rkbhQ n׬MWI쎂SCF[ߜ*s"06rx(1G CmoS!/OJ6t)Tzy4G?C!d\$7_֣V|5 eOq@:wk/˕MN?:ⲟBQfئ]ࡇOde~W1xTΒU x,6ӑuTbop)VZh;)i(&pN SDWÂu* P8n7>L~ F%U4Ekt9:%hK4Sq__B`3l4--Z[:bQ~Z-t*әD"6>crw~[;A-x7]Yo͖"eXC&V `Rxd ˨Dm*8-y όA#Xu_@BGsC]@ouO˜85<"(bϰ@b G~T dQM*A pcS{ <&j ֐c44q 2zjf"A~ Soxeq`?^4;VBVO`hX*wA\w$Vo %RH3*N{`w(:}KWo@zdv;*Th:4}2}b:vcӨteہCQtYPyנCtg&Q>aVΑcC )c]ؚBM6 ׿Y`ɲ^\PJBGl=li.SfD1=P{PN*"8[ۻ#婕+Jj,F⑇* %/jqو^`J:-']3CR%sٝXxxidve0y^hN OAkDw ~C9;Li Z-.UlB(Ɍ.?[>[/)Iu+7:nBVa{@`ʬ"ұϥնÌ+R$aų&`t=ƻ !ό_c A;jE*UrVZ3*` z3U^%_'F;imi!9!{u:\Mxy]:~{e#B;?6aqd_ UPHAϕ[+5\Bme ٫ᵝ ;QcIk \ ;4LPM }i!< HsN!%bN2uMφa x)u~7|+b*쓯UgL/CQX23G}I싱D{vK#cF02}SPk؃52 4QX>Į;@g$y@#fkx'RnpSKk xvw%[ _[Zl7{V)9jzƒZU- o :rv?z F0=\g%7W=dtk(Չ,*V/ˀB"YX@jm|M"X(,A+"^n%+#Q.9-D*{r{50LgCFʜ1@۪ؓF w4t/J#[zyWPW5BySÊxOpL\:L-*0nq$tvXf?vCoπ i?sVNs@7o_GlC%IZGf:wmGOz \ 14J30q2#Nۄp8YH&2X*"%S@EfiݭmÔG ȟ9l8, z>}:уhΪdޑq$f?F.QҧuPVM?Zu.YN?I M 8mIڑ"OzcLO)BLZl@/ǁeAu31ϓаü 0VMk %,H:k[-f|f1SJrLH[[gye]eTw1.f|Y: ŸuRCsL΀aQ U_4 ֡o6!_"-K[>l6 O<JXǼ!7bDXjks4d'쮬`'$)GpK, ..tIȢP 3K?a )AJdG -0_J|}J1H xfiȼ:̤hIG2/b¹11t68R7?CF_@GF8yd-Gg:; 4-CXvM8M걿/(mtx? ;IzDȰln>>+JK:XrkN-C=OpdZ7 9ɫ@b`{?|i}w<+cvp;Kis"?vGZ O+i,cđZ)kObQL{\&Zf?f͒.>ဧ[Qj~{XUY udgB&367ļ[NSW4fe B{(8%n= Ofby}g3% 0m@v -YpIyыB].4&Z3Gyls4u? KE-{;6=3l^V&@*@RRh"lZ:>Л^K0M:DR/AuU=)4e~jRא6:gBG+Qz{4I;{oӆ]x:2O4/VY1RB@xU[3̉~Qe}Hӳ00S,Cqo9Hxs ֨HMt%8 i~\ˎb)>PsI]{ʘ;w,"&1VWj4OzWISl\V)r;`>]q8 Ok STZj*3]IJ{ OpL}mY"j s x48Aa&] 'l'* \YZŅ%3E[6p2*s$hܥ }g/.*ãMpZޤfZiq+"M"s%Ơ!' LO)}G,424,ge{6k".@7\OV(7z W~7`W P"zC/˱ǿ,`]_W:dS.)&8İG  |t9:6T}SI"nXd~]^Bk8H.FDzh̎THi~[~Wdy\@b^VF9jn%-ž/֮hS Q  4;J+]9sƸ}qLeSdttkb~I]Htl5EڨŽOEDiG&0bMMƩ$Ηʖ~G~"m{gвI[K;)qyDigc$}&+>T%M'TZƘ=GN]:c2QGD Zb߳ ElU?*o+xhA\1EۯQ +sK!/yC[gz ;1JT0QqvDcmBlE)ƒ. [ޚC}fc!u̾ѻlCZ[FNAةs>T`?V;7 P~cn x1s@܇z]F\bFvBMGDSJ,a rlT$*}rz8rk~ b\5[ε. 4(? q`Qj{:Zt0R+?%8#fI JD ͪMpz'TKN[7r|nsEuq-Y1E4[Il5Mju4aLjNsV"mDrIU+j_u7S!ݖ"k@rBR q3yR}D˝[RRe Y j. 0zHoX7O!E80ՙFnYFɆ0SPf.!aQ%\{v\!@LR-q5p„NOwJ q(ăWa* eASEB~qU 5C v%tHInϖ.OvaV@VYc[bO?h'A/qX$Ϊ2Ԁ&]1^K[-RዓqK "o$؈_g<*:o:x7t1ȋS~$dO'm*{U7 {(t&jG}' Ionh,Or\ok7J*%c~/AZO.uC?ay ,0_ 0#maa׿ǘC՜1<RlGĭP<6il}ͯhC~) T ,^VuK >*whHIn1W(v0T5Q^`F2% @k[H. ѮnwoT x[b^:1s۰96v2@ydaxy׼("qP?/aoam`&5] :C2ykgTtNsUׄpgXKG7/ƪaNB؆z|m.*$5ÁsZR];o1g|L럛m?t/2oCWe'TnTZZU猿C~̙I$8Ѽ=B=7#&,Oʥ?ҧ6f7D`AVZA^D]}W',`3<|@'zc~׽xH,V${:Qz^6}B! W38M8A#zvѬۖ߷w—!)" vG83~ttgMVHʨLBF)0@W.M^_4uEmX5 sᒿQ(e#^Nvf*U:/$15ṀRZ?]hrOwqwR6tk! ?zF(~`VR,w$ CyQ~U?NRIVH74 ${-vf\`wvq=_2.K2xj*ېϒSgzFW=@K`sP Cn]kRFzNYE7*$NP=X?{d }lj͍`2O2MLЋ4wބ&#^bp M!_QD ]dT'N^t,0e| % pqljOWa~֮`iYBϧ7-j筦 (6}vxn){pD梀ns*#&_6%M';$=&g[hFZ<"Oj1~:"zJ5*rnM0Ra9\Z5-|O@He\J_4c6hLI,Xlɛb/Z)X}LӓD9ۯ0xc'Țg/@ %1&ؑ;+yp.OY)΋:E FMk2jG;6{ uE~˕uM6JG簦 ;V^5nt%JٖA<`'A9{vL,yv: sJ1^BSPj`py{,tU_] iq]O )>k3(9^):r{ :#ʻsGk%;TUc,c꣢U-McIa l޲oW!NXF/5(;LR8ۉ8ov Z:$l>5V/kU\EsZ/Rt Ac~޼k1C?7DN##@Lǀoxi?8VFDۜ'R+JI,^kNBϞ=s:x͝$q8w$ Q,TQlpk5$-&t9zHƈ>ќ4WS|$-)zд1 thnrC#U_RrgVUF ^캵H E L"m^Q&0 7>ҝTnEXs MIӴUӅuII/''fKu9M JR]"WЀ$+]FnNQ'3a8MroGu8`wKY&>&&L^ j{d4]wq_<>ƿc2 $Z:& `b{C»Fuw+ LjO~ W{Ib@.olWp.uHȼm64Y:ihrVl95/%sƂWC̠nbԂX<_%1%ęPTx4o%$AbL3Ťsy%i 6ITB w="s6B(ɓ d>q򔀚cCn ڵ3r$AsjFycBWƞ~Xt *DG ܍4vQE퐳zFzpmTФV{!ǖa1uk @]n$cR{6Qg jzu \;wP!Ha#!R oXɔP=nϭYu\֙fQu554R|+ccّ+ n]3 @86։f8Wy-CYEZfrc¡=+(4}8k9Mp@OY45mjS͓u' LbIķﳀ6=ܑv3C%eҿ$L|(3KܨDGKVfpnA\B|ʓ(oDOnpϠAH1+e#X uÂ^OǶSs4'@K\ (s<Dž襼E\4rUu1 7V 0t$qZ>%60f !>CKtOIkW7.IDHtuL e<_b_3L3})&p#r422l}U9ۍb40 N}1WTF\$hҋρՄ)#Gh}Mu|d7x$5 BQGv|^ud7pu{Pç  z_L4H0T?_8 usӱ>dpZo0!.R9VR@,'ˎr"q(򄳡fv5 ? rs<226dٛ4 ,,xS涋XPAy5ƴCWADi~ }k JڞB'ٙmߟ%T|!=KIz= by:,ϜitRt/DQK8m;|)>“iRr pOI]FߧՁ#:3 [Hǐ íڠɑ][%$YsƜ5YC۷؎ĐŴ1qi`( V.6z5/IԖv_&S E[&/:p/N/@qk)bv>󙢃2戙bO4~c^Hh@$=3~VY:wbV{eri„oavpQdeQ -¶P}xTbH._ K| Q/º+!{b^&X W, fW(=1179TC-K~ =*Sdݡ@}p:BUذ\)%C9~; p7oGE}s忨c-lW"n:#?d1G;Lu߳!'?5~@Zqnn=Yz}7Tb "Fm`5Yřˏȅ `C9ه+lilW72Bqa]_V!Y^67\&ne'O8}p B q s~,׀.eH?Ֆ}Ϫk3{aG 3$?'MqHڭe}f#pdzՊSr)q0fӥ%'sٱzl!R04.5uШ 驩vu$<&/R ( 0 !BW{({jxTCIƁslM_7 ny$&|*`6y$u8*ū;f4oC:kq6lwWS`+MikD/C`yz dVבV^#i=/FFBXtZRdw yo=Kvn0aβ[N6oȻԠkL贯P|[).}0XZ@ۛ.t>,/Ω,ԩ- q#pƦ]W$<.԰TqnmgI )]#yjt{e~HEʿ9,'sV LMK3G; \M/TK9c7}#!qu$gg(3u MgNsxUsPt߹5^`j F6nx6Z堾*k,w'-|y`ň% E2}ics~/hT |Ár(B:F7-[T!n?KjalxV@-Msܳm'M9rm,frI+~Jrf/9p`ڬ;A"b98zoZZ{&.(¤9}ԘƠeky\%r:ez+,>֫ϷJ>9HJ3-Ó>Uv;cpC0(mUth $L%>j)/iZQ g]FvQفz֌qvvf|bmByQ$2*#v0 X|,ks" ڒF-޿h֐HE.뙪O16uD/7^m|eKxoE"C)g\*i5$߭0~'g5]]BKߍ c* ·g< uT/@Zl<1©Lnk*m#ܔؿ|CAmvQ,aXRN:C?2ki<8G5P 0FJ_S8-0.}Cn5MK0m7Z,ZA/xN[UJivg+_Kid Pއm8SU>S3.Up ]@O1nښ>fhTX/x?? mR eLYDKWOjIl`tQ<2_;p#sfp V4=fQ\82[4ZHĢ(eG ŹIu9:G|#C\3 e8BOiXak R.(e[z#0vnw7y&|~\}=%6yO /Tԅ;=e@X7k٫$~FZC zZEx(ACdR/9xjVBSV?)z|"i3%Ko(])4SF{kx,5lxquNJo;۽$`mٵp,<NIIKa`s6|Wa_McbHٌM4NIZx螌Iopx[ݸ 57(7/m`Ejg.p.ltf79oW嵱 ,T=SK=+S ˤBX Bg>mnHUuO~s@+s`w\B |ya$}^TTUI_* 6IxG :y˾jRJ%oI@ FVvmg"5Qfͣ!yt':,W_sJd1 P |Ru-Ԯov`S0J0cySd2 Kl.XcCg2p,7aFRǛT,XYJC*w9Ҕ3p_عlZtQAyteܖrIMj&* -y"K}@I+nV]QZnV<ӡq1" csx7l3$Rtgtu_A{FPWPY'(&Y]Gڸtx3%tZyȸCOjQ~q%%QCh`pXŋT䀄84w* ȊcA{ 9z_MCu2g#Wps;:VkJSYdT@d⥘9jY B)y e |]Ra+-9;?vi\^r% Fw z8[战r?t$$$ 8V&ByzNt.`"bGq s؊ZxR5ͻ''*];.d10BGqx?`JAE3m^%O\ ~yY]M8`DM>/uv- 'NhڨD@ы 'H(9U(4GJrso<(,C :OֽN”Ϟ"?MS2e\sn[^V3 ph\TBHhXϕul {M6ӆA42hOr}M+Wvݽg,ŻU?E(Y VU/օٜ"=gq=vպ|[uNV+#RC=+B)dʹԄJ$Ŭxuk8ufbU^i, ^HuxOqxr_dDzj ƃ`&Zi;҄*{751_u@E3ldz=EnIN"VZ`v/ߑ$}rm?P왺-Ùi~M", ޹|B0 En!ʰ ~X6WFuW5^<6(^W{dxa1ȣkzRsg#"5%8TgKșawWѺ(TT?[Ai7LI|yMMy'ù6͍盳۝bLשxr"}]־y&#=LTgtIc:iXg<k_&e{Sz}4ū,$1oҀ;n..YNhz% wB(5^1[ډ͛"QNCxj3_D+9}a D4}12tq'J ܙ{A&!9)k~Lo}oNJhxgKTjZ-3,8?m㾤~*[s3I19j']]bKYyo&-|uw|{]=i T@|Q/vZ"};zg. U5"Wz|zqu`,s}3Ucyhp<=ЃLNw V1'(}{}1ZP^_hX#`CCDL,s'O7cx2~Ѱr .(=+ lG_ɥ5Fg5U@kgAUK%5ف Ž>֨yKs_ߐ8iϵ#8_X_V W(QfT*:u@1\rEڶc(]cS$.}_[Lfr+>=3>)z,8ӛ*sawgbJV*aͻ}\XE JVwMs;. Z vS;ulj>0h^Nf@5NzrbO aPWpk_WZ~m b 6s,iO{{bcb-٨wwvPI"y3.Rѭdn

Cġ]҃{FN[񅛤2&<|X=ϰ_$ k0Vʭk{~^\msSP`Yza2JڍW#yhq[~+ٰ8 KM6o5[:KZHURԁ/?\ETN&{u8)qCG-H}q@7eve}"՚ M0 }+r Ic?w[^K$|]"4j\Y,P‹G~%BݸB 驀DvAָmQDڥ]Z8 h DausWD?#())1`zXTwEe树e„ l,XLsxFX,쉷 fӝ2`;фpۜR5Q6w19Ga[zpu&j-{V3-Jxv5ېے#՗kRJYrl x/4{S=E? gleh3i :ScؽUypPhH5,h/*\i@uLqI/#2qlK/oE-^P fZW֫ /mx=ot!~>_4#P/@ja.*^Kc-+I֍,ظ\W-yrU k&oX<{S JG7Әuq^Z&@RxvcQCF{,@^zXqsIpv feqH|j## pi*+[f;'IPDuf[;l{݇AU++}'q HAe{IvR6_Mc#-SY&d|`-f`B"QNi( 48@ Y /nenQhU y'rQC/-صj*Vs!Ol8HRQG#AjKi| ':$տ"ϱcrtCp?ȷJ&z[ۖluٶȂPGȈ.1>XcΗ.h"C< !Iw6_f fHY;;X##SERcChS:PH$>- TA$c󄢉Yp0o36AZ1"6āeB >xW`7QT A-uJDOalur>oz0YHoտ : lm,89&J߳ ,ܭS!yK:bOqrwtej"̬s 8$먾*ߚA)Vn:?r-g<+$DfSU{e~e/=L2VަY1iߴC7yziЄ~kU#>fP9; 8~^+7^AuuU}zp)_P^q; ػOew%ʹ[U|AsFD gMOJ'ouQ$`ܱJf=,RFٍHx2|."©د5$6dP^]k-M?`2ME{#5ܥB}(83*hV.p^IC1;a|Hϫ;QKz=D!Cn[-}u"!"ƒ~2;סN<[&_ح}kOXuSw!DI@)]Ìq)BeVA8+?X Y =O-Zk|]Ң:.G\UU!H`ABllˡ;ɈVpI=X,_=zZ0I9MЋ43wIDSԓDXn=$8<U O Zg؂zo^LH̡YEܡHFV2q]3"?CMJcQ*:y=3I]%%Z BJ/G' hFGu36:y洹uP*$hJ΋ZVrN%+Ix~!#Xlz |1QIjZZ'sT[YAmJL̃ԘɎ T?NKq ?dc:L ,|i榈Q6[{X6Rc91X".0޻9-j~j'ϕ lV[2 ^BjcUIO5F^þP1QLj%* >XMptn'X|t&Yegkwa5(T|4i";PZ\&1Eqy!@$dioVu9\FEcsgḫLήs,a=nV]fp & ثyDQ|#S#cLyD~kR4!f2J_!! g}eϚюړs*{A#=S~І7jgEEV2`Pu'M/gv~OagY@iu[+V cAh_%hKx τ=8~H@",FBᓞAdB1_Scܫ7Nt VΟs)FwScsA?;Ju38l@QL}h+Ֆ>QFx]+{s,]7iL}7'XlGH>ݿrSn +gTE SaJnd9 v|VwB Cat&`epG!bBjvW/1oϗ$k!6䱈x aΡ m=CrJ%@tZ/k27ǫ2dL rK3ع>Ύv]Q[XH=V߃3.^oe5pE@ =tB>$ o~h 2e$5 c2.]z3?ܭ&W%. R_d/*ڑ(o͓Z^2O 0_728I.|p;Wgѩ*۸vg(3Yc'i,~77Y28ޏ7Kң0OFp Rj0 m^J˖Pχ*>9pʑ ҿKƕZ騿ЬÌ}M_;sQ,pWeZno% F\~;P $=}˸^͑_ԊBU47[gT%L9 7Ã>{(J2o ^{?U.{ډ>^RYx!|Scʟ V=I7NZ#P$'bW?ES 6Jt;G Dϴnߙ 0+|z_` N_$Q7i'i;1ڗI)pV<'o)W_6 /o$y([_.D N a`^Za޾ (}qX.'˩~܉RhX7U@jvy -ߛ`o, s&ts`;5VzyMƒFTWYaeb/&;#ٌi#82R@1q~uN1[M֠bYڒFj"ڑ!]KS]&xWmjޓ̲w G S]q3]`2މeT!9)Nc?.:uGm;RDkRcH>zn 1w S.-+U~4 H|?5Cdo…Gi^ß_5lńDףn; í#y?;6pmSo"lϪa [ LQ|H 0c,td!z"n0bj58y؜ZocG|)c.Y,pWIߵkCӴ#ח :~TC΢ߌ_~iL dF%j#r}96TXx-B7`Zr[B8t(i3>J Lysﻡ=K݊ؽ?ؓ|H鬵P3ruc8@PBaƒ@I}쁷M3Ay9ĤꅲmDM\.i-N;{4:󟏌7㔗k;#rN *"@y+`9[E\A3hky]_&-0\#P&C@1Ld'H?jh ;@PKhuӡS&fS9䆂;7EeA'K79?LXMHGN!^\6?!$ݿӠ);W`2ٸ]_%=Zrat"5s"TN8y0pATv&:x奰'G|ByC%Ps= /b+5/кkSKǰ'z/JTIodHZnxլTuVF ϹmKTec?zAZX:a\$ف3w}jxn2 AtiT@osZ $XJ$jNɐԷLTeLXob:Q=!D$B:i \'?[cpc B$:)5a4nؚھ< +>B``Xйm1R( a9*y[e;ɯy/2bYbYhF% 1[- $Fpزnia]cJ]`XN6L8,[ʼnb8 b>X죹2ѓݕ6p6F/ h݂ <3Z-J-Yy܆XW5kjx3_ЍV $T>s&+*^z&A=O\p 0h -'oOeԾ-)`hl&Єem @u\`xtKlqU =ZaR[m*Mn[׺Hou8+TwM.ɭ>%bD4Iz;+!*m 3AxUٴaAm?E; rmom BDuuh֗Dl8͂@#r=8:욒+ujULYū Y 17#H-diҎ\ |Xi{rB^ 4:L"˰OWΤ*>- WBl˄ Eħ' zaU] GvbAX)S|Y;^ *Hݓ'oJf/Z=SanZ=6*i9vYIr*Aw2nl0j鐎3<˅Z;o N4J/FfI5r0rȆHHyՉEʈ }b,҇1I߻|>-zb3mG=َY}^{sKdw7M];hܥ Gy_Q >QtYʾR$>oMo.Iעlŷb |=׿ _ҊOyُ=}leß@45bP00L~8g Cjbn(Lt.E$vr0=/ :=ye{iwo?YX/kzn<4cku)Vw<[nTi$0ZR׌*n^Fj [խC4#h.k$Qi5?z&蟙~ ́,u{܅ᒂ -C'o:gfȐS8}Xd'we#M/Ջ2.X0 S"ԓ8(E4j?ۂM\zvcf̿jڷM3wvCU-sjSBS|!bL6?'FG ko5>]YvNcxΑYXހx*JA97qF\GRi-`mG{G -f*U@IK uIصz#F^YO8U+ϗ16êʋI0̀[y,N4p3JU-sP mu1 e5yj{c^'}۱[ZxJ.SdzeKezOj3=gYQ>^cAh7Pt4IDުx8[ZX*yޫlUmjmnKkQ$G]g4O+d._;eJ\ nnh /}gl_VWcL&"@p<\;d}m%][I! XlیEZ_C3Hk;ql PG d0ۍfX\[s*GH2MQ#(fT)ARqut//ܞn-G D]I!u;ʓo\1CoNNN@||>_DTݼ7Rot j ]Cړ{{V& TsI E(z`>"˴szo{@G:˫LcՎO$nIZ LMmv̾( }N s$7=J ٚ~ˉI%2Bߊב$Cp$#ڈ?^k݇U L.}Za {"Vn͘>jIal ruO2ܗ2ʆ9XA/^Wbџr_aIY7)M}^듢Pl t Ep]f0@7I78tyqfԌڂ+i"'^I7U8jsPlT+,+(nZ`[~ԣ0;Trzfj2]ZG" fuWhu pSV1|ݿe TlbB"oIjye/jKZOlk93`'Nq"ԟ)OƻbL13^Kn]~2dy($n@ ٷxݼVZ5+s{`kȒG,m:➁r9d57Vu-bHR8vn;?ʍ>3S?}8O$9۝P/fe181;OhCgФo~V5+u3&~}7,jDZ,)(՚y@X$>M.kqؔ&BN~;=jNL?sd݀5 bpWkh&S0J(P wZ%??U;#-m*y Q?T:7郿N'[RCc& +Əy+]'Er4jUVcv{ E${-}U(EIVL@<ꏌ Y%r[>^Yuu uwjԽ,{3`, ly)B VƼԪu0B{ȅZZe&F0isۛ/K`ꎚ ,~W͏X6)џgbŸkȇD !atk8ז"sNKmc\}}$ESZ.gޗKƩbgOѕ*y- Zz]JMQhQ+>fL1+jnN:abNDǹe*{4nC7 XN1w#g9 L,5#;.C#D&%1/Y5ǔMknہt0єhK䌕Ss>\g]w:Bt+_hxaf:|ni cdž⛇ni1}(e0+YtC-rDw/bV` -oqjqZ 5INIpxrKɝQjь_]ϗ=,zz @)Lmjk]>j J4Bf& aÎ@ teYZyk SBg6|ڔvhlqe|-nmKLTx- \F%g?Hd ZreY7cz.5$rJiv kAuE+1ϧܫ@h-]F_"?t)X6UPl$?.}(ǙW,8kcRّI;Y"y#%\3_R#`n[R3-O܄ B,w ZOPbDJL+L夶e!#~h:v'@@v+Ozoh?A]ݔi>}_@SJ­mP)2`5i2)Zl"Uy 7:ͩ|5*CۻwMizB/ͨ? @ߖF~E / 8ғA)+}}㗆=45G%||iaNKb#6*D[ 3HSagUN;^m}-/Pa 2X3K@xy$ЋFh1sHiŁH~:ع."KJ4yϋםG }H 9Zi G0.?Q:Ba-pTLb8A^o y:N>FH^ϊivᔳ#|,&~3Ru8DTZNY}[]*cH%ơ_L4ݥ vH Na7q21ƾ&{-\(pawNs6ALŦzQe9#`%. 체ydZ62I˳"Z)yLLERY|w.`3}--A(mSrFРZv:P2)a[c# /A>m43?]^X 5u hX([hHӎ*>~΄qѱ6Im,Fn@3}v&P`Ș a'FAR<9+atSOuG`xP&2ĤN7}X֪7n_hb. )p, %(5 `VS)r&kZ[O2p@9q\P~@i{Sb$O{W ;[lڢ¥+aA7~x9쩔o0ldMY:1"1YoxJH8DTNv3D18/~3AcJ"_x; &%NQ>B^hB40Y q¿VE)bhBR2Ս4#V>r: J6:kֈkI_ˤSl+PT._v=_-g8*yzy2Qo-PI59t'}XzcůaW=uOjl>ffY'3xD@F y)H@@b{i]C)LSk/ *J fj腩nnviE ,*34{ ] D|C! ^VU" t\Jd;_ 1Hgq:-Q`p翙D@ }{a'cZ`G4̤[e]Eh@BgxODx^XZ"xjْ~Sn~+u$NSǯ"L |ATr=wԉk-GL:M1#ySP9)̝V L"NP?KL16D< "H#.2)lȐ@NV;*>X׫ՁѢ(U$D1ȑ *~C6_ɥ a%f;-]<ݹ=T%-/Y :ߣ0ԑwi m΁HśQl3QZ.Ʈ&ڬ`kꀾ`e8.ZT1Z k}TOˢNe B@:zA6)™ T⮰So)o%f)FsT߱[{ʥHnJŴysc'̺ ˫PSQQ^} 6oscm_}v~b{]Rԕ&%O3w e5q#:rQ>NTV,%wkͰ( gvŪL'ަ^AB  ,(~K1yC) %P9O{"YdŒ¤e lִ B$\2Lhwu?V/`7$Eؕ3} ^j$MBju;=h!ب_SF:fu,FNz^MڟcJ$0W7#v5DYZQ$JlQc ^ҏ} ۴nG \:+pn( kf$nvyf"6zb]TQx6qȶ08rP0r˜-%mGL]VlBlKJRAs01兲ډe;sVoPSy(<"࣠vٴ/eӢ{iX /`r>?m40м5ZV,#(C T&ɅXСC%^ͿΌėsw:E#;_tAdaJذT[+/cK048{Y*BzVY Lenc)}^2A^#pu+2"T '0̯nQ؀}Ŋm~e S9o Sk?rq H.T`Hua 4X]}H7-OA6]Y3հ qOYo:lnhBarw"f|3,j;؋Dn(#5PBRA Uժ᪅V?bgceG4 PE>h AnevpM`mc[ͦRu(ֆJ#M z*gґxtŒ#O=-,X7]36!j0>xR XX^_B的\rRMәtV^E VJ7d9ݗjnר"KθBϖCw-,̻OL5@?]3rZ˚lF3QVj.ub~TvCM: =nr«+< ̪CrDή&Jb2p0@ Hf"jcE+R&+mP^S*M9p|VGf;%/PFҗ8k}\3&FP,fZ& +?vP `mB4꽇ptBs?ja;B-aU[l1*yT6b#xܑ*o]l,Ϭku^2`cr(@M FV ^};%>WW0mc'ײ%oUX{r[s<ؑ8QF:S[[ y~2ztC#=xXp:${##`"Ef1tqf5 ?Y9_J[/i SU؜${'mJ0i9* ׂTsDC( أz6ZzurT0>ooz&lim@W7Y1hȾђeK۔+<Ծّ$ JޫDS1<(S1nլJcA/%~ت/a_8fg&#^@ 5.pTܸa%A8vƸC?S3_5H9$Mw)nuo{p遂t\`?d29<"ˣd _?Ec)NĴ:|6!p/S"丫Va>!"ig C2p?[cC;\CME0BVHӾ!3|d-`p@|5+$'I/xȺx"'‚\674Ok CG jbx0Nz3MK`RaR|"77C֩ktmPoOH(MOӖt;z&qzcMlgmb }0yBV-lY)p!37RfmǠ% x}f vʌ*ӑ.r58(HV|ciuUT)ޮ\_GrQļ VzU-i- 50jr_6k"p#BK c>324ӊ8%4z sI;k+ftV"z*̂ښ?{lw `\"z/ tOxJVФlUe3δMɏ威D/BCwH0@z`MQI,'(G|;E;d2N[ UL6&8o^F|m#, 슞taPB>WW?28s"S;u,jrQBb 4q_7~Uȵ22\]ybtءh Ais՛ d7p=eH2atGD˚D u=5=B^hGSrͦcBfゔV0̓y*0lt0(%z6w*74bq`'"jK=䲚URL3>6L egSct_).I5wLZb}hH^[iu4E7~p5F9MV cwa!',h3u/ZT!91}[RG1ڞ_slI9|.=ߏif-A̛5pٌzoS Y {$埉؋öqҩڨ_xKq4BEhiȴ8^bP[uFË(> z bq`bff_Rׂ[@ +Jv\{|qL#).|z}9ݟ3Hf4sakVb =θu1>nNuRtڸ^D|6k!j@(+-;'\!gO:L!֨ޕ@ L*t,.J?{S }>"-'x!5X&WL4y $? 9xA=Ia?h'|bO5qiƘѓ%}W借B;W n$VeyGq2qiP!8ƾb(),(n#bCC }Gwg?&ãqY@Ӥ$-!C' v3uX>u8ݩd5[f9D0VcB ;2cqov߉Swb^񔘨 %_-t "BE\k:uN>¶5CK8HbE=;0w{}n8!!=(,s^$` #CgT\q5ZklWr 뺪l|b҄hm*ĩ쎟W^tYL!N2:kKutp+bf8Z WDB2Nv(c u0 R.d؈Zߢ݄RҐn\508 (&߭:A R\nQla_u05DJ1#Hcj΀/Osu3SpFHr3'lyOz/ wvV3eq>Ϣ_S':HO=2 $IxR*Ãß󭍆)Ժֻ@=8:#WOL?)DB 98~Gs]ZzAPN$hku M8`4vDqW /.cyӗJTA;DxI]k:Z˜tL1JFŤ5ь};ҵ7 SgEGf.HwFT_h2xjt[9zD Tݛ\FPR6 BfjAlhg*߭.o 8W.^gdsa ݥ_M'yJWƄi^(3V)-DwϭU)&/ܚ.čX8Jh!4{xK<[`=RGpsOYtj&r4^""\31_\Bg}@f:Uv]K]\ Y'OλjDm@~.l~zQب).(ȃP}pn&= N"PїƊSlHQ9/.W$.݉^Gol&ߡA,<` B>M[%Qbv0IsJ`Yr5L}LChk)wYIq]`l<_A=4ʛذ@ qک&ӃOeQ9&'wF!1~|E tڃ| ;#J)_(nZOxtrZ9b?nh)0C+t!SGnNex-rJ cTzN+i׈xT٭xu t\O!XT,h9{qHD`3D~|9IֆF[D]EyL72!d r2zoo< y:_꾹_ ( ▶'286 ኑ0G<(OA]w``q,7B_g0 9pyfpS@$,d(i-u\JoPЇ m,1h!!Qp V ̶W$O!=û1H+&vM;+"#(ɵ^ K_f4_Ҁܣa>f ʹ=CSx*Fn }dx R12ׄvp]BK%"OК u|LpԞ_u7Af( q$?*ʤZ_cg7Ig "nMBuT*-:nױ?'pͬ; Chc{[&9O QiL(\.+R7­쿡gak>46rJ$xur-zB>]Hm1\Q 1 \tW@@͠iΝ YUjEoh w*p`G4yRz5{(Z̓7MD$KW^KD6y2]CZ9W6Hx45͆{6Nd= ?$ r}KǦ'9+JF-~K<47𩸖Q}'"nWq""&ƱѪx M7f{"2cYh[nR^F2vS.Wu: bLowrqL6i .fcQ72ӻS\6J/`Ώޙ`&ΙɆZ6o:a3C kI M.$0"d΋RslBں,bA ϟKTK+N]3GH:/H'_)%&8 k6p nE3t΋j,.oaӖRYH \6L*m/ڤN|Eعg_e1}`ФZT@ I֡&/D^*9f[W˒vv`+͊Y} pq:9\;"\aCZÿmP46,薐R՚aԒfz?zC~#%}[%tw_44 v3V#mT6$';hO-#if#7ZF"ghp1.SK uP52ł+BT΢# Y*X \4 P4Tjrss~pOoMD7W/B9k}u6`}ョpxk_f+ddCWZ.bF`(&##f;\4tW\ַ5kɳHOc$ C:4AG~cT.x15!x \7==/P\ޑӔ8!1=e0',$VXOw$ؖ/b+BhUBvBE;LL_BtkZo3DŽznw1T+ÌZFCF.y+M#OtN0GuS^ťkS)|O&3(a@(PIX((ѩߩ_/6Zmh85hmQҷ?>jbNx,z bIu=4M9V)ԴV/{/7."> ,^RL:|҉}#6Waɑ~ܟGQx8=:=-{5ssƯn0؋%m1s}l)p.RPrl^X/QRc&{Oew.2y xsXvY&Ӹ|E(U%*ǤⲝzΤ/r%v1n:><5FСe)g\/Bg~% ~(FSWz"d]@; _VYRIwWky鰡p ˷+W HJتO GQ|CѹIV/gvt߄=^fEi𹇑 adz aq<}D_$2LC{΂b(ʡGNP>"<q2h' }Eྟ/*[g(/ڿaCDEK9`O\njZ_M\n:6VDHhY mѥ/HAB ȱNpy:+/L.PU45Djb腁Db\b 1ʾޓ>oT!62Pu-.>R"YZ6&dGA].s]TfuƞA 4Ÿ_xR IQ5KaJ^&/ w{V9 @(7K\G "%BkVn%-3O,K]^~83ݕMFjP)I?'U@6 l ohĦ\Ύp乹8̓*^Qԫ,'{j&DzCf.(b{$DJWnƔlbFqtTw:''j)}H4R&TmAC%*WiT޴A|]x]?q1Ƃ맿7$GVj;!A<`!ۚHh2i&,J b bSmP).$B[>Wfs1+d:@d. o"NLL(Jϧ)e@B $޶̤.ҖjHR-/C:q%^XW1k^NE^b FQwTQt$^=7✥^Ɗ-7?ZL7D 9־arG Y uYMg Q??5Y3? C=h̾83Pرu YŅI6KC qzʽ9&$*]'ߧ) pkL,(hfKK.'Z ypoQMAwqP͚pV8]R-o{bzH= NMe 3>GV:0A&m; a-97shŤ^@4 $Jz2O^ !\@X _RzwE8DeIpQ^VCԓ)C*Z5-O Ir Y*fHZIPQ5 {-O= )UaaKX! ' Y:A@_\I7wZ A> $iA_| 0/茸3aM!" 0r"% j.g7xY=1 jbʈ 6m1灒)N컂2EąQ@%UF~C5y@)=m HC}ӣѡM xA/+[PeUhh%}ɮ^$Sv,_\pއpc.BIhP[$D̀: jp5cvVѧ Y^ACrV(6Wx <:(5, u"iƬS3$.+ٜW1D486pM&',\[ p7|LuP7-@We`؞*JRr-P4ꋘ\TPf 8nn71NmWܱ7+oGD"|"@/WSɿ+Nk:uDNTZeXoH9;ZuEB2/Mr ο?o"sC{cl83l+CMW ^kp7H␡nm:~aB |\HzEM)'['y  ^"شpMQq6*Hm8Ɲ w0/ q^]:Dv%}FN\1뙷R-r(5vZң>M a Z*G;Ut_JQT3*?qe.P9]?oG2)sx|ב.2~yjvsSq>N9>@,$]S-AP "2pMXZ]٘w;1DžXʵiZA5C9aZ^xDw$ oրC58kzYyoXGUzJV=MNfϱSCth/5hp̛ڊhh ]GidCx m)$'_@I!#h F;N#H" Wp4W羊?MPNe⹼bC cokmio5u;/pݫWztǙERkp/lh-E DD>ru;t_J<UkF|Ҕ敏!OkuL_1&Qnn CŒ|>Z6q`YfGWf*E)o0%\KO!X6s` p1Gр̵`qFZ/<7&pnkObe)sF ȸR]G_✠/ ٔ ,-s(HY~ae@DVgea5'XB6DL{#؂5BX9&DbbZqck/6$E8!j<XuU3L7 \TœÁՇ$J6۶+=}jA*lRqiNP DoB4̭ kOW*Hc[H/}kƊ>Q@qϯD/CsD?>Jy o ~igB r7O`)հ ~rML 㖲tK.?MNU@̓"O,BJT$󽓖y`\xP.m)#c-Be GU٦;6%^ǘP lGe')lu:hRKtizGMw՜3Ȉ˒ogŒ;M;/Tiy*vVja"q=r+ M/cj̍ ܳa]RˊEqKB,f_jPce뎫K5T#+"i_wKGjq@}b-p :B{"7:gucLRG}7p wN;2[u:b G9 -iԾ0T"c;&?|FQɢh&,~rOaLDbڒG6}POT+VJDcM W`=I CTyw1(-&i(RO8C+mW t+213|Lw9IS/dVv6]kT %Vjq^-)I[Bx: &_h ЖVV:, ϋEʐnN+=w –3ݰ?So;Vd?g9LzhZΧӺ骩Y4Lg"], ނyLBeuwEIzЌqnMnTrv7٬'xĻEc-;7꒯NM>Y}Oa1 gC>l/dlYI}]-2ӅYQn6}ꆢD^^u>J.%,ǟywy(]B6c ^r$ :\jy#Q28xІet2vwtM,"\QN+ /a}ЭhiD+Wr{mwaoك8z0H8 3;/'@WkX԰|T_"pńUeh^Ҁa;ClD)^} Hhͯwh;kD 7̽:#OĢlnmo&_o?6?*x- SN;4ʒȬ>>NF̯W xށ.ߴCA] s-]cB w#ؓ2r+XMwPYĪmm%Jl*ةǀE+n b)#//JKJ10)$@ɪ) kss#ac񆬶,YCOMHn|+nqaѐt;~zDckO)?c_Mvc}x2 ; 2aܚ!~Mԯs:+* !Sd=UL~w{!c?` }-l@EsbQb/;U rKT ?",3dJ{G=!sjʕΙt e#!=jAH Df^  lN4++ B]M[\ݶ/:l_*o'0u }7T=Ǐbרh4ՏK@S_7',CjƗd+(Ȁ!)`+3n/?H~'9]- L]7^Wf8x%RF(6dH2Z47*Wuj[%i|lf$08A雑'Typ!s tKv!K.SwGY;%]6wtبPg[ =RHë1=4!BgNﲭYPTeӑ̂L62&UndP=Thܐu.lh 9~?w%_1p.tp$z[сbtʧ_;RZuh#JEMlBHUzRg@/R̥4~3> t!'`J mRLC!ܵ~qVipBY9iK]'g|a=1`㖈Azjx!1pP)W:]dPO#,wHȩE a@QdwjjgA5P0b#َb@ClO7ks6\ޗp`NXO? J"n$ù-Va%ꉢ,)kz'2}u󯳟K{9X-`5:?NmHf* aҔ .TҾ?a,kDcJS'ӏ,[ْ>p3J}{[f#Y'G_%p6Q'Bzb Q`~gn%lDCd]c,Er @%ϋav wS!=Mp`pNz$$gHijC"%+%R:EAEx-&,&ܬ?^]7m# [FAu$PLP=Q#j  iCE>*ʕ[9ENA,KǑdG9>&!XPiJu)}Mcs$}FNJi91 Ք1 xVkR] FBQ/=OfY_K3~q~ebz#'RU\=%XcEY2^n|4*_OT+HS x]$rJj۞Bz@=-*lb,z'D3vrԷcr9ފepG5RLc N^Ȗ̯}luT[_SOUDH9A+$M%o0gUㆇi6mZ+(+F}DdX>c{kv&)aAEZ%aQ;p*k`0R(retrp/U]@Qf(ض9Oco|Acȝ@T_1&ь1]/qW/@-J-Ρ%KĀYD*ɦH%xX1wP\gvCVѸ̛zxWv u!Z-ZVήADT/n,0e,U%È1֨Ws'J.\P^W7%J+ԆEEb Wq^z48(ux#l„%iL&•E2xρDfLDv<x"8&7uV%6RIM_1U@Ҁ \`}0T\o>))Vx|ιxt$B N}B5$g1 pxeth-4¯/aŭ X?8y&MhIb7d>a)f+Q׷c;N} gF"lk%{΅;q]!-? {H" 87ŭ wd=|hҋ*rnu3cAxȩj)IB`=wH~Ye9}ιϫmgyb*rEK3zVTJwRl oZ*6&wZcK9 B!Ζo;ן TҡBULXCGdx$č_7k_( H8&[!:-}5{f*E1V H)_5ߢc#:A/z^|SNwoOkG|!?'`{Xdt =K:fE(O(PoamK!NK|Y-GTd AεwH4r=!&D)ĚɗXA}TFJP@vHCm ֤k,s8ŗc̅Ff%y5v#'Yc*Jd'{.)s{'TBgeߣKg=Y41;0!d|sNiõ,(%WDǙJܞH9p[/4mD@,=O`B͔ ߤ@ɥ8푊.p.YIM({FC#(^2莶H5UjmS@ ;O*tdBvƍH/٨a8Ti!{rJ,w[ط 9pҷMcqGv2Ȳtz;7 )֘uX|;*94?#HwuugOoC]*4 7n`B-IJ+ThA?(\zR\ue$٦\l=p`=GLcu=I98h^J>o.gݴQ8ҵF;.\qqMBכ{a>U^ueiP^PeUR#8HSR>Xf'rJY>i)B?ˬI,ofM~bZƜ0'5lA_J@XR؀%`NɃ j_2 0*ΦQ/ lblÚcڽp4n88l\_H{N)zkk-!, \#Y8jYyg |wsT d8+l!u˃4K5h=~[x/Iqi01"u6,\)d'`&~Ӑ:)tTyw]п9cB菔xFdo-?]P7>ldO|7ӄ! 9Q)y) mx"CkMӾźV׽c4~qS0U()bO7v#B{$>S:. \xE< nz btNDXaRً[OJnmvW*Xh砗Qr=_hjt?KJ3[$QP0桩F){!y|䐔SۑA7>+A"Y|P:6ںЛy]d^nIk;Dj^ 7$!`Fpt~W/Bю#|ύ֞7fmEm.. InukFJ6Ov@;*2+D>UupcRb̌ɀru0sxU\(zl1^ןD%>vX&<$O*}]h(n.FZ؇X$ _d`&ADb^L2Q򕓆wW ^0z"M@Yb\YQAGcޱ -!0㾗#{Fj^&Hz6shѴL85~_wH F zܯ:&'V^V T#0.4j]| fstPEaUtպ@T4e٭珯GK2Tst4boM/CC/\\޼i,xZ,`%ŠisCA)B¤ eH\ i"svib6t hSNBJ iLJT:Q:)g96D 5*Vgh}_D1HsS(Ԋjͷ:ƯhA'=CK5 r "'/D[\ކ%_f}$h_ZD*s*4+ K4tyٕ͠K1ٷk--5Kke˨QֺRdR ʓO5r9m6x߭ u3Ki7CB*+<4~, hF]  n+_ ,z#ln7= !uRj OIE{K-/^6>"1V?;GiQbI4yyO-A\' X?"7D 08K}~9<$.~!Cdkx:Vf-qDb'9u&{ynM.{y x<}VBPZ K)(Q{،@(lj)a3g:]56sxr[s^-#D%Ok&*>;`}]*LH%/tHؙ;]Vvz\G*KOk To>0k&~{B0Bok WEP6LF%L,Hs,yqhњ0gͣ9Axo5̱Lݲfy˰5;/[Mb1m7VCEH$99%M9oI 졑{'pwe5FVQ)/Q$)yh`d/(]+C^,?v SJExj/v!T[!š{;PЀF(ihl =Ⱦ{y,Hg+zR;[YLfy2m=# [L߃)H;`6e WLGk޺,rt{>Bg+ 1I$KPS\'n^üVGç( 0]#Yt 0 6\]=+!{GUŽ(F ֪Of: ?S{Ǭ Qdirʝl6ɖ Ղ/Z|qι\]3䑢^Q)Lrw+Dy9^:hOGTq9z J$u:KZd*+O0>d #yUl@jYZeu[@u~f2%9t.h)6hw(%PPK F ZYӓz%S@PeĬ~]FO¼IR-',ba-@$GZfqrr+?'}‰O)yX~smɾl[/ǝ{޻ּ i4obs땊~OιT*"Wݞ~3 xc&q[rhqs Lz9d?U>js:ͯQ9| J0B- #ъ{ G( 0ICy^R\2uF'}|ol ʓ8TGʑ!MㅸF!P9P wE)P|>"lDe&fẐ1iǾj=P&#H_xԏ/=BnMBM>2-PikH&dNCm^ؤ &B!%@;z9z 8I/ٸ jQ*iɝ\h-fNy -'1<$&)Ҟ҈E(( ]4t a?0%;_lr7*{v{i#lC4(G>FI qdg@$HGy|"$x;:S`Bg+ѹ&u]M5{bϏp肛 `R\x|15̴ NM#$h\55 yʡT$z2N\#*OviO)* R5W}t<-vMX},O;v QDF8 ć7=E.|n,%S<΂1!2> V9\4)ϫhkf#zd "7"D—ER{tS1|no_FUw5Љ &wohERǚ+H喹*m%g@D"=Pulmڮ:/LSU̼ԦSs@K "t}u%:.D5-x [-gpu(i-=ck_*w"yBSTWc)Y>\ގO1W ^6L}( uffgeO'VZ8V2R󮵑QM!ExJxT:x}VFJMOtXqx%Z1qG("|lysBXSa 2f/s =ߧ2K={7uKrHݩjC]/m3_[Z&f >UNB`%N;˨? ` &}d[v2 Hf=L=;`R":݆] QAجtM>ZQ| &gCA:6aQ _i_Bi'c3d 3Z ;<9..TIǪ!uעiHVh&W~#ִ`lѤ7ݐ >zM}*F$mv&9Ϧx{ ߬o 'Ң06:NWC#2"^ͯڀajF+D\E?k/6e&"3 ahت(dXL]Bc۴!0)PΖSp^[USڼK, (ɲ[8 bTԙZL")FUe :BoZʶT9|+&xixKN3N 7{Z{0XlN\$qh||] {8"ߔd ZKAԵ݆o[eխ' VMδ"Mj=D"xw#,r#u,l\X,+|dI4602쉷iGEj/ j n{kFfFqxº9DpNZh5XeigF=|4k\ ᳂#t " dIǾUm:=::=Nj)2 [Ew=r$qV~6,\k){_T~#콽h9ƿ+2&.r(,f&>'!lL!| D Ťx$lp׸3d Lr 3Sq\r_$Y jLYHBr|.Y`Wх̄\9^#ShPt)TindrL9Ӆoqg4ͨMHݗ% mVs*On<̹U<%}bXƨ:Vٗ|とc9@m3fҕ'iϜ * SOLC:YXNqe`\A{=& 'JcNv{QڢO_%Amr %B;tu?b܎KMae ߟ>(˚ 2qs;0h_S^]\b&dmpCUe+j:b/ݸW>AXt^6&TР|{7 |qx6CDBB#m]2z1~.]7Yk'j(&s|k|JW\bؖbo=D%T^҉S.nru\,4uMOb<-E%uHtwtP>l 5b#`e XRE\)R>֬)X'\@0kzH'ڒ}4 =yti7BDA #fefc*cqy6DgO( (A8MW\uko&*݅;tA1nW32O f+`4sbj[(gLTH\$% g>43մiby-P SrW[hh"fÒi^xF2CBUXm.l$ 5^hN$2wHk\A10#!O;j\ F_r( 4]Lmio-r^9YI:A, KrJe0ZH߱.8,_"LƚAihPb';XZf›*FRQPC܏i?i{@&YlҘyôvْ.N6qA^~'.J[\Lxǂcj( Ω! U$P.xmep D?;}XrD2:)f`9{?CiW]0&E)7Hs{ \xNuZlu49{jw q Y޼`3Rȩh " *+˗f>(SaL!wB ik#hAr)_lFF4$J[G5."iF G !/q fq.\`VJ9(JW2pnXy&%W$bc."p] S1Tuyҳn⸶9L\̙fŪ#[5R6mSܴfk_\:ٔL`/{8pWnn-E-p1bLجF̣uvVcV] ea<[K%}S+RdP+;H&uVko{W$̇6#yUI=r{RQG9貕LƱgH[fī۠^Lh^~%zf^5u`9Bh,cYn<gF#H"h |SŮ 2$x "h!!osA'"\Ơˠfv05Q<;Q D”[" 9i;6cZV>ZTѾr ifv `ƞFc+ćDZ[hidk HTM: TWq-* ?/0GYgF-Me륜' ϵ>h~NhU`p᜖Ul8]krE~ (Ip8 9}@q}1bL?V R zhLвWWB.T`$A"r4 *TΡ'f=K4)T`1&HoX堙C T bc7[1Gr9N( BZJl'1f4>3e|V FQ- >d\v5 uÊR < 2W/ %'#INt'Y@}j a"v]ɍ 8w,6>4@? ?an7 2ySNLhq&ͤo4KOBc#}s{udKBݣoB\쵼%M%wglDmHcO+ǀ.Ty8DxV;tغJy-SHc1K(6Oѯ&þC>Gf>vwgjٺk$%'\Q^Ok ؃b8rz2>BW(qdy/3R!nN 3O!8КQ*Mt5gG;ȺnkA sÐ/10=P}=p`_`(ѦЦ><}MdmU}Cd^3aLxǓ{O Z-ºxQlOpzͫE3 RXl("2 !Y=6P+ p6?'}†v ՔSeo?ޮv@ j)-l2@LcտޘԥGq(Ю\֘M۹\wFa :6(FP8&J?~ HlG\[5GnXTظ^hA3x5ݭ(Ԉp]Xcq$K qU%'{%qFhâJ&GW:YM1-j&Hk/++\T2:Y1Ub;0;MHWI)~Dj``ݓih(GRm@J@&z=頋ьvzFm[/^MDKG*T,YX*X+U14U@*1_9W U[{'X)DncdRPǠ3{nZ ]- K cJ0 2Jeٌh"gaZU";T0څ a*mL, nz=qNW*\S_1*1\{MU*n= :; s~P =@CEPd48*=\Ӟ iMePl Vҵn.^L kg,mI;DžZeJ+B53k&\yMktWÄ[S -tWTFtv, S)Ov2l@d㚈)@@|@GXS9(ӒeWsױ{F%Qk)R S 3C`k0-&fE2[hw%va P:)KiRȞ^, q,1*:{M'Ct= oR7AԖԺ2P;j &]&qFx$U0R&Vĥ194ПX9m"Z1|ؓ97Eu#}LraI-oMF%#Pڸ)z)[ƿ U>'nQJvV{оP$֛%6kB+:(!6)pMXBONg!cH$'ٸc.ZAG|h Á.Pe߬6iP, ZˑQ|*½{.C[*Vy@e2~yƞfګ}R'7EJ%d Di`m\VNd6WZv72!KeoqMj&siC"h \ mI!i.%^牆--؛3a%|`4Y?/i =d&N{ f!XUQ=ր K+7?\̄*Z<7`^]mW&I 0T{}Oj&<CW`/8NMwF$Yw@^绺> n- ?.[B-!gO)!f}ڞh>-H4|3la l"Xs݆FHVSF텼-ȹ{aHg[G1} k^iT>lmiUc7OͤޠyW!hXhX,j|o_FdGeO2NxN܈|~K6*kQ$G__Ģ k4U'7W&Pk]CPO|۔^{"1?t;5aʀ .&7ۉdQkT|@ܟJ3I'(6J1\I[JF d9to?tЦrcҵ6dj+{_ɯnbO3A)q\a[SΕsTل>?N߫Z:,F, oҭb'N"TJt, &%-@syTH4k?z}I]µ!@ia{~G]#/ Ң9RoD`ᔎ2Bz-(3(VϖߓZg]m<iFЌnV@ys9r#EWm54qK[LdlgY,N8:a*l (RS7BG ~w"r $0QU>+*l„ýoxUEA0{gdžtU+l'by(/>ÚDyq]g&]Z8vrىh]Ki| %QTH[Klj_N&'1eo[s)0LĒgBq XK޴t#qfy:R5=)j1 . @ Lz~V0} tJwr=#@rOqg}vWE$Y%Kn =ݸ"P4iب &Mėc4Xp\N(j?Rna63j{")WrυnoXo"[e8+=# |ӱHn rwXͬ\ \;r2| > :5fnHE+ץB-4C—GH:s9ר:x芌,JR_.6VI-zkH|GOk^'=F 5dk .xxA^w< ݜ L8AN"+S1;љ zB2Ω߁u'!Qkf' x|rZt(:  %]/ f-]ݹDLy7 9ЭdʝI!'967L۔{9XY4X-.VtUr<}a#oU  DQ&:1t1և$AHx4IݚvC}}6I2.y-Ղt|E8{݇χ\b,:f!TgH'񑐿Z2+<$Y .gc ,3{~4„dyh{Ƭ06)w}Ѹ*z*O4ٲNۤ=4'CC>Yiܹ^F$s.m!ª_=8aY1Uͪ9Wu Qn?ᕥ LC5_j*OaeJnY('GhڄƗZJd5JE#睱_r^9XLk>ɰM̻D섢\. @`6l~j(3=yd}z!$`FXWu83ig;t@;7GWԻqcYq~\2u+U$oS3PE7lW ]sc;Ԋgx+e%YjYe=MS BA7kxDaO?A=%jt#A*Y\$ ֝᾿LIf+z .5-L0N zTDSߦv bRŋ~/i<.p2ael\餎e%@:\<mRn^ZqmsC{F|R| /%,ևsI\ĞD*8& O6C8M"\5fCm?Jëz @l&ކ Ĥ۟B4fYƴ-og̡{.(ZRοc&#0;\Mk(H(3LhCBxi,3Z}:$-,zjԠEv'G. Ջ;H&Fn`ysKu'fLi@$DVwcqk5 yd-O';[$f*lR8P"ßjM_?1>fB/6$/V_8MNo-=HK#p }3%jK&WZ W?1rw;oYwt"yP5Ҷ6{5AJ$ .ʰ[t,F.8a 3_SPM2 Mԃ?4$GEK}Sȼem7+b|^eWZeCkti0PZ?o/Em I wD?%)SNOe?RQ?3^G8xZY~jr)8vKL QGV'xn8׌cK,z#r t8ml蔬 ֠WfJL[dm0X5k&4h;X3sP`OCd>Y *%4*-ܒ >35r )ޛdžEהJeV~Cul/^{vi:,X5\e H_'X PVRm30qʘX]$/|(TUT@XM,աى|[6M)8)Tޝ>A8;~E3۟9lT oUt: $beX `"s{y UtUcdw=|^d@Lmym1*-鼂| KQ`m6AGWt iQ#"mWV+[ .ATt#qSn},>nٍI a|E-U p3ii 6"mTƷ R7ICv?\?^^ǫ Kiq1AozMQe`>U=P_(hִPA!w>g:0ޭSv~!TI(&+ć?ȸ/ ٹ63h{"-|i1;.Y4ɘYτ틲:kT=7,B[7=\Ћu~[7M#~Ee$'B]`$3J[aB3vK(o9akw[4+Zll~F7q(@DmO=NbE`[$!Vx;V vk5,PN!2=?v9(#6]8,m35HKo}D޸:1yq1h:HUlѹye]I`ssM@ -ټ#4HEO!I>ܗe[E p[Ep TE xE,0h/r?בu%`U epI wG?H%xdk Ga{p֖8ˊT-o_i' 4P"r}vڧHj*Cjl yd{8H*+ɒHy x35sUxLVsKUi\ V3d2- K/#d=@݁U/&(#۳}Ɛn*J|VH(C"2zyS @1$52+VX:Bp2e{5t|']kĐ.NrdDEoJБk# ij؀Lz“y80s*Z60tظs]37yq{j3ZƱ1\Y>7 (N|~G*T7Z szY"X'Ht-9\r2ep 4qS; m8ֵ}%}1e服L66]N7 c-iY߼[6"V69{b7wXPdA`6g|9vVj,2&QJQ`|fzKHuέS,;ć -RHm`b؏sy׳|{ܢ8͖! ]A*]Fߵ 4.u@=x(p^uŕQI< 91v$`y>|7/~=`Ekpx:k}p6o 砕otigl^FB&STMz+HƵ_r1Z]lI'Ԣ0oq*9KjCy-eXiNr /̟ z![DOӷq˓w0b.dj~sFڕdQD~5PKZLa $HK/plm_"jc+@{9=b?I~t%6 DG$Ya?7x5 $}]f,FlݏlʢltG’G[bLq/]~40c3uWk ǰs+լ""3cҀ!GֆSx'qi~$">6.fM]2ϙ?, F\)N/.:Xd_=!T:U$2n\49jj/,u@$;]$dΕQ8k)h@w9FpDH>85e$_(K X>e3t eF*!-\q6bzBؓANY:M$uQlYUb[{E6VӼv{\}?/Qzͨ<. '`;@FQGdh{ޭaT$erzN}m6r9SX-~^khUr +,1t˕.BL$?;U$VݵvbT ΐbS| DEȖ[!-SR agxI%E *n vZ 2v|n&x}:T'DอY6|UOq0-F`/wnu8m4/,.F7ٱ؟wO͌*mw<^rB{}>ߔܭ͒LSٓc4`SY\8snQ ҿ"o҂ƴ;`O])O˗YA>qvBK݌:m\BHďӗৢPm6eR HI%Bt%-zԁ/౤KLx~BFk|t Z؋'7K ~Oȡ[o@ lJꡳ)4e#ˆHH#E%j8)yUydlf1Vu7m _ 曊Tc\NLbnsەSc6`a8>Xn$=$bF^s!}/u䂽\w7E`4" WL:"EF\[INiIL4w,AELnxL 3/ Ö {.Wa9=BgqR %awi?R&zW|0*X 9L˅°jO#Ua E8*W'̴6HK70IdN:\δ(V$JC9Wb|QD;<޴GNvvZL(J}%;.Q_<izфfn0A]O@ij[w'rչ{2;5&tѬ- QT<@KǢj@J0u8pD茾d踛Y0ݒ~o`m Vu[<7Oݩu5Uv,OR.ٵ@wywaukg,jj01Df= 躅 f}%L:R 2ɰa |&"!lӶYƒr}4T"Ry P-pi2ݑ_A)F-2lrC~x$z/_/ e]l݈K ~eql#Tce2k#|FdhlrĔyCdKcKBDee$^} ~>:,n fxBgW\ 'o%̟Pٮ ~"2AzGGy䍃%iϰW03еMb2,WoEe1[7q"=QW8֪Mڭy GWi"p$}2)cwԥPY쉗T'%wW<9J쳡z,DHhnk,/?21pZ'Cյ1jAOl/gu wX/ aע9F۬1o A(?f@i? 6SHhH+mSKKG 0dt;Ð6NJvk^րxlk43lś.ME6D.rţDWK޵S&IuܖVi%>Ҷ{6\11Kk !ŎGW? #caw1·C"ޛg PP"psJɨٞC)9'trw#pd?k%o{7;3:NIgq58g6Yru,.΃?$ūthcfu뜊@R\(CaTcF,̪7#ƽx#&Y 7nwwvڮZJ 蝃*\tNBXoD3tHBo+Qv7sMuGx+&?tXbn;(Dcz pZzf$mm4>^G4IO yXD^G"/C@  ^f.;ƏtVd;'YAjhT;uO71;N,I(jĩI)Oy<MC(]ݟYzF=O95\dٳ3\9=l^ 00'Վ#1 P `78exxG? UZi7<>x*l̿ 4#Z- *ω#p ,j٤]Tb vC4/LNT+\bZgH] jϸTph?{̈́IRҏUoZ[`ɖO]^M WG7qdC.J%SؙWN$)bDߗﹱV*H]'.]F2$RSH5I*?}Θh{$Gi:FBvG'CL n0^MR+@'ޒsh`!QaHGâǣvV8Xx㋇6Sm)"ȿH^致MиhŸ&1->miX$et)ĭ8P7_RRz}c]a90$P[ I|0btb;VwIt*'ʬn[O:vp.e-?!i0ԇOn }6:%}zKn-I@wהI[ p_>_W0k,e>ȃȶFz j+Kܥ[hm,e+% C ~qj>ΪAߋSYU⁨t)DvW},iIXW;6 00r1NL"a96*Z.E ظ,zK韄'dQsR^}n* WYИ}ֻB`J%)ܕE Jqn rb\Ef_I/A,MgUeS,B(laː4@:N[_y^`MӎSO:&CLJU9[N񫍡N˂ͣ.a;?BG H9zW2ƯBYWvņ%-AO$;/)0b O襁ҏN VgJ%ʵϚf+nkhsA5i<l#eWX;wH7\f{OuYM0{ɂ>d5ṙ;L ZwG;)pJ,p;GkូN^ڟ3bMFH/@|lXp5eܷŁ(\+&d5hXL!S‰ܝĒ)`_B"DOcvd־R!8F̣112x#"^-T(8 #QssV<+.:&2}UFɴÊ!:X,&礤TLŧ[Jܴm^2bͪf䯛^+ClD-NVyw-30u{8 `^&W"Y׹4E&U&+M>o~0է\(Jg?$2&J&o/( 2}W%^zS+1ɿN-9C.- ekxPC^di!zҬ5d{™⇄7-k_iܚ^oE6K]#)*$i?E'^=YzbHX~E(yw_^.Ja˾@]Βjv{<_!yn#۔/#G f9Bqfovh%,,H1 =|zi~戲YkcCϰ(SrYQ΍&X̑ ,juk 0CJ@eB7Wj(>FuߌYC}ƎcޟxU۵['"mt1ө'2~dG$n.U1'4wq8xKL|4/b%[Y9uL5냍k?b/4CPR#a 6!{œ/ -;Q߁[rlx:)0GMwAŧi!*_b|MtB?}vV|1&y ϳ!P/泏]Quu9ZƬ֨wnW653v{QxeJ BiNT㎑z'_TRD.oϤsd-Sv4'(-E۴9/Dden6b.iN,1Mً/J% Z^9Tl[댲1B`LF\#PE%AW60xT,F3F?>F:+*xrnNP9Cu. 2xH ;v@Bu𝅭*xĦQ yO*tz\eWX3c-B'2_Ns]C,KT/#wcݛMCPl,3%dm/['jjX:ki -`Ia3/z}kلGsD]rEΟm}/^Hv\ ae# (]+9+o`=jT'ގ1::~G6SJ ջ[9 D*T;L[3Lej,(z #Et>Oj6T<%`dՑIC <&ƥj tJy3uⰻٌ[ ;d]CqS: 5|x/|!9ڥlq\`d3sD;Zi*5IR(NRؽJ!WE3=ۡ=be1C*FL'KUEmAņ3-I|4&g^< |Rp-fWOïb@J5#s &4[x)vŏW7ÐH:d EK.Cq9oVU|R f \N=IeziЀl]j/#oYg~Z gƆK~f]'إGzHDq%LAlsQO޿pb ghԟVH5p7Fo5BL "&xatԱI6m:UC®(%22J5YTU4wl_]'ek6Gd؈c^ޫY6&3[P,*nFņ&t,>YrQ<+ J*m*T}"l %&:P]Iz[E`+-{K}5zO#sRt0Jf\!yV7ť+'4*Xiw_ N+^}.Kyz^[FIޯ.8昧6 aY0:D,Liޝ̔&eN{LqEn|,)aDCYa֎N\_+VblIh⠔2lVS.fJFȔ~-rtLX1Ɨ!Ev˹"F?vTK8'ԎdИj.):<1P1Mz8(JbFdk0GP1ӴhTfS"AQG+F&cbaH:98f r! ]ƴW!ն~/JH˘м 3[L+5/ yi׆&[ 48C y u >"rc_?M)x^pJf5/!:r)]( Mp+|#?Ο1ui`w=Lmhم'wQo Z ByFW8wT:ZQ 9)X"N}}}=tt%\m}x!5i,$kJA4v~}'[S2H,Ǜj^i2AydoilT  NS~QVIbbn/j*{ g aZ+X-6*x5(r t%EqA=)tɕ0)\Xg i/}A0T |g%?d@"f|٠dKie2+tA䭥Ҿɷ ߱kݍGӼٷ #rz]*ux5˾PWyfU_e`K)%|h kǢA$TC +,u͘){Gq <>!sj6n5+0zN=򳋶bd`b1_ގ`ʮBq]?hz6jEqRIHr5uiojzb ?\4K$NY-m.R=H7T* rZbZ5 ;\SN 6n<ʣB3 ~Lu-%Bܣ6ű0Ka*~9 ]S Cpm𡻻^MAjT+e4Liʶ$jS<\e \%Xm&/7^q8tQf*4/ v|z%e~X>C&ps! C#7uA(!|_.yy:} gnU8rPW}dey=[Xҽ xOݖ~cT=pW;RE <3N;P-U6۬;Huq,bĄ ˓Ɖ TݘZO](pf귾eqv*seo r&!:~ ,I?4r(XTݔ:(+X4z Npk.ޡG-g?`l}Cʻ^W%X-Y~Wᖫ: Ok*FٳX" p53+t:%3669H)Cˑ8~/b6<#`Oٺ,qX0!1D<4PƠYcad *ٷ j3 =Gw}b6dO c-?]u-_[y)=PLF2 CEU~ ^)"*]6zXpQů}g4"}j&V7ksh5>&{Ќ5SMn!Bخ JԥQ:# d֠4`$R]kUkG(̘A ?uNi#xibS]Rm5`w@U%I2>0Lz/xj o-zv(&z,Z0:9T7Kk~^=%G]Z~.Ow44 sKPI  ʖ?`5AhYK=r;3 ǶܽWݻi.Dƞ1jE*!fN`%EeVzlrJ|2$iPQf .GE oއ#g)DfmyB-pFYܓc06!8a1fnrp- ԫtm/2" oDYcFSz<~".: J^U 5!o0/`?`N_.^m2X{i,lȅ tLkcƲn '8iBF/ÓV]>߯(ama]Ny2gHYNs"[IQoD!z*.n1xMo k)*"E"/]`8 >ᎂO'XGTW {w!9rK}CEa=qLZ!v'IsaAVEj$`}*yFlL3 m$ HsT -=nm4&ܘX)604_Dے^.XbdxC4s(_/>~ģx\8Vy1h= ynm'E.Jtdm$1V&ӥq #  @UL׽ 3_f|zP3N:Tr+ uwwvC͆ pu|"Ye: qfƐOC"0 4}{4TݿĖsyl0Tdlj,88 5bKl) ӯܜ2(fvP怒0 ]Fbaj.?$DҠd- =[DS2 S-(H`{_BY'^5Aiǥ EʖdDĠE~vW2=c +1$|y1Jbs qaJF^.+Ѝz A߬d(N H&%`B[lMm|v9_ <螙 R*9s]jcH)qTLpOi2_65œ !208 5ٵ/c&6 ;cCdx0B{*cE؂0$ՎZVgVH1} 2 x7JD%YtGM{#.su`Bge%3c4 @T`C)w[`-6MVednwwkh6ucioZɒ$̡ӓ |v[uPAF D*G*=K#V3&bB| ۫kW¥7F Cŋg(ڷc~%JłU܊|>͝5jgsO)$h D &QNg6ڡ\%Pz݇W:6t}GcW;+!]o6*w0NNLIq}g'uinPKl #V{$N BӤw[¦@5k`~ySd7'ZJ~!r dpwY QoK&X:{$ nb ]ehOHCq =ܟOؒT1"xzM#Э&d0*F)$:.Q sLBan[䖗bkMDuȕ5b) [˫νWb+!C?7|[%>:d[f9  t03x&1b{H32*f3"^lӵ?!~  B6+V1`zrSFL 3Gtd!@HϪ l4mEnuy2!7|dzhKzzg]_Z '\:P=?Qi|~vf_v(k3 c$9Ͱ( ]!v]6O@~~sgnViS@9..mNYVՏl t.@)]q.V7uYͱj !,=Q"vՠ;_c=2}Yaaٛ EE*hu{|&Jx+"I&F_zoM>k˨q;[ @$2r (dNLH/#0jtӥ"L6AHy qr_pJ-|!{ ׫u*C4p~Lw|=db|F E{J쩹K ,B&<>~GCӓ 2q5/YEyq@M.qW#6{ TW,#xXgE[cvZݳnpW|g\NEKN Y%}K^8=pt7\c4M wNonR] ; .qwwm)ɞ~ O'\ `jI#/e4y |up\:}c=2sk "=mIM- <&+?,Eh 'q8Jk^bB- i襑 a])J}X$;֌dM(bssb֗@'㑂Ɍ81Q3 $EܟKCd'fX`^Ќ#u yd4r&WPڀi)DžmzCO?Eo24UnS{KNT&1ClICiQ6 \@͒"(h+s}Pv,98?k\t@YdݭenjL%.iweeKŻްg"[Tmu0*^vo\IC#n[Єen$DUF$AdІBbKa wi!DK x`Wa@p_]!Ojf~$7VDŀYecK0|cMY` R>X&z ?/ڍ"YlV7gJV>N٣aԫzarr59x#V7X7fifA˙_,Di qZ SgJ;%Rs6ߘ:Qe^HZ4,ׂmu:-Ky&."D(@ F-1A! @CڼNt$އRN?RdԹ#TB)AUF {pѾЯtEڰy3Cnɨc8/!c[i͔i6J-=o}5>nTrL-pio_! v%Q#O]|$_(;Aa5kc]qw az#kʔG3fsq7p0mׂ/\.>'RCh29m|h{MϴBNjp5egJa"=i)hITBxB')UXxV*LvS]h}x>Sv[i;x w.1IVDe~vfzR5م?_5wvSW(rt[s|i5Z |t~1R|TPcG9i,7,B[1VMjAX%~m,&O就/H 4QݒE|xfP^}!̮Y++G[J=ToȘB[ff8oL&FS⿠DiWPˁL~6;$' r?EC@LwqAlbF8=&Sz  wsbuw9 L*Z$cy߲'^l 0 gWh?Υ럗hȝ._q釤VD袻QOg J]e]~Cc 3 qn|9,wzO:ߦME x|=D(IK{~D0aEՒf[1NzY/H{2f>86pꕿЫ~WݰFhG=b'ָ Or-f'.*\ 2}U-m~*Aң{9Jyй{r#9@a)B qꟂ_zM,qu}֢7,HSx.I6 [&gL]gZǔwݎ (cU Kٵ$J F`Zjk;JU}#&E]'-]`\M.!Fc_c >3pk=:֞\QIwk}=L]cƆa2K@?2+ncknH k}1 bَ\y6HBI  AiLTI`77Gp+ioDMcdw/*j=oR868Y9# g(I3UAheMVCѝ`qcDvՂV:fr_tIA1sM@p¬gۧoCDEc2~:ph,n+,NcJ9{&j $:)s?cYWm^YnӧwpGWk.nfzloC3.?3 Okv 4ZP;QaFc|Om [0vܑHss9NNlF2FSҊ[Uȯ'[7G>I3,B*))Q 9и%JJ ї;Qđ!8MVizyJo )EG{j眶WZ~}"moSӗ8Q *=?fF(yd*) ^й^Nms5*t':!>:^tytu reg?iAw g)^|Kgpw -XAd2K+Ad;'t! 'U6lynPR@.׏yJ(;!Diσq25Fn6F!&@#994|Li{:6`RK2_V]dmCGՠc }}fh8[HO~ب hl'Q~4x&Use _HLuTF~lPZ9è* O%u✬/dD) IEn"N[e8x ˘LG k}8RŁ狎x=@b3l/'z_ cXuf4 w_=X8-yJ05"3;dVY6C2iNW0* xnUiy73[;ٔz=4P:ͷymX|"; (;M,sZJ.w0hԒZ#qhk 9R*ŗ cIգOΉnXEۀ?WRi3hq 7y}Mm:]]H%dZ&ԿLowכ^&z6ƫְ%}$e`YA>QP?ʖ, xŃ(>Eq|{dBU~5Xwu4%?Eu; r?qVy:5Xp,h֧ws_Ը ӳUhB2HОbwKC&6@ e< |Cpݝl)R/WWz~LM'<威m(h3*}jr9o啖4=%ca6ecx!H+wkQ42GoZӫ~+kqK0$ůAsc֟ *`R _o%v BT2¼Bx1h>u?WL6hUw|4^×JjU IZ,y`?J|n$`p:nLZϕA8+Y[PQb#QrI-7 /L:XK21#  <,;qHkHH*?.r|HUyOTiLr8lK̤M9nk}>p73v"qwBo [IM-0\I)G 3eV= ň϶L8%y8!feˍ\2 %D;OW=S o Ц̕~s)kq~`l(fnO A d$4~nX+OgnVT\K%LznRijnMb~|~j'k`2y5SlA#U6&J{,Fܺ&=;eV5ʔ l֏AUUw*EpұjJK([ l?ˌb (b6m|2%~]^ABckYͽ f^m㪕x?={ȷrQChGM8G%n`vsryN/ VBE6eS4o0│v2MN QEM*^_f [<H@m1q oFZ1@Z71!; ú`[`t,WSFjH {ќï"+K8k51D. 8}}CX8JNli{~,2VaʝRhb6ZaHE=OqT%#i2 @ 2*ݏI};w KK91PhYSXm4QrS?&"D5}D"m0̓Azr ( dO$ZB((=΋s/- Mp(UMKL打bQr,)7Y=ibudpNc XtITe-zaH?v*;r§\9ۛŦ神H!%̒f._E3`{ N|f,@%!POt/,519wu"QĂ#0v-B=f`ŠM4`XXsI =6[CnbtAȄXՄ L= 蕛ʾqU &-Upw$(QcȨ㷾wr}aTBX ;7^ٕ@jAN,p =F>sbx59:"Ҡ=0/?&!l{`bюch ܯew״AcARl1H3NdJ4X!TkX4l>L?`$ >FF # D''*H 鶿b .`+Vb"c|M#a96G*:hցQJhMT9[kEvUEpoXy۵qOťھ-GKWu~~#A,o"ia&wjfxrr'Z쿤YKLuV0E@3"Ys'Ɵl<7:IhS^hžYX˼`!o987ݢ"7^5/X'%GTTWPH{ݪh0vBU8E(*Z]QY%ŋ#| e\v5-ʜ,4#1at3G|1كlXQg~b0OWλ)o l!080L3x{i-]Xk9~>>$ * "mFJ2g5;RheB'jS?*!(nV+3 727* ˉ6&Is_Wq1*R yHFRG3PWsomYUHjpIYէB5ȥqaPZ^$ŀk iO]~Z"њS};(a[ݑL0)<n7IFN-o=_{aINW] F[[ݠ) bKˣ#Bs3VH8ѩ׷YMX7JL!n׍%z3 8MfA xІY_rG&ȼ7V]Q׳&h_v+؍%%-bN M%ˠ(ۥ< 2~cTg('`BNjhbAͶޡK.NSX.)/(l'>]Hh7oH6 8G([\~j570,kq/qd!HHeXx~V=gl@>ZiWws3wϥx1FNG̨2T~j y4[gMu>BX%Ð&3إc{;ɋjK܎9}׍'=b 1ژd ̀Gizgsi =>Og$#Et̛>ds_,&n e4vQ.&@ Y3iowcɡv? S/bFBiw̍"@dVM2 l3PHӑK7`>3%h,p? l䦭T(XAX^A='YzU"Nl|G7oEZ:4yD>\N^hYPyq;"fކė;4Oٓ+ gR5sy7WPPǤ$vcJ0\ς.֫P+>"'92yKxc?mP:Մ58߂s5!c+ғKHm,iz&򝡵0>圄Y:i9&_M?E%B˚[j6XZoQ\>d{~h[_hTr ;YNVY }FE6w ޝQ%}r@991Hv߆#SN_`~ ~m|ݑוYE0dmq&z镟u;B<3Q9s=Az).l@.}uj|G R: Q4`J7(N,i;_ݯp-F7s{xR5J{w ¨u;%uˎ ,!ӏ*`!߄)izJoMs0EΣZlq- ^)\~(t»..Q!_1-]Q9;%G;'wd^ꉐo(Q׈Y>e5-!XEKŘ'tEpҩ0gXyqQR(^ Dz+ oVUڅ;.'̟k:foW>ZvcJ?qaDJȼ-;,ղpzp4|rG[, 5+:,_ s2"@)|Eta.V`=tgI!;/!$NۻykJD %MA,5 -GQ~!zǐToylN)]1_$$l؊/Ҧ%[YOټ~ZQ@~B14;DuxKXͮx4tFw3O4גCϹxW(X~+ypKӤٻeX0uo|&QS$!`y!A~s bskTDj21!K_hO='CFt}k+_+47訔}~.keKqRe-~[XR[$r$:%3~>֥!I kpz{Qgj#ՠ?shd+˙/*%!lazʋNrթNHv]zaF` Ra{]*aV,fC4Ԧ0L Hg??Տ}D d^١3|r'c g+%W#o1{-kge%PJOܶhZX=KopO.I?թpU3^ g=3/oSWWA"#1k(mZ]؇&x2"soZDtݢ:67']7r5MjP-Qށ@Oʉ1g[iZu"tСzG"_aF3t0\s̉;8)_"  7) aF"[)I`$24RRPU!aEp*g\cp8'CnofOuEk((BI(wSԭڮu.*vZNa2 F3ꖎ fۻOЗ=m0%ynԶсJ<~ܩYCVHrIx}<dn$FD[rg<4Lb;GTj[d :*cJpmun?Ao2j{I xo3;Ip믐"L_G" *A՞WBO8m}ηOp!~w dHFŢG[ic }++q@Kr:Jl C1Mܪ@ڻ]8 6Nil!( T OˉpkҞW%zF֙v@^cYV*syV͎ ^.Ez:lօ0.[#|=+&Q9hd_|p#^HKG*z%Ovgv?`gAԩ{RN[6-hf;xD (!r9x 0_\J' x`3u8M1̃8lec?LKOם/5'2-q@<m6$B6"C+DYB{vSj#,T N-o v䑶Oy9#L uR<~j@v@Z:6rsE-C^ u~X"nW|h}#U1ieqr1_#0 S,1Ԧr\p.HrRE 7k҆KzMTx{f)y6”ܬ*f%Ì}Wo{0ֽ}f(, :St"6`p9F1hЌZY$u)oƋ#sj.yW~M<3׌(~ {{Ȧz'n""Ky24VMڈk_j)[3`.аAӗoetOY7c}- )l9ߗ-C[;XxhGѳZ "> kKDT3]׃Pib#R%+>%3g|DmO2B}as=/1GJmF+`|dl"NwDѻ;),WoZ`tūl@gBڎ_:fccgdz ufp3pgz֦ob)7P k Kn횡nme;aJjݣl^ojöB^E<%Y=8W^MX|\SKRJFOkp #-պvE)6= s{mX (OerbD|P\|14(4DBPdMaVpz)tJ|w tHɸkԽ8΅)>ՃezʆL諡F멒5)LE\q y50;ܣZ𼰵ik<׷ \u!8 &>AYbaUG$v! UPOCDHi /LI*ExGh$n1To@ i ̾&xJ{q u]7 ٮ(=J@[zº<$<"c0\QB"EҶ_k=t;Ww7_Jnjyr0j2Z 2+]JmƩ%FestB Bd`SHEvyl\E:l~‘.cv[ da.G6:gfMV6/E`Bvbu$*~_Mfh 3eyx~Klב Hާj]j(톭ZmB6"wl|Oyk`cyTfXm}fBrNGW︜R7Ш7gN SZ+0n_*қܔZ C݊S? :u$b%Oޯ,55°96^ӑ(PH=+(3|Æy``8.+,iPo qR oǣm"hh@ş|}d!jX3Eo@l Rb[1f{q4y|6!,F$0gWdm(]Y_I`,sazT _M!$Y =4:{_S '-.[$*u -CC36׋[+?r̸\Aś=ߎߔ5ZuvlRfDzF E>o^L+$\p7 ^ʖc~>G7Hs Bxxl\V垔>,jNwqnᦈۉ8<9`Ә\ i}NUഎd6 O 3QD='西 0e].OŤ^X)NnYbVQ( (6b 2>u5 > ;{NvKZԼ'Բ=MK*zrÑQe'W%%lXs[o/@<إsnn^="(Pq ^;˷Q8F\C H^R3F$˫޳\Xa 2QUKox&Ug]:9naqjuL4'у`L$]#=72,>FXO͊#-{x ct3X/J>e_;][ >_<ϳ?YFFNGaljۦ>r:!C++c ;NADo1ʔ# DVoƂ9Epفx<豋J1eҢJov_]u+j&5Rԁ TZ VG]4nIV]P b2244ϱh=DYbގe,秛obaÈ< Iq-ՉIiGeKmx-`@=B5=舉y }T0 UD^z 7~Z;{IN E6Pf̃iebr5G!AI@˴ .?09+<`^e{ 2A&,TJFG5(ޮp#:.CMLǦ82ba s(Y{ì` 2`yLJ"jTh7kOcw dm&S PvAuoE^0k {!(l&^ $5o&@tFtM-֢'MqdR//w~߸/z .g4Ec j+<=9́hv36LZ&-UxXB=+Ј,J".@u l !xgs)7c2q^U@5.O,)yâAfGX7:vqR(2E@25<q{vwUN05 \4~kD7dH+Xa|_, ?d2UlF:XFE6@2&S΁MjoS qˋYŠSgPrv?Qd5s嫍9xS|ovC`b lC)$z2 8-:Z~s8hHu)|փNTAVKǎ KL4/Z(ɧ8}P|`^ύ#_eC~OZ&%olǸJ7J9*< !I_ND{@#ęh2"\*HmF揖Ro[ӮR*>m qQ =TqhήYڦ>ŊFF6d$|ޏ" yY1ύ@ΑPuɍdH0ʇ$쏰AF0օX誕Y[B(MSy4oH|#j,-jg^I*i|"L ڭnw XtxZ> ܘb\4q hC.:dmVͲioĸ9(*XZ|!>NZ oFY \kje^fhVYϽ#:pJLVƣQݶ@!7UqZ#J،Ļ3VB-ǺL㵏b(|=Ǐv'qX+sZ'A2Xˏ.{RchZ*Slٷ[R jrGc(]?q+6I1H8φ*<>jYYD"a{[Bsqpb*. }eizjhf2"p=3j#av=HR=%Ӊm }3!>Hq 7U0rl]PXP_S O]g{AG{Dc \*uLEʥUQq4Rv];ggykGLrjY,?򹿫A.u:-ef&"\Fg^V#@ l'``|d-Z)ڪGbr-dAq,bSf#A."bhA櫴I3.(r^|Ǟ(#eoĠ3G{_Q i |7yj$~z= rq@|}<+ť!]z+,+b๱AqQXIkgYZ>__")X|N[ Xgenڱ^  4ԯ|5!cn(oe H6\SBƇLRBwiFTc!?bI)̱$b/b8CB0&l",67ܪ«䣔5s[xYL\ 0UmBhu.~e `0:ICwftJa&QQn ǃaHϼ_CeHPb6[8$1p xI}]9Y"Mԅ ǿQ1S%̪6P!+r~6k (A/&%.l=ŭ鿉.3|I)GQ9$K11DD(6 hQT F#'2[tmRGBS@h9oEۘBf G@t`5r0fViqSpZ,A{pd@*P!zEkCV@%Ql`~<)4u`H–!Jr)ڂ4mCY,7ޘr-lGc3 G:l;$mr֭MU]ts zx ظ|{S~k~l?Z  l4ObK"ap7tV+U}h͕ 6~ V ~:ܓ+%>ㅽҀu UiHmd=}H otn$z} ,=󮯽hnK+!aHm_ `zmǖnn N> ʡ(:4.4 :PTNwΥ2 P_'z@"HܴL]FT&A+Kh4Mi5Lޒ\)Pюg-!O[O!xCna XR vxMX¯S[@P;Jλ$>BVw~62AL ixeOY@-7^!=9}(XbCN<`WJ=ߞbԌI76B>4Wl##/EÝrrP糖6hԊ^i3g#E ~߇8#_PA^"ns%(/;beQ af;/u;4+5Dh>k:Bg UT/*|qȉD' Vu92$sc;z> 3%LΨ9KSLwWA]̬y)E}e`\QGCXULGE(՝w:uƤԆY҄F&IxP4@wb$]sJŌe."oJJ)Re ivǤ\eb鍊lCA)Ay! ͓5{{(“yf%"c6D3m /_]9mqh\ۅDk#eU=F'^ q$ i~t;y֕ .mNq&>(AS >dolegb8io=s|{ w9iU=v.U%eL5)FldR6HZŧHRKr` 硤Yhd6Bfe$;m5TО2L@,[zfˉل؂gv^C+yH'챊5xU-y)ّʞ 'M+=⦑1 z.2?XϿP%Y+V/wjR?CrFݳ1@ @M t\=")!Ԟs 9mZ?Ƴ9 J0*(sH K[hW<*i{ثPÉGE-"7gO,7u3OreXkJ[mvXmf{o}ڣ|XBef@U]j[p5LdRϛ65V0aqT.w( ){&ZK 5O?gCgU1k8wLvhwx0C !l0.,ۗM1}t2%jEncbI~qT jg =r-a& t3gYxLs-Z+~F$Vl ~#d0rٖ]Z7ꎀQ 8nř><UO:iiy&CKnn-eXc{2n$  v72G]5!"D<:dr[_L#<7j[ =U9/),r*Ȁk^+lyGZʛW"v_T} z9uІCwFͷ[[k=Y_&2a3, _;7o bմ(KGZJX5\&D@H'ʖ8X 8P?j3XoDO7 pXx~nI^Ґ}[ua*DC+zT-$B+ߥnz7A((=o }ߔ&숒ΠB-)¡)T!8MV]8}B {m8RGzGqxB @ظs{|*m'{>h0+Cۡb{Ē;-p&]% [ xo ]bV Ј \18/<;IB|)t#1HyװN+ S'X (}, z(+mֺ7KA(ת˂J> VL/~`~>6d3N8QB A%V[x4ֻn㨆HL8&4+ѥ}"SCZN>I,c}́,:=7OA%vK#%]O}KպuGtzʑ!Q-e#bSUQbZh@oڣb[`DyX585<; E`z/Se+-2v19'ez4ZM65z4f?DZ7HQD,g|LRuMǷ.֠Vg|-GZdP|.b-]u'[mpSDuj6h¥J3RM@ C'"ɕ'^QwrunM+Ì9(缌 dc$0ҷv3A ^k(D?~F5,X>:lx^オ:E 3[09 T]#" NI@wھ7*]d%]Dj2A)2\ 8Z+`W1tԢN9oRVْUf*6u3bXD\!>Vx{Q` LBF:gP|#Vi}TP1_vCdR6RYGӒR&T8ktD=v԰MK8C]Ұv[ű9`Q&?Ή}[Au1daB~:r#3DN 10[Q'xĸ>[/A<kzc}[H6$L.e+] ,acHJPDp[ߦ ]'6֝h_[%dѱeS'3e޽x fUB?b+EȲxx GXp[F,{KZ"s)"Gax^,aDmأ6|=kW@'WY%1Wy- .f,Ioq+slOw#(QCmLsC)YCwx쪰Oų$ф'\Y`1dU1u0ʜeZi\𚩃䃁@d'9r=[{=g12%7-#}]H5:7͛ )ir~6qX$o5Qp1U3M}=)|>xNX$8kZ.^m*UsA_ `t;(CC@K5ʃ퍿ڱ+>c?wx.}.& "r"sm$m=5;' ?En1%sJߖQ\"s2-wd bɠ(ǃ&[|qC5s)o$mOsBBP:/g]s;vaMiKϫב[䓃 EM1_XCտ3$T); '(BSe F,DJ7 OZ,n)M^pV&暉ǣ6~7TytkXۯ&'ŪU4$€Bf)-Ok8hQv13vSU/2F<p!+ݐI ͘TX6) dl02#YQT' JCr h}N좭wX9r|Һo~o!?CGj au gӹȥ&{7`NHc`RWe\ԕAC>qՓCa!BZuX˯5ՊGNOxx::+d\HAI(ZcF NK?0|&npa Ґ4eͫV(M_e-eOfWɑ"F[@M‡l> ^k32BZҤfWע/[Jo-OK&XOtPyv\=z'˂N"EI#tօpM\Bq_if`{%P- (}Ph~M:}]"MY-mdG v_ZK=j$B;Gğ:]ON;Pwuf#ji'mCg".$9faonR#FaBw}D8ǝyE('5Oa($#T'pyN𼞊8LI5naN.\- Oq7Ƒy?a[QঐTry+/ zՖ ]󳺈lDLOCØRp0{T~O5E`]]=^yLs} IJ6&o#wOoy0 r¬X(&5 .t}UxWg Ɗh>3.X6% CӶʹ lDm*JFÎ^=ĀX3{؉2=_ސ)PLC &e9ei#ۺʯϬz?#ȳ{:ڬr1=l|(H(G *\,BIbo1o@Hi`CůC0ɪA)ivs:RmtBOpj)H5%X-loT 1>]#wUhֶ'Ǣ |Wx9ϰxDd%`H3q WK~ sf!(h u@tЊeRi jѓxSUtmպ? #ޙDJ_,"3豚@]ctk([ 4JVXj8%>ľ@!T%ܝ8_ |KOv 2dcB+γ3K+3 Z$OFPA荿Ҹ"Վ;70do f{ɲ>wvz1gl[GrQ/3koJnP~d('ܳ=S\^D5Ueޤ V-+<:v?9 reP[X)_+ټQ6# MQC8X1 %L{HDSd{q,dPTRSn7>m(7` W4=RZ8~2?_[^WA݄dCU@6U*L:D{V8Q"kfߤsafEeE.1p4z8ؔZ R/NROh1݁a!y&DT ~f ڽ.j7x!perc&VF&BTq@l eV:g6F W!)wϕ|4O h]t[ Æ4T†#!CE$k b0Aǻ`:: 5%3Ֆergo ZkaBv$aER^\nPpJgdYUXj`QjyA(ͩ"QOEQ,Ӄ5NR`ri_+RY;h& 6i{Ϯ80r:b Q=ȌREQK,8ƥ)*+`G oᄓHW/d/i=~;ʯc%gbb- qRdDCw&h'Le|'L\;?S?W `BׂN1'w4?b$8V ξoSr5-3RΝ^wf+B b?^xUAQtj;R|WJ1'ջ] К;<*VkQTJShTZ死?.b Ede/i.gj34SUsjG'~qkZue |]vWm }$n bTGh9aQ&ぁ])x Ơ^t 0PHoa23s%x]'%>,J-krICaGA?)|!y?K<:9 ̱Yj6m 1o+g9Y1ʢfH6h<2AhNIb&*A eJnȤރ`.Jͪ?eoR]$W;o? ɹ_]foA\/F[f+\dz%RHBWAz*sI8{n ͿՅ*伊`ܰJ*s6 dVzC&^I]ҧ ]mxVw$$tPȃu>'|gWYͣqz_L>ˮLm\I\2oãM.O>11gK/D82Y2caK 7BPXUd2ʣziFs;$ B;'_}׺D [|~~+d=K <~BFסDVϾ)~*j-- i]Lz@&X[ퟂ F1h5fgb u`ٕiA%R7.B >/4MDyIq؏%2Fo j vB/[!8˵o Z=vzH fN. AfEa mgھ+ ԊD]Ua {օ;.B\3<+,,>S=,+.a<ԬT&/3>:\8(Ju +h0hNRy*TF #fކƺ(Q^UDkO - mh .BS nq2dW&/wV:j%38DU˃>M5>Ga(ȱ1^@[IW|}& 5 f~X!0UH$ 9?U㱉b<9h_iAfx! |ݶ,"N\k %܃_r!)\x힅W1wN_d 3+>MrR- =N!n1@z"OJ߄xkm+]m1#y%(  &Tc="Rwxacӵ.ϤAD㹩W(KxP7r8oˉ2'jLhwq886Ebu"w|3$Bo0F'LWR hAMCϼVfwg0s=LrJ$uSH@Ot餰.zS!O ۙpӈvh!M&BJ3vFf [2yRf Hkߩ}k ?6i0嗤`/l3Z}Z!Nՠ}:Վ?a VEy,~}j$7P@'XM% ,5ßCM/xy=V!tDK=X_- JXG$Q~wO2+i'c]W&t'cm4LL}J|k K[KY7}p1oy%.$:Bp s`L\,_nNL.aٜ7?`œFL,.>Ef%M,N,L+쮤dQ' aۣg}—HIbʦVllg*}$n*,]DY9#v^H˚,a086֑ XW2\+ƣd[ wM!%/}I]+|L-.o;'t67t`VPv<Dh0C%EUю"%H_UbDFF߂橪kڎ _ Z؋A`J!Yl ՘%L;m8[R:dslutuWBc 5K|w2ksTM>]j!s#tq`Rz6N*{([#k,ʵ߈'ߠpbjEX/ҵ7sbQnCMc\[`p15bSm2iĤ4].5(4曐v,"9۝̗_U])0jO䫲;ms>l^'mipL`+.0h4dKpugC%_tdړ~6q { ee*o~o%LL'#B(\ƭxmP>5N^1zHPS7Xy,.Å4eBm XUZe~Eh_"_S?M۪0!FT{k_yy}w4nk3TBgPUOu}AX$7?#LuPv0J?@f'.u,(e ׄ[#wDL%?AS/G|-0µ! _[ )'r@JC9SqY@:14ױOȪ2q#py*50xV:Jqٔ#JOغ 'xFtxy ,yMm }2?Cit3S>w UFc#TIz LB.getR:MrElBJ5DƓs!T}PՔf)y/S])4:: Cqz'YLеk+wd c>LX^ۏ\h06W 慠HvwXN8?yN&9DTMª57 ﹏#н~DO9Vp0junvO^9.!j=ަk0z`[8`JGm&pDq3MHj5*k$n`*&3hb+[cJ y ()fWxvqr-K&-]/L4a"3H "WKS%oI[AA))h)YKxh #]$&['Qm;t먰ɗzԾgkηJ^fX[XY|͡Vsf-nlo"e8{GXZGA@[HM#@'?[V c*8Y  m}(2EqܨP|1]yn2I.7fV\:01P29=jAC-E'U T^˄|pXL x׻HI4X_."P?P{,)G㻹aa>Jb$ð03+ X24^.]+Y+SrSK:YM@.V|=U32˯z\̯k| ) >P9רCedBvqڲ6b cvt2h=D742>-l)k0f,M2k9ruܪk9JPJ Wc]0#x#1Z¸Sjͳp-ZXЀLNIŌ =/}d%5W LX>r[_ ි=G_仪:O r'꼇C;w(Js]IȲ^|xkeԿl f6qHf:} hT|žѡN5*dd3ۆYVA\ބ=ML]Q&HV)T$g! LbXR5!G04a0_K&((.C8r[(񘃿~ߎm?58 oPhؾ۰ <˻Bf(l\~rOhm[|'"(?ſy%8(c4AJӈKĐoW` /Ea8S*$>@i#=F+y_0%a K,E1ktZmfy8""vw==oiOrLy=G":?AEo6#{LLU6dhRyTׁ27InL\3[xF(W5z*BH>8Ou1.˝dZrξL)M,mQhfQ"q2g9L]!@ 5d'aM͑P汶-'2Zj8Isg& Μ܀/*˜GHgbOkzD#N+^79PS%Av1x>X,d<  ySyvn(;19 WL0!_Ep ɯ4 WxSa|+ԍ' *. ޷zqr7eMΦ,L\i'|Y*Y8톒rFuMbsvnÔ+zBQ#+XJ%_bcDt6۬x_$ax:|)h9j: ٍATDA-3ܲ*0뇓n;W֧0(FQ%5.ts\6c⯙iBW‰a-d px$f_͂1qd/=L`j+Yj0Y--XP]XJefHfk%鐎[{$mO5 C(܍'6J Dp'uWF뗞ƈ8r1jTӪЋ\$hUZ7훿ȅW%9o)OsUS}PYARJ!}K[Qj^V~w@ [h]+0#1?U Gi?W9sf wN3ɉR%(а>[~**nl$KU~ Kde*Y5?1rGAh(*AJJ߰9oEWW-E^ۦrݕw$\;ǰ;S[FՕ*f]˜z~{ΪB=R֊KMa $WUZR.v%sֻ# j 2B&%Sp nAlbg؉DcA&JEq7nfTQ Aa;ZtJbuT+/֨ dG@}H{HpqzTs`({g Ldr.΄K^ ޸KǃS8 }R%W(G[ꄟ;[Du\E V (q>+%yՄp] ECT{dm#ɝJzt~lLx TPz@, %U×6mg: 䐄MyFP**?_tl -fØQ=?*Ec6c7cK)S-%$=̖*N:CRc=)2>'Y KX/~^<ZБ4g c_\uyS̔m+7*7%'r*$@&Fq\ק¨X/'*':T{N1au~|ȫ$p`"tyŦx`ʈHv&#W]3ll?X/4@Z5ޜ%KnDÞ] rd$.]EeEӼQof 'n'.N'tϸepK2i[|WhQS{ Ⱥ̘7w4J Xe[GIT79%]AyDŽ/gA7EG 2J\> eBt4C$G^p=sSoexj[sÑPO_+@=MtWs +~X=Ww7`qhx&W7Qv|4)+/w/aTqOU5[:Duqwu;ؔb^WiˤVb]r6 rJ5#:^^LO@ ?iZGp:oX&Bs*'6Hhwp ^!\6=g ^1[@A,ㅏUF<R{p*7*yIovd >.ǥij8g7ց^`cӨox vk ida_)RIٍ%'{PH*?kފp|Q)WОI3#)q-EcdJ1*911Eq:83-MڨN-tl}"Zt4|(r*pۏb3/Ev0hF 5KI ]m F2S aTg‘)!/L ́= [EtVcQPov:QQ 2Mp9}5ŷ^t 79mwT܈_~ 57Q쫧vg_E%E/SI)knɟ׾zDNρtvyzç>WZqHuflvHhqO:}XTO)vs≤6+Ra:$ El!rm֔bfy5G1Dpԓ͚'R5bN}X\Ul(s,KNqG%]N\^!全_y[(j)F;') @tӠ+y"EM85 >l@Keպܙda3hU44Rs3ng Z+v4&|%'=CNB$XK̷/zWU^Z0aƅfThO@Eay("cftY6;+Y 7?EHT]H~M=.α#r#~/Q!k.}hHh&v$B+}OE'ɭk]`"$3?ٶ4&$>*)~\=FR~bB'Q]\{$\l|ldȿzň1 dFnGQ;pY[M9Q^Mt[)-}_דm!R:oCQk)?#`rwykYy*q6N@qDhV/s"q4.>W&Kszb܅wU땸f} &_R)ϽfUns稷`^r9y4:a- aQ` )NvN+)"O>ehM bCUx}9Oi+`R!N ؐI>qqd.K.r\ XnIK5nnK.#6p>>O~!qT%G($`SRdjzD%gTbѳI&H(O,SqziܢCPƓ>z6U҆]uM]4$KJj1 7LmU|n [>־$m\+WABк0\ݠ:8f\65t>JOėr:ەL=_ع-B3!8x56ȑ:>pɍH{HgKX6RBɆRB4њ ] oݠ(!$|2ʭP+?kgύ Fo#OAK$4#)taxk%^>ȫBqmٰaʮ䨧$Si*BA3i>N}oGhpX(=iDv*niqe\zpkQFܨj Oޜ4 flNB߷r6uQ΃ F< J^J3TH^)o j[Tɸ n7G:Wkď4&q[q a._*Srh4S;5ttbg(?1P[>:#h˿{`썈@w}ޜzh~fMg-k4.u39е,60B q'k7 *Bm9s8D2[}'F#Y.V wK }Spn/@]Tj*rӱ>%z@GѵN}֔xx )w(xy`0T]tasuGLXXʭ6q`k7l9[!tiJ1Ȩ CHyC1`wGk 6@Bʎ$*o>c^۽{C%K`ȧe. G4<GdI4ȆHyϳGY"=]\(&P(_{JEemX.ok> &Rb\~^<.TFf>QNH#@,Xe:kaxt?xF)Oi0f:K"KZ\3W5 QXi/,(ooH WS'sRn*+yʦm%ԿK (MN{îaȒ1VOB֭v"*PCy?q}l3_Jd)HjJjsǸdyf%ͣR|}O۞ܭ}e/O"`=b.؀W>X~Gdyʹ]]УhlVnKD\xV/Ln%CZ3 WPMĭ4sʂrxDL0$q'*`P՛sCO!-3Jq}|tD!" ٛ(e'hj[U g2^-|``# E9v+*9:yLdC|̡KՎ0m)!pM。cPtf'}+F$ x">⣔2..OQ^`jHobr$> b=?EaD5{$A$[r7N@pSϨ;VOzq'.H6xIIuRM!-ė+Q%ݵ;. }-D/SclqgOz0鑫d&缫pcۖGN̨a{"q{#F836lWj2+4#kppC kK|bfyw-" ZZZj_ʭ] `ld3Ə _Q>@S^%KBv_Q Y5¥I*%ɔFDY]`ĺ߻!HH|k9f݌4>yqlBxwѐ5wg(Z]#]zry5P2;Oƺ ekNِ4k)g]]J5 RZ+>eFzZVl*nUS}XL 5Uv5),ŜFsSu<3[#EMx q LXq9"bt`޼Sk9"JEc&C'ˎUXJ+ImDذRЬ+FN.zKu[ VFy'?@#t @3)*?,A FH5}fN\Ri 8x;rx}K 6S I f:g3sX opOť!P""yxaZl8<'K&Ñ&VJ*(jbOhnUԋkx+w6cH!b3#?Q&g ʈx7B9Sp  N *tN 1'X4 9^3j]QLm+rM,E?Kj?6UFQ4(2?σ]m>8 %p}a {Oל<5ʋ̪C춙(JHHx4lÇ1żQ6fGV{w9ݬ`( b eCk>x^硡IR ][>@ x lr0K Z67#S^A!SjFx\3 v[|zrq˚WaضU[ro>BtU[.N+l~2mǸ;B/)H8j.dvcFCô) (Kb,vgc*M߮:dHjY1ĸr4?1~Y}rѯ!N 6x^E}/lDž}Ԁ >NTs`Kqj.5$"r>A#Rh7v+9ag|(G}R$ X'׬R.lm8m-4z&Ю{N پ&i+xs% ĸs-]BrL|x PKQu` %&NbdC.u8uHɑ#!6z0twƲ]NBGgŦw+f J=p?T9X"^$$ P8{Y۱F䝾G')iVgj8o0[yҜ *iBYDCÁ^^^،2<OCL A`6;S3,tSrOVD 7j!hR[#AqSܑ4$]-)Berل;R}g$#lR4,i߳ߙ+8!Yq\D'qFc4iscfM~!<0ŀJRw'4!UR8GȚe-Ng؉*)7!)M5Hhsc̞nSX~Jդ ;@;(GKy6![+AAqS]a5I'P4E6 %I%az7ܘ-`Il7HO|´oC$>Ʋ' 6 Yt@+- !K7*/?%#p )ʣ1VP-~X=E:t<٘>w7+ K;'o w0XƘ4WzJz>:eaܑ2dX R<ڳAz*i0+)Up9OEz0;l4ujx-89@1X_dW %PMG ;3 y\UX.'0}bxsO2,T! Y-ȼV+٭߉Q&tC)6gM/F9f 0BG;E,}ρ 8΁O-|$agRgvoy(JxgΆy,SQjƨv[w0WJTܷvDslϏI6r\rtu1RxNzTvAR翟SfBw+j>oThxx#zXzb*qĀ 6Š:`T TxP_ %*uhHQ,hi7+jL߿|겪>ʳ OfUoKx ͑3fzP;XS خkfpPÏ5+83T|B.I }pQMABV ͝5y %kOo%v?5/Sl'gAwΛN9Z?[1L+C!5E+kHDYfqKįi>ZD/"!AfW7#ì}*˷)+I{ ^եcsVeZmfs]ִɻ]bsZhImF$q$[ꏓsĤ>,Vp^((3*(9} ̲NR.FkT7_aUߑ^/z5=$ ɮN0=t_ +[ڵ_ F"^=*hAq3&8\E0B4i ޟQ"~V׫[Pc֤`g5!-SPPG05TJ6ATme;I h`sQK ; YUϭ€Ms_J/F eIi6-_l?T q'@3 z{@AIlg`lhw0Ywer~c11Ȋl`N&9N&JbྐྵyS\x߽uJb0dl<~!6z@V<<*%])ܶB<'p S"X^n`x.~q ©YǕ =޺N0uA\'T^#2ҙ/y^PSTU(x}Ǣ9]",i\j7v1oRh;P,ɝ޿!Z 쭥c# 7P;E>м;t!x<&ľ:;3?-xa<]͚TI{jW#]C8.1x\?&$C-4~9HWCO QLz eh̫Z ܱ6c;9vRjpL^!}~. #RԻ1G_|wQPRI9*j[sTG!SXO,N} :GrF5.-2AMp1M׮. )u@.wC)[ QQ#q<}9>];>8H> ? [Ũ,=ɧ%ْyچZv j^1i!G;p8} z9#@gk*NoĠ@uaviwk] ؖkw. %s{Ql uo)Ӈ˂ X}KwRk"sEvn7xb=BӅ LoF%3ڭ [|pYi;֬oS승ʱ/eXᦠq7FW}14##UR2fd3E_o ȞQL 2[{ (;D(O;h4)G<%#ݪI*149 pDz4[n) Zq6.݇4w#m5>"ȏ OP+^Z.APzb&!Ӥ+7GZ*}@3 Eȕ ^y4v>rͯ_ A:Np>,Xo3Ȟ)"; nz$r5! u^PGq&E9, 3_L >쟅,9% [}!ci=~DUfƇy{,& B!r# 8mJ֮W rD{L:3gLY[iʆͺj[=fүAxV"jK묊Xc#_n< H$Ȏ(Nia#c;A oDM'"/i^:mΫTpvC>٥^̡*p_ћd $$#Qx ʛlANs۲zJ Š'9:ՆqɊ.QNذ>-lt kɱ//ֆ9il_6PbCKX3/jdi$K'ijnokƩ74W\r)_&JP[)9gaM%9D%i) 9Vo(`+i2KU}(,Ŧpc3&W`45B(l G-H!*fi3j;48_\F$ڪPh#>6+ )mf4ʲ[G|R0yLl]4`"N2x SJ.FSg+x6T[.<Q;kOʇ;T|Fi`qQʰj`j[jQ²@DovF0ш6RĸC458ʹ* pla-x} /4m #tm%IK)?[悬ȳ9:LAfuSYIcWw؊]A3׼W%1\;k%ǖCZ1i;tSZkAJ|І چB%8vrܛ,39Ƞt%A6)9Ɠl а簼lY~Lq,mXB<bEI?0Wm PQ!랎ŻɊQUYJ1_ HCE ]8e0}\G#2nOTyf8׆/xcQrP݇@r%t>83$r #C +|"5;ZP63g s[,12宸S+OkGlyjJIe(Y HRaЍxwn i.םk,V cg摯e>-ɤxL<.fiT Ճ}L]H3!V9aTb=e~J> јcqM"ώjC1 z>qt갞h8GvpQ{~BU\,lѻ{:wڰ؛=pHO4pjbg8mY/ %mPdr]I4]'0 *3q0N B34m(:ozd)H 1~.(tG[-i A̐ pJn|0U|@Pbny9),|G~:pQ"c$E?wGIY셤o&;Wk )u rwdn爞 ݲǟxR9O?ͩi>Bw3[2}ئ,xlNN=t>H儝% c&rj %L XXft+6y2w+t'|.‭L9zm&+ 2m;E(Rh$ݛ3,v}O57Ds+ +|=Ny{P=vI_VMR.E?4Y?_G$͖@l9#3?91\aSڏIlQ;uM{j DCp@0TШc4Cm | U LLEd2ypB#+P.N":vsOɂrQ< 0̬vDqvj2vgG0帖f(W}uSYi r?xXMr|R@55/_tX=)Rk+L|v =MԶ~RWO{~Z#R{l}gxBo6E&)MO(u%Nl~WN!&vPR5(~--t{dv1}'j3E97(QgrTcy/_ &Mpit%Jܴ8 ]piMը3VyG^h ˵yE-' k.V%եDj-S 2{]P_b-UyO O u ' d E_PkU2{Bû nǙoۓ/q;CVfAhpLpxemZ4_jWpfA4( Zū;us~Y"X,Nk Ug? pFZ('Zf襾+8IV 0G͚qw r'.B`1h[2Ƽkyx|4n?ق1!v7fn"g Ĕ!B[M Z?-y"ˎȤFH)}]uFeyᆓ6Oq{5l4uK /<гɯծZ NJBetV}7(nZ L@;KG,'rWz˩ˎځh.S`LX|+cUA,1ȶ,&fڸSet6&4N$ZPB^6+@YHeKJRt[o A%wQ|7fJvj nvyvJ_es]q/p e;|SWMF|JaA@JwM7ʶ(U@a.]8jF 3`<ݴG s^+ m= /+tHbbή& > |]-x %NP&>4z(t\Ϻ_DBokDdilA4 7{Q=LNQޯ62&Y}Qlj euq ({ew@Di&5 ;*QL$Cxmܡ+Ƈ<`3٪y9ʆ܍UUQ؂CV)-%`՞,OgU&';5i+YF_W7gXSzӍ sl-\q ԪR5\/GE.֙gw ^q>~ FBrgMj${@"Lc{̴A}#Kz:ZzLo ]A\Ք؍w(rGkT7'.oi3e+'i%}dYVϖDV4EcKGԐK~OcEDbGG"#qS/˱!L щk.R"L 6f QϡP| 0&Lve?]ɘǟǡú,6! jx"LuM'\1yG6<С1ڊ,hM^L}[>)ٞC?w̕-]ql\2p%v2DѠXq&[ʊ@{LƁgp/,*F+34iX# r~V`(EY|!9VCfԊ̅@ .eXA,rB+$W,[h]cR`QyN=G+-Ku9EbĘC/f.>CS@d %#: f Jl-uDNP2&tϡ?z9Ų_©UB 28X LgȸtVO>E:nk7d,$!sVπ]vFA !a"&f̬zf0U^"@=$VϹ^z?2v$̧k'3b,<ʁ7Z@rg1aٗTHߗOB\37}{WJrg{Lԡf{K5tH,oh y+A&ss/o;eςXSfeAqP;VH OLeE/E0: 2#0|jT^ / S`瀷ir6$^M{+#IJ,Xv]oik\IkZ\5nۮi0QɆn-ؼŖC\x]8\Pa;n;DOخf\{54-9䮲2 ^@vk#]G V')q ⫄ةp{,4+7B ԆEeSɪsz6b3N=/_YS2sUI^FR$f]u{=ҼHmЄ0ҲxU @:e}wAyJ)a#^WQt.eg$`/hMˡu/j.[HjJas\ZQ&pWLz'@sQ71\G'=Gt16:N9^/icMaY?X)Ea0 6t%^)`Q,MڐA$3^ AU>? \-c5BdZBi@e2ca@> 3NyME'b8WOz=dfSX A0"~D:La323Y #. 09~O(wUAGG{R:S1Eg*YN'u/R|] snBQ$Sߴq}V^  rIL1 "vA Яm$"9A(~hiD}J:sհ31:Eq3",yuy @`}g8Y>T NCI,`H"srW[6(caMi&bS+jcUtW.\•+HWWAqRŚèUZrڧ)ROΔ ~ G |:&+?:{PT)]dPe%8񟻯[s5o )iOnX%eL~V [+qra1Ι~m9un TMLkՖV-'Jf˄yEۼ)<;^BAQ!ܯF|s &lu:Gy?:=rC#^%\Ԉ x9X}/</.I, ,5&Wp-riy@Xu.@w`f|N()bu+d2,:9yR R*'_>3Fy?^zҔI`}Co0,;m퍙̭\2ָ| T >mmQ4hK!GIL]CKtFl"bOfѝf Ԙ1݈,+.ɜ G!4@lpS2l1-_A}=!4Ȋ}@y眏f+KN5tJTReDQl!KVETTp< F=-GiM﨩TMYKD{\ MT;~iJ 2c~dfzO3.4?~Q Cjji]Kv:'hʴfI&D"wݥ#F89ī@;&dJ*oŸ 2Yy֫jgz٩-Aؒ!õ\ޗD0t/TnsQ61soՊmiTv`|^@ \ivNBZa$,^k{S"%kZnxbJn9w'N5SSugdK{Bk͠V] ֣k'"q?BkʃfLE2E v:'k6t6ln_2=J.H!5"t *8 >'L4›A^?wCܻ4 /lp.lEtD7jQ`'hR18?F6=ba=gv0Q= iar^kjB? )[hd~!qDa\*o~C u\_l9@OY W?O⮼^k tnnlw}V Jh0o~`b56 tx[:­IFqFH^5 )\^lR64SCB.{4Kζ,qضu <%9|zs&b3><2}HM1 ur1<쀫AenB2[ŒαX/KN =(.ZvC+/;6q:QN-[zcwzj?$X%^7 v׭_BaEŞGԏV:>C9ym'ZAV&ͪftIUObxTru5.d?ϱ'VAbC1SڧѠp"1jQBU+:ָÇ^i² gr3X%RnsO%r"ӝ`y8uQd:TJRJ!9rkefsh.DF-=% b#F89 ɳR~驹AU< k:X~ 렫J/EI >qDjǕi_0Ϥ ,{8)z9Ճ"r!vu{4OimW:xa( 0+d7 4{lճ@qk0~,b]ڿY],_'AMrm{m #s M=?I':=?>?XPtTYh4u>#!"|l4]> sO~ X>s"3Xkw'` ( ,Y=`X84ȢmY* _2Fd}@>sLśtR꽞 hSQr[}v~ q;,Wy15ҼTi\~trЯw;bv6 DR/M&YKK>}ij0 „ r3*?hDFS\WޟYXf` qƊl /N-O/dm ) (h HԼjl>s9 :B"+3χd5d I#&G'uUqG9ap{4@-CL9@ŭ1WWEv:g4~BmL:~ei 3U9_ Qo?3nɊYd?CWE8Nr>mCz;L&[ԯ`z~I qfdw&ppڳ^v;'Y4K>m >eF$caߠ1KA>µ2w_ʩYzN3WZV\W? zF-H)|юrV^&T5P]Z 1) X-Q!QD!ga$sc{9># 5#ӱM ^ Nef]+ځj^U6 eM DbPvWw ȿ pqa}cC,a\ݷ|^恺(Lnm~E2]b&&Qv1`F[Q5 Dl `$Ɣ"1y~8]\XuTvd 97&Wi{ϔ(t=X]"N.# }<"ٱF&ҸqG"7MCz±%Y:Lr9Jl,gڟ|e J곾9a#A۷NjٷNrS@z=u4bhQ];yĝ0 j.w}:1 ^w4]یY"a0sR?x^9su={wH p0WQ$Jr&fM=92YWuZ M2' ;*e͗Lɂ|8,x9-un?O; 1}eMzƬ=8!HtYF&[yݨA0\n>A1ʣ#HpT8.L$Ĩ  rb}KJ+UE 9&nNVf /MVb 5/pXLZ" eq9f('3BC{FIW!Ob0LEWlr`U1 #KK9_춿Y|,VWwݚڼ3b`+Hf72zG|,9A}ns!H;1Bs1:H'3%>%ˌC[K#K1_}p2[*:W^ܢ"Xn)]ҧV"bO۽0;j5SjfV&z!W6D (*yOU)lSRss%KI6etQ(loe{F_l^CX5z`>v%c` T[Hf~uF>OrtJ|"h5"~9 Lq[|k*+.55"^zDI ΜQEoFRR:FJeHБR#>JOBBzh tZIN8Nn.f0ŕ(CnRíei䓻6xC2~0ɠ96 *R?T4:>CW; +  K[Vi6 eb4^[MEgb' F)D&e*P}Tp+"/h"+ ^ Q bↄI4^+2m D,8FeLo+Bg5l3X/ !Ɛ20c\ ;t]%e ?ᖾ1¨_*<|So0 1^#M1'cV;5O(Nyu#Ts461'fvE`fV%)Uh\cR~wY?*3@bQ"*^e,Е_RHŒM^:yCN;櫼ÿں^v%ЭB5qߜ7ȅjC٥*\׺qH <󐺲z{P :{mE.9j3q*F]֡f¹2:22J)$SL], "dԦQ ھYw5k&b5*5zdJ0)t2?1*"ohߚZp|)Sr-jq!}v[ь>0dit]P`qL(K:>)94gd*·a~I7aΰ_祏ÛYEo2^M߯6KYړc)..:ŧP"Toxr ˃ xD%mieAGz|D62H^W W& o4~Jp3^WNBKr0~f:|ĢP[[B>7ߍ[i"R[mJJ#y}"3Wa/ǷYO'~3w^+J*=H` ?X3X <;v нȪ㋑}T͎PâpLp `jd?bj$B5hGP0"9YV9 +)["RϤ^+]ݽe:E%JSi qIhkY`ȐQf\אkjb܅Ud3=8v=v=I(a)gc.bR2Tk`֋Aj +&!8ݙ ת/㈞^ k [k(|8j!r47F7`Q8 =DCER*7vGx#I+D2/AQ;OyUI:krlRD)s1)jQj^7:;`Ff5"})<,]4jýHop )r΃6WV{逌)E [L᫝HFEM2 *|ѥ,6gk8 /sSoXZb%g&-YTp̤7T23{[Kw*MLb! xҢ(&Гd[%^myjfYwE6Fr֔>MDreӡiװZ{q;/#L6 8^ Zc@L5QL?k$'9m>¨ʁу؞!U0j[(q ^fEE37FܮyAl+&zh),4l4Qwk#$R3jW:~CLjƂE-6oӇ:;+0TB/`H&yy#{T>I)][*=#.s i/YA캈oBHU߲;]YzikwsDܟгE EzQ'4~E.޻\9Wnh%}l{ T(09oЁ0~y }gxccUsriz۰7\Vd Vna`DU-]n5^2d3ga%ү%25NÁspkk! haF!pSD\ vd3qax>)%mw`*VAmzވ$;YD+: ӵO"(U֕J.Dc}&v3I?n*/ P;r֙.yU<l]41!їx@p'L ?6BwEuCoZ[C[aYM^gRSa(b1F"]O.ΙHK]O)䳅Y3oү\%|<Z6^Z1N$MjytmFLmE1Z5d%N[W0 ^j-|[ 0V!L:K6 c=c] 6V;ڿdu.۷d8jo|l;B(.M!tVGĶ%,hoZ* n8Lp~j*yfe^ItiZ{̒frVAw€@MOQRE΋SIe3P9CYt/9g8Q4ÒedaYY 0 qDUH~ ~]2>vA\ i:3-o Zxv{ 1N'Q'WV84~iCͮ};,r^G}PQ!_F٤i 'GSWp#8wןIeK @t|Fq{Eֶae"א 7׵6b+;Lna/`r5׳5.6?/?0d^-e% ŀmx6 t. ̪r`\s -PG2+w6wiB3!OMlZ fM{ jG29ep dR"ܹ8QOJHcӔQ|ZZj|Նe'8`Ƈ{5n)r ioٳ.#z>mn$uhB-qGLJU9¸[^wJkRT 9ҐN`Do:.-.)#C*bO޿|RFN`zRw(#X=-*0zt%hb$)"q.== ߕ@?.2WK&2]lby0'NA4T*|Z҂|Ĕ3u- @ÛkSr8-g^(׿N}6G'kR=I7"r/u#!2mb iDtbE۠}.zPpz5j|0Csg޸PԫkΞKe_3gUTu1bCZK3/t=[>0t;>?\܉|9[-Wƅ?T \~2xV)m"&n#>等n%I0lR36%u ;Zu!`) Ƶ6#GEpKv0D\yla* 6eJ~H*p'Ekڛi0i!>۷(<Ɯv أVp2<׺\O<+hK "o >@ȦR:@!޻F5.Yht2R^*"ZyM`A`?S~M;]S5OEͺm^,QVb4q`[m.Bp,e,?EF0_/7 i\ci 9.&7{8(Dæ ;HZ ޕʾ|~ ]sFTG Jח8kd`Nˋ{bv nԉoߞb!@V$(uq- #'J^z7ZO /vR̳w\ O`)@FG>5ŇiC[9ÊTs;s{ Nm.4t4- dJl/pL~OO$G5Q >zj1(IM,F@jB="o|8ODrzLq9ڗ..=Ύ1."ʰ 5\qF9B+W >tˁfzcOxNp|jzOSi%ecCt\tm[5KL 3>y&C@ˤƧ8Ymk2Ĺ5TWCqO~6;hyJ YJ.y@ʑws.M^9moleWJV`d-Ap\^ы#ZbLy3Ohr#6&s@iзWѥ*_"l vG68.PQ.&8}6E<[3Vv=OdWzE3:2mG6UWLV8@ X/]Vg!Om\}.GuU-w C!.a~Y2w=1~xxesܥ=LZSM[ԯf˄ݢcBpWʷ}BV#q`WRc%7|5%٣oKp3K8.@T\8"&4lkh~}sִxb`}*^K90@w#xv{Q(o XaC9[̂!+ }&콭)C |Ӣ0rYˌg~eo&bEBv[sB;SnK쾲 10`';-n4on&򨛃}^ [n5A@ wr=1FA^RQm N?@iH>1ܚJ$R'hJJBI[nP:p̦U߭ld ɥ_gPVCE #"y^7O!r//FsjW-w1Rj=1OBVY@5,UrMO8'8>ī@<Omq*ma/g^|qP^ҫBbBϥ ~E=RXn/PI0as.W,`LI3 z|1RB B>i}:g^}">mW:[i&$V*XV=I8LXHMIP)?J'b\V,v~>ɚ`_L&^®r 4<|<0 h  )os@p."$As/BƵ֐ps.>کMIRB<+gɱ nw q~βlǫ^tn/xw)cNBZeE:*| $N.hCNJsk ( 8皇MHv4 $7f 3_-UK#W}oG8K$݋!I]Y34y\5 4w`M*9eQt j2iuɃC%$ކ S y 4SE6>7[pFx$LMrzGAip"mʼn.*%r62^XE+{=^T#"qB'4E֞GغMad^DboYe܃/uo1DŽWʺmal=YOŜw%'59-Iˬ,E I2 $H}b؎0qIdInJ4f}f!ۓZsEя^h^gPs%hbJOmpkOXV`ĝ3$lZ;! nM SvDz'nnP5ؙ"pZFwup[zHV?KJzr1 z_ƢE5SKȾL#[GZu/e爊,N'(k1&F^Bo-`jM;b0H鷆G o CVCbe@oz5X¯8N6"^P)8`拌ą*NMt/caFJq BnT=Qg4 o \mq \yfp'9j ?p6zݵSg Q"ӎI;.Z\i?-/Nѣߏ_e)9onFȡPB)NۢGP~cR:a uvcRNS)-h?h!Y[hOx ԗnVF nҗtZ5zj+c_sXX\uꃅ Zq &$Q0 ]QeӜ Qr9Hx(Kmt_a˩X5s-Ef/ [ݽ+?N̒ s @qzWZx(ޤG ܡLS >aZL2 Χ;M: w)#hV9E=l4tA`U  M{L#UQk_&AQ9c\{çbqY[){3r:u߿퇓a!\VzݕWI407J_'l#0 xlM39'W΀ @pWsK|^8VRi/\U иקdUWu? `7L T B_i7-呡3h-$&_J Q`%XĪڼ8כ T}(DqDAZ&* o3.UkC25ha1M,XXDkV=+ s02ηc)Eǐ 6&HXn 0_.UYuӺZ[ r][ɤH w';q[Y@!kvBrEjT[fVJg?06 '{EDytT) 9\`i(=1{6,z<,Z$+Z Fģp7>Z2uz.ގLxiѯf:^KTO+,e1ͱ˟]l%*!Nۇ=z`٦@}ZEx7.-2]Ӝe”!3U)8=` *rEyfD ~.Cp"Tk XBv#]qr`!)\+;yׯw5k$uIDɼ#G Rܣ 7Tz|["j|NƠ᪾K(}D>[tgpnIT=9a}ui6!WbE/&kĿ`HYR@d}]GKnݢl|D}N>mr+%e>%QREW_U*-Wڳ򢭧GQ:j=4, Yj1N%˂N]!('7սL}E*,)Z*(a) "?;/~yÚOGN.~tU- Wust2>QI{ &^KWUzDO-\ZöVΙ"2o*lӪ`-7Vchp& 4~`L1P׌V@I7\Dk&joD?qh7ӿmmzNMAP^R]`JDksڵDF뙱E5[ԙĢ{'m>`Z,|]Dq0t ,Iנd8xci Yaw;75Ym?5npR>0>'O@#Sa=6oyQld%^fDȂ{ :U#]N_PJ197lˢ*01քr x3d\co9UK/j"⚻3_Ehr[YJM /sz1%cE4ПSg5kLy'F@r=!2wH>8ׅ84[ۻZ>:[QHgcWLʳ/r&Z,1ֆˤ Vm}RYBN_N\+ Im7!@x0lo8ku9Oa3^G#T!ȃrFm "=413ˍ B'q&Zzj9DOre<9a(~ݶp-3Wz[rK>ׂ^n}*]W>npR0xyZPA&YH@69W7cĺ>ikR%y \X>ޅ ԯ69>fVHRQ>HbXpGлGJRgA+ C`!+cAIV6W9t];ɛR8`>J3p^9OܳMAtkH\8:2 Mü?D+D7ź IstNy숯K| f}M1YP,Br/rK//:;.[KG`jT+u[L H/V0+m  uDf6l2@ZCt :,J#{m1 WP8#ϨG 1b#_>s-ae^w!u-LqəjK2!+GkPaRK|y:1mDe-F;!n_hu==u-%n`l幍b!M dytb>vm&tu3BXUZ|iJV/=a֪:mb)7w{nP_Z\!q3BJSL0n{HW,I0ʙޖV ZxY*es5~a{YkupDVm[g2}e1܉#F-^[yRawp ̊$]{Oޫ㭍:;>ĽyVo.xKT IH6ZVd$u'P7#HCV+:ڷ_yxU<.SlPPI<׹Qd28%qXē ވ1cv$ٜwY݉Zw}~?=6D']ׯ«m*D;aq "PkANv{ @\1ׅmt\|C"EHk{fr[CtGGT1+-{ 0U9t6jٵʹv wNdхF!ʽtyY췓k/[͂ > ݑ|GYkġ6V~I}e2( 3S̰dOKkT})*AS#n[.D|0(ΰ?MFU9 fatq8ߢJIGZ.?L8E<dzҳc~W~xmʥ7$s 4ìp}hL{lI k(LS2ːBe4 $Lqkr<@dFm u218_ Rآq m"Aaj3"_p! ԡŸ͡}uyIn_Eڵ LWCvT"|O T.wxv$p &U-幟 c/2AY!=KwF'c(M$;> zڞuه2ՓߦQ9fY@ %ذKwBl\Zz| }%ŕkʳ,ǣ4]Qfn[L wP;evf7d=>SHBLIx?*UHO#+:3oAGXq.N!hH_i9gϹum~%@.L{h~MGnڛߙR8̲u$+TuZL 0*0ݞ)xS >SiwJV>F@t Mw|?,Vة֒-#dMyLNp?H~;o/%vPb|/P$,v|׌h.zO^1;XML]]Ǿ A N.1}ɃLAQn8h4A}DK'$5ɱ#]8%l,2wįOuXhfdC4 H&}7l#LcЎ4|>ԼO=^xa2b%_x=11yOD\rMsى537Q,ltտx@2WWK\z@I/*s s3Ln+4jXPlsǭ5A XauE?m'U:륩u}AĄʷkf@bsoTi?k(ĽsjztPjf Ֆ8!PmCnQq#{ٟnfMGvMQi$32_|OZ,_2=NyЁʷc#¸f6^$ lx-xt ޡd!D~xQ(/ [ 6qw f')#yFR$j`'yFO+$b\]zLU(.0粹v4?}^{~M[q/=1] *W>1%_-/3|V% N3LuIO?ܦGy}(|3F_+߼ Ҟ(*;׿a7ϔ '-Uhih7c fyL gC'Vx1dF_]#wF*d])e/Ր&7oq% MBwOw( C(Qq5Vi5xA-%Lm$Nm`.60̳'#emlh=ȁH72A`oyq]tƉ.PP7 ߻IT՚wWy*$Yac1gۥU[M^]x2<]rEAvh&]6RDB*JITgxtYMEE;ZP۫ ]]Vz1@+kB"6|6Jq~2TH`iV,WOS$ҀL"oOCqUF cpUW}Pʊp]A:T^T\ ?Yd\g>$\uTmOHuW3Rc}^<{ìPxp_q'Nɿ0*@C:,x:G%d=Njque ^j7ϭS zRMۨxz00=nc`.JTp}x.xl87\Pls #$X9gU{Lu?֭,xAd {ee3*f*H[!\wynIN?#zo8l_ ef7x@my:`HCqGĈIhʺm&t89ӑL@s%>c=7·r1)uՙ$A>}/2$A8f`E{7'T%c 4D =KlA@dpkI["ƞْ-ڛ dA4rLn>>J3et }8M P g=d-Ũm 6L~q@|{W-[ּaCgEQyS>P5\v[j[0T2u46c-n_ml>XyM&+ěQY7vZ+8UR+bX'E>kc٨(`iTq݊\ՏEۄ>\ʵ!mxKH$$l5GAL9=Yؿwrh]3|BE Dt 9+zuɡ 6Zo:_-9[yTKeHVn[N]5bTvqׁcI@ Y𗻙N\":! }%0C]=YE _4?sh4 *wQߥWsz#]ew]ݎ!A A`@$_g0ydo# j$ P~n!j0xڳ znRع!+Zz_/d'EMK9>;r.ntjzw»2. CgЅ _nv~ DU:GIz~؈JɄI\Kt%jyNÊ1#A8`vw2wQ[GhMjĈRA?#}e\sζb4[$dK'|\Vx6?srl-W "yX{XTݭ,|d\H>2#TYHz ',JI,9v^iRp9߻÷1 r;1τư9{I' e9xDq&$4׵ã9` 6g3ͯbP_/3Uy{I Zk..b̥oIÂ5@2Oئޛ0ۋY0#Kz%98eXSI,s6hwSRz3ATȳ#q8, fX,|!I& C /V_9 Ac\}쇙{ٺR'}$} W6)e. 󓊔qk[;yJK5JGnzJ|t:$Q\r`lC߬6c #ם@}ot6M)"q҈`hI[_ntN\:ͽAT#ɫ΅wt]p^K_JJ591$(/E(SRL81~g~I:Q{DD*m򏐈<["sGǰ!L.Q8j%+ɈrꭔrrCAp\dt`˛GPɇ~[ȠZp7"N42Sv7s ^xQl|SLI.Dה2*e$Y}c+g "$kh+(B 3R{<+"pV2SuV39y`xU,Aif!PB[a4<ܵ)Mp($ `(t<nYkukǮ6u!BV{VbIl#D7ba|o$ENGlE^A/|ڐ_B]35<::9_dLɫQͼ#Y*u(a2#a^V?xd,ʇ߮DREY-{f?b?JYƼ+*NQNd.=2 >Q0P`sҸ3wJ\4mJ;^q= $ODK֪E}$sQ6)bVTE-&VNC!(8X@Nt A f8Uꢤˑ/Wp0 ASk0 A+!Ɵ db0sHR':F)|72!͚q>CYV1XʕeN;[ZAO[4%W.Z%6N7$Zv[~*':8ŽOQB/98S|Iѫ!3 `5b$ߛ4t8%,Vy"y4 RlY&joR^UK)LsЊ ^F}j'$k5ų}+=%Lo3ݘͯVrg mR)3y5pfZ'Ϡ.Y,n+5s*n[ϰrV$GdyJhPqc,P"s"fZ/n{Z[?{ˮab@J? fu1~ſ%yFr/Afg&)+jǿ&8CdaYbsLX3 mm$喽y;P%ƔشCArUV5bfgp/@j7 PxV~S?^.UgxW`ok-0S@cJř-N<:reί!q*̝'T^][rjSn asI6̯s8Db JZ]O yGUcāy(>-VR'cV=J\q uH.ty p~b5O鑡dk{4=u2:[*ȏv|\Tu_ @RU7G :"Kc"PSK#{ m[:z\@¥hDehk F9>чL䰌77ɒ"'<*vCza!3硈򈿞"X`ngKYp9[*fڏӿoy oi$$PK&ɕe9v z2 XyIn~؄= ^m1ۀNiNd? "YkUF7|VzOX|+z42$ b250.t^{0HGd6.E9e ꤏ<*HMejCMDKL;ͣjec#7cعpZfTlf)'ݏp Io4l_Cu1)Yd屾$@5$H_(c,`ԑ@F_,# V:e)ۑOp]}9 NAmx4{IiDh1ٌP%E8-18죤p қoyh_OeGCGg ^emGҸI԰k6t  eOoӢ%!̛eU|BSu05.d]r'GLw?pUCk\<Ha9[oPК:Z&"͗FLܣj3ɪw{>3Emgb1w!HL!ڄzmVjvhΈAZ0c"SG95EFt7ʚI82zdɣPQ%eirF¼j][+Jv[C0╶=Uj-+*]D2YX$pT ~WOpc | H82i (=H^^5'`3ΆIAI -)SVź(wڻף*3X$]8yr k2aBܣ#@9sEqz,G'o hQtoզ XYb΋u`x{kf 1s B&@sD41 1V7t }Dّ9 ߗ8(Sxh r80ha1>A#Gd lj!Hڐs!ת~ F?ȅK&!PvLcct["H>tC DT5<UMs禫MG|hgMrn/;3rY5d$G١I`Z7-f{h%mյ9;-%[{Qc,˔O5;Vddͳp<ƾS,N˅}\(iڦoTh3ێB~L5;b HI-_9?T"~`ҝLjs Xua>wGұm鿂40baxJճ2m-NEȗ*)Wj=Zǹ=$b_39J^gDຐZq>nNwӑ6WCU+zw۶߿ntn_OᚵS#}άi 1-0b3C.bW= &~;¿5V<5{0 JY{Kf@u=}`ݻ؇L3Bw\!`+/NhK{eErv#Ekt,NRUD,1iƙ5i_"(g~),v, ²>e_f2wyNQ[ڎO=n"(upmq\ >dq4 Ig01뉜7]yM$حvTEfQu}㓼}@_JwMrר撱:5 RU!/0wqE肪}=aj.TMBX\]E"n7%S~^KF]Z1H'?6>TOS!j۔2a/T 1$_a㓺SrFGRRclgT;L İ= aXU˜`02 eZYYnJoFy q'CUV;J6{`ÖWq6$ckoL28 c:v'Я'S@s!J.])cLp< ChYu(b4 \6,4#6ٻ4?;]R/p@+d/ xHbR_?SEWS]I,8# T-`ԆPA̷1*K]Mu!ؤʣ0~c\S,!D&8'%t{v|}Y! x&RЮo,THFTȷ4EϺ7VM9ĭI}x2s*Trei vNtyln@YD* wBE=ΔXi0'Ao,%n2xBO쥻x!ǭ.Q֘`>:+MP& 6}8$xY&4xygϧ&svT%J:Q3=\#8=AnjZ­&TZ'o )e)ƿvmOcyy}mQG1OE"؎4am+MּүcKfpK\$V: ( zV0#pRs@a5Lv*90C}OGx5̊); mّ S5…̥ "VXDWIƙi@ܜṁ73/G(7Z(4Š$o4?>vos|v!\Leo38+R/f>0#dPZ=clj- z{EԳdvJWgHK1,;7귍d37ݧ|%M$:Z^,>(VSPn$Ok{#;Ib <.|Jx@5~"gDw|zOA<  iwe4ZYjߦWuw3$<]gNcPgP1zA[99}=`lõl|~lD$ɸN{m,Hhp#آ?Իy͠ `vr"D)[('2;^ ᳓'vZWyׄe GҺ&Pbo_2Ow֦iX8:_^ J2yںt&'GVtج2HIXa&'PTYkmٟg9= }dpУ|&G21c6%؀C +⎇VrD:PvꄡR'~ffjm5_Q8m+n9d-2mLTQ(34t WgJTv P1r acHwFXqHz(gV 27#Ј[ȁJАw6OlGJZNEƏ繱{D\(eusT"1-\l5z䪃*79ڡ cm{k~FB?l \Ќ~uY/d1r,0*?vy6~B}P <-1]@R'JeQ炆 nfW;fqD<_ E$JQHeW~En|l v1aO&6ypFłedU>B+ 2O| #RYR/hEȳ6{T}=>0#P]E/yd -^H7WQ&*UVC jٷelL\=Xk1tEA^ᏑJ%O. i6LI[ 7!kT0R;$3I.xcG+M6z/N֎x2C]ZoQљ 1e &OZN8RvkO(-YB 3=VFVuG@v\ $2sn* :β2V@B N kBBbW {n&BHlߒ%%%+n$jQ}mDWb%vGő[)>1 7[xw—]Kz1߰ۺE6P)0u+IGgrZes0h,u7U"$Žm-zQ49wMU%ce2._}XR?ؙ(og:yS ? cn[?5^\p+֫tW^em4sA?u\n]ᒣs2ߣ]8 9zQ 'BLp-uPUH?A0!bCe9bĄNRK+I-mH/WJ j,0`/q+mĻ&@{ZFA&FT`gNJs҅8}l.-v($@cWźW̟$h58 @ >r̓< '<5ok9x%*oIۤw68;>b~q,Q t!JuI]?xcUX#yTUȨ8 uOנ= */ޜ^ltd>9.|kHWbmZRV8 $*KG+$nOJIm (W'[tp"um2n8+NWDP%6͹[b,s^o1eT! %DV%3F XβT0HFSÄS1PPX jkpV"(#8 ڠ2~QiVE^oϬl*s2LQ\F[C~MgwP4&o]MqW'Kս\9 )邛;ַ*4XJ]wNGַR*Fqܻ ~A"%&@ikF2ELbגE͍1jR?waS>, %%M-}&rwSbs>@ޓ[T,5W0T9 F_,~,[3} ϧM>9kck^%(Tׇ2.Ep<2lŸxӥ@d3zCqkȧ@[pVdJ^ l֐,&:F"s3ROӨR {QĘh!b2Z=|Q0H W_`=%嚴\_R/Eΐ䬬xjv5/ANqHhﰼwe 4Nܚ6RM| AgIx͌ C˙4,QWh "黷(ߧ8n 9DάKCѣACH퓃gBV;z˾cj[v(TgJx/&UHi\H1}nY-*ScSLN1;GH*ߥ/Tg +kD 1jz❼_yp^+_98F;RHSoVIMR+.Gi)rb ӂ'zJFb9[~J@hKEL1$LXhCvR{  ePP028ڃTS;@O6,2jZ7p u [VJIyՈIW=8Cjpe+Ww>>n /*+X9#XArpyP9{BCi>sUťٰ梿͝\b;>ƥ :jk> Iі6mEh/L#{"cN\J ԽWc#U]ZX8P, w]]"٭Z{s l4m^U^_F98A!i9.{sc-I+_I)%hҲWT۟)Qt nQ{%}psBMkJա0hQ䏖c O;;K%cn~W #`"6^m$ w r:M̓Ӱ–)3Gyym#3#N]-pL/؉ bfgK!_F6{$l.L}O[W,AɺLH1w~:]Vy-|zd: 4& *jkLv5&.Y~t^j6DO XF7s&#ұ)< n4IW$B8B]aB 2 {Ęv&"4Yi-&`߻"- ].3;OTIJD(8ުq}`MׯkZaJR*; RGDߜ/"Tga) l朸Jv#ƽ^q7'ؚu@j7SL0`LbtÞ%-Չ~#BKHCrPwoU; xz ֬Y٪D'P' F.2ReaگsPƥy +Zpr: |eid$N]VPB>kzH߳09 Lk)ҡL $d/\Psy^S?A0ZqnWųvv'ԍQMIWJ?n5Cy[R5B(nG>6(˨aL5ڵF_jeBk;iSUy|5p,z8鋂E;- HO':R  1wcAW \1zS9+#`yĴP>{۱f=VeOgzqDCȀC+nV])EXS4'bo%tȖkڥ%˰}R*&83ff:MDz~b>%+,JHtekf=gd0Dʪa^wS+l,-m z4X)z}l|p ,](*mܿRdhkO|PcM \9NJZ__i5Cfj~n[vۘD.zAٵT6P쬑n| |^Du(Ӏ $N:(nc#$YH(청?w`?;42Q;TBaw1!u[o,,^X08ttwLgV<Ƕ L@ߝādʺ9EgnhY{^VM EC&<( ,ۮFע{ly9~$RQk.nxBs~P;Q.{CM_! G"%},9 r+ !K#n>v.ԏ璡8ՋrWs#Nܭz`}nܪ<uowA(wnO(Rh,K8xWԣTěߥnbP@ㅋ8l7BsQ&E7V`L-Zi nj={6 #_j:B!1pp;sL՛.; Ǫ<NeiXo.,} Wa [LE6miu/f ;9ٳ0"0Q盜GFnGF`n n)I\Z6W+.17MkY=1U} 71qk ol| 0߰>/Z~4p@Kp*z jSX .Wj_nM #?kEjmJ%_.EΟHA3v+ܘa|kϿD[GHx$$@D--~  žݗ_ɜX%ݺቌ#iMXoi›|$(_HpK"D =Ö11wǜD 2uDoD/|'R 3U,Gu|#yί}XW~dX#q8^2u!}kVwEgLJ#%bģT, v {g m0,!~t nBj NVTgǴkqH ;20+B8hKZ BVF9v[|$贓AavLLqgqK-osaHcV-Cd52P7TpPW a ASuKepb뮾;fTT9b8>ryl݌NsC^j?VAI*r0xF@.xOb~)p@k.|6PM]>fK>d#.ĉId<sX۬U{O;q,h|w DZSгu|4 Pu#$4ۙoL`k? "`Qնq.JSOt=cRJeuTjDېF&RTV~y,i /i`0۲k`}3&9nYY7p:H HzVH76UӁA.wg K$*!ǻ9k(SОS|%_'@_y}ɤUHod_ o4e߷!-dȊ26LEvm¸BG縁e,(c][ O$ H lQKGޡ Wc+@|˔E's*欱ZUؘwĜ[,Skt>W{2PP6yh ̎l}y쓊|k+;%rDI`S\Ϝ8AJ}J3k灋۩JjiX.bG) >BvW%7R./B߅֌֫;aUqpToj_]VE!K=d2Qڽl.\G0ʼndlٕ;Y)R͛˝Qjo!&¦M ۪t+:CI쿳60i_!9۫D+1 AaS!?۸Hrȥyn*YK Q;Kq mA 3'z8|~=NҴxo}o$d]1CK&hSW{Ht0q6dn7N\QS JCJSoeyMDu#j8JDXx.Bbzنxwa TS2n9DOq!6'jYhȨ80jkjbuf@ckx[vM呾tgwOݑNVa IJv@Ӝ5$*e6ͬݨa(4;1]0\XA_q&>l+40=|0%xb_YqwejUek7Ǟ WJ S@vd+Fv|+n5gP oyb!{N8ZAkl*ӃՏq=yP_˅4xmp$Ed(G01TKrSv媔Q佟~/yFi2ᵂ!qYl "j) 5`;@ϙM ;^mϒrHfu, j|XZڕw8k(7MOsfq|GqwQS{/McH#,aD-'#j1|PKYkAꗴx5/N) Tmk#$l2Z*Y@5'c7jǥs],su <-%3iKBu J, Gh*[Tbs.Qz< cyAvyKeaIxA+bMHh~>YBA)RDR,o!9:[]]3< & z^,c _(d4| k-;g!0ݬ%R?J%wM(СxI{17gғF*{_VB.ݭX*g酎/XX— `k"3{ } 洝Z ȵӗANml@9>1fkͤ_3rR.ow:(?^ }?YVVME  Q(Zl/9^XµtR KT_eXE=D}Nڣ [w5?[SRw%*7PY;dQËs"Bi<6Vh8&+@ 8D;JKk&qM36Bj%LL pu1)+ +SVǣ~StXvim|ZD[zVNp~GVswϼ(evCo'}͵IaؕZ6A(\;X=hJJf&r-'yjR>PŇ4=fELۛo?FbWe"#*D/JI͞,=[XKw0`ĥrf-N#r,%2@A1H7?utWt0fBػε 8ca'-Y +XyMcUJ;Vj蕩t-x&T 8/&60dRl}N@GZl\ B%>Ǽ0:",\A'NJ=EPcʴ>7[ԕiD1>Cb٭uKׅM ;p.`XO~Q3D|Jv|M)m>W-MXW=4bcAkc'@ϒ0:!˯i{Z3ٹCQIMg,Gn*9J}fk(х5qD0ժyХTCɘ!Ѽx2=3JAq3#HQgwi KL (AJm\mA.FW!$Aa<ܤS -Bܶfe};@FelZf(/`;X;nD*N&;V8FT1?c֪<၇P2}@Xq7J̑c&/Փ+Kg Ko Br#uZAjh˨ߡ'<sݣY NmV%^X厘Vo++0`/wJ'xP7E@eF>έ .#ftwׁ2Qv,s?&+[>oybnHKI'0E4 !j2#m .Dx0@;[+٨HiEME`\xbePO\ 2ŸQifW2Qjo= & iM r\ R_h="-aHK&r퍦9JPzB&yĈBgn0!nIØ`Uo6`%x ՇotdnPM S.ZKP}C:'KQ54cwB!Vgj0M6@ˤee??np>$T:%żh R4;6e%ϓ9Q|2ju^U /P;!8V&1,c#%޽Ҭ,2I# ػ|YZUdėعQ8Qadq ^SnO~.x i7I=^Ö6qaUT,[KjZ bJ{*׵=ҚQ9iobF"i* v,r)" ǖ)-Vt_8`HB+'G,HULF`h:\`E_b9I2C2VxZr|aP9[*GRNE2c{)6/!Y&w˜sb 5,Ik-WDmE^ MnDa*GI Q_whˆBI$C(V0'W@jї511EG'})G\oyoC 1"( g-Su؆axA' 4葙 )3;}H+=(6%bnR&qx>JpHè"q+&-1IμM T7N pbUt6Y/0 sroV\$BK%jȎ yVS_LOqok$5xB2wINcۄ GU8e~yN89z0dM 1ky=M!H/>DMI&"]ZQ΄8uXT^ vn/T; @A3wC1vs$bHX/gW;aӯ <1n&"c)KV8k96&n[}n/EQP[ǟ >GҌ!FR5h7qXn.sG|Ya@ sfSwq2V+z"gwsdqJ갌yekx8VV0|UM0{F8o?;utSxܴ8SQ)?K9fV~Lt8K#o.ofS24Ø@ ؃_}7::yt2K?ڴ\4 Gp`b"6'+s|wrQ&"b/>rSO{MU!\1˗SYuv\ei%2EYcAt#8E#BS 9|4 F[%=U&׫ё%r݀-=j0`EfD㊈KC3]ih#12C#cT>҇@YfP: VO'H7 ;d #cQ|\ ug<¸2To뱨}#1ȋ7A*ʇc=_\!a ֈ~F tcKta`{T=a$I\;='|6`JF|فBO`oЬQԪhNJ}?gY:׬Y7e5P3I`X$z#,z[4f@. S쯉&Op$m;uבOiOdQSPzEa J@Bv-l&HgT.;O{:$6ze1D 1O[!f)}9JX\ڇШߵ=69% v!JἦL9`9(Ki=Rdg2N).cd13FlXd(Vt̔+Liz&HV?4 ʟX2O+1sn$_4g۝Tkz wt‡S6'P6_ 4Db`cc`m-5لm8eA*옷k~dާS6\#M/h_&F4"r 2&RW;3?$A(G:cO⧱N&&BAՄ~ΥHB\c aڇ,K?\O5^# o#'qNƴ%(."חDT} ⣀`-:M#x e̬l)R7WAgr﯆[yFs]9dd-bbòΎ.eWɬ_0 >^۸ve@=l :Fz[.7 _M~T*4DtM1W\!G_Cb1r.:ҡ!]>:5+7| aj dx@ϳ栨AAdC/CLdVO/ZlagL"+̂\E9ȳ %n~U?"n1^b@+{`*Eքf$-P ߽x/hg\&3xn[= @$u,Jt 폙 ƫѶ?8MdrQ Gtyƒc ?gqUrц!?|ɛ#wHn_f2PW[pOTAȕ>F31î,kUzE zpx kglcC9ф<;}eg)A]laEeڴT!_e(u|pwI?H!n WMZk$p[mO_6\R_rMǏJ*qTLDtH}._|L C9#Pj }Y^2@2~/~;Ŀ2wD7Zʼs}J98CSf8eyڍTp ۂwkBy2T@q3XkڦlwkYA`?bWQCYҀW=8V4Ä ѬtsC~Cp/c`mDɐlp=G7;{v &vE3T1Vo džY=3-&l`' B eqd)T4Qz.KLFuWgci]i+<d2Oᣂ&92әnۥD%o[ddI:ygRs;ŜenP; EN?|KBj0+N\g0BD&bhͨCXp]?}]^qǙŃ $C$pm8cbѐzüEϵ?< K;Ϟ0 ] hw7؛7[~eh A^ggB=RZ-d|[+!0XDz\-M|gTzROӟ9qo3L#ոbUV$,7Hgl&!䴴_wI7ؚ-U+Pdk2se%xJokuKФHjC+9@3etM:n m֢g!9=" "67ozM 6š/B-M_dң].@;[raCG4q,oDPINP [Mt+0*^ťS׊&0u{1٪Gh.rI8@CmE֨GM#U.⑤(! ѠK| ;9ש6ڑ?c  ?2;nD[ KWoڋp8)0]kbš2D7&nȫV /GaX#cuW&hOc]ܰ%S)Xk#> =|O/m< {HxHP*q~ >iG. ۖ ^/R2azSС\>  -(a4pa-vqN2JeT·qAZ|5=&A9(U+6sSq$^^1!nU;V0;HFw>2f1&Okg@Q#DpPZE#%B;T_4BfCU[ O!_- TI WE JzZwq&UeXhB*)CV¥ŗ,)WI>̘J`P)|Thl[WJIv4T>+I7N71cZ˴aƯOPG2~.u]7+nx05Q I.Y": V(dzOlU[Ld~r`dNW;.q2-E >GM}+N ;M<b i$]Bd!δ1'md3rzv _YuSutQڱ SIl/8(ȗlH_GA8NtT%gNI61^ӏ%_.vkh8.m\L-a))wCoڲ\[ȑX9MWDNpqie#3})lB8 cMƧ,-ǿma#5ڣ+x5)ѩ)mt>bir(+/JC'I"qms>ٿKGtƯ($"M_XTӺ bUj쁮Ȧd'3} TLb%u>lNF`B]Y& EoeX[]4Q`"RXSӳXOboNjRhS A'k F)z]S ImRֻͶ'㸸YՏuetQHM<a Āѵo9p6=>Ô9WTd !!6_Xq]aoέ/>Ej~51jk2}["%2N"S}7@vA/ 3Ef/prir ϶qiI~湯cM{UW`]8@Mz {a@bo g: pH6(:‚tq#kۧa0^g3\k.2[8kHHcހCj_p<\9e+Q#ϵEobtYb/TV-\"w:Y[yYY]L0EY}OuF8ȊƼ'[mY}T\%*!z~@Q>iة,uo37P"ݛ&quYªXdD⸙ANq!oH?{?B;,9s{ֆEU?zvԝM&!$P޻& Bѵv=#PKusf8eBWV _Fؿj(u/>H5a o{,dC3rp-I??N &bxBZ4/V;5 ]kz֚&XG=TZM uHeqGZgCiq~_Zo(qb`-[8c&,#n8`7S }cQ/= SvĚZR$koRm/yyI6AzM7HS7=4`- 7jV˫ע&{۠G1'5fξOKץIʫh֐ jU~!hʟ!E@ d$EiQo-˕ 4c.VϜn0e^ 6ʆ$ro'e㹒z ڎe-z05Ti͙!aqv{.V5lhѿ[56Cәވ'bP[Ï/4;[TCaF*3 zoj>Ѝo)^c}eƆYjb2lӸim!4 A!tzu5:.0rRQʰ4W:a'o E7N-rP4 dcY-{Ѫ]^aWk4A0/IS͹Z] fZڸ|,>+q3b]vPKTCfX0?яA4ڣ>ޑ_OE]NEae L|'Sٞk o\ FT%#WSnHE c mI#ј^M>bͲ0> "n.ZR6:3g߽C]qB8q0xjyi= ?MrFaIX\%u2c, è" u3T/v+l~*nۀ8VEY*mKwxpr?‹!Fe^b>5>yABLCP~ٻ8/(JtgT'II*g:%\2Un"B"|d.dT] lL-Qw3E#4X#HK !W `;J"isRV %U񳅶 nԭ^UAxRaǻ솈^%e>R =W&1a .:mASBRTT0" b&BL.R'yE"R<T -i5J{L;}z=6l#LJabxUS;b_kK`_qow|][on&~d Y8O/Kʶ((jN>1 BkɎCYx:l05aKDfH,~\Г]rҙxP%A}+i3&C#sl[8F)'B)b[E0'79&3. 9`y; Ԡi#eرĠmэ*XZ![$SH?9MFBmh<.?&Xd2QezmotcǞEt;ˢ=/U(ь7AR*R[j(~И1QnwTx1 p*&78-m3UsļְÙS+ XmhT)*}AHPK14]Ts:Ƃ9Yh8]5aed*TFz3&z-vwf pj:Tut[f 9 }s5\IεqSt9KeVX}/\ͫD,`q%5l3ShBgL2 2`CIpь/l߅8$\ї/s#Z} y csŨ`ch9~cgtۦWa HD)@9 +u 1haY^j j tDY xwt+i[^*py۞cP-P/ f hK{ƹ^@ 3R#2VJ0S b;m_qW. υi@dsy׺qnc:e;Bu::i2 'BBm60i%(K7T?{K}+ ИQ35$D.;V//7jh&=|%)tWUNǦE"iԛqAn o>:&:C hamb4Q o:fSshǏW~@fs+5&Wp`2,8IQHm wV7Z\ҖV#/9WCacxQSףKlWe~N9j햔GhyvIV=&QpKfE\vbԉmda?w28E[ '#t#w@`Gd&.…(O|Jf&z^.zdnQ7)_r7$s$I9euGޜP 8E۶w~ ?uEz-(x5|1{ZS(;#&#ؕ;Il _t/h:le.6L䠆z44ry6@)m qAkxƹWatq6kuoWπahvaB"EhѩMlSwJQ4N#Y3#`2q3[[fD *QdMIRyILثh?\8݋ZJ7fZ@@p;(lmMgR ]nX-, 4W^bgnWw9kIy_ŲB%xq,U]| AS9{?A =~~vÉ-2/0c>p \`d!U+D:0\WGnc>r6Skfz|S-E33J{6=4+!T6ܨD72{<.|)G*`yMh}`Ic-~,/S+EY @f) zq? r*`41(Mvh8Kqi- @BO U<&i>NuT2lnYBNF/*nPoБɯ0N~j8&#(sMch*FIAFbh͈@]A TBH3m^"s٫!7/e]{Myet 6:Yozm@O5< ▧LG\qqn\gH4,oj{W{2VO근*Od8ŽUn苵嚿)Qv1͛V t`5XaX>bYDP!>V5e+W5XDBIV7ۀyEfa֛s{HOoşy:$C 8H`,t2&懲5׫+V_Mx4z-tOgm[|, $C*|Ni|0lnt>Ln4 ;|N XV̾xlxcAt2`-yƵTj`/ njǰw%H6t A![C)#wp<ɂUI\v&uV%N;_GmFʼr9τ.Y2N oLID)UkomESz j(ңrs\× ud\eSA&rЅ"۰<DžTBI3I[!!`gsNewiDS}Ci.މ$}PNmp= DO5K99E . &ѳ6.BA܆CSBQ|M _@Fݏ?Gݽ`'[0e$5A@X!dT;zY|"VcK::8 N`o00\Pp\׈i\std'G Yg{YnϷ}p$fBT]DI^c] Q}. :V_X\Huס._XY%/UqE$ NPs ,,N0ҚUzg6'CHvuNL-M&b䵵yǬ8ZFvi1c-<2ռHgdKL!D%pO(M+8^PrH' ^Q{;o ӛ:&kR4 ~0^?9 $4F(nHf qCGX;w|H1MH?T9-~N EI "rm:GmD|">z<߉c=bS # 6HC`@yerunj3{%U/q_bd&$OK-q\\9H_rH 4,|МWER7oR =O6IF{U( 5.F9z8L8f JMZdYaH/V("& v:ljK@LֆR'Peq%^r/$ €6 [ޞ 4[X+m˴rwU)"`QKWMٺ}' z}StG6ɷN8$ HN&*z#&o6*&#S2- ā>xi TziƐ@GDMV!.$CO2?LBՠF_ pɸK|jx3z6K .^2-J\F`j}efKAπVjheMtYe߼1c&.Z{9v^ 5ۿc^pBvydžWvġ`xlF56<t=gNwY3NbUY mwF\|P<(.SnDi0ÎBiaެ|qD*x,3P6# O?eC]1o0febq$L_e~ pus^ [Vf]ϩO;VSPppK[)7 w](h__{=;%&Mp x wDX%Ů4ȲЫ(uujyUR@(ڃ9E,Xo1$++Jm թQXw[% Sդ7Yv/P* SޢxFE(2nBڎ b[`-E,4D 5$W%s81CYSz&'p|-I'<沑ju?zP+uLxp^5H?YsF+(}O ԓ:xV5dxøi륁8i^6!, r.HjmfS{JvIQJyͷ> BVHy+96n:P]`ec_dEY-@6)Qd$OӷDM^ Z#*H-LL$ {`E/^)3)u[ _)8%=_ b$@YB{[?e %l jjjƵ]P>/^~%G/@ (ޣXHiL/i!ӱM7[b.4C - B&p+;ՖyЪW}APFT< %?11ncDE/)3 )Qیɣ뾹֌"徂#k Yms'鴃k I&A켰 mȻ2$RV[{c뷏Og @?,,w3zVRMR-ۯ"82C97/IkQthp|>+ޅ]T{zV קr(C>0.7̲! bl.K]qC752dZR(p<2旟jC FqAq=@dL#Iv4}ɜS6CWuXddARujcHhkBaEr0cScڢ߃ ~ȫ)1hj0qJ岒D3Uqv:`'y'] A"\ D8~u{s +u6?XnR:GDZ.6<{}5P_o4;z nSz+^8 +5C.j \sņȯR;P?I$caXR!|s** -MkUv\ >~ )ryX`r[HT̻Wtb龮sI65~g0E˖Z@!prYc* a W^p]H|ù%eՕ:[L |@͓56+*oeR]"N_n棊36] :~{P"ew} WY2ktel'kiOz e,J!,8>}9xD﮾,K:ej؍Z޲!q{[WU,1l‚pN)lC"`7(Ns_k"/r5 d*i:shL}Bc.LХ?@ a:NXHthUŇDzrJ~iGh{~v@Z jb G=E/oL̃ڋaS:LՄax iDopdc. (r쁰eFGjaT#p DиunZ^ }gh1Ҽ:h8wrPDr/@`09w^T^@O ~6ga^g W_/f@x:_R~ԋX5TV竧C@y|vjN5mU%d[6k2别tV 1 }LnY: Z=߯`J$B`-k$!:O4y|yRk]xJ ÜJG^‘?}'|iIQHeumL|7sdt=TW,\uG7O דrau:2 DXaBMg9-普gU8_D|_ * L|"g~`2o+*!2Ɂ0L;ψ5 Uؐ fɯp ݹ՜rPXgH2Txq.^nBg.#̭uޘ;GdV䥳+p FoXq`%fZ|T1iㆊEQjͩ#~VÃÝkJ3!W%^)h#]  2Yf`VWA6HgH6+0U=Z.YdTR3 ["BJ0Z1 ?NϙCou@%dI]ăSmn߯viT:d( kxn1f3Й{F%٭& .rj)۳;ri$YN-2Ӫ>\)+h^%Kc (BM&BB8oxlw`tN91 _\]x#J$x}zҕt 磻%|BfhՈ1y{t|K.rΓn~7Zs֧ ~àmoej0?jO?#@Z*>u!þNCz>>l<t @5 g`B|<_* UP8Bw6Z/^&oQ^5o'̻129 m;_^0󿭭# m[Wb"S]? O JtWmL ]:>혒']~B[͢ټ3dPD꾤Sf!>kHM p``ZkdQmbyFN~ EՄ+cu qʃdY4tTcG&᩺"?G<{4%[x`ygJvo2 ?~_J=^$ ђHa_wPW7bW=+]G\뎧k|/Z*nf (3T!.8LE p_EkN2Yܳ},%Ÿ"@S-Y&; 8>w(,1BM}2SLgx (x D-=߳jWm*luN)tE.'_38R' >3y(Yo"!W7'h~ NimUF!+-fU%S%#30Urh VՄԎWY\SYS_IH4Ga[VZEf;a t.)E ْ굿w c8 wUSe&?uvdGshx/uI# Qb>KWl]̄ kWgPBY=+W.:Ap.~×"Y ;DZ#NL#jJՐusbG!Rrr(H{`j= g D 㡧QmE·p|][HP6)6 CA/^=q/Pدn/Tv*V%v8akiA9Rc%ٚ?BC[H-;XIkT4ke|(sA9X:D%RYauT$|CmGӎn"@&b;mK6g9)RRh a^<* /xhB@*vyղE6y}vYC1}A: #Lbsq=gRp{rI8m30MEznۚ P7ƞ8h"NUcqK5}̬0!Y2xs^MXmeqrcB6ˆ );Pnb; 6d}DzT y hj Zf@B;ߝMɇT@.$YrhMt=Te4 E0ݓ7!767M%FV$]#+2}ȍ\uh2@ͥn[gp^Hidj|D˭3u\}H<}x4\=ʬ,BO댆>l_"1aΘYMX~vE'H!`'aQ ڜ-dD(6ܲc15"ВfygN#I%AM2 ڸKj^, 9䁶ޑJदڙkYj6]fzz;w6D.)z΃CCZP_Ok $}D "7) VZHO8pZv\`> DkK=S‡h>@)۹@^-"'g5]M[-Wy*0 _{1p7LS|߃8Ŀ0w4V]lw!+2AsQ=|C ^o)t:$e +HOrXl 2 KWv(8=n"^3Qc9?ÛtoF;w4_jJ?o>0˘ 6=u llI?%iU2DehZ;`fh8. 30A5ƑT} 2Sy/?22KhU=^>vXHs]Ǫ3T#3efADT' ݞGΩO W@$<-DlWlL)rR.˱{ʀ)L?GB\9slD(9bL^2RpO)VEQܭ܇*tQj{wL/)?i-2CoO ה39L Cծ5!0bm`?qf `L nzϽȩT@89lHT}$W潩 m$Os ODMƶVK,(v33wKDtZ[Rz; Bd:ޣs>[鍸` *>疘\uсZJm6f'Z" l_K՝Cff,?>#O4p[iX8pB7Uqb# F$\}>b-Jx[/f#FȧP,'#[OęZR[BxplY!QQVպ |⁧a~mb$KuJB8I9ft8X`crVll0dIZI !,Xr(*~UӋbfXVS;a]jEVY2sV1%u"Uƙ2wS4.*&L)MXN]4Cq(Z-+` YHoni]4!hXEuIIQ֎UR?ca'BH?w?Ɯb#kLwe\ e`^'+/+/s&ɨӗ`<G4J yT))t rYh Ȃ>.fcdZѡrRX3@BVw\E4/`U6ę&^Nu1XO ι?aZJ`3u')HxU3ɨn#M{RWUXf'P}z8d* MC_u2S7095cPKSB 0;R,aMFY!߳v1`pzNcD%6E tSS'5|5"'?׍bTq_'SwnSl@[dNϋWa.aB+9!go3#~N֘X7As1wJKϗHeMtgmo/JS(xH 阌deϗdO}b)8}y9b_ +>eC+[Ί PA32cXvK,2PkݜA<>%@åOgOWgo>e=y!f(W^B]rCpqK.,7; 8}: MA~vD90 3/K^x&7){Eb9@>{H9bb|b=nrwzs>7:V{$R8 p>V_#/,Լ)&EYT~؋o2¹K-^eX!˕2$MGnһba6-D('{J~^ ,^d @' ʹiI1Wq9t zf+7@aoS)ưM6[i _g1LUu[@ hҗj7qApvNq;$ٲ,qfי._$Lݘ!0E?1ީ>~EDM% (5Ûxy>HjwFZW3}Atj"C_ﶭnusոRv vA ^RmK;Km5e6x@n[.`>;g=$\v/_nPNeG0#0B5q|_/'D6FtZu$-+2-=ҙr`'9n3 sdr-fmer%z7}Vk}_y`ݜO5opS+՗~Ңާtam<]7@/"o٧y=I(*-!U4,3[8i;EFE5h;20gE[ofbEjckW{|pᑯ(7qv9ሸTG~9 @5v$wB*FHQ-=g8x$UiB@Qtz~9.Z6q"R8]ob4Ryஅm~@&*  j{HXF za+/*8$g鬪ˆ.꺵>@s)fɷq0nNmu UTSBw1@jٶ4aVD hOQi Ze@jkE&9=]i]Nj_EX>1nrݔ`hRg|SΣؔ vl!Fᐒ7^ uhs eZ}M SVoym>aTD2 Wc/_:x\M*9rg nrWMI6PĜ7iE Q@$ma>+tiǎG-HC1 c #W5FX?NcNʵ=ZE(fivel'}+2]UYD#;č.ꀐtoū-"ؠHF;[oS+jF rgڡq}kC[Mj! GA%)nw^r"Mϱ}3}ȄiZ?K;=380'':Jm35OKHf@i\4Aa~sapQWh jO'Y72R%v2Hյ2FR9=dBC\׷r ~R71N3Xl *zfkJGpG[77xÞ〳X J 멊|"ښs4N@o!'u2 Zq _X%1S6F6H_1& N΄u]" m&S=!D(TE砐Ff︉P `ff"6pzfٮO0ɣw珸2  gD+5]YB|nTF  E"<=Ÿo9p+ %dL- ^=@A77jB{k8eS_Q[hm\1; 0fPb;_40X:U0N'F@KX/ƅtA( .Pax=&(t;P;v54E+?PTEW?5Q4Ul_W#L]ۚK.մ؈~̖s"/Yd."2آIZ Z$IݍҶu{xs}&ޘ PŬw 'NTi+jd(zl&'hf| 6V3t  QE>8[fwGC6ƍ(O` YRuZ%{YK7vC(õ-s4\eɌC-.gڕ黥pVSy`boVITo`V'̺cՀk ﴈ Bb:/z!\ &"j\1gN!#.I_:+34xL}L}1}u BNOōH!gP*G{+>V9<`C|}LNj)*)ӈ}68xۇ4a!:ʏyTt=W_x{BX }Ց̀!`2վAW7p>/ȸuSn]]"D[1jR8wadPrLYijmW~ƚˈrqYYR`[+(}O?i!jdR]?,ry1b@RL6}_+gX컂~/y-GVx.֫GYrK&uqMhzݮ{HPMK:fTbϰ\!UHg @(&U )m )1&/<W : gF9]&CY+hgv(qMcN9YfXLB upCx l_"ҁ/1]ųL"`P 9Yf XumqrcFja󸛉7b9!$Ē[/D-d>DZgp))&=iik鳐EʟɸY&p%xE)OXd#Խ^P{(KNj|mZK@_,U$.P 0;3ᄒŽw 6x#$ aL |V![KG[6Kt9)]G7:S㭙b;_E%OF:Sxz/]l\@ܬYtxM\_h}055!5^'`M'ս G%_6 # l :ʸ,]# /40Cv0NvƇ18t/D:QqQEW3~65瞿:U}BA萕T9wCC-p*IX+'G;.:`1$QH1F(HH(T,FQ}cp9Aݤ'wY%F2q@xmG? P(J8@Yh2ϾIY_Q!S^H-Qo4NO-'T)\JyGմi8+f6M/r!d &0MnHJ}U8k5yQSu~qL> ;A)7&q/+>vȚ 4+(8?W2ٔ|T\ 0ԈiӺN$u1Nw m/0>=L0܃bjx,4o:G=UŇakr1|"qB9S&,PC>(7,7&SX@bnиoı9bA!Y~/׫6҂K*)ţddi^W+h->6Pf? W5A<KG@'Nz` ̗Z!ܯ-TZD@:e?ĜrVԏ <\t~|g'+Kf8_XH|$$FGY< _KCڢ[Y]in1j 9 ڵOٕ7?|0_blrfa3Gtۆ:I<׭@&2d0 C$ճ:|, !Cpl9)ٲ=yG1;r]i4^*Cɲ[!;o>cȪppA~owOyȴ`VY(5p](rBFTϫ;uҕK`&PlxO*]vLNԏLs3#?609e¥ƌ60蒹r{]Ax~9ǛXF1$:Ltx> Qc,Ιp5jy!|HʳKtbp_d)u 'X &QkGnO8#ցP6 ٥aIޛ'KT GdeŎQj7St. IT@PES4|JfM$3[EI'wkgZ+h%U;Z&HvEO#g BרM8mS#Ghmto'/NDLBqSm` 9ČRJ\-J/=߷r3 5\l+dS`gbJr_fa-~Lن4^I?m  b)2*܉6juNAv|d`ŐIr-mׄHl'/d(,ر#y߯xDؕ,s7{}jpǿ>)2RYH1 @c|k(Ҭ$˷8HhQ#<)EV0y ˌjV|t- "44Jd爛.bwJ5d>.Mi;TeJ[TO+Zp6̌dCtu `T"z5ݵ GxY2uؑbW;$ ڽ)lo!^VCԆ[ZQW#Gүu"nZ!E:1Rom{b2N3YS$mä1?c'ԅvg(g@q9ϴH G/5.н+j R] 6&k 7XEOXoE-q7D|ȘX9(R9|^/OR=;^-A|5ÒyJ$;+((u+DTTdSɑ#Itܘ g>&r>5z|L,4Il㜨=+OFBEek>U|B+_5?h»( TxOG*EAP\.5 VÙKLaNjJHֱ:9? f -jN:ڐ5q ~ăi:UӠv=$!x9czgjT׋NU8zZc2;TD6C7DٗCȌ FCĜi 3%Ue>m"`>B_2wӇaՅe?L5Km|+%cTgW5]5tíT;(E膑?s"u-1Jc1?UCK>No4 ֦pu%}$cxkƕ-!*8鹾pدNLk1|bmufw`2Z'ĒI] +jGR֚lN pO/ClF83h-m7Q*` ,!7g vZ_~y }ޗ%0x WV5ySmݖl85nWQ+uy9䀗lH 3Mr7Fcb+}kP QX0$MNQMG}FH0޷ޟá_ 9!"g=h=ɻ ,7u\-БX̙Cd#bFY#4'eבTG1ѳ+A1GuAk<!Z")T!w lrT \cldXh#y չxE/Iϊ' t]eD Ȱ֌Fܯ4SwMyA׿^Q x,<%mjz\Zc'HO,Rq|yC(E@^yAF'v-HP|)WWȾ͢k=Pҿ"Rce>'HŕS1;㼒lCreu}/?nwegpujrdH y"Qk`v=`5R@+C)aSGO^ʝKD"JLgƂɡ E &h$"q^KLB{Q.߁[b.2r*1M2:4^?'V~VWu}K&# 9y/6:tIDIPVXa;#jR+sFkh\P-g:_몧$leeTI KO7`p˻)RO҆?AXK^vrVqUg"*&hN/Ƨ+eT=Ұ'tK -R/C$> ng7-Џi@wE KWf:==Yxuc|xo݋X1 Fs8X *(>T1M;sX".5E;Hqy/Pp˰N-6 ׺w0!\F(j.>wa˨0MS2=E{QQ(::Vh5/U4m$% ԂT%1pzAk'{#ܰiQE,N[m30D:Z]YMQt8Vb p2.~\R-qQ ¸V7 |5  3`7[\j"Mqf0vq />zF4X7/6sQ`W3* */?ҎMԪ[nVݰ Zu$t# T)'F ƍpxNX:Og-$hDxXTH@kgAv [8r"k-eJ &D1=L_V`k)hTh𨶏ܺbHfj)H6BGRob=/^ I xE.Q3 oWr NpgԐXB?H:/Ç#Ihu qԓ \EaU+ESj^1\FO kBH16"`1R"LoҘfHw8ޝ~K9(u爵w`ExXh{*oi[ıhpKpTbla̝o!\*b R_:ov_OX'8? ur9Ѽ+(QҩI~N JҬ+` ; j)B2.gq8]w֨̈́O;E C<0/sNJB9M]QfAn=uՆTE]#'>MN~2<c݉%/- TH#c4bdNi"k ]24M`hIYdPTcQ|#W&-@T[Pz@-j%?4r30n-*II8)uƘ#x98w w-̆>#޿$b[K3"hz]nD"9s3[3]حϽ;[gSii1&G)%,^:j]gOe*'gsm36$Sv Juů[0{:b@iY*43M^eϜCO3Lec F92߹<9W+n"x& &**.N-h5BﭰeBijEj'svF2 BtY؋g4|zs+Eq3އY#ʿa OG 7e@<;d(+="I:NlalhNqE?`&DY!߽DF|xQ?hV:]tIӎ6aRRG _<쀵4M [p2N !D\T L\Z,⻗-<'\ŽTݿ}xU]QD;Awoļ&[!y$DY0(Ѝ\A} \k[[do8 E)x#ua!y˺bm45ŚG۪AB՘ELwCULMAt"pO?䲧EáeCJvvȊ;7pB:ܥWf ABC-ڷU XW||U2kC(ԑ"wZaP>k7&PzeUELGL(O%OTYPGؘԕx3<#v=;hgu^nhYT=VvBF}܊# ۲mHQIBIͶP:Ó*&߈(MŠt5>2r48@60P+Нq3'T~ N \|rH[NZV;LY6hZl+<mi1ޅ1oXڹhtԠR>ˏ<.{'e2iB\TD"yO%YOwFF$(A>~ʌd#_V, uRV&,< \'pz1 r<[f;d8\[m\ usx+^ y)Q8j"Om UA 5]4ތ{ "3Bg Ԗ;ttBIiUM+PSi&llFY2$(?OLKQRR /FrƂ_;|~Vj&2Λa{/3j,D{'`j`*pOkqJ|0ڂ̂mQU'2eԺ)z?!f[*0 K?pH}IhK>xB.Lg9YȅձZnE ^cD`]5`^\3y@ϝׯ闬-&4 z:3ȣLo+MP+$ʘͧz@~zJ?J怒cD׿!o/ \&R~bH ԣKGN!|H[|>%y;n|3I É=õr1ku& }QhVh>徧웤Pƥygy00mupQ2();@._Q= w_U |ZV'5Qc7 9N 0w /?E}|Ƴ u8Oz vw3`. Dm[ʫx,C+HZ'wadr(GpR٤5y{4DHBG J4ї}J~ٴW2AU[YOYe'56u!Hb^h3c;=mEaV2R>խ,l 7x J;&f6phވ{:LZ5⾴dZo _ޛzFb0T˅oÓi _vng@k6QZ)yV d [%y۩C[p+(A܄SOUK˰n{D^ uku{$| qidB6wiϔfve|C 7KhmV 0ƨw5xg?j7*ՎLc}TQR|̦p-@r%UpK9/#9LCTRF( :0"yӾm( F$ƙK" K}06esUУ?3HE̩5{rq`~Wi l jț),[ոÑ(&/8!P̘%oIѥ/ Ί>̅`-Q(Cc$\[n -ua'֊A΁?D$d8䋵&RJoR}%͘(a~ 81̴ G k%qpI .z:0!=HDy[)!䪈XVV|dv\^!&aX5'֍c[n]M V (}XiMW.$6G䉖b\NbnG}6*P"7oggH`&j&,|H4Ѩ'zAI ɷM4oEV¸V^r.MoL;k9 +K'`N]|_o2Z{8ׇr v#,Ƃ*Tjp8R#2}p _F3uP5ƿUd? Yb'c"ɺԅXՇ,}Wt)?\_]`%nUQ}*2/NhȤQ ǴA[9}WGr!Z+|<]f]{ymԭ:*iAB$_a\ne-wߒ*_mw˲fN ҊcmMLxֶiRl!Z_)dPs@ u{ր0f|M|8@[kb7ј@]RVa)yYENkЗPFdF3j'n5jO243T8>,>H,rp2Ի՗nL2,kx՜nSWR| Ccymk,*bJ43] *ehmMXO-=s5JyXK{j2˨0f#=)LJeg?V¿ey p+;w}=TQ1K m(lgo/yp2q{UbZIzͩ6-]XJW=U;Bdg=/Lry=QX'M[ͅ@F ĴA[egR\+ j4@tR &GdMJl^QZ\}E¢eSsa=t[ l[/Ti]뇋,*#V^u0& lI3ҠYҼr Q֢3V~ @D:QxGoP_(Qc%Whɴm7%> 4I)!C m92 ? TxcC0t+:66*^'i XF2[,N(|;ʚA$Ky)q`mD) /_7䨵t7Ή X@Y%0S1$(kPt*NA ks2VdH=|o@/* Q9 iކ9g&G]6eOVtX}@Kz➗!UpJ"TC'ApQs:d5}=K&K鑈-J*J'O!>/̞b"K)ULr *}59+l#%Ds|9qARRLwD AN- 7?kڨȹfI9vZaP@)d2gT ; =R#F ~eF.ة|eK+y-<&0ȗ0CӡSɅ=fEǻl\m}E&_\yob! h(@%c,&cIm@sCKEA]RΡ_ӁB`}ya<nWM?f(>:uڀSzQ zRcN =04ttkO# C1pڌJe]}-Ud+B7JNO^Y&ܼϓyEH4S,DfG\lNKl4һx{]LF)iR8>$ay/NxW!VF)w 5C" %)-Dz6:Y1.F߹9gFQ2.i]C]akPbՃ^H`*Oi;yY PZd<:IHq\wMfcgOo뛥aDj/GhOMb[W5h[a1z0 C= $DI}a/}/A EA![7̍"2g'd_-yp1i^A+Z6v#cȐv9ztfG%Âg9i9͉e׎yt.R;Di|Q>wTSkmbگ򂮔]jn)=T)H`닚V= 5f9TGfJ^/q g(C-}j|mJ[.!HQ<1ktm7[B@y8,uG8LxvY5HZKIFۍs >rY]Y#"__P;K7.|_Ư^ۖJtF N!0+q҂Q *e$9`(5TP҂҅ac9넴)ߤ\?l F 5 s嬣\طZTx6 pk {1]=: 8t'7ߎpPD} Tzo@OUoI:@]rquِ8xL+ prߌ.(vMV2V#jkزt ?P FVhO<#ŐAYNCsCǟiCLHO+S ,343w^$qa?\z6&@2LVMeEM͖j8g-g]^LJg\r|H>1G% =S^b@L 7xƭ={Tnw#Fiʮ2Si~m;%X_z&qyp~u}`mg r䏑ȼ `sҔy*׾[2!IU^˅@O`"7^-c2eP)RlC,?cM FK'v_l72_n]V <j6}:$wكvLhF;;Wux,bT?+DJۏ+w8΋յoVg~v9:JFe{`Om ٥ޘ%Zڿ2㖇>m$;~<(%r꿿^9]59= (i+י{2R|C=Q*X4N׈b][8JȦ<#Jr >ytM}% TYmnn0:*ԖW8(>Zi&sh)8d}aLXcțSf{,}6Tʢ0;MlUzy\ǧǕ^V.#HfI}x{r>v< PD>77E*f :nY(sSE5k$+D05gZjLm$z9=՝2F Nay2coI,nj\y^!N~7d'#H}@ ~ 13JEs$޲B23:n(FS113o?}*7CZ-'܂Ӗ]9嫶4=vqzffTM'%ʹ <6VV"?V NnFBb<+R<.`Y3qP*1u,ϡC yv:# YP忠͛YDKuњDR S[`o]۬B]7ς~!)xva\ FUTڹ?򗋲Z&^XG:E`^i5 OݝF3SLI:3HԠ G+Ftu,Vq"9):uz&74/a@x)X3U ֽF Fc::TLRqؘ8|tQ?k4N#)oU<zXʯ6äLOfS>=aM } p`|hMsJ9]ǥ#Q&LO-i'xMFr|͖>1#^Ȼ=KPL~SuTd 8oDW:儺;,1;G$5I"c{QR۝uc^PZF[N< urwsIqXnnΗ蜈8q(z]^ 9 :6p TJ^Zɴڼ5W;wN(Sṛ?K qw,墻[ry>" T\Bwf*բj%aD4rtW==T&@,֑[qa]ޗ\ /eHT)<Ÿrc#<`g9jJR;)rDQIXv%@\cΡC L'Fj&=݁bgBфi\Z< ͺI1d|;9NZd4r1i~^#|(s6|U=n!l󤀕Ym/l w=K|x`!NJd6l:NNeoz3g7YϘ ֱ] =7- 6mӶ P}e9 B0 k*4d6u䏵Й{LJk>ZYA'c;RYs-ߔOvcb H`ecCt-M5TWGNj?e1~Z\.S՚7`|}UYPcB٫L4x -R%6A)dV6{(+"jMSGshF[qXaz wy x侰}\n!I`]9KWh/%h^0m8YZlsߏV`6Nsx)M:M"7$z%Y._tJ$ԉli$ GT3l⌳틫PKUܗ^7%njEc;]Jpw`F!q?+F\n½va`;0˷=O$p䘓6zخ5i$#Lu'6U@{}6^^*[ʶ+^ dK "YQan h{ mE4%Ojl&j3<5Y2;ߋ 5 +M%S 0(D-Kj,'¿mMĨ76HޚAu F83EFYT<2@4x+ҧXY6cTA"x(*/|!?J9փW./u-:l^,47%(/WLkf0QA|WBoE{)jAx Q ?jN]˳h= D@6Qpncf~[K%h-@kմuQZ.Q0ύaZќ*4g}# r#<,&|5y:F6B$e;E"2 _~E> U"w49$ ~#qzV!Uxy 4>g roI'2fՁ^g/ |d<ě:@?Zpb)K0ay,^94p "4A;ٹjnKmk\ ž[7VZMG 7/+#+gPpIx ܳ %P"yiqh>d::Zq^}ϔ|q Ztk[ DK@9b cf."ZW#>YIvoρ$XREU-04=KݥFZi.q4UAH؆נya&=.J%$vѶS0\\ Rn I[σ݆8C:NZң\vS;?,:3I>d+#'(q䟨F"2)Q4{霒Bdk':0[q@`Fy<78g27c}: Y"z "Ga)g30BgѤqk砹GFr8U ]ThG>.!+9. z q8r,,ˢ٠p]7T&rPw0&z 9Q wD4:5{5b} ^okW`9w^K)S-b0T`\Z 즜\()_fu6;&(I㠔5wVOo^`nUk0,)?'|x*V;em k?hߪᅢ֐JYض>w{E~V.5/>4kءƞ I ߉ng\#Hҧ m~: %G',aʫ´-27>vak:Ix%54\Dl-O y1Uy[=Lr\QOqhYk޺߾Z]nUkDDBa'}6+Fo׉Ҏ]xOG8mUUUҧ$Y?8 Y(%9`6#[9Rmux s' 쩭E'El E )/KՕ_!Fy7}]a3н01?!*ci/hB⌍i<_8!x-A6Oe޿JUP|&F7 :׻pe_3JH&úTXV?[5:jgrt O,n| ),b5oͥ*_ I3;V[u֞% ]S<q, l׏yz_fRUrVW鈻SZ9׸  :uJ[Kˏ8P.Z b Sh Mɖy;{sdcwf9Z& h7ۻ󬠀Q;uHkc8Nu6nM VM_g|.]I6 ReP6"pj^~V<0ZGbbIZ.3ހz1{Y$\MD*xR ~;KOB%2+aU]wL›˨gMSvT>OG k_MV..P֪rԡT ^MԪ}O MJl1w>ho.P$ Ɍ6|TKfws{hvs[YFٷ1М\ZUWU2Y^C/BcPܡD k,u'ΣAzy?QUmcx;̔ZUa)B(?.|Ӿ\tCu2!Տ,%"51cJQ)|b< Cp%WA֟Lw#15^h@U@" :Fx#dM#(@)s+* d+CB(&L宯`v?ucM7}ٌt^ʦTe7BTXԌ6-a,^IIYlwH=/!8@$w"7/Ǭ;nߝtfve0-.ZϿEw7E$-;{2ȍ$f3Q#t0J#]|./"9[e.!Uq 4G/wX螋F ܡ)/rR6izQ,ߺJ2;oQ bCнv\ hjNC *϶*YvBaV=~/}v<3yK_ ҷsEc]TFѸ(Z̀{gi0L|_ uA7\cHpe>+&U7WJ¤li*)xĨ`$&%ĭ2WSm(p3JΎW^{"m$ut|x;sq$ lKxu}4U-_VW<^ {F#N@غ|9qR=.٭ la^\]7>^Sg6:'\̉xs]0|IδN#]9_baNWă=E!\`-NRY (eoJP[ "*Fa -ދ.]hWd`oo*\ݜl՚OdI 'o+;~b]$Ɲ* r+P/Zft@3_2Ϫ}J#"=!![m).tE TDe#A-17x)n\% ʤBIeПm$R>:@Yf'$%bdYZk T aWhuMLW˦eui5G[7Ã[f%%3ʴ]м1p&j"D3\ ( H?T8 R7US9R|,ob(0|ix|Z1z%Ȳs;9ݍPv\x^:2 <2@ѻ\YvLƞ\b#g9ӑ7++񔼤1v=]sP.PЄ fO}хH-Mㅞ9I"DbhL|]D&}#Tk_!Zm}梾s u(sc\x Y 6o>pa@fbmDf$;@@L-E>շݫ0uE?)U(`=~Oܔ[YB)$jCh9XtjZ7icuZUSqS9+RfQX-|ƫ$Ldz@L_;DU/;}uI&o) 0E3* K2o85U >`K_ai[\y|UƳώJ4~)#l% h*sb] j#Ox 鹑+Z~Y0I\7ה~YE!Jf?ڶsly7AB)IoK}|(;A݋ 6k7OPlK)QL*gcL@=Q{ϱ)⢠O22A۫XX<2F! &0Ӥe5s_yv/WgWe11) FVSގO_UiZ*aej7v}?؀{AZdXENM0XږS#Yz ZeΰA8GF@xXvS:[ȑF[劯(ojx.V 0Z}:Y8'vcMaS(.j'xC&,F>[ql4aӏ4w–u&x-)C9-Iaf1\6 1CsǸ[P_+n'&6N qlU00eUcapGwH'V^ G@EF )8V5ψ@c_yA2PaqJ//$%|<:$0X& pkf̼lsV()U;b_K1pxp N.OxE`Ȅ:J@J72^W'Naf8*=B+Z:K3PegxEՐPfhhW(xhՍrK;htK1?ش:SA'o.,֝! S7p:}6w^lC7?`¦Kblh/͗s37o+󛥽A[|M$st|hיВ` /8%VDE9™nuoQaOD|6O [M=)#||0+qImW*u!1q#Gj3Qzpc($.d^ q=z(ҕDA+Żtǡ[#oA3źT9 }^@}dM¾խ1CjI/` @^K~H؜,Fgg~ȹ\l6m@a,-A..P nEtu$E:;[h#G7V T7,ϻ|_'ZW#j1l%CFLM>c,n}x8cբNjK ܗF:eVcfObrcĶ{՗jJn,3EgVעCAUM/ ߶dh}Da%/#:0>fXѢRwLEx0a?>LB$'|ک34\LC)v5 !do /skq/%‡M_ B6$`H>F7V\d.[+e ;/n8Beݕօ gT@%z97>}֡, :$yj`x;Ԑ'hgB[Ҿ^{fmx"^{#l,E6dWRuJŌZ dNeJP-ȅ X?޷|J0^N"KtsCʺVL[5)(kWUD)׺5 1cB}$NHdoggT2'Fa`AXxhQpZ;_Ss*OhrCMih)der%!HͣΪM`hޣ#MhV1u1FQ8E$&˛ݾgCHeOʻd:S1ΐƘۖm&{]-WtL?n!ʛ2rJ{mk)4"8@qyUň9kZT,Ӌw3[)%4ޙ_#cl՟MKL8o>񀺭+@q%X̨MToVNFD3jMD\VpEG1#Y0^e܆X/ ˟gZ@-Ɇ[SAX2U-l|Ig- v2ݟ?/>9Ƒl4A/0#% dh,CǾ;{/ϫW`I2M0b8`VK)Py=^Ouw wI?s5 uj'D9߻=@R_% pvzt@h2YU"8{l-hһӪ37vxK#`Hr=0:Qd|xL{0d0ߘV؏J77aס:&Zc?mk VʅC[K4iia!Ȩ|uטn[uNDr6HGÒbVm^;~ttL#BCWU..]|}v",ؚz NRI=֒Nebz߁Cz-KD OBys!P9;rCgLD>8fKM29Q3R)4Phioqb=e |צ{y,ex?g_$cnhD +GKwQPJy"Fq;%^L,UxD nKZ@qM7Mqf܉biOwxvKZaMqc\#^&}dΟs 樶ym98 I[b#˳眵| 9+זI̞,"$㍛Yڤ^_{ovD-F)-IQH!=Y!sXn>A*BZGkq5^\m!X= "NQ>/>4|Я|P$}n2@E΢Vn>ʂ G{NU,~ j\P-w<ّ^FX]0g6dKdmУ|gJ F)+_^p}氡HͰSԇKi)HRw5hC3+%X,/kAr~1~H.Ϭp=x6d,@^/FosFp;"[MxOOq#״ ^o;cٓ~m2Ťtngb}'} sY`kmGR-}:QzI ύ%J6KH? f8: wulU/u;`yjgˢg8SMwPB[GaBN>ъt8 5E&40j{3 IvuӨKɖy>#L gs 1Ţ )n$T7}Et5Zuh Sk\L zU.>ӈmSb!sn e=wq.8IJfw)_-^>SIAD˂U|$cEOھL,DAKt<)In^BoqKϺ' ">~}0B?:ǃwkd`|1/,_񚻊J8}ӷyE@j-Bh5Z"^2`f] %[{) A!NdU CU㥸)_ҹ^7[X25(V *@ݪ`*5ˤ#4BVs*2O|,aAQ d1B zji_^ukFrG``hcLa@yN&OfLA_[Γ ϛW$+3'A`O_(1QE+pѤg~=],"#Y $G~ ~U4xbW4U"B;s\Ii9kyg %iX9XKK\XR($\ Ľ4]12'fgzSȬѷJŗƷ](7*~=ZR8AfDTsS ћh+ou5jd!lՌ܈tѯt0ear}'Vm4ǟ a9NpqҰTvrޮn-|uV`FD- MITÞg+3S 3Fr&3MdMJӵlǠΩ\t!8q32x_l d|i_(Ntl45(Ϋ#vA*<$^an5,?!M5V %ƛA<ɀMPY\‘H}mQ3,+Лf/'ݟ.GȦ蓯ekҾUELlᐲ^NAf}(F\Z-ֱhI(•ܵ5a%WSXWܞҴqu& Ꮻj*Db)chQzS`DWF^Nܶ&'0#N#ٳw$ w4\e:H|c1BV6̘ ͣ_C禈ƒџJyau$x[^u<1uRuL@#@%${\ܟRu;1lo`,EA :cH##j^i Lo`90px.e>le&4 Occl;VUa5' 9M8؀܀/6L'᜖VȾNO gTOz%| }N~Mjd )6hMbcn7V2,)S$.m"Lb_=!s8-17N(:312؞"3}ln@vctLZ w/ίuQ<k~F\8^.O˒9bԕª}8W!@;t ( qU$³(!=t}_/zDtV(dʎs4sf['N4XorW,&%L,;\?~WD,yuF9?^ZL+c >ߩ,8`=t} ?i5vM<iy1W.Ezc sq|ܖ *ݣ9EFތ_|ͻԗZKg4(YYސI5?I@C56a횑 p;|!z##$Qi'*šO~@TapEsf6# ήǂi 3k}`'?dTp+2؝0$&ms1??Ӽ|jlDl2!F/"PwSJM:SNYAl*XL sd"5V&&cWgq -5Z%RZY IوKIwHnfJKNA!M[DdĸY+|RE RrfUF'>8E~.`K|1T #!˙qXj;(n$4D"G(4"njGw]N-'LQyKS<ϙ@ yqˆ$BG3y&yΎ{puzF>S\K!Qqj <1`kx@-v(houv핔D6{yU֪\ 2q$jJdݦu1[s]4Z4LfVWlq)kXPa6O^ M%kB`!lF#K/r%a$X;XR>M_ht@S.@MC|w0ruwyOP_mϝ&_ڝZ6<+6!}D\Q$ŝQs\"#wc]PK쿷(j!GJdGI _Uy;T-p PJ0` %o T`f4I?a}rHyP}~_Xwj6? QCl~d,%ξO|^Yp3ɠHj=+攝"'/rԂ:>ßxco$Ma3Œ 2~9U̓E4* LW1KѵI$rwg91 K<=_Ʃ5lVڄҒU$e,\Hwc >8X3g`Q:ܞx8>KLaS_s!LK((/:ҫck=HWAEQD`׼hCA&mx9ȕ n.@,IZ."cDer]cA|j4KrL<ť?ݮ^vOW'.%/bs9xy84[g)0 !,D'ys}a7[bz9CY-{rG}n+9ÎKu~Km=ӲGz6J\C7P [+ c}؍5iPӃ}G{}Qx)~i+"{ИctX=JVhPJADx|U uMFq$09.,1x!D6J\+q} =e?H50Vbf),hE䙡 ~={u;RD-gN2<JǻB(,N.՝ӶуA{b;6: S3|$Euh0z1ĄɝG\&ÔFqK$xERw@j=(1݅%h@~:ѩP!_zS`ZGBO1$ULIF&"y]@8In,Te |9^d_ rZj嵞7ѕݙs5my ظ Poe=/@qTf}[ae~ZАm6dKT-;lO[ǖ,H')OdB.70.NF%<ÔodI0?zn='H{R*9 d17'LTD.e?u.0lo$C}Ū=J@R-b|~)EKIm `O_| A~iD\u?%lD܏/1=fϞF+zyܗڇ w o +5XI@cIpvV8Ix]W,eÁ޶(qÒU:Cy?Z˝{ԕdʽhY\!f,G_V/"v!&H0O f(zY.(^}&WpG ẩF &LlU"6kmsyWU҆U#=D YtC@iZ]a,H M`z6+pWBA(9z;T0wlmG7)@'K}%QDJ;/G/G9 IFJ:m2'I[Żr^=E nP pf>3xW HHfJ x[>nzr8]o U]Kh-ҥ܊Uھp] ca/b^_AjڞEn:S5pvXBˤ 2S:!6nud!~tih# N f+*:BUCsiDJH_l|5L߸ԾaL@{dx YȗVo .S̭E5o 0+a@-y_(w:<m HZaUZ^|4$[ xGQ6Z$ bD.YFڋdrsi"7xmJT4NӰpOdM__̀LI)$ @/6yjAi_rUbG0$> i4hM+xYguTҰQyQX"\uhߎ=" N@ {kM L֫f˯@=|Ʀ(zJfUl s4సQOtݵWb=X*Mtϖ"UeZ06@e_+E`5W[%Prͧ;qzoX hU$ۦK '/W~V0e`dPʧKx< 4D~4URjmE F~EaVO旦[WV={bVTxR~+^9FU]tv~p zm:8GPfs 7"tn)ĴLe>΅$f?CӾkB(~zTE2|iT'ѧMq^?jH{Qņ 7O)/*NNIyX ՟M ĝ'0&e/٦(!U'찒4 m AXý@.߿IS죕~AĖg txb#HqYybXDWPlm4niqB-6wGZ)&%N|mѰѤK 3Fճ iz;bH-BLxdz{E`JvF|X xfeb?MlIg&vTQ`, 3)'y ,fD# VAnI@g a?MaqJCnmLqpwAJA PW3uJ!9d0/wR {2Ru+c,LVk $Y8IϤbAy=5Tk^P)!05`)#/?I$=bf>hFQMD\+墨AWqB~D0i"gm։13@cBwhn4_Y`5IA`BJX`Ҫk#װ;c2/}q|j䭗'NuL\6=P]jMXUUVWAynA} )c̡8%=t!-bwn܅ٮԄ!w돋aVe+t^p$f{5\sWJR!50Fc dcq,0C!^3 +%򅼺 Uluܳd#Syi%uz{hU[ 1 2ŝVn?rnÙ#_s}9?YZ:%u~TUg؏!2`.9 gHARH5>p6}U.o@= G֬fS1PX%嫒zKNiEO8q-02xC2d~Ώ/v8QO^tb~HNɑ}8h]@]X{+r&{+쾽+tټzӛt% fQcr4VƣIh/XɥkYϬxÃӕ!*sތH@uR_Wo?M4PNy/d1-xqOF׊#̾ S#Isy.ĩX>45' /w Y T\>)ѾcKC&вsRRS"7<`_}%,N>qM>L%VKڭ[É7%DIP>iS ?{ 9bPc\ +O-;m>ݪƵj|%1b3SWqcx "yH G,l)(, acJ50vTͶs#Gc|M#-N91(m7aVKNvF;$h$;4m(adj Sj: $_^tݶ<΅"YZҊO,$8h1 xxĢ8b#%#ϡAcGI>E K/\wg~~\U=`cһ*H@'#tV5KwkQl2f)JњQV ܀[" Ԩ پt.MP&jj ̆ĭLRЧdL#5{S,W(wL͆bg vb8k9"ڹI3(~!(0^ ǡѣpX XNYJ?3T87K,FL݃aEgoJr{/.!Ƅ <80̓8>O|- zoM] B$Kb)ҝm0gv0XO2>O30#/gLvM`kIϲ+Nſ7-Wۻ+kMQ'oF 2&O!Au>%bMC1@tH8$3^Z+[W\<)fv߫qT=/_7/b|%x{.l&)+))_o}#IV|(6%Hʵ3., R1E4Q#X_7֝Ww"{7cSP@\AI:AK qTl0:|Gi ~Ϧj !}moN%c9[kH AG [ Vd[̉Xo$ /dZ_Qyͱ~4'+`-}B?;);,rBL&MD(,oɺۺ'+V;$C0Tw;\VV8c,/2iۓL͈yZl~g4uH>,kJBE?dk?^&4//Erék܂۽?!cD< quZN@]*3uB=[$ޕV tqN0z?Mk Ɍԙgȓ_v ؝2ȼ%5)ޢ{:ٌo++gyxxѩv6Nƥ7wGg#YWTBZkf+CT䇱mw6r2S ^bQOa_ ,a^_LubDĸ:9Q@(_ aJ*]Z+PhXXQ~iMSz\lZ¾Eݧ=`.>dq\3R'=I 0ӸCxP{eCd"Cf&C*>Ʌf60u4U\Qw1Dg&1  &lsLuw'vqHK}'"Q\V^q9MiÏw9z OrMŪTn¢O P;aO*@Ɏ= NMzvI3J CPn0z6γЫkj{}B.~0Y(fl{qZ+fe:ӵv2LR?W2ZjKM1e8y;sZbUkd0ĞPw1<&3Y{MB6`0a7˧c~cx>:1G WЭټ&?5tlZAPK˨Ujb2({Ql4ou @/I8'bYXdrb37$UAm Hf+OQ~b5ȸϺ˜3[ʊp5( FsP_Ǯ>:S*Ve=M[|vGnK_JF06ۄ3[%I)y6 CqLYHQ.= >8B ] z+8YaM5nooU)V(O^u6qr+sM0*LJ+70 xPpB$+3[:5.$rG/ PkԤeoԷŸq(@,T ዶi1gr4RX SW`(WM{Et} AxI x>fi藵!};slD..!$ZU<ͽ;"I+iӏl HC.|e,,@9!8&+ĩ3{dm_̟KmU`#䩓LU@УG_EGw? 0;cFa9d p5͇wC>̰S ,]\D=%BxfxY a+Wh|ϰdS兴W )az<361dNF9nSH)HJf /!~3g90z 20|Ji`$ 6EeRz9=Hױ-Fw#ffEwYr 6?jAVjPy6S(x C=Z5$.@tB^c_,$qVѨ N*!k =p`X^ `Dž1_IO&6\M-pEcFqfcztK.أ>g 2G}rxDd{,F;5f'=Te@]"l(w }~gR}kKuݨO8ǠP:]~(q@O%apa1[7r3h' sWݍm[G%-|Z[*=lAߕ@~q-8D(NW&O|  Yj/%O}ǴwFxDƨnr%9k@&D2փ0<Ƹr5˚O97-dy~  ÿ Hq=VB6!^ vWG>Ysy;T05x)h$C -aHN^ zd/ϊX'g_3-; NLՠQYpVHQG<Xynfc^Ihf#-B8+ (wʽHcyTASsA\}cZH{k#mSR g[yyb耩qm@oMM s=3)5+}X˳6Z< *!#r(,]=;^K&kPtI튞N&}{ayP9u*'{~+WŸa;VHGP^ZmNLt-}oc2MIX Pc(m=̇u8ѱ7KMϟ'AGuqJq4 W-Ih*ǔv9gEK0&EHlH O7IP4"_e}<ەw"T) soËDA\wwYk~4 xoM;|*y,u4+tT& s2,HÊ_Y+[>qv˕YdT½rUc@|Y1hXaPocLb$y{a=S% F}HaG|+xy62@ɞ*Z% ZTq:^A=q׌]K˟)| aPXiL2di-ۖ7&t׳] oIzU]aGDw)ۀC klIH=_3j1]j _)fX2xPtjeKqN F2r LZ.ŀ\Ew6S3<˝V2Ęyyh$_scqĴ˯=iFձA>^(HGU 5LȚX#1Xmߵ$AYsk_a2k#掫x%M5H%eF&=CNcC}v+="C_1L md_nn="Hl[*OjL)r`Xc3 o!97+rXb93s1B Oy,7j:%` Y^Mca`WI\Ĥ}5{1?8{|b ٮ]Pݶ2U=-!5A؃H> 7Q(Z]& xDPznudB\*Trų(IoU=f?'t):=4Za}0e6 NK죹!bVµ1xPnM1Zc)z滽5)iէJړkasyD/^+g75.8yk jvR^zz"YMYX'G䤼BH+ߵ+o H81^nD n20q`hcD䀸n PC\8iNtG!FQ4O:xQҫQ#VL(*ġ%ɽ0PKǥΌwav+4.G5| ƷdH6/Co-L!?"x lhS,"[Ʊ{z3nnR@[4?zax'v)]N"2:Ѓ9[uI> E+΂6yQRO#x7Њ'n1qHNR2:2=F-Qʴ(E'<%,.au=k9'nBnWIXm͔ ;-N17 Z a=9lwz(ۈư?cՆde?_$IQ$h| /f!L<#~[^t8fF -gDGS& ׀O*4-1@)V-3ȔTtVOzҚ?M$ .ҽ0`AW2c׎~F eꓻG- ]vUҤ0Y9H9lnc^ۑ =7du. 2ka/n)NLČk&ՄǯNwS.͆eYaA:vE,IIs@L Fv0h4+q`?Ι$Πdž%Ha^ 3B%wpv㡸ErP|\_dN$BXiH5㌑k{ۂږ^LT}ЛRCkm!VӘpD|lVmI& i9=h)+WhM{U$JHk[oVΤ렙 l%+Q[j&`cS9LP?Ui{Z #g'>zM9OG4c$aʊXi;6TXl?=(C1\TdQqZgDhb=52ؑ%XT7!|FL3|gQzZX8h>O;_i,WjQ׊OQ B䝘 kPP{l|-kMt^k)4(FsoM1gV,c/>/LOx}W[ =MޕS2ffG/]fT#D GE^`C." ͋.+s8rTP!3skBSAĶ˩ >&JX.Sdǀ1'U)3'\F1l`bw$.Qh5ޛhIt dfP{0pgP&[B.&J54#)?\cz1ku՝P">"!h0vim%cG@/EJ#7dgx{V' fKqsAx.d- BUSօ!t.d[et]4NaB& xE{ z{"z('D7;ĜC aNS/?xzͭ z'&"4Y.hԕ.[_\$@F 2Vpa4ѳ$~r . %F2BM l[[׮﭂?3c`Ȅgpأi{%QtV|FMTTRbt,]X:}7c~! B:G|X7-]zՓZg,Ŭhɷ*=.ߕubX˛R^%4w=1oσ"SnZC,Ô4Ϧruv&!@jGP?|Sw RP-Ȅ&O'&xwݏ}7/z)+fɻ+.F̻Gü_/uF*SGBGtoq)Ro]NMT3_l$zd+ g4|_)\iptln<)܅ `N G?y—;su {TjW-#!Y04hW@W+Ypgh#,R )lE z$ P[d?}g\:ƳO!4KhБ8DK,hUr8+AnUO] ^#&NUFXqg]ofV_VbіJ`zl%hCi1%8ewq–{l#>"3O& dR a31bm\ЪЇA@}. .)Z,b ԫ.Ca &+Le9;&f/:/@! raE8WE;,=BhE-KFd$B_Ϙ(qlqߕÍڈNdL5pJ8p}QvemrI-AV4]:,JKMaCj emtw0u1l[:m67gq򍥳 |Tvr~nYsp06z*^W([} [W>:!4,e7ײgV7CrK kO\iPs\ߌHɣr4j7ad7/).ڗ=smˢ,6iY/oprŠ&Yӳ`QoLF4 qyiRYD̓Z5*7 TD3g(s z2/ʨutJΜrS:cY+oG$zya1bQ !$ԝ];#ى:)@p +m8†PY?6SxTxʲ,#3}' @[X4-zn Y$lD3x.MHuR^ (U,!kI#<q<^ֹkC wXd`M\+H5BMYP[܈ęy=Y'0qP"B84ډB+ 7#ONؐk'P5\^e- d<[ P'>W b,-kH“) L2Qo("2@zJo,]V{<*LjyԧȏGh25< α"܆$|%Hp%:wb*1Y oEC~kj.-zxWG*չfB`Pz ?° :c=+Q7GvP#*W:j'&2mĉǕ4)3 < wYQ@AW("3-̂[Vh|Cփ;_O!{B:f|!GmRAD" R7qU)i jS&k:c)`?rȐ'WcDpB[mC^-76(Ң^nE#޷9 nԭS|a 3wiXPKVˑփB(|QU86ڠZP`q2#dq:LPnh/U(|1Bx}'zrXtaPz;%VOܤQV\nzwM!27]YA<@u%kr094> +͉oXg]ޟB_*3{;зիݺ́a 3uT6΄2}=+LjOU)!Mr1 48`moŇY`Ә)2JkN욂;B = s,sra 48fEb-)|e(DƘVb&8 -Z1_{wsY6gSm{=$( >:a_rI ~Vh )ÛrN1\=M,O ^R@)UFUt]d8>Lcs?_ĸc*A#{=,!GDѨ2MEm^>P,~>$aJDz05}<2krFL˾@,k WK"ϧ3^!mwxSX.Jگ oWˠdal=7.|G;S5ՕA@'5}!T&Uy`/[1{djMkǞap30卿dMmfhf$ziuA/fҺF_hgꎒÎ$G,8v!x&fvvpaDL?+;_NrxihͅzrItRf+d[c%(R.gbS2OIgm.֎8n-D맋a#a@'5R]shY]򳸁 Sy/ؒ)U~rb˳qWI~Lb!ADyuuL` \1/Vۘzz⤮WêlsHIX;nXO*Ndt㳐M.N u*y "]o){C}#t+e>g{k6X8z 9{ve_RXDpn۷e=Oq: dWށ,~q$Ѐt(~ ~E{΀m'+q) mou{=Njcxߌ鉶c(˅/tѰ7 W砭̔EɷcJrަBj]\G_׮7 yf {M'Vhkh^w6xʸB ! 524V-? ό1$s(Hctu?2c)+|=@R8*ܪ!I Ht2HZ?lۇ: v/v =64K wÆmKxՅVւZ>^fzH$xܺ a$kh(><Џ}gmSbYe8үdfk4#kt=m)1&_3{X&.M6~F\17/ )J{bD~Ys@tB( o/~]a];3="w˿O"Bn󁍖:Db_&P+6Bp謍laZ]i# <[%erx,_lrJ>g33|\;Z{Hr ;aA`$dƲ.ˈ"vŋ[鴧jZH޹J ۽0jrsK zT\be`% 4;ISG8/8uR>ʼnx'd41`Ѿ1f}7~ 1;}6M.lCTzkJHLN< /Yװ6{|IJ.z5ޛ d$$62 eTD$k멜s`:pv$wM4Y *%p霴N+{ Yڏ"x#o. #HGOA3d˴.>PB"K< I'i{f$!Nf,[اdM"IezUW k,tX}C7#"@m17B X=.UP W$?i\گf#.cӟ,\vC G1p>ʋnk"D&u6p'T̺,۩BQ˜čGY" }/k{in̻P=2Z~r4җY&ڃT_wD3yC#tmT10OH ײ2ꚛwd.V?%Ysy]ENs:!`߀ 6 b W V<(W2#{ېE OKQj7,,_xZ=iE,8b(%UI$i.,q)@=KU23?}, [-%/BQ5`>_"(M!xq, ! J t@H&ɇJ__י~zBw"*v}NI>V}USY3):~\3 w~S|ϔlL;842gγs"SxpK,wYezlʖ\{Sgה#y[7rK=0G9z^̑Qa,= DFǟ\#ZtEqo.wE9y.]=b`` ~d3@Ke$!Oz杯9ێ @4Gp̫c1OBR5UUz1I˷S#eܕiAߟe'CNp)wUxS|?vq[NÝGSk loQQOI[{Ea-~MF&6UŊ -n}$^ \z F;b\r=\hX(*& 1Gk+cWDE?Dݡ18}M}&n aƺLSc!X<.X,^hIx@?'x'h {fPgҰ"H`HNl)F%$)(.V 93hiC/]Ɣ2,AE ~+;ʔPoD&F>Ӄqgd1( Aw]n76q?^"Qx8L'yUb qt>JcR\a<6cu}鐗JZjsAFLQ5/ f'K? wi.Rϰ@ ~ R6ƃ3'[/] wPa0a7ّXKٖ0fӣދrQ(c:9Y \o#KPD<^)fq % M?xgЅ#8.w1DQ]7r(qSB]tw_Ů5iAbEm,%@XggS\NO `b*wxb@ǙK`ja5̫MRt"$U>qr~~GEOtlfeTUN`78$"N'^$R՟1֤7/MbbS첍1]؋!0r;I`NH"-.:/x)q]J%\:ۙa c[c9.䫑j?2$naWk Y[Ƞp˔^hæw< 1:aeSGn*sWA4J_ ORh(_G48~%vN=9SjûpB&mgZ8X CZ+=Md%m3׎cv'X-!=&}2 h3eMLRd:OCGBd3a%ڂk{?6\;OM_eoE(Cixp&_HuxXYac򌩄i>KIC:k a0V=n~;9a278ܨcLC\N jM5EwOѻFEF3C 2q `ؠőf:.Nlǻ,(O.cX) rB kSpw +//43}Hm.0P'p$z!˗bڱ} tBC%Qw9Qx &cԖ0yMM lf2?es- -h.?#ɐ1ё2>+ePΑ>?{Ԩ_ 6szԵVW/)Hu[x~^<]hRj~ϭva=wa@۸d6++DS<dSw7OplL!qjBDDJ?hrـqF?<Q]6,[[6Q b߰ CVNr\Ԃj#!P@f,:!cYfKbZ5 ô(u+b9Л4&z<Z̮)yBzoasA7X+'K,u"ѭHq*c4#i_7Guvg,FL_3ø\Pl1f_Ԇ@ӁY 33 VUGeR7)G<б!jC0#ЭN![3C>ygT'$VҮt=XKR4Fĉnud-R}lØrF8nqwa qx̩ z$LoyE2ش*-OYpTys/SI/VszkMחJ@Jj/l {3ċ[vv&p >Nͤ4CD8t2MS28ӓUXtji}B*4KW4`9ɠ-w֠,=e9q^õ*c7DfZ7Z -=TT:u6$3u&,Њ>V>C4Op@ p3)H*5/nw/L9[J3p!,$Xd1~;TV"HNUNJ=IQQMX&mnPtCL$R/Ƕ~Ph^fPtB+Y͏RW1ɅF۴B`wrDޏMMPKwގʿ@MBrU>EFOPZi%4BJ̆Y@yVdTv zA]4Ki;b^_$j5ƼHm_e⪡X {qA*BHʽmBqSbt5*F w~#ʔ+juJ>F$4ŊbY[$]+(ijxWq* ɅBgzOspń9!PP;ŋPs/]Мg{hp!u;vN=z sWED71>qftbÇAxQO##z? eJR:hXGxhX"b\Ŏ6Sia(-z!Hׯw3uy?a)~gQS,TL }Vqh1|r[g,k'{gljWb!6?2&I:!~p!h"Y#\^^!W;JE>W$׻$ħTXj [/T&7DL)}㸿M.;8༜r%1'MEH'@^%f|I). G$/ wx?#5\!FccSV q>0-*b5}8zRKWl2TS`S|qa $&eaVCY ⥨3VWm Ѩ4 .A ~u"T%R %tFe",±@aFvI4jMC)n<)+0'IkT'\wC1?E í[n4g.i bm y__Hn|`=Dk9Y sD?)D`\5GcbFV)Vk MTF1MȺw'-𩩹_~m{K=X 14E1[|/Y o7(}S'ۃ%Xsp1rߜV̇U5x=/"TKFt'i`K>8/l֠Sލ]8/V 5~q>GagǷ(udA@Vխfvw_Vi~c<}J@}a-#oqs_LOFOSYIhR@"6B:tԍ+^!#)Mj{Aֻ֑adM] +ņ2U5Dtne{j趋 shZo 'VJdeQ MגUIQYB%OK2.-[Įˏ)0v7sqK%fչqz(nrGE D [2xG`P EZPx;ee>L%̒\6c&r:"G:bjyiq&kK5>4% l:.Nq R2' /G]2U&]2Ety,KEWz rZmbJƐR;₃oDһ WnkU>/b(#CPУӨ;;X|+*9.!}uSOs6<ݙݶL=fP8"!-/h&hCI ̄#Zjլ d*8+JXpD <y+a:fcjvm0k0aCO; Ua jnشf &G BKڌƖJfj|Eb&A)l~e< [ ^3{j(l8FI#{D$Sٟpz!p?)R`#gnF&9qUș`&DpjG]֧(eM-йKH vle),tLiSn Qfj <{vo~&mƬiAðŻ9&-wjd%]D N[PWn:bvXK|^nju*nH2欽'shi2Bf8Fc1w*ProExsjQO`6% z:>|.' frh4.QLb* } ~R_I3vE){Ka7Ǜ8ϧW tV 70#Z7)<]0P _yrjL5+e^#X) "&|Qg p_w˽,TzJ:8*r*ݮ#&٫`05A -az84<6-R%J=hE;Tyʋʊ+7ag:RKA|JK7tP F+B*ۭ\c3;")Zi̡G[^,l\ $5įfI5FSsmn)hto.pLJ.\0U DI )e7H?3;~eSfبCGɸ !Ӳr~VCC~&`2$b^|U^Qsэ~%W'ˇ¨I٣";:;*cSs ?.*zI3f䔃Ja|>.LSBU׹Ja#@UcۃRoen7QUSE]u55,!Us"z|q)>_."Yߒ( Nb;&DxYPɴ SUh/㓎kwh9$!zdooYMDbNjgc!&6D*(2n2(*6+j3ת A}a7_}JWcuKrCB>{`s#,nA]"T $厌S,ad[|&:>r/mSZ-2QdFiK.3&)X8jHҘm^J=zt7^C7l%zn Mwpq},X{>MWٿ0+(環@k?bg&8x5,s;6~ziu Z[!Lwlj+^*UMo(EJv:$=Laɛ#od{DOzJOn$Gg``y#}聜$Q ׋xc2UA\W"UČH @UZs*c1 =}RFFBsGIu~俀s;Nbf.`i1oL4J rj[`:yoʠvTJafR o8CɣSJv2~e!mde9"ztqe0S:ve1<DŽJlm%;*HQ_m['P^'z9St#] V0c4!LtTbD^J:l^šfm֜(1n:_ d'[ Ӡ _7ن}LπB։e^]V~vqˮv'x?gboHKg({swZnѹRCM ("EbVh|,82EX>4DGZ5sH GчxyǎA4<~[K^՛Ԕj7i7J)DVuf|Ɏ%YTH4YR>(+탿j{9 AE$:)ĆCl l)}k~DЊom8TmKd{.t䲅)Ls ySYx7[ዷjKCm&Vxg"=sV"5]2êE!uJϠ87X:-ϣyqI C9hᷨǸ:Qn~Voc΁MGAЬ5@2%w~ mT821HI+j o䄀6i>;rI~Lq_}֘?^P Vs(jٰM?\HS>- ֠$<0&M&F,V #ـ:qBe6/˨9SwV`\Dه9?0@L֖ǟ]7ZrH7{be^h2[F:$XSX7;RY*vYx(xvK(:b&<ŕFHw$[1?.gc,tPҌw ?>dB{C`6a(tJJ0:ZӦ0 mCfb=sV&5@"i_%'x9Īc=hxkx_^!\pwΎD paR37>\v_gc#l\tuzc?Qzy# G152b#HQ%QkW} F:hxGj @^;tFHsıRw\y5Bm_F |PzBfS$/v㈥#-m- }(}icFӽ8SjZ4#$t[d)%jp_D.Pf <w==}Z28—^L| lx^d557&eqr^zjΒfֺ_@$irJ`>Dp4VҒ+ӹO~>:n.ȝG&"U>X)ayM//n_xhPb|TeFƤb\! fl*.~*8aOhkJTbPQPxISI]7?mTPoa}_HH&`ha-5 XΉu n δBS,q`Gy %co>k"; =M0Wk߁+_ ,AUQ"qQep- J) )LC3J`-qg_Ck'xXz%d|'\<|cUv h-ܛ6AcEV>bi Vk{[Q Ľ+^->p 0 y %/vICL"r]Yν,x.d<`dnxmM8+(5X09IkKT7mhG|o^m/|RCynvO OO> %Z ̫ G d3Ye6uY,D${lA)\qڑa@؍ Ί{E Khrdo>?}EYHL|axcl?_1pZEQ_iWmG)3FSVC[rՀy!臩5`~ Te:.uMR?xGiAYNťcExzmwWY>X4 Xy+ XW).Iڊp  _`:x•x PxRn kNxڠjʹw馅"6*EC Z6Oi$7WA,aO)ܻJB$eXu(qh|[qNބX^L ҹW 3Ϭl zBxNCͲ$~ ME 9cuZ]DJ񮵇 =-ȣu5.ᤚ '1A-~=wX<$#'̂G'ëRDx6V}׶ K|_S% iuLjwώC) Po}a ώ:SRGz1JIi9";Q?갈TuPm)Q%A6ddmR ?wAoiC]{g$w֮F9є@気@E\٨bKs lZ#*Q`}]|^yz*? O Bjlq2@$ʴ Eݴ3}>f7)ɭ lj, dV΃;p]uy?ad_+$N=}QWȅ {!h$.>Z\…Q24OԻ4.hJ2z<*Ӡ.=dCb!hS8 8oXrX-nV Wq TCxr-0AKm %T&߰uߣ,/ЭIOdJBC(uz@{"`#\KA a X֩hޟK5p; $ULW12Ili#(#!g\B 8kݔ-=f +8h)3ml:}tD"ڇ q! SQu7#hƁJ/ܐe匝.ʏA;|܍.y 4@!-@sFfVMG#h -brIJ;+Sg BF6g:Hx@fpa/.G9M'!?D1+,ѲߒXpZo.6i6WN#<'6Uo~wxՋ0?%8+S8Zf:AY:țǥtBr(Ϫɾ}DώDphJEok]&==SY#ч ,--;nAug.}1p‹O6R*rJ汿7L

6`!nڝ.vEKϞ{ a qǃ+CqG0I!H{t׵C]8Nj1BY@L\PGHTo+Xm:?xk!ޗܡ$y ' :kV[+0,C UYcgmC Q6yKv mȴ  8# } }N{Iʟn;PKlZyK j{3w+*8U|.h Ľ7f#pL}ҩ) [ê|5]YQc>]$cf{\/کq'+ gR#*RrHKs7P\qQxǤ4?&3f>& 9*~ :->+eYSh%wc޽SyLgS FIL J[ϧS~~%$[d;$" yEDTWM ,ϔ PBr|~M|ƶ9 o{h1l:U:@_LEʄGnLC<7+7gBLs9 n:\|~ Jűꦨ^ڀ܆]-*kߵ8g÷@H*'#Zɾ"S&').J!A+}_NK*wk}}[:(`ʘ2!R|NB2;!C8hT͹Fpֹ/^HV}e`ses{eDA-iRq2vw4XonVn̼gq of,B=5HVW98ZF>mfB}W3WjMGd RH 4 ϲמٕ4^ VstEfp3 n [~뿺 ]6R+qh޾EA:z,g?x1=|koqPqLq 6B|/ōQd3y!I&=L MFrXk%6ׯ,Jnjy]l0sᘵO7P,Ӯ# wF|*-I Ɠu_X7TW|j)Dn8mG(Xm" ^r7#!t+g=UY1H m:8=i0?wy^S.4ynP2OR{(3I:k0.OiEG4-g~!T'r|C`;y6%<CӚo6PLJyʅҖWl Bފ;X`S3[ V4[eZ08bY *xaxp eb08 ŗg*"q?ox8*"{?-O[ t1A:&߼%EiD*ݶo8w?ښÍح ]swx<4a,?*DIkӁ՘L䣠,W1$!Qg]񢫇 3W5Z*rRNpc\8e؄/eb2l/ɹs`e6~@R71ڕ}A8ͱvFܓ:QV w?^M"֣dj {O;Qi ;+(#afBΫZV1T}tT6V^AOm6oݝFo㴵%Z@ P_t[.‡/gRSeå9!%G}o\+34%AtuGf7KK1aM 9ӏAxow/6 yш֐ *5;OLp&ĉdn~ZPur)&Iz܉%8ԶnkcZvGy>`KmS"oe7<:L5,(Pb`"|7E䐞̬+볹5`-"!stU _%7Zy0FV(|+>8Ouagꡁg,!t% 9q@C0I=9g܇A'ηlxQ9Yq}v"Sp8FJ}Y템TiPPGv#\'Jaޱ }ŊH۾E$A +}[F`}{1NԽ6vE+$)J45V}`ǩ}a=ZLp=E:mav9u'~GqVNKF幄?Y\HgY4_U>Q0}vYZ<5ڂO^ƴ/$cj6@G `QOZDmOO7B A/*?= KX.V9vyu}d^zH^=)!HZ j[`_-j]*rJd.R@YZ=m25G{m2 ޖcTY|(Ӹ^>g7"s 2N]ںudVs9 3`7(`0; ˌڽ/צ^J}TláAi4GutZ2%{E|(y9Tno{wV= ͗H:βh E h,6$wT铉땬By,Ve-ދIYLg)BNGQ)+2(6wK 9br3K a-=(~<ɡP/x%\!n'`nZ׬h ykk Jó[wâZAiGvcw^>u<-QK#O\n zRc3;aMt3Ogr^hNK, 웵!;&;BV+ _`;90Y%(E \~_5B^|k{pA|qPUmV褕z%T jtm VAknNom*u"#ì9?pocڡwz|lzN#kf1ڙ'yV x4bSw3bd/Y0?\4$*cЩz^2b SEnU K6}7Qs*Tl;vB> eSY49V]90N/buEpq܌bZw˼q/Ul:>6\KΪx0ӋWQq;H>zHY518EBLJxhjۦ,=kLdGvi!H06֥&ÕŤL 9~Gt_9'^ 2=lRVާk4yq8)kR,a S+!] Qw_ư| i͐e/ŮU!Bb̮㭣M8ڶ4vZՀ# n XPOvE_afW3b2 )\S'~9wDIBZtz{ąYЕ!"+<f-o շ]Ff}#K|aǿjw&B pS g00Ra# *6zj X.RI$ʅ<<:GАy},q;')s1\ÎVֵA;iPD־ngH󗛇MKiӁBSRJZ}@P/1N޿ 3bѥ9 V@>.)ߢn5[DC%P\1uX. ͉1_4A[t?|Y%3nZ#Oɳ Kz=͘d P:ZceBaeW_ΌRBCnh1sk\MVc|ɺ'fD2'1泫t)t$,o^K5B;O&v1՗Z؏-'-Gm[(ԟ{o $/uA #+xJV;iwRgzjƖӹL'rKkHNafYՒ0^Y)}( Fgap3j ~B C JhB"P^mJF,,QK[k&c`G\pl$>\a>8 K!YDI9x )}ymX6, 4zɧL-*xv@nR>;Mx L*qHJAG`z{!Wws)ȏ yKaR'LG| œ$c>uφůhEaKU6cN_heC:x$MKAjYYnaC=c~TcЗ\{7PhrJ}ClB&ܠ< Wક/cT͜ ID>?-ݷ"憦dkNFxky4ǒXi Ŝ&}WtBYJfw#k|0,b4"#oVK}(3!-'dMk׷{lZ[zb+m@ g9G޿$ڲw$F>{ȋN*jAsAF봐 s˫qzE_V0AB&#=a:O4^B,t(ByQs>cģy,+N2\Yj֝r{S:e4r^$.CGA| kCG#(7J@IцrFߩjDL5'$Oo *'ka7fp ! 4Wg>y*zr51^G!S+![ _IC/0͆Z|vWȒ DZA QT_V08xXDQӧl (9~rd-W ̔<`rU{eq{Cw㹴T9p"q jJbI7țXR/{A5Op^~tcj̡C8MPL :n[aw  zRu5$2jKn:n~^',R:Z]<+/ ­<.g+dG,9W{ /@plG(CG U}(!\Ʃ*^/v#pUs }{"s]p }7mUe}5$! ` f@j;& d3k8=y; Ăm=͓y1@z2oGheF&ч 0RVT Cnf7SĒFn`TpcV%bFAnҲRles &|&~v ,PZ'ndXrb( &մ;.EOIc:~p2y f={< WC{bG瞻8f08r lҷ8;X>h͜!۬-0}jovt9z{"1y7%"c@LUtw']j55fnMfB TB4P#AT{. _rnX4E?u8O` {n4 FgrZHF{2Vqx=4 2sDhj &8`!($5T[?o9]$G$;4,ENg=paYua=.@'B#&I%qy;z>d}[LOPsnP9̧TiIa0 LeIΨ@U67+ op2crN²67N䋈NطN5ogJ{qPasW$j(XZۢoXuSiP&W@EpԳ؟^YB ќ)UK,VzSn/ш!]Zs0eZVLKxK ^kyJOY+D(F0"|hN ,e吹)8d/v^@K7hkuGs^ϓ+?7f4gFǠ3fwkW^5ȓJԹI,Y󊌚0m&F"XHԃ.bU`BWJ}S'ϒחVVGM^flJn0ɕCpЛltRҥ%Yh[a+`(0݆ w)5s]/K%gk!6ĝh*r%sk<.Yh%n~Mўn-ްK=n"4|5QnPc D"ŸYv"t{ 4V 7ucIdi$"N(.ι&A:i:q*0O{[F3[q_nc_cȃPtd1ζ4&)9K /,^'"oMXaKE)keC#tB;4&!Hw (8_"ԺI4=r r=mٴE)$|Uk({pI9#t[l fx>G*ya-Yۺ&_J]K.e6+_ ,) F]^]ݛh":H;!@j<= mJqj'Ԙ}7_rn "C\Z'-@lR_nN@Աr)1TiО(%X'Xّ ҥ\<*_3(?QUT#sQ "fG6*OAqWDܝ_nrn3$ϞU/95ND&՜S=QO߷n$pC6qc;\jv DC)Y Iq B7B$Z$.8tU+ȊfiY8V PSo +BQ& ߍ7H*!Ǭγ>vecEYF;Mj}~+<0$4i~朌*3&YM&=XV*AUR߈8/ޛm;kLY3o35/{jk^ځ1PC? z.TbI0ɳ',ʽݍ: n=>. fUf\=2naێJ-k:. 8 !o _K6Q&h/3id] ן woǧV䄧-L*_KYPUr僱#1j,5<8#;/`¿݌)H6c9O $!Xi `paa(5.,;tG&}N3hhAIH~u5pm~y4S|L兆xfT4(j%6*yWg](#oL"6"Бۅ.ÖeCYE6"D-<⟻p`M fՂ<;8ȗl \a_k]i#x=p'Je^0d0*8^r$Xk+⁢Bddݖ kν0b/!R34\^VB65n4m6S.t؅#U^47%nTV:CQK> ~CaWg3l \xqd'?bW~k﬌\q>jkW/:k0N;} x݂Qͻu+k\w!4S˜uz'+gA2 LOLӿ)p>JӮCJC:Gm9 k\S=]'qȞ(vps9߾FcD)] q$٧wSl~⊼G[yf\嵖csӏUq52- *wJTX\*, zA/E-AkL1J` !s?lpȨT&bQѸ묛`kr~w0^BrNp9: ڮ*@@Zȣ$_pwJIPk_D֥Uτs¨dȝD,ZMo]ƭ9}63)?O}U"0]9x4O/bE>5Xg"6BN !u?8$ _'ے*V>|?0rhbk4 ^z_(,#A!eLe~P(^ 3ۨ Yn 8fKJ7CH,7-`at7ƯVcP/q7AhϚy*w5 [9aKNq*]Eѥsy!FP2Dfh^Zbz#J 3e?ہWs zbz{Y'Y'S:V*4jT^U꯴n/֭)(ǔ,"=f.,鳕"HaH7~!, س%?J_M_3PzV3۲ roGQ qx:-ĚNga[`l%;3Ms3zV,U~ϕ`bb X5vX`#:e[/dx6PGtA$,K,m+XyTeH< d%-$.? $Zn6;[X'rb/ DŽbk{aCʣVQ´&00{i9VO3B m fK(6_Re0y7^$46ކYySd[H @`?'fSXTf<~BL2.In8AS]v]AVGfyڔ6jC)jtB L>K2HPV0nb>8D _pExTlÆIޙR2m=mY Pʫ1%04v=D=!eU-<>'!ylj?&~q+9SXlcH֡{M4q)FzL/// O888WWI"-]jf3Vk+٩e~+(h ѪL$5K +t`PY%$' ]}5:b9S l6B[`Z_%^}14Cl5%]B&|=~wF'_&3}㠶C t^WHqc_Yc#Eռ`|sF4ˣT FY%xV[3Ncyy(>+*2+=j쯹(QKWͩD!/!5c$ V(Ogdr‘.U߉(ixqe3K@t[ L7S14+Q_8/[߯~o7{M)k8ATՅ!lI[9%$(55c37q%]rwu[j-4-gϺZO!]Q0*Lj{NvsIq z,c=,d>f?=%x͞.lBچ93XbGJ ?f {L/&W99ona8x&^Q@5[0@K+߷JqzLG`t tPѼacdB=c0ч{ƻمC,vxQO2 A} !8(K`.#>8BPJDiA}'^-,Eie r?$I̭ϟEnrƭfe( UWtyn-=b08 ]UN]0ynsķόO8C}vO11lOvgi?g#5/Vs ,s]b2X`bg>b{u ȟXqGg@Ս }.y9L+#5Gcj^;jUEHrEH^9K}\RWq;-YBeiW1x?P"s$ &ך׉aۇguFX7 bqMq?8l?<׵$>FI}Bo?t濔j=pJwN-ՄGAOiРX^zJNtЉON GQgd."${zy I!ZVnwsS9s2 s vKq@i0Vo>GqP5:j x,LVGPn f4gѸp@u0sĶbC;.G\jAV"_ Ђf\K0bߧo6%-pu*  ?u1R%ȏdTʨY;ǵos8_vNig} GV~ӝ`qThϳB'K0MI O FV#OE 8u;Q=ښW{o(_XNb{c'wwj(a&:)@Y67oN'LpgLi=Vr$a/6ZU9>K}CϚsnO=!,VUJ`EDžo_+&MNJ0Uy/-UPy 2Dvc~okΚR:b)@ Ft ߱ Xߗ&H GY෈Y5kHonYg] ۼ$%X!;DtqE(Z Ut݆F78_`uBq&pkQO>7)YKgu}Z bn!V_Ro)/KOO(:_ƙ/Rk, D .YCy߄Š3"Ek2xc+8~MmfBͲkD7 0xq4~'pF^mU qph)YΕӗD-bAJi R1P&@Uh)]g~PFTP->C@c˶7=Wa |Nm[{ KF]` IfL]gQ>gMUU;p1BeQں~LC.i4s+Iq6BX 4'6qc׿|F^?<-zΆ ZSn~29eH7ߙZ9,~-5GIV\KΕ2?Eު׭Ok@veQ($W?qi:46!cㄗUΓߕQUh? hqڧEPq5s)X ⵌ|] Lh^Y2ש&ab/fIB1GGoCg$|!{fCWbykp|]b"Cų!}LjF}{ql!.YzU]|_ @,ԡBG7"/M4HjVITÁ7'z{ۄl@0S"3[.0[NEX,J=~ j[ et d'X3Ъ0L<G~ㅊ3[$N}Z>R?a5H@ա*@+%{TER2L@_9Rrmݮ6 D&Yҵ牥|q$.dUoGiXy$9̅Rk}ؔSs|A .?&X9^\EO>z,Eeq[i{U?#M o$gLR=wy4kP,4s'W^+O e-3jj-ڀਧ ?z пaIJDQ΀!?$$N!YT%HZőnr|@J&;z!|igLCH~ 5&7<A>yM^o_sD1Wu8(O) ʶZqFxȸ>|͉*iJ_ 綰%nզ`bsB|ͥMљ%l;Y%>Gg}lSKg8A?^2uB3[G@ռk>3 IUO8T'b mƜ՗]\_tJDpjTS#88rnv&﷡y yĻ*X`Ntvv2 y. E_gUܢjfILSDw&J{Fup]ki?{R v;t wl3ٞ"IA9QɉO*h}3I<dQW@)j +vi: y&w4.#T1&y9Q#\.Z޸a)K)liFBF 8?[*G NBt`T?;'szh $}V  s-8 fH2ʗBV7|#;ZٿM+QZ .6Gm^ur2CuQ#(U=)v#6D+KZ7:۠F" 6r+"[ } dN:7H+?Bb>+謪{C9Z {r5m95b |w& ꮩŦsbuuRKP3'-`5BƵg^8aR5"\Z(Nah u1ЙVNZ7UMvSzMX3IwGYo?Gbk]Y< P@ΐvWFAD"Q*ȩPG3Ҿ;oN1qaWE$|b?xc0 JOg~Br-Zᩐčʭ]CKt<&"J[bp 2l9iYob}L_.cҿ[ /J=0SuԥיۖM2WuIϢ\#>8 K}VbNu{ꄿ_-}S\ms uYoϺtJa@>iZB'('/в-Y!2m3jGʂoZ0uħ/އY=mɿF`ySpz58/$3J<)PJn˟JƟLl_JA<|T6o}<2c.Vo~OF5DJDnX6KCS~hŦͫ:;&dl{##_"Kb2c֭7=ދ"^"ve f1wkbu ȺXl)3UeQ]Sþ3AghŷHH8 2` 0H$cMNT Γ5]LI4m;kjv'qiu11X! }/XDJ\eu)93 ӎ}O6 :&)[LuJA%N(o=ۆTaes/i^<,6rȫevWzx{g{`s!Dd4V;/9φ ς@CQi0mJe|c9-a|2ED Đ&EfFl"Sz,ɠb__Gtu}Qz*LVznڬR[{t|úv/yk*[QY#}70=Q*G  KOi4tdۼŽ.X ~|0՞U U`/:g yqlP') Qi݆/eXT#bnAS'!~cPELUeP~sϷrp&NmQl7|gSe#0g7]{##ӜLe cŏTAY@eO@zdA|CO{,A<"مE.x<۞%12_C yA!E Ý;ռϣnȠb>ChڰKuY_ @{6YpG @(ӏӑM!6A.Lt%:rX]M]{QLP=2Q^p {8IaGsB H\V>Iy@Ro?І_7߸?u߫n Lی3qZT`/*l-?xTZxbpTV#p#7|%]*Nihw]7'dOGځc E/2W L'/CK4s6 uXwg"Y(;N½5ċ7~羡 Њ'th VzIyuY$%fՠ0p/,T\25 eÔ78ܲT1٣y#>X "uڤw2S%eзLX&"@\d.r$ati\-V؇hNѯ-%]ґ쫑'Z|CB(()(jDZu15b =jZ0豤adJ0")I#a+*V|"skI<r8@hx-W >0y5ǔdlԔ/9s\5ޘMx%r ^+dE{3lձtc n 4F@Y(}'vםG0\J½f5dUVb4gXѴ=O|wjZQ[Dk!=l[Qz3v!ȿp DyUnl&>0d )e iKlQS8Q!$6VR\*N!1*/jǫbn_w1(j33)љi!diatJuX7+i)(*սL>m,+h'Sz -(jʒ\t(pa_ͩTDk3J7/$./PTVTa ˚ i5>,2&(NX_wl*/F겆?)m0L}~ X'MKK—Q9 v41@Ƶo:+OyK> =>b.VejGROU&UMrQ/j՘Р{~J5/5M7+zlLPذ~Az!ub:153jRR΍~A8ل'9 q7[]zs"}{e]c#衄yA?Qla5bUm)@3뺌,qV5"seҢ}bt*rdpƣʞ30umoX/DZ=(R`Gatb=)?SnR1$srfP6ML>Բ?F,u#5@ߴ_ueA|f};VCU ^Ds#b0U>H]yeYDkrd#"3APPl.NJO>ϗf2XR;ب,%q %>*ՍM||s+R[}+05IN8]_= N_lˬm7C|j4IT q:z}\Bmkd|po.[ ם? t!(YG.|nn~cw s ,p%LN 9`W߁M)$ \:^Wm͹-1M[(\>. - }V@+9ެO sTx+`qb\f%a1 Fwf" '\6Y36/rOHA6-Ů]'п)QdBSezd,{=_,j< Rl/k?Ѫ]Ɩ)ݭ.@v _!L8L1>3g վ>El3 rs1(*&I:HSIPűEcʇ~[pc0 5<~QV;3&Qw7oV 8Bϳ#0`G8ݭ;kRI|`[&>ҡd#1k)FDbɛv~=T:9EjEƍHWIΥhP￐n{~BUвA>ӱ}w!736LA^$TۭO+nK_UURHn(Œ܍UܗbYɕFh9?5|cV _+ȩ%5]ԯshr#ź][P =Y|/nlYR2u'o R8!"O NYo4O[2t Y+S+J3RmfYm\.T"u `֞ḿx1'PU':>}wk]5Y[J (y *Qbf)v_PQJa{;'nC7ۘ2 =N {J=@ީ:=*ԯͤ`i+]iqZh - -?.߳8 zFw]KU8ց$ifEBR>eLɸ kךae*ɼ"#qxQ\-]`ΚН#a$(%6§-D,=@5x^C³O8{c#MT䬨-*|]-#99 a(bk:E7@Oܭ* (dFO%t($A : AG1/7;oQge܊ T%v&P b*ս'l^0TS_‘|&8 @/" ꢵY6ע?YYj0&}"^_a,u8otkw7L)G"*FM1jTԾѡ!޲mew5I56k^PƆ@)v'lhqd vK3Sioau b`=WYҍԫQ % 7u>'am{HY|QC : E؊YA"&ǓbM,*ZgMk%0l&4,/0KC< ztoƄezΡ,cZ n[JFYJ(c_s~q8ecs؂E6Zz”?Be\`䬪j `NʡK| #s9N q*Lj{ۈ{+מƩ)~ph hV#C LFkǃpxi2l+DO !c lPTm\3@!d&b{K7.ɫ.0r{ ;&(⡳;GJj,2k;Nkݐ+-/0[ = 1)yfr &ԢdTo&s SRo\`&Gm_l2wW*0= 0)XhT$(ֱd({"(γA q 1\qg9 NdsHrV{/3Zqg:1[[$-3ճ9=p<<5 Sr#S3|t@Ăo?SXFq.fT0u^9yYl:t~1sK\#|;6C*Rm?6[,x:FZjmT8&Q>)ߗ1̡@C':(Hx ?sZJ7j8< m%7m_Hi9&J11"  T4g:ϕsO:{ߣCt+ -.V=u7`h[Iayv=+gr nYG4^b1g0?{.^ ~k BM( aq$ L1%.?x)]%rN% '=vܠ Q7t]sCt6 %Ws٭B T N?Z) [WdQrǭy#Yy:7ToT܄2 mj *΢0׏%|D׳tw#A2)۸i,;7Yj2 {B3f?@wB#䒲Pzo{N~t,ݓ[kxǎV= eB:^FJ 09MTǧF虤Fd`&RBUj!NVΟuxuEo )jhd I>xAboI(]ѳz/֮3f ?Ŗ<$#./Ns#XEfOQٮEgavuNJōJIQx\|/@]LjQܚT'Oh{ Ew:j5 ʹ(O;&`B y9! U;%u_Oʆ4H ? 3tVԱ˚X[S5W ?c!(uxKӠC-L/,(8r+jc'] ҧ{f8zQZj jj34bKc ;RҋDo?.i|{A܀,Ul.JXT}S ѥcP猸s{rסs֛ÞA/P|˦俛-fץ JaB\d z&{>e/r(% RiC751w˔IIt]{bEJOՠf'D=3TtyfX3}k? HcXc {;V<مNEG5lr'_|Oj|+ ~ -S5u54ZLNQ, w j;L?t;宕NZ@K)=EG4BNESvMzP7_͔L%N_i-|y7uhC߶`L>Wo>Ǘ`)+xeOR;pB6H# )Í}y)ǣyL8Pdf>PɾS:Bn !M`)e$XBEhn2fkfSprx)'W?*w[Sy"{# ^kKveR[ T l`NOQ;ΡFv0jG;+|GrkQ+ҋ ?!G݆9@}^LwY8smd#(,u=߽38gaՊ"UuJMN?B T@́1!_.FSCbǂc朶UHsoH-f< ! %KsDYր:yc#]4 {6ЁгNq PG5OGGqEq=6ˢڊ cR?hJkٿOp ^Oxf-f߲ \Cyka d6NY:WZ)];a%qq%ìkV%Ⱦ/?-d;tA3qRxJՂ=fx`OBuPS3Ѣه658<')v4,=0=&؅v7I,ɧa۞z1<%%gZñ鯮QƟARՍ\8SI &3?V#t7>$Ô8NvSbE`N0ġCoP)ì<dتy7.oNf-nߓõ o˫\,?SI޴ȸX1V;RCvNLrؤNҶp)8A_!_@!pAcD]b=Orhnc5ʝg Y.OV Y6,Cz^!Ja[b5d *& ur]jj9``>/0I˂q/zT;zIJBytEnzլ}_x2xX \^xc *?Ap}Yh!^atJa)@DmkGKcj[[Kz =o ꔴ&op#Y4A_ðQ[$i \lOIbɾgCՂYZ?0Q҄l~b@-Շ{c@]dZHXK:J:H>4'9R%`b^^X̘t_,ГŘT׷b`tS7_a X}QƖG? ՉG|@ɽͤC)#Z wY|]94F<~RI>z̤1nUbkL+Mh˿ Lb2pHB43H5ϚQ+a:ͨ`T"@JJ+[OKc@I1>@b܇'xฌy'gVe.F_@Nx7[ZE)! 'ȖjPߙ95Jo?b9 2RxU 1}XPY #pUPVvR^x]N1 z/|mI43[YhNB/2vg4{VdV10㱕>)%"ʢ%Y&(_ЄH9T̤&@M&=-]F3U2uj"z^ד((f/dVq;7*q^ ڏRK])Z?Sef95|HmU͓/ad[vnMڗJ1 s>Xf_9K2b46ZD%Ӥb>_ظјMhHUo~.mEXXp%X@[b  $8Hp$NVb}u;"}JlbfhB<\Aы:@jLLݥiwb,9IBfj_NV!/ CmQ5(^'k2*V0͛N% *@\h6CW[,[0<'wta02uo3r%P1C.np1倣X﹈SxMCFҎvSy.>6&<2`< e(K՛s'iBxg{!)A]wK|)poZ_;`+mO%}e(M^^my Adci8CQU#z2-'41}~feaڸ0I6il܇dSW5'3i -QDsjoZްz5FX?lXdsFg?4vT(̗"1O&iY0$p)jRL@k,>H4jSMEy-Q OMqJ})?hCDɒ \ ] ouB 6y$\Ư|3Hעj^$,Hh!eD%IhEm~w1jU 4JD#w$5u+&/[4>0yP,~&VԲ)?K"et%SgsR_Ev.F௩|ɷA4.[6}εK2;iսsuxab/=þ$|t ׀OS=By.&sQ%dyka񮮂ECέa[[IHh8lBpALScv/P^ {{{/ȍ#O}:` 3pʦi B՞Mߗ]IC17.3֟؀+y( jWkTQ8$G/L5ȨB`A70#̼)i)EM(vPn}% TΛ[[Uq_ E^no k/+BGlҹ,O-Fv`󚵿Y&\,) p5̬h쨩+upQoO@lS~,I3u ov ^L;C̽^Hr Ə<7d}q6ʱ75S9xiis$#wxGQi`sk!pk*๙A]^]U'wTp|uVHX@# c9{YYU[Q4Po\TƬNb%`҈e|.%g c3}bq/:51=an+iP-cz?5BE@~0C̓t13E!z^qsy4a{z1MH+:'V8' 7;=w{&bpTL_`M V}ڎ6asBx8kBK;]Jmd(Y%Cylum}dIl8`pkC]GeN(oO0,,CRo phz~f:yz=sDrwpqN2$ sDЄ3>ibyCDWSrycrju#R֐^00NHBCש/s$(| 2#1N"r~dT1=4^g2^&$lQ \uepـ&E/-K-X裞y|٤:Gﰖ>+V%]|Ɣr*s4Y6.R",x@" $:?~q0sǝ9GZBp2eܣm.q\٪Ǯb\wد趌}+ruY+ 9Jge%HM`د+huZ>^s*(ғ`n ,%$YH ?2oG &Nz6޶@s{_mPQh+ڈ _zY[$;=hH̥A}qՄW{(?T(涥@k6T{"O:޲8#|/9] C1hNm?CƝA swE:vvLk>"=F{cx:?HB_]6|A5GY,)E´&pxs@'mUYc9uxS]U`6t#-lJEtT hL$ݔWυlXWg: IoCm"|پo9r044\v6BQoJ'65)ӥW s*Zخ;lB58E{z17ތ<> ΢+m&5G?ox3&'$O"_L>)bYK}%_ _t;3u ·osZhe" ,.RG ;7yO&"?k4+ 궃:dϯvHMm$?z\O" I>;`Ckí4X=GKmx USAk;b U0m4P93JKVp.3Z ZaceP,2zgy$\ UڊCehMIdW:PTAOrԧujE"ry ;j^R ok9Y1&ȍ${u W=Z)xݠWsU6rKe'i1hڒ5UE,ղ_Ȟc#=eǪM.1יV+&k ED-Q|0FCE 4cՍL1: 7hEdPp酴*iWg:C,5Аsg|C jUxã-?yN_$'wÊlY2L :< !YfC&!O sU>~iU#Sas z\ÈZôt1!ì'H)9˾넗 yceGMA֍:6KCz!$U)q3\j{qoᓪ=`Sk~L*WLBUiɧP$]NY9V +"T^j*qFj59w#tߏO6?cu]#(OLA` 5o-M%ȷ-x~&dʈ3OS}k+N%u@t:OTNk%|cnYNRLvi}yFpZWH~GᅔztF>+D .dXkE1À .FBA"_/y; s)xw\GgfKT0~i}Z1\pU.`S Y~8GzV>@|Qm@x%;>;,-xʑs9 QjAxިwruwX*mx%QX:RuԹwwTpLsu]"Nf4})jz؏q z:,Xֶ]_⓪6un9…QB؂`;,3p~&,ƚ=##؎-r{ .lLJiܳ|3{ch @xY X)?=Fjedwg3e֘v}ù;(]|p,{{qvaMW~7d<-"z 0Kҿԝ 6v!,?xt@Aƅo7Nە2J+!Ĥ)5k4bS0"pĘgRzo_l(i.13FQ-|q쉍JoPvqZcq <6*'`u4blpl.ж]wZ̹="ډފ8gЦ勴Mqe, R@[VB皗¢9b~W&*mjѱkH>JQS~ ߛ/¤FH N+i6sc\MOɦ`կV6}f?7N 1'bz/ y /ѷv3F+PJaρ?HF 6bîJ'$) uaOr߄]B:$@EԌ#\$UH*♕WPp8IU'mP*$BpZ;x$r/ɮctD`8Ztڏ R9i;>9OH4k7?F0a:pр1m )rS)\Nä֙h0G(PЍ(1l#!bJ2T{,:fG>Ï +XS:&HKzI293 FMXK?:EdMr;V C$rPu86/-]V Uhϔ늠An"Sne3uh7G:U5n^ )O=$uq5f٦"}e5VS[NY1]j7e5^ih賤^^Fa5 +\%,[DWzÄdL"8MVя7K0[ B2e<X Z,.o[E)"ItdlY[X8jb>v)齃 p퉭{}$ 6 }JWZ![#,va3lַ?Q8 4HZzlТ?@z=~xFdLNcjuI;o>-Pf% C8_XS1>p={tɇM5Iq--2tHTOowz-Nnk)lVy~aP{<_H:[6l)zfڻԲ~^.xvǻ\,j#tFiK[U*1A\{,2.'*_rQV&,OQH0si*1\yaS>&U2ӪnhmkƎ^UcqC_ٱ/ss Q.qU4`}`q,j,)B'6<:t"ތvĞȲ( 'axZSZAN~3V@Bnwr_(qRX#x1$zd_S(,PZl9l* )O|\_:ȢA44j0 P|e=U. d1k>-0slQ3?s|IK-?Ց#yH$6yB]•-JK$$ o>'Rs 1Xrdkpp3b.j =8C܋6WtvB)G\M#ܿ#-̐*QYB%\dXY65LQf_=v"?ZO۱ zxJR℉Iœ_.tbb~mACpJ ^מƕB4h."bvޥ[""=e sjB|Lo}:OrtJ:UdP2s Ri|V^C=`fsbIx7V@ 2Z#1#?M\+pE|^$8TU&$Hv|q* sI&#Q7R|lcnN6OaRy%~f Q7-# +FULz3O׮U%*} |&9 ]CHlI/UC41n`tZ5WrNNmaM4hk:w..#79KMW}Ʃʛ?84*1שׁR{gS 6nO1YGkHGOF[*ɛ7p;b4D &X=#aeQz%gKa>bCWg;j/MMv4jR.t4r -競abR $~A-X{6 'gr'0x /h(NK}c6 "*}.*N+[oϴ~"Dжkv)k&CM ST` ؎ON WUv?"Ѧpk4#Ȍ ] ~.6 7E9ERm{e/gOFedaW\\GM׵]1ǎ$<+؈rUWhGLe/G4`8 moTK̜"?fF'E$# Gx+KIz GsVF' c^"ds) hm߉(~Cf8VP%ϷaUǥЛ0wCW=Fqt;"Cv2qHkye]k$̩ľ s|:80jdhsbmSa? p) %cW?a*K&ۗH ƌߞRWԤFeamcqsXqB/1(^͏Wn \䢇?;vPB, rNi,3\&\(dg~Q~VS]r%?*ԕ'~ڨ(e~kq0dcqHHYU큂W .]9V8]0R;H$!s#i |fK\c7k)>Tm&{ҏHFc早IcPȝӸxUc_k$L sZ#|~=0q:EUqM+Gx{ug~đZ{YVoOOYHǁkg cvփcITr8?"8qhx ~pbXڼso}i6 ?1&Klo>sI%(‹4dﺅuB%ܟvDPIf ޳p΀яOT%'S79լunk/5^YɺɲݛT;MF:~WL$-Ru[C4A-pǔn6fA<ʕ/b2p/ /ga5)|II!oƋ@j(>Z"Cʵu_ć2yg>k钎B019UΑ L)to<vLqU7~xC`3Sz6xӺr>/;ǴOhyaǃ}ھEkUoi]p=pǀjT8בQ{&LWnF>cra'ʋ_7o3aԢ 61A'j!q^GQVV{?jfc R3,|Ĭ䷦[1s5{_uxJvnR&%/rR37a.1ّ 6<^w\/'&c{@u|8Dm@[/w[I*vO#IY]WȪ^|n6 sV Y42lG_1BS&—0 ovǖ ݸFq>ƴ/[UXAn;Қ3ͩ%(ǣ:x&,uvvd;Xbs(`spa! )v*?O"iiJTS#5k*yVV:o 1a"W(\W Ŀ}THs!xr0B,-g*La^~0P}1Gs:x[_S} CS0mH tſw3Uq|.V(M%SW=P[$:`ԩ^c*u ~X^ĵ>J%wD ,!՛p'ʵC{Ƀ#pRȚ03̯! bi?̀$pIMguN|0gߠ>%08H0X H[\H(D^W^_DR~׸ G'F⺵Y ᱐`$Ò]Mn;(؍'#XL]fBL$w ? :T8x Vx{E A}SCK( jX^ER&{ܵ݉QxD+{swvy@]sk"jcT]lmc{UT:|K'EuZicjq` ,8jE=.-wA.fzkc\-f|Q\UɌ՜RemvUN}bhTH91;,Þ|ak1{# Wμa/m}v|G [t%M$'8 Dǥ _&.IN0a"z 7\"#eJ|W d/>6pH,0| ydjecDDo*.B=rDRՙg7~KPZT75&yES5 nԵ?dX5a-ݷ{x~chcK.ʨ p!SnEfe ^?S:}(z0E)/?5 wc6!匏ˮSAѐ.36Q@;&b8kawƞY0g~J[Pq|"븃dC+@"4N(KGY%Pޕ\$:$)h)t/j*} _HG#H<+|WRP/58apd]z<^Mv)+Ci? B9mDYPQf[~"%o ]0)błx©TB ͶnxQ&!@geu ;4yz)ޞ94sv$S#NUlpY eTd) uY׹0`vp s{LzOX $Q:rVhzxOE{7)|9}`F!(k"-Wi,w8銑3}\tEcrg kNIi/j)V93r":X-q+)A*LO=֐&^9$Ô ֓@ZChX5I>3g\}L{:IkѺSΒɳ}Sg~уۖ `lҲѡ˔֌)*Yk'KAz"'~GSiS|+x@pPʬPX4:èapPT쭦ŽP>P ޏ[ `\8ԙ2Hr,tw8%]pԟunO("v5!%S9WImt-eY0<rfjz5r,y[ 1v2%.t`R2JhcDM$0>n!l`"FO'1 8씆(+}^ʹ89oXzup03ƋK?O#:6) 5;HvMXZ5Ǻ2S~7FS!Akmj*{WZs<1t{~rP+HhrEdǺNwcq([a):oev4 {*CATY 1گ$Ewat(L숸Qxu|iTj:rWpmnXy_ h+/:k˿8'ÎTSn SmZTk&vzEڸ|'9ꂢu ۫RV<:Wp0:dR|pWw) E򄎳npҨ)=N/(?7e1f1;'N8*D\ISRyT91CEm` Y2!hIŻ;{< (0^Ny6B(R)bm*qd-!윆aܥa5xWVֳaWh}qg{Fh{1NE{XySjFL-nr=Tu]ZgM'b*K/keT=лy7A|>:k\11͂y&x:x65;q${JH2|4Q(?wB4Nm8>çڻB"CТYl!f6w"`ÛiO/Wopِ,8s`}e!"g|ˈuU|0]v7}QVY{dyj}qrUX`ܰze2[YN~"nt['xNQk-ue@Ҭ]!OD/w۸Du_؉a|wrU~yɋdYT4H5=ʝ y~\hxoKJFv."8L ϔMo^ ^pΦb\ApqA}ied 2D Lr!edh0Sd/\M9[;$)GY|.o)iM*-RZ8qԒ/] u<.E.Dabh pv9,O.sT'6t3Frͬ b-vE%  h|6vq*}U过#̀Uk @9hCr΂vzKpR "&PyzJ-53V̠uqe Z^ޗhr(:auꢿ דF s=ܝ. }7gkH%ob eў ,ǭw, iϿqCC t8'78޵'qIPdljsCbWr[½ډ`543+qkAF3$a:d6>MæiA5AzAah(c9C4FUs0_:)hf ˧97s5&}DRGd˘z*-H1dگ?ށrs\]dQcy_2p7hK̤~uw J|UaZ֧  {@zm*LZq$Д?'.#TdQt6K;xbye&%=ⶊ0 $'RJZ1CT4J]}|Ym:X; |ιy"LpLu*s=M `^lmlx8F 3ܛdpEb723pM|,!fMCȾD'%\r&-d# ]#A?G/:Ρpg+CcEWJX:iUVMw.1xUxZPG 1FSڳ?A^I۩O dG)`D!&[r5.dRvAty6DfX CQ t |L96/FP@}.Qn<.TpE3jwS;=͈G >I:JgOy{2`/z"q`8 IHQ5#XDD Prs|~#u^4'='XZ!m46<b~!tFALxgHن Ce'G`WB[ډ=Ȩ+)iMS' ]PmD /Ahlx+C) u'B0EPO36kiUf4K;fz: 6Q; MH.gP@.!𥱱6DyyVbq 𹸓Qw/1b]]EHs}!d`JFO ߉vB:@b03j89E+C@b.Vܡ04`&PdP߻:^zi?\ߔ ݥ?Qъ7LCU`K6ֳsnɤ+_鄯Ӕhz nQ/w%IhP'&M9WBHcx `MeYPQwz/XXkLMmK2)2 BD VYG$㰐4x2Uo͖;l zaw[P+L*\ٚF@. 5,RSPȜBclUۦ9¹Ə@Zg&#i'G2_\؝`X0FRbD~ z}6zp1T"i%֮56jnՠBCpى&CK26V֧2/jGzf'LY"Vd~qHyP/2b]3xl"7=~:({y H#zd)@#l7PI#'ۈVS_K&fGIO3o KwLV)*Y,<>@멁=ùf4o{Wx>vrEw.ji ;t(փQq^BR)d}MbJ']E'Ww$BR9'f˵4&a*K3ţ* ϫaj rrkqU{ /[E[$ i}C/eyg|7<M@!̉M40L8XhQ ET2N p|_Vʖy4K3v|5QA–?U_Qx-p sorUs^B9I[aq "5OFܗ b^ oT !Lһb|`pxt5EFBPm sn\l\EʃZ}ޮ]ZA1cPQgzF5i=!V{(cEbEע y=h!ΕEQ``}9 v[ЮxkRj֩Mt*3 }'~BP8jpU9$wz$Q6M~7? u3wAƜ>%^m(m._BG5}HF^,}H {偖4}*Ej"TS^Gi˷{ZvXL*9hZiR{=A=\L|L[DpTE8WQPM Q/pk>rj<[4uF#f+df7e36Bŝ@'N%1`&CH`RR _Ytj -=5hW5Oi6KtQMD70?9~~I~DF(7a&= K *5.B.5Rk&=Iiw1:ϠJl,lҦ;gԯ~M,JW&= :znķGg\גIvUmFC>0&̶bR3xc%ŕ)XVLd+(`Ӽpv*r`^]HvLK_|@;gBIǮ@O25im5@67^C3tVtԆG_͗23B/cߊ/H0x6G ePXI:@ֱ*5Vs=;Av([ZpN߽1u&(P-1=Nrاk"FU, `[7b1%vB:1qXˮ/Qp9]XST޾R`]bS)CehXRJkԺ -]ydB3>i'VYmnk#EOdxFJtHW|%͸e: 7;3n+۵,%^z%V`z";(w*ld NRmߎ CoQ>l(k%nL sW+*ziyA~@'GC#p$ܓnwd'eX+B L:j)d10H3-T~a@c}z;lgRBDY)ykv;م luBN=EEj-6;}ԁS:{i, %^U%G}xFWm Q.X.H E%xDz7o@=/D#&B ue? /ӣkns(5FĆsvʇ [5Kڡ-Zvv}5{>1vKn Pbr-SO#ͤ.MG z lv&1{OfY2񽸹Mz156`>Wv!=ϊp`8TË́ Nc09+;q3bI>\J?tm1u6<\6IB%#a5123)j3F9<\yyz{3VQ>z,?Rz?KD€q-H+:ܬoiV;yVd%Bo)mWPX_%~ [ Ym iqQa&0P}OyטUBYtY=\TZa4DP_\X8mսDYj{ VC//4?hMk$F:׃\ߖkUܻr Ԋ*Csb /KXaF< <&hmfjT麙)!1ՏFvgߦt؜m pˏ !9U$փcWOI<@ {<䗸/54sNIfn7(ξ{5b KSd=48j{/;t*5<[a¤qaIWsaф-2Aki|tŮWjfe]<3bS&lۼ[͂xMiz{Kqnxojnm,c%ԍ4ÍƘ?"jʻ$s ZWGN] 2Oy9B)QZ[JHyEX-E-j 씣7O%`v . uI_֒mӶ~ GϧKm`ı\^PhJ?W2O7oٖ:p3aO9_V7ݍ/[}5%QcߙGWNv8m.^͝gFg*`֥_2oۻ)瀲vZ*!d:?] >Ψ͟p - Nda;9aa-8k[(YIfM6 sMrd"ZM8ITWyD| "v 2y\(X %j_":.6="UU?^a(Q@ně$! N%-=]k?MNo-Av JEVw<Ì,(beBViɌR]ȐRx_Q+UKKUWu'9aiփ50֦$qDJJpFKHi҃&xN5$imŘq1ѕCBSFJ t 4aD0vZςd+;oF6| _E7LzTS~'ĞLUDjJb|&1 I gZe}:zmoœ0LOׯ6U LHS [v;H +wRvnEGƜ"շPO,zҋ]M![%0}?(+dáL`Dl=q74&7fzi.\]'/*P3ld4Ň:Wt/;,qWx2JM)z_c w^5k ;%w&j < ,^Hmv-6^x%TNj޸ gbL`]W;x7]#u;chFǒ[@Wd;"3| @`c]S];B}d#Q{ 3ek9ALQCZhk+`rLdz3/ OQ\-w90sض)y)LL ROJ)OkjsIHooq 8)ʫxjO3UU_b/L7?n2" 0D׽q YhBMj;ȍP9 vs0䘃7gEܠPFආpÆSذb,ˊ_e]ʃ&sLi8R׆o MwY &-(4P)~˃*)Ia_ug|M㪴}Sjޡ,of|*Jvd| J8Q%=au ZPoЏ|L@ϴCB׵0goa샹q-VOW"SO/瞫Q _ }PJf-PCj&eIWx"_ĞiލMF,sHR(_aRGM|FZST!%7qhN[6KM)Ti79 QK`P Xdnh{?y>ةVfh|G1mA7൧-#y1Val[N ;\ddž ?!ꊫXʘ,""+4elڵYҔn\\1f jul_ 5h%w@~jP֖t#]伙svg,Jj-?qݾz\Ha'ѽ|ĜXvbyLbIVj{c͎B|@L\DMmaiBK}KoyF}*kz G}3ll^.;@p)6 >i7ZofWkt/3k#B-bjĮ q7q+_v3o߽!3fкѸ,>5K@j6@}KUnW|hMU[gijiqNp sB.+Dl&B(L S3mհ{Aaĕ!7Vɗ<=y8`u| ܴ؉0h7*٢ eʈȑN\(_Lym-^>X7ٮMaGcZ u;H* V*zjG=V$'\Q8r'W+*֞iEmb{EU>[ ISBB!b7L~o!D}ٯvlѥUT]wXMK;=7P^c[n$n}^vO+_qr806?'sSK+PH~?,3XQQ?>t#Bu]18b*M'[YYrZO i ygFJƐf \^R[ ;@ޞTOIӯzP9(&rXm 06s)u)ٛ̅elb _LQ(prb|6btS&,3l>j:HeN] ,\Va|&VG4&Uu gD8sU !3Y[!+ltKøHL"@d TT7H0 'ilPz=;haV\VwB} muw, *ed-, $\ڿ^!$ zuU`Dl[P㨝ֈl,Te5:._m0(e0Gv/(D*IITOTH_p{fi{ 8 XdRD[k:i3DcIfS-#{όEPQ.?tkwZ 1˜G y^ޖ@7)8&K/r\ SrD' zx   zJЧ s&n.^Ĵgʁ kg1 Y4>z=럩ls%w06Ax3#ß3E)C,(7 i o(NEXi|Ɗ^Co3q5c) `ᕝEm4{Eó;ↂpPD:tފ I$쫖M[_sWӕٌ{9-[S"$X:?ܩ#]N}(q9/DE^]o)e*#YH.ښaXP (w=`*XOmܗUbQ eL DTaT:ϢΗ~s1L,}=30s~-gؑ=3c/\]=EmX rkYƔn8(:zȿ!޹5G.7A'b+4!#p4Cml2/7Gj+t1WW-$8(Lr.qP+EpL^O@NjP1~1_@Ml['^5;2׀SAT,x5' qi%qB'Hm҅}jZrlWOX|'0!4ׯˊ 3m8#AzZ&ON}RzZEJ ,3sWx}1 $lf0.AgPU,=Ƞ`C|ڮR ܖ8t‡4/mBb|8kSA,jܹM>ByK^][2!t\qQ_\@ToG7N;HЏ̺n<滷TU$² >}׎ǫ= L iBŧq9c^@fOc_K(:V[RP@8YSQpن^Yx<*oAA+O ę7CAqTf%ZH$=~]MytQԂ.ivVi9݇CjO`5V \ *$#|}xZ TJaKmv".Sd @Un}iT;Iw26%C m|36 ;0hT{.*P<MX)/y^iQHo]\n7تe $gEmUcS5?D-` fto닼0oA9H6Ճ ROXGȖLŗWͣ/1iQ:A#KqDRG%q:z>[,OMy'г`]d6׀0k0fZ's̎I"1B9V[E𣠻:PA{%vb ;g;e|MC7\۽a:@?U?p刚ZBnRZ7TNe3K B*}\$A"^BPs7#2JRdojıHCn\-41 s{ĕoB,VUx;.[E)~Ά-rP/ i׍ٳx.(H"D[LAHCTTsje F@D1g,$)K˱{7hpd\b|8c&l-G?:q7‹7Q~f!RTN3BݥGX)ü vba{-k{)'HSeFZ:T#f*a7:J.<Ý~D/3b w|R֚(~>ТdR(?PqG]t,GzQ$šÿn-NEµsʺ_W/I4e*c2;YAGP/2n62~1usI{eSs2N Ǭ,K"m8VT9llahb4Ϯ5}}G'U 2>Wux.{O+_[J~LoMF{M۩f$Ǩ,X@ssZ M~׸6IY٧l݁DqdŤTt1P&Y ?ܐ g8!j`v0^N.\®l%k+9ps՞Ae A ͧQ<~Øz7/?dt7RG8gUh0d¸|sӠ:{S\03_ӏ. F|z3g6B i 2aQ^`l6M;13Ee"14ԪFw6su9kƝ驅[GW [;!aЄ6?fNٓ: vd8MJFa<"ɂFtn)ު.sypcS쳀o#셻٪zO.pOYM5K"3UT;nIw61-_-ݾDQc1[gOiSx>cFhFz br#ԾMQtpE)wtiZoRg5ǎHN;J4Tbޓ_-wObkyXa1GfΥwzgBP%_/(b0"8MɉMa_${㫢l-C=Jn_6.%%>*RAJHw lib[)c@p-q}.`]TRX̭O<3ꁜy7{m: Ƨ3zQjQ$0>dպ璾qvd'ۏ`oq\4O]awqU)jtBqCw=?fs5CCe YV4{qe͏*]rnfȧ"U\u?'Iuh.a )|q=HB?q*אrJ`,ĕ0P\ "r8ѯ3p3#u:A̱XVLc Fw 42^\ pswrz?̀7(~R*8ހ+%g]F~4~&E;6߀|=冒rʑfIOn[$9ނ۾>I0%Q;#j,.a#ɱD7gW Wb"ͭ˕j/m0d&;>АA@sEVj$L4 RHp|zxI*ƷF _L&cU-|вL:9RKgljӠᇜN7Ќv1xtIv@eFq:NbLOrfJhcd1c. O^lH|Rt8F3EDդggYOӆdv; lAHJ:|{AfvuBXTkxg`7uibؗk#9>|'J%N% *GIJLN~HOUX4 +vnR-yMur;= ]Ǫ+.dk_a), apr uE~'.L:f;I6QEfVUE\{5? tʠ`.DZ[u=>\Y㸭n/tR7ԲVw(|6x{v#d.8 \@ ˭>헯tmXSO.znsTس4>IK-0Qn-xsa;eN}-a'T C._#>_wyRS"J"fe 7V6˦EHg{(lcR9 iCif=?;!/d䍙,ʐģEox`wc>s:-2uE&Gq[}+7 NC {MDȤ1<슝." ,JԽ,⡒Pz$[+ N#k\B74HN]j# ^<'1 m)i7zDS|(qS khoT[n@؛4 >0["d^% jdrζC1)ޥ:.˄fU&Y>x+1`54cb_s{a^Ķy\} A-t10Q;6怣e^qi5em)V rBfH g%;Je<9dNbDMέ7ȊNӅ#g,He8Y}rF<*Bٓ~ɹ& ݥ Y^P_8}&6E$.W.$䵂0jw_2/@XuCo!@įM9lRə^y',ex̢HY$WGk&髴>+^J7)p>^(`̑%?v$m4 2'>| MH$8Q1 o}Fڱ;7>ZFdESzsOKվfaHhT2ۥpgh%ò 漾%uf,>)/q]/Tc}USug,1;$~D@lYȒ;A|HrGcVk)l&d6I88xIly$'_i^߿ yہwܶSn*3}٧t˒1Zɤd7CЮNTW0,N`1H.fv0 RAL(;'EXފ8簛"r,_QO´`YW &d*WT2যneBw;5dxJ3f3&߹&i$ Ǵ*kq)%] ϓ iLkh\}ID`kHz+]' mUT1y^b?֎}rfgzRP.QO=37eܶ5:'<0'.oJ^uh# : dsU2, $XzMٓROYGBU''I1xU!L恇欀@2JLo‚:DtqAvHLjn iΤoa ^އZʵ`(2bk:awEȯ.pb?s Z3,_]3"_ZPpߛ]2y;Y*$j{T'v|Y ξnn=qQ`℧M=d nq VZ3Dtap$IV{[JC[[x=vʊ^Fn9zO2^-]poVKPƮ8Y(g]lpqƏ46%쒾A#)Jm (:0#U'_6)k >WBaⷙ`SI# !GF4qD@{_eڪ+Kf7 ˣO* nr]}LD rpZcq?|4aPrXJ %UܓTn? 7٤rANf--#`~\.UiJH4( ^kƷQUPHhM }vLsk+a[zT1@#0l{ qK$RЬECyN].EKnV?p 8}<}"U ;GXkЏVGB-vsk(ZtjthE6i?aш!AHY2ZS? iN-TQfMuUݨxWT\ jP}(Z [,Uzz8 Ų, 1vw5{? foU 80%A] 0ocQ<.rX$( JNzK\Hk 5qJE}'Hwx;1v2IL 4NJVeƑ"cSmА|Τ*WβL{ya6n=碃zs :il5ŰM3$v'מ]|mE  9LTZѥѫ+ߨ7`MVS gXAŬGJWZeT:̽b k,_pD3ΰt!leߍwP_F[9BY;cԴ;Jzs~<6 >.f+>QR!N*BYmdJI o IEA1/Zno(0ܖ]Wލ̏]@a{[. K<>.)A+efSw(RCi/|\>U@ȧh=278e8ކy32$x@{-n>UAKr7jAdm4ta/S>Yy] Ҝ4|ƿʔ,vyk`#ɉHK''A eo⹕xIBmiw%S4?s+Wv.E9~1ऐh`hX?Tqx|uΪCƺz*/nc8H>^,N]Opkz&R{q&Be ,_ށĔR5]eI:nǟo/!,zz̚|S$$w0C-q'Wg-E38 e#tF8b.T<-!2%3V cB,,:Ȱ*9,X\NeUKD.`C0B N{Vl˩?,;β75gԑϭ LJTE\u\d[t_Tk _Ag$[eMfG3X6UyԄN-o0]aCkoq`: tX1!qaT5[KjnE?gkF,Z[G"C,SB=9uV(_Xۥ:;s1m#YDž2af;3/MSjqnc{5aGby3Qŭк3T3^9*aJY֋x,5x>b=wkztjkVg)*57,a'2M\uBE66$&B ,grFV4B{L,e1D0+rΪ/\Hy0֘kŰȜW%Ov2y&i(WN^>{+ڙ,7=/q*\3hQ m-󔡾@sgQ+Y?H!g]jq5p{UJ68󁽜y͎\E{4[{V/;O+ixxӒT K߸*MV7%XLG8YEzxXø3\K=KM%FZFhL[a{87=.zJ% Vs'u|o@#U>}Xh8LCq V8Yjy|-}7\}}T)E-duE}x Tu]hU3=Vh \ Ȱ8-kFq'^)Ӗ W-V97"n v+~LBAGuՊzV_YX_B8"I1H'-u1݌Yrw> pONX4.p ,PSOH]±SnQ _j_0ftN|0'oH\g(K0_y Ș~]yn~慵/A4O5P%箶7Zi0z)Mb w*SQt 7C\]w>ab kaG+YHA{f~H~1׻' 3JL%./T{%SfS(_#hFZٲԗM=TFv{2q4Oxp{J*\ql>scf͊#nMLH2^-L$vo8 5@[ӄ5F if4Y]BW0R 1vwseW¸S ÏG6 ۆԊ Ə/1| $%Ěsﶔ`0+09|o2Eu#XRhYD.Wf^cVb>_Uڰ} >wg<,c>g_0 '̼<НP1 b{S"4./j $6&GseIXvO;t%Ѷ}o S .JEK^]m lVr!ZglAfF*섵ݮtŬr᧾Ө$OҢՃ?'݌?Vq8 3na6ʸˣBf5uP"_=hiVJwJft8s#Lbl#}ǼrχӴ6xUNz^ds<̂}]|~_JpHigVPnØq) I=cIJh^f GW>I,HH&Nst Aԕ/zjhVxM({r=dmSWTSo,*uHG?WXp/z,ݤkéwNzVhc%(Q0Ԑ4'IEY&& pmpR&d}f0- dbp WX*(G%Ai./0f7\+_/:E$dp.1\h~C|է֢5 6p>~Xk|/u{=1 e].z&PW`öh*tz4`WLIZk31V}=XQ#+aa ˺ScjZ?kӸݙÐ=aۥy&l#F:lMC] +9PⳗErANJe 87k0C9dx"7Kh$ѹcS3ӏB/PʟaƧ JڋixcQנڿ|9.#1Ύ],EBf5VGY+ 7C/ X;GL͡uhO<%A勡Q^֕'իL_Bώ[wsu1'i]nC9P8\ -scS96_şK8CvPq$o PQFMDXeN8kh0HB}|2ƙRnѸ ,&Ff! ݵevH )0}y_%QΛcMصqZtVu=<M**d0 9z, ĉu=Q .mHAz N -Va;qE2\\w"==c^}74.o?[5a~t= p`a) PKYAt’ԄFVqA7Jm ޮPn7Q*V ؿijr[iL]jSЎ j({tC@ O-d$/liNZ n%kԧM|=k'Xel#z-zߘ4 yhFqMy5=Q2u2CL_G)spX-ʬQ&T\>- UAԐy:;y7xd`0FYFС͟&ʻX'=YM@WJQ iX vx!JŸN?NDR;􊡏D*H^>Glo<I폝OK-J` EfO@3^×+7H?8|/K]m -d$-vUlYo>ц``3c;Ԭ[0L-VWNc^zg2Tp|4/6 |KbWw, +Ζ_h;&XG*ejC|GW| zPY'=/Ro6(~fYòDS/J!EUOhon 8cy.gGCgmM>JU/:y^6!~JW.`{A>캃ۭҏ9UokŨ?a452xU|QhLU?rOMmNw8-ʎ<(]0^3 $j91\G/= %=ʓ`tM y4i$#]>h\x9l@wJ#3B8 $܃scRfj+]4YH>ۍh Pp ;H ||E:`%j27 9y_)#z|G/H2KVKBV'G+/WE?63 $ӳI0dX$_1}i=םt`7, VE^PFb4;п̜\blf_#Z+ l d^tDAHH,&۝Bp*@OݴFi{ OvQnQ &Cp"D%)'5 \[s{@0̯ZSTGa/qizo&Uo}ARtNӂ)_Hea̓ߐJKB2ᠻN1C:cd#i o݄DD5|wFs8/ J&~_(B>!9 R ́D튀,(f@Z59y1kDqign÷r٣JK]ym:#LDP~vcIx%)Q F|3C+ s)lˊ &{'9>/&zxte_aIcT0 ғX#m8匰_^v{izWc9, -AZ60;@aϟnQ~oDks*4, %#R_>6k=bq~5#d<ɑSzt1ց'9[C:贈uPEf+L87 &9',AQ0579Zs:,]]WbNj+DaMM^*Yݗq$m ס]R4 "n::YAHrF'w9unO5ĈR(J>59B/>4-OrxӍJ7TC2)LR @Z/.m4Ik_Y,K#V xv&_W l]7wdĖUUaNR;臅͢vi() wmM(]x$q{?q:n91) HÆPS!R͖ SC 'ۂ$qmp>״V95o0R"7ӛ~v'7^aΙE1sK$}ņDݻxz P ԺMԍyJZ_WR{7)!q$mKڝj[\Q|cg.qc3w26"Lryԟn 9|(6]7QtS|5:]:P `$^ob_BvkPI[~=X"Vg@@+~y8m[2p9$3M ԋ$ثl 45~Ӗ[KߓIVe4jd*w*((pC "c;gdrzvώ^h#Ji^4 K,M2)v`+V)%!Pr j]Mwϰ)R9f-7_]ldCQ6gU6}^cr'xNylF A$0gG& l З9,Q6h37mGo$?[WuVsun՘>kʞD&K\N yɇqi(ЁÂd[<ه֣h.AQs=79 lc]a_?u7h~oY"Kp.ͳ}PwajP@X? Wb|%V\L{z'#<SssKtTTn(f g缐CĊű'ąмk~{)4ܗ?Y*{2{ŭ/fސETc-qp !^ ^: 9ջR ܚ<\Д͝TYDڝxW+ w7pB=z<'!#S͏?>tqyj x# R<' l_ŸɊmAPF4?{OǦ.t*iL[ن`콢0~Bq LNU" eh2 FYNy繍d~sMxά/- ܍0l6_G Co29c.6x{KqѽA8(*P|^{+ԻA}&t7%(č:!( ud2ӵtM?zDn\_tX:`xFt3 $];aF-РCb sl㿍-5 XP`czb!+cWE yUV*,iSDpqwOM du֣x-HpB֒F4禲TE mY W{uԓA7-Rpav^{D`(і/*ؿ5QDs#'IBS'zDL(@Yox]T MLd׭E ȋxӊ)(JT9s/.v U_'pN1Aorn2;A_ Wjq  5n4K"7Gd0dg>nu:h>7 @r䵜`T׊jMhU5Ud."RFas4 U>(V,'Ǭs^jI[3ƯQjNA)k6MF\<[ŶKx,[~Suf4W0+ ynVR̈ޘAef&7Al&.ˆ*X(IZ(0Pcƿ{(mM qM D;K?J)aL㡆aMM ιiQDHDdqo3HT2M6E* H|?IҿDk˝Dr52Ko˾^~;}tQmm`ϲ~ABn!;C4!u9Ao?L3?+~ίV KH1Oы4ԧ\X uw&g],ށg`e՝T ?ֻoS.vB! K !CS7gwƇ#ŝݿqNr)0jmʍwJu,8`K2jL0)x.B@ǹ^k(3hoݟOK=@*%"Ik*&Iy0pzWɌይoGQ3B|5f_`_{ea9VZOe'Q4/VC x"8YëUzCœJlpG Ѯk7E^Y6|,IWR[ gJ* "n\( CM҄ WxQir+)CA͵c,Y 3ٲcq/2hݱnfc1tlFxگ8!pdJsO~ h> Fm.eo|Hu؎*8e*ׂQa9j1%ONetA(rzJx!d?FHw N]4Vh/)J /l.R Β=kVBrF%[AZ#'AaQsPRSEUhTw^ ~U:N)/Qy*n=r4yy& XtđNߢjE4kXr=aTV?&p',t͌:hFrěFoy-~B7dxI@+2]߄7MΒq9msL=̲߰9L%;bI2V΋jD qyl)GiІv뚄p;%'":A XE'&ZyPw-{~>rXu!w9|9VR 5_wx=*f!KF`&;_6g,2A,`4^`;D9)(!wOlFza<Oٽu;2pB SV{p)y~ poEq?kDP/߫q1ĥ7ZAp^iIz^ST)z[?Qb@,@?N%'ɱ0 h"*oXmxoLƀ'BXW806Az%Fas7dIy~m_`6aىc횊%|B>=6wśi%:`F(};JȊl`=jL'"]2IҮCB}56WD+n9rH{^v@xO9RL Ca Mg~X؈׾^ftw[AKY-/FE4ɡ7y;]PT+9o]SzX@!44Ɉ>ެSrl*襋A 4 i]y9xb [;Y,u$7(@'YEJdM{%f z. a6r5oz̢ݛmA/Fy0%n3>t$ :< }R--eE)\r|W]G XZ1y< %}f1'&5 HXllr+f^f%?xJf,4"B]& }$6gpqkt\,MjUUWĐzC6"Nt% BHcDqtN2}?xM$_m&3h'+ͤ,Udm݀Wusic.Tt=vZq^rDRz5PǑyw2ޛ!ڤe ~\_'E%.9+ o CFidoz Ze^ a\zAwʋ&]k㌋e}zX8D+Nz3? 5dWpDuci~'Q Cp*Pq_|m\*JloJ'Z?Nl|S)xMsv70 /I=fTw3n.;SveC>OH#V~xҶNϷaܷ< oUk`Hz9'9dGui]oOJn} hUÞ᎝?H40!М(($h]PRe\¡%G:aʈ2vA 9[#bp!xm`42YnN#ԧrQПlJby2Z;OockYp GcL#=̼_dK.\.a!tkwɎ RR@G)z`3$Tkh!{=–3fp{2+(pLd@ 00CNVG  gV=S>~e!5z(]uq'd?BO>X"%)OspLIu<(4~A=@ɶɆU[ΫYge'`Y8B.bЛ^ezizK7o {>LM`Lnشݟ {9g h[i\s'6n?J H& XO- g2!߿4{S><{U[yMQ4TŀB ̖הXZHm)kU;[yyJY(\%Hм=r8.25 n.5 SWQ.UN!' 'Cҗ gF'2 RfMW%*go露rqH-͍.*#PO:G]o+6iV2|'6#YA|86f7fHJ.&S`yϽCA3c;&iFuDΌ pZ c-m!g' uSt=nCj h qd&.ūO5`&'5nw يzu:`qS֜ ̺D1T Xg)o.P]s wPj#iQeQ ޡa7qWfE^5l-BSsbA7c RRJ%D#8i k(ϐ7\-5 s|NR2Y|"|n}KڪboHI O\~v )lTxF/VVu9h_N4EQgi^ (l\.)$]@dԋ&u?JM&mc' ܱ/ $ 9c@u:FL(xQy-eU:%/#pIZdxus,)Li7 VTcnDHc 0Ho20*_<45YÃ[/vKӞy]XANne'ly' B0,&`Ɲ|FOp/0umTJ}qRz[?o9"<}2Cjɇѹ|GSY]a⣯N|uŪiiBs ;윱?PwLԆH $Ψ%{K ü#iסNͰf=Hj? h& dNxw+gK![ 3Qƻc'Nt…xݗ.F4)Iy1S~KSkV85('4ݦR!/` XN; cx>fUD:Oh\v3fzR ȱ8\k>>iHWw?r/% m[8=0mqZ)ԣVaYͫ$ )w!]ïe[#{Y!ؗ@iWb ]cFӪ\hi,8{덱0 bQF"ꊋ`3_rX£n^Ly3YeMJp } 2Ki9KZorM~@PowOљ-Y7>lV}/e nus,H=i%d޿{MBaaD ;%F'r ̹`'re2%IL X{QO+xdD+v].0<4 yI_9|Ȍ~L_M*S!Q6;ܯ5p!fwU=\xaO콃xj0j fvʈ.]dX+_%џ7%\&y(\MI4 DfC7d6Z?Q ny_˲VE9밞z /\5)Mw"ܶ~W_uǔlıX@z|rϏ\ 䙘?09J+Ңhmʡ Ab?j=mBPp#+lQ@ܸ |NF -iy:i2Z!G'͊"jQh p1 ޠ86L9Aݚ;o}6 JV )Ӱ NMb2nS#hmQ3o{wFM AL]23-E3}{㎙:1Ni+Y/>-|7}s+gbmLbƲ>{MTgysww;PLHi3A)1Oᰂ(nĤạcr'x%v1Aa; P QDh{w# G eEp` N)b4h|tg\(K>UbTA{2 =MTGWVٞ>`ۉjU|V#HAv/A-ҥյU\zF!(g"Zű|M7x@~EAl'* =kLJN@w;\>c.5375b'TD%k™ cF(ӛĈ]Y03qR3W2PvGΒ`ۖ,.W|g1jε~/9Z [@8ąv9kO[$=/+{G$`vcbn{ #%w-3D&ҌyYZhb8UTнbWS2;d{Ǘ "n.cX6 w@U۾Ema28YO{PSC6,쬒;a^,̌ efaRov_4|v,SYܪާG9Lr% 7&y ~JXtij:di3υz7eWRm)(x?)Bgml^ [m.?M\TJ@ æHVv*3o_NCA >?vm~Tg엟 UT<ű7 fNDwe7J?MP:# yrGB`uK w=^2b 3rIv2DRyHhWHt{$/Y((~ 2_w,cI8 ?0T@KcE*ṽALhO02[{rT3 ;#~``3d%r|Ud%1~pw SnyɒI^T)0kbuBlg|m$j6[M3brْ^g'@"1 yJwCBtq{6;>d7b뺸[`r٫}ƽ?l4>Z 0X7pA)o~&`?͏# TQ"<1mn0ah7|aBxlaݞ/jFKp8][y{+ KR@Tܹ#y W<+lg.ԹE.,+~KbS |65p7gp-u.ҵA-"SQKRgRǹ `_4L˭/eIA&g꩞Ltuh@eGtD #[mĺK[xÌʐS]s<#YTcxIwdR ]FʏDǗ89!5Pr;''`vBgCbdMmϔSvTڕj1!*bf}cxlbdB9O7xF]j{LyCa3 @r~+j2bR/lRP=CBaƤⱃJe! 0١{jO.6DU>O;9]/%;OƵC(.E꺓/;$O 4 R_~=揊9|QW89KH?:Zk|O3Tc/4z֑aSu#H a.:F Xixf]!{ʣCu3|>[^k+g5< "< BiC- X%XzW}gpG'0 chܲ*^Fu n4?p=ryI3LyP-ll䚚aϰ{|Wdp6CbTDI$[лgE-DnpFs6B> NtBlzv8%RKq7 ڂ$w3xwBDk~s $VKK ޚ{W>QLΫr;tAL$8k{ݲr niְ42g"|۰(^&? pV[0@o\&iݵZ!`B DeA)3u]bdҿW.8$_wRKZx%Tc/3\(|p_%"mGtYt2O"Vح -ber74!\(lM Q%+E d(5/ǚ6[ <VSvl +y+?|1;ވ'sR27%93ҨuMcGԅVCÏf)DXEbg?M| =R{ WYo "l8 2g7K:{$BpayXž%WH͞ ,Snrx^BIm(+A8']b=iJJ?ģ"5X]eZ;p&2aRHes`:3jNn {ZgNa.r?R(#p11\ U_< GhQcs1ں\Gml*ȮQWr1#4E^MeTb5zJ\7|ahW0vuLHt+buEoS8]Ye^E(:#$# /n'ΙgG,cB'9&'͒|N >}?'\4{Qcxl6^XW53En LZ,#X }}66,G>(a 2gokrw+;Sa Zϒ& PAp7sƘI"ߢ0$ܠ] A',nÖ?å!Y@.?n$iU~qOa6 n,/0]C-?2<[ 5)57\5%nO@&Nu\-%~\@DŽZ~%h&[t|`-$tȍ|o@u ]%EE SD jQsx0xyuNO2&;")3+>ABOC uJT쯋h, 7rֲ`t|o gWOӺ0{l>"P\{>OK˻-_BJJznKRYdU'ڍE 2U/ 우<~r 9JݕAg8xN7xʴzX` aO|R2l"x-kMVz~`lj6@vMhr h9 &Mڹ;pqp-lYb{z`Arl!!XDG']|~!b8/90Kmw`w\ )8R3ٽѪja3nO2]A.05[^;$boޕ+wghh s\If+z8 : '}u.U+B[z'W"JP-T"0z>}zmx(H(Bl|ԵC. qӐ#Wx|?ac|(#g#%SJTVSr,'2哑I)tۑc]ΪɁQM&OAQ " k%*̩X֢j⤒;ⱶ!z*Yr)O@'nb 6BQbzTJP[)wuA|ٿ !OLGb#EFZv7 (]rR:$es?iZ00#vU@Cilۈhjt*̘Uw8M>hH o7^E^+̳є pMEU )Yo9=Ș:pU!~g+:L0E:^$Gs>Q,=WAO(vvPvEDZMцIa g7cwN/$ /کRM.Sԗ4.3ޑ?{ZJlnWGt4_V!E6oxf'q&èf2hDZxè2,jòBswd /26%> kDPxLiMjWxFx_sc#+IL}y-Y6/ϵФLjS6*ى`ӭ ñs"^$6|Jʇͮ8L˟!(aݶ0s^]_l C[LXXq2ۤ˚#/JXQlw8ͰJؗhMRE͏$&Anc>X4IS# 6Dr%>LNseTD#Tbx: ޢbm[Ӌl{%uP++6G&J^W$jkA{L$qQ_׫@aa7f=MߔltΗY*հd!g*: [i .!vŽOgjJzHzp}%4Y$?8uL{0NK%j')T[ YtbMr`__D#(q2ܠ!ˤ`y@7foCdK?:e+JRQ%*e0?eӷS+!׾C `B_ڨb0&bC#7SP2όi*(qGrtm4RW|ӝVtMr$uAcU#/?,k2:mcIȎ~\qȹƥNIEH3R-WOnlX~90S֓CX'w dQ9@/Vu;% yqxxY*d^y斗!^, ΐ'jBsl+$Z "?Ifbʅ'Sm}:ZyכȌ|=txVnVU>YlնOq)G9"q(RjmGkg"x6q>Wڈ&x`[/T_iQA_%t].Wur Iz)םՏbHl -Ya,UV9WDgqE`#ءgUJ/1Vu$uX?,}7CLG<2gWHs ^&@w8x"j2[Tr@H.u V/ @w6 V;@2mV%e,@w"1)vQẚ'! t$)u(zi<{t. VmqW;MS*RVY-|,09Po]lfD׆Y! ݉=hɺn}HfG@LE$t'*@:Q땑a뽃{_& x;ɑ[>O-E|9pc[Mo#?(]6U-'hZ ㋺WB}% f6m0H~NUT^ߕjG[7?EbDTwC~?CYy$/S*)F@]7p h.շS }TiG*(kBAJ:Od>  1)]rA\(;`f{?V8SU#<\O5QщjZ}>AFfYI}tE"A/˧$2HE~Ϲd?hQ )"3{s&{Bh9@S:mC,ǣxiJ3clQZidzLS.4EC2TO+/ƹ!FxBoWK@X4ԻB״}fS /WC16%EQ&ՋnMa{^3]<'%mI?\f FPBQ^M`)<=dPsyP P7bƆ`0$$2 ̵0eݷڽv,הlցM_/$s'k$3Ae?jRߏaѿ%2SIDI^g*M2TB1o}cf/{L4P%&jQY-Üx 8`(gD(r+Dq鑨pU)9`IG$ Jk sߩ'^AsQ65Znܣ >.<tБstlWlܫ滛猳jkp4d1Ԗt{&w(j85*>>.n_P=U䡓ZN2A!SO08)bmRNro{hH/D1#VԗϽ\vޔE!k ZME2bIuϟ {WTۘ-GƼf&K>-3(i|ÝV[L>1iTXHsDCxjo a.|Ty2u$7jpߑSvBpvprd2'Cp^4:/̫E)T1`kDDi݄_܀ͨ1;^%Dq1RG9;wىAFJֽmݗ\OHjD Mˏ}c \ +{7#WNQޮ4 s(GfiY]Έ +kyjp?k[ÞFyiH6AʡX=3/a+uL?N><|{] VpjcvË}բR4@,0呔 tRٱBhsp0iצȟ3!PA@(D>.3Id&fyiHV۲tyB50mݒ]cpcL"˴@(ha6L[th4AҜ:nϒbJ®9ިՆ8"[xqNw31INjak~s۫LKK{Tz8\սB^<}gƒ-Q㏙S(b_4 5@$_c3cBJ͖ل^1jQ6Z 7 ~0+-=}%XwXXٕH)D҄Ui4WZFl|2\d%+VDߊOؖ C2O;AhBԄlKyf΃c;\wuLN wv ~ɂn4n\-jBؾ>Btwgؕ,zS{8:J1!1ѳK(83'evCtmzprUT\0Ür.fk⢞?j/ژrF{BL@ۍ&XL \JLK}O l D?|mwj%],3ha0r'zp[eӳA!W*X^\g?֚"9Zb-<5rvζ[;$ZT]@nF9(p h>1+V,{<}0F|+%*s}|)81!蹗{,ANac.!r9"ӷ:yo*WZcw'^cH4\z'p`XZ ^L48p)_h-G. i,\8.?<-Yceم^-#Pu&E|WH7I%c^~CT(kD =Cz@6I-cLjI {=UUe  NN@@8'vkS3p6H‚a 0lkC2Z܅PeK_~!K;rPd_q\Ųc~9ҷ݉'Hԋ҃V' %g_=|Psօ;{|\wVie!Vo $Le) ha-؉dZW@ռX 1u9H'A%P3EUg>A:R/>K׭8'L+|0ץզE[>Mi!K?ׄCYW=#ޅ/hgmlJ *H"ގشWрSE':䞙IjnWfh6tSEb|l\7Q~~zr'_Hd_L P1ጛsc `fW<G: "l01>,|Z&U? ?jPiw@`^%vHd,}k)7pͨ1\%\lLA)P QA-YT9nyCrbM@p+'/R@7h (i$)\:9ط=5C#7]R=|b %&;VEh bRZL3+I?Zk5Wicm4 I{q/k7~*ֺU#w*uq\K{b򮖽Ug? !S&ߡOܺgߓwg;Ã6~(*KL9$7X#@\puҶ 1B40;S M.<3\AVG~iHax tͳuA_e;< OWcӪ`g]Xvhҏ3$4pfٍO6@䌙1*c[|?]89 @lQH(pZ7S{Fvm2Z^A;?'.B,`X!g {R}#ޟm<^8׾LӠ_;EDQ*KVj5BZޥz@$@ey(v*Z|T9KrX  \6HAOOٝ8^E*:%;FߞQH^T蝕f,1qB7 (+[U/`B!9-fy\C3oc>8rh7qƩ#I#j(Fm$/DխK_M/[PLb[o00-,X.ˆ*10h0'\XՅ]>k_ZcilRk0^+}f6aǷH7 (Y4J],G~*sZ5VŜ7_-1L$'nCS^Yk!\vkPX]Ie!mvnuh)OS;DU,s)Σ"SK+˘:to/ݩ65By;'alUSÑ*I?&Da " HνW0MZ| U=Vds+x)]9gY-:3 6$h6mw3(pV& 4&Q XTMDf{;*Co~>\gAu=ky]Tnx^hPPsqXZq;7SkqCx{/{Y̴3VPm%Py[)ejKnĢ6CYy=;&7E~R3h~K7Q:ez[bRXaC8pqpۧY n$)fT(n0#`"t7Ŝp3zk8F{km% `1|$(3]3uq})DЦ#ׁѱc1iubv{LhaR])ĕ@)=NlH/bd,T;\TaVъ,+^+$n Ĭ5ռ)ΊZ{A9g;JV r5 %)2J7E-7)OSoϛ=FG6Lt+Bg媀+ȚB5{P7sz K]Nv+r"9!3.!ظlΌ8;mzj RHS=m(~}ݛM6Ml/)r\.[nN 3Xv9]S>e1<dćsNgZ؝ZIQRj}( PI8 5W[Vю.\^;XHj%I.g3|{y i >Ai gzV:Ї H!"okGZޅF }ҔNfYamˢEA=ٛ)/j ooԊYSݎoΡfp7Bof"{?=±*?BUĈȱ #ԿgN`睦8LeM~Iԛ 5v[rpRQ,ֲRZXL~ J0Ϧ@hƨˬgl?s\ќ¢6m/>xŰ87\t@0OZ:wIf9/S7l @(|Uq$vB5;bARY.!7U>S[;R\e.Ġ.M@3W8ӴM̭U6zb-͆F8wOKYmʍR$=$YH;.jЫK]d@~RoȊ\:[~u QZ2ydȸ׷ m{& I)S 'Md]%;%T8M<ʎ<yn"f'צmbRBe!g,ua;7Rݢw_tٹadm=.y AI$Y(1.|52 FyCQTX3)ubDX0rW5M:^bNE@)|gnr!ʫ"=|u(Jpqr']5B|zI>K̽&::䒓ǐ ᔟ*<|Jčgfכ;-\OdrO1'ofq8m{7D+-UR4'DOSBaCSm8Bxqhӑ>6R!g_Jc(/05R,] Z搚Z&IMJ67${zo԰K5xàEU`Hayz(hB6I]~bNO g"&z9]A~+bS] UGP%nDx*d}xD\zXu.LVW[Z/TMHJ.RXBscIavfj3tʶF3 "f8uO)u:y Z-UbuE}giC H ۱䶣;S72@3]+!5iU&%}dwžR 1[2fO Nf "6:DA_=k`"h%~Ys7ki+oEצJF؆d]6ґ(=3cytى@zhߥ1w׌^ĭC }#֊+ˉ y>¥K7LYpw.b~ÌEt8osGiŌӧG̃~/|bM@ˣ0ɬ %e %A ]fOёIüuXa+nOi\$ѭҔ,yAjSX JY;ϩHKeL(|ddVX} f|AL23ĥv`O6?P=+F7R}@<+XᏰA#Lҥxe؋nBqKǟicb6cTn;P̚\wUY5DJp ~{Lʩipd՚K8EHP]>E1LclN1rιV]-z ?l4m^)4Aԅcen5!ƥZ89N1gW7ٻB ޯH-` *20յ=J/i\^RJv05ŰSpm`%V ΪH,o[ɃR&WNw4`RnU*w4ɏpg+r,^'AHŻ̲2=PsiS:s"AiYLMxK,D[R > Cs8fN q)*&RE* %N`Aўn` V ˾7IWc$u` ;\l6wh2 ֜F]jEg ,ԯ^\H7T5oh# TV\+(#o o"N?/jF "&'gyDt ;;^hhlV9guCꠕE i DsY#.FTHV6rWG^gl!-l4-@|u,1һ<[.ӓpwצ׆ Pں"gn23_!;H& /A+ 032;0T=eWPp=¾z׼d'ʮ]`#߈r}^]`-nݍX{ܜ,#Ot;`G|E_W;ֹ!PEipJ11+\HqPIhǬ#RlS*:ƭYFh?˸b\t}L F&l 0˹mQ=噴ibW eK49t3& pZLy/;KՌ ra@-{|& `-zzC\`ghhw.5XA/,UrED #e|N{̣anTeCP:ܷ]˖DO.οFq(kw}W-f~!QFfc+͍g3 "75*nA8"/[*58_YG%aeG$xs"]~gAB|((l3$Xxk{oW(ִ[FxΣmRsݽҽ; ">=T`94p@s`}E{pŢ]IՖՕ1=tzO+, @T^V~&k꘼v~q rUeqJ`xIG|eÛkm_O;`'Pkn1cW.wP>'ݪ.W?^l26=fy&TDNoXٝih>ui~sI{"N%`67`sxupog=(Q:wgZЇ %w3 lل95 w] SLr]:﮲єn,N8K̟ZD:e%d Xٔx T\[3{(=c_18hcH :FmDJo5qmǽqQh6F+tv(P8[8o|ն8b6IcAWQ"[9x7 >V$}Nv4Su " jE{g&>]|<d?E+FEh$ bu ޕnt]#޲!iq,&?-S՟ɭi4xsI B{gr{blJe )aQU//zT?FcY+Avm/ݚ7BԛS3m;AyDE*=dZ 3~CL669M*UuvY['}R>IT}fʴIM5}05(e-g\P̵s|b|fy%>~`Ţ + 8rBySho̬) ٗ%(Y#eEs|4rfN>+6"r,&iJ"S7υTiYz{|#S"NV2~\1R쯌 YW8tA/X_Ǘ4b:ׁg ‰XzjHȋ,V^/z?-D~ڔ$!Y Cx!8tcDneQ#6HX STYT zuS&% "t`cFAB5/ ?poNv P޹\%Ǩ)?Jk840Zy9obt}@r(]kaWUkMۢ}D178"'ƽ0+p ʀ6wbx-/WQQ,!0~FVλdsJywAMDtXFP[T%wώ'6J"njcv" qw{)aydƠ҅`)vfdr%PEw?A>Cg!Lx|d۹bP No}/+EuN ܮDֆ]G|}GѺۭ2TK>HFr7sdH?ک3q$(/t>~Կґc5 #M=-R-اe1 54V1*(b%X*}a9]-{ L3NP$#T@ٵcC߁6߾!?C\/&Q2k mo|\MYqz1RZ@ (|J18˪wMPߣɧSLtWិa"T)8`t%8&dYWHNc}%&|(|wNuVZ_61y˷nJy&j<'&(qOKrab͂ϻwz<<[JT osP'g1[@Ba3Ec/` PubXsar.j#MBF]LkO1hpL?H Okc1V >m?W:zGق >}lukJt+E#rv:L'#"%ZmMotղiEN|ĵdN6oj_|gִJXz.f+lف/0,L`ACDܨC *l!#hWɶ%dE/#E,EثtX4CN-} ݜ5N`!'5Sq("LXh(Ю8A,I%bK@M-{8MP8E>8jG46n`sRT>_&̒CK#}НĪyfw$Gj`,km@Nxy:h@ i {rȃNOkOiPs"z픿='({M^.J;gNCP\6愮rio$pGmDؖ(Pʞ#3ub+vKrԗyQ;\D\0-9}{9# Z8-d8 UʊY=S؜zߢV u]؉lܼ`, d>ayLt1Jő[VF$5ٳLjJ)K3nc\6~^/&]1LŁmd 60ag-zz=ȓR> wp >%9e+Q% @.B{+oip厬?IJ79i{wHؙ'OAL}v~}lȿcfu5]zpEejd F̄RvoljD;.==cauCvb n5YR_Z:ƯE*=M Wg^| {UfJv"mUW5 燻Kz$NF?+ c$ER#|-,d!?K G0M=T}M^7uRnd`䘖(U#{ϳ:>^0&>}p7e`n6;K%1Ηm2zDUm {g$0Sce dxMD[1#QEX&S&CͶH{)oeu']T!ļ/&Vltf.1W˶5"Vqa-^_2OUټK>zNๆ'"4% 4l.%`d=μ rvɷ%-۸ F.TLAz^WY))( tF5sWR#db&FӹlZaَG1󩢿 ך6AQP˅]u־~J֡WM|_ cBvߧf-smh>w՘_{N1Bqᩈ&i(#t aT nJw\zSO.; =!rm-`0c/bp |k\/!?Z^\+}րˬќmGT;>y 7Bm(-gjev'#4Tk=N-_UQ%M>5ern^$1-1nDD,h|(1GԐW:Xy&8Vs.9/?k =ô7iS :lkڈmn 2p*H@Ryyό+/XvP$*TpD3?.\fh}_Kf{ݓ/WZ*(VOS2Ƶk9vOʐX3UiMF@^P0=<YVZHI m>Bq6yt=>#`%iX$k[o$)߼J96d?v[ٶ IqncJa"MN "wn9A`w}-FNr2L*QBqZ:s鷃 P}RC4d6~.<@M5Pf/_K#|6ڤM\kyDP i<6n|<7u"ox>C9o%(1{R[ch|WU tψU旿qEXxrTw!~qpY b2#O7;Ƥz0A gw#E(V5hVXm)G*rZ:TQw=Pjﱑ{ivf2e+d%2!ҟC٧ /i邛 l{;Xzw4W gCknzb?SB(908[g[4[ *(.Qml 5W\bAY*C$RÒ@* E< Xz@e`Aba,7/Ρzǩһ5WE.r>cLtA=‚#XL: [u'Z\s~.&2M?ϔ`( Fq ZNߑZaGm]%jgӪorY_)cj|_ :s F: Lx+$ѓ e}Dx $p/3<-WU,SKc]D)~! kJ/W#jYHB@AbCrn ۱n]%?3[)e $hZ3+[!T8v oF(cT+ z^$ sߐnOX|#@"HD?& 0QSMt8D=FS7uF{Y\|jXG%S,uINT}]C jFTal|YE(t3p,=W_ΐgaRNEMJ˟JXjn7QCq6Nጿ[/Ђ!_^sQҠwqΠ >^<meWiv;L+p91=$"(ȳz;Ӂ -X P3czZKYhSl% M1%.GPBdARo!Vڼ $ 3ٴMgՇ<&H9J+Y2еO+uV]~s&RY1JMeP ɇq[_Rlv'H_U/l\h;ģضRQkCZx!F0ކeXGG.DURC^vVU0A*.lֹ%ˇԳ^A`XVM:k+4M>ؐ[C%KX.n>3l=J$b!?E]oLǐ^y Hl|?gHZ{ ?:͛[l5T~e#טۑ#~8_q<OmDs^[M'jMqe1IzewqڜZ0Z'܋ElB:lP:!?DN}L >  C+ٺU sUT/_y]TOixvÑ],Y.qRzM |e an=P/75czyYb_džQU zL(U2p&8ȡ禧p: U*{U`ҏi2]j5)Kά`*pȘy*\\0͹ }hBډ|w95*ІoD w-^iӐ:V c6;|T׻lZDdm o[vi;~=;Uf}q,Tvw mJ+_#q|ൽk*18L 2r1QՔ&?:bWX; %v.9waREY QAYF^+ 꺹Mw!EQՐ uUFBE9}A}5a{kmec8,=@}a\ߎwݙ7v=#FEw&ADTqN1C2z6օa2yK^K8SCJG+~RFcr@ :<O&1MWcJoӡ!"YD&ډ=Øʈ4tk=?Q"Ґ5PEǽrrtvK&K{ـI/{p,Z`%'g_Kf[Qf |!1v9_ Fiðt琗1Y6Sg9b޼m%|Ҁ܅B>&3nFˏ"`ihFf6o[*&2r^> Y:Z9It !!q؁uTLrsFϭs 1e\_;' x| d*y?cMS 6j B7VpV.eY1ݚ'7?NN,P:f`qKOⷠHdX raK#CΕnE'~CⲌuX .nV.{9K k.E_$,M ppS<+.Lͪd^A\&%욌%k7t[ֵ#>5mdrXA(G hod_re ݒ'(%2riUJCwI'&ެ,`qcw;Rs+J-uW/ `* t` ,qȗGv}*R6H~er~,L1/s|1:\k-%㟟4ZLU4y8 KG8|.: <뒼_;>tm5wb;n.yK"+V'[(]J5QdMܼ}\L?][;+.(p8L.d%t&nY[{\rjbmJ}׻_:2 w`:@FfN6^Gfe5N%a㧟jEe2ߎ 5 2IkC^]Ah2Rnby/Rx !ipv;o~';bC![?Te Z)&y;wB+,G,x̡DnMx;C4]㷔LDpK'BAFEq,|e %q-S qћX;_7@EJ AНhܲnr䷖ZckY>Z.[KKop`%#Uh[ڔx$=.UtNX)ݭX"f|8"!wAUOLF繇 WF6~~fggLKLx-vy)ޮ{MG КZ5R7n:\}C㺁Ro44TGF: ,+T9n)*Q'^ZҘ]/]P">5Y Cxh:9-Qh:zJ>o 4A-mRN~.-=iALT^;q0+}v㴘qhIͨq@o\N%ZqUL%GSҊ$|yčUi#JeqdCa{'BX2ͬ~Eoڢ]*JfzK12A];ՍU7QJbiPQO2-}/Ty\pr\WZ@ ̙Q ~ra=ThѢ pq14j|xr[Qu!\ =p]d{5ռc N׷E>SC z">%G!lAV_΁AA;`T*bsqf%7Qk; n&`-',84Z 16RK +o*Nbg2Iuz>0f(, M.0lXZ3%O2fx˹E9d%N,@'*§ K[Jn38 wC+'ل";"Iaysj:c⁁b^$_ˊŁoq Kg$/?'F=&9,r(߃l9v?@:À;QT7w 9abEQ=e /<+waD QTs(6Zrwo;ñy+^8)]u88`7P]_?c JM& y`g7>?,}M[i5}'/P[햏%6ߋwd.$#pKou1#_`707(205Ϣ(b(@;Qخ!}L+awrT#kƇ{3Ugu䔞pku8GJ:}T~2SDKhxfVy^Ҙs,XY<{+-C}OHC\PQ=)`D?=!/sIP#t;m` (^02S;ԩWx#[;k9F-H9*N}`?n٢psŷ8qenONcBL%y3Ck k&?\V10jY L* ӽ`fp i̵VB6HW[P##pwpŽ])H`b눮a/*(iTe Oj+X ⮖ؐ%*eK4m7n9Q Z `%1i^,5f߰U:#} }mo [{ ;Mv+nB1L<%3-i׼ Sdx,Qkp֋]?) ұU4<{hCv[ A VkZ Pl?fQ  *߱KTW*_˟)![0<:J bF뛈tj ÙC,BtK`̲87dyy}BCsv?(,#8`E끢F(@D7eSx֬7Oh0 eI_ fϖ^9a6c*U|%%; ;5UTm67(Ndb=.&ގ,%ᕵ򫢸,f|>oDLve\ |&M,Uc_jy|`9ORU?RX;Un|_3QNv/|mvҼg`b L|/r c\4p"*+/;&н+GoؓpϬi Vx:`Hƿ㉦AOh6mn jn&tkÒVPӓ%f wR;O} bʸa7Mt$,ܿLu'Y5j3[JFr(}FE}L#զL*I8.` ^6fKcu0(f8ϖ0dTZg^#]Y1%#Y偽D4M˚}tw PhTn9]f9Lt/tɗ}StTf gcDz̚^ImA@)p{i0bЧl,ײAJUMPev=d?VXF$>Rc[i,FN!}m18F!)-2:t*Q~ +ͷfH,G˺~-0pm0;U+ YdS e$JhU$#r!:͕ꙵ {SbE?#J8GrAt1^Ic-3EAAٲy5 qW9;+3=tt@G-vJn J!,Gd[EKwIJĤqZp ^鹰bJ"t|5u,z)JruN< 9\UEynsmȵGhXK7KI0*Q.ZԴ82w%`z==;P2894>Ԣu$i(<18]sT^5Ӈ M?wT6uxɯenм5wlnS.Dh=ibP >yjڧˆ'v&Qgr 1|6Wuـ{q1YM]Ź}:5 H3!M)dSdDу+2>^gOAeY=@w pKc:ݒc[ME3m20U #`R#L|)a0!4F< mI$DZ_"U U̕XQjbVT-J=uncČQp [upAQy.ژ[tleJv5)o-}5PS[~fRfi蚯_ =!^Ƣ|u҃!9t Od5W`un %? u8XO/ Պr$*v6[Zu)+w. ^D.yitHQn5uXxu&"kC5u?9=F߆ )R(9ٰ/lSC(|6[feEtkx}mZI+{hƪ$Z&Q$&P0ג+͸ (-~8q+ $e'4`>< imS8u Ѽ;q9 @(!oʘ:}?T OB+{AWhDcJ=ag_]Cl0-"Ւ)lDO%eހޘ֥(uC3{Fv ]bupPitNb_7p l \ ]m\8|Nѿy6(l`R_bMy˟qse\ e*]THPd!KVg#*rFtA'UuO)Y_YUx3OqrS~U`L+<ɭ\-jM Ꝅ5nv_f"l&eI8-MZ,A""<_$DdFiBʠ8pOX=#P_00aIRq-1~V6)F=Fnz!y]SIתrB͟'ο">ߊ?>Ug ,Z lncSn6A n*磼Co yRQVk.8rX 'eeM&؆nD!螄E4JlU*C@AEg cXȏK8Uk*tKz#QesF~Ywu}˘*bհ>rtn܈#kl&b D>-$r0<#I WR?T}K/D2Iڌ:_1%4MD&H!c0  N wcٮ)9ש{\`LJ4M5YF e)`֋LrCkOe%2y'_a.v9BP˭N}X8:m4f5})=h"z4ER=rg4rp1`S^Y$'C^ }X96.5}THL;Fi'Sd%)*g;m1J jkn?j>Y.ub2|\yogr!zh)w4^RC7 9?]Wm0T,X镣 Ha4@:/ uKJy'F5Zw{ڴAF:M / }B.BQZB+Gyll,gD}[;Cn_Q3WX{<9oa_?o ŬIpJ3+JEdFű <%u9}cJaYiLV=>YmRVG/q[('V%#ƄL֪4u8$1Q\z\B1b~ BS'{ $9I3'ѧHeŜpvs16&%V lsg XbH^ bJ6R`[okn!E!Ψ1"F!oj Pdg<ЂJcVy-D)f 0(P]j ;"q{š^)_w|$)Ϊf5X~O5g}C-,HdS ,6TKaF{ڿ ~Bg<Io\G7U5 O63Wyi ~X^D\DGN'*@'(Zp\q?'PzR$jr#I;Vab>vm?m kgQ keG"Rn-U+9[?rlUz&&^no:}S&vwQAvz՟VIVfhXڽ&UtX_mdLzrWo4R[%B] lsc8 ;׷ >a!3ξze h02X@a>[uV?3%g{p]cɖ}ls̾" xٚ=pa KEJ}H|Q͔7 FE׽-)YTĬ~u<#b>qh|\,l{ $@'<;t+4_M^%\`"IQR|_ >E7`;A "Ez͓% KfG4{.=V.yB)[b u-ZseÕ,F6j1 )HqǰkŰ@+$c 65{Ϟ|) s,7?Lch_͊Ħj;>9ZLd \z#N@P1^L3d z_v`߯."bCCx=t au/zDܳ <;kgEꎕ&:l067n$9vL\A|lDOG/lUkn#"B "c.b͟M뉅\ZZEL#5~R*Ve`8P=@"$NuXy@UJy(i`#A;@Y4{ܥt|!^E`7xVH+Rc{S$!vR$&*VՆ+)za̾@X(:mhBu6 N'F-TVBwۥ'uyzuJ{"~+qY+ZD#.d2G%b*$]SC/㩙b.A׭ٜα Vމ3[͐`oZ7{:.Yx_VN7M8;g-+O_`ÎBB ?H3T 끗oF=2TI{v}/X:PutoɈW!t|hxA8"yV%zӕ43kpK`3|1cVكs :^G?o'dЎ6{؀y]IuzXLq'D=lvG>0x/)Y" Vz\c&A1'cP%a9pU绳~q^ $SG7˜h8eݙ:p*kuK>J_󺒟MTz*Kpeca,e9R x*?Zʛ>]Vq K#kiqf",Em_S< xǑM˶{?i:: +GpTtz2OUOz/*}zG/{II1?-\ h8d}D+9qJp2*Yeep<$kbdSٲɦ^,*y@WM vw˅iF"g֐mZU?A>Hoea:KzowHә"8Ph WR*.J$glM9ލ 2;unuHPuu+=sVd JPCA`s#UCsKF1bL~ep}S}fnh50}u p9*X_$'&$\n};C#Q O7gmrpѡ piIlW-/ )y̥C٤.n}dvcBEwAwm93mbW,}ف+HTD%DJϼ~EdSUO^>5HROCP-7Cn&Y*jyp`M&-o6މDy=͎ƀ$A1d U+/ld%=+LUlSn+%3=A!ٹhz?5M$GN1qivI|l#-[=qF _|b9zPc1_.0$T zӖs_VJzVNK@$80Q3˸ʼr x\GGNXef/L9>NN_(#|C{qff==35,g%Oz~>J 7b< gӄM},Hgƛ&mjNΰ߁/*VoV1P@/w2ߥ`ZPW1jdZ[~);F6ijMm3^!mMtN?N? G4tg6.XbHO4'9o!ud(Ӝr8ʞXdyuM}Ȭ"iC 5jeedǵ  .9NB%G0E|y .F`P\\ .=1hv{yy)5/ Y=&|67bѐA͊P vY.9#ӔM4붽|`*#D~AHQxU1A\W|ׂsѵČJ*- em( <*-O79U:j\.(*rj`ܡ"Ƥ1 4v&B8*A#7N{Q%aȭG4KsWQE>;[1kyq7 :+ty-J -5[+|ʲ6ѩED懓 iCnn.5Fq`^2iAo.[V.% .cn36|Lf|-Mj#* X!rO}io xmHǒŹcA,Slz cQU{k.qi,Bݱ{,1W12 cnd g}.r& 6R֒8QBsnV %]V~I6>d5ZGIz;7M!ja0-nS2I퉝GY[}zTK֜v16َ}F%ɓ<~7HҊiB3$8$ pt:jP'yIku-zlr&_@htab#3s(RHr!_ΥY?A|i_EHbKjBYƂH<0) A3s7[Ttx9|J Janqp&&օV ί$Xu ]:,7T4RJT-9+7}ti2\4 X WR8A+$!M>&Rx+BJ>. :=f$+5?B!#c%l;2إT8v*#\*Yu{}VGE1\NgD4ihCN2!\ {!#%.@Bkf`xˮu c}?s҃\h'oM*vnP3Z]>y4nhƗA [/dfݤ`ov{:(2BGo&9KZWHoss2 OF4#dkսgT=b˾0{> d29_d ev R ќ}CłGmt `R*e8o[q2+wWsRh#CCmR|+K ݓ0ґĢ1>jzRc~-j?_'8UWq5("mmy!*Ҫ;q0 /A$[ JNKg(Sk3sdMlz: s#у'ce@u4=oJ sٌ8iY?bzt^FY.lkUml i~Okc$183 ~ {Qrh;5|gsȣعHՕ.Z uTf.-=O^x{[]Hes'$=j|P3F4r"tKyCYOLCGp",Y`Jh 8-Ԭ+2duF4P nq|*kC楁`Z J9g 0RƾSz|5~:5h?-Ŵ_Jb -hHoW5B&~~ɉ.oq -QOsRN`:=dpeLFֆKy:, ~zV6 Ai>-TI(l^ypZ[i# BVv] Wo-$7{LTԴy cT*t:URF3r|TecbNv0]gܸ(J?DR:*u@n[8Adȡ?J~FV9CSmBr<2^@$oKOìmc+7}*3 U|c7lwC2} {JlH1h⼦ȝ3<]uNQN,rN D@?J';2ַ5̆?:_Ke9|,2R<';!bͬq %4h ziNXMz 2!QKּT$Nܢpj CU4&Y"06"8bI؜b`z>=Tcbpu rGaɿ}%;,[.o7ߌTryݽKS?P#(FG˃E@3 _h ަ/4ѕaP<ߦ+Aaud3cm5W엜r:αX (FkI3@ig#=[68R*| K1,&t1 `;?&LD0+Va;7 7~-2@m gڟ%EKӑ :n:׊Y~S{HE"vn> 6r%%][&1 Ư_rP_v([ƨo!SKS)"l?jևTgux;MyxNAm>4#d{@΄h&Bf FQ:h\0)*?}/_- |e_qIC⌵$y2mrQ ҺPoKUZbogbP,!FBXnRܺdkVSLm"7}BGȵcҧ%O=9=6z'Ekp\+\1h d0nUvJױLҩ1ȆnO,UrG,@þUbhk~y7nO]KdFoǡ"2W/U4_%']`p>tCY,#y'R8aFPa}ף 1ɪZ5ʕyВT`!!¥2S3u%-<џT- !ŀ9nX*P?/L/OeM_@AȬյyy{J-|YQo֓ޔ11ZPf:_#ߊgL$3A:`ڲ(&㯃6FT0zҕ/m9羠So]A!{M6P~ ;N송3֎,gp7*X*̭7?LlŽ նVjH:O@h)JtIe,O&ow̳QH?2yxXbh;HU=qvчw=?e-J_1G2JCtɺzjV'7'DiæFvG)-P42Z&bQ;f|D-1D!z:LZ];И 8}6^?wV﫝3M4Pie]QR6M]DKoxK@o׺5m7FM( '([0۶SckR_.41l#䫖=dd*h9ޘW$U,wh +mP*t>x @{J\]%PX:ѯ[H\fi}kU|kN 4LjA(+H1+ɨ]3('=Q Zfb8,1KMdo~dutZLiGe[Dw" $cy4Xc}pejBM%-~ b]0=ҐQPCys򍲹ヰR`rv-zth+cOK2\9.Raö1)y~;(;WOFXhD^Vmxij|.؋d/ubG24Ϛ:׊WFrVQJ[Y!uM g 9yj"`R OzZrZG4t% |$;^P_#*}5`^|l$bHMuctZTX A;RT% v뗡YA $ϠTCeL,"+h6EYE'$J{ܺ.t( sOJk߽]a*&;bO! vas: "P+VzOCy $ ˪(w廲O[ ^ۢ?<3  >Fp?o8n/vI}}cmJ}2+9.#, bĈZ`'fXk`ÿjWTz` ={uL ʗ=iq6XոM)+G 2y?[E@Rj˞0{.އVJ^c;@$!|#4׎*26E]^ALYulz ; >VO',1-(Ts:IkHt&^?Z7#qaTӬ2nTV7xDMI?4V?⿦'0|%փ c3iÀzכMv/mx;j?c1ruf;f8MpcQhSo’(e29hJ@)Xg</ ,udoo$[a1D<{6+`3#̤Jӣd7nw/ڸCJ9!1I9'\0=^gəe&;Ȟ'҈( የs 7'KZJel8$YɈkʓ.br{T UXœx2<tnh c,>L~w)jݱ[cC ; CUǡ{'!WrIa"/H32?!9+TS,*0G"N^ St@VfKrYgJm눉x%1vupSz`Ou{/ U.2S):p"+5GlBZ XO쮄H1ͭ/|L̉^[kFleZiJ\ D#n-ڎAI]w]Cúe7L_ύ zߔ+Ґ]/,UM[o]{3 .1[Ka^ӆ$X3{ |U06ϸ'@!"P@Od#B öB K"'Q FJ9:- r)Jܴ:uPw{#l7NY+xܺ1f?/kP3EwdF XTԚFqܨI8XM!~̌;c%qw6JQEc˭c97lXa)18tW0!?=*?ޘRЅ!t=iƛ/z6frAY81Qh?QIa^PB]ۄ߉f[u4ù0+>u/N\MWQ%yש޺:Rm6Ehe e'sᶁJK]`YhyqX'ks(| 0& :.,W+a / ;#( }KLuhEn3#o/=ЃtHA.xT⚹̈́/B3%_~I&=;K J|AȅdxG_q,fKDHV;~`Jv% A %TX~/Y%:!$b-4 ,`EВnx ):1 UPV%c@qqS %G&}0:Y >ʮeJȰPdžӒ7QX(Nc,*7zOb$!><6w#_7Z= /T>คܵ@-y|W|gl 9B7c*cx*:S/!fO4* 5otz[|ļpS n6hPD s(a0|b: ]՟. "8;{1}jvv65)p@Ԛ@= k)lwa6sMk!_8b5ֽO-׈ȱ gF4<~dEIF#-3x9IO @ټ(`!P=ذ>qa;b<]FArK`̅'%Q-gp:ܨJaԤz 4Q* x>U&OE1Q=CWy 2ghMujjCuT(L]b}6ͻ14MZ d&`3o̮u?fmfw܌FNkա y*QX@z!VЖvy7=4bSDQ*a窶 t]@D?Jt6}|`_c23~Ú # IݺG }Co!ۑ@= $7m;\?YHa A!]t d@K1\)>E,wlDq5sC?f5-DvTxOϥ c~ܨίvW4 |.q!+3h]=_p6 YG(0|k鎅W&%_MT>v'V4950i.?\D[ߞGy񣞂W/>R X~FMJ0hT8}!TsgľF11Xo5f8:98Rҕe$FU8ߗ'd`J)d" d,5 _mx5M#M'OQqH-b6 [[m>:~,w?"%"ʀOdɭfɫ.<+w[b2'Lgjxc(tU؜V$DOFA#?H^@Y (:x+M~lGDbRqrZ0)L*=' 4t CuU)ܐ/FQ.w&_kPN6bܛM1>j7r=VtvU.i wu {usۤp⛍[EGBXu=ڑBr3/M"Ilz=Il9uӴ*@=v Lqfz]_dEm/\5L?-a) I؏hiSe NTg-(9E#u N<8DSap[~N]̪T`58֌UD̊B9,3k6H 8XKEWhe~i?*[XeGq2|u (m-9Zjӆ^ZY_|i}ZOUKg\|ZYqkœ/iߤy#Q<^*|W_9]=*L!R>5v#s8YS2Sd;չHň"bfQ#Yb,ko#X [T. H8B*Ke̬d3z7:(jH F{:, v`gXWLy]ֽUs`C\רQ7z?cwPߖ݇PR qgt0l] -ʅÙgn3s\| QnMr; 2$ךr/bwHF}M݇_+}H1nEIRyhb.⤾-nWC3q3ãO36`OMT*|/qp }kMY ,TQ$ D$}_颏Mkpw)S-1냶JyLD9ͨ4AY7b,` {b%;gYYH] uii/?AH4v=$@Qtq=|SZ{?z2ȱd;9w2XKeaZm Veʉ8EIy?Hه;3;7:Cfc¶%ӏY4obF! _Ĵr&dG\ԣ&a5c HrMt14N}Ig5 ~IF[mJ` YuҟSQ j~G f2)&ft@~ 9  L&ux<6K%E;ͤz3_D[ }s@ im$56 w$ڪ1wh6gd 87 X92.ӊ kç%7*,/9!A>P푝)fd#y|U򥟺KWZȒ=Z$LV0-`$g ~^Caѧ mF8ھ!S44zmK;)3VKzTy tjug, Sg F"_6X_A^@Or+7x(zC5`>VƲ<*l&Z[lZ3yaT;j`ST{ ։[Ps,rWG-`ߒ`Kֳ\ú'@ny e7h2۩ |. oI\. ~\nQ!Ƴ p>R"A\iQfqO1Pv,^L?I8 ΐ.\+ Qϑ/'0ѲnUM9|N&.b:FHehk7!OV€S ˢH)H{;0][h^] (dLe%c{j ~v

}mW$+O'F'7alsIOk:(C#aJi5bþ:m=s7uvN+ ;m8aonr2 AixJ/ v!$sE$vj:8,**"Rξ;@()XR1b3`=">B^| G!" Vj.C@~[CR?.!USH^:T .IZSӡֈ!k .o)tNESHk_*4Ua㒟#ƶ@g,2ڒp,0L ghd:H,벰KQ7}vV6޸>F`H] }y6ZEk^M4ܗmnvO2W}'뢯f2ȇ,,47u~2&?ITHgAU_gPH@wB%U's_uX!odM(tqqs)JH!4L'fޞK0y EEoBIix(563 I J!t|q'.s3.-].׷2b!xze:~6M/z8f58Aº+:⸖ )lD՟h ] |5=8@SNrЬv4;:OhlRr!@RH?CJw?o] oZXkĹ>L,}L v`~*QN_vz7LtuM5q(v^ fq2U>08mG'tԫsGxcWIº!GkhE Ռŋ*D47խBF Hlk 蛜<|x܃.06kJL6PѐE4PfKY|!hFYc$Vp`r;/ fgJ7 qR.0@6va]%mDA|Sz=?--%j TfzH;#Kߛou h3ab@59-pGDqjbinu'3Hz)e}B eRK/1F73S4yjGT2<u CA־Iq`[YL0 9ʼnq* 3ha !oDЍx:^vkR(ے4A〭0 IiEpjҢ"`\As1cO݈& X[}'ecY1I||ۘ&0;8.r;Oݔz1mw kQ=|@m\Etb;;)goPM5ѰU33E#0̮[2Y9wAU yn;dž5? N`eQd\ yZaeH',M5& \CFn ,ɵ<& eц}q kȕ{g6*D8t0{v R!wT~k0 ;Fͱĩxp_) t,d|XÁ*EcOPy0IG"93f4Y hQw(>S_;s6hb!7B`OH`{(zj$˻+$q>`@| f[v;!p6.f=Pg0X56f>&u~z7PWʖ_ 6v~|{o?8zD:cJtPwr =ۜsM\c]^$–RN{C x/lo܄}A0 );?k|.2ߍZ;Eupss#5PT(4= s!QJi=I,`#O1nc'71MuΚ&fMȽih Q" cP@ ū"Y$8?UG&H=ZC$4?ԾhRsbYߨICc!IUX 7'ƶ3^(ćd& l zlGœX M s푌S1?gtOےd.yUjj -A㐘\->KB[ nZ0G'?]YѼ$Og |~~@K.tX7ynQ*UdLC"#ZWܻ//+$YF1etŔK`,?@{+E{Z`MNRb#cĚ2L.ͭ #TjnB+Su( ]T}ew-'a[t;ѼtQA^:U"|Ye/V^y9# $Gaicӭ"ڼf}nZ~IDyߘ`g5P &(]fC36nj:ܹwl_.8O*!`S FjWqZWcdHΣukNA4Qs2\ݼ[nnƅd%I@-όOj\kd9g!h[pE^1.0o.F_8GR#j6ͲO:STԧPB]ӷ l3aUIur8(Iu/?_|~ *cj"Kߧ7vB@>?eNw6mVn$^h83jD4-WlOY|Y7@?Rw4EI ,КA `E i'DLou8v%#X?W >Eۚ.  %2>ojͫۓ 7b9mOuŠF$ɟ݋=3Z2q"td}i>6~WTkI]qߪܨG|O'x!s}-ZF2zxDo;SU<D@i)Z?۵Q5$oI}Vs=r)Vx_B.S|N %H^)Y*6Rk:U64Z&a+/y>ٕ/d_t@bh[BMZ=ir 2\pd:2 q-|lm}wF)܋UӶFՙC+]}#ȥYެXD7:8DҸ$ЂZEnGċ>cgd&m8˦7/il7Y@m/ya[[HpI dukmF~oR2lPJ=d,ʑB.npۡ 17_9b}Ev:i,D"{0jY10bO2! prInܢkuK8 u!oƁjlTpͰpUȯ97Ct}cxtذ;^|~oh'0%=nA/ _m[rnh_ H%NQߎH ɭOW9+Fj'? GՓ C vhו=DS5D8r2]N4Hm6Q|)b8ĚfWlv`z_ZWWn l9)ބfPKpT,Zqi6M52bsQܖh?ӈ1jlpVS&˨J%sUdհCXX2Ǝ0*{>S}sh^'/DM&2e|}D=@6j"OWnVC{)e(M}w}ز]\ t[*u|#k$5O2u(1 lydg6D%~gbw:tfiMRct4Y+I!VVF ?["ъ43jjKvK,b\(kҨ']- KkNKCr~KVF %M&,aD 4+-B0etẪMfXm U7vS.h B^pfS^eYm/+Pc_9@!1ۏGz<9ϼ}ED1{G@/O,M 6TH_CpvbO,#wΙh9~=٭u׎_MfFN@ 3w#qj-!wXV _xwRܒ *r]v\COx"Ă)j[;exG3j05j ~2`UGq#,VƄAܑq9E)`= `IfPECU<1Z[_Nh Iywź9p8A)`'hP* {yN:ZeKn@,RJWZWBf+bF?>p<SXN?>z\G[pQj꧳Cg60CᗥMK2jS@W-3+qC4dw gBF$,xˊ葲9v#*Q͜;KFi%30%pD wʦAsBVp~y'[;~FMvBqKšfmB+J&aEm asFY+>׊q+ͧP\)>[stfleHDdt来 }ܦF|a Z<.}XwO;"&\rzB:A]!ϲ;.{<0B4 }+H^l)x~OSz.FXJːZU+O]'<;44?$QKmX]GSz3h FB#=Gv2 wOiY cns 'v/Ѕ H4@$jL4w2j+pAQ_PT&uoXI"<zݷan'@|%4Xyn%p=eC#.= Pt-$'M8=H T8ѳk3ds%ۺi<6h=mz t b'ҫC FTnk;T7 <v{(r~oiUPAud p"igf Bp/U䃘$QYhɰv2Ez ϒ,Y.Z't8.S1H>Mƥ^gMm$R΅J7dc9q `٭OQ'B]ZĘ?:(y9l(%&h0p/јG%rDȸVvocwG C/-Bp|ةFsMQ<4x9;_IYl7@mut~'};8\ lKgK'2gڨwKiN^"bTC1F n }wK797;o\rbvWѿ_SyjZ=8;wéhx}ȈlQn=vSu#.n[l׬$СZQ3.B#ybNNCSS Zb8vOiے.e$g2z{냤WY3LQQ61m QJkiK5cRsB;\;"8\Δd\ҭ"<|)tֻy [45V̹Lޣs7AN= INhryab8 P*{g?@CO9=E"8Fׄ&$}E!?V\,X#4svhͰN@"ɲg5"ۆs\1ctF $H>^?n=A~ kg<1@~[O8ɱ0MЂsBg#X 8@[c䳴8&iLr1f,.ٞd"].JaqmK0D󼎎3#@omӜ7g*ցa„xY_3kϗ6l7C nfvP|߯Z?kJg 2!l5xט݂pW?G漖CRssIr)X.%㷤&: Ė*=Y|+UЩx]Ѽ@UC_@jY:þAHZ[HiY]ʣP~]'mXT?6_ǒsL490rQ.“fVvS]vyt/ҁhJOxWƠT0?d^R{!v%/kPjKݏaO: '>q6vɷdk`bhmsJ $ MӞZl|a:: jd Y;&D7ca(˜eOZ8JcO7GA%߉9eEf&c<ʿWw5E) D,yl{$fxpsŦe.X6_O zS|DcgYj0]jO "^Q6w5*' )t .WZ@WbkZ8A(ӼY<Ddʶv\$)n"G.b7.:BRfo✱8-8PJx~?5c~kjѫ f`oUb.=9gZ撳vr̖Iq&6s rW @)CWn.&ap ҪG_ n\7u+bjTv(jS,RFi; XX:QV[PY%r;.`H) i")B]xh@Wt_zvdԷ7W'GP/h)3B*6eh*>%YlYBIWXʟR~|Ny73OM7^k!qWdBpF JCe6326r DYW//J9=( aHf9(!//V#M8jf%.Zø*9LM*|;AV抢AI%i08aMyw^](gJt1TUIٗ9'[ZVro+9'hF鷃}|t{v*;}e{,(:9̀.Ǜu$)OHt(c{E&|/IB}G%QG^arq;6K\cY*.6 u_(~:@ :kc md6h|X!.벌& VP7yHTufSAɻְ}{#gEH”BS 열H)MrѮ/<Oɧk,ϷG)g<*9o߯Sޚҍ 4m# a6pUo+j_wj}qw"c^cx)چGҙkPo`dwjBOke )ŧKCo#8xU,ã_֍Cn;mZ(A6xQu$@eKӣGtYF{vxxQ<3G_ e4q: 9ڭ!=8QZЇiЄg婱m cB)iY$E莇$τIb7;~2t6-"wS=&gZNۆ[gK`G!$Rí)Hl3xX1f,*p]| 腗QСƘw*ДNª6Y;e|3Aq'?+'r|dndhL8 %SCx3Y( ǖ%QI 5wah]'D# rGY3(:.t8rU]Y)6>&jcW0\h ^Ey|.k}g3 tX=$UN;?v;V}#2CX^饱Mͯu;U 6CfqD+?U1WQ YĄDϗN[1aü\FfÎfZyVa2:kIyU47 5)/I\w̜M'L~xLS:E3,m#,rd/:db.{s+I]OK bJ حsgօ*NMB?~1|HS xݰrx%tݚ{C\cDl\ҒPf);E -xRIa޿&Q.U 8d'icd K^NvFɛ@6H.k"w#{ do*8iQYOr{1o2)2rHϏFY4;M"cM, ~d7'-5C:ި?,s]ޥtxnh)rKvXsO74Z=*xNIqK9d+1<^ W5-ff{+]UKP9EΠ MgG~ťA{3KۙNIWb~}Vj)>ʸ ƤHIYJ yRMf?I|QJe*/iгm zC0m$#5 !FN^8(;ᜏprY&7U Rr˰b>(tdO}W <}Q_O[R4-\ !Ĝ$f 7وbK̎N dז^Wt Hw̡qo+CT}I0TbT 0ity) QGGM}\=0CJVx:oVT)O#8l[zeQ;6i߷ʴohۘ~&OXR@5j<f bi4u*V!4~&O@нH}PS'q_gOU2zYm30h2Ȟ ;3X<֓]zs4h4]=gS:,Dqpx6i͔P/OQe~Hi>D0%3@C+ |()kmp6O'+v6PfR7lQfje֊GT4UV D>Tp2yS"j06J\>34> ⢚B$M&>f. _hZ%̺BYQ*5pUKvR6_ƷyĊއi~A.F@#ApM˓ʕOH*uݩ&JTa+ҔQv+=isa`dڹ۲>VoMxev_:H7f,9IKN&T `)۝ǃ{刬%Վ$FaAcQPߓCqAVFO6VBω 'AM3Tygh˟~#oZHksLg6h-ic,3rW=- Z|!w8U|1P@o?}mf׹ }Ez~hFp7}\«:_g  2!3K%7 ʎȻU:B!rRMft][j=_}҇ MjEda$z>tqPJJ Flu"9Rf鍟N;{8 [}kԙ]r-푟! Ʃw&e4:4;7XƵCu|·z4|CCke $+Clgho' NJ AuV4(+lV-X2y=9ȑx r|Ut.eP e.d-˙ȟ^t6##U>PuP'À\%X9}zwK&;=ٰܶ4ŲțlM .'67FL"-# C5\K=u F.Z7|j):b\ltu _Hg`Kڴm,&3WZnrKfl}tj#3tg\S+s/ * w6uf(3#حa)rbgv$5nO,Dͽ&%6YHh/73 !SK^ Dc a k6]eNI|^mk(#HLo0,{ie=,l\)窣0 I>C7o"iSs[xs-6`ٰITiʞM!ٯvT"+Q NR(# Lx*in*{SRwa&UMR}I^ץJ'<٣Z9] J\QXuf<yVF v~yDDz7:K :ťT%˭:8G54'jIsS \462sIĐJEۛIg>?f[ TDLqsKpVyyXM==0 b2s\F o͜zdʍ4q aqoRN ?\)l4m]ĶzIC>PTEpRğh e!?Coi49E6'VaC[Yb ˡ#0.ii~؈s7FB#0㄀1?S%^?zgSxtO]d0a`GK{o*%и *@sMP;b]-eR׷օÊeR8Rt cuf2^,%w},ǯAaK%!,Ī8oGLc3ʞv(p `Ģ,kŰ Y:E=^2A(  DђBEjD~DThNB`} ax x_w#vbzJn=b^pZ_ qN彏̌;/Z >g˺响$<}s l1҈h-6 ;} JA\ڇpU}8b~Cլτ\mUX.qߟbQXb/u"dZ7PW+}FFx=)hǂMBV.H(KڏMhK_~ p.6?gW@3ߦ[v"]2b*>°ViݰlaZQJ@nuhhgDaBwFP,1VU$̙c €z-r3JSKB"6 @ )e(S$fPr9 %M̶r& l i_!EI/ %wq)) #Ob}[,Xeϓǻ6$62q`Ւђx( vD/s(qP {OQ7O)9͖o b$)5JC}s9]K/V +h;g,҄SG V;Zbw2~)#YE}bCԆ>,3LS]t:rUp1>'*r]1hQP| o"Z%2elLʉ吚`;WP~*$5u35tE!Ngd^=hX\CUbJLzKH™q=XES@e"&{=`sVk Hp! m41mRZPAB51*Gr}BvpdbkR鰰v{C3Xiq^<hhu58 wtov &ۺ,E)ItSIG  vw_EtL4o{-ΎEz'pW'_"8]a2. vnPB]~P%j9#\`I;vF'GuXt0= /+x+'{wRf}9˳!"]jЌBEO4=K~1xgC\Y ~^HOFX+댔h8.n-/_0(;^bb2ag-y !aP璳? $k6s.i濥!rd1XpO89(CB V!7s7$-zeFaشoMSi@Zq2S+*E8,AU&Jwیpd;|G]\[ BwT[3oi[3;@&Ov!%^1wGs5y_M5)YL`uw4()蹜c Ј!p#Mw:(t Z+]HJ"Zq% gu IpEwu}VhG~.uհ?zˤЗ$2a"U2J@\#^ pJ4gN[d10e|yDIoϢ5 c#Z 3Ͷ=e˂a.~ovАw5X}W÷" ]';aĕz(!<獥a`[onkf\319djX0_T{,!GI_v "wtQU|_WӪ5EWxr{1/JB+u >,yq 4-H2 =FX]7E7pGq<+ A\Ʌ~Dbn5泣r>Ax&4/"(J96Hq|pV)Id,5$r<aPj/%A"2qƀ;S?n}33BRpQz*+`H_5ןNZ> v^!rk.|k`h"qРNAE9]%In5F̊%H0=vw&II1iSJHc&ZG|aIbBl4t6ul>6mD,+d]miDL؄Ս{-b̑1eL4ZI棷]g>}pP:X,sUzU'Z$לCmQ4lL\xn2iuX0tًN ͚ԢLt~ *97NC+J§BTSX|п؆ZT{1پ=}brRfl@I~K[&ܟ:8x,)__m&qW_~'>P3..#Jr4&\Ec <˫w3}4Nt9OgVtXN']ITC}X atZE? :_ToH_V3}Cin_n u{*\S%Hl?ca,sW*N^r &!n if!NVR#\=+coIf[>8~)&2@}к>{ TCʌ_q-7\W0Hje=3440dǬ7jiBxwyhX]EvWM(%tci0(ZXD4(/n)`~wPֶdZ F`XhYDTS_\ ͋=P26@Eb1  تRA0d)a2R'6KYQo8=R9Ƣ:aHǞbEg jQ~Opp3Ec5dq/ 2~qLF7J*}/`A^3Z4Ɔ ٗSg}ՃZ4 Ck.0"ݼI"_m!Ƃ(ᐙj˵o9uG\4ׯ飺](.KqJ|l^ 3_* yMU^qS5 y3Q|;dFe{~^[,'й0 ski V0 /t<[ dPL3`2o.y*QEoQAQ'cgew@'4"pH)\p؅y?<1?M]彮Leޤ(4F-xCo9g^>JG0#p5O=JX/~[^6#E(tju7gEy%EOSaCB\n57!Gp'bّZZ)6iunkKdUБ~Duhus`#T_.M2J,Ehw2a`S!D|G{#ҏQRp111awY a3s=PW\I{ >!0 RNSKt7t#[8q=JPh嗵!r Ն A4C"I g'a՗JA;%7LzN^e]o0>\L@>z)G; WRtRW9%s1iz juЉdk,_*`iwh_ vP"uRjxv޴P;ck\Eo6OZ>E9笄 zĎz}yAbn{YC\Y8"= ٢̕\>QYqZZdUİpi&u{t;4Nl O"a[g FSD uo(A!x6;* =7\J%MߘdsXEKWˣJ fc %4+ @?D/UJ3N K+X+v()/hx)zsS8[`I dЫ c]6XYԷ@cɢLزL^;-$ɞ7nMϴLTkNst,l2`n.Iϝ0x)RyƟXNA̛]z9(%pcRUgR 3܁Hgj+cn:4`0A}jl{S#sKc9le":+;"uq'&vފg;]̥hi4{Fi<- LlcM7JxmVw:F,!T> chR-~ D,_:FC6P(F<*;*87+rv $FQ.׫]סQ8ڗ%ibg+,$5!U?t<ˀ61Z&p$wD۔#$S)s V?T j(#wξ ?trL^rfpk+}ϗu\O/J}P6EV==;kmTN@nOTOSI>"h1Kɱ)DfOb?%̈́Kΰ`)_cj) Djbdi3^[WWhRvBM]IOrjU,K>V{2fWA{?oJp-V2|\%Vֽ| 0\@lvЃg;T?$#GGs36gHA:oR.{Vhq#Htovh1}{xS _tmKߩMkU,cy0e7fH4qJ~E轛Vj=mP=]TSytU:AzMRM  ]z(^Sң| s<6,@}cQ笽B,-pH^eqYZpʷ7_{л]ʙ3 S: Pd3n,僄EP-,\i9'V$;%;WrR58vL>xSݿ&{!D hd0vL!I9ܤ+n@ 嶺t̅gJ9͎ڪl'1v<˄W ;gM5G LP] qE㬨^ZH B 4%4/ w"DL @1ltSeg: I*՞P3?%S&xLxC~;9@;вm}/o !V5q4lȀ7Nq9w5~te\h\s u `_L3Xȶ 6,g!o 9escCu$$HHZ.[)vuLPP3}w  "/zY$74Tjhc/N!@qz`:O\T~oԻfД Ns9-(×zٚO)2G9r3u|6ju|UB ~S T5+j"Xj^=y'/?\4i_SS[Έ` ݡy.68[h1B! =gXp!y䖵G Mɀ2,( I22Wxǐ\q2TmRsA=ˑl{D aBwp|CMD澐>0R}:sG()%5lSC\_W;ELx gl=*m>e˽B΃1 G$3;d?*xZ_wHqaX_r)&}W0L8rv6ƂݤLB?)(] wnCfKK.@VSէ3V{|tDYG]4UaU"ĞWöL>2E3!ːS Jݵަ831'5D,4eOP_ͦp=aYU YoUm\̹2R {`5)'U!лhU&8ưhr%*\V>0WTN4ߨ۩C[ۇKHogJyРϷ&P"!b4*Cr;8%OdH-L4qOV6T:*N?л߂LuO5-X[eM5#펆eKs$ʖAȏL!2(p kídPw5„Ԗ^\]o83$4c ֞sT߯F iOTce.js3BB<1ZyU"bq_$v=,6ax$G 顽5IEGS$) {8*^I`BkZ]Ѳ$,R PYo mb Qhf1Lp;.'S!o2 M2,Au=p`shgy 2٭v;{V;@e^lNiVȒsI Y.V- ޺W2Y(ziOBT6+/:m؝TQk;cHY U@ mV*x%8mPVM "G*?m5qh% C69~M@;.(S\KZd0.@3]^b}2&h_SOA{3y84AFPpa$é\>߻905DӀE4U^ˈ2L{Ƅх_l4˓Zo7Q K,SŪ-o_UADMCh\8 k2\IdV G& ?alu_>()V9byhBvMlV@}W2L*e{vlY[Q"om}Ug\[Tһӝ[BV.R zPŲ`pg@&rĂͻܶ^kSn Mh5veGi~x02[ms#9 2jN/)$C !_zuLgbC[)|U *|4 |mmsVkmcY's-6RPl ;[I73wKQTtYOŲ~6D!ON’ׅ3_|cمΟӣK;kjIXp_{ʨ_:G\K.cR (5xni3%Q0rrCFQZ9-RkQ;捸Ćγ _Hc9]xk8iS׿j]rt[zU 4Á)Ӱe<5sJLs 5ˢ!Qkpdgܱ2D_E@Q~lVLhL0<}QiY!VJ-#$P 1`M=QVPC1鳇eb[`sSlL&tZj=; 2F72nZ"VP=G{i<:^\gRET8LBj7yq:Y6 ָ3,~8_u`C뭵k1N .S|ϟc,KNp"EfR^PI?3TVaN+S"{Vh-ٯGØAX h:TX3 C-*"z]BJ*a'|jw\qf9u$7A!r^_v\!ˡȞO֡WHn[HBo|"b#,](x *@(GZ΂` t}h?uƏo즓3\Gb1<+;uv(:ڄBkD(Q>2媁s La 6̣|\|8z#zav(m,aL8&˟$Ÿlwgd1ȑֲNxķ̡ 9n&C(J_1bW"7֛UV XHjwlW/%Yt{;C5B@TS:CǪU3_bubU1leٍq8xs߆7$@xblhhj?w-\.<ًV:)➀KE/@#r@?GxX"w*$D$Z=gʂkT=kRh^=m;0Q'o8LYyI5㉞mR_\XO55-}Z9I#&ⳘqiՖH i ]8\/M⨥cY_;=R /_S@o-]c@F'&;G :2KZF,f6 JA`G|+ >Qr|.بsc=05+.+ClGiEr06DG0hh}W7ٲK'[,r3۝ﭴ==T*o~+C8}7ݷa>8?m30NpaJxjt[ Kʥ)1yTЯ1͓פm_UڎCv ŀS-pD(W1'H꿲l~]NoIԾ% tzJ羠 Ң H\shVWp>zϭ֢EgCwQLqG6P-ѽ&s Y8l,Kl kzA|/.w_y*!WWq!H=s2Sq;%i7P /<&<+~_:!ITQ`sU%OPЧ- A rq U_ k v|]|7'Jmߞh')"6] vT_2yDC[Br&զ Y(WO5KE$?=US4cLXf1{|r)#qá/LEl&&m([Hd{#V`̪K ~e,=LwʯNr47՗atJ -dTJg`R#N0tlhC6O̜ MoA4d.şk_] olF>y݀CT:@zIfbd&BW Z0YpLV7=qB Ƒ ;7[j_ OFQ5wOUj: C.ct@QHdǝ(M{~`)Uam̞YH0w%lpE䴷AU 3/=څ(\bލJ/*9>Tג'+S)C(܏ xpw QIx{%E<ﯯv2Ð=,~- G(Iv>-@, IPԮq?91V_;Cf5ePOPyCR]=N 8Pt[re me|{p%k}Wy5ț*>Ts@_ҿ3D.tADgpQ*ώOcXbLLXdו]lˮ !{3(X`o!mvxVNBU"(" t ┼9)=Clo[(>j&kiWXܴ~qbr;t؆1 zءnC9J'ya%eRoрw: AwU|9sh sLB.dI+!x];Ps1-nExH58 .uM;b{@pS᳭c -q=u"I&vB{`KkA;u&2<9,w=饮-AES0-?ZagISwG6kG>$)! K(N\O!9!ALw*Ihw@;YT(lTMڛ3Ϲ ]7ק SjsA}rV)ɶ^ttBLIʚCDZ;}Qb@` O>{zP7Bo;|IFC*b{CZu>~a~dh*B cLL['%T!58Q;6fvac6q͎ *F!ESI}ͭGGoe' j8NY u`P/,ӟerlD[S ,{\2UTcWw4\;A{>39MQ(Ck(c Q>ru{Huip@gZ2oq zކފ*`I$ĽY5a>Bl;r?A9@mZQ ҷrVW O@y i'_l Omh -m18Xd {x[9|+4=_0#Q[fدEExӱH+4Qk(x ea;0+U* k~7/|vUŦ>'[ܶ/<&d')n27|HG,;'#D2it@ok7;4*(Ow#HA:Q,§(^_g;nW;qz6m[IIއ#08(ͰMzano7'AJ} k3/Ԧ8R&vLKyZko@NdEړ.$ R"(/ hW"M:6{殗;%ֺ|vru UxJP鬞hѸޒeod3n{`QIAl(4KM2}3ml`Ł90N74R.IO舳Uɱ2q]YW娶]lAm^z"c;T  u;nիXicHS ģ=Y iy]W /.b>e$~J ꄡR]gFd*qeG_3;V3j\%s\#)qݏin~9WoNhp|B ?> Tj*Yvsɲv]6b!\q0Jë@"|.Od ysۖ«@Gs;R]ӻF ?aQP09C73MN6婗5a0MX})oPO8Ikw!<}g>,aZ'?S'Dt @4igjneE484؁ +eЯ> iŵ?, ̴:|oW+h}V IկcM?w#G7 C-STd|d|,I&~^L,a|qDkg(.It%:ZnUlXD|xC17 @儸A+.GKPiuE  Ldg/k͔X ;q-0Tjl6>)}.X$nѽ=a! zfFTtGQ6ɉ}G%}ۯY,|2ړ/IǢ}GIi?> {)3ˆQ}JT_D]7Lg*SNQp5`䇠PwPiL(=<`! N?R-b`aQUuڒk8!}ii:Cˁxu*b:xCe;Mv 053jBW+!T7؏8Ɋ-E $!JWGŭq-"嶢<ݜ'xl)mauDxl)nc=쿵b% L\pƿ:]:.h,VD?qF=3/ջC2qΎRbP&aDK,IZt͹b= pV/=CHUivRr(*WŸ;ɀ* >}`nuWMߥS%8UwΎ/‡$n4w'[/ ۼV /ڠ-Ue>.xl["j9yT"ie@>I~nN2 +ZyOCh8({Lgci$S81_j4pCbW$s47f_(OLVG?Ɲ lb~ v2A1wҲU)_U=5:|AK$VLiptL:^#\^&V}#vx3~Ό$",3] NTż_ݒtc$#rfL}7A.ēg d+݌paPLBuG(CEttC#n({n(>FZ >xIhfTE^.,2D@}"}HPt8̯^O~ZgW%N|$ 9YP=2$1С-`>+%>R jU:䍸TߺA TŴըS&5 ]7:"i `C.tԳQT{þQȏ??Gm>{# :rϤ\L+blK&Fuw ~jymfeԶsbMU $~B|[єz;*P&B~^0lYh^DZ{v61 eh8J^v/|R HaByG?rz)6ԻA잠d6U*nm<j|2#?U'7fY(Ԝ4ak]j9ixی5 +BO;kA"pE2SBkEŵ8cil)2F4dfL'9X]~vlT@)g]Q7P^=;o !b_OC+aEr 8(XN\$4%Q A+ӺoT ?7zXd%N0*ClsgD:$>)>fR?#s=ݯ1fpo_1w&' ~LYZ-ZK7:=e:ҿZ]mbؘg" R/ؠ-R隔!Nq/?~|OXOWIЄ2/Pj/2M:jΘ׍pT+E^HKܪ.97^a~N,SbmQN@8uxv0x l7)?3BQC%k 0c.:8jp$QpU=-S A`2^L*pD[Z R?mP9T}̛Qm̴QȶIbG3~@;Bu؟ IѧA-9vsə&m!F: `(ݐTI Le~N"أ1ٿVտ;vY6 D* AHqڝ"E&r\^Թ^:`:N<Ђ8=eajMV ۤn~0YE&;0=!@M.\gnPCG/̈,#3VD {Ǥ'% ʵdWDw#b|}}N`0dI D#uM$u{R_|an 0Xl7(,ĘRzH/!  >~er'p9 ,x;Jۧ|!Y`gr4:i.H-y0zZv-2OcZy bo`ђq9ZLDjjqKABY2l-Ja Pv SS E~!?=< ˢ# @!KYm, uѣV9#:!|UYy'a{q[(]*_#R=Ǭ<1=UJI~O6_IAKrZ"zvO_)'|Q7Yg @ZFu*LQ1CkLYmg.12`#.w[%"l8N*) 2w)=6ۨC.]%,uGM$Lx$Y3Cf˃z´ֳ]ZdJxvȂ>EFE*5x1T뮂y ]gkOgh M6"i rÌʲRIV8=;ge.U(BXE+"JP('[c־8"oBL 3җX-E eOJ{7;'q6t> x;_Y 6Vşam#5u$)R5ƪr>{ V Q1!t_bc@J):ZZXx tZw5qNk^f0s[<2cRkkޱ"1܏˩Zy't`,%ezp`Y(UYrf3zw6gFDB UōЂl1q>SV.#6A-25Ӊ朗g+-~$1 NIVwW u;ۢ++)uC ݟ]]`|Gtv wxNK]_$mh9' NIrcv7QV +x"}8t:n)r|&)e@q0 oj?,}#N_3`ua-C&{ں.7guӘs.;C%)08!)qlu\~G?a=]m&A_7.&쓙knxjm?]By2 &ŖJZòw ϰ҇7UJI8I1#&W.Diƒ 碱ȑeC\g\yJ|g+@.>IID'O8*knUv75bj,]^T}q(`ʅo oӤ%)qľi&1H˿B|H ] lg}mo%ܤmEGoGkh-Xg(cZ^? ȷ4֊(|*<[aؚEP٤fOAy@$KSij>c͞L<͋~1(FҠY#a2_|C3A2V:>yap<_uS؞:GڱZ`_-ehcB6HHaG:0 #&1WYrC3KWh(@b!Oc?{-MBϨn&`S`59S|8j[ֵ8YwpgX j_" t3L.FY=_F+au6*USed4)ņܳzGXQfG6bxrUU+۽[767.$3>Iپ4sEgOf7MiqVkvZ aʺxB{ȦH*@A|*fX{?A^pFIE@cY;wp)ђcߥ;@y5 G,>ٟf3KW4^>[2 c*R 7bMy^.Z&SSE QFpR O8.""X.! who'ܛ<KpNC kpjpO-p&`N-y{k]t>|< YW`W7cj1q6r&J# T[UXS1Lbb2aA’?!+(MJ{5i-)O'~ch6/9?;8^/cG/$`8` !qx W'$Q zHVvZDl-W`GE?PXQsxw-nG.#`YxuyczV~!`UW5K=lxm9rP8J4{ DXl\XjQS=6#v&T[\nZbLJ}~+Œ= Um(Eyv^X+[DtgGdj#ǔ+eR[\$ uAid"=xLn{2 *qׯ {}C3=DOUrNJiVǻ...s,T(B_{C#eU nge#O:4!YbٽDXxp]wd4H4pŪ/mX!R~ *߮m9DɊk#JS]QL:w~8En= ^EILNs!lƉU7)1\)4Ȯ4D1Tw4(JQ ?&VY3͘Tm;`.֟_dX ~Op)2q, vx+ RoJ4,Ɨ<hPh @iH ++1LbZ+ k v]zdL`o '\Ʀ} +;JypvHܸЄoOg\K@.I39Rڼ0xh{r̵h5+WNGT=.'L (UĊp5F^2_*X2eTzV_@dJ2HcUqV)fvW])a;&:S@*< rd6 FVjFVo rpEW"saU_ ;| $Ҭ: i+Es_cP)y5sU}x Č;ŔooWJw\~LPufx䉊`mN}7zpަlujg\w&Ҽ͢b_O2 = n/ T?CqgYs~=%/G&ɯ.`dQ#pVgOIM0# ⺣H\}&-. C3O55]g7n^e(O1&ޓ.} 捎 $#NL̑ 64'\Ƒ(U7(L.lcLG2#$b-vB5z *,)\0YQsr`ߢ AwlCob>&JY2Dn(D֪N$)DW4u#+Q쥓p4(4.Ccjѡ6]ZݲKbÍfg"U]6B75p)qUU[4VRBvxIڒ&+9T[bqO >R5ڧeh/c\ sj=kzW?n %UL Jέ:jx,+d#*θMIGa4") %sNp B$c &S)y4d+v/TJh?85-_72?1E`0"boKM {Y[1X3FItK^ _Jp/d _@ixg7d" D- Z09CSf\L-snk9:8N|;lcN*.`ySPԱrKdSv]P:f34_%.uES)&ئFB8s) :Kd}BR<ź/ES%^3ŵʻf@׮Uݺa{>@̦|UR6 P|޳LUܸ$7R)|CAQe qu\YٞnTZ{:L_&b.S g eCn=|rYh~9XUn2lj\s> jՍ[Wzl+Á4 L-1u!2 nogK\5N(?% %VaՄ~SU.)e ѢR8Řot@ Us4C+mv**ׯqA= Z)=mhe# T4C- lh'Y8tD[Tv;rGxĨSfwtwd϶'){|OU#^&1οbqI dS߄G;s{nCp`y?!+a\Aw xA >DΫ:8bV\*71jG¥#"z^sdыAaleD00R`BN,.2gB}e ws]LsU͚7QHLB~-$UVҁ4ʼ55JזOmk|Tܣ[{1ޖ{~RfVkb˄M"hP֭O}R^80OJh6} b yHXa8BirIIZD>fl<мG$β1ܜws6@QJyN*ҝQkjпKq 6ܐ(!9 8çUfDX0vL[$&)gcO#UCl!m"5wp?F ݆'c0Wjĝ"Ԥ@o( O=,g~䶢pPI,)r5(`';̆OGoƢ`(E1]<:[ {׸0V61 CTZL\B?h<0gy P^AoXD: CD+2eD v0Kk$%͆#NNh>,U|.VP*QDd_"GhVŤ%V6y"Kiw؟+GswO?$ 9/!1dsST)HYk/؍7ãOE(NAOL6Lt#KmR1-V=QⰉ=%I)K@Bzܤ7ruii@ǚA.a@D~l{%;X/b@>ݶg|{Q5FhN_7f1_+$_$.1D; Ypm; =fbAԖT۩LMGNsF3z?F:u̞+j19:=%f'RŠTb~`+Zd x)ޤo=p(l:s,*쌋FX??E<֝F5}J]aw+=Rdaɴ ٲ=&G74f871@QrYǣuyW(D3O3q8؋DaNl (<̂SPWMYv/y\>3tΰQ C51uAڽsՄ}`G@i@#+ʧqb69G!>i7RL^lrqPCc |ݗ&kLBÈ%=eBB -ׇS q` ܂1Z;LHp$ƺ[-m\չ"^u1qd /&/2ZmyYOB|'繏q ɣPށhla #Hq*ExhTΫ"XO'i?< t&Jd%s.!ᐪphhAM%pYk5jbQ0_2Oښ.v*HqQT`@H8c3A;'Q$d|7(uR2*nxaLurBoB1D;q3U/אyqZON|oG0%| QRVK]5i5^ zTV,GO6|&͔/|3{3p;9FZ7[t{&_:x]őh1%ӣj@-[Rot.exI+)נ@:Mgo N, mAoꈙ|~QJ kM3[u'M?&Mh˾pC`2ew~/L{BE=` .Wԃ׃} `QLB 6py&Bqa\.+΀U鬞"Oy4s3n>T+#Ԝ]! w=b>L~ 4\J`Jd TnQo5{# Wutd&s2Rd^)Wⲻ``J`ˉaܘ!iȌcژ[=DP ]@Ql`(a4%jP as[$=@zcK 5|od _0lE,9 ߗ.rwDy֜FcJ[i>Iw߮Oc fsQ"K}:[x& 3=i;t';dĻ)W7$Pŕ\P߳u {Q~#2:l_`f@ie?.@Mi/<Hqfi@1/(#4Ld1u)}C巓;9#B(U#;%.F_3€x:r<4a tK@T|7?!MJm{tЂu3>=5Lգ^FL.Ղ(43ı/ׯl>I@4&W/\Ue$w2_dH nu' ϶d_9ziE<`ZYiuEyKtTlZǴKS%|oD毡Kwb͎PXGW:tuA5)]Jxh/U -pl )OȮ <-CmcwdYGOF'ҽ7!mD.(/U:rU\HlÁbT57A'52 IHQGz^Q+ɽ,\`Wt4ym{JMX57nKEE)o0O¹szUȏqB0bq|<Jlb l q L,Iv?@EP#fE;D3)N_X}/vՁ.h~q>PvH~昧.8;_[KC)dꖊ{1.[̠$!2#sV7zoH,Τ()P((d iiE&L'[ !x, ];M)Cy#ֽIh#헅S94(Ƣ!7]n0=do72Uhar*oc3vioNN!IrpR_\>*+oRa)EGe|Vj!“Ŝx p:j2|Bq0}r " ؄ V!RH(솩IM}Y0_:1Cʍn.edtFg@Lf_:J)]Ȳ.#yhgӑx"Z{ nOfIR\!&[(f-X&oUt7l TZ ZiX_^m~>Ќ9fw{XK;ڊ<֋Њ Xqly{!Hl{5kW `#-˖V$0Q"\τ&>.P?byEfp)JX? rE+/<)(4"kn++)> dxG>&H 5{Xmh܅F/ pV<~#)$F㎦'sIcPe"!ķ>`M\G _q)Rfu`,L6o:r&&+GE XBjXA[z^<4S˗N2qA$p5#JFiyF!CROjح|j_]:.Xmeڢ>u/,c#^C K:qK'+B嶯&ФdP:ֳqs 1!@$Wan)7ke #1 y1"$+aB捽e7^ĔjKċ QCv}bJw\EAĪ' 4)_!O^GHEzb$Ief藁c4Mj?Lw=,BT b'G04SF{C"\%dWeԜܦ6 ߖ}i|"pd`=Raze^x+`z'×;*&H"=Vgh " 940`\6qYo@=lTl[) Hݨxh[5ScRS [ᯌ>fHEӦii BgEdY +d{4ɱ {;->oQrsKjk'E`]M1(('i+8Oychk4XO kOh̙~\gXj΄/uC n߂>: ^HUrAljB4JzWj@vGdv3s$ 0C|';J2QhE)/Z[v0]2DW̚=̜26Q1|;86"d)r/{ŭJs8tx]DVigCLt%n5^f+dQ4U S"~|PR8Ϻ'7߆8- ikof_h&sW6 RKߡ0Aq~c Q/`1opH&xw¯[Ե@[ʇBk'(rMy5` B @Mg_kTX(rŬRsIMuQѭeEzޞ:_!ax(E!OM%[R!`+㍗X\'lN,jI6k 8\ЯL; 6S«Ttz;We>:vіQ#Ƥ%t6²|:ӄZz7Wԍ04 IJI}c#ΈfK1풴jңP f(( \Jf2M8c5>|y``Lxdq uv:@${t0B^ e5E.d8667DKmek1~w=TBZ!aqjd[Jߜgu~E!sD o~V #*ZRqd4:aL0#rı/E^\a'X,ߪ뱰(w;NSgg>482HK {k! lޏQl8ޡ`'VtkA A`1Cׅ}bOEǧ1 хJ9Z&d0m- |Q!F E&'.~M._*uIۭH dڗkQ8$?IxG+ (~;*d(ER;+E0=y58iHϙշKٸss7;%| 7"moNMtϥƛ4fq]5puN_)+z%&z U5^%FI'Z ^`x)@#x?hC5|oREs`z:}p1i#%kD5LcQKog_((nOHTIe p{=u~UBt*/֪;fbX!(0:Q,mCP z}]A,RAv4 ʬ"Q>jM$R_ZYoRu̺ gd#@2Nӯ7=(0}Oa>K/|< {/صʡEײ1{st`Fr&yna=9pAF%ϱph@;1:^Ra6Hz`m//r沊/ )^Sk-κ3r@D&ʼn^߳HRf UT%T&Dn |C涪co8Gh'Ş3r Rf Wl /$6ݶMSS.Xj<+}4M9+&mo0ǤxT-=y| `co ڪ)mR>XF$Iws8exf%,=S&Jጪ^L_xQr{ے$(̑ѶK=*vOv@@3c aĿ!,tɈ?78A40Vle%@\rI{xK5>,Qc嬜z,?UZr{݆29l TR(ꖭA]nڍdJPK\Jƞu7A%OXI :^ˤ]؇YtLGQ FN/k? uGK[?>Ȗ7;pz'_֨^YL(@Vܭ_.uWvF=3Je=\H)oLvH˚~_F򐑡Z#A@RISnZ:}Bl`e;ֺ> SR>ǐxTP& ~eE-.X(x{c|$ @)r P[xѻ*q)H~ ͟=APiS샍u!WTܚԈHLΈXYMssS{OC..1PsÇ!^/>6Lٵ S;G{ꋨ$FrRd8Y g,iHz!#H\[_aq~HoQv:WǭlHW/q.ލF!77*ު)逕Bt} $pD۝&n,ãV6$uT¬}n<֥|x,e˹rR’xfk#PXX"U+\TQFrJn#Z t e,>.%.m! $rߣOcX\f@qK}4"SIfѰr(CŻzpjưf /[p}Pt_n핀lzQD SܫY?6}ML_k6_Ac(H] c5 n$8H- ~ge# rJ=a!_Ą1q5c_):IЂ{XDeDa~Pfs?e&|#WJVH^ZÉtb7l)QY[s5ikALGQD K=J{ڷe2Ls7IzqY(>)Cc5xj/rj«~F5~ʌй]S!L-?uAAˀ--jJEe&,2F4-^/A 'ʛ[)biq,ͺW7- y1h\s8b\tE:xG @$8q :cVJsG a0n?v="RGALwޝ@]tPk.9y|lk;սP4њ;9}+S69L̤lMjxMPmvr⡙@M甠 hCL$4OD[9zM)cEy9o0كO絎ЖuH>d8\mc $3ԈC|Flw , )v*YjS\L},&*/_Nak&VM/5sUxf Ld^8%k:sGk!Ho$cGc9\E }r h ]T@=J(%0"R NͰYjF+@O|E矿һy^y_U Xj&*+k&+Պ8ߤ ſ*l/dz5ͳXBqZ`y߇ƊX[bT4 t=I?Em-@HoG0xk7dUmfÄHoLo5MC%Ot#UP7[:ȥsBr/ y@u. ݄״'8y=9Oq< Yՠ޴?>-\pBwb(~U 'hq=J[|A2s4%?/IOkOxLq@;*$Ċ"!% 4-#M+9t'uleP;q9b4Gмg#3"[>BRu3]Ǭăx]CB" 7P> ޗHaaWjFҮ9CFKrK 5G@>ܞf$ 3%EQ_n 9"]"xܪk׶>r{ԋ]B!)=bXdUY} B 2T'1|V+,t'_SFFx^gw{ZgOCْwhyz=lHFzp%ÔMF }8$K RdxL3&h[2˜MRh#29,Ph:3(Pau5!a-9F ̃CN6d5/u;= K\?OQMԸh-#89Fj< SJ|wxeR*2;u*\NW4: YF"/5$WW ũǸBe:;jJ?2.2Ϗ.#@U̥Ny[%XOo{2 +`43MMeu7;M{0RƜ Wu%m#5NZڬe!I,Jc!#̐]ƀ'lRk W"&cE,lM?m*7UAsA8GZ/TL3OuCWV^&9Ʈx=)OɢhN-PjQ.# ľ`$#CEr.),bNx-{ S[,Zwx uƂ L}qVy'9UK#rUGbYf +w1^Բ]\BDnhMRRhDBaݗ_:W-5wLrڷX СbP 5qĔxƄ]`!@aT Yf_}˴L_ƨ>/poY:tEt[ZD $ݯd};>wQz. ۅlѯvPf2P>7Ӎv -tjS%PH.4mt㶐{7Y~@a]d> jn%EL!Ҙֵ3+!u33FQc 7'QANd|\9$Uoy$CM#JJ3;#|B" l<+ 5VGfuUQf+%Ma|1gӯ+-;8}Jysɴb[kj z@M"yj;]y'S9Mztg~ڏ?>[ZІ:[߲@| 0U|}r3G|Ksu"`aCOP^rYnm/e8# yDo+04,hd'u.Z0*XcB٪5ʝ@pݡ2Α32;_6TGgR'%+&Kw;qBhp <]$1N 58C%9R֮.Ҥ>ܓ3!hz{J7m{g Y?vT$+͐6C6%@@6+'*'帢xb` =0`5Gl*^jYꞠ}jb6}  4#sr+^ScٿK'75^S*"n'5$ōzi5nN闬n.3+MlY:8QnLѳuTVl@yp#FzÝ*R lݔOJIK9SRd!xjK!:?/Եtc00D'b6B`$ ?$#ױG,s>'% r52S%2"4)<g'y0Lrj{dzC'>HnF ?Z9gb4l3SzhZpX1ZXqǪ/*Fzvْ^i'I6\Bʌ係>EϨhQɃ; %Qlx0Dus}snf"(>E5q9^yw"&:U`jߧCYwЕЩR-$vn\HCr%0N:̻?AAOеJ~pY(Z"elRv ]6ͻʀ6۹ ؛}}vcbڀo c 3Fyv R""|aC}#5G`ž]jUeՋu: <ӹTK,POfZ{ml(^U3ܣQd-)7L~mꕵ WNiЃ%х M'ʰEqL*AgGUKւ! 鮧B=0KWҊzse6Mڽ\+`6T~ `Ct{Xϫ1VYr Rů:{PC g;E$ A嵁g P7GԃDd_;d,:Gp)>>MΜoG Ӷnhm [.s˕3rC2uzV:"SI"υi7Cl< —upBO7VٽYa<5jioδ;5.uq6 Xn(S ecrY4/͔=Qq/^p>PY"0?^VY%\ncFо(;<|]Ĥ[xѰ0ia7DpFM;Z ƶPױQV۳WKz"i%!,6*B(1ɢUer>q7hI4{hr%*aYdl'qE()GN[NVj虉%SA?I IXo?s뛫O13 S\]m5s7TTh&ѬY\* Ld:tR^!ui4W=:[jtQֆ-Ky5at ʏMG Y }>U}llt9g:hwVKb9B߯nk+(T5z穔'A`{xS r{C@@,cAagZ\ .Ęp(ii!ȭSVU x0sR GD$؁Gԥ!ij- w{ymw 1 ;7TP-ü=pjDT=L B| LX` v%jA[q乡<kDEޘ\?UϠRu#ϭNs J%'6?zR' NO $d=׆IК5laU >q%eHO]]&tPC z#a$6WՅ'l8= U( bO&˭.K03U9FǒN}i_l{V1|Γo ~8NG߿cl\fe p@GCJB04tv} |($Mƌdn nhDZXHCdk-GPp\(@z͐fE9M}/~y"M郻CdO I>|QvU;cc ] EtIzP[<6,xԋn1̓WѬuoDۓt*ЊYoc~Y9_x ﯥ@E;Sc熑QR[HEx6m5 !e\oCa WY׹ojQ%Fg(b2a1d xCb[KGޔj;\#?tœ3reGL2T?c6v1^PbN#`9nD< yF{(Aۃ#qk T߮m%+*;*HaD }O&Ќih ƹ38bgK/w Y?|ˢv}vJLmBS i ;I)rx)h1,.v$ٮld DePY4Iy d(lUQ+ -n7pMjQy%>pBbvqNOc W;6$kXyH XuBE풧=s+mxX'SȈ"~N hd@z\#gf τK!-\FMA~B#=!E 3Vw gm9y>(ǩc+F5 JDs16Bxo\%xg2 $ʸQM+Q9lΊLi0>fJ~^WQK=ɚ9s\F͂>a;?jAM}z K=lK"ʕp <_>1~93!O 7?ҵ3Asgйt8RҜu ,3\x=C]ԷV&XlRqZ;ǩz<d *!"Z0 | wꔀ:~\u(ߎKFJzY,F;kHGQTiY~8i5p + . yoI+ǂaY'K 3?rMʢI/n,CSP P{wTK_c+!l/"Ӑŏ<F] >稆=4:1XC_+»|Uƴ#ΟC~/ÐpAQó$ vt\&-7ri{| hBCa2 .bmb{;ls=Y$KDpZ}M1yū␊JַQW *O39g:;;lfoWd:sE! Qw5^A[Xp2yޱNӷo2ZN1CZOkw",\lr ^.y|Di6C:8`U0É \X ݮ(=QTzr^UrHeY:)EO7)@z"vJ m^kgjE93l!GnI0"u MTBڑ9d!!hJTRAh$QKY5/a'[keQG1~r~a}FO->fVbGdݩ 6E ZfqYh]$3xWw$U-HûR3֋U}S$7ث;6#   iʥh5 s; e%*dAOv)GO{.H> p_4Z–)2VQxXf^WS-4Џ*cUXlgFl\(vQh!bdw##??B&7JI<^ sAƱ)`2KT(t7] 1&8Iֶ/"F؎ 0" .n:Wi1102L¿ӪNF}A{2Ug6ħUH!55"X4t:Z~XfYvYq&vu1~dd1o-s9.ǽB.|ӻ5S@Π=ml agmJ~^K/'鷊Qlێu'7]. <0cΊ##9O+4{f=u _E/gűi'l9%fS~j"dB!hR&>h!) zw&xîZfy,8@9"C 2҇Ex6Fq`ho.#58Y<.G+=۷pX(fCHEAV1p= X?1bP0.-OēYt\a}q[=_X|yw6o&CzUV[ņ-TS)y n:u V:Q`;2lKi{5hHV5 3y".dU8S0u.M0+$-Dxt,|9~#&S zF}G$冾:ե7bԽCy6Kj r N yE?S0*J[ }byk>55HDSZ(1"z5 Dyp?}"=DiCd#Rqd:\KD#oz7!o3xܘ鷘fa "mb?T|9ʮdpyє_$b"[vN~$1h[M "#A ް`q;Hʜgr,/Bs8{62H/5_ ԈoGfY3DeOk~,פq8+~=>?޵(WŗDUt@d׭>6l,!*ZZ 'ӷ7yW-e%8bb{L \R>ࡃf=%\t$, 1dޙdE}|ri%eLgT1nZ/7te)ieQE74鶧Y訸HSXɧ`˚[/bZ{@SOٮ d`@Ee;vLgn}om8H4;d3} ʱn/^o Mh4>FA.+@s6HIBW$܋w.eæƛ&S'H~ﲡR*UQ2oDQ鞍nymtwgWؽ(:f ^7;Kdg^Q0*⤛f'Fa A'Km=giVƉ`=; ~RmP$Tǔ!Ml~ܲ{e-ۉ@),Wѓ> VqJ&M؉M$~H;&5n8 RvaSX~)/zM/=;3}^ S 0ۅXͣwZo I};+6⺚e!L-؅Z=ͩ' "bdهOe-(<)#HrKD[4 Sk.e53Md=P/ eN>+p^\P8*l$+]C #5R2gUS6 ǭI\K/b—hWS0ٹfGhY/iW`b4SxrۚZ8t8^i(!j{ȼ,|D׏5R[ {B]""nZK|B۸|6P5@9}O >ڹizzЙ5M ˓EX9e5Go }Ж}{_ 4w9D?hh{Mۜ@@,1\WS"@<6AS aK5UZۏp=VрSd7DD ҌvˊkE!HdPMO\>ǿVR.1D?*i"^,Df8@xmE-"<^*Kսo n/]Ƙt6>;7 w_K+䛉B$.mxFbx}j"ѕk67$.ՀU#&nYjȱERڑN?S z%䏴Q%]C`1$( i$́ح.{"|l0.+8]KOD!8v`~ܮܵ!BPzeL-O+?yQ'nhV|lXnM([lU|?rSw"It5jƉƳc P&̉}$1p̴2zRf0^O{9W.zDGh 4IKz_5#iW #$䵠ז(<@+ !fl4(*8d[JKWIRuК7 9,9UX@zFaG:w%XX@ Y>G[X@Eiwh\k"7EoAO N=ޕkUI}?O!}BR̎XZ.}=-B!^_Se)$6 #(鱈@vڛ)iu+h@X-Pӑ]W/*7*?u?\ O}!'FSõfi[|*r%V",jUE9)NlNhhũ~s#LnY?yx9KWWO-?̾ܔkbnd@BqQ%$f$ZIz5U(b(gǎ ҦbṀ{J\gqU3cu%hbɉJ5x"' Xލ{ry =A.q3+;weMMíp$ {wU'C:d50H]=T%3o`:F-v gM!k٘*zP oĐ{wA_hk/v6m=ո_\TZ&s'8(W~0[+EY)m+ͣd{S7~ &ٌ8*!.6.% kzD4Lk*^H\;Bq8A+ߵVluhEl=*V((ig (ta\E D!ۛk< ݄cm1t .ѳ8~Я:"V.[5E7y?l1ͳ]KքTEfon :nw9z܄g/5e&[YG_#jc"#p !d2+3 Ƴ u5!6:Iyu.Fi/:t4+dG"K%@I%W>JM iwUt^Ֆd3)_>?o_γp{N|EW' #Eȃnmukf/*1oNpr.@7BS:zV֬B YГ;IV: <4kV& _[' Tl67u.SRĴ݄xgPP+@BRQp-XW'C6cNUq:L=R6s\ !1h۫?>k9kXP/D%B?Pj*biR\nB?ʻ th6KGw `PH/|R(M^6pڏu[)B`ՠzrj؇]eOT{Y0_E{G N`2ɐfM}h; hA[?*<7*;E}dԦtJ*J$괣a9Up:綻EX~*+~iO;fa:i1>nd|D{yϪDIq&&4 U.Fs :*`-O*E""W-) gZblP~x۶ 5?muFӺxk)wݕ6ҥ~j%EkU{484&rFN}-}d-  Gpf# KajL%2r'G9N.\>ۯ3{DaEWc">8u^ Dmq⧫HV_)ŕ\`/ͅ YpLrCC$M$&Lj$G\0sσPbFz첛[Fzer, >N"zSUav߰ZU+Wǃ$=#ޒ-QV}Bn㓖Q<[8%hb|]ELjwk5HeX~xѯ!hGTD!mx"{ ]^"w1S )_k,*KVJĬ9I敍^ε >44&bzb*^Cm4ݬ2WP]i4XHqx+o*_5EOZn-Bw4LhtJES $bܞX }3u('vdt.I˴RPB ө,3Zi->?$Ŀᦜmk, _@ 66 =uP1<tD(C1`8r)fM{\+?< ׍f"/Z-6:5~> by݈g34@R#G ӣ=׀^ VRAƍ6hY.\OK~Q!(Bğc~u _fOQCg&^n=F>)f N{OEnPծ^4cDJ9 ٛt/R1#Vs/&sq\'iz59fWkAت IAܮ/0 )i"rGEʋ8Fh6b  R:&7]rb|lI;XKjԩPfAj*;iK)NDZE[)TpQ׿JrD㈁(4&[V!듄kIyn̥Ϸ~`c݊&MG_Oa[&^Oz߄.y+YbG f;}^ouI֫6'* M6Kx[d鈚V0bGX_(R $V]2`U2 H;hJx{Wrޯ'A][[-=㩤bt#Qj >ώCRx>1o+?"3&>Dק5׳ bz a'%ffi z2O@}⍫ln.[@?0PF]uE8J~Ėvy@?LVP4;&'$G/(QЫSZTݳ! a3L=*6 0# =mAQf&aAY$sJ~ǀ78ӛ7bG*r%[rk[CtSK.}]NR0 M umkxf!^uw?[(\a P|HrʩYs#H6ߕ7gW'FCuX_>`4|?gܤ epIlXoRq1H&ݶ8QR.Gnb@h ZLA4//&qC7Ed.=4c$2w-l=|a+:r Χ{dؖtOr;9U;wugԊe[~(N[)`}}泥O:>sb'u  "N^zQAev˳~TLhA&dr񛐶=w#^>QL>XUNpjV:z+sO *"-lf|7AՄy#F L3>OC/5ƫJg>zzE!]4Kq}0ja""2L}KF)/)Qk,Ep荼1a/S&#;ZTX#8ӋgvwC`@h5ٵǞꃒ᩵@l%y&7EGMF4ǝ1ZZG!oצ.t \L,`DA;"R #lU^Q`dފAN(k +ʐ ڬESpGs]WT_.A>J c]KE׊Ƶx_۸//.^5u H2 lDTlM@::D]W>p:i06 QxguՅݶk}xY)}{Gy =`~Ha8J?[rB:Umkв:g /JB#!|NS' bņjjNсȊ"/X{菮qphtѺTb@xӦ퐟pg~s "Tpvpw!(J}+6`!ߕѪހµ"F\:vÍ'p58K{jx)SXrl22EyxwYRj*cVIl ZZ>8<\h_XQ4X&sxn`&kqwu2;;p4B|79zS򪣖 *iB3Aa`K.)#A1;}*G]_pOP'2<\ 8ᄒJi Jq϶\=)1JP>Χ{cwYq=z6C6̟ aؔ )`}uGOSfx1FevbO2U05dCZT'_Ez,mn&}s!w"%7l4Q3:ᕰ-k'Ú%g .q->.e?3D2zC)0 dSun&ltEP]|ۺc%Elwd߁+,<`N%ZS?$to5gZ8$Y e_Qe w C'R|jf.zxƀ1ŦšWf1-%%4ەЧ,eDS`+/څh<6KޔN@.9{;os?I.id՚1^u:r]q6f>am oˆc7ȅпfxuU};]hgA% z<:hC$}(Lu#qX Jk> |m ")%,ix׉C>.ЉP0W7Î>6R"86T\7LqPgQauЭ,i.+ u"OVƁ<S UOǻPIj N뀾,&ގլ{dq@?ȉĵ0"xG,i m%|^Z;DNARKD$Y}-Xzm߶~6NnWIDIڰ2%T'(?^l[x5AO7fꈱ0{lQ<٣ |OM/c"n`=9-X ^i(ΤhټçF⥝̹]KeaU#V9mF 2ߪD  K&|Ve ~LvC sm[9~Ve9xxr݇ #uTb@ Z@ly2% ez Ѕup|eF+ k5nOz:lbpl=o/ƕ \?!839dRR~To\e;z&'g4OPe'a)эaqV X4'*tl]Uk (CK6N£n޼jX_Z"W}r2uMZ!}7ƏUEfsA@?aMύI*$@*@l(Bf|LjgoiMnISry1t, kW@!hЖvt h;j5|(L5u[wQ~J :Q 4d(_ш_J 'V$E6kknfqdU:FZsLEQĘ=ol}"n#SR Q1ա(cKo5pk[!4 @p`RH` 0c$dײ;lji)V&j{Ӯy?3ؾJm(*YC >0VHsx1=Pprزj@LKRJ;g'gVXkgcvQxU}w :nX(2_#ZNJƣv8vJEg!u)P S%&8/(TS;K=~d9ߏNL;ZtwY),4JA.EX r8a Qh);$?*򡾖]*QRBFSMnK[3`"&bmV: y[,ZԦ%W[ oqCf"nf_mćGz!,vqH]qBQbD{$umj!φM}SN G c&(1ph53 SCd֥UEO&``OE/ibQyг>1D$1J+ ?N`PNa';?z‘H3:MVx_զ^0*X.{0G">O&?9`?SW&2隊ԱoݓJٞ.OOیdqGP6шGXR 7.6+ lYgbjE,y;Ɵ/˥SȴdtgE=I'ux ~)ͦ]'^P0i *l:E-7HvK,=}10%8P= CsG'[aV.F3*4<@m"ENVBDZqVu\ppiqU* 68S 821`N;U)*lws_%LœmHVC.X ,;DFk9}Z6K{R4NvbE >&yh4b~UH}hZZh 3#h;IhZ쫚3pX Z`zMx=!WoGBj~@mzpAv4xki9_Tn1#{#d;ex~X<:CEZ*mQ X!W;JN;EZԵ&ߟUSUV؛&paBVAˆ{ _8]a1(S]K] i#~ښeIvֿۨ#ۓw3A:p.L-XELCiun 2=Px}Xi]U'B%q=$ +?}' +1 U={{& ;#Xbm)n+R$]?G s@^X5$DZUZZ` ^d/'ːuU1_f&.)ɶߩ|f櫊xUwU"v9ltp®bg=,͚?RSUkɗ;nLrT6  T^o[Ğ&G֣,~2``!9hZy g/HnǦ'.>zѓ:AI+WZV{tRLت~Z^4)w5{V5!m֩Z鳼ɲ%kT]Mjcf9ezul}q9½M,|·=4-A-x>L|k%ewiZSi!|t}Dj?9o#1-YfQg&6^pl>rZJ-UMOv"W]+lk4 +"a >f-KbxƈГ>$:pc_e.<]3=) m_.#wTQ 3ߌ..x\L(w3M) E+:_(C'8HvdvdY!blm-cnXUb=g<=ijfۂcoVUZo`p/"O$DP2(:;\ 5d},/ ~peei K?Mڤ<[=9Q|^sDi®2a҂:ԾdXaH'ZH&tzo޶K I\ VYgwW5Hsm|ҏ XK~%lITNuiGt|5nX[ڝ%UXiê(ξl8]Oq'K:7pD'VEj|y#̴R:6<#3.7e;`iվ"Ut>q5'JrRl {DSA8FLsebh7W2&\jc h]Bz4ƔyaAj-8aBs\B O;*ۢ#:+5I:&mL {B/ @Ӄh\wKޓJKڳe!յwctwQO男D\㱦ڀq^&R#yji|@9(6nu7͘pLe1n߿%BEZ؞^Udy9$00)gHaR(˒ư0D `j6⽗r1K"Xc W7sj\r1W0"vŃ(o8t֍4=>rͫAiuqYs;ɅG1ήLs+CO%jtPN]W=O4ɉtS"ES~_]PI ; jJ Abt0McHh9N1i+BN)yV#|IK1k?p0ȸܕ [ L3:˨R(ܤxF)a$3`]lJFA%3, Y_X]Q{.[RDǐeGۇZ/YŎMO6+`9M˴ILlܱ!DpNqo/&՟&ZJVdU@!5N\ >1[69uqHfg%pX]kNf--{G冃{v /E(v hw`cL 2>0ݬRw$J3{6y홣pw#%58)Dwo ܧx `|)Fn;EY<F|TUO>]&1OlS{[郮)98p@.:hZ8\- %JӂU+y}gNHol'QUv~!CqrC"U]A<\y&/T. -訰e;$rq_?yof9`.#6Oulgq*K\afTE &.ռJHT?zl[_tCb2 M="OzS پ&M] 16?O˝!X ɏ&BW)~F 8釖?M q̒3JO"5z`u^sV0:paq%}aI ݺDcn "d5*RY{*m.pDZVwOBZ$LhteڒF RLTtҙxwֆݘ=Y_#$Ȁq ~%M}2fK0k^#O95u FZa)Hz@<\2b{Ecmp ՍU_ڻ~1m g?O 6Nf~!>~tBh*1Q֒"d|#%xCmV~ibZ%3Nk:9$nM;(E{c=;hGi셶g<ɼNY5ќ)v; `D9t;`& ǾLHᦠ^;Gۏ4#gMeT,G;0s%ɔToOLC剹'/'včQoУFCYbfIҔI~N.qIXÛZ"M pv>%OWY`Юtzb6+-Z p"za2pY( {Eu֧s;_KBE`OGw Ws}?x*11S>}g}E[y.pD1v "Q~F^ 0'.>*-IQ3 0#th^Iun6 O"\l=|=rdۗ3bhn*NS.DQ5(^_qVt6{A/q#ɈW6Ş j \~=+VV[b`O') /P3Cv6O"K;bɴFU\+$NVLqbi'P$+* {p̈́q4~5Fjc٫ #b?L\a ъ isf`WE ߶r6ntm;kϕrL$cژ!8KniuQvuJ%og O)Ե|(_'Y^SK`+2@ct`Z4Ym;gx9|aE4D*'2SdW{⤧3Lt(_SZKW:0*1Y<L(v@ =m나Wj2NObƧ^BC*}<#g*8^7r{I2QMd.Y `7dwB97w8&x meJ~uo@ h)\< E3g\Ia+j-YgR}Q\#|K`ud*gm6&͗{yc]\ZNe6'%B k>K"{#JǠ-2vb Z*1jnNlukm4%9`AC |bX jyUןrMG:ek1rLMv=kB lV/ x ԡPߐOo|mjQ.W-:&ePI(-xT)C|F_br̲DUGeS5 児X"dÞMyràb%\3f(v)rBPLjgt`PEsƨR%Zl8@-σJ+hI2 DA(Qs/9e^5\-q!Q CeV/K ,҆C^Zʇ׵ykckI6 YDCG42kJ၂Gh"C3iYMwYG9[bŶI-A]K L@ZϾqkv.6[l%O@fA7fߘFl=lkP|b-5NʺҲѨ& ܫc וC%J۶n72ɿ#> NFa喑PEͼ4JP=>05 {oE77 Ca6%;u.cnkqg8 sύxYw|27ӍN zNdh!^ItWXqٹ)C$p=n)M#j#zR9ZRZJ2XVÍ}f.%!Bh;(er00Vs bc-_$)hBlk{C S8$*DЦ TH~WQ g|ު+*겓ʳc; RuD֍n@tڌȉ fӷ $K Vwk]/%^lq1S9L!)Ϙ|t!5߸$ƒ3Pe4f. :q!I+0\؟+)SS!|$V [{4-NdO*Iɤ|* S袸B>tGߗX=S /,cL3^K6'(!a.&8*Ju´x~S^ "ŢPdc\\NMy7Nh;3z0WȬQ믉&XӧpB2yEKĨ%=׾A}ɥTZMj "'Q6YfʢN (r 'Y'a'82e&)sy0d4i}lU[B~ 0Z繾T0,mSgA#Q ֙[Hm Ǝ@`U"q{1RSUըcD[)ݑq!N'B`s,tArƌC`2[z[+%^K58@zXk5D]$„xN慦f52wGoH4p|LeyDXzua>/R 7'ʬ#4a0aE@IP@L\Kh3[v,Řo\տ@mx9>BrL1ZE[E,L7hIW0e^]PzVC ^yDa'%0EbS(G4w,D\#oX f(%d 5s^?p##g.|YR +J) jY%OjLc,n* Pbñ^ Y IcoUۨ2=IμD٦BLgIk3f.߀(N ZXZf;?Q?>P^";+&^xqd?f15.?2;) w e~t0b}04M#8|ۢ~3+To&WNA4a6\EiD6ˤyn-/ 335K=$T^X}!#:,f0VtLy5gҝp۫]<ݰ^M~r2) E- }#-/,dGȨ7}G$JPHtDyiC<\4KMKezYRȄIWѧQ"TSz(^ / C2dˀ 62BGȨ|gO)LYkq-nEis:| x T,#ʹ֩&s}rCTvp8,IFtRSpꒁ&OLUS{SHnAI/0d+abJ2"НǕG!~;e./}Xt_6_vָ F8S!GVEj%B׉zsZm {-@08 HQinXl*R^:0!)%T-e~sc&{( x5)vǮI4dW&e^pX y b5 aot+^tTyGceG6 ?F%( ydV{#ǍyC~>I]g:jܥtWh}9A_Mn}\pj%,b؅sfs}ʀD~ 2A4aݕwi;wkH*v Ƥ5b`ǽúE5 Ի$ECβ Q*g$]6em 394-0'CĬ~rAxpZT3c.|ԙ"v 55+)#Y.O.G)q W~; =bcCBY֝?U)OE4K-Vw`?WݤՃBJs\KaUlQ2:0n۝d##Ǔ@=Bi63sWJ (翾owaY|1Ñل$]-< NR>̚F>+ʷl"*7.U @ĐBdn9̧9VESp'ӛ7g'JSfp}+o;x!s.֐qGs]w1+T|ZX{Njw"l TGpŽm*4(`'$r9xX9.Nxvk^9: }eƒ[#ߵRqWEX Wm*}`~ع>R8ll?0 "̓Cx1uPS@IQQ8\ؽi4qYg1q0@?^~7<"m.{q1Z*ZMg`P*W([j#]I5Ô 6 U8i>\Z*"yW @2BEɒ:ݢ9DjN[˰q Qoh7=X.ȥNVu)!v>1=F5laF©ZێB0[N,2)uIܰ$h>o]!ܴbxq%p>l7q\pz00iV,Byj/s=RiC$d+pirgoI( MV՘SO.>vF^΋WM]wފ0.nC,6z6hЇ _I^qKX2b_臤Bm$yIx/k[])*b(EةkT{ O6㭿Vո{~Cc[}o#_}2 Vjoij@VUyw!\i TG4"^3CAd" 3<@%Q쨫]mz0YX;72-Ƀ ?-?Q;x6-I9b^';Յ5F-6A,)꼹Ԣ+#d~ Elfy7'|by#p%yeŋqG"~י639u!OOuI.铧 g>vR/*Պ$=_; ]DpI©3sF|%!"4 4MG{ɻFuQW_ Q:7O-RPL|u9~Ru`k|(N#v$jZO:Ԟ !E~ճEHM 7S=t0_[L&C%LuG!/6Hp+ֱN|gBp _O[OMI{p^21fXt{]|,#$ϓs ^#@Ϥf4C Jۊf֘O;#dg~/i%qU)橬 '}}>f#JATJȉP4%?'s*El'ѕ`' 9ݪ^b݋ =1V/$i7 ",QN6oMmi#mB볎 /qOl%,Z^; p, m tu1Rd1 qWUez 8$ p4d߭I6RSp,77IHcQ޲_KmuŀBAeHq2)2GXZΏ]yGag]`G%h|o+f8Bn]cS~T(JPDxfTf';/ b] e%Q\BKkQ7v3e_Zz9#ĩP]bLR2!2qN<+8y"LZD8OuHzy[qNρq wXsPGiм>ڞ&n 2:~$"4+jԌch*=A$=>0:= sΥ>1[PIfę^9z*?N͔3§e6B!sq J 칡}>ei^vpHM'ɫ$)sVe0%/,pDI5 W7Ӄp6HB:w߉oK0ie.͈#%LOwy@>QXQ 1]#:~Ø{i|lX_#} Q2DX!2bh,ŜH]er`a},@=V@Po s% *DU8W,!~f:ncB_{"'WQa&ڤr** (Z^͛b7Uy: i[{qKz+^DE >*mE2`Kccm3)SwqLR}v&Wxk|y i]I|pLfB#X-Xuơa2Qvh<|u)z?rX܀@Ba ڍu<5ZzdTŬJ3HFG+[&[; &bp,Iul*-7}# |/+ak7c^7!uTpK[u3tلexAa)]ˌn^-7u!ߩNѰRT fpRid%5us_`mP-eÇIH+̶/S͇G 2K\n=[+D]aS"9?(|J,邴o>Wt7he/N\>`܂nzd>Ju'Vq7,X(X,vVRMz+k-yH x(/ݼ)ⱻkÐ ]hw|GvWZ;?jq֙1KE,̦0ўj{BNnDBdFKV8S\HXa]yVOf{ 6n6;G`|k"?Z[*nwv O^01lݛ΃Dǂ,+JӶ>l_O+|:ytAr]ןjzwq7&jUH|7 WJz.~ˌ؟ K`+k*UwPYF $%!"vHK#} ER>oIÝ6P-F*+5>|/at~u =,y<ݨIՕ(<^ŇO4G*Ҋ<(|ꮎ_Rg~Ǖ%l5rH(a72Lv0o#'Q2V[$bcEA'M9#Г!cCY_>pNPWP7׵I}qjo! ݿIq8T>cB)m. 鶔]4q/HCVˈ:h."5 H@ ?rSF tbc|Djfi<䩧6eVJMW理HA4ۆ$ _Jz=2[> K4-@y쭞'0Aꞥ|1׏/*흙?4 4Frw#+Wrap>Y-9;5|8%u ?,8")%9& !ؔm 1^k~[ɣ&e&/mGn(a!&j۫J Z|9dK8aɾ3=:in^@C_,0jIK2:O?dk{N f&wMz/O~ &KO#a݃BoXF0Wj_VX2fx v-Np‰X_=x [Q3 ^ktTPme[r"a.>VӎYծ5Jt[Ʉ',YBh2o QDB4_ԙ 5K0;&cCYWS7L$-ob!`?}s*"ڔ%\WD5|؛8]-[TKZEs0܎9Q}kB2sr` S*QR:3{[l!b.Yq]!ȗ)^k%`zͦ&` _IREЯ]]7R0or7](gOgeZՇn@!D4=f2A~,6Q[+f %khˮT%`qJIN[#ѕZc<$nb_3a6LpQ.2+J`-lAC3yp:gtC9niu#0_߹rfA2ӉC&IG/Ļ><;-EO (Dy4*pC6B|Vf93^JV/?x~Hv7 d gI#P3u%oH\f^v/wL۱oձWW/]|̀5SʆݞCj_=:_9YMϾa¥V$Oд5N#Oo"͑:$[)qvmR ó(Ędݿ 7F fc5~$N93^P t2u߼ſQH=* %yqԖ1Bǹ ~l^9ɍ&v䬑vWNt,KO 91c\-e Hq;;w<8·r{/}]qlRF/ Z] ud|$}.eT@=R180ȳYxG>M`D2&#>)"XbB5(&sw47+ຽ?BZ0?U"7)TJҟxgpc7~YJpjH׼3o |uT%2cqɆ=s!3f^@CqQ#(BeH?10U]!@je;I:Or!bwfʡET\ #;@,wx tm;IQQkn˳>f&=LSI B41z:f@S$"B?زDȨ[:=w?#mH B.?-={ KKʥ B*YMɺ‘jffu}<'z*b 1my 5?VfϹ= gaU"m #r0'N8serz`!+ql W:JG gJ`qc֡hsftJҌk@zOVŕ{UQQR8^kΙR^z OȣN|,pj$Ҭ;X*z T]X9ǭh\e.uE*? `!^`ݤBOh3"ٛ 5JJsROӞd]S?}NEȬy-tBM?}I Y{Itu_'?HSy?Oe)JmmaLd1$L hHO2dߥWuDdql] ~ʹНf)L0IxHk(ISm}(ȷrlv͖,1YG=Vz:;5lBM̦P2$P:ER fPU"LC˝GJKյ. (JV3hT|lJOzH`+Z(jzfMn}:8Byž/T\\vB3HGE>EZr|"ZmelIJdm+(椴*=6VΒ ~\X\(usvphcg,aChHowy9UXGg:=Y`窾[(0~}k[bX"chg4m⸽圱%@8l#t_9 )-(q.;9pzsC]bhϠ" ʡ fRڑO`{=2Fu"?pΡNT^Lpr~AQդrhc@~%^=z;eű>?D"·y1i>?GR?(ܞ" kTo JsXï.}l`ᥞO0zB`F5JЋȬPFtEv`S9;FII W+fn?#F4C(JUGIc&<ژ[ y(F`amW9nmxo?ʋQ\؛b7;ݍb FUW}7)D)sMȽl D+atMSנ0ntOA:L$:#XL%Klbڀ.Qgu%zB: =LPפ?޸Xsjk{u_KZ2tgr}=?GeI.mK]b i8%V7Ax6Q]\nk$԰XΧoxG!Pf#* a<*eb>aꤋ7i9j+oIDO;ҳe5CVfwj(F^zJck8IIna< @^pMY0O̿<ӱ!ч}'~`X#э?qsܾu#߭&M3Jvf m4Bsw~aV"vj= +sEoi1SƩJ1}0xZ8C`E><(,MEmĻT[}rIJ# z"2+^@eo@hBÏZN_Lγ@4 ,uPї}:mP$ F0*v+qMWZÇ=5"|'8Xu>;2g@ P+w49rHv{KTFspKxzx&$ƯJG- 0IR!g@M)+ev_9qh 5U߾W UA9WzO 9A3^_5q0+n8/= ]U27 `cC.r'g p{-|y<#YӾ^A@[R;fnC2VЍ\i@+peeI3g{FĻRG!7& +r07v/ށ:Y\nʍxŭo<%鋎 lK/Oqu;븢ӽ;U[]l/ʼnT8$TH.6< Ji{ϻN_.KXOmF zp`0Z p+,La^T{8j'uY0!5Vcؠ/;:O>Kvs#hԴۄ+;NȫŖLb*j_{rziBq:~J F@E(wl#Vߐ|@2O N?}LyCh]jŀr0ܥXJ4oF^7s79ӯ}K˦FE%dLudC, gƲ\le%='v4/ttUMF7OS+b^XI&,S/!74RɈ;օpYΦnr"II4I/7dS]aIW5q ;r} ;[P{gJ@}c^,5LM>@S2YYAKϹ(Qtm?~@~F~?,Z]1KAX,$ V"m(=E\Db'Z }i9KhGb)5G v9d5NCJ3Si_1=~!1”NO32i`WH׹uoOƧ#2, Ν{d!Z m]P ǃ; }ݸw . JO? gKf`+0a %Fw9kH07\ZP^E3^}X%K&~wJ~[2yr,'bWT ːtY}" d:7 CE#&P fKQQˠ%KLh,5UF[%?dʛԣͺ9| 7Xvv5mTҺc3 1Nǃnom#7,vVNWtּяax*ݚV(`,Ҽ/Tg@oT1@\ E׺ƴ-·XSk<26( XO asſz$C\ GҴ05握zl=WE#o \!#lŭ`Aͭz3YO.?ɋ4OrMЕ[_fThR>,V "< 4(K %&!H _IP0B8RT(mv+ #[}S0˦ ེ(eWM9d wEOX~C0s!Feh#\yf3CȼE{ep"Vl@`m>^I4-ȋ~挖Oͨ|ƅ>-p@L֍g 2Z42;Z3ղ: ͊1kq?"nzW>6_[r~w< 7ut.,tF /'r?V E,S`oZdR͢H2tuXDg'dpm]iڇDZ*CKąx)KqƂE['eS$>hQwV(Q풗L "u;o qr6d,7$؇:$>jla(8wn؂e+k;p 6xo10%4 c(qbpIz4h{Q*|#"ؙcet?&Kz*{zIV>nILqk+ J.J+DZQz 'q&^@ɧwiKtNBz#LCj0&j=nUxZ>zU8~ٗ^4֡Z=l :?o3HIDx{:^X.9j{@St{u ".(́hK_޴;Xb&`>piĊ<a# HvP[+a, փN`L>78> 3 lc{׎Pq4s\L4b˱JXeܔ1u,ț!S%y=utg$[W5vo-AmpD"!#D` LN«C`i-#COp 0RQ1hadÿgB݆A^ػ6+zWQ"N&vHE򬕸\ @;TT\0J-A"u086ܴ0;{>7ʹ?1F֓AEV06H+CTaMvM]aHk ;-?#OS^$㫳PsX€eEA^bUcVIKΏTFd عvQOI{+J0¯@S|jj஬xݙ9Y 4J#AoTSe=2!l~gP)mڳAxl`lx#y+ooQA'Gp@WDTEKVG>=E m̋ϛUIF)/s+]@1.3(@l@l䈇$>pv4fDF -ro3{^Q<%WGPrqdݮoj&fzF2lYWC|]dZhz$`is'eD=tO˽lh)aqA> u3>D=>4!t`kPa:j|EΤ"|k-EJCVu sۣ\[&mNa4)6P=ӓ" N zEu ]Ui?wgJnķauޥD iAu^g%|5  ?ki))XZ[H2Uf!e͊0* yUĠm P8Z_g4qWNKY9^D MVH^~|&\bbZ ː>oG!rDDMs4y7V6 .n=} T@V4aiYG.9AK"($ k8<|*@_U= a&F֓ӴAfH}ƧG2Azp:Ee[SS8# M$ZOcIx9M3U,cUq_}:^0A{&-~fiʱ(7[n/ &Uz`3 nZ P?r-l=+B8h9L5q"ERnHV Xw9<̏ۤύw"fZEZ݂;MQq@ޜ>c+!gʅPVG Kt< ]B彥rc3gu޿QmG"loM @W'If<*zrZr\{|P[eOS ʎC 3֌^ڃ2Nnd@el m Ev064.Q՛7 N2rAވܩnbh6m,2u LҦDos+䮇đtȷA {B|kϵ ]8m<>k)H{ۆ=Od@y{[-O1<9O)㈯ȐWTjf;E:zÐx`Fsl,j#فpj+[ 'o52gB6:^ݨe򹞖vOxwTZ8js?Cbm(排fjA69='sc$#xi\P8RQ=̐fhKsWƙws;= xHp@ҍ .`{^hukPR&c$אӋ(-g\ȋ]u膽X˾3L#x iWwO ?p'joj{6EͶ-1dOeOF=5&gM+63=6Y4m8#Дr[5uE=eI-h`,T(PP燲J"1²_G%p :,s L15D"" %z욺ZIr}ڹڨ[Ƭ7n #42%Ee?.(M`/;(H5Bm] c_md7 D.n=4Ao-X>f^c(-];BTJhX `! 0wj$3O+;=ț#;hGd d=yx~9;HJE;]]{TguE/n?m62O0\oՅE&:3k$S6+ӚN;mĀMxMqbVdWZחB YUX%Yuױ.㹻j*hl3O(55揩MN="*!UvdK_|]B?/YCT=GB'aet# B@|)Ѱ<) g0YCR6xx >u+Ao8yƢHf%ō 42 =Vk>0/UM'{*X6[&%Xhr'T.bv0$-m%(Vf[G}~qD{:)fM&NYx[βARy}P蟃#w&F@|2;MHD׿, Ib+ /ǝ@o/o! 4q)T20&cr-gͺS KYRʭ&2S@-d%4_ԁ,Dø5ޭ'nʯ#cO=X.'.q-ơȞ ՕBte_%F5c5m5s] =SJƚ=vmʿs(0Ҍ}S۩?54H5i3`^Vv8<;M}5b*)4uRfJP/R1ز Mrkv/Ao;M%%*Gқ W0jНCLP?x>5ӢkrU(\tF;jEg{2 彊E^#x_ڜ R}OsXo j׏t%W7MI%^ eLz$H#9R1'2笺!i߀؜U==|{eAJ'~?Op%^(<oULy D@vmM]!*d剽ʹ5DH'p4R*Q=n:=ݵ&!׷֎TLr 5e9AmTg O@|b6SO(rT~ٲQx.GK{d,"AMX՞2Ȍ3PҔ=!Zĕea 5Ϥefg8ƈI~>ƛUkTKϑ!bm| dI^%<ݫ^h(iQcn$2A)UrCK^A״8A;:kV6]n1CR a>1ry[ >tіV7bs,틋j q&bqJaHL BZsG6$j\='#}B4a`.rDYdV,nBh͌k;5o(O"ܐ"lL,Y :%ڟ^sY ߕ+vI\4_@mLKr0V3,wqod>WNF{PX*-9;MV=jEVc^ :dS_Ijavzjc3R˶]Ll#w{:%,Êg>@x ^IR/YQh<}q,ly0*]}0SaylN[NEY_4OB4oX-r쓐vɻw뚳)tKz70bA㸗D ]iפf3ʪzm!VW@=kHcG#/$ߑ :Kyp IP_4H.&alq;PzFn%vEo* #@ħ˿nʢ:G1 0BN!'P#sUAt@rn1w]:aHd `TcHN,Bdgk_ 1vl ޓ:MGoNpJ\Ϙ~h`&{8xwUXlo9;ےk->Ӕ ѲpV;Ճ>qxعRS)2ѐ&d1iҹ})~ʠ bB߈JV+ bp6n5`nluD43*f`I)O6* hxebkcW}*Pۇ0C^ʒ;A}M7 4%vGK]QB{`L|޵6Gg:`7>2yleds6 P۽+<'}ZkoeD/\ǀ9P]^DjqNWM[{̮-]DUo'7:r̘I'_,I&@"a%^]&ٺ-!+yp-]kcnZs0~I6 K.F,v*F{/oP`,K}ݹUtIi}cU,]5ͽj}i-Y I@D-Q4^jļ=gr6mO=8?|Նn=M'.Ku'VFj+ۊbG.a7qٮ^7Kfs|)83egsUbI ^z ^;pg7"?XڊbK$e),2݃eԳzIuρہ=Q H~9 oynQ:`"Ţl7kq ` sꊄ@[6vZxz+sMB8(:=WD050;FktY{(J̀-_]OwKeC>!h3/6[Mr`O %-UH=/Wp>x)Xʄ 0}nxY[ih|PZCԮjasZ;˯',WXv QWM}$\m--c/m'_0rR dE0ufkAgT:gul3ohv`i/WTڑXe{.]%Gabw2+!s^*OH090Nw.&]S=Q~5HvQ2OB-il‰ix?sPs]d3T?D7Ug*xÄ 6c3m$OE@NT϶ a2W"߄2q [DӲZ X4NYbGO!s9C8AI_f*]?tT"%'x:gWBKǚ5~dDi%kF@Mɇ+R4V7ZI|DZ\asB/W*?r~vuk0R?8C5v ]hk~._c5l:-(<8lhvh%S6a w'JOA.*p (IΝSrVxc5''B 047XN,WHm47˫;RaN+B=1Y WgZ` >&TF]Ő;KYK}lz)FF9% ݲGrcO\(H&4g?G6Z]kPn|X۪,h^){7nt;*"mwVj=Cq7[Ly /a/7 U2/R|Plʠ.ϴD5_fW/r͇C"m.{f-kxCd/1,! 9Mp\_Qvr3OFHkpk/(!X"U= Z;knpnS\mEdp` W?jR`[=4y#Xpmy%7joV[j([7Ȍ{,cW;Bܰ8ؖIxKfBy*ذvuqE&D,@]SVdEZ46nC! \DʬjF5cVj] zjm9JLjy ;a?F݉C(;~ W?t(T0]f6M|EbͫmF |9H@#wJƣŐ?>5u ?z|{ϰls;ޔB%I0+#Fj MKb 3z?^ gtm{5NQ86dϹItk-`}9jyc b N?y1_eB]Z&t vb|Hc c?ce`tc=㉁ NOdB{剛3R+(7<3.W vhB*5՛%!vwҖT¹"]M*f0e6B&mBuOw\őf uhjB"IAneŠ}Po4}sP:Ln0~}# wX$ybZUΨ$2?97 | n}3tI*$ f1 +zhO/Q3'WB-Գ`7ҭ 8rwUs6E_Y+8>rthCTΰ&~B,ge?o9b HVl #xR +!alES m>u;io$\; ^~`.>`*oE~(/\LkBx H U^UT{߷9cRqEp (1K}O1^jYz%wEQ43oZKmmo a{Xaet~s<3L*2FmYimÛ.-&.42%\)W=֗VkDZ7dpE_:Pr2Y<-k`f:tzunpi# Z$-V H y:\Dw9!!^C)R|mD.GyYfi]) ۶Pž9 ؇d: zVd1`0$q 3(`<~]ڹ;k1?\;#&.?mښq2#O}%@*f{ 5trϗ`s`œ[ /tvt؄bJoWwaL[c+3U-69IJwuӚX̙B;O53tV~m^E#1 H$ E'cFf@: 0l0!!)_:_x\&Y6/…IMwg sbo?7I?;xRԊŀվ;{lD [S Z 'vn7P [*FN4߃N|n"lYJρik된JI9]ڨeNDS<'NqH;FgV Ij]Jgd+I`Qg4VUZ5|TnKW3# Je{53a\uvbUXQ zw: VV%~qP`UzIي\z(G/оdBLW$5ɪ&fA[Cy3[+(UcGtS] ^ZANZPQW'=| ") _tMQ3"{7q=D*͌C#[b.BO6ma~hZB> QU۝l2%'IE[4j6hɖPauo5ͽݬpn+T˪@K.lK) krRlH+9lEpج ]B UN SL Io֟XAM~ŀ/V A9TH8/,ކbT/Rq #fx( ˎF#H2PpY g7nV#Չ$-43ox^Wa w@ JD$K-枯37py%vcQva(w_ dtww-ӓ M s]qoIL2TW.1E8uf\U)fϽvP|BLI:$OL~Yi݆c ;r0SXRasgiF |V\"EW͑0DqmH 1aGűIp &{/aL4}e32dkDE@H3@{-bf>A%@9 jG6nz:<ۊұI&t {f׻MLW?L((LjmF4关Β奕W+aJ]ea젩ASV#Gy[U̕vpGgɷpؓ2_ᖣE8. T#<ⴑ'YԉqJRFq)pҽ0#6j(u2u90=bd}RiYaB\8w UsZ#sCkyMsz4*y.`J x u82@SͲ\j5MRҒ&ի * 3xB;EBxTMM9N}[+1`[BThU͙& is%hW"锩;Nf8GvᑸdV1KaLw뽼(SLU|܅ <~dB3 2RTW~6}SM{F5u #XHҢwRX+tt&f,&"?JgjtlQ9X9.#A "Ni .tsD+J݌ l"w3&RAÍ^4y':g#ëU[@?ϰ'2}8Cyd򴗐e@ӓyʒ0h.f/ a) tLly'x]$庻 j Z4z+xdN<=+KuZKqȴ4ܢD}Aj, jy-&ğ{Yf>c}p NUNX~zkϩ4`׋Jd;ܯ>3θ 4suKIѢI/VwlH%&4W<`o`߸Yp- L j GtJq[|d5\2Tq2ru^ӡ.}\-qrDy@BZ:oJyCַ/^Eckl, Sgp%M'R/XlD5^nƉZ43|YAz&&2 1n!zO` N 5_q7Nr/Gkm6 4E>z:ig5GBDc/^\lDp)cN^ytB UT0{)ߍ8[y9D'"}2 +Le[54 D\-ʞ54+DFCu k2oWX;#-:^=Kjs3O+ D0[/ynPO w}@wKpZ hťDkc<) b%+zqdzO;jԀջQȓ&U?`?go$қ;Gx0 If ,|[F`|‡(hk&eN7@$zэu8L!m) 3VsB%r>PD-[B.y(,"ƥ|y<߄_{IѮvRDl^?y>}ʘIV~1O+{:REW1^2.+\?HV UNxXC70dCsc#GPC`ơji8aoi|9=lo#~pǗH49j$\Fr2׵WgM~/QhnpC6cP . /woyn1xYV)_"5uMe>~z潙jyT6)E^y!}*x(Ӟjx A,%dJѠ SeXfG1C FPGacZW.1PZra !mh4,b]g܃Dwp~ƝLErJ%&}:OPy"É5k@jYv6/"$6}QX̀ K닄xJ0ۍQ5PjN\"4-M5;E.Fܚ/IYKq}Jt:1$Y1O0bxGhY7`;IU~~+OaP8;Ś"#9]V JXߖCg8LULa=1./ۯ:Υa93M魃ޤzum@2,0G @ yo95,jJ(j [T%fFhn`yܸmb(J[jaxkS4re<GXn$T[.DX4\flK=*o#̠2GN 瑩3:d&sE[< $2hs^f8LX( 2KZcYx I6{a$ֱ/a**w2X&N&W?r;R -!IǒaC` B$f[f ۳,1Rtb3[O7K%) "U5I{ "a)Ů%a5;QsxC=`J1) 2L/t/LjLwA}O&6:`_Rd"<;ς\E8?a-;Up 3>ع5LCy" U;~z[_zq'+-W /_vh%[0ZOOk *N^]צo= *^¯sow$4:V!'G`+q!kx'{(>(DaS0oeŗjߔCmL aK؟!xM0{c.7Uu-47f l#') '&O5wCы/F{a]فs>Ͱ`圮P {XdX0 0B&{$>iH={o5D}_χRRy+cS=SNWS,FKz3ZQrOw po Rp 2bRB`q~pE"P'ǐsylH2jJ.>O4Ci#FRcl+4.- >P<( bJq$dE8iO:w6{,NTi4r6'| 1Lr>JUEx/e])ʭ_>r g8;,>n fhŖ2J7Ų=NpP( >ΘjwFMETl]g4KDAv5ek:pj,?̉vCjӠ4#;}j57CVι#doM!XCw}i"Y yU˫ƤA7΁ HӆF? p|0֞aR/ہ1b@翺!A3 !s+ŋu[Aq.Y~rl3n5j3EooJKcjMOEgrg<Ьs@œ? .[Oxg)lC=Tuc"_5 ;y;r8RQ`sicoP=T2̭G0_ @"^jw0_7 il͝* ̃(,v(n%<=p{?\pUdBTH"-+ ^B/Ko 73h7pf/@9P"p {[I#)G~ dl="hʙsAw34n *{[dNfB9{cHYY|1EI9p5 y*"8^5 K[y:Kx#;?sRn?O/LPJV5FHlK.&K,T=, 7D$Qh58V*@SʏT{FLz xQrO b.vwMT/ioG=N~ﯖ Mw 9l QJ8{S=h0?zdY.DK+ɽMs|_Mpb!Qr7Tyd0UѰ(6[T/g6u<>*ex*NOJ f~1Y$,*}˞e)Dǜ#@(MĽ=*Y*\ߪƅ)V'udTBL:k,ҥ4~l~idz( 3H#NW%!k.l Km!IdmqR'=Mu*w I%d׮!ə6J%V&8{r9JS:8Z6Ȯj+e62<>WovCNNs⃶GV48KՑ6jmVƇ$ $r8tހ1!pЈW;^NP tꛗqlE?Mhߎ+ݩn|&c [>E_A<״oM1)Ъ$e/_*0eoj$#pU& opa] b'vվJ]_rggLf_I$ڕ9k=MS7@/qiP)7mp4 мJ^ij|BnAո&^:= e>$sdFDimV|piYW?$5 f%Zdh~kv1|/Qjubu7:]*5-,? o?,'ӓII@\j\rt:=;Dsl T % L?SwBEi@Ch(UPP#轈/ {G$IQcAЉ_._oD_me\F¾h1),NM&1fvYD`(0,a"Z!Qr6is3SG ARPjǺ$QMVr~0s!/ˋJF_]T##̈́N-wހ@͎]Z嵌%Qځl|x|hC^hڒ=gh5 `.t ć"=06VjS.YjTlj˖.UHhcF p[KV|+Y]]CdJ4E=f0Cv}F4q'hnD^$kG/ObCx~u >KWd ;?UͪDIHH&Nz n3J-Gg?i+7ѧdu m$z؉?m0>7o7BdZgqJf`Km%"L[3vA  HJ^d)2 ,{\ heWu텖0&(PWثk;i^ne㞷 ! sr5n"nO&Pzd>pǥlGTC<`/?yuOSJ< }CĻ`Lv.gO5 &7CZ<>MEFL!8&@4}o~/7Ls%b'U[H>H+H"i_Y*w<`^OJjہJS(m _ c<rv ws97YoC<\;q 'wU@ z|jTggh@J$]&P%1_4b A"KC7)ͧ,FgA2w괐 ?j%1+BkBIJOW@|u2V99t{# 4̬uf3i]pxd{IPۨQVsXwY>G$ =+]U\ dz% hr, DŽ\\_!j+ +' Φ IF]Ŋk-:Mj[h\Z'Wc?x1|ӓWRvRvPns=h)&o]r&jɀs.F|UmS# ;ru`Y/wU> e ;|5;msZahCYXJqߪ0<);Ic-֨,=仲9#lGĞrߣT7X^UQP74OxuC&iiN_"IB)Wz +3>7p LC)}rxGbYhI~ŬD51N&i3{dKly)9/ޅN4h8fkv؇7}p +ʥ)wvN ?J ѼpXq)=\ x4Hg8S'5pڮ8h9G )'z[SYMսl$vx֓ג\΀Dk MFBJ/RDʠ|Ƃy^j"O'oP{/`n1rbgl<\uS9PlJo32ti(FXlSzrM~OM#KG%Vɯxuap!WHlMPS° p6M  彷/1gB߱1 e(8uCOcRik <[(~~YNc+9)y`W ظBb hnJCplCĔ[aoYn=efWqQ=,ge,aMjP7z`oƒl$:}WrӅ0qHkd5f+Jΐ~wh::[#zp=#M,'µ2]/CL Vs=e:x3>o uFM љWhЙV+`9z{-lW蚍 WTph}:*\}椿]BYq}?Q9G˞1$9(]~/,n;n8 ]~+QFh|Ykٍ6ή/K6iU@a+oOs_)"/}{zJo=U ˵g%sL  Cy9KrI~@Sa>i4i @)0(rX|~hϼU?-^+=ND\(WT~>&p 8QT,$r*vgvJ E*>ЪrgZ) ,# M-ų5dpjC[fÇ35e+еũHzGeXׁ1,YK2$׸ybl?er)go@n_1W#,>ޢk]zJImc4 ssSܧYvnLNB-MqЗl|ؘd5xѤ[\jDcwA쮵NwΕp _Rrz1s%Q{bagYUށ,Ԟuoqvrɹ&!98Srj} kE&En yр?PnqkP M"D;q;Xq7{)aZ_7MՄ+5o˽U TkzX0Xe_:(jZW^`Hw3ǩ< zq9)|C›' x mlÕZ y9Iq( kZ{3`%cU"eoGҚ{}$f ,uGоXYaׅ0"h5AVT;:=4qv6H9^'v5zg)D̈́qac >Pg^T-Fe;#9q}`X5HfT VI]*,BX:.'Y`>B#6C!-!q$[uY-J$4Sm?-$jA^iTgja0xV3f|%wGO sa?`0o j[youE/72Wm}+@-@ە*.a ~g;{qWrK1:nUڋ:5AIz'T8c7߶+@x^ iW9R˻?gϲhID3X}G kӌk$p)lg ;X[fRƠf8v/boܖf`R%eE\cg-JGhM7Ѿ1od%3]9C Ls_I+.^vBdCK)DBIRA7B|j֯gOeN~{C.bD=Gr5YW7'D\U&CpFS.9m K?KUkIowXOLG_%C!/FgLVo|fa!B8d!`>/;9`lHaf3u]ܨ5U`|hh e`P"~V4RZ/4_ޚnЛgM.T;lQ&W]o).b0 @{EGqVVq nG `SfeA1k~ JPU9VĠނ-(Ḅf%OLL&B^y =J[ų1] ok0.0GBJ=,uQ4rhј,wk-%gj8Wy(]Ÿ4˱ͣQj})KmDtj u5>,YvQ8}b3gȉ4 BYiV ڊ'#8A_v0ob5]ȊAt?K$} ~I1#^KYup{l)B>|̮"ְIK6}iR]>вDDCDUryTEO2uOG(7pղ!k짋!fuðL;p 0}XIN3ˈCP7Q__AD ag jp[6r<E?ŔH|jvϋ IH@,k{A^h)ȆD,s4[-C9T2?mq}|5 4EMlrwC8'F؝?M߹PBlSfܻ5I5MWH8=3zT)&INwS=f_x"_ZSbH-Z1:\Yl1Vӆ^*Ę#Hn:I|=tYx$\%HY0cB{-hb| BFJO+7IP{%FuRBik+C_ HQ+<{w P>9WXq>CHЮ$3`MR- @ٶ s:Z9i،@Fh:mJZ, ޅw>D~kB6eQ`&KpsQK -XŽh0S/*C1OdmzVs;,q(!p&ʩ6dI ;V!QE^RVXNrq?;e4)Bx8$lA#í0WvX1?"@),5ޙ*ZC3/ S`P"ɞg5b(Ht&A O .$&f آ ,Sd"O'#NeF**d1l[#GC r}e" vDOg޻Y߫]ۨ!f:q6sN^M 5*Wx(;;n ijrZYit32´M 슧0n-?E=|)ny1,+p4F ;W)7Dv/8"E?M5IUO8lJY[&[jLjAz`<|*H(.QE :KH"4sw9@(uLG.vwI4w)a?\Ƈ{A޷f ]9n-6bm&+^,{UmMveۍ `Oc?N8f>0K$j5z2 }KU(%XPaϝc8\P<Y"5lFB_ QOr<yܐvYa*B$^ Ik$0~ck~7 eՖL wD,_% 0zWݟ~,,Zm7L1)ԳFK\jvrETJ_1<4j],~N#CaѴ# [〦I䉇m=m nBoDTL\dδu\mW^D,xeFډSwU&}?cCA%7 v,N ֢DrkOlg'-U=t)>16kf>A)Fd0_熑l̩DUT"Z\Ff4 ;k[,ф.?aM3ݮd*Vf ;(Pjm{M%J9x&tQB'Q)l"2T!l0JtY^/ȷR?:A|RBr+Qu\/F`)1K;)({3dG<#R`_d@`YͤH-B>KyF0lO?zG+.:[IH֬Mj*M6WC?Bu7U~%7Y6Xf mŒx` 6ݺ$kw(#1;'㘴U ZE4v rSvG6Ot;Y?'Q2!颅&)rRnGh.ͳ,oAr/? dXຄԁ6#8VKVՅ: =XDٕ?\:IȥӴ:'Q"SVbMÖLz~ə'G{( nshPik`Noet@(W&ِA U\G;>Jm4}2YQ;7/Z\kT"CSXb@`y>bHݒwA,%H8[xϧq"'6W[[_)8˜>j)k*{iWPtWW(wԵh>Uea?_ӛA'n!p%*8yu>Sh`$~9ͼ-X'ewe T0YvOW E彆9e5y@yΛ(Ej,iѤR'x,]M,);\ӻ%OHc #ug7ľ_#,\w87$'|2&WRp&WQ#onՐVhdqS} HDOqq3A1u FO 7Fu&a=9ED #njT4I `Zf5ky:FvbtS̿xV[e"6rPU\ JzN-ÙBF!-hRPmt,^XZdL+ڧriNS_Ԫ⛼KT CxqD>\ɔH F@֣SȠRysŤQ AH)o:Dir1 @s7M&ŠZF3`f?D\Q Lb_zѸ=yئԲD\3}K\\o6c\fqD4m,)xkog#pznnpsW,CW'pm-HNRL옏Aţ՗CRF~v 1ooIa=2ζx21YNҀyS t0UIb+2E{Fϣ}21k!@uU)jZ8 B{s;i,x 6l0EN"fRt\zE+#Q+Z:{@q{pX@PgaX#$׽:HEAޤrs}b$50^*3b&{&Q_jVfvJr0N\)-zU9L*\D1> ^%AN焆i@#@0/"- 'PA{7˴Q)TLUY$U'¼.1߮Z 3/~Zn }&]GO1cahet"WZ 6%;Ȼl.[GWT`lm6@lYvBP@ P)_CWsT]FC ߧȁleb@( :d BgNYX 04 pF4gmsEiipu8J.#8{^>ez&/ /c8Kǰ36KګZ]ա'69l ^[ow"ܧhf딐.(v,hXt<kQrbv?D4\fN;]L?˽b*Gڿ=o3s #P:\n ̤Yz^ky#D$I"[qc|$\Iӈ<"V$om~XPӼ0V<5|tg9:w+6w$F,V$B^5Y41kZmނңݚtOX[n֗"+2哏 Fm=76SGYf-'7|fhS,rL'T{6Wk&.DNk?㶓X%ܳthMa0t#98hO/=4.'%rj;F>z1,[c(PF"ע$aƭL,dMƙ R b 8H45AUbVPGs3x&9Q>ACʣ;Xoo!!yݬaף!s}\6d68 "w_ ;Nh3]--B1(q֮L*~Grurd:D-78H[.§!:b7v(|bTFĎ}| I8w$Apg4Fc&- k xTZqzosay:Ƙu|GvFysG|w}?}WTeiO+'MH yASG.\OqpuoDGn}))1Z29)_'m@Á<vEZ/G'n W% )=h+WsʙÌoe%9<ܻйy FQK,pcnw!~M +̦zjulCػ؂^kl38J&7Nΐ{H]oχOaD5hl'0;-|e%Af4z>]W4a. gt`А+Ĥ&:x<|\^ˇ)F&Ed =?(Hx|'#Ǖ.%k`шYs7}Σ 9nEepu:-mH@_&8uhʛ< O"3v_:˃Z;h+ 2@:}"Te5{A;Ȣ5 aIɎh_'nR.r8JJlawBAgvĿeIr$QWѓ=D+PPm17^gJpO*\%MMnfzxw%-)[^Fq+sܜǜ ^"b9ׁx %K Qn54hw%-r28 Q'-T)yF$ %k_j})WJF )͛M^?{AٓA(=t]Q K&U9% XiR4Ab̶ p𑭁F65gD| 6Nf 4Lie\~_8Jz 4.WEĻ%A{ 0 m(yiJb!؇;*/os'wjRG&<:zm^^-.J2ڮ{#"R9IzYjKD8g0m(Z1k.u$B7w^ߖO<-)BHhoLRx>NG+,A جGӉ=J,suFh:êӔjhCɿ3@˨oqYi&PӰ`ȇ˺r \IH*oE#(ȎbaH' qـTldg Ky_^+դEtj9T9vSV,.)ѐ >Z?׈N1`U9p_G'6XpwFtwtNWc\ߥ^\Ù}ҮElTXА }>Hgs^odkz9ooaQ_E`%sHN@~JS|?<5[JO%Y;̊am0@a|(OK'Ue_KXDF!S+RD̩-߈6kd?ft`ݳ[ ٠kA{Z#&9;}a8E*!3!jjH$?/D#a}ykܒMQmgm8M +!XYAoS?cДJ(XkW-8ϖgx㻀qR9%vE`?y|ǽβ' $÷6d {yvHD(ÃdM.y%zKއ7of .JA(~/DiLOљ=e=>֙%ZBh,mvpKGH%T!s6͑j\믴lK5΃Mwo}S8o!#]HmxPY'g`sRgeLU=@ʫ` Uu1_svف$)^%vzNA,ہ7>Ol^L=;j_?t(s<EH6:$ȶ97fOCxY7CfSc iL>Du<1+=K ؝beDZt9i~%kcJl?hxt.xtyp.eZ6 HG)\#[NS6Gyc)"UOXw~*@"P-t1! 2$.l*#5mwAC;̖iE;N'~n7j jz6sWAV-C*d!mmg)UG̾Q/[ UC&ōs{6WKe@+ NOl$xl̉3sPld]I}y{6+T0g Ӟ %œEcG>[eHLCE顢AO(E{ wpzŲ̫>w ..5{̾OM^k -*EK?N.s&xU9d@@g<2u 'i v_G5>!ǻ| Sgz G,t=m0c>@x>jMH&=t-Y۲꣯lDˉ`т.1]nS7$1|#CG&5|;P:Pr; 2OSY'SwchnI 3>̻w15M=``ՆEvV!1Ԣt'Zhkc,P?⭨l; uxU/ov)$Agϰ]gȫ IF>X*<ݶaTr7iה̨a)((1,&c~}<$Ȍ롷ңxt@V-HN*Ϫ& z_?y:y\BԾw y*g֓ DlF8NЇ9'QD$VKD0/m,:,}އ\5/&v2xJ_ȰxK8Eg駬i|{ 6,j;TLJIP' (˴_E{ӲKWu |1 Xpwt$u%tSl'R(׻4]m}HrA~:;a= ".l<}g/,4POdи"HIB34M8_.C+!_/>.4`cRp0d[ҚGuUEMB l[Y9o :"@tPjꨅW rdno$]#j M\>"Ep4vDs& %MoW@s]b$ZKsX`׮p'iIY^+bR{l vr9X*w[[+EeOdYE)ma5)@R +FEg@P2{N> Zט\߬@$[q|"}peȼZdRc QeG2N ץBOWv4AwյD<1;cZ;_Q ˃Xl&^~.݁RpL*=&]i"5L?UU1D~i>Gh04Dc 4(bNӄBZՙlqjxkĪ4О̼bGvAw3H)sxj q.>.#3ɅΨB70dmEBB3ǁz7zFCB݆?ǮJy&)߱ڴMO1KoY[55't諄-.&~!̢L8:T]\؜by+8.?^)[ՖFp'2`P#3Fo #݈eKбZLF>SsdLV#w7%,5"(T B0\ Ak)N/:G C:{m!F+n Eɻ~(-EiA)04MN|Djp<d,l5kuTT+:ӝ<%>|7 i1sM<>VXaAFXu::tݴHV4s{gd:Lck"a?Z04 R) Tr`գqbW[?j?U o x:\W>,|gD[2֒qݖz^?Z/j+JŸfR2h,5?uz,[SP}oqZ)5zW2XL.Т&i}`O*2[.-q6Lj"ic䒣x;AV/ݞ~91n%% 7_2hJ|_~y*)5G/ٝb@L /0&[BmWzoA{'aN5떬JAuB1(,[;LÄqmTqhW|n)уCCF'2kXJU_E&ŧ_'n@ O--w\ߟ>7L'lmX 5vQlGn*AD`jK(1ݬsg}f.'e{2 YW7:m2#8Q#&J{k) +$ipʾ8,CȁWRIQkp?3۩=BqTejlm!Fv8q9&HT+h@Y6J_hw ңgŗ.RrAb4O>d =rix3K/erڡۖ(S,ȍeLݠz+s}TTdajl3ae%TG$ :Ny!_W w@܄oy,D>T#=w ;/<;EZkj'?V&_SH% vcl3R-ސ:W$Q^[^Yيp΀J2=(K[BL#܈X?maaǃρro4\Dt+i#coz(/i ~N_Q5YSmF6 <.zg# o,Z bwEL϶t#0U Ϳd'05(fLr.uT2 IKL##J'@Y/ƁsQ`RJn)þJ6N8}#gkHV*iK ;+9#I;E^8L]6. 3[5ٖb *a#?iǽ7O_mݍ `O/ůJeh (4ٻn83;> MG f̃cAUmw G SC7:T]]3Icd.3&CPXU}v!4ZEm2&hƜc7 XQ|N@0=ODieua7O؋!kMDiA&p`TD*N~:EE %.'yu!q)vWrPĺXHUM̎#nVY;Sk0rU6pܗv#`_ bb\mtE4ҊWvٛ,Y#Ȉ0h6τ F!jd<!G '99DT=ƒL14 "v$DA^қV1j&Ƀi( ~VL2yJ-M⯽s6e'RAѴe<ّ\\řL)VP|y3[SZEJw{^*ȏM}cPia2XnDj]Zo6jmgU\ }v}ݨw0Asz(uɉV`TJ1Utv1gQj]_hATV;V:sCn|)[3"1 gD1;d!+J]USCsZ0gi]ڢI\HFM5]h+m% M0 X( ?,|vިUU +NE@Ǫi&:&@@;Q9%ӄ(FUݫn렊"/\c.aGx{P^cPhZq@RMʤkcD3)zD,4jM =P|;xU?^ Es̞- ?)@*-:7~{X6I3gл=^JP<[ެFIH;F–E+v +Ɣ ^-iM\yaS7Ế3bf܀J"5U-kB8!HmKI ) =E@bÇQ0_ Ki$ 82|y0dP-ҡ`Kqw#i*ljr Y _bJEZӹMot-"섲-3~Bh8d9?/Xܝ\ތȘ_gh FJUXP.[vXL ,%@D~nj0d70zP6@cބ3cNR $KN>.`9]cJY98MQDcFј\ `cɜ,ʽ:,Vp;"wmT#i$K~/ űjjojrDejG9 AY.Q^UHd4p]n `So1 vM+K/-~54MnTvsć u  ʴvtyX  +ԅ5>h P.hkJvQԚeE ߠE~@䲙_=ss+iD\(ϱ|2иS2)`҉ {q5b47%nF|6t{,Ԯ>Aw(X B~s/]8F= [No)q h7Cz{ɉPaΌ]))uNYhT5~Wӿ 2EF/i䥇xt,ui:*)7NQd;([.T~gY+*yl l8i0< +&~/OY99?[g78 n,/./ tDpĺԏX.ەdɠ3/@JNۖi5fBNrY8z<nj{0`W 2efKH.b<ěݪ#HL 42!eZwE 𩌂fg%B=O ;Z@}DU wR%yx 3Ɇ/cD5+5A&/"c .AeKWWLsۅ (0 ߋe/Kߴpui}d 8&KBQ ISSW[@F\XA:}dXfc9ܫL|-lC Z RвěEm<t"\7=ߘ9ѕ\l٫1jtdR5nn5u`D!؆݉Oj_٨WG؀4zӉ|^qs})ڊL(\m\Y;dlda6>▦l''E\UfpkR?_=$>S$[^!S8P`>d-,tWuHv֟Vl915!d} $lú?%#Ssuo`ObRbVRpr*u9&ƣQQhoS&Y7Vς<H.܍*~Q5aCրrTv^oj0x斖G2h(1a>YSVXӺ0V&QeC>$ڇ=Ñ7sY2)4C㟚d 6uq9^~(1Bc=m]BfJh PSNv [*+`Dj2f>ԷJbBx9wЉ-$'djۙ}NqkI9o(z16t51&`ϩhmnJ!@YT<~^ēHgdې B=:`e|vSYct*űa$N̙+@oIY~rB ;^A745rz\B XU@k7MlvJ.{_{wFbǓn.B!1+7>ylj,;=R+@]&o5 hy#M: sK|3[8qf0]⽇ܽs@=q״5`49 Cqc':0d9[MGoY ްAϑ~v'7)ݞ V#uOBa_` xS]!og]d))d*nZ*W_,1zN?x3Y/u[ KQڮ --_}К''$$#5%7A+vGth0JCg} \=d*ʐ9@sog+ ΞuBW1D |o2}?)p^v@ @?3e;zqeH4|Y -[ ^(۾)LrY{{mb˷XܚAb3C|ٚ .0 F)mFF> F$Z%c?(R.XL* W7>t(kfg'NKl|<]%j;͸m>@&4U;<1 [˻-"uU0CuNKMy#WK@fPͿMy/[I뻛C㘶r+)4Dx&ܠ@'Y~`M'eCڎ"%@rt_y[xf3j R=U)LΛRF2*>rQPE\Vu{?g) GKH}YP}SP6ayXZt9| B~[YGU-i.KaFP"0u{IIQ&T !Y117J‹-ą3J62括%H e #z-] 'MoeVd^#-3SXg !~и 1dj":^:bdp Dq%ឍV+j()<$֢j=|4Б^ @ئyX\If}.y}8POߦcnO'_8Q[2XdF(;;7Ǻ-HjxU"n3Rk&%87fI(TP<k8t1(;R#, |Wd k@F:Ai<hkvAnrscUC.ʧPIK$kK?s]GprA`BCm__[b)\BwRzR8JU(ذsiR۬ i~E'S&i:ul@ЙPi¡o"D6,*by0 Hp=1)PZ-EW&>@VT'1ꐠjlboiQ1Ďn$A@_;$Ә`~dV)da][ 3yjx=iI[!^˔v| +5dO}>׺g=m\x>v?,8} f$:}oA.l-X a؄~tp8qEehXw ]!W=Y\;jp{aip" gB$9J5\گczu#G㻊>=H51.bͲ$_Xd+|-)ċG5fyN]ڙp#lEѨAC5pn7ېMX~ׇj7||ߗ;exi~ЇiаyqK.' ]K|l7ēL:6Hō + q 5C??LC?3c"%[z}g㹨tgiɽ3w)Y%ȠN̰B8i!Өc,DFG?>zN3N@9G0-<VUS;!q2b 3>D plZ@T%RxP>G(, " {ُ_HE3S[Fqi)rbʛ1j9DO? g`g`7G DB™v_C,vvvR == Y(:,(ʆWdt q;slsE\u*Y̸t_ 06;|ި̲ V$T-gLW+ Y\RR) 2(\j+sgjɪTd+dfUE *lb(mKiEʾ([*B>{W"X4t{m"^ 7˧NhUtƵTN7)lc9q_)i2g1Fk8~Plj5Urg[ UtҬk)ʳ1jMD}>Ta' ?71Dڟe*c0F> )w*Lw8%Ʊ*9Tx,#@r$oaMv a1dynsݖժ)hۀ7&S>`/=$PtV?_D;hQom܆E~07$K!ط`V):ψ*Ŵ9̎mlǴl=@}̪J^TѰ,ddnmp%A껹_,pw؉ܰĄ n? ykQ1d]_ la=?\1u`}sIz4=f31RwBsua}hUjn$w'l L5>swPN˛a_9;5c7ZK)mn:c'!w/i+뻝v:U'j+WhiUӋ,^/xi rtY[%R@)K3QDz°*u'cH Wː #'-ueKOa4҃:1 Bt—үAt-Mi1Ԕa6xjvx1~hs N%).LAW)kǛv{W7ȰXPڽ̯  _B/՗|W>6U,t?VRnIrqpK@+9*W;,o%Ջvgn ݘz}~f#X{mqJ~n@%BR0`z/mVe䒀=Дq=2%M?tUĴռ}]ts54a]v9\?AJhKU <GoMOWu~*w\ސ(dT`ی\)ڽ!ńfk'% Z]`7?@!νdVqxI3TȬ*_O)DX|7g90@zHxVܬ~'d }y`ʕuAg"Fp[|L?ʉc5(̀Ho gJ@蟔 w/^P>&pMW[ wW_̹vuНνz%\Y}̨<[ NòS4dnZjqb_ȑk p2>,Grn;! Hڸ*@,4~ Kq/ފs vTϦJtA cj8mD(UtO6FK Ijࡽ!t9J[jcw@XrQ]ӽ.ުdb&BYUF;׽ GD~};u]Wn?17MkMBݻfHI:jPjbQkN-[vaboU{f6j!&3Wd QߠǼvJu8f-9~h4l(Gp^{({z#Z~4Dڪ$R_@q쾨 G12\#7sIq*ڥ`Sᰯ.3¬PQ pe1_Ok.>2;sh_;fPk :GBAr+7ؔmV`}TGaF׋g~֋l(wj36~RF%dK8_,6|AnGm5b5( .tVUYq$;&>ij zt?!"&X&UC];Rv"<a86!\0 ]lv"^s]+{(hc-KWע<'jBӠ[Pt}X x En5/׈${rV G!tHw/ӟ3ԧ@ܰ뫂S~v>Nvs:y2,Tcun=]<vdxX~ U@٦~ kS/mh{1vÔgSo2M{K)=8Tf#Z쎭,nl,Q.3JTep!mUA4\od'D @17.-ƹtiZOl l~N w7"-so(c0Փ麷xx5xɵT+8h!؝\NϘpt] qS9JTnSNjy& fӆud;OG~bފ6,IY*vrL/$a \͡tqGRD0)v|c=vNcOwĪ}Ihpуy2eҚjFQ>`,a%UQJ/Sg-m'Ϡf;#rb{U.N"HjAz,?^ +|0qڥ+[ʁd/y;-;Q>X+ 90gAa=v"8KSmpƪ<:H^iQ=qY##ċ/ uE dm XaАnܚ1!w]u mƶߜ=1 qYR`Xp^&n|x|WP.1F/ޢܾVF/QVMYa@Ppo渠L&=~4dpa&5'2̣pv?) Yeف_Vo8(@S'`3~go*Q&\ϫvi9+l!!]h #̕pP%JӳSo.Ǔ-4A{ eEK >N5(=r`g n||& IOl22Zs']Jr:0x_}x~RהȊz*)|~p&KL`e(T)mQvXA% :]CUzRN7J9Lcޝ.  VL8lCSve+ n]D20 Jʴ[IK#PZ(O"z6GW6uyV1lNKeqLEU_ ˂.es`S_;&UW:!y fbMܺ8Ŗ!Pzrp R!X=g+4N^UF;?T2z8=KCnWeEHxPRn;ڻGF{td{ ~:̈!RgnûԸ|wϟ+n\_c55<}tBqbwR#p gZj2v3f^[+~j\VΚ/=O=J!'E[v$vMaOʬj(L9O?xEږT$XI82O_<>Z1(GaFSDR\ܓX]֌t0CHf+J`&11'X"gM_j޳IН QCDc\ 5li\/Yv^ zl|F@A\W&x71`b5C6zd 7;ks;lLܟ: e#(veOBJTXT0˿z4Ŏy <~ʒtb뷿ekLOj 9١`VBھIf![O}5Sw0 !&7|I +鷊Y_7޸xEUh(Oy7yԦT_/W-9 OڿRA,D.HD9Z͐ՠqd?l&.PYw&- ;zBXb3 :vJsUALɖ݋ U MEgU,qU#::VpEFuyܖA k8#Quh_w<~jp<2PQ{[0_6.M0q7kҶ19Y; lrl;_@RoRQW~]r +@ :>U3ޜAۤY'|fkZ] $H.`pM. u QDO."W58TqYƺ0;nalhi$}HsQl,#.z@eW:˥PoKf i1\7#G%lXkG^ބ2?tFnd0wx]Zx#೷S@E:>o!тjH3Kp^ u6J!0n?K4@.Wb:י?YMsPKF%DNj7$޾Yt6$"DIBpI<-,i*XYodpXkU(Y鹀A imJߑ 0 P?bSwۃ=.}t tk7:|4HQ| hVZ<=m@vJ's+;ݤڨыPǸ}KY0S'>#4H pwޚ &VRmq:`saHl |ǽ!J5ܦGx<"H>WBK Xr%XVoB[zLnf{dkosKl߂"= ժ3~nPܞˎEhVV8&3. u[ffJReg+ QQr3mXz,Lf~dR%e[/Ҟv*kzF]GcOT"'m.jۅ'ۖL1 rA<`02~3|Hy߲?q[A|a+hhʧLI0NxRO@=MOjT+g=L 0gGIjIn++R BH_I)?D@5B\3t ɜO/4YH/m7SU8Qsḍ \C0-Dxq9@]Ý I}$h!I*kovV0 5 o__ʲ/4q^'DS(vp)(q Mn1\2g7k]TUCvS^o2IFXzY2g:E]^Z5EB, o=,:x tCHN0c.b7ks8;MDfzq:FpM=},Bď# ,Iz(}/2Ecf%ݥ!y4@BO{s$Ф\ByP{|Ƅ]Tq"@"F3Im}srQ.D;/}QDWaUmczmDbdY%9w-=\Ȉx%ǨҎhba Xd\Yy~}pXs4nw8FNN4St̔Ё)Q9avԭkMo5׳WYPb O: 7":IM҇-%CX9;;C06ZjK~1},#ΖY9}Q9g`/32.i̱LHzFT \Rl\d-*ƄZKEkRBs蚋`0|Κjn-6%)<9FhgReC%<==CXIL ˨/G1P%rfŢo9'^KX{emSC-.?:ӭm4v4'TP؆);7WAa ' oy5 e[ =ӷʩ? Wu_mJ1܀Ig*p/]GS$a2-pԳ{ޝЅp./K^xRnQO\c @=KG0W⎉Wm 莻fow ijWsl$dn" MXV&2T3bbZj^3Sá2OR[(yuuPP7DP繦װg>)#]?3B>d61jAA̲cnc/1ٞƑ)]œfێGGg8q(%j(ZYgUoJ$f^S흧6qnE"yafrYs;m& `ݿ`z-KCW~lщ2ϛ`oxI8|wjb,2PWPoaB:?}9Pp:-:bq<m[EջZ**"ÔPM|j|n7dRu,|\OCJC+u+吓*MNx|Ղ\7!Et*3V) _Фcٌ֥XUCGl"@E#X#]Cq.]Ɔ >f@\ׅkܣi2ZGor`"2suA}NJ;>( V!ȎgQ Iz=FU~&4*z|~4yk=M֜Ɍ%) סf{ˣRskOt[?ЛB.3O8D`E[$M<]gA@I+^K6c۬ezA߸t(pٷg -Y:vLt3b^T޷ TBnqmj槅Fn f&rqac=ed_uk?F]_QcI/!r-Q?hpB{GGUf܍YXJmÆej;n{k+xxCmu;=I|^[Dk >1<5Ȥ$ZJ %8$`%'2 ƺ$%wB Szcє$h% jAeg!<6Y.27VZ6E8BԎswC!nEI:_KWnbL4Ѵ-.,wL8gрq˻&o{4(7-< qES\HA# 9 k2鏴 ;5hn:nQ ~Q]LgZGgXשmrԵUg̰\uk]cg$>y3ۤUMba0QK hqM1c*ݝWZZĕb~PuNyR AqƎmtjΧkby.t KNr-S`EKcm2 Z; trqOGbU I)X(jfώ H,DԳxL <[TՉ&X'9{v¶?ǻ@9L,L$ 6P4HؕQSU_mh '~,i*Jc s6aq;ƉLe]\QZƎ:E\#LFȪ 'ހgUCA2UJ)ؽk)'ۥ=/pt1:q`O 3O_}*a,P/|lne`35Bnp܇\k!º:4OZuQƈ\{ 8M_ÝY(4aHL ק6RDCOB+L6=!fʑ8;2g&U,m.t b}MjԆ~t2=da.`dUv":A3YƔf8{Ӷ蹘zzi+F&]1'\ޙUb6XbHSa&.pdSjX9܊Z`7ɴ,أ 9Z^vl~13 s|2>a$K jrzzS%!=LqM(/0?g\xHOo?Wfu2ڞq↼J䀈aAD 2!rQB 7i܊ 3ڸuKibkԩeߝj,e7O;,t\E~GV2ə809B{Zfu57LZ$pGr_>&s\/|궈L#j5Bsy: .L[ȯ^Ʀ2i>4y-58Jm u~u9ތQ t2ZDXF*ЏpnԯHD!\',nMOEiSMǣ!Z]˾"^eq7Ϸ$ އNkAӰSt0"-E|Cbb؃Ok\]̋黎e9t @/bV4GGm3p$CKǍyuv 0%4BUQȕia/B6l:7k1t2;w FJp0_QRF %~ NYo\I+CVŊd5GD̼S=]?f 'O9j_XL3&z0-ud{GJCֶXw@j?0ٔb5KD*&4w{ Vy@8*ӿ#K6DEBx< o7O]չhhژ/B$4T1qh U/Q4YQ("e|mK3Y dÎ}Wz\ٚ:J7_Ddҩ=6NkMV3O^CRE%7!ڋRKX(*֬ynDlf7tDƩI5銇 WwS &eZ$PamJ}A{)Q8K%^^9=$NVG[ݞϰTs[=vbu0>CAtIbs̎ rxp0S(s_Y7sJ{wMg}WUpЊ+ R;t+Tg Ql{9ߜJ.kX֟-Z0I\ V=qxM(f$^W/%p'A FCKϭMjcH4~^asDUt OIJAiRy$/x(o}wjXfS6,UrF:kfR˝0vJ < ߓl'a]StS"Cq\h$$m/é#| fRPRʗ[ >YzB(XYUEr1VC&8'V6r[If6;\'!h:ģ.;"j=f'F/;m^SFi!5Գh>O Sd@ߢvyjI6.]|d|y8ӋL.M1;X򔃪oؔzRJpFdgקQ[nNKQNʉP?:\_-㓩H߱_>V~Ӂ]Bk4~hZ6f.n^,֍P{@L~h[HzYGڴWA'oυѴRbWS灅gm[h 62e3%;5?6/B?I2_a@om)BaD?"#&M,m2 %@6r-0HP4w4iB9$LvwiMrCK,=>;9U7X(~NR yO Ƅ1u붐̌dwWS{&-, !&o6 N3u K0)C6-猬klM1]>{;[ wbRaljojfP` fcd"8 n M"+֎~C6m&\U+-Ow>GWl*C(g.Lo,m> <$1yW )L&Kѯ=w_?0"lcD+V/*/b vZ ݉nl :d?_)+rŻ9-5W%KP(scJyQ;Ja٨!x!ǤʗՏϱkՐ.7QWIdv@jE]gDl~Տ]YJX&oToBf,NxSO`tޏ"O3gG&2<&Qhݬ5t{ n p{d#)8+RU3Ao]1xv\Okao Q !A혙-| / `HN4|T֝L_y L|bmA(AJM_Rɑn.SR{qjDT8$*Y vDl ث}ߩM"ىnXdr;_IF7VЃKӒĐ11MF4glp0Fof Ei1LWlc:5a ¬ٰ&/:0lٽlu֍:8Ӗda M=_1uWΙ()Dm4C;6#sxoz5s&MN:F3?Kū2X^Մ 1?f7EAGBoM6f/:@WG34`~ZB ,# 1P!˜Ѫ'a)~/mݲykOγcF!oNm6\Y][5ӳNX(''"2PC#AKP`$)cJ~Q7bwvqa|TT3OrN`x FnӾ۹`crTepNfu:{1XKcY Z+\_% <@"(#&BzS/09y{[PC[.KeQ=g6QlbB uāN1SOzyP:AcFL˘& u(k]"O4paw嘭@j\ù딸b L 9E*&6L4 H+- NkPq ?T4c+%mhү/ƓC#&1%TįHɭ AT!h =% aL302#(!N2vDA")\V0y{^R1N) Jda6")V!s@ff+&2j*EX&mh<#k:N3(! osxOqQkn)tķ/\LUC)idTjX4Z;c^ lCx fmKLM'eh\JCVRW`|;Z6ֲ-#B1`@Uu H*_?ex5)kazܜ`>d؉B=5r wOD5BT:cnW{V8z@4`IH}إ=5URu/Vp< N6+S|蔉Z,Oxt*4UHgLAךg[bSz  4LZHF; s)N âRl5,t:ƒgqO'Bpemg2I hjdŨ@X"kOiu |Z Ǥ~Fh.Xc}KIaԽx uRqhZr :O2_m?GHH2fM3!el´NY[yuW5R 97}wFB>QSL<f~!;8)։tH6ƐWHt8UD9qI S2WDq̩ nl3Z- Yj[[0` HP)wTv4qDQE6hޤd3DϼJun :A!1bkG5.fw PN6q0 dnJv1pKGC̋Y%]AM#ީLGy(?MxIToVهd(E@)w0ޤWo-#=XjG28G o ӑ]n?{E3UkIWYN&i䶮{袞Boif *쇱QI}P][ay`%Qxq O:j_]+B&MHĆ(_tH;&7KvpXGS+\G3 AUĔ~iu/pa#ׁe{{&J j9;֠б[JUr ?̻!wŲPHq=ٷ4_;ŸB\1YsˑG EBKaZ xHT„gt>0'ʃ\S,bZFU?MΦ3J6r4méaM ~ˇڒ[zN 3U_܍ {XaȖ3G"9o ѐ>u."%u-&=*f ~py=m{$ijWL1NVP[D@5N<[.(1ī7J.e&5@y?YC4lap'[VrWHQ[H!_Oݼhv >_ۚ}-mNʐ9<"| qer0JxQ+ u1&K cH_ a_KVt&Xh@#X##uڲn> ,4=l/ $u.R$KAʼn5k5 ZR#NqhR.qM $VS2r MfM\wu qo sOd^t8bz-ĥ~4AꧯH] >/Oi>y4'.P=Ț 9T .9SU)xǁ\E_s֩`Z#U/3x1@_ǶZX߆6OZ9[;KDMb8{fdmvw v +[,NAŞmo2W"6qp?ݎ=8{"+KPfQWNs!{؞48쌭◕H.ڂvsgfBY` 7]'lTSOVׂ$2 M W[9e[H@7>P/.uAt/rE/ r/6Ql"sG w$_aq!FM'뻻j#o(2؅˟H\z?P#;zgBΚv9eKHy,b!B*y>`g3g!i ZDDf޺(`o-uʜ <^"AM^@$S ^16nY NԬ8 PBCI, ]f:7@UATn4(y^h:P$ԢCےöqܮ-.ͨ 4=鑀U[h[L_Mf6a~6bWffcm9iĩ]-gb(*j~)!zaGRtg@\@+  ݀b&ԡW+* ƴK1JxD8a{/p+ 8eXavvi Oarݔb1B5\U}QluH z`Uw*\;5h{/y=Xi ٔ![%*6|*K&5+⩽26|~xs dt&MNXٷ Y ID ~sf#@g ]#oQD=m1cTf >tJqq/J=Dns˝UQۂ|~ SMT.OxɃ ѷ0L*^z%%DrYb)V7! ˜Q,yt{]$Ox:pe#9.Q "g*8Pv*=@GFbpF*C1X,r􉹢rFd%^I ůaF܉gӡ xb.fx)#/ey3uAw/VdcQM٣=cP=#3c,cWmMd`bJ X &_,;fD,pO=$.:g>)_-`&f{I's+N+Zq'd$P߀ 7Y/CWR&h|bsxMM\W5f<*ߌ 9w|ќI`{ 05{Y"b񯣬82:`u6Ryc,d贄6]=+L>ʔ+c{89rT. >>Hm2_|~%JĐ+}%gn]ELr$ O׉u#3wfv5Gu j[1 {VWrjDc{BjH#@)JŸ٢. P]TfO)A`|F!=aXB|2՗=!`G,AzyZ\O"f(0sܼh0l#C(iA [8ѮÉ =J/K`\a~:-){1dsw^s>ZWN Eۂح?@(ſ-T ; \.߼[k7"t4_S捂!J{w8HhÄ~UXj.R%e8p PӞDc)}7?@qTT4 <吼XMVʞA9X_긑v.*u67@)Yg+)@?fV/.}l=𠱻S{t!9CP^ؙb*,Z۞"w^CEA#||_:jZ~?)f^ԹcյZ")C@aR,AjǼI^搯 ޗH&ݍ N*p{`.3؀ Q]k$ yrۛ(a*w1zBĠ )9{1^2i}GAL#.8nT, >>1X~5'Lե74NHgPﲊq>]cA!Y)rTղL[՟`tCM|3$πA}eű 8t_Z "lG'3T|j2yO]oV}_ }Y;?I^.46H3>[7B E v%Qu.9E=^xF^0"7|ĬED?w^/=hTԠ[_.V (. h\P,g5owX@'ʠ;8H[Cwx)*zwW]ө0 ޴@zBu U6~B8R44zVu+8|-sz%݆t\JGE/BMJdIi|c3> EIxxKUʥ(:9<W4)ʔraN Q"O)W%$#+]!&NhV(XWă$Cm`m0mMq }ߩUm CH9vr 3 VemdՀBh?̅7n&ij\ɦJG*NL fo\swl6* Aγu571M{W]RQwO[#P)t2wGbSsܭA}]JQԓOUZU-'2HM=,bp0|q}oƒ{Ī^90KKutpsiD-4Y[Ky &G7^?ӵ)s\n[1>3]XX$ZtHA"3W%-1rڙ&}qֳI5] At&rL$ў>ׇ.?5u/{dGri;>c43y;aOk"z-WD CH.kB_~lX5B2I:NjmCL]w|ʝ `o XyDZիLtCݱ@j 1_En 9p) ekؘZ]>X2 `fӹPiXևu2Y,~o( #1x#2 1< fpϭ9d9o7HZ'H0wjtYҏS:Gr@ƀ!9!C_\Y.o8@9[Ozd# )9iЗIqΩ p۱:s5߿Al)d|~+Ý{wu"64cRBl^}ebՍ-6e] ןd7= WP RcLu(B7aE_hd ֏\jJqb醺4 }:S _ߝm1؏ˑ[Lݖ(zdb1/d\Td-{;33-iIcV rO3 R*qXz`VԄy"ʯbA|V"R\ьr`:>'y1c Fg~DʝFQ¹j\{Y=okXq&l)Ϻo&h0pI}Q;^t NPg) HIBKܜ…NoNAP % \N%QϘ 5IsD:8l˓tSdȝYNw֟N9].*s[%m!QQQX^ϡzwR}ctpô Զ|Jڙu[qM܂&44D@b(5Eo\` ¸Z!ˀUu?-i=>ig`5wSLjp JѠ@EhW2𴷿-صByl!OI*] }z ԣQt[f? Y(v'FaC`YNS}3ŽP;?7~Ӄ>Jż-Juޙ/UcwZ2/5hq{8M1蔡,yƏ ;fSy8`_Uc|H-hX<锪ژ}~q}!=}e15D-DhVP*WP{}Al! gVP "j*7VWN&f $6!~Ia0DB@IHHމfP8/%)`?La@a@)FWk;ػ9v^o?[]YSJ~iŤۄå]T9mRj f5,렓<*ݼ:bw|:=XSn^C~9 ^#NCu9T8B0jsZ2`Ϯ`tsQKk;S/S( g;!T|ob;q(7+Enc!L@ޞw벾WD63oU ch7z?n ּp G"Wd=Ū..{#ucs4{ke A*,X;`n+ DU7G<1Gm(sE1 CEȼUg%1ڐ#9V˼tqꮆXQoOæ5D)ޏo"FpɁSH& =TzwGRA&!$WSE$$"TP_"_aye2ֆlo?^ELGt&=k^$х%#~(fqQ+yMޑ9c. h@rMLQ@ED"=ғ"cI3]t|I]cDI[8\F+e;s euHnT=(d55= ^mmn5ORgz (6ii-Ϊ;*l/,Tg#P|OiǁN0} pӗC[w.{?XpU+DV5.(Zxyӵ״U8uotB XCl!r5iHxc<)rHkvX%k"nJ84xT4D;֌XUvZ4j_l2Uy%Wfb']NSDu_A-9!Is- Ur20%)PA*#Tnjf 4*h d(dJeD̑Oפ(엛%0p陴Ew.߃ sSbV , A4Jٙ`rD{Fz91=}&NYNXan07?K3Z@+z3ضk^ZhfX(ХD￘&c扖ǻ543͠'}A^;A"CRբ6 }'}6BuJi 9ƞ<&]FE{| #ZYgQö'at\/"E9WJUܮ$_QTΐef99%.u&tC 0%u׊:_R{eQѱBoSzqNi3C)#y(e@roio~$+\L}5 '6sWd ͌5X5ܙP.xC ?:|CRuymgN|vt]r U ydS^7,AxO7KW4ן1"َ SCc"_tFi memMHnILYy\ [Xbk kkB\AnP<ϥa:Ba_) FfrQw9KZ YF#@GTKb\wVz3G=և.I&Lc9j wiҗ6' U.ޘ4F3  7 /%z &_{VOX-㓬d!EuڠE򟟗SܘvV̅bP,r!pc*Y<%< c48Fi,bv8 %5Z c-scV*n6Ѕ777P LgJ\گWm#*XySEkDYkcʐҿj>6BH$$ ,otH -Q\(NmPR:Y>~c^O]߸E,II) Wx2i Fcn܈1ڬ%;'ퟡh) E({*F.靣XA[g㳋Y^^ckm=xnfc yn=鴘.b j R>9L'WDZhyכ6{n;, %6_)I̒8{Zuw"R.T 6*}F[6hBϲBy6/V[I2*j֩"琖%&ٮLNt7\:l$b~1kl [ XjU.Ϛҩ-ka2Y^ӣ#{峺)h&ב% 7uAS+_ȁ(Ր{ @}j0w@ӥGz&3%(g^NR/c?LiECa-Шp֦0Rr5"a,PX=Qgxiw >MKd6JAQ|u.ѧ|#H #΋oa/8bL=znb*ZcwΒ%[6@g6\3 :{ά-a#,\rLեc8ݛY'6u%x^&q|N5tԱH 3\idjWa Y`PdƱY@ 6!ږsJ<5\p3~7:jKF;iF[ UJ 瞢\آܟb-ƓKrծ<bA@9[adМiU~I~%VzݓsyA d'70oSuNř4[Wͺ]re5 EW0! Tej؊aZTTc_JKH'<^k/U)#5%Tcwv-`'٬T:lVx pl %9LV$5m$]&ϦÊ9&hYw)4,+/`3x@;)RXʣlgL~:H٫kA7-Rs߼ UG-&J$GSweU@f>“oZv}tj:zv@UP'!+s5QOM$?_@m 6ݠC܋$@K4K'B8Sܠn=%o˂*B iϽ5eBG8˝QǞ+d.c6!B݂kpb^,Ђ& ;v:8֒k*X5Yfҷm81zGt\<{\9\,ͽ(9Ph.֯/݋y9ITtbHT x@ xBq-o@D5gݩg;D->R{zs1>W w'/0̥]ދz7Dk!Y*@ !0JtLy܂y]c=(CAp[!IP. 9`Z`Ϥ 3 Sb㲾[ -?$# ̐~J~jAD-*#K($VtD rifTc [zx*/ހ7f$k筽Eu+Â:m` ؁#S'7x'd-Gmi{qd5IMy[ TĹܖp2vmuI \~+n!zPWs.„{/oAyN.-?E_[&.Fw}vكHeܗ'+yE@߾uyn!F:6C,z5'Cl{OʸHx{4;`\UܤgםdfAz͘' `T+B ?0fc >dn mY[q$Ufek|@O>vp1}8^ kV랍]_\YX嶭]<:ۭKX\],Xa [gzc_o`$ԗ@IcLKgޱˌI Mi^Z~E\reݡAQׁ>vW%hW ;̴<0Y _- Z)tk }0a68.8gI}dջGNlqe7GbepB+1i vdJSYP=qa"ls"SFO. Ԕn̸kǴ߬-^m(YuLDX1Q$;ecJcEkU5U”-ANMᴱwpkD^giȉfQD(E4Ac`7}ޱ7ňÂ3z-a:9P$S$gu͉J ۘj05@[,`λG{r,ӊjZbEhv0,]5E;Ci)׍,o4B$o%A^Ѭh]jxI!p0d?!r:Jd-"s4_״QC( ȃx#ED1 u)x="BgQ\q<׀6L$4/#.)LŗA xC1?ý$2؟7 kgOt1= enGE傔`{ ꕖM0d{(jXI'ɫ` eApZ֟B}u/JT$>N޷]]}fx1گ6.fV ]SNI8p4I6lKZ˱#6h첥w۵;sd/nbBp "mDeL'Su{B - (㠏d3~a+M_e,b7Np=5w/M V\VM$~c^8a2t+&8,k -9Q#$pLs5C?s ֌\(Xd$[#'p}h Hdƿ&.1~ڎ60yE:$K1vIwT2= -9H=dsXIdhlS}0P%m`mzEvdlP!DNer?;j? K̍j+TF0ϋ hM 71nnD5 ѤKI@| 6HnPFA|c O&ӣ{hs&DeqC~-vt/RDr:a8::369_hZ6d009rdȿ[)԰GmhL"p /׭p~2Ruc\q7YVLH$m? ߽O|Wa%YfL0 wbWk_ca$SZjGgnjI;GZӔIT/$uҘ :DuxL1w Q1VԳyсhQ $vRrl5xwZASThms^eۦ|wÌ@51r -ϻM9tZ&dD8Y6VNb yq_(n+8F2WP2F#C&pP #g?*"Wcnݳ n&k2kICtzbaӧ܄\e/JfGw n*/5|hb2O p/*!4c}Q :BX*ʭ3s+L E3ݎȓ#F0'tMYEO wN䭦}kM 2|I~60/\1rep&; n}`p]1PJaۿl4Lw7&AgJ7z]GTye6ďbHe2=)-o1.X'TQ{ u׷z#G9CLl8/ !"<Š'g; x OOշSa%eJKd"08bOAz-`=B6v#M)9 g3TNo.;8Yk Gl[|H_UonF#)vJr}4L ~=~!K!*^zk /{"V NVc;`@-;j(ޟAgvSm-$엷U~3 Ggq[2N5n`boP0Qшհ5j&<8 )fwsz4@סv1N]~^9h/Cx-`~c:-!l+' cٿ5ڞi)+4qa(SG ij޹F'7*Z.{RJ+S'pp|dμ~nn5D~^# d+*]h^RhC#Sm̒'GZ4[L$`llXrmӵ =d%R6C(T2H(98..o!:TmTdQxYC,86aۍș'(u#v ө YO1h긼TBطV+H;Kvr{M=V M0X=i5լ[Js6.s6l:WtI rD!wMIⒶiD^?F:~޼ 7W.`;=a. $W8 jv^H 'CKj*SX)AUZ b aPAkoP =mX}Q]Hmc5qyݚ_Qbg Zd"LM $Xȧ iAފi6i:0XXE+gVaR:Ekćs1K KLշfg]HQqΑ ,y bwWN~&CSl3!Ga8` Lō&-f3*QXhm*0 j9`==9{NPnΥrV{ʰCTt0Ֆoy(o]h5S6(Cϔfۓʼnpto5RB>O \2 1KQ/:SrK>w/H qnYuOWH^@.e`ֹe[Խ %EP $WH}<,kFN8A̧;eb/'D leZ*lne/?U9uhK^vW *Ί?wGBACA?ՙu.:m!X${ 1YqTEzicDˉ!D&'*jrGA8tnڥ[o[nZl ν:44,{N`@;lۮXGaZFQ8="%@a,NYjn2 0)_MIk/?\4:_TؤI0[ɯ޷8M!)4o)6HRm V_m/QSZU)FC?HE vYڹfݿ2ae#$sllsKm-hGq5~JTboЭ*4 &'!3HմE͡duHK  fJFqX}d{ '7AK4Lby*X0(1u0Q.("z~aqC.R"SQa'h[#C"D',Ҷ{?BsemnC}?9uɾX@*qd~۩^7v [N>p{GFeCzb5; LH+N)Y^&{j++ t3u\d;䓁0Pz-")NmSTms̿:h\` XfPh|[Q`*H91i㫞odgScuPM~ZQc#|) HE3F^ $P":xAc+\o zrH.o{~ P/35 G"Xml M67MyOOL~LDOnA{c7گZIsj#UTÖ|CO~ksvM\KW87'SXɈa5$NTRS ?V>R;ms<` $]ݶLBq u)w~C~qa۟ڪ/JXy h%'/ў* %D!X[.xdv B惌1~83㖑Ʋ\ ՆkYȼT~$ΒE\|'e%"ĿQ(H L{ ƌv ccenB-XVfD/85`䪻s9ڳ5rLf6ǯ9'_qnÇ64 suG{W¬.{ fNYvU(ͭAei*V#yBN/? Bbu2î#G`acNijJ&Œ"(3g~қy S/Z .tpÌzRf>@?Th'WRD 8!Ad#R$jcr_}*]cH[Ă79=ڵtF=auhUS\!88ړ<źƋeE3fp[x.)jZBj9 7lE)%?niI\ae)W$Јs RN]7)J',.d?*BҭAzG\P>b|Ґ Hr3 j*cvNg\"c/:_PQsȸ]L:nr\]UN5޷ͱF Ў>33oKcC¢/=nzfCGLX1jNWk>wS_-m;ߚ^ f 1=g113AEJ~lZyMͮtpq*Da9A&ia Mฤg;jj>kku{NL ꓩu>epzHHOVMB`~M/^ 5 Vk>$3/<]$}t_OvM ŵ' ,nLBX`y\PafԴ*cOj`dKbH$)(t]@Z(2.̐O;UA wr(m˛j?A;+fr3M?Y-ʃ9-ʒCޝʛKP[ Nd헧7C?f7B_*|Fjj*a3 i iMT)pY#zo=J$&o3~⸢&KcZirK0GY$ .Ntd!jPWe'bA[c+D0^&C'"/ Ev;}0M_74jz-3^:GS1YՓ:p#F//8=|[C̾h=psՒ\vl.$7ųmU eHı~AjWni;0irNVCF?s;͛ܥ6.dHqO:MxzLJ/x. E(TfG5ǵ]>Di`D*!zC-dC|a&ǩbԕ-OJgn ;V\B?pջ."VJACUJѶYwg6)AE!{#EW%.ф{LV*Bd 6$IK,.0 O/DSǴ|C6# :|F1> mc| `Ax݊<uUaW g6"=du!j%ρX\o:ehJBE O{yƳT b2^5APec>az؋ dF~䍋<=a~V z\q! #(C{3xFtlH&$wffX| &7>}=ڭ2;* 3⩗ TPAi$%*p Ǹ.Fd#z3QO*κWG2ʄ,3=A!3CYi݌DkK #^Hf&]Y^xqWܞeCKAPR^G&9b]~7GxN;`C7Ϛ4 Xp[od͝7b[{DQ1L.fļ5~YoOge+L6[C ׎_5m\ RV:XSkKB ItobsIεzC4tvrh3 -WIq}Lcd$kPn6&4eBi*5=nguQMk_@@~?bfDEb?D3: ?KRY!2]֡BG뾬8`*0B.oHϡ'Tch9,-7^9VMb!fߔұlkqfjYNbϾ܄< Կp~3f%sKGvaoɷaIX(i]-_C)XC}*[iU~9F8_?bYBgi+Z ќpaYvqPJϺI C..%b bh?1 z:n!`>j|ʑ`{ nL݅x}Fm $ A@FOiXJ_|+L)6>JaQ1*b@RH=Q'$H55F'߳ ]+]ʪ 6(f\`wJAq ڿNGKǟwLGG٦8l~lFO;(?6mye(pF1jgx¾lCV"/W[%*G #}HBƶQWcm %iwtD&1?ؑ;5jfc:nH91!#Xı9ˢ{V"/'7 Gp$Z{'hqp5S?Ȃ˯N+j9"lYu[֙tdk Zu t&t۫ {1Be p[tH<&CKYN_nA;N |$.S9W|./*.NJ2Iԃk!}ƾ6xc)8o,`dUYT{G]ʰԇT_0fp:| hXP솎Qz˘vg11h Ergx|4$Cv16q]_27Ђx&tZg`0b"աv޶lsݰ)0`ʦ\GR-N#rC)RەAShk:-y*u~J%}9̠-$k$oO\4"o=H~)МHH@WH+n&I~,l3DԿ̏:=L"*Wqy NiN]!E, w2ׁbجŀu"P];Zcmh[zjaa@YQ#ȫ}?MtU F5rv-BZR Xe1$?wh6nj5>(Ta,)c&㖠PHMt7'oqgٸ>=p `kPvP.SɆ4&cRwڎ$Lgoz>H+8Jw3tMl: 6X@kKvVKgE3RȭLPQb:$ ShsNe$TCoDo`6(WOʧJ2 ~k҅hūWӜOr)b`Z˜Ъu S|?@bcRhj+e&x֠ £ 去?uH.C#mH1Ac:KBr#yKV;awШ4Ȥhhj>]s`饀ЯXtUrYRjʓ?x]$wM!%,!m[ԯ7Z Θ&mzrfG5:ttWUUB2#pU5wc^IF);G!ȤvBZM@K:v[x:+H7_a$g9ψ2kfcnbEщ%m.0_ pW#IW.lT=H#TƻlƸ)4ǘ[?nL28v)g$㦅qkpoW_Dtmڽub+3`9(֛G³wR^cCwݞaQ{C>?3f%NWӷ#!w)&Dp?!aB^zT( vd ~40 6 쉮|G?쉤mάK7 T>;' ?_4vÂbIX##|@_f;#v&=]Q{t_`M<8uaðAA+sE tRI̥`w^14sfv~D@}Ppk?q='}'X '>FɄn!qp9r\ qq8)W>6Ŕ@w(#tJ  KoUGWZ&:~Jx»(fÎ+ЖnKt6 rwP>/iMCޭk&}O]"ɥG-N4t ;X[d_A#{;* 5k)+Zݗ@ oiH)?jӫ$AhReڥqvZM]e0u4T3#a.D/RT,R)`'Ca(DH~7DDzʜ5(0Viٛu2RyY7~x T@ MJ7_SEӤ!nmVXq#vDX ) v Fr)[fHFޠrbq_MzB/K|f|2S[JB}י@VerŪAb4ݵ9$z? &0?4}XYAf Q$h1d̮t6{ D&^M.]6DlV5y^yח6׶)Qҡ+ʨ#rsV :y?{hɢ3md]C؂ʷJר2?%'Ggi0y3U9FZ'9?Ғ_}?˻+&c& w 2\'-4T4k嚯'qcR.Z&-(|T߼3<LE5lJ芵ZOmQ e2 iT!ŏPcf>N(F]2fn{XNf8mK5]pB!3 $;ӐRmX`R]Vgn (Uc&t' Jq leUo~"͌4Lf.>w$BƕsMI@>K{lyU,PDf :YeAK+ij!4Ҫ׆cw8ЋX*]бܶ$C--5*^2c"N:q8uy(3+0P(3vZ(XoPqDzXT-e۸Eo1{ QUllXqگ!6jM0nL(Y5_H|Iy>KMQ󝷴TF'kcm[G=̉bqaıa [UC r?bbeB gEVm o[2@ '@63PZRF$ǭh>4ڿ5[R=_Xu]*bO1*p2'oLhCd4;( s;/CeQP -]ZZFtl@ڂD2@!WcN&gy5BKɳR2P9yWMmjEu$9e)J|Hg!Ƈ!ԝ3sE+ԲB&)5Whǵ&?HM<6LD 1k;ʻף (J,yY.2LPҬBoq G<.7\ȗ PM}K+U;8?/ŊWʳ}ŶZ۲M9aSٱ@hpmx/s{{Njɫ_Qs1'ДTTSЦrh7sUU ”Ͳ nHrQVq!vgLOXpDwˊ<8]}=\;U'ΎG Joç_yQ?dt<\E-nK=la$X^]E٣[Z|uax}=#O%՞մAXy+27~4Px%]"Ev?! zD Ug Sg5\ b?.rK QJ $898M\a݂OhgwBag;"4 $k7)VVR'|nTIw}6UZB I%"-`_>u [ӫwnM' :90sGuH:@mrL1ohI,Y咝O`f$3+v}<1K!p,gBHn”LtR(DNA%\zԹYFU-b67q #(GS[Ͱ^g 5o\[/<"2;ȝXE Gw\C`aC:nm=^[Yߏ ~0M%T??U&3?t/3( `aJJXh(~ϓ b'#LKƊh p$0ޑ]7; b_h~f},ax/R`Y |W(c/{>)n>xvKE˧gc^@r2֧O{No$(%Ĩ'J|`+˃b3F_,"R.P=9Jĵ` wo@&5.,!U9^pcޖ]8xBe2F J"4  (Y~%(Їe+1jP#ŜpHv{ 3W<dž@Qڗ&\w j 3c@lQ &J칯Ֆ$p1B/0>N Ad3)cűۑw9[͉$sKzh ٟj'߉2 5.Cg5!#i A'2 7| öKUR~pDF0l`<i=T; T$nhm>s5_E 0ao~'~6lAee؛PFKʂU׮1lϗrVA24\xfd$ %ڿy+8UYO?5Joڝ a|\{@_gd̝c= B$̇9DqU-oPCwOh؀iiOdo ~rnIoNUC.:)Һ=P~jȦfhJҏ\1AmD܂)rh8q4NB-5-6ߘmR8%妜W8Q Nc]ϣ &[Yр6)۠H> z[]½a€T+z/8ΐ̴ǧЪKc vMMO'i`{O‹0o3^f?,DDžX6+Zo%7ˍE-J~N0>yfXVUE`$B S6S"ԑrt0pO<6tt8?k1vU0 X-u"+jE-֙f;9 A. [Ґsnu]o SfuR{"c @>PtK@w7Iy5<@w}2N:؟w2ηΟ"&L15G͒5S>П#`0i2ԕudܑ)|Zu0_z1\ѥPР0<?}#*`zU'%#QyI![LRaa**8 tk:~ ]qr,>'n۫XDPuKcæ`5Di \"Fes땥&)řƿvW~7~BHPHkG'n(mf9渚̏]oyt[(~z9pzyڙ|]sbS7@e=ezgEU|pk" *+ M=lEFډCM3d[~'VNH cn2 0-w=Bj(́ͩQKfa8/rf)M )~MC]귚d{[%tYLT\]x I  \#HK\V/!"݀Z"DC[;eb$~hBt-ǝW@eAq=?{~s.-#ܞ{mΛh[4WE+]Ma*<+YފΉ_Us5z ޿~0D Rh7|\vY4t_ѶH=s -*W8 `":6'=7TV}1F!ƵI4ϡ(%2(Ȣh6sV}GEbo_z_ԡ'HsE6%)P&-c<%*XmKD]L˽*8D"f8G%;p\YFWP9R(dǭt׃+#m{|~3()J'-vDKuf:Fn 534y}# @ZfOn1J"5nA_w|l*=1Cp˂ؘfIZ,>i0r`y84Nbm>ro Dƀ^=5̍mkZov4"%XA(❘ XzVz>qQQ-9q#ȈlHS?=uD]xhΡA&Ն*&w &f*chlA:;A*Ui:ا<-ޥqSJ?:dwn!r0˭+?$soVwKH#b>+[rh6yTs%4j3u9MA+9>=.]ahrcvDq]zx:yV줍^랆_P%$g_IM RkͅuHNy|'nc쭘.[2XVͱA@!Rg;t.nA [/xԼvWͻ#I`Z`54. NHqG na.%4f^wbyZʬ?-jqd<)rՃ}_K%r缦F‘`\l`elGSRD < py 'Yl G0!E&>2,Ϊ22C4˄)`.(u)f:}A3NXϵu\v_ҧV]nZe =,9k v _[!01^OT^\~ɯj +Nd/o+|$P2ԤtiEA2[3Tdi(d4{A.UtJNRt*>[QcYco^IQkR9(GŗK Ӳ$ UkQ҂I+XOF.wN#}^o6BQ]O,KZGc(t*()Hϙ~-rDiOp۵T-H?NgJ,xE*CHw@ \՚b' L@g-ٓcЃ!+Ƒ>^ܽCo"p@ ̭ۃc+~ny咑yK^|xYŷ po"VK{rkbC}Bc0vtv}Zږoiד'4 2-3ߜ'UȋTG;eD# ls%hJ䌋*\%pޠ'Ӂ)%1B5uŀI 1FUOI3%-ʊ:/gwCDB{B?-eH#c [unLѓA~>֥/]+\[, MLh PqMdS2+,5e of ,r<<^vP0164^% afk!JxaJ {gk\9:C5a! t'^7(Ig[m[~}ISytrDM j5:޼tD7+mw}& )&-\7_U*6FP}r6]^7'RG`n%*:ϙPT`دݬVrj =`a;]j&PN$PEY :0p"O(2Y4ՠ.hhxs 0a ԛb,͸u#;q)S|$ Yv DX>^r+(̇l}E:`\ ivbӗ&(U!e%D*$4d`}(תhd]l”] `Xi6Aԏk r7gd+[+Q\EyW_o.*TI5\.;}rf膠 ,8Sx".s*(%.#PAfBљV(DY]V N}'{uk~>U陝WrZy}G)Fe<j:p.?E$ hH&qS/2+DQ3t?@j Owx/Q2ts6Xx:ZPMu;I;- ÝiT3R/w7M1 1--h$קɴoM@3Z{e.] ^ɯ.mۚZddEj G'is=2/ qk.*Jz>CCzI7.[A:&WBin>*ZXlq/"!|TWQ]Zlڔ4S'eәw *"u.n.gWMZ)O!fԎ僱yKA[vuOg.1vrb]%gT]<<&ӦZ 8M숦a{NRҁĪEUCEPˁM/Jߤ|m Ԑ@~3} G%l['rdoymU|o֬$w mS|-17/XR$~FMZwo I L@!r4͈tJ-& pb'Yn`ATit:dO~Jշ0ι%\dҲaE)ˡ!-''e>gfa?tF9.ɞCRSk}_SU>Ҁݚ4+< m. $܌I[T=*B,F*IlIk|ֵgwb.H fGX׋ .T|c6գ돹c]A&kK/&]w QYMP̰GcnIEXU<&v{{;.] wP~L#]o>R9 8Rsr>az_2H{qWMc FOQ'B증hׂK5wVp%ͽrv%G@T>*J4מS.*v&lbT1=4Z5yp'Z9;ZwԀ@zҮc@[S*pF:S-GyiGŬ^=5CmYl{du%ƾT qԆ`[(uGeX#C#;6ڍ@N|s JFpL{\>q+S'O <ݜe.s>rV,;VQ)PenGM"Ymvz 6O=@SW;q-n. U4zjݦ'jfފPma sWӿDI= %و+6@vr2*\W|#wDΚԋ{\ncCG/ +靖ug{F ˅ Ը#ٹVJR~sy]iEYY'trr"E`I%`%"fvÏhf51z$#LsIPnq_ rW[!}E cI?UBgk=R|4[jxn _;sZ*0ղ^JFuI6 JnxNYH9-,FS< zGrg ®dA#q;򞪍Nd6ũz^R…!mΙNbM:i G <^Hs\|E{  kqfeÑmi#FI\f8#ӪPI8&kKw.k;'AGIX % sQnZo\ue܌I%$LtNSt!΄۵Y14w ?J[t ~bq sOyXCro!:,m"ݑX;=~grFYx˜QoZn%XxkLޕ KF[El$3i -;ЖTz14j݀^d!-P(4g^#tl`XR0# fWZl|HB7w6R\M`kmX7װGA-*޷U g6_kS<!t>$Wazr_U|d@Kϐi*oq916^nH5ҨO<`Kj^*olg[-ܛ}6q;g؛$.]tM3o@UT}KI<ܴW=8`\h!qG2"7[`x a;8= p6!nS{aب:lmjq[kɋ[\A57'_L 1t0ᩢVGha/$lB?"`fhos"" 2_DeI1FVo 8p!udwuK{8C0Wm.cv'ҏM*!]{NO` edv_05it׎o(Lb0Cb˟t]-!glvJ"LO6F:}EtB $QC&}Q6ڏݯѽ:$zN8e)H![ڣGĚp})A[=E?Кj k<֦7a[{oy9 ]ڹx֧a>bE[3:/?A؍36<+nJD{.NP'v; p=¥~lq|+z+”: aI?r>YxLzN.>yvQ] 6qԡO^îНvmrX7@K'jjBJ*•Ǣ/W\ nP!=0_vX6h&OZz,a`c]o;w/i!rС|4'*tnyܞݑ l+IķK:Ar'xmaeڴ|j5"w6uYǐU і2c{(K{v$9J jX?hNAAp%IVsow2Waj".z KmuM':i-st:+rX h꿔vs8Zχ#Zf<]=5ufʹ(Y/LSʃ}ݪR0ڣShCHXBbypd,ǧ1+;IL(#R`?n=kPO>1J/BDA1s^8&c,:02:ܶ\GLui/tcs+{M*[dPt]vgB'5m(7ERvSa]Kč豧]en.' ѯ/rȊFyXmΘEw)%vYą\HX7ʽ#8+W ςG)j&}"E"҂{l{saq=*&g+>&zֻ4:?ËwH}?3yCK8;?[^`.s)4m1Czݶ^"jH$zJB72pD:7 D^mot9ig~0I!r͒YW]|b||@| uS?xb|V3b0Ͳ:9ǗNE_nGU-O $<K|٨!ʹތ#܋˙'HNwY7dyNr\8n!ߎ9m*Wi' T0 no82|d,Z/V轄x1aL_CyY"[Ijh1uLvKeXVc.vIx)8/j9CcOК7~kղgay0"q1zZ$ ,CWJoA6FmLx{0ڿ.\mJpĆT+Gbkg9E@?<Qsn,y@/o*n6F^~;eA t>aA'V>IXj.Vx<^oC:L ؂Ţ.7 ` t(E؍ ]+M\W&$Mؐ+Arzj˫ކ4%Cw:#.~7 T@ nn-t 'c lBvGGh K3ӟ$&} FA1i[qa_*SMwVZExڀf||s<e^'L2 'As ]'V(I9:k)Б[I: dFlڧqZ;"lӣ3BD+_(Q "AKeBQ=+RWƠ`Evf5dw?yhqʆJ_x#D(̋I>7hcS#PO(+c0fOԒL84 IU6ffSB{5@CdBQKlG;V 5ac=}Cd0] /ƳmcZI7~I +pM"̚}QׅlT#-x%-9uZD5JtYGh5G $Lp)Y-9+I%iNd ]#ZjMnҩU~O6 qVmv\V+>qTZBۼ|֥i>%1 @:9G0/K(b\8EW@ ϸM^ÍDqt#~X}p|t#%]Wwt&J!ݫL ˏu1!fP*S#O9ױx5Wȋ@RT0CЈ]Sm 1x۵/jB}Io`jp Yz /V mc`}B;|N4)e<3aPED`=jJ-5d.teKB"<ΞP?Q Cq(6`>maNh}cIկUb$T}H<W_쭒'1shʄR.yXd2I=.k XsE]a*Af{6Z %kDŽQch%?rifZ"Ϊ-z#^( 0uJr0;,8C1MIma%$[ЛҀ(/oѼm%T?uC5K9_}?l'AEKؖefqbHY)(X^MT)f}b )1i^Ϲ5G@Fd(:u/(y+gq e &P "BIdp Q돺`pm߂+ԛbޒ[;ʟj!Sd5Q8_fSGZ!'^uSFM qULuC?eE-ZwfNk)f!@".D Ҡ=w?MNݶ&u0~†ޅŠ-ͣ(S+kk5enǍ#Qi5=DJi$U^C*I+rL R0V_Y- !jg>_xo#%HWN&cX+P5wEC(lveNN~c+]_8ZJgDzzOvZu)گN-/*NdL&!f "AU U^grj[p2FgLC Wz?V&vvo=tn~s_#|(qwnDY @>-I'#l|sZoqN*w,ǃPA}B]Bozs

 Ny=ngn|FUup ]NvQ vqW2[ '$VN`vւFV"ܲ'\/1>Coc@ +!b M@*ĄnV\)Ldt5x.jfUU6a[V> t}$P0v& 7\D1?ד{}^Œigɰv;Qb'_Fp:ݟxPG!%ZptpyE o|nc,fg6+`t6nA择g"%13dl̮bkr "PKk9+u|NpP}5t)9g{o&vynqX(ob114"@\HlN0A\'?XŇGM}9P$r,a?rVi4T2.*o/M4ѯ|! "9o| W-?]ZX?Ĩӈ]C_ Q.۹RY2Hum )rHlIYܒΑe\T,wj^:E%s2،ŵCHmSa IVdD02Q;G3|4{ln8ºeq.W2HȎʴ64Baa9-V!S0Hghi68RRl`3 S]鯙M./M4\ݩX=}\t'r&e7_}A9#2 yTI5c[ b!eF1'>š_oI9hNX7 </slɚం@V^0{\D`K-_Y.YH$z};|HI/++.rzēd28,{7Qz~*7T>y<*',BYdfiW_/u-0ҠJ%Ճ&3e1n)ͯ@b`K) 3)tobƵ/ϳ> }3 zœCԄCE{eЎ Abi-+Z=}vW(B&?s-E6)(=룟JӲ#n-EϣFTk4*5/MT~4r?6Džc/ PGWIb@VT۔WFTL`\x&0hH Ƥ_rJ3AQp(:C^&C_t@ZK;|uJr&aRZNASˣ/# >߷Cb> *Wi#yNGUn|gwpPNvBobqb=b+G|;t1F0u;z`|RhDH$ G{Zc^Y##k]CJvD#P}Q=[a?qm Rf+K3 hҰj:ØW_8f+uf~5YG/4jenM} %<9Nʂ:b )DMIx~4@ x'/s$_o!Cduc&JIqn`xi_$i_t!cEm tJ∙d0ze&-w,Sw)MbNNۏ+jƟr/PKDS`*/ Sf)swP@qnxbePy$Cē|L5cao¾ 9zk5^||MEĠ Y}W}S Dr/n "͛zFF88}dP2^9u`gb>BLec"ZJlǎ@I.Ύ |ءiz#J> zfcP>M]AsQkf-0?-bl-T Ŗ/RztM͙ԧZ<r1}IkOd_sO_/!]f5ȗ.};2nsH$1>zCV}>g8Yp`:oÃgMmY Zs$]V2`I}Ku_9"/L"NρɁΣ,9n$:n;@I}=(?迹<_^凯z.v7:_sUkYm$q:(aߚcpx-ڙ c$-9860Q?FL^*Mo={)y LѣkT_8oyY۴@h*dNҪȼ'io[\?_Ƭ iA΁l2 ZtG [#8TE_qLOsnp";0o ; 7LZe#vGH2dE2P4YyV:YH] tGS&pȩIcFBTC6m>+sp|ɔMVv0Qr/"Ra=/T]z*Pf B :|DoG_ W_Fׅ&B/z֗d*^@)&O%6 @W?HCTl5I=:fTZ?Dl} &qT Y~x]M {[YD0!Ȇk#&\iqV8iCSqZb|9yьm/U6 TsL37Lб]~pdCC4gOfT#ƻ(x| &%H-Ņy`]Y`Y+>SQHi;E 9W^W: !w@Q&-0A%4g[M!ǣp*&*9.]G9-řU6"Ӧls]sQX:! yr3LK孨ZeLN>dʊWnSv $ȣ˛AkA(=hn/Ž["'"s(늷\Jg˞JԾJ[Pw2,ْBEπ0#VM:".ڞ# OC1mj$v1t̅4%Avh%ُ PK(-aKYŠ34Gt$.PGS|diZJz,v_E::(D}-yDzMYym6'"T46Fv{kV$s Ɉ\WO\–*?ց| <8b<;4LY,n '}"-!R&!i9!ΪɖOc/ekx<U/q,%MwT.hE('eba) `"_OêfcVΫ`(0lNz BrP*V /'ʀ/]+ 3[U!Zu3Mc&e֍6Ps̗Kuya2ӜX8 `~TL. la'&tĪDt%CڑQ #"RiM'3Yr'D&f.xBKfm2D!%]{ʧZ OHH Us݂?m!zIZ^6Xk0fC칥j6LM (qַ?E0A\q>^F-Ut;3U`{e[F@{XZ˘lfM![s+[J\6K=) d3p:١Ɔ|Ԍtb5Q['?\!f)x6v7б{\ƊE-4xཋVԶE:hΰbnq)<B :@1r^h?IcL2m ? GȹD =)`V ‰Wxa0Kd/h`Y#[>#yaD:=y0\R>r PSⲹ(3'|[),"]άp)MGe0x43hE: fu7"ܶO4, !9$jUT=-%wgQ9'c#F+R@p(7ZG+ Q\^}*".;`tWL#J[W^]^wAlSk6~֔"aaK$'5~ʹhA @ʐuOPg:K2c_gkGrїj H?8̳nHce~!QL[Z ]pRSҖ䷎k"cMk0C}̝& ۿ48,4N# )QHn<%THҮB*,\m)S'%̊xe+-hK)uUfUeg n9[3 ֫b@`HE_`E`yKv`f OD0n:OB> H&߿"t$=7~L״H -0mZ;nvڭ#;_m,'Gݺ=)l9<9)tu >¯DD pH0NF5F$\~SE EOӘ{;t-P`DZ)YukCh6r e_{GtB뮪A[qTǛpN` X'vEPT=dj56yc'-58iN#t^׉4dsm̰%x|d+ы78/Hdb|j]1yXkmtQ3 t"Me,yY7=_XjU1}> 0UрQd?y2jӵ,Yzb,t>ol-پ>bmuYZ':x^;kj}âu&=j)U BRY/1/<41qb]ͫjQ7N‰Hg{&|~~lf}4E3C)`%0IFt: j'H0In6";7sL!əzI}) ^-t!h<bdIqfmxQpy3ٝȼ~WZy :2,N&(_n0YӴZU< s͔$dFnp@~ 3A 5< !߈8Jz[,~j1rJ(9O[k?"1 %{e~ijPG]1AόtuNLF! 94#gzhhe1]=7ϽlUiه4`7e&4N9*6z+@~"Uq;w~moouy O6ܢ_plLj# w_^ݵKq+o [] 7~]֯gޖ72@|=Lۆl&,cy'$eB*J ׉I<$ Qr{5\#}y-/y?KA[VPn-7֦yx)Øt S;ˆX(kHs}Ē)}Wԛ+@z򬲎KB8^Ł6LBtsE=^/.GD; & \e$zFcx)? ?f؊M'<L%OjqƲ mj{0MkvIԹ^ţ, ?5E)S`;JufpH {m0DEep'9 3*:O*/B+IUkkF> V"O ;&G+Ri`h-,7*K ԮT9EȔ`Z ={I AK4raCSa!WF}rq6exm8NJE?CeY_<`q.I80\]?0 Ј;c1] Y0DP|l佡͢&mҵbػ9}kԩ[C2m/|ML ,Vex6ʤ=QK_1GTj',,rڶzM>@vm!JR:jX$JD] #iLY"Пy,oh#y8x0AL\w7dP:! *dYZ9dQ%dk㰲{/j6{qME 9= GVyɾ41O#S.;EʙBoqܱ]-yP@uBX]hUڮl|I6ν6ԠR)E_ibNԷVyqv=;IA3_ HМp1*Q,^jBb#8FÏb֟SB7ШV} 21dƒ"YΤ ig5XބHĤ08gϯ"Q戵츉tѯvbP7׷P;fB1Kn sKyx{~N") ;4!ᇣq1n#)j7A-E?A -CrK3& qu[,oGGem/Cp ,lNO8%Dd'2vCd$V:+V~E&&^v pakL&/b 6n9>Xq'p@Jc#CC7`VcxXh%v(ST{rH|#sQca= >ޞ2sVY#Ck <<"].0kez>`?kL#,ӓLf-xs&kQޖM( G֚`z075+gڀVXy6^+ V#9 6rNR6G| n;77y^>9GPw7kYQ5b| kzx#IZS$%rE/<.:ᴱ, 4(Wth S; 6C!VGYN$+&R'ފDn@x.Xz͗Wۻ ^n䕈́mhaLM5Hg%y͹qkdjYj,zeІmJ5jBM׬ċ9EF.,屑X@DFv0#_&>DK"=G',~A=Ls(xNJ 0_u7L\.О)-V%/Yp?:ZkgA'aᗡ|zM<#S|a(<OSno|boةSq@27Bl}k¬$C9iT`4C;.y((9ǒoyɻM ="ЅϙtY%1" e( Th~xٱBHQDfW*ܕeۣGSIeR@:JΓOz,/k O-EŸV=2|t@3yЇߟy&K6p!u<|+)6>/8'2sk"KoLݲH@Ւ z;lf.}=b99&ixT٢TX?VhZϺMR Kh%u>öBBO6D~BLzI!}5&t|c@3xM _SKsR;\ؿFͥ.'l`\KK,luЗ{ P3{t3G8 |@[Z&G受f'޴y7a "pf0:D|`oiG6:fn]Ϣr?mtyo0NdBU|, PS} t""ܢ0BTֱWSLè/&Xqj=!B_9Si_% a1$* ""3 s[CAMҔ1P RMA3rkX?&̌T׌F&aG +eE7|`MzPY{d435+PP$IG:GR_m V̽Lrꌌo]75'gw pJ0"54/n4F`{[cU \d<ϥ,jbf2˸ @ 06$|[ -ka'1\zYp"D#㫃?П(UlQwo2xmxNtK'4(mGXʬWbXFЍ(aI0W@\7z"\ ,G*߯Syg"ê / C =zcrjD_ "p#Tr r ~GPM27f>U/^l0}|_&D ^wrqQ*fy4c3݈y4`Epv{%Wȯ{v+ I0nh6ٿ2J ,cII2s$#$%,_x+ǷBl"n~^$G~H`v4b?O8/ZKEu!v|ܯF{&'{O9;ǿ)l~⊘ e4KUsP"(qy҆`u0<(39nJ1qۡkwųiD`"/ Ϸ ^N4X&.P<#:tEQ N}[1A]DxY]-pw961sPai t:g("E iy9!ҧLC0Ϫ9i-utE2MRo.ʋWיDd4ߍ̖5)# Lryq4Q] 0!=l"Bݞ )k 捲ȐϨ^-e;RX_ې gxL_Dh%&2iMM"RQؑcLL]kxj.:?4aeY9Oyt"y:EltRHXd=cJxCNF!5'a0s\ƏovhBSqFy]Py;G<3GT?6GİRT&ީOF2mpU+heU+0f;?0O 4ڰsi`Pj\ɨS=&';yb"o"$ꦖOA ȳa04?|{Shv$oNMH]ХYtML!βcd>ԙzAJ:Mw)V)>"T.M_.}#P{LR.3@&SJB g%.ώP2^BH #WG,pOq<˯r3,[yۡƐhu'Y `Z_N)XT@GDLTsa2"cZLEw XMH̦jkURO٭]mU3EF͋QTH~ JDH ij[NV߽Sj)]!ҫFbn%/A odz?DY5 U1dvB\8 m?r:"=z6qB(+irދKHo֎p_q:L8cgLZJD;%93'/>XpbURק_byc'f+A]SZ!܈nCPxL-f @C_Z8]ڧ_NOa/9.M;1*68/=Y:pezÞ)Asu?AJJ5CpZJoJMa'vlM1Td&jx)X"#C iAWsM\0s1[NiL'X40(jv"p!Q7 ( ``Lh.o$ߪS01ʢ0$`ab8γVLV6vjt/<,NIp/їDZ/]?1eVD^RbI6 xuDy(9Y 0K]."꿗wb 9IOx*;庺 0 /o7ʨCa" Uۛ?_$eW7r"I:g=^5Y%4?#)W% pm’4g{y4d'LgZ`n#F])KQO- )1Uo$xS m%N[Ɓ:y:z(~> 6 'yTMJ. v #-(= Aވ}V ['c2X{K8 ŭD+ ЀmɥڅIk3s&֋:9'Nr6O%թchA"p ΈX\po|ǷJ\ TuB>U\b уjx+0wč t= ijvrڰ#B4ȕ*?mj F>OTRS6}';X[i 96=]L6'5)g;ɄޑBj; YB|Y`L&)dZImuRYJtzJ@? B((A`5&2E@J7A**^Eލ'1K0sr+W5aRj)B #b㕫v07n)⮮2[O0ROd߁+3iPAOg鱢L%p%8S@#Yϱ4)9b™훌9mc|HdYrs{׎݆?z%^j4@d~[ /3:eټi7[~12/`ʃD] _YR {O<y?M"qL" d[]oط1WQvʽ~`><@V&G.uf? 捙'?ͯDC qV=%#nv scpX~x^  fv@m ̋_'!cY4>>1THzH%iw5} sņ>%uԆCcߥ|,:;ET"ZV5ǓQptp{FD]ӴӒ_NApظ&C 5MWjăܺ6{!bCEڸ2Ksj,- ^iNaŠ= Dq:,+"4f6HޒIeh׷\+;^&xXwTw )MNDlOF 5/ew?ІYon1@"WQ CwLv-fZأ \Ҭ! W`$W9GQJ?_ ^dhjIl\,էb {eiBqio9pZ7NQu,/u)O ll ޸^4 ug j/:A) 9YkOWay(ט}1J6}4P|{` xj$ G|C~Q !"x OJ=\wi{*?{9> _fs9?Ę&Ilrad7:4J}L&u=uёLs;knY!5b.uXوHЦyNMW55^[L3ry ]ep;Cn v|N61X8T4+- Y-^_xya!k{PMp}m u2k'7Fz?R(EOd2%I`+3(mS̽$md"I‰{#.Op;0g*f:r׮oyJR Q 5 q, ThG;Yh>*^X}ݼL'G['\$(M4I.-&եC0I..=/(?2?x۠j=N*>*:֛؇' PXXbuC5@ U_lŏfR",AjsO1DKEB"ЁWR|[9 cpRfi\Y_1gMzRtcv~鼧 d.6w\Ӻ.L WᕑbE\)3ϼA2`.exr"S1 mAizuòuqD±{WcyV1e_23)Ў(JcMôOg[H<}M21S4|ƼhJ5BϭJwYB[İkX"{;=5tvWe~)d|*T)QeP4:qӝxn 榓)'CGyeV&b'_&S{ co0%hFx#@1]d0y3C!:6eSpsm&Z@=FY. ?kpXpM5xj Qi^:Λ{ER15Mڊs՜'s=d;WmY (^fD\)1+8Ca0)9r؜Vuu&)E=WVo C.xmV(Jyܝ+)Ž2 UkKÎ> $2CՑ~1kHE&G'HDQi# Vjʵ7 n Óvgt4Odmrǎ?x-qD*3%̬O͇>caؘcSzpLxgz ACV[w {nf4%xYŘ*>{8Z_xpjOm1npV| vߦl0k{N 6nV$!RZ}Ni;(%"=)` K{Sc=C<XL<ѻFH(Hg~ ANKXR:z;֡B'.Sʅl`N9]pzlD{nAsP9N%+ 4K[ZsDwcChaB=@YwsLYvZXםDz3T0 {,BdxGAݜRLǸRyȑnoQ˜i>T]_~rt;Pb J28^5k-zM0  RQOIGC ͱ[INo~H 945>=_afgOuJ˘깒 c-C(][qZFB1򛒅W`? >MPb+* !*}sLg ^G2~3|K+;*d?sAV^!Fg=E"rNz2$<ՍِīE/9_19먔UġS-U_8?n<=cNy=;Bâړd 0e/e+v`xG{H%HioEG!v" 9F0 |O"S2hvӒT?Vv|+<ޕxхw4j2Wəq5ÝƁ`[h֎¦bh+T6)nEo I5*﹍E>;՗! Q߉1.':U$+oUQ+'lKЋgp+6y;~em }3b_G-1^}=F9c;΂ :rnzCH80<FSM'U0&zJT^IF6Hw7$2R lS`4HU*[-?FaL"-qG)6cYByaJ+%?5$[1y@`S A}0N_1vu5B!{_gk (3UYmxڱtL*V'{!@3*{M^lj.fa%?e%KnMRcAB`>Y +#t]A{,;pHgd5?&2DMckX A68БqSCJep/KK:,)k_ޘ'ncOG=;k2v\7"- !REJ;6*Ȏ欭q;)%RV9C6rnpI%QSp]5 dӦ#`wcʵ[JͶJѰl3iZ 76^Ů.ɨw)qhub\77GV9>N"$v13RT6+]T.?H])nneߓ(^yD.~);-r 5ޛ`y)Dj _`F|^j?siha6=B~0if 5VdwpCBxԩȶC3O@oq$Du ޗOQKoX&݁%#Q?b]E]e2A^8Osgϝ&ѡ& `-lX +UGs\u O+ - fEZ.e[ jIts}+$XӛZF#cq{'#{u Ʉpl21P;LqTO(," c|՛ƽh6 i"MO^9ָ>rK磼9]1C 0"'|Tֲy\x-z /cP,pc1b/ ɍtAE.U@.(w"^'w-nmHC1vVevfyws#դzfj^3q Ek$vF2('JJ/rR~A(=yXG_غ(ŭ|YiW86[Vb6k^=?bZ~NJߨ抷g vHƵa[ܛ|Ə ]+9U{9 v;If 'x ?8]G7b!Mk4n1g>,DJzzA db 0Gt]@fIa/.(GlÕwkT  $ږgixYh|~>/nN[owr}CzyI-Ʈw5vi:TwAnEa% %Z줯"Q6z)6^+ސhg h= MfiHšr N7"وS"[4@1>9ӛؤ%zSmpqb ~i7WY^MZľV_=z}bAUnesm[R Zvzy.жX0̐jH32xcY٣JƏ6y*"3 4KzRP*0>5EgGDЇբA$  Fx-n. J8 q_i2=J{栔B0D=`ZH* ۻ+yB DϜoQUqqF4\MsOIc-ɂ8@JƞE0c "TdU&vzo`H ޻Eq.2tIjRa$j;84cpq!-@DZ? izvgO]D{Ť(S.32ašx G`#YwF$9oR#)KcU U$ѮqmRkD{̔\b%2x"cȺC?h3ղ|_J̍D~ sVV2$ J#u jQe5 #3Klg,lO:u+J$e}X0*7{1tۯuH/ Nk 8(F:a`J]@m䳓Ta~iL_;ZS{#k}2'N hढQZMNgkeZKAT ET^gↇǔHAzz`b0:R1 #+f)c冲}/Xp,;j EI#/Ӹ@w<-̎`06L32[9le b SGIt{ daq=⋡OMV .W`^|E}ba:_sVrJIgoȃiɲS\7nE~|aWq񍳚½̫.CkAѮ K0OBgYEji7`V.ԧP"҉fF̷Y =Ms4t扯ѐÔ'?(b#(B<,T ۊ/( p0KHgs1Id|֩C\]idftk O&)<17"k} 85\L*tJ7wh`!k(ܿcI= vHC n5 |xzJ6a|E(۶cp624dls}47<Х-g:& h)laFP0<lN93@H.иU$OtdvXz̳^,LAgLose1P'9 V2gbѕ'ԁr/t1Cq_N`9UBʰqntX~ȕn7T}2xzf*²{Ѳ>r'8A}!Vu P<¸hw?3.Vz+ԿE֐_~y&mư VW(<{5HAQpH+_ dF@9D!3ODogTJGvќ\iv gQh%!Ǻ#\iyR>a(T]eA i sm_Ttˡ9%-,O`!PgDp eoUodĺ}aRRVq (ݓ1v1'!L0.xcgt%&Sg !oeQJzV7pC[Oٟ̲J ut(°4>N ň]K 4Y;pvfdbnQU/ڞ.|1Y&Ho|fx8!ژU|,>y@`Ϲn93phk甶 pWrpbmzv>cWSap|RQ=0ޭJ)C&kmլlrYx.E}hK,Qi;IW8 S_\7uhwF"2Bq#isO,Ll'T+giwS LG]Tk6`gXbau~ǔm]tXXS4U}mVE^wXnu._NG@9$ae,%0ni'C6+A-PB|1Ь 6[S*$?2LVwzc%O/xԙ+r> F~Jz,]'H=$uJ㢪 %(d / 4ְ(>{wt[q &-BŊ^-R=Mútƒڍl{|gHB̧&z o#IXEe1v̲SB:81t{uԔ1-CIF|Jx}Vǃk-8L`X( ,Ϗ)A s7F,Iy\L|n)EaܪE)/)oBv7Vu0aEDk~[]O=n¨N-KwMv&ܔANF~\ s7T?GHQ0+]w],I -x ==x,8wd).*ʾG `޴6q &n>HOl/P8'7)L=&yݑC8[Ӊ东pκV˃ȳv1uEתk1qqڐQWP3 ϷJ9zH8gؼ鰐ud49D;ԉMKrx9\WMzֺs÷\8RTj']gWP`$"r/A@I/ãz`Hׯy,=YupR!\%^{w6WC 3^\LHwbq8?Eސ 5 <.;Hǹ*௯Z?+y#1yQ)RQFx'Ñؔdmw!TDgtXx{#[H7>ykGbcW hbC _xj?/U/brs%DH@,r֥wR6*#mii{7uۯn?΁m6NqA kzvШ C BLE4綎qTQfIWR ĩRЗ_mYhvG/~W!<0VCN+R g9[Bl9 S8 ⧫ѣV7Vzɳ0"C8e Kbݦ.uˀDńQ]Vn;K\;Ж;W #.V"% `T $E B8XiU;:nY=$81<W>`M0.{^W1Ta9| bOi -e5qH[H@.0A$_іI}э-%}vi2+fzWH?I֙4M1~ v0SY~4k'ؤ=ҒB3HGs<[FWG8od?` (V>'oq.{9.m@A4쨋n22 4ݬߥ˛׮4`]au~8H^Fv.s)뵈/)ɀh$@>,ӗ1S4*Ro3 žMԚ @i. /l"Cm< K7PN[Mn|áx)Zm((ňC >TDAL#SJzΘt\5 Hgw)o5[~njeZ ("A֢ߊ]ZڏSY ɪH6R'yk`_{ H!#:4pZ(%[c₶ow!e{NƸ;(ru mzm^XBkrnd~pUף2^i{G;{a[h3jKA25e45p8_u{t8Z-iY@&̕6m&o?zHrMjqrķŒ$0܂tvy|*7{A3םVC!Q-jf)0oZ{a|)b*GvD|)c6<A&7'Fjne*YVLɍyɋ^Z_x8zapOc^U ϵ#K&79%@Yǎ\ugW|g%AH }AJtsal %h[AZ l!4 W3bOifUAnH#p8£gC)O ڳLx5Ho))8:' (`Nƨ~+gB2ɵB~HGEfgc\[!Gvl5O| nYybDp|`G\jZt QgI }w}-SMAtJw^er>L؏ב`"MK'.x/8yZJ3K]/\x,?yV$dP鎅 P; A}^It*Fk(Uzv}d4w/)0AhچHon/Pb<":V]P.uc(qńH{~ʶ R^Ljkrb2M+NJ+qG;]z*ć sYT(.ƚϺڟ!7] )u@9bZ->v܅9Ֆ`k,ck5ryu$xHkNsJ̭V߻K3;ܱ8"Ģj}ڼsh*}Knm KVo*L _]ډ賺P Gd/$$ =i\) y/#!"7pNGr!nfu0y1]l;[tʙF>8eZ{MJJps޷n5~Ëw׶Lby)!V`Jr)gA=7Eڏ{ Mp)!uzKtvqv7FwJSLƱ'GHf2 (wmJ,#Tߋb9X26n4_rL,`7֝@Ð5h~lEoD!yoXh#}IP-'HoAzѦ@ss{+>KPr_L8؄k4ݜ$齨 ,XFՍJ/Ғ^=0g)0i!fXx$ҵK 9d |v.VS/Gm[_-E '^ճzvgy7;y}D֊dX`]m4?ezLln s^3:K23` };V!BaxyOXw@93ܶwgoUTqT]L~Sz}7,D2oy ]YoOsj@К).LUk+S#c)`an,]E<4fumbۼB:B|Nh`SYJdu8:Xnj=adc/an_zmqמ Xf=aks^WRo%Yxa"Dy)^‚wl(t]UĊB5O>pQYݕiV5gUHq1 )Q>A)3=_CM#묿^e'Æ$ lv&@`; |4ˡ)eJ4D=˛5sB2Bۭ;C)~uU r/-J##hf`$! hv~A;^ @9>m|N'"2`ti@%s⯹;$. = 80Q)'>p]5}F53ugjX;} TB%)gg gl+9ƜP[LT(9@6uAÝO:;r)%*+ Dx[=t2דw<(g-VG3`o~O{ PF,dfwABܰ`M˛oYw2?vv`u#ĿW95̇s|Q7IL{Ahϸo[XDX$6.A`n68Ɣqj್ <7_X2n<J ܆geH 7`zr7P˄z@MT>]ib?w_0}Ep5 xB_YAיG.=5'7ƲY^Rx9b{XkܙkܖɃ4k?GDPt`wDPF-8~rTZrM/3Ʈ+~3EW&aKwqC?}aY}@i9w/sM+F33PY4=lirp[ Fڭmk:-!ką9_6A;Ût8Nwټ 21E~&c#L[ VكP`%a#MPHRcjSw$`A}u_duMY9bkK8!y̠V-Y?Q+Ow1FZѢ5E=̔Wj ;OydHA;CUj3&l'c l\zq_ގ@x6#rXvbAѷM- )gP\P@|q;@Y<}BfI&]9nM',x*b[L>;XqިNNQ?PȸauDOobc/u199z=kQ(AYbhsE>Q/6%$ènXr%.f\b"ɸWZ?X O }hD/H ۘ?}x%&ұաV@FfDW$LIվz;qva3: fzYXrX4EzrI.s5š3,O̸5b8{Z7´&ϤOPt$%A eΧ,yv3tkwh6$>sda(֕ 5"amF8t/(yc$b@쇯g\N -Y8Ow!gfG >Za81f}gp"W߷?_zڸg}HT )It $%v'z}jԢWd(Ai ”g/EWMBw`ϵ`$!29g]яU$&Iold:(NQi!%!o|(p|:I a"__刏y@$t9]XR!Gr If *H?Oue%jI\%(]Uz<}(ݮܬ! +SCPUoY1ILczi<h4ܘ@zk.wcJ|Vyy+jy6ݫD}ōxPSݍdqx9H#$?=\ЫWsPaț-nsYzk圱fV( <xlNJ061fRcmqaLzߞd~&z}F߂PYIݶAY(6sTe:i͠=c`wwhko Z GuݣX<ɨ8ĖGC)ҪZ";3ո(O6 ps x=O#q}+$nll;'ٛ:A`"#Vؚ\+9y+n.5YhoHu4#31ŊuJKl &lqagލu%)?]u^fnfr"  t;KCF_ƤpjS,=ҏ&JNnQx_:潜!z;^"ǻ:QZOƿؙSy䢮R*ė:ŀQ㼫? g pv>;'&u jKl31pKOsUAwBK4lnF)TלTiQ}ݚDRmO3Ry]ϴ%,5ӻvp 橋?'Cq|_FYĶU:7_|U9/6XeAy")z E?Vg_9NC>ړSO`l1 ޷#?8شoMZ١ЈoaD=* P_\mP:eC< zi`x;l>Lʳn%y[-u 怴XC4u>3zct:㣧[w Ғtmh0mb̃ư=kV&&k8.(5[mE6YcVZdU/C)3ihRJ% N'tT8]kJt9y&h}9 #CToȰ8ENյ%Kz|FsH A|DܾTAn;5jW %/>|c/@V-2U0y{P+S,?LT[Ӌ˃aɥcC {/XVaXc0T+:_2DQXPgҴjdp$8{]#2O%"4]AxF]v&ȥJ6hn;*\Be cۏ+ozr~ w40Ɉ%)q%WRCm m[d3}~Cq|M**+Ո#g{:zT[#z9qWN4*[ИY1l#̙ھTR߭}`͝CxmDZX'E f!֩yQ,v ~y+7˜TG49i?Nxc#Ǚ3]F` gmWGU4"/ Z͂-. V%5#6w_Ι[kؒht4/%@?N]i9۽H8B,Ba y?y?'񎨿i0)k čXxui-on!Š6+hd"Ϣda-D.qAõfӉ볺3w3!ݧzil4ϟ X}3[Jlh>2F/1xVMM0oN"UϤcn^%Y@cn*)/n@7,Nn,iۖ72ȱFtì-5j(B>q#0`񍑤Śç|ʑkT4Ʉ(ORڃi#G^[ +Z tv]6q56[mj51 Y+@^b"=rH%,vm]& .隺Q(1J6Sbq>s@|k ر.)7&/8Gbnm='}@K|#LLS,FUػY WI1Q ^LT2V,u`nͰXd#QW_BHJV؍;#XMW6Pf_j҃۶_iY3vK`s~uNF@48 AnGoSa"ft^yB֜ e/ЌSYa~싘(3&;z/+M Lb=3|1&Sl}sJE©ʤ.3#K!x|yae5q䤖5Ό==*w.Fz+"-0|#3 *t4Qěxc[IZtLnStM5iFSIaU*(8qռ}ju8=C=)PdFq)DjaH|O,_\^;K Ro"P_1_ZfoJ 0ґΖ8(t/AK#i6Cf~cnRƭ$cl]H@M1Ǯ%\<|CUtO@`^<# 1ud'r vZIJ]4,+u? eݽAܐRc3zdD#>a,a_{.q`+/V鲏!SU.q=Dv˅Qy b1YSYڊ٪Ɗ:T8=&<0%H=X-#`mSN3Yn;hԦ\yQnZ ׫i_!% 9cd{XUtXۖMnieVd&/,=mu8aBA[?[Mˉ|x-⟑G:$ʌ;5*Zdd,59epa`)lٲ<}K^sb?<`f#9,@4rƤY]|sdi&19n'qle2HVk,)'Tj4S|JE^U_YB%VJE tiɟiiz3R?gHuryj❷ y l 4L+YOK:!J۹=[A cňg֚+l_[P V)3PMc7A%`FyXqI9aܽ'Ԅ "34ooCۦ=m ,wfvqpA5H=<>gdnhsqͬvĜٺsF?+L]E(yY|ts-A҈f횐&Yb)6Q5)qH;n'It֭E?u``cl>D47=5y xcP-1L2W#o%`1Răh[JO#mٿ`O볜O֌64q%bHMI 7(p^m]ٵUT GMKQB)Ȫgc)3K-,3 &3BY6G!3'.V .qm>S'IM/xo 8K }1jdԘ.fњ[R$"Ơ}6N2qZL$G4 n珰3j3@9aD =d|QŝԪ֫_$ttbS*'(v?gcc %X(h_3u)rt 9Dw#K`5QYex|8ZIzսR*?Џ~vI,d:>54J}1vJ^gllB8SPW;s2E+MXa `r3_iI.rsP_9R f}/3Y ]s,Z7$d'J *>Gx0XO3S \_Oﺽtw`>%ZeA% 4@~oot5Z5A1ߔ( fǨnW͗tnΩŧ 0Vu?}S/5%|`13DҲA,ćrY n3o]3qjjËiB5P;y"W#$ n\I;%}0_)RT`=ypV01AePmY弌pvI&&٣6kQD$}%4o$Oy´-0Nˊ,~JGpP橢|/fmqMgF @K"5%MAa!Xj؀Xάr*t7w_χ-.q-(P78'У(- m)qJ//;yWAZ΄|R: AvVڦN8a M?΀k1WO3j ev=bv>%9,Yl`6 ψb @ Ոt Y%= v@ΒKIᒆyÄI+iU*Yҵbþ u29hج7E;89/Y8UXgrAx,'0Ӭ_u1CyvA cI g`ziCI6Cg1s .&-t3(Fx a&(2C csoHwåx1g[GnI tئrYN2uP;r^%xV>"!vXBc6 $=\fW f!](4NjǧZ>0=ӊ+Sg{փާZ$TD #zva2\'v+0z3h_$d喽J ۚc(=Ȣ<OcJ&;2i ŰSS^9$2"jE,,xD/P<%G2*G?.;:I%wO) )MUv9JP(&Qg HILt+!G_,>x Hmz}yHz`+f+18ٯ ]&Owopʹ\ss@_JQOI[s;He H:Q8je*gbM8w2fh$'L`ol۬PX*'RMGnu.mVcO~P}~."0XьFhiCdqcyVtZqP렮DmsW㘳%4Oa0oLQro^'ffkɡw;=̹7U~[;Ko)4E_%N~HU3?[%n !8 JFѤN$З`)m6GE.XY=5?Y 7: AVS0]hHKx,]_#!wZvcĖ¼ 7+Ufo%:P *.Ropx6u'ZYě]2&6=(mee!Px4 L, :&I0k2'a6MRo#9>"#=96YFaMAؼ| {j+#,5sx n:&֦$2/H:#,!Etv0Kg.8Ġ՟kȢcEeOl ?iuBtLTF\YT)6(;l r7Q^tt- o,E@cK|K:Jsh= (3ms΄ AmM ,*t~t6\Om */Jtœ&Wn,Ɉ0Ʈ"??VGyNW E{JZ7>P2COUgj4촛 KJ+$L+hhpP O `HP L.z!~%龽M,s~&׬a\PY]\XI̩}O5M2Pe0H@6 8ˬǵBm~k|(] EA7?}h 1x ?^E槍 KQɪ 3F\O GLj颌K8f00 'LĈ )apQPB/>n6-VojILYp7M w'yq-_5u3 (6RSCZhUu%VێmP,͋ߘ\!-1P*3"gN;JҹŇCjk X ;rGh |`y'mA63D_Tk.LcqdrS+. ̇e,lɬM+qحmEd&s{}p*GmQ fBű!_e&byE9 bOoPlIwUZf=V 8li?Q M@tWMxI]/˷:IenSy 4UӘp dd~UWqr_nֆTmb4΂K~0̪+pz&(dnZ h9"c:brу dP<+S+d,"]2\z.uCǎpkۤ"+ٍޙp'7PRؑhJi=àoVwL5LS-jzZ3Œ+{mj:Zz<TJ}mқjՓgKWzɃ=І vו& X%e_N׵q} -[]e6[Ji0`4#,)Ji=\ɪ, m+F}4tIʨqITѳH\{.)/ 4F7hM k3\Ɛ{X(q9^wj9dDIpOU>=G=^seςpM$խa3"Meq51"7+wA1g FLDiZ1gi9@1 3g7Vi>y'V}$݉2dt8Uő fl׍0k "g9m L꠴e2?ޯ>˩ug_6d_W *UkOsr;`^yƁO0y޲tbM@`c]&Onzl7 {nRh\#"^hy\TSF)ۀoqdeۥV} p0b.p#S(7'1Hс9LEfIQzC3% ];w3-K#U§'W%\82K믁zG2`ꍪ+wjgV !PUׯyaE6f52-&K˞LZVׯVB.$_s.c1ca;);?.YZ D960>+y4ՙ ,%cdOyapk-nofзO0W,x< 9ރŌiCn>E䚊)*ݷT/yeAy\ t*9 F.68XV]bo0  tO\///"TnhS9dp̈SVtBMj},1q~e{z>9cK4t}\v"np^C/1Ydg.[,DW>rtEi)g&`_8*$<=;h퀪s,+2:F̊%+}uM m5|XH߮JElBi0k6lэidɛ+GW}D묝,2JgA0w>ĵ GpWmeX^Y;H?,zաpxX)3ӟ@0/a<YLPSuՙ̉V @_><_wE\r6ύ~ro|qG j;x=a>} Q 5h+a΀KtK"r=s=G7:q_ Ug[n0[8s^ |ɊsU\$q HGĊُ@:W⧱Fz?j SH'zlu!nԁ[?y+.&Ђd34zvq寗oyG b](_ D_;QS‰XK\ A̞ք6׀VŻf]@i@(G<9 ԏmd>n:ҭu.F rXHx KrmfX{9? 7q(Pjpަ)ho|@056QHL?meh=uAyu7Œ"Iu֢UexB՟㦴_(Žӷ+Mi6O<FtJB2/ K8pݤzg爰 )&0mɤyOg?@[[n(]7@~OJoA1MiV$X/ÈKAkӊO=@cOf?cSn GunicX жyͽpؗQv9yI2.uo)3cD:ؑҾ#V䜲kݖ'ު\+7r}*Γ]D {x;W{A@I^ {@0'bT:dv8Vܻo2h)9wz1"jqt'&CMGE{|D$ȇ]/ v';yX➬0Ioorқ_v?=>4^\-lL݃X xVACG,TelFaH .{&jUu"GX :\910 Ω^o,g~)=N엣_XLGty1 (A!zrv;"A 2Ů87O3oDV XT6'!7dͧ1 PWA)Mpw'P_ B0quVQ1):8n1XS_9k sT󪷕퀢(hЊ$TmZH722Lۢ.1Λwd Ӕx`A;^C׬#Bsy^"m"3_TMi|8/{f?KVWߖiCT+89)Q5AhA;΢<ݤ^vhb;}81.PahOҋRz]8I f|G{nl7`̐?&^Z$kUXsi@jW8*}bѮ[_ޠՁ7|ʼ z/m)̔)ԯc#gvLHgu*~MjMv̵iAEMH14;#PqNS#NN%qNҪ.I}obfLGD$srޭ SDx|Ι iȪ+S{M"?eNoa>kYծWΟ[{VD$M4Md"ff0! t1_huJUSuK*N8W>8kRMcP{H<ٺ?g4?=;YAsxuk} 1܅S\M;K^ȭ7Zsvq=CgG̼2c]|\EnƥZF*"Y_ݞ:e]2>Mea=5@875[%ywA0vP5tNV$q/`qDɫ' Eff4,h#T[DZBt(.ab%H*~2laOƹ*ާ0;ͭ\VD`!ŖڲݳBWJ$_w j+ś ʔ\!bmhq|>X>Z@O :KawK.Ps6{LcÑԴ*ߋNjyFmj!:>q&KGsW DM| >V/=Lpf= D'~β6M bVm&_Ħ:gKqC. "Yp'T:?)KB~Gq]Ui5Rm ,iʹN񱊥NqE'̧  yx HyZ㜬Kmq[Ak{"a;x\/cSgBܑ#|"`h*gQC  @)x tNT`@a.|{^d?d?Qi4zJo{W\?{nn)`h$f^-kz[20J|D?vvтWb;[H'>vyXeZ !ŘJ8Kp@>}0"< M Yӡ`.]5i: @B2g\>2Ռ oHKr1|>FQzb!~'}*&[8bBWW-wR0#-E?5awnhό؅b3rA6 ~הVP{Qh_5Z% }oyVG3H]zT\йWp0Z/֍u WsPc2)!  >ack&;Gp!CJlV"ބ=#C7IoPN38h(=O>Vj9ݬ}u^F ׫3MIu-=AEnt,=`H\G cBTVkL&[&TD_Լ4j~tY9GQHI@ũ/erm!5Lަhp) 9c[N#M(<8,/ ui#f[^6C^6'iC2 Iń:zcGH͏s4u 90jѬ~L`XFǸq_}tB}*W(J倒*ٙ8&0m@hu ̋xa"!gFrg͇+l%G"QEHp'D9ۓN[J8 \ &#fPmBN'C&)}BwV ƿQ' f t"ߝ89Nweς2Ĉ {gj*Uq|zQ 4R1lL}@< 9!R"5Q䩣)}Z|ecrfq24~5 -9 ~ᛵشp>_ 4F ðXf?~Ie2@_fx:Dt 拏U%r!ͶgP>љz1'"B:C񻞴I%J'q=kS3! 3Y-w\q?<_A=X@l2I*'PO:M5qc %ԸÏ0!@͜:=ߓ$2Tia'ap/gG3Ize8:yS|@EG("b'.D}G% ""_'03OK!Jl6p`<Vbױ`na uwrӒZ/E45lܡFn Ց-wDNzpB ?j"g %>Up۝ښ& ({R~L=^lN8NW4t|chFxNijNfS!O|.|N- [)rL7M3VCl ;?bm~L05+eMts 晤s8EYtM5$O!n Ɗ䨚R&˙*?z{dƷYqk\B)vsbzndÖ:[GzGϢvf To%AVl<&)Cz=Ȝ@7kʪ eBfP{Ly9F:zˋذQ`??0) 7+_hptNυ}90x"nޮ_96?HdϑcNT|1r"ᅥ]Z$jS ʸ0cCBTA"`=OV1&J!Ce F )i;3V+5`\( ̑[Up-ݫoro3֕gJݓ@ SjDI"͉ SN$俇l#yY&2J^@W'鋝s.LdqDmFRF)QIT0xqbJfW9ؔ GgDf|t6Q*+ 9*{uu9i|ĭSOg2}HS[Yv _ĥl0)>+0ĎWiN`/CQօ]c?#~/ QtY3JDqԜeW3`F'X98'hdO72EZ_PZ*x'Ԭ D쐪%퇎H->e0orqed/`-'4FE@bZ{ Mu&%IMQ^ c@x;Ԕ Ia[qFYZ};+miسIsq]xQ(M2%$z~9WI4 qVҾq0tW:0@O\p#t●6 \܂A{j|'@ +<+/ZUm3 Ç}9IXq+.DX M%ƪ!уd QԺuU/ZQ7Lb-Gҥk3mxUD~к?V e=j4o0g$^³R+j>@#΄<8QdeUh [bA$=_h: k~3|TIBIU)b ȬȸXT:bPRZ)cE#d5Q˪.o9ePp,Ecl\2W^JL-pk+h>`C}!Ch\[K[㍖蒏VSùNe PWΛ(>vO7#Yo\=(#_ߧmYOQ`: BkAsTu\4X߫f}~0n?Gz|^1cKD%k*ל%ط&9ژ)}4ꄀL kKwI{Zv5bͩYCY -g Z4O5jQT)"4NdwxgyĆ\E$c+(rX)Vm+EDq-}wLq۷XTPZK5g1w8׭34{o130%6Z])w6[}}8n!)dJ7 :#$CL<7FʭdMFYVk}'S5xȨ!)ծV8^NdbCs@=S‰k]#&|Չ#>8rBY~b# *Z{RS4b\ p[݈c ItxJӿ ;m\ n$K&L)]Eڱ\u뎔(BqT?W']F-x|6: t4-o[Ch#clӉ4ѵj0ꫯ1ڬd|S,Ŏ6w;JފȆdžM^nҕ,o|c a̦јV,̚ŠI 68jai D]6q~,Jؐ'Qy?جRWT!&PÙj" n,޶@?w@NfVa.C/,_t l}픋go8/ 3>zEGBv,PߡHڜY# wR‰4=kBK A}߸MB݋gGL{(~ @GUa&[!b0<- /cXJAW& PI FIK3>*%"֏֋9yهx;S,bh ߒ4?H :P;ȆYbfȚ* \Tf6F1({kuJMmҊm8dv:Q5 hxu^m86Y&zdFݩ D4{M ö}OC6KTcSy!@H@]'X~#CsC`vF#Dt "0edLƁ `eB6S`GJ"8}Ba. D7<9Kf>)S2sJ5/\#ه\x'jט$ˌ{zgWL MpNJdAಽS䮧E$:#C7/=BU3 nD$f Fdv=.!O=9hv`.;xu Vl)G8 PQЕb'%CcJb†Iռj^Lu~o=6dGi2 +4M$``A*+)[3DsEnhZ,OtF4طPkzS!4HNiѷ-QY&W`Ay?xG҃us" lsLz*zWCru9Dg94 (!jF,~<ohdw>$aRq&µ&RP ͫn5hT(w?`Q(ށg&g.VS{܆C`HE5#i$ށzy V͂8!yVWv1$?+y &ɼԈHVxK3zG1#MX (Ȕ|.'ۿ \]1< ape`~2a&_0N3%`7/(Oh*-KCΈѼ[&s Mev(2]y>ٻ/B&σYz uwXEfb6& FTHlhvy">{5Ah]@'/pJ"|i9y;4 {m6>A.Jǜ|EʟI4`YdK7 }zC}o 1ܶeɧ_58j*cg3TUWd ` fڔ]꤬TB$Cboݩ#:2ǵAn3%(.↾@/mnb Gs^kѣ޺1M+nA2! -טΘ 4!{QHǿt%4^Su ,[!ѝpe`DQGd)6ZKZ[0$LG,mOL^VvDY1l2bLNUɜFNDH`eW=mtze8*s; |cLP*cڅ ApFv<K0n._BÄ8%ѶCŭrKnOiiٯv5N;msxRۣũ_ OAI8w6Ȼt֕[%fV{ˮǍt)i?cҴ~`=(3NE>ÌmH89//?C\ 䬒80lQzLZLp&-SvUBpƾK:H`aFa|aECr\6,6%2iQJ|B։8a\i\J[Ȩj:D'?Pb?cRihϣGLpy9njX>_bqd歗Ɠ۽E`&OU|$N܍v@]آ׎B?dQ=bwXTF`0?&aC'r@]-멐!;%Q x7Ʋ&$[Fwj Һ* ro\f,qП ")Δ߇@Xf41?gOdDQ{?2TzGXaYfO{1"8ی2]Pft~H[l%.QVhUjI #E8ɢ-͙Q` J]^[̀N"t؜!QYFTws8iI 1uQG7RZg B߱z ۧз| cC,|0tB&RrZ!!cOTO0+"1"6(S6d@v6PUsoo,ܒLip 6:fZ~bqFW)=|\B'U3j//\q3?Ŀi\bEg4n`E&RV &_t%0w)A4Qrk9)) йѕhqg\! ]f}ܘ5#6XBmA.cc֕It/y-Yj(nqqp>ːX)V+C+eil++ ¤ 7<3}u#Ag;Fd8 ( 'E/^^e&=h& &{KKw7K /ڭ@CP1n"}9۪|:vZX ]O(GLB@mk#WkI*N.Tnhl< y",f( 0xݰ&2RKڿ\h*uT'sJOVݨS4f^\bZEDpk#>\ɤ)@kԡ7>ͧ$؁o~C]YLZlupE}=t.oO’7mbNRv_x?e!]V2QD𢭃m5=i!mAE۴FɗA܉fG^VmȭFK_RȻP?IU z U&]E4lҦ+>X}ʕSw_CJ9|NRui؂5u퉳[WQ3W,ދcz,dgwbۈ" v Ȯ '6Ζ shXfxQ>\=i8$8 =1X^$UP {I2g_05FtD_|zpi6DV`xu1idOI:>a,A}ד+V~F:O6 HB>-eK [|CSft6K}e DSK;q4oJ9qwEzF {Oӧәtmq&@a2c;4OTfa*4]m3jYմc89ɒ}qJacKb쬖 jq#檶opjᬼ׹crvkgBsrш:rv>bs)r>m[7hvBuh!~A-=Mla*$5Zͥ>:Wt~kP)CFv.CC%'G8=` T2BËH_˜*H, D$F섟rvb%4'j,K^3g= A m{?#!@5>UyY3gcфdjp6<[#yƦĥX@F_}$[-YhxR94 X&ey{7A]gݝboU> ^ˤ"tdVb=NjZR.{~Q2_47L+j+ׅ3dTG)4&bzUl .qAgDɲXJ?*@ g`o|  gjQ݇ᩪ娬 ^΃Vɂ>^ ȜeDc(wgD#=RݐD*ʛ1?47> IRCp،.]`[V|2yJ_>R?K:iOֿO=ǧ~Zф: B[Ǖqt}3ɤ,c꿺2=F{.g%T&*4ًZs5+ lQcú%J`YS;ᨩo(\0=S)'f\q2 oP.bk"ok !0lR7Efd3}S|i*# ' ]+˒wQU?X pBނ>ޥ`pOYڂ |G.gw<G%.5PTĽ4`f/DB߰>k-icFYpU;305mQZ 3^Q"xE.ƈغ' 1 Fn-Z˾:\#Ǟ㑗wHTi/+I91R=mKm}*OR?1rR>ާV-`ڔ_R1u2$*Q_a _0SSکHH7bڄꍌh//I`cI/&#2F!n<+u(”:k4ٛ7jaV}Zz{LMrk[Ja'.h}WhjF ,һ0U_wHaW[%T.gYTBEٰ:팤60W8&9Mu`3 [ܠX,Əљ9r۳pϜqP<: 1נg% :!m֒290,I?&XX\A92W.&2n93wL6O4__.>{t}rtpkr2L`zGK9F)Ꜳ\u*erN81闖A8 Eꋘ]Vz 9 <3u%^^_4DQƂ=oi;Olg^nЮirZT/ cH"&e6B|+ rqTÁ죅-Qų:cONu'v$aɸFS[5&s (5`}|.t1._pXhN6G^H`\qJWAHsߩPQfk&~gl{4~}SFu-U~l>xacM4\7@EKCN./|Rݑ-uh8%Dlȿ[iX5"v@#Cii?螻ŐXzsk+<|‹ZsBnoT;\;/ֻLG6}dAt&_ {*QIaH|Ը2::Iy:-{qrA!W&r7%6]nN"'q~Rەp1s'K%*/mQŰqA;1h 8ɓp)I6ogb]:dj*6!?rB,.U{ u%?.lWd 'e./a[f1aPxlTQ0_6XC)Ε#+ xCx 7.N޸sSʮy4KD;(%Jg_| evA2xy&F7\I`g"Cc&$~$c]&4<rtMF0oOzyL&V{Z+54~܌gFebD/_baӂji3y)1&kAg|Z;-a8ԩbsX1?\aJ'!=lfdZԞΎ4̩aם~VфdaaFUI:Kޑn{FIEܒ ./5YpK }ks̭},ǬVK=w[[ccT4jr%W9ܹؔi4XZyfXdOԸtA0|DnD_`+$Q3&C+aUP{mzsȢؒb A-wkJ|8I@63uL%MJ^ ?8 1sB@g5adk޵!-$_/jOg/my~"J2-6IvF B?M-o a=]_iX8p [|\e6^G2mJw' d`aXT <$5Mmt"F/X?,A&/ĨZOͪHn[߱$2Y DŽ.VG*H9&/'m{/W )Iѩhy Hr9f1[j5M*~0xNN ,I׳.5[HePPx P|#zq"o9{w8 ҤEG8)0 YG5?N3?lj7Q ᡖ oBx~F+ F5J嘛+u*_yG&/|/uf>K ;|[ιO jذ6:yTU (׸p'APSd'-; fa kF}1]ve`>:+c.~ۛM +SeonC ݴ)J"8WXbD' ^4qֻLjR^:p,Z%p^S2M3'cjOu9M\stl5&* z|Tn aBQ!_viqw M?p%>xEΟ+3;BXl\ |'')E&vګe8j,)ފ 5C=<#F.=#++÷6D|Z<&2-5mD3#a1+i6vWmQܨecNnC^Zًu-tEߎM u%bJ>#N.R P6 3/ZmmVrST0wZIuʖ` JY PV< 5k@=c9^ 䐛$MmI[,rsCH&ԟKÕ^LT4!I%7ct`MT'f)e~ʧeKX#cr&β=}H^ dW~o}eX]p݁7^0E.R"XqD/i B\'s'AJz,{`gŀ{Wow;9DyRFo|?f6?߲8ᜪԃl0kZaIy &lޣ BV%f UR}<8 D:*㱱 {RTx#ttE{]<@RtfXgrLUgN!n|[KIq X1lN3ķ&v/ Cc>ˁ1ݕk~o戅!ɘ2ṔH1Ǩ#< rh(m܏<1Į+LRطhjG82?DYe1I|LlLxVg赪&fu|_+K3G^G`ѝsvlbb>"κK<%./Vع:3Hb DL:c&RKMf$Msh9 qkkg JZ{YĤX.)i!zٴyJ߹႗ n>J^E.pf ZEw,?IK VW,C8«4Vx3 l[Zj CٝBBQyT"=aD{GiC 5ЦJ0]XAɲ32륕L K>^[ Z?"z)kb.Af-?YL^N C,B [<| xAFl\fD|- vHLPu?$%ǽQgDHm&Oj׍(;BL~Z 7 +jqpӵ(]t;yaaShnpeC1t"P;Pt6mr}S-N*iOC3X-1?4iamXd5t<\MeVu *pSVj8 =sRYokd!DjԶ/|ɲH<,nS) O\Al`\PͯOWBuꏺfWH{&(+Xt)q`tmKHPw<*!uL>CaӋoȶZ(AuB uܨ0W t\*L7>nzϽn}\F[oi]H/&}ɹ2"fK;B v Zi.DFۣK&7|_m wt忏sʢN&sw+|lבpt60Ceō:JISI(2u; .)M9KtL IT% _y9Akw76V5KEr^,nщ:& Mr\dW\P5W/vRJ(3 ,9>?XUN'HhM1"˔zԠj*N:Ms~3RPiry{Z"J,ovCM^u3WZ]N RDPv➕nz qR`hsKx0'}PUڌֹE:{WjA *F{0caGqXl*^> /nwu..>a./Pd|( ӓ2tfe`ZVmnfKI>Qyl}|괇6Zh~p͈DP(xDv-nU]ni|@@csMümOi_& %_\#dnPu0Ŕ 4/'&{TnIGlf8 H|}H6f:U ׹ 2+)Oh9ÝfW &tnqŠo7~/l`'' ̄m|-;0ɥ~M~>ʲ4YxxQDt^BtLFZ\w6ڍTWJ´5 =k]Hu  >u0PNob1HP6+ڰ;9JF=76$x˗-qǽ%$1 0ԟTyt`}~3Q=MHU~j*7W293ɗSw0e5eʳ%\eF|n/?6^ |SmWNYo Z:MOq:@#ɏ* h)ٸ-=,=iJui63T@ %j,Y%p9\Dmɞٖit6?]P^͹fqG w`:ݲ9[Vf^wD+̖dIYS\a=瞞J݂W KS,#jS^f-_* Iȵuޱml(- Fi jw .ο@^"@>.G|Yg-Γ7yVxU aͮ[Y;j=ܬ/&qa L^+蠷s:7gb7xn rtmq9mcu  G"w45ymK`r)]x?&YCI,I!ϖ,ct"t WsAk#.؈nTK5D6Me,)peȴ(kqxlVցQ]% 9lᵕMe&/ P+k>(oinӭL &`BC~ro=\>L 6LG꺍X(Giq kX9YfGkb%^>Qў7C#/nrƮPƁP]9G6ʙw2yzY1*T 4h6ptQԗ**&J#*E\O@!yGswۧzٵis CJѮviօ`5,bidS ?{JtVeyCor?LsUdݣWݷK̋.E{u3WL"3D2 s 2{̂dгlaǭl/" I=1-ʱ %Gśp>(CkM#`֖AAl;vlVu_>{ Fi3hTT5 ICN+O,ޤJ{Z {ۨTs6:YGʈxEZG=7az96m-`̮0E v*A$;0JcFq*ϥ[¡E̚ .>I%7͇>%G,6ScvE ^`':MKډh0_yP|N7 rqR~TynK0Y-@B{᫿/WU%^QS,q6/A*s L۞\D[EUcE8h.<n5uYHwSNvJUXr頡js?-Yf+ǒ@^8GUM 6FD]4B};1m8Wgd0 .,[*XҀkdunFbԼ&@bp͉rً}*@Z-uz+D_LvԠ*.S14fȡt*ȊRBed,+K MQhӝJ1P/!fi; }}駝Il Zd0GNE6eF: ɀhQ­bU@ l~f!$QNad;C%yNTD2A6Q̩_dl«=X~i" 7@Հ!Kat'Jhh#ݒNݹf,*9]!/\jJm&5akl 7@,iO|eND%?UJ.LC #3QI(Oyڹ0zw^ΜCzKgE"`$:CBP#ԍΝuM F0Z*iLr{%y$a݂N#3 B$3#kNlU%;%mcKE g@Ar?=H/!{MJ6]>5oj)?d8*v=4k'K58e6=.|6:+;K";?ޘOoy)$p՜xm5>l-Nھŕ0?F_5D|A =% 1VIOuMaak/WA傝J aKm8rgHZ@YI !#f^N`o>S4CN*[`-,܆xvulfHlT(-ċҵTH#|`+]"=q0IFpY[2>Xҁ`_BX.d6VL?s}kWݔLhe(ӊ(P$DzhуS1h<s&bH\@*aX y R x--ɀ{Ve=kTE)>" lE05?L|t&*xgVŽT hŤtzP~cp:p_.Ig|ܘ=_df كHht犹`Pe"wlYVy+lwEZZפ 49 "kP?dծRa>Qvmsl`Y ݨXoҠi0 Z:PPIN7i!<^krZ֢c*twbAejY?!3:ZlfZ..*R9s]_ڸ%P?xEpx(}]=hIwU/zZeI\U[]YI={Il `,T: @选w7Gj$OWݖ:q眐fL`6" RK-Cv34]²RZOd(1y~ ?D?%`d xc)w He$HeYŀk{"#}xEp/@#2db;j@iEA rT+YXa}+;6XLMY-۸iW" *mC5%Q^ hgoJ;)6e hzgZceYHTBk P0?0.I6m BP ѐ);,:`9>Y F2ˁȂD{poCPfwul٧hIxͦpCTw})Lkj+Z#o摞oE:]2NףanQ 7<+~լkheJuiҒNCMu7 ObGʎ'bZb1Ar|+oЂN%v*QjcFHS6\ޯl.): f'CBk`)"=QK(B@>w1cۑ82t66{1ٕǞk̟-;8]X J b3@u eߊh5СkRY1y7'L_9G r?9Όzv=IsY3A)[Sn2[6*j jz.*'Ӊ\2$iFmjYfk\U79RDkI#C^BjocPLyrkX]uo_I]Ng/'̮TR:63~T0',HI {#l1ܬa)Ven\oӤ2F@{|dCo$= R<9}6U"zhE~P' #zV1_8Dm鸓K<7 ҠfCH0l ƤBxus͟yeSsAU=$?FM!Et7A6rH>zZm;Mp0#]D)+JҚ7kUڋ~up1pO B7ڠ.}}:Qql<֦>L$HDc6bQ@ Ȗ?!J -v~R> I*{YV $R'4X!*dh9;]( Ƃ-\fA0RQp']p[Ğ_JB\ 2-Ѵܝ\`@HY/ur ad]}6=' Z{{ŐzP*h3!/OQM|F%Rd]l9|PT)lR=oNϬzҧ29ԓo2BȸS[ RvUQfDӽ, ɒ)x\6>=FE=7}I{GLכL6=ѹ9[z@p" s?py~pN ,'[k"tݪk#w+όMٿ$L[WmoW $CMHm Wy,9C /0hs&mݶרν '"2@,NpGcC:hEObu$h flUEk_YCp(h:4Y{`?F/=YMI (JG]STȖ.y })ms=CEIDT^{ӓ^C5zIŅEhX71k)W=)p̅M$\Xd!sepap/lV&!%EH9O lvt_?ifH>s kzK|]qDOcphb=IŴQHPYPdP/ٟKvV_nNg)duv%οLЯxiY[ Knc42lTn<~@c[ B_LqtN^ ӭ;Ö*q0 &+X08ms6=9!VjϕA΅*S2bu*Nlhx~x]'Pen uSڣF^tl}n 2򙢲'`8 2!D`{ sY$f&bS&={ H,U۶(̧ ޜ#*B2wgsa8-$ă/Fj풧r8YK*ܜ\n2׬Y8O@`KA>*Jee8:gDd`s ld+T{֊UJ@hഒUqwD9XxI!#3K7YPP*.HS(Duz-L:ؙb3MT)~d/R VU_G?8脖bǹ< Ċ@cƣ6ÓLe^$In3,0kBR7I,'ˬk=eL}(&fhBX;KᨬN|pp=.Z1}䙀4+ p<)FZȪsɏOBG󦪔kx13:->$3h3 2P %h mPz7:W|^:@&)~%kH[.-tA,i.pPEwX "oK#ޣ2u(P /YzY~ҁ($i֑Pj+ϯu!_>WZgU:ߝҦ'P{:1;ɒ+&8]kL VNSz.(i9l XyFRCnyc~P4_ԓIOkӖh}须Rx,3xI%g]5ֲ@g#hz(T{DZ;ANFoh^OQ#&5" >r PNq` [1%c-}]eqI׾)#ṙ! m t㞘~.+0c"r&$[\C9^L^C.m BټA5=0:viܔі}2p.ŋ없EZu۳..7M<H W/v,99O}]y s/$|!*K$/Y2'"%M!ާ0 g~D&IAdy9gziR,6GZzQXZn/F$G8nvu >%3<*局ks@\kX<52g q*85nrEzlk3`uAIaL'-fkxsJ rDULM=,GMI {Po~ 3Yժ'% 3Hϡ͈ ` &XSX* } "n>=!0s Nk]!":b9֙Ѓm v&M9G%C=|-"eK-vu(C4')^P )=s"|y8CЙ"zZ7/_Lg[O[@)x2=,aJT:u}m̄D0}4űЂ{HB!IᏗI_wb:#XͤOn5 o(z|jɹ{?ж{PYHgϾa޸$}eNX /")A 7jn=fKszR92 ۱bb.8i4 C6?x'9b9S'Qpb Ǻug8vl|=r _p6Db"_`]=E pYeAio^67F qX7/j$Ŷs7ZxzfABmb[J=DFD(^h 8ڬKY(HP&PE-|ec)U)dyp)k Phb8cF/[>,cms! RnopANu[5_ &`\9U7|7ە/42^cW.N,A'!)cZx/:]K_ŭf>et_j(k>>( ;+uEnߙYΌtU3?Z!G[i0Lk:z6< J7BR)Ɋ2l8G&GS\ATvz8X8)h(j.~0V*|yv\V*{I8R=UFXH1]'SNѴ6@-f;!4{i,P%e`>?12-sa~ bnzp_8O`Y~xNؤ~qX/H-vHڍՇw+׀IN7 u ^<ǐ>|G!s~CS&# c~)nsQw?qiD gG~ꨁƁl_4}_ҙCXcQJxa*1ؑF4Y߲Ő dk1>fIf>6~Mgo +kO){bړP>Vқ7!ų?`>y3vvsBp&xA+lkݷ#7Jtpx _8W@N43xo N,׏S~Y7c`"a..SLX9gM.K`%]?IG\Q$\ :R]lױkNVj8m)zPC̠ *Q0=̉*QayP$`X"oӤRR[sc/yE+O@UAM8Wk|QRnv:=}c-\rp'W f2M͢}Kh4a(zuqBׄ)Ξh"giV02G~nmigq+} 8ԬIdR2\V0DӀA!u:0y(1(vV-"\d?!bUx!#74 ұC`.6=!' pE[ AB`BCgMAk IQFNk3tc\v"ə;eb.SN*w;3q*yQuцhsT DZRuzI nmߙ$ٚctIoqq?撝׎M([h>rz4ڏbW˴X|yp'{g`ބ6, .(芀}5J6Z=VEkYZ(WG9h0|x%KysMO8t\›٘ȮſQtU7e}rUزS3|dRŌDF H6RLd(E9PE4=?ӄRnJ'Jo2^Gq/ﯳ#aQErotB?.42ŪQFѤ$, 7Pz^Aq^oTa5 6 ˫v:VF9W#H,M^QȮcCߐiCAJdEO hC [IaWQ(-F-;x(կwX5@DBJzƔstv^ =E*'c2 8ztK4 _X!]5!3ٞ]OD&%mK@6F=Y-y&zѭ+{dm1ħYƤÙ?{E腙jt' Y0#Or_⣯D:IC(#ks0r4̂A_V%;ڈ*a>wuK+ķfg9-9޹ľ;in$jCLk栭}1)LA%&襐z|`[/cJk%|= pwHu`bI ?WRMqp3VI\i=GQwL!@Nː ȯ[ಜ:ڼSt1"#MSZxP8c.{ ayev@S S #ՀF@>B&plH NYݚ5y"#9ՒFQŮ0qPN☱B c×`j? c&g&'>,h`gE?K@9CDߋCCWƒI[V3cgq0{{Wk;װZVn|8'sv M|Tрb?)@eh". Qt}D>.SmfBуELi9G܃?J-#R$ N@q|.C,:։2f6IyBs٣bCs@`zB~8]nK܉ҞMZ }{ۤMebc)IN+_Z,^+w ڢJC-0|p}uo=P-Ś'YuB=@=ިiasy}M:DJK3.x>u z noT(hHVpڭ3biIL|Q;|O>x mP,-dMb8KpcAEWgbj:tAV(|]i<.q.}8AlIlC C4$6wtFYQ>h] ̀)=gY}@ Kny2)–?B*6Y=-3o[%6QxYqE/L)A꽎hc+sD (6&?a?lOylV lHճwLR|E+[|Mt'8YսJgrxXgo8NHb]1S"X5s<(ScŗK,*2BlV>ܓR40X8b#|qhKA..eFOI@EӔ /CdAA2BumNhcH(+,6W{j=)<11ǔBNUlV{gU$ڲ'?С**vARHȃrUgD$. 36_rz?f+,\ k"25ٽ:M}>H}]^ݻwb2𡽃GhF0h M>O|tml}&exf^nx"otP]b{ؔ Z|˷\Zʷ64ɈVmW{M攂!1: lXv3|ì|MK6T;ҍ=v-BZ?/ Wb&N=I9tph@LRkeϧ\c_5VniI[ U{HU]DO|ml&o*Ƣm}*&?ޔ>=b lձ|ExUwMņE-POǢ'cKn>J {mT =85*cRmOMj3(Ay,;x2y1xqsX"19npϞp<QM Mk>LNQ[7{n"]oS ^\ݦ!0|v5y!}:^Sj'մGzt(0mx";+'DwvDaVoYx,ܶsDSqCS΍~lLǵr$FRrDžNeT.rj5;Y =j]C`,~A64pK]͓wNA'X (1{~8[|WI}{R]'Tv I\Hcժ12e 'p2/bij(8Ws gl`jҔrF,ƚwyKm%z]7{0(R/ݲLf]j{VÔ]1q 9hmc8/ypF`Pz/u@4ܙ27t/hwbP Pd8sz.L+?@lo-xmF ay*lᝇ1pK#StPvm~1 ̌wVu%/Vn؈$dt$0~5N2(V3\B KY3rҭE&mI-< ?R>Ӥ:DCZmY>^ ڶHs]G&SHp]邼&b03;KyǐIx-6V§zeU&VMzN&d3Q'E\p !(8og&s޺O hOg2B:/n0W7¢މ gB^p)U/DQbSEJc?"(JxipB[fQIPV1TRk46{W|9j'+4^}F ՞\ u{]kOY=^o,ўP< ޶)Y)/p9?`&{!xBiTPwUoe#28!\Bɶh8eӭ:"[nVcIg!  [k堒JX嘴wjU^ͷCx_,sϩ:%|ėG+o\<6Ml6 %m' }z9h|4 zy H<{}Qjbwl aLMF$|᪡): \+OіD#U%]`F^˦;ho*@-[?NIHݹĦBf3APђu WG6nTtW *s hA FtR!ӻ&Ц"v6tnWi.%JDRB}Ē\OlUvpsZ6cو q3 =#O Dxn<(!S_ њgmc+qt!sV6yrtq$i>~>\M!PK:jxs* 7m ܞI&{G;ErܭT97Rd\t /Ё8 ƕ;^܆ň$tx0zi@ #ymH'i4sdoz`4^v5L ԑ@G^cmJYS@峤H}$8UBe_y]n:'pQ]czu0׎ҸZ0pG=r-q;vZǥJTk 28No'ؔ75YPe:b+ԕt 2 LaUPtEA^>L&ՇCf)OeMALYȫUj 塚zeAJS%MceY w+Ҧ B}eä!>ws-B}@D>:c<LTiI.Ve1ggN.hA1fTy )N6ЌfW=gbn!U۞m-gWс3 Uxnw K:-{J|Љ _ &]EYнY & ~iZ7 F͆E JەT&\So}`2EzKbCq6cό0Ч:̘)AkS[V.jӥ\2Fζy,w;b-!3VRg*U(A ;X04" Oh:-(i#=+IW f ~%Ɍ& 4 4^ɗ6ڐ.VGj ;eR[g3U}*#!h]DMok9s@ ٵxq)>Yцj4 ]o(~9t3joMȏ^ml5lt$eA!45 ީjYӄ % ` < GW_ٖ7C6w@arF2`ޮߨ<&Thkwγůy2_e'fRE&~}Pa?ǗcDH+J\ѣȫ}c0?;w%;ܤ{-H"ь .mD$O*Rb5h~ F,]0,_vJJLٔ֌e6 ^G+@ԐpP6䄫' U/ [|'*d̽(_}:}[#<^֑SίF]ފћrlfv,UYjX r=Cҳ7L,aVCjHm*zm./uMhc3UV5KcKnO3ʗ@`@NZ5֤Kqp ƍ|Uqb%4[p7+M\(U<~P\IJ}h~e&.MYbn! /_:!@dƪr;:[<rKd+epLn,?87afbwl"]L&_213>#`SO:nvT/`xH*p<)8^aO|/TZQ\KSm?=0 `@.xu.84+ 뤈96-u 0WƸK~γ{b7i/B.#`ƃ qLvG^;=1<;:jzcd[\lg@"I1%2`{wEf;>p{%-J™%,AvSm<[%ak2lTp98ꇐ.Rv[V<,E/gy_hF;s|dQaCL;ot"a.D!:6>_B"z1IҚӓP.?׮֏(`¦m>ka^OfNÄ)V}*9\w"wϦցeҺTN8Ek޵]0u·ɡ-ybdꆈUQ L#`Cl} W!ib )L-Ns;nl|8c8'''$Mə\ oiA'+먈E, ذp:?cs\G"i"ؼ]0P9iRilƂoJ*05uOovŹ̖B4R5zGPdYB) )DM%w/7k֫*%7˜7U$@Ra?tH 9CEnh}bae;1%T8]Ek[QM==bOaRS"{8 ƷR Z, w:ms8 Rk7H1Jl9Y],h%v>TY} [Bo`)osDPnnJǘk~;Y:M|i!4n}|#Ce] _ӓ23Mg^J$hWg6_DK)7#erl6 r|Bz̢?=NAPp=IG{H)04ttzei-X] 7aknrٯ1὚2jnS] [8T|8Gv)Z6.HhG_lLzԠ<1JA!72;]  ;Nc`*>@qm0lu?Wk.?XϬ(–Z կ+N2Ax 7Qn\ǒhZ%K{ IpX˔G%1ǴW>osGBTf„3Mw]h769}W&mcx^i}wS>^M?F]K|Q[8H,؃N䬍!H4ʠ(UDO+y6u//vA!qE&8X_Z CI9CEˮm:pxi#1HݜK%mc8r #Q9 [wuAty\'berEy]:X#q@Rt6벙Em+b _&OOL4*e'V=E"paSPz|8*N0[k׾D1l ڪ(@{aH_[LZ4F T@!:v: {)}}F%C"VhQ9DH׀}Ms$X@dKErP$ܒlCXE'[$Gc=̾]c$ ]Hģ{c+ydw|ğ]FCTk-KC2z#aR_ -H\P>kUy X817Rmhzf$tD~}Z:Q%2w^2sW< x &c?Nl[vcL 2ڲۘ9Kհ`nQ5xКg%{UGA[;$ fxQ"2)?C79EU 1'FsX 7i#C8I0Ƙz@;58?;\b s*!+pBQg_G N! oHVS+ }S]Y`XͱB#ME1ПNj=} u/ZJކĶQnH`@ ^ uW^DU`H5jw7T7ba62peͱjbJ:x/$Q4n0)'{O2-W92w9:,۫Ln%Z UmVEٴ+2bߌSc JvdɗSO$8,KkorZ0\N I}>^IfA[={Lm`D_Ꜵp)!37ǝB53G'T!O`Ҕ5cMAMΝ_`E4cQ}k'FL-꫐]Ѩf 8(p 7, 8h'p f(aSK4Vq9]Xc-piG?-so>ֻY:Yʀ&|_rllgm~|&n1'24kaK_ة^6HGI^^TR7_2ez7t[&l{/pȟޒ0~Z"0 ND1ͦB!kpAUz^[ҌPc AƗ= -WǢRVM Ty`ߧ;yilۡ1:IbZUY0UPKҞ C$-uI>x~op}tumqd/-CG44C"AtBD3ha7zfE y h$ϑDxjOY0УH z|`kzi`;mܰۛ6gK@*Bgi̍˻G9R4K9q|!1]` t6%h6SR\ HrXl#O+,y9gZ"a J2PWn"],%k0^tFf3\e,&of1M2b3^#5l; UBv.b)/C43}5g4y$ oۤiGyZWvUb/*XĊؤ2ڂ2;<=:)vk0_!e?& >L:A2e9\1g|T:1x"5%XQf:+4@g4RHi.X{iZM,3)@ yܻhQ/uڹ LWC[ON¤UUz0x:D>2MYzJ=Ԩ?ceœ\ՀF͔_evV Ȟfa;-{#.#H%;O5KI__.McÑ{TZ4q;`0 fqMLb 2)x"(^Ǖ氄3t*NǂR~eOk#:jEdž^>CSdrT#' xN]TdE+/*:gCx_.݉ ߇mMמT>ӏBN(Z/H`kRІ4BSU%gPcuE9Ϳ*Ǵg1j YDqB@{CyBphP 8jmBCG3RU@ Ry'pޟ4Akw _r^q`Vb&vĮ#Ojs[R l]KiZrK^4O-~,X]H/ N 7OuiZ9(DKM}^H ka^o${kdT UGQ^dAZƥw+l$xwKH!U3f+Xc$oXm]s/I5#qE:w#'0" zk*h=WO) "|U_E#0b_5(]p' ޠ}h%]AO74IL,&ik[{LTذɛgXP%g%=cq[3̖{#aX5<_Cjs V6 S!!ug؟V+ѧPRA])noR&fQ5M :g:AOJ-o5*R;/6]fa_zCǭy+[m΁+*,Q?# ,U-_~ YD]^Q] 7R& .}>h?)o/WU~@[7K4NwtkgVZSLC^q(Ճ5bQ4z$Ȏƨ{$w .Kā1n[ f9yPd 4\urkbMl{aީ$eewBso燎"AFƷtVK<‰~9 v\=P 8B,>*L#15dJ:o_IpGywIW )'/B4ST]q枠u/vJrvAe -!\'lk gM܆xN, R,>fRFa $%ki*'2py{|T&1Sj\^H&dgYQ]PdJ]A+fEu+uJ9j3tc4SK.F۷%k5 'U('=mNևqv2nB]0LnXMd?Ua tLcv:`22Yk")b{y)Wƿ |!w^Cxi(B_<;,j{D< s*bF*&X6Dw*隞UXOOtuwR}R}|0mgSMz9&KKiP+I+G$0[g+-h|WC̋ajZ..U*nϹ⓵ ΃_^ZmF%pE]s߭CS2drbQz[(=@G7f Oi1 ^ /%lg紝8{wd13L I{ӈTChm04f&P^iNѯbRz5wU*YcC&U4^6ֲZK@4aՍ\d#G{#PNԵ,Ƅ?oEYGom?ݼ:c(Xt{0«Z2nձ_or^v{liݜM,Ǭ=rv!Dؚ6}\%%ޮ1JNcS馺\ /5%jq%;dMy(KP_v~TʧȾsօă#JI5BuW-]Tۿ6+X_I7nѿmm * ^wsz!)}l> :1.o$qX˿b:('ܤsL Qe|?;ٌRT<_P jF?n@ 7lɺw7_s!zN1ΝAXdrMܹH^X.: \Kpp:B .:2(z$f%z9Ⱥ5n) npIf1O.K-~Z ;mnb:vo0ʄ>%tѭ y@QӚ MC QקYgo;R\r;֖ѼxW@MjAB@}#)MH5zBPB}FE+ZF9 j8`T+:6:Fsm_R9(&(CDK6YS2ScSXSqXՎa%NJ~CjEa)ABc >)#4Yoh wI͟3G*HMuMUᗜ4ܖʄ vsZj˱^N'Kz}@HI]?n/dWE75J:[mtIDRƕ+_߂0R]*G}T|!tLVq=| Woxqиג%0nS` STqLҰd&,J`nP[0V$3ruvmtq4|d 9Zf9YOzujXLE w[sTae":JP /=,T~lVO:B -r;jl BH&;$ܱ `гaW_:WYeQyv)ME}$DOpV=THTq{W1AF4t9>Tis AR~-3XW Bu`E0C/RGԛX36DnC\Ջ&8s#|qU+* u3 /Fǟ,s 84X2s YBjFi>Yl>XE o Wp ^|塮GR:ks@IRvv;$ͦב!4%I?[,{jbscwEO_M]f*^kʛ:9;,NL,z]\F) $mWȇn%v!2nP⬲.p眙D8YHPn'FS7#O@A~$.bd9$Oo mtZpz> *!BKM8~x<5/>@ 1No~%!=wv)$~z1Y{4hO/3!`tmL5yr+Y֛=TO㱬Cyy / J9(bHXsڎ(7Ol94Gc0s,0abbA||"ڂ.O]3,ԭ;/.+Ͼ -IlSGrzDx*ыe*0CL9uNlqq ss`DXJ8G߀yggd*̧S2 \\$xmv=2a}#_ ,J,oXx9D'i 9q8RYiL4|z~gXȁ9]I .0ɋRڢd[v6t!Ve ]=UBn5L,1I%GIU;)@9~Puu o&~G15oHsm|OorK s  ~ڊx$y J]Lqsl @12+7;vc3&WvKIRQBc糬6~7b)/qm3;wqz8Btt)Dt'tbNP ي*V1gMh .:LOԛ>q3ewI\* <H!,733wn,rѧ~9sR_Q 鵠s u$t/sny=B(L/7djʞx͝pЪ76|RE'O^C.+Gbu/V.;YvJ`<||g %`P?֥:OYEUw(ݘK_T<]/ü Q$>?k/Oi)oP4A{ަlAvMbr{STJJӫG*K)"W̃P0XەXF!R o[?LDfv~?_B!B<7L.` mM}?Ea/ B`"h٭|fu3zȐԣ\DڦP٠T4jI8Cz6,F}g;q|A4Syc6<ɓ@Gԇ\P;1Kf8u2g!PՏSkTe$k J,rM!k@?zo]Lh%xB¡i3 ani}+jwGeؗ=␡$]Q.l&+lzs#36 dKJ?o^>{͈; >?b!$0/z>]/z׬2u͌>["\H e_:]DtԞOcyL1aIRѱl$d!_\*wBO;.^7;Cbڲ p.fCQ@uJ!jrYCZеnn,&j˕?!hbgJqMk>,z]rxu|3&U:lO0c-RG@)ԡ5ZJV̫ǿ\De"m|.oLTAI6Z()doVHa*$Ý%-+:,3y?{b %I̶=.~ 1ݕ{9~bpA:2m  z律j4}ub2(AI]Ѫu]3NA$UЩاLQyY@FBE{Gre`"LE qw-O%LVɯ1N=ѭ Mic) i’za#Ѿ/bQ@㘕FF]#xJG)Om]A3 :}u>Cb-؂\fOX!=IM}؉=ϖكTzZKpo z&Ι~3fm{H`&yױBxEX6hŹP<!dBR. $!IP&7E<{܇/M61 YpMQFmh~]?H*VSyЭи< kߗ€5x55RÛP43s6DLsݺ-e·E |(T~'UY&"jX %ekD)_ &90E"nm-|ôibM3~46HbLZ:6/oS[iGSb(|n9ۃYDZTOI!P5{߂ B'F]MaAIv?p~&2,a T)My#~kJz?bTAiDn @`#rߚ$V,THIdl|Vkꖷ@ET\!s ,33qiw0hq jˣ _  ek9IM*աCz;ML9"Z`fX=oLIƛqǁ 4 nA;0S">*H{LQ kD+\3U/Q5`?|Ec iaX1mO L?0͈J~L[`ČB[53Ѽc<ƁrgytS*Qa#R#ɷqmp"֘CKMvw06RΕWW9QEĵKwʯDu쳯8P-+ pFĩdM94zv$gGmWV`}τ0'GWi.m+ql'[ῑ/7B:L$/L4XS(_/`:Gӛ]0#e(hU70"~x.ltή\V1 \_<8u/~A!>C#ӋT ҍ0J3ˣSaw'DXRٿFK(Zԩ$QJvF.Džb=2B=>mY?:aGe{/x\ɉ }k'.l}kT>$P9٘8z},3֕,O\{,^ f?!!_zqEj>Nm$16+ {dvYn"eP\jc5<ĎK!A3jto5 c|!z6nwzl;~ǒa+o'U-ܦr} DI9nI]bϴQ_'z@ tPIWRj ]@\)"⹸"fQ`4&0qL6e _GvyE̻pg{`b9z*"ڀ\ṕv'>{t@ɏ, e:Ss JgSԚЬ-5HN* $&a:^V1!ZSq&yQŚ:9(Z7ñ%1вntOWh/ׯPO~(b/9#t;#7LhI @sT>@ 01d}Q'D mp@yk vK)n-j~15ICrX@T-*~bsR=52)TņI%ڟBzdI{ 4np I׹\!mpjjG&-2dSP i S`Bl ~vhrXr;e?QM'}K~,Yˑ\j 8KX~wkJ0ɫgWtLmdnj?6%m~t~J"_<9 !I'>id-tC\ L9N,;Qoan(c^7vBmyשİT 7#IK7(=b 剤sqw-wh\( W0\3X&ɾ%,b^'ܘ?ђJ4fJ%~`8;&ۗ)pNˉ);Oa2;D lKI{;;\>C6{Yp9[iC9:5>OW}2B`tܽ0Ͽ+ 3'Uo?k6~#Xo5w%k`鶞tX JfH#.B͌v'7>Rl}~[E›X}@{@$,g;Gy"+-O!oi1 4'Nc6Js}Ic+.ƵIdW+j=Pd沭$fq*% pd_X"w4_鋮;Ft,$YnkTIm&iڽUnNp;YҗACFEWK =uot2ڝlhapZثڹQO.iydlDriJbeơ)L rz}L2@ $ŏw0y/5ck?<39lF }VP?gϊ\]yA)MoE_gfDH ְ`Z{xO`xK6ӭ﵆u[;͆v/DŽKbv}< QAC䊑z9LF̋^D<Б{u#m E3d#Z{Kk`CGWEڊ0 %3qْYI?נp(,"g]l#EOqong}>ů,o;裰&/sѺ"t?Y.SdOHP,Uu{3y vڧ |[~hnOH>'^zTzMSa}C{߁ ;.B/N;wu|q RM1Qd&=~z3~Q+cI@7Ory~yT>'5.'L-hJnGvp+?rwă,$y~8L Py x(=L䭼 c}a*'!=2XpdHzU¥WLW0c@0'覗["9n7+@nDN+-c@pi%bpO[Ȗ%ӬJEͮBB% F_)'{ox :ɦu^7H .Ou8ԟݳ/O鲼'f`椼$L^>ŌFț"0Ov X>d5˝ ZaShk&ÑG|OIȭ<|( l3kn3HVqfǍt'eB6JuY1+!*fHF.?(]WōwV[sۼK 8vغOg ,QX!o:~`+6/ł C!`A)([nX0 Ɠ[#P?8{a'-JEo*3^i[;=ٵ(8LE+,IT%D-b}Bؙa &=/EORGh6Xv# o W-B<(FFQ1"ð0B D]BČsK=.vdV@ye8e1(u&Tic|2#Or@_>|~GNTGQ)j[8e%*Z<ࡰu5Q侑; NY TBd;p=AOmrB] Fu&=鍻rJA7 &ҡK/tPWTNAI?nz+H;jx|aˆ&=#0 (t>"?b/ח?pHyXrc o_e}nTǖ-9X߮qz+c C8Ѱt`ladܷhJS5$CB}(f( BJ1ѕˈ !hTfzzzs<1KP!A hI[D7r5n\E'XnCF{#.Hу{lm{F9ڱDkh|wIgn7}YXк}'v@]Ɉ xhNbҸ4=˙aQ~ƱĒtAפ! XW5ׯG6Ԋs6^>V29P 2jRV9犙a6EH:V^8B%NI_vZ;'(ne4['y찬9Pb[3[j_N>^/UA CɊ.(\ 3-1DVe9 GQw} G*J }նBZ%K)c"n'ܮ8t%O\Κƒu0Ŏ]VsGiu2ga3%ކ$<((<c݆c Xĕ 䎆q omx-01<yё"3u)Sӗy(W : R3 3Mc#Ʋ,' 6.ØO/0;hDzӘMYY\OZot+^YF>gif-<^-Ɂ>yaڏx6Ij28ZR3`J*1=XDu0p;wsQ"]) B( җr[؟&I0|ݡD YϨCxƌM/' B0!=X.y;Dn2½Ŧ\66~ms10T9a^"g t>D_{yƇ~: ˪4ԄC}ŧ> qgfB;I&R4CurZe~X# 9 Z |΄v OOKS+rIļveNJ <+aza7IT8 g\G.2jv´/tv0]KIӓg"@\Ϥ%;h栓F_֝לX"jԆ<#ٓ@EVA P|M5Rr{]3"wʣt>L;mD \˼zUXtt4ca"|#,ڑA==V'~ ^(HiD^t\*B _)c]" Ɗ|d(Cu8xiX6oxUq*UR))ިzV>l +hˣ;g֨lF"h'\\=14!axdxGξUӳVF]ҠQCܙ Y|?tvЀlaˆI[ 2-'6n>Kw Vk;Dm45}?*qGH+y`dX?.Q7s0nGRLf^zejv{ʹMh5PO&Rmk=-R\Ya=3xс6ȗ^܆fa`5)'dر?A)wa33ƚ , hW؆`1; u,X4D@E /0Z:\z*aJ~;uQdOw7^ڹQ͂}{{Q̻ سs6xENiRac$pT4jQKSQsx]tW*eDI͡۵O}Yàް %M(MPa2 @cڴ"FM>&=>O0- 7=ťt#NNς!ї9B?/U;4q;['`uasB*N+F1jZ.^+j`mjqj@́K)^?v]pҊ ֮O"շ>C'Xcfxt?{}BW@-KXdNt%&m'| ($F@vv19^!u0clQX3#ruI`;02y=PvO/ *C%Y2*sx1W5q,y٤Ǭm/)ͻ9&Z7B|Zsvbw=tp &g<6&ݽE/L.,P4P(P@Se Vos`ߐVsB+38Jbe5.٨~m1:Ӆw;C_hë阂2"szXaV*DRxX G؈P7ΛIK_8߮bdú7Oٸ3GATx囲l  8(,MSj%RGF/t灼boe-E\cVLv"M!_7Sa!*4+*iv/4ƓwYfkЈ^E»z!=tM1ڜhUT զ1:ym{]D  OÏ[|1~?\2G$V7B]H|*nJ$ 4gRZSƢ{E˸Mxh8Ν^US 3$}nI?sVRʖLv 2W0 _1:9g4h&%Xjz3wD{̒ntat)Z;qɽ@m3FZC෦c$ջUK˦πPp bz9bHFcVĽ *;l:oȁgf"i?ob+rmĺjL~윿S V !|PĢE'z]@=3cHs?npM&Ugjy(D! a-M|gUIͰ##"7-]쉏9/+2[8|S6% u:Rǣ5N^g!rUܔ֜ߚJǎ $,3:\;$"ivŇI.w[8x}xړ1B+UB#.uO^EzQcǨI<>\-J.4)nWK X ],e{lS.ї0 I(=ԾG9s7] sH3hJJA.m²QSwQgg`Ct\mh끮?ⓕC(잷⃒By̗ / *Iک]~=0VkXY݀x()Q`HWh vr:SrYfYȅ8vk[yO<ឃk|+$ل4N'_ۻ%Xy}-4ȝ)]F%?i^umLId1k~}Dz>-mvvMd漤7HxCЬHϜ,\}C}($0eT׳}`:l(C ϥ?P{7L5j}Ŝ eh}wZqU}=EuXz&Lapi*?5yV<ƣF˗-zM85V "/챔"yY!D.'!dʚ/NaTv,!$hC,5!\իvY4w_8b/Q=j$cK/TLv s}M=T:ǘ 4McaU[idqJ&-+_`#U`jllQ7u)g@:3CbԝWly)g fQH2_g)ᮐma ѝ\^*g  WW[aA>I,^L5ďf%ŨBѴHݾ~}_I4nd )(aAKڮ8 >0[%?JKh }i(䂋#{QМl0%!˚3׻0NYĚLi ABYd /GaWcĥvϳszUm˓V^'4\wۘ42oJ̻>h- Bo%)J؎P=+ml^ZC>+TLLe@~|_/B6S{!ɔQkc \vA@̛{E_9:ϐ;60( q/:]ghP} /J| n@D{6Q1 QAԾ87Uo]=/a`iYqTģb&pñle-wsjc3=`ғ.T"k`[VZ6QgxxijԻ?q axx+czHLl8:w?Pd꘼ZZ52?³qweAΧvY986h0&@{d[TP2ߧ. E7!LZI2gGQێxm<ɵ41nn:.>N\ғ8*3C J_+T&+M艊Tp id8aB[.Y-?k (A®ɛ)ϔ51[ּ~C l7%3 '9I6I|G[Dһ!9jvpûBszuc,];xaeHgR],Y ƀByT$kg;9 LWț] ٜR =#ނT-DoKa؂`;UɹIxJ|4(Y/] c$%-1)ל2l.TY)i;cR{T1;9\!EY%㑓 efR {eU%~Ucj :),[8[1j2T==-qaR3|ֻB LF^+5 a!_ʢ?導#5>dᓜhq#EnLj7-R~5)=@,4*fq#>%Mp$ߣzcGNKOx L?vgmEc5z]HO{'$"vr]a)شWzfD ~ԐD)?*m2B'HҙH\( JDي$=?V`S2xEsȍ./>Wc*Uv mCSGjۘ㦚nQ+%JB5F\C-"&ѺpL ЪSQ=y6IsBZnRy45IY%)$bgcxqR5n5c"\5MD/PB5E.dPr<%ş2/ M]Tdވ4K޸@o s8HzpN>-'V(Þw]K֌].j˴{ $P'nufқ xNlL@MLtpj.:էA[ފ9{q<-ԋ`;*>}!ۋ$PY,JYJ䅨9{+ )G nC{iؑpp Bsx:~)r|sr豪`T~S;V4&Z!T)K:;}O֯RKj!-nzS/d eW3ZoaB 숱Hp&Q&X˅r,GeDM4ϮQ/E.+Lۡ 9LjN#ؗa[;hbDł  F!} EL fVGn4'!5juBO5 Uo,zfǂP}sab<x8އ*E4gJ4WJA޵q :rY)2.n|B4F뗙 RihTxtb~MmRܒov@=4xx-G"rH̾BROҘaQi~ 퉝fX18B*ՊG{X'jğ ;}aڐ=YCu8tT)]\!de~6̖Ǿ$(Ao!C˩~'{ { k.톏xf0m,^!q<Ǣ!!z(pSku3!؝1a%ȿ‰  "!WF-fe/>짻]{\ֈ b57+n$%ZIEITZ}H1RbqqI ⽆ve|~~&KTBKS.TL0`U6J)Npv01P' *\fܰE T#vmTmJ|H4x7^[44Co_jxG-1Zn:9)8X|ۣNd仞&w?F3%\)OO䕍xaA~#]~ߊfD<*Gg)K䉹e,wMаq2E*;sy;i>xq(:$_ƀWX" Fs-?Y|$-69!֍"9rT3>e/"&8ޒf1e0pL/ʭ1=AQOz.a`֬Գ߄뽽l\$0~}TzKǔQ|֌jwLL#KcNGFenG(^4$ko7+jG6tB">2Vz8NXr4Ѳl/Q9;X(aZVeHXNtmd#h~=cyibn76q;-$kxXe [զJ4>6hO*s!1),9_dnWյYŞN΍E%IvXBC-XQϘ;00q&>b(mc]jZCe)wJÈM`R*:BsTCe+? R‚8?ƕgXL^ϻUu- rf 6%U2n`@kyj6XLal~Ą?vn8οMΓK7F{ܰf<|p\G5*8e=@4}OV JZ9DS؄f.]y ^eZ/C64&A@5tz>rGQ.tLr2FYiGPᠵ($sSqҶ=8k}@Da;J7w#&β$WH`lҲbʇQ?k xI3r9?F=-d)|F0 $v H;*jO ynƿG1AOxg. |0 G46H2%qBnCΥV2?8L}bڢ(` !<7\nӯ{Wߴ\P aW!Hxv>PZ7!)+ p$X|~J.+%M@YpDLS,{_o5l Eb=k 񤰉Mw\A|,7qV"l. tԣٿتNx9?߼Qj3dIUq%e.mtsy Ȳw`҄>m([T[^+6`a0U0A7-4ݳ{j%(.H^ńg=<̏̄p.X̲M]޸99s$^D cTZiڬJ FD9d[5[v 灭مlٳu(i!MIrh_хzw`k |*s%1vh|K4:D{NNz0/ydfd =J?֮rM`!y/eFJf< `)F䒱߫O6\UŀN-s'0x#( xu*4QmΜ\ gۭN&[(C*^kxx>3'%( h> QU`S$@jh&GX$q #0\xMir1[$nklSs<^Eh]@/o%lAFh\T5-Í>>ËUs»4=p8y'DCs,ȹ]{ װjV_]CC aHi]UGv۬F=TPLӶ[GBQzMl|k)7-V R&ۏU5i x 0vf60Ēxfu>3+-1iBڞV1zFܨs]hʳ%92!<nUm0&ȩ[U GZnKR9'Tq{L"` ute^V5į1KL ]܃p;x! k'fq BiXӗ\C\ZO4l,ֲ-|8gJn ޘd`**}T[ځDHfvn /l|ܥs ufl|t` i߀Al||YZE!HPسzw nRG޴;uyBo_`B]:^b^Vj!Ma Sݺ({ ZZ* GWYVU|hKNGPe4  Cywi>і̞n("/悘`2zO?:paS7aD џ}b8ys&cـLr_dNr$Md; WTҁ; 8 ,dV*&MZS2c;s}uh+m w& Yej*V( B؇%SԫR9|w?ԑ"0s"DXNȉ:i>$ۭ 2,9{M3O'Z_Ǝ_a(/o8S΅λ\Ɲ v!mm}sFHRlЏtYQsB 0ߛL{uBY97#&Ў[3,r3Mc PٌUV58Ynt;B,+&.s:TKԮBiH{d"FX:zwzZ6dx|J _*RoCk esRcHoĿx8̡KoE4ʡJWTP\Z`7 K|D`̘̹uZδW7qW%3@"g16_ঁ5:A11 T!2+c:G}eq,d3zٛCcWL9#DwgQQ C`9v7iSu6Xd>%$e/?_{lҙ f (kA5-C俯lH>0t!&]Bu'7~M1ZD"gNѡ!K]=wĖ. GXJ5I^m B%*S(ѻ T&p,[g3P h5]xRCEjT| 1K냀SG[Ik(`#g@R)Zm_LfR8 ]> k.)4Zg8]C ×*/bJ(J% ٷ ̻fګDŰ~;xPT$zԼJBT6@Z|Jݯ{u`QY7^X(~JRP1Een/kؽ9Eo0hܲ)!`e5}=`svkK(HmN+ qhkhm+{Nc٠FnfG݇B6qkʉeWD̼&y,4(hg}NÆӡUd5*0.&_m_PDi}<= ϵ*Og卯Jl{ !jO8X`lq^$f6S!ÍqfoF:L(a>@)3+#T[xNh5v^n݁C{BhD <ϧOd`L]18o|'S+w]D]WJ'W*NX4u> VJ~ۗPG(-R:;`ă^)`5*ZcK У.gE23FP*\٭޽8r>MQA({"N[EůIWG: ?|kԑ/vHUߣXkEWmx ulk$cH,s?`$:Հ~[:ح {+lV%=(h'HQv IM>~E(4d2kq \sCҥ~#8wBZ#UVwI87\ f9; Tj4ÀT+%DbwY_~4 qG{'1VÄAxǘ\(2zɑ޶h43 lx?nu]נI"c$ J O0p4=9'm XLt@8R(k~ئJFjIJA[4X3$qg߅ѡH>5#Dha$Mv *F(uh;_rՐR7: sB řp)s=J>)AϛRH<":ďD1#k_$CO,Z ^ abLJ(snn zϕT^u. $q)^XҀild!N(4U,,/DŅ뿯!Zp_b 'mKwFCĞE)Fg]I;")ʵ޾K엁J#xS`xY @_K-,a +F1$l[]پc|OwԶoBP אFMI)\$@#ƦLo'olH{3v8pO@BLfѷ^:fN~\8FBL`]pȥ|T*',DcC}yN49&O/UGƨډh*L5HrI] prcoW@\Ӝ'3jX(ïl~ֹj*݃#fAW XIڊY[LvR7MR.C.3+ 2a?چ@ȶU'+lͱwcȉ L[qq8_]kl)iA/E9?|m9>B9={/K6)Ɗ_B4eZ8?K?Ȟb pSh,\9\5wvm pGA.E Kߡ?cs/P{~A xJ*|==Ydd0[ ǧp0|l *:SP#)B#S8y^Bep:j F7yP;JOwጝY@s|!ρJZ`şb{hK;8nOk%~s'Th %> /Ģ!R(؁ܵ+XJ13"aZ$:jjX2$&~y(_҃#h)F}Ee6U/ZFuf35S$G8J($*?F(lړ =4Ͱ̉moYdՆ!87:V]9MgBJ4'bb 6)c72G_)ZD vSA~jA e$N_YoL=I"pty u^%ȣ0 <Y vtTlKF:aV E]6e3@7 sCZ]w5wpgu"%Y֏ 5򩮸LNj\2"$2i02^Ꮗz !Wò'nc%{$E9^yZ`p3ItC7jk}3.]G)$yT%(g_ !@A'zUH[m)q'Wdξ7Ĩ_ANy9;J9Gp%Zr_.otIPgc .ϰgN*q Jģ.N2)Tj(~3Sp@US)Bb00ԕAIw*#]M Hx%cKl(?#,Q]NF9[F|O\tbOц"i"hh1~/ē" 7P58cJ:3DLoԧJMGXcsa97cqHK X"'8zثMk0YKzQ^u!#Lc/=R``'bm qѻT,U ; 83.Fv+Z&.e##qE-˂4^TJx![hx@.@N_%JJ1QGuwA*>p! 9nkzЅhlxt]yi 9#k߅g6cU~s|mȤ-K (hNM#PkURgNoFSDHp(`&.C Tt7X>AﺘM*l E<%SuXPm&$?gWHȠLTjZDg*ELǴZ+a%z+ HPwя\G,is~ y_Gܲ vsB@WHNTDN!yB +uX%*U{5b Amm~FE뉧(c?P6o [2|p9VFD^#+ml u Qd {Q c6DqE$G[R"¼K%o~97ۿ{7 R3rZaTsڧmL`9vII[I@NE1tB Q.Cn|* Q7o)]ʽ0mg5-J"+T2W 1홣OL = 2DрM~_I븳5C6Yrg ELLd*{jW1ynWszj0Anp4y6~~%)DOdVqwh/mv&(..pḠwf[>vKStRrCBNPb1fنA(5&!Y䠟 XC !p갺,EpXN1lO4nqΎ+r 4O$6ah΢.zPOpf\|H%F2pV|_)M˷'pG;=.wc3}QVM$Vq(L &C\cll#~ W dc4JM/Il^61t|"i>;Ld9eM . L@q]P$`&0e6v/)b)DKm+APHjO.]9b_:^[[N-`LZViy"nv-a\"Le<8GG)dm޽lRld!$04*NifN@3`9u.oNٶM ,$Eh Tf?MR͍\z&Y#%ן p`"f}jCh̍oʇism'zw- +-fşRƪq&wuKG OX)o>] ~8~=-/0_`iI!;ڸ6fq#"auaR ^ bF`ðԯ&aP?`,aSOKڧTka63KFJk'+ё!Ws| )?C/8H_ѭӼ5c[Ħ٫k>qzQ􈕄Sb=Os1$X9nmFbCEƪ3u_'92>E(@ߑ.˕{Cyܸ7xw$3,\f /!,+5H(KQ`?5eҵdES?FyK!,.gCcS&u.]+ |*VXabjj?>ںTI sR’aV b:'47:z#*C:i|fWoojЅO^U9j 0ݪaQYKŦMK~yߔv.5@0eH^C/d7I{]" $3`%^3 RB98e8YgOP(zP["|6-H"fe%d#*SxnҴg>.'t9> r,#X[վNŖV")؇ wLGѕBGo"xTz/sꝎ uzVkhe>Qo̍aob?U'{g {S[h)uɅ^! -Ƀ7ʑm9ȏʸ{'ɃC:ˣ.ALNo ^fzUazO/.WfVʁOT ruiۇ9bA+[V T 5DԂ6R  Z(T;c޷IND+K3b\Z* Qwx+̨I/5i#LQ;a26.Wf Q8(߿ST?Tc̓9|`+,LE P8m -R{V?Rp\3Ѫ9^!SMϓJRӯg^&Wyz{C }Q62;*&;4M/zcV o׷hz0E *, }U+ޢu͊}7@r5У=8$oɓCRwOa棞>` ج7$?ضzaŋ1?!s՝z YnFbP]w;f[c| Qq;T?O۝Vnw&E%{yĻ E8{1 }H<ɪIEKQ}yA~>Ur#ag*`e$Fg?I4 6C㩳LyM?Zvr]҇4Bg rgKA\zĸi!dғ2V GLdZz&: !1d`B3j4^ʹH+\t/!~GdSԑiRtկ~oqC߀g6U$O/$5"S c!O"(%=5֊NUp:p/SCki/+u)'W;!h v'(`ĬzlJ:xICPM4 Au^kuAC|e;/IpgďR}e}ӾN}& XFH"yMXIrnq1,BU)+H xnC,B$9V۩j#X)$A1ůX@2hĽ ߽$_Nz0줘|s5 y }tɥJ_::߅ٗ7|c_;1%tAitYZdw,%\'ԃsN=*Zy} d@2/o '9TtO .xgq^S#ܔ#軩dk,S60V IJ~SY[0{qzdh3Pş7s -.0M:3܇{kIQ7u,DlIvV8 'եA{uآn$낈y7P/ґ'g\Ɉc ]e3e*D}, L0['/ 2J.n#2~$2/ ǽe V#w ]_6>K>>[NWb{uq#>zĽmIgi뼲 a 4:}RK}2ZF`7G%Cnf a"ʏa6M5_dŷ4=@ eL5x~\-PK!S%w;XB+GǿȮ0̰2ݤ1ӛɬ*u?hߟ]ftTf*~FX*|D+@z$T:s%VzKŠ3e 7_Xwbqs(Ey cV:HZ>h2PV_E ~m<ՆИōQbv> Ce Qs}_B-lhIXfUD^ddF]aN!u)Ve4xH#+%_ Kk3V#%Wbs#+k Zq~Ka+rQ']~L l!Y(H!OiqzK zE;im\x&8:\jXUH{biq= [fGqA.:5p6] AK yT MYa%~lX υ4Ǒ1w? Fٴ5 YP>*Z yUBt:_éytiy:ϡXE S|bBwm%Qʬ'{M/]Ƈ+,4TTG.^tL͍⿂Ro,S?sͼD"}P]ZZCSMD@@^%-_qKХ{ %"-f7e^H|17y|Niz1R2v\PkwIEflj-j:\ #i/4O>b s<4yy[Rjv5ѻMV)~ŽMִP<{RPh P4T~W8xC[ -v9*XkKpZX|'M=r⻻J :[();߮l5nbU?{vm%sE;``<_ 1'C^pkbmkZ)YdG/3,0 't@Q6 Je_btO)4fsETf;7a(;]<4e ]z9Ǜp0Lt+w')&2Vf*ҍS3_r7ađdȊ$OlA_Q`ma&;U L1g51J"S}Ԯ!Q8i-ūԥ1%F?v)w2xVZ:{N(ظMmjd  U#0}avFHc$Fn9O hi8Ei3If"nYKx@E+dVث?M^'"Wd=OsbFAtu]ި^Y[C%Gwv1vcVF1Kk+(za]g읓Lv掸8,4xy5@\k_0;>ތx4kZԹlE#qEPдw*[b Ewx֞Uӌ;B=-4HWމ&t,1&]C?_%hpĥ.j~.Sl{8h+mx/-d,9569LD,WdlO1M:(4'ݎw7X׳NhNמ-.\*jcO2۴@BJ$3E4r.fuy(}p,**'IH TPB|ru.^8/+"N'j$<^jmWD+R9ىSi'ܪ*]o?Pß{`k@ P:VLN<(ud>|ӟՁq3/T\vȵz^(4oaA OB CfgXz%N>poljJmq* q,ªy.SjFK27"ܕj%DK)_=GSCIES$UM_rp*8A$Xq;.m}klIA[OٜyRM0xQK Fy6N}=)@Gګ.6,y"`?{'~d)h|oǺ0$c.q8djEn(5헷_- 6W쌗?;S `B]UT!)$nneA:2& ߻1ĄD鷗SE>\ 檙n;)yP;1XK6 =PpH |}7xD%U/,0BI mܛt„g:S(8EZ޴ƿ;ҎseyOKp(DOo0xBTCm&}j M֚66 S/<̝$ԐT*,a45s*DmRĹC}aq~2\J޴mx|yЪ-Y5T;3ֽ^NR:4 /`{/wBVZoy=2ϋg[c!O/,3 = o;50 uШ`7ORTƏ]FNA >-!]Lh1W$̓F AKQ4at^E\˱Llz6\l x>_0bIr~y~74ؕ>0_L㓳IL2K&`y[kLxfibrԑ΀#Dw}  P8Qdȇ W$7JuJ|h#wi6ۦGB=q=!bQTJUc* !!D AݮT11e ϭZ(toD4٪a* 38KJyz,)F%SEll@>O01fL=q<0[wƴC]xV6?B)k5ӉG/9ʽAa_;N tQ5VnU$c[NG!+ۧx9ŋ{S e3B:;y.Ck7 s$ZϷ)t7/fK3+'\ ~s]8|C nW@P 8/ > `{^pTuUP ]ELH;.u[wTDA_|MSR6`t@n ܟI18[Dɲ-bEJM×ܕ+˷K֒c]D!)h&j2G]̸[dI^''ŢYqwb2*$$~% `\GKlF9]u$!]u-c+yY7?siI>z,Fo~&\1 2wd4ɨ _RvQ:9'9TI/kmIu.hBl*mQ<;g~u 3;kI>L0)Gjx!"?; ntyK; Y)YoFc|NeP'޸u|. JVu_&&*1W~!)Ԥ5Y[0k"(5go}Eu'r"nwxs[ւKe6 FPjqs<ŖSN JYGFaـ[L?t']dnԵ/ǀ؞GeVՇ0|>3cG7[.?P>Qvm İV!{Hw06\j= ag %Ⱦ@>t%Qm9"Nز2Ib8EAKT4]S%])TL9g(>^/h=Β5ѷk8liJ;m#/u&Adh(6d*CVKyEf$ϕrSκbNK>1zYb1q-V ނ]–K/'`!M%& D39OIhd0י [X7͑XdiFcuv&s`rC?-%)J~ϲnu㤮J .&QqE -#*hh O<:RF@\eLm7Uw1d! zVEi/qmQ\fX+AC,.a0E2t+S::S ^6^^=跺А5oupoV!䒌2xyKhcꕿgR$Nw Wz ބ8aO3ȁJ5V75šYe{qO v< ~ ]&!(º =2OsapZ1O8h ma)_kż~(\u Ԣij&Τ~]j]K٩jIfm/=R)m]u/I&;&WoCNHGnu$l92΢R9ςy>h!MKIØ>Bts4ۭwa>PKѽDٗ[?@SH]cOȆI)2Irwa> 7^bRLPG͌e3J8BM<]D%Jq pp.:~N7`cEР\t O?DW:ΒR~ s4Zґy/GVvFVq0HI |g~cS[ s$$s&kYƳN$?Nr$i$g} &8{*f}DCm$avcRq~Ƚ7:ߚբ@>@[SkU _6>:Sp|͒XX\3 E&X)nTt)dIrJ\}wkJfv ;%e*wTTJ|2ڝXuƫ%L Z6 NY`/Y`(Z[`Ĵ8 lWLd.lMȳV5W?@ӢX 7쨡@_Hx8ԪKEߗk@+иDg!-D"b@ , Gsb.YZg2|w%O.\W { 3.rl\S`yʇ&N(gu{" r2={N:2^1>kJa= P}hݍHٌHJ2[T[l%e!yN[c{X˼[ ̅7MF)Ȩ9qVh"wpabSo@nbX?PZnԮZ/ǚ܏[B]ݎD%M6n#7T0w:\Nٵ(W7sSY՘a{ALom+2DZ٪Uluwm-( "ō3CNZ GT6j-E |*.ͼ<%!c|VEjAʼn2x39 2]A=tiQi(Lr3 -fE!_q_:|M4Dk<7ſ=#1 DtL3)ެjXPݳ $8CDj"_`ԫc576bB^nƖB;/QV5-sdߟy۹Qtnc}'qȽt{WnJեVY[`*-#BP:|\}G-s6;Tm±QS:;B`’PzORB}FoaW(bD#_XN|F4 %p(Fe3CpJOՏQuUJ[h7*LZY K.8׋c0&X:Ye@ƣﲜ\"\s,r]T&cہl)R{^7GPq[`-( e Gp'ՇWez}F@/Nn~6eX{DK`P? B:dT`,,뙮YmԝZ4=WɍU2B{ZJXpVg#JFoZ*"`$Fc'OtÀwC/)- QYgWyE5 (],FnV]׏^l[4#)gRdf&R%^J4Jd+^U:9"zZ=Z*|dNr#HF|O]>oQg&jE޴̂N S/2E^PI\N ÆO3q*F椇8̦`𼀟/T%7>Ĝz 2ӭlg+|Gb(ˢ@ϡ41O Z֭N$=%MC=+#G>kyZA#5IߥOAL}~r I {U9ªIb'=.,2<]Afu枦SoX׊2REe%T k޸%lW R]Gkz${gULyQs>\͊-pJXВFڥTZZfޑxYcZj&/HٯUA1nLޫ&6,A_u^,œ (ܔ,Wo'GWc+ @׾\.]B;nG[FJټ^jqpV>{p<.oō"qG8 9o`5=gϨo6+:E -ƕx4*$mR㎼XmpŦ+kElG oqO&3^΀R2Q0ω5]fGշsAUׄ'zAQ)N5맡]Ό*YX'N](>\Q9-F}e{ӠB8D! ;1)vz)@9[Gڕ]0WD˂ꗱqCb%Z3,^=?K49${4yp6|D\wˢ ¸}Dtuh{0LzvY=rZ_Qe$9qr[:$~t_dAx6--[V~vJUŜCGLk=RC"ܯa jh!!%fK1F8 /e D,Tޙ8 PB/Tq{8:@<G" Np(P5 wDhH撽wH^/G ܃-H:.pM1R]x ſL0Y4TQXP-/8u] WӁ3tEt9=-S==RJbI bXoGr$k寻 uta>`ØK790!uaE+K\`M̹XN |0R'k,"!exp"uC˰N?::#^($}}Z*YY0esS{.x@˖/ˉTե170uiaƃ)wD3w&ypfa`h4oDq #5sqzs;kc ].哽WGrHw=,bfxtԜ4 )!hhD Ă(Bc /o ]rz;EƼB-UAj1B\5|K>Ca)M85>^ME!l6˞bEa,~P)Ƥ!5bC]!N! ̪sXa6fU}uUVglT_OQEPo@o$9YԇBRY̨lҜ`ǩ㻡P>PiriXV(3vep8eJҤ`[*Em'4_O\˓~DS*?"ԿEV[W&v]Ļonāޞ1&¨$<_E`̐ {9Bs:qm? lW68Ӥ,i}LMt4wQ;m{܄NR¾榃nz @pqSm2x A1 1 W+Mڰ@tF6w 2LDdžZE`1l׌JǬVgl=~tCީ.(n0ԃwՑlc`*/U (T7YMyV=oa 5%}4}x<;!]V~ё]kZ\  ~D䇐 HnWocFKv0H<>4`b 襤m Ψ˸I]p̄1$HҤz?5ҎvO@Rdͪ!.c91v[f*$}˻r=َ"c`H@jxb[?i`%x@Y%-sG)Tv֊Sx[sG e|  q@)P'd`DjA6\/r\d Z8fEĚDPux՚P-ar9q:LlD%L~N`CmGQ[&5N;]{BqI3T+"_|Ί_Z&BGa=d&YN+ ݹ&/z8֨g4~(4d f#& 3weC{{{Nø[8$w 0tH8/,ca@LiII|˲Jevn fm(vLhA/!A%V@3C16$ kW-l.gzvbuu}o {_LR+B(KUNz=Ak9Xq4rnU{C`@7P @Ay)_#0*ceZZElw^ѨlMW^Em r{?f%p-\jGZӤ?3W}}eVª&:N1m5ϝ R-;o8N]xt ď/I/d)7qrhȵc9*wE0WÅBp~dC25rgUl 75 jT9I2'ü#< յA d֣`{Ϥc]R3UQ0K[>\`?5!e0'Y1E$<ҦlȀ?n%A~=X\3@*|=Mu Y=]OdV3݌,+.GU9Nh[-%=;nWᰘ'yI>n.=`ojnQ~452gpUAѳ p7:>|3¯0"]a-}cn&\&Պ;JQ~ѮT+4Ak|tHe y5RxÙWE#{`@VkP #sw1&L ) QZ" J?:5/@?뛎pt #r׃ꬢ*e}yN'TWx&\B166Er5Ů g&#Ăր`®DBծL7qʫ-EԱy"H CGD?bg*]`KF8Z3H[y1E$3FލR|2(˄0:/ z> rwf4`LmF0'FV[@g cO6R< X5j繺Ĥ?x'8w eyk2z,WD 5֟\ʂmN+!]:fwn $ .rGH`|`W0o/BD9[=`12%sQrFhǏ+63 TdG`Vbɕ0U뼊To1 G)Td۪ʔIڸ &CoAT[i5h%Yb&Wo\ C6s v9pG܏nOlSļ ! =>P\a"g@F L(S3 \Hb'F "×}NmLXuQ:#}JiY5_ 5R]"yag̚w[Mî wPs02H\?8R4VMv >։T8o#7ili|iJbz⌙ OC6]Y^l޲eXȱQh6\"`ouYsw pWƺ $*e0r(a]1~Q!N,H諣ǎ,^H}cAw }w<)]+Z3q՛ekG4V[pE8|埬bz"[uo@pTt ٻn{$3+!|_ژG,|J\ @լ%^ *5ON8wgGSeWF`R pBNI0QvN'zzyB ΥY`%uj%ʋ\{V5ǥ=АK_Uy'rkCL ]N7^)Ag:(N 1:ij0ǀ)0,K(DxϮah=WȮ 8\$qψH짆/x۝/l_q]s^?`/l)s "1 a1rEl:^M݄}{87$]`A"Y-MlS^+H;"_zBdq f#z-;gk: z$YgFJb@ibVl:@|/ZӸZg 8{Qojd*쓙EܭBG 򋊡#;}"FGΚS>вw3}R LV|tȼ_%d!NտCnNrQ2z ӏJ-אnAz`9Px#6̃5йңOA}s06<ئfXq1(g"9֍FꋃbH|ǟ'%nbE0\8cÈ_(uy; _AaV{DC#ȰŞ p6=ޕ9/́`,1p׮qt]IG} AZ(i/qvzErLa* ^W.Lx[T I0aR>#*XΓ!DqRanLB:w}tP#j"Ns-/ϼ] "320%u0^7+T{" GE?7ǭQ8𹌹' =|!t(c>!-FM8sa#邨:"aq}C=id뮧>{83 S!P7rྲྀ9}aD!)}C~ ÆW-:6]G W /aJefA] =|:z:3J?_Pir_༧6FxL5=96>zKVnKk+Mf8д`ZFJA$Rr8%fkTfX a<ě;pa7{ʁ`c'_؋4C6a}.a.و!Bh~Ei7/iq83،ٷ}N+jE9tLj5cS"pB,콎VE8U>ِ{ŹX.j`ávHkU%/=hipޝ W3ƔH2=;ɻ& 7";8k (D.n70aOjB4aCaٽ˟yl(Y;aesPlx?,w8~aCH͘iqQV(:'NK{Vxd0[&u80;f )K} hg6JS3AѸȟ Pԯ>a虜 =n7-,x2~' ĘG·1fs]EkVsק/}X:ݜ <&VAiӼ.Il|7  aꪔJ(}ԩ1 )E:}Ő5=pqm=sFQX\L|5(BF$[y[+0DAR V:MkdSJP 0c~4L!~%gl󔦱bd=SGcf@*OI_v W"֒!O<:ÆEL+Z:O2QDyiI%`wA3PJݗIsi i9ş^>YBU*F/!Y@aP|?e?Dnl-RgVՈ&DwL!D%e̛iSڂx9hƓV u8hƤ{`I;oO(_x.\'PqjVQk_Hy椿! ~6ϲ7v(/pj0ou?s o<>?Z6t1mwJm@ r_|[Ԁt\Rq{UXSTO>1^DWe:fa 1ũJLQ&kL{% YQ +J.uZ zbגy* x9kWT ΢ɾj־^> (F^*x[Qý9t7jέ3V{|q9vT(?z7k ( .,[mEQqJ$4c<|˹k1&ddA"h@Kl,†L'^y*'}ʝO`.~5TElTVK-WT)bmO!꼶?B(%,w>402 HL'e1h܊4xs5`=ͣ42J<D(Gco0YG{Y8RG/K1Xxn\gÝxĕ9鰔0>0 FDžK,`j tJJa}g5L 1@u`e~E/?:y hxͥ΢![wmOUz7Wrdh3oko4TyTK dCˌc4C܂?2Vx-2X:6>CdRnХ_Pcc|EP`xBLv $9 XM1wvrܔ;/lScM Fo?U* GSU5nlJ Xwjv09sa帠nTz=7 JR!L!YȮЃmd8?j o x=;4A 22\]D0-X @#I&ʦ7O`W!/W%CGDR ~-^psNC2W$x6wZwc{<?]߀0\r8 ҩJ>H&Z:UyTnbvۯ`_,oX$.;B#zϹY ÐEϷRfj鋬+1߶ lły1bzvX(VeB &*Lu@&*TK镼V>CG2,%p:}Ƃa"$wZT󆢪_bTx֙E +U頻!jt0Kmvl3b@*CC?ZH(-EyftLN%KKjlo2^ msJr. JB̏};,^lUL?z1DZ$29wl x.6ySjV~T1# t"c&yG'KBC>aQ=#3v@1j;jh+&\d3n'}8b4%C]!5fCBv*ZKvK~eiNQl*MX+n KGA?4@Sa]jܭ$F%luC> )/,#c}2MVʭwt:qU4[Bc6X_BofWn+aAM5٭z\iV n7.8yrf,neiwQ K!aT7tA.؁?7sD0I2wD,3:V 8sQ'w{j]o|tbԩ^LdLVs d@;nu'ʍSlIUӋq!AF1}뜩Zy4{@:nuiңSz0/~l` ~SJV2|5xa/{:kt`dyB8_u*z'w&Ew ùFӏh-!8uR^n' 0053k4?j7q)q'*ο՟TO5gnزPR(<},g'?EgשKPgًq*&~~M uӂv')CИ!РC4[T\xw(ˎw?LŽR",EQr)jIFP<(0cc5Ah]>Xtwo3J*jSR| *[D| ZKd$Bqb'0 ]؏WCa%J{|CU0xl[;[¾ZlC`TV+as P.[e5QڎH޹,ޡ7FMTAɚgƥ+G؊C3,Sdks}t%t 3ֹ̢=wͱlcYY;$i\!ALewe[}ʼnO,yTN;IV)ʢ(?lrT'3p fL3ؗ2~@bgr<¢؜qRI l0a{M^3xI,T1"fE׉l ?W\, 4F|`2+ haܰe" ៍ױF Pe|VhS w\%pTƔ⤩ݏIO=r<%z*lF[O#\[l{o+/A8&ƝLE#%$ʚˊaQ*C#͕YMs=ӪBo|t!q&pVDa!{^!Iw@Go::%z_ r(lZ=;B)f T0 é_v# XR:{kh9pS ':%kl:,GVxqtp738yl)J':s n26h4PI:R+'U}Y_d}E1Y}:F}1tmF݃>딈](@RگUvE{7S '^<''(2,VY/?WْѠְI逨b=o ˙B԰jgi89B ?m?[hq__2 "Y*lf p T~ mLcO'} MĪ|(Yў ze< x ceeܼGm-'/# ?z {8#{@/>`|y&$! Lk6I?4nq"6L19?J{a}wN,V:#,"=3¥G@ 32rgО劵f.)Pi9T1ԊX[H2Qߪ7" Z1w{$\lqz'ld>O٢; <7iNL.6ǘ%[e CJB A{<M}w6爌]7BcΨJ}lRN_-*{.Ad3&o!\~ɰ_9 1 ͧ@[[6rheg^>-w$7+ZcXTKA=۾e"}gz] ѫ#ff]A>g,m(mN=*֜*hc0?)|Tyύ2w.o: Wׂd:L-MDM?+˥t oa;ւBΡb$ z~ Xf\+@ t7"6v "\QWW/B,r&BT 'CWo:߬JxO9IJczd{I=gIBs~X{lRfL T%]e%{hLvca>&xz }0Bg}OBUG.l<،!/w ˮj_3`xe{m6y&&( x3!G'ҤfPۈʍQr=@a|tکɥ$Bx߾{D=At̚ /E6 2K L&e;گ6ԑ)={0qjX+sǠ!x3oRH"'Ab|vxXNyOb"hW>M=CN_^t{7|CĞtK\PA@rIz2TLK()׬qi}8ы8_}YgUl^NT!l-&lżn %@,խE5'wp3MC?D3NrZ=hqo(JyLe8Vϵc?T~_,UmGHZ>!w@3"(<{n#jEfP b'KD·ʘ\Zm$ "*Xd5 w<m|kPfv2nuչ5)#इ%N%IrNF)@TC\VxMקi}>x׭D1%%q[5iv 2m_No2zQ{ZX^sWB\ m&&\cv^phPf Mݺ"]BE$mIHXu;J,tGrW/ɓhyG@]ȗ{mqJ/yk{|s+a&Iru`bj?.*nG鳪Ir}/KqzCw%Iɖ452wOٶtVh )ghj?WͰQ*Jh &s5k][,ag`[ط`O4`kE xyE>U$)'lknW ls~<,Ыdo{e*RXUyĔ^Zo5v/vl:Hm*ʉ\-"gZ) K^q^G"s<_pb)hW:"GnxY,\դۯ% ZdBmƣڑΫ,{}J+c6duZ$緀w,l,,r|a.\g{]V`)O@3i Sćw&6=UⱩ d&-lJgw"Hl]j쇟X^X߽EQF@3u ±^f g_DR4> J'D p@]TTr]jv 4}q YmgגtʈcT›\۟&j=dwwCDrQ|2 u734&۸3 .iOQHh5&8僙 N8tFnJ爊M{&trCPvIRMS2}AxsGkCsYg/3Ǻ?b*,H ,ph'謭>EM: G g<qne!`fR KBl#hRMΘ;qG8dsҫDR[|ƨ ;^aq1iq{l<yxبa,"?c#TD z ̃lEJ%չ?k̰ȪIoIgH[Wш2lH"{R-c/f,,ő_{=D|y|PnLד8APUGG:5L=4ii1nLw#㘭uI5Or{B O]gy.e#"mc-"v^qzT&e' T֪.)I3@nFP Tzܿk F<\CR^ -~)|ˑ>nz.^9MzQȀ3FY|^Uc1kix?9G-|5Ɲλl7$4U uulnxeRjoVtѹ[/O5GV'RF:mN V.S\vY{0կ⧜ 5@WyS7WG%Klu^iI4 Ƙ>S75s爃P@oҩTVa/wP!'ߣK ,H(cdsxq(vr)iDճxDz5č< iN8 ܧ<5vL^ˣ"e6tZT{UFL3;w(:0%ci'J342R_@xQ҉hh3(]wQ6Mֲ}F\޲ܱ %RQE?R FoYu=d#A#4а-qΖ A=ZZ(9XܬsK@tJ(9Ac5Umsin!lXe.eibV)}nIݸ 5pǓ;Ay# ~i#jg3&t;w39R`(q{RdKzF*hV,8XİVSW28*5|q`}5<#"Å=p<@U+b+/ 4z\t1G"WP4:1+3KDLT2D&3fO;d腞t>u$X,~/5]Od\S#ÏsZ=V26L Igtra;Jq_y:e2}ĸ3-H\bPpv&&$B0tȄXk*b,p O% GwB:W-C#E86z3 t6b)ӈ`,updQ'ES2:2vgs7"FFjbw*4oj^"hb,VkGxY9]3kC^tܿH+7%Q+'F|fLf*!oA6f=_JT&Uؤؽs9xl߆EaOjro4 :jBQKgU*UfeY06UR'u[31.T/'z&^W]6rk'A4\Cƅee^+ !1* ҩRPamWb@H=|"`C¸& v'kJ;۰CtՔ|]e*f>'5evs<Ț$4,luVgt(&8x׮j\5'ƒ'Zc )g;/L F$qES/U{PG4|l|ul77ȋYgD̀ w-i*Q{mg! _. ǟyUU/E#[l|(k{b7W`>^?IWF _'@=86,y .Ot@69PVT_Bpir7bq8DQ ]$blD[q[AT,8 rS#y7wO .T2Һtnwikg̼*;\ KrH{ި9\L<#xnUخe*hS ]& İZcQR~xV W($OBdҊfϑ-;$4Y (~.CX${ɂG3LexDJk}|q_(pxgY؍-!s ;$\3 ?oh[Hѵ@-* op[~XlF.ZA JUT+'ִ"[>_apYαFN gGe|ź n;ԑ1ЫTE%YB_9ͳbChWE:Vcɿ 5DA57m;º *}5|[[H %kD*+c#!r e5^ 7 cOPi?i.2|͗V`bhs^J(ju"F,2:' a faχpph׵CMoIV6K(Éz\6Y!pUZ~[ a SWq٨H[ى'H=r֐2{0[$zR* W3渑\Fj7 A@U2B&z;kjcU8G :v'Tq/|Xcq4׹8=68ret I9,QOo`89P| g1uMAnR"~pukBs &/Cy127mp+\ہ)vZUZ\&oa5x Z\NF=ˆEӮƢH΁!J2,Pݒk233LaP?J` ^*Vu-YaR߈*# 7BŖqY'O ,)$_wzsz`V*'gCn y 2/˷U] ]Eq!j}{pWa@j0)X`*v'X#~jzGf=>_1(wѭw |7-QXs}hQwkZWQae)t*h3M\>Gqf8J 0!,.LYGs|srgO`aEQ  :hr<߇0bs E;[*_r=8٤:ħ5۴M[ ӟ<-^iQ/J| ~>'2CfUC̦4۷2Kp!6K O@g"xt-o%(j2cZ3(,[ c/inWἀ(6Xυ^=>ݛt2m(FOqTyXl&:b ]5$c[ y?0Fř[6qVٶp?]ܔj̥7X+ū$B]ݰ' 0/ϐLQB[CfG'N5?ܰ0Y%וT+6ÒN6a$E`{T"J/wOb$4W)!R<zK6`r`0gM67XT^4vW&aҔ+ntsZhw6մ|wEċл4;c 4F4ȸO#9Akbey+]j'bUGZ]|&q}1' ƎuDoO8n)xf`;O=ZLa$-'m뙓pKtg.SE(mH]17y~ղvoO-3o0edT TJ0w|K/%xRVOưGU\K EfHDK'lq݈W }r uM  Pnswd`]2 -2hpsu7]>Nk;QPGΘ5zKuGXh)vl'2`VQ.9YdE9_c@݈KGe `YLD\.MT5[]IcaH  d4~A/Q7= r3@OIIpN񜛢@bKhINYT<}QL. GLnO̺\YYd(gIU >%(u;<y&FjS)ב (`"z:`e0Ṷ%6›G;9[ ѷoIh&oK<\='XnΈJ7*bz'-%KL5WAp8 ~jّ*۳@TQaNA3'C*Qla SG ˢ'mIƇV{%t IE#ri[V} N!*m}o@i YYOwsd1acS_ϑ66_oxWUX%HgH[{=.(P W:uEӷ핮-u v1m#yu +ڐ"f-{*;T<Ȫ ,T.wG-Ϣf`efX<o&Jb"Fl vzpsfho8zRiBk!-Ԯ`E$drE% G~o2:+xF0+1aH/{wo-A>s>~p3ƞ/[[I05h+GlFy@2#J hʅzW6l"`39{v@_nOsFs5峋Ehu-5XٮlW=lgrTaѴFTH&sCU`lY_<%u$w\];]sfH nx؄nT}I+ Y>4)BkVeH26h}]쟅qLh)ZxV3 pR\-OBoޚCt.ӈWEX>$2TuSx!sKK) cEBQ1pAΤos^yѽ{ Z; 0U,"r\KmuYjZN,W|5$ëo>y1Jx&i x t$#YeAIkӚA.u9ܱѻ\TkqԤM&CCVP%6tb)ԇVKk4~Ĝ C:-`:P8ۏy"EqtY>Oz7 G)B2T7HĪ/YERJDL|wwNq6)q7)\uQ6~u57J$/ #Y=9F^ϟo{,w4D,hYXxImT$ "*SǺ @ON~PִI7X0B]<_3E#v~}oíSw@ ?ٞD`8 "$+q3ڹbt^e-#\N 9m1Tz1[?&K h,MSapӶef,pl$h2)CȗkВQCV[v8^&z&Q(H>]鷑aխaJLOј!ݤ*G"l8hU l]* b!üyǣCvfQKw3T rBk؟\ݓz]ŚR˥mϭ;[VdZ)︊XHkhsgQZ J}#B=`':KeË;].H9oVi!\j7o1 Xm;,BTLnݟHC۠B.⭃ [KMVXF((_0.i]u[p?+0c eqr#eM9n0;#ҭe'r;M vL9_R#0s]ހc@'WΨ$575vxR.ux W-[P"Oa,2:ہ 3f{L|.TNwdg%:`IV([y&R2!wb8$=o.2f{, 7܌P}e40{/|_[9& Q0X$9`{ 7HzekݰZ!7DP'nӗM1"E>{cw_)7m`$>sHt (בj` njI 0 f@낆-Ovg\k JAcd'sZiHh;!mJ&0w&{]ݺązPSH})LRˣCࠩ^C,4˲%ܲ#PK"Ҧ""҆bƐo3b;hc(a@[-mD1u2.돫qܸ&w)&\4+rSϵ+bnZa>Fx ] *߃^YLe*f֊se͐@2 k6p`Hh|;#rRkТ%#zam*⃖Ρֳ]ñ<׎7d}dlpFRgA(l|K~5 ;}|M=9n2|4gڎ&Ⰶ1bC|k1C\o/i?t'g+ntuU{NH%A2G>a˹!d jRVg'0ɵ?^Zpg~A;#%Mklw`mWes%ݽi qbPq!h`3LU%Z* q-׿ s@We$la錯K-v?n u[@ƜM2x'W^-,d-f3ޑ}ū:ME9K7й ZU6 T;fT3Hcn0ٯD>DtY ؒovDESf?buZ>$n dңXO&$xkRK^=2W\/![Z,` e8O)v*0Fk+M)5>I`7`\Z9-aIǡܷ@3E[F醂-Lэɏk],JU`D+Euu<.F8 GɎEoamޞm]p9D&=?Q۲kڿ@&ḙ vp#6[ lko3 Hi,%bblѮlIKv?m<:"E`Lc~͈#JL9,{p&2la𭚏n €x?I^-H1s&4()(6Q/Q|f/_z畏e|40.eN/ًM1'80nZ BnTԗ+]y }Ux4N sڐTYg$l@뗆L9 xj-!8pno$cӧ>M@1h2plob#՜F< pȗȂǡELV1X'g≚=crrE}/fq/~ WBVnUv4sہdE8F>cmP4cdffTɭe5C, m{%sDb*m;1 j`PVe ]|TCC}tY5*T vۂ95(ꕓ >}BJ K@aBM' 4*-ICl%тt!-e4^I&nb[ѨU祓>f?aNYHSS|vk>lb+-6e3-۬OLL5-D !@ϩګ2,;hwbf`%ݚ_ūrfO/Lwi}8#5@2W_r*3?/5%\TJ㹦Π"ƫmsFOwwOg%}`d3$"gXSf BN%rSƠFhz+NS:pXEB3uu_QB5{bc?W#*Drla] Si) ..DŽ#-m`.%C{Hba2rtYS$/c؜?~T|AEߴV!.MPE.8y`>m FTahFiZWgO>p807K"vi\gc *Q8ǥsa8XAJЛΉK 'ź8 d7񃃹MN*:Wy1 NnwB9O +AsM'h0KhmsD Ṷ8d3}UDӓΒ8cL();?4xC [Jmؗv߽)|;bkx@@u?_n#.ӣU!@.uFez2Y6j_Vb߀яqc\N9è٨Uhp"R.6~iZeT.U0aݸNX׽EJFI?xASh|sfhJᚌ'+>yRmcT:}nW$q۰Fgv$`/եIb]Y.k´g hmH54Վ&n=W`]twBgrHu w4yt " sR]q=qəWe իǀ쭟=:^hKT ȬIj82.ܢmo `-[XZǰ:b} ;\n%Q"FyFHNXqu[wWc(;ѧmJ[:t)?]yFj2lܻ nCFw?, HhHa{v$KNoYDP0s™Xl@FӜl0 Aj_bri]|-4g5a%P ?Utz2,}_jAce$ޑLېCk ^n_ra..8mPَ ,Ī$#qd@u:4Xgi;|z<+?\T(*lP}a\`]&?2Jtǰ8~ ć[`l7)ҁ<82JݝQmDNI' >l!zE9wi+m+Q5I/qS|8}Pz!)_^ƃ%*RQbh7POJK޸ KwF_=dr.)eX/%M vpOXuzL`h{/ t*V,}?uE習鈽oje眄y3*?V/i~BtY%}Af@oͅk)bgF+ N^VuW1CZ{w4:H\T7o&轭zH3zyס+z qi"t2R<+uk[ ȹ8fSFP:S|G"oV9jCg+Р8`ՂDΪH̭_$\U \Gۦ^MU"j73^xNn׻p 2_gT'Zj3WVWhU23[$hv ~0# \RMn+}TX\AM cEXQ%}u ?;iAiuIm,!,A=~:Gp%BIIGq%ٚ\ Ɔn JH𾓒CMhAh54Ud=3coj f:d3#&2UfQX `5QnLj&w|]aհEka <R)Er% FU0EqAw厯%-.UD2#ton"_jKY4`"Nu{{Oa2vL+f V<.®vtE@\)& ~%A ءm˜,8m=_6CkF:"I2yp[b@6 &}pa5=S_K6 ZHV`nAqL>"u{e"~"}1okƧHq4ZG|N4ި\nwj2A9rJ5h^:'m``- Ooh4Iz x rCnhD* {` _PX.(T@nE"yӾ\pomS-b/РU4s|y(DT}DU0'/W)z.e,$!o~оS{uu- [i͗旎:n'/-~f@M?Z₟7_% % sp.l> 4IcH;),w@9&3ͯ0EBӶe)$!N*ͤ B6,xQ:Z׷P%rv:c}x I m6mG$_raGHv \ ta)x l&I3=Q=*\Aq/lEhF?_m2-ty)f3GFtuj  'WcR!Ycz; [hKf6tz\6] WN7VNLe*8%@2I;l/]B.hgO\I*,-sqXQΈ.\jBd1*:羦ybp7M)$)@XO$>O8aJnz*`U9`!3R g\̈́öषڋHS k@Bs1DgM/+;܄(%0)(;޿MHeXo f2y8$ƣ" ^|小U?LQo"&)Rm%py2OeUOeE0ji{ΰ{z|\ 7xDoW:kyDl;B'g0 CVn72 Vn wa»uQX\T{Gbv|T J3@!1!Q R08.\^e+.__ݞ^-a6yg2`DM*kZ:u_szKЊ1iٞo ϲ)hzYX / a\; ~ؽ;1y 23끰R˟e [9gR+m_yC0.b-`$F(hd^gYX[ջwSt"ROD$ճ/w)GA@ ۲Xٯ`B@/sb`@QDAPd }+..QBwf2(% @;rW?ѴP3mWu:X K}.!9_)?ii~GMP p썔ZMp BZAHL,iqEM%- B:z>Fi,e5ЩWc* =v]^ԭp!w Ie2('*)#>S3o \ 6O!wS]p§nrk0kk:j BBQ{!m$"7Oq8/Ibdml9QK龩(ccQE( }N%mX~/mj |Q6OP3"B˹lpҙK;j$s#(u D '54O.cל1-'Hdq/߬PQ=b+wUe !7{-Z}`;$[yDS̜{qa2hΟW7[cPpx d2hv^uCrU.\XK %ek4uYv}=H_:@{$ i ZQQkdգh%} 75p @xJ#xY1A mQc^ &HQqbC"NM8z!; |WNT81'bx 3]Ph!PC~$)7Λ뙑m`[8*0\%5ȝn* !(=^?#kAKt hjW @ۍsjGП|_vR cPq`8ݲ&z%27x{WǦ csd߄ 'G3f8yUܼtǾ0Xz(&"?ۮ u0uI96jt>CߘډİA&fe,(O6Xю//.qL:@z?,k.0i鰄~vWu?=%Q3H]F>J$Noe+SVK'q4^ h{];qmvzyN®R^'c -]q[M"͡Lg7fK|t˾A#z ud#^J0Ԥ R*ă~)SE|cJI`B2V>hF,Au-ga VO>9 qIs! Auz_IQ~=R9(c"*waU ]@ªB)r FjWGpQ:ڠ0PG19HDQ#cϪi +\5>3V=[rBe- Tew*XAnyc 'Ċ ;ffY/5!pWp{BR-`q2w2G56S=3;A̎{5λcn}ڋj+EϢ\cP$Ep {3qvpz #q= '&drۉ$Qy.fH)p6)'ْ;JD_<6ĬU.@m.xPgfҮe}ga[)9Qe~2!8gUH Ay%s ]lWfaL LLZE*{*t(UlKd##nC_y*~ 0\0J6}k[FU':@pUcN y̩ii2#|~-Ũ j4 K "BL2yO] T·ݥ{/d6TZ%n'cCRel ,n+J? ԨtaU}}k͕8'r~Nh6USѼqaBj,]&eua1Y8u 34y-:[ h$ݥӄ~gBwA9 ˯@vJr $TGy|; O)a9o^r7`/հ;78$ 6׆C9rY:pK2̊XmS`62Wk =Ědme#,MOJ+$dzǽ?0ֺPHqy'e '5椐\r&Mk&[4mWY\̣}]~FY I_!g%:LfysOE;Ot5]kG:&D)@V)ۥ MH\n?z' g~69GնQ(w\#lZ9UI-cùt$g-xTuX-s,ʌ*8X|a7٠7ȶTݓ\ŠRR.eg$:ԋ8;ZHA6BK@ m % %,Ɂ8-w/BT),~ӷν񩈲>p*¥ x^D[x:BC#h {S6i*'~|W<~&| _2?D}𒈬Cc<'P}"Lel,%sp+Mq2ًHGqzo@jES9f6j~(X(6RũLW{}/Vq!5VhKm봕IQ0 .HfA_+9f,MX84zQ1"{}ź!R؄ )6I1ļ5_% c]uAmqfy%j: T2iO"6KCϝ/>.ӯue4*u՘U)}},5`7onDžFf.=qp9'9W&NpO>0hap ;{jE4/$JpL0*CD<(&тKVYvߵmo$oPRQܬ4mlJ[ *ơTAAlesuZ967Ip S ]7}De>$w<4o*"<%Lsթ>ulN&Ϻm PDX=ޔYLgFJ+Sv*M5sx-Ws*ms|m, - NMrͪwB bm:{jҤlБ;Uqi=(g>*?_kꠜtMKJdfH +D (oUUeR^=$MT=en þyzK&PzI)Sz%b&jk~䁆'x&"BXh3f/#s [hQA{¶Cda\nI<݅Uº 63qt'4Q7^?E*4x*OG0x,$ulj<VD} +"_QYuN#AJAyΞܳ/o\Դt'((̩m^9@s ͹zBz }r )q#9|Qfx:< i F:>?_)Q.rq?5G=6(Z0ѳfd,uRJAnF;5/cqG9€ۗ, ^s%ж J @/@e,{'?e$No_o16{?7M ʱ_+t"f6~7e9ďaLB1DLf,mwtVQeM[ ⱂT9+ zHGH] z\}EO-U=҃Qp/ [-46Z~Μ{XV+e9K[Df4ל3BDS1onėF7$>$y H1٬[}/gfB SZ"-Jkw` #~Qfی,KeM/ҥu-2p&jyLozxV~=1(vٴ aɮ}geA jX埁f>" <{ CحZ5k Z|GQ0!&/uK=}*Joj54,(,qF! -QX9𧷴r$nzdׇg1Kt+1 Y, 6q}P ݬ3sѺFwGL Q]t%]vY7V6= |]ivNlOzΫH{t'':i$"}+Y>͙kOsMYG )੶ڱm>tztSy).՘k?ECZ3x'Y$G\U!%O?i!ϴw?e6ȶ@covO>]#Қ7^ TW|r{.dcHd e w{l;ŗ:hO-{ⅎpxEћИ3)gV'c& :K)nTɅ):roܙ|1cnжg,oڱ]xJw4zg& NF5 Edy%'VjW,^cyle b p4j[=.DmZno ܩ9w;Z;,pxg:2/'qP$kynuj##YRҷeLcYT߾&6ub(C]utxyۘx/v'9 6Z=1`-(M˗l2{}c}XOz 8F*chńp킡loEkW**s`jbQ'Lrs _xwřm6+]%WpQFe< /}2%,t߀;2'?_4EṨg6M"Q7Mް}`O0J;(wwi$^0nP?)($5ر;r,xww0p|?|s < `£Z&ʠV4M01Npw/ kl(!i|s)Ym3.nMn,_Ig/~!W"l:kT ZG*$_+K@dW%U!#2uaJ6@nb`Ǡ?cg1`Ym UtzZ{W(SEE!@@~nj8) `ռ9|g=B- [^W6].g)jX9H$aGCVR׻HDc]zy_4=S(+r3@VW'N\1rĖLJWKȉ2-DSz I Q0΀u&5L6V9W2ly0T ֋ȒN&!^$mDYQe)"mjո7&j99*%,-i)Q] tIh&#SerH]F"mn1t8]Q;@-*J^`%V[$R7{}[,G82"6Dxo0d+;9oB[ϐJPTY="y'ʊ %"hW7`=Mbv]>2=(U]= oW+i=A-8Rj< QV Rǚ8Kr{A 6I/"#g(^ӴX[ ikA i #z &; TfSr/ǫy8q.vӸ0(f;r}9#aZB:=xbB}Eؼ%v)Ŷp`!2gpހ2-"Mɖgnt: .giAª̮]4*AcQ24mKY/L@yOĆǽȵ^5ryGn͕N= aXxWLcC` ģ*yiK o0U |"FSI4^2)^(򗂻L!~RRh-̵qXBZ(-␹RS{Krs~uOFf45/U0Y2OְtleiN;dCLքxZ'q~"S)b>ȦA0Xc{Y gNkEM]dETBm.Nw(華q~ ]х[2T>jDNE,թln)e~>-VWdZAFɳ{37r_+EBm0$9 ')" uu[57Mτ"bA:~f ~)^e}V8-ǂzS²sމ琡7:Vi \Whު T J\@e;׏#@`($Y<ևL"Wܮ5cH)ۯ0sI#+BQُW'lc?5"\#D3HW5v>usl4@":p%E&5XHZ>}I-HH)R*(ףQ:z@ڃ//YgYj8΅(@@'1Y:*-N!Jp_=kw<*s%% sRF^xsy)+z2K3UE%>Ӭ==?Ei%K(N0 2lni}r Whّ]d)} x h`X;Y53.8?9:_c)|(mzFd`+ k ']h,F6CXLRA\ŕf&Kca&pKysTn;Ό3n#! 'uLLr O1ya!u@ @іϜk4bM!c }!"?jRt6ȍe´{;J_;thjX#hq2&@n=XE{Hu)җP]%xBSlJ8C!yat>qA -;@Q\mhSer6gKoW4m&9둗I$=4Njn3ĺL-OǶ2rMJFB1=֟\"प ~dƗx6D+͌I9> N1m.܅ 5yыBzL?|{TcX@k5 B!h|OXHEۃ)aI樷veo{r W{Ⱦݽ2yfYy?8rbݹP7c m=S<_l~q`^wAΓkqe7U8x#uF\ ~ؙ6]uA b 3&3t2ދ_yB.\oկ7B 'eeT#Nf|{{fuQR NTcEWbAqC2Sهw55 |In[e]? ]/c,3[qh}w.Y ~3[7 /9hd/n|4H-^'̏%W1*;XSėf[N@HPš7T=t ʆ7|S]Ni2R&{.4su-}82+o,B([n̎yNCת58z(sR3A -6 r>6N:=Ƌۗjl8~]Վۨkd-~͕WQvûNX,tzq9[6Y|#`IDW6勵;8c{gX x ©i/3&V)H5f&OՇD{!χ}:)]֌z(ʋٓᾝy ZnQn B߉ 1.ɴ &XK /;+0|`4].fBOGg%D \kLU"N!(tFQ2S#z:iJ69^F w`\uP'- I@  "ȐDA(i"CH\J":ʭ]1F*iѣ1t39!oЖ4j[bm^cu6rpP } f9]mVXOa7ӨƊn&nn"o&֓UP am{ ` b2<]vŹъ_.@y7DM_c-T+- ڹ-[.4{sz ~BvV0hQtT, Ƅj64lGUﯟLi_P1G >[y` _bgO:Zxt_,@-;Oy6d}"PLTGka`a:QT|#D&['0oՆ/RƮğO3'iq̯nh[ff.ZWfm&)3n bM}K x˝DzOQlw J/UDKgVJdy3=6O]$tf%@u(_ s9׻\ABHXjq5~" Lrcة)ve E/F{ a6zմc`iA= o/%r&[\+%A}ːdV[^<9Mj\\2 N_gtJ/֫ Ri6`JIf(E#Dt`N c$ 8yd]4W3JN8}Ew(zt}=F-yү Wθǔǽ)*K2> ityӚY=Lk\!阯¨˱B䞌=6!jg+C1>*o}&J:C+Z%جkIPµq/j!kiKZTb;1"aHĿQYO; :+˱(lžS(_ \;\)?9:@CE =)hHrv fSYՙnēi,F >z="Kiouų λ1 ELy s ]@G=[#{ME=|bZEvc3 1 ׊ps* k-f$}-dǵ^,wC,Cvg ,jLo km~y 48cokKB(#GoPNU Nu?Dk,va/~>Y+rZ1Cj_l< *嫼x>%`[6/4]5:﹒&́VQ oWgh+Ŗ<p%l%$/a]uh.]q+ٚcd8maN+f^?`rGPAyrQ D2K2uI +P38>j(]5 K@e&_{clHv}Uey]A5x<yq$V4ٟ螰Fnttw*_?޷>3PT~)ͤ|ܔn'|3F\(YَPͩ>p?tz*π2DC@axpW#e/ps|g=c 2N qQ򫗯J7Po} Gv6 mc⮜А+iOkY ^5EgVМ^}&OwfW:x&_?0sL(j0aIfۜh1CiȡwBз/(r2BQNP_SJ^Fޭ\Zsi|IiYXS;7_GOSÖr:e_-`ejͯ%aau]~շ _ S vT&(DOa#E07Hz\!a뻮yӗ9PB)6[TylL c, $[#rNё8J\23 lJ)<~pUVw+ j[z*Ϡ!X#)V.VmV^SH-*fo[ӇpsPa>ʅXo~I׎v @; .AT PD/d3j $'N!F ro{Di #JCYO^D5RSYrj}f6C0v?[ɹg2i?q V:<|DB|$>U8b>^6!+AaA0u:nj Ar%,:3(w\q6R~*FE? R{r髙cbVЯ~;=]ҦR$E-BQ^~CRNlo DxÚW0ݤa72 `LΙYU e1wm_=2nقN|i L7Ь@]#܍ġ'⓮s;\ۋ􌬹vCClF22i0Di1#߂W$0'P6 j<(qTN{XÚŧEǎ,q0@#E,EEA"1TRgf ͼ'r^ IɈ, Eހykcv(%,^8V!D| .< ydJ+MyE1{m-';S|rƂ1uB]6| t]0̫]%%P`ݯTpmYJ:'T{fI?b]z "b$RglsfV¤ ;3!2KH,^Q6iζN9hwܩ$̘ا 5S%h!0 `kɄ>ibR]:z`(+#c9ePج,XWL:#݀\K|I-bMAI$މ$l\zJ`vg.z߅ F2,ˤX0Rhi ggA%$T;c|V0jy\Ώ: 54ee7vSKל&>=UfC 藜yZlC>W 1Sg8jmgD%_}t$B hٿG^7>ST4a!XWkśAq+I"NCSfK;Ոnis‰aM@oe5mxHVumV^r3;)ɢ7xz;̢Hֽ 8xK3Q ږW|=p,P(3-WdڵXµAE^ l9K 71:-#'chӀFupdh jj*# F^knw/|םY>:2FS qqU:ː: 60_g:j/.DQ#s4sQ$ I^N rI_ܠ%ɷIx̍}R/ϸJf܃&fIl6Ei<ROЯLCxc Șk"At׫'H 6Y#WNgiT aGTq z1"*ciQmƳf[/CSŖ6#7qIK;j撞ҋ) ;ՕĊGRLW[&Gñz` Rau-TMuNQJU}5e^>LXxg 5yJlr[];NxpӞiɰ$RPź_Gd\㔦N~i27zxbO]IR 3,Gd̺%ݨ>l8ۇc%*0A:(ソ= o^掮X(WLǸ}Jڶ6$_ ӤYX>E3O g/4睖/ݍg.30eлYTi,xU+DZw\2\~j|ILbro^c҂>n# Bhu>\l{k qle!ks'h =4 qyq!}<}YQ]C żzVL(SBN>K 9u1d#>_un}N(7w.~!6zYs;.+؞6M"uvɬ.A٢JR&ݮ:Usv7Kncs8g@jR:|!Yqm3fj\1<#^ # G>n_$Z:$~JxdQ/{ΔtÁ%TƔTvJR>>Nۻ "Ӭ熘hZRvN-$-c ӻa>UeJ esY6>P$)[dՐ />*|f"!7%.?YqB0|?r]dh8Y6ȼsSo\kTԝ79aCN{f iW>'ojbd^Oݞ's8jI\(qB1#n2 1QDi1\(ǥ>oP*c]:B\ˀϡhMm3 0b[]6aZͨIpQNTA7%vLSN6%ppĽ.΁O]R3_iƷ1,xinGC!σbdci^`G z teKΈ-T,F Qϴ1 ,]Jq2qtA |n#rF t)"֝Z~ bxdG @}h?̋*n1X17D@RXϻHE:y9)s (-IE?#[jt%N %u,Jml/6E׈sOj Ihd=*2f6]M$P9ԴO`8vٓ^\0ez C-wa`?QO)@5;ҞO*\EC@AՒ̘ݔi=~ HG' (rS`5UCrQRI~i5'Y,m &ApK%'o~jO?B )&5dlLjh PL6^ey2>OPr#:9&.*HlTsm71ם=J ay'n.īTco^;>\}"RpIDg'ZnZ4և4B5zA8] '%'Cv*"ۥ)vvTOdNHQCPuotlߘ:.cd& @]pvL ڭCN&" pz=yxF^wjJd5z$8xmu'lS3G4}XDk] N~z՗'w0LDycW?C3Ga0kM{ګQPJOj+N Ӛ9HrH[vVkWre'7,/g֦UYꁐ.8ue-xYAۖ 7"~I΍˗ԋ}? \Scx,.(P+*$iqB|kxc1Ix >%-g O&eڰU5.?έ,[;HbPWpg;Tim_+>{cAAܷ6VNV L( q U4n]uh9s 4ZbhLeEJ;iwh^I\`,pÙMxǰ7DʸRԁ;~ytOꛛh^ L9\=/JOck׃i @BCzũv?}JҩJd eiҽ@^\9)(OeG=αi.a[ײ.! .+8oO%<J/~OwvIaϥX*NU0FB"~飻;&q(9CT쵛XL] U凈ns7jxI'Iv0y,<>Ko10EA"f4:D$s-Ug52;݀& N,ջ y!_Uei1W3-0"'+-ݢnbݽ8.%u/ߠ=4W12( i[պ"=v.0 ]WOѨ J5T s8 #)-]}_# k%`uD6@^,]N3? 83&탐3}S4(Mv 0"bմJ}͌gvt’kCm*hpDaC:0f@YO_*uV FeETetD:չR|tp[Qpm9{~kA_WV: @:ySj;S":Z[k]5ho3mlQUt>t%r<9"eD("7>` O5hmf;ćVF&ϱB8}Mޏ:HJAP**r :?CX?k+4TQM'R]\0!O)a56ju0~W=C'$ے5AI:6vM/azc3* $t9OFXYj| 9Z MŨ5Y֌ŰLe3m8Y4]}rFn[2Qcn !Qt#)nCks"{ rmy2ѮMط˟тa6-kO^Gg⻤mC^Xjh# #LJ^v4VVĒ%PYc*(.7P)R$4SyZsee< CQp`L~w:gʸouK!zB4{ESjs<f$daPt0ַ=on"2(bƫHK auP+5kEM6⭭hpXR'+ymfpi}5?L-?l.hI< 8(t8QSMIhSRxm,u6pנM<YV[#7R tk>6"/ ' f''<-ivy%~ "ݙ"QIĵv(82W8ڸymCg/tr}ʈAm//$-va/UONJjr3ehɴvвE5j3DgvI*P")=[æꆝ 0L)ZOX%B_sW)@:<80?1:yk( FbA&AM$I1״Ҥ3>TT*oOriAYPd/}f3E5lV'1܌nArkP?W`1I/w Tpݜgk]2 \S{GW]cg[}Ub$#)ef[>`A%55 ç_ -yEv \XMa2j9ct376p MO(!/!V2F]|hK6H%28&K@qG-4moO!+r}lG , N~g;xE0zAmn~y0Ȳ̗~ ШCTc_juTqU.Zŀo4^C!Dd%Ɔ~%)hq{Ż+̠N_܎m;sSCYCl V>ؠfa ַ#$kNToӬ1%>d}Ѭ=ƱH-X>A;cH(8Xv`O]mlYrUjȢyA쨨$ǰ N9E"s@?Щ.1u/rɧVU5,9HY^6Bo=)J鐛Xzr'768I75bfv12yUCNKM6<ޤC"* Y; =E|YYdOԑqG]IO8 d1,waF*?IQD`! t"a BơHQ`dR8=lT4J}|F(Y7ap:k'?vRvvh(s#,{p9ޤ '֥p!KIB]f%|P7 R[3^hN 0K R;W/_p>x{m&SFavvNa߅,UMP鶂rm{wNۘ<<;g䰢Vw[a02} G3fuPj  LA^6oeI5ȇ? ~jqBx%?b+tB {3VXgzei=5Mb=9|`Iæj( ߆5R+\*tqL7\Ш6Gd6*u U2:vfל͚Y +~1[{q^琱cn]R?w#P^غ^_sNIsJ^Zώx_ʹE[ 63P8S.#:?Hv;Yžwrg}-_FYTVxd}?BmqP֡$C5a9.wџ6_"zP*؏0T 4;'lɲԌ1tM(QgX#]#wx;1zzɚ9EnEywz Mmה*b'<º3-( ĹZ!3y>rY=P䟭WaKD'awwD\(rW:&RځGд&81D`|j;Z,Tװ58`pzcq@1 p,Ǔ%<6L.Z Nqr78.g[?HMn8x F =!>*+xmWo >񴑳=VK"9TAurSo0xTd[躈XPD=RT1-[ jPcObWMUjFer]KcKR]fl3Q r"7:.J_401F}Z@ͥhF籑? ײHb0݊ T%1iITRa=*",B9LSnǂ1ZdB,>0i8(?6}SIH`M#UYM=& ]!2 zj }pxq}٤+p,wO-</kP/6yrmDn>o5LJ76Lv \-ܢFg o8zNo~Y M~丮%MG8RtK-)Z1Ye~2\p}{u)ƣZīꐙerfNAսO. ~eՉБ(ĉ}Uzsͮwt "&glb $LvC8N,~LV{9-NX2e=Z5({'|^yrɈz<<*z/b1uYgoMg L(.R{&᱗Ts (ͩknx=5(qM`=< 3GJ/F]vGge+D8f_蕽C]ic*\ `l&p?N?R z W1/?h/`a;d62̧-o/5Ufw_~ 2 \.l4SQ#μo8//p" q!sF{yh;z*CC@P?~"QlNJ8"T '8gH|cӼu=^pqA-!e "haXCvPz ÖnfKvVJ Dr+Px?&"s8&Et :x9N!ػU#ݰSUH{5[}-VDh2o;Du,ዿyrno( b2BrtDxE8= 6Hҟ%U@l˸+U H=_y@4OK#t}o6#ø}x8o0՝IWqwy9A(딴<<`Jo\|?U&>yI7-o*pHa'tUˆqa qa_(Gǒ|Jkm)<1 l b.jZx5AFa׳KU8*m ~DG%1GgCy{vEvJ]o88qǣKAmW'X }L+S}X"}[("*W)&|j"ֲNb6k( UJ*Rb-/9}/+>)뱪0HFUo[S?x`iU+QDJݤߴ-!|!,#T0]iw2.W%b7;/nl#c{]Oi@,*ƞرlp$|vBu߹co<=" ^ m*)K+>>UΙ-d(pn `i> IjeS?a>1"p@|^4aDμ5nAE?lU` "*-X'%>,Ĥ@}xh\QAԥTTTˬHRGaz"ux.S#s1:Oz\I^E]wy$P JR {2 (d8v߂q7:~H $zarϟN 2,H=8L5!xlrlӵdvhqg8*E XKX +wr5Ho#1BHKPFbXߞDds$~E\'Tdl 6ɍ@s b, rY3xm)cE S}VJB|φҷPFS͹Pykl!y3ւ4-=` =(Dt/b޼4z1@!Ù<ҽA&)${c zND/zU@1:S~lII&}D%fU?ߏē/nag&2P v`+YD`mU >XO]mJ\#CwtU61%ZE@_&tUԾr]k`Nm_">q;SC7aEi\nqbGm26%/>4D!3 -'0T5v+ ]ӑ:JE/{TxPݯ$ ϐjɅxo ZDA=-XS3u2aj)&8*jӫ;eNG/-e*2dfպeܒU!3ؗ@gҟF%x\Zuγλ,O?ǐ J^Ă!IU-piT_M7/ҞK[liy Ϳ{އw^3bI{/ION%wlB0<%O"g|U3U]gLz>I)!!Xʾ6G6NF9RJƞ a6:p],@U4J'uEz5@B$v',!v6]YC^r7rVg-Dm,C9K,s_'=:3= ~.aWAwvn]aN@g89I|;8;m ZW 7P+m@L}4|7S igM $%\Qy^q̩+rv /U4HkIe m9q[Ax% ym4yZzcr`Z!Ləer5 jǧsof["@}kލ!0TFp9 QT N=!1~ZUȹYXF| }k}F۩f$:є H?`6P8$5]Gꑧ@ȼ](.KZ{Z^lw$ OU GOeE!?iĊ:G:tMf y= naex;}krȺWm[rw)} ӸK k'Q2v`e <4m BrP*娘|fzM4^B<`]3$A#VxEEDx$R5`0Sɺo41YLk ./Gb+NPm>@`QsV ZNq0;*TW)i2W8op 8ݮZx򴥤F|K24&'f^U d46I)@d#9e'3w#*is]ԑ$^z7U%aDs%vNZ.^Т'CCX|;k|VEAi/ xr|Sʐ؜U> mk?n }KP=Ap==6,:?FCl= zM l@ &4B瀓hܑ 9>\Jk5Sh-W[y2>R<}KL :O.z*WAGp2V[&<~uuONR~ tڼ J(n '=j7EBĆgq|9ql8\ǺA#TYG,/[I::ЫU]i~ B0yV2Pt-!"!4V- !;Liq" 7MdR9k`0ĖLkDItCًL-֓W/b;2gvDV+糑l>q` b&ْ| Mg Ki6&uElMcm +Nxw3Hpf؛,#%SW,np?G:?XuӲTEq"d#}(]s}f1"S*@b@N4H? 瀏 QՅ<:,Eh[:G:˪3Ayfec_OcGԪJj hRB4l- _z"%}&v#w\blQyi=t/`Wc->8abtQ hT?^EUHޕ"NqY>]f SE%rQ)`Aw}=[O5ĴYuf7{LJ 4B}#&(NPNU{b- d<+RXgHϰZx#NAO zE3f HB,"i%˚,7g! h l:m1*Y;촒IΤd81oC~WC}QD5a=G^&ÎN}PF LnN vOԔY7Z944'$uJ$BXA3 rL8p-:Q*p.7Dv2K+=׍Ԁfc8whEgA*ozYO~H%UMѣS]/5qcWXt 'ګpG 0;D{֖ET`2 ~n5RN}cٟY'W̳xC]ꑊJBFO|\j@k8 bXW%7'tPoD>SX;CxN^ mt Т\]vې=߯5T^RASiLQEP C._^Qxޠ8Cp7p WCp1r{*g"bRW h%1nz;烈%CcFzV\,I'x/32}T,K SMJ[ I(^ONX M%;Ggab@H b*zä:#o [5bAZs@aRHG flA?ݡZMp}HMł'rBL qeB==MAvF-1ph>7K! Rb3ts$5!ذyT,Vҧ+u_]Wbދ.|lhqvZS/~ y4lj8ƋU,h]ufyʲpEuB%{3͛@釡$|T0 Dc}c~`$}WL 04LauI<_SĎG}p"DvĹ1M/":vM*yvj`S/f[8bd:g,Y'mkБ5:#\ÓEEc#q<е(t$ 8ˀ׆EYGAl*?ssA"ޚQVb9C1 l8[o:1)3B8s66hZlU#捔gdWG}1%lh8s)OE>_mP,fmt <3wG5e$odgHVJ%G:F$\L"F\1aѨC(P&'p X(\כf5Rk0 #{}ERM}DX!DUSak=9r5Hų2Bwe? Q92t>5}Kgx6 FE~~M|h'Kc9_sn%7>A# ̭ǏBs IC+ZX+ omE3|EQˇ3+..!]<9=_nvxQGJ3k?T_vD."@7 eM>X#}) '↖wNsϿ$5;.`P%DFaP ?H)p.KݙvR~1:k\1=r.8]M, P?| @gpkZ\ ߈QK٩ yavvn)P_+݀ [(_31wЈ|K@-石v&&Be@&ǴyԿH|Ą=>fS)~?^@<ӆGtwUkĂ !CO_LQ.'|m$]ٷC3OB髪W[  hr:0o,jO tK7LsYi>0s0g[Uxk nkS%nQU$kL9HPj<( hh_+ oh?"Ӑ{WfkWک@0;pi䉩Cfa7Ehk|%,BQ,xӓvmH=y&F}=MO8|bDzDUnH_OX]XxR2u{Zr]6uJ8DpG[f+ ^vXhW ݔ/p]䌭FP ]CsqkYoW@!'ͬZyb-B># in@ LW.12HĺZ.`:Mm8'jk^衈NdLC~odt}Ewliˉn}+JWOm`(qpۇAp tEzE(c'1d =i֋bs%P %&n khV Z,2yO?Tk{(  [g|`şG O{}D~|:%i[L0ρ8,*F@?W5tfX:F% ^jG[xqhqO@tֺs [_ZȐknk&{#e"P\ |K<Ko|Wy;^!!T wkQIdxo;.B#)qOI1¸dq)A^A',1j`a }H‹ .¨{|NG 1FCDѦr{0DB-Ǚؑ_#9ww##sZÙ\i\EA<܏XJA`:P&},"Ceu26)@fJXޠ$ f&U111u[r <R <7`f Tm%)As{e(lE9);ؾ R~skqswbQI)?t!AuSye E:@UB9ԾWy%3Ql:I)& +v~}8d٢'0"<`¥oZBbz$\'u~nw*JA[?:%Nk.*YΛ*)eUj$/百-&B@QƮ`N3R; EvOn匌,K!c]ѳK IޛfH[Q?(0ڥd&dU2bm\%3oXk_ۏcC(6<GxUvyf,:.c{)˖([Av:zu$3e(}k#Ku`rgAj RFh 2lNۈv<@eb׆k@Q̻nmTi֊'1;`*lnQAhb_KCy[uID C &I2']`F-Svxz yzqP JplQ*b%7o\4hjy?yKƨiGI; .Tae%[rShqFԖ NcڝHU-Eo ߡAߠ{~PTDTJi↜F0ͤH'U6Dr8[nG!' ZzuLUߴ&0wN|#!tňŦ4lu5 #b걟+$Uti(h6L0ڐc(K&7?Z7;zcC b._qMԯ^&=wG0j{gz 5{;] a}ϥR,#a )eҟhN,a)2LD_wJ20;P qheK]&RIkFJЍΧd졕C&;ntKE)~ :dU* e8.6F0C+5; \#}Խ1#]+U) GZ!j}c[P!S?ԞIL'~0"Q^(oq˒ V0`MgKr'Vۛp5оؖj?}7UmaeH?N&[Sz9& 1Z-‚Y^ gD0,۷d,$&@W[E`P/9k-ck).K5lpfF.80?! !L KROi bu"R4A 2+2FyZJN~z>>dy{>fip=%WaTRqoljZFw&I?bp΀_ ݷJJ+4K"k qxcC:qO19%F_w•'``G/8}?$pL|9ǵMu\x%nOK$̽ ]g,8SMo\H. ZW#}`ϮpNEYT[{vK?W=d]а G$hiCv⭁vɼ=jg%Yn$X)Zح4ǔ$Z 87~70yĸK[jko(AC-IqLݔOaV%,Ī↤"|6 S6N&WpO#o #4|JGsa}8觳_nTz;kb[vpu%,aE4[SfM~*D~ .Gup{$#OHH›uF {#W8=E*r ny@MpjCerAq FNCbdC3ǁE@KW\%m0TG #t2?L${cdoZ)rO DdQ%rL!Y&F7FƍDa&'an>vv#$\eUqlN$AIJKԾ}KI΃i:Vh8qQxSVe*(4jE)f?q:-u9l Hy3wZkaxgl'@vLZNv)⶜d6UE9LuQCCB%\~Cy1pIWe`RNX^rsi9 h' L(7kQdt.sV㤫cPSIU_cB-rGf{~`$-[z+>׈"И m̑9@I^\H&ˁL $6ݘgz~W̞ AOD]![zC]k8M=S LӠ('A6w6X/*gOxIK #VpƩya-W'pcR R^ [,%tNQ# ]fɆLdjx`'j?fS6>nI3Rw R[_DƋ9--T(*qG%/2D hz:1K_d6<)>ʼOi܀?u%xG *E@}:h'as+d$Le|dӔjP}1г畯 aGijL1|{y j:֬٢t A$[ ҩ#CןS>r띠(Z h5 &?gW\KtcH(Ji+l'28gq\k 7T.7HSt!eZ}!F!_4= DHI)m{i[*QܖJ4@}NtPpUu16+*i8]Ԁ8f4+0.1s3^pϥI&!Wg%gM؇\bz swf,O_L@"Sܖ.m<ӕ舽l;ͭxt źt֓pCQw@\E *,hB憨[1i"kB"B2/YBnɃ;*Ҹ ?rرRAFKVS">PQHZ[w,{5?~w-D6.sɯ!1aey~^4xFjFf3+(mhSu*؆ XK³)/yG$:jۍ#;T>W#`3j Jym90LۋTΪɩKrUyQ3޷5 0By A:Ѿ b"ų %U mh}GZC|pF Q|qޙ-\v|+%BCPG7Zѭ sdzBce_AKEL\*f6)leqT"ecm1[Lsܼ3)8U<Ğ"Az9fLm|olksx"p?ݎcH+ld/ǫB?nЛx%IH ^ҵw!SEUQx3$Ľhm0^*9sM{Uz Fڏ$/2`&6ֱ /Vr<:E{Ɲk/fT0eNRVPe3y0k2Eh?BJ0{ʀ4|"$XQOClnOݷRrŇPfhFWqQ./}LG6 /ɥ}2[ġ/Ƴ0Ʀc@_࡝{]ڠsY8/`(h4fާU;MslG =*ZMHͦz EI$ \40vpJXѾcgd'ald 9Mԉ_a%aKAPvZUvO_v`&Bɐi->nڕ۵4C6++ % t$Io3jɛ*BG4&Tp&y&rjmUJ\eink3ͶrpM@jou~f2S` 8`Ll5G-P27$,ʜJ݃L9mN$Jbm(ke Ǹ2-"2.﮶4in%kYȖ,I9Si+TWrІX5\H2AfbPXKFOw v>Wޭ:?dbT(Y00MGX~ݯ%z qk̊bQt zʙw$V~)3Uu84 0q,+MqͪV Q7$yc?Fa`Ј} 1c ~Nٮx8cJ} oQ=7sTsݷfqTVf$ ~֞><D$"%"ْͲlp%Ze!HN͞HJ1e`>)\.n| > n5`|D\"J< "61E τ_9 c/$)Z;ΫMhKt0=1 nj`w}1|)DD ]p<֕?㄄xH*+wXpj0~N(]r6%'hXxNnWD2v)TS';Ye*4|f 鹼ZW7AHbl]E)4CYh'^K$?tpX6=(Ւ.Ť|˲/~#{G&mԵzzeYL*#vF{s6=/;IdG*JEVb/tscHZ1o+5C6pӸ<zjdxpS\?~^Of @lro/|CӨ V} Tp_>0,zt{(O#G+-<۱Nzg-, 1O5o+[8O ܝO4ƊNŦ,6*xMFbf@$O't)4"88`91EzPEߓٱđW{ȃ⊃~WҞ?$4*O!]$ȩwV4UBXIPC&KT3?&'Q*]ݟh!0jx*,j@s{)T>w L6^ѣ%B2%\Մ}"E6} BE@Dp j>n$daGFwH)IW2wF~?V3#!]vwSsBz2᧣- )}H"vqTG?@óٗdI<p>WžJfΛ^0U+ګZ{ ^WCN(UmQ*q,#o0I04rBMMcDxgg:sĺfxjs NXrNo sVA1mAi,]i-S b'?bxTR,+] `>I~ ?~ up !c' ;K<1Jzx>8tvKEdg%l ZIȥ_wVzb_=v`)q• >P2V]o)c3gmHۼ:k5a||ʍ%>Iñm u4Ya4L.mͶTԣ]iMxO,%*J轅/iMH-!(G9 hxu60Fɜn5bCh}[2.;B AjG-LLݻ* $$!捺WKaW|Wtfd+u}V;Ct3@-p<@ycobA`o|;@1-ػ,0|aeGGۯkφrsRd7v3P4=3QHy貚^.0$r>L#%cqVYI7 I$_J"@C LML^~ʹ5`IP6un eO@G8qhDߨ#$Cv@k%,&3׼<%֬s&ՔJ*8kC adC& 5!.T~<ԥH"ѣ;S@;[拞3m׫b5ÿtQ |N4 wa(l݇_o;&dh (5IVvFn:V4/ziH}m ʚb{DV` /v~],DZQ)ܰvofKq64Ŵ";t8$BDz6ʭ`)ruN@Zez(R_Q( ō@)vaύ[14X5o([)$Y~Apq'vW-?2V6ѽ.w!o{L̜-e--> beѶyɧ$?t0 ]yʘ=wOL lj*,!*YxqN7T35[s=v`wM!0 cTkp"ڰքY7+Y0ou%z-$$}Bgk_6lwP&(MߓV{'ׅDbC=+ ?s+#r,r,B8@ded"KXCþ@K.N‼g8}ȨмhOᚑk=rTaB vz6alU;^l)`iړߞ;>p2 z&zZeEIhv\nP䓁Fb%3eLHM_sl ٲzlߌ륗u2a@tL|eŹ8OKbb|Wƛo[?0yD;l0b܄eCUf|n(-ǝ!d_$1؞`M'^ya67J\ǧ”E9f60/ _%m[0e;(BoMNTz #d9vv䝚P:ݏ K I13T.V*3Y yʵ(4_Sx&e]Y?gptrԠ5 oMc]2CH ZJV0G $H-6{XNr-$rW|H?njҋ7@? "v׭\.qAC ⵷N"ngW\izS-X Ntx:9Jl#@Mnltd40tXд.d"?$cek}/ IM.)7K-f!Eb'=_=NЭRu!{A&1Bab fT?˩["t`ێ>+zqn ѬK3 . ~f]վ8yҼs @ }<&S6:`3Q$ ^6 {k0na1tjfXKI1­nF&zܱѵRdyuu%VTm;"k,9bk:)d4KTzG]`&GNjjHM!Efݖ#; -PӁ8Dф(={-פpJ Gr`#0i_zx鑦[aV'f>PdtI-ˌu4e,fܖPğ^kC腃N$R U$oTc!Vbv,8<Vt 'ሬE%G{ف*Éj'> ]iCLPNUW97[-SۖZ_*y+%Cqfꁞۿ<O2׌_)9HF3_/*[nYhg陛RXNёٻ`TUwѠY]BVCy^CR\|VmFcqE_+K7N\벅[Ѩc ɧ`<$@Ȝ/q}XLޖE;(k}6$[: )i5+{[iw)IpCD|vKGY?5T=I ON+Ia55BLHJ!,:s3;?zöK@g7m٦Ox7.g#ZF,Z4CMLVWtӁ_s/d—BT"*=w϶f9|"U>n2#* P?WSt@2 MsVioP԰Y6#Jl{:(<3`b98Q#bWFڴ#ƓU#3Nau8%YZ;je'ؘpds-?u@:n$J5z) ҫ+m"FWۦv-{5`wRz^VҘ1捼 x! LjH1v?Ҿ~P@2 { yr0.6,En1pVg0P5bQK $x,f/#H|W ڟ'<M0u=pDI6uwi C5@2X% nlb^w ivhWb%RnpoW*/܈=H)ы9˚YL7'S0m՘f[b%OVutp{p\OUg1G@@f%P\4߆pzqw< &IT6$StIA0{~ =$ I"V9z 렜aE5tXkmح4p)SjrDʷ'kB,RBųkp-Ynئ:Y "3ZXu嘇0Ɏ#@ׯ#}8ueġd龇XwRK mطq7Sp=T0BbxJ=7_В!? ?<Z}RF2A`_Q-RCFTڃR6âQhYڂ+^rLLI oJ7 s_n5sr.T'L&b^MO&D{/T:Ÿq JI#]VASY,q(611NjuEy^9+;BoC~i-^|ҰY),iY<~^hyIYڷ}x!V7|p|>jgfIiؽo4h%I:CY.mJ9fYyLV-z= ౯$?fWztn yB_p$U Ymnζ?F?.Cw>bINjK뗛dba#8ešƽ##.u,%'L~/kb`90{ \~kZ ZX MQJH_a Q$OKب}F[/,Fti!ҁrk^壈,ѧF,@{wSB3n JjJmd$`5HPzwhNZIɜ٨ kB+BB thחHN[j8fa/6рiZ>&vS+Kv)P&-q)9:$JL =עyT z D>Ջ7!oI+:n*Uy.2e+S9rhD1_#D;d("%t=sN;:zh9-d?7oi`){\0TSYQnEvjEi)<_⛩4$90FOvá8öD%8EQΡmSJ|swoѧMgikވw{e-)2wT;g+Td@F:Tb1#kM3_(jp x={?q&q&VSLEf!HHl*_{ @.( ~1i*ibGm{#>ȴ/o3/hsx#  OzXݰ#XƴphC_Ir>L$L xIyVO>5Hc[u~֑ЇL)g̅` 4f'+kJ,kD00=vd"< @Y1HrkB +αq z$o̖EMuTѰ8a4T|Ytvql^jV֗-+iS_fl{ }RXVZ?m'o`f-%2gV/l;-,qD6H)wEXӋ,q OE }ki#GυL]~$k'`"rmp+~UR\̟Nȏ޲7v&3ԩ W)B@5H=KԬ78ZAU ?&A 1 ԥ:r\XW0=,Nͣ>} 0\:!b:9NcDvD7@"w;Ű3"GJp§BFř%pK`×K%&kbASO3~$E ja Os[slnf2ZuM:DL!#X_4$5$af)Nkvl-}?% eRwkO!ܴё^*W.gRx_1)B.b*ޡ,GD-JwDzF y5e/jUPT ӏ;\ mcMc:Q1,xvP 3HOɷs|KVv'ߗ[CPl6XxϷ=sR$bWm6%_N?|yr\ARm=+ien$6o։O2,HJ5Ϋȸ+Vb]C GŒC+(% ";XV(&@]杲f$Vt`g4vkEqDa'a/z_%Ϧu<~vnZW-ki0|7UG!j8 DK" =DB 2ێ PsW$wtǸAj-.([{ 1*xF Wp9ѕ#=gf*ƲdzHKxv+i-!C!v6^fG%0=L[.$sE8a8Hl &Ƃ܆(9==].(?'֠B*b0.P7P U%nZW{Zb0qUY AEw)&LMIoJu,Xp0٫qhx٨uE!r>>R2`BrQ<]΄Z܅DLU Z$_!sQ]܎qIo].J n/ys_:KY΋t= m#[= Q%69e^?*pH85%(`!ƙT{%IUب.7o)q?=MAԠ.;ed Ȏ RSm?3Ijnze $g9mouNɩ\SxY B2%O- ?f;Q˼/+)lrO3pb㛿ё,ƘK?WVTX<ܡPO%+^^ 01r.EYo4˩f15Y_At92$$/fj)ͨ=Bw19v|"#eOM`W-ZJ:2`u-A߲<؞Hɝpqrڀz'J*ס,^R@4ɰ_R'yRt$U/C95sˌd0J B0<)43*kQm7ʻXR;h]j]16rXB{A#SHc?8vGI< 8 FS^Q3p@)ݶ(/Z!}ew8%'ItH(^Q:/̶Kݑb:K'9w)8;fMX2AaM/%k7 x!z` V`T0v@/噜1wN/5:((Ӹb^4:wj`~,VUP!sf{]6Be}UR)*,FK[4 [x1::].>+) GEבRdȂ\AgkBM=?u P%{1W6/KYǝJ~ KmQݳbtA 2cQlnP:Bfn5];l['e+xp0>HVCG-'ZYI{<1-žG @uh m^/Gإ"{je W^Kh mXVKkx t{`{7G謜2{==|If+ޛʊzkx%cnr'1` v̂OL(Kh],=yMOM{i t-Wpq倍6Q;7SUN{ oOaZIπ:q!"mlꖵ;h=i>,@5oOɽ%`)IݰVLTComk}e)ޱ/sCTq;<2?e՗qU7`8b.[=,^edeW/ҞU7L$P}r,uxFܑ#s"W%j/9Ѥ u{ N}\~.vv8G:b?2G~J MC24#8?J\Xz}.f5 ]sIxI쵅 O˝|: Sruew5P[6~hZQ_gl+qCUv\׹W.ZTHKB a)XpRlKbln=~eU&DHJ6Ckn=g @2kYW )/a߼Od<Ahf膢U2/I`-wV X]JU"kMP;7MVM{S+,rz""su+CZ3Jgɧp!\}i,9xS˔x Ru޹~0oQQ|Eqo2*=K$M5{?=5+c8첢\XZGfHnƴ;J5xBqK%9p.8H4AF5=L/l-ptCw%Qc pVčuOM:*~CcZIݭ n\,OaGoX~-g}^e\e7dTxx5Xyfu eWIP TqJاN |DD'H"zAk@;ȟP&69$LJ%1FY`6C.:',43O#'HIPL1}.Rt`2;יE%!.&ymiT~c6P Ri0Sx]WIy-O؈s$inA75[ hX~Q^ Zq`2F_phbᮚM;; Zm1_Q",-v$sǰ5 OIB8wfXpJ#$7YR nSL榮*1NYY2 Hшok#M0?L 6a3yØt.y-唳L~̜0_;A`xY ݫY#l-a.)&* kKjXiMyElz[yW|^A\cF3鳖\}'2m%DeyX謩_ qnoŘ2–ݱPvݯa<jf0,D8М%VaTY*Cz$мWwt KpKnpqM|61! n-SW̫Y=}sG @Ēg6ҥrjnT2xtK{ҋ^rNvqJ]Xb!>d헑0).24?O*q`Dd@QpXO my&|oڔlE_>;yX[ ZLSOB-R2ygdhK.qE;潳hV Lr@r+IdyUTcG ?}$1s>O͇˗b\k[pV_jС:X.w{"Ow 35?7cy,q%)2TRol]>p4V:+-R>%W^C哟bpWuyҿaŔi@Kۜܢd_*-73QYh Qb%45G .a#lm2-frDK0?Sjj&NHj7R=YiaA/c ͹ld T`"W0m Nz٤wI(܁"]1d)hOR;mRJL_w*v\sR4}\O̻1{$@./PǵDi[+rXE7G6F%/=b~gܯ1$<~jѩj/by.RTCaKsSoݶt$ٱprSH g& Aajܩ%MT\t8^E8<_܊Df911KM1$7>P"Ak*R=8>`'k\ `ĩFW##U?r?:zi'?놂DfJd{u|}pNg!FS(he'٦MmpCJuT?D'G[R<4F'< [_?r*E'fuYk<}OS&ꝶ*H"׈xB~iU*{Z=50oY^Ԓ7 z6/4ZB>q>m˼&f`WTThS_0 zu(@wnYa+/S$@(T(Ҽ|፱]W^d'Y)!֏1`(eďUi-6}WS}3+] LgB=.rBv c#X) %ܔS6X(WsKՑ9΢2HH.*,UZNv;pú㳲%{R8~~ Kpn홎%E0̻H;!3ϙY„3mm3ʼ W-:KLuK6Ff Q+bSq?_|}]b,Laವa$5pM-IƸjZ0NZ4 ^P |||І1zV!/݄3.0-)y@g6dR-Nvon ;$ #HNf/[! ]B\BWIv Itf3X| U)X$H[PF<O$mymI=BU{$-A <5NuiS 2ܽ=EB5`Up/Y|DG_l~eL9ta2.̫ZF?ׯd`ba?ÂRE9Z B0J|_ #[`>6.1#@[}| O.J93_ yG>~An1b|+T︷\`<(6g ͆S}3 sG#͏As>!]KI9t|ƨfl+vHɧE 'ы̱V#imъ(M##%!Ѩ[Sb*Ît2ٽ3/ M 48[ugUcFȩS9tN_qmХ<G6 ܴ6U WHk'; &$Dy=WGoeh:&y֦#&UIH'Ɉ˓wV"uOŮb tF[$טL,S}ifEeW۬Yk26mfRN(zpQ+[st'/k5O zSZ]QyFKjTQobx FڎV<4)BHr=ZCWBE3IyrcЍ[MCuwC;sQ*J8?1?դ ``?SfE Ug+cIi񖜩fOU%;25rheuY}/d`m;D2ӎ~.U.+B>M.Rv4 U]nֲ-6B#XEq MkJ sE̪"Aw-U[u dQ_Rg5PEXZf3Υ)Zblu6vEIKBK$/YaTSO)(z%;fw\cjzꅙX->  xlFgf>0p/F^z6f\r~ ܯ O6#8PXAML5+w擡Yc'>VQgt;Y;+!6zgCeҢcog7Muk*|(?PaQ5k$"*"T6ʽu2.W붭6JʒJ{ ? ;\QE,jBfp^ \[lf*i8rOġֳ\ArE=sh;w{zU_z๗YSr[swgqO<*5\qb->߼uw}`2Ђ^,al b?f<,nvr`_ "n@ڢ` ҡW ?sx$R'b~Kѱn smd K$k []A/bCzU}GudJ f حasRifj&?6 }n!]vzʄ=bpy LkO㰡L$IcCYiń^_v4"~ YHU׎E "ITɣQ;!\"䝊ޖdfRNހL UzN#IùpIA)40*X#ŢWxhUNPK[ -"։Ļ:02% 8*{C}2!vhH,'0ЅU' xm%k}(Mj7ñ8-FP@ C(4$4Ӗ` P]>Đ]9J;ߐOi)q`60=BU ۔0 W8LS>eyH:q?Ǜ>ӼM9bqNîBVOi=-^z.?!I,!DiR[dafֶpD4ZhtXtEz tij JxhJ{vyHG գ:HVj\s}HU8t{Y9zӛؽM6O#M'GC]U/`L`PA* yt :g,G%rPew u>떐u d-ĮOݘ$k~BM r[xft?ZK`_UQϿ$Ү丌9d3@dyB>YsR~:AkWkؕ}(N5wd<lPU=f%V\'EȎXjW|SD c}3m@ TC~u͍*hd9wpU?y[=ŌņZ1Ө6}웖lPLoS=뎝sR^O,Q3BU2]ȵ%v#m0wiOq}%3r+ =GaѡZ;No ѫm/Kky-4bj{;;d:Gk,3\2 QE3#6PԔ'ZȖ* LV&P=>"5eu713|m vL*(}Iƥ_5PxGܜ)J5..A7?9͂C_%NףJt]}!gLq=2>$8$Q.G̘eE*~Sn}*bj ª9+#u,qHoXkKdsS{' N@\Mt`K~ѫu$H.R~qsW ~Ѭlj>麙:SN9l]wmO & udؒ)R!SJek_&? Ρ \@87SZM>CiJ&L3uqOu: ƞqW&!K~ (̠ڱ5sْ)k-"na1?ܫ׸KDW3|Ǔ- l%! ֺ%7GFFϿuc 8n%Mi,a  $ԅQ~FĶ8Urz`#\pUv!K1N9פy&SÎl1\>kk,zυj81'(ڎ;Gfyu]RN{o<<4* l%e@ T# )"J܀к6|WfN魔ʈy& DTĥ]̆QJňWװsl/̰ԙG@]j暰!tyydFAb^R0B6#4=WΤ@iQxCnݖv$' QC1gv'1Α]9oScJ i$#%([mta=) [٧~.35@x/GE@L{ԉwڬ"_!ew&wB6\\gQ>ǰ@ضWU|BUMYL`i}D.gG $_ͨ_^%EQĬmQQ a.;Q2gQ22i}>ok5-Mkfp?y'>r;Gvmk9\ߥx 3 Uk3>J_V[|`X󞥝~^ w;$`1Q>UAI{a"IcܵWZ\a[q8?E?>}>,fgBu$\o|k H|lA*aLs;P#,w,k D9.:o>AѨoꥢ4lpLIRLןYwPtYcDė[XY?TXܵo+%*IPד+#( UDAѳ$j.ĥ@P &.>AT:-!`6`/E|Qf5_MR7 7qDw8h#JTs]nJ$ ޑ%󿵛XF 9wJY^b (P}j@J<ʬ*?3.:dj*1= SŶ ӢBu'σp--P3)*b>.Xs+HèitޒM&܅,ڟy:7U,HjrGi\ItnH(بVBEDT`Q]P3cmz}qFdtp{4}f:1ϐ TaY>ʼHmO_=VK0vEwYǢ1l7BZY3-so>i6u6Wb"ZNjBL2܉88ܟs˒ZCpC2@%d9qUtsL[Ok/$<F"~ B*T܅P9PP}}ÙR5tr8PbI3cUiXR_i&Y:At^457% K8BRQ>#$UyEPO 43un4:TcLd98K=q7ȵkqd%)s-T@i+:gV7^n( yxhECLR* Pj&w[{zqݔäx"|ʙC~h#h:LF}$Oe1(^0I_$m.]_ժ"Nwv0~q.2 )wK>L7I1'֌ އ>?!h2@$_4qVVpIPeG<0VГ _*N6gbI?CH! `.Qi3YY1kA<QtտS lJif3~seasv`G+f=ݰxQ!o4W\ =\gN kv<%*JDJ,F#㺍bM+h?XP[=C]Ι|efcC ׈WN64S)ɵ@ \(z9 u3\He\֮VD.-cL( oZe9AٙbsnvA+08z$of #ۣɼ< JFa9l{>MMUBE(B!8 vw)*b\ЁQ_Ivd +q+h/@i/{>GŦr5!_A@ߊdLMB1 QXѸxnmcZYZ|2n_t]|N!DQmsC7ӽ{P8xae@QC; M SԚ0[pAGdN2"0y3IjPٷ*BA1s.ӿjc}$ PE kwў?S*=di ݟ^?uab/ 7P\ЪkZ^L_9]N&Ġf+;8_4ls%(u|6y|7VqzX ry2㏪+u&ʙG@EUil88'*$BN^I)0ΛW;U&`m;=!0?Ǩu_ cz&̙wMDF  Xޢv0-%P-HAV]:5ki DqD5 \ޜX 2V~O|aDdӱ~C/BB[)[%vߗ͝lMzT9nJ35U12`5f*?Ў[~v$Hvf-g>&ߒIWBM)Wyg/Gݮx"~a\X;MƷbJb)0&qBb8Ɇ9Ɉ.e0ց}˵SJ{%fTXՊ pꙜaĉ6>7 =ZͿ|i)!AŹʰ椎6X3EP!7Z!YӱfjӓVsÔ '6X-8T'`^k-D4]Ǵ(F~ސAX3OIXg+_S[yjV !j~ +ޔaAf-/6(25tbZP~2ode*J[E; ?T!u#GYzn갑 !^ji̐dZ.1uD)݌ @4d]_EtL"ȓŅc9CČ8¾3\E 'n8X  R>BC@44\^?hͶ:ϴ/f.0.fϴ (DYLrg; M`VUIb)u`nXaT<%܋O|+ :F+ol*>#j g `[4q[Yվ̗Y_&}V2th$Hw͏꫰\&N⦜#yZwmKT?o%NF-2s8.aD@ʨ~Mg.؊jPY} BIM\_mҞ2RgkލzQ{DFC#zC͝OL0ԋA`ަhw"`p?Mfg@jH%~%a[Aٿz莔4h!c]d!Z`ZLȌ uD8G^F܈c4e.6۠QtY!4V0܊(}O?O|&Ŗ$:k,xD))="=fNKX# ܮ1s3PLf tC'vMCݖ>|eW 2B's#ԡ:q|tV`t^Z+nD^fK]ֺh/q@~1vn`t,n|::a{IuT1TSޖ}lNpcWɁ\u2?MFiG3r.qw;[.Pⶀ*y߭B spP[0{؃C%۶i7St;2מ:c.u;&Ѭ XnJ>-r^Ͻ /b!e_5%+O\3 X6yy209EXf=("j7؅Lw:<@ ]`k XCDCl1?[5`c4}Q4Yh`LݹP,g[ U ZFX 2~br)^g)Q_\z-NLmij)J t gȇS }2QdEܰ 4M(-n1c0z\=c (~k9pK#3@oUtF"cṁ֭߻iWTloκyn<0k P="xΙ\ ԓK r'Tg1ECIrc"j!zLssL)1- t$ B5OC8hRc"+h_g)s%VK[KdRb-"E[d%G <&Z@U)괁7+d4eK餂L `i̦NOhf3EEzm}{&W}X2Jb\򺬽4v.$+ nzn#rh0E,B8n??&rSƧ p:9%pu 1c^$5sJ6B4Oxg)/)Z̻g(.rim9`<Hvs?VK1M;r{FWmP>XlV?5W5wYZz?T9li{EV 9>y,k0̷pK[06ғLkg}풩kSֈ u2<9 f-%O(v|>i _4LӨ\#ٵvrM4bNXL,'&8|7#ˣ>R죧̂ Y"^ u)=0gnc/g]z7 NJ%-n|U>X;^D%N,rIS-WyRbOzp;vICD kp=(zGTR T"Ţ'Xe3[N+s^d [:C<ޣ"RC%0 6~s*7|&D ]uU&z /,1A0! 7 M ?k]޹ޛl!Re\p]y]a]VcZ3YNNE [7 Q?\8BQĮ?T"V4ukHC2z.FbgČR:0xU_2Vc^aQ/8yݒp'N7bЬe!Q0HzI Q9 Eh2p+77&F.dpm/CY=d X_ZL3'wSR3!3z[E4B:uL打%xރ*Ή}9-f|_l-E8dFCDql +Ev m|ax'3 -u}|fB,6YsՈJ_ǰ|)BXʂ?ڂ!T| L^yHyލ㿰4 ylndڑ,"uu ,KڢܣO?fsFqq`Ԗ%3̕{jUC:1_;bjqK4,Y鯼_eʽqb"ΖP;%s))Kʃ&b:s_rwՔ+钆CSMw BͶ&塞hK n==ۺԍ+B1Mev~Y쓂(YCsPXKk,q*U|/QDI]wiKTH촚XyE<ٚۦ!(3w5lnbau#T?$R Dc\g}M.LEmOp&%n7>v R 3-<j6vyI͵~-C u?7v#X]0\|.CV:; d;v"mSKaڣ͜Ӄ}1#\9:B8܎?y]5@wvTkL`Ko#43A΂lH2z:l93Y,, ѴdK^~O'z+O)4+aSS竺#O>=EQ0s+'ŝ_W+n3ȫkږ=' DHSrÖ{M)SivAUkΆaaj>4Oc u韆E &[.HRԍRm`jg j {raݭT$? KC~ZH&#,gQ 0׼ gj)DH/_5zY$FxwƲq*77` vcSEPyAF3͌!1%KH!'$),ndOUߛ/@ S3 5Ls;K5|z|o/rNL/q>)<&*^KRG6$a劳5uCce/Qm,\h[4*ʦ[T `;*he '54]*nx!QF>gvu?G]e\b?b8CFuȳw9{7G$L)SVAL5YJ$a:QI{E5Dw!?R٨{MShqZZ hb ڶ9yLuSM]ĶρvWbK&NxKt;@O!_T>u+ gc>%GǗwX1\HorYR%ȥ7ו(a9z {Ely5H iW3'Z ʬ'F6F~ V*<U/fi7GJfYmIq$K6 a˹'6w;z<d~iQ7 RNO/G5¢loz+'*a^hJorܢ_<8qcM7C>35V` 4}m84;WsL^$V"TE85~ot`C~'/&ْ5*IUԑ@>ȼȯIiIYLWm-"i-1r/˷I(Hd4w3([b?S+@$JpL'D a|ٵ# 8d+dA>/bѝV.j\%r?bLsBO{% -k#fP$qsǗߜ@үlĵ%)lF/& 5q>,\2v,^C%DI1AdBo0n|`DR̜}ǷNy,S?$b0yarJH޾Qw+g,y^={e)L-Ǝc6nnRR<>:µ<(;!֪;E%eMB=U1YPi _l.l֭q%2MZ"w e Kvp]SSXHr]yO 2s Gƹ_cXa8< l' eSA6wB*! '^ep%J ~1V hz&^;T98 1q@k[JJ݅f t?+@ꋋ:L"F𺵼%M|N/@I\m ')L{Wߋx0 kX9pS`,/*^H`isK#?5Ri  ? H|D%b "' ќWwUe.gt3ɱ>l:%Q顔8$뱻 N&Vc]nTF-I;|a-2(X?6JOTߡm@;B2$g =tUU~W$K/c(j䐋 1eQA}s^vde,1ɳӺSx ܋-2Ko*r>NHw١.Ҍx˼%O9P ߸{QZ-m]QOZJˈ.|wx:}Iq+K68G|:Ibz*1Ag1FsC%ͶbZ[:TkI<Vܤ_ij1LjDkE%1qI:!{:$VG!m j c@ 6L1,S0꣑X/[␰r3;hučr͟I<KffIsdFjʎ5͐Q>|Kϱa,y\ } v얌9Q禾k+FgDw^|LOԙdcjWv^f l7)/U-59 A=c-u4I{FކVA_n.R Z55R w5HCutQ.m5_iy}n\K==<}=͔ZNx0+ &`"kE%FM9v*FShFn .#Ta:azo,ۋй'DeITzJ!QxWOW鵳ٹG `n| (ܲj찋p4;bIvGI}2.~]H"r9yfh9?=AI< ]!# HEǤU]v=Au x(փT|.߭:uR_ńB%}N!jhCm;!بm &`jlY|h-tX uh/lqH#Vm2fp{B]A΂E6cb_0dYTa*ΤA2%Rbv9cH.:X .N+`Q5ݽ[$IO (̛;w2 )@C-ܤRLUwvH4|j[SIv{Ub}MYr(MXvQ<ڀ_%㲪xvzA*w/}zR#X婾ib k6 诰5".UM [^1~,$h2=$ K*cF%}b7жW[\9KHD7G ׆Dvp~>{m&$Nc%aq V0ϋUd&| K_z)*5T~<58pR$uhAahzu b8U! )z.^;jثtsK(i-wq\bF/oVѲvpQI8:< f<L@UJm9iu:n"ܛJ7 %R[2lc41y6oO-('t@n %YMqFC[hY&|"4d •#.p]\EkgUȑGDg }c։nP$&1dID@[.V:c2`gr|܊~W e(~i /!I/?`==qT-HdMs᛻^{3T-I5.kq1:ꏩ{$9Ď``wkv?eBr큭鴎-*'FIEkN0Q ޏ}?2zvQb#%!JąU>$}ףM%[EPSD%& ӕWuRɯ*J@',E^$^NS9{ʥg?(2|u'mta]r=%N9IiuK91J0G Ŗa;TZ-D2W[cX`綆{dTQO2 wm1@cN*P!j9]Áf>1c~\kĨwsq8D*Sb˅Ü aJc۞\E\)fGcʹ8>3/=! $:>(k Ļء똎?gZCK-!XhtYSUryGBqLQl:6B(mwr٨`܋ ,1h ȠN`WVUzcJ1Cna]MﶃرZ-8&&A3{VϪrb̈́[4w& >T9u|4D*/JS) :#I-3s|@Ag֛MmQkWV^nzy6m >M{VO9JK^hN˱?ٺ؀Vkt$=d2 Hm G΍ƺCvJPZ;HX(/f!f3=O} ;yGGS3?z񏂊' 8WzPi80s6lҍ"KgS!qJ# HC#9N9(5&_p BIr x^&q3ׂ >y:oS,w{y{ x j8tK#)wCqU]ZhEs֩6b6 a-C6UV~؋?K"*AVjۀ ۄi#$j&3 BV((D7g@aufϔ]Lb6u7r@GG'`\'M, za_YԞq%TMfKdb*:KyAGL]4 ҨS :(U w{0F=F;P5vu{)]f{3yt0Nj+yp10Si\&?b!MVWg[xg۶ "VsNe sXjE*[>eD"vgUR[&-0 h{`pet CN ޳/vEޯ?a:N+Lxw>Cq2\F6=˿g`U8B\du}hlV^)gmmwcBeEO> h}k,: D*H@!,8ԡ^6BS+f:9QuI_r9o`4y$B$or%&!X po&wC7?%tc FvY ~R` "7=9>(NF %_plFn<=vA3S8)sNFOtȊ$bt*; L%ټΎ#8.$Uw7E[06gij囐s=oAslb,ZCzEӼeo~?($L^b| 'Ԭ3n'ѫNV֠8=<7;>L[Kg-w#Uuɉh"f:eD( .OԌс}f;'hkx#!40\%KcQe poF^$Pt &BA=u`Dc *%oP).Na@ez?1|a{[$g2 @[߽CbZ)~g`鰈W9|:ǐ&3^\w`%nwK bOe &khmf *V,."ARG/T)ZE.=Q\?kQ?@4C(T@G).)חyaa9BؔW^5? p_yp3n2h'kCF%ici Ro-gs7 +=r_3 .tGh.7a띴aM @/=K`^ϊq|-Үz0LLKy^9AƱCժL`6ۯ?k+>fTTgWRG)`qQ遬|ȓ }k#MW3lb19-J  ?%rw_b=BI_z /&p̫jI4CCk"SE"$CÐ ۃ]axeBv!de@ssU2-ͮ[ĉq{+0Qs/Tmm1}|)u2V;ќR4YU ]|Nj>MrDC:pr!ʒ4#.[y7*g] ]GNe:6{W- ͙-OԖQL4@.-, =*%)ȱVdFq1Bë1 Bn!V(w+iwT"j׼/aUGSG*]S'X7]" )rq|;uFRQ78=34,61j(:IyI#7ˀx!7 z Yz[)iBJq%&`XIv_+`4Ah*kZPpXj|GYv.CMRE,t_tد<ޫ 4@w6T.kr]VƣyA,/ok94z\({ tXָJ:G `u`3lT? ,VlaJS=,e!EқL<࿂VxqqѲf|>?mŜa*MhN {6x)A^xGϙ 2kǘVtR&B`j۱3$[}pUMЋE 8+$?Ύs)9RpW}D2 sYu[GPIiB(b_hu?vmVS(%kТ)FjẎ ^ێM_Yׂ2g4/FãmEmi`ҋV4VsYkdC¼}2Վ0So}&&}4%gJ+\Hw;e14'd76%e K]O/d:!b[Tn`͒aՐHaO:b!"/(mYT y[L_CնEqyMhųvʠNX xSQ*"ᖱ(H;LyEM˽.D]yzK}Zj2 "! T RHXOz#6BAE0.\]C=Z'"}2g~@Vyͻb<;'n(]n=6 i5DEO'f8p~?Z5v0\)\[F(\;Ɗjְ9\GOܣNÐ[68IÇȇRԇDTjmReڊN(#s/cjk9+)J.xhXӼiȏ+*4nШ뜕R5Ho'Ii۴/hD{wX C}Vln=k1H6U+}Rc̟ρҎ%$ 1jŦ0Y FE~=G͎GK]4B nz5ԏMHi}E8FJ皀L{Z;̵Cй*IUe_P&<LQ폦"!=^0A'o'yvmmI3 ]wȦ9JRe9x25**!R0&7ڂ뵭s0ote͈Q(ؚ(U y:t@k$v ](ҽhMZO5;}96\c|W<)>[hPIMS9ѩ? Ulؽw,TX43/#bdqn,~r+KϜ:-n@p:7v0\'/((OlLk|~ǖOaz)Y$yuJX7XTj4dPP5?g]05 B M=2[py?ZtkEODw}ZlnZ1lT"hnz7 WM㬢$n䕌֯(N,7M:?gmK$p|𶶩l[dRSKEDgN[ml dAI286X _Sd=[Mɹp}]{dכ$h[T )\C"`,~ub2DkaG6DV-930ţ.|d@/d)fy A:> Q? x;VCд&V̞+8} ratjXqSZT?ob>/* $Iz2A+GG~-i'7ܮP=Xkt6Q m.$3~ɕEjۤ?3<$}Uc̸uB<Z9'Mѡhb٠@ɂVEb읠5q5to5۶YYA{ZGkt!UL  lq8 +]k iÍ*#CJ9!>DWL[V=#:V\TOAy$wNufg HJFn5FS31Cb HuZ)l#Zi;Փ%d>|fS۴6 ryr>#n 3%L'[)4N,#l[GM`TT~֨FNpĂTՏbS,> }@j56ׂ^.œT[f`XcYHfꀸ ׷eتTV|ɵv* =Kݻ]*UFsIیw|tj{NxM 5OTZ#/B8"Q6r@pm'8eq"}.[c|1%ܱX|ps;PJ陣{y&};;)} w𜎫i0*SYh J@*>3n1(1Z^ E}}ꛗZbO|Hc/~*BJbχ ƍp?bc1˵#PLYERM)pVO8 =Zaboب va(r>b39F0f[T*aJ5ʚЍp3/0&B2MߋWK;΍cCs@(H#ID':iW["'d8Wn @%7K@ nò3˦Y9tX # 2QHssfSv'?ZIDw`k)#t`s xrU1A'2w͏c?M Q54 v w[kֈZ#:f֣4 9F޾-FF]m3oi9C[`>:cwR.A!+pl,) L Ҵ!}8FNWVS1ۥeRK&Pfp%ȣf!-`#U+eE`$aqzfm[/?3y/k0쐿&cӬoAԌrCʙ=0b۫ $m]'Ǒ;nx0R>!_$=J|틪 g+˸nPv>֑cڞ-DpU21  <hj^vhܑnP G'lX_iqE @[@Jcv&Y)Lp2.f-@t)].}€\t99%~hɫNC#j˜SwSKƀp)P&]~_Gyz M5|L4gy,YHts$)Z7K, uDcL is-Yr,#;niF[b;+y8|xŘHx!#k>6]lo'e|r#˼'jI@+OͲ1FVπRގT=BJ-"Kv-"b?AEeCS2,NߦA^t!U!L͊#n)ULXT}?NpݮZme9\lߚBlB@2%xZ6o`t;8F7bPC=C JCV>_#ض>|b/+Z;6v6={1>_SayYR=d1ȹq@oʊgU`'=`$B?FJ< R{f")AG,51`}Rw\A1(ja.̞ !=:G`E̖T:ח_R-ŌZ~<!_JI6Zk׮;AuJ7P\\oK&w|Ĵ/^ p:+ϛE/}1ޞj4^MpPP30f%{ॢj5t橘B]ERO('dm?[1JV[d _Nf0-o<8$13ܒ H\V0(#%\J|77H~(-\ŀrpIxpܢ0S="jI, }²XvQ^*ItS]W x84%zi~ac| B|tZH Z!#Z5[H^J"P|' G۴#(ncx_ HRi=- ֩8>P i?%8bl %2$[ B~! ВsFD_Cx+50<&[A<8Ӣ g[I<.!oo%vnm1Jo[ŧB0$ H'JC{ZQMć7_ fz3N<6 &-es(-Tw}DCW{KBy> :_HxlZϷ[tx\]>>tMۣ{ dd'l1JMm ΜCyZ}$ָ{ rbuPkkBC%'rͬA܍iEq I-q^eltmگG0Qyc,[(]YiF'3T)mV#}8{1hIV;k}e: @0aQ);sZ2O4,$skZ^"3K s"E'q¨3pFKSX ȱY O4h$(yf$p͂DxRzvzZLT JA]_sTV}zR} |B8?Ma_zw~T-mH~Lo!tf,53od%rd@8\6|0˗cŵ}[[^]ckfd"2UwqilIr_R7ȄzMNE#ّ^k48b^OSHz%*C ?ЄH?ƞP!w!g45EYn:IéH(`*e#L aA2{$&k`J)`E!j# !N6&#  v#xC*0;RQ <wWl7_8FÞ~- Mg 3-IW:vi dn*FwFqy?ᚚW{R2aL?ad19;:G51jk6d0.po~ɲDF}Y0,¹Wډ50|u#O8PXNKO#WȨUktUn(%J_*xl0M^:f,⎷?f#ӄ!?=OE)p]vpN)y , 2_}$B]3`*F9!E,QO)RjU.+%]^l}T+~<8I h Y8 lxɻZ k J涻d3nrOƛ~n8W :8i\9f mI5Pk0Y:p`i",*zxiC3m|@?O#1natǃO `x3X!kgvTu`h/eҀct ;DLQBqxfnЌNc3-[y 9E s|}ϐ2ƪr焔f Jk5a}d o'.2UrL{Ү r {P5.|h@+ċY*7RciA lEϾߠ}zuv8!P9즬d'~<%yƱs3Y|1e#MAWj=ctC !eZthG3klS$WSQ|Fñ!PS/}&/V )gKs,?HSᬂ8؊n5D^ڴ N b9{ERH}?JEh< *Lvw;A yf*Ӈ{<,5,u[ah=` jz5tXcs qPA^9h֠W % nk^;aslL:{#zWt go hCNjbyqƮ3^uҲ>GE-!܆ <1 y`x.% 1J|RI6tޡwBZk:1?FnӇe/N϶LIޝ\P"UZE,K.t" eQMεbuQ%Ֆ)A2!K,"}H!>-ӆKu#UgxP^y:I (7[. 葶x&XBVos 0vtS@%.aO {t`8ʂNOqbU%=g $0#*䠃d"tc7?[$6+ *dHď)!>R(ٔkOYrѿ'G~9h9f E_Q;0B{ ͩB=fy7EqIDv#2F[HL&'|ơLS0p}DFQ ф,Iprx\?L|G]q,; N3(c؉@*Wɲ_E@Ⳳٴ/@NвnoaNy;)R!ceC7CuVg$_1bR"bÔq]v9"vyj!$k;P1<RvShH凧4 0.9z4ѝ4+visgJ <:67Θh#}_ Y"OB [sBÑ#jR$D9{ l%z1h/R*^r#ϟ &IC¡ Oh*?mpV.-O|Z.+jۚ(hI2 MnLp{ F֗DQԱ@zo3%=E, Z`/S Xǂ^ qq&e|˯{|rk]nMã(}?/{,-߾cTNg*ET!?9cWXؗ/IYͪ}j u/}s%ireh!CHqh#ND;YUgL {@9Yܨ_r~=y/Vd>JDl[D.>Ѕ 0m ߥ {y*p~t} XAmv0,?Me=J'KkՓ t*w[/.ECUBO%4$JGO1ݴ=0/l xjfzj`vwV 6oo4ǎ={<ҿC ?߇"[c+&ڄHz@sEV}e8l_)ebN@,dt@^\'H9!)(T7́ O{9[Vۗ` Vf+;|uf 7.Urxe_[!#ݙ?f8DM!dT^CՁ0b⤢*\۳1NWf%Ĺ%S|lXo (!b3aX~cd;IcCܠzSh_N."TxxY ^d~ɛ)`-3OĵAn.6)K`*,D<ɲxCig!S@HҪ632g?4$)ޔ7c>&ݵ!Ee`l_PR7-gWn<(ެ`O\*r/!xa}JNKڕPEow) t+Cxdŧێ K+UJh'>Ɖ1}f$UkeʟdR<csh, P=?9%yvR2֒u>?hEg/F'E9]Ӯz,qM?SU"rsk /8+=.QЧLp9a!ieX[ Cέu0a ᪀re>$5UM&͈TŞu9/Izs='뚸2fZ'=Hap?Bw~^w w;MwAפ:~zHj:/6X@V7۩X#%@uFL`4 :eBy_mA 8*-Zqsu>AmD=x<b@<g47Qu Qf^FZOBB uI+AHH\֬IB\Yv{CWgs(q߈/L(O,i|eItB&3uu-,?<*w(ժ"Tn;3" /Ep|GT9*MJ0N쁋XPm:kbhw U9h}?AGKMmr(PLGr ׫C 1s>M=@Tf?0aD/ΌQ,V$|^3J _[-8Ò6lhVrn]y"HY njlC'M@"D! 4~dvH%;|*y '-i-l{+_mՂT:Z=)WwaĚS>L/`4,k&̄tuH\" K0" xA휬>Pe_?9!*0Ib19뉖>U1l"D6㚿nXЃnbI6Pw4|lk*Kgg%,V13u>AYI ٤~< *ۧwyeAhו81!*p&edLt `Zp^KI4hDm3ۮqlt[ЛD,HIԯaHhhJSN ,YUy$'s໙3s MT!K[l4^ht1^~#>ƎO.(XǯIнTv>4CfB3R_-@D79jpZ`%u䘏^7)癏2sd0hR=렇743 ;!A g-]Jj4whYy.'Ymi<-KP% A9 Np񹸸[tp㧼7v):zGpS3u]'] kӣa;.;.< :HyUV\~ LN1#ӷ<ۄ7 #[]ױ uvC-eӏM.I[;L\nGo$27 79-ǘ7Fߤgup {ǽdg;_! MXM욕i8]-HO=zP}u[=z,+/|%3bY~FwX^U:墼(%s~:sوwMlez4T̿C;p5ѡ^jZHT9,R*Ń]+".u3~@uz7vqHYk.2//'W>n=3ZlvKLG?C2`UԘ<}{;i8=]5=lϙ tWM&-dpj?6+u 3mo )!GT8,gh\/YAQD֔P0@,Zb^u&+bqŎ9"M>=ViϞѽVrc#/8?4@R4G~Uw*Rͱp9E~ɾz|@4BB{L9{'h*nok|jIiƤ/AA2] %`exO>JЂ$N/8m?}+E&d7ȥ@0; ?]*č/nZJF ӊxBjĕԹp-o EOPtyd` h4]A\M>6UGǪxH^~ J=)[`$?ar/{B >& bd)O65/ P-h3Lݰhk35VS2C,̭u4*a}J|*i IaqԴ0tVGpS:suV/x[_U(C4[ gHG/ {m6Xw87:u5^uf>]}aMNL`d̩KOtc_7HbLXt)L󞡎$`qQaB4~5hȤ&ϥLp3zU8lop*OLH\|x8(T-4Ѹ <0ݠ_ ֬¼Ep惖Q'^|NTƭs)Z@FC\ -ut/anjC|+^2Nrg} QI53r#iB?#2%oGatN*Lp\= P$Yft)oJ"1$*vZg|ȋB>+Ie2+ ,:{RjxFKf.s&ed QLvP5asYSF4s]oS^S4^~㏲Z4 /A5xT&5#\mf!T!]cdfυ.¾r<Ȃ8R'Xfhk`LPNZoKu0W-<^UGVlZ8"j Pz}.!55"Dr{o~ݥ}*F=:]Y)*Qk۳#`l[USgv"xnx-%0 A+9˼`<3*{1S,"&пxnF)c-zM0r`ީ;Oiqxr^ @IM>h`6(J_3 s\fUCq?ęqw}@aUL Xer'".Yg`vv N)8@PO6g-[Ir5ԭw "aӏ@d`?˓`nRڔ B͹G.H ļhh# f <;l'UmS=˴gWUGn>2rr*e΀AQJޏC%r=-[}%؟A7,gBZԢs6TZEΞȈ)^/X'kVR V-To)Hj>\{BPh@~"!>HIwxMO(d <5l&{|v67D*.W˳ zK;NWRYS/EqZ} h-}0ʔ4*Ч _2"UK>Q6yRf?ӉtJK{Sdr-QIܘ$Se3KŇ5.=b Rr+7zΗ[}:?usXˉ6[+>k6%4bFR%:1PJ nHu&?C̐IIYsSC2ޙ[xT yD{iA pA<2,k@.G8Q]jANr% 6!b BCyG+DcGcjFWpjEIˡ6i] |@ qaViO×4k`~֊d#{zWc\)_wٜI%j)uk ,Ks: i~TjMJrR}5%$1X t5>+?a떍BT).^P`h /3#P̕?D yv"uk/{9+Fu *-{C9&տ[MPC}Bz S ߏOPSX<&3H,XXL%p<1҄C&\xnʷup׉b.w0`9˪V*D$@ o/Ỽ7㬳A1 4ΣҜmm6:_-QWj,j @@kSm&En)Altpsn95pLv gP?S#"zuHUJ|9KR QAtz^.o놩2ELnG8uaWWc€d+WK7|%YdYR׈zJk|Ȓ9X&mHCԹj5u%>@/ țd){Eػܴ҇i)oT? HiBX8Qz.0 f ~by%(HyU|rBjN%84y{/aGքG\}Lȣtۏz'4Eu5P^Ӗ2U&Xgq;o({uF[;/*mn)~Vg.ia?=>=})įȊLtJ @m4lk&h$>H/IǻBYF9anzvHC]E@+GbFzK9 sNp p٘Rfxmrt{W4=Z{t6 .s{, cN}tVtLQT2A$Fr/_&kxW>\%/>Y'dcS(&|rta23\tYD_{& ?2z^a,^ՕG{P*_M}W lRsdk`M5s'ԩ=7N\2J״c42@AaZAɇ_i>rz7©LG%]Ө0D;pMI(3wZ&.d]f#Y#*\dj\WF3O D)M~48`:T\j /e7S2WOvw7lhֺʻM=e?B[~K7/H9@`'Bsw*J?v(!Me]ڈcᬠ,И20ps4DŽ{oq%GEGs⼸#n H.=kw=4hVB}6[ *RT~ޘc~fV?j R<^dx+4B k2ba3,w:uk]0ʜ~azRZXQGFJ1 {Nq~1r0) 8a2B t[ p̆[)[-%w;^7t^7 MόG)1@x³OZ.5iP ?O UO ~0[]7A$6,$^ 3SjMASk aGP G- v2҆.O{(U2|I-t4BPEef'HH"aUZhs,]IZgQ xphNqF➜TD=@$G;.5Ыϛ</Nbu}S<%l\iχcRrwg9E휸gb;$\%@3++>.!UKx)^#W;36rjK7³1̅$bm4oC%tCBfGEJG2R YdLBG0*)% bŐ߿:U^}_#=wΥ{IxʻS&C[70LLf[}6Xn;Lo 0\|f#̋#v]A!ߊz0E K$ssw'Xg#)h/ ` 4zVO{VF2mPrIJ "Kː! (^Ӊ _nϱ$᫷]LxgS@ 9}D342EU8@9Y{׌}RʛEixIy-ѦҀ|N@SOvL( )\) iǯ2~#*8'F҄/S7.,G|SFoWz5)PX~LɓK57؇˂ҕ#y/w_aq_Ҏ>nwڔ!X5wbSG1 4OqT>wkIs,/2 G~IiD =qnV:MG3Ol}u,.|82Qk{z'f{hF(TAadC=#쾅rV1x,vј\Y̕!u%5ռ2?=U#W-u'94k~ñNcWhq[b5qJC0>VY1շiBWSeZ7TxW`ebY!Zfy{i$ct{% x%L^U:ÆI|iRLq%d`M]1%ݓ܌p}{FWI`ŷmYߢP:0 %3[ʴfPqvR"Yyqߗ ;`̲GEej([v%;f9v Q<,НRtL"t1b FImqFzdq r&icK s+z‚ 3FxC[v5yW%aJ|!m bJ@J}X#[H^bG2UO~bbFwvya`:(oE;CvȞ 53Fg7Q98Sf~5cV~^n,cz(JN1A1TMa>w+Ѵ(Cx$jJ=r6Zi,#:76Y&&7!K5tsj|ۚ~oj{,l680VȡD*vmχP}1b,<+M-0-LcHLn5<8 *$ FIʁLϯ;40[65 ٘3zi_xX]"^cG:HS;kzK*nvQY:9bJ(X[RA'R93*_i/0.y]1 $O+ "{Bݞw<,`vm@w 0ŽxF^ʼ>UO |= Ŧ?ygމjKCoB {-:DPd+h̫6tR ^, -v%+[U~=TzO\\9(tJ4}UO2&;^ 8uq/{SNn3kSX?/ ϸ@MX_ܼ 6v qGtqzlK(8%Y}ЊqgjV 4/Pxhdmh A;܇#Fa+`m*\|͌.#t k9%f\kڊψh&`7X]/G((>h%Ra@ @.1{Y~44l%XNq.k\ MoLPj{纨e Ӝ#3G =1@ryJ Mۻ"&QGٺµMtݑhRj$&wCĿb¹4OSIR-k$P76BfmuNQ:O5}fHcLogb%cb64 Zmkb`6eDi4LY`T-7?.#DVR} k-:ck@TN3%V>{R)KS:Fh^966nM-qmH(F@;]L.5wbXqdC .xyW#!WIc_wt l-O~ҦZ՗P$#7,1O_xQAK:`%?ا/s{;x[NERO}ެv"'-KaE7rq|w/ ?\Gz+M4=,fb%GougKҞ L&BDcS?թMU7!VN.ƾAWy9,+XX^6g3kDXoai$ުeNZ, ^>PY3,eN\ M"д& SOp3sv4 72yY2Tn|sC @XNM,F'F/HJcLTJg)7<8mHZ^PNpC.<@X|sf`7CPaCIĞ%gT%<)+ [RqTőB]/1 SMACOblki:_`V]hjX8snkݩDGmL~!ݹt~uYY˼쾀k?̢ElP2s<{u'PVSʚH\_ wlnf"pzp%y Ai;t40 Մp\(8K=.&Xk4:I0rӄe7Nd5 XW:9A9Ѵ&lZ&eb\A1ȈSu:\9UeΤ#^"qMC0s6& 08Bx:[0,ŖaJX }h`v?TԜ%N'do(e W*`UO)2q{Y|9?o1VO@Q*1=?!5 @qgMa& ^Y4'fw-Kf/62z,,xhav&*Qtjj/r[ epF[a1dIt{t3@DZҔuy.2x'-(>,q+ij}޴1 N)18/p'~bpo .4Ž:h{WmC?ISm`XM$OEOb}G]! jkBg95g#QVˍ"~kԂ'F D>VfQ1w 00Iᙬ;){T,NCDz7*|`#\#8O -RAX8'-z짞3[Sr`|\B_ M|{TQ߼[QklC>XuHfxJHj"Uq!;e%Nӵc{'/9sga?;d<l$uPey6%nxp\? E,rAcܼ=z@Ĩ݉pT0e5_*n􆑣i#y`E-RGLyz{fX[ F#'xὮO)O}_AhM?h7߄Q*e)@S  cpY]+! %ID ihcfg6o%qS & E)&geW}U[:0:q!K`ɤOY'rc*6K'x*ڑ9nӠ⣖R_L| {꧖PwnS%P񯾆9lniFTi;9͡/bk~,U/='!ze`.Gվ—O cVJNgG-OM[.j2kKDIFW]ڈ)5ݿEN܆i v@1o'F ʺ]L ewዒ#]dQt' b}okZ&+/ƒ(Qu;DH }yҬzz;]F'Ôr«MM߼!}?*}k9k>ի0VIs{H4;xI)q="|SԿ'0ZoHK/}C0 @ 8!Ƒ0Ievİ.ͿYsm]T^Jc4T;̏ġ:CLyD|<҉;ɵif' i#$[m,#'#Mxҩv%(sp_=Ds\s[bLy}xi@+(QL-ăY\x]<L،HiٔJljsgshnsϮMZ: N{"FXa{ĻMWb-рHB?w-u/y'Opf m3?$\}R V|ojLQb^û>Y4_Do۵{G}%'Ng@eYf1d跹EZCRLVo0^2A"wW\P"]' q;c`"U!}VO f+CO3f;7bD샴ǽcPdq0ݑ07 Ƕ~ gJ p '`bϠ/=2 4J}mXj\xOMIK(,_(eTaZ|bW$G+T,0t7{ !R.+g5]&'hQV! G3mfTsAc?J| \Ӊ[1s!7Xvx=B srʢn@m@+ЋW lǠA<$+-d]0|$ggAa!dm| E|9棽RlkboXʍusX(h qP+s!#.QԮAe:> 饎t]݇pUN4(ؕ:[=JU Wk4;h=AVEzۦry!ivPk@qs9lzu Mvx . ؅a@v!n{MRAKtDƌ^_|CFc[ dBEߜ DM Ni2\>R{7oG$YexI:ɡ[Xܯɹ6n#~k |]Or[l<q?۞.{_2n Vc)"M-q˻aw \_^HЧtYS6Aenޫ\ۛ3B=Aēջ:r@Rto](}`{,xvἂ[Cb:S~ ϡk+4rIėW0kx%&Jv&~ i}SR\@d ¦dNf<=0@#0@t}^h4񘺈oԃb`;Y2 ^S gI>֋&bMMl(EuMݬgO@t`/e˜ZR4z"N헬f Jsy=غ¶jF0];?|ZB5O([7rTӞ]<O?DxY]O ˚^|6rku RI l8R5ĄLUNYf‰vj!B1v󧿭nWQ>/eOon4& r(LӞ0+O't\X0`.=\Dzl;ҧ/4Y%(rsƽZ2k0u0YEJ~%X'ftș2_oCexHTR~D[0WzE|<[Gr]f#'H"FyOYFͶ(CY.ljȵۼٛ)AmJYAEģ1Z'Kα$0%i7߼17b;1ҍƧ:GHVɯp@Ļ$AOg{DϮfm~S e5GV<mH~aH?Kt 6bOH7 Fʚ.^O 6 ђ"_IZM3>$.*G{ B[E B߃Z94syYA(ޞ): C+AtVW .ޭdg 8zSv΄%Qß*eeSݓ*JݖBjo3aOKQ+9'O`5J3|IyZrksBD K1C3Y/?dN/Y>wy j{e*%rlD;3򸎉_5T'T9+.$rdv0_ӌN.ܗ.XB BfJ@%V vY1/Ȋ4zUP-J o29ʲ:*{'}q \/G"yZ ؊d.)rV92k<8Mv0u~!jEM C8ysӲrrN'Ծ tvJ@B}iBvCj8/Ca ƟqvhKO-\xC]XYj%mm\ЈP_nޡ;٣7}wQc(6T!m9GT)Z*e(DYK(E1 KYwȀB+ -!F!bi6v<2d\m?8zP[ zKAg{|&QrG-R m;V#O #bu6n Zqwdk8P{4{m?;(F3Z71 1,kDcrD|n4 [\ԥ~w̺rARp|ξLLb2?pU~x]r cTa22kIzêLT_mHK%Oy}(; ʼn)T*ww7|iս}*[o^!e)a6?6o(/Z~UiѨԉ0`yc%0̡[[3$Ce0 nj-1~Y1YK=jYO-I.B?#ug#9d5niH%.fq"vͦǗG|yz'AuN`~tx]Ir!DޅԤ1 )*ƛ!U=D8eX7K/Km6_cg_2_Nw<˰+TY}0 0H%drlݍ5{q(|/y,>L8cD x_%RG:õ h/_-7( 6ygEn+UNvmUqk%n4qޯ.>*\^ q[HZ{Cwa|jmp:0/  M2v/50QuuXp[Vw=8iWFUNY8lr.Rv)?P&Qdl*PO_Iot:l~/('rGEp:~;VF0+ k^ Q*`aRݾ{(IQHiV@́&<;w100эD+ "˿an`DSdUkH!O$ҙ7ژ%W9/rђUl+VЂԓ)G>{Ig&_s:RK_<:^*z-ziPh1ywF%7кyF{Q-SŪT;v*I^RgZpt/#xVؐ{ĖZ>Z_Kc70M\w9t^*N!WbOu""?6_g*y iþ,5lQxAPk(y|ٲ18?v}܌::v%k97&G$ntCTw= #f 34aiնr9&g"Ld{ .~6lp!*5Xu(a(\wBl'xx"(lFu)>jg#=ڒے t[A^p~ު Y+ @$ѿh8KCȈ`"Ļi3ݯk80pSGEbvc?"]*?zFUF4 SMbp).R.ϩ͏|E_fbm7zfqY=NZI oo"cs⎘̻]< G5g&t{33Mnڗѐ!$QӋoJBkWj}T+4x.#/?j$#v\؃(d|-8@z)DWzJ@#^nF@5~Tr,n&TtZtG[]UfZIV>pw ) ja5"{Rgwe`ٿPLr J2]A`QrfCuϼ2ŀ3,?aS$wM; }0QHោ/}%l!$K塄̷:f3|=r%fʗ}qi b9q YU$SfUh]tPzc-A,NG:ZM \\, 5{//VW~F29 yEZ;(Nt3FmZvӜAxPHppWUsQd"^&y> ˠRK-w@ъ%wlۓW:!Xdv;lxjK3p-c~'| ,?_}PA '2"Pz[RY~(Z,Uˏݺ Gw_IqT$ʵ /E fk.GO 5houdcb\88,V-,9/PҒFHHB-5XR2 CCaͶԇ|q#1LD'䁴@ ˦PXElI\Ѽ"BԦv#,pk}s X51|7zi: r}vȊCñaX:./^F'Cfg\phVD몴kq2~52oV˞ ]g#@:klB,© jN8GA a ^fx,%ceN&m IxSz%>~v%sRbx=Ah'/msV+܀I@|C@^D7H#-!U[Ac=t,S-EA{n3/s#I{܏Yݵ kU@bMA~I|S~Hu ᪄D'GQ$n =ߕi,/fOy€zr8:\ȇ E"tQR}p ڨZgVQk7eH|pYLrkT1KTEseXϡNnْٻGʪEѫH+w$asCTG]'VڍunW1FXv뻑(q>d!Ms\> dPR 塮pFs1"-g7&D._!H66D'2yKo~k)Wyz)JE țh`Ej/=l_vYOŴ\d8S5v{#A~tpyv`#w{=OVF/x9+rYO|@Km=Z:',&E#G3KL`d~I sAc]&JȷIN!tf@kx_ #r(4IvZ9GH|W9rBdzz~^ Nu0$N'XCIpNgo|9jH+l3}w|}d}f; @ fdMk4B|xO$~+kJϾῆ>"47ݱrЌur8^fpxk-O"DF#"T`'&gF+hO=@&>/_;b} I뮦].3N!ބ{QDN2/tDO̪a ߚ@į>5Դ8YM) ҲVƏEة7rHe+0f +8{D:-lB=j˲ѥٟ->=|^<qb#uakT[ʐj,¸'uL!YV\lGVm`FK4SGnQP+=/k}Z&Q^iq,:+o#]:L_3/'iH"+^J°zI.]/-:]f|m̓G.N:6&>VO\C!Jp}}L:Pr;2j ~i/%^:w #TٌJO+`D̀u*ìg)]5׆GMGTTt:ebN {zI|5|[OJt.5Ozr=^/ü/NЖ ռd1`O8l9?rMJR䣔hi~ecuXGL&p; )|Sڹ(Yn5BP.e-4<%)$8`~"+\Sp|JyXC[ !="| ˾HEZwFb/@ԓď6~ÁMx&~;fgR.9;6mU t_v4gy-}}N:bF{+M21 ͨ+E߄ dP,fȋ%~ڤe-P.} j &qhl\s} |t Ќ(}Qjғ*Yޣ??F1a&I3W3qµy! tA\'5.yOK6"}IJ=nD}klYѸ&ʄM{3>ƽjA2kcK c$Q^CY kj1z@ khh !.rut1fM[7% rFV`]4!/tr_?s( Rl|ϊV !SO|TM7___5KTw0>e.kx7sd ڙJywO{ԝU҆:"6D (bCVqU9 gjwOw2gLl?ہC`}o-~ߙ|1+o> x3TeD9B5nGu$RB5[^pJ3W[B>l_QT*E\/=Ouc8C q)<.ע<뎰k(Di,]\O$5Ekm*/J֚ViKq*1$|DgW,<'JTbugGdD?F> "B 25JΊI ˳el@|њ_ǚBfiYQQnq>A޽=J 'olKi C\[XKWMQK8k]yVPWch_49h6b2+\p:G!w Jܘrw; 6$*}bFRx"'ée`C~qS"9Zr1G~^[c$bO"_~Em9m((y2B b1׺tx#+GE pҟש(ZB3,?0>o.`aXsioF>o`AۂL"S+0q^Uӭr,ī"4Ժ? 5(ވfL E&(WŞ}X#:)1ʙJ,ø7^/Ob˽i*܊̇yy+]@!zYܢ.UN*ٔATxpH[5ƫ1p~IM` "r75w!)vۡiMl֨0Xg˫aL]Ϲ:Lb׉ jNs[Kb#eF[ʥZ d!/hUWUW?"zv+iQ^#umP׆ v\%|[ky@Iߥ2u#$27h> Jw]QmVc *6@qՏJve)ٗ1ƤVʮ_0nQ~%UHj >z":\ UvREVRp%Ձ )6L-EJ3H & / g c2qQtpn FX2\t]z P%{9#;۴Χmu5qOέ^ c#UhX(Vlm`u[ )"7>&L\+RUlg9sE0 )uنEY3C6.drH~%@ه#uیU2j[O.x TO3R\d@:rЮO$DZ龰A\i}a^>5\}EJ"et~q,7h`台aMWD3N-GdNHLڑ$:SG$jHw>JK8g M!nVz:Ćz^pLW3FAGr!'LJ#j:M@6ə/H (9Tku\ Z)H -pH3`]I|B:8~\.>$;ctK|li 0cѹ\,3YkPG"wQPPNLwpvۡwH`X{_z% J=Re>e).EXh&%`ەK;aKDIf3"wv"'߯nnXВBaqhrɠ۝RA/B:~')b0:`L؁ nU&7V h]3*\%}3Y=iEzCT ˧B BfͭV ZPY0>#ii X@Y^wB%lJqk6qiS:9,Nq/۫Й KW"7+oa>cpϓ | :yLzB3%6JPiDŀN\c8کIle?ꕙe5`"yNE"N.toYLpf#F F~~aY 酋ͥt%"FT|3s9bJ>W>D ")HM$\ZUF/h"h,M ,y}Hl]z^KZ[= &\/3wwZ@9fPqz0;{oXh@;Ҟy6ήZ1_p`h bi}:A\~Qh5L^28Kj/_VGHy+hא$aC9|;o2i-%[C*wcbqe_-}U]K2{@|3s#='uaI_X/>$ ȍLJVӥ rH!w͇wS=Q4l?靦@ cp3,hIxj n*\iëͱJM7遈n`VJskD4{=ָ6JF v)q%p. ڪ%^\}>QhS ӵa}8=qZӚh U,k6,:fdUny P1CIظ(ةӑ5-šjxIUu#ѓ՚Xf<Jz%ؠ+9peU@1 9K_N.Kwܟxˮr% 8KWsn) m8$msuM .i m)RF8p0.^眝fم->`c!,f*F~Os]J )DS4[<NqRF"Z&ɭq|0-69QR`*ahyiC:lK6ܑ3;x-y~(ʪګӸ=>zԇ{˒)EZ&.JAQ53-X+@Й&}qݝ;Q t1Ã& CRR8R<T(0J;TE{e2h~IRϊE+}HYӽ({Fʧp qUE&Yǻ=a{>FҸxL*)Fk@y)H[N? lDAB4˪3TUgD0 ۢѢ8q5pEW D:녆R JyLk2S|v-+7Ͷ+ЩY \u݉6OE:W_T(d&W7G[>;]N27N4UISWxmAt%.F7| MOks'_<<5O>:=^-8[p _R @h `óeSn+NtS*z).\vкUVC,KCAWX#~ZVUyĵ:c1E]ѭhdNqOz.}٫FI7؍l/I 7G޹[=d8D^jE24{!#̱Cj-?Scq, Dߖ*RBC R?GnI}~\+p׶ `9v슻2Ž%X,m7 (8z`Y%lySa!yHQ|ͥ*)\d># L*g4as@ RnCYF姅|2b-nQ E$(6`uMLg+q${ӥ BǛS]f>"t6!fCP2}$U-[ʗ]Ą/;H;؆qֿ1NW2k+E/6u$ŌkN5cYt^R:sLAjaP D^Iķ@Xؑ+ 7t*]S@,(!vlBȋyLo(7gjb+mZ)RgG>Z3j HogtH3eVfèBG TA\;TLqWY^4լp򏳵0-{ = t6l5p ؄]Rur|ͥ(8Ծ:j0=Ns_$y4b*6Z j-a $A՟B87OrFmwF7&\ 0!'c۶c4MD}Jf">7dq[l.Gg6< N /z9 X ''A4Q/p5 {Ψ42nYBr>~䞭C0n M\fh9W΢j5yT}0ozo U[iR 2{?s,?ՅxBYhe%%|g^RP!`njS\y΂ᮒ_Ut%菝џe1 gNX~l<ϑW#;UĞs}{)z(MUR'FodìRuk%Yi16aﲃsN]_ H^_9۩hv4g76"VoY_Ôc(TDw2)K7 辤5dwV. 8T2EP:@}9kJ-^WDn ~r.@6;G֋ =|&q6v):8$bɞ,х5H2k>"OT  ;u?ݗ_X>o8y>o7;ml:u1'QtGhlߝk㨍t+_'Wz8ۿ%rL[%~ĒMkRש, 0~#3\7M^0jujn}`̚!J'"ZdGƨg+"e: ኴ+) c0oiub*F0nlˢFb숊+!z|WDi:6\yOz'n_S.J8qĿcpTؓ0jFB^̒323a9Xf\)=hfR:Sj_\xHÈޤאUsQJ7KA)qR}C:{^ȧD|֍ʥ@L)lܶRh\2_Z@9oM-$Crΰlaa%-\. S"M_ < *@or\yyQΖ1:d+ee5# [C^RX+.Ӕ 4}nޣ,Ս `XH7J d 8}F2 )k0 9tpjp'{9e([Y=s92w[i%ߞ ,+%i#z!av:1{Q7+ڼDŽB{=¼=Bܭc3[ z&iVmIL=x>@CoRhI٫灓O( )of:NZ_ت+# ! {byM!9k\Gn;vS''j|.4?$׀0:w؜{PnM- !TO$$\ pF; ZR%ՋBvs)gf4?kp9:RWg|fdlU >,;p'j+ES[ K14ծ"QMPL,=F^*UUX3rYq/;#p ttJ$2GqLÍeϒqֹM([E  QB{ޘ)OtYW~E]Cb%GdJTǒz̈́,wrKcdU\yJ]BIڞھ֤ ;Cv1uZG[|˲.PXI'>.8xv$1SAABiY CrChDdCLfӌdMfYt%1NJ(o9{ (T& ͊z`zo}vylxn mgJ'̐+Ly-@7'C^OV=,kNXa{Cӏ2#cX2D鵲}_v%ăVFhС~?""jL,MU8 8n3%p^21OqG .N9Z$KsA,f?a~"'Oݝ8JgP%@r8IZXYdqi +#y. =~#JL _ }))Z'JSXC?UAͪydq|fkb=2J]L3e.]d<=ƒgsz-T+vU3ie&eek$KdA뱕+ +q>pL2#vhDpZf33\M+&E u_$Z\,]V D W@]HĢ*_~-f&R =Iz,p!РMl@},'OCqوGTu٠dnZ>}-C,wMx4䨲KY&B$z\[1 񡅲{u{e, #8xmуܢh l\]?^33e2fZ [QǘG&á,܎`ܻ#~f}yW ‹8HMl>%X/*H:yaɀz8 | p5'$HA\ $<|dQn*BE/.N3x1utV 0 -gބk 7GYf}p3KF+]n"o|44f=D^+5 rr'x#(- 2 f^ YFsݨJJ5Tϫ"ā׸ćBg&t]$vűɊU&QuFڱwҰo}O A-kxVꚣ]?j 3%~[`r zH6oLDFVh'X'ǐT~&ބm/3f,-kH)#|sVU<pR0Eg.ͻy)>.?00#UN?n?\jӒL^Mv@bׁM-jW[ʱBalwIG|[vҡ: SSj yj.tZItW2%0Io7Q"~__E=3} +PjBbd^αPg74ɑ q<"Z3F8F3bF+9ܐ#,s03?k-5k1ǒRMDZsb쑾o,GE%ro1#DZ%ƿ(@0 B7&G{s uhoީ AıqETJO]*X`PHHow}^fl <iy)v-8 ~M7giȅ6a1'.5EugJ`1o,ۛF@5#S9Lw03~Y)js2r?~$Jw]Pad {⫚x76[J|[W"XnyM龐=gHY֍V{6^ 0i/$EDx23B ;8xck[Hk⸭Zg5\ga&EπתW`ƘD}ul>{j[|qibk{"eTZێ>_ŗ$ʛ++I.PGk2]L 1Ѻ[&S^;WunL˸^^ߓ+#!o#ldMIEx7/>q>c& u9-0:M+";l'({@۷3coyZ}(}څS5Y>R~ `^]⣀TDU8Y3\ufa}:o7́nL]'~^c4 }Q*S_񿾓ISL'?p C}[eoؼ, ;؈ 1[MW('\}L߲y="96ztOH l&Oi6Ȅ[n4#ŇW - Y[]cu4kœa!{? 3Z&5uj=ez+@׌ӏDR7XRSOu{Vkۛ(ef\A,)JU.7$0;i(P$0U-}RS=(1X/ä>Rq w>R/1sa ͍ovRkS/RK9Я^&5a1E-<I>+ w;;WBe>me$3!71j#6ݸ_ 1|ϛr`x^rz2Zd62Q Y |겼5C2R{)~,Y|?4 i+k``^,Z^:7Uvɸ}6LǡE>dO|lu<`JӲ3x pB_S^'z&:oGH;XKk&&Xb~+qŌphqLoϮ M_,? N_E j34ufٗ f,ý> 7ӫQ] '_h CuX;i$ĉ> mW<54c$}2Bohq`/(%THy:Rom@gQH^W`W[랐\g9&鯻׌,ex@i0y; b0Z4v +̋T~æ y;0R}eJ(;khM@`QҊJo,ݮ(Jڠslz ,KlxtbpDs4L@VĢ%+T\N̫gvʣ"(S'OhEמ#{R+Bk" nb^<7E^EZBZd)qe:,x}9}~i9P̶l/10~NtSUƍ*)0MP|kˆr<ʾH5\yjh;2g"r46cl@QHuNj"bU7'){l9V i5,wgLn7X+E6f̢\PMP ?2?j'h̆B,YXR} t{݌<Y߷߮S= ]QpW-,YFvYN6~nzUݞ|ފr1A{`-k[)/[[R>Z`j+EӐ3gN3CziTG72>[EEV =˘rq"Ž"\^")v 6Y5¹|-W :ڟ9Ͳm;AG<,gݲGQ&B6P*SѠt/NAX0kPd9A>2(ܙ#~.j ruuW*c% }Jr:ovLѨ*ۋ_Geh^aJR7Xh57(E,Lfd qوڌyVuf@iEKMxxTmVss"sXShWcc7ݰwkHdUTz{#aR/K!h4o  8꣏*!/}=$ԫqlOX*BoC Vs4nwצJ0JF\5d꫙E+pQQ ک$7`5mĊU\3]Z/,4 7ec]#ZlW=%01fmmiPlqEMO_;[3Ws$Ɍ) 3>EӅ+$t8`HۍF9676}IMl_Պ| ohx56|Q)SfFe\YA "T]yN=K{Lxj~J]װ~?h MߥѠ."VQq7c܆9n'h Ϋ19aw8>VQ=EiK-ko<}{BGs4G JuA*ǹulhjp?5XzUbLH]˗,mB1ߘ(F ЯRd}zɅU~8g@:K*nXڧ,寧78pǰ,ƺVxHKnH eӳ7a0-6, kOt,i^P} SG.s(_ԉ7F4OtN!g,#HɹlAaС3AHq`u R6ZS-A`x1^DTt efڄS+e<=Ro cw[#T2 \ '+*J( ~imÞ=Rzb "0Hm>Uʛ(vP`$mW(8 J}!ӗ"PPV{WaQfX`V 8:6^ۡM|NyEZ|8$L5sK(.,F$**[qs$5vԌ꬛͖ '^CCrҝ ܭ ﴆh +kPz V_  }qi5 }qқkipV[(^UzW +&XZƧ%pSw3^Ji.PG'I(ԫis Wc $5.(Hκdա;AD3I.W,?SpIѨkITBX};UqOXF_q,As0=1v$_U@6o+'숇+"HNI'Wr2BϹCoXE;ojkd}>[`9}EaH!}e0aL㌡lѤXN u1U( $±t o7k2MkTc0@p%[_.>RO>ce|FGyP>sqД /e.6S~rɕAM]G !݊9_dyD2&߶|G@l!P)3;`FBU[JύZ-/ Km!Fo0ʊ".(Bgb=S@q(ʠP^B|^ *ȷsN2_vKJy%1%ɯΓ5T.Bc9ۺlu\>*:uv bu9 ev+t U3xBs" oEWBMJCӒ@4,3R&U;{b悧6q#p5i+&kZE>fK@/ƜY$"L1*L(x̿W=JOPSiE@CD fVvDlRƇk R4ϑI~ZaCrgSˮzš.}Kأ i(*VSnHx~͸筇4ޜze0q#PJQw;Ea_(/c;Wm͂$Zl Q& )Z(1AXH0^3z- (.R1VK23rJw]A8 nOϔ_ J0 7v+KXW%aq|ִνEC6O+Va94$`O:ךʑ&g NĿ"Xv Y!RdA1xgUQ2:9xԒ)z_?}XBȀM"l#0?}h{RPl)OoyYQpCZ@LkU ]8֯H$a+뱾(^Ѣ~PF̗"i -0NAbiai%%Nc(JXKb^3娣XʤYZTq7F7kkI[ K2QTG:n~|e~|(}Lzyۧ[JgXX_S@9fV7gcz{!L%ۄ6 !S@`0~kv]+`86UE2Ph(Mns')5^1骵,r.͂ $iUJܫ-wia ^Dh{R2{R rwʥ,G a{T]7YiF,Ͷd{%nmE #Z@i6D^@U7S,}ϒ1ȫ諉M '^hNdxq_2D1tqvLbv^#EW\[;ž~ zn9<@v#h@`L)a¦7NvL;JK!@q9B('@ b&Y0dnӓ%Y/ b CZ"fٯHT6y8v ܍X:emTY-f2`{dG?Q jڹ2efgmwD_Y;_ŴM{ή<Փf[ =6xq{)mK 9XJ{.rg~[/W%,E5iļÓc\%?./ c\zGGM*p1kk:-4a;η!;īTRO:822 w.Z"ouJ4C+^8\R#)tm{4~BC6& UUU*'U 24gt]aU۽3Mio:/\.0v%^j>x.VYSqh%wK32-w:؋dRr9@~\aˮQnx-.@I,/!HJ*ՐFoRȣ:Su 5}328T,ח6g!8tgeLzlvjmʾ! !։FrfmSJ?2UC /2THO J tT.,y}Rol>@$8({NYY#ZYI!3TErfi? rY%)E/oB#l4d$䋬)EVQ]Uۈfx1e< FV,V$@Eg2eײHX*gpLY(+nFI/uh nR˳$]º's$8–rM-c J%xIQϡ #u8ɚT/ئB-R0]; NJ8(";_QL*[0nCW=e+| wS| By{1 _@`rh7Y?J$TmP@k' FO>aK>cf9)iaw+KkUћc/e{u$俎?>G&ꠐ [)Q2__ަ'/Ώd !V6\ Tlb5m.. AB4cd ˋEKDһ[xGM٤‹'ŘQ %R˖+e'Nē+ǯZ D2YcdJzuCXf]EKFi"e6=wTj"dao[wVZ!7[DSSmH=pdqt/sY;}UzG)ZU\,|sxeo%JYڀS̙^iJZ5xsGw5gb12ޙ ÷|F3C!6tr2TKk hX98,|FdK]cG'NG {NK:X m,[*58niKUeQY$oU 'N{Luk#dѣ`dZ% 'f[//(eҋ?1+ Xh N~7(Eq'nQJ`  pf @v5T1 5e7Ygn(0׏Ի-9GXzI^)(\U3MEf7?lJe͊zDcQ}'1:'F K2*QQYvi[MGXUWMB-=ƕ~m9UR$gևnu9%oʼDҕ$rkLsdz 8y3uf䂺.nb1xx ځ==_?XJT0楕;ab2uv Od܇{UZ$KTNmy`W_5'TQp~Rۀ/,qhV=UL$P(| 0O6NuS-R_0 H U3φ4O3*n^F.~-?]Ҽ?܋W%W@2i%P0UNu|Jx%3Iic7_f ka9UY)1{lgU`G}]߈_*_y2qvK[F&']czw5ua9•t z"#"l[/P}M)oYbӒUԾ>)UDO j$<5SY[u) P#R-' ğŅSϼimV Zbf;&BR,d !u(`Xas3:ަHmJ>":*Zg. sE Y+K=Qq{8ҁhѮ#SB4o"\^=C &,cIschlFhGbߺgV$z^@:RS2_1"v^*݀!kYE;'3$J (eUOSRHоϛ,iPS|}ٯYveI!8p}lY0,y?P-kq)' IhF>ENӂ:|OD:c.xxT1sBO@IxdJWVz)Ee`{BGy3:rkeϴ:8@T+0%.k*II*:U:$K ĺS]٭"^0>~?!tH+Sa], 3Z Zd3E< p` ,+vY-Po{uH7RO 3ZCuҸ p N*1: #m_or>ޡ?rtv9N$i<"hI,3oT?+"f8)GO_H\|CzxT>TDVZUPJNfƂ( %&ڝ((#07pHT6d*!w(#ڃ+JL <2Pr!t6Q+[TM39W% [+EICʇڡt-mlHfQ_ʘlF xiJMm$ȸH7>>8m=~ ^ iV؄쇅q4ϕ(JRn}NM$a;Ѭvz֛΄r=o~pagRXz?{40/l%PQhaUtk& KN'ƭ=Nɲd^Cy르ᇕ0tоq_3@c<=Rbtk RX 2mi%~Ks>EX>%j&Ֆm~1qm B}k ֭0muEд+:5`'v^y!Mrds[>Ǎ O^!Ř)_ya3hxQ>jlQI[˖I\#Tpəe,k+e! KPlE6ρX϶wƈUˁX&YVT^d걞$"$s85 Ťiju*Sf-E{4}ee(O?2Y>$B,-)E,#A~*xdY D>9s>0@ vc>+Dӝղhm0U:DnWQE/;5m+yA ]̏/ ,GKEDT3gŬq 䇀nxbx^^"gw0QpO͏+bWuB\B/?S mzkЃI;d 6pnɦ3QÙfFup!TJ˝g/Ud݂kBWaI/ZS.hɠQz}p7v}NJs*?-qAíy)s xЧ:+hǶ3QӠz@rT0kiuEZS{"KJPb|n_[ґ9FlKOÕDChQ?q\dFnld͢oâ7/T!hTekھ J:su?{(p[њQk>!2XKbKП%Ξl7y66Q+˵"aJ=apddt& mNuO8~=LIo8 EHX -C:xy0*T=}٥u萷ËMEd夂z+]2T}/(&sC}R򠼇78&;u$a[oPM`]3aIjyqv-Z50tN2%&8)Aަn%VH hGs 喁bT.8&5ZI=H'V[Yj9\|Up bJ=vlD]˦ȾIFk՗2*EεQ.U} go(:P^B|@;VTjk?.aˈcU|u$oC'bzvx:SM FDVÑo@pCFr#YoA<xT~lnԏBKkI=9ҭySWVmGcLO׆g1kd7e1u} /cafxQ ;.m%4”ݻqvǁӯQϜhw[N`?\:IR,DO!$@Ffi?0"T/@2 ٩XQxWpݴc+`*{)ˇz!NVVU%>oQ%WFZ ?XA-_r>2s#8')P G>IKnԨi1R@'3{+OY&~e ;O'P^ۃgv?op,=?ό]Kt=3>K^-r7C{R΀[倕ᮠw*Yf sim\)W #hqu&zDbӈuZ)G闳.\"tXmcXa C ,"G} 颊z 1Hy绻jG,:ݼ%KQaІG&&||rQ^MoOxܿ~wmb%/bھ{i<֚C?^Oj F(;/0:-Ƅ7%=k DdyhcI5qCd}cN"$D36(v.' WXk!$ _4oHH% gfx J 52bmlĎ891"+6CA* 4.Y" } әD:£C>д"pe'pzۍ zUx;%Ϣw;~Kx1 Y:2C ž4w=H[(}%M()6336U5PPzLUcNO?M VMQ]r8pS%~iIs/2.,, ANXR/&P5H2Ԣ[B~t ]we,Pn/%CelW(@<>{M=luPgWѪu^ q07sր. ic^ԁS4#*DHMg`}cw0 DՎ=0 JaD,21j{a]i.XM:[4 '4y#=?"NnG~b<Yф:(Co W14G$V7>;A}b|=EϠ?Zj GOKӸSzc߭|EC4͑{n#uoP}CGy씉_aoYؠc TD$L" bKZZjkX1$&<ȹ{!yT[ >BDB\=@XsJ1SIy-HRRPc̘]\~{z2gҘ* e t%:›x&H(^+7?mszAS`P{ZBdrJ?DP ݍ_-8 ]H>iiX@;[ Wt{|pMB5߈&A> $N_iQ)fRuѪqKG q9j*f-P7#z{# ![iɑŅ0Fү|fȴg$S:G܏s(A ӹ`xlͲh_uYRD-`GQFNbJ'4قYg]MB\oFV;Ȧ>xݣ2-ğ q*^<Жݹ%,Y7yާ۰u^V_5[c&/Rq!4V}#'L'pu@`On3q6IؒKU-9[YZ:u(Bǽ{A| sV& "U)*UccO5e"̻+t dI6ك1D:0Zb~6 rG%Eqj 9i&P+$ ggϬ -Ъ\wy^,D:d;: 陵sr6yCF_eH R"VKhIZ"7 4?ċn3\\pȶ'WQr/hay?5jЂkh!-W0 ~RkCs_P,p+eZ(`a:,"XOaj|xJYRV5(VLbvQLL fJs^w8 rp66#R3> .>HNzYnCN~%/2gXΪZWO(qzt 1E o5 TʄE$J_0giC$S*X/1Don};} )0>$_±5%& ]W.8qs]!=\i :R SYϾL1>{ί{<[xvKlQ{!m=R"'Z^LPJr!򱨟3gD6 Gi.'rdgOzu>Xީ goӉv`sPC:7e$r vwkpձ F1XVDÏЌl͉]m"ׁ7::EU`oZI4e# A~_%GZѫFeI0sNwm;7lLOħ9>#K7w[8ӷ(ņ+` 4MzRg{߸b wPV7M'KUX yH[qY;({3BM陿4$ܝb߿ xpy/i-Z}B{3aW0OQ.N8devҦu TB.ʅDEtPSs}fUÏ8%_cBk9}j#O&4XMhQV7Ϙj[1zr g`n])$9Le'>j$S( ?gxȥa׏ {޸f,gC%8\2&u˥ .3UP&Ju#"倅N"k֮Pk9n`Jь+_*4yuE5ȅ*ȊY75_^Z\.T,{ڿZ-g4-)3) I]+f6We|b&Ztg8냡,/qƾD>9]\ 3*0L`((O!:uSs\R` :H,qV4_jۺJ)\k|o!`h)ɑ.FWGzČu\g@񌺹x.~9ϙ"_`&91h7cg bHWFMYޚ~/}~V)9W6/ ^TL5`PqhKIkc¥ F*>scM$FɄvN@JPu;{OuG{4ty K⭟͜_1blxc/+YU#Ϗcl{(0[2#^{.8-}J%HX;ju[ՙ†q}!p[3?c,- `T&ƇfՍKzHrQFJQļǞEFёQ='0 .x暤{^ICލUEJdAȱASTaz^8jeQ"[cdxbo#"[ 6^'䟺ڕâi8hʠ|!SZi{wf)ė?같k?%RO{U~aIӏ=#4XGNL0K!Ö}%ō$M֒`ndT9t^٨dPwBGil.^ה+cI .nZ>mP ,C:k ;Tl 1WRB]EKd'Hpd72 epi8JB:SBKd횞Sp5weIߏY/֯#T̳>\lJ˵%WUd'Y){.zWj mOzcx -Yxg}p-)|"\}&8FRUTƮ?F&SuԪ  j'Am,6сH^ f_1ºPhvԃtm-EfmBH0X48 "+*{FޡE>{Y4yUO?>[B̷ZV(kV [12y9t_y ]u[A+'6VطKYl\'(Q"Tn^^ubGJQz4Rڇ.E]C IKi]v754؉I==vT. s*}_2jS4,hY~Uޯ{~np\ʵ = 6[N[ؘd2$l:%[.hd*onB/}BA 3Uj- (hhqy(D(εCs.8`EӑG5soNBNRD_\i-I#>MvUp嚣;#.ޔR*:K$$u֞b;y۬L6lI:Gb\mhF<{4($T3>Έj+!ue!2^g=QDtp`Uh2o'% iR-!?/Qm%gryc\JH>A8햳].Z¼DM7p̿_Ab]iPD!w` "FtZfNh())7:c0TɆۈ#aw^ɔ]cnⴋ. & ` ۂ;XcïЎ}-r#q,,/I&oFT<5t ^ 9kZMcK뗰Ej@@f5ofsKv,(g1Ku d(-|1m``Z*fWi !7aYNz"-$tKO!Jʍၬ GouP&ST0^hO'f>EZ䠆C N7J];3xh;5e/hT>i-#XJϵvnmO4B"NcbF+ֺG747}$@h.H+_C`lt&`ai'aJF\ ;(%eBVUo+SލW1)ZM/lnp^LolMf56\lR#2&Ot>6K@u?RyV#FOD<*bX0.}p~:T]2sh?*a84Q*)WK+ӟ\FXe@ **{oU|o4 ɂXP7\0aH#|z wq)S{z8j\^i^Uw0`}(i/0IkCqbXqHꋟ@0wpc!-F0'#s]65kF0 .6T>LV>}EbIrz|\ڠޑ}!L3gW,yU#]FZXcۡPwU(`+qR5 8SF4 #C$%EBL~ӹ`"o|mQh*M +-唐mf95ljtձ,_">r[\i+vVEGiVδ]7@>OA|͍iZPa-3 y@tkiUYvjϧ)(H lOn+![ xܞsb6S8XQnґ3 DE.:1yp7]/iL>婊mR|Uxwwf`zF8f-seFn7tkI8DZN$`2d45ZWU:+.P_J;1tÆ 3pN i=zw{!Tk=aЮpEOl|:l7iq`Z Sm!џ+z`χћQ>EG> cPeb;&KƺEež15мvOלy!z*r;8&7<'@_Qa#p-Vd?1'ғ%@2CO1+uybXCb/Xw_S(*Oa}W"VJ'jQӣl#׹G9zrrX_cNx&~Idp{Kz ӳgT~l"#1.T9iDɳnSӂF J^y*Lja˅ ǧ&ڑQP7Ǣ#S]jՑ266'm6{3 #eă&M`J5A,b/JB$i6$#2v*uC zduz '_er`IլŪ9}ؽ;1U47S%4cM{u5T"_yҫ쏛Y2@z*=DӔ&Ȧ>TL!. Zވ^:f-iz`Wo .p!m}mv22^`>R$apYDn% n/G1`{8Q+L⤕y$fhz뼜t5 Z$Ĩi\̹3s^`D;`!NY|hlw<˚x[~DARŖ:coυ aVKJ]wQ,s\3tJ+ǔ(0VQs@ L7+h(*ĽDoNkN?k~@ C* UBe)Y`;Tg0a}0t|- *j{UkL']5+jbHb*5)(5!vᄎgZFb^n<֗CYx\ʼ|_"u_>Iu\w7Sd#Ts)1Q6G nv@is6>ԩX%}V)]/Fg`NHTОP}%hZO|(բ+ _W$ >˷(!cglv}G0ʙ[֖E7I05;x7/7^VկdT,Kkbg+v(@?RzT;2eAr]ލNFo$y;{GtEa98/үu54+궭 $2[t鉮~+u8W{,S~hS;> ( SrNg%Vq:DX$ վ "s63Vˍ^7U< ;I6񎥣7Px(ǹYZyijOVs^Vy \"n߅lusZ@꺾a; }V9^ު[ƛlh-<) [fxxVؑ(f88QeP$ fb1WÃ8'g;myA i^*ph6M@ :S-0㖴"UUH: P-&ɃD [[Rx4tf7ޮ7u^[CV7vHCM%0vjQ̍R~=:g]~oѨ|/%S,'(|K@jrZq6'[<#Bu;y~I?kIGܛ5cr?c$x71 І:F?.HPc)-:ۃ6ʀ(1A{˜': 竤b{ya@Y?]$&s<'f; L~%FLJ/34eUֵ3L#&:iZ?ϿN \צq~ܢ_VC?3$_vPQAB!NCv\w GO 62nc܊ Z¥I !}QLaˡ$ϯ#f1dXY2Ⱦl, AB=04_McW0ʡ`3 $ [sMwj7`Upg1|lQ1)a*I3Z>e@c$K&s34*OᴵU)oBқƚ55N7!s=b9eUG=50H3V˭<ӖþQQagg)[#F$Q~rnue82z]Qh닜6urEuZA|c2t&1'Ǣ'׶_TmqX]( s$Akp혖e! O(ޟl8O)bBXi9UBD.T s!kX;;KMEmE#,eG#]FJ Xz_1ZîYXms-a$ffVzƀh/%*%lRs½5B҃nP9zFݦO%'C܃D^ pD̀o X2?ɎOV)q>?}@l*p$!7܉2rlR* '4Jʚg7ۮ6sds}p͠~BVT=ޕskl39n9z _/M+]`GxSXnbu_GJ?-?v) ,cJs@o?09VĤm ΃*T+cڡLPt^KL O&]ܲ;#y%IY* rp=ZPo+HJTYHSxe2ZQ0ݽ%8Xv ݑ\MjejsM.be~' P*˞q1ӔDa8Tp?-'S32m <>; eɶjhM"tRD%AmjCh59NKy/ Jo"cg'bcx>p :[Sԛ AwT0b5fV[=eh=f,5.$+T &1_D]ò7_P/fb&!r/$qCnK{Tq9khEo}EiΓ%}(ϳz{Pl%ô lv$Y?=ZNZ&Kvhq?OE;yx}w e4QC\,xT./=J$Eh"ma ~B^$2snٛOӍz2KxJI7icKSbD>?/P^$WÛ2Q6M>z ³㑮휡dJ3ƭ="9\C~fKW2(ӵmv/z9WY9fF'o8x;NOȱaW/;=!@A?(lFz)xKԉS҄Ѻ>FP֛z_>@Nc=^>[woJ c?- wj,Iw#B;iԈ}]>oI ٺBna ƶbԭC(hV~oD{2\WҀl?ӆe0kDnW_p3twL"UK H]q~uj-G6^@^&JݵTp@a!=> 9Tsn\u_d4EP R~,qPr n94(;?-a>QO #9_;ft UMg_d E8i`Q\P߷߂ 2 Yb44r%biT&3״d⹎\9'n sICMgW 3"Cx~LoٗA*VlM+5?<%%ĶK8-thAjND4UU+/=wqV|`</A;ĄYIE;<O>-we@1tr.^H4eBHy"-c]@ 1Njq:E^Ʀ+v>$Xp5@yČm+ј_~ Ye !ny-qg[5k6{ zi4䜾x~TY$)*VD]gutdrfiHEѸ$u]:B1A I ~7]MV"iRio|oy u|jڦ6'/cN>LA)]࠻7_~- pzso}-;8,M"W$j܆ A_8E: On OB3+ȿl,}ɄL7ρ0ȯeI)\)c-]-Drt `qI}XnًtK)4x("&`YkDrPSۣSFʪoZ# Vk@HFYk_4>{g"M+>$ \cnUr#T29?eI฀荾{1-)NP.m)h% w]{:=3qqe`۞@>efx#w7cu-귚nY9UuS8'0?zb}emg W `AhC +ħKOvm6Ӗ(`6"zEįӁ7Dt0f-uC9b)Az ..:jh-$/8 &rKQ B^+MYxxqT>{RMK%@.!itU*+γҖʭYZI4YnDcn1.'legaQ\YBe(@^+Է C3JG]ցa&ʬ-!HҼjo%r |tK_2Q@vQޥidD5ܗ۱*`wi ~Y 5xZ.H^~Ye(t4z_*kc@#2JP;(+_ CONLK 2/.h}8K9_DZP`, ?A/g1e\Ԑ+$O#Ӟ<O9t)JnxBջ7?!]B2误%=IMD~dž.Gbozn VGj)N9CWR [ŋ'tO2 S!lM(:]f9g6?'Q>߲@#6M؋&l\Q_zkڼԴ}=-6'9d7R`j-G HAZt ? 4N aĺ;d_a[O 3n3cM* yUIF\rﶼcsԣIoJϏ@5-Fo  hѼZRn 恦ʷ> ZAO$drU vGvUm}_r0S.{gvhm`o17,FIzQyO>OiZy<3-Ii)zaHY-甾üX{L6\*b=3\rŸY.KcZ*xoսז)Q0+*oQ&{->9?- vY*6q3X _@ة%@Xgs,J//2 O| Lё-<(<;Yԋ)%OuK,yimnLڟh _51Ac1 nѨq4Yj(13!(Ye|!7PlHj &/j~ּIdyR<;[ nDE<A.[Su٣k7"׮1a {l(:uGkZlHPsD@r?>j\ͻ\%/!zG(%Vu|uL_\" P'3.)`6jĞHM"H8AX-*2lu06~d V]BIYzA:J_4rەc|,p` 3<Km4t:_^ Yk5cp5*zVg2+UͲn8]l>$2ei<|.ʾ)ٮ6|0p!7*w`&s"9KY;vxQ'AN6ĺB!\:Ix@T L%;ovG[<+g;J| M9!.ctF.W#M~,.6L.y_2]W]uКk<ޤg{[j5@Oo t?^v34@vP*GW]&1D-p>fdwH{PYaP+eoJai-MV7O  8B?̑n.縆eGi~8K`Zݟw4Ńӏ«t\)@\ȈX#2&`!23{DCm ~9ʮ4 5A;E?quil֑KPnpBD(Etw*< :o5hJhAd.5Gŧb[i^v\cgu 9_׎Sd1vUd_>,ܝaϗvqOZC3թbs, 9Gk أy`o(R~ ;l;Ȼu6c׷.Ho`hKaYrxP~[e4E͹⯤E|dܓ@Ӹ]BWی-p(1Z7S]ԭN]Vϵ˧}5Ŷg1!?&"ǘ"@SHtr}C'fUʚD=1`}Mvz1 Cg+ {W1^.3X.p~M>Ww+H2t4.ZՍ/= ̀|\ vKǟI9[q5`k 5f Z٥OMey exlg>!(w""覕#=u(aAL弣434#S(\MY) 8\c>@̙7~Kǫrg!J_m;fZ*.WQ5kV.NW,c- 5 ^Ww]][ieؼ .Zaϻ'hqf6A |,`̬Of8׍W48#j7D]O,eZՁ{y"摍6Bzs>cOC~rpL̒DsMCpZ}S^\.P"fK7}ΔNQ>zZI/&'dƈ2&;ײEJA D*`1t :1tfb_z=+a(LiK:4Al 2UI{`-ZC!`L61 tV2Y^"f "!-D,?J1_m5sU7w:Ӊk#= h&=2Toӡ4upҹ, ꭔ[׷~Ė S|ESMȼ!+,c.^2GއAD^ %/CcXOKF1BnyG]$.2]3ςz=@Yfwia4N&V}4N=pm$x=[z;;/DQKB# YC&}+YJ-^'َi5p:Dꤲn/@>Aƪ#S?R2'nSlˆ}~f_G@ 4JϾG>㸃36Ũf6ww_)J>gc̮ܩ's1#9-WȆo &ގc4A=ypGj^jKK}5M70%f Sߠz*`ߙ QE"sw2[XT55 nဗ`VCp;Tk:f0Ksې.ίЯ@~y Qha b:QZ/PJ {*/]@p!^eϽ1sq'i;C*h{6|3IvP٥"^7q%%dA;ˆ䚿Ey bGRMX W".|aN"N2K m۝D[X+x`[y7L(j6ep:#h-x!:ҙ\>B0KCV^mp*>v72YQeaL7fx؉ٲ u-ډn5'J/T q䘥1##;"5TgLb ze-B-M+$bx(Jhрq3(xrQ~T(ƱI#tS"3؝݉Yz~|VHURlܡBbU񧤔0f'B]}ws p1HX\l1E681"4kz > )7(yFءkDêSZoI /wp;~vɌ J]+ie[yh/x5Mf0tqia)]5@hM4te-X&f g/z#h&2$きz.@MRd8#9$/<e蕩!šUG}O/66!` _M]JvƦ/h_= X?`.baG 4d5uKoA\z M@4n;sd npoP_Q:~c<{1%ە bb򎺷2ηcP 96uHsMp*VzIp-k6ir*5Zw;{Yf!${Y&C$|T=GsN2vN88b{ݟ?<;Ko0 ZJ*ip`neC <YRs3>sL=d'.,~v>q遶6a$5I(?kϯt!O s;%C?0-U`` LIy>Slt[x^lQf$ #Ө%x;:K lЊff҂ΰA }pvBD)pWg&wdR~ _E G;pR Np&#E {d8CS䩞­lP)9C[UJ$cn<]-0qA#CS7-][jR{@lL26L-^&GIoK@ =7@j3n׆,7Q&*(=#%4U1:g6Ŷq ]i:366f #)zhWan9ZM ZE \ +ͼ?Lo[64T|5|FZK4jfݒlB2o2S]႑ҝ?gY`>|AǙX7Q-r`Y@%pX9(O؇]㮧,O&[M*hR,Ιk$͇6[$!uj#W[4TG/w_F8Vje[miX<;Ԇ(_`7qMs,SXWEbԞ*+A/<ZWս`3y>@vӼ _xDXH ϕ)gVȸ4B@We ?2Bnf! 湼JN?!^{pҌ':czSls,cL@N0 +FO3rMbwP!H|]+&w8|1 U);ҕa*v4cZT:4Fjٮ?n6XJ{`S}e?w(#6{D8<ںp`{U]|}Ďe~Kb;~ORUx{9{R;(Ippl1z+2؜UALe׏mݏ-SoWWKt vAAkyV3XH[)y=ԌcaO5CTZ X柞g|fÂgn$X_"7S /[h4[G!ϼ| z3AWDjFf MEc01rT4%6m q|׹Bkj6O_2T{ڈFczҏN$WT̜N}u3&|#:¶ 4 .==E=Y`ǔtA}>UW~;H9Q$`39a$"Ȇz&L 2G[*uqP"{+nꍃCP%OrĤ|+ss CKG7E5ܛu,OLHe9"pHtZ9^ x  UXYQ(ÖDZģ60R/ ]H,РT(6m`&I9sͻU)yR5XB)]a;<$|7 :%wBA 9,AQYVzNňJv ySzpzZAcm :%ml"v @!-194H}ȢwSt0>[]F*ea>9Wb.ѬUc+hbw> 9?6a @55fdʟ%_ƾo'HdTsF8QRdFsEMEӅ茶8a'Ȳ7c?UGV㼟Z`,2F%z{_zF5RZe#y_0@ttvt<1Ob'cu[b|5viVs f8m:,=j|y@wJri@(Ht 3+6MQdX,)-s)lٗ?uTa KVJ0X!b@d deJ#Wݷ?P8l=FA-zHij@w7Nm+3;`M<WԕIw<7OxKG+dEhI )F쥑T@1ߏRԛ+C-1P {{DrpY/ @Ee{ڮT-slP Keއ#xdHDQX3>(~o9WZ9}d)M~kiތtN7TA|;6z~ދNk\>m&{ɎhΠwnQ?GV5GRk/P82qrmR3o|]F)<Na?Mr5g@VA9AgF[RY@AK7iq3Џ {૽ 0| $*=A0L6E7nb` iThW,E|~>W>BT-QA!0wZZJю5ɭmАm>`LbK{쪳t}J *|uI%.23_1zK\y$T 0)?B :N;%¬$ *ݱ,|˲CDRF^ zn#z*LzǴ/4b11L$Jȝ${^܉_!nI^]`Tuk20H&YoDhgI< Q-y@9` EӺ ;Ն]<^9Y^RNz:o oFtj?C᫽&HlنbyNtLUD7cE=9|vnFkȥb>R7p0|25iߴTt:.02z-8 y7@>e.w@BcL ȭC&]g% QN12Sav.X@P&DD)  |Wυc q3I0Cr,&4g^hؠǠ [M٠3 ,݌rqF\STp ݙXp6IVT2U"g>(WLk=Y6i=Nf`KX7Qu"MX^IR/4#7Jq\"#)'Vp4cOx5-gt[ \hUv3 vO: eK}@ rrfhݯ_nb)EAX;`>MK0S>wj x)~/8Gԏf㞕0gq$uU`vH${~5GUS jx ?]it` $_^-ε稩CL(.) amA Өt(s{ǚ2ä-s58ְu\,P5CϐsTTiY |{AKvz $^MӰ劜IQ̣/UAR̍%ZIX[ʴiG2N<7qև nwCXwWkƄa, ;u OD.*/C5(l8123Alxi4t;#R`N7ru8?=~neTjx#GoS7hL50SBd$2Lrv_.JXc?J>fw1]10Zg+O  a,lWD¾Ng @x3W? I GMV#UgE=2ŕ ׉v!CZA@>" v"@9rdH>5`(ק#1vI=fdv?I'r/tl0MP4_:n͛knhH(z¿{M7Btղ!+WWf6HƮNbmC$-іFPke .KݧrX=H{%(\q!TQmgF"~2RCT-sǜA 70}?抉Ts> &%;wnSmpI1>M \RdAW˹ p1mduKfoZ!!b1T,H"ά1bƦPɼveڊ?쇆Q";΍9_󿫢KL\xd:YsnIR˒CvEK1B &LEgVLy\ NgK.5w|{Xm\б b_nxCt(vr[(3%s"UB Nڍbe,ca*M_; 6ܣS6Td =e-"2kǖR5,v$;6(psH_eΟ V0):(B)I:lswXmNhDNSG~.Ӗca U$eCQhrw.B7RZ~3?'ݓ4B1dX}xwَf~&@>/#ۇKgj7ąD"m]FyƳ$8-rDCvu12XK |i0N?lh.s |!l}w?O^+ y;OḪN-N()\eJpu:Z"> .&JU9?T'q/# 5ycŏ |<-&L2)'΅^SM`ZAt\vw@3D>8g+vy~V=o 8ij͔ޑĞ6`GqrXpNNI78 P%Fٟ8^L b]gĜ8'&$'kO'Aky nxj9MQ~rijݨqBz5 ,D9BT%EsNH |"vm ſG&SQzϧIaps>r?C$Q\-v}Xo5L rv=auS˘t ̃f%hRM!!`ם]0cSK?aC K2Դ EgBD} ]x({)^u\zW;rܢz-Yd۳աڟm˱A`ۻOD p,*exg`. Ҹ͋ b/8 x':׆S?p֢{Q#}rS Zw>$k9vvX@lg | W&Kl4ѠT=!qf,ڧrTsKH@F:cOc5<귝Ke=r5;=t<%S툣6?HsS6cۧ%:`~2̢*9۵7É0d؝*)Y0h%)K ǩ*)0 ;,ӧr^Ifah *?W!‹sf? @2҇Yv\%Ҝ'$ЎI(J5[s`^oij18#.4D$kp^NXiqipflQ 璔KDhX nox`.eXE:R.bAW!GJ ?s!.)?㼚it?ch{>9|wIVש.Ao[0uO' >ůIpq%q'pET=i!qyDZϖ84d QtL-d[roM0ܚg޳.W$Ǘ6fSLbemlǹK8q}jԲ+@Z/] I6H^aLufɷuP#DhiT}t(*;*f ;ė)~C;# }u!%>RY %mK1YVܽѨh\ĸJߵD%|h?EZxMh}e BlAnS_D|j‡d4>Mm kyRoλ@nV׈Ax z3d (6fh4DQO orPk@wQUSCJF$e֛ě@ǐJ(OT; /{S;7M,V0!nŘGuνxЊm栕$ Z4F(9}=7So *Z[Al~-/YT6a^|]0[p꿋r[f'J1f)RIЮ_n-*U *3X5xx*8iZʇS7`7AU s AH@ ]4*=9Y,4%昞Yej\3fU%mz@R&H Eie7-F[MwJ/Xl3)YKN2^Y3. )3^VHb3sh wp dHo j^7VmY MKo:^[aα/!XJb9jmoB7=eG8o远. qI^Ǽ~\ݟ^p}4^HW4|Ƕ/2>8t6UhIXzIy, 1]nqQE ~Jr>xV2D\&Aw<V59F,}8E40Un}3_\SbaH|!V4N"I!ߎ Hq*cN!@,'V d6nrgsB$5XLiT5hY%_IƔ2]M熫O#㹳* Vomx0yⳎsXxڢ'@߶<]&B9s/<Bٸx-u=p :o €%G{ ;qDL{UeppGM CeI($[%eT^|,=N)*qׯMfeO}ׄ5c~L7H*L)t37QCRɫUd0#D9%ل@ 2n> S N``TgcEX7uo>;HTX_k^qzeSw6LbnCR([l\Awd. 7n1nkZnc^(B/0zur(lwLܺ+A]bH-dh`;a|UI7 Efj)(DcWH1Cb6f=5 S(]BOV[I5#qk%nYsGwb~791T z\BICFnO  {w[;h*iE@V $犷tWcI˜6GpX+l}&(e\L1|;=8UgӒI|wQvsP]R{ڏ3 Z"=.dRݿϨ[dbF FcU ĊNWG Q8ޱtvo+Ѱ^2nw#ms񯒼U;頖*6poifu|ׁ=nP 2ٍD?4Z{|Hk狮\Fu{[NjyJ͹"CB^ߜoɺ=LM=?me:#q@"9KK4ĕcQ]R3HKZr+/U J^Sn$Z]ICZ$|vdO8A{UX-3F [̀o"g=>!\{UJ^4/\:xiSp)b]DAp(&(qs\xBhMSeL1+Ͽ9љ'Q0?نTryVLzJ R폈*%7,V;G29+l@WHY4+ aת:&Y)C01o WSS םŭբS]`}pGڔ0,՗$l=GM_"*]EϾQYxW8iw[gsmX,hQ+ޖ. ٹ!G. /̚z*fyC.j Ϛ @\=2[t9",0(-W4E{l^#y !ߞGȣ9$دk@<JO98K>z~h G_|(FIpY@CГ"ZT77zGzI [V)OycϜJGzLбKUrcp vz u1ɨ^g@ WGIZ|wu+ui6^fE9u#x~{j#{|HsPG[0wCkpNOgoe!pWlHRC&\}4#f>)99l=t0b:A(fIףGj#ɽBKL #*~d ־o%(RN߃v3=ͻ DCmp4"_V놧*P}dAzwx`ux]~aAem;pf)~T5GCHa-xfX6%Ma+Zڞfbjuq1{Dfy8P&gc8Π#VŢ6gΩrG(Ӄ|ņ7ۑj'o?.Zmt}WL"ZDzt\\XbLlLT4Q+1M] 5C\"7Ec,wc D6{쐋92׀{p86PnSUi})%Pt,Z{.3g5TGZiVUq?O]L<ø sYQc5 \n%:d&QY\AB^LM䳧ہ5q47a\Ӈ{ti6ISjm8^^e|l*M("j@i/gKo׋ٚ@d79JZ4vy*d!Vهbe;֘1ae- z@K).LR9`x Zrinr@zaVXDˌ1EOZ^dIvp!\QsRi}u B*5NZmC w1m&Cڷ\Zv%˅(Ce@H&T݌dMAh3/)[/b؁0a%"􋋬)b?5rM|F{׵{=%#3(!>T4G k8x4O1mgjzYYQ}S)/o4ZX5izC+;dlB(.o??b/*G>W}6 0 ~Fo>bJnMfWOUxhnNZQx-o◞ @k8W"YSbP:й6moؑta!2q%=!xQ)7P&xΠuMkV$f.tW5:5|IPϚ%5>81iWذn}9YD&s2X BVo\kۑ яy:5p,ҬV;#]ͣh|>*/gtPs^W) <^-W?$o rյ?,5RhGvRJQ&Wi߱UA6n;t,U5y૓y ITv>*uQ82ʞ%Ngib89j)ǥ2ج*#y } q@MYb b%䝨HFp)zˎB!ʓQMX>ԁR!.gT!<54cuJ$ɛl2 BINABGIG,\}^}QH2QM pS0(k`l]!^#&1|\Mv̡6ͫ$rqX=AꚶŴ!Ys>V9T&9|rxkҒ7=*)G5p`3Nh';E}qd@j*piL  W4:jF. vSR0geYDΕ\vno[Mv>_VY+%o1aφ yU BS0YbQY° v0‰}$we?0 CګYǾhA:ͱ47Mt+S7FqQڕqO62$ߜSV@ |%ׅ<.yQ6Hkih&/"6>DcY;y#+il@һR]{[Tf>7X-I]+ތ5 S@-D O *L|G Ts:SWnPS.l*leLw)CnD$)p0N[ ޔBm&/p.ګ*Sz$Exv`3}?߃rNW2F&1d%歘ntqkۥH8ة҇De>v4c Y*χ;Yg=ةbtn!P/l$M5LHϔߣC ֡﯏*ʋǭTQ&YyMc޲(]d'Cɛ_=<)%zJ^O]yYX g!;'ڗ-󤌞'q@M]y4M71 csIE(:j0tqpWZDE -5$eufA b.$Y\HfO.nǪ@䇞%aV_nGUݴV|fxŶv"M@-P,;׹9? E4UcOu nF%#Sf^6IGH?rEZal*'ͤWU _nWB؀nؓU7Ͼ T(]H5Yti߭W5`;+Т2Llh^z#?6[Gͷv6jKqjuX aP:T;8EuG@Kwcp륍ޮw{㟋kTޔJn@@f/TN1`Qup}P,:9G}`+"<;R[# Xl m23Q? uS!=qnsjoR-ypG_[C~'ebRBKTrg m*'(@yǻ._M7i65] $VK9[#ߦ +փ+n;,l*lǩH j?:h1Lz@ 5 n&?GZciB%q2wQBX$gT:ቡϗ$Gد`(Qdևֈմ;I 3!wFz qAA7dOn<ш~e寷6y\N a~Y)g$M e+`@MnܸUty: OևutFe*̦=(EQ~I/,.";VDTz`g<CkYYՂ[#/hg:<]V 3g LEFg?OXQda%ML)XuNVLv/4蒔d'(TH t>=y.<:Ls"_VګW#ntrW3.:Qq+Mָv@zomʩвBZ \Z[@uKo584,J<#%%i(:𝣫 (U8>Fݳco|b%7kH`/^fV`M7ϰO.B>.!L%e8۽ Vgh?7sc<1!WClaX=-X_E"8̞=nk%!_FW+tVoSat@9Kj3>[z?=ɱyp9&O 4 }4+;_;Q(u(zEX]'`D^^WZ\y~3Ekp;-/"ErqN$DکG#veB 99 C\e!+ˍ\5f]Xu0ĕo zL`{O M~{=!+D'3y>vT~)̀wy*Cω"ZW+L_of`,Y4T#4fA8KP vr}|n֛xI׸wlX7J{dOf 4ܲfǁ;wD%}z_8]σAtR:~8% ?fcj# u ԍ {} :x!zEP HQg"b+Q!G5K1&qijJlijzN^->adFg;7ef?R[1La$ OK4^`6ʊo)eV61kԬ.t$ GLJڷ.MIKYwɾU$ޜ3Q~F7/˓*‘+3͚:G8ڐ$،͙1:,BE;Ȉi&XxO_R@0d _v='Wl*N(:uZ ߟr}p,2Ntdÿ\vd~,NA.xKӻCGE U ^?iJ7Gzm\T^5q AVC(< 8?1B@ \cnNqz*Np O>l %-@&ć%]LemC+{?D-_UwRz/;Px5=)Le#J|_v/rfkcmosls+]R0ַ? 1C~9n`|2rykp(_Og*=98C#xC0G$HNǝ^tV{?z 8k2xgR] XY2鐤Û.6u6~yM3e_ecz0tf5FPO~PsdU-DոmIp:t!AoČ|ŝM\_c7|.ZvԊd9T۷[ҫS;3M5+ 4:^?$hߧ4J>|g4α&JGyvQ/Q#חBˁ1`yŒ*\>UN.~ q/)1Kz^2] xnkh(R^n|SU\wjkgIudKxw>O4$ꐪ jv#n(Z! e@5}/]2E!CIf =aڒمY^!z490&gҼu>V-uB$+q>!ݩ~+preɬt tC3pt^ǽjd"G`$&zz#H /la8 G'-̅z6G얻xˇ.Esi^<9 D:&rn#]0"2Ƞ+ $5"W巧OGٛ Ī~;'R[6Ox*V \NbZ9\`(O8 T)+G>Zn3u5׽wU Sn[}7-!ve8 ?' Rݎ׶ʄ7'o\yбZP$_FߒÚ)e3sbӲΙ '}ӊWb}D>NB茸OGEJ,14y.^w-$e PU@6 S@^0E8_M}} it#$P^>|cEu4i"32c/ގM\PZ]رJWP.uW .ڐQ{:*  )&Nav/ '\*^p YF`шM@ݬṚxL 4{ܨq_Z~e9FljwR,;Ge.>'T&* YO^shmf@<_a5ϥ.J<뺲B27QKRW  V:3"bmHRM2yR 0JO*gQ&]ifw3|Oh%[!x@ΡB%TynE[uDI1¶UYtKNѮoJ*vN8h%5patG*AK#L4ulF_hU[&GN>==Q /ZO#epG 雱%rN.| o[_HF~ȦϬ*2#8t;|Q|_Hia=q4fu!D g]Aa2H{Өr vFOɕgzH&b71Uvߎx^/v{c?UJK0 ұ.ָ0 SwzQGČ-:0[tZ7  9Cd;Q^.̣2(TQ<"  K$\̅R +T|f!xw]R>7O4ȱ*0 ̍r=d{cG1&[;7j--]dޭz:ܸ:_OS W|`FK=ɖs90/Qbio> 0?@sCnIY_!b@cΝ eT U64 {` 2\w0%͉-hc=۵~ |]hvR=D{uXZHs1@90)7r*UG ar BoHp:Dԝ<{L^vGN-@') /ȽA~?v}ꨚB]h" kDDLW{qel(OKOWsIoNI8ȥ 43Dΰ؂pu0xX%eu ~AV@{<%]dž0p,~TS$ylwX T$}A7h3_QTzB Ds+JZU@LQ31<Op(6#0a V:;~#0sTo'uh^ftM\@h&R>QȄP;_/:,D )=qI1#>w|n7mh?|ԡ^/Fq-h'4,Ml4M*RFgj+('APYn14k}%Nĥ~%Ӭ/\ƩoEo?91A)ZO3ݢG瀠Wd5Lͱ%㮱>} @tjN(Wt1R^tek^7wmx:'fmK)mݍRcyCF,̜oV̵?nU{ge ₵u֖cT6Ctˌ <3KEGiHDP{<-z#tI<=FZSԷ*œȼZfd¶!HnmQ6cPwfkCr WE)Zy,B>#@~.ɐײ(D%-F<O}W.9_h >A$rBK/mÃWrw(ߟe|Mf<ӆeWZF ,$hKhM5c<(j:%ԑ3C֐{ߙh1j?!u`Z9a@i+j*椕")A!;չ@<{ď?b0ilh("+t`L`rv$Yj}VB~_]ǣ@`V=$&QBq wn޶F9 ̌^۾i>yQ_qR(ĭ1܃#)+R>/dLsyA:0qul $ȁ, #o-<5db|3/m-)JJ"bkPHlvAhf0l}I6uL5&ǬjIlN8ScZRd4~`< yOژbʦ|#KC 궪-ԡS#[Ad__4}FƌՐL#P٥RZ 2L$n%VN`уZ-dcXd3<&؁k3t>[ 8ѫb bWM?ߤ>~Uw{U$/C"L_-*<ۦC}g, -,Xo Pta;$1Le*i#Snˈ:g'ܻ\Z+u3 "? OC]`@ߧt0* !szƾp<1N\UyöŇ5Ae6ˁ0jwe+&xO.+e M s1䫽]xg2hz`5BU_15u͖uqӥX>$ְ7!-u^r7Sփ H*FsԱ+S]CrSyXNQyrܴ[Z5Ad[ /| dE81e{rwOۍ5o|Nƪ=灨w 4~v(B[4 ܳ<u:Jl`>U hN0p+鑫c1(}r [uR? tZX?Ŗ?gN[y)9 @W0CDk#?s@L)j[%$uqDE!JghhskcY̢ҍ0` d~=nX"() OlP7L nW`ף XBqBj`0>_v{K(l q\Ym>d8&,TMGF(YK7r3TB0.̛ʢ*pdM-^?ޘI~(ky |L盒l;f˵ %} ,Q>VMpoq[FF9 [#e^{򨠑$e,o`lMݪh*9ҹIi_^8v< G穨zv$G~^w2d "2Xcn~te3_[Dٹr&su:#"FX{#\S `,[*B.LץRG@)[UE4ZdNE?[<ǧlDv+Y3]=&!x3mkWpQRd5TP#kmg< > rmOyO>t[-rȰU_sd(oԯ2ojvf;$ȷ;ݤH%#E ?-n}{ȒR8Jc7N/V*˪=wI {<5tf 9fgBϡ-L &wxi=DKcS>+w>D&+,zi+M*NwFj".NݥĚr#s(WAȠoCHiPLyK hM3F~Q 811V rρʝFFu[ܘnc\=vwOԁ&:(4][Ef-C +!d+1%ސe7o=c;ukBӄgnSJGfVD.L) f}?dYʢvgR,mRCD4, P@ i5u*oqUZm:͞ijeG-;Et颋ױ 6Žns)@)0 R=)$2[p@@֠ P9dEYmU*Q0Eٌ,exGw$L'ÞEW̅7{C2&_gg(w|PbH`EF5"VA Rj f:~7%TwJq"VdN (d T]y7$`aV萁Sr2Ŵ𘩇| Ļ!&&~@яT<5%:U)n}S3ž~Dap &FQιapdݏ[8#/_Il81=eJ_* - Sx6k;#vYW"{CMՏ NI[F*RB g&->\dĐr"w2&)>D#E"W"RJлnUbw`d|$*pׁXjp>kF\S߼M)u,Gf2C2oȠPj;kdw(yߞN lpKw[5NaĎ]9pޥ#^<$v'ƇGпv+6jBiBu$E\B}VA)7 EZkilݿ9ac_0GP왢L $b;>O@Ebvb.:aSsusb̓`0e'VBDlH>"U,Ch`]ɝM S]NlEڇHU#[ŠkӻB<4@3k`^DA\mtl-Ԇ74ƅAcTk+qal!,'א?:zwE/o*FЅN Qdž׶B4O7fB(<E=v;NŢ3,TƂt! heXzWbF;i6x@D~Y„gybP:uoPSi&vYkk᭑;~>;ze9*UL[%*^{ MC!w p#~KCL5|yDAY|Ys/8*J#cp|}I6

%?`h/z AC"bPVg{@ m.fk+ ClZ[)qPۯ|'Ie5f؅T8b>9䌒ԋxqݨxQ%^ɣgVTDpPZbY 0+{:',i-WlPʪL-o[zYi{Ê3Sdj9^ti Bm`L}M!AD]򆺭O6Du '/Eظ;E.`wddQNH_ǃ:# jCAl)KYۺJ2k0gD]H+ y=Zj\03n?wMgRg}^$v'buQ қF*3l0|n*M`lH`o'to'y_ `~ĭ 5k7rӯ, @ru|hl2wiL9CYg$n1 /aiMSl o>b fɏC3#Y|%V`EVVذy6FS6U\a)}2C59쬪8m%twk~ggd C/2ȲX]%(oq˃bO\Tr U6rU@3 / Xv-%_D;\YS| 6'3[VrUObh&.0i,>2Iڽ.U!ؚG0&`^6uϷo4'}w"R:}&у2p!*(m ı? W}p3M\lCk(%MT"M<(tU4(bQ\(nz e f}?y׵ҙmU藜u~jk 97VhmQ@AWePçl2{RE/ y?(~*``&JM{Pt} G*G"I ˽샩Ȁ(GY.?k8mbՠDgWm&l^mB"91 _)"ۢ<z=o~ DD8T&x1t(etgH'nc&$ ]kD _s# ~2H?2[-oC ٝW}L~IWGFYr9W_{s`3v$h/\t\(gĒ4%Xp,o }`E99싔gk\/7x;,-0\;qձV`M]d Bj)TR@KX׿#. SVXpw8(b!ĞU{nMCF vj[^})Ů+ń.c#YӳǏSywjհ֪9w}rBo>`euj6 '`R$lT{i^VُS> }0C !^Gd|z *wxl1=SaԺ 8'C/7v=ONG٫SD2M! TkZεU~W:K[;p?d_! .ŲF+F UM6גp-;O^pѷg h\&,f;"dY֣cT@yMXtL!fZuJ5gzb4MuoSrkȪg=L:eEKCKf$N0R~ d"16/Ȝ` ی5-`,!&;O0 4&JƈZlŋ//A'SvzmgfSęXZ'en A[׍ &35wB+Om2#ԗM9g({NS## "_tkp@P$v'7zͬ ׂ@oXv1Ƀc*@wBN:Y骧,*O`3tB^֜Nip%~{;fYgg;RPY6v$lE}.8FnS998{MLIMe H2"+t}-瀣Ɨu@ $UZZ65-rxn&dE+BFo{Ҝj|E0a\Wh8ϦCʏ3Toį,0ys6`ً-hB™ݜvnzb!?X.?{vBY_4Yq=T-b%3NšGGN&9a9KIs(D { %^]Iv=x,,jksB<6vԸŇVAWe*P{v_^`=c ;gpj0#^TIf)~V7%ux !\> ,+~>ZEFi0uvLmoV۹O0 {4kkK:QN.ó"w|eTo[c Io ,B]L}4@I*90bO}翶ݧ8s%q|xx+`E긢BB^6Yu.49{rMߍУЊPTrs0ȜG9s6B'>^&EX+:wFY4o2bˏ{<9_M_tzy9\NÔfz#e 붂Ë]d5P6/B D k?nH^X1sŻY& ,2@8fsQjis0  jqz)P8r-<Qx.ywՀZ{W`$TTRC@ӳݙLI+OԚ"+)?[ZmBpU!@_81@imķKkk`0aPՎm/=[Z .T U̼j6rۛctܮbm!b¢#~tLk`@yt Y@WOHޘn93wlf;5:aGܠ*CDlo*$łA naYN JKXVm]&T޵gNφ&p:y%1)+Z,VSQs}Qa I'kh/Sp1Z ʤo/YA5Ɓ(FFhUqU,q<0!&W7e&P˨,ٮcBu=} "?d}!zH&הڏ՝ څ Ce'E?,Jʬ/H &08Z$X;{22A6)THp_LYߐuC@%4t[sWf(m4P2kzh?Q䰼BCt|~ER GڦbGDo Q`ټ:87ljդ݋-k ?)mA@1}r_!⿠!=}|8u aE"'@xi\!hr" zbYM^lm+oW50G&և/߬m?~9-wKe}@l=:=€jcHlXP4qvj ϻn;zic~E'4r#rH!CO s>MGbL5BkˈZPgD7QA} վ w=ةD\7T7 F)ŨrhȾQ;SܗkPDkԧFS+jw[1\\dt~޹&Yz# D̄h.`좃,Þ.92ٍiZco6A!6ChfᅱVp}fltpfU%b@gI2VW܊j`Ay9iU+9$jYiQgr`' Dwd~A理\huY؋Ny!>#i=3vtFx`tBH٭ަNX BY3!sBdJ}gCz|nQ]}5q~$_\wa:'Lf%?ڮC -ȫUIYB@& 5γ =^HIu}AGcK@)P &n15cbBE}a))QbͳIcV7V{n'-UHWQBYlIQ̓j^.}Br0$E 6}:V?\@{hy֙3 +FB٘t/d%^S, _)1ósa>-#.8f; rEzOMz"%)m1+enQl >*8\<IDewnws+_Ѿ͐t5! S$XCpŨ)Q vxT9Lǹ (e&*FrBZQ<"XUN|0-3^aJ1^\!Oo֓7[lMG}>ii f6a&5Uɺ&hBr\eԽyE?G,d7'RB /Y؀&]:Vfߝ %rM7N*QSL{:  Tp]wIeV1BX;BT%5dly@H-qhwI aU&/q>lAp#8ڀM](k:qkF%<0cI}-\enH8D&$!Sdx[9"@X1rY aߍ:8*-z֓Z>ɋ7\F&iA^jT; {202`W%i.Ǘ.NGk p, dʼeo ㌄2v42BrK2fVLL{i*p#-;d/{hmSv,k?,- 6FކVΝS(zih__$\]ݓLp \0,TG@$$M>QّB1Ya#KrW`bq]GZ@YPM3!H%(mRB΁p lWe?2% ¶H)輳]ܡf>9]|5ߡCڠxE%jnn,=3$D;P7j rTMgnnݠ-0gM c.rZN &.KޟvCdҷ\Blm4*ycr@Y`7?ӻ{S?¦F78/<.`KS37/!D|@)Ãvo#WKKjng@&Zҙ,;bJkP)aq]U,{^(~'}ʘze$.2CBM='!V2EyuE}Z\=ZTJQ+-8tɃR3xÿr7X֒=c5t] NucǃeOs!±4>L~{08 ^mha6C'#}LJـ1.7vR("! p)ÓF,*+Z A+.hyO* ĤWm~ /\Lݛ0{?Q#4ސH~NT_> #V1Y /}V/=1zljbVc~LHpo.w GWrgk'K3\:]UHqv ]UǗ\gl0,5Z)8XnkV᩽4h{a`1p= Mo3eϩǤ~|Y) ogGQ'0_@m{M0}IrٚD@_|qҩA%sa'\Z3gjrƗћ(:q4fa٬z֛W(A%9D䝶{>udʴ.t'X"-B%FW{njB^lg,{3~ԡOhAo=a̾Sr_",GVC$bIҨzJ9*W0Х(12_&ZqW'c?AjR|:FR׫#z,.3dsB|I|-Sitqx2aoj tͪGdB0e qW>"pr *}ZYgQ5QԟGG0]Q+Ou2r{YV+p8  jX>giL)y|Iq:+OQJLb5+MplLZ޵CBǒlĤ.om=o¶v11x6agNRdsCe i"OE$׫P@YV\ ^~O!uAx-0M' VsI XDQmdxV pbUҀ6?L5F`_:k2j9{sQg=C*I\3_(s&Oځ­p՛Qz ȇ|UjT#4fOЦ D:7'a(0!Pc3;T^ǢY&&Ң^i.VNtHYGjgxYӂ,`11.3)oj0e,I}+.9Q@ʰ _ okm Odb91Zzkk>i ;@K"c>49уr8oG Sm+:25eN 'gl=bߠ>j0~x+t] P#QhZL̙uʋEëafS6ڭjI">XCa0` 9Q2 gNX_9|Ʋ CC eDgcxT\OWՍswU[r4_d4!_$ػ7 i86z/Cb=ZKU:wT"Ji]?cF2iɸ@̶E| Tw:g C,T _6cБo/>$^zDdVҊi)xYc6[Hv Kh2}?'g{@{Jq m L/Lӓcߑql<SFRb4(м -)pvwvHUaM<7OMo2<b$ joLnif +(2c&"uNξ3!9SAğw;n]y3P9J3ѱ'w {Q;$d]3ɾ{LIEVV5JL/Y5;%C2=B{FTO F́$NC{ŴA-Z5†ԅMy'-#N 6O=jLzɎ:B6#۲8ז$=l mEf_/iyHm(p5d;PRΥ4vZMۖZƞW7|E^,i @_ڛC&osJ 'nQ_FL-)7&OUzۻ_65 /S1V:9&I+׮FMtQS %śxQ n-]v~#Wխܚ<{\$"ϣr夓SqǪYNcB7nEJuط:#O;ҜTN&-; tH.٢Gɐ$V$`Y !>ɦX3STu84nB)rJ"]OS<;tblzhUVE% -Jx]8o(e%-/H{})e6cfjbB-۵HF@,\y6z^?d\ flB|A>y$v"ine07%[@BPT̚L'!acѧ+j 6(i;PcY0^SO=m>Pg6M^=}WGm3h9ñFkT3-%ͩ"eli zT xD VRuUI}m]P/IL?Wly>&q">G+h5DrpRMmn]\zS&3`4asv QB?U ʹK@xq6,ԃs:O[Dx}*oDt*:>jhYQdƩMp R"Q?V_f1+QBkUmqy 4Q@}oF̈́GSjц¢Ś]"N[yGs$ MCk Gyo3Czf@4ΙXE6b^xs`9aI-?YOvF鰩vvGvEn{p&=JBE@&6:2bw lG(+ Pefk㘏DP~1X8| dYcȱL ߛC7( `_j)2LȇڦN(ڎn Lx?Yt@BSk3 BB_P'M[<y{Jե3qL#̫:EB:ջPϗ[7eG[I,Y\$ 鰢P Wk&V'{+1tDdA2F.jHR$NG6%(nςX)J(ftHId)` ^tooG7.LbLVal4;@i3^x,zk.t\M ~8ytpLTf|^ mg΀C8a⅊&oBu2,vHfG7 :`R6Ƿ>[i&x8}_mգNLW!\{ ^y?ZvQ4; &%7;%݋H10m_T3Ǎ*]ض Uk|^.u=Fu_=QԴa@(>ńsLhkCca 7O hc$gfɽKn_tjMX8['&2Y'Kɷ `ZRzej AaxT b5{gRk:C6A+-2:Ы2Й wt''ոDvρzL,|`U1L>P[!MĦιP ` 0ؽ|~3{w2y68N[fחn 2kK }+EqL.q`HX%޷ɮX' !ƶ r̆v&L-S8qNO DAs+rܒCȀ!jCd;M +Q}'O6q vvpt <Te ?\ܲPfR2o)X$Q0Œcbj#}OGJI8.F8-> HL ˓|QȘ‚l :J;etkcDB1 HeZuHVdz#IȇJ- zeіAsciT˒Z IOtE0حm pzቸ)ɡVrx 4g_w;@:/?S/<8߳I@{&A$?}9^U'a/iIM-H3<4Z dС4nRҧV+>6y(GS2J{$+LtIYzcLJ(e0~|!0C\bE1F[QgDP}fADQRUZtN0[0|p_fUiăW4Tog,o,[@h4?)6?ō{.tSO낃⑬A/Y_|2_rݑ⋈83IϲN+nNw iLu񀤱~wC[pKH9\)K։ҢjޓʬiN^1Ic@< c! -J/}֕WzԼW$!fc⼗u(tDi&QB{Ь-Wf$g <2<%ՆR@NhDfΈzk3$"0LoѓXR4ꄽ$ˍD,i%WW>eC8G¿$=:5Un\GV55P cFjAh)oj L큊jf~dΘ&<&͵ٝKI27{>5)WWfgM{pJG3md+郪dPu*c3iL|jjܙmfQNq`,^g^+p% ]1rnDkY"ظT dSFsy3?O^^lͭ qE6tc|KʯܱIGά}{O\v !sܯyq yF\ucy{ *75|dz$Mdu 4'B  w6} j1/+v 61kٸ=&}d0F>dlg_(kz%2{*WɵD=*8jۈl's?:Zu\fnEgN]4[Oݥڰ;{v:tnDa4YSzMLO-$C}"04b,?﷤%:Gq=~A%lx+ղc;NG9:gEkI@V1|._ k=AC$)bm*!= c2v[] ^ Uӎ@PڡUKY_|- C8OѕYWT zLs^[FU.]к!fqֺGAfKLZ8Y^}njkHKF SK"q%25{}g22Rϸ-Kpi[9A9"){`ٹtv)`*6 p"z|F6nS5(xuAmKȸވ Y2e~"n͔?~jO01_qBpPǐ_:f ğ z#LpIYy:6cvMuhkq} oK7i'3^Oo)0Eox9_ayDbS">^tmۣ|f/֬zS[]QGw=hT3rR}K-'L3^왂j+Q.QC&uЂWm}ݹ"8D'+lDK\&`#=_.ERF.\e f׿Z4$-ǰ1]E.#`k<¶]ދXoF¹1gK"`:xL]{VFмhKK{T$>2?rϓT&h@@ִdʬv8@CŊ$$ t~+1Vç)rB)|EbH*w =Gvo[1]F0 LMGOw\o|u&\n+jT24ڟxւ)#}?ʦ2`A/sSlrr4 > 8KQ<9fD'0;9P*1:3AOE wmH0v悚ƤЯjID<,.P W9'jFL(8zI2DOԵg1(2j K 2fÝ2'7@ҀДuʼ?u$4b M-p׎ gP'̳Ջ.f>V"Uphg `Y?k+_(\|i C%YK{c=0ᎼKI}o KB&8ySZ*&$7)7o豜zu˧KZ5}%+ /,4c .O>Lj3= 5Uv} \$A"'b@ & sm ͆q5S u2ձ}߭fbDFs;?`ӍQS[: Aa!~n$7YMR'wq?Amnctһi͋4y/`θH:Y3%|c.>HZ5zN 6ޖTB吟0CUrG ~a#`9Zi"O?SmX$G } r(Bagv|?R#-PXh^x=Cr+>uQ1wyfTfV ajq  `ڭ8a ^m"/b)c,Is722luNfy;kaNU(fuf vNuۤ[&I 3f1> QȒ NI_8@k/Ei[IG_#jg+?q.6~P2佝ԡ Un-VW'׬mn^{*4a){I]5/v֫rn ⥯kU:-cɱƏ+!CABtP-!. ecnN2)4ƅ3d,!KJ}%D^Xt}_H: }F{l{]( FN]^OY:m܍Eu~R!J@Y=jٌJ c1!sWeCQNuNOAh4rJ EmٚdIcӾ_ivgf9MzrgF`kjʵ+7&ᅬ$I"tfU+eof֪M djR;^xp"h6Wo 9SJt5Df4n>?vECvV{{0OFV~bXu.xN\ w%24F礨r9+uΝޠ RjDlBw0+dƛ:Q ɕH)X<%u |i` u#)#fE%<g&yɊښ"!rČAؗ: [gnFpA6džS֙#Ձm`ds+? }]A$+NNUM7A^֓ ,ƿq,"q#oqfHA:!̢zHsu*2Ӛ0, qlj˖yQ0@ ~B; iQ_ɟIR0O *g0֮Ndry !u|&ݽR,o9PfPC%  P 6 3"SVA^\j퓢M*KҠNŤM" dC6ypGnE7A8Ճ;o=B ah.4>YPT [ =qפ23ݏ¬%t`P[@6Sq֞ͽ DQYrcPzh 6_jJPv YVI U0&"TuyW-@)((k c4%;@њ3Z}_zr'?QaàZu],:nv "Xℑ$h`:W>Aj[uy̺ >%j Y=9ےqaMEUz>6sE)\CgmR8Ni+1 SP-p17HmvBxbGF&険>(aiVqDy,O=$.o$q==ܜ[skR41+.{'5h:#V)@ Gl2np+ A}KF q8p͔{]}ڶY ȶtnC('Qk׊$,]ʃ}"tNNuq lH&k%~xB|r7;2T%Q<'}^'~gxe65}v9=,LX";$8k $Te9/ P< S?" pӛ 3wEXPڧ^tiШ˯/V.YXl(O@3hz$TW3r9>fJ;.^bD̳36뱾#QP#xp$|YRU4d)ؖA)cVR) CͿӛ<10͎?(`DqT(w@-@zF)nHl@el_єH,?s@SМa^<ko)iA@H0tga=s7Fz؏om7p]Ƣ~Hf#唽fS{& z}Io5KJcMFIN)90){O_SW Y<%|s9WY+'=y#.jGp`pppϓcJ%BX- ȏЃZޙ>N#YJNx1"@#l{l J͝T= ~%20:L&#asa0u`EW["^m!"sW*[)"2սm\Br>7P]?a$9D&Xq}lq7NYZU BDq',aYja: d"zͺ&2oT@|{5zpP4@yg[6O&4 d&1Qȍ[X|QrtIMRȭ N<!F5MO؝W먞F/8P 0&éR%D u8`Iz It$s@m*\v X7cdO}ˊf+".B^(lw9'(f;f>?I<l >BwkS_ c4[ _5YPN"VXV/v{B~{ *d@lC* E)0,- />I#~/RV0'CL2Jec ,(N(4w+Bpe D ~"| .F5>ʼu o f{`l;ch+_ P)ן񛲶'fyL"h9yLzyD G54sJ|ݺZ]xS 2N{Zt~)'Q/W8<\Iu\dcߪAm~*߼|Okbp|ےܝ MFۙB]U5n6p~ܸ_/5E3Oٗi`<3#\>8%~Lf!i)AG?`b f Bf(g,pא tm].vEIfd'/fq,;>O"}E QB>5.{&. ’6&"VSzA&0b$ŸHj p+%/b?ʓFM :7}} ҿ }?~t,B+5>93GO1$[WBU^TV؝/Bs62CIԢ(ҏx f {@oT(O'VL!S \(P4-R@Ye}|tN72*jFU}Oyu>p(<5 8Q;?b+/0zsl+z,o[ʢv%-DRzIa՗Q |&Uʠ't2UI-=E>P/TDҋbIw;d3c U]565fN6KJנx'whS8}MT[$QeW𕢔絊Lzn2IGO&E^T]$Ej:9:rtpBir9/F"|F:zS FP`Q;pc>zT^׷ gMnO iM0%PPtRE "aF2E7i^cڄ JTGT"Ndt|4f!hIPȹwWVq..fAfhA>†߻F$Q hFnm@G]/7*!hnMs6?o~đ4AjQ\F85ݔB2Q^Ĥ#wydLՠIJ<pC N>~]%|z^@9oJrMC:Bȓjlm zFkƙSr̯n"r))Ӕ"e1J05~dhNcaZ7%XϿβi ]"SJ&i8B箎 KAGm*þH<˭*.zb.j2yXo [zġ Ah'矧Ttb|8mvc1k4'5Xö. ͽ\@O:mЧ,ԋ =oH=*uj8݀nz4Bb& ״ĭH Z,Q~`:<+@վTcT-<)'uN?y)0[ļp.! BDckjW.̓6QEvM=1)?EgW`>z ۗa1?AnRc8Lgq25ZٽO_r񃐧#qb;Qƹ fzI h%tA#KP9cvĵvrzGY,!H X{껬?MR͗_ǰoE:4c8YGrI8Z_ ? %B<<4}OI:>IGQ& ! 3QK!,7OGGO LlZ:[K@Igy+=#ZU*3u*n4,ڲmmFOpYuK,`ފS~(bXNL Q[H'rM}*&pҖA484f}隤;b0Z+E(lٸcR~awoG|E "Y !:+eǝ:_a(ޤ5a fE,ir̥$~*[_|,_HU.i7~FEνMbpW VvjywzL(o5ɒ`ytB/ >X>eC&GsƂmrF<۫?fW" %).TU)9F.[>p;=ܤy9W;GT<5ZLt$7@ŭY6T׼B:ds7.]aa8?>Pۦ7(Y X%#۟-/OmR5NPY7Bk 1NT pݙe(nGF90f7d},+%Ҩ壙V rQDJeBdֽXg#CpZs{&OBcq2Z85؏O߿hhTP#Fˠr,r MC0g@=\L4SW!㟼u(g(nR ]Nt[-kr@ RCnCM]C=B)9&.!ȀSB ՙfDiɲ [Osod%CLd,m6͔E#6v]Yz.vh%LTA =yWX,,xcISoz05& \zbN+ ipfqg[$);er.hGrc̦Zg*Ao=kk=KA\ͳs?NB8Rn%ye[L e(p`N4#ogZ#Xvi[\f M@U}ө r7UfŸ"%T nsF>oj ޠ̈́r/f1/q#⠀C<$Ty3;Eg dd5=!p؏q%@ eݘuײs?v (uK{XsvgȎo=4TPF(,7q |F |$v PXbC g"$a=I9'q8󢍒SޚT iɸh"Cӌpp zpX`vWK2KCߌ0֑=jDgC1w㮲\ݢbO"Lnrzq xP*kJ.cK1=⟦%mI/|W}9W5y{` K[]tu(+( S%43eh7/qGPZ7 N4:2Aw}~#&O](ே3{:zr,[R2xI]Q2[ųXU*ɡY-aF"!j&rk9xi!LNbrTi3Vn20lXyч *g  `mHX2 z2ƭ'rq3y퇧BuB߄.eȏ7=sЪt*\>`RVЉ?O!x\̺/du켴 NS )ƚ7xIRAk>SGBVxR [MVh# dG_I,`#e_/) Qu(BJuq{3!nF>)Wv72ࠓsؚLj$C}GEoAy#7o3DkQ%rR!OJc%tvn2HЄu0‰+9!2^=ᙫMg3!r.lu{CMGJi6Ӥc75[%R&D⿋G`SyJ"(GIhF/IU1v bft@ތgٺ"V:Zكȓ#L#K411# 2 Cn{O뫲ANM,` g:_$ h80#1Ϣ jĀ;vP2pD1A+O?x6Ah/'$|4#`n=llf~8{eTd }#w73 )ECB51&⪥u ɶo~EYʬ7{[8rFks](fLo⳼ݘ]?݋ƙU~{K$ɳhRq5TLN$Q ,/C-L+ݰGDh9$8>4t P:-eM K$r.I4F^*G!+g uX֧=2~KO(Mqj} (˸ՍfD$ mV}/^\"Zk9Ǚ`6kK8V(8 n0}C1.Mh+]KU*?hjo_=P<6<8x5LQ\?߅GQʗ;&.\ƨrwӬN[pHH][,W)X<_\*"UwJ5H=e*ԜI :W?Y=hx9Y߻)/$nu#Q "/OfL XLl"LJ`0{2?b(][mAlGL8/;49^/~62֖boOmw 3q^`Anh^A's~oб'];9,me>/SLFFfc͗U<$W8OMSs+ ^dy}9OPk1?Ţ"Dʍ-bMM k;J52w t~ Aډ̜ qJNyF㦖}ֶ5d3cOl<<ؽY0M2(5fź"lY2eޏ1x9^^>y\ TS_8OCV?"fMhUKM"-@~fm&"HQ%^% dg(cO nM'uc,a5W!_Fm`rΗ/ğCݼME#5/^˖= ,}ݨ(ZqQ6v(VE_d2G3!;u]t67STyߤIc̈́]Kr+s"d܄?<|gr5=}. . kkQnٍ/($rϰ:"ABXZGD1 N1' 5܇67KO{m\JJ8 `bߓ(Sa7G&'6a0ՇWIU=-;ld7)'oҀA9zttidHΣJ%hB53TY RE`5D1O(+Ólwx_וR[P Y/-f.o"yYO(+DeG ,eX>ּeZbI/zR@֊n02)`XZ ZbxAM:W*l}d-:J?b9%lNP|TNC䆥Vׅ-fvҐLYҊ^O_z=Aee. ϞE Dqw,κsNހI  08A=8)5~OUEoo'IM6=g851K$q w//<5ֲrVEWK_|SZeJd};PPHʔeD.xr'AδYp&w2˹y;Y1ܪP;)!,|/;NVpBO.T7~{E"zx/&ݖg>VshsKyN(}-;Yp$>=]?!q1ߺ pJǾog,둭Xw=^[q_+  f^3%6ɮ6|>V2ƥCc>r@kcOO_4#P>s~p1ۢ8Β>-n"A 9&+2I8b_}P{nsR<#E6ai94,T"dRSP눥A#vOG<ތhQ(y9"b? ^<.WX{(s.շĐ/Po6qc~txuULQtt%B˪܋@Ch.68^ 6w:eP]k2LyT^aCiFzE&/vR#;$Fp)rĢp@#Nl\P1!}rV`r$G'輒 L|y!hmkȣ/CYUED\GB6}CO`]偔_0#\ng4^WIs 9+LB0g5r gi(hALPgzn݆DvV)QL ۮP%蒊"4e/m+?.FDDi(1ָAHI$6M;{}T/Zxo7Dܰ# t^2̩Rw>@ #xO`xM#d_@sSHU nK A3LZ] m7fRd/ҿR^b9@j1'} N6DYCjGO[ :(L-xB-6!/n?y H7bQ.SR8H`~2_!_nI5B%5[ߪ0YUiifevQ1a8i vU~^ݹrZ`,,^H` $lۡ8_~::>&C0Wܱ^%FmiG/5Ao!c qźL b2"tLmZ^Bk\^^PY. $c8):!(+|!m7Bɭ|.pjnE㇚&r)_HD"yil3n$ K.屛"E2+1E %)^NO9fFSfx?4 qjI;gW=܂@u5O%jFt]P$RN^j pBvWXpOG7#ep&q./VqmͿcQJ!̓\"ixk]'G`]rwf"uw_O:O \|z -)r{c)r+` {QvWV%_6 =YnS*Ly,A -9 &.E{f  6PiqqfqJjdoQP壝Gpz9=q.=,l[<+In w<3JW"r&/1R$e|:w\OK*]EM {^KCDo .r揇/1f}d ">֮vu;lȼYY \~W^c62#[ W8܏Oq)A}*{ݠ@)QXggu49ة_&¿> &Oql58wƾZ'hx*#b Y>"Ls4Pe\®cizgRݲ7S$?5uY IB&E#?ԟXJ:zJڦ*(ϦFv$;ex26rEǑr! g36%PjJώsgN׬ģ*fR=)k KSZ5@0J=ew/YNza,OK!H[pZ:^spr(" :ZfG}!2pr@vGdn~{{# ̋/tB= [y.^7g?-I N+6Bc'J. ;NGڟv_;:Uǀ3+9@Ytj i`ծlLkK^]S\)HMlFh&ĊZHgld~' y̺ $0[k?FxD@R]vr~d9œI`AHCP+MV@RTEw*,p%]zgUSv٨`7֐)+*PN)pE ZMrVkNQJ<3Xm:5w*ɹxeA!0d $J%hsnnMq3%t1 (5nKGFj,>O ЩH`8wZ[DH@NP4ޕ x l}rQ&g|/;yRZx gq=hlKM\3$[,Ql</#%%wJÚ'ӠQ̑ ('̅ZК<,8~$}SbVRQsy{TgNу7Gw"w>Q=V@d3ڐ幋 (XÓ@Ћ#09Ża6 ZUG6C_ @>[ESo(!aY$<{J Fe&Az'18PҖ LWt~*.h? l{P}(MN[%){zcVЖQzVTXie,>d!)hi 8ZJ~#(U>12'p%>ϖuGs=Spp}#-mו3JX?"Nľ/IMP8͗K9tS-r :/dep[~嗅! ͮC%5?4J{4oYxls$s+s0O B^*R#5AoL~'eq?Q'Խ`Cm_ Ӹe"8jw}3J[b3𾫌Vg6;WQ1Dv *YT,m`箈lM8PA;zz"WIvZh 1p\h)A1j&o-UBMEf5Yv&\yjM60iEKX%GI#ß?nwve),~8n2 ۀP}gwHOa}{HH)׀m}ܖ(T6$)IڻӻvG7mY҅>xm$ Wj뮦Ȝwm當v")+mQ+@VZ,| To{ċ{dXECY9UUU4DŊeh%ތpqlÝ~".;%m(,ir/(>Z,}IV[(\ymyLjoSxE^h7 ?o ,,DX~XTsȾ)up\X~jt&Rc˻-:&}eЎSvAcvL %HW{'&aMj&*plbC)ʃzH3&mM]ں rr8)iչfLJH2yya!@vn%CWu89Va2ka0eY]O1TLgPQ帕Ll:r4#, :2/ئ}ɺ[ҁ[cт[w P߿ '2 B DuRW/;o;FQpj6Vjik:ɂ= tHhh2oSzj}YT&W %7QDu!xΫ'DU ]FPe1WEUM^o氏cx՜Dz'PXǧ ."I$oGV9.;jGj--&Ip@Β|kYЏC`i)iiWа=h5j 7E?4ܺvw,}PUX#VrYLKKW(cmI fJ %۫wĄkXVcNeC w2'MB0]z0@$)v]RZ`؁VK/ ;I(ecնHKF)A+mlӕ<Fot% -8]t Kݥ\S)ߖ0pm8"RWOdB&HCa\6[o#T7owlR!z@ݼ~巄eGbU`\yp.kNgW,h6FgՋo{J{u=?SirWnHv~gr ch=p>7aiha6!YCт)#}L ۑL?tL>JR5\a\-7)[W o= z8,y6pI{vDr ) 9tW^+ˡuy@yCS w^> _+摓hg@=;GўR(Ҁ&+-7UͦӘ"ΪYI l4zBG!:8V%F)9p! *"puSF޴ Vh=f:WZ}hK0Rն6MTG ,ImS6*TyYO5BJw&ܻެ!X_j2r]dINM@HnyUNKR6|XeWx*W"-:EեYd%DEG&JP-!piMJ~M2KӌAM_62,vI6X/$Z@竴Q&*&2||.0BGNo}U;[ͽj;PV2|K ?OM2 $& BlW%.һU-"b}Bxh1ֶMyҕb~t"h?GXebq$vdWJ.DflvqܖAHvDA'* ,y›Ȗ#~~o$e-կNly!wp:VEfr@BZ+;BQT. ITaUfG |s̲mӵ]coJ&Oy#xn>x?[xyBKo-5M;-3ۛ Y*dV"5Т7*'~Rb *M%jǷE~~fe_W@^֬Zy]qy@ɹ;kvw-;%00@122=-Kᆟշ?֋t'NX!E2n6Qi/򉆮Iu=zjz˭gw=rYȐSEvX/4/ad-\ I\F(] PkP).S! (G%*H2J&k|$csV!w}'ńɣvW:/JB'!S JS@-}2ڻb۟~E20]RN xt#vq̀Œ-j8-e>h`LV^/?'/IMH˙eP)֋zrF1.f/[##C]qҞ@ }@J܄Uy#!Nw3vBu=RPX-ѧAtՙx|tE 3WnPP ^՝0`x1Rp:޲r*䓜<@*.D~7: U/y[a nh^\ӁX=x'{[mRB5CXi;!Poht:Mvod1KoUe,CY709%7NER:4e iЄq &/`{A;ۧ8ϟMfV@#⊲V{FOc.C,oT!Õ;%,Y*f1^g˫YW/Dߟ?Xz7?xHeoJAA\c*D! ֶ5";bQ蒊4H_|Re?y>vKf=T<H< 1Z81%-%AP$ pt `U0džR:S4~&w,Z.<g쥉i~p!х>9}c#Ur[3V-:,g v[ZDsX>ŝlS~b}AȻ㒻濝n4?;&e36rCK5'k@7K(^ C~-%NxU5gHsdp=,V:T`0udڊΨL2 3p :N P׏%>.WQ:Zw#MۤHPcBW|^`IKPѡ(:(8Q/BKĜ^jDgƍކ FyZS$8]cDžFRK Vfص,^ aXQPj{+:RxeOA·r 5{=?\,E)1I/vK=KdjIznWbw؅ythE`Cg~?cS憻偙 ç:A馁Y:E7mg'd'U;ɮz36Ъ6Z@q G혦f@ H6;-|σ~&Ocg*9@v[_RT!b{[wdybh/ zM!6R-G(NThK$ػdaP|,ne]Sc[*Wy͗] 19o1ʒS qo4O@RF~2_`d2[zZOZAmAG P۴Evb7WW[ð@[m~jW&5_z{ḵGIXmI=`uE^}T 3ssx EjR~'OKH!#UOT If0[j3!c2Rδeu07QS5QMAU"d7|K qX#Ysf}Hޡ_ z 4c#r6s VwϨCĕ`8B +$%u"z ׭hDVWo^Ѥ̼guoPa7WNT#% ,KSYCgѩ8zȹtW$twJ1.$zGXgRq؎<n'3 ɁB$,2X>^} aP6%>0NV™}iP]7LJ@AoCL蒏*a1KPt iĹ=֩PYbUTԖy}l)u~9{uq}IN/w|+Ǻ"mጡ 'l4Y򚑶8ADH@Lf9J@H})ң4)`*tՓu[Sx˓.wRVS,iX1JD8r,"̪OB]$YO/%v(5YFsng oĵI"U!C39xV Ek9)'ydD';m^pWmH!?hhr`~h4 Mn _{2Ғ ;\E[G:3ĵz'<f]&NZQ;KgrĮ_+pT:~s\ԁast=|qN_Y Ϧ[st :o$I ̺ -+^8_ԙe! $6H#,<ng3I\BW~oiBXyQG =7-0ڀrmwL G$nRg&? ]SK6ojI#f1=>o&MKo "9VALMl jy ꘽oS; TIx$.oÙVUU[[yeUI}[<8n;ɩgyI{{Z.}A( "DmMΝ !T@Z=}ߩ$0(P"4VɻAF$A] JmA~࠹I 7  K3]e, ⌚݉"7ӱ:] s% St_'&l*aI#WO{UbcN[sx \ZUK%`xC Zݖl.N7xrrt^SkSZ\V%2Ef!nu, Y7.&(EJ 4ނ+ #iJzZtg#9.U0ne"!+PW?gßƵ0}1PM}9)Y\pKp'C": 'T L+N)qtGЬ$w0vE+҈ H{]B4k(?r:&Xp9 1VM1: <\q Gv)&7>GQAp2ꨞa6Zշ/3õt+-yۣ+5ٮs93OCfgq3Vm7/$Vy06Ƙ빞<܎'UOZd޹/g>mR]xR 'o3-"Y. {X끑 ]8iZ7m.DRF^(zceP>,0[wMz^O3>3L-eĶ7fMQ ཹm/9 rY>7/ ԛ@Жm0!`_8iE|ČJ8Ezi"P[':k.45UTKO坱"yS`sa\cFD\|v1EDG H}j̇'Zl#ԏj#V ;K?CoWa &_*4KeRq#y#axX@[}T=WɅĬQؠwĘz0I8ɴ]֬VodU8B4{'pΔ̿)=_$ }Bb^{DjXnʅ![CY@B@7FVUPՃP.oO7)*5<9Т |äCcP:n#:]c Km.EWb(>h2O02j˵2^, tr!pD5v_ͪQ 3%ӟ h͖ p|yY^H ^8G[ zJYA~Gt|XD8dM5)Xbe](D+nln-Q]i%6ڛYv$]&#d{8p*yyӧ>Qv;ɱyRHT.X۱JUVDGT*,?n< ܰnʍs P;*ښx)T2l*ftu{^:̰4k=n)f)J 9ړ8,nގxߜKh޴!x(y~#Hc4`WAm+=6 f;G}zQi 6B"SNrʺ]Ʒ^`J~'h1y_X'2ͮ@/2BrOyDby#U\hC>[kj2cpiYR :1/S[=ŸNy؟c Ȃ9ce>1ͥvJ4A&v^M`D/I0=d_d-^F&9I[UZazn5Vݑ pt[I_n磸F~4ADmt ,qom|7xSlϋEy>DoI'mᲠ\qv OQY~2.8&CVOl6\үtGU)\RS0u38䛸?5EYP uk0>-] 8)h܀%R{SW(6dU/Vg6 :En ,rNd;m14n~|i/HVJ89;P)<^FEʅ7Tz.ZYkDCiIT64AX_2%~c&,IJ$`SYPګY 4芤VÍ/ΐccz4Bx_.WKkri5qNc}j> (4[ŬZ;sR_y>ɂyq[])n@p *B1Dz{1Ko0z5N-G!s(*jf3ahw8S1\29Y5UG:ܳuZYTE)~Y[V1*2YnJ+QG )]]E?Sn@'^FG&a(#4S[e z;|R˾(k"]ł5^~Z䆿z2u*ho=eEi$]N7ψǂhIa+_q82Z 4o[4f^VܙvӡbE}RX C^kv(r\s6s^_c*49ۿ_!ܻFQgH_ib~J\9ˑmZf DMP6(VܿVaf;mzz TXA"X#MKYmճ$tls.HjBp-R8IUx) ; l8+$TeBT{BV-徾9ɾ l3zR wM\d;奙Wo0D. \FoRm&&u&fʂA|azRգO$KDUA[(YE%rkqwZ'>a2ZlhQ%D RGлG3x2kZQ?_iv}V q ]|7%e8ޗGyG)P? pRsye<`:ې!xi n~|6l6t'\u`OaIJ}nD'|_ؒE bij. ן_|躐5G)u5Q쩱;*mÎQJH/UT+yЧf4=~@zl&+8R8ԥj>(JbB_P41436KiM2X" \ƬYοK|(66ͷ{Xv9z oK(#c+I"AN3QBvj$/wSO e(L#L7E=H*1bVD VAq>+څ:se[6- Jmy`VM'a@>.ABJ]c1Cbx Uj]=fjbk$kI2*M2:}KQlȊq~ΠdvY>0^B7s #aNp!ю6KDGa|6R`-xQGsBSe@P훠Yt e&xPI`n{?O*}{>4AȉBW:EHڌK@6]n5۞,Iъ9puc>W$ԸhEY%s˔>GrE5޶mX}τ\ɶ⫝O; Z y/C4$j|~.&[W18is\z JUrD+'v:4·ia|J~ w߭, ~(SC>;]kP' ]\VDeu;S6g%F9<8vSZPqK;`"u޹dA.9O{3 z i57ޒp뷾 厪́T͏U~0nމwf&>T5Z 4 zEkx{MzT^ư/C> *ҀkJrWX|Q_T< }iy>ctjAmyTgi9Q03 ^XggY)JȷzFGn~Vcg2'T[%F́vY@v5>&NB>$ h_h\ Ajԃ] 0bUZ]g; pMBQ6藰'j裱근MBH:Yݸpn.HDY̵ڥUP*yVB(6C-움 &NJnTdu85x&"U% .-Y)`(vz6QEWtX F"XMU1WhQqO8@f=^nA&a?j;? 1x%t0ZP8A۹B[ j,2iμG-'!th>=$m{ۊȚPTG ,@o/Y1XC$_;c\PO'.1I> )'N=hK=4Cj9+zW'K}%HqF Zcrк]f=ţYǃSBDu+Tc:!##G[mD[Nz׈z,oͣ %{$UmOe.8]޲] OHiN `IɁϖġ5Cp>2tQ/Ia6BYGd%eeDK&qm 폙ɑEihVqE$^:di}W4Ѧ#,TM]z:vc]݄lJ2\Yeܴeͅ®zs_EH*g8&LsLIY95ㆋ|BdCyN#Qrd*Q%4=x.S=c|kL \}u[ [Ə<\KNg9,h(x>j;8㿅?bll@Nd}_F}8䫠q *U[>C>XRq_'5 jgΜ4,&%ϒpO<@=^&4 k\EszUoM-^'Cmv&,Q>5YΟ7fS W|=Z.g\IPgӞ'A.ϊsˏwfGu[z!cTKn0] &0M镁U\(,?ze;wJ46-_WzwB;IP\Ћ9IM+2Xبi,>+x$[Vl)Z8L(=G}maIzvAFԲp&cគ{,}CJ}Wm(=dGe"'ezejY*4*낚3<~ϑ8n>AZ6z)b7aMC_WhmgATy;v|lJ͊{Rg4|x6ǴJQFSkӅXe Żn!1]klLvG=gŞעSuqpI/3 LCʘÔ*$8|_zIFAW"8%~q j^DDtg|io˿%GI2]MΞgVz,\7HM| Mp:0lRKQXOən37$X=aQ枲 qےS:}pв?"q#ѥHT`A}%xew/2W"Wk`I3m9!rJ'u:-_ma3 0$W>?@``# Y_?nouA-SI|R_2.̺u|`\<ϑ-}McldVJUQ:p-#6+fvf5yۿ&yyFTxcCeK }umAtPiVV!ن)0ND"Ia٬wZ3ۖ0<.ju 1JॾMUܙ"7Œ[ "CpKZ\i#uZ'x"ъk1W+/ d.R$>Zb K `M4lUәFw˼PЇ?cfQ22:"GŠrM(-*4<Ԙ¶#h1VOLyԶ_WؠGM8~WFr^Pg ?~?_!K7/N0@FW;Ͼ'pJbv1 6~H/k؈y1Ǹ9C)$a9wQU4 rтCG *A䝎f"€)s^\x}{ɍn7w q)ȏ=K;zDxx{A$RBi1jT{J7>&-\ *bo96~3d:Zʔ۟1 ,0|Hz# ނK i:gęZЦқ'0)'tw^-qF,_7V 0|ͺ%lzПMV-*!iDC ~N_? 0u* OqNR!>Κv3i|%;Y-j]+W{~6,T |ZC}fW Ԇ͟%SVj[ 3a7P BZ.|G1iPCrfO0ŋ}=+W|Ǎ[>[z)AA9jQ0y$ .ɋ_}\UdĔJ ؔ6npo(Ss|Vh$;;`kJe̝RJQ _!Wȗ;8Cx7*nVٶ**ꄏo--@ENACnOóBYẴKu=>Pb1d<+| tݒSn+*3Υ4:pz]E~ zξMedG D0xy<=3[ӂ(>ʅǦ=o 7JAoΰ+A3)H=p'1QY*k;M}Ȧ1UHbD%ѩK LL jkdW|ݓMT(}&asR}>]O4" 2U/ppPoIa e;g.2L^i4oQ_9Ս ~'矄p2u/5am[v@d_w/Ʈ\3_&6†JrCTՆ}@o7(uz(E\75Rwm]Ykhɔ[De9·5d tnέ]>PӰ%qVe⛘c} m{ܾg>~l.h1 {cG{V"QxWŬ;wi~SUu9j%p%Ch:}keXJI Lq;2c %d^y,Z"[+9%`&MjV~> XKIy_V8 CNGvb7!ҁ-=H*$"KRW> urvF=)J[Ɔj{luV-rعDe_}VEIPE4ly,[]_SONP|Zt\lV) nBc/ 63t݌Gd"ލ(a1fÞGgG C~U|8UG.4d]|֛8CWeRS5E1iLҲ%?60r"Va@ R=IDx:m'3|7~_HL^`D e?w{/omȸ u{lou*3nx禙w]dな^i|4ŎN #D!|"5I0bx}tsf=?Ue'U;UOeF21FDuh\h6&PeۣԗU ԟՇތtْszӘG%s䞊k2hʪfƔd(:yǖd>E!2mkti.=3]Ai@JmkUApu,Csg}<#@FTV^߽mKMeFImB ō 5WK)vHW㢊ߦ:XBS* 'lq8E05;ٽϞ$uh2\LLsg꣱ܖt)뷏ʇ1M,`9X ,-X# bU"zW56y/W@ QD^pj TCz!Tqﵘ x1΄"uT-bK[obRb_wJ2_P-=2lQOL'~-`s`E7oU-Cs!|Xu5jwaPPNvOP1E3q8@.Ub~=}D ^e yG@ O(6ʌr?9 "dzr0s%m0FwN5G]wӗC:{ʂB\;'/ E9^T?ƾˋЧBDYLYCM$L4I5ID9#~4sjӢd8tPaP%TBT]tgY_zh%=Fbiv Bg/ȪR ]>9kd`Δ052b#4%#Ċ&p}JmNrJtb0;g=w akq5,(~%ϖ:^iT?ױø "0Ed6g0t Wt87?O_0O CbcyŇI9|Zq4QkJJmc‘KӮaRA Eh_>$<#6-Vb~6j DĀۉn]q}za˜y`A%oD} H +*6p3v[{aKhX͖?ɔ_P!kp,;+xOozlK)Ш"疡-?~iES`L|qC\an:Dt_L&ɻ;䁉 ?\҃!yc|9~0̨de4:FR(CW4Sv X!*9.Xlq%dO=eOA<.cQgO/DXނRWqu=5^iQ"'hrnCyR1džێ1D. m41D_8ه'y 0SĤ0y8`1"WImA&xF:TYCuDc4xoo`֙TJPWQӄWl$"޾irKVz`p$6Mus|ؖ5T~y4+v [(2۰7֖_:=WE&`:%s ܣW]c7"u09X(ŧ6dQfcӑ혖뢘3Pѱ%Ju-c'ygZ5$+O{Lm^MleHd0Va1֟Zc9+/yK"yw6/RB]դGCۓ][K@V>Ɗo_2 %9틏[sH{Y(<=Ϭ'OgeNyP:?\t ӊ %~+`4/I:%sl|[UT [8iRm7_gA5T5ܦ$AcuhiBnΐlOjǾ4}]aK)Xbv/d# MDx{PIb+&+z`p9CVrEs*z ƅ$LG0V>f.;P}ĝ< _dY)%w._pU>nj<3 9,9 u:79wY$ f?as'^0&xWҽG[F]X>TκYyyw]*;X>>%q5XCEPf 0 Cg 5yDsr7i>#i/.x0>Sqh4I c&e!7W'6Uei;yΚi$ۭ/;9ئ>94!==;VTwE-TT+ɽJ6l[(xW-1L& dG鳘x {g .?2vV~U^Q2K *#9!sb[2-f82ıTJyq Qw҂mU^DmFYåW i Q:`K^5P=@d1ELd '1!gz#2iB p6'?x6[X+eVۈ7%?=G~ L Yr=Fü ĤV)&権0OdދV-ƧR8%2~.]Dm.r59 e&}n teI:BZ,}/V$oד-y&<gL?-q]Vʩ;0jM•ZyWT=ҵ+lKԺEːfuC Ԇm&/2$jtrn[K@ 첕$!+a|@ ][=kؓ[HV胛/Ҕcf@,i8y (Г+!K/K-D/5*&`X=1+KץIk҄F{*B݉h#x55fe u}(?r3EY)&IT£*g\Kꎷ[/j*QVT3׈uQs8Q2OL C%dk۳F<%^gTYX֖!P>1B!̃DH= Ih+1H`Pڶh _gAD#ULg04 l![Cк?qTDˍP Nno=ϭ;vsEK|2Hъd5+.EQbvf1'#]re.,}%!,.UB٬R#{Ht{|,37uodV{H='tA׵)?>ڧ|%g?a.d8w |۵b!CG%^o}5j Y锟@]ajS nZ]24c%뺵J!fYz7jnJyʟqԚ"jy\ "ՃEPpHno[} F[^g8("0 60Q/ZȾƝR>N]F j#V?QGew*{_`t^GVίmN&PѼ>FD-i(.z\`YTSt[.3sЊs@%ԯ-YUW"Lahْef5d1c /O5]P\BY*]=ȶd^m`Omm$nʑI45ly/亼B)˩kOƿbHFO>.kIPzQ< g Hl3% p Fҧ6DZsWz& Am?E0 96;pĔڐȇ; h5s;J.BMM=G3r fg(5 J~YPQ :8 ν[ᘪxkT"X)\D6y @n!ݾhZ! H{T;بҢf1=i n!C4h|dc̻i,E!1b^G;9xf[!WKi@PTB~ '=T VnkH..U +%KASKȩ'ۭ C?ˮCiʀOhe 3KnVgo{i;NQCӏ"ō_a ^;s60!{7z\!E'VZRWLDe2^U/06^/ Tߕ9O<1rE ZZ J& r̄PkBM90QEw;ETf tA'MrLU8iwm}O6DvٛxW,/Ssv \κh=>VӴ_y2*IAj@԰ ðE.+\,25g^yC|9+w}uBQZnK։p*%0&*r{8dmZZ$xJ x?DNIC9"E}`wt$n=\VUQd΍ %-=H-L> PnǓ)iO8̞&WNnBXr- Ӫh%?)MoMxH|&@,gĪEP*%*zE\kٗtgna΀#Y*j{97uYw|:>6' )Jg1X: /WgKgꚶgW.;m08Қ`v~ _*?={.znʈev5Mθ6šE R4K(o8SL#5]]y |o1`5UoIOT?/ǃNw|q (>2e(B ] s"j(bL7G٧CE"y_&em]ZsSH=3Z {.E!e~>@c>H{p/K}k x6ްFq2O]5CPT W`k1uIno6iZ)eoK\=|Chy>oǮ38ҰIJAS7$|u&*+D[` Aau.!(3tw!;xar w%*u .j^OvwcڰdOTAu†hlo7"3Ȉ5ԅ8we[ATpMs̮+( 3 LoB-w`yǦDvL)60r8ӏ9#ƛZG:* aLLrUvT;F?Z/YkRSoL| " I@0΋*fxCJ)BxXᚥ&M"nfPDsm bVD_?^M@s[ݛY3=Fd\7D9h7[eHO9j@% R;NR>@ &S5rkߛzQUe>7r.0CL{B/;>".pZHO'vk = 9xQ!~muFFʪU,ΙS;Yߤ $tD@ܷ e(17ߎxI]+>b85/P/KHz5g6ؓ rtPe7V2z4 b}"2 |G>jP.(o4EAWH⋋joa`9}m=;\zn urS3zc%K$g|{gh#`M8I9F|lZZMT=v)J>L˺ sѩ0|v W EȿG\'5:57>1!ܮ;&ucSGi1ߴRO+5}N0hesV+՘*ߴΥ٘5}K?i}*_e4yeN~x!{r2D+M66F4\ܦ+hZwzNhJWct׭{\RV R|'E n]D .S$hmGcR('.Dҹ؊W Cӏ_6T1S`q=K+ XD=hw5ZE x pܽ^۷{c_ܟNB'8b=$Ѷ$,CQ"L5XXtQy!>:(0'*R篂o OV`ͿWK)u ŶzQT*0yB#"UQpĕi0 `4{5v*YQb ~dشtԄU2e;PZK9(TTMXhzUR[\N94O-v\Le\x7=KNS_yPF6VԱx$RóxAp>KEmLuUB]ˊqJ}BjoE-7t6@Czf#cDh% lƸG%oi`۸sߘnLv08$@Q ]A I e(/,H}i6t(oWPnd}?q3(-qEPwe;wW=#`ў'[ÇYRF¤Q緮50ֻHZ)yôt#<Oҳo2^.?f &@6 ݍ=]?SMHrokߍo)ysnSHos'Gn1J9?jSb0ڹ3[vS"Mū%\&(s5sw.:x9OQYVa1&Tv Scs409qپ! XꀭQz|l/u\uh~6s^~V)$-M/a4=qA{ju[h9\mX99 ZPχk=ڈ`cwQv0tDhTc'kj׵al[s*^sT^: jY;2Bʡy/8)N:o,0>{:pK-t05Vub_"a,)0KO4ɯEL% \7sgԓs\Z˭wهS'uJd9vhz_"@yDx[m}x9A9yE<”J^*{%NP.C{'`Xl+jzJ%>ZK :ېՃ-CVd;^_mK=8dGuM'{u `^o_ AvԲ =c_-⭩IJHt kMBF) 8W80,,qul:Y!5q`@47ZF; #~ k٭\oi •N7M9_ç 8,k4ͽ%X̫]hȨAS(&Jowа8^^4^^kGYgh,pcZC6c0ڬt?Z9hhLH} t ez+ɏj^KH>g6{Ws2oɎh*iku(tpkMז߿9E|eV>JlJQԥ k<ȵWN=_Ѱ#7I!|a筶41vxtfGXH{+{.g;]6 .c߃s!R9ZR O܎y|~=7ba"1Ǝf:STzQ,LEIDN*Oim{tA) oVƤ >tH=?΁[|(y7CqPNM[8SfDL1'RxrH)4cDe}?s~*Q=. ٮܸH ݏ0c2D3+W;cŤfфj:=}OlN[t=:\P|F/ɺ/OR81/} -F0Ueo{6S>NocI㳟3f#Cu@y<.: rtu}n +|]-,;"LFg}+7E$q8fv-#b2pzٮqu dÿ́7RTφuHKNdn6?H`g Bw}Z5~4~ ([+jQ%垎_RZړ_uv`g>=?Nޘ"8ܼjqP^ˏHmdۮLah97~ր "w1L!8ePh`PvU/.ՂĨWLgwuh`SPdTPwbz f$mz֗xw`NpuHQR.ܴ<|o GOG1҂ɣ[yn¹;_+#yXiU-,uV$YH%+Ǹ݄󍾦$iڗ7vx7gBwt 8xfF^f̽|i~.|4Z͏y.DUy0lpiSĻӿ~b!Qܑ߰IƸW\BVmmDRJ0|ނ$Y&6.4,slߊZ#A^-24e͝ ]>d5OAs{5YQp ".q_\xiRYۛ%s?Lvn]+kHXܚ2qGrHИgf}dMZ>+Is a9F "?0(a=`fy<*%mBS-(ek8:οn2ݯ {s:zK`Ut^aEv=+c;l0\ķAY O4Z;R-ba.r}4\z toe68l!n['!-`).IX.j.~jLdO'Sz:0Uhx: .Ma.b:mDz42anFmz}&(zѷ8ӂSSI~.nAw^ƒ'fXEPrұDȮ53@4F\(rNc 9N$fɎ&v A]J3?VM$dFba^kfuH%bV}T}pM4dP _gNFN<~U_FAi,.gT \n|T4T젢sqwP }kڭzzq-~=[_VrnRxv)޸5'w;\Z<6 t#!꾺#s 5];M=>u EsN|]"SQX>&tJ{v+ݤEǷKDm"|Ii u~?LlI9n,Y7h$bu6hW@ yD ÁZKiZ-u WuL# BZۤ5ďW6ޗ 6m<_Xj6 JDDc:Fz hEjwxhcdǁ0AV|^@1"Wo\: 9 \/P Sv[H<]؀:KAt![9Sgk$@ $ !DЋ* ]—$V rZxA u g{.-L˜>)OG/-3Cl>E- nTH>xDzqTwksA`P;~4GwL5IFtH嫦~ ,}<{[ė7mB}BXlҷ*]Qّz7vGA2w-\5ڀݨOQ8]X4>j򼜺NOt Ba]3:f5΁" N@8 ĎMQ-cRrT|x k:ci)gVNTd ڛ`U>ˊѭF&=G16[4xr[/3fY^UFHysNQ$1RTҪ Lֻ1ܩm1'l|^6H&Qbm*g|dK5R}h׌l?r̚O{\"gXVEj痧^j^&)iqd/+]JgCD0rO\/8c̓3ƀRS_]b=LVAVDe a%VoK`dz޲˛H&-+TR b?߀|]qa#JEe56rqUp*Dѻ#ʮ:Hid|QsZ(L@U`O-JWɚjdesX[/Scm_+^"GMsMfӼOn 3Eg8VbGrp>E\B:.&whRgF2:UwR!Nc$՝&zIW vTb5K;J+N Z|nb`!(U|Rrb_,Uo|snQ$}#3noa!HC= ^ sA?ZN]2>IT LȊ. CC.(M48ݩ0;:6⸢= &xf }?[_UMjwbٌ?$c 2P?89&R?SrHiO6#=/^l_AFi^$.v g!F㬩1,g))?[`g#O/ZgંZf; 9XbwTg*]~ۚՑtzHCzytm88x~icGkKA "P+,I`@ `Q%;C\ƘƱ5`B]Y9/mݬͭ嘉XDug@>Η`gdJUM}CUy1N›Pjg ]_Ѵ6M%,N!(¹{9G3Ĩ_iΑV@Lz4H; ӓEv~voW~j[C+"Tmd<8!Kod̋q_QȮ=o*W|JJ8x_gA*25B3D@Vb~1'T ?ޤN=.$\d< +(,gln$6iyҘ|"p@uxF!'bIFz4DϠ˃$vժ'Q O-JVۦiuqCוQ-Z؄дμQ -]fі;Q'5PX; jOݡM񾮏KZӟK2yU7?m~.ThI̺MA&\}o(Y\p6hH&;n׿RR\'B#CF Uw+̥ވC^ۯ)iBǫt^v׫f2:4!Nۺ~)G[ȝ"yY% &^g.Qݲfʼn ^qNBR(ǁgSD &)'JmUk,7M9v;ӵ3 G*ARջnQ\m"Z8hl- p}(U, I!Ӡ딦e g x5XIwv{6ujNRj*ÌO8SIm!-𮦔G"U4_w, )$ɅuiV ܩ0 Ref`~zJ8PNVmg{GDȘ>M22e qt\.EfAVx(yeYhO_z${%AjP N ruDu< 酯~՝m$͜uM, OX׮z:OIAv2|> jGz)>n,)}bZ]0vb=oNHr k?jd1pTt ^6o]U!)Ws :.ߢM6dd1y 'F[wcuHJ>Rpv d7J5s㪱tۑ{G[y''9"5밇xot,n޻"P#,y.4F4C6ʶ Fc :$e!:|TrZ20 $mmi+ir~U5s߻Nhi ;(cp3nV߂+D#QA!EAFɾІcO*eA&vBquĻ c> +4d72 ȉ_2qeqE),4G5[ƛ7hKɞ,15W}TQs-.@q^/U\l\O֏5 Ed݇KF&U.8ٕk=n w1ly./k^>vL١9FCԟyHNyf&k:ӌ߸CG0Q(J < ~YZbށ/#WP dG/ڞJah_c릲hQoB =im}X>D%ҳVs˵2Ƿxw3Mz&qQ8iBiEӵ?ӕ26h8GJgue݈\M+h#nIȔD5lLaJ)sĽЄNxud(/.z6Ho;+|ޥAr~h+5)v] (SY*w`t+dq[IL63˽RP~DU׿ܫY!YKFd8mgX|;v /սּ7u įZ?Kw4J9H+[M8)t&P'Ϻp6 #3Tҁ? º TzxFE$GrfaAI&>Ya$D94cy? `OG̺c+YkC 3ui]FEG4Lu?MR0ǐF*!7B^ܬk!``6iOYl9*7GTFYho ,<C:!I"4,"U%<^IA PMUv&qbR,z3mF0t-?g[g|y!/9QoΝ=U= ?9aX}j. (ڢui)'znlp`PXP3<ցsÉ@lHMSѻkuΰ C6Z33^4w}Xu셂1S#+ FlXa89Gڀy` H[4|Or4}N  |-*~iˋ}PWSJ!|uZ @^vBv)]C8~iM: HFMAM$f0*|T:^]|I"uڡSrznMfZG^0nVN Ӄ0`{2bf -FBE CT o{pnOG302߰z,M:޽?ba+Ԅ Ad:;I-1(XJp5L 7!ˡ3tNJgDs6EW9q8ڤf2 3O%Q+iSsX8  > bNjNc7N(K gQg.اتCk2>yƂ ldo59PTFoL5P\{9ik)BwbmVjR=eOɑ͘%h7+/e胮.WMײU[g0RzF"8 fb:u _IWDl}h5>T@p6_ ! 351aƑlGF!>՗ #383u<9 1E-M r4WuO\?+^_Z?JdrZ}p?mRu}$n4{̃'}>KIASumr ړ5vvqړUյc]'cI{}z,]no-ܣ9&)EGAJ h|xXH5X )TOl(#E_uyej*>> .`N(|ɞ <.mL${dmadOp,.(}\/Bَmy)$*BjBS^Gy Ս(>m#.?@rE| i>)qooDUE'~KcK!Z}3T) r8x|j4=RIc`i}V\Qj< -lʖOqo&ףW--\1jם q(@Tj>Fҡj(+*?Qk/e6EpNPAG WJW,V6rvܫyňտ+sR-qaR.sOYU )|ljtigDYXg4 V`Es i%O!8w(X==ϙoS5 LMS;jL_T WM-olM0-BΊ-g$ih ET4^`p ԔiZC N"'Ӓ=w$_0V<围YlSU;aM>[_ aŸ~<ttt5/?*˛ypDx E;Ua 4ZI)2,#H׊޲kjrIɐұCAx:c P`ۧCvlW?L]U{P,)l܊D 9G]7iNǴzaLvl6T/'EFk B SZ=l<&Zew:EnnHq{*PJ>_ɫR PIHQV“' ۲z!5^;|<؟8Ln;_<I@F:dvz{  N-@c/F_M!i!FhvmMG`w¼ R\*a=tm.Ϩ/ܬ6FrK/Om̢H/U?`'n/8k련VŖǂ5ѡq>C󲈊$E-oTVLIdˆ%'= . ̀ oo8WنJqN)dr8SC,ݕ<"M DA;0=L+A29lqHKBvlDC_D榨@-%$o?ϼ-'+/ `z4Y[`U-Hy;x5(=ks6 TT(ce1y7#HUewWhMاyz%%Dn0gmU߲Xn-v4_S ӪJiOjR ˢ߅w d-ъ..w.EKZL;@ސٸ$< lMD HNV'G$TVH7iMm.AO Yخ/tR ς0tq%+&? K0|(UFl-:˜BYe{Ud\P3Fơ*ٿ& اt*y{/{e<[ L?lY#LvA|S ;$媄~J_Gu|"^v{nB̧+agct|yt5_ܲ%Pê6ޘ,vNXid7W1^* HFVB{>Bgۜ'sȡ,Si[`S,ߥz‚;~ѐ˗`zCV \RjNo esQ~Tٴ*~(f~z'|SbPwf\uqS O X$S\SW,9H?4.̧S:#c[=`"Va{4 |a'⤔Q1cY'BpbBi{Z«0rۯ3_Xzh14tu=Vg[Kx()`@r6q^<[nUU>-G4:@â0;tbl):]ݮgE b^:@͌PU .iPpuU߆ineK`}2Xd;67aivM?k#{=-f-n>^.S7axԮ 1SDu|<( >i߰ |1iw1Ά>ս%Cﭑz NB /H<V B:=RjdsZGiF|}Cp"Bb3/CSvFΓ9> ТkfUNFLF|" )1ocr??SMh~{Ћð*[WgVR6崝>? V1%J!6tڜޛ[к,[U2Yf))DC譔R:|NIƊˊS+1B0A`ѕGοI{ˮ4Ou◓Sofuf!Ŏigw9tS%(D$pumd/iLϷZ-S56KO-v#wahM{$0OF̠7T>P>/̎GehM:vڝ[Do/Ԇ $َM~YIwU]JE@V_ "M<'S"Y|9 )UnNfW re۩Y2) 燶S0[[JS!"\ 帗c<CsT0KY,gS#6rA]OOlב4GQ8ҿ* hQ1OGE >ėDf]AJQ[?Ox7- {8N9Y :BD?`BU֣p<֘x RbSQl!;|(`w$ehH;_\^yϘF\Q~\,zݟ◑q.Kne"dyd?KR|0ȤQCKu A!+y21d8ͺ k;Um &S=P zs[NڰS(ҀZbwTdiB4nt҅RF(N 4.f&h !wq{ioxZ +-PU}̳x}$xCYP޼~i`wKPWX&OPpޠ%N#q)"1;3rYJHrژO]WO^pNoE(Lj4PS|HBX$}C\rޠ ѻIA\l%O]Yo~GSL]JyVs1ΕRݛ }aT1Yg= 9[No$phZ౎" C4BYtO=Fleԥ<16|.En:}@˜LB)`>Jxh|mE? t%ʪ@SNb4cN@v`"{==+d)Kr @J -ϒCZne"APg?-S؟άj!4ŔҼMM.vkΝBp*sΤ<@+6pӘd-FkRjaNGqI{cmUЄ\O*={F=}Υ!)1~|A$! ̯| IRꂝ>#0n Oz\p\a=.qS**/$Dfjb)#? ?wD%N7#"ST}b[*! DZ Q8^wn5*d]#W" ԅNڠsr~1$)UX`/c<~(+Bwi'q-?eٯ}GD6w@/G&2e4&.N -'< @|XTQ79gDJh3xJlf8XzowEZ\,ZĭcVpEAd PX5fkDN\'*31pdH$AiĪ@@en>p:?[.% pW[+I qÄ$8J/6Mۙ S7Xn>=Zu_;b3.`}~KCZb1xazʐ|Aq?BMdUm5/PL4`Z=o*Ѥӕ yue^mv~#MO4 Ǥa_m|kCN\H SXXԥu_k_aA>7O@BPHGWpn^yXjd|ЧTf$?QN.k>B}MeTc"R5yQb1K'.?@nwġZǦzphW!gʯ-vd`٣︦c@sWlƀ^wLr'i?-R+ R];%k0Eƍjʛ_3u\剋wꙁ^5fNIkUi^HQ-AE#'_phSӀEt,փY6lmvܗߘ"qH4u@(cy%Ўm͝pmKRm0KPw';y)+%d[#x`ݙ0UXe F J2G<6QVxߞ7Ϝy\I=}m!Zн 2|Ilĸc 2~c{jHV亳$à.Zϟ?ʹy? }b(EwޥH&uB" z2A4R08y'$y#:PD#B*Ʊ`4Qq@KiwKY {_sXXRo*={`Et _k r'T1e(4Aل=eKŞ]۳uG uo*wOpvHmػ؃A4ଭ{ $#t'b`մLVo+L&u_\ [.PdSعCXqQ=m{"'{'ߞ4,o'uе':F'">yX>&™y(NE\2@=.VBkjp^ r=<`/NXc5Hgp )e ~r[֦J@&z^mM׵` aJEA@<ղg@wg< ]4 A7nZ1C6es(6")'y彪.BC!&I0=(F_~s>~DpX2Lv_դhiơST΁Sm }6ee5aɬHۖ &Jd}2Кd C`{i|_ HXx^'ïUTpЈ]\y܃`qHFc"q':s,x˰ݨ]x*”\b9-WjKFhbmʷW6* i49t9GQ>\HX@],lӓUPSMV'A]cbec]%k;taeOyO#MIX]\ ژ,L0.㹂=G6_1?&ض5wʺ3 sJ75 %nYT60 ΓL)#vwx GF,9f@[6XTrEE1R5X2e\v5K~f. cdzVoDU XήzwCfv6-)Ю|F+.A|>;|)&GQ\z~?}.@['n13@vοV@h~1,}ݱW|a'8Z9t`hzQa'fQ*dwzL)o&ݬEA)320]<+`h=S1GFȖl'v1O ._€DY -㊍8TY%6בA=X|q 2|Oܽ{R4g 3h<~Yx} VjFɻ Sv/ū~*JG|RܽW9dX[חޤ@awGd2r̀-Ǐ"X,eDHui-Ad~@"Ss/֑(Z:-QH,m𴄝9ʭyz5S*rk "k_UhC Q>|gH߷5Kՙ̽z i9yy~nK. MѠTK{V($Yp%5zu 5lk8CwIst{B-I5Qy>9Jh0 ф\L+|o6ZERo?<$ 1i겘6vE,ߖx/4~[qXf6)+ 58Qt)3dAlAc\DDFK kϠi{JssC⺒2J|F}Uez8̪GrC|8A2Ilz(*1`7[7r12,ᖼȚ͟JޮCg Eȴf+-PBgwU\YP9Sq) >dTzЧ&`ڦs2DZA<;4  ?Ӥ;W-ϟF)" q }&(>Pi۴f1?e`JfXLGߣ" !iz=9<bUتjUNt<=H*Ӊy2]}4ȋ#!JL,(O0Ӗ:ͻ.s-d{Y[-nQC) 7b])a\x[rtTkq^~ơMV }L2\^0 YQhlQ_\9AY()UF6/ֱ͂!NRݭ<7؆ӛ'3f XZzZ_"}VܣކkUCԈ7},b+>cxVơp|.\B CJ@WR*ya@ؾ2;M.#nS"M/ή?˿eȉ¼T·ݹVppP3pf2Y>-wXn##XBn؍<)AP P.vbOj‡\hEq3[NmxSd #]>A2L ?b $ʂ$>"+YaU&\${r.D٤׸z]kv^rKL\ݽ8Ac=x;~ֽDƕU4+wt];g[͇餇3)&!&",79ڶY2՞>,S ~%wXSO歼>+ h /txx;_J*X!WQ86P jv l"U\2pQе$srk^Oպpan1Yol6x7n%Vt`l)yw/-LHŜpBÖ=0qY#Fʉ -݌&Kz;@#.v9U(NjvM:jO~W {l7_<۽/J>ˆ{X|~n-WId^ESqqNI?ҌV&\ >ߡc' sJ߈>I?.tѶ~44{ͯJ%@&@J^Ժg9RU& $O~i #k(gIebƐ b>~frVRڏ < 1N@!Y$*\,RlPJd j_kP#8y~w}g&Jw@ bL^gX*pYħݱ6I]H/[~J.#<Y(H7$ftOK"$v4>"̽G3_9pKGKY6d\AܩB3ΚA8Gį*j`[Njğ-ELE;fq(4y:i1c<0xyPW~P#{}OHtu /KmptN(= ^%5nt_w l,HJุO_22ێa#=1:]QÃكq,0 D$޼gI)"J<䟿.\JaCv~2gJ&LfAu#UдOEڿF%0@?zsƊi)ݴ3MP`}[ n#ٿ=.a^BbrNӰg jZUc;bG"T3;]9L5{}0f˵ϼҭl`coؑ.FYzp nvc^eنp+zWInhjHf?'|]9ڎ>CĠǠa@H?KM?/E1 ï]}.a[ PߛyQ@/.M|&cM}샏1[q8i7:sUzWǸJo^=2E:XBZ ^nSx}g 94FC6FDAb f9B 5HC!g^k R=wˢ{t.Ut\TcG hohB)$$*Qe3obHӒ@[b#%-c(,o%8kZd vE\&^#*tbv! G3 uAQ +٣X.Qi€6n V¸gĬυlDf{K2:~Rtgg.H m1v`Yw.Z?à O{y5@ e"< %ύ;"A|`UЕuoRJ%V4ޘ3XI~[ɓ/KIRU_,O-rpA່&:\nH"wf($N7_(b̍?}ˆHkV|G_ ҿ;Mc'>Ed汜N]s(C4r;8Efoa[GK$ T6 :jr4I ܪ HaU89~IJ x+hO'M̴eXxYf}5G@RGGYhv9<*ʙ &J"_;6̀n*Fxp8DKB|z#%:P9uv!ޮXǡReLfʌ €8D?Ì騌ˍ@.&B ->۝+Obָ {`SOk$pn/T#Wz"P3{b1cjG3Qn%XWzT K?G+WD†97LY='MTLd{ؕ>o.1zzhF(e} >?U䱿nSR*)Tj}EP!|OK\5Q|Lhb}MaΑHND_7b&~p*-+}r/uXôzZ UC{#;Kө BǥVTݴ0XyXL %)DG)'\ЗչS~O0=Nr&3Gҩk|Th5þ[I S5ʍj H ²x4&R)s=ح6%fM]iV+L!2"#?E rTK?6_&FwAǠс/O7gOQ;xhqهE/);VR,5)c,kDT]Ǜ,h`._/77ON2xw;PE~^F"cMV=SVz%Y{ HoXXu0ԏ;qkrl {LQ :< !>&ԒBJIЗ+[lS!⬗2@5lh< jr꜏;8WaŀQ~iZC/? %zۗfTn39AwyMxp\ ajK)F7!`6~O~ɕ9Y@~x1XlN}T`s&S6YhL,ƕb;K&˱j/ZFR93z!bE;QI]rȦO΂؃LIg?hVn#۳h3J6MQ{cޥ\C\cCN FUYņiO#,Ub%r4! sxghG?[lj+t#1raK$5}vSM eҲ\7r"KhAqIZ’*1zQ Tn(DdL}9Opj.6ϲAd3\oRw68a~TJcxy&Ssqpi;jfjnTt6kCet*'v|ZbSe%`™L=>4m< :A7k4u 2"^ 5.r,K5b [_sJQVwOF>-cB`̭b ^c] ./plGW{=ӮM#z?!x( j5gyqm]`Z+7O+/Q-Ȅ? ZPI#r˅ֳƶNo-]( yF>^JعsTjݽR(&sw*)D$QJ{tWd"љqx_ mCӲq2rñտIbcO%bpYL6J"x :(Ŵvʉp o}H+HBg|5 ϠIŗL:Ť(bwi .weWepJ}F)\w)}XEH+M! }~\g `W9##x!Qo@A[xrrOJ+M٩xKgT 7U-mT* %= > s)+!-So| QڇE X'Wt P X9(_CYr T|Z>Շ:d r8#^bY68J=S i<[sL!Hn#qޗXc?gcK5P'd`J੯NRP{謢io?64DG(C6%f J`Z'+6K` "XvqJ4"_D&$W@_=2Q6* ϏAvyqT]9QPyv'Q ?WiF`0< a2!إԧʖL< 9psu-r5|1`怾&f, pOpe~7|9Og_W< xƜo.O!?q &| 1dbgˇ!74eWɵڔH$Ot:,Zn,'o/}|f|!} !`5<,5>싦~SpzJs um(%B Yz"ScM!Hؼf]]uRds)8 =\q+L! [WQ UkT!%{=U"S~+`S,B4Z*䗱&#|M-ۗJѾxޱȠIIQkMhY B\$wg/?ufQXJ0SK}ejጼG]]qevϕd.Eh?eofi&=)ڷ]{O;@UC彛a>8R#1;[\;`րU-]TqQt$r>iBpI%rqçz,vrV@eb{XJcPJdt MJ.<8'9 S8"^IcM.RȰbHQhlXv^9G1ܱO rjQ=Zk5!KTˬ2Na&Z5]{Bkgm@*vB23Ov_?s̒^QDi&0$pZ\ 5nK8]KZy7̴5_6~q󽪜5ӴNɲѴ֒  ?' Y "zߴi; Ԓ> ybuN:5}.4ϷD?R m*L/GEq^-(ݦьr;z~K8ON0RMa"zr|R^cx|Zj9ٯK? v™KX 5s\HaVkͮP6WP+ݹ>70OݽI۬6 k7>+/Io,_E2g+%&RĒPPֆD$ ;57d(=F5ORy`lSۆI:,kS(W=:bYYu⓸ywD_Y 1R|*x(Uo~i2efZ4MU<kyAEnb]kx%}<빘c .@՝ mȑ 4RSsg~m&X*iFqN/-g9q87+LY㰘]hxŵTx[&U7+Ѡן R)D̂j1;of> aؖ$aw*uy;/f^,BT9=}:fM8 .z jXSbxSyPD>D޻J._f70Ry>*< HI}"3e%lGO51 B[$Pz~u]pLFr0c!<z | -LL5bڤ{ҠP03f3b&=pZ@vEai;e ŋ#]WLi?Yp9V<-X;22sN|׎f{u뎨Syۍ-=dDB0oo1UcgBJ̩{@R-\z^HsC82NuAj`&z"tWזD%Ǯ*$5. 3xnJ F 2NV߷쵰$t 7MޚN-e Q&{g0w1 YM`1AAER{؃"iMGz=9*fS? Sv WDr"Z#}WI|2O_B0kPqy԰LBDFw64FxO/`VSAp PTCT@~)> /SzIjyToǚ0)ђr훲/$d@Z-ޚ_-"-Q뵷t?B݆wNx(?#%sbbdYohNxRmFkG ZUpfp!M06:754ї,ɵM&YQ 4#ĭ<5syZdyGLzr3//3V, :'G'߻fxA7 5T7#o'uՄO>*]67lg9dᐓO5!e"@"oh(mep`oMgnɃ.hV@G }ЇN/Ȅ[5!aE %zO0oa{!"R eg\;:ȡv D[!A-OA+ ]=)>U?<ŋ^A6bùf[J[?F^Rޒ!k^q}R*T~bN)iבS.w B-4yΕ+&`K܎^^5)LI+r7'-q!`$A*vYG֞irz5KQl-SW+E.B"|.fqယlUxδPK՘e\:JMd%RaCnȦ†P^\,Z3cP3MrM?n;`۵h8dƅ0O70wV`z ޡbϔRԭb<mTl! AH$ K~D9qq(?&׷@/ꃢV o[p?dBoWEd5Vc~<`c)eB>0Kkh +<r] (1e|bw bf#_(ݓFD6e)lhrƬb`VV8P~Ӥ0)0GAMon!NH1ɂ׳okhEP}vaߕZ¦3+@[mP?ltP($SQ\Bٽajilۥ4=Hv'e.a؛(8qR7.7y'6'Dha|p fÚel2guN3rdЧȚ -*Lc4땓ܯp!"g@T{ gB$M -|6{2VtiN)¾SQc2 NDx U-d(!Y{;64auC_M<\cֶʤ f]JDWr!M%)uC %tu 9Pu!PPxH<-Q%op,soB>:chI5DW|qq[ˇMړWݰXj D<Th?GeVk#a{p=N*~$ -5:7-; H-tA#vEuu0cЅn=ϯ}M[Ba\ףf7 O9䲋J0[4:yBDB tAu.G J#y@]0x͔yI뫁t [(A(>E |֔=1cnW%w>ݞ\˓wIxa-M]3'j۸u k81}cDLY,u q]=PЊ?nkt6t%˃۬F@ښڌu%b@;2ӇU y5 7gNz0*CP ˯Ru\mOfv y4qT&aƶ.x* ^*%o9d % Tt`&kXK˛A/3[rǥo~P',WIHWOd@g, K20x9Ɔyy)GŻ'g-퐣t|/'vҫvLh{6s{j繃On,-_ #Qy-RM7Ԣ^!khXy%e: ׾^XaY& !+zg7G 6]r=em>3V^}#QE OMlUڜTvMZm  4Z=zzY]`V6*R%;Ahz%&蟿 =M T:p؃֠شAZ I:5_WR H!cy 9صcB(n?/X'7FiHWphtʴ9-kl{,[C6]d2*+, ~I1z?[ d !fRQ,^N%T`F_*an3)8'%+VaR{%iiU?.sANd8γrKЍBa>Xh. 4).Bvz{K]Yy9HL=-na aG 0?!+^ Vc8MS ۃ7*@e+vVˌ$3 Ws si;٦->6.|;B^A9B.~`$b(y_칚3|t}&g"Z.B}Sl-rzuhޠEDg5|,-a{H ǡz1O!J lou )iuCiss6 ,.k3i |uDZ2)kpp\.ixl34YE[&fx?!i][{2g,/Ll m+׿1ͨ{0 Y$HV]A;W(jׂ2O*C-1:9̈́Y \N+数+ᕦwkI ,aGf0SJ'κ\pvQM!:ݺM"esgKj]SuJ 2nVzA>R<^8N;+},hh*T[G9 D1>KF!+Req0ڴ>a$NpWWsR5v4eTCP ۥ 6)ȴ2OB%B10bF'n\c @909j`djhDFV-µ43fWUcɁa"uc]9OmCǛUdؼBQ#$ڛ@)zAyPĉqY%弇cro,Q=mmY z&aV/Q`$ =\(I.ˋP$T%=ֶqTYDvq4#׌)UWـJsdfwc>* cHQ:ɴt#3dP2m8mVX2 1Z*; W45_{;aMuw !oƤ*ݛq,C}[O#Nf؃h> xIXxn_p]rG/Z'@(?]A,7{<#坼B3S췳'7_9:Fy'K?K{E`g_UJ}ev߇]'pWFU"2Ё/\Y.)(==a 딕k2YR`^(WǸ zcn2hY5.sSkϭkYa گik/ T*:Ql`)li9w<4Jg.^Ϋż]i5b\ϸ%#Nz0&%+񌚹ӛvC*_,£,-x]/4>+zz ꋹE3LplIOF"Iv&.RXu$@|a&+g?}m)Jr"}S_slZy _f!Ywk<ǘ_I&? y*]ցDDsͳ*^Xv{-$̖=ѣ,ء Qzz@liHS ϖ_<K^I"($lG-^E alT9&fqGh{Z3BjdWg&NoOE=vLZ)_ϓP USfZ-Ʉ@F &V~HD:dҒ]jQ2MoՈU{pM9HdtU*qHi}`^L|t<0(xੳY A"rJ#S'7=?@t!;<@`TPͫ-j ^{%vE?ޤK\$Aú~ Ŀl`0iCzL}LcIfW*IXa ֋ƩEΆˀo2. 2FؤBceۗ|HVBa8ܥ9F7.yadcOYe!Qtcwxg et~|l*GC{_Cޣq0q֐K0"Nt:aZ2_)kz yVLy!rdLIiѯ ͯ÷pYiK>V6lﲱwF8kk oyUJ~Zz*.KӆsLCW Qj-{Jlp-?)-ƷNtEw{Hyr|0$p"՛rY }%*g/@fsڡ rOC_@_A*2Z-Dzc Cv0ĭU UcyKѓJSP5c;- 2ч&\c""R`;h!̨^IHB t _{!7HLvE>FBѯts1΃m~?b5/% R\ID V#6My^bv" ¿VuhzXc4Y=*֤FoX.+gꡪW,jd9ve3 S/V* ԗ&넏iURG+RLKIv&8W\l2㘸 g=S%*4Sw9 ?Ť4-Y%T4dts&<7ant:4Y"R8B׋BabW{$DA~;C6jIX4Dph* 2=-x=.(Ȓ+ vԱH#6s6t7JLWvN}]~x$ZUjߍߒ(qY}sb,ʳnҾS#lu[}E(nMZ FUn  lB_v,](}n.t }{-a[㇨'fV N٤ hqYO 7t/H]DfQ!ؓWI*/bZZ7,C5֖Zan_帻 G5x2Y ƔśSnZ̋uE yNKڑ`UھNg:gYu62=|6zLa=.]8t^ ~† :fx @w*$`zGͽU{~bzqI91_T?pZxut EcJqST81cX1Bi2U֚VYo0.LOyRVǛ~(?"-@}ms?!˛ʼ&/Uu5#fJy =ٗZ{ SdH줝 xfmtS'fuKDDɪ^8oX 'y8 яztV1;r3EpB+jUj;U1m\|TDumtG` fš@x|S@,~mpp(<$9_SbB7S\2vm9rBHکYvIvDGs<{绮uRЙu{0eFjDLy*ϣȞm"XRET _l*7c/?P݂+2Jp]wH&mJw43~O+ ~·Ě$ Z\9\i32I:(vu ͇=-Ɯx1}4BLPM4(;wʼO32 RU}}KH|bP5!oL@]xcd"t5),T1yk!X_ ~R\^ q{E_En }tݬΝX ~ftv|Ռאt;ty;vg^f !(!\l!{*hbLu`E6X?J_~"d-Wum1Dx.wы HQ=*Xkgy컈)q3] ǵb4lH7&J|:gjNxMӯ%ȳ?JNvCڤ bj2P/q3oyڹFuN:MPE&N--=>'sʐdlqiZѬ+4d^{ Gt!3!)P Cc*f6jR&C!ù>!E@G oT=K#xoOmEw|NNV8j)7)umI0ǐ޶8K` ށuf {b('NG)5dQjXб^ҝOOʸݑP,E- e7s_7@huLK LߚDR>yPerW>n ~˄(嘯$.96"ۊK?Gg9Db3ծj |hsnJ^Jaʆ6u.c? gL" KͯKPzW2gJWW,vI<+Nn̵ܱƘ<卆<zwu%;zݚ#TD|ԯ?W~Xu ?8A {T2g\^瀛)n5Dࣤ MZ?sM{>u@E>f"RL?t@Tu$v o404Jt0f /cd?j@ltxHx%gԉOZu`a+6=3"Ԭi8eX>Lȇ?\%MHU|[m%@CF^|7޲r)XUw.+(md:i@j>5f3|!rjnS3U虃6H~e-븺?ɦsrsrw oR$a_u4Sk!W>/x9_;Lʦ~WE7" &r@8ǽPk{ܔ5k?PLN90fGc+)SY5^vJ DL߅x;عnVlz"Eqv 212;+Xvr5Aa-KN(Ա&|/tPxJ3♗)fܲA%CD|rTh5OQ݋Qqۆ\J2 #j,2Yd "vQk"':߇uyT.]w+H^Jͅ}.eĻ9= / "CwkD'5yE,kH6Xk̍R``!wCȥ9 ( ]t_Qa lE.Xͨbm7hŽ#aV!+*AX(dZ%70t.Q+釱7^<v{ٜ~aW Uj|r?;lln%%)#? _6ay~K"<',;gҡ5\'s~참b=J #Ͽl)dktUG 7]x0xO9˞f|{#s-RQ/Lz9x);Z_74I4Ku䍻Q֮ԮW薅SN7XUczK~%F2, (% 1`@ kMmr"OӀLc7okiẟ+x Jt;ZMb(2y8! u 2|1A~rG@ϫaoR `D4>/V#}he}rgu k \Z3б嵺yQ w7Ncg$j:j|[wאH#fR[j^*t/XL—~lVH WytOUDwãot,{TuAARlTEtNK$ }&W}ɝ4qG::v( h.V}فn053| ݝ~x h{y9(:8K Y? OLv$T'mj XrfJ0OJrG%شR*D9gq*F {ka5m ɽ`B HC۷M,. H#ΛBm %w<>0qPFRԾž rjVC'PQh;ڍ f7eFt1QpgI%g=%[OKTdE(% A< LNl:|Jrp57 ߛ #w*3 9˦W8].7'ϕuk.Y|ʀ GŸK"Q_ҿM/ftpռ7=90GI"U?NE҅ovH+U` F" ֔}$P!eƮОskn tj{Ԁ5%HAdQyX6vs{ Glf5{9;,ltJƃ(wǎ\V1;1JIJg!Q@-4F{_ͻj_+u񈇋 e^P=F0”Y}B(h=HW,/=!+.,3 EGAd&uͭVM3X}BKr?D Q_sb;F๗-QWŧS`L=8A@]5~i'yAjDrEZ^ ]*bPmais!n*r!|ܬb+D"qMX87xM-׎`aMQa-c'.|6>_G ;g"T.emQgPh"/QNQPY YWa7yN= T&t{Ԝ!2 '1f(M-rCcGY0!sTg O8gf";k{?%> 9:^X&t _"8+Y`)aV>=y.niZyISҿ宪]?!"mXCVC!` #Ta'6n7o)JKL+!T6$`׀ǜe#KV]xrn9S/s78:EU|нhXN{0"$Ydo;\YNH6pQ5[& xY:rxtI}TtkKHt"zMTЯa$Љpa]X2oPF_Z6VE'펏sչߒ_A.ꃼ$T^O1ҩ,m [Ix:BPȈa+mf7 eE #eMZ>D3msZ'(dsQ&< ^61O}7gAx\0`ySHZy1۲Ojm0"':ѭ'ԾsLq-;~mYeOߐ*6þBXR#^qSBb<)]=~1jo_ 0=ܢ".jsu}xq?H{}/sG>I`*[xj?}1RtLX>^nj4SD.L&)Ɂz I|2WænîfF\E7uox@C&. K":*v2H^o`.'Ĵ+hұm X~균9(7wr%xg-+(ZQvB;_X6h$DA/iLjnZȁO*Oe #',qgWsޒ~ͻ&r_)țQPL7-݆k}ԛ[F82촔r-1/iCa UkkH;C落L̨XmѾa*fkP 2B*jKǂxܪ-~e"В[SB*ґ_Q\">agCʤE$8 8.BT_ fhoJVOoӉ{XE9|Q@ cL̰nh?>P0"R)"MzUrD>ghjيX2`=%>}æqG#3늫1:>V3IυE̒[#ntyc[ t|W0G9^猞]Wyc݁y$x=$+l^YXn!BEpseq:^x2Y/Yh$@کAC2#/YvF/֘+k!1׉nR9`We_ V>]+lhkѕ_(H*mLC s֐:9M-2dpf>r<,QvHf 9]ypWgDW0-XѰQtJp~"Cn, QH:<yhtEI!o΋B3>"1|u)*'>qe ȤW5F-ڰ0ȱF΢=Agǂ' Ib0D1! ve3Î+z`^Isfajnܓ麢m bS>cM|=\B%U2Òok?NOWI5M[ 3Z-"K v yzÀJtoMOݯ /e%7-3 @ߗ Bf3rxe-KLCK R ۳_&3hNyWX OJ>a8b;%{n/ފ9GЗ3E3g ^s1ɜ ka?>'R@&~R/UIk|ynj#f9(z/c_`5خ{AU< nLX#nMPmǮ$hbz3>E"?*z[ ʧ@_kD #|hRo~0My(*%,MiAQ-Ho\˿b4EW8g0=r'| a۳_@ZAē^;riI@ p(JՌ+ՁR$V2VtfJ 6{8@.MEA*}Vd YVհ/Ac}T F_UMHC$ǖ;D:Pt&u4tuCe¦d2j0 6f7¹Q:sF}x=-y!#(!&CSSWq/XVkbêb%[vZǒi"sRI7o ai`~#EUQqFt0ar$0\12Eo;Wx1 XV,Hvwj)+9 q9RU,k샨 zt)Lf {u@5:I({$ղ fg!P*3 憷H;qC^m";w@N͔n.+fM_.I[6A&~Tr,a:Xo깿f}FEF )Yipz4>eP vaMK>2.CPiZGʔcLA  P)'КHr#ȮkP*ӳ5ĥ{Ept~mݪ0luU{0o Aǃαz&T{LnS6g}˝$LiE̹n^ʼ|Gȗv2a)cmCqU@k9ZsSkm7 _l?)0.x',0{YھX3Vh9{U}"<.HW[8 tH7岀h1o" Qd>K+ [T16!EHN&]m 8 㩳PZ{; =dK1蔍si͆Etץbad dNbk-RHP;vOÄ>cb8{{IeU)佮"R[_s=A ulxXusTFa4N+%:ಎ$پ^wID|Დkw +09bm#zf"l(6# =" ^D m˯nDmX ҆c0ѳ8=y{or_. (]ϷDMR bf ($7zv';M"?Ij(DUg;(;Wlɀg6וOy$ K^ngt -Xrϧ stq 鷻o[C-P=ˆB3z M>xޜ.^d):_ J<"B{| CДc?>S~lCA N]9<] h+k6 HHe7L(/V~d9ݖ¨i7IJ>[q#Rxnf*t⪅I`?!CKG &KD߯"X&ΘQ*/Y||Z2k1v _57@2C$\%"]d;NKAN\Z͇3($C K&bgeDahВ 3(*zvYFZ rX Q*0@6

߄=BGtiQUC ̔P<7>U0;ƺ&/GWͺF0\C,0k+۽s$VI4 x8A53Ez?v46*J2źZvQ)]ƧP͝ yb|\;-1Z+YN~,8FKL^ɍJ8LC+Ju-ϛ2!$_TwdM roL w0}AtsPccE|iin{m/$$8ʇ޾3ƙب6AYreJ}ڥbB߉Sy<ʧ||6=cnxJÊ<gMfY[T֦lo.&tbQf|7^48=2o Se AS!h+Gi7|_p?)cym| p si 0RN&YAFk\ \%d/XIG<|%.^8*B<ƴ9m6a)] .ሱ o/SkpR $#5L"E~? ޱe/)!Xn&1y8|8Vv0uL#~P1mm)$_ "? H\_m6*QD ~noi ['0IgKI[ #(-9hwRki{t=YYdf4Sbrذ8E;ڱ.LnO4_ ؂&Uw9ixņ!G'>håI)_, nw\PlQΚыt=UHO{sp?$" #M^AFƤ{+ť;Q3l?;LHk:{,jR~ j+U4k~YD43pC!ilI6"k e5GpDg݁U4 Cqj 1@N&h(n!kĩ6v9pLo!dVθtZfS\B1!e,V=#N_4#!_*%O/~2`lDb ]Y)S4ϼ:z#|=^Txǂ>=zFC&rw $-pv8&gF/&NV7pК0nd74)R14lxq|1-L&tC&ܘ/Grp/LΈgKoa_ C갵|a׻HpeP6Cޏ/ uVQtuqy=ZXtJg%w:*J$+_Pf9|Mo$PJbMi%֊5/ߐk(5×`RgϠ:U:xZVȍHȰA~;Pf[yp DUN]:ʅx6TP<7h#?UqD533Sy]M3$ܵ¯۳-$L8QO્`-=~G {Z'pvN65ُ=Ie"M}cPrr_2"NR_æ{$:o-9Zv*+[BZ+v]@G:˲:Ħn)p'OM%Ϯskjn)5lnItr^O;r4z5e;8!J3)PӍNjl~VZQ*O-*)D2뒟t,Ki%"o٭LFl‡4*Y8Jm- !~-?Q{Ihaanq'W8lM~+djzene6(; qZW&0s|/t5\d~񆵚sH~>BTZJw0*W|lE>ƃ a,ǓwTP/EFրzm_m$~N;ґ(}_33 &N)}u] s|^휥9V~ a~#2耾IL*K5xJL)+]]+xFI*+nwq8E UR v_ZiijF)wvd> <n"e&Q`!!*ګʺ㝫|/8^}ʂ|; !wƃW7D%#B -4R"$aCt0ʗg)"'eT@g=xNW$ް.ӄjڐgVHWe7rfRǍkPa1MZ9P2}{|'*|AYu#:杆VDWf\}>ʚxBnE:SXKϭe:#=}H=fѢZh~Y':W\}?5ZOsMB>yp,[uO.7;Cc!4칰K&8Z na@ V1ˑY!0(Ml'E'otڼ -pL)lzO|yw&0LA [D~b8 6Xfe!:y֡cZҳ/@4kEYFk;: )d~6k+nǍfOCS^|0К!1NOϗ#SR HqF_k?GWMrA! <\/X] gWe-li$K?3G rI7~>4?^U@1xu2t+ m2G0r2&"&y]Us% r&ZTXyu*Ǔn5@Q(㟙}PhEl& i@!V}ȴ`&QRE:'NbuS'1LX{mXY>\Gֈ&`)M\b# V㣉΃YOry[5\ =LR6H)Ofhk4 _`AX i"nRPܑi27հ#vkr72g/^0aVkiJ7E\0$(r4yMr[4}y2!tޡb`b bh@ OS+7l~ݼD!]_8%kyIFUU2c ¦::ӌ:|v5%_JzOpآYQ-)p0Qb(A*;$_PAo}u"yAz8MRw- ݨߥNZq ,OpU"܊ "Jfߍta@*ߺ̜P |5|j2̀ 7}?baQL豯3 ~t8(1ԸKM䴢eDq& G2tV&FP:t~ RЩ \jgr{ _kƑ2 RW(i`ZO)>G5'b]dLd >X$}=1->,A94ӭDVeKm}LJX eW cBs=RR9HbLo!}YycSF osd5P96e>)%CC)6*?kj1W+7ݍ6!~cirLŔ,b÷.a 8u_u,"{봘`B߁sI,gv4)η?? b7>\l:Ew\z|.߇R9IXPڭbDvϲ쵫R#z_-ʯA \HT/c^Xܵ1 Z?nt{XFTh/r?##(Xp͎C:da{CO.nš=5oتBQW6%-@-EȤ(E.<2q/?Vhv֟}Z5HthMCucP &]_yg,3ԭЄ JMQ fVzx)DMGZ1x)f!ƺbVTqXmłh 07Z2_]HĺJZU0~mdXwyvcsnpjEx{qz59zS% c=mXW8jV (!@&\(XGK&N$ oD@crFX)5[BQ@sPoL(a q*L"8r1PQA*q(aS˵*6*/޲9Ν4tm(W"z(F/ݴy#mUxXHd˜ZWL{WHA[Gu|RκjIC)s1w&r{a0 >u#W\H']@WclpIA3G+CkVHwe5=G g|H(8OXvi(nL̕9N8JQth<-LT,|=$jC0ڬݸNu{p嘞VUܒH*twQ6+~o{Sq 'r$g~|%B"Pr,80[uR=Y_˨Ys [D2,] pкl`4r$EX<`.rbbj;FqA@s3x;d[.cu&A?F?[%DXla9W&`_7GͪlLg補*rK6 %UD#jC>W/6Dc{ؽgALd?+uOkN􃌮r K *,` ֩!*5+7%'(_qO yE[3U0cWF 34-TB%3kw\ƻ((^ ibMU @`ˎmcxj$\m6+wKϺ}ܭxտIA"96HtGj?3 [M~|q*-؟|&M`|O+M;z%b@n` ٻacޖEt1L»4?桦zZEe`[$|e~5Job*M-hߗϪQG>sì 5:{aeM!(?5ݱ_!d`Bx_Ȱ{4y2?SPMs_-kF "eķlWݨT؟"-13 Y hQrք 3jkfxu?tqB";P9_ߙHf h#-kvtcC\uɍ\@fډs# Elxk[g#;a*4XLE*Un–/9(Z԰  /.6_bO ~̽bI/4bHcu54ݿ>j%KNdM˦[A9b5Q'3HKXp4"hRHb{l`F1q핋k(M£q0R(g?~@Uֽ7$ 9m=t2O=JGkړ(!@^w{Ns(՛ylN2i<1_϶Nę2)e>}!pRu)k Vp΍ z>r&\|SkAAmqSǜͲR&)NAϹ4 hθ)3e{="; @pgI a F^w\hkkKijwGqXU9,4jY";字1ni <[ S҈fAcR1|uaEBU}X^pU6L/[o1J6V7֩j{vQz4O|} g\K9[KyF 2l#}cHF0]OTVVMۂD)۞$ev-<]yvL=FONl|9ybIұ̃Olj#R!^y[pt^_Kb|bUi_y_nf!d?7|ptl.g.*rdKblMu bdX ";`K Ks9*8qiaOvi<8l?z8)&nELtR\mS 80%~)N RVxvɂmN ^cu?~5j19`|Hg/42kkcѝa80 y==)!ɗ)c^:@MなuJ yέ!oz_Z1Oؔ[a(%gymw6u5ix8lqxqjգRʌMHn 0g<꺀T>:Uw&(6qmgvPED[;}opK!VL@?%ĺF}b^RZHk"2߽m+?5f+'t|[8g /u(v4%VyT& fyo#a5?%D>=KNxfL #z!~}ۡES'(rXbOd@>v$sJ]}Б75GqcN<Э = P?b 374I-z^5/y[q 4Yȶgʆb g4kꨛУa=%OUi}l'BCn-ffPڳm}pٝAJ'Az 2E˜Ss"(>R~s/Bu/&J`Yxe["6Mif}Hybx {T,Jn|5CR i ='>:yoąV'%a6%I_L_,'U\QXKުcH7e-7;cTd~N蛮pOI솗v͇V~cP4+U 9L.*na+6٫C&P7r>4е z=#$G5^b)ycˠdz}$ 4I"P5.} gfޤ-sWYaF2-Vei. CaŶ.1*s2(vpi>]]͑ /ʉ^ǰhu2UNnZīXU.ذ =c<Ǒ*CMp`9g IWy=E.G(Rt0hޑ&Pd+IpвdSjp8 9`/;C" "<Ɔ6x|Ƽ?NdF"h1y LreJhYK=x)?V6D%kp" d`BRb'=(+ k 5Y%'h\vͶ|,Iec ')+KЉ&'.f2Ǟ6) =DkDcڣ9z5X`_F[$X`A/Edu͜=y kq衚H6]^j[[*WQRw ZW|I;Y:Ԏ`e~ܙw۪m%@p}I  Eğ^#ιw)0_=Vm-*:2e9B 04ؗ:ƭ3juaoNsX ex!Ti$<#bhKyP\PRtehEsmyqd'/d:\7 %C.*vΉM='!#%Di/Og^J j!+^z|ͮcx!*/:W?Or'['1p s# @bfTP'Sx6k8)\hT[2(|EyeJsuWdS ` S8%>I7ĆݨmTѩ;Aq.vE!AP%.r+ ]S5)m*#<Ҁ35LJB~hUz8~ٙIS©P ef]]car m0by"NkY*TfKC$Zwh&*Py(2`Cpg '\xFF"oZv8$RIߧVP V%Ʀ_k#TQiD]{!px= ju.8[^f0Z^T0WKY݇{G4|yFKP&0 {k0:éj!1%`qUz mfsnJGQeҳM/'23z?=*3im Zsb4]-꥔E?쏫Aԥ^%Es4S% aDU܋Wj|(O0VE6/$pݺoC0UɛBi[tjMqmHs.FՃqmw>(p MC'󩄊{/0#Na B4f8rXlAs$;݈Mo;E${heu-4Rcy*h=[u6ѹH4ˈ-act"~1ٙemZuf z9pdՔDh%r* Ng'#aW\Yܭbq3uCQt4s9ݥ\ URdEU?,17G=sy2;2M庼aTج=[fH*0ԲgJ!7܁[F qEq8` d#|p+Vo΁,9VM -U /mQ&E*t%s}v2XϘTvlyTQ}Ʈ>_ n&?'7XDUPl`ٳR lp5ɆS$,Z-_G {} +}h xWq'7c|(%֒;g3s.V h5?ԘQrK+IA⟵ak 翮>݆SE,y)uaX]$^rN)V"]3SlIS@ytj$\NJc;oF:H;F@NM7F 猪K>{8ŴPkxSP-ao?B4 -q=l@dا;KakO!1X`,"3h]dViP#Z_o.sT سL)3dyhN^%|doe.2D՚&+翛. S iЭnkeN4KT^f8DZı@.PUsUzf [ c'؈5ءlicREcIN#h>}pJ0oV2׉Vg)eXO\ӬGsD:gVM𷆂8R~QʏLQr-bBQ+|N]1^c}V(pHxNtMO~ gKA/,:;Z#7@= QPhQ)6ȯ_LV|uJ qwL`? \eVÚ‡A+~6]^- ` LvC9B /4&OJy$s!x˞8 YugU+#*?K"Mc}M8-. -=F&v7rcdgh 0d03m_Хs.rK|nN̼/Á}vȞr*)z6Wں NyE44F= \6f(8?`nLSQ!A{r,pwbsr$ j/|< P\Toe!!ݴa`Dy `K}: ak6ɷ< MV"OS>*fuS2ӭ>cxwmV+c ]ӕB@v|hXWRc9]Px._|*ڵ޺$/oz 8sKb*ۗ KpϭdKRR(eLKyWi+\U7pK̫+ |ŕeC-Ha? 禕QIZ~}* 13GʢDsq4xo͚)$  q~8݄dۂY9 QD2B( uCNGivK%zIks;s"%ufMzslV5zgkR+y9qn@fBCZu^rQ^9UL{AB}CM\-_b`Iі/!ʉ._Q2ܨPB/JNM{z=@ x0f\ƩtAQb.9FYVx@k16Sg@n|{>&;Zi4֗A!Üd8H#JQP!/õ]b8ÙFYBCU@dyc n(Y8-bea vlQ-O MQ(޷s_q ,Q~vvC8JNG`޸hʴSFyB|xT=z[K=X͹Ȥ?Ҁ Jq uV6̋ˠ/]qKRUe?Qq! Uq-#b0penLMV g&*$#!Y~o j׶H}RE\u on7K(ѻ߮kl㝏%êl&cqblvO1p{ '!t 'X؏NiC]^7t}Nڞr`d6~7B΍QX4׺UƤsڶi@o_fGLA= Ej~I<>b3bߦk8Tѭi|3D }8j0uӹV5@_ *>*&Y;0CZ 5C,/Oa[Sf`8>bhVU_I[8С# ǞW~xC*j 5ǀh 0<Ƃ4=$,[TL4yJ &&{]haH翧#\؁̓bY`sfο>O2{z̎S$fc:F̛1X~ڜ_^Sp~V%knFXdv3i;- "rx.v sE|;|Lk͇Pu&U1ʪSm71s{VUfl%(jOp.)5aig!݃'{4qEqSh Fh-H87h{N)y}pXp7J$yݿ5Y s]"&_K\co 9g'.(X&K?At8m&Ԯ՝q]02RN;2oȹ; &mpu]8qޚU? O8D GHLktゥ&:?cxcg/ߡvp϶m={XX}f35Aasls %{Ct9]X:/6}|R}S\7(F_܂W();:isY2y֚p*cbo9dk#G;݅cicy nug|.5Wx -LazWGmagkw7+~5>g*ˇ/xp<](I&+"-BN<ujns5%ql:g O^&XZvјmIa[V:ie.~9@!R '4=LKiRub=A6g$ԨL;"c<yp?՜uf]P^ U4ϊ$%' zamYLU}_VV&#pfʣj1Hj~D!,\x|{ϛ!͎= H-1M䚉.>͟K7pfīn#g+w?؊8l0?HwU,(~B h~ X軑x0{@ .mv: J8%6vg `ťL9eVVZ їWtV|)ln㘌( OEMZpX!ey&'1ږ*]XpO SJWY.E3 ^N .TQdi z`2Xq[<ԃ{!)q̞^2Icݘ[n2-4_t@G JKgZ~ĩJ˚ָ` m胔XOxtv*&tFj Í#L\ )t wec\?ú0jbGg˨_/!cv E .,g5~J(5X[3cG5פRhquRo#:,%}۠Ax6f )XU¼C6Y!nZ_ȫ?9uξd_nfbu}CncշuxFx d,@5zV*Cm Ƙ4&рz-Pտ%*ZlpTG;Kk12X17KbkTR~luq0n"nə?˄E*"yNCxc/!ɕF`|En6ŞKޗ]KM~piyo^[П4W"4A 7]dSW;ZDo?DtWG@xFCq@Ž+ѓD3cXy;IpVz%{ x ڡ}Ub̛j㏃ɽ>2X=ֈ Cǒճg/>T| 5&¨+e5׵0j@1/Mz,,f>%ѕ3_groؿ]Rnmh.rLz+MHwbx.z, ӦY$p$3?iJJ[PB~ȼeØ%$èM)WBFe$ӣ /YΉ$41jg`ǔsUUZ_M$A燐C(S<f2Ac9ڜˤUls9"6bK73l ~{l|`o2`4xUO[rIxq+qLjжS{Huj?ƪRaʗ8#]&^k_W[;{8V>gwZ?D: \dt2%XDʚUӄi2.6FFy')3UL 8¶i faڙ [xA\Kx6];t}-`T@i\JB&4$JيςGt_U]EơTb^lot[Avy$j]1&㊬ g|i+Tܢ.m"EԵ%sKew.Nd1ƌD{Th2PAN( e&gIQ|I ,g\5X\=豔 E;4) GƵf7LwQ^] &#ܐfx&.1PӚ9" >Ȁ:04I,>cq`.݊gkԛ'b ] zuҮow풙+~[Ԉr~2"ѩ\IDsмH7;U7V|;%薶6D:BP' XM!Q K [>Y3)W*B#vՉ&_ݻZ9DI]mPQ\j$KW-gxe Fٷ3'6?3IO  6|SPB8);n 1M Ic G؅XEO$]nrX,d16&\0sǜsxrӔI}ǨIaa;tN׋TK{>^Y}Ь 87.`s Oz񆳈TO7ݖvE|NufŞlEșU vzXҏQ1]ԗuUkvHbԦv'I?Cɲij g|-UO( k|„6x44Ծ {Ay({ŠC{zqgTh⌋\B5 <3\ϸ HV/ Q!+xx Rk4IzL-fh+_YZj#Kи}^Ds@!ɑg}[ 3@%C$]3ƴ\m=Cӱ2AێMv"F]/>z;b:Cwr;e_xDq[H;DTZ::,7,HCъp( Jbwq'ɀr] JM76\3a;i1%t0.XRYO#/ru`_6`6PCsHjtȃiBьVc:@aZi GP uҜqk&֢H +~̲3g!4M) X7(qJXj:)Tto)Jp2SL7lWꇷEi2!-'H0J.ßU ,7,JĊj9d &n` "ɓV:BZ8 !ʕ#}NkNՉ`N~`n Z8>%P&7ala=wBY{m,uV~o7TkeXM{#KN sU~*}$hC =06 )d}ϊB( I5/E[@nnF4e|gK#q[>},|VdF.>>)z0vLnf{)IQD%b@?(-b>6BVY08ShwZ %Avӥ$$pb[x |I1;>J]Qqe ʛtJkOAVx$e"Pߟ/yQOU3Nm&ŀG3O^e漲R Y޹1dΈnoBθbkm4ߐC$ɀY1wQ6u 1M~ߓOw|TGq%7O(xB 2O/wՏ̯ !д*&O_#*! ?TDZ.c q'ƭJ ghsSxc7W7E6V1#J>--y-(C6F9QPdde-rA 68nP'\ oG|'`4"铫WyI"Y 5+Ռ [+|ː:/qY6&?qE0>SzmfS 'RxF#z|\vHzew+/BF:%K;V4Ww@=r[m"[9 J6:m'8aSҥEBF 7tT?96 ~ Ϧa T{hPX>~d*9̚Xb<}7A l!}Zu>=nl>QbgJgQM rFR:TI8؃:̔(h Ƥ Q`䓖/>\$'{l#jR[U3ҦڦI"+ژu5&Z^)uX&)PJ9Pv~j wQv1$w 2;Y0Ls$ 1ӑѫ=.Q21$.4h)ʟza@^o]yȌ? fW^I+@&/ Җɒ/V GRE /zëqٓ7]aEG v=\k*20\UҥTMASE-la| a#Zf o֛g/.]8]-ޱ0nxC$kLCSLot1j`L7O2İ!قIUuI^N*ƀ#)"W*-2&*Ǧ?wV.>sF|$r`ºSHoeWTCJ>k ʻ@`9 R)[%xc&$_@N1\+6wdDhCMv`nFl9xLu;$޹mXws]NxZnm4Eg\Q4yrEoӳޞ?ArӼUCҪ?M:37o09>_"\mu.\ lE6s @?Ku lH|o$UQvmlͶn18:D5^uG:vmogGyt#^-%sAǦ| {.CM(q;ҕD!}Dr(r.R&bΞP.cKL۪?<t~ j7.엿,̥K0ࣕC J=3h fc߮Po鉫L4m Jfhʸ€Vܞp(4v">y̍S\%8l}Z,P %hSC l'8{f,{;_#\ ˎ+$8ixUR 0Ԥtճ@-XNL[4ϚC"!6̩$n&.|D}@%Fn#C >`$ŨěeXUחl\##)lK7y,Vv` K1lQoS8<b`uG+L1F@t*#S *3Q2 \qUQAA466}GF|uƋ( j"qG$ZtI~SC!7:2wCtխz,|™{8Y>o73nXf!PZik17jiR I2;|csKtj)lҁ{iKh#r?cՂ/( ԑ&k*Q.q9~ZXez#5TJj9Q\"դ7Lg_f\-Du"fbHhBjmhC8^\*UHNl{L%Z&V1N Fio`?V+; U;+ p.7|ׇ$ "aGc\U 0-|C}ٖ xݲ_ЈzɈrߪT@@}:9"aJtLjA x1Eժ y2!}7WglPX놾0aVEa\ ́*^H&Қәg3J}` W xE< Gg gVut?+jwLnn%C)$~`^4m3:#0tbtk;$b?*!(y&swѿxdUXXGR0t+bO Ooc.h[R"'<9mA:1k߄x 0F5¬O _ ZZfl6k[&?D_3HyN~2BWS2-^bzCPwV 3|=@ɻ;A|&PBuV[ gȼ7͒"*G8_xk؃_D#! :'$o"^ί4'ARGɃ˚h/K2aZ9-7fl*Fe8@Yź4!T3WLT 튚lGuI 8 ̈́lԸTyw7KTw(å,~{'ʋi(6\lyH]kZlGgMJ9& (*!UHjq}YJ>n[g 7mM9&=xH0q)К@<2 9KyvCux*FUDw?#Y@XB焍vD'Ny/Ĭ_3bg|}᮷69jt/&9n?б]oy'tu5W}M&8_Q>=iFW \T|D3Hާ†f վ<E6| -&}/~1x|Уh8n%41Ѹ'82x1n`AO6]8`~iy0!B =.Il",z4iThJ%<> X6zߥQVnz/t2DC ^%Q:iG3ݞU`íU&[ wZ@OCm= *->DZ,L5Ŗ;?+@W)O Ry6sIʼI_L.FFlpFO mK{zq AڹL`л_|u/L;ܙދnv$9neg,H#k9h(FOǁyαeŽc)%bic$=8S}қp l{|~%Tcb<4{`(ْFeZ!ӢƸ<4Pmܠ|*> {M 3#!L_ps[+ɷPUΣRio݀bȬ @F q|вfP^D!kx? px(kaytTiFZ-Waa lX5ߘDo`=uvO! >O2 䲜O0³N60ኹޠ2'Sc%`/)79ŰY}z^lT+gPm5?J#}ç@S3f6Ǟ kRFn.lDLn4p͌5'ZѧII+ BcB\ReT"!L]48\6t`ckpP!ԽķB8KK3S(|d^gwĊEf=3G{6-1=N;-|$(rҒ8OCR2JgZ<,of57QP}C`aʢJu LBK ]qra"U;=GsU.HԌjPg_wH# x5z>hu-k\ 1OtiQZŤDNd 9 \L2 cܘ "Ӡym&)U@ay)L܈2wav:5qbXV@2bBIOF4Hf~O=BjͷRP*俀d+g@E >5m |;)P+jI_ҷ >w/]֏1W;e4k!&!ƤrF^V@V:SBx бu`iR!gEenڷRD?%+pYY>H~ 0A A ]֑!leDŽX]UdɈesߘ|_-s7T w ƯVeȣUhJyvz~wfÍWx MXӻN~QJ+ l;~tbwWN%_eB>=c EcTֻéBω*JfЛ>bA־}5c0bvq) MrLHhiHˎ kMFTQC>|\l9x$=Lᢆ@_=xb6A}="IKa>Q. ??cǂr`2Z_*ȣi ato;-zH,>%hoU 5tƙoP;b᷼d,GB I^qs8rׄ R H(pn+z!Z@E8EAk{Fe;?,I(!t.A aƅ^ݛԢɀlIb_,;s(gCQT_Blh-c3v3(f0[3Mrm2T*ޅi-e_ <4;rS.yy``J5"7cI?RXMKzCm(m4|6rMh9^sO'ie^C$4mAV8VO6DccmvRUfBA5ɧ"3A]?\qB7.ĕH(W';e]'Z-ec׵ݳB.DDb5;鐋Ǿtl_߁7lV<ڵRcT}W9=gZc# ЙGI fo檄w &J! 8]ќ/'w-_kVCz9'yZ21& (G;P W̹z!}`jb>`3/E Ry]qomTC  z28t* /Wz%Z?m @qvskwjk_iſQϵ46j>eokiz%{!p벱P9ShGu5F\WoOhDz2%y6(5ɭM.!KƷ\ Qæ Ҡf(T3>'Ξ,P_GŴpm&[%jG>wRI_q>)4rӑbuڋ+ts1 [8>_C2|3*Hƀ_y+ 6Ֆv90]\N3s_F[kSlRBmUN䁒Wo0])>Kf鯯k*9ȗ{}4a>Y$QRh|(__:uبG7)أTjx? &P-0ڒ /h0OQl;QWG;χcQ⌜JFBఊIwLwGyUPAlH~hv[Qneߌ ;E< )g:Uzl_pW>) Ԕn,6 ,G~dFcۯzR].I-*_;YYfK-HŠNRYv)*pV{SqI+ . VͲ't6;g9k3 :Y"1g ֣9y_ӫ~YZPJ}\dWՈT8oNA+TXXzhn%:\n@MO.MFn)Kʐ7n=R[EzbPf I _Tͣ"b}:ɗZ'8E0½f+:[ y)Ra#AiN~<<%O$ynR)yvhy|ѹ0ϫ onƇ/#Pȁ1dn{dH0`uD+~_@~,K׫K5!҃EHxHJL/?r(q T !AF+ rd/'Y\ ZDr:${hee #1fclHtXå>6b>m1I7ˋ47%aEUr'P5{J6Mra.U Ǽ ^îwa ζUU$0 tbs>^t7=ʉ\(ڷJ؛_Bt"~^3'Y+]o\lS<"ӵ-qZ0QɜA4G4?|_dQ*ޟUny FPpmi:\>pg16^I| NۆM @?FH]e6ӨYpҬ뉗2geiA^0!:lJr_p[5Yƙy%vH҃l~|Rn|wxPqiؓGcBS{H5/'z=f"۬t'S?Jy̸Օt>B"tܴR?Q*"kF3!8VZ1~n^bQ5a]p]k"V[jq,ǏDxԻxWjd 8?NIj y%MWk^Ui&U݈"`KaJEZmUC,X[@zte .>$r.LlD'п#ԣ? F*ڪw %ֳiq#Ir̉gt  ]ʐx$ V!RFjGx_Juq= $lհ<؎"`#W!ˆ[>iGz gi"3]bW[Q7SU:%F_z-fjTu8͠%Gl;:}Z=0^J{.ŧo]I{hI0CkJLZj| kW,,sIhG/%0!Rdj6qNq8VOWb0_ƠR =kUUo8Mx-{;VT[xD]5,7 w!$%1S&Pt.02@,7#wI'DxGP)o(ѡưm>vmpyS{+3XB+-9yd"{,xy!i "ʦG<4hH\L[S!ُ=|RҰ]g 2N; gyF@9H|oqTt\y؁mouvaϩ\Qp,^ ?:Cw3(Q,@8ΐiLp4zɷg\3|h=b8c/!&96w!Jl᳴k>ɂמcvk#3*e~9b>-DmX("PS Rcai;[њ1SѩƇ d8`fBZ&p?̏ j"Mk#vp/ͬ,w~j2Y2Cᕉs4?4AC#KPw ,Cg̴" 9E *%7S}NĈGiNsod2I{xAv@"̀"_K7nك\X|RC֥@$.-%9>IQK*{.0Zu>KEV:C$VmE 8^f~;>kټ<ȋ"QFL}۲a75QMy8М, ło{ЧfkJe_Uq@VXL1`\qi(_]0/;I+V]G|řPrY MYḴj)pO}{TGݦB[Dۈ#q@[g[)b^o<ژpacHTE?uo.{4Otp ;h ak{gz6rp3%zڭ9Ivp }Mf;cN6 'WpLbqbMNk P=?:Am#Ex%! 7Rl2)?`C_0dCO5l8 >z^s} 9E֎~)-+:uNEDm*m^DR5ϬB@5Jc}Tf'*}[W9e[𘧢ԄFd>i1d@qhwW9dTT7@}!i!C[s)ֺY[%ڻ~Lxi Px} Ժchu de 7NҵSty:i4F $nOxǏJi9PEwv˄v1.Uyj[.n7dz^C9ox~[c hY\/-C[ζRE}/Ovv$\Z"C"Ģ }7ÌA[`' :mPQ.|4̓=쐙J;qj't]z.%o{ bDTf*O } ;lJQ3,x +ZB͂=1&xӗ[qg8BQa=O^i.S6*EpjӶ%35M\4;R:@ceG /UP}bXndo n?Վ-#C< dR69 œ7"*@ 6o%h1Y}vCepe'`uJA!Yh.}`85QE2,u2NFO7\ZB(oBGJ }{}EfXhSc7"rROglt_%T10aZS+Uno t zdf61yF^"̒jte)_OfSYɾ+ϧSej[hS'FVMB*pj=ᔊj}{FI_OLօ(8{[?/w"]??9jkV"rRZ#υKp;ѧٺ"w]#**%@ڟЭnoJ#It:c^6oElyبjFExuTZf8=bgqzU?fq%w/kf+|Z6ONR*PJ&sk:ei[CkÀ-@O%Tb6v VUhF3%0s| W5m@QXRi^$0O}~ST'<*?Uf2/{< $tָq"0 :h쭛خaU Dys[:Pi>V|@v- :ʒeIpQES4V|"5:C?9@H'B';`߷s:ieTԳtꙢ4w\+]`tm*^YbGοK/hs1YڻD1ZRL6fsMH7lf}J C4phݿ]좆yVrBpodza{g,ףΕLy3R0 O1 R$ĤD"gBȰvfN 4> ua% cg?3RSw3eC>9pF=dbod⟿z^?Ag1-?_.~5mąĸ\Y}&1y}DFx-V87 lM@LV(@@C7}\'CwpyIv[U 8%"&37MgFtPE9$Ip YJDM"%ӸlKG<3@Wyfi|mr ~˟z-;]"+e[02+Ex@Ge;+E5~Py ]M)N]7> 꿒nz9;=ey4م>~Ozs{$+؛j |qD у7+t}}ÐbInGxOO2Aq)v̡[+"y3^ -*GHX}Y;3-q(&#M nBal+5d} $}ﲋ- W LgD'jP䘢:t؅6xݝ.iƕ /q_>9BXmiWBk_㣔sIs IcsWخq  QF, uMլ)S{p@U.sKz׼O1]f[Iwj"x#eΐ6W)l>.D-g3Я>>ovnd]`:iuuisߞmw=TMͿ$~zpē$*s..Z?x zdY=7s/-4α`=Z)tɱr |ɛ&"Z{|`kEGQFbT% ,֍R@ iē ʳ:Sf"3=Rg,.@יN \wB1w oX }ЍG"m/$gdҶvj֋||{15)Y~O7W<#U=#͆ yt=#HͬYN-:LK. ޟ'`JP=X<]pF1GDOT.]Ndg0#Ғ r-*H"&=]I4rܐUU[[.7(zg#}jUzNΔI^?Ob7QYjA6wPP0Ɂ~0yԱT(E%5= zDl,w/yEWzx.kpNҨ^bw8Is<'V&c [,R݌h]DȮVZ$W?NK>VxIFN{k$/u!rw޼)t2!b0Jro)"P)Hܫ1sYCvfZV>f<*[K zDTKN5&$m>v ƿSg|ٿmC]~a稘.6?US5~BKPE <#& ':$*yKzd |Qra8:߱1X\= }{͐2Z1"̶B5WrTߍ @9Nn+5OFozHX6=fK϶\J:8et$](}.˨k="8c?rRojpɅ%uyKG hxQt9(v;yq!Y|1vmUI\&G;5geb0z*r+21g0tfg,{NxN;цl([zVp>+!NL9A:bjX3'y䓼e\itWw' ( I8"1; :dTYJ{he[Y ~~QH:xo~b-.=r^D"b =u{*<1=YQV~(@7K!3QsOJdnj7;Hz~lsf qWڵB Q~k*JOύ,VQE>\Ob= XQX.J7J_vr:Zbo /71h'GHzM?7H%Rd>#h ~\DYٕ|_ ,."We n 3;(DNT .JWaŸ?3 @͹mnu_M!Vt$/TK{h] E5l'$AfK\oX NӞA,NP/0 ǽ_NZ saAivT^Za=׃WxԸZm yk[ 27B,T"**;#8~wĆgK >JoFVkπ/c+Ӯ[AR,݋ :ٴG'lH_~ |ǿ5C'KR(daQR18'DnPB5xSNz}hjњH`^|,:kJ^eL-a@eVJӼu$1#D_MOY y§揼Ul)Cy֩TߦM{LIp]S}kyx+ğ.t\9\m8MףS7=hBOU \iL=*Byzz OtZ\â6髝jo=֎EJH)~5wqȭtA A&!.FغB3m=-eԺŨ>RC+L9V 4.P%kt !Ӻ 9`?j֬ w7/A=@S<8,MG6-TrZzw e27Ν6V&;&.;n~)x@U](_L]!!IЛ̃rOSׇ عEZeZo[\obZ+:ENJvKNؘ2֋eMϖw6F8JZD-Rr;a|-`P.+4 $CZCvx W`t9k7sCn_ueP1!&y<6ji_u3@mVFEݬn{Щ$N=N/n##HN쫿ݝ8Foq %k)`'~xLޚ1aOn*~3M ۧ_Qf,Ȳ+6IJ JԐ*Ϙ4W?oW"u%;a%`=Ԅ ,p˿82Vs[5{@~E_6m3[ #/ʄ Y|c_@(T-MH>u+MД!ݹw$"K)zNdDa,6ѦN1'\ӫDsޡ&˩9$ 7_]8ρ35@¾ xA %,1QSpdRo(1Dd99p/ hwM ޭMn2N;s1?#,|li+39>Ai?Do ^ uuk $5bTVl~D [%Z ֏|PAm:m,sֈ/}$iIqR- $/yQ` Eܯ4gGlqI_Mۭ4] Nk]Bbw8D-oDd]#|"` ơe+ sz2]Bn~V3Q)<@ތs/|f$) 5İP?[k+J@7=2]zAn[\&Ӟ=.puwFI+LsBR⼝FYg}\ғʩsh8k2$@¥ܼu>o,Auqװ۬8Suj+±-1'kUԵ'd$Wv q{`){6,(3S[)|"ui=,9UťAs'cSpdaw!WOڳסYgRINZ \WLxBr0L`lADA'e~nN_ z ԒO'$q[`|$gaS){pʊDgm/*Znr]hIOmi`i7®5_ph|o.<s:(!z1"#&!AA]_ gMI؝S$$Pxy* ([C]dYҖQ 3.Rfa Vq~O8Ph_ªL Ʉ4?LbVsyFfmnsAi0FA|&&H"xAV4_\ڡF~dԈ]k1=dߒk5鞱`a;L{Vtl3 0ݔzJ \d'aVb{X]$Ag9$O]Ŭry7V6 P7+]d0,In/t]єJyAssc! P A%)`) A6O`gݴUS{,!\OGb3h_O4  U{kcv%q6ɪjaƱfiwW[Dmu @6w}~gz4 -VKnK|# 5fkv#΋f~ -pK}Emot:÷-rub8_(0{ L[Ň5y&ENMVЬ!2:1nT)&6~;*]il=%Z__,n &nG;,y a3kr|0iʔ@{R|viظ-4>V 䓻` Ul\%p!I2C^(갗NB!iQbDL}U2˷Z?#K_~?1!̜z ye`ْmd\ څ*Nc<@!Z7 HRI"*֏=IyCkpE6!]i88- \Þp#QR`ڑsNHE۳ íļC4c)^vl > [; L̼ bJCX"-G kG!c1},S-(S7}*ۼu'ջHYS/mWUdyY~9R21}flDEx^E.C窡DтþL YAlmI"B{e++k2 a&MajW96};Yaj<5dRŹ.">0m۠N`:(; \Pa8=1gz\kJ ԑTtRއ ÛhNhW븫˪+kǢH?a~ˈavxDό Tt9>!zELD\97/<īu-M[HbJG/1{`}r}}%1)9r˖Zu-bW#V4Ev #̷%eqJϤ\#-(D<4BӂV5>q[_Ե5qp@t9TOxBV*WC-;$W;i TZȂB-䓻20[vN/aC( CӲ* v{ { v,VB F# :3czeL5qs|P 3սD@_CT>EjcH%ܷ#pF9lvS250Vҭ!|r 8z^_n̟{ sf<5/`$v?`N启-?i)!K7u}~wү(Y 9sh(*̳]{;,~3I:ՃCp}\+l* WgC! 6|> HxFHIɳ3"p+T,CN!pg.l L8oe̶׾?R p3ncD.`(}s\6ȘQmr6I*hWa輐ͱL!Qe )=9XR үRsPϟOiVZsn0EWy)V5n g'D g`*~@h(Eh1+8 " bpCL8UXGGנS|:;@_NfMai:m]wS)BhpkU1͆.-Vz˴юKk?k7t`J7TxbXKX<}6Mya~~i姿$:$ig~^s\x.t >Dņ"ED]>Q8;^t@C⥾فӪ=Ļ>KTKj S*]idd=cJ{׿]QfݙS9iȍdYNbB;  Ɔ]ZEQ?t͹Vm~38B쾽v!5t6˷D~uiËVݨBi1gl>'d4rX*y.{;3By;@ bGILo`<gRіpiR C40 Jʲ"ܥw E,9=f@BMg2˄lF|9"52!Y\ƩJXQ4lhjGǖ}EjF;^dg^ՅcďYmM/>Mz !Qж3SzϘgHfxQ)-}ۄ `ZvU ԚAbg90_awIJt&&ĚדUy6~@LyX sc,=C?'Jؤ.fAhjOnnVBdHjO&8L *m/lXu}n:Ko)Uj1#y5":ʄ j,wӘ\ۛ=3 RU΢2iH|D/կnXtpYOC_3;ÊS.P3SP@(m!Qf_\ԛMm\5S"{n` pF"S[ΙMgu ̵{|D:˧Gu|#%)sѣ-$^Ĺ ] ?\PO@]*dy\UP^ހ.”4&TȔSwGz|s54~ p'"HM@ Xcŗ0Y~ˁ{DYzluT筈XKZdֳᴨa hG/uBLxLYnҢNתZ^i.S3 #"`3;z+KWKSȀ]N*|laLML )2(q):)RIj@$b!=&Rc^w)p4W7˹6fe"KvB0Bpy۽j=őm_sx@Nk\E4e^ w#{FҎl ңf޿#T0b+!;'CKe]d/Ix_;om_=F6~i>cn!3L&wX!\ XUp|''V}6>QVwZ~xb6+M;CftEx +➿?1I9]ғ8a%kʁ(\fnZוsXMa&8)ƅq6G7 d]M߆Qҙ:fQ/IoCt r&ADZnf']z湲I:)*X?Bi`ۑ/׳bm0]'`C. E0z@r.p:q/'edu;DgaL>,pcO⠲\>Dtk9V]n 9 #͂Bk^5Fڪ1ڈM VLV *1&{OU !R6W ?(ȶ1~]D |dajV,wSքIQ!F= P.TD#qp͹ӴmG۵ Ү퀔ˀwE- CqFp]R ln 0Qb>kCF);3N18`VOn+{wԱG'==X0,f=/r# ٌ TmN){h*^3)aK(U] 'lxꃺh9&K* Il՗jw6 6f\N%:ߺ08As.AKbNj{Q2)́a7$u.ݬ 6MZv?U/^C+ CxѲƐTQ.*:uXjB`}I=Ϭ bP0;O ur}ɫp,wm6BSjtfƀ//IO?QjcJ@)Ng (ORՈQ?M^=KQ3(ٴ )q b Hݻ&C] !:LrIc[TE>!¹6RH*>Ui111fQ'+%F#T1^ߕ'ݵX0-Η['UN/ =`K0Ȱ/>Hc*ވE]ݳ6Y;<&.T|ѢH7D)ɤ:~(nߐ%lO&YK;tx*sb #+!Ll\ʺ[H@!/^kJ͈-1ײiaƕs~4o$~ $oC<[ &NXҔ޵!l:>QxvrW`7B ęDD"K\,RXu.}c *7 #4O \-蒳i5z$}:#T P&HPpEX'9@.bV3 )^\x$y~m"%6ltU34YԞZf5K>t f`hpi荎k-sՁ %yO^t0; 7\.HhZ}&a8mAЙbdiSLk[<4)j<*+M$gdIzvh5tM?i6ςWK9RE. .R(YCP&8ލeV6Df<5kp8KC/FTf%h] y;Ců°{w0hP`Ԕ<05̍hlG@uFOo<" ;WܕAϾH0S*Od2&U\5"M֞Ní #|I "x DC3_SEwl!GÁov\>=5;l  cZm̾ڎOr_Ҫ .Gm t50x Y|a3@Fk7GĹ $"d^p i+.AzeTA: Z>8}z =4?aNk5{OEp^Jw[NEg?2 gZfQPy ̧ZGUG#BWX #<-rSo{D2# "a37M\\3f!OĬ F6P`Konr}X]yJd $5 $`Be Yq#eƹ/}^dǧi`F| Ialt֭Ghଥrے[08z TS `8Vl _B3{ ̓>?{ѰH_`Y]Ė^툢P M~?J!woco@l,T;%LVv^q,,ct5!{K+f#0[?e b'mmXM%0!ns"bm*zHU"\@ 'IepQ% pn?7MIySgョ-H[?m%o`@(lUp пVFh(d(g8h">QȌ\>C[n{% _s{ϟ.΃yuwYXLKhђӎlo+sj/h;NJ$3gc#wHx2(aK*⠗'hL͸e0P&@yߩfmb ndqTHiQ+?FJʀcCJDc(I@%#ԎqOq~Rb54=zHХ6t\dmE 1SH@Wۈ.>6b-֝)Tk-%11P{SڣB9sз]* ^_ [{SYOŨ4\DĻԩC/otAJT}'K[!0Q$4I^;ǠI,|IoUtq-\Qg$.4}$IڅÕ 3CE<|,85LJXvsuQXqM #m)'eE}~@ROI#RXso\`O58'5Sȱ":pCSqPwbw(n^ÜWTJmҴoOE~2Yˮp#鰞|IHԲKc`]:sku t+~v옵"D?uSVČt:uװJ΋|h\ܐ˲APKXCWli<6.˟PkGZdB•RKe:j5٩Kt뙄@-nP9v+r)F/@A Iz;.@"U31 UqKܛᩨs^ptkқ@%ܟIᛚ;*4b``ZS,lsUvg5º(}C'DJə̴/M{3T(( *7 V)iAPB_`zB"Eu] i܁y~H!` 'T<|̑s;?FSxnCJUOf0=%<`1. 5޼1GBQglYNa?y~Qc̖Kv,|}+qO>vg;M/cDKN1Jw!Ě->6FBpN'a pY|;.bн^-$r%n$u"}לx3Cc8`^m 9^CP?P1v, 8F@ʳy37ўW1w yᑣϬX<IsSoq5Pg̭JT^u1+5B[r 2g(6L=D+- gAMPƃƌI8wJ4g|b6`Q31.p9{eg(kkiЧFUg*ci9:uHi"q2 y)QAv)QV%hϥX%$(Pc&vxzkm<<#~1c4ʼn8R,@`7GAlU}izqꌊ3? Q-TUmgD!'OIKxN`8Q72/c۶ߵ;~1/hidž<8ak|iv>Ȳo&TŅi)8502EDl-+qCF>eŊeOxFz9gh Ԇulv^=7|,%Д G ^乶f2?U ׌8Р M+^ģ:YqPR htvƲC[ մ拸oW"NW,ºYH7{:zbV{D*\@8Q:4_*k|vK\3x&C5qdE9DRy>LdaYp& H6pNO/RQ"^v"{7/\t,&z^IPqB(_؃`l8Jm=RPp>M4j$8@Rˢm:HN6T.0T@IKE~ Cᐠ  '{N-O"U@*)zh$\_UŠ܇*{)rS<MhjäY"Z9wE`sD0n&1޵ YhТ9&̠^3 )r*IVR+:۩[,k#`܄U'J(50mZ%-Fqu\v=N͎fLrAoa 9 }k`0Bo! 0 ܇ˀ/jTt4\"y"ޖrS% F'i F&7_ľȖ7m_LKXjz*Mj~:<ZfMl1-G$aH]${{GdyuعEVKAYOڸ_ ?Ӆ?:-1`?EtSɹӀipe%˭2>C^A/jIw!Zf~%xE3Fx>xj&bҘ;0`˒E]nPFċeWtkY+3\Zfw 'Kjun>/5 +֫#Ҹ7pw ]->˹E&Tڑޕ_ms3qW9.ဒÚ'{z6SLD2}h9ҭt*;)Z> o5$/P)[/v-^"5:ǏYDXs?mdE~ Hy\l<|n!V+i\oerƕf9+BX] "=-h{Yp67yW/yGl[U}QRM?Z1XH˨M+pdR?̾ Ft#hP/NpL*.KW+1I'=SW#TU_&}*bkmN6MRZOyyQTߡ'TU0Qn otM/^7o,ْT]QtSERVAk>"=F-iO]eUvh~{h n2,eko(Y_hfx] SY=Q0_b$Loz >XP#])2k"Y6ƐA}cN' w= hsp1T\Mr8(6ġ",{HkY~6 i``MO{K P\=ё~W``07mBr*xZWC 1}VQ M1T6hLRgFka _ƝQApb2%Ia7):C?ˁ8R_$ *3MZril+YG\9=J\ڣACiUDf}]<{c}0݀6\P޿i{梋 \Q"/./ &gZ4½L1ihp F*~G [`?GkNʚFjMս Kh~'Z;R1ʟ.'|k9}E=Q`3 I0 TW$p2;BŦ~N:DLnGg} 5 *29qB­Ǣr)L֣j*7ƻ7kɽ mGI)G~;+DpcdԐ䝷Q XKtPiY>" ߎW': 7jjյ[Ta|$)c`C@Az_z_~ȼX[зKq Ctm5gWm_R$_іw7}S1@MV F/.('*zWVzu !&s:\ȠoFx@$ur\s9z|u#4{%  <F=H&=*ZPhʷ[HCjiLh5uUz,h0恠_LJS򟀼\+ "lN[/:nEl}pjd9) QUes28C0(5@MZ4ڜw>AP-mS(QķkW/)?,L#\^ A[ luL)#QUc lLK#'ט< 2XZYT^?|36osJ}Hz (MdCj@[W LZ >zRa?/~%/1OV`v70\:q irRj-r gR ZF+MD*_\e3 ~Al{Ѩ[ Qg؆IOB~VY`|7>=HI%&g;gDwkfSYz"Su;7.Hr=>w'B -H+[ I^Vboj%kc 9zKKyM037/hCt$_ùda~:߽kù"hh~ \2xڂ;H_) K&&xeiBz՝;y`~N^ $A՝1˅)u—@KSeɢ05YwYRؒ4JV>9x~f7_6̲8X-*:߯V|cݺIЭi!Ph>iF -nhMGԮ/ѶP{b , jla}^}ը!F N_w b PZSګ5]Cz34FK1wp]l!2܈0(ԙ9NH:nnjfSm( HaʸK/Ml{ʥ PDfNrmEֆ&h̄I4'.Y#1fWcKI"Pi<Rlg[Z98{s+E^ J8U$>+At᠜/kТ4FR6rkn}R=Qd+ی8a;&`_Cm-|p 39dmfAc b _ԴAx@""YmeNDQ1+m_z]ܢ"]B6q *M1›\ޱ@nv]M3vM$|xCjptz^+{V|$6l\c*i~y{*kV27Wͮ#; B`f1{]tc}jҘA{8x^XIծULg&0 )f1F` L]u p쯔E_:3XmBJymf`g f5"HcM#gla0z_`ًW1"10~ܩyT{{ݼD/9T#YlIt"N'CI,/n 1$loқUͲکK5,.=A8vM^ӦJ Jzm _O[ag4"\NHb-8+XAS)H :7a :z$'}滃 05@^8VG2dVOC3'chpwnemlna%JqO[[ YG#?AH^n ^}.FO@*lt4V"C.UHO'1yߑRR׭ Vk9e|E0ݹfbe pcʋggF1G7Cuix֌%Uf.v{F h]տT,6~Tu_ΈcWѬtڕz*1~ YW>{<΍NnUcwE _ʛ35GDy8j-`Y2lLõ5qiB<4T̏KIv| ,D7ɐNt@v}z}gjB|vIئHmʬz{ن *ڋwn}DDX{\Fh{!""q7X, 8TCvSTipٳcnQ+DH`BvZ5Kf+X֦vAo1,~r\ 2Ct_=򪁵A/w|f,\tP R)1iVu֍DbUz=5b1ja6R!q"7`Xg?CtYWx7 T gwl ?.Ԭj޲JŁ.3S-&\z5zTIrX7k/i]MdWJޢ.o#\|U ˒Y?M_skM,έtnd"!SM^k}N% GxJs➯bS%Jk \)$9 p'F`K![vl1yML줒!\hV궨e1AS)-m?73U.CO}50]0<؊}A=  ghY&@t\)j^[=I5M@f2'SN!U!Z2j> nϡ;f-A&v\XYbnY= octQ<;J Ή:Iiyh}˓,Gpy]7mxCs":A)z\"=\txh;MJ XO "үbe6i$=2}WZ`aSƗ ã'$\ca0#u[FMݮ(*{EsZ`v׮>* câU!M FEXSz} |<]1Ij(;Pش=z B&tCw8!p_6u,VDQd\;# c+Pawƒ5|bN:4 sCJ-+:`"\.vw2 O8`%u`Tr25@4h(47w^`M&@$d黷'[g,W"yg1po&a^2Ss)(yw;*&pONP) Jܔ$xI/ȸeþz"Wr-A#ۙlLzwȓ06*; c퐠/K`A]I9?qi^i[k\R8nme!SLDuX `As 84AۓGr"VJu?N!U/!#@9_[zF"JnV; ^#f]%R^.:']!,މ\haR^ 2NM=IY:MOwycS$:!`H_`^Zj}LCđa!!Hd\;U-FˡN:?¬٦[(z.& k:٬\$n!6U |$(OrWuW@zNm^x7%/[@k]0Cdøe&{Q|RؽYR3Pdlz.̪.IAC9Ӹ0N7Iͧ]}2~IsA8d+% ]2@E!%&-]LApГjcz.zԋn Xa,+nm%D Šn|=j8Lo һyU#(΄aMb,٣#p4@њq8}`_?[.Nuhza3)`^IS!{]) 3:Eݨ@Zɉ&to  ^KL|ĐBVXM T E)R"t@`[&TBZ eN:>^fGDDPYĂv-9‰tHBm(i֖ڗ;8Xr Σ+u!~1l13AF6$C>8JԴGY杆ĵ;d6qjIP/SYsgWo>, Rt7V嗧҉}@](bd;B>TX&+ d. 89O4t h]bo˛˪a`oW C %{n.v,\c.ώ"](T5k͘ DPiڳNͩgB1 #'!ykmezـ`͔Ƅ1qAc8*xwHE}R*k,қ4O%*dw]N6Th"֑@21k V˸煝v(~SCp՞:OE[aWHPnmBmJpD"[\zKmy'?PV7HۍlJ#VBٞ2QevrTMm3YldS*EdwBhI^S9$35̅§0ZOH.kU:Bεgs}d lRNOIRG34A/(4"\WPn}*%ƨjQS%cN6+){iJsD+-\nZȁ|ŵs!S!92p!*Y\*_^P@UfZ(~rTyZNDoo3ԅZMuqcb6e8E4kɘóRΆC8JW*2cl,wbޡѝn }$o"6h!A\mhR/_Q0֙ϻb[s:ŭy]S-%9ṧA=Ǚ{$֦C>ARYI2+։^cxd }Iw _54rWHr 1\9\{Z'<>Q!賋& 'yItF"DaiDgIc9qv7s&\w'x5d&|֬ IN(&"o]fV+Dڕ& s80&7UQ#,؀5V !(_p^ QRAMK P~Jާ=1i8߽;ɧLbg zj2O֏eXc(9Ywݵů&s9Vh, .TI}P*)۝$6Ǧi\}G0YgޅBgW}}eŀam#CQh1(W74q Hm+c(9 #nF ۗCNןF8;}+k v'SU5бrا}')D9Ls4{hi5ׅPٌ ͉،ki >T;]xG=޴G?MI+g5V0fuu`ʀGbv?F2R^;x#%ğ$>:׎kUZNX b}VSm D{JMXqYZ܋ETHdE*a+Pa57@ `_->|hDu:kymZoLWuD+ש:ޠoD6t)gT4B#s|<@DA'N`*TcҦEc  X7rvP?QĹ{9׮ӡ1;eT]iiD 3ɐ")GJr1ǑDZco2fRsdLDvXՑ)_֞}#Y_#z + @:,iͅJwlh~d`RPt3,(k+[&}PX]Y*jDu y2;ͯ٣.St5e4d6B

p!wS1p*rjSԐ[P / )@a< Ђ9AtCce'~_R{  vӖ֭cMyZM#IiW>_5c;"31:MVwrw^ӌֹoc%c_3Fsd0E2NJRY h]=y P#NrrSArg+Dcp|{nGov'ڕdE9?n'J ?#2"ÖNm(+%O7/'.0Vgŧ>Ci]5;F# ꊣdk*ā7(5W֮N`f}ua僥 W+F~S VM0aQy)t R?b$VG-`voͦ*2X ZR;G`n>t3dMg?VMT ݇!lt"ܾ[4+Vls1m?~CqN"ӡb3 A3 U)${QÛ=޵) OSVy;&Bk5'g%L&o/&H@ٯ|2#q{^aGAƶɎYEU4hY;M/o'*7-AHp_H(Pֳ@KX ♒?E ł1:tWWH{p!#?6b[>h bt {::̉l`tX˸xDZf̦sVG*?Yx3k߷2Ge.U IQKg =ݰ9:{25eC:P~gZAxc%7ڕ.]m: ,6J,%">A; xG* pubA')r+xSXFt܌[;&z^:T(U|ZXgQ1OGe*J&>$FhA>l$S$Nn80,+U3t7cĠw}**[ߚ4JS<'wƇ-7Ww&=SYCmD72gUtEioBpILp@ItF"&n5;>qc-utw)\l<#swC*|VsVʼn2rwåcw%42-;ۥlIjLRݣ+ 䦣a7NjQ30 B>"ֶqX!z*QǨGdșK/ >91_rj;_=M'g 糓٬ֻH%[əBnu[^0>^4B+J<_FCG|cԕ.()H%*G?7wH $Re8(޵ N~ti:u*Кb:ofȷ 7c{ÃHP(d_%~+(,c~7W7{ Π #FFpG)RZz@"CgX_E]Ƶw3)3Ň2/+.6=gϽP7qKZDs[6`9hX;>=.Y{v/sv (?\)$n!"ki")h/ہlw' Fw#t-똺K)0 8a9"F k+ 4!:㢎*"ЄvW@i0ճ&,|T\[zQӏ =stDP}sV"1Gg!$6%r]ÕU- W20q(D%;d?Ȱڙ`%e> ɺ!=>+%leuV|^OC>Iz+0.Ajl&|R4d]F$_UUMhئdlբI`R!yxIбKJinA9Uܜͪ./ *fPB9Wg>܅KV;Sɚ{lqLHmu19t2L< o/n*c6jGTL0c&k&RA8hw3yST_W0,[s>Iũ _ QqG3b" G'GFK*{ضO~dE,b+Dr7ӲЬX}ȓ"ԇS(đOSE[TҦʍ)Em+#1Ed܎+Tew =reu=Q524>RQw&K?(Yj%_],V؝|<_+33K)qs@yDWlP͟.p#a F ,II<oY T+g#;3vdZl0_&}9]ׂ8o l$áAN1& +0C^o(H‰vĴ}RO1h1ܖ"iyDH@;G^~ CE ! ALڡx2LWbom='qƃg9 % a0 證+ɍ|nV /Ig펤`Yұ B5Ok-~bT *@'j(_ELAj1 &sչ9 ~P;Ipw@D_m[tCsu~Z$HT:sm1!<*e~\7ߔ#G>"ۅG=$)9xdcjHRJ>p)uBzVx5 q._˦~·khc 3ɓ. CC4'JdB DͶq(n_.gtl݄LYoj渼qD^-}M;^= `ԗ*kHH]Gx(]t  l>" lh86A%FG+uS;0Y:6s w&u_^N%P?ZE#>iB>81cR||9JDg\]sbu:Ѿkbm}SBM7=:]=!u; #9)t͜/kއ5*(l:4* t\-bg\W@Pm~8~e$DA EPAXÛO+evA,b}"ZMRLJ}(,*M&sb)/^xkH;GX4>Q p5gl$B,,ILh a':F.^^#QhZe|Zen/*w7 9/ )mUGHlvtis8`r1ZTċEϏUn\9Һ}Y#:` dkKfK*l q3珹%hU sʜfWO7S'd !9 X0w4VaddMRoTt %a4{;K1 Jy# )&{2H"~˔>*F;tSBɑ[A5J{z77 uڋˤ=3fDRMuۮ/f}J;=b2$}4i ɖUhg)0Z"Y=xfoE$澤䍈7"eݟk: V0Y-EMWr*mp&,W2lNMU1#W~JT RPhE Tשd_: [K;]X y>")hұ8/?TΓ̐{cͼ|Ō>7h0Z#CktVބz^ө^9mWl%kRq%Q?Y%4\Nd{[4 G)iG_ʬ ?[ 1%|w?<^sD~ț8 9'K79.xˇxD[A!K;8k-"+ekj >)=T9LϥxԪ1guHNǷ/uѠD?.8 *{HLD/ 4=";jzϋd<NO_63$ĸ7o%8ά,gD`)7R@{˸0 䇩 D:2Cmx[NӉ= V6j+Ɖ"ʻ@=?aNEuN91 rȒDap].p vzw﫲SʥHF7ǙaHEG _ٙ3 yKyD2/ilJq${9tZס7x0$R?P ?Bx)! R*$uF;k?jVDqJ˅n I@nڡ00:O1fyH/3xhU2yΠ ? u[@euV\Kbj)Ԝ3Θ@< >ùzBQe]M:.,.:- ?WwJ:&8L~U[ >L;j5Ku$Jv6L4so;0h=ݥƚf1{F:(nP' ƏzyP;BPu5z鷁2pʴG9de?BsA:ӛ}JfY~Hj`.v:ħmܑP}.MY#Uj"nc󡖧knUrP212[-BGJh`]8Z0Nl(CIg,ŸW/9karR uRحsg9zwpۣ‰YfVK쐔/]p`Agv2dℑ>vUn!A5sſɷQ%)$ ^mnf'` 'wL>!AžV d/P7'w j"JjGvzصB,3' )sSrѱ!8\+^z&dsa E uYA6g xKfa8s4Wjڬ T]%ɰaI,Z6)Uy1GM0рc6 /PftUZ4+wʕ@F6JT _Wѵ{PH:3*8Hnj{Y_'6vQa0>%ERA#$5m LS 8?fZɿ!s ^= $2I1pTQoK#ƻ5WdG =|x!&y0ԙ΄jbH#cPd){QTN;$w9Kj6W%4@}^ܬ eqe7똠Dl -ӟt$O5Kڲf}|~| ӡ \7r1dj3j0h;N AաkD0qjve}- 㫴&b)ǘI@eMMX\雍q@apX&, tqȸS,.YIj-l%xBE۾,xIӓ&R-=lGRr.>dt #|LD`K nՉnK{!ܺNΦniϮK+ 2IسI4( F@I\ll.Wa geT+Bݒ"xL [W f2a҉p"I:l _W;iob$:`J zH+(|V|xMSTO))8Κ~P,b7ռh|6 t`-ѸDU=>!0];Oo[.ҵ4D\b Vy93(?} ڼIQ$oAazѳ ǿS)SyHk&Qn])xy(5f$,$rBDZ>g}Cxvu,m#K%W9xy\rPo E-C(5`܌*خm)!_PzG<`Ds۞餢VᜉMRcf9)rA!^GU"q|sbRŷ+HaS(V[pi+f3!ڜuZvk" $?L]<-ؒ+-|.iO\9{L8%{iPA9EPp`+Wt*F6Y#B&7 rƽ dZS)Ѝ7W\u;Mltuy,^PlE.;1ZGIk՘991RM  xW/oK_Ŧ=]f)=|u9‹m.ɷXW=D4&`*%^+h31VfRYŠZA$1=ɞȶT#nSd Ge&(2t6!;mq{[E۵et"Vbrpu3';?K۠ V+OD}"7]d@Ͳ(=R.dW{. " ߪjw3l*ڂsE8]rZS* z[ę'߶柖bGk8cF%0t&8-b坕q S{9|]@6(DjC+>@Ш4s޳(+lMٝ,!b`LZyp > S9AX NbYn4jhC7D~w!7o z33Ck2BەZ0էVyz1Gjk*MRMD$k){DߝSWcáy9W0c__[-kp;%%:| Y%Q"QdW1twYj Ayu]t\ =lZ`yzrZrS9WU^gI`GBD+F  Қ{`1Cuj0,ᖢJ*sv#bwމagb/E۴]O**Wٻ%WͣVJT5!d7{L4ʓN䗓3xQ_;FޯLb^a?.}c0M\4`pM(^s&dk%)#A18 5kӒ{硾B61(3x:`Dy&i3P *es~梼&I6M vpoQPCws@is @ʒ>v>W:<7KOOZwtC>!V"f^ 'ۥxTgXG70T,i}1ܜbC$P2=VzanoO2B#krKBb\ꃇb3o0s*A&Oz옸K6i&V;};ӍV1$շ_y㰑T<1e-KR'wm[YAR=t;9iv5ZuMt#B&nM [U<6|OSmD*sv/(_.L[F.Pxdw#B)7K`Y-5gx E)>QoXHpiEMj&QǛ?ysh-{eNen,34}LT&}oGEk#mXX,H(S| .0-' u8<,*l~=X7Psp;wX-gYxRXD{j 4,ء?NxωxG4ǂhGdN.wn/L1#HNڪ]H,Kp ?냥gULtBeI +\>sBAF A g(JLI؅-rw;UDAΤ ,jhWjJPEy@B1V;DKEg( m:V"|9ƅu61+] *`(0vg}Z+:BLW0Z!i7+ 3لOpO~׈'?(fdB;tz | 0,2D>d@s̬)k=)dQ~O#Wf\.]|V%`{G>U <*G4Ne` hum{oӕW,kJF1|urFl 7w<[k * &$x&`s~<R1X~7jZi½YcH5LC/wI ϵFzoByrrɉSս!yVu xX(ly'Te az)XF!L1Fm&ڱEqj#`hF2!O#;W+6܏weξGQ^)Qq%O߂%{Q杘qmEKQ{bY:'-ym|@w2b+Tz{ 67/vrr~QIlj韪nChh T?+(O1QJ/h3h^:bi7A8H ܄'SP)^}4ɵoBͺ *؉p1?Rgd2ai",G=ͬjЄ7G,E"pAx띚*x ZiBSgtLH]o7a-5XqMeTD9l MG.\A p-Ҥ$ 7Nh2I9 /L ZL1TDa}+UW_Z=a=[C^tYѼ0 B͛(RY﫱5:8P7.&szOPEN]@\)\k$&{!'i 7?~-$(֯a0fNe2*15uiMQ^da uUb{騱X0U努g͓oHc(8g:(PGFI=\ґ9LtEStsЫC*>BU nteܰզ5O+SgJt7#F y7Ȟ\zNgBH7(#f ڬO8BjAV)]ll׶<*3\(BF8iqJz>߷lA {EAi#Q*/nP2'+T+aM/gB7AӿV֯L҇1aen5@ޭ]IDy.&hvpK%v͖ ٤I1P0JY/gl&K)hQ$@8f;c_7Է@-7^ px0|b``"Svhk=Lk䞴H>G`x9C#3t׭VPrTl3M4"0 ݓqfUoz)#g45Pl֒yטk׀RcV:Qpe+# ZBۃ[a~/SNk32'ٰw~َܭGRcJp6 lHj9ecص(d7?i,f| m^N#'%@Ix: j];%\\q6S80VdC[E-EKncRy1Rݱ,wTX5fGu^8bؙ\|6y)p?x?JʊOcOc ?Iٲq/(}{oR2 'sMK)"CuEQs)KlM D~K0bv(cZWdG+nĪo- ڙ×Yv㒴'0Җ>;6m|+adiZ2zY8 39Ut l(δj%|4qu SNn#vӣv|.:BlEJ)UTs1:3tk,\}Qe4 */qgx~>Y@yBTk-b6'$GW^8L=|Esvϯ$C԰즱O M*yKUPg L[_L_W`QInHOɵET\Ue,zU/';I6)\&ڂ|hC]t6%H wr@ r4ֆ|Vv!iwm qboݤT0W(h'Cxޟ9>.QP2rQx'9itU^,fY`rp!-FGeCj~WߙW5&`[lgJoe:q O¨\%Aꩆk7=[It;%m@_?(w}Sy*GNNxmS18RZަ\9VgcG&fA@qh؎\RۖߗU#wR`HX)|Ǝ-=oBW0Trn'oU&*4l yEu$4Z'e,VAc0L|] |:eу>9A~3 KEZb~LSիdv(|D}GOɈ'؞QJ)U*~A4PE,2l>,u z8 YViވ %/48Q$ /ch"K?wŨLW&WFd6_ᯬ^úL)$ KNZ`5,otm|> =#x|'ց0w_|@|䱬R-*e˳v[뒓Ahlvfk|{C%q_VDnàhpW"Dkg*J9Kֳz! {ߨP`l{rI66,=YΎpXPȠ("̻Lj#!Jg|Zt6 p (.&ߐ 1W|[Vy@gB&@ 9џ$Uimy7}v[q˳_I,\`VzI6R6*e HDvE6_Q6?NsU2-lMp6mPZX%BN72[1nB\3#~qHLᣚW3jfpkt*CS$"܄uD/:א8T^^-rz OFK@f{h#ӳ.g Q vzJfVzؘhΊ\ UP+ l;EDRt S> 7|༩=ٛS'U=8e6diH¡]=HKL\QB-)ns5"h%;ҭ,F5d13aF݅*/[IUMox_gղm{ߧ E@ KPz1M)6Bfx j\0мK5AwҼ\TOMz9F6DoUsg;yZچ㦐KLJh؇||.f%.9D)a \PWSFb'gw*dz͗>o YQBO}$aQϬ4o8`vp'v۔i菮;Fbb2~(@˳ƾԶlB]~yv<(M-11~8LF X1.а{ 80WaSKmX ;e*12 ſ쳫〽 6Bو#ZW(I&ʉFuxp!g{M@v2jZ=~8L&wsFOm{DuWi.TIN_Pmt=(Ze[0OܜRh%M2Nu[#XWI vOR`%LKf ~ڊ9=҈۲gQNӲ?k ٤Ldr 8t|0@jRx,"5oWA{T}2pwP `B =V2ۚ|8njOV?EdUषՒb@Dp4t3?l;yӭ~ fV#ej1vr9r iC#2xR}q+-RGv:.a G@O5#,}~zSBX"-X}"z~=yG)қ7'#F|:w-UͳskKox3D5}߶c;A4m9H ^vu7ix& ʿ\CMv$Ϣ[./ ~хHIeDŽfCe"2':fHT ;'RE/w;Iݤ -0+I>.3a!HUdY׮(^_JFmwjN㲣"8vDG\2Iƍ=ɟ3@?`k Ŕ #`J[Gu=WujջIooǔe`ټ =\e/v h{~ҵfw'$`̳gY-3j\aAdai DR4}zi=i߉겷1ϵ!6avLl(|[o ܕ3+Qfd@MMGTi\˃Ds ]a/x+5ޕTSO-3s3}H[||P`kJG;Mpdy`F: `ML9ryeUEN}cΊ Jfن]fu%oE[P7-,k>p%TL߄Cb_sN&(_"gs9Eち~nUhyQEf/6{"}xڄPd| xˌ>f)XANGB3?%UPhϸ 8?ul+ܽ MCckD׸8R EW "̿2î-bytfx%|b VT:O\FNjXN>F₊ h=__ DwlS-q^(ay/lZ.+.фۑng̓%-67z\8yn!߃'Y}Qm@I@wwđ#\G$Ubj<4 83ܖB;'׷"A/[fZ;}Z1(1;‰f;o+ :.,Q^A"p̲~d]Bbb5t^ELz)zZ=5iz& *,{0ovGҎ  WMYډq|pSQǯ00P4F 4\j$MV̄Q-CƞC_EI_nYL jkv*' ͑b% %BMfSIoV;N⠪[C(_^gIN#ָAGձ62:)+6HɮK.F64QHW?E{1"6MQ@uLu;ʾl)LR}ڠ¼=,ngth`x:~xM'3g,F14۩Pqv}u2: i:1ظkwܿH#G>չ!+ED1)B&=+4w~3`;i/ yӠE[ RȽZVReUUk@E|$1*{;j\,fe+rD11!{9}&l梫+g)ؼ<]bux82 >FP96igDɫGۍ]kRvugu&6L,C./_:$&%na⒅\)2] >`DHw??%CԹ|> wF6@̞&5QH+h'C۷WV4$GW˔ 6퀞YɒV?2" A1od\ Ҡ}t.UDъ{ 2$Kag(q3{jp?%M @Ll[Zۈz?#ce/J2חE)97cem!E)^ۗ2$dڅ5QfML/G$pXG"*]WcTrÅ򙼣B;#a!`N+Uqw[ 3OG T gɟ9Oki {OjSa\TQӎ2Z%*ʏ#f$ R>h0 v+=(Mw1lZ7~;M= *@/-rQ: 2l>&Bwn9(f7 ` $]!&|,^3u -h%ϠsZ6+d: /ktפY(ȎѼۓ\?j|692}!AbPU <ƠW)ExRxl̩4}l 8b'鼳d!W;dxc~k oWC#΂3q~?Zvɹ{WQgЖ hgik@XiF(xKIdQY~z+c=PA~<WeK2Sk*Fw죺n::UNX #[cW9%5,F<)l{R=v閱UjpU<.Vʀ]HNW}pg<1b/uu}Gtx<%ǡ3WTj@?POp<~m؅k2Ĝ )ˎ5UGkCvL(4hf"]eCW9J ae=7Eb} (ZO;5X !_K놬Ms#昣[aM=Äɕ@/Syv{ܹr(K3h:Kf䕉# wpq֜)UBRT2J}ˈغtOcD{ˀ΂a$)Acq'~=o@bk]Qe/\ ـn&l94ج7C{{PSՇ#S$P=HAQa$XޟӺBe%`pOfiBNsIw[.,# 瀒 z}JS"WdL݊&(S?ʺecD ( ǵIQj-It/z "Y&ML#@a^TTYK/ smIp!^O![ƚܰ\֠~G*h%SVDh?íJ7y0@ARxVBRE}O>lmb 3 |S6{dGʔ{W'IHU], VH8Hk|q|_,!:ev1C~xSg#=CYl\+O0y+X:vodkzZd\k'.-0 ˩mFM4՗iAcyT=m)AJ>wlEc6TɃ~$>6WFxꗶ<=D-YUWz'$BM%]B1jYv2=#և>xAɻom/~hi\$o|4WR@0f!U]w{ExF9Vk* P7RP-rI14['\*/v9yga$j6)&d1>%4rB)/T4ZOW RsX .< /Znxo=F|_9rL m"zW9ӼeT x.Fq+kA2htML26jJvsH/܏{BJțn f/T=qӝoלRĢ!+ob#} ^xKĂS^'BlY4hhnNP '.{%3koIwt{8M;2FvMo!,NQ<)bVWjpXn[u^]S圢=3D[)fJSrʤ#t J$枙CYp)JG(*^^-|S@/k.s";pG=c8Άv Se>ڴR.gnxRȣU̡%1H}4K)tAHQ :;tv8,d.^ỪE%XlG\힚ƢbKsKACت{&!py \dՖϏ?rx}3y^% ;2=jq*hbB\'d:g [oBp-_~8-^VNHl8l]xd ny$Gǒ{A FPKNjfA;pgq}6S^3(R;Fھa~Bń?Rf'ۻr"jTv챑S@cr< d3J#%, )ԝV?Vm!T:Ξ/1!y8)b8H +{/dSm i ~v ! lȿ6UBsAQZvL:f]Mëq{$3MpbXxp5uTdBxwCbOȓP š+jDEcf_iLG)8fi\E^43Es~IUhb2/q9wjA1F3wTS:Ot \d y΂ \ '/Ϧ쪌Ѓnq#Y'!_}6efg%`=3Of<:GQG-W+{a3T'VM}#g^nud$!Sy a(3\J)WPYKM>74$"K tvP$( D~L[DfxO(T)vҜ.C4(|N󚰻a+;O(ķ4{fVmŃuv$@ iج ޲][JR,;+'%HbZRQ ɪa'!PRMee˹£>Z5)x߆sdm%Y`Neە:O^ˏ|iPu|L0}~ 0&8|:$qP+J5VI Vft#~k =i_Zٴ'kZ/h{hwȹ01r=eHtsllnߜ,5~ïЦU]!V,:6ݔٸx&7vp<0a~]y ~2Ͳc*$V&,4< ea*򐃚AfPW"\^|&ҁy4NvO2 K5$VA֖ypSUSf [1T\`F[)tl2j Cm_\w>z _Qo쿌Τ\Aay{>Ͷ`.|H#Eʫf tEU4vVWPqƒ{u]yb[Z3[(j'd,h0_NJBt(r ȭȤC:ð lY נH *:ςZRwd_;4͉H%{^Hf㝘)G7u~   Vk@auun~.1|NåOr]\My\6iBEP.+n}*D*F!a@[zA"TAL u4bB Y2N޳[hvN+ul1+v9)'Dj`yw. G),D75 wc, ՘ R֎DS+Jn' {ZeaX+\}AG%,K7g.1XDfԮrm b/R,4Ȓoo؝Jݙj^l/,Q5v^)64PhD]Ddc"_L2F>Ё0Z{xWYKX<1CY]8u|}C ;<Gyxn==JBmܑ؜?Ӏ>Kч".[CyT,X(ÐO=-S{¨bx&_33t"GV|xqHԞ&PM'Z׌ۮ2qgjGZDz [UhJF8*_Fq/vD2j[^[qefB|TnLoiOn? ,VgU%N o2b3|z^AɥkVELRP`5g]iPd!:T caѩ?0Pp n|#9|: aso݅ =|e A.n;ikl) >Ӹj7@Ь$9=6&WrӺU0ND& 'rZ=u d.<z?ks6ڸzn_m/ڑNP(lrlu[ h?. }IkaE1Tm!+2YN.RÔcUt%g;-*p uqlXoˌ\zFy]*}xvzϗfZKLDӰ,U\Cj|,7"'Eu%]Т~;,HW$kN $9w-yYw)]y5zI= c)lfBDqo:0(@⧀HSвTuQ#ĎF>gU4N%b+w>]ósE T!X&>SG r}a=<ڃQF⻚ HCfV~T9X(k'lizXyJVŁٛYa,Peۚ }BvsUu #)o|Xy4Ơy>"W-%Q>P'plxWQN1 ڲ6ދAŽ9Fs&iMP_55ݰM+|Ԛ0\'WǛٚՓ2SvIZ.ʻqd#ag m6o'~[ H}28S(ˈ t`{W"~gb3Yj.lrL<2a8D O$a%a]]sj]H^a|t4/rk'FSI͵1d1\i*{YS 38 f}g$ONIUYk~OPwvrW(]&Lưa}} 7u#8kg;7QWGBM3KA5X,ݜ QՊ0c\?f i0F<-2,J^+nj^솻a϶]^(iue~!%KCZ X^78, Ffy7MW칁<Ν7'aj<}>B=Kex0"`1GHQ <e?^iYn4=m:ԮV4`|ױ=a-.^dJj86ma2ԟD=ua|հCvYzrkdI/u5mq3 l344b6Iwot,"dIY戮y!getI k'!ݩ^-⠭ҧ^ fwELC\M-p!~ d=ܒum?$Ay.=>2x5P*$%IfQA{דk2s`ǸL!}- H4 YEDQT+v!H'cx$1%U3#A`,4Ӛzyod`- $5ư|򃹘 kVE=;UcukjM)5XptAz2o }⍟Xaӓ|حv R̵]rHy@WXEUG-GYL=.z)IΘn?skI!wM\y\zFqqC~4VY?ǧTa#}e_j &kiIV" C^O@jml7P{)3/$;>R؄ u)-fRH?(֓px:Sngu0˰|;A[CEz>uӞ˟g(X$m0]c8z ~ڴ" ͸:r*ЅdBښ2Tp\z?\<ieaLSj|^F!O~FBҔI462g(Ngc^žItq}gm9=+ #'0gdvgQ][\"_2d1<H:T'ŪAx_.3yٻAZjtۯJtH믴\\eB>Bbې7˺BiCЃw&JEqC- G]AK97pk[ 7E*o?i=kM`Stx ⤹[,ͱ@cƥ@6 fBO1,uBFLokܦ}uB _ҝG,vK( V^$Ϛ#GsomIStu8v;lZg|>D) /ZڽK99d=a:٪=YBkxAhU@Ԯ' ^=YKS,* ~˗Ʉ80<6m5=NTQc ەE\4S/:m;"'WDv%N&خQ0GT^uZ|$87) ug|a>̜Z%zB2V|g ѼEQ!rjv@Jm`Y7KiN\9@@{+w(x}#=$=a/CcrG(W()qr`o8ļd廙!ڽVu 1logV. _k54MDVnQ$HDK34*"7yA,\L/ െjhSVl `oͿ&f QgZ]S⇪Srg˖VB}V]Rxlu1 $+~)3;iHOg谸9Aࠒ@5*ݑF<>|c*K#\@BT87n`^ܗFp`'E Z9Um8ȉ Q%4B7=چЏlSh.O4)MބJgץCr7SH{fxee;!R$%v{BOifͫk߰oU ,)Wp{ƧUߵB}B+d qsJ_ @[ p- 󜯶hi]fD km7WS| A*0)΋}7?-sԕJJo'uc.H8kݎwŞxF5;S7Q8K뼜@+F ke*]vےq3ňu.;D'g[kN #vF߅㚵YlT}?]01 Ǔ~H6ƊP6[˚5}h9+s%v{%ЫrJY?8daDzXꛨX̩Ei%9T$H 09Ԓ})F5>',0$ey쉷bCڡM͑~DLdoܸq !{Nѹ3H$5uvڈ3:E}0ñg ܰRĽ.MK^_ /8.(tہd^༟\u`[bL)븕l@ZDr7?ų?/kC@&Eo鿗[KQ,!Pmw2K Xc{; cL=Mkl3f],®Gxo׋ nT~:{ZW 3UcT =W?۲&ERe-|UUf蛠F+=ݢ”[2` >[v!G5wwAUw~up: o`xDvz]gg)OFad X܃#]@f]'rjwBشO9V(@dנ1eC1ܔqZFr@^mu ;@ wƃ4xpqحҥ{KDJt ZWF^'SB⶙ʇ63ZSJ]<Żry$tR_- =(K7wƜJ!Ω{'o_**%' |M~&j\)=g0 h8]`@;k_S̓N ݪD_M74)& i&e@v;tuY췢'mFC/ az˛dPSX:C;D*aXsro A˻p?@Oߌ10$:tď}#夎̶N ȫ9m+l;U#H:-;<7ewOja";,~ yNɐڍ`KO?EZl {@ l#8|ZͻWVB_~kQ cC~2q9 K32`G؃f#˃)F.k`5X/-dlnmw 鿢T_* .į178,t(]iҼ.9/od?nЮ}{Z^&BH(w× ;{f|85'\M20 '[koa%t Ӭo)8:bX]JǴt=_;FDMhC1[ Z+ [Wyq7W ۢ+#F!k髷yFXH-}V>G4o gpS2`'cb̤;դ(~"pCP'ri媴8Y]K"tZ2?;< ,%T"0w}$A /-p~%%NJÝ@Zpwb۬4j<5?k*WCz|sꇊ. WTU(_$\YbהLjQd) 9G}ꈽeNf"kg*:~,EFV.w* ]cMSY( &@g LB@XuctygjqB4/ê[H*'X6ĸQ2[*]oF4-͒uB !P MnfG*Pch=C |چƷURܙ`FRAO ZiwTeq6V7Uϣ # E.Ķ ;+{A(=p V=(5Y=^fwH=xf(ru4ov p-5: ՉsHMuh/MuyA?6Ie2'ߡNh[FK!CB;&/n763Q {@j= E<bT`C!Te UsIoK۵>EYI!G.{*L%npgOg0 LSZao{~".W:Yck㓄]7 _ /cQ{n>#pk]SRxV?rD"K([AnXG0 2oe/yiIĤ; :*ETa !{&Ox Ɂ-!TZCnBfg>0^jZZ%y Vm3 |1l\@̽@0?wGv5g*O:)Upċh7n ڠ*SR*=bWv<#8Vns@XYRzΥ4Unj>>޺8G"yT^Aݵ?()Up?k8lf]" r5,4Hi23PQ2s85p9cya9cJJOb5DC; ,j؄(5ùFT/iZivyQ[>Dy܊V>^|>d@R':AETg ;>T x Nƿf+ebQ*ic+=7e7PS6t>j킆x&C>t6L,A/&.k%\vxf5مoTIʝåXv0Hp&A}4;8E"{HZ`w^F>/sܾM8a< 7-/>Im}byk*\'ZĤ5y}`0g+-s۸<,mS{i1Ykç7rτ.-y׿/d7i+2gR<]Z?@XYdW|>7G}  zcVx`QInG/0{ZeUx(O V>(S5yA%!p(HCK7oC~&~SO [<_hn : kFͫM?huG%׏5T`q6z r2PL.Li$r!B9ݾ*f=hz;R N"i_+k݂F=bwq y>횿l]U[3~r.MJ>ϱ=N(IfL ޫ]JN;ۜF7_ /4O񋂜|Ez-6B4b;X]ˆ%/[aKi4yzKj9gn Jグ);DA/%)"X%+gEVX׭ DP[QVK#V>Uc"DiX!a=I!c ;Z A[H:g(d{8^%iru\㈋MsKR<{ЂWM6 )?pILdh CQ hL|d̿ͼG$rOҦyN:;F0js\缗"vA6BzDQrxW֒V/\it.)(|—t$̍;'~v_6_WD>9Ua҆[u,"Zs EKG@PF`8>~IܫFD-aH<-v~b+dPCGҷ& d4y̹ hx iiUJ?pg\!lZ?|N ̮o7z̛QyDzo 61c@o=Eo]D :'qʙ-!(k#LAԷѬgx9[u2VV>OjG6f`_\-FVLcy1sMv s_?T)w}K+c"k+$+I%IzRv3G9> ef%@QOͺ]?@I q* HߖI| ao.4=bsb;oa幱f@*^ϸtߔKPB3c=פ %Xg;nkF˴J*c a9yZgVEȩ!K[L -߹DgI^KP]IqʄgZc4v!w <Gq%5M`1AT޷8"߿􂱯3OKF)r酰r.E_8?09_:חD_V:즪NͰqhoRlJk~mf.CMV"_?Fn4=)+%:1Z_+46ik3{KJ'h&H^j?[.,4);GUD)6oN5"杂NSCd<ZYf~JZs#.{dx}v-zCA*7r\3E:`RcoNB=QEeca7d^yo_NM, -L!f fz=X>haH>.{Нaߜ:]7}$LJϞA Kmn*J(=.VMo>nOL%vaNc=B=%an5m,[{Qw<.?q6%-D3ޥ)R!{Q%pB$5MY;?k*dO5k$p?"i W}ػc۔vbhlwa"YP9qVf=]'p!o?MR *XgH]}R&>s 90dg-Le6x.KD8& [?kz[_J覠تflY}ndLpL',kVOv͟U.*$Q<۳+*ڽpKIG[mj_'w+v YJK:Q.|]ǿ| -Q_0[,d@}lק\Ji{Fֽ1t!`|x?׳mu5bO1m>Mt 4 SEIةqhP-2'5*Krz.KЛ.W&1kQF&+f˪3ER==Umމ$甑laXBzU%+\T| ۺ2J얟AR\l ߴEW%0[GxO{Zۊqg)YQD%Wt=ivp=Dx%4DuwAWOAH[|Ij!wF).e]Xk,bny٫(=њ Eg` +V&?sY!>:w$ $,eE2)8}2vK/5vn:r[ VrP3k"-fØ@'86VbGP :-&20-yB:3kщJ:ϝP\Z '9^$ 2)EU9̅ah[RVQqPREE?IoD4tD0U8a;Žn%)pH+ `DܡM<:F}kRzct;&r[.;1Fx3% o7tN5✹]R|` W)A^kV`+ϋxT@ Dk -WhcZ"R.\Y-ޮ='xrAchh#?YL 3`c LJSԭ&[Z@-vlG .^YЀ!/VtTql(U׉CZf%Hu%Ȏ}.9&p+`SBխ%zFf1Лg{}ۢ6Ĝ<(>,G Jl+)՗|X(W03Iij@+[r=)[NwZ a?񨼅*+y{SIF7YwZH1fIyN[l.n: plzx\WM2=;ri+XuΔė"e&u,Qd9A}1bX~1Aϝ|3rO1cنĩ)~?Zͥ|۱AwoI0WR`Q< N .33|Z+HK 6ʀzy.ۨց0 Fqv\^ 9sG%'W8X*C[K^US(`&FS`5~N`;mG0v{N= rFSuGٌO߀̡OW H젴"Zv39Siyx-]sJ* ~GO-u&& Kd=t3 \Mj .ě%Gzf@dM9^GGh234XiEysٲ]0o̦v| lP.Y7:0hH Я$rqx'{w2|c൅ %Zf1>=zl7m<_mdA5}ݽڏ)a`eTq`4{ޠ[3#[`! 1 gݬ?I<̽IcC+*=}W _h0H ցcLOaص`1ZfyOt/=kICdK5NiKqtmRG@:ݔܰC;2 r7q:!/Ipc1Ѝ[9$dos_{ʙ*= 2GkbrD\W\Ȍ5eaff 7 PǴk( ֤\@%X ?6rbg #tjGyx4ۣSF< ԑ/cD ޽H߄8:8YVtQӭ.]6ت q\YHUz<< 3{N b]PNl m:X8Ж.0[0ڑ* ?ܥٻߠ;x[4JH6i^\qHkfb$5^RZ5{㗔)W*qKzE>ÞDR5aٱB7ZnK\|#*4U'6r>Y 6ykrwٞΗP,x_OqA4 *fOqwsxXդ<Av} ef/ ynWY~m<\Ȣ>kkH×MQ>?nY&Ovk(zgeUOs2 5'yNA$]CUWh+qOlD|kcSぇ7P6D}[ͯ~"vhiե-{ij yRI2|҆˺_(bbgH7bCwpY_]GAh/Z)G!BK&'HcхC:IS)^\}FҧTI(9D7k| MP]b+?Ff! 5k؋J<Efm&6QḪQNNܢot4 S?֮G|S_s)ZR`QR}?CM`8~wkpxtol14HY`.?;0Y߯a8(]Qz\!84"~Ƽ%nd\ w`Z5( rJ%v`N9Gİip OOJ1"/OKl=Cm'` `d 4ܣ4n {Kz^oY=Cy&ƞx篻v)DEG\*nEp-,oì#/D6]RLuL5SgNP߸Dh`T8! $2&1?U/uN-/fq$$.j}zz._=FsԔ2lp{2r#ZZNba{y|jIzߐ˷A<6pbiybI u*P4ZِZɁ) 24y"RFܴJOؒåX**U6Bo~s/n(;莡NpJ:( 5]O(ywLM6a]٘cuCPD.O`!P~ʰwxSu_iwӠwko%7jR+>̧V:/)ҒK|ߗҍZerLK zO2f׼uoVrݹ&%YSB(g>RI*˭HôŻR$M+Q\2{W뾓>"ldݐ )Fiu%վ,SH"8[;&kݫIJz\iJlbi$Tnk"A"dܛ8g 04EWcv_,3nC|L/#9:]hsK9& Cv;K_%YBޛ|uOX.&BQVOCܯ5 _{x䀆+⤁_t[*ְ n\Yq>*Z,?Mܪ=qD< ۵Ӆ:i@i zJϿ c3gE0hS :ڱ<-, K{OC^薆KbVJ#y ,c"ǡl-#>;RdP;̻4\txb(cPhs0Vl;JӖذRk3n[ iu8({-խu F!6wԓLp/GPP`&BՉUerʉƪQ޸о9 1աz3Z B.i:F4Ev*ow1ٷ HՑ$AOPUbah1=.U! G^yDؠ#(nqb .vY"x_?əE1tǞJB%4p|--AQP;}ΒQ/*W^2Zf)Js;\ k@;/gCq:KfL…U$ kZ[tSQ\$9*n٨;*~s@04+Se0 =Ɩj#YU% d0۪|b !/TGLݺHN~Q&OLú;2-c,LʣQ#zY`Q"dy;_LbRj;Huq E SX65'TSh-ò5I,n!}$EVć%3pI"OpšNN5ۺGn.D76]+I @ٵa4)zrKe2 ь`.HԶh q`,#I  |^k^ijpmg;v2w$WQ/tz/jK/QOn0ˋMy92>͊uq{S.XqπOݺD:j` nfVU>7+h_B9/V$H۸&j?ހsSʆjGĬ9=;VHa,E9a'+Sůokʸ Vg KyDo^Q>>ok=.ݥòb 3GW/k\-XD# OI;G{:H’I"_ŀ7 *YSxY yDߍ9OĖa]ՙH()bb5SSѬEn!nR]g4b E e_4 GiXrQ|#c1&abNEDiF#eܸss`VgfnsA͓-dS6'+ D;-_{ ӛ`[baigE6yHfӃcjN|Cmy~PF/\j K+5n\m7rCZ` #3 Gk <*;69>% `{߁tVx,(Kf='8,4?_j2Q^Kxd= n3mI n&:Ur|ݳr6'/>sfC,fWP>u\2=TR:f*Pяe1,oEЅv bOJLZ?GVn3/ekV-2Qvg-Y`ЈKHaa OA&q;.kpeȱ._$Vΐ3c :h0Kpu]=`+}ϹvY~2Fq 펫h#k +(NtSJb0x;|SiWt?n+}K'D'٤."V,R;&<7BeZRҜn~T]-b$"Z3UHɯ"NW$bǖ²!'[Lon1ST^[WέxrC4ըϏ \DCV`,N բ& 0P'SLY,DsÈw1VX'^qZ{g!%E N^uIF|5!.thJVp*j㊶&Yc FgI+.ͅmNH-HNl-?eI"H\ekKE( B2L\_ f5BzͻS gFNa%CuQV=CpQui&r鼜TkZTHVx3<)O+"bD>?!o|_~{5_J eFQ( {DŽo @CJNQm|"6WQSKw%~"UE#v @{S ʂFtnJ9W.S%1(Am@XC}_GJ) $ `'HTfߧ!pq<}{`1=Y,<PYڌ]2a} L=R0fc3C:X6.&Vh'e Q2 `'{ wL'eaT=1'Drz%Ses}gInZ>{r;F:F06;aK {5,1Ϫ ꏢMB9y\WoY Y=Cl:(ul2K+zz{@mwH~e]Ӧn]6g{T q{K**wt:!pHW~m[rEx0:EeʅL#5@!;*=(Jy;E@QLj Xx%W(7Qc^;)}$,܃9qU<Kp-Iy@RJL7rڣ֡`!G`\5FK$h/EcIK^wv B=i;- $d^_f:}/J]e2zP|k,7{+tTuyu 7fLD -Ǎgׁ}OY}gʐbA>}8TJFUYР;#n^||MH#ϮSNTZ-IvU@嘰q2.9kט m̠iUwTI@X=iCK/̮cư2-\Pb5_\*RL.LK.˨q 20#ѥD|2Sg"4y&;k?}OcvEӽ3nYP@{U+M)1Խ߉ x{A.}ە?dXlehԯCRPiWm~ܷ3&~cM0l qq[;JxA@k} ZdPܲT"Y \S ڜ-؀C/=*>TU/hd͗`23LmM- a43렖F ,[VO߳'kݨN+EmWYWLtx:R!T pVZ7z׭}͙Tb0Us@0oܹ6蟷scCd]/TDDѹ13} ;gղ1êzа%0p`* ٱ#P0eEf=iDZNȼK-5P4T6+ t>!t 8&|9n2׺{^H1#V;tЁ.1+ZsW%Y`";{|Ec@Ifn$Ma$?&ɺfDEBz]2+N*]8ZPCbrꃢ8vt9N(Y0)#>'W%}!Ĺz4ȬFc o66RV竢Ss j,u~% 4ť*ĥ|xk NmEr X^G򇌿gĢ5#2ޕNL^h?=:-^ L]w8e? IUC-^:(vQ[).K-^[)$<[ys9!fr={: ,o4ذERѭ,b\Wbp;x~8(cbQ΍NCng;G!af/ئYw6"\il&-I.uH$)WX>C4\)8-*- d| qv=qow778/-pBcp"F0S{G3-J/ A*mS 5¥IpL 3]B7,:0˧.#' L~(#fA#dFN󎆊O._EjpH[լ2(A?QϒUe1JPL^"Ls^U9K6El/IOn~ӫO/V3(H kSUđyv"x1[ؽQҞSrvN|Be\IOZ~kIU?Es{7 rm ku@ ;P,|(ңb.M/.zE(89e<䀿}O \Jp:.֫.+f_w6S=; .ponCr[ibQ^lH'{.lܥEBT$SX t0eJh&Q=F{1Yڦ8%:$GoBgI-f!¬PMbZT:E-U{t545ue5yO(`auf⁏{sYuRt ٱqeF{-buvFUcl;Hd>F&m~f)`W&nN-|j8j|eV=J¶rO "->U-bѤ ZAܘa7]𑁗}F579q+c tm{?3 j^<6`Zۃbs4<(d=rZBD1Z~zgQuX-ךǨEp*2KgOEhX"Aw)E`n' 3 !>N<!Ea+m DQLϬ& $b,@t#m-.>*h( (18]1B I&P.d|O,:&3VFstOz36')qP`8KIMTV Н.ap ݴ kFoH-r~ʼn~m8B)Th ڤ@Gb$.ͧP4>S,W M DŽ#JgqdZdD-\,QiXגZ9u 1qWZ8 ur(#xӻ*%߅'-fn$< 2{z4Bxa[eps8ٶ/a3KGC&jH[]Adf*.0ɋJ g,HWÔ,& pG(7R1{ySh0 +2IWb .{ رߤeC1{P/hlWZrϙ?0 2=QޞhoO`OE:fֱߝ( f`h緲 9YI`h1*ݩ' {3bqE5죗{㵺ti(aGyM["Lb.{9,Ϟ Rީ;Acs)d BnSF}FiOp=z%l;䫣r})Ȩ٭mI]^٪#쾐hwʖ/GJkuO(\3}s+5맷A9֦eq&w;U1Ūd:aZ*k9n(Q˪of>[kj<Z5g/?b WQ53%༲zJ %-0ײ 2n0tY0ĎJ|)=Z#yjVwE叁t]8˝tޫV8l"= z3^Y{–m%ʷ8ESNIk;=Y9iDރ~,C_}A. O3 #;, 8Øؗ_Yg*Pk<@rzŸQ5GmkX@>-u5`nNi*os|v%=zWD-^jwAO &<B]zxS_={<޷\?)ǖc Ęѽw Hɛ8YV!x!aHn )&^Uʳ[^b3"?.]'@ 9<\[l*RR.b$o\Q(kLъ]: ȮsrK+J'wlz,<44|h}N+9 RV_?HXC-|o5pD?Z6qarլfDJ qhDեqJuMsƹFp˒\!{YKf"6r2wU_vEY(ڙυM8׭Xh"][z0JPnlQSk>ޣrvg5a~^d|}`w\ }ګ#SAc&jDcҬ, u38>QR&_ wRst\h &*mmұ/+lCoG:Y=( ZeMB[f7*@Iu1N+v1D'b˦Hu Sű@_~* e N X>W7ES̬#E{v}=A] ^qOX٣T)VIsxhǙx#X<%+VTl(mOBAx[r1HUZ/F5 xnJ 9͵1btFuIANb%<=ꡄRK.,!_G:_zSa#a*XOdzRBU(F bڋw;Q Y0$5 .4v WV%K #k0PB堀x݊ZSt;ƫjlVh$OAKpLi}̤mw艶|Y]| S{#'*7r 8fPc}=͛ wyE_-A`ZkO΅XHGŔ?|,-? ؠ7mP) }3=iIy|sD aK;m"7ճ!!K/ٍ<L+x-lwf} !’m@.7ʙc*.b]tRBa3|Wf_yPؿK?&Bѐ`yZڼf X0 bn.S"k Hܦ[Z\1L{>Q޻s,}j ZCNBz~uBu,A$ {?k%!ki+om=Zai8e/$a/?Alz&r^mL qma#?jO`mmo~/vj,Z MO ;:7aB_p7[c|_7ze("RbCZR^:Dy]IisӸS{*v:r-$1Rw(h0$~xc󘜐exdJA',ե6- S6wa w+ @-Ã}vmmZ%̶ v!.z>>75Js_+t`>S˷:řU*A&cn p}omxDOg_=Kq0_h,?N!Z=oG{>f WvxpA(+g\_ЯAzysN`)k~q“_0z!@Φ7-RЄT,/IaHK\e9W3 Żh#ߖz" hTm.d7qXRz<Β<2܅s 62,ƻGe)6?@n,9B(G6i7_;@-aq+I[\9bbLK޴p3tĔŢUn\:ĭT܎p׽31ܤmM',zW'7[ln@kv^ *|5*F9UujXLVD,{'HyDASچDsC wD3a PVbQ튮lOԥpZDT%z>v&`z7[ƚviyܳZA}N5rae(l7q)PG\Wuy"yS& u tHclu9:"NaOgj/ ]#2 |d*501p-K`|dmzȳjSTL ?.+md]נNf7YE+:eX]8.v{~WPhP6jqTCdr^ 9W0+%tqX0yqKM4A_%?7U6jW 06*tg:b~N1:8pӳB6_PZ[66iRӤtĎʛ߃ypkٯ)tC7폍!`\R6똺}&+۠Zp^ʈPPj&؟ {YYS\V1T6c |r,AoQ"J,3s!<. |"`w-Ȥ#3wL-=?T;~$>[ 1J`^8 *kYYLt#vꀓ4oJ 5q3/ bbۀrq巜+l1n/鴚gA/# ݭ,Tp=#t>r+R T-5وJ03$QKQ>(YV]Ӄh_56/,QR7ڡ]՟pېqckJ&?k#3 ^=4(k ܓm ~1Qu_ޟ/%`CUӿNRG"R}gDm .%k,eS,YE?Z2Aȳy'W?>0q-fm3Z<߹%}FR4(l4 vwVD7 ZphZ~g:L~b"1pSʦ2%N)}r!WH^wF:%ۤL+2 ֙=m1P"&uT:NX}a$SkM/yiuSr{_Y m @Bf+s>`/Es< ~ ԺJ/g0PK8/Sd@G@4ワ_8P 3[O##F:$#oG`9</ouLN$wA?/N \8 uWW{[nyh-*?,7$a%Y  #]aS';TIyY`d*3j(HơIO|o|F\8ۉ!ϵc:"ЫƥƠ۽^GHs^:(<:e_Ću\wt#Vmf%Jy|Z4& Lvh>7\in?3~0Ԥ=ϐ>,MB|s[ |K5eRXQ/ Q=~>t7bbW&&C64V1ߐdƱA߷fCMvekn]zm[sO8h 2P vl1*XQV3zEхTHKNl~SKA3Jaa tYw݌tJeԔ Б_$$ * 9E#-΋ nJa%Zv*!k{əQ诼Mk.p#24gZ=*34ܖ ucFTaDm[(w,v>i}cŵwj,t:{mù2՗U&smq F<&ɢn;Z5\d]|8&:_xWBʈϬnS`XeBrV~e#\}f2Ž,T>q8v3\Ս!`b0pT\k4 zEer0#qI!Y_X8Ѿ@4:N'nɔ}Meܘp3b0Iq 0q:T;2'_Ӌ YOya9\u:;i Gr£ZJaDqo] 2C|mij~i@ة(Ǘq;f`ܻ؁7hq;~EFP)^Ck9Ҩ##qY|HO(Z7Dn;xNoٗqtl^pbsfF?Y9U@_Rב 8W9߿WxaCjz\]Ozj+ vUIGK˹L˦+"7G5=K ߮+iF:.Ժ)\Y.QqW\aڂۜ k&!8xV5'n$q霩Shh L;dC>CIg~?rK~[z ma_$g޲Rdq|yF$ar Šģ_ˎmy yҢziŠ1K.H!/rIeN1 .16;ihXr[[XT1+NLVLh)HkH_o[VȽ&V&xIC7H*D:1qYm`,ɱk*{C*ϧg}"=x!EOV-?[}Bd?jKzHGib&~1]Mq-sux> h(89יE%N0UκȇraW2^e]OivR?xhlU6-ڨӥ&Q4&^JCӌsPN{S@91%QZkraAN;'zZQkܬN;{&?ƢG̵t,u!ÿa8 {3f@_u6ZL`\ӋAhD,M Uyb8o}Q[RlO|3 L (|n=l%`Eqֻ {(ȫ3=b?oi6 UmQǍ-9SM5j t Zqۅ-gF} 1f6됅.5+il  JhCh3z.7Cwg.Hk7$<$wz[zmKBEY0(61Ix1t3\os2 nq6V_} =G;rO0滃T$bV;u8'@e'%u2Ұq?@5_jč[mt Ү3Ojf6bfPk(* ަƩOLK6̭k9Ld.v%6w"en÷8t ML o %<_Kve߉t}eЏƺtB :L_Kqvy"Duԧ+|IxrЗJ9qnbzEGܒ#bܢĞ'c\j)l&xj眧Nq-v ?jpw0X)3>{iWU)`HRq ppFfڶ`$x֤R`䛥}IDŽfU94nݾH ƛ'0  %Z9QL8"pf eux]+;k/Z|'T|"Yz^E% Nt,.zmnU=EZ/{晒]ȇLz!p< AՍ%Ha~W!rd %п#\uX/=|ޫ]7;pXY.ik+ߠh + iȲ`B"v\Ӎ-^&%Zߪiat>U1bDNUvI3ہ,}4ot)Lgvۙj\mxM.C*ę+jKj+TUQU=ϸdb7}f=INI_ 19y6? [ʺ/fEAZ7Q[НF0^Ѐ9C?;F@]xZ,"CZ?R"YA膍¼mm+nG b *Ыo Hk~1C0k cepNGXRÍ(&o $Hn zS+zU h}HNL{ѳUjY_{h9^I7/!Ehe#fOv #cZf^7'zN]AX;ƐwuI wD^VS=uN^PUyt:$pf@)d;H cU!0] +Xz1UBzwnT|e~Ľ`.Ato/gҰ7gPmPgXIFUOGMCz뉮2ŤWਦ;blbs&78Mg):GUTf_ v[auq"Dx?4Elfk\ˉt h)K0zbG 9_b !*RCybתᢖ$O~=ӂJy,!eh˿?#ܙ\8Cw2oEX9$I,mB$.DI2cW"^gw6PLV%&q+r ~w43D&arө5 Y M>$XDE[_64ٺ+/F4M?> .b= vL.5`/ne֧Uk c̢|+X o1> 퍒-ܹI4 +u"~?ٶYLY K]C ˝♔u>#vJج"_|\$E3|_~I4xi&ӊF4$ E'>(BN'PbblE\r^tUJ%[ j"e%'mWG\c);Э|0ɖԀ.[I5^WU$bwW~]iSSݜCF`sSrlÝoZ: W Ęekszur>L&0cyhm^12ͽ}sW`[睩5ǫo< ze ?gm9 Vn1T 9' mZh8 pTD\8m )OWb,QuFܻc=M% 3ac|Ovuč!OCdG=~߮5̊4C׽=y7UI~NJ$$-gqp aEF8-8Jt!JR j(+MkA8[,AS*GHS*-Lkb9+E?i'@aSAZգ`Kd.oqֲ- đ&#B~h̖;OA&whOQ(fpr0kf]/`fcwN="$LXHɶq=qڻIP ([}dVy*Ia$HIR{eyn 4`>'a;I^xYъbƼ^,-gbNP(VJp,E;>.xIm(f F4ƿ28?-S*<}#: !8Hn#x{Q~WB³'cdJ )m6'TD+VSfl}n+6"~Қ%,Xx+*r˪b23W*y||Cݵ\2X^F{ԐOdWmT?rRBB;w~<`<Ǻm!1wјyrr`Pxu HH0gw\ /1SSaخQDأF?@*TXl!dգ>ºNdʧSTjcǩa1+v甩j<%;Y]azHؽ}1g<׎Yv@@55_kBwȊ"x.}jJT.fR]EH@ Ih09s`]WGdxݠz& ,AjTB{b*эkQnZ_ۅ QFLP֊Lx9:NMbK LhiU6D`j0>0)!/*,@iZ7B_qPc3EM?; !`W/DB&UEA+aC4OծZ[/ lXmh9~+7̷w>$C5Kx_7taVyIL޼Z=Bka:|2pj8CI`/]/]h+5H-(v~}f '_^sWÔ+tT GMAq/RiH>[qJ7?rMMCcL0`[6ё\8K"Ut /o|Ԏ {>yvj"/$kb9O2{ p;łxݸ| UhgʠE{_#L6ԄKZdAK Wd'% "naQ4|ΔJMa}PwkϓWK랆@ZEs!rTIhցjQ&w@saZ L*wX8~Qw~G~{oώbC +׽&_JmpfF<{*&tP )ImӲMPe.mj'Qja&fwć߈SIuHtq!cw,L [:f2W$jޢw6ϕXO rn(b@(X,`t͒d06.RzrPׁrE5CmdMd GBž?u40prZ*#k0))KL^y8MrcKpjck>6 z &X*6n?\[zPBъ|ey2ʶXFdC7bE,ݚ@jb9B[l,vp(M)40NUo. uaƧSkfQu.6,q ?w6[a%-'p1PWn]浯 t05nF1^?ΙR9A;|Xim}fY"Q~n$l*ͯ9AEqM`QJ-a9[ TػgRBe\[j QlH82qWrU s n2k]|eԅc2H o)]||vTm~mFtDB@m4H],>M`8ԲkRG䀱枢lSC䣍}^msz}@] _5ٕ1 ~Ad#H@i6|gϡJ׀}[ 36ǻ&fu/fkBXDz =AM" DznP q5.L]g-R0x^U50E oWqPh˛br+!'TlKI5Mԥ#V gO|L'cZy-o!"+͟rn܊m}j={!ER^iX2:>E.&لNBNn p'W`Q(*\효O%q, t *9\qZ2pW4lu5i'ϾH|!1YԔif*N9)"vBw_Y1\d~TDrY6N9p 2v)u?f:aĩ@lW؃Z=*d#S^.u#@ބ{Nnn Bs v_E AJ ^8 Q۰wym xzTt0MGdKlj!˨lc2)uD'՞4<8uoG0O}4`B,w!dtXږu)1R?%Ǻ'v;>NQ7f ֥z┐:X̎r'OjbC$doxjmF+̀TBQ7wd x\ϫ*ͯ.ԁr9?)ʚ*ٺJ1Tz2JKrWhd% ZI.W7dzzZAP$ώ*ckT$1nAgc3.Jxro DAP)x׿`mZt4UyJy" 5e=N<`8UPSg vd'y6+Mr*{$nںPE *a! RLFܖR JxMq!$x&Z-eHn8몭rr (aYLH+[ ݴϹ ,9k9BM!=vSf#i=š( j1wQ6L)7f,!s*9h[6Q#9-ǀ:fnI9RnoL_/9 wr8\džbmCoFRw07UDoBcߊv8\.wW*Kt:8/G\$k[*~Tmg,WiSnFZ+8ئA@ 0xCsA7=*BY FWV*j W8n4M^%{!I@= D 84 A1Mpu6/l q.*0geVlxDmeXFcOTFL9F*Q^ifBAR,4>ZCZۉ/z c|LV[agV3tj9VPеGx>)_ l2hMḹ'gV61Wzr-@#ݵN@8f68h5Ţ^A÷Jljdsms`ԊEڋ&7&y7Q.febw\>8 {xKBkM[ؕ@3 ly*:c!m ,: 9GEOiц>~らOGGL rXZ ~# F!(ܑlq*K4o@ @7#U{Uኜ;nMziBO쨸*89Nx*f)X&b7ތWkbLVq5<Y7=g-A;RW@qŦlXHsyx'_y;`dcS;Ս^ߨ U䕹MV&89* jX_{Αv~/?}D:/6gnwܳ,Cs#\ 4\7*oK88.:~qMzo ZJYt̨C7 .amc߁,MM$oeäV1q(\R0K2-rwo6Ax-⧅a8DnӋc8,2&< *@Pa\P?AJ4qm-yNn`jsS%óЛ6ε`?m~߈v g9cT =XB7A9Cw]m|1+xz|áñ =N. ^St\mGDԤ-!:&~$Dj=<*!pNR%a V>M{rϬ0rB[\D+xwJÞzga;}\%"=^nj]U]Vm;)i<K/ݺGS̖Nb2 xGGEqHOEя# 'bDHq"7%SJ2)<) WmRO-uhi6Aau cc4 k&oIC25]jsRc)Pr#++I޿}UWվv:MONVϮa(+j;F <>~b4:ࣵf5uX~?'9+I72gEް t 􊟪LD{KEpCD1ĸt:OET6cs;|ԕ#$T6 . 1 u.dVKM ^Ƈ.;@F= |zeE =}*L/Iwo Wr+N AUUP;j!+;m^[g.BǕ"*dD*11VB[fpZl;&=1{,9KdC 2N͏(5[ԓ"  Wb :R->;W6İؚ/ IM^$߾]lXFt˹bMo+HHY Gw4=O\IɭM`SzP]K9vhiiD?U_=d"#/-~aq_h5ԾF"t+c=>`4Y߿6fxcܒH#oZP\]B>FYYqWϜrw.hLgCWMjq~uzڵ1KybRQEX4~ki Tȉn35SW^G(m|\~6BFcNyZQ1eErT%s%W=^qt:9"6kBKCsX[ѱZhXW,>B֪ܳ}YCJ嫫JN ,8IhV*NUx#xw EΚ%v }ڳ3 ,lPr\y͎٬X;%Il4GurnćءAm02|_QNfsY\[ΛVzyeV󢿜Mxk'O|*pwSiUn&ADQ}Buc yi^m5y!Mgxx,́gH!_>{Uˀ{~مsM\Z<"r7> 9յnXr-~MnBJ^,%V8߇ fW Z:k3Is MLj%[kg)T ҡ8 vj+9"1Oѡs?W"+q1઼0SRnI0`e* <*/HKrݴ-EHoX>m_D:`YAW=^9ݏͭ @SR^lFa.%Q\8g)rHdRm1ᠭUk=hTjW<<f>=`Vc$Iͦ=lOX8vުO]vP7~{018zL ?T3,=lv,|r~b\|ʧ۬%@ql-O vuGI[ύJE'V[(XN!-V}Y\<;I!.ip 2~^(#K;~K$G肴j)0츈[JyN]w1]Q/9be+#Eyf>3sܭͦ"T2„4D]`ؿ^ağg⽕/b,͈wTmloS} ,K_Z(T" *u߽1^a#f}%m,CŴ.r3B]̃?IJZ#O۽wrq/R;焴pU+ vWšhꗢUwɒ\hT KJNش1oG:䭝 Ƚ{Ua_SϏЎ2GlyTj~9>#8 |e59ƶ*?obZ/k"~Г^`epnm LZcg?a'9k fOP IXWZS ٥y}ӢaDnscJ q8^hpy$\< S<*QcJ^%P坋K}`4q:oׅ=iѹ6C-hZpu\#"fkz7v9'y# wOm@J[Cs~T[\|[2Fx%9"!={ξ4Ɛ9ܒqP2meE/8~6,æ$J2(: 9܁^vLѰV~i֌uRh_F:_TaNNŅĽ Hb\܇/ف3Ey<2TENuw^%V%S2e#5,8!9|ʞs$~R̄G '#jzueb!bXqYTmfuU`7;iT ;p~nkyח8 ,l@~M?˖>.y_ݾ1FFhϓP5}Y*nr섀ӗqF~ L+ pIuRny-!t ۝vЛ/"6t$#ΒYaaI+`뿖c";;<F0'O(,QT]&UT4(v[(EOUhnj)K˿k]<Ӗכxß,8Jza!LT2}W7PYTOL׼0兒^B׶J)N|x9`~Qj" f_#p^u9PX܊p(on&:% { 7)EA|yta#=ثI"0S5aek% NǕ/$G3 z"Z V< 9U0E0峾 sP4.fU6l9T'W%{ƍ";s;J*.VmBu酪ۣd'ZFt^cnO0 -*cXHPǐtݦ@Zʼ* H HoFS' ./c4-f4)DsS?RvTOP|0 f&'"l/,R'OCQv?[Zr%y+|:I͏ [C}WaЉ%ws*ф_ԩ@C3_I(AG .s 5#hqȐk)ХR5!koƮ$4;$6e܅:x3c$U+KEHv)>Xv80ci0x1U1LfhFjdJuSE y`k\vߛy<롏Z ư䂷y~M' ,ST8ʸXRhcּxm.LX/LӶԔ7:U_gHb>?ó`Zk_ v06m[ ESx~B٭L([HvxZʼ7ɺw4SS#UfK I8] Wǵ*RQnêAHnOS%~uDcBzsa DK5aOFԒ}n8 f>@w|2En8g}yfD4e>s[)vW>F^g tS 0 h%Kwe$+V5]bUBBVAb{ J֑#B\usiX~gch:NznR%Ф,XYOI:,VcJ\ ǭtZ#\}Òժ ñS {yYs"z,t2E 6miMz/q1jR8$WF^¤~ DZqR[5bW'(x.»>yXLPZkV fbgR. PvBg@2 Bpu&g(i#( xx05dP?Lnۼt& adڬIΠL";D<,ʠWfL3 'ߖԆ [/b1x=KLH VwCo %/K񪹴 l9xƺT8gViA5s,#LӷKV=trhQ83CWۆcO,0D7}м\e/X1"Rm}Xd/6?}DȠL#Nδ!?w^υEt8N&XUv^/Ye2xtQl#j o*ŚЀ)yYT0, {~|y+4B!u#bBM|cͻQb6 Y6RomA~1 x]@.𞒱+?9`J@^?N"!TFf حl_,bFT{#`5azMF{%n2ŖNJ@D&}6 4BNfNffrgzJL@MA+IQ b$mNsr1[5b'M+ m6OiWs$tǞQxm.͚ M؜7E/Ws!y⷗r{Βzڤʲ-;<8m9gpw;^ e=rd'05.t7 c wM}uNIoDVJ48 X:kv !1XeeiG.0TVFŋ)˕K \LUbKԢ3Fe7 M.'d 2.E߯cVd&GXZ/ -2E"AP%0u‹%ic,`fe~zanV h9;㶰}0pq O;H%KUF,_E( Zj.%n!zEJ9r?n<%{Z*qOc!ztXYxfŵon!`%טϩ4 %DRք߬CR#|&pa= _<{ҁ},g5A/eܔcd|R;RDw7~FRv_/#>I%*8@wg݄]΂.J ClV=n%rY {ԕil}=4GnY1WWE<儞yT"rn~ ܠ]m!O"hSw0J!K".O&`9jhXQnԘ]|+VLhnl<[:OlS& [G= 'h{FBv3nQEw" c+)$L@bw` %t۞r Y90<:s!9Ͼ݊Ą9Ճu,xM-n41(>5¬6frǾ˯k0}bpPceߦJ޴P;:MXWB2rzeNDhss^e_>7"+Zĭs1) QSTTMXTw3n{&Ŏ_=)UvA֝bZo;^ ;MTCFM8}鲆$ *VpSxĘC}t `_M6q'KZP n.d%Oٖc֕OԐ+`K=;1bhѷk/b?X1L^;j8JeQTMgW)m_@pR%$r15\2$hfLc/GdN>ݪxdt}5yu{'0\ݞ+>k@QÔ65|fرa b:M/u޳=B\J|Oe`tR Ks(CsfTU$=a4?%`k*/g(b=5Q9^)vxBqb`f֮ $LC}}3 nvI9T|:7Uٗn2-5+ DAPt3V &*I'z^Froiz4ZKEK?3Zd6kbƶ:> ;(xƛr[^A-__A$cV2 ;H=$.g ? MhT2 ,o8 nJh ZTmbQ1nuL;^Pvȳ} It&S\ԇb)>7P;z+d"zĚ Zjۨ}Ei˚TÞ⧧sm7{j_9xgGZ{nRa!*& Ӧ^L+l%2DxTg-6㓕nB9&C#FRܼ9^X^lWL(ժy<x9!u T%>eHH[Btڬ}KK.}d0O#ؤǫCcmrgP ƌ'W>phΩ-9h_=Z˜" KN|!Tc[v;Q ̬U8hiIhw)n\|nz| 社j'Vra\:EAY8^;-Md]QBϓp%#ɂ l2;o .:F˝i7VT] 8 2C{ 2jsrN67_ Nx9]{Qb~e#9o?X`r&HS9~ {>>FrQ"^}v2Q)5<S~U K^}aC0سJ=o"OR=F=!z*a&$.URvccuHKW1C3rAIub$T|,I|C.+Jcl1W*fXEE^o-j@[ v2ʯggRGlK> ہ*:I׵0,0m, >x nlu(/鷏aY\ϓ7i]VOyKdb¢5n1h]r2^mzo- Yg),Xvwrtjl[H16AVG6o%w%%!G<;$a03܈`s4ffE{$)SB ZܝLƩbSF `.k데~uկFsHJx-4% Wy:sfjjGl طQ@)J(|~VŅ 64+֧ǵEw !V]V6ɼҢh&t/ .%l(>;ރ7ZI m$w5˒&]uQnRFYp(m`f%UAFHS&B`+4f@+pZX*Zg`}<}K0PbHզ"Dɍ;_x!9y,-OFK^ ,Vӡp,8{FpOKo|ٴF >qplлKԗ&/ЂxNtr쀎qrnUB%.ѥIY6 eueK=?!ae&E{A{MJRIθt'-L>@p0LV>' M 'Je>^™~YC%Ytq員G[ƇgPos`of:7t-E.a8T6f٬ZMBD4BM][ %KZ y3ɣG.Dox1uy Kk%`F*ao?#* w_lC.4]pHP:xDu!$jCŃ7*c^4IʞqVdiQ'n+B"1 ywmv`[c3ȥ݂"5JpƑQ^|TH#8WQvJ?8r쐍L_ cՏo+lc]7†:Ft`?-*y1W)ho:Y]{o~/8o84t«Y(jD$6T Dߥ^ 8?pJQm3aq`O%+YT[}KJO$Ey7;Ȏh?|o>_8Z eCZ B,Su[ #8.U-jy}*ZLQ,ꩵMÖf(ZwFC7O47T@~ap(&!OX_aGKj'(='XRR:Ft6 `Ao*U9(RmfUӓwjs~u0Ltw҃"p%(QIl׶|*NIi) :j_%jc"~VyiJ? 2rߞy* jO97.߸.ϓLA+Ί#g!u  m~װM{>>"'J '0%Dvgpk)ܢqC[_&v2wG:aߘ!?`håuvs!oOev<~b 6W~?-C"?4+ QRĹ?m=Y:e'd2mqIB)HoffU>0żZZ* 7M^*"ƴWm@6Jm}E3NGmqRg蜪aM䷵lvUfqJ8[>1O`[U.ѰI'ܣ7NÕ7<=ڄqV7yY5LͶ?n9gv f&M2+X/Jze5ȏaNۂg#3È+u~M4. Ba4'_M/z4:}gJQ%}|HB^hV_͜y9 *r\v&/(\"-lEi/번h P@ݫ=rUvHAӨQHnnג3N4 ~k!\\Prs}h^&3ݘeƀ.=2j-H4 Oojiă؄*Ei1TT-ii\S&\{Sb3}PqJ`=*\m6UCx/km`=X{$G(lZXM>nNzfR17 z KlV^fZM)„mGn {i^oS>\}b$o Qa5ɺ yǝ' F_Y:%{_t>V0ZK wU#s^,wM@\"Ҷ~qqĻA eApѬMD`@tnȾv,{ #.%5#Τ\ې7h\qgPէMR9"ƒ,;ɤOxz. BUl@`Dlc4{#cې\OJ°pcۭސʮw.pF l2d ]*aAk j+`/ZGө`AɸrKKaԼDkC|XAhIS1+0L M~ acVGmp{aWZfQYpx#ereU{oY Z&^v kф UrViV@eWZ T'kGFBbos8$/PLÀs_6Պ6Q]o$бmLIT깩\L>oCW4;&\쬳Q4hocIg#LηnR? Z>vt?9P#ǽgzVS5B 7ʮ9S^7eVxHk]NɌ9U4ȤƤܜZkn0 5L$ -CI>:aۉ$;(@Vqi>VJO8kş+eHu@Ej ]Bm&AGr ?2wͪNpK5ͿWnK>#Ehb+M7Q3Z+: 6mD757(&}0ڛUwk"F%Vҗ;Օ9Kas°[m FЃCMDs-UX}ra+M sryAR_˃ . ~8xq͆1b햇T"2z$Zg״yɏJw-J(o(Brq C?I垀X$Uބk>z+?]7O3D:Z$0h N2{Og,xZm.1]ق;ˁ{6 "I}n#e⓿} t_^x{r}Tä%Guy~ܩE> g=v4qREC-N-$0,ѿwkEo.z4{t^Gzڷއlﰏ,I0EҘX!5vI6H3fӎirj~*tYhLDZh1"~jm[}{y/H(]pg8m?w筐m~Y1bV7i:~&8ukissG+b9's3 ob; iBS y܅Eds>U,kZ> PT9zT>(0H${F`:[稖Z}hۧνJCǪHx:u&a&ķIoo/Yd#chA2z2z;Z Fv2<,*`OO ÐMW_f{-Z^){?KwD$z6dh#uGk^v95Ai(}Q3y}* B*yUtï_n =!!0?LK/^u_3f`/ON"qVs,ݵ -< ,!YXH,_I%I a0!pd}'rg1og%gbW6ӻE 譣jB ä6T\RCpA-=rٿvJB;7GA!jtuzm_ysG"cT Ou"Bg{vdTq]E Rˆz t גK0F C Y}Grt[-%k s@HX8a_spi%q;'LÒϠ~s`_(p9I Ay?E O~^DwIc"ǃ3qaGlIA[Prflr07 r:υGŖž*6p_aԝS?4nuZ$IK7 .!.XU=|jhiv ()`,%D\{ƔaQU#[+;[Mv[vgq^j=vYTNEصH`/Ng?y"3IJfJo]E!(G0Iipǀu%L󦐴Ϡ Vʘwʦ1\wˆS"<9auc$њ6G(ݲun3+"!&$sSSr>P^ڙ zi0J#,wݡZ-*FX|ӹta>W'I:Dps(X浌~/ yD(}0"-(dapA RQ_:FxK躽6=Y%qUˑ2!vS|IDeT%PgB.:(g$Ve>IhQjf=FU-/:Yw̠g-ksHXKB'GՍ+Y46.5?Z Cƀn\K5xđP%X@3ħ6<0qmUD1[dGiOwFûІh cTs;$gjrŵ)/[gوs]J׌:2%FAKJN+5[?*6ʶ7*ՕM>hm $Iۄ[ƒU k$/Kd]&he|m6i-^b~%Y^W*t=NCTw=,BglT[t}HC {@jr!VA{tD^!\ʷz./n-.M P:pG+cr:&Fk/2 eR8 .1m>rzRV p#6dtyMM\?s{z{Pw1NWv{IjPe8z]`ߋkx`8-+ʷ<i7[D/})c!q-wC`9^Qw'0ݱcxr)f۔EJÅ 7c ޞk"g7 mج@BKTx1~KSƂ7XeglC bH-傂6_HsXV7D9laL@JȖ/adQ=j0tS|ϤCjt ;9 PEL҅rܠM4Iq0ӡ8Ǒ0 (vIxXe4.b:Ű/kZZ-è]jR~+.{$Fjv@Y-l Сrw Ǎoh؞h^Ek4|8聮^3 Y8cQqoXB/~hU1룂m2 v O譲+c4Nj`9ٍ=) "~0{k0'R>m^~#17dl#яFm)>FXs=UМR]P'G8 2N vrRH 'ȯ(%?,w$6݅O!`!7:s0>UB HDZ;G&_9ʿcuRF$cAghSP89LE%,uwf,(y(az4%%Og}Lr;35ςqܜ2eNߋ!M4d%UJ{E-I˄ h3ȍ}wi0S2Sa<sn;4CWF7VJYꕒiUzX"%,#`x Kp9N8jjwgx$wUjd1OM  0dD  (aϻ(ZfZăߑ}<]QΨ*|t7وlBꊾ&IbD=`}\g2A jH40jBb VA f*\֧xDK3:j{U|#mSƒaW +f BHTn4ժ5E?@ds,8Δ֭~̍)&T{nמ@Q*\]QT0D;caP/uH*-bh3$9{J|[:صH`zRꡥ.A&XV?u$*=QqW̑p7aDO-] 鮾hOt]dn&8&_{ZB`Q;3f24&v e2){KK6"܉_<1+U(L*]6$Ŧ$}6s.OtB+M&@)KO9WER΃\" !?` R4?ZaqB,-6 c/ߐF{$cƣ86'P~IJX jΖeS:]`g!I>z u"Z, z;L]2|@=o. /uQ<֐ 2Ѵ3 o<{_rMG5c-5LIl{;BɋRaBz"fpp%HjvWBUj=`Vs-_=%be}5&Lئ.+td5'1JROuόb2h1Ӡ3mLN+k\m!S[,؈hK_hGj_8۷A /SJET"D/@4 e@ ̀*Zf ]%_:$>G!_G\ڑ_%l\ ?YB[Ms)f4+=#u WP'#‚>orRse@/KN*W:U bxn9 2`|Kf܈@+ 1uRizTuϧB.M~/I  ^v'T4SG!ص"78_;-Jb.ʹ!>4Փ$ ZAܒԬ!5{!^j; @ag6оd,OOifA*X)Q]px\P7}f$eiOzIݡv6y0;i؀ԫ`eS~lژL#~kTziТѷǤRs )8k-^h M}*$_`E~vlacyM;*4y8FlHL.P̺ ¿wӶl3iFo1EX>13'1yg\ͳt0ad…grWQX/GR|pzad\ K<F lXhn;!P\C<=NYe(7gN%#>wz*;[5ـ}(E?+%\ַ=iݍ'O^NRac![}-Ka˭HPUitضjIy[F݉IwIǀaU%IO ̂s-,Sf^Y|k"Nj2 LR[][r6/·PCb2O80\<'L;bu̵6ZHm!iӣx>Ҙ^UoD ;x`vTBcۀ:C71s4K2a4E n1kWED\@fs ֦#pmn(ģaSTwk϶ks箶$iS*ȩzYu!(cӁ?LH XZPߒi!R08wq{∝ZWt'sau &ܖŖݴ$Y!>$7ʨ&*VGR؛ K5.}m%;5˖=P?Xh37d+!uԆKųYW{ |P7<uPUZbHXeQO7 ~9U7Ub+]/V';q*زt1 \V>NolT6f5@Tج!fe,Z(AV9yoZhxf߹XVH1({88]b O+z wAr:xH4`C_-s./T,tAWR+_"q sПÖ"w ̐E]Gh[ZO#Y{xg#iݚb mp˔ l.dͽ0 d4Jy Qaی="O"L#Ιax CNV$pڕx0l|rrcLvA향0|d(g[iM^k̉&`IaҲ}v-4Zur^hRJ+pkFњvcmaqsCPwoa?߰7 |mHϋVQ̡+e +p%Na6fAXe}!7zp`=Vhxmğ JZg*9#޽TʢM؏WݛBkǫ Np"2wvBI974>hA_+>j _$38vo?Ni>~_:xfP"Au%'[tF]Dt3?FjR gIg* [VT~fp Mtk T5wނ8Wfz7G$tl4D$H}-ly$oE@YAS2Te+;¨/i~.uBΏ}6'7Y+v;^Y+I<ok-=2Yi6Arc| Ӊ oViic_ : Trʓz;X=Vf_*̭*@3RJw{\?b"2BpbE| hln#+U5-*3/94T>qΡ-b%'|(iSn V{3Dtz(GMkE=asO|~6'ȩ:ß CZ-=#sju[sqL#O4㫋<ȵ I9ޙx59.f S 0]0C|*ᅣ:zb3]X`EmQ$V):5x?eR>TV`( a~b3 R׺k8KȎȲZG" ްedk]X{[ PT_Z9ph{mЇ: Lj'"͘^Ѝ)qj c6[NsZ %,M;CѢi< ^zb7IWQOK a>Ey: 2.ߒxše~CmhYȬ(&=~n4Kbuzo^$1Qk٬u]a~B[ގ 0OUrw &ZЀ_Vk&4 Phmm"vf )= z :X>*~bE{Lni ș-Kؑ6lXI(R,nC$ƝowiN;yǪstwWgS|m}N{˝j#&:&Q3<^vm:0RF +Be4ƞJ2LN,^t5 mQ ^Dlf+Ӕt{X`tD?πL`%nQjC:fN{]Yr.*\iu7BPh$@2;$}ZՂpxM).Y.i'9ڳAssC T֨D6غQH8 _ץ0r({GDZ  YE 7e4uvKŏG։7"Qu]F!Almȿ⨑KI9U  Bx*/^%-rwgVIO>Ѩg6[^K J-O?#{d-B벺Бz=QfSRLF[m!CPDR}},I.&=| BC?z&tZ oko'k'V5;b !cxd; ֈp)Kd^k,Kñdo.8&. 𝧹JyaVO  @VaUe3Hy򞏘$=Al3FhO;aoqsaaPK!LMbAW2Y=ZjkdK#pMZ`.o. (*)`0BUrᰇ$e[RYMRSxm1i|I}(^im^=z`ƙ  θIIe! 2sq6Itx)DF%j7*¥ @ !\a$/27aTrTxOhN!isi jj (ZBm  K]NOt:vqr 4Hjd7HcPN$)!Cam5sꥼ8=&#:gpoN7Cp-jUrS DL(bꂬqߝ%$w4 4s;y52A =l3JX]O2o$&#b-dY5`wsIvR$j{&/zy?x nBή-pDZ-UMg7@ģ!Sf}JX42.lj:$z:"\q).؍<7$:fпEbP^6!f3>ƭ5muh .]# UC_z>le~E O4*s6ڜ=% VզRJ;޹88+OP7hHhT|qfc+ 1uF-[ RvUVɟxg cpV#v"h`jz5 Sf1BU%A?6X1l+;[a/[[rrh+c[5Q:m·=@+`.g˂xbk O䶊Z1_ ˔!KͯxU;qq?1|+2SH:,5)ڕ¾ȸ S45#ZwZ+mT hQKƔN '@}.Ď7s6"1bu; )]L"IϷdM*Nr6Su~׃B(0 .뙿TF Q!_bv(W gFz7zn.# eѼ~孖2xIb& u ݪϒ~Bo,%1#g9$}oW9Xsa)AMKrl#`. .4nFe]nXq XXVNJw/ԋ. JrƸ?!r0r n-8,m^ 0{uwʦ ~4Idzh~DRSqUY/,aKU4KNa ֈF7˯$pCxSҟS/yjCЕ Yk/h}7;EQv[=a|% ԫexlPeÐcn ʀuH]%r!e/?'BG3Ri$`k.Bө:y*D9˩PQiO ~ǟ\وO^&Z-sջ>T QzP/ZC-/RE5mJ:q3GsZe*Yk؀Օk52V2\zpfͫyGhO,}p ?>cy!II]W)d15*؂HjcYX`#Op.g=N z,Qo7Pp 1`eoJ8kAU$WSstYB{}BJjEO'u-nƋ~$a'Cv`IS,_\"ت;JܣRs1BϿœ@t%sxTyҸv,1݀I9u=9} $Nɫ$+CK55 ' ROʔ`tf**&rqo5J8<twӟoy:vjK3~+W"`L] ]‰fSG }I W[vJ[B7D)/;%d$k'@iB=.c`tq1ltlm[t -^dw0J<51@^>Xمkx %@d(cyGj͏J,j~7Uߡˑ#͉Z{Vk2+5Mw@؎"ׇF 2Vadǀ"z{Чl3Z(k*HJQ\33#? R]Νs%H <4γ YTV'O$6tzp.lq_ a\}^#3}YsL aTh@k"CغM>_QkdJ{{`iFߞ! 16ƕuӣvL ϐ J[P =S~p{㊺CCL!  !{ 3zy# :֑sslAQ5T@ߌO!BjqADT@ŐlZ]!x $LCV9zCJIag%s.?Kbvˡݢ|6cIG| ]ID^aPp,f51@>Сbc8TYl-?}]B^O0p*3p"Nhzpn6/;mâ5F20)j ސq:)i s7Pb#=?sل݂AG-5`*oe m,Cb'ݫ='IØ ^ o*)LA^|3 /_1Ua$՞f~j?Cy(C n lq~N.Q.~Za9/v38vcOfQ=/ 5:~ DDLJqx]:͠]Mio܃=:WrhMy;6BCQMf2S7ΎE!ֿG먟sssk0c]MFLUzu]0Fm}=H&Rǧ^ZJj *YpŔxU qH?-k>]^:ϱ~e%(*1Kӕay}s~b!",8f4$ nlE^xL)0P>G%&]>:V|ӛڳfOXE6 p*vHuė/8 (<-wfYFiˡh^Qv5td<}wpfJLa[hkq$*=^f =rY_Vf8enD7]u4fb ƨw쳰j mdP%j7# ,6ъ5@'tA$&[C+ i\)B-qf$wJAhBnmV_I>,_qx.P" NA.5^اJV࣫ITl?TYyXSџثIR]_dF,eNJib~2$'wڻsy[svcɔ ='F+0[TSE3¹(:ʨ!+څk+ʜ,%YXaw}]7ݗF`xX{š XB) s#㞬3?P^5 |n;*-4%lK'7ƙ@Zl, :%1NH{Z!W'ѨR%u@.Y>r7/xs8TXG`dW]d/<~A4-V2 q|.ZGG55PE+Egdtx -u"&H/H rWWehؙM'`~`<[eeηՁS͓kQdznן{D*M޺S1u'VЏוAz k0ݴGc0pZNQ˓.r\l Pb wR˚`˰[h4B7[l%K8d_u=l  UJH_' (+ %9;G sVj?'́PD9@t05L_a{wUߎs^ 9ASt(N<"۫_ _@ :kWy.SdbBkgGr^?|50![E}IR؉rasSܤi*[ctKtB/B+5idpk +0wYiA`bn>7 KKW5R;4 _-oi%ihy{ͫSx@oYjRh{5W +aUuuB9ͳ8bH%?igL^"qSr w+j d r&Y%nILAe/;~(K#YUo=R.Npp˔fcjx( NA Ckgmf8:ϘCC܅ï׍v[&Y D ٹ?]p&9U-mYo'gDqLxmx)6ht@} !j~ 5y;`h].&.4e 4TQC*4tThh$#ȦH?ki!ʡH-{" ,/K~Uδ i}[d"F>wu*wxi@Cz0:r7t9C7O݁Z1SLb!ˆpٞ 7oP~ ϴ\@@e,P \W_man%wy B\iPlϮy1ݿ +׎aZDH q 盇dZQLeJU{b>9Ssm@/ug"X1Eb.ɣJP5`Mge ɢ2pH2bpĮpUmݮ׳eJ΍hn+їb5%U\J7յ&lD /\?]U+.o#/ {챫>5:YbDESOFtu`͜[]5:RߑnKS3~j7w2~r-|hxEt4}U̓yvz"Z-:ч C3~\Ųn΋V,(T]nR Lϫ\Oߥs73]ܴ[75 P%cYn2SiDHI~XW$CSk  cȮcB>,) %Rߢmq=A.j ~A!v\rT n U]Ɲ1Z")D 8r$큀̨+[&d׉fh撆_7,MHY=PC5bԹ//C,X&_x=b|gkUhT%c8F&/AAzY{^}“1Gu_h_Nj:yZo` `ȉB)!N*zJ<(ӚZ]iJִ DȨCP7M@əgZe˺L\ԌB cS=Tx*lۺ]4sU #ޢ|5y=MW,/.P@K݁ =7r_K.)̳]Y᫠ #n!l7Tԣ# ^ls'.o&σUbls1(LiWԵp^lqnͫ0a7Ѝf.MX\fmQ)ka!y>xeѕ-H7w=t/ G%.ùh~۟F 7;IGqux3qfe";>\ @LSŴй.7#sh?k S<%$*ʏH3aʩ矗Y9λv9>/;ѐ:hLE[xZ_t1sAF߸I ZձZ@gԮ {)VliBZԛ+ [ ;-V$IEW[f q̀SSWo#_ *_NHI7#P\벆mz<,|ӧ^G2t'iF?۽FK|Hݚ_ -^ /ނݸ#хAIpY~ѢL9!hr]E")iÉ7~~z0m9,e?8-!{s7Xaane'Yj3O z'&wY'D[~{4Ba.yxJmSbەCE}k#1^?mPg~# ċJfGV"0cb,&$7{],p~a 2"2Lk^>%W'>}TyxE=v*4GZDi 4PNP:qhMUXBpȸ JK+cMKH\kC>-ӏ}VK%MkvٰreY&ud饬b~w #b8A4f~@mX75 CnTED)P z.܏g{׳d1Iز!cߐ'1"fIt\+UBu-c=pظ> 9є|L HY䢦⯇-LK )8ډ"іrza[E65@DLb1'ݣGt 2sE@pҊtNv vv9>&Ղe6C=e^Z4>_z @(|geD'-dmG|Wpܾ~Vy8h{ zGAn> 0C$z#r =g_܄Ek;}p@⎈RpbD.z=B2fkt{t#o8<#6hnO5n5O.k3]I)ЛCϰ):<B?`?됚a_DeX)g$Vj:4)b3EGCֳ USlwqPyP759T <6* |yNkf|+zb_%TAr_*&rQshZT,+ڄm~d9$jzD^ $yR+xr64#LߝkIeXh?=ŝ-% ϶(Ux ,@d68q GҸC32!,TO,edcsIyç<4xF[2fIMbfeoFN R<|2[ lE&ta='!|F]|\00QUh?6{ ɯw xw>?@t&')W!zR/gޥŖ,D2'љћ`lm03uM k{ii%%ٝ5YJ*]ΌW%Ԛw7-߲ޅe:?:H_#֊ծW`4yn0*##50T$y2L 'uyiBJT ؂*Sw gkV\{֪F0-Jo)1әOy0)^% ۏ  ATv~sqfCzˢD"NbF?2*rUr E'4r햢e*.VLVCNc  @D׍%hc]Mv\s^ԡaqpN+vJR`QKK-&-S9OB,9Ĵm 1YaڛkiZ74鿮/ݰz;_Vԑ_ρ˛Dي@(&hv,&/rn(u1h@&9qv7Z`sW @Zy@,~u:MqZD>WIy71V[dTR1*JG78`)H#Y "xufXf;2 [ԑ*F_Kxű9]Q(Y1D%OZ+H3ߓ-Fc)Le7KUZeMrYH\&Å܁\,("?HŒxΧ`> 'pOСēp" l'"٥kd)r[݂})'ٍq9(7=Q]+^WX{wdQ0j l>w@Xue0ks `:*DWѲ+H߱",GPLǵã5ߘPq#@Ĩ?PxE䲔}UWF5Www5_Ra }6XMZx_@)Bpԗ=.UHt㘽~>\vk!3K@gqJRf`ol$xoJ#0/tcVKۊ.4LY&Qa:mT2!F'lu'?R(cS($9%LdT¤p1pWLCcm:౺ B5kL,\Ù< ̥Pk8RKD âJ{ίlq,M0Ox- ,.waܿi|Hb&n,>wӲ.hkP{+"v̼BqDTo~j@ӗ.<U6]3~(ʙRr U.hb0)R^ȧ+I +y.\vW0e`n`uS9  ڿȲ@ѦE'#//lo;~6ħg2I.=3M:6NT:)&Jsnh)l~[sDYd=siH;e 4r{Zu\SZɗ-c-G3Ck3㈶fF[ DØǰ0F(PGq ΈlxuFA߲Cg{UB51@H[C$j73bQr1uD rEHRJpa$ GS&9,1SuQ%g~ip>/gfG'эYQYE9ײvrI3lW[4v LeG3NKvu{ / O_MtT %eo! s:s`܈/1-v_ ]1z%ffrflQh⚭Iv_}zya@S/N <؄-Jxaj_;چm`yi[4{᪅e%a7 m%޽D vh8vfЀνs^Fd ft8$,V(w0#әIr:O.>(ܪ瑐*.;gR --H\+M8 :ryPOpa.Ohhy5xu0iYMOZm6B(!i]bS('2N;뾬j lS5Y#Ϝ6kGT%"Ie3B& `M<.$va%î&"u,0^2 zKbwTLx%+4v]*=ع̈XLiQ#f7*VQlE1W~ z ٛ T'96=Y/Xw廧UVMocgP܆o5#VFwtU6RRyJq\/4&&ܥ?u7&sѡmԞ4d,ev^|It\ڱYT@_do"`{WݗdÖ#Oɫ)|$.?I{>ӛӑٴh$f%a>q`eUR[m jZ96|(鍉*5``/0_p}uE?x.!B-v ,0.g܈NOyhɟOd( pS],cLB䚹w+K0A 8 <:ţI2-JŎ;y4[cגtЫPbA9̢oyoAr7dCXZ2AWPFu~D:D<}'rmȀl"RwU?Y`; g2^ek?SZ)UaՏ]w-^||ADVx-%nDY:=pi 3H/ɣѢZpbz z 7I &Y_%D[Z`1ZWj$IHG-97D$6 ٚ x=;Hk돱mCA'2þ-/"=>"딫]{õ'X%ظf+{,~P7gU.OWK!gPe] e%Vʛ+y=H6Ǯ`Ϣ-y|8@, #& **_LÝ,`~9kL;ExNKw6{1ZnPSv[l֌1{Y}ǵO*`i2Vn=^ 3TWܝ%@e)|w =-3!˸YW`mRk6Y竗sFCA6Q_b&*"QPVr *9['DXj&X8:97wb#*tT$gMX,"F'pP7'*́8v~HP]/IOM)d8}hah% ҉)F~b[HT`8 M=mRC`}c)-m('3[I_l, R_dm_G>T%m8盓!c42kC4Gx&,`| ՏH.*Z#x:{3ziq#>ȡݞ=!Ţnv\אxp]hVָtSI$ 29* imޯ#P9̊nb}+o0AkAj\\5h_P74Ա*bh;Vol)N5=f[PjZ 7VK&F`/*.R9A,v)z=QZ'ү`%Hb6鷇Xjb`o7dbHPsK9|*墢";)𓱧RVp ɣӽ,H@6pI{2ISNiw7j~ճQTEjAuЏ;V#aԱU|< yYq,:ni+:ZE\Tv `JֶA#ZK^éB2LH+mEcJJFF2[ N? }t*{Ë?]YH>A/S2VX8CM.1<7pgMhivP]C2닁^>G `F2X=OGɀtPGJ.#UА</i`_b){h* y[2ɤ\䦃fWQġV#4[+8,Qdyºiv5H6yAx&50!ثa[fl\$kB;: ' _|R<"Kmє=" =h`r^p /8HnZâ,)y&9|i7 F%C ݔ4FQp1Fc(ٹ7AV ?_T"+mDݽCQ[׃H\ xH4 $'\ct}AxR+áώ(sSÔn\}b&.ς(#aWjMѫQpΉ#YI}Y4EqU~-bo%mZlSoBYTDKuΈ.[vM+Ip.v`T5I-Ff'.3YAgߥ8gD{z"i'ᡲ*f5VҏP&\Δk@vq ӄ#T>("=7T{wfvvgJn jdqz[wMʕ%L4mooZn>;=peAo*jpncGG :HeL 4P-T E^\"Lb@"(üs? 9hB:v:+l}qrBu{[(F!T5 |`DwcL1+o"'ċ(ݏcRP0k :OhN$+kdPKq/( q2 not0U\A#'=~έg8XێEɣ T_OO=;]W'P`uq{a} (X+%e+e^ͅFpSAqoX5DGbl_2'W'2 7e4|󦟝j( O?E K._T=<{d ~'XC!v c0z~4Z}]:OFE PሼVœr$VOƑ{wx/tK/I:l`q3 \m+4bWL%@鍴&p{2`CjlTu2̔1C&c'Xr";v 5R@|6l949\LMh ezqpE6_0!MySL=H\53iE'JXqӆH ܸc[pկЧpNJbx1NFg0CDL4?^;l6gC ,q44A谥~;ŲӗJƅU L1sM1J[,_·ڢfg P|uz6X3L~g8KIOSIƐp@+eN>짆@a9EO$/ZyZ؃EJ0¥Z/0떔_˩g@!L UUi\6$4Y\Y|u*=~`[(!'А6_Y xVA٤EoiJ li)&7C5="Hkg:fٰfhٶif_egQ%T QSSiILf'e[yR_YA>sot KFՂ39ݾ+>J8^%L{K^a֋O<1Wt=݈FQ[C1Io 7:%05o]I m*eEwQ0xֶdNw+E .~ޓœJHkB$P?'4eW&Z-'w r֢SXD%!ͳS* q a\S3C]BTUU(.ߣgG۹5Ȟ?(S:H3m1V9uvHzdbZL#{,\ .dֵu& ugDZ-c1e䥢9c׼ʴ[/Ƞ}qUjxje!Wn^bu{}c 'cxGb|;{nc ]Ju͎8{Wbo6D8EQfH+>"~]ģ-\Q,xv&VH.)dN~]EyqINota1|DBJǮvZ/қ;D~_PchB0>0TYs/Blx Z67e(ntS]qN -uFp8:3oph '*? ~;g=Qu*h+]ȏoiHQxN#v\q$X_i,xMԘVz6^=`71:+9Du#8m=NX<\ qyO,Uw$Bn0{z1D Qg=(qK_\ﭨ5vRلڕgOf i%z7ר0$ۻS˫)EiwMX*OZ>+d,H_UirѦO,c;Cb*E6 WrKUZ m6᳟_qVqѤf?zTlҦ'V& @[2& bq+!y[$_BDv3cG)@|M:*@ɤ;g=En8gmq"]}vtcyGA5/9?gF΋zRFUZU^kI"\IsǼGގd'cLKsd$} AGo2,q^4Q ` g<+ X|EkE744G8:&kY~smtRZ-Fh{hKA` .`HUz&Rqs)Ps7@ ;s3w6I+!?VFgܯDSNTvRCV Ƞ̐[X$Yױ|8ng+NӺpNHZ+qLqڮ[ڂon:kgFol Ar}=\vM˧M^&3&ْ9W~Z9cݵzp,@w_9;10Gs3Eq, šA (.Ty}!ea$b*٨H|Gn #A<_3Euz^lL1+'k^T^%ѵBã!,4iG,U`[UTkIO݌oA=3$5I Dm&:syƭj#cm(}gjg&} ÕXrvΟŰ`=h^> aJ|BӬQFPc$hPUx2z~"K=r?+#P6_t^ ɪ!xkWϖ/3SCj>\z6ct 4˔,|0HocRXNJqL]X4|sE7Y {TT쒹R!J]?: ./%9>aK j#<4/:0ۻreIet% vϋl(L\{C5[[pɷɝY%y3Ҳ@A`̪ f ~8tlSA'Z ϦYU袐 % `JuT̨q;OqGy30e@V٥+xA-J_}gvclS\j`TBRp>Tg\X%rbn%ҙ ŃXٿ ՠU.~1WeOoQ{c-)*"`x&&)TbBbUysGkyi]ؾ}˲CҬmcu =pm ~~iQ Gxm>fK&DmhhO,,DlA W 46*Z]E$hZDB7q lH7yNҐF~5ޮe@*V:#7{ {*L*+oXv/RѨ4|)l@ yz@2SrzquuB: enpShU* c.旅Ձ- ;Q?:RN\IHQlxܶFx09mR1QNqѤ ?ӁHO,rV [ *8B |`\H$T q@{۾lĢ Q?SrȊRIj^:Or2.v7 -gN,e G %+!j砏e=FPY=钟G-e^V )Ng CI 7 mzɰ{D덊"ZL[53Rg8փ-\?`ۘK{TU%MD[Y|+ Zr;Nna4d]eNFYd}1~Hd!nƺz0h\v,d-3HVC%UWnjߙ@*R++@1B3I_}!?e 0<͔y 8s/77bz@& luZ\Ξ=Z76Uʔܠ妯pƧV&]ޜ/H *}UFD~P-ru=Z#rLmqFg%Qh+i H#?](+^T*#v.Vu$"7m"X:'L e~[>K_ T6+]- ]^j/ (cua8G* 8ڸpCsнpx=}Ȫj8(=kwv- VBOY2 - Y ކί>fj%%|/UaA>D`(4ՓBF?-Ƹ~n%%A{܎yG ]3ZOo~!p~)YM'v #0/Šo ͪV w"1g[7wUG%Whjz/mld-坴WlV&*ck+\ϜH7˻s=o %&d"Edd'~MR*šH$)x$A)s!"XN7>WDJ`Qbx j0Oh~B^dm+R=tt4$c}M`3ߨd'$Ҡf)YÛ /&Ͷ.ӆHF>=&L4GЀٮ=*ٚyӼ@84R+706wH:ؙrQOĄQgn}MU"G~hOs.\ ߘflbm#A_QÜ*CC dchI_,o\$ОSNc'йދ%eMBۨ٘f4(X8". \3zLLa.(rkKyċGi6kymbw=DhD_Jqy؀"v{ Bl0ʋSo2u|w={Ղx"?# `)7NjSE'szxjx&* a^4homs#}qSOLeƺn D4>P2B4f+:qՊ P-cSa$x9,+ݵ#":OU5GI[D p{Ku}Q8+V-O\y֗"Z7˴a#V֚?TօV $=%zd:]u)E4zEu`ǬKINA^Ғ "V)csЀ``lIO[Pq,[䢙{AUrf*g!`OZCz0K޿lqmf:D)շp4Ԃ˖)j|~@hN \QTI |oz8-edE&jqԆ]mgXTՑI`;ՠN6"uHhMcY=wB:Ā省&ѵD{SVVIQm_Y'pmҗ}ZC_xpZKn涇fGgƒazJ(%3vWŀyB (Fܘ~.U G:tM .фO%~r%eL+0r.֐&ve,;^0kvsWyK̘JDBw)kzQQ[OY2s6Vi.a2Ltϣkj+C-ò͔eQ\Jy@Ihh44upa1D38gl35mɆvQlöT( A{ZDA6S';O΢BVh:nyŐ j?qy2&# -|pFcPFcKMاx 4I#!ېu*E+:J/l\*! 6[;.M}){tX}RZ/rC3AGrķ$b-K.3,ւ4S YYV;D {s.kZy&Ѹ'(Ÿ,UI8"Z$-YWܝO7܋ ӏETtiI^M;|9Ҩ/i)'uOIukQTh[T6V%gtp Б>CzQ?^ O0mI{#-?(Δ%nTf])E貍yէdvJPLfٳ4ؽNtXDNˎׯxV;UX~ }K0Jъ3o_vcpJ07:(3Hٓx>m}9LpfDN)~hS*&A"^ sYɬ["k"l¡n  Q>GA3:1`Iev۔<|x 5ҒZN9,Ga}{Sm[,=@L.L@ *GW5|QF~;6h;mn|Q%ޭd&{UVj }I_HniHQHZ  i"v,V*wN,{Uvȩ'0$8E!b Ä͟Ƕ;x@ auȅK=1]IC1 膀ό#XC T?Oo.O$ˇSbb4'!S>.c5 Hܵ1@R 66 ,w8BTqRu8R{=/̉Ga!LXK Q]钝~ P^cV' +d<;7+7I1M5aFaChݢX0,5J iRHmzׇu!i6}Hcu&=9!c'T[2~Pv9_7~y3R!"{8KzU6 I=.=Evy|A ł~LXZGfqLCkИsdxKԗ(0p아~{&Y `\*B3!Cݎ%%o+ {}݁-$T! (!D &Mo'I_3IR׭P=N!Md(AOevjW~=S;/O[2JNL/`#v[9u#ZPᖫI*+O; 1ڒ {՚o٭W?6/ux97\U)`u|kzJxŧ'&l!ϙqj=dHߖxl°nnY; ?!dT T{56|n,m%  ΟehůI${sok٢YYd=D)dJj\U\C2c~%rn~WwKc'{po߆N O߻9'~۸u䑧)o5mmQʲԅ6:(5Dˇ2z'o>țe~+AKДKEzu?8WkWh."UkChW쏜nElij3-ʰcI>dCv FN8!LCFĭDj:3f b1βSTq5WTw0[ 0Y].ú ޞW gC+*[ zx%W^"!@1y(Ρ<{X26]\պp)U,~ oeTG1GK2ޘ=et/ʜ׸ 4Fun73NUK qMJդXۀm%5q-|RÇ9S(Lу?mG'9yP$XeQ,G %3  #+jQ {0VewT4 ҲS%l\Z~,b59ҾOZ{˛CZ@'Tx2J)"[L~_ p;STCo> 8;-@ (,LF1 6;owHEB.0DƳcSh33$]xu1!3Mirp:FO[+N*B3;SKr* bb fG!{TI;wƠ{n 5\b̓ul&?pקfF#]s sL6.JDm* `3\Եؗ@L8Fj~i@p,` uj;C7I꤂9$w8&/I9, t;(~A^|Uwʖ/ܑ;؛j/ԓ(F)lwVۆ..MS "oQʘNΙNwU3slbp$= t1Qԥ͓IRx_` %EMnB'g.0 ,A:`e _P"hS]}*a#T/z>ӳ('ȝUQ[5i$M] mot !a ̸{.yEC!!;έ %CmտEOIx07R$O:^Gqw5},f([bkBg>}Z8ng&O5 gb4S&nykw$h,jobȝs/;[_Ԓ:0nOm0hK"oLJhp'b)彩mNJQ#LDa  ;_SG} 4S8^`^h^z ll"ܳQ_u2|"ka1P}mڲ6R _ܻO(wۑ`5vșXd=AChq [g qA%Ķ5j*7l hb#HX5g8:?ݛi %JJf>^J꫞նKLXݏ_3sz~>(zY*s0 ?vNrn*QomVi`Qb1 xKƟKI%8eTzEH7|*[fB2W>v/WȖ:|;cSW\8L0z$}&MJJTR|8>&R/ͭ{RAIڥn'3QШb=Fr qE FE%bLesM<)ˬeAq3N̲GL:0[hH" ,PUUcҋrbvz݈0, V"ʫ0DgH8RN3#)A LȰ˽*Ý@FyPl KQ*}@<mV,=YOL[<~aW=fj\#67$cj*zRT+L poxZ,ۭu+UVjq%ڀT̉M{h7OZRBNh9A@?[LʕqWQ$MNMP ޿ -`S K.?_dò9*M"d&yxXQyYoߗ)ˆ[Qi]9uϰBsg-P;ͷ\^z $S+ob-|P}RYXJuE[|tvcyhHxƬ9"7UK:pqaunB^j64T͌oNU_ h;O2YF5ӌVG':|v=PD{~{:$Poeq׋eA@cd5J}+ȳ:狑CM2m'C ?2,I+18]8w,liq:`As)gy ᜔L]V'd#%NV)QV^b/G(dZzBYkmHa]<:Όp8z`fV=tT<#/;Z7fOb5"3ɕ$^ls/]982~|Lb{$H}|iѩh:{[HoC܃pςn^ /PJUY,HS:j!;@]XlϪw(2uǡg;JE鰷hU# 7Ֆ]C^ k)y{ףdT-G*JlGݦ I2h2OBg ×_K>E+"51!uɸMEZZgZO:P0+Vh˄鏕_q nfO&(l |9yƺ9.2YmSG}!nBj>CWelw](#qQn{XV'+T̀c2RTœpVyN݋HR"WFx(WUҳ oMksBw] u=E9yI9Coxw*w=Qц1;LP#<Lˑ쐠-I"r΃{6E"0{eD~,OHX|QV5rkXc᫢%fk2E1vtkٲkh,?,AX (.ZC+TlPܼc鴨Q[w7#1bhڙ,jb'm`tTťICD\@ [ɰ~v1a%r-CMiepU{֘o.j Pk/}c(vɯj  xGŠ\ &c Z\6,uLn'ulL%.`Z 쐵s$ 2A4 'b0U6p6P:EǘOPN~Uzi)olr"B_1{?˹tFJAeä|*l(J*_qw+vSXL"qzՆg\XD&^1zRO`̽XL*l+.Z:iʹfTďZ *lwǣ|voR'GXd {(0YZf?wgmp5/JOڋ9+l𴦽P) W! ]#x]eht!Kq7Cf6E5a~ږyL fL1;#-O_[qWW鴺W9 %"[`#E$8w}`mFDwpp2-9=GQ5CB>-KQNC^NY~Т(^6n QcN$"k'Rql9V,%y¸^ik\T Ar~n I@Sk&$s8kdk0<,/r; MN#im9rJf.?Wt%C{9g1kx<ݵKhm1z"lfW/\=GrI"d[/mC4aw5Y(E=WwX(Tn YZFEPC`pVhAlkTD-yk͠V`+ r7.v TrYf@#I'\-`>. ̓[[g!~jQ1ELBQG/Hk$-6 ('(kS@vcn,'0y@Y w cQ8nt<6[Ќ!!ݬ_0hsJ$"6v\ 9Z}.ϝ{LJ?ٛ0p+ladƧô:aĬLp\ħr5˔e9 0Ήk֐:EydJ[֓K ܺX}~j__i1[g5n?yM "T$W[R<X{Y7}dE,@Wl >~Y+#gnj):-ޱ^m0zߘ-ɩ '3 '{+KN7>ų˸<j#P)S^QtG9e@8u6; wP\]2 Y*bސEf]] f-p,s{L1Fb5mΣ` sOʧ]j#E^O~K˄O ׺ -)THr`!ѥQZ! '7#mؤzC1FACV{xBe>m?=6S}p&wXਵMTM7Cbk#:U o8Xk*ԫz;jef-`p7"M.:b.f#g\!SaN!Ώ%TeĒ)6Ivg-A(NPYGl &{|%Gq.ur+o7xՏƯ(~4ŕ>=u F7t;4iB!9,rF;ӯC`fG X9吢.v*/۝f p|o?0UWeL vGE MEٍLHm@Q s~!r-ZŗH^+` G"W#)|4PW"WJfؘ_#ؙol|٩wwijZK~{EZW\!(+H {ڽf*7쵝b19Qԫ TF *}13]QuˁO/-Sae8BEYZZ-sM_8;{p_j٥p'Gby" ~Eð=GwUYB-DTi32;w#Pه }|3Жq|I71Ptdx͌`l{/U\S#'|9ok89JlԹϋAU Ѷ1cv:-b .ɸF)L&JKn 2KxО^P?ha:{Vu>Gz-w!-N/R8{; ;.mh29S&N9~|r ZLwvر8ic"`|IH2y1&4YKsxA<#N⤪=|Y}vЦx)1o! (T$f})oa .%h!WsúV9bV qLCw%%XGxc#2[\'_募 mGd6fmEׄ%*\:)~R =lˉsU1$1!;9Mv…l9bUO 9J>%udz^Z_Ze1Vlgn9'H֝pML5a\mx&8Ĥ#j;,NLE'ٺ T0]wHC3Ѡ2Q"gKS|ti>nDΧ*PY$+bEO2{oXJ}tr?6D!M%8`:̋:b4ӟ#\4Bx˟ %}BOwkvP9%=n35j;W0cKʠxlٴWZ6r_GF6k=Tz>eW:Wh={tK囯9%VDsXg1kң~=Pl8S.X.{)b^Oԑo쯄 Zۦ9L-~V{_+9Tz=n ¥TTze^0gga@jU8>RO;ugAN=zx&]h3ɩ{x='npdF,5Y ϳYs=!c1£5>)q%4*0I]ͯáNv4#"80K??wN~ب1'!A-C"U*s:r\XTL\+:z~"Ȑ00Ҷc|Hw~$ qqK2C2-ǚƕ"*Q_ 6\J4RM'ʊ߆{L|diJW?\2wA!ux}?c~jjo,ynZ1;Ϫ@试@O"b2S8cԹ6+`e"(S @Xz\=ܛv2Xn*`I J6tLv|1c4~awASO0n)JYLrMHM-+@ȗ%J<2vNH1R_.0`۪P5rl&-F_"b:zL넧%TSTvέ?y1B. ӛ?0g/  `nv+Zz/Sx-8B8&/JV5i* '3g升+Z}u|kGS duepQ\CC3 e%3:5"5@8Q%s 9&ɣy9dw\)@A'9mڊ_zfxۨRvkrF9Lo2TZ,Xo#<:.7cXcᗐ4.U(TrJ탃ewuiW,n9xNN㢴;H!dP8- ?K=j.Y|t%r-)΋0;8gPwv1)"d`]ƽl'3?D/ݥS{V8~8j1rN.5f8'.73Ƀʔwl"zu+-8 bч?w"iATצ>!,10qMYhu6JkL }Q!IY+52r"[ϱ>2C|pIJ0B/<V58@ *?*p,fj}͆s= apqM]f m{?6f o-hO`fTҽ8|z>uPIzvc}`I_F?S e#dET 9fv-V{,{&ް+a;2M${Kl#Q`"/*1"P&:)ЅX%z9bb;5>S_s$ުF0m[qh&nf1er(0lSkAؐw+Gs{T>WkW?BƓmby u' *!=!\~xRec?򤤩6WT: kņѕ`+y&78pƍ ,}_zE`07<kI:lmAtد{o5K {f+IDOX6^j#xSkAvRtR5 eP4Ł}ocjŗ>ɋ떀dV2%p= = K^tfFFZU@"fWIs? z>]cInTG̦o1l{Wߵ2%z ݒH4 i&VZß^P.:}Fw6QE!3篨̂ZV8Iy֝/deR:"b =q~N? Q$Vĭ+ b=vg+O]-Me$yF0y=a*r'*s,&W׾2 4~j nLXHh9uXn3ۜ+E4,Bs]eRanHt!: ,'Z-`3W&\X EV PMt[tOTD1QёlIc T7H._t;+/My˦6=|I 5:V vl,+KYU1WnW-qN_ Gˉ|%%hsh٘3L>_1C }̍6޽!=ˡ`@LTl w<^\m opP눠 M:EU>D#wz_iAT.ԓtsXq9O8 ~_NԦeqkzWȊ~gwk|Sꄱ{+ܣ}iIȵNF$Fˑ7x)gz aeWGAU MyVڏN3eYUWOum ƣo-"@)I4K9RsO 'QkH1Yv-%=>ûlV|C<O+%qOSe@[$TcpZZJtyŽ^%6/Sf+^:sf+U4V%f5)n@Gm,ȩ~J2B :Z F@j  }JBp c&l9DrBNꜲB1}ځCC'P B֔G-oް9Rz(mWoY.I)En9-m$b&ِQѰm'˭ZTdN到5ܚbAXc0{+۝D:tƹkl4G\1XYRptghA>(|Q4@8{aX:Xsn7[N]qK%뒝NvPH)~Ģb#-"YiS{o̹O2C}Ml;U2*7BЎ_?9A: ]|̎ݻ,,Y+v%{)VPxփ~뫪;ҽb$f~N;;7k@}Wxԙ^H)[BWa|0䊳[!' Q1f~ 쳱谯a={GAxv"0qQU&;2j+u5ѭX-%*|S^kOWこ1\C!ag,]qaF[fspA3 bqH'#,2.I`1uz#3c聫tu;B>/K t^+O\ȦԔsq>.^խ KPS'{4ЦC׭2D_zVjbM0gDbj4 }T7T;5:PBDc{Mc>U5ǧztCxoYOr;^;} N8W^xgak'y>bU[q {?*ҮDk>dy:#]S)l4e@+|DŽe̫RZw.[!:=Qv! kNJ[>*C.#:ÄTKރ64d@lFz_"FzC/PN:HF2rByu|@q@l-k*/h1 *&wX;CJΦSH%ݚFl2 d}|UC`OD{pR~]E {,|-Ì 9FWD<ԑIVPjkQ²dVC)_u$WV bFrA<LbXinE ~k$\rpz_FH5QFC<=E FQjnUAp7;g%jMP7,o*ih[r!"WbRhÝ=:j t?Pq$s #1 Bc1^%MJ !NjFLb,.!kmrrvT_BR+hn {WG9@ vjq q_&|\P_^-kj&gdq;~ jw)롎 f!/R\WZzW72f,~zs8 vɭ >ef{ƢyC$9򖵃KG]`p4J4([4oUDTzV8-#+Kb® Nr @FŇ2?1pydTB T2.X=Zbn0ݤUOe0|1 j`TE8zg t'XJS" )PA\Fї r m*C|I.)gf. 9cs'&EPZzuk[qiGo{qŐՉfPZ魥$ S~JŋkjdV'<86Q!!oQ6j~ s{^q)_EkF">(4jT7]0% O2&B Q*d> ŵIkٽ;RH\pirlqĖ0 *٪6``I@]?"y;E@(YMX&DYT G=oލ_&[~%KAX0:xxTQM.l zw!&#IҬ56;pFG* ɢwu1Oz'5A9arFqcj$%u`MQS %aHm;,+խդʛxU"(u3sBTreU XL6*@@;"6Sn ~͑ZAخEUβ!Yt NDZ P~:cuzMaml"糰 P7[qg|ٔU;$E,ʠm+BENGt/?Si^-W;Cyo zW Ԗ\pdv-Y^KK:.D5P^7KMلC?FƉ'.F J_$`aevӲnuH1Kl+PړqmUb ;+>1&~NЎ€Ƕvz%@ՇlXH2qz翤=} /d0[dOs@bc(P%NG0u| omOdt&rQdaFQ5):47YR׬>Z4A, r-ұFgǏ"VW\9/^$~04j^< _M/yd h!?F>nb 01bbG%w|%Ŧ2[Bd0sMq%4Ё1:!9O{<t,|Yf Rh 5Hȃ3t_9s `cC!w!?*$DⲆw,{Kc.+"aǔ:b]Fz#% ڠո:pGcgOޭ=rIEA Y$|#EX9Eqx9O{wu;bm3etBeG;>uH Njs 7qWn o! ( m.0MLԘ_ eiy},`n_j)>]YRNEAw I?Ha?Q#WR~ݍH1kr$#\'s]G+X w#́P*ssϑ=)gVA*ՇbY#%EԹk1ۏ!cWgמq.hӭ3$](kH8}&NlNj7&ʬ-ma@Y*"-!c꿃֥"WQXFL C{lk Wtnnį?cyu(P.:ڒQ=ASq8'l`ͱ9i߲lw 5j/A9#Eb3>LEzrG$x暐,*pqt216"brqDZtuhu{rKolΣ\gȊb]y:@ܽUlc* !zفW([æ"+ }}4#ĜnV 𶭬/ O<=1#-SghK.-݌ ^9}JȒ&$<⽇nXmgqxZ,5QkNFٍ}A +a \HrTXjw7R'ʄR.7VcCyhE$$hnq9,K|"S>НP{l-^If UxǀDˬaTW)b`3G$oM鱘všIhf+T~=e"(U,kQ/nF0e^2`(;|L*XLt`w(t(eh `93³%B3v N{RYON aSXx bXۼ@c#D MDRbEhYjvQXR]}@ðGC+pJcX/(.wkɿ62ɻ{Cd38f ԧ;e/8հy$i <YYfDŽ\ϑS[PNS]o2TDKUc&jd(M[Á/RмK:1{wpQR9PDƊMwg*A>ޥWD ~GpD6b-^O+hWzLc 렿p%u j8XDy" 4m%rN/i/«L~u侯+j`472UX͙A&010, ЁYK^ ޲x%iLRF"bȯԹƱJk5/3{/ֽ65pj Jr, ?x8|8x<߯ ؾ1_.yOY3k63/pHAcE'+ڵooiԧKM֙I{w~/=P =D̍nA1dSo*|zO> .\ZͻK[K.?FI15.qAdW7GJ]f#[ăLgjxAYX;L%V B ]3* ]PTY.4D}sQNf';yxw3Hyֳi,k@FLj !1l$Ju+"2b)mqcwN/E-TT,ea~2CZ]vM2uhGX jN=`P(zh"}.5dz28TIʒn>Ec 6{eY?$3NI-5ng /LSvoDN6ǗQ"YGއG欹J)glp&gj2-vCzˣP~G1LDAj^\u {4rq&bߜ1Sݻ&ٰL)+@m` Ñy0#Ю;^p3ۋ GIizP~*#s~-N8Yőx2ReuLuޝ~4n+{ &جr_ JGb{.Nn:DDB 02^-!&.dGz8sUpdF]OrO'oXS0CFDw5p bʂaj,})_E@"Y2sE:e.dOS- '1 zGI >"uR'bS]ğPةJI~.B㵩 (gcP+Y yuC|"-@析a?K&<kJ4q#TEaL?s Vu0]D-86ݴ: \P2KE0D8-"o<}o~I:IJ/G9a.Q>6j~0%G#{1YS!gP6V_0c::#fp8x:惦o#-E[jS* ֛]G>-4&xJMbU=v"'D*wsLQcO-ZoϏt*L dzLQ%"O3&ۓS>|\_N _!x{c&:{`JOܜP5~ki޸NS8Y5f*$wy$+@;?5߸Cn?`B}̦GC@~ԥy!.@ Hr]M]ݺgo,Dȴ9chn 8]@b 0 vu`tCcftHxOjcYƶJ.@b~8M[/ir&2TK)!J>WGsYa_g72B^4Q9<] \|M\.\WqToL"ޯ`((u#R2PK.dC^dM1:dSe>eHC>,ε!Xp5)1C H?uέj $90X7m&*;**87:zntC#-̲Kdhptu~Kduko9ܝ%[u֎%ɧfqpǐ6\#$~Lrkr` ɩmhh3c+z?cF9ObvP<6 59+"0-pW˺yInAa1!F*͟F_/ӌ-t> `\SNRH]V5&Z8(3luMf=#|Eӧ1?UIYash%}e0Y|Hm+?Qv_aM;/ =ISi\\D(PݬNzif(؞2e6x5[y&|I&軷4֏{Y=O̯tUw_{5,GKfSxɆlL bR<*Ec} Œ`^p*P:!f5vJLF=i]n&pȎLglɧ 㾨Vb]M3foiJU}{=6U,>y_OVU*<UUKoJQt|0q!΅AhkOWqE qmN{̤ωR`Hx–{זWrLސIFxb: fVY=r.\ÐimIyAHAʊ}Q.Ȃ1:.E'Қq#G:hV.GrwƲ7?8HI&k%R T? j}`{9Tgr%G6]3\%|foFLHuS.i4|M1뜲R!֚[Žow\!<̖ [b]^^h89΃jy(-|C"D ʒ=[r!7m9`n RhiN8 eOصAk@2i )Ƒ7R{]7Q}+OUHz3O%Jp".k]T93 A1v8FYB. 2>ԫ;om!z(uc9aZ~88E^ 1ZJ qS1~JO]sDŽmR;a5ιŞk)(ɰ dQrS PteP+),b$[b$x13YAX2[@p"se RFЮu.eUG]n9Zs\"+~IyL] L(O Z"& 2Bb|Lr~^3dh*vW `@EI #")8dַ+:.vҝ:ʊjAԊSbO&ԓCIDb{ Xޏ K KpL6,/9G(-;"96 'PhB )E2&)9^ :Dy?ISݠ^xyxZ8с$pl!63)7Lj_ io@*f/x/17cu6i~t^\t%-<~MXJ!qeo+MԊ$h7&"]HPZzY\6 $n0>o G>_u".MRK wAkc%-UCW ^NRl㎏SF ,h byue;Tl ĿsWIFHMpؙDrVuڒuĸYh KxxвY%xP8\fr{\z$a-~<_Z{ L{w]s nl1 g@kO^tVye=q(4jf$"b^{7 AgNcBa_J qXjf"7gk=j.y@D$k\Y&T>{:҃Lpcۍ.Otdi9SkO!NLL #c)c<}?Ǘ$A :VY(bB>6j2d3J:)psУd#fUڎP7Eu!̨Lǔ:w(Đ4٩b ˧I"F"< Ө9BgH+Z^Ʊs bvW탡9j:~iejW'ئ2^_[2֧]O͍ 6erB/ ^}şA/K6P). PU7x?EܛIyϡ, @'{O½B-2u#j*ohN @q={E&B}AA?I_Oҙ$% iFƴk~@$Mk)ջHMP85x+c[i0ҺYnX9%er9n98;0hQ}}J'3ngT{:NMq)ʼnS~mgeVɏzTQB]mNt1_~/אuY i%ϐP jL`)R>.8E^]@BhP!(3je~tVȊK:nwmѫzl]vbȤ5H!?;+Rɣ`ȏ0Kd Y9,}|\h3/<-2x햧ݶeF ^NxohJ,'}[a\3$ow9QR Lverx4zWؕ&V<[ ~Ļ?Bڢ;`zZ~,Wl* 3")9i$E/ʾ$9-BhIX G2^@/ FݗASnޢhpk>/[ۤY@X,WS7`Ъ+4k=kоfrރk5⢇ah9Jh 쮺s1 ͘yfn_Ҧ~A3|,でBLWNP/k5Ut I}y˝ 8Θgł.4䮘vxO)?Q$^w]!$Jf&!+Q+'^30ODYO)B*{r>%{L )^@2=`=2%}@=qZ&rVV;`$+m%|~|W@E%(XnMjLF ;>p -ġ1ryf̄(3݁ ~\=@@m5uViXA\Č.3gSG$0' IG@g$'5dYDG`ܰ6$j'"(3GJzL,cc{NPcw-YUV u }wq[4~UD溊)_f>\A6JuY^ +EQwdOL~idǾh !l ڏYiϝ.RC56z}-*Ij؎~fhs@d4Cb :D\L"SRV2 q9z<3Ǽ5-⨵/1/ v] QLac,h r#L09"ڷk?|®5!5S5s84ߎ3)4h% ?Z/f)cSERan,.C:g:b\x&yǏu}3,{ RwE.QA)Ffٙ K'M@;~IV/^Vr,ܓ॥VVA9? 8הfุ:5kjR֞Go,b ~*3ZguJꕗ"G봂"ܴ~vacDs ' lz{>vKO@;Thp6?MAtP ӫE121|KV dGk+4Cfr'l',)ѥYP9)|$Q‘A2[^ҩr2|N|ohL4H,S{1ʣFHY۔){Nvx>/;omaϑ"AkXwG欅=l~OۘʀJgK$ns3Crk] @MKOn},1Hm_AgZ/?$(szAȇ@|}Ab*[Q H\iɔm(6BpN1yP4PJxodxlaF|{^'dyɵseͫ*Ufڴ"jb d).aۓ*x$&d*.(Mugĵ_}/zf <=yYHgJЀ%-X ZR:aR84*7x۟ԷjmwgD:m$ jAKs!M5MR39`< k_\Ң|9%]@/f;lo}3ήVk :+At1>tJ3)_I{- QyrlB'K7_Mh(s*X?Çh[F,ڌB0U ?$E/ >? K'w!cرpG2E9#bP‘LGqjJU~]9LNK>b@$dpXO ;SgԓKˣʧN}LilG@cc%6Nu?`ON>US7? Y%>29~0\z-~`R𼭚GG)=]dIa)*Բy]2{44 e]-!ɖm<īERs8- %-91 |F49۞ TzRd\-!2szw\Y`iekV=؆@<H3יʮ$Ewp4|?B5~~_`Pzk'M0;3xVC_V+"{h`Oa;O:21ϷbYO3gJFL;Bՙ=w UAa@8`Wc*܅ \G^x'v}(]ž!XQbD"'>hv(~6mw/Ψ[rz̩^8eႅlīa71ޤh(9u_ f7N'rp[,1 m'/dQwM qJi-s(Ǎw@(ltsEͨ|]ӆ\٩f9pwٚ_E1@ z5}41-F9M4f2!os >LDլHхkkXH,ynwVnp"ʂQkbnmpwM=Iª ҅J:Tu"?+U67-s1AӐRʨtA#ۘ8s$FOZ柧bPYDKPШivUmee'&K(! ?KnTZW|7,+vٞ$mq5pPRӇ7ʱ9۫@ În y.rVf5hGUҗc+Q]z ps:GׄF([JNi;ԕcm/[O3g [F4jY dOw]vJ6h+mc$XRIiCkdyUK*\d4}d.ĈR!hVL5YJ-Лu(@!5@U=o&F,5\'qN]z)2TX_Ő y@TSg-IZ,Amӣ]NйO~w/juc[G\^9^t/cHޭŰAp?w#GoyVԈC4ܽUahsi"F@뷻nfFR YݴC eHrs/NJ(k.3mP>!h+yUui:mf^c\@"FZyWrt ?DQp2Fƈ$X xPzGl7NJhL[WKO 3>,dn‹#1^Õ8kuѽ-ۈrcD ]܄!zNIc74[!tLvDG>Z,ϰaCƎsQ&Wt9kZ9`bÞGB $-JqXӁXMѼB Xo84j<ؙgG`zn{qllœQa }g-OA-:xau^ҷ] ]SĴ *2&frgHPlEԚ'|Qw5m@-2P(=oASӛK .HQ"8]S"'Jt?'ZqkBn,g)Un {)<@^r517el{jc0eiI;Gto{;_F [%T#A3Zæ-扜{8 rWo JΊSkA1JdXԑV2}x;őB8N0y{֕<ݸC$$r8a %`2_뻬hcH׽mxJ#jĎ@D$II Z##XNkNxT6:{4R4 PN(qQdf)R{ԅ2Ǵ,P+ tyc+ˉo3TԫT~,T|! BWikrk=lbVw6+KϚp[]̙9jwl}t3 ^6 (0իp`69}Ԡ2ߵaMT.<@]4DU<\Mm1';V̥ymlA}4`e 268% \֮$n( K"+)/|kw]\ߝB)MSr/GVﳚRkd)GRq897mkۂ^'L}6̅80NUdz287Ω F˗|WlY];9L6~0Ȁ/h!7\'Wd(RKX'샢_4AV{>ev+6Ů#ES[C`SsP҉~ j Ғƺc;EBawηL곩rX_m0BCghaŀn[Ź~@OeBmZR @哗״hw,P,vL_nTMGQ(&KѠ m'>gv2CnGȅ|+$H1짚/:*ϪVIcK,#Z' pe!ɾ60,BA%/Na0l(Q<$ ~*sk8(ߙ߲t?j.HUTSQ 4vF7wB9bs@1h?aqKIF@z<1D*fWث?CV8=r'@j,6\ܪOm4f3K#M{kdi75yo5T*ovT5a,ƣ5v~3҅QyK0$҆sԄ)#wht;Xaͨ9/9atzx̞}Ӓ^fnSa-(N]5,Z:W# uՓY6 L]ѯCVC21a.X<-n"}-i8@ `j鮪uF1H6':3 'xS񵹷!{n4UѢ=|yˆs4A7yC[8TCsy)Ղ><湻@m|DAv~U5^uo1N\Z`:h%s< >VѸɨ KNB.0ȉ5Vʇ'pxS#=/WrqӖǍٮZNj*AܨRۻ$U빗=sfjL .$꥾KOy?c Ʈp*-JxN Ѭ-âNFfA&Ynzwېe]iV,sD3iY8#ݺԹ+S$y*Ϋeģ5L|H@oez3XPVhlĪٓ$Wo ZRC)chRRrDJm`yrEB i=A47?瘡V6։[B Kr%k9f]:WǪw-{w̫I`!Rǿn ^>3D ^֚*ZJm8<ӵ#Cqh*8?U$5Ô@3laëºՍ}16rRNxQ*e>1c// 䔆jB@͕Ya[gPI K0#8( -O1ɲM!Kּcvh8=zVDzS7Z"R>S4tS_-o:䀝̿Z-82:8 ϩ>}{V9$t>~M6{^Ř_ ?  wZv7ܶjjpoAI2nfIӡ> J/zh%PZޒ^F}j9RF񭪂X4ȏ' U29PM!Pe!rsʁ}iC^ Dzї]}Msܛ=M+yމWB \43Ҵx˩~gưSu'0:|afVWGfކvOϊ B}w+,)^maI\?%%aa/,V@&b}7@̎$)] %ߛE8˭ETEn<:n9GpVV٘LxW]w;ɺCqH/g5S<dkS4d8M ,'rGfY,J3dZ4Jn#]=Uپ, MV?B7y|W)M$}1[t1A'ɦdeN`r%mTA:Q7 A1F‚U]2,䊇J+{*"П_ˢZA(29r`,UK kd& 4=$LђT6&NPHMoޘXhf~}7^ݢQ-ˠZ2Pfoƥ :ʹtl3Y̼i?W=+lšqhD]oۗ̄] ~2鵺 mʦu4ep!qS`g;ATu0GBX~ț`qpFؗwɊ7t:o78 &:xppڵpwm.cyr5KNq-RR hK 3"Wޒ#zWzUd|dE*B"L_HW _c r[[5#M"~ʩt N<^c)Vf[Gй3-yմl{b >K48n{%Q;ȿ:D!cҵ+YSgin@:=odf;:GH@Bh8qw'4B l~i+ .ER׈}}\k_wl!W]CKHdJ,`V&KIυ`9˻M=3?LIWϟܣ?kv#ʾ "p0bK? Fb/gC+&"sH@ \r'6)?b]&ƝQ, kmJO`k5GٷJ II"و,Jr,_4ETG#c*0PU?3'6,pPԦ-US">J">{Khcf0/:֠"o2bmZAE'=&gdj}EPP4?$ P+y VE*[b>M"%[pKmDΚ0?j'msV~˗A}ozOEѠ]&)`m:n5sT\F(>?vx<eL:k38N3a >;RϿ3ӎ!b9F QTb!f-0^"iŠZ.2_d}ɈA6JlEN< =L$tnr:+ض;&:=|M~ww/  T^'H\vx_zh7$483;}אNHpR(V؄D$벪$[՗qe)m )ד*tߖ #W$Քq^PnYjDubwZuNy:#T(4βoT$p{e`)?l;E`ލpUz57;mKbF^SfKYWA@s;OMkol7LdO~*_5OȠ'WKdH̵W("fkjrA9I#(HI7G,`El m7z,rRD hqvy}/GvK5#n?]{&PnSL\:1ҫki98Ue)\ЪqŅo8/јkT; f1` Ѝ)qg->5B(W]4*<۸}jF׾ֲ/#=h QRhocp<o9f)v))hK$!bQ6"v'G 1ǁ8Vmδz)L q-cP?xH>w T,tXU4 CS[ĕn8% ̴p_dh~`JxEp;DY~{AN=` sfMd Sm^)JbSg9Ԃ :ߔՆ97jRuX~٫b5'D>-}6j%<H8l{8) P۸=g бDˊ8 I$W. vY]^$QoKð`bϳCA)y+JeaZZ~%WDgP<*})<SƛeϷ޸2~$:3TF@_Å,e0^GpY#[sht2[Nļ+Y*1D|Q`Ȼ5~pA:zY`;ޭ(XSEZ'E {jtiBg![{< aخ{ FvG8cî8p]âYt` c°M Doeu9+W[@ӚOa-[Y'EGEȖ9.֡ @`mf"ijV 9:؍[Eݻ PFulGȞkpDASGO$&c>nn'hG}(4KOWs1!x fyI %<%ӹIrYI 9?+ k,":nF9țq "Tby3Dy&BR2@;PMޔ [Kh5 dmHF!ނN`wp9mw\  A{ayJIH-I w,ۓm7 p 'Q⵮ T ~>l7,zn.M=3)pS* .J/8,v|*̛f\uJ%() f.03jb}WNp]G CR Ql_7AAâzWّ?&>]kg]q1s;oiYBf 0xႀaXh2u u~Qh& ^nj|MI Q r!ڵ5sAzm{3O~JF$m%̌I\&1YmS d ޿PD%f#nA⣤ru-2#%j {Ǯռ }))DY-,IhY_i,leIXڎ*0ͺ@a>S{ӂmnn8.Njw ~5Q @ _X2/X!?Cm)D^D"vEzQpzuojηTy¸Lo |Ypߓg=@5|lu>rkiE0ϒ_Vm@kW#GJRL:4{Ð'.`UR [ 1  ;邓<@9`T OA>X'R^윻TIq|DZn Crq]pX¸;#C~^cI>FO$Qch Or!"Ep*aQ lU62 +*J%{]~dI֓YӆlFe`]sIɤ{}n>\DVNw|?{]w<l<^/4Cu _hVAFSs/?s'qwLhr4jCgIN7uxhB 5CX )\S-t'A'nk#͟uM̳0;hDKS!Dgg[(fSob(7T,Κv۩`dgna-m}gau8aA!N- p-e$3zՐ ?o%5%hM>p2+@ '*hGGw| =OF&!7at+b#¼zHJdS"UוD἟:len \>&1 Uٱ \CW}G-&)X|u}Y: *$S3^'vPu2e$ mwGv&bє+Ǘ8k"@oNgiuM C#MXSm+PN,bϨR[3]~B:r{K?͸-81BDt#IwIPXہwx h}ZM9<4(ڐu1 j͖d[Š丘ONwxҡl]YvI. cT<<h^yT 1`qBކYfR/{]h{*vvQ4FnT3#zǻT>x/犸 L0g՛Y3~0N[9ę4"iY|SBonm}r6ME:7VBOP^xcHr@05uyfd?f'EںB<uqu2G4PY ڬEg|I1XāT>_Oyt5p뽕yV1_cembi5(rI,YoN<Bew XgEeuߐېSښR 4#X8USfz9htaTE6s)#4jsMع`,R?rΫZmR+UJ̢Rl͋ =dFi('WiܹLrְxj01Q ;P"B2/y?T0;*C7Z9Άh'ՎKHls1i5?˂zk}j$ hzh,RvlMS'<1{1#^BG`+0ۃQ7a-6x`z;g.|D!b}}j 9,pD߸EuN0=K^ [ģXfXCM]1ޑEE$;y!t*.:|EPrs}woԴ738%Ȓs-9g. E*ci֍ys.mD`sa\l8M9>r տCJbdC<1s/>UeLAI-'[je'bH_ACf^ieX d.A} Ό@*QJ/q u 9n\E!Ы9`GJ1aၰ;"Xv}fn]٤6PJFab>HhrNy(Q%Eh}eOxƦI! =Pxa#=ZyЌKDO9|4)c{h|^/Ī'KsUW&Tjǖ#wP|IbEs/pFMO(GC0.g(uCyMO#LU!M)+yɬ :bM^1PK}8 FQd 3g~O6nt~i r:Vsp%"Dg)uAi *],IO"qV퍡~GӦNp# c]nj nZHr&.4=jWH;(]a0|z;;MDQ]p6pA[s|% JYHL0B\֖pg9sKh#t AoNzD -)Qw.E X^4k:Ow.珞"hG'DgY6bbb_.N Մ+i |t ,eNwN{)]0MOY`0Ňi'pK!%#,)0r֔?NMe2 s9~pŃ.sƈqā콃D>Y4FBz-Um5Gt|,YIdfNGt Нk!NƂ?ߥ3b}wq^St!sIe zJ4G~P3ius])aX]# $qLj-68| o|3=hSr27pXiަYXF)^UmpR<&>etVёIn;(m s6;vJa4R76j*kSg Y.YU,&Oytɍ'sn-ْbu=QN["TcvuM}נhD>0Pܮt[Wa  qѾ &Z,h%s_s k~P׌iT(2rnyӯ1)S2s\9VWU3Oc %ހ E͆wazBc)T}.kM~*yd'_1lkW̬S/}ƅ y1Y s¼TM ۃD rrv(25˒S>| 3W;N}dn_'{J{=A PJQCl|Qnͺcuh`u {K E[0I/O˝qMCKK; >jgJFsޯSǚ?Ӹ\6"ki{.LbP-Wj o|Nh_&{Ouxf4@H^XXK&؇׽7J ,b%:Ӂ %)_ @cfI?R )־Q(K|U&o#C0|Fa T ut g(iTs'52h1Chf3Nl4u3/eIե,0ri[ k8"w&2fr{ z|\f0ց">wveYД!l\o% [ዯp6;:wSֲ [Ě}:)tBо"wrߐQt]u} WgzL~. oڎ"jYWz'gz["]/HҖ~U7;a,:OGx9`cdtjC*7Nmk{,{|&/CM? .nO,d=,$\8[q[šLHeGк(YnjwƖ(yI)!e:UY:%|&<"&xuY]yN?*:Ij{]OUS`@6.X_ N0}< Vxb&9D^:t:k\~2QϮ'!+RieNёR"6+GSU7:6l ?[2в=pܼW[[E~qf56C"GH_&/!*ZBr1pcI0 0"zmt{_+IRmfz8$Gp%]u]3AdOd$VOz[K cݪ-9E??:|a-VuZBX_jO}rVm`vHܹ()RB|VPlڎt/tؿB:O`zs0q f%2}e«,Ζ^ g 9RA]v||+:;?c PW'ho&ekb-[RЙ,*%SeG(dp7hf! DSg#Ꮲ { u5?de,2>W%o^=8F ;Qi!bc>M핚#$ɰh̍h\b5Yc[ Bё`(dy\UޭF?]Ul*@EL\yY Je oX\tĶWv2vZƁr#2NHX$%]q/ S'T} t'4tz ~?X!Z2 mBzn:+TY2)ϻ:آ>LD|k Cy$P\₶'3#9;گԁF#N~?[U,95,& /ʌxImK oE^`-锫Wɣ0)fK"+^%@` ,#tWL* .NҴnlr}T~[3_ͨM}hؙR|*5ƃV~&zG1qrebqhEϒFmtnfJ[xAGVىP0uGm=Ԩue۔Qɟ.>vT*v[Xs1ң?-Ӓ A"w1vdf 0~%=դPOt6D.Nz}_n΋&Q.`#Ϥ`SsJnjos|fq{N%%kZ!`7wvSaŊ,ėUF[/ yBX΍/ ֹ-K=fr'M$KSn*d1MF(ҫ E1YYO|Y>ZDYΐHq<:S]m/U1z}FȦa+5bÓ'Vzwot M1H+'u4VŚd4,9tg_R3tV:l(KAtƢoji3S$P20*'7h0!*'=@5o0+ tqHM;.daqYBjJ5K%cQJOytҬ(.T߁!c&dgg80u%)A{k#_ޝ,'0 x u߰WkYgFjTZl2ju[_ qӛl/қa'Cnޞ4m-W_C[DZƸ켏WhE X} t(AB?& íT`` 4txPc*[>elxN^\P"Y*Kf=_`ou#(Y<!TF.\f^ߔ׊RܸO ܻyS@5~TXiX2 [<ЫTc0ۯ'Rqë3Օg8!mX ؍e˞Xaa續v d$ *oLľ3A[遳xbspx9IFl/hY4cV z~PX4?[@si%a0l^xsp9zmĴ,wx]qҗG0_B! 6e .똓$=t8P/}Cޔp. Q d5 άncvz[}Xk"w'#Dp }и#?hvIKc&WO v͐sB/Gū7AJ5VC&%9 xٝ73qճs( t660:6aNb#@\Rgr?m/b&eO4)79( n]eB R1]nd"a@G2=ZF\HP)JB2oXn/iXMfYlkATX3^??.zRG➢3.|9EDauGO]B(qcqRx:yPֲ't]\q#".bg(bRj/W$RI:'Sc "ST̓xBrÉ6MGygfSdMMfPD\0hײiL%ŗFsNq̫[UݏQhMX^ HcYnX~<'7Ԕ?pc=3E"mJy0g{&.G[ծ-01`[wWoSd:dmkPwB "ku}6'='KfXPV JW?*{b|~Gz1򛣈][rp,dJeR[[VDs۸WڤqXZGS+[ni`o 7pEJ~yXvH̾cɍƳ#vd rN@U^yJ.,ɩX%/GDJ38vj4=li".F91Gu9*}֭xچLbEJ=TR;hFqbȆHP uũ-m| U29emC NLMݩ LE_Lyp]RN@YsUʧ^ǪťNW?q" C:o4RlWi%<bxmP:(?T2leFU9 vtq9Tfs6)onKKTαJ's C̤({:AcdqqMڗ kO$]Lq@r]RU.~»^1վsEqi$P63q|L*?WoYb `3E"J ݗ3'N 8S}|Fgy9s҂X&  A>߀y Uf SiP-Л -mLzKw]ݦUݨ7¿Fr(>[Ofҿď`HZ c5hA9:4n IndjqrC_QKav>  UV777nR&K{)>Rپ'QKc|o{t|[e!sT5`1zb&A9!w=3e鹛HaE{&52`]/xt'I;['1gq{FRD;<S<[q4X8hViUJ0C)Ul0{Nj6_*襞l E0zN]4j/y&OՊqI%h4 w=>m[btuSĝru]N7b`ԈD%4ʄWV$ lF(;,oZ|ZYN#yt %dPQ$?mG?}2kXC&r7ke }pDMFc :9^]MD!7 4?+nƅ#Y  d -.M'b-Bj瓚A@ Fuw)@̛[N[u+lo=li>.{V[f@͟ibnG~Q%{jo\S E3nٔHj<(\w  EOh-౞j ;vGi>f)YSx&ON),x"Jl2cSFd==;!spEu g@qf&8CDP7懶(#f-8ᱶcR\x>G=lGM*."YMn| ٹ"V*^倬ق91}xHP5*y?[d\yeD}fm0?WnY5qѓc7!rTWЉՈNPϓ3Zl$ɤ9ڞFE`-?r-4}n=Z{-mg[k)SEgM9H|e$߳`g;{^e}Uw.@˙A*ǧ /Oz"%E 4UAOP?L:R aicZ*<ɘ[ppEӘyXw " {l z4?p;V08k+)"}oܲO)kU}}AuόECdA=f~*|-ʳ_ȱd* z"<ީݩd-E:?!JUczC'qrV$0.lh!j8$~igϽhnh;(q|ٹܸ7<)oY x5VkRfd@_-x3m#T1bÔ&ZB2DMPĭc!{]2#=k:ꎮɷ[z׭SIc 0# /(j{rV@a5HHdVe*eu%$t'3uĹnG׬ěë[:\3j l%ak} 9sh@X:iyEhg.6R͞#5a䡯͹_5Gu’Hcd264Z}Bu ՘aYh:E9}-`8 u$< _@PevN<ɣeC]~WfMy/K^́_yN5o-X-"`nbxG|4 @yͶb!%5\B~<Β n)@o e[ !wqcY{[DK$[Y>;f[&3ն3Q5G[2"d7caeMM8&1]X$ Q7(j -H Q7cv99>lYYrnuӳ`QI7Wտoۅl>4b fI[|{.s-.{pɒ&NIY餂_ ?·nM?Y!ZUIRӎZsķ#?7l.}ש{UެR8/gv  PJ(j&V,HOS~OD9Xg*TUlTL17I~v3g!dsnw/򷳛momKGu5p`Vd X fTc%>1N'Nɐ (X4c3c āHZ]h8bnA&9?%RgfxCתˎ_U+b^[9m[O^=zPU(0lL/vV^~{_]gnM%&2}!Z&;<׏m:+| 0@d;Ʋt  GlUԩ5m1j@ t};J ¢ay#?Hˀ u{XԽ=m? sRH1-YqҳsS&ǂL|L~2e $LDv:OA{S69dUeW&\kOid?߯+q G 0OgUHY"/|HkË{)^at 6 P]@oĝB|*lQǾ</<K虲V#Cn {5vàl~t]\!Pʬ ݨ w4eS*=А ]!+*X<|CnMHGU9oK9d'\<Ryh?{\24.`n<7ӊ#ZUKξCd4W-5xh @@ JLՄdKr3K.)Z5DmK,y 4ݘ^57hPu%t@~"}$kKǭr+58g-mAl`1<9[%?YWMd[@ʣrrWMϪB~rۊ"_naΐ  88uM<&L㼞*;+\L&t'̪$.#j=w_FWj4T3cS&BX=`6 ckVLB%VQ O3+Y Vwc 0@&Zj66P3w\(%kgZ#-MJ8T89n-+IIu$8zLqГ3x:FQqۨѷY=~*=1nmDG~c\2Z.aWMP6ʟ@io|Y[շlq%!g9Ly-&DYʃ۰[`g_%ZN5sNX:*_b_@!eUv>J<ļ+uͭ`tsg Vj҇в'R'Ma.+IMo] ¼+MF|" MT̫A+% bV?q>5t3h>$^F!K-˪Ƒۜɨ:qbh]f0@ I3[$B(L2\ptA\zbgTI|]MJt ?, 6g\C4ޤ\ݫj~ )?!X2́\_ߖz% Q.6}hefxR+SIIԙ˩T[e<>[pgG#Xj!;BWB!z:@DjShn mEn|դ/Cݟq0A֪DY;_7.E6IQ@&&9 g#h`sQ PoӇAWχSl/tʝ$gY%#f=f;J Φ&NI櫵Kb BP3" N1A#r`v[eV;Ɩoݚ}x9-s.j8byP2&IZ'db6"Ȑ]r +R_띷?xcك1G:[2 . tvᘟs[aڽ<$" {PT=E|%F~\J/XWD 9\41W: "([;f\&5B[R{s5h|vT IؒW 8Qlz٩>w Aro{S:S`3֢vdNr(!7n4\%;0A͖jl93IStʹø0n;d@4P6t/ʽ.yp)aA]wPAtGJ௱=G,E"')#_YVЕa-^6PD:j}+b:4 ~Mj0KB.)^(%rbuMqj (Wi@'>bx ~PX†HŶ =7L%tNhֆ+[;&nЮN*zӻj}?6t"HyҪev֏T~z+"P[=>_A9KP;i= ke'AU|4\0x]JieN7#`"ђ7 5_q,2A ׋vrhzJԀ;qLP.:@rċD.rRȤ&յw'FqSS&Om{Kpc-pDS||N1z۲ +d3G=Z{dݿVt)cnۀaAZǤ9UJd8juTGHɼ܀u 1rXh\*paB3O'F+BKSb-b!WT.EM:ߋF><}A5R} P$ s^?8KZ{/dwJG}6HDc z%韓K0O!RcuUUtDZ5o K `iUSJӑi)EqK+]yx֍GtQ)MI$we:m]UtO@qة-oO\Emi[ۼw,-d[7&wZE|?P+!=fz/Tb{S%)s()*z43;Z䂥a]u[$dpKd|X6?5@FbbL ݲ!G 9ͅE[ߺTp`>n3 ]Z?å$J> Xx0F"&Z*mNuw;AgR\ȜE%.|C83<. @z4ߦZ2MSѬ|$}ย97 gK(Zu|~ԴH퉴e, 1R.Vg_brs)ypyܾljγ-194 Cӣ*|5g SHe5Ov3Tmm\/`ARg uN%C+b41q c(%HWPa.D踔h_''!-!nGhȝuh.'Km ' .y `rx5yeyhgPWs(K[]7%G_XC!@`MNߵP;:OeT$- oe̕ݏ#mY|-p J&)(,ҡn|Q?C8%D$ʟUqHBNS,(-6bo :ã7zktU4^u4_tI` AB!VMRA@bh !'`d)xʅKY>pܯ<<%j 7KzL cE(4 uʑ*= ɜϋ MY*Ii3Vil8K+t벉)|_;ar񨜿₌BDSm+(*زii5J7<(`\ᅄ[./Gpr"r=,BQVO:gNo߶֕JGw=&0dCH݊K۰FRXp]+яgPl7$C 'j{^]τ]c'.Ъz5\.7B W*gjXhHx+tXQd+G\ExAo7 8H0V`jgqm7 ~x 1 ^W=[Q%pT*ꀗ2d|PmqJFe29@BԮR88m2rgKY-/&y($s \l*#ZHlmK.BA8i̴wY]!n~򍎓݉aE^}*Nt ??G=^vɕWkcll96@_YstM0 #Y$oNX@:Vw"?"=v8$$ % Ŋ/zz`("!@PqFr;cZE=W\֏bO n eKY@nrih7flI}XV{qC(DdD4oj >5GR[6 oS@c6YO8v1T=CzO\u%X+Q /VB-L'nd~!x`&ՃU-Bc͏vnQ1:F^RQ,VÔ0bg.ivv2O"kbfD ]\j@pÁ Q]\\h`9O$Xv*K4; ИjLO#MGVM|8BB9FPQ"w #E:^_ESCjL@ͬÃM4էjMYkѱ!P& ;eW}ukz?(lL$猿ޢ(FW&t>PE*2N1#4 b ybG:![FC]vncԯie,Rm|1mL ijWK "o5I'vxRfWЌE?JIezS I@>E/Q .J^%(_ypK8㄂t|)~Z;+ Yh\7t": _&Zw9Ce~=CTR *v 7+:?e}y`[ $OwF(h~P'TT7\/B0K}\ɗ Zo%"CO}6\t=P٭cQSOA8;hsί CHHmJ`t4<3I+ 2 8\;ӃɅ>U:'"uJkYX_N_Tvܟ9(Cg-, U~ie<`MKcZ3b5X? 7QWӛIM b s|1 cxGݵ~J` ^Xb^yWz`|@Xp6WuqLaUF7A^إ26]=А;yj,-T"C9Go~k)9߉nw샷0׌82X="BlEER+kF0B5~u ;GJ8GK@"`\:ۼ&./T /.GmWh!o)&ZvɘB6kN ΅FۗIbT?kx9se.Mi⛨nvM[6ZsAl]Cp>}Am+5Ȫp{%Gߓv!qvL0P M=KtHP2<bJr6T4=,XO=.4WrBvYfAq6U$>7ba(iAۅ$EІ!c;4cU-P[nljk,hX =)$>)fu'VQ5]l(eFZfs `'q7>%IG;BхW~q)!*'rPbX=+YTH MSI'>jA ibj^ۂIN)i;w BgFp|?TXkfG^.㖗P֣A+|fZ\Jw<#O -u;t*"nk%!yY'>JKݕX1*P`p-Ic(-n7O%|\juLwBcSgh̓ڔ $ߏT^€A3^mĊ@,YBMo6K}h(CWMJ7Ay'f\"ȶgc6"脟*윷zmKmi$`1n#ҭ`Qiِ~nwdT#́1QA L҄ m1t\4Q|wj!aZτH$LvbM$2|B`|O܃| &OJz9nME>dUy킩Zx(`e)&JJƒibP?`3^Z4/w.yL21IC9/9?Ur'θq|.{\iƿ8.ͷ+7fYG * F18x*Dz*at)'1X iba u5DжxF}JbRRd袈تI]Y(_W$"m@9ꯝH2p9g{ʚQ u*+HSvYq$g` $i; v⬆d#_\/VL p*x 3dERB^BO$yI:jD\*˻=N#Jx)?stz]U*cF| v[5r^H`At|q`[8*vjp,5 Eq(NTy&7e+f98W[%2OcG/tȊLlBtq!\`rz,C҆tf_q06 c'__r f߳eEe6)=GxbKKvV ƺ"Ut ͗2{^2agnkK28YפTr![SNvgl*:k#{ɚcC)ԫ4vm3&#%E}~k͙'vuᴗ OGEZTnuƝ;cp'hPo9r[;N:}Q2kX:KAPդKgTZys1Dό:W3}*KYyJB;)J2|~-uJ̠ `rm>Mo[ cΩqDչv RR0HH^syR.וBX6 ȏ&[tbC;ho܅?:"d}s*}ME5ܬͪd)TLqhnYi%`BY]薎l 0K>!)s'^iXQ<:~:3J6EM+\>qQP/()!6OKTd^MnD=nZt+E60BHEI(2Ό-w-{8 yo!v /(ĢnVNLWyBb_lu"(}YP!xEQo%6z p3=pv|,Kӑ47{l]1˲&"U}ژ(+gA hmQ>1u2Wʘ^V_5t=iDlBӝN]4)6aB7-juɽ +,n-'h4 5k5zL+0rAA/WQ1{i4՜^񖻉" I6/@ܰ*tk K> LO`8KšOS>et.>')0uj6YjBGFf60~Ƃ|I[} l"ք|z4I%UV tuar#aJ^PmB:8=իԃs|g:cHJPPNYiKPI @޼lW h ؉s[EWa'Q-3VHYwX<%~ٗ-Hlo# &$wj{y7Zܜ4<@wfNBz^퉨j[\$%jqe [ Lj{P}%AHC&@@C[J'Ua¸0g/-A# DZէ|ԣ$o]mݵMf بVӯWJo"DkK~OB{79lc}ۏeUm}ܡfQ0]+p. M ИO52$\=  [6'VFكܶK6.ozxj!$#׎W} =he&es8a4>[rrk4r~> YeXOMT`N$OcP}gf|־%"ʘXB#W[SSi4NQ+ښC04`\вZ'OFp*c,/LCѪ6*|k B2Rn@d `U?~/QV՞[tf0#KzL}h$9 [H!'[bž,K+H\2Lcښ"gB\^F}/{F%0 SKsy"#tؿ$%E|4t}8WBXC`z`wJo.OF覝[ANY{ʩ0g~kS8o,4;DQ`b;z "? oeF;~!{3cV/),zTclT؄4MQz _m)\@Z0&Թ5"p_-2_&Fڲg1D쯱% |c4_j  ttrG ^' ܏=,OTZdl0ECy' =Az))ή4^_JNɝvg=GRe?_FP܄_":> CQ5Pu.XRAޯ7g KY ɻPEeFkL%׺G͗Dϋ_Ȕ \)TQ̽^D cX3yb6,(/ȴש#%ˡi~ʑO0}oKZq P(gjg N2\YXUYAfI/%,ɗ=U":zba"h*Ru4ee8|Z*%lN`:tک*k?@M4Rm`qeO#k-JDkb#E'?SO$ZZJ:u`[]?5.nfE RyցFBD_yUwv,m!S.8bGľDy8:*<6sٷ͝&ŭ|+8Zm| mIn 9fa4vݑ#=gy"x6DA;Rx*TnLjw)^V>A9\\k-ml(kZ<4W S  š)x2 3mnקe:B_H|QSH$柣 GC yp{f\IX5lAjNjdYlQrjC&@s,` n9N3heVmovNmrsus}%ɩ<4)#9z=~' ..2ݷ3ln. 1Gߔsqh3N̒56*OuytuX~%1-yضrJMhǑq8cgt6ZM4{RrscGPw 5h wj+ݪ>dۑf_ɜx@rxXO p.T.!h=!T6v{xP^dT;擽2F!KjwuNmc>>J/ Ov8Wp&CdkpD4"+=YoTWO%1?-3 5p|IMåj~{.Q= N)IVWF[np!'ݣ]£sMR=.;7+qk4ܳlYs̵"Loޜ{7mJ%S ؃%ї5zjZ9״g 貧k=PT'E35(*OVpCfj2`5o,.kq:]x0N=@vR8ėRwe} Jf]'瑁okPq6Z/Bq+4DҼ{ږ۰mĖEai."θ=w9A*%V_նԺ  sύ/QA 8juӹG+gmX='S$n㕮nq̖ڹ._yLrӘRza Yz?EjiRއ-S?ա-Ϯ =cpʓId%hg,v1=-g%e][gF$ Η0֎|{^/~>,t;M,(g!5$o<{i?R<&k߇ɕ<0bH~Zrlc.莡tNp!᱈#t E_ evF@*wi:揹.>CUߒBևrMlNݫXru̖NĦS;2/;^ 2WpXx_9^ _ѹ'ː,U9?U~Zu7gcWi_[󌕅kK7A~οW+~(VuZjXl(Lpn I l-U:H,Yk {>8 Ak)ywn~XEzpҙ@p~T֬F0R45 \JQnfPq~cYFb}J)ֿ|hd~DN! ʵTMXζMx"<\J {0~w?vi̕CeH3.'l!##HAbRp :T{Q9P/5)pHo}y:(SI%>JLlףxևٺK[WæjaSO.+Y R'A?u%Cm=/ -\ű ǒ LHD"R4&Yk6녝uKDn+{Aj̡ ВL@B!̠s ikr7ƃc&Qϕ2eWyWKdHEU<ofyUm6TY&s*bת!#5bH$hR/W5Bq` ӽmoI4k{SJf"sC'AnBtfv8ͣ$+CG*Re^ $ǥlϿ Y?q ]C)N Q߿ (2ׂ5.Wa47jQ;HaQF>z׿Äk-T/ yXʡ5*mhyA -ˎ! pb,h.F 芟K`$Oڮ-X@3R!$ز8,iHqAQ}ʀ ҄2X X*qlUz7GY94LdbRFxq>qL6Zv_wY=]3z7j._=Qr5QuUSor^wXm[5p랐nlS2Ob̏LEZ8CHYX|%.-Py&ۼ']GWr[L.<fpƵev9LA=(g.*{JEwel{KLdž][I'54&M  s3VZp}d6}2DR(JZghP _o 5<2Y w xf8( {HNvqΎU7pHs G fƺƀ"GAۅtYҰD;YvFs;e<1nFG>][Z54rE*'M96K$!1h"R5L1f '{"pCK̎0`.3`KFJyؓA0]gކPTe}qSOfQ5cێ[SeEp+C8鶜 <f ;~&pD[+neb'Q;up_Zg宕oT"б7_%yn\r8 {NvaA)#X̔}*^"48n~2\ nԓ4:OXKoeo"M 4RIʦj*Ci.)/X[ _#\enJ?$opW!s/WŮ *9BM ]">kXNK4k{~ڷ܀AU^46J:)k wϖ%X5M7{1x,LFXGn ?G/%l`8sf-!6i?ND_ ]rJ'ӵqб'֓T6c} !C*X AήBkk,E`P(KCf^Gz3JڬtplW^)Ѷ $;a} 7lH>&>]r4v:̱udx4)9u.~g$ <6RkM?IWW&i[%ntӂFLzO \+/`a"AO޽WU&w֨`䥬3Ip/鄯7\+7iݖ cuq[A}/·=X[DNOmp/yPy"] T$}4&w"_/LJT~C&ӏy<fn?զ޽_]A9"QK^hqUYݍI,g8=_3AT@O=LMd3bU=GP'NV~lNc]C7WEC/TZ;J1;7vPYM9j8Xfro- HiE#()a.g(`< @IG>+8[2;̿jJ>"p67OXikDOo%+,&ix`-K<2Zaz4GPO*bdVC^="NӣmBȌVSxO  Ɩw'`*cԜ 9QhGߜt76.,+d~d)Rɷz!=29+PVF/R#6VI~$QPr|C|lI 5#kxܒz痚:\3͐GsBfYJxDҏ̣ITO\d2sf%1<}A.0}q1xTAtlLWqVd YbOխOMt[d IhN.|V 䔐W7`_}HYQONAbTx/c,y6[6_W'W<^2gq64A-. jV RTȅpT']$ЁND[~9Sha货M8#2Hszks%`^+ekpy(e,qFODU㰪vc #)/@Jotߕ'χ0M#͎(tꂰ=PObǔ`&5C(aeZ ;)M8eFwaku\ 0XA;_bL6RCұ'$V950 5:u^r<-XެwU* pn,iҞg׹4޻"!6w2$8K @sW;o.DgPk>fx18rEGkKd|ZV([&ťұ4M+AbDz53n9cMdshAAC/ K}TbY_|ऒdDvv]3_`* [\TB( ]]xЀQ)eZuOJ U3%hX0vz fR.$7L!c {uY.PsrB O~ i(pB /<]и= ݬu52 0e*RP0z8U:g.hٽ 0%wh7[;"W8 ]>SdL%5NI^n?"~MenG9VÇ2فY 3rVrX9c.׹+%U 0P˯/siˏjzDP2{`V"4prtiJ*Q4a]zkXᦅ "J0ںM}wkﻆEFէoNp>%zlMR"sF@P "xrմY2 $% ðe5ҘYa$i,U3fTM<ڋj`ck;Zm1hFAF[O<4Tx~8LftRqߐpXh.l£S.P3AL/fórdN$Kg, 0b[\kJE~!}cϠ 6Lۥre~Fβ(`5 n6_=DXcW9e@#x9H+V7q垴xLs k.K] 6Ww^kZ^2KQ4~;Qۆ-jNCQurQ箹}υʜ{ʺZG2-ZY2<͒E -uP[MYmocBgjx&M? :D$/mb5#*m a~%~oTa&@}d?wdsǂ.Vq]Kr2W8{ P ^7زKLFhMjP+kGku1xpayxf6Vjc4xq;Xm0z3qՅy)N}jCWo1Q%Gq\p *+M?|`v@~ lYE`)Mt1*`nu,ߖI\s {Ty#3VSVGW!C5u?8N;% N!7&q/f?l`ڰ,q{: [' EJ.Fin*jrƄ'YI>fQD2j#_F_g&}:4r 3g0!t"It᥻w[NsC:?\t+(d:< SfqO\#kPU0ϚǶ/a`TS`݊ %!Ň.*%2^ Dr _ʭ5WL`Z]4-YFs\@w)2L C3K>n۬nP+ioQXA`)z`c(H.|tZبU tlF 7l14>Aڑɟ&6oXdОG:7f+;GР e 9g* lq:.bRH|16|=u9""g[sr?i }jf4~qQר_8EF7=8/HM|'=dow5O|TxwѬ1MLذL/W; W*< j4q KsVWYdT3"cRhze.vYeHc' [FwELEj\rda1}l˕D=] `&3 \q-5uS\l +E `u.tQ}6~9H~أvtX .$ae]#f lUh:37D` --%dB)n[M# %7\>Q!k=ޟAIN7pȌpt4y"B#"}(ZT(;pZ@ ^ZN=fľ/ $lڮ>\g%7BrHRpbHmq_pcD{?gP "״G0ܚ+atḳ]9Gth\W0L.VѽSai~ڳ>(\?UĔ@k"lw[s;8RKS s\_f"~DU y:x|rE͊c9f]_y;pJEsځݥwp1fuC'{m[F6 ~{eBu ,8Ixr/r8V}\ٖbzWvAR<]X톳2X*,>Z)%(=#;̂l.rptfևUfp4L[a;ճA)[Y vr-86!'j8[Ù#}5w\M7^g$@/rq F g  ~#խGi$|r7!60#:X<Ɯv:"nAfe+8Itgru(Qi޴7(g@˟n F2PsH{oùF䞐jiYq@c"Q *}U1WrWMre8 ?hba3b=*=~׀W7O3f_RnAAGy 8k43؇`'7uP'++SKDxr_V[μ-=o(J0m;*H]UQ5AQTm)՝uwW#wd 6HQ /w49>@l{gY$|m=%EQBq:5:ؙYǡ^r:4 QEtP+e\&1 £*GJZxx:3JW YkR!u:+r۞cڇ ZUX{HԶyYGۑ&57$e06f$1[5[n/ J,*<~vr/@2Ph޶h?ҳn,R-D(/H L b~Ő oD,p^v^84=x)1V 35ޓ\},b+KFQ݉@m=ciS밨]W~q>Gxm7WTQewvA;=;)a#])$2Ӑ>>h.;rܿX{]MZnVQrzg;sS}˝,s9o+'D9٢A)p\i+wf^g+Dusm[Q2w9 'X9~hr M Uj =?l6Oal#^H#<)4Я:Hol[OnMyIxޝ/NؙlSNA[ 5Z9_?0ḡr1^nd 4]~mE4uf!ppB+}^"JJdaL"ެy`Co];HhJrXQ=n͓4afͽZےbeZgkN[2 |s.'UKpa"v!ϰIxxw}"B" g,KEf'#?hQIAXcIw1pB^`򃢐:Ƅ Z*ל? -ӸsmME'Ӷrː v>i fܰ &`پ\}roPG}5yͰ7<ŔO}V7M\ {V5 gn.TLOd0x~*:W#Xp@ s=qұ|$,IMIBFðZۀ#HK 94E7Ae\zρ Յ'ig˲,X?JjM:{F_ԏZ^4gͳޖ/^Ck"Y9Iδ!ad=$5ףR2p@`0k5#__X`F~ Ԏ` kdeҋwep782i~./gY,?\>yij9(c?l܏!)5 *C6C Ϩ3'ڕ 8azAc8;{Ht+\sVF z F>cKӄ@H₰|9#7miiPJ. kHCyD 3[%]cE06nnG}<+-G]Ġ3L xBfzTSzYjCQ$r_+mIԃF5{>7 L8|+lajI ]lDb!wY4&\^)37BuJZ5eցs꜅A٭V1`@wt Q06NtT_O%rnwvQJYm~7M.UP3>$HNK?~Un6$q^gg$RL=&Ir uYSDi2赼3Dݟ-FOH[tye8;<3M~99kT+ 7ZM} (dU.c_X*Dzt\m}Q F+oSz6]`׳/C[4AL(d«C~#!~;S ~GrE`>ѭ(nEzDIMʨ KU*#}q͚Y$/ԯN1QPHbnk4Nd0e #c$4gv!O6cLC>$\Aݕ4NLs)I" !j/g/N{ nG`R`V@ciM :}Ȗ"ˬw0JYz}jdKŁ@@'̳pR"6?AYs֐5 ;D"2eNCYވ6TZ\%t .:\UD8C2c6NV6&JX6Ncl{ Q)> %TyAPW8<(inF%6ET hX ;+&݅$?yA4_MTc0,_l}dqHN,N!GS7FpZH_ *EcE)js}~xeIUrF"Dbڠ()\+׻o\b9xDhg}ܥe$w$4bbO;*ţ~RNs{8@X;gn1£G=o#uIKR ujq  -*oTD܏="+H,mtY=@2VxPlHn:vjsrY6VuBs a2iɊq^=F˖W>S4qG\'?)xSu`u; h}9@9A^WeY`|4==HL=wAwe\Z+G ,"^ռuWc[8n^=!Pq}p a\U<آYMg^Ç[}Aڐ' Dtssmk)#GUt,?Kޗ{9a[x{K$\8IgSg]Pvtaϛ+^98-ZA˫rJ@3@ګ!Y?A~ZǕ|,I 1gCH륊YDեm–~o_9@=&{ȁ'Ϭ@5$>zTGF`%ryX*7G: C+u_\;VK Ėw'Nr\Fطr= =9b2D'+rpy"C3O¸d(Ơs欥9JuVGbݦ~D_ tF|[/&#Dn]c{fݨe̴fסp\cABN8e =7'& j#  l<8JN'=STBl+znKcC(Q/Zh|N$9= (hE)L,oqD/Dv\ruw|T( <:ɷ% 90_zv+٠JB,j<1ZmO J_g#4gpvy .-]YBh~4+NM ƶfsDx[ŶĽ8t*ˏt.+KƣhO34Dup^hfYKN uYfeoƈ܌q ?I\NfNgɲhrSlezo9ac#ڗ8ɼ^?{$XnuȂjT|yL*֨>+4V4G ˗/8̉,) IȇmPkU<[.$`ˋu\jXDʇhH+EU`h!;al%lA|<2IGd ROĬ8lo4^~z_`t[͛q9i,#ȋ, B{SMޟ@._Q )ݟ1HMnQ.(WpYt'>We ޶Ė~,P5$猌EWwWNqjZ.H7&+@uBP9Gy ]%`/<,R"}`<܎ցU%(_$ɼ^' 8"$mT bk|M;{MCEw Yˤ+zlNPC[$_MH]rиYs/ R7M@/!xA{>sc',+g+/&f8ڦr魩FSԮȰ+M ԁb:\Q#JM7RiT!24$F/N>2¦=Hs.uO+_,|q {<⮠^nO )8R vdc]cGF`_R{ᤢΚzc7є~X&i]::`Uj;+t tJM ='??b 팮^^&F`v?l]mӯv9Iӯ0[J<ؗԼMz&ur{2Sv)_n{qp">*,A'>4r^L>3(KG~W5l=݃ Z"KZN'F4FI˫Uk&AėQ b]ɕj|!2ֲo];)n LR܍KqeAwye:av=`  [f=2JS5(Щ|ZUNs5މouSU;H—i^kƵ抌WE`%BLr[(~4ar,poG,MK8Hɠ3ahqteN~**~y +KįTK c ?8<y[+jRU+A ٤ऱ(0rEca%9;ݾOtr5` uD qICX'(ls:S[8&Zl|!]$HK(6g÷<,vaʇ"G:Ҳ,ԴVCq_aMLK|NLuvzgl/_PrRK;ߵ חb}\0}uGq(Ymj#D@;Ӧ"2- H$.UBke%@IW{䩦D}'+dӚA,8Vr " wk*OzoH0Z3Z*KKV} c+&z"MH75!(i[ib_F؏EJ ? |{K,@DF˕R6|8o+R>m)k( i'or([SA%A"s,h}cr-қx #s@*Hn(dxlg٩I>meNѡ}æ H!YS"ä=s|ͤ Icyw?v3΃#Cu7t[^8k~n7LID Z]˜I"94Ç!Ta$IDVp|($5's YnVHGOd,C<,wuy᧼貅XKGtoc%q: u`DqRvL6xP:JTk&p˥3I!G-rEF[y;\T;~AMw.@_%CgJFz=HMKyKgvg c{Hl]ngC%ұ9#ir +m#5/XC|,=]?U KfXrJ'B>2od:U7s8n`Tx0LbuW2\=*a2ROWۆ`6E3~):aCLu'NQ$mGXzscF$OVv\ۧL4e$A"'p&x[J+EcVSƖ#(P#R!!z9o ͸\Dh4;&wJq`D`Vw}z85AދPH(<g 87CViĞpq:^שkܾӻ>HGMvb s insagHKJIΔW-e9ZưiOM=A"AdjG~Z`t1 Q!:>b]bh(,j8D_3WkՕi*D-R#PDF*{II_ 5 O/Y+/4׹8,95ӦTAsLعueBl!*56"PiĽR *S¤{g:z8E?~|vcGZu'٤013m.g=b[C;5Ԫ"H1_Y&K.ݞ\.(rmaaV<jr mX_g+K3zf{n1BbV'Lq!="Ӿr^8&T:D;DOrT2$Od C|^1[N_ɮVו_@Y)6Ϋ*[GY,JO2_&8@hF/R!G~>lWz)C /p>qec"~ 0^4Օ%%uHf*$4}Ҙ7h,!^\Z$U&6¯n FoU\0 ʥ"7 `՝݅ID^N.B cdp+8B[%폫`*\f4KKB%)RIEm'j@a ӍrPHGf%݄#%oIĝ73@Wz7^~_437AGpPz}=Ʈ@BUqIq]0t8 PM!dk}ɄzkGozaH65 k۶w[ \t\0Eeg U/E0"6h ;/F|KŮoo^bٰW-$#7Y]2VwRME]N(U$Ӫ2ZDuC 뚧vQ{ UY H6sjS Vr Yx<3XkAֻgo+Y?s3J1@UgϠ0m˼[d6ɋh$2.9X܎) hY}ۣ: s[+B>/,j[u2CPCE02-E.*wEP(zq%ܲ`DMonB+.,au> Ww0 gjZV'i(e0޼5fGw@>Rvbʷv Fw^D6гH5cX&i>8Eisegx)H3tp\jE?TdIɌ/=D׉+"Zv PiN-+(N!!|H/-MR+1Es75GpgsT]h/HIB@,k//F{bLp6\SV?:R) o"wՙc \ghu,u9?i7\\zK30Y& NtyBwx:`X5P= iϣ%V'>MEkhMC(-HBnPiqJvө{U{ lԶ%V_o=$C_C( -ptx*HH K*O(;Cеgo8_O{,xYN|>e=M\KQf Ѡ%P$jTfFc΂ A '9䩴EAfMaSVo!;ݔF?XYrz]o2UU$PwT9/h@m˻ళzHB0}oZ0ydևϒ#"uX*`}cD9J@\^P}61=]΁V)i!Qd38hՌOE*v7|쬷NjG->cCO.$.u-Uz7JIR*~X "҅ngwb8ɃAt*`5N 65ەNlu=լb&28Ж]^lfǖp ݾ4;?dḣO;{Fat|ݡ5jɐgp:>g:D j @*V~G8Ͷs QJ;jL)EϬɨ w!J窎H"F:YvVvQ<)(J ?o*fGEɔ%y.GVA#tCLE@ZQt$zS>xgxwPh8Vȵu\h TgIg;u:}WjL7 *0$RCNJ%1B18b'QO Cmg:%gOׯaGfRFwEc%}~ťk@ - $O.^\_h_Gqס=O[HasL'na Ǟ,-XpA~5٦hסO7ȯRSUr*69M7|Rȟ:= V2In[d fl`ZїRgÊ#%ȟF1tj弝2˵7nZy55Ee "oB mN{1 Iw*NMYGL~]n8Tvw1LNnBLTEZhV<* )_ py6@})VJ'`#sB޶O@UEh'ȭ3996ꔗZAop3n̯Qk^IN¨/gܻWcJ/`,i{2rISc `o7&}XRLũ)CþZM@$M1r Eq@`댙CΆ[P~ ZLMmSnx#t:PE0p`} ch`*.{ =*^B L?^\EiQ$ fODPh &E4򭑶g3|-(lP X~f@[:.[!]F9#eK%!`"Br:wM͘OZ`p(I_ !9H`e@ۃ.sA/бTcAB^ғ;cgc#W@HݽWyf:v6QD"J*=8Ҩk=1LکXw!Ȟoʅ.~1Y9ST Gbw"%5N.[cd+Eo*:nŒ^iNj)y;JO L?5loŬի&AG_O24FU[fXPC324@Q FsTiWt;i71)LSK鸲?;u6ȫh#/ dU]2Z 5q^"b!FY}\ :ZkNP6!pᗅ_:Bв(9otX#͈桭 נРV2[#z';anS?ПS)I\]HOϗdpl,qN _4|g>ks;jshK֪{-`řf~\S}1U#;׊M}[mh3i_Zp0ÊPi\h]FԼoi]yIt=d8Tk[! hM$Nԏ&'d|t2a츹e M0B pV#4A-4栒8ҵ<4e4&]3eЗ>[ZC$U&bȖA(Ȍ3 z`E_#pTVK>:VYCd CtRH0헪Oo"tt ђ۠jtVFm.ɷ')1RC%8 ceKe-lcz_4rɍ<P6ܡB9)Xl^B ?76ult7s-(Ccv/(l"A'Ld8?C7D{Y(c,_Vm5x.ǟL乀d[XD_n_%#C6L-  h2h.fF''`f}, si eSDu${d>RP afbl|y?|oW_LlMK--ב)CJ$<.S!ꗗgȻPNuC WR_pLeHU_/VC0:Ge3 C9oDu:}?2;Lцxk6s?\[8#T;ec7@xiiZeUf#vȸOl*ijxM&|X l- @A?yVɜT-(:x M0MYd& =3XS\}ƿ\&9gknHEAs:7~<Xm``q5O=Yz̙|:;t櫚2&z ]}v׉<B)Բvec)%i*VSVО,^]8ex Y.c 5:tBKL(m_Z2Zd6C$}0MJG~yL*/&2^|NA L@3g_<3m_=h@aA|OzO)"2XNoeÓ YcB՗"Zfma>[$ȐފKջ%~+D[6gB1< "6Ak+sNk-{$s52aHfxܚ3dTpS-tR^bL?BQ( 6at;:=!R]s'$b[uf]N*NJнPn@odSg D$%)Q bLJ*FJ8dGLiNS:v坁*+)@wQ#^49Kot\0BvGZˈr.b0m VXP4J(OԳn5Q?^’d"$3f#efl9{L Eo p=sX(l\!rw`۷&' fT ’["c _,Λn=sUi<+~;@mc[tHCLT q>Gkȕ@֛ϚT$R]+apG^QQ1;(&᧏p_qXy]+,4[bBK1GQIpHnX/ ݑϕlU 9.曰ly/ˊŜ7ŕ)ŧ`ߝ9+\4ȴO5RQE2͋Qowg/\c0ȴ*+AXbDqYjX|Nq<. y_&oy6Ka\u/ܵۤ"҈ p1v&ȿ~ĘF às󔄉0zHY^|B'W~zU L5Lwr0Wm^:n ubzV ؠE 0 Ƽ=f "{yJ?/s^=<(K}Jn!Tw%G|'»PvBsf}:oBIv KMF`w:\t_\h zVE/!XH}0Bu@.x|naPnlo('aO[Z%d0^AIfCG kf_;b F*(~NM#9NcnEoi=]Rhw5|s),OX=.bXǗ0c[c[< WmSy!uӌ_5?;ٻɶ4 bc5lwQ|ޛÏYXH`]lhYf}Li*vXw"6Kue% K|r?gcA6[ȇ[JAmWլ?{sPMwoƜ;–2NC`XPd/iګv@OyI.7yCqcᐃ؃K8* l0Vzޔ (~&8*w@K6gEMj < -Mѕ&Tu|`gHXC^k*:49OO(h?xpCw~-ө!'}4v&yl3]m/Qr„Z8=S-oYVڰ˅ ~Ood usBr34qg'gn*D.oQEuK@{pI4^/~n&#nx gmal5/սN%Zq0,bWI67*vyŒ>X-E2q7}?O:o}k\ǎKGBRQ_˹ކ 0bHt#0ښs4ssIkURwQ zOtN mHN4 *P|B&4MR؁~^ mXdw $_WDI2D*Xg{}9 J7(ۨ52hѿ񅙄'tSLaLvq9n\s9ZHzbg{@5BFC}+da5YQ毪_@GJWFNÐ?ҕuȺ?LNgxĈon5*7iSxmuj_Ui~?%*^1 kbJ6NZx/`_Xaԇ{:.7XS{ю="($n7* pbA}{R??m]DžA m;ICx]%k1 Elt<]V 4z|,J42*LL] #V vk\ *Ɛ"4kBZ-OLx~Wr{R~2Z|O_PrvNui$Wi|듵 \_r=xBOOri#} mb֩k Lٵ0E_^l^e0gE $}&`Q+.NQ]IVɌ`E~ˮm8f)6R aj{W:8RHJ|_`$|0)(ᦽ)j+9eau3sJ137Y&@Af›0eaЂ۶^BPkcӶْ̯L3vJ(֫27uWDLsIDk eIȹ!ðWح2ow/؟gf3yIId8RV/PfI}$Ӳ_rM|;ɻ`^<9:tnbBRE/^% \̝bzZk8MAH|' &) B( c*.I3q6wN6++eaNVac,˽B_wڬXuiӱ} zFƚpk =&LI9a[9O~uzs5 9 ~+',1s*m<+P )چ.u]C/c6 Z3&[!@Lvj~>Ut-$/~EF5ۺ7X*$$M ; q~>Pܽ1E e033Һ<ׯ;bB)*iP>0QdYJ8*p4tӲ +[՜F@MlZD `gulZF[XG kN[r(dž| "tS1ظx &T̀o3^2o T^vI AY > n{үtPַ&q6EzGCs]ZB$ã ZpaߺlЭlVԋ^V+DS0b5_qT"zƃ}JTwGLڭ[Ű.S0dM7s3NFMۢp YNl4f}&J ґWKZ7_C,-8i->bT߳P? y J.678'XP,!d>M58)zA(xzМLHלf܁BE5u8-*k ;AUB?26zmӽ5%Q1|L{Wz-ˡa ˚<Jz#hmhR+ Fْ{}諎{3^r< a?e ^x 'k{UյIX"l1*vʘj)ʙ侗VHQJh8Jc#"nCБ8\sb' 9i׌f:3{a:H09-*rB)֙mضS2yExpSUc2~'R!eҿA,2zOOCұ(g` OGY 6W>7RI'i< C.t ѽë^g8G':]8iAMy/m +⍇2 a)E']g˹&'П V` |4t5[DġA{XӚ/'Ћ{yWؑg;ʈRؼ#r:H>uN͍*#ÚW&9{ua ZUs+L[_p,+g!dH"EWS(f!Hz{7<YjFIXǻAU缯dbX,gga&ze gl),oJ$0w94H#I'صx.nܰH,:%KB+ڻ,.r"#{jTArN0:0/Qȧ4Q9i=6JoeL.K6ˆ d?&wElCToF=rL'|TDƁgf g{-U@ "- ?&3R}Ŗ/{#Q4#֤3;F=x9[ͬ61Ї=Z;MVgPoPJzQ Vr͢Jj#EFt뼑UC3Xth5En9a&q&##4VBjSmknN.` L; >:4Ӻ*I(˯\!4Yz~TBÕI&V/7E + NkAFaptl \" .`],\!h/PвK!Ls 2[ ̲!`fIC00h hϱbB(bM#-%*/LRle2PSDqN*-r%B *_VԄSt5Ȑ$JDT &Y]!ZN7`Bc.'z]~FQ0Mh&sxZwysLLkJ,gVTd<$%t~xn4:vc Pz3O8Z1̑0/.mgBB2V2hRX<0p6}n]*笎Xϓҁ#|g-YDX7Xm>mt2Ǘְ:v~1^?O *0hg}xVAut6˟ A`{l½:r}B[P_GjºkIVfO":(LIFwvޱ }sf8KaAD* 6t[ʎ!'"uS($Ӗ޼.\dn>.j=XC{jmc8Ͼф0 +5B0nxQ0>(7٭kgch0n- ʗoAEt܂3&E(/!v[8xyt-W1Qq^J>a)νi5";.7 't{qB)fm_[Lv 7c"p}/S3~+7*t%%Yf%a3 Dս|O2~6 LW\pZ(O\5b=QnhSW,ȡnV(9C  \pMm0JG\y*\[0v0DSRׯYƻKQ}jE q]C(acKհVwt wAUi5S؛E-OYk~ϩ5JCaea0ŇQW1Diu,V_͡scS 12es{?Ob4_,4謥?&X%:m>ID@Ҕ5u@d"PY4 Pcn N0JBrvԱ%>`Y:(GkEJlV͒Hjy(5K\\w3b͏.X,yH4R(RQ>8L%2v餗%z e\f.Lg啪O, ҷȶ%cSpA8IT=jc^C/OS;bE.aokhe'ˆ叐P3܄$Y/L4ׅ,׀TAY{u4@GBKQLٍ&*+4bx&e`L>2Ԉew$îAX.!؃E }8 WIr.^ 59(&;vX}S%_- KdSGQ3baZ="uJ{:#׫OnEwoE597 s:IMbFa(p w@n(dwhֻ kҌ;+ȟS ] )*i&4ؙ,w&ujX-vbqp,?Ž&b*Kd.nA$ RJ@w-Or͡W87I~%7/\I 4t.q]=i) ب`3;|(huD# C]Kjۂ%;{&87b@NZ4/Cw}eauWU k@G5.#Z|cko`}ggKuZ>R2 XFv@{e0CJv/2:4KSmCWZ)Ջ ){w޻h !fHO &f~J@l[:( 7,mvΡy.W"p:SaB맞 RkF P]d4t12S͇ïr$oL,hGkݻe ܆suQƯ=Tfhلrx) ձ1 oJ~hvzK3P~_HcG=MW>Ǚk/e=O}8n+y&)1$L%:eg'GDGT-Wz Zf{Bd`HعT#Ʋ-\e?D"!q Xt 10vQ[dZ$2bQG*PߧɎaIQf~ C}4s(%l"^vXm J[|<"ܺc:~RԽMU8ܖԤ$> ؁+Sgdyf,OpWv , DlܳDZ9ݳwN`ᅬi#VQˁOԞB &>v\gH+; DEfڹGd]lSkGkIL;8yQl+xXTg_,$e:UBؐ.ήCf?!dSGL הY|T9އVOG&%f>B"dAa+؈`<׋+=3aX sa*>8J8O>AvJ!1KI/L0+46el8P} I;~zw"x@SDLx²ުēN4Txu͊FiKNcƄX\?=dr);42 2s.V+(Ӄ6U3\E;;hcNcsLЧ9Pbq_qh_$qJ[+;0Fm*9nv|({3kfx0&ɧ?ZH yvGH^q8Kչ_7 J: т~Ig43dtCLqaE+0l@{$4O&3[JVkEVVb0SIc Ee0D𱺾U cfgÑXqJ9ϑxY2A}YJ-J%h7NGM >wzE1wR볽MT+!! gsC÷Jmߠay?cB}LPJ<.X;I~+E9KuxK?2w FC%Ȼ[^>34*bOlw[ 9q%J,|\Ph#RӔ2sɝI6O6kb%g9k魟r+{("ځs4( (6r68h!KKB3`Ӽ8ɜP/Ovd%.l<%ͳyoMocd݇`:paļS/6mdŠ(nA?};.1_;\d~B .]AfK;4l+A x*EstaiEq=*ἰT$vkоӐj 3bye Rc1x[To_TIFة39.M]+bhk)JIP = b0 J1-Gt8;Et(FfȻ *blmxJ:է~p%$k>hE6uՋ4(jľ\P>sgݖYް{wr[iwӃnjTYT}}X)JQ2 O5U܏kIGjebkԡx{4PKc낡_:t 9ׇӣhT Y1uD?cx p69ְ 3}+u Ntv2Ѓh3tѧPBS5'(kT+Cbzpfc:X3>axJۚh(m:p n~"kSmQ)FD'͇ډ!q%'IN Bpm|۲+`ꉵ;鞱v !u\a>G,4CXR Q,;MkѾ]Z"7%W}Uh@U*ͣK?>1dLZ3Ct{K/id>d|Ҵ {8=ꙣS/m!YJlV7vvfezǵ$r;=KomA-Ǽ:0Q֎[]Q*i~UwA]96y~1/8d6P"ύ֝zևӧ4R"rc"P,2Ixvʿ ͩQ.ԖRپ|Gbug7b58zmd <DC|x6Ƕwz~!WHZ u#M| *6>͢-0Ƞ7R.g8tyx9htGf;:Rd̈́xŎ¯^o=r$skrB,͍*fUAG,RLN\5#UՎ\dzaT-x;lݸmdbQ{[)-^k`҃-ߝ&6!{v;۸:r%9Jp_7HjdZPFUVZwS8$J"w%Znȼz7Iy#֌s$47F4:B%ek(7k.%lg 8KD9qou{3`&z, *^gEIFԈ:g]jq-&\8=!Mj dQ$:1@/ܱ 56_YM {Gǟut"-}=Id98L6ۈXDdđs_m bZzCT-/x_೮sguMHbi e^~e{9Ώ)79.``Q`1c2i鯺4h{`щ$uf d7(3zT參>} 8px'WRF5D7lU$KB;GF}64/j[؀4u)`puεtr<$/A]"x  gS,c-RGn~ڛ x@|HR|7o<7`4*8(YXZH1lRޥ|7ё(m4uEu,4Io1U9Sʪ p_QmW9ޓu%t4d0+KY5-X#ffϦt:\~*D:wXsU7h]y ewE7Y,{.J !ƣzpٽZϬ`'n9,b$u7g6,X i!rKK9=˜voR_;D_S]1)brCҝ!bnJRq$J<_!=+y,,zʎA{1lϬ( T2c`fM,y( $A7tPg݀Cm+[C}}@-=g-^V+Ku.s߸\qTkcLY.DlxÈ?咨l;UsDܾP,g =hWt)M(r{A98(HhVS5ΛnEօOz褕2A]Z`jJ\9k.&qE{xL6#P5/6lyτ(8Iʈ\'ϥ rpOܰmd^ !ty8P7EcZssX?.&!$C9~!5qBe &.n' VctC}#r;Y5$UNP(iG1C~ 9q6Ȁx,}++Zۑإ +s5H/$8(&-{(m;T?~61:dI{vǺwA'H:&UibgtLzOՏ"Ȳ#_i*E$3h "Jn.C!pUXhN?BC[E5dҮ_3YnX=ʂyuA d?cn|x'__O3~WW~$XL'j+ԓ$cSLauRO 0V]B97< :Gcĉ4nVL `]e5%3ZfFq*D:6BDI`m71l^LHz֕Iɹ`)9+Q_XQNB7 uICPiⲃX$._iaa"ytb9RGթxXWs"XB̗׫a 캺Vi\:wc JsхiԏRUGuB0u,vG>\#eLu㳟:EcB$[cyڍQQ=es rTMݪXLuf/ `GýӚg\(U[2[<#ll63j@ݺڂ;.3xnQ*wN_zx}Er~5Q:93g%!SG*@}gBߛ1.=ΨvEnA6sx/*poD3-d Oz骟wHD^~mُ.\^eŝƟ8uXe ȟxY#]1YU=?&7#S6MERё1gnd̤"6 ѠIŻs(i`bRfLk3JM)Ci'5= [if bZ(_ibWw4lj|Owdޫۡy$#ұ\MS WCgbbK2}e5G8_Wi mLhxp%m OSIb5`*^T:0m,&{6);SsƢA/FJ_I98&<-LAW~ 3 f$ф>JZ1 '34K$_ u£+ƃ VC\Fյ2`zL(%h"&3bHCSg^AgOv4Y;~#c%|,=VF! {Z8>s{]W>λFmXA"lUzNЈd VXpH~1!2&f `#_ ♴7h729 e}aRͶ{Q"3 SϰU(3cdp^%@4 c6g|K1 s@#QVE\ )r2sb-S P;I@RAHDOda/xIq- !Wf=y'Ny'1S!5z6ii2$~䂸*Zk!\1 [(]c5avzz m"cs4{c,7:C3r.$PM!I#+@;%޾SYF׮ lb9ة5~k?I,#+ZC aʖ 3ƗvMI0j8t uʼnNZԗTZ8 6p1g~5EZ 1/l܆v{o}GĭXAޡ(ě"/BA`9cXbr5Mա E{TE3D7Yzqnc _&Yt6P%? n>$(ABA:i)gsԳߢi CHHn ;edDa+d͢6~^7#m"T՗+[`Ȯtˠdm/(KPI؛49S%x`=`x62U?( G):m QP4Rχ=dӹ~=[q2ľHkOa! =ݸ{ycsD-:)6|{8'`fM|? 5}j qeC~q\nnGwƱ8ʹߥs=ЭvB hqsZ5cRAr6EE2 ᙵ 1iDeT@zz֝r(ՔiO 34 |è\0Z LWtutHJN90yќ)) iy1 "# ^T0dɌnbNN|"L&\6螡%Q"y)Q#T5.Y0\f$e}4jv4du[׊񒣿[dN^SBxxHBR*wMiH/lx;M.Zǀ<̃ e:aKm/!.dDj{KXpV)k= di -EI-'"'}p!ʁYq `J%_yf-@Z`%8;Ϥ>_44L{쥿k݃p @WOkmMOio:ҟU˷ɟ,fclYyBĈwV B, mMvfdY_> Y܄nmgEX6mۏ5$R76Zf0Op8Dxeø:F| =Ce Wx)+gUϛFGF jt}U6 bDAj_b`N8Wϗr_\/F Lh2\\=?Gʇ~M:7JYjzdiG;\ʪ5#hⵌ;𕚔k?<~02y8Dte|}"'aį|ZV9WM&Up YOa\s'x:"AWrobx@8,G=(Z:xSrPrhɗAʼፙ_,(6Zm^`'dmH3*R^4@I3S2k17j( _i@k Ĕqein Saԣ} iB;,D[s^.DYB˸0].W]>*3c}:J5'o=hL*# ӺCqgpU'~j{\@"7lLC ?kA(fz dk >fj_9 PSj'2Y+zjx^M?涢#J1_ ;Ǩj/hͺ[)IO2}eQX\噋>F6=B"Yd/7~Ns=n&E)X5|r iwA9dX;W <2Cm<ՇK_iMד W̑E +5W.?Rhx55!m߶֎&TÍE:]v\/u<7F|?zVr\Lp fN [ӯCgZWtu'1 0ցS$?[C$2Wź݌xSk1.a jT= L)'PCU(To?"} { b8@ C^mC37O]xLUif5M'(e]\ulir`)}B'Cv+0vEls?GACӡnfYUJ43#ݝkcGoqĹ#Cp~SLv[Voy[}u 3w1 ]R]9}w'I*h9)hm.'uE4ц 0GiŇtӁ_x?3XF4bBH)*'Ez89‹Ν>BO!X6/2hbAZQk(aNڵ=yx#鎹d.%BQ`uZ87$ZҼctDͰʲ7Am31%Uq;<׸Tg~ 䁫OxcPn.4*FUy98r>L%~1>BIlvS[s?˲bo2Alp7aUN1V(AO*|0⠬yݣ6 f?쓿OEf*Bh覓@O5 FVrs$6 CL_l-q,Q؊BÀ_/6WAEnz8K+0w.-591D*fCѿыPTZ8) 2tcl<"$~'U<I\72JjjA4 ݻ,In<h B৴Ej( <[KQ=J=52Yuf!=:'2kwvCnmخLT'Iq_6#5V!?ȳJ0d^C]$| Q=L2 !rrdpT]`KZ-˴] yjD9y(] _]KBҍr]saLR0no uSAxއs_OHrTzC-[oUhByJcSS}[j,lqU97 )32 O@P/jScǢ2]0\.ѶhK*Z+=<'O4 k9cԩQv@JRO$_ LJƜЎGpLяȚ ?ڲ8(&ޒҪ[ERfXhĝ$35 ]Qq. l[Eh9VqbM!$eN+T2dՃ_nHyheADLvAHf1gc] 9Xʶk(lbd6飽zz)!B}̻elo%|ѣYo1˿e:`88y$rM&v Ŝ4vY PV(CгSFjr!sEg>h+8%'A + Pf4ؘ`b&O"\9^X\ *HhP0DEM ~) z>4\ U֜IF3h~pl/ƋKf5vtu)O';z)c k( |J\D9itN)E@cK"~#62[Zs^Q@(`:chb4T{]D!tTͩ៲:ZO1 6T=QkL ;uN=&])h- ڳaQ:(IZ.;LE}~1@z+6Gay*@<[*YөQQp@i)K_b ‰^laںe[8ntPx{'ɳS8\%RV@ܙ3ג@ð-?m [x<{RƹH + GXo]ZI^ƆfuhpM@b,839C1$d6>(b MaPx!LP oy3)oYkWdJرd+ڲe*"yN|BK |3,!Jx*GB!@(>ضTE{y**Vq&fǛqOxГA<ˉ~pJ Jl)z֜/K2αη/̌GUSP,Ԟ{:f: MC`&ZIQHĿYr % :g0\b3(.AFLSVrqYjwb+z?R7ڽjFcc^LpP;SɤOM|% RJf;9(a$ y|K^|M";m͵SLZI@1dpȓZY45u@wSћ>A@70n|VRat)l؏=|Y x<9Ie?=c{ ~s0C{iGE]٫$JdEB뼵T4f#Rz1EmdKHQVVY$l5I ϟ9ęaw ˷4$E~Y`BOˤ/4LTE*O&w\6N7:ҏQhrh^ (|4UPJE˿ՆǬdxPӅߧu٩:)Hھ1ή`k(C ^&Q¤kz{-iZP։V~qKJ,&]Hq6iw/?ۻ:SQ١'0?g,X̵;@o5(#E3Ԭjت_s=Y;a%A)SMGvݛ%ok K]{(:߄{ȗ<5 g^Kw%H2h?&+3/rJ}kWrLE4YWP8T=`56wx -ۓZ$Q'c jg ϳ0O@jH/qՅ7ָPlD0F,) +u^W% M2>xl޽lݴ! [ np`hÃ}0j|SW蝉[ȭЄ9!;ϥzgeqzBPNW%2K ^r3ߨ&yB4 =qW(=؍/$8gw4*].}Åԙ&]tA  9?.QG`Ș+5e9b֭5>(g;KX8 d^FOy6m `,vhO;k6ap<C 6s'30z'UnNH[\oz+҇xTj?"0B\N_T>g݅LsIv.nsNj{ {=Y#nx?)+֥z2_efa4 )q3c?;V_!%fqsWA򆽑(r锧YUw+:"]`8S1D9)bym[ UجGHX~7T#'VU2Cps4aq/WZYWZ g`/\^EˀK*T u޲I;:VײM"O:H-#MH&IHaTfXeDUFøLWY)۠KVZʨN?u5jX)"E>ոEWxdJֆ0 /R3L&zD@l 3G!SDwLF'ln-@d %]ҶNא ꖗ\P[fro>8=\zـ { ۧ|ɧ\߲SD0jvr"_lw^{Jo!4J6G8&"t6^C{Ɨe- lM6w-zEx5Jsj(-zbDQ:tjxKť~:wr)( S;d>lkjO_0\QɢM[=?HP'ͻ˂ uԇz!&g|ܵGX\oCyM"7hڨF=^ZjZ%VX0+δh׸'fW8d,ۘȐ.% K̬쾓ϞP_?)& v7Z$n@ƌT$G w{vof%J/iPHXOa `f`AFxBd+͑aDl(LLz\Fa~T$]c??S'nmZBb% I\ &ԿBJ<'+i0z$O@s#H.rJ3tT_BYeoP|#8K9T%9Q 놇~A6`Kc'RPl 3|# q̢7Q3QϠ$X4 B >6X(l Ԡ ]}`#>sL..FU7i i-v|'sw=ԁJfe;ʐu B `?'sÿC9xV:E&1Ћ[`@HG\z +eor\CC1A$9b[w_kWCg#!'ay rV`@%'riڸ؍ z0#'D{Aql'vVQ 3 bsv`z|87xv\D͒MbGH t5UEi\hJsE [#wVM${Ů{!fʧDRy0w;%d Cv@hicg6Y-dk v]M66b(-S ɂn@{t[O!T2(R{R8^C.XznJ`(]9` N?{ T܈2;^f=wEb[Pd#1tvD*SYސ<03Cqox-28ޯnD9:'`1GgQCچVEl.$7Yw3KczPjWkΣIyTfKUL RT{GΓg!ROo+ۛ!Qnj̦1/FM3P&gLMy`B` h(.*}Tٞ/f@A1AU'D?\(@::m[YUuU\A_HY:R h2^،Bx~7eCrݘ Oľ ұIlxZJ{FL HXÍ }0GP#S"~0h`|N' 7OZ]W\ٕ3@i.]` |SI*zEޗĐBxP$ :m&9AIWH$l 8~M$%B3ʄٱa&ȍ •gb(+w8FPl-y(piKeW xg!_ϳ| vmabʽ" Wf+ć5]j.H8S ,ǔ0PJ$`lL)\>O*o.6f#F6$x(pYc  3W!0C Gsods BNDB1*G]b`,^%Q).Z F^܌QldGJvϣK\Rz'k|4h2%1n%'σY89?Ycm'e(W9U] Mܴ8c{΢]@dpqP}쑚}(MdsӈtZS[\gN!'vA/I'w.z5m;dnT$ZWZ 0SލC=L7r et1b"2;|nw ?,+3>[YZ,31{R-7]Q#ztX8חgv'{vϖb 볼fI W-AuɎ?)r]`uAuo|AIRRj^Ɵcҷ+jU,|<,Y*bIhs^]%c`"'H hɵ3=26] Y)N7{PŃq5=xuvm hAR,03z"~NL ]kR''(h4"W0`eðAXg (!L"FfДDM9 { s}Y gAVrei`c߻>Y%?e_=J2'O ?!-p}QcT7Dk^l`L Us *7"v=B *E+?S`LkSpx#dGeu^75#Y˫3:V.mvLa V|:Ƌ ̏t>p>oV lx"60% GA  -ec4IBdddO#]n>} +}FnqxE7i DTha\ekdS"M /$UjJfgE( 0ۯj(oe4:p%:͞%|%40ǖz9JqP9"0C7ؠT V{YE.+N(UKfh4Rӫlj!2É*&D/BJl4!Mg;9PÌAqo`ض z{HjZYp8k19 F|fO hz#)ٳUUjr͇C?xEƧ/ PJ֙^C0bDVwP<0tr"\ޥplbˢ.@?|>@vqr%VB:qo0F2 ZoaI9.UqBzXgR>P{No}+Įp:$yX+veHs, >?n3F@%6^07?oK-3ܯU2\qmv֗BVȘP]Ɔ4$Pf :S|_^+GŊ-RW[-|J'.^P qCJI7GsPgI쵞>WR%q dQy-DMȓݵ1&y>4u"D<Os'c!{ u:*k𐳭#vt({`o:*bo9CE iN0Aк-FΧ`ΐg/dnHUWODECf5eQLR&7Mt VS>]^ ݬtG/83\ F_^[H!٫t[MGތkzL8zKd6+ևgQ ;u_Z)BC0QncMԇb/@(&@ilyDaK52YMb:Gh8@{ R1 r[kK p>0*?asݥu_Kxw9vTұcbi)';TXJW)LIÀ`sרlCGQLaHłP'|Fs@pESG(Q\Kԍuo1,k'+l23F@xǺ SEBaT@?gkHC0#Em7hݮo9 'ߜzAUXii@`AN" x0m| 3y*^*A.ƾRMྎI@9 P c."A lUgeor$ii%ԦM4U$1CK.J`EXc?L 1 Cb뚷vNБZ&ru+HRR2*ns*f76ecG&A\\:Lm:o/5[>FfeǪSQ\s&yUE(Jsk:^+@g1F*p^T/wա/($\W̵b{iXaIlqH@כ&D_u8mF<5^Ϸ幀 M?DƯ܆LH3s|OXCr(4fw@#b @}ÚBǥKPɮdulbbrK\FxS7]tB~jmX+ N ]Ӵ ,bvpS` ֵWLIq@YlI+I18EhA< KCC)A> P*,]Kܬ'APG?E\bt]d7Pv̔nŽfKҸ=*b` _Z^='Tۼf^e-MŽFz&B)ߘNv*ɤgbmڙ/5 ж>rù} GH#.37'rF=W@ZχF0jdFքDUFr^$ju_ `M$@yƙEɤ0o~s5EXJWC޶zJS4f|SBJ.g|9u|j=(ujҩOVČU.& vh%O [|vHQ;19FZ~݀_r>êڬ:M;~Ȱ3Nqfئ~a]Ep`DrKB-c|(ҧDƚ~ݺ:+Pn.-tOeV&t\灗]f9zDtL';DWG@1+g3άF50)1cq7fB. t mliJHCFIyjn;b=w7̓Ž`.1c9zX?hyvݹy`!7+/)>ר2m~ S\E7pp K$EKUlL랫pW+RY A(}5OIO&X+pJ@9h%q n#䛽*/*v꿕0mmKwJ%wadi>$I C 1}ҵnU^_@HB:߶-;p8UAm Iy-dg`>Wt6Q& "^H*k)>iYwf=Y…I+"U~xg ~r5x0Lڀy_YfD3¸Ќ?~'2Ԅ0 1,-֩SH$']\& 3uKQ@Z5EK%(s>cܚJ72,0R{͒֗[`QTƧE-1'&kdXfT"m{ԑHg?̢kbX& ` Qr΅&C<ÿj{s~ڑdjY Uy?P2d蛁9=}W>տ7C?M%,'~UKK9 %Dw~}gVvbۮSA}z;e!F~EY/eߋԉdPv8 ^Z5!<NnyLU{VlJ*1# 9*}WKѼ*kB2zD73IjT`tF *8w}E@ڃqּ+O. 0ޗF-H+v42 Cj>Qn~\r6.+YU7KhY]ʴPQov <; 6?oY6&7#]G- [W[.T,Ki5ha$Ay[ʏw<[|PUͨzK <_#3!`ˠ94\Ŝٓwb+#+[^?u=((Cb)b圂`(vc6@Y%q{ T9i)*5= Tbi8}T5vzoUnSRlJƓjGn4YM sq!X?M٠Xx\x5+X'--Hytu\#k5B[_t졄N7ҝޓ;*5o*xV8um]T%(b tB%o:@GTǖWX\w=U.Ã:^އztI Lꤍ3W%ɺ]*w.̬o׆B t]) 4KՌP1g`"&aW0$qtqRq6 /36#q#{MAɲ<}#qfAZ KY|֣ns=JzxLV=I`ŋwq:K-魼dKw,AF`iބ$3&n]$'sXÑ2AU).Ҡ &Q5tvݾū~e)$.vr64 Y#Ǟ'e*{֢6!{Rȋ ,իЊڐTmp&g8;w`MNjbB>bƚ'-dMW=>R[ǰ6vG} [z\dU|eM!<f8 Meņo;sN5{wjє.`1:q Uץn3Z&n<[ye1#Ue@?޸"آ6d,X)@VIg/a9Vi:($ާQZ,o*j˨&WwzHmE$Tjo\iښf؀ٙV#KukyiV$p0z~JÍ歕]K:*;xTCy_P78Q/w|=<yd4 ڨ: hweg#'zHم_Ael ws }o|r Aʿ3) @0 3&+15S-* yb0{ _hokzQhv$D/F\Qso%*I"9n_̞'82u*$c˃H!) <ҽj\I4hcVffۦۗ|;AжIxÌ'm.{^ܔf6~~ X·]#: iIE]Ĭhre<٪U" X-[ \ߧԫPhQD̅NŠWBTC[pHTS0V)^%&~:+k $>л{ WCM]Z \0j"jNe?5)H5f%tm ʼSsؗRΙZw<xX̐_{t=ӻYy4'd:b f]_s%|c?mC+$wotN8:Pz"͊k[̘hR0nPNA.QQ,Qѯد  01xiM[4y~߆ brdD^sDSbr*Zɖ55s4 c8!%ŵLjC- VEWu 4*Bjl#^%[: Vw+B8EIyԒ^/r㋘dV/uXASsS74HR^ՁRue+pz!t4bHJƞ۫ 74 ]^*Sp}\LDBG-&k*veP,|{eU.8:SOTYA(_HR1~oUͦw'x;ͬ7ԏߔAyOIРVn3اYJ'E5A9MqeEqז*m"CJ"]rvȃ`iqs)m:H}wè[#TW?0NW3#޴z*tR(aWveUQZpJ?L~fk9K %PjNk@$6V*ur7QDb-c#eVS- zvB0Kdw{A2}5 {%K:),B \<_9(h)9[hչ)E.mk"ǕVuXB3YIn<&L LZկ 3f}*n _`Ww<$e3jjm(< w W+^)Ka_}Nװ?m10l?tD,n*'wGFB5f ~29SxU7|v?褌z!!~4675 9  ,o8H!9OAq$8CW YQ4x  GxWbGULg} #v6a _V6J >fnnir&:ftVgϳ"Y!uF!/d fp=j=Y=KTdiv%fET{B:hA(aaJʑ"iRwWktS\|ͣkt8piqS6W^۲=7T/(0e^=T셽'2F*(,zauPzSlKX#^Y"J.b\pg˭b3"?2zU`3U3yh`Y 9;" 6 k6llUGu$v{tl,yukp`[nOe,,{B=ozUTn\oy~D8uS~JfjBh3Յ?`<,dE>1HnfT&EЪbG@yy(=Vdݹ=7TL jLoI]x)ppvPԈ9B ])x6$!`7` †^P%'/84ɔ.8z!1K2iCbx@Ͳ:g*"leR. ILeA`#,5^@|Ϣ="!-un7A"/7TKdh,Vm0 Vvb ate4c+u>i. d@RA.VRqEui<5cA/^HşFYƵGP.uZl`29lY;W3O?x%䃶?綺rzg{ >5,BDEJ``?tAKPˢRI_uTjNԩJ=]۵.p"3bPxB 9?F=@՘g/5m"l! VX7iy?RGPm[Ꭻ*U3h"':KBf Һ-Z)CgGpff=2WI_ Y ߧZ?mz =_k8Ϯe1 Yڏ[8xx,0p. ' )z[>D'2rԏ4m R39C/t`v j@Qq&!g-/}W7L4ᇨ&%,Ic R/_Ѯ_xG){TZTPㄠau\^`Y讪Ze~#č,xA c'W@՝ !f/;&jO`=L66C?DԾWM qפ#eG*|wW# tRFAl{;qҍ GidV>ӿ( iSUx.k7ۿG٧e7J5+AV ٲ}AM\kX/+KoW/â<`h&حڿXG7$5֯]D 4!26ixeLt`Xu_cm#KS-gRbU</Hz>F:i ?c86(y47H=~GS""«UpƼA:UZ,L7EV5PRomYDwp'wV;o^6!y';wS4GLXOM6m_ p&󹂑RIGԭySa-I|=3W3i\ʮ?#qnOc-} K ǁߏn_rQTzb9¦yzWM#4a4y,HQV9x*I̬a*Eq<{DA&tZy]*ڋdEԛt!r Yq :EO\IjXcbQ+ #G s9;s30 0w=>Ws9Rs&IQLKY-˲n XR.jZV $f層0MMJg9G5 .-J bNrn+/E{P DȪgN,qg] V'X v"BfeA<#htZbYm"KUAl>ClUa|̔t~ nAijl&Ɛ[\r/\IRe@X\72`\3#HNj}'F$nS xۀ"ϧU!Q}fH^orިXMEV[`.?j$Bk[Lxm]F7զ}>3} )MD0֢^ѩCw8fD I 8qV9aJ5٪;ܺʀ3Ŋ=qQs>LmdR#B_C)05p4fُ߮9iVZ+J;qs u8!i=B:wSG)m6+w5+I y4ܣ ? =KX{ Dhbd'zy톁\Iwn|\e }W6{P~ [9嶪8 Y6mҩkb~l -ո@HH) 23 97( -[(ddp•O+y_72-K_, j]BS߳( ̭$6|%#ץ5{ qٞyIpנFX#M~ٴr#=d8IZ:Z[X ncda2IXVܹPٸ:'d,6N/ݟpbE 2 ٔr-bO g&sXNl ư|޻涆qf}ŷo(2Z&F-U[jϦCZG1c; ,NՉANgYCZVӚl+eq-, W_hmBqi= ^X} %EmPXFş6 !uĶr0mbeJ {@XNkϘ͖3FmK Z~\V!YXvvQ s 'E }:@C*(QsO*6aGغ3%s/S@OO/ )~;ؙ(ȈsXJ'h-R%Meq:.Ҵ"װFiy֕HAZ1m֙^]lx+^-mTGDVwq ޱss˝jƻ<ֽ$=Rj6\ 1cH*l{ЮpBXjnʈvq렰V,mQ(;{NITA P~X/"!DLΣpSqq:!"ߟe/CH,I.QC0s x2ȳɹ ]=JeOQ"87%+tL2W Qg/ALS Ou5a5=gk% C[*0̀OL!*Z}iw2ynfAk ]Xֆe,/\ .t+9MMvۅ-ƒT\S[}yn( ($ɜωoi_|—ـ5R gX,ru  jM>Q(gB{ m.8sgސQ&!$cj&Ej.2cvx1G~64JTZ3OZ? ӓB4 63,ΪR0zc=dx Ӎ>sY+hao ҅|Ƚd*KDibwqܔ0!EMW(/~7Rݤ:bGȯrhΟ ݚ B2/*n?)fJSuZrSe@0{?q* a`N{%3Z?8e+xo'L,ZRCMRBa:#VWSsij_ ]u.Ep . $R\dosmaqDrsqR$C#cŠ9;q퍣zk7Mxv9uB&}*ym.çȿ׫Y?Fki߮2UQ!8^ƮOPpgL\?VSŮC/=.) Z3ڥgNAEeHYL a9Cnyag2KcYz9i)PȠ[\Pg3m4BR{>%7Yu:&feL/a>Zc+ ˇ /(ٖ%Xd^H{~Nu4beDیٓ(;;ch3$Wd%zac#AɎ @pv1to@{LKi!k.D%`QO0˙^fy?s=V]Tw'I0*7bWj)Ӊ@(jƺ lzu+X L~Q˟W٘x P{N c!YNhhuRCK N<%Y\$Ԍ''"҄ΐ:٬;Ch'^. +7E(q^Zhl(& ]c킧)f*G ]G6Vm"[q'4rJ7ܭ>KzA} xiSz<qxwVVytej4r+'.mDXOfPn'28;ƺ^MCۈaz0!b_<76<z 9,: _^]Tg!n |TUdBȢ '~#M8p_&7/r/E ѵp zo-x:nxO1Pv 6p[jTm;jkt1eO4JYCfD=0O?Fl ʩxBDxz w\#'͂#jVbׅ"QLSWU$,tJqf-:9$Eu[8z. Zn)ns[D HA"3e:Ԕ0,}C`rz瓘4܇`:g \yW,.Ha-Ę-36XBu::&߽^ ܗfԆmg w8'z"9g#(U߂)4Q}ehNr >5N?GqgUR01z5cQ&@7D=W&M7Jv}z.yZ$n'mr lYD*ׄ#,I;B.ĩ - Z֡P t]jEOiu'^]8Þf`G `+.i ٠rн6zpا ι駼ОWDǐ# ]& rzQmdT~@#sOJUf \W<3|1& !Ffπ=EBXok^qȯT'2`&@l  b0|A%̛ Ȧ:$+[j꽸MPH|İ!Wkd,`Ȫɕ1۸0:Kzi^}Ƃ,9S!l])&1v>E/M]ž2$S%@zz+ ؚ2E(1Dz8{ 7V^wK D֜ϾҠOuр*g5SS(t[|AЅ}~:DuJTمrsؚe`t~]Q}7p\ vH Eoeßtl s)X5KpʑV3u^\L]q5lX#ƅ !ί}Q8lQ_ 0@qWBK8D5 2m# I O?(F- dcQkC=S>N#9} FJZm p=/4ɂdP, tC,d;q/ ŅH? "aPAAU}T[eXR IqzcL uOC?&6؎]!M)bauKTJiaig=G?3;G9΋![4,|TAChO¬&`4sϮ {TtE)}[NRΥNo^ ^Y^寰* ~9V@QJ?a9}[cc>uWkU [ Gй“}YR%cU]{Kh}? B:!嚞+ktIcLA=Mm*2,uΈzTH" 8lsy% /M|,yic-Rң|?“yQx,eU } k61b|AC}6oF Cѹ>O_=5T ,E+WB FSMլ ̠4G=0U-0 v+YuwAaF5H|ϤpŬVr2izaV}ryB|;FYR`ÀbJ'u^S/~ L ˥gHa'Y oc Dݕr'F^ۄy #~ j8:vf9t]{ahل͍뛪L}شa2KX ejBUFݺ14#6TPZD"ت6Ÿ/p^/8wkQlW|'jbif  A˂$\ 11g{T7tkܼ 樻52Yo@OIoacIoP:qepZxJ4Wt'CjA}Wcct&9q6`5SiS "K>+ \\,8-lMzi<uK3qtZ]j` "me,p s\E9rROCJ4Z(-H2 7w1o :]կ"@y_1~1- ˰ߝOϭ)Fȑݯ(!C۹/}uqB `:E]1xcm^_$fW; 3Hz1*. RťжWOfF1l36ҍb'~~#uJ6N W E4Ni%H>q& TиJh3d 4{4F Miv#}  iz7!(¬mGYI}.nފCz)ּDk,KDgZAQ4(UF}4Lǽ#I܀Etb=‰R|1$H nS>+W^O\F:w̫}%ƺY JN%MPcpzq4\6NZG9]c0㻜`KЉt+v#7Z<~5CemQ/z(W')vfQU*,D\X>|+XzXu+4'QF4ٜq4&XhmvTӬ͏bW9 dv$m=4q,#j򨉀&Vt!ZW)JȰfݢvpq jO4T#ЁCb#r^]wz }nl d}qcry]\Iqtu07R. &P'F(o8X5JMi' !:2\^rЗLcS lmBqV@X~)r8(LJ/k V4+] [WC)7\/` !\ \)w/ Q軑E Й$ VG"2 3?~#8+QD>OQ2CmwBy:u%s$ݗuT5 /YX\2L @枮R|?CJ8L:h,{,@wT5*TrWkVI~AzluG=[eYύN""iNH8ðBd|IdJL8/^FdCޞ2C$[QFZ!^Wg8NkVTe q5iN}MUKr`:zOxEokv5GΡ8}Z2iϕ"DΦu DeNPÓ5ٜOyN_4Q4)\N h*=v:i'7/Mc ~1X8jMc,NXS6$3GNjE^WKFErheJ~*Cfݚfh9dCw|8ȩlƎ\ىN.R=E_]02H %#T> o^,7= 7th1mu"gJfNH(LGhdl (fr?Y*iD ӌ}K*'?ͨ} nyNP/b^;s4HK䏫Aq<(n"M`06z ձ#}!7>yr^hc%ߝЙpƄs'Q8D(ä( P_.4L?fj@F@eU#4_ XQBc,սJK$94b ͰR7B a)uys{Ƽ3?=(.U.p^{ gDjw֊_ 5iH(I2$4Q̖su*fRse~DzrmvoT Cuuܘ ٧Goatt7>_d +!/5F--,}pt`~ILsHo=p8-Dm^nvOa@^s? #)!~]+ p,)G 92`)b{6K2<_ Zoae D\,Qd3?;!LEbovkfVKF{{OV4&;ˈŦn(!F`66@M:wP {KArz&j9i#*[ك,_Jx߅鼎tk'%U ,gM?4OIi_( L8 <^a/WU7;`aqԪ1SPL,;@\ tTMQQysvF6t|B H 2BVDCI^=Β>BllhX%;uXq|nc X[ӥ0,?{2rwȱ1E~p۹¦gE-`'xvEx=w݇'FIubo-;h{kL$%Z=%sg#۹*-Bw`ִgZZ!0A _.6QdOѼ Jt6ֽjo j0"J~Mm+~Oæc c^侠XOXj5j;Hx%FDEyZ~3le^bЉB)$4N__5V9=}}lR*E,~W/})V} I/? lFZ e;IH{2R< 421|.j KO ؄(13֘u׆z.E !j=4^r:JdN0N2xs.?lVœ5+nȦ;{Ǹ\jXHByaf>Jno8}s+z\B*R'4`ً44]f-ߚJ]D*tpF7׽8b<$~J %zU\s qjJF^tph8:T`ॿ6u^,G kYAD,u}b;d^OSe17/"NZzK (_%$3q>'lл Δ'sm2/`]0XષElv/Ç/+bqG]nv?k=ѽkCa.\NzÙÆW4H]1V5TrT>\ 5A,Il"bh^QG7Z4u;I`RCH=MA#TYOA6e Җ7"Wy\' ]R=&ܔO=sU/pFEaރ3r0],ӸYua6M<|J< i#^5Ul^$JJWHrPGr ^b$aneŃbv4G+;z^qS􎦦Vx>i`\1#4ǜyn\M~aL5E_&gD"'~A% ) +d,V=GoBpmLT'ߵJ.[2Wt§( y@O^Cu(i"|O>럭gV;D oѮ_s8ֿcBZC#Wi.Q"DItcĈu뵮$ڃE͝#|aF'ŸO_ھyMhX])s+򳘊f,o<]ZEp˩9Lڐ(/8);c&#{8DP3D>"NF`eE| 'hۦA& ZT̍zFXctb$}cgOh,ojόWBE♩ @jL]u";C#jpÎO&xkMUΧ6W?-[ $ZoxpN`{)Ph"S88Ȕ 1(7[.AݼEXXJ(T"WVv޴(xKCSD6D};lSJdj{.X"׵6Oy)2aNqn{zr7=`Z͖۵-A :!/>3ЛLfC bM\uVHQA웤|4Pt0n]\a0h'`M|A=sF3㗅Qh}Pjb;2K-JKL2\ByN#v8 C ܟe *OG35ƊJ?(UH,PR9]?Q~lM>fFLwGo411yIcl3GbSO)[g6q)U,=rEz}3>ܣ%Z.%_R[4!>( WtgWYtfW>i0ZvGa ԮO+ >uC?0K L~[턲}ʛQ9\dS[;Gjq?*.yA#r Ljg0X(͓6Oe,S~>z]ss/'ݕcH"ginpdV~^DOvnHUM}`& B9A !NOv>Էg+Ab1bG0;:Z#W5ـmrE , 0OV ˷3ILH\ʦ0#sr(R5xiٚC&߈ڞd9eK:nv 3C+ Y1Br.aҕ\_DY[x6jX= L$= .|kNRxqoR;[a} `]d3mܖ'zO%gXc 7$W_K9 !~[ig iRJb<˻_.mH 0mmc cb x軌dK_!7lE(LjTgxb"߾ƀ(2^ĎTbr-2}fx[9R U/ h_Ξ ;\ӏ*0 сaY-GɿE =0@! OUt q<& |x6 iMU9 -l: MCgoӝӜqYq<:}NS jؖ_7HQ, m2En;k(h~_)FfuwBBv 2h, F6J/IV'S$$κit4\@п`heR* qwBFm yë .Jo>~ SROfQbx Q^FU:NL-܌)pfg"G;x."tm]dQ+RZC[)c#%AI5QJTvͫmpj1~#*n`E#G9#^ d*ӹpMD&pOwЦA_e 僦4k'1.#|iN\H770[soRpŠI*2Х)EUX8Lmb2? T"ݏOhV?.fwkR3 V?94:_W k!Q7*nOs:f% c=b碃2PSSj:fvW:@50:};eqh:'+pt`|^BJT!_Zbd1h526b4KK1p)X.vc9TX-PIM:ˈgI=EEL_z#9cS$Ř_R'꫊ƈϻV%gm:s dl3"j 4RS59(tL⑕6d*fB GnExt⮙ B^R9тya=1Z r1PSeUHhzN8%~놦<&C;]5 'Dl7fK_1,k4ɿ񕱯V8@I˯ '>҄.r mK46X dEE)3㳇ܖVL_0OÒ)0'w].+e@I%tf&v]ڟqvzج'9) lQ9pàzk{%W+kO1yb衖UkMFU |30ݫe\ j,@o RXRCl}N ,Um˷NWӈkP,/{g(שGuEI6Fię:fZwUhNb RDlE>kZR>bɹ]x g~jVtlZ '9FC]G.5RpdY,zμq;XNAJQx#lsii|iaЗ& H`(l/__ś~j r ̝2_-&wg7<$}(n)'9]IԸ֟? =;=B_:BN7Їn411iDV5dQql[9QM FMWvNFq q/lqx(O_iAR&6ԇ+Ȝ&r>Kx9EԬAʐmSw <{95;v{z;ˍ%Pbu`?H<.Tv@N" +Cﻆ'kG}VX!Rb[ibhXi-YvX*u#Hw./X[:Hpu 2eb$KTR2Sg% 15<AiGU&#NuYq.NJգaM3)dWZI@pS{4 ~`2%w&U ΋Sƹ1'Ç{{JWv,>3GUg #j+`)\5e֝WٍRь,ηct8@bL 6BVlNgsh+B8F`u,>:rɾ?Z9 WlbK}~H ;}eL:7nRH@|U~HFuE HNOC3Umk:Wb7άm>M'fi9"P%rN "5,IG O7s*71QV ᳄A5:Q:'Jt%vLMPa4 f%N._k 82 mc=z6>p 0S tAslӅ}gA:m@MPa]}IP^ȴ̫ QWjZyZA1Ha.y#@^Q-sCSɊAםj h5M\F>ZŢYev/ 8Kƚ7ppG=mhmc^./eȈPݤ.g0a'BSE{s2`Gr5aW@c꥕bZ5|4(D0_ºgs)Sfene9M$`MjG kij=*;[:<+`ti!Ӽc~9\3%ߞۮ E4yۏRq(Z``yl{^짡xwы[k<6J'≎滈; 1>d$G*$V8KTn>zMu2@,*]hĴ HEҧԔB}*%hlPc&Kø,ʿF(? .au#=z@Ts0%-=WEݤX WIHZ_A"Qqؖ>\֣?9t_K$—2B9hD|C2m!W7"6HBiQ!uܞCN/fbdF$<*4+spZc}yAkeBu4v~\[ `bvcT ;'.QУiZ E$*K@TK6ʆʲ4dYij崱E-Ue"$*T[ ՝f7粒(p lfD{;h4H71Dʫ䎠Δu.}W@ 1ݢq  |GU!Kxdh%:4yүp!׉[AIU-5XsT 8LUTͺW©015` _TĮl<(p0,|讲@c ? cGlƇ@j!>7)y.pͳ\*{j F vh_eBh+RsZp/ ǭ3ҲzKw:nsE8ѓ9`f&&[Z 2Ev5}K"*ڌv ^^a,E!Xn(H"t? )JT_k˽bⱹ&ռfMTreٲE?$H>5qmN@ŠhsScsO&&)0T-%5$vJʙ1܈ZT$7gWq-CC1vǿ#YrabQP OͰfʥMv^P{Zӝ?BW*fw̫4-52^,U7v8a-I2gzNH }]{z!Hݓ%Q Scl[M6HYB9h4C^V[{6\ B~ȮVvt!q ]ݔ2Ml ķSHń-{x*,~S v2,j! #&%l(?adFɣ[#AߖϧR}`q!oZ>.ڋm nK[\:+0ʌM_uXSaRG)+L ^\]Ȫl3|w#uJG˰1@+˅=Ѹښ@uyx19 _5# UUT^:>n{0ca?ʢye%cKx‘24/37jwp TP:XMg<yL͕Ko^p=AKIBMM˕Jh>ܶ`E+WIk_'m)ʙ7yAYn agtgkaV@,\l5먓cĐKZYl]5s_š+\v+|id?o K WNSyk{t`dK%FkW=|jа{6{3H87G7_Czښ@8 v/s<c@zJ]H]!lV9W GjϘ?Tݹ2z׃<(cpDXE/cB #M@qVw{n}sp!E5&Z ?~8>"jQ*SFfJnk4Z]5θ&4O{[,@ &%5H}S6ѶMR*| h=s,Ϟ.{3. *u )|3`*7dWt  Ehjx5ҋ򦖞;KԞ*<b9V!Qz`]?^gh7PzGF6ץEE'Պw\eYL.}Yj/7L#NxRLg"]x2>V.Wm\5ן%qMbW|8Ǫ`=wi"]mlL85 H@bsYb EM`$)#>m|gSNWZLC~|fVƖmDtd4BE4S%b(My1U6̺z;F.$G=IE,1ulѺ{2i3=FB:齳{ۊR$:6J6*ͽDžلűld\OUz3U*ٝE%.3CU<µ e 㲿Bt:4t4_q!hKЉ[ |2V4*ÏbRc-zg{y'm7F?HJ:c}=}Q/2C#[Ț$mFպ${_<+qv'FTwwE)u}zZYo ڭ(6eAQYOp` Z=3,rEl=࿻^ȰazGgyyƂHUQ7u8^hBG?9AYfLnϺuUdUhb7SǕ!mu riʵCo7sڏTwLAzeH_¨\*!ױ$YXNb8ޙxLE!qbyq|V"XI '\pQC ںQ3=ip:X$xiʪ?_R{JR Еe2 e:#`heatTv-}q -=8V>Tl*ZXnyCgkX.ݑ' ́+)$Tm' B"BfΰǼ^yRP][0W'onXI|ZKgݥ=ҞM !NIǕY5i.pwd?T&?q@YI505@e­St41[վ٥N9y!ܗ h֣N?,ǹؽ4!$(1nsǨN=/ߐycz\oo0q+𵎲 U#PϷ @{o+rPMYm$ծZE`̀7C(kNj8 ě1:εN(kv06m S#aÄyd169{F@E.s氻 L#V&3k6v0*0Efl @SдۈٟDBq?A WM,dQܶBb|EĿЩnJVWr0Ĵ#[85, &=H_v:V}ƕ*x 4VgNx;onDͷ&  [=Z{  SC." 7)rG*Ovu´k"ۆ|s-(A4&}L=(_$ [+tUqÈ5m[9`0k[VG75DI`dKJv ( {5Op 6%j\ F a/_=>͆4%pXaȏ9a|}P Սꗻ`L={BBd+3} b'bTWfOjp6zmF4+ ꬟?hSweg&ZyNZ%èF[|f`+knhoP[DoT~*M<^N$v#gKbD|~, v,q͙ P֧8m܁uQQb."IʜN"^W`Jcn]mgS?::=q]f#8/ f)ɹ,g:~P=DJ8q)pl߇:=`~Bz!jz֎31f~٣uHAK)N2s\ Du%gHǠi4@gσtGrY l*SJ*+ufX)(XqQs?!=Jm פ+]F1 ,ʛӋ.ϼOU@(plJ&jz b>ސH[WGvo <Uj@+,I6&nqz9&}3#OǙD^S!)-ͽ4ͥ/5tsq$Mo#~ AB;=WCUmR$bԕ8|fz$` {JQY6We ѼG2Ve2Hix,G):L6+2w);~7)sk>:xP쥌ok\ѭNk'g\ (|^=@&b@6`OUK %(IW0@ΈԅwCZ}f+eBda&"Q_kGn %wc󱷋!OA2? }7%wO#50cOh!ʒ]y[2acAI16QbYSh3BnxHnRads:Vpe|Fs(ZCH`I#-,+`wei#V%@Bs?u`UgD3AbT<+˜T*vcɮ<]\ҡiD#6,ja P|6ycsg grMdv.@:jTbhԫu/qIQLaEI{r|SmO0ؼMZબBeAJoID`AP43Syeoj aΎ4"PC}l WlfQo/gf~p_cP"tDڠV$A@<85vOmpP9]5; {7X[/NЉ`gf ,Mug YhU=RvRCQy23tq*e+ f\MRKEF9BM캞)Ef뇕}фܸ/!}5CZJ|$z+Ͱ]4,`r6хҰHʄw.#V{"7Y݊UdfQ3+&B(Qc(wP3v+<^9~V$v+>t{<#F1©&Rbj8E Wwgj-=6CG;Rc轶|gs[cFf[k2dQ 8i-Z?{hvT._1|Qt.%-3%œ4QW hʣAO7a[>PC?p&iÜRyG{q3[,Ԫbȓb%]CMPvAyl$NGv &QP5p?S|f({2ɛ!QWo'Q+'+l-S녓'&eS0'KJ8A9bF"۝Ou`_i.XekQiY}Ae*xIusoMI#A~9|Z9K8u,#O%mk^`k(gG@TLb,#p-IhrCbhUeH6KqN*@&h¬|9I>VP 7 ~-S.) .+UsP=>`VIs ~x|"dϾzffn2_}@?0$c&wQd l)iܡ? QZMa wk䞡sӺծ0QxZ.J#_18 S[\TlX akW?b559ym <~>ҷYԀjo=; nxgpAFQ Bϱ/ooN-hhI5Tߗ}ZY1`?3FǀуԎ((僀"4*$ɶGhb ni1':b9H=%? ;"sʷF!Ɔvru18ڕ>r:ؓ8|FkYx}3- nQaNdAyԩUF-KNd^5}S,Ԗѯ6 9R,P+AHQN ءBoM(J3g&:/$..CcENY6&1V3V~-Oӵ j,ϑgq\O#4ibfp+zSn7&_!-IPxE{j8B%_s Q4nT P gԂNqcqw W~ÃɈ߃d*yE/naT3RE %L0͊WTws~-iG,v[2zjG#r x+~Njyo speElKV-qAX).Ǩ _zU$KYITGdۺIHPI [C}PWp lvk=Vur=(ĉWIJ%l{*o{V0XhcEPߛ +6WbQi/s- dA5|HMwe.H;5HM `J]O|O5VWFg8qh a5Po-5fL~Vkqh @5Ħ'|^徨„XX> DŽ'׋d T5غi)b,S#)u~-:xB-x:+nŔ? yna ~u<ҵH('cJGT{$ [N%7FDy{w`qr@vYE'yWIh`7WuJP[VuDxlI G$?jk._O?Nkj+a,#[pxbss$birW} B6oࠇ(!)ZL"(}0yrt-r^j&?#4R㇮Mı ܶ_G:lfjjzpvzC-9y72~ק2 m^@gBwZfaΛ1&2#G~#Du$eL(E$]^˚;XghEO,u;uy)>ԏ+P=l̘EPxO&ʋ#jy?^r>f=Ժwi}7k;#/ӳbФ_(ԂU!0t$y@?ph/fruUq\بE"z߯EvԹ͡ 6["#!p.UVs\Q^gH34XWTvAwΞ@|(ɗ ӽn7I`u@ɒU3jSct?\[}`"-s jy6?s/s̛WpX?qd|"6B7|Vfu,tdl Fܹ:I'~t ?FDJmCkL<Ѥz侁h̜yl; 353 |2v DSn6tp|$uFڣJTÈxO5p D njhBΩ7NqB Qύ-eIV*Ҩƍ/CVelV3, \ F<zÈ]24N.2i?MG&\$@@ P1.;n҄!pىat*(%K uKpdboC soIcF612Gt\M G񷋝&qe dDm>;;Zz]#3@D/,#b%bੰc~~26QZʉM$J^0W6&l+`Rd:섭pEP9_=[sYXpn I :O6*w(X5+g쐇 ' &qs0/,XgҴ;M1ÂῺ$ r\LվG0tI>'9$i/xh)Y] ;+xc2G42|N4,BmN|#:m"HG"+I5J _&k#-b_ !*ٓg/: /OIrk~Q;,kF]c Wv|m,G_UZ"MAu DTQejwK̊y\[c/|sڍ"EtP)wGs]Q|q:$?kti c^<*Q=Sa $uAHS`'$pF,oAlFy-zCY/ /&[Mf.:]ERxIAT ~[HY7m*v4-Gф&& _<Жo`_xX]MEjXiveǩ]`6q<6^яQ:yzDRgqj=qW.F]Ov,ٕix)nQ$jh69SEEؓsZ[2LtixeQܢϞ__2}K>u+ǟJx-\܃FP)໎ɥ%0m *œ_o/!OFZ_U7| v_k.\%ݷv 1 E#G&]_Obr6TA'3|3]p0ܷb; ԅL8':P:kA@{!5iq$H\|;)hrC@q \%/bYNJ{gleJWp4B:O:47d~a05~!v{p\$><4\OH` f쳵xFB 4-MߗRBX* WTf[XHgtb/rr<Ţr=|m0 |K1Zu]*Ad8<"/ RTRuQȍ0"*RBlsOVY !,v'-Bq !&`ljw#~~';f%kȇ<,ݪ'ax\ #9bzUYs/`2虥tu*6fTظ2{O> DJxZ/ 8b]-6Q-D^d:05CeD|B{Áo" )Cy;.5BNSq^Mсmx#tXl$&H(rsGfJL")9@SU:%"f|>ٯ3I ~{i%A?q1 fN$.=YWwk-z>Y'oYN {P4p}F H.x"7+{I7]9aMW}m8dDt? SA6dFNNw?T;_!=_f&@E8+c*z2spWr*UN e^j۸(gUCIY/q|@ʡvt]M['By"e!{%¨f;LJ3e&[eegV͸%;ry0B"ޕb8? _!2*(}i!zNbߒ6<[ȥhrZMOlB7KͧaU7VTEnk>RȬd\%Ec9@ݓY.z7H{ks֮k v9O,U6g[O:Q3ّek+~{ivNomX۵v@ zKtH;m"Хؓw`c4bK>%7$%Qc.3$3S Rkاa>٫.ȧ=.78EPXd8z 1g}!z 9JoQ$dQ'dcfyZ%>iN[^%/IؔУ'I5#'>փC1\M]8/vbt&?\i< n62v E^ݎsSخEt1%E맓< GNEgP>hf׼H䀬Wad\fQ6-h ص2`Լ70۟cE@tbmjI%X_r~*4#o u0j@ .6]肻1o1ǻrKߛjIi }2Ge rük+Z'ZrMmV E][-dҥT3V0j´GN{NC58':L=akׁ9m g9e^,%Z}Nh+@[;΁+{v`ƙP9O|đT,%.sk\=b &=*mWmaop7X}s kw+hTŊƚ7s]Kgm/iŤϒDfêꞠf,[Z"Am{+> |}pRp \.&5ҒbŵNnu|h>Bfgc6]Cp3~{ 7{H'42x˩.=[/lGkf?VIPY[|<FcKRs% 5"vng|Kb.t=kFZ# AwE݌>C ͜}0Ŗ䧴dtֈ3d1{A8pzD "0?W*|^FEFl \_) ~/o,u1Q-OH=',BUD$j2kd먏Y,0@Zp@OlOP^6wO&0sښu?GKnbZllUD;vNlܟtDccCKy$9=LG8LyyvR Ev~m jʒYHL~,I(i$WN"d #I 0 |*g5 kЍ{ω&ʁ2ckUzY{Qb";>DuCnsܘT(Hh]eo@TYpI(ۗ+{ɿmdj [pl$1-K!C9゚S}j~*=ZbR ZOfϘT&qF?뷄xDsfjj Ayh5)J6"BGEK9 0~Jx*&/VRM")IX9W> psTJ%F|RnGQFQ=_¶_H[&oΔjf %O+lJT,> { ĥWִx֬HA#W*ʼnZxוIuȱЈ 0Eyӟ4 "9e&N#/!$nvEGp G,sөwQh2^zvYޡrGB$v~3a OU 11&gGv4LW @XQ0opzj[x'Fh+B= _]Z=bxsB 5SAQ5T{\ -R;@0ztOvccYRpӉL o>(nѣ=<Y&uOK<.0iL^,[ 5pS\$<c CL>*a8dS" 7E(/nt>Җe0c sVU O?5HQc@e#bI:;(,↋Q&@ϳ=άǯ!#͜Ap¿E`HTsC4\.gC}ER{AmkSH}S0,3p ymnᑧ_h ]R7DTy RD3#'76Ѷ BI/'|'GA9 [3R g:[Gowocb.*?6Ab<50تMV6p۽tD5w@"w.9{Z [\F$V$V|3&OjM^O5A^1+#׊#<ʎ{zx.X'U}@Jhm&fU;-n΢4^cK?&l0ErїCUKN` ư^ć"8鬸mJk,^ThROҹЍY!qT JT0pU3|T&@? sx|I9}0Hl4(pQqwBehaѼALB;!Fb7Z6d+zCX x6KNztaݙ}zJ1?$+T%T]%t1\ =3ez&`ވNEVMzC:7 EWѨcco2yWqӡ3m h Ri 8ە_o8rxz8{#7 S=s4Y\K 6w U'7I噔cq2)o|60΂-UqB2'Nݚkjf #9k0HjSUwFKۻn8L0;zOd1uJ,EIQZc["s(6I/WA[jΣL4`0(aN!4Q48žD#|dܚrOgh{0PL#RCT)nlv@J?& &u?t X{U&=΋䥤<TG0Gz dHX}з[s)Vum \~G WhF(iPP6vj-?zGnxv+*)GDÂL<8Y7PvTkxYo_EY܍rodeBDҋTA<Ib7"%>AR]Pd9tX@!ͼ &:@[@+ kn-GVIuw58Hy*B-A fnmdkm/]8LQG'6,R_A)ݓϖt$Mw5@]L۞a7z,; %}H#g/*g?#ݕ/+,r+"iv(,W^ؐi3ϛ1>M%yL!1x広Sp4OT3lRjv5y_6.m@#\ l dz ] A(8%㎑މX:x0MyG.םB`Ңȍ=체wПu@TJ9]"rN/6vh퍔83U,ZHWnzʞ׾Vz8A&Ye(Xܫ U1`"rb?I/# N_HB + Q! h jAX0z 46 Xy<^;ˆ_-:ۉʜQ8iSk\NSTDHCB.=7am-f.`44!OF޲!iY]8vn!u9ziut*xS2< O5i,c}M3 [u9i`CHfA/*$"7C`Se]mjSS9Lv+4=/IcoPrN&3`-R$[!%ĘxBA{`N8>AΦK>?`X}=s]=7|d-/{jjٿvZT6L͡ bP_*^4R*|@f-OnX.I]s HVA{Eh\=TX[IJĸx|Ļz$qnj>Q9p8kj6eJKg#1 jrB9m홢Mqgȡ:*t9 "G ;ڱ^ %fzg8ļNn0iJ󍃄.=՟(h@A?g1ʀ7$W6"^(^#do3R!;G3V9ȞSt-G32iv8 RovfC qz17at9G:هPYMb †&t N;c0\}6+z1%C|5|5]8* -mMi'j &2BwJE4mТBG&Ԫ>9fp4Xf1SzCwg`QQ;wV ܹҫp)x-Ax'K %iA['r~˛U*2(zld; y i䠘Ĕ4WūP6ԥMW)k k =,3Y4奄AB9V6l^Pcd_(j!f&d]M7vC[)>S}RH// 'l\#)"Lfӕ=s]4KHރ Ő8S =U`[Ѧ]B(>]X6O81uim>>x[[M rNXҍ!xnRcb@uU Gޕŷl!puB5Bf9 R}]m 7ZD5gzTI<;p}^r~\@4e }$oF_ma[SFÞ*L1f<"a8^CKC[v7ɦ#EC?>>2yyZj_xuMu)#IBa0(eČhC":"S&<̬ݱTG{7@]xw#y.siA,TcE!O\L ՠhY^4qoN%ot:?Ш(+E0“X!@bQ":lNDP#z;qS$j4!G7֬+YUd2;=o0ᘆ;]J3^1$(%avy]\_#iDja,][Jwu'w _^jL%Xڦrm~7R: 5L0 fy+q9cFdy|?ok zW"9jБU߆Lc$OjQCVX28{EX ­I@.S!3bޡk'T)Wp8~;Ǵ"$UEm⟍3T*+r3ӪږRb HS93*1:j~4ݒMqXod_Scӂn|isI{j g/f?x)٢JPQ.OpO2du&(v.$]9 ?Í '8@_HɇUu(ky{* 8?8ш&a Bϟ2/MY/5Qz7aAPDa7 ̦_6&1, %mgXqIa.r1kxtFҺ3y.u}E 0YI%ԫ);$/70ύoO%B?:6e*E0:ŹH.紥.O=~CX[62tNن0T$9Fws` пK"sS]z=璮+y?eoJ OҰZ6pv9m=mR'ioFy5.)3Z5S&w%S1 rQ&7M?Vo/gתF{uj~Rl0ww("#R X whJ*uo"Ճ?~0#Kgz-G;]#T}3=IqVNL> Jɳ_Y#/d/2a\C l ;}kW 4kH̳pr2W=%%qJ3dWty#3MģCaOT 娥s#t hNn7WR my3?Rǜv7+0}> o[7Q P={02uQNJCܪ|Ul1nTZ_Λ8]N3TSYS6&aF%**#i&fj +oqg\74v6@Y~0@=NOTo<K9 sRZ 1ysQ:wKrO8+#bt>] sQSr}F}N;yek 7 }9m>;Rn9Y# / ќJžEs»aG>m}j+RN]U{,x0Zv= zpr*cfTsB0]R4@_y]Q|U8qwbs[GL8BF8 Q{-$YrY@рTժKnlUoAϯ?>\!LH tw7 mW({чsh J]MxZVQ)74}BTt)b2Fْ)"S\;ECxǸAn9nS]مɹC*{Nk@ij< ,j%'F$Ð׮唜KZ5 `ݜ78&>,8jcOώg[hJ!oIJ^Wּ$O >kV\eLe d t!Z j?LGSݚ E9'FIi/>T6bJČI2.ds9bA'[1H4iqIxzXp C- E&Mx|$<"0RAx^~Њܹ t[)0Sȏ0cI2'~6`j},5ohiP@tM%QEUԡq3Wrj"6Hgy8)>FAaU_9twd4Ԋ|AG+C,#Nd{DL-h@Λ?Kl03(^c|(m1ajOIXj͗*!SwiINm/t"7M_,:k6lcIN'|iǧ^q4{+*'?ZRl"s: KQ/t*CLJ ȼS̏~ '/ 5O L[MQH̻C_צy) :*r|_=ͬ+? W򡉆CnY\ C'UbfSM;H'铧*f|=֓_[d+BT~܎[xGc!J8Z};rWGҡXmؚTgJ'nn,99ԔM͚WܰYT0",_඼h1opA FȦ 'Хݪ>OTPWr =Ŀ~:htxmN^~yL`-Ac::|OntxXњNɄojv͡L?KKk-+ᡑu-^Ns=@; zPij/SvǛ"`rXuT='f{  = aߧЍ. KȜdVrX4qZN̺ȇt/[\'߲gPK] $CWqJg0-U\=B}BPxf u>3Yۯ X3?Ef}[D#(uID3gy"O*,Ԭm|4Q`y\t sq("hFgfzz^TS8]\;? 槧%z1<t~d'^d4X;8dM֬؊h6(vOὬjɑ#g/[FFCF8ׇ@-}\RR ӌgWq^)z)Sj=H8lCs/Gւ}uk#>^Mp Chs,PhQd[&X*|a*[M <}59e}MGŌdgo(м<P^J^UvYF: ~/oꜝe!ؾହ 4f}gʬĻjHMu`]Q"S19w9MFbp^>Eo—INP';LI?ݢ|I.E9QKY CM)f2RgH%W*.(;^5R7),Mp_02 *MlA]>$X􉔮ӖpdG%+-ڋD/#RʩbG2 8tCq$(%j[-7yVa^'jw t9U%&H[JY3axreڵ(xH)V->R7)mxTI b+Ӻ_n.ܽͮhyAMl[^u@Hq(%Wۨ!@qlnӀ~l}7ٛ"g*0$|(ȎYHY5=P+!Q{b/@T?(t`DuSun :H-tX%B F}tt#d8C\2 iDB% OzވT)q漮9L{Wdz/:#>KI3e.'ߋ>-1D;qW) +$f rj#Cè]:fQ-Uj{!8c=շs@_m -=d]Iv<2seN_-CZ sY(  IѲKEh2I Ɠͦ%ToP脓l.U6uQʼn / 2"K7nPchsall߯tztd"i Vx~$7*qB_r(JMQ/* ܤ]b0/}0ohB Y:| ۭ]uı›օD bבxN ' p†JFjtFGi!\Ym+}h0(uO _ ,l/V-YV#QUj)\s te;S<;Yqrl)(y md{֎aT%+B)xz 9Á ` 2kn Bm}꺜oiH6gQp}I(: <$]}CT =8lM+Dv:#}1)#\J cU2ǘ-yJ 0:`'j~l__',;5we7݆0 ]0?dJ' I|C~P B,+{EqG@hV=jg?4$]G0ZEZu2 kĥA @[,;-b̈́|m>T}IMmEp&#F5x&nf& ؞OzJw3hgA")_H5{eC++WlnIC'6)웃&1(S3xKFpgmztőn;鑝[^WZ8^ր'V{%@_JD BW+;<Ӊ"5Oc%PɲxO7 a=.7y[mU؅K|߯?nKFv{lpwVq0i As 415)+` a yDW[^A}MP)fC+iozV&P fdOq&M_V=VPx(墠hw\,;WNWŹIO:$ZzE ~[! J_QSڿyLKʸaWCr{|E2vKl%"lm Ij˖>n LgcuH=]=>m)ώzk%1i8Xi飐waZt篱 Ǣ]8&w˯sEw"07[wȋF cf-y" [H_8;@x.]KnՌ\OZ^GTrX]k@OFum}5v44kσZym9SbP þ!eV %NR}"J!_@r| * r]W&F|$ﺓ}lO58D?GҰ'"x0xrP9z:gG]ipˁ knźxS3Tl(:h vL;k&\P!@T3vz w tJZhbrJDwrBPjpPGLMh0>[AVB-97܄M җ?iߪ@1N -f4Ie%G=AnEq'Cz?s֔h'$$}?<̻\m@萄ɗÞ5H5f`]O CY @ N~ŅtA}ED_.t"Ü|ghAD(w" ״Fllc?@`LنTqeђoo=m'F*HM>4īAWd{7ncF=_b:UUv1A a4Fn(tfH $ 09߉L3Y%^B3'3/Wvd2jBu<@A尠wS0EfK gnKJQşᳪ@17K3{vn4ݓG2bWVaĬ哇3ym3dz~H㮔ݫIt;]Ht,ZxrV>+'hilu׿I2܉fmbLR!FuMP‚  A$՞iOZ.[$2<<_o.콷B 29ڜQ5.I}XUc/HQc QXE#VzB8R~aF%)fe uA9wx%{H3i.L$QoT)~ΆT:T/gav_N`p/{s9ZCx),OȀ&28 X 1𮼩r" %.7@kzne?VVh-ڊEu}d(LCWqj3[Wvh) .}q*xhS@!?~0ZۀP~dmʐrs8&Ȗ/MX*,E9? iֳey эS좧$bVFuX&!?-8^G@ ^#+ <|~&.0Kٜ =47q7hGLt,:J4uV)sQ0eCH .h=h C7}b/nxf h2{p8w pc\>o ^Q+,=;ks u,I_v$ni'~NY1Z$LY0q,c]Q{h.Pn"`s&Z|PĪY fO R~+,`SR4 YxLo,ymk03 -+JL{"qc q_0`JhKeZPYժ} 4GIj#2Eo'#0ߩ]tzsz2JO1k(A–ܛ<}m%+Z59iBp@IP`IcHťmvL Y#%9_!\ږ!P\`%&g%+ 9Dc" iX ?5ݶ vk@Bl O^:րA:İlc-r5!% 0SçR) J䵽p8*aM%GN $&X2^@_|b.ҿu'5YIwxrC o#Jyhr1q^ Q$i9Fn~ٙJQCe!0e<"90뱧W $R93Bp]k.T(AWtƘ[hz2NfPJB6"%m/xZ%FQauwL8/6ն^_NJ쿉Ukӏ\rְˉwU\D2t@{/Sm;źMÞ Cƈ/:8%.n=R)Gm2Evu'iؤ$PWڷP6`[Y9-q{"1b}fOTHaf ]n=瑱;4V66CلfS[@]66 7y.ʠ @̻.{z`kŌ6 ZMw@Z%{B]آH]r?v6H<{/L7\Kv' ƺtQV&_ W}/xHd$~NēR`-“GxQL^1<]-,>M_VC';AMXbQ"tvS<cp2Š`|JwH⚈zVV rܐ]OaBWnTpÎ\KMWT욞!a v %LB 6y9HBUkBra Y,yKAR"V"r}$f:/ѡdFf1TՄSe<,?iXtM 5QMUeEl`1հ-ċ7Z{AƃN_lD\}&gWhDsZĬHLN!Ѯaoџq`>>r.bVeGN+|3`bLtie6Xl[ƠNU})m@1BACVtbY/^=-O~/>PgA]z]G\8-2#PN _ S?rW_aX?ݛLH*O7q`P#f}NM:LG-z`@=QɽX<zK{{^ފ}`s{Sm hyAcNKX=?hvqjcy듖Of6/dpp5Atv'(@{i: Rn37UWH`LEe4$(%Zvh a7.޶ P̅tL&@|'I6( ? ]!-=0+S}qGNdB`:3Cvcㆂ7`(g}TDz.D}c2PnC҅ ?$7}Vu-ѐ-+q>shs5G(!s欜y icfֈ#|ӦBzPrRL6\zh}lʯWkL0s`s-U~ veMC^@Sf֟+:/d(MsO~JӠ4hO[K) [.5)S.!d:F8X$͐5H(. |iZ  W~yBW.>j=?v2S\A5oݹiQH6p[)V <$}2AZKg2tդQ9;h۷p5`9J2[fY/ÂLeEKӟ,aaFh\ԣHH\8jeB"'~~vaiF)%^(mU͌x  JOC-Xy< gMj'{}+&WtrTI"^PZ̍#6 ă+! _:Qlsl arZ=ߧJ@VϯQqcu2l(}|0t\W2U5:wo a8v nUiǶ]&o%`9K:o|44t*qJ#OZ@>APXLJX'/s *s)"Hy\%<VBSX:G܈;͋$f:rw^(Ǽy8:O,x´<$=M#<=%ul*A3J6_kMױ}ݎʊ9\qݘDQ83ru$/v86j#{齿;(j\2ױxzJ}]krD]pI (SQS}3!9H=aI^.Hmƌcvߔ]¬BD`CinڮiyZ,”%FAu _ne7 2$Ӹ'K>d !`lr8l,=%b VȺm9lGץhĥ,l*zOdyc*B0>(0H(JS0델#s ϪF HܼHUca`0;iےGx|?̦&Ja6c>X;фj2k{yEv#ǢlWMctq;w1a"54H͐,G×ȴE=Gy-ZLD07!nW\RT<,EһOc&g o5lW.:wJ @Hrs2,VWWڡ!JH'_&ʣ K6UgɼFA' H9/DDESS}'Bk&/KP& J0:`$8~V̖ C.!UaT­؊t ; IVUf]:m.k '"X -bqJ*Tm)_߀$yu6a铤8nYSldzEr~d i =JA4gdŬz;-9ET" Pc 2աsN xJF1\ XzPq3 NuXĀ+`g+ىHXx_LdO^/Xs'`Id3f$us|8?> 8ݹ;+HR- RUJ63kNvz8q KƷ='vFY$jxh |旸79v`i1YC f`+#YwUO[oi8ƃ Ò&:sM8cUa LZplӬQI3On۴+3Т[~/?5ߑN >w):ۙ1W}ba#f~K> ۩' DL=c9MmOс 7Cj["9Pp!hC8Zݵ̤'Ͷ-r5uߒEә fΔ }R=Px>݌ 性osx&KJV޶]~a4!8`VW6=Ѹ=ZIx~4(_PXiOXD'x31eBf.㿶n>Q1V0-,^kt=R{s艫@8}=Vm{R4N؏o+=6MXi}MRw ZKͽ<& %His3QlyD5qKw^# #_%%%5d4q Kɑ'D#/l6E/*pMU:.kAuZiS81Lk,z:x(p5H~ \o)F eŠP|%;D:5E(r騌V 1 d*~6V?:s `ϔO=G @OaLfYRO㒿,/C+3jh^k${*%*rt-+AkŌfQc)f|m! 2 e x,&Zڭ%M0#{{_#-Q&P e’oP씸ZI5m "RQY{: 9MgM~\OPpi"zQ{[i<3~l#ۄ+j]oQSm;)[䥽[|۴uH߾AKnsPOƄc1\ML>iU ۑ50 US  kFaAGX63#AOw(('/PȒ[_KGsN?>:O4XF\gE<0t´ϋa-N'-L5@vrt$Bvv;/">A_W~1]POXt1^=s/ 2;󈌽zZ7mݡ4=KeD:M~01hjE"G+!Rc_t}4ջ& q7;D)f,jmkK>9)Χ7\qrN NҏzgMfX$F$hP"yt(XگEۚYxOv9RYgU^H=~A|򋜻{`BSL/pz1teȌ>X?y?l&W1I ڈog7 w`#kQCM>ZHqdz ۹4/IX&ƥr(|lz-ڣUQ{e` 1Ŗ߼'=zN㸿9zhd15(w@iji%b#OSwe; ?/Wzh29=n>:ܦ2sU(-,)6Es ev;zPPy<үV`:?Z>R&Ja4?hϐٙK B0ޣnP=Gܾe;"?_c>5zITIe]Tt Y*Py_WxY;P{XpG *enN, d[e{WpŊ.tU͞PCPkk`M̈́ EW=O )2xGЧl-B3r4(tR"$<9lwD%4rV+n2?k&RBЬ]S@8-cj 3 qT}{µ+ o"pg#7f\xșnfq*{p7կ;&Bivy>.W[CKIs2Vʹ81J']L|eg\U[ o9[wT\h)5 Fg2K`<[>HA Es0¡IG9eZiBVh`Jfr#뼿IAQ #4-#E$G^:_eV:xhXQ|TR -i"UZܯ:qS m/l9ȏ=h"áov]{,~Ŕf1KD+{5ZMG?*YK)AP 2l3{=&c|K4#8xY<3rqhs6>i؆Rf-DS;$T{a4[VM׮Q/b堛;e3ݿ.gĴ"ޭ|7.yn(lPú=߀y::?PgRÑ݄!/gmZvAbONԺ>xv_'?zBaK~kkЪM#/mjGo8Ppn' 8؍T?Cz3e*;( 0X644ڝy`nQ { Ca/@[O&46C/JL؀J^w04h$]l AA-Bk*XH;Rp䗴 rҞ#v~LE`47CS_hH,i%cT炰kG,MMa:qpqt}%OKAln9MϙrgM0UC`5e@ M6|)|gHPAu*Xt'qȖ=)zJM#Udԫicbh֔Z JI{D\.Ň"bp+*X3'2:yI) 5 (t i:..FWȏB Sֳ<ӊ>ZtTnbcf'nnv]q5P% /+J#VuQ6bc+507 3aqIqXiyo )YpĴmmiT{<9x/Kl(@F%t:~jx[YWj4\B-:^v5*զ#w%!gNqUI&< _4ٍw qe"Z 0ӣQ 8N3q<1nZ?l!364fi+pds 5ZdGjAkc{M( ʸF/$&$ ;\laG߆ep߈og&.&6x-PK#NJymVZzHm??^maڑU}s8;t\w*zJ2x 1^a3>O1Wdd9Lk%y֏0(8i FSvSW@ظd+HzŕTK;U?}e QN:&jiD-j+ FK %eӋ˒?nz{N&9b zϲcQ]Fs;0ϧaɪKl#Όg\Vzm#眤 u1EH-%7`v -8!0(YX63/6/{^HoMJ.obcN9 \AENhca,uܥ@`N(#,o ʔMF*njUх8Gc_UJ8 Aי=0B $d/m[y`gU$7`G 6UGZ g`nm~@>ϲ [K3﷔a%m!)k&ٖ~Ps"z9Ph}\Mtt`aXكBr$-b#$dӺ8 k ~_2:֢䆲z5nfSL+b˓t>z_#N4hJgሧf}pNi'*}i5Ҿ_i&w3%~Y3*$Blm.AZKuК)O؍Q T#w:9֞baZXc=k m>.x$;@ƶznCYJk_ضE[%M~^o_4M,Jz7oW3l"+U>[+RҶrLrlTu%7h- 㗕HnR?t's 屈6j<`/6a)S A2w5*ˆmCN: ^Vd~&yr, FsѺ gX奱OIJo:SB<,t?2oyD:$xk77[no_>R-7)b/}0卻SlxM/=vc]EQ_5u'S(e N/W 7),0~κU }H/Rϐ/#i>-wUs$1 ug >sO2Ekt^Xz/uP<5 KfM<.~}chq35T0/ Ym,ihiʘQq}ü"[M͈TSJȱvـ3kqҫCJ/l-a$ι$Ih]ҕzrFo#ksD?8\8roMI?.-,7;H}Mo)~$ A O,ypLGmX gsF) :~qNBJ "z@Wh)n!9z3sY f*>.=ҟ^d3&R[<~aG}/c?םO\ES\oOaHc^-\:ˈOIVA;n T dA2=cG4'$DP:_I/l*__C.:iq)Nrn!,f(1<͂ڋcmEl`qg}W*Q/.VWYhR@Ka9jL Ғ_zTFA0Vgփ៽ A —$3S`,y@:HCd*yd"k|ߚ%%{r^^biIbC0tH)Һ|,XKBN\?$ @R.I 4N?pX*e2t 6\ë|ܙ5'ܰT[²OLJLkYؕ"/J{:3m<#9qz۷Zz ɛP,g,.%dv1-R`2 15z:X=7x KCi@c'ܳm*N1ãP/sZ$"!h#gv.N7HƵ/ p.X쵯d,J ?t,[ s;BP:V %S,6:E lZp"^3JhM̃l3r59#w'U$TUd~]8WD))>?Au_X }QDЌ 5w(ӸYlTW Zj{bv`U-U %y)񳚮gue6xV ;n?{{Aw~1dWT̿]o1HK11+$8aX]U6r_^3QI;$mA/v`H oH:/g扏Ը^E`߲Q2349ğTi]r,A)f.LOJ/ H4z]mӢ 4fy[NJA$9Qba~9Mu;F{T:{0Rڂ<,W i[j|%/ݐnDwL]?wSC)y(kE!X+kؽ8ۼ4߾uJ^6IawF5 -2ִ aA?j ˄"l(#a6`8_79b5C~i5?N$]oW}77g*k(@'Jnsȟ'קj1={n泊P4D6Voh8t!OM|3!xXKf?G[Xo޵2aԳsI!_ˆ|Hp-DYLoH^'DG<'2aqIq6aEb}H΄j1ч`G-)J4xL^;j0Oٹ3<`{y#CU$T9'Qݹڈb?0 q\E899*j{-XJCb<]Kpj X \bc2Xnb,6;g/}WPAwlq-MF$wY=)zIXD 6&$'k4d8kɣY)|L2@qi,6pt'sB&’;B m}j3~.м}d:s΅FW%@ n#M] ʿ=T 7}3-oA Ebz,KV$[2a9fOoTQ7XcUsF͟9`|rQPf]E}!CB2AᔜYx@>Qz'-M+qz'Rutlf263az.31)h 4)Q-ܥKdzo:y$mKW;.vj 6qetq/%e]mJ{ \L(=k?/}.A-DĻȏ o):m$o~Mi|ԉXpY[^"|/"l(Vv"=_egd:";/oѢŤUΟMF$b܆rTp`s-?:NvqLȈ7`o(uN[6Jw3ZQU% $HxFc XfT͗v;`яڮ>XG؞* 6֊`PFZ5h,!${۟h\ SmuoWYdrUBECg S~:C-;~Gdg« $n#]_\b}P{]~[T^&(hAQ jn]_&.c!5V 6Zm8Z -A2k-XuL]KOexľl ES'>!} ]̨/m? *CxzyOmP QO^뒉hO̷&hx̄=`Ԧ;4.5D#G9h'&0xG2Gw&KF!nx&nHRlD3̱׷%xβLq#Ӈ#(Tb%X9i`AS1_f[TWgxn8_ņ#".K`72&5L+N5i?CՕٽDWޖkrࣶ*` 5ֵ*w33ᮢD8;KBDD%9 $߱I:E&ǯ ~f{%Գ27U^YNjI|cVLh, ;;bE ,1y XavE!X2s,S~z·\*]ë DR츇DZ^Tc9E"<-t9f]h=ˑYyuCTٵIlסEmLT DF$Hȿ}Kg]P/.h(IfU(7NAx "KcU?≕##RJlay#Acڟ6ِroLJ=7W(Z+4DYLwFtˣ̕"0﬛8رBN#)$clKɨ6)w&bLht3yC넰4!MiZ պ0cUНPXҥ܎e  p)@8$n'6>tk<;IAJuQX0j|x׈ZTsդ@tIcKKf\"wIap\1 !q ` gЇV&ڪP ^PIVWspf4?p>^bu} A2>t6"2Y6Uea3NJn,E Z$QJ.{Ej=rm1: 0 `'(|3\/(jV_k+1 W_Y5đR0AXJr^`T"+cbv *2_ />ʀkSnwE`MHeY$\ 0i_%vs$}~$ ~D32AD9P 39J(m]6\q6+{z#pƗYiUUwن*Ms" M;A yu=%=WgH_w(i8JaG(Evél=?8Y"! U}+ 3J'*'r_P?kFp(}M̓igV!h GOh|'\S+t #O!2pq fO0(wE,_8oXpSR&U00ٚ2ʗHuVy_C{8f:,z-!>`v äOZYnC4Ҧ%#M "rS t]w?pvxmR趭v0{=BK,Hw!9!deu*z!$o)ؘBs. NEQ#O\oR]D[=Kw޺#E(eM3?+VSZ1K;&+Q Q $ dp{~>~֒Iiņ̕{lnׇ}5 MinϮ{4Ve2ء^'ҹ3RS)s@ڗfbUߒ?Ш0KH;7vm?d%yދGD%]+qLj@!Wr+~>0*_[<ʣ֕I*D֠Ay;uVH}FqW'XfswϟCI:zWBe[}5뉃yEy3n=#8L޽8IaZߞ,2Nys4{H mNu]fIkn<}Hɩ<$PNF6Iʬ_2܎[ R6}_bT=([H*&-F1L`/W(Y<lv>L k%Cgm<4`Vq1,hPL]U Csff WVGB%;o (@=[Kï/@/+@[h>DxԔJ.%aio$Foq0%Y7qQLQWF2Huuhq GL2c$4R6 ]V t†d,r1ByH),``KYR[iLaS(ERd$W2JY(=aV^ˏ1šrc^53Eƾ8XduۇG}}dGTe|YDF$\Ttȱ&W?^6+TNDk|?Nth⼉ md0 hD~y-Ԍ4hӍNKOA :H*)#Pfɺ.qeR'k'6ܧ{N%f͛%z ixr Ps"%ϖ3T˰.h'%E|m*3^d;]`Q/ì#!Gh :, Dk F*$T ]Y@%̻?%EE+ڈ yҳ^:b!_ʪ 8'"Z`?2$t#.6!$RުlqSNQӳ1O"9_ffn9E"J'U|5r iU iNޱltzB 1㢃㔩RgGDQ *f|6 !{pySeIal>â~'6'i^n\l|NvB, /Oa$OdA-_f2 W-sai 70v l%xrt` z*̿G긒SY@!c"&IQr ZmRBGYUV['N?פWVsDBHߧ/ۯ+K3l%Xp9KՔZM '5IPQk8qP,K<صnF,$O ը7ٗLOMP)y>f{߃}G#'q~Z`xELӔ^s/~r@UGU$\@o |^!}rxPM U;0x8>h~Ș|t%9 xD""xq rJHT_8O~I0f?/N%߫J᳭`džD#:x|4JxB(X,Iڈz {h\au([9dL\o2L /*14>?`Ad 32 y`mo ҰòN[' c"El}-6Ь~GL㉗(Gو}__W~LcY%o*[Ls%fPO#"H"KF6c|*1xY.H,hJ m oSJf+r"S_VmtM@ʩ,,#Fbkc(NM#ՒQs]E(W+HA&8->xjJH*ޢ|vm&Tѹ;%ê CD`8@?H0fm(_҄A# /3BYoW-f^<#qkD=xbl!*'\0E%cS '")"+)yC^s$MK nTn>Ia%`A(ސ}iUpm=UHhUA{/Ќ|邇+@_}koyhaM{Tl5t3i cyS6PZ P'{HaO 5bFӲ34΅OƏZ φĩa87s^Pz\zQ,^} F1O,AY Js{o4'r؄m$$? >dkd[9:(",v1R-A 1"xi6>6:JN?ڕHAs.ZsVu h~fygZj. @hWL4zx!La<'[ERM"fq,zBK#-û &SkVe'|$z%c!Rp'LajsBqvVDģAsP$/ޛm,B7LKΆ"LF@&Ukɿhť8 hwWx1}>gbd\0Qa׽T%xT eV@\[*; %jUoʠ! b{fV+ڽWlD UsV glg@>>EZHd@jR{uZ:8$p_xZgֻ(D{H?ӝ;5( P;t"J.fk?6o{yya~X8Q UeT(YhG~t4Uzb }$cKČ<)[‰K .oY'L 1ixEBe`Xuj2nh{fh9l^ q:}<"4D G<9]EA?_vügwQ͙( OL~|oRxGҁKCs$OI{icv+!n,~o9*~ ޔ۔,w=8Ҧ#F`mf$D!نfJ9W7ۻQl#Ն4f",WϺaRŐ_*B4.XRoJs8̖_'~7@ ierdxxUhŃ| ĺV3{KC=6o(ڠѦ 7S9V!*-?460>l!kإ߯dfbXJX 3o-O^)fRbxS~3ePH c|~1Z&VŨ6ss:0J:m!,,N0/ՔD97[WX 3=qvq?Zkp}Mn23i:ˀì9+k/:p7HiRXK"gp:g⓲͢1pJRzl ~ !BP2 w= =z(|hEfhk,trǦa .#QO0pmTsDC{ȯAgX7O'K˒סX (4D仈&gw|@PLP\  :7 sx+? L(na~/,1|*R̆iLr@nPD FCD٤g%r! ,1!Yl`{S#ؑ6KM*-+'u0lʗ_B̓."NWXQou/Cʛ用-jZ_5BOh6+=XxUR ESvP77O)x?5~I]9"IOUw8ySu o*q=n$[jÐtz\IHߣ7?5SĤDu"/pzK\ۈe!K]1jCGhJ"`.'qxbDc)v`_G$9wGؚGЪɋ|ڇ4R%A(䵚F޺" K2VK%2Aw~Uﴼ۝ q^Uzf;F.o(txZ,$~TL2YsɝGAVg6z[3Na/33g'JL!/CW7rRR׫;ƎBl +bCضZ8՞tcSOwYgWӿjqr!}.5tN7`x*XMM-RTtsR/ÿ/n #@?5)=9\5m&'Qkf.a!ު`\蕯 HMz =ÇA#MOeJc9F@}Z5P .]EHOhܷD$Eu۬WMnE w^]~1ſ$o/y`MAY:A\n>ƞI}۠O_HH[8#.~KS8QAǢYU;Y)Fze]*I 0^"Y  A[c{/s*h3xm nƪ9Pý>]Ԍkս9Ø<=^kOAmF}a 6h-#10ՒJG9tx&GfFPD<s7T^32GRv^ڭE-c.F>[pC3uhMm ̅a)9ty+Zrкf6$VJVrq\:Ѓ~j{ɝpt3Ia(z5YH/&㰅 ,Kژ :=B ~jvΔn* zA$XgP-b&@uBԻVqU{a6p[b2e[%)mGv?oH8/8ݫYB?;ЁpŸfc`dArs*=Ors+`< 2? >+` 5JW}ѓ?-8BL̡n򋴟 <3/)=jmX`4şn3B~4@#cJ1ۿr_%G]ۦLX{WH_Luw$qW=^U Btav7-jI>9}ճ[&g%s=?p!jeeJܓ|JAh)i6ӑ+ XAӷpqˬVngSg>ҡ,~Y-##jMٶ%=<,aư.lsYӈW~^9hj-aj|ӖtԆ􊪮eA\_:b_''ĻU[gm6NjxD\ֲ{>;YwBײR. Etڵ `u8Bd[{b'yOPC51#.R=HEt!;F``;!ȷ[ت: rql!Z[&JH+Z'»t r#L<_CSIFmKJԁbj _F @78y`V{ f$<1h\_ !cmnv/d_ɧ Roo)9ge3+<{5ljksho7T':9Wa݂dn,VAs`Ã;1evaIď $CFLrTgnˤiq4_vIwTu;4쐀hybdk ɌX} z[_E > Oਞ*6buޘЩ.Q PTl.(~-׾r}oUo7֤Տ$S=u炪q\WA;up|UΩ<~Cg,+!itO+E<~i>P|ˎd| ~F?9u1%o;B8;T!a &c6p79kՙ1zr>ZV=V.4H3Ӵ`EF?M4uNi<lKDõA*W3w+6w1$5'=N/Q<)gEeȔS9 !e|@+0dlٞ=B3xZ-#kƾG Ț6^=ly~!JхPh{R!fK[f9 BY[s'+NXbFK:foI"M H{eBBFۭ#,mKƆER=0ss& Y=cF)+h_GdmlH\.l.cQ.YA#B)Ύ\եCVpx(i5%*'-^,U%/钨>/F:hl!|+,6_#bO 4MŬ1M|GSYD JCװIT<4eE6rXnms)IVvpg]mX;hzwiK$Rނ#|T-7wa>gM d@:=ۘXB.bȏ %av.K~ E ~mc3/v,:eVrSBz=>n"GT/WOP:o|sE NJ״ `뎣}isc3s8/?#yC2MP,% \]^ruW> 3+_@BVHWgn|b %nð8QtWB]Uo8-r%^I&?+9o,VG#K7꘢ )E+5KJz`ISm{E 5?f<8:a Td*-4l0jѱon S@Xô~J4BRřC&?@G, Yzb;QN.EjMog?P?NT ;JG[nxvn-`}"[]=&rE !KFĜU_2i3.劢gCGߺ"M'CM7B^6kO E"q6t;Anԁr ŖosZ3ӧ8HH_kA%j_,MႨtu٧|Y֕{Z9{bc@J7P)[ozEk~I*5xn@3]""5 1tv^v괨/{õ ?Kvt€\ZDzOb? 4붢=0.:'胇yjq=@:*%cA;%o8[gWy zQshAx;F:ۛΎ(_'@o.oT Y^[,)IlY*Zf@`zNuvնp~*('iŹHs7(. %lY@Vove#R xD(o;A~V$XT*HlUʤ,Gc)~'"T SEysa4QaPXR+xͦ i8I -wI IFv- A,.mvZgwH䶢龇ωk8Nec8B6hd=38UܞI{Zaipc\TFs _&ҨK9㺵 j X,ǺX>dÅ|lCmDHPB U]T{&XQ"B/~(hnǻ$'D.Z'R oC`[5w_HRlh<ӕd>]p"94y1SrZcc&?vdנN5 4LꞠ_0mȻ; 6eHl]( H틓dΆNNkt-QqB@m;J[Œ!K"А#F4?5Kkg YIɑ-0Ylb3vчΜq=mUHϠXŧ7#Ol$ $Txsٲ'5{H3߿!"LUK׳H<Į7)adу282A\vxSſ{@"{t%%ַ j4s{\rNX 9J͠(=㴉f_ogTVwvad /9fGQy~YVSM!!'D( !3E.)qt yaN-fߐ*I`1@ /G>eo'ˉBMSPymܬ3X29έؗNѯWb_5zSV7^Q[]T,[ :Dnj *{n ݅ ܫЁ._aSM. F|M!uX'5]Ae5̱PC4}y]~S*r}-7twXpQ g95oo$Y>8#${Ku]*Q ~j!)-9n"2ig%#X୼tC7v!]?H.况}(}#6ϣ9 Bru]>qpAw Bv CKƣ\`kVrVoGO I"]]/{F\+l~Z*ϔ hlEgwI,.BӸx%0u|j }]ƝO-H8"_K6:\/( h.f,!4C3u70%]>[Ҫh a۱>'Ѱ;FC5a &0X;{=n[_~YE@e.S1>h4E7vVS5JF'3O=-Z}tleGZPOT.ܐz/3F-UGJ5ؒȇ\_ƃ6U UCä1O*IaOz 0K{>e4$f}kzn̪BU.)_:֎!Xnm-/۪LLXdIߗOK k#3~2iE*U4Χ=> c z$/_Q JOa`1Q|E;f:nR0ȢاAyŬA!\E9?Pm 5=#Ь悪ZpP#46JK;SeU YQ;v$"kcN#셴=1J<=_qv 6q/8F8'\Bۄno=IJ|%>S D|d)Kj|U#ۍ̪w[u> oœrc%od!0l RZQLZhԂd&4tI9c Qɩ6ͿY4Y0h!);+ IyGcCrMT o` ;J{&+hܯF_NءEe_lF,a[P.q)w|?D"E5=5GM 췛4laF99t|5jYK#tEڽgRNL]Y}}N Ɉ&~8)E z/Nnv;c}Ъn=8+Yi"0"* CѐnoSo]\\*M=jHMZTD=OK#1R@e&P~r1aFi&'ɃʛFC\nĵև=kV\ڽu笛Cvz@2vK:nwy^Mw[QJL2HS6yɗטR6ĩf}*pyWBWkQ D(Ɍ陃ƿ;mƘԒXg U'2ui>VI1Eo%P֌}Jvn' 0_?]ԣݎqg'|p(EA["+0J%fрVJ>(NGv"=M~lYybie9y(ޗݐ,l脃+x%P%Bﲊgu-KȘ`Z~u[n¨|m,U*юr1||ȣCQ~QQ;9OvWQKm½YR/;}G<\_4_*\Hw2?< Z8 O;@M/A{Gbws(9TCLogVg̹\2ȡWdfh-ō)Q__FiFQ#yzqA@׍!,j|YD,nb'jQ./zZFq)ki [R l\Vҁg4WU}Dc@qY`ȧݒ9%um(6SVWXژr\.(JZ+NFdUwhP]Z$ d>$nIrfM-d1 ;)yY sp=#2.AӈiOl:]R,7tozܐt]17ɱ UnY: Yܦ&}Up)RHVs+6\/{dKTqyX(b*@`a ڐ+M@EcJvya h: ~ 7:#51ZpzˏDY4*(:uM+yqIs[+ o\cCK)Y+Il+ G9 t2u:| Yڸ$A_gn95/kO8dR>N%m̊$̤Aj]34Gdkx"wj?rN%9Nwrݩ?dFQyNv Gx;xR+\ Wر/rQ~婱Q{Ĭ^H@H?_)ُEvŧ°6`G̓&IE8tE&o0+bCgip<ZH|`d6/2䟬!2ѺT6,(dF`'5Tb E+ VB7~d@ͅ:NZ~ O=qb h5i"e[qQfق5T-<[X<+T>ukp7ީ'V+N~h/>[B(P6agbA89ɨ1md>87;l|yY/tS8w-ׂEâٶg S4۟l3"WKN\vlY]p]".츖kxDXɶ_hF 'w}1Q(D*G)Aˀ"n%_Z&X`bFk [Sr@7>u۱oE#55 K3NVC~kiTD]ml_qtB!P@k|i-h\m=$=vN`>lXp>'H1!!楒Ԛ~Gá$Spi+SWDKDrϮ3+ww$Z7N[Ȟztꃁێ ՚D'&_*+0QTY07VR31 XU75/=μR͖x_r\4̶UN_ouS34ޯŅ h YoHԑ.u㙣5;^+O8 5]ÌA(9Z&@j| d=>B 5)AU?Z%\@} g.,ٱ|Hӈ^I`,אP، ԟEIđcȿHdgO2W4Rru#1_LAS uemN57},NWQ~AG_Թz'i f3}Xd`,E|MOi'acՁ= aߨ c~aT-F:r>jTgLF7` u,-&ܰ2YLէ=c&GC֥5"[^Ke$XٝxKI%]' B6PkC; (vl8,79vGTN_E^؁7cL2lʽ2mZO} rh(\cɐ>{W9[ -fC=7Kn!v?ZԖvytQ`6b[A&Po3tN Z b!kSAi~j4jTS9(@@!Io),?'n_5Eԃ% P2Mt,Y^(a Luy'q~A ,(f$(ӫHbn)-$}!͆(|EVe%4u+& Y?^Y"Lod" Bu`7Q§k;E|nr瘎fa92{ØaRgY|wqlBU-/0qV{SG9=9g5赣ln2Vpͼ V#̛<M@ycӥ$TjL_)lWXx$C ?[HBٔg䓺Gڼ 3o]|(X<1b>4!@{-:|X64$T}u~oNI}U>p jǰu+il ? rdӵG}_m<004!kpX($'!۠AQ%dEq뎏ILC?b#} H'fAR!7T`B72Bi![  ̩0&MiS;<0አ~o=h^i?!c)4V55- ;Ί@^![Zm2%IR8HgF#q/Vr|-ܾsgyXօq(tƺr"_5haξ^RMp8Y.'Xq| aH*+lÚm#5Ixߏ2MK& `- Vz,}brËwx M{?]jE&fT [道>⥣v'*!Ѕ0>8&%H&V lM⛑Dr펧E,:fL#'T 7} @{|_iD.$/#^7nkm[]+pDNtDJԟ [ἳHD"U:BʥJ? dK?# 1j&=د7!^®^Iݸ}pZ Fg6x?5ʴx' }?`@UU{)@c35Zǀڨ0ʹ`G59b K$n呾֫l1;y*ËUHX&قQ?"|;mL5I& k?.Zn_{KFBll201%t $Z8_ ΥHXS4?} cWߜ $>eL/?n (2_ɶ PxS{J̟NPm2gVN\HF& 9?t4ãWtSwv Ēsѳ!򳹹L:cHs?/ 7EPϸ>-hL傑 v h Q:/J*,l/WC TQUtܖOYLl̚H컜p^>qBab?o#,tV@\Ɨ -tpSc }&*6ͶesU^];7sBk?6Q-?td~sE`yH rv̕ " A ?(sJJ`r Z+kamr.jGꎕ jem51e[b`.2HVHQn YQP5*,wf꯮-oч7%TM1U.9@Q )+(;Ȑ)'  ~XAčkVfptKNN0}6Mujߴf[ш?E~P݋2|X 6IĔjMrD-# %yMZ*85ȽDL8˞ i#.c 0\?t)߰1 hG^3bNA3bAkOrGFޗ02UBLzvv}HG TlԚ-I.h/JPz=Pr3݀ni%3t#<Ԑ.0 t4B曫G>m?δ3`3kR;gdmŽ~08-h";Y-_!z}Jwuu~[ VxpWJx[Z  JQi^X:mՏ e[TrsTC^Q袎[KC3 f}Ya%ldxEv]- "3 3gj C>磍MDCBO@f--.k(~]y"=x3fa1Lz>6޿~(ʸr<6VTk @YLg 6C|YkRt8ըQ78>*jѠע ɏMLn6]#-7?){RkR8ZԈ[ίRMzG`8EN>vӯp 2rt.Tsr"T͚?{09Ժ 6u*Ta tGԣ\, )$ m!F*8HuBJGmįΕlfe$nVR EБE]m @vH|^u .'rޭ#y7`]`P4ڧ}U$c>_^48FLTIt= K Y_-^$:D1rEՉ֯75(lYL<1yF7^lRCgaʼS 6IWne"#u5ATjxٷ_u8KꧏaAY@PFJptysS-Xm0>nOL]!Dհn&ĨL-yᠷB,3r`}4P- 苔},n۷T71Cd[|eH8Z_DZ$c K ڞW!VU1I(06fX'Kh rgm!XBW3Wev#*)_Qj^79RNgO (!~̪ h7- rSc>?1p^-L1j0܁GS $} 1k=!0FÎ5M +NYTu q*Wr6p:۶0MlGG% %|38%F\a }cOW8m]{蓹 ϹeTC@1]dMM Ͷ?"9 %:&^6`޵yuooقe.]PΜD(|!ObPw-]4 j[M- SIpPx}ΰM_ MwMsq,O U$#d Ojhst7Jhmc`9),q%F=gє#vXo?v/_~K6vel7|ry@8Ta-4<]w>/+#|aE uSL_92 #{[:H CNK蓦Td>d(K  *,._?[e|Ŋ 'Bz ]cEb/;yث?z:bZ;6II_ٶ0ׇ.ρc*ߠr|ԶҚszwF6_ǘy⺋M~hdsQy/n8{x,S}Z/yŅ=Wjp y>O]XةiBKn N\wq,,gJ[IyBxfD_|rߘ:gS*f9WIHzG3_d ό-\%-XyaVd E̓%s> VF׍tvH:NX/9!H5f̀c #ݣph heoGFU f4/eýEL/kAyrP%zt(z'NH[Z[3Ũ-YpퟏV Um&ژ>M˱'p`'J9 9F'{%Uʼoe{h!)u!X_;'W_4TB,=!׃(Ev;tY=<&vׄridI7K6Y4iwEx\Bb 8In2S?/+ +E"/dc!7nXj6 ^h_Uٛ a_Z"ty@ސ,PVD #¤؟>nu G[YWYce"63>7<4~BA2P0A "˱\ņS$\!uZ! R(R*b䊼-nh+>JYF@9 PSJ Y)|#/DEgt2Unp{ E^H=gx &ʝL&7ye&Qmj.L]kʋqtzüo2"b/S$~i ,!4!zsM80pC>BPI\pݶS$,v(b-xIVቴ$~-q=f#BmaOQK( ΃`f%;+8N3lϏn=͑}EwuA1‡rd5Cvb+[qT!B\[5vFNC_.OPk^oZ[hh 7x8tuS$o{=3u.U2uܤh巓=@5 :+ٔP:ZY-B%bJoJ}+}^F9) vHux/Np%:pۍe5|ljGlbq˥iӨ6-5 Z0UFفfY-/o>Ñأ4 k7$^Ȕ$fUل]3kͱZ^u;۟&㩚\_]֡A~T‘ifSx}E g1/.{ӳ,>>JV.$s ' ڊsg͜(.eiU<U\7ǝ*S?>CG 3q*F|wN| Wuh^Җpyv $M00oiW9`h.d>8rl5T3>gLMHV >N pr,>R9M*etF`J]T,•֥͂8׍s :PA"؟2S_?]N4.yBk# D*e<s)骈q*}'7Lu1t?Xdq~+`U>.ʜ &P줸!db7N|l_\g]t3n*&RM[+4vRSРYIυDSk%=̍qtL()|0dkS4ElDA?Ih9җ}KĜqDO*&%'2@̃k[0pTYsIYa4U[2N*._znCe9]pl-ťq &QI^}i*K7Y9<'TaѤ-:sy$z1hLUᦈxլäd}GZ*HH6HH!hT>opaz2[e}t<&53־(+3)\,EnTr߫\Ѓۄ-0WBtb,|P0ڲ5_s-$=!字^YBvbtvHCtV'Gvei_83?Ϝ4obwI2OF:)ihdLu /18L#e"Iä|tZo|jjM*/Y]ܲ {uuot:K:z7;R>5Q;Z5c#$Q\h[}k0|/vwnJ|ggZ؏,b*>Ew@lcRQAZqes3ۓ)MtB2 1hu-*U 8XEnx^rÃA , WJI^iſ:x< %H|KO*TJ`zRz uk0`5G)Oz|ueV +0 g(̓|O> fK&X"6-Cꜻ>jΫO-دET ",U Ɣ? ew{\܅ōU/XDUB>$bqJ}p|t/FƮt1Xm {1j6Fqκd KU!9f HjvXڗ}j,/Ft#QκtbLEM$+_?;21 ЬCǃ7a+ K]0`0KQ1 l*BpB; E b>]xQc1dL^dY.C{>TZ d^2P&OW{Y}~ r┄Ȉd+dE2PH?rCuIcNJs\rmیNp}[D]xQtlJC_mbOfW(KĤ.i͗ȵ%D&Pж)h:n7X;[MMup<8y<,ſ 1[JR;~yBS7ti^YN\!׈hKC  Io! rV渮ZgQr_|>\"Pϒ='~`/{mp P l<:RZsj+uQkZEZC4⴬Ti 8ax4@;߽ά`=lLy%v-%qn2" XBl @-:|sLe Ɜ'#'f<<i pwoefzԻ\r*% @S{.b 1`9η ^[~7@pR?8KwGY%f5mq{=}T:StUVIw)I$<-댊Iijtwy|ՋQ؉Lrw3Cqm:,)sP҇UG|\ˊ5ZD#^9;%p{SG>|'()n ol Й&l4Diw˒ FWܿ' O*NHȁEȿc VQ4h3*U~t`&(.qvtI l.sCS`5FzY gO0a1k{~t^mR7 < Tt{31ӷ/q W#]0KQľ.r[;d.+ʼFj`B( f !\n Sl" v#CBIF֎<(B!54,'AlzYpPvʚU#{mJ'Cx{( ZCR`uYM N;n(CPo(/O,#$eVr 7x,N/;LJ4e >D!!Cep86c}lȴ"˯٧Q!j*{+hT,Ga҃YAZr)#è$EwtIn6Ng=(TeQTB`ni Eʀ7rE %ҀcE/`QS;IƕhiM1MOS9͗ᤧAyÔ}:oJR&.A4{l?ƗEQ:O5Q !20NQói<`W!oiVմkD5F'H?ܾ&|釥*gwȔσvm wFAZue>~{4'VzM1'po[GBU~ W45@[2L / OQȽ{y@V2rn@H1~},2k"Uu/^`g~y {(_FNRs͈,ўxe_73\L)+xLp]jH! A= џtm>g]A\EEX^jR T?r [h@^LĒ~xAo+0L+;ׄv9Z:0'6Iz4n/䅠f2*@UtwCo󮁘 C[cF:V}6Z>X tdϮ|2`O";bPrbXOk"fw90b/b",M!z&[9 VWRAiRXyW!#=:i/zXCR\Ʌ<_~ԅГ-b᭛%]% 4vKHtr0 ;WS 'RwP^O X0*8yWx>&tRf>/]ٮIXG[|#tUծ %/F)ޙiq~+++ys˱1W-GIXa틕!VG7UN“CyZds&[rR9sIM/!ӨFš*hZn@&5Dbw!tF}N6Q#tQ ҇VքO߀Ymv}tXZH8g2l6L+} ?w4bR!(Q;o\tiE_'NFEmh0lzι5VaQ^ ƳjK/@qmצHۻ9:q[`鵌*ҝB"AݫЇ׻~&x|+m~KddcL 20&ϐ] ! P]An 2j%/(f䈊ضo{ 7T3gSݙc~OqNWu]n 7Vj[B^Yє^$^|۟;!vz˜ 2{i$Tzс"$d+fb'z|<'>_>'ebۻHp":vHo>*Hyԡ,^="Fmqj&iǛ8*C ` ybi{SfA;{͜{rYa_oKe1YӐQ9Dkcf8L1e/{(hX^9Pmf2DxDpxZsMpfZDKB#,qQDS#]کL"<Nk<] ܉hq?}v0CtJ53ouÿ<}|:'%VТ'0%&n?i Ho/IUɸd=KN2ܫ=C$^Rekx2 +PifZ-JP]팽΄E sDOܰI~Ż_ X=?*\/_MX#`≓V 駨ϣ[:"TE"T7U鷁$XxNXT+fJqw+|/T:}T;nyI#K/P ڣ~0eYA!H fm_W :rz͸J+vdMt~%#'3CŠJ'G<p ܌kpb8eh%@`e-<q%xGC݇YC!z̜СfHlJ&[u<~qh6+*=%^}P p̸ В rOFԽõ(W}*9lӇI%*Y9Io74 ^;MZٍ6ܱx;?V,'/,$>06p~:FvCP4NPK:xR3ӆ[]Zbr_gė EcNk4^n.eg!!upW10'L Aa}}J= R)zJ 8Bk- 6YhR]~ն9x:)l:4AZbz@8z}X#e- rD]=Yq+ejD(ﱓmt]E4)Fq8XTsPxGuI|& I:^n҂gW3(jhmFL?YLIh|G',+i "/eZzǝoF@oJtWKakXSQXa]mU͕vfܗg֡2U>ZT+6Q\^pIi rZu&-nB΂[Uik2>s3 ``yEeŠ|Wle;ESǛZ *E9W<48aղE'c^*I!x@t>h~#s?@BhtW›N-rwɋc$֢r &&ѣWb?oZm5~TC&z!C_b [#g?ɐp% ls-]" {tʗ^f?VSEՖ?]I bޑ>gELlemq^̇4R9zN"<9`OoP]')8 48o+# ]^ 'zz؉ke =ņ\{xrV*e´9>SɚX L /`rͩ,1yTᑿssfsZrVIHb)' tɣ#W-aHލ-k4?¿wwnckAM,\mҭ 2t Dk E@VhA!5ZZ! ;޿O808vpc\~Dꭗt{Io[$rԲ]>0f5F؏ cGE6*󳤒>#Rq/&I~h]Y*;Y']. [Q̗Z76o%G.G3K)JEDc e|җ?rR3/IʄY~( .CNБ'f\Dcr`ła#DRD҈0߼)*ˮYDb ` K:SJΙ V/ՑXN0mRIUPzfá}ѱ>S 6Z[t|ȗ& gU݀<6Rʂ8Ø+n u3rҫؐ6:9l#Yo޷{yN= s'„Ht0H w?+<>9,zWs;2\@*%ιJ*t =)I|ݘo߷!(爸!$C/ӢyM+Ʉs-C{ ͹YdO ^yjX Co󳡯:mouGNΧO5||"<#rJ{ަjaLْ?$g友j CQ-zR9hxaE@-s 1KyqZPh{]=.}\O G:M觋]j7eiTMYZ~.ZK |(Dw=Ewd8sxXey=@@27C+,qt9t^w/ ^?!e3WN39>b.Rtrʅ1ӰtaI\.nV __n F"(`L0F${ ֢{{$]pS]DQA-3R%ԛx(۴?bOeQa{ rx> ;c!y+3l:?@b-~v'lf{ z uzo_P[q݇*U wwԴ)0o9ɐ-?.;}J;%|G:-x)[:&傚gCf;6"޿KuK%/>R1F; mjKLs4)adE6_v|in/7хI>48`ZVKWnF#4gu `9C(&YTxD7"etX0z ޳vhQD/ZO`v``Iٿ!QԶ,Q.Nc3lj}0FyMٳdߗUCG kߕ)& a @bsV^RUtw5k~$jSkDp>Y P0w\du/&h$(9Z[J%`$z)gQ-39yct拕| {& +!VJ݂0T@uh.H jS1kb_߳!Gď4tS߭ZF %oʋxqo''m"Q\Z35CôkGFAh;gEh[-|Hj"Akqq:oB=ơeDjIDx "+H38x}mH<>dXUGI7KQvL{Kj8E_!-cn؈sX4M0|b}_Z]7JSP75tE>ȿu&(_-8 9Xh9qpT{{HQ TnJgn/ q3;l:M'f**\$'O.qKbyqQU44G"L]#cGBxO&T&;)s ӷ7>o o):_ti&MhO):%u!^_s :uK :d :pTi>F\yQ5 ohHG W0'F!1J,ؔk$!"!m of@OJ1`'+83זwǍ6;TxH3;UDcS6 E ?/8xFvLڂ0dN ׹0HbYxmIǫ1WM_㸤~|z[[2#}OdnB@0&Mq_L`)V$gu oyR}"f(oR{|3f0 )= R]2"]XysIv>fTtN%/0ίB>2w2< @ O]J NU R)xcN@Fd$n:]?a|^NY2?7RDa5fRi :RG*w,s(+ Ĝb`jA?ECIq٩>/u?ޤvx J"$$%Vɓ%!w@<mہtHx?Q # p9.b'5U 3keح2}7ȑk0RsTcÍSZUu"Y*oh*$֨1 *lh{VMþZ?bJj`zuhKa"|h@!EkZ:1:a%='P'/N2G2%pӺ;]Ak٦ aPg#Ih)c05u+Dr? Q}0@L]#}ÒwQ-ܸXYo4V 6DUoTϪ݆r@* \ѻ=`F8Pc!8.P{XAJyp2چI kyzs]oGX*F*!PƱaC-QG2SQgO+29WdѺVF7g#,j/Yx?CGE 24Gv [`NlpPnbc޵ myu^P5Mݩ¤aюeƦG__I)14Nw^$eqCOm_0%ج,7hgzp18(^(]uJ^=xgAWy/J;DK.-AB(K#nuRڿaJbSU(ԛDeU0"Ǡ`PKB=v:g#v)ZaW8i@WF] G9 &[#̊Hf陈Wb hcnc3Vw(A bmݢ0Q֣[RZLqSU.2 w$ 5#QFHk/ G;9Ƃw X2J{m ܷŜuHLxι6GTG ܠu_2O9Ҟa)QmYؑXy˴_ SPuB l Xebqϋ [37x=+29{ Va&P .2}g $9А5 A[z Fj͕˼Z\^,?OYX .7Z/vO1݋WGqdY١" uaMx$܁zmgLd.HoD#;`mHk>>m?+,6$jg7df_;fOcOol>u 9?UkTոK:W<uLR#kۥ?\A@ кPY]46XdSTx(J\X%uK'xI@jJŴtmK7X܇wIn\?럯%a[()2ur?Nٝ^^lZ2*>10mQC~s{rW՞i"<0)V?Ui"v_>uhePm%4/0!"XP#?E e(7KOLVL_#ZpfSp;Rp`!g`gn$fg,cDc̫ѨIdI1q![.qp,O/ "+tw8Ƥyi*^'k 0|LMi)y;Z%߻/Vnӷ}g(`=AB:‚R﫜BeD_&N7ll2N/>[}VjnNvcD=~JGW` PχFH(zvg`OaZmp*Xg}G;[Ic/P`[/5=K@!k4Ъ_VBN1䫹SW}0rߵ|LP*sit5)*}uGAo"`>b1L*6U̐PڵڲD7L2"\Ĺ UШVÝFTOe둜Ώ&|NT\'9JT48`uc8LfH\^Ĩ=sZSÞ|2!)9drO72,Jj/vCy\#0JN*y&?tb4Xq_('}  ˳rn1a _r؛-+"nBΔ.f7Xч)& HXwpM3cլŲ[oQ:gJM ɶi&)ta;H.'dpo;zKz!k.K;^0:xu .c-} Txna\d #SW~fP~Ӧz1-2V sy,ۖ!b~M36pq Pg̓SѸFP]X/3q?9 Ȕڹ dˁv 7fC+=aiՠΆgBz BDx<ޅ ,%oNme9nBU)EyF =I~0dT/Kv! DY BSkd801iF62/9NR) .BĩVk4,yUStHΈd`{G8dlS NZ|ԅ$LYзTcq5?,* Kb":z9~piU-4:/4)=3[ j(ʺ&wT&%$_?UaGzqƜ?='pu!4MX턪|d_F%gZCbȪLJ$d5N:nڎ2F߫?4hNX8tPmGQRcKDfm- XJC֯Pmsf:&BoxAs`0p]mؐOl@e27!}dja(:at-n<2SdԡxO k.[fU*+^q;JaeQ7sKdD5EHoa]\xGWF^KDAǏV>ع|bFͷs |MEF# 7㶫 U'a 1F" vE"lzq'13'FҨ3!vT^s!WkV?2Bز#(ټC47{j0ST!"5@BF"M 6P%qrX$|[n[%% ^R4NmHfo1C9*zzil{w^\T98agE7y`]b⎁Vjipƥ2|/ŪtN5y5mfNj?,ZCΖbcLC'w"M_,ٰŒ2*3[{ dBb!GHF)'i~&钹x1vN ]{2zEP4GE{ Kԭ#9-n汓sߔٽ*釂'V2 >Əs4FDmsv؏l#=GÆ @($[g{ԜCz5X ݓ}·aJzEf=ӊ1 Q['ۿqs#D #s5,p}t<())y"eړ(Ԧe b|>Y Y5wX $t\9g]_J4$& PItAWH_qX8>٩Ҫ &wOY t)t*cF^e.R23lP2|d8 Y.L~gH}#~\׶v-, 0`L{P8^'u\]J0tudWޮ7ux=cvvy˪Sa2ۯuiLhbH_+W:JVsfDMAspmݖz{)љ["pUF Yy_7z|㟃rJ r?v&1J⵺Ѹ!` ާ)7iY |vq:*JS r8t:(&u`{]qGE `ehhCmtOѶ;Ś bQfF{UG E(='+GjP$ɜ JI`lsqƕβHl !j-òp4<`񮘍w ToX\7{*fK ӚINE;g:7^}X[qgH Il#Jv}y.οFeX}jr+a A Ymz=!oHt|bIƯ2][-vIXi,$iR?Xjn jS\&h5=Ѝ_2ƮҢW)!̱suBŎolQr3;FbQ>Ok>2scKrIʍxyXV#8H4ܐ,lW'[NEX 0h.A=tLX/Z,] Yr`-&[=dA^!FXйl2On+b cp%6Ep3l7[ '5zGxO!pwRXCbubt`+gVpXX_: 0zu-l[Bfކk$F*4Bd]d<(5Mep?z7t.!9+3O91cްoF:\U̔5+Afdg-չ|XJaa|J88m<>]/oKOCi~ {wMOO3`)ƥzT>Q|K8,¬""QSN ITLZi1}#`X]Lq: ] KX&Li|"H2Q}Ќ:0'tq5.~]]>ySSSȉ Õ񦱅b{D/j+N; xN[vm \/ "y1[S6eUr"kߌ3ȅr "U<k KDj{:OxZ2cɴf΃]J ɧ+FmVзR(հ߀ފ)'[Ъ2!اOշj$9IOc7X\__fatW٢燌G.;˰|[ri7Z\/Ƒ& .P 9 Dյ$iT]\M*6.z[ 'H*ao 7\^U[x'VяE(9^"{^Cqw4R7𓅈ʻs:j+-U;hXR{2kg`(̡0vl˒Z6|둀<{RI[ŌSxXcJ 'BmW Bm"Խ R pF}'b)OrJ%L>6ČepcrJUצ(ssc*hk(|"=O I VɆōl8H-n '2`F Eɐ8UuġZAUM]7Wnj|y[TF@|'Rib7% eEٖd\b5w5ԡQ42HGɵueTa a1I d|0r-I!<,|i+a'wfO,U_K,#s1k K,+-h}ƕ2 R9>wy%4V&Lc]yƍcY0ɑL*Ɔ 72r欼a͇qbއW'x+Dn9# O{~P!Ը³jWhg.Ql{{Fo˵5%qdt,:8>!pݶoB"uf Me$ YNg\V*YG9P|&iV" { varHI5(RurP71 ~|R1usg^ꞑq;TtuGK +g *+ ~wƌHiXs_莆!;fN=G 뷩B*HWZ\/Ƥ@EZ,ZabF9jm̶MAaPb~M>AFn{`6XjWgh A^5KlTiP/gAo|/9%y$uһb?$vB^3Sf+ɖQM׌1" ϝ&Os/PS٦ 3m:re\:s, Yݺa' JYU4ZЕutL[vӭ@E6"b*~rk3BRXo~%Rbz/GjWWU x2hS<..|tAO4Q$y9ǝZ)V5(RAt,%m<.Y /.98#% O1׉g)!b #ɜK ԶR& e@\oKRLB( HV]gm%:ntMA̅qw P Z~x瀑O/\| \> P[,rDԞc!O˜TZYtU|x:fzi҈@d}U %Ն@\+j0B+YU;Liyig&6b7=V \[on|zrZB[\<>QH@p)J; S#։ <Wz Y/= ]rUy L~mABFCr6Z-!vv89l[cU,L*wkdXwo3$oZeY+.Sb; xpإH@(j㖢 JFɚjϾMQih(rTta o<} |j_aGOya>cMPʀ)4_t/(X%*'*YkFxUZO=|ٷ?hlI"Ft5i[[YY5`Úh*جLdw"#P ;>x[ngh2j[ʞj!RZOˏEK\Nt ~?ړ]bXH?XWO'L Sx\BҔ۠ke>gTONbGhC"iX'<'{I}0)K΋RG<80 jďuնن=HW8hFr, E)Pub x qjNJAh(X΍%Q~ h,x8n*DL:E-h#2 ΀&vIA ^7 8Ӣc#3xĤ$HRȕkaÇEsf+TְG2Բ$sYD*PឨQ䈩b3Ye( AȞi8$ۢl=ɢ0\a\7BB!\T%j,w)>Hai2H[+ *Y7?˜XkԦn;-JY/TUcp#Lwv-NX?! e,/Xdۮ =HVg.H8so}7cZ !v^'{pV-r la8b2S!)6hACSETVη9pk5Uft>&'Ræ2LhG5v܋b!˘bտ@g mXD5k=C *`CЭqIhn пȓ$c컉 x P*|.\eZإ" if?܊3$$:¹(S\8YZH jM!uA-SAu>|!( L2*?zu;ˇG 2OO\0K' &I!"}y؜Jb['q)`!LYtUI58K̥i_;/l/z4pJ ġNQ6* >*VCR O!32b[H#RUU(hdAv`ۜHjjI0T@1 ޶cI!#Kju&w٬~oY/MoWcW%F=9<Ҵ,hc0D͛iRq)#te4&|lf2c8P?i!?0Ւ}Ujf hl܁itIn/ ,rMYJv|gZ:^}( LjhW6 3i[8oJ1AބQUa}vJnaW:&ۼ,(M=)77.liJ2phi][v/w.M,ƾ@v{F28:(OSbxӆtolqPK sWWE1 I*FދqHuw8+Z HxMvDj 2^66V_;Ω)u6^%~D(HNě3 kaJ07>R]PjԊϕ0]+#;(ϩ {qqra} B?G9]?P7{4ѪjG,v:xUF.Ro8 dq< X<_rXY8;_.OFű6~(B+3w 2w.лjT;^w8PpQ>:.O8VY.8`UĜIFN_h%PMztшB7AmTU%몹@.k42E!I1 !bzVD1x"ijy7Y_~>bp {"e*L+yB]-\?6kڊ.8j(l-/ʷ zɶ>^#0WXڸC%1VL2%@܏EJfoM+ڗ~VLu8M(QރEAߑɽ=f9 aO?n8XZYN |{"4 -QQr.945 Fڷ DsȦO`:.(eqO!"-bSgze#ka,'{4tuhB?|7 xͫxƸ^x%wfz5iw2j;$@@.RM.9Z WDGvLbK(θOo4q%7a?~Ÿ,ԇm5h42`\TN,LA/):q῵4KJ+{nIl/CDr`hdmq 3{)~n:O f4[LwGsLiQpڢ)4`n1䰉ͅ6##3~%dߞC$-&0~&=C!&ך>C "I) _ g3 u Ay쉵=[>8_qk]y8+n %HG3|aYjZ!Qs|n[3\I@n>S4U6xOzgCfpYE#YNEd^|,,x& tK_ /{QZ-Ci|ϙ0XH3Dx`w#MX!z46'-@m=%*y36|d% xfp 2p9>5^^ y]:4Y$qg!S‘g^3#kP*սxbmB)fe۷%,: 6Jv>ۨ&! mHO̫:5J,* Ze0q-͍: *Ce<}ªE`Bb[HB/ [<w;U%A ҡE@AfeOAtQ|f]OE௩׷{~,v@'Sw[Ε#y$!x wP;I7B DECJ>.a|aL|_L w,^"?螹*}yTe@txư'mIH"zf EF^2Q*43*V(].C&G?>R 3|Bt,.`_l7Acn# dɽէL=L_ gǩBʼn޴"M;%yHsg?R3uQȻYԡ ل,106=r>%uhm!%S2BU3`pu_.Wc C 3nԵ4#5&{)T`2]/n6>Hy4T_ONJIvKuvꡲo[(d>1oI۽ XBt htMؐ%gy, :_ثfߑ<(lY ܵmL/]2rm^-gӐWp_9tƦR:| ’ ( gZґϙ#W_[h^w p{1+ދGWZbA`c];-1+#i-|'m""[u'޹F?K)Cta`V4r+-0: a?p.U-hsI\H3ui5aEMf 5hnm^TdF)UD^@˛N.bWB/ommyF::ِδ[YX.y,%v[`Q`EӌHϣD /8-jiDD6 IYUJKUQqõ6dvR$,`-Gzˎ ^ r'㲨;贴EY~^GB:)АP6a23-T"A6l>'\U]_dT8 ,鉹*]bH|P >7^L0ā b@Lϊ,;ɉO|7 k1GRISycaC+Y;M" !uKj[!V%QCCvYr6~CGMo/$^yq@DPgƥŬٝ(iPm(1)#tu(F\wAtpy,Ȗv!e.M/_٫2fuܒvJVV5}ՠͤu|:, "t sT'Q4!1֣3K/Il<Q*>q JTn&vn18KSk\_VDJad Tyx9Q̭fĜfj϶EXzߦ^2U2?;~DP:½ocNŜQFoMhfcr`k(-Rl"m3r|K $#_S۟프&h%]TT-9&И_hG=EGsea 8s+iAϦiC@4Brd)̷J#@tb{a`޼>}ۤW=jp2Eґcn`( o 66t,n8t2xC ^ OD̯=qsԹqd(dv:Ma([ :4lc;XLh[U>*tWVnU5WV nzzq}ӵI" X_hs 8B\e?\`[Ldm0>2D$w6 @v/+0 qRoN5۲ۚ6{rjDAiG䣃6N3ei -+#/ްc|9u!gv̨=n?|ì&(Le#H W;AV uN#v_3xMŒ]?6dRⴣOfJ1KxOL-ZЩe?&Gd#r)&G;UH2:^QuhY#Q  h8"dNKWIu} Yk+F۲iUȏ)ӑUhGFXk$|aHCjMlohu%Iz1e/ ~!ˉa㰐ՒjZ{%#ùH97`jFfǜ bT:s9Z #5xc5@sI8 {EM;UG"BTXfZFK ^\`z{0:0d 4Wi@j՞!8D3ǃqk!pYK_O?c\xD.Q:\&֏:hw?dچTZiS$~6wsfWa-?uS5XbIYoӹ1}9PRM!Hli `9T5+trʎ=G<u` W=qW čU@d4Q.uwV )q;FSoߍ;%IHi8,B[ﵬa%$@sp@=ɠ3Iڐrk;'–yt\!+5D8A+ I2m':Kom%Gsrd$o5}Gj4W>aW|JͳP V@ˣug`{Epγl_wRFF %d;uBUU~|D*I)?Pɗ;_ 4mx/SԫV$lu=8;kdt/$aXrȊ;2sh"<7u7BjNߒ N{fuM TFoI_'_w,#LRQsBⳮz a!>riLCDZfTc-_pE㊐y!5s^" w<< λͿfBc`x}:e{HÍn#l5 Jf RVmܩQ] xq#L 'xbDZ9w_\7I{;-L!i''3JȣC)E 6I,섚$>zVw5qI851٫O|Y&A,AL?h93C#x9/#Q}d(=ë30^.[zz s@ 9ep2~dk_:C ŋSJ q#Ĩ1|-~8XBv7ZނCOSnKO Z=OQI~x4B==U]l1r#WxސDh` ),p.F˶-œZ9>BJңtSr{;A?"T|ѭHr<~x]:{WSݽ*͍fxkQIfhȋz%UqͭʚJjNy<;Xm#n^Q",* !"bE,y=ts|{<Ԅ`S}aгg^X[ 2~Ůn: n= T^A}l}FNd,^-h@{sPLr_6w6ü:"l. ,hu"ar+ԯ$X:6q MĀke dg.=\{=JɩrJY G:gӢW<z9MSP?hWJ|'|UWWq4ײ?7 h |ʄoѤoivD̅'iaR@-@棔L,?bdo iU Pn?6 ֶh]\4^)~NC*E- 0j+*^&x~&f"#?MqEXS}U} /ZL\G#N͙ӝN ,6eDT=]8Ь~xF8BWk$7%;ծ Ͻ\u~QiaPT`i>(6M!2vxv*w Tb{F e=zlr6o^^SD/*:9UPO]UY_C)^wRom'g@~)|V v8YJ,:B/.|U#Ÿt!~#ٍb\_@'G$pV:-|l7/[IG#As4=M,yЃA|"(KAb^ UI@NB,"Q׵$NjW6t~'XɴLV:q:j',$Q4c5.Ruƴ n.ojt5Nu~tx %v?8zO)šHi0=Yћ˹Σ]aWX=iQ%WQ;6Ũ!95_~/nȼ-7dL>TR5ނC6"fKXoIoDrv#nI۝M531MWQ1a^00˱3ĔRAHQt>6 &ˎ'2X^YH6B((?UPlT1Ït qD$ ?ҵn!_/vxaWv%30.:;^4\$}C-K~r[qSDKfEB`RP},3O ⡜b1Ŋ_ Dxo>4Fx3Qi0ΘxaxlYXrǼϯɃ|@~6gy-V#u%Ur`̛a,bAS*H =L/; 7?|H Dt@_``yfW>r|~]ʟ1'Q].D8%a ܼU–]_)+< ok]qF]@]_~@Tn 2TgkTnp ǸHF=)2Es g HS] uu:G(D,HR|3n;߅LF|&)g_r8l):sZ ld 1)ڝ\!_E]9!~B; [e#+9%({a&Xϗu3O;Jr!gСL0[A/Hl<Ýz5O.W# Ğsnz6lc~QDZWFӝ*.YGL-FZ?dXq?c80}rc}H%zɉPuwD{3Z6 ji :5w }b$ڍ=wqhP,w*lT#;W{Ik̑ul>^ 8R!,'jni@\bק^$Ot P,_)v e@֙)c2K1ވ DQz$!Pd-D`wҜh؊q]/MLCN~)Fj+l>І@* 3rz S|G%ݑAÐ'GKJ;Td,>H@AկC@lLw!m׌?GU%hQv$y{jQhL8]:S*bƈi]R]eʺk%p(D2~e|\S5|vۊ&< O&VN}3dxk|΁G<*tҿOp+n9ijqGVoY1Fe44=zoB|Qx8KZ\^y`1/2txw|LsB}U>ǘ7iy-zo 3a.}˰3*|/,u>]S@!4g Cl~^9ywQUOapiݠ"ߕ4t?uNI녀#iL*(8a9?Twk-lu2)qST?|; Ʊh?%冼Z0*ɧR&쬸`}sP1T*0L;2*1pMɛ%wEمN|Ia 4ECsQQFj@JIyX 8W˼N**̈́2$/[V?- s3ÍԌGN'9iP>VH{|j&] V' \h|p| >˙[nAwdTO:'uXubm"U| ۆf,wxƊ1֒0-diP2V:kQ:1xp\2z%ws>ZAA yU}"E}8_[#ه©-x^O@]|nl&K&xu8PY;=~Riѵ6u3uC'3SG>nFE{QaSt$Q1h 7*)a)X ޖ&%E >.H.2J%oF~G՗K"KuZ`P @1+Dme, ZNR?>^V#?qem#%qlLG ‘:$-xhT 8kI$6}vWjs3/ +|8K-H1ʕCbpЇPr]|7ݬui!h?D c"a9D6{im>+հ8f*WD[IBu!ͱQ*E+WVYi,Ʊ/( Ʀv bCD$3{lýY&/n84f`=`e -8{놈ؘn>QjoyIԸ{h75|"fI:?,G%Bo;p?5b/b2Woq)r$j=Z]5G ZIE5d9gvllK\a 9 $q>)&o{ll7yT~U7u-An=)1Lh”\ą~G,|~,\%j-?P{29YGG:6`]UmlOKℳ0qwWd0V9~;z| v'@q7Dv(|3 ),Ka7%&B)S(  υJd(mM c;_TzNG5ko|3~aV^z>{AVlvdBe+ ʣZ7[6Fuuc3ٮtD>dm=L 2>U!؍9G<ڽsѿ/xUQdI˒;tX x`M\(8WRz/]ܩ#Kd+_34񣑊cuT0.X}EIz +&;=4 F~˖zԼuKD% r%B°AÐ=)\^/I:@Ri=`78̙]o%;qLWWBK?@J\gD-m݇%S9!p>];uՆA\Q(& ǂt!èf(1_=^ɇaS;x"ml.!8gWyt"V%~q"̤qP-3z>4ɑ˛νl:GÌM y'Tdh9ֽZ}I͏ߴx~0LW-+Rn5b& .)$ٷ=odaOf~¹y_BSVWdxoʶZN WjCkX𼾍S؀yk kȜJ CƮ&W雭Kfcט@SWԢ;lfmNy1dYv&S:K.6``qxly8hJ?0V%68= oTgD/\vjqSRx|sa9ߚ|3ZEhRNaxf7P*c3>ఙTk) ;qS6 aa/;4?N}-@?<֦Z}4m,_FH,iW86fP`\6Db#3'1S$+'goB}bgb. (TGKuجc2@xǂWekxQAZ.-yWC䬩GSTcL]&"dg] NjEgal1 ϐ3 c?'7R}zsemȟ.S2J wɩtmGWa8ۍ?&>KU>rή@Z!p|[Fy^ C ^t#շ4wS"`Ģ9{UNpb-.N ?kijl#CgG}5o.s ήo6vSK<"RkGOLNK`[u|VOÓd}(σ=QKA}?Tk<+S+MtTzB0;e!"}rNdU(Bid}5QTi!a}B80bkcADMn4tp5EFEpr-#nluSI Y (H\]k7*$$T#ؿV499tRU9bj I.ǩ75?wQ _ܺN̼xXjHv_@6ݙM_DӵqQ=Q2]`Kɮ,##""t1@ڂAE/p()_ɦ3u>y^r{Qs̄<5MN{2ʆ"1TCi) {]'!ݿDwd|^%(Կ3.rd`A kݽ㵈sgwx{Wkl˺ G eĕ>gKIO%|5|Y YׇE~ʊ}UQULr(D).l.Nv-Q &Lؙ"sXlŕLb& (m`C8Ԥ:s*%Xsef2YCn, L-bpB[F_Vn,cLJ~xJ\ H}OM9jjQ rH 6:Ɗypgo)1yz[LB.˩}ܚաDO)[86Ҝq\$2 ,* |>!祺)ٌ] /}z ι}_OէX@IGzyP噹EQ{ds> -_ ]߫8b⛏X|WaղW?^b 40<33ND(g]* YtÊG/ZVrYd;k{ 2Q,2E0( q?'~Po. cxŸukZ%O: rD9ȏޗV&mMgi[K]NfE9phun'Kscu̾RNM 1T;* !"+l|^ 8; P>NC3.h=4^ǂDVB LQnxFJpIدٙPBl"7Ļ} 1&bJMz+JWdЧ`_&V J糯C/*Y s+]rG'7k'D6{oSU%}Jo) Ɯ܋?P,v|Q䘦#kCnfR6_&rdL~,[zJﷻ+.ce>"a(YzbMa3W["YX)\+m4JF o&Zy +uEiZ2E=׃9 e bU4kЁaNr `%EA%B!1KZD6A< .WX|J*_OiiNX^215jHy9E2pm .D>sY.oqsxKC珍bvsN3edz1q dm- $R﮿ki(8iBc:wt+#p5`z@U #Qgl!#N;-MD''[o+{^E!TS^Tezb>•> rev6'l:@+gu ^39Q'/uSng^Z7yT }{C"z!2Faզ4e lFڽnusu7ր֙cm~ب{6En kBw+Xo7&c'n]M9?&ke0<˶j?v[u&D]VRyRgBo){ a! _iBBJ7"% Id!~wJ|2Z~Jβ=NyX7Z:-d^+S: l "88MS;ƬJ1VUԐ2\K\)ٳYSat^"."vJ*e54Pr'?w*LMg:ݢ |5 vzx/D4w륂,VJuz‹zgz,Jӡp c548s)nO w?ؑ[ ) LW'ʌp&PYe$d-}Jd򳮌:.LO~8 :=16gh&%De0 tF]"Y:O(9׻F%H*؇@86 GRo9"t}Kh_b_|̵Be3 ?}?]0ZXM&Qv^c)*iOz7M*&/^DžIݽ~zAJ}&]Ad&F{mc F},*2O[Ŭ~;m{BsM;v3IKA)o}p9rK7ob<dM.9"O]"i%gT>Dar3 |[ ,a1<]%<|q}{ r{d ~U ]]ˠ:Jd̠Z fHx֎foI\Šb /Q`3oF3)ȎbUzk5%F9ҢHJ y^'  S5+]juEfc=i.V(kkzZ p̄ٱZQsGXf#i5(Xi:hEz1A|Q-h-(j+"kGP^8K9yㆪO^(lUPCͩ]PJzcwa4by5o _O 2:؊jKOz/cͬbp5[͌MHjKXiFuMn8|Z͵hnVqЄ,}OYɀR` ǁfZ"`ԶT!1ZKtr`{za:$-]+|i$B?= JGIa&ͻHcLwjpylCiѳDe0|MlKLwPcqW_3>ԙA]v95CRguV,]VOߴ^guأUg;'NOELgY#a 2,mc,tXj RրP<{cೃi/TׄY8$cO4R _E\P "jkaH#Y|+bifЊ3j0ʭ"<ӻ`p$ϊR+mTG&JcUMۮ$G=yr,4`l-2%0q$>~X7zQ#7Cr "ni'F4p85(?9fٞՁY]ItltX*ɊSMcu}2MU@jqusv3l(5cqT,1fi.{Qyy7X4"iVC Z}O1UR~ W6F/O%c!?I9qz:pPi wF;JuS@n ijUY 3`&n})e{KBl']~o=9wdt֔BY9Ey-0ÞtN'nOԖh5QX!U&bAsvӀY]'}DX3Fd&7/q- lc)`ݶ-j *x3'i]MצJќp~/;c`Ƥˀ|f16 Y1$A;6oj3W$YO]P#NbJS|o g\F>E}88+5"[t4W%G͡-Wkrh2=]3%:l䦅ã,^#̅9XBEa7/DI96;kku{JUx۱wOO%G,f?x%1gⓆ&#K W G.3>;peh;VT$ܩM\P,@5 e 6?o_/+!B>D[PlWr-bg&E+ >R]^`  S\L\Y2g%K xR4VV*rN;+RZI&"海i=& yg4GK*{-⺯_'34q01AZ&IF~0pO_\`WC=$r(UPF:/8l-jMh^C_?/jơ r;:+sbD4uMA+Fjy9-P޽l=2U{>C%$=,IQ76T_h$ύdl)ȯ0t1&1;y^^VJ1~RuHdTu=$nDR!>_ $P&=Nم<\g7n"4' TT^?x#Nϑ~GeX&@LlQ)q]w~oXme`ϋR!X?69(澛ۂڃ ƬFV^Ȋ RPZ(!Hkx91 yrŦQkɂOf?7{6&qkeBo,V!}qnA>ykuNgjDZJ8Bg_P_Mzsg%-w셒TyGK@V5a;;Uy[FAMQ`ēG@H}KF̹s$ I]b]/8kņ)ӏ1ӠȲA^iM8_֍crBj'p$,&n) IfXҕDmy9sqoQNWXwl?ݯR|z$x+-poAٌmR-D;’yѫnqYn5]yyJ: ^~ K" !z`>RfO9ve%^6`ܨ_{dj㫽[_zP =0qQd9X׺ˬ$ۅot8RK~\;u߆ڜ8?v)z2VݚvɹjAD>4&=Dxڡ$0ޔP(fz$V.lB$ WCH2΍r,.󦢿jGe@`xmD`U Uc8(zGguWF c]i>!Q.{1Cs,!~yo׫2z==)2k!|V6|=yIP(!+>wcd[:xIi0J'-SoE- ŒBTZTG87S7joϡz"ļ'&o \i9#|!G{5ҍWcY]"Cgߜtp5B{Q.C^e5n!y^Tʎ knX_hV+mQ}MRbVuqncIeWp7QNjQND1ҌW:ͼ6nDK#y )o6$j~ӄ>*ʫ6F6kDm%[ƻ\[U r<}-]SX5CBN7)Ab?jZJ0`J1ia6=~9%+4yU dhYkrvE;ar؟ Ge{Uˆ2&?irxaЏb5GZh‘ՏH{̜kI}H[NJI(7(@'ݗ^NJ$u-@bKqBOXir}QyiF&%U2!M>]ns)˨-!cy:9+~M fUPȼ)O|ZJgl§\DPNO2"+M3w.e\=E}s]>s&ؘ*t_Pl}($jϲm]8*7-ѲVB*/CM^CJ4?q_ X HB\w|Ұ8Ʀw{;w]R|5Ŕ΁ 1vr-J"Ð`xcCrg !Mb!bșC~oon_V9D*KJK+r:/Vu_E}5/$q TCPD낽9=VwD<([b$w*u3W}W)T)l4\m0D ^SY.l` ˴8 )j8)#x2"SVk\b.Jk.>$(]s_ w09{iOcUE ѕ1yYAa{uBz ApM2.9ac%Wv+-epX񀽳b>8$7G7 aӋX9=Q7UF}A$ Ve2HՎ/ <;{Bj"FQ4>d ~ b 0  ׾? 8}r];žϦ4s<8g <~ל tk8%*"YU.n!_ Hy^A3Jxߢs1, `r3BϜ4ŀ:r"jTgho[ D++k*{%M{uͽL^@;ݚ,#:u $α"Oc$kw2(8Tt@t!g\Jknxe Bv$6;г9JÎr$ngmŧ律a?kW2go(61SUOIuZЦ]%8Ecl 5Ch}vyJPŲ6:yƩ,Z~Y& w^- ?Mm֭in=!0Io.:ބJ JvO Uft7'ҎQ1W߽9\fJzq2|M&7K"k8粺@|Nr E$sݿ(IR^돬jC4oxrӓ8\^߭A89ʤ9mE m2]XI=}9[+X,Lx#lj?B/J*a|(yؽ+jIJE-DZC]X|F:;?2ôM-4b+(;MS4YqjOF2QKMNB瞇2D? ` jtV/rNhU%Iz bq{z7F%NGsUnW'2rl48nnk>h na8n$"rnp"mfSK oA7c'rt2>~ǰwL"2P=Y;`e 917P1heRH? \GJWɤ](p>dUJ]Nwfnvy,X}Idz*+GYm<,[)Bv|V vhB![ERub. x!fgmrE-MYұ~YJֵ"+44e\Xum}u-wb,O3*Uy;M"ſs-uTqLq246<ŒԬCjn=(Mit^˛ʜ'Ăr{3.&4J ' N?]} ȁ&W. o3*T:$B*RXu BBr5K%_zֲUNJ>B])**uoP $˕C™9 T@cG1clte붩GwāVc }+;&6ѲŝIЯڂp!k//}"om0IO@t$LџJN9%ոMU2Ow ;9:ܫұM$ZoÅ.Eμfw۵<ށsae𑰩s6Xzw=\ RS;, l )'|i&_Tv&{OCze&ji*]2!2YcHuɖ9 tp>QUs0"z"ƆB;T(~D*h%KkS:o(9M'8vop3S1y6l4 O*FRg9Bu$L +bBZśV6y62lCy`C?EO094&;9}@ F|z.2|pM|񪩔LTSt{ i$iX뽅,>.'od׀SkZ"*Qw彘§pA wJ.nZ^RyWL izZ G4泌Tr#L,/pݖ&EC*גWTu9~(ԷZv\-x[s'XZ ,'ZU`J\qK5m ~O(~S(vdD+X #£Wgr43=Q|g4*/ԇh=CJs\睐ouV c63&*8/U`5!&6ANq>om.5}$iOJPyorIU8zI7w.~I}ƼS(K斄gZښԓxh :ֹǓVhG@e nh|p `{ƍN<8lّ;Ur~_l7.,z]nLէ}} hIJZAV MM`R_xz~{h>q$`!7"FiXx(&|TڑASfp^k)@ގx_V=I#/"&.{4)j/S3\If AEZG ظju!o$=1**4aIPâ|TXFUp([Z:851<\`f`|f:a\\ F&m\? U/~C; d=YoAz)^h5#Dg|^҄ ]ָh=dn*r &Qwnon!$ҧ8okc2Vq 5$p `iD2gD ͞^y _U_K U҂⎿Wo,S& g+,_d%doo 31g(NIy=k#3)P tؠG5zN8dBLM]~ڿ6Md1ewŢF OypcKRe\!} I$e.Smni&uY90:7!D5Rz ^f~AqNZ5l+<&o{~A0GOaNf܏iF랏Ir|Zt_uI8a|SNg7{蓜~uunrQ\!"FgyTjOZ*Ȕ:pSbV_E ڗ:ze{,@qe%4h>ʚxOq.&G=1wXKMy-{Fbrx I'w/DH'b`d&A1S; _.olQ9r0}m ⰸ﷘ "aJґ(J]' Mnd1{4NRrkVDaoLI2Łx<7eṠYʙ|Ux? ܁"\xCM3C̩`E06C̻eZf_M"7,,( >J&ϧV;ˈ:L2I|]M͙}%Dz ͍4J&s}_c#:B-rϞ_%t8@ix_NP8}I?vj9#W7dmJ[W :<>## uv([8ĪE[[&k}NTlexGGČ5Y#G^?@U*m6oM^fuiDa )H:Α"JlW]?Z]]VepnH|@Dbr=9(O-Deٟ8_Yq782)昶?xfB_7W+B»I͒ϛhKE{RBg'Z%>7 K(-/}L̍cZGϙbǔXP{Vӊ~пtpAw 2Vʠv描gnDʆ*0?ի%z. 5:@K)bMiWPu5;"ޢRKyxE;Ͽ~VI oJM"qhPpiA<dFުO՛u&bJG%˺{b8?: 0\~͒'l浲rvB*oA1T㜢m [gX̮V^HELkT6ruƃ8^Ii4PHAa6Y}K2{ʠcVn- &Dh?6_\m-ˆ!t#̒Vyu] J`p J/7c⫴wE/[T,$k5>%8=*Lu+? ;ЍE󦹹pB+ȓVvrR Aqw صgnLe]Me͜͠NIFc:ljֈӽp 2Im{or+k48]9d1s=ʂ"fł%2̋0 5a6J/f0-)bVP\3h)`| O&S=B#'x"ՕlɊ3#//dV"|AGyj{_;Iz6U$.{}&POHA<"jB94P o-I?TKa<5FvJBD?[@=3۳7^ܻvUV5e%+o{QqS&֠Zm4EU6gIrDG2u@lvQ$[̾|ʋ,P`nh^htzB56`X\2z$yïn_]§Œ-k[hG=ZNX~{ xH"e T>.T]pu]11T@F_pṈUiO` qJ8XL3q{l9*OpBpCbY6H9xqOu^)z;k Tֹׁ} K=ی9zXwǹ2;\}LvɹЄ9M #t[Fbdr40-=6F h Pϝf˜:Y yI6%K˒SdE>uzyv |WCkOLDaELM)u@;8xjT(o#۩BY?M0?ҡ==#QzJ R$F` #u~hQ;%OwjNC!|qU3h@)! ;s^DZgKA|&BypzQмѤ+/#CzTURni7&1#0y`ʫ$4ms֊[Œ|4N"B-mqQ/p*8f˝iIЄGKRo6EzvʱI"3Ĵ= .@d6T6K}$5-/vv'ՙ  X7hsTGVns` VNh'. Y~N' Ύk5y J}VGǻk@!:̪AkU{֏8?7cxnȢv~?4`n. Fۖ NJ :5tE!t3uShl䆺vV/6Jo+(.fx| "0wZ12f$5P}&Zа(#:1Bha m{I,Sr?qݖG Z**pG 6%2I@2xZҔ` w#14MӥZlHϊX6AS Z `~ n߅S{ic7-t!=LR뫏 .E#7JfmoѻԺ9>Pw{/roDT_5r(&)`k9xt~0)R܍g6TR'/G}-?@10(qX5~G "u[; P~P9&p r- wwcVk S M:>] ޔShivxqxM`z-IFB jwIP˹iq5̈́;&)qg)ey)V/S!ٱA*:7tUZBֽ/(mr8&TqhDQ6L`uyȫ6^,A-m]B pK>:8)HRxϞ Gبd l0'%j^PHE]R.)^1cF. BPVr|UEV3*NUP^֝t b@:EACt?y2#8PөC44Cg'Wƽ(a*M3u&8 <"5+T &H*qKf2Qgjz2~ {/tZ[]y6 A4K@'`+ꊡ71O n_!8>B v%fpe4d<|T\dMD^+FT5R+fVKmNﶍzIkn*zi*}?L3;rXfC>@$jW5R6;mJ^\mߗZ(LpŖ+72_zs-SiTz8fEx{L9&zªrM,h[#N ]B᷹l/wP/"@̘ V{zS&acDأ{aQCRm]ƸiHs+JiN%ίj20c \t@i;``Sh2Q`˺"xzYE"1vut\5BfUHb7uj:_+?\ڟ0!P#h qfo;֤&bG|$ZܳWRUޏ,e@]=IwO{F1l5<(`4^9^3ʰ gGd*CgPПaI1Vͼ?ol@IMtVp S:űqEs4;WD{3O80'M 6+We;U4]f~& 4d~tY55 {֨MA;,+ot|"JYq "gp DV0YmO [x*DUm۰{{nK37UPn|:l|ĸ %Z6eAZ,P yqZ#=6_x%FݾvTP}n+ o/&j92i|00zgv,̜r $2^NӘB&sAtAϲrǒq'.}=O([:(BkEneoF a3RME^UFtg>tt%UFOi|+MW*1,`pD ZL?r=6dy|r5d\Cb$Wd!Ïè$ ;G'4S-U|q Ӥk2R$( JFUM#.]HH-ZkpR:ްmQ܋ P Isyb-/Ճ8AЫ-5\;u;3h3"2h] RaNgɑ9hE# *ܡ$.'ɟڗ5NHf67lcc gKԔZlR-->zM(yM"=jҁr#&q/ǣE1l%Q2?6 `iw|.!ygg1Ԥh,nUf8vd(AqWGDkZ$0. $!cMb2ʂΓ>%%p/m8y[-Qu|G)dψ$n& %>qS4G7+u|>sylxHE4niGs3LqfzlċCh jT`>y 6 =B5j$ 'WL,)+=M뿝EgϜ1h!1Hh)UX2d= }6K^:1L& wwzXv1gLF* Xݷr7lҩxF28b}'+ ؈mC%~m1d7mU3:zduC/N 5@F iRU:J?N347vC<p#N_ܲ* ]zhh$уԃ6G5Ę|wqV#xjg\ʦpvsNe NgwyG;2vπ"2F[m~D{s:i 2v$u&/(}GNI4 4̓%YXȔ/ΑrKJBw[Bൾ', ,2\&lnRT͝)H{[,Ce;p KF> CA1RP-έ#k6#E ?6JP{l;z(3˔u3&B'&jǧ/=/#6ݗn(xGcCg .?@hIAQ#5DG_D+R(Tsf+ϥhYq*#.3|IzGc"UeiΖ(Blb00@dՖS: &]HQa1?sS`e_x7 [/}4Cڇ/YU,|]g Ի.%ShLR[eߴ͌.2OhtkӳJde0[TTӎ:@FG@ L\N37BWy8'\GϛbLo0@.O5Cl^Jprn݅/v|YU]J (:YJ< f^!jlvb HV5}q3m\m-ݮPڰQ 'h3S Qڞrk&lԺA.n}# 5;m(~.$8 k^B{=B$Wq >#YA@0ͻqT wlfXW0t%J=2Vn_aM5K5.>Yv= "uKyJhLNg+/ 26kYG/m TU@HQxXj!`\??p̓U$J6Le;iGNj?;Cc"SYyݥq/b=ad9UUsjf.%0ZPͪ:xRUkbaQ=t٫IuyaUR(ZЛBJ^/&_6|q?i~摙ʚbDI)T?SYZ DYnpL/ԈX2ټVЫ4HAזi}a͓?i^5cuҿ2+4p9#Ov# ׁELcyJNdv0[@ 8YH@%$r^(k ŹUPBX;Ọ܋Iu@)&ۘ [\-Ѱ$WPrpmwe $O\}YXv=n1*J=ҕ4[oX%cDgǘ,ͨj8v(P'C@GVO6Z M*dAKp1Soۜ"|RY}o '3!H('Y.gON#k^dL*6P`-+KiTjZ.VC&@% -ՙ-[f/[Y ]Uhi$UG?[-PԆcw.BAUHՌ1tDq#q,P$*- ; \1J!i2ۺD_b+Z' 7_KY=:pUo4aң H?,\Wq[ENo0 '=Č-pLQʛi&5GFɘ`5DЪYɾC6> f !GKh6_!K _e:L}чi|rd#oN疠& ݧ 2 ڶ~ن4!eNgbM -^1ftlcjڷ`ߨM^W4Ԃ ;L " x Kw39}7|PSPtO ǧ+D M%$pK7F\ r8 8K\V!ͅQʧ&{05b׻Aq[@NEkql$Pes|C%JWbAQ ,9†_yTl8DƠF.9t@_=Ea&?>+jiG2DoXr fT\G2RsLwZl~j g}pD` , ~Yx HG=d 7F%!f@~A8QFF11)T Kx@E;^/[. сR~-'»)`\fe19ak#=1oA'.mJΡ+/YWO2ٮ{}]̊9#1!lޢX$m~ }08jbB̶[Љ8 , `e"+|@|j̆QDej+ -D'J|P]k$N Myz0:$= Gm 0-dus0ql Ls6;^yv?+g)Sx+b>SF3-l]vq}sߥ Cu?,l3:z#\c%&M[R!cqI)2ר=c#P<(J)j-)HzOtpO ֟Y:6+ZH8>ҟW.a6&8B'@f--aʹ$-BD\V@k\y|+S$o$rm庀Cn'vqlJhy#Ң(JbhvU9S<}q 1 9>7{{jҎ0T7d~|?ˀHDrr Qb̀ O“G~Xk'x˹7`mXH$Dq] p^D6=-#KM C ҴKr`:M(œ^Jeig0tom`w( _ |. ?;Nrye_i2ҢMi"?C Cfƻ 'g??_ w"L.FuD/΃3@@9&07֐\6D/0e㤝CKA+qì k>)];) 6!XL[TS e1?/w5)ɇv p]{Hpz m-Q V($2lY*lN;f0N~Io)0p°Ce^IaSAul|*[%:) n>5wޥ3¤ҩT!o_g!3BDץeԂi|%٣<~1oG`o՟n]l%KюpC;l93;˺ut&F6$(z"t5e?2(}X(=|#5,PVB:9B\_@hB9 ZBH 048m{43rUtOGjk&9u97 iX>*UJ* g87c}!9E\!?P_fv r:Fn?+kĊ{"v|9F'|\E4C@B 2J̷1q\ 䔃q@.LrC늨 oix_Y,%DWEfgn6渌PYkPવPkZ$oD5!B1;5!?Aۨt/e׿*+jgE0Ti/ᖤ{g;bu2D8bz^rоBP:Z;庳Kȳ\[LqI=PG#rT4M_+ UecϠx8`";T>5dSr] * 3>@{h׺ElV,TyiU5y;\>kJ2w9vn~Sl,%Y9} m+hn !J߾3`*SB/ˈ:0o$O¼XTt7Vo Q Ź_k8>C1;"}; r3!IF=/b[].ݠبHW}]q04DnaH@^,nğŨEbUU(FJ\f/Wue%T,e헏 jT'??f#C&NU!:P.]s ڹ89s5t;/ܶuIZXEںA>WQSK`+eEOi RY F+?W_Aߓo*<*o0D_gF1: jh<K^;NM_l.cFf_ff10;Jbħ7y#/[ {c5W[),3 `vbU"i%|oBz<. @8qwC0$2XEMxyɸ(](P<?P],D,,n7Ϫ: 6U,ޞ9+a,+ OOӥvfHaje#YEx]1Q;U)/a3_Rʕ!l (Q[ĮPM$ &<|s‹[#76}(5Zw[{+vEh/m PC^R0bTn8u9>*޲;6/PC-Sˈms S!MROwU uF#D9.hJz[s g 3LB9mR;ô|z:K̥K٤rehM{jױ3\,CP"C~k\k|%IBd.۪g`AoW bYJadvi~6!U[+S=;"9;zt Zq1W^_#@]C$$c OF27ݏơ%pք[ s+L +ov Yx~04 :>+K6Jf}lzS5N:|7I\H嗱=PN]ㅎeǹ@/#, ooIֹG,!.!t4/Z NLܔD!PS{*j䇀oMH =sF"ICƳuU~#axx L|dZKg{|‘_^r1a6|INA0,[NX1F3)9qL8:W j,6 Ps9ϝYɖߗy*,Tԭ VcTFR{9.^nt@\ݱ+O vAY|#WfKD#4%m]"*eV rSRe0^d zů}U2L\Ճ@q^ՋޚF/idFcݭH2ްx?:LoXyR< ;BȫPȇ^/:REFIi4X'OElC HAv}rhh?gY}YfetƳgo)daVٗa_+/K~KҟYlI!e0Ik|̆'13 s[J Rqv8h+FZ_{} ' %X8(lbwӊ9!wԳ܈i77-Q^PcLBt2\bt }R !8t#zzbwYy|cL.;Ym?U‰v:0oTKi}zvN7˒8E\%dDD N0>o121^IÞn1p.6:7` sMx4[$1vaNL|51xD=ۤM|\S8 ;:)E#B~3gՅt tۛFc#w >X3Aa)yw"Icd WūD̅0gb$lId$VO,O :FJP_$nj- XX*Cf VYÅzB cG4XO1rFh1W`U,\Yl9Z_ڧPA˓OwS.$ew@*@lwRqouP>`NqM`{L1o@E ȆF v [{_cN#cABWaoƣQEU&Lw Va0v`\,(\_7C(Qeqm8B%P32*DN|ģ>W6间IyBPNQeAK\7PX~Xeye`Ֆm>MLmǧvMx6s<| RUNnv@x1v5K;bjN;?ȧtޱ`Af2Wp$a_]woB,-9٬|q{"4CV ~d{0ѴO,ed3y40J~h9Q9$p4 $ G;ʶǩo qP8`U >Wm=kP вY0JB9HA \p@ߤp4t[erT4 rç!l!>\v3JkDӧDY]3ܪ yH lku2FC, &^w g4;H=wdJc ȨU9aDǢllԯ2pVeGbX2+IMíKbauڠkE.2XAz3;],Md4vwqçBB^)0[7Q+jF3Ju2LtM&o!MJjEΗZM;+> ǟRz,a 5A}UJy&y ]ْs.OlG7v\l~SDsO<I0&?o=C- $Z zˉh37K.`;G^Vr+ W%}y'ג^p䷫&Ddh,&kN5 p#Y-&Gu=Qi((sc% ސ@b:xRqۀmxkl*ajuugߔ:uSWun0:[D46opɯD<[ rt .WMD[3zWv!!)C`Hń|^U7W-D!r]ܱ ]a#Sai.Uv[MwHȻ ZJX%H "wB&^} - 6s9V0V2kK?p߾~y8|ԋ]XR5zr"It/-j0׸K렻D͖*{9 /+ibKL5P`;/;wdU !>յl6z'K@.Kfh:cd;4j%D;ɴb>~%|^0J/Xc[ c"Vld F^REڐ 8m}nqx2A̍sQK2V`QY_DKk#d`_{P SY* :Y  琲2kF2ۖCo)a/ R.2GBĚ!n\IE%3 ?T@# Pv+l\-1Qd7튑ѿ|MᕺЮٔ~^4 ]s1/N8@46$`&V3(jILέ>s 7|鷘nnOMcH'g@,zs+8[P_kOk64'}f5ӫK;>Hp?ȻPZPaƺk""=|kqݥχUimLw(0^5gg,ILJ.^p1K1BCyt^"R(}"z7hjޏ3]fpDN<5G"ɀGi|5!<|CeGRJ◵ctRyP)Vu|#';aKԂw3c6[<*W.izYWGRmAa7dD 78zIס|AvzS(>IШ2Z(càZUf(zǜatXJE<˥"Jū̿*]i3Žaf@QNOƸf^0J0V-k% HfE*Fa9bേB2ք'`{}?U1);5T' B@=7fsğfj4 R&I%"6e2f00}g upAwz[iL]Ú`rU($.8jt<h;~T lG+?w9=av^7+~\,}4L$"oME 2/]58kHFSX%L^]Sb0+|+ZHghyyƛ=J}YmآF3.-y=(CqONejy־#B Dv@&%2$\tR]vuhX ,]$p4ռ[% 2v#6/\Q} ݉3ILPLqd7vAx%d6Lt[Zկ![啸, !NO"mb:zͽ .>̘0?-Mq#SeQC[ZR4c2k(Ҝ`5-AS(qՑ7|ۿ[k:gr|w5QW*J\5HXzZƦ+*%3W?U`VNOvs=\Pw8O"fFx}|x U#U1V'(=f lV(QW=AQtmoUi-M/7#%aPc -*!ۧq mO@4A)E[cv6\g5oFI]~AVυܢlBdQ 谏y؆фZGr*ս/͕dml&x 4(Ct >ڦB J&F~Pv#=x#8LqTh7c>} 'b`g8y'X-&/ Edzr;Y$]X%r̊'̵d]6Lw߃}9O]BϏtc$Ǎo[@o]6@m$^\['ۼ,(q6N[@KJdU'+om޿~KeO"&Lq[c 2ERq&x̄N%1Ł1U +|9pX81zZOr#_7BU-ǣvo^c( l N h'a|+TELt[1UNWO 1d_Og.a}Sm0+DM'XŊ =S7{M0;/#V͞۩֚ @JAդƖ'"6gE AhƝ4+bOYj"  ?Td;M4ͬ[ٲ/Uq*%|` )@շC5,ތV+9᪉dy$:OŖsͪo ˫0Ii5+Jrzp:J̱f EՔnh[`K>&:N߱丳wNF/c]E8!&8CAR3 ,˦+F1wk dI?iㄿGMє0IMQ"rUچF ڄ!-aoKƙ@ z"xBJJoVT/2.:?~azQgGq`D㹏;@ys)dqϛR~Ȯ7 d3A )m@OÏ' _0:JvT<:E~Tbߦx'Z7#m[ZHO#C Vۼ3Lb;?Sxpl4AɄC#Q;.1_!5La{on#K iW΂o WZ)ʖ1…ǻ' ejۂݎ]pPn٢&ܫW^=[NlnMG#A%Ծ- N`63~LyΛ=Mg2{ Ոdw}NEB۸-$]>IWӍIhQޖFR}AZ\fJcla~U%r-H0@e|*aV_Ӝ))"7P4mHKub8+hpo= +L0ÝE6y=T3m̨ sčz9C5錺dj>"{?mzCƶ^dbJރ)ytz"L܏j(hӃPj~ (I?@C70əq?\o_c 7V>f~%o,!|#A|>p+Fxs3ZM&r$e|(Mi}J/1NO7)uTd#iQ9Q4` :y'^ni ԨFbQS%x럩zQPN/6UޛTu&/w*]ԴYEY~|&ޮ]fy`rs%&z F|Y˭!}>.y47E&O8(Ibw袊\Fz E 8W Hf_M͂AC+?da5#W<]?#lռs \9Λ0"RM0fyxKhK H$}蕆J@p%&75QTΠ, s]G2`z^I! Zt%7^,x;"*U[5"Cx*-aTJc;U|6bE4es/ .D&-K(S_l`vnfAѶGiX{ASĕ n KOh 4(2(jxOd؋x# 2=HǺH1*",bK -N?i=E=ff0ϊo2ELo)hH0rr} _طXAB!#7$Ӯ (_A&#SeE; L&[)Bb~ ƭ^*u*ܯs|êMD2ӻ2Ru^>ӛ |d>lJHx악;{] ..q+Z[wmK|<Ђ/ߩ̓;hPrtk 0b Gh|wX|\7# KtB1!VE]VB2RfaU[Z֔,Ӣ};\~BAy~Fm4:Q@ՁǏg{d){*j 2O(W]{nD@ލҵ>H#Hi"ޣ uZmt? BOu#5 n[zg\@ F"7{?L5k3$eG_ZXRjZCz"jut\mw e XءZ);zԬe2`W. 0wN8L[[RPX58R{N x4z`D*:.1~ JM 69nH=xͺ̠9"ɽzY#ڌ[%Y oJCvF }[f-ڕIKu~$*;LrZB 8-FAi̱OK.8@\qj P(BobntagIX#N&?nsg-^ Zx #X ~LcdnlYI9h5ي8f;SPm0 [^ٷ܂CqB3l<, z3TZEi>H͊X*8?skɟ՞al'`hcI4#S_Vo`RحuUL=,iO S]fN&ICF,vZyƯx"cSm=ǫ W}M&z7(`_Z*EtoJH{nAi5S=yFNHV/3+3@֡3<cFyؓ>DԈvAE|⛩v_8%3ݮ,ol]]x AWg ;.(:KD{~:;Ihʤv>3 ,%(~Nu\Ly&ieTE e-Y+LpPtt9(Nusz*ˏ#Lؿ^o]t|<&)HjM;K'g+3 tp^3Fy]$$E80ެ(-NGvEq "M=hMA2ayk=8%ym,#بkj&~z!z,EdX:&"(TZja ; ኬ9D=_6iw Xm\2փ:^UvmˉiFU{WL= aq”SI.r",5sq˿dx*X!ʱe 1J~V+䡆g(*QZ2nm&q|"|(ݐ._ݍ QGM|8-~zRҠ~jH"ؖG}l(m\\>DQDz( UǑnt-jEE+)xLJă$4h#z6flg ? ^H^Bǂ#jFKz|yE=HM 21k5}*$j<Lx5$_'o'ޭm%ik5±M:dQ(c$d/ ,3;7o;LF}3]=솂bă# j^d3қ}}&rݗDV^e5̘f;Zy,;ژ}'qm[ng&MA$(x;v^-J<Gjku9Vk<'Y3%wgV<:E\iXܝӗW ;\C$֛q#Z>5@j{c=%S,rrvoB,ꮓٵ)f Qȇ.M>NO#VjE 3w؝w=O͘x ZA[ wj+u#AVZx͍Z *  lM}ܿwbmlWdnx9㼗Uo7ˤF,d V|xr[%^0{W,UUTiHw짡c+o0zKjT"Gs_q:SxKPcFVﮠSjӢ #H}fSx ppNd+wCAb^>U.XmԔ6ؤO~KɅhM] 'd9z#`% ڌ}|dh%l>~jA4Mg)yzl"7೏GoBԁn=>g~h"*rX3}Vt ݝx5wgMh"G^r ]pYF+,F!JQ`1<8]),\n"g/*55φkKƭl1D#DLOv~ O&s.]{Z␌XFHr]Wh,'Y8p[NYmy֯4A`ѹ]9\?5R lfP#h$QMⓣ=XyLߐe8}ςSeP5ޢ{#ru#we:6P3D g7L[p/FcCrxq1t4GbPSE-mFm5Uթɺ13yBgs)]mS ۇٙͧ/EXsdž Q8*>Q-}dEuͧgV[A)]Sl^6 eY2q O6IXzL/_[EaTrG"9FFz܇ @XT"gf (#?rZ#בK,q7{ SK(~J~8Zu?u47Vx0GQ#{Zϩa@ZK˜@_lZ`4݂Qj53ka'Ł,6c3j"]nץ8 ^k ]L5+e!OMdZ.й~me$/jV3}0PCZ 4׌>2)MĆp%Z$ĪUuabe8z4; 1!"<|x,0@Z??jh)eGuɟp)z/47'w%u,74h|yc?Ѳ'R#f1)>"c۝۟YJ|L!sbEJ#Rŗlr"Ek~4m)dt@aO|cj3Ǐh`Z>  b]NGCU}@W֠,ٸ3;)pQ z嫉OdpG1%mtf ¨2FYoXEw6ҝ$a-ؘ{2#y}) Y}6{mQ.tVc\;hkx^ Q 4}}z6bN1N`>5 (9;/??Q1SqpXؼ[ `:eLƸ[jFBU}T0-5t0~)"~wX0|!M5SN7W"ĹߪIH$sdY.⵻.tz@g#Ȅt[l&ڑED~80W)2G~z.*MBǢaZD#h30 EZq" IJ Y8?6Tw?[:}P0^cd,1WPJx{Dm"PEu}oƞ KTny UD`'ԴNGڂ7vpb G 7,ɥ:4ת|FĪ#o1$@2&I ZC#ђEXР֜(a䙷˝csr p?ys_0[wK1LSV[zg="xp$vBUĮqx4P =ÓWD/>BNw>Ɍ$,_N751kAz;5xTtUԬQ{_{R[4=< %(6ï //&Av^$~j^B2k,v8-fb \3#ߗ]P5%8?z ?EH޼k2yg  m?#Z ` %ދ13gDxFp$cx~ &/ A ,62>tptjPM1^s5PZ4P[ @~s烫ISpLT}G(CrJ%-TuFST$b{J4>VbKM2qgSJF2{Ph)5H@V9GV]]-6 Q_Q졅H$ &ZU>w5NcW@HdL%Z-w|gyӞu ~L`$ 6t4םywښFDRiϤ:Xl)nNE0h374l Gi$+۳? f)GPSXgL TBf #W-׿{ЍL0S>^uN`gk !k"Wi>-Y)Mvf#)]OINL6_Z[$UFjI|G=u?EuÙַi}i $e{(iX~8G`!˃SIY6ʟ Vޙ`MNǂW[8+ڝ6d2xM ,fI\,6ۈx4Ix'`)!rCFĽt>v K4$4ȧ^pGX>=%Z*-Qfiܘ'uOG*/_{ҽJW'E6ZdC, m1 D8{wa.?vڃ#[>R2\?uC VVDܠžAPQ [>`',%Wl}\tP_@f,퀭o ^ϰQj*bj(x!}+HovlțFS+"f`mSśC ޳g#btCp~Rc>\ŝay1&4|19/$V/r}XQCR=>4H[?Z+nzz8&(D{K+tV\[K`*7)u%:eȲ+!bڒ!fAKLèB}$tWr1ycDgWr[dzi+:SG3bӺmCߙZ1/? OƨTaXXXxU9WC=tZ ~?fߠ :pXUWP_恠Q ַc%Eh8:TL ~y~Qtq9E 0@g Qzavt@e2D?}v[DjCB& ӛc_:w*%YLJG6`%.%& wկCR[$Ź#vS,9=M=ivmd=ENa;dHM5tv&9w4B1sP{ʘHkVbB֗aj}:T6K^/|<92YOoϴD-3oFn uSQRbF"P*/5LHS?c뒐nu]זn8_DvPVTqR] WP`{ǖ@'""j4,ꈊKۏU-+r1܇@sh|m 7yUQ]bPh#)AK'O*"sZCn|qx!8^쯒:*iCAe'N(u=i5@d ͖8OcmE`)g{$+ BF~40|aF3K@|KsEo.[ɮ G94ԡCXnY_Hlh۰8<*rOP Dyf]Vtt +w6GA@d8۲Snc'RZKAh1alЪmX?F[=0ex`ֺzE"$2$~)u!:=,՟w*5v> 7ozOKfVY47~y~bśW-3 iaHn)ߦNs,H$=uǬn &𿧯W/DOJ_QXWdYNND]nu='m$,5_ V,W<3*ʄ ]Aop6'muo͊= &wcZ(Es|wX݅ ಜ|[(f)}Ê9itNᯝ)ߘ ~N1kVgn~2ɺw6ӭOB*&A jGB*w7kàcd^oU(څqv D~FF ^XV Qi#v0x ~:˃yEԙYVf#+ܕ@;MD ܻ,(7\5Zz>jA[R KwUeW+֭74c=x2 qDH4qk>]HJ7+wh6sb_$gƵ| xk%D@}=ʎ F3RpܒS]{juQx8 ybXx|!FonRZm"Vۍn}.U5a0 'aj%tpT%-*ʮ~0 *ZAV _g<}M&`?wJ=;p_,93&Thb"jxS}@[Jb:U.-7vAN$h ߱%b 4|K{e%ӝ+A5.+mTOċV$jtA*Ѳ6?v? !<;p҉e=cZ$ߵxO9ׂc;dٻi)a~֩X!`[$܈D؛U@жwڪrk8 gr'aP"yc(6t``}Bk^9,n4W~x7fFMPrsmOtĵHby's=Ǎ+[(@Tl?"M* HJ:GTG{]Q_`Og)֘k[޵DR>:J5d M ј faf..gs7`uq+D枥LW=V%vLOsRhPը۱5Ύ.~S8J'Юw& ߺW֝g+DHiz@~GEtMce 7yρynʰtIBPo,?HXxA/7k2|p>nEyNA 9ҦCaq\)^S~b GcE5*) e]n&F[4"aO0z,H5f~AqzvICL|>y5OA=q Ո7\?֣{ggӔG?~/ʭ7HjG"`mu\VT8aPoFf󜒨$~.Mv1n.χ6˃D4B¨3nWC q! x2&lZrs0ٚ 6*p,\G#Ԩrی=(4՝<Yj6ĘuU9AFhELi!Dp3p5E&p;h\aMHND$ XpwڕMrcYN޸Ͱ3SöGjޚTqь!.b6dq3B*R6$χEMݰn|=~5w}J 9 '6$ nGfz~yW%09#{qB\NGg#9xMyэgj.U<&D\% p8IE$B20tlbDVri ,#[V:mZyg_y9R"*^ vyZ3[_x<ΕG?u*q!WǗeWפdp#kcƀRƫ.w;AK}d oΠwR|U-d9:lE'VfH R1$XH:~UO l /D. >v vhyzX Ti!LIK)9CL֭U{;>1YΒvī6-1V~Q5-+I64x>4FIfPcP˽ "IEZ&GƼn\B3Ś9tpAA'[ cBC/ٞxWKLs[Tj5vƸ=p{48i1Iq#ra tCx,4n`bϢ'(D1D8?|v\dթW+;2dMJF%i?r/z[~#%iK7T'E'ҿ̐f`|FjD@,0I_wL \&ir=*>ݤ{mt A:Õ4ؿwo; s`T#apwl>2Íx!3&g1 lz)O$H2 T̲%RLpW`>ۺıp_~:*{f Y/4hxdUgQ?#mqu[ӾGGU~WV$ `2le.&vb<ݵ9KNdI{>*qǟ-fC2x5 C$F4iy86k62f{!/# IC%2 ̣JizzVw>ef_Jzq(oB~ wmr[/;i :ؼ+NQ ߫o}/j.4۽{Ъ.lhGAR`.LOTIv3a.I%F% vt$E L@I5 i`'YSU;YOlx?&.J|ge9r[]_ZUv ̳._5!&>S9Y*;-*/)?p|#Dj꿋^|fw-ҷXө-7]Qmrm?~oDنf=l;Z^'DQ㖡P8O])b8}?®1W9r.*&{1i80_~RpT/4]6yWB@y `LzMd9I«c31+D?k/m{=gTM{\4rQW)0) [2_ q?3DV&ϷU|~!)E;laDX\D~jm=l_d@7P[a<68yL{<ݐ32&7u{ⴑ:FroIqЈvU9S0Al{;_`7+4'/ y& GX ְ Өy $2>) =EV{WeT23`?^ܷ02ꇀyu_S{rD2rܖA>+`+픎BA:uz. }nUpGղ&cL4X OUD(!2Lgf#T#Z0,uuyRJ%G D#>3Adi.7SHT-pig&79ǵ)uP͒Xf$Ӂ'GbXDIl={<4B77B=u \qxRCV̸zwcPn>ps>ӁD bx- Ofђf5b9|9$=DP|b$((_c˲GC03O͂T tHnޒ -[:Z,٬HwԈECuj =53.5HT6+Ϧ` ow_r"19fԹiB ;'dwVuB fi^}4v I~~s1jѺxi8#Dž9% 4^9T=G%?@ Vu#Ne~r[0{#߮K^O:AH9ib%n2Dᦝs1jx.{j:08F%\sI m(De鋈w\SH c#^ S_# ub7Rۢ}Hq]3+QN_jbe*N5Z=QwOH6\PҶ$zNe8Zc}Fvb,(P_SR3: 9j3:HY9o|- 9 (LZO up#ƞ` P=`U>Pw6U.?$U98W+)3b^^Jl5<q\2%mc;ZMBzqr)j/&B\FU`Qҍ>x~^F\ Uijq"̊fz )&F1t i y<…A{\;FVne9;Պ+A{\Z/`py }ƶ ` {W0ci2si7 [l L,:c ȉN,xHU[Eͫ瓋PvҎ)ZP'3u< b؇M[?91STL[GJD٫O W*Hj{v ڞBwpal5=swnwsڕI>R7ɥEs@ѤqeMUFr>Շ-Nx]%ʌ*ueEr\E6-Ǩ[lV {'0y'S:H}0~fUծjjw 7sl~ɶ<1՞LO &.[(@gN}p s1#~xKZ٬9:7r҄f9r"Jd-`8ogoR}h\朒$y7]u?;!m<p8|dDH0س45S@1,EOH)nTTMfJ =3=-3>46GfH~,KDבpT 9&z⑨bca[ney\f~߂NbeCAD$Nq[$ .TNFLn$9 mEQ >5n  =\&jq?iQ/;7% \e'ӳMdC-`ҝ]ђJD sIv^(./T`䪷GjCTpI==Wi~CYRI/-0;Jz s'`v<D{LK Yƛc2[!< v"S) .nzeC 1E2ў}Igq}nh v4 AD,Yw?.@{k+Eyv1j EEIblAvOD58-/CuLB 2'TnrHb4QIij14˰T-[Z7^MiKq/䀻AAr`=;7^wP;5S9™W]PmF N:ۣW/ `ϧ{ DUҀFX$) 10HT;/ Kg`Kͣ(86O L4#.@dE t JGS!%K: J8 ջ;[ZK6h:5%x;ذV^;S\SEMaKmFgh~gMa.swkj0ï{s !;{/ .fi^q4ns3/ԒQzm#S)0ki #Arx޷ՍqV5W3cۇ'4 >eԪЁϷI ?fДsG B/ztX C,Þ@ex/޲Q9FY8_] ZRJ;ٱC+S̎)C"%Y2_Zူ]k)c纡GS$)1b& M@-CƧ;C=c(#w;qb])7N-fekȎ2l"DmcF6X[_/o⍍FBߤ6H,)nr+[(/M+f}+}@iGQ&[% jg`OaQl*1,_ Vc1?uMl\$E /c!ֵ~9\*Q෹$i=リ0 TO-:ۋ冑-\UI г&hVgL;Afkr]ĜqIo!_ԋ׊Fe ]D'Ƹk:܂%]槲R^po3D ;X }h=M_'ofR {JCetke,\U'nBmwםB.BfxoYM$ov/xF2-lG2R3M"kdz>k>[.@8k86Qc"5Y̠&85uh%C}ά !O1 ˥ SS\?7T)JG')iJ÷P@1j2&& [(Yan$#Vh_m*v^ܤ7b*#&]%:?[O``h}T^V!Xfɫyb3a﯊%} )'0[T7ml2G[DLFSM{etzSM +w Z#%uYW$ ἷ dϹakfjRrst% 2'~==;䬽lfDq/ 4/h^ˉ#MH-vAF*ڐ@,J(c5P9`*Z Q@! Z29~&=?9ٷSH' ^cOkT3jڕD;xy ♟4x<{zif. AX@۷/y2NU@hPPmV tXdnG m휏VOH꬙/R4(%Nd鑇͌T>F\HWJ?W$ *)Ó E2)ؤ2(ٷ ,_tO[7FA l8O ﰾynURg$^VU=uCYkJI1Ɲ $x mO>^znXe ̺}2ϘgazjmEgsMͼ֦/5M6z%_ʒG[;nG)^ Uog1M#9>Me7HY&]P\'I)Z*/(x2$09u89)BDsyj85~PGu7^{PS4=EsVǿOC <9َZ͇X\=ǗIX/d}C0 yع}[Ԓz]fr5 V@}؇aSLD>Lcd7( 7v*w@iPAO2͡8J033rdžG2-%۾-} @2dQS9.b% _+Ƌ{nWƗ'x/HG :ggOTwi 29Kt 0'},R9meM FJgX@[@މ/^eC}fS!d|~ЙxLsϾu*vϳvS G5zۍUD(2EKǷx+`Ds8:t^$J^NpQgPj=KXGx3(0.BP懘\tp{Q[|Cc2 e8`xTb;|=liMYe嚹BPr]&+Fؙ"UsZZC 1` WꭐJ1:[ށR3jQ<뺱Ҹ芣iDxL;iHI#6xGA|zTɺ 3HPh>B\V.^rQ\{marGTXﬗ*8VRӑI^-HzJ g șl|Q}O`7uL d[ F<{pC;ZUDM0hg86x##DYbyxR%&g^RM(4H[_<!'[lJ%3=m.@BȰrM·iu¡?wv!*AHXR7l$~?'P Vs"BH΃+x0IGsgu٠8,wۮjH/Tma'c IdQu\՞a&VcYMaV˭z )r"?.w~E ?u8%c j>MhWatild@0lKrQ~6MQbnmccEdI0  5:#U|%]t Ik; zaPT($֘sƲP~1Co Eb>c.r&DB4?MQ"ٴgiYzZ^0!! rO]^,%>Ie{{=Cj"S ib"J8JzNz<7--eKQS:'6W(7vVuX4goھ*1 jXW0HFʯR!sc}AMx{s$L rQ2y.wDV/fU-orηXH I\bsHˊ-MGc.ȁKGF7Py*_]8"Z[?۶{?܎7WXU;JW@1jFjM:ZdFBZ'CUꭷi'(=rȑ[ٹ= uh ̝[t;?q6D˽^wn$\PTd9#(^ ,k$5$LB\ǵ?$(S{zXKQf= 7apҔFTՉ"!"UEFl8^qEr芾2!_X@ qcb^RbMUi86 P@OXrk}\ `%X{-yڙ:EDGҳM 8hhkfY4X"|>a@O p˭,:$jh^MvfO hmgK6YCQaM%K Ug5:4 ƭ6X9 my:m)JG-2huk4bXKF֫]ЦWK 0 w8.e:R<'jlP"`m(ϟPcA2ĎPlÎy$0}3J5pY1FEeg`4F8,P [˵Dxz!^4/\bo߷ԆfE=aX\ٻ}͖&'oλj3t8\}Usse EpaMjGEaFmRj"n}$*΅y)~!щ v'qy@ cTh^SV=L~\??O*vA`hd&sw:HGLc wNz G?~aX{X}}|}LlH}WfǺ!П}%TҌiͩ=~%=bVxqaJB.FGT3m0ޭyb MSS`ɒ a5]*OJq@KK6|&bHeu˗Lgb `e[mI,vӔ0eB;k0תfL5>oJ!w!,[\ʤ,P5;40bAx /?nİ}i}kߌ6R\`m޷!G3hzTuK=mH#*TZk2TO(4Ƹz{bsۇOvO#Z]X8LJ#Oþzbo5.tN+dc>)b?)]7lhž뙥 H pI/-T*R#-Utd," BD?FTx!aպڞ*nt^S OD/>$yMQWf'\l'6;‡U9IZRa \%)fsxHQYs«) χ!$根qhѓ?xy P|j2:Rolr='5w0H-ԨgLz4Ovy>䅅ԫ@Bʣ y1 C| k(<~EIs\Fy[QP.t.a%$zIbnᇠT~LJ7IF7qh( tjn2iMqzֹ։\SJ GeJk]:,L,& {4t h )\ڟ7Ze5:OQb7 HikkvֻE( f=MD&ׄF[ٰ~ gGf.,zQ<=q/*MyS0k~ Оl8:L (i^S$= gh'r̯2RpsB3 di*{=T=lsT7 {*$F+S@烈hc#l9&kJû\Q5W94tLp)eR11o!hLmŠM9zlޥ bsJ=Sb 0;([c]U+*B>o6wS7,9jYW'3>Ԕ pu~;o( mMʺY܈"#T'[|aG]Ė!e5+?qg@ߤMs{N8F+ZhP9(o) 3ͤE,6^>Z@c܉jSb|ώd qK$$bRZ{lcNza>iztkuUqAAР;dDi غӊϔb8'C4==vҿj0`{0ɕ믚'mOnLiqJqHUHJCA•6RUS'(R6\=h9{v69U o|vO uҏNF Vz95Kt pmTEHk/mV.Óa1NIo} SNB|&bCy @.]gel:~'o Tĕ杛4cD[o u.L2W &K yQb#R%5d6ݶ{ Us |yC1jUEm{R~^s2LN RuN4Y0@0/5)cpC`>=adx 2E 6H@i}pɀt!Ů0 `CF"_ Zh lnkI*};2e扐M`YfGNukW2В-qá3o+K \=,I9#?@pch`O^m/?T)Q9b4̇,v{w,p3>.iaZ"bڈ?JEp{rVނ:=,.ZPsCaqWKÄ_="Dj0C%vMELJ,Bg"h>^_B.m{z, pӃũn33 ? °60͇] 2leN Lcj ml*пA{ 0(r%6&jׄm"{+Mz-3+77RqЕ g[@. UcxLf}qAKWc[>,uXV9+U,9//HGL[1~2= Ŷq9Viz À^YJ2xi׷F90E7l^^w8i| '3bif9eCp#pfGǮqLKt#$A4I0)Jd d +GGNaدgÆL$fJۥ}WŅ:/0$||f))($SٕB꺑  [v' NbE>c'EMDV6'̀;„GS1pv ^]_spx<#ܥ<}|q ;-T ű1iD-N6,rr9ˋq9ωk)9_KMo&5঒:>U6&vi\tZk"Ie4ϱ +ˇC|%U؁;NTX@1_{^93j3ϭS6̭W#s?eEШL'j3 )}c),o7 Ϫ&OsĤ"3{l Z+{.wZω>H\|]1 )wgfkI_7ޥ/CiG6m!~g[I|tO y& 6͐ ռ# IΫâf;Ðxfak!-M^I#냑0ESOb1Kԙ6FUIZvMM!^ Ĭ G!+ X3p]t=l"9!CEF~mvX0IgTY}fM5/#C4sRl-j1TBzHrEOx9\ %n3k #L@.RT(h@Z,TQr{8r<ڧpCuh2h5#`WZsmw=NDvNjt[)>%L`Eƨ2c :\jWHS ͈+դ=#Fv[Y5z3eq|p4Ā>:2cf.jaM``ٚ7p7}LAqooSk!ƅewR-w>!seZN>gjLNUX'?oR} 5k'B?p B4?B.JY#WFރ@(~BP[:Œ|cҕ\~w#<VC|&y/[<i'/B?t{U{E4'kRj)sHNI;*>x_p&hY@ 9ZV/sF~8u 5RU"OG:_lnYrbX`'Tm $RhT2p8ɍ^ē S+NΆ)lx_G.4p1WX~bOKI,>˩9rv}DSZ GU5q$0^omqEuۻH/;=(!uf & Y b`,1w'H5E`sKIhv!huj^ŭIF)&X3ۄJ8#8-%wJKOg9KmIY@<Xh-%ػygdjV͡BK+\=1nVya$yIh jE܏"DmQW K{P[B^WWnLDWdj~ zMN o_ȑ]kK/Pm}(ԷP@#Y G'4)IP 4 =PƱ}Cg?Ij3jߪ^: ~gVS{[k_}N2z|4ݩ*?h=؃{y6z3i9̯Kl`n{52@$GOD.Am;bvHG`BD81*^הZBX +G=@0JD9+m>BT29Ƴ솀Yldvн;65_0;CHjC@q[l6<ŁRA)}>ۣ4Li\j)aSrn~cw,M#xxI\@Ph/{עҸia2(ֽ i3;H~q'8ꋷ6Y/u2j)0NI;;FFU!HTIPZq2L-=3[νZ1&c aſ&ʜ'h7أD)j꫺[1 Z:1&R -Nlr*9vLБt뢋}E3ΤˣaQEKP)lY^/ůb q"A 鶴}@;l00G?D妲>bIE؊Uz.1`O#`\tf@]`J#A(b),X>>Zi)dӾb,0V{6sTzV { y0.KU!YvجYlJޛgd&6Mg.xTva:^p<ݷçB)ѣUq6y;hm/g$6F{r(&p{]YSA8ntk"{.-a+dZQ:iƓa'K4O_KS;9Xr٦ʴޗJ:=X^K!B(JJl 71K#VZZF6``;U͎ù  俥6LJ0c_E҆&@)3̳f[icc[n8 فvrz]&/P: {85XW V6 _ G{~/PhB9S?vX8 "s+.Y uvRpEwSЯM/}bp-{ mNծABP_kn\SD O"5d?ru^>xb05@y2PE>Rq3BLv;SؤƮZlc'X&% \ b#?ϥDe+HA#p&Fa8 ;#@ xhQn{~d`mi,8EJ1wiScr.DWY5 قRQi afB<.JQ\#*@]x'>~ 5Ә6, f t!k)B 6ֺ72"ak&O-ȃatYMÝٺB\U}R&& ML/eҜچXys' w̹ poba\U2?b-˯qQ~~e1&v zz3(TYϻ=Pwt^$a?<"}l`?7xmãMoJ3k5Y#ikfE<{#@f;0_{,'x9L&a@9m"4S5R|oo2I j5~:" ˬާ/5!&BZX R܇5cψVri9V`s҆n?RR2(c ΄\/'%Ś:--T/IqVrydrskJ ?*Zl4*dtH/N\􍠟F5@ eH4 8ym;gzEEhSR\Ҡ,;9R.c7aǒ6;ۭ1Yi[V9Y,|\,g{Fm>1޻,꡿ ؤV&`CbM^$^=x~>%QmPi4Bhb/CU8 KdbCv!`mJz;gB ˙Yz7;)%L`S20@R#w5>~@z–Y\=MɪJ{$`4| >Dm_h%p2ZT{L{$GԤ[b*p$L4qV3JQϲI͒P㭠Ʌsa'A1J#ZnPӓ)L@/+bեL_!CD'd0Z|K[E+!f^88>a^7jx''}׶v.Kщ2>RzlBÞHm\AҍyBŇ9Q:OͥC4Wlqj'H/x)'r/ k=!26 JP"=ζc"3fLjQ/b|w"[~[!n `H=҆CǙEIۭ88$p]b)͒bWيDt k=YO'> NB #ugX%f_Ls)ǼIsz5QF:0='&%yQ V4.!4`F2׵aV:9CvtK*0R*{DM~/Ym]RSD AgUw:;U t2:b!M;b7&oޔy7D+ISy+u[#PP9 V[1vĿ^5>X9CTܮ[ToL~ 9GmuIaBd0cj5ثY4\I~xwUBo?\e4ߤds<~Rj XB^9/m;m6K:Ul*|iB /dc* +!4%V0c+8m7=Au Mʄ1ZK4!ۆU@v Tbuԩ*ުY JK1@>Y-WB&t׻Tu坕UGpF9W[ڱ7:F NQmXڃT3mp;`$' `+"0!塳qMq"R\ի:]<Eg|iך2I !l=sDvfvGw5WAreXWȮ SXSZ޲&Gq{ 5]5,u5B`R4eBƨBj.& C?JƸn7`3uM祯U!Io&M#,Khd̶+=!nr=8+;iNчs-XRP|i^(WєB-Hvu{Kij-B^_qrR&c>D X0凓CԔ>HM8_Ĵ9v&r3_u'Db^FtJd4C9T5bd5?yICCXݺvZ?0 ) aG"_zKhw[mymq)R7 i#QJ!RM;/E/Ђ=-K2 # JOHCvmX@AYSv7z՜c>qAlY+Q X(r".&g Im0h(V8}%ǞÉz ѱ ňrs+ObF^ !&襵8G(L-׋8DsS7ENnUr f*h[ުYr2M3| uF[x%OXaruJ_ NR^& \EB7[V%"h-^#w.lϵ *SAs M95[$Lԛ;꽁'b%J Ĩ>I{lE+IK9 (WhϱeU)7OOD^( y/@!9_olMm,~%-Czdщ܄Ab{g5]Z8yl@g8BK{Ix38W_cMihdǐaA'69[G{Ը{5 W>p?!X<޷*7u"H? qzIC$D0BtPԎZHu'^ #Ѭս@ p/z'W&ԒoFb ib7D'|v|D5c 1W|̚$ȃYF-CDV^(5Ȁnef-aj?Wy0u\؉:A^n֟i}2CsϫX+gJ[{9 j]Ggv_P, /{N@;bebd.mЉN?5~_8&)*>scXLjn3m{m$7 ptdr#+';Uf_|4Q)zt CHB`s~Ha :|=6)|\:{? Za+kWD38ݙC(6m3 ջ3 y/1>!ڌ?N ͦ^ӓؚ*S[m"f@rȉ"ӅbijvP9 IBa揚Q KqP#ɰ GY]m24Tg~m *%NY%*":aݭ4{,_`^E.C8j!Ӯ6lxn'u͸sCߍFt{vt2 P[>\F!1!~&j]ܜD#!٧4{ʨ>"dYoͮrK[)T|˸15Bmz,Qp!F@sIa4.PL*>~eGMMg3 8YzP"^Jsq}xm;nE^5kO:6FEM\Li"NF| ee/O9eK̚&* jED2 e 9'peσ?NJa!x:3fG]a!` Ȃg\Ce&ҏr½JzBCO,>y'.l}`WyFYEbkeoNj!9XwxNeV/Ag6ɕdy'GAY<Ǵ^3A#xDWoR "LZ&P4N8$J*•(drZ_(;.ϵ@t K ^=`:8U/V#f@nw'Pf6C4b*AdRۋB=BV|"kf'339{\0 ~slNtIK殎m Mڡ(4,)VFPTE5۫艒:vT\"/1t7!= fRLiٟ;gƽM$3tʄaG.7Lس;y/6}D:55 ͮ-D*YtY#|gv?z1)٨)tpť+]fHdɑ !̑L1ݗ|HeLd~ H2T`^g@FqyeH5T3{S1-Rdh_d2h^فLG='3ip@Y0O&ﺛu;ֈ:=& @ J?Ig frxM!SKM<4?k02?-ZY٤؋V'1`AТ=%$2jzulR:2M[7.:yfJV9Fc.BU &Xږm2@o1tΦ 8S`z6V_9EMz[!D41KNd3vX UMJۅI*S{/%WČ@1WGI$Ήﱥ7ruA&dXv;E41&66IҚCU]yQ]3jH&F4;>yYZIJnT@eA=4I+>o7>3{-A\TYM{'ّ+cLZlqU$YBR;t%՘q;{&spRVGX3n)Ka}"!+uY-`BuIrEm\qp-\"ZVBcb|jH)9mT2DCFBaAGjtx -rqs$DI.‰] )&< @إ=w#%v-Y , x=ԽQHI/q8aؒ$ dӯgbbq=E1AĨzZ¼|wӷpGdY Q$q`%4D.:U[z~3thV"iHOq.B]$GK?6ۍ}JGXR !evIQbd,@6SQX|$eڔX;^}SHr-?)(mϰ!s/|͕إ+%_ K"bUw)Vt^IӄښO3r@p%X?9?ö8-V?kMϧJ_*:|A뿄: I_X,k, :7*܂\1IIW r|}WNzF82ݥ V GhQ` |\f[ei4>͆!̳kۭF&27g?1K>bE  Vu`o$=(V~;h9I\nEX rG CsTcqA6Wu']Y'"Y?X"1n_&kG UfZb 7pE =n qy vzۃ`}=?HW7?ȴ$)TJƖDUfM2zO(\vw|^˸Lu>kIx%7}.5u]捂-e=afmhzjfvmGhi,352rTRi%?V)՛ Q t*dFG;9T'ܼk+!k[y7Cw+V>90L*@ƌLƴY YXO]59Ў:CC\:PL_Y4]fz7SS+>y܍7!c&!9AZU@tsIW' 8xy{/"EỏŘ)U< x*_H>}hxoOv1Vݥ(em#y:;] GC N2~+#uf*]pN?A:czV Spp{v 9; WxJS=fC ):h(ݲc!HqrtT]*>UzBCY[kݑ[WB{XnX3uMX\Ϟk8n6d+OGѿH 4ŕY"c[ttV?_S/)Z1,'i2"]9ܛhb><pFD;༱eVt+&W.7:"?bq0=yrD% B[Ze^M,\ʌW]P4it-g+QP/ϼj:'r RWu6wɅv4{gJg#|8>wDtNq$*BZ%:=vb*n k:5G0d:u1*j^<^0/oLTͿiqm>iI_+㥏_u\*O,LDNX7ҷQ$5na։,W/ `@ͼ͎  5"Yo9؉bpOQ- + U.8~9onΉzIεFQ*%8f> Ѕ3ooxYczUC-IK@2Oj3_,m5_W6ڈt!'9nN=C̈Q])'!Д;(U-zY.6%੡a4`r3G4zLeId 3ߍv .o6tiɸQ=9uJrM*QnxH9Gv+P<ڤ8i+2Lx˦w 0"Ǵ0ӱj 7@{bY J6JDt62MPn瀺P?|!/]j6TނWʾr3o/i1U5m_>߃[Hs=Z* Shk#$Q1DwRV(v^ jf!%VMs`c*GݜP:]fs(MsH\{\2hgA{9HQlvIrn۱dk(S;zPpt>[7WAL+O5Vx@H;?.#= NHbџŧ؂EՑn9Pêb@[T&RC1%WDb޸H@s,B  .mb[̆#jǍЈa/-Vח>i Hz3u\XP\ yJo8ܩtQ AQĎ#BNi=T] YK-hb|kGĖ  VIs#V8斀P\ VK{tkSP |m 3b?Vm69 c} |]h|(J teɚѦs1|wyd.yL F3`Te P{'+Rysf )qSE$'e5Z4ԑcW}vS)ׂsh=)c9?_ -M0jitd+!n b_Z.e@Ağ#n8%_Ol˷fP-gP4W+bNN,C蝖\5hXv~@*J8hMC F åUPn(o(1 ZWYWTkm3ҷvw 3y7)hRRv_^Lfj=T?>`ٚrԞ^˓Hݵ7͚0CXKѬ#Cnq2ʠ/;e)+)\ǍJ4Yl 55?YzyEU-6l1P#Gc`.L+ A?"I y~ixTңݯs¦VfI/ Mٲ<8@DGBku8=XeZ*+`ۻ/-P ^V}WYEbˌvwic"˴ⅾ<֒H&J=E:k|2IqlN)Wm1CO$XCRʙ! \LNT1?W l;~4x0c;JkݸYr:jdeգ 7yk-JDknʨcV6:[ϗL^9X^s2cxroW/JŽ<*|>$l m,iܮbp*=papQz^>66ۡ =ئq#L_=O׶XD.d3q綴Y·^茟=̀ժl_Agcwn{\*$ :=N[o-܁s-GS2z?Gk0Au,Nw0Aw78VfZYSWΝK [Qa(.у("ϣJƆM׮[EW;" "r\tSw^ r뿒?+@;dMdM ([/KM014۠To4_2|kr!+WA]{~Zs[zrאֲc^ܡ w9,OBtk 23 =*pvp,^r rnmIj긎lj0%/px¢29~ a;+^C*f5 |oY"ﴤ~MOo#ky+6 %ՠ9Ӗzws"7R0Riəzvַ\E9C^yfZgDlz _Gaw^}4!E.c=et|KQ:d-͆s^(g:9m3N23uw0BD7$$mYNFpPZʤP^1!#;-OR9o@WKsZG_7}`DCS3B6pkц^0%!k6?IښK Dk 6$!=JEQՑ@6OQHؔ2xRn\ 1p=$/T4bNIتQMwA@θl754T7 aaHO^FWFOqvnGW`#VAfLnw_3 8 UOœϸ6+pռ򡜌@8up>`!?&ЯoJ䪎x A+ZL EOŇXz2FVx`!_r ^d­Y-v R{䨫[ԕdfoHXjZ6\|1#EZʦf>\$YcXDiC&G}g4QG=\ \T5JH3-Q2%oy| Vչ$]mnFʊ[Hd-S 7-d5Z>Z\8 {J ǔ:2*dj9g6`Ě&WX',3*i>&׭ً0l 2t,^ pc2kZe7t1!7]=n`+ƔT"m2djGz(bѭ d6rn!k흳Z^1… h٩8SN~|C23 =,=m1LK(o Fшdxϖ,,0_AHXZ_GfǞvz^jG }[H+YSִ>WR[V]6/J _\Hc aqqr?q&l #%;W{v }  QԄ yo3"|́Khfב57㹾QͯTQA15魨tiCLUkhv>d.u$kb {)^,<0I/S`\]MWOll"?o+QhV6z֐Dn-%H0f0[I$`&{rɨyb LDe'i3@LgʑC)5v_~`Xni:pImu3F(d:Lb7E#6cwӱic,Hscoʢ A !5zfs#F2hLUUuq}y#3%93f>,qG)cQ4bRRK"lNUrvL-nb=BWpXfaB iAA9iN3!4@!ŻGBՙ%E_4׾eBd̓tM%Wm[ L){VE+r.ܽY0ngҬÉ>gCgn:=,Қx>p78nnL0o0ך!KN`=D tl₌x66ю]<~g--۶V%u WV'T ^1O}}%o^>|7e6<Ȗ/bJȝ4"~n,R;΁TQogpdQ0Vz$}OЎG6(O)/M~ WO+d|^GZXďE}_zËϮ/DDw@D.\1XY< ?fiN*wY"I"Ʌ:H5L;{cOLP1 Է7;.20wVc2͏`|eZӑ5Pq4ؓ$[Eff%~c{+'\'*1kk7@_DoUN]E1 Ѳr1DF#fx!u@{Vm&gf>TX c a?ސ(#.r1+$/c!yv7_ᛘM2Gx-i25;BMĖS r_cUkt*j|4t(x&fQIj5v?9haVeiyVjwas+{bS~KeS<)'5 jnad >JC# "]]|jÁ+ ҒoFYo%yMu&4vMkז)qث-C4씂KeH~26@vdnTN=OW%CHֳɢJǍyE؟ wDzTũK:h*9S [7 {ɨPY"2XXg/[,T}l=_rtv SΞP@bٮ-ڔhirbV䕳{bƟ<_Gp2M{J`əoY.-5=w6$ED5Awgn\MM)Tb.^?8DՔosWnaY}wWR8DJF`?rTeПA{`jqPsZ)y |4d#Nh2fcу ~HhH''ȚDQg`n(wNN)d '"0ϤwZ_8#/mY Hn2-SV/1F""O|M \qn~PY8:L0L4JUg)ɲ!*"܏+s jp.wzt;;{Jѧ}qǁ3=N̏][+uv4ޭtZbvWԃ *rNCRRcKLVӞ j =786iFZcn|gJ.2.$n "Ď |w$4T\MOr5jX=yp:!wȬr8@7 ,oB2wozVQzt[oHes0=*+]\?}-QCl3z8Tl2~:B!g,03<ҎՋN!`]Y+/(A/皿"j((ܓX |v:.^~]V RZ}ns;lit}U(捘ܰ]U 41{vi~pu7jq Z gvYݩc̖4xΆ˟{l>̋2Km/zw~:!fV^:Y^$^mS)}O[/Bk43]{U?!7y/df u)DXn*1tG8xg6]Dagq6M7klNҊ3".ke]aH%z[}񽆗2W}cM<^mcfԚzpjyDj/:Qh nwU!@8vsΨIUn7x% ;]ĘpJeWC-e|ؚ:* E> d):Ef6HqmS0F5jbvRΑ3Ş1©01@VO@{| [[,;e™dZWNeӓa>2;~|#֕Xz|h3Nx2 ODI[i5+HLMT#NΙŁQTmWɶ:>3m*醚JRoL(Z 5Rc² f)9`|6.+.X4@%7kU=v<) ςxB$BůkN2(q.΍r FHtᢜBi|:RG`nCf̵ |'*l-SXȲ<.lu U?OytZ,[֏ѻh(o`pub&Vޫ^D:2y=ݶpm}o>-n 6Yf)o~Y\9,Z@%OvĪ^&'HB~U -l 6^3oZBAmHٸ*-rJ?XdՋdK6_xk bJeWDj\3CdT$Gn6h|/# I8ZJtB|xW3pr Z {-Mm ¹ڻ3^ [F ff>9fI_w`oDD0.'`5BQz0X<)bh=?C ߏgxw^GbV&bJ:]-&gFU锩SmHq˒31m!!ocq?v@)'@]p_ F]{9 d9[unr_BVQof+|a32]UҞ20R~_Surc+a{=~d HQ\l(qs[(Q_؅ ʝS2gF!4ۮ$$v) @SYP'P6cw]`/L-j6b;ed?qtoNMCEfq3.U@czuFNPM¡ = d,Y3hL'k$Oȯd0#ojBa62MɏӚpNZE2M=wt Үf"JbG)jĐ=+VI::sRB.]/䌖 &Jo͍ZJ,Uze0^٤aQJ>V?ϣ|(Wǿ |`NDCD~:F\`XQ1&?ehi1vލ3pH8Xĕ nZ&rǹUe*P}ǂkSf/x2P[wPiZϾ xz>H/׃~/.ASUVuV[L镏Jpجr`‡+$۞>RvDl9I9I-F(VcQB+)] }㿼yL"j ((?ʷpRy;g#DͦD!LJh;۷ַxrL)o_M2:*m'G PCAa*pʽ@>v`QwPcZhbQabWe_ ET(e}%_<#0k8ҝר%|[d9}@;b$0jĢn8d5@3JtuSir(R'zn?;@'.-YpWVuͳ͹G4n+'F\D&2w `h9{0;ƳEc^Z3Ak0 L_n ^^1;F0qUFW5M`kϓVȄ(! oj_J{DOG[М?|M#g q5᳸v:K뭸g uD~F[,'bU tnOވ0%zmƀ^0P{@&>MϦ'+[],uK!ߘkurgu9X /OjW R/-FPxg6 gY'ȷl T?Ե載{wGmc|*R)z/! o ʑQvơ-f @ @W|I}԰EJO& [a15AqESI[%QrDI~ZY6 KC”%r;b ok0e=zT"ۚ0,+r{4z iXdC{dNs6%7% !s-6^5U JE5Ss21RhΏ3p ZWFZm4 F1D%Кs{(MO+5egڼ( Gr,a 2nNky Z>w·iyz)RIRPY*{vyǬoWL87{)48=ݵ"e$c1@R;R/1Y.ⓤY @j'xVµ !\ϲW !U'?yKN]\,xdo}`GgmuU[dd/|K?:79" cj0T c>T2][UXg3Fvr.H&s(h,yGV17$pYxFqE .2NM,M(5*M pK.>_?C(T*ޛ>sXUȋ$3)t GmcvVdj6(ϝb#IPE}EFŒLZ]{L=0x/*xcO 2;ـ_l :TQ- 1x֧FRhQ*TRv<8~:kSHayx}#Qy.rM:`gǟ"i> EBRnZ 1l:Ҩ]wdiƜ(f|YWyύ[khXtߙI9%4>.(+a@Pub(b][kW]e; p yۧ ȧE|\_FI=/6J'OԪ: 0aszfGչ$ϰL&캄.P03~-HBr?'S+9Ȯy9ok!\`rV.;źٓ}j&XxbR >܇\o`rB;Y Ro^hj؎n/m+ 4B_wu@V )S;P*%W*@&SAgw~D0֋La;wD&"o%V67< W`4Wo}SUC`#Efb|Nc ʽpz!fqUp?Ls ~˜TY U[;X7w0 EN~c9mJj>sP *'>WDPOJFb^܉5{g&`bunʧvsLaxK&_//L騯ukV.d{Q?wqƬn+ISɜ"aDk\ &g=t4cI^ͅ8V#+ᝠoCn;8)U(2hanQ;yluNWECibtr߶I񤪟=5(//MQ>+{('U]=Tk\r|Iʻq3[I5l-a8fM+0jqZrb?n}hrq4,Re'ĮF]RV 9 tmF{.QC_mxD{kn*iFU0PRTqL1 2{rb%5 TRV`|%QAXb]g0vrĚҮhk=d2In gj`F78W~:EH~`T@T{'7ab\Enx_ZӰϟ%c%[--;E>BA -W@i^Oʄ3jac&{ܠFc5uDEP3>8A 1õo{r~UhV6R4 #j4M%o(鶄FO>-x;`!$x=JS:3Rnzƥ@ F b=ơ mm6HdQكUxK2b55m5;CF,s. d( WY$Gѧ{os'@ӑؙܱAtL % K?(Շ(CD^O}f=h#e {FhgX`Oh3#cr5Ѳej1쌂&>7mt ٦$bvdt:SU$AfL >Ji(ͬ]tcbl*:ϪiU Ggú"V<]ObjylÀT?ɋG1C=5ݣ6:)7OɊSxz:^0 y*F0 7 zI PKPrI9pkjj8)\!N[peΧUYH'yUqFz KIzXѵ.@r76PCL_*H( ?{]‹-rCsp#c[?~ُ^w$$q|Wdz+O>rOע]衝\.(\QjFix+`Nϵ{~sOIFALk^mIȮlKX׏T4.j7b?F@; ކV ]8#K+ۂߙ#T2M$6jk!x{£=cpTDX zq/0R 4ƐCC {~:m29VNn pa?Y3E @Gad{Y'_oؓڼs>Yax6]LqeAy$jw]3b &=<(lB K1Xj^ݛRDCerB ȡq_#)g]Ԛ/q, [\c\p݅>` a]-D=`ɽ_* xF7ZR/Drye$ņ%GdЭ zfxM1 {̇<բ;:H~T/\ 6AJ{x|ƋlD6l1/VHMZʳf ԢWP-TV&A=S w@XW2dz0,G3Z@" 7u" &=؎J@TgϨ?6o9?h(has?%b.[iu)neKSFƮ\&aBӗ :Bn<> :;zW|@В(-8{=Gțb _EfC2:Gvw%7ʎƝH[|ZS[̸xfI8Pslb1֌\ ^10(uJ$!3m^locw\fkB+5<  9T7j,ȭ^֖Ƃ~_4OFv:u=9c+l$AyC?,kd#"Ui`<1"q;Ϛv!;es_Uj4wAx:X!QW J(4sXE|.rz}F!* 6؜5A7ɥoQAgf=W+3/lxrqǔU׷/R8/k| eC!+ s.{t!/mAPxUGgtB42eB-'{HF&;wE4-z>* #yY*]C_@RUJsGi},5e 3O/Z.'>5Nw6h?'y$e{>l3 m}[m7aNW0A59#S6%J@/"D}e%`@ *#m՞cZ:5Jn9rfԜ@m[)RZ)c8 ,0W L% pYw]F%2cɺs vND 5p{"Nȣ BҁB% (XldRC^tAe\=mZ[bYڌU# "073 #|f`|2Y @JK)oO TPNi`|chcyK8MŸ3=#Tw<y8܎$"cIJ\gY jyTLC89|e>u",MÛѬ&?ʜD4b8Z&-в2?cKnwgxgF ϲAw2b_7җ$9f B:+I>$ p{*3q|4H0?tn =/wKԑf LZ,mnz;VC[*N:PByNt֤ g9`mm^aFh\ҍ*hVL_e+::Z:eY!B q*p>#<4|nH3ʂ;0$a;;AGF >09u])T^FIku̮Efm9t %t~1\^9㎜N}qdv Μ~#b7c'0,hYIHzrbΏ"`8C+mƂ, ^T${-o=Y t;D=vftT~5? {O2Yߤ?AT<|;Z _]eIKP &bb?xTK[3vi%$ p`5@9eOs@t?OIN6ƕ pf5v<ۚZs 8TTؤw}p< 14EUK&kF.ME16xр1N"g!RQc!х8yͣs6;@K9b=p;\5$ Yx\gyPi~FU)}>?Ka@1'(9]yݢ -\e_'km+?VQ7؊V] J?Sb#&OιQbcǮ'`ӎGjnLEZBƦr59g(rR S#,/tgb&/)i|rDV:6l:dmMk /Nm,U2_EZx (1%פ>nmP>n?H,'ykFU JZ[O=R=ɠN|pRxP 47tβw$)h:IUcB䣆i@BfKu ZTRr^z>p,V YCAB%8IÆ9 HvMp?ӵM"=JvJv+|rqGܩWE{t15- A6N9 ǜfjLILj@/zEf/b@ uICAڌ(?{Fs}g_y~?!h7mڈ T0r1K~lt6K'T[oʵa/{z0xEʖ6wnPYDv_VPS3ew-ZWs!7/nDC1zUޗț優軒 x91L1Wo]=ĭ0] B /U #ℍgeu ڠB bw9I&&]KY;ikO}Tuɡ-V}Ʈ6AN9ERvt1$h{S,3uxPPQ[ @SMly{EʛB3J|#Q-ؑ.g(jRɟB{ayIS5.p"" :e\! mx3gy ЂC C۸B"~&tD &3ٳqr S E]kg%{u[~T\Skb*CZp* t\`r0D{"B<-JlSsۣ">B NyΟ8Ig}yʘ'D°Qa-E<+%C0^ dp`㘭6,3Q!gm.ԟw65}oW׬0B6)k&P+Y6#`ӇWuYacD߾"Ykl' j;ɔ#(t4J#ъw3ۨ tݫ2( %S V ˏW;@>gݪ _:LPwrTEB3Yc!YvjPCQ'pKBCn yҪ/gs5F+t6(֤{5O1jeX@WjiWtxPO&Iټm0Ǣ k^lO+n~@HRJMqw_dNfu4x<<`Dh5>u6AX(8sEI/ >u;GpViGӔ+XDx:1:Svd7^0\ZPW/O5Y"2ÊӇv{B둊< yc4j蓠b7o8+W=h]],k^6J5z Êb\9` uPwg:e,_ug?[YjR~iTιsw"ִ@ť >?d4M&S,˯Uj$.2j{!-Naˁ^6^טj'{2f [@=ٖ.q2(>ED6v^ )<w?x.rigL$8Vs+~e2Mٝjɐ< F"|y $ED\L2gb`Wk3/Sɺ:&~d]56b{]o NC'xBv$ Dg~1h"E=Xm##)KUb&+f)D͎| aҗu;dn8T.-<#iN՝8|zCog@6ajvlѭg,{"(aØ]l}RŬ$iZfHK[)sȦXmV/cfRUJ.IGemuJLpinH3h#qé #n*OV66c̫)dm _Xw'gXiʸP6ZDMPWGh5!#lbB;cT~iV-_ ɨ7l4$1Lk[duJI$Ŧ{cuK(4^cc/r6Pw_c`k?YTEo|,>ѹBB<$mSuM,S9ڃ oX7Lj)ݾ+M}4-2  Z@pmK~ G.a@qk,\{fxڻ;!]-mڽkQ Fg4 J^ JA\ެH/G;ɼ)'#QVS=./ppLΏ"ΰ08֒ĸh *, $Rdž!7 Ʊx&o>"ro̲oz-f5>Vܧ~z&/{R i܀z$_Pİ_cFiOQs`+F7J=aa /jq{C)f;3^EDv1B/P`;Xkx1Ie:3bt׊5*Ac:[147k?s?%9izP WF &` 1vݟMǥI ûݖDY&JYh7wHn=ԨJFCWw,(JJjGJ^Geut"J6 ^$\4 LK4j`v'4vIɎ:dDqnM2Pfx|4wۯKײq1ͻoȌ(E'!!LHD<ʉD3F:1p՞j:7sFk8![xKij7J,Äp lbLOO΢/zCDN2 a](.ӜJE⁎*O6'2BGi|g=Dzĥf\;SV<{aŒ쫜7=~~u/;lbR_4%JjW7KjeIy0^cS%o!v‡nebdq[nF$ \[g +m8ZȨAG1Ö8mqIVގ{&y/s.s\n94O$bo7B m%yP>Cb`Ji5;trPZ_ 8zP|0SBd3PŐӮK7L&bǹ s \Cha%OuiVSOhD$6{Sx ji]KQS!vnĚ$Wݞ oy,p^Ifыx߅,'f.&zwO;Ɉ)VC- ܟ԰{=`h,Fmry?A潵ᑎrxx<1*_$df٧R~3Lћ\5~oN*].#[W8]|SbdT|p]`rhxFz7f*Zvys{ 7q:^ͿL/.̊;3QqIGiIXM'v~n3uRgJ@h5#0Tڄ< y*V7+{$oEV" ~]ĸpdr+HlumӠ7%%R$N52coQ֏@atq҂ĘۧA%@c-0 Y˘15JJkq1>k,=O.%nR*x$Wg+S ㌳`"0N@3hwćn&<4h]r @ren]ѝ~MCz;F)&@k\um K*a[e\HDh[~tIj^6J9\'Q޻Q̀1)̇޼/ SV$9yy ːCۄPlj;aHz4b8xuVO0$Ψ1w4DgT):<%ENXd#&u! s\EM8vQk ġpuj~Am;# 2nШs">H1?2hwnbص$ ] k9&*?㘘6'ryi#>HHEz sļpSx<Հij`TcfNi.sMq>R3F?H|=&6!G4;xs8q΀뒃^٪FaqQ 7f<$9;I~&<M$9&pQ qqڗH-)IeVj֝&DCLs) ) ?͙)0s ",aO<Kq.F\D`N-F;&һps@ c x^i*)>)TCb]XrmD Z4.g2#A2c0k #V>xd'm\_If#woY3d#\[FV ,"Vgr7PMdnO!U 9y{R ɲh@\Ph!g-c -jo4:DZ&Ƃ)ǔQF:lx"ZB"@Y)O9)kCLTN mK%rRR(p2p\Lg_5/ 6kMM hlBj0a1.V cӬ4̀Vh7\6deυ| .+?<>/WF܎SxN%E!؍p+U Ϣ/eW_hdo_ܖPr^̇=-3= }(Eᷕɻp_E_@xR_H]tmW:-N}t-y9@y<:[bôpo`Q -Et3i@F J{-4_[966,!7(@qӇNq\7X28(.>1Zoe, nŊ朻/YB/Li9qGd_^dRt `o_^*q0Rc3^hJ*Jfo; gl2wlj2p*m> $l;JhnXܗ!6P7,9 Ë @ Q1ZxR 0&s-2z>nާ'(} C\TǩG-XYorwYeq=vмkh_h5`{ 鏖.xJ5qZe\GlST2{g*Uސw|hŚ{ǃ|W0ta1'2?vMg_x,60 HZXZ2BߑU—IDe9r-sF|KF:txN_ !?㡱 HqqΨ=k}v Sx UDH ~tKM'S§to{z[pj&-kx˝;ćz*H9:SUM3r"fvb)/Ij‰WROPzNxF6z2p:,ԥl av87d>!ӑ@qRDQ_9L|a>ۏ<,HlX-Ih-5*|wjTyuf|M0 acqqxWmŽS` 8 q9(uTp|}tSBD7l#!}c% i A8geDA2='jh^ܮsܯ( BFD'~N(ߑi# Po/+ V!F/EIkmwE7bⴗiD|K& wAlh]e>TGN?jBD] sET猶^r*TeÄV"gxj W쿑 =3F˸EPs?%}{2t(f/[2Z۰k1^IW)6OZV^n ePN n=} pw|a&zǰ3; 1ԻLԺ: 'l}(Vw5{W>IzR|LmE=ӝ:zZga,|Fla[:Cvo=ĥ*Hd%u̢ .|3&&5ǐ c_PnPbZXV;JyD3'[J_u5z~(0]9W[[l!:# \`7<*%VJZ+ 캩)b.skANYEKr̪N2s}J(S_e)^0cҧ+C\|"UorP 4j~!ےZwSQFwVи?ǹN} sqP`(Ͱ0]D_~"}7Aß Ľ$i֚1˦v("/iށ9YG^_&A;%M99Qlp C*ooy,o ٝHzcaӻp|5V|e gI/w'uik0@H6L!|T5tKiњ܏#Kz> R.}޹hzb8nSM>F\GX8bޗݷ!r/Gzh=Eu%&nKa^Gߚ.Uvq9 IeKgײb6@?/eUfy]7 1[1t2TeեeRg9)P](*4աz!yCu=[j6j1z٣wևHH?_IӑgF֪pKTbA*v?j7čW9wMmH0' %\495ɪEﯕ}_ͭȟE%== T Tw ~fⵦlr$p{R(|j'FjHI{Ӧr~9gfӋ!uBkPU&z!zKamǖV \ |Q5p)~1PvNR]cA;|9)qF0IKYH̺^X I17 --ߑ !dG\C17ٝDW. k1QZeO;ͷ&߭pޒfUrm iHR~ǃ) XmD谍'%%bӈf{ xs]s U,NJ~A%/(|gr >@uן hH7#sH 'nџHd)*T>|q2EsW,lGTnĢ;1Y>#n=&I^eIB^[ 6afAt@ڸT+4/r4\LFS-zw5ݼruApm F`y'5hܫ7KWM0ۮHL5Ƴi:}wAWk:VJ=[+yK~ 's5x=sU@@WΊ}/Y9iT'RP@н<5$qrR)[*T̓zГ֢1x8% K>Kbt\M& e im1VqfP Y2ϤNUn+|/Ô&:X"qNp-ʙ _)X# NL9T1Y(omf,{ܺȒZiũ,i~SB>:>꣞YS"ʾnߴH"H: ΂)Iz" #62[f/Ԛ v $4zΙ.Km "{sFYؘۼt6xd ٧0I 1C=wDQd愜N턁"jqbKP5s"rzIcn|oc .,g4MfqS]zqsZ-΅Ǜ+ʈe8CJ/O[xљ~=¸`Q?D."5S1|F{U*tkjmR~q O:;ygXHGQ-1ې1"t%,ZL@YLIg؞Q2Z\$؝C%cX:"^U;1]Er'%KBs?&%/}ŒCX%qDvz)Q,8z*# q:ZPvz<,ݕײR .8]6 񮴼eRF; ض|v,!ROo#>}t*d<.Wm ) pnjxhPs4JV^&9R42 rG*vDF))hdZIP9ҵJ$Ҳ:y(W.&^f^ gRG"-^N /7wxF {_wzO"_1ףD1)=Yy~ 7cC֖y_o)Cpjo~]T!9B4r^xU2pOe|OE]> ]`zDBڰ _ Bzha+4`; h&\Y/'6vP+8bg0Ӵq;eL`սUtw" и5zpw560CbғFpնw_K6㉕D/A7EYyr4"T9Fl+ո>ZZZhnN4K`RWMw}"SҠ4z :E~A6AƁiƓxMSK]I HЩJm DIVSQrZJG ʨ#W٧Z;т`˂ySdU.xA*IPib@3sZɴX,MFEFxHYsrXe@ >WNyB#5Vg)x-V48Wj$6yI5{@L/%؍\ȑ{]̳i ^:C9/˟|#|D`9z|6s;H+TnyPo_ @Jlq~߿%j6GOf2r݃+fNnO]^7pM*D l0{s%FY*v}@Uifk.&oǑw-+tkAe'{#.9(ї(yQX2A`W37r)=~-AkFf9ya*1$"wkGUA(ahzI:cL@v###[J5iu挪Y,=u;Ub7bЖCr[Q ckWr.US#;vf_ir $YdOwLHQ]dAQҞ1$ǽ b$tmXsoԮhfޅm\pޟy,;ۈ/ՙ1x,~\{ CWjaFCG]+fd!C\lL9[VdYkT7N` OwD,ڇmx_=k$6`<,Ds Qdi;Sҵ `*ZҼK'l2 "Z{%r̲ w`M^FH7]OlT2x.ԅ  }E:6:&X#Ê#(*})[YNCޜ$1{w4&;` IZI.~yxquɏ=\`gWwg'fdLn HܥdM2QFXgGLjۍ3dF߬BZ0LF5D&CnAQj`{_.x.{V_5.K/;BN4eNY+Z㑣(,n6# "OT*vʫ.&g)!|bQJ$"Zz.T*tl$?@4vC1lXq*-7+%㍨ ЦO?Q%_Wq`K!ާasWNP!{hi7Q) 80?NJj 6)LiMlRkΎT]W#HHal',$S'UC',Md_$#/Ze`ein%#F Ĵ I 7Q>r =n/5 9ѡB^Zy-nt{Cr# ,5 v&nV /j M`_=Ȝ* ,i;^$ pJI&H$rtܿzWnnDGyF5fVkWփvJV<4VZ9LfwZï؍'ο\zVɤWKC|QA:0E_Ѡ ZDnxf2h;D7RMrm#4+<V "$g6uFlO}ߝv%4$WZɼXYCD7WPČF%DZV a&~h tR'h쨐%䁨7&Y#,k|6d Ù`}‰p2eTH93YsA<'7I98t3"DW/ 1BL ,A"/gID1h(IEOՄpd[0\q0=AŲQdT#!\`[OJ]qH@j[rՄ8jbhT:ylq'[ NVB ,H*b珽„͕;_?vg1FV\D$U00F SL_ _ (/~KVioYupbaK"Ij%-m&s8>.^j,P܄4OЍsѮIPW\XJnУG@W0͗l. \(F}^NQ$x6U}xΈgJf8}ែؿL\LLVFv/bQ?4k?S03n̦Ӷj#kПw1/}nEʿ0@G(=: ELmxl^SᓠųoPs9ؼ`24(JiYr:Jk"o~ %C!#9=;Y.@d꿊S{60 R~#ROeM/9 9Z]w5ӭ7ֹL>x(;p%෰/Z3?k)ժ,C1NY 'zFn"#P): dd՜Ie'H_tlU;*M`)[6Q)_!aRڇoA=\AKQ8G9! '&ܳnp//+U oE<0'߂&sPGYgR7k_I+k ;adR̯*!T|܂}p>* #O-6/{/X9$Nf{y^X t`:`ӚP8C a2fv6@V9ڦم$1Nɋ" &ſ9`NXa0gG?w 4 ;iy0rtcqaT VTȄ*m;9s-N͜p"5F-zX,. W#K[q^%Gt޺)|eHT[ŧ%&QڗFEMZ.!3h]69qUC\'|XhPwƷ5REؒ.z2n@A oD"pY_L*avX]s^ Bs0>] rrzZ[ RPz;_%k,omjŸ{H2d^2!V^$~rn7]V?r :YJa_r7S@blǯUY7Q5b|QfY,UɦUV)/TTh+΂PPMV,T ur)&%FYj$¼ Aol܈mpMި |ҽOIT "n[OU[W#X pMv[n3Le\aɕ3p!%NxJ]Dls>[{(LY91/az񾮤7ctvpPNyu\PƗH /Rq{?sfG2PX L4-*`ՀM+q!bΦ 9zRCH'`ށ WIG{/ cÛ@.ޗaAܾSpe4ArŢ"3QP~Y  8i^a1W4'b>BHy38nR#*]|'ekNL׻Jb<k@EWi)L"9" e7e/R?AVTS/G[I솠)9K_6dvG2zۙ&_ T zs֤JʲX=sD3MJMY^_Ƽ#:ҾLڿS>8,0Gv]C1PU~IlJq#0VԸ{Gʆ]. X=P=3ДT\zɯ5no} ?|8)?N6%p*h&*y֣m[N#u \pyYZ"ϟtQƖUjTT֑yFzˡ(@ >#0^/@hE$7, ^<8LF1%DDĵWgWbQ. ak&'ԇ)qXj`}G'l նB$8.MA36[gIR&bL1x.t썇;Y(F/Ƶgi*cVkx!"LT5 3ZF+I-!3O^ƲD;#`b N1na%JChj>ՂIaֱ3bk3/fqFصɼ>*!Ho4"e#RÈ5JW@q@>Ým;Xey% z~~X\x-jV|aD'A]rL R38wnBۨ<;V|T ^10>8{ ɘlPl9=JNVRm=(ڱZEer-2?P;4'b`j6¶Q/Ųk'Mx̨ɑ4,KsyTU*.BSӒ\;ȹV;Z^R[\T2 m/Ǩ)pr=L魶XY1_V(\e?]8O"&9'F$KSg8&@ e\RyC ѿ4MiwfZ&Ɂ?+nVu GqĿAA| ?4ߥ?}i-pCC]ssMnyU0+[n[~iUWROBu$@g?@VÚV^9<\"jȣ{!d,B {xjA8mmqǥѹ"5>,o֤6q-.kKJf.Ctcϯ/\P |RO !xlJqm:%aN5vy /2ĹĢB=&B|p<Հk RCl)bo[A`4B8KSX8ſ_DFxbfN^MTR}z znu#tQ=N4mEỤ 2g2"I#NQW攞أF8ϟ÷=X6xH54Q ̨qh4 @ÄŀSRZ6Of>|R&tvU(97H[g&2Wzv5 d;5ǚ?bȘ]ZC^pU}LD, yy>{G )n6G^9#VN@wx [`r"UZ@|\dj Z$O3q2oAâ J6UB9Tg('s*ˬaOcl{o| YfB~ݍ۰ݑ ! uS6^Bŷ6K&CQ-XQi41uc2Ⱥ;cʙ, `,BhZػZ ct]0AЄ\P`8<М0+tzVt,XR}lA3 8٬X"))EY:# $ 4;93 ̻]{T o$3I4>݉ "3fW=^T"S < )6@fCI ?ʰQ5KHnҞ:xf;ʤ?\AO";O)=A lM1{gSQ2N}q0dPlDM&$u:Mՠǵ=)R\":3m`M驪 ;񜁛 J9* RѤ K\Lt0ztXvS$=u'3 [Vgz0d*3Vg1=Rl"ħVSc^#2U>UŒk}J̝,Wkm`;%uaSrjTN?vYBȧ#Z2ƿbH&M=lLk\(ע3./ۇu3rkkjf^1cR9q̽:+l2 [ޗמTTR/Y0ylNurRuBd HYNT<],Nܹ.ZjB.`""ZPH:~F 6eͮ{& ÷GF _]|4nȥrH{?QNsMOpl6+gRmV_/n#wcէDxcIZ#I+zv9@ M60QVٱȋcJ<.6PjJHpm٠R:uvmSd9Uk/bj |7#=ݟړtQgg3i ړ:ƕr0+f%j SU@'یimlh=|_|&#_.sK8zZ5xbʕ^xk!bͥ`X(C}º{~{L^jxY'S%I@GuD1zmvyz;7wU9ݛ{jnHJ@pl5twKfOeCx&W~ԤJY;U(Γ+GwbDzK {vwmwO%bh,U9>zGj 2ۀ܄ r%L ?&MbE&=4# 5Q>-s]s:F{7AH㮓b 4Rl耜KS2_"}iܻB& +n9,2&ܘAxGL髢p٠ԲG SCay |nl/vGݾoTk>X %FMQ#HT$ D}?79jӞR^$ =ο>a[]6o`NJK;l8v]2|d3-T]?) 1෮T^ \m!f S@b%Ab~Pa?/@0-HZsHmy[~tL$pUC#⡡,[Euk *6`2@ v셒/ςrZA%uPcZ 6"K͸9񈻝Mj1Je%4IO鰋 8 $ s݀Mϝbm?u4"IYW\ }L1?lr,J_]V~ 2stU e>àGEd::b[>7וi'ߝ:L.mR61]:f hYM h:ڛ]\n"'jly+;()Ko]8^RD%>((?Q=\S=,KAgDPDUpò׽O_̳ Oe8rwnݪ޾ ZDrPy0Z #4b;R46sJDzG|o]WkI$Py2Ү yļ;,OjMuJ 6Th4ݎ*&`˚;ϏŠ䌽٘=(Nh%GcM̤~?Tn4 xD푧s'tg-7)FΒAXGvqk*c[}WU|97#cYx{],( Kv1j=IGGzQ\Ýޞ$>>Oa.bڈU)XAB))DO4Z{OX3_EmRBM=ц\J 5reډ7pb˝ WX[hF*t?6I0$E[ .FV+ NT,D)uy\gET%{G \MsqDŽXiCݍ"S)^d}>%2O|v{>Oqd4;bG=*rzc%[GqyCZeO>"e js @jQDx]b"U}Tg]y i/5IJ%9:hTEoTw e짣(z]^{ץ^HydHчp pVg;!bZtRm}' $-^F\nz"Qy&?@\WWa{לw*^]k;QKJD)³QߠW3veq%3 /WP'Q)DuQư;cѝj3J14VFƣg G6RK}uA[BY!&O"mCPg#medv}3u370'(4;F?j/wtsMsOjKVv@{z0*'T `Oօ֭ &yJnoY,M),ep鎕 dwցP1.8w{F<~GlF{;g]B`#,j"řvj@TD+T]].dl>e*jHz^nт&FrC&P(5@~Nm+=x}|.dOw^",ЏzID#AB+; kEs[#e 8B&4Ogwa{Ľi0_PEՍ.Lr wX*['%7f qx(vRL4Ɣv ]ǰ<@Z2Mr4鐊0lmҏr H6ipFyڑzzUI#Ոzȴk\y9^2UxGRV򡇚 D> !MOQc0nCM$떺w79=*,Ta#|;p͒ą٫͐8- s+!?mAC, Meگ[ q93tۢm! 2nZT?פЀ8!.AxX &X9g$ ҃h-7Ah:yzF9)"kӽeR%, tOz2NfFYIg)YȬ[vp9؂( "0 Sڄ(*DDG^'-wel,+)d3W0ni!Ԛk+>ި#ME!t$Z3scڑ%}n_cG_۰4V<*ojs&)% &T1^Dn={eмq_3]-%oCRriΡz%K|a"sTn045ٗA;ZFZoieE"77M7 3׬]!zϽݐa;KHU%i|,N+Mj- 7"@UOK:U=ާ?A;),7Zvcp嗹$pAL)J~GnvL'ݒ×Y :>4ÉՏACjW|yǴ7o9gH4OфZ]$vZ @~N7Ю}@oWok" ۩B<>>yPAV/@1pB4$2n]W!ː'قaBFcS Ybe)җt#Yr叔RY`RmwZg0N_Ǵ栨Đ=} +3>Otx0*UWgx;9v(/? $S6FY*8Aݟ+K4 XG RBGgǟ1Jl ׅ onc{ru]"vrCIAIkrN-P{lT[ElSGWtIis-mZt 4vs}LɻY/jq5qx H){5%HZA㡌@ⷧk1_su;f,Ώ3f++: ac-}dϋݗ|`er}$,7@q'ӺOiyyE3 g04 *gb? z?&g{sٟ5 4;C"lK{bU_z2y^`v)E'7ABÀ1sE>=ak*凓? G%8GԄ]bxᐕ @P]cey?јF>Uɕ|gܸ}sӲ/d8ˌF}sts#[CY u?h~^040cVaF5 1TY^e:dLZyImf`Y3udZAMWӆH":_-ʰL&~b|~'_䅣Y(p\"v.E ٸ];*@رۈ0X9Y,]ҾtP J28xމ +w䥿,+ {^{4ʯ3a)L|Fҽ077u{yGH. vuKJ{#ћ>Fq ]FXWk`!wmmllۖG,;9i\Fҕ2{Kd}Z&!2?,YIKYڻgwkwu=ٴcْ݌]C Ey@mAɔpǒ=#h/NZw;얟y= MŸ#&7jPMыG+/nv&7> $}-F–ĆC\߱ɡ+Vhd8~He.'G[#ԇ"&z||lqmrREfhͮj!9`m-ͳIX *YG2\:8\s;Jxuajx: ;%Dx޹k]?l [ϩ7+_M(7g0U>A[ j4g%޿ЯoϖH6`Yf8zo8ZA^'.0/kvH=\0O@] H^@o܈@,qd"l%s}U@tڈ,NU[R04%i\kHY$c\iFg-cmt̀l5 2(F/BNǤNmGFh4|:_IǧF*K +EDWNN+v3RڮgA^| HdWIp;Ly+')N E %S$)z@PPD_ |t 5Cچ>KZEH/y?cL둌\3uPRmgYSwKhEGnX#HGxH$VC]NlX[gPgc¶Fp6\ (wdN|4uojhDO〔Y=6"f_qE4SiT2@iNo\1?D|5=>^ңg_x$D24p`-鬘tݥS{15t(HKk*bȥlG~]P rP6D!ifO3H+I=K|ӳ`ܕ/(- wHlRzkt5B?Ծ{eoL9r@j] CRI.F01~%x{\vevËDDS6rvw 88 Gd`{mö9pZIWK@kD,몱m5`u ǕV'5ؘd,ܘQV~S>Tت <%i&?&\3o#=qo{Id[ Xhoen=8C,ר)A0JWo5.A/֫7HXh/n@ ,!YwÄ|\%4 :{*xS8ͪmmۚ)ټ,H YR ƺe>VbX :YUQLPE5{U%xjMҺ߻KB:0țVXEAV_56*x3tANٽNDCuH$N+-cLϱVvx딖ӣ)ׄr㫦k9tB'R!m+4OѶkoit ؼbX/5WVsHe6blUmRe-ehe'Ȧv!dŘ6@o1i?h @ G]cTXfRu^d%%@#EUO1ה HcnɂչL#[ুϱM`W}a]ƕERp[_ŧ6<# }&dW0n6-4hʴNMQh;9Jĩ:)0Fr|drBƋZ]!wF]:&S(0DBiQ+*=|\1p &ݽmVS5\c,Ͳҏmȏ!Ŀ͕m ~wmSd:ds,iM띂VP$#߲}0m¸I&R5jHi(?E`AslI(n6?;f0䯩Z@ȷj* /Zb00=9߁J˹ \h7uFW|BV'wP%F6oRtC9Q ݳ C.U#rz,T\HtJz5L&̚as]nQˏM|P e*7~=wPs)\xl4d)Gۺ: uޮBח4r!3/^5gCc . 5E]"M !ߙjyqWe}UZl*_@3k3fs pCFC+ ,h||ԃYv %׽G 3r1NkTe.݃H?PaH i[JF݋BV%9ht`p{_Z!]OgZU̚zօxF†i}v6v]ɧ&;IIHFHz>w?.v_8tF2pq&϶ VfQɢJcS՘K߂ҥsqf}b_b5CjCdpz75wǩVk ,$*U"fTT2ju;&~;޻5[5^?q5`O-S Tu2&JݾE6HJP^b %K{PdL,!'% 5'x8d8wbnH֒ t{6 z鳅ΨdmOQ[S# aüW ßq*1s܁l#_2TЀw9wK:cpssRkfa3=g`P&Bc+g4f(Ӎay7-.{) PESr'Gq)ݤl\߼<8*O8Ďp3hs' GJ8o_Y=#!o~[](ͯ cwƅYJ+ۺ_' AKYtD`C#MsOYfztm^eJKx2W$AM'?e~c8[~oeN(Ɣ4m,ZuZ n&$ƘtNNvcS!]mmkj\<6n B,%qU,bFoGSfBcH&S3ĚdTpUvu\c42p؍ rXFJ/4C~,\KT9Q9q;7X{¡ cnŠ۶8ZɸP*j˽dħ.瓂=h,#Cm221+n;N*b "{]3: r˵?w mtt;yPr(pjq^dՠF.ܳp*ig: m,VƯZdOC!QCHΘ]$,HZݥ@YCN+OeS4]tdٵ2Nc2 '4^YEХ Zh]!xʑ#sFm W>仭7[;şXf-@=' /8gh=I&H qSq% sgڠo<Ch)9s޻@6Bj]iĢ>\ee"VڸMXc .r$7"ZGn'?-q]٤b.RKQpa4~F;CtgN@2|޶0 *hI:sɐB/6^lӵ(YIgwդ9 /I%2)NԂ!?RԕFo@3@H#Xޮ)L7vC^*vjPHz2q#nI|TtR+8N|bI3U7ƴM@vREI)P }֬jbxRusDaj 7ϕT/fb9ˠ<'q^R%~1;u1f#±A p,210A.i%f9gZO[7 \|D?KCjƙsHsZS+߬vҌ4twfSW ~(r93 í9>nteôs>fse ߬V {?OH}W [VQѽ|B1=yޫbpHӂnL9}Ԣnh0;{Q >cF[tYŚ!NQ3"Ci|wa}%k7Z<MtLu ֋gp%E>6 +6CFHE)<:+(цhs݇ 7fèC: Y5S<LUeN LSaʔ; iHNZb q:T !"Ӂ[0eG dJb' ʾg\7Q%%l(yк"RC͔R܍e[eM1&I {f@w y35XyT1A!S&^Uu9T2nQ9I.%Ӑ-Xdk;*[r/P#? 3ء^(\+CGfAE;ybrגCV*AHEd{rS#"Ȇm  %#kwQi99VG;4)=L?PV+X)~KeO SczRXsgg.9.<V2J<>a]Ai| PHz@[mГp]O#445$JĽB:A(9OҴ2?}cܕy-7ƫ*يۇόoPbxS#_?lye!k1.#"S桎5[[O0`!J)_nCB}U7fBφ9Xs? pp$ k#ёynfixA)sƇsG(Y 'O\s%n1RuQ\YO׷`8y^Q'Dsx7Fb[M:14^[$a;6vp8,IѤy1ayݻ0fl#7i]tZN(pPWh_/3ZHu%^PΤ D3\X" b6\}EǼ._*yo҃F!u82# 0o95P;܀BwІ)q w%U]tͮ}߼N%GaBujOĮDq6yD6@! x4[LqC" P3&p($MȨ)V#޵t1k{QǘwNfěj'ªߪnuS4`UoޚR8\r2n˒L]pNHB̭ |6CD~2I]n%O(?_k`3q;cs+͠UKiKڸ/:o㽰x U2We3nl8(`H#>9Z+\pYiLZ qN"4ߌ[Y%d_X8Dؘnh:E{FJwDvNOEȨm=ײ(8n_J@'o0[ظ*$x"XC~pVJjW'ߛ= ލIѻ=!~9C Rk #n~ҼHH*(Ӵ9j("[w k䪠̃=NW|sMfM>zyXox)c>hӺ& JwNL0v 1C ]R@0eV^Za-Vdy!̸`Y؅:qLR~“EɶQ0F.hiOߨ Ous^Pʵ˷[=9I*[#5"9a? ^?QO lnlHB;ؘQ@QJ6i'x"]]"D>OYh)+cjPᓦN} -. ] B5w!/&?>LNYՍ7:D?.s_=ߜę[?zJl!gf(N认-8oP1E2'j8Q/c4LSKtq ZAiYMeLq mD+Uk8lp2YVhAm&.8k*h0)$ vS(жLFf( &A` )!2IElVߣ(lz:G/yޠkV6kHx3X:ݬ\ɸٖimH\a~HOl\b2G=oKB*50'+LDm(&02ofNf<^3*3gtEɺw8&$hS@?t\K){jp%j&di'VT tLKx% b9d9ۘ:=̙SEbȓJuj`̣46{&Vফd>LՔFgrF~.xR[iYH, p#1yYZzHfrm1vw!{h<ֹj_aR\~L S\JdѤ6Qa7׬t%qV^p$Dcn+hv~l".vZr҅D::pMSӹ-Cty#ʽ_&[;2Zr fї4UNA^\_nŢ{k#xJԠM]x6OūG!FY<'* H6i~l`8qa$!\ Kk-38Y-.쯕'!av O^$_^4j0D5oz +؈&f *TrY% ʝ9Lo r | z ?nm@壈wL{9!bWCNGiůzrEzk13:xΟ8ٲ|,J5bZTإK6ӏe7/|սF| #ZfU0L]\Kt^7s1+z|7Gw%t 𽖾2W_ze͈x nF~U hEBpg % p#2/ &|y+oE8z1]Q} z$;ݠ^2h32>O<RDe'}7XozyQm!+9 &^PrW߼Y_H/^ߢqbݵ赶"-96\%ﳲ^>#s.OW}5n<mjc ~fZj(tLAFCԄ˔#}pmA  ZX0}qR@L3nDmmQ;OtFьjWܲ#xXAd y1xo5A:Vw$1\J>K]R3tOC=ȷS5s>3@gn9XT$DBC! p 8ngzAC /E]gT£QgGw%RYiYp%S 9sS2uo#yB^Cw?KCpm*cJJ9{SCȨ&h "d/9XN~AWt(TjkQUQh5ٵ)j;/D/%2m` ,r.ILl4,6@#L~%mwF,x Q.mY醶^Xp Z_vG)Q7 9솁G")[8k!`-_)}be qi8HrbcSՇao8K}@R4i\W3&a.(Un>)sQ(u4#ij 92Ceq97(fSYd9m򴿐kgh{[M2R{Am6 Ai0ikOhh||SPcɅhS{-u HPB324 vؐpJjL}dEbHaDT%HŒD$Q]ҵM62l%siɴ->IJf+DH>D]ht_L_D$K9bd73m%xx/5 îu~lX>c,SztlwRwHMM{=w+>FU$ze5 VQq\X'#TPߊ*̺'%ܿ.φ G2;ȂӰg|Y'QPEhUVazV~ĂKK f:-g@`IfrTxkVl'| k+%];%ɼ'Pmd S5o`@QQ0TJ! /Qw";G lt1amz%\_!S(i^qp)b97ë}Хf銃tM]1ʻy靳v.(Tx'鑭G&nqN5$ (aAC/j›o@F\Q&HDJZ! Rl+g'oN> 5:ΐXƈ|E7gkn.1`;6T"0KQuH!@oa+g5*ry6帇K80niy$[Nm[=d4;uY O!ӷpō< `OL/fH s7"_N^kP ]:l^pJ$CEZO.6Eru20 G͆h+4̗"kfgE?ڭI) H7=pn%U,Fr֛@EW _B<ײTݏ3dw6'YZM7F ;#v<%p2TDg*=;Wu9JxC2A7*L*&5(X,ؔ|M&qL匘,δ֞r&ih$Z|`׭xA$K%1/YWb%VZI DŽgKMQ;Bi@pt+#rѽoTIFk]T}6p hrq7.cL*Fbp f Q]Mj[˛SN`- ʰ9olCAD덣Xf cTu6 J-HG+}R qTiLCЉ:;!܃تRkqwr:x;峍B:AI[~ x`/n|l K W2'81Su08E#$9Զb,)čkm'3ǔٓyZ֛n8Tn=!L#~ [TH \'څޜ<%?iA]t] J&#IE|S׃ IKXh Jv'1^NtqOجWԬ2wC8|P!ӏRkN{)|9g& k\2EjDevKLnA }T{_sUi1tnCWvI} "Qck9Q`-dUޑ'(v(B-mfB[Y=%,` ͿL!D5}Le+/{A b4wAb4Rbơ 5@9u,Bzmk"ٓ<9G*TEdRh_L@PMO5;)1F+ZKDez2HM-,2]כ23RlWZ?bxB35>=D ηm O&iZVf)Uo\gq?7렁o~Iy#`cnb}(opYDfg_9_E>JDfCUzax2쮹Q)A{4 Q>}X" T5A@v V*:/XIz2,#r$ы1A޺s[`*/Dn:Biѫ^k$:Z*2_yT"Q(l. ˝}LYvltVkyV^e.KVXIS_bta"_m%q}?k)'\)9 J;[F (;ًxc*:tW }`S/6 w#Lfa6WMhiB;Ԁ[λC3=dp>2~CYOf@+42Zkq'1ƍh|R$=`t96!]IsPb6 ]Xt63&'UU^KW | O3Sl|)4UFC{aW5\MVm9 ͆=N-CL_sgln/O>H Xh/R #̣ y7aanxS窱p$.7S5n|ѱ| [fJ-=Ҽdw¿9D#\œ׊Fj&<4S"W!~u"xjNz{(apo$.N2^5DLYѬ"ܞ(zj)1O8]px\)PTz{/5NGa.x, \>YVcu^ayF ֭W=8CYAQA] `Vivs ^TwpAaq,ùIut.`It`NLSg9}PJgҲkᮢ5F21L$o W$9LcFG`]hϼ\O+Ck#a(rVI ɨ/ORGB| lO{gJ3p&<4FEX[[)2Bz; $a\lf9]^~xNGT1#vOJ2 ux̸:/nT)M6_d_$v|=Gkxlo5{YK[ssT:iT4|VZ&jZWHLtNĠ)ia?|޺%elΒnjQXL70ݽFG MZDuy03bQ,?r^qҴՒ2 OWM~J? u\X,@W *6-yQT͔E5s!o2bʅBՌf3Eu_^}}H}j55P[4n?uof^ÿ T>Ƴ'z\A^([rQdo0 {cW?h&Oޅ-t#$*s'ڢE![ Πg&(Zq Psq 8{cf5EVgD+6~a M8hK6qȞ/‡ZE&;!.[x֧ g\ ܼ&AN _Nξn_$FOm{ݍKa\h8Ϙ/؊c`^_F.wBŜhD AFܑ#> K3w 9_X09v4ErX4uChP@cA=0wGD¥CX##6dR174Fd'qJ] V I|ٿ*{E.I2uWDNK5tuC%~ݔ-=]sm d56GkH ͺu˝4ا te: ZĩAڭܖ}(lڼqbV-[/!_?YTAVCĀg}FaXDm`6Mwd{ai^J-BHl}2c۲EȁvMyKd.?e]LK uIIGO5ȕoVJ'YSv/,Zdc/J ܩOZn#wKfk,8ߜ6$1 %?Yז}g|$QDx._ڰC\5Hm.a-csa4J=!!wZbECdװGK~4owNgCR* Y#V4&0wC׆J.Aܧo!@4wmv%t} l4 'X>s- y4o'YT MPPHßm8*R{R}p&)Cn.*7QHTD9$ŕ?UwWuۜtEt]yq_bqeGD1] bJ"x=f"9 YrrxFW=YI&F˜L  QJ!Smyvc,V[jDg=e'D:Ǩ-l~l3(1UdsYq Bޮ1[ )Xvݖ /;Ǿa |f2|ܬƫ_G6- wߚ0UG}\. ^V(x#h-,$ON8G5W|m:A6/ԁ1BhιԘkUvF^^,6'ƍwg6X\G8]9dHm#@~%`'UZ>ńZ~U͍7N|)e0Ar0Mw/Z'^>6O"`WٲLEwgMED9M'j^H2jE,(\\SEԞwL;gf54JU6|" (W^#ް2_xjGH"̛][Bo :Ud {rKQ2sDdjGbm򰂋Ӝgq錀! sE!jXxއSe.q.|URGVlo宭"xz (ڷ%1PS/P~Ki6VDRfArkdA̕yeg4L0-$pMw p8} j&|d+D'32.;/”Ht+r8A1T+pf/!(.\1K\R7 o9sRA)-2tqd__:&>y[4!bh *qdJD>߭5"%JH6Z|UŧwG ֧g'p]xظsz&6,rgq=qt1 NTjC׍,$p< 7$O7Q<{|%ouJ@ٸ Ǡay>F Aƿ*0D$鼋n'2i_7湙P_RF]h@m+ԌE(,*)%w 0~$;gc-?e)Q'坳]sӅ)B7FChd1Q:3 %iXu8@pNIlf2Nr%A~M DW0PuhnVue:3 " fG,L(HXrdJUW P33j |W{9+Q*u0RK"~͙Xрr6BtqNza2I.؀Z"8c€p~ee 6cР!`^iWsQ٫u4\H?E[ i٩['>GFEs lM:JIiVh?uwGT#rCIl Ԁ|@-\[ӽ/CSpnu|>Ȋ[™AqW03-i̖~<1>-pG.jˋ5* nLn%"C qЖ&+Xb!%ӿ${4 ]uj3bye,wudٴ :|8qT`?S\4[szgƒSH,]!n1>@j605 xGz#ft@H )RTw<ij~e]GR21r [ q[mC K46؃RS&Ew;לJ̘;2&wy5.7 s; >r7'2ΡQA+ip3Pp,WdPK2'L♌HҽO9ˋ*lwjSD35M}tBN==Óv*o l{D|V$ j$4MB՜)=W Ԯ&R+3\&D`w>`Jٕ͈vm$^e[iy i_\㽎-)kzg~W2!_9j1eIEd++6\ ۰oQ)r5;< bȔhʜbn1+'A. %R$"0xJLbVs,a*8*r>|bG_F5AӭMJVAܥ^?T~+о฿B` 87 픧TfߪLd{.~', 4pݺ}WcY[c>;P|VcK=~2X  kDtAs4 Xe\ã(@s@t% =O~ sWgFَ棜r# qE 5ƃ"`6xD:2ĠڷyEP'|6%,U^ @' 3` EsõfL#%dfY Z%K%' sc;+c3 )_;Zx<% B@*Rd֖4OwZ};[ChK8[y5M Ɨ>o,ǏiɚD C!5~,)v5,OIRwsu&'@U~f8[I:XJV+x7>PK@ʒy\Vفn'y"O K\*o~`D"W ң#>3 qy-ߴE{->q~ʊAń|}n3pG; I3Zoq@A^gTŤ4f* =.'gd}{/Ep>Ǘ7K?Biţ`p&H+?}WYgi\{qF"W#L'JMb!dY=Ldx^}|.),7T*S3#c2=F'iΓAg5qsT.8aF%T5WjC]xF;JZ}U}3cŻA)5 FU2AƢC)Ut/2`"钀3@cj_/vw{+ؽ_>-`}4 S^\U䉱"gTU]iQV\4Z  [0 ~>+飔8kf[b׼:):G q:,LuJ3.%}';yôh/۰GZ̲_7LduK `2UG:zuՁ}B?g1MP21l$sKuSޥ<<+ ܀XF,"{)K+fKe_ZU w-0)/nz8-,"zFrVJ*F Oov;>u[E6Sbր&ƒHU\j/+d =79lTnZ^e ]B7ూkIhX#}q^03LVK!/x|";C3w~KeBATT^CaW:׊̾uI4֘rnSAuhZYU>Fd`iׅ֓ 6w^Jr]\|7yDzO wzP! .~i0HRӣ7ԸTsu+7UlnTHUગ-gO5绒1,/ء\8Sji\iEA^oRpw Ć/=|2B^|9 #xX>$?fC8MAA(¿6a|`/] ӵR[4Pz i. A+c^HPbJRZN9jc Đvҵ:0zp913la&VOiDF'{=4js[g sRy[Q_/86:Jljm5"0vVd%v+*m z*D$́6§nw̛aɕ#:}euy8"Br?EqށLKl&XD;kXE  ;ؿ!-%?2ǎN׽^BUs6bn`ܼE[ {|V/x`c1C<\ h0'Қ/3ͼP_}tߑPSj]5]q+:CVj@kIT0LiX4~eڴŎߛgv#lk *\i,"ݨ6*hr1qV|:>|<@v`5.zIXHGBD8W.c+>U;);5@q/b-?/`7jﭾ@D&ǺD`@݄/l$Fg7f;Bk9?b|:DfBЊa~׏"*`ni; Ћ~X=te|l6Qw>Hbs!.n LVCsӪ,`/|(MkU7r\Dф;ajZ,ud|9 t$3k>H*ʇy[ޱdO%KFlsYΗQU!ٿCw7 {~=ïy3*ى${*~qM~ޓevмV=(_5GopPp{wIi8 "|'۱J 5K`>BMI8k t {Hz\M}z=ed G'oW > R %㴌оg@ *WQ:=Pp|@q*(w'Zk~ 1sIߍzjli5jS62:zNa}NxyjQQn\g4>84$kSc [G+X4h*r,54aP8lco^ƍdAk@q'4W_NImo VVM{E֞DZ#7ҬQ ROR3` >=!'E j|ѩ).Ͷ4 >&$4(9ShB~R\?p-]`(†&Pkwu*Y((&y&" e;>*I_ٚCe>w2 =}C{m_$5 {!|?SoV4E^ƺɁN `jNH6h -x4.QV_,<L65in1G$"b럞ɺ[4U`aPׅGYa-8*렟Z͊%Bz2[]W#}HnW9Oq$"oEEܭϑ(ZIBO 3`t),3YA :~Y0ȢKrPʹD7~q`i_ J%?fT*ǻ ZA^OMMó&\vHIʎ; zDXmic 2P"!: `쳢"1ne 吮I\yWGkw;d5ۄޔV@~$#6IKrI (<B+%/e{deYw! QZxC\] AW-7]b D4|.u뗶(,s-qAJ` ˙ 1ql+t'0 ^ȨAk,+CMT$uC!k$^B^-gx禛f?`'bs!qViN|:lZ }(rzjbΪc(Z^y &z$ະ< I?-u_~v;0-FA:~Tc~,Aʎ#GdlS (c&A"4a+2$ʖb\~ޔjnuˏ^ssnLvY .,oxT~Djz^ *ev"Úa 1p|Λpvb"y̝m'b@gleį#e6f~L \ZYo&qAqTWw-}zC < e#}DgQ*m_ g=:advmNjPf5?G`U~>r4yr4,~%aLNsB8׵&+X:+ZTԂj_`{$'cLтuzc$HEmN%k9<lɪƾN+ @Y'gA[<[YY#1j"r }Qa snW.XJ{E=ko;UCʙ3ԎDM'7mC/8{+ll _+~%:#d*˨j<5_ص7}7a,}V<5Cwb[z9ft'Wh/ ߛڈQ?:&1,W}ePn)k±xͱs5鬻Wy2|-v;k2hgLIThS~H' Ju|y苧6 壃ԃCo"3!~7)k^.T_PzW &9 ʢmD{~)嶇㍮]5UWGeOZ >v:Ehvyװ_a}czk㍜Ct5Ǵ/mx LqwXuu$[O}GMRA&+ъ.c34Jbɪ" :UQ4^!|ztm7޸r"ìΏwxamA/xqJأ!{d#cڗdc2?N|n@(ءS>dU7D_v@I ϫ T5Ԧ V`jBl\KASq~м숙%gG:V{:{K[τ)cX/%98cCyhMVV*- b߀y8p9fU;!nkhRƒ77b뙰lݩ_1uwSFiQT,]㥢n_ɢuܡ?R)ثg $Go;" 9LrYga>BS:mJQ+&7[X6i\^}7;ɨi3cdMZNɜq^"j4gu;sW,6Ch+0Ѫ*p­.5H*L?6*΃^F"65jpqP~Tl1wUb7'oW6 i7h4^:%*_ZjvűsOsbl8$?aTG#TpxOjJDu3(luvb<*1iEY(]_f}k> hQn6Rqrn?GC$^Zj3n)vUꔃo&<8Y|'\dYI#~ INDMm\h"|nPLSԏiNo)!%~q qu= 7H vWt%<)5 GBߒזAgq3#JE^۞YdOIR8eqǧ*V)/ϛ}U~ckٯy#϶gCôTY? Xt& @5]ձ(qyd9X\r܆&iOJ+##113*WpelK&*(̓U[rdtC%OCf=nUSqU؀읠Vb_-8✄%oDߌй)\>پ%eDG^dk |8":`Tf(_D/FuFr%ZJ[T\>=-@o*'W~[o_~̽V{T kkp9={$#"94XQ8%-!yX{*>?a0k}Dn[v+GADTdZ.x Ԝ+ki+)* O'δmp47Z3[j޹O]S|`@Tx@>O= 0 a=Zy9F qudU:i fI2w/2#Adҽ2#xɈؑ]Uqk{.\Ihϸڰٹ4Jb8i8XFׯUo/Rgg潺i fWIt#d$Xv xgHN& @ep 8^s&+MCvҫ(7p[6Vs pC_daTnf 5a q}>b]ZyF$5ZF|qvA۰Z'(_h)'dXM kt`| *&K s5rCն^_Bb*sU-$şG[DJ0kT^5.eWڔUr\}gVNrU*|U-]̐Zqh(c`{gX_ִD_f6:M]nDY*oM;GcȖT%Js #y:*vo Ϥ+5j+Cр|"(kdy9w PN.-M>vg RZ@;Jp@>фf^w˜MߚI,[L^@X Oi <;e8ž?ls q$H408FUPJ=4e*lhta_i:e`u.Se%AL\˸eG '(G[z8;{U5˩kV-6BQH8fa]( ՘~A# *V4^2S:Ct?NC.=0۞SvA} &O5G%#wUԜo7k%6mwt<]I3·F|!\7EV&o1ζE=>770z^&:ӿQ: i>'q/Y8}vhni3hn*]Ȋkqʺ }XPpk`?I}GmSo1=-{gR3JW95pcKb! M0T2!C7AG!qm`1En!w=8KJ;kv5ցFNةUQ*Z?pށ L"~Pq0?"Gm2^k:exHiʵI)_TiOAr0Gi3Qi-n,*.Y&\ ;?|wp)=+B[D7iE cO'2»A;A6 $Tt7PȡzYWm ^7OZCS)(tpW9GΥ.⚎|*;KR^{ד]l@5Ahy 3| Ǻ\QC@̜wuY=[27{v7Wlv|d@٦C(,ewA8&>:B2O)=:<:͢$5.Gbh\ԉ0jJ9fu1>gV)eժ)27L/DOզST0o GHCo=KygngګK!Q4#BPT)5LgMo Z" |W<,chгP,G&%8^w|a9|ISյœgq>Эbr20ɸ\&lQ5L_s&:dTyGe3q@a*'ƮucUF%f2lב#}ū)70в@ o)9è$Rh]-SS6[lVZ)%Nw[[_l8Q YB՝V;'<^~k%WDhsү(w'7{ `o"4>tQ(}oD4q ŭ '  Y~MaD\Q\N])q0?$] V} @ߺtTwp3TZ^kpwb xqQ7AhR]9H(\aqdv_ҥxI[zhErn2ԸKi5e/E[PE[ZƠkꮦRIcD΍LLM.ڛ'ǣ49-?T]Se zg ̰$5, 0]> ="Ȗih,]}E'lLF6p U()ty#E_ %l0蕕`^h‘gWDd+T%X I|v9kEyn巿H' IaO{Nd$6V9-~< +g, }#}_!~*wXkv$vPN/cm^Siu{2d玊y<2}[c\끎ikbx6}J>qiMezi㈁rF^g8I!5is(W'~6wl,oGj+jJhZ;R6nG\q"NW=$2smwg 8(FUgm*< Ǘvk'k/,9!7vO: ٳP"uD#>'$qr*9TR@J|HI!U~a;+x%2*P(|}"ep0?BA6nfVWGO<"]Q*ŮVe'9R2v!EUH}I^g49 N;4 x{J8ao+,;J]Nb̓ MLw]\aWd`՝o1Tўˣv4!ZRf3[,.ke5'Qx| q,@9p)XgT5!@0SV) P\:-T?P-(zmk\k;o+9>wؓF5: ԕME?Wzg SrZxn4,* ݈Z$_['viғj׏\U-rsRReZ`X3"iƣ74&cZe4_29EUl8hvɝ kg ]+PD >I㮴:,>]럯 H{ 4(2o)$!˪]0Xkr1H bxu58c}FTr>' %S ìcD[IP{grrαf*V6ȪRƊNS @MZTD앨cd1j޻f xN^&W]=$uWD'XHXp-sUgVy6b߾ns`/qW.񹭹#UKS Gz5k-F(%U2 HgxP$pqrUAI{2iizYEK I>,DsKGZٝǾ<́KH`]Hnm# gh3da2+w Lb8R=3 <G/͔zt[-VS",F$6*ݥ jƮi1[ZV|1|B~Ԇ(Hm+|n YPq$4R^}CQ3= .T^-*2?](<oq؇'+N#l~vGeKvlR |jP(M%uQdwVMVe9MEiS[3SG' 3e7V/#XsmT"Q\Qp }]KꞠF(.jO4(~)CeUd&jHI>\Q8@!;K S]nkd_=>`"hΛFKJ3L81:Nm`|QjI=I2 L6)\︧M]GETSDldJ!˱s0uS`c&n7BEWWxê EҙǍsF^f,P{W?殫N Mp%Va7LdFG{ԩA 5)CZի*(uwuwG!N A.2>8:KceźC5ARJ|6[9Y^hBm3"ِZ (粉儝A`xovE2#) &ݕDEU| Q;}9a̻Y# ENn*[WgD?f(P@G̤&ϐ2" ̄gx%W,IMK{0:2e8x'+ eg;2g [.P255'Xo4}Pc0WeƈD&V%` J}ʣwhб"\7\tS9l77T@TAvd-jn4QQnY zwWL5l'wVYLŦszJŏ 5fz;9mh{oywUJe2sU`9TAS&?~ rerWk}5\a>;()A ^ƖPz#O"3oêvE7R0<&&eqNZyn8jOLm y1uCQEb@IU`nL.Yɵ8 9b{Ya*!(YV ]x,(Pc1Ɗc!q, S>->MA3?g#inaίqP3o0W'cjufVSE/LH(/qWskTmQm}Z_ .|r c]o;휻 UMT]HwOCh'vjC/ke!.{ ܅Gv NR00l⳰!՗@ ND"XCjr,Ӎm QmgLCS ɲ2:ng܃ˊ6yΠz:!a"`in:amJ=Vȳe4ƚ8ltt8`n-u@$U:>I [:fٝdg\ @>Ν]ҽOᜢ;Ԡ]s0Օ^s8I(dvbM?Ϻs` Sh Qu)VO=d/ HAXϙ:=S*zp ~xnpxqeǹK$!4}Y˶8%Y\䇨Н(x Ov@;VO8q$^?|VռHF4aDfH<|pvwC ]*HPMҫg o|^CL*.r{݇rCXT{S6g' Ul %Ord| CmcˏTLt֧ S(ʺyT,5>?cP_)U(2E5̓^ㄔBO~ vY67\\]ng3Aj"6#Fr%W\u7mU˜88%rRoxt20yf(Mкpv7mIh\ ЮB!0EsӒ]ᬁ60*5LR&L^&C;8cMTXS{<,rՀ ̟C`,#tc}͙$2b#k 'ٟ$`֑n…Y 5Z&S=vꄁСS(IR~֝^ Q~C:n%}!Pgd,7&]O@ Wz}_# d?TNu?u#ZOe4 \VUm1gr71c:]X^ &jShwvD4EnNm jmzPwĠN/ww3,&F0nD\v$\K{!IOX{: gSHɆaϵ Ru\fÒ@D"VgkiEojo +2\xw9yvj8XCNh4X5ǿď*%CG)lDڀƬ4 }j4x5SqI|?r/izk 9ca >Ho̢mg X j[LP87CD?GtN],T#3=Uj͟!YxٜWf$,m.1u!qcdR hԁ Vt&||csi#M87ND*,,_>>IW6)cCQȶS2iL*nyndlHse2 l̰B"} CLq@ru#?S\Ʒo|(lݜd4G P8u1nO n[צ`'iHeh _NFjĈXX;$Y|+rqru拟; Qy@r*ʵbO=>bi&9.loSWNj>{wŻ]Lz $`mm16.h EX}tfcw"P<yď*x< .9N2+FiLYfy#kO$'gPd|)BղKxSoФ 5"{vJxk+mY,ǍG(K9]>Zf*L;;(?8rrr6#.f9A&Hk(}Lj.JMW"(dvy"\e`OzwW=爡F)]{@r{([dЛlnX7UEY8"P2?~js ܻ${|*_U?'V%c^-ΝjCݕZ/+mХX6\TCulc솵C^n?f6oqJbcX$b.~%|EUwe}g  fuTKQɦ_G8N)N~J M_l`fAkvJF7̉ъ=LLy}#6`YEg%ř恾 (ޥ<燘#ObT=yfx}vp@C Ȋt4@[UQ:ttW`$_ByZ5gz_hnau s~#7O=v0L !`-=;$9pHHN 7me ]af{4PsʊD*zx\S;r]7^mߠkcG j ސムA0S̀2i:D|=ԛ5Kz˾)P7T@xd>xE,p+Aϳ|aOy毇mB]9C̱Rg@F0hf=RS\uO;LY;^~pLI VVW-WL[Xγ521f٩N:{wS,Z!?\fXܒ "/Kcvr?Te= qXzPH) IndŚH8/q6/>{ȷLCӡ3+ktkGʅ դAo4-rME(˲c⚆#r/9vwO:qV2.u) ըiB\HV*iEAMao&g#(YuoJ,ñ56\".uyShͼ-_kDue}@OB CcMm$4YS]%zkvdM@0|1MM{WƞwƓi֩T]@v^yB9eHĒ _}"qA]VQFvqzX« @\ZI莢UI,7GB!⿝(FȵﶴvcB]F sLsP{d*ɦ޾edmda%W}*܃5ej1"*S $Cg@Uю/8=E;,/&9M&?[βt0Ny1-vjUx^dO|9Y_f" bT02&&\;EF6g>>Aub k l޴pU,MB.erX\=ަ=>1ުMvHeW bzoȪd&]]"U>t-oB{۲ufwv4ʃ veN*[dAw/L08^'3tSgsf"tk3ɖ-:xl}Ļ)9;Y\4%dsr]rީGתbd""+[٫}(?h>C*>i`[qʙN(BԾۙZ -NA6yfYB>=H璳nLxk3ƚZWmIQs`sypE-k34!(Wi'.VWqG6=8xOw؇~#D34tn̳7W_9"u4c5:b\r0oQ27jWRdddrY@@zg5q$-=jf4+Eti]Ș>4=*-$ rUw{(=+Z:#q|h{kA n. m2 )лP{Pj"o U mȭҏφZUjJzՌ1U#[̺zn8h=\:b/ upǏ KFY˘Oa8b)#8iSl,3J"7].r9KIӣ{h:eTu7lbT'B ?]\'8X=MTho9Ov /*GɖMoz!Eط ՟* GK`XRn^c 7- CԇݘM~UXw] ]D+G=J>8,BeI_T9.3s"Jt?Tkԕc%r?!:( y&7;T:W~ȘsaN\bjFٿAy^ӧ85s S_zq4P Ǘ%HIEÏڑSePp$h>^!fiqZMv 0I( D!$pU Jc6u =ъeu(#Dߌ ǥ ԊI#n9*{ݙmb@ڊ$I.PUfv uw {()ӎH_h)ս9Vټ sjYVĩdD庺 \̿U rs\IlT-Fў*NO5 tY&|,x% ֩;yL_]#-c|tgvajpptQǔ&~ixx]a^mv16l,; 7XjM; F殼tuBō|h349.z;)32$ֺ/1߉W'nbכwŤ @k 3&ڞ)4UOV ]̤zBŹF&D ވ%muv_)V8m䮧І0vs(K%6w\\rK 1i׻8*b7m/:xB~2\XO(e ByÊU"Ciozo|-zA:kҞcԫ+[SDp W>Ic l!z4+",+՘#]+^w; jv`3^ԑTy0F<˳sȤ 8ivpBSj9M9?fE PhRۭzcaRsLHj[j>71>Χ+ {;29#`ъnuuk vx (.t yM h\_nYn)"JRU O==iQWq˼Zaf 3'kseޞD#{s}~*՛-QKlȱ+5)&)V KrM0>b3R{-j3{^u;Yc]5(pØ9c +e*,L?/sE3Z'fOKr$TLuq) 5bn:;0K-$ɥaĨC칞 0:W8P6&X<('ךu m )ͨ7 jgT뗔?OH_c!FZ̑Js2M@<&"WEMLS܃LCM1#o xPdؔiMsfvwO/bhP?^3,C?JoB52uo%0"uBsS-2@PGfҍ!fÇtoY˭+=qGdS*^rD0 u$]r,WOk7L@#uSBɹVy ޹$Yw%R~mYvs}Ǥwzmo*TZ:"+jRIo!aF5UQkGҊw$PEb,`\<%X- սi@&PO}F'`)}mCm^ʔOSz3|52d[G^Tb݊һ"5*) Yo{g(\ Gu5;}GW~+FO 8ȲmXÔnX҉Nٝv=Bz “Q/2mJX)BH{o U;*8/2*v΅}zw>hZ񐦒B6?;= !(COkN4wq8%eJ QL;h')\h8KW*ON%ܡ$I t "k| +:̜UOG`:pu (_hn9ܾ4N=K[E4o.U B4ayoVaUα5Dmt[| ֶ3{KDY V@/S&W2"<1u+h0Lc){]O]#7=Ge_7k9; Z.:liPF4C/PN'Wn0p)RxhO<5: h(rsbQ0-&OoEuh3tXHqyҐXkZ{_n-p/e+Z-{q$ "Ю `?e BLar#2+D@&ks7`;x4 |Eb(ZNjS9E>.B̦`-hů%#}zژgo lI߾\f&s!?q-g"OE ;Y? /8U4a ˒|{]QM5uTn{2ҋ qYͥpbx }~Ld͉8l>Gj N0z}'XW`Zx**5}{G-][TЬfJD3YFn Meet3:ON LlyC*y,;=͌lKm8'&HD9S[CUV)_#?*G9OXXBxοcwhR2yqۻ"s욽}v[<10P":]d{/^d$$ <)^ԉtrp/.z>vQ~/K,$A{sKKJPX%N6HoLSD@ /YL/*։O0-gX V"? C7,A7Hx5rU ;F22/sa5x? nt[)}ҙ3v9cTSXf`]y>D^ݫ@3ZB0AҶU>Ƹ.Iȏ c1w9^+j0l$xFh$4}k|vrV0eG* .zmC)̼^}2RVѿ_+G"&T:6QW͉*` lDE' "C'V'Rh%9t Y|)dt gM`m%P%Z4<%v4E/HmS'G|$3Yܬe  _3A]foV6>O޳hK羖7Oe A!6' p,:T#vC ,›6'.uv9q؃y-XJ+Ssrz k%wzCO~-G5/Xa6B Dc8AסG%ܔߊ%.l@ܖXˣ,*:/L GD"j:%_'#LD^2z|8Z!xr&zg{L Y`(JѻA6{!{Ѱfz}SF(A݇r<A53yZd ~?.13;~g>: UGCiuE{%"@RX;;H/?nx)+LNvϋyҳu+3aG#{ ]KK>%dz2c9 =SA("H'U T"%ߊ , 3> "0 zjC*O4?=qĴg*}İ 5Pa(qEBf-Q )xOۨ"\$UfE.d7UG 2o0qm]Rٛt[N?FdG<ܐ"iTRktí5두ˆ"爌йUA÷Qj8`ڥ*gY_!1BXo:Wx<|z_^cTK[R_+nx^Ʒ_|rySX"ρI⹚GӗqZC_M#| !\n\l0/mw.E'=μS$lv}ی>mv󀅜2qhy&.u*ij|jӳXGbH/9 Gu,G=Wxx!62Щ 9㉩\;"T~f=5B 8yz쪮[ 5wR^C%9v@aܣFFphfH%\ahJ?݂J)43^pmxZ7%)oX*Giix '&s "I kp KwO-wDžMKt&xn5#B CҨ&jؒKpB*@^(ն UѰ~H ̙Y ! 6;FM|UлGu/h|>+u)yņ:pNܮ =wGC{fե1XI\D>2;k,ѷ3-뛼lC쵀piCc[_{ywqx &}F'vڿfe\%À8 d (lӝ cOa(g6 ޒag5ۥFBT)]ƮLis|_"$ƋJZDH\.G@|@*.f?8|܊!BET1j7uk ЩG"$ALUb!e[ 9y -* hZkNˎ^-QNDx9ase헯OmXlHU1۽@T4N4ğC٫[>6- >!Z)0Lm 90[04P<ތטa|:| Rf*w%!Rhkd~2+jn߃>< w>6]!9 wa]IX:k/ӈo ڭ-0j\r:@VkHX> 8!FFOMߝ?@<{R\,*KZJKMU&6"k*Mu#e|̴,x|:鴣Qus=6rK#oM!Awje€۵3g_Oe i317"ZUz]^^ 1naA5R)I&M? $7;TO,)5GlVL[74JZOo8ֹ;ړԵnyn@]זนF|OD=.WLE;P.>^_'Zof()Z#ߒ (aNʯ`AWSJh:\C0iB%^zpArJ&7Б*K@)Sb]Ǟk[Qqmf/0 =*XH>oK6o,mzLr\v~sL,>tXTH5&i;[@0U}ڏ7$hp:28b+٩J6Tґ_)*wQͳq\ssR(:#+jiCQW:'dٝTԣɜp]ɛV;©^~VAf)N: ɥoL1J VƄ{ f۰uL55`c-;?=dUѪcÆ! .[1F8 .B%V'u"K-7jeu v{&UPuy~ڊ"c*/Tݩ[   4Vi$"]#{;eI Ţ09b5Z{|mz=F+$[rzB7Zn%Iɏ6XMsy.DYG. dwp=~w%nA ^De<ќPx?rmMvzÈWrԦZFvz&`O1ѧ"bŢ6v7~I_zQ| gߗJSPy-O*<zoX2+d9 2`=y 3(*}gAf-}٘Y<$%ӟ|A[H-esڦP8hK33d(Њc3FyU_6nqXNu ,^p124y0{vYK\%$!YT[HV)ÉKu@vt[ <<Ҍfz7u!- 2aXx0}-p^N/υs$D&\%?=oi,?w/$!Cg2_{!b1͇\WMh<S+_:B_{vEbjpW(@WsT#l`]b1cH`7X 裀B:%f_=~QHJM$?2tkxs{IA䗱=G<*؉qMRV(qaYc?|^Ce`[NلfYX5gX>z`nԢQs"9 0ƌONNu0+mtܿp3ϕ BtRİ\1v⵵;)UL]t{Vk;<$=~m#/bxPx6 gqdǍS&9!69NCD_1} yA~ғoa':וgaoj)V)U7+bm{Hl;( n"m\#üNk{pI=T䘏+97Bݰ߂;qOhȗ^Z4>ɄMUc)x@k"6 [w{5_C/cjM?uFnҽP|4ɉv:D*,*OՃtrųw2$z >@oeA#f݋Hk,- PƆ6M=kјq `wr'b%e}98kP@.p i9̽:bp38A6!ۇLA HaqǸ[R^C!kI˥QS0{3CE!v5;U) ZF)'vlŢ{"*F[}ƹ[" oԬ?(M(+n8\N%zIh;O'4GQC8jii5C^t_>7GSrKK7FIޚ:p Y^ 0GV:jPw/ŽF-= 9U\ޗq I\9@;dJ'b=$d@pw,iӈ'O59.ؘb<8JSRD,&8j/ݒ륀stoo`LpLm hEiѰ@ 'K,ꡜ:@A$}ܺdL&X)@ՌtʡT,%|XHdf AzAAⓖ)%&@b7译dReE%Ё1V!m6bߧ72DHZ"JNQ}k9gkTMB"LObNߪj yz)L=%)9gk/}$T8>'\:cdspTnxwTOC"@,7z wt#;Hws=1(FH+LZAs= }l.y ɝ[oj$'j!s@WJ\WZ/K5/F';/OA4{WtaN]x4ãѻ 3qn>5"lj&&^FNx,N ^Zq:|N1fx1Ppp&pĎaF&&&Z\>|%nD,- V7D>z[C :M->e^w;p$a) n1g[VtԤ$6%R&~VO_`]Xc_CF{x\zg|.;?w7l:|j'G>Lt+3CoXu `,O:x?w嚋T^CH9EOVwlD[AfXT#l@GP p';ڑ/Ac2$% "!0k/(smUKGp(01I_*$9Jc>zf i&Ҩ9u \`#K#U): 3b^hnaF ./7%i[ `Ϳ-qPNvJ 6",?st^~ c Ά\\Ow{q~2$qw}IS䊉9raϽXx0v&_GOLivQW 4%-&ؐ[?ѓ>@ ;=sr+&u y">g=Ū Hiu"=`[S.ѹ]c #I9l.PPPL Ў4E;}* q@]4~=LՁ:AUW^^5i.`[$(:k!ƒE%]=:jU Ɗp|}?Qw 剌qJনc63Q}v,T@ hH)DtrNqW2,cr7S4p,ry*+vl\`M*=udF@hC9%^Z,VeJV@7XpUc;vDt b$owp iJiYۢy$WvĞAźL%bXLyTusG먦1 蓽9$Lmfy[CqŘHU uEF Ii\U{0L: !e8^R|2;IEAw1\' 7Ygj1|=?Ru֨;#6wJ3P TUDLqR/,}u 4w͋P'RE2rߑ4^`g{ #ҴI;w E*Zݔfq"6n#@ pe,F-3jM?{g=Q)ik!\%KDZh__N 7ijBsv-gI>jh㖂Ј31mYbX,I?CQAΆ{}xУu_ u;=5`?a*|QLy-TZ$Qgz-Hc':Y /nO/IJ&{>  /(u~Hˋ &H3$\{f}n7S-:kLeu'+ȗDžK6,|im/剦rfï ޒ j;Ryb 3ܶU O|~2^`끴N-/Ǵ )y%K(#dyqnt2FdN_ոOƋ 7Cn`y*}CӵHǂvZM"\aQ>EeJYH߮FjxMZ+3`A)c%eqWDCɎVҒO 7A `ey;;íʻ*JMbZZAR 5ITU/qfI63ԪJcDx8beg>-Hyv.v+oΟ7N{) ZP3'5ii_ 4Wx𘢝{@ <]"mjƾz@V u@He}y;8d,& R]Qb3ySx,[0r?' \q~V֟5F=Y=ƥqp}6Ԫ^X-C :'|u,3%dKm*VVg'-Ը[W]=DIP3r.!c"@gq">eB߂wOQsmwfkrƥyG0PY'aݪ&K4G|!%:&'4t; #,!b [qŦZP x6ZuYL\+wR.Mơ*66yl mDW&fϢJj?P@fF1:Pf<,Qp K7,ا"tyD!ke:9t g~]E;!z=w`2n0kׯ;4Z6i_I[i$ "zsJ3y)~;X~ 6/.-vc[VP1]djܖDi+;Jbf5q%S/eU\>|Is*򄲧kŒJN,!)$2b?KVW%Z; ŬQ. 'Z@ ipnLkz xNL՝[~ž`3Gk,: @:kPSL𤓮&m:H1?$\з,T6{?ULN?G%,[--~lBu놻=)Wn_/İ*ѷHԊXA MB~9d-h(d|ct҇GƂ;W:!̣ sDaM/֛aUPl 76h1ڴ~f@ \}(4P@] Kl#)4)93 FbӀDL `mF *UDꆟuKݷ7Z5^aR)空ZA6IݟvŻdȰ[!9^qK+Ai|Uٷ"GcAie#toB~Y}fq  _."Z`Q[ØpRpwܔG2WR,='Q)z΋EQIeVڃay>343Pat)# 7%Em-1I2IquX o8oP I. *e,hSևi2EaQ֤AbCR3,Ӝ#zf*b?)*5^(~JxIi$Wp8|ڔN ЄX\Lҁ+i2חʵۘ묊JLLW|`$Bgv*(탤BܶɂwGi"VirH|jT#){xR̻$lT>=8ByY?4Q~x5 u"{vC|lb"%EBH۞{`(DFXSF.9a3glm:UaRdpj.j>t#ClfHYw=[ 6 O;-QxQ#6Ă<.++(1Z|c6jL-E$A~GTSn;IƜYm4-uoYm^! 5szt dQ]sўN:|Ҽﰧ%@Xttx$e`~40BD'7e|nLC5 to<GS6xEǽ>+)8.PQ[eДyPfA@AB<Ff|C޾*}28gˉgyelh9ˊϽRB/t8QNZw@裰:p`cK^y ӧfa=$zu`{P|2['iZqFQ^a\w@}^;LM=;]͜J٦w_"uCwa;x~8F̈́j@PEga Pɘv c2>fld|1ngЏ;aN·Ro *pk W%oFHxqojahCVs,~Bg-ewSC=Flzih]etfc@Rn jQu駴?Eh2T>m3%(D+Ϧ53 mIs +,$T?8 rYmv!rmS} $ehidXu輵/vPAsi(r;$Il0w"iN+3 z'I` jS wiz3O/!WJ-(7+5Q.t睈G^b,=6Om]Em"W6(p{w5_(p^B>CزC2WG YPMI< ϳ."-]n8+ 6J)ڱ]]s,nZ?K \-$4!ܙg!ĉ!a;ãNs=#.5r6҄ҤrmTxqlcQyZEvyLVH6[#diH9Tgy*>7,(L0/V:ѢLJ1sUҷA+kߢF(*AlfZ/ǿm,&΅^$,Bn*ǝJJ:Rlz+5A#@ c~QbdX=Ncg= Fg]S7a.3uRYh j/2`J^nW[4(ӊc%ۣ9MaSULߞYR?D OKy@ITtzRJ5c̪WmѪثPl-'9OLbH kv7 b+3(N ih szۓ[J7&elhzk'n/@#e3[ĴU]7 /UYLȗ mx׭TvvCF$vC^Nc{IwP91t`.sŅpb߆J}Ӽn&1+a)߹}reKD辤QUiM ' iUOT,?#kH"ο^u"mȋS C'F pb=p^`@푏kJR>CY󽉲;AKt= rP}.?I[5%={K",f&_tl5ÐkiTy" e>5 jȘ;uiG2ik-pj= 5iV!!Vaw옸}ZI>)͵Ishu! UG^K ; _ؾ]ޭ tR,9bdc0!P5p1NNF>ʗ{PIx)z@0)&ĄuPN9;V AKTnxe fmؗ'fOhAiP)û5}7A `۷[xvXMOFѺr ֳe?{^T9Y~Eoei,'"32*6Qz{dI D=(, L3iQH4~޸ҵ;&yP\1$*ꞢnS%u|#xa!G3cU @S13{%E<->60"D4RF{wwGD?YyCx 5IMeAi$F, #V .6YD#MMn{c^|tWd ;L7H|).fr3o2s:wRP259u -q;@& Bq[ʛ65}w@x%Ʌ^# ̼|̻ҧx.P6/8j[Pִ  f1'| r @K z?nsv«pIGB ,L#d+<l z?@3EYuIUzBڤiR{gygYТbQ[;!!&e,MeK9GTK#@7E;6)J {vF3/;C܄EGJNۆ]P=s`"v@|3Mg ks谅"H? U$n9S4Ճ\޴@MȽkUn乛\O?ykR-JMfA>nXpekh% o3#P 7i%D4so8>rPjbtw.ř+D{V^LcOj\eBq>$3Kja@O[lp#4.1 n|2*2 )p/>:m<6B=pIQ6+ 5/[ P+cmr>h#|겵G>7 H}.qx0lX !Occ:AȢdBJ2{+^!Owqq (4?(z zn ={ o;ΤV vdj9~K 3InqzSVWno dL yC Jθ̂u)8b䭔~'P!Kd|q#pQ\6Ĉ}TGO%#ƱE|k",9>ppA%x#*zmra "j6 +6(DUj!m}xMTs6%}my,(7 qkx-Snj"/T+,9a\S)ţ) n_xCٗ Xg ٧?5cj,3xT (uc-٩ ҙ51ͳo#fy6, N_$|-![2m ifQ; PMe6Xɍ.RkUU[:‚TwMqJm>->V1-Sˌ [ T[syK;5L1hz-F7)żS nʴl~A,Q1\&jjk+vZ^:5hcr%;0Gvߵ 75%o2_D01̯pٺ_x}?`-|@X;kkJ_{!OfB- C-fǒ^3r/5=0 __kflB$b0v11p]K@~\M ?ױ"##K77Y ~_ğdFfb:ouq*hO]tW] .+нV_2gdZ>o< յ.m褶 uq(-E?5>(DjU[H >*PuzmWze@Dƙ#tdӁAjns Mڋ?F Xs`V*V!xX ɇ](mzA!“Lœ1/$z٣' B␓QCDyyzL5mj=eeGՃƊz's}ǎ0 ^w5sɼ B|ujviAy ;L2'<5f?XcRo\^P$^n[?\in'1}<prA)0iU3|<>4C{E R{7I$+t6X2( 38(j8lH⌈]q`Jn]N5 wb23q eE_.Pzke8+Q@ ]1_IP-w^;d\-d`&-lLbM~NBa/ҭWWKb$P.PkWjbF6Wp.B#u<'N,cf.-:"VsZ^$DL`5 >-o\ DQ?M۔Վ'~F\xf" /ӫS0 Ӽ-:z! -06鮂akҍ]'D/'Ԅ6~:RtP.Ė=|QGlɉ W W=Q/ƈj\[rQV<3,rL!JJywNJ`%v@^y߭Whڗ pUQo%BBaJF } $OeS}o&͘T{p-#rWȄoC؀ Ieh8M DDs-޷w;[t, b9F gHTN(_Q W7 bdM/.E3e%c-@H7HڶBFP{uXL@FGͷԫpӋt"͉D!k'w:2r?jđC#6Dl搆j[t~aLuo7sYznpc~9-811:x/ig#,}gDHmG#wS(.XWjVlbd T>ѨC_ev`xCj.[ u pEHL/Sџ} !_A ihrs9摢+wGSn1ث)vM|>|#VA+@އBբQT۶RAA@$$?0-G槜A22dd.7h]l G6g!$`서nm^ 8|Ug5[]vݹv' eO^+x$^rVu!g [?UwQ{t-Zn/ً8Zrk Kcl{0o/<"*zf9!fo]Gb^aDN "8BXvLq)i)$MTsraڄ^Ș!J,K}7ga$1_q8TS+t"P[(cwm-RE4+jUKP)]*vEFR,!k/[\ȁA"s5 > 8dT6X  뚎3l+ [}qǼU{D$U-^X2=s>q*zcOd{vsROJa}go?-74,n| h %A1IVfNtF\\366qolX^+V+ fK ڮN:STW/E@|#x_E}^H6*d0##oqw9o{5P KVWޑjmL9м(-wn'DXBf7]Kqֱ}ᡁPPCzo,,#QRhMh[sXkWN(+pn ћq -2P7^.UY(<|?E q,2# 6*^x<@\& X+ҜtR'%)T{,fhg.d8e$[K;ed Nؑ>CJ)0bqayݼ0rA@tޑ%!<;1nt1r|BI4q[mPku%mhPH+'%'lj56S`$z] q?9{LB*|1Mdx\s#!@H| ȅ^Y3r) iFv!#6#!٦  P qQ. jb^3ձ7:p @JmaѩRKb_9S OmW.ʇ5nj"z{m.Ïl"n{W&R/ }iWĺSrhFdOvW:) =Fe 77} YǕ{=NP#jqBԶ.[Ȩ[u[!iGlNי[(+BGuT,B;)M(fTmZËxHRFtN8鐱cȥ ~'k4AD2TgO鴥R ȣrgD!)Y|;U+$6]81hsyM7^A~9P&F2]ʞTM4d:Ap7gxYeB]Z3Vj$s24(483Yѹ"֠ `i~`o̱'%"UbmuGM }gnFۆkR"[0RZ4.7ZOָ EHgvp5"bGpGaF)zཱྀ0s)&=%!g:qgU\"@:DZJQ}5I:vLqPˌoJ\|8'#kzܫ)ؗc: gu$[0hAH&zE(ٚ\)i=jOר[V_?-Y SFύ0Q耷k>J|LCS !7XHvN\ȗBw"2 qT< .&3[V-QM2׍wqL9w9P/k|zYS }:F7ڸM4/9AGkQP4*]ŊGKi]]^گ.|jIZm$_wGy%}.RBĢ\^WW9rm꒥j<<3Foob֧jW\C>5+uYMν氎GP1>$@]͐k~ߡOr4褭cl7(Nux<4a=@ă}R԰lmW!.'Wu{in|R]WMeUAnU x DSrvLB8N ; 5XH(㷵%Uem@ 6ShӗҀ 禍$}F?=2ҟ'v J: v<9$`+| ߝpAQ+\#ſ]o{eH'O6I eCE:ZD&(/qB!CKyD Az?N7r>9ac AB" x-nѽY#c_O!u|!6' kx 8 Xw&_PJ }ϗsa+hF nE) ~{ļi_Y= WؔP `aZlPf[pyc`5RDLBǯP[@k{$s$O[$5(b;ơQޢ'g4Sӭ_:WyMY'g0|+od<HL߂.ŃlJ2zDpR 7a^xjoU0H̢wvHTj#" AG_=Aߥ;K8!d-2\-r6 US MQYnYr쒲 D(l!΂1ۄ׬|"V7v+Yla> pʬXwMW:mӎMWNILA|r9l$eE`m1 JKelm6x㛑jKKG.ۚ@BƬh?RUwfT>fA:HyeE&ƾCG$% V R|a&Q(R6%!'fj&cXMd7պ's|$@AYL]}8esu$k\@+.c6O1Eg+ QK5N?)qN8ҥdt_gdS몙I*P`sdG2Ho`Rhw{ LP+mtO"tkD>oAnM7r粴cN4a8>}]Fs.Qh'ʘP$o9!1 oO\ {kj_\ k  # jZѧob*!\%ܻ=PloG'rߦTy/) QZEšK`ޭ @ 5Q5`ϼ`پJ_+@>XS%LsrdC־pK{/P&Ub DsHVf :)ကHqSx@uvv8xC%ChBD*_/^6djCl4#2鷷G2>Jt\5N,L[, Aɘx9Ø5K̰O[@:ь.f'L@~J <%F;BQroݴ}0pB.\ !xKk~oSbXrHo;t{Gg?-$-d&8jiKIs8p8C8l2 re55A Ir@Dk'W_hnQB5N2v֗aqwdDgyÃDWLǣP$[]UK&#)s%3|&4uVQe]0{=)S7o9FE,FDF|d-bf[]tSMg; ]6*4y#b%3E'MU ZBMίZID:WjΫ lD"J[1 e:F7Aԙt)>LZ@-Fg3D:>òT!1VF7-qZ\Ԟ_حz/!>J:57g1SQձUdMVC[zpvld&QqێVsn\fNHgٶj IZD;YԕkJA`\vDhwG4 czoJ [A_o?\w<˭w|] {L0F,Ϧ30Vx7+}[ P1(ZT'Iپ40DY7@SjuhmSַTLdyw7]U%1&Shn¹ʝ1I^΃j'Y`Ҩ-KfKR4?w(:B06MBG`#!Ip:F&dﮔR~# xm$8o+BY]-L,#-: < ב>1/!æO)! %KKDM 4̬d8-4Y k֧U/w5⎙q&uLfzK>HJ=r;*a2X<`X3E:2\-{ܥWQ[0=v0ZANCxml^["ge3&qbf8d-B{D0Q9={}DI>}Ӑo%]Uέ:T 8ٙ?#;w9KGiDn;܉#1Hͣ/}ݧ &vNo(sQ0oɍJciߵ9OGo?[ B񸣢,W\[ aM dF(Z\# Urh'y,!wՁǠ]6"2&C\g4YʷFgLMq0tc~8ŵ%u#}ptɴrDku-yecԛ& z_+G2ئF/G SUǞ|98T1@ӒO468@YQfx3<Æ~fjZDɍPBձ_Ǯ&& b +djh6>p#X65m9iEkoiZ!TLrZw=t~rX\ε,q?fna/ukzT-_ U197MC֏hZ[}lRz-O0P9f5I3kzIÃc5av֧f˥4AP0p/e8@~id̡7:#`X3?[ͮ`;S h+NFSij[&ǖ=C4܉pP;R-_Bfof,q]!fq|`"K]N20 |+r_O1r%jcp8a"k~g"ED ``Ң]` F-]APTK)svClt.ݩx2ې\*@gx B @}`PڴdFƑ FX8ug9 A!]W4.¨F:GZ*da}XѮoQs׍ U&ۺzF+ȉ u#૓Ise"R9G^1ڋyRni>Ӓ3AI@t7nJ6Kwa¾>hIY/c}?ƚ 'Ɔz 72c\N*x~9+qtK zǿf&Ҍt*QG*G=sN, @oma!P ~U S'ϩrK ? m-_--YWqwY.0%iy0-`jg@G*D8vWУ,'pi:uMy5+֋PDk N(YWJ#i]_?"Z4 GA_`rOurJ7x%L{+oZɒm,9"&]杼NmgdYrk?R0uD0uT|iO +> к-R9y/p2ޠԆy  dQ z:!E1K^`-d--?Sӿm{\O=WG1?^*rmg3 D5T xP崚W11 E㨈8k&8$z&d ٳ<hr ܯ%sw`KO Q"oIQ~GY&2͔Sa9e a>()̽{XV=/ppNj5efQr#a"vKP 'B 9*l VnI TjTC|`=k#~KV$x_ c>6*c8:,!XKІK/ZhKZ6`}$ul> E~8S$dͧf#`hgi(HMW]j>ZVgx/LE o8ttq;Th/٣'<`sN T:A'_ʀL:ϒ"~tsH1ћ*u@IrOj) RY՝vf:(+G2ˏVU\N%38Ku Hf.J#F ?3S-UBH-c'?Bv,P<@", =n>{i$q;x~ m5#=9tb E [>S]%>gi||OCWK ömOj;X/C^\YԦ(U D a_nvxjd25Cpu5.2w pGUӔܭG8Ot@|uY;XzTugTꮖyI-;9;H( jӱ= Ze]1BsXཷEޜh>heP꠨mܠ&u?k,ODcd{>llA,-?Kq!Y w/#B93kjmj^ i!]j9FowQZ5C݁G`dQL6=܄Κx^I q_Ox}oJ6/ IUY2X )Ärmǭ^״ܘfOաۍ'|s>:vgy7N_ wttHrdXJK7_Y;\1zCU4XʾZ8F F#|j}7Ld[t׌ dF :OG}WR?"8Da-VlHGQRzQ `%![ >#\%é?8(Y[U2]UNLb!Of3ۏ>?lt{y>x40XٖeZMU\]Oj›҆Y~}ujpyhƽ|پc.d[ UVzN9rjC8)nhdh((w^9/ nȉ 95H^j%_Urzme,jjg͝%TsgLrPЦWP0 A Sg3%^ˏ&cMaD˳Z Mv0~M3Z,/2Qtָp[ f5[edp mo*'d PeZk.Y`=Ҿ81ìUeљC1SR6&țu'E"-X&/ٯky8hcUd!RN,}WI| Tvr";?%^",167)޵I"o8zxb@.>q2MNT%zPp]f ḙohuad`9qJ_A^BlJzǹ{1'-ҁѽb\]o@;80pJÂWUHeQGT{zP:8+4}Z^ddɷxυ7[ll O7dEoW cvbKҿ^H' lkWBI>7 v,h+ʉN(P"IK\[:ʠ|^yc K:I.L0ص?aܬqn 6#%_&wts<2<};>R 3$&_`m$(AdvSyQka /cG 4Rt頶I/\k$the!?񍃍c,.73l!wY? Tq!U*`^^uCD( ;}^aWmu} 6:<0R6>7J\O.V<m;zZkm9 Ļkmy= "r:پm>lh5%lH4#@4Qy!R>ʈl )zN2m`쒛g sʫi^/Oigvf-5eM'iyP'[D2Z;/E[7 Gjq"J9hu1 %e⷗wzkD㔬u(An1WH.;%cƓ7q­0_V$4nӟȂ>kUx{{L\,Nk,R[5c,_#ckZם%]9v-2UNJeK֠e.z5vn2b'NsB p;W}}GY~33`ї@]f,la]+ht7M4c/6)ً{JV G+v:zpTZ8 )(۬Z3uȋdq۲(=[393]^ Du&i|,Ϙ@c jѺl $C}9d3Bbq#O&u|;KҘK]/ƚH\ .Ph歯'. ;h>1Հ4j{N@k?285}r?F9dLRw!ck S\M93dV8>c3k6JqGǍE"( ||Q{TԞ:mGN-l+c e)v͙2Z>u9#)aw`ŷg ׮r'# ߸UuqEVߪ%谠Hu>>e&V<շYA0`7tN 0 ݠqæǛ^)-A*A5>(G)xs]Y9A$.,=zG`sO|Ald,'?ݕSqw(Xa^C `A.F Bx/y87BQeA?o)@򶺍@ c?M ]Nkr0}H a((t".;ѧK81YlC1Oh&T>?E1_abA{>o<2ˁhB6]a 0 9͏. 甹yr!E'cW͟8j+mOSyB+[M&),M/GRWzq0jjI}%)z䍬~JӤLg.Jt|}nC.[雋 ,H!0FlrYZoI^Q7!(f=ddxX7,v ލ{%Fͭ=zRCAfKxplO۸ [L4i PPY{GvmY=nzrA}xJW4 `:d,2" 4.Y9#=8ma%;Lֈ}L=j4H+. +E].JS~Ǯ+ޗy|VѹNm֟~i:V ˈ7&\'NN^c0Fnw!νS盝I⟘>r YPq\| ˫u1La*!=^$oA_QdCATm;c}dV߰^/4zʮN -'h}Ij`z) ARv̘(sD(f-x;VP`AeRl3##*M "V~Aoo#̀11ta)xa8}1& ߗĦ7Te,IaB>Ÿ{ :[TPij4}%GƋ?nϛ4vڅnYv;g3H}@'˗OO<Bd16l¾Toyz! TR?i;Eo?,c^\ZGU`,qL%6Jb eL2&}rV؜_''@8k%SdFHQx_",z, 'Hy v~[3:}  KܵK]&vQ"b5[2 g3cOU2N:Bv$yHLci "9:267: d-IShDCuwԅ$Nx\5 p=wV-h`PZs tWoNE,^5@xek{u@݂D{;H? cl~=q{v:[ AE#TYa˼4X0ہ-GG~іbe̔\:[ 4?}9™>k L]l#jmqZT~I یUq0&W(d#H B"1e#  N?&DMm~q~4X䡤m0v+1unwZpFZK08?,:pwwfS+oeqBe:3^4Ee~RLQ@z^6&g"Zd:-zX4S%<⥕ֹyPociA[Q-:EwۢL(]XLe3[}9[~~H]rT=ٴOI6Q\)7 S>Q-"~"暘Kn?t- P57:ܤ5G68`z+na/g4ʓ)@^!ﯻDq:q>A"ow(' [X0Z%q>E)roY:ցP&LEe3]kGpV=P# [n@y1>mHuf';fѧu־uhڴ Go`xԏ}V‰63p[VW$y2ûiB,@ }l44EԿ 3Zlb~G>-\ó^.ܔft0!fhW)v8!~M Z(`(Kh)6f[ ϴH9j m'ydЦ=arljDrk۰",sl&ѤOEQ zbꆔ %njMAd_D3MV6#Wr)Y&*Bqsɽ5Y>'D Qg$ xȆA/Fȑ>.=7QҼeOӍf{1#c)/5fDY;UԴ4J}qQܛVW+#($I덁Ó(4!ه#Yt 3me:k=REF\ym}ޙF>Ժy֡@qij `Zλ|&sa$!"-~f?L5кvEg2n&f^B"~}/ӁĴؑ\m>h!&^M+yZ)w`u8B"o.W"ND5X,xxpieX+/kFK>fS›!Hc6Pe4r-OFI4S>cj3fEE8XrJ+vL*ЖAE޴>;cZE˒}u]H6YaOv593$W>R, v@I^BZ)/Qp@7Vg 80J0TF2HoQ;Q()kɝaq.> 'JB:Bj*#DԆz!5Pp*.\ y5ғJ?` R "y{51< +WB}i!ƸyQXkVFz`8DPڮ()P+$LuH]Ӥ؉2VGx˔6ǟ;{v-bV3\ a1ȶb %0ҒQDRrT<1hkͨwaAoBl^!Ru%aaUwʺDļh 3\>;!qx[CθqTܵG\V^&<3? tmyT9RR菠KHtg}HlæS1 1 %2#Wm V} c@>ٸhkƅ!̊_x^r>4fpvD$EHO[#3ϡ4;]kP6ϸn/ی[ LIQebxўx"Kwj=3Dcm71l#LGÂ:t;WσGDJ"O#2uH! {jEM9@Xe-z(#,Ӎ'+4eЋi`z򆋋?2`\hx/aTnęC1[T8s ԭpŞe9m$3ZBmPI]P76l=cBuO*~RTh*I~w.٘lwX/hLsޏwhkQ>l)k-umGsTY3nWY~_{Nd X R/Q[A?|]ɹ/c9 S0o5CCyҠ0E[;*KI2vKF2S׵@YDo<ϕ{1Vl("BaAdiuk3t"6Xҋb6bנjx+TwkU>#neܹcoW|RKI$6)grD3] *Oe ھ2K_C؎ X;/+dgɥ1ύaM1G\`=@Ap0{g4d0Ak⿀7wC) tDW!;,XũxM!$Ϯ9I>$݌a3p^mKZ}{wi <{ՒCŰ0ML[zZ.YU[=T)di<|N^JXۯƟ@/#Klƣ.T&v2wȆ|f݅sQxlj|n?x""|n;TmdKeFkƐqaq-殀+(NbB? m& )yUT ձ5o[z#+& b";JYוi"?w~EJKXt8yJ\ڃyr )଴)pG:8dn<V:%U%\2Փ0ng,Hx$c숲[+0랥Jv~y+8XpjrgBD #$F\懒gTz.xK4NIfJiX.}[|O,cet e&Yrt^&'.݊(zk^$nĿ)@K=3 &mC$ioy\[|3]+&N&_;m̲8Ç-~$!bŗX d#;&$.1}Q;sro}[!4X]C, Rdms&O!X =hSu)]chm߯{httV ^֑/ *ޜz1mt\佝ѥ5ki{Y\ms ŃZlK۳b>ԭm{!7s>5DE $%6FcЙW6ew6,8ãB~&7s,5UaZ&g^#b@мc1nVi۱55cY?dH"BeD `f`+)HzcΚo7љvy e{Fv?]kZj\ C_8Ϟ}M^A3UKi&pHL'x&E9"NW. EKtRAZ@pkIfG4&lp-b IX+e._{ԘXSk'i̼uu_h@5$}5ЂOvxx-V1raS=wxsD-qLŬ^˃ܧ^CTgV#2djsڧs G:ub4& !jWiE"F>o}Kkm=ROcuZ @z==EY}O3qH{S-r,=+t:%\늹wcw`q-I4nS ;e@c 1fTM&$?@꬟N FkzrK'l8 K>aZTDh}GSBTj,C#SN =C׹ޝ" dOY/$fJ\7 +3JiU%c1c Fp܄y[ E6`mpzuҐn=?I_ˈ.h$mɁqvqcQF Gwy{ ʒԷ4n1<`E"2+;%|?}頝^b^9qu侷 IA~v:69 3j= as\8%`Sjޕ㨠L*!ԃ FkC|tnQ1Fx{X16 D= E&'ȹL}G&}z'mta͘:`9ϵ>^ $aQix*fhA{#=C:V%C[Lˣ"i^̆yAbÆГq0tnu[`KA=Ůmi]aہ5NCAGʰ:#J :fZָiRz熏d| {vvɃAJdneZID|庨Eոx4q龍[7k6l ,㜳hU0їG.pp9w$T}߸={?o2]6/2 yv mIn$b>vWcU-D ϡtmp PS!jtUE" ?Qb"9rX|8GTv`iؐBCoɖi ̏c}a 9ҠH!cL_,>ٶhZD\^ ᅑek>W&6MCɐkjm\7IJ^&Iݙhh&eJ4HǗe0H> e{b@V9Nmiwk!;eDzHOW.q*ҮUE*xY2F_6m+A(2$@S.j &zoS`n ɿV؜'z5"Y=Ilo Sc`U_1O.WH@ ޘX3EGI˸ۗ`$vn=Xa4@]Cr^է*2%R@lm!?P=r[iCU*nԯ傄J%oڐNξRt靑.,[$r{p"˺`ѐvqW_() [L C|'%h.P8Ɣ0&]ח_ l(/m0``C$P<;8nHіS)b;1m?å4.) 'gS?iL (]1%1FҤ1 Y_lN>s ǨGQGPp)A@ SPjeF}ؔGh9vT9Ijp %G 4'o|0])2 {9^`17*ro}iSb'.", |۶ΜbyϧƏj7Q+Z%Y]HەI z7e:JjppZ%)~9b?r%*6u> 4bV,N0qc^us ?N[?xh#גtuHf};K@~N$/ߔV:-rejG0HeD*J(K#`*csʜxKsvfة)c&aa:j|v.Gcile2n\[vu}{sxUg-x)?Ky۱dЁ<;0yu]س2(J7(B 3bq[rIzlهH0_4e% 5/ Q-,빌Y'/Joh163@H#&289%[2ˈUUuZ,Bj̮PAM{) qʠ΁pj.&쇼r\Ů4N>n dc( Ʋ} E Q$ G*9y5~h^:l،*yPV]I¤xf_2EܰYNYF`Z:RG'S1*1YqN:W3jϨvJ(Z\&!O|a7q0:(p)R-8/wREfy:Dض5#wՆjәxNUo_F" rRˏ!G'>pƸ!1c#_P0~ob+}p4rF|F: DWC\*E !R7/程/c6C([C#ٿ944ANRчpkS D\Q iWB/a[.HѴlYC]mq;8Y4.}7Eyl$.ePN?pعD禉U8tQ,dѢ3/>ĝ{䊟*)}O/g@4J|OqF%Ӽy0]%tE$xKa' 0 F֟GVbUܯ+mͅlj\\FDWI#^dA9z$# pL۾V9oiֻ)=a9l&tUV*Gv e cŋL&\(%1;[)XoV mnQl=t*0.`v$zr燌&Ɵ+HepVR!uZ":dDƕwKN?L0xJsԂ}z/$6ػu mZnb(kfym3Dl$-:'(8㪁dL'42m2@OjDCzDBRJq$r;orq_+ ƚ_*#Wb,-=2xPX _<&NX?-KA̖S&}6tBȚ>HS< |n \$2Jy I6;eT!={eQA}2kQ-ݫ; Ӣ(/~7ǠWg.ɏ~ELfնf*x " Vg!ɷ?uf^Q id1Ҧ*X 6B79O,<"/~pQGUK]O^{:{~L6e\&ێt@qC+>RW'WeށPvلU/ (̯>-Ͱ ১}x~0[ܩf8gF'1gagoK<9,+چ a3RYiNIC=CO-'B"V/˿@)3-7V*Z%k;en1B̗?N\ۣ@'-'j kЎ7U$SL% !ظ С6E4ɃZs ?'xb:WJ'! &ے)[>!?7B,f8Ԩzjb>K^Ҙ).h3l 6oQg!?@PGyi,6,꺈Sf(AG?hSB/L4,J2 16gL zZSx$KAKn)Tp0tfG@pVkשCo SKWP~{ V'|Z;"D99B뿡)t@GE9M{`0,ٖ5mjjyqv̈W}yX!l33;7A!LD6ۉ\I\x) ruN0JqC=8tuc9ʀ&G*ʩ_w:dR좚6EoW=~xhq88?H#M&(G]] C530*8ش"_=kBq@c-s}F: ?X]ݨ FK%P/2EL0 nH;H_&>i. `壙BLXF>p/w9AQN{561S 35aCR~+g$` ON G@ٔA(QrUGye!7:҆@UnT'! lͫFD fόNOJG:JA&hzrc5<|ɸ[ժÌ_]Yb{v.H&W>Ss5'pJ4mZ`{MDXˉdAɮ:L-٩Pޥ-ޙԧLDԾBꁸ[5;#-D. ۚFu99\"-殞 ]-$ }>r=G?sKf|6nT1y"OHw3PC۟xǭ|'pZn'#S7;A奏\'zrrOz5۪gRtA8CGkEG`EZF+=4)-I-wE06Ӂp ֳ۪ILXnT,&h2-!V~4łPz?f= tVl bB!b+GM+ѳ0YFd/OFsI63yX JU``(/H_3yg}[A3m%_وp)笠)ͬ_.M]ӐBx-Co7Y04&I& D,3už)j&ĜƎ˨LG 5cӀ|#{s*EjI,UꃋrJιQWaS7yhV+ uɁX(>l.?;e ULQrgsdμ !D~F?.=QʧW ˜vXEf,q⚇v|S̯mZH q a8UqFo(k ubJ}r"貥4`Rϙ5\I0d[~@fP?NS5r1~E\"0/_h@\Iut!Iub%"q?wӑFDIw2}N3aZO!: #Z=|!vQնi,֍ɝש@iLJpt3fqeޗok I9N[z2@Gb㛆_payїj4'+j+ʫy)(8yP}ѵ)_E}cn¬iC%C7]B3ztYas,t$TY9kRN_(.w+]2pc$VhIzx^4τTȿEaů8g WQ*ae Q%d*[Ϻݠܸ5RU.=]5g|ɰZ>oZ wQE$luOp$:"=pVV%W9H&,_TI uܱ:[ k\ $7ЭlRa-V2v(02EXBb V2yHHtJ >l:/o7꽴N'k4Bo0tpB5U/N)*=O11+[.!H 5@"4;/gO Fa%f͔0M1 Eb6T~'SQ9 ~糷ª2c6  gS:ۧPz9X8xw ATQm Wa=&,kifT_W8QbD7]btu=@XEF /..G-d}pO6Z֣zoYJ\[:As+x2]j&EvZsyYzW޵soJQ;5E}h1Gt<72yaDXGHhfsUssJ"ڷ--Snnmj1/IQ6jJIuL5eҌiod|g~?݄FVQov^bz}əHIsB!%WwAZlDq5?@gk 9 ڸu}AMc_k`23u1#bo嚌E ,g} LUSv]†~V{3-2kaK\8J0in1VhHSrbТQ[6pś˶m=951߫6х򇺼|X;$N) ;v{4q{5毞Smгb {`bٰW)ӋRGT c W+}\r0 hm7fD0~"᭍S*S^˰K{A!E?vzʌ?${fFq]OP"k| mF; Z؉GAU; #LDh,}4B6og2<uB^pmh"mEZ\&uZ}po*639$6ockl:Pmkz"`7K^źzƷ\zYY">B ^V&_SPf>[q/YAvO4F/:E1ZV)(uՌ]5ẓ|dsx#$ux2/|e:?e-Cȯ܀PȩLHINigl*z] >6F{Zm9gPB;'ޝ& rw%%+%~N#eبEdPnVd*׿T?2 {D]ĥD{ _|W3&g{c?6Vς rgQ4 -`xh4 ` v˃&R MQ9NÍ5.Xnn~g+.&+!Qf󐈤yfzͩ&\TĩA _qT` ;BVB;xK4Q(bPxʄ:'={}WuAk>VN]}LqBAۘ;ŵJM@QdHBΐlHy;եoOG7,=<[E<)eszv=LTM}, 'ð,VlvZsVB"IXֽ.հ?)*Z,8n\^[áGlsj)Yׄu3P.>!u`s0HD%#S wCgM%/ |,W  YLέ w\n3(Z{c/~8Z&i|(G o`x|io(Vky t:\d{D wma5P2SYtytBd1Ӳ 槷eb}1}<< x[|=WG"PȢ20(dj TwӢ."t44*fVƚ 7g1<ö7T"kL3\X`Ѽm˒e3ѳz;ԓE1PέFUHh4ҷiXlk21hyYOb={o_Xk;`O\2.utwcKHU_✦@DdC)j?ҼN^(﨧0^i"-%Nȩ{aC=crǼO厹`83brlJ#n>TW%wroK#[$ycYd)~?mLJz(aý?6-~Lܧմݹ=a`<엧Va4M;q U=Tt+ Ԟ!s練x Q@z 8׸HeԷr˅BGTB̳L]bV']+}އߠu֬hE'c6:".!(J^XE rft7Ll0p#<Cau:r1xH p}CT -aF״:"`CUWY$utvYIӳkH52P)̴KEITHH{BO*wk,{{QQAZh#,KIoK ڌ߲9G,:&| h y't#Knd6^{ӆة6"yQ؊ClhSyXhxE1G :HOxEnqs8SiftKGѶ]rNJzj @cOfOngKD4);mdg֭\a :"%uB&NȎ-E5=G.sG)1 Fe,9pdyE[|0g_ \9 oPLt(v.( {)7[dY(K}N 08u*(}s_q=rh# ~?5 .RvZR @-5W-Lӣd$SrN TӀ/Z/| ')=W!Fw) Xö3IYvˮ]Ygbs^=Dfies^7sƯX@v -4~͑12j;{%Sw h.qlXJ]W`M2aiK4w<7$vw^La EʇEew^ĉ wiwL9t F: O#<;^ GB8Y>yۊ|6kcW1J/"w۽)v-w>8S7J^vRƫ@8$ #'g5CS@h%ḧ8z.G w $N G͑3oۀq42j"LCԳ). Ó|qM/u]I!m5993Ynᄍ#` EL*AH12LЕzn6P>ɞ;*ų(Uݽ[ykyK'cK+3{_IRM=$}]Dn^[,'jp 2d`j"&R^EUdq9mEm~($Uұc5cs佒J?ur/Y)Wk^K۔ NTFP"[ywj- 6]ׅk'cO1($iɗe6Z{ASp 5gX5#`ncp k"̠# (c99NisEEP„MhP>(=+{P@/H]eQ*~4v87 Ms0B6908-Cʽۻ5N(0P Wt_pr3r`RըUVF 8<.1&^xzX1bU`A q@W][ONGcщ#EbR/3<7rYdS J-1CwM@LĎݖg;g磆cA웧h@pB% ݨPɵV?Ԣ,6 Mq*'u.{CV^'ۧ :"`M EoQ%8Y4mpa~@1` NJf‚pGT侬b `7S1g:u ;(uTy Pߎ3͎HDu8z^Lӻdbz)!d+U1@ǃI >PlK pl &rcb×W5pV ܼ[<3'f0r ~K]7FƜ23_} "G1z0YYiA SB834}.).'mv/YS}P޾f#]S$i#-P_"Jd{h>tiH YQ8>sG],+8^ߣB4eو#ZoZ@ˁyp2GAi)ϭ| r80J̤RppێrLC Fi1!=ovAqy\bmG)$Dr>_OYv.zvl.+cMĈ:/z^y h8T:Th N?֡XW%=U vQaKHへ@Avh.{4jߥmu>ѣ5鿵Xǩg`s7}_"S ?Ar-4/IYG&'ԟKorFO #*a\$SZ>fO|ݿ\5b&w|Fϰ6X"!tE/fRזm6 zOtR쿷Ԣ^ *}R&nѫ{K6@W%NqSG hh mOvۆYOr6krVh@C񗔀"~ R8y ^,x=xuqXG6%{c&Ig7A<@ȱH= (: aWU'Ҙ&[%^== +I46\4d-`#a̔eU@)5mvHɢ2%Un(~.ΖH1>@xb@lp)s7 S*12SnҴ;4'? )r[qp/ Uc{%0P"CQ}@5Ȼ k#jVi,+;'HmVsL{a"dzq $gHWP lbVeyk>"|A:J6+^UF|C\e&J Pk!#'@ن4y2[,˙P͒  |jd]ԛbCz6;v8b4^([Ι-[مc ȆM*\'M)FgZ<[w~92M=G4_Z@#NTk#0G=|=͔,G\`JB%Ȯ޵Hw|b^Vr7:j[S]"m. ï7Ƃ\h3`P!xeEn٫ Uc ɼ;cPS0I U$b"Ӟ:t6fE=LV*HiEpv_߲G54Gf Fu@o4],3ٷ)^ݔ^k>uz.+ }] 5z'm#|ӗV ֚ȮQZc9 =>|t µS{ņOFJ7#-`%ً-j/lxJʖ1^T ly3Ię)mjdRӤ ^{[L'Љ] VqF9YÁM6;C w$)O7@s*1W Fg^W:h)+MWXBpIbvǍtPѨG 79jp8}"x[ 2~ tܺNiW%;zGzj-Dv[wyk Dހ3_e h6xMlwpɦ?nDضH}򆐞 .7X %0}!V|4AJha[NEK6sy:vYHD7 ,=zۧkV ` " a:)Q:/Œ`N2}M*#Ef.61 Vo?l7]_|cI>A) W Y{0wED;upTxQQƱ]ۤd1/ up6leQlnE?@(ؓ)tNJ~oȵҭ߹5h2XP3&elvouy΀odؾ7ˆ<#EkԉU dg}4to]a t/+hVyL('p "\qU1]n U6ЬEX(IQIy8m;Wc^)N̔ /xyI B :^I.=ՅcǴCW77#?ogoGU#Q6a=Ώ碛=#˓\ȆZ,>>&Ǿz&u7u#YAΆm$t'ɐ<.!<Gj ] 2b\Lf)#"[,wO:}d˺piXkC yHET_DMbv}5ձK݈&S4Y)ⒷE`!<)Y~;?:jER]u>U^UV&Rs-/7⿙Gac%owRЃW|Y6@=ւS0qq j摯?M^tW q׍u= Ѫ/[zU`6dhOsh?N8B}H!AxB(r) 5.»m# }Or?| 'ĠZd_/ x^ n49GK#q! HܦŴV\, QI9VE鴏Y-NHUɍ^i!t "j_e** #k%jLzEbYA V}-/.obVo]դ@Ų˷#v_LiNftER_L%OCRٲ2xJ '#`,ܠ;e|QF`0CHB^p|CrRA^7awrm!0#;9>]W-qֱ Dz @x?==okfd6KDWY5{8ucԿDȬ? 6"&X҃vNV׻n%bz}N<&2IEXrMI@CfEF4ED9*r[^辶E.Gx֩}?at<֔=Ьι5c93men3hFL:E;OV)Skfަ/4Y G a.ÕvF2Ggݣ]Xz9Cn?o&4īO8!_yg'_| /Cy!轳mfdK-0UP|sj9Z*ZnNn"_hhm d-YA,TC`֑_4$a̅OgZQ%.YσE5nьC鋧(1ļkϱ ]=EzK_ rV%( n_8XK6xVp%wv橻& Gb>+Xʺ x_ʧEٳ ۫vN m-Yy>-'(fwQ]:ف^ k?d^؁Ԛ%Ѵ:3BWr{N(vz@Y!2{V.Jew1|ٝ$@ӣ0UŝNHps܄"}La&ws7iP lp&*%|rS'*|ia|?ߜ% ǒhRDɔ.Ry8Xl)0 1?}VM]+Ζ ؀fdQG/qv$ K2w7琢3C" /hduK,=MTSD5I))ѕfH&U('FnFlO+zSa# -Ov㻻v?$oobyՏUL! y>ﮪ:{+Sn5O'QW-,.LCx׫gs2!8ws.@Ry/U% 9$]ȪmLzDriP=ݷd٩jl]KlSK+7Ha G Yij,fp6@/~)ݷ1!d2fcNĜSD,"j㎯AҠe58'~mt~@t, j? PԯCul/wRb6< 2pQxߪ.~n\fϡ|E0ۈd4Z"#83kM3 nàX~3jtȟ5R !sJuH"@Պ抍HSI} T/NT5_̄cqJX3*F,eCk⸒+b&ZjC"ij#%(@3"aV1RUȴ RΞXmUˮXs ..}b)U:>OO/q,eEvIhaxT5=ʱ:e[0t_m OX2LRJ9kЍVltüUR_qq1;|MBe L-m*d`I"ijZ smt43hvk 4"TbݵHN3Qdp@>Ip{[D\ş=3?B$z R;ȄGuÞAʳ+_`䒸7n8^4k RE8[NWi/-R<޽05o!2n7Df]3ߓ]bJU?abLA ڼ4)JC˃H&Q9NU 5ѳnGrR %#g䙏MtջHቍ_]^+Z IؚIRP[MfK=hKc :2+?vXtWn\C ]gqJSR2ޝe节 &T~~a T'5+z-YDRdhBܨ#ak7݀~0W݇d$y'`M@6GGy׷ՋШck3D^Uj h1`g$`A+q跡!]G@ZbE[p%CN:fn #k*fɹ@Q{" "t AMMŠ3킳m=- .6D սU+{6W}1Xr2 Z;Q#!;IY= X/5jDds9mԦh;T&mYq#S/ĽF STvj;A,`_;B@haFUrNE&4췤HN\5 PԢ?kuC \ GXYFYԌ̼Cm&t'8oG2Phʋb܈-w5K8oBXS*u7sEݞӟ{cf(-$]VG$Sx5zKv=iRu֞TR#'RtJ!]`tG9 t7]kِ APMxTv=_*SKvC%5P2 nP`Imuwz{Bu[":+Ztqp>1! ly+mHy2#%=2 '/o;42)ꪓ*fI s3kn&_LsNz#9Eht.ϿjQ&ZSa6F 5u H6;6Ak[u7xi㐾ONV:zfևz<jFL뭦lJŷ= F00.NL(Ȓ%}b~?ſv/}Elj68?u=Qvӟ j%?/^ @.0Ply9~+MyoDT $;_hcS>w*6LOI_oЗێƦf.#YzbseaXNP#UKЫn4 sQÊU= $*[NOZP`Fd.cĻ $bM-ѥdAgR4?-(Wɂ5ұ殾6=@#d=mC֑=7noېt{:ZmiF J(/N uޔDD_{c׍03VFtoK&xOO}um2M 18\I@%ℶ\Nz0) /acwRB8?Gc`'~yjF(p$7bO>N'vDqS;DwAΣ8ol nSns#p+PLvc^ôZӻ#! _fwN8G2TCIqw!@Bn]v(:7cu BR#?ylpxNu!gvy]#jc u>O[9>TkηoJ 3(l>>ӡg`'3ȀQ™OoPJ#t#3vbHQAmt"gܣƽ5u3d>`zLQPa-;*#g5"]On#VߵgPy34jA:ElOc.nuՖ7;ܿ+hQkl1,Yb 2SQEm0,8R>Bv%)ۯO,uB`*ѯtͩՐg9!2XS hPag;xtghJ@$X|߆~ &61A.,g)[Z>GGӽR}ga`>eH[ԳƼR^˛| UɛYIfNP0Z 1`37MAuG:bGLTu RڣÏO[]t {1G_8 \LguFXڠ\TM]ƌ5F%h%jIqYPrJq=`&Y58BmۮMǻ/ntoUĦDYuhe_2t>Ԕ"ASZlfetzWG׉s˵ƞ\J~f* [^`BMt YtdƹYk?:ѠP?LKN "6ڜ6 =ٙ.ܑ7Q%%v3¶KgVZHdZmWI}!읋ǨڀD<{ذ%9Rr385a:& 3fH=Hy^v1{  'MU5#sz@L<;W'E[gЖURmbG- pD(baE??.3 d=NI~{܉cTM3(IF[mr%Š6ٕٔM(E%9t@E/R:a:V)iˮmP{r{鰾2Cfz rkB*3_H=lTK4Qafa" *xg6(Vl2|7=U:g`6/P7(kC޻ГJjދCKɛC8/_2CIYZ3{$ D=Jo1fR eTuTzYiIeMk_E#HD %D"숷0eυb_[\FWħ}OzE`nv3qR,NYFbA޾N$A~i&4&뜢ܞ~rPH5 ^$CLEc i kcfkL;".h6wYߤ!v-FBZ3W6,oSJRv+ٜz /_CzFԌd M n"rx nr7˷BtiëE6pV[[.ۯ,۫;u[f])&ot(ѢA i79j~ʜ'پyIE&p@h]FpϜUWQfdK'0&fV1h كlo! Fi^8oHd&2f,)q[\Aq眈~qVS6˻Oo,q" sH~n" D $EZ m-."$RnC<>6專Ͽ~ucY-ՊMP3xq/.4W"AZg'zY@Qo3$a9Yt;KaJ;ɓ>eT ߙi Q>NnVN(|*|Ō7VWeɏқB@|yz+@KݍWC#u%෺֚Րzu)^Sh- ' cŭ{* i"qh1;bH*=o*tcJ^j"yC i(:}pãZ鲵YZgă%X}ݢP^+ťo63 vKA1lʼr@qYlSp% T:X'H1/QNX[QO+} 6y$- ~HCi"x<&U!GP؄YK_ %79z5d2&CKK/َ-FFf& 7]g,/]o@|k"?lB|ct9E\2& ϕ pnB]aPEnI.g}/ovYTj^OF fފhX=mEXmhx5[Ɇ!]ϕ@?0[j4@X`J?2ӡ9P=Ƽrp;o7jhX%"YPW"4xHf#"8wKaN&57rSHT͇s9Ѝ^廕rK0ST`ŽlL9LU-+UcNu<:L#LpȓaEC>לUTRdYɶquqEޣ]Tc,0]*wLbVpa$1sjLcՎu#Yi#bb/m% ¾aՓ7x)H.T9 KQqY攄B"l-ѹFS˴ !Lyyd0h/dymG{]TDxG GUM)cpIE8 )&? 碭ٱ+qSU0ݕaR&x,5 OM\O@eئB޸F],\LUƗ {]Mô(UR74$9plbAQq2zV6r$Y^GP*(j#glG\psE("!O ~BC: 3?ϩ[AB4ҧqp&]Rnl]pZ=yiGK8)@r;$4ϊ"2߃5 ښ~eI˨}9Pr]W{\jUVX2q*%3)Q -pa.8uU=GH!>:Nbf|.ۖx@XM7Ӻ&^=nIW`j3Tf4ꍌcٞwvA7?q-i`~EQyչʄC@G^i"]s.pI)@":RLJ)-NvYEkvZVI(f'm\ӂ ͽbE&蛱;u{d ]vX{OhJjUï0[b`{ec.r&Ȫa W6C5apM`0Ѕnך cw A=CHDH5U(J,iS#c1EPʓ:>igϏKSΑޢFlc?'&><D} cdÜ͝EE`z/d5W0nHæq*pf1 =͇TJQHA0YȪ|$xʒꆁ~"z.:ʴ mPw_X~xH<9LY4V_P Y9@GM(O(~K@قґ.")zA10+1L5А3~H /r8VBƖ:haa!T/;xw(K"zZ9Dיb(.|PF:W8*c>dl߂CWW}}a.iq4ό=qk]`݅@ȮDn2-wҳKS'K|s@, Z>G΍ \{>#(N|}?ζ~kjJd n'QxzP8^6594Tw{b1Kdr[еB~d轭Vxy-6=}?Kh@.]iTZlut'm0(1+݀ gz 獔 a>6RP@g˖ 슐RUAb|}'xkP3=i5ў _ * |CHgjSaW5*- C] iհG` Ow'rw pfү^ć {<ZgFuFsi3󔤜3(c_A=\J2kU݉u1\yPSXU8lob_']̒lվ ypnj/^n}i^|4*RݺqU\6. mfqW N9!Pe:|ƴlcp}4{Ŕeu:LdK)9j%~=4傉ҩӻF{;ufNW-<+4ud.qv⪬>\-6,2M0*,MLZMP7kd,|˸fCBT27;g[9#MU/%r#&cM\ߡֱw?tԎSXP9+`[ dE%z 9f:%P `f'KaonWV `$e.(#xQd >~0~#`m#fO12VtWs %ƛi M`k&635;, l3¿ytg9qp DSkH޵=WX 81ˤ8ob緑WA/n^C$desB+9̭'J-N+kbJ6K0{&-~|Ødjse4']Pk_}crFf񈪅;0("f .fSh h*⼉jZ[~.L4[>&'ۏpM_#(ۨ{/ BEzMW@jIU=:Vi?&桓'%^&EVXX :EQg7e`n"OgQeDJ Sn,widIe_Գ,"Z_/Oן3Az2Ma Ʌ۞|\Lu9hlbu{0vJ~)6  Lxs@}#NS^P6m1q>I,BXND2* 6% r޹7tz<{q{?Od&.3dFĤm2AfUy[JxYIY)IYT u%A8'y6#eivq@,!F{mj;..h#r_<&,8]ing'ŒMy)l`%;{c3! 3Eg8ڢhц@I#wŀ}g3s4(E%XhF;&T|UL `;zfoƚ_rϗEU4'̢olbtj;ga99ي`f-ŦWvmJ#2M]E 2=l,'p2@G*¦Yy<ljy\8l{r\Ned%yuh!]epø H}VG&1VoH<:/TًP3l#U3NcP`z_XAeRʬnZ2J9{8D 4%H VJCމ~@ Y@UK9q#B{\nB7 LuMW=/KI0BT!:0tZF݉%%AJ;fx fTJJX=hbaFG!q4X7,Ns|Q}+ BY\fΑLxr_(ao_|ȏq-?[J|,S;MsP,lM$o&ҷK~x΃ #վ+^`\===v9Ac`ZzL.t[܊yKQc!>ZT(ɓ[3/؟@%sIc@ tm'z^8vAńel1aG7!]R g{e=YHz,G9kӽ^>Tf$J %y.+RjԆ!L*H ٯX>}M7,T0~=%(SQx!a75ݩMu|ӆ$[zy+.u6ئ:ZC#9k2?Q C{ZpT4N)Ü,yFpOOH PAl/ XXo<.ujF;ɾ-y*PU&%_pG|x vAa{#)8S nUwh,]\PO',^:[= VoToiFf'0-9*L:7uَB[_?c/K b8wy3ozm [?{4J1_X/C[yxƵ= a)0߹ DDz#MA4AgL؀{(Glj5ۺ6[RFŽ3mx qZ3˄2G2h)ȧNHzSMnInEKFj#AdvQ/cvI+q7؂. g?TyGG- |t>ޚϩ̈́Z>t{vs_ek` P&~ r1hTт; c]@1(r4ǿ*(Nx|BG:L%\>*^KOgio&ַ&_8qW,jY&7$+I8NlGA *1k6r˩c<Zz$~Fb8EmRX{A%ݥ^h%"3O1?BE1g4Qzu)q7 neጁYTE(lQ^!}鉀Ioo9( 3Pd~Oh: q)֤&PBe1ٳ ~ŠJLJ`#9ޭPVg2Z!ʶs\) 8Lo+g{3 RB:គh-i/ +e!p}!|\$( Mۃ;`#td#n3 [w[2Ɓ5m!]T_% _X݇*7or51bY[L oY CP l!ug]4ѻVN;0JKhZ(G8oCOe&um/[\AnyOe6{Lv#oRf\6)$=^.GF ( Y鼷mbk]WiW%8qɵטf1bbSQZf{1$@MSz.EH73uKK 'na6"_*3Re$9QhC$9.|99[mxn5цsc9߬׎6`uf72)F7vHaڶ{fG5K?sހa3bDU°!B+O)0G(QE3g;.x2u!h2kuC5G"؜jփ֑DN|P.uZl F2n{P2JXMmὖd&M%9 c}&U0_G4kW:2I`M 8{NTA D'Ue"}'&aMmAS 54nxBYu56g~tѥ__X&GQ4A}}d_ 1HN*wi`чËuXy]e a4*u~.PgǧP|5w)2 tKm̠Je e>w. .`cLKHTִ>h`"ΓyF¼)w3/ĥ&xbꕏHy'r4l7Q뀔uޣzPR[@gfGD6و _woEZRR8Ƹ㼩m'{I2&=XMb{;Ox$Ω̒ᇄ;G쉲jR`mk&J;;|Ljk\L_kw N|x/L6Cp|6ozf^w$ hQ 8pQwVumQe<t%$6HR36{Y^@g&p\U*GoMӀl 9q\Vĸ0 Ma#@l/·^1֐+wޔYː^ y|]fĺwMbeX]=q'BP|LĨ[Фh+"ذM^ u)2 WH.yoOEӃ;fhzvSԳN܏Gd5T/SOE;WX%Tg!>d~Ej ٿ eZG-G$/xWP{3 Ii +Jm![)0]1?h3ucUnîݬ+ߵ{N\f7twJ;z%K G=RTE)#M%1s2κAj\N4?L=Na@gHL3IrM5Yyo؝f}Xu97(rk]>_Tu,~|vf3"jyۚb!B!4B G50-rS!/@N!Ou=|ϯ}>(Pa\pHv{,dZ߀s+)fzPD|PwWLw=1{~edl};@ZJ*#~U/}pLH1>\$:C]&Q,V5{r-⟔}Q]Ltg wU[(#[kT,jq> -͉лw9:-!7C]!7ZΔKx[fkS u7_̖HO bKfz*;HF<Tɵ#9B"jŨ<[ `M;-8x_]wklh-ORn!geufo m V~px=U"(gT[Ph˦<[BLk9RMZƟ*1{ɪх^D 1T*wnmLƥH96g0cg³&Ѕ!Qę jڱ 6kmꕗ"Fc6|E_ ߪ٣9J,RԔkNf׃]S:=B{Wsjt>rwfpnr1TxC-}<\4T١U? ۅ|l[>ԸO&倊zپκzxT+{Qԯ:#$1ϻ~DMWYh8:A;&ICV;ZZX6njP){#" ]'Z[:fDnd-ZVVQ};lŹJqc~+?g !:{n$DǗ >sB8HaMd~q䦶+zTx`!']* h+ !MC`47kj!ᇒ8<G^?&eyDm(/^' 3tQzwux!*=#MD0Ӱ N{=&?Toy΍(׻mc<#O4so&EO0'ȥ-L6 ! m b2j9H|g0V3|wKRZĴ=\7y XW |67X)5O[5L%vhبx0vd5֤qgXnIG9ߑݿq 8C趀 ex4yY!GUp)hes_v[oyekEuNAjt^1f ¸̞o3)=*~~ubzl[[SW})協+|*MɍCAH_;Y QܝI<^N,2$چ^`= "Z9o#W7i(v|ݭ]}$3JtDrB|Ok)C]eu)\ ZJjqe *ׂV/cуMZ\֠EG}&7^|#qY7`ѫ^E(ugPgԯc%LO}7 妫ҡ@Rj0 кZ2aù7KV@gZ}Xӓ hLP'xBklmǷNO~:l| pE8D~@"<ΪQԃ$smj7gsūR+-\#V!& ۱Fz[iZk_p/ ā2V4WAƕV;#w.vv&`bi5/Yv~b/(f쵥dV- }}p4K|m]f =Fޟo3 fQg$7XWGX֌E )6ܦD5](+,vWwXbwJ< @)YEȉx.)v|c |ьZzؖT+*t' j+@WwwzNt\wYk.;o_*uRJ2 Se5Jq䓗 $;F8T8<)x3~,1M}('Qz7Л%xx0篗Ld'(Fv-F3ګZ'Ŀ.;z\T7"azD?rZS((X:uS "{j AgQʘ]P84'x"*BА8D7$/981Րk&9L$><"U# ͏ovo#Ѳ2#n:p-uovTr] 5;VPTvp0\""Q *00ڀ=F|aS(4AjH*kWN;!&^zӽvwbе[w-N \aAD*ts62F>?h!1KIkw[8H) Nb|QO_;c31řZei{akDCX\LexkXHD\ VLnb#WgE[D&ؔZ3J30;קb 'pAcGU=F­HeU%(q{H HzLBs/!Pdl/tݥy6h6"frhp9J}˾Va* \.C+֔>K *<9B8Ҷ,o WHmF$IRjMgwY{#!ES%OP t^ )L YL+)GnqvkvnHe|mG)|x*Eb,({9t '{h[Z&mB@r*cJ[Jh`q%^=h;Gx19:n @=6>8\ŔgO唬c(p*}y^-w=»Ӄ c2zfY4zԽW5?C CJ@h䬪IҺtk?{,K=5ݫp6 JkJ[Ԟ0^ZwOZC~6)\b|V,293KSV9KZY,n[@*j,s4SWUm_^pb ~җJA5*#i|]CӪc7##o͎.Iqlh.hYoLO&{E;e 7Yp&Р SH|63קO_DȔz/M|h8?a^tuK Ñ:>&w>yF8!%qSb;w!A vPWQ?P_T ad0xyk^g%vhd—ׂKaӪFdj~7Mm M>kLw'"#*Fj\ gZ_E0Q)6^0@CGCw 6ucTSȘZ5Z0Zb%uSX8pl2T>{DC>ݱEtI9ȶrӥf#Db񕫲K˜?_ȕ%J$̊PzhۧM:vw-/& <FRMi`Y ; `S5KHv4nȢUk{֠ײH _=e"<'"?0'w+m1=\TR?%"Cs=^>9~{wn ߾YaּW8N̋q"*>pr^vfҌp>/G4@Ym24}!F{5?6yG"+n[]LxgloWR O/C^ځhY(n@f"I/JV%ǒ孙E5HVNdOsnÕ}?cNɟcz -@5%y8Γ]]F. ARTӞ)[BS1+]Io LUūv-󗣈br7H|-('Ü7.݀$^G܅Ӿ̚GML]+%Q^ˇ/]|{/a=D :+~*`cڑ7Ueڏxy@1#O.)%qH0/p]ۙgsEbxG}rυ@u $,@2&opxl>?"daaFat,a0]1oZSV(xE3MYH>4VG`2\*gL#U^lʧE )Gw\}~tMZVt.\Vg[@Zb0?P.cSr^yRjJZ0Y< |z 010}q1ç.wKOPm94̩(v˧a1ܫnxDbҾLտeQQۆ]q 3YZ5x7Ef2K{s),BϦ#CtbVǿm@{Duձ@<3uXTtRN"_<ܕH@h OMzړhW#Xv%?YtC$ ذƅ8Mb#L*ҭm^= vZ ᎇ dIކdJ@7O@g_(`7/o[g:v=}D*]!>yHbնp7TqfWEMpd)`F;W#.oX͢v68B( E(UL't#=sW^;Xa, 놤O)alNQW]NyB#&D#/9`–GS u0:e‹Z,8 uT֐g4 ,ޭ.: *Xm0m5_Բ$0cuHg ӿ_*6ЏiZtY;a5`y9 C5ml"edwCbiMUOn$9֤敥(5 2x*jZLt$@ALJ'FRu$XX(l z?Շ} _߸ ͐W=!k&^mс}g0bc\BY%bq0!}(']i[!(GlκewTy,QLm؛8#HuZ d:FpJR_xqx,!K/[8Wq<~E-N\[`YH[<=UØ@Y/%ϟ3]J#h 0W~ASkvU5c`NZM#&9Ěu5(9mGvʉi@~ճ*gJa۴M_^kGD͠`J.!IIkW\WְLAv=34?W=)$C-c69 TJ"R g 8 Q5.̑X&0ɅTNza{+g| DQ(*Lpd(: uJ1RpnU WO&wuEޡ-=D8j>%o@q6+0+@iPL=w5z?osóh剃c.' x ?:gp[wd?N6,=aǼ[",{L牴#EAޗYGc_4A& @ bZWՀzz53un"Sө~.p2V&f~n~Nc+TXeZr|*٤} e _-G"=oUB!Vu%WOkMJcY ­A8yNQ[ƪY繹w鶲;VqúK\9\}xDӐ.SS3ԷAԓݷbg x'dph` xEwֹntېb"$!/v%߽6;75Xɧ.ml]抖aՐfD?OkG?ӧ&$~cOCjHZnldE3Tx9)sdiPszQ 65P@o%g;dj{=m[^e_mMl,"[INB*O\&کK "PJ<; {VA*EY" g}E_qFqNfA=An>*?[NAk*~ް:%-0Fűcb؉΃3*{gaL%FkY$ѣU/25scE1N.Gf40}\۶7d9dO(LDz$p$vKÌ6ގ]{ ,dOekTy$dDO_/"tlsP]|<%-[^kNhݺW{jƧOu ^EN lQfrI$YB *{~ZNspIB3UtjJZ\UCI& oA.]NУ zZʎ tuM9 thڬĬjtMk3)~1@lkVMAU)ՙv4T;ƻP98C򑈙1s #;KQ[%DjvةTAFȑlOxrq忛{e)upAٚ) =DܾEyJT[3LF [|h0]ܬ7nT4G@bIB/պGy`Ź޺﮷#ֹ]&5Sv]Am0nP8&@W5w%S|&%b6.gmɸ+ȒIYf'dHR]B^(>;V$G͖pd/eZД.З_A([yIo BҘwDkyT΄ .sgyC6\"[Nͮd \UgJM!\Asw|D5\㽀InF. ="K@I΋PbrLPYʑv=CV&rǐT)RX.'9xr#Ew.BzZ 2|a wE1%Ga soDsM#tWXzP%TDBsQ'z)_F>,Qbackc[1_K^#sqTT< ׂmj9ۊH) gk? W9 &θ$ts>nhixkS<1dh4w|g#I !Vq,4D^@yXy\[ -Ž?&N?Dqg*k^+4m6yX t.-'g˜dZ;c uԔN[3djI?*?B|u+o{ԡ@ԟ$,a؝27~MOb $qZaȨzT&(}=vZĢ^ig<[EaXHb>Ȣ5c'/j9lVwgLU7v9B܀dl>|/)2Ʊ nŝ<7Q(Ia%h&:֎9Eko0$TXswkC5Z}jIfI.7}Ƿ@DΓ~ jd:=w@|>بLxu0騿g o DA~g8[>L*.~h?/qzZ#RQ"cI97uhDm}-si7 sAޢ^tOV-5Uܥ_IQA/L? ys2- nL~f0@8fNH*cAJSWb╂>6\ä“)gn/cP_rcNbg;Kk=]Nc(Sw"(ҨSfUFVES)@KH0P+ok?7cump$pq (>%rD2D!|* )t!d Р)q ZenF YNzrS|{PWQl[ic\-w _C qB0٘lj}6]#aNlcHn=HHzUGڍ:d8|h0+llgANtx`LmI`烖Oe6kΈ3Yе 3JRjuJn@ ~]'Z嬏]TbQXզ32u ;;8L)^F\d2鑈ZIگ\ÃAgC8;FzN02=\2X'bi'jL[:f3,*\y^nAl峛0{oxH@ gg>mݲ b4=B4(6up~iK{ 8>[?ݔfDw)yoKb4;kZʛMy7-kcCѭJe:5βaR  F+t8q౞ tˊVyU~JkO \,ldd [Jo{'z5:]ǍD𚾶Rbi.iOT4$]lGɚmW<.*A ^Dg'3_Z*Gg+ ҥL(cBM:G'N >5="ЦLL"JGضh3^g:ˊ'8$H̤G،mab0{֐xw(aoy+"|11T,V⩾V@W%:;ͤRsу"oc)-iܴ:oRWpF |4cy["5n-ڼS讔'yvPϓ:̄J5KM%:U%Xy+3kh_(pwIJ:w-~R`h7.ݘcs+{<-QӊZ\I=^MXh W](Kxr/96$dӋKB:wpfLŧ[5Q  ֹ+#h1YRB\=F&v:$Ck>J]#օL$r=T~QR΋/ڡJM@eB)YNY!;QǣtﴆnX)5E p8 xob665koWjKtTL/s#?>BIzq~fpJ5 .C{<ء0hP;eΏmIo>`#g8:T'xDX}g:FS3HBi AUh!v)G$.-UV,ODI>C'4JّgX,\g2Gk[M޿};I'.ϛM`[O*9~S!T^F/nmy,hcY2Š-[ Aʊ*htMsRq5iagrsOLch|KnqJ`F?&j֟ͅF 5v-% TluVREoHDUY˜kX}-!fVݗ2JL)rJHiNSBJ?)fЌ1O1Cd|s40m3[jBycXy-Yvc03e!m!_]8Zٙ S">:{M_&R?^EWWEJ07M N& dŏ? @5D_ ;qnDzݤ'9mjjO2bw"ܵRxȯ65{k\ؓZ-atԘF'0 8h}_}xˠWo9N7h5,>Mۀ*WW>*F0hmwpTnڎ*Q{nť>"μ4tt.gb9L@gMT%kb-lL>~g:W.E NOs<]sҥC:wWIA0OTF04]`d g],4|$vl%ZH}B)FC20hjI W(mEm ]hn.p͸v5 Ee_#n:Bam,/Ʀ9Vbm dt @p|u-*LWag{A{gA:si|Sr L6ۻSwaҕ EMϸL6i9_@R|ama։7e; dc~ĘMux6`3usAٲXksH'*7j$,N RLa^jN˼X8?T?QS,fCע2hZ&HRZCT cP?+  D)Z Lhm^q<]`B"p(>!sԲ:R>LaXbL9S|VbWiEpB]xEɭ(Nb4͈o1;Z2i{HDM)Oh/LDUNQ,9X|k!+gq́_$ 2~OnD<ۭٜCM!L_dbҙVI֛ؒpF&xSVL *'~zsTDh ".r|C 2ś}9$IAIY/k@a< ~r=m.m`TBLQdrńYT"O[=;W ʒVA|0B…B2;fSLoäA3qZ1=d?#HgyѬɒl Hju*h'"^KIKO(;*hp <ղl8Kj67zl)#ko+^[/غ1H_3ۊsW4 ;I^UA<c& Uj|~PӘT*Wbu.e֙}HXy<ݩ}$S G)=yWUqE 73XW?5›޿E '#7rN(Q| iXI-ƼpD&y%++gٍ+(Rhxfk\"Re{kQ!'P̋cq&}/a߲$b 'B `/vA\a&D, Enqj.2`RQcsӥ6^k BAl<"CpTzEq&v2l_&fwĴX)rt@xnrB V{Loz?YxM+W[8Gaب[δDE&HŎr] >γ&QW-ԣk|{,8ևh+HM/]n}I99[J3v50N_*h h wGJЄY5WmJJml6U3 PLҊN"'fq MN SQ)мW=lᜏ=rA-}ؑEi ,BWY8_bJ׻Miūt/ޡx5;g6`|ǐN̾OŅr??M?TOXlgpC1"gw*sǞ-s, 4;XLlt/`]3" P‰SrN 3,Éa E䳈z*%jyŭ3`T)OS\"1]'V.X k7e'E1ڳH\'#n1=I@0RNV%^JSw/'na7I M.As/FyS-nh^m\Zydr -WVվQ8C,$Vwy.LiP|lBcīT,i *c'[e`v)(tS]X7mqЗG˗̤بmcׄN--)KAogQ`zN! {%ܠ]ZvS|ǿj/z[ G)d_ݍvƷJ -^A<)e΂EF5G 8@i3P].j58VmÇTӱ΂gMWb܇ۆgSHfӽvLf8*zEh\ ,O.2FD[<q'xƨcQ$*Գ3,#&JpbUpba_kT KUʬtxQHE?> !kz-·Xrg^t-6pT]-s,DijJ#` Rq}Gɗw$G_1!9xd'FRbVY_Wn\ '6q+a]Y2@r!l8tŚPy̹l4E/c|]sNAʡpiOT\:s 72(qi3ey]|&fG˰R̿m=(Nd?6FDZJƣOFXn/s'2Ӝit{S^e m.Ҁ>]<bs$=$_E? lK]Gl0-np; ( 1RR8\rGvw{qL{1 3u>O"wT0 S7#7{Pu0E99M2?=\#rHm&r^aB)u$֟3_ڈNR_2e͌I`F &@" \ഺOo+؂@2 'm@k&/n"/Q ai<<Opt};a. Fxbً'/U+~>=yM7V3EU@\p^$fȴcr~Xl&f^M]/]3#GG]hZ# t%{& j2Jϩ(]C^"%j9% Ő4aG仏 0㱟$DdiAx7m󠱕k8 Q!e?HqaFFJ(ŨM?"DR>0^砪ks :%['zEgx4w|ћ'6AZD:2BY oo3 yZE܅VOoGdcCxJ"u?{/7HkmqupO`fLpATn2O iqxCàw rZW>Gnb;HU:V=!1ڄ{D̠HhcmGg_(ĕf( l@Q2'#p)z="0bz5$%Gjeqa'?Ջjر,Dc߼Kq'vjGh ©K`$QqP2^v1dK[Y;e_X3E>Fx{^uX>v]>4,Fori $EiРA[&<O=?r}To_Kԯu%.KG>J;2SFN,/T)&l!@.:u;w]QO-"#.Y7s.3pg͐:]l64}_W)LSPBN1YM /J eG-f+2 ~Lp%.M[28C'M7BzDF‘hYYrϳ7!JQ[j lܷȒ`@pVGyPQ7S~&AV5F<41è#bbP f*s&z͓$SWAaP_c`"G-J䲖 J"IuÌo7ZCI1jW&EdV:=}tGJ:w @s6ȽcGS:(O3u%T)f'ʙOfI(yـm,4Ri iT3竱w͡%Q8_v2j__ _:*V|nwBBar $OcROȟL7Xd3 T2x􉴨2c(&"sQ!w^f{. *Cw&T?͝(,[[\I,s+Z+_]a3VB) 5ykq,"f<8tzT>}( chpxkP5l{('BLKuv%hu>S=c=hiV/;keu9jqo*i'/_D- M;=שOG /y]O78&nvZI8-RWtuh_mr4d~myB/`_}%~IOڛg-l)mܢWDſ-gtkqa]a+dcQJ !CUpij]?y3I2):{ ZMh΂Or;,yͽBH3,|ovFpPzsӓwfrTAPh0gOJoSڑ EbU2‡:^H?@7թS*4iM8~tIJR7t"(Eza:IB@gR~fgRm'_ϻaf(&ghm'P !3eHwùwqv%Ax$@f* Ҩomʵ j4W! 6_kŅk]HJ|9Jz{Kt%sͫ9CND *byv}Ud?\fL#yDQYt hb ɮY.9a"u+(q?~$ )Z> c+}&=kp O*:2y8c69O2'Ӕ)R麒l$z:? 1T/|Z@^-+˴ķARF7pw}yq [1D0ƳCVyf WEu<>坪$q7K<–mU]zZ )Dɷhz9KiNsLGnhP1 ߹N!W58:MGJ,= rPhD wJ}׆&Z=[[K|r`{eNtܸ}zyg6.N $2Opsח%AZRF A2j@{ކGK1h'MIV+,-c+zxu`FRhlDX tr\ݫ\HݯKuܠ<OO[ѧU> oUf¢r|NR!TΏFObyG<4?ǀU %bc*WA F’־%tm6X>Ҥ(a(aIK(|Ao~^B9?wN| OT"13f5Pa#Wh>ki(n%9'sԗ[ |2ց 4Dla}~#?tQ +XRXBX<+`P9PD9A]r0mCc%bcCs4q0OnD߈ iZǴ(ET!R|*SW%NLՍZDB|O3pMnZ|:PaP9=A"T+-?@l4 }1&palkyT}JNc6ׅM,4N@$[d(9Q,S|OEu'j5l0zg @ k(;,0lLFFHPHo;楠T%*M$m쮣} }42q,lX*YDĆeBN_(1qWNR@^R}NB*Mv Gؠhn`aJeZ=$Y]._a~ $pc+:Lh yih "f;(( r/H7cG՝&%oetÇ,PЌtg8=NNo׈eAwQ0A\mmm/+j_qkc__Eм@37HjL|D>Xk5ubȥK&KeE')2أ3)‘ӆ\k5'}$B]x8&{}"fn>¼g4 ^AжZ 5Wtmӿ'LA9QmŜ S?7H@I@jsZØUeN/EZXC;hAe[ɱ ?{ߎ HbMnh,pi,akԱ624T4vԋYWme̥9qI!:yX40?XZ蓳6v_m |JnV*xY4#7Mv+ZK*8&5+s\:zاy\ئ e_Z鷇HUe3P5rUv T8)s±1 ι̘mC2bЧj,`(Ş'Z3Lt(]OIJGu[C.i,*J'dtd,ېaQڔ=[ҫ:{mb~3jf {#0A9 [(7# 'LTIM(M0iT`!zcjfkc!O h.Q ar~{RT=MBAa3ywDq aʫ6TY[s$ɄvWA\!Zq7J 0,wk`AbZ!B!NN4z]-*kB1x5K *r<0fIriTnc2(4*FLh|:ZrI@</zY `I#g?wZ=:619l%2fY6[-|6qРS`Rkaq~1 قO##Ǯ1D9:ys%}B"UvA~]Q3p~4Ie $:xVIPTect?OfQ&IjYtP_\ISb*۾qcMH#\Jhd|-s˜kzf$Brqkn^,O5y u~@a(cJ;~Jp"SECXrvҫre\_gl4st߲y*Fnwޜp༯dp"pb]`:i带{&xɊT;'%Po ǑWoCy=}ЧݩP8!D=ru!Μ)O ҵWem~nBw<ķ<<e ((|N: ̊lMm56%?lRE2 ,G)`**'yߘ 8ѓpvg; dJYԝ<[}dweg}%Dnz^ʦA3w8PsWKЧgԆd*ʶ(ϗrȬJk: ѿ10Z} \$6XߏADt4+Qb<+L$zpAHԤ&tX5%-v2RTp*/Elч} ov鲀F~ ^3?mYl/L_iЧKGo~@Z-/-3W)ӟȂ|lv#E:x@~({^3SL|,|pj<yS;o_jѦ}x")ClC5Ƚ0Q18SZkMף2/v ׶OD%Yk|b+b'IJ}iʢcvZ/B"hYm |jnCw, QoUIz`uר?}anƯַC,|P#ҳRE,ꕺ$')9EKURx'8-[pÆ_"h@j[t&jf0Yw*V(ӳ.P4ۘho9b}dgWTb4>qnxU\je ޸[T᪰ݾ.~]Ŋx=4=nWbQ[ZV (s"l),xDLF-8Ih8ߑ!?ߵ:uPikMʀ>ʙZx$3hlO(VشEljDTpj[mb*%ГMT0BFY8jG:?3KCmf43Ԭ#|0La4@yE:<5*\1*Wa!OKq0>Ny檃Xz)S0V˪FQ?O_2E+ ̋jȔ0wu:Hd"4A\mČ.*qhCߡBɅmNhj"qCb<7 0Xclܲ:@x>тw&;L X>ܡP7'>!(gy)"ݪ_sϏodf"b QCE FƚnNﭧ߻"y@t\se[`it{+imiĊ4;OZ{ߟȿ^lj6 O ~TĄÍrkǖ hu]\*!)3RJ@p[?Mٺ ʬƣ( NݞOܻmFqkћyQyUh' u<y]BmeGtM? 9 _0|0k5؅huf\In @2| = ֽ~;y7B JS7 j An^0bEe2QZS/!κΗt i}?Dϱ >ۉ[Hb,j=qMd*MvP ݥi7D|xѾ̰ @<\ t&O= f ,=HFCDʹzCͶ`A l<{m:SęSYp]|l iSӪQaFn փ]qy] 0c/San >DVӅâ:Ű%`LPM['>l똙 &x^Ack>]-mQ}O9@M4HD(3IVU.ɋ.l80] [~ 71סP>{oYSӨZF嶰 '9"nXac,((3V玿~%ZGuħ1Z`aVnFn홊X1쪎C["qQNS2e2u )`''q"vaQ"/|s&~ ^ B([վ>0,Ɏ9qOZ+&4LK2h0w)N{TNɁ;&]H.EGR>I\>cW󥲷uX-0lsu% pOxFiYYnnc(PYRܢ{L?x0Ƀ6 [P!pmB:ʉ#|x3Z1k Ds=ͩ<,_gI%xdEHқ3nkso9\n`)Є3`pȣ$p"EzHq S< VN/aj ;4w3l|#>u 8g`4p|{o M  ;pǻyE6NuҞphe/^ j@S3.8jRp &2&QO;=M-a)9 ])hãz1*L7REKcMŜE0蔂_n!R:e<:ZJ#V|غjGU*$7Kxaţ:-(FuP ,jCQr2] W^<[2Zzaٌ`Q_ ?׆7Z )&@kf:qKQLL?Ć,_k; bdQ[yx'u.}D_t![v r Eo>î)L긛AV3)?&~:v gkAD.{dn^h@XS|}J;E(LW%wu坖 ZI ]F#,zL"n};G0@ܑ }m+br}"p*a,B7yz~E--Yo)Ug^Eߐ(NC Bzy')EoGI֖ V;ƨl6,W]IgSpĽf9^`(, [`5?gx;Lpo{3^ ]c% KcA*/#㥍ڽ9.̜o|}4]:RT0^͆),i"nO+*\p@Qn#2wkJ7l3O"$UuX_$D~Ed*hOםXp5ҕh% Ik*P>馺I H xē.vL> 5t%Z`Ld3_ HJbxÇK)N5ϖ L~z_E&8Z%o<0Hn K}俈 LB;,#I@ v!LTLoy%0XYlsܹKeC?畋mɕt+ runчB\ WglD[wJI5{K˕ի^IrMFSMy0,ױX3%ʼnCEE?+!\[،cCqiZX+?Ϝ}cמOrVEFa+<TR?fn#nY$x*&0jЩͅU:Vt*l A7.1r8f 96[[>)ՅhOwiWɡxֵ&gw !XKрo{_)"p5—?Աb_]:E~ߣ0wE[5Za5hMI%R5zSpˆ"Қ4OHSmjP\P*7;KY ?b:FTWYDPE q=-(ۼ(ټk&h͠O@\$aZk;YHb4f> 0D(ZƤ>F?suad)'[ًbzO}<~|c~D,𼸾CvtJ;SK,\AXn7aBc 9ҾUdAa(Z "b%A<G̙tmp åf7l0ILr?$&mО,7D(/TP[/ںY/odQløb1"p{&Ҷq^#՜ 4]0z *慥&h*tisYZ lF/C^l7D>]1:),+jvpFCDh=\eOoW!X"hk@~PPT4鼬Nf4y&$XXb]vAiwQhM&ij9@`za5g4X2pޏ@U˂,rz_oS^Pl'$ɯ8(Vyh@5WXg.ҳCe G扽4vj̺;,(z;sb6kGa _vJpSq2iA[a96&m]"^M_/vV3<'"ˁuPĈhJ‰mB*+x;v4jwk{.9j[_T[HuXm/~s"r&.Aqb U;Ӯ˗Nԃ]]3 ђ5UfCg1aBBOޮ~?hlg54[A9t:|2ΟG<qh&s p>}*EqHٻ$|!WnkETƃ4ةx-)lMA8SY0'&- {̋ȻѨ9Ё"Sh?P>d>7h<%;`t7gIg78n#sv /78/ /Jb!Uw{Q<[BvE[} n=%燉{,sA$wk a갡`%5@6%gbG#k y/No}U9T/RRKkQT ~ԇc*BѪܽt ٚNpǚ耽*y@]1ceyӘ3̈y Y^܊/zNe2 ڲ?w;r"JpM۞|'8 wbAZ> s@)c09Ȁ*A3%Qt鞌h}B"AmOB9WuFQ:5frh@#/oWe~k%pqf-)&ǢHb5I3!ƣ5jP[4b8^mMV7-ۭUa4b*@ث^B <;ttVG6T;Ƿ &^[cWW@#l1U2-tX__VSFk_l$ПxAJ>Ȇ/HC`T8kX:``iqEĪޜ/Ѝلe׽)ҝ1-@*/ L.bgp-f&:2uӓe1&c`kٮyҽ<{sEa+ Cpv8W̗x&vܼH\:H.q> MXӥdFVʎdHlo߹M QΰˡȯXi~XTFf=t,ҮO=h<ܠ166dvSvQYeH|Hb1bͰ’{PzSrp8SI2 Pk g:uVE੟\/^Xr|rwx ߗVQOAr mw`q ׫[:Gp~ghW-{GB'%a DçjWgVf?,*+jPIENnV]>Wcˡh-dSmlˎ ˄ks]Kj^=EԧJn뒤XOxRPuEGU[]Nkh+3hؘ[Kd,ci?-YRJͿ@{A@^:FlwVNJ{%Ɂz S=t\AS0c1@%!6,5v@z}BK &"`fn8&mߚ&J'Y!6Sg)lGHQ][-xr2 scSxw,:x1P;xIl`ފÛj +h7a꡸#Z>dCڮ5T!?P=Q#0ސy?dGt[ChB Н6o:ݾBBt$KVxWdu#gׁ*шLb:Gk7|,DgMo5L + 67ܽ(9Vyr}U$bxhae6'_igy7#J&z)ogˌYe]r7xm4{ ۃ# ބOIӲRNHW7!uꢕ i yZ3 |NzJa#Y#D%_wKp%{4G'{%D OrrSXhwMN<ń U{:X4c|'p ml[E jV[ӿ#;0?8 $GN~~B1AO>#o!Fyʅ/Ϲ '8=*^ Nw)3*`-y6sGB$KۓE'$"n!ܣn:X Xֻ!JP 0^zq x/P}N!]Ͽ \@?^]/6\CG<˭%s'_BDH%xV6lcaEtNPo1wmu =>4\xPZm4F #1u;t2dUSP}#)vx;|YOiLK  F#mU|F!UTΐoϞVNZkq1 n {ꝾU lMQ%$EB]#K2EfI9~)fq./8~Z<`X& Q-f=A9`B8vR$þ| +>kSTЁC6Ϥ'XٯcկO ?c!h`dekēϓS@ey d/"8/Vihd kcѵA5g.fTԞ\YAbedVX* ?+2=mwM hEF2Z`GLVZ)WdyPyDݱC^]t$_]&f{]K]UcN][orS dlQ ^81CuYmp~ ȣۨbؓ $l7軔0 KFc_bTM"/uiD"DU;$ IFbT.kOhA3t8w:S9GUzC\;eVs?&}\lt g&om.(Kp?e ܜѲf8 ,^ OjG~C,ŲI>e(&T"F,qlB;LJh8dt]*Eچ*/G\GX;w:jح(V [c3˾mWCgQG@bay'>NVWզ繨V:"MRdT[+`b53c 9AQab-Q>cd>EgOqH ;XlX|ŝEMR.R} i3u{oY}s&MΌF`im|oAy}KauXڐ=ĀϬІ*[?c\g`6$ٌŸ#ƽ+ЄOgՑrSK6)",B ٽ'"Rd&<-&*3pՃ%ͣ Qġ|Pœs?4IYaP⍲_9=DՓl U'| T/\&2Md.D,gW/ǽϣ|4#e.AB%Wu25deW]贅tv2vS,at"t=?TJC$wQa~n]@h.k^l Fi>ݫSj+.dv~]uiFկsYu?a>w-æR$+p|67 P_Z2vk8aAIE8:Ϫ4#e2{+Np6Jm*Q޾ rb!knexvV.2%+`4&?ԞרC5P)ꍵq} ߹>_ƛ%{\sP %ox[;wotpzjI9҅^;PT$0*;1,?U prus9* i֎n BV$۸%^>o``~Z(\k"US|c {ap`H2d.ՆyENNOl^9C![;q"mz>]DUū'9붍UѬn(8гB'2?vνf£ɜ ؟Pp$gBFѳjf'\XivwƹY.4 ^9bx`uɓQq@sn(=i{ˍ Icx r=F @ u,kj&C]sFV ~g]{:K:&Z~xA㴺kz\XӉ;b |˪  &KԽV2 )Ql3d[iG3K*[d5s ʾi:Wd1'5-jSi2'PBGΛm)6'%ȒA,,rz6[vxD%!jD=7dS}M@{ظ8~?P}h5UA6v"%|\[ֻR̜lFqY+7GHN}hY=dFd;tc\퍶8ǧe\sCYvQ]n3{'T!1KCgqF4U8xpkEOŮ\SriSfRoE[ӓP_0>mD}`\pഭkTkL_<>>]C}{'֡%%D̎ g[0pkEƽK;i!SO~'x ␖rôQY(=x6~[uSsgTwx NB.Rإf !"H!;>ۄ{|pRҍL% ȵ+v36A`@45epK[#FE,?Ϋ- ','2nB./v'&Fz2/tf8XK=¿BK/EEMzFo0ew@'|ؘ9߆Z; )M;š58W%4=KoJ].j7riD~i#Beݾ5. 3qN^UJuյ}뗯lh9֜MIiLUy_xv,/Sc %Hcua{PԐj)+ 9o^[tUhS Wf>;gZ!|ع jrDZ p>>WJmņ_/Zk&n-Ps䜠 [o0h-}d%A* \iDF6GN8[>,oYEpu|5z d/6L=Sԑf i"q2 V / jG#6Ed,x\ n3O"7'H'XN rܝw<Rx%[,W?Ǘ`Zϩw/B \ l#(jMO]Tz֯^d0"?k/7A$0'XZ l'YB=aӟsrQGK>_@w ̣ *␁c :n?ud @V0"(uܒE^ sB=,;P^L/3-O7jQPMie&h@룓IK=Cw*y+ ,+yRɺSpVo!)v,vWև yiqBhٵ9.u,O@~Zx1p[J8akzRo@.i-4Ð+? <׿]`+H~NmknNIMAA#sXޮ Jܪ|{ d2G \B-"Yh8ψ$btQ666س>L;_L"h&ш5X/F݅b#WB&@:B TRXb7*g蕒MpUȦ Dbfo;3c ƨjC3G̋SGl{]4'H PIBXg( p*yc[uiSte%061QRyؤ`X ɨ6usWFUyC|@7:n̓nwGiVoGm.)j7X1 IF/R=$ cW`J}r6oUs(y-ɦ%E[!kyƾ8a6i)o@{nD'L }8*EBZijyT: QPaQADfL4ӉS3kI,D%qVY 61E+@ЉK8aT8}S4pSnuEP@1tRe% "gޠQm|"#[ıi6[6xZqW{(h0B]Q܋}&vPB1H5M~Q|@en :@9~ꈥ" m%: ,b^vӞă@Bvq,ycb*@t.oI" s1H1RbX+::9`ƆБ7å\^.f4#F-#Y?#9VW;ɟDY6yFS8֯j@LB6Gןd1#!h*z8"0-k"p@4d[jT_'"ḦFFbsc$tX6Fv3L'bmP:MŸx҄ST\t]=|y846pcD\*Nh>4l-33#.p[GD!-;T XR8Sϭ{q(`F09"hလDEih8i|buQgPǪMڌxf 9{*Iѹ[w3 5igߗ SYc8sEDSZHqХRJQz1Uڀ)Lnf'|.& L<|юAփh{Qj$%ޣ\D$l61TGޖ ]vIf_ouܕ#@M"Z+VGr{/%‹pœuG@*A:Y F?[Ǐ\v$WN ;>rkLOS0o{XDZwg zHĹ;`*CӾlebŝ߮5S0G'mr}@lR#Eֵ XAq"(a4)ݸ2J+ƽIrdTH=ͅYh“$53iF2n@p/c*3i]}Y{A4'Z >"kt&`AnWbA9 ~C6^b SGC LZ ~FKdk;}kޥ$5{UaH›s/$ʉ{r89~_5RtdHlS-/ 5Q6TI\T|v$ޅюgŔ:̔@Vn*/J$p[&3%-%E+lA)U'w,ײ 2;yTQ-Ou|{P8i&TdD4LCdHׄ_1C~UO#%M ZHnݦCvRl#(au#-c`*l55~w=Mi_ v 13pK|*mDr*()6>xEܫCCmI}X0$Z(݃~;u^<#) n簋cj+ JߎRնD2~#8Tۦ2kzy#.Ot᰽03yviog%`5j;]{\]T0d# OFmYbLvp:jXNaJ؈\6oUba;{gi(e5 u%EĴd(ܞ ;1?iPYIQBp++)wW@ݮQ7J5#GZJǟfU!#[$@YighS^w-PAL '}8%g U!iqa|BVqC JDb;E}-KZ٘=yކ2 peM/֐sm`4/G&7(3@l\GC5/jSOcy}7Z3X/ U))O'j0J2K)399nc/ݖp.3s`,n,QQpjlm\ sCq D_w2MFX uqs( (P;ZQ5)O.DwVvD OIa&5ʖ?kUJcu5r7_iR?^T-VG40S@TNTtp'㇥L @:ty,3 m;BL,]z4Ml1T+1:%mO؞k5@I}m, ֧"€ 0?x&8u}5jvBTh9Z0DPDB՟r` hv` }SGbVM|`[+Zax:hzzu9]1^YͺYS$&/Hm2S `! "ʜՊˉ{V 'ɑ8 |](]ggh5D>^ZeCh*|*s tXaVu$5b:ǛO&f&]JO!hՅ?Ö׿WbAXNp{o{^YycncLq!qhIAnIVwϞ] e:n<.gHΔ7`du&x^RwyܼދrS5ݾ06҂q=hr&+5a-Rr\=x W.Xp8S@ y 1Wa) zZ WjPYœtXP ȧZbVS@'7RMU-{a&CS{<Оلk5Sb2"iu*մXww4K$ 8JiPX8pL@L?'I(L@,&9 4 ݡ'܊Vdln9ǟXg:?ڪi;B|wՏsF)^+R]!*!ܩSY;ԵhVH)WyņdQu=l+ < d@PPAp-dSN Y5Յ>pA0׷/'-hsڌ/bӈyExA>͌~#FvkKŨ=]\ub]ʁUɲ{-Nx >Hcǭ.qu/YJHBk'e狵Y~}nG+RT"CZ^k18:w`t3؄vWr0tc7kun1 UѣݮC`])4XXrۓ{BhQzXMgBpXsph]z.6pp'hL\,[[vn XRyjXstvpzjX0|(Y0 Qqɗ]6aa$ O~zMײUP| 3]|Bkkt"I{ɟy&3G0qk~^T֠囊~8a鶌0{,`d w4ۿg~OI6پy/rN le6:Jݸ`! 72}z:pZ#_TJe OIQS ,%6G->R?<~h*(4< >jeF z !o}8U/6LSA'QE[1EY?sV!F-V!/7bƌMC]NC!k*+D'> W]ý1 U۝ҠJt1c׭ Tv}|q Mi6QYԪ]imĵw!4qwJZ x˃3 1ie?JL,fK ])n!٘CqfoL#N:. ~t;olVe..|{{[~㲸UOpd U9+Oƒ l@-HaL}Fޘ^ f݀Qv 57l:i_ ^aҵ(?ThriH24w>6lf{D|!NO#[du6}ku0 6[ Oヶn0D.{}ssס_Drl!\ZCӎum좒%m";κ D^z;Eqw xdg߷f|5'Q8_M3:R+~"Շ+%Oq-ϡ&~~BƲEr O渧;=Bԉ _G ]l=J]\#=h\H9sh-< E yz(H N(#\ءl=|RfrЬMdR'ڀmo=m@V"cS*Bl_<{R_'$ K/6NoG+!EdEHxs7ۅ(5Xųgqi*'!НmPz);}%?K[qIʤj([,\%LM%2`'[ (ikT-_ zEl2H;= C5;ݵcT=1Uc2mZ՟Vl>x{-wTXz?%3v^`쎔=ɼB`6/C{%m"hg/նD-qC+\OߨyQwoz*%[%G阇eh{9䟶@#pcug8ٮ zv3^s*Z(nW燗^|'mܹ6rsc'iOCe ;Paԩt8{{' +?]ɉel b/Nb𵅄Q'kHlf= :NQ*ei*e  G`@A*Aƒ CM~+بɞ}WbŦ`pQj'2@-T?oJ#_ ͠`γ6lrB2 J#&Y*QbDT Vs mv](yW$`BI"4g6G`vhVKG%׉1^[_SxA7YX/ P 1j_ܮUɒp‡LHV(x=y=6Td2YV1r ] u% @\Qִ"*$T|^V)q܂5fN4?+cX  iW dO_~v뻃gCd!!4rA@Dž{^>k~#8Ez<ҳ^H{Ia[7&0':v'5W#UgC򔼃>:OdݳԈxm@nUbHT2"_^[6T<)ۦBN?& }tsu<Ywt,~8Q9.-THpx]>XDܝ;q&2=$4{Pj>£]Us%ck-Хn_huJDm?8c?j_~V/ qtB%0ӑ36Z|N45ey{jzN?3Q;G&$E3k$r~1hwۺs>)wJL#^R YqFA/Fg2@nmJ%7@B#t}^&wwICpv ۍ) fKꁘ?©`2דr"mLGy&YyhG}冲 3z;&0?c$5]o ݃ dNcg-PYq؀p6oXya$?*m"o]B<)g9}rcD'HUc~kjq( Oxe[֍5PO`8d6[yve:nmւ!Cit\La'HpȖ+޻++lw;*}ELs̶HnkNe_L^$>nC ziL4YȆ-Θq&r:w`BU .3?TH&QP*n`2rնu,p[2RT IƿV>LE6Z(UP0Y/ŽwH:K.&Bש'3s@VKREHJ ?CaiZTlSPn{b u,U%5\5h3w ܷMxI'Mrk!4ҁnV&MXp3L{w c+T: *&Xp*~ZܸbNj-$rˢ I~-5AP[!S ڰM+Ɵj&:E`R ҵ\il)zqN^H)n}@b{*ݩ9~$n': LYXJܨN@]OpOcdԸ9<9W;}~7bd?e=28IC;FKn0ͩ]= OI !%|ؓxn5^@MŢw73 uCsCQ/N-p?ѫJޒe*~X2ĩAPѳQ ֧zѵ9°Yddpcm}-bL8h+b\~bJRhSg,imsϐ ͂9yO [ [^\†3=k$AO͞Bљn!x6[s4L/ @0wTYNZ%MQ&F&)*S]'-7ZeYL6I.3:U(2=>>\0dΦXƝtw\!h;MsG<9O(!yG6;C3ڢG*Q?֯tOCOfv:j܇5w Cw:(񒱆ct{ |WbYH̃!sxnPJmkjlSV$ q^:^f04;X4[~pq:PURӿlj[\ij_t(> ʏI2S.;K9)լ|a1+q+{7q°"V;'\7?"(qg4L̻^ r*F``݂7ˊ1Ν皣N ]7#,hZjK{AKA t")(CĮW2}jߏj5vQ& e<}ؑ=,N&={2ߕs(J)&qʽD9:Ⱦ _Yy;DtbLz70o}:@v8!my*X z pFqh콟IN'LZo2K+ m ۂFeotMǡf@+P_jw3ua\ aL?x:P3OsJ-n]>WpWբl0+ Eh1\묨/D1;x-?yCk诖 4},:16[_~Ttwq7KUPG7&:mP.i;Jȕ.FJ&ێL  P+a*]BF-K,Tm{v!XFTs{9-/2<2dݼQcWodw:2_*fd WIan\^?W՚y/}IF~+E;*Uy@ VvECokm1>ؼ[Ul>!B딏aA՜,&j̿}ŝf!/CASQ̇!Afk>Gzjܸhm=<ߢ.D (rb1ҭjf* LaXٸn&Ѧ<P)Yċ^HO]R/G<=#Db.`^b(Su0kiĆA &׭u D?O<>5[4ڡfDK)X,*d1\[!},^6 ' [6[ ZLYNj%qףyӟ770WY`v&oy!:D^7 GŮ=4'{%=ƧxM:>K>U׎~@?:9bUbQGo  kpςtj]~XH]eɻ 3NI h̯Y>>UB70RI^PZGȎ w-1K\]a "UlV XOeH4I7Ki۞!SG(|k-Y?nނA*΅+Lmɹ]3bp0”^(|wJ?.6Vpu=%rvͪn8\aCo0Gڒd(7zKGcϦ[#ont*wlq@)h 6KSK("Vz) lWݑ°gb^z쮖7Ֆg7WJQ{ ث4;覕͜*#Ez{Suh8h&H7. m3~T9Na*RDgxDo  Wn~`W4+#rSmQA԰YᙎKV:8G[ISUqQ$<6c)$(Z Q/sHަ +Νuɠ}>i=oP9V}|zO遂p|:0:Q7N)OFZ:ԁ;FDF&կ}OAb)gY:o$Q1j ;x5J0aR>;mWl,{N8ޖ l,,txk xmȂ^S[݉k`]MFǙbm>}E^^> qq^%}p8k\bfg7{#s9ɧ)')dX;6jo X"D RsF"0˴CI=ç4j$3y~ xcpzI^o.5rWx U/&4^x{<|aY'JG&Gtz[[PlebYbL^5_Di 2}F\vw'{#4A :)t8Pm)$gup#C?GGۣnYL z>YJẗQ+QEv^ _.aONĊs h_L :rt->=ewm]iMOH.M @4#۳|9^(/K2i )'֓4ف$+-R߭ ӕvvmrt={"Fpt"UVu>V\.Q\x, L,G1|M%} ;YuiL63, ^e1'{7 rt(k" _'́|oUr4g8Ctו ވihj;Pr+ b0ÿ́&GK5GQ"|0Z,;JSpۀ8u xzY&l6dݠ=wmo n7bp퐆aܲp.ԾJAP.+@΄gޠE 0u׈6uԐZdV5)칸2g 4RllJ(6/7 ' g_!92=<ѳ)_{&bUd:9dٔk@cf"0:gXVJo ĈB,9:s7ĺ1aᴗ@2FR쥗{Ԃn2r;Z_jhL{=Lb?¯0VQ4 Q҄rc#ed rͭLлi>O`tQ99%b'/'K~ ՍzzO5<:ְW5H,4GcR]b7ZB8Ei#5qMxe}k[vI< c&)/>6 DKc,P "hmrhԻ2 80d&&OT5$7*'8U~~W`G_wGŖY`76Nx ;?Bx%qC4&֠?E3. @?%B}hol8zx4E.>@~rM(PAũ,,He Kl}=F7tV3*l:kǤ+iby(IRhگ WEm^Q.n҃# p/hO2\(Nnڮ>Q l켚L~_1’ȩ0(hMc>$Y~<_?Odz(zDyrWƸwOZMT7Bk6TYoac=gpiΐ;qsvDaHVZC&ެBVǻp. ?6"{bw|41 \Roэ}NCNG3NDCxVA=8,5DaV##t=I=; M\6Mm:U1+ 10ov@Q͜iR[ɊSM\&7ђp% 8( *6<. k?LH(Ҏ#j,o OuUj\ԣw&NsxWiZ?n.1P,wkz Bj-H0H%_zukSE̟RK' lg/ֲ U.On]wKWC2 [n? s)9ם'a7uNta7^z5`!ZPboǒMt57ojL 7pٰd"{#9p(n5UحJyhO|v`~48% UN Q Xa:;q7{9P(l"1B}C 0 !јP'&9nUQF^O˫&j3[jz.sEFzOR ( [@AMA-Ӊ1yq՚;ٟZgߴc$d˜ox\*x2yYFo\08jyYU*%'Szfބ|{.X>餠Z9s~k /UuTgRv?q}evje8BxC:&s;_i>Cƪp\pOY8H4 O9싁&c($ ":ذYG5RThP_o@ʄ؇h\m;+,O"H4AcB7:CC#5 LtլІ g՚M q00Km&!$r[Ym{zc i1s' +P?Ƶdf7}P>q>WC+2\PAtM.uz;iŤzP}.q"wmJF6.&څ8k\*Ŏ$ZJ:&)X8ˋ=/)E4pY]4ay| ~46%_ޯ$ wolÌ?+Wj_6X% NnZ;\Ӯ_x1p` '~n_ؐHֈVh Gn% Uz/B I9K=%0_d)&^_! jbXzX?_b|u&7^PO#|w.|C7t X-)ސ!T^Jh)DŽҧu`&sgv Ca4m982^ۚy/DأλNyɐEEǰ= R2~V_#_bkSf$!^0p[ςcG; )r^13l]q',8e[޿`~*X%5Q<|=ժnRd'%NȈ5 kd9tb' "46n90t\K1/F >oætۺWb0_NjNt\ˍ3.̚)CRzcކpod pNv/9̜UM7尯]M߮hv&)8**yD |M݌C P$"4쨻v|E糷أfoeR M"N˼>7]0 %2LYK N 4 P nD5̢`NnJ LgO[h4l˫]$W\ov>^blRȳd6n ^7cSE~[T ZHT7~u7{U=oy9| ;~mJe&"!B,SUlUz%/`/ |.nx%j"S$98p#31g, ~wkB-|Π4ܩ#(!%RS0I-1 :+sowS!Ϗu!r#9`c枷Sz4183W5ʊK'h/b 8%I &ri/쥼! 0> Cn/(@*/1_ ?ɴjH$'GЃUXM+:U!''覢hQ>X<Hn -JɚrmsE 5cH/ɺ*mD|&#sc%t5)ZM [[G2 YS NδXuu$v2)ڭvVM'CrY^ѝD%ޕԲ4$J2F3o9ٕvP* ! 0$pn{? zT$K~w,uYACg%{ t')8*F@fLĮWBFtb@ʙrvY!^xS~YK+ݶP.~\~QIiY{;k87.ba;NR\3Zdij=&!xV9{1srs}FģOVBڌ N}t6d̞-J _2ތ2P l'7(Z!xaD3¤ݹⰘdjN$qĮ7IO3I'>We^\apdZ PUO"16 DJ +V ^%߼d}HD'2` (sQ{Pݕ }B.a `Ây4&3mvص9iDDҠ@:bCIo:,V t1Tk/#OaJ5):w-QP7=֙o9h=I O P&+hrwTW .,xdu!p9NWu{ECg)[x/6k[Ҽ&<]z2 9/fv LQE2b&jhaG[5Gyڿ!Wrw-ѺhslJt!mR_U,g wgE4*-E/C[eA<<Yy]ka!GlswR.A>|15[uP*{dצ{٬-o.7V`y1Ti@Uj#OϺ_n!Бͦ;]h7mFD$s9gBfF\OcC1!^^vi~s^=7HC@^rJ07$L)y=%Stv9>3>emF%jvN-};C[P+Y Yڟއ.K_U 096u|`Æz){xb|, [Zh%@?SI8N+hS*l-eLl|6N?'W y5$nlFBV.%001+VNυQu&Vn/32/L 8n5#&01X,`c ``DUΎz(Ꙁ54'Р: C}GYE D f$(4'&fGHLå ɪnxIJp%h)mTJ*u?NG!qeE;{꽆~كj.w,ǃTkWTx}NM&cFCW^Mᵢ xῇx)3K2=y&":<&f5W+} 6hv m5eXFRI.c.x$.͂ )I 1AlAP߲ SJv*5{ TJI=/_x?e@R봳`Z; ;'MG(.s!U( MTRR=JGzS/h.B$"+]z^Q)^-F}(5pphgHz^K97d68n"7U]ʓYL^MtꦉZR5FTeti-_a,P:5kн/J~RhS>@"ӆvV3G_,WuowV1bZH*d sSGh,Wڧgy=A 8d缧ֳ"'1]yL NH83ŻSʚvBfi"$g̤V7QFQT:8E2Sؖ޵1,Uv.dq%~i}ao!ch4XlMY>p(QLLnqBF)NDѭP !: ZG* 7}/B~DݧS+6E&#&z1Su +Fʍ@T0)qy&ݯ?՗oCNԹFॅ@ [ušC/-~n++#dIF$:Bkkjmz! #>a},7җ7gУb]Dp8=?j|ӑ9OG\A䰇[&ئKe F/e˩4OxVww|ͫUXrg]j`"up]1%)4H,84~JֻO8Xc᢭}Hs@֖>#ї \w[:޺"#uU ^@|2>婛V(APԶ_>7VWoY,:_.+&ۈ4lW-[)BDor cv9~_>pQ51 u KF||M7g`<,,R #攅fYVDžnh9w;Zqr''m2ӤُG&]E.N 4:. vwƣ4s#>PS{Rdz+rTej0sK;0ATtf9(TvXmX)M$A(&2 O 핿K) w4W8SYSqW 5݃1wy` vsfs@w~e&Y{IŕDb4]6ƍ_JCT^?'<,I\6#:>cvl-oxN1>/B}i/垚iN^nu[eYi"hDX@mp4SV;GME_d c,݈m\zieF塔snlS6^[ScvQPmH(I=Hz>FN"S}y~6kJðal EJ܀[qW,9T-!IC"!%43];&*᳠Ij?׃_sCy e.E, 1L#w>$BV0X2Qhw)ŵ<{ SUS~8NR2G6KyqLS{= Qr/%af]D }ڴ~WNOn$Nˈ!&`S7s4[=Kg4=5|'_ fE?BvPNhx4]ލib%} b?;Qlf$\oFAT@`_FW`g!pxm cB\~IZt]``>=ZSpГ[Tڱl?\Rɱ3f<$aR[w_z*֛k:k15 .h | Ewٰ|Gq0ihbD"1RچApv* j2adKDsCjugTF)ܓFWRʪ [[pzXأי39l@pRl\[쉥;J(De>dǽ\3opdLc"cR6kmI>\u%xԨ/3eR'}^uE&~4Ы&En˾҇- ~ua [PFߏ!=\x׎uEc`. U Yz+ώxst!z/FCP7_'Q,Tɶ(%Wi#N-h8$`f6bJ3LzP =gݍj(LBY ʒ8D [yu,ËG;fY iSat@NAM:h3JVR]ay}Gwa"PhE'<}xJ,\>rERk Bԝ:]HsH7jX*[ػ 2ѪDoϫ1w]J:Nl(z*fQ9'ʱMaIM~OI=s=3\-L#ƀH=mJ3ZJ_?%ꉯ0hT |DV&GLh$ۈǒLfVߠ=8-T8jk" Dpçy&c$.&!JKu '젗ST˟)Oy%ωd#@u%0:? ֻ6Xk_<&ae+B>mM\"ȖX}M$W:מR#t>*{gZᾪSVwI8t(I3aPLcіBY$<QnUghiJbf;UHkh.N:0.fܒ Kah%Y}HAsycնU, ʨpM~3}MӊHK/ZyOj.VɔXsFz\S5ag/(Uew6" οS9spUo[\p-3zeX uC7#Lݵ.Y>VnOPlW\g[gt)hKCEVRgr}Puh2QЏ 7iۑBOҚ&7U|JBZ1^x2K{{~V+a"PA$!#N9ԝ5"cx?^=afP8ߝLQH;Mb~Z @BIQ*<{& 7\vT0jC1I`M2~]M“h (9)U4>*XuTf ~%-e  5쀯ʡ,E=i0Wj.!heDܜJo8=#`sί[(̇EW3^$]QAB7!9cZ@ P~K Kwif/&:.C@w6{9<îظfï|7VH#&uaeo>'ovPuO"3Ko]7~m"$TS wZ*Tn~Jdz!#)p  xMh:`Ñh(N~|^4I#} %>Q*/ނ\(n4g'b;:Z#/%ju%"A5Qd3 9 *L|6K0 k@{ !ݺVNw?.%2Q]Mܧ(XԚ~eg9~e!M⨛b )$&/@)g$M%$pnqwP۰/8/3+D`@I_аLZ6κXux3'OS>=&}MJ^ž,Dm)MgҙuPK=# ,8R?9?;l/Y/t&  (kwR~5#!(7\ӂxơ|n4[=r'b-k6|D9邵v*VyZ& [ƵGPAl8<\yأ19Vh&Q[cW%߰?NH3Z8}\, ̖ő[VFWC ΢ԌL8gL/N%f pMiZ5rd4i`dPC|z*4{Dvt4F>a{kHY*մ6O}`ZtTa_c/`k1 [ c.'_Vt]Qn'p+ rnmIl@Cu\NN;m)tfg@oVN:{<͚\w9ۍNUJ*r*b]Mx_Ϭ&'0tٵ1IfFID(Wr\H 3d\  0͈yՇE?ө^PhߺUY'#;у)|i>ÄRSi,yWI[њ ѵ+ !ADvN8rlqJbFŗ) ggZ99E_C>^zQIHޣ'~~l. RZc~X !fn[/rXczU8x7B둣IO?I&X-&KUXKU;0Znu(w?MG[u*8w?~,>ƺyQJ0k g~q-^rLd/>He`1,Gm vU>'=4'w0SkҌRw(}nT1^ƺ,jk-#'j_`l_0 SH*DEc^pS"[t- ~fd1Kp_ք6ݟ^+ (^M) `&#,l?x+ډe2"yZ ΔήC:0N`륻1d N ]i[u(Q &i_$M^Dˏ‘Hj06LsHd_\c<;Q,ЎT!pg#TWobcr=u =o&Vi+~4XEVw;D[- m;sc٠dVW-5@o7wPpFuh#QqF1~QL)xj.oJÅnΆ݊dHd(J֬H-ٛq %n!x4; i|-t9iX[cmĐ!e=ZNH2 LLeJ: K} .vd)V}nœ~vcCM{;2XN@X*rܿ2セDXhW dd/dtuQs>1~@1T71Pj'rF62f3)EY)Oݢ|7DCœh[eE"l`oGN|YlkPtGx[̳ Yi}Dhap%GK~Jg$^3?U5b2 nЮvftGDL*eW6bf))we99|#`l8Q]1\DFu;& F/oH+,Fy鵈e/aXJsKb b ),7Lz;j3j5$T"0 $͆QYB6J1PڸLl ʙHc֖.JBY7O';Ʒ 2! +EqU#=aT9miNU1aBld.W#KaSd|4aw r`AQKV- >&03:aBX䆿j%5ukMC h7*N]e0Kr=d^볊g$R3ҬUΪdAhB9aE%<G})0GcՎ5',m) W>u,S5$D<Bkhy!̚ԋa{|r ~ rj] Ȟw!Na d&W;Cj5Ej Q*GFnv !Âޛ{ZFhh1"A>ȑJz|Sx_&N{/KI+< ?rW Q!*Nס\]cA &)H0?۫Džd?{+]D/x_pL/'b{mE,0D*B|bצiif^K8seȘ}5bVSgy /@1v/&,Y[|˱ 1FMȿѲhkAp>`VЧkwǯ! Q6V)9;<-C!Iqb})O%c7ghWp"{iRQ'U^\jy2gEjyx 9h4z=kC磤w LGцђ%~:BoM,?8ȳI"jetATTU° 4\[>(C;}V+j{ ѬDֽ[gTpCIdC%1a[S>PC0s@N p.KJΛʰ6#AX:0Y1H{*,~1$WuL~ڢTC4E|dwT(oYAv[+B *# 7i&.,怤q5Gi )FJ2J4}EvXs B%Xt4Ji]I@/4S:h/p~46 @Qīf҅Mqtܧ6at5ov֪KKںبe~HAaIjVЉ1!Ig>@&+Ԁ^?0 g5="r椤 <͍+1)Q` C3r2:؋͛ UH|>@]Nڣk`4]lGD`A)Cy #[s,q܈fF6d@Jzl! yWBX񑟚qc͢zfV%Bo)~n."cҜ) /Q` }TC+)mՉ}Ƈ$qK<'>>aҊ8cdSb]SZu8$.~k%}S-w|3i7 ݬtaCI ֌;pm.7 IAUdW-̬?CB,1+1"O3Sjݙ_";ײ@[@{'^Dd[ ʦVj'IٔopRt!pMqN'!GA^"Rf暙kUjU<-$S#V٭/ iPh&SB$+vzL=|"KNFdrC;{Yhk,?-FԚmފ4bsNkw0zE@'GZw; oD2[yaj+oknl9/z7 >ݦ mEiUW?lfn戕&1㤶'we+kȧ6{#PCH-F4$?'ڥ~~>&7n:dŲ%ԡ/Ai/>8FPXZG{6ifҸ_D5gChB=@Yht;(: xQD'Xec 870wMNt3є= nݒ23aR~8lle/ rd:%UhFtwPuoRѷT(3CM52e>{v-&X "hH/ zٳGMўL>C4OEzfùaz0jQ% Rj_ՇBgY0Zifn;}*-9́Rr%9پoV װ158@[[w=.lI7[}u*β}Rdb;2©xovDNS ' @X8m܄(4z&Z\n_RszR؀N"AS6A +FGtj@Q phҽ$w *#cGXI*$S~3k]J%f<!f"oj5dP]鿖)>9-[ľgd9ZHܙ'Z9z{7o,~Y&,g}G|PlgӜ'<5sc}|we Χ[E(?†dӍ63b`kl(w PDfS:6'=W0ߵ0%Q.l+XTkuƴb&]=H]?[Ics2,̯zU+{E#+6Y ߏ ^_LĚ{̒yAӯ.7;RuzO;kM:cXyQ堯Z<S@;: |xҢ|=-6{~Ay[ b]v&1x> ?ͽCJ*4_ zJbZ J&JlUGփl]Q1s!3?3WҖ\a9'Y=~푷Lj,$,+l\#˾ϭf]4le]*ղsqT^=~Uk"kE@QKJפEx',?E.Y!,K M;# ~Mk݀V{[ҝZϔxШrDԢQ!,x5s$JBy |6: FǷ.vQlPl/7P{Ng L7-*[w-bDuFQRm>V?.4)kDWnL€OW$P|Gΐn3A[4 X2үblFf36NJ ^ He[:/h5RnSq3 !?I4TKS/ j:x.:d&Ƙu3 3WGqzV(BfnX hj ,6_U|qN<³jDgfSP'>GXy#RH:Oz}Y*ɘ,QOäyǑY!Ub`h &Էאs2Y&L x# _*!;HŎbP;IAwx<N+ " ztX@ɈPZh M4lrX Le#1(SeQ'@quft؁& {Y~uۓ چY;3.q-l D?$ͬS'eDshgٮd̲J` 55&]hBI#ޏ慬GZ^O$)8~2k! (D1=1b/|oȍ<<8GLĐ_ PFQr6_,zV  D2־~l<(Zqh$OiXMTwiJ|[VRmckHg1sbQ=7$^" O/U3 sԮ Ď5 RAX{1na;$ZQ,;@3'+ .OHw]Zʎ:?O(۞*&N54C3 ^  k?;>j࢝(r-smb9fVjhhKtڔ4S]sBh, З|RLaɏLWjbcU"%JM]@1O +m8m]{e RWvin|))P #?ؐg)ig!=>62FjwvgY2 fBeVT+^dtiU;>-D- 7CwvCq蟰pOS} s9a3Gn@#i:?p3pd%uur~*Ob&DmS_l5eH-E5t"*l6憬O:G~ݪn+C;w/c{8_0 3٠4a3NNm_BkZDȥdW@<ȨcpwtV~r9;#QgޞX-:x~@^͂c #ZԈ4>H(#ΡSJ5#% 0|8'tU[ċQZ;~8;'bq𖬉0_M>eA;_27$S!O;`Wrz4utZ%?0< NqYrU\Gh1oð?.z۾\9)%2FFu4,e${ h#l{D,%mBKp,,a?:UL8c[!H-FոJW|ֶ̲m602œүdmogbC]whFJn4~6uI@jF IJLXƍ! 'E:y0qqt=>*mE4O^E'|yoSbd^_Τ][#7sT 'a|R# f2bzsdJB"a~*<۵B&bQ@k1>F!\.mpK0^D MKr$z9ۓxm !nNw%5ϱe&]جȂ'GE0c7cpǶBCOYZ'lsp80hp`9jABRsX,eLa<&$G\,"G 5j]C bm;응 )I{HPo_RڅD O)5Տ$skCֿ-{4t=Hq^B=.F.FQO; _>PH c0iB_O*.JUo2عXJgVz&(TTgSSf' v+Y֟VQ3VefۛEu`[.h'&f:jLhrSHS(t 29DeSmU,6.6<ʽ>Ṋ̣LDgM^LW1rϮ+[O <0!˃jOdp2]?7aH !/z\S i (nj}1v-ilwUKh0 xorAX Z;g5w=9ҨQ0qaO,o1g `O#|i~筵A.Bآ7Ft'\?m?[W>MIΠ&k}"{g9&<"I+ֻ ])k} c *d|{0D9o+wA؏Jf-I;?hUG?53`7Q-a>z&Q ڥѣ"_v@ pg pV$vA .N0C0oK)ۓA<ymڡSf+ Q2EF~7ry _g}o~6JLC1UyE74?Z Mqے[:?+ $[c!z8%&O<-cln [51 U: -4WyeL$cj&cc`^"5 Ĕ\x)b g xƎ[ JN{ַ} z->Ĭ0MePcO?d!콁 _Y[EXda[nQaW!#~,5Û9pUbEUysӇV%cKFj}p6 oZ*|K kGð3f Bsʷ{Y.^CHW>5)ŷqBJG2"\@N OG-0,\N{~ ȕd 61+1^tD[Ge$! ׏T?SRt n!~zCr.7ɨ1s15{$/ f1}W?Ik1g@thj` Tq!Yk(V'<:]{G3t)l>9z%}ЫR':uu9Q{t3-L,~J ng1>#3Uغf5%qW\?$scWUK( AG?w;/blLUv-1S$Ho+3JaaҸs[f6 tL{hV'UEČ\ ݤ<V,D%;Bte6<˚Dxg_CR|TN" ̰;wЪDIIeYMqg-LhH/Oꦑ<1-7gD|Cq}~II$XN#w_Ecf+ eaG6KXc,O{!h?'S׬&V?Uk[:^ݥ@w.d" wD\vN ͛ 8b@@=;눑!JC9>{t6-9'ͼJp"Jo;I;}y_ڿL/'=w]8F]pEPpr݉<#_Y\i^98Cݳ-\oﰎ}\jwcVgLxPF^ҀlaDBpjf*~,vƱ0'ل,HD~3. 邀"H?$3eq,}Shj&T& 'jͲSaBoh,Gbi }SX%D,o2ivH3JUz G$p 3%OvH 5.5S Oa7) c ^$L_D>=]'Vpl=+ǩ~KEoyI]fD 0s\Ah\k=+0>_ë?g(}=[F[N·e5@Fdޙ? K?=S$I LS\N;`i1O%A4ՍX5JPoNG]q(]vTqNUn>f[1"DҔA*Ց(u3-L"5MoF̈QĂdp'8€h@Hj]4j}L)?=Nh<˓4>$b58cKy22tUd_ *"q {F|6*vn12x& 4 sSjhS{_*SZ5Z46q7 !Z^NeLo!-)GtnVz@8ghV:ya@(/&d܀'OaE}X _q )$~Xvӑrt<Ѳ? @'Kg@Gv^!]w:y.v3Α y;ި^?݈ǀCH8wU*@2˛t5 P#ȡ#澔ww ,H!#Ůg]G>\ C K]v%ۮz}n`5h4Wm!`jm>[σjk四f$O/zi ]A>㛅aI@Y-S%YOjegY v XVl1ǡ`& oմ4XX H ,W],}>;:"Fo| qd uh D뇘JH茥օ!AbD6D RMי[s_lNcLX:ht56PЍ͗i8&#/Rc QJ"6%^ʃMLẖ i6lv= k'`V LOh-WFn:#++P/kc*yFq Kn]h×\mK3-.ʕ?ӱ$\fmжr> >R4E4 RLБJ(q[Fpasjbꝸ?asp3 B^{gE-sMÈu)Qi] fHB״ҁqN:Xb* وy~+n|})x~R!C|TĆqv{Yu cY>Dt2[PAJLZhO$y0Ey\'>rv2KtXpFط 95K"әKXP6$qow7?DD]u)Yvjb}>yek">Oo9p;~kO.ځD֦1yIXS WX306cyqJM-|-E5DzMpx16.)|Rlk؍Ad~(T7cgΨ@1%`H2MӅ[ ]^- f%YEҲdΚ; CM6?+_2./X_ uv.DUu)!җF^R>PfgK:3^@#üR~? j@Zd|gn:)BNÍb[nV;^r vQzk_s|3ӇP:Dgq. ĶzR`z{hD_KLT 򥥟,_ @X߹ h'Kػ@LzhC֓Xˊ11x;U/1'hL|Dpp^4kR?_cM^6;*Ʀ,(i$FkڮώpTDQ= T )V>#JMPHsxsUDGuHܐjrRqj_hJ-(S&OA⌳CZ4QAZe_jt1ھ;1ilU;}Sv٢W}Og xms\ugV?نlX[r-y[Xյ6r=>H#wٍtcb`l6nѶj`@' {XL5DC;1sv\pNBg)a__oK/sWXBɮz2/B/&(5l9KՀD߯m0jOpM hV=+z逇 }_bz^}O%.P ݆j0dI&" ?ܼ6UŤ#%VL/7iLZ("H7B5/EvHG71:sq=MD9ͶQW|lN|Io`&evx)%ڧV[ɣחkLp6l}TlGZvȍ Vͦv=4vZX'Xm:Ijrf z: 8XO,wS 0жGW>2$xI?ieDC>m ]r=xzsEf1g{vg?=vF'y`XPڽؤ,KYѧglsyhLZeXeNDG_/#9)L̀5CNC9_??ȳ!42vqvHX5ʙv\^2@%;&VI(6x+#&oFk34#vWحEHnQ&˭4 ٖ`=3lG4 3dF}s55AR\Ho/X:+`=}+r]# ~,~BI?і%z#~eJ`e;j"[KñeT-G"'qKy/Vb%PjP(jq+h`}wxpwV94DeI(y)hR-T%ңp̥9 r\5եqL*zcmk[?f7O\uORA˴ɿJ~#V&SA P}x,] altj |(yWtqVo"eFs  ]+kK'P+ʑ΢ȫS'4}]A~g#@*H Ư- ,+f#͹sa{ n%M*˘թ![,adUG֐éf#n Bzthj y},#tSM l<@C 娊rcUI=¾,.{V86%KO*BTW*<[%@a\Lˍ~v>:Ts"ιmySA(`aV>=1+4lc; YPWA Iz` W{uY^ %<;&EB1B#Т3FUL87R_4cٽ8UR/ĴjxDPeP!u BUbk2r.KiXU ,jmM?y›JKPwlW: d{{ *DR|`9 &nGF"g㑈+\4wc 50c&upc { C%67T~2TnqB!ckÿ؈}|Qy 1%)7=:3 ;[ {(WEސݞ4ݧ~YzeB``N0RDV?$KSWU^^_0]-JTm';?%@JAMl=Ls1<DŽiV0PnRw}=S]e^? cL1Dǹ3WgM,_4|@N<{V=i?ڒ\_IؚQ(CI6foXCBGY+gSpR`qYnkd6*BΒ~rn!o\3eZբosRH.ìts?*m>䰲%b)diAR+;q'_s֛n<և8 lyK"jاU 8#RtxM}mouB[fGexg L9ٟ fStRs87?%ow'*Fy#Lc/3ۄ$]ew}ȃ[͋l<П?qWz%yXFPͰVEq6>㽡0 "6@M(cLQ:y֐s=Wdn[sʦI5]w%ƁS\\%/o'G >}:Ncgw!r~ kN6.޵EqR v [@O sN%ΫY鴳BGf;? EC֬eF_]gD"j|+Щ]Z"?r.M@h|CIMrUGkd1y= džB@D*8dhP:91ͧ"jč)Rg;6 `$ˆPxD hV)b$ 0-C7@r|%a>.l(vbkĪZ87~~EL[Y#_~01754sRrt)r2{""VZkB*xahoauab;[- KubBb@?? RMKg7fM2+ҟʐ&ѷAq+b*g0 }{!cK^|<.^*F.Ci#H~n !"XJ`C//}XEͲJP8tn54̎lij̫T{FpHB:($ϿA)j^MJ̍<$-vG |,&2b9R{ˠ[̢Aݧ %Z#}W@xmy KzvFJœ6=<0M pf T)͙T Q /1/qxx:\Y`z\Mn8B;H#I6nUEv9mQqc G:2(@aG1Q"'˄gKd'uP1lܩɟٮ1~˂_=nɠ+$ĢGaI߰ 3wgͰikj$rɯ8y_s/9L4~4%_.~^b0*qK zֻ mկf=kE4#_Zbc;._Y^o+uFWOh> "Y:%k~U!/tdJd  2laGwUb{\p0$1-)j$x8[mivJQfB b&meﴯ> r&J)9E_xNd\_VRSk/EPl\ָ(:^@$ޱ[Y O Ap2:> ӯlV+w`AjKqҫP3BZRS|6V%^7Ur2Y dH]&qZi:A^+FEШK-] (*?l}=ho"õ^vr5xMhYbʵO]/يUZHa.x6WPm# >3 \{[3h"A> z`o!ٯBn_%eXX s~{I6s5֤*XZB=i+ZGE}?;d.Ir.(D4 XeFzvϻD!Aߗ1eaQ֓ӗC"*u%oijORx?y~>o"1ئAJ&Cffd+T;߉\Ñ jbϹ\:$X`|'( cZǫK_E[͐8k :N/^#o ךZ]$ ˏm1ZJC]|_w酎RpQhװ6*R%Rx#g,{}k#{H&_9:aP W'S&'pK~χ9#cz.րtP8"}7ng#X"@AjR1+QaLf0MW~B$`Rg=tXy&`2%vӹ悴B5;_1z#%}9,Jn"l a,W{yal`@i>lލ|&÷}KAv:Bl]@xBtYnT;;/THVi ({tBplYT 35*8?SE{XxWݧonc6L靔6#vnc(>`2 : w^gt:ka&v i?GS̠7)m/@6QIgS .Ϻ3(pc\ʻc}÷A7ȴ'.*\'6,9m8gSgx"aVr:[AߜN iP%-sk6r\~R=w='r@)Iiϵṅ#O;-/v+#2A纀_Y+HY2EГl+"@ U*Z[%<jxCt]OEF U F+X a%p^#|Fq`­Ȼ0вU K6WSQ jٯ!dAX78u icSy۔ ٭ю<2a҅2}Mj\x {Pôdl?ljM3sk?1xCհ!>5PLq=M7%;t91YD\fW5Usi=`0 ٭vݤ?DTee}Ƚ88s Dgm< ZhrbR<)aL-a`\8 B M^'D)ixyHO:LV!bٲ)YέshtG&2JD}"q ?5:g3DTjKECr)jm,_車{Jfۘ/#qo+rۓ2:ʁa;,nO @6>LLvR pl詇s`2@Y-%3sIaadņ!RB3`|'rr5C=nKa֗+BJ⺓]?Du!3Frj7267ew6еHuws1R>5#7$sXE] wȴiB oJZӣ[ψW%;R'Iύb\t)c UN<$r5PSP4V)}[j0mK4m "k\)l[|A\'=LWq{1#Z~~pLsZ:I],uax$l;0>V8s3_~3EpVnɈM0iofzB+A:f0[ޑOVk]ϙ&b5%AD.,_7KKbk%SU8z 8#1V4{TVT0#S-.Zp\p\=?2pM;W߷vIXuKj@+9OtMX(9!8Ϋ%Xl|=j N],O4ռu 21EB[="zw'gѕ,*,首Gg#][hQߐWbѯVuIQjYb=ȥFAdJ@-51]QOD/XxGOu 4{'RZ*oBlsS %4'ZVX7ۿόיmpd  `ۙ‚2ix63-Ki<: v: !WGO"s2"gFCAH~8{A4cRG Þ SmČo~}j!bc8'ĥNj$avQg*+V[ȈH8H@C̎o7~ |L B(bRoc-:?kx&|e8Z-+BZXZ=|R0o^4 GE9Gӎ;Car:G@kƲEtv>\zÍ. f6ג0Z/H 'Sqn~ z,gai5D7 )(Ơ^q3a5?AvKRaJi:^bh6R|W#@aᏓWsWy:epS)LsuwL1ʸ7pNt=`$DSƽ$_~ ߌ"gs0&qb1 7Ф :XQҰ.#7+`DW+vSP&RNN\ M:M ?G;:M:rS4UL'#8h~k*jC͜k=<%wsd-"Qsq\>f9.0WDzFYc-\{ Ç=i=n[G ?wwע\3OǬ~8Ԯ5!y'Rq8RTB~tύ<`wQAKau2p"I7:"<[ mYNMw;q-NvIċB|ACSÔ|̄#u>Qla9hhJNVv7*L5,~C(]ܙVpy4-g0b ZqG3>b~\V- =yC+8ONd;}gHS8Y{'#gr3˱:qH҃3z9 躢тTsHvUs\<Ѓ@-灯{) "?7#DjZ>!(P%Saa56R󬒄~.NX9}۪#>8м$]G 2[bMuUf)63䛼?b?[4%8/dniee fF%`]0.nj~xRVqDG [X>j'}Z; n`Tgtl.MF?a1d}񹵩Jm:G 悺m.}S/` Rcu4˄T~gBwvƼ~ǥnl"79vڈ>LȆ'%/)!G(ƅb"uu2Y\/Rjp'&uIQ f[OnԿcsU: V%0@C9I;Wdd;T;U~Q?*9=)eMəޯd -tsc&{!zo@,Zeˑ_Fr:CXV4o "tv\+iwoТ^|330xe񮠘B0J`@6+4!iu,ƪЀZs#ㄎ2Y_= `_S2RS|xWL Ѽ䷬4Q"N5V"ͼ!m9VRk-#V5wcl@o [ cdȰ6yQ26ZNgB B@B}5'/V|i"J 94%j竫LA1A6 r‚qC*nW01QK@ϰSpFO?%h\5y 'ۺq"}Ծh %M99/PH">s> E3DL]ng 9Q[YX E߀+*k,ϬAO܄*e< :$F GMp^fnz}gy$j$]V*Xnt{Lea u 7kG; !0X1 _3ט V>#3[$ ;,K@6'JgV֫D3~&'Ak{ H E8%EhsϞiQi\ZҊ~%>`kI);_ -k;Pu;!-Vzn;;fEZeps?^02L&uU{9 /߇C<-f9'EUYdvw17_?#\Oy K'@t' Tl~3SgR]QR[Bx}p ~_ntraOiAQPHX͟Pfƈ (dy'ˁii ɰ~y(."GaIH:2'xhbmGn{PT˗b} ZLUQHa1|F\R@'w8m( բ}yg0QGy,֒F,'|t*A̜T8P!Ry}[=&M]8*HՊg'A{ RwG(ۃҞ9[bڜe1}#;*? zGoα`;֋1._0d Vo: ?Y |# @0t б94+1:=Vٮ~ =7Ja.#Δ5_߈3]ڨO#E?L4dX%ytd \yCb=H)uKi$DJ403n8|`1L\4 vm_mlst,2ćKȄpvH]+ ,+Yb @.V4eғkUsRضzr&rAʪjTGwk<;d  rsjv^U;1>z3{aT B‚fI1Yi+.V=Ă|;Зb3mhae {O_?M†CɚaSMΔș"&BUK%k>nB|uj`(D#kAFUI?Rr3EӽyE\G.(r6'ǪU;ǚg? <`#$L،IDu{1 i.qS=n)#V36d4s:5F hٸ2}AG)X8ΉE^ 1knL.@#CaC75RLjOw񞕭-s6~UX8+y'[o Ffz7J~@G ҂ SlG=1*O;hxs0Xg@Wd%!?>)}֧WW1Mp8]IR#pɹ4'Z-*bvA|]1栥jʶx8(7#,\G9 `R\6-Zaϰ=z#0X]ӜZJX'lA<ɛ(ߊT2n˺v-lLCwig1 T_m~me HuoUw*/C"6ahtUuf*]g$ϳlEl-#?83d^XT*B~E\+esCPz2gΨ{}/ҫBVA: atkr\CC&>C9ʠ~`ReE~emv4M@ӆ;|"+qj8^IA<.CPo3QH`jkdGqq<> aI=%?'SR[@VqduH9?iݜS%l IHSvJyvE]NM/x "ع%/ ӣ X#},>]43Вc/=WOYK'ÍTܻ"_#oq Fw9Fy\^_`-b=] U6 s|Y?)sw0_*@F^4DyG3A{bÏNJ5}* 2{h g6 U 1Ͻ|'f5l-cۊhGu@DYv]ر4 lk 0lTܐyځ'XʋCϾWt.5F0g5VLrQ:\D?I(8F)bPtD-!)p=q|E>ph_YNIF$@eO,;oNZlG)(Qe;:gsA\̫9%i1N1<#o3x=E$uO.-C(X?6n: Qfvd&gYظ-^2Úޑ*{f9~8o*q4Sx \)yi:olPhxpQ[:=?2k Rƻ"pP7} ndzxkU,g. p vQ è)8?U#`r-o]fb@mXbW Ap/I֥*Zo`* A`[Ѕc#0cV]F qGӭ˦ cn+ٰpCPbi*u5YSe أ>2BH LFUDxH1?<7&{49صWͯ (H=QӀsǧ^P(]d`:f&H(0:n&+G p_U۲9#D8q5k)Ї 4 a ;X$4Dj  8\2 |DSr1A$}zM2|1ʄrY~y԰S1+ЅX-Y=[aJHlfiLBĉp~y]>Ov@Cnm eBIcٛ3 4:}E"cC@0BH1P і蜒 7|C:a .A3TC#|*Q B]&Ǐr#H3()7_(Jp{1w$yqMb-a)69^jS\31~')^X[ }l𭡴Y: d]_P3ߐQ>O?(G-(w%5q1DH r9䎷Pk.Yi/|л_,zo ǀsX]wqj r$堼}3%+bV*R v2Ima.;csX qffgőu0&*zҤc4ZeGzu/ZHز8as:͵k>K,!,T&GEJr=> Kpa"2ؽJf-4' A} aU%H ;Ra,\IZ&| 6>T~EcUk!rpYOxY:d 4j{uzjB2SP~sZLtY6!V8~n R/a[VF _Icd - sD&C$/Lf@풙XzU$mf6O q ,1l}8/P&5߄ ozܵ"۩ѭQ Mׅ3t[Zsh0fri~a_} OPՈEFv~}U`4 61Us"Yʑφ״KP} 1n(~XRf݄14iaC79P℞~u{N %NgouMB](h+vEd_q;dMnSZ=.dhA)3mMkld55 H+1{ܜeL+5\%<ԊuST|~.dS&H-&phC3`œ T҇7% oKywj-4Z))H2jյn<=^*HZ%yTI'oSP$+Gh_i{NV].ιuv3 +& ꅔu,fPVKi)G&gM񫸀P<yv3/[ODq;K,*#)MҊKAv>e۽u⌌'0܄2#$:$f'c,I Bd=)s4bGFt.$I$ɵD5?B/E "gB!XxrVvgzɳmZ6v*64kU!e0<)W$%8ҝkX/Ώu 71vNgJ,o7b͏[âP:qL\"Fju^OTD;dqmG?EQ݉8dl=2E0dkkծ4yh8,j*HK`|z9~|ȤnPV%-0[ :*W/;)Ԋ|)I=oU't_:aC%ɴN6<R@44 ,ڋRvyz'憕^R&Fd4=5K64zMb=ϏƐYn!dQL@HkwZaS5A?iB 0 ༈WG AD5W95:R[ꙤA2Q$ 9/ \XRx6?Nˠd* E. \0{&~gGm`ȩuzI]!_>Cb:au-C p1>Tʎ7Mc-)\0±&>UsєVK)ԴAZ7@Ɵ+{ d^r ԘHls[8Y˯u|20,,D T5j٦ &r?Xn)Q4> M`^j_Ehf( d>2c0=?d.QA9o?0/Er|/d}> qZ/oLyX8R oF`(.aldƒ'L-} *Гb|VQe1eaLS_1j&V-!:s *oMHTLϴ%[˔ƶ+ΗV3,B-=E9gd꺴s+U9)|rqZ8xH77ڌ1>"}PY@hz.Y(z:#A^;@siUGThZӜ4aYuHap!. %O8|4:r'_҄Cw>!}ބ&"Zi)b?eyHS Uu. + -iGq+Bm&zMgcIN#ngf3uEK*TpI?PB+n$49ƑPc9/1/gH]dJY IJ/JRp ='PWo$e T_ 3`.l'6N+ԕ'i{]a.n6p( v%>vPn!җfK#qre$TqRoL[ȇFr &` _qAåGYn 򗹲XY>ڶ'ADXxr1ev]C Lk@.DoJUvY-S#3uMoGtYD)hmaR{ y o@|X80Fw#MHx#ogH~d MT'XBS]-7xPƧ@EdZK\G7lQ`( :G3]ml:Ԣbۺ[G75}E/{i/G1 o@9x8䢟y'4m,P'mԷ$|f[ g[اS[)bR!IDXoĕX=**VUb懿 +z(jYߨ!ۼ<ҴzPe݈dN.jO1%F6:1/ĸg wlS rQD~aЍfS J0heZnqw@*Dc}`IC>(p*vөM1GX e%o٘,q:(V4x!<,:r!gڬ:p4]AQX"BFkc`?.c ՇLUz's)>S<6?T?@w|NOr'wuQi$gЈgޡԻ]qzLOk*7$C()W6b1z"e^ b1yXƢb :Qr7lϛli!ZN;(5:Fѹn]/ԃ)Ү2vB~J6AH>Q̏ .J¡ @M_jZrꬦaeIo] yjhg8xgglҚ<_ j( V@&b3op90K&D% iP"2o :WIiHCh˨PHP/ :sU5N.?Ԇ cOm;ּOvF r /:ޥQ>XeEg!^|| @^RM;[>b渢{ xD㠵[V41Wg|<ˡL/Z"~# [jp_jfWȞt'Au)TBQ~zo&\u`ail2^iP[Lc6o3:pY[47t$M=rc:%Ub A! n7lR.JGZem %8^no29s7|}q~M'f4 QD&فRxmntǸSϦޜ¥aFx ^ؔ/dN-J:8FhbGHvh(d*@ 6$bxB;(׹pU/|~n^ݛZPB3$d Hvxͧ"* W-r;ᥜqi|>CסjlvXi>w#(9!s$QUZ>Gь"cˀN!o3xn\qMa<<(df 4Kk3c3ٵì솫&i{wdf"# ^ZRDQg!W@D\K% R,CBXɼZaqLA176m^鼀ry#߿5ZF]`y\kqC,:6/S [6 !;d%Sd9 ] T7hYCҦiR pv_ ,vW{ϾJSW瑰Cd 1 &7"Ont%9E%)zϿg omc6Rbю y$m\,Uw[0<:z?R]RO?L.t:@xlҬB\Lӂ{rXq[MRLoYtZW_U3B/^#<,*΀nvT}6azAw >ZߋRq7 (Ё0ߢͩ[IRlo8gf< ҕ /q^S&`$_d0Qc:ݠAAitppL;wPZNjZuYHRv*eH=y&vҰn+Wv!5w b\#CTx,^1WAmn]g-SrY;Yھt;\Ɣ?[MV_َ^%ժ) H&mϻUV"{I{oj矻F቟3i♼Qp0X/gjR:N:Cv,+ʞ ,S/F@VN!FrDGNV6*Zռ|6gw)RS݊8ʿ"Q3у;dBu)! w︙;s2J#;(}$csL*F#C܍\o̩JaHQ66ǂ)H> ONX9;{g{* !O-M}М_VN9$f!$- EZf´ZC0E𔄌"+}]Z>e6R:y.3: iק\r`NFNΦ6[Y;৫IxbjdAM"&~2 OO34K\dΘk 0E|a [!車is[GP|IZW;l!T!WdYʹ".hq&4OrS}ri"Ě'[Ae$|H3i;>*g'u^*Bww7h\Uvyn|auSRrey[ Fe9}ZX|Gq(2_șO8}Pv+Q<اA4[qU?nȚAl8heGqLCf,|:ΌFIdU2Jޮ׎Ozx9Le@:#=t]~ c@ ޙZ*rP*@l7P -8dѭ +{27EyM+|fʼ=- x(`EHksF5U>9qOUMߐ>:2LeuB`K=p^>MWaeCAb`OA6hBRrH:;cWo;?h_/Rgtu_ai 叕}VX\cZY%X(7Po .&PsuM`)0M'UĬ=l*4#ebe]!PfjSM\QeͱU3j׎#N55 by3y1t @#Y: xqټ rFik9`gx=5$ɟdMMq'`U$ }H{,4ٰv Q=I*^B9Ջע6=)j*ȫ,AIh=~YHSᧀ8vÔ= t+*Ttqbz҅ U)igl0E%[O.|n |x޼]:BQXiUǀğ!r4(z{3ABh!5[.I'cR۴mr S'`ORbO:(WI8-I؃1>Y2Lcmo}@H|qVDx0vjjrZ~0%8=pTPqv8xW0Kcsqҵ D_HbJfKp,|eHgVݏAU&)ڱduc۽ *⹡bjjHR\ъdn۟aƬ1_c'3prvۤ:i$N=I4mBD63 cn |T3A'39*"+ZZ, CBT}y\k}53RaQ&OG^s%&4N]欻] ,7ϒN;ߢ9~qBp={ @!G-cQѺDUŵ #~&}DҵIzk?"[L&ҧ%/N7֋k %ڵ®}6*Il1xokDM|F,0ta[(\ړVT#u~ 7{aĀ6xt,EBy``c֭=?bk$xJ z`k6 C 5YK3hoTh ?Ik g,_7J$ebjnG(7Y:FhQh@zRƶ9+Zf# zۛ/4rß ڱY1@8+ `_,MHB";9-e5<HBK6 'WI:ib}>4>rR Y)C[VyBYnm{'0/u}b]g89aWĉ3tw/Ӻ͑}¤!)6*H,!Q68j6ޤgh" }^e>s~&֚Bm1l5Y@y(u\,TZ*%Z5|e롹ywO$-GáX5 <ؚ Q& ^?<H ٣P e.1rJ8 D,l}e|(Bi)pQkڨ {pNzfC3Hg ǖ`#tĐǀ朧ʒUU;,_yGN>տ4;N(7jOb>pib]Ɋ0p6AufG_N{8UarRj쾻Rp(處6 r!Lޮu?Lw.lxG@ޢXWN}_-|TP3sQ1 q23bg@×0-dp;[!vԫ~W P}بcat$I&$w4U f ʰD@>sm7{4MqǬǃ *jC>c9){,ʹd٥5%>JN|a6ҥ5˄rSm'>&j q\Gzkoǡ[p'0*{-=@*ˁ  @G1̘=B^@z7IiX .3#8"a ğ_ʥ\ԣU@pl2{dF9:W[;n.︒;wȴ~pj'f]O%cࣶ1c. 6J^L~߰OjʉAjA Cvc<9aZG5!XT()t ck(MVC/h,xu[_`ͺ:KBq$nNЇ=t.b'QCkjm ?Q_F\|&3೅zh#Sj̡^);VdLӨa 2گ-K*kqW ـ6eb,c4*zsQEQ3ʭף#0ElCSAhܥd8Vx;$sAۖgĠ^O$WНx e%蠫GZ;}$R03v:p$v),;sĻ #s"EرIf_bxyFH ?UGܾf6qOWM$sKY ۝?ʼn\V=&TwEiYw6EӦ.0K^S'[2hK:m U. AVԧd+L߼"}Vbe-('[t_OQn۟:p?FD`Kb!z$i,[6XVN,Icξ0rE¡eu|uJWN}瞼cp֕*L&NSY\ӇXCfӗ $fuvNTwb.|_rwa؈(O0Sw(Z^r/'D @X#ct`1PTVV4(gR.dȰ8#Z o[4L]Y/S.CFws*)2_L#K@C#%7BwEFIr*4fkՒ+FN(oz!:l6|Y UМbMj9gYh[/uPwh t^-.Ղ< <o]12V2zM{:^nI٠uԙFo:uB+G"jWcR!wG[)TdmJS ׆#;lce˜+kE)Z,@ptdN%a-DQ_PZ; .D|K/=W:^b&/h|K>(4<=E8slp9< {3K ' R~InxE)2dᶌfQ.fZ bˋ_^B`o͊5ZJrӰ=Z@9]Zu:kQ|e&4SNe`xi6lEmڒ$),^!z|xuƒ] ՙ|}bj=[P3ÜMcSs~ C$11X*N,6LiÅN(Ԕ-'\[{ۯ3o%ض}P\wU']߼q: 5 1lT]ԡ}U©8Cɩ@O-_oeK[=D[m+ ]` rylFO}U(i0Àk/ 29z7+lr h5JLpG[I. *\L:BOV=ר rJŠ>A+Ƶؿx(+次LVӖ!YdQ2:&S(U'~?*i2cl4]jIĜu^0ę}}}P,x\4%Ȁ~WenЈJ@*%"!V<8( ]X ˦JQǤЈ6*x<]׼6a`]tr┅^ܕ2PY~DfZ;KbY -X7gJ\BFmr\! hs[T-BYVKц0ˆ )¨W9ځ%12v5/V\'31hEOyc~Zr)7J^26[|t}Qvä'"|?I|\or +Ns": 4T𢆾}mB<il+ %$uZފB5ihCAG@ U BQ%dTbZEsyYM"ŴtnGi% 4!T(Z .NVK`&m6K5[0B~|Re|<{dR滉o ܬY!-RzT2镓_LNΣUM׀ӔW4A}9C\Z /VVa1umAofu6n|A j^wR5۝J`Mk?`\TEJlZ?TpqOϪI9^AutI$ Qp!SYW9i"ЊkP +V;|݀}wȍ$/ h<<: ~5/S f5nz-T+<U }E[F V;*땘TJua>O2.L#\z9; j$tP6HGnhN\,MBPGxIX5H4zupp wiͰLL_Rjp35_~XC`u>SpRG4M##mhUv2@d` ֱK]L\Q՜&EN 1&P0-XWc+"Hxt~+)rDGᶓ^쩝x'WDWU!ڈ71JyՈ:gzwh+ @m71i_W=7ZNJ~O(]t 4s}r GQ0ƌ *p O69xe swᒰ pq %{R¤tD=^ A}\/Y/c|u%!X;6؏*^)NŚf."Z'<0ifD} zbP :ޯH@;?CkOX@W'AA yW­7R1A&sTɽL+ǐ)뱞mI,J2O%04*/M7(ʮg6dH-D%q\J|.:/c_Z2b6LkE&{4(kpUF}/QfT`F sRX>[c>Z h2e> 8w紁'Rd{*Xݨ{"?NO4h)pVNN I2GecFe]Ȧ?k㧂z>P!оN7*1#>ZTK"gJ>#+P;^NVEw"`B/P[vtUAxrM$gCL̬ENVl/dhmܣ3͉1q6ȲőV)c3:.Qmw}H91Crgw>%;{s J臋Ś!,naQ _!?"&?WbMxiX/Yަh (P7$)ٶaP1_~{qs;.EmcցÚ1$YtT Q|䣆_ h+DU!+G#H\z\zO; >]̟"c'?%ȏnDJv*W;GYZ$6?#kLsE72WhnR[&U, "e)qTk{"Ȫy,?{F-nM-`\8=`1i{oRCKtNM0pab\?S+H2D¬FOD=qn'!~+gYo Pf"?T`fLs!q]Nj- rAȤ]_GFkfV׈ xFzyҲ@@S|wMWG0}-Ra7*č-nF)]urQaVS) 9D\xW]#8!7/ӛ-&]gq.ҰXyU,v[?ϳz2L~RBd'rP  Ȣdמ1n*S7!_O(Nʠ>K1gmKĢ iZElVT0 TAg),d ǝ /a5^R$&0h$97b|HZ-W3p`|9fG=?) ma7̙dЃӭ'H<,7Zf`<)zo5(?(@GUz*. A -!wfZ8u|89*o|QN!hq@f-Wovз* $CЖGak率7b;SMc3 < ʙ@cnz:8T=,; ]c2'PX!gW~)w3oF,'~ =F%>fRwgx~s+])3kۚߡ4{Ul*^WN%Nv%F.z,iPI'(JsD d(5&AHiau`ˍ}OB\u&' fOL<.Cto,c3&xB;51VqoVք3Ӧu7S Œ&" (viHG/Y<'uy6JF?9`w yHF%Xkl@oj%$048+u_;2}sLSNT)Etl_&Rm kPp=j4  "- fё;'HuS<_js(/`X@.yD%'{}4a:B d`\+ؼOݏD]D:Shʔ+jn礽v3۹iYD@1& A\^8-O63'ؕY辦9dŤJ\/8,7mFWrVPԙYzD$.fkaկ嫶ɽk'2lgh NbXz(]ɠmdޅ兔z~1ؔt3w鬏[ƌf>e17,[$ \h?}RtX2T odϙ/pyz {xK uH2{E$TnYb cqP?GfjYNr݌AA'f="MG c4ɓ2$~^A~N"i.a4/'`N.iXKϷy$+ ?@'"Y ouL-us^2{&e) ]+an;NYz0D؄\ؐ7V(kQK|jϪNqdjէhQPw Y oh.(=Yuq$sFhTX;ԠcGb^qk/Iz@ū ZqYMmy@/T -ҜOmv+ѩyxy(OGmn0=Co3`|$G{^!9rh8/^`m-҂~F4n\9 X (ǟH|ryaʿ+m`0say(P |ZCX{NǼ]6*["ӱc&ԍb'ǕHME.M,&եc8T4>˅N& V,x݅\ï;[D.eW{KܜyrNyqGMp˅r=UV<\elno۴XẪu|Qk i*&0:o$NȍBj|:%P[xO?-#3 SVc9|>]]ʽ;ɲ 4`A(zRijHx>)? E4? Q"]L%[\lT5vܱo2 xs1J:{?L\TplMo`fupiRq%Dc a ksA $qh9TBb ->2t=Fu g !Bwfm#UH%!S7IpL.¬ZNm}4u'PbY[>AReCRYϰf*L" םFgG۳TјZ, {LP-5]Jyd{l/53?tfm4B+RQu7ni*>9!Py穲|jz; ŭto1(f2aN$h&.vCZxב2 2^zkW.hCr`^}1nBz }Oͫ^b;'#d F/s9mahRjKm8U گ%ZʜWs(20Ӌ:ybv敤a󊸏!}X&Ι4Yk"z FAk739+fW1.:g9APסwZ _p3 5Or)*cGg!}j12(7GN ӑ zIkR(nq$ɀkPs2ֽ VA@-7e]%]5drWWF9H5Kv@%M32$9 Hʢ:+,"F;vI`(܃zo؉XGm>K;[-S$_]OTݙo`s^:{꛳҇|Z[N+uU]iV H\vD&eopQ$ĘSN-T<DRͅ@.qɤXYA6hK03=AIH=z/7ԃ')upe+>*Pc×,69L QnWxP)n"b%%d̀vӠ6l997OқBޝ]PY'ug!~v_MiBml\dO% DoOJˋӇ{RCl:q5=HlZ͓ fM%'SeF-{V\z3.ftTWM-qD2]NŚ3WloD#nݕ@Pˑo_LqIp;LOQW5pXfP RK2SuD/# ~f;%i tZ5fG,`yJdPq 8aH0Adח`!C'>b+aRsڃ3ײ7>qu{?,D%iElnU"Lݭ>v^l*f/9.jZ<1ix/GxN~U0 zT@:eBd$;ɋ{>%~v?mR:@_rt dhj5XEYlg|Z8:֔=R۾rtK ^=^{n|֙=B 5йޢٜl;/g\tXth)ң5i 3sh(Nx L_f G9ߺ@QN``~ĴyU;iYqXlQ""})>dHsɧx_OIiH!zgE//q)OtMD)J%X8Ik`WXGmh?KWJcG,`q?JJ#Ʋ圇WIwy0=E]ŋKfX#5%:1+~aޗ2o)yh{迃?6+Z /RYmC҈,'RNB¥j4"8Cy=@vZln{@B6cphj<e)fh"}HR9X~_dOwh=վG{X1;Ŷtګ<`ث(e$ӓv›al Nӄj׽)9`ŋdҙ~ sB6)qZ;7+i甌~ZN;(ڼ4SЮ.Fڥn,zu: TdB.W)ꦡ{Ft5JdJO`$241ܼ3Ap ZUus[5[v^ Y'4~̘vny0 VAiZf#3Rs*~q j\T8 Pm m1JPkZ=% eœe9,4nx|6GG`o5gTKік;X'm@Ѹ36ɘ|5ΛUͶׂ!}6Y=/MD[>=N8ؠVa0V#ZѰw"s\Ԥt.̬1E7 a054ԧb$Pwaڝ^P/8d=%!G(r+#eE[N[,YG0N> PW*zR$YQNqrF X_c{{܈战 N&LsS_ d q"juupUeEE!fnD]rnsGqB;8wE:{=p8E 9 PmIET7M}ylčJ?Dٕ>"O&H<N~ |I?P+ugP7vJAjw$ߤstV$Tk$6LDf]҃7=ϡ$ ӳpQQp 5 34{svR)BS ˎm+y6: InS+ o2qw-? .@L9t4<3V3Ϋ˓- 8/M 3uZajMFT!PuOd8P3{5-C UэL,py?tJm2ĦVpso5>(7z "S)b9k;tΦGQkwHCzKC :>ÝxE7n_iTrD7 n 9.AN|brPq iM_9D9{zJSfA]YvE *?xTca%\F(E*Hg(.;#>WMZd~U{vM//GMs \1OceQu#@Op+ Oru'~0`Y\Dc.EAQHΰ=,DœXkwUfMQY=:[* wy(tLLdegr  -9ۥZm_5kue5g*zU.="qc:`X`XA5wKAoN<~XMYKXʴiRm)ϖwkPLo&>廪$7# _潲Oo1la_t6|Cp0F~oߩU$rQlv>q ur)q:ħuTKiÚ>~0Ј-P̂UEc?RX; j$e0 WEU=IHo5Y8O4u:DyAdwt2FY#JfOv' Q弰#UUp"ug/x֨WURDc,m JuVN] pHRb l$SbԄT2rjb+eËAV(%8 0^Mœ⼴kx& ͤUѐJ+^^ƪ5ڇ. N]8v׽ZNk,$|G*DxAX\^6lg14v_4=kRɮחGt-;}X67QVubDŽa'G6yx%-0&H` yg &؄ɾݦ!Lxz jKP 3dR+3ԦA b,9 I:/*FRWca|HiR%]ޑ"Lv5%R!BjyEo3MV1B~o."$-VXF^BĢ|*ȳLXW- r~u9^Z |Ěf Yx"˘{p6`ti)V3R%StBJS ݂:<,Hײ'G<(EK&WL!/E~/FbuEdѵlUaKeW.HZ0wG1cJzm]8jv'6kuȓ7q c;Q>to E Bqy\I#BOBURN=U2%U|!(c F)}BAMpFYϴ‘sVph FP.mh0Dw*\@ur3f -;5HQfb"&|=PN5(E#{/Q!b@AX3u;ylK ]7 /0GBk ۹ : V!ٰ).B)J!=۹sxhUv^hF~ڍ1ah6MS]ZFI'<:#_9/3YYyR]͖~~x|sk[@Ҭ/7ze*l7yaE Y^VQ޹τG؉#}έP<3McN+\(*^=Aqu3̖?)2{ȓɬg呡Q]ޘ#fHc8T6JT$omDY.IXKS_ %Gr(0p?^(Gwxv:JK|%Lōq0EWIxrFDӰ`e,P=lW(9MMM: LG֒`d-S/tB/wIOY&&S_éB& `h;';"gz[Pz&+5݉7\/хOI1ES#|xIF.QTK\uy-6-cyS#WA3 !]4YYG4lb~Oɦ xQHg_T5!m4h3<`7SR973f ~Jp0,zNAR lc;St4)!GڭI/k']rQ?][`AAX7H+,i8f@! ?j1dz w䮮} Bs4c؁rǙؕc 24p4I/uRP_+D⶞T@ÕӴԣMg= {]>tv2yȰNB%xw+7"䤊:#ò=&H2hKф@-cE@(T3,: +-kv"'${J,É= IR+ 9meU+fN3wvoAK c )f|wbՓa{mqB`IRͮ;Qxr1?XegHHFZ`%[h2b[YG\pAX>OM4gQ4iAzτ#1slm^M~|~q3c9{$iWxfX^Adu#|X\suB,.i7Ƕa 9]ק^\{al\R5/ wat(բ@!VƠ!N0:#D}?o9k"|K 4mH/JI38u 0 ޡd9I$  $寘7f\˟^ 74eHH= BK'@WEiRO(Ss 0pxLj0~x /3V-h#|m'˙T kA ;iunf )(ھ'}xĩ hĝ}1/w1qj|@v =W-  }rލ qv h ϋrLWOb"&nbH y/[v?J/OENʔpk@(K"|}/K>P7V/ <ޟkpag] 4*u2Kh4|j~4AQ&v8;U6yΜ0Dv}&?ã‰d*BA>-CAr.=}( O*@fSdfQ VfTUzh-g/UVsr?d.*!*ȌF0QϨi 2P5>¥OUX*7FRf5]pqُ`>ÿ`O$gRyqK 6qtN[y|UlW)Ut]'nl]Ȏ՟%KQ ? 9DWPL;AHLo٧~T?p+@x9[6,ɤ S%&x=栃#yB֞ 16U"=u4 Hع29"C;M`Ɏ9[nup2Z,w7i[:l"5z[q~{ю-PfH_X-^[.^ט8>+S=|A ގuScwlr_D؇s6#eυt|m(p 2ԝ V.v_G/),̈)}|#겇[ЀStN_.JR̸: `E브uiBED+gNe֠ԘUoV/ŒHRPp7Gc%>N\ts>"<&5 [PݧBv5癙SG n%Q(s**^O] SE($X6SA; R!xS$vr#=-*ZQ~ҊVV"bzEՓ >޸`$!dj$iNlFUmPq+^_lK l T6W^.q~9aFF|@wek&d%.OsBزV]8Gr}%KF+hW, Һuఝ!?%d"Ti:lBzX8Z%P+\n*\:ATn- HMzj#ɿ#VrR,, e\*62scHv4.^}#I8p& ƉS (G*!4O^ORD8Z}E[ *$Z+=+,'f+pqE2M=x"Lan "I"gvMo8QW3NcϳgS+𵚿GF|*+R8x`,9`z7jz5T,fs !{gԚJ)d;'!x u(UJA.{O1 A`.\i(WdǮ㚜!{5 QSϹ&o,w՛Uhɗs#=d[so4=oXY Z*5|_wT}$HY;')2!LSdOyXIP\S#7[ IVAV *|FL!:.kKbW p9s=?9%ؤ8MDb8rS] ]6yR偗oX5_-y1>\0'^녀Mgd9Py*L}k>3$/uC26ԃJAІIuLw* vԨi"u#6|} D0=_"SL";ǏB!Ss >̐P}$!C-ƉZQ2 '귧u77L/eomSA5I*KYP4f̈́U!##D^/Y>so|@Y8"ĒN]ݾ <]$8ߌe\i5oiGw5MnG+57-7'.z#՞[])=ș F!~!^n;xXbST|Q`{Ь_jYedXl05,:(Z!oq3q4q7S [HW ɧYquq5wR].4óhIye5-PĴXV='65K-~g{ Qapx=EEvv>&c~ϩ9 ڪόZ-JMiI+|Ъ&Ç~K_L<O?UrTS3hWTc%F,&?=!0XN珲K#3{i($ιk(ߣ%ufPOӫiGc>8)%#+b@>KI .A:GѨFA-HC\X]^ wsJKkŠð@*FFfi;QbN\:<0v\2bQJPwvb;d{gث>K9ޒ7JpR+TJ>"x1Т Yquvۅ3&BFү ꓴy1f ~XހMO"0K x2t|uf zȏB51PRReH1̳mS\=hb#a%2 uHЏifPߵ A_5By#Sz1VTiw]|B+T;ycl' $/'19`Zms\V OPxK2eJ#}7^HB'F"+$ D ʦӽ-Y4I~kci{@=g>: IA4o2O.0jmbmlħq%/M,HҰ@pc+}hK(n<%exZKqnWD5A/Tw} +o%c@@MCUKo%z@.c8rcVkS#R]uoZR!vdX Q25܍IB(~`"96[(6poï%-YY'-~)(>'Ȗm:iӋ vY%[/0& uȝ*f׷gsrK<ؐC8VIz lik}N\9/u@ko*fÓTtj->}<Y? IlFk`~mn>ZSec41J9݄AL NɒٞXCݨw1FKuAa+w-)Q4( Ro!C{qVL4G=~5$Og_M. ^ >}瘟uM o o Nc2,UH2G-nA_|}ۨbCwjUzGYeB'rx@]_h.IZٮ PkW3h$ yGC$d6kJw£\P ٗ>+WB3פW?g-4V@qc $@>q!JO;rf&<&gWMB&Y$]ib1iK0 Mbf LNoz`G4+i<6' գ!;;Kh:҃ qKjĐc nj&2< b\_k~9@"EAT!gG\:{6Oؗrst)pl`> eI*Oމ (V)nT-$*7֫8*{Pai>iCa r *Ox 5D=YZIs '$<%U=Myo{WL.fcUv "\AV}^YN䖍=kN)$~Ղydkؤin1'<5ƼWk}ѹ֠X Φ ܰ(OCYbq,Hzy4(H 5L gʁE ) F{n`ANdv:1Z%n3=1p3DP|ɑKhn,CpGҗ)+.%;11/ih/0:QD^9ܝ,AHwj x aLAP/"^0} 9V} 3=$1]Eĸ V= BaYc O+?j1Y<\se6YiLqT(N0!3S0?: 5lg;w^0EC2L(ۿZ REN蹪Fv BxGM mT#YO D25L10_/ .a 8EŀH*dHd,%Şv7eB=Iuu/tl WWVi,ruYQ.d %{pƵz=hCƽ>QS~.t/gΗO5ި_{~Ly`va+s $cW}ZJf\7"40@nb\r´< ߏI_ɝg[C%cԄ9~s`%Vj}~97c*u~BxR`[Qu o4/4ۭݝȑ!*;R9b^'`-a9CfcBqD1X3s[dNeCYoTlB͐WQm5.rƴ))yܻ&r33?#?eCe{oGO+Iё/-[d3˱H;~Gd 4o<}E٥Pd,tZ~g ]z Sfn\-B* R ](~u.aT&`[s* Jȩ*q*̸Xl sX4\ ٣B3225sŊ ͅ[N.|A`#R]%k(C JX5 ?pnzH˙ch+;S6Ҍɜ1Dăؽq#Lt_ٕمؔ?P6hD[(yQzS :yIlA_ jH#NUATΌ|bߴ`omӋZ~uF;5K[:GNZ}Wߙ(H|XiƯkzWF ęt!Vv ^ZtĤ;[Wfh瓵_vɓ=ȃtчf68X9Ax­hä0 3U\yVSY{=/Me0nrij6˫Glb)qr.DLebioEU=/ j?Q$%N4Nj:<֊_n&f9`*/?AUww -Z.\HYRp8 ,wr85߄rD!ٱ"oIR0l* GwDb^m듟/ hY/[cxѣsG./T %m T=&9}MSB$1=֨ܫs%oGV]aPWDðNQi;aq 9iTt =>ªf"cO.Lfa7pm+@^FPH!q<8ڀW9w.-aFm9lybY1ҹ~[c=B+}A3.2ͫ{+?)!  ڃrGhO5F#@⌛I"hRm0xt&޼ ANEo DDhŸhfI {ao0XL.eHjK6&BX>p* +{vȌXͧNu.:餽k!RJAD5e~6]vv\< e2Mo SCxd e 5e>_3lUOHxյ=~](kH Dn%k9$;MT4/t.WsW>_}0kKAZ2Mc%?Fu;"rT& d5pGu+Eh[fAh[ A5*E0J&dl7sVeT1j26SG.58m)6>Qq322!E4 N53, mY{bFn}ĉגŅFp؎.hJ>^?4KwjP]0ډ^s$=|VVաh<"'~DbŸ.zf} +ЇIKz_]mVX*[1!ʻFjkedQF$P* R|ka]|r `lt=WE]-(td WAD]q1'5i˭510%o#Bn?%+]Dō^'8ni,i5qD]sy:'"vg?Ǘ©Y9OXkqQiW!}L@-0iA\șST.UWO{Ԑx5qg׏:<9r3a7'j-nd !>mۄVL\yGH|.QsPHIz8qXorUd>;3/;o$`>ه_G⡏dƷ1?W:9;[A25HxW|kQorL8$kY}^ *-e_e| ,=Q\eˇ_qwXNiTJ4fa"˲lDhe/didwv7 5HM2GMId m[KUլ>COTnZ(4WWo-Ǥj9xX!u.W_+]:7xu'Xo|l0hZOR3WŤo; XJTՍF. "JTMRUإТet@ݕÇuyWs+)C¦zKr];FŎp"a5R{~-TFמC0ߩn6Uv簁gg2K]Eϙ̣Ŭ^ԙ.[z{ c 8+#B5ԯ+&oG!ý7gi{0x;I_`69^% C&V Pvjr:+;ɱگN]ys,~:I{Ib;蟠A-hm)@?9 ˇz?-,< T j]iz["sh4X)/!)V5e,MgC)?q7  NrdS(6>|c"uIԷ;i{EګhZѧ)Ǻ*1ܝ3tSS >R=-rPGC6()D|!RGu"BpQ0ƳX:?PwљfN$cv%}!`R!R ial Ϊ!/_g5K4WJ7qɨf۹Mp1wh9IǠ8-Nq봳HӐg!3a ! BNj03wÃ9>Tj s3n b_IL( joh$=WyV5㘤K'ho! Or_'XV/:>hc>VᔚEaZ/yu¦xA`ھ9|~YֱuCGHr\[ !#lϥe[x5R-˜Sh$*} J 簲$>k@ox50酛Z tGڕԐuDxW[-¬([kԬblG2Ƌz5yT5-q-2}~DU<4Q(8z(uެ&]_֪lz )!w:1i` +-Y:0uE7YTlXkU{lϖ=G+eFjLJo凞-r"(9eySp"IwvtUKk#(RWnAi-Ǽboq˒MʆQlԢpQ$xHYڣG2Va̭ʞS$q+eҸJ2ݧG.2pKfXp1}QT, Pt˄.WQZmUNYLW*sx#BotoE9)a~ZGlP(- m נ q-t'ޛdQ@[M3ΥA~ P ! $C8$+WPG^sm,i'=?W6;ŭ=|Upˡniꀁ4LntCI[8߉D.k }{C8#"Й#f(}))~B;.yI.!]U[~qt8N~~puuc%`tӽ|$ d@Qqvj8["Ju)_'r|^|of(iٮ3X$iA+SbUx{"Pɦ"V7 L1x„S=¤Eс>F@P'3JɦNq7a(4B(wYCVc,$ePHR +R՝v^Zk?4؋xzrA4R(o6|rWD˙b4N#ws=4YY#C\\A!&#@"(}[|Qy2˪=`+WSa|ؕఄ&%^s/P2ϡz"$6iĐ *mg]G4aA#n*F?@:9hDp{9*3#ԺM1k9]ܱ@O=Xt˦#' |*S+ЩϽMbnnҧ0dPfVG{w6@Ƞ;bXuaRw(L_u:`VCdITUԛÀ0 zp_[ @A@iߖfw}317S HN-Q~*`h> 2R{`!OԸ] e5헔Oךɾdk}uRŒv%GԿ^:7(]f%&{SN "p׮5bT#8i#loFw'j-?nvTJvEޅKT0ڣM9yK^ '}hx" "z灑(G^b2/ј#1h/ǵڐjT :+GYҳMP79!|&-4}!fDk=PXs3HbaA3D'י8rn-Ob2OFsgqٸRѢW+w;$nyM5q4bxq,[ٝvSzW(Po0iS2|'xNBe,zu7xZ4~ru.8Iq(KyܧfgL`qeEЗ)~ľ*,J1Ok}K*Ƶ/~T 8>~u;h%XDCԨp0s'FDOaKj*UqkPFg$쾰\d9 |NwhdYED-7VZp0:lz]bLL yMa4}қ_94u bIN+`Iߐŀå66nfD9R*/Яۿw½ (}oo)@ʩuLȨo)UmJ&h.8mxtbkX6"l IVdOGeʡX-))2-З UJpɂBRV5Au&朆s ÍIx2}!մXbC-Z]חRhO{FYcaAyv=9Kpջ8_!n@-E{8^D;$;U>)"1[AI߈0Sk:Ic$[uʻY},t#{C7dcgH0h'a* fq a%+E{>B~7C:|dr=eIJCFX tI^1O>Sj|.pNKJSMt߀X`b߽&3g6&ο[|^:$qb,Toy`V;!p-ލ+1>ac8epI':n4xVl^N%K|EOvNC*o<7w7N?:ݣ1#堐 Xxb2.L_ऱ4QjIUvn(,lC鍏a:R!fAi WsQ͋nѺw=d~2ѷ+I|ҩL,[&R=P3:%YIo-#˓- *̜v }X΂!=[L^ޏSB[G؂ 槯d,[H?4-0q@7Le,g:E'2K cDDN5 Wr4@XJ~>h‰:"[ة?6;7T Opcol HNwӥ7_ӜZp!]4{~Ot)>w_)ib+iX{Ơlc?m FqYF_^UE~KŒZƠ8V.9Ho+dQI 1E!s Z3 ?nO{åf'5JsEX$0)؊"Ve5O*[ۿS2p` B 4]1HQ7|2VLPmw9˜B3"dI@,;LQjb'm[KދɿpNNnY}nՠ|Q%3u"vwê1> 1YdžuH:rI lO6d&\nP%3 7UlbuXf2 j80h<>ȅDnp۟(j;>lgKrs\꧕en[Tv!LŌpSK'>!3w)~ƪ8]^R<3RlzX+nU6%ck_ty'IkhF|f*sr/9{ۂP:1ǿOYXZ& Jo!1Mhn ,mJXt( ,t:$2b܈;Tg+^m0 8x-%%SA,FE7%E R7Ms U5Eq#cnd'dV@ϑ3oz [a!.N&rB|Q;= Jhj(ƏF367]r20::\F;=8FrT2 {9QD`\-Xt 8kEo vx@;ٝG`s%~&\q/ZL&Q-ZW~oj,̓c"3,X!&k3yl:O -.ǖwj9¼/5i:֤š;W ,jꙂ][?A:P_Hu6G5C[Wėl1OFP8PSM#C0J-4txYsMJrZM%[>hQ5s܌ xPkvhAq/"=4D3>/‹] h%^ ;Z9K>)|k,j#V '+l;2eNAJ4giyGux8Y-X_{8)|Au)V4wIZ~.a?  6EQ6lBil4I[`=a`kzZ[sMUW7GǒHH\*|!JJ\4N^=cKYaD_.t!z ; ϱ#O'!bI [9A}O`:=OȾ$['HU#"{Tg[?YJ e]ux1s|9.~uc>Mfݝ?Ô=^*{AۼzXآpJylXkF \NW;Fhi&jqlF D\2T g[PJiE@w&bH>KN`g98K<=Sh+BBERFz>g-B'%O'zMwzKDO u[Jx=#IbJxGnw_|p;FbdF3ѷɋ[ӁOF)W|(Z(Y B$h2[~1C@"[KƭDy;GH>,ȱ!:KN5#N,pH}d;<Zh*Կ0X#^\ >(FO#c >3 j m\cPSqW(\l_b^Ը-TU v&+ "CFH)-9@uetaG(gFwWL4n úz{ujv7NshB#6R?[@schuVs9TT>(o.Q;!d&fY,fsZ~ͬ1Z3Jh] ?rU~|6+? u~.(O}VYFʪ_sm5_i]f2g?' (#D_^moPrK-i_T~ip(\6ufYJM-YlM"q%eh8`Ej&vHla!EOw_Hwb9 UUr9!+PDI,?\ uV?7DOV"kMu*V^9jVȕN!'x?5d(ӶIPL#}R9qejGE.xי'-V2F_7oBAҁ6:Z#O_sK+{g,ݺn,DxVo6AڍS*SO=)e|".jfn2Rjw?B}e:S}]|'U>~nJr1Q[/yi]NZZ![3x_zDV+1 HRA,Ivn>ƟY {ʁʴZ oU#WY%# o|͹Ə1%ye΀qqnρaV"uv@$SQ;Z{AmJ2_'^\$ uޗO$Nj]1BZʂÐk}k^V'mi%>]a!TfssB=fKf8@$aT(ǧ z+hCspM;ly.\:I># "'1ADltr"5L En*4TDvr9})¯ڦUGk0вx' J?j;`Rrt'tws`JTsv2U2?unc8ɝZ_XFW8ap x:|3z[ӛȈ;-0O#iZovx&- v?3O^\ Gm070]'6 I!{DnSmÿ@j_Czs쬗B),f\aOy@pɞ+P'L2}-#\ATsm8vہiIe(&ܙ  ȵ  cJ~ܽd]W=Q(FSV}̯pͷlmQ*`ge7PBT3Z8,I]`>wSEeϫF jcyhj:(/#cf?P˳}hzpS@Bftf:5Y;qIIJnI(,HjgSj{sqe 谮B4u8H~Rȇ qo; Z nj:0_`x(XTŴSDǔuwfsjdKpDȲw7gݸڍ@ 4#Yb Z )x[I" `|6qwEs(/nf)nt$vo_S o!i:k0Âl Pp DN̜;')r.IpuQɞmXdќ'f g{\Whk0CKw Omc^ѱ+T5Hi?!M?}͈>t:2m]MP4˘1QoZETDIO8[# őd14XΙA~N@Q8]Y" uDE633?ЗL铨^a `OKa'Mۅ\9leTXu`/c}=;{%ğ@Ǿx~p.&N╋jXH^nj0_DVw - loȺ633 <L. :3hhbK}%iP4o7:]{=+]ʋЋrw0eIz²È=gm%&`E FxRAY~97D1;𒘤)MkHTl'1?n`)'<+)sˆ؃NZ럵Զ{cL,\`=f`DG  ܢs<\A.ow/+w׹@*5C X5>]UF8}Q#k%75ܹb/We\zԜB {W!SFfA/'RDvgq%,m=@$,{˲32zI"xmD:ڟkX2*OЫY#ғ+L!9Yg5`m}I< {i P*o VUZ]J ghxKg3; $l#M)nύz}:U$~?_rjXR 4jhq\6!kC$\ܷnTajZKbI3R*z8*x W64'B{>"MxS>߿FGӜRI8# %#R3n2h<'AyZt[ya:t# Tdfsx=0"3;OQONjj# Ly/&|,#uK J7 <'.E0 60Dh) kSvpJo%'6H֍prj#(28+6JdB6^3᣸]<gV&{rWHhb==|y/pub˄{9oi(]AT@!U,I|H7;.h>՜HfiHGjj&P]TSŤzbe!x OyMZ*ϒr HP7aݘYN0ttĊb]!{2$Ynz{1dMqf9S`gS_c[ ʁEV}J/_ 8.tLX֕O4P  !9v/A4#F2d9ex]"5h(lNZxL86ꭼZ-؅6{v۽3S[WO[Gaw~ոñ^-O̞ C2=c9Wxz-e) Vc+wg0W#uZMz-(}}|ǟjC\Q?:aJݢI)V@zOF CRNTrͧj?EZ O6(ʖUZKh˳@zy|>'lv'£[/+-ZvQ[7iYrinT|1 USrmy1R+*pą99couʆ 2JW)ٷ$t`~ؐQy xG%-hȣ:@fLADpMἍZ>Z0::fQV?ia"wۅ_8x .J$@hǽESmL;%F+E { OvkH @DElj\y!y׉ح]t~L{g3<7&TXHhe:tW y)ŵwC/q^\.+"6oEPʐJ=mS*~ F ،\/VMxJ589 U"1'VQ4A3V%fҤTXk+8;]Ϳ5m79ceA.{<]R<|:t&cw kRA$0r6`yհc@rakr2٘fc~ ^) 5Gj)h8&Yk\W^sءFX\M;jRꓑx #O;q<ÇMv3__==}Bq>,fWn g[O}|#;8|5f9<] ע*,DoXoj4y G>drC2Zs۰u\xdjkG{W xMa`=Yp?ΙgϙC/A]]FZ* NV>N˯A]<]TM7]J33zt jOoY+ER-t/~b ˜ݭj* kqKFz= 4@k l[_c8hƁA&DgΫco "QW!/Nͦ Kz S/\) [836QQL3lY2(lma~& 1jn! =Hн%rc>9@D%c1-׮K:_k${@6 rS:, .VO562ݦ#0Xxj| ZlT0B[R@Է^vo/9mK #׶bU)480b@NuMI8eihLtx&jr9zlNG&X?IЏMAp㰎~O\(cmYYxd*`5ͽ5HD C˥+QvZP3N7>^bR遘c3#-&F}^J?5̤z,HQ|>힌{aӒxj32B[HF(SrSK*MOa"i͵9ųcʼnu-ЅGP!tmqKeb&WL*QjDp.Ze^L(T&JsCPg\VW"Tb=R@]/UAZzJ,. &{5rq :3A}Xhz"^ 0PW3U!wnj=qXN5L7uQ A,QAdN Ľ\bxvkb)]ޑ::J\狃@ä{hfW\7'䩰v\|M,=" a`^TFlQR~s _t!ȍnA&D^vn@ϭ}h!sZ$[) ,[TbƲjҭ[/4,M Hizg .$rVcR|>́KkZt;%&Ծ k=~ ڬƇmAО'x,yuS껁9$zټN7g 0q4d}G`scށrg|<$jݕ߫/c'^;w\Ei{SgPscVÁ,Dr8#؁uzv7H\ 3=ns2%$09L K؎>#bY8k{ݸh'j# ΐ?Ty6n/PU {9ZZ3<-ɁTBM*-Ln~u-Z+OZ@ hTYi~D]J'Uۖof*aX{5 d1hP9Jښ-(;,C٦I';"7ѽW" lO{Ə/9y>_yV2A-n4аMe .)D Q o' % A"j!IN,@OJRLBۜ dsVx2Lj[Jة\;}{RSUν8Zi[0x&stQ5a K{1y2_Z/]ղk`PĈ+EKw?a>Y#[,J+vj۰)BWt_~eZ#y_3ô-򀆂.yaQd~- 'M%TAZ3SBHVq 'X~FDZ7eOSZ|lkvrPC[C0.Ϯ:@AnuQ^ptuNgxY'~y2W⇌Ȩ_{ÎXr95x[ߤ<3Ŗ99 F$jj$\{qbq);X &jl#N&HRyx-If>ejv~4u>7"dNcґBǍ*bf@Fc. m'c9ϲ!  ZeՍzWҼ:;[ω@6ηh{DcZ\7j H[ry  ԤrԢ;W1&]1Xa+,u9fp[B*B%ӃHU^:%88m4@3Xʌo PUwowhY6 #Lj#9@%2?4|U։>./p҄eF ~Yek򇞌f+fʫ4^>wD_r\=.7ޭ.)Xfv.. S $IijD߿}õ]/87id.'\zH룏{=ኃ)@e)xȫ2hIE~bAUv+z.6APtwOщGws` NmyteOV٥mp{Ӿ: 19^dDvjݮ20<;Ƹ'N@xηM=OTԅb);vi ]R~F;mN+\cL$؟|UFjk=>V: wZ'V$(k_D5)/ehnMoZƧܧ`nQk2fiWL1[*±D2J/%IV-M P4^V~ qa6cio6M_xRY%A~,.79i;~;b%81DtW3;dN2FRA09Kv|u}0ESU].樯<eyQ>dE(ՄF~@PhcQrII08qɛ[6qT "?z#kVuȿaA$S`UBMəW1 %vixvbt9pnԶs:8/Y\rqf2Xݏ[~ _b9pfRkK>_ 5;$^^1 ]E#Y}B%*b /kT ;T SCQe[ CMS&o|4cQB.Řy%fjU!+̉m@#\{w ~cEj? e-C:0TnL|zxf,cmjex*]um ^| pc8"^y`g=8VuW Xy(PőK'&-yp 2 H<*Cu~LdI?"r^sjmaH!f0oyAN'Lՙ_m㼌ՕO" )yOo'_PzȜl^47LR ?WM5jR>3&1T1{? ʟ0H2TxLG҃yL@L D}OϨn_SZ: ~֞B @;sFI94-}϶molΙ OıvشW0M^{;UOe(>0o1 9߻OB1~*{$9B˺{dEMs 2)<`{Ihkt"xƴ /5;;NH+jbg yk텎)XW~wLh/55^yRQ|65ֹ= dDM8}H5C gݸ:wA7u;HM\<{#u~&Nt_chUr^"(?#=f(VM_s :cM`ߑ@ AFy$)lI|MrRM>j#m9WgA^,Ɯz[T- yxQ&aj XK6N}7r`?8%d@պj۸.(U?TZxJ3[߱(S68l6Vo-M^<kʟC$]~ Fފod։M帧q63OvCr.Қ|&NFs-Qo+\]0SJC} y ..~̉ M) xIy#4%_A 'toKVf=r|RWYxm* 4CįZֶMLdi+!<U>Y_7k CLfUKa?y<5z|2wXh'y=iǣ0r!_QI ^A wQs mKbpHVejݹ'$ =}m xF$ewl,Zg[B8o ѷ&p}NV|9{МH-YzË StGK ݇ ({Ǔ_˜-bWws4\b݂9u"I\̳6ʇS*%m 3*リ3VxxSgegHB$ Ix|'ve C[ےqZ kv"i!qVJG{n_6Nwrϭv6湍[=;]S8P#agzm IU60%5FCqkS;ֻ6/O*_^-y㴈Ua Cycyz:3z3,0R>6:uK6Gٌbyf-Dlm@kʗW'U}b5 ?1w({G{?K6K ^2/1cb I\C)+I8n̈Y01fJ_f@m^vR[癐EjKŭ["-I" -8]0f)Q*R JHG|fsVQ/kRh%h J/ו0hYsG9b;_Q|?$AdJhg3X~*Wr ~=NZ:JA)^8AsNP8PGhɪn1%ۯF&+$AŻiZmo3'dzxIUcWRLYO @`rDe?tE"!ǩKQ\S*U/U,<:.r. d4E2ס5,f]Rx|_wJN^_ۊICNי^s@{4ME1eΫC|y Ic(c8Nz[-KBE@\n m7zK@}^"GSYgtgkX vI?c;t|).6y4}X4#S 4=:Le/8/cj ~XǤuL䤗ػᨘԏk*FJ#x!ì1}w&Q?PáT24߃qoso˯m 0aݦܽ\uEFG#~ȱy Oa1r%姘pvlRNT|hh0hM%bND {{ˈAR%8,14_{j`7/Q22QqqwR򲐱 vk0ٕ9#1:g|zt-4٦1J`Z~q3L;,ՓEPKH+>LMZstzB`@9|+%@"0Ejr˫5<6A hCiM a&u^'zu5?)dTQyqj6j4G #Έ<{(6`B.6LQ,7MR1HA -yfQ#l2=иFl[dO.,+JC&uVqgQφD8rn{ ?A8{h""0P}M x+}A8q+MkmF/<9i0LLVHkGn3\1Y#/JX84He'_2B#foE{q$5teى$i?PV|gJ;H_5s@wȧf  e7A\,e*#GbǞSDq8kNt^U 0z8#r9tlv/,k伵#1ǸаDf=o6DXe-Gq-E9L`z1ν~LU_;IxT:VN˝KM@z >z?F l*0h &Wp-U\XmtVVA3O1=|Agmߥ{w`^ {߱07$e1;^ʝ7RecѤm/\)u,Us;j { ZPXuCZ I4fϴOB::9v@@bp?+[nDRp_@Y*;J+z}SSpY8yE5zČm^9\͡#zU9Fm;G bIYz{ 0OY,B$z",7E8peB'fmiޡ>+j0۟kď/(3vP beO׈c;Jx򨪤#x"rOK-͂pFk|'xSIa(mbpc8R%L||*!KI)|B.Ӽܪ0~zIn! GwPǝ6p;&iOr1]H#w$Nt'tvjgjN八Z4Gr E(_%SՈ̀* d/Wqkm6(n#"ludv!n=hÜ!+y?4uo;-?;w5 _2a,f%gq #g4i^F|]@3:Hs!^;tg_fO>x fzz@"I? M5  {pc`s&* +ZZ 2=PgݢUX &ym@aZB#FL*Oi[,8znDn^Ƌ(w pxpKbͅ<[j}Mi( H~m 6iY(&?= v!T>sU Xebgey%̏#gXe l?_xS$bۙ[)'~)#~D\]gA—-hFvIڨc }OTu if`h7eIK7`a5ݢdHzk|PFc#@{9!]-ytgH`hV8-1Muo $j i~.DD[OƹLfX G;vʭɄ4U6 N9^bi(4#rGv{oLx0,ҶC$s(Wqj )){p&P~XjRVkeMҫp='Gexo֑͹d.c8)j;/ˈb}C7b qKs<ھUoEP xRQ1yQ2 l9G1b8;nM"872xys =+Ee|帧otd,֗ 3NVwk} 5qYU̔чgO%&2ĐuwiIeЇ.$ ft;(>&fD{vK`Q&;+ߏ"-]`D{?!Dž+ &Ljݰ|]\gTP ZCOFi@Ў6qª׍pޟ0l;ohЌLDq[uh̃CeH57*dČ>"Y@]I㶺dȤEJrv}D`RK jFҴhhX.GD$]]GnĺB~wM ߤ03 Yzi׍͹HX ݤĦ'?]0*{h9ȡL.vXK^f4? TxU8po=Q+JhY.;^zUNߥYFY%fp&(+T'ˆG΋cQqΣ CŌug%Nr꿃oOh2WsJG@w}N{fD1EaS#=^GTrHvsXjE ovЕ9ӕ[뢠 s06HkU)<|\CװcVS "\t~mX^- Jtcjh~QFWhAj.ҋi+F$5Q%3VGT|qY|d<LaEY1ڬt9uR*-ө(_(1Y^|ok*oI]DLUˤZ*”Sj1 (Yٳ64> YO)F4x=lJNg?M~Ԓȏ xku_ג^Cayq:V+ݷ;0RO{$#t 2S#r ZS~W%0J Lq.1xe73%L2f6FlL]I`{j9S7Wx*A)iU^'_xJGA$(FY=GuzQCmN^VO+I^A,PEt>sRlo(. ٶqXO>D'3nBKwh_8PJf/Zm;׽m#$$|#VWzRUͦhmTu0_9q_Lk|*K0[r@% f 4.sx3?PWkvLYlqއjy!Ět妳I1cYä' W4J&XȄ)'K<ܝSS؞aAs\90jP*LKOif }TFߞLۧ* t-.of,Wi9s"V8yN%ܟtOT_e8657uJAe;3U h,=?ea% N}ݒT<:w\5P$2 9ݧMNKsH3](Bx/D>8?sUC骖oMдI"{" ?a?Whׅx@A&:?lb(jK?ϓ k2HzaN"Fl4zS9Lۼc;(5Վ_fD+ ?IpTv$'uV^ʼnJ 3R{0"z#D;/BiR}>LM8׉w$,KMo6G<]S&FwU)5TIvmY9P8%ac0.8ۍ Y@ *Qaδ*2:"7];O ݉=s`@b)tQǂEk;؝_ f" ,A)ߋ :doXìN?‹x:4c+Tx&Gz5ӌ4cSG:W(Oû`2A ݊FABlWߨ}ó1r՝ަ(pO^_O 637USBbަdj [b sߝڌ~C`]- t3RAew/IMVpN/Z_-GŲ'BD|]T"ԑ:bQ/)Tj(|inhP!"^}Qmh huIDoԾI,w{?Z d.qFΪƶu܄uCD€}2Y:B'ѩQr o7dl^ZpxdF LNEv%o@}2V7ߙ)im /Ȗ tOHR8)C9flQ95}{jOscBcU3tjxWN $baSWY.fG'DtJ,\VDvErɄ#Qvԣ ʫښ2ZZh͘wnj қ_ * KF # ?p˔ۮ3s!<tOy YŁOsPK{A"?I#l$G΄U ?hs"{R5Q921j\ylンz(0Lh3&k&|NH 57)M7q+p @pu8MO>A#tP8wK $ Ƿi#.A!Vt:AX&Ȍh]ot҅eoa=`Ę{?|[Tg8%Rmzt&l]75rII5ê$_ E/;$93!"wHKI<nTt8t=`_!B (G[8ilo \t" X.mN͗0C!W0=39?M~V!] 怓D8?о D c(gwW4X?BعS6_, Qe况jx0!"mk%z8LLr[TMKE\ /qi,ӕ M#j2̄[t:d<ߖ&g囝q>X4UA5G.)6ZLq: f-lF\KHȍj?!:h+-ѲvJΝAb/ˣ ǩ"?NWx<%[ E\I]]VIt1F_pسg3)k=ivQAP54T$b ,|U%AVyi=dArJ+hYNhQ q| )?%;X)J|pTM!qf{6@Xke-G d^͊NoY?WU+ sn/Ŝrҝ26}c::+/lchu8iCdg|6@^I<2}[!߶b'<<~d?_{n PT53ՍdC`GEm!H,3ҪK}=zh-+DȈطI^C|e=#&kU{-U`1C`}vwqVnϡ :j2$i9hiiweB&M%F)n3<\ys7?mCP%1%>fcGr(N=Ӳç5U]{Nm\$zerJLRPUǭ&Y׽>jpA imMߍ+?H]c|C h萩p5#"SI @+~gU*$EfaA]H.UQcwR *0G$v;}bU"Ub|ZRiU}\2ЍJP.<[:3Bbd*1T /|9g}m4tV"3#3x`Yᵯ( VO/溯k H lQN PɅ8xЋ?˾';ZC7  Qpy w?\Ξ- r[ms4 Z!-|C5moG&Y$:b$-ʖ:YxHHXzj_t^M@F.sq ګ--t㪂.| #)B$1~uW,5p5xYehFԥ\zPdSֈj6xO%-asįcClg-Pu6eP7×GULyG~G4n<0g_)ʔTin@V uB`)2̗-1$tC݄/q5gtܸwISmu"CB1C`񾆋 |^` S_=Å(kb4n$ oqz} _O^OVQ%6 E9WAHksY5}Q1}oʩw0+mZPm"jZ*ތ JMNX1ٮ tXLr!C|RmsȖ)5@kxD܈ ՜>cPaZzEy1DAIC7*vݥ16{H!!}VO 2ܹF4) d@Gڣ-&>A\ Fak+:sNp$}/5 >4s |G)+XrW+B7OE :Q%$,Ju5wPKMfIȣ!dYkDY3ԙ7 2iq%$C"d+)"dU%J=s=܀%o 2w:7 r5f7*MG,7abXJHɭ|w_@-i\3J0LEοjB bDI }W(ԋH'6tv#yTgs-XDl.HhY1RHXXr}(E2 !42aV됯P1D p(-^AOrrQ*Kdo%r'aͫB oknZ+ pp<-$< Y=,KNprLDǨh-"V{(V(gT̾ eWnL?[ +>DL7S1 $KF쁞]!p~yRzrūK1)oȓyp&ZNT8n iR2T@F1'c xorl"Hr'AcB C^hLnKOhAnэ}Quȇ~zIyf|LaL,P$/D 硧N.jc'jtƺVd%Y9lm` Ĉ3҄ ^dfEPeoG&`ުP%VP.d)LO:E]"!ab5FHI@ 0K=Kܶ8_U({b%v!o^`K.LiG&՟cr5^.kE}t73. %t !գgQKu<Kە"d]n=TK)u#tnC Tcz9e', eVC,g.(g\]Jフ!"tΟ_=ΪGeoT|$2U#ըu6@@&)іY^De.#. K=],.qX8l\ 菁K4 " W:8[ !./|9(a13xbDI =w"Davdk!]7ܪ- VEG :jw&FJfɌXhc*[ `tK,>@{_ZfʦӰaWGᙈqNFN&DÑV``yR-?S;w:a<,(Ȋ in}@ fEX$Y'.7〶yH+ZN7hOꝯ~Jj@]LWjp5dWQj*.|k|||Hd>^lst?tX2{Hg%?BFѐ/(Ѓw,- ˱o+tչDOOO7I)qVT7OA B/lh's}eJбXmmdaRjoyI*ݙؚ3)1+!Haʊ<1{]_=aUFdb*ӱ'ڐ'U;T!*%#x{M9/C0;OAV$ ftqi>N Mm~LIc΄exޭk0%D*QNgPEH:j$Gt*b1c :,S /T~LI"m(-߳+낤5÷GiW@rmA| !/N sѢoO6ᕄM,n5o C )'eN63v]({k.XdAŚpI3|dU9JVfI?҄XڡGP.Rc݊V}fC?$WM=!T˃+^h4AN+ !W_fF c+(6~U%艴yf#uL~ջF*uwaN~[^} L VNY~kA aW4Mz9=3!m&Y?_^Pz^0y~ eRКiɨҍ?$!\o̘$5Xǡ;^$.YVQ"29wl+cyT" ׻"%؏!hثu+@+ys\2Й4kzZ{Z樓f`^mxiitмH{qŹп o'Kq{ WpÙ/\[Lq!:T. `EiO` `ed wXvOa[}ۍmg&bqzݨ(A,Cqq0FǞ_m=uq4qvn/$Nd>Ori/+JC"JΔ*@84~!mc]6#nqW1R749.(I~K5gWУ.ka3e$y jWS =D}. |}^g~,e,[dOGކyU+ 6mz'w75 9{?vnP؛6nGjҮqZFӅz=:!/ o~.\,k uDbjs)52cʈ;}bZKpZpiAQ R&S0-~ :ּrt*Ä 1(V Ɏ9YܒGfr²G 'PmW>]fw<`6;bP,k [TI^cl㠬K([{n/ u.lqe Kّrm%\uf7c^TF| ]d\? -]MpjP&Zǿg֔4xUX"P`Xɋ*kCc4 ]T-QPX\&T4E_EEv{lSLSR~a`M۪hbTuVHݶ;]^z{6#$t(i2HϏVp-?{;#Qv}/2-&dU? ‚şr 1lӓkp"|~)݊IAѢg)m~w;.CF Mf..vD/ faaѴCyO?mŔHV' WWuR[ x`2zWGQvL⩘ѳWN ^) zBm9WO>Jc uFL)d2pS-ρa7|@ ?R=ݹ&ƞ ; 䎴}0GPMN!%&R9.c7q>~f4ji4^5ڞ lv?.YAq.bkrRDsk كdag*tC@͵p^[ ؉ѹyiɔ"~Pt&$Qz !L9 3W0-\eY^ 1:Y8sԨ80fFd$,^.\_ E ߺ T4т(ἍbsZ;vNl̮XB1!d?!e$_:U6~D?r yOj gzMj"W[+:ңC##IcV@N"~b4W_w;U54J(Ҁ)qjQS] riVCoYOH;2͌MU${&tCOc\`ܮ\?L%PY'pRv%s`MA'n&OAyG_㳢xo7JeNNEE׸~-*mfpc0[LLsT',@u*{\xwOPX}OGyIt&yE"|AK4?!w:#]{9mC77|Ny5>V8x@3_Vؗ,$&%y^;]"j^3l2)NmɕְQyBuUEvC=^|" bE<(1[ՔR`0Mҧ5/x>SG;NQ1!$ALijf\O]SX !*Li\7xCPZÓ| T,q:N@CN_NJol 8:lOh%{h/tre$9Jl!|dz s.\"fY nl팥~s 6e0lP qژk֕|gŨ&BQn(%_j NUV`3K]w~Gugq2Xpm:?RB̗Aw:. gs_GpuϵE07+%|K\UuQ>U`(M~c8OlKnwf]t-y:9"w͇cROi;QAסY0^"/7CIZyU8 L{pUZP|#c#BnI1h oG熒LˆJ;: mc!$0GjB.NK$y G+w#V~y]W[2k~Ԥm6 n)뽆I hT[RJ̣o,X"JGa7)DlL0)%0$P'IV 3jxo@[+apjfv!ܤ D%G@d&}]T3@LGeW-mVǛf^mޞ#7+[tՄ6zz̖eBdtW_ 6EH ]k'#;0 >2*{E\4 fRj5Ű1qH &zu8ΐS NT)}?EK:7ݦ1]}dY3 X6픓+GZboj[:0׆s*~H`tVۯ(d37> pVUǟzM'kpGmwftkRA/U7j 18`,̡\!LY& vW wFa[90s!nmcvTAƉڔDvd[3J;S:x7 ss*/@΍ȉȰ€"1.iuIS< ?-dMLVNkQ*YV\Ruq\<p16TtgiiQ0_y0owLjм&z73%HW>ͅSߐzhĘ,V&K(^)/upWA$~q>y5x64$>;YC3^:(GqLdjX,ă?{sS|vԗv٤5rlz.RN U3Ggj #8s {EPzUPLoQ[zR69{$`X9 ؉04a@ss*H&g_#?/;}ܐh רU*|'_E7%μMƀ># 3|K.KϬI?BNL1 -S=A:0 Οse:LVK:Su\ҫw9*3x'ٔCe'=$\po;3laby&R'$lt#R䠤};cZ -j"DYfx9mKf¦A@㶞ڣ2 2Q TOvz|zʫ'P>Žt4J*#eq2h"D3h (,`oanưYy_;H^~ gN_ciW.WM︖ba]>D#>گP#T:ԁ;菖A"8ˣ&:c: I |Y,'?qZ.H_gݨrJ9(rz(W lvIi[:j(燼\cE>׈I3|6 Y6Nϕ,HP@?O.3V ͍=#a91`hqǍ%X3A N9yN>tdC׌I= f火'@'1[2|k!fX<+|$cVR{7 *ɝFK6V]PD[326z%-l 4'ooP?[~5" KaoHN^,Zw%D^a;ESɤi4-$5Ҳ!-P뢡T67鈈n޽`ݟ 3bn 4uw#?S.^+mn% h9b? מhq1o,+TqG>Ÿ2 D a,m_qh FVjU.a@ؤ q2{U/fm7?2E\$:{ytt.|B"/fƟ[@FVs=,EZMyo(ሙ[ƀCW+n_Z ly ]{*-4CZYN(wSBqg؁(mi 9TNdn}sNi֑;Z$znkWSVPjVv;=c80̂wziT!8?dM ƙ=gOV_嬥W8AjJ1·V I pƖ[>00޸>&B24¯,Zd?#Ϩ)sI8Nq,3%},hH|>M\LIx.PU_-Zԗyɗ~&Tn4SDLs완m~[XQEJ q8ƺ t/klIJ$Ǚ[1j|O?4jS*Zuݶ 2?N:fݵK']ud l LjU?{P31z?T wZ5f>be)BqlW%k N@I'σ=fGE-ZgY.;י`MbEN(F"%M2լyZ&0>{PT3+7/ r# 7< ٮd6UU/z(UJ :/PcfLpSn'Vhrl|)xD_˹*_PXճϜ@.?8B]]tn"E~xkA9 km*O0H.[xbWVjIh۩B}vʎJh7{X29_ƷqBG6#|0ФW*;pD@FZ7\_6?{ / sp[1K-KwWC/tx mfAWP[ݱҟ| &˄O"$J ]-z۝s~Xg6#02&_m^mFt=%A{*v̰7?kl~\8zִ@*dzr+7M\^˺7vЊx<ڜcm2 Y˨hb¯^(#Eo%c y4pڇkQC|(jaR~c_W^G&4 @$O&Ѝ^ q䴼蟂fT'?JB7<o1'5Uf#%oipϰ&)s>%6 GƳD倹GC%Ao7l/l,Gb%gLs<$z bAʊэfULSYs7}El(Ż>3*`0ӔMRhNpg&}Aّ$bBVu|*^< 9QQvI墔)ii]!T 3 Ǫnx̙ ;γ;zK;Iŕcl2mp-_^x Њ5I~ũ^>bQ4@Kh_*-h:Bh7A+\岤u5|iw2E;}*s?cs}2mU 94˄/~[ص P ~.508 oƫ <'>-JA VgPZrQ0 :䶪~g0]mqx׆뮀Kܺw~p´ْ||Oe )w VM6Hx,ōG.$a1!ubWKL=^%m*1-.޲;Q# g. ;#90& ҝQ+lC)#l/ɞ5Uʸ ^pxI+hq&XU. ^m3Mq[#>U+ hS'-+n QˋЗ* jv X#"B]mP@#qhƾ醾0cǖi0@(2Wm`|}d/"X:ۗWe)*t巆_|3xkf VXA7eCV,l  X4_fe)KUx <-3mslk09)Q#&Mεvp Z%㨽U3`vM'ydz)`8-Dz9c) ⣙_Ђ< L|ë m8 xlxFϾk`)o݋ݔ|%U 7g4? T;g,0LXM <22\_ {GTakϽ7 |60C *Ȟ'7) lҋR٣/xDQ 6B>*؟tۀSxxٷ>R5FȚK@1 ]l}DcElu䓢[+_RS. ۠>T񱕋vȟg%3,Ś9f+.5hF_rlw2EE;;)f$qɞI\{wQ%{,}kt D #|ތRBGBZZ}ctvb0/|0= -(!dѲ5Et4GG:(2ZAMJry4N|;w9aghij7Rb-"|vVcxߘXI'htcld8R>},܊,t2t7;zZVVNF25Û3&}er<[yHQ7-盬%^{%YFh^mx}.cQrmZ+NMj$$FB,(۫M3{d7@em!"`.sH#됐5Hh> .jڦkrϯ S9it;F_> ͦ=ES/V \QXT;5[Smqo_7d>aN:;: "VJRQ^2y,5w#pz%t&̲K/Os L<ezCLƪSwߎn3B4N. : CCWY5Q)B 4kd=S0'r z#Q<Xyv,WvYGؤNjWFT~=Q >yt% 6\MBhxJ!*A1yA`3mCHY9#TF?Ɵ7@X" K[CNl7#AtU@Xe&ӈŁx]TagY8́5IpŞp4 iGlHA݆:Z%צ8aI`,b$G#=PMM[+=-2Ed$Ʈhq!%^n PAb;T)NI ƖSOCIJ1i&p/}ޙk>M n?SDN6 J9՞R.ܩZ)0}MMc##뜻yz}s'UIk9Gbڀjir%a\ˬ|--;њU(Ԩ8Q]O旪{ X9k? 9҅I*I`ԣԡhL8jL7aGy(^fbvXK[Wmub8c]QpӉpγ&G(b1\eMplBc eno y1"|K~I 4$OZt#bOD(+X5>Guv=ǵKeF[eݗYö֪k8Cf1W6~Lr7MP&@'-B{gIkPv)?mmy6FD4B.'xm _ ʘ!b6877ˇQ8Fv9iM5kD* ?+X;hS?0]xh(rAvϫd>gF@/Vk4>.`3FeR IzhOBmeS!UԗA4SВو)7!p̊APGw4;Ynj-v2ļioEre'摞4Ob?eKx.Nq*˓U.`^.0 ,<ɳ1xv?\=ZqLMt-\/ql89Efy}IvsЎj@y`R"oҺm:Ojv a!5łzO_4so̵#^,WI(dw'(NpN*dVl|A L zmL [<\c0!^'6Vք:V9VX]ԚπV̡5RÃtSOD$|s@^*v2{Ei7^j0jf$V8>يx ZhPå@|No+C4 B߄9N-oI*LH=u9T9͸F& zD!Ȃ8Wrnc^SnE8-ey\uȌ\cW69I-JLHhKG%*{ywW(IPvʲ6bu ~ @$^˰TMόe+U|U )]qdABG{ͦxXv$]$첎1\.WK/4)ZJ[⽫Jɸ 7AmEj Nm j(5,asq&)%wZ Yض؃BT< \:VNװhVCءj$/>9V3ĸ%Ċ!9y"JGf"`Zzne{Āylyto # r[;>v^7 -]Ks@Do>Q= *L~ <&og]$.E0{H!T[z6?7RZ|(]ϑ+;´YNGS>,BhnAQ^&ĺ{vF/xid6 -^dCUvuǯ:"pQ @(BV xNH8oҳ.TB]Ea0@M ( 5[D {Ӻ"7Jhv"|\EAp5M@%`$g o{v;y%CnSA&odօc&&*8\ pmɂ}r>ҫbۚ XL$T{,] RvU=4oL $ 0J3]5PvmJ3N÷s`pHji v 8!$vIm. _g%퐯A]w'I%cgA#!f.Dj̬DT{tZk-_/X-`O,fӝy~|V@vWw,fZ E[c\ArDžpO@ K,ʱPCG$쓶+a/V0? 0U GLDYa1v ٵS-?7gi+rɳEtΟw>op̐Q~c5Nr&GS{4:Sf4k-b7 Emg:T@v?I~=yAdP.o~r\ 5_VHE{(_DS GY)\r'kv EYb |\2,M# xt;h+/aS7l;n;x{DaۚPr_r\>+:R.Ӻ.pl+ӈDLlU%Ƒ掚]"ڗJSiհ`:H\ZG"Ѓn7ϪsK4$K yFyjtt7MsfpͭBh ] ~X?r]8^BZ~ɌP|%2bnyU\nv@|ai7LFjÔ返:@R7v?cŐ`T:"I Iu` ["i`/lunVX1m_a$DVEak`"i>ws_${z"zYDVNCm/13tR~'fRO 2Z(܍nY ќCOַkǘQQKQR9q`B4^^Zة4V[]"ˋjovf3w%鴎Sk!{0U%Wۮ;)#vvMiR y"T Ņy%]JĿE|{Ÿ'/43[bg `T1%Na[U0CBkIT|-ir_GάƾWwMB{v.dͼVR;!^eaw 䙞 sm;@p{F9~lE@ .FHJ>(3)X+nܯis.9#Å4bKЭdF.4q ֨(#0OW66y^^g_O:n>ŏ|_sS 藎E⤐k!DD+ɭ R&>X)l8F?t0yشJv%>?7P>OVr{~AU[!̩pDr|Ѫ/- :Jw뻁gѤ367cW&D8No`#Wճ`lM- v41㔊cjUWXAgVG[#EW[r-2QMM%]?y$PM]_i<_HvA@'vO`1(Zz8"'ӛ SxK 0L1F &M a?CI;Gߊެ~ƥI+yC ə/xE,#K}FxR/(s tǖq1 mA>~r"rPLfs^ 9Xr|Q+S&)\x)F\ǭ\haF8EF;zE>HWC/t w7%e`Yd vy's}RkDIh0gKyp/Cq΋SU9K$L}{&ڪ}˿JxF>lޅ)Y3W}!DUϤDB Au$Ŀrl;Z8.2c8LvS^bA;'[aT^v3\tzZz-M)&9;QԿr)m j©%](Nɞ0trT!p> Gi+tG)pG ?M)jk3I=b ;QoF q>@6Jx웍&m:34$t_7ީU`Klƣ|+0 _+AUut!kzrF'^Kf{7ޭE"_M;IֈC֤b:c3m}>fU$PUH=(NqK/ SIX9;:v<^&3m߱l^%f[/Fޔv ׻Vbh >(;М-=3̿EBv~ħ+ؔkրuK"7ئBdN\X9*z >~71#BZ/Ջ)BcIN_Ϗ,b5~K砡l)NJ #7[HԴݫc''i=A1يfby!ʻfYjzӺQĆv)pn,f= tqsq@[q ``A&D0Nl\-E/VÃȁMb@ \Q(|*}YkK ~A[*ˣצx~^ۀia٤/ʺVg  uWg7}2sVKuw+Džk611o#+gѭXọ!@#V-c 5gH~EWC-bqY40rHhRDaQ嵑k3Z1Ptc#M9Lm-<b>:pbiJ PK^:p}R *9$Š^K,!Cl 9uy5xX`rqOtM[]iJWk9ʪc N<@y\1*[g/)ڼy'O@Tf@ŧ=߽G1S7xi U+.]sf!!/^OU^QWxkZ/%u0-.A)LâόKGޤPҊrzm f^nlem;mjѓ[jYu^n ;fc$BDW3ˮ'ej>ؠUR;fqu{D{t%Ʀ9&${/'tƈFTW#V]x`{UijH5Gfz%Zz.}ĞPy;Yl <}-8=I Fxv3Bdc,.U[$:…]pwGmF TC(!]mB9v6)-%+:@{aj?Ji?ePDž.qً I#(៊y!+ʹ-@+_5-:-yͰ:1[f%bmG:ЩƵG(,GWbZ%:epήR)o8R2!AXٱpD9y˝R9cYy߃x-) /]ϲwV3hh'YwX|zg.WY Q3wq×˭,n[ K_q+Tq&/%< TOۄY ?2]rPz+V#wtc}"Zb :wC ֢61sL&}k:kF2h^m=T7Zѩ ksƊrG= '#8J$fڮU-8LЇNfd /l337/(GjfK5|ц SC>w6ǃx5**8u]ɏaM/UJݨ*ߣ*s+La,"Dw#FgLB,HZ,iDG 4g." V:ѳ:hjQ"Wr-n_Jv}D1O obxcOCwhޜ)$UP.Mh}9GmPg p<5OG:Yҟ)Fh gfkexmrZjĀM)Y{pݬ -(DlJX  cED^|=ں4ywy)32t}kl{R읭ݰ+O#E825( K Fɐ@Wi \GhĜڕ x-#MF.M9͉[NRd7R8=޷? JQU}A 6ջe'+/(Tz.1Zi*LtOB 5{B9io ]?ZҹT u*Vˈv^jB׮<t\}G]`.OVȋn˝m퍗蘆Q.R) S/')$3j5YLB}nӅ`aisFсGd ;fx(0g{ ,a>*`Pz+i()Aʌe>̌lAl\]92URŴ4>)h}ɦ`p\!j24tj·fߗӣ6}R)lH9U  !-2[51-pMv4Љ;ֆ0-tN/V&"h`A_qϦZ2u*9oy` 7g"^P1vr8Ia~)EG+3;&bn>-W~mlE%U0gݛM|F_ӀYs1ܻ]q8 xsew +XxYe9!c+Co=j Lg" ;RIJQ[S+taD}I?0Oe YxF"e5-7V/ko\"Sl%u=*[Fu_`0(-$EHWd.8_Kcdθ>}V߉ 6'MA]< tQ=ܹ͐vfbܳ@8Dd#d39`ӜzER'$77]&s~/#PLZr eE~b쓶Fi<\dN NzA:8VOFP & PN9-b1[-mUO@,a/aA8vUG:Hp{Q4ta; |d6kq G{e.~e#j/)*҃#qW brĉH6q;,F554{Y(a{kU_ 4&#WO)L-{>Lϸ/܂r"G@&u T5#`NXIv74Q;HbB?/Kb=Q0BǺ&&K: SEbN_[MreCF|o&MuNR>k2utb3Wa QG/iU]0 %wouBCKik`ɿ+3sMC"cc|9PUU8y=YFuIFjBum{pJ^J%IIT}Aw oKK-:^KMi=pOFx>ÃYZ"[7kRXQb `<̭U UZ Hp g"o2bKbE2,iZ . HYͻ I:Zv@% Dh)%{j ^.6:1wX>q%UO[T~ZRlR /QOA}ZzALB^Dϓ;RHXȁD%wNE[42HGve~dʶʒ:,Z^}MQJ&Ȋ!3TF]#I$GD-΃.wLA1yfck8"m:961}n,0= +Y|}Uޖ`JoD~ED]۹yڼX%*üeJ;S|){Jm_UU "`_#q XUxڬ:{BqJ~E-b⭚Y&`+ҥ刁 Ͱq<țqf@tp'D'^NtM EU,j77Nv͏2rmׁ"nvc;a5JSY 2*t_ W Z%*Y ùHG8:o^MY32HIZB򽔮ѭ|S7c.[x cmj=R`Ē3fb t2=S4mFvz\4$6rt9|tQ˟+ l ZZGXC7<"s%swr_~jU[!Rd]l"+aFqQ֬,Tؙ$elut0ّk+5=Bϩ ;^)T`KB鷓c,I"~Rͫ(ĐΈի$feoE/a^ vxp"R$&BOT8u: M3D XFA?*Gj4S>:wh.S/L!}sG,pP\f5RbG!tyh nz[dA$)xcJGW˰/v Ezs%!44VyցO\=2'ѦC3iVvU̓žEZT4Cr>~f%*lׯNnc1oP Iߙ9 鹴beדtށR4Ƹelȹ#ё<@Mfp&4Kc”Ht#Q'MsF0_j4~5r~t[J}"Gs)PZ(P[#EYiz /hK!ndbN"u񗣧H%($%gu5SwAAZngjfKISު c]d(s;9{n N|׷dxVc seŽRsqrZ_ !) kMU|O3CpN>4j&)8 Fб/ +}G-+cۺǿT|܏DXO/8^[ 1Qȿ>)4J퉦1i0"tpk}3vN} 0s]G]":9D5<)e6>sokjx K>:Ck+3Z o|eQun~ϰleUn7-}:5qߝ p5h;JwP  q*pċ1Ky7#OyP`ک,)WƑX ^'mT 8Km&΅/^{@E~=` ;#OhC'h>;/s_ lsF>'`V-GͭA5MvmVDu^W1zvDlU#VPy(? 26Yn4SGb'iqs0B_/0ʨ"'I!|Jn?FiߞE}B̴2[RU.*4+i -aSca%!8{'9z|p(Cz V~'S_c;fVX>Y-6,CUM;: ]m? A| J"1hɸo-x&\+k՜]W;*f'S7o/䴲&ļGVYg`dk;wcJrh'':XO q7)jX# awCr$ܑc>*֩f&4,l#]idI%c ޱu>JBV -quxhaƐ >Oo5>OK c 㒯"[^Z{_{/hM2f? pdRh%a ^0/HWpH=55 ]#HLKgxXE{V z̪ _k+e{|BY"b-S]x+=q8 rZqE&lI>W#n;tرg:VtX4nFz5.P.IA rSr|BܧGQHzm /X о{wnYݢlO- V#dJ (߃Us0~阨Nev]@D-o`,cK F?5y%Sʟxv>Nyπw !DZ GC C,+?ġ5óleҡD1ba _V `Ū$XnA`\vqJ-y`zthb10FxRTM_= ܀}*.M4kk&TuCGD~v^uS"` er;<;U'R~Fq^FR‚t^g7DsfQ,Sp"s6Ymԑ'Jw 1'Mz1[ g9meyUF ͻbjNu&ƪ;;ޅ&OC b!2> ]H2_lyI7dh) :C;gvmIRV ƻz; 4ؠZ4,;*qC 0'bt#^v Ѵؚ.f!uS!cr٦WPr+oO|P:Y&9T jiTϷPF4ߺ ҿ|!" # ~iWUЕ̱IDžWj^h/VW*&xŷuv+=',Rmzy2j re~Ea<0UC/LJ a!Ǎ,88I-T TeQ FDz#Y322:5Fbkwxe`n HwǝƼ4aܜ,z+LW|8{h+k*&5ᬉ{_N|X^|w}!;@d{/HekLA;ܨlӲ5*-TNz;Z,ǛzſsyW Y'ӷ%N[e]#QLh8wI1wCzq ,O Ⱥ]5+n{!;(9,(VnC0->`;v8]rboQzԦu&Y,h{3n,Ƒ_1vil$.Q;z ܠ$ȴ".GyʦH͝#aԉ }_gʝU{nB=?@d d7,sojgm1xTF eQ~Gr:,y}t(2$lw$)*l#d"N+ņӏ@RA-;Ip&Rx4+A:Mag!F~v1)-#Fx~"9/H3QhG?rürcm}݊g.򥮐+0NAV8xRuzt5K#Zx0or6KpLF\E7\&Xݎ73ǒ`c%bcϺ;gEՇ;w];Aa_ )*%FnWSljȿBwi!Xw J}^vmk\=M)eBn, ^qvȣF|ՇLSɡU `+/2iLxq('| uZ[@%[w4c Q'v`F-$vjt<CY.Y&,QNnk"@EJsT zpK5r8 Qʅ֨my%oKN0+sl pGNΏ\?ϧ9rе\z/2ˉ.0!~BOئ̞ =Yqu5T鐎YIb47%أ5$OnjdMOx[Q]GJ%ohV^J*T3$qMRN)oZfQM\rWR]BB؀J'Կz+cD9:p4-$Js6f m|W5R> myPKyzXpn}Ͽw hה̍iA"1 +sX>'l=v~f:k|HWNe#C- ^ kKfC ۲n!}v)-]Man\vJ5hV II鯮E:'Q,2zRHp*0,×E[>^# Ձi /nPzN>;{؝@ic/NH*͑Mj1mԕ&NVA’]]?x(qG8#o@C6 ]7uq,aB)|ڈP]U#o N_/sx2ǔDhyRkhjeR2gyQVmže}X/.5}bϷ~>m=c^{(RI6o` l}'r<|bk&5I 'W^~—rXw TŰͿr",WYr+zu}|=CvPwL,7zk58TMÚإtH]m]Q,Vaw9":gF `"IX罒/u;]/@)NJrh給ok#H`MxW{u{En^0H2`/ I!# yPz'@HTvP%3!L" [,#d^sU>#/* }1da3){\b,5 I)si5$>p?jN<@c+ )-Ǔ؍`ݸsY->ɞJn섀jGj 1{ +|\!4?`,H[a'%?^8s|@HT#NL L87kIc08Px{jY. O-GyM m}i9{woAv!K8vK AcN ]gT-M&y N1}NK1ZSrQ%93>s8)sK0kAD+wφM}i?e&ep#|z"{@Is{ǃ뎼ޡvI T jpF:aH_,*C{ѫfġ7Rީ#yW+kx2IzL\UQd?s NiJ,'X^+/<9efrf/z)AɺĄ@C6D-ړVA8KF4xen[:CұoL$f=&3l_Wa$⬙nA h]DEdU"nˬXDHҴZa糟>7W5~_Z]ngBf1j Az1M.\ < b;[i [||Px - yҎtʺ qpr&'je{C )Eh P$מGkR>Y&`$37M0`/7v v8\+F&λCeCt6ALL'G?Ŀ1ɪ8mHvq OhͶ(k`T`C&;vY3nRjOR}~z3 `|TLx`Ҿ׫MzaZ奁cP+ dOzUsDkWc jm? pxC[uM0ܥ>f -M?$"4tܢ䓯\ ̸U_噺Vs)觷?1kZ$ڋ=f\s̚?{l8~f3ll)=wgZ9u\+Z]λW?Whʵ|$%(ΊS_sךNӠ< 0  JmzS 띝2?Чڪ<(.,Ns0T'C7=~N@+ຳK?oay\fn஀a.IVZʎj!mBGcW& Ƒiq6'qC;fz ]l<!#|n0+VlRHk+#PfIH(8/,Qz:$g D)i zcT8N]/(vh.8q@a|]܎](GHeJy12㋤i/z62Y5aMe*z߶u(3>zı3<5S1Bi~'$*{Y0X暈SU!+7-z=0@&'п:Ծ5ܝuRf~lú#D56pU+aWaKwٗ%6ސB{*7J dxҁ3du653y^a4e.Q`M$ϏotgsE98?Ay'bhy0POnGƱ!y)0s.,v!N5OimHl# F;._:-cA [ ,AWg 6S#kmwAtm!߂?h-on+`ql?S7-卦"rH<%]_5Qk|HU#q $'mySZJ:o5Y0'᰻/YP 8٩_v!w^h^[KYJ c0/&}t,_5.\o=APlg fUNՑت~YXJ4 rW&pݙVDx'k%;p{>ԔvwZoYDJ2Go yDd -TC/>\CAV%uoG2I7#{QkӡvYP?Eҟn]CX?5@9_9:òEw'RJ5γ"Zi-~<*o76Da ")_׽*Q0!;$NcH b9v}`nɄ Q}}oO0ܿ^;=#& h֐GB$Z̺1$#s)H^<}y]̸_iAUb xw$-l#T+, (Ƈ4ܗIDeU=8Np6ӭjb}bzB/4q]b/'85%#;^LkHSňN' qR.aykha?Wl-@yضhȹ0P" \n9:8z=s4p5Vo@ veaNDyɠ2u.OΦٲskȈ楦>U- SSB/M} !6'C#b XxgcnO 5R`T0&'" C7!}ֻ=Z8Vkm'2> )-ClhN@v~m[W`H'=]6ŪD8po&gWyM7&U\R!ciDFt"5+7~ǜ^?Q N!rw)$0ʫ*n-k=-]6aDӸ2 X2n?;sp5PsuS0nn=ͅV 0ԽN>+kR`qi9zǴlC4jN.Ax8Uzh}ejUEǍ,$xȄZ=ߎ6n]r|Qb$Ņ%k$jػ / {v~[p)$]jN3!HgL' ')/ zQz9</ݯ7|. >-1X-^ [7^ip[qS0 _6j}zrRw>^+3A;}Vk}p:`h4;V܄O!٭lB(2̎ݺ81t§a>X=i+ய4xP'd(N)H2hb*v,]1}V13W)CQL4_x(AOy1TvMaar`߽5 }%9"4R4xZバ$*1J\Ղݔk=/W!=&?mye2S6U8hu.Ps!?}44UBb>=,iӑ^QvG1ʔhhq ƎS`F7%B<BmC8wư.1\OX~yxGZj^g:bIı)i,8L#ʼ\IQj`ź3mns #}DjjDtʳ ;O-Y{u+4¨(;Nq[u3æ`xllFx^'t6Av]51w/M-2vՎLL9 kvfOA\ yǒdT๺ӒӇzUx_Z0%e?ꝟ/Xuzpf%Q'&ЄGOyMi߭sQ,:w{j3a0WQ!존J#X٢=C$U_ CœRgG)Mzx%Ld2$ $E팼hDeӞV}a)oҧŸrEޥ=m]~ $bH(-RPlM2̦}48b+V|{vXEK'2<%gm[n*>@oۘ2+k]/_CwP {41e9Ϝ; wD}.Gӛْ^9pa9l?!ŕMFcU\/Rq$b1V2Rn)z9@,O`MaEcfL!HZ-oï@?5 zPcGrp#ҩRtT(q/tdU(c2-5wUHo8d\v_D¹qQ K8MHҮXC BG23&,2A n,0A l7 םƥOJ1sد&7ūpl# Fǚ ~xN8I$Е"5U|8]/$y'8^Ph.bJĿ="Z{~ګ؍_k= bOׄI |cnfVT/ }jAD(O^"Y.c?@'婟gswI5.zЕ<*IЫ!!5aϨŸ|'9 B_Qœt6Ǵ!]جMcPM1 bGZ2׭Jw,-Pԫ7/Бo 6v *yd؈?=BK٫WQă1};ϡ>p< _Ր Ō}Ppgōd~'*xiwL#93Ns2++dE&0% ɏJp2u˲Hq`] 庅dǬ+e ve񹙸6=ĘW#qX%·%sVÖhZ>eţVA>\^lވwL%{Wm`XTO汙հ^]ρ [FW Ʋb=hC`88<;r6@y *@Cű*7Hd䐯 BߨW"r ٱQ-"uE?LNkGvv{HJ a0TmMcr󔪔Fs1tIN5d\M }D7Isی[O'&W=JR%0D~h5VˌqTbB>ts NpcDrwt` ^ vfgE(Ko? obVY.8qyav-˘;AoOmv5M{?);2ڕ/i]_dM$ 8\-CT:hB%MXHT}vDž􎈬>al:X 0ą ,؀GmBŎSuv11 R#G"ݺ6!@2B>D{\;wcKz4LP??h kmHΗ#(Z *ؚRӜ̐վtfUJC78-P=aPyeGђ3KEי{`V$? .K7UZC.޼]D,$=a,o2!{.);)< 0G@n̆HE EBlSpV9b-D6=_OTkf\lv?ש|>6y kXt ִ I˕@THKd0Gj۝8VseH e.SdךEuJވx2 <rZW9h0Ec/Qx/{#[$y:S^qTQ| jHDɮ&Ғ%\TR!ppKb+`zB@;\/2qSwUL ]w$XJs%ɁhXCB ?%7k!c<.5+%tWDNKIgO]gno..BҌ"An3Дf}~x\]fױp9hw MMvi=_=$N"UC#s=@>xhF}XAESy՘%%xl{+v5A}ŲDps-r65YU(^s|5bfԌw#뵉5bB8ifaU94T;iMVu^gZe*&р]S?vZ.T JAu5@_-QËsx/"$qZ1p(OeUͩj'-__%=i~<&aHIu#d' ulnAՄ/DOѕC+'91b@^ zvl?8x阺͚q?j|6ݩEϊgpqZR.-/wQ]p^)XL ̩fh2]|~F4JrXѷf`Q[~K'QC=%8R0jw @3CاG^܋$r7Q=zUQ5i>eRp~zrKTХ@G9BDBĚo tdҫ`:]'*jqA%㗋9瞷^f%JgY_rm{57jZf>xLJLtz@ϖ<1ARm9*15ҟIpP5)T]TdfGNWH{++kI"oZ,aװ6YAv:[}N߸MWb')t2CR:d/ #'RX=m MNM*#/OԻQ3 ks?J5uZ*%S4JT eN4X| {;_3Vh\˒nyg:K&I?!#1/ hJ ZV8<2m9kzLg=mvm}.k9K:nsjԗW#Ond- r"!˅:+4^qZ;3i}+ؑ%%z]Ml2}wLv{w[V IvY䇞O e>ϋacKLN򧆠]So1Ϯ$F&I}8s֊R%.*>9YM':O Q9w/kf}ZZI`7b,Ez#; $Bհ!P5^J'rtKU)A6 oRW2, 3_7G:FdOJ~Bʫ9*#:0/ E*'!,۶,Nģg(ш-rE{ .- 36^ˡec ۬V+⼄0B%g dք"gc4}M.6)EB`!%;WCDfv߆ӥa=Mby [(T"pi=4Fe9T>#6Cak=N[g$GoVJ u 'w )3T7f)n[ikU5zBF |yydx:PcfˎLAҝ;+byCgμdo+ > =jeA`T@*D֢ [I#mGaMgۦhĵ\\!Hj)\ 0Ǘ CRHU`&kV:*!nN;]Pý|ը_kDzg piA6_Л7BA(}F~$0gRs6Hx:" :}?:ܣ0CY?EQuqlInFeGD ^4bHy FSWz3jTh:QTKnqgLl/G\[%jYl:ig֭krzhkBx:FcB*.#9S=!6nfgEdL5w\D+CuՇ0HBQzOH+EC.hv|TY+ܦ0ȽCc~u bH7XI/t<~G;90JX0U>o64qiAQᓕi L>YypTe!Br!,Hm^ʁ ⨉I 'bqI|i G 4OV0MԺ"{w~,:89'2V"ĕ~#d}^B `_)_zy)I/+޴3LHK\ j *!Z4tLj֜65ֵ4Є8M+MbV?hq7&=*zv,oJ'.r- toDQ ЋtBO2dh>5gC#(\>Ge<oCSAp^}u4֪yV t1vOFӸc Nˌwk-՞F";my `.A*Tƥ09`D$./ b˽ {H}+ }6b}A5w@/eN |H$@*5Zo(222U36 3sU pj~Fϼ9/¯v "Λ)-"q>JP^1_W{n)tL{ KqBm? #V0 0N єۄŞ% rx+JzTl$!>13)y>H4IΥ) o%rf=GAqM6TʌªG;<A 8KccX7E, dDXJ C6g*JZd*ܼڑ U5Rǯy}WtQ |IZ:?R|u~}y`2|ݷ.bGc8/>:8$UR7pĶ` -mߌ]yZ̢S_z$syS ]kXKP~Hˎ&o渽FyC| Jg_x9  M$sJve@r(**ܾjLt=TJn{m#,H#.;b|cG`V_c5މ-Tf~s ]_x%|Vx"Ž)u' +i v'ڒ@H4|P ͙[<.O%re8@m^5Z(XM1-;:w;K)=4A5K܈ "1Q&Fv󪉕SI:\ oK´:;$AbNBT.5XvGtqa~/ꄷ5xvuĠU\ddNmKWSu>N IWG@nrs:=2?zjAk?:SKUBq"HHرH101`|چߍbAvCצa OXu_BQnb2Rܟ!:0<4j7 ER91׿;!oR3P:2d#ήEJWD]VF)]Ȕq@HaB.KbpU>8;Fu <'(:3s(HGP+yT5tU{_Y0c;[B@"/.xIL6Y2lwl ]:L?万}eI {> &bC cJpWD ^f8OsQ).6>qWÒv/ǎDկxDóցp9pdeyy d۽n10f\|l$R}1=y%H!cG֧5Aqa6 aTm?(Y*PIM & BKD ^0?zP @7. e{սFw"@#1RoK'ؼ&_7n&Sn"{?jJ1`3F[y 82\B>¸i|['(uDA&[߾}Rf.(As{>ZF+hEZ⍀*`jb+&kg.dxR$;)[C]_I7%DIK>2I'l֡<#qP"O9cWٳn-o6g"@~τ7oN`kR6cQp/3DJr5W:s\mԳZ NfݏhU'M-"?.ײpG$(h?|CXyj"Q Y&p4nR+`0jSj;Ǟ%+# 9|#WKMBiֳJt0_ު$UBYuÎWN{w!p[$w"F4G)JU#H%NZI9TZkqdGJgtGH @.*chqFD^8z#)oIOQߜE?1ϕd(OVX[g]u࠵7nH alktCg7Ujݥr_tzQ߉垏jK\8@b3w69Y{{0-j祥#z~[==5(:|Ab-tlu$QvQSJrbB:\nlYj@k0FĞ$*^wy4UhJ:l+ q?qquRP /\*;IP}ne8I C谗^ V;˼X8n ݛO=N_wihyJ96 m1{n_Ρ8[kVT[NLF縘W`15<>וqr㬾Bj5|(WԌ/kY3mb} YO9֠I.>]$G@wjgi#x}2{!.˪3Lt` r=|}R ^\. >3JRrMKjJ% #;:')x= P7,d3G)Iu/19 z~= 6+&B.H| e,=_tJe=.P`ȃ7 |ܞ˶cHw_1wZ 4)ĥ^P _~,*=+ %X%rCTP,f%Gj FX2H0R<7__! 6QX f!;Jʒ<#;Tj|G5ܹL`þI [jX%Aeи03n0C$fV &u2)ApڮE Ten<kW81i M7Lj  e8`^ǪGK,$Z/um\ qT2E#絽'x48o3hI?d 㖊maDF6Q/WqȱZCi;1ƪJυ1PbX~f!K[{p\<: :`c^vL@wR=D(.GIo;G$ zҷ2!5aLDF%DY$+1QZu8 CET9/PD Ĭ B^ h{=ɝaP:=43n h_q G2Zziam͚e륁T (~'K_XB ]2wE?)IbaڃZDtnKfhτx+Pd(-#gMM+D4$a&U(<<:Eo4W wBI +>T4L2"V!~GuU8d_*+M$ S^ėX堧(*|%HV0?1\Hb:,r}aI-K2ZV{gHh>]}OQ*/ O@~sd Ȥ5:e.KM>fL=Nx +gFZjá+q`y6X Ҕ'Oטsod`q7n0f{nϺ]Wtr'~bW ;| I Y 36-ȉ[0=qȄblV "Kozua7s_h0OUH8w,i~8{6 V)m5Ԯ8tt7{!L5NԠr*-[9ī:h:#ɯ\pAI`S˗+,w+͞_:_{N2ʉs_e#OlnPbY"MCY{)Cy=hcQC zb)5'L Ma0 ӭDXK/|s7ې3;UK.rD6&O{,AOM&jQ꯾4#oI *:)Yŋ\E^io,xֽb),]2뵮N%M3sz 1r M"5;d Joep wSXG5@ ivaˎNJx)E HqQ|X&c9&W7`yM6$ K~! cZ]G B }i%i Ot짩 gJȪl+{,JUf2]nߗx|y||ۮ/,(FZe|\?bD!U4;4W t!O1hA0k3QIox)AzdMYS'T]y4K?\%BY#NWlkj IMԅ$1$$^zl: \1aa,2ݮAg@ˬ:`ՓDxILRMm/]&&@guy =1 qJy u2=h[-!N#8c L:MfUœ70°j8M.$Zgǃѓ3Eպlz po:Ppj}&Iw'5b(IRJV-:\߳9_1pF\JJƶi*݆;2=)ug/1lj%zM,4j3FČU[DLu͝VVQw^M gb!щ Ak2 H4;Wۆ:=V؆ckb{:[e]tK#3+Z¿ZOHј?o귭^4wVP ONpe>qHbu_Dz$9bjJҹ:lѐYOOv9VSvgBd%-MD{zSɎF,7G\d0:-e{5Ii=QBo]ΰ(RjߧjҟGvd;Pl Y,V -{į@cڧk,Dʣc ~FH֢@$NCI@DpR UU\^PRs"Z&g]C>oB&Yz[LHU`[A܇"^i?HR*Hge/ZoRQwM *=16); ;c| '>,zXQ|x .q8{j㣏aҺ!_@#we,ϣ=WJMfܼ?tE|r2dݸ3<ʃ'@ܖHf~_D%I.DXz~·6O .SP  poma+4 n|ǁ0ah[&Ԑp Ԏ~J1L%,<0H{!@^YGGv|*W=.sWjϗZǵWtp%r>/LTŭ';푤m*4df_Ys} CX#wS^$}ޔ>G޿+9K 9i~˳#2~Dc6_Ѓ]ޣ{*?a;UG^ox| s'UgryJ9&ψX %(f'wJ?ǰ0Nǰ-C-ErO%dq0r3`7j eB5eDXgpE..֙TPɢ/ [>Ǣ>*2 caК\B9`ck(7P^ar狼5CU|U&z h$dBQ>i6)u5"y(`J<5ko\ zBbo-©Eu={QN쁤y,jVwWNGjs.p':hwhڄ{T/UJYi[i¨KTzSoCč4Z3ބܚKt259x'HN#Ik.YsD9[xo?I}v?߶&=fEanƬTF\c)#?GpA^|0T̶e,5A q,$aX8LZ軕M&CxhNU؏"~TjSMyD:* Zvt~AL {wJS޵Q#Pݵ%n&-jqGn=4\ ]V4 hXxG) Zo5ݳ ٍɫ s(?I߁pIa#ۻB]Q};RtYTsJr¶RuyʷHwM"}e2}gH?~/-%=;1~O]f vﮁZu#a;8 u)p]]OYYP%0`ioFhR,WӀVx:3 gܼCMuipҞC\9qh !NWSsx!V{f?0-AM $̳Fqa;$nOʢ2'Cŵwrt7Ʋt;0W4 4 a$ ? q lAIH- Cf< N!Pۜ£V rG U(&m  Mf}<=apFM=OIqU9mWAC=68췵'ڝ;J}a~.j?Zun`k  ˾Lr W} xmsF+j=KHm;ryO=-z o='Ia9%8&݋J^ MiUw/K3#IMٯвcSд$dcHT"ru>r2jH K-tf KfoݱX݉}Fhq r Yg1Y@oAMs"sOk&:-yaa&jŔ\-' g#b)@RTлѠp7(XjxJA ȒY }h*_BPCm4&tsG(S%nJ D\ eLS.@ 2%ڟ5+hiϗt ˞w-= 0T% btcZ֓ B}4 9N&{֞5Qv=ԍ5{d.1KoVJw?;;&3)MP 2N}RBz ,Keb uQp؃xJHEՖSq'CΈG[_UnB[=޲hѸGQFRXHEyʯ)}zG=žՉ3@6BV$s:.F<]uTΈ7,'m_N^u~:| 0 ?J0y yzs0bC;Z V./Ofp|a0M%<`RWs\v>bl)0$m趪һBT-j %OZw")\#EGVQX1Fƞc$&m&W:j.5Հ@ Huo JB9u _;,GOsvQ^WI!g/?,O. (4[ ͖ʼnh^/& @ Cއ&j߱t3ͤeȰb-`|>L $ fmȚi01Y=<ٽH9ty"/R|"NӂX%.{ЦLS"O՚Ҫlև ţܷJ !AG33 I-`AZk6 ,<}"vZQJH (/ }g*_~r#[\֜96ƖAiA2,Xb"ͣJVؼp.NyT)2yXO{K60o4? /kj;Z'!FtɷޭvPԮM8PAͼᚲ#m?vaCf;sMX拌B{3Z4' Wޢs޶6a)Y9`R7e CFѼIzqcW.G9bқg3إ1 DVZBO.|R)+Us ñ+AǍ3ҟ:`vr?XT9I3dK=sя*!{򃗩y(Q6=OK=˲ +lKrdk|WU],pII@%N,#~dQ=0C)QEw`v} qih܆39xtˈ a쒪y3܅ɄlE ʠXђIū0,S + S$QZuGw=) ViUvpMv<]CQ]##v^ /[JP}<0lYhDlXpJ޷a<fbqU|i4+26ǺD}v *J#$?T5K\ޔ ,nf߸2YR-"Dld%JEs킬\Q䪡ќ7vt{ [Mɋlѥ Gg_~MTzXSmͨyAvlRd/eɲ1&88or@Ґ(+N qGEȁ&mB7E!.ϒ5jsD舚Ӯ ~rj"x2m9>&L**2tf~]4͸x~pr+TH3w'LHzPUoN!{ cJN#wtX>wxJ P#Y_it[xѿj^m3uMHGaˈ;*Pμ^`8T"nmv0`2ogZlՂ 5:}C?SŒ@y[l毳c-g%.eV£䈔RWfHB-\f;No ruSf#FÀ) gY}O#WAdD~L= \վ!.DzUޤу"IvH5d a n3A0;(4KD]?Á#kzؖ<@xϡ֦""{dQ$6ra믈(=C9X|+?-B- a V};Z/%Ioh+Qfvnmuo VakS!_%~X.>Zϴ]di~ yX( 7ggQ醽0mbmh E?c:Q@E=:uRއ@FEx_8xRQ7nr~׸Ū!b5E\d1 8r%>( l:)k.+>wӤgQ? ` LZCðK_4g!^ZacY8Bv}xHto< μz@ȁ04qGPŮ\^.Jڑk BXޠ ă]Xd&pZ~~Lcop >6`IA)oPĚ8Z`:XⓣSפsS??l'u_qྮq%(5;㉇ĄXgќV\|1ɭD3ʹ[;D8Jgn8tq5mgV:BNnz⃓%-=iI =h4( %c9̻XK(]L qa@LUI]YF>i>#ê՞0@aJ:] ĢHV@2p1prhm2^uTDTsa~@p$)(drrfyDSNOv:d)M"8h&= KD}qtwȘy0 piu> 6m{#{iqFkCzojJFV+HJ.DZ̸odN\Až7 'Hu,~ňO/jSDYY!,m I2Sin-i_àtuK{z?Եn_s ~665V<ʵ3p1 -;U./|9Ԛ8D_Uڎ4_0'̓8? ѩ'Lczl s&9V54y}UJ=^D3Qm|coW_=Ծ%d7)2_ݯd6#d4߁a_:uC\r~K(hf%ubvQɬ+k z(t>-!752ة%OFuN;yfr1҄z[Uͳm㚬`9QM/(i E!(Xґ`dF8ݻ"jpj{ǣcDȵ6'ÈIS0T uxO*U^&wM.)Dh6;c㻜аPi_ 7`|v2>x~@255 B03J~qj ~JC QbxH8)(6V(C'J쀡,!> |٧tV@(]0;Nf NWCc\= v5ߙ U1aPEn4;QLU4$Y@@aoRwGu줞C@c^˜ C!1Hion&HuDđ'ܝ qFphC)+bQ E3ɭ(%ѬɡRfȸ)׋(F$?w=m4"j@ʞUMiX7A72K3оG4k" } TH҆3,OIS-Vz3uKTvHN‡ R~4bڮpSM'U%k&ɟscvB  m9rYTG(p5gCXշj;/#8[.+?0D.C+'ƞv Fڂ?f凑*'rSM-i<ZOP#.㝍*6ǎܿ&[/HVcmPoX=`zsEff pD06EWܼh,w a%W6Pi_?K<%u8\U95~BIb%p.}5Mr@-?ulwy7(6wu[r2|5)+IC rFYg[s"PNt _f 1Ps*:#Q%'=?;ȃh~~Ʌb߿ub(AjOћƴQ^k}*yi] Aw@™]5p''M02axFnmHűݍQtJ8# o V+5l#P' A/c"QQp s088F;1Kyq.ܸAMDGD=}ifM'ݶCNBDN8SZ3 F}'8(Z1Q`]rڧq\<*vns#5A찵9S Ka-ͤ^kÚCʷ]a]&h/" )7)<O$iSFa ,?3ヿ4~ ȭT>:E)!i.?~{5ZU3,GA*X܊'8k4ĚՒn nVRi&УIk8xO,ewst L;<&:XaMKDj4}0`t'{ޛ˗d5@ _#i^+i$I4gF΂ͽf& -nɎ~0f1Uw<kF-<'6+2 Nэ6K^$;~˴ |yaF'y|WepCшjI#1DrZkp&>[mmCǷ .=rZ5=l|pWwxA6mrI{>U q'0$kJD 1'9W$#ZEq"FE}bP` h96\RljEcD=\%)D2kqռ *yt$אq%̙郯Ҍ=HN\| 7O6Pi#kØ+ߕ}8^ŮWHo0Yݘ63@ GvU0sc =i,㗗wk&Xoa&hqrѣ W&&-.j՛W2S'4G4@1(,xPudcy"I6~ı@$OD\׉IqYnM!QO ~LEScp`/|Үp_'A,RSiL|L?!B+.ٛ*}]3 M-ϕ?Fm{47O aџ(R{&l /]Mrd~#e=L 47ɲZߡ3W_tgn>08NWo&H8߸Όڇz Y6"ўYۢ\%"U8THGMdya:+ۯɛ-]Ks A(u,~T~sS!ɈأiT=+·@8 53"$51+un%Л(|4 q| `gf HsR Yܕ$ǝ-bkj$\BHՆE9Ö)&BɎIiQ^*s'~sG$kbMsoQ NR5@&1d!GJ-[AW\Ձ#VqH<`IoK9edȘq@#+N~+O!1Wdl g0_ƈ,MN @%#}i:S[P)g)W 4Y?䴗1L֏y a`_g@/PwpoI+jrcxW]SAj!٠Gf#w2 fPŲ4 dJ֐*(HguF`ZNܭ|Ķz@r̄@FPCpBkFݓl)1HC˳Mz<кAH&|E^gcR޳~Jƃ]} W F٭&|Yd0خ`m̫א*V ?Z6YM~4'a#YwGTFq踛} eE|n12*Y]$QZ!:8b o9c ̥o}l/zlEN(K5-5S}@=`IIa IKbzϺ TvCOUwG- TQV1; |#<%~t[MӊGVT2=j}}bJ :%r84I a:[;|rX xrHTi_#vR?UnR "59`[݇"Ԋ?t:(OϽNG%6֠ķuCxR m A^~Ь.-qQ˜dTȎK{xE5G}2kh%kB 40y UM!IzbaKHg|?q~ ͤwew'rio)d37a;vRwxt ՠ8Բz1xiYԓ75=wXF8:SEIQY8l5'7Uּ+"F3]2u V@y,g?ZA(T*?і v81ʝ!IvC{}y~S@C]N'yyY](Od90\<͊N`b&(I2B8>x| .Sլr\[]MO.9yQjGCHGجd~Ԟ^=Q3@;yU>pAXMmx{t()E]-JfB~fJ1t_%┊J0Ğǟ  l <>?(cD(HRgΙxU6f ww iß~^V`MĭĿKU^-$;U'g/ r.@\h}Э샩 !HƼ.;ORph#޽[+7^9Z# 5+,[Nqj,lx uwjGnԞRz¨x. x#@6S7駄Գm}n{â#opd@u6`zUZ$G$`!5Ҹn/_] ~Bෟnv̫]f8]^IONAJa@;TB9x0im.q4;'X%_=$_?D><esQ_Gu1P$.Ta>Z)>8l3&e֫Ġ:ܑQ4WbXţm"ڿjwfB{m(%J.'xty,Z51ۗLCX'hTbTF7$U6݂c|M=Ajx59u\I-ڂ"h&&k!tV1LAht+ؿP  7(LDh.3DB0Z +@j /rХa?S_q+މ 1&~#1⾞ݼjR#℗hmUmIȳ'#AcN6sS@m`۪s?&y|<jUX.ea%oHbpO/h>hg9ȇwL?CcE Wp2~3!Qb}>m(j0qPd < zX?<jN.Hss#q ϫ[j6`Wu_+֝6EED}1lHfcL0);<+LR)oY*X2krhe ωOྔ8^E1/Jpeu,>?ٮ,R=K/. {,skQ)ZNzL?a@PL15H[nY) RwɃUWFץ~'w@3턳*2Zѽ@=6-nsT"\Go 3٪ڰ?&A {]Jk>nݳ!v~7]F+Q ]Nї YPkehV#(4l6ra湠8{w?K^rocD undN//7?f??\N9 :|aqwY9pcxHw\QX,hviH1lv!/N%5|?Ws? [;hDk c0XS>(8kR ZrN\PPBy {/6m5&*I`Stc$2I^sۿbs3 [6ȸղUUFG_a Kl Šw3! `AJžI= v]׀fz?}7.T?]YIג#!qMEqyQޟ~ӳ`:ݗ Lyٺ$SNIrNL_!$hsTu6Q}9ĩp@(PS.w[ vɕS?L'R?? [tN^XvԸ 8(ڑ=y_MP _<#*/(h]8 eO\"=]a)O}D,ʯ'UzӶR -fYB}R|{t+W L8 py+R!WymZ-m[=,C.W2aU/,{ݶ:TW=02 \v}O'jP7 CW_'J\ejNǽ3++ čA.86N`*{5 %M~P6uAǡCIU2|5zw p ќ,`Ϣa)h9q9fS&IW%"dk7r =+wv2N_/>bJ {Ow{ Zy&!_)*Lkvb#4Ev[8>!5C "3 Ov7g VC{ȅ'G|/6UoϴZ֥y '7F7N&0d 1 ɩ1b=W:Zm11sy6VH! !rT1~2\;0XBSDS>Jjz͈.^HY);M~?He~dK]]$-f9M- N$FB> ba.Bev WbQ,VxPbY/ ,XD[ޯ_۳a'م63[cIfRG=R6E}0ﻹάh@[QYr{#9fX1ɷ1.}OḃpLҨO:UP8~ٌTBG >tW/mF*km-u+[,0۽e B,4|3X=5u~f٪9s,5y6J; ) ˞*zW" [R_.?زv( K崚seYq? cah=9-h Lԁ pa$DE}2  siUcJj@Z hUfߩn{%BceB.eow?Ja3#}?.Gِ5H%#/s4;_~JR,~U?KqGL^ߋXLg8ۻ,VU,Ë8yʄ)"[!2H`(AuV(z3dXuE\_[tٲXm"$<"ۮ?^H!0({%S4|ܯ._f(QMY(l`G>Nۀ7bA=Fk02Pd3-]LQYD{|53Za}'@v*F!B|=`6;\7z?y]yuʳl濄27'gs !v4{6z6]%"(4\n-z!* !!hZВL7='na,YBPF0EҙNCHuk*_狱d^]l+~lڛ7S^(kP$~/UHy@VnԹ z CTmV^dB%IRv)*2n Zy3v[ B")6k|-wл uQ|=Ah]Aΐ:hƟfvNLd?n; x6'ۮɢ5>((Б0Px!0Xd_k%IuImS̟TT܈k+"G&UgX(Aь64Pb+Ή:oҷZ*@40ϔ$agN cO)'9Bh#;3ڡR9ԌѮޤk•jF _2 ҄CT/fo$C 5{7Kj _1Dy匐rZpQFg0 XP4Fw.tڊ5fГguyu7SFSX'e*&,#dEgyy[Z 5f|S tڧ[3F=T 0\*''Zȃ~fRu8@O+tmYPpg%Py,?@E)ʃ'j1cҽ|7D8ڐiCp$+)Ƙ)|DqG~95 bBsL \]Y鍊0c)u, ^5"b=Bi/ڥ a!Wt >rFc0穢#].>iX2#uUBsN̲gU4ʹy__%TTmm_e{:bnySxgWi~QGR0}XVc\ƀ|WoΙ LA"xeaaAg[Vz69?2]4 'A_oW8lEsŁ&TEoy* Ot["t$udG4](R TQ#G.Ё{{$"< BBh۩Aq³4E'̅Su@f!+cUaE5}?h[TN)wH&s &{6,;pY}k& 0]M_hΤq1cӡ!J%5v˜{+ikoP+'^ xEݪw 8:a" CTdͷa hK:Lk1صA$Nk0;]3HtKƻ$$w+~6}gVqBe `rE@s/8V.6TT& jv-BF xKKn9q2tPWiYa]Pt;<р̯okp z!ihԙ{ aWxVf[K4eVmF n V2cLs$»nM&+ZH\{]Ǵ<tDT p:gtKLWhIxΣm ki䍊ߧ~:+رٕIB-r B \XD;Ќֳyhl>gAoIÇkK&'-VP=6CD!ۓN'jEo q:ZDT?s ۻ_2'lal>6)ڤh=N)# aۉ xLsB,2V"M,< aӉ./ ҿ?%bpr2&MWg^{ u&:@o\%y2)>W9xS F$.WCڟ#8ʅn{p+bI1zdS%iqZSM2n[Jn1A"I<9!3m޾MdD*T09Q RYDçPj75DŽ-^T1abr+-79:zkz)/5O=Pm` %K°)QT0ӽRCz4P˔|t83N6?aq/۔0mPD rmbOw4$1fnk l2nQ-wk'6 M;炎ՎO?lţ@vřb6`BcŌhVa|,nSoxLbZdA'RT u%5qsw.(|O>D`1t\ v<;7u\D>Mb;6]}Hn!)]4^]k zZ?xn+5`D.!(`u~sʨi:~0}YāPi|b-{vLFJ_ ҃Sm7Tˡm- fȒg2 1d A12R`ҨyEb 7ady;p5v9F|]=B놭[9kY<"1酶{L-t8F T`3m?X 8V7-߄ZµWDӅ=uKڷ40FJuz֙pZìVb`M)'[hK8m"VX̠e$X_6)v{;Vb V~)FzT0Z)] vnr(yw/aV^C2MRVոW "½p K5/w^8-6}U|tQq5O,_!xnf@f>_xby"KBuZ&jee<isy82МP-Q$R^Qks[]z+1 ]3p%ovRLSmOő^K6F${ qAʓmކš. 8Mi.Vɤ &E?FF vR/2fcgDtKz 8?%`BfĀyyq61UL`pTeL(EHEĖ4?r~lK0T .oHi9Z{#AD}gݶ!J\;05R?04d|򪷾>c9PEvN(Mީ&(,ZJ! 9#? ōjA~+eL4b"~x>RTRV|1bXqis.%ym/ba.ܑXv볥fӤBeerWƙ\2}Kgf~Tnt@x h=Ƃ@\.Ka_cRpeVb\**0 pDc` S u/ -I!4hrJasVL4mʄȰ(:1đTX_^kOKYZ:]eBXhU@%ڈs'7ΜXɡfKw"7+ޅOgcC&=ƫ+/'d Wt$|!-$ .؃jG){бN,ށ oymI a7V4Ơ篷4\.L3xm*7ocٛjyEun˵de tG]ۣ {%Ev7r# D3ճMi<9_z%sg|jO begaDW3,g*mfw d3Dm3!kސt]wVb)7 2 9;7 khDQg2[|e~{A-ev&oEKe&~#H!lٛX(J.;@5XPD'nآOQ UD`gTp=KU%CP[Jѣ;!cavPGrsCHXEc ߖx(Zv!xbv5zϞC9M] 䪋Ouw9_OZ7I[k"(/^%B28gg]^G<Y53%7I}w4mvɱp Rtx$ 2nH֙#;]>| nnlt4׸CB7w>;DR{.au↢aRhp.*\^aema {ܪ1N=`x<5!<Z]>,R|wi-l!}7]2]Bs;`x^ʂ5Lwn.xXŀ^_X7դ|=z!Ҹ8=$ϖ4EA)twkj JK%ij-*}Ķzey̕NR裉Q/YMQe_Ѳx8?@ @P'둶gd@7KWӔ t>Yim.HSMP{4ئZbO C T_\Y<{]x)ʒG^2/ |'V6Ȅ, F ҃h+!w IF@&JfT${*Ǻ|;Zg֢]%$6G->7I9A>8rzngzP~m?6۫bR7Lk>gs|BU6Qg!b(&^n:0 u$Rbgvȗ}+fdWrE]eCޛͫ ߬R4F5)6%8ok?j k!8n.0L]+J".$]f>I&m} 5 Qxm`2Cd( )€- k-Gq0V\сO} D'5 ,8…4gw*?uևϙU$?]K?ɏ3{ˣ?=P]%ME)'b4 2aQt54Q7P]?D ̨ZzVcE%w94A CUYҼԠ[d+a6dt[DIk"5؜h/f( CM_-up(:qXԹ6^^C`zc;I]BFaLd KS?L=0G7ØNX$&~A˛Y̭m6BUsx$z{:7QT|>Զ 50M+:oLӓwOB\Nm<]KMбc%N^flyݜWZaP"0A*:.[Xu$uܷE)|5Z6D-c( ,3Ўz=`Y?Zf2HbQ :[@'B^e0ưHϬe}uV y-V(n{&=t7}nGMiϦMw#cffyzLI,H\X*~xC{/^KIo|ʇܝ7]Z8k-)]1 8ivΉ/EVt,6Ep2魛F|w8}I4Y%!kdzJ2Q{K7a̚R6/>0U~gXjW/5bb{eҎܭmQ܂lCXؚPJ@}rL`%g_yLH#6TEՉk9& 8orK~1Ahw@*zQXvJj>q ũHU-%ĥ qJ57a@%~,W"y'VTc`a w)7^+AN4q^\8G.W*%H˿\t k gpȀ˥Y~j>KrqGS R%{l|*v$sih|@ @~s@p+_ 5yqyԪ֬Y(^%Xh{Vb߉U {V%#:I*:@̓YHM0٥gy r;bWSwLy;3z'0Mɕ^X`ȹJt(\@u}t+'+Зv YRU?]Kb 'X.sNZ.r*‰$oϖiT?9wHHU>P2mʕK؈90hmm]Pg)/u*:f#ȄV JZBln%Q&xf3*%w}]/8O3Y$@ѹoF C As];mui$'o_i[AZ+!+;Rm&A~儼V(ق =?7Giًnh=]IgڑvԆ5(XwqInnI?a'bBkg7W<436Q0Nc Fܻg8o3W`Xy;lOQ2!z fU(Y-N.wREQ!}AbiCYS3V<̙!`X=N붏ldd]FB'? 06KI5w~}7/,\J^hvMo|c`P{婃M @*h/7tcQv C&*ȓ-ؒI%HJzk@ jvFn6b.&?B m#>9>ǶXP 5% Oh~{ $;BNln)~hT;P;j/Sbi4NY!%P?',W#=?Z~HElnЕD*867X%mY-'NrG9^un1)d}/y 'xPZ qE3 EJ,AmKzp0|j6Mf@=JWU*O0Q7^/,--JG,=_cJٽCǡDbbxyw.HW.G\ %xvJ.ۖ/R7*d/HVWNʋ# hGXExS/Vv=!t8.:+[-JS1Tԍ%6'dUT%yQ8*a<[vw&ޘPk}xhx>)Vba!P-μN۽Ek)zD!$`֠c^'g].UrrT¿]G[x:kh2c lqv֪;P5>d֑A2m@lQE ٝ:~M~٥2v5'O^w0t4ox' Vb`_gP UZ:oy9cT(oWUhuL4bd`HVnU V[K}kFoπU̾e1r4cC] 9ElذKaY2g?UΉc+ %Uz^,fDHޟj/E=lbTʻ5+Imt\FKfE4;)SpIts~p gm.S+Ѻ^yIuWVw*w)mY|lc^.4Aly$VcF%X}D$~)u=L㖕'qD'T&}H1{/22yY.MNX/u!PR Lf83QGhk] / !jl)]^4!a̹wnɄjxAhzupX11=CtD_I}>Kəz*MH{;]-Z)a36{Nm7j4d t88o=*V,s%?ёe2z;25s79ͳ9ٷ$DҜ'9`-[В0VU6;I[Z/Uߖ^7I>dJ Zu٩G#fyK}^{x;CwwK(gPurܟiֺiAc7\m`mt -4XwЄ4AGa]goW!,KKI \zӫZhۿZ LGƎA^i@/j'9-o ތvboGuk뷇 e%VNrn ]{-1阀ʖǕHJH ϙF#աE.rL7=_ ޶F]vOzڐS{ˑ6`u/(`"̫e/\ѐԈ9'k.Vaf< dVmaLJa |5,\F (H;W`mer$0ߍg7m",~ 3EiQ 36U+!{=RE1 eu,/iG}NORYZ|+s Fa6To,{^_#\jR)ǫXKSҚg3 ӉYߓ ɂ82;2lېatLH8Q"$DFdc4g8Mͮ÷t#ӨZY37:րлm:`If?z5+0H&:W !UyF.3eBRVҧZHJ^Ę #XΪH;<|5q=c $KΖK$ҌRj:{+7jce)PPhꙓ{ g2ˆ,/F lGD^.rO^dtSjE^4U;Y`{pnõrBoBΞMB/c25+TPwXͮW)=˝(&LWI`%]gBފSEA[/Y-@Iܾ;h =،; n!a}6&SP8ןmXF48]4 $j ~4(+kɉ>֗~:8$`cOPO#js?@K*tdܥèNsMgqeu3ML('QPl0EOk Peq XOR%S н)(F6| _Ppd!AM"Zt^`75ߴAu+sdNPQ|j 5m%;`y)kb*H9Ta4`Л΍_6jH WA3j Wˇ62$>@{<,gEQ)O_+4K󆾒% URʡϓJ_Hž{$ fo&‌IF3:42Y!aOd/ #WBZ(:GŞ PeRb2Y44]nj]5Y I Xx32aiWE {z_q8b[9TC] +f*V$1NH&\ʉIyQ/ *xYZ2<9$x:$%t>Ke/฀%O"w/yަ@yuLzDFsHWc=`Hw!A3$=D!Eqdl^R#p5pw\ʷ25+w[w!+7HN8y-4q\`n=lܔ#a^a6g*6ǮkDLe†&d<Gp_einbX:o)Un-p;b$OZZOb^`] +;#!}сQ eY-5:~ 9];aGji,˹xWy":SƢǼZڈgph,5uȣ,N} G* 4 ^|`` 8 [?IzYW0oUX$&m `krp3~(X>5F:zxc$["9`>R + Y*=IHwKݣ| ۀͭ@G3@πChoL:#JE\o%Az62HQNOZ+K~ @,7$s!2fЁhR6l QKF+Z#r"Ydinr&/RJg OBxG8ΣY:)IHaI}0>m ۩ĵfMJ#Z\rqq|ă봴'dtEgB+6꽚iy{ĉGtwm.;N0p`$ӾŠې_ྕb9.UNZbVywKl'Z;7Rry5\ IWT4Pz51k:}*(yui 86rY sG_#)0䫝WBtVxWṱW} ù;% PP@1x5}'NsFQ+DĎnJ7 'F6o, pʬ{? :7"$*Z S0 bfsns`k0!coUE`.,r4CȽS"6(E9oEk+a 0p08 ]>s],gq{#M^&#fpߔ391}nsO= a :!Q~hlnY 2Pv1ȋT\c(j6KPP]h_aOx?* ]a1[ָVfJ=x/y NLnV4ogf9|{:ژ=?k9kl;օ=c%p6&C]J4DazTEL}]|8J˕QfKXVb˼)|U* WWN/XEO&WCN+=%SI'dNy2$6dM*Fۉ&3_TVX]bk =Fvg>UҀߘC~y +R-›B7@f IKpiw`ఓ`#MfY?djb"uG>M1%<3  y? W/NWQ̍ %eÐNV%Кux+i9:Rq پ39(K J%J} aiMW03Ay=Ih CEsv ܛr\??nbrd=cNflF|cZ%g8,s0OwR 7C@am+v!bj$){s@rM+ަ1_5\vJ+i6&-]`iH@3g'8j_ 6Ȓ˭;IPyF_[zᵣ5p/0l4B^by!lS.;/ƞn೑g&W=ϝԦ(+Tků> e;`8$ZZ`~j{:Wkp@WvGȱ jϣBu,7cBp'e2b-AafG7gfo9Y+W,Ib:f&3h6a2b3$-Z݊D#\W?}f]@?6-X:EG0 4q/UI{[gSK@ `hQMPI7Mfwv@̉?K[^C**wK̋$'oAS}081Cc]; izVcȫX+\(~~ #GKF gyC鮑ZcZ#UѿW::lOix?Cޜ7A)}qBAL"qOn}c/iV3\k"O]oh"}>feZXmM*l9K&CJ8ʹYW#;T:$qz:w.\L?LS*rοZ}G8#z҅70v\k9xЋ`xC Zc4SYQ(yw;]Bx2;և _z3>DhӃĒd*= ~(Mi-Q C*F򒩚.E0`dpŵ}{sk`QO7t5ߺ%1kmJ*m@ </=ÝV';nqO)읍5g9Fu7PϢzBL,rƙ&B1rjwN %ۄ Gf 9fd'^(蛏0sY  Bao?m]ZVbkN `~OQxkɷ/ϓ(p8kfBKN#Ccks a B-U""nL?/n6+mV0/$ ̤/"CHFf0!szkm[S4yI9^U5w9w8YdH/fISNYm;m+t t"#TsH&t/;,iT\6 .F]Hy5!쒵({hc1qWjH(Ymb=isbt ~ ,& ټʍK@z^]s.1t,w?B;ui+f>8 NT1DX&7?O 0p!ѧrnkix#lm44l 9+_(q±:qmQɫɬ `YawߐVnASbCCbiy5}i,FCM= ?tzTv_%4IԱ7V-]p=fX|ό زojVCDۮj߂g㇮L}D*'X2#h, DmŮY87{owalNe/VskP,9`8} -'x4zRق]yFoZ4#Tl_zV_*)KSr-6RĦY MeH'Wny8 ڍhAk|zڐ,VvlG |:͉ :\hsqu``Uq>" N414db.W*[0%;,lC {f{ IgѢ IU|`86&%G GȂfm p`cl _M"ꞔ0VQG]Ę2-oɢkppV1: D Okθ=Ie&*/Z~)O\+Lè1v0(oW'6Pk0S̾,t=,7x'jգU=zs9nQ!3ɨٱm+XZ?Q{+6-RMB ƽT՞ߎ^db-H%O9*0$Ÿ϶`v2Ud0u[٣̩~ B=%QG"gqRlg#ѳlPGee Vi|rS6H !kIl{Qp1Ptz ;}i6'3qf`v~S^l|Zc{8s@ퟋeW&q߯MJԖ9,۱> BD:;|:v\Q^dŀPOCIXU~}r4| h;6_CSL9)=b"0bgC8PpJ'݉3Nj~HqZZ>]ayT`$41Ql S7mϘ;0;̤")+0cX #3w;@af;Q@!IT0t[` KD{RU=, ,1.n|.RərFʑ}MEq1;2p$PtߥPHm Aj-&qOȡ8<›1}ebQkI0$S7h5'kaAqQs>ea.)os?lEycMo: +'x42Xr}1nIKsjp[;J ٜo8aUddoTJ| (-4} 6Ӹ|䟮R4=CAs U1h_IxLU .{}S1D%R~m@Л1?BPs6=a`B׉I (Plӯh3J%xǯu@ !VKl [C rc#`\#CBoa@AKo '>Yaa$L}J2!L>SxCb?ܚekA.=8K9[ zgAhL ؤxXw!V5JBR.Gu >н9//^x! Ƨ)`Ų6O!>O@PQO=u P#Y?Ѻ Hg^4󁝚kXs4k=ïءKLl:Oq_ڄ!VAt܁fjEBWV,0V[ 9t٧Ń1P PcvUsҺ'n6$T٪6HkygA&S lG);[ٍQcD$'7 Z ]t>lf6ٵH]֙L(,,X).\+P+d1ד, HBƈԨ \;}Pi*@fcyo LoⲿQ6ia m 4=}˲to?62,Tdc8l;:JCֶFBh&"[oydȟ RT%;`/(tOl!JIIة~nSDZO}`2n[lB\3|8^fl&Cw=qް d rn2=MweDO ! :YV274n'>E c5"#˰`#nQfNU4} GAx^wzs2j0k!Ke1Q=@G\yNR 2kL]mz~zqt|/?)vqV3Gz2u,i;>@sU<ϑ tHGϧFxq{̇&ٓN3}hqANs -T3C9hW2+2S\ۮ۲Sǯp@@bAnUCU1 -R{em Q; y1C@ qt7, .6E4}ck.,t+7턅ô%PS'=vL)0jT2zQaX7ճkOj7105~t(B'\84wq`\PtYֈ ,׆j Jڃ goxf%<kiL>U1< ǫ@ʬW1B!uDײ)*Z =XݤyBU쟝J._nh¤ʅU | ܾQk5D;AxA7-" dөt'p>ソRZm9w2,1F|rC.I%/։G#;64[rQ$sas*&ID;}d|}ؐR8[3O;rL]FGMѿJ&q/)jlG]IQ˞YW܊ƒTӯb[M{g1AIT񘝯4 z]pdJ\w_594Ly!J+81KgQ.[b˲᱾{Hޛ $Rدa4rj-9DB7w6 SThK͚%. ] ,v+a0p^Lvw?qFCN/7+mM@ۡ#lhentCM&oPػ1UQZbL]q\у:ᬂwvt& ědI J(O="5]֤be ǰoH闉B;%EueLe:3B`C/Ԋ}Iu LHL_hP K~DD+#Ԁg6#| ^?-} Eltk}.HhF \3E$c.61'-p޽]N .pE,):;:GT[MUAoӾRLq;JJ|/olZ@֮њw*,UbXΗ"nBFPS6.jD|zkA(lȳYr'ZS [dla)ے`;u+n'J]D-CXX 0q//˚Q/zwQj#ˁvAtÄ=u,ȸ ϻ}-}&@7mH8@@MZ˜)7p rdyYQo:dӡ^ U(ՍF;k-՗]4NKviYxNg.U ?B{\ZKOS'b41PfH?2`Dm8 8| U ^͟H>T}u,Vh̶[@FߣvΦo,^ʕn-}N#x7V XW*KY[R $zS,y.yFӕYq,<$8#kg5,_J%֙ἓm:s[ً֛wEo2՗t_iiǬ/b+\]:s{yG B%u$0-3!..B`1rۣ[J'*10('.3h=}k|Eu P FMɱVz oE1H5&U.=8̍Qփ ӼUeU0F\bU:u)̥k4,:Y\ֶ<&#ڬs6CIM?G9N־Efo637F%&,6HE^U 3ldh{)poLpbliz7^] #Nkvq9sX WBE}t7Fq=#94$rX0x_u'߸縡؝ 623o '|󶘱)U8/I7Sk`p8EǪ o/7ώ&lxX 1*vg _ejBC!.wh j}KS2T R8µ-ơpX#]A-g0 Q %h4cc0Nv04RSo5HR2c|%HPjeһY?#lZCS;x:* ZXA2{f?އxw.J+J\OUڸ?6L}|*dzŨz wgm`|Oj_sRE$U1~ȥe$CS]-&=V*ӬX-*yt'B=>Pg*F[u  KeRTh j*o K3|xB^!a^vp~2N".2,cM)/L%āѴiy//yU4l0 h)yrT'X79 '8'dy_Wc ttK<=>kj ;ۋ{_RS'dynMz,2jCn :{aE$UoI{f8Օ˲5l1 5&3rCLRHTs>a4xw )96V|mZ^:6}Ue\x2HuV2I[ftӕZd'>^]n.@ %)rov# l_\uMJ+(qNžENvcLO^\B|ށ%媩L 1DA]_rz-,NO@ *F6xTK)_"Q W3&rHQyXȹi]ڕ4Gzm5 $FvKB}JbV8~ܰrz?[;Vz|z0fxIՎ^_׍6t?F5J 䟕,׉ezcȐPFPMs#>ƽ:Lk%?3l Qk<[1m 2]*ONt٠W ؓlV5xz> 2Ъ)PRM(7gG-y%jȂ-1v!PYաAHi&_k< `Yi*Μ ; 1oUF':\eqb'rüU "iW P+d ݃(.W IZ>vDnl+"Y]HZ-Ω:2Hx ) 卹E%' aז R]n}Cx k'F9l}4c`yII 0PSkTZu}߄HBYKw(0}Y&ɪRJ=qak*fχϓ2fLr䜈YJfGqlh)fj+ڢZ} "U¾z}W^EYPVp#2x; |kvGs14,hJhUvMc4Jcb 33^8+Om27E=Pm\U^_,UO@:¯_=?U7+:oS?) 6lPY|Ny-up@mP@LLY`Bj%b]Qn(D:$aYsZVs <炨bu4Apo Z..6&|77yDL: ΃D̔ՊXƓmG!@XB%Uj!\w5ـӬW eG|ْ]1PgKDAP+썆쉴{Zέ8X` u$ϴ;@< C^>,K(>`@^Dgq|C^$X:?~yd b.Vz`:S38fSC& ӾjOg= Ѩ4E sUA5ʟ̏vr5XAYg= |K UC{\OX:R"Mx~qd4E?s@ xbc {Dp +w:.[GK~ yq{5"nGu4wUv *]^޾ޟs ]P>L 9d|um ;:bmՏ?TR "˓^7i_Xc?17v]jRK#]Ȳ\ Un_—qυ{*1IziOKy;[ Mn%miT+Vg #*ۺJ|ڲO`2e-Or&ZdH5jw 4+4<Pt=f>E2 p=.MSC8s[T 8AqN[W*2L=oN[sB(i|x"cޏXMȣ4#N7?8Pŕ=*HQy@-ȭU?aCT?=}j^>8d,;Sfn-AiYDϧ>+LB2I>G뺇҈|jڄ7an=@|ȶyC%e-Lvuj)chDA"LۃZys$@}]cq)KKSt2͐lv.^RXZ[CUp  |D&yXߙw yUݲ}uڀmDqA b* @gfD:Wve<i,J}}Xx\DE1㦈+\T5hŗ)-*D N%KMIz郌]?jg.wZk[_׀aGJ2H >Eժ?LA#/nhetTP#N6W.dҾc;qCbG,zi_eMBxҺ]_-%J9 G<ԎZ ^G 覎8N6 )i潱5?Ĉ404(6C~|oP}QϛU"?.=PaYFYhs/sOY$0vIEPHĠ8japebQߧ/C %l[rCagȎ# l%n)l1+BaxmRLJ qc=fc=ߦ\K `f\ž Gcϸ u `Jc ̹›}0{3T\EԗB%! HͧtGH}حC栠J l&j d)5ͧP=?G<(w V &R6-xGCHvU*('mZ̫{ܲ.{ޔeRqُVF`a6b-tτƸԊ;^|8U%Q |?€H}D>9SPcX1H* \+R< +w.4<1 (q%S#Mʔ ie[ilwjߘͷ ֦`xDHWL˂!VPQ~H prj[o߃Kň?A3T$5}qHխy%zC{tR8Ύ/zw/Ύt;+[`mGpScS=yYJyZe,U V;6`XȳxeZ'aEfQ p93ꊶWW  YR E_\^)5SC1q|HaAP*pێIqYErlY@2]{[aa2)%Oj i=(YSw ^(!)Dmq0Ve 1rG% gO60Zd&CVqzwEI/5 )r˘̯+fu 3#~nT6yA}I{vJoY;O'xZZ{RBYc(Sy]6'#{O +mG{/I;B֝tgV1E?Ɖ"%@#ϟ7;9qCiƣ978^ݣƋjrο7+X5nyYU33d?[(!j - @Z GW;6zod 1 a}<.DŽLr.5k.[J}S@ '96fh7g]R(|E0P)8yMw)rj3I w6!A5bUNXAU{- !SIF}Pn? ~TѠ .g2 J xr@n4@!%D 3!SPTSARr4QVƥpN͆+be& ІPŕz+Q%y` 4RʢKj)¹J-B8NGMhpEn2>dd4 7A4Xx,}B w|.^Ts{@1&c0ĩm:7j,SH40"e0U`*vOjq^o-o+U9YC81<"IXGBVe?꽻@ ^j إ1ب,Vpz@C]˖útUu#85[>=o$n  `W \7!BqxusPl)IHȷ=yp\y.6 R96p6{'H+l:_ኃ!t pِ.ϊg(68XMxlz87@9z&'֣nXֆ8(-k{s!pz+<,DYTq3R_ vWL<(8u7"{<.Rpb5`@# IyxJuO oYs <4 Ncրtl,Ӝօ2$b吚M6S,M ղ7F ܊X|fUi!+_*g0ϐ5tƙ*lu?1Oc+_ W)7^ k p)ı2]kmnR'9M~%dCNre-tɊML\Ffg.Ws,R0))f&v6ְsh%@r H !d˿Y?ćIV@^=mA2Tb7]Nqb6=3"1v@s^;7nE 09ڟR} ϜiAczlIFZ:^v}*GG"KN`%pPX<ě\zwUחti?|^U(Q8aZ@~a>|DUaMpX,:wO?nv[fKI"#?j$LQiWEz٠Z˝Nw K3HJys-yhstsZ} qԫzӇd@ 1[uuP}!igU0(dML( r+VQq'hEAE6HKd46@A֌&YcĐ86=g Kٔ*?yU"9:*YJ#S-N+gxLnfuE"[Uo8m@FT'M**I-!@f(„ 8uJ@-XTdy(*J`OGdEpWASD\·#{!eG[;A4܎ͺ)n|k'̫E,̵`"'.3m)Ef,{o*[ZK%b:kۆ;ݳԡܑ{MZ|V}Ku^F?c@ C4I%t ϰH~4t F߸{_)r7> \N Hjb !mq$z3l3=EEv;)_nýfLww9IH4&<pd`)DxTn8] TF0}0|b볟ks %JL\ۭ'ҩʄ%l5*1C7+W[an CFy~^ @Er١Lz1q$ʛ@zA n[/0|bϴ٭f'B.[5ó2P nxӪ3Ky>, CMLv M)뾤^+Q q(?i"ގYk(+Rop,5$[v]$½;.bDD,1>TD(!=@pg1XǩD <3[PI Gnpm>Ө}Amx rm/ÛgVvK}mSJJwYhsC2NIg[`ʾ㲶1FM)+$KJDgȆrZa)R驀_n tXꠥTvTj.F ׭2vjb=_$t(HBЋbo[v;N~r%/lof5 Scjtӱ$D$Zu5`C+m7>Ut7VPɚ1Dρ3C n;0[FӰmOhrգg|߭C1ЯWTb~T]&Kx뻬Op06Lo52UJ8m uKto=fYc*{bzAř71TYMȷW!HNvX!c tR3Y1y:zI$t}pFyN(U߯*͂9%Tof qǾ.dR3GyYgv )4*%^[Z5ޣҕNqY&L\'k-W/Nϐ \9QBz[9kl5+rqpuD|T40p #B&@{ 8u`5  F Hl~g( wR~IOY9'қOVP eeY",W8HH 'ERK35#eS<[ ,˄Pw{JdoOHj#A^G{y0|tYZq|QCJڼ*1Xo3Z j=anhq\2Ι.ЉW3򶺌 9"?.sj׆0>܋u/@]9D3>-R9J2AlɄ&; R9R?Vy$[]o-3}bxy U()h,A31O5DWJ)y,smY~G~HxmJfk$hxe z)gCk{0KAMg Z΅sgK"}H$O!xT*C)?qPT3Zs1"rOI8rO[MLeѥv-(#Yw+:g`a9fzbh75EsIaJwh4ӐpkYҎVKאRn%V)R Z>yv#y) I~lDMQCkDrsLlvBW1yPv. Qiթ,j5R82YdK`6#vlZ6N2 *z%NN\h&ߩxPa^"{ 7eU\OU-%`Ba"_ru󔅳֥.iQ2Ž-jGMkwhIkAPcy>DVl "ޠ8 x]^JEVmQ%6BF&wFڂ_ $_/Ӡ$U xp4+;$ rBIj&-?:CHf!x%rج34Hb}Q9U^= VduGHTiV-<ڳUPlVWZKcqIYE Wr[6T©7Qf  G*)VQ!r(8H[gW+\F5y2/EXLTWƚiwfJ|zӛ)!4E˾@+Ymeӹ0 obXt#k.C/H nm?}QTOaR֡4lkS +y*Ӛov~bQG>sm*:+tMSHњ(rǠ^-'`oRF/ ,tӃ!9Mib.֧E Xư"NİQ& 'n󟈮H.k{3{7ZӇFY^#jy eA }$*{"8kH3 "t3g8 &%ƫ%R|}1@_ `8,˘@ԌםUo(\@QW9 3`Lx~ly^7{CF<[+NiVCMt =AwQHBTPmp2UC^q oYfQB^q*ۛ&@h6r1b3%l:h/fP҂.oܪzhk]oBmlB ‹մU: ~9#eN#Cb9=+J*{+lq' 'M_ZU|؞68.gdW/$;HTP&X [}+t G1a'xR]$ s#*}+WXy) `(H20)c<PSg5mnZ_wh| ֪.vuoRRR=w+a{W=[JAB l?3 a|AYӒe?Ϻ gېv>=n&0siLZ+_߫1ct`ZOwgYIݿ(A9 R4VKݍ_|D';g.*T$r$#֮eADzU|^TvH,R =V sUֽZ2_ }"wtrJ׷=݉.[ײJ|bf8__=$^)(w+GkoGIy9-?. `uuﴦ&i;$垑2Tˣ(Lπ^#Z]guW=ð~isZד ZV 31 ioNd|4Hv,2'Ps.ZRK+~bg뒂QfI y8`11[JJk]wʸ6>_\Eí/u'6^65s'AI#[\$ ]:KVW>?FB2Dj/z ~Mٜyиt 9"ďSFĄU1U0Lӱ`G{二66L/ɸ4lq3Y: BF̀XSktgXX,sʦ~!!v  Ÿp;)CDnhvb'86 >Z=aқ өb"쵿2ƭakVUJŜwNՌYQI@^:i&8|s@!p\BiљtfsVmn *],ǘUt}9XpU7^Wi2#0r cZRFfo&wiOK)71:{vP@dM73'ͬb$c^俻.15@2缾# U@' lWnE- {ip/1&{@,j^wȻfЙ9X)3feB߅~K$f}VeΟ˃t(X+i+l2@$i"Ua.5廻ʟS@iqD49U$DL/S^(ݒn%4`߻ bj66q&I6Y\E;s(Ive=PR 2 "H>7 xX0i j <ˑ̝Sxbhl29McNxQ 'z],^=,$g$R, .mO NXvECWǩI)ͤC AQ. ?B+wH`3'{CٵO`/q>"K<銅er;`*=:zP2jCT҄rng/ ^*59|C74s,O=)oʇi=g𦹌>uF`S> s\3n9g?ƥz6Q?t+f~P2\}ArÝE]y*ndQ?C|ș/ǸIk5o2G1P;8fKB}:߳cS"$UҖ8)0t}fasr_ݶdO^^~k _#[?׆OLM}.a E]#aJ`)UҤf-e+KŠIJAѦ́tۈϊê$HE3ФŎgJLo 2&r;X@mR|/[]AOKHc=pv1.gWgm.E(y-<)R4ҟf?KOHw1!Q߁bxe;ޤK8ep >@,ebgI5eIPuRBeb+7dt2w* Lvoɳ_yns|N s)(u;GjU@g=/ 0?LE'iևǒ|TJ8f.yTKz jKt"<*90AɴW~0Z:uH?dA tm`,8 4pĭ tBž &ފ|b ■%ǒ+S]2h#ý]^;$r#Ac7z&x* Ó<[<5X<z'T|FH"B3GLQ15x_O{U-M+B弾Ɇ;:RoD(acՠUd

BѼdɧ..s ŸrWOnluA*cQeqW3zf1NB=Et\6Vq.Rip J|Ž70tW9OT*3Ծޒ6Ic>H"ė"ڏW$hK>F+mqB1>逼cHk8"3,/ :%EӁCGEvV"ɍ&.,qaKƱ+&$br&^ $cjroJ>_MѼ ,N ;~^:BdǴ\K(%Ɏmn.HvIh[ѢU"GO>T~XLfh})oP2C7Rzg)8t^c瘝)s6/ҎHٳֱZ-AeĮ 0[ U[ pMƒ7mT|K R̔ NwNIUaԟ T"]6(^06<?_tPE؃"Edk ih<~zAS2h|0йl?BS2G+5jZPDyVl2 CAQ"v^dvc9* N=(*m1|r!Gu_Hr'/QɗU]pp>9~5鍺]  ۆƮv5>Z'wv@m ߞ@?"Z{*5O|G\&k"*}avCCh"_,~[~ O/.gH;2>q}{N鵳Z2 .2Oɲ9D,/flձ#~? c5"㞿y33>bh[Wri:'CgPěgˣ j:> H#F6ݜ'~"^pʄ̱Ffm ݌gc1mU&)5YW?n@}'!gu.՞^o£)ɨZ} OKu\g%p#:z v8?+=y{sG:JӵϏ""{AMiF քQZp/3; FB,yѢ}dbuT"Ry!@)W+CWZv7Bbn:ߎjq4#^b;̌σ]xMl B[ !Zp1ʩs af:TҊP mq҆WFt#zk**KiWd?e$T.Xp'vlk|84ٙ;3? i)tX+\EF;R^7.GqW%fv=ln Pa&qq GҖ/hƑMEEG_r-[zH>x$=91p)'(;Ko1эHg!ىk' -Q1;@gX#Hw7-e ն; @y,꽘d5ҭ94srGhS/ 7ݪ7IQA:b>Nӭ{f!km40Т[߻bό7',h&lI"_bRg9PXc"MBxvN|^ElX+L!/M}UGN^6iz }-Q 4>֘fr"[̷~FJ _qjmSϲoEwuۈw@JdvEi-FZ͵z+IvAjrBJ' m_b;ƨj 0 _\2M^SP8Ő&n- XHzT p=p-ET'1WFӴ.Bhz?/<֯uic$i=$TA[w" n Q^r%[r@% WL%quu{y'XvԄq+җt=H{»]i.-=hpwUN D+,1IFp ~! 91F_%^Z@(X6hIQS`ԒzD˄/{'BR~wΰF<4OPbքtJyB6frU}y%[,i0S릋.g;y/1.Ob~~Wdu^7l8!Vvc X4Ta9--Qmq#D`CԀbӲiB&eo q/ĉP@(egP T_ Y`.Q8{4 e-\Yz|f\ E'iXKG>KuxT[b*aM5J qAȇYgԒ7[\#7ap:tru#yIvvjԣ5JTsmkjG9uI6-m'Քީa:JP4RSk;W=_Ӟ%`(s%Xh=UrO3%iNU+^fQȵ|K<2$*J#jŁD8q#.wo`:ArMd$+0}6|XWZ9߄3<g58Q:KXכcB6.$ՀQE2܏'4B/hB\>SK]ڗt2\ȫjZW!(wfdzW@!xxpln현 N6cMo_n9 2z%(YءZ[|S|^ބ唣5z/|:rqV i:YNS+n줴ޔP3Xyy.ϳY4g[PnqJ+n۝iA˜hdPiAQ'[hsTͣ/uPȧd>2Rý8WwqȑmȖ8[-ϡ]2hDJP䇝+/tt 8/xH3_xֲQ|*㌔zeJn#?;N-2Jj!M33v}3zwq;B9:#x'pZEFh[^u.BiPZ^Qi[W{Zr4A)(efiɼ'O0|8,hk:(\J=huo^;FSα"v%R,y]޹BPڼ>g/n&U[4ݭ𒌋' Vl) ElեƑpfsOw=,@IrNyPcURY&LNCwn[?g>VP"U`HĤiv`r™͐<INѦ= 5JWo$)mŨ+U&e-W=5Y+|r"hxn9~J %Ft*PF 4D2szo"a;z7󯋒sǼm]'vNt!9|onW zc+ 8^/S4|5BUkk-~<{--xmJA #BE" &Ą|z mwB rp37Ґޒ0{#fV.9:^:W0AgJ~7B\I>2E<3ji%wR$(T&ܘm-c-R<#%`:F{=7 U8ќ>f@YQZp.ߚ6U7!{Rp:<`(= u;qYRr6 eLfs,J\ㅁtڹs2=}R/ULXyOE _KH#Vv2WƊ$Rn3@Z.7YҲUA#͢{ p>kv'*aIV2җdk7*`YQ(u~JYpCy!iɌ#U~ƈN CI4d|vGT<~=l {2"Rv>:Z[D?dd:p ?g=ZmǴ~^P \a /d"`:+OxG8l"TO݀j&,V?uFOom[&2Ek)LЋ~fCB k*Ѩ/L3nQ ݫMfʦ73)V݉nzAJv7k5b/?g$3QGLX:fV%#DS1 L] '8N]w#sK(Oc9~"e}rJkU!s7bt/|.!1=H aG;Miޢg OOq lig] lg#v̀9ӳ1P̮A)Q{h-7 8f\,_Y=ɱR> 3ӻMgS()U,;!nI3#hm/׻g,EݞQ5dDLԹ3&jsm IzsTb!N*ȕZb$[kQ{x1(WbY齱`;.0]Xjq vUؽHȾNJ[_)hסH'S]oРR.9P3Qn7EwͶqSYӺfi.R*TFZS7\q}}u4ōvN}pmxU`DBT?G׾en/fߞ~(]w]oB;B(E.b0QѢ7դum`8*?lh017FA C  v€5i+y$rO0k2TνBX3Be.UتE1źglgAIkp 5];Na &蠱"xH2Qz@:b!1AK Β᭄ZĔ!~C)XO$G<^QnW Y 6kLBa(UB[jc)~U!T8\[u,Dphoy7!scHeCg+0lg>ueGfVUp"W []Ҋ)YKOC" Dp9);nrjr=O; }g,'cFdxti{ypxBTTTP!Y]-`JJvɱ\hKP,luE*(F{y(44uye$ @Zۇ݉Kt$ Z.of~Z5vvw<ģӜdE۔ȊrSEu~\l[QDPJ&iV. ;MuiهAĦ?CyϣY^E5lnmAbr",V;)f;'A\< e1#GPSGǛ_1gM^7!/EӐ$7bbVINB%,ShTM%d邰(s9)uH FL0ۼc;VGwxqgyD2 RƐTX 3/|\d)?!2(+)t&` ę"ǪȗB :)Q}NA 4VY%BBL8tEf4{k'{u `F7 ODK5VG;GˠYCt)4?O>#&A%ÿA} y(! NS.w FxVʩe\J,nPO!9:&:lZ@#Eժ ЯDe2!iTwҳy-uіl^oqcy̋c~, {uN B\^VL8t ^%1ONv)ɖ !SfA7sY~:d͓q'b\d^~@yv5<)EZC]Z@tIM_ɒaD$u弨0FFXr"]* z|;F7n}T;$9WئV_6(@.@|ZČl rxǵ&/MF>_5_j}/;i6ࣤjN烌uT?[V He& 5 1,= ȴ95cweܯii >ן>ߝS5ËXE8v`M{X}fLsmU۝-Lug-@32SPmֿ'Wո(5;w+H%3m 6e"_4,Qr^ɥCQk*chI5V:Zn0 YwiU@RHyT0"]\qXX[rڧ&l89uy?1,tCEu4*ey{\'("We{5!RR {E_:>b;2f%~?o/<kc[B"\oY" LhmXBPĿjyݖ^dTpMZٟ-adF8q wuT&Qv_5CFe=W'zʡT&K`ϗ6_1TcJ>o22 h~Eq%36wD+=&]_>"w"J[kBub<,)JPZO~׶>r~NV*,=O> EiG(?j || n!3\Ieo[ZmVhqL|d.1wT"p"Յқ홱KOv,ر01m//K{+[4;+cvae2[}6sd\F !r1(ߨ4~=N4z5 m1I$6$&NrczNrVR0KY}eXC_踺*ҔkaR";L^HkRU&Em<]'Y~Ukks5OcARN'YH.t! 7y`VYhz#0- ||IWe;ᚸh34`xR3jBh$'8`of/7ҟ؋b5 /iAcցYɎ Bŝ-|6=-3Fkľ 62\m#e]uPi 9$.R Bm@[FHlyOGXbrgUPT!q "Btɘ ̫ +q B1gu%4mR'jםeluVv?,NǕtnY,M%$ȄK]&1>П(.t>n@ϤAԆҎ]'|u{" H< 9٠_Ik߷UHGڭb['s9D^o 2Ͻe1\28divȬ :Ȫ0@㒅WSy!D>#y@p?e&rBpZibGo©6&TWLmfbV9ƞ&%E.+<)dٕ oB E6vq]2 ;[bk%DCW|}܇|QZpWZT͌zf λo9gʶ:4%ȹi>RfV.!OǵIJ< [SmE`.yR(v=XL0 `$0:DƔdS0sdOS_wQΆbA4C 2 Lk~yy~NM!c2`;8C[s52ή`#v_FwNEXX.{|6 EC\/[YexsO_%>940:GnWQ"*8c %_7dɫ60B\$S2ZeIwPT7E;5]9=ť*KI6ǃ42Cʑ+:EwS7FEi46y  /o#\KaHA"܎8[v:)嫋^(ai _ i9Lv<1{D%΅˫b1^j!-6r6͔k=Ϲ͖C )EfSK޿'A8T&g^7XJӮ!+o];ݙ Oހ7Bvևppcڽ :'X4cβ/HC~8a# zog"#}<r\]9cO*tc&$P3q5dHyu^XjF3Rd\޽:e~ E ^}Lt ,hb1:f+߸$ k4*=1x Ȋ6. x>;yo 4KLRÿRשg"c[v%T\l Rc:qnd/v(o Y+{]5.992p{#@hV;s/ 魖}vX@RbɄu 7vOʬ< Q{g?6w\*dOq&4B ~VFH*<YqEEKi%--N $:n:Ab sn P)罜BUg7ظ)Ҹ)Lo]QWkN~]=^TJ  !&W֕Q'hPJHYBV)iwQzdž~N+I~o]ǀ- *-FE-R'^mhcB_kr6/TNHq1v%:,^bw&WgbDSxx~ɉ¿?Z6wmKPLU^?e\+FB%'1N>|lAjȲO/vN8 j1æC 4:<+Su|7*8ʆ_x:X?>m b-9O>DMd)*T:ueնيa/;š)Z.Rg[)]qrD<:/A|tv͝l3Z"Ҽ3({ـ(ӄۆ侁/p =+<}}FgXm~Nj J<"B` KPX*'~k9݅N)oe1 7\)'-'\ZGް0ft^zc]Mq7|nOGh]=8'põ Q>q}:2T( 78 ?tu[&f _:xHTV6alV/;Sͩy0$<ϨN #5qN  yw]cP ż2Y'Aj#-(6T!)/*pa+B]fq1~wgKq@Aɵ=cn|',TP\L Q)'iY1#2LT=p)r@ 8*߫G؝i0X9͓d#pn秖&f_]_k 9uV_r҉p>nrFXѤ=yQ =J\M'  ZehF 8X\G-X=l&j2*X/nC< CXX{nhXf~-V,3d](~eEqPU!V:^l9QweD$Dk\X"WUs~i;afxcdiՏ\4D,i^"Ζd/+j]6Q`J?PGDǓڪxV;{hU'pH%Ύ,R@*PCDZ"us dhtZ&2y5ڨ7 _8yn =4#iHX$xBxr3!(g+&m5~5MP3iPǥ:!.)4N: 8kU]'H#X[lfQcrhbl تP( AYfYrj&0-cc?n-ӛD/{.P.fdb֛O^(e>uVU3JZ `M_^6)]iҊyơ뚭]/?/PHsVt*l?1I}!HBfQ^ǭ騛x{iLVsF&fqVbCϱ{2a.=)?GV-Dpu~j5W-D .+^;Z19Bl7|Redk{̯\OMuzp$Ȳ/!=^%8`ye`{M-NB(hpZIDzP1d'Mb[$Z`^َD\]p-|G]+V>s׌nـSRM` nEKK/uiVDžO 7MxLdBMS MW|n15ɥܠڭjFW p usd`adU\!JBhR,5Jˤ\o4@ tU쑢5󁾅?OIW~ -'r5 ,FQ t2;k.*IoF8^c~QE.˄3~l0? G3h R{ܬyMfs2BYdia.]utpXOrT B[sxAk_HXzV,;_7-YՐ3Z#6u:*%Mh M#%ujHFyGk^#NGQ^ Qr -?vǵ4曕ͬyopWؚ7okKW3^Nݖ^ЄQ$6iPI8(>kx5P}JN4Lȗ6M8Lf=LfN=2J&7URL!#5to+Ɔ1>z=p )U("+0:iLeuR($\ؐ2+55)*Llw&{Mp$Ց( kg'}!īz򼯞hL{Rj1 )5.2̄V*vA7l(E-Cmʄ?k JXO__,)j ؼfR0ͤYr/Iβ%,Aؑ=.(r5+j|eΊ>%]=Gw_3|3?ߓ MT;p`Te=(dIZyIWgv{z9=/VO3c'OBK-LdD2c`j,{It @)QUj(rL鱦!t*+"&:$|<.? X] a@J݄7y3ܥ|*v5>+Ӌh=28B*H4\~vtj0 '-B;`n htdWG/ɤ$S0ؖSy(m'Jp;d aQ\>ŦS[a!kNB LH{ ~PUf4Ix {fP?=vS`"}>5p⊇m w'-he4".XRCEW$ucD n"0ddzW×\TRs=C [~d˾/ 87 z遚%) z̨2盹ʴ*sˡ~*qd?F*~V"]QXQn } N^sV③9 cn RE'޻<ڕG~?U uo0[So~!:-cv 6]IwTXz1cTkv1&ꕠ^.ÑVK VY 4iR&Щ1{F*?1ED@d,*,^'2%8bZ =kKMF,5]E(30򕟷W"QXXM f hD`3_ԫvZ J1[CB=zxxaTT[/8&xbC崮:=={)eXGbz DLPE3̄NIN Twrmem|mfvA ތ笈<ֱe!Y_ B[1׈.sf93&*n0a Sl5!HJ}(Ag߿_v K9)zqn(2({{TmMSkL4R=ܤ@k{x&04݋+~_orySnnJHxY3őj)*i!fW Th`S*-HN/W]*OádvQ{\4\d_&iJ.wKl[΅84t')u8s%,jYeʅơ.dSrQY% wT+MduJw3a)%"&`r"Ɣ"W*.R^7u~m}LĨBnx-KbWH3\m`<ȭ+:#:FWp RH1;&Gb͕Xɓ鈑1o}Ruar3OTQ $#v:;KIP̽|hP&fM@U6΀^K] \`2 cfJo06UA [|ޔ_EoBo'BE- %2)\'SHQTi)+Kڳ&}hT bVkyɄ8K?|"GF* {܊4,^ݐȇ"zS^sakB̛1jij:ox_vBtK4 V8.M2*->|-u}Ý:4M%pwlx|L'a睞h(>ODm|-k}( *U3/T5aA% lhv9/d{?T/~7{] 97iQ)uVlb4~zo{$: ߮4t$u#͓  L^i1aCՂ]Wt"焘L*BnId9Cܸ1P R(FhIm¯+4/Aa晴BsnQz"% w=0kv|DM[!mΔX߁ui FsWg.GU>Ŕ7 W*y+ $A#h0-yzn@_pE\k<ն; 14ץ2 |q\o:uenA~R1GOEo:.~%ҴBRs|lkaH譜ֽ+2\539%'/0x t!*(.q VE[mJ "mIPN}EEM+ʴ\*"n74#ܓ?\p}GpV|.? ' h>^pp&=l{.ltyzGv*]:oޘfD-R^2i[J@2'q%:Ҵ l Ɓ8;|T`2mdܗDֈbX(@;ēRڛxhXΐ?H4aptc\Ky՘ۖz#0\}B2uO].f<{ Z Ó^7B jӒ*Za2o$֣]QہB8/#.9߉oP0&67n0XjPYp1J%֢BKSȧ *-GCNN=Q2imTX1%Dy&e5*XpS ?N1PlW"w8|FqM~I3syʺ^ ^1[RlPoXFoVV iE)-9á bcNl%|/%ɟfg̊I7_,u.)ڵ!&ƀV_n6u*8Z51\ 3 (Td 5FMGw0}<˧u7۽p@FAoh=ޛ5hh5ĔIiԣ9ΎЦ:#N,s8k ja vM}SE>u"`~bԆ&"8aEφ+;.vvY>8 #G= ^B]RHq 'SW0I{~G ^5Oأ&h7b}c*}[l4h"wFBԭtN\+kTi!j6j?Mv*+!_kQ#aMs(U't`̮ 5dzLXp{#*SCbRW;Ê܌a&AQ}-;mMEnBt k/*ݠ ]w+‚57namml;lT dZWbܹ6h?AL LD 2ͺכ*Mm9.ufzYBM\cSKUL/DY͖K[x FT^+3Z{nxڏn H (w<4jͷł5et @0ngms%Q=lX$Ÿ=:zJuP/f@ 51 Te7 a.tmkFT+4ֻ"_;/K'00cMQ@bwPh(?I9x g@;2|ƟDx6Y* It$@:C;q ћxٲ|,H$4y;cȡpED_azb$}W+5%'}l{n' jJ PrHg˶+ >X'o60΄xiK &Jf Q_Zr8# R*wrtТ;sR35/b7N؜Xfv`W&z]ΡSmV=q{0WL` ^U21$Xr؈Zoѱp}#9Sn閭TҚ MzlR~>9ǠXP3oL({fQR4z1~ՒrjzpٓPZ[GA*wA n2]P"2V#({o* ,S$1US}Ԙq33gIll쒖+ ٟ2WVHyv1:H0}aa˳7sp|OljdAZ5I9iML? $75{UOqB8i6Pu/;Z<}HXͷ<%ٮYeK{$;jv@@X @2El(yΥ7AZ)V w}oOɛg>>߭vU[ {!6≍EC4͞ *ǤdZ>)ptC\[ |·df;P|skKbZӎC0W >Zt]m?Qףma?C;8 /|^w=eЧm9^Mp%lFԄQ]U''TLy.6Ce R($74of*9Vbh+`7*$I-A_cѳqQ}R}Ïj#7T0 lm(%'^+ s ~2޵v:YnLlV bOpZn/&uBj,I GiknƢ 5O=L6#2NKRe\)$w" t2Voy+pO2OAsDE xPgp$CaW!k2:NP_Le)sS&&Ll8? a+qNdY_4y#Jc2"fFQ)_;xO±nh00$Kud@q 4F7 ]7WJ=wxp jIol@Xpg6:LfE<=+G6V-ř&T$cKvAyV/!* ȵQVLfU2ѻ^'H?=k eƵzPG @nvi!g.zffNfH6@rJGC,))h; JiOC( 77U^PȬq ,V|Cc1ʢ9Jj^**h_4EYIFc%@7QJՌA, H:o_vH`E\,[R+R6®~[iV!zZCClyޟPWb5DÜ] 5ըQS[- KOѢq3X82eg~P-=~=u4:A땘KI <51['~[߾TԞj]NĀU*NU@s9k$>(B?S"\LUZ47|v;4gR CRC * g@.ӣ@sczirojIZMh]HCV]y?@K@:p@҄oڼUCzS|mbR0WO1\5ER-!B(`}QG'WC^ՄkşK{r}q#op*b^>Ziwi=P^f<5س"O!hLcbTY^Ő6hNri"ajӶ==_ (ĕ̽\m#ɯя4LKj;q dFP$+yK0po.Ob#* 29*::``;"YI! kk b#Ūv,~b83=nUb[kRUn̬;! P˲ͽ-Bs9ܘ婽CJ{8<ݥ#:W; ;~;!Ɂ<t\ (WB+(𒓽z3%'N}H'$/׻[?$뜒7o (N -eIMɕ 0AH8)l3O0ZQl_ÊNd,puOn>z Bero w+P5*4_S|B ?B0)V8]`9@[wΠz* ' ?O:T{aCH>fdKuRQY@dkse{ol@>ȑ 72jfb sC(<@oich47wOpi~V#%bm΄ ۲LGxw M(s X]az &kɾtj8}SVjY4MK\8rB"(̀X4߸czU8m+AslMB헲}BD9O&5]@Mt47\r3qB˃ynk7|-fauINC' CzE|Xɪqqt/RpbR)sA5$Dev9W f!ړwޡa0=@56088T ~,hxԀ>dH.,Rn<hMjEW8KOm1jʇ7?Cn,=2.6^ 5&WTT3]O+CaW2007u'T $VPlstֆYEO.BUDq1^7{IpF0$|S~hԧgol^ɭXlCڱ58)x^V>Q_l>Q}foex@~PEi;\ @:~cF+rTIA+-bdyWnhK!'&s6b|Hb>wDm-׫F&aOKzӳl˧h 431Cc}jGMșv{ WsͲ vFL=Ý Cڮ6jں$5w%Oi};iQwshHNĀt#K`n<10r\`-;qhX7 %eph7mϤ7ҎVib7_}hױ:XCټ]jOw#onn8=qA {t/wϦх؟a..8U_4imG%s e,|Q,Ju)xYLSׁ3ǜzw_d9se8A}=^v ~U կP;=~ulcKh)/SncTj(=Iq2ŏ񭖺>UTg41R w}Y@Tŝ(nrʬًݩC0c'Ԥ%$JK5˦ҹl)Gm\ZίBi?[tCQu DZ1%F[Fƙ3Qͼ_NVngr*cݥ)!Io𨆡DlmS zY֒ \1|4MO >|'7CM5ە?bfQC^нr '1t B=2z>*[iUҥ2N%憴웫q;|Y#9pn \*v*TYx<)cZsc/0ř375ȣF#ګ|Arvɉkyϝ6M6Uria.G }b۾HOA~,/^JG/MGP=Mf3]7)l N6=Ǝ2enP&8F'^d)QV+ʉ^8z[lǏAk'I8"ڸ}|hr/jCDpn G/Q/@a<A]XS޷r 8hQDn]+LnMq}L3^A"q5;J+Nϲ4Du7=o$OЌ_85ӕ pm@,>L Ggmߋ3.Uɻv y0DeT\eɯ}(RvS$խUdq5F潒]̪|ŕZɢ"Q3}d≞?,۟>]i$`ך] 9a ~Y0gÓ:OHqIFd}rZLЃ8uOSYyD~w*!˰Љ$ ;7=8^ٵ4R`gHwӔL:< HN4&>ltݿT}OA5{}|:jLQ u܂q*<$t;FOUnPZ,'}K"E|y4XbA 2 1[DZCaun7ƪx+CH75kv4w?=X=5m=nAW#]zIa6M\d59}Cloڏs{T>1q_g=S@}QxˡVFwѦw}9B$(C8n0pj\ztYbü`6l'-q * \o#ҍ1cb=WKK(_̦W #>/n]$$DSdjME?m麤)>B_D3>Rm&V6d`|(R!o'+hGhJZ@`h).TX¬?!z k#BByzN( y㋚cNwΫNSRʛ3(|x~Y3XHerm1!]n2QJX/V%?5׋2W׺ʬǜx_Lab%EVeZR;z /,CIʤExzAX/8:xyR4ES/A%xQҏ3AV'bvqQ U{7 eN׎jamH]Q'[_dW0"wövD F;C>˂9$$,8\ 65Ţ}@"+44)!^AA2gZ+hp`CAc1Y==UpUGy^HXKrdn&v;4шWPňV?^?ͅX?\}mn`N`}:*-_g|O劽|s'cpb_pRD0S̘#;9.S*La"s"Q0xcܳR0뻨.q-4#ںib ;CBACȤbJ:B]~ɧhC)cۉ rf<}* '!8{/w7UP/0L`) eL!&eǗ* 2dxV*5p ɢzd+`8=uCE^[ȧ/NM@\~"ͼWw `n/;QBbŬ=opE"D%L:;Pjg`?(FT)caV[_| W'lʸ \>Ms L{:&^Bbʞ92Z.y㢪/J!&3y5{:εUe/,԰u؟/^{eh#O. ->XP5\0@CuovF[?D6:|͖9JbarӒaP|o{7CU/#(8X⏩GjYWQK|ϊK:sۼĨf*[`=:&|tO~aÕzyWWťûhlB/'ts9[:u^ sR; I@7 hڡNoX.ۤC&&;H'祢dúb*W0yQkՄe$={PmϷ܂M2+]zWՈ3f@_?Tv)MvY ƙY{V4h$=]nݡQhLGZ.i4> Q=ѳĊuZNZX=]Dklx+]ok;G)=,"|cc?׊edU7ݔg$HPGT 2oѬae_?"«3KNKuZQ:2(qaqF'?(+b4Z`m>"TyQU8³M֌^Xhq,!=_@93l]&e,0 H; 6 aNK*ϟ(JEj!?vpB4?(KvŖ }yMS\Zuӆ)փȊ{p .hgVK/|y/gQo.𥵨| `I#A[j-y0ATk"79[v\ .<Ӌf+-lynV E@VI':@*gEUCmx]:P]nw?&j~_|s-+2Q++PR~D8l{CWmB5~]h I/E@{ aǩh+-NARFgaʕP; \!&3~r|;,/^r\3ߛpN@Ts:Ҧ_chc"N_cΦo$I*=6x[j(ƛ\{~0rBVP?mA7OIBwf<)dzÀ5` + %O/7s5o!4pF4%qg0O|"6ݶګ{}bokȀWCxC?; a7@$CSH',:op窲I}W\p8# :@ŶrPӜNv`qI`'`óFjm0<[a TH3mt@(>:-n@\A(ép :eH.HhZ 8eLm͌*Kf*/^޻O#e瞚MR/4RvKF86qWo=QKioP+?q0V'i"]ШTs ?W읬Cj1߱aYs%Ƚ;`l=؁r|éL7U{锽pw$ LV^Z*Z3lKsBR3Z(@ME(zڣay\kg9j,6/l.f >٠voV_ +Zd-~Dďl4N>mE\fЈv7H@zq<ěGygj3@ptлf[-I=*`5IZR|c=\<1/M^@ ޑ%3~1HYlF!Άt_ڿ] ށ3[^i;eT{R&tQ\+ k$-FV(W eB)mZBίtw0y WtY{l!ݎХY*Vp;$;ӊrO|o= 9% qc\Gyo}\%xj\*~ M?߁IWm}=Ł"<^@T=w :ԡ"/ .9zwz>e%XRUeI[gDKQ?_5-@}%wTcNKi䓊w >¿]7 7GĨa*)Ǭ +1i)xG ].B)3.7@ y<(g R.~>DNcwu4Go)lMKnfhiΑ wYRX&2&GŚtoMv?Ez=}lLڼ[gLd_Gw5RU8]L-$s``.8& t?Iupb ba 5F[OQDwhdƭާƩ+r[Iy/tsfyG$NZN,Ҙǒ'Rw]D^^ǫm vZInЦܫkCݬvsDs\\)n }_}a| UgiL6 VυbЖy5#i-.zyS~vG_kaEt1@Gj_yL,4A.躢սh~mD|,RCʵހLa؅zy4 "lTNL~)8'JKF";(ܪybR gynNVYd/8II۟Hd5k~) ~M|Kdi<c}e ݆kĠ.BQz#ߵ,Ewe]gqUv7(h&NU,P1?|Qժ,Lꁼ]&ԙ4?]k|wUz6*^ 2&VVͿo3eyъ|ڐS>_&B]&Gԯ9}Yn 5篨M-IL_im\ϛ0 "gZVk\fhNZl4WT, dL%-nf/0UlfZ&agnq:"2NƤٙoqǺ'|e#LYF&n1Hz( Mb~~U Ô"LԶw^s+AhAe9](l~[7Q$Z&r%F 3C}vhr\; ͇?#GmMMNug;b{SDd?W,ȻIdA2:޸dj"PE/!i윂 UGK+ rpF(nr~p8`|,Wa\.)K9San–(eyoZy[Y}bݸ7@٤6*M^ Q}v vX,87c4ߟUmiT&³Gᘳъj),6t/y oz _*sQg9FB T!]G[]~P~(xsG6`ٺY :M!P }1z!> -<;2DX7ZZɔKKjrM+JoPT޳Q#:SQ$8spvAcʟ&[ <%/C dPsYhW6}O@?H2[=SMOcu qLd [s7}Wz`Ctw^rF#VPNl[ [{ ViBG|&b\ےPO<!wWtM=ߎ/6yP_QQ-.I#,-vFM6c0nmOI=4?seE掅!=7#G>{ycUR",G׭W閆o.|K)Qí *jcn❊-Pixl~[#{jj. [*_r'Z,_0bleJ0M*@1@HW?}4 ,qt oH?H~MMQYϑ7ɣ[ e)#ǏqQ_0T:A/T(`>1Бp*>2]JU'QLoL1tClB+'%m+e6rl[ȺJNkv_-!bw6L2mHU=b&FXΘfە>fxft /v{MڭHR-h)Q FhܠIDV 5Gnh?k3A{d~qΦG~jBe@Ut(qʝK[H{#Ab З5Ǔ85!I'ꪵWrZj۰u=V)^`^jQ3MIQ6|k$^TEM4=%dbNHck4>LD䠼*q)+<[^u9N\8J\P՗V*}Q>'$f#+֍Rtu  ͻ:Dm私 j AFT*C]ZV趛pk`2:73`GR*^Y5|Tz.#07-y91V`U!ӺªOj ]ˢ[72usImeZ]7qok'.-3G=#j.4P,ofOdAP ˍ26\vC` nj3h gTeFn4(\`EEU )B3ǥ$邨%Jtצ5_#S44\wDg&_?tO[BRu~h!Ͼêؗ]pԎh4y.T@J(/V>;N`NaI19zoyy3Mr ׈BVMRMP Xt%xVw趀JJ|@V߉18߮wYӘ?7Y~ݿEss/J~K0$Shmrȃ+žU_<ڽ)i թsO|'׷(n[Gζ~ K+lrԅIҽq_" +\K5vN؛RUNOթk)DT)%ەx#.:hR2Ze682 cExᜎW2 GpM9‰P`(*ƺHZE%}tQ@ȍ?Ԋ1!߼ JuU k omޏŃ<T$y3X1Fv9-d%emM ͑sh1|np amq1ɹV7}qvxhZ)DfVqvʲ?LiYN<0MU[@fɛJt qzMՖQx-_6;/{8änFpW 3(}~ e/=][]OH`1yn5, DԦ3}k=dاaTYpo[,:cihwti/ KIm:0 |NS!΍N\?)۹R3*1AHL uc>HM7N Tml?yUFa7X/4 r:iSl4QZ e0+$XN$%latg۴n"PRDźC:Q^X^#n{ts d2D:ux8ੌӘ(sN[nD~E`캔c'Le]P$r:pٶjK Nk'%u#ϱcOC%(b،9!C[Rf''LߩP2Wv4bUYgW7I, YJ|ߪ1)UzuzK ŗ"^昐8&jHl'HG5sL[*}kn .v *pKPWSd"Znҵ.Rnv L}jp5gM%IL̏Jb[oAd4y},:@WB8cobpo*՟XGm钛ZfmĜw+YN m-uh'649wՏ)gc&,C BZJYKmht"+poazvw|T:LѡCQRvUIf.%H0n<)hqq+\x<&m(}ү۷r:0(䰛wVˣZXہs1Hr#a}t ]N&UbHJ{?"VBXY'l:ۇ3 ˻{yKOZpdL]rsԘrQgYc;|.fXxjXd230gAy]3Yɀ!H^ l`o"NI]yK E߯. ͳj$R wly$Oʶ{Eh-Ss@c5,J{G4IiD@%U\ziĊ#xrkPm|J1"̊abrGvyh3c^EB1(GG;75Ek‚{1VlL܎顐B7j=̆a we1_qƭc F:- ?y+ü_MЙg0o774,)s"דI_H1b*"M z]@߀I[KsJq"/a*f~4b6Ri؀Y ~ǀhԎd>z %fN4A {о37Jͯ# s[p?:HȢy;?*-kCckA IY~7JKH.#Y\%?K@aܦe57Ⱥu[kPGeڐִ s7GN)WC'K%R\"VaO zq׭ڲ{2F ϦEx@d3k[{xSOk5,=CJ4ɸ>;ٱ6-k9y,p}aZ|NcU;>KGvŦNh1*oUg ! k=5„ϟ&TrN⍳DwZȻKYܶv&@2 1Pry# \ԝhտPYY|Q#DC$)5egHC/+]~av_”=p5<"7Xd\oNꑛœڟHMa*{@kg?m-AvUgwǎJC"Bn^E+ m7iBd)^C.=r8NUp'xί6`:`"I-DC`QM, jU:oT T\f@īdq?ai3 3?u趤_1^K: .Dx$SddbW@aiKyI>،nyhCxFO2V71 0ڢʛ 5 /DXv|-l}CNvjזO3MV]tP u Ya r|j F9F$X'mX\BVN_Ob|Mx*0 x0lSOOņR=bU.ώ2ϋ&I֪ED^I}bn  JjcepLl49C^↑R`1phB.]YV~lG L2_O(EOӵР%P`L.}Yf[^{5|ɚweoygďNBȔfV|)\hpF%T@;q"ylidg B@Wǿo$0 ົ痡b`0G6Y*1Q'I/chXtœA`GA@Mv ;+BKJ2l|{wPVML6!w@פB/ cam$\(mb(pw:OkkbwOn=Kw蜽 ~ZImd5~G %ڷn8jQC$6xC B䇂.hi  1#+v#*֋Xiu< 4ß>N_f\g`l1 pO_˩bZ% VT+έWlfżƪY2. &wI>`y54X ET%?,kZYYl2/\wG,~}CȢ,d͞p;.O>ۥ,Z؃8'ޛ-Ͷ?}$u&ۤ9"z̘I!/.-q ŇSzP43~Z#p!W|8A^5sf.3I \8f_A`f.AĞ 4(BՇ N£:% X&In'k}B6$[kiE0 M9@B8Mڄҡu:t+]H$F`(+gym%M==-rGؽGW ̔ݽ2-r˼j\}{ LC/m܍ĦB%W?l}YV+5bN19$op ^93H';G`_jM~P$A2+mR9Hi[(+(8ӭhDI* \۳pF蚊ll‹_ޞkMԕ`RèAYud68ⲠBfH崓?%\|(;d Fʺ<4 (q%o˃5ɺGٲy "M7F !c#e|=e{]@)\Wۯe29A[8yVnfLHQJ>6=nNPv*s#f-qn^F/Hʮ\%M3!Vi'Y̜όD!àM} yDnŘ t줻u6/'Fݝ؂sa%(`bM s!֓1wӑc4moUSRF,jUO+(wH/ҹXf0எo}A7WÔ\5. pV0>;uHqVT TӾe)1"/kdw&Kڹ|<ٵZʿ:T9Zfu1 % !ONN@C&9 rmQF'UsܔZe.dƾwn?MI.61/4i] :y0)̫ 9՗}a0pdR Q9\g7t6!tQLx@Զ>㙿ShN~]:LhnTgfWHzDVet:>Ժ}+$pU@ DX |;Iv_o~'ΨOX̴=wRWSHKkrNsxpK,KkAġ4j4llo?!ju6w EײS=nK>4~f[^+| /@]^ե)Hq>@aO|0983GigGƐhd#$zɦ9{,-:&^cԀ~"b%: jVbpmvCKRP$rBqV&h5L!lLV(cEX#rJ粭d zqxP"n;wU0'FD admECuD> V>i2uPZߖk0iun'T>&s<{0qwo [F1ErMJuaPVQ|v\4j)WXD~QG#LDGa@h)jb(\$Zzi&]>`zO 3z+To  `߯}=WW:{ysLYDFֹͿܔ2U± \}BЬVtNyC-bXg7[g_Aʭz( $/`^c~W8$}fk &lSZ ^BU{>}iˋ9 7=a1ސ6ǔGkG"2k1y@ 7c@7?;*]frm,}!`4S6fݟflG35UoI4, $tWX9MW GM xj m Ȧ% 5^ݤqހ_?Uhx۞ ~G~jE^Βr= W.ty3&:4g0\/#=ݱJ {՜ =x.Jl؜mɃᶩb BrGI裵{}炫F|NSXm qVS2MOj;R\eamCNϨSu-Zh~d&K/rfw:NCY|.)7z@z]&gҠY"IU bohp$o0t*:.wžǙXpz*~iFqh"&٪}O=,@.8uQ3 ,R4j&"# ?\D&&P53:!R#$816k[ǥ4bO%"PUbc-vXPfu)AY!};"v{W ^ pA+~IC*lKi&^S $%^]qe]I:Azz+5$ ZXjb>B-#+1lN٨eRG3-#S+̠lE?**2Qz-~Bؼ8z(V^8ƕzk.y _G6݂Lw*̐HʸFW$]B.{ ߲n'Y& Gu8@rEjF잮mv("Rm݆iy?ϙȥ6/w$L?{!gܐw6r=nͮl =i󂉵_sx; ]rQ~ &Cٞ>I&(]-d%dWB=֎-[A_E}r>&1߰(@*D)%9H *wҿ~ܞՇ9 |Qi1^| m t0IV͂dU&x5ogxZв_ۄͷW(0IaZ"F1GVF\<؎43}U-ou~VIXҫ5:V;*Kw iSF 1+<68<+G:J^ fj*N #T/QxLDK׫OviW(f;9$\(/cys|'RS+ m q]awF:w}am̞;6䐈CJAvI~o3ġ"lh!A0It7Cq*}\I_ԻAQ+t03PGgoj:spެaFHƖ|b.G .D ȩY`w䁼e* [qʷ$f߰f^cg1/gۧD + m BMaQz\1iw@ub߫[;ALa j ixJ^,[)zPߊNrB)hdM;# -5?Iiw[ =2()|Pۥ$sO`olnJi>77( V˯[$_CP0 b~( pB+ߺMAJWhh"zPP7Y8%vQdl ROPd3Q"7ş$b-cϾ7f?fyM$ECMNx`2s٤e՟VUO<}ū5=Amg hX`닱8~*'Vѭu7Yq&@AR{x \N7z9̪GTuDNŠDk,%W=vZfiv^vG!ۍl-+ZwsPc'LmXʹIOܩ]fH3~3 ~]<%D~*}ld݌p,Rɓ;MQKBDA~MBeef`JR^Ghfm  (d8Vuh_=EEn#TNzJ (2buژ=w@Ib*TTH1m2BlnS]|@7l6 ߴL VgaKSRKZ ()ȃ A1hm_cGB^kxQ} .5] oa`gT8=)uC@EWEմ)ofT #PuA|r2U7](nYqHlDepix^Wpe fSGyqxt}~@"SRVcX+hL{0L 7@]A'd^g> J]nB'npDZx&oTpv}Sv[1/UrvOG c3o x՛!XhvyIFnEJzeaqLJ)W@_KdMWjkO?ZwPڅr pHCG&gcL, 1:mA2÷^RrU8tZYxѿTה++ND K7%%!"7L(a{MfySP`͈~Biz,X G 6FxleϗPaTx.Ƶfr>{+Mi $3onk08}Sc%yj7-O_ӂ$Dr44A>?#9ʒ_z~xkO/"ֹ,N*Hƙ4x͡=()ujZ$턿Х4S YCu,['CmhN1\'}(4@$ "G̴;N#pkJYvNCΥjmgM yT4xiL K$֞-U2'hp[GY!A%/pM$.>lpf w2#]Vq V5 7/DY [▮Ηc {ѶܤLHڇhwT2/jÛ% Ԃpy$üDT2w)M> ;{AZ2A6 9?" !y_B[NrIy (2qoR:갢>v+͜y\jx1ُ>zՕV2'x!hZl}.ZzK !jطDI})XX!P|_ޣ(2Je'g7y+C0sXD݌BFo*MRDR7}7 <3:7ȓQ4Ŗ[Nw]!t$_gfZ\n yqƫbf¯lKTܗ̵4DC5GX~A#Ee #__{0Mm1jG>/acr-Q, 'mB3;r: 5Wɳhq ,;}`,9ZS+NPktV?:py}sjlR;53qFz& ^eF1u0c,4Kmsꈃ{SAMny^ǒHR]nHH%^7)}A9r9Uam<껩[{TDݓc!8[=D0#NI F J:}9Tr}X颜#!GB LJy妬z) GdIg|WG[kjD} /MtRgDP#pw4fA8=}'^j 쎰@{ƎיZԬˊio:dTz%jIw<5ʍ\iS<+ɉ+I7". j!`n\L,JfX:㷅j@x(<`Q,{ 8H痆+aQҐ;{a=%K7{3wg1ßzR'"\S,HݑӰLbjk}`kU +qoZOXbTSp_`SK$[B7K)̑ tošZ}20a3,S$;$P+aN@ǣn n¿PRjDJ1ȬRkrg"%TN}:Q hmhOgRy`LjDo-=*s2,hra+V qiKSu>etm$xehG.t͎e5 {d,v%Ф#kuqű;5GieP=#a%:25=`6e_=3)57xOF[Uѝ/VbWMwPr,}$O!TcϏM}E|yjaZchA/Xס͊TJGfo5ZtT4HUUGm> ȁ|*`޵NĿ!gF;ŽF<0JPQL?@긮ey=zxb&VSf'yiKv+dzR Mi3^Vcn\nkƝ}ߵVGZ] %71N r= 1I~oR'[*[eB'6up'@hY%XRo,scێ ?^NcY䇹9M41vDu6C nj_+Gݑ#!a=(vmjݒ[ӛF@?felk_2pcv؅[%#۬d!ɌK<%F1/{I]]AX`յ7}yC@3m sf0o+ge"oQI'i){_ߚ):C$ψ t#Ԝ pWЀTA2'Umbt{xvJQaIi_|h* )X9cm؎^ *g;"qp1xpLt'O@!nPot?>/d!uDn*UۅSdAxV(_ud,2Yktn Z"l+)`-%R- e,d0*@A f!q\Mp;R[S/n9,~bB4@ NXӭ|mAj=&LXšaޚ m֟I; Jm_'uB֘*bWV82nJbEZT1 ,@qh4n":(˳d:qowL9"K=fI\wC&HUZZ;B+.şM5 w%{@ND_,"hn|>4Meu0[fP]شk+C~Iz**Vu {Zh)xCBp<͎ f2x1w񽫖%EFϹB0T'[ 0pO|s 3^Z$B4$AD#hgF<t&_% z$8C=jf)qı_MF}@|8:%uo˶ڝcexYZL6jg> NK={Tqs劐\@3ZT+aQ^@qˬ/Ի- jH( wr`\Hւv wx}yڊ8zK[Piݓ:kPm"(izĎQo)kMOK 2YvOc8:7_ *J:V^sRtb2.^s<.=I(vsoc3pRLIsTjAQsڲYq!: dg'0C3K}Fvәm5p-PnSqgh( # <㶖/ sP;s{PP9,mEHٵ.sB}yfGV8-'CF VLwaNXF[trλCI6:f6=~!}.1OCc^I#5gk:fL(A7JFtj<(b0 @ྗOdi[PGII;AWLmvfdXF +N=[=J7$U@,)C3 Ja ь WJ lhENnfAZ9i7+_ή|<Į0SLZߙV*o#*,ucN9Tn@ªS9G\XMݩ_Yt,OflbWQB*<)T^(8 ]X@5WhD=+CЍf\ TZ~G]_=rFykRONfd\* 1nv=c1{8lԹ.@4JygZխm')qHJe#߈0'YCG#ks\\E _L>= &ί5w[._а'#f ـ>>5M(Dp)rq\Yb] v(ԏg~'Ӄ^8qYǁ(j^VL h=3Q? `¶0iqp|(<Ə5oG*(m)&LyI{񠃿#_űJEu;0.W q~V)EWM>l QjfϗyommXnF6a5wbEjɿcj:Y߾23fl{kV0)n >O2t$~vep8l]cIqJǻA&xZKtv6ELOBxf;Q$ Cffjgigs3wu"c‡iɪe5(clV*3n`{j儦pR & 6`lታZa•MLVאַ*;%mZ< SխF&o4-z":掲oߚw.@dG Lt lNYi焍S|;"+< Is[K ޑtE gOza{[FXuw&8q&lhV¦>Oti%pk<*1:,. zI"I}(}qN=A]8(lhЄ8AgHf5BHs۴8RgM0#_ԯ&;4CČYmUi(EZ˔2>ͱ~4zY=Iv H4,)4W@XNe7֜ *6kPqsh881.o.,٤i_i!Z g.d_y6  KB8~MWJT g3so⬗KqCA#S'If-k.ECsO򍢚 w=vdi.FԴSw Y.ij{g 6UV|o>sͽFFaT0c6QWNtZ5,6~p =k%8[AËI3q[P?I]R ϔ,=t ҡ2Ǚ,7MqB0W; Ȁ*9@q8W;".ȃ(M3@EN yK-3@A|B O?-XHk̼ %y,`q\ :q2yW.u{5JH vJ'@S}Ȋ_QW,=wwm4=;g?#9T1Tey]MfZb|ǘ~*epFLL.\&"U}_ CW>7QmPYvnK=S?@2%c\`>|lAXGbHVKoe9B]2.JS'fD+Ŋ %^`~Cgt kU@Bõf Ex V)Ҁrkw4URvhp`,:b *uXvkL8`J ϋi?X- r!Zw< ϡ3GV Gd9H``X> a#qMp`ɛ}ٯM`?Sh/i-# {(z<@6.70=Z!>*>*|4tnhR_¢ [4f̛$5@,j̦>6sX7\Ȁ ͈6['>S OӋ7X}i' J5$z6aE`"{ο,6y*qsĉQ$Bw]j%9 ݞ. qW}S!gŞUy+:O #W "!K5?pGEAvFfw$3;XhPGoTZ I;FoDV"ڀVM^f !L-@|.3)F7'4z(Yo6Neh忠`~WzA;2jy;bwrfO;f!3[' Ĝ74yr*Vr裎7|6v?>eyp'I!EP ^0Vktp;qSqM- -FNX?Xlт?ؑI055DΦɑ P<|g讬Վ;kGUM fOV`@xz[ xsfa3Y ; O@Vz9n<@xZDޙ` !_T(kLBJ{%Q˺~@'P:hKiQ90P+4P%vX? $ et<=dA k_W3GPkդD7^p&f$}~S؁ l:s:p¸E;gв։|Ef8*;m; %V|L>[(ؓBd܉ojghD XRaMpV?&Y'Za|jֺ9ݤz4иK|zDp4)& ۈ}3 ѼQ,VSj[zrV̢) !DbZh b;l4dm_$(&RTld?=AUQLm 4}*=)ͷ+4C N@&w.X-9w"M4 S;"j &iyFd p͕{2o ,z첺}֓}ɴd=ILsXv۾qFG/&?\Ɖrei3w'bNQ ڏz&ʈ#,n[i2Ɏ]m<)|8AT<c[ 72d{Z:훞qXR|}f6Ўq"h6=P~{ dƺUysԍĞs\5}J?SMc?J>< k2pj`v)vu6,ˢ/ĝY*zq j}Aa:G1OἍ97ͷAD{]3Cc|9P8m*H8g za8ǽkMqvqKQ~sբ7r$?clp>*zGcԋ fHuǛl&|fb!RB 75ln '.w)+GMÉM#SA6o:Vg\] G9"Dȱ ͭ[A1_E֖#(ÙXEecnWX.I KEpY7]LGynRhI/=:W *->I ,{?w`c̛ 7䦢Y.4;S{ʲ{-gS{< ƽ/A~)rf oЋ[+Cb/`Ĭ h7BGڄI ;Mc*0C6}}Zr(L=llM;m l{; -ez4H!"9$[7Kb2ٚ@l0dUVz+ZBp宣puu@.$4)i"p\fu?EJSn bQpE,gb&,)_~w#5ngHԯdn 桶?@)) уY:m*F%?Y8m86g$PrC*IOgݕJG^>N./l"!B۶D=v*C+Dq4q- 7n U,+3gRWĻve_K[-N|bxݣNKs ;t݇}f]yp 8 spˍˍyXqmawN6F뭬-BDSq49my(Q`O{텳yk8ch#H!;·!7]H.w,lXQܤ5f'4bU LO2E#Rh@lDLU֨JJI1}Hgv(e'YfvcѣUx7{|D8d -|gNjYSb7v ypw``׳Ȅ*yލjm_ɩWP9dt 6\މ<6G^JMj7^ĩɹ cTjĊKw}F Wlۃ\nELB7ؖ2{,Bs>aAzc6U\\ ÁBIV ~(1٧ o&4a+1YSC-!OSkŊP˩ f1⚀䯂վC]+=QptwL4g Ѝxk0 1(t}Ր㥰20 3BQm?h=hr|S2a`7=/g.gyѳy$ﭡ=jܽ2? >VQh$R_eYg}qFv2|j5D43|(<7@,$¿f1MZ tjrpř&fi#MKbʿÛMmI*N/xHi(;CuG:/r[=;5Mp$&XNd˒sM^ 51t5Vy\),uxm;4u4dp vm5(]]PױŌTkÙfUqrGeՇ0 2 ]\`S5Kq$KtqoSKXҳ<ЈN5Kx4Ѻ̧Gյ$\]zc4dJSJ.S]Mst5I8ˣwL3I,|efY3ZW_ܷ_ |&3yN$/ AK>W`"4p,|3sep$yzaN]cOAvp/_wKE)^oV޳t8^\Zjs4B/rt쐴)Go" %'H OOֆ؝NB443EY4vPW fcRNm%W44i+ k|Vl,jp4Z{"|wlsG'4HU)mw0V7 9=5><j`H}U6JS`@0@ε:}mR[hP#td.^(U_:6pGjx,M ^]~t9#נ Xǩ %󗺧8KHtL)na~ׁQ<0(RFI>7 *# }mTgOs%iC5p Jh zذ_3 l)HLxD^ {skZBqQ#JIW^.kN#"ıPbi HИ!8͛9Fc&O]d! BQa_:`q$)GpE8 n<iN=>yf˪roʛt_b]x* СVcs-a38s?.!T8a9]dvk?N7eTjߗTq'ۖFgByUc&\!ZSxĬV1Dl,/ѡ2oYCq{˔8(vZ:e=[ ŕT={5$Yꟿ2z;+BaTmzU)˳YXuцKX2q/'r-dPG.1fm|Q2(/@g=,{ԄjjNC~5V׆)s}kk4T|ҫ1cui6F 䞽?Ё/SÄ "yzr|g||x.g0gN3e39_):OJN1y\r k={ݝЁcz/zp|HIÄ9l>X4УNQ 6ؿt/>\i:G6ժ; 6߭׊CotPJ'64:Rj`ta#8_1J.@gjP?q^l#Q? tÂvQ Y횑9⯗07)oI?y-.76n?4adM2 |}z}eG8$%W-ͪ' Fi\j6 n嬽Ě}Acm|!r4?(gla=uٹ,}/laR$IQˁ-4 gc~VX| 'EyP['\!WC@B ͎ŚPI9 &RQc;x{ƇUCpezIG ˣA F0>q NbW/ {)YۦTQdle2!|Leܟ6B Y{s0sM&.qkc ݮd/W6_oϩc Ssq+uHGoݙ97s\M8PQ 5+dʭ&^ K ?'v]Y/QLD(Ww,ogi~n5> 0c>}<&L_ߜޥmύ H~CNh33ϑp\DZ*>=#Z\oAkǦ;aM]I(1:F3;Fps[e0Z4TD_|yb(l0wILnFX,տd>ĺ#DK=A|ȟ`qROL..^JR,,OXK\ySO2#;ATʨMdBy$|0+lEՎ;;j'X#ZN)8$Q|,bߎJ̴-!/z12uP ׽~L#̂oWryo3ICP"Mɶ1ik8)L0 rI}tP,lKxX$H."b<3, ~a+M'`υi}j +p[l\~9J#T%la:h?"Qe Y)EŰmjBjG2#p̵i01':I;ѐ0WRT,v2rf7  ٣ۈs; 1mU$ywꖣ2Iϐ!ݢ}3 Zه +^3"2yh\הLI=e!Qsl{jsJʍٵ ?y3?CPR8N] -Gr*ښѶ Xφˆyd^m:a%5'&rCX QUAw9b\emq)[MG9.GaM+?M[MGGl: *ftKa/Z33܇CΉ )hY ұSrS9B]i4"4@}-Js0DlpNp"-Cgf5u.{oFsXGŦs GɌjĉ'/S T-}mXݎ3[1.#(=zy`Fe@N2DQ7XHq;;?ka&ƽٹi\i&[ 6=RTzXtkM(뵋2k TԵŲq20016D'A꼬Ecs}t4 UOCyl4Hw&IאTc%NHYHJ_dmG^wu0\tB9Zi:Lz 99SDñ?- LCПvKƅW 6v|:n䗃z#K\j/"hzrkuFkܛ-uPvڔڀfѼCz"y #A 9=8Нx ӂ9788T \~W|]DcL"˨>jRaeTKT3L-a/@EM a{TrGvCE/Š;,IaB:@'eĽ$c]{c_aRAcA aW|wq:W|~TD2 K d&Qsi_ %s{јUXFR[?&n= YVcpJymYCP-. adx7M f`531`՜}pU}!m>ܷF e|9\V!r[SH@j&]e; ^ύmVS |'ʇhjgwE"p D  ܀DUs~4a~Og4:Uh{r lrxmtaX{\]ҹޒŏ+HCD3k[J arOr@˧ lפrEͩutfVO{|0P. ک'?YCh5kud[2]j(P:=4(kY,/M6)-jgD nnOT7j~A_"|Byj|L>/5vS$*#)EDэ[, b@ :tEBϭ&V{Cf } p{i8uQ^6uƲEE1w 'qf:dETJ.n!=M DվYy\}tF< bgoN 'Dߐ=VTS-u)߄EmOWL[(i -uYq/q-5Цs2߀3z_aSPN~%o ΍!4w Z}کv-r~" [#Bٮ^ J?jR oK,gI8q]$.ZEƻt;Tn#4&h.f)1Gm=uO-@G1;Xg,c3E̦犊 &ӆ2Cw~m=%\1 OLJ,)ox(3X&Spr _źxtgrm_q/SK &" A įؕ+)U)FUG G$Fk" t) }j]!,,Tuu}1Sl?Kc‚6$g$ tARɠ#_ւ|z[:Mj5Ɠhx8n6-%\{kuYFt`E`T򡳤,̛DSXjmШ2QTVZ9V" $XQeew%`{5a}D}!]N<(ىǗLCZ*0Vaz۲2{$0dfj)MfEMLl6-ʾ Д AGbЮjDjTTYpurp ֔~ץ D:mloH z`yA$I2Vgʉ{[$e=|ш{$Ij@; BǴ@t* Y`Ew%'Իaa9|I;"ff2NI{-y9#uV/~TjڬJLK="wiQplYr]e7s]DqIV9^aӧ d$␺2Qa匍Ǩ"d;$=h^̢*b%-d׉ 'by~#I]cTۤXqn`\R m5ܪw8-hE!Z5@"Դ/$5/V)*Uܱ:y YAc`>#Cu ="N0r+p!lz_ zZ ?&~f'iCr7Q W^@#7sarF=vdDmI0Pdx dK> \Z$y=,2eٮ'elajV?źS, O4cs(񞔭iC2] 6c'm.{'X3@)s-9 ^D^ L Zކ;-tklj}q)חJc =^m qIY-.B ϕS #3l-CAxu8aL"h .)M "+9CHi 멫4`RR3Ђa\+5j# Xƶ?\Uڄ,#ns96WUi'umc @.lUP:O O7mU*'@FKO,XT_GzΗ%ʔBiiw*ƿ_ Xztη- (lLX1B'DtuK/`? H|a=Ff } 0b+W=ßW}VYR FQ9C0қb4O$8`>fAhm7w$fGA-i?T^L(<~MX| $G-I\L6@ń5Y k[ [ܑ0 dIf 2#oLx(=Tq][/Hd*cfj_}zY)nְ9Q̶R&GW a#W% W} WZQB0,ǔ;КFa_wI˕+,:IRM>:p̈́%ֶ3N80z%يj;RoG&3uzeNϠ\YBcdB3`}udͿ{g#=:sޞ"{D3|e9_?tzprnmͮvܜ/C35YS/(ga-hKз lϝ6IQ[]&S68۶;"uIXt]!1~VneE߼^yH6s<ʥMiHf{!j@2nAdԘam^8%Qbd ~ Ӛ}C|l!BRq\gۛlPbaquY5pD l.@([? u n/D\R# +M񼒯w}_` />W@N)k Rhl(AX"@$=%(~i ?&qN`>Y䮅'>?x$XueP[3uQ53;q''M=~t7DkȘeOl=yxw'UT+[ 9„ "ۉg}1< 3}4bv.\9Rp_|CfZ*,lm`IrU;uvQrY8Q8A+*,6yn"jq롸8n8;M ,mQd6˗~|y9laIG=vJzQz˂n9Ҙ+͸6ZjԮ3Cuv[sW߽l-s2%Ȑ7\!=$tY`4M7{d›f =BoRuA旧4_ARv['yt X ۬:xAZ*ɒ+Exj˕rI֟p-9A(#UXdHfp~nm9ir 66[D\uU="BC]j \SnPyƭAs[ pa%$@WԶ{a;K<D:MI9vX;Nd4-t<+.'0y0':['f'Q>\ \2 d&?"XS: Oq;Ͷd vV?ewxZ\J%ɋA  %wMQqH ~Y V( i btQA\ ܚ ލ̪BS~o{[MFaLe }cKŸ%gVNso|^[-C.it%AFڷuu< V0GGH !;8K׽l42ˑb{/F3goZxOwlۧ@vD7n3EDEtIՀNTx} ' Ldz [Yߩ^ȋ=xf]΍!Z2 CZ"&qҁ;&@h aRa6ҕ^(r1Qa4*Å7E[}X=tj~],VEB |[ > ȞQǁelhѧ!lwybwq愁 ŸaTHDf=aA*yǂ?;T7UoDy/}N 8._Bbc`6WE 'ǼDj-HLi9ASn׼Ce >*ݻ* ?PqΦ20rhޏ^ŠF꾩Wz:(unBpAF ;.&ؔ~\}(X,@i |_aϯ0Fr`~&Ojl7 /{Un@4(й< ~Mz)gEgbU+fDR9vH U y 䆍O1vǏZxէuXcUAg(uZOdeWNQʽ!:7Ǝ`>POje/LǘGU6L|K=LSF/1"ҥy>7:a\ v`Bo^IBUE9BhͣDG-Cu$t\xdm P"$8̨ =1v”h5ĂN,zTŸm-f4tF >D6z<ePE|F Ttq hQ:{I |P88LG-깵(Ԩh!|NVcև$w[(U.z0n I]&B(( B-3mIJ.p-gqJ|(J `O&ǡqYarC1-U =ج퉑R|_ ~S74Fr%aYR.% >SjΚ>[)\ G/bR]l|V );|}#k)(r? ym"3#_$7s%{\Cœ!BjѴO{$۪R@j6o='OkA[}Taۏ6~b&B|8H9 Zd c?$9 St(mS+r BzYV+Vц4f+34Y#&b֑fMF!.H₨}BF*Hh]Ϫ-$^[yŬiNIjzYMҀ=w2MxZ )-uO3To $e+]g;"e%U,=[G29%eNQ*M-gDz93T-)(bXZ?;rWh& 4*br*k$37/)"n 6ƚVuQfWa( /< vrL1T^Ǎ=҉`åiq[KTF:(R9β<gko Hq/5(fjMfra5V5, ?cr^jp/ HKo՟{i 8UHjKDN| H2uX7:TIoD䙴Cvv$&o7|ƃy_~ qk!.(ۄsWڰD<~RgJdAP$(m#e YaXfs$ڡgX:!ma 5V26A0N 1{ֶ` H{U+P6A`ଣ6yDl2w ~nbC|tzE&;f9;ڪ9™we"XXc%,[/|5.8$/Z㢵!e=Ytd^@I ͙\p0" D'3{l'G&~./_D)-RO>W.XR~^Bl ū)-I=z@H2#4#i|aMqhoɛfG Ҩ2ûP{RG-;Q XlӂM 5N"'Bi ~AsQSD޲ 5ֺ2i,T_⨒i8{{Cځsz9b0e 02͵T1*@NYL|>ĽP2jT=jǜR7y$(ɵQ+1TV=A hPYݕ+ K iy[ v@{0Ϩ 4~Ӗ]4m*G`)lA?H^>Ζ`Vc9}_ eRl|- +kMLq1^A5lf"^|MrA~h/zaJ}Zƿa"T{f%WG- `tC9nzgUo=AO8T(X7uTb "61'l> _8Ht.PKPML~I4 5(.izO}?-A^oevdl]Dֲ+|-(n|})nLuNwJ[ЗۚpuJ70uV5J(á;ohv2>u wg|@>M"e%#g.!Vʅ1OK$}SiQ6T;ݴ+Ad{ [P) "R[iIvTϥ11)-l}|xϱQ J`v<1&a1IT\v냓.l.gIˏƪ ؔÉJF] ':"J(sz'Ka\@goB[x~}K$ߟtrxlƤ#6yi.Qw&1pv؄oʬ֝CM:c8zitWE)\e&PkM?cjGTz]ڹ2q~OX^)I;8]7 0D] Nnǹ,[}*vS\C KIE\eIi緋>D_n}1$vTG:J& U{iD:dJGi`ǺE^ڮجJ Z:aKtw>K}qӸ*=ɁO*C3ܗ<߁[+Ԕɝ LnYq;  -_ig V:8'fU|YuoVyd??QmETyo-hp a3TȒn'>H;?D݋ίcxX2[N҅pp28 ޏ8Σ VY+؋/aꤸ¯ dʭQjc)erc?(zױ˚ZK%E L }nE䘍7G \$)2"g"|Im*m!RN+OMZ̼|VM=f2gz%4+7ZtZZ,2sNhu)/Nh}md37Vf0G|TzQ{AK{ tnnNwRLq"wҜX0Va5Wn ];= Thvz}$Y-~wNBPq7 )5YQxLɪ*- \Os)e_jQq 37}ᴾthtC!ގÕOr5]"W-RA(G ~O b?XO>>|i 'Iű#|",~#/o,`.W:#\ pJ[= L4Jm#eLjxck1R}LoD<+4hKz5/P)QQQ2"MH50b2(t{Xy`G(5n_3EyMJ㫵}W!->aCqR#6Rlr `Uj0 n `iF,9td*0EyҭⳠǵoZ5v/D~ үj,B1/u_r_~#Mѩ^HUڊCx Y{<(FTD s H*3$̱m鏆jP2~C̰MȒyÅ+X]u @;^k(OjI dpKYfZ`_lwunnNg0\Zi0oA Ԩxo31t1iw!م=mXD޸k"ՒtVK=Eヮ)n>-}9gB9=%e]9c%zC"z_4eɱV3Tp ~f} 64 Ͳ J8]-''#iʌA F8AīZg3l)nݹAw!8X5; oS CoX%.O8v#vSgs0m۸.iiNשpI&b'ܫX>:n9) D'D8gl1+`塆^ ̛%4'NPEC͗BMn 27i ${4̰XiA]N=Hh_!n[ ̀oHqΎGóp9 태Π?duG8gbBS1-+OC u5\d.X~ `&)oTx-P'>.~5>(./);Ov|ˁ,9FW_pY7JK>ET`1V3߄yVRrFn*K"5o'ɡnEBtfs͔IVC0[h0i]3j5t@<+x˟fQK4<cvA~fVX4s}C[(uE 0T7@D]šKikЖBG[հ/}#N{sQ!+8w@eq*ؘVDA,fR)U\/i^b6Qz,.[`x)J ^ 4x,CfSx֋*J„pYV2tcq뢨6|v$?6q` Jy^ dYa 6qojR}Ƚpu)}憼H㝷j[g|z,q Zěb}0kf1@ZiVtPKQV\Y(VAe*gЃU1^ VUZw"噐R[@ڤ vY@]E?VqHt({z?%c1h&`[蟦UD:licx, (b߿b5eLg"\ cft:|@Z AT[1k;'@M+QrovUء*߈/jˢsHdR@:3f2ϤjoR%#85G] v8R$S)!Q6 W;7dt'#TBXGf3£&4v_@l_ @*gژ6cPCHqbRhXR^䘆⓹%k8afz!kpոh I#D2kWK2\RmrQS,VIJmV78QSvOa&_m6XW 1`f%%ƙ1&غ\>]F#~ώ ױQ|HZ*<qy;$Q}0 @>NS:)$iAu'Wi擷_<;YqwmY,}tlFFwE]0b/g9GކFc}$p[]I-~u!Ral筭`Ï W̓q]p0ƏD U$u[ØUjn* K/1xͩc\1hc6:8Af%Y1g-:fx^U@ڳ Z^:oiH(ed-], .B eT5JyXPzR{ppS 4ɢ](/{3d,[Q/6tH'ec0AsxXM>ߑ&^q$m*Z+D`ؘ2LGPZ(M$Wq5[;IE%՟Nfz=5+{ Ig^d$,d0y+᧱Qy VMiqܳy] ;=c9J=8G^^ҖTldT0cX0DPD5&o sp$5]A渥LEVod5-ӻcz${F,2;q=`WԁF[1Ng+@h]$>?۬Azs|!$u|;{Il?|iS"!Z5V~ٳߣ>7)UnX:+;3]Uai\d!"yzsD1Fzqֿv XH?wVzb{"ܫ4e=W2f\~h @K_D?.5\ h4/'yn̕Gkpl[@ƦO .]|>ιC-㧑4%pOOdv ]ht.Q^}p3 `w*:0܊qzn#%U Ld9+1&mGox!1#e1 E ")5[2!@W:Q|,BL 6?M h4nBomt9}jS kh캳M ʲ=nhoZ({TVm?HJm g- `/} h܍W2EӴnS,[ۍ꼣rF}nfvG LoDXD2f`bDdD,q jG29^l]|(F3#/ҷ{qfjzri {A_ð/i $fdÚJ 3r.Tiz(5pm]ҊrWNV94`zm>+.AFy;wT26yvhpld*]n)e@Eײ3r"tN!fI% !e8ESp1);˛^M%#'AM/spŃ"==238natROjJKbz;bqY3-F-@=沆1&dY@⳰cW5BB6f?<HaxNYj'_kcLV}6*E`!ثH^i]а1[CI;_y$RnjƲd$9/ ,QbHP ͜T͚de/JeH-Sy祟+ޜ}dPNI$PrO`<*͜iJw.IFَؙU\υPM85<5ߠ6Aft&nowcM<~Ͱ|w#M xڨIfعLb ~dDžTd3I4JFբisq;I)y1$4q:>O:?k1K2@朰H($̳(~ YDbЕiЦIb)7_,l^4 s*Jh9 fv4Mw(Z3u[4'?DԫN Fm5fDPF}Y|ȵr9Vb}gs&7ND^~ 'smC9ȉ` ) &zQʭN%iLH@1NwJ\/I ݗd렦DXzIhmg0S-G9jbx/g/ny6\ Sr%_8hm)k΃#l1E`Ɂ n{S% "gquoy)Vk9=]jȎf-Qp mmF5OGQZYpg.jJ6>KF0A|1cP d# PxҎ;|!BPčQq0Ga|h%z}+d*4wGu%Ī. {e7@FMFgJg^ Y-gC#ܧu*.÷a,EO)Ϟ4:6ߨ 2dlWlTg@M}- XDw}l(}ƤĘu!ug1}c[wzh!'$ +fX8L A:y_ /3?j9iȹ(4<4кS[&Ѫ{9/MC\ n IͬIxb*8Kymmޅ5>LwQVzUG?]"vPvs Z>`*wobspE%ײX54Ұ+!?UP[κh  ÜKěfR :#I%6w>B}z&*^BW>f/&u3[N۟ғgGYcU|ɒfhBk2f⢖ 3t+cN(jͻ8̿FTZr@͊J+a)EKWQVmPRtHMEv`+vo7FtU֓ɻxHާqީ1B<Ҩ$H*yXL76C/od2> 8 0J{~ɚ{=> ; 㗯Hϝ)2T°}V3B}sN%83>at~U_Φ{^Ht%`Iulȷʏ+4PtgذcG@et`\⹠PeF]̔U^?֑`Hr:Й|{׋:ɯ5:~W)ΞZI>H~QSM!- WXϐ,#3GGl/yaLqW+ń{XϘ֌׈kAYJ°p@>!_B|d O%YVabg/Ƣ&}d㍶0ElFxYB5>Sk !_r@Sg/_ yV= RNʭSrp2Q/@6tnjQE'[?9Fs,k]~TOREũ0aZ9h+֒_a93-oP-,&GZ`͛z9&!$qX%\Yh:yQtmBqJm?"N-&$[a@7g]:oTEbkvM d鞜:h;}+JIkQVQ(ܒ)Zi TBFoJ}%$R>vogаVQV= Dl-E:s ! q5E3$2S]/W mg!36l]N)\.5*t -<6+W1*4;?IVT B)Y)CZP矹%,b^)Ȉnx$ w:P?ivE^[cRi5Weox7ADe In?UdOeIg\2}23p /N_HoNc/)rF9})DP$9pkHG+[le2cv6|}ay/4D_9ԧPhbo_w~*x)Y]Qڎ+%JB7c4grsdrma0Ͻר D*#2@sjyD|=A?C]tZТ]V ec481L2âpk;Z_,ApX]@V!Ou)7g7FH-\Ӡe| _辊KLe֨ b3Q }W\҇-d( Ќ=zxaɋ3y¶w?T|mOjwqS:12Lo\"OY( I!)AZL( le0{]Je@#lila1ueBtS(7&1 ?5bHQ_8uE!+Hn_wĊ. z = fB9y \R_T!/5RS[`;~ѶGBJ[=ųC'a0UcGpG`H߹;(@-6\63/5ddFH%z MLAp݌o T^ Hbw.y{ZlH˺8 e D8SZSFe?8a-'8GDO| #BgkXPv:4"Tr&=[xuݑGɼ|{:k?5sD (J=|IIrcpEa Lu94r<n7䕓j(ܔ PYJ_:,D*d<~ke9wyͰ`ڭ1mu[K,q~:)L,ޝK/Z {  r+ ژƸSSuߦt0ΐ6`}a.( $3T( 4<#4C5.v0hSvyNr@ 8n;(꽧Mmh& }pcUىՋ{wkgߺUI%܁vȢ|,MfHxC7CX,p?_C|7TWl=6$"QyGU^:>kۻ9b`FH0|I@cz&<ƀ`ִ0i ]Gהݣ }Cjߘ~90B #nRu5.8OυbPo#~ $ ׶:0ڋ0`2@a4I:2.&| C7ST3-'ebl;Ouqc9*Ѹ[X;Rg MZRGqUyNhӗ.c! ޢ1+gpS ӯ˶ϣ?f;׃L~gy#hwS" x<*ܽMK:Z_ӶDRɉNo<;JZ.KމdwVn 3KUL < PCwWV3~hjVx2}ȣ˽9c`C?@T\8ߐ-\oqk#n~/S3ڂ`#f&MF^77$I|mqRD<; ˽|L#&͝T5hEgp 2Q }yX/p%:w@9'LĸЌy NTrxY-֭ RHgFb_Z|8T???#Y6V: ]g܇ S tx |RFU1˩0Cʡ%!&cOwl'UU p&##e^optn~sn9LRHDt.tgo_PթÄ?ߩ6.!Aм3(k'C2 =[yvjcXn:Y*IPnT!.SO9WPoA(2Sʱ"#>IX~u*-q4i6^d@H#8Gh=W33$د;G_J #xGD8[C9]b1`*x(+Nc [3'FV Mӵ'06+#*sKIRv[~АtPĮ ׭l:3RHM졘ŏjU|wg W]gyYCi<4=s~A .wXM ܙm΀/fwߧsL%C7{XVdSSdu2^0ID"{͈Bp7y=%#wtvqT5I?< ޽ש'4i?,U{ A6^bi.&}aRRϲ*`4Q Y#uI?W[ede-\%=FxV?q|  rm[Y%i,1; K,sULf|;P`*Mb6c>OT7S}VcK3h~ED!Λ oz-Acm.tS~-<^~'{СFlx8Ϭ^HcdCgs6%T |g"`8,)YDΖj7FRLA)0JEA#sRݩeLx1q؎hC#fT?&t#,H }jMcϳ(2#u)[ g@3*;J&]>0 >p ?o=lnBkɧ:^#niIM5rٻ0!C^[\?&C~xJj‹z (Ɂvזk~qGc\bo'preC»[2Ĺ@%ˆz`??η \` ' g24ȁ"$(հXSv }ǥtWFd;i}x<='“ ][%*L'lu0X)ǍƲ(BtnfLFB"L;gάaw(2V'd''#'\zhHPt~-OY7] f<\MT!$'ygWi/aҬd)ydĘƒ -пr~goFH!Msu]H@j/|:˘YX;Y 暿]~hNwG)'bУ݊xntw>pO׎b wNLiq$xѸ: vaoOy-)w}? P}:ϯ2rM] Ξ9GXҩ.Il]Q= D4KW9ezپ'UT*ϗOoxl/vH_ XgSiS0V/Ljkfd.=AѧboS۵[gg:DD/7>ˇll=.nqMT`W3̈AnjCW1. ]lO)^5Y(W'-ʷੌd91331RH@#WS;".&g.2~R{I{ >'n(s},`ISTfy OZHү q Xzqvahp'-%]cgS{ExY_]sGp/]%9Fp&vp]"~wG2ޘ}<44!:@Tm4 ,3ӳ^49.ȜG@LUV$lyGw_[)CѲ̖f9h3Ϲ\雀b!8WH#}VS-jAp쑝`Ois߾#d4 ]7pφF,*P*GrA0uj~Wඍm7H\מ>'>!5T $ ?nmu(xt `M44!&-o[0G6Ud=Giq̊8K4/~ȃBKg# bQ7VۓHW (g/9 *ahC}s?a=]1;U8v`Xx+p➀2y {x;TbW RR )fY 6RQ[I ^i x V@R9q(Lyųdϰa+&fXZ34!zabُJ bi4 ލ?(#ypk{A:'Y)벡?gE*ֆĄdYY:CDs/ԉj~li﬎*7K2 "!hf_Dwza 3Xw/l<Ə|7_QoQfJDy_ ^m - VʤuRrr8(/ڄūt[:V踺B6"-{#RUuK aOxn6}blcP![>I(@yyZeN|NJ|U_k_XBkV($IuYʹ6¦RVBj('gD>0wJhcG:DU#7!(3/ob=>1QLSş+on1Av](Vhs GVlf>xÅ3%}q7z'*%#f9T_oVf\f4a 8n&=_mcɟUu%xQ6TZ"*v(ZṫG1Y?c L[ ,7xSc2ZI8ZQtbj^ySa=n6 6kyMlS%tc1e5?jXS$֦/dTт,Y(88I,٠]j<$ _ݙΥ'|m cJ@2Ȉ35H;A!t/3 Q؆'}y|DWz17>[4ΒMrXNaHH*3pAEMjϑnBU@~cǐbJ(Pe,{߶ ЫYxMBDd%\Z3Sʨ/ @@D5ݥ2Fr&O6ZNA$jG\-.]$)_7p'UL:dߒ]rXKfr>oY`&hh{Ӎ LuMViav ?ѻPYYLR :Wl+H#:WWffV(:D56 1ƚ!``O=szSq7 Fv\0֏G@dMA5p>ԅT#x Oiz h pHkm>UkǧAUV>PB#U.^zpC%W0a=TS+5E@R Ϡ:`m)@w^4ut,,> n}t[aA mH udra>P݆0-@_tMIZ;^<8Ȝ)<Mֺ֟)Z)"2)\!k^=vNd!zn}5_FɮjX)bgpj$3R\̆^2q'oL^aP'u 8h "|{*yǿk1m$ SKwia$D0BG8;/۔Ma8,r^Á>$UB]!\A7rIKsC]ض-܏s7 D"_rn)Raע LkQPܾoQzȈ%>r 3ɞH j%ߴI75"`RAp1( $Sd{ >a]$WIF$oVS:F6$) -v77l|pSmvC jhT$S&`WIt0eHPL^ap"m^0 o ew[IU8*x˅{;揙&jm&NyfBJ'BnL)ƕ4Iɳ'ELy^$#ݕWu1V@ɳX2C}ng@^x0*` ޜO>*1b"k DULϒe[9ۥ1$D|OwVW.Wv}?w vCa)E~DZbh_B]76^/"NxS6?VEH GTIY}TʧhVB`ELZ' 5} 2 +fVld<7l'܇" w%Ij|r_0R4@!e^HF6eA(u_Q77}=lȇ=-:l;,?_J;9yZ}{򙋔k<(*C‡\lMi]o -;(1,[Lޠmt>o3~I,-V+ (%.%9QW0CkG굒5s%l̊Qt;f9Iw`ݨdx  Qc@6 /\{`cn u$ 6A)§@'=pF$*W82]/,DK’IN[|硢)G_"]Cw^cKpi^9΃?Py}$!ܻt,-ws:RjTYSMҖo2[8htŠ#ђ[jqK̞D{Gof 7,w:.X!lۍ{l0yJݘtuh12X!Cl]!z`iP(^X$*]SBJG*!>]_F3CGa @.eO WܐweV*]G3>HJ[ i]3Zg9q~B4j:Kx7$QgE/)Z0XbRga`hxATd" vZ?W,)'5-E[0L?MČųQMnO",bt"|;°)^q*ºu#:NdȋCʛn{4qpDz5н׽p HY%- 'zuiA"#6ըWg!<Aj\ÛvrnǓ:&Z\!s$U.n.*B΋ϩ P3 7c߀uH G=1TXzP ~:.]"Mndن/ύd7x9"sT qFVD4եk i64\@ cB 9D&4ebQVa6L Cp54KJ"W(;J-!X=C"W_PW^CTpr3F`Uvp%9pZCQ\ $4>RCS7 {1}hHm&4]Fqf0@l fmTP е J1'{g P旘uR!cM/-џ-i0%H9\)CɌ9>N` H#^ ϐqV I2>O]Ҕ[];CP#ɐQ?s > 3غL|S2JSoTe _K-|OC\`8-LkЌQn't?[9vrcpwtOt:[q!$=K.rV %0KTE{Z9icIXGp2S4zPi^d*,uLPsf< UB^l{10Uh?7(x6xY:V߇x HL0[͝t޳! F𣸼h{1An ;P  ǀ͙SǶ ZprlriT!R*.'TCc\Pp ^!.CٿOaHD!Ӵ(\.XXAZ6$`8РƼJݖ:vr(6v5GZ]*^Unx Wɜ3> @FeU,[U"o8lWeV`xhPҋ@+ \Fo{'1X8_IjY㚊GtΨ`&B'AK8Յї3Ȍj?BDfPpG`%5LIe5q^SYR-HкXƶ-F"Gf҄c2) Aں=64PrQ<;+@8z冢@^V^F"EQa$4=>)Ps(chW\_U*2XIJ#s.%A'mG̅\$#M]җcPfK&´}x;ؠ(Krk2ӫxI!yП)g۱E M!83;1bǂWYP vbPts1ج☉ F5ڊiɑ'мfSRpJ4Dږu@oIejձF"Z6~ Nv!QUE!UC(gR7Q/5 y! 7\jUH\3Ƈh]"р/abp?Wsb͉Y#-[_^1 O\_RbZ6 r2jV:VM#;q6L[ls|Y6> ,U¹2X[D|]'`! Jnov]9Rhc+iZɺ_ˎz%)]{aqBuN8"cU!t$Sՙ&TRdcx7~ }dzȂb[p ?lnbk :0OGg|N NAYtͮ7T@ȡ>B`Befϩ&@ L+1G LCǗ1c.$X 83HӂfIknb)-Rh&+`\ V6m \ ŗmܒ|9?%FѮ/] _R9}iq8K~ܨ"{5мPH i)2rPHǎ >^N0Ln bT?DW,ñSƊʈq8N*0x:T̤/~:x-tX7zMiJyM*?X כ*>bu9sEQ)>K՜ZKlNzF%HlhUDDүv` ̓r|x4̷i>mz0bus>K EM5I$<ev(|Xj9K',p*kR/˧q^Q0j NyZP>X`)ȇ Fb+sqrihF,*ttӦLw¥AnC7yf&v1A0$,BSt'ϨвؾͣT-mr[]04-o u`I(Z M 95ε;Q-=$ XHRvTUU3$#KW ET_"',_>C-3HQV#f\ 1k-wA/{HM@=Xżа+ZWk",WPFdž3S7uJCvsHB he{qK<].LYrnttf 8+ͫBBꝤ?Hk;#}/}nQ~2,5[2]Mo'yfs6tKNp $}ظ)EdYPOǰ}4-]ǣ-*$~9AzEN2CU*+½ocr6T#JledTE7RF*;_oxRnpy2XD2GI9,5M,_7#eE40 #o!,FX[ne@ cDP={rQ&"A4ٻ^`ݩSjr#DW! 7s0̡33߀wh yFk,﫢H^o#fuCx@B%BRZ[f`Q%ⶃ^NknL{QP\-h="qiDv+s mGØ.jӅ| vALf faVkjCIf$ |II gP+^{f`}W,jw"HK K:D iA Y&m+7~Y?C("~MT*q])xOYMXB\Ll4cLRG;+ w t¢7WSN-_,y~WQ7<ϑ&>P#?wzs\z&NWLGn^Ѥ1.b+ yezF[cikH2f%q }=]c7ǖPx6& s6SXv-^[&2uq u|HGCsuB[}•fOiL?Ƃzf71-.cUM/W O_ ~ЂXv>Yڢ[10p a™9`W]}ݭ ~bOK-UI 3|2Âw22McoP ʌ7 g}I9W gDBe*M F'B%9Z &ˣU&li|}o fdy%[;5_katٷX4,MsgK՟;/MEUy RY φw^ oF{Ig1'}L[qNA_,P#[eeTa+S9Y#Ϸ} Xr F!$F Bw:mvͬqkKS\C"g+s$w 'a4\](Z|mf }EM(L1(~B)ulך{o<ˈwÆj͛?U(G7}wZ6PIHGԩzfn.uMi3`jL/_PpM,"{DL LXh{'Ul,T]~A#,г6pKk.=@y68^6#O5qu*a(lzPdN_ٳQ[Uk2n~HR }T)o,C! L\\ VH9GJ0 (/Uz$9-vg}pPHںيĕo\7yQq> e%V0QYܲnMu"V / T;pceF3U$\-(MN@ |+&p_bN,%sM_6e(g=0bgs$)-׎7hiR&8--dXC|*kTFc dQ *| =F`:&$6ݥD,1A &&3Aa(bi8 $jJuftD&5MbGq Qs=VX5$@_Y'curzxzdXS*%>WV\R,o F ;zi$Q[/pӬ H)K=J;(c"E1@?q4՘NMNZ] eI]3T2S~~+/H+<>{[퐓y+xKgTW塾Ի hrf-NwRԯN'j2X0[M 6C6"9T̀O"3?u\5/Ə;X2m2ˏhҥ8lZ%DgT"Oy=@L Z'n-E#:[PSbJZxMGO,-6|FoW "<)ί?IG~n&͂ {-`"f9ke4I1|wٞwadh6fJ:]t~O|o-Bhs ~ )+ !xz#Quj]#i0@ּ RD-hQIH%2Ozʮ3 Y;zw3VPMš%;Ps]M!=?]ڙ5 ]3욶{MkLHtj$"R& N<^}IVt~Zߣb96΃ϥd;z2Orz)J,+Y%֝FveTEG1AZ._ Nw{-?:CgefH+x%S#2|Ka!Pg~C@uһFD!Bdx;K,.+YJeH)X$K*Ȍ~%F (~a#>KXq+j{xq2s1<_}3aD+Z}RR/tTeHj, Zl1?1sz`-JeF&`#dh4 \GXSžktz (D58/JauS !ToGwJ 4s""g08rG6{l%8ss(|Hkx \/n[9hR:9m-%n)pAboX>坄4yl/5QJpCU5q*~&>Bѥ,&q4?fѪ15&x<,IN}X^0QkHEVlSN}H Z8֫.r<oNRΖinPK1m =O(]NԬi8JG]qeRd$~p8 ׍qyy6 h%1Vs\Y, LBH5Al&l|1&ϷIcqǤғxxTS R;o QQw{HEG*ʋ>[HVeUKNʬJ,RΔMSRn*-TjZ}L |<6͗;`+΀SD̞ﻶ4DV(6~O(QJi#3^֭m4fɆtUb꿎3~ԩlU5: ݙ쏇 #OL5M汉lxRD6ü.J{*z;ny6}_aR7硢RypXN$fSXQskZs.T[ZĆGZ Mt1 takpVΤdZ3͒$7r3jR6 VUguUq1-|cX9jjMB%!a]& ʱ\竹\2pG># e\lf7/6d:A n0$7xk|ME1γ.uN"UW~,K { s{u ha ;v ^^hc$W 5C^͟H,m tfy{ lr[D'm @Hj|$+qFNVdAkg{"Hό 2DKW&"/*nΦJ;lKh&tjnVH@ 0'&U A_X#[R]FuzM;K~kdI."o eZڛG̱^&!ɦ[V5 a+6O%ЗgkQK#+U^8R k19Q/Myu*آ̏Q͝".W.5[,iBfu(aESgrd?SL9̏ \_ق*77JDJg+fJ_,9iQեPK3D/)'^%?fq;0 +W] C Yjٗquͭwד-vO. mu'% G媒DZPui-.4)ݥ -Eh';ܔŎZQp^@s"'Bƈe*O͗{7  po%A1cŽD\]ĉظo &n*3fb޳9YdZPoC]PNsC 8:mKa`/L4F3NwwJxfXbSRS:})QPtwf}[ֵ.zd?NL"uUmQLEUtES7aj&̍nJ5t S;Af G#,kv~zD Ȟ]&CM h9C^N'Ħl>;؋Cj@2 pʠF ^VK@,֚nS#x-vF7Q jm;l8,*gƩ!@R`1zmy.Zʡ^blB`^>ףZ']~̈^9$Pnu0fPi+BV%T~-i5/NY%E0K}&9F z $I5IRa0#Ʌ<q-U!={!7NCVcH\"BplIo=v5ғBp&c[fvj! 1/D2T$˳0< *R2E/FnJFϻf%)]i W}˻m5 o(TNHZhF}6]P5;TEAVlimYE@Y1d,p Z5 3e-ȾHRcq[翻/O%YЀ"*T1Q]RjA4=vJЧEݹu k AУ(<_̥䯖~n oK` i/P=mVFwuiY^/O׹'(qv.:(F$+18)>< ~nC;Gt ^m9ZZu7o?VH8$kJP=4N&]yHI@ǁxUFQ2(p;Ew2Zf#OZbZ/qT3 NFNhEcApvrr&jU9{EdKtBUvh3 o& nb`՚_?4 $@T+ЊXQְ+?^k# eTE3pQs}6h<*P1Efg ʑB|$ ݴ?U>Z؍Zi]OE'p&MIUK?hRG1X1|Om,j;/MPd/tU=q,,Q_zfP-Ix\* =PGN^\!|N-ِ)yJ|rk 9Ǽ=c l=Gpn)"Qyܤ!0-CDmժV`Y[B:JPC!KmB٩ᱟ@\7wm̂%V/G`kӮ ˫,BUw8Kڲ7-\En nKgHغNJt# cy7_<),iYmW?u40WE3d.N>Q|9N28^ Mʬ&"SFz܄-uF˭]T4p ,) 5\ wToGצDLq* \ԒU%*PxUև-:qM6+j^>&ROg9Lu&I=AD(}JT~QBBagZ&v[cU}q%\ 7"t%|Yx*8Z+ R#ZLDt6lDl}f\( DW{h>}Ė0@̆!iɩȥ:b ͼl uPH%J_kkϓ\+d ɰ jvGzܡ*N aya/-MBX%#HTۋJrE'w4[~?#W=k7%MU)$-C(= v6&@ (8~}zoa4]l3ž>u z<;iGfEڮ8q JzM9+[0X]R#ȵ˽b9x-żBVw稨Bha5sf9wwDZ'n3]V|,]3}vu /gc+#e,.> ֠R `s9o^n$5dX . ŔT[aud̺28l(wXI*fZcv-Mo_p,V :\ E'R~:U 4(AۙeʖEqnYKr;)ai(`E g^.ci@H| yhI@cIf]]: G;JV~"N<~u^,*ѵs  l홌j"Zq!2w>׊KC(b|y?_;CP.u7ү%'o:ZdXzb-Ζ," %}faT@*fMSXX&Q941c;iaЕyXdG\~ 9 4cԍo޿w7xyǙ8!@.ԗՙx sM,cs+1"IB 8%9N0UJ. >ע*@y9c*x-d%UT@%1 4ay.YcQOUUrZޗ~h^ޫDӿ&lXP*D*Y˲4ޙoKu(UQG(3>(sѩ46yRs ,・$ },:K}67[~Euwcа) $\遥5CO1b:&)Q)pٖ^׳&=0E?8sҢzdx"d 0K y7{BL"3zoUW:-roL2 MbP=!F>xf-rc249@Y_ ֘A"}^`c`l-49uBo=`Fi?-B!3/~?ZY!3w" NEya!;[*TH0HPE]|WmXf N+ l[m)̵[C8).թ,7Bp5mt]ubՈJ]> h:I|rE*]B[hgRdSY# -24̕ ZxQ`(+mhĥ VHXA,"Zz2mwa*oo1zE૴g0G =s1H.ANueKC U#ISA (P5\~Kdrp~[@AdnjN6m?D4$fzlyg K9H5B% I^eWn8! 3E _د@*R\޾׈c feS5LF, &fn&($W^!s| -#01)5b $mwy 6HtCcNVHHAeߡ8O]ds  os1! @<ň<v?}7ۤ. O!&"+ a!•U\DZ0D13.- !@伉vdYtu+-{;Q w NؔTe̤^W[MniN*kJ2VVTo^. o?UAJz7TO_l0ɵ5XbF&o.K`c,Z?$1Ǧ{x)A$'yq %Q13uxt>^ 5cX>#ؖ ]/d{3]¡1D5闬U}hޒ4Krdgnݽf/lnu{+QLeЌz&BnZ)!mBSlv7$g3Liگ+9 $^paTQK \ss)5{tL+i +µŝv{]tdA1hjcܖg@{O08~|%CZȃH537/? uw|eO):PoDHP /`nE9:Z(=UU;]6F@nxɂ,_ ,Ư2bGL̺Nfv~iВv|]9f@̢WOX`1qC¥!OU^[Jm G]-z.]5n=ʐ_,xiȌ&5A)XT8QqaW:A(rV0IOEa6TtF<-!J#\S|w+i?Z1@r/^hz' % SjĎ?fXtI2" c'Y9'b`v& ;wB+ZKAȫ+iMn^-ToyE*p2vMU>h9(ʳ'MgSׇg.{d$U l k~ _](.˜Tm v} 4!ޟM]c[/G~rȇ`xZL/V2T Nm)1Z,ڲ.yvOp96D:0/4`ͤ G(6Dd 7x q| 2x$Syiȳ<ϕWxRa9c=)źeҀ38fM$' ^<3 {2?;ձHڱ 3k$LdkT;")9n[#^8*k2\rU鵌÷Lk@ߪ]wwhp%._l>_>"D8up]cB9xGC&T wyk ߐlxMjjU>?iKwZ8HdfZ2* ~ͮvĵbN5TR $An{0:#|e-UJ7]-'sdDV[Fu8Ǣ -!@Ѧ,[BΞqhK d1>V1ǯy/s4x~J-dB'U{C谧6wLrTRܸW0"Yf:3vP7>D̲a,F FJ%UWeus,)t0˩}4,r"9e'c_ IMOL jl''Z)x-6.iJůq0I8ɬ}_v;yiJW?! SȔ^ߐ]s痺q3{s8ѤzSX}paEx$!vt/*jcN)g]zݠ(Q\aG\VاY@i't-ؾig'b;j/V;c(kH }ͥ5€ը hxkCOC&7#{t#q=sVmٶ&RBth4EQ¡x5 \Jyj!' 9],J_l{T]<ΨQ Sh&Rz)yM!TG|0yG6ϻ?IXa"ʚZu6@`()MS%tZ,B {NV71@G#þI]ڌV9?^ʭcq?e Hdݿ^Ch`p,qiQaџ4k9]ŠD0gUqzH!xfM:)$r:"nV(Ko\[aCc )޾47M^ ^kHCR!E$I5Vkܜ#+ 0"^ėpM=W]:JE_'2*ّ.DL*ӱϛY=a*:KR p7 U`p+[%֏!7B\ÄD֎,K,AmJۢVy(u{jZqR IyTxW>^w?8yO2qѕΈUaM?;ri!*ePent/SB9&ڕopAD u@jӵtqE@Hi.tV`L蟅($h!#`8βOx1kʁa2ڥAme rtXAȡ.)0pdn)'Zx\q_}L?.I5&F\QKHmҨ=4'k1~=YzB )IOES)&B*hҏ#4NqӗQdžQiT#ӟBXaYaИA v<*=BF YQsʤDwL)8\pۏٯ!wf[Y5yQqKg+iyoڂbL ɰ\Dr R$ ѨJH8mbDmbvN1Si+y Q% 85I?Y1Ss`LJ'jgo%:j=ŀ;~-<4ڤn_wV㷩ҡjpR_0UJ$96NYsPG:`[,.?xu{YqE|*[8= im3cJNn0pWdLϠVf=W))?:4"K79Hſd߰=QbáBUb: ND*@V+2M$<'\L'`t$/V>GZҠ"1ĺKVPeş;,&;2ߙ 5o}9fRa;!\7.~ ύG4 sSJA &=MJ8ܮbGP.G_ZeRTO[hq"?z_0۝`8F L=nkQl|r&k͝ $\cflKjmH X󺅌3' .֟+f:Ž.M:gN4i\`B+Uݹ\pEPBi! =+}'fi} <{>DX^ N>l bXhTlwj~ aE~nRѳo!jnܽ('4]CbG;-J=8hQc:u#8턽>(/Go_3Ѯf,I*TAEÎIJFyKV'NwA$lB{2y4{F`ØU'"ZjI8]m"M/@e hL;o#4ֈ欭Tkz}C:mąd;cgrߦLj,*O/]cSl;b`MDdʾ_4`Vkn5ѸA)$xc9Hx mנ42rڐ@ccF9βZk٨VZ?%I0~& =at/;(SϷ NB3B&9߄06L ( 7UݳjX/Q?%:Vx3׭.pOܤZ.iV/VdxZ㢓ze1|$~o ?nΨ[ _CO߁ %Ȱ#&Ȇ wM xMFӑa Ψz?7ˆqz1w7Vڼ@<Şrpta? yx Lwjd`s:Q}9^ SА'}geJp'+ᬓw @:uY8NֶM#ZIߘ ROK}d7V]wy~Ax4H'U,*z̄&)Țp֔_P{WCEiKcu\} +ҵYJ&?pşz Een5|U^q-w%TKu/=o/ڒ;t~JfI !1G7FR6f}nFˆCP*;|f,'*4WsOJ"MrMuf w/\I#'~Q"#Sm>ȏ6{m^(+3#hZc.Ò'j޻8;}uLvYtIG3\|$j`&fyy&pc]~f\X<7Y\?#YKn|*ĺ- t}Obēx-̔]H=OG5ny1Pe v?w g+dR"B{&٬X&~iC Eӕ鄬rz\ ?#K930H"D$|ULsLwBrtcPJ^$] u݂` GjM,G `VJEl+T:?߫Άu(&AF$_+a )j ]Az_%j=p ,7o^kԣJ79OP/wc.Y,h-~Jo7jq}VΕ67O̜DeRْqf&c,¥5%/%+-o`Os' [cN jn$s} <4O(ݫBK iRۢk͵O3gxΫLRSC#bV޷S[3Q=J7H[Ɗ?>G}ui#k,*, zf *& /v5>k LI;Aܭ&++W6o(n D#]Yh jJ)v%g޴@+^]MЧmVj <A*TC;Ӭ\NAZϿ.̛]mhouZ+o '\[-= ~!!Yv\pLFQ*OU"ިjJqq[7)+PYB$A ٻT=T0^/9W⦔| pzFdz .%u|Y?nÖZm S$0+~_27C!j,Vڮե7#$3[2NcR=~tn.I`N#9xFǹҢN ~Dtg(_T5P N0fJr^Ws~e4IJ; T`TS$CXEEU0\;7iXuQҶ# ~ǰTb-ғ'2yA^zƄYsiw MA|Z@|]}ͣ[sЦ8%Y#"$6s׶IDj kWD%<㵃8=F3$FM@l,5:gI~ :Df "x}GugEw N]N13Z*> ٢ꔐ ?Rt>]]6TuLY'egFuPB'KcEMn]IQ@OvjKzB=JT.?)P ّD^2 tc4Yb:LJ& Nv|=P?2=ﳜs;G2B-jΌv}_|)y|j }ˇpA0 } b~Ӏ7։S g%P^ {&GfcD_􊎌HۧJ|l$dM'h&[3* [ L("K*HGXuAxn=$!z 8^7H@|9 $مt+5{! ijRJ!tx`st[m+BЌ#}hW B/-HcLBTQ*.Zj1JƇ2N:JF<9&V2US7?ӮOA ݭi?LUYa'dy萓ɯ6iN=ۖѽ'^Qlj N@9hdkk& /K!].aSD2BXA5ʴŅY?f`#Uu~HGyCo?#@ YqN-{L8۶fݓ:M(N[|1=@z[^HDx&/lr6 -$x.ٝ`MPֆ7QXMr) /?IE0dLp,M/tzipF!j]v2x8^ޙ^gKQ&-}1EXUDw:ȅS:ݛ3Bcms S|6I*g<Š*ěh=5[t}N]/LXs$ ՝ 6Uu!^+Y`C+I/lPuP821q+} p_8[8>p5ūO(#B:H YQ~h&FNh jUNeZnfw.֟ ӌ؁Bwf"mR,9)+!sq/Bl׏ ЋUH&Ʊgu˫pi,P{A//&ŜQ&d('ǀ ?OWogtɚ(鎥-| v.oj7;z #4ş( (D1rRoIGixƏ-#11scBr]D2l(^4PYXSz} QˁIK >^'xk<,0q\ܑ!nF.\OKLi?a- '4jAHA]xovO0Щܒ/)+/d\?@Jkƺd .f<+@k(auȦ*# j u+WKC.AL].2-0`,jTe ;L00h zV&aY:]盛O$gƈs/A,'H'؟g GU)yJEY[DxӾeGuZ^$ سLPUN <ύ(^0}h5W N.|fQۓˏwxau子V㎑3-M SKi5R3Bd[B. A뱏3_#*yW.-o*(xwS05o \#v`@sS^o3>kj3tM{wd%LtP'L&3Jb6atTs4Ca\ e߈>Rk3(lŞ^\Lٔ⺖|1UJ#R)jK|f٧aXsby$n?4n;.ƃwk7Sj\:7&4#&GuELW." E wpIUZ} /ȪMxg4@k#6amo*wNy`x>S@iH/ET:NRBxz@zhcVp:3q+9ꫠ@T[H;Ip؉MW*V'M@"#YC-q"SȲЋDRߪIO tD˚y lBqm-;U^JFei1 / vVOo ^ ""k YdrD9=Ӽ堵fR]XǧOXfOڨh1IZo4)`<o ~@aϯ oA6!N @7rOs}.26.!8U>/a~OVK %yr10' LMʧ:?v$mXae p, հL `~ǽ+l?^.)}2{\q2izG$J.H!FA! Ձ&\3~li33ygk-dگ-,o:r_z'$^BWENF\DկhQ*u-Dbg1 gXjJW$`>5{)V<0 T*܎mmA(T#m%6WtcK=$dTgC3 e}-իue35bAɓ OGj'QTf&1vc`gా.|rurHt ėʄNħotj` 9`ͳcZH[1zX՗@) tfSmjU\qL((^*z$ń+%f^o^$ 0]X.dT[9C Qk;_X6FQ5 "V.i99B6M,[$2#mJ)a:.]I@D#mk,(s<<\FXϸZ]{d긼BOߑҠ hƢo?-0jH#C&U L+S ijx˚`C֏ #â,5ڑga׽bHG3#Ȩ'g " ra@NuM~%7E r)u==D[_20rHG=.fIF'm@1/2mf+#ѸǕEH/W<@HܥӘM2sRϪ蔦K{]kMMW20iсȂQ6`%(Oy],4gh{~CkK`rY$,~ZB\H-^DqsZü[9@=aM.*;~ljDp-s ?ȫ &c |sq/ܘ+?\V7"F54% I찧NIxTaHiR4B>]Uvi7W 3vR^d&|w`Z=ṉWpkcn M]![in#_mј7kO%Yv7j࢒pP[HWߡ3};./D` I0uAẀ..'`K-#?oT–ӈ(Seo#+7+e]j"sT?HָC[>4dNjof; ܳ vK[深 "u_d.(Y{E2w7,|Em9z<Rc6~:G&T*jiIACiYz|oUy==v@VW<ùKrEbKUc~Hjw^pshoIC^U˔#U2AB)Tbj_rLo5Pȫ8GHz^#ߙ|wMK鈀Ԣ X/ !*Aݯм:g`r t}Pyksr1_RlP1>؎trTiMH-RNg;u3"xxR |tf$Dԯ =>3pZU2\vG+.;~6Z9(%WU4T_tKn#MQ^sUi+^68M|Qi=sSx\NTJ͛ՙ_A(< QKPBdhɿ1/gH޼O*b[U|y)6jxWBvuq%坘B4n7D J\2wW1vqwRtqƩ=1/ˤ%6yJθ7 e4iMW~ǿ}N=:^tU|0޲5_@ 5TW8N~̼k\ & fa1  1!8ad%@O:wf|e1">HN4. FCgÅF -wpz|j'cI ?YX?On`3# ڥ°g )H:`W.Z XEjVɅ8Q]=Vh nenGZIIq/Skpo\ Y)溪FOB^-_@pc{8FQu=;m&2Xaj0i9RJd/ͷU~;q) bzhBGqW`dn [^M7oQmKhRJlYP b!q\X: ԭ'߉=ԿL0W^b(Uz @xĞo4Dxmmnl1k6 F{eA밆-Ky߼/rmɋ7D qJOjˉk:(j-hlÙ Sl*wD4ܝCfb 5e vaz;5 }79O$*V9DVvk0x)Lx݄yۚ"1koaY{Lq~Оx?q&JV:P< U+y 7QeNe3,Rj^eNfƪOSoM;2qedEz/EiaLsZ#fU>̃AUV'd_Mk mkV|dѫ*\ޞmPBI*J;HI}B1. pTXj$,!8{-DA;Fq枻C7@u:G󿨋b˒Y/?Wx%A_7펐BNۭ) 1!^oѐR6InR^^,}agxvD'Y:!(Ũ^Ujػaz{e}myi iwVFqGȷDo'*'ڶ( *k!}<5ñ.P']\@ &"/QsDӅIPJ_bdط)g)=!EZ&w5Mkycj<&`W픚"8EXN̜U$1 dv_"M? dZGr}@MNZLOڄJ  KZޖAO>p|FI'Tay%޹@qEmt$Ge/ϮOJ2ʥɖ2i}ō҈kfUUWnz ^$?X64;ap?]S.4Po,^9鄽HU\&]/۠`7{ƶnx@ 5oY<(~7lx q"\G}-=ʈ#K Ymnj^l{ j|1R .dW_94xvkk2ڡ#8"X\Vw_ ٵTuo1-ĊYAɚWQU&hosmKw2u*́VWQWkT^aƢ ,9gT8tki-D7h|(е1ެ#A뭚ҴcΑoK?@ѽLCs0]ѼŒ  rI:n,wLnlSw7"[$r>O^SNSU2_, Wې_j%01cQYB\,g͓[5iP(ndu@&-~[{_Oh?hb}x&B1ܞ1SP?giZ>feiՇrV:ꑜ<"]ݒeI!Uks$a}Pq˲RkZC A҉PJe'ab[JW  ϟ$B1jWaPךуT?3k'ɐB>]58-a8enQqHx^sNJ" ]Oa Ws)c9I$auaL`"#TUt34`,r RFmBK @Fhȸ?ضǞ?yk{SЩ/!d7t9G$a{AIs{8xyEH p;MPTIA{PbUڗYuaog x.ݷj+zʁ—+0KlgPw@qUhO/ ?aߠ*#;H' e1e-5CG'L~[&/Lum*EKdG:u ڥ l1.=(#?}]fhBTÌ(QqA\݀5/?x|KdCe'¶tk=kʂ)'c($oF\4v;ݩ] ؗ4ہ~{ͽs7EJiK#5P&:Q7=R#v0v tZMMZU&5s 2u2܆4$iJ#@zV21?'EQא+?07M:^ū_ gM89vqXn .[?!t㍩fUh '<`_8|H0-.s8PwSTy6EPB;OL@E7?Ϛ"`,bN hPN2z");\c,COKZa"P6̸Tpj 1>ꨦ`iMۂs l(0"*_Y;cj*MA0iiT8ʩ>_ ޠ(@ =hG.xVёuHU7ܰnxn{vQ VBSG9:*龀_DU<Ȓ!,PgSpB6HF8 W4 8d~4HeLGޘ,WlCvalNh}ڼsե"&gq eE҈ B+< ˪iՠ;\w-oSSBA0@0k*(.D#r9ss :=%M<^mUB-ި*;$Jdhw[[G*S)i{%t׳J /?1&1ez&~G2.ZBU 4""Z$b98&Båx\EL]jJ= T( 6ms,:U6Xr{u[K}#Ipo7"mŇͧL8Ŋ#Gib(H=Vme} -zMaGŨJ(;t\[D/c|7EOV#'H |`Tf8\L-7[mm¹Vwf-/My)o 5Yv޺hucI+%wtr ?y,jsTmE ^)uߜ VK6{PzRtK.K(2o(!x|Žioɺރ|%^k苖ai<{`( u$I Z/[4V8MkK L}|EqssNVHaݧt"rHne"|: ^%8a@'w@rSraʱjbQB2gH=aT@Z^T@3X8|ZP^%:=lLzq=ly!J+Ӿ4LF,lG=8z肵8y^z} ]DuK`d*\NFEQ5:ՍSNM?ǣԚfL]2>r bSB%d$eN98K#Ë"+2xxDZ +M:O Q=T*"P6T6U}]rCZ2ڭkӠ U$ Y0F&G .[e1^/s̲.C k~Ad8o/%|NY/c}#W},9bTz DA:Fh,I(XLunfZBdU/րtϼVeeجkHw)K[~\rlP L6 ^h/jb5v̧1z#vM-!*Cw*Ӗ<z_a˅RipomI}dl:vkâ7}į"z@r LJ v9 64 ۺ2bJ䣗/AMCj8BSt?6ncq`_A4'(.!R'O֋q .A "EZ$X ZK_A B3,܍ ZӃͧ1[SȋگDS\m:m l FI6:E?;(YD2EA/qƸ0/N-"UhپlCd؈Hݥ ξdȠ0C@%]Xp(rF[fj-x*{zdP:lמ[V4:V}>p0:E fؐ1)m@tFihl,cX. [&5`UʢKhO`;ȡ-L濮yeΎ$A2u\VeBI6 ]U4kbZ} TZ?$Q%.^hn1@ tZ R8ü5Q 1}6!j*xSLR!&>`oݣRoz)0rD3wIԟn$JjȔDK: ղYvnkW)T+ehjzАO GJCԡîR669/DSt؈p7Hs#9kZʠr*4.-(_HB`X,o:=UV~ +†'y8mҔ,FN=/R}7mE  qBdKr"'M817Fç &Uo"LbqE;}O,o0.‰}5cH0 q2ܘ6X6n ٳ}✸j4pAqΘJ`4^>&IUWQqaT;OB9$d>L۩=qN¶ @bV[oӼƅ4Z. J򥷳 ^%~̆:Sx-I-f֮7O\\}wG.mJ&N'"Roo:)KkkոP)($ [(4SHfw.(Lc#jeKGp1h(5ЕmAȊ+V}. 8tz=0TO ?r>_ٜΐKAg@$XRghz"(V8e_gɆ#_{<*'w)u d=1D{-^e|#a">0ud.۬8Ob=6;7D =փ7B0:pv>s_luP.Gavfa\" !S԰[YS:5x47lkqS3?FVwbQWa*+`GꂍpBW[Lp@6+]D:e.\Akgꦈӊ^J4u4Ph6ol2'=ALijTl=zyY^̈́#ˣ5nV&y!Te҈x6}'z "ҫ[rTH 2iϒgl߁_L8 QlH<67)Ҋ@1sh̳PM6*}` o)Dy׽#X_̴y*R︗7)i Bῼ=#)rVm6&,Đ-<7wGkJ?4!7P.h=ӒJAiX{i`~W? 5"xcTĮmbb4atMV{wuf3+'چgDn&MpݶBόO$q3ZEL V D"-lڼ^kE) +ToɃ9kETQnnvf3yʔOC=輅1!*$i+2*[ ƿ3-z։/t5Ar,:(ixMH9}qPnqX!J3\Ԧǜ)A~ǼC'_-5Dcga&1 ^{G,&vnGt6H1СPMO޲H$! @vxp7G;BypR^0y> v,wIzgD62'a]9("Ԣ!aW]G8IZֈ\S/&cbqσV<'xyTl[z 4[Д xeqSU=9^eQq}Cy"'Yoa̢#^A઩?^b[S#_r(+1AsvbTQPUCylqE[o) 2t xŒa|۰^4)ڲ^P̚s\5̑B-vĿW"D#M;|c99# }ehR>FƁ3δlGANw `@%Vi Ϥ]iBEąnnN2E xZ PIҏ [6AfZ9?40[jŒ)tUV* p -c<=P6 ~* ݅21xJԷ*q!ypuA\\^iQ5g7>UXtW]Gǥ,9yK3={ܔɁר~@%zVğ8&­U8f#hj%˸jnmkiWວ[&< kdX J[_i-~sdOQL qe8;9S{j;8~AiX}( \;|QTI'Ln]i֯C13OӢHp(P%"ƿ9UfFb6e ?/)!qhE1kOf:Lq7ۿy'GMܪ"LB-(\h@jE]^%61ܖ,^9h 31Ukd>i}In)%[8C H]봗18F>I.j020Xix baS+Ա1QWNs1vzJf0Rܒso>7UVȐ2_Q2 $pp þ.G+: @\\2oC=zҊ@-5. 45tm4A!kԾ?LuJu8o%r *ߪlxEM~ՙi=KMĥ[`NJT \<9B:[ӟ 8qI >&x2d>";ݟ6֢#TB}1vSs4fi7.—9PUIT({N*|E ^T!3BoA13O2MkLI\Oe|f'8[qZ/ۃN[&Jr̿`;F@ X1o8LsIS;Z-'{QIzCZ"Vz0aߔ:XG|)3'o#FneAoٺ? b4xD%8,z/yAݧ‰:`3E>qMĞm1tYOk0K8xB:=Rx EU\%wRpag_|=r>2+kc6cH4a0`@7:e>4(3F~=ga*5|#C?CzjN6g{=7ݡrɸf5MW,'@1|?LtY!DJTAf+±rsh݃c NhTȤ;@s3kHѼYk*gu/?:g8ƞ+/!zP=qxl]'y eZ=Z!([RO1α`(x Ex*k:gða@nfѣM;&\{$i_$;&5{q)y;%n8ܔNTѭgA#`/Oh|^U *+oćMUwZ;lB.!DSfYSoN3&r [7FO);AawwgL' h)ķф#dB,VeifV_\p/ѺemҎEx:ZWC6更X`c&o.@cbbW#K*-: @VP7-$tmpGiH] 8ٸ} } Aе.3D3O:.3:|Ly<"^3I.mMӬ6{oar<Gaz45i4R=i%YGxYhf>dRi'IhM. ~/j1Hgo$ 'Q껱 ѹ8ԛsb "Q".CϑIVw-^j2Ŏ7/OF: ! ;mR=ui$-O=9t:rV*Pe~1)哕Xbe/^:CL^r!= #b&(ˇ)9H5M_@KARVv;MPғO/5Qm'0k]qsN-7)8K<'l6bX2Ũ/:oHK:!2>VA Ȱ]h hD0?K+Qfӕ 8xHByY&S z܉OJJֽ]Dv.lGyǼ?(+6.*}ص91Nf`r_0@ԦAFqwnXvTxzo !UiL$R?oq6AH<Q;$ - |26 ;cI{h3n,~( i.#s3Yg̩vn GcV'vŹ-LM*ԚIm^ڬ##X\H3)z! >Hl Cm 10Â+~L?Bb\sξ-X֍-397Wܫ/RG)z_cO*RwИŕw(e aڶѺ&Wlah6*pV`{ۊ-Q5fBJ^ /9Itb123١dyNyXœ,CTuv=eOLo0"N n)xpvO[&fXeYC!9hc%2e~2Ѱc.- 3j):DXϿS{2"EWK??bo .T"1w,6J\-P,ƍE}7Uu8ct%HxN%Gy RЧ[YePHxl_q?Zr*R ==Mm;!{P2XԁEs=f^]ݑ?/8ÙTScL J, +Y`{5Z*5I,bamW~d}2s'1'pvG R=ȮЩXNS#ծȝ}Fiiji"y ֓Y*1T;j []y-Kb§.W)V,%Qcఴ?Pclߴ_3ߤ#g1i ;(Бa5Z*?Y<&:{5 ?3VQn^SzK$? P=ܷ\@XO.fj;&0nεyB,uf+ Gk!T[ e|Xa>C}1׋Lo&qn:v|:cCUi@tu`=hQIcsLK4;JН{ق!i1vbVڼ%k N3%Aw_F#Pe3uHxoi襒gQޑj*TJ̱IJQ`Dɩw5.:vAQGI]'emk' |dyB@ +;4# AFIBIz3}((B?kzC3[}灨tuݡE\{컔PI2߯?f!~%n6YgҤLI]psVH n'l>* 2V<[CK~hpveJQOK?0վ|eGg)Kʠ:ZX٥ry N_r}3+QkQJRkrc6(p,A_6@@Vմ_n9-[ ?>!eh-ʬ(p &1ˑb@$E/,da=m$o2>d8Bw /ecH\SHpQEI3vmp˺1 E-A:V,,|x6>ywmgKcՐ.8TAeXaTًzJ*u ^꙳ n o'ץT2ͳtghfP(̳b ֱeY17.wP HGwt7D H+&tݞ]o_" Ff هE3ƭguJq4q0e9\Y(}y9zAIꭎGW<鞝RJf=s{3Q?zkm&i%C(hoxWakCnv>E>:3&Go -1mL+EΔp_&&ȷxILS~_rd פbǩNy Y9w ?{x-P%Df9شӪ?2 M$P͞ 1x#@騞ܴ#B?| R'k‡Σ–jC(nļ>爾f-' jJ̞䲦[k*03vs{tvFqIVI< Aq'ϏUN'h;BM4lxg+9rđe;G8ȸ$c/QjEYHjA9L|s1j6_}ĩdrOlo$/ ĵoj?~6GERYnlRh{nޖgXIz{um̅ wh3>kf&"*̲I1~/j,;CĨ'o7o41xe%aUO20r^i( rǔ-M3kPnf$ʹ4w!egh -(E;"7ƕWu!onGuc%`pѮ=v$~f#έT$Qh0˒Yлz#e̻mيGk6NPe|X|@hq3}UE:*:qx eqM%s!O T &C1?$gqmle5>t sQʵVfEdTtQe-*=T/O܂qgwuz}-t*欈е@ݦpEX׎B jjK-AXqry]4%Ж, `ɻD\vBøk$X[tmn(mk^;=$ 3ͯ N/L*/c_I;ȵ]A`!?H~;NQ4yjuzmetx>sۿ5ݶ2e`2vƖ<$%*t}f[$B9/ ( "˾KF|UsHhNW?M[>Da>4U&I"2 s/r1L\?7&Y902UZx2r`a86EڸI"wRHX)6}5$KEH?  i#F !REX2zQ mBr}e)?XӰA5q"LM[;gbfli'q[p J+ވ7lSvSWTSU(LJ|AOy@O4uk5`l|z\2I/El u`XϭD;/'8ecNo| %m\AH pB~@RvxƷxGjUhu"$> $ld9X|!ƒcV)]c5"Wb;:baaw%mhqJh"]Dm!TRGs=FGKf5(0kaN?EY)ICLwaw81fiHHU<=͆갑c1躏}~" QX*YPkClkhvw)zzy^Bì@o krk@#ԊRD^pJs.s0W[\dы7Vb̿g!5R3#b& 1t#WI*g {2ž;w1eb4M!* 6@jҌw~| ;ȿi%I[94T֊xXz /:؄Y bVB hJ-N[C/͂뺌N7Uґe7c'U[O8!!B4I-J@~p֯+l3PZ#kgEʎMHW fd")k]J|s֌ll訧Q/qs;Jd^֯'pW/?)߲BO VDȍc0u]3AL:÷]!Uq7)!&닾L;cn,>wFݯO?vVIȌWLTi:+&V*Kub_prw^P4?KS<@;96YaFSSaJJNM_5!C$!u&$ E0f Ѧւa,R!͓-l4* 9.T% }#76g4} =&_׵2dJ۬c+Ⱦ$mn{CX6TҞ5nV.o;Y NlM ךX弯K t-,qpaOu,Qu <T YK[LOsv=NiSy/)@blv(.|afcF+ C'D8W>8smأQMb$iE ɦ/5dѓyN(@[# ^ª \vD̈hd>DmW'7RIV YIu>ԶdEc,.XF^FI)k n2fq%I55uV4(xyLt4Fvb²!Ż%ރ$ŬaAPwL(]TфE)4Q{RJeteo|wW.,LS+0S^ڤ)/*3QٸFnRec0YSbo0:e e$ 9Z7t2Xw#>U8:AzVȕ髢 S:JSU(-$SGFA||\uqY3SǾU hՕ]q½PD#:ΉﻪdrOGQdF p+-}riCtvԘ 9Zju*Y?(gF ³{svA[{f UȔ5~ St4qԄإLڕAFZRѾĚvYB$hz2%VӠ"D5뒁a?'ŋU)JE)!M' `ّ-֧ QĂE3IM$20ަlCgH:,1t2"Q%AcFE`g)2#AǢx3iCSk} sM>2ioΏUJ lÓAJ~g+,w Zbtv6OZ a SX>%otbm(5 +jKGE̮[K͝@ oNSW InZ5eEtWX Glc`_n~) K=ĐlU!x8;x54u4ŴO\g}) Kp0?%NlL٦v~a.`3m@G2oH0Oe~ϸÙD`vAxv2ՁflVtS0aԑ= (u4j5@,a d+YkT. NOߛ^C梚-}w_'n&UXB *7kn F׍MSxOv#5׮h1&R]RJ?@&{PW3u|TeQG/zzmP1mX4;H$|5% 8 {:#K#Czu߼Z1cvZ{ >a,o7bbH8,W2dP@tM:Sȉ "h~e'J"ZhBhii_v}N[Մ~{h82oܦ+m#1  o+OYY`M 9ۯ !(#HG\GjwosAc'Z[J{Zï|p+m8Ewxw\F2s/OCk+~ls_^1 ͤz'6g8XߔL竲A\"ue=C1' ـ3'CEbOV, k_Yޜ2O&şb nDrH/v-f% G` vAj1HRSs#+4'S>y_ehT XFfm͚X!@UZȒQ۝AŴ/XO]T-UOR71AuJMo.lsl?fҔ.0䦝xj!ShoQިRM2{t1@߆p2Hz@킓bH2쇡V;9Un#6vy41@ZPem4&W29M iX|z0s`VjRٱm4"f9E}Ss,[dkt:B"?`o6Pf6+:J[U)cA/{г0+p\3[`NselRbuvcʥv] mYBWԪmK[w馻q{k}}[b-&ŐG c`CeI5 kx)k` e®ZjX~^1sSD1 5Kh\ & lꇞYh2a掆)J%# {+*V;bg d3q}.V^OL8>Wx#Q"*(lBc IKrpތ`BOSjBY? nN\dHJ^vIE{!!}xNF2Ӯ'`7`NWHID42zfެV;  &jqC[-kNJ1͊bU˭4}ϑ 1mķ?W 3/Y3Lt.<")a%Fa񑁥td_al:֍#]fTR+)[8 LșN|en`(n15K6@T"+| Kj)P|GS{jȸ;:_^o, 9le{8O`FAp|.QљTaTAW~2 UINEHqef.x+IckLGc1xJk@(f&S炉9+gKM#ތA}be@⭚8Y lox.#a\80Vie?msnP )j]mZD]3!u5 K)u'UƣI-%4@068f'"o,oSjBQ8 ]{F᧐CEoU*-8vp@؆H\n`[VdżOy *j q1nMƔڙ\HFf2lv8pcXIO x4fGyaS9.LOwb;gy=0AUٓis)2WvsJ'Hj= )W,R# ўZJz賓DKFG>E=eB( G`.t;"G5G0wvn~ۺp K"hxf^~ |aamύȃ G9F F "n=ZBؚiOeq( 'sRrC۪:5u 6Bnӆ2em?, g{wm[TIf*6g[^8:Dz nDuB!b߮*K[e_vC*KZo[l ooiO nt4ܡp;iFң'#6L'x2)PF7xyjxB^ Tq܅H]'`boju!(U'J:w'{]װklIt y6Eq刿{1e=3oNJt-|$<sݩCKh 0Qt. ,o-_e"ČjX7?tPbxd_$Ke֬6S nO_kI]>tU6XhNu1^$o jXϋg׹Rݞ'դSh {"hY[|#+J^H8ecd, Se lHMEQyp!xtjy|纸A0f=J}‹Â[ [#챤7ŐMm^qq6GbFG!q#Қ]$_ni" 6+cw 83l8_'3|V{d%ђX]K4۹G:rP9⻔p5'hIǥ^!T]pOx0Իs>$0)s<'rcJ1en..bp/0!l0&Pʪ̯9 1>jFN:عO3Q[5lTI>oi9R ^Mt 0/UDGױ6dTҎ٬^4 BN^dw}nsZ%q&ќ9ssP<91Yj:e.H`Bf# RLq&dTɒѿhK`̭f9α:6]b?$ ӻq\ u& `Xf)}i^@Szs&1Pq%K3s}Wi2LBz^C`p>=$ȋDnj`&8ylƤ5=]N248$㫭DX*ةc)kƕJEBlÙ-/T/|!i=-GD`cSr'.f:pHW"NV\׮Hl.?p. f|鏃[0ӑe2Uwt_lk<K}"rRLÿJ#3n -&-C&ztyh+Qˡ76++tǵɚNz'~Ԋ27]U&!ƲRVD)',V.!q*#&bn_=\aJˡo/BLB6o+m"7j%ݨߞpW>;] ,\R3q`kx.\ ~ofҌ^}<^I;0lGqj0BdFx!<4p5~4R fPz#.DB53]g\0ܸ:5[Wc1@HRIuݟ @w3DlulV#Mߐ| ܹaO+K0O6cN̏RLĮ&&P;% K9\([׌:ka'3@]g#[4 >+_^&+iQHe-#9ߔ[+b4V6߷й3??)rZP@4VD;5Ið|:)իNג)٫ =Isg uʝ۟7Nڔ-jD+x t( vA s!z!7jBYW=W`U!)db1(zTx.U(C *75ԓfmV.X{ ]T]-( ܋WT2'i_ vjV_{7 Ljk`_';Ž_ ?XS?&& գXk32:{߉!:OxYI˨ r^v-i6v#ә1Y5br๥#.֫nqmBOD1X #b0>8 GLT~SkS[01dY3f-/Z8)=//n)#vgTQG<z!x 6;"PD R)a1Y5ъ<-BR zQ# $DgdTR7mrbB7B_8Ul)sV\2m"j6F GgWJ8>IڌGeLV!Tk{h@Blg^__YFR._Μ;aet]hLOb" nq/Qv9:eR(k%al56Ipjr'[kz戵?"yJ."(*~G$כ1?S [( -{7BI9H1Ez{~mF*8?=%G b@JdgrRʇ疣i R!¿ vСvyk-খU]&XD2JM1V~ާTWTw =5BooBٺ":n%U9BnJt!샰ۋOO<kzꭦ<֯g4z.w.w&05qu>Zڨe d6țc!V f&|bz$yΨ:x#v{k7 X7%Exh3˃`)T?du%̔HQuO ScƴR~H!Qlc^؟+],bv?UэA[y{+:!85 Ӝ7 CM*h3:SLv.bZ o'8/rZ o4nD* |29[348{_Im,+Kp ]#w'vʐ=DwHdBb\ rYZ| vE$gZ*>#n]`.&A GmZ.r˅!Sj MΓӪsQ\Ց< jyTW~U.;5#ye{&o mh:rG:Zt#n-Km<"Tw|qŦ>7?pRr"t$*ćKsfκ'>t] c}{"-D1ٜ^W- -u\Ӆ7h˺2oI2 0֙Mr@tb_]ÎB`5 [{>LuRhl:, Q)f5On|@9QѻHe9Zz'_PQV!-i񿱤mĝ/{_UK[5%<<,Mca40b,&L_I+ƧszҒ cFM0]:pX|:yAT|o8>49 Ӷyn^aRB#$ZotVBr9eLiِ:udz:W0ǹ"J܈?|Ӭa-<][ 7_> 6\*_7s:Cou '3c9iGi7(<,M܈B< УWuzhaLDZ*v~e;-x_v'GhcŞghqHdqJ`wP =}C] I6*"zoYa*ZvJZw Ճ62 6𮮥:`VV{Q TY{k3{$-\l8SqNsY:B`{Ł_HA0ɾOY}WynS+enCJTk=‹G(X}YvG_ \/==Uw [sͣ{epL8x@EOk }mH:` Oπa Q=ͧڬXç/֠0 0|7Dsޜu1/(BP8bp(qRj-2J!ZUH~Y(iWiH  71΀ެ^`ڽ89Wuu/].b!qgˢF$T˰u(Idg1ҁbhi{)j+i@w2ǎ^86vxw|y[e_RX4d蘋[WDUd@#Sras Azޟ=F-GkNPtLӭtpK)" Bu Y.i(Y:fxCtTƔ+W2KEf,-Jie70qX!/}ߵ"} yNc(r39r-,2+ JtL$ߤs@|j'3?[;VޤWLRG~BPǖ]G혚ۮН*iœR͗m^-5 IG/vp)ByR= S[p` ?KIƞfJ$,>J} ܀XY?'-q9Hq,_+3؈uijl")ڸ/Ɛ/ܶO -"%9ae%^qcL}ncł`N+Ǔz,Xպ t2\5Dj0^Vg\̃ZkӾHXGyPiOX㮙^)o"ELyg8s%jc]{23<5f،$sw%jLV4; )2ȷ1.M L~@uȒ71vnIg{j^<%`Okޝ xigX 5r G06x69 )uș]cgթN+)ͭ}^I:>[S4g-rڋMd"O>Y:E#]S{jxF\DbF^RtBsӷkl=#uܥDuCZiړ 1ϺKն(Hf@6ÈV(0ƸG 6/VZ0/2yό~0zcR\rG9\6$f( '/c o <^!bɋ_Մq fV7FPmpMk)xkLwQ>DGDjWX4+a %MіZ#(Ҏ S T ڐABUjӭgihSlP]bJf ,TPuP3S6t#i &.KLpl@EoXfMCFP)2KN_܅aL|; &bбnX=tk+Zk]|6u!6<S7D<=$iVᤙH)_[l[Ԏvn*-/)OdA/k;gu/Wah0UQԐ#>}zkXg`ʕQ!R\@hD֏h^3LmVƘ|݆J>$6iKݡs(a'P˴F ȨȓLm٧ƃSp\N:@$Zк*}ð ũlb޹&Eec=fL#1Gcq#%{o{ ;5_Eд07*KUUzotE^vR{%.)h+z?=C.o09 .-hitD|Oa8_[e*1˻U\,Įi_CjzrYoo0zxAΓ{KGcL 02/(EZ_ RAmXYr43.ɶo,ScJʦk7pXX'cOPr8x"cJ"gy{̛QTY"Sf -k rbn!+#оܭI -LW&P AV_)Z./=ge P;Hքmich@fLFrL2 v| W]|@'QjTzl1I*BϘ B J{;xzy%y]hNܪ=H@F%v^uϺY_K:%M:<'t/k&t`O59e$߾9F 3/byv 7;([V9ߛՒm[F{)d@"ܮ#_~/,( Op[Ԙ0?1k WofLc#AS,XO)Tǯ sl;E!|S`O- W]ΰv/|\pcЛ?Ps§ك t!\^oXי APմa|֗5ƴg@E6/ѭ-NA U.;^i?NI h 4u[GWB ];*Ue&֒lwC7ʁyS͝IZ=uz'XEyY2Fz1AC0;fԼ"+_+cf2bkFa~!HF0xbv<.1Vl ʵLs}^ZoS.x׾L xB CET<ƽ66ŘU`#GZC>GeKH÷>I҅؏rpZ sK@;l=bmGqd+D\ܚPM*!o0L2(?Xk`XъYŝo (߾"ʶ,q',`|? 1+k]pwB{n&fMf°BK\¨ \#~ma<2^,չ+?F%Fm:H:TB :k{TrclsI1 c; w3>)ay] ɷYU f~4Wxtqoep0H=֢LPI`) CBCxY҃L QZhZ񴞡4&JxZ7I{  AUbpr ܄ o0!~af`cL&0%vcڳҾ[Tp&6!g34:.OA%npKF#<0L nW~ # Nlrp@>DMe!Si|kxf௲>C\-Д4 1PLY8,ЇS2>0.[QU &f9LA Yk0gu1.\76jo _{f6MyѝTZ)ab {g~ c ЁGu8 T-ݬ?>;)BMO7= 0Q.mTv9}Tt|8/AF{.`Y9,hd})򡶛T ! Zh}W }8tn9(HVY ʽ6:I/OʈYEѿ c4j[+=[2NΧ#$/K~qc28vXC|J3|'! :S~ܔbEzj(pgvExS ?}.YLFG:> ; C'nJ \cnZ)8QD<zqbu( v}NG0܌ߏ(14H*ZrcB^6nիMB<dmnKS~zʧ&Uir)씍s-X!c$N=ŧ"oˡʡIdu ?33|ZU1[%P L\ܔ*oI?2aQHG#BPJqEn scRb*3ښJ7%_ʟIX9`7#؅2Ch:iCD葵-3 n ;c%C ^Mj0 Z>GVRG|YNvi2MGTG67X'΅P,-,,5mJpf$0IVL;K֔ɾ(~84hgpPT.Kk;7 'VšBZ| &,ZYl#Az38ډ f^REA!}Cdh=ʱ VמcF$~7&??"XXif"`q:VrFe'sNQ 'Ffd:T2Yr;&/aoᘗ9<_ցDDַ-jsS!L{!r R:-BB-+:TcT}^F<3dѰ%Gikgi8~Tl}O9~eHDD$GP nuztH3EBg)jFןtBSgYiW)ɔi@E|qZGHV˩>( KE=-7ރy ہ_׿fG_GsC!\} j%'vbY>JDn] yO?}M)a 5{Cgqa|:27lbq7=iDkg֯4XК&Bz}?&"Թd*0@Y596{Tքhq4YD깹\ISЗ5 (7墫>8K֡)4AD"0CŊ6Gt7_xN0k]YoGm9ޙ\䚩=GM)nHⶻ:Οrc#p!_3&)5f`GC[&_qiFjmIX+2 ]X@Lh^yvG0-J0*VoB.Ha@F)@^]7-Q|HD5I/Y b& k \+B=!?o+Nz^<-v^͎)ʬ pLǑĿ,pGx ܩ2tS=@_KtJ,o8w*Zi)eI`oO- ٵ/O[`L9d ^ ;:xL~i>Y<o?=Y/Aέ$x@\Yto&vU:?ۏGJ@H["olbR t)k*?)T|4dOAVbJ~LvnFŇRp0zn@'`&[O_٘ݳލr)L;ҟ!+;1|d,xDbكGcCBf6|Uj-9O"[=5e 邴uS5 ?Gi+%R>r&ڞdEڭ봃צ2u)}ek:.!Cy]hR;_}K;Lְ2_T'JV ~ ,ל^l]dPz.7WRpӪ> -Y߅Ån~ ;c9|?+OJ.u-*V(j)K6cBíZڨ>ViWZɜ]X>XS\y=C*j, 듣2B2*ǒ,SmϦ8%6~Q0{HT]$Rbua1T{yZ]C%"Os Δ 1O D1^Xf: ʜddhk6!´uF:f`0%T /&UDCn瘳xP@u1SXf2l MxIlOQC&xT\YIIƋUczz#<iʲt UNC(N#{M3j$Ce~/sRq&qREl [NpGƅ8Zhh$L^2O \K][rkӐl&GJcWݤIAա%ٗ2S>%dh"Wu꼛f\I]7@&EF{"5X>L6?K @Yg@r_\(grϒyVsY6۰nߨx)e1l[(b,sSPC]z?i L% +~Q|˜F.(&~VWpWDx hϫ;*ēF=%߀~cTBHW7z9^Lي]cGc N!_nǶaqⶵtn9đsCE~XȨM*"V:ήMp͢yX~ }o  Ru)J( jUzDҭNԖbc/;x`ohm3E$("ߋY;RG6:J}3QϦ__[9D%Y5zó{U^D6>Z'gt i =yŲꆥ[_<^cS|rc⧋ꮒx.㕁cb_C^iL%07p8q-f` X}؁tUDk=z5!itU,~ݚI;\|~Э:Cтn:;UHȈyr,5`%7 R C?t/85ZJo`g_W`@idzQ˨Py\mU,^UᦱB1p2YqK"_NQF=CzE/I^ ͯb*D{+ߏNsY3VÒ@G2ݦa~U8ܠ]'d a"4mܺ865kV#7~VF8 i7#TWF+*A@z Y[;2P@冎B\J>I!"ONݥȺˠ(BC""e}$=GLuԳ9<Ɓ]W:qGh7FBtGqytLYNL~ 5tkя5%hH1  disF 61 gu9 H]pp(K(ϛtܓ3GU-8K9чLtw*JK~T;&h͓G"lȝ"LI^{vGfEU7[PۺWqZo5(:R M5Fo;=Zvश H有.hxB\НqN V7uFWo`:%)Obnv5JG0BmŎ]W܆ UI`mɡZ7r~s@#p !ȯ̷ h)'MΏ^S Hk'2&!gB=f|Gg;{G"E2BWߜxIrW693K~.hu,yDb^̻7[ @6~`IWxk`_3瓞Qxw_FO*朲`W+a cz)O r.'A|\)9$aDlʮ-nofd)2xCKgfkě?: XT$@Z)o VoTåi9ě\g8 㤯]'}֫}Qq ݟ9zUѯtvdޟTV;z!"&F!dg+<0gvF2ۍA" !_C&bywzXJg'^4 Nk;-_]c^`:}YT9Aɪ6s %$=:K?7P*4 DOaΎ5iNUγeCN`mxTz#-< 87^#MPw1&淊=?\ʂYX:,I#ܔW*Fҗo`6[^|#`A+}!yr, OcPݡR U>p}ї;j >gf|Œ㨀<-)D':Șs]? -|Q *sI@pKCC*KB0^XK'L/ ^fLOK3+|nUOQ*G BzlT/՟eoy"C$(%sA%6uw\ c};L0M)35G-`j<뵟c&?<'Oxa2x}3x/fZ$#+MԦЇù|Il]ҕd v.lWn\>>飝א/']$4^kˈV+M"O$uVLΟ䯴>/j@]v3k.Oca&4`TH[I0@68[ k)?1(1sȚ2V_8y9ib7yq0DX&V&p&W~d:7SX*_妱LBu/zk?Gb% wclT(Y)]g(.OIOYEQ!/Yq%!]FXa]~B,yQK2UvBoN#g(x,nal*IvFbKt7pu7قϞ,Z]U8%ʍ%On.3ݍ29yQ⽡-*D$ؾϦk2Tfc8pVX`V =$e8$sowÍrW|UeFxųd#qy}<|9bboI-u>g65jօ>‹g:x>SgC+a7G.6XE0WFw1_ÆA;5`B,Ktk.4ז$G@v_2Xwc\-#IP8f^ë7nCgw `2UKl XgO ٕ7c]!M{\:np㕋ڰҏJVs>Pr_GM}Z+/8 4i_bRF>p4$4w4s 8JNwW3]0g3J49V)Vr.]ꑄ-eGR }LoQSZ.DM߽7h#Βٲs: #Hͩ LEfiQx7BΧaTk TmikHRaY01J:u—mDɷ:R`EGs9]@i[iQV/vmt *̧UVZoOP LSJ62P7odw~,![^# 1Ǖ>R#\ީ q`.\Ӡ=?S HĀ(%~ s'EF""ܪγB'>%א\ 5^(CGף L8Z6ZIsx&bOIv zYii*ʼZXxsӏc.[іDRifyo% md2eh,i tѧ\#(.rK#f;fym-!{E )LX62eयw6՟Հ%9`pٻ ȝxbʃ[3W@/y6;zUOlj(",nꚠK[###} ЋdiTh2mq 9=ygvAhYqVX ]a0Ytu|k$t*1Ch$9#+1y3]|`ӓ`=/>'mI #m;\HR/ C3k|{ϖ7jg(2JVINh4]qwhxB8$\?>0xd%} Dc_ùRٜ}z~]Q Du>9]n01)\9D; /M3>a v&ŏvE]vnHtq\UǙ]%x9wܛBϡ崾-2%јi9{Pf򂪶{O[@iyxg5 -ʰ=au|Xxy Y+wӴӻyם[)A,ݡWiJ&aGY<VK1Jgh^mFB$6XSĮe 7S\dV M%L i nJxhBVYzYy &LR_`(P$īvr+'t;䨬7k"-U)%A>PCN۪ hyJχ´#Ѿ-H}f,{ԯZ?x,J#ph!rNBיpdɌ.ѣ?n8094nˤ2dζ/;k/i_nx>kJ}L# ZP򜫝 ~!w2_͚MK-TvmR(,2vڥ$=ۑ4 ;t1"_09q]1՛VS$R0 'LzSR¬C~RWV ElBZpŖ3w#DHwF?`.X MwhhdYbQI<hRUNAdYԜjj 5s]چ?L.~Hy 2K N fGI5iIq/M#. ,7Sev\ʮ3it,1ͅTneReэz(R j)϶ n6TMg1>"3zX$Aq;\ 9`uaVxI fx1qPH`^qHbz[7Ut͖h-MBO+£{Ɛ3D!܎쀌|Q Ӥa3x1kCGjL=?|XլeJg w#: ]N_'mug@UזMWzP*xKRU,'F)(v6"'ߋ-ˁEbW szP& zrkw@o& 11[qOHj>Mw*M|Z_1&QJgutO8 pVLv`9kLEQ:k  agthSW5ŴHĦ\`:G,XGuNPTO(?$'{qA*hk* k x@Q;bLRa< ?pѕP)A,Rga~K¥bqK-TTW<9 6NoԱXAnP]Ehy#ƈg6w_S\O m67jG$Z+]h;8|4Lj|ZrwULut>Krbhgz bv±u m`B|TBv ^;t/-%9VcgB -R$Y޾O#lj%xg9 *i*] e19م^Sqɏ e71^lt9G/v6gʝ *+5;-&]7ʧY=H0f-:o h7>RO>+CzZ.O m;TٔUB~h-v^ڞ;]^dpSjG-++̝&/={>uk/ʂ@j d{M;:/b2=gi VxxBPi7T#"s^>6f)ִ ol[u!PzXaG{{I{ Q%֦x)"b^N&$0^!,Q B 6Sy !{ -ڹO.C_F>9VQ$l"pxjmrđ9,HHMH1̩k-0 t'g#ROP<ӀWkxRB6ŝ#紭!כͤeqXS.V'U'eVCip]!ĒM "sh=LZG0{:9CpR60SW~ycz2iʆOzo)oG9Y.ʏOߡA}v$PKĐ$!wTNk?CUd7P*]zS*HB;2Jt?׋Ygi`EI34+:'I:lW5e.UBR9א%Zڽ66gC6׷bN]/g5_>i9c;2Fѯ ɌvFXVn{& 7\(f1{tpG ^;%RmZ޺s2ڲ>XӇ,Yv@ͽORNə^.fu*L{h99Eœ 4P0u 5~6ҋ!$&iFaJMj1Oe*dΥ&qGLKt+6кFVDHOW,4',Zy,H}Ҫd^[:Lt4񖏩 =.! mpnj_N#OZ߬MbX里M3b+^x㉥.y}fCn}N^cW2.PʖP}\W^|Xxl1rU" _sJ捁áPhLG'Re{ˀ jϺa%hL.uTARFBAsb$r`+6b~iMšhp3#\ϑB)zą#\zAx⯙j$Uդ녛٫6+I?R@6ywDt 뎕+b|ducpGs߱F Rȸok@&{J 3]%E!4LNu2ndh Rx= D\~Wj8%ݑLz SoJ g Z::yIs[Szb@UFCdÎqɂR$RAǂCkVr,zFwHM.OP\|'焞 D$?%-Iіt+IG '#GBLZomfZ11mc(CYppyNswz`229R>啘h&%I'~Iunv?~ann3:XpG!ZJ"mKiBه_@5س)XZSjQ> ,֝k,Vuz%"M,ab(T!}DYwu#j0^rK?}cdyK03y lXCmthksc{$8ɤ'aw][43m*^ǕA1NMr]Rǧ2W  K{d,)Q!$ ƌ^ [Z.&aHN/,'+LS )h1΀@E[#SZZr4:>aF#jo@a ~NqN\F`IDrd!gU7+6.;ГN!nwdF%}+o(2SuVgpCcX k KpfDewt?/2M Z#2*ުFVYV߈M E%6$il5$n)mS`N:cc2*WpvLdJἥN~>$^gRƞAɨߌ3yW]@Y|Fo .'Y]",Q]'UgSĪZw'H!ŗV u;Hz/,2J;9Zuu-sHȅk]g7%,PCod?_,V(tq±D!~ s +CǴa*~0 ɑ7y}n YyccuaH5o~3l_6R& I5| Jf2s 9 Nŗ\Qbja#Q= oFi@O{ثMvUnێWK*)Q'  :7k~ ^ l6$KDsLDGD0\INyi9i4tU2ƌ)zx|rLݡ 5ossy1eݰZJN,W/lP _X547 d  TMfh$)3)+3Ɣ÷8pg6!4}s]E 8b7/c^ij.չ߿[KJ{p_+3G0ȺlVzѶ%Iqː||imgyh_2-w?chi*wywnD{ D3M5qtvkpZf=U D{4Zwo)BEX cZR-J6Gr6Q&\ 8"rH,-ݷWPu!rw߃qDH Mos6Z37ۡװR(22)?uX~I0+R6wf\^[†P̈́k. }yH^KG>3""#&]4ґ7; *2#nU+ɟaccMPBM:cd_[=ÁwM!s3mn`&y}h9l MGѳz5o tκJe4*_:˺ke{ ȴs`HI?雰0ANil;noW -,)~9'O-9r,'_ uRλԲaҟ~sB{^,ZGeh]PV3 r2N f-8#3 ޫvqO~tGxO'r 3+Zhe0=ˆQlMẞR.A@͡fnɹ: 6>O! mx ޒ,Ez? fO}dO9V Z5pXLȒTW+7]nE}Uef$lU>Wkb$UN]Ȅ<']/YOwy*]SP F~^^ ҃at9-EvIwq9x! 2 X(m|oBfő^3gbAB{/\5y?tve7p>4}RnlLYP̵K//w chVnĦi1 !&vP)n'zV3 x'A&f"goZmW5ڝIgP~u3KO~߄9e.p\h\K$Bicvim+W%j\ޯoa:Ot\cVv-|hlhZ)}MX~yv-+[Uˮ Y;dEKUU-"+u K71g:{$^4kE=Ǧ#|*+`bdn2EK9~Iգ5JTFp5[j%Tz6vMjOq-m A_'K^v\Cc-t08ry#mݰ gܘnٖr a#l@1a*,;ŶUJnHO%a  sx&X@yN-+ z`﫥fM7f_Uҋ1>ϯ4}^ ŶޛU덗|Gϔp X7tNP 2pj>l7KcǨ7~t.6 Χ絨Q*r/ ܻ9JQAq& pԝ*J}q~jnsҹ0[A[Ccl@|p 1"'e;M"mV qA)d+[%. V*ܼ¦9+uϝ7s=8DԂ^ jghFjӜ/xRI0 vT \tp(XX<9gbg. 3#[u7J+DR:dcfd..}/#LkѼ,.hEGбk 1(g4"I_Z<7—47)gj\ȷݗ ((2zj:ȟL~3iܘQRR#8sǝB4(rk8Ο`ld3kN:>AοuTzs.dܷΖl&2g!iXN\x6nc,Y eo[rf%myVG:qŧmhn<|B p9%wQfC[kJ F- vG~S}L,bu-6PTV%ﯿj#6{: =fx0BB̂mK fDXi1mG6I<~7PGlrxJ? n.L)s|ΰxGtnpuuaXSevj>h5! G;_Zcdg%WPUZ FX<<6_݊tpF{11[5T-x#Fy^/YCJ)WzA(@ru9%̼C^Y)c RHB?eV[3HN $9]zls s %w"33@b2A,)%c/? ?mS!VB?C(+Ndy zU Qf7!ɠי4\ R7 >xH۲@p=9_$6tb6#z4GI!'j]5-)uq&<2a 95ǿaqㅓH} ɥ[/w/@ lgj,/ܓw(Sfi4a@qe/=7T?DB}+${3QYN|+|fڻ 4A> RR &~018o#us2^>a:54ʶbK 6CP"ge=*3Ư: *AKq {Xi7F xr}usC+- ;!Hiɔ䙝&E0˘1J=9zLDHg,iB>w1)vE;)41*~Z=\s݅)IW_SDYy!hd0i~[څMmȤ%-3^/E2=Uh,U9 u'เ ΢?^a"9+r܊a*%SYV!g%l]g].AሂR]u>](*1-[ڎ|i_j[͗o\H)WhYv85;vD5%'قGOp z*])ʣ)d:b&Q tl K}j9v"\J0 lt\KExx+R0WbMCi]鷒JlsmayMpþ% !hYza17; LqYb${/i2ˆ󊥬[fi cӣo=<&5fkzV) ܟK"IDbA8$[qș_l񘣛WLb#eeNEng4B:9ױְS_9}&/){?uW/"jw!YF1")*J?4GS"zs=l&'ژz=qѐ((#kG)Idn=|s2015CjiRp`{ꈤw] ="5F$*"n 9R?U%f_i2x]kpЈP />zD۾* ѓĕ ֡li&0l 1d%bW_JxW>V,F|j-$Iʗw ,B[[_V0Dj2z-}G|Zxԓ<봺Z/Ghu Эʖ̐J<[RKuG1$`[e^- -L`+е!9Oz|8fm㇆^|Ju(>;6 㲰J' gQc@Hצ⦖Qp6"K2HT"YhRv$ d3\5wxI "!uXʋSgQxR]qFEdΡ[%HrQ U)^5W^ JtQ@D Y%.zdcEOPBլ۱iYAܜ,C¡:;kaN\>=J6 on xuh!z,gMx V3^EЅR~e紃#T:Oan<•r~]ǂ18Cړq;eo5?LNYJb<\iѼXsAU8=/d J|@J9rYd-h$5Ir($ Qۏt\P7 b죆2fJ3W_b}؎EU, ")* ल%q9SYPML)n*TׄN2)͙B5+WI(`%tePR|ڶ;^'D B˕B'|'2​lʤ'y=ߗ@lxQ L8IL:V)ZIU,ݖqE7wXmH$y]P-,'I@JNKx' 7|Q:>VIDusUii֯ޣ2G4VHxkoпZ-eF g[j.NB>mT+jKK>d]# &-s[:s6L5>GiUnD mt0_'mT.HI@1,5֖'UŽX^Ҵf9/dbT'ȿ v:8k4o)r޳(P>e:/xt.D{c8^2Ǫ d d^6I|%QX|4U =  $owI*,iOGSNU&i$D:pEN@ r}84K{LLVk8Mc_69F&})ԯs@GnW=c=;罥Riù_CFD: |HYt(I} ZUo-mhJQBF9s?ZN3) -kr[5“ E s#]H@rH ĀM(Us1xP oa-4TuJ4:zVPaoNZm~#\;6}y|2)PQ.=ni*mݐىw&ʲT>yLpS~L&HY]( h7r URa}@TŶz,`= HM6h8t`=Cuz9LS/c;oC/ 4-A@qܻk#MzX\д5 ~]OUw7䍌B $'mم9_3E9>Zr]?=La o5X8w3X=fic\GԟUR`Ɏκ|exCYGeD:T CΏc,! 7) 􏁉xKN2lTreҙVwvMœ*lɸRK/L6dT3-7_29l3!)""lJ܅(۹K&ϩh(7pѬۛ[1CՎX1xRxC4GsdT/u;j4 ~9w$Λ bJV҆?n#1[#ɯS} CͤWnfDfeKd0e:IwIӊu?CR$ƾ@8ڊA&^OZS 1Ӵk2:amq7$ڴ$Gb5ZXҞ9Wx⸡/ pVH#J|81 ҩ°o-" 8*=vj@]@m3qmC!BwT FBε$MVSA%v ꄊq{A.,xQgn_5 렷Tkʝkj  {cA@^eW]@ ǐ K]{ס5e[/AC&eη# ٦.iбGR raxٶY$) ^I .}A Oܷa׻7X.o^V 5)iVx`O@<ך#E"uQ7ON 3 d61c\&'mFlT(g5U ka:{H2Rw>6 *rPeɛ8()bk7GZյB2pK@X&BL}륐CQ՟ug (Ko Uv34BZy|;$vU({~ZӘJXj,ii\d|:j6l }^5uyw8=u ̯aBF 0_W :/1LȂkpItNn+iw6-u />Uh,ZN+ 񡘙rL0E%C"Ebq>"fK ڏS c-+%^XӎS9pǯ~ qX4ފ'$U+λgڜ>TdNdHO~G㽿'_*z3S "\E{Pلk+{dQ[Um D3x2<@1DU>j{:p*.ubd^.Z^05@Z/co wv6ՠ}E X%4*c@L}Gt9ZkL5^#[l;e8/E-@B{8GrC]X'ܕY!lIˠ+p;&Fh~Uc޻H@I'-F\#a2~ZE31inT v;R:Q!_AYR ;Ã婪`oL;ؕΚ1bbi\7Sqr$</ǭ W" /kD?Sq׉}zm9n]"ZG(h whgz0nQ hV+ 1ŜH]Mȑ]B, ђ:Kp[Pf)V@GӕQ4?hJu*P=%wCvW@O;G'\"m'PN²w StXS^ GJK6l~gh0TmӬ AJE\=ƍi9S tN8xWjRJ9xMꌰZr zр;ii_&] ۺf՘f}5xha@(UH,鄡AΈ9Xs4gBpi8(i8V'HO#=T]CL9Ct"Q }\ ؆0(idY{ h&^▕Po-Ii1X"L dgN0Ob:X D:!H.2&_X~UwTF8v!fG<J>M2LflYve@?16B]!Ƨ%g&{ؽp6[}-5 tEoq@a3ed~9o|;`ro{,E8 RN1& ZDY(dkނ k9fbz=j*aw[+!m<{!m=K)X\uj !g<8RClt\؈1ho: 1KbLmbu~l欭0=|Z1#[. uZeXm^Wo0FFy@~Ր^O}*ƒ%3+籦mEz*9!PHxNϜa:# -K4dڌQKiKR3Dji:ث+.M@[+\4vd:$l0r25oU~H;5X3KV`/gB+gH!ڍ\3F#?iS xѤR@J\eMU~!'ȗ^1%~Ij0K\,~2r?zL;wO~TcwRr4a4 Aw]IO $rVqgpa;4C''x \&a>u!"CM![m$>m*J~S`}?=e wŦ*ZtƳ*Xp]S8 syr$uM6^ԓhD7v*o׎do w Q_KOyXJThGȷOZ %~ǛJ:QlޔS(\ݾ [ E|3e)axm|?eԅ]129|l3Z;,&RXGU>£;#i<+gJB%s]5"WiRa>6~[]eg9YF^,@qiL]vwͩ9 '$΀nK:$YX!3|@px1aku@d=n9-haF(,ZVc SH7>ə\r#跻pzVAa;ڹh,E^H6vP/7 ,}B,C^:2=0ɱ-@14ҧH{iO='KUBevF$Q>9 C`R=뜕~ `]dݽ `s Ǩt(ۈ" )Yi-z 㫷L5a~?+}vv!yQfkײ:uKSM=y*_rLHdz:,Hzp EP)~ϵNUr߫*篚f2>cJj #49@f5{ű*98Cj֭=u5~%nqu :f=gk[Lk8P9e㏹*5* V~ <ӬZvo"*ܤܦ)cFBmG;P=B<% =F80E ulYӣ'1ChOmeS5'P{ꇚX+!:f6*ΡAA ՠMZej[/_sL{XTF;E+E)zC yaGNU\L{ zzE(@z&b(aV}$4Z RɊ p HYTvuds|R#Fo GsWATv8yGK} U}6UQ+c)s*Z ϊFo O(ep$D 2*F.{ f̧a=_}BVےy1jL9!Jq+4 N&4N.;hŎ[HylQw"ZJwb g'уٻK8F?w؎WM+0HQAmU:=`Ot&pUwRv[]PӰi)M8:PH-.u^MFּ/"9!xȳ!_{ItC-WL%fphN:}FIo91tp,~W hw %|p÷ԕe*G婉 15~ϸ4Q8"~BT3pX?WBsь6dz.i#Sܰ@kq y ;*phKW ? ]#ߢV!uTVenp#IITf Y)6FʫA$ѷ_IzgŽ@80(MJsƒ*,bg1mhpURr5(:㔣- k#,* ZoSqKJI6ҳy+tX(j# +aLdR3S0Y/ʫƋwLߣ@ښ9ĉx v*PU_@z 0q (zQnY}xl j.$N bt/!`A4V(ֿZN1\Y7-LRN'Zo0%g%ݬBkV;rkxjP |[J17XhdziQ'7T f V3;}%Wl,=,8T TEQ<]5k,2?庘Rw2=.Mao4cQ? "˜Wϲ9I 4YgMp'ϭ@(8`n e"xZxۍsxui|2g$LØtl$վ%ˬdB;SP)o ;pG~>"ٲy;4N9 ]Huy?n;L0`&~n 'w4|D'ǿIWFpC5-K>"EdS:#1BANUi6P9C"Erݤ_2`1TՌR=f?2S^[Q2[U:h=#; lf4"d<`e(FLMcܯFlbД\7HR=cMy4ĶP 'MX3L ش<Rj]/ýta),e V-U_0ioKN r?~ CNa m~0#@18?q:k6"z?G,qƂWd JAEzL|GnImMse?V = qZ'v|:I"2$wf+B@Zu/9m g]OLE^j,)sX~Ĩ }p^6zjsrz$SO|1]!Oe5Xj{G/#)Ct-|95QkLәMfѡuc \6pnX M NTR҂[1mFE)q $utz4x*B Uy]x/Q8Ms(az%V\z;457% VfD`HUnf/c096 bY,H#.}v{H)-U?`xwO06ۋڽJC2q:./x'fyhT HTa ѶdU8w(*R =RDm^ N[G UXuf}JޑwiK9|a-fۡN;iega LsH~W{[&K 3gG>!њ {X5v5*%9 ZWⰾIzaMʟ?\k)Rz _$fDLcx) /U$M[aǂ$@;*]y| ~mSV㢟i+:94HukNzX^o뛉\bgֱv}7oI̻t<MŅ~7b,qEEM 7!$Sx,Box'N ~YH0/8l8Cv=<=Dׅ>zn0fzr.e(//@nsqH͚̙C輹Vv]erE -jp1T;Dk9#6]6dB`F?haJmu~^tH4 &IӔ0 dqb4?Z4hSVi6Ai^N0ckMtk%b" n{ u6jA@u}10sX"]:vcT0)>oz$u0~BY(wb-BS3"z Ŵ!ۘ2OHE,:`Z&ڐ< WWIݍM5g`2 M!6FJ'ovj`$>Wߓ$Ⱦ'VZC.G1@B]$?ό:L".۽c:Rs|b?.fc'LoAt2i$B^M CW#êobst?AItk.3[xn tf LOZJ\pAС0gGƀCympN2aH m7 +œib-ʞfT(%ePkbθmQ yjc#NK {v~[g *XNft)}!B{";(X'=X g4!"6 ĘxsbJTzk$'9ӫ_eE$.-J>?\u)hL!3ŎEgZJ: [TBIv܀\4{إw}iWͿX?#=We$ѵ8ɇrR47T*'NϻhS뮛n/B,']_rUû2vJR38Wn/[qEaQM |OCN/%=_@ւpұ@.񫪠}`}8,S)BfNd .Y ER˗qH]ǐeZjY؜xPgs!pw (s#6SV6"-| .AȰIԖ4r+,F*QVɣ  Տl_LVYw![tfuh/"ȵ(r݊pY ]7v fP ` gJ`OU_(u2V1 d#KJ)lZYjen9PАұ(]+Ag}\8cΝRWy] b tT+ ]4ܷ$횙fS&r[dj% G/8Z-zq ˹77 kv+ʶ44ү-7T"謳'gcSQ<8%-74qB@mz%!`6؁%$04H,f.{/sM`0 3B-\uس’6MЙ9NM<_,;R@&*+ui#%w*]Q}$t8 -BMXf W?.}cj|dr3faꅢWN^rɔ5a^wvE{Fso/T~$'NΝ]3 y<.5t+ekkG1VQ;NMlzݾY qdmβYsT=KG,c*-4I|_Xzdn;u`z(vnbc΃ 8NH !sf۝&3KTKcMS64_ϸd楢r nطՑD!6+czȒ+x>i!)=(IRgHsfkg +]k5xo;EI8%;;2*ּ#c%%iB'췾j#}5 D|xm7 M d~v_KjD/#bF/Պ/\72@Z߃W>`VM\\OOZҧN%:egF'sO bX?˶K6:6%/_3Q0FfR4yMP3O3z>{*kJ=m#5ȞsP{P9Pܜ2Nq)&]ДkPaq /CJ&δJ!NΗ&lR9TK$'Qoʂs`e;.kPcHyiN\˹TI=脅/8y}ǀ<%[I8*ďzm,T>KX>i!ci.)]U}{W B, =~Tv!ݵsMOԔaZ({ϢbZ MG)tq[+^!K/7 _Ea6{l0E?x%)Y'Ncj. r$﫹qV'W+4[fMP$m̧߲"hJ,fH@J\o$zbTȾb ͏S-nǓ-ʼbgt +<;e=1fȖb0%:E%JBo)`TVo Vx GW?9 mhjs C ~*/N Q;`-*YwBk6'htnk+as)t݀zҫ> j0PBFdJeCBBH6>C} l$}H7HHzwp.U:P8t 5;M;DDF !6'̀L4?)9&}>-MU*NULJlJrFg-IK#P4BoRgO_yUG=_,_l.jT M4*GH];*c8iL%?fioj6YX?`uh6^<$}@x*rr!rS]_.=?t <KO9IN|B*p:\nz$|#41Q-)ͰM(o'<UKqvxWM:f${PHT%Ԋ~wd@ż㙩BKd/IRO5;+J4BجzYS| )"BF76ۊQSpCEzP1aO u1UNȨ"uC&i,aڈFC?EA9) 5hˉ}| 䗺րV?I|vZhF@$\x±~QLT~9͓͛WDRwtȷz:g~X;&<׃cy-o`o o۽]Ǹ%Ìt|\}(B~gNW򂖳d{DS0DWWP<2J{eŨKVY EZOd9tչE:32&Hhos T"KHC"8Z;dJ%K1 &yjk4ז{ʩI08QE~jr95?1@p/d!Z#h(~}@/al 0JBw_G?/QTe̎}c.r0+X@z5_W7/pđ5)\o3q7^Vi\!{y+(3}DRnˎiP^JH铉?=V`YqJ8F0  0u")P9\1OF ʃ@z18EYm H:H]PKJ-rڝ^v,+E{H}]7;.̊HGAkT/[ϛUs !}27`Oyu31"=;1%!*N {$3 "k!,Ul%L߱#8 +NzONr-镳t0;&*V]Ʒ‘<~ܸ9Dc%h8s h c Y pr̾&rʟcY֝4pO;Yj[^=unISw0X( [37[D 'a.C 7.@m]\/!,q6O"0_,evdS+>dAFis5yhtkBG0;(K_£TaޢtPSqȈm.N4J~]Ӆoq*lW@_qxxgQ? G9rh|C`chF6˯=Ŭ{=.\,AmLu`g='I}9ѧj')cДRPnu&X@p&Z4軗 o|w@TDTC#l_ 2=$I[ ; sӓUjp,t!Sq"O*}'"?RMX9E$U6O拠Q>7f-SU] *TQy,~ 8G!xm!7HQ6nTfSf>X#.u*)duX6u|CU.U16B '=Xx9mKwd{IT&|9'ZsUY3kM ` B3i ;|R(h\QX4Pk,R'pؼɑK)t\33 x0*{)o7 A\qpfZ Or}.m[ nwL4Yi'mL+(SgVߤh up-53&RQ~*b_xkIOK֐(cz,5c5c-U/,fB7P\LyyNlQ>t섰*N2 aqUK6B57X2mV8("S:DPLvNMxS3" )g. ă{sƆED),y)GVTFjF+A͏$a yΦBjfp4?yY5 %U~HM xz(`NvPֱJǓ 01swF c}\[/VNz^nE0}ZvAEL~7cE#9Y*Pe#dzN\Aٜvt rNu׷ v"1fTLzM( X~2&1I Q߾ py&"ŸVLU tNvEc/-J0W+@BvKy.Jhn_]x3`ɗ* fʖ FOʩL'FeFC´Oo.- &sK?ǐR׫ .U9zl@-} Vo2b]̿}\RTm(:&8I,juuQQ"djt.;j$ (Ymw.~cBE>XB(XuOMB}"ڰRNt+;qaQ6]ŤF+kϿ,d$; DoeꧪPKB!6h!%gɲʼn){D(HuF޴- '9t~kv jGa`$e@''>)oZ C Snx!nQdpS> j`U3t&VFr ސ#}PF7)Ä<Υ8`<Esv`sHt\N;:'^ yo~8ܣRܕF?DŧCאŸQG.ܣ$x`[!@0NIOK>/TV!+ڕӦ +>5H]A u:UlBghO, ˇ'2 xY(#28bJ!}v nD:b{W:{FJQ^!  REnE<~-?eB3@n63'L7ӛ󏱏f-6\@L&dk'O$fH*yQld@6.~$8G,.K=h>ΚЍ*>^':;Z 륉 0@X^VP.7Y yo-UNTԏ=%Vʬ*fŒj(p\&a+@m k#ehPj+"Eߞ @;*(oAs1€ޮm\vυ!,FZkʐF{n4sOX/'5I.EF#)m^ #1@}]7OnOb F?DrC/7VSn]ˣ3 E~NoV'f֪EgdQA{XۏE̬K~x2_ZU}c SI#/񸖱EXFF+ ^ \oGk͘*S:y-IUrK6EqCʤʗW<םvB(Z0 y"~pZ_^<4&D[j|$Ϡ5)˴` W.|ޫ3Ɔ">Z\@\MehF6}:fYure#1k.<,e FMJ!yb4_@֩VT'Zdf DV10]q'&YaX프/=z12ߝ/ŁN=ZI12?Gs T6 H&vU=83w!x͸6I^F#&YAͤ6.RŚNٯߢr/$q^!'[!p ŷU|xaN{,"%/Ywuǚ`@CJpLg.5:Mo)c=%5BaR /},o#$b2 ܸu- ?Q~M# GϘ9R|cO!|1IɃ<`d6<2?eQ @' eI dP!rwnYFf0~@q ŷNsQRntt4gIGN4)6fS)gt?G٢z65LafDe~Tj[/ HlF @G>ސWNx¿mϞыoCܪx {2V] U'~CsvJyv{sM~zu `{뎃O"eCN)EEL+rCxbⳒU;zfD/ȓI6uEmDT{^1DoY'H٬,?Eh\ZJ0Ǵm$fp oĹO2+Su-xԛBL:jgG#^Rqzl@ti !q1ЈKT0;QD ]ȶSÊPC-,1^q8CT>fIA`TCW~ եKrintA{#C7q)2>9qQ"@` 3*GY֚LMo/N{REJ]lۘV;JZU^>DsmΝ[‹⦎ qcH+?o;jyVD_Ao|"ˎ RY|5x?r)gkJ+֎#c#Փ.6Q {{Pu0TPi7BlW4dDmֵr[vђi=g:2jsl>&8&0 yה9rnC R2كd>0n!(=)xMnPxjkh?)dP%(g';'lܦ:3"N(oUK"% EӞ T`GSX+ ̛]޹2(9 j,2$m5zSq r򼉍TesNQ K>sy臖칮)ž/0W:]3Ν;yE֪4^_V~%nkiGzZ- >ܴF#_q"ĜLcb;z$uMQmeJ]huը~\k@;^֕ PYͳ,*Vcd8{ PΨ&^Ǟ[B3D0AiMnLidGDl d[=ᵼ(ܝ,d!dJ`j'ii<%@P4*/ֲegߘpVcծ =Yv}In3m&V w{pь׹L}"NH 9挭b f~w@OI'?ӑvRȴ"g+^S)dh1Tjnū }PV`CPfwՀΆXH?X*CػN=~ S6>H7㏹IB[pb2e Q H'B.p+'JHxt*,:w=3&>6ړ(sݕR B[ڻT%q-/]O;?uj!NxnnKȊXn4YX<3,Du+Oh q`h `"$drZm +nr㽨 KC҅%Wx㌪vp&X(w1GiJ}+R_QgVua ,eI`Fж FPG:AL>Grbg1:QnV!~`(D6^P C;nSNN{$!ӈs&nx5ˢYS/02yM99^2|sgi)CƯ[%FӶef~NGY]Ci7}XyXPNvvrm Y B`V&E͐K(MqeenQ+cĔ_?4dSmX2qJ_lXR%\neU}JՌ. -zDX:~~HBn ʩ1gB MY{d(_?Wc=Ceڢ4JN[1Jsgb}q75+ZoS7i b#.85&*wBm/MĬlЌpu?r<9vX]&;q! $#i+?AzPMe EY)p}N*8 $E 쵺-~u+זI,@<yOQU Lpp)YD}.!R^dO6 ~e,sm\ lV,KMt) ̄Véȡ1ۡ-2d9?;vO5rwiKu :otRT,uX])ʩ!Ԭp9|9A|;AO#I5F5T}E|{NO;6tqn޹љp?r>ֆ[H|^5P^inE֩!;zvӊ =co[sxg~;s 3_G8 #i;=;*}nCg鿠PX"LaB(~{641+<Ňu׽Kcх_b0&# )AM<ةAz>{qxej <d7hl7N6B-aNjѧP=({ S}& iR6tW} ~q~Ju&%=srx&*?|u牷j)`S8S</KLXZK> j$PٹUi/`"جpPNR6y$`ގ?e ~=Db9i{{ruI5ՀP+Tj4I6b)}4m!Th]ͷj-(62ޣT4I}{fmrW#T7 mȄ?,4Z*׏m7V@zedxME Sq=rC aDшh(ܽ^0Lyǝ3g IunpSQ9 su;}(wx>C& sfdYBH򭣎$3Tm燀R ']-F݃ l_x%b5jS#Y7,FyP+8MT48\?9RAЇuSQ~*#h~ro܉9KȡٖlKɤ Rԋ?8+?_+7w-(oM).=!dqWLyrG'<-_-Y>8 {UOFYY%& ;&=+O \Ḍ0"6ޘ0!im(!$a6nA$r '%{`xm0i;"eLQ~)U̬ 8F#'^2נ)Vq?^΋s4ܘbgFdh 8{X_oE1GUL>M\sr0^_EgG-> CDT$=.13IS Kk0s]N\@=;[O Y,!xvoFj`;N胙hz^ۍ+ $]͏Fqn[aqssH~0]*QÞ`T PϿn\f)4J<=5KYZhs6&=`w 1bpx# $vXR :D_}.7dO h%D/HRsam*,杋)n0EWraA)hIS/RWjY:Σqs)ޯ3_P=F^ \-^\U9 l(u9}rAqRx0.3eCXP3ct@I3M2Rv)tw淑>\]WtEӖx6f5nCID:(Z4OpP2h6HfFԇiE`H9Kxq:5$>(sfֻ:sE{~*ǞS'3jՓwҞ/)% s/lǀwuZԏl?4 8?]Xi}<|׿6YP;c3zme,P{<w1MG*>n,;2P~~@ƗeQ3ؠ24,R-VY,L0b/X۩*vC. KN]ZVnaNýGi'M&fn{2wؗc=MF&L93`{eBK"A*xBmL_8 jo?J`k,u/EZ@0?@Mg툚&v5&qHSRR܇EwXMLh  fsdꇙ+s'B!+}ԲyrmTc0:r6]Hz'b U4kWA@?;al vy*ZX/t4+PHUWJF7 :qBKl1ϚX.OQK/鼠Va4&~P!||K~b߫tGfԣg9M{QfD:N$09ɘ̽).T_눱UUsQ8\\P1 d"DuClbMQV_Ju 0F?QiZAiZt?hOF;rBLtwgɉӧ.F ^'M=ϣҺҫ! ?ٺ4sd]ł״%= {tq]fUz )$ Φ(VN=HUAI; fh™a߷_#U0<ㄣA^^@PF3OTS's^}׵06V/ojD6U6ؓN]pR2MwnRZyw Uu)l#ꜧUDžvg=.?.'U~^U {-zA$QV/ @EIIcl=(B*rSф]&hĖSZQ'TZv^˺Gհ{Q>eHx*vVT|N+/zD 5Cu;& /pEI-7( &/OdWM=xdN&icsth&RT|D[3zu-  kF"k4|H6.B[]Ei0G#ؚii7ibԛ3ũ?W}tb_y%a=Ir7wxvV)dqrbh;WΤÃ$=i.CÔB,i `#֮$'|C,KlOnf^J=d404#1Q+C;G~AbƵ3w سD)A?QEAp`î 1؆㰒c?%{qBnODc}9ekn:4,fC5CzO+s3 Go>5jvWN+fFیB"jfL7m?rNE bg A`*Lx¯[qsAEA>UDy+c<*r&ITz'F 0LE{+zhSc(BqST%ƶyYAxV .O)6܏%?|8 $Eij{UK (>[(IWnCe| mG:k1A@}CS!_7Ja iOAS&S5Ϸf:pHXP"͕ӑz9:"~KYc:4YKxI %Br9ֳ#4hHg7-o!F.*IՋXLz99y(K7zL0\ȥ:Ƭ-^xԤ[>\$`tQ#1Y6*;L%vYJ>^XM` It7x!ҹ$Q~Ģdyˤ8(DusaglݧE+}v[_ ʱt|7 ]*BBƿr&^͙k's)@|6(ЍsH9o4k]WU]W '}qkС(o|`:L`V-X\9saÖwNYT+m Sw[hVef5dw?oրDp@mνrjH\ 9ElYGtĚBe3`A i3J<8|K̢L~H_,2# 7U>o_SmEu/5'}~[;a9ƆszM[Gu;&۴' h<.qd3dQKS>^\Dw{@?saٟ{"AJP%{ K8;Ζ?(L O͗,<~p0^[H>i]t ^F{Tx| >")C]Ʉh39üZeXvXvNv6Zmg6mn'8f!#yˁ5e ` e,|0I`/m jDVGaV -VAfw9ќDjdyڥ*-IϞe"|Ѐ8n}"؅7=K̒4[@PzMڴAXN"*Ǥ Yj|Qbyf)"5Ġ֔N\}+` AiQ2k>AmM"teN\ypH*(Mn!˷* @2 g=}92t&\lC@tM-Dl2uıOߥ-W3os|%z8([ SE:ŔJ =T ,\gYPeS؃A%pk!iz4MI Hj ]I 5&:2@t '+*}ۻegۙ=1$̶x-U|p )Naxt.ӛvG*GʩU/I N}ߢ/_y%|sfdsp2T=+R9=jd^ʎ}a5 5I48A6pyٜzsRV-8\Q˜w}vwKѱF4XJPuu#1pec˳q+ 3oZܯy~8gtdp6"{KhhU1#O9Y$p]H8s塽^wI# 3r>C#XؠTIL, s^1sMwFEF"!F$c5G(4$(}<^rvyQ5aUbPY~DeRl%'6^|MfRNxRM:8?} +Gu*\0E|'tWBO !| w1is>*TϛYRy;tB ȬLC+k`CsG7Zs~(.{՘e^w<(l<-Ҝ34[o2-, XaWo++n;^ҳ&?A%r16!rnI 'Ouh2>"H1\FѾh1JEWL5=4UԶ91nZ r&b4x"]hA`**mж+7sbV j Ȋ.,bKB8Ҝsi&3)]„A<OɠTSItְ >V{aDc)JDtMw2r&i3q{jx_ͤg[(L\;'(Da.)eֻVGQO?)$VBe9,]ClM{[[°78]P1AfNK0\^4dgQn=,!(~ggT:t.>Zq:%tu\7T6նP)WϢqtx $L8MXI@m=d!?-h`|;`ة=ƣͅfgͦSn_C3DdFɈkƓl2Mٓ>nhkr'BOcV}W@XխenYyv:UۀRiޒ"7Lr2#PV)܀<~״M\(d@1-fo,& K/w]^䪰ZKK ϋ@,>/ٗ:+v&@S-՝iZ'*V Rdp,CgaSy}d&Z[~MlyʺZ&z[sSm18 %1 !rxm,7rfp13XLz|ְiQ{ !!CEF"Qa)'gmY gqXr|p! VTS? ]ѪSRLɏO M]b@p쳀sq&lgccp}P '&ƥWvh]v\g,1!jDi^e:Z W,T- Z`{R+ټqQwi #j0\?BWh9 s}HT"'1w#Uu0@{aqQr0_rs6WXY%))(lbmX$<3Y̺7 &=U@}҂pY9Od>*B!wPox3 xAf];c`w &hOFLܷ@x]QqgwHqx|soY阇Sߑ4/tjT -q6GAъd)+囇Q@xJj l ]qp%lL(ևxjg,qz))ULQA._}!Z o4mܼfƀh~uDa0NBrXNC2ݫĽ~G<醼Щ2NjԣjmucO-5'MPemT~wiqM52Z|fk5џv'z|x3R-2QEGVh@+3:iA ¬b6?V8Q&)pStD$t6?jG%y(kZ /%i^sF0 %Vt*^$UѨNXw].ٗbGuvI@ܓ3~CW;M(MCT{KPcJB 2 /B'I2)odQ:$B]GejC:&=(+)Ziz[6Il <#E- ԽS$/):X :<*{9zQM9S#`6P:]Ou۰::Lӟ)`JOp>8SM֫'gH*MaHvvO=^~y{"A55EiXd]NƉvum3dX"vUzZHX^V&ɢphX;}'nXLqc=JX^Dn (,Ard\17zQG#_!6+B Yoh$s^d FH(;L_lyг}/g.pIX <@Yb1*(eF@}!<л`qCcɑ{ei zC0;Hxx#$x Qv',%Nۼ,R^b .zq)k[۾+[?PB{T&:2.- F? lQ%jmG/[XgX6Q 9/l>/utKg[GeT&ǁOz9lXS_s&$n+ -D?i +Q:]ۄl5f-n%ڍ -SZ OdWن])3cԞN폱҉A\t$nK&Z2K:?,S{^klzx95 bJ!'=Qp^qMHtcrW$^]TK*;?0бyH=UT|K_3("׶ ">iH`/2ݤw09ٳaJsBTV*N5}g(h jK|3 No36̮F7,vĐ '1:lq\o!u v$UGO8G?a7 JKIqb쀥66d%j?&qa<=x]ĔmUKۨ]A&6={Ytj%V<y@/fڍ &8`o+X+$z7l{(qc5Tj񝇢|\7!hYgx p>u(vY++̙Bʞ vT9,Y,V`P/V*SzqI,CdUq4Ybƿ_¯v&_ 8MQ͡tC%:{MCp4*E(. ؚN)#oވC!Ɓ^nz%#wHYu7%| B 6Z]Pfg-neDk]-v~g!@.@6 g%, A=>Xt@OT=IE쇐!=G!4]|Q͍Gqsֈ:d !\ hsI=rsahɽC;bRU%o%ɩ50e,Fs/*ǘRtdGUes1>Yw’LI،ʓȑ#G*UM&''d}blLnq+biB?іmYjpˡNqJa> 3*zNvhoۅ΀C. R}g깁 Է-Ѧ]BMyCt/#9kF'!-KlqfP(=l-|r_e{/q/11U<a&Ot5Ao/t0hE 3Sv>ME@|)ZJ$ @]B q:wr(Ns?ܵn.uD'o/+n=1 G.eiauAZ^ N;K8$^K`W-06 ph)9KPгj4^0CGbÀC7^!,V,%KF&Pwx鴸Os6?=(tGXs嬍2`u[mNH {ϪВzUx@[ NK Mc܎l>i MujX U›F\ VxmA0h>:뷽(Sw.7EFKLuT9#] 1 "{$-V^6@i(jBo,EB )}(ۓVU~59ũ(3Od jZ y:7癣#'fNj&D*yYjQqI,赵,{Xf Gn}9}1="Q>Iy2PL_QVe, (uEi"$ކrE19c/N֍:g-SQYSOOv̋}'8;R6\Av#zS2FC.0?(̨=Ƀ6 |Њ[v}d zJA<3u$ͺUO V䁻?Tq]3*lc*JQ9(9M ŐA/|umllzKOT"읰XtK@Õ0}=[v}oNrz'|w]%Ɓ>/f`5JwrX7C? 4n{ O072G~ëz&%:xv+)䫑; Fc/ j1Yךߘ:\Ht2[d$~TnQ׈AЇD)̡>pܭ<+sCV)nKݦ mo<B%2\OUYE秠a͏ƩvDhyXfҞw[eVE?Sv&}oЋu_\A`YcP화+ɍLRSsѪLM7Fj>YE4yMK6RKq(3lAuPF3{Y iUn9]4L ,E25U zԺ"t Ics ($rYIM4U6:?l =ta~1*E-gf?JgM-+PhʛNCݩ%X@V=T`x*CӶ=HjiE)&,m1DiJ) bjYJքSl: /no8{:ռbd=I+j$ϝDdGaE 36¯ig\o)KՂ,mpU9 ]=o_c*)̷2Vq ν/XyNk2NHM[kȆf0 `d$ܶh糹S%" ȚKDs*('sDە ¹lN0\A[Ivp45 <Y9wp&i8 WsCQ:b=DC-|VB_RͷDRX*_= nxr?7'XMbXkCyӠ{ϠLOiqeQ-KM*A5ZPhS۲d n캣9zA3; *ܱ(+"q2]/pq_^Aai Z]Y@-db+, bRkd1y%0opX/P')u:]7XtC4uog_ogx<L{cAGj#^~eK܌P5$dʕs0(Q[`8-a+~0&>OBߥϻЀPNḐ ֪RDBv~?𯛓ymgO, "a2RWs- Aq0֦daF#U}\2-p_?Ӗi`A9y*1geYbNKUH\SS8xsL+v@BqWAk&0q 6 Ր l?d& gbϙ?#R3-G|]\/C\*E3.vMjດ<͔{JØ`98Yo@>ŀrG~`S?3< G$Nuc*4*p;tk.1;8o([C94GcABR`b~,^A͖Jf4 he%ma(R^n 2‰.o[-<ȗEjӌtm1TrI:LtevzN楗MHMq5 X+dNW1sO Dqe1e^#wLPxp_#Ix+"V[GT<RKk,afniyG z8%50"`̞\}f]ډ%5ӭ<>|f`gM k\MZa~|E͑d)P% _W.i0rL_٧8W(xߢ(b w*ޱ=%!B9u @_TKmrٺEDvӍ]E;W4)U}fC (Ep#Q|/)}&j/0U]#e#SLFj:ArA^h㟙J#1鳜YLSP{B+߆#Z)(+Mv RJB*вʲ!nHI,ʄYC~^cKE1O7e1*K}ԭ JtTLvhO`1qO1@_ph‰IIBz#W:JxnN #.y:g;˻} GU0@͆Z!8?vbteBG])W^_xDcbbTKO@ dקV8Ze**(bQ%H;(BeB(jIp+*q]_W(0l+AJU%P~s*5S"͘p!!@-jBX匿+dkŨNg.ʨ|>e\Vktu!&5¶dRO\mSy]]A_ 4]O(ei@J:fmBo8.wl}B^'bMKI^j |Bb$PFIH6Igio֙I[*AzfN۔ = /-0ZWd/sS2 Ճu6X˗O$E{ta*PK=MxvI$u-Å!-T~^6Qr+2òTzE Qt1uҞ'dj8y /ȸԫ>`1䱫 A:#{ՙz K 8?qni^3٩xc"MPo3-8pFЗJ_5fZ9^>;Gd $ڔA9FB< 497Y偳RXfؐ,hML:y3 8Pwc>|\ G1ϵF6|1&Ab"&ToR= YG'햩tݳq3XCtrOLL1 K%1R5Mo*㤛P /lT5a˧$^ <\[l(:j0F/?˭jW}oZE$7 Uz8 1*=?yC>5V>q\BFlgCɴ8Ek=,+,2& a:mneG< 1P[bRVb V[r}^of|2!vDJޕR?r~S&48,!1с,EC R$hP8g1ԺdƊ TфoX!>CN9PBЮ4@uUCNJtNgVyw30b۪= 4Y]bJ]~]L,8='MBߐ5yLr X}b3xA;hyMDWf!yC>! !?.>B0K !4Wgn\%5zoyVD"+J\9^!+X~v^ɺb"摉"J络s6TȰ=$X9C޼ }|\\]IS%͂3؎)4S$_DT h .yfv5Kk4xcz pA%a'j`[ᆎбBn8` 4:7I‡'ω:LgS:$;C|<لqꮳ9Vw#aQ[NH^ \R Ie۲U&FC83E jλy҇2L.e9HTLAT{e&uK꽎+F%0G$kk9sˋ9Cb80ؽK"7CZQNb6*1{ءHaElTD ]qkq ]ucp;K-} EV"h}[ީ5xF36dRiMjtqvT{LsXcB;N+Ax>6G|6$JÚJͤq ]:uNaUiW/]lWsKCiRyo`m{[W&q%ȝˏ%#_UYoZYJ>_~ڦUm焭1_;.CV?7tvG` w<:.H.lH7v`߹qQ|bm&~'ǧ([;7Ҍ $_TTd6'S/Y r1sw!K1 =D(FyNo1܅^t|/D) 9',[.lja*ɻ|hQK"9yiRѵMr$}"~f)vթ᪪5 ׎O]D(ZǶ6{Z$_b)O0ZA@5bv>{7n~aobaٓ H; LhM k?'Qb!FZ 9 0A#}&*(VϔtbJuM("MF?B nYQ?Eq5=@$cv4q $烯%;5bn{c):740``vZe &SqĖPObc \FXAԍumڼɿm̍2ٓsM ELج*UO0&;ZLg1atQ>F+*VKQ8@uEF|Yw0hqlEgl(#A`ɚ`\]Xukp!s{1C,l۱׽«ud]2 ^8mnt'ΐE 5р[Ut_!yȣQUlE2넱g9RS, q kE9F|UvЭ.U^:YȊ6wSmw72Û/ \ų@oF.V<֘/t߾ L)-^W4Go#@ u9-Hb-\^ȈKuDŽ =Mn&6*IJom8˭Ưjk(tg]V?$iR8FH mYQU,8o+\h*tA(x=Y ?_$5<AjV`Ptm2? ~2_fua ݚ5 p,DOUCfK8(:Wfy>Tar<,Sg=r>˘0'0i8ضЅ;I<scQE: ׸?{hZb_U"6&VE|Z0!hq(}m:팹7'(5E3 P [i?DKh*^7(jk0/{ڇ͋O!uE۫f( bCӰO~a ui+$}wUrva+Ed^߄, ,rjSز&b!>Pd'$֌ѥPU=4qb ~ˤ{. .GiY;{;!l7BAܜvUu;MG2hkWݛ>~DU|fp),#uV9 WopkP}HNZ7[VAK .`؋;WvǶ_&E77FvMċUb4]%fdBt䦬4~|45 E,>019aQkyY2cUcMf4`k %0 TY┿_x{UAPyV(O&ܚx6;MX$X#cpyX˵ʃᒯMC$vAŒ/cFw(9n+[CzkӶς?&I#J@iQh÷d@U] . b#ds;qvW~MV4862սtGq ( fhy "^/k{=W_|XD=BCz+7 ~ ;&'e2jkWbzFK4R9^ox=6r7HpFg)ʖ#d*\F 0SU R_I ٝŇ&UI~\Uܭlb Xq| Y 7b3QML?Jn>\zPlK Eڸ˶))s :^H_b)ʙ"hno?#~Rc^ Ϙ](|mt8†[O\_C0K2L9[? Vw}+;} ay,B ژK= #25E_VCXwew 5/1Nc=e x9-N]ǶWHގ)v~ ].䡇Fކb@\~/QED0=s9,JҨ&r1|.mji߈M+rӿ [QvO1g5 L^=f'.x@H/T/j`hTg䓜$F!NNnkXR%W02QM0Ńs7R/ツ& jz|JF󽂛 o@zGLwBtYuׇLȱP꼦D6TWM*;͓/M96鈦jR Tse\!հ]V3f G@kkp\,io<໔u\ykƾi7.鸀2Y.Qc.(`"8rt-:&1J`AKF B͢Q*{h0/TT(0U)1$҆eR 1['m Ӣ sSCӓSL`]dhYn߇]>0e7tcxx}cv2Gy.}'mt_':eCw1@%s%`f l*ZZ70Lddή+Aߢ*w8+SLF ×ՓQJgY'h-(Ry]}z{K/l%=hLBjϼ*d&bQR҂ ,i н& 5$_3tTl&U)d\1Br,?ꤟ)/城PR k!ҫKevg=9BDz }cit v+ tq:89d "AV? .jS|9t骽 =+`@ g6w);m6GNu7M,Y}?yacW&Ǡ 4y7тbo[ղ:C| }񂐕̡͉ 2RvxՅNZ;JFo+rnˮFĀw$cұb<jDCXz krʭkԴ0)c.TO[u,}C>*kШk*xafg(`T,L"Y}E{ovp%.hbA6̊F':ڮ(o$`< "aۚϠ@TUq8ђaG/ӭk:;r(C,lNB\n"mGp:;G 7 lh[ җaKޏ`sOĤ,ttF?:NoQ[o86NI~bzXkEZg"Sł:k9!Y9C S Z<ĚU^/*vRR*{r1 33O#gmBf%UF+^F>^8G#k4C}U:kQO6KllߒM,Sm^p$۹Tx 3jݵS(+#n!^#ika?8.44"Ձ4t1d_Rhx%BJAkW)&kcxJ©c8sQGHJMo lE!:ɝŷ;Qx݇űԀ.I̡d&+NvIW5LUzs[ f5]1/dJrs׸#L"fm~ƪR7?b<ՙ: 78  YT| rM"f]Sw87I|vg z>LL$(Tpjީx5D9Li.ZJcDo\$O"ɏ0;g\2j;ŗٗ\ʶj/[I!I*.\}h'YNb9&b,ޚq-}٠zd2Xh#fvډ_ :ĥ[Mߘ{.3U8y=j_ wf`8<)8a]V_;1q|N1n^[sCś+ p$+trB@Zl>MRK,f{ df巅W^C&PDI->4$TFS!}\x-l3<4xwVJǚRzf"hV/ș5SK;`طOn"TW?aӼμJW_aPӫim8䑪ٻ`+31]bʄGI&w0kYdjC:B.<ہ$Џm/]+2ctQű'nyŖ$t9_o׽dtG:+.6Q{f9 (C!gq\-'XX\$}RHm?4S2Ǭ%lg& >JoD\f}! y  9a'"HvUȕҥjLo~w'tsQp8@@^̛NNA_#A܏b*-n΍@V ƳI9L}G!&I>ihf]X=4qp')=uQj^g#ԧ2( ,|0p땩~a5Řnm9ǫM]v=E] S1W){̉{N-fMs z&_ǹlFؕ`!;J]a'|:c?-R% @Yv4maꐎH'*AQԲSJmcj%s3!Fn/:m{ww+LIqt{ ͊ ~ӏ+xe5w9Y@fk\a_6ô33 x&*~)]s&J+8,+7=+&xF:` ә 4JɳJ[R?Zʤ C8lA8FZGPJQ++hp/V󉌖AvnZu[+6|Q K{J9ʓ4|ՆjׅB5Q`ڸL a򲫦 *Aо3 p#vZBy&ƽ:t=}H.3g*II!_frV0Vӳw*|Vg|(P ۥ1^nՎ>1,&ojy}шԬ Dh3& /J7+}O ~n(mjt߮fq;VuUh^=W0W`ybJ6j{{j{=]M$F璄6@H339"s׿ D|9PO 9UfT:(i(%A%(_*1@rC&왷7wHSta&vs.O3t#Y/3 p)}N]Mm:,c pbE);%nK^  N+ >ĠIHCsS-k#?>=0,$Pw:ׇF>e2Q\ۦaD`m >]!!(Et.a4lUAC'^X#\C#lAޣI>쓕# }yP'kVt*4vN"a0[&g+M/hAlYTNC}+d*dl\ĭ>WbPI6[ecbwM/ŀ2JCIe% ,cDqgY]xy׊w=ع靫PPKlViu~ DBpcҍr{h̽G[ڥпXOPGg^A7Oww7tզlq_=I BEq;E,,/|`^qJW-7eCF0}MvE61fR eN44vr !͙X9p!Ul"|Lȓ}6( rD>kl0l5\&>)#6"˕ 4j97&%1ZFSڗWWH[f+PB%bZkZ@ϊjCT<WE+3V4s˽~c\rG 0&)-WaVU/_@<^t{K(/(͚W.KEoMr} Dzݫ4 LLFx~v:gu{b3Uzi?GBA];JH"<҅ X)S Z$yǭO}[ Ȁk~GI'b U&Cw_A7ζ- {'Evzb GnmIeX`#QyB1RR0 34}1 ~f-Pe@qٰ%,_Oɽ!:Sed8!{I _ 1o5T:I R=H^4*p5{?Tp4%jMVb]a HƕDI4/tr6!L1p Ւul[/W,+8hKI,sik/8@7lEnjE;g*&xjkP$A4%>x\c@I'EyÍ^Om_Wd!!k#{ڡښh,o{Bc0^J,=1ԱWS}%yO]b9-r JF5hn%౳W.& [A#f?7"WȽ~ԭrho kJnBI ׆ ̦BI0~5THK [tr2bƔRr2q֗C`"X_a  uQ.KEz01uW#sdkurIurm7Qyp |H\ىݥ-Eyuq߭] p֞wce=6I(QR-_ m& <AߞP&~iZJ͞0Wv<E6H`9thOR| +@"{;Us@/2Y%*et\'+$ LS/h/.| /k;}߮kE}ԈFw/_°֠ߴucZ}(A6"Ln0w3: ?$/ereY=8\'~u*Gnc\0U.S[Ե2#Q"!H~ɓb<ʻZ"S%X_6I~fQԵ Bv2n\];"/|^9+RCk^X|Ơ-ccPT3C6o )uy2"8RA ~cf/~]3Jx0Li0g] tCOtK .`ɮ׌]?Zrg )>@k<y6{]f!ЧUTbCТkDlV/E(bIL |Q:@Ő 5`,1X;?wut.d}`(C8`8PsP)1Wh aMs\4Rt=p@F"qʂeuωM7qm逖16-TplL1 tD`s<Lrm킇l?‡iud.yn@v?b5Ny"x#f\j{_d{ܠeΠ߃$I4+OXGHޟ\oWM҇/C%Igr;pgnAr|2Dc^g ZPm7ABXj0CseG*[:{Xha2TjT?62a2 K O"WƢr~`pa[3AY0K#UMrXw'3hSǦ\W13B|T|q @+<A{пy7ahT6+~̃yY.+z6>4Dqt;^y@h%Qe=Ӎ.⇺TAS+n3-R?W&0^>E^UDىpeN䠍8nk>+LAT3̨)d̨A~+";א]WpLh{7 5iB?ǻ(FƩ⸸+z:ꇖ>ɛL+bBTje7j [6^poUڣ v;HP! nwOms Ic\_TxK'guic33>@n֋I) 1j>RgA~RW^ڕp2JC2u/ ;r! Ik+ZĞFR~zD &Jr@؜=,LTWX 羴052ӟ&0mR@Vm{y PٽY1m_1XIlr7V/EvA/>4gn.zswgعƑS=?^-ъ,qUm&ƿjteW$qjB69va[tncd3Ηbjk鞙\Nui\ @''u?1 C`pЖ@kɻ1_>ps#s?=fޘB_]C'hc@|zG21wlyQAOS3,9ьShL~Y 4ُ!d0m{X$V.P%@$r`ޭW\ndo粺jEotg[PPW-̸6Uyezf2/72r`1 ~Tcs?^rgF@R6Sj~"/Rr G9] .-zHX!ll~(6P8%XFڣ%4Q$Y`pE;ڭqriVЭH ܗu3i?e%fUV tOXɹsyOW{*i&LqhƆɃNcMֱwpv9 (i~60pE;D8|֚B"ןAMTĪȋH+8Ok-;Ml9Z6Fd=!l.2M1PunSI[+qy~OHglrMv[2r';X^}Ԣe/#CHgàXqܥ RLq~sX]>u^ͅ)d-+:i>i /ޑ 2Оs0,C<6ez\k&UaZ 9D =iO@% r]u!T'{E3MD8 nMsT\n i8@u(% 8;L&k|1F{>k"l[އPvq?S,BQ4L>2cH_VZ5)MEEĻj5*ϑ6e;< - Mɕ[V_HetHͳ8zW펷Y'#%GFe?"9Nc߁JRc|aXP^jQexdl]M[Jby/ˍ UK儇_GaHfCx Eƌ*` U ?kh%8sj+V &QLkxI_w ׼ej `6Jt? 2momkzĜv:svtUov. -6ZGM{τVxxt,]HG$UQCX5p즸}ZAS/׼}Ό+#Añ'`K-&3JggL'ݡiH/ \؎>]57m 7^Qd"`M7b`'8B߅]5;FYxio1N|1bf1*_2Ѡ6GU{@&!UYl7VU]|p7̕՛cl>91H"\d %cQ?uWVbc!$m|"΢F",x贍? o62Ɋ-CTF일ӕaz_Fb؜뻜t)H1Z G;̝8_7yum/S+N⻡z(⬿?\;{L>5wK+P'v!Kfa12ZgFQ" ~E:|z'QX7M!)זB1L;BNn h JaZ8pη:؜[fbey3j"@'LA3LŊAxjEG}lZLS?t=ZYwݞY)*jjN9ZP]+E=3X9[C)ydH:7q5?ioĠ#k"^No8(}rev09L?$!`2nm]: &q9KUn_WMjV\EIU-_TG- au?XO)$,c$(Hɨ_v唦GW7iPÉ⯪ݮAnA!DPj< (N7u 4 +bxTf$ ɥ ɝ9#@fYpm-zIM6g4heU0ݳ|R[IđsƂ"{ڋM6Oy>z6`lfOUqN'~&;Sa7 iB~u|"NwXV:Hڕ#50L,&fРxƠ{g t p"z&fp9C?f^p=%*}Hԭi.wsLg}3bKMs ~ "d nǓ=xUpS ; jbi~ktH]OtvR_a9*r\ `S%uywRXabs_⸲?(&5էΦ9`z3SIi=I$<f;I&. VPTMZU + }h+]D_4ܽ$N%;08@щ 7}*4e]H+KNADY)nn4pp#e\pڷUqgvF,*/m8INjtZE:7(wXYS9uSG Ffq 6?U植,6O80}cf͕=3quvT+(DL OUN1Tap{Ovr@+R,뫧z65j_MUw¹vR-J"hlARa/̟O柾opfo /'Q<ߜqUNi筛#Z6= Q  hĴU/uqiM}LLW< k]PmrerUD Eɾ ҍMΌs^% FPBmSp}'G?9l sѼ K qZ[@5,鮵‘*3z45, U0 \7YgxbAAZv^vr}%_oXt[JrWR .)_rlL_Ёm-T&ɗIv(Uk_+ـU(L#wZr-; C0T)tC<"ZԎ éq?B/H C'[;ռ2H>ͨ$ܲW*[a~tN#JP.nc'!Դ~j[s 0/AXFD\Қr{D䌧#/e-VG QcPe-i!Ww)ܓA[.b>oS;w:ӫ9Ͱϟ_;&f_6=kFX)׉KIn'B|i݂kէA- NLOv3f*kDv]Ѭ.w20XqVW`I3Mò4:~5}3?ui)߂I"35HAV,%"Tj4=O;.sⷜٻc΅fIoVA7pqe5WۡwvBq[Yk nZ )>;if-8X>a24\UNn1!H`{Ի]MoS6<#N( .wJ#t#wԨ4$d|͂}ſpگ] qVYm1ٿ_߈Ww[RxazT{<)5vf, *B5$mH 3OS0UwfW[csHKKyE]#MuD=: ޑ+k&M88ˠ*a>e".z?1'EbXw.aط-6%4^m2oyT'ت \cwp8:+"/# )!(N&0ioX(TW<ݳ`x "2HzR^ƢEc94ilW=CcRA>o&A ı(ߐ]t45d8/ UxG Ev@R&)P9rҴT&/s8^=[^5Y/9Za6/)ϸel{U/v%r> yudori(|26A9ǰ}%+5.^1N6#&o߮ND-~[>A2gEO R7bF{m͡ r1;d@ųp3☘lΥ~ʺ8Tr\RE[$myD4/.dR+9I.I2_#,0 :bٜdZUj Yp>KDJ\7Î 5"~pK`^KY90sBVΉ.*!V"[È_7gaZP/ $Y,4^nmUpd"R5d-|Lkv}igyc 3xJV*â=T92&)c|ݱ NgeGBTɵNΝ`e=zdqWhiiQ襡j%;l W{7ÏHeSmA:ɺu؃N 0H/Rl|+L~?0Mr_V`W%BH)S.s0'lp2&㮇֨'Ρbv ir솜;)W@RO_WGQԏ ahtxn%-Z uM9v OȐ ӥt~h-@㰈hv ~| ?p^Mf< %D/؟R)j$(3G"\Fo7A:Y٩.g-2KJqgk`E0g1;-BgMf)IUuО[.d0@W={yiOT BmZi|6{I`-&Akľ J2qfK5mkR hͲl2MZYl؎˶tݛѿvGhD T5r,OgVW;d-tk$9뾃h91?gݦ8 S|HLP4d,&̷ 3m`qO b)Q!XƑD:.gi6:DaJzJWG%9/e=c݃ "?d~?q {5!~VN}zM6!Iz#kxEfԤ^7\ú~EoUưSzt[yB|F}9 i[J1_M6 "6_}"M$^GRep]66}D6K&-y v9߱'=y߄ 2{18kd]9A3+(BIS621I k63bhƸl!55A'@:KPև*ʼnzAWu/?$>0zY4a7[犦bocOn::[6e Bښ^>|odvc^Lt{P-Բub|oDemkjy(dIp"ƌqYي}†!\a8j2FM,H Uv{0c%jbPm"fy^*3Zil5PQ2\^]v,|G4, %\b*ivf !U R^- 9SsXĥdP#*d8seMЖ>9 !Ŀ~6ʐħ8nxfR9쳄bt Qؾax$IPCӻ+_;wٿzCi.s8,f v*l U?ւ̚]Άԁ!ˀj(g <,}1;mzxRs K}Qg3ࠪ8龍V,jsYqT$l]uEk{(T8!;ͳXX9+'hD̀lsyM?jypn=l18䅆U,i`vZͭ R$!O{Nqٞ|2gZI]LdGfN|!AT+$F}߱fFfŻe-=O?DbR6L`Q}=6dz`~n˳hi>I@̄Bmf^C3GL̡*2ZZKpVs,`*tv/ gx $\ Ƈ2f%j%TF7\WBvg>~ m C]j@VϨc@Pp†U~eϪ+ 0$)J9 I'[)Jp}TX7^ KkWSF+L D[4srXfJSo)q_kc×Z;7s3hVIB/b 2+K/;Tf t[0 ,|hoxQhXsϸ`q;B%U\9ܾЏ]Kt!J1$WW K|A>=,+#=t0M* +>ZBȋrps2o,#eؑcExe"2 !T x=7 2ή 1W!mMN`D&ՎV\'4|uI:Q8nﻋYܕpu``E^<`EzOvv qfsq. aNe"XRO|.ҳO_lعq=?i9ʖ}h6C`X+HMJ22epԍ:lZ Z-CQʦ"! IgvpR<.'*躊A# :_6!3#|{^rLIܕm&f@70.`-Od lqK#\Ju- Գd*emKRTg=Za'_{޽UVp71D*Mt4lcc*m._5dS!'q5vHԛVcflAQVYl6 3E8689\Ÿ$B1F)j_ۄ]\U+|,=!&:ГBc'PxN1ϸL%uku+ 39,рIj&Q@?T$&4MR[T;{U+o˃OA^1][O\#Pe`?hDn`>^"M^ewx4[uޒf⟀4*brG='o*Oj4.9]S7c<~d穨u^ Iyq4ͷ^O&s[Nxb&`8N5 Я1蒗94} 2E,]Ry\t8z!ߨP(h&a ڑ14gV8<3PwP[|?.|LHԲm?bW%QeQG/xhFxrސafnh5Z~g\cl:ͣu QCΡ.Mr.z1@4aļ/TՀ6]n/)x7nw-͓4cXVDVf\`)U*P7:[F':Tc)C^Glqڟw Ӝ&-Z8wc9E3$J q~gcז @mV okŞj;۰BG,U- #`3f$疀< & >=LZω{G"^ZIBx"SfyId ׌8"W֕"X8O qɃQyLUVWB<`kI?WtaQ{eVB%ׯ ur&}~хQ!6 4 6$ľkrpRcf"{n̆)E* 9]BO/#Pus-OIubίkhѷ١w|d򫈂~0#қX*t'S9|Y҉#  jv,} kt̀۠rLTL5mzGx^p. E/RGÛ.WJ9m#"H^=GL*רg&xo\ie2Cs})N[.N^+eBrRreZ߈5R/ z,g U}̽Ҡݱyɼ mJ{EMAƷ+v!ͣrI8Mjb.UN8׃ 7|Ԡ_JL)u;M/2Sg~]GUl)ޱoOf5z&jkux\+;XLՈx35?npB$ NWo.T$jxI5DfSRH_` _adxѠ}Vtg)=87^UF~F"wIR*E)35C/~@sqt #:/GDIɷ^ <=7P"y yq&u,VlǫFȾ})]P6%t_zK6I\rhryQ-%~r9R7L (#߷O-W8@5)Jm!`u9{)V } Yo!"LEvzY30;#7#2K(U *tv>d 7+-H$f`re1ˑ]{fZLS5)=juv?XZkU BU@ĴGʼ?xh H{z#4Oyu"GCKL{x;8. R[S0l(r?UEw|!%z`vu,ĻFMBQgi(?WI _-Eg,SsXt-ͧm@Vÿ7:`nWQxA[{"#'3q;\sJZ`˫{k*<̆fnltCʬ Wu26|߀ʊ(wa@\Ĉk9$X<6ڝV9ܒ{vpz"x˂' Vѻ?*pZKS7󝡑gԣڈ gz~A(~,7"Pİ]JbvۛiEE{ n3EBsXйi-)}E]15l;*jhy*MGF+8RP4DCV<0xZU,n`~u}왪a*9Kp nRAnК<ϮgԾTl}{u@a_$KPP2T&]pK? O Ї_w8ܺ$[/+ߣIcT 8X&ObPhegylhMAK-X {M9L^dAe佺D *:qh av$Pc"oJG"p !P[Opr=lڑG dqwZG6sUͤ |sQUݝ%|:]E ,*\ P0l9Htt8K9Rtu3b2 UDՊ,9\&wCy'odXϗ#y]T/ Vq eY^u-fA- UF&@ \M+1ڳ6rtc3آݮ-+Oh1rU~4aH{ӻQ;8%*~HPq ,QOI3L9]W 3+b N|FD; N' L8:)XP)ݧW a+CyF)/x>a*PE?+c5~&vA!)6~]I#.̀wh9+& oQY\gRDLwi+ķZko}crxAC6%K)>T=hT' ʤ#EJ8PqFJ#HDD7&UD`1)ܲIuFdJʱA:@8?4gCb+KoS'y.9JdIQ{WO*ZLڴ /\ff=fIďU<D)6<4gyƸpV6rdrpS|<ׂvk ɬ߳8;̘(m1aDŽ57\Bw@/ekVXPy$ݾĵOJ4Qq,[uYתN"Pt[NP,/mNqH f 7!BaTϗ#%kYeq`LVHT6NoDiԃو xYsr_?o TewT5PΈ\{#Ę5vύGO>vNr>خ¬Fڮ:>E¹F}hE3Q~cЃNX#!u.M F>&q3^kRPHce3z0mBql"BQWCsw)o469uy':}ɽq»5cY oOdZEϗhIYZ0H`7#_>^eՀyE5)H%ס*7 5`~dP+e94^ޜy i=?A̢#uMgv&!H(tǥgG[R[[c  U ƞ3\̮.ttIfRQ #+%>Qð އ].\駁_5ZOg1OPƫ&uf6uRCCl\Dߚ 먴9-Rˡ0)=㮌bM6GyEğ,0QS8e$^ȦEaW}~x`@+J]XZnInpwi]&R-qˡPЃ7a νǗvw(,U|/ |AӧFN8iaKiBN% HaWTx:K<FfwoaNd~r]xvY]lA؃WzOVo8S `ș$A\#62(*NGj%wrH0r3![ɶ3!ǼdrnF;`T0"r`BFR\J=8VNHP S6"ǛslZfL(oN֬i{ama61_ʏ\8Sě""?&uߙI߇;Tώk^#! 3;.Cz ܔM1H%F/c @[K$?63nGNf\? I ԯ韏(qmP/J{\sL5/#FfaZ?w<)@r"Sll~7NNKf!g2A< *;=GцaK\Dp`I^J!KGM#NnvСh95mB$Li%`v3cַi `#NK~7 `cR39wd^86à v19qh@&.g_H*{иWLA`E`5Sv1\ښ_԰RPE9|BX-ng(32:KswXQ'{f} eJȲAkZsc%M8c*qwK mH)f\846%5ZDGxբ&bu@#a2fՈ.i%vߜ)YνIݲ zgqDG`!i-qA~;0bT*GkMJ ^Zj̚/}hgƳJuvMǢ" WaK@im?zsUu { v=ʸO";fBbC#zBEu ϐδ<4A3%vq '.HI$<ٕ-ҟuk $VQ`[/i^*2P ZT93_UBɴJ00rjgOD`7u18% yw}#@KpjבRj֦IdCe23@6=3#xp6Eft7s<$<^K0Cl,cz!G^(KQ"IP;D<%$OR>y c{2 7>;2>d\:K}nOF0:ACec Y\x&Q8%AavlC3rzH'<2H2~L㙞 o6s@9>m  vF1b;O)foHKZsY>/FXctsI ۢHҶ ALQB/4kcu0HLHJ*ت;}#j1T&V^qT<(}i!n Š!p,?H\İ⫌*xɩbEwgnje,jDt 7WJgӐ36 $3 xjdO^s݁ JG^7PQZr[,ToB.+ 1Z`#χD6G`:W4A\wstkcm(l0W{>GF ЄtFe` %xPX'ecU -ЍC&18r, 1(͡v< U4iZ'9BTOE?T\Rf$\яZytGz,Hњ_5Ϟ_ܡDcy~OT a9ݥw\-GG҂hVY~*_dfPzt-y'>֢p-1bۜK-'Q$Xߪ FGB9`e e,;;&f8+os7F2rO^m!/:v;֩a./< 4ulK+kt%+:l կ5E8Z~'惿;_ pϒ"o셶 >v5] 3Cu>gj1[]=kx'x伿- :1@rM_ºDJr-i$zTS+,ꍈAO# GeDsñ&^S\۲̖rBܰ>l`+#:/2S)0gZWbO-OxV\v^dXQPWԎQ^匑ȄwlZ ߊ$!9&Vx9(M}_1G $?:2&8sMʍ bᮻYYUЎ(:~i #鮾jJFkBO'/ލ2{).b_{ZZEncxW I엫Xmm NQc|O}@|GdTPcΦ:e#Gx*b]H"X0c?H.<-,?„\PE+M?3 +ƻQ"S1/߭VZxxf2K3Zy(2m\la' c}fs`Pmy&c>8 o*Goiֺ^t/0,jIDR=ޠg &^M1>cS}lihle jЍ>  4UTGA>qR-'3-voعIS ahqD=P"$@Go4>Ն-aG<s9zX⿠IG_K:Buc4""K2ϖ% n+mLEj滁~MT5+{*+_\B*D`~znьAÅ<5|l^iI7n#EJCH=rAR9H8.hhEӿ"Z EṴRǪoizX?|V|XFuϣjrO:C7K l Ezy҉8TG\E:$(|>W,4%+waG^kD Op`jO!HUE)--BpLo021r eoC8+=K #|yZI 2 1*f4Y8ud6 g &l*T7)#2TЧm+p ŞR#jŜjxD!F_ZyęP$81h4 DL򇕓.1;a -@QR@w4Ù؉*)j>cvv娾W9G!8hZE_X1EM!2ڎZEɕmf%eQf-k4\,^ >ȄotDc,5G`*NP;U -ir\E3zTpu w祐=>&ms}ME]ß""|6,ssXż#,!|^m}ptC3~ Q=Q!$`Kc<=h_烻6ije{Md'j'|22O2x>]ޮ\ǖ{H@pDP[|T:ݢӦ3:*i3~+mhQe5W!wc{ONjUu`\a+hg[eة?Cs*蠁? %ʣGi He&@:ͫdB@NuhIvdaN`(Dz]Jǿb[cDrWibNS6/pEEGQI0mZnRҠ~e=MWHum?53x8qm2 et?wݟehVd{:jӉlZJZj hF:,xp" "Smcm"b ,8A2F&I15HhQA .VTh0ODmOCm~,ط휑ȶrHȻq5 R&YkeFkU9omg_b!)xa3:S{F$S"2۸+L8Yc:ݤ/QcԦV8Rb'$&O|DZ^8B6%v&ĕ'tQYԐTd+$|nh U2"¯+~OxދB&cF(?F7LjeGjL2m{W%"=DS콐j<"c boI@_y0>"ɦk˰餚?pDVQ:o~}fߣ$ Sv%@$ke> iFWek9Lxp)jWrdeaϟWr[E-h(dxIXt'}0X#tn!Kcf>>^MwWj=wqm%{h/h 6 ?JPD9FL$3ouK1+I$H?L߲wS6F-q A=͇1N$W+Ncw7l i\Z4 /%MԁOR24,x+1VTՍ|Uh-e& )4 3+ѫ̂A3:)FP`꧰}蘎 :7 u`B~YB l6P G7532,Z29.Շ YDO9Ɋ)gl54)hLn&w˳]UG Oو~oLuJ:EuG}6'rk D:J5Ā7X`j/eG3b (7zd]Ҙ>dapu__<ƱKF .GvRب3!e0kюOXD^y.gLk'U+qldEa(yoRr4 Ӑџ?a''U7$̑a9yFmfWiv,گ NeaK.dR4Gεxw?! ":nX(O>V8вPu.X+-2m){A`zz6UjU\oIf.pN*zvt)@˔ynTf=3' Yio>)3צ:9Yvv,{h]s?ɶ p1e5M(  $Mu:ܪ5tS<ѳ^mY`d-SL)v*\|ql@o͏! hA9D( u3ߣ! b)XU?5Y D@~MƢx\f[xgv Uk^Roe +n->Qkw0jn| Ŝk_MpӪyw ZkRS%~J}8E©9hYɐ54TcM{uzneUabO~)"/UeUDMwgӑΧ61z0ФaMRVc6F2x̢ UޱncwG3m2I1yiB`jlBGd5Qu&Z u{ëےչE(F"ɂ{k۝zɻDR$ ܻLmk=7?& oW+rMhLHl>UZ޲⹁թSNԩ드}=4xd ~nM%wl(V[4~ô=w߳IN3)GFt4?;xO479VB`Ԟ"3'QI*l(i?\iKhMI%Ģh/p{#~qRa,;w&QQhër!rzU,&LwF1 O4eDfPQ;P|!KT=UvANcqYϘ DLr^\ɘmbl xHu8F~:$$3*Wgw>ҭ@;cv/w`odd t|jQwj՘-:S Ɨ%&ȓz>a.ߘ|`TaM`Ӯ6mP)>uƾ07bUV]OlLdp~@Nx i"v*j>cT=GY yP6Cnm]"6ޓ:6T9!ȗ¤2jhYnZ&̾t&jW/)=!#"B鍃G[OH2Q2CJr,6T+=e=6e_J! D6DU|g:?Jj)6Yz$qf ayO8@}BwZƸWqEVEjjB?jJ&@eT! 5ݢ't8*v?)Ahb%l#VEڡT{sǻgۄI∛seTG[<vZN8zn>m#,@宎Ul4-tH{`H)KV%)@LTENyVfC_!l9?Nx2A,RD6+aFMrޖLRic')Z0Tu_M #L<,=g U~-枺,&T;QVR?8֖CI4uI,sJ2@~?gd }fUy%偤;%1SpG9}Ї#ZxYmq;/q eAZ\-we2C̗9$ƕH{IR~' ؋Z:Xx_]BH;lؠg+25c~q8mcD=62>(D[}l_>XQjgDK N#VšL;5m\ȋwQٰ[(B`7_ dO*)kM9΄Oesnp U#>:$V<z}Z&^(e ɓQW02͆$].I~Кu],8/ $=2DPrTPfv/gJRzȳ T"l|x Tw P[,sw9;'t}ӥsp.(5}rK ڧ |z7}ME8e,>dwT%4#y $k=#'=QIr" #x*5>GJ@-"ޖcKXyZ#]r uA|2b:rI+kz3&8xфA>ggi1)jS <_)¦ܑ磢^c~`6Ȫ9a=QZt{-I ^Xt'=[8q8:F5u|1 -6{#Th,B6/;+7 BՃ ɔ9& mty4ggѯ&*eLM9BtM~lJo79ʎ{^xNlfSÔ"t 0wH.EK9 yS\_h;-5ul.;GƋSˮI<}vQ-[npS1*}?ث+ 8`r*~UX`4 Dcym+M)RaܮFC?!b&?ڞ4Up}a.O32ZH0ġupv]k-r4Β!nrsXhZ-*Gd8j6D%"a9WsT\v;UpgoUV 'hs8 ůhJ +0%!L[ėe>GLNi?)@5m.FC3|igNn7%Uڠ !0.Gm1H`utEhdxs~ބR YwiP‰L8y)a V*Ǫdr\jnTkXM-2RIk3EAu ]3.₃lɗ]|C +~#uXshA'eL ')bTskv`HC sӋt"oM zLHK!)+_.Trl; \vk%r7E5\mJa}zH>ۘWbBfꋐIJ͕yqJ%gHH7 Џ##3IWiXWO!1X{)mO 9yj:JPbpJ?n5D=_Tڧw&\m 4VFaFwk)ӒWKZ 7礓Ef2Yk`Z\wjLB @9 },'#a~o,: k*oXtjuܩrր^pBT7_fjy+=LC+Ԯ{}-xӞYY$17-9)8>''PzH Tkܪ#ia6@>6v(zVDrM-uBS)ž"$#ECw9՘aeXD$C|3TRؔY(,@5ޱTc13Aqd' ?ѷJo5LQUFSqQn?uv @s%JNĿ*p&0wH'.oGg=N!}"+zRG"_hK yD>(y N3ټ/FCEޱx>Md[}B?,]j#6J _6]x }%ON16Hxf`rwn>qm}gW:o+rnk5B{/ TsL7HR-Ik*ѕU4,$J>vLv+\aw 3O6oGf@,Jc2(X)34k+cep`bk LF%ED0\L +0w#=Q[T^$'r`¾)h"l0Qg͠E*c`X'^lRc~ʘr!k$aWj2]oGR0 词"e^7rr )Nܡ8E\un%޸!VSLlTG'fZm{Ko։Cq4ĚME[R: MJ謐,d#QOLzN H @4^i=D@(=^H+0JӋR"_Y:h'I<&`(pkQsF$(e۱Qhyo,q˚]SćictYb~ WD'BB d ډяh,׺d©G54oQAj/#_.]ҧn9o rRyN< m]ep>%Bg1fkii_[Fƹ߁~ dXo AM Swp7hlq!.=XcIW~z-c)aiTYꀞ"h"8wP(&1& 4Tlum"O\deXdLi!SB2aqjK b &o5=_ Hsk_v{C sTp@-^%^b'iz.$kTѪ}+i[fh9(튣ú3TiH 7n[/1EXeVDekTCGʹ,-h%6vC/]L8%%M(|#Qf 踱6.Kjttd+1R(_|S\z{SwQکN\k~qE9v`w&~o`?Ŗo'܅j,F+PHQS/݊ʰwUٺd5~'ƒ7M"-FgIj昱uڔq8 cV"UN͉в_V}NY1EHd2~B7ʡB{z3,t=d-ATrχ0&ei=ֈ$0>W;)*8 b&#h$׈Eˣ(U*zQ$%(a 2hivG0r^{nGeh&R`͍S_yu͎sZ-b"R`N/Wl4'%9r`2O" vuYqm&s1R(e}SNCm!v<[^3W.'ԟh!r(>&(2G&(vYP>/^n,|5Vݑ4KxtV^L\9Pr7L*3 qM "q.={ P 32 Kqv023zE WA bIav#Ece.X.b'sUh R.~#XcF7Mj˛Lޘh;n=jK`+Q&l~cXe߀n4e0= PR^#x2dtc=[2ֶ 4aC+}grDaA.-. Q LYIfK-",i:E"&A{h'+f<ٰ'G'1IߊM%TR?,gW+/ѮNB.`sAb\z?yzWY#Γ]ke=yRsBUAIyy!\}`80ף(]%\]:)=ɫ>_CQ"eQ(wp4s)ȗNük,p 5(*mVR '>5v0N}̋^pRky="Ӕ!e~Ao}=F-Y3LGRFgZ˰QW:9=N܈Tu靖],sb?/=؟7m`twq*u x~HdkBv9|e{6tN4;Z]K]'{8юg +(e:t"|Xpq>n}; v<Î+̓8H^l>5ZoGVj/l-tKRVvY#=pbd%~2&XR1c!PP`bNn]RRt@SL2J+D e j;GRq$}otȗx_5qnX$Fs0.NOklQ9{\)zaa~ /h_s%Iei5D߂IxZ ߍǚw.hl{RJ1Џe2JH+qcm9Ɇ#S!{Z3ASX}ŧ0R vJ!{HES?Gd{rxfz6|`]|s%"ZjI7)ݲ{N@Ns?U|c5va[Ba62!6a?䯕+=)̬h C* :MŝHdbXyR:c2o6U%&gcQ`].Eec5'^‛r:v-^Kԣp&j#>U^Ok$,XO0#ILrGU3w_H8ր`! ]nju%ެSGqح,<#&z :ة]JȼGIP#oO\Y^Gilqì* PLFO_83)'gfy2KI଑Z!F7Qr=q݆Fd($o=k5Ώ/ jӐan{r`Gد+;7DqSG "8A"gN&'Sgr"ިnQs\"Ȱ`edY gtL)ۀK"݇ɬaG?K֣-;xA}6"r0gixK9Izzz+X|LTcNܺȣ{f7BoYmHF*H=ه-jtyHq "+ZQN&5 p5+)k?z'LrjF:6:tn(PJĶeyjټvh*Еn/A0d6q+OUE)@떡^G!فk2 Xx7 ѧ&1 M؟hG* XX&{+烮-6b0ObdwUD% k?O r+GcuPm/vMFBv1qX UMZ^~9RAk;pn-8 7Id?|cQ`,x\TǬ51[[>Yߙ l}.C^wc6`k0>WS\Z1 > O͕诖/d,:fE@9uQ  X҈e>uK(&Vq\WxOu%r=Fj+ !i)AÜ.-@l]Bn%]h2 'GujBH W@rDB\ry&uor[3ۡUy+Ӛ&f:0TNn߷ċw̕,V3s7'? =ݕMB'Śl(&>½)`qR^MB{<%2dOI){S+C]}~"oiN u2ND'ȚGsfAp =kth`S VI5XylZ=48@T äSI:\DQq2z%όW-uԌ;=3ŧAG7El\: %B,)b_fVS㩩 zp`B)( Eޞ  AvܿSl[l_G}MEc~wLψ AV>R0 ̚J1N#R ,xn/,:+u=#~X6tkErЂY` A\rbj QGW='i?2{6B6zSXb~۫SCN"]h%wP-C)#%LVT'hՃ$ޓ%%{K}@gz0u=x1{B7)|ыR'~À&z;o/I]h ўl+hoYkaяGL?Y%~89h(G- BhNN.l\Oh9Zd6d31ls%} Ƽ 8 gcN;jAtG<(sSE^X*N.#'_YE"ȶM+9OPGѹPk<kKޯŧ BNdWøPȻVG95Qad4GΈg4EC>>t5J4qBzH样9A\o 8s 2C BǙP:u6*5=bV^{:g|{W*to I4|qo{QC -?^֯Yח)Dkf/*4dpJEł(X]+Q43_A,u:-16B@\@ѶC[>ڼKc]L:jug 6mp$ET/=ٺLB6/M.VMg| ĘZ v`Ş}M[ YUj/󕉪[NBkՒLnIj4 EC(쯳9c-QdOH\Qt),K?5acE&\ -1<@EVD yj )%=UAvLpCy2JQ\+D=]뷃j~7spMb()w5/S1&L}<8Q[9jnx+yG) WTBLM zIĨUDy$nnC2e6d֬S}i jkͳa9Ua Ň?ozNm*K !4M._xCPlEPy"m 佁Ҝ@"fCu*}   p= ;yh"φ|yȑ6@͔_I@lu?q&"FݟU}1&[wubfɇ~6j!`uh.@T;|b{4A&ŗ)l'S/L&GO)ݥ˂Es8tczuGƔwPnCiL E_I.j Zd(C+?Yv"ǚ<WJ*4M ̻ PPAbB,#|Z23 ݏ#Fa"MLA E }ܻb?{Mz6%da>w$soUdK-Uk;L+Ԑ "=BЮzd܎o#MlD |_yD-5)R땡^"65i_7O31Ƿ5w/7&YΎdwXz1r3Q#uUɺ_ 1ӯY&4,MfQQ-[%,?<ҙӞL\ٜ!o),ULHX_YSG?S\?)pd;S2[YOwVJ|,w'PB~k_|~{6}PߡIvsg{ŀ 8poǸU~D9& V@[)T  UT~]`tqz pQk-`CVu l'4_xhԂwt5}tzJ%!ZQ&'3qT4K ӗyGv!FH~QǓ|p{ 2x|cW+ND,P6 SVduT^q]qaz`\'9A;U kIG-;wWW-u{Y!_-/etn.Ij*!OWənWطNh<⇪VGԦ(1,?3%.kNUUG QǦO1{u('"aq9"D9l-l#+_X;P@p4`'=/~zZ/ (jZ8u,앣_*#~"BSJK(`uQ2!!UҠGz 8_4;O7 *EsE*V:KXgIvWC5"g"49Ri JkǦf ?/m3VE,!5KeoUplOy@뛦`U{Ƒk#N RLCP䣭@Z1ZlFY}!~,U$\8~pL$~ G~E~BkqqP7zyH8rQLı+|z#󀒣+C+mE` U2D(3fXW#/ITc1oBw8 ml>>stla`Xdf t*q\y[g) @pނ$sѬM; \u lAH:]J[Ra~g_mk =o7.m݄ܡ<LjEV{2;yWیEB#7|(buy.[uvI^>AqЬ,ԪBY%o"h|6}o7f:  µ< H&˖[ad:X t@<8rY|QTHSӞfDfp{R*. Me;0H4P)[D Ꝯ||5}lKvM;Hs`DDoo9&C|ͱs =<.h..C˖tVo=9I,1_ƅ%QN?Pu^)wQ}KaP8ا%<-ȨZ-pֻ8.JF' ,"Ft8#dTf (.ryVO0AKz)~<')8⑄o-Ew0+5~1QR tP'tna7!8 9էsԨV)%H}ORTF?)UwеǛcȌvG)WW3 F[ ̱ 5%h8^pX)O9ڭ〔U0Wy14 b^D51?* WЏ@qX Ƣp꼊4ȊhDnTM?w;]NcFf1b ݢx򝘩Z5,[QO}3@QNnƴa*%t@|yA)_~[\Ƣj(:Czi]oҁ+ENf'0&a]9--WA.,!T|Y 4v6TMV4٩:e⻨fSL$u.%Vy++Z)Sc\2|yY/D,2K7̲ptRH-p#b#myZu+f z9Pj0(U&%\Q Q 'Vy_}r'U@#~J-yk= =,XN߫lzsm-"!59~B3&'"Nz^IjF;.,tntŎ}H]0kX5lUҞms/{C<mwFb_f0ZVfZš C$^;W[D/:A22mX$;!ra:_7n{%s}7f/3mzp˱޵\W3@D`8Q~gc|AUw 9)0ǭ&!eͻnv+^D4 ר!q>P^ c P]&5DY=)YM HݒӞ, Tc%ьvVtNs3̚S77CfGڙGgN͵=S|ܻ"$ ,$S (c$YB3JxqζʕzdYxi]x?9]sZJJEK?AGe}tM~٘+i%|^T٢Q+ML(-?a,&QF-:w+cKJE$AqxWo *$'2mdZCMڋ`FnH8EG %1R=̅3 ѫ OD\̢vrT_ B/f:7 #Ϧ[20- [M 7aå2;8m[Ǵu]q\F;盷N_r} s^f?/R oP |'ɀo픦[D@/auAobFnx_[߸Mk8B֋$T*=W|M@R(?2 o -PQGu?llZZ_)6-ηZٞc{gam m # "Sb(<׬# $0&_gN2"s#A>ZO`!s^U E( ڳ`@^YƠ|Cp=Cl9sk`L7ePQ3,D,y|a듦EYg{¦̛=t-%cJaY사8kB^7raN/Z'bCe$u:ZZŜžL/a&M;69ΟN_ $l3XFr/7ƻ#3?vZ cd%̥t$YK@7>Yv+ifEj$+e+ _sܸy󭙻$;-!~95],qq4q˓6G_hJI{{ n@ rBq~SL@P!D dDot4*o9+:ܲ EBXlJAQeti:JiG׋rfmv;e$'qA}^)󵮵AwG:o,go'uȅ&}USFtAŻ{W-wsǓDLaryQ){V&`l\*?@tƘԫPi0H'M89u؄Jd(   A?iz3E|ƒ`*22/"W/(O*Fer'Y}5bD6W}"Ѝ#L1ׅ@7쏟naw>W)ŤV=(9U3\՞^#˦)jT3w5Q^G;iAJn.^a%J@U2oENEԎ Oṕ*߻ӗ / ,B\K pX Sx$^{'^l鳜 pfmLN:w9sod8 !d܊HWiT2{SGI$WS2A=>Z"!TbOǥ>TÆVd-8lľkhG=5}SM2n PMTS SHkAVV^'|e rJ¨BK/UPAL1yxE\F1F-s.T0a;]MƙVovjbL̿Ѽv\i:$e>'g6ӳ ĔS$uja[?@2{Vq@ɝЫ/)5Y@,R{l74[ @,з˩mUwٖ֭ٚ%~ 63rC(XD}%WRЯŷ?(.?-L9xtזnf+TӗU30)i#Ɛ p14"Fb$$/( nC-C/tՍ`ڠ߉y~~@r.?;Gb|`@1Z.JƯXw(l:~i=U%@{"ʡRR bѵɳ|ɓJZVK>?RjGN4Q4C 5CŖ ^=w"/]1NT2RgYj)!~P L7`ϻKRf+h: C^NcYuqLPe |pfwXuX; Nכb/#NVm +EޡLIY6RgF["`i?ւ+؍ͅbUpVgƪ`jn\Rg<"~n E\`Iυ1@rbNz?; ?uFbM_eN\A=.1&t쉈d6h + ob3\,@OT<њŁ$c_=Ayik8͆*+^ԀY =] K2 fa5VoIG|/BlRnI/kkiՖcm2 z?l8v}\Q~ (r0" BKr-uJ`2$=pEaS&bS1Xgz'ޮ>݆ "D -kb%GN?X[Bvn%2ɺGp3 , h1#d)yIջ<\Wj|Jt|P seO\Y d|zkώ;cJ\],^6{zg/?",53?*ze?sO]BֹkeZn/>%툥J"ꍷa]2A.x~\U>~k-OwgP+LJCKj^!"cDʤr2M, [b" IR@{wʡ!]LbwW=O)6 tO{QF٣%%=@Y6xN^}408UVBQXxĀ>O+l~QMȟl NE\?Ԝg}Δތ um@NAi:$%!SŐ'!ӌam'9GoW03sQb.tHU+_E{%1F݂,]P^J x=W kXK 33|lUa l:,p͆c<]2d0ڀr7'jwيގBuKy c1@P NYT(q!>=]QuHEE:}r"o)1vR0%L$v֧ByaKb`gly2F7mqTtO{s}8xy0A0i|+-*~zϚGa Ȋ 2Ϡ.8]+Q/_V( {D{AfѐJ@[l;+VV#ц2( :}R 6ΫեZ)G@1kyFթa5yx2u#پ8DG,P(ՉN"FWiKnO`0/,:˱= )i@1(wwk;*/.z"ͫ1*{࿺$-Hm )!P\?aL0y(;uL/vX%3YM|ݠ|r&H1B>g$wC!wBKQC7>UYw'Q!e9ʺ l/ϻD8AƐazZWDh`}(ձilL @l 咕QGؐ<˰=} 슐+,r$49 wL ktjpM'?v21tCJkYY-V4ڿ\7ɀ<|)遧.i8\{'X6)aK$b[x+yT[J]QIRY'gG)r=UCN\ttc hX՘X jXb Q۽n~*=c/Kg͑}J7A;7}C/da33(5G/%(ʒkkO^TIn3RuQ521[Tc'wu;T'„6{]$vsrXëI etBFy焕 J8ҳ_Q#z5>zW.ǎ¾D`'KТN# cƩhkB teQ葰~e/jcx1lnB,S1hq#mVݥR)BDQ8? |Lfkz99ߝg@^{ysl F#@yHb_wq#bi|T]ͫ;[)Zn[ex3%iȆ]mn=i\k‚N4DLG`2خ +n*+PVf}+8WV_==O0>d|!u0R|u y h"sG۵#]`]Mn~yDB*.Ju_ƴւ,\.jї־b\8P6cA>6V'Ny~ߌf97k,lV$;Vq^SӇOtGnA<;Eܺ ٻ }C涝|lܤY@piS,Ogct$\ ,Ԣ ^bliiCy'5A}xf/_పh}'նJ 8zAMNRNye'lӥ5;54ar"CRá7Ag9tќ&՗H&DiAk[y]vIȪCqxϺ|Іx|-xںy(YbK欰,vLgD\a,HЉ;C ވ:eQa(90'Rՠ2h *90m%jEN;|Kpdc|Qtr6dwNE]ufQF˞43KvKɹ4$gBB'k5wծ[ |Q$Z/ڕZwt^6ۙ.w3jg):Aӓ#]I?͈d0׎8M9 GPbHr?ap9[VK%_Yj.Eq6`ic~FW;SbD_>C*/vd9BG@ʘA|s+rְyaw{'l 轍I-$0؉'e$*ljH35,j$,/87PlS Fg_߲7#Y!Ii{Q ل9<7W$\W̸'HVqnV;EK D4!Z[k+xAI}#ڬ)!9Ue,ݮYkl*Ċs㉧]f@R*# SiQE;V m4,(˜` d3=llrg;u',NmUמng@Yiz VJĥ FMN{C0kaKѕXF=@$FװNkIϖ=4Ԙk.5T [ Է4 dvF"cNbzFnS?"Pa|HNGGBXz[j}eEgQ'E`!f"mFV\+4wRwjPDjWk4?u?Oa" Y'AjE ̿lpТYe:]^ 3]fnvP5iJ?5]߂ RqmѸ~uXP1D v2'?r/ڧG;l% B9*.հdx̼1x Zj-w!GHۉHéuCOVf.6>FY9cWMЦMrX[Bi)8E8],- #|UA{Q@7fcNJPɠ ?|+? q3r/TD`zg6 7+>W2{edN05cX>T7[Veqm<=Ҁ=Зcq?Nio^HoA2Cn,EL L򞳟'kTi-~DK9-#ا2SG!\ms^w&HB󴞷۠nGL3Xskc 2fɢ˂8ҕF- ='*iG}Ì?(DZX>Ce8rrs6&AͅdH[t|(]?UC6,Tx٢Di eK4gyݵlOΜcW,CLێ E\6\bCO3 x~}=i߶#+}ٟy2(lXiw0C<3?hc# OH"kj<宐Ho3v?jI<963Y[oZNp@ahzz=?lwo<$JNޢHls@d7x=RrϽ4߇\_=\jĆD/6N׳1F=0DOvRak0KCIj>I꼺uڎ:hsrJ.f޶`ܚHwف U|%+{Uivbepإuף&S ڰ+0SʉQwJ(C/Za1md'`hҿ<ŇU||bXI)zq7dEf(2ɹiRMya>,N Cm-ˢMɅҩꀤO&lk!Kن]`F.ƍv&!YP-e}X[~JMn9> P)[̕O[d{V%8ًV>^_;g.3[%w7rL\I1e$Pҝ/[yFq^luC%y{4CWiTF! iۗN Q#!MW.Pue6op'0;7ˈrag3K*Z4n.# >$"z/NXȽytZ0`Y `SB^MJYK]vhK.Q%2>)vD/n+N7rU3CU_qdD-g~p.M./YS[/E wQ70Kא4*s9sB#'"D4޺cD/GF uWyCHܤ⚩kHav~/޺M 6xȵ$*WMaP\ :Y Ycޜ-u·JA cӵSoUAt,|?*mAI .eL~K{6Aܞ:照{daZlrV,zOmx۱HdD>* _u+~ڕbJ miQ072m43jz8p&41E[m2 ^Z)(5=﫦Ε+1Wφ;M[uIFf;Lp)HP])ro__~3]_OiEybbÍ}pVOjjf²&4 D[^CH@b\&!VU7'j{ G Ո= (O%7cϕG*㝰:pgS,.xաKzAkI|!t")fݤ "Ȁ'71[JY/$q^`gF5 y{P̪B:> &E(wC-u(xMc@ADywl*Bp5Uh=ΩE`̛pRљH$9W;4톎-A8^ 4WLx;ſR-K M͌% {Nw MDJ$^\0{h\&$~,/N>ۖ0PV]Y,ϖ/bM[jRNט7n ͓iQ4RxL(aA:s<.OWJF@C7U8׎!,72ZJwѬT( ڥ=RZS\#G%,=O|N-~Yȷ&eWG9gO0ax;8Wc_4n̷"pI|E$QnNq`g3܅TeP*C=ac(ר  yusFMLDlzﹲVr-\F#¢r%7>2pn|:AO~x(QZyC4ݝUһOn;ÿ Rb/U9Ocz]¶&;*л.H%jH\$^e#6`RwRE5>v5j SgC +kGm"_|K"f]]W;-nTns}]H<p I_WBPZӣzކSH{n qbL5مax]g6"FHW=)>3DI|eHM8 ߖf V8u?_%ϴNƁa%gm;4e= Fx ,LMb rBzXAp| R.l1X$*{Sbbb =OQOjE |P,;i~y"y̸Xkq6g= 'T[DyqB m-e :`$ӗcjF8 Rժ`{ c#6TA+y(+O /YaPoo48?I*ԍ-õø}NoAI<&݁.e~z،+EC^ה\1m^)%؟{n{q[! eD,h$Zf/SSie1 a5W0vh]ZK ́foY2P"!c{Pxtθ ( VX,&ޟYSwnX\sV1xc YQF:ռ.im x/<'څ3݄L$:֒M2AZM5E~jɰ\Fs~K}ʩ^Z /XH_uM-0){J^P i@eGTZ%Wal~'C&ʙ}æMgrN[N 1ilj$-r84Y<ڮ s}^<)LEu:ф"M'vXKL tTôdX{8.?'^C"D2G3(9YMH1\%f7Z{ԗ59%TFU-y5E֍`nYDTFU#T'R -QJgՊO{u nM3Y? 3,HuJ/w5䛥v1#e zF.cك.R ^5ϭ&LZgk}x \]yæX< {p1GCTvj2+ >ԡuB.BaOchVu ZrV?mQ $ՃP~)`(6޼F>dΓ%>E:@v<0}C :[q-RtZi\Q.\xNhZl-s|:n9IxM!geo~. R+TG[ܒ I|i7/JJ%b ڐŵʇ#XHM}Tłi:]W ˋfzXW+cߚ٨[xWZ(w8yM q} >.zѷ~U-Dd\ ㇀iȊA!2E֮$54my Yڢ'T-lԱk1g %R+vrVC@:Ow3cH>8f]ڷCu|lg5bsmX0Sµ3 M'F'h *T#pEV6GkaA]|{]RZ.<*X8M(b|lqkm"(4-SPfx.arz{++yÁݨRk+,^孒.'J]aYcӨ;K*?4ĝDcy*=.Lx *-kk0ʯu>yfF?(ؔ+!8cNEZ}1]sCZ C)I?1q;cq<E`(AV: Xz^7Nn KFTc牰,j:8k$֨[B5En26z槍XWİ pЂ &Rʇ)Р~lRYV#?ٹT*I/it$IS?fϼ HxB *T{T֑=] ͸E *U1$c_ h)S}/'DM',(臆(]̈́ 8$vBvk] o#W[UZ.j5+X rTL_DIT1.JCBw#_#( \nϒT DRFM ,@C9WVw*"y2Ĉ%?F5wk#eo7W_ q_U?kbW~5񊯄 j|ba:PY{E`HL oyr!>x A/)^:\$)YOc$  yjeZ1zGZ*B{<> N|fGBllI0OqMv$%{˒~e4kGc$UZ"R)E uN9n<,U5Z`hmmԳ.(ɆzŠ)e}hKE\ >-#?ٶy{Uf8%{{*E5>ϰHLF⃵ݾ΃~Z_C*`* 2%&MUv#TJH o wh8X7?L-R[`F m:95IPئ[1ùɣӡ㝧ANP1Ɨ#752w ܥh7Iʬ ~Bn7vF2IpvӍSZ7fǀ/^ ^Dz w@1=鶦hF 8Mr6Wc/PD0G_OR (Pg,\++:4h2| gfJ3?"c{52~T+R<9O |ԵFQyk8v`oBx 9xH!M?:>ȕM|͎i\8v̸uŠ,%̎Pg*@92:"QɬPGN|`wWVytݳ;.E6+d{fZxĂh:'`+0+& S`C3U* q B >!zg:R6WSctz-mq5 !YX{{\F BI4NT2V4ΑjHdrw9N3Z6-mz8|:&[Y8{B&Ӑ p?M/tFFw}d. Ŏ@?Nd7e#Ѱɺ;)*u+"SQhS$xR;xU kA%}D$@=Fn<%JgЉ&x)߿TZ:P66nYjc:ٗڏԁY Od~=0 U-)S-.*{z^+pʸd)-W8M=vm4&hIIM1!\_Y_^MF%ܞ`d#{n$^)StFF[g@N"t?T eBw/}Qل6%afcF)g‘\cV$ ˀ 6*vţ*ow`6_6=)ڲ5QPV۝E&&=G~_&GWKmB)>.nevȞYt ºW )d$`Hds ;U.8ܚu3;vxa6ܠВ(6wmz6ٮ-jȎm>A 5n"*m41EЁ1 e))ةՎ(_#a֬q=YΈ63勫֖ e _N'"j9#0.Ԙ#S! \- NJe*7W%_٫n療R0nVjensR'JWGR; Q}@Nbn>ǶPSO1:7NiFF<ܩkc|%bʀ)^,$щyP=BRJ Ra&"?(谹0ᘬ`ʍM,aUޚ||EuQsYzf;H;x9tpXn&&eB`9FF[ƽ?.1llf_YzW0Ą͑QxWHH9˽Ȝ2], 9eW$ҟ`z)Ƙ&L[>*^1P7DH9'=kܐpe+1OT_6\u"!Ǥj{ys`%Bbǩ3 i wف~K`U(9hRxd3'[&rۼ<9v"}]ƥW;tEhӟ# r6oHS.TPsM hiAcy q$+0TgYc91KPgtMn;5W]FJ>1݋e|ڵiǗdΕSø#:nGFA G7VbuOE' |?IZӀ D|_Qfǘ,&~4OU:w[}_Ѣl*:e3%4/ωIDG1Mӱf}YU.y [KyfIP?4:9x5vȮW?v(E?T6746+*4o|pe5/V2!dtD::GG^n}naPHc0hymtQEvۿ9_b7x*.Lx~vY=^!v-9AMT819rǾ*eʯVRv~H"!9F٧l. hȞ¢v{UM43|KӆDbribV w zZ;;d!) |Qli> miQ2i0u ޷3MS\;П;%y7/dE|e/ud< ej-杂5-k*U_HCf rٍK!=UtwwqMS[J2MM?ғ7`Y;|3G9?E"kBalQզSn+4VЗ}tʟmh'K1}Xʔu !^np`_%|A 9xu처ן 3).dJ[9Lja^QES;߼Uo<-g^Q"<ۧND>TR\Cu.a38{O. @G]h0GpAkTU04K;]^|#gQb켢$G Pu2+WZsK}A2oP +8NPϜ`-pMcE͋yh77g&a*!wzvA8` gѧтE4|8R2SyBDC@/ѯ8; %=o? CNQyZhX *` *;y*Ɠq%;vqC,MR:6f%8xtll [)#tLoTŔl1^=(| 7Ecc1[|drQ@8ŢJf3,_Äǯ/a"K;^Ȩ**m~@ .TIBϩ hŹi.o2,`H@]~:V@5@_7CQPP=4(bu6]TU2z\1 ԓjH}oZ Xt؜!$hXESByc/?"uBº O6+._g!#PGfP3<{-):OiTzߡ>SlEb= #c70ŠDP"(d7~Y OJnI-"S1,D=SD.Zoz2' #k=*wWt5nVys#`K1tYXجM횶k8ͰÈ없_1X 8_e||h&!XaCZQ 0*RGDNd=R:Ԣs9BF0V! 2 p7YU bsUt췞D\y39o'/i~,rE+^V@:>K֫pn UtBb ?;ޙ\z2.V o*`8AFfm4췘ĐYJ$jX||)Bʕg@ Bc4>/PnE=AmZs? k1IҼc# ׌+`;cd+f! |#X^V~qMxP5袂ʸbӵy:vA͝8}u;̹\BqigE'x'S҉9&DQ|4uϑF9~r ̴Sbql[< 4.v5d3 D,8Ȿp(tþz>T^3=/]qByեŃMYv`!BW[fO)SA]-dFIPs E*W5Ml`XHBԒO!m}^X`,}-VS&N,n_B 0fsm5׶Gspdtq=aˀ\8^ajM:\q'}htziF3:pfcC(1eioNRɇ:.& [R/K{uu Z@3]/TO=7`yYD6q7FrEƛkHB5jIMܻƷI?q3j/6nUߋHeDIDA[jXhNY#"l'8EHPS9kkf\h\B> U>/럠ӅYB~YK~)TJx蚖9q},;mfZZ6) ac#GӶ6 &uUfUfeRoe3atHNFEi))I|WI`߆6߽eQG4ӆY H ikKVf}#t𣿘R]fW;p.@>C:їJ ~bt0Tѕ(6e'EEhll6vM3d+T.. YRS|`)~ 4Uk4-*xy\GK_p,uïPmeDf\eE?">`nOcY$WEӸ%hk3K=ZEqm-GmtB6t.L Z7 \ r,iMڏ |e.?/"&R:w*@l;TțdՆӰr`- "4Ql\iA?^_zD8WVz6j?5R0|͝=Ľ2`c᧕xx*U_(RREo| l,9Tnѿa3 }]XEwe xꕛaqc&Yn4:Bn-uywG퇧R$9{ eGdsr]055^݉V1}TZ/[#xA$ă1ݔTU "8ivٝy6F $ Ai :ao^5nd;`BY۽SIz뢨h0(x6I}<܄脹 |-9pbŕ+B<)hM`aR_F-N?QAv'T Xx*:a/t4zZG_LsQqOHiӪc >,,$l1r<._h,#kGdA:E$HHZ 4MK CJ-B+.aF1 q AوIyo䟩]g p+@K,ܭUcҐrz`|Y5 }kLcX}&@JbqwqM3(Lb ް˚tJƩU|FFE3w *FOvuAڇxjTo0 AG?[hh ₛuw1!,"$͒`BfdӤZjtOZXTx?@)r mdqJ(+2d`W[ǬJy.}I j4e3vP^3߇T PmH/4YtK, XpK{13e5a٩sa8#2ijYsH~tOᜅ5zlO[B#"z]{08"d{mPѦLĻ[pNDB"vRd'1cwZƠc!҈(lbb+`v 8l%p/)KJwbwI U&/d@g&so ɪ`"@|eH6Юjq7ABv&&ed8~V?i F p k 9B? 䄣mўLнof;?Cc<3Ѐ"\MP[-%_FxMVђZPy5 neܴq+i {EcѻX|؞pvy%p#sj q݇ߪS6N_x^E3UA3IBWz6[LFY$pyWB xV̲55JJv(tx.?AʨzLy/7 aep[NpGۻLDgʓ~a8@\@4݇/24?\`aLl.jKl]P+D:eቤ\9`Bl9[Qo.R#c*0>mxat\49C#ck՘K9JZK`p@Iuqkڋq.>ΞOZ.JV4C$"p)Η._T"s&!BF{!CHo,+e6>pKZ;GuQ}N2,D.Er BV5Ox{Ӎwy534#oǍ5l Zfa?KϪCEy>w\"?NQݗK#YlHdoY/֔W oD{Apn㵿o3Pޅ=>E2ihC >[1"pXg =ᖁMIa7uƘlVHXqHҸ|Z&\?46|𿔉CTyw JXq:h@ө۴2 /4XMdq(}h%T4={piã@2uH"x> eEw M8ޜۿh>4&$tϴuSihVS1Mfk 3n&!26h(3K3hqEY cpƒZe{I)_LDYS3:T867t1;ҫenE^Oai86L~;:?3B)wQPt6f(ME[)CvpS,G#۪cYRٞh*~!$!"*-Er|,u2?lGe/vfK-4Mem (2s8ڽ Cx#ϢxV(uSD{ku&_ij!gw~~AZ`;I򑕯s` rx?Լ| -($$Wɐt^p @*!7gO# "? uR y ^Tj~0SoUKªt8)i:+iHg/kkSDeXq" vuQbkB75Pȸ`(^l\v1Dv z61|KeƩW3D?h>sqT6A{ EW +m,wk]Mb6| gJ;N2؉([%/DE.[yɍۋ a:(xYOq{^_Ʃa8~T5eMj$*uD\iiNȝ"ZI%厉\DU#pYY=/q42Vh%'q+ehf0oMջ 1ͼj$Z+"*5vȞ*wnf#x'ٓ kGCGƖFgcfgʜ0H{ j^.xZ5<`H7lru! Iq\e$,eQEwtJ4W xEfJ 7彴إ] aMVİ25vT/k =gtc`ނ))M~+% >½^$x=Џp-6xVA=`t+U7P}EF6,lN e? _݁MdFeE\QCH\'0ϥ#zo Ģ6 C\{g®)y?R xf)d}=Pe[*_x 6ξi&%xSU?~'`j(Qh y"чT$㰂~~uH|Uj:u2J6_Ut0N>DsrTF6Kp=u+;Yqx6KMx 2rT!Z$wO%ZDE[Xq]um<ġ 2Ğr)qB `kp3h`=Wn/ØZcRI='DxɢGg}Jϵ L8=D*(p~PST>b}ǣT(wzh$\¢a%cl MЏܷ4LNu?YTϪM[- baʈo>͓0iH>)v#{p[ DܝrBb[P뻫O1Fj *ahWGoarbQbm, 5j4mU&]N}¢wD^_rTxvaiD"_a$z:IK2$Xz? ̾rےE8XA3U9 dfQj͆g &*洖i꯷lz2ez $+R|`Ώe QTqBȎ+PqCϺM6#+dj@c(hM}0 TE*-J tWeotMV 4VdVrub <_5 6@$S.VOmK$'fCT>ECm#G{`'P}x97G,.G?9y{t {ԶM-3|'XBEAdAm.U ߱@3 yWI`R62V=\@A<8p (R([DLW:ED3#WXgSig9~Q=6uEO^5\#~^ s'b$_щ[S&a]MzM<k5V)~w1Xk}SZ-ʾN:>~U(#[/߯)BܽNAʅ6A)ʈ$Rp@3yrK yTUsS9c1j ђB|>EQcGM {i0cZ)rRHn4?$[=ᨕ[a#˗ %?hi7ptw-DBb@k#/DG8rN9Pkps; ,)#˕PuO$,?=+Lٻ LHuǢf4{H]q}Oh.iQ G8Z_|װn&5kA,nм(^W%sdcg\_PC7 RGC (dC`A~FZ1Qu+wNE[XgO?K4R:jorprMsJ|ױ$1kA ?x2̈Ud8;+ۯE7q=58[{m'!'}z @az/H*J0D=#,F5dDL>"a#aEFMw ^}?`^%nӓ%6wm0I+jnsu'kgTlw[Fi.jJ&*^3wݗAP.N;o]5G7\%.?mI7 ІdL;;ܖ=f۸3)} P)of,Œ{h%=k թAFp/Y%]h#(hsHւfb ~4⇣in 58 =-5^vfێ-cwP&S9>T_qoGCgtIu229[5  @oO'[3'zRDvm|R$: XZ|]γHO*p\+)yP |g9Ʉ%7hvc)(좀=~O7'w^W8Mk$3x3x"H$oQЏKnPǗ売`L"Udhp5wuh("g{{e?nӋ8{\]%޽fZ_e,.#G$:-34Uq8YF #C@ #`20mWp誔%ȁjOAQ$נ^LZ]})LT}adϱJ#s_MK/ɻf;SoYݩ=AM(1NbW>3՟UJ6HI?Kׁ#UFsTd)UkGy{˹hˍL^V?}\4V)"ٿPMgUyA 򓥅C *vJdEv)AkvEh"HSCZy4`,EQazg,AЊ|z/0q c %4~ΕĿ9!|C:PGMTpYjf\>#Q7͞&cpHDyj,Lr=>7˦}1'18$en⦚!GBnj?s Yx#k Lx=5Wfq~yߚ+zI).\J$ZM*j'2LӿX-jzX-CjG]wO[ 26fyJ,$tqUCf1" ϟb$a aD 1jڢ:T3 qS,y)wh9\X_ƛo%b4Kbc3GIf;TjbX8pĻD/436}u- ؛;spA^7Sm&t+nrCu6I@+LNv XKKڮjN'k@)9%HF8<@Mos trk;u䷃tS? V]{TqR}'FtB"fVٜPQ}Ī ]J 7wƫ? ⶤZK`*c$zu \; jH5ɐ?*0<-Ο2/ Ec3jkR>G}akAr5\:j MZeI pΨFV$,}=L4MmʁI̶hV-NFA!F4Pyql7gn:-å]vvq kh`0qf7~DoL6` > +$T,C!+~s@޹>Gg8`4=z`}tTwՖ*3_/{s ^0}ҳԪK o{`Ӫz dTW:t[}0Z͋o$(9CGe;}.%yhր6@X$C]ĶÜ+j4w/4P$uUS[R0er#[C@!̣3xg k ?qQ-9?>Xm11M^_alwB4M=Djx's|άβIlcD9klIv(ugZsxqcAYT~Dش <@TTf۲Sݚ~_?)TGL7QP? l er:𖯏'2%,kmiu +?4n QͲ 8ƈEM+gf#DW'5%f\PN`s,}Anۘ0MLnRmiM`\F9t9UJjbƱ,ݙ4Dsw2A[9&e KZIbdJKist vV2 _HCe@;ۑO پ!N֠Riq^1JpΌg8,cA}o &ه~T[@iK3?l3ofV 梈8ߑE {2VYcl4]E/1-3 r1Y|=R(pJ'rs#tRq2k먻*7q;$37/iNE #(ڼ}"2Y|hDZJ" izP~Z b0^]O!©^/ftdF!sq$`i$E5ȄkBֻ[TN4zFޟחs^YQ쑋iSΖwl(>e"+lG ?C^oDriVdV1fHb3rZܘ[m^5mlrH] :oB!t_QwÄ"e)I ĭ@^UNextMno|n+ J8m^Eu##VQ}FNf/sGj7`_޼q˷7vw@trh݂{؝|SP8oZ Ol `3a@w#"xN'vCԫ;dX}V:/GAݱBzqG@P< \?k' ѧ.d8`.]ҽ1Kj}A k`-;Q:~am ?U2ߕ׈Z[ ~9|H`ANǜ pS?U[rK敏dТHTCsPшlCuԚzGez"HPfqZ$)|-Ph3)4*4L>m}"8d(DZMXǕ>73=ԉVeg h-eK72; 㥬ؼ8,yvdE/ί=^0FŰG/ hlՃ1YL#"N.VHinז`s%q"6Ԟ(g zuO3f㜯hGILrWK߳1ɟc Ff)ǁ|I9*m9-P4:njtGT`P1A)Gǥ%@aB=SOց|F`I/7g*ʵN}c53ζ kz_[maRI#TG2~͸4aԹKWIF~ ۣr]:F1w-.Rq%3gEyHΖquf3aCvdTn_㳄z„F "Rm{ˈ_J `e.)V_^_G>E`Ix_; Dд+芿Z q" D*?wt07f%߱q\vfwծ$`t8! J%lF6$J3,=A"[^{%}60I\ $?\PU"n{L"/C h C౓#g_seщl 3Q9uYP.C>6nfLc#K9txKWQCFQh]*EP)qGC8]]OBӳ04%v*uд8xgr,8͸= I.A_ ( &+@{CG"őPsrz[ךkQlU͉Ob"_ a\y3bhª_JhJ6j'*ψ*\|y'緢e1wl;˥Bp4uj[nE38k|-wcᮏXXiRq';αK.p TZ2Meo xR/#~V80$4ЦoݸH@|B܈LYzy uHcd}F[C>C8o!uHoWZ3L?|E1oN:-|drp'O5hz0EfY36A拽$T4Fc f`;(¥,IL[yԎv9KkO@ݗ=I%+ 9'WAR4^{9% y5g ,DV-ɿaAjШ4JxwHUl±«ϭJ=!VcH7@L|;$e(|-s<.5'}/k k$jhKYb>6X~Qe?&a;^bhd+`O`Vjx3/r5*WDAJz ;0wbAOh3!4+9$y n:O1ZC$6!d]FGLO 9 %A_FEܩg6V|$莟YKs`T#Z_K& #k~hC\n*lbȼ0Y]!_\پx+Y{"?,ڗNPEƖ&?a/tSn?9mԺ wBӚxJъZAC@untasvxSb2\.k[f f<$ʝ0u@ XrJ#-Uu G}톝]"TOUl@2.OGL+Uomq^Y܄4E-ƺ\uOǻyίBC~eY0`BG#QNi"=;k?hqc@]є޿; R~S=#b>:_gOQ<R /q@c)͢ Zƛ-hg(QB=ӨuU-E"Eɯ3lע!9\66ͷӰή.(8':]:(ko,WՇTaU~e_ЀG?{X4?4>*#m3~6+}8# -2m֏c#Gut@qq]'aou]\+ObۦC.5(?+AcɊU9ch 5m,I9 dɕ?%%Vݔ_VH%o%C$ N]]~7Mw PEQE ^"49vqtL*k!Z[z)pv{Ku0XFY)U2m!#| G7t+F=Vrn'&"i.fb$3XG*,V.Ũ MmEUjx6sd@#'E6^ Rȭ h'JIyA3Ѥq ҝQ'7_+\W,>o͈vO;nkH DU<@?^\r"dR f? KM cP.Fh%I|= \J:lIW45\;>UJ 1mKT5Haz)rN-6Ig׭Wg i، <7lhˬ)MB4U_kgl\uA] 16,@ s)}Tj`f:mMM0}tO&乌<-94e0%&šL KkSkі#Ci[MKo2+׶f SaPa]W~P!hpwqc?eCEXbm+7miEOf?RAZ"l;.qK˅9IKIVK]'O DF@+dur.Fd|ҩ$k'e`9 d,M *!C\U ȭV"`Sq}A(w]6eK'Bz`U`I^j͗HD1iqtPTOrK2B*IY:OL CH$w[/;LBn;$wGMs-YoTB<7;€ӄտ؝r`ؘ|Ma)DD5١nUyh2)1vR"6g+ϣO%ysn,%cX mYy\+t$H-DwnWX.x3$?Å"܎Wq)nᛆHuq-݇U g@Z=_AtmDver2(K:9Q&S!G7ۯ :lu]7zaݨ::8m~-dh^)2B!Ikln,(xٔ-0 hO#JHY8 }S ,F1+q+_4knyFt\'eB 6t'']Dg}l6O@!rurXE߹f>slI&oM"ؐUYJP(D\乭mB=w[p')thBSg>ʶQ(Oʹst(].}zrnE#kS އ- %݌ p.KOܽiVѥ=:Bh'Vp B͜ߖVx-#%,M}&"ig>qWK5fk`ʌjɖlMO"^]'X$΅3V`^X&w| Uӎ`Hegß=0=A)hu,`l$,?T?6%#L;ʐ YZ])OtB'3Q_ئ"hg? u{܁շEU7_mrv] Up{9[x'kRNmˑt] ͡F fEZ?zDs2z];pV.fXx }%`֛'^v 5T,D,ȊrϾj0ajy*6~,ikN?$>S|2|^7p 0Gp sEl|^[k͸)0 Ԉʬ^ Wk|&X:F!t? 98P4!iC+)S&!(f#xs)?lbdvZ]@^pOՁD굋a10vMe0L#\ʏ[8qr'a<}!woL h6V"`{,"X "ypP|k \^s0FMI);@$B$ңPF+BTP?/գqpz@*AcJ"j xV'B /~j~?~.е4|9}\5FA5) #cL.SfnaM ?E긡Eud 6Y2@΃IߞR|uSYj8ٍ~j c'l(+=S2I6@Zp [sL d|kr.BN,yfv_󚵙U^e;ν;rN]xD]R0UGbWh~s^iyH=DO+ՇmYs:fLg[Xhzre+1̥%Aəf:0|Hs`"-`0r5{Rso>.wl*Bm.(懽U~R&O<vW"9EGnT3Irme{k>sgF"~Q-"~}eA1{2_?o-As5cΞ5#0qC$E>)[S#mNeTxgHe:Z|0V5łZc ;ZJx="~ӨÇ JnvMT{G2h!Z5a,]'QVTZ9kL 3PiM\_v_Ndc߹;<ߏySKI`S2mn;N=l4|@q u9fŗY ٴow ?#;V̴izn tXYs]Ṱ&Y`8 k/Bߚז[R̗9Ku*q pxEVfH~iQpdcdat(2'|roUNj8ҫˈ4{̺x# 32! @/B_L›A8FKhc!|B{8cE 4bsF"4>P]m{dd,qtE:/~ JixI֜9偿ڣMt gTl.Cgݯ`0|n7u{ksuN5y?P& 8f[4o{tscC=wj*ةө1I[]+SoY :u=;n Kh2N]H0ZOb;- hi^bIhaQ| kfhlk@7䂊LtM^4X_;zvhVI]˴Nϻ^PB"Mfg0l}$E a GÅh^j= ekљl18kX| 8ڋ^^UW 47ÄGf Z}!>ߐBLWjW5qPK`Wx5e~kZ@J˯~QA4ۖ/-ȼθG/(5*W,K4pP5h?(ꃲHw|o7 TsnC8Sh Z:P3brk2x/dxZ[3J%kxzx?XmrDvΝ#TsTb>]y\}yJt[9\}EgbJZe =<3AJP~l.0EcJDǺdV@ᇫ8)L]sڤS섟%n871ϷKmL r3$Zvw1Vbҹm~өͺJI7u%ԯnp")fAF#t^ehѕ mov&{DBA4׷hF$anP䅦sdZL4? 9~\afl `Tn= :٩X3 A$ͣ|dL]hv.5gOUdO_.J7R_P7H64`t۸O~! 9ٰu]6d^u(Xq-9'>4#B,uy.tV•nzׄE1˝&_GVno `q97'Qߩ$:}^~$ c~{}QAT}.{k4̊xG%J ɍ#G6uQ/P!><]wNj?cC'pb`+4>Ս9u kWq!1S^T1TqUd;GYəhp6U:w[:r׏p7i2iV(-^zC>ަYw}ߜP[qb1R-ׯL tnF'7С%Qxt = rd&-o-zm*/l5b.N|[-G:cʐYps<7q}'Kk..lLgC@> _LT?|Y37ՓJc(?!{"qɡa|15Rc,|nr{nb_'Ö,ĵ-JQWF%!%'6*..9oD3_ωW1!KtYʽL8 1wd*9B9||´ ΌOA99Ɛ+펋ԘY24 ^Z[ӊYk9>PZ]˸N4- WbF+ȓ71R42cN |_ wCͩ~m$w8x9V?)nhRy}-xv:gSorρ0Pm֘ E)6oD6"o؃-!ã0'#.Vc*2eOIxO~]< 'DwQY(WߤdDފ_9C[f# EV^xˏ( 7kCƚ!FdmYS n1p X̓tCKWVgIFBzk%iǐ1Ͽ!cX &V~#ge G4 'esGz.eEsMAqIH1Ӱ"ꮪo2nN8; W;`?k߼-fמǩP 9R8!4Wg%%%̥]*Qg@f dV vNPTg lDid*(ܥam ,  &o  =lz3FVf taGX쨳0pD|=[ p.;p L#SS\4,0]mn]m7qܔ^*@L(ڽ|2H ~*{䟳Z⹐u^ mDHr8OKI~cq֔ fU y͍p~7'3_yd1Y 3l˖ >XWT':8M!Fsv >#") kvBiȋ׹JxC Mvphw2|ߨAUGgpC[B5DO](|tY=\{wFb0?9kjrqsZ$8Y^5ϰzY\" hV%sxZ~D ԎF]C 䮒ށ,wrVhB;܁aNYɛkj~9ވ%oAS& uH_} 6c,`?N6IcSͫyI!));KywhpN'N|$ILzc:S r t󭑠Vv˳P_ꄷ\ǖ*O7"dGp8 ! k5#.z AYwARA9cq_)ίZ|Ahdw<9Z8->K:mXSm%+5vUX*xu՚F&f*C3]K y!C8Z]ox͊V/FP}| ֻ1RjO2aT*N"{Dqخ7dpd3Yjn TxlJ;#IJyх@%9=_?:(')p]V1r.>UҒ=2wS O|U,b;OyH7? Zfa#*6PW$y5K)efFi !ބQsn1#3/,_O?ɡ7E6uY%)HYuGa>' #L]LЄTT2Rz(OBZ9Q.w6€7_tϓ*F$Oos,i b3Kd/3ogIiz,7px+eud;*_Vn>LPX%MO:Fs7 +v.zwob+ 1׹'rJ (=M޶< se+ Q11yI9{nZ؞DqD*Du;*smSQD'la%O R]?A 5 ^Ifnr]v$EJ stȈٜo9p0b},Hi$ѯ+j- ud o);©%a4\~ "Oj1(J"`n9RGj$/aOBN]7$(w,Mљ/yUZw9o8k&2$D]Y._YR^gAٗ5"<`S3 Dpd[xP>;iW;_:z7&<4m@# F,i1kb (Ux$KE c6مL8Y}<|ubA6|G_*.[<xg83]ǟ\4ņ |f6JWpjMcjHuS ;|#{MB)g}ӑ^hɁ-4bUZtl{,]⪒n0>c{*P 3y.P),û,![ȕ ;g FΞEF'h( 71o4;ewWS 09;sjFEB1y~EB(^XG9Ь&:n2 ٔТZB[ B<|zDzb`@]4ɶ"5]^ "])>6" ~. "vz:e巊~1(3rp1{,j^I"ͶE68B|3z Jo9%oAXH3ܨGM067K6 s31U' %?&b$ AW{/ʋt)= H!50Ś[$)xjO:"0H'bAߓh(ϸi%yo+&FzLʼnPYMSAS̘SPvH-K݉ o)ӗp+]LK* nQ3 ,Z-l5A1 5öđh5iKHMMFtۀ7E{S> 1l1cܶ. xߦ9~Y=ӷL/ӔDr D(/R>ף8HPl(J^)[ _N)p@"i F.ͤ|}Zmw9hp(\7g[]DF=(JX p5+ܜ؆F5K⯭7]x \)|H+~/R!ܖ\2ւ݂e4zbnV}Q34RIU7no~c "+m~I]~ưJXlȉI Ѫ8WU) =8HsXoP<5NR^.) Pv8NҡXu`mnf #uО&I_CN'yl!9qa"n"fȊ ٙr" jb ?P+ޛ2cOf SB`>H6~t"[ʋP7[ }LJH=Nkҫ7{Wڊ Pp`iHc0Q?ESq4ܑyBسs ywJz^'e=PQ;cep8ƒߧ2mTh %X4vs򰨶XYژ d 䊡sd9 BDENnw ԠRQ3~G) 9B KUo`|zyȊ;Yzdewn6v;꜃O(8'HBp\K'HC9'di]* 5|FOW@[G+ brCȹI<Ѥ2vV t\:&n&|q fw9+x}&"y]:u#,CIBpB}TT\V.k7S7b GYp ?od˴7#QI]HoH`A LT6 +B/G3H/O5qɚf!zT"^iH¿SتfwoR%>$:|/}>u 71FK!?+4'w|E63Gy/@)ա)ː(FKk*&1 ?tq}@B*ẍ†a pHSԋ (((oYa \=g=vuK:xmZWp\^,C.ַ`:U}NWܥWR֍ܶyCkT'*xdbt?ŝ<ּuxӭ K|.$G4dD% 69t'.ep<۟>vRuGO[8Ts)&-oP?R6 Dl;Ȭ>w6\|IE |*yȪ:`zxR;MgԣνUJD9TYmc<a\! |vmr%*^:gOFσMXh: mE{k$vYGIH`_å#@7x6%U@@q]}C^I QmTnm[X^ *G>0bN.[ apjHlŸieY< LkҞo' ,/7$ʜ^k+$?uQytWBOyR}kW,<׏qBa錉`hwgSl@p;dϢ\6ݲ7dqQ=E;n7[g}3yr t;'ha&_LE)meJ"yTg>@M@l΍p%saTq[6ll ?Nq_BBFNtT_( A7NV+{1[y io;b% ]}.?WNd$͵P1<:PsDعK;Z'ƷuؖݫG|*1?(E1OAw2yˋd#m[t=6KUr!t RK&bD:I|??eW23: [0)Kh?Jyi.A ~{ԡ`7IpPlP e3l\Iv2"Ut $;m=d3؍xuQ!FYǭ=Tjŵnf33#rWQyR4MytIrN `n,1/wRc/sQJE!=k ]\[`P4; KhP'Qy#< qTd[BvJ(,KܔPoĭJBƮ,t)(#6@ˬp^S[l퇨R mWV)!޴ 5m.k~E_x& 5 m_ՎZ"b P`^3Щ%š_-yޔ FIxqGZeZZG}Rf U$p2}PӲ ,$.W@c { Qq 9E1U x,_3Sx_5(H$NNm}G RO 6TAvU-M`39-cTa2c ”L%QDvet4r#L6~2=|bSd^GZT@ȩ\Dhr?Tk}JTe\q=GM[ 5N%0)=oz(Dz_׎:uf'֟e쪧LȰipVL4OڀTWr5%i(]J (Ib7;D;my rmwW /sЪ[umUxe;M}l&ְυA03quP r\:} 2S FSlܥ40ErzJpo\RR ݤupyB [vn)D#  j4Hî'vKYzGOܳ0.Wl}ooϨ4oqa* vP@ 5"D谙aN܍ighu+4~|EvZAggG7dTg΋kIq;ZtdMn9)2GP0:BIBh+ &qZlЅRVg>}绰(R?mЛ'JB@o [[9 Ph.D ]Bn(EV'kjP?G}fo*wwP%5{K^Zrިx^)fC$A[:gy<0z7zk[]Mη fB3X ŅZFVoetX1!\ZtG3֋ֻRGT̪sw@/DI:C,YjoV ̃F]-R2bt#"!%U5(95lHDA'Ȃڕ!MOxX 0f 6Y '\NKjk̜=v:m>q DĦ)-|f1% C t.g$?(+]MA&NvES`VŴp*MgY9DTQM[W\; H ڊ 9ǯ ļ ŖOq&uIX% }(%uN㲴l51GLY VY`afݲN% ~t׷5Yz> <9|p5&pw1}P!I^͸`[ DQvGYlޞev+A'iXpQ:ITE/;imCQ)JMzػMȀt[H({$E``䟵։X]=R+nT4&H>IJKCZ,:* 7CLVTZdTp8'3?'iJ[(mU.'k'BCBIO(3: |ҬMcWAÏ}<*EOt8J# @UӸ7`*ҩ' W3A1t2eV{{Da1kz?{ cAaX`>~Ep`?/3uXlə|WJx\\[{҆۰LG>Gu-q(FT.š՟YICޝD{Yf@/6(o[6'g56Huc]=%گ"AbiV,ѥ=Sr6"N"bWd_犒,iЭ|Ns ]1?+[) p}-٧,ÁWͬnӫ?%Y (b Y֧Օi㏼q'(b* AGԲnFeWK"s\쏠´Vw0&̂hg;UI}RF'wRĈ&gAt x-zR4`h+RKyOʻ%g ҆xZU1O8,Ϣ)+j[z}'œr9J(x86 zE>1E W$M*3j՘hOnkY#!K8khw4)n6 O/~>l\chGVCM']d W_;!lQ' s ֹɏHC)ױIB i7hzYp he [/̕Kh(co&s~bJXH2 ᬖ*F~`/ `n̪L]Yoۑr6jm}WNxX*gɱĒ|IZǀ{&aŕB9FH-D6{ٿj*P˪*d1_3T!QX@PT$ R|I-s~9Q6DsGVԾHHega۱eQyLYw1$˰g˺f(1XhJgX` ӐMْ&=Xts@=WUԡZ@}6Ihc6!|* 7vŵR$CK;OR'4I/f{o^( XD9Ƀ'~Sişx&rF$JJ7璞tį{;5QA嬌dg65Q47TjbNp W%'vMAV MZ_)cu`s_CW vf6~_D*d B0OOOTyr-gX0d*j탆a5-xӝ$5xm|\Чz fR.2y Kl CK0ǁfIFnIƃί<\)\<.g1ԗDtR١8pqٻ+Iլ/G_hY+\1a aYF1 oۨzXuJdz;EX Ts٩}z܆MDPKU.tj uviu~ppҡG (kYX}Mn]1eI(H C$'m@÷>zp3_ ulRQ$&ԷSG&.= ; Ҹ- %a25IfK™K8z!eGբsL.L)~kžlPtfM*}| FxjL$<)9~u.|DT(v(J+Ȳ5Y ;>F-u9rN!>DwKԋ+,ty`|9gfY7GKH7I7O9Tvl t~/Lxޮsq43_jƉe~Ȩ! ~d-AНӌw1bE {@//^B|+D3NtNd2{zF!G3fR8 Z#ݼá3Indd$>/ݮhmP)d9ˑn]J|ұݔz-i14#пŊk:z h6nyedEYxC'}<)\nml_4B(E]W]abHMkd3BqhLʼ /} oJ;I3@B6==$*=1v04hzd8_iPqftǚ +{PgVXIX4ιX\ą-A-\{PX`HyId[qtMN͗2/''~!a!Wm,VJ؆}XV1;К-e"!QEl+6^/')$czZ hדC}kj09U`5_DNGW9c/m+AYY%P]Z'>Kz<H|cFú'Vܥůef2j~Ps\VCqcϜ~| _W KZGQyܱkGhs< 4vYPڭ2^l};m0vt9@J(]9\! G˓HD!gGlf9T0]0[ʣ^*1(CMXYǀxy鷂wWF ٔ+]ȟNWiTDX P ؉{V(Vw$@wBwmK|̴@軘w0V˻Hf19oׇE~KR袍W/% m 33@eѭK(KuQQ 8Vf遍"|]k&+NaW}Кݗnyjؠt݆e%QEg_mqg/8m6o=e~,lgYnuoUrKc oN™,"(W(s$Aa~:䘇qGX%luk=pݧ^Տx]XHv ~ kXG͈KtuպXSȑ~~$1I(θMBM@j M d#|Ż[)`RR cSokr)g ƍIXE#^]l$X*8y-cu\eИI4.NqXxq 禕",t ! =mD5zq//zxn#ĆTY2"XXe2HuVM}Wd4u@C}kfbT_;D΋R/=b?J@`Q' n%d&׏đ&'4}X ?t>foDлVMn(ק !i!d[i\ҥD]"ReJY Wnw fAbgybWH˦uI]tm[ڧ"@+5X*bʭ?`|_g_=1q)JmwQV Rd_orm0ɐI;裦'CR>|%:?} 6ƪ7w?jGw8 di+߽Qya+rXÝf)K} 0_Ȫ 8jN4WNb/4 a IƵRf8gTa#^ϾۢT.@R|Jv2{pܶ6`K_Q ɻuח~AIO#+9do^N㋋:hnSJg09i`![y^hhڕ`POqrDePjgOoX t]һW[(cj Yj|Շdl.F񠥻>]`9nJۡ.PUFvdA!DޞzZO<%q=\Wk(ubq"@*(+#spYy+T@Rx.rRn[uh8]5A4]Pf tPj}z[3= 򝄀g?4;@dseY.E"aHٶxQfzjUs&5iJBWnxksB79#!NT&IpCq1ǁNv܉RKNޜT1%jlbf,8+UO PC; T` 7G=)M7|1K s lb,h:2PfzISlimBPv2ZE2Ym|P1>k'yayn~ߗ :٨Vq.v|F(ZP<**{M/^pv]0h}Ą&B"]f]!VϧВQZ.j;zSVHy,ƴ^Ws4c7=ƺOYܛ1`n85ƍK:Fljl0bW+۽P TsVğU✿9 i7|(Z*By%<@3L{6bn<5^߸@ ';(J +׶ `]>E&Ű%~VS) L2%~6?BX u,,)=W~Gh6XX)k@]J>/4j޺=GtD[t]Ѽk;z%QK͇@-9D4\7E|$ t4z( P|?q }m=-kunkz5ζ_J][p! o?nM> BC=x|XGp}7hw9QT|8 6[r uTN,jl'cw\w3jksZl:`& ED/xUҒ11hSC?i&?)WM <32`x)Yth-_F DsoϪDk_Ms+ JfyfDvJyW\% ZJ#;8m,WSEI{v\8!@aU_3b}r~=4|Ze`ԣn j0i+~DX<-r@!uqCe`Lb&;Ypp;hdwO(4k`ܟenb'/l_ƬFҐNHD8gE3dm@X-@tPfvYG]!J7Yˊ?[]3o5<p=ch-LInl=[g!,& ӟSx4l:Au])sZFcN2?,`ϘsKxnr!zrh*SDowj(y ÷5i+a&X͂ww3X<XYؼF'>/݋pm:hRg/^fԮNj3dkAUݡ@M9`8b80+o}ruB'0IS=5[.f G 59qa7 /(QY bQC" ? KcRhٚ"CubOy9 Ɵeă[:97pq¹~*O+T&oyKM ,Dσd۝y;1g!kFHo%QNf嫎(Dnm+X',_^Iym2W\üina*B$>oYNn~0Qd?|ad98Lrh  0ڐZo?TiBP<"~Evff$O8SagǠYU23ajedl=CuA'>`&1f't* y+hߓˬ-„?T?>X.ͷ=;o8Ly鈜)%}7kC TeC&tŢ;d $ /F*(]/.0Oe'زj#2kYS}|O<|, lj=NJT+iUvcW)!>R?~2$@DFL9YOo(KFF N~]D ;/ C#+up}%y "k/Ũ`92+pkթ<('Ulnn2,yqa)63ՠ,)NmnM%jl*c'^e5b6'h&x.tpPp%H6y;?`+xk:&vn<!LuH˓\]*}&@wҥ]勫)֔K_Қ$LOFu?).OzА'X7 ҍ_>b"qWx,ꀪux½0`F&l~g yq'^(s H[B`(O9 =BAmM&5 UZ{]U8qƈp%Rr {F,LVp,/$ng)ɠA}>_`ԩќjD;^=l87Zǖ}RsKϹfrOFbꒃ^6V,G72~qET="ϣ\+ )xuNr@)-#< ni}P8:1eWX4oģt{j" [*{w l^Q &[~( /JogQK5IKЄ9֔ %w4"'w) 73w E?*||/j:u6J0L~G y}; e$%}o)|Lm4})z'1H䙿ݜ`D}f6;ߜjPdB$ T퓋{l|}~)DՎW<= {27GPG}hö O2!;眽-)F||PPwTD\dWeu~ʚp/ӽAXAW 2caw^އo8.?eeI |tMol>WL/kB0SZP`T Iɸ%Ýty}Nkܖȑyj+B+,hyP |AgAz/ӋAҔܠEyN eHu\PYt^W*OW--.cǥ%yf ow űLҜ$pY&,s/-ɫju…fA:77YsK24vÎK ܈=}K0nmHI-F ]<ټD+vr ~yX/Y7Aza0niߎ %)Zɬ6@LbX{CE c«u?{Ya~S핋AX:VD3.`x"ռ߭؀ԉǁ%veτ(z]WYLaK?#?=Ȼ)\D33Mk?Z~ ĭ3rbBG>Ӗ DJXi\ݎjyuRHHc{ChS0̈/"̽g!u \4]t"~(QyXۓ5uP^H=gI rib%ѰW#\#Vw2Z_x?_!ųR99=#Kɉ/o vФQO'?^){p?g2ʍOX y3w?zN͌EtŔ/v~VH }*xXF բlČNŠ;ʈ%ea ">TpA @j"%r! e-M*azߡ2s͑d0a[!JVƑJ0G~&)M[[ǎlCcyIXe2[Q@&k+5xʧWjͳ=J-d"CC׮0$XP[)|09T+'[q`FV[d ic!6S< zc^`m4Ւ[7}O")}Ŕou.ioj9^|ȑSmFvyF!xLYVG]\7eOӒ Y:eVLᔻa,pMoqLJ5wG?+Z7pX8DIN)6V`kAHJStEܱ,e(:S?d>c |/ Z:\ʴb2vYI -E%v%1b0[D 3zŠiBە\hj^ m]pc:OoH ̍YEO+=85$8Mټ7\ChTZoVOwH5.Oqrc9W4Q`<d# #I޽ Z?LQ0:H1I>Yc:6s|HTNlho#*BX \3y4ӳ|x,jo]nore 68p8H:PE̷R#߷3vn7Zw!I%HkCHո3azpA>Ùl-\;|^zShbU]Ń4mHf%kZ(Mlt-VD.ĊlmTy: o|1c"lbؒ[9gɬ9oX9WHL1],:E\)4Eb-0}@aڹ<}ު{_t` {YX#w4y7K.8F峲"m v?Urޙs [8ՏK2R;2^ `w 4(Pà^ϸ,X|?` f U3uwH5ImB3rY\ZK68tk!ŋ/__.ݒe'zS0sXv4_IvJ_ʋ$oظH[KvC=D ,,kb(4w?&)?*S6^ߏAk_F5Lr~`WS(M,[ B(lFUFp!ATyj{ح-n*)9FǗpGjܓbB~]D(]\(/[bfpoOyl)O24VӂT#=":v{VbDZ*-!L"$f dZ~wkB'|c=v[/P;ΚAq<$n8g \o*9rCc^c)AW'=z u^B:lMxFI:TDg 68:s" @!U` - ŝ.-Eet;E| N'_5q?if?=8[r̊%ZrIV=<+a@iBVi' '}(4Bo5'Dg7Uw}`-!(y,TptTǸ΄vf8\ZR$PRw =C<WC`yƘ pf ŬΉ693抏UE5AB특yRm$Cr\LwdC`{ʏ;$LIfl$ iXm՘+#&2<N%˳; Z@C]Aj`fϘZPpVA쁱r;ih;A+ʤqd+޴@-) }0Civ(t=ʋˑ:$+,.!Vmf\&IZi;r\4!/ѧpyO`y+Ӫ, ljl$و~:^=$zAٰ ag5!^xoUXlx?yu17Y%PGsׁP]WSfJ!O, .zzF_c#nv ~,5&L]4CYobA?q%+,JS lcޭN0.~.7 J9]B038'xqX)oΜr 0/2CK\7oS;ߒ"5(2Y=G5*B ܜݰT<>-۝`Vax^#LP|41dYt7ן9P-J eM|f/Bgk!wWN?XpY;endFMwd7BHQ >!Wzu7 䳞AZ%v-Ma4)eX_wF˖%c(7##g ?aEe)r `o83rMY#ԣw$%Ym٨Pg[A׈J yUmBr(gpռ&kp pG[^g5 x{!Oɉ,#=[.6yvXȺ EjbfO'"VLѵagMSHx?,vkB|R%q( fn- "4b\铐p>\/`\aDR nH-wFv[RQaqB)1j)wJ,kQǀU2(ܚk-ss}x1[7д{!9(^Pho˶@ɰȋn)m62q1%Q4/,R Nz͘ܐvWvʋ~DR.9⺣nd@A>+,ϒG+'2l?W4~lłeL9)`T#yY3kacYN׃7mru{Pos)@]3kH 1G }1Laܷfw㙌)*@S,ixğHEW429QEuE`)7>#O.S vU^/ϲ ֋-gk wcN;_aL;!Vi"c5bdì' ,kR56( MB gJ!A7T&k[$GN%¢Tp7q IGÞ1e?œ$J'ٳ|qv"hpȽGH GI.8^iBq@$V3x9&dS  zKڭ"ʚ|?%:1hO?C\杜*4 SD2k1:bbPOsQ?gP{qsȹSJOb}Ss5+IJn#oWlxKc+$8M4)7F~4еIUnQY Jݴp^~ mp#QXcwrcGrSRK΁<͙j8u\QʚH8$zЏ4Ei2baQ~h5@OvϜG1t$1W HTyVij%=)-=fUNϤeʚK*EB׆r|RRpc_)q9wpXFvI}PgTQP.*cK1* Vp'^1.̉JFfW2㤐ÌUŚMy _^("t"p3SjX&k V?<_Rg|~͍gd Q%CFB~ʀe\&T$i9\gWLZ/>tcS͹*% *-_ײ%p}ԡ*bwaPhB@~ di LW_B1YZOb$DpD.9y옓QYVSxg;ԡ-ʱ 'mqxzyU#&K"*AB4b N<);@I:LaۤMLaSZ5 )5n.4gcXؔ?,%oLOCs8W=Y,r/`'^؞?k9|^پew; /h"yC|`1,ҵs-7d޾\0Ŀ7SIa.,NU-ִ HݻN\//l6Jhh"_IZ.|=@1 ,aZql\/0J@[8"ؾ(+Vw>gciaRaX2FSȁQJhr$E;%>EJ+rT„@:}p nOR Oa_M( EȜG-2ş;B&nk7< :y: 8V+B1`-9bCvsH>Yvpyi ,P-!~k"b.;#n]BgOS7q rq(͑Z GWIL[Q᫁56H{n;`}(r9 5ɭSGJZ h{FOU5"`X[zOJ}]_('nXGN[]&GCg D(-Yҧ5}&'Jf2 ۚm@~b{j-Vߨs3zr`>(ĉxU䫫~uqD>x ,ZcJ@&Ǎ]G=n~͟\]Lp3gV: yr EPeuvyֱA`m;Ub6 z//H\CLg)00ʀKuG|HPr:?DT IcEH:WZ)8/W=ԠϺL 5Ԣ5%J KWUMΛo71 fHD=;0&6]rQ+Dh/p |⥟DI9Ѣ[ t n-Q%5boR@ wijQx|C@MV$F<{ N!`˒ uGy ,+$n&}?sDγQg]G EVZO%fBC}c]Y XWoKܳG4A:ȵ `[ Z jQS]Ry+H> 3<qB}ڵQ?RS<06Oy'?yʹXq6BKWw_>Lfш⸒wpr~\j*{1$=lƻ,.0>S2Q Fеmp)#mqtrv%ff FU^q߰ &WM??wRjpcô)Qgd8]ZYKބj(3)e*Y݋Xeeh{ʭzxMcd-_ZxVT|ְHgkIԩh!]+=U?]J !ܤjApw+5粝 o> 8'֭I敽Yk&{9Ϟ c˓9 LW0IA`8ZV;_}td @PJKQ ۺZ0֡{mz =uNxPL̄ w3N qm$܈\؜E Q 3Tv[wǞbh1aHLsjsym?~^}C?kG̬&̄5>n*&EZNFtur QKP̙kKg/^Z+ 3Fy B&YArk8j{0ͤkYlL|g W2 B:bF=9v^Q.m{5̷0EZ89S2 o&<- a6H!n璊jSDyi.)%HƬL0m.&݂[Iw㌻*$QhUh`eƢpds=ljUwƄe.D%dh˩nqۮO]{Nkwڷ^t,ѥR(k͞aI0cw)\;S;`ӅAaYpE\!m`S+;rޔX,${P~= $ت ;]0I݊O,u&XH"pUTZ$fv׈ɺ|t{4x|s雊i].;VyF iI_|j5B@13dU\XBj~ol^;z7BzAD/Tx(H\p@F^};1*XI=4jKrʊQ5JY,."'8@XL6lВPU붢4xsv?+;;9KY3H:ÊAHW}(@!{6Z40n95w \$cBVE6CikЮ`Q)ǚΧhS_|FCG RkhXЏSmAm&J8r~93~0 XK–{4n7cE>ARP:Q u|C|AWOLMlMwE ,c@n͘ %tސ)F @XY}JȌ2+DPJҫVݬR%0vS/@skH,p48@Ę_>LGl"0b4Hz(C 6^9[OЛ0Z:Bu&~;o1/L׃*3fK&NT/[zǟ|()#ǯkcm ^&*6~t$/V*Jc'j FhF/WT7ܒv9"GN(Gv$PaȎdŕN:J*+_'Gh&li^a]sql>J p 17Rgx8k3!iv*#Q/娆^cV쀀;_w5}:d|VR$IL?Kȇ}dqv-bEy˴mH]xmbt `FELj*?\O,wPWv[sV${t Mv7{<6 L E3vs-{|wa6 _7ms~8(2$9c\-~@ĝ a!嗌sP">^Qd 20U{xE? h 48r)M!{@>_ sYc.g fC= ,3Fwz"OWPee/Rb'|FQ> t5'iae1h4rcpKƬTggEpR3ZLGx"r'd{x?x!PkjG#n'?_0tҪ.NB7r}G#7W=yz;dYV6jR%lqSJɶnzšzzn\lET`oO[$.x~]䢀Gg=(~Kƫ[byóP`bܺgnb|iF$b91iq}&o\m`NKDLO1{_Go~OQ~}u/v,ɺ?(0w{-Cx߶OT됸FipBgmw clƅ,g `@yld RE[Ps篒ֳ꿂,?*<*Ww]b9#d1Iß?]T,N\ˤi#g(3݅pwzOj,Ziok\ÞdBc9zSriNt$SMKC3҈zbC q^[&N ox!'BET^& TpTk,mXw:i]H$Z ii!hrn*Z˙W @fz~Ir&<ڣf|7xWҧoj EXX$R z}BR`Ξ@; :x~QS*{|r]V3g+_o!ι'ZEoY'lqU`.p\ *q4-MN:Da@բߑ g0%b2L1<Ɂ!32Y y+L 7'3zwCb]d9'|^1x졞tj"TƴEIu˘Y }e&R4U`~X7E\ ]si4!{MYYpIGgFE (2ɵJ 3vLd. >N*>lw4&}ݪ@~,Fo6v< 4WVTx@ \[\{ܑp*ܻʖ<܇V92ŕr¤+aNc4ӷjykiӳtRR8'5OG=M W.: <8|x/# `\(AIلv}xBl;]N,J5OԹ@,6V8{sOӼ5dv㞍Fza+AeK:^UNl"ٍ i;#_}Λ q%xl;Dűpj kXTLliIΖZRi^z7?)ET`@˯ F-aM&mʸpD_r&/Q2sK\Vٖ?-msg)% Hyث)i(gDߜ5rҫ,p&⵵B5#-D--risu |]0dZEHvZ>w S/&҇O&U9f~%Xz;*ǻ kRg Lnd`_Kt'V*J #$3JS0CɌ$BC𤈤.S{iL4@ :gS E>Q)9gQ~}ɹobW)@i?Ik1Zy%6*-xFqdGNe3yrBr4˂zOaDdpl3䡱sjBSwa\to +k!18 q2P ^xĵw FVX:UK!nySa]RNʛ9` D %2&Y1JbŻ@\e l>n;Y8˙?KȠ*m\[JI>9,NJBz* τ&5tve^ BYD1<@^sD C%CG/8]oYY DBc{E:)'4\;yDԘ>y άwUV>K{&T}hӨgp*}hi!{gaXqL]%bmJ.Aned 8? ]>$:Gt2b:G|p<WEäQ8Stk (cdR7e|oxtUSE`A>ҍ%I El/g+S@ J4ѐ8=z#Č~Ğ6쥮Cz7//Ԧ#Q*Pu=[<&G%f#Crcy*RH>*|oL;y;K/'şqfІA9Cmށ!lPgT i%~+&\įʻ x_-YzH6C:=[-po>D5$bVR.[Y¢Vy՜R{[8cXXiRa:~(Zb8;})w6y8?~Chgid GJMtOH MyC`9b?i묤`?"=v.]εM9Bt' h*#DEjmGqJ؋c33\4O+x@Bst -m$P؝CIžltfx!}mBEլ8o^%UqO,F 5y2i:B`Z^T:E P|F:9C7"s{ds~-<恡>>rNPAs$1w!)H!(t$. -ބ}և̙t?2iYfFw|TJ/R+=Gҁ&p#̉skdW$g߳޸yIi d|(Z2TDV0q88S*o=9Vǔ{.|>0rUKchu)p}55`ْWjL[-~,uFdq)a)mBVF\PFfWNmРqDe]0yysWiQI jO$nit5ţXDILF: 3S+ gs4Y!̃hgƟzyg":ˌN*k'Ǣ(_2N7+o9\,[o~. /NHZs RC;5/fXaOm /.z/5O& 1J%ܸcCE$T- ofC#4V/ 2֩iΞzp/<8q8tn͍($.a5.`!gXa)x rv W&=!vγk ߊz\f=…j-I"H!"!dZ1;?dܱtaWcMpݿ1Ҳ6\@:/5'7l_̟hYw&FZ<6-EHJ7( '1ʧ0NNo (? 6u>S[&v$?c"{E#m\y[dwc@cMy;r*Gl^;mFrhgJ͢l7Na*&=B SS8pV FURjRK3^N`'BH8 ĦViFաǹF!KGdҾRcYQO+MQnj4+nnVnTCzUsGú?D1NxW z:#ɥbBM~O8}D!KP(hɦ)iB2uݝ>- \#1e|̋!սxsgM9@7|am߂;~&<;j ņzid/'.nV9fW„o_]D9*{A߯c0z1([ѫM6Q'/^>kݚU)ċo<~o}:/GW 9ֆ<*Z&SEΦ϶+'oIz c3_!aGcchtXn Xc-˫Y<遊f7{P.u,6y3LܮIXH"G1Pj31vnϱm|CBvVݮ R/FjC\n4Z1+8sXDILmybtBl$#{&ys[R}ϷLEiL# #:\o9>={HG8(FÂ|Ө|РC~hW<6WjXn}fAeam{?0ixu4".umdsɵ'e9 pР lK  xk4/E qkv6ɹ}'ap Oft*VQ8տOpQw9opcA>O3ÿ`eko8i%kfĩ4ZJaޓ]2$;LMB--"I-kOcib*oΉ<ڎ1 ;ʬRx(.ujb!35mrױܜ% {jz2,oVg">CXN 370 5>9 8`QOR#3bE42VloK=T&զ>[yAY>xЫAepڰZz&uƱe7z)U$19.x P'Ꮡ L*jiD(NњnwZ A\S 8z99d X$_`5` K܃<Q‘(hE=z9~r+"m7lNDEiV9q5*_(} ytW+z7)"=Pyقd+do9q JFJ51tg oK3 s㗹iR^Nw(^ r=T]"Ke#kWU\m[ -hn@4K\?>&4+s;oeu Iy4q;=wК,q'3Yz FF9*M0a_1AQA~.q爊k9FCEp10" ^/"kekꔿ};2OT49GrXѶJzrl(IZ0ڗ:M0fǑ}7[Sƌ*:ðd*?f4:5y[bӜ/-Jr* N@ jb7=I%v-%DycW"5DgnZ:;@Jvu\pHJ%vv]E>Rkۿq0]`+PÃ`zw sxvE|A3=8ua\c^]¨Q1k+sc^My9V Epk?!b 0Ve(XOw_2(u;zhR(v*BZ:a2֣`W1G='?ⰻ(Lt+CCM45&e'؂ M%Viy3f}hJCq7 [p-_׋‰ph$YRB_ ppL@<=_+d],^i0X7IË/;, ^vZWD !ĉb mu'̑PAa ^o㝭*mދl>7EIxA{1 [~9H@0Wx+ꨢ4Z88\&(BHAXd:sʯ)DT52]MU@> fL*SǔØNeOJ?@8#Nz^c4ʥVkx+?ND)5,l%=6!Js!/Gk@,_&#)$ yU4ՎhH /x7)Z5(AVٙ1_I 澱E%0]|=G:$ ) l<)^,A*Iwq3cN'5bS׼ IPy7vqW!>eV^7#XjkxHa: Yp{l7MG45D7&{I`?bZi-AnloofD)Bͅ?]r\m`ǞIsr1dDb<זB(Y'BW2L} 5~Z ?{Vw4SL=Vc(!Ԅ*+sIbͿ]8.6WaU0[nJ *4L~(u1fU< [:ǽ>Pb s͟jmm?[7]xzTw]K8{ B}[W yZh ^r'=K ycYC_t&V[Lj R aJh>d`6ib˅ky['Lc|2b F7& LOr +ek}G|GoH_5)%R90jW(0x2Jc "\ʊNiY}*K GM p[nrSTt;(Q#G/7+3\TrP^Sz7+Ψ:Oμ;W^>)\ŽBgW(ΨiYB1?q׭*}ѡ YeJj0?FJ #ܻt>`l)`e!hHn#Pљ0 &0JJ?4op*mCI% 20ӛ$v,Ԅ04}qHL?KJ_S{'FE 1'-\eW$&g cw\b H b–f |N9(⭰My3;[Wd@"Za3݅_C,icxHHRrELjFkrIG9g4v Bpgjipuπ:kQ7 dHQ݇Ö3PϏ̨6ͨX)L;2 ș/:)ԬuQ]3gݿt* =76ȍGpj+rю ZOL!U2S '{kgqčmDA< 7g+-6"Lߺ̩3lYdVһIy {ٖ|Kj<騹ɂat|@f͆a${uZ١b4 zC]#(Q 4T{YH xTU3w\;%Of(XteqZ@c:'%T׭ t(oܣz*~YgGd2S;XУ,XEk(\ƠeoeE) gwLPO%l5UBc{sR>Sw̋gՙ`HTSiu˪5s6֡uayPtC1ߤN u7Z&Pb~ZgO63Bo%+ Zb _1r4 t 0psPV,|JT''WCv\.m( \bw92n*-:>'I^[Cvqr_ɣ81Cvv`Q xgE ;曽{Ff*/ocF-R8򀒝GnI.2 ,;cNu.3]-ow^^F캼٣XEr$J> /7< f##{B#_aA|^.,{஢Mѯr83ѧSkKF0N|m2'{[C M]!.씛3՚JF -v1-)->IZ 6 B۹"&V%0ce>icG41 utX}VQ UMC ѩZ9չ^CoAlhD߯wz ha7Dmd-ۆbW :ޮ[|W65bTJ.SepN 2~C3V|>Uz|"U򳂀&0G,boO$:eTwA@)GLMѮ} ,&-X6Bp(f] |TӇ ayxu)!.MA eRDoC:>a;q!5t•>DeU9wW|D >yduŦ y}P}+4 2FJŚXg2+AW|wQSa4hjkgļ]$%^q1.ۯGOY"ks'C L3] \o%bapm0rEqmwpm]Sz7@aL?&cw_Ж],4+m}MEy HO M?QH&H?XwґWILyhupb!-ݤ뢰/U9@#Q!,|aaA#=EW>^Y(pD(rE[jPd47F k~htSKʤ^[&5Q/7X; ;~cջTnGCt0mw9OƑCF(/#XqV2mh]cC2qSaMe IωX BW"C]k9idC/zWP(/ =~BYUđig -<֩kU{xիiӓt;`Y~%M@.DsYdU{r%gjY]-Ph4ԓ+@5U A>Z?b$ԡfq`Wualnan .5Gx"UN>4\}JC4ӭ"*]1'Y2K09 $D∁Gum}ilѾAgb^Hf #d =Ng +_ Z%Bzl-Jp]M=Iqbc]n<쉒{X*ufX\ 9Z}>awBL!qU-(%b^gXzPC % s 7aЕ"ev~ѭEC* *!{/KrH

?Pw%9v4%DBxRۯ╞ R k`/d笔meՌQ!z"Q@A>36;7UT~SHҞzQ 4C&OpEʰTu~GY8EY0s40šDja_9`MV;2"JQi^$:6zmCOR(/< IGpoΖ9.yݙ XvNMW px]uf"O*!dW=f =l(ƹȣeKj*bӢm=v+pJ,\Pӡ.w2ZX; Yr$o} ҝ11J 4Y˩r#Y ߍg-;2I,51ag:3g d[  +1%R>;j/ &`a&Zgu_}nsX.]m]WBs%\Jw6ĉ/f@+K qLozY5g zo{ (%q'M=E ($SO3hŞ?_O;g]BiJa"9DDyqYce\A!9YNl 0ٷir!vWˡu;ٟW8ֈL-_m.>m7{eȖU=){Hd| X5t(Ͽ{8 ɜjNB,mPS̊8סS3Lp7BLf1_3 :hkoEt 0WwǴjZիh:#PH6USpϙa맰Z{{{ל fBj3w .b%]T_c@84Uo+^E}dUVQ ;rxQgyG {W@%PftR5iKZ [md+[L,V, 7l_s:'Æ?DxA&nEmbd~ڰb/0PEgkuJC+\p\[q[fzd|ncVz' ~?]U/"DW^zi d}aFOA&}ξ8W˂l^钤oF!g%U:#Kѯ+zm@Ll ^:Z*Bq!2r!T#D4d$j^ Qm*ƢJ@%-DȱS|hpT}^B(Gen<\6D[(UafĀ\؏)4Eu8{)~\,Q] )M2" j7gC3?\ o@@WٵÐ\[џ+ԅ,h_} SVˮzEzۀtsz4a+^I)Mx97yz.nWLHF:=uV˶" )h<}Ui8S2u DLS{ֻHrT;3w1 ;Nε2 4َBq(s*em\-[m͑a.=();']˿>` g g,isQyNqˇD[od{E05aMJڤYJ%kjމ5~%ԬcA)Lorpo⻑6X 9SOqJ5c(*#{3q,g1W0xwOY}if&Ӵ 㤝/@Io 2Xk]SЌԉ|';OBfv!ZI\dꦓ4/beq၇g-ܨ;1'@#%NlҜŕY.8B)y١syOq"LΠbv-̀bl4]1JV+\(`w B9A-ÙMT+ScyWɾLBT癲x%X =GQ]^]5+(9䪊0.cN.0.ڱQI-Rf1Ǧ?\,J:k7^6aAW\AƎPp>eKi X]0SʲoǷ|ۂ7b2[h$m{ QjsZ+H4G!ˮ6[M!^2y#W͖L՜x N(,'OfT kuCq`u;|/ <,ZԜ޲Ѯ0h6e6:o-OD5G 4LYxaLʋUB%z<WG*17) 2Y7hYj2tZO虠Z<RDcZԪΒk]D`R ޱj;>};x73y&$w((b{@jr>*Pl5TJ4_|}秋~%>]N.HmG*)eم%2 CZYZًM_k-0w !7(%/_Em;GbUc[_A4*$!>HWÌe48iq+vQfӯ8'w7vBN%zyZxs[S(jPixl9 ǚj>n^ !)XȅJ sJW1:;}܌.47SXO`qt0!}Xp1/PChN q`{s>2*EHmwAkO)'h|"Y/zЂTt:{\/J~V3+A\Bq58Ԛ>.ͫAՇ~ pjNxyT-"Nʧy@JdDqTNE3wq6zFX1Mڪ_>2`nԊ>y5*y eLkX&HwEC"ws?zXclOWG?x Ow K4^n;ú>~+fc=%n **܅=0tHu [KI10o31?uJؖ5Xu,%MS :L Q3k٣s^]XBN~-Ih07y|wn%[,7N>=݉ȸy*raz9zU0q.皴n>zvprS;nnIw#|Ehqxp۸Ǔj ! r5 ]/o&Ŀ~g5Vї;pS7+qM޺sEE"O&5"ګgX~F;!sA%aǦ'dƛ[ӓ2st)@ kmQeG<Jg <0qH#5̔{aN1=i<(0䐚crsVjqo2~5K5M.B('3Zz@- F8GCA:D_a//J͡ZT\ۜլ5d ˚4s?Md<&a)!ꔾGUR;7L&Ufu,iTږ;f@G??<'2ue,/ QU.pE%Q~q?=` s_,5gJ_XXUj R|?3Ué -~qXBY.aikR!-'FɕxnbHoz. v5EYğ׾_u^Ze;xZK&*[Xqk .Mݯe3 jX.Ge:[YxswΑK ݎr_wi'Տ}ᡱJO틸?fyI)_$օbҦ50R~iuZAH +/n2LrmJ{R/إ=S$Cvu0XBg?{UA<_ tLfJZ=2jLeG1:T#Y۞v5. mL ]uRQ}FY8:*5]۔E9eNcw@ >DXmFrV!Wm[|=vUhknDM`iFR:C B>V*]1{Qz> *!/Q; =ylc% 'KlI ]!Pv>1rzBi\Uft]0&믂ͣ)yEI81H!Ҁ+Mo)ח12x!7l^0C_۲}@v"ݏpe=I.Zg&~)4IX"*Y>W˰LgVȉCȋ A1?3H M1ck%T2ݍR%tpDʃvK%T4!v! c6KXS^bQ h2@GmZip-i /*`%LolUQl>6Xd7H9"U%GmLj`WY H:vݒ\gPTDڽ|Rr(0M@<@́)/(oSƯAw}0 'D/ѯlK!I|e6vz:0l/5.MW20a-*N[/R†MQyL!cF h3yr7Zņ񗅟3w~]D/ a.h3o9J݇h|(|~Dd WDгA&.~9~;pGgXiUՠ"ۯ S߹sz+sdR:rK>8Z3s?drJz1SfUm 53 9:xr=`v3Gv䒶֘+Qqx "2> ,g-7WVoD`O*LJT;Y}0N'ΤDžjʌ2 =ك-q׌3>H34 )t^LG*+_">EZx+)'=ҕVFɏwkIƑ!{[A uedҔ&wj/g$P!G DW]a/b$V)QR1ܳYDX|`0+Dħֶ.TƍPk=yZoZ?ժ3D*b-N̬aEȁ/x9B`۪sԞ>␛O!5p9[`le25nP ̵AjiqcC!v>;0/̌2?Qz&eh87*R&CwW KS.%Lm` UJ 4|*ɐwB#iz($p{f@-mq;[*ڀ'R;,}=|M$J.m Dkn% I. /7r3Z̆nYn5H5Zֵ/ (Rwuot;{~Nي(wWu_hW{Cb7Ń2p\^ η o@bO981_r_xnL8rFe~Ў`&Uc~7-vGsIT>RZWwǀǃ (|it  &UOZM l1Lo+T6 vFNza> 0"Mx((#G5cJS;z^JFkxy{du>0µg0:T 潃4Sp7IF%XRbY+-i]*0c~p,R@3Tg5wG{‰|QyօOc S *PLm#V3_ QӷBLރ8YR2GQE['%$ kW,5%9=+ Ÿg561!WNtgHz \7 ~Ʊg~Kxɼ(ugj\iqr }zޞ}=7wdtu\ZFbfxѮ:*~ .'95Ez;*^6Fc@/@{4Fb㒎H:)TVS셢$9\wwG97 &Ov'c#V{aiaԭrUZru&〞F qodhEkF{ѢUv= 7hIސ 9mrtxgw @,X~աx4d[{bb=iٺ{G+N5>#5gHg^'%N]%_[=[ :,v⽻\AD %f O@p@!<;[6Wa|3S1>2si$(qta6>3MX_-vE|/SxArpn^L0ڍӭ*v؞JaͶހ b`O;YqԲ =]}["5MChnim98XvL,wY9ՇkE9P;M?+gH :lrr;i!zW5Ftf铏R@2lLbKRW~W$,Z$p^'B#n 9ס5nLa:#[fP:?m,ýPf&}udn;#bpַ&z.?0[ZrVtQZ ]J*5\HdᨾuzhZ߼dVOr×݃2*L [Dԙ.n2k2őU6W%(~!UCu7Hs*2Y`nL3<7\3J% 3$gFEnQh>9u9 u}quIeRmDV~`_~\B䀑?8k>Klޥh!3\@az uNǖDt ࣛs%j>Ag4dl>,ud]6.ZCV |8TOYj{]OuZVyr`VtgYqlC%E A*6igX;X"GJM ygp/ Hf:YgC k)u&k8aיl$B˖3k$ύk,濍v{dG x@u^%Th?0/R$ZЁ&ٳ^ FAKi{U,CtRGiU^#!kf=)Iݼs';8&1U ۙ d'dJSu E<̟!H:j !w:ey n2pLp$;,Jr"'h/HBvJ8V-آȘ/ /GlJ[x\!^:aOݝ4@| bB(q= t9<%`2Z8^o`S G* ly,Q&ͭ>v"o!} v:wQg ht!Z8o9_zήB7|~(, B 7UaVR &vr5dbE^^ԁK3΀ҵqU0ERQqvVD&~X63hK,c<CQ-r@&e ?ƻ9nV ^bN"1}~%˳9Hl"sQ>ߙ42 \zlݯ1csWG H=32a pv`9'*#@Uʽn1jyC6%K5>YPy澸:]nK~Auk`?iBLEf G9cuCcX;}~E%:⣺ujHX#[aRvDhi[)8^hQe_Ε3b'Ya9Ͱ4aꌃpSU9.& [+/t|6;GzԦE C4՚a8i:L$'` 4PzҥSFuYK)b~HŽ3l]g:TZLHĨ@Ǜ'z$<܅!]L.Ok4ac}.d>'զYLonǦ >;&V0͘wy.¦8koPfl{ 6Bpp3{@ۂ(y%vRL;T|ԵRs FE.DޛDxJΊZ.<߈Q nc~u%ȓ1w{/H1x*np0 v'l `q4='VPJT}c`f%.̌>Y4>si~hr(oH3ҁWi9m^+ E\~Y4g2 yuUz:aWg&Jg|+uyT!cZ- G7tG)g. [/D*#'_{Vvjź#ds]` |oTx+GN~{{`c 6 fw3%v=?KV\3pR“`<ryәhN15Zo{Sr9L5D;Z}sRO3bQಘ-QY\iʵzs#N9!qoty/UE9C.կDd*1!S9c͟7C L ]wkt$q,6֬mH \d=iuSD3-bYEjU,܇u:Fo7Y`ЫU?:Jv i(7p60낎1) yOD !;~x͌q4v||@1R(Jl-1p2LѲVugؿ/ "OAu2k 9Bݛ$r?I&cS{>\}XؗkbYi41AID9 u7ydL<7 ! uKzG[f3I"ôY#_?=sG6F]aU3>Wd9g)_CI0\I@) Q` U0\ŶT]Ga>y\fҫ#[ŝRaގ"Fh_`G)WEeI)˥ 5 뻣}R0sf؏_l%2YR1 ^;BtOQ}݉ ,vx|b<'w@9T˘%E[wkb3W)B ϱ׹jI*2b,鿾GOݐ-6N@O1I8NZ8H;Ff7DRpLR{EzeM`Фf8r#LM*KQ x]IH]2&b^0p.GcQٲS_R m8 GXA1A!m_qgzՐQ4I'BpJ8{2 F_lBvtɐRmfR冺`ڸϴDRꕽ^U߇mPmEkCm$6{KqdW~;ְkTkeɇUYz>lbGa.1glg;8 R[Toꅥ w q%?r]93<-ȬDñ%$Th_oμ@ _/YƖP]?Ȧr; p,)@'0#8J5e$Y`9K_ڬȠDvz¹#,RbD|e҈KފI^ 枬jNRh_mP4i+}9ΣQ6 nlT+˹eF+SsfK,b@+\%H6`UFS0Y5s oztS4/Z\:5/nE$楂BƓ;G(GWObYD }\4;~uBO r-ָ`AD՛ϜZ::e4LV@b"/xG^vCFNia[z KىB (>d.f ],*A j̻z`:09N?& ă1@Zd֝08zաy 1AW^op=a'c$ߚjpv@F 2e,M\}*TbuKĺ L ĿaRthZ҉s0z3R &jeY]1)D;9֗VD.- W!9T}\RITun7sj.H?N/#Qj"]f]$j' ?Wb;ђ?w)݇Bp ߩk1,qXe?S=`n4&2s)dX7'!|W&^>6(o=nti|oT;&tF~XmXɯ^d3'-9P:l`7}HV5DU SD8g9p&HBqܝwd g1rBH ?p LȌ^L:o9`=d@!tH .q؅$*[/z MŝV.XdrWݼaoӉ*f@YEh@USg]1V^Bh婯 itE.,zDcw: +(B6$ S9ߔNl @][r b5{!:hM*S~ì};u=|2 3F0h}\t/7NQ"` YD@XLn̸Jgf9IjYR"4GFMq?Ow~ oH0+K;lO(\w:C ([N~{7W-Yz'\ѹ˷R{Ng{čvTl6i 8E}NOii%HP: CEcޢ 9%y44'lǠ̇{+{t?fm~!oJJDRrts DZ6XRa| Jiq!u@"]w*?Lϴ2BuP0ǔ(~FGV5"]sX(bok?gm<`kHw<H3.Ȕ*Pk)5ظl?DXO+♅&$Eߊ:_}L2*%>MA7d( BV тK_tשwVyx}nP5ʼn|ԴYTT7$4G5؋gv} .?2>imWpv.EQŷX@_b޸:N ުMfB0U J,.m'ރ60m8ԁfXOyX}Z pNKG\~fP, V]fNCoGՆ8x/$+q9S?ّoo|Z_թWV"E?cl ]4+=Hq vQΡMx:>/p5:$HJ`@iv6]dL{Sަp U16TFK[j+ %9,O(1w?&f语}a__33.Nnȭ:4Z$Qv"d>Il(]*QVw݂/Vޥ"#K+˄/:l]|vguc5m*\r7gׂ/VK -3"JVFRCLQ8JJ'e]ٽψm9d>(ơOC~lrԬu`ObΤ%*kH)iL@ K:)C1g2AEn]bM 8cŅ6-OY)LKVTBhyG+DÓBTgD𶽪$E|+uJ@Œ"I(?} #bCX*A*c-!sEecn븝I /\q_or-'&?rz7cs{-J#;DH%^Lk נ*3E /)C-Pk@kftw| A!Oz21!bsc'C?c,P2Pм8OQM81bȲduZ5,E߻p!{ӂeOi=Cήfmth^12g OŽ%x~`f& xY [Ɯq^m< Rd:U9&]WL p;`sfJOXo,bI(+ BgFX EEJ'Q fQ<>ߨEg\ŃւBs$;dagS/~uMe,*t 5m :ѭ8ʳxԡb 8\UDMa\tΛ =77 ZPQx&2cY` -a Dk42Z#xeYL8+QY# :gL^3-2ER8u$})qd8ּ0@ӓu*,bCЃ9sJif@9w9#.% +:ɲs3 ),[1~jZ ހw |Sp1C7\4 s6jڑxV]M+FU`?reS2DPob+ݧ֨L;&3ފѾg"lԯoޚϥ{کa%tݪHh3Znc9G:vHq$B3Rh_Ь.>1|MGĪ>!SQ_B=7# `;֙UNɁRobو /ZK<,;8L;%g7֥uHw.c<_QЀXߏDz+ ,X\;#˸G|y(+$4*r:ؖrW-"r*[SAr3FӾq༽?rDȄ"Ej-X ^CH}\DZg,\?*=uҶGNIX`՝= Yb\漪 {w>܍{:`!kb7paLў.el{fm;JDBHKzg*膡vī #;4"ԾAsnt掫(e z/˵,Bvx 9[i3IN1 T^ٜPi`ð~ՠԁhv_|딢_>V=n]mغ lnܐ8=W:_H=iТ']B}FfFxOG3K5\>H`Dwbf/t0WȄc)WRvC涁%Ә޳`7xL Ծ%pkg3U)_S],`Ry͊+ל'u/h֭OFm WDbR PchV'qޤ5J-L~2j/'-xw U(wF{ᭊ1L"wI4yp=/D:Q{U;Ak{@L-nZ|o9;t&GV@ Sk9Xvf/eP$cSY("U>`~}f{W#*Ps\1V"Wiš^~/xVm$*7õU[DL+?{ T<`G1"eXYƝ#sQhJIӟ@MT\˧?馆ЭoO~PuC쩝eޗ5v_AkÎ^_))2 1$m9( &W6Yea:5\8hW+3- 6  _t_z!pƍ,yL}0(]qӬww#v@+*[J4ms+{Fs]- i#k*~AR dގ,!f9ϵvI"7/j&!t&hm\Ɣ#,,3Zayق w{FiHDT%V2PwU.ef<~' ^i,sG+S˝= PK^xKo>kJ#{U2`MF#!/WM( K ߫8>Ttnʭ_z5MJ`Qo|r>[<^ktbPeh5sA zWB,8v|CI5+ {MϠ\=iHi8- xZ̅  R☎U #AسA;MJdW9VYٻ'f#%˿Rc"\--ִq#C7GMp*4 Diwnp3=AP w=gjؓ $J G4A!&`w0n|VOׂ:*!ب^G ؟jnуbfsFjP|/t  ۵1~HϣMInMa\iߘI~tTD.:1H@("ǯ;ζ2Ci#yZ~Q\}m끃tgb7ϩ[54չX| 1L og*gWw Q8тHe_qdVZ5|aYXT R;^ VntGkSJK5=>Hd+R&zOy6).y8L9N&k/Y'zю@LV_Bq5P#Jâa2kbL]*zՇIp23DưM m< OF+60[Nx=w6:6V:_H.yiTc̗ bɬXb)Ȃ͹}Ϳ4_ 4CkȱedYH<QJ QV!ow jC2|E(aV!y.Ξj^̻Nd[<>_G5hg`C\FO$+g${XX:}?D?<\zQIS![@Y?cg)C HH'H õO6 W|ȍ(-ӵFsB(C%iK~@PqY&cU<:BX-K/R 1Ϧ|k1\JNYȢo-\.#e;RP!NyU)^+iAF>OS.3?+,`ɥrVCۊΓuY]c< ch`3Q8OHP0ugxU%gĚW3 *9nO#M0y~!LR7Jk&?u$%2wI|lQfʱ$ FE#qL=bXﹰ<~ȵ3-1Z@Ù=HwԿ aLE3fclxeĥD)47APX_'j]^fo(hHeL<̅GY`]B &jlA]46B+Z:WY%+m#h=xZs}D">.2|<̙l8(<8xd֬yQ7ϝ"OȃTWsγ0 RtIak0D~4/6?h[庁$B Fs 0vS&UO xDG_Սe0=Yfi%y`ñI`2O40 GQz\#؍6+n_wL[uY3'Y-NI۬(IӞk[&:C]P]qI6|(}X9s6<(]⺸<,jCJFu\Z+ |Ci*vl`@O(_@˃;7%a(0D<}oN߼hO]u^IͿP)mUϼ>y&oðX6?ֈU=^%?moEl 8U^R;ro}-Lp`ƺ*g }@{7f!=6p;*jT/z/TE+`AsCbA71)$kwtHP O+{;6)_T . f!-%TaNy j`Ë`b^;yT[SB J;1feBOlo{9wNc/QI5`"LEDwfF Mww5ꦅIw? /7z s|FT(afavX2,N$}m #9O$пUs2d3r_I~ٙ</$eᴺd@i@8:3'% 8I q_WoX6oΤOnռeV;Ǖ|vgҁj Y;!I~Ƕ{];~kJ|vyo Xۗ-]f14(/;&AXw4Fd~qa))R YB;rQZϒЦt1ĆaT S-oQ.L ={/gr77L3fGI:uyʦI^b^EQ,D~#Ɨ[ ʙ4ӌB~McC:!6b"Ŷ]=]6 KEɎRp&f=7H{:qLas۴pmJ<90[m{,؏oEE8uߪ2 2KQv+wi_e^]Kqu\5,$kW^Sl_yFߊq`kQmC?i$]9eZcC\ $ИQ4Cp,CbczhZ?C6&8+#g+1ٙ)Hʮ:6'tK+ކ[gT.Bh"s)!b9ĬKFwT*[ěE3YEnpXc$U%S\ϯj̈́$+?u6*X.K hB@QV\ L!@TjLy|% 練éhBV9Ɩ~o40mi[*!.rӺטigϗ_$G$+}O~\x~b7R糘Wl&ˣ~U& +Xcla-@HC3/$q|LK+S:D-s$EH@$-Gw1Da[%2ag/蓍h}ag75 9Bl,2eUD$f(+ &A}kGNNc7cjf$ >(։_6/؜Fi:屼#~-$MjLlkJjx8QESҏ%'7(Дr_0!,CaA*1E f76T¢HGaKX$YEE5Jի4j;@kzA[lsDq vD7X-X@uA# YP!p5מ o Ef0%Mqm>rTMe ~o`7{$9=E75>nCSGH V'ҧK̐٪%49'VOE=xRBug)xtzFp?τL1Y8iەT|aEuJ6۸)Twoga0|yNT35]3[ǙbvICAl(Ý5 ?Fy0o.G#=.,~;b^{aWhUk;C~ f&4 LRMrHmoZf ԆlwXP@vfJuX-bV%fZerl xx:S-枦:AP#]nŤqWw8jr2j9,}yLHQvv,z +|tT Pq%e\vE.E9vd* Dʱu|k@^IggW+6qbi{B~O%peB]J]%aŢ{]ބ2HP5/uo7ki|~PUD!dS]|"fc?nD~xsXLNjuӚclD㺎k_|؞ 42ةJ 3fxؘ#2 <= ~7Oҋ%4 z<;h'_#aMjrW)Wʢ+;}uR&sW_%ix,qkOUzo4wU :[_Z:Ey1X-/knN4 7smGv99BW;KzFvNmb|9{ D l:;W89M, 7C>^G 0xt|Dٰ0p"Py<(pLasN}0k m|; %0JWr{G?xZRxn& NiaMY=UB:AaU3`oȢ0ϰ""sRdfȶU<.y6 X=l86͌LG_)hGD޸rNDa$(:]rkz]Pgs΋`hk$49Lm &ìG.m2 cd@QKoMRL, C>ddRjK߱ CܟG1Auhs:>yI;P`:/li4@Rʿ}VYߊ?&O4UD]G`VdžaJw3YyF8XSV/evz˜B)=(bea`FSqscU_l[( K}ח;ojJ y{lv:\ZLꬺ3 J# +NZ5e3UǒOٝ&ޗO+CQc |h & dN9Xa~ɏkG+R[eTG{}EFX&hOP"F9{ؐ:&XiqDkQq@+qʏujshqf ,̽*Mx9:e.7 òQe gꁗm5x1M R6%ačJ{9l,CL`tyDhQK-Hb AMt-CޘztH*<\}KC% &Q%-]3?`zeJ7uHBzs1(RGPqYvR$V:og|-@elwjs灄X#Scڧ=K)I :f}ڼ-c ,ued b28qJ,1JE;tk2fRu1+8˻~a=wE;3% u:T:&q'lT==w?wjo h- ݠY6ՕN *ۼh+BDφ: ў6d?G,Xœ%N$/)Sre>:8anFlFCN^| 3JcZ[ .\cu(|SqvS% aiJFϦZ?4?j-9*cc֓ETul7sxV^_jo)9 N|Qdհ~ben`L4d6zdW㋉f{2ZDEqvm&l3/SMn(. W3 :qxJo,:*k?j˥msVbOR;{/ Tb?pPv1ZlX`7-^nZ;r{_Aa8"1nfe5Ju׍ zkH{?!9}%স,ƿ!]3t"5ǾKW{ᬱhJ8Ex>!V?wyzw{ 2Oo+:ʹ\3;Vw9yGA~OGҌ֍ M>6[gJ~Z:;6#oͅ)SR@TUYSFڊ]$zPȵakm׿$!"n65 )hKR4“yc`Nȋ̗5*Q$4pZ%#gL65K]=xe'l ɦ9`Hb$Ŏv|M󶨒%GJ P',%Nʲq*S 0{ 0 fi/c~v OWʟTezzTtNƕ uT[tELXۦAD"eɦV kcsn929֞D_3CsY}c68\|Pe!$BH- ܒ5 Ә-y NH}T1s:Ӱ0m#bvgSf6sPv'ͦ0U0'}UJ[u\"bE-ʷ&rKOJ`ԵD\xj#VDL`]~/zCh ÝOXϷw%A謴_\2fT,oOXoʐ\*atOBTcFgVU *Gz~F4_;57a?C ֌dUT(i" ~Xh#_ 4NAcJqRL$nN(OeUq[E"Ŝ1=s_q"jrI7!U&/*>JI&UB tzCvgv,YB9l c=_棦+ 9jŶ:1sG8Q$Kh)xeyUK U2ņf,F/ehQJ\!ptx}p[@KG)0p|l=/q6-uXo/`7ϿQ.gd V˓e)^!tʻJR=z0R}6q\f7.k==>5Tc=FߛDz&衣YkTd% |56s x۠Ɓ) YڒoGJ^,H W f %~%FrIfՎO#VV̲ Z򅭈Kpt"hoD tM weVwxfMɆZ VSE8.+MOk+!&\R蒞 G|`(Ej6ӇҨjtM.wUxhL%\@xxk 5 hX 謑CLy+{"1k;.ghc@ /hx% @wn[O߶eSXsϵㄶ5+y~Ռ 1Ra$ukhR5j\~ATjۢ} 0X. MOnЊG8M\H4 1gaˈZ|TˊmLe 2KTv>Ie ce[!uҙoxi`yϦ.*R^ 8 &^0rY[68?燆tʿx6ef Uٙd/˩c\L(R24Iˈb"36QU`yo; &.Y\BrV?ɢk"˳M1ٟ|M0E5:-#w1e@,j69:VDzg`*g \'n/?ͭt?c#I烚6uOeI{-%^[yse>KN><⨖D+N7*n60#+Sú?bDj0&ь!Ovw)!9XW\v;#oY$Gx$bzA9Kc޳qib9IYc5) Qj).*."cdk!s'&uJ5pmdJ")#LP4M"Z29&c2/$^;-A^YC!Iiݮr~~T^t?#5>87ϰ 0vҜ)}-ƿ6BҝeQ =HPq&w,o8CKo*怟\\ذ'b@1ۿ*7ɥ?ϐY.Ftm#\H Pw}1sBO(4kмਹXsoϷ| @U0`I͗F\5|iN[uu&jQe-kx ui't/@յu86SxlLJh|K "LLp7-`it#t;0|[)KQ+ukY<ЛJ|}1R NkJ݊p(5"A{]`5uB@F#>c"ˢW'W,_zb-HI*P4 C0I1k9CXXƫژ̴_:򔆭{cK MJ}WmM72jj޸2.CA d0%h%  DҊWw5PeH/IM 1LviJፌ w7] :)3442`E^Y5ݲrӐlӜ:<rev/0yU`>U!>~5Ol-,ykC_&8:# M١ٽR@q:_}G!3#>V/Ddn$0H搦XeQ.H|:sEJ;)a^¼*DsL ~oW߆ew2fX,eF(UuɷF{y%35Q"<YlQ:p%JĂ$1TFDnMĞWWP q7m92m6| e<0xiZHMfF.`ċM_|Щƒv>l5L'`Xh[* /v. At(cdQD7KKƌ\r\m"b#;{xpVA3Ւ@S8[{t&ŃNo Xs pA3 ,j 6ZV F9BmT@8SnYxp O!egq {mgxz&"`ϐ-dIItSV(|eӄG(,NjmdFGmٲ{N& Yn-բaDKDAzvԐ%B)#5)ibq ۰K|Vh=&mu͢uiPLmBUhK_'c_u'{U^2.B/ 8_hk)aNo0UFQ7CkU271U۳&!oR=#z[$G{h8l 4F%X]חy;cI:OM/YY0׳Q\!GPw;uh,>@l"R`ȱByQ(hWH]Uh;d?4,'3 b*DC}fdmy4 W{Q>R:}4`~߱%L7jl-qKڰ(́;ɣY~k|^/Pd+UqW^kqIbAMX]TVռyu6ZGƏSuOcn#0[!S(֑j~\oS~xp ar> l0ґC='bŽ ] v~B"@0X~[E. +fC;MG؝6E0y^f/^i6JcU6&#sp+?έCn;Sz*r`A7$ 1"k1۟uƍn&[]:%|| p3`"Xwc8-ykg^|PMq~r' |HlYSٔ?pbF3I1>ˮTp Ȳ;bd&_udQf@\I78l`mF.m9هgݚ:V͑X7sY}Pi"V>o~x fj+C֕h N=q~1a1vۤӯE#[сEN|#q{/i4:{rq 8V9)n}Ycd:{Y]O\P=>R_x mRh\/s$`ej.Ml:/ oZԆL䡵#,5e:u*@r}zejL%AGR{ۿbɢSCGS’r>,z. CB-Ҧ Dzڞ4ƾNRMI%*-ģ 8]c kE\Q@b`w+wcl;ÛX lkG.Q7mTn KừL`vaUqIjG:\nz_Xl]W8da@ U>"<y9ZvRQN jP[GI}E֟#nLSk|2Rt`pГ-]}ٽs*Zwk⼎O`K#YSbrۓRH* 'ws;EyǾFsHOWE"a%['QQEV+*6ci堧8d䥓] =1Y_@=(.` &wQÊYgYT/~5 .`xTO`@!\"BٔJt K@F\pxi`."\@0-vx>[Rj2z x jl0CFSKc_Pn VBdG;/K==Gр1;4?_kX|]0 MW> 2f\=8.MU4SQžw !)}TR>,AONwФ HC0,&ǣ99U )BCwJaeN S@N7&aX.k(w 7/;],;Y龮 y FPE]bOlT۽G^|^u{t _~Qe6W3b4M:&5s#\-и;s"9}D3;&*+ "m {b.NKPrnG 9*|mGq_%$PCn^KD-'= r R[W)'Z,pwp+S"{Y:<}n(p cQsk * c[:G:h\ס>aÎlB,Č6:4`G-帛 E#*2fyF>}o#͖ea=Gmaz'jϺRbA3Ϥ WP䙯&SwIib8FПK3?ǐZgo%:; *i<;EFeMqUC]]Ԙ:sdfX L stg5ې7D%dLjRKF^?>zXv+/)_0;@zfB~,^x潀 16+nIZ}165b]WY| ,e:6= EO^2!!!ۛ:Y$N/|D D,;u{un>6V?[`ҹŰĢDg9~0Z`3Gw1z'AH3=^K@ipy~NK g [s,y$Cs݉Ѽ'ɫUAA:a+Vb:o>/EcCfg" 4E آ \CP>E]Uw!r\Keű457đEZ/TF5x>|Ay6ƬTbh2ݢ :E9mʜQ-<9 S{8of]c#z#\ʝ$%jb& Rm='3a${3u@5,QFI&*GD-i׷NQ\`|4`X3 xf"e6qW'͈78&PҴNHMK#*zE /kv>DucEa!,0LMX9d'6TA^3Ҥ {@ZWu<3qYҪל IP؄@^/j>"VQv=EߘT0eKf~ B̽FV~ifе&*|c9^'GMo4.䨂^{Wٶ%O8#ꩊƐ η9uFj/Eax*p4w̖Lf,'pTcwVp(D&r11^2yh]MCER{%||ZW+֬-X9m'RxP(6XODlՁD诚KNUfx>D-]sV#~U0Mǣ6ÿ}C+[m i[DBK׮X ;v,YIX0P֥e;GVj 93;ybYtK/_7@ʥUUUxJY&f.=U]LI2p 2fh7  Y Krfi"XuB}c.X#tgpP6\ne`m|٪}ODBfmtn15~$w꜅1.&)@.Oܜ PHoMIZ=xY%wMUyH ׄ|}(/U@$^&1"K9q=9#c>LDa3'XWemz~fa?DqƨI7{F`%!EAN2/<yl|VI׆z }]Zԩ]>4h8'P"2c(?`:DOsU*D mnbQMm ֝d a i)߮㌖8^ ΍HJED)YXCl2 '_Ժ%ʧvJ[>cC^'k I0?w, K>rghjkH ." (.7l""/f#sK *ȡ 47(x9yu*32U2}avY;&J 乔 Di)P|J+9E0ςy@tTXeGo2j%s{#gu]zVBtCtj!~/K&^=2( ærO wJ.ُ[y2L Sl|Yal6X. 0w"VƬ.LώVss aOSev\z$@:Y8Wռ#m-uu#'-?{fF>M 1mw˷5ꊿ,ϥdJ@q\!"\ۦhmWQLgZˁFUГ*7׆p1B-ei rcmS]&w^Jmԯ\ռ q1&roheF G@? CC#c&Z?)-vKY7`2gb7|ލHZZ 诳UBVN"`F:|0OJ'9̨7L9]D:OMUy}(aMҧT\er@8q$|Lc _-?eB Jϼ A4ɲMՀZ}L2pEQ~X97#],yRA^d1.L5xMxrU`ns(h S*)$7 JS-B >X2[%7l>$#)Gg. _vi3NDYuZ Xƅv$ T(N +lCJ״4.ZI]2>$'1?*[z ?Z!C HB| v ʦ:%,@yRk@iDY^ c?Q# Ls 䜥T E9nG?*X Ϯ.5Ķk]HzD.fXo>z7"!B KB5MJynvd,r(=OǂK.l7ȡx_ hdL;\R-cqB=/DPL*bYm#$H&~mKn!o;LdۆR@ih3s%9b$W=J{x24Q窉'G,o-C[NT[S+hNpF82x|0Z*T"Gμjâ$ O=xh6g2M;)[GAs8CyFQ0(R#9QTU؀Q_PT^uå bN?]G8mTC*NDx>KC:S^OkKFH"%ڧ]mr7ꪌՒ| ϟq%Sb^P4_:ې0q!"'ZAeEԯ=U; +ya(mr$"&̬$g٫C wK׆3A X=CSfz5 ­h  4htMp]o ͡mа[9e(̍%i ;-k[\xeyIt>C]fA"\S#ǖoqXIQBA0V +K'D Ut BX [X;je3PGm*VZ`ѺiaK4h&"S` n/dbE)JH *wk:Oe;`m_wEyWk{Yn%Gn`| ֑طB:Ă =q|F|~lLdzJ:ݝS^Kp߀Û9tOV6iޟh&2T??Fڂqnl<H9<@h9eȝ_voZiuDa7 3$1 UQ#Sl'/nvKߺ/ck&Z0 \oH1DCqQ-2,1ņ_-nx{HuVf|.ifqy(YKl,yQ{z[s'.,yYh=Sfh@# Z x˳ಎLߡr[0jw BUyx;Qzx>$=^E'cXf5R}5X?F )p{&I<ݰhIDbǢ61y*LQli8a}~&z,QvLZ!֦BLXOY# g>۵h@Α>9iXos]e_{ }C0 fi"u|+=xgK0ioiY`'ϖsvU=0yzX m` yYZwp{ 6e%9 3K\Ur> Z2k̸?E>jkG%2EMMOvE}׶xJzr%~Y z"EglɲHݳn1"hߏ]Ua^&8c͛>1EF,"5 9IA15@b:Md+s~|T nK'A$8aqX!\V SVOBA=bʰoT 擲g- vIՇ5r= %|Njx`GNS6~ѰknD5Xo+^E#"~0Ʃ:1ԧl*`K\liu$ -E'ikVZ"|n5x Ӛ3% \ ZNB?6$ E&[MXx?Vo wޘ F.=g= șw4+ u"!7nU˙y0!&P,d) es`jթ)SYQ!I(m0:BtGs-gE>̍=])KveCHRUzƷwp/B:@o/Z"[$ k(%~~q: agK|r2i @7*ee)[_&dq)m@Wa{u+Cm2hw3ﴧF煣{Z9gSz1fVwMvGrw߸Yx` “~o/@w_A͏Kv7IKE:;-_^W#zI,fv{v[|xgOL{|i٤lmQ3,IF]Z5Ql,x3ᘊXOEɾRhA$Zp1RnT%,\r(W _ymw9%b6[|Ӳ^h iN&SQ(2*¯KQo'ޞvz J_?5?_ qնTKNkC^L7Ò ۜmzx@ $eKU7$ TF+]?vkwOnL+A N 4Y(ކUZ4KtyYS==T hX#AvR퐡+^n׷f+ghZ09!_r}o&V#K40<4 /%f*X_m{tzkdx0}U&wdҹ,0IyȲM(ef-* XΟ~bLƟ4B| |ZBȈVڞb+K`QA?+gG"gk,.6zݳ>?xg6d໱g`oZ>lP1 pm;Oԡ`yJ/DVGұǔ]n&x^10 N} 5aY+8\-:TQqT$GS7k+pHEV2ʓ*z"1-_( CRG"[JqqyȞjM`lLGE ,?2& @a"ڹī>K@K ÃoHKlz24ǪkdNRq}2P22*c*3L!?a[c5GH,ʌS%Úy&3Z,zULn4u +L0x>ELbȞڶ{0#p`DhɈvKwKS7e?$,q;%y-$Ɍ)e>WO*.8'Z|1ژ3OCGʀ8)Efo|u1uÆbs?M<'IlVS1.rTVx3Ub'Z/娔 zU6`ewmS|[n)ۑRa]aTD=1m(_&',R\(!TD}. RdβCb.>u~ps6ߝtԶV<:!ߙ[;Zp @-ur5z2*@UKccj0QM.i"]%,TyD^:=]+?9$~1 :LKiGxj,J3a[7(fO!37u8UMAk$iџ3tR*Ud\[cW> :cl*:( S^Zhl c)6%xL5]+P|Nǽ' 3l~V_>.A (*d.whz]LZ )(^E\FG^d6][1$+Fެnq m1ckB9V܀dQ"΁֊j/ D,^;ꗩ:HZfrX h2|fjFCP3 sX 7-i0JGV,5]!7¶JL_FYEd808W 3WG>"a]<f昕ٹAKT2 { IAP]Hd܂{Q~Od}Tm*d9g BQ:빻/ Y;Od}3[E\۴!\iRQvND+ZtȲu\;UlȼVQuP t6(. z14-KWϣ yyWx"]8jB*)(ԡ XeJSԖc~x)(TdKl(u명5b|Кh'(5p-:ޢ6 nef+X@yŸl]P@1x`S\#X)vGA|dP|Uaޫ.&c򜎑l ^8M D5Rcrg?<,O=&waNQb`7O (0xZ!ꎏI wDA#ZZ, bߴYP3"8}w3VgȠ*O ˩_ RN)_s@ŴٯKCjpڑ.BL@J?[_(XLd!e|Q8Be-Fyf͛4}'#+E5JOϋ\hvMxn7u~7 _kz hM'p5ޞqח4%`[wS/=dV:&rثtB%vt-#EUʯOB>6 KbL>f> eݧN&{\o&E 8 S.pD{3(dC`XR*f="-dW~֬#*e"~:xh}7>S] /d @*t1BR"sxc-0i%9*^6Y<5Q@ Vyc齫 1 U_UNpg g 4{&vV@"s@uB45F>ĨDik\5 }GŴҴL! K;qao{vVz@LnI^_(|G|?ӂJwmeL#jY.qAVL熕;~80Q!:iԟDM>6N}u^f0]MJpW B3? ^/ZbXfV&dEalC:-͞mf<1X-`1m p[!?"b}i/B:̻.@.: s7!>ECAnv[B;NT n32\/gEq@ZɄ4jFOkpۻ6W?XZBSA/)~JV`oQH$nRX1UGHv+,{q}H'Ҍ5t3XM*qt$rgOdYF=aT <)C9ԁY=FlV)!U11i`zt˽VFRud#x\NJ}.ӰPDރ^l|![I< "%t߹êwb`g\2| 8^,%$K%u9ޖ]d:MX Kvz@i?SPi\Šq_\u݄AjJ4\G_?gÜ(ܐOzcF?41r:p!u 1(Dآ#k-3QR G&j:_!I-KX XXr(pوѸ{gH///z"3*QDXZKM#|rdK]i2A/H"շBe_/YS &*aشvg7D Cݣg0CPAMLXѠ 5D㤲{0{ J` -:PϠ 0f &92]Fܿ>Ӝ?bQ2YK$#(oQ_? [UA] [IqE8M;[r~J KGԊٞ(`DbAKf׷b#- j*/I+!_WYxəal( r+Q\Hniz)1iؚYpkB3s?'=bNXI}݂YwBCAս H &ؤe M$]ἑU_%֫Dh)AɦktqB[$Ps/!Op ҃ pT=f]k$λ}Wbo 8j *C%US0T* 7m.S蝮bC㮞nh,:ct4ŊY3G;/W=N~2@BQ;lk恾Hu#nҽOԹσXe_iY3vc`܃B^&@;N̰&TDTI@&F&pףt(r-ܗKf~oN3ykͽx| mDkC!Qz}/a6֡/t=1C޲ (y\ V§s݇C.*f>&ΈL EI=c1>?Uyc7q(t@8"cHlef=?4!`usW#Lc$Fv$q1%(AV%a6a tM/a,w#dY_웾sccw e2C?^#Dv]!TqhzJf.<,YeCY&J!>XdoGHze% ^8l*MՋl+=Oof!HȦf^8I6SIޕөV<-?h }xx"2p? /(k2)u]a:j]Q4rfZl%w?1 33$~ܳ3?{]NIǣsG}>pUw0)$ - RbCV J:=p_"c?=*k1~x:Be9-J?V?l̟yh{,b,b 'H3[ WvoOh=*ूN$EZnr}3my"a3^41 SPL 8$~K KʌmuDAw遣G 'G#M`P?N@(VI+y BLCӘ8V%.|8+:rWX: i$d{3nR k*k3\. n/PpOg }Jr+o@y[${",<Ƞ?>m嚔^8H<ߡi.xj=h3@CQAOz"rbx4d{uBj >T,G(9Ӷ@^l,0ʾEwEBh!\HhNU>J6},) xhJ.F߫{a.ѫvUg~ o 9L_Jn$q+05@"t1UZVKqʸt.ƨ$Q,fv9A@ܘIm Yij>M4x9N$[ (>;D/0apa1ԸWofЈDtCP_y%.}02Japb7[FPY23Ԝk#攸 |(OP3s޷DLu՟Qm9mtdCUэk׈j4 *e]݉,&oPI{?¾F A[fj]5ʃ(/bϙUM,u[LQ"T)g8o`+hTDŽ +)p}6 GR,[x#$"r9>.g}STOeL4уjhi D%%̢nRl>-Weks8{TWq\=k-Ka2rgoI/yO®?̻wSk1uhiL<zׅ4%rLvV$_%}s&Wa$Wt'^C?J?SLIG\u>j}8Y^e*8w[h9wI(_w&< E#çt`?Fǝ 4~I2ץH0Ȃ7f~8C5 pwKI#`xYVu[>)m3$g['yƼPuer$aWn nsM?}%r:@%&f<.\<>.ڟ-j; 劧d-\8/P ĈC|!oi_'Iԇ!| %-?/`҄J 9v"'X*kL< L._:B &C5`&݈4ܘK="g9[JZDt[Ⱦd֜ı 8A[P lPIWa Xf"\#Tg~4q%VZf75@<=D9_ ;vpxuGV(@)BMe<:J: '4mzCY}5 mZxzs i:HdNL൳Ur*Ay^_+u{'[9G@ gź 4- JzBTQbd7螺3.99 (~fZzo?d0Y \QfJ,/EPtTf1U;^.xx RzyZ*g _4:Qm&:pjyasH1IfNYPfhܜ>b\Unl{\3ѣH @b\P+V?zX;pY| Tꈶ<>f^ՁdĚ5A{+Gοp`;#s_l"uQ>!4BzgR!8V8m5?c7Yȼ%zG!axk޶D<) KшQ!w=N-bVrx\R؃A$zC p\^V@h#G9V\LF2qH\W q6(@9 ><]eDɤF]xs 9" Z4c>ǒ;';Q9э[,ow4zp!#,V(C .$ %փu=Y~5F_8y>|T9,7m4øX7?0SoA٢8@.e)#LQ=n%@^Q꿹x>ç.?Jy(w߇0ɲʘP4Z^"Yh'u{,גĆ@*kK%,SEz_O4QEFQmhmc/ Q(0uu_cYɅrZ9u,/]]DSw'9iiq]\"er&e}bwGjkidrGq®juN]){s粑" k& ixٜ5qvz#hXqUyr:CK @𽂆&22܊VPT69g< ]D04tnMqF^ MeuT+вJ=.|u=IjRWx4cI惡WXrAЙBwǧ*6X%Z($\~`f'.ۆ?Ek;Id%6N1l%+bR Rj,w4):ă%~(p5ڭxLNnje{D1!#F;.c-HS V1{FM:H¹tv,J~q3{e^ci9Wx3+#^6'5I?a QHVwAb݈C J0 sC3r|~\k} }'߁ğzMh/[YnEy:FZ%oA(A`(TnAj9 ^0lI1c#̝V%v|(^+ݫI9m<jfpkl]v55 ,gdO,dNCS0nc [ҹ%yb[/1.m1>?pZo)0|bv{*r[|#z25\x72bP!E.QD<}m<솼{c3҃`rZύ)* -D1iA<:k$dDEÜU jIfg+WFb#./44C˂n$&RQpIl#%L1ڑxZ  ZIJT6nJZEIQSZ7d ܖ"ۂ53xdP;#m״)yT:XQNneOCm `>8Fy2_+8v#E@뢆C/4rd#*f@.qRj `J[W]L6Lh`ȋ$e @9aNK L9&~%_ /4E?/+eI̒OK,|Wˈy(4?P ]^ =ĵ UTl./9rJycNJAw8`=&%32an#b߹b6tI#-ElExaf%[(p @u,GpbS ii%uEp䪃#)f4bOqp#ա?@:v5٠jF2$pɠZsP%yQdT*1BGdf&xݰV xt -s8?&KgȟBΐI _ 1-:'rn`ڰmqM#t*sl yP OAGgNZPgt-qͭ躍э%  !TU:EEO+ sD%1 z۳6ߊ勗qt&%ۀTIh V“Fn#mG*KyhPR@O}DŤIo @yӗR;JB)-90;#Qv uM `K<(&Q #xF%^^ww-jZu/.~BPnA v ZIE%NOS  dީ}U <$tB]'w*jTjjC'Arﭛ1(W JqҸtPC ,Kk>3 .p0XJ7ʎA_brW @'3dx I~>WZI)"u=_ ccCՓqpHD\MM1#9m> ɵ5DڀULJ!7r ۚGJ S F(ԊZ-91$eg:~u H&Z4uޏE*cl': MA"  H(kJ0Mu}"^Y/ {$%.̮SIk8,WCjZu:gHSn-M3(KcꝭA5J(ט_2 WZ~](F*q"BRW92~ PY&GK2! OѠ*8:IxՓY/Rdr ؤa шI]^l8ۈf tE5˙{ ?w Ho2=iNFla'وԁҏ([65%O$ 3k|zh\Rm6G }PyBw / '~/Xm ^^Lj5q܁'` 3-7)Ξ]^txhxd졃3(e m .W'9Oŝ@TdthƞA2_!.OAs|;qj׵轎#'<=ߋ?FVxgVoHc8 T&^om s<1%`YoھuXQj.eυ i%z6߀)\T>0t;3tLqSOCU`6TifE b}o;o=;&\ڢbYwPyA9h5)j?}&٢D't!-5mZ ad}I4ϊv;kG-%Y& qsmΠՁ8 >>CC-X'9TII7_{:"怾$mA?o]`KZxPoA˓@ Rև~yfxovWiu<iՁ@?:Q>BФ TuW,Jb4񋲫Nh マ\o/G %&CDMo*j3WZ[%5G*Kfw=MOr5nf[ɀz {8?UvȊw|^jAbwO-+u*gspy j]JR;Do`1Ka-?!i(s͗/+`u@wDBgsnw"k&)0a7-?/F4]Iu$殅f_3@ib@nX$iQ~J7F;'$#ܴyN|IÌ-ڲ XEʁDDuF\ ΗvnՀqE}+,6l4Uͨ$Ӛ+.U?/Ծ)s.O1PiJPn>sSOE'~5Y\6%d(AI͗іu0IS\rŹӥ K>sD}GLMJm9c4r'J-q(8=@2jZJ3'0A:诗bq9gcixNS/pF:!hcm"h*~kR `~@񷩗5I) ?O96hp 1Yӣ gX |N6rk:u㌹#ӫ(P.'1TɕIe{/D2bucRXe W@zxhEǯ C==Ikk)E.Bx"鰫è- `k$cG/d"Ho Q,NT"N6S$"<}ҵ}d{wL.7[c#rZc:Q<6T}gX0 &66ݐP~_2;Kg[p $;/֋@I!S:ciiq{6>s4FUX$*kڏL\k}UG&.rG2/EV==lV";q]DAZHA}kTkZH+h١.#dR~}4 tMeR_, |/@:FsW- =L/%<蛜ҍ[t崢mWZlWT{͍߯-R9)Id&7ld rpbi ۾fx/'UjJ$v}-5k cOgv0?)M3Ht|qaP#+S+ZrV;`L6j=_W|.Ln\-3ϙGI_){b-Vh`ʘ=8U8y%,'gK'u2y $HiB_( kBNu4d  I4yd$GFk\1\(`{BLm-}eFTG. VjF_S3 CPme(dݠ4x[2Lp|8b=%GLG\{c⠁iѣ6~Chg\|9/YK$P3 ]18@I4F fUXN2 5ӛX1~GRaEphŜS~jCx?U0ZG :L]xX_A;m\tAI9@"@ &cfFtu>e!HA~qXnjvqnV !u"@ȵ]K1`k'l{NXwW,& 1$hX 8k^)QTpFFGSNq8XELmsLSso]"~nokﯧ:`;׺E!ONj~uX9 Xk{קXwOwrkSj!В3`u"W͉67s^x(K~rwڢ2zK쎗k?}b{>Q@O@0 0#a{2LtܶŒmox,?m|5^j8㕡Db⣤b> u>w}4"􆎆lZi,$ ™%{cV0ަBR\!["xN&tq\'d'j'J^eّ%vF} 6mDyC>.gԯ(WT!oX1P1hW9 @>Daz̛KBE+JS+RZgC7zdHP3?VKSH،U&<LKlMtfGb7'D_aؾf4Kl1M66z.^4/ۣBt=Һ1/=i#eyJ*Y]$>i X@y.[^EU΍e籄 V/:nS$ѽ_h.Ga|(;CA[멈C$ o+s1ufفNm:uLSJ.U{CѬ2q\&S`"ѓ%im>/rb `̲i.i9߀e>+!ouRj }ְ$(2lat۠ẂVc\N(վPS*3MC> onЃAD(/{NևM0 WRWk(sxXAa$,/ Ѡ4:wfI,80sd7M/̈H 61s%ـ%@ sEo%x! |==G>q[/m[МY{"v)6G^n+ DhsQ\կڦ5S\hL,"$E]* %|^L(xsanfq[~ujXN㼍/fIzc~+t8-7Nɥ`JsH@޻KV;yE ^pBv!K!}\܅n%,ȕRRay_m ẃ6ry"XGɃFAɑ6'C<T&r&󑰂X z-R_ᮕ>Nsa`=3HWUܗ̸|Ms`, `6riaཻnOی5uE w5 _o4jf<\\9dOR7c4[*MzXH;SE!6 59i@ֿ yς*dbqצG(hW+c-%_nE@kΤtݽ =2CMmf&TEҞ ) .(YHOja+!]l.z 5s=3MMӬFNh(0XP7t5T)4jT(zÌ|Sya"\9_~Mec.2ߪ%Uc49?QwT鵖z2i<҅$ih˙?LsˆFD'ϟ~}N<&#+}@ O,6B/8?!mlwLŘQWN55:SGD d(D0\$Z (%߷SqQlLQ6p'cȕ] = cst+ .ҶClf-} (ϙ/`ˊǪ01v0C~*S-Zq yhGsjI JqP#w#InUPnQ`4BQHXn> Zt %x`/IB G5\ijri3i./rAzR#?̯˽\Ѿ4tgC<y)(& z?v$~PO AbcZ󷐲RIR?{(~:ݑ:3y'?tYеә0rWal>H'ĭᆫt);V%O&w[94;5=̙2~ ?_X`NI7!+'' "+@:I~ Ũqix;< k .s$H"ӕB)Z+0DeN45ΈnV 2i lAQ5y܇hw!{zځ,]F?ΡEߋ, '(<jkr7 P馱%vG M57Xu#..#m9 octmXRU =#Kt_5b!Z^n-. E9iQ- Zb׮+J)=a@oXC2L~f ѣs+G47kcr? q17;W%xϋV9HDv$xB4ӚVdu=DId6W";i55|1;<.)Def)#P+^*$c*{.fJIC§*Ij=Q즚VbKކm~'my0wHu g8< ‡ 2<<"nLb*ZЮ>yk-pZ p>\):te d hmמQh0-~$KX.4Y"FK[ѭ+fiIz:HJZ VF)b3blu(G', Y5bWe*"ڟiM}1ax;/ 0T*G OCJ/wDΝ$LUIR:Yߒ Q?_^ÃRū{X&v#ZwuehŰkSu9j5&Zޣbg4(*&V[:hիsۀsCHgߕҀLBjf}hkNٚ4$Ͳ4)@Gs QysW= 2:P# Az,2t^>oʕpXoeKgnU+HfݭWY;ٜ1twvLԏܚqH*՞#KSj^^)W\RD!--v1& HyHH͖]wuLҬɄ@rGڧ kD푻 ZvOeB틌C0ϮtŭTkl-0`\v0\7%]GN\<=ZY~E}w^<,F4˭eqthG$|.4{p A;^t?]t1nA㺿-穸4Zu YWRd8:|b2D[? ..& M;Q+('@{bJ%0aPJbݖT,0ZLYmA] 7b+)gp .򏇍]A^nyBn㧭xı@eJi2כ9n_Gn%h|-6h)(l\fw9?Dɰ] m|,Da֘-0 !6!|w/k8=kp_[JVXKw@.?GBp *loib0,tA *^(@Zbo᤯])Yc%epS{ӿIX<<iUT0qӮ+) iƉ)lyu NvD Qrp/F;0%26HW| !~xA=[8b 8̛Uf\f ?ʕ+.$>]fM,̏T&d\ϫ.>V *k_E*t.h;SCߩEdf͡4Jo%ψ=}uz8U\˺;4o`-Uzjkdn`[>_ra{2݉*0yh礅>=i,h?8I^JGbC9_Um֩^og׌Ν0K'mTh|cҎjhߗ1xZw-ƛK~WnAP?($˅@Ĵʯ|P;*ɚ+LL2A4@]n  0\K+ a'yM~u:I֗߱~.!֨[k+J#JFIy{MHqe(Pdo:b2,g)Cd%U1 mhasˮI5}D8}$?Ȝ{>xPIms3ZhS=5ą2hCWGEf: qeEBY * Yh-$_x1-h\yz 1}Et>خH=MrnJ z6KRw5V~R6A8?a 5)J} vr݋0E&ԋ5#yx1V @줁XfLg_RήC8:eSKX9z7?z;q=>F:t `LhIQ0>/[VY7PTB}r'sIdSO]>TIo ~tU*pSg6eqFV\.%duFlJ]2(9+uljT+_]%~Tƫ$mG  A1A7;g;Nlrh8i5F 4zXV1\=( ٍY~>kï짘ݛmga؞N&@iAK+ZHBӊQ%=vJ9x R*qYl!PN@ބ ۹0݁}W;UBp66 д\!2qBiItMg HD_%)JjZ$u~D+l3%Dh^8[_RKk-NхD yU# Gΰ=;ވ|XjdM"h_oӍJ2v`cK9p(ߣz0`FX'ZoYә~ hݨq16N%FӮFHus!I \ƵUČlI'MmS".R]ÚPYT~eM].$d4K|64[eMhYH_sȔy"[*?Fo^GL(ay|sX0@{eq ӳf‚LSxq!Q{Ez&]\"+I6JFi in\;r+U! nVH.r- EvPQg(4gש`j3hdj0wuOvd+5xGyOSmj^`LljO觷adiv27x+FHɍ.GJJN_656q#4M33jUb{} l-qD ).- VQ+v~T4PYm%Z!|5얛"~9ex͠-pm@! m̓VQQ@agZqm} ӽ#Ieeov,URM?ބ!gk6wrգUxz1r̘M }GzP]2RyQY'lT4h ,x_=t*7O/:I,ϴF7~!Pז= 6Q8 5:z[nW'|em[9Hv.F`;KE+c|@~0w|&*unk6<.f3L(xNCc4?vxã= [L|ԹLb0 u̚=vZ2o 9\OBM5y$e:ѸxgQs+\6RME$MԄz@IS5BKzAڶh zm%3aK?h?٩;F>nX/~K% U\g>Y sVu5DǢE] `ӒCL}0!\@o]a%Y+NrtZFGwˁTn#egtQ&lK4)XkzUE:Ɔ& mlMo"GoMҘGhV𳗿woG4 hWmoXW{1fl+㛰 _3awu175 ث㽇rŋjxM": F7-p3"}7+)O?gyܩMQE, %"yniP˽VMRC̺~x쌃y̛.yjc#$Iӎ"@ !DPN{B"XZ[3@n`N/V/47?М*bp.3fL$Rx}ENt6CPpLC=LrVQGYaB0 JR_˅òKϮS,(vOsMV.QYadNq vBA/tESf [6F$2K08W/sj,>ݒMM?漑\f1Y-}" (~6鄫C Sr\p)D{@`.ASQfFb*Vd0IX1lU}$EY|ovɧZUN+lU`&N>!0 ,(G|xRXy曈YnQfI@HPNh e uNkk%g 膗-AĸtgN`fݨt?quȺka=ɕ\}-CW BUm]ozHG#Oqu+(V`]d2y]38;hjx94RyI'іw2p5KCiyfk#CKMZ7t q!0DF@OM0A[ !0IwƝ,ČC97rPnEĹ3&$IamLu1;n"D(R.'\{w~?|sU,@kھuZOsɘKB_L(+4 ӤGTEAj=,`W}vm[ՠ&9LWtqmtRR7D &o'fj풻Jy--:,}^=yUaEV@A6_oeW)?- GuÞ逷[UBhG 0FuZ:wuA_&_h~B-g4۬o]`f2UUZӱ7 ` ,5 sd a]zlW?3u1m$;j=?QCwRfZ;Zx?>l6tnT '|`d,֝,!yZk4X=io}x@|B-Xp9FǦI%CC2×f,,~i񛋉X:\e04 oU7! KjBX{5Qb.En:<pΰZTǺ^$PQU솦J9ϰwlʍ>4G Ҙ|}-h;Nm\ \L66be@L2voDUfˋ؂kDs8KkpS,?Ɋ>\aPwQ3dИ?숋l^wZiZPlv^FCb]U&T=NV!4gyo[XsơmG}G9]iICB"S.䗧hDVyñ[ʟסʣEd~[  xS jo7H% R5v@ x  Gj_\Yt[ :.]@2^sIOSa] XA 1D` TXgߑizۓgge+:( RQ+BJ"&e 71G/LfǶN)^X @v^v:X*8ߙqh?Caٵ90= .+OWD(H JP\AG/t̲kMLKڞ%N+ N7'32 whǻyK>#NkCa 0 >t1J*^2UyLK,GhZ6EAD`STvA{rIF$?(!0e 25H6YvfVp }LQ\-g@qV[ TۣVJ;Š$҃17rVۊ\lk6+г({/fxhQ׹j7ӑNԍ݀u^K-l̘A|.ǂhN _ܤ+ >ILmD7t=o:qɋK/:JϤ(L,όed$I\JHShϱ/CF=}q&`ElwE,O.sabP-^]c5eN8qmFďfOnp^(as1frڿ{ 'eD.n^F'lH2)8f k>J8} N@`5iׅo" @~:nF.ZbPLfL(†rIo[(`oMbTsҳp~N@>o(YKX0^LA `կ++6E(:v>]ga`B=+ߤsb%|Ղ}t=zoeu:.8NO,4p8(j`@Dl2vՕ) Fq"PVZb:rHDY8zp$jkda$I?+'ڦ_#ڃtq >ʧF?t(S8t6-R 4%`x=mž04z{r'G9=P0usaFu|.]m3,)/ B#Y$>9GQw3`&kK?;IΡdf I2;M +|"3(}V:;4>yg0gX'{uN "MFfs# HXՕ[fRxMy F2ufCD1"S33iq(p'̱ˌl4 :r2EũhTGXuN07Ukij1h1Ddި[rإ!z#ՑbЯsr24#O??,yQ(Tݣ09fzZ>͂E*z*~\LŚQ%D˒uvOF2WXyÚ4Pw"&+JK2y+ȥNG7 )?>*8ijG(@Jv4 =S'xv;Ij{HUlq GЍ"YA8A| TY; BO2^zd< 0\$t{Wڗk4M}d/eikSxq d 78y{' &vLUٕnʆf=.y3q܃W9c7hʕRl88*w. yyWz o;9(jJׂ8u2&[%!RŵC0@G|_/~de7[$m&+!;ծ~ (>'W} 5>~aU EsT'+(JhUTmf6Y6ka,wdwZvt s;.lOU^u gH;iYqmTpck8to7Ҕ4wo@I NꂦnG}#ƕH&xOp##u pW^ wwb'n~㻲je<~ Ε5M%o*ܟ2E:XWՔfĵ/qX^dZ֭ >MӟPk7nܙ5-#pT W[%u@O:= G]۫CpۢglGg0 Dk⤭i>UDҶ,.rK´N8+ II1)io3ajϾe}хt&Q+G*SA&﾿d8l22,,]JIpq7l[+ܸ4KVWYc %[&T+Q(<aBd Pд|.&AHd0auB ^ڨ`MVX)Huu|炂\ q魬Z'g>SBՍkqbsVVr!R dn,&MtB+*l"j¤'ғPR?I6$3x kczcu=SrؽdL+` ɦD\yȆvϽar {kS}4׆3S1ŪpJדy([Pjl ݢ`"dʑ5>Mu0 ޵uhJ$fx5e߫ih.o^-(=Ѷ8HղZ~V͟$ 3eLa @0؉fsF?TD m͉ziG =`df5p[Wrk`bǕ=B#ةpQǪ8DZ4{XTzL,ʛ] ]FZy@Q͉Y?C{KOel$2yᔩWyHAU\;/9`Rϋ_E~n&j@sx*vi˨䔏ۯD wÒlY^1F٫anc_E55.\iQ|ņ{opѲ9[$䏜iŠ/0^B=^TvkƲ.ywA"H ?o|)G_S$yсb:oB]kYl>6=UO8$=SYm? >f@;IJz闺T6]u'I)lD\# @{b^-Yv=e83wzuWgޑ5@[NiB!oqb?b9UB䪬RѮ5Sij~ ( -Y%o7˺r\ȉVєrt1 9W?%p̓Yv? R{=ܸ8|UhsC2nғ7y#\|c[& 39<]_'O$B/j*F\He;EM]ۻX!* ,m{4в큹]!^OE`qr6yzeaT:.`d{d<>TٷA 3)ESi=\.l3V ;Z,PY qN};l;BU a'Na 5@~˹W?͢)^=dv8A^B\߬CHieUA" ra?43+- Y^҄㣜5p%KO&8Np sY~jkG i$4Qb<9< e:uPHN$U"г&BŖ][|Ն~: +H.T7ND^'Arދ%XنI̚oP.>:G\6+vޏn 8U>E ;EL/p͔S|љ撉 `9 )+קsU6]IBhPdǣD tFeⵍAk$Est#Z` ONl=#2I3R3^~tHs1O^o۷B2jƉ@H^NZ,Od4yP :F }쌝pj_+k~[w_*fbbإ7P^[Uq\(C 97c!TIoj:rN5S6#eVZ6iKNpwFS B9;rw&FG.fqƷJ |^BsSgR:_C Y ߎR+ hw}+U}d@ WVof-FAni''^_ń7WJCq֒bA;>~A?LmT5r9p|= aζ{3`q!.Wvj҃IAG$]F*p6~ ozhRZ39Zb&H%_$N7tZE_NoO!#bpǮɨ֋fDE> - P{~Ke9fC6~)txm$(oM&my(+Ԋіi1me *\nULx(]~2](ILDY2#YPnHPW RP$֍[|^oh=OasG;'HTsR0O'sq6q]Dx}7bϣQ3떽/cֲ߶[s)?lDZH>{uQ8Dn J>nzqmj`s|T )bP}lMmCxcpa'zg&A߫N@:Rva,>3Uܼ~FK1Δ%~<6, Y2|(Sn,$r8~hO/m6̦:=#g!)[K EcP1X>⅀xvp!ba6eF\D[Sحc3i4? Z x74)c/Vi +T AwugW!-qѐuK! EE.{Z `y*'\mfJN_, o+ Y){_W18N OEC8ď3ƺ@?] z˴^xQkK6ʬuB2K7y^%@xa?O:>>ƣ,sq)*:{)҃ә*́:ԛ~-h@s*j)>GD>g.E`՛N-8up'w9~t@z%A|/`'zq[=fs1wx,yaO8Gq"r}q`q~DDP: >/왍-1ABu1zZ^5Z-P 2B(v'owh*7c[$#2% ?{n"'ZO}`rf, %/TX%d0+.:i[-z 2poy>XTK$NY %}5p ^xh)ddmm̽CllcNLߖ5{QRH٬oܚk4&W*ΡB?GKE-좵'ǀ)>Իk T_xC}"L0o1Y%tUHdlJ_\Dӕ-r SJqJpj8$.-0q imՔ6 l? ΐ_LOh~Kzl4ّ$榡 DO|Rɀ#v{6. Yh4wRuQr#YLbGjmZR%{&^};xe53[}Npl!y3K, Ey01֤Ф!|QO۹pF4΍Zڃʇr:e*.9%oQmNYH3LDŽõ96 elkijud+94dTW#?ֿFӔ6<2 wA!LGE?l6bS& A>nFRP5gr4A5e灸%X;ń;4w]kF^:!|rgivx^LSA+H"47k|4T76_ӗncmb"C'T睗'qE yHI ytawV xwQEZu " wgF!MG`}Ã,S0'P(XQ,֯B#{%|/$>?>+#j*N}tRRBFEFקCA߼˝hШ̱TtTͦ'_hܧ,O OXqC 8G+F/^M҇OI7h{coUf]{ûndTF{wXzݣ~LadpN%R@$L11=ܛ Osk9*50;>9u/:wHFo{ӗýꆉvMYrmiarB(XMakU# T 4Q=ӈ(Jf vx?ы󠖹VfGC+D\+P#󜻅$ix^3ZvzSNk_"d<*tt'$NS Ec3+ × !Nӿ=C2Fx_A Wl  &]%/R&B ֔C^gw-4ƥ]u4!U^ #۰^hKJ&@8rWþ'p0]9N:}0EeZc.0V'@AQ a  m9okVؘը5 !@x9zWͿ Gh^6Á1h>$sFu^oԡf[}hZ "'SӟEr5 v.1fFe}<uKJmV fNX _TNCgޣqlҖyr'q8/*E u*_{*1/:Ϧ<7^cvd?Ӛudt^4#V37y2&S5.k8~RݚP49jPtϬs^M/ h[hAM֞IY+(:<$78UjXlIENfeK)HZߛ wa1s@}Z -2'7pc:$@r(9N r4 ,AYr7&{6oM?;44`!Ah; g˜|{r β[õ;y]ڵ H@@$(LmĠsפ6g}IQ:ex51pA#*bʌĐw+S eRQއN/I!fY܌6|Hb+*V)VD!Ƌ Eq;5!TKL 8`%鴇P6YLК ΅uqo%*4٤5t97Vb)2ȌO=´ 3LzL۾{>yԃ`5+F}5.g>+S wUU ӿ]&Z7 [$Bn1Է:UK# GqJᝥeH_#a-O6do]jJ+u}Q5pfg; 7-[mZ|Mx29h3 LK>~^Hl4WW\qDohZԑ##b1tb(v "E aC0vw.F^Ν2=TT۶>BEQzobr؅J]8fF?D;48@8Rv{8б9zJY8peol rt2c]>_ 8\??1j)P-sB曽^^u.$ǤjzFfb4'ߐ2Mv_tT13In${Qh~$ğ?Mڏm"ZQ kc*^\RoU$QfwO1J- D&9%I$49G,KfUS8XW\\JcE5a%\l9do1Cf[Խ9$)c6o+*xe'{ySr ~ᵸeͮiQËj u=םe~ Ib'սG KET&/sYlE/4ؿ1B_'/!$[2rLJj BJU[_v:atuPfQ5+دwa8eU|>C<&+l~}m5xƸiI5a/#t8_1"D> Еc@ʆ.g"s;h x\q|~/S9e) R Hc\(yuˡ[m#KٝLcΥƭ:Hcciu킿E5ix~plK`vٴݬ>$4\.)5ya[wð[ ]"1|W׍4'gZ/ p P,#Cmu5;@{ r.FaGZ?/g ZF>{ LVQC/֫GBZS>#XZ|}% Z拷՛(iؿD/O@N7OWx֖p:Ȼr#.*#tG03RLkF ߅Zkf"#vF0+ӱWO.Jea2o&+jIA@L%n8u5F؆$jWLG'?] Ƈ,ʔ'R| *O/]򄕒84XT+[ԢE_"ix;igEC3[#Q&BR}0X[Rf富Ckw7H|'eO-Ob8D"ۖQ:3@ R ʳEܑ4Y hӹغ5u%TVrʀV V)AqvmbbJf|' ߷E;ޡXc2VzR #og*檋[#c+WƇC >!( lbRpi4:#r1ϱ̘ް7bE iA*&!&2ߊV>LhM@cPM,jpD؈k.> ߏ,A8q3A7Zfhd_T^7-q->{m]:e^f`*]ςiMiՊ @R+V:(GȻ +Q%'+VScpy2ãq=~wKuxf;U ;ϻA'tjewE GG2mrbl21^L10ٻH)3ĉMXRDJ~lp>8 ;s3k4~>RB$VfPN,ZDrmE;(<+cQK)N~otSSo׹*8 IVj>#jPٱ蜶$F7eJ9^t0J1Z#imIP"e%F-}+Y+#H >]U8 $DEWar[`WKSa;UgǓrѤi v23GjomQtH܃yTd|<].̽*^t][(+ע0 Q' ]hF r8&LC&=Y `)X[ Ĺcخ)B措T9V`+nTYRY]"e -_/=wPNi-4Ӻ޾B9WryN&Pf L{$mk?§6eC#A8tZs8H<ݫgS&sg n;xT?LFQXm*}gx4@tt?0u $ ZO1_KB0mZu9K,e}lǭ5|` |'$4m D&~¢QJ;ר;K=]zsu7Cۗ!qjQGhe%DG"vbImPP\08Bf_XZR()v5#@Z:Aqy ᧿㴩#ʇ{80& 32}YKpiLqJw 5F-,-AJ +S:1996$AI*dUlkh62<$eΡo4p 99);!ώ:RT1Xed\g#D&w~nOCRs\H,'N< "vI'O0$0TF,+ʋVeiwC"F!^7ęE59hkN},2%%J:D׉KP _xwN< Pgs鑦Y 2+vN-ɦH*% QL\~ȉPj;Y%٨%4P쾑7[i]MͩmtBWml lK wmT^(ݚzىv=%|/"eʍVn]wMd[nHui,raxX&eih*|sʨS$pW30߬@vI'+tMV~'$\9@8F-r_-@sq~pfZ=$ bs@'6u^bXx鮳ǖ*L/..pQ b !üԓҫ wțl:qR# ,K $sRL<7!,O&3WrZ`` \awלʒN.!O(V)b2839  c*>/e :lTE vc$|>AZuMyGDAОz?*ϊ&}Ռ9A9>xCFQֽXG ^{N|t6c'AVrzHl;l[gAJ'D'tޓQ[+ 8Z">Y):@<7*a0'"J=hpabg,_0˚@?C38ڭ F?8h^i>rZDzOzvt{I߮ S2wf7'< Bp0`A޲7Dj Hc(d_ri%npU} X S7ԛNrTH{jz|ofZ:D&X^~W/aC j$lݲͤ. U^rK5!3j\H0+`T i㵾1왃2ܶS[QBCOI#l&i ^_4ARW0M9"˹bd$ Q:DdEV 'k:wp|[Ѣwݙ M:@UVv؂(MiūeY}FR8ȶ (ѱ亭įi[RLt;yُCp#`i u;"n{|Υ P@aeq& dlu]&ǰ-rFȇwQzkf#akUQsՂ& ӻe) V Kt+ /Fd!=Tv=&5ZPgN?|D]O E?!aWnUM|j0$V/z4#ISryĠeڋ<4t<9QifI7_&aSRl,G۾gxy`᥽z9]Pi^ 0f T0awŐM..g!7̴̘?KpsRԶo߰g@lNe)A8-sEIwϴ@?Z3 -G`+8G:aJӄUjq'&"E=b&BSa K͍9G { MŽX)3AE=Ȳ'x3뎒ba+Ousjݿy E7;gӒtЗ|z;qB,N+@^e [o @ Oy aXNXq #48Px_t3uhIa=*k!ŅX e>%x j05"fE+gI~ @ߴ+hn7 u/䰠O A\8>ˀ]Uyuc64AXɹnmmr\6欫0 k;Vp`Qi۩fIdkHbSeMx -3:8::'賜V[YRe1BĞT$Vpg=h틮N7pQ&I5ՀHےR H|Q%ٟ҄ks?D23'e`AmSohyE @Y0FJJՊo3n08eX2a9vl)b,D ){]%'Qi`^)9+J3q咋YE$.lF~Sڴb;h}$Wls[Y(֭=qcH x?w)WƴXaX 7q-%<yeI]il#_gbhA<=ېJӕ6"u6#.~Dmih~3{Ɓ"fĝXN{'Д+w~aEȐ |0u^fZrVZZ^4ڂPჾkeXhļ, N&Qҏ>R{ eͮ@,P<2ڪ  ;##JQTBPLPߜ:┴t+πyEsFx)p0KH tap #O)gB)CN7sZ;T[0]}um+ &*OiexSt]ٲIzbUhywAHW63#T.a$DGԱSnĴو-"HU#I⪓Bu Oj=9RO| n&Dv@*:;m͏TiB3HKQ8jAV7&M%߳pb9Zuo67ḦwŶb槾t G+╅tAtB[KɅt;X ` sjCPp0aV k :1{lqI$4/ ]BGF(ċ{edYgv=ּ`sp((-#9@7!wY7qF .~M& ȒZw֒ÞckMq- fDd쐣z6%YThfE#@D&1nn66[R)L>\ϟ5Hj0MUyAҵ+4}_6 ;%:Y~:V-HEdA:=O,}`oO,V;B;-IOb]x_$fb' F'B보D)X* >1¨2)QdꮿV(p L8>< aV34`ӵb\5CкB7+T^wwoc}(1c;'\ IYH}TApZB2RyfBv0_vC@Ơ>d""rlHLD{{Uqh,HR#.35O s%B0r7q=χvnoowGZ%0e~w]Y1t1G͐$$dCGF9T/Y*޴WE躉E߇@&r $4b݆bRa=R1f;1QOV%7)Q0v ͫO(ƻ|D+䐁q5Gq0V13@EYI7;Cd5q *AM`d}q^IKoJis N1DE p{''\h7Rv,Yz,N>k(.Ө *P'HiTtB5SVjѥ9T*|%ܪR ?,<(+g&c>cWV#U;CToX 0zM5R8$dƫ%K+X*]˞'!HDt@Pv(:+)>A5#-i!%RiT.ˁ,@Ô[PowͿ$tZX4)v;AHni zF5psOOW>  ]Y,I} T\ӜXBM׭(:D5Z.?p25O1;~ŭ!'f{XJR)O=Zx~Si Am>=uScrZwL~FBan }|WSMNǢ;ݧO>G0Js-Vuܲ $l$Y,!-PNHlG 1'?£x֡1B I|Yzii#UF0;ӿw+jRALؗjۖ9Lt|iI^+[ }ϴ϶ m`[J=цi 镘Lkhq2d 9j!*+b~9}$4?LMkE"$SY+g ŢkAO]2G+ |͏Ud氪2m+t[SF(ҵ[ |7;&:ՍYI@DFtAcg7(_t{Qѡ s8̲tH%i tdphEZ%)7Hu-}0b["n(DD%k9 h~kWÃ+FUvS$s6"IZtRU[/Ng3MDZhYيcND:AfgQdQ3 B;w />p _ǽAQE6fTL-DYJE7<#}/R#6S)"ה>,||\I :R-*"ݲe1bq.9eg@kt,wJ* <'5APB{\sʗ~\EMՅ?e[2 DdeD1D"=+e[Uijt, "o;}8܆0z 9DZXU3'I@}]~b$ދM>a~FJ:$~s|IFþD2O_+5\K3 aGS\K<ǹn%*_L Z  +\T6MK.z.fQ$5si7JUP^g썻- R5I[Ѝ9h8B}aa_҇kWW_<Ց|P=E8\tTvӡ#Xjzcdf#ä")nASGJ/܄RPnfI0\nKAif0KbZdԀm_v&iv 熝 1Ň!w>㈌j.]Kh&MaL2Y, _&jߊB9 G+SG0(>"*Ɯ{ebMA5@Ϣze/iA_ڣ/q{;X1&4)؋Kt=194B['Otaȗ*vlY =A B.z{q`^.[ ޹iR 䑡AqJDRXZ5ެTԵ|%C((2]1q13&)~~<1:o3|YC/s 0YWϥ毘E94ɺLoeaYJS˄ _Ig:*\Ssv>!3i]gKSP{R- I!b̰,;5).G38v .LFAI!o'1{lž'>XT~!i&d'O/oSޯQ)Ҕҙjs3NZQC-?Q}^=BFQ9j #P' xu /*TyթӧG 8}ܷVL# #>2E:&j+)9A3:& M] ㏯҈ :i Zp(I7}PHO 8Z >0aR7ʩGՒ #Ñ['uFd>9 Fb.~1'ގɴ Q%, KxGQz :`6r'q9G7'*Vwv Qʏ́].r"Xxo65;, wc~A(]Z c)/]=8Z{zE@N&ZnfN)åfmf"\ $,ۺG"҃3Q#%0$HVOYrFvnzM!`+kp;owt2IGB?[܍V̎v8LƵKjqe"uCyݻEYՏ|m!zq(ncb"0ԡ(BtIqvoApu}%*q]Ӵx%pI O!ʯbV@ԖT 自i7&03] 2c'ͬ`Dd sS{IxJ{xws-^z#RD9?y %əͦNAsǨ$mVdAd9urAܣ6YlF>-`-aMۙ]ޗ>lgHAW}xeL&=[bbfQ0Umr+#;a,DHÌv1/&YCp[U4,N1^/{vjoc(~hJB{] XP >c5J])[{W^fdBm^J&;d=Eؒ5:';'Ԗ19 |9D⊻_kvoR#%Ɋ:U/~ AH[|ART vbn8"RVkAF %=ɪb\ y'֐, (^{:\TڿJr7!c~|t093ky>♕F2[ㅑ8~M[<Jmso-c_Cc9+TJhu#(8_pKk7 f_+uE+*h@ʜD*u1>9kB,w#jX۹ك x6ߒZI_^o"I6JUW^[伞AN/[QЃe Abe <|Dr47`.azL:CNi&D* }]3z오^A%HQ@]YRmS$-J͆!T`ُS%"bܣTІ hnW_ ^"9e2йmBb W>PB=S[=Cl>#^htM cɾsТu8t1vnkDY1yA {}&1Z&a#N" IJs%ɪG{/|f'sHD9 ꃕۍ|xN[eŴ p" q/"YH/TtKXdbF+ILFo>9Ε_غ97:_4)ĐY2C񻠮],W,{D'\OS*Ưxڸv bKn` 藥k tSbH-)?Yxyb9!%t q \S^}2,Kl 29[>ɗ{(6\TMNo.xk%(&jPy9{%ŀ/X6KaH#!qvv~]Q_>A .Bu1#h${ysER vzcGq3V[c E Fr oX %^3]g8 /+%zOyiZح%ʩk~h;3csw9hBFH'-pDI0'QJۛV 1QӃ!C$[ؘ1m.kcm P\uXZ\45b (4|E()/ w^{<DaEWWd9MhG9 .z=v#5])ϱqi>ſDXA}OЎ*{h_?giTtE6dyC"CLY?юFqfC@bl}\.S{'}|5'!CsQ]ya=lgPV1<`e{=ޱԸY} URQlb.d=P;IVU6|eJ19tؓE:Y N؉!qúL04i6U|tq0.ֽ{dcz9k({v |J``Ҁt醮 ;O_# jlFa*\ L?2I̮:}0(~6-Gzڭ^C'ʬ/:vlQ)*5^XnD{/Vlq)~_2Tz8dyʼnE +8dڰP"͏@Iar-+|P}?kNL8pzEuD2[R42ϦX`2Og%x;:fiX~m=67R#Cu4Y|s,z bZl OcId:nIA'n@UT_/bl%LBJwԋ_ZAN>K>vk8qbFnfEuD[W+?)2Oag!~#&*fF~ *n} qg UoD[͠%X_> . 79?qv^jS8BSa>&y Uwf= 8:gnf-cPi)ypdIO9MdI0dNj cjNɴxL$iŠȏb` 3'8$7IʹS/ JR(0rĒHV%p2uqdKwi]wN,Zkzgf#徏D?ɧwtSۿ;άץKgkkg%^sV0_mNK^N,?@+oYm2ڰU81NBy 2,WSzIv_nQȴ'XqY<jyB.5bQI2F,V"*”ERUj<Έskco=RN]+vaUp-)h<^7&҄\ )=HD&Tr~!տG{@ԗbu&]jH,u쎂;EiR b (~'Edڣ MsCەmyZ K7I8xAqP8 :ʩn"3|IGb/]3ChKxb-Xg5f fC%z5 Aw6H{_.*D_FFJ,w´b2;cƲc@L0/H-cB1ÒgI^%jFbW%!:T {+* %5N^(hG,Wy7G&D7i5n!C0:]j gBhF%\ GN$ɶ d!>M5C}1;).5.}}zI~qVmXYwZLBAsX B9gSA8Ƕ2U1R ,̄h>< pOkk*_ɫ%#BE!Yaa: sɯT0SLC(&kI'H2j8 ?K|kq`:>~qVq? VT 'S7g1)ouqk.5 ˅O1\>gSsm2Xg GL:8H?wCL *oG$DFۑ A͡fX]tJmƗs CL C&Xw}m)dZAl_ [}`uBEـ)6.J❦{5@i2TOU-pS5ie~c݉D_eL㬆(C#eeITl'>W?cpʈ_r9?NDL}0dF?( QL J:dYk̄+NQ;@Aew? AJOuZx0(̀ | {͎8|6q,o#CŸz1- ~+"=2NЊWhzoר7ci8y4ݰw-y[!|\1eˤjY a*'@U% MhF $7@ƵA@>#`HXxiPAez{] Y@%.N3G0oA\=ry<)_fkZӔWWV{aue!<d}9"Pdf|sKR8%e9 }RфT2SA2FYmf ĈT8򳃟TƓ .5$JcWibAICsbm|QC,Ϥ2dƘ;+z[wPp(5?c̯!,n:l=ĂFSwdv=%Z8ocqlcP h?y q<|~2l?T'ȍTPWoS B}Sr"%v{|[lLM %iZ~ xwY{4=7r%t7E)%F+47KӣƴKBVⰔWY#| VIt(1˦z=#b_lڏY_6T#-t%EJvC#=?=(&<ε)wFd3 78oec "L:u C4'RSOAT;P.%0:]Ԏ&`6`>X;zlHkifVwF2dJM͸DjYs-ȵ-ꢾe?{8).޳-g t9Q 25A/g{z5hd< d7{FkuiY\NE)̊f4#9/ YT3sPgvVe| 9fgb @hDU볾8-"ulK&C 쟋~04kU0) 1[ z*[zO_%i[jۛHs; Ӿ|6Wkp4o= 6sNip٢ y?5vsJ/ ? {}3zג, ʻIN|2 2p8\Ę YZ#E=N#?1Q?Jmk/17Aݱ'H4xMvdf:3] Pt;/a+ش8]t4@@4iGc[Kow6NI(ciw:E]{uZjn9YtGR< F|рwa5^9 )(BJ9I]皭%nwbrJ˳m? R uQe'32pw Xy̛$䑭Se9s3J٬ZåB+:eo" #Bx="kɂ)їPLd vPi+q㥅 teB3])li' }Z%!máxRK7U;8?aI֝jݤ %i'٠nd{ih(RZRP $ sXFeb%,ĉ꾭+`A$oE(s5Uv&L$Z#(BMֱ׃i4*NAHk(ѧtY:+3mFwͮ.1`V/ڕ?Ao3f.Ĺᖑ;7nJk wj#g+̘*~<1$s [ٙ5$u!h4=SQ+T6Ztqzt{`C?Zya޶#nOߟT2P9wnψ}Ck҄wYC boIPLL3b.8Db͔G~;a} J4&e$N7m,ɡ*`׃LӘ`lBjBCW#)hzwh̸H6gg)@HdKa\6Ce*@Ohzz  p*ȶ#g4\n(td"bjBNbcQu!ggWrJG @է07"[SYZ_0X/XZy=eWp^zUӝ"8a[3H(g_;a6vƝ?af}2|Wdg 9CjMmMӦ$*~-.r\ʀV(өqh!PW+fv@^[Ѧv߃R}n12,4T7G ;ݑyTZ205Gʯ|2 +ldTNl QA+dVаf^}0KLӼ/:$lҥ7tmjm%wp|Ԏlf56ni$˗%EҩsYCGP& ՉDʧe /e RoCÖ&Ÿ́U =%V3JOuLzFֺD6;ݎ$-w/pi}ϚWγM&! y< DlV:,WIȊ#H;`vCF&fG6#@T:V>-D} 7zVS%"* Bj/]}<obCCI %EﷹT92e=荧5&T%`WܛC[58! Yx }wH}ױ 9X.uRr&X`Nc]̊gsD`uxǴhT89<׍U(:Јh'q4 ȪLi 둨TP\4"RݷƹQcd.v~4϶pPq ?ǧ}KY8kyG,4g$Q7#Ks1vv`$R ->m5<̼$]bXLĕCqAti@BrnXiIGd\fjJHS"Jοσl"(~$V~U_ȟ*:C ^sW +47 ] $2㝏&E qځ u=+gws=d~=¼e ca:vv󔖶>']F( NyC+ڎ,Û~zI\@+g~NWs!/ t`܉+&д[df;sFׂ <(c ~[?I+ѡIOdaN Z nz/"Tؑ]{ꍍ?mp97[OHf TEF@k:]]O+)`ءPI S9h H ջ3ם[?+SKBxXVI";Wb#DUl2 1[d+ՑȤd݄Kt]ܝV{-ٶ+)E'O*^ۼ Im뾞Ha^"RTf"RݱcHv *&(OX`l9d2ys+ )0 2Q)rToB ǸKE?-&jEyf]>oun)1^.v8\+ W*%(11ĘP#A9ш5m'qr69,آfEzm,Ѽgv_ [6]^e>oz$x#>WE{T?[-6͋IF S#^%v1ӽ8V6AVU SxlzM' ˲BR}YX#{r/~&'sU6Lĥ+Vv]xn?l+߸rSL{@@DZMԼa%LtwFnͳҜe$Ha8ʮ뤧#_#N b/^K#|x=Py\6 iPeDr_ a_]*J^s%Sė겆T֗ԕ)б2NAᨸ<ujyBvK(,"f'5WyWw1Z-]8;l"idL7=`.2G?ŏDjسf ;c &7P.:zz 룘 x=܀TlOb]LuѰVl 8uiiDak3 5r5hI;-q]l5_/P0^zZkɉ3 E6u1-~.U;N JW:w TY@k]:}=u7iqPmrz ]MMZ9+&߹SBgßZo$X藍SJs{w.aK/u&ҌCe )vkڜ/2!D__ .aOГ6g8.o㯩!o0\o3a jL!Dwu I+ݴ&Ы)4)6ƨIr.| *W]oGKUźC]Fj?]P?y^縻HYkAi&" k!ӜxZbnM).Jٻ c>87,=7?5 UN]ȵ/aO|8v0 AKdYXrC4RgnϦ 1Mɺ:W"5AInKC)0Br O̺DuUմ<$1 -\pʻGpɨ5RY>bv KkGtqr5@Xs@a%OΗλw^jڵRnM]3eBZ"w 6б*H9RkU%qYDKm]DѿWN/=N`p]0 a%y:/j^$k%nlkR,qX#v{2f\OUCN`+h׃chU l."dpTqr.÷I۠,+`{X~Qp"+iݙ4yҿd0LLZq%Ez-x v9d.ѢTcE贑P'ob̩Z]pHV5W+:e9$Ɣ7 ~=k0g m. H4kk2yc5]+?MdG\M{1rJw/[ oښB H~<Dhc, ur`*9Χ2%`,j >?ۓ # ayPn'UGt~LiⴵVyz\JP#E};8;I1[Cʚt+5g5o8%|aPƓ'!,M?$zO۽C'wMi%]؟Udj˕'~v1MI2/ N.hj-@0?f= 8=LY92r9x9~tO20:w~4u% Ph֒3 (}v~KҐ P>dxX0 4,D%(= if֗/7I@g̛|xsT(18q~ T]$:Ig k[_ m6ډk0@{̀U}Z_Sˆɦ(CæF_2cz$~.i ۪V?zW u z\LA6&'XT?J`#N$=q6WuIJF~N~ 8l ?k{k/do( l4` +tuF[PWmhZVgPspDžJ[|X"JgN%Ld#b~<֩rTQsl  'X#t'{ϝ#S+NϻJx"q(t4EO>1o%|e}<—hi>9 Ӆѿ~ Z`GsL%ɀ7Ct6@kdoje +܎ʘ2.B`QOL 3~FUv(laKt#Uu7NLRt*yrZ-w&-vkVdH Lߦcmҩخ싉 x7uK59\,R00t;9E,CaN/X QY'YqHU83'~^38kԖ`~JVE|+{Ia G.uӞY '}yZUe0 e[و-@ zTB%B2"\!Zm51"n7a$7=Cc S,딵/ng@5NV^\}Б҃) =~8*.Y6z6] INlcRN[WpLY,0j.Kq9!uw'F]oM%Hp8]z“C(HW=J϶5هC/xQCW7rUyLMA+|4&u',7);zsr'TƢxt!H'pzN{' 1_qLK"=X/UFk-E$HIzPIoCxs|Ȣ5UOx])ޕRx)ɍY)? gDgQ'Aڡ}0"N(c$=ogZ`ȓ]f i~F0vǡJ'p޼1_A5-,ԑi)Ҵ+]IlHۢEAr!,-I[(V|&F:Ricu;NumJ]wKi9g&Duu@p_FNTIBwUV᤮!vC@qMq^W-⫈%b%q(jp?@`|G"gc b lU"i/:x0Ά ,ߥ[DŽ3ÊZv>Z^izx·nIH0E̐E--Y<*ΏQIKʟLL)O"Y@PݩQ3;qUK:089pɽl[O`f t{U[vҧXmnof7]L:zKuP0}%PRPyKrNt㘳X[@?"U 1SʱoR,#UTR$@TܟDku]݄t@4oB.JeMZ%EL4jHp= EYm ߖ"Pֲ!#TXVriFŸ K6+3_s Bw^)xNL5aYTS%.?W\v[P@%6bwDž#!'^"=CJ(#5X~.L4ٿ\Њ†a&憡<57mC(oSKΓBOw:HR>_J3ԔvXXbtS7"7Z[Lkγp^_ 7~?d5'a1eo XI1DpP{1* R8 blo1f* 7RB=?cM{ H@CB@e QflqBNPfcQKLf4ևnle "n =~ǝ%N43R:"v}7гE#wPi0Zxm4xNm몲s?qˆ ?Q)9B^t% ]o?; kБ,1 q"z3m,5U|i??Ops8X֜0p)=YFJ-ț_Pdc$,]dܘXe-|nQn+lIY]z(`s%M&ʼnOp̄'+]_M"N(ߙwQ;֎ Wu; 3%d/،_ eRuA0PhOXH>mNUQܦ*HQ ܤ@p(zKz02vX}B,m7w S,$\.|k5Vi|{=f|{OVںH>4rGȹg=/UxOo+3$9mn<]x:'?y[ _D*i)Ycvmv4r)e{h`D !>{ͨϙV &j*bD_Q\H56ujbnN6=\9MWٕf\bO$uxmCN}$hzR̨aûK]S|Qȡ_Z nil&B!E!]P|u**kKYЗʛVҠr)sw}5?lPq㸔qh)H+͆ڢreA7;hh=<8|c3A43ZJP@ςy^α2gJ`QLj~%KѢlr8McĿ=\1Ջ]%~aBfpnT3&`XFn`'e:2 ,{|uZ߸a ScI8`G#6" wzf᳽kc'XÃ3 3D.Ħ5&(+&A `A?n÷-qx2磑Aɤ"wV||WZMnw6f+PǗ 5ecwVnjU%xѬrKu!δ!_ieO_^?Vj=qpծ{io1<9|y H$תU6@NZ9olFvk_qePm=:rA?jJo?)ie_{?O__|TԲRImM!J%b%@sw`jzD>2g5'eȀmqUN4>@a z$Bx&LyI+AoeLASU{!١fzX[7 $-{'u9nc"s Y!Ɋ`o=rqJX<4F\aFP>(tD+ֺ2a3@=z԰qV%ԍ 0W [ ;w[ʩ,9  K =:\0N|m=aM˙XtF rN!Z]qŪLg"ijNM^36wlYɉX*i7ÚٯEx8a D7b(B͂5㨕0tE;_YZ:]ˏu|tKJĢ',BuuC fA%sa$p=]Yo^%rkX92L? 9D-je -f@77g??C z^'UAiz=,8U®#;_;{w*|qK}˯s{`|X&}j}[im}ԿfQ;qŞSl 7*ӴX#Hɥ%V7E#ٷYY~Dʋ̬|LD~H#joHL `oȀ i-niTxeޡ3ÆDEG޺ 9ߐS84:{aRި-mS5s .CL B7ɡ-f @1/! 9G̝ܘ.RU66#}_x#n 3Yf_ڼi(nE1Pȋ? i7J3b㵞zu b*y"O9o:?k dT)JH c%|'קFێ!#pJb؛}'QQ1iyrXm9:Exw^YP IrT LF<؎#]=Վ:9((M2bÉϔ3|4?,a 8񪅚<,Ӷ%_G#HeGZ[+zs^'R[;)ڎ$]eIYkiZ碯#hKT B(F.N9bɷ0X2Jloe@ ;rjE_o&T0~WM" 39㽒ߵ>&1<غyTf#Y ]?S \zOCfqo):WqCly/ZXu{e8۽O:SGVqb's~h lk\G{)yhR1 T}nCqB%O <Ȯ dDq4xPO9gY"舯5CLi|EtMP=ŋ*~~*3+UsLຂa *,hQ&RJoR"G|a{'`[Ŋ~1UyѦ崈kڐR|2ؒsUqяz)3RҞ\zBdIe.d+gy&2YhyӻyfOvwWS%ı[nT* h\^]G(o)O}C4P¨ }%RAwmY/bChtsLmlgҩ@>ӆ/t-~9ևN U ]yd5 -)}FqIzBfBYո=yM:43YןEl2Vp6\-P Vot/oONQv-77-sƫH}WL?X|'Y!l1ajy$T,84,1amO''nQQ8\^+|D?b)h;ao3gAkdL+E>Æ9bɏfdǟK,I6Ձ޷b x|2>r/ȃ~*u|]qڡ|&lPYx [~t>t ɾ ą2^.bؿjE40T٘ ngl' (9㏯ްJbRkam-`@OX҆cGu [ ѫ:PcCHv{[QvڴFİ hF;חm*"/o7BRCL5c{MuOmB^XSzKL {ҵ+B؏<{IfɲC]n3VKǂqԗqYz[N%@lƖ 7M"S0υ 11W%w:X;'g$m_;Z~0/ wT WF8:6+\܈dj~BT/:ihG_y/=ώZEOи#xd^(8UAƅv/T |e-מ4#/M \ '{$8F@X+LD]tE /Z_2Vyr BՍ~BzIZҌYzQ.(SIc';Y< OZ5 $+B<38EHmYk T#WஇpV{gG1@1FR 1W~Ϟ4tH!-zO9SdέE*M-W=KKE1 ʄĀ(Ơ>sFu{W䒁 bM5;;r}LZJFp| HRo0N<'5߭ /H,27UPg3 _rO,H'JpfJI* LW8$KxK(qP鮞ό(lV'~-0H$b"JI e .ʊMC:lg5c/ljv`UNyYۄʝv.9r̃R_ڦZ6l1PBF.lmtg1AߴbxqpLa|]i#K`q 'Pې!lư-&]"@wO:! ks +VRB[&U{i0DW\HWzxGSxv?  òI!W$ߐ@CS>dBw>`B̊Y%n`bnߛHukyy !1vǞuUe; 0Lt3hⅹy0ʌT Bls&7$_%w%rOhYMႉZV1~_wvj"Ұp W`~,jZU]p$ˏopۏss@HeU57I"ߴDJ[wQ:GؒR'D%> o49&0% ` !Ѭ́h ߢu`^L>C$\T ԳܝO(D3qۊ1T׺~M^~+mn " ؍5`N F@mYyadO yNp?$@I=߲i.v-ؘT % 7*|M4i VM<E $Oq֬ɷZ2`|-170- f_ vZ!Aw;rȯͱb]ǭ}.( #JwwG.L,̇ͨX Gi&R.e /W"H_,-ҲuzhC$X tq݉Exb&wӓ>i؋qOW86?3H~?CzݐB s>`x5HF ٙۖ_KzPt 9 ϔ 'd>:h (p]: س'aE3)A:J9APnrz!4ݹ[в7xOzfZ;v[LC{Y.=xCDRבDYc 8I-uG~w&WeH>gG@䰡aﳅPBRٰYʖn+u2=`|%˺jSu= iϝ-= x IW࣑B4n y*Pݨ lõmDjhBOqWs܀fxؚ#N#֛E qWg嫵|fVXXJXϠlLjrdJ08S"SjO=@߸CVivmYPlf#<+ }'67rCYwMTJkoo-B~ z|} hpn[5xq͛KQtpt; J͑/E-#VYdXR؆NHɅ(G6cq-}-*H ̓ҳڎj|U֖r A|ޖ}pZ.yS;ܩXR^%G6E~~&y^OhA .ᜋ{ݣO ~/Th8E@ =C`,@Bb+! YTl`a"I0 Stsb 7?d"hl^ hE쐯O=`$:-0qy9!t+{z;eϜ 5 oon:UOwTW q(>y? 6o.3(ѝ׸:ba8:[#.cWtO\]OЍd6kɺ6"jW%,*^aܭf#kjHs{\]8o*]vC^R1u%ǜo<,U-XUTOZ2RܹrCw "ȑ͌S!Há 2UN%XkXGfiUoWԬ_bސ3zbwl33AyYM Z [uOI84:ˀ>bFh&QZ\ [i~y0ST6D'櫔'15W/[=9ݢP0$\@M K8_㈚!he We6C%fn(28*; d0jHV=b%Nۊ1 %u-qXvqÁ= a&Xnj#%љ !eOfJ\Jr TB^;@L΋}hmfw(MhOs2lmD8̆fP򡾇bX5laQv*@b5MtT(5Mm;ak镺qS0\jR++O V)unLRUa)3?ՂQA6},˲E`\ d59|T`j$ Scpje8.-L, 蝗AԈt&}5 #v3}p>No(k\s>jd[d!q2 @gDc :4xrҧ3u?rKLvnH_QH`hRhyd<;w[N[=hHo gXsΞ%A] _Iq<5=$L4>wqv eGۦĈ&$ zER׾#"֐,V>G٦2#ZؕQArƶq!<4E7qtZg+ƒ  }_EVlTG.%O];Es|:˽PXmiuPLl7Q%bS3#41"I嫘)l J1G'%2/Y$zqaZȀkcvhk=C>6HW?7+GzԄ7Ž4|ںISr0xxuDxj#x-Jwv (MD >Hz)%I:tg]qIؒ_P]Mi7104&i&W\CK>hqP!sx/-8Jb٠ 8( S{>l}% $,ovR8v|yweMwHӟci<ꧮ.+Y?nHh]Jp1iX~\֜#>Pq]nI@`=Ja'o<8_[D;]K ȭ '7=0#{\]0l%_CEO)eD$`˔<)Q{)tr `ܕadkPXDexr ա l=@,5`)Q\ڞFq66=ji` rD҂X^j;͇u-id`r9 ?W!ZA05b:Bb9LJ|b8N>odR1{g]D҇߹clhR۶,p!;xTͯCDʛI ;  qkM?e$-9#Jw7ǐfP+$\<SjƏ ~&n_2hp$luԸ0cgq(xNc%‘zrB@rnS1_w`.(p+׺bXhҩ7jW.U)c>Ÿ !=XP:NN?nI/rQ>>B10Z2le K;R?o|4JB^f?f}kBD:8-5q~07Dc!Airg>>f[A'ǀu$OaD' L;D$Drf6jT6hr|D!A mKm6 _%v++"2;;HH3֦/K?x PIh4W^IfFp;6 CW4yWxIN?} 2zO'(H1x_~zvs@/Σ+cUQ="el gR%j *F'cxd$z@39Ԃ}F; [s sXU}Ʒj\I]+xMw&s)HJez7X 7Gǂ嚎;b[|>,d GtujC+qY_oEJ(WHMy 1\2\/\On ;ipD/U:hv'4O S8PmJq6Ry~#&:ݸdЀHzިu)3{E*l8cs %ƼrV4v+)Ĕ [nݝD5];@S*d~r="(dD@oХvRK9gTƻ'f)I5|uˌ.I*4QIj!OMOMo,ypRz 'B]iecŹ5k&JGGKɆ ȁHV9>oRڡْ(a uE z]O٣ /饤0{#v3޽uƍl̝AO_<_X5*4c qռ]O% r89>`0Q2 I@)f[NF575BmTk0BYnѼOtc@pT۱bYU|k$l`'d8#&W fg+̡>%!odQO g>~#O_X3Uf[DWMnL=# lC>ԙAY6$ȶCˠ%&2]ղZ(BNXlr2ڧȣ>H%\ qAK}eQ0TÖ7>NgX>`n;w.Er%CPv4BV_we1&F}oYMIdeYبռӭ;#Y6,L Fl ܁ޅ;н38";-]ok23Z~jxcw$"mr`vDʳVv:` jtAsP-76~~h𘵗5J9WԮu 76"\܌РWO$?͕ Eqe^`/౭~JbdDvz”NIaդ0s}JX˫Vz2L-zAIJq\k7܄CxKty(n༰Kla'TVe&- qz+<]p/s_Ժ ^MQS/}m'nc" =#j0İp]u%RI_a/xNg.$2_r_QR  B땠`4 *` aY|H.T- /#f8()s0^x*-&2P$jImbs)F X) ISTVSw'v~.W+򋃿6|qgq{Gݺ;v_Qtl5(A.2ӭԱ/˪)At_!>QM#( K7c9! Z`zĭ H @ 1O 1Xtg{xb^a@ 䯞%z2:^Yd֏^@p/b>*O63ۃءZ^;(:Qz mزp<4b$N/B 5Żnmǔ,%@W4,#h;cS)w_ǷVQfk*KZmE2#`X{Y#/u`܂l3B4:AsZ a98]f%-[ 6hncSMDz'^J%%嫲3Q Pa܀i˝rp۶o'6)n|qCktcIi @ԏZLv.K7kk{*2ED&$ZDl-(G=oKP'X0b4jFN62{؛źw+hPP^U#K_"tN[Nl(=jkHoK0MT~ B+D'Mu'O]R\̓WP/Εd  ϋ? K(|Dr◩'HhXfoXV_z/me#zHGĂψ^eXn؃\'iG\t8W'\} <$%PW/ k.%v񮸏,'e328_U'-&.镨 1FfBcؙide(}WͭX „XњHG9/K7n9My̓{KʄBӝLjAyc{]Z] `ds=hۃ 'j`TZ:G;)p dG >PFncqQX뵄 \y|kҞO::96jSx>֍Tx2Bb+Z?+;Fok ۡ-( k>D5>t[Eƃ}-? FRkv_?Xk= } W#lʷ gٓ}7 {d PPvD:._h!Z #r*d)aSG& U'=/ERJ.,+%E]PojIJR~L@_(\ѻpB\(t|+BCGk"Y͹Uע\\s]íj>I =zGuzq|rlLhi>5cƏ_n#;+-- jъ8pI|g)XxWnm>CӸ ALhdXxHH-RZ3;o7<{H:٨BE%Y—ȡR0y?~Yo"ޜ8pkT*S^K2|e(=iJwRS0.hTEMMJkBE9/v`RQQk_w֡ T<3X!Xs7ϵIyI6tZ z]eboܞr1?dir)p"/C8lYg[yOKeꫪ3xe7@oG<[1XϪGQHsq')`݁̀ӶbIهಢZ,Pc~0w3pjdP޲ewIR5 h> K;lb =IYBw\DV6b Uvߜ vʀr8 mHz<5Inʼ6iʼ1P/zqK\>Oj<@|aV{ , Go pf6MjԖ5Wu2aT0_%XK{lMo++G$DY~,w63J! ]յ(nܡfC;rlKrGB+ gT':H tW9s@Gһќ$- ( K룀L{DӤl6T |m8mqEstƺjARXPɈ?tlЍ0w?L:կVUe4C /t]]a&FUIq%JM?;س1gt<,ᇝӥh=DGr6[Rab ⍇r2$HMN~ƽk쫄TzJc?:ot)+fx+сH*rA+ P`|HP5XU ߆f(3߱ =rq/1vQnfr?N6\Lgp,'Ao6 zy 삒.m-{VJJgM_a̋G nV!M*~tϖc݋6.K1QmOq_{7JߋqO8Z7]5k֢[뷈 Rj޴O| Ns$W%XCL4To*qZiw$,tt{2;({Rdĉ-OqƉԔ epb\/'f|L~'\+$@0<ْ+(Gf'E~YDcղ pJ2@'l'joMa~< bүiz*(co 7}):iR!TNǕn {j47* *u'զ5d-w)J$7Gʚ2bГm_T΀mGĚIHSRT(Ou{h(BCfheB*)!0~(dSx)?LԖgwbK>Vl,W@  la1`=?cx^6U Omu}{,٧ꎇK淯NލJ ;ѧ0S)DwsbQb93Ϻu z Q{J bz|3Cs3o:X{E,&̨T&8(g!Ԛ^SJn=W=Fs H//@+1żA`D_VdJ%FxQi+$\ip6EI<*1J`KaZhcifOe_kZinJUٗI1̳15d pRPufA䷧oR}Ya7y&mVIL9U$p4[%+`wTFpkSߙ5r[`lgBx 'p=I=c b!9A5G!Oh  P l7wr3y2-hBja؆b>sq"KK#7C4:!{N DÞtK+? G8>P׊ʋ8ȕfk;:% uϛm3FA3{a`n_Jcl"=昩p_U0P=Eyg9_j fx9;p+C_LpV/5N2?]>×sMyzsɛB8`l/BQ_") /|a{x! `GǢʢ8iM1vLV=?5s :lY$=9.)p+X*_7` YԿFk_&BvEvˡ=ŭ GeIپCNb `\hw炇\i|⑀^iauۆ'}!9y" rF4DӟAɀN!#0O)ɀolpѴ͓F,&a}O}c1pW_%BMkM5XxHd S0k}ΛW1Rb D21 L]EWhd׾l!߸ v^k~f1EQs( N9ѻW39eD:WJ_02X|F@u?)|P<]St@ Cw@`5C=($d~oLiِQBVc.b_E [F6 @G{؀A*Ջ5C`9 _j_ oVG|+>p2Q0z] ܴ (giOG i+&I0XJc"%SKN!rS'75  1"E/9J4VV^2 X3!wUgwh`|[7*C-<4Q6{wLy8&Lk~.7hAdywzBj#Gr/8=X){C7k8ಧ{9X VTåG6.rB:Tf%FQ`RׯڱTr^"imL7 >cVtЁc;u8: 0 ɭmbEsqg99u#Hʁ9gJVcuEw{FTnT[|V7/30v5Z>Ps  ,:uO4_ZHJLWss̊=]M})^0gG8!gNX>w 9U?gf~ }{uD '/փ-R_X'Gm^*ٮU.z y[WJsl_mi6!fFϯL X1+!vUb=pznch%.z/x_ 5*=<^i G6'Jhm}~ p0ӮkL~(uw7]YC홒B0W d`fhuB;nU#$$vUڍ d> wI}qZ% vGA a:?6UQZM*yk.}#᎓6~uQx}Z }3pjX7F$4yWjr#A^;[ު XHn8DȀne"";7p0jcАanqXٽ2 ! '&kYNQ|u(FzvtkB_d*LAt(CE_OP(r$ǣou5S:*l5H-2Ν?C1nc_av @6qTAP!=h;&Ɉc\hl;ARf%MC:BsYf}ş3t]RS ymTn7RyLͨ OD˥: ͐u1$nA2o$6jnJ0xNwvWϦe=glbH|15ƶ{1L) vCʾiz͗}f!PaV QADdYaw\p ,0t4w7Utg!JmLh>\)ku{IxE$@[n2A`+AЬubQ !$@;%~7Dȧ9\yr15kC2fyTJc'}/%F6e4/ `l^>P Nk1yvo]ڇLkPÓC*+ReCj~Ppmugf]Af} ϴZ>2T@{b۬űOdEGNoWdL `.M%;W;i:Pcpt"==Kأ~rCRuS?h+gJCw2l_^;1CZ0)Npn"ƍ^ t$B_̔@cv?ٺCgR0~y @],|ͼMsrخl"CmӟS { #huN"`K$ y'ɲcvP2 ^aD`zBP:%;kfi \"PHK-qϙfr/ 4#djZ_@/ZrO ;CRw_=AH8=xùINQ[*(*|f,of.]%8/kzpQ ''NpEA;΄otXxQu UoWTL'7Q ӱR "0eSߠSefYYXe˽:yIq3tJvɖa6Xpԯiu[FBUḌݡpjGZM؞ mShM\ޟջBtF-MO&Dbxt̅oNv~OP %nk8$ŶSiԺ[ m # tQ`q\x{8՟2vT7!FAqN{ԙ}DN(ILNibT^\\W+JZ­Vw3/w2>FSs$1l0 9ʾ `O7t98+pR {3CY#oy|ŧ0٬h5 [rf:ai95#nhb5aܽ€RnyXnIdw"lI.A# aiE?E9 K$EF[ۨ~^i[;9.\ ^i ]x)7E ]u &F7CoBhvg[5{aj$jΝqٓ'9.vjbY;!z7(F\m F:WQɎh(j0Zݔ1zA LCҖ/&=LZ?=l{Y1SP囎YڇI8._+USܥCMJ.^U\eRelE)na Y.-KFuɌU(s;u5cn;U@UpAb<㪞b:X(Cf m2՜~Hkߕ)b?f١@O"B H-k6P\1۵@ ͕hL[}BzY&>}¨_3[/Q̷(cP&AFd\ߓeFIw3(ZøGw7)X*G{ЍީW36>}Q"aoT@)[ylzVaMoQlݷˑӖD`9)ֺ&{τ{]@U g-PFφIl KQ$z#;b5 aPncHK\ȌO㾅"WLr.~d8U-],Pӈs2>_6SZo-ǔmUH{^lCۦWAcOt0)kK֖"9g=ɲC‡k#AsӷtO?[$B톉SZM6۫G*mvoGxS/dʷ%<<5!n W*.i LCu1[ H쪵A07{-G%22+EM$Qǩ'|'I^07&Uk5bN`tSi.GAJQ#mݰ:_ Ū~0Ƃ#'1ESYw_W{7%0z/㝣Q}(H٬p1C }N@n[e8zo\ a7a3|upڡ 1_<.s$H԰t %Do՛l };d}+_ #mܭUd#DW Ƥ9b7h)ZT^Ik G)n'2h8^6 Km_*'AN Ye (\y].rR3."y1.f,8V~`,T$ޙۺ\tn~^ N ƙ(LرN4-%Պ(MqPgf_&\>/gk3(%,ٖԞ$cRc_E(o#yfw84 W!DƸif9kV !j]譨+q#2$$Sv4]]cZ4-4)31e]'4J(J @=pD &2uYԖ%rԓkXw;@Tq9,\ƛHqJ/ҏ)7wҁOng!6o(8kF&[Dc&kF"Ͱ/6㥡-wgԀH$BƐ@oE?ygo#౥&b6ظr/*Y`!ӻz3iz F :T~#)m 6u9wSrYER7A*?6hn :yQ}, k *"_U#v1TܼBsD"zJQdS_f pGwE0fj^#]S7#PSw+o~V[IjM279? <4] \Y8vT suw_X\5T#l'RbN13?Q3'=htg 225y'YeFl!Fh_m5Mdr=OV,:2!&ȳ|aOC''~Y~9(ְ/,d {+"X)Am:5k);vE:OluiQjc"8e^C:=̕zF$NhDA^s}rM:΀J WoVn~s`OEaЂҔ0~IdK5$e+%9CD?gW$-1!s[=Xv0q]!^Ox(bghm -ae LvҜw/7ט_ѵU_aAO}ޮHy}|jg1kC8 E&tx0 K?hv@  # <z6mXw3PO)@ɘ?!O5þsAl$c)1BU:B\74COh)fR*2Ȃؚ[2O/mE [tSіbj uD3rW΄pED"Sdnױ ^*:Ϗwj-T&Vu -`H坂8T_tk֠HxS݇a3'Y-l Ey2KS#0Dak3Ae"&nSX-iK~֐K:^Q& M zRi NѴ+g5 eΞ1 W7Gl(Y_CVH{.ixv(!B;IE6xKq#WnMfJ$# *_&b{[5)EG 6@΅=U*5܁OJFlP.{ PA:n[1׬ c Iu!>S͝Vz%Xug_Ab@U4DGWI~r4tƥr> hm\+NQorC- L|a(jpH~-dʥ:Ԉ4lD nR%M;s3dms̭>\ h$ {G91}bbc ^.9"*~o?P S<8[*3Hd!R[ @AUς`2Y#j=aNI>YW،E;/%eY">D!6n3l7 Km=sM0 B(pZ&O^%0IqsZxYo++ 5#"*`Kбrvh-H$|d"τ"{]c8n *a- ^D* k۠~ 9Te t0Kffg &NUy[.sǹUH$2/k5bHQapƼ'"U!\@0@> x7j6v!SA mCs:C@<ٝ~*#c) 04\m-h6p(&s ewsP_UFL K ګnr6e X"b%P^Wm0oT vc G>jFDYb$E+XeQ$3|BbDZevuŚ&IG3)LH:R,LV Cx;} vоs9jph5 RzA(%AG҃h_1j;lYBsbVL_\%4GbT> b7SAlLkiYp='Mb=&ɻCLSQs y'IrYiԬ6'K  Jcn"1d8:!Ǝ\5),"g4 c KX˹[y|z#t(&Lq/n_-8n(`S5k!rٗ g"æKxnV_2TH3 L@6`u;.ŅԘ%>(`@_Ҙ;T.Eh$o1 +ګ.h_Z.>NZAbS I!`NE,8%QW z&j\ R8Ϊg,Fys'#8KHhGop8y6ӦgĩWɋ .@ WM$$!tU;^ŏًrh7sp2w>S7:~`7S-m]k76_;#-Pd`@bz9=?ЉX02 eV  UMGf,JOPg YmLY Nx0?25ft[}J'hz6ӰēWe/oa|mPOd_p ! ąDJ$Ǚ-2VI$ݰUS_Ilf+/שmZl% wa]9(Nr^|丹AYz2Y=h nݼX@uNLlTA헻^3E=*j}Cd9{{?tfx\XD3J|},tx@ьR+̠%5"C( +]vsVaCqMѱ^SŽv&ưg.Zds 179yqmrnm (WڛC&%'F>3"|lZKuqzoY+vD*OxƊF@Ҳyeo| +# AդjwH.68ڞCkyi5NYB5ŝEǥ_lb{=N Bf:!*tඨW]A%= 5Kqd94},6X%FX.~LG#%wyV7M%F\kXoS&NoP͈yoeʤ|a,8arYǿ6' ?>L╰#ޥ;oVCP\B\ދMU;R-DV\Ud~EdnmZ;W1CW-2A9!H׌%l@_O5@v̦PA%ܫڵ"A3YP?Ԏ`?֚پgSAO5~|3Ղ9"S(h^]@wͤE,'%$$3V4OXc- ܆:lJ0*є%%Ny`j{(ה5^Tq0XP.٣T9ڴ'(0:zyoC. 7yފiHV7.[PEZ0p,Zr5O3mȝ~2N"cuv Hn0/Uw͂Q{$}!!7z6ZT6_bȲ,s|ǥĽ$=c"VyLRRLo\uX7S1Ia!5 ,,l٦Qڅ4ڝ:AN,[w)Ba&SQx|ؗߕ<2,.LC&F9cK܈j禬>B~#Nm̞yO-Su7w?z<=J ;~g^RS>~PiM;}C :NP0rQKg`CAX_S:*IaƱ-y346nHMJFcn='n K^ԡ.=j/`IfPkd[O *ڌŠU1R\]=q.XTdBMED?@/Gk9{: ?Q{]O)Y2XgEQs(n˂p ?tMS@UҦ3F^Yt .b "y6{:;,sJ}}ih"_~{@%\mX2-LU3 Gׯ|{x[#ѹ{'_NrBt?C&5b^Y7U<0Ò?D ]s LQ11Y UKEU$a`~'&BF?EoßD!J1ܣsBY/(#>%_+' )-kmHx+V@NPokiyIwZn%ڪ|%W=dq-gNϩniH}ʞ,V~y3u]wՐ|"bxlصrv`{EqHqCTzSb $=W9n;pm0iۧʒ; $t+E]eF G} p8ⶈ?==r^:/`3RsPFz8\ +q#3@nB& _1gCOnXĝjB-Q`afin{jGǒBl0b 8`v۫ݿ3vOkk"⼮@s^cMs?b7,且ͭƑ|#WR A}j,N;~y߁T2Gi>r+8aCTM(IWoL=a}uS &طRuHbR{?ؿ,pw {"Bd2'P<0W #ܢ zȆ`4WͽF9R@~HGA_A ZyFj^cF~4-ŗ.@QN3GǏʮ-XQ1d0ZZfMP 5a0{ 8 AYR)rUrxsUwqu8 E߈È)h^g l\%RI4I%x1d 2v;- TY]ƻqpr<5oyh,wNzcJ˄jvaݿӍ@vkFm۫cOv쾯:뷙clJnn^i`F-;?[rcW 1cVhPg.^8ko{b|乧@G4Bh/.e-(L3,.b<ݭCby>A+\oIR;f݇1U;/cN 4%Ar iݫg|y@ KERa64R͎ G' 7m"ne Ȏ$Qol1!렵r{ṑd_),)[Ǡ BxfF\I3a*9OE߈&-6Y'1-_p}kNFKqGg~H~nئr >K+PgXJlFI) Ԛx!j)XUAUix?^ES3$i58s+u _'mhINKAY!Yɲ: (`#;U0{V@LŐ6d- xe2l8LVl[?G4!ꢥ1J=2gZt|=GED¥ 6r>3[ÖvJ`BdιZ=ʠp:*WV|? "Wb$w005ŽP:[5uL‡(Q^CoeYnJ6BNFұxE١/c^c hmmIg_Q4#S0u`W4ť>R_sX WiCSbiݕ$}A~RK,COI]RT-R}P\-h+ 3@|7={-[gpS^9VYmDٲp[k 8sNJ^'uZpi uj \>/$a%QfW0 si\O;Kv(D C( 0"(^%۟h!~HPcd\\Pt{[Il6V uSXGmS(,  <쌘97 &H<x ȵŞ|?)em*SoWE фB>>~^,%=q7"ud t$vzLh3>+{Ԛ}Mʭ= .bܮNjC 5U&$Qi}MԼMl82Πw]G;X΀9x/VFshƁRڡg'P.{|rmD7`x}aI`;j r {)>#v*&t4潖Go7N@yJfV7[BTX^̱y203qo0U\yt  jDεy\fĬt,"q0SP"?ǛOC>9BBLEb:h-h~r~Nצo{ӓE5rԄp'& kߕ֨P 8CUuk"Xv`J ģ!z`w:Bq)VYdMr"`^<yNgsh"8S wCߡ(867FU'ž|0}ې(+9//DA,-[ A 8u ]#JQ>~-g8=Q'3( [s.XSEpZcdBC "[bɢW,!XZҎL1J;"擌9gHSS|8帛 rKG-*uMcwviݤ#Ѐ`ipN JOJWeQ|s7h4ݬXj SC~#KS}'n,` }g"N c*f6z=3"*iEOVCxaxx62 4$WTt>GMtFZ-PJn-aFS+0Ko , S2?׽I_SrF ͋ΰ꣯9LI>͎T漶bxW|QD_8h2IP1 7S4Y6Zzz\i ~*o9Bkٷс%nO5oGT&EyWCb)Z4˚ҫZS7~ѩIY[#D+-O\euǦeB_zsߊ_$^rԋW]}Qi7" BЯF.=Mo]f:_6& ?|NF}USFbyȗF1ƏhXaRcE-CXM;bs'!tWf0`o|VTbDꌅ4*}C 5߿Qº!Y{tFT1(Yt&E+~^apMAXrd? 1CH܀F">. M te߳0y?V֥V !CIM{]A]Yp(O ׀> ~M0T T@U2`@ZSױO {Icsʾ˛&$7x!Dr(@yÀ kwKggi+1iKMwl, @F 6*lY_?w5V5=Q?:O!_%\#tt,Ik]a.P!bf`F@>vO Œ[z~9OJ$@}I}F*>Zox`=fYi/8#xzE D'ts?ԉfYŇ^RT^]50tm~FjMzpteA/D51"l@̒=dDj=hKL:?!ąλ&H $Z2##ҿ j~:g Z?a A3UA,e-^vA-.w+wȋ23{Ƈ󥥲m2v6-mӔVA^[\c ^#Ae8x"Ck|(Ҋ{M=)sv$ b5 NPeVs rsH,u 9Epump Q:S5UG"-$/[ x49iEԽYyhs& ^h߮됛 %l]͆0q>$FgxU3ňޟلSR$0mLcsQ%o|D4pi93>Czq?͍no8uvݸp\`:\Ǒ&3LTD;)׌H³QR՜xops1 Guڑki):f1|W}>z=#7`$ o ԑg:?Bm1kqlL9vb3;Vd0kqasXU/teC.Sh<4ж},Mvb<导ob4}V8W1<\ H?uHjŀۣ׶urj 2 ֓lUkg ~l'EW KVfx>PXd)o #rva26rzi"ZU:xUj…'%{=!HL_ l֧RG>215p }VsQLupVgPmc:ع$ݱ3zo!o*}~"cްh08z !UFM!sϑGӫ'+PάG U۷<&)6K'M790^:jN/&hفֺ8f[A©P,ԉn)m~t,cBG^L>FMh%BKnL[ a4IA^G@?͔A?YETkWVzeF!r!̚q]3ǬPv6 ړdBϊ_-{$~ί\ER(8lS@l 7pY5]WA3.m9g|]RA\HDLbD3VrP q]1^f eD}m׉ w-gnGjpC%|wnn;"=2HwC-C=,z,gC 3V/2}^/3 2j$T8JK^kve|`p WJCl[ ҋ+`glHB> Єb&Mċ}xx%~"G_j JB*aA ='l 0UMlI>r>`Z:K'gW_BчW<9"GėBc<Cwzʸ#ݾP"7N!+6PN282'pz(u$݂PhU06N;8RԻz!t0LEh`EF wj $L,7 =;odR /`?Qaܠx*m9\aJ⽬ Q&S|fħ&D]YnBsߏ 6~dv>"YQys+V_}qQ^G:uWk511wTQ'N= f,/Z$zj%FӺKFD W=weATX,۞?8oV€~I~ aQ0VQve?Z>u;z}( Ǜ0{U}bhsr15ѣm3.+^ @Þfk2q%]7+2x l0$[ћM5. <7QR'?V:l؁.$__Lj!CFhHCdpZ;y(ɍƒ%rkʳ$SRjHS n#x P~HJȂnt*Plgo9 tJk?Ff5?xŋ~d; $C8"G̚a˔3?bttW1C &Sw.S"3fBp]( IDScYg(u5ød0(ٯUƅ m:=4[*r+~2W OiWyMe. o2ko 㟤 l ɉٻ6DW)n$2-rCª DE6>|LiE\Ӥ4Rol%nP"'EEi4n#EwDs(gv ]7Ȥ6D>Ա?#6E^`_̦96C`ա׷x!,&ױԜL cYX~b;4 kSUf%s" xPG-q=}no断s$I9A/ZFϦ]Zc WP l ir|>ET`ƭW1yCx1D[ǍMBHVɸKu UwFO=!~tZ4My\f.$D sޟ~ D=U&Ue D_[DUz/;ˉwixa_Hf+F>W5A ŲUzwe$>-;*KNu\46O$hp;-mnf(2V\mh#<4m 0KZHQpM(gpR\uVMof6ɻ Y-!W)'uvFv8j4MޞIC$Jνz `М0a(T(lV6`X7ѯ;TmԚ#3[!r3d|x%bf_07`GC.!t_Ć4m$L&8F<fJ&ٚ׷i8֕W^Zah#n }~WPB!ZĮ|7-1GInFɆc3c[aSt(TX #Cӎ8ܷg)HhL68$,D/@tD/=yCć>+c6oȑ׏ .T`&:90P9m"ŧ@G}3ct6Xbr#u2E6c˯xj1-zаTm`ӸJO%mکkr7uh2jO;ƫ WEeH6!5 fJAFl>Aq[Ʋטg9>WVM6"L -Zr-jG<_m@4qbrs_f"o_rbz'!,I|ru5agM~R8j /{Ftlצ\MI÷g\QFMq {ԙ?iGA:V,H)xmjC r2[Κ;qwhH]X~AN}C¢W! nҳMs0рxmI̗_/bb}+`0Q2̩%r>`}w9Cvt*d@&+t1V(^u #*xVq)}i}Jy|n Gn-D5ϰ > @hUx+qF{ס(e̵9HyūeZz *Ǫs:25`-|5Jf'QH GL$ jl_Ҏ;撹#h@g`#Ӄ)t6O`;ޕ nRTt|5A<":[i^yhtr1b ͔jQMrA`pBtzOr_fYpˣ)k4#/"5wes>nLVD8wZ@\#1ǤMDuG&,xH߆8šfN:Dv 쨈խb3Q1..c(Uu.k㥡sQt0ǴE`x%j%?T?0TqBZH~w>ZL嶷%e1gE$1MBTE}^?)w 0 wvh-7D|+r-rp*xz 8Z}uL46@@ixÖwwm۳L/EIޕ4c'ZLdB*bX(< fg(Ft9/D=B}% @/K:"- V>e={sќ̂ =c0!,2 8I7,߻ќh cͣoPpgvnuB`gȶf&n| q|&YPQu?a5C;)my-ض#ԙ@׸Xj _.n͝aUve0MiCE?l8>odj$ IrHIpGޠ4S$@זb#Jى;Z&9Tb=~v э -m ):z hNdFªN٘nՐ4 0>NwW^;ቔis^̛EjIyJ5y7~`dck(\6#ZW4(><ۭs:C!'r Rai!spusreՀ?9z?~#?z:8>s\0-y<0"۔ɘLKWxh4 $BIv(Gm}!W2|Րdh\Xb;]˻ .ʦ`^fHfpFuc9|v9zo\,UGD4n5HAS<[y2 L94fIZnӐO]P=qAڏl9'! cĢɤFVjYHf 1G^ "i:K{|X EV/hzp(ceUP]C$ Fm9?j j']$(L{Ԙw?2ښشxɹeQPn`i|}<ˇgUC֙]"vGsrK[TO^?:3A0r-u RuQMn@sJ뉂N⃤c\"P'b5 ^$&eӯX ٭'s)L(5g-3.'39PिP4;/-ӴggdkQb2Wv\,=kC(GTi]JÄhJnevr2T\fLl퍙ZSx Ng%fD("!)|gF6. %14#XatQϝ4쑙ɢmuM25Ii/ң_ @3v(m |u`ekǖ+JxO&qg2"V p1%Wr5EO,XeDU]A9)\ԔS657B啞Nn8 qnC ݝ]C>/fW kCmvT d`L1%L. O67=.%Ճk(YC&UM>+2G-U@(ŲXЉ(g3 waW3QP,=D%P.7^x f195g)_/6R/# "lEƢѻ.Tكqs V OGp3o\$لfJĘ'/osZsċeK(+⿛;aR k5Qb$Aa Y7Cy`pќBE{_8kic i~8H&.M+ЈQL7dcBCcHoU@O3[jc٩IKW,IkEeO k_v%z@7$gOz'wTT놖>2?J0vPIpMR7WyKXFKݸynn6JHrq%r˵8DQaԸQU{Er:607x\DG3i(k.ϴ%>5.i1pdEt0wҙqI@wBU3i ; :5T>g+Uz2CS,u+?C\fzwL;MhkV e S*;Q:iU+>@P5(yB%@Õ3A !u-',[ MJoAk0{W۸ ^ GB%2(3kKF_ $e2'D}؈~>^=Mf.~tm1yFG{EK=p̦2ڌ{v=ʯÏ) l ʧ !TVRm *lVcg%is&e|/ ]tesA|KA;z³VX^ݲ*b"_-[D{SPv_ř%Oퟹ~jߵ2+/h8ίFAswUu}Mq/!i@$oH+.Je,8CQM%}`+] bGaQ5 ~siƐmᢅL?#lC^[U UQ(Vq=%2@c{mVbba?.g7*Ƅt7aF|`|*6muKa[tI %owD1zL3˦zc|eQ|kQ/?+jwR|^rhJl ؂_`66Emkt?*bFV_w1gK;Tsei}Lm@Gc:.?&H*m~7zY.v]l~5!O&DCa5'VbP(l+Mi$8;͌Θw6YmׁtZXCDpμ!pW!nXrvΰWrw Ac7z+gn5ɛڤT s_6}c\c{|4ؚrv$J Ax?-'MsRR.[\ѐƉ5"{AeWkfPmO0clp}T$zJm )S+C >iIw-B| I ֣ZTWN M[XJvd?r-|]5V:LE Ÿ\ӫ<n.#dׁ{[@Aa'wXPŷ?ۈ"|#u`~?1"$eW^ꪅ+CN7WiUY0 <"]ܬ4v g+p>ćNz_.|1Yh7Q퀪sXnWk@W?|/}(*a lAr|i͵rYVHw\A4M @tcOj% āyZE!|JvV2ETkm눴X4S ;7ĭe=ir҅,#4wI,} ,_BwMdJ<O-_Dr);&*RnhJg'<²fIo  ,3,@)SqX"&CaPq_{En#{yۼۤBQs_Ծ}/XQIaԟfIF0=z?,BL/;D?P`PG݉  y"-K3csx Rԡ_4 xomhr-Q#ո6qV 1l[gQ*8\a&EvxYt:hrUF]xoB.;H]1qOڢ&d=ǖHO),Jij#lYcD1pi"帘LLcZ̎&N/erZz `.O&Ӓ3h:F'kƟ)#[]*r cB*@WcN -r+Ygtq9S6Ngf!SEoPe^A%n]0+Tdz2,@U}bɑ*@Kj A!*e^e )O.zM[4um<-*fL mFӱ&XpSEGʧk1qy#2Y yvOZ2մE!$$;Qaޝ[5\4R9,Έ6F;!gx{Q9/t'Y"-̺>ZF"@[=λ{{$pgׂᘼ/ X7qָȐ2 !!W IgֆՁ IחnA$J/;R1CldӾidkPZ Ir遱w9qfP%ViG=p0@)R6_a|}/Fc2U$)䶐uF`itt/16y?;&eS#%^(G dDcAYlO:I^gLi5$<9F@ءPYKK5$R`x_‘<\d}LƂ #unČ{i+HxQz܁•/Hpn!hP9a2YagUف$# )+&H))3F\SVMAzJ&0>hxz:i&ߜK6рM"ptFT"1@oە3@=8Y3C:征%-F#߬+w8BLsFqWBCH: +kޘ4sUEaUQ]PNNjUZdžSX^sqcu%j Ml5)&&:ɫdmg9F~8!CDM]%UʦKذDRtڜU{Ŝ-7Go<-pFs@ׯN?2I7EM= Ck]Zd)@X:z%?ytaORu)72wk5J}@IL_"TW65gW H,@=3Z%S|gVYZ{ySQAI7܌~DkyA3zʾ&F`e &#:Z~½ylTV ߁s-OK #=arIfj{dDLRM*a]nwF4/,t%8ޱiXQ[+|1 R$kKTٕޥ6ҌXXxG~§SqD.mY2j ǵ;*ֳҽ#C\*19f;%dETmF(thU UшȎ].=sHw)IՊ|6Ի*c;$7T@R"41q)R 3O܆3H;X`4}G,׃b`pu/GY\qL>K+'肴~HףG_#l[Jcab5Mws#O]3!glBן>eب@dX^!4zƕMSw I @LR=?DJ]&px-8dЙ?3φ)l sA0YӒ2  o,v3$jkLQx7 *fpLҳs17Ʀ$|fsD3UjX)/: .C.v+i.f*8!x7ݛ2qsRKZ#L1/KDmެaEΦ>xErYYcdg?ʊEM{8CӪki,/=Ҕ):|%oQ(ŨIZQ )%g8NSN>N,W A[I,FUoDhHM:vXRC5錸f.՞~@aoe~BL&CԴJS@9cjR2:}ׯ/OekZft{Ttve ,A%Þ0ظhS^k)A,69#Q4ސņ6W&E|zxzFw(O1wC dRUwz}|]EYlztlJafao( ^7!V&y~_A* mt`XqZHX=oΠ^rr8<#_sYtƂl0.;haOMGxP$OR;l!P Z~ 7hD2i0cn>V,X ^ !5,NׅЉl[7;Oϵ 2r" (1 q !a m;&)Y$SK>./"駼 6gCB ̕GlleR+wAg֤Uܖ!{vbpC|tY}1o'6F yz,M7Dggh(`%R⵩hvʹn3Ƌ>bdL f#^ykL/L֜'`~Dq<ܛN>,Az˺#!ޗt&g]Ar,$`@ÝӜq}f/MXIN8ݐ {.ư$iE$! 8'ǜAQmP 0R榌LMVA催qn{h81q>`QH1-EJYt>*/]J5[oHk4*hi!qVF q&%[l8ߣN7\x#|ֳ Wq`?)c_$GY?Ķ[arC9oST4w86F~t߂e 3BU<زi/Zdӳ5~P#g7Yp n!3T< ru|`}9slIxw:"6uXƜA@9q|+ʲ&'Fu v%#3O!huN*WO7fԵDGe֠ƥF+*ŕ'M6͠F)IXp'&N#QEn@ %Iop .V)-&tGzfq^ά >UKsZF ­Qʃ`+`upQ)"5LNja|Z^RHہ"ݲQ ȱw|,wIF U=5j#c@ ߹ϻ%2܊ ~((k>cURLL $'{}y0dc9cxwR{WDѸ?)$)gp\VZ949kzdUlfͅa-ψ_eI8 i>J5_AtZMrw(!a2w6CF0:1u'.ǚq 8zKVJsI;͏Am0 &DӦMg }f(p k`FY 84t%W%VLxYX5C!L 5JN$z=+o+s-nymug]͎׋h;gcQl=ʖ  0%HQH/=x6:.sF>y&|UV#㽻qU3b@APy 4> ׺(b rɗGn|7cv鏪+vcR/%lgvtB8)?nBVWLly6zǶXU A=>eEv{FO_?P"VNƂqi`D{pB)b߹knb/Jꥥo3oo.EwF#BWZ)mv} Bfk|cgT鐮gk AVR(!9`S15BO$-fnie`"k=)^HF*ԾtGCs)c'y h0Hxԕ6T1<"^t~LjVP%aVKs⫐[Du7(+]x2C_Ж$ex`Zv,:)`u],*KX|0 c#p;08^_L{KF+3lMp[?ǖS\C⟷j(9k=çOYܭPYqo3AtYqBۜByoۘBX$Mz1D{V.1Gu {t{Gp3$)|kvN]8.IoMG Ԓ87G;n;Injf4-~\^f~Z@Ɂx3u X{B&.Z12ˡ2VR,fcޒO-LU^iO[pBx-TL ּE^b2(u s>,>փ9H¶;ѣ)x‹7'E:7 ^āϹ6'܇#Rt,*Ѭ ;n|n,O׳>JS y^yH=c'ZE㫥^[k+#x3l"F{px~R؈=-`AW{HT KDRJX1[dsT K"=dD0%O'D=&G{p͟~T!9Bn Fqp|c/+z k_Ux`b PXBXeޚx诅.M^" >rZH˿x+s{f7kUfI*tqC6BU*Hi?N"yPʸDyD,~ ߐax$:_eHq[D- sRuڥT_zg&tFPGg *MνsM; x֍GQκo2Q 1#KݡTvR~z3\yx;^IRRt^ތ`^+y.&di' 9ܿ${)b Bȳ*sGHTfU*=\dS[E> 24*"x$85(KZr:w% 60D;<ҤJ@\,f2k Pn)2* w2 h2>б ^DP\@ZN7D ;Vi2%9fNdJ& mF5CHw8݃y\ÞsBJ,k.tܨq PlnݑeփDkNSsOkګ OԔʶYV ! sT5;IvlD7VpNw쯹fJ@͂'pqA( CQqZ~de ԥ3"^_%PZ]@]wL>@(T7Rm|!C$_Km^1LϘK?'@6::TK&T^V44\-.F׾6D60705zM-5u닸f1,O98&:8`Y?F=$+貎>ߏ9Xۢ'%@ b-۱'9\5 ȷR` `2&0qd4bc&ֻI -{C﬚{ʧp"O|0/-XpjzR YƠ`-kSd$j/_Jh mǔ5^@k/rI,s`l&앿x@*aiP7s`,W|(#AaxzsKU'(?AfXKZ7QJ;l#)v ]Bɟ%ʸN=ϗbVVsv;8",kDz@Ziҏd/ÿ^ IG=\8q+@+F L4Z Wt$& 9claޚʪ$0!fz` <( -NZfQ)ߨoN- 0th̙Ff%IP"e~$ BdV! P@3%l4&,r; e{T%S/ H'] `>>|bV䷦lsߨf;"DAƄ˳2%-?*`uR}4mj)'7ØQ <@BoW0_x`ztH_IvV[x Tx)D 5e I>":T[L;+P1׷Ch:@-̝s'Ȋ^Tj܊)^[}>bԼs-Hlf7VہtƭNW4fͩoӉ:࿫=IPL8Jv2\1 msi~$a5CyV1iopxF|La+=knÊLfL7[-{J8ί(8tOs2,vy4Jd%@1 D.v( ]Y7[BHX?F=ˡL `(ѱEt$3j6zmF ]fffz1>GxhLNrQ*cEA#b ~aďdf-ε v"״|ƇtfgnKV%HQ7>Qh58X˹;ij_?V0I\+`B1zDZyb0a> =K6_ H|Nw$Ɖ WQtۧ0X֥55?51~7$sb2#oÒr2$MLi8!T b?PM\70PҺ` 6*V,gb,P|@%˻Fwy.?)[8 iIzmbܖȌhxnV ]r!M sM^菝TJ$|WJd2Al8,_1˗ɓH%v̟ٙlt' Y l.heh2za8j<{90p/@oSH~9ʃ[96(X)QFZ͌=5!ǹ*a>$8 ##??==ۊXjs1z۝{v@8]Sk6 m.= bp z3k #-]-HG ī%њ~<h*,a nok(@`KEM'TF4EUU%;*HU$ɥΖ=ړ:Cl _^Uj|LN&rWqZ>}̼Smt\>,ܦ>{_nm?sOuPY&Z[#}u|;q sjQ*ދ Ձdo0>}UFFReݒD.[h"+@ &fu-UE-H8J9%HE+y[Qm|cߣ}N6umɧٲC2ƺ4UǞ9>bA$b(Zeml#8xc6Xzfv?S 6xuhQmB {7SZC%Ov24 ;YSajKv&F+ }Z\9JYB>__5o@ ɲg?аuj+#^u?ژvح#P(5L詳j`{}zF, WTcj潙JS5d7I!=.ςɷ< cz}fE_`LLQwA; azuf(KEA6WQ{*_v~q"M  L%G!{S4uc*4ƷNFIXpA޵bw Xk謅u1Љ+zfJ#ԛXVϧSrq OR؃~ϥB6sf7P. 耰 ڿCJlHBjg> 1`y\GؿJ(Z.;[atL$$媬Ҩ&JxG@yբDmmƯI i}_Щ>m6!>8 2F1jՂ7ʕ$< LMxu,)Dʮ> 湀ZXdžOCB%0Q2'̠L5@O<Ӗ;jvJ5 Vǖ)x>^Cz*첀zP au)e!}P̩3;*vqi,+bnX]{&P䥗+Ra3U% 7 &ADZ@IcgSt!c%6@&ߔ`fz*w^e9ȷ(*#\XPlcG@{\+H8vJh%4d%D>ht`x&t} /qC3xC1nsm,e}Ej gM+\SWEZp3O`$%5|^ffļgO-Lc6RlEJP#߸çik#Qct }aB\{`KƵjdžsI5h˘qsOڿ,3>f#ўXd'Nz{^S-8 fa-Fm~Pb򵧾? ypXe86Nl-Y̦j,;Lg(7{ ݭ*c),hy U+I~reJPgDG2#8蔦ǂXK2˳93llaxAX8?t2mpRkyYJR B\)iǬҊ]e܂&.p9֗E~:3dbjP_y&(vO#U, zPOV7tarJ+L4Ye-Ku (OP|Sª 24Y cT7v%"y#em5&kRhqOZ!Ð إh%փBNM\/XA5䘀Gv8?I Kj ?OwLv (RaU:TLh.@Bp˳iwA-s d+4RZAr4^a{dsEm%r׭ ~`RZs] mS<5eq`(ߦ(spWɧ(1N=n~}Yx43H5=6B$+ d"<$?oA`ĥed1g@rVv2bz"b ;[H;v>姷̩h{qQyW N\I5`|YVԣhBL? mR}[qz+),;rLL/WD/g> 0&.pLwoߗ׉GS e\*z]F]αωf0QgB8лcx\1% pPF.ocu}%3ᄞFlA  N;Ν8 Wܠ-pޑ+oCpCO%z2IE &l7 of-ן:_ Xfi=syʲ#]NQXRzH+ AC^_AMh'zLQK[.wM>`t45DO+V#=QU5sr]Ꮋ^JM_28i^^Z7Jlw@+eE[*$VQVD٢?hbnkvbڗFNvkE-qS2KPyF^.5/@]x<}]=ܚ wx]bi&lS, )ȠРğ륁D{X=$Hc&HTϴA?H׽L5C1("S) tco€gwy(W&Ґ:;e mP [?m~/:dxo1S~*/׍xp)"(4N0q,Pe߷]iM?qbJV !' &K,&ySDoqh:5CXY@.mlZMQ֏~ϲL8vz:tYt7JQvE )"PkĪd)v;읢<[Ú/F?&c 0:mEJ\Z;'ץ~D!|TU?訟X2=V3"5\H{P_f8gd!Zo-e2]I}JTtYڋ5=}nXqh&Ⱦb~Obe.򦾶3+ޓz"¬hik'j2M;H.!ܼSiIƹ)zhO P*bha$^Qz4S0»5iKxXE3FJ0kE\^\[DE0.c+zPQH 'r6HjaL"dy$aݕ")[d ȤjlIX YFݢjO /`Cذ4xaB: )\Қ-!}&р@Pf_i{7T4G X=է8Th#𡘼'<^F؅DSlBz:H*ї4. |}04thLb7M1 |dja%G^-o[ 1m쿡b^|jB@Į* Y/Œ?{w5RsӈzD)Ccلt_2%$=սZo"Au2縗!\?eIYjsq}*@iެ|Ч帽`r]FWfD%*X/ڣl=yD$n\_Sitb0dï- '8CSRHKcL@F=ggP)NAiNVJ=%Dr^̅ mš\{!@)i)j+Z&? I:8*C,N j7A4ןSIʿc"Y&} _q%ug e٭Ou5ٕmclj̧_&n Gz,ZIEQGWveҼ2-YT"(K@! ULv}{# oC1ZvACi[H;_*E%nC]^²υEgAR_m^Q:)e{9[Tt}.dVw_:%CJ +.*yLwX&w8ت:\Ρ_f\jLbb:o0F8hm?+bMa R+`o5 Ï\]Z)n SD30TlVJN=>y|1UL$2o7n\\KםwoS@s3O&$OɎj 3e񎣂b9\z:h݃1O D ${Φ\ >m9L3/y.s; S5?VA. (_1ingӡ Zʳ3*}7w0pz38^%&7aMur3͉ бxbKn ,c5g+PfQv/kحQSj"2*c[IhUq8FrOMkǡOwv^[-*i"y\ac SZܲ #(48̿תˡoP^#׀UvIND_@ ӱ4MeP\htOИBH5vJhVW8<"q"n:~ZjbL?{eX!Q* HG6M/ \a77\ɁNeI_zff,OG]HچowބF 4t©~%0;*;e4xh{ P%b+O50Fkfa~nhj7c(ha.]tz3P`{PVb\dxa:Ͻp7d|[aLAx"8z ??b鸞۲Vg/oBLq+ Wv[,ё KG؃4_ ,ʻqB[ &༁;>/Kc޽yՊpY 3c ɦ9BN;-MGt),MkApp| qXvJk!SB7+OWE8t"y۽I땲6@ Čбt~QRq6G|G_K {RTL LãP8]]Z9\ CT`cN"C]C]ob^u͹IN[,(֖'hҩ˞i deDpfdű37L7+;CXtyNN1OxRq-6lm 6XmʎaKv}9RgyCR!ë/Q 9?/`Zps;U@ GH `.]:+ 5eZhJRdXe*~wɱi LNZʞQKb8˷۔`<#J=b-hwtrW1U<{ဨ&-90=D 0u"p 8 . ?_nyI?>-~nHb4Ff#=İXuhMoQ|y{(,boW齏"(~'J~gh6 g*M!q:8ER&:"diYGyu8nReä~])$n'=A ']d7%9B w y&JR$噿n 5u.\ڌ+0jnʷ8!Zx.BO,yɇH< vLx֓õdE(}Q>Mb hOvgkv*ҝ~?_T-JyVށt<ܗ~AwTIvѬK6Vxi#ˆG(KD m k`WvV&8q<'ET ~~QF%`}@h~4!6leOs)ߢw:ڇۑ=x_7f AckutMxVrY+$& CVګӡ,NXYS:㖤Uۑz8OxHlV ?]Е3 )2JzZto"*u-sffG?C)B1PAu/re9Ի~]*K baE S2ő!2x,Ե""x` ˡOzϾn1 o>vT=Tx!Hv|laZsZZgGQ m({7u?R kߩ4®U3BIrrPG5(kve:0h@Io`0)^c*Z?O'hofoM4h*/UB)K2*_Q`kkU=f%E\& O!I.X9>5XqS ѫ; WK"G R$RVQI[Ix8QlxD 0StEVҬ`2Iv A7Fbn:HxÜ(KS}ŸهaɞI1ؑI#-\TQT @b^1pvs~$7[)-Z`Aɻ[2dƢ\c00 ":izE:]~8[+@}m(<)IAr_bFs zH\CA^{ ŕ$;GJgQ"PGݩRXpҪ#?ؾ_mm"T+ZҒ?\+F$eIhSHg X#WIr͋?(j*9yJ2sX-VUX޽4Qtfڱ>zEZsI9krhgGմNJ_>]7U[7*{˝^Eπu( jTh\Q4-inu/Bl·x7;z#d»tQH]wЋ >uwu){ ħ ;2T{9?Z@3YijzeS6} 0:l̅TQAg9+'ʔWoqH;_b{O -@w11R"nBξ AEG=<뻭GS_iXYU'iitQ^R])d[%2;4k;vMN)-3u*FD˦D=pa4m;mJ^˕֖l6 VCy9D!ڬ '˰%6${ ɾ#0[RyDĀd>x}_-OiU &6w5U |+wKM2sz4#:&$VzqaàgMO[HXztA͂+ӜL%E+L=A9b-^L, Ÿ }v3!<>vߦըnu}ZEl_H9lR7_T?Ȅ,Pb/3+5)HuoeDO?Nl)=^ /P13ZKu&1ц탧jH¹TKN2h&NW:8|{+W:R1wd0 c8{6|OREABZnׅ)`<Ã2ݾlpEƲTgt %-0Emhyj><=LE?8MPVO5]u3A!}ik$leol6lbF=#2O:ER`otpZtJU* =xw,(ުK.stY(AQnD'eB- B=̠i]oz`]j7p>=̏ 2|hbWOәnpցmWo/>NF+vG cւu..*+؇ڤm&UэUĘ v _)A+_2C!]VMrƻc~#VԽģ_찮T%g#p,SJ$*uT2~#WzV (*;|aeyhqfl]_jpM4mIჸ\(8ygrE[ !s#x6.xhVW/d+ 9m)t\l] cynHNczKb:DqA85.qF/ޙ5Z—aQ߲^ts=*DݭDߦSbӽJHu$IrDP:SCקG"V[(Bw!^γ;Wv,x`ޮW+?@0j;? ډLhW$y_~{2H&'[-GުJQ9gNV]7tŜ49ٽr:\,grIoGfVNyԌlBduNCxP,to@ PrH,ujdYZsVkm 1^^mugwKa\C3㩃"B' X1TR wAXYL=B|Pd/6 ]$>nI&08ˑin66 Qn]\!w]3%ZcP ->8SpO3z%ri̲Ñ/#sH\(j=W+Ocܫ;d>=gyzYOj=0>b' LJ/cH< ^ި۴4rRWҺ*B)coA>Nk3xL "AoV5'U)p֧ݱͽPѕ,}WNstWDa)NţG[xҷovѓI`P 2Q T_!mb^7Dr)LėV$r;azߣ8;j fWՋG"̠N}"QL ̼o\#~98&{C;No3jaITXKl`2c5ɉآђxqHȫ&WHMEIYY L^TPM豃nM~jOX&*+m=_ngAگ81S/A:hbNh'ms+5ʦjxR} ؎x.(hYMAA,+= @_2[ڥV>S|'.V;Vh%-!&L]*ëorX%lzԯwNw5,sUJ[$jŗVO ԥu>ifSamKqJeXqS d/+ʧDW}FpT׃xڤGeQ't P?4{3ԧ<EkLoq_͎ÂZQi6m]CG&E)B*QO~d)T6G(E,iU.\(g`EݓSBB1b)yOV믫qTG{ѪRm}{Yk<i~(^!c]c")SS 2t[NL_=gejhD.ݪ FA<,90ib6tiT `K*Yme1l*ӰV,oOqMDġrR斋1"xav۟>;JX4Ss2j^3w (IzU:xݣŚW*bp@BƛbRlA2BD+w%h[|ِ=W]ZC&9A 8$7wj/oDJKɸXI]Q;+7m3zgJ=VLxH*Q_&.a{ҲoqJ9ʚ>bܕƊ*٩Eo<§b˴bqTTS=0=ih] W!9AofRd!ƀ_ݑFLԖ֔8ךvex Y]w}t%`dSj(L%a#5elnoHzrF_?$)mK{reA}狘zYr黧Щei6Eǐ[ikGShݯcak,yw RЁcJ?c S8W,sz ):22 sRn,ҪHם<-e a S|tTT2X|^TKw bI$=EڼBRyQ*^yLj3 fXa<"@֋670;yU!IO摯/`IE?wq-y7`,FָV9:辅6`L}tM̽ rzDAKB*kҐJFVej@p.R*4 T*$ф`/ ~ ijQ~pP1:O1=$"^k1?g)._$_:5 `Y ["") #IpHB X<)Fz`qi:3j2-ǢNeL&Q "ZS5/* FD\gMҭ<+ޕr| c hpu t=5 VLw|vR\ 3NBo.(esɱi߅"%YBAl_s@oc5Hif>*/^tJ-+[i!<{<>d;uk&/nG}wj=-+k3۪Y(ѿ?qh@]1@bNdk_SG8GY@Lu O0c܇2@)՞(@Oc2R YnQ0+߻<1@_83pcT3Z0Vy59^,=oKLn8ZpݍY 又t[ G 鑀 x,"/eZ!1 +$vo? Z̚l<\ ?W.I,V>"4b}t]]4DYVgwS%Cݱx؅K`cN4C'$"`Ȕ2NtgwEnA#}J)J:F3ⷻSD*Z|^-a*G_jcM+{_ݮUz[&\E͛vxx n'ȅk[e~8<><4Vzz+q kp!-(AZcŊ8J,~q#عԵR!?` ԄrR<>]v2 q$8g>vS2uNT<iˆy>-tN̫֊nǩ*1mLwؽ7|uG'.;;Uާfcm.e6uom":e$B+/Njٓ-ɭCevF 횐8C{/ͿYS ;he5.%,aQ!f7Tz8+)D54]*88mp=+ ȼB!q%Ȍ&FnHE|V#n z507c :Q"lheNaH8KVG%^bCj)e=y%Q:^a+hqXwcy*D35@M sӖ6 "a0tam ?Rwq^2e@؎ǁSaQ4U?Ѝ*󜩅$U PWd N?Xz=O//V?G^1TYtQ<bA Yoqcu+$31/)sa~/VKЅL _lmζ@\?]V_N}o id|dgtFks ]/N鷱y6 ;YLyX6W\up|XQ~gBZ}(\a4>.y'p{%W dT͗jIK9<;@lJQ}6e}Vgl |묬Te_b%eķ3 Tݡ9f/'Ipk"VjT.,B2z+=׉ffusyNDřhEұekCFr 6qc"ڟ[:73t(JqwyJ6ŷ݁pVcM% n{fmk$8N\Ƽ&*YFTj)ѲQ!Ա7kzJpovp_U&W]Ha;7;v{CQ*[9{k+jH^Nlqm'/͠KG6_!'50RWDAy jF7¬9Xi0vyZ&?iÖ IM&/`EZY Y=B(ݕiD]$hy.'+%1'*Yy/-0Ǡ`J<&99z(NGj:Ik=Od&:xڴc& ~!\qp7lH[:ʼn*yĴ;5*_6UgcZwd.y: `XZz Y˿{^fXw%|ӚAvs =9;'O-'gGvL҇HaFj'+<Kr &Y]lګLCyh \}1|*8Q 4u) xg] Tގ7zGco"蹫vϰFfaFJ &t(du,S-ASī!=:@өCe3۔ыbIn5}G sM7\ـK\ ]/;7X?1O C ެY3 k+r4/`42AC< BnQI;gqlQ{eYppR/pR:NN6QddRmszC' [ `D6}"hZʪ9[eh3 RW֤gHFY#nf!f3"s [=X-iE̍aRA>vpC)G qP@m3W6 5Ǘap`NR3p#͖ܸUT,[޴h5PF# d": 8s@Lr\ED.>3!53z6`m%[Cnۺ|'ŨpGU n¶=xh%kR.6?w]4_ #$Mj^" /u$ kX~#[M{oެw AZV+rp*bQxsخT0Zѭ#a+r mnO. (Ȗ)#yVWeURu23=Nf8ʃ __ڽiW>ILjAٗ_n|Bcc _#g[|~Ff颽 Ru(YUy B?Bx [-BB7/=Z961W0a3g?<܉)Vʚq/w ո YV)!ގR)\=4MCzWX݁:%S  U=MҀ!: tyV Z G(&ǝ5/;S.{_5(cBRIlȎ+S7@wԯs kg FڣX4LrR8(/rfPn-ўZ#FxRy qeCyE"fKwY҂Z=x'z~{j|^O)koav^*UyM(v~Gc4ϙˎtn65tw_rzrOE; ptqG$h1#cT]N ?_pb'"lEki~GY% lLGPwJLH9Oz9sooY]nZ<휥t=G޷g~+Uu`cY"5,X\=^Oꖺz n ˇBߒ~ qƽ `fLn7@݈׆.xb u9X68j&gώ[-2IӸJP W`U/uB|n%RrDHaOS^xm&QOܿHgL5>P 9j &q6Z;'i\"i,sZJC$UXE ONDQŸ>*~!/5, @Oq!̄f]pOdğ&*b%G"5jKiMN 6\&lK'TcRms-$ w`e%87ܝ|]݀{_T=Tuɇy*qa%m_hsxЏ HD|"Wus~ !^vzdRI pu!.R_hmr"\ '  O2CfHYS=N*H]N;8!~COu`7r-1#R.Dwئũќ MbDn`iRZUb5EֆR*9RܤZQNLG'Hs~WƵ_]v1 3ٍ[hB^I26d v+8φ{Ɩ_5r}" AuYP"cCڮ$Cl!R^c{`<?"a4:ԸJ_s򳲨~K8ޤ@ȱӖt=*0RX^xB!%:|YvMM!ncji^C# U'uW mFO)=P}TŌI9-3E" Rj?K^1ND+ZPlԅy3e$3Iբ zX}]9yBDeȓ( 4k>u ;AD)oYM*vrq"/}-µjo-_QڀA;ᴢmϫ@!_ gPyE :$IOQmSlClʌ${AfohbI*7.[|.un@3FO\oJ\Ukj0065R%LpPGExs5% {"ץy ]ܗgQ'C *= 00jҰc޾H&(A54wJP^CpvY=Dm 0!!K;ԱUBGics ܐ)خ7w(fn#jup@xmlcf)RM~繃t_rhlT*1B-cD*v;T%< @,}3>]]]z'O I.VoJў'&JY t<򖬹,\rle%]_֥.a(W ;_(LJB05FvӇ6nYr@ n(J,+籶"Y$9 5 -mu[*>\(_9&^AJWJ8G?һ`AAcIJd*|`r8_kXfpd1-Q *H0de F|5/9E#dMS˞̕,r ̵Lӏu^՝!]1Yq\B|b hĂh=i*aAd)%Ϫy %5wb)6Qj84>H~jM .go{J7}Ki&Re%VPO i_Nj |Nfyb0cv-̺!9]*iJ;s(zqLdpˢ >NvN^m97YC3@m`ςBz02Y gԫWQ)܇9ipJUni `CCF޿قjQ2 "PC4!MY%ݢ}h ;&IMxn$Lv%HwmIOAn/1$4of?RWrS:1 =[I?8lRu} + Xeͧ݊L̢?f"y-CɌܘVF]d^kOyEY\Pr>ct2R V:lHzn|+ǡ6uχ91 L-Qc6(%=k$^=Xn[fD54"JωsK+$tP O}u\O#5J#_s<@l=0N8>AݯDQs nv`vxQΝ}X=%-u) LWhW;-Mt7,fr!VXwX $k0?3/s9[US1j`a{؅1BhO|c_!6hbl$56bRtk!}m"Bk~Y}l!m.qF_Fr }ORLzn&]mPDs$,:3L%A5 ^sDGV}a4Xx\)o:X{ )qnW>.V8?vRD_ +"Fs#+- ϱ9zDWm% wBpoTcʊ6M@ |ŽOb-|$hj= Xy2 ľg4mn)Bdo$YarQrGUyRtWذ fem;!\B]~!Gڞwu܎r\oAa`b zoNI6oJn{grq.KFTQ/ U`fbEdoqD_{͙2ujsVn޹R/7`6/cSኙaB?s n?JCF9b{ߩܝZ'uVw'}"'*E5Y?VmI4s`y)tM"<zLӶW ^) OQw7V^c@ 1U2o9B0Ym"60ӳxF[\`w`oRfٱ'Tů7jyYxCug6:rۓ1CMϐU7W%M#RV9Gɗ:9 14 肚lfduNiFBLY=r-f]`Dz/ |u=|xYdH駲dszLR}cETq[Cn +mbFP$Mn2|[` 8!B)«3DS0 m"%SHy/=: ̕y 0SDzT EЁu2b3)?ubs'w娭.WԹ8r<GNDd F -e8Z>&ysu+qQ$!Q`k \Ñ// HnK7x0D8}`DPX!H0 c*EmriV7oqxW::02SG_4)W(3 ;vC_500K:IJ~JHX./,- &튘R}3hS}i?MϞl'v? mkE0̀pF$xÃ3ȏ7&ADxHr5 wP6YWdsPɘkƒvI{~pFFKxQ\; krP94leE%љ΁=OgHs70D7ˉ)kmKWkG JNg*L3٘ cAϑzI@_u{?u@!HY)4OmrsEhw5%s:g@w'C2v:%[RC\KUrjb! VKA/7K#*xPR 5}buh^[ut39f[%1ӻV]{?LRy{;{7ޏ|F?!Si#FE { Z9T>Zc!H֡l@< &<eH+hp3I hb-|o+ы][ػ~a6Zg+\Ord8J38Xfp+$髓rFA-ݲS3#dη"Un=8V5Epow* :.oZcQ*gPgr[5"TӣN-eXihnT3JtÏ|;+7p.M,U͋+UŎoKVQJtCe)r򠖝l]"y"(ơs@,(7Ie&)#Ł-O^{%X +d ^/Auח,]6Sjlob%t`L/5p'0#7z,V.;UuMkKۧ4*^@n4Dsn2wPLxV,Eɟ6V:ݩЧl+}:cH6:D{B%\[ϢM~1:R27=JIe@;v P_`(&6'R4½nJ&{Za\,l֩EYU@`~HfiHBeJhuvBvvV٪ұ )vr9vĚXKҳ9ݥ* oğkf8JK ? j;"ofV8g s&3[nC#8w$B-ZAU/s;85PzKfU/(*+,&!\]ntc-Np&M3FH>[3o3Ծej΋evY齟c{9 Fܪ%b$Uzd4yk=-cE* N:]e_۷WLߠeH h|ŕ+e τ2>>js[Zc<@N5ɒ\Du+mc.eb:l%x6#KI EGۡy.Hk 2h)S>pXW.4l t /~<|q4@ 1ʐ,۰"a=w΄F*BMe}fPL^(JTKY|b &hCs+4ASsPcOtMbAFZ(gp9!'T=cdIzl)5EIͰSJH%j ĽjLWؖ)R[n`PtW7WA 35,H<^.8rBI 0I;!זfebo41SOl km4xOK @,B>':CcID/Rn|sQ#R5h!RI;j|G'e\z!Zv*tJFCF^io'D̩1|1x QP,tMe~1'Co0=iss p&* e$l=OhV~|C Gu~9oJV6@7Iܓ5͟جEzot)OG]6N|Z99]aۛ;Y(S4(p :-s%(OH%ܴ Kktܭ6[[M7WC#h=%G'DvKH/eng” bJv}s#e\V!NC9WtXr\GXҬC$ Cb7+\]/_t|Yq04@3 |wМ0NOUpv[+h.溲Yw=od\̇&S6=Bbɤ(J:_L2ZO!RcP:aS L׋Cm;oe}v3BlBc 1J$ e?-Gyv^?ٔW9|TphXOpE(}3WOLeV {9!$eBG\AXd yI@@DU~Yêjo$~AF$"H=w||JqTtXU/#@;?"X;RYҚh# -3ćGka2MjQxuLt&o@7?,1iQ4 ŝ؃wcr0%Ʒ֐ 9 '5P;vA(mFlù;I /( LȌGg/4P, [=Ӹ$Hc%1zw@0x;w9êIE@&qzE[üv8Es|Aڕ<Υ`ƮURVR=;E*vڱ i\Ϝ;FLʝ\Qrϸne*G:*L5yU5~N?nT`F)y+no{摮)Wd20n5 pRU {XWnsJz#$1nsj@ߢZo;23# *%Yۭ8x8Fb&xʨԦZô1qg `iV oPs&N^0 fT&%k^.iOGfL%q+&wii( O@ܯQ\''kI3Ƨ-hcc8>%{H5ֹ^Kwy<݆ы/r r -Ϭhhvn0$% }'1W+!#ʭ7Ic;U mf%M)]’HR˒? A|&="L{xrvӑVJ^ TK1ԪMq&b HȍG rS^JFKsFbfq8`\xe;;ɟl~G+fI5t4lEBT^:m7`JG.yjo Zd}SH䳸2x:!Z[Ƿx-eG;~,$^/8\NZܦW>~pww| /Nxg ?c|%%+&T4ԠOD>[ӆw&0K ?&;%y0 Ec6쮠7o6Ay)hߎz3uѺLdXJMOPH&ՠ2O&@_09m{Jfmkrf%5մ+HXba?yHID6Ylve[6GE` e3!" Wur2߉vϘ9?eG@cX^*~bθD? 5\k5Ww1WI8 @%vc/E%N<e?D-xSPJtźI Bm4bJRU1>\yzaUQA)ApQ U _B:u@$D]NH^F2yEl%)#8<po`|w\B'o>%imN1J}},=ln-о p/$w 8C1!_"#7Ff#X\ W1Wmtsg=A11H9Q`IyMb)j+v+q%kL)g`}H4=1#2Bw\X8[P\?%_!(ᓛI. IB:] A_2v_ҵ/"j\;gIE34Zlާ (km֗@kEHM=^w=תSK7oKۅ#r9ÔvR-ΌoIKGKW;;n1.„&3aUuR+$CQgLkF øk|Dh,/DБǁ@]rǹ<=yXC"7Pi˕ gKT edXuU ]97W b6'R% '^iZEz(4z)gZPb zũnH4l0.D&: <z" sxqO\_cDIgᝒÏ3S1I'GZm霛_!i(I"Kѭ#n| > Ḯ(Xl (ݯ0Q6ԨN.^ w+V9${ݐteҳ} iA8frݻ4?Ol!^ ش`<ӑ>[^7m;wpzekp KaP_#ΨaEDpz՚{s7@r k>XǽX (ZY`Gxw ;c#w&DFrMR\ObEk(Pv_q}'N}u!S|`%RvwX'b6,QA&TPKxl`kT.e\6Iw#UnB_Z Ys"h>uNQ=G>ngG'[rX15K2Y 5^ %|S*UE|97j;MYeř:$ArHWR{8wSN#̧ļ:}}Z^q#`xԒnUd py=|^_`M~8(|Uy8!}$~FvN}HD4 e];Ρsz J~+se@aZ;W'j%G#9)_r(*Oh+QZ8LDŰ_\dOuʼ&Ƌ':|`"T'(k C8^Nm{\qfS1 A({AS0]] 8sCF*6Ƚ›,k xb>DQI5kJ,Yq1J+zХV?iT,1s\@zpܑ N~ q Jvy/ ag⼄eLOt)t8Fbڑ< d6meN4n-X%pVI5j񑁹]5[9Հ׼6S.=\n{Z Dzam=1 %d]'&0G |qƕ0=].%) %ZlR2iq*E~mڱvH3uΜɓq1c}bsQ  Nj9U@rʁXˏ_dY+zWu[z_58ZDcpM!snz>#j "F\<7 qfسߏPyIn|Idv.X-_^Yrۿ$:mLA Lg^0W^e=&D@ޫM{$:h--61J ֲPhj1%|KASpϺXz) !u31B6b۝D2rwx]! >qhW  )cn^v7O.* |.cp3'9CRAi pV5Ё2oW?^HOh{Jl#0 8HZglv1ve  0%Ν?lHt}ܓT[7{Qᮩ;:=+^[-l_~3pi+Y5Juܻu H4ǬsWthsl>mv6K6 ;PF@G͠A4q"4g.;pT~>dV,s*104zo#:/dɈ LQ]degQ$.KuUp3iqhRًACx:gGQ[WgYww{-$ ,#J 1Ĺv (Fo9<#y#ߑǾc d^yz=dl, %F;AIqLX#_J,}T]ax7ӚfbkՓ-ѻ(KDeaƒxV\Kv!TF6"g:-f]B|1zV0` 4Mgwo~SDD˫,B%o\旉o8?c;5\Jxӣ؈!/(Ŵց݅w`!ޥsy&#1| '"hqDdyMmb$wnѷkQ.7_Gmua4rئIh 6*:0+ه._ Ji3Ρz X|Ψ\re">&֢|.pЅg qh&GcA|wvgᤴJȽE3mFbruo+rspʼr`OP_ 1-)HæmAU[`$;FMHXNj:ːV>X9 eM D|97RH|".`X ߹@0h2ۏ9/c-p*!"0ƚM6Lp%96IJ*`a+[C|۞3L]hzr斞,d͎p2ءWDVHAĐo. U%5[Bo:g9+]γ2- Q w+"J7w"K&rBrb#3ǽIZNQ]ZO:xMW^ial g|ޙ)-,XqĹVt^\sGHH΋4fT#]]VPdbV$-? '/٘.X`aƈ=]Vs,uu̲ NVb y~4 _?B|iƪ>62jn ({Z3C;j5F+"zy3\DD@TSCԟscJ(>wN K8'} vkccJҭ[pmdĘ d S}*jcq4u9RӴc|Y|cOCì!@qS,L7LswL"=I ;R4OJ~`US$om OV.ؗSq ;{|&92A,ysT~:f;fcw4"~V~*m?q'O7cyDD`h.cJec]5hmv'+ xD~"d?FϚUMKhO-gsl=vukWJ}n&|n5w] ,*Ik 8\r'93% Y ^A=m-t& d `X*HlOFn6y)Pg<'?dBR(= 769ӷsi#aR"27X$ߩT0Px[wupi+oh|#_Ӿ>V-iGTQbT9|sf C4ӛhZc( 22 {fQJKG>mnMt쩢sC>YE;Y r(M 'V7gɥ0(^\D8E$sGLÿ5Po/!CQ^4AG63x$SXSOL-ӕy'M|jC5N P-S+&`Υ͊ʊ霢޹H߉?v6ί\?PԦz & > um؛;%enK_Xw=M%9YjRl Z*LQg"~jKvH(KeMW#2R%߷^C6; iůWc+K117IEv AˀҖWXZj__lOt3SyA&$mQ[i3DT nq.(>o*k:%a.191ݨICSZ60pGIiÑA:bm+ȅ#ڣ/$Yuѵ ~z G4ˠN4r}[tXL#pO_5ؾ|H tG1,bG ?G 0.ؿ1G1W x#tT$udǛi`u܏M5oHp)/`kQĝ1rGdjB曜>DH|4rtԐg O#6~|_kcEt9vmU$,W mg6嵠^2ËZ[N};Ώ|}[G1N_oɅNXγA^P%Eմ:J!L9Y0ؚgGn^3~B찌d G=xTJqf3_S`|8$gtRjO,_ǀ`+b6o`'x L-8 lvSшv<^vf"{SGe\7&Ʃ \Q$5@e./:g@J#Y6BTv ĖYئ?"^/JxʆsgƥQ*xXA3@zڤt{e;M_]hNDeK? y.icחQ=in,M@i)wv&:7Bt`|8ZU\q wÍdAHiWp|QNv xΟ)^-~L>hMT1fhLFxaqnK [44cXttkZ&FٖnW+NQ+'[Ǒ3O fBl&S53e 鷝p vԬ'AU{w)0^G{PnЩ0jR niL!.F /#⫪,Y8K{D5[0US0A@ڒXn?J$Nϫ]K*򻫮ղƿXC0Wz~%۬-w/ѽ5TJ 2Mb}'&.edڰ捖{{cka׶G#cdRѣ3CWJܽ )W:Ff#`wyh CҊy`*3uIVI{p"pL ~Ly寲 "T:,&PW3e D&߹Z]?UCD*M4~Iܮ-qr%tOvM% `E.;92ojF͑ Lmu7OU졂-F]d"dW kyWxI4]o|xc8Sa\ME"n봋&Tk֪Jz[fX}hXD6ly%(`[JUW$>Ww7zbNUu4Z O52t%EqrL~M6Iš˥4Go̭EdRH~\/2jEr7g<39&0t'% 4Vh.p.Oo87S~Rr|l 4x=zeLƮyٟLr=z&&;.7)OowуcxXמ?4 ?BQ.4Z4"# c'P7c>\E M-` DO_7dK Ou|~)YSp=(%8Pb6שRfc5rb-Cc=') 1QH<ӑ^] >G+gZ+5Dt̩[YyJ ̹!-lڦ O[kJ] xgDu¹uo gpGBC5Zk6;n0Ӯˈ o̩`>L}Ü&+WnjjA9+>"З?'d9-SH5K pvwze\G xpQcȅX+! 8W,Twrf[<[:v Mih?%mlK~|'֒SGtGHɅr;"+Q)ܠr'K%~S.O'TRv:cc?V%qޫ\"2lYspw0˯od!: =j, rW+jC 4x(U}~j mN!݅AQ(ZaytDa35'cs^w7Yi%_7;W*j-YrEwӧ>C*) 2T;N1]g38(N] ?fR`אHB*ELb5dtʨn\&@rj0W50Rv1Rq1>}wQNo!.uI= i/P~fkW gyk$m.$E-KI0o:ܽ^Cʨb_M _F>LMjM*88o' BnXa*D[d3FZo6Umls|pW̩~_C"\x1c=4q"wrԚ{ j{s2FW ֿ౸/0:>?{QdGQrV!tXiO9NHs A 3 vIb5-U;,V|/NXHz«ї/4ǝ BJ3xߍD q)it{"N<$kFl/pQA2)ͧ f5 A-&b"ؿmB$ |hA_c=͛3@E|<` N^INj)`(G-MQEVx7!"ND&aBl.ɾr5G+oH @dkz_̷㑒Q=plZ@-l[G)I94= TჴHxf jQ✢\?P! ~[\7X q >Mcԇ@J-? 瘂6W[2d40KYӸV83ڃl?ܪ,➉esNh?GEi) ߺtDNMP^IlZna+4֫Fb OaGpXt@'Iy%{0٧]ib ƹ_p?#X ˙`ri[n#(D\Q9fS0y_iU$)zvWG`L{(Vމ:єqG~v@?w:2d 0WtD~x 搉視X}`ѱI[ʤC^Xb;6nZ9z͓U1w@ο?0θ&>U5`hXkMל'EKLRۀlySؤ)GOqږhl.8x\2+SG΋hk۠_t![:<|#ݶouz)eʹQں7tߊu]x Q?obݧBh@8IY]9uZȯn+/T޶P\E-^W,LbN vQu7{uw )<$@a}m+>pVE֧͒2.ؑ 7 j >jcd4QWOa.a/*U,'iP%$sI^!Em 2N&QE6*?Q 0Z㙵!g9"?wYӺf>BKߕkS^oijA,ىǞ@3"yzQHԒX ApE[˽L\ ˆwA ; K33*[{#g&'&+i RQož1MJ 8Ujw`FT<'K_Rsl]W|UUn䙦jOeRW5DB7}c=rk5ۦ@ %le*cnO$J wؿ\KwM@(ڄhn!Ǎi5L=\XGm!pB'v8|, ˟^I^S4(xg` U1x/HS7$CN.65_f 9qH2?t u LA;J)1ChmB(t}qĈ?{ 8]AlVOxzYieCH0]~ntV8d o3Fb%%dLԼe1ƿ|rr\D4$+m&}wn|\ ;6z9@4[wBsA㷔25e;GE۶Tq  [ckT*j1d)6Eɸ "H/}n7߂z1R-̰DHÐID_"vT0,k>l'@NMd?, ' [Kk@|kc:&+ݗ;5̍B,,kVr!#W\L_O,`SPj=ı斻NUF-|N?ɷ棁aQ˿)W iQB:$ ao(JNd$B˷ 77tYCecAQ˟%ĸ#Ң5!գc/_213B ;y'|$nYuU)d@Ar6׺ &k^:Ho,C)T`}]jp34YBujxe-~Ado7eMTW0?^0PO}Q) :a%Jjviahf;QRz{4!\]ӕ-E~kW.\LǤ %RWjVlA_Tk.`<2 0ZJ޾]%5t<^pCP~) %Lb;:+Dlu*S"z wb),:șMmAA]·1e9j[IFl^c>[73{K)(]ZnI[會(`5??2~6eؗC8e8KFR0!*xm3tCYݢmGkճto52m僔dSTFˋ6a-:j$( }nY;83 ¶zPt S,y/L @x%6 3Y knz4aLsr |+;t&e*VRܿ_ayvʥoդީvx}Z9}B[:pnRavm`~$E3#^(bJ*vU@ҚR8ai2X9B3yW˓ӿʲʃ-H,Qxe>c)p(Ciob` K!D`5 jĞ,|nSuA kuޛ. iR(T١l-juR$j8OɫZݲ4xA^un+ PjfrkNBc}46E&ɐ-N\]ΝuJ;.[PVQRSCr }Qe0BSV5G au UnXഖV%zWd# ŲOitVJϺᣣ-3t%e%5O?I#2Ur^(ȅS'y,B&*5ۗNFP(iD֌qFJT)+НW2IZ VTra>^[a$qbI.t 1 ?_qKV p[*%Ex#XLttU:@wm9'MFE-b;  0&@ZrJ،w+Tjoe܇/;L9 jZP.^"x+bY1Jn x@Rv@ggKUru%d5g~D77^]~b{è/i@FSp"(^ и Vڣ߆׍:?bnEbl͔&{xuHT"»]%7Y-*TPVC0bS¨+2ܣ}=Z=BߝGȫe4P ҟlLLA3S}ٱִ,CtS;:mk%X Sffvْl au7D/x{w14 Dn~ty5}􁵂D ':r#=<0aL,^R[c@63Jr^~ rp@dkˡVZ492ZaV9Cvn}Ilٔ$a}T[=ɠN %т,5aSJɈ,$5іذ-K.M Y|׀e}eH+l]h m o{y}bwE(vNKSJKy.O$bcf;HgdLue[#Nϋfn { ]5FWTMxG6/FI($4b52`̗@uMUZˤ ?{ctQSk8=!Fx}Y&, i+5v& fS^C$s3zt&G. *q1rmũK=قw%U.],|eͺ`Se)/]|s; Q(@ςcM!M^+M9<"J0dqi3+V}○Q3#(!̎$_խ"K؍D0"&6H uמԁt}=y heOJAejr~\;o;m•"=)>ӘtY>Tt*ڀ=y}0 .?n."?7X7S!pUrE8/K4ZH65Feo̐ n4?HHT5hdc򆞄0)a^"@Rn^ex#$k&ktq'i&[Z??e9D:˧)zAܻ۝99lReeЖTKJz_ ~J_[*u~t OQ "[!n15>*|N'9PØ;-MW%NwSO9猏  ҍ깓 \n &4jKՑHlャ`,_ *"H#)lCNV](Lontm&s.|_hWnP"Ģή7II&w5er>=Vs;s߀=[ Vv1B51X RIzޠkˢՈq31z2K๝{,nv hQy+..,ߙ|ۻ6&H@ڙoK0i61 cU k,:Ͻc5h}*("b4lCJ(I广 zS:0>@W;|]MVӽy@@M#wȹZ܀8S>},rꖑr~󸆯AMו^u3q(g+CPf{i;Ҟebloӏ7埄;>, 8?:8.w^'Kzlۆ1c* 8gs#F9b.PHeK(<Bv1T/їt8ZuFGG*/2\{Rj~=p Tˎ=<$x*%l y,]RK: #v1FxTX:( o^$]{R Dprxebzgئ|RJ愻NNbE.7Sy@Tb01_܄1Gc4}[_|@bܤkG_X*M"廹 *Ґx 0Y_3 ֏oQC bap#,sV~ߞPwUl ,o2?xuW=ݧ{)NC,N)Z`zt8GZfnQ tU[ [?gHŁqD~DoȝŐ⧑IɁl[Зilj/DE0k\HAmq,UTT ]{ μq ::mIoA߀A"+Q렆50 ءy "'15AB&jHno#7/wrH XFF(ͦJre\p ڰeFEyW뚨u 06 ͟6ڝEv{P{iЇe 3}'b /5K"mCz͝MH-7ȮRSˏJSvz+1q]mtӼ2./^{apk`I{fE?jk1f"PKjveH}D]㢕! `{K)v-φߙ)r~f%Vo$aŔeIS #Bhi;I{2@\>}v##JpƺK: 2.At&M䤧@T:Bv18.D6;jI<t`8& dt^(DbJj#V]R" X^~fos݇íVdqm!pQɳM̀KtIW5:(j@,̻ 4%_]򱭋8֐.{o6;mi0Qhᖘ#9=v*EKf. x5b]' ' ],>w,8af1wb8 *OqLRj½lYsE^u92?Utyk1q *Sp=)f[{EXq7qUs-ݻ0< !tCߙB=E-Iz%y2F\-VXytiMEf^_՛~aVrfڝ24]Zd<=_}|]KH r翹M~Bh+Tje4;x1ON:c @6  [#k2xaޘU>zv?y%ߨ #'l_&h"ѫǚّV&fPoB~h$ G$*V]".3Ӥ?_}>+p H0}jʇ Z Kn!Yz\`b@?'pw|O%i隠N# Ǘ}ÁUo>u_1#Ưe;!RY{e50X $9(xب>H]F/X kb`l=7&I"JPN^QJN)](M:Ggyи6_n:Kls=Ŏ^hOԖ$ Fk(C"s Q|ڥ`O/@GzOcӨxh-/y[5_\jr; u~j¿~&C\i{)x3u,J5A'^1p V*WtKxia7:TO޽x 511o>}W~ktͭ}' ##&Fg֕Zz&+C\ɉ%n;춑>1\*|a!uجxA E@)$†c24Yz.ن?T.џǗTujs8GXDD5i\<o7h>zDվ|\rfAlf\ubOPȁ/6¤)!^Hv=v5dOwR#>FIT87;ʟ[{bo.cU+aQח p=Q.%; ! ߾kOeʸ|wϫ-I'dKs '02w܏}Eؖ7"i:szx9,FYy^UJ*FT'Xv!]*j;XJz:^k.(5 1pe '9 |, & 'OV]ɳW6~ShfT-Lt\WQ\c7jBz[_䆯%_Z} alq*A{[a0sZMP5NKJ?.FLJj׵BYbHo[\tLm5hB={(o2t]l`GXƬl2th'keRY @o$E7F (x"4dXGDӢEJ&TD,Tl sQ _ Pm1vkgyr 9j5,0h= ePvy^:(\3 lthjhZ5m% Cm auCPc%WRHCpv0Ip_^% .;Jzv 6TU<58_) Ƃ|CӞ*)}:C٬ѺNә٧2 *K1E4KDT U5{c򄪊 AgNU+P%O.V@lBTEJ"sYe} ^/`6gWCNYey: #)cSoY<K4;tJ,F^f% #c\=9XnWL@wS & ~JRaГ?4r61'*K^K%L M\ECr曨 Z9;'(kK7ZGe&`n(FJJgaH8#G)$"mȿ =.)vJʛ8Z}eo FJ ])jmVOsE$Ds-}ʵ6%sj l3 ~a&CoEŗR"pΓٍᏴ,ړ'URd+MOfӧG `k(^ɝXcΡ$b>uH|._)ޭHI-rEhۊi+Tf`~zM^n \I@ƂEWv{u(gThI;T~ @˛ʘ/_U$.AϘgv-X~4QGj_a.$jYJX/)[[]"3e6Fvr=A"GGfc{dT?21D}-(;k~k#s;ꃟa} +^X5bCCiX7FQKk.$VaOY'>06t+i0%% -iܹdCƀCzELӝO]iKi=1/{R|ў ƜE|)/@|" ICy`5ӆEģX6do.=0 XYmcc35yhbFU:N Ppq=9w*/BL0lnD 1AWX814 H>wc e ,YQNI΋axd*J[ bd~ q56FrT>E (p[oCj`B؍(xDil 1tɍ2@l#''w0H]=gĒ;anqn! ]RbU)MF"];Q ;q# 8l I1Wޯ2G}-@j$RJ/m|¾"NJË{21jx]X9XA+ o#eu @-dKH 滣bvreyv}7D&yZhVJqT*n4bߪ fWj;ܑ P+ 2mGg`0 I:[Q3OO7)tu0)4}aFZ6Q`ecȲMA `QbzER_ KO|y&jɓ̩ihJgp_c>&: g5>5c*ׂm(ds:X@dx{B}yj[w+sJl9&]8j`^ &"7 rB3tgT)S>=t#K.YsWBO@CF6D)qEDA@O"cjOgj:To+_8zKnH^I EZl(FM3 TDd b9GJ1ɥ %˜ClP UYSgw~aSXW C8`oeϓ^ZsieTm>#zmzVٳ%3F5'T5&>xkjt (Lb9/a64ʼn ڛ hw)۠/Kx[m )] \cA-,KDiRKѲRyk` q[{%F=súZiU[;^HxkcAmc>Uo8e&^4f>,)ecfp!.R*,~#6qWzlZ RƂ`45G_J,pfٜ^)qrE4 `_FՉ#97$Q+U'w[ap[ٛl֗MS .c 3_x[CB"5*؇Dl ͆8V|qӎYr2ͽ5T\K6ׇ,쭪ibA6&iZ: hLfWr޴AVbo֡aDlV1!yƟ8j< -c˷[ zOʳ ϖtxa 1CҡN,|(t_ k&^Y]>l;z=O^ij UuҽtInD\foN4U-z7%ɘv={=ŬyX}s!GYWAj̺.FƟ'*;N}敒7R"덶X|1p;RUAvqzv$8H\Z!#խvj9'N$r7O yŠa yFM80S;4{t6@#ս2A/] MC^S(Ē@SGkh%kVqs{l /};8΍ C|%_(7\Y(Np3nAIIm?Ռ 4ڝœCF=!=L*-:闳85+t]lC+ߕ(MwI/75MY۹7KԨ {U ?醦LwyЪєV鋭Տ^OG[o婑՞|7|%+R2[jѲœWWˌ;1Qh]_3AThШJW!H:iGoR$s81{ћkC^!V;z3oigh -k \5 ; ֤ Ih\'ʛgI͐^ă4z8=Zv-:Do瑶Yy@QA%~W=cd8w8(ie'!QwS }_RByU&APWIuQǀKS04;-mo"0{Q g6r}ˑK$A.L&/\aO:-uQn޵@0A?Y Ngh5*4e&af{F)Ohgʿ ][<)Bt1i-`c=)X :l.R￯ʧ8rr|q4V/vƊ=b6a|k݊]zi>񖼨z"gRKIx?[2nRS4^UihYc38aL*6}5f&PtFv &o^[E.믶Z܈ݭ^H`Bfݡjf{ykMQ~末'7[rj>5m_``.:+ڇ~Wٔ^¯ʓg +Ux2=_!>QF?*nH?a{^Hꎄ%lj Ew7*`'0\~ *.7c\Ol߆'>{?2#mcC1T2 EJNB`ۑwAGCҫ%䊰&5Pk=x{30,O"5;Hi$%lSd򄮮 3} /ZЮzɭƛ~EKQ<4)o(T)u]\KbsNwB] -GT gaOZ {J3Kr(JaMZ qzBIjp3Pr sS+3 /'ֽj?W*k7b׏":X1K/8q$%ZE4$aBM8ҍON󡴇l]l#UTpS7Wp6=\LT@Ρ<ԌDh("1,fTac=|kD>Es:f-""T&:4G+l14͊ovXŮ ؾ)|P܋orv`SP;<-$dn~ʈ]k zMl-e߅۟pY[WSYBLM4LA*>09.,/ǘ|TV4dGƻUv&R1)/<:ɇ^eخ1q̰b]7J({nis =5q+jbHҚI4f/iZW{JUg;l햴\l#>k_ =9w5)5Zr{d|9챭CBH*ֆ~K' x؇Q *W4vbGq\1%jޮkU%0aN&&burLF6eˋD2>;#r[7",^1<&{ JW/lpD";C#"? VM52V rW&H ~mlwn1%eEU @q?$ fq}:x.D-)I0zx3k&\~jVpe3ӵ>,6|T@ĭU@-zp}:JatvuȘ'q4u,Co&_`5^+& 5]G\qV!ԭ)b1y(ڗ؍w3۳y-0ԥm;`34p)D;[\g}LՌruFүLl|1Ӽ Um89kó7|d/_6s\2)Rp.#ӭN{x-b#uϋbrʝN93On%vQ/4b 4?j_Gg[TUTޠ9N #'Eeef֘HoI$CdV_,͏fnKγŇ#Άa:)̶Gъj3d#fkpbVt{Sc.qx"h^+f~QzაNVz Nj;eʞڌc*l5棼 [=s(M5H#6A{FGޙ+Ďh';Rbo{ vO"z4-E2"RxMㄉiWпOIpjsvQ}kaքw*q"Yoi[M*N?p>_/8$"ztX+tf+pR]:(ʮz|7+4 e6?eҌO>)ԥR=GcӘc^UC7|ǩ9emYBc{qaa&G-~ʿI>Tvh|6óHdt=SEű5IIxaD[+@Gpb1eyBfͳd 7SZ B{ &Y2@i+@L{2> u"8##TwE*N }UOq 5?[s>{+$itɊֹBKbG.=[@p $z9 g˻7zg\'~Vh>1.ڻ4,9U¶@kͶI"QtFѠ̱^o'}d0bRuwW:o54]-tw$I;ʰ<qoy8ǸM({sVQםjWY#8ZͽQ|Vn `F0Y *t轄"Q׻Mv2_N+<ӻ,iN-0T1 M f*㻔`hS٥b֜@Nm|]+W"LR %ivO-`>3ZސI:gP[L0pkS:3ŵm?A|ʎ3[=( +ialzh)4r6Y9bOTU \:>~Qt4;0 ~Oma d7H%!rODj_7 .rdlhaz;ItF[[⤦Yv 87yB"b9&4d%tPZdvRϢ-rqg@r9: 4*%=ɩ o~ǢrU8"!cs6 *fgp4qhoG0E)Ce@5uJµ<Q%|pg + b"g9ۤ=iΆ+ 7vy%vZִ˙P5+xFeL;XNݗ*j//9dywpZȉ?6l v#EqpU2YmC&М^"O&.C8VOH^y ;PlDƧF{SrGZ cH<1X{ n:cɳծsġHn\ /fbX[IN'I1W15*&oM_+̶BFLLkQG4:;; uAJ(!4Y '}(HInPeAaL-'f63WZt!^wA%VgJ:^6CWH=?eܷ>H+n܊4 ,uҴ$E7q|s6NA͏'pYR웤n ܶ`ڃ޾Lu༼QߐS,{MS X>e-V xm틿rWT]T-*.!.$oUjYg 9 QMfDfݴrܮދCn I{'sq&y38SW.PO#Qܩq__XQ -nbˮNb#8-C+[HHrz C哗8?03:;; B֨q-F:Ʃku[TEZ zOʣQ| 75~ӿU)07sX,~JG#( Di3A1tU75GD-t5i"5 ƈ.J #ӽ%v ҷ1(?{BACUJ5cn?2q)(J FS ]z jBhu;HBЂs"-ײ X7#L]XUKӿw&)ր֚h $1$je&A#* >X;/,ibդP5] f%Z"riOvh'~fcD{%+I (llD2|*mS`! bM|bCe;*Gm-H6$GeIcjS;L *>p\ދ]'l[]YD|̸fk=›m.6Loz'Wg$zSW>\՟m 6TGqe6f9h{!јjD<[--O0>$ zAê].H~_"y rœ7,F&,_ٟs_UE@}]^?z|W˳*UV _a^FD[ j1Of*2N&"fi$+t$8<Q=`pQD3=/QiDujM]~I2|3;P1q3">F9{ GJDa-tP6_7GoǁB9ɔxyRo: `6%nВbՎ}+0 I= 5tjŸk(9j'Goa=FsRcò3҇kZWfXBV!1Cc4 l1&hէW,*˜D\!7g=:^ʕ WƘdZ?\rs@nLf˵֊u!'5vdZk'Л=r P]77p= >NG:sSTw 8PUOgn\΋hC>!#\pv8;#x/Ɩ#]I.0¸^d va'ˠЄP=`cNiuÿʗN% P] 囡L՗ثQxf RMI.<0-'L)CQ ł11(`͒ oTY K6iM7o~z%dY=cO]pG֑l][>cO>aWHu2q&grMwi<OzElRpPxR8YzKs6fo J-ȡXuGfŽ6\'Pж{s)2 [>Јg?%ḿf{s,fwkJKsD&]E+u-h ٵ.X!#a7L%OQ.wBHƩg?ʾ؟X㦎߀cjQe|3us[Q*k_̙<[ kr =˶c[~ž`g$.*CY ܋q4OHG@Z5tYMu*1-4n̨w9#u@Nf=ETd!!gv+8ibLSdCReXI@UXc1RU,C/6һOw@w ZLֱJ1:*bt#A-ILQdwV5~q}FX!i4si27%J ?2ac(a!զtD)V tn!hD_>\)o61=ԭԱ@=u=McvFIֵ'.FZ=KieYo7MB%Tpr=Em;߫ʐ:sN4xGZ(<ʈ/~{,kn*ܺcr~Σr 1-#cyhw OH V?SzmrXox81ݿʼ1' B TO\sN ZUpTd|[ʌHG &J$fWD㑿FGKUھ{$va-N\z!cd Isy B[*x}h:>xȍɌ9X"EӷX$.=~́f^%[s-Hxm7ꎚ\B"ӳ!c;x 0= 'ѧOڄ F.hi&ֶnHT:F* Hu me4ZpCP͝=]dѩ+1h3fQWC)7֜jd:MfUKƋЬ]30Ч%뙮9#+]<䶥PcSuhh%}Mv%LyIK7kAێ?VTm:(Ks6( LpINë>}zs<xF#q)ZpŊ[XޏIl{}Opp>P+"o[@¤Wɫ6 KFȳ "kiCe5sТot*O;e6̅Og[@pa̦֟'y%ëËXbbRl X{M=_h&Fkt h(ǽCCt=F(kw-:Cqcɍ)5D'2T҆.Yv$>75x_.biB }D7D@#`s7 4~ܛ'R]*UW,WCiKPhT>sJϨ0pr=0(6JM-؎*XjM w^uW +rGԄYa5_4qC?|A?-զi歽+G= ^Y'c >!6?} eg`-CvV#me3eo=2'um7htlQ`iOnGK0mjfA(Lp )ܳfj O)k5ıl,4=vő(^b(N6kv sKъaX3oSgge@5s.+RBޱLZ`a:ey*>MoOL=žw?~}ܘ~yz@dzaѾ"|>I(|U#aSJf4"q 5N[/fn9%ּZ7Beq8Zf9Ѕ–tJP*Z(;JĶY)* iN7=hʶN^a(ij9s `'Hk3b~H?s3m9PeH?G JenLf UߞH O1b8y|U}BQK$+o-uƊ5nhC!"tiJf)8Db/ܟ-/O ;mx[Ӵ,5qf3ū'?}ZO# V5){:ruUF- y]򛟲(0u[AW`!+YwNAlǣc5ӟd*yY% %/ъw`DFjyы6Ks./lRIWw jZZc܉qzfy ʹFʽ< JM Yc~VwpIP?o@GdO.KL\&s:}PLH= 5jK݈ s磻a,_s:NBJ䜮 S=4P'gĿ~>h`RθE]҈jy2^FeD4QS|(iB*_c4A-.U]b,,xo=' fK)y:+ U&,Ly}6Hїq#nl9X2 K nv qF=i0|JNXRqqhSn\, oC'?lJ;!e3o0BV?mTU4L@jF;ɴ56Gb"Igc3AB+wŨ@C}SM+xY]T&4rJ<lluqntP>Ak]"H;S5V~oAԥBR Q`ı&2O5QFTǀx+V}۫v!!273s똋rQ"M.8`]z'F#]T_*M,ۤ.nBm]M/x b9@Wjw"Ԍ/uJ,;+%}Dh;Vti) 4|Ѷ[pYrN fM˄5*aOQDߝ14x ѹZ'\ХDXߢ0F;0dB8CdȢhH흰SvYrs|šnf51n txL}3H\NkK8dCCPtT,2=fbaEűD|R (mG)چK;#HOsz eZ'؞|WſȚ$^rȿ3ۣgOE&E`-ijhj&NSMb<͡hIݹ4 #Ӗ/d2ħ- 4$_σW^NWYh^Rxk2AouI|NDݒP$VX(Šf5ƌX4"mk=ً PQq“;¶0;azJnH~t< nc(UK'i{tnLER_DwڪA\953 HMݨ㫆(H9W sA3wJ"[/VH@NATJsƋuOȗG_򐯶ȂMI+$e\ 2ߧ4)iu&3n` wX3E <~(nwW+IY,..kX\>R 5$ Rbf|2Bxdqu5FX ^SyfHMR°߉r~+lmu7CɵzlK_&E]Juuxʩڊ"f#/פ4!buWf|3N*P!:=SLH,\6.A픬^=lY<#Z\7B#.F+)T8aOg9RSy,Y oy<;!ZT ,c0˽;mNqratV}>HU hVW1N؂o^Us`*aH׎<;J0bŽ_Qu4Xs=_Kl qW9O,Ia[{~ڐ`oC,0T?df ^DvѴ8r*]fNvtrwҥ lx?JЦ5A'wH8S?dKqn'bʒ2Ct:eiqЭ'N+Iwp(>l$f\[)(Tn-U3lj t^Gz.pi@#qJib ]Z4-%=/ޫy}Hcr&cfq` fxyopL ?kG#9Le񖒱z%Pby&@ZĪASTrΒ=pdH uvH0,KTZw,HJ  [aI]mLϚw':CS۹Yb)xΊI3 i`׽Lo1!R̓*R^Q~#a N=0zL2v}:[_SVH$?$#%2e~XDVbBD-)KPliDڰb, 9pz_geo'a8H0GI=Fj_cM(Il\v͹NU4m}c #~z]-skȷx.R蓐L3 upd/* і<ܪ[e)ѝ4sg" @0SdZc|1@hԋqB)=OOgNX:xnT.Ⱥ<`Gu _^sSA$Y{≳5ʪAL1dX}qs-FG bnN K9w-⍚>"/IS z0]Z;ޑ#HheqTlM=qB1D6n(8aj.prΡ :3H'=|`w rłj{1'xPfIY|h =_tŘ`̒%CI)~N>7FZQ)yrڡУXˆaF3oGk6f\lIONV\&&䌈f BEџ|t~MƼVFH$*.z;`Qy҉c2^Dr5N>I) ޫ8ٰp{/_ɕc|w߃xj.#G1$>kFB%+]!`&]UF zp4չ;Ns\nX1 S&*hStbLm-R`%>&&X㌬CT:6%`BA\"8?_9-< 9hнХM,'o>aG; ?SNI~Q! Lգ,6ov?^[RE#㼍}!CJlmO Y ~UŖYҲgWh^,L+*?(NnK=@%-#uyЫXqv*V~S&mo~43t#[rf_HP\sG@1afoEwEf U׺ 0@0o܇.v=`Vsk?tKs)ksmEHm~4dK=[1Fq=AGZE-`4sSl\hυH\d`(- )U3!ߏcYX㈔tBt[s\vZϴ\%b:|jjJIT4(iyfW(qP W[?g5K{| S*'*EF&fnX >\iI11JoyuQ,naN pSZ]#![DON9LA(raHK^4yc5IeYsYjtj5N[:R):JR +r]Bff5s8-rwRlvA ^!.P/DǴGOsQ9 ł W`Ĺ(Bqj٥,P_]bvf@&*TsQ,fQ|T1!{U{RYWyӜ WDuGOt֌"BBQ+A~4I6,Pr,ykB|-Lqz?N]C*$,o?Vدq{7wv|5/w9-V7k˜F [z[KM̳,zV f_EHmC(DFӰβɘ,E?_"iA"ܐK#4Ue+ 0\w/xǫ _[pQV:ǖӞ34jUG4&w pj[a~R!Lg-RH>鈚/(֥:޹pcP%;H}~@a ϸC`ɼZ?fjǯwɣ?=/~ETi]$Pa +:iKiqhl3F8&N #;1`$Z@\riQYVM)RچIlblAki;ƒt8/dN#W opb+uCasLx!V 4!kun -"%yOw*EtP3BH\;кH.5ENE][3Qv8Vb9 2[[ʵ D硁o|ɒSR3O\$u Ula :w9#=WiluiI *EВ? 6i[;3AICT4:=/f{t&xMYU+tÏ;S_ = ɑ&ؽaeb,P5<~:iiǚׁF7 ]=~ߡhLAe(# o" j .u,9¨uV ͪ۹Ff5;V^kGaC~Y_LWd=W*L1|w_QZfגϽ:]ѫ.!e8&9.hvxƛ'MFV!>ZϩJ|K]IםmYBiŚs?&j}|lk|_Ǒû=>%er+T*6G\}&לPј9#('m Gc߱.n >?ĩMJ>z@\-jF̖ZAUtQlQ-$r|W>Hk(` mtУeP$㹾\Da(HlC4GGբēC?/qMMI;Dz Zbܠ5N|=IZt*da'JN{/nX0E߹qH> τ(A{#\G\K~,p7"^s?o"([/b_{2 䱷ҹ16{|B`Rvݻܵw.@SgP%33oWR%'Nem=ZPR{Ǹ~̡\,1^4cL.}ԉ*JTLa̸MH[(-{f2`$3\<-9]e\>@9{\sM{O>4A(xՒq @3`~]u7#yՊR9zo35 Q+s~Hؓ֡^YXDf>dG?pp!"ڝy4xRA  ,/dzkW N`A(ՂUeBlsNYFw^Z#42VqbkZ/^?D u _yTxd=1x:h&^V؜1UnSoBr4,EM7SDe`T(l&")0:S~,mհ< ^[xj)Q@K:mWuŦܹSDF(kP 8{rajPi`)L6{Bl]S&19,}?7vO;#W#ݙgAI Ne=7I#xtwD禬A$a{W-f̕6IF֞: kxtvfSS!ZWCkX8K`^Bp*Nf<5MA $ &F!aR95=E2j'^N=t7%^@"!,}C>W Gk94?o:vbh$1gHhCz֧%3Q0Ǎ"n[D״JreHAs.Y+~s3U8$zgdO#VmT wksJM˃-"'F U)G0'^wm%dzMhɯ>N sQ)COڔ.+72a;s5uA jnMDC|̚U[(@3~_eGZ3[yxKE#%&s\r0-W$+\ӌ0]/}# 0%f2w" 'p6tg Z)I[{Db=?0W(O|V''C#ٻd7¯<@ٔ5B,avaVohl؜\L}RY1U8 jEܓ,KƮFZ|WYߴS/^`u:,^e,H$ A/}~ȕ@ |Y8߆T;(y{c[Khz{4Z`jHMCFI*u>bmlV˷'аzj`y3g6FW 7ùqg=sy= \!Uj)^q*F'E0L=^A S G>NnV=p6gd_ |pN&YRZ=z,+hVN0J(Eܶ]{bMLJ[\C饯ٟ`{N>|cϰ"B snʶkK,~H'\X6KU"2#rs PuM'~>(T,Xt1uCL w\"Y |M6~ Ǭm;fbDZZ*ثa4DN,{Z}B]M෎̊?  Vn PK)sU+ jsnd?#@n!l)熋/A\MuyFt͉WzT8X3 #Ub)gaWItjvts=P(xƝ%22?Pl&j|Q#3T~hhAZ&b;T哜Hy!u4>ݗTì}c5j\oT]OMPGPx۷c!4 4G"3 H$ <ӫ!\Ŝ s%0 LU./P20 {*ƌ} KILa#B]%,;r] `kvmPkU4px8bIȩ'ow^WڐB8bEUClz8<oZ'9̋AkWD6P q-MV{?Cc v.e[)Q|B '-*uHTrmL0 {^%M1x_sq8$Ҟx\IGe :s^7jWaIc1kQ3@`:n>yޙAAiyw8 .ƅԀ~ iKs&X4Se8BtҖ2B݇5I%hj6\ A;zQU =!yxEaQQl2]O_} 5Xz0Ab 55*vxRfm 6>-{^t C,0 s0v:6q@:H6:L5ݩ8^䔊DE%(6Ts" [\WI.j/~s.3G5Pߜ z!3Id]#$KwU^@@~Wbq\i1V́enPzw8aKxMA8L#4oF5'>Ρe]7,ctmL(JB5+t2Հ>% B'"`r;JVvY%yD<{r'$$>H^.󒞳Jޢ]d8.Wk2f51_ y`:)31| od  g$B Za%D*W怪2 b((G_9 9ȭ t Q<%5A4du_yd\)2%c#g-:+ڙ@D([:ilN,nTv1V1b $a`II\iI;(z $oUUx7&O\og 3*ob]7jĿ櫧 *{n|XMD0Gk"򁨼b| H)Zz0x!tEg|afA$jyө7LGcMsjk^Sd侮Vc1'cn?j'QT GY-`ߧ96?o_'8=YFjyc#eWXƮaf3c D[gQ/18W#G|3 XHkܘ6%Y!q9Kvذ*I|VrF$/Gydŭ)۫T͑`+k% Tf9vM ,D/4Z 'jMf=sOD`tb&X?s6!" Bߐ}1089p3) )P"z X8Z.1C`f#ӭaV A*w| w|(>Cq ”ce/@yC .xǽ(7=:?}yɕϨ>$!(;Cst }8?A+:Y.sS?VG  Eubsqy M `f,uר>a!Tpn(fڧQ `Jz`w9i3cq "3ѳ28.x R|P&QI՛͠#-XUHqP)|8옾mhڲ8Ut<Ŗ^iH:NtC`J\HLdo(i=eSO\=FnՀ~֒ *Epx~2]ŻT"+Uǻt:g(r3cwA6<{c*uT=UOA?Ӡ I}_j=^3r ?4;x]pBG,ەcclZikirpZmgf7"GʿNlTY$n5 .6e> ޾΍r?Agu}^gYabWtX.98ctC3ldI7 514s&-l$BP^L}6yK8R;ZMxܕZXN+P0?}/xP!v3[ZUV`DzB^mw e:mH ') Wo;ԮI;f:;lN{M{|({ǣ ˫ۭgÿ5wJSMeWBxs0D8'2<duPX$}h5QYj Q_%pqk3eMoï/ymv9DY~~VUzVgp (yj[Cp]ۓG̈vݰ캭畂DփSDQ4q8gn - 7=@ v)TIFAxS2`~ȩ]Q*Vq&<~Y;Djo-׽f|:288?<( %1|䅈I8qɗ0.94Y PMS?V3gsav4XmӍt.I#K\@*~N/PHޅ>˒jP*@+2ٔ^8y-JތҮш:{o6,m¸dlʫ^#w1( 9T!BeFު__W6ɈKvH#wE@䮊~{\u[zct29A#vdE(LGԝxdFι9ƺYF1:N$Kw,Jp'ζAdHQ`W91IqfT.jgDFs(6R+4@ʯI OL@J +%"/H26SɢW! }"[^@i2f0Zb݌5' tSZ~Alw9JUo$ƦѸf/P~t/xȍ#.bޖ TR H"vHkQykhI B %(@TJTd_=e\^'-W˕r52CNueDo C˼;>R5瑓yb OXN(;~F\@KDDw욾ĥh>TNOo38 &lT"ohK1)%>[4D>ʝh.HO3Co g.BH(~,#Mf١'"k<JWT9PΏP%%y!°ap XXLwxP 0&'YnAp$]#㟜B$u/1M\EwAšח)P* 0dyof|+:EM+*.;W7tsL`Pֺ51u6>_/6"@֞m\| Uq #ʒnyj7բ?jpcnYcTt qAs{~r&^yVt Щ(֫IH |w{ÉKK}^k#o: UR"3lb=ns}Aq,֭HHm7u1^. #0yk!FDg4 ,p鄱>!FgZ0u}*Ϊ@ԍ~#vv BQBc$Ђ" f@%;ATvujHMmNs!U9-5Ȣ;F-{,3m|T2\:R_GvVJL3EP}ďiǟ.ɫv4@n_Bl5ѻxA#; $"#FwF# s]&r խͺ'8b6x0>S0:ؤIT#N]&Vܛ*;\rXQY8һ2zlFvC6rPuͳfvIވKl_}]" ^pL_(@+z੆ DԁܳhbD z!JB\࢖1ڮtWzɎ̡ L;Ǚ%@V { CPH,9ɒP]$CbZ)..?J? mY;:i­*vQ8[OJgmankEϨqAdˢXz|:ӣۖ3]rR?_saY%I ˪ 4ʑ"#$-BsTgf Z#l=(hJ{`n_j~m̡B΁nE:PqZB&!K s^Mc*Nl5M@ЌɰڴF5)Cv$x)>Um^CNAQZ}1_k !k"5k{(/ vA'3BAJǝ"֎~1*)r Y1#j݇VXlǞRx.F}(aPܹN&'G++.SG}Y\ůӲ2z D1k4.ᦫJG:箉IvU_ 6UHlR[#.c xl'WB){Z:E0K ,$P ~_Az-=O=2B2dᄲV9kAd-VTi9Q_*_Գ߲vVcU8ԇVFQCRfq|FztU'2HW%6+sdhWrB~98S'n"hFhk7qnW^t#dWLlb ;qtK>v14e\7Ͱ f lʂ'[~؃*8H!Ģ /8J*1OݕWhwE<&oL3'VU6 = c8L)W48v?EZCM*)P|9@O&:4kHC=8K`#Q>c83ɉѯOA+&G!A*@ED3,`AǨsO8ӽw7;UrTa= pÓӮ4' (ji&-fH` @7"|ˤ"SUK)Q/eIaS%Sn = =n3Uwd~[8|s @|/HL4c:nֱڈYvIjDDJN&~#/U\<+g5}lShf3,m1nDrнgs[^IJ}]=s6W6⣬^.)M{̖;MѤ-skXq%ٟ1'__3{m(>]>xƷi;q}%v K*ʓWy) TPyRg.s?\dLm3X2b֟`Ҵ`GJ L{y o*m079Pک,: bpod;7U[+YK4!Pu@yytJAՏ|R;_:ze;~:HH#6M;"ѫfb vkw~K31ʿ@?; L7~=O/04},M HSJPh!-v7}nh$-׸3o8xŜZ~s`rRixR8̬Zϝ!΂2}&X) a60gBtKC6h,rE_18Re9o}!Qgy=0a(@Jb'~ `ٲ%e-t n[\j]u={OiqET5N/gbcx₻ Πhu{uFr3dO)XC5v%?_w,ӥ&,C°=;X#5Ų۞e٨'FM@BQn늹8qN;pPFN`pR9/QmXj{Gb6 PAKh>} TeE nG%h_N^( hr,eP13isP!"D Hf{"L,5U?oaKPFMUHQ]]d-E@[߾.irN_w|V6MqDejbLSM3Рy$slUIj.5V7]51>{gs{Z@.Ef5Q@,ϣ!I'Ve/MęNZBj(mLRc?_[Q $GN *@J6D8"(52JL*5 x3ɧ_v;`>7H^߮WZT\ ֻBHSG^0KǦ;) A$+ _Nm׸r3S gq$DP@׋\le2.@٢*|b0CJQP, !` |xa8q7$†S)9vIc!i V(a^J2]iͧZ*P!ij@uvIKhUwZL~~-קD=M_|o԰t-PF↦M(G>`˂IbP`[5C#.-ԇs2y{ۍݍ,vyjl2ͭzW|Ͳ${m8B &a#ޏpG 7BYy5E#WRSǘy<>HqQoNEwUSq)_?Wa69ހ,:Q 1'R>㩖#$iFP|}F.b okcO tz;+3R$$MgW9&R2j2=C[`_Zikvp=S~knf(RyIQp2v k>f*4 O؞/[y9"OG}]>.&hد7-G4bܽm/D>Re( rc l$ÁI Mj4?5Q 3 : H;KTQuwt)MYǤ2֕e 0ٗϰ^Ew,΍ ؐ}nvdPvz h*f婔emtPQnz`bVaDb=7ϐ6Fmc#!b$)i~xǟ֔E`^n]"8\%]#OvjhKP}ڼ_/]U\V< 16{k;34c*\{i#?8[7%1-g~l>YD !ۣ/WM΢`y "bOUfYA̸4c|y{cV!TI-L\~SSMUͺ{CrWnv+=A>󩅵-U!bFrcv7|^޵+-d?QZDYHn7rz&FPg_Qǖ!Spc g!=y%i^kW(hacYf4̿_ .C0|dRRsjvq=D Eޯ܍Ι&JrV?s9`, @{4ҤDX4mvJtϺܢro0 ʹSzN|9dZTtڊK0qU*ˡ2+vAݶ5Ű@l:Ԝ8rfqڠF'+rWђ哢97Ռ w&OID/a;Y;bMx6uid~ zzNV\C3<6]F.yqz'zAC+,.$m{iףsh̉BjaH#| ˾8ńCV2#nqfB\]=%Bp9PE|7b@x}t8']>OpxS) K:P\i,BOǸF3_'Zc-J7%] nͶc-D.stMR3 RM1&p*~g:?aTK@~7T\|Y@Mr[5ue@԰(̾ ?BYS=S9vfw5nQb4-T[S.>l5,ӆmNcӼ3NzMg-,`]m^kLCe.cӿ)nuMe +^OVmd *qFhǟIcPZ6]>F!co[c5L`D۰|)y S)K-roOZxGZC.̜?1U6v6u^ERz 7o|&D1[Hlbe5z=k\ v`,/;E~*y7-Acjå78c>F$(X1LS1 rD~1 wx!EGDrcm1]ZIT6@nh "8IÅ1l.$ 7=U3lku~WCW]Bn^0E[\5}мH:;q1X7s&'a/\)0>I4/WjVňQ0'{\JѼ~Fm6Mi ahr5vBr q $Y:[:cү1 Ox|kiŽ?j Y"ULԶa)ԙ5A~rfOrJv~cz(Įz24Mג*ŨQk f';ܙ:e0r02ج -;KV~delSf:R?xV%a-Du;egN!H̙@QV&E+þ,Xv7%~/5wͣ:;SVg"a'f)V+!nuNOKZBsRa_NV[J,$lʜ9 KլI ؑQ ^%N=.qizav=VW3198 ȏYm=ɓ\D~k$-crz"Viݼ}:K|sGkLUӐJq_GPÑe`_ URz,aР3a]ȂWҞȲͼ?G>*B]yxCj;e)A ^"2|/Ff}8'+fWU$Ygq_-b' p%C]++:typt{jH@$E=bKNR'\Va6}9冔@YbQϵ/쓲N-EW\Uyhx* yR04xՃ7#Yu-cGan܂ !nL*0*=D-r᳕Fj ֨4GK`g9cN44}u핶xl^GY\JU`q&h0KE!RywäH4 o֔\V<Ҽl)c͵Gm$U5e35HAt#:Ujޟ-cKpqkt4z{uBLK>L"'$zƼL (8/큗&W8j&b>KؒMj"kF_vx]4_tt<.NtLq_y,g,\x8=C%w D j&Jv~Lh((k((gAieF|Z>! pKfI_Z/cO~<2fqq~ix[NƑXTBCӳz*Z'$-+ <6믚XS /._q'Η3osEQ%q{7o)$taki>a.CGU07`,#Rk"393qGoYEI۩\=1Lai3?0 RJ+5}̏ 2ou +_lv=Nh7lPҴߋs. lr>Z6/QypV}؟Is'&J¯j̜Od#.y@|a D1>@հO+ɐ=*wg$\2`iN{"wֻ>"Z\L'9?F{{噗8qb*J(A6}r61+woQh0+%wФSԿoVoO2}#:{NK9E̷$޹P- F2 ]& k3 2r:5A3/HQiǙ$'gziFFverI 3j˕6~f?s,rv|Mow`8j 6`KBn?4E3fSqvAqIjdgN64;7,y /A2ݟN·ţ(|7A1wPSan8pҳەO{v?qڏY/􈗳{Ma"Ћ(I#R\x jK{2l 'JbF5Ș˛pNy0.]3ۮTIP-rFC~W1n aN)<^ջ1N=_5jo dF}$B"襟#\`,=y7]3kn´kY^r"*P |?^lWM/gࢇRZp+z uLnXK6՞mE12l ҩi X NbpN+q&9,p}6O1U9C!YGPhSV_nH4]))p7R3|P_,{] MUs'l1"~/wJ?X*hi#GŠyוb)ɿAFvӿ{-(bʯO= DՈZrKmju D59>.apﶲh,WSPʝ!TrJE{G57!sULl5bD `>b-k!P_MټGFD N?W-b6]-Ӊ%!Sb̭ؽ{?a\g{7?hG fLrG}RT53[J]6'#A5B~cm(Rf벮'W\, K#4Yij~AbEHwJz5v_2E' ^Jl<ѼiuqsE=sc ݃ |L%E"b60p=/}Ze\o5҅ HC5iKf[ 207+ 0n+{`7 啲ϟS:qʉx n>g߮DwgJ;mDNкs8a+Z@ L(x{v@%vde|OwnN8 q+&3l͙<}mܖ'9ntz8dzXbF"HHN2o툨 *Wt*O#ijߖq ÜA+ ko,5_%y7^ :ǝt0M'ZWT|;;~-W1֩U-H,k0c3T%7>Q+HJ:TNX{))[EC &AvN0כ'WzsL*w bT8C\(z7Z=fӼ>>%-L8-å/4 RR~9+lݖBF`lrj)`{B(ͿgE^4rYq5}:L1HQ` @|h>V}덼UdԼ̣w Gs߃Sw4S<吋NGi@%cݭ=p="tkl8-h _چ957絳*^MU=>,as/y#`G%N)xx:)\͋}˥?K98Ⳍdx{iPO0b 'M/Օ+禳;bٺ+  @8O9\QTEJ^S=_l p]fWigZҬKbg5.l< 2!UBhȂ'GT`A4}c2(E)%"H<<Ƭœ%3¯v, `orq Z)g<3 T(p$_B+b`jοF["p|,"§-B^-V+'k>.3p?Rf]b=g5)溘zǖ|fQG?6~faTq nrO0e<Rƒ Ҏ1e;E9ghɨr!'tsTRF+ <27[jE_S>?"EN&Q$RDZ|(<.Buɓoe9ɲjP,# $~.w7F2;RrzCş'4-] $5emyK'KT;M9J(&{s#xeUl#ku Vʒif/|;=.0%%,FtzskhҪdt@h{/3}R`r/A+&( rY8*O0V`Wɝ-[藓%8 FqedM5 8VU>=}=td ܆i'\Q[VS&fʼXi#bCC⯫E=㶥  Hf@\m5sO%`YE3AlAP؆=Qp>tO37ik/|Ҍfx1<w l&3ireo Pcݾ]컦LYce*u4EWˏYX[@Թ6q5-ܩ&љ$T CSx9@IFommƜD R`A|dT+CVق ˫}OML!qlJ]/&27- ;eS5=DD3XpV2&1\X@ŊnNek8[M}@"|H [{C^c=bm[пj3[=V)OXY!g*kPt9L8n=cxbnJ*nCiHDHIyȯeRI62!̈$`pYR%3`ܘ\*An# 4qZ ".x}!omj] lI_[6]U1o}sD$0rǛ |0k,fʈy#u k E@t߻agnAhN4yob0;Gs !LPnE5\5ՁX"գp2io[䁞Q[Muaky{Lz}pɗɰzT|V. v$hSΈ?m%iƥs.?An wDlo\q:{[ Dd|8]Y LPI^Rl\q^FojfTjkHP=xGiښGI^ o`2UВyNet#sy>LhA%fȩ,?,-TPfCK JlIWPDGOh̉**jeW$j=9TS9<5LTV(f® 2'H`N-Swy\co\Qϛ D -:['cW򹝸IP"_gƀ+hik: ߛM  -awlaey_b՝ݏ3S^?_P<;[B*XsҮ\&W;ĭ\J pЎxR \fPTkq ]XoZbVZYf)g9|9:@ꁤҨz[L%B6KjŻD/ZP| [#q`)X}Bq9fyt/,<")aBՌճ0"%0h6\gbY'mw9&tܧUչ;tp+QDHy K)X)7qҚsViLo26fd HωGcl&2];LvA2]92و6hi#< W mwc%" _i5PV q{ qٝ (Qu~#_Hi!*=ȻU\s|uҞcrl)W<In0~v/u).wu]R| v σ7BXY`r7G3;yi#t{ϳdžlГ* dT$570?Votc׫_6 N?> ZvxaaE5r |5t%s:2 YR9$3ϑKxћ@. .d~yf h.϶2]v}\иm*n,#w,5\o}Gę2Ee5놮Gdt;DgZ7M%jHҰUb ޥ.)=" :|uP{rS @ +p~!xwΫxڨy0ǎ-/v؜"1S=$e$.mA/8o[95<"ՋjlO/F/qSzN1Υ :0nQE7R?$/E0Q`*눩\b{ *?lJv'*w>-|@0ٷ plːWE8jV A]ށj^)ӡ,>~2P#`ͣv􁣠}&Lu6ӟs&DK;.$gXL k1)^#7mtz8l5h [."S]s\:& 9rs?z2G3@.7Ώ}N+&;Wq)zgX%𙿶×J;ߦgl c[W ~\Z7FO`knKgrqZ[w_9g8>&as߳B2lPg,VWT>`!րS&,jV!a)_ϳ0~≯XY:[qM `]O .a)UZp60y&`g|ڒ| j ]!kJ_/3`9 SC ./xM<'Ese,.E?u:A jYK_'*mЛj)55mOgŅӸN&xL06f%)"",`~3n3bZD5Ha Vr8sP(9; 4*.,V֑j)4xp6}`)-Ƶv+ f$Qo9lPn&|DSsp2;86S"g:=F $j~*"56_kܝ7ܛ:-WHoWYFOj* ' CڂoМR %mkHV?ƒ.Ei>WvY hROa0 |7>.Fo{2 z4NsF5G~gU|"N` wSKwEb ^1KNn<(t#j`\p/6m_IXh-KWJ^0r<at[ +]ˤHMy $ʒՏAi7ut6Rra)^%(vOov6Hξ?9dְ$Yʚg: B"Qh.Ila=`~m~DN:/&,آ="= p°3љ@'C}z^N$(JVRT'?KC:[]m|9w."1oY0$ .()[ͼP: !`}6Ym!4c0G-D8LDHu ;<#Z*RI҆@ woS8ek%eo@XI`FV=Yn 2]) a ?pX7tEy N64VZoNQ9/9,0e;vWe问oT*=^^4]Q34KEM!Ue!zbܾg>lbCSڔ|sYPȧ8D~,w$YzLcTCZG0ELK z J1j-n]#?D!)'ClF:5rYbcuD"v[T70]ڡl R30xW9нx_x"0-5]P%m Dſ@l%O)#ܢq1Ep Uo1,2d𦡗oAЬԩ"1w ʁ6;ۄᳲtȝ1yW <"[S+Y[`nת%\UXKIdg@ RƪvI=Mͻ1KaʒGӻ!$9;&"$ԊnR=3&/@سVDYkH&#:dwl5;zcR;͙k+`t6Y軛" _i 4FmdCXQjeQ""zh3}܅4b;ʔF_lkj@9\V@:xj1FR1pӉ)7. f0&LCTIJ9h4ޗ+D s9w@.R˔?HSWG$s:Q6,c(mqRzPu ; c(by;C xc1*GM8Q-=g' uɟw5T3քߝ5=IF;De_8j7٬-x ŧO ~j0L;Cahe؊8oܘ6v񱥿XmF\z T~kf?EjJBp5Ic♔a8.\w.m9aq<QyfVHH5snzXrähnc bunբ1g#l3φtiΰ|\By۝c :VA B{0\K 4,i̷^>ME;Vp3[Y[9gZqɭ)ӄjm([+ v6Hph{\q LZh2N#t>-cǕ.w7x8(-{~1*aܫ#& vo) W+Q|oQ43,7<8=8/,.ޝj}4AwYW% mhΑBn J.mBfj{(+fSn<IP&ǫrHt+3&&mk:?~ S`ʼnO Zd<ڐo̽kXfmc1}qqϹfn=ʷ{BeI'}*3eWC*͚"bxvৠwUF@!^#AT@j]m oXb(^lnQQJ%5\Y?%*RwK8M#>>\{I_,MrlbSm{(Wu7ȡ\OD/5;HVFpl{eԝ>oSjmA}ݲ(YƏ)Г IݤLǽ#Gd(*::HpNeƿpys+Z(n/#0GGC4eH!Q/:i69V:.2O\"K{Ɲ2 9M2&`dw#a׹׃HCj_KH޺4y}HJ$1/y5={1P³Y $K{l5kݯ~ͣ`ޏ& hu+ MT;z0P+ P" h t4g,N8pY9zV/O5L&Y}:̺f .w)y+\ZICE82WȽ1՗TS`ָ w6肇 B}`)hKkAkzum$=f(HJܮLtёCWY5оPW, xd8z PuA\>ĵ\{TIH'~., PstbUU t8h֕q3B@D)O+hٚ_^4(*4'dAʙO_(h `W n:i"֝Q "*o%q':!*\*X :u^U#9y *0>aG??-/Seؔ86K]Adnvh9BA?K} lp z 'd= rU5z#j)޸h fpmm8sLQ 2-})0;Rb+6i;#?޿ZPק1}ʜxJ@*AД ئO6<-+AF nVYcӳ) ,*{T=3p",H Bm2{wD'`{k]x$c};&g$[jv|dt&> 2ۥ&&۬){<3R=G;F1;+$]Ƃ~0hgMO[Ϛ *{d#\3\n+¸\J%EAzLכֿsvx9!ס5zH]ec'ϙ;i^}Hɘ *O*ǯ;X%r &!wjbCp"uA~bfhG3߷>9,9Y",@ dT}!h:K2-"ƴ-<7}ԯEF-^FDׄ,'fVb 7㕿-XV%4vRG`Zd h /hb@\@ wgSW\'0s^$S-)Wc 2ǝ7  :ggQ<1jN eqXD6TCٌ 60]fVwќ߆Dc$E(ݎo5o N4>n'+ɟ$M~>ov?BQ^;/E'Z|rdHKYUoJy q!6J 1Duk& 2Je FixQk 3PkFA7d*1IWG*=?V2 )e{'&q×KJz&jRk2 [s Me{k;[ה6/l\9 _.-!VZ!]1H3~ӹtFQikjZ7c&OAJWw͵ÏubsZ2iU z?5cpk` qK*5*c]PAEtޕ꫼pBrabe3ռbDMxeQ/h}fnׄi$A~*2]NwsIWe7-\gw0b ;ET;E{ao!wE@xaK{@.1v,u3A0>C`ZckJ5I'n„U$/H&OcRk.g_r=?$AN9lLC^^J Z_ 7ǓM'\EOQX]k"."(`!m_?l)Ve*~J{Co0a>8mMKf@)U~H鬶[w) yp :~@'"_vQ%iM z̦ $w#5>h' NOB}}[ qgVdldw2J㴭鳾mHѝ T%ٹ#{#F]mQdJt4IOq3K_K DeATM7tH2G7t" ,dU\}(wהvʼ\ptA230ė7pNs}Zd(W*hifv7؞.Za<4y{}-ۇ P kgŭ-:/+4exɻ{{Xq>?Djtz|P1ѝ  ϋ@Cf]m/J*d|8 ;r2J3؉oDhrdydT D0@Ga؎ ́kN8Oyul[t6f3Dc>UL#U-/χUqb휩I0@Ӂz`\U8Kl$"KfU1ŃL\1N\g+3*HG$JJrAg)),(fW-Ї ݛ|%g_;kesq31]mJf-'MS9ev.Eh9hu0]ħ^k w'K)Ǿr:$]F5Ry6HQmeZ 7%1K+pPsxi % ز;eRۈgjSڵ2Φ.џA] 1h4xqN 2lݸL)`s5Ffgs2t sx^ŝXF^ }?fSnI2q'\JEc<<3U +WACL39y5o*،(VH@F0Nbg5@:=Z#z4CF&΄s( J_:=?e_UCsoszj"债ycPbߩYP24f8OR#sH[AW\v ^2ڡl0Npi߰ X0c#Iya C xR}BbD:J4Bh✓]C vh^Vi/[ե){V㣗`J$x7):h$Cgz7/+o{w|^m,92f>Be͠ڴ5'sR{̚glR|n 5%46(꠵WYθl*D[Ys*}Zx:GAY<23Q #گNj,3g#ِ2a&W'[ɴ[4"]E~^ (r'w2rdD$~ !^q8Q%D}C=wLbݞ@33wRV.>Dj/FFezBmBb;FgI#y\5)Awhz&Ǘ< ҉v?˨"_kjgZc>xDe `dv:9iW~AQo Q`K5P%‡x0 S!s7)UF=#A4e,>6}9#$>*u$IgƤŐHajzUj;b H)A˖6x HynO:^nwE{A*>| rald7R4_ؑ+!Ξ{? R7W4s)]ùG7S&[E~e ~ΝRTed1u %)(m{`` fҍ*=VIհTJ+P7N0[^DESi*.y27/;N&ZOf3G!Gr dj͏AsNڨ}pG]xM%dR J?}uv/_^$Orlyn9>)ĜS74k6LG$|9YO `!iJQxX`lP9x1x:r\ʃTrJbQyɎm=υpV0MjOfz̏j. 1>J~eꀸZ-[[L'Ez[Zm`Zc>&퇫+k嫅HLǠQ5$a @Ơ'c CJݥO6{r2UH'!'GvE[ɐC;jZFT  T>꺖c#8ѣF?~4 Å 8$x@&i88AP~gr_]î`QZX*742y%̽!.Q=̷˷nfʉhZjMkR0yLW0mH=>vB*.E~ ` $eaMO]Y5۳Ytv('Ҟ)bVPmcƧl!%!HnO nzv,u.e6m4 d۬)L0w':bZϻR&co0ODnEsP*XQ0)F _" ++A ΌƁ^Qw"gem3ChdJ&ȍ?Օ[]MinyL*IU-o'hbѕ\1-(ރ$YىWe  =2aw;B²'J iڃ&OKdH ;> L5ƷvObI_Sm.i!BX{lSB2%ȝ ldקA5$@&;q# MtoU 7`(ċXu a»0h .\$a`Bs|Fz]UKD J>qZ=A/_sKuW®C,A7C^"w;;5Cv \V0PpF\kk~/~J"m ƇhћBG #^^2^ٵ:%f~mV#i{GDpHBW]}*,6|):#o+6Iz}s?q.VYD[5XEJHjv90L3pyq߶ߊ $9bxb9;E;>bSd!hC+wN^EdJ@Țǘ{]2 z]ݣoȴݚeBfP Wޭz]LJ#77/ Uh };dI}v4jіzs:( vLs78YE-wZX4 ١E*_y.8~?NW#Q-0 Ǽ Ee/^pqm=Jmxa~怚=ۇ vRMqMِu)ߢF5@8Lbkqյ8O@$,`sG@ el3,a4SuLaу-BOUDu9n!hen鰛)\N  ?DM9)?ȧVӑ(959YXd8O"9B#Nrl{0B* ;N@djd^K~OJkIt|!3Ҩܠ:nXez'&!rDd^,r{2usv5]熦YS<%r:d!a|.n yإ^2_ǯ,Hx%6rط\"%` 2R謙^,,=a8Z1~}`06q]RDӿ{7Y}L]8nAԜq>B﫨FO'8(;az$^a6(!BzIhxm !@u\Re(I˵w\ϻ%PU9|k*wC8i&8{dp4}M itG>{TۖMZNZ/L䧳]laS^k6X^  I4݈pmZBv=dAR57B5^YvhCu8}HLpMvNjhȂ_LW_p2ʌd[ )& I5,I_#UȠl*qLãbWieZrpHѢRUuZ犥Иmyx>`S %೉ Rc`BK{g \D!PWU'pQ^pCtb Qf\PĨ %X0 cM"h!Bk!3ClS7epg=[` /X -HS_FbM(}%.ldEpGڈrT[ YȦ AU4V(D=Evh'A}y@Yl,!bbnzN2g#V*٧,O 0v;yH DMɀTmp lTc$jI`Ѝ~騹`@VLFM_Rf@AD_r~RIUNwQ(r Gq{!]^W6 ׾Pr0r0ܶW ҽAl:p&ڊ(1@ /7UpK@|w_+^Fh(Ֆĭx.˹bcgi\5!Hg]"Sz1Z"8 ET^avפuuiٱ!ˠ[pЈ_lCE,ΣWhm=`V3,j؂JǬ?IMCd%)my][L7]#ZE7I..a vOIu7p+~4IJZ,wւ-˛EV.3kU0X+`5b I 6V eõPN$ը)eE\h\a Q><,kxJv)*q]vzω|HrN>)bz2VCpF]oeʋNkf<[1b5Dͼ0EA%Í^{($F']kzv,BFoX1 !&䏵8]1־n [I L,2x9\NKg#K ,sIL>7Pg jWGɛ$? He&\H5m|Pu}&S6`w6Aʊij&Fd?ThBaʻD!lq#Hi@dMD2'Q@8!|s4gx=x5vX}y?7Lye 1ͪQl}tT]9s,6p;}en.{,yf[X 6TK2:- Ö,Y+P So.F#b*>f|nIlgNo]&+h'L-)}bŰNR7twHȔ'fn:f~qoL9+[,]yD]egI9nwoẌ `ΦMf ?rs$%`5g΀,>D{/ۛl(TN~5y#2J:;p+PLWevDke>\fM1OTvy OQPj1p+{zz Iȣ'sdeݷ!ASyTi|k" )i#"iZ.={Iyk[E`yb@}JS4B!ro1<*aĚ*$ &켥CJ 4- IfVM403$@嬊"KA-@譯WDXM͵@ ,(OdVC"8[iDq*ɋJOKlj~QԐhxQv{TêUP8EEGCښ,$ J k"9:#!XZK%ڭ,#Q`=~ ;γR$=(w޽|~ /Tߍ2$Co͗ **yᐂp^D7X(n߯}GUn^?:ae܉nD${-fS/%]TR9+HFt6"ϫ RઇNCCǷVݩW1Ge'uF)ņ' S;/J NgR 4"IϹc[:T5őDZTޛxݦH!XVm RI?!EIŽIg6.6 ZD d1 Hz^hM}0FJ,ĵ<- WT0I&PPFwd']rH5B`d&e*˨GBޔ>]JqƹM- suU(O|d_!yQ $Vj>jqWKo Zzm _7 Iv=>#h%=Al~w Eؔ3 d,jM||Nð, B(K2= L{O{Z#}VڡMuЙUQL1_jb6tnD?"ɐX7Xjc㸒Bb]{A҅_n O!ٴp[V0eLzekim= j%rTe>Jҁ-7h3%FnX* F4JQ IVlyw&zеC6ΚQݸJQ."xowf߇%HE:_gGt208A!9O+E#g5`N&p=NCotCU>lP)j0J%*^oTc1Ռ7w|a3s[p.l]cQ"Iz7h圖`yL>xOX~|j;/ ն/QzήEQ nC3AΞ[FrQF+)wN5>FxgdG76 Iľ{*s9:>NZL;H];8dux}&*,L -jgw BM~x"٭3ߗo O| S Hd/t,z,磁H.߲fs5_P⢫װ/\pa䌢: NבoZ*O uq$2aJ528,9Gl˹ҭjU3aN&-c\! 7kљ(VpO,Ƙţ@OxE%0l7k[mZَ٥WSQS@n9IyL;nuGnѤ.Uc h,_[.'& PeiIuDm,=xrHZNؚ| W'= W$V< ѯ&]-T%狗US 1mscetf N .qkތ^ u,l ,1ai63rQ/~ 3@)4D'7vGFA}jiC&s8 wyh Mm7Vy(Yg…v@Bf++M1STq!M % d(2zrЀ cҁ50=\I9P=]O,v9߇D= VEts"<%_bGLR)hYzrh{+E(P5u {c X6+2bo;> ܟX%|x@G36 2/,?UꁋY ]Mc\<(%Mn!:0"5#V٘F&ԕV+Ka8/~-*Oo+zdfvm``ߊ kH# uz|k@ΉP&rm4Vs')Ҕ7/yEz64jRtEoʩ c*nƥCfuT {$ojl鼳ߡ!gNzEyB$I&zCR#oUЩ Ev9?s)H̔Sr'R=sheÈ8Nh\Ȋgc^zEv6qGRgqbE !A_GEs7`O[nʋTZ{1.Ö4aI1b1PXYd5˜`>l)u/.-00fVG6- j HR}ľf|T$L!Yxԟm$ܺLha"T$K A&ׇ9 ?Eyy(W|-}vϴjRJ,$ӷi3Q?uO$K5m}!7^F@Nw| ߘa}1 Rq9Ɔ_UyApzFP5PJh|z߷k B ز)<`Pr>NB#tH?ZBv_stC6=p1haXYjWBjihÏaI{y19uzoȼe#Jƞ{!2@9 3>KVc{85C(>MX e9fYVSw *ْ"4*gRLLnxdZom_S++Z(sakDo"ڥà{f6|!zV|#枢헀_ɠa7s$%n-_b___Ugj޲} ~^ʾ5}ξ9)oQ^̔|2xObRl+gPiS̅ekC]XFM dQu Slk K=y%#cMSIG\bP3vVI&N[dUu^u> !& řlSzaDo"뒽N42BtkM-gF ]=tqG{#x"F+ܘ(Gzg.)Ē2|=o֊js ďXAےR'9iݜ0E MsI~ʌhqfK<v" 2Y2kRtFʫuAKɭ~lL2O/ĮݠjSv6l)oV:M2ә^黪2PukH ګ$2{>/JU|hJpod+[ZA/{؍r21!jHkYtn~uaHbz$/|qJDsy%ak1Ϟ\bz[H ӿL끲D *2cMn=:2LKhHnmMЦlG@Ra>l5-1 q< 6?\neR~ mDLSR(:[_'7HxO,FakA@|u*1 uǕEQ䊶SaP+'H%"Tx8k#2,x,60q0Ad RxFV}p > j~!RnICUPr \ر۞@+PbjC7e&!bĿr?ã"=sqhjnȷQSt+^Jޑ3ETC$HQU2į3_*vK ʃ~ e 80壃AvG&Qyy)q +WKr0ቇt#PRˠY! ضx4 x%ID[sYg5Me[z)[h6)oܥ{uX>u1ޟFAB}Pl0A` /2Ϫt"@^q#:EѫzżH*SiX]t |:T'N50Q7ȎlhSp/Mៅ۪$.E8bUVA~xMG&VUb?,: =πJUUV)kMIk{jhR `R$׻+ZkcМ>F.:6i+6uj3`zo;hӕ #{q`=˶t#ܪRS;8wy ;1e`9C<sєHb_CV{~S}$!G4f"ڤ,fZYg.1?v`;1|dXGN)ZXXt [1E=<$i!uύ"Tpm/ odzB%4ݨ3 wu' QĭOA;2H}?k@3 䂙_-¬0-M7))P}Ϙ7E>{ lA ub_]eϮ9/ )σ_}39ȇ:U1{ 8$a-ں dIdODzF/!W!,8D^&_TiO" XŎ,F>OYNkHv,vjP|uC9̒£ҋmłJ)p9REHhߖ^634"bpfyۦ6L 8F}uhe5!\T|gs fubr R.=>?YJ<ŀ@=8`WX;Ըwh~WxLj !l/>~ڃvFHZ" NDЩL10NcTB*܅0:Ӧ`dO9s¼ ylVfu=`vF(>Ç [tg*@ vTүvbxI[`HRxz76#7"ΌVF% ~k(&K̰ }G$&9?'1'!Ou-Fҟ|ٹkՂDM^eRhqL#ZU8i 8fҿˎ@BmBٌ9xdsLZ ̮苴elSSy8%P)a _9Q)M*X`Qhn^v MȖrѰ+;9[F~l4rx d o}ʆE˄ *89]̈H&>6n!YBLɴfN9h} JNC8੃C fv $e?a4݇ed̆,#?z+ O3eyFsIKJ17٧Au0]F(+ᢊoS%EI(,4]93.3hC~t!LΦ]K?F%-:eWY0zFYd,GU.=xL$ګ ʻ74a&d͗fI8a &Xh('D`>Dhn[ޗDTϺv}ʱ!NRA!6ۏ:$EWJu]~4ߐO[ ;󱔣jz)Ĵ1%q" (A~ ?#!Kq(rs(|oK]@#JD+}֛Z9fNaa92a?qoC/¢\QZ"\EK{Q8eέ :Fb|\Ցv'&@^?5Y3L2A݌C^T+6 (.3t+d5N S1`>.]X{mUzRig1&-nd7B\?/lSzQf:" ؁R2hDƅgS X*͞:94^aj-e)$ s^v-)Ww2%(oUntA 19"#_, ;Efr`ṕ?) @."% BV%J| q*(_&N c9t'`j䌗V=G_mp.^\T] P1pLK1/v>o#.WF0Z}枡6+TE1ՖIk=+6 H#腗F`^7g}v#M`sq"kXm@¤3\s|m"+H9-Ֆ1lĴfZUIw2?ۙ, pçh&GOB5 DGBO 6bӂ]W} `[v "EHro ZךZߛ؟yw?G\y"W8?)JJx`c(jpmP}~Io6[Z]) 4mF^~)9]u}1f0ig㞭UثiTWI}M6_vYNr2WNs) E>Ny<&㧪vї>/ϓ@Sb[F1y_v@p C~oN_m[ 2AcӤ(,f|Ɩ)S Lh )dp)Q?JȂb"zwǵ囘6n(@w~`bT_o_^վZqD]ڟwN캣msKZ75#^97C[͌4x$I[i"AHJoŏ''Fʘ֐ֻCc+l(̝D֗Li> 'q݆G_3k#?4ʊiuW@r7E{b[%ԛ 5a Y:}t7IcTuBHni:W}zz&.)*ZjQGKHZݢʙ 3NN! ÔƳĬʿkQdZ&԰q2cG @Lq3r40yD_"R$l|r.ۏk1#;Iٶ9^ 68JO: 뮒\aR3PRzk2%Y;mSh/XPyj kI-yY9CL,p>1#%z=pne]f蒼Y4HJy})[M|5MF$!m 쨙zUT:4e-RI4? {տ/4qrHM|1ANQ<@87Y^)ڶj-x$1累C=P6||͋: #d#f^ @@^9`S&jsxs7/9kv82"hʏg HLlmWWqg019UӰI2pːL7EHO&_LՇPZ8:0j0i$z-^IY@e1qRojWnqcJςQ  .9 *f1ɯ +tw*HQ |Wld#;RM\\E`3 S>rkGmmkmL' z R71U,v'̪64tǛxMjq%Բl%&{Y5뢁 U~g*1-UD xA'Qy9hP/jѤ xQ]U+kƱ(*ws%RnEwi>ct¸ڽ>O(|| tP])D9H*.ךpƿU<-t_l`W2`I۷3o_x7E?n4x3!xLZDR`l".*%yr}c 5!q1Ssso^ z0sr Ҕ0w\ԓmZk~@Hn$B4pg,_ā0{3gُ[)PUEB'(UMԙ2N˦'͍-s];I)-Md!es.b4-dMàI\ V" s|skH*:-MS%bMVo;_2S2j'KڨT=kq$sVGwK)[Tʯ8͎5Up*%!A<ፔ) ffKiLY\6Z@1&X<@퉥P[_"bgiT$rxT09޴={N8O%it[t}^%b8|4&\xvdނ#>njSW嵬~ ɞ)Ѓ['D-+ůNg3<_4HYM}hNْ}ov+r>)}ٲ&˥n,!{H@[ڵ%F?$@_W ~GA1媧-Ր6jq-T<`8Cs, TB("ҶO>  ɚ 'ЬWhVT^^z,sgo"˼z/#Ə+ !ΥBS8=峣߳IOJjr6~cQEHi|588"=M@wszD+K{ch/vW=s&u( .p2wzX.|Y5̈́}gdo-L;Dcȧ7IA74ЖnΊÐ0o)௴̭%;j4…4Ysc?וbѓ@3غ__$"B䵑Gx\#Fx'$3#,w۾Ƕ7e-[{O[ ? FW}Nn@w㍏fëä` t#_OĀt*znOb 3KS qϥeJqtoyR :7IFgY2-JmP;&`tmTp~+pY d:)a6WSPL (`HO >UD/Ѷ2,rG7E_'8䥧 8$ w&C h`kSOS22HWyw/7"|P~fY_hMUYstM ,x-șLVޮƫe3 l%t$y %]bdv.iJd7gv5% ߊ#//z\lgMG|8uC/nQ%X!lq;W 1a(;F?A-ކ!˿OdTMXζ:@t,2x{}PeQ ,v"Ȼg89eW}R]Sf'ğ (( ctL2dwO"oR 9!)+fZ9ݞ \3aSN&_O:īM-ݜvx/{u?Vmj/ -3U0BgzQ[ZS&&F_P(v^g`FԖ>\eLb^#;Ib)x,癗I\n#V5sPo7Ců{JՔ6G_MQ5mI40z<חe7ͬhM+ljGƭwF u͇lI2s~1rH/`.5މ5hpbBUnt}feHu@d5}7SI'@TSNq*G ܆y8y|iY$mW* %嬝NhrbB{*mwt݋n wulٔ6A8z>7ga Hd ,`鲨- CN)\;Z`c_ %;G$\@nt_v|8cdM5$RbAf=Bfm>ڴ'4 D^q} byQT^FG+[2 N7hF-6!ѩw\y1HmLR{G;|x0 vIqFs2@JȮeiY5't`Urjǁni~{(z|tU]t%Sk\SUwZi<>ċ">xsN .#Q4;?\X6sFb م+C~N%+}A; &,=aa 4" {\FZ:C BadݸR,+&5G|pIKdD9|!8,4UIcȌwEr&+w`q3I }cxR\9 R]YeWVF9c ܦuKKoğ@vB2: o*w(Ύpݾ~gnVJgD5ZHߵm-?|\0.d7y2GA? "TEJFckέ/B]"A*JLGQ zB5X)Cj|>iO]$W\A;|RB;ټm #0k뮏!ͱ`!P<^QK*=hEPI'Fqe. I1N`};#SNy[658;2ULYJݪ}Z a52I ĺYsFCk@%ʚ$"W"9*KS*uv˳ e#F>2q`d,PW됇u>Pwu;Qm= | Q^N 𬟐 ^ J/~:cz]mхA$Mfa1@GF# o(:˥\Zvu_kAPYPIX'3bhyĪ}X@=z}QDUCZD~KFƥ'1HJYKWqZ '=]ıɽH *sdj~"DpppŻ waqZdd6I02DK #?6c崒|ˑ$!zxvs%k$5WH)ؾfntoלBumSm;Mٿ"b~KytH N'  P&,[ց$" [=m&1ƛчOPkq/?P(u%kW圂-5<:d#^pdr:m6דHsRw&~!ZY f$C I/f^ө䥉ƍے=*C$5Bpiχ׊li_cNz?"F.6vkKٮv>Ϸm#gfY;Xw]UyO/d#HoV(Q  ;Ե+?/{l|_b:p@)ܻRԹxGuIl٨^>s%RF;{ o[?OoY|䣨^Mh׻_RQ9ހ U/` `NW*M_l(H{L:*/XlҔ ! f$`GrݫCu_au飇g Pt$<u[  K 81x)J AC8HϘW:bi/7 ر[I0wšaX#q~xUHb0z-fܮ-)IŽ].Q/>zƛ5U鑗;_>䈘n|D+=WJbAɿPrT0$Xt#Oy<ێ fWe"lm( buz@$4R|u .3hRT,e]䑍xmΓa}PPgC0VǼA)# ?dpOC+^*#B@]QK-w;bVa=syˍ>sR +*c0u#w:<`".d3n{>lcdJqt$`̣]+U&elWs>Kꞽ;Q@ª+ۼbtUHzn킼0pb k1 AFAp[ F-0A9mf6 ? wh^BuH"Ip~bf""Ө"|">4Cـ#4Lfp_[0h)i{dͪ2)b ب eJSA9씃&֘HUe_,^:*ܽὸk ) ꭖ\DWrLVP yGڛ0{L=8 OH@3^Vw#Ҥ! 0^%fBSx!=ٙɝ[)9tBc5>.y7RDauAe-{]wza)ehLK Q|-M^2דTT&g>$n6'zr&D\nk7c1wnҾʒd/ÿȓ &̹loHeoU7Il>Kz?.t.ȄxT\iJ<Cݦpq$"XR+>Z Q|daHR- lѕ?&}T'yJo>mu6c@Pr}P|OVf,hoFZg&HaCj<ԱRL>arrK6 @7`Ϡ5"TON]rӁr{Msn* XQ]!M˵;$^8P&^ލ|$H+Ne!QߌSϩF&^zp.nMB %pJf䢅U,icZMJ l

2\OCR .5Ӊ_=Z= rqȪhabI@ɭ(bTf[mddpK(pcy^=v\>nPӚ5l2rDx~+n@Zh_dLK\3FFl4Y]/A"':3XH ]ay@ aM?=''v"jb Zle©82T@]8m"$`{^({vBS [yݮv @!M(a~ONPIy3 hB05pB_/v]7j 4vSÛ9HYSU9y^l۽_Y̹;gB`nWC Sw/ =*Ӣmg#;*uYA<D@"wD+xfZ_{<cOۺ J7U*@h?p'UN`PnY@Nօ%5#Z)L^'Vڊ nmyhZR̤у ۾ǖ-W.N6o*2dLC%O79`s"7EGBqN2tʳZHOLoCfx /DBV/ mb6CBv!דc#mjfg G.!VFJ 7q"$(}Ur?/vsXc$*-4HuIC#(7-!xsaf~s,PUrtMmreO_erOWiόn=ʱł1d ڷ͈?F*~Keb+8zjF_6M&S"жK?Ge3nq"4cE.ؼմ:[i=zDߪ Z/1|(P;wР=ypG$#Ë]G'(Br#?L\f`?~jdg]meZrfiF+AK${G Ο7ks*N kF>4]ޓ7~2 Ԑg,(hY)UDM+ e5J}@ޥ; Aחn԰=PfslănT,=¹Sm8IL#Y$Q% Lά 54($vqeՁ9!bI7ۗfd65a~8^,kݪ"av+e.3!(}z͉†#품:LhXL."2: ??譈_NPi!8;'T A?f,+W[Oae?$ ϰi_Z=,]z½:C"Z̶ur')\S;)nmcMJ- (Fi_S.iTkKܘv߻5g% X_ded=CBybo"@xN>Uf)ɶVbSp̟5mi5)p|6j2!S3j8hY<5C `ӎCϴ}Y ´7@ީކ,_ve^*[i٘3Q7-i$s>C@!yh^|nu(۾TBqRM Q_ `CP' ˺.x8V$]-#WFêN~B7OWŅ:47nϧ^C$nqAJˋ:o~Wُxm0^ٽ3qPC))d*J{.ӟ>Ky$w3"e!TzƔ=Keuq miULlDV+#%,V~{V6[6O߅Հ>`jkZB!V@FɆ~,/߂x>G)ìp7`R;e;ľ~ Q!\:Tj$ze1΅5~Oc`C7!z፟N0y? q<Zk;,-Z=ݩ4e-K'S@hA1I'wjUn/g{= |¯xcG!9Fek7t&_xI2%Spgռ&RLLZ qY52;AchR񟎜&h =f+ 'U OclQM'M% 1@$ԫd@݀lcm4gS+_!p K>Ϩe(^ij` :]h D;V:3 ~aǥ|)Vt"K(N@t3󯏢`쾩ͻ_soۥu! I]Z5|+C]z1n# D*aԞw%¼tC$=W[-Ņ+l%yMK"M2Cz1؟x{n'SDpFOQW(h@/R|80iD c6Mehou(i DB?J;)Acr߀= &gdϏ3둡A[Cx^U%L^LyL~YzMHi`˲P49WrsYNbu4gu>Lg"ckV :+fXz4Bw"󕚓B{tsBw33VyÀ~H%@'&yFԾ(s+Y;s}}c jUHͨr#kյuT / g۝*8kٯ.,vGP7Kߗfv$~3D, B S2tJ?Hd A0JH0TՅM2+fQ WBBыUC(, 9S"?h8oՎ "M..X 9Q}#^SRG>=b< [oe 6Av 397^s0yT5GӪQBɗ=3lskPNM!1`/?(^+f}Ϟ(ւ?k? zh?5k>\텄ubjgƢEw7#i8z_"wyKN:ԼJ*HQOA90ʫ0&ŝ0 2ȓZǒ [0-QoV7"= EWC2qmIwKo#WGP*||`Ma<~nn )6&rJ8K~O:r BHfЊBpfEK*DHN:X!&1r)*Irpŷ =BƭrGI_p\HfO!+,sC":DKZ|x7S1Vc&ƽµqs*0%&:Umo֬zXyrXڙ,nC`"G]F"9i ͍:swk5Sl=8|t/t>T"{~` t3`M"ҋ4^, c2t &]cmq_z}9`m4Š/b`#QXxG{yXidn[=-AV&e~Y0}s uHڧ0o0l;e~ RHqUT-s|G B"yoZ+VS_\ی_tN,`zW Aya2M42¸q;-ቢҹC4tuTaŘܑYm2h8:4U|v?pc6H-NM̙{^:LQu--\ [c]cI⷟Kl]_G2w귕1}94jȍM[[!aPOTwL`^R}HƔD-Ǡ܁%Aڐ6ʧU-c-b,ы+uK e֝.'1-KhZ>Rm=(tdr=X |;=-@ZJ'q$!5;B^ ΪgWj:xG&g2';Rq+l1@+Rab# yF dc;CR$c\-I6eWs{hєtpPա(ĚlgCFK[ڬ%6(+$1TDG~ G2!i5>W$"Bu'L/MP㹘9Qd:k |SS XuH~b61P_Hq1@/w9] 댾wLcˠ>䪽>Ň,g76K/d(k?"#߰l&5L8WSuQ`>  _ryO->@$# %FN&/,=o y'x #8fNmV*i<T]*`C *o 2b)]W!Q?u]6k17}GlʺY+M$t-_C Z=-J`}~*vgcIHDz2otg{Oy^_[ylY8?jMLzȄ&)db4oup,̫7+N7'w[d+qBJ34.dF^%=j9 ނEy{|Z3^э]yNKs<3Ao##UW c=B`k5qٿ`5G`TRuR %K@uY_ mӴZJ|V1 ʼnn Ǻ+\pj؆(VڷK]g|P 0|BVp#O@/Nw`Kfap{7|iaϵ-=]CGd]gֶ BOI\y;0*Fă>Tm Z Tg|X;pPUֿ$ 7knIXہ DoZTKzmvrErHh߷7-'IΧ,f >2 $[ԮzjN;O '\KJ0$:ڵo;ŸB@֧\$iQkORPǫ᰿PD= t`fsɇj Vc3p&6ɿH;So wD2kJZ^3bmC(e!,-0"FsdD̃J%pb,4Fsc'bfZ k?6^ V4IyJ5؏Syz'p}@6cu `ca1O?AhkRF c-\x9y-*wBN *'\+4 +<0=ό/=\@wV94&ɌHↀ L朞b hٴ$p&b 3yO0*3$%:mn=,RhZGg4ւn_#xvrR}c!v@eeMV5Jme*- Z1ZdfiOYq/Sf-Qetgf8NÀa;aciC\ za%V^Gip5= ؅RC7" LWv[Ozxܵ}W(ADH[*'Fte􎐣kt1g?!{-Tޓ͌?sPR v3I:ךm^.^a#ԣg<POC/s5DGQ0m +HJ9КipiH87PEujNjoyG )&t 4R\nɵ m,NjmSMȵ¡Pd/`sz2-6Tח<,V ʙh7OT, +˥C.\` 0tJ~^mMm!atNkvz3rć$f$*mc5bHުto->:{k9<2B^;8v#/t5CÌ}}]ci/8=GSDǿrT Cl RŹ@80 N5!a=GgqKt6j,Yުz\`}<ȍ9"3m.xSW<[2u&>2CqgcZQ4N?^Ѽg @YdꨟFeKz),g_#3ٹ?OraG3p%=˵fmN Edpu]90Rx ЯȲ!DCFӊ@A*P 7mqasn\#ǀ쓲0[v+&MWa@hyn-uҶ۪L`alQ_l`74Tbk$xd@U +2Y#XYBct/̙ER*-.u\8 T\!/2ҹ[9W2v3aLfhd vZi4Y t}ZGȑq ows9F'y;_ލ)q䈲i?b`k0oMIT4ѝ`G8\}ϬOr2[{_?YZnmxa0&u5n+-_W$9D7 {W)` óI6(޶ZpM!U]P)ɷ?}ͱ\4 TAOdT WuRܵU /k1HTS8`aiyXHS5zK iH)łiccz)G88J7:04Pz!T_c2/5`|_+VXϊC!Eyh1x(<̹&[C9}sHYYrâPd%B+r:iݐxT5Z ~t, UqeGPxJw~Avq){ ,Ĉq%(a?lJvM] 3yЌ w(RTJO ej@RZ6qsA -*mO)~5tz{8di3C ߼ͧA1'mS#|='B=bi[c['?lQK7p_CB;lESh>st`i>:J۫!%3l*GǓldT3 6yTIBѭAKSQ ig^p N7;) K~+XE&)ÛOضx{۳ sOT5IGŞ0pP0`T=-~$ӽj2|}\"FޑͨRh?o/!O;9dCZ:n^rsxj=I箦o"J!D{NWbkMWY㭵|dׯKݴYY2{M(t vmL%"2ٲ h%'0(w[Jط +ջWEPd鍘H3*0i_?ƲGrf7Nƛ3YС2eSQq\ՓkLd?]v5lynyg`x{Ɩ8:KhܡҪP imA])3Ҫ39YLmEfɆ\3"K3ܗE* K7KKr3 hΑ; ;sؼ.ϙ.5``>}Nԗ9ŋ6onL I Q'9CEa^o\WqE'yd-B.lؘPZh"SGXވGq"R.v5gq/VSnb]2қ3ɞ؁|!eozbeL${v%Jy1vق:! * 2icDru@<8o^jDo8@nOی߽f0qLWO}Of 9"<ΝW˙>q׽B nk1@r.vq70P5Ogԫ/x #<2mlGa*j` L>I:׭۩n?eڤ'2qGת']P4y IeoU.8lϗ>~__%*/ӵ}9ZE[1yVUG'jSԷ35;q8=F謴!D) N]%煉"I=o Xt(֥s=ꂮ?xdE\r۞X9 x("]~ pQ7(nh(L.:Br! ZJ(E{ a j=ŊOL!Ak+"xj L az/spQtq6# ;g^V2cV߻i~ڽ +ܻ; f0p#;P,#jŮ (*JdziY4zi~,А@p}#ٳM箑qre8GϥPnFd;Uا= b9Ԕ?bUQŚ+ @e0;A7:1Lu'˔!&MY@{ll]j ;JڽQ7BӂLFR|U2~+z# #ҪOiqXJȎۦdI$}AD”+T.™?f׼|S̑(d5|%U&RT+ pӀތ{;$HɴYxm Vlp[$=yY,| YHUw/(3YUL@1p4ht)* VhM sWzuV.1ٍ*u5챭[ @P=ueѓ 6`pFfQF#e_^T ɾh{Y0:̰Uou(^:?)di"̞[H#$":0gd(e.B^ibMb;zZv&ahɝ;kasp"w&;e Nzny:!r`齉)b4}[h󭾘-p(j;+ڤ ڬ+>Aṣ$yTBΘJGeq_Ho~VizeCxk_Y:ÎX)IT#v7#6{*m頔:վhk>H5 u[5R2p,M!4}i\njix" i$Ϗ_|2iC0e1Wy Ի"| דCNq)C2o\:ǖNz^؀H.yC/-߂*1wAb# lI0Nk`׭P&V&=#pau^4ڲA/HֶR?A:) S 73 rG靋簧BK3Ë1 Psb}A.dy65 \ ]_I}rڨx'r'͡*Ku0GPl> ї`_1ey :jԚC`P= (Aw򱋳?ЊtMfeT4Zc+pㆎ 7 . i) C{4`GQzc'NS[*&J_H!j&2J y*g#Tdh\$nj& 9nFθŸ-Gg)j<:|W}NbDW{Ss>&"rHȜjf&@*jY zK ]K8ޔ>`~D<_v;ZơIGE׷>msډ &ne`W`6s72#re jPҁp'/C%3j;)rѕaiNWeоNjÙ@4[_,/Cf}æf;elWxǘYr`wjdPPP?b;J`؟ϳ$,O:G=YqO*5O R )է ne5řC`'~ramTg}-ghpDR2,R ;݉ u0º>5e >g/5~!/p(roo3;}J@Cܬ9j&Xpo3iE^@;.  Ю,V hKAh=[dGŲ Or+]o.b;#ES]W~n)3@:+Aթ<'#][z+ztQD9"Y3bFM[f'v:߷KĆp=Q@$RGRwI$:ƃ!8ާP4$#pMJcgw\00\\LӝWtMRo:ޙyf:Cφ|#;NnBbYziaͧ`R鑲'rWe3m󴲩kA;@=^1GOL)5+J\ ՟iYEdjd*ƾ #i)q&ң5Id7Pwoe]/L-p:Wg7YPR\rDm xs3CA]7ŃaN?'GU Hzf|_״Keg\׈g!D1WƘMț7o}GO]y?ZhHVaДB!v%nemV 4 jL cB\G7zçeㅱǫ {AOҝ4[ 8g&Z0:˽d]y.Vw!Sl#CZEH^aU m.8N))?TovBCoC3${{ڲSc,xj6]2w%x R~aB [ݞ0k pPzr*!0NQ*1RfW巆?h{9(E. -Ϸ1z)'Uφac LmB=#:C(fׁ]-N#_)ZK<+=!e`^Fw'َBss*RSggĈox7i$W`~J~ p[K0i M+11B w M}l  E@~ Fs~/%مL8d2l~RfɇکOBϕLbj2^K|sAhA P2m @MOboJјz.9Rlֽ ^H_Xʦ+֩Sj8K"3^bA]-𫇺C?5\A訇2 =$1h 2QAQk\`>۰b0̕6+pa79o [?ΫNvc Qvw_%dzh^DUaӠ)(Nc^1j |Oӻ_4 e`".nBN~W#mDo!*\ {a^^ΙdVOT3GzZkk1 y]}a m:QSc2Eoi R&N*GW,jscޢ$}gBV"tSl _&u S4]'_O1:'DR^iҺ2X R iqz: fbp槿z TغG2._c_ffsƑ|X}0me*`e6N=/?Wꦡv¯^H1#c=FF2~׸v R+tnr_r1q0F{"5t"SiE73#埀^Щg~ۯi" U8Ac*驳jq[ !O5)rԙpo,d̡!ӝtk!q߅%eRkrv.m/|ҥl cm~wO$CeQ,C59_?1j|Zj?Fi?vdn .~"2!‚p|a!mnESOCzݫ'рҚ͜BG[0I2N][]ۦTrd=KY7sE#TUYlrW{WsBv T3]R]{F+bI8fM@C"`Y"-sxDj)O[zm]M$Wӛ}?{+rb8^͢ME =CVB!hK\|+DL96` AкإSֻ#T涼{HNpDY\}ɧák9$d[4U8еK pHqJ/q'ü cBB/ Kb5Urj NJ# Y7?뜻Oӟ5;V]0q'Yxv͌CAT7@HFy|)FsOb :]6yFx5WP8%u{^Q2 "@< XOcvAhqD^C`6Glo"9{mhH`uPEf}EE/'.-ag̎fB?~`ZmhN=II]XfLC9)?.%.SEV/,P_ KQ9簇*]SU fB 藍$nH8gzs-,\pC5:$6<ζR3Pi-FͦE^?8 moV}!'Y2|P=Cc{p-e+(3d̨ Yk`V8uVj,S^>ev|$k7ه[$SCYu0}!=#~arj{ ӈw{$WF5N,O>ԾLC-z۶>MLz/]O-&cNi;[ay:UUyn5S%^ / @لLoyuX)tNT{94ɑy@.h>6T6?>qwJ#!"񵭐߬"3Qv.,q(ࠁkvh2F٢ZqëOpeQMܢ¦фDs& FC_"wΡ;%LP.Zn=3.N'PO]9ɩ{K`_XG"ր-Ci0t` *K%lV;<̯I⃢I_FP{8B rsPGϏ" N/FBT"DniT*wOlݭ:ȜsXjb$h*1?(h$Ԍ6V t~Ɍ-kCQQ9GC&(Zc ])!@z;=l좒xTz  *bʇ3t~-դH@#y5;.;v'^{)ZkX6Ebn[JԽuBŝ<~W=ClCkAwH8dG7;kpҐk[㤉ܳhdlBuBM@Yn.:j}fJ$2)KOQ|%a]BV7K?r$B4&lB k&(%kI9P)@G%`*īM7U:= 2e1ptvń ҡO y{3Â"Ԯ2xo" )#d7MvH5RgwgvBF۲k]|_?"Hp JhJyQ?!\+> e* LS<$2 }L3 f*Ί"XIcFЉ C!g ,/"U[*Hg&H)6'bIŹXw~TvoxKmtedhriRI0ӟe-=w7/fl)FZK(Fzf&!n^ & 7`&4\c(ݤR,Mݒ~W"3)_t^Ӛu-oԵB9zc#gp8cHڃՂ1+ˀ+@V{} t̷x F/:a2.pCca/U[qy%4hSz=h Y}@SCdΈ5С=~|.ܢ|~-$[Cvh+M8~4w&~PC@G,Al%Q`AkJ)7}8y&IZRn#}Vk<`7mWcovV"UWt,+rN'qgv,dJOM3Kx@'$avoկ 1 ĬWqSH;Vv=kQkY?mR۝Y1,E vґk׀0~@cRIL6gmdq 7usj4'+*RM!H(f(sj RTnF: 6e 2>a[=ħ4._N e16" b6Y 6;!;?f4XݭUϲ8q,Յi@RFF,#+Iu}ݾ$fΏ.W$!+r 3kf&CF*]~qB2e| aL#"acI* W@x@tlakP=n !2~pVR}#48F `'MZr"R'ipҷ=QQ#:wRUK h(+=)xLUI)܈衢T[{#v`Q_V^VerމX"'wXaCf1F?߈뽩6:mY'My 1! +6Vi`Fy<8&CR\!d1ްdh7hw轳P+~B:_2]vpaxXTYfD{0:%r!0S%{H7y9x+?Wl)MWe#.~lkrU?\d\8XܴL=|q89 >+9 sk}]ڞoMfxl""rKP*oFFpWbc.NL3C# <<8&_/d[H+hLzd8@_B-34?{\ʢ۰`7`i ƌ4[a8ju0NFzcC) 2$T@] ( I)}ԡ$ B;@ܨ\&;8%#'b rܰ7la6[ #]&ɵrSc|7$!/#T_`7ILmTPZ(64ɱC*߻?q>~cr-.k1+4c%/!Y}c#l|nr}tK̥HjfN]Dl\+LcvЉ&\w cE` _x]$ Z8>OȁtWLLt/ !{E-?R~3itV%YQHk?ҕzdftӁ5ဴdWMݱ-x}< mv55d%)] Dkհ#*k$!"߀[9Ex]M7Ò'!+Ր_d+8|,.+=7آy}Nm-$8p2K>méE`쿦](=%=WX#A ĤSkapm>˛d3RkPXӋM"KOZïȕXTQs7֒Kn,`nzS |'ƱF.}*]a̾"x~?0 _?`u.[>'R` S^QPUX/ @O?SI"7{UH ſtSC [S-a1[>_fv;Qs7@)Tp-F${]:{V\%&w-U@#M<}=д 葆d(Q7E/]= _PI\'$PœDp)A SgrF>aI|rc\%JwN3@E{H}yٶCa:F֟2Ө2~SBw'9nʯY>r\P?/c*['9-=v,,/A X4NmOrXYtYiC( 9 %xRE$b#ΰs(Dʻs`(p]/N_Pĉ]6Yi'+V@8CZ8"-$"{AEo\ Օ'c! uSF&W*I}ۋSa!8xk?I$m)@m~Z^U̞}]A3[`HIUH#/B(ݕAJfjͦ)?e*_|rb -m$)N0AW$kC)dh{h3lkTՖwǽ_wXPi@UrAzF\=6;MI|jfvF WBaNH(Ů UPtIZ+}H9͆mVŢ(w>GsК^@>a&МOrwroHW*0` bK`DƯ@t* z^AtѺ!6VڴP.ْQZH* GG ePҨDG!a< lEt.!(Hr2Zch>S[nfŧu!VM܁!̽BBA]OvK7vwr1P8Ғ.qAžgh s3|ω]T71\O?MXAkxp7_65k܁mT6%/te8Zϸ"Lq#ޣ$Q=,_3YK L2Ui]s1$TKg6Ћ1?z I/C 2|yi{c8҉&=Dzlt/{#4scW#t7TZB#UdΊR1w-;h*ܚ(#}0]zWBgѧnA ("A1&,4k41KSVshY7#4%[#)$ ,hSo2P 2c~$/t{O1LC7|;\Z] %4U<,ěcl2o ٵEALuA*C}G>dKL91 E :[\HyhJC lCck קM 8󤛲2enf0V @Fn[Hyr0Xr[eʙ` ` <8r[ӽ'744 ȘG&b 䀥< 6MBs^~d؛[DfkM& ' 9N slRlX iX=&7S043UжTV%a`-5;/lDLezw:DYT^AcͨV+( 6aI~dms7k jʕcr ÙMEF雾 P闱VK|=F!ÿv~)tqxmAtҮg^t74F2,G =іʈľ$u܉E>œ,?9cl<>ڢ- m`@0wx"_mٌϻyO? ) Jb^p7|1 $ oT% IEcfiEgE>*rޔK* pf'$E}j>Ò44iңBxȋ}H"&RYQ\zhZ9H9LF)wodk@9|w7O B!9Pt_P TRp*돑gT)Q|k/~î+w Iu7d]Б$9 Mo;?gkYr29C )5Pf WaP;jifD4Lnm!Fp!u&\W8kWݠl:`:4sӠ^ z9q٩S\tQ-Ŝ<Ȋo eCB2A]ZK@<]T;'p-l{9V2"\KFE7g5O-'hZuqY0"Nh{6 #OZ";k-|B l/O4"e :a݁p, ݌"я*0igW!&G-GYyž mxsSNO 5[8>y@ߖ Uo$qy> `["Hʬyv$3IA8C_~>q)D KuZ>ǀ$ 19zj@kff a)3Jg>!?-Ѷ!or_d!RK>IuĆ͔ZP54ELsMAHhG6Iw&/Z^#"9kBo򆧑Phz]Z5/2 hM˳-j<=He_*;\)Z^pOq#8l^t)jYe[j^ClGp*1 =/uby4Ӡ]ߨXdwӽ-Ԕm+E=$. FGtPwĜ:k{[想n#Mi]O[.P}v"Vr ^|VNm90WT;%N>mݦ7V1w}ѧNda o0V#, Bx]Q?9bDGaJVR"! e']M\웕rDU"GEZk q[IrdӬ:oe.GQ!]Kதt*vнSs3q976-}ϧR,ؼҬ6sfN2}h.]-< CA%!ԧ]|K NGF+smnq OOkBGe 6a; 5?,ټ{NS[lXUx.IyP]>,ԟNΆT*E~*]1.3t@n=x,lFJGx'Y2}U~ϟ.3Grb4ĥWѼ1~)>5J\\ ՒE('_k3+=W36ɒ*mYƀNI{msN~ C-4yG-4VIV)4]Tf9BV/IRNje# 50.]1kZTkH"8^_wL)ʯ ׬Wnu0Nx"'D锓5ܑOûxvNׄu4< ȧ[DFѷ[^R!˙+cXz(X{Jw2ǵ2h!^YT$d#leк u 3]׿/~KpNܺ.}kRfޥÀɫY/5&0>VxRBӤD qlG=lia;؈q%jg ن[J̘)їkQq =Y7ة;/ƗqfRVQMRh㜭s`/Emh{ȫ$)s$>0_w, RTd"}+,=[B6P ˙"..+cH* ^_1 [m3w6i9:ljClՊCBtZLj` FռeD[P&zY)"n¦c^{V7j|N"^{);;` *|bw+y5="jv+1G ^`:-pm z$gQ\D0ټ2)W+۲Pѣ juzDM@hu$燛,4jO~''KVN8tƆ?d/)(̪(TS96'`\}4Ԓ^e `޸ϰez;fZj0oH7{O;C*YIx+vU FLsB?nC\DNu%\Ǫc>]U$oS.šH_ ׿?!P\H 5=IR?@ OrATByn6]R:փ'-e _l9fdp~rAA,.KQF;(HwO1`J\b'( W.O+"tz }ZFaB1*=8}q(j"D* Wfxj [i`}Ґ3J wX|Tg9H,~/zqwdЍ2&E3bՎ؟ hX4Z#<J;(д} k7^dP-kc9Dv&yuZD$t{V%e[y]!ǿW*H8p,dE ċkѹhIC cAN,,,sK38#nez{#Ǹg5b 1+AГaS }D ^yu .(>27O~xr<_6&U(r:ԀsQaVVV(sThl}gv#es7!NH!Y1]rsM]pfbuA&zYp'YLa_"igm#Vr}yxu^RZfh RV,9۶xqXwz *icR# iY\$fp?+i9^fŒ)28b%54>7/sJ-/kCGﶯMP=2U0ӃlQo0}2hsQ }‹̜KL-'Fʮ> +I8[eJ@ @E _Z䮤E1Ə}m`=0*a IgV`Űwb$X7|{cnr'W_QQ^q)X#d?μ~D&K  90|*j(=U Ot8 a9AHlkްnyMGƷU/+^W7%,b; p튞ߒ֦D=CUWxҭ"㪿3;v/R{b1jwa%H'=ĉpcb7NF('iI=苦5`M\n*,In(P( )Ws.y 7 ]:_z^z%:Ӭ٦Lw?-%]NR?sy* CXj/!MjvVvq5h 1oU;ϬM$$rQu JG;>D@mԵBP{}w[$X2-ʽs)c1ib)e-i<"I0gPI)KoISdP#P#=3,931v2V'о)q?+,3an0pRDfSCIJ* qquYAclVk $Bu)M|.I87RXct VEtťCiD|$;jX/,ZIDmd/po:wt"5>D*U8aHֽ?"&t1S9DZH4p7wh; y׿z"Gʣ8DI'7\ /dKPg뒅ȒmD՛qKJh,B"9n%yx_jۓ󧍥#WMǰ9PjsQ &!]V,]aӡ!)2ZehͷN7@y{3oX}"NRb9qڐʋO [O*R*z){챧QNPf9QrUȦ Rcs%)P3Perc YwnRӨqF!g[Zڃ.$ɡR·gfe06) 5MZ6\fġydnhHYᔼ ͒J?j:q*E%9j\ p3<P4sZw" *&fx· 2pU`O6j3Q\pe7זH*U.z]]V+syIKW2 %(B߷V]鯬YV^YQ |spp&B?OU88 9P%d_ѷ;;2,R;?t֘EԞUc=Ȉmp@yVWTkDG1mu-p Y:qBBOt%{B3$Vac`;.j31o$u[DOH HMfauwfA8"V"(䉣f*? gt3#O@+I_iscguZN u:R/:C-[#lOML:&O -_DruIwۍ)sI&ּ;*cvGTOAf[H{9,Q'A)Lg6',Uqv "m (1w Z𼵴֕u!Z2y/*8J*ۄ)Nje 1YiT V pDbB]cVH/F$0/syֆ|kѴt-@"20J6KFJ4;NNj7L8 mBn++yYةώzr ~`gM`i -:mlJ h!0i`qL Pt=VLV{*~OMrIuA|Es4F"ZZΊjY2IGW?徲rt|Q%pld$dMoG&231PjF#˰!ijaE 92V 8:lW_Ǚ¸# ?Ɯm Sr7a]2uk {}cEn^%>h`m%\[ 6B,'cʩS+ ΉTrRFbnʼnaeGa=7Arf'<;;w'c g_N_L_l=C/eCW{#(ch=4M)ƞa蔄[X 'KpJةnrfsv-M82f|b[I{`oObG>}8N 0B蛠Zބ; |:=L F=6PZɧ>P Izӫ | z:Q9q|s/IĿɷv\(`A k"Q Mi&Կk v{ {E'bbQVcƮ|;HtfS"s˚-FRξZY~.CBe||jq <;LM%3^QE : Ȉ{xԹ𬔻>Ν kkط'mId`\yLZ0me+\Q8Bgu#!Opd^#m^& m4t?.z~Eluѻ)E䴒ʖ!+&XFjY=w|DQAAJo~3s]w$f q ztz3K )AgZ!~׵O4d8ͣ%7}q/Qňcul6=Bc\c:'Wzq'`0LgUXoEURi4l=zY棆va.xֶ EGdEӚBhtFO%Cn+o8ktRnj@!`C:?5* lt0=,fF}7n ^ ޘTy */ ~Li^&>tKN<.ʹAi^#q .kQ@d[sE0oߦAЃ^qp։訍H% 7u$v,x/ EgBht,ꑉ)Z8ȁx +Z rrujQ|am8ㆰ%dDZGH+aR!ݏOWR%Tca. >7+9-L=FTQth՜nFtP^XmPV ;yo2aaS9M@&V*boHG 'D骔ѼA#zj:-3"Y=)Rvbk/'km@7.Ve tƸLCeh٠p΅Z+Y?o vNsۖa:gШ_; oN6ȠjN wtYZWɿrs(S XoJKqWb!-+6Ğ( @,Ƣf3^C$Y2vf DW2+E0#m_'oA|5$#<ʢt@v5&lc˄AFR]f2{fh3ZsbhS\:.>˦IWúp`9źPbr:1ۖ?*'P!MƸt5 3=/]̙nКEr?KEqt[%Ʈa1T+ 9'yըEE!+Eׁ,»t\bׯQHI{9{Qg[(5bDY2XBRyN qh^\N'l N\zDF) Rj:UZ|!>uaZZ$FY[L̍v ㇥,mJ<ޅ3ްH]c(? NK0Fqu]Jbtv> B@{!~Ĝ^T?į:7FeB)ޑ 8N|VNz?C{칀N}'= ,xUc.h+Q~̓=fӃ'xKB8IBu.Ek sMLqT{<)-V+;ɛY2)̴'CQ' jwr*FMv6[N{pUJ$4D >lf2MxTucy^!] W6n|,+EOMD, L3_(oV0D%EaچulYw|1.'O-ZҡuˢJ^7y15&elFaVhǡ`8(o #B@ޔMoʌ#٧*gFG!dY(g[k}dsR ,\Tc>^ w{s`LJ3|~;j R_{ +Bڕ#ҝQ:|?Ub륐Ybp"0+y׈R=9 U<)G>uF UAv$`-n/}}=U0WLu׺(afNrҹW),Ekgciz4<8Cx uV`'Sǰ£R%B&ќ9nV.*"3D@a'#2.e`\qyL~?eqv%TMf(*10Rvn<ޚ٥m'r ڴp+ؾ&aY՗CA}'R"D/2*1d͵кő* h6`:3SosQ XtlFL(0C'Wy_/G"0l X!6RYK 벃LZ4f96S:_q٣6Sw,({9voԕ3/KklQ&/}y5(g0-p '᳌_sj7ڔ'WPT3h@򖢑鬂KPg:S; `Ç*.7D'L9uY3QG8L4ʐs]6t|^o)M(6NĴn|xNDa>}_uK=B)tKq;JPQbNiq$Ɯ;&+%86 hrwwDEc924ʠQcJ 芍{F{8*W. )4U 2W\+NGTe'2:* .? "q|[wM3r6]"BhVM}߻H!a$5VaN%[ɻذPQXL6I'!9CЩ9h zk3KvJ>DlrVXt B`.i I/~WH˧FfR?D$(ez^akNUtlitA2Q*_o[3#R 7v6Nػfخ D!VNsSJ.ێZ% Vko8){LԫrU%7*-'o4Ze XEMu fn'.<Ǝ<>ݡhm 'm!cv60M'TBd]B0 pĢi<@}SB4S٦ԏ)^oWI`__7:[Onh6I͏Y\"`ҭ}8=Zᶕfsz[2J=x$npӟΉAGۻ!NNE8!x8{9 fɈ*]n]Rч{kUivO?;!:ey82 .UA 'Ev/a \ dzãk4RG&gr `XџsҒq#ԃFcfy4Ω =_GxxAe*'A[#9̉,ӛ${,Y]xg Pv YܩD>Jγm<cZ8# ·oF"^Ɠ bI?RCzA4a 4"Y`dh ux4PNɃb㋒(@ 3W B>/R2pcMX%&wFTxIH O 湨sH_{5T??Ki9@P;죩ʑJlSzX,\B}-EGtFr Ź2jڛ8#\D7؋)%byWpK9m#`#A|PgV$eB&ćSz0z?ۃTs?+2>SdW cD쐴 fWpN6TKh >+42@a}`h-+ryQ|&{hhF,.L>d~{*U?Qe NcAZ+0|LS,i)~iu{l'u29$)@!_$D/4OÛAebYО<`:xn2L,fhvT\ %].8b#Ahܨ-_6z5 "5_pn}YvuEfq<$RKz99b9Z$ x~f-<ͼD"U0聊z *[78\Qh/j|Ljdb>/u,lOLӼtؐ1Vsn8~sR"#u *g9 6quV9Ak1Xc 5"H_!2Iw*Q` f/|-@-r-<P eP^+L\4z?QQsԁQ(0|'Fj["Zt%$Z-z %euQ+ 97=r?P⟕ٸ9V&+튪p,1ELNY*H詿A\VVuĉWBFHʈN\grqXW 7XPuɟxo8`}HYʓ6Z#ޕ3I|ϴFDX=!!vuTTNAl  `)wwJª~b#Q1 *,xy,n;KTRT>5á5ނ% "'SbF-?&UkJc*keZphtEP+ xbla Y2 P %v!8#`l}'X|ر}gKV %כ/5p[q\݀B"pZ|K ?_}"u}!_֋<~7H6pKMP;A;kU Qљqu:/!YeVsHvS3?{b`mֲ_l $Ic^M-}~*t;|;tkU:",ΐAoDZ^FFCK`ْ9Bi ҞNs,~VŠ@ŠC. sY5-%h8l#{>r<3Av)OF a:-B7EGlK~[~'o| = Lxtg,N X5Ѫ} ׺zIJ`|vy!OhǜH[Z8HiهsWJdgJD6 Ș=1:bfltX!^#QE+QNM%c9#(ݿ%wz$evYu%:D ;B೜dgqq6tEY٧Fj0=sV1g璥Z"ݏ-dF:gpƉygwN§(fCM#gTwH ֞ ԹoAc'U[''bYVWn6}oKȣԴWRC~BW}زJWڤ$$KBpDEǜ_n"F>}ɕ(1Y]D>Hp_(aLXt _o!9%mVLCq̉[8% Y*3 {yicw<9._ɥLg61!vHL1SfJ@D|ǠhklpJ$-Vh;_4:\ ĢӅX'+1>V;bxA[>s)eqMǼŀ&}2 t(OLMl¶Mlv Nue("K\Aͥ%?mEwZv {/ڸMGpҕ6,Z 2Z$׷H4@ԇ ʥ 3&z.;ӯ MhW׺҅;.uon]}ky'VL 9n6[]:=": L`\>A9U5h "[ywLlg%l1{]j#9V 5aѳ2E;ll1K|)YNQ{ds'wM1+'pAw8N $qSu( zg ƃ uoĘ̪,;#:V#sJ2TG1bk~ͨv.' ϭp GR<{w~s _*΢5PH9z},@mDa5HĎ}/}QjO*G.yZh}ܘ<28BpߒK:_5Ռf֔:~'~;C1D7<] 5R5!ƒEgP6ۚfmgwF8rrSj_ {-l?+"ivU d,vyhJD SA͢i+%9I\v\3v쬛 |Y:=\a*J³ÔTꨱ ?hτ )s֪K lE /d D7$DZv,UrS gjtk~ ?兯VI'}ch ~l}%yﺕS͘[Լ\F͸) dNu~P0KIrlʚ¹f"!Q؃ҳ!!$]絭esҹD DwGx*~Jw4".J_9Sͫ&9DMgݸ ?v528eQ_F G%AEfev-&t蔜*]׉MW?0d$_=r|&7IpU Yx-)}+ɝP=V7 X ,`D6.fq]a%|@rrhAQ׍֤fFǭ_?q0TB? ԌESERd3zT6%fZ܁X1%MY=-X6~Lq|‹Gf y4<>0 g$T)в j$x+ACgGͲgbb,j1[Ѝ}F2n /e^O.d[ln75z;~*qilC b%Jok\s {i>f9A`[W~c菀"z.`j7ё:#f ROE S9r(ҋFrm8~n i&ވ=QثT68脂2s_=A6zC@ 1uCqWOG'<ͱ4Q' ~#ԀVE: 2IymiD7ʷ> iPYbg_LSa,f%+(ًo!]~ gf.Mim13w0a,2yiźY?$e֬K301W1t-!73K+(wv~@"yoy\(5i}z ^d?4ALJk*ZЧWW,leAimhDbf\=` 30 䅲u.ާqlҏ~`Ҥgv7BϫU{%~kI $Oex}n&Wdf7Nc=葌mxf>i!iF4F0%8:ivR в< ^Y`nlʏ!bdM2bZٟMDv["3%wMZTSdUgfb[#q(Ti& ʞwl҄ڔ)bX.OjCX̧f!+ VҵnxH(^wD]8v￁;ӮLGWkނJ_QJ[`V%4iB29V7U~Q׵ūCO(WςC5:Ԑр/CoGӹ 9`Ñyy 0s@X5>y"h?k({qiVŝs+qKVm|n54 jrB90b2`M&aT{,𰶆-Jp|"G?BS\uCoS V&r^cXiyVc~] 4޻KVN?p piˮ3V#^̥N?`y ޢ#IC,܍$x{Gm`cs 5HB E]v2#%#uɮwO4-/c $D"Y @z߀IzkG7o|{b;!qap' 5(qvNl߄g,zß叫W'QQ?^$2s7Uʹ}5`ȯ1!H\ɀOޞ0% Fr@BoZY^y7T4KޓpL"gJgFbʸ&Y}PϡS8LiĘv$1Ȑ0$*I6~,{/F  cj:\6EoNܙ] `"+`@k_YtOY͜aGSz5rT'1MR&d:T! QnS~{G!}TAr4yPF爉ζD]1RE/ &ڹR iGB#sYBg ilǎ;]KD,|K"fE` KTYvDa7C9 ; ʜ#-#S3d24ކKȓpos+x,oh~A|hI{A}G2  cmU*Ǥ6\(H@EQ2$JYqf*@́gG5VaO׋υרlQwMQ.1EG~b\tsJH˽QS?Oׁﳲ@Il kf"EtY%2{TH e` _rW'CGBqt$^6kHOp*'7׸{(z$$VOey2I+xF搶J8J\:6% oIlqg(<. _p7EGbU\2!;&﵁ q)^eFtgY0;S% )xZdnHK#(G͠;;/e!P%lH%$ӵ 6[.Ro9σzt@ր2\"!W[:%79)Z<0,%q B ~qRI ʶC3+  <܌UK9fvC@\U1>d).Xxb'x(=Tl`]}ˑ %ŋn.-F .Vɸ rO*a0@譮t9[z꼈(C_v웴U{EZ̠rū^bȟx%GQbWW~KsR,=E_D tϟ܉@V^~෵&r*ȫq<@QL]Xh E)%F*}c{(FJ~| '58;vjhF{B^+(1) B):j]ȋ4]9aYӢSJ-S^!PJ[xS;(|ųZ>)a84 ׿X]¹Gڎg MS`6f@,\!ecI9"CpYT­GqlTkcՎa ë U'_Nj~ < 7ꛭ|H2 ʩ#ˊR@<h>ϰY]: B,qmo,FoyyPbqގ'cEI)nۊKKov K!AGPM (#\]ce+ T(8&՞.Q(B{LwN~[Z vM.AJj4zx.Ovo=L]!\xi"$!wț(r ժ,,ܳ.iu)"6t`FJ;a+$D5f^|08h~=)T. Ġ9TխfSGytaga1 D}ur! qӕO cBp.MmtM2)gmIlĘ^OSz3n|T4Mu@a)FV><1nq 8V-`sؤ-iE.rljBY7O3+w#BBW3}6%bvt46W{]!'߅| PwYemfYi W]}OLUMo5 UaeEj.~nGјDp(y-#j<>peMna[떄*RN&_-~\$ҞLW$ )8BYJ R#'OQS}DKԭ*L_EZSMO-q2rE^5 eצ +p` .K)/oFyt-Yz}ozμ, UJ`R s> .|%T88!_8=$*b4ԪpGvˆe@!A+-y-aA|2st?I%*RJDr_t[4#VW{sr:X`mG1Ik+ӂFT^FloBI›ewFKreN{-w{b|JY^Qd0[4u`Jζht>O8.mU(^jŽ*-W,ϲ]x (N-!$RsZ㟱Lܼpش=&Hh_n}RXhJO3١y-K9m 4T$Wab ?b#'bd;Ƨt##oPjl֯1l?Lku*5A(& dW38#BV)AҩBfzǹ"[*[ԢdSbӏ9!bq~&t#l77+I%SBjwW0 NQs KfdvYņ%¶r<6<Q%ZY y_DvNsqwBn :6,AIP\ѕaVglnOj_xW5mWˣ;h|[BZ<_*=ȥ5yS;ZWi5`KY6,f?dfɴ,J_IPwM:brW1axp=Ff:8yBP^[vqQsD0wUq7]eJTur;r)1`!((-x7x*rݏo.dB%pG7~ ˝wx T^u^O2:G{ىSæ]6 F{uw<$DYvګk[ly lsfT"a `<¯%]۽ `]Çm|^stp{8wH<4Svy_z".6Ǔ:.w y7}fކh'űYaR/#DrEA`ΏkyB{9gѸ|D>wY!3#ϩN3@L#NQK8Xĵ[57M*zvn%6J_)iqKl;9K_US,|fz&tTy {z,L!y0_$kf0G+uǽ9AD Z&Ng$򏼔#Ȭ ! yT; 6hi4X 8ݾZe`0V@'vPROqo0 J 9>u[OḾ] *- CO2`pyzbxlQ1PEcʹw d ӳ?Q٨J1RNIО@pJ?<tֶggi`P]S]b?2oNi|@w ;>fTDB){SN2FCQA<^W 8fLt( 䟉g5\\\y15vRB0"p%{}%ٌn-'j&#C3}"i=5 Ǣu{ ׇ ŶLW@Qz1]* ]F4QH-ۏ(;|})ɧ!D5Yh :‹G3KF^"BGz:xN31XPT=IYA\ )3{bu:\ijbxiK?3OƼsC/ #|6gI l{ĺJH}ͽnzhp+}^BH+h9 c1΁J3Iyp5~4?x([8q oE>MI"蘰Z*] `@^X( c ġ$v zMSZ A a ɒ+kŢQrZhJFg |5Q%hgG9ۈ;~:X5f'' >K}YvP"ScLq&h&Z# xs[sھskm6+[" &ԱEԤ q[!ɩ+Dji77uFnc6O\˓7!X$*.qҽ08Z3Hijꐤ<*ӭwq "43=Y;19}jLzc<ȸ|}"ҦLxrH+HS?Uٜ%)ZQƴGHK"zh+k[^MJsI#Quw9S!zUtwX"m@UQa!KZ {D0=s=!8#⌶Q,d46/ށaصtXp+\W={hB{+`5Nw6X5M'x>sEn[ahDd6Ɩǯ":GyNJYRcr(e_Sm466#2J2'a\KK`R">A/MFJ en 0t]mp:\% zitVUgk SȿQ/QLn"\?_KdE aa{w&(^@5 $btnuIXet)A~:.ur-\dmtΨ oea axi,bhj*G UMQUp=W݉GV:Oam*7v!IZq7&g[ep [txO6 Deǫ:aӭL+rv.`n;RmoO5:%dOůmc7k8,- C8X- !7KzC3t2 ʯnqn;E1-5a\g7%Pk!{¨^=mi~{[Z>?]< HWBZBюk-^Ӌ%8O!ltN+EhdNHA_Dbi lE&:XG«C5갽=.UQԫ(ثzN䱠b,3Q+ճI_3@sT׵L+fl$GxL>2SerhBf1,ce i`R^+\ em4Y'` -%0IDSzv77uJ񣜠^T-6`n z906p qyDv@,d*kf!{&i.3H{Y❶ !t|Fۊk< 4l 3ۻ)` !4UxF> E{ È]? ٽ.[D(G8~YSu~i2XxM0O,\#?͞NaMl'[_HrB ?KZp"쭑j.ou.XW@dtmF Jj_a`AEG+v4(Ds/j.)ݏuJl^6KX=.*ty׎|xS#ϙʁBG@?h@,g& 1[: Tۊ(G4Th wyJs[J WIi} FDTw#d͇[^;u1=l#\U\4;10';=/:$f\H-E<јji&@mZ)I~mCgBsA@JV<Ǣ) a1:.ѩ<+{XrVeR0ƕpPEe?)=RkfIYj D!LJL`%ƛw@6Uo4)Tx¸e9=ZU[U&Gol^ai >) `DIkhb H1_)I;|=dbzW~>"nvR,m+pFF[9]F.|f'gwJ/MxRPDMT; ab7¼1VgjhX  6/ZX}c1ْeJ.F@sh]TB.ĵ/9f!EH6])`Ж||̉M3rDq8~CEMVk1/xO yZ\ Qzv>5>i> YجA oC9)OT蔇Nu\#1>vPyXޣ/+P(eyКT3fwlsqZag}n+E:/Ȅ %"!@x$O󾐭n'f5V>q*}f1\֠ a8/AI{q`4_'qjST/za< SZ8m3Кsվͨ} bYeePzy+h%.bڼ|8 /ڑC7q&/Yv,s[@7??:0!I[BηEw"'0nY,aGW}^QS+Ts.F# :Pb8upV;q;_{H"pBZ^4* >6y<9nWTy9S`%$D7S(~+kktEyDzʓrynYOS+ |K᭸Ђ57^ȫ f /*̫Sk6!5MʙtlK'ĵޕ͙/"˵R&j\y>5" ]vك6jW%ޓo`cXͿPfV;]z/& ȢyX` hTI'9f%1έ[:ɥVL{o+"5?-3nbԘv6bc%9IX}ŗT8 tk}n8vgt(LZ VT!n6BCqv:aˢm/L%G=)!M,dqT. k`3I K*‡5*: ,=&D1vy-bQZx{cXlE〤Pftw{h<=>W*Wb"z @)qA]漥Ʋ,‚bvXjBx1D\L2)ٟ_;mAB h{^.Le r*\HD22|E ZM9K9Y_+\G(32*3sA81Zv5k.~W#~_j`[ҴWe"kMA@Z-(жl!CL1\ #Ab6R<u TS@` h7Tߥ)\tVr=ɪaQ{Mj~Z}K +/a]ϯcܾV@˾9G٭u3rX)Ovr :f6輽֌YlǪ-=$_DS3esHUG /IBrw N=m(%_&0mVzK[l^^`Ľ HX|'R!>UWhE= |N^C}9Pփ!8Wf=8Bv6DEѤ8LCۭt-EOj OhgJTqH]LmAB*dXLtԔ(贘? JMIqSI2wx =<ƋNӥv*_Lه2<H:޼<[?WQuK['ѭ {Td<=Ā4XÄw@Ykh, 衲R])v72~ZED^ޛ{EvNz^Qj'B[ڴQ9ج/'3^y^O;4>Gŵ1|es!K܍ hr1k=wע(ZhPں4YwEo tZΩ /W]_ zۃr/CLB,{, j8Rp/=qW.i^vblTN©MeT'j^Y@ٸ Y +PmG߂zBqdsmWchO꣘ni3"C cZb6qԣᤢwdDcӢE 2PzH НF Gm܅.v `_hʶxڝ\Lz[.Te*4. *wۻK3Z@IȤE;>RQmքzfTPi3>~C?Кk127y$$ҭ ?; x\@ ^ch RԯÙFjN009=P oN!a5'4ݹm WU?o5&6P0;$Y-xB*"q!LG,u`ϙΎ% 0heFs)O0R?Oꂓ$GTom-RYX&IƭEY+Y@& gZN=Na7S1"[tujPt}{4{5d\ZY)"3hk|ˌ'*$'mm @&X]w7 :!ٝ=N%oAQ)i[`̘1vbQ.5xBjMx4{;/'p-+ ,"J֟r97߾%\_]dK^ JlTk agƯ>'-^3 *S@7x>[Q-_c=vL?N Z L0 4Ƃ}ϸHk8Fҥ>Bc*\Ns$Oakt8a;omet`ִ6?F9YO? 9&`_: H.On&[4/q6+]c6e}OAڴ_F^dJw{)o>aŃoV*ݮ_GW+dmsF nŬ]g7lMIYŏNPp鮌IALiim_/mPvJ dwjkS})iQЄ!Z?Q*bfܫ*03=e[{aЁ?dWqb(\eA!4O`B?= xg}g(K CKڥOTl8҉$dlZ.:L䔑3O$L=HMS grhoy ;fIa-Zy+vI2aIIk}hxG߄\y|ȝ9*z~:/wi`if k3Hl=(rG$^WwP>+Tv}y kPlIML!s\HؑCQg֣GO ~Q0J^}Wi44޺^YR>x PWͅRnf,PD.grp5z_#학F)HF 4*ʕNJ7OWQr?*O9ajؽ)Ex-``QDxpuKG|ks1X欋jz^ yN Q &ħ QT{ y>o{Pda"bv]\]IN[JxlPg}<7a`CJF ﻡel6 ֜yE ?xLŽڥ[`F pt)>CKl62 7e3ZgbsW iYͣoWV!2epRBKOܺ=22 ;$9ERV LL6x+N'ٴDULJqj+aʹ2g:4N~| KN B| 8|eI0ހ?U`x$m7@Qv@ ӲO]Zǡ<^ܮ?*B3K3t\",W%'c;1Kak&8ˣ`[?.z&Iz]T}5xCl=ɟb*pY F~=)NjĜVCAe&R2;{PI@V EˇkWX5{#9dŸm]j*,+7fF̜Ҙ/A0ʽ"s#[+}Y (05ej4E:~miOB*-%e*g@〬m]awvx/Ϸ,{Q\BZcLiF/k?YQPpUw^`(}F+pf_hDAj!2S2Aq6x`Ea_}-"FAw`[E)'xp~#lɒ =78UN{gO٫&GS(,<=Z700{I-,:/UXW3Bڗ.rȝͭ`12,:іS8_}YJ>d]0ߔ]u%t?JwGt6oR0!rKH' kbwn| ;,q,*ZĎj.ddH5=n39ewMF'/"4D|؏zַ:l7bFNfGT|Cȭ,L؞T {%9(s-;A5x\n.uZR<-)^:v')4"q)FZ~t+gx.6|=xxw_O@X,?hdfp,H&)\3OmD;qN5 lz-5Z9jRe**œO׬RQ)4(<i !r^^ /JlD&]UD?T:dtnE50þ rݸyf՝b #YX2ws B7T"rںIDo;~o>=:M x.3"B7}ac+ܓGQR*g~JW+ykC0й=F;übzDk'ޙP IԸ@*q0xPzA~%;W *UV}hNHeʎ#A^(Dmq" iteEid@fh-LwGi }UICuD@J}+=)lKcrĪ-$0`蠆0k)HShNs{Cޝ (<];L8D 2ڄ $(uy4 ꌃ7z/+yEK*z"&nut0zx5+ތ]b^ouxGuF.yW:ɻ,C+5٩$wڴf}-2OBK4 Рwΰ;06 {a _;4DSaP ':)d\ɪG{A<; BBI;HS*GLGYe27pB3S.JĆ-3'UB['+~8hҌ(`! k%vj f kY@<4W|Dd AC{r|"}Zzk7EN^G1zrLb ?)5r+*y#ZLz1+a(5}(YSuK5㦚 䀏5 zfyMEcR$io1>f8{-A"-p&hԟH2bɬl.vPx]Ն! xnp|LõYicS"lf=c`+GA@jV 1%rGkZcs@XY9?}\-7 FMu)El[( ^C̹>2"E@N&˰.Wpk]jS'E`AI  xy*LR^vTFA,(nAXuV*}C+/NUzp}7Ɵ@2MR y[bQk*%q|a[ՀTZHt{1S~$4,n1>t>Ƶ"._pN j95nʝGO80nMBÚsHP)uI|U6H1@ K%b0& 2IqJ{!Cw@5KW![geG2>L%X$R67 {d{W4-'kܘA/́z~(?(@Z`ܖAXQMĵ1r% KvqL|_R|*t98pqS s~LFИB:ϨO}.(ҋ/NJkT{Pl}sG cLQOX!szN(OGC:vVa&4X86;Ӧ ,\W),4lmWi7x> Ժ-mVk FB4h7gE0ʳs동MT%P9h g3)&B6x>6iL"wM=v CgհJG./Z$KzPO&չtgGIUFJ;ﴯ"uQ !xQ_{2j?`$;on;sP/B.m}vR\'"&z~+hzDT:NYb{F (9MK境{ G;%Aqr/4"5MՒ~ *S[ZCH9'qv-{u|\Q΁8q]v$%SR݌ iljkaD)ѴF9@CD*[|d )CYah}JK[7% i3K|0KbVZa_} WP]-,0 xv_7>gwDE}qDp{V`Ϡ'#P~ <n 5 l՘/ DBE@U0tM$dyђr蹓XiCRZ6\;zҐgXbz^E&"ER;nJYG*qx(' gPT^xХ(< GDPKuoaO %\GQDRҵ%Z !m OJAOf BH䟪|H}$r,)18~jؔC/ErޓCeJ- hG' '1V{?bq{ m#""@B.!;Kp_f)jm* K b$zr#SopRR˶|aNp6kaW 4= whk? ۰o|G^;9Ho,ciOJ-(.^XC3kנd/ռR޻9PF."GQؒ5+ k}}M[Bo v͎Y+Xz}vM*̔# \"<|YQZTVDKܓ 7en5sŻw2[973sd<}]6}y /cZw;=dKKw@(IGQ. }:N,Pv%zNP\iSx$f,u^fxɗ烽`DZ;yS? B(3 H &,7]ڰab'tc(,kW ̥W?Xa"A8iX?&,φx7tZt@-nW'&+x/ ߭$~3DC?N(.^5^[1ږzƊQw%nZ;f.uއT;b}5kGDd8aV égx-!oꦖ:,ɴSo52ʓ =v8g9;'/rcZ0m@<}$4b(S,gP1Ɋsa#G408K!m@pI|gT0_4f-}!2c0dH pA%E+*kW_a>L;d>+x8jU{9NqQPa*#uDz͝d W"zw+offba疆FUIH*}2aT}ׅwMNNv 9hY]N3j5>a}Wa}ws{MXd)>e5tG Y1&}IXD < d`338dRMpUI=Йx;-|:5I f> 5Ee  I3w#W*1?XU̢TS[ &{ϫP>?߰0ӽc&!j(#lv E+q'Y9+,]H[:2+:dwGo P`+px#'yK'/e#;`!dAVsl{;7Gls=' _~"UJLݫ4:C+4]ɾ6_;v̷-LF%,d\T[ɄGIDTA=Vż'x35W%k} }msQdhOFꕗ̉iŚ%uu3|WNY&_I4 QB;joǽC >ZT~hpWS-`;Ҡ0}|Yr ơUj|=7Ul`/%N^=}-E>to3؊LݲX'H3nc|qR~DfM{ C_Z볣퀵hVfۀjM˯Xx1NhT%T@D0$P <\8ba YOoۅL,Sd- fmL*K4=,>b~݀P#_S>[/-Vk k1`: q:6 -|pv_rWj.߻ gH^ƨ"ciһR[L7xC&w;ދKrD#rH!(pz\x1Z%RrbsM"-pW\o͏Ș 63#ۼ;HSn̒Ac=4`L, $DBc]8 Ֆ0\|ig[xq(-<~oȕy1퍠Y qo"{uya8GDg n7RAb IB牄;ؐUyJkXtʞ`ZЂYkIF %Xu8))SղwX =߆\UvN'1| rk >rH?0.֡2f9=u{j$ & e{?EwuȎCqj-EidHm,>PiuْܒbۑrPg0#s"ffɦJr[(e$f DӡғX&"4J8rjV*LxmCق`YT">\O~jk5'jğ٭[-rÈ`[ޡ8}1oKC##ne*wrF~"ڗ 堯gܸvst8,ZMhdU '>&R n67h =%|3`|MI q1Mw:i y{l7;di_f9/߯6^p<'g$\SX82yK r3iPWv2Ē3Vvws*V4[4:hֈ~i" Jjj:ҐEI2MhS_H2khB@f6V̳2gG|fF#u|qw dF7;SpE~1Y2碜O"MH7-~J4t\bJ]Ft s~4`J*hpbK`!O?x7~= H߭ e3! NtV'_#AMg[?>ta/~ DK9ٹl1q5Xpy{ױB5poڵIn7J_aa9nʐ"Bhƨ@rY;Jc|ŜllH:N-ebIqJL-*h'j%B Iйeyĥ49z^7]rgH$)ŋX4!lwfrD-c;_Vr! ©pdw9.E%9=nj 0fHOjVŌP5Ƒ`-oP }*4Z$\ ej1ͫ++\;hz*#QㆿEӥ"(z{ 6;xc Fu6nOLaH۷^=;rm*&ja#:` \-SwW2?*…ytU\cLZRAً: He#oeǽZ6I39Sg]Y;VDJA%VIğ9܈#`)K50s@L1`vH{Zvw=k7и>(wrY8{3?HQ-"dlp%#!wn bkթ&p[=D%!Z-fҺaVN 5V/d'7oΜY܎sᛁAR4g/Idd-MI币k(}?u*x02I\ &4S=&d'/0qUô) Z.k~S&o8!+a@Qo:Uӫ# ]U0'D!+ e totY36HN`c$;(/'M7FMΥ߱>>T+T("jsb=<[r-݂)lnp,pV_@#3n5fnK Jo)cìئFaDbk$xVpQ,4%=ZҲl;=aT/uC k#|)!azp(r$(ʥ4T̆ȿ'XNQeI9jK^c 1-q\]\@!6= "{Շt3qtrU d)K{eS]!2FPFi=oax̥[7Sv as1}9ez(Œp=_Ѯer's4`J[Q{@_-a},(#teK[40 C`(m0/K=I-G|&QeD߿AVOQʬ-,'W.z["82B~pQ.;ܑlY f̍~W Mc9B/K "Y3-Ej)h#gƶ88N"dxJEM:ǹVapm<["ϞQF{lQmaFt)EGLwN/#?+X{ E[^ #""!{Fֲw^UM?c=ԗ68IC89>BewMawP~XcVs6Mk>\I/2ҖsL*wJFR\tx6 /? oĴ ;gr^Nn'iquju=ne|֭yuܹJ(>DM&k=c:ɘY~ 1 #@- c\Kv C, VD˒?5+E! ĹXYH[1?UmZĀH +*%gѣW~nCGT7"8: &zէFAL{xno4[̤1V ZœtAR3IlQlurncSLe\ZPe-bPeI!ffDQsYJWWIQa_0p/f~ב`m3kR#vԵ uzof%tSj9\׾]q2&mãuL%#]YBbѢCc-Xld ״``F,&;#z6eCzz1l֕7Qb2P1BŞ}S8TGCYƹүݝ߶mp;PSa*_J|C\dzI۶$ca[.Bmn`s%/z?kj5Տ:-naleQhZ }v \?os+;g0 t l0ֺ%m:c\dF*i;3:"+)BPN6Ў%KɄoHVv'8hhʷII` X1"& YRB=U{ϡLSq6_']:fP۳?D (lb_{x=EXۼK| nBl{L,꩘N9ĥ cw1XrfrdKq;ƞyht!˨L,,(d"%X5~o$S7z&Z]z3`M͆nPGjuJ4* sj)/x7x' kl :V,`PrZᷢ q=A k uƌxe$)5*S@fGW~ uԂZ'yqۂJ]T Pt4<;hb^e BI#e~QD5[a>c:OF_4f#m3>%@6}Ĥ)xXϲHV~2Xx2_Ӻm?vUlZ H<+ZP^ C #E*h7w>Ĉ>b?꾧n%\l_$<øaEBrjPc=I:7'UaXcW"Ю/e(x)ptlwgެbP]-!׌'|ѻaerB06-\c+bˮibC MrGPI5%w14~ $-|މHDScU %5a$BP(IP'hy~b=$=+:rPn<ǖ D2 D?E6&i W#D3](t _±SCm+9{| X +pX}iMiO29B&a' !6D^`蒁W?Q3QQޑ< VƵYv˧倥JI"xGET%xٶx>qs$Ʒ$`0xk{:'9_IjF{:&~DG\]J˚`⅗9u`!ܕn<1!?-$ (\' Bw80y m;~F<Qyu/M9t%\kRpsfND 7mp=.p9<\n/ Sؐ5YE,% 3 )C>zig9>[*aά8R iY{D׃;iգ`nkgx'IXo@FoCEQKlnVY='` eɶ%6)?: [>D2pez^ ^072)ZVJ|%AnvPu?]rbP()A0Jc!(;!W0 h$dLz8tv̚L9W˥7eؓ>g8TDڪI*dz* ]]}b]Ux};,f53 Z!B)Y1.ZF4OIuHl@bcgg媰-R#"myy2" }VE; rQ|B 21't#㝮e<{Ks?SӅH52_5+] 7 N6= U4@hR; g4'շ7hFȚY\Cb q\{[fWJJH~ڻAW/O[`?:ƝÑN-V?9KPZ0bd|5uU0{Ǧrokpǡ#3r]"I6(xT/^o_Dv,G/gjz4`<6wF@IG:bw(f KFdVB^i,  2X>4%i͈~0XlEU'«=h?9C40ú>90A#BEԎYkA9 I/.rn:>~m 8l!Ev?SQ 1r[$rsKxROdvf6-oN*U\,A$hOю .|-KRbŚ"5Ha8S-a8y, kM%D 'Yjx~ܽ3ݝcy/; w=n "PC ¼|U8NXJ{LxMI$RdL= /K `s>@zg]~WBCC+PeC%l[e(%֦F/]L'%0Kha . |r$# πP8x.pw3{-Sve UgNe8?)I Tk0~ hnk=Xy*2`,:ÖQ(5$s'cn g}XʂiB^O/o4)V%!|[GC+ 4o)}yvܳ<$}.YƤv8TnU"C Y50%-IAulj)3N_KY~L厙(ޒuvړ Ҍi]"!T RkA?.ýY;d:V f9AC )+4d"%GE-yxXj: Ő\cc.3Ϫ 9Dܬ*ԻCƾ$bf,ֱ{d'Q:Mf8R n ' l&UE,}\Q-zy~֓-][[aEbXqiľQ*P\q"I" yE)M>H_9Juk?D4b’Z 4 L8{K!-I;<"ƶ+hFoV(Jt,J^rUGYj/y L$ W GJZoTx |"+׿PD61lvoYLK,TZ|ӡ _.yB{*[}A};VI?G_}]\OƟɉѯ5L+UDcMMU{m4[`T}ǔpµ`e]mLjnPI5©&IƏ~ߏ"ԑSSЩᄻc JNbѕbp0ʅŻ &8.Zk`n7T Xrɚ kAXH%-om*H_) kY>2LXHgWk *n^aˎ[<&K*+[Vg(w$>= )gŖqy Q y@0X+^ VO"rڏV3ΕsݗatxHY: ۦ5jzl(_b=4'·x^)bi9y;b1nH k0G]8P 儻`R`;rLy )O Ѡ*^ Zߢۀ&ga-нJ=n.C;_#]G[~8,Jt~F._hfOY+y(GDaAgGo:]@_%Z٤h Y;fu;XW)"[KO:e9hE: 6"-%˷hEo1sJآ mzJ2.}.U!јޚߨB>szgAtCW&?aWDLׄv{UrČVrZ%C{ԓKfG6 6z}8$Lx!pgsrxLzwQC/ieNj&* (69K,}}gR$I{5,I] kT*LQJWs郲r'xڨc"\"OUI+"&\l7i"{N\"8eM3g{9лc{|8RmtwC)(NqfJ:[9qJ<#tڗS7g %v/ӣ3Z~Φ0ǠpK9'eMr`]e$/E7K#_`:/xyf&{1#xҁ$js, d&68G/[ڑOVdĝ]l )ZwH?gXz@Ղ^h D\ྵo mbKҮ2#3L`qjb:w8{D.vr7+!"$y͋ey7E':nXzu|rVlQ ^IGpntuK45>Lyq,"~&2އMR3;wp*Gq #/rY^IEu^ 6)DcvOWRM˼Պjz@Ά|(͌g=ktJC V1/NN~^uQKzM9%I:+'>B h@DŽ$D5l W~^ɉn[v}82uy 0bRvWb 2NWQ%}zYBs^w݃!Kl> 5\`[1oN'¡8v'Ghoy˵ pdpY29Ƞ8:rJ4#{鋒^27'"dZc9H١]va~m Nis:+yu? uTg\r[y2HRA:@^޴Ƌ.gP"P[Ӹ/_І=_楌^KUw .GE3wgюm8 QUZ$ |5"" s#^ŚO`kJ[ȯ;5 j2" Xs/jbgx*X _t֤5.Ӗq?| li pwt &@DLَ`l3NX@݈*(֒ tr߿ ܛ5"~o{R>[毋 }u`%KϙGb~Pa<ш8aroi53xC疹H:u7 闭X*Q1 ]G]8.>wNXS҅Br*MJC4 UӮ>$aI}k| fHΒ.+y}C}% @L ~z ~RT\ 4_?ʡ,MNAu3,U8,m  #OHPV9Ij''~wwQ%Ytuv$LHrsponRṽb~0MˑSX=m#<[Q"=?4DevUK~L**5m9\鶗pnQe%r;w'@zt *W0 cQArlO:ZʼnD}<ғ#0ߤr0 12OW /3r8E;-KQ1=s[\0]LQX:>q#A%ͣS.= :,)/Lb)D];s\,Pm4%S|Ge,86,^uV~o3W)s,}$~ʒLlr1a?czw k1#I×\!j~‡()IBV)5jR^+Cu^#h0DAGw7M?7 '-G%Ti4yasYGb3]?ܧBceAה5tEŲ }Sݰ'SVbeYh'C{P%(L@|?r8T? wŮu+A/reѬ񜭔y=r& HvVuќq  zkxXs{+܊վ>7a7iRӨiT2zi|eGsZ0,F74LTd{j*# 6B7I 樻k]6@,0wzusKǑg27H8m 8 NӯDquQ1L\%I>SYt_+ 0qv3;Cr1Q#Yݺs*RM{#/u7hep ,5=:$ JX-o]alb'ak+!MQɀ}ud# ǦټT&cnpf^(AI|E`~B7ڋ{0N !"e|C j@W{Ѣ>c띱\* ,`5RI:\y.FF؂ZtTA6; p: h8Y ߑ!E^^V [6QmVjv%(Uv\JBRo23孻o<"pjIkJVwmz[KH n"O2hꚌdF(l,E 6}Z#W%n) ,s2kZ6꺙mr*b3ZO`8Њb5+ <5nA0XOliEXpwsadN9/΋:Yy>?h@uI}:jr`vn)ʏE҉TAȄVi5Vm;hOTۜ= D2O35<[,"}>~y4V zS@9f!l@K:4|SM>Annb*m3PK^MWC=&{MԗNЙ;aG4ϖ;@gv%imܪW]z̈MP]u([߀3ɸ $LU! - b0>+֟KA%$Ӯ9;JM0H.pv}1`;̼:htAl G VmC4.J׍ac@ V( ^E *_TuX@:{'GsgqMa _ԦIqq~Kkx LzfӨqoH B=d`ѽi$.TR `Ƶ/U2A/#3ֆ|7f0JY_d]f.>*-Ԡg0_/&2\,r,C?gwwX˭Bo!Z./oh/15_ڸ'CÓPUjCv7F_W$Y6ѵ%&`T\&wu[@ ),T@NeR'ĨSevjuRAOPW}ݝ!K?q4=<% lu[닛:UZ27-j?өvY>S%B'9mWgcM<"rDNsȐO&@i!dl%2E}P(\ uג(0;2A_m?oX+TOh*nhN j0nuԐS4Mђ]'nPM[Ԅ#Kߌr{*/ >‹RI|AY0GxS'x5:4ff0>@(GtPP9GGsu"~I,xM<`ءGTYے9;E.z,ƒ{ lyr? 3vnFxAWe!5fNB\剁;hVNf1M&06vKJD\:$8jS]p==dwH1ZV_O.٠(y"JPNN>n=Rqފu)ςw=zb>~q㐢,ys|\0"͹HRO̍#⋍.RIeDlp#N/O!s>='uIQ[w'oEȔG LPԩ/u$@f 5yY3#@;,ƍ<$u=y:A T(r]̓VwT^̾.gRjeݺiJ. ;EphW̵v~ȻJuPY~펭{g0PN\CzeV'c'zY!M7iP~V SuEܲƒ0aP]gjG/IfݙuԻ&%-pF[uyHy {1brq j6_펰;uh*gP(P7Nq mbc9>G?J!ރI1!uS`.7+sU<Ɍgeά6\ 7z9jʥ*0Dn5>\iQdb>U7%}gBxw!`EjPcII*D,*߆^D0_*&a!(v?-Em3op<[qbr/>Ɨ! fh}%0* 2w0@Gڻ]TbuׅFSR*AuWGuÓ@Ǝwi؜ k*tmJ{k!QL^zt3z.3k$l ~!#p\co[:w:`-b*#[#%?(DN9oqA FU()Yj1 Nꀡm mEs[Bҽ +7`|m`&]Cn<_޷l<4drcCioP$d?EM2K$Ͽw£ldHkd#A{ "b1}& u}>2 d>4otb*2.-)ܠlʊ}/hN꩏h c4Y)02o?) y^Sm;L| 7LNJOJ1b d'NxRV+QM29gFuMkEv@E,O4nXQ)5#>2R3?;`'lZgTQWВc!diZ8^b;uݧ/Bة0\؝npoUaҫ?{DK Kr/Ő,B7pX-!r+7ƪͲϳ'< K_@2^n ?\;kT8Y#KKڭ}j8=xIf"Ь9A5v&,= &h,c<ӱ %[2$${l;ʊ,? 4 au0L*Jg?b\* aoW i)0}s`0*&"&Tߺ=HņsjU=r72<{?S`PSy:؁u7կGH>ܫ FN6IW(#^X-2槒Vr nӷ,(8`ׇ2OCiy<.OA {X3Nᰲ5K=yFGYSS)\f&!)  wF(2,G/._̓Q$W #J[#33-`fgҢ-8u~\ `H9Sҝ]gTVjVeϕf Ē+HRK/ ;ce{AP[ ـ -]PFU%~Lϳ|Dm;5X(/Ox`ς{T{n05#b kP#F\aqb`XPURboi|lz# .r/_Ժ=]bŚ]xla&:Z-,L1M `!ok *Ag]v?Sjb2lЄl|$S"u$̎=j]MPf[xS~]_Dl{7lOLYʿPJۍ#p۲Rlvj[|M5D>|MHwyqE(34v)dbaRQπ=s%>[ۍވ{ jeWjK>vPOK23p [ >;G}PeHz]}okgRN3UspS,%l7.9Bf8獮z1T)~+=ܶx ]/r5]yajYj*RIW+!Hq ! j5al1|T԰śd6(VUJؚӟЊ Qy\n\zTᅯ3rLQKNg"ꧥG|E$A2~!YY'% 92zv P`ӭh k0)yx=-mAgto{9رye嶀xHk$YsX: .QY Fd{.P>drlũIJ' S?{%UÐQ<ȃ.z׈ ۖUELZ0BnY z-{*KE$XY 5{t2iSGYljގ"A'@Hdcci>w 3V@7SW$v v^J!"vη:xٹ";De $m9:+4H֬w_s4&ӾqS[<f9ь[r SeC>-dq,qEA_1}9d$Iea,5 {^Ϫ0rW! Q q>cI噦7J9EJ]$C+]_~{X? Gmq F“htǁrvsDUuH-"E`G񹟃"-f>{[-8<=twa-!2*Zg>4+ ѲkRp3p%t:KvvGlsC1Jb,=YFy&Gq|nUZAⱽ_KαrTTr$yt 1Çcfo,o%.Ŏ'e_(# j)&.R}UUc&7j G,s9jnw^F 2+ђt[):ϟϋt h [hDUx{$ڼB[mE֛W|h\U! ke|K&pp7${Vx$:@ &]K3*Lh#T wiK춱һnjڐv߀l g=;J4ӂPǾ/)ˋOI/R29\KW\™P hyLMoүoѻλ욮x=eȃZ҄ mCy0aGZ]>e!U47Vi\_BhKLWtAѡ;[kR > yU+T{Z~*6?0۪2c9].?#Fn&äך@ȐN80a8{{8K=]0Ϟ%4?ȂY~L"}z0(d7៯]63U<>59sLU^ax ,\=§6aѩ ~u3P+GIBdjFSY+7 mrn Xм-BwvY s98'7)\įJX!>PQ,1[^`hd*R"=a^6pF[7ss!S߉P=VL!]O|Ũ=:˜ ?XHۚP<|#|? !еt@/ EfSBO[.d-zJ i["Q¬`G?|}b2>ɡr`bhKarצ ǎ-pL3Y2 ] A췫mB +ʾ-oݩ9%K!ס&J)1:)ݏ :mM~S eECsDۯI3`!+xh񴒗s\,2xj6nʼWH0nZuh?eUe!i"6ee'Ӻ4H" ;FH9(b) Z6zW\*ɘu(q`_Ӳ ã8Ա>#9,DV Pr.,Oe")C (5௥(H_Qczr8}:n4(l  -xZTi`<jnJpl#"k5hs'*EA؀<%,WQ]}l3;Q2Iad+xt(YT’fǜ㕪H.%j|7Y|RSr/2ˆrZ*b955E"b߃lt`Y *`DV:bz 8A7-s!7-ˍ͠_!sf IlN}V.DKmJgi$#xQ )\F5bA2gr?D`Scw*Rjb -]E.HvʑhUy<.yp]:4.M#߳Gx_Ftd^Z, r # aӗ4Y?B4էoHd|zg/ uGp.~8kn8/$qY‰G 2+[iT-c5d]TxtE;t^q>[ 5[mU `=9VTV OBgeK!9[  F*Q% u}9 ?ŞUS&Du-V68P&zM% Ac a(G4w5e$Kk5#(ֹMvևSgdA_.'|Ezܻ-e)711%l ~&wCV?Ec^>ch./jjA! +nEZpݻ;}.,T\w܏^?:x;kۮuOƩi@Y,2F a^Yс`Oa4SG$^IHu^e>xhTTh8d<`P Ud \{lA!2#Jc$f1lf \U\W^,OT&%(Ϫ|}(XiDYҋ="Mˢta]6=&E/ĺGK1x04k F@'}TO+iߟ5$͌ѷ@w񥎅$m]>N.^tAh+aeA9lᾸ鈓%}nv wzP,_3[v>҄^P<_#kY# vDyXDUQj~G9SlGO&ZmIn ;y-h2b"7| 4/N-,G"(3ƬbA~|XC>7Mo]S~Χ)TR`z$pQĩk'_s X?ч]#D@viK&c%:Do +Yߢ1#`#`$!ϰB=PҞV~r<iuЕ]AvdVrdT9xܝ#9j!nDKH9qgsc?ۂum3?KͱR0Tz''a$]lí7 ^dZ~` ?3f,z,vBNF}C1S8NW]g c#/rtk' '%f|R"$m$y2@)D&_"=>~e+; jrhD0J=02gZd^}.6X3?IG[OsWx_ =K5Mf/0BAfzHJFUJ#UH<8S}1c%E!))vva{޴,oxI@8"5?ϢCCArHZź pɼ4[_RlI, Dep4-J9Ue }!q=,F((Wb6KJkt}TڎFjAfFgMَ~9Qm8 Ѕ3t`]XC!-վՓ~GDfª_5L4.M+$ ӫt eˠ8kA3EgΑcZJ3B76' ; \f/ Vz+r+_ ZrFO9aq-vr0cu4 `h2cugoG?9G%kGĔ7YZEB6z%y.cY` po=< QPg&^ (K^߼cf[V>؈h(j|C0Amskʿi>Zp<RlL{< c(Vo5fz Gbd!Q^x(V.Rps*bsW2k vSm_.xUYA5^ Xnzuo[|7_yUO+0:~޿d[|J9P[[5jfT^`c7[ꚤO(}L A/e[E+ mù+[h*A{#ysO?Tk6wN@4꨼U6gE)_*$-?Zhz{=x/C G%i~U#<04zqOqzſM_jY 0}co:؞cfZDWZIYVıd&Oh.(~e(A#nsowdP3# ~H<%>r砣W+π=C_2V~BxkWٿɪj]$FRF\z w/_)*/.ŠNZlϿ$!sl⬎o Hxa@biS.N9LJa~-#'s bf(LH{+F 't$] rLi{  '?7ۍ\`%%_7a% h y^l`0 0}/P]XBeLn U[\/P'$8YqrW~ V 6 O#=#Ш8Dqގz6|a;o؞Tɳt0@XiCD.&YIY5֣ᛗ6'V'X.~.{Z6?7rY/,G\Ls4Ɉ閴=AdV?{ğZU'kp!Å;~K[9㘄Z{sBdGz`%qf:& MTHq]Dd?!>CV$>oKool^Iƾ4oC22ԭAħ6)>ErD]^Ȉ=`!,E6`i)0kV,<'a*EjzrD ~H9[A~p B  A_V!0Wzp;R8]~ėMhuf{c?q. -#QdSv@`༳:i%I>k!#p@Ed+_ЭG6zT(}WlGୄKꖩLc_9Au]kH~ȋS3~}1:+aq^%mtoI~۲3zg}!3vkn(3/fǛ}{$kS ܃@D݊%. vh` jSa )lOM;U.$W5Z{>X70C|Cqs,VtP+[S6:h6̣%eԽ,fu6p^Yw&s1b6U9]uV02s\I/u_Rp] b0R8 Bā:B_C[*Q7s= *l}lbB[0U< ´;}Xg4+OKX9v[n4%j%?`Oi.7"||>#/2+ŞgAWxlu)&Tⵊ0vhG# 5& C9qy3ejL> FECp!+0xZ2xܥGjyD pFqU_ok-]ox{Xjf!SVGp"zU-˰^<_ @^Oplv0&ϓa\iiFBܾyEfWnddDxtr;>z/G' nS'Ƚ>DP64*wP6Ă;|ߍk_Z>M%XB?|!6P䦥D2p |1x\U |KaNjCR8DxZdT7:QQ3$Ƚ{{1ESGo^~d** ѽ,UMFBq4R㕯GN- ^КԶ@Z2]9RpIQĦz2[ '{I@ DBR(HAU&A 't}.¯F"uiF;l([&J}V ]P:Lg0 c# Im yӵ_2CQX"rEKXLqfQ$`R*_>X17߫`rN@l)0Eߔ{53/{l6O] ]YC WUd5o'8ܻ&Yb.[y?EJ>uR{VGˡ1Knj"*Hgr>]j5W\z@X8DME,.M-Gs_Qhn[7u޽c Ğ(<5)p{ kU^_~$t$ oR&ZВ1̎ $*ZUp5L%|BIv0(w0iN?N \[m7M R1BMxuzeyH?cB Gb<4ͤ \7m+߉4Tk'(oRk '()J jp=!%ۀ;!܋o V%不Nv eܨ _a;FQeЂGZZ;WDX$Ѱ}T@iR^]5?=nܖ,γ748t폳LWE}bDL8NB1e̚\Q9ΨR[?'ڡp6-IwJUX06 a{B μ 8[}a7d{n+X46P`Xzy3蹨 1xK8y\fOǗօR(zXP UQb`wR'kAf4 jDvcD8aLY:{ӱg$Bj4B0wˠt kȢ=I ^[KV۷ oü@β"SS*V4Ѣdem埻pw4tlA:H X~xX#7PsСb˄8&(U*P?9B3`y6v@l+Bˁ]KM6c6"5!E 쥳^v}^k"(!@u3Q m dÓq+khXp\#²c.%|m H&ظtۂm*IMed@ Yxt+(RJfRʄ# ;]Gϓ >L#K_u{wl6k즽ěu|~pXzy~*\2^ E%| E0Foz Wfh-_2 ߎ S Wȗ|' ,7V)*qfEZ Έ  ̍CMڗ*|J:Nfpd3jry"H49O̷4NW9l^ -hڋFbLT_)^^*uQh腞b- "bmmj3ㅨڴ _P"g5Ogёe@޺ 6ߴ!*a. 象8į{>8@~j^*%-Hj`8G 9HBD 2r Ih?!E&7Ya`GȍS,fύWk&A|l69;uo bcִG?& o/wzuXP~7=yz;\R1YhyK}.]v#CB{kEeL,-)zW҉8~ .Vmg'bݩژoz`%a\{kM~2K>aڛfALEf]eHG"An}Qk!S8Y]\ߐ*RCK%JЄ(ͯ3ѸGhXI"omfy۬VXҬb"q PklȗoR^ŹѨ#O| 0(y!{ʯ'-x:Vtݶ` f|Gtމ+ӵ.QmU'B"wJ@Cyc{d:T@ ATijC󴀃(`;O32cd:LHPUV  :l54X T㝡+qmĪ_U ΂\6݆ztQɁ=VZ3a%27.zGXFNA`83* f)0 Y׎pEwn;*5fs9AwpQ#^{-V[a9k %֙ʱ}!8Y¿jo[emu=^'$zچ{|!+!mq|^%,a;3/%,}Z:0ji .ז?N6 \-a)iw[kñAֻFܭk>o3+zKk}^@xnsKLY*h'X9U|6ק1ӱI H)*9PߪD<9ïum'z}ҺD)ϸ&,D1DփiA)&'U ) eNK]/471D"$ЯR26uvqK)G%o>F9֌:A6nrLDl )d[/I_'ճ1 ^fVhf GB5.$BlU*l7_6]kzꔬT(D_nt;=D-jFW΃=(wA? aEl7%FSy::'±:3Qoc%xI}dͩ'XIl[unfSoKMDHěgZ t#`&oga/Ãa~jR*Qk6؆PgR&pe6ka6 Vi:j] O qЦ/d״3AAХVc3] |BJJ|'L"J0&,xr |\>8őW |[$O~1oY" +6]#e+>\Y=R'o KnXvV^LΏs2q`~gNZZ1LOL=go×Yd>9uV:0Q,B:5ea88Gw/m{^EA]#A^<,p# j-!TȰ{6xBw#[Nnuf;A}9+ q/|> ]ܮ PgO 8-\k۔'?DŽ]UDCڼ]<}9:'zIbf*lbzc?p#li9,s5R>45/(05AUefp =h|n(/ёHqkdZauY߀rN{$#8z8{Z5;\6\1X0M'!©K<H#0)+*hY8xTyYQ͢epeNώ%²\+k[F.U;|}PkADM7{:y̮inLkM mPRw(t$Ӭܢbuc te0!x<7MX@&䫏˼8~+y9-;Rr}{5:zs:*ɦ2?KHۈuyg8˔B]O4Qj#EJOƃJݛa:=m;tQ P<#N)qd4 }'u YEKGz BXb}O͌_+dۄ%!XˬZ(KvVV8܈p\4Qf߇_us:4x``;:.ohq9z57DU "bV-| Gv!<ՇRicWJ1 ?S)[8**6CHܪBMuoDžDjR)ۂ]&*p,m?sq];G_"T:h()"Hށ!cP_l l31(|l[(>VRhpyշ̉v ku#@q<͍=PDܬݜr{14i0!,dv;aEQ~m3}e:c WWSOt+xW"-NiG hЗ*_աӬ4ЀdYY|'͋gZ_\mC| riꈪZ*kyjꔔgТʽbHD"L;#WUsI;N!|v]}+U>j&$hN9(Ge_[-g0ar[IGӛdpIMtD'O5ҮЋMy1| 5:_R#fCDSfֹstSX(U)5nCzk{K21QMei޴〡)N# 퀷kmQ0 <`c| Vo͇Sɂ#8mưC הs'\W:~w(y$( &=ۑIлxpa[d)1'J푻6є I>P+j(ec|F'M]/{SϽ?quA}KRE/i-̈\ ^O4Wl )M4ǷF8=}#X)]kqai46@z%F)\%n=xIBpo/'Mrcay`clg𸁻(^IaёhQdR>NL'AGe^pr4n [N*;v3/#M- <^t!~4 B0~gg| 8 ~c8Me˒4٬F` tŽ."?f7;}`"IK`O @Q.$<ɹ!t3q:A6;Շpj zD.Nهlyfu6 5uz' 8L¨FT+E6R`l@ m#^%Gb) [uF׬W{9VD"(U"QmHN\DtpK%`jk#Tu83s.g<Y';b|?|#DřQ7Ll_m+v:\U)VOX4X6u/(6{}m; |b~3GUjN@t؊'Il1o7>~0|Pw 'm[`@lmj!'[.TT>L_󒉄@=Xb"HhȲۘ'4H:J̘OQԇiKz,B>&sf^MO  y kgtڊnRp: hz*F'/6nů=h|%\[4ERc0(c ywi*>E=[ųW$-kzaYaHɇ[,RV=ٙa YΕ7AT\ P.~i1н4b< @7Eè}; PfrGyrwWw#@'[w$TڀnRpud7zfp0ϺA#HoD8'usztϰF&n..mS vz@ImN?Ź3JK5&g{X!=hEu&`s?sGΎ}VF+%_P!sI:]MtT(/ĻBy=IIrwߪXY23>۠ V./hjRN8g Piq`bx!:x͊m"VR+ hb4&Ⱦm6! a"S9y̻:IZ-xh&|Q2mmZhU s}B - eqT)^j&^Bo9, A! IPz}{#V$X,Ւ)QK T= @nbISC|pn6++=?x7mNk+*NMtUĭO;&<+SV睫 t x#vUd@F)ҩs.h/Ͷ_Tjl0vL%cdȕ1@k6ۉ\khm,LJ0Y0[/%TB_)F:~0ĨKưQ~{mz*ֈS08:*IIFcQ ϣTk+p$Eg7ސܼۖ9ފ$gN>rɂ([UBEi2!5$}p;wtk[Qj{f Q ?I4Ua)0H@އKu{*IG#)j>7(6У}Ғyq L2x^lj~\p9@XgͻJWg*M8y/褳= LI¿}U*-L2O\!e/!X{L~`KvPgȯqiqx˅oɤ[{=̮ ⃓'XrL]ŵk{9K;B]ljJ=2aIeGűoƎBv3<ǟRidu{Rf|Cj@aj5StoLiẜEJ>j)4ćKFe.kla˥yEtQ Hσpq 0J+cVޕ Rg%_"P&{vZQε!!mgx8\wǡR {H|qDSX+A* =BN/P8̝L%zьއ&$)i {#l>=(GCBu 7WBM4oR4K}B*vՊOž׵/_]*jqk,b-6dP> YN9Q_(1rQDSCpln^r1uQTBA㪜-/#&vm e+ANJsum h\aG0!3hja2^07N> ai Z^'B_K~9eAj =zjwI+^0t?u?ЅZRi`Yni 5H՘4@?$5/";`z:ܳg^W[KKenF#O1?eˮUʈ/H?,|Xt%cUF]35שt,=/C$jbj| znqJM (R\r/Z6ikݫ]Qu%M}!Eaqn0,bzWbp?e1i$E$dL:i6I᰿~h+`SnAD |^e^< ?CP֑M[˭65 .3-k!-ҌpI =xM܉ WCu'հ3aϖet]goF9˫]̄]pNZgz"b(&h?0<KZZYn:C3S0÷<ݣLP KHRc 'PIN^ TJA3 ,SBNX$UeÙ'b>pnK4"KJ9X>R/* Ԏw朊% sQ9as*] 3<'UܚjPIk{Q#@Չ6z_h3Jorhe-4Ǿ䟍2A{aZA m4 jwPjOw(LbA#rIbCuʛƬōE07ZZg)e.3qhEY?X_T5Qf69| $#Sn>̘wό/;N꺳󹓐Èt-S;j U_> ޘLX@B;ek//7M wz6mX|o"%[*frIs;L {Fp opɓGih8;\ˎJ#E(~s+a fh֌Jt&_쵢7*|"$o`,r GuuhoKC HBw@;$;Ga'pɺ@fF1@BX$gC&xZ^&j;o}jxtA0%zKN"/* 5Qe5v9D-^ DH<$!-֐?>p qCвHDžAY_QS,E׋O(S Lc|e$z.5q;ǣI0מ~ H;'Y]/;6,35Hi9ep[t36':2>Yfo#y86Nu]5A)5 ЅkU8|w_Q;G4!b$ې,HN![#Z:{ Hz!\HlUF?/06'ZX;flwsm!GxaSIim>~~iK4$|Or/|]{ý|F~}}/´JM?ȵӅx'h'H;s!JvbX[u}GjwqH+~mٲl2R9X6sܕ ) |] OW%!|ށC߷;K-5(VE=$nM.=]tƵqriL&aNdJL!lVldNsJѨ icBcj?ѯc#cG=Ag+5w"@]%-D5qoi|t$67F5yߺw hʾaϴz]R~:w$bPKdPi*$?X:JJl FRm%`!ڌpK4Y%g3檏N?5}I#J+ї˭}`R7p#QQRh?γY{Pj Mg>ޠ7zQ*SѥThݭm T.Y==Gx&,ƕ(A#ո`d88jLSv)3珱ֳ/tl"X,i/_r&xxH Y$FLBx@NNws#=|:u8w帮F9my KOG6qrAcf]^3BͺwH`$ m3LU.d>H- 9)0N ~@)Է[1%:W664u@=ӟUJ)4y"=i։*:i>v ")A>6=O"Xo¶HaS W< *XȩdDP? KL 쯽vkKvcrr_5NBKrY5ѷ?RQF%%#;߯*N*Blܘo$8 ZOt-0a(֑fxcrat%[[wZrt Sj#ʿR:t -?ewn4ѩgOBN- % < FKjm\ n1_nUTovZFu>a 0?H׊ਬybkC1ԀDjs PYfRnDrZm\XùO`L3<$X{O:xK].-vL !uĚ11I QX\ Q_&~poe#83V[3j;Taخ_0"| ;:{$~CGXapQc!л%PsP̬)[ERCt \\ݶ R91HvSEqiy?q+MVpL?r!W6¦/lsT a 'Cg߿8Oo寧2C`]X\mc! ~qgRj +@mMؚڮl)O똬6ru~I{x,w1 ǽ+16W:\[lѕdk_>MqA"oZD3:7X C0tUv؊9ti|뿏lNN2o4EQOoUV} f䐍|zv l ٿ#NIÞujƣ LS JU4b@Ž:ɀsI &|LRC0 !z_FM:/9RKE:u&r*-D`c1kfD^d'!WoB}^A bθ9 ]--}Nd}-2t-& Unv3.2rcD.whW*TxFR!l`!c)XrgEARhT2xwƫ_I4*<~$; N+hWzهY?;a\ʛy*{hj5})pOMk9m0 9VjGY&8a_ +0/Ī֡  a4 S ~Ru$Zw>>>IЩq)jx2GC4`]{5RVip vFH YrHH$@ -5IzH~K+ٚsc1`I SO* x?GA&=[<^r2G!7m1VB,7kP?klGxzao$0qQ+9SFX#֦Kn]Q蒞h<3!Z͔ Bna峽.Uܾ0{LKMum!%& ^3m%E`W^È[ovקY?FRW ֶvӴߊvOCCELNHcKGފOEp&!{ =c..bcP1٬)_Hko:Rf%UnKkvG!9dP4\P`nƁ1]W'K]rЫg3gv)>Yt?!Dur0#:{5M z;i@qǛqs?<k%]w&'πP|tf cP FnE40 ?|]r]Lz$R&ƅpſazXp#*P͢o>rŨl洃uAe4 VsO6Fif^@Qka_٪AZ~s(lRQna&cB7p+<ih$9޷"py O>ݘ,h6]6x•B;Ά-&tHC#L׽T[,w'c\nY -tTv@qzI}̃IQrNKX<[ n!XZfBn2HEn5MEH"̓B :ځݧY\vj=v"#֍ T܌T!@N3E,P ɧ^wW dhNOP"6>S4,ʩFbX Ŀi4ysK3p RZQEN*ڕ5Гo*Tbi:ֹ \bLjECQ 6;SqI]]A-5NS=O/2!N C{LU^f*h>U_$/@f 0+ޅe#_ui?GL>VCL}._qwCE4SʿoЃ&itjD= {a(dN]Gpޚ2c҃uϞֲDb@MaYցe/5#q=5B*ܚ㥯U4"Yny&ߊ$ <ʤc"qfحzY8"MJr/ yQۤWΖSuǚD*GnuJ@p]\aʹZ_L拹 Z1V>.;H{F( Dl!m~CjPPyӅT~)3,gA&aMC47>W| "(ʊliEQpZEC'#S\IVf<]S2\K l Li@AX)foϓQiY$nx6Q;nDVYiGo㔽8p赊φ.O:`繇Fԓ8z" lOGt!?V䦁ݤ~E]RF_~^jmN]S)Bp/ *KFےkӉ}&w#^Q—c I YM,s?j&|-r=MA"ztp"IU.h{>P8q|+},  6䩑1:5R& Z;h?L[:ɹAOMnhm/)+ '}ZZ6L-D)Ǖ@q"ZqG};6@U9%/$rnt9b7SPw59*QӽYKD3X0D yˎ4&;i$!ݫk Jt\Cqj|Q:V,' 5Ub+t 1x\7ɋ [Y_ҥWѾ"Cx=frq40Dܗ%G}80'n|'' `a*ɺ& bêqg]NV9HfnU$4F EnO2%$`-+Q;2S 2 fVX5 x0Z ʆrw[Ro lԮAjsxqX%>j!r)%~]4clbr h]1(5N*-XKⲺEU7[+ȔA~~tvT%iK،!?|w>Koy^ecS}m,"Q7Oק@@S0@x[ϮJ"'ĸ|JMG r3{QwbxrnƲ0[*]Mhe7\]&b̫&jR=B`qc:(mQp6MP!r]5Pna:EPGyJ#9μJ>NcǷRgA͏ar&&+,;ͧP`CTAjZ c is\8"|;IlڇREޔ0N? W1Ygk](iFK1OɛϮ1:t;D[3n6k kY[KqQcU(Jݺ3n;AmhѴN-QZZ xf:D ʏ=`Ĩ%'; 9%Z %bw 'Tq"tc.ZTmka" u3;]s1Rֱx˖vgu|1(Υr+-<['1X ϳ/ǠS;l9sVR_ﲟΥUzdCVer2Va17 IvC2x )axM@#zG_puOg,(qhпXaMMAoGd q| #aT<[ʈ+ kkuב$}آ N7GͤG3w!js|a_ hx:r$eã'_y!ɘu(t]ފй褞ʒ8'~ز I=G؜ڟiɭW?xRi3G7Fm%9=Tg:'@ykI~wO^l6lkEΑ+=绬E*k@?e=N!OR\fӉ3ب WΎr13g- <;Q4u1ToPE¶9 3`gie,ĎYy/f,5prMqm/p߀Bx6hdj"vЭLk;mU ,+vHG^䈙3^ S%2feuY2 m7Vr"U(RT`ydV5l t J=x3Br1~fYx5ggCKPPr44~wKIEyuy9ZͿ??V l)kا?P@(iyĐ 7`׊Sj5@ΰb?x5㼋pr}aU`یoXj^ϱl6EH56?(?+#81޴V [E'4]Bng=jv{6ՇAna@R)Otl}Fg$u\=8/QM*0?O0x?LGǷ9j+p Sj'8;W&!U_jq miNE+K\ZYPgQ1 e/ADo g*Ni`s-~(' +[foo),8*Rʊԧ ) :P%A<ή:N]K`#+-잊^c]& KX "1*D$~~ӿ8 Dgf8GReX{cl!29:?DgC`f@ܯ9%J Rfˣ_)rnq*Q=l^+>Cy,ΰۤ1] 0n\qRcdL&)B ) (K&+s2?%Veoo>+ ܺAxi~aG!\=6i7G-"ڞ9Yj̡z7.$s d^`uS<ɟoU3 c \ g,Slnu.5CƤ(DT6 O rio,ڷmyA-pӷN=g1~.qcFߤ|[np״-5?C~6_IFpz;DW FA$ec}0$qe &Q,j{fPT^ 37 Aqj q{Te qM.n4Ñ'U.  +q"RTBfMG Oaވ277$\R5ǁU&GGwŤr*-P0wAx噶)0==|IKWw7W"[KGEI*45<ʀkr$&K7]Hy\aeۯ3)89L*KlJ2cp f7:I9qM5{=xy'DxVrP,޴J+BG-īM"F_Z[(ƋB L81݀&Š8v Wj9"/4ŝқX >ƥGn-VmηT,FMu̦`έNZrp~PYK~5>`8?j_B"'迱ǷMnhH͙7%L T2.0$ Dt Zz7@ ^Aor[,"@QE9\#rPe,$oF~.E;_tksUk |0eөYr3.Vp!C"u?#<D\0J:ȣ~Bp'd|/Q׋I, + ޸(ڜ9cg2Gՠ(2_El]tMmVAMv ǝކkshqLv#)&+a)b~^(zO7LvXBM-~Gn#@%wF`C ތ46W·9>']h )XњI[H*L!qRe{q٧j^l7ʯQDUnœ'$>.Þ 1s3 )1, ڐMyK5!mAp*3 zI{!z_P::"wMR|* r^*Eoï #C̞^~׷wnu dRpMKzæ3jSkv~fi![RQ`7M#him|ݸΗ}4UT-kn]_2WC]e,#bUXB"r9N4u:\[5ڡ;&^ȊHl=,o8(/s[=и\9`ó}5Z_Z ¦ MTC:I!_QV7 p?0+wx[/zǀXaRӀ.gp19nNsPc;xktG< T =^]WߙgsWG(_:E4/ޔhzJ?v ˄*X@Awu2hds9 ı~D-h}?,{cmmCl! K5٤L2yD"松KӑO W8g2k իǨQB t9Q'Դ]=_հLcY0nh*7iҖs=EV'tWj&!`1$gYPjHOṤYI;R<+464[m.Rn蚻5G֗u&,Pd{iRݖ6WUCez\?EF1}^ kqWSһ1jjm 5pN>ق 4'2Wk.^K2?kB\Y(<2}]||;-0!U48=`W/jxGĜT`:vuUQ\Dd]-G$d%7_7PCnZu{D5;8~!lnI>ӯ3l-rSDW^(Z4>Xp묎{"Nbʨq0]`:e@1"|F7hOWx0!+/tVI+crKj\T6 *Z-Q-yg,'!w7O.WYKmrc(ri K[R ÉT=4& z^9dZFz)oӑׅP~R6JYF p_gb( [E+0v^\hƫ'mF<&*@=ȇDxY"*?,\dgn>.!"y˻~NGЖ:qo~㍦ɏ^ϥ-,HkFhw!Ā>5}R%5h 鹿iƪ|ҹaIkKyҾ5˔*[^r+šKx'6/*Y_\88ұ*Lһdp{P ѥKa#b64NtOHȅjʹ<#.1 p ʈOKuw $p{5o-Y5tz6'<+A5'g='p&V^'uEGaÈՁ M4پOXԩο% bb&&$|,m4^1+XHxm`ʧ* qP.В0 =*74u[ rUAOwti)GДOa ߷=Sn |Mjhy :^gĎu!$c,N?qLDV^1 "IkܬeC͚+X\uATQed4 Jv3Ұ_%1 Ts7&& 18{<Ԍ*`i?@(b$Kc^rYr0{SȑcU1I>lV͗ `Ua3~z cxaC̋QDk)#~JK>n2´ Oe#l;X=-Aii +3q#>Nv*a"3ݿD)- ׉  U.a>ju䷷.Bx  PtجH>k x,1hU"wvY~ú\4A>LN O8Ʋˊ`J4l5R8}a4SMc[צvkG- ET.Z *SN/}?OzB)7rbG~CjlZ# HZ"!4'$RgjYm8XvH,B%ŀ\NOnfDy1VTա-8OUI ]3,m,]Yw%e8gyC&9sK NSs;uM1T9u[/ 'PJ}@wPlb:o=;N)ԙb0xpOjfUv#hg}ꃘwcL2 rhljk4TU4D/o! \LqN5&W%Q>2;1~jGG@f(p+u69EbۢaƏ0 ZDD1qeHMb1`>2Q,Ct}I0B{hѿqAK ^!"b@ϛOIScG!lId&z7/cj_fb'=Xd$;Eeґ4Aϫ\#&sN .G_ɣP+h\I&d+D.S6> u]˘`,"fJ6Jқ{Evm ͗vh 6tzBҩ)Sl 0 X y)+8 >Bv| | ]k@pn:18|gO|&*8tAoOb8 961 F7|]骡o?ǜfzSq`agei^Z]H]e"Mi"{çc53 Jky (&|x7g0) j~=FCӈ]<z},}n߼oED2>WO'Y{zLp^D e) rܳQ:\H=|w8Nsz9H~,ԙD&AJљ.^|e痎$S J|'f=k=q'/K .(@N"Ot82xoQƄ|M淮 c2UU7Y屒^֏CL ?9rܮ3Vӯ1]4yju;ȡ3~q_3 %喬Sm$€pAi_Rnd)_hW`ъ>c_b_ +n$YADV8+WDF}3>@R!x0bp^ˢՊӔG!lC7rw+[9V|ڣI]\\}3Յ o;.JLT[m$YMuAps]8t*$TeS+GK"*Pi.q?948 V|ȔqB*eŘh 2o$3<Ȇ/f2.cMRKSt%i WLNL/sH+BOy:1&*| Ǹ@%㐝R":`ZKk=ee~_p酬VDY qдa1'.U 8h \{/QĻ-Z%ʡo7~;>i*d}moo#4,'[$x{Afy' \uKvm!|* $@ 6Hno{7n6PE^uQfäaD./I<^`dGv+έQn`0VT"̀N_cCJ076?Fry#t.+i_;*aHp@Al >E $_-Żld.%$L9D3~6|,ds.B-s)(@ 3# c"tgbs8DrGN%=PgHaQwE=oSOH{w+ͳ`WP\̡򢟽kIkFPrUCzG*4$ h_-.sA!UD&꠴S(cÓt|^ڷՓ&= &xuX3cgayh}͖,!Z)Ch*r#6Z\E::>x[S`jՏvZU/imsPg>fm~ϏE8ӍBb.3҂ psϻ4nqLj~pjղa~f~s716z?Ytj)~}L~>Qd 5_NJ axflR=6m;?GM<W(%3LIK=DhKdD%|HBT/3S[f͑6N5p|G{OZS9 !WE|E j.^*]&yw E+Ϡ)lQ9E3< }NX`]05l'xi~NJ#a21:ԢC"*oa sK^h@dR1U11tM)o0m1hCE¶yVƇ2CEyѵW>^o)1ǩzW??4wO*p/;pxvRlt"A/ l=r8QR}!s3ϑw ֍66W;?"Vk+g>@+]\&>;ʺ 'i^Ӳ!bz.ZΏXwsm&aEđ%/S}.K7eM?m}pV~b5A4ѷ@T\Eh! Uƶ2~\שCܪYƩ&y2 cj$TZqp:IKBjݒNdJٗӛlNL톾ה by xbt8Fk$B#f,gC,eZf2%JU't =W}B䎵1V JB|+6XSo|ĽUƳo&wg| o0xIp قzzRU_(Xgomִ_Jzɇ5i%E닞-sgWís#ը_JtxNsoN s:_:VIG꘣lY {[FS"~>V.m|9-+}h0:,,AM >TR9A&ƫ,sH#Zpq&YQ2X}2"A!%uRhj bTT/5~oyqвFFv 3ǯMxo7zVqÁt4q &4A.(kO;*U658=ݻ~b@A)y_kaF(ZMK>7Uw.M=lר9uUCQ|Pn o4`q|=ru%Z,1 `*UT?&=irD5V5͉%R{Ks(Oר} k#]|-v;<;5X\i,T{7C:}@Sa h7VO!<]Lqls@!KiS>o4)N#I0eaDg_1R]1^ZIy"eKTX&1A1~(" knf5ƥSpS5ԥ>U:tjj9[Dy֚84߳eUv@V#I}Af Ϳ;'0<׃+)&NV4Ի}N/oj{jxLxQoNCw#҃ _$a7Z{7}{AZ,V%V;%XOչǣ u@n 4oU.;%t!j_۽x5Keko_pR3t0r-K2d\uPLR9g~d1ϒ~RsE\YiOTgu ~j9Z+tVjȭtt"lqZtf׺21ZpC ShUS+ndw9*-ڊupV7]4~%}ޠsNJ1s2Y͠! S?`>UrΩ1*(EWGf/Q[{cҧfjyy*3bNt D F<<[r1ƿ)Z#YHC/w~, #óPkk3$R/\FTXcl|VƗM8?DniU|BIMzfdkL췖[mn|!li>ћgg,jr)BkG @C퉑x+ޫ+nm_K<ť-uZ7?աi%i#|8"-;y(0ߟ;|joQ,M.Xb5w3<@4.i7*cT6ې+gӂZ_VB,p`rɺ2\[;̄WS{2 *U D6Jw8[_q4_sbq"[dRiu2jU!oײ5N ƘԏI|Q% lRNY&NW@]QǛI0 2Qrgy5O"Q+CyD'rh7T_~Nʥ#='~;k/}H GGJ9jzh.< ~yH}@XE@"">b3WJߜY.)cAmZj>wvKȓL?X{V/d2Rpd_&7;s fM 맄[pEAKd9FVh0xh'd6bfAPv&(7 [۾gnӐ]J6›2jWgQ,=5[Hfx"Sn#X*x٥Xr[C譞7`,#fq`.Af rx(2]TtKJ*KIG>v<ãg7 t9ft* Qݽ2RIEa[x _eՊK'dcƬZ7=<3GӸ"vdr|"SᤑnID D&۲h}pn-Ff$9r_kVyH0 \H} bOC4V,ю- Soĉ^BɊ2"' !q5a)p.P2@H:P# Ȗ 3gā;NjؔE)vsl܋hڙ.婇+b a]yx’}GeNnIٟ_Ka{?Jp1/wܬd1F"-CzZGpHdV48k13XGKΈՠwWY5עTQ ޞn+lz\c5wW_p̓Te$#OrHZC4°a#I\D-n&ڴ4<\< m؂T7Q{<|&p?rU(Ej/RʞVY79N_j‹v npAOapVRCZCX n/7_- A!QKuG]!Ϫ&]q1O"7CX>}vLbDk7gig2ٹ!^[7i;$Gj dxxE9% &RJ 㚜 |o[ %`bәsvaՍrrmUЦ[X(HYkVZLY#M1>G*K Ȗ11>H! \#vG<OyHl&epUİKpu.<` yjۦü!זfu Uȫq fdY6`81k6}Rw qCAQEB0S&Qrܳk%x*nt0ʣ/>j>vXy#Hr%0J줲 n#Q6ewgoؓr|G уLڙQn3I9HI0i*?bdOOwR-Kcͮa0 ˠ64yV[R>Ω %e&=?ks1?K\Mھ}c0]e+]b~sV\ {XM*_ϝ* uu}pi: Q svJ =lNkAntFQR&.*|ʫ|wYYwBZ!dd 7Crv6 k~JhSO>٫7YuOd$r D\JYGUN Rڀ\L/@AV,IdX: ]ʩ3@YȄVrHk'|3. lڈY͐1n^G)Dn \Mkwhp6YQ;|@ef\(y ʹ&d.n9ۅD圽y /54s6o:PE4aPvW~Ͻt_Uv{A?yN!de$KLd!ĸsr$Kةدw@^y<}岏Qhٺ <*¿G$˒SJ> "Gf.A0zFmSJ<[z^[''d8:F#\ $&=wBN"S,jKvHl1U{;*~}kEI:uy@[b:K138̳!UR@ kVj$;ّS'lT'~_В^0, t9c$(6g{@$~M\.L;%iS0Q-CW{D3x\ee%9+|Y5=|%ȋ`▁Z)1ΆU[o_=Gp8ꪠ6ь`פ]/H1~ N~-RJ)CML~dF鶞WUi xF+p [y =.$& i([ga=^9{)r,jRu.54 6sAZL#&t=GNKiGOlӿH!ڝmG;偞<T~0 ̠dg? W*H| ?-M|߽,sR{Ҧf?uX*3e~%\NQR#0MTኯ{%.M@@?RKk.' י/bܟŸGXn9֙ _, +&؞Wkq5VpXNbVb 1| pBNbuSgIjokU cڪxfĀ!觐+z_<\Zu0?p0J}#b!͹bG:.k.O&McO?W-*،?NH(9#Ԛ:"< +|OnJqw?tP2/QacSK>-Ȁ0(CA_gQnfQe_t7|j&LlRbU:(JJՙ)>▧e*22p*WnM#ePۆUNanT<G5́~J'I Kۗ6rqwDEmpK}A"ۜg?PEQʼnN˜*Q-cYRN N~VJ$ă01q)Tr-0ʇ{Vfܣ~@لVQh]߈`ױPz]_|xUR/-eQ\lͅvQwEh>GdV3wAs ;~%MX 6Ƈ9Ք::/_U6<ch:L \̎˿!̆!4ލ4.9"8+::hx!m8WPPV(:H:B~%гr*q)')vHZGV!MAqt 0P$]9xo7_َ OoW8mG/ ` ~.dj:%eNeC1DB_I^ݛ]lA6;]DAm4B嬥gu$yîpg 14>+_8;@ޞebwQ@ǵq_Nrv%A=[ |ƌ<  u~y7 Z*f4$,uD(-HjcIG/7F6d=<𛮋P~&rYdw)/x:,1gzc==8N,i(%j\ey`maHi]IO<w" dc7yʈ)}\＀F\ؗ]r~ g2 @?\̈́^~ ]u}>$f w=K%+b?r@ kupZ`\Yy)8V!9~lLwt쾟&ƒ/ͭI?0+V* POr h;*k^ŇIF^*LoЯ:҅'T+X,ap>aGFʤht952J"$C KDF@UE -x#-a%Ac-dQ\S%8kTu5vF[@" zI'd7,BޢlJUM4&8+ݾ[5_)NK7=1DV>xgYΒ(ct kѲ TWur5ۛ}L̎7G_YN"Ș~$h8'cvAkc"綘qS%2~H܅bREzt.."0V."n(ne҂]1 ƍjz9!at7=LwzRWB Կi;DxלHnYSqWq$ҀBcS;o7[;I9Nro*-;hJ|YwAs _b~&ռ٧\u[֬L2i5fbvHH]1q; ~_R]*ZTA3:huGJoCѺT/U2Gd%4OƀQ[}ۓ)'3)e:~m ʞk##hXfp""ȑtɋpu_Z|?ZmHL5~џbk?HԄ[hhV)NkVCMO g4]c!6A*+B&Fcߥ*lt 9q6<5q&_%yYd kK1e/hY"-mp5jjCLÔKy^B狄7gSqn\zWJBj79M(-4speIռi儩Wt $hsO>=f^[X\pXklئ- sKB;K{&.jj*\af>č!}qq5Aad%BZZVKnAUN_2o)57++?' /`0* uqnG`(_z`N>{]{&U[sj?18;' Y.Fr-h\G0qV+Ob>t`@%}G^Od@^e9, jg5u-"8s4I!vǛ1v=JS*^bo&{_ӘJ~3▹ag$O$2.VHGr\o |SSCNnAÚ-< |%z2zdXN!֟jx{~I/" |A^,*#afdCqSr^ Hvɥ]V@0 Ϙ='ct{.QJF(w$wf^T3x⮉&5c'vDEVPhDXhwfc{T%AsIxQC+nUڍdE!R++U%fωs@DڪNJϜ:qTnbVai$(C\aȖ^zd%#^1-2b9jk1 0n[N=42#axeHZՅHa(lV"h!N&J4񤯑uJh5Ƚ"D֢Ϲ]Pg5t]A,ETwŮCUK{iBЧ:B %a$j-; H PY*{u6r}r+B6t']oܣ,B> OUyN7ir4w9,+L?iߺk/XkX~ Zț fr酘^@XU-Z˸5yiQ&4YO 91D>#?rV+M<[{:6UpyA \\~| g9>pw@M!RZ|Sޝb08[$A_n 0I.b#WLZ $=p+kAney`{2m/-98I@Jn=e?唝kʉ0!3=Tr 1 ^y͹׳g D# vpRTAwiobxD!iq"̅šJ(GlisB!pyEKI{c_JBJ]uh&twZXQ`lmYdk^,< '!`a4b4Ov E8op4E׊A~gqd;z|;Di]ɲbDh8_9*NMC;^ke@-JNauv6Iϗ C-I:\RrIҹD3o,idh{ 0}4":cGԑ<0= tU/´Pq44ķ32}ڵmqk(rrg ʒ#C8j`Vq NQb{֠*/偕0}`FK?=}٢!SD/rHZ-^T0=](WPҶRiK*&S KĝW>8<uZrN lsfF)|oJx\]`^-BՏh6>y/D%D:si]L#Ylcc<ýC/>y*rnf/8kq`wFDER,a@M(b [ L볊ǔNRo%{ێu8">P}*}ԇ| , \#-!G}dM'8sId&Z:WKd7w$Ս@U2[Xf7;[Džy0Rl&XH!y|ϪpsS3/G-Ia)8ZoV!U7c"aGB1M<=-QA ;Sցp%_VMIWd2bMg=B۴w)-wS $:j;T*~[Ut,A/ k{Pzs"̈9jE~РFOԫKX$,ݎYR(;``X3cȮple] d0=:GխF2r3[dL/eD2f,]A<6B0Ug̓oOo%} Hv6 pĄRܕM 5gŬgoĂLoSw=Dcɔg:rC8D~ۘ(ʼnW׿ᕴc_N~VEm̬^4 $Q hyǎe3ޤ0Sc| oNYh?Ud\6Є&w8FV*cpSZ ZcYl9:ِqpKBSzHT<Ѹl78[_nq`=8jPJ7ALvwquu vnmlﮀFJ|_厗o:J Դ,A3MDze@L_'٠SfCb5x iJ~ "2´dPGw]6@rqb-EI̒J}$뉌ā fCwIʯTZ o 樟jEظhzTJv ?8f9⺴ԳyDk 1Ps[4ǤHm2>)H@bsz6Ej +z<ܾrN 8i@;?%['W*eMӠ  BXnW< zXf^x9Il"Q;K%;I0\" ?8%}7u 4hm[0u.ܺhuq\2fL5 &ڱ\\/YXJn |▐\A~ Fu\s fVSlSXTaSr7vd1bJ74T2c]Z4 x1sˆBfQ9J%hn9Pů7sCTJcNaS'ç`Ұ,]$%uTNnY>i)NO˟)m(P \8I|&ز[,PY?Y3FAG֜;Le2^ؠƌ,Q2™Cu)D]&".Ǭ(8q>-5n4<˛(U_)Ww v?qø:Xmc~7}>y~Z)7?jB0}&W/ қ!wa8݉;ۅo+ 򂠙j&93،(^9TȬGm8b\ Kjޢz!Zmh\oÿ)4°ޘըI«ya>i&bAvy4MjX7כi yOpx:M&7sigc8 5ޥ )Kܽ؍~CӂyMcb%?>$z L:fnշFwF$kn]\M*;t~Ϊa؊f4qi| JEDaBN zf Ws{ 72*x毺귣ES\H6MΏgQ$;Zʝy>[w%I!|Wpg'wtDÎիJA`yC1BާYѩ]ōB`A_qp~'7 !CZgE_u q s @Jl tw:[w2N'Y#e"BAHF>B|ޔHۿK5{P^]FSxIN#ɦ5nJq~ضp^ؑCڟ!01 5ΜUhZh,jlB >ue4n8OZ8sRK?*^pJ}J-GN2EȻ0 3G h("ڨtnf 4Z߻);Iw0'+VaP8 O)fC e;2Mqzia2DZ2~&V5ITS>Q U8v\Ų"[}4g:P1)DȊ=/tuX _>m?VLq KiB{N'YAWNpbt  jT 5+ 5-;.v/E1QuJʷB:~AB''/ve3Qc , :6;naWb qD1(Ƥ5MqfC["=^cjȯKw}%)|7*RD삥=qfU13Br㯻/z64G dNwfAWe$_mŰprh <7!/R$z(tvk4 ܟ=KJ=߉)FC2H\`=B &}in`zh*6-s{Jc'z64!PuK\*$Vf'S0_U6_]駆W[v] ͪ9ZxbK4Ȼme Qρ}aEkln-n7s`{*aZ} YEy]~^楝qnbToS%=dIfޕj"V*'nt',BF.LmПd79v4\eij}GV%8xn(B'@)XF5.WWxi :Ng͸gH4-G,r8Uf"ckCGY6ri%m6SL _B'eS iiˤQ=Z :gւ"Xw|:v wÁOH1>QA"A$0pVO[]zLP*S(Y!b 0f7 v|U@k2Z'I"K ƑϾNI@S` aҵuza%vHpLZ֢frp18/ -QqFU`?CQ=hTt ~[$u|kW XW 4/x)dlqJŴl*v2JNF5!fϨ_kgeLY7ڳq]'Rvih' AVL8Y.)3('(=2Gq1\J |Ȟ=ןk:lc hL6y#Z qrd^njcZC֦,YoZF벧߅ӫ7Ll2T /WJnM֝6 {:n@gZǬH2cnoCԩ54lo;E6 ۊtth,pu' ,wQøأ^I` $q@yb@rNC`W7eWC,ZYhm.D-Ϫqߓ0|Acs(efB*{\2 Ϩ(w"*R:e13pl{աԙPBqU|3/ ˴FPK|l𕲾x!Yl2^1cMv5ʙ :S ū(C9DUyONB=[|2tA5!EՓ;#:4.އMF4FU1u4|\Iu W::b*ӵߡ_)SņeU~k-z4E rRf&s5+DC b8ķ@-:"VKbR̎/ORv/< fFy0Qj-Ѽc-WT ) J&>-y ުp-l$.Jwۯjcןѝ|~0W~o;<ݱrv}k{R;9ުkVC8ED oh5*ݚO]'#$i*z 3CLzG]1FÜ FY} wۓ-s3uj^ĒnvúMN uQxdҘ#B+ ֙oO@k ^I(&0ъJ$b<ޏT3-.3){шm&dlޣr hL梱vӶRѢ%W+;(ڢ5JOƏ;I4#˗_0MǪ3{A0f$tE%Yg#hy HMttrvJ# V1L;^ROtKX9R!#%ּWŷ?_rN#)Da,Q&@/ .ݗJ$m+`iʅo@zP_̄*6ν< .Z ed03avƗƙY1 . dG[XT+DXWs۽=B Qr)td s8DsS(PڄՃΗ>C MZŌb\Lydy8/DZ=+EdGgTE`P AC{~}{QՐ^̊(JH $3pU<*@A~ UW=i\x>=TR#ϑ04Waŀ=,ASoBcmek3Q%|)W^#O]+2{7F\ʶt*]ZbzhvFwr"Zrx<5@98fZL K+ˡ)7͖txI} Ak(}w= 3{`(KAL)/2ʌEqEa qfLb>L+Mb;mb[O*ă8.L361}hMW"Z"Łmj=9̾zMB("c fS X^jcg V&(-S'$s z!oj׎YfM1!ĉVf' 2+c}, Ȭd>xq-pZP'3'ShA@x5wxsЏ>V~<ۊ}6c$^t|@I\a /p-K sRCT`Оb˳yi4lZ>,ONP77*2myԞDeᯜ"'_NA5FxNA q];`0g;B_2矀?)a83x][BV_,|] doz#&^5Z RPyPV:-֍:}k¿1jsSvF,,GG&!C#@$O6է\HtMũGMr}sro/y,d~"gY5av@d2fLAAl"BF*+{jr=OȕMGᴎ%*(>Z5% lN}-VS6m?e}RPk%^g L;#lk"n(Hjĸ.e`^uߖW5 t'u P…!Փj1ەA:qS[Zۂv69tîdDj>CUd`x" B$,9w^Iqn]P=wnׯP{]03:X}"lZ  ;)Vpz}10~.g=f'p?hbT&g䐴 :mz~w{U9A{WT]Ab8OyU"Ń~0\U'5_zD_FM}  DUU}0*U#q492B2/5kFH H fY*Vr)0ZlD#`1b9aL':>>[>8d"-R.&y+Y'_]GB 3KB{Km!=0̪jYp { ۝S]bE::7XpXy|B)L<9l*UF/oݕz6 |!Lw /"#h6xas@ K|X_a(M ]DyJAl|O^>p*Vū+4;dƂ*kd vT/780?ز6}oK&P,e8vYjH8`&dvᰨ^ #U^u?=aA򦱂j$JļB |.ӪEYK1P0D]kNbCs\GUsS0dR' 3{y(%ل SɚGvvyD5fR@Z3Nߒ]I X(m#'nSJk3q!.IA9MAz'BnܟeXɣ`bQNn#?B8@ft@VRQ휖+L>*0@!cj %VnsXɻByڐWtVV*V|U*J5"[Q^xaDG x@0ÇI2^s_QBja⇢ UR/'6=bj󝏸 2P"&P\I\ ź1{xVnGg!wiKSjC_9oc[!%Az &?ёs'IrjkJΪOĮ>jYnd&E/.So|#]~dr,+dP/D+Rbs2EPg 4=wԐ PLh\ =qeR3xt[/nT Kb_u3qV IJ JQۚ7Cx.6xU+xH8 sX:\XgqGu lH*@4V 6(L&49eK0#]fudG#;1KL[]4sbfR6ڍґBԆYaÐvɡ+ge5a 7ٟ zF|/]H>44>ğ8o4)zvS-v{[D$k +-ɔSoŽjlԭڀ:(s4Y/S0uy}ݓ)S$JI1R@E_=wr{DQ] q:\Rk(\?4C&>x~zF7%I5@M^}rte\rf!:U0|T[DQ)PXxEY@%3őY!p$*+iXn半NSqI* 9yBu$ZLj&1^#MF6rh\凗 zAϟ' mH=chӚ.׼GP>+j߸\Dlt ?:~ Du0ՁdB^)ڌn%r$t7kvnVq vm4Pg3(/X#G%# ]l2qJ *z7+]5q>,S[˲0CV+VCwN2~MGS0̫'y^AܠdBeZӜA_Laj#`|s%۞0e,N}STPD^@9ثc?6 k}&ƥdY0~qsQFh=҄Б"Ǵ@7.㨠ϋN xq9Nj (d=ѧF5;JţS]`EPY 7GրʃQ ҳsjBb (VŴ 获*ōH.&BAJg*:ڤ'楓>A\^|{ߚ}r8>f͌P;-㾲ZP 0PS{7,YA)ytȿѺP7 PNƕH@m)jQU!2W"\nXv>J/Qb>c3;߈`B c՞!ZVYz>I#i.AItRPUe@ƧKC*f &^2T4 Fz%k˙ v .[́Tgx\ Z08]NDcL̵zy(o֒$ 5Îm']ؼ+=spTlԨ%H8ѷ!; ;0/ҤbTbk m +}ZR_Kf$ׄInt KQ@&Ak3w12F[%8.kם-[(Y]CRYۛ< v\'=ԱiQoV&&b#H q]lR:pzo@'%MiP;zvܴbS# eF4y5}SorBc[by);XQ}`-D\W[F:'˗x͠f壓u!=% ''yd.^%\%IӅv:EtOknlibr0JZn W X`S4fmuiy8͓obJب7Fj_L0p oJ|֎/F;QY1_ 5:hͨ1|8(:Jp/0 [F!L@(T3g.I82WueTboƤOY/63 ۯxQqh8Ϛcv<5@jnlh+ X Z%MXpE=o/ܺ%lcdO A1EPq@J4|hf?&xY]v-}Cʖ2w[\\[ؽ47 g6/c[.6ye@4kD[*Tpc׀*lj~Rā[OvfZX0u~i*}&9E=^nGO >6O0A+[s sм6h>sZTYJ7/}hp]Dw_C{o\tl/F/B@rGbiG"uZ:2>zpscg=8wWt6FW/ OWb*WC)aQGvXtd)Lp VTlƎP{:*` c{A\rMR=iupbB?>3Nd*߀5P$Ze*YKcNhHW*:)w h:׻Wa1|lE 2vX'ShAXF.JO: qCt{ 4 zN;CKm&bvx鿔 i+.2sXT ZBvby/L}Uو'9Ȑ3Rl[`b s[-5Lq{La5`Q̦tGGoPt򫏿<)j0V^_Q(]WU\e G}W[C;ri zUESDg1yЂ=#%UuIUjudJGixg| NvtQGط$؊S\VzȁFFht?ˮ>Y } dɐjT5l/zl!by<~ſM.ή*#Om0iՎG@cɡ*pOFҗr'xgS_ ~z$'u?ʾ.~(L{zeۋTqe`^̆wLcS$̸ \17BM 3E*KMhto/G ^ƸAeVǃg٪?7֧4?@zKcI4\x ]d0G3 ͩtUZ3DV)A]{7jLk- /.+o{$1QMR%@(iLJx5_g~hB |$Ù'x+ÍjH]Ǖ\&\ۘ8j&q[Up4U{P>!URDq8v&ZTYw ޴3c1Cf>S lyY$}hd}sN2%TӑèW Kù!<r M<3an >ٮz) ("I9(z^~;xq`gQ+g+m𔒣YꙊ 2`Dn$}}f" bxe_3OfQ82仝S? U:AxF⅚h4 ԙFnhei)7}~Ҥ//5ܨO@p||4߈ʟ uMkM+QZlN/%L֗JqdZwC!O7k RQCom-բ1Қ dtv6uRR0߂BMvXAJ8xU?Jj=|&h&#Dδw~ߢ"l6JU)ܱ]b K;SPw!Q5rH _uj69&P&~罹G8XccWUig4 Rˋ4(n9Svlz͵O<'m>0"`/ʛ7<];u܅gox+"=\ztԒP ábGXHOaM!"lW@h~t]IpK " g,xUzmSЅxOL,W#{h+ud5:`@a8sʗ\`з ?&ϱ,ԝ%8n7h-*~-&!1!4O8}j z!WdvIr.]1ENDIL4?E@Q/J97gt+ H;PT+y /ұ Zf [XfQ@”St'oVse^rKm^w? eo4q07Hx2_kB[_y).rTꋑw%hC%ͦjb3Iz-ɂmӖ7QL" 8-G s4&n8 \=1xB*Z9bPŔe]תЉ y>H% ;.1UDǴTRcܖ=1<6I}Y{ŎHZWeu F>0:2lo2AҌ:dۢjEC{`Yk+|M䟰y.fGfX{6l"<co6]!9 zg nce]`f8ſ!s-?W+v I03\lOUB؍|&e.ɌmRO$"H6ҫ8\v]OqLgCEU_5??&I&7Ѻ`a90'8%ek4ZW{HbyϦt6UD`XMc }2LD3a^?뿏0zx"3rX}F'kf"ۈz!K >MT-yA30AK V8Lք_w={`Hk Y?62:nK^wtvb==(q4` sU&9FPx 2$bv1u$I,;P/wA @xa;Cʶ@qsLcEZ r;'Cl(gR|,D_E qNYb$5XRmW뚕#Ojڋo?r"-jE :NT^Y5#szA=hMaVK*|!ZD(S nd;o̖%&m,'wL_ikD?L߫FY%C}'`z p>q`B”l0okfMk#Jlg@iɁdY`c~Lx}Pe%=v|gy|=S9x<-mvČXHx-`Aa4\asuӪY$|H0a6[#߉  wg1)rH h4mzť;V] VrUAs2X#XzV!%oz/SMa@6ܖwa晝}K Q }0{TэEQT?H8x ˎv5P@Ւ >d: % \D@"ڤ[뮑C,^)ߎI9G\nį/&ATY [o -hR۬jWĢUKv):z\./訹{?k͟B| qCƛ#$Oe<K>NђY+p -&˚}k_ʭkNFЧ~Yu%h_ttǺYLkBZ;罝~΅+6VBC"pDz}Ogm㇂wJ6| .Xt>xLpteI}e鏘,FGe1QfZ@n^@'yt-|`p͞_JQs]^tPv)-x@,1tpZюswEa6[c@Yǖ&us GJ2'b;⻰qm׉ tJXe(1!4u<#+|[\ ep:]9( Cw8c 3yD8on$ը.>{;{00 Ï^{(8rsNS G܉e$"N2c}OؘQSy9rV jFqsbQv@ +[חCOSX|6(Khv1V6H@Dtt i Գ)> jԦx]B ]s&>h|t>~€t/${Uɔ/,Jh[:&^P.-GʅiSgq@(g xc$$s#@<HVaX!+[Aq;QZr' Ĩ8"?csdik+=~"3<Ӱ"L0>!Gò0Н?U]N{}o]-7->oHA~Q_R@dU}%DWLvBeň+g=V[ 1kS"qYgap AJ{H`ERrU˼̐p\-ZkvXxEί`iQyzu5Rn7< U] Qlg~"BP6#l_sXh!F qG7\r kt܎Xw+˯7~s>M[KWYVC^5"C*w${o R"xUjp.XmCεxny6Tk!#+oOW!5:|-!-@+8(z8WG9&2HٝIcaqĩ0`&]mt̹/8WYBGȤJ_.: Ǝ6&].2 \K# "-RtΊ&xGOF AusL<`p&]BR!q d_K9smWCVc$\uqP c4 uT Z0XEAm9 P}jޕ@ȹBfO J ZI͍Cth4:7*rO&]`Sc]9*S42]`*`J)h V) BJnJ)1I*;JpGHQ[~5 jtiE[~s"--5PqV^藂CԼ|vۗ h6ٳVkH U@]}Gt6qp48b9ߖ7'N9zVuaC״~՘}< |˘ 6IdFd? Q=Y1D,CV@̘DuP>&]"X3[Z.bcO;=sZI8ZW^2߂ݦ"D6}{j'~IjзIj`טSE ׀i*<5[5.(3zY9u-IVFpO쯎ܽNഽδboR#=[`m){TY.: w=-?nBy 1j2ꖉS/A7J?.}_WaQslג}gOh! Og=g}& &Α)@ xp9 փ|}(Ln"$eQ+z05ǹkƄ1kA+]vAe-b41Yh>Z TX۹RM\?ʤQ;7XvSy*<I=q(>A'Cck rW)Q>&F`_,P^ļp)k͜FQ.^}Fku(/Uee`Xd -Xu-tmA %Wp3VBEELލl ]d𚟷 d JY_7R[PTlxp&`2+3Lg*̉ hR3cA%EzzC[.#ڧugW]bڡ1(j&dTf^36}g~ )|FQ&DGAw\1YwHH$%:mW+f5"NL5;MΕĈr3VI ^Yɸ*279,g qidZ2ݰ(Jt*;[f@Sh][뼧-jYTf*bmY/[(ŧ螜A~tݥ؛WY{5s ia+݆ 2KGmE, E;vi&*R8ح*LT_­ "T|huPc3Bs+Uh|ws~D[zr6Pm=ުynի=Ұ˳1E$U=;+ 5ojRrFԆpڍ͗ _.qD$kZuA-4 o)@8;15o|,*_>e6Ip#ً D%a6t@.FpϸF_(<4'U8-˷/ !Z /w+2%պmZ !P=0XA "˃c.bP¿por!װEx"3dОw"!1:q[YZ=ᵞ1oP?k MH,ǐ?GW$e7X dɒ7:-x Z7RE?S2`3`}OOr#=(OJyC 1ȼO7Rxzf9K'*zPRrAy3ހ(7r-ŽkL;5~^ӪϤ=ar5 ^4Tw+SpyhhN~SE˿|~IɿcoxvB,̲91ŧEe"\#G;+wLAcjram8ZAGP>hSc7ߩۦ2K$\Fz<ȂK{r痧y caIU rSE*ȵ3ajx V{eeXYBTZbmz<.W I5 ʨZ%-2&<nNGi?@Ǽ`T m #~]h ~Ig$8BI:QY+玫1FAARͫ-";]VhxXُv,qU5;2$\Hَ}H͒X c=o$vZ=Wl2}uiP-9Cs/' &5gPvY̢L1YF5x3ˉ`v9QWym{+pNyI4۸8zqS([6'U5!k7wVCq>=Aw'12uj?mjq)Vbqʣ5{Be6a?vWP;!;Cxл>Z#g^5_FfzyxF}#br#T;Ưeoo. (bfLc1 @&KW[Lf >*3޲`4!BLu(Tr[5 TbHes/C,b~jtگ&G$\+>6-7?Q"Fp׎~rnƑO:-Cv@*&A(h\=g|WM?@VCP"w߃uYzG8Am ju' >O |jf2 b*_Ld֝Ed,>14*}8@WTnž9;PQ3 sqÜR.gt踹R-߳SAs'$3$&%:Gcן&M>]Gw)i' YɼB]ب o[&m?W7{s^J=D*؅ɶ3H{RK *ߤȖlr7/U@5tAA0Tjھ野iW&qS&NA֐/s8iQޤ}Ί7s1n,6 m ^K W~7]Mj.^-o~i.IWZWܿnWb'KqGTWeX>tR*l{-h||.p`{QMi|Ef'5~[%'&fA| yB\[Ѫu&Zp?7U[OL8S4&hiA[: h^mU1RnΐCGOu-".\ KuiɏƸ*Uzl=GSACb];ѧĂ *i3TӥՔkh!p_l}W/QN{5-vRR5kI ! $+QЋ$ b= 0YJľ_}S׀D9Qz=.Y)KALV4t&-?ǀ$:m;xtgݛz$Mnʳ3T?A)#xKG*HK" "H((<@v ;.8*l*xq5+0wÏDʚliFiR7J_]sUii9#\J1/I(|vDm&|/iÀ?3rDL<ĭ WXCОK\YW^GZ~,p%ZQRWYxMTD@@3M><$2]hsWiI<{XX?\KjŃJ̎5:c(q\\hة,T'^VM"|UPlV.a Vʰ$O;2_g9(:3~Ulk|R${]?TN+ɸjRO3l{҃H9?EJ/${4(v:Ōd6r}-FJp}Ua><}L͸Ӵa%+4E_\\Z3ySMžަ7!$%2"|s}r憜 o/WZ$=@/04h T 5sfv(w.QR*-Nbȏ#\rjh1uas!!̫ARc`s+<[` kt6_/z[9p6gIϊI3Jٮ>6Oڶn W F;jnAp<`2Kp/MpYen}jy1Ŀ‰4;'oP.ཁxq vC ew Mz(;WBEYEe ƃ3of۟6p%VT2a}ݥGJSӄw$J @mc{YQy櫶 p#DݮBI5 aǥzC1IU&&eC@W2㹙܌>Fr~w7x1mg ̐lMgҩf2]g?%R8;9.kvlxR^ΓbNECEjhRZSBTv݄zk.R} Vzp*RՌ?Ll 5;h1QkޣLwzϮ`15**D"e>cecKrEW`m.'*Qq%QB1e,ǪzKulu?e~qx=ǯ).^,#5I$~ ./soD5BnW_?݊3L8n KvXHP#7H \\&\wцO^ \l9۞|A۰x[ߐw:2bقH` zdq0Po[&4=SU OFyh԰Hw@ẂM=3hR Vd@sVe‚Y)435 ZKbͱ %Vqg>{eGdcHؓkO4"g(^Zm:Hki# %Dinvamyֽ*(2Xq@R4&Cw7^PpYً['6bhT ^93 FV;CnjM9+S; 8˽ Lב!q hŦ+A%)ʗ0rYA`<19KN%45ׁ*D;B[ *%!+,K HQ\=kDzpȿ%bޱI5E;z5cZ&7Y!PLs7 u dܽU`͌ .+f x\q DSG~fƮ$𖀒LS(;nЇ_Wo"/>.C GΑ %γ '趧 cA'qɘ۴b9$9Vh ]e.9@Q2yRvڍ$3xG\ &E2?ݧ H(gۧFbS{VU:Zx}k+vj@Qʝ|1s)2g;dQ C`ق 13RvƜs}R9O< ǿz;)ɥ(gv=vJFGFe]+TM](Esz@$WIH&b"k[͛ZOMbte܉0H;p6}ܙlc9qey<}wu4ђUCQWI L}*,2XWe'z:Gלc5ߛC*Tɞ] !Tj"ufh0 wu203&\%<[*czIZᔥPv&ΎFHi0 cQ>dj^F]r+T9Lʋi {3$_,ŋ 8vH Sv&f+Zo8q/yzzK'YbpdtWWQ"1MoxQV08+4 ("a2 En 4oW6}І֍1g)nůR2ռsN)?T(Y@6ф7b 6H{Пfb']ZcŏBW#^T}.mV -Ah8Fu)T3T Us#G$.A=7X劉2޴7#K3WDFImjnUA+Y)iK8HgA[9~_msO7[ 3<(l@)ݎ}S[jxf{>!5 fw\~1'^XpC1hn+(~]_DlМ (O.SUd!mF"wMl$m ͮLuG7%R> }"HdDxq>ӔhsUuNPNZ+hH$MAFw]^k#k8;/8SM#|{!R _<7Q4~{f ?o-&xOt5 W:+ r^ǩgaeLu3= l1ڈmȸW]8` @h~ uāHCR„{t=h3?rs&_Ho[>_]R#kAv CQV tDf#0:fJg+rZtLО^?*+GלZͭ23]=4LΠC) TaN‚ m7nU Mע恱b 2(~{>eYօւB)]tV<%#6?UNYDn/R+I}~ܳ8yU汅 WB*B i ZeJ(jmv]d/o3ȴB  22C59rNd8X/*)#k齟S_)9띿G DB5je-3IebDOIM-zB_#LaQ^KTY-a6 (}?L)a9 E˳W#ɡ?L=5.-dzn㇝W1=`|guD+3Y 9ik|/{ƯKguqID}n-)Er z!7i߁\_j-k!5AeY1{~A AVL `E! O)yL,S y-'~a]"з@_b~m*IM Or{PeZ4ut&Ge@)Oa07#I,`RuM5ŭ : f5ˍ k#e?c8S񸵼S2g̀fMoʼn6c/TF~3`h[jm΢oɝDͺYK6 (=N;qt8sd+tZV'0hy-ST @p9RKٖ=왊ʡVA+9CM7 ZN_괮"W/;v?([$ő[NifjPKT *~<GQ/E.<ayeźJ\, bl* z9{{D&Y|(h#RYґwH5@6̦#a0mۅdmQ܏ g u_J]PW6(z@FB;{5 v@x9q5)9Q[scT7y&p꼳Ȱuވ%Wemv\_-y%h7'$:@ܻf!WIt0=xq̛O_X|pcpЧc9ygRI k3ЄyoeNFϏ 7bp7Cu!VU֠tI`*cTDlmr90KV'drG g mIn(O哷Վ;ثL3郻dPͪnP=07ykt$U- FeGafX,ߑv<IQz:6uhDUM"vjKaJ啝u"}߆Į )RBMBi6dHvCQ߶ġ7 ? vRNT x}abDIxh#T:f:Ӯ@^-.Dk1D|ij^*F ' ho u}ô܍TV?YODduCRJ%v[0k#jds\MWpϡٷiU:*B=™WkĤ:Ibi`G ]Age\ 9*(OLvۤ7lhL~Rӆh'eUN kQz#6 vɢDAFq#&0 gQ+즋3SM dNnwջ'& %2G=0BefIG[SkٗgQ0:+8sV)p=VIf$yT hϘGGTurgW9L6[oXDyl`Tqʸk@*bL7 xAJv{2r>>jt7(KK No*-@sfk9Z`vZ!c RъsRAZ*Ng)~`E_e\9ӊv{X2NK[;>6z[CS1#Y%%K]ʜW4qZ*c=ARdrjl2WC/cմԚe OaB,;ۛz*2~Yp,DC([UTLk tL2d] UX:SKj7 ˂cFpc } [Ay^GnZLlfxڳ`%>t |[тZ"GoNUF=);Ԭ`est-! w>.+[XQ1SE3]U9[ l*}#=^Y] |4lXMgNk:V yHG1GaWMq2EUVZ4SW,-Ctm `gGs:\0'ȝo~sZ`/nƫ%'kL2ű՛{?%k #ɦ\MQyހ^LI<0 ﮒI&߹~0؋:ߤz 30kF{CO*4OcRm{CPWƉyıF  agU6@,!:oUtP@[" R+u(t`Ly>' }.V_ ` 2\M暓;ΐ1/ùg%dH:{Drt Ÿ9h `ϲy&jRdDQyiVՁk0&mk(nq:2!T3[\a }5@7 ւsW5͈#="βv^Eymd=c٘هAW[MǨWp⇷d2%> ~" m\g .km͒&u wls'U(żzI1Blk#BsV)ս ŝu~g c-h|Zԗ`_0U &CE@u7E/\<_ COG"\#[֍u(yw4Te_V୾oO"<3#c։u\zy=wF%@hƷp21;nfp%1e6bU@0i ysz iPSe6uW!] }!6Ux&I02ȕ>O_ _R:Q_mCmIQo׏Q ЂhBT:ڄs 3u'4~($/{qkăN =P7PP@i}_)@a_m OX~[Rô/7)U`ŰeI7(&vAiC2wxf(ҬQljڞW~ mPVRY^#Vbu~AkB0/>-5uZ0(hY)w]1 ȓ\֤LCClh|{y6\τ%y1?:nKP>hn*;=20=`5_KCyIECg RT"y VKf btY^/Ξ( f9A)cY mQoTZѴZRKc^!&#'t K19*j6g}z=p\Q!!d2`=uӽQ3|I@`&~ cywtֹ5]8|[6`Rt{k)6j j/MAZeu"rMzqnm. a <`q_42Avi^͋#"2̞NqD-+:PՅ`Pν!gUZsǹ@2^0K4 8:k 42+ND#fG0b-A9עvW0C̖幱lϔ/p6qU7[F[c1j5_@ꑋZ' 2o-}ov%,nz+l$Ή$glBDZ2OjFL޻Ʊ=H)^&K*G톃#c=vܷhP8M3|m*&{8iKheQt"t9AP ~W=h_m3:?Y.ڱ9G:x:dҋTa/ '3g)C*@IzP:J ujD[XyyeQ=Г`!FaUɰ=;T@E*&qZK[cꓻocVۤt"_ޱI'9"XY' _iOb^[Z:ӽYHP$ѣ;Zq OP6˿g@T %"kZ^XO nB98V{3gZc|k5ݍ6ާ%-")6HD/! u5o˂+򠡩8׏I*4rD%Έ$fdS\~ ̷RLKӳpeՙcm{,T)>˅0 #oWӊeȼ{qX5JO RD|Ҽڧ0NyzByO.l΄+^J Y3S B: 1/ <"gb` G SinN5{ntZ>iKhˋΠE\7ͥc9簷9 L%Dl~X@Nұ7Fwa#3 rS;SQ4U()HBOٝ.>? 44f-DP4 [>ptMC"%@';Ndd!ۤ-OdyPXDxBȝ)cYRi19ix:o%qu1H/]8Oo -?T[HWG uRh f&Ul^Hy0:{%p1ojlN#*!dS;CyF _|x:Amqh#lJpL$g ׹a'|A^be}#tShIbJhzB4\)&^su?YmѮsx(0ؖ8zr)E"k &1G<Gu*gfDEN=E; b_Cȷc޸eI?a?A{sHҼA.ZJbMֈ4iDxqy&#zQF&"NOu3guƬatA`{ZS?_p+_윐Muذh:ZH`4xխ}wRYI@@EqѳfDf_*5M" k/7Eqll1>z9F-Fe.P!E3|F.\UsHt|5k|=AQ ]}XEa5L?nSeHxZ̿QI+C,b;!;/zvP'sB[,1\?,rou}ݕvāxq۰ĿmǁYXRP6ͥ+|a?f7 ϸ_:ɝ(Ƨ4a{_OE|@rW0r0'u 1Mu (3WOC1y-b󐌛7Yn^aWM0YfRb8gbD2)逓gXf[1e%WBjbMcpɺ@W˯rq? uƌݰq v]pݧ[Cgcla!4j=GLfaC] L;}ݯau84JfelڬOxd'3:VAھO6]X_s{+t*{ud8(D'f>pJ'` =#Ĩ'ݛecw L,By`t@N$BآȀ/vB}ɔ|+ Aiu*X^PXQ0 f3%kc/hBsqLeiKj^fT ]ݦ*YB7|[3\F%t<!7d1p85Irr4nFzuul55_P?q3JKhPzxWcvAMZYeaeqe *k ƱAҌ Xz~`G љX^n('K`!pGxG%|Xd`X؏r[Ӭ[{_$Lh =1@9HaHLEHwy#OS.2ԕNиےL< ݡ(]B+r|<ߛ4fI{쁞OސDN[YJnaYL&7{]fmW/w&̇"ą5#z[PdOaB[<` 1֝"/5TQQ@30>sq9~,$̭+Ro@0R~Z*\(OBM;`nk1SvAiϱLgD`!R5أʢ5۱IXưO(v_NB* x|'Q;w1n ;[ȵ(,>yvs3{D=:kJ9 ?B QM~}RTjrEXFǗS{" T+ ow숙87)׽3-{}7ˍB^q@6eQuj'xg--nЊ'/ƒ,O_OD( Y["DL~qeZɋ 4+n";ֽ:h/Og^(p[ 1@Mv/MCPK ȋP-h4_TZ `Yփ3B>ޤ J(OՊ@9oE&-FXTfh(|X"X}eXh20XXz7no2Dir/w@ ;fΘ2?L:CnPN$m O_l{~/PK2wd^CS 7gOh79{HV,ͯ'hjK%=MqC]c>̕ # WqS_^ǁz[?Kr~);ΎxT ;_scn,әM.x9e^,%v{7֞z끌ѣT{Ȋٖb eDxRVX[txoK-!ezVcbxqu|wz\7KՇ],ZmGoEa jo>LOaY'ee#B@Ͷ_ WCorδ_|Qԅz ~yHW lKӕȡsS Q$( oA*J5ܴg4X;IOueXx.X`sDi{ ÒJT&U9ݎIgwu("E)3BHJΗk82~J}{V2vd/G ִ| hhnty_`]%z7l9$dΜAӄzS_kNkYmc^{YQnNbЭ&<|%OpmdIip@P778al6i1 s\z_W+V²*9:1ObT4tFnZ :aP>!B ۦƾJ0H0-KzH볾CJ+͊]40+3c?rsqC6JS)P.C |Ӈr,a'r?*CAa)uR-KfY^C1QzwUᜆ?4=(Fvt#s@bNId[VG0`nmMl_p+0Q]dMj ozMQ '. 2U_~#skJP:O b Q'~oә'#/1?ULPGfGy#X_QAO&<ɭcqciwu%AJ;+FOD55._ixҔQpН { =ðx}'2;è:nI0ghW4~Ն(yk,s^JdRWDO2U) xCKE {Ƅ\e?mdYeQXx~Iӝ @JyXK6qj(_?u Ow DgA p C1OV6&O6)m:qD=ag68IjLa>$=ˢ8520MC>bQewWщȿE!`/*/She^1Tn42}$U ^#ߘ#Z=mf 6!ϭ=4tLB3՛yDBԓ*C.lCb8u"07.poc*Q,ΎhB&9ޔx-)ƯFi2ca aʏW7=RFb@TvRvZ`K3v6ulH$BJ{!_LacB mP͗VEs)U;Qwkrp_,E쐱 LϘY,E*btyӋo4t}qJB=ұ*=oA3"% z Zj?V#̶`8WQAEN&R#70>hpotqkJU&۝߃M.3d&!r$+NRPdМҟ9ֈ7dr}"C.գ,Yf{m[Y:WtTjjmU}m4QNQ{:Yq*+\QQ!؏TOc[Ù;T: ;j#ާb;-el9S?lI2~oa(QKBlD~l"_2a P}Cx)@[~H*E@˷/rds9`-PmI i>U*2&U]ӱ[dJ>l,dTgCqPn|@%& Cv nQbyh5ONDt:rzםAa}I6A fnjd>~h@:* fk|ѐSĝ 츥xJ7`f,;AjIdZXOًw09[̭y-hS+y S^SPH@z2##AOOcg2˃XL0<`I)^xs;nyjV= 0^q5E$J !+gšݔR2:I}8jP*zUeU秐 u9SbJVx {e()*|N BXpe24i[Cۿ F[TN"P e!>-] b^ϏZpТ.T y++zBiq8}gO\Sqr $ҝ1L.יSw>PC?BX*>GBհ~R0ҫE ^i+"ax٘LuPvj޾ hc\Z(# ?~^ L цy`#.Qke&%fCZ 1y_BsGNu΅*+i;KEO~ U~o?uY>vr6;r8'y n']q(5=Eٹ}xPsf ?x({FA fn9N(%pRAZ!b;e=_𷜎>zһ*Fm v(W99d!4,JO3bOw+sCNq#{Z*__*qVm= 8 ]'v/(rx w1,Dwd:9]{xH,W F* wn?fZ:h쥔 ը.b۩O bl>PF"F'h$=46ht[*$p:Η-[JZV Czwnf1@N}XǸ$+:PSB1mNխEq:gMwt>;L^L)c0C>z~lyeLA$E8"R p#ٟ@>.GiJ^ga|0Bn\d528L}`uVf+љ!16P-W|3C,iɑEw*} Z#>\K;ߑ+BwUz%-6$@~=xDgndZb$} Rdv[y.VӞ­ƪ+j+m1ǙGHh# yc+/^m]Kq; 6Qݦ~: Yh&8|Cw$s3:!5S"!RPJ蚆>@3S5:n;yp- ۚ ( 7j)lEW}Cmkėmߞ:xԮ4ek#3)7N Rk4[[dskbNӡ<;v Q^gIYAy' K㩹 {$(4??תrO ~ϰL(,fTG ~(9x ℏϮb1C5j[9RxmTedY]xCR̚Tg뢓V{_[m*2\*urV]),':s_Nׁ,!jsM[& x^IZI:X#(Tml3@b0ydQ<:̹(uJ_91(v#ox^F/[eE>R]_|)kz"$-&`8{G@g$=YUj X}٧V;fEQP _ְïNZP;PQ纹b~* fr4,ݾq&U0S/PUŭ)t-][VaȒ|EG1W\"+cuz.uwH'!15ZOQ8bv|IS-;b |dDo˝fvV Nq^: bR ]0Dq䎕Vd|"'fA-ncI<[?ޞ~W[""tbzdjFe)mmT ĴCY7L}vÿk*bztPaO$_'+g٥b9)I a[VA_=xsai)sFaJ|Jޛha1w2ґD|Š1UPu=wudP"481)W6DkHv7%p=e~lgi32SН#1gxOIM J-G2KDýwBF7 Q P)ۺ-Hz,.iw"+nbM yRnͱ Vh![`[E}Cyt1]|]Km ƝKX]"?l #@=pVKlo+OKN *ZV\,FBu!M\-Cןh ʥS}5wA˕>>~H #y'O┑;o+OSF^̭^ͬ u04\*/\ڷWQL@e[O'ӀesF_l+h'Cs'JsCMh>Rf2ڬB tܲR`ϔ7;oj/- L0~F)?΀TqV}LY-Z&f*?NK?" |+ vkB@'*pbkm l;Yܼ.J`:[PG~YkU <7,]EqhR]hWוLTpUZ56+8X[ڀ ؞ݷ>V3$R/{]۩ (Xvɀ4Z"z;<+u&B$a{Tjj%GrM'@UyjbE}OK=b$gCz3 VQwúWJ6cO'>j^2 9OvHC G.PKx!ZLz3@z"L{4`#h O~`I]7;ǘEհXJHWY QPKJgo00H9&;w( n'ǜ]QHG)XJ="Ƨ#JXRp!Be{Cd~p:f" 'ɌPlA\U4Pr#ģe[Pm4V/h$j2J 2bU1`ύ~[kV#X-O(-X`[Pf~9ɷ:-'.^K%`Jy!c>zo5tzʺ:ceF//gNRKfp$^w2K[ y9cL@ŕpR#ؙxwhL{骱1P¡w"d+"` Rgيf#tG _ "4c{c#^Yo@y㍸@Y-@kvW> !!U Q.=cT!A2!$(_UPӖDdN{?1mWF0`5JtC#Dd3i}]Ndh*qQ[" <%qjJ}E܉;fWe{8qB>l׮cQ7&*E3GZ}Z˴zDm )?{ቋ*ߪ|q^)ǀ|GO6ݛ_5#6 엙#Z#WʀMFƸ7S%2t*LzAkalZhDI9?\@D^l(dE"U G Ȧך#jـ^W7~b5[n -$hxYtl,f1\J X}Y}WH =d꼬u#9LD} E"KG/Վ*Ba2a2!x<ʰΊz\3 vC_+qn}]G--XN;㴝eM VVPJNPUY@(_0`3gYfvgG].uOꪢ,MWaD:-Uh:yn=/ts"z0-)q`=UYQTG$F栨ad ߀e+2~{q9A"geaaVrރh̀Ŀ+x3gM/kpڐp]<*ڝ@,q Q\/os3iFx`]נ٥|m$603ބ2`/g QL 8+nJ4QZZQ9+ uB5xצ5}*=܄z^ĝZgLOS)J:h)~s~؇MX=f64'keQN^Иլ'myz7UEmltͱ@zxCPalÛma^f !Ӣ(|  vTx\إ]KkxZ nJ ᴾɷVkS 9 :9(0!)yNG q[UPc&Hc:*L WKmE/Z{xc "ΰS-Ǝt!zFW_`BEc0?k9p:[fL-f`$,χ) Hn6 z2QDԮFH}P"GCB,?NeePJt?oD SȜhY2+ݚTÈ[tt]Ox5~*|-GkAye\T[874q>6b:Zڰ7 qr pF́,&Iܦ<(̸`]>;*l+~S`|p`8 Wh|* ΢̞0Uۍ&fu/' ݝjƬA% O?nT|6Z|S#6`JvnTMNVkCOH ;8m SVզOy11ShIV(rʁFhx&vކ(f#ҘOz8)3 C^mR`'QG2p viAmĪ!pJ='nzL Z&H[çXŷW;~(Qt7T7=@=>nwNTyy=$}X$h0vAh=i({8R5KN^# .V:⸶Zvk * mEXtY|<(h1q.Md_*"f펁$MH!~i^oܯ:s.@]n0۟R׿p+RJzY&ZI򤵸_k|腻{}AHlRJҐS0~T $yn ܰqBW[̞?\Nn|txn \8Ϫ].Nq~ TA'J#Wd%ѦdMhf|e@X < E8.(mn3+:L%e<QW^6I=n7\#ğMqKC9E՗Q se"6גԭ^ j,xVѝ.?sYba`ۅC.TAX4[p V1l9AeUp x7SSz ?*[$=z_6* Ӷ,,uE4UIQm9h LDni5pbD}Z ܰVdhސI^0a됭9ⵊ SwJ2k@*TgxP7یFf Ǣ9bXDz~5å zݎrJkNa|]v_)h}LK7xaID`_ƷoזAgDj[e!hVY~9 II foSmvTėgd!ݥx1tv]8v5 >z,$q8!#gsd}65x%~kЕC=\`r : n ) R!eW,0D)PaVr9yж콯ZRQwSj<"piکrV!m_ƒ] "Gޭ L9 *!(+vprW_1ٹ V&cb{eD0TjxiqUŽC0YWoz~TsLF֘.7cmMې0$H7B)i l`q/f JI"iah+㷟.n%sʨYuwY>\yU6YNí(u( n Fz#oJ(>X 7|_J 7QӘMҪd?ֆǶ*OU77?y= ߩ^0"Q$@Rw|>7~uj!`x}\e7ꓮ4w:,H-EBT&icHJgycuҲdxSsZb80D{-a9y=VL~^]vX#aA8vI0rFӄNˇ_  (OIKlg;.*`F:Gw`@,#JaJ Vрe^oΚ6'` &*JĂJҁ$I1[a *O@fw}fpI"hH…ѳ\O< JP"Rۯp 2 ,ϭZϕZ/,vׯÇjO٪/R\fi'@W=O - Ib{r##PąTŊUQNV=$Zܟv%BD-ႢbS2\yzuF>~ߓ S7 GpOt9ldF0͡3 VP=TM;"QK>A WǫoiG3WZT"~½.WsγJ?Sss;tot >2g-#(%I!4'^$( *e)c/6,k(]1uD ޞu) 8ÍȘkw-Q[X(Q1cyW?}F3y+p|SCAxRZ06 l,F? IDY)㘜n#KM{qȹwv/]4"{+ij ; 0?ĦؠK39/o D>*)WÙn}w[Q±-D*WJ,M$(?^Q?VN=};EpMJ8恼X g=r+J B& oYPvٔE ^p xpͽNWrJ @;_,{BIΏ+N;:Q"ת5tj,h /%9ފV#G4I[0 5m" bG4am6:H- 1"7ruz{rp'ͪh:R~Dv&augb%v[!37/ #Ɯ~RAoG HڰN<(ۉk$^Fa{(?96lsr i⍇v @3] 3!^V41k Sm%ܔ8ZIs|ID!]L23r`US-O'1 7WL$ fGt!s0?`+S*]Ū=Iด"#o{X`/>Go`#454;0x qLn3I99,QL'YuJ]ߞ (mLu!zy3pHG*T7L _o[@&٠ܫᯔi4lm %rp*kL1DCg* v u>!x&r3U0_&IVoM5[}t/zX~EǻCjEܔK?%Tlfd-7Y ܀K~?`/])ʊ@PO llΎj b tj6~7ղ_M\IEhq-4/gbtn63> kɶH@|̺; m{!hcMrW@VN6z5.)-B">Q}L@1JiTB4U[%Z/!P߈s3-8BX\̄ɩ JP%\E|~%a*_7JJ=jL}1x͘^ J|89'0p)8jzr,@n؋,+`;P[xrYGY#C8׭Ūr?:hXT3VBrʙmSm5/ J.S_AG6r`: (gp!la/EQ h:(8J*.^"Vw d- C"+w(7>6H傊]ٯvۆ뇋1=i϶c?wF`@ 0q P|ӥ!ꨶv$wntGO#>rl]/~:xƶ'Y9W;(*/]:~Lק٬et.SBޖ::u)}3*|[hط~?:v/[J~1>rQL5{D[͏GcQlq/czL.G(1=mHVZ)Z>W*O0q1d|psx|2FOꬂ8uUIr m:KDol{*vV=!\]L k(y:6`mI#0; x 7]۾!4uo\ #tay|_$r,#v3bM@u'e!nj#I7_glT1e-N98vAg5^ང,HGΰ}lDwm*.&4;uRh(=B>@/tX˿f.ȌȋG| k} 3n5= *9g?P"wyC "U:G^G'c(JH "_F wh~Kpr|~lMʮ=Q2}P늤ͅ U4k|-Xqy* \DÛ* TSO$K(Y{JyV:NG%p*퇮'T[z!4-d_'e}+Z˄EZ0&5_H\&vqhc*t+e/aԓ>C^@v2&dzʍ`yÑy*\"\(w~@qCC21B-#˾Yp\A*u}'/eh Bz#p{_KCr%(EVy{ B#+Ui#l3ʏ84/᭍r`/@³0|v,pl%ijR}(?4CϽ~;\1 AJCtZv6EׯGԼ ]*0y)JGj@;|GM-Wsg'FY{;*nҝ D9%`y _0N囍 =Hl?L*jk)BCl@H=otsij~ vc W{אC(2 bȅ; qudJ|Qsp;5*:Bs>,ҟ7BD{+)A~-X4]U(I}.C#0_:PQ<ƜMe 7°[MNBp(6PbK1eC^>3/]`=$x}Bxe s47,6]P x!uc$:n.<,LW,D-FF>=;FOaUB;yfz1=}E;N]9,zNb=׈Qdx!ۺ+}W0^%x兼M71)%f |5b >KdJP:-?-S]E~aWϷ_y\yCzb[IN *UAE$U"1.Otj7 4H~lBֻp=̇$!U u#عG;[HOI0Ŭ';%Wj\*Ptqq|=h!jաTìW+mKXvaK]wNؠW댓" `>auúkKNi ?^0"|1Y%LTL?m A].(9d5@@An DH'o)<)@x}x7؄1G͝FقZ̉ID+y7eCs25ˮ6ed3Fڼ!t?ſBnOK^b0 <֞.9Co=U<`y DEEXr޵@#kl&#/n>i6uKhԎTj%kibHnX) 2nm<Ƥ&kb66uQFڗ~E&+9H5>#d{y0b:xJihիD̓NPfuDM u QKS!݆fډc[G[yFxS9 H|PfEܵ"4C?v?y MO_ C rp oޡKR1u⤊{y/`Giq-mve8ycA PatFib[5@RcH EI66m"9SC1{qdV!%͖0j=;r t\• :;8Jg x>(asGT<4)f0 0)My750eq&ZP &%zxvB`YK\o40A8X<ˆCVo Q41CB2X2xl@>=Gu $[HQ"XSxz0 y]1 KRI W7r 9o^ XjE<4Xt; qS\/a/jܟ L-(i.FsE&[ wl8;?N S?3$'HT8:%:>'[Ja{rx@m&ȿXH-p'4&aXaC\1m>>v`_D+?ZzIB 8 8#{)Y)WMR㐥J:uՉCLԛ9@BԚi̠3>bG8ϊbawṪg1 L[J97zkS33K3Gq~Ȑ#_[R"ќe1o&\h,:FU]0PQd8g$`kyqB̿(0 |''B7U_ͤ v7iN-& 6u`bh@HO?UC2! ~Lk缶^L3@RLCuD o:7n3U;# 8QU oAD.s86c݅&ޝ1Tj]ȋ2'ӯ EXmP Eʹ͊[rOlA SX5q/XCʹ~YY`e_hX-zTXz1н2Ŗp/H+zI"IΚxWo•@neFW}`vp4>nzk>InI/ax>z@v;G;zp[Ub;qtk8;It60 Ү_<dD_ЕA OP1,')vS}t2Kl8:QD]pPp #0 KnD@W9*";~9I.3|nRIVnmXeHfOip׵.aU55z 61כHy|)G߻u}HO>l%\HYS]h2נ߂!Z6y*-[W18לD_7_B.Y_C`؊!^&w_-j8v)p ٻjZ^яMRנ\}hX@둖i "{dY*>`\8Eq͂%ҍGq\#_ >wM0<\n E°#!)5d|gyǝm۱`-LvSf|04@NPC,9@`HM&5,.GY*׫e߈4lZDv8nN%zb#\-S!hz^4:.\fb;ax @ `S1.r^uU| Owsx0U^EKV%sm~Q [E/CxQ\LZTgg`d{F1_ac€߂7L Ďݓ LdG`\:]V+G~;/Àc>#gv^Ѽ8/s2%;$Ow(bj1vdp[j(@PO ϖڤ鞜dr}3g&]O.gch9˥˕?+x~$-kc:Iwx7pқpW!ȡcQJ0 a|g>=*EJ7zsW;[0jMTc#B| 9B tqe)qA!@Y'* @]C{NE۷ef-S&Vh}1*,[V'F'mMqQoQx@ë@$L-M*B]/Y2{j$2]Ihx=j }NϚd/QO  :1|!uLb{PJA5iTC$A\7p "X'z mUVvΉ_UZX%=X/Q_c=8x&YPY~# Z.>Z\jSzz3DYtURn#.(-Y F87)%הzm ތD=6$J|nUn+O]N158,[>?oK:|;*0Afpd68t|rsՉ#M1$ha5?46s 4eLp^ ޥ*&נ4ɴ݁2=Qӌ8";$s8 &k\{&%8n[!JZ3o5,)&г!xa2wؤdR 4|fg|e+ :X9^rq׈u/M7Dd)苮br<4wma n$d(=o`i&W='ަJ `kT 1ݿuSg`fq\j\syT76ďa ^$}sҘ*@@ nu:%?a1ɭ?X<NG PX:o&@|Cea_C\+ Ł ӽu!Ivn)_iSv/QՇx9Z1F1vySupq*WJIrTU2Y2\$zK^ϨP!F@Ivr_ڛVfkyi~r]*yEfٟ>ۋ=#.WㄴЩ; -Whm#{E4r:~1v2YuTvL_Q ֏vg5ĺtnBF{G0X(\5ϩ].}އ3qh;Ag='V}eRp%x c>f#Jϲ|0J+ntXZQOws5N 919I΃1 5.O01N*[Aya`[M'$hŜ7%fgǩFB9ӹs{G$Y6R/qvЫN&;7V;_phO κ t8Pw;*HjEeVL?E' !zrɻɩ/'FU}?Rc}O8zݗ1y81 KhH#\FJVD[![`毶#"s[UI~ 㪖;[l%;l h11l0Tܽ:a|J ɯ h"=h%#G[JP&^wkSm6f~1_}^ehu'49(Ӹ_:L; "Pb$h -t8.V/'uc9MO@g%"n\@J2n=Y@G9ԯ(HyQY!x1_=O٥>ZUe!dMX.xf<8Z2׿iު71#}?'΂LdvQ(p'$":+G]H195dZvt{D!䵭^oڸs &MpAӁZ,NWN':k MXCB&ҡgE鐉 .5DPT= VN`Bk/zpm]lޱui.ㅴO5Vf;Ow)wF@h|Hƃ ҽu I3L1U.ڇh:;rs!}.^| gU Ob| fI5AM7"Zճxra//UB8XT O5{l  r[\Dž5i_b^ V0 ҌBhxR 5 Ҭ$SeWգ*ItU h>:zp0 D"}1'˕+08 Ul3%aĞ3q ,^! U-]!i#'Yc[9"k$䴒4Hi>)w5'۞=4d ٓDڌPB&rU˷^ uⶥ[LJ?ԌJOٻ=>jX)gcjS>m f(M69FԕQm A$GQs̟CC̙AB$:`*9iYw)0-g_˘ zy:sua"])J\pIf ZPN2>ֿ'ղ(n# jkN#T 4AUwM^a=HFpilŏO~宎^pcaSD~{ p> {eİ;B+Ms읩/,OQ_-^'XW"9vlF1 U'Ό!4F.7iީca$RZ{T!H2sxl3գ$/6hwݬvg@ON3>hJ/\cZb$ۉn+A&M^6DjRCד|FwFD!ZqyÖK}O}z"ںL`Yxw)fP@0eV\xNLiIH֥& s_tm^8j4)՚:0!uf@?j=" 0.Tv-6dQ 5 Z&j'Y354`'HBTNf7LǞ-RlɊ7B^TԎ18 ,9|[dXV"8,C:> MHw5)./~0[-[A, @뵾$Zi\wKv-ƗP+QM@>|^hb Ï3-gg8rA`ʸ>5VbLX*K>ECȹCxPKc8+w 8n6TS:&}M*_ 4JvS42B_#ݯ? :qv@mVs-Cn- _Jj= KE}rZu,ϑ|96u) Bye JMf+7Fy:4~oU/ebw_{qIC;{b[t;7f9`I|4ud8~2T3ܨ/،Y;sqq6ꐎrO=` O5^GfU{|FfHa6\ti5:+{GX쎢uD4GٸMdeov:;DeRvuooMFi*-v +Z's $lMGۍِ˚,G[Ovʨ.Gׂ/X\] -'C~C۹;N&iܽWMkVo~G'VfخoLVFi0 tznRW6qط &i1 ϩ"v1Jfk#e[kiynw_z8'} .J`Qpk,>Ǣ n"^KLs[>;fYbu-Vա Ha}+^1PFy=5Ais] xTn)VTڜa+0["V d|Xn~"Z{I6bce5+ʆҏ[#]`F~ z@ؓ\G:ƗjzI2UY1腘:Wr ukJ6z1`|4.PnDvX_uXMAIRuVym\r I:+ uϲ"}̯$r2z'bINTI-%kbݫ9[!6 dSz?Ulb1D~il*ZhIY&? 9CWSZΙyMnU/͵N 6Et,SDzuGh[NF AuUՔ2Bh 줵dlxRN9n*w0ڮPq$N%mc: '(.8QS\e٭)vّŝ~l!jC/!_Ў~̤vFb@ep{]XYX~#CCW4|KV}*I@R쟙їw)O<|#_\[G (S(ʂG(ÙFL9Lؾ3N mzߙ8R7*YWR`gQ46sg&6Yn[Dh3 sXWG!NķA\9c@Wri-[5hxƉ)fٻ 5jGSe$h̽/ZŚ TL /$.jBlotgC#7`@Ͱ{;wS8l45"nra;- 2 WOj>f|4smK[ w2& D/z%4 &l ~o=ڹUԙKFj&i3\x(szj (A7ca%St%b׿"A,f+`MoTH1I9kW?F%!o`R@>EZ;1N?9_ 4ۄfIkB(Vb$IG2l}e@;{_fʔXPmBxZΙC^zEAm.+Ul>1.a3LpULҬAM`gЎ h{T@thɃzZc͞1'`\CB%_*ngƜv#T]ÿ[_TeQ.~) IճunryϯUk|`< πJtAZsN2B,Xl'>%lϗsOLqkD՞y$`&-Sm6vPX ȉӎDˋM :s߫R_9:~6Hr ًlzcݑ`%4%MvHqTh#4yK nOOf뛦zx\bMvNyV.e3s؍/!z cLkCiV*ci؞vI-*{me 0A@_ӣRgZGÏч +$\"^ Hz"z G^ М.tK1~z_eY8ZHkjDXl {E\p&۟RHoQ- ,[OHAet˒e1rzÍeV ;G-c{lݝ$ 䈭&/ bJ CxjG8`O E1_a|g9 )P5T{a&#A['+ STC*O|OȓQ\بo! 80dO5z0cw~a)6+"K2m Q/=hz9Lv'8H fU dul [ XВAh{A^^j0l-T2Tf1 [2[SG%sY: KrQۤ?0XjOKH_ IR&GS. GO+{nhz`CՃsJ>ݫr 8Yj5bG7AuSuZo@;@ 5[䲻'i,3E/VZ!^F % 5k "s G ן)y#d{%#qYA߲јY  ;W! ? {Q+eo poeDK̸[T*Gqg=aFۉ8:kM+6X f u! 齜5/"ǁq ܨh׈z /7 cd}!2F[ ? a0iKd E򚯍?Y ]It2)ҵ?`lb'-??> S' ~P܅׎lQ !hz ҒkR~U@>f᝷sS]btꏚ-2@d9 ;Ps)"MUNg}_K=EIcLܾA/8dc[)Ikg#ؤq4)tsY V%U8h$`*)|?ԭȚ.;kLi $ު}5+AxEdw.)R[]']tJdYח!\*p]rҞO[n!: KיǐTe@_{wWp*u,3F~iK+=EI~S6?T@ X(Q`g4rCB3h]hG&ph~"w>spהp3[DVwsJ3U(>p3U߁ Wyhy='S4ks=E~PW4s5_m eӼu0@M@](+q!3  3")uV;Ͼ:`k`@V 4wjj/u2V+ki^:EPYb$e?N]hrƗLC/!I"N$̐WS7T(> nLg#_/=#Qb'Œlk0[k<bo4{Y44q'[o+=AmOs5+{8UaL574uX/H=o~TK=~K'>^I\v}{|Tx:Գ32wԓeqpRjU),R _uPB&p*宮Q իzs n- fb *<暑-hl-%$y:^.|;^1 jDf\AC EhtQ|&QJ߮UNr$[p@w) {CPV'1F/ʖZQjĪ?ם[J^UOso?C4g GX NCZmSc-S*oYįT > `wqL7 L+"qH@yB{M\H.b#Xj4;ڛhwψ+7G@ S_EY[5'FtSPl()F_ŝA3R @qlѭDuDN6 ݐr"W{1~NU ʛkҢ<Ý_CsPTC|Lv`oQ n yX)=[^}/x:)|ÆؙvOۘaZ~0_uC{`%"뷸8}=6lg`uf , O֢IU^mNMB7߁E4S%R6A]""?jyj 3vn|8JH_oܳ&;!B"@ yuL`FB1`A 49癮.7tTt3sQN+G Rg:uٴ Ef](a` a'L\?Cӣ k$'!xnumaaȢ[tX;(waĿ,v 7@]%#声3˾ݙ21kY<.bdci)e: )Ɓ{;pH |7JM7d ?o|p:f%9\I˳ǯQH'%ckT6KsA!FWsO0xKYWQ4]\8&d WXK8}^nP#!{S ݈ XFa)2h$};4A؁ \$mطMÙGVDqp8SXi .P-O*8Qs+ zAzQ8r 4_G~YNݑ/ifڬuaGZ3Cm,C^29T_D&5 g;&;wẍ*m gDv/t ?V hJ}43SBڈb[C}QUyQCN]}#;/R_UsZ*M$HỢAy1i/bFWc(0nԐʝ!K\EdyЙ ].Z7UOI~mvk԰MaW̻plKzL[f=Ju 0_xE1N,fἕ5YjUMQۛf,cEo|z&m Vn`}yrPVCq2g[D@LRy P? LmnHޜE7Na[UZ / b))}Q5|Λ!TN`::fwq *SWd Sk"Y31܆zT:./_pRu0.1P?E#+QXiI_[ Kݙ{,w.EЄ5`3͍I֤aƘz l0"ElꍀfO0 $_sgw0 `TNE g]/_a<PMfoDmAԂctޒo'^ rX>$b#$uaqdw}$8. b63(ȃZT`\Mk͂F>쾶_buϙ(Oۢ۝k='@VͱzI y36ܴFOd qO#Hڇ()1?:(A7v)?uq|#=$'|̽H݄Ams vJ \Go|E.Lp!: -r% bpXlVjתt @Qj,vZBrU]e{lyWR݈#ϹP l KPl٬_}FKoV#YxP!zQQ.t`4_FCfȑ_lb0]ѝ3&]PcIhl 0ꆫ~v޽7.L= ZyL~r: r#QHFH5I5 CSǚ@J f0;g E\ RΎ\{{Iz?j_=7mQcc~FG¯{1kpx\U2R_ªV֬OxHdb.NbZv{ EGqEPLXՑ= ϳ~mKj3}f-[֒I@ :P{5h%oyGnjDdz%q{hyL̒牮TQyM|k6:ʱ$p1k8Ӎ 椹UT5 bJZZNv})W⹠ϥ`Hop?"A_2<Pvat@VOECN9_ <(k`}u~Z R؈ گ"ʾ^^~nIrLsidޤEӸn>VÚg˝Њ>OPhl /:jzb&88oJS=f7od"*uyL?KU{hv 7'lIxz1S$#>9k{':3EK40|X,LK̒~/%{82ML{tDOeMjDNړ]9FuA lٽ ?Qڪ]E4-,Sp$_IbI$%5}#~J%-ZMWMc]GSmT;0L9[bQ[qO-:_Hv4 RܗL-mk$yq!!Wu W:j߂86>k5tr&LLE/Oe bSۖ.w }rٰot[ iLJ9;[GLBI)0IDuK$G a ZXLE "P߬vv|AQC1(0չ@ sMҝ&ާljVRKucexY>An.*V>r2 uZ sIpՇy11( ZYyk=]wDaa%÷ *yc{P @`Tsu;{ep] DiP.߿ SF?}V/΍1_~LgJ;>0]O?AA(,I%CkJU*izhk 7Vq3By.Vy)XiBI!"dS2o~:,_8\ >2m:/^ij0]lHq>6 8lkYJ!2saI p+WUh|=]ZBV>j?e7kcTln`*9?n s 5OLRh%Kp"`??wNe"> HŨW&Y8;{_|bc]Yٔ;rϫI9s0LMc_r* .\)0bpX餀A$e";96! $ior<'iEZ3/x*ͪz8bB|TSeOZWxڶ} qh졇(Hm@_yY843?]*cyPTVLb{=8IakkşA)ǫ\sA֬rz" #Ljx Ye^ȗxnTaýiB=wz8BM5}7ڇ^' 5xrh9a͆kI12^td G5f~S7b&JBWuUǃԻT"=*uc/&r*zSȫ2&MߧrpdnF9r$p2`GG;mc `;L FkްEN(鑎 P)%TPB(>Js,WG6rTN㥶_sqD1gx3 G5y/N8_nuVrh;o+i%29ɗxrѺ=u:3`Hׇ%X YwK_%^Vwl=V[E>>2!$%{AX!WU_+b!72&)%?-]Ж*OoQ yIjCQٍE-ga|IUyJ;%ւFKm[pdL~5nŽnoP%avM9񭿘qUjqx-lg2FvGyǓ_6)yƲ~)6cGYJNy,J{)_s@AQ΀Th5ق>ʼUcV,mGYҰ}cJ0PD5T2M&8卲uBw+Q07*H5yѬF.2v?ߺ=w 2v J0 F97傸0;BZ0cy.-u guk|#F#x۱2Zpe?B ABBw|RPY ##769ZP x@zɵA c^*$y+9|j:TRe"-m\~z?|1` `j@!N[?T<)sg0Hbbwf?E͵(Kp#',6n#񻅫kAdT9[X#1*(riRe-9 =;K} 0O:e6Q+ܡI>F4ִ%x:,H쾱 n-f^qdAXoA)vf0SOXH$S0$Aޖr[ֻrH JQbR\ mnQ{Po} 7|j:."/l'Y'>75?d{*`˖Yey>_$y/:Ahp[440:QMxm5@RG}9MW2.FXix(".yvx&k[0e2٫ocT==q&Ǔ&XyM>'tb@^D.hQQ:GB1W|:A= +Cm$&u1A9޿a/QǸvHWy1o# l?OT^:пZ[l*.؀Wr=4)k\ݽ:mi!kx{KZh8ćnyҍz܁A|+si*Ys~G+%mxO(Cʊ_\{|G|;+˱8| TZ4SR"tI*ҁ`}BVp*m7#pR` sofѦ\Ɗϫd6 d3Qi"LXh {~ܤչXCvH,/y1Vap Up<;"K9ޭjOL%KR0 KH9@z+rSyL.#tZP: :d2&iǷ{ح@XF"2nFw-hf!OxYh#D= ٨a|U;@\&fw˟!sp#2|@-P碯>9mA7>&Ѡe+r(Xa,G7Ik0~}Ͽ5 ,&8oJJb<1aB P#;żVFb+V#>CoR?9͋ S,]u'Q gkƷ$\GB\Ք聎&B1ub&#_r;ǰU@\`]w_a֢lKFY\5^ilXhJW{4zg7ېHHbeO8 _+-r9XMW~LkSnԳIKAX~%@fǔɣ%v7MR^m[q 2qpPDٌȽE\2ƅW#<)tfU9EV2UXCϿ/*+[ wF)@o>ϖQ-5 Y+b&4 ~ $g[/Gu#e p?Ȉ4FݤDN+"*Y&ZII~M*9b8X[^zkJ",bKb8]*w!,Q3uNLR^ 厓@5]23r?z9XH% V]jf%1ld"Ʌb7u$VE.y 3\xsPoxgb[V跛դ5]6 *@;$q J3N O 6 9"7qodTB$#^rSKY_C'rr.mPsY{l8&}pgDY*z>HOѓhZ(1 )bnxskX^MDJ$Yˆ 2]mƌ1>-n^O}2 PtCf.ՎNV&iFs3?3bRpR#gPۉ,sch%2r1\:N d|͍ 8d5z~ KT<'3<_4|8h0ǫ.a=)9VrJ+ J %υt´d1 7^}0te9M*bk+Ʌ;;gxш*=)!RNDzkA4  ~2UF!|fJGw=brL apm ضZK*TZ9@v (ߡh_IF~?FvxeQiM|; Gc|ʞsKaIDL~6hsc8E"6":%5ׇ. ryק-Y* _P^LuaY.yYʉob*$+w]6]Jl6Lh2H]Gݔ람NntT mC,eA5m,"XE"]g-G8p)Id/ n8epZCvCL6Yb3ܛhe.q&ЦJX;QmT25KݦY- 6X1zKd.XQBbv8c.~'\t{'olc9ߦ?ёXGKL09UQD'TWRH&#GA<ƫzNdi8Iʜ0R>xýB,WS&o%xj]Uq&4%.9 _9Y xՌCqieK}D/IK LGoXEeho)v};QS!*Z[@ V7\-;C@;R:뀌7ݭߛ?:qJKû h⡮m<u5DSS+ 6G%WQ*:)U*#_UO水}zβJxf4TgbL"M7 uYyݲ_M"3c|i f*aK F 9>U}-VKk9q禽^ǡ[ƞf!x(o9_Ae}2~K­zmС쾜%FzӎiDQuˀ:/MUsyf&Zۣ;XtL[իow}Փ{36r*`W"iUNE#E-? 8e |Ƕ3}c\}kd=9])^xscW9Ȅ"I=jaIX%Yi6;;SjkЩV*p.7r,vv}Z τ6h# iԓ@fIi%V/gǢ{`- myU Gpg0/[N%,$t]hX#$jޡ 0%Z__EGfNhdm,Oɼ]pB\F51e%e[7{5t N=R$,A-YfeG7X Sĕ&^'XC9կF^IDβ h[,(QlckBq,|$ f!RhLTH0-!B&w)4+ZO;/اcc? R㽠7oK-\B9ݻ#>13;*h1<D}-#!xp_|7٦hyZ:6Wf~I ~K`;}fQ3B~mGe1k˳%!B37%4goX./Ipɝ).6 FЫȜZ2.xq=  eYN.ק*NZ`Xth}9i)pl~[D&L sTڿ4**`uXaT`f]41LFe39+/|]y𶢡 ,xs=9͏ eE%&j5O =y@֛WÄy2N tq<vZ|N-n^`n+.){IEtJ.<{t%R&))Eyٳq|!a;ZsL|rrkABp6YKF{۶Y~"p9"z޽c ȝi?.09?xQpP5Zt<0YfW-_0$:mxRީD2ʅG38(#Kn)^I[wDiTy1pjAVɟeСM0=vvECgcw47_Is<;H hv 궟gkT } _6 us_[\:O{Ʊ}U.NsHZL85 R񠦀K;vuů_ i,D0'n)Cm"<z',㥩d(_ )OY  i DyYUXԠn7LrW$@nB:go?4zE򂑤˛f ; S@-%HK1"9C%rG'Kkܲ1`} ЍQ nGOeZ_Ed=Kfhz=B̿XP߶A޸=<=qēJ+Οn6P((i>6vp/ds*'@(48%>OR:rs#*ĩgo3lV?#ٲ-:L0ܩ_;q}%n_aG`&"REFU6p"(G#5ooE|j/h9sS}-/7Ϧ{w:ez/͸sq[4cNOpо}?oz$ + VumN( ~*E]cLJz2vR6Z" AM*=C+:Ep >H6ٌa`Z]o-b8s"ՅXfY<_tJˇB|gc5Ǟc5,*J='P;vDg~T5-_oqOsBHid(B7^- A"R\,ɕ q#1RWt㽮enwt\9_xVL% YV\l[uEgr2mw'oKNf6WP9q{)ĻƀJ-j\_"@Un7ݔk#ugYXcҸ,k&ooK>eBgv[G/Q/fl z~P% .W 7)AzF-Yv}%S73[n.S(\`W%\=,yAwaN1|S$gXC Qx b +oìհR`/q.aH"ՙtP6|__7Gd]MKOyжޑuD-?s'sX|<yGif:s;x-6>H05&'RM\ ,|;B|/q3}x}C3>gu#E yٟ>*YV\&4F>iރ~X]:9,YBcȡ+2ЍgrkeٮORKM jhQM(:kuޅ;3ukY jL%x-k?aAK|8r& n% v3V\ YS` O0A2~R A׷Q)c/X2̈́D)ǔC2"bk$dX6! e.M\~#>v@3D|O,YKlf5GFBlxzXl2H&S<.:*yy x}b0u1ػveϯDUzb|4V3%};+-민Ι]`eu6祳[juzpB@B'C7CTxb|>R]Rv~FT{vK+F>Z߻X-E^v J2=0,'iOqK D= vL!t}MGLsRE _XJ]J']j?H-rk j#7gXǓXx|FWnyn #poz*4U?[+! d+6D \#.[V3 4ocO0ې{G-;#ŽQ2Y|ˠ95M{&j%D L||>F5JP?CQ}zϽxhz3>S@ln6I1MKi3GvbtdQ_r]D,#cIp㐸KҌ~/+Ե 5aS#3B3iNhn؈f^wikptk{@nÇ'*@Ѕ**[a?F,sMQ|׌=_[ȹHU8sYҁe@[ $ÄvHO:GGI$kW%҈}rXl]ͬԏ>qQ8~U+GUOOW`!OP(vFn}UF \B:h(.V^_yC>Z 9}M", 6)3j<%ǹ1[&84+'O|R4fW?I*9_ ;4 ӮPVuzuVAdeuQ*4(rgxR|/K-UK$vMp Е6cu8~rlG !Ln&HaBJ5_zӀ򤀇5xY7޶A$+u+5D .(6}os"= S]Li)/spR4XY}9@Z:e~`RD)h; 񁨿@ܗ+xSaP펮AU/9gB4<D)`rDbS?2s_⪙qyC0D˶v?DmK0坑TH¨=TGVXs:؅, % mZrB=aQl;-+|| o\`w* b!Bb#Aø#9tezv:$gUm7h찘Z-~;q$:!Ò_CNxx*?&]P JRqSg"}/^Ttʰg=6 Q_y\|%ׅP fQ6  Wu PbU~R҆CAځ&eqS\e"! їi_W6TR,X#++}nIJOC42܍ѩ:0) "PÐ_'-1F ':60[:ϧnO3?pĠP m,fdff+"ٻ.gjU4ϓKbxlFBgls`XQ2״^IZ`ߞ"0-en8V2K\~EE{N0 o▚싿$rMEe!Prs有6.Lȹ=aOyȋDkHd*n*3z"+V-V0Ym&Q.{i v/:8@$3褺c1Ƽ|G%W[AX 5TȁeG ƴ?K{"L+cO?=Jj2 qƧj43]+MC @:>}`d|A|AjԾ, +uqB.Ӛ2zQ6s3|GpK<ߺI5rk!ǜxpkixAKFLtJQᾫ8^,R s0n L'Qm\r598@m2_$VPYNrHd)`L08]mS]=yzx{ D( ڞ5OG֟n5 { Ⱦnd]]_q\+Z(|uMv"렓&"3Q.GFE (7Htt#$z󅸕-V>[,DR)ZkbpQZp1Tr2Y:%4ٙ߆d9"vW*[ +D,Uʐ4#,c4jٿ#IXy8#؝oM.),UUʧ])t0`/H1 8@*% VfɂQW]\^}{l|I+So~uȦv_R&*{4 UD>7t4<7B`ʸ

3:A;@HJʢ]kfrRIZ.:r5%䄓4mԗ@FtssyJ/U_mXlPbb6œn Jihd˟'B¡N"!*+L(a+ h\B* XH+xErƦQӼjxeZ':%]"0M,YsF}=`5 mꙬՀaBWHn'&ZItzuPTf#~8zs/= y*iupن]k_ݓvL'G h$:t7JGX,!^Ugл<Ul@w0`,|t,.tZܖgLM%d!>JZ@:P7$:_iX$QBT-l9]qGPy7 uWTfx-C̋ n/Zk-(N#'Z‹DP-D鮢R/"J i*ʋl_2]>)3xYPRL\.]}눴;w M471kƸdĉccHe\g"^r4F2AQ~ΊN2W~^}i_Nem>fc%TGD RUgk1⥄c ʼ-^>}!;@7AR3:SeHĎu#]6`Ia÷y̿AdhuPdYzrN^M.;Bձ*D)׳5#g_Ϻ^UD9aRܝ?Fo^WR= >1,gۦRj$p<ʆLdmn>Ra'L/$K^ha .?^VAy~8ϏO3Bx?lK1 ΂g瑅^@iPUGm4~ 7A^gZd^ t 7l9h)@T;;)_#+4yFNb?)}Gn+^gٱQ^I49i:` {3h'yvMv]8Ӝ0² %3Mͱj\ p+A; `B"EŗqjVLtc~BKUQ.uPƣLGbRXѫ0(9Ж9tDoCR(Mt 13Ԟiq^ȨщM;$|"X ^ =o`B'ȴvos=LCߕ[7&INJDZ/uhFZ+lXa7YXg _-]6`P^CNj)@A1d@%]@uWL=rpdT`TXM@Thm.#.ϒSq*O-RXq+yWKo3xjb~w H UiOo8, ç+T Ψ|dI*U,Od7U7JD/!DjWuEKL% Ca%`:; #[d.StcX\=KT|/kЇ+Wdn ya zQeIҳ°KfL)-+m5YTR4v ad.6G]=|;>m- tcpʼ9k"syoYaZȘPv҇!e3&wxuUb䋍 njYVhkVP8 tE5K$!3uPD?lix؛l EvPJ '8U %|Eyzz9 pM ZgZ ,9 Q+t^ 2~p$ˠSgіx):Ïo3Z2z`[nB5~q Cb ,qOo@P'W6w);8alu8vC׀9c|-DFQ75B2%#X׎- Zō1)( +b(}~ͺ2Ťޑ#GAp.Y?wy9%J*Ġ8?*LsPaTp7ݾFtKӽ9f>8;zɊp Aa}NOX%)?O#HA 1hHw`jI$%&5vvh,t|"BsMs;@!ل1{eior9rEA(< iH+Ȁc<~ ^m Izޕ̯NuH@A*1`;dmS1(3ViIkJ1ݵnE+L I)u$U9eyC5Oz| |VlJ3T',|3 !a6/X=j)nY ..Q0ȪJx&03uc݉×Įj9duae`"v?}#)?us 0,[H=`!|аl~a%!9O ϢmiwbvDۗΰ`i*)SC-F@薣d,g)"Q EYm8+\co}:aO3}LS8^d3kܚ&…#vΡКH&~bfb#20wHͰ/OuB-.nTmZFW2{MJE~4N(S !2ZhC=nVbdRG4}Ma? ٳv%G g04rNtz˪c&"iiEY#3")-&!OwxVP2E3sd^Ȩd+?1C铛E<Ϟn(RdΊkAaeK-vsg= ۲L=Vvjݔ_>Y>c=6|-, V_/=aɐFmœ>|<1wͷnFKt_$\گRskm9FDY!sLs!lN x-U`8OOFq:cpg}@,!&~ҳ98) f1~PM1r 0bz'6>b}bݢ ut3Tjrg)+qIC/ "NcSE<%|*0(02ZV[˸)Y[ͶvELp`tcHP>eNu߷V7aV:Kw KyLis4]O3^N\B aDIr 0,&FOEOR^<qob̺kSU? k`) ]0Y K(a8JÌk ZiYʨKi\/un&N Xgq }"'bcZHZשlyaWLZÓȊ]}vbVf~CeP*JXGbJ w Q]wOyQUDZ1d" -#tNdL?ir*?G uh !TgJfAPU|ff$ )|S9iB=gs^l }] 5}PjY"lJ~orC.&&h;3LY.ϫ/ .kOyԳ|@8\A< "݋&KƟ95]Eoi\y}]$y#}"cz^#Ǯ܁O9np aSaNtF|Vd쾁Vby4,W9Ưtћ"[96qX?=ڲGFf7޿˪vOY)C8(7xvfO=$%d]iXnܾQT oy%ɔͰ*]osZBhggM> Qv7{vڅPñs߉3ӖT@w!oqW:|CeܳF:W|itn3<_-i(yF-kM@*,n%!r}RKmZ&?bpCG\3,T$4r,\]!O,['Tq6C:8d;w rR,1O:8w*0^KKURi)UhcBu !#G4;Þ<=E.oI~)m/.0 NlƲW+; ,G'T m-ƏZ;n4L.b Hzs ЂQ྆sL| CwM;Ns3i )ڼ5g];+LߺU G$\AeOnoE-m\y@ |8L\DŽ\~wB""l=W~;'=H;M3:|U$_h|iӾB#X*#k(Ycc:+?\uuS" uxgHË:} ׷e6+ Ft/tk9jBҗ[qx`L9 yեe%?\fd{t*%|2Z\bǿ:uy*T{ٌ ^ P?|ޒ3$ uApgŔxIbA[Ig昱'o썖RnVYC|k1ΩME劚 }jEYr7355>cm5&?ƙ:*Y!urѭW]K𔳬&;LǩtHdz:?9kh5 ゛bf,/fCl5m(i5"Rl&@lE;ʨu'魔e<N/@D3d6oCAe<_Thb 9ܽnʓ\0VI_ l) .F5}\%׈g(i> s0Uk),| ~9mzIl9.87/>CՒHF#dwJVv˝:L;7D KOa-kD\R] j j[T+N =Mq8{F2f&Ȋ0\>#ܟ-U| \LyGG3P>}rKmXKE=i*У|j4{r ? ;AGRw՘q }x¥dAEIqz +m OրAÚp_sE-M MnUF#B|ܲ˥Qim{!RXp<2وq70p,pɇ5Y1$fœH#DFJ!7Ý?]vަpe4*ONd5䮢m+eAb>k!t5p66SѧC7D^.PsHۯULFdZjܷUW^%ܼA v V8{ol*IR( E(xVp;#ߴ^L`kO3m_SSZ"`xp-\V/‹upL+d}DOoFNe,޺ dsLVg$[Q6{DQzaQ`O ^<0b۶dmEGCxQ` `ytcy*;4zEX:r܌cqxejƦ/nj[uJL.S J,ͥ}rv?Ȼ-So n =JA+9c %y#Ib#A[gAu7ciX=i ̓9CnKbA|8I"aޝ`o6M?2 GG HQz+N& "PS[Up_Z% {߾] YGdx7 >]; |C7Jzhd7dk7ћ[ŮнϦq=rOYex9S;B!\I]|Z/1As:Ieyn?#$"'VQZ&jǵC74R8DC\pQF>rD ~}1T+55298g,3lsp+N\C{xqYh:٠4Ѧ\7ՁP*p 8,V/ yki,kݥJ:Dz8+%rnW 2oe <E1B 3ףhT9쵹ʈhR}UWЧgb?g=aߑNOY^- }dkyk=p. z!̻Ě{@&d?=qG~6>骃 Q0t}k>`objBiC -F+Ccw g_=ERH&_g2XL'ݬ#sSs?c4֊Z}" jV[Y^z|.vf-RF u0[1?ZOR/Rr+-VfF.?1tq(:|QQg0Vm!vgσnpaG㯟v #n̠i/1FPm6&:^Vy|Kj\?wΫb7,P4C]Ɍ B9:V2L>X\?mf,5w- ָ9+$F5o m~L=5f;/"8CA'?$Rdz( EVi7 TPd$+mհҔYX4]r̉NXNC6">Y۽+~Rl_9͒@Q& ĿF{Gl d-H~*AaGgz|7e UP5OhLB] 7nv+w= R0e‹F4 6o *o&lg>9L+4S-AE>:*F|O@0Ӊ6}V6d"1k+ʽj}9ɳTԃZT/건G؜díia^'@+_&Cqmm]3cNWkц"|.$NȬUzǰ\rsxn,9{"$P*QDퟞP:=xB)2mh]5y؟+ 3k3Υ1o6aU9PhAiE$¸U`a|B Tl<?3\.k8y'6ď9oU2yǴ,21D+/R9. 1s7i@x3m@8hfKجl$K[|ēUJҹͭXV7(N$gD9Hr5}ᎄ7oB7N"?qaI&UȯßxOU@OeT(%M;e{jaa}*% &*6̸p!k4.9!cM|HMձ g`_2>~{xZo*ahokΉ'vCظ '67oK|6\=gF\,=ZxŠ q.3R-44 ؽqb$T~S^=ۑއvk|[&]dM3Ӻ4eճ;Toa<%!"4'V3- W/v Յz7+= Qԝ7ȀB93b+`ڌA~:KSC \oö촐 /G:\hHg?Q 9DhuU^($:{yډJnRT#q QG/D6cX`8 v{֕*eZHRƢĆDej Ǜneawis@(ca ]IucA{@=iqhAR"qX_s"*h~܆^00|OetiR(IlqayUʑ|%7ga}҉jүqўv_2]$;ís ^̏ u,XBp ꧞ORO ,`elh8Y- N7}I'%Ȼ .e@j_%\NՓOEÕI#OR{  honφiZVD/ڜǬLSi6=齑lѸ)MS qzě@ۦqmnA g?` Oct^cEق]d/&'<ʥV3O,sV]Bt6dWoq1?\i;+p_ZOP{xb'ʑV8s/R|P| O WPF+񩋶"IζYxx[WY2dy̲+|FWX~vЛk9 ,/-{ձ|?<iց/ݩ Np˭VM?BW;̱=}#p0^}CmKFpq0"=)թp`h}3%3.t&$:hX5bA>*p0cD<U PseO)!kp=!1C|!\v 4:J"+瘱[HF6ImXYf3>砄8M8PpeB迤 :u{ԃ%&cvc/[5qF.Ca;#4KDe;KWBF!Y&0C1C Vga~8JkGigĝN?.xظ4ڌ =yz]cܛ#GMQB&EQ{UPѪl ߘaG^gOGisE<7gMb]01; Eey6 E]`c5ԣI5pM&Uxg{/z<=t; 3Evc[QJY\K<_J92">*:a:$ol}ENuC| w<[a }^1)q/A ^'וt}!iR JIZX%aZ鞬ͬn`v$wq^Y^,+3)*mZ괐ĝi8bs&cHʰߊ9Ʈs S#brj`Z`J^!*/rL0EZ9#|ueJ*p]q$Ij('7#[DmH2ʢb_a7Wo,<5|=D aڃ#;txR#ہBT쏫IQ,\v aH}<]hE*y GoSIVbٶ.i`EwYYnhHc$b 9V[< ]0_7p9fAhZ.t7F8h 2wR qta Y5%C$.]3NL+sxg>:Bɯ*5B! {)8ۮ칂7`NoupT~{PՋP{3+g7&'AM7bg8W1ZJV7)*b٦W. T)ht+T_ њ&0>`, lAɆW|Sl\|LȤĨ>K,)8ٷ;džO[}bQ,'QZamPLGWXc!WQpzcء$wH(`(%5ˠFۻ*,_i>r:P]a{)vs,&θ jµIF"C)@[{h(pvo3Nt,_ d'xJB5 4s3HaKQW;"d#.R]O]MhەpЀjig+ r!hs|EAr9g?ܱW"J譎YQ<ܞ=uH@ܘ"-i[epm֯@ YhoXxf&D:i4DW-aHtuY6pPzquAJ4 `zM|7~ǥk:~ گ^ȍ0.OY㩇(Ăm>9%-wo4!&JpH́8Apjs k_peYp8=%rLo7mtEz {uB D/swn.8٪s1=3ै.( ;~F$e-aM9u,KM@ϛiĝ82n_ Ԙ/- [>q;5B:1\wm#h͇Š7=`y| <&{;gĖnָ#63IsK9&^3_t}o883ʪ!33M0q-5ɩ:=kC4ZmZrtbN ~]6\1jT JJ'n+hjg[x0-Fn܆aN"o)LSc\U0$[p[}\ϫ|˫feݤ5#Sp-K_m&Yħ}.J6,sUKoow`<񫻍n@Fv 9~z ܰ:q]^c\i2W'RR[| "qO6U`?.8JAn !¬!k AHS$Y7 -PU̹_g5:JfʜSD+Y4܀}7|mTOùz&d_Y:U侕]f4UҐS-0gD'vENLo1^x`<(.jZ[x/YT9* 3+w];++UsQ !L5X *p [gWGd+)bf ֥@E 27U 3LxQ*[koF hs.-8XC VnF.ԥ6~RQ!mc+Lal%qlySi{@1:re ci*$$4S/)!dN.6J̸rںg"g>8 y]e|bVOƺ| <4 `B\{mpFvq.VbCh?嘌t pYCgR /ŷ&`4j:Ndc35XR'osFfq( &tG.*)؝|t ra߉P*+tBnv'1;t+nKJa0y*L:-SNxNj;|36&$~ey֌|oCkIli1z)1渪v>N\ qo8CFĺM4 y SwQbnI!@F'/KKq @~x'0ÎW M!F z\~nrGQa񼃱c_J4E0Y;iH銒GLpw=L4[.|=ZpU |p 1}qeO)2kcU-+ zbSnuHG1v\h*^V i**G7ѳ $F_t/bq:b( Y&J,M3 RqP J~]iWY=3:ۚZc}E_0YbZ &9+ĒGhgy-' ÙRVVy)Z1ziok\!z4nc=hz%Ηo-a'^VK|Mfuup.XHRnE83)hPPxmǍZ҅6? O}~ 3.՜21 X*pnjmDQ*>ubdA@gl5jp̑ӯӚ[˒)"O7\]PK[iO1H?{,fĬL4S0yJo=_믽5y ,F &Y6LSw/E$ۓ/< 8j$x#ªGfq+.$F[}/F6瘦4d,U5r'Yu'~ٖu8%|c摢0sQ[bgrpZ9i\@XgԇC$;tAz;5bUT.2xѣ@d$ԁWUKYeҔ%~b?  ɗ:Rqi83l$*.p&ЗAE2.87Y {=_+:|Dvfm,c悫}NZ#jc*VOws 2$Q ` D9Ů̚m<2Tz*2OM;gNNT~3;W ZyS @~g>(^Lvpĥ"3,\ ~'oQ.Vv}h Eb麇o)ߓU6$K4N+d9x*zb"hX̬H8KR6$?B3 :ވUFmO ep4WTo(x8wQ3CuM{\:)%Ed`+`oézT';%sQ\SrvWdU%aF3sxҳyc14oGL;*۴X0ܕ6Kj?R : 8u)۪ssH2`@ͤUh阅|KKXH=:Yn0#IaR |k]2!>C+F:'}A-lT^&=7 (] ;@f9pv?zlpAY*m.PٓڧИcRd&wK;*D󯗤1n΂)?^=iO9Ng|~?lbyl؀Zi5] PNۮImi׋[$֒;>VJ;~cG hOo8?@~ /:͡=~6,XB#&;B'e$_g )3QNOBP6?ZÓǼq&NJ iR >pPf?e%J`0_/bDo81aj@0Sue-?2ēTkꩆH7]r.- F<>"{\j7I7N˰ȦAuJx+ 0#y,P%R8˻Lr!T!v3JX/ 4Y2L l{ϘJ$t n9ՈeW0 2 ܝrdd(E:֏˜Ȕ`]+MMg>%IZ'sˇTH8*jtɿ_Qa|L;.ι /'&ݶͧr5x$'>RQg,MLjDh'2=3q8jbxhU$dSDHdN+T;rH~x-۔8]Ie|KM>ƶ #UDcۗF)CYme 5jaxX<6G1S aE?[8ړkL,;`ǦQz2AR5)F2Zu|K<) [͂)Wǻ˗Z8nP|rt(' $;!Gs} (ЀJZryn ]5^]cP8h?]|H%V0u cZ\F%X;f:ĥMY v7PNPv ՠJ,9}clphT<͂,|`@Vh+.۩t-Ye.(2C+iE'$oG]!hz}sI&taIrkFץ$T3uqdeiO( V-eeFAь1rR~`@f0FG%``.OkeG{Xa[ֽ@ޱl"\%'~Uf5LڧBb{no=(,E80i`35oV̴7fz41{8rJ3 7r2IEsyqL*梼}`lH8~P:D BcJ O۝&Y/TgB68Ьn9'ӸT%\乻TP)EjDIe:Fp;5\ZҊb% qgI"[$q+\9*ATěKS/C2K;cNGLA3s;jȱ 焁,R 0rd3GuW)IJ*syS33ظ+0٨\\ ZJsOn/j MQ׼ FcZP%nhY,`Mvv;ܵ;YfspTec}K f֭v]Rlvą&S`d|"'{N h'-fwXt]qi(vτS]V1r}K8RUh-TȪL;LjN>lQ|A6I"Q]h *WI ż k~Qil;.PctA6a%t]|eGZ,,uį`Gڳ| Q?P \\ 4s Zc&`,xYxS.K)X\xa#.@8zj;Q.o]Qo#Ä %Їʆ cm6}s rKxEfp׮Ÿp?M& QEuJpq-k[`ϰks )rPݻ(Y2>Nw- ->j*$%hl"uqLn؛mĬ݆K @fT ;gvf5h@yX|h ~2v|'lH&fЧ d X;]8Y2;B|vBrmVDJInܙ0>XuD1ؐP&2?nʆd#M)ApZr6DVؕ1ϡ4W^'|ynZ1)<_UZ$oZ7_Z-bS G!uC0u\aNAHʄWjRzHȾNޟD"7׎=L 9eU{WD]0}8ז ®>vW|M $سXńf_`oύJ:6Kaб~fYI#? jed|GI%uu5X4AN. 놿 2:gzgf(*3s^YA/8f DwIN ]m;cbaOb(\qPΝM6Vvَxs~2`^L*`=ٷGRnj)7~o>[x*)aTM(^eV=E=#\ >3^kuZl@bܢ(uCQ]u`[BȊֲA{M%CawrkȷNA8E5mKjJL Wͨ@;:WQe` +:{PU&4Iw-=8;VAI:7#e9Ϫ Nm1mpC](N~9[*F$F`7߱b<kx?Mv@WpsB??֨󣴦o=´GRV6wMxΫ9 w#-dqzJTN~nmo^ -cxO,v9pW9bҍQȩ鑵,m隍|kQ)I ɰd$[u M*<9m1S?:d VRfſ̋8dn`GaG2qwKyYѼ;HG&и tY6#R(_\D|x".(VJ&m{ftcp07G:K$<[^,ݐJ!W' Q ȳ'A`ǻY~|vW>3xZ2d]$0}&p^V8D%? *a^; 6Joc20o@a8 UBn~(pXiic Kk8)(OoBnxpHiN̻;jcrJ~ST@bK JCP`s+^/즮8Ta4@u<zݟX`B-EpWD@,1>;,-n>}Hy$ps?/{: FjIj)vS濦AZᄓ1p2TްF͋{5="B%ٱo+б:2v/`.dz!*鑓csܶ%mWrоC D Yy\%B$0bykm7F'/ދ&T#ɘ*ҚLVʂSe<"c+|Ɠ0WWf`Arn)7< 0Èx<),"r`5)JDtPS?%-[s<2͕J`!\EK@f*b%&[zv2Fez5,kxݹ ^1_'6P?*xO&1/Ngydn^E<Ђ>![isŸơP:"*2J'oW֥W*RzLJ0\x4b* Z G\dfH]+ԟR筂4ѱ)a_ bA?Px;^] ٳ۠ҷ[㹔Bx'e- MSƅs~:*1iǩEI׊6Bw΍4hJaXcG]ɭ[uQ'.&T9!iu[ LVMƒ6'Sc Z>q5, iCU0)) Ei,"0ʆi`::!y4H OeLrb@fxE7gR43 S~gnOVy")xl58)dO\CTI2^~a{jQGY:'9 b]VA:ũ_B+5jp҆])^%+ADꄻSⅇ7$gThGNpΕ!x)%3\Ʉs2ic5ڊD)Td!KS!]t)Wm_p (bّ%JR0z&i<I6" 0} -.W]n$gQ,6ZciOu-Vaei Ȝc twD夁H7ݑexV2 [}D߽e_bIvpme#;O˵ClU&pE-!h8A&t`ZDOʽk.6U_8{~U;%^e?5ofZX=nwF"qŷsZYζZ<Ű~͖S 94 5ba9]QÍ޲q(pYsƧZ /['&AZ$W O (qf== ]-V˗~1&2KJ~@VHoyRN3oUbVBLnkS3vvTJgv|[8 rRXrLh3{CA[oͶ,uN蝼ό Q6˞}1[C$<x{wFF"(KC󈑵gwxGy[*!w+;X"48ѻ+#_׶|g$Z־ߗr4)֭eE~Cf7T@`wBzR'#JVH6hB!I:UÜۢ>R%)8ƛGC@BOxG=jUMax>0D5@3T-SI0 +Ϟ]̾>zU@ C7S%mӚw8䜉-7\-g^7EsJz,F tf*wWb[Uߜ|,Ȣڒ $DSN!h;j^/5l^lAOrF Tos e\̦C*\巡_?&J6@D Sԡ_!7nNmxҸz8-Ȍ=pe  mg(ԻE7c7qf IsapB/Fw7AY AawX|5y^ I aTuYyRM !TPltO6!g)%!h/Ȩe,:0:3AIH`_R&|G})V}uҁ΁b^GڍUi*,}TR=- )Ƒ]~oP,^kM===+1^ bw:^NOjOkܩZR/EM{ȅ3S4Vα?ļag%83ϫ{胪$] R꒞t6'hڂ]m>k2.945UdF.e 0Y-kMQBk]x|1Hư#-[O?k}6S >&56 B )#q+XI.-`OIR>,"B㥈W$񥝕@ k<}6稰yOP%cd<"k~5Zw]Zf_V #v T}K¡M tUC3G}3C⟘q^@]$,N{n]243u%V(gXfI Š unBr 57a/p]U5~lw@p0be'BI ,bkw 'v%p.@lz0m4BZ)!DJNcUAMY]$WIk2N[LE=oޚ9~f;{~?YyM09[{aԙPFPgHv0҄u7xR hH ŵ &fu=>OnaC Q&F1bV{ *jt.@cqʨA'Vxq +Xݠ?(Y(Ut˪qt2ZRX;`څnzƿ7]1 ">dL2e  N>!-%SvnM 8aC1'e1XfYG& &^s;+ CnWBn؏R$8Pg\ h`h3g.=V42WoAG˞8` WY4F9#+sCN!a'F~>b1P7C 4[p 'pĢzʚgR6moQ5DAc0`;Fj m}Jt9ɡu3b"ZzF<9^pk"q"˹.{"?g C"/7{ ,}1Xivf ݟb!Kσ@UBܘ R&^~-15HHC'/GXB{gQo^3܇(g\ä m@6PY΁{gF66yɎ$Z{JCUncմaȁ*Xq k_{YGyO :vnlzaMmf'+twIC+Ҵuc &1a{^+=9U@%UV cq(R^m3@nA%1Nd.^ښn*%KSyFr"z]4IB} *'-3v!]oO۸UVmGL>L;uHom=9 $LQtn֍|X0ٞΚjg>5FIcagI>hm#6/Wa:]W=`M'Z|En7j{XswkkhHײ($ڗYً4l/e 2ww #kլE׍ƗjU]wpM͸aVtQRs uKRan4F8,ݯ(Q@Xɷ\q+R E#Qx 3Nht+dH/o 5ʊ8tS0^=]~򟴗lE2j!/JW|jnj3CT;2/eqyQ}uUcuq^퀻bRNZԟ5QI4\2繹=t7fxyrD6mzy#\qnTG "=JS5'Ɨr!\-8=iJ|y jә .W7l5l)O}F9^)6@3~!܋Hwʓ N ''v XXƬtRXLA?B-lE¶G]nG#\BG2="GL*;84l7aW:(8}]S]zt i8"D]} FjwqSY9ZXrQ_}N Ǩ9WoڎsnNE^%ї}Û1ꁀ JUfu2%_xZqe]G0Ԑ㬹]3#8zyBI]0ua 4ZiDBJg N4{E<^EPpljzDzXStK11wü#,H$+n{ķ~<$Y EH0YӐ-a旃d67 ,ܱ|:X\^j3n)0IvRiaձߐil}J +(<+69($_5.>;$$3|-zRi+ \bGdq*#"y+2djnt;~ itq6b_z=I@ &-nWҮsn=^9Zh0$H$u.gl@E %0вʋ9ZTL3z$<ٖp~ hMASᵪ.,W]*UЏn48c#eVVxRuUoj'rXr5]}L0+[N.eQcE(_JlBҭ$rD[;' dźиJV\y@]Ia B`'WjrAFCNw%nlpd]9^ikJؙ\0a[0Fj.VeT4U5)ucy#$O237-aK6K4U?>([FkJIYz 1 Moc'p`s^Z 9i% d+ \ IvbN8ĀӊAQ|݅*_F)!ڠg\^ڞ7g`tW,ƑGhRhJ~Pg!&`4x,mQ/֤.N7Acpt "9>Y1҇6 [@\Y6T kmR0_E*→ǑRLj諥 HGVF5yҥRazXLΡ]PkKgNϰAf|80nNCXG^ĽaZE~S)c ;ǕZOߗ.!ڇ` Je,Ctp Q#t [-U5JzusovYd rQQGkCqgMt>5|"^GyWj3tL4-Km¯msVNqt7l!al,#zf食FrvgnUi{Io\]9lSIHHX{iohU ޜ? |]QE"1Gk $n$A(RLa!,(繝D=R}J'Cָ"~g"gBSQۻbL6*Wu2:Sot&ME{ѩW4pM&n_q3淧^pUJKΏf?sڇNm~M+0_W<3gB|[lYy؞e}1횾d8~nv3πJ890;tyV Rb;Wp,%mĿDJ)FI aIm80ok廄1qP'P[3RGT<vУEä85Q=h.'#?Rs*b'WE}(z?BhܭG"\;TnC1VNe})ѩ6 ,ubݨ"$+E';3БmLetU É\oޖxQX"7՘-:o8_rVB}R!xM ~RoUE}=k ۂ!`hgrΊwEʣ64r7+:㦈!bwe8PW>%ּv;b J;;)AZy2VB $-cz$pدKfdaU/+R"$LD~g9n@4dWPegUZe gx !*r1*N\r89Ňy,rC` b럍=z'۔Ɵ=Slw'^Q!ν],cZ9μ9*RZhٝO3OV@rݠNƚiook\1U Nʏ8E8vNZg}w¤p3Id` osX&?n;8dۖӔyMXP///2!]rZe9< bͺYӇ9+2itDm֝2"aax5t%X ME ǻ2p髋Jm|ښTL)Q=?g>_ëˎ7HD( ^,u9B.^ߵ1'F'k)IQ4)zbow9~*SXAJC;pNvM :Ɣ%`r1<pZ$_b/+W $$n-dZ}MpG/㹄MN)"cgқ(]\nrxŅ ,` sԈ;$)0P %8 H"}E# {gO#l;T6\{6ZC\WEsĆL| Xw Dlȱ1ITתcj=898 9}}53XĻSG_뻦D7k_(""2,跖s _^24? 7? sR}|5O-{YC>oAyVo"]4e 15 P l—ÒcKѯ2*5^''F\6a=+ZqAMQDQ$VkcX'ew3PD( kB9{yF4DOkwK` ֤7&rM٧k #޷NJ^U;tGN>u9n:z Rb%OvhgUZhk-)g%tlFϘ^чT萟܆|:CA 06ܳ@GdBˠ/^BY 7!@ʓu$ {oF~ a[!)}C'l<"hC&6Hz|*KIof16Pv`b_ iV MKy:YOCMwÞV}G?c9ǍviḊ" !5<UӜn;$'@~㹒 $3D8}kS1Xgd68*X@sO}h"u*uL&5 ~ҋi@5WAx|5 ?3pogxݯV2I?Y|A$so.NE hs|"*Heț.,&4/GLs ʩr_\ažSgK`"^p`m{8VאҮܩB4;b:<UQȺYzqx#tJ71aVWZ+οSbv[Ie1䉫r7gFSPG@|fgnYCnоBd>,X5T5?GpvxSz)H[M60 cH <" ]Єu瀏HqǢ1/ u'?heE&sܯ=7/DNă.RtNZk٭ bud#rY+HYYwۊ ú2:Pf eYܺ3'zx3lmhS˒P] "T,SLws2\]2KJ$e sU!d%J#9?XՕ fL+|1#PaNL]zE(~!q X-<=,JG3uC"Gj:L}Fm!kN@)J )|w"RRhAYhťs6JB).T"-vZ72r7*8R ZܠΦsU%oGѭHv>rI T*IlszޫVYlnGsWsߩ>u$(cIL`Io8a 9U+ jX`Ztp,CLVմY ÈWɐN8X(I$ed4jC+~SYEF3D'$|WDjƨFZCx $qvV*}q5jY|KKn@ 'FrN)p 6΄D6`""U`Fy_69tAw~Wp]Csԓ˪^ܚټ{YR"~!<6\ϱH.y_sZsӹnݱa\R^ejs(,S|l|sAVbV)kf-Jg& á"P^'P}P-tBJf5WY 9BC~ӝL@eW DOsF)͍e3: 4Iwa8Q5$,ur1_C'ʊ煤Hcd)bc DK0[=oS: NQ)o["XT^QQLG/*fS]ULA) yy4=K'6½x mP RkX>US'57ăbR7gL ,L2 dt㽶*d]2bq@H\L$ꉸgFW"k)yD"ks5btB_tA(L'+E #r9TEĥ']F[Kgr"TP 3SAkA&v(?r dŸ)s.v]5R1l~9U aeňnñ5pɘzbǮciυ"l)铷QPht{ EW)C9~}\|h!?zѾf?-3iz&660NP@ȓTsOo{bx ~L š$zv7+TI,ڷĜe^W.s`N>?aY3'7]Bgtp.b_:Is̾ǑCm#/h|з%1!ewyh'p1tÓǠwfO+A*}g\h(^wpqW; n❥WFFG1?f'KZ/I染RM[h[G;-ش0]3rrKcY&0s8&}?Qř7@>Sλ]\. b89I =s8=98Lazt4_iG~#Y- =d ֯ZM .6gN` (8/-?1:v6L0JV\-#v;-BHK2җQ<HM{R7ZI8 kiUbYc*-t⪩B+ЩI{ wSүum@6DK$ɐ"薱?-qƐ P  +`?MIYTU\-eb֍p+_`Y$MRv)?Z+bGiTˬ7Y2\SנTED7FzՈWܯoըKQ"bG.#[ 7W$$X֫ -EoRRS Jm1)XuK6ݜbӖ;ccX5gk`ɤ =CE_,c@IJt(mUikcN-@Tklvt}(.%T3g$Q #l(90h5^_A9d[YQw|󪋝d<=yB*3qwX܃UcS g+GZgrQ'''( ['`¸`R/boho0漛PhWZpGz:86 zyfYJ'!;DyMnW( f%)zZhy읨VzDlokbonwFՖ?¾c)0TXK(v]z"@T*#U"3㌛9"q#6 1}U A \E^}2l^XrLIO`lrjߓK1TpjtC 2Q삂`G }dǡt8'PtFfV*ZVED4|7u;g\-jfy= ݓGH|IAujR3pq8YUUP?гjIdD]mxVp+R+1uao:'Xo&[(i.r+ VMRgz;HO#̆,\DEsM䯦0jF3z2ܫ1,#.ΰ~M9~ITfeK/q}C㌮$MHÑ Զ.v{@ tn]=F-v F\GO 9ԋ? g֘]OUGYVK a-XUfQyJ$ІPQK(<%yg쑯zf9szx nfnЎbEo#1diu`T t/bM<Z,ű,B\Vo/1.6 ` jY-T'{r LC%BIB(—! \jazv5֨ÿ|Y4mQR|饇8'MFy`>|qOSS5D; )cPHU,CR)Gw}K¬LlCʼn^hHWVQ߮ Eu5H/G~[d\Sifń KAuĉ@%Su{}JQpyĢRF;y+ڟ/DNN|` |6;zwV\7y"ULYqibHl k+ţ']:^2 ,Ol+r%[` 3# ]+SO74~f !NjB;Vin撹x4~w5L~&"]"5>}T؈-O a y:" L/d,;@Ixsűsȍ o'%qh3.|(#8>CIfBKV"fz) "KVگm_U.buѥz$vR q$/~{' -.6BIEe }ʦ7X=wnW+kʭJ}QЖ {5hiG7$\ g|fi:rS do\ ;RhO9%^K f E{kH{ͅO?]hB|Jy[jrWTi Wx"bjZ^P'nD~Ɂ?ܒ|>%=(?A%u:bN!p jk k+Hq:  we8_{мv/^qROds)]m ;_><vs.cC߫ .j s Y}ƚmIۑ4|4;3}^Jg6* Bb4-ޚY &^هNH(CԻKofj5 $aڴ 4k oHk^Gß a^>#!JxR/;/-E~y3XSfɳAO:G21f/Cio>)җaQBHi%޿=YyF-IVZ$')4|5Sybg$tqW&IJZ2N0aWW@e:^#`M)URw2BܠU܎RL̜\,|$Sc&N񄑟/u[j,=}نYQ4m o۹J.0/۠$CxK%]9+jLF6Fxu| 8\KzuPhF~dzVI#NQ^*1+G=d#58\4LHyiv)"*>3l4JtɎ=Q'XL8 x_X6f. >x+ vj 'LqD"xۀR?@+M޾vwʕgi\qI ^ě,ɍ}ﮚԣ;;&yr!e)g ]¹Xb#5K.wrPw4;S*>eiUPS>=C>[ybxKʻB9i+sZOg VqiOpt{.m+Qcm~ZFM3 "F'f'!`X} G?H~=d)G߽H¸} }lUry/ulZ!ͧjFW塶g>v`zl'`Dq6ET8 1Gn8#2vtˇۗ4pICVW83g#V`'H߿˩_#[;J|񩊪Hw tOULL8 OXP%5zR\~` $g kX.\2 GCDC$Tg`b[Q#|{~xui=PBP8& Mzpax{کTK.Ӡ"Zo#ߋXiM8$ƴolc!B#:GDZ|Itc:DB!rsRT/ H#?wc$Y7k.(ZbGTl8,I=Z:TZJ3;16ڶ0*m)KfUZ#Je̽F뼃@{Pf u;h{g2z,64p=8KەQ]] b+naM@KrscI+g\#߾~µk~5oGs!fґT MS3ݛg:z|"U©ߧs-\ '0.ֹ%h* ~6^3Օ5Pbmh !J8&+Ƅ|vs4A6,z#z@۫Ys[K"v,X{䞃46ݔͪoh< A8atDdO)SYH6:k#2J Oc1kL6<ΝD>nn8\`:Jq򐨖^y=TunξnvbxF "i5y92zuR뎢r[6N/S@9!zr0sGE%6K mpBqAXTr?JpQ6N}vM y j3L[Q 7̞=xd@^}?]}Y8. hD׎[)fLEm؏bJ18 `o"~7bBΆC̿ҦE8`\m:냉+u(g%3.Fu{fqaG=v%x ՋZw8,*'?cJ%|c=/d4bu?4|)2#LpmS֧ |ѪbO#j"8_*ek^]ݹQ֋9 iX4Ad~nS4}C7I@(a!>G^6#\1oX$w+%AX@dhlF\~Z+"`Gݡ>V%2jm͆]$6}uET$.OS)*DxqF]7`)) a|5(IM4IMRt4e끝w$YiyRu%e?^n{$-eyf])R<"\|jR=88k (hN )_m:yy3\ ֳw]\Bh U0_;mKQ *xj+eMorF9ܗ]<>J:tS/S٬5 RП2,su>k_ͭ6Z=ul {Tݚ/A3XtaJ>ζm# kHHߨY] )ňg>Ӄ)^Mq`au~kv տ!^ɠLD0@D k:-MK_TxeK T0 ه8$" QhG<5*Ho^]QìW J5Q/E$n熱ݚ/R;IspO1Ar:6%zh1huMCe9V䌭M?jp3DpD[K>o_Bi;=sO&#|R!zH ,ڵ\mI#b`&jm]$lB(l>9l!V!fo)]8. x`zXn?a~gF_O͔ˤ|$w|*1?aDhzCUrk !|X`^|'*A9*PXs߈'3KYm*!p ↲Uk~**4h|wkL@ocb ]G%]8]眙Cwob&f;\urHQ5SOK^xD$F7CL@Ch5@IH1VL7T=c_AIt4oj }@ 2%Ce[od[ r )"V+hrHoa)^tTY` f%b 6TIӣ޳Go/lo䈅(߫D#%۞`n0zf"0LXd% Lx62Aۨ1אr0 M2ݹƋ' 9`ϾdE jH9i],XKD|ғ\''‹Ca*D yFIHBl;Tar5#j{ ˄vN0ΝX=rMQPU iYfuѪ /վLW*SeQ%oJBb2*ebhf^sDn] I͠I0 5يA1BU 0[dPHv9i;Wt" Iz|wGZ)' zNOu:C@4ɱ}$`rOl1? [' ~ߧt .6 wY#ێT?-qc6e cpk[FI oa\>gPhv$G:;UP سP篳Pu/k%Ώ L bnAr-noPZ. qp!D~`ߌ7q"J|^705+K+GiD툯|}݄(r{V{>^zn:).:0akRN:# O2(,Gܬ&AFuQm^(NWa0aVDZ@lL-G0f1NK*XoItC Oj9"@4Jg^ЭXhʩ@e/q_v=IԽ^Ԏ&k#`O.RALbg Y]7/eq`F*=pa}KM(]^M.K3[Y1;nQ/P Ӄ8$k9ƼtڈTγ^29e 㕱i}zJc=<a=N3P<سk.bjhJ _/BH;(=_9Xdb_d!H{h)aJ:'VTxb_If%DṳRns$IaZW(뙁(' .{WX''ሻ&03U^ԳRâ#5m cre!!Y^}0/+>v)[aQˋ p8*lG1[4y EX}:vh߯ˠwZ%_^F F>_"zF6ТYt@ovQC<]~ҍ |a9ߏpy2B4&cӛ\5="[ĴfCId _a 5BI8}‹TWOȿAcnF;&eoY~`Rjމ M| !uW9KU( __iu}q 3sk}`T<?Yðb\m\FZf/=\*'I BX@!8(M oG&:-eDƹ~<]#Qi#a4[e~\m4@" q]^nlz\QZ IqR-[l&&(t>#C=~GK40.ĊURbȳ˻[,Rb"_Qf`UOb=pMf<dgq\Mԕ^}8U{OG~,]S1k76\'N*_Zs1xU[n85xqοM Ubd p. O>D[5TQctbd ,ӈd[iҰ׋˃4W3d9 +R-C|^$%t1&0\FJ Xl9W8lt3<1eoGLU%̙|REr'淉B3nrQ@_ aA1vV$GR@26JkGfd+CmNR˲D\K}[k! (BLbOZYW-Ym&D.ZG ,K3\{.kd\U T ۢ1ϔvKtGrv]#_'W2ٗ< qN,q*sc# F=[8!=ߞ<_{')z»9 UvMBaJL)ãvlj>SUW&: Y(jPTUUVSRLg3@EYjH/Ir-FN#[5T^ [?B^/;O qA ?,feRC40bia:&h{1n%(%4ҧ葎9ƨۤksJ #yAIaN̐Bg{UFl3z3G)kY̲Ǯ>><69kVMju9Civ/ LDlɯUK#zpO4tg.8kVKd/n)4ݱwu7%2 ?7#+:KR Te_$5ޞ+F%P¿sa7aW!K(C1Ti5 D+q:ծu26[1Y,ů߂P1(.[ i1W^OJf.\!K hy(=4>0ӗ7EZRUPӖ ʶ]9+p6"Fɰw󈎽6l7˯pWID9wV6zf-(cv#9>]);}t]򉵭ޓJ@Ojd_5zsA.R-NiՉgRSRb]xstg LU1/W(| &=M/ E\o*X]ph t^ N?Q7"[ʩ bJ sؼCkMyE*5@þ_ 2 ']`$*< OZL<}"z::؞}6(6#ա9GYF#1i4ػ̑>xEl#O0[ED62}2Nabw GL۩(6 qLM9?5oSwQ(ߘ|=+K}?r')5fՑ JEKy Iڂߒ8qM M{^lDډqlфC>Y@ H+qZc"`X|6ޠ3A! psCf*u6 @4a?wdeLy@֞M;Tdmp=x'\+H<;|VeZ8|;&vw; ~QA% GVbǓV-s Q\ܻMf;([yLXpAt 'kQK_8'ǰv^B٪vݹfI^#B$3p+߄6]#KT 0 |X&כD/"_=QL~{ӉS 9:Lul[zmqQ2ӥFPCœE`#"$C"5ᇒ|{-AD"zu-< J R g+гt`iF.*Ay*H4R53#[\N@S*w-ZcEO/(plo $)%57+zB5ZB'c(0/q3| V,sAÂHScCCi$:@15L>s(Kc5ǭp d${|G}@ DH?Fl״Tz8E!7ڊnچS5}xߕMqbktv+f߁۶3Nmb%hj&P!VPc'=$Eve|u,%Z?*u@DiA vY"ׯ 7{Ĭ$l]uf/]zws'gjp$<-n\ _$ȟ/tdwPg.3Ù.%VnߎkհAvx $g56csA\L$]~z'ֶ+Z ›2_~X/|XCL'H(`TRxP/hVyB3=Wg$D!3(vr:2Pbm>XLjnkULq} ܠ&yRn+1Rl:Xx˸I|CT4)~`[:m;$@zCb]zN9eh$υj7EcSJtуx^孜x$%0 Rzk <J4sSzUI0/Hv6T,=ܺzBa3/dr:VGCrdA**h@oS+<P L\X3bCR[?/)ɚ e`:Z[/=+(e'lF)d]TDRڣ X9b8Uҝ^1L{Z6_($LP2>ϲiy?/AٵvUҴf-Im|K{t9 9̐ˀ`Lq1ZUQ{CRˬ}l "IjB8B0D8*D>J3Z>CfXgӿt9kp=x U@rhpYIivkS] [;%ݹAY0 h!g8.5H򥻫QNݲ2|t3bc2 X2W~Roԉ#S_ԬAXV\gk|bryUT*ޒt%Lɖ&m-eR 4<5^i׊,ʬ!).8ġ! ˆtx)D lB3Ş*kϋ"%?夐G:kqou$ S@I;j0ٙWw$IҸi,_>5W>6#1] Su䧕3 J*L-k;F"3;7PZ{o8A` 0_m9ppqJm1h=ّ+@:>%*C8ET(ZnNz.ŗLSb4e[wii**͏NMȻtqA@ȆbjDb8knv1&T%ަ3|N2uvPK+(D5'Mj^L{F0{:&ID攉w>q'nĕH*d]d9\kǎIfbGR<6rsgNsc+U` =ֿ FQK5+$A5sv" QMBDzG}ڃ/D˸zLtG3d6u9k/;eo;v9t\ŜԯA7]!ro͑hPrOR ҌN`a땒*Ϭ@[ӟ I˿ҕ65@> ~lQzQ<4no蚉sAuY;%- J^@!.ÀJw2%ڷl#K*̓%ӓ8: Gu4a-+6{݂I_U%9$ZmmoCIێB{d5pl.%_9؋aѭwAO,$)[C|!^4b3y7IY)}+G) 瞺5{LB`60FP; `vC'cl^J0ˌ2N`Kp㑭=f?FW.w`vȀg~~C~szcYO y%tư@?d7/郍7vE s]6؇uN`?j8-@a8\x! 5bئaU>a>J$})M&T3"8?MȆߏ{,^TUU-Kp#V54jt~kiUm*1v4DA,'[**--䍋fs /R@"+v gT]\~"zlX:b6!żh:c]I4c@UGkn6vkKУyc kE!U *"R?MRjoNެM\,涸ӳB$I5,+΍=|ǞGnD4_{IfT&B4F4fVr`GE(vlḫ3o|^ Z 澁g5 $bVQۼ^LRpFoc$ׂz9|k0h,/A6|4-ZLDI3r+[ݶz4WNwF7q*h Kɖ4` B"[KC,$- (Yo˞ tylu8H  Ÿc5F ) kRU&T+=|,|JBaxOu?df^H \0UaCtk>fbo}tRmT}"%GGE(PONz Nqg*5;t-%%R3#pOLҠܚePyCF=w϶?a^U)r<ū;ng(X[3G Iw'{yi.f1ч:*^vʳ"!a֘No+lm(\yu&ݮD B~eiu{EZ< 1U1OZn']l{{\ MWL0_=-@֡7b0$2aX)& pmp2 GRT<}`K['"&B`$o *+We YDq(ak;QdPE AED.M_Ю.8 U]4>!W`A9Wksƿ0IPu lgOGfbyoE23a>"7Mwl6++09JYI$4J Cay!` QREչHR8:::o%~KE-#EGl%w/EܺWSkZ: ֏j<4C\hxbnww39r0={UQ:KL6B 6 [ur<9Y}XUay438nK"LMYҍaٸ͒Ҙ@b@#nV%̪"%+V`൸[ UmcWzYl+4PvV}h,$ ʵq#Z|Bٖ|gh ?|z ⪅x~@Ż%ږ8` kf̔0vE)N ?8SU3x*n|ߥh)z;[)<>bUHg?EL(|JU9 3(?33w9Brιp(#瓨l36# dvܤQ(F~fd3K#b̏8GaMm%k_ד1U$.]Z^2❓dٞɅV{kɚлͯ1u.^07 ˩ =11DD0|0: Eq^GP&EЙ? Dp OTʫb@e-62;S,% xj%D}&ؙ/9aEWW }+/yC̨Kʼn9 4dž9wt-c;6 kiȶ'(NLycyQ~G1#3(b5t*'rf: &mH:onEt#qsM R.m5|òg08)1b9Z"}ܗ_`DZ8PΆU^h6Է/?ԫ4fzpd˹U=vvZ4<yjӊ9gUeMk` _f _ZK i}Ob? uP|xbiM6䑹y;&4s#Ө )>ѩ,*Y`%sH\"TlK tTG=TT1Tk5cٯ mـ=`@}!ћqnL%K,BN~E_,#֭q*4iYlpdW}pqQ!z+j[9iB$KsҴAy 7|TvX̡g41ʱ"Lb$QX} PEd)g7\Ҵ`ۤK-0_)N:zN|*:v,m~8v@k3Cz 62} .*J8d*v^i߁VYw`/XPҞ i m[AD]LZ)g'PRa:}S{/-. #A⡠ _C2: *%O{֮Q?Fg&k>QmN=!6h}5TH_?s7ag#C#ܚXEL7_ (O_t_  4-iQ|C"U8}|惡r3H1Ʒ֑bA>_lȡFAY>4c= -V,{Wȉ(_%F;`a-X"ȔWˬgH 53i%-N" u.5[Eiڅh"־_+ǹ(}ȣ 0%U!ssP}/Yf@VݩٓvJ *nԦ 瓭1RnN73\&fnFCOv,?CæN-ug}. 3`Fq3a`rB0Ͷ4!QW,6橑ǚLCQ<)+qiHYAGDZ>,XUtkS3 p MQ b{gFh+]Ή@ꙻ8(9-?\z&$lk81]6c@W^mɄ8d, sY7jtVHSQF*pXnw֌*"A/]WuQ] "a"Xnrvjz1i[/YF Ύ^W~LiMpMp}7>Byw5)N3"rp<{qbvhu\7'.iSz* 5A LVtlQqҸ_o GGi7BRo`gRO8aצmn`6ߧ˚oOB*.=RHpQ0 -N%5yK͐^ W&GENm4\0g8Ê3׋BlxQŅgIN.fc8 Z E/EOKdGsϓ(D*x VjÄ봉l])N/͐t[VCQKzn<(c J>y`?'19=-|D>]GƞUlbs;.>n6xӓBb iw_ʂa?m7.U>mL ѤM }v ۂeu3A}GN8qڦ*; hɳawyHA989lڈ%*1 >/+=L//~EzUu+tޮ5ôPyYkq<:]#hT!-ājwKEo2e 0Q? RڄM,9SR>^3&u=^i_=8J䔘,D$}rbp:;ɖghv]Dn+vZuCiJxrz)f"%&Ky `2ݶ%) 6 򠧊v?=5ק"'&t R N0%A.w#\qΥ省DsB Fa@;LY9$]`(S݊: 5.&9BּXnΈFZ`.2prhd2掚y8U#$r|{aaὓ CtF!F+J,}@ 9$l'ruEc"&BxD t#}}띮їOXD$}H,J%֠u''mppz5X0cKv/9=ܩOe1~ӑ?W: T'gMDO11ݬV !H֥W@|]3P``ߓԱA4g*hne ZM+x}[\oW}0Y2EMo+J7ʓ(?:C.oІwDƴ VcVt *_Zcl]GA=ep:?1OXx܌u8.+ :;1Iy"Ǡw@axF xЌcZ &,Ԝ3j{uz#LvxV+4%ŖkC^5,\PC}TUf[pL j0Tq ` Ge!\t1!u׻ N3woϲ4My9uCy˶2) JˋμWMX@($T\_A'2M{!5e L[zt3ZqZzuxzF4~.9ߪB +p z!`|t%Յ+?V{lyDT1;3tӎ L'o#l"RRd_T-L a!f&?v ca@ܗi]y+ؘqU _=JŦ;Rpl;\;~(^ʥWL'{.u_/`N`({,oslЊG'{ v7Hɥ*4.@-f,FۉydE{ ̑M@;<z_NxzaAj>]͛ڷNt{jg8dxj$kW4a\:[ޡ͋ s@ ftX&Yiqۏ\/|R.Xf}mE6_I05xO<(lGYYǣv&ck˖үRy5?*Y IM01eP^XKr!gcs~< DXY)> կ7~\M#sR?D7($: `!#nSD^&08LѤ.H9B$oLf1!Ǩ냘uqˉ5 ݉j'βsm[XE?Iwd! @|Rk 981j ͍ @^|j[7Kp8}T|`E袘uՖӅk\^ENw)a=/" ON;~XeEĕjZ[x32lؾ"kN#;"%?yo{`!R?F`ZtÐJcQbfllPQ4~?c.d0 a²G&w GW`ޣmbGi1"0xj+p(BY#aq}8?3xthsl^HVm6E}8_5Lv^Q],֭WTeI{OW&YAѦ<",+ɾp^W);%6! jA:Vg^":ɂ݁'^(elͶӵ)`όP>̹؋,o2%8TH ]J$H[#kOZi: R+ t>SZԭd6Mj奂zZY.ifEu gEҲ:fYw\3}ƾ; i2FhYU٢-=fxlVYW%HzgGv?m{+^OI8% li:Oj)mx$R־ᅫk4:6a{`xQ!m~5:lܫMQ2IwahƢЖg՚7NnBMq6˷Ll XdNy'nk=MAf Xolήef䲾8-͞K044FYqSQ.C9i$Ng_wM7].]O=z\gjƖX #? x\O^{|֫@Z?}Ѵw Dԛ y6rѱWKZsOVb4&m^qBs&^-}|}{*:T'~5cCBAqR>q)36<PZj1%~}/3L(z龲}͞ \ie o>x7dBJƹ Z.>'ܽiA6 6jaRD7ׄW 771.F77K\s3=)qok3DE_'"zGy8PX,ة/zxR%l^h?)0xvW܋ BfƚF ÁrnbZimKQĘ@`w&HҦ%w Id r/w; ԋ @{K22Yˆ-DPO+PV0(w*ozjq2<790 M]H$.h`E>!af/5 -9KD<_px  7p@h rgFycqFfu gqb.rI/uv6[zSNPl&.75>j}7}yۨ11 Mf T"߲m:^tJpȽُU֩ u;(/Mf&,=C~rxXen%LD34ph)FTtAbߜddOz48A4|&5딏0gOgtn*0--C{ \/ʃHVi<>|܇q*}60g98~hLew|DQ+nR*=ruQVhsFJKo4ν)mwtR!ǀm7ߩM!g< $%b+J(dVEtcYs/H3QYSHۺ)gOpA 74Qϥ!$ aӐ ?$ z{.i!/S}L&5̡] vѠ|ܘ/V*ܘ@U嫟ny{e`#vt:eTeҼ!F2Tpzd52Ϟ>Ҟ~M+3>kl e}gć(sYސ/Ϋhdy[gxηJby^d"Xޜ zZro>n(DLv؃dF`8oxi#Q9>塚͂i@o`_e&]1Ch2˅tԐ8SȽnhB~٩ji{ARgR%N\QEyg%t0nC~+"v/&ڻw)eA[oA!~@F4Eb3Ɨn_<ڙes-eJą{ny^'F=*O+*|ڒѥwdhFLq2*tSo}J<,o3 N J`F7494g* Gb*e悩J& "gKo# z XJp<\ÚP"h`*rQ+9טc5~1\Y^^[Kő¨@63ALb0 @nlo$TjR+ގRqAjol\V4 2X&ח57 S(Bjv̰l-y"vS7+\ӳ؅QΜ#P~=2NB(SE`+uB*sD{ =Dx`gR";$ѶDl@.kǏZnqRfeC*O&y法2-G,&pBs~.{E MFQ:>Xnp3N-c'ntc$` Svל".(k.K!(L?@r['А>Q$TD$BtO.떝I ,Af/U[2|}0ҵR5D2MuZra8T4L"ջsO՘hNMӿK;iQ@1w[F(z\=!B?AW#E l:)'}P^CCc[<Qq uC#ͦ:dd ؽoU-tt0~Y<ҳQ+9:Sy/R T8}4 ufwo99Dp6-A(K UGy>_Ӻh-4npWM.P_ag)&I<7)37(:/ a/qּs!Τ$ &YI P~ Rh/T //Z`[6Yz'L)ܑ(]&~9?Z=Jx/[sL\Kfh.#juBў#2@i_8"嫐%9JrBQeA8 e<.6MD1#?lX#UWɗWё^QX%Wxs%+d&էǟƯVD,XJ:'8ߡmbGxjp kJ)ۥ'eg1ՎNG z\3p߉ s {sL徒(cT._mJw^xOٔ?Xdp#}6\z-)!pVsݣsj \5PaV8㪬[`aB+R[Mއ)*zP{?kh)*%jJ6/b/}48D֡hvoBwKm5HRj\Sg|[4l&hOsr"u1=f>DJRW `Tw<K)>5a7\lzK%č,6ʖ߃I!53Sӏ'wl""ќ2]-ogw;|jvc0-:Yf'Յ]! z}Rn$"W۶,v؄Ӗ/})7\5h+H|L XGNK*]KgM/ ښ,F9t>pnܭl&i୥O\jVji}\$x_b툢y\k"GyKLnF3>\/)e/}cǎl>?Qx׍Xd"̐#Yti}T,U(㯲u!y`ƦzNc͠ܦ憺)5ZZt>EY ($dAo ScNn.} qYɠ=J C0pS3ދ ч4ĖtK[}zbZFe~}gtֳr|#=ʨ59>,ˣmj+nF: iڽ8]~AFOu0_UG ڀA2d1[B-+^uձ7B0vݕ6-wg!}l>b.~ y! uFy y7uQxToS ZҀu8%~%4sNl2j"x(+$T1)+Z }l~|gS`)bhYaMKbv`cS@nKo+nwwlADCcg%@OUȦi (8ZL)9/uA:FCD`$6̩:HL|Џ,f$-;}֖'%|-&¹N)ڦu@R T\S*&J_z⚒bM@ۑm~I˖μ^HI`H2E-+:ha-~mSnnm0XUXԤ>l>UסXnV(kM\ $T }޽O*DQ5^09fvcFxV.r ldFO23?Ɩ!32 pT2.?vZu7I4bB(TxbF.$h؝Ɉĥc0.Cd|ϛ".zu5Lx`9o{z*TmE. #vp⻒mN3"-*peq6U{iNa񬥉24,q1t>҃ޟ]^qfYbcE& C*rݍ2\ʀZE5xa~Y0@YģMoAfs iq3ݣ$ ^#pL_Ȣy%k&$$X, 1zj0Yc&Jj8ϠLr0~zXz/~PjJ9[ >FSv/,y*js.˷L)U`u~A M X˼g ƋDOkE,W= iV$;w&ĭ6p0j䇑&8K̋3fP8\P^=ba'!N0'$>ƪ^wU(OiIqj. Z88A$!eKS1Zq =d]E)Qju|:> M2-ޤ"c*H0ޖJjX ]\ l^& ?]_$R&ZAH[$[m wA RgE/cQ5xl?0 Y[ǟC1aȦ hq,F{>ِͰ96U1kM0uΜA/f0=# +(%7?\p99vh:b&09w'ac<^ B7Bi[+]NҎ?p^zU:7N6{;YVVp;xa+jrP+-< nքBƪNx!1\#p7Fz0*ETp" qo rQiMdEȠ{F@M1hILp ^c8FOEr^M<@t$:PGk 0B;͇˪pWS%w;f g,o/r-pVˉVoNt"0Ɵ/)ƐQ#+-%!!G'W[İitz`=r%TN,rUoj %omnu{LtYsN{{C@+f}{F{A='`.oMj8Uo28uT5,%Ŕcp%P 0 # ='B= pT/x(_ytfjlDB4]1g*X3hTKGjy]EML 427itI [őD0_!H67Mrsǝ"Am\g`Xd`T78v#y/D s(h[!y)`'c*E1;yї.PsRSS~MO\ew ΨV12 a1,(YeYDN[y wT5 ;9sD}"Me]QxV}u'zMQ|$]?90K l0PfzddoȓbkҨr-ƻt  BF!MYwR{32R(l[f~}Itkp̐0gU)J'ef4ÒY߮p{`2'ǐ`^Й5Cl9m:z61q| cHmPNMH79IՏX7ХB,AMj42-daFC^[Fr b,M63TMGb)>5JKj4lqj+-uԕu2Mز>=VbM0aw.3Hc糾Q^%5"z)Z-2G̭y\. v R]tN;8%۷8fX[픐i4aoM)zE^Sh Je͛|%}ә.D6q1V iY/d=+eT$7Gn&\BSZœAJ^bqx͔K%EK "n%~si9I(i36!vSclA ;'5x!c0^鸵#j)8!w ѴaT SmFx.-zMR6O'ec\ZEÃHb fy"0HjJA#ガWr`P#Њ0[al584۔d{e+ HhS]1߀"WPpOb!(Ti(*2ӗJvs ..B!X&dݑD^|*LJi?Htwnm"#>11ayVӃ{i(J҇ub͸ srk!Խأ$OEV]V?mczSdOW7?tq"ZJ-)j"  n{&d4ABCf[蓎;! ^o;jpbʜ>Tmu`$P!NwniӀ[%[Ƹ,/9?[҃vXX@j6w>'i-CZxuTt77H'%w(7jK+ee h "ʑP^5 M{}2TyIEX=eS|U^TM X"]Cn7*Ro@1=L6;"1ox al"cTޜAj P X %w;i Nh<ωꙒ)t`y9D `p>D*GS,a =M̅vh? .V 'XSJ3(TAڵ-+q )X4RƸI0~N ?3mjA|%ߑ><N\~R[ɧRGl,j:+ۥO9[Q2:,{+_?F֫l P#εZM)Ai aޥ_JwՏfr¤:K 2q/bD#l)4\0!_PLF._3{۱OyziUYVEf"5W$[%r}Tnh}^ OA,lx#ؗ,|{\Ƞ'N]w|ԩ{Xi.P C$!Zoju?O`kz՗&~39i,\{}9Q)Mu^ʦć7 b IbAp ~2Pf{-eD.Ҵ٤D]gٮ*/_V+M3MC&q(RiN]5P % Kfl+DCŸ!RmmzzuRrV-JEQI jhfy*^vNu-!'sqnzʆY /V;E碢u[^"vJ]d|K%Bu o3Z?_g.}|x~c'RxNJ~~^F˿PX\wZ6@W'^D:FX=G_kXBb0\M^4?ex 1*mC׃S;D+Mz$K^u&wZ##Q@ihٖM$=-9D+Z\:rJK T}K&Q9O |_VppC{0 c3 ojyZReda), 󗈄ip7#w |)s&IusB"EvgHGp۔"a\b)'|5~,ot-N%b: v,g:YUAPu1ETv`t"rki^v,A|$fL.aW>xr(ك!:Qa <[9y]?QFXXWe/C: u  vcΣJYKÜ$@8 :4V2WBXQ &ldk_Bwyj Q苠b% zve6Ǿ (< T NJ.ѿklpfY' Y;ǬIȇw8sMRt;bv C upq2C̪VHk1ȭPE$ &K:D~EFǪePJg&\<@b5*- ʹG̯X'  A=Ѿi㛪@{ : +h8׹>V3:BSQĿdpJMM֏2Gu"m8I{n0CsvR0voBפWf nvz%GshqE$U_U2h5d)-">.(U~؄Gm"\|(0F<BDy*~v/`r:DJd,)Ed4`~ h n%U0[]ݺs6/4} RZSҨhYn@{(S 0~v!27P2˟(z>Xdq$+jEIMs鬁('$ڵ?=vyC,p9sLL*pHZkys\Xs/:MXbTK&N Xܝߎ9rYe* `tQ1$V?K94m sp.]Q(lam ֮ƭp,h:|#(b{7٬Y{C*> v@NB~bɋfdꌰ) T{E3uB`4/SR+S]}d7zbQH:##uݏu~`g @֟l,Uo$0>M5fع=/{Z':k,~8/ɛBr2FfuoI.׃)rOXKlv6^ qXDx5BxGnR|Tv 5 O Pi 429£\5%,۾ĉlFfI].8>-qɇGVgZSģNRZ )],|Au^c\,) {y!Ĕ'ز7<ɴ `D:b|(:PXۜD ՌJ mruBX`56^wVi\bݟoZhk.H6zP( 5ʠV=~V/:`v2WGEFcVDV_eQ~ِb3E!]w/iANl惾rrO͝w?F\q ,ƀtn7Z_2rq̐3T1 QBZnAf:a&#\=1uё>bj#/(M S eݚOCgfyΤ+zA4{h187[QO04}c|h Mw4=n>{Exy!fX2V1Ȏ&) W؊4yT!Wk|` >y0#jswZ5%HDž5k3[> !:>vjA+*.cNaHFcNmrD𸍍3RUq0k-[ %DuyP 6,a/!rRT$ Enx 8ٶGӱeB(ǹ,C3oR專E]%oQ]V]R45TSSnV1ifOuz=?]k4UI4ّ4+ ֚[B2Iz& qOj+;b(Jfcc"1<NMI/*/45"eco/ JDX~F4O, PKǰ W\8Mv8i[?ĔEnC V_1Z9Cܦoj$> 'pJYNR[YKPw p&l,$D`5&їCp 5װ&ۏgkcσ]>c{օ@ ;hjn,Y4v*t"a\vK42[/[߿ 69EB#y@Z`1C2 X:k] C"+̊ fOo@ˊKBfGmeQI2ڟEQW='_A?otN꤇u*[_ K/c <{B綘ez0jLD95"V0KlX5rؖ4%>81u =YPkl1g%?ΚO[$_-wS乣aK;Zqˑٰyl Wy XKHFt'ԋ(eˤ~ٻ{@{4BcXRi[ 1` [x$ 6u~bVtznJӐy}5^;7!l*E(/1Gv; u; |-+vsj+ U.B%+ךf9?gn} Ts ,5,1qPwV)RޜI MprF5.O^)dԢtɟy5 ZaG@0)x pMW8ppqx֑lpc0S3~7&t(5g8"l kc8!O__DmRCZ–[55MUۦU xT:tH|c-`_p+:E9Mܪ+z L~CS$Ο h1X02ǰз~j_ 0涄dG4NGa"ؑ0q+x}cv);i!B%7lZYH>nNVV0Av9oJjf-I1LgrXKQ~!peŀ {36(ֲέ9)>CeDFXdy `9%Yp`vFw5=i()1e%եeyֶ\S>W8MG~*vnXr]Fǻ,c9`١@Ť-@ H`W6!9  'O\,ZTߠ7_T[ 9)u}25B>\c4t׋/̚$5;54R.Ue+/fXY}~/'&Eٔi1 7VFjQmmU+2LO.c\O'Zcx>BU|bXk#,tB3VrOi^1̟#6G}z򂞨Wa?r cr#^DrC,@t:)U1c뛦Vkp;N&Llԓv)wΞ<կpr}_ZXىUYg7JZi<㐞;ys/y ױg($D>2)f۟üdooy߅T:uڹ8~t.jS4O$h a@o|1=;.zlϋOdlsa .Rh6ۄx<C"Ǚ4uE:qjKF~6CVZ&q4\m4Mg7TszᎭiEja7bM?"_d>+j*9(аuhv y&,FBe)7ֶ`W_nGJ0rŅXsOѐywkf%H 'IԒXȳ j O^ $It[% >5KBM; ~?a>UZ M>v-,5Z.{T0sFC:r0L6WG=\KxGQjKzHC8sߔxƯ ΅?dzq-'5tQo^Ql87J FQK5z dfqxzF":W( 5jRՂR$b%.D7Rx:h#4=N5mL\j6 Azԝ,ʨ`o6}dD4IT$u\$)h O0Z1Eک#̖du_:*@AURrŽJY)ԏ1xGkG@y7clѶ_ IohvUi~`eX g =laX4 St#% u1zFvH{਋-^ srͷۺ"yzN}`x/#O]2]֩?4[ ,oN( z2gscbiMmb%9d[>@/U,m뉥ÙV ʚN:W;K7nأ4O2nO[n83_v=1jO'a̟;&8 N 5\qfӒC38 ;J_բ;^Q|_Vݶ(B$u6{âݚ֒;jnoahV7}Ժ&K}ڏ 4~94'K<nkJ]M <ӖY2dt[~@q4=q|^]q<0SĹ%6Ṭ"..fnnQNK6Ѓ& ~AXeJz(U2]ބᔕUQ d'>',d)]2ήȃ@AW*P1I:=53.eOS PRǸGF~sCE`Doq-9C#aaTiUvGzR&qʉ/$`JƠf|XQV=^d; ?" WhojŚyu_of0B盱)1q ;{y:eV4Z^_|#I Vs2 R Yh:]I 24 TL,BADmstdW/D 7_%h؉{5dܯcR[0i`ѽr7")$vW&]WDl1 MF-"vVLG6`iG㔨0 kl1 @M{5tRӸF*)),(p[}3HkY{-wNE-jUfÊcTY \C[7-Cm̼͈UNl_ekt A}וEd\x!ay̢pھmA^@SKp,ؠwkiłS3E~;$ wB<(QA2BHƳNReosqTΟ9ChZ6G p| ^TPoVguXJF17v|9"E>$0hD0RQڟgJ;P!$ rِ̎ShnI H}Fh,b#Е'Z:3^lYƩt/P*]6!0cVKAzں8E[Oky_u+z=E%!#CY ifFx~mO䃟` yC ɱ7YY$ G3Wm!habplؙu?WգXjY0YJlҀ`(T(gN@,凓9L *>[&܈_cs|!{^JF>il s497"rKaNmM`$ 1ܤ24 qRڼŗ=SWl;ӟ́&dr;!O]I4hrYdq 劋5"v7\9xQ|Ҁ|x7~_RdtsU/ gsZ0(u38V]d14X7H?^sBB z4Dљs[ܷe{ƷL)7H5P.U8(I6X3b&K{u)U JMjA(FauE "SDP?݌]_+hFo`ߞ(cŘ~䝆_8 q즵@Jje  8Lm?TģNsPRI7#Y'6bd̢g뗭-2$sp$\b}^dyaE&75ԙv4oF47,*bgc|@tQnjb_^Ʋ5EΝVYfĀEp(g~HvUQԃ†|Wvgŧ:, %UQzK-eˏq< ^SvG/f~64&FABH'4܇{ƏN餏3͌kOI:_ګ,3w馞=6)b!K:=Ml Jϡy30 <^ C5Ef-- IĒP}M4B7?8@aD6j=&΀ȯ]mILY؞д{j۱j#jɄio>pygq;3zfBdc: =G &q 6e]> mOcs"CiZ;jn^!U>|Ƃ5p1ϵYޕllTv`gEO/L,DbQbĸBP?%D1<<)JU'n՟"φ1]Z_>Vʟ&7|DH1M/^M%=FCNQw>W\-}]]%g!dVnFQx|UQ־^e:p\=X;ŢPչZʄc/zj)f6£w@%K T5@-!* ={w>@Ik!} wq5&vx_c7!3Eeu@u 2F;ü9군ۑٺ]  H~RV rah(U%#jOyеݹ ;(?| @LĶw\1<ȷEBm*>Ky .HQ 0*iEo\ \f^-ϫ42 jy-ĵJ*1Y:V#$Wf}.=R ŁCӅ-̴<q2ɞLb0؞}w֣ q;I@s7mA)p4.,wDTT] JQdp$)ܶVh\]Ŵ3X#O&Q"M2|5N#FSBYc ҷj<.#DD^Ec&-[_e ꃖdYvd([ɄP٘CPS)⒊rky0Ӏ Xk/ ias6  'Sr"NQqN& ٛyo^-'?#ԏvD1roc.n4; izrnR[(u1KOT>0$`nRmKӧq&3)톚|Q6V,J. Le4%|k_{K#/&7P7?v{4B w W%.K"T̪ ]P<ъa@N5;(.Z;mK oIuJ=X;vYX:x|Zx~'iYl z* =ji*U_EQ{_;5Qyj A0 lχU&]+<1-ahhaCwgω򐘮^cA ?l p< zôq,<-T8@ (k>;% yʟ-b;!IՐn@Eưչ<0zs1c%mml /6W$aAm22Ɍhlw; Byh# Yfi7?ҦKPya68I:U2]v/~&QSPocM]Ɣ wq)>.yLw3WInYaѹQLej_y1J;daLidd~J^vM'Dx46{84oJ'rց4t5Xq(`,m6A6VRo\296)Rf:?WӎkQ Y\Otĉj%bSyn4|uTpj+sWR^m_FBknOz? /[!>r=+#sIOi㶥\XEB.nE~ǢFX6b )DQӚ?߷Xiq-_ޱHTtm7M!!R~c>Xȑ) 0 ]qBp͌X?u<%mxSxM׋) 3s%n3UPX92$a2&I7E ʹw EH2kS<yكdW<5]j!p>w~B(!k׭Pto젭EFpCU SA339w+:qycOO=Ƣ/FOՋeuضi9pYSNꟲk(O _Lz3F_2AJ=Iq<(Z( `dY 6!J;%v)I$m.jzxVbacVwƆA),PFV էcgdmn;7eEX`\Ҳ&g@[BUП|Ӹ*ka9SLRl>@2Y12k#кp9hƫ fcs> w)7$"m;8(O*Ya{Oepw5S|^6&-*ӗD$̙OOa;ɵϺm/; .StFh72Bns3֡a]`sɻJG`3 s4n۟%v V!UW_s;-DCm1E{[Ҧ;FfClpC6ٿJþu)8/1q7&8X2%ڜ' HC RVB+f'!3WVmG*Kg\1Coq[,6 =Z-O^`P7l)Q'^P{4ښD/vkr._$U낳5C 8~ Ii1Dw`cX@j3|?-e ӑvqvU(ߪ fp{_fcAA C2M_=)`%U]^䪙,-Fm/^M SWXżؕ@$E+R/Tk܉b;KVW+'.4̴OSC' a|utjQS吏(D5}pNP%Gz4Lu{]7XG—\ ks zqPKbpxlquei>s p9m%%QU:j|gk,0Auȝvy M\f?yM~-h/I?6 ܥy52([P`$Қwpy22;Y~$نo}V}^vahÀ@ $9}E4 NSm5b7D '_<҆ QUEMiG4PRTFz۷Di(uUe[[)\etjV~x=yBUD5Þ`^ L~osZ>mڋƊ-)'uHͣǽPQu0P_)諢^T~ȝeg}tB@ rQ)WLQ PZ?? ^,YRFxԃߑ$6* lLՐaR³ހa:ILEnqFCXT']DR[#\MInŀtYy 禔ִX32f/mI{]@$_o"]b@sj$u35pOָŰx*! ~nDJlIX?rֿ9Z5␱WMɭ%@[|=Io=[gtLr7?DL@ pDK-16D6cpt<擤ݷ1j tp=?VtϤ# jK b0蛏ò F-1T*BR@LHf]o ИL!Ra5R6eēv7ȏ;v:@9־X<%X | Ov^&# %%Cl-6 ntR݊C6lwzmVGv,1bBR*digDyrpH.F^{,)`;ZЉKٍ h4E ᥸ 0 Q> ;8ͽwq.zz}^]J . DdIsq\45Vx=\"2ǿM3GGǰhχ`|p**_D5Oq8gQUL#$UHSlL5.jd*4rj /Tzt#`i(Ŭ أ{̅4\#F W$EV+ӵ4[ QؔV03& pGS1AaHח w*ZCs&}t9+* OHPqsh u9Oe/Tmnxqoʡlo'vz̪iY#9/ØD͇3|Mx|*} #闑Ky!ڔ&K`vä˧W`EMSUTƂHuӄ]2^w = .RTFfُ(GSMd!6&ϬUB;`NruB12VzrE.X,ٚ[uhY?i_> 4E56領ȝl5H2[N4?{:z}ϑD!>!,Z[T:!{Te.|lW4`@D;ܹ-22}M7z몗hٿ/-Mq^uf,YXYj#.)i\2#yIO|<8B"eR+o~!#K[Ph=3@>\d2k.>Džt@O | ;#qVNJa6WȌwa3[Q Wk& FFD G+lcpL^FF{ YdS̘; oa( [CPn\b㑻/q3L]ZZXqLkI86"ؖϴ\z&PJ)b9W\>J$7d6W؅Tw͊-Q+moWzZbu.ݡ46eńlJVV[=I#V+ġ|l9W ECm5nD3|2''MxK]Q9DtJA]mECE rszw078\aM],4Ѡ C~rcJU~F 栊e? A+>{ ]++#}TG>f[sتA'r &{qa,5VꅳCӒGPI.qiavRLz1$o,QԊ1CnZ1He_"u]8wʲ qKI촔(~9rxU.yF}&nfv-Ș\"v␦1 N曊1"X3/KޝJmﰽdـB}ڱ@@Z-:dHQ PFK E}aS^SAw6 RnG} E}*|dR 5Hl[ZFi;_dzteؙ=:W Gph9vmyЃ$)#gg4QO]2y.uh'4>0r5Jv3_=EsTˣ5|&/ҿHS.>n#7,CqxObIԀ;֗T 6=qޢT\[r-BH ^VmȅzAMOcvMT0:]3-4?x#`Cc^Uz:.y_0_֩{a>HoS<-$tȅU pRm";>kbvmTQ=us k[rz Uyn|IX`զOzw`r'Vп0 1=/ $AFǎ;&|8Q={nHH2]by XrV'jȸq:ݽ`E3$\P-%ĨV"Y?h 9;'z3PusǤEԥr{'m[CסjlB~Zao>5i7V挵O8)NFm8,"ɡ>yeq f_yi',m )\~'H- \Cig&kͮ1d6Kv}3+bFU4%|k%b)JBXg%|ޚR>mOr4 70KuyaƢN^BD ܾYJ]mӠW-\Up\ǻ29k\MqpLl 8fZl!;D^T'ўӄ/˧2t9]bX UYI]ir%F]YeS(u{+9w}Z[\տ o蔂=u㐞eft"p !X*:arhoY6H`n]@rjGI!Crѐhq xi, )X"E5_f|KO EoiR8x¿@8g8CGC;<o֍kO=M Gvހ}6BPw'YZ%[Co 8]{v1Mj1Ze^KkM$& $9v9gfCnCjR&YXwn\vM+8SM^qbnq9A>gNlN w# J/5Š/ JFlP/aevcJAXu)҂W/my{XGlxG CBvU]fj- BׅBH|IL2[V-kMΗ&CYZt R+fH Lsl‰vT\*FIIYog|"'ZI}ÙDzU|;i]ɀk潼+D@ĶF*&Q]dt onpzkOݸzl9m;-j-SM rom$|p]е;Yos;U}DD.t5#+VR,Ct)Ɯ! D*6U '?NaLPq如MQ><X?OfCCcSJG8>F]2.ybl&V(E \~-zl@Y#GG\hޙgpu:>fIn˲n唇ד.;}hd94cr` 43 H b+8Ns[byaN\ elVCpŖ%,6XL2g'`Ѻ,XKGKe#qW<" (^uP?"fNbv s{[lo2 wطyx#7Jv<o0$FC 芦[հGKʎYR{  S-N6'tW0ZC,N rDʵ5'PνB_mna)>o\LmHi˞5paT8?m&T}~B]w_&lքbaхSS$Y$iܽʛ /̾߇ 4`>Fy-_eYߴ5XZ,+߶DdfͪQU]k6EC_}y*ɯfyG)i.Z3 %~>;]#nP~O d{*6{#(պPNl  pC f}KsCxpGx>)ԧhGH)J%֙t Z] /gCƨ"N`Zsc*כz,O~Iʮ &ndJZx4C#E(~p35.VkY$S]a>N<ƖWz]u2H΃O+eL >ԷNkJb|3#5K[p+[0hR0l=1&!0ր^d*QFB{}:<>t/; P#Py{L;~Epf`MdO JxVԻOܙM{Q;t`NcMxKz%6*Ͷ(3&QON>xYlJݧz1T6sy2/!:DāDqND!!΀ RV`f0j=9+sA.uxHpƑ4Өٞ/[/WwV@uu  LJG;]aUx ^6l dϹ9k|!JiydM`?J7-HuFIFR [Zn^6 "ˮ3}% M?> ػ #$ip]K4Ȋc913Ane:CZ&iHɴ-t0mH28$ELa^ rtq7f8L)vS byq]\l'G7^D`t`h 2Cx|mAQi9lbJ1Ʌmz|&7ݻ՚0ȫ}G:U{.bq +4hx1<z0>52.ݐuT"\ j)b:MS^_YdKtUU,$0Z~jAl]Xz|^ck_@<6J3qi)i! e , xE/Q5<90&XnDѿ~?.rh myL~"jnUai#Z5X &pODWmh/Wmf&a!BOr =#y8H #8 rP`) ҟiWKpQB |Md>g6 mufL\AْjpYv \ "+f,(LqWJKo`=OQCSye&@TȀ204Rу7>URU23F%|Bh.ӎ=PB7:؎'U-Yۚg&ޅ%6_zҜefcZum6`8RFkghg *V󳕟Fo^lTB#iRூ8XVHPE# D 1ޫ)?Lh)䡝<.Umzj҆-|Ǵ4@E5~ڣKDƹ9EGfzbO_7SjGOKk?y1o[@C*|Ư٣ xhp7R?WA|)ۑ}LKl$N]Er.C/nɫs@{m g8zK7KF3pͱ`dVĖW yJz)~!;խ$BRPwݑoo\I+Yed,A|'6b$FiPe } U8JՃ !1zcjaFQʬ?z1CN8JJZy}KULg*PsrڝUi"kCk'L+>XеYKQ)qGt_m.eZ]=է72˱@/ 5o!Huxr,9k{yœ);KD<z0SEKSyz.&DDiXJ8Euxñ" ,D+^EJIЄ0_d>ETklөao0Y~47&ķn1ӿAP1 w8wG68qۢ'`%!)C A'KdgS-~y*Q#18Mˊz'}bȡڭA4_B Zpٖ9HLj]nT # C> 'ݨf< *ܘxNHDtZ4(yF|Y]AgznGQS{͎\77X 6au@&K3ʐ6ni= T} ']kB6ؙNי&>t\4EAvXE֣y45{<@n-o8ǔ)!B+ zC׳K@ ,+Cs V*N=F>*ikG6BFx޿"%l&JL^c#I#./=Ko01[@vb`G6 [U I߂/мaH|lB(^vO31OwA+}/o`y.=7jTMkչ2&-ɕݎl( y3%Љ :aޭǘAkc z8@VKи$SbQi4Ӫo1|N;p񹍀8B빌эꂡ>?㖨ٟIN+ A\Ucp0q+ב |+ J~ Y[BɚT'_BDn%C#*[\V6oxNzSݝ8kjSa&(8tj_Wdo܈h%sn&BՎN1G>Cd7 2xC'Nv-`h`PS-B2gmRsB?~Rz1 f:vG⍍KwuKOf.7;68OIukӾ9OPĽHfcur&=|Wsx^~Qz^ej(QԟʛzQL2LeQdej'Ndύ UĢ^w^)?mۯ!] d3 y]\)Q f@&7_7A\h"[=a+3T1=lJ:ԯ`)-T#t=U6t$3^_v[@mI􀠷ȎR.ɇ QpO&Ӱo EDsmnyL:.J~W@9ǩ:_=*oעȈ({q%("RNfx)L!?$غQ}E1 GpMrv9Лk,|ͳ(7 ;P-}QRq)6Xh0?֎0=2cQBuT wO9jڲs%23,/%|$d:5tO-ՀFk]bDD/OK pOԜg1:(jwp*h}qb3xz80۰ T> Lƨ;hx/mp #np=ʛ# !דLtD#zD\ak餤xH,7Z0[t?sELOFГ,QX)5EAlhDdz hbͫJj V;K lz?9x-!Zq(ܫȮZHVfU+X*߄;jgxAC7TJy!e<u8&hY֊/*XG9V-aiѫ!6~NKb*RncNߗ0W]Fo9P2nk<ಏAuyBz,zL[Cٰޏ{tW7u152"n/<_6sե|'ޫ| TZ+tM{ 4!rWr|T`.K^#Nn9A62rp si߫3sF!N8}׆ZYB{ Ƥn5_O^n|]=?Mf50.5#a^? E,BHBtGj|D8~"v!U E3 ɮ5FDhvDdd.2<ORqY /nKZ!7J2 mwL2ry!p'$'͛%C0zw&(L|˯to\ 㾷X $& Z !)k'B7*0 )И8L3uT ew'[`,p 3h'F7{ }٬nEa'tfJ¯WҠfki^n+ldgN7Vf5߁(E^d\nF!vjM}ԉn aX毯įY@^o {&c?o/^{yFjv4'5<q$ķNXM+nۻc[^/ea!P/E[R..X*Oo禙oyI3W\Դ}xK w#U-]>6ߺhc;q( }T99R()&8 5UE(B\B69w1.졲8l}G{+j/=E'OfJSBpSN2B'*)0r%JQo*cFIµLɖMY+{G")*1FAfrV.lh$XVOd5ү7? ݐ{|5q`i |迾_!Wv_41):-itkoE8,i)RÆ [h&%DJ@u#l[(;=G5(k~,ai\[[ %t$llKV(N넛KtfUĩ}Ne6|X)# ᧼"E>ӕfV1g>W4>h(#L$υ2Iյq[~'tTI!h % "8S?D#J(cf,Mp 0P"q;zU !mU<Ȃ1=_KM+>?T/c~DpY{oۆ8js5ģt;H BQaX Gu=+<*ND),`3[!D<ꪰd%ܓZ2B?rrA3%s9= `iAyЕdR!ݒ[=etVpCNmI-Z12#~b@H>|B+;#ٗA _\w|D$OP@U@܏g<Uhh5z<':Oo> lԯB/%!>"H|8o^r]BWyɭDf_ VÇyDrfY*TI7bDY`}XȮ<'NRN]dY4ѫ')L/y/ˀE zVM7_2-ִԵٷchY'.{Ck-K ϵJi`N {Wt4w<,"4tkflǦ6 VnHz#!21d.ouW1Y@[ϮR Ȳv"î ŲwF$Ok(=g50}輧5a'ɚx/,rtL]^B42]\φ)2_+d8Ҏek0jx%-o.tOF~xz`|]:1M~IWwS ;h>3X%IX<差qz@D6{u>aSG zp,f&0Y.??|}`Yc+NA`>!>n&2UC-NO7)>ŸZ© IER@kΩ/Lʓ>ʑp&z>"/=o@46έK1ahЉ'H:*PՁG"5SΛ X oX "h i|?Bj9;B1ɔxMl{a{-y(t':Uӵ9Y:G%.uQZ*)Amu^~)`G!o7s#i! u {KR=JP\P>@פ5_';ƁKZitz7JG~WO͠nu3)">㡶XL~Wo"xB!'3ecK3Y$弝$_xsՕʮ@(, K$.GqǢ"a^0O~eSk?x>Z>A8P}ۆ(kł ҝV]8iEGMUų. r5 d[qYLЮ-ȵiM5NDnf KNs/ Ѵ2ypA9emrݪzեxx>[6al,?;([7 4T޿=UԂrLWSZ15x3dg۝Jt2C^'>rX1tZZ T'ΡW/ckʬ ۚ'm}!0أh>U-{F:Ezn/as3~FU߁g&z^\L!*^8U`aZBk~PJi989JHXxUtYSmN'T-.,D~Hxwl{}=h؝ayzM R1XmqJ Nrg$;t$)Vgr nQ~*Q W% !$ K1* 6яu9F83kS L/9ЌF|އĥ>:9HJ0D؈Q8.i]RF9[ q*Ϩ]RG# t4J% x2-$|x6k?WbLif3DW?W5 J\2RLO꒼czaȡ/yrd }d0rHz61f<w/S*1 3d–]%3n$0|!'rq3BJ/f&l!J.$޷\6`84e~ʄbÆ(=0\eY<8Kv8jU8{!!YV0\%>dR9C83E{jT^#)ue 0D*xR./J+T(%}wTkAQ=f%{ZvnS V&M^m)~%C$nV ݊Y͚;GĖͽ9# agZqXSnsfi'#V'xҌ>j~C߷!&"\Iˈa{ǸUKl(H**Tq ;,Ռe z瞨'+}Q57ߑ>2|4enφDr8<'!?'q&9r|%V +u?9g"V2Wo- *3#7x6jpԉ}숲XKB ާ͢]Í|A8VJcI!e7JmofeaZ\e2VkZa5iU"LZ Z9M zXG앟zX&InQ|65=% c:rk!abB"ZQvݖ&ԍI۞Uۮ]|HCڜSI?>lUGm/cHWťM[lpwO(VdlD46=I0T7-8:Gt]GKEbS'HꎽqX4 {[hhU: 3]5-Ea^~;+H6+0 0Z-N*1c><5]XxTX\)Wgm$_/tUjwOyP<7ISD}Xvn&2/Vέ ["m!\~3C/7Wf-.MqKmG`55K0j*xt#eODv 4*H#ߒ%C$=%cWa4ulYwPS2Ӑ(sHm"Cv9[coL G>*3H^ %''m6k.Nb6Q5TM'}eY)J ^-d{{O ]~N-f|YZLi0WqLh3][No,Yt{WѺ1nHk8Zy'`߲Ӹn1hN%o~d э]KJgM#XHElIbQ O l[>k)b3&r c|'O$k\S"[D ca0A0Pm{0֪DgF01.`3 2=h%/?=|MLL/ʌj$({7׽\sV$cl *MWOͧb.*QJ:br&o9W~.Ү=|QWM"FEy3U鉀 _FYp~ۮ@ٵ#=rU{aUZ b%M)v+V'njwaA eQx#RU:1Ho`8ѿ|)s7ݤ_6yfi4nY8`npȠ6m9m~#tmZ";֧'ld)>ezg b]N+{OXTt D1Zʃ#WBfxHם {|?T)z9>'[%=  j|h=qz_\ l}`Fc' r꩓N[(C@ظ]Tޔhea-ڣHrƴa9;DIL*j܂G| i^" kP@O.0;3!x *"1nPq oX>LV?t.%UdPQ 7!и)E:}V69v)Ykc3Lo)Ai5R zAZ%dڪ2#\h|\;K׳\Q약Tw g$ݹVnO ˂cLA~qn`1_.7drÊpkXmt͍ė<}[#trgǡmbKȣuȎPƱ0opcO j[>wxSwS`g븧Gp`d#2t 6= *ߕ76XJ{x2I2c;11ԏp>0j-I_ŲJ[ 03 bYb=/ŽqX|nfl:JI:iz JC5//nw05U2BG uY,d2u{5T/hě~<)sʜdX0җ:˽, abGaYgC1b%*3E &^7B(5Jp҄iBlrYNS4qD1_4k(|7QֶH˺t'$^T;FzAƗ]Ahl s0gݙO6ze"9p\mT /ɰ)pų13,vY0{+KG5y# 8X0KS(V8U'de䵽˳M  Jk(yxVax*`x'(zϸ=H<6+YK/G\OkR>&IbbCJ{gn/(O&T,an[lx;,rtRw9v '82_j[^ߕG8 $?Rrv64y[X3}_sCmD`;i鈓]`E-y:ͫmr0m47 rJ=@sYAdA}P)TNW,P~z6_[EIlKg22X3R=Jv| F-E9j:@#Z>D]^eK$87bSk9~ 7XPQZ'Oa 04XQ@Y5{>(J.jmʪ.aQ9i،׎ªvj!@TZ;fgL2,Z2WΏ /n:rt%sCr6(_5Ѿ;PY7#86W۲*0uUWZdpҠ/<,Dce1@\1m܆5e|eHCާwӒǼ."XUȎYLḀ2D^:c u"v5ܖB!yT^V ]]5@8@-D^>>(ۓӿDb a 괜6&62i_S(w ˌ$SD{Ԥ&VġN S A'XgRGV- ( e#zZ̜R&nmh&z\Xc>hVRFpC.8TF0D3 WܷH8Q\f?[шo=O:H \t\(dIK/ˣģoU;cdS kTHyɤ5uWRapQ0Ƕm3[#^ jXEHdVz^~ٱ i,G/_κ}hE >F7j n霷H# b+f7N1&fK-Xms6(eGK6"E c!/BI Tr5=-Pe+[n͚54$Ot>L&ga>qJtN"-{;')"(.pHcaե$V$F=)a=Ok${?9`0ޱ9Bv>iVv4Y:5Oo$uL%5V:X{سD#KG(BntYI~cK]P*7+̽Z\%ճˆQAt2_ԚE7T@7SϙK[*MXdQT:ӑ[.E}IJpA7x)3-אЀ5d[:;vMZ y[P5RK Qď,8<+8J$KT'#!{lnJĺ- :(݆Of1!fa ^x1߆LCs $fj{W@ E\bQ"`dQ-I#jH_cGe_'s} j9oje@U:㎏wN•c'X@-zUP]s(h8֦ ;;uŚ{ÓJǿԋ%zY4R3' 839CrV&v4~巚QPK"q~u͓!|/y]`Ayz1*(!?Go8}j)w,Ydss۪&tH.%wq-6vaA!40?R`c(| 4@uJy]b)R *@[:|!7iWL;#mbvBJjH1u[7F'z~3ϚZ$ '`Rn; M4)_c *bߚCbՁK7вB*[[I"~}ɐ -Us}bBf肚=Ҙz9z{w)$Kr%'wͨ9"uo X9(~!Q* Z]a״D y.3<<[ɯt9# wIb+9\YJ\ZMͺÞ=ʮmbշZc6ss7Ik &9k[ͽNX)ɽ5zZ8i!RN(}isʠx7,*2o36~S"7~QuMjŖlHi^mmC $r&$WUZ?ՆB_Mͧ n7cl6O%(AB*-GKoaL`]ٖiwYd*gmɵŃHKe0K!D PēՑ{@I$'Jp+%fKBߏU]<>1dF#r_S=`+L#&f?qf(=P>j> K0bJ]È<1b,GA<Zi#s=6FeD$3/"%mFA~Iwי~%{Kތj5@ID=1QԣN&a"{ Ax y;y_V{ن<v"w-lu_\Kޗr3/QpȨwǔ˺i%P_%c)z&%;o {ez0 fB便uj)b P˹Oej?O$Rt>RB{ >o[MtԫYKB=ȟ%)T: V  8LŜOhK#1 d./N+XByOn=&li氮ߠ|Ѧ:ΠQ(P]{jmT-_qE r['~'\6!LQ%̨^8 |Ib@ */AG9q+9Hb:NH(GwC{CZuZNPaBmƟe'D_ڵHgqgF?[;^{zF`ey4$|]mm|76+h%tR{~8ڂyV,YovPF|;B,<$YՎ)v*R4 2$*;_T\0JMSp҆?*sS&Hc3E/} JkB"hCX@7 (><-&lCAT=gczi ,.Aس;%օ.yAOMe1ֲb.{ԩb;K䴍@=E+1n}9yhI@gC^ğ+$e ūj$B}6~v"@ |$<\E/ESNtHN;AiYKhCxЊ>ɗ4%vQɢP"h簆sRnw2X7ݔ%>&JH]rفAy6㇎<^.n+OTa~w)Ϧ4l|=[yAե=j&A50}C78 -gV05PIvnD"`IF?U ?zOJ73Mlh,kTv,0J;ҶP= Z^57,&{WƾrF$SdjѱA. | N;u%RM^Hpc_wN`RvQђ-ɊxA XOx"|#ǻj{gt5k 2>K¨EperÔ!~kD!W`9$"-hRYs(P^Kٔ6AEoOky>Y.<>F% f֝u2 `ڹq ب> yt)o#V9GY!O, AC;-YJdW<NG*`RP@͎هfk)G 4Ii-\|I0z]CYfrMYf{|?U. XV;mi83_4 O ɝJIK h2'_1l\@6/Fa$6b̴?X&U4 Y ,&f:8ĸ/uߺ!/57f72J14P$GjV_(jS?~듮h~#0_!9콦XZ8wȸÕL2-f.yY D&lmu2/H<9#:\`-8LPdj#e?)XSJVsA% / l'g_L}EɶrgD=BJQۇx\4kJC!\' Œuέp jJj;a# xDfOn'oz8[~.F{ t͹;dK.Fk=W#lJoޏ5cCf"d1A+h7G WvRA !@;@XNXuTl$PhȮ+7I |v{{DOtfzq {6!-WkLL W&Bl/ƿi.+?gz*~vc8qC˂.| UmUm[4 2$B@f7xoL\siTx~G;6i^ |Fn䅟Z<{q~=Կ$XdMɐD-әF}q Ch 0$J)ڙS' Cq^R*Y߸\)% d ψ߻}=Aߠq{zbIVAa=*2m) w0\\UpAX{"s[gTÑG=㥘'E~4RmDޑ28H;7j(kST;gO0i䫖NJsTo%_Y;T$k#\!byzYPI,bU(JX@gH1z, \=|{(<)#%E4f9wx I;2tEWW,1m`ntx9tZ wLJ"'.sC-&heQǀ}2[,:nDhXRn(AwvϢZ _G2zL-;pŭ#?݌缪HEx^>aX޿K@fE_Y8x`[3Kˋ1}焃ݠQ |~C\>ϒS6++hӭZ:Kٞh1ݏs93bQȘZu݂.6YZ7'Li>N b6XCܥ7J6o@^-͵94KĩDuvkY鯧C; "ɯF$H>nAYXR}~YrRR=c5&4t%eO`_NWz1i/>wU|OQh&(~{VONqb>~זM%'(4N^:%}jpϠ:i0FL3 ŸZ WC Mxԟl}{>v:+ê]vNwOuI:-apé2F/m&HnCFD-IFӅm5GT B/rיC F2J a{ , kX:$ȀTG;qMǂTXXb]'vF`UֈE 7aln;VqM3W伭7^Lt8| C1:TͭN?XͶuxFkM8SogE9MihӑA;&)JIf3,Rˊ^lCq`59Re1A CfppFٺ3Wqua[lT՛(L/KʛnLpqas9bff2"`P%lsݍxwD퇎 HanڧؔmCn}򋬭06t3 aޕ*$|F(bc@rSB]7:l3mG[0,|bO?&H?hUw~)ۇ;x ׯש:VU".+FoⅇxG;p1S ͞PlYĎ!ޫ=`dի@_@+eRV|E4/#3#:ke@[S*mYׯesT]5r g )#t,ix9#hL%СRqQ>NO8%^Pgyh!3#`\vքMvŖy;Q/v|yЍ$Ao9C&Om> 0¯KFIB<|~]a&hlׄJײiZKOOyqx1P:c!i.]&.;&@gyVgkaCK2.]Ypxe`hy~X3$1l {w\dYޠ~틽4|# 䐯措Se[Z3nUO7d,QK@C7PP tPI}_KBܾȐ#I6Jh8(6Ŏj|z̪v}1/1/.9|57l"N پi8΄^IaxTccO!x=_xT{53~s[-Lyjj؁#> ESPf[7BhIٍߠ|ua= &ae<<MgADKN Qȯ;e~YɎoPoHbiLןjq;d,F]c=ͭ47bahJi-e kwž x}F3X#B=,'HLt,cc/AB@*q9}:"mw]e;!{ leQ‚og)cn[/UUq` Yajf4s%)rnZϰİhfUĺdL-`o)Ρd!Ys_~"\~D|NNZq!ca73ǚrI2ܳK.kLThj&x\:)fdbRS5jiA.jT ڒm]1&l_F6qz5 ќTDUl hp36%*Ԧ Nť_/kn_%ۗQs+ẙWqU=ngk,U`v* ..sQٓqLNM6Dd:yG;<@ee+c1ՂQ]߻#rSh&D\ovi%5[rsbO sz Etx%.Ik>`4z[ll[7{˴[&e#ܥd&3VB9<$ƲY]3y|Cƛm5F 䚴D0OL/Y 8.VȈW6xnE%PU\Mqjoi&e}h嘭9ѹęS7U !S$kj2Uy:C4pLkMYee, L:si8.Qi@oaCrOU,?GPZq*Nt1..IӴ~p=ȷXyI"f8 $#j2rFٛ'i M, |CF|jfYvt|P0/:v $pjyiPw5`|Qψl ĆHBO[\ƫ1kzb1,b5zf_'Nd9Wĵ$>@p&Dr~3^$ьuϏC̉*B*|rGր+-"PЦ'A"E\UG !9Xݛj?y*xM0]V!FJEVP_EhTPVgq[lC0,Y~LN]Fܵ{}ao~JB%c)k cuUTV-i\g\`q?º[uՍ!nk "!3_ AFTo'.)_Xya}~,E?o?i,g\y,LL~oP'i.ȧ|ggK,GAVVͲLsW!= ɏ;v9a}*BaHo7qX#c|8b$c#9 X;c0ϛ\ ?EȄvPM+%b#=URy%s_N97%ơ<᪯'phڒu4t3:$ _]i>+厊kGipZ Gm4\D x"cShZ">:Be} i2!hIrBWʧIED찯],s(`z}he-!Nk9[eAEGG 㯍^-kDJoCS: ɫP(̦m-\ql{A?B ]rCkkZyEǮ/f; [% Jc3A+ 7‘&kF!/4[/"O38l  ?|'I3uDb69e7n܍23\dKí =Rj^fe!0탻[ʼ G&dAeBH&3N𵊩\Ga/ْ 6>:ȱ)D?'Mãm?8\f).k)o#5&̇H>1\#st%|F\-sՋ|nTu׈_mV;[\)uP[_9wT.f ߠ,ߝ?kV{V:pU93圍^`$>N&/%z3+ՋM^ L* -glo> 1X 6N !ոwq{gFns)xNx[yBЙo=of:GUv! n5=0ъWn"{dM )w CZ8k甆q߈:+k"Oށ"lz]܀N U-p>'a"&;>hlB)_G-Z2ac&Xס%=h= \}3^fR5"sOA 2 ̪8|*><<1ӟqtxEhR6IOmA;1~9*l\c$mCnof ()? q ~qfHcx#L^*! x뜖~ o\T3'wx.<$\8axP8uT>1$)Ơ4?Gg9 _yoCKΔ󝮯{b6\O鐶Vظ=y3t{4\>4*xI~=K~ñV찟V=n Ev{S[q3o ?mBXA$Hm\%{A}̀SJWcO& obTDq29?='z+vOtu>%`u=Pk&2pE9M?1'%C#Df*q. 9Ssv-?g.R<61 mETag'χ>@W$#n+ #֜4NoUU°=eTX$Ggf:-pN՜K`캪Pӈ =s+⳷]ʖCH'#hV 6z|lGbtC0A;M lά"N@N\]=GYᢧ347zA92L؜zuKNPDSb"\S9:r XaM‚l56q}\:]8HS@s=an6]?(dBsJ*cv0T!We^/Gm{%2 h/H;¬ze/q泡3gߛn:bpT3HQt~oh<1ÒotF/@ -^{ .ne0[GjZ{ & "yMcn/hי2t\ŇqCMZpc3BaN)񻨿aiB,\-j_GacۓV0LlqA7Ytb}B ۤY/209}Dm1O+_OTrlW#G *S6nh J˽DT:2#{0 -.#k XVvK.mw5KR bbty0 ڇQ`kCA]tOK9D 8BW8,umC( A }0~`Өuވ!mb}"eu qɫw-[DXF8 z u8ʗ/X1G;Z?zR ՠ 9O%/F?`+`uX~L|qTV2iKMn:.WrUK"cdրzP͕ZGAߣb 4 ;T,c!H|g2w?|Ɂ [vTptU;KEW[2w=;Ze՝Xi:mW CA;؜d&%<.Yb3O+ >`h۸t`.ozƳ0iV%k֘@(;8crnvJ ]! t*־A!]ŁZ[Ч}PBq||jEKw0@&k* Ɒ䂪t>S^{/ uHWK~=t]oM==}jY,(hb}z"h^hL\G-l?HMvfTd]6 X/'G7L pǃE_} i}ƌ"G}{qd_$?z(/u!QFJ2j`ǐYPV00#G㢄U6EqJ5y dzyT՞h:_|-;@00syFVA >K֏m)=(|O0 Yl8P¹E4?wXJ ЄEftjChq*q@A?*٭wp큪DB5-6hn6g LSѮ+oԙ){|Y='X^ 0PՙRcw#afѭꫦ[+,tX-uZR?FdLXD-&]0^1͍Bo&<Ęrgi3럥 cXFy'WM*TֻpʰjDBb?N˾kǦxpAHuY.6#FfW~BP{^(TtaGzejt/k<9@<0E:*[q}~1ÿQw65\P1!'膑B#Ū + dvnW}{|Ɋ#nlAlKn;9x.z|,>XL8Y>Dݍ6V 麇e\X,Q}2_JБRdlTWQUP=֦ɻ<"loI=b:Ѵ9*-85^4ŧ΢.f#[ũj|{_γbg0!IIIq^܆K@qW N&]w&r`"d.xa t-Xq ܐxM8pSc) ŎnSۦ1](XH饴sc "=rmM{ٴۻ2b+T@iZ+ *՜Me!y%ȺƸ2ŤrX!硤Ѥ(*1-P'J0٨U9i:c3 e;@QCVz YԐ1qZד0AL>便s>t okZ괒_a,shܔPw]##kG=,%nz՘o5p}+@Ψul7BCL>Rڦ #ߜmf0p.X,Jȕk<, g)Yfk^W1 , ЕN|؝Ֆkn\EVw= a.{Teĺ |0LY!PXht/tSO'}& b 랛G\KPLNhÆY}Rcj*޿P(J}^ zxSu U^eT/eY.2{}ޛ&APiubhNc<$wxYV3wIqpa׏sT_VuТ -37ޑR(o"->/|jiՎ}\2(H=ɕRoi *yY,qH1[Q0׸.,PJ\q'#4ђ_B`I9qB ĘG֯zTkd*#%[݉3 (`'n~s6~|e6ORAO~m5#{Nݽq;BL⇸H%1,ct)LIjCut) "ltpg N+]YHyNQa&`Ve9VVPI(pJbc"jou%[d6H"pY!IChkRdh 잳j]'MKOZϵs ^aXnU1 =_|C,6Lm X`OrVCKNm2<~L9W3mb2sQxԆ|)k+^{rN-952Š:_J˓$J&C:ZQx/ZŲ_ՁV 3Վ6!^'xr%N6b0v*xC:hטh񈣾] o5xq?J`8˜+\Zz߷X̧bG8<=TP .hC.p6&?2y- gt'sf\R^;`<n ;8eis恍 ^Cܤ(L)`Qz,xv*gSЕ_oD:R8h)|hY(31P3OPH.G\q@;t4(t5 aDR+'Ut*8HYt:Lp?B*ȽxXBLr)?_'M 47Z s{9^e{{R/)+4&A^fĽ6  U sfKLگRү_Nǣ˭.؏>dZQqJaPe%} ѐgɜvz ]IekP̴W A=>-h*aJh;w;gJ2mȭ ͐0eȪ_2ϲɉ$/=gT%t3p&t /}3Um Eߊ=IG]i=(]h+18D+)}Ž^srH !tk+3qxXݹ#n8q9 FStg4Q&"Q 3b/Kou (p8f,vZR/Hδ^H7mAת23BK'q#UbrcsmCJGIep. 8?WӠJOK!!(u.ދ-s״ƐeG9)ΉM24Xʔ}V"z"]2H*XAz^`؝"V=294_)&_3jw ǤGK+xs'8&R^*^0M<!bi5!DbRh7ϳCr58aizzF|&NׂPJjeN-2g[Xqh~ >L߼ Bv "Sϗ*l/hR;⸹{kx \e1 \5O2IAL!VitѻV~BY٪;3ψeC9YXKqRZ;!(h[hSJ Ʋw< "y° qPP>avL 0@Z Zc>l95S| -t!zst҇]@(WSEqm%I&5s.NmH6@HC[œRŏ;/.f X[8-W wkS35ЫN68{Df$ZV=ް:wea~ӌ "+0( NݯYʄyg pOǯ+y:#LZر.|fD3 ;*Q8oQ3`fŵ">n`|ka0`@f RbUU% YQ1I#z9E&%@r0xsUrnd/N Qi?Pwz&bN5.WX"0$_0ZUWRޥUB\#c\ٺO TW7aΔ;BD1JD `I,<s É5gwO,'|Uni:!ҏrٱ,$ ޓA-!g|-!쪼TRE-Z/ / %n~J1S ,Gh\i`ziw ǰ$'Lhqa2wŏ |4<|c.!0y vB01=m\º՛Ֆi9MΚnV_i70 !> D>n!eרZذ3 /dfmW\~aaak S*6RMC$ؙHdW3`bYP PH~h ٜ Jmq|hd8g˔@DM {*T0m'nTy%޿r;ռ3O`a> ruInyC  !Ug>aB4EtoV3Cs{2H5s*E#M<W0a7bCʕO10~lC ">E xM̥DYl$ S0VgET1<+dQH#!$CNW#DUBB85_SՆt 12rD3X<].XazV9#A:{RsnpbdJ8DgK9fܹH:2ñ #vˎټ!H/EJQfpsrXnsҽZX1#7}@TQb*E늧2pJR$b{gt-:1Hu>oThTu}j˳%-?)9&I|(cNq`(>t'p""h6wC674`BcQobag_Nu޳mw*Ü}Gt4߹mW,~" ϰM?[;s) ?:Qj ~xvmbzjōÉokPFZ24?ܝ2htmW 3D϶j:F[7 ~Z5WS0N JzRVwޥO4KWc4_@T$8)rI&قA&}GVC/ ( E(@LQJ"caI~o"pߐ&8/A߅([wb1q*#MݕNjdӽr a2mcQ:˳l/DaXph%Uo0Yc X̊Wӱ侧gheeM&IZZǸq_qdmLQϊws,ͦSpJcu'4⌅^cFAN8W'/!rhb_ѓ)<:!:-azKk4[u*O렟%6~c=]b+QUHHdmxerMxWlO xp9BuӴ^4pC5[sB,{6eLԲydxx$tm`f\抝 +Ƣa;@V1L1ylsB l-o2V0v|\QeO2FcGZzixa2jdAXJA'4{N@r - }Ȋz39Kt>݋߇\dcB,m>IC)R)##֊0৛:aIMf(z%=j0SO%;}oPfWkJQZRU-_ y~wV3#1r XaҔ#gm HLu%'nH$R4ˆJU={ƸYK+޿TU&P)5`M$.sõxWVA;9Ws~Mgzmoɍ{򠖇tL$PD{n(&#`+t#m͊L8ўsO`DYV]EPtB#]^8ՋPNNORWm͇./o.6AXEUZZC=V4pco%aK<ԭI,i]WRӾ턀;/5`bRp /Α'(1l\SkU!V1pkH^#K} ZT2$Dxzᘵ)݊JFwՐR 3ԪN5j,IՠNrO>Jҧa>)C[+,SBW)HS`5k_wxyG18ʡtp;9U(ċ82 y3 Pb?w>&4Q ao:i?!*^'! x.Zf:~ 4C`\0-f~<BLP]2IH }R]D-4"!Ѭ=m/Od],ۑ8)d;QgAt>?GXz>2LgRhulοpC򺱨mrP?(QEɭz295 ? Пĺv;o3%֊0 1vϔx~Ɉ~~#C_ix_7R:<+5L椓ǩv [ғX~цؑYoEjыtg=t-x uQLz^H"8ٮ kPjYRƐO-$Snh Z-E){)l.x Y zWSߛji+N)[VLx Q'qԤ) 0x&[*S*5CDTR 8\Un,}Aa_@}W&En!p2-׋/LvMJo.Ji=.5z nwm `٩+j!r8 p:ql# FE8U6V׳@#/ $<5o )֓jcJvE(xA_mW %{\s\!Mݯ/ZSkp8p'(|وAE瀞2ü7Y/⿗L\:BuiNUIeC dq1uqxE spc& Or3rLK &:ĶbLثvP+jwV&npkow_}]0q!U碅;>2\lY!8Y:%(~t ڿt#z Dpq{jXn}'Sͺwず'\HFh F(77^NozWo=,WaB:GePd?=+%85]D76Z>q:sa6"YBڑ$ &>dơf.:n_ܻ-$t<IFS6qC h(&{(MJǯ{mtSԌa>h\ߐ` t&7^R5fD3Ɇ tNaI, u3r»$QL GɺsC7ph^#f,hdpw-f+A> `Sk'!9a@)%h`Vlb/sd,W7m?@:RYj7#ؑ3.J#2F5>6/3[EI!l:=bYZʾn| `k<1ƚԀ7]t픑m-* 4:Ojͮ~D:7T톂toőR_'=+t :8Ht Tnxh&z0~P`fnWX?Ω02hXs|طGZͽޫ5yx_".:4)6?븾*O-!刌ZIFe(jp rK2%6G7Z8c2<tQU}OOTjHJU]WW[!9GHѽgRɉ!L}"-sdRӠo|W_ -Yz q ȓ m+xẐH(1$jU.T%b̊;_ҺJvrh&bߥ:W, #?ۜNXܸ~՗(AEV:d"|֡YV+5SEpr)A>eظIOoH5]񝒻/ğBJa {e?ќ6"hx+w|@ q)<5ݽ%ϸ-LSU<0)TX6ܖOH_OSa&4$[qwuQ֧GD6d4TqDfekKBs&횓sJlXxZ`|y!9$SD24pN $s5ex]RD &䐈(FYg !*O|j wS]m߷QROˀ3@bŲT؜UzdzWoKA;4FO]&I95&&E!ʠZ2ɼUeտ/+cۀKە[.'5th<ʵ'BP B[ݛ]Dl5stmxMCsٽW[h3u|e5~?#uWO}AVBqZT@DenEHAeEUR8YL}U/9(!Zzm3(y \^vtrZu~Ig Rf }+9|Ak(x΄>Ec"S!E>S)ZzNc= ?Ge=BE h>tڡK&|K.~?h c K~`~Jqo ,OT(fZAwC}ap%z9w&kj.wAh1~IL8  `.r=Qƶ'I'!xl)$6½U^0[)F93#TYd}+{k O-0O-ɒB UƇ.l|bIZW†aN?yZϦle(!-ϩV eNkAn kdbY8L\Q$Ocga¾[/[V6V8Y-5&c(enxx Rlk@9^U/ŗwi-~) X2#M]V 7%~qv7to2o pkb2,;ho&<{a}=bJVy\ЩwYtTbt\oHP-wg8/e 6CZtֻqEfqlE?E=R-nyl 0kKʏgt%)G)6b_ƪ# qzCfxOo<o3焮1!Cuz֍*@"E*ŔVZa1 KkgZ|`Yv6";؁*͉?8C/]|Ϲr $es8XvПZ#ϳйz}w΢ >p_Mᰀvl/w*d4T{Jg5pgnVHIz6.rP]7\z?i, mC_@h(8jlԲ8]xԆ =. O=Dz '(܉P1*H^Mi3:u?W A&gק{hI``kK􁑱Xk6^2K$A~`iLo%Stxjf'tRo]ȓhHhscpд=,*fPAEץSh_#ΰ8 wy*[Z~~Nab>O.wLFLL%Xge{/ d]$?' l]/w^- sJYH[;r9L a!i>F؂.փǀ\]?EUd;BKhПGp& -ps)*C0+!3 x7XC;?{DL-pzeauҵq<\MݖsyQGvi+EIAc[}RQ8pt*hc*ud ٚ"w)TD=c6bMù !O? %4:jg&E=g5¬1 Rߔ{[G6$6O>r+RfV9G֟\'U# *ϵ VwUT#* =RHیJ/`<ʣ#+AKΕ~d^S$cuȄHA"W Xps6p?~N{Z`0^OFIPFcX΢f];&~AW &Sl7ӨT!KYN0(o֘Xiռ $;,jao:,c>p?g` ly't`_B,h%f+P-%80tq}AC? (޺NgmQz[: 1sIm%% gӝђ%Þ,pСmB߭a">,)/As|ͨTa$vGХWjJv<1f~JWfnnm~Z?`K:Ezb/NyMP?")@_E"i Sܡs1ךwlȂ$ ڜg%5Q lnwΖ\y 3*y8 rXxXAe u.mHx2uNV2 r!3,KU1$J%kr\a{/կ 9Zt $lDp9)n$r0u1cSƼ;, *%p 㯢ijL4ӤQS]_<Z}Gu3x^n{1uwtz Rq]m>[+DI@{ȲvmjK\lPW&:KoU@٤0!O뵻+{†TDŽ ):ނƒTU@8R+j`% pnRcJm+-}ݣTuA#gD.eYG EXJ|uNj vTL{w^=G.l.UCCA]Z 3ĢmQY烌D:wA7(hd؂n/-ql<&!#v L 9m(/r$)yv2*4Cj5;#C&l.CVs+KoIJjxPYO2U4|J|wqH L<$GQM̏haIt F}Uh` 'eh^3P/z 1Vi^B\%[6nR'DkJYpd&UcnBѥ67!9N˘kfo<[bs,8Nv_Z}!2y%]{;,t!_mtɾks)~xm Bg?2qk9wO=e|+wpޜ' `s [<<+өhԪI~wmp=|g4hĭӱ^~Z7`|=;Bȏ1Qm qb v.,eȫW;8D7iѮ0aAih b_x<ѽdA2c=5_%zgsEt?(7XfYDpaz+a/ ɔ"^@7XH~9/IVA}-ϟ4A2#rVy!S }5m+O9zyFn8C#ɥ2z@:k+ϧ1=[@9f/c M4e* ?c>-LQw=[pGY $N-M?Qt@aw$gHCo]֯BBv9y-cbL/NJ[씅Il'$phTgՑq~eQ>ql#n _1  I8\0ɨ.S| Hó/KFiiuwznnT!'i]Ӧުe(d4ԐFI2sW}$+ɟetklka*p23&w󫺌"S[qAS[ \%<1:A/&eJj}REx:_z\?4v 1>N?&օ@Pt"a7>w@c-ú2IA]_`qƦmJcKp#:fm{gp ֏(StbE*/RAy%k3Sfw[X\ & Е6ޓRԉ1Nt@]ڃbB0og$KCŕ[n K\ DzY &2ɣ w|]8˂\]rW6T 6 s9}[hM؄QKJ|O5:5:kOe K a>@V _:s=Lp@0'l琭l$$ˎ1|جj[-I/G ZQUZ2mP ,`yX܊l^:ĪJκ?xKޥeQK2Jo:I% /}=`Kˀ2 E̍7GsXie5qV|)~>^p]҇^D)h QO x2jr]a'\qeE'z^jE]=[gzc:@'rVqSIqWΚ7)LVH\s879]i#:Y"֚"۠g,^U9Eb kV>yR2|jq0Ri *&֖Q+$ݮa7ȩJ^N|P.!I]iR,'`A Nι_wϫvcimn NxwDwstpV+djjz Oך,㭼M9cBe![aQ\M*_AG[lu`θ&H>Vt;talN:𳀥ռ}^Ka9}G{$z8Ob;Xk]-3DX+8.1)ׁB|5BC)ʌzXY!nBIs-VffyB0.*D~ tc1 sY-eG"\\~yow!^.qW77j5]SQ#mb%mхxE}NBGϠ9C|3KZHvQx@$ [vk:[`?vY-b`e730109{vnyh1FGtRgiMNUSYpl<H]/6eQ n="koXhWJB{z3=񳾜+J\:={NQ$],*:I&˂=_F P,LS_ >.;}DVKcAX3odI-UDŽm xΏc< hSDW ٣RtU'Lw(g'u/v Hz" 0xz;n?_|蚔@Y".ҥ`Lz}(R?a&+Ȯ(}Rxʧ91PfVq33SPA;SE̘H,*'Z=)-h1}/rRep™9:=gvF]!_-`*سpnNB*f'Lг2 ϥ̿qhL0):%˖ 7xF3X)XhcD;ÐiCd2yqnEqkLZ_I %ytkEX@-3 +׏ zд>f4Ӭg*Jhe/Y^'c|Ghk̝t R~+dxңkRӵJE@S";1;1j':ݥˇY LC6(_ s\$Osj-8qlrg2fn] >ƁkIۗ&Q; [ e'Դ%_; gSN %9+F 'WjUį2#ir[Țt[}d\64x'C OF>c=G "N)Utdgng g9#nbD #;z/)fWbI֦  +ĕ/s`{co|jQ  -XJYE%! clKU.iIQ|4hXaayUDVH [VTb֓m3וb13(-o^KG/!1SycX4Ic:'1eR%bg$\}FK[=JzQ:Gr7CyIhS9&ɐM fn&0p M'^(CMiAO4Y4IGEJXk ٫V{tjޛJ`3Z  _dt&9b*yYCre_Ho¡i5AFAITr(JTX j~tGIc5+fہZ8(W 7,qo9T`C(kjc?fM{%#"qxR+ 5cygEY;:"KSZ7*34'|^MXiȂ4ha$N,M,vbp'вVhZ,sM |Us7̱Ȝ1I Qo%h򹆘DtHt8[ l)>]gґiBGAOwޖY?>nVs; (E'oHˏkd4!!cES弾@) k- z\6}F1c < nj\ef" |Eh\9.31qQ 9l(87J֛%juū=Æ36k0/`cZb $@\2g=\B["gԂܻA'Rgݬtyuxԗ0e@`3rv?W1^/Y7jpbUye!| LN:.]bBr#NB>S)j>&ϙ֊3 A_ɥ!KWh&7;kWm7wZ!8wcƸo\qB2Yu"ؾmoܸP#q2NQ&gf-C.0:R[ꝔOG5XZvㅬ \O1F$pS_V*:L؆ b 7hFHmTԶDdĹs&_'Iɼ@{`h i}w c mBK4)>[;o(1q+HUBcp˥J뫲|\9 .Z:T&IQ 9n(FWwo7)79WbrJ|k6;Kec̪u, HP;^+iye5=^b\&|kJ TY+tT"']RYi {\HՉpI<$= 2J* ̦w5CaM%AP3C4(,yw;=J{t| K(; 7g1V bqfDF`>"=_DM~&5iaK|+{c;_qjډm$H3[5EU) Ý ^뿖AzXͭ<#ʪ/g FJ^-EĜkn);Cϭr~"2H6ɬedQJ T=8IB#*jQ  2y8#7ύD[ú+wʼЩ*VF>|à **6kIr3* cIQb !¢jutW޳hX`44i6AR~M#f؞Hj_>}W@7W$v_{6(+Ǚo4 V3~WX{3j ώ8K"G%džAD>zj='zW &9.S=2Ϟ5gw à"Q0l(310r$.q c5\:0"7H~jڶE eO"C -jF~nc[slhllxAcBYU= uvMHi\̞tϵT>"J,l0Rj°ECS4i}x>N#ì#f앦AQ_d]O9C9T0&CۜQPpBKy!k 'Փ&Rp tog"?*yJcO$^?F롕,Ab1,8nllRu(PiYKՆ {zR vPZa u?Q6]&oA8DGf2^|v|GQ?ctm9pSٷ+(T~֯b5}b+R,,v|d8K pm%SH {6/޼]5#mΩt6qLT_[el ;ߗ҄;Rm*,"!q5Az"͘q60Wԋ \e@)&cJe}=m$͖#dE G }˺U ^a0Kchb;fqdV90UjZ@<Il6&Qi._YVz%!q8 KH$LIT^ 7$ًո&G 5iۀ)]-ΰ4UrrZQ5}8xʃ1$5#g0+|N3)!7ŴpF16]Crl=PQ-q 8ˍmܐss4;K6wڋb@}l1HFX>PL|5>c}xEgnH/_]xL7%$}ӧyi 0TP&v|d:Gj;㊅UoX}Xr&*Q|PVtDH!SczUP+:yrpI&(zc="jy>Ԫ(!]t(BHg9 $FE<˖ԥqOQlin#"ꆔhmrx3{@&i_:ѻt&*/s岏HDz6e<9# Blu\LCaۤe4OZ|ovLDK?4YV19Td2S1He2dڅl*ŇEwy =RL61q=D@ZNd{P]1J;2Q7 x=:AI yXK2; N; ![Q X#xtUN´ Gq5QDy< ;ṉA[ւRMAc>͢gckgj2eqLqՀxPl>փצ~ :tbўn=1G!}*=z &1jușalȞ6Lgt8b%xNmsvs_$MeB_JJ!U2vN:TE˦Zq2ȕڂi4X(+QiCs|00rz ?mD$\mpTIzx,szEIա><;{~Б<D.4E?2;v_iF)k귅Y1X:8 s{ݝoq߆/ |RVM;{9h1D(`_PIׁeػ K% G^}mDf<Щ- ;sߒMG4-x!L ; g̾֏u֙[§N8n" DЗvωX`5YSo;f+gp*5¡Кѽޖ"y5 +&JMY#ի?F^ c_i 5ْB9j8)Kq"J#..!W|~dsm:u6QYZ`y/}#r.KJԪ[wޤɳKCQf봔W;"CUk7p:9C}1?Oy SC0WN/8nyN;o R5#5^aRWXtR cjIYb.v:fξ`o?w ëfej#MB5I "t]MR>]s*ώMR&IRUVl?'Dl?.꧅۽(W!dc@^CW  KtI32|VP-U9ϒNwӷoz!ɘET{w:ӎ#a;rMPu9G1 :(Ur= G,>T]C}Hf hCDvU6 "6\yD'Qg-oQ#% v`Ñ_I"\D0e{X&*A2,_WQ?eOR̾jQ6 0+&@ЊAֆLNFGE 6OI:6a{ɥjG;W.ݬxKdd&!kvgT`gxyn b3м;ݨ5mqB7Y_Dju/gOǶ;Š<3@izӋ 0p@"fo{TP< l@ZH)?ٖu&(d6 uq-q> @|ŲEk- 16Lo3B7_WSHUtc[0'_$m(o!RVx⯔EP cGKr?Œ%$f eUWp H=ϖ7h2$2 *+tE}Nncmm /)=+]S@pt/JZT2.8,;lIf|qI&ޖP:CI_Pw no%<çI率`e=B(gzy:[a,6A`w $l/ز*f7IV-vB&S ص4qQt*}fcI02辖oT VqF;[/sCGĽ -pL;%QKĮ$3N~C$SC+)l g]d@l]4,V%c`*8*3p?@jH gF9-Nv^ }̯a7"|-P< *}~uRP z*v6=W9~; DQAw[It~!@-* 5(%XUGx\p)l%rNGjs$ض jquVYDH]E--MzO2l֭kP><١{%SZ:Gk~w?N+Yhڐ_F֒S9gˤPGFn e/-GEqٞF;!,O eK.0jWJ>Qh s-o*OkH-n'UONlxLp&d&SQ}u+nIK2ޭ\ uЕ/4e8;3⾐RErB6'H) ^qIm+/6WϗPG,S?( IU52^uc;f*$‘mMR3Qu;I-?z,ڡҐ+9Q x1^@Xׇ6#;C]_ebO0/< ClU^<\idjFB[ų4|:uKvX-9v494q8Ɯ̓TY&1/= wZE̒.{+kkLؠC4&wMV8~Ap X:x0jP5j2"P"}&2.켺]6n5s/EamRnޚjKjEUrP34 "{b~E%ܟ# HPx-f2+K'l %aS5ĝ!O_\q:s`+~ne:d%?o`>MM5, n6/s.pׯbR>jj'դ=7"ޣSO w{lJP|L XM\FK%JfaZHp.d3@~$z"ch@j:42;>ҏO6}bmXsڝ)aQQ74 q3&b cDq/,|i+bñeDţ(V [}y#IaeΑ6dTҚݾzafdhǣtIW6T"?q^1mi p;88`]2I|7a{A{8pE`ۉ-== ( S AħKagK%{Ž3\Y{9"QK5eR杲JJPɰ>'RA^b+ Qc,B[`I4Z¬'}ά˷}ͺĸ|+yW E=!O ^ւQB+:$4|FUMg1xcWaU+,ݳVr$*-a/]P Xtw62gmb )1=U>攪Jj/X]0jJhڿ^1ش<-eS9+}f+_XIDSX&1̟]jYp]0b*WehmW vnbr65>BYȌ#a(^뚜\&VUho-ƋŊ5גHJ!πJY/|='c/㤉?wtK`tׄ3΢QY%#~jIDVGXH|ߎ @TF2s.`z9 }L˒N8X}$JNY|][Í8JuH7+ *Z\qxQ. uU5ɥDRLʍK 1vKZ|yÆDp 7cN1,rZӨJpe07{8d1"ixz[גDŽ"@́9/-w>0IUdR/AeMa{uܢE>0I,'T ڦIH֋YGz]Dֱi Va]Ї ٪Bp2M!ԇ%B@f CDf*' ӔmWO$ҫK8 c۬ѡMKeߝi .ƠŌvaZT(eMh_քz{ޞ}BCuƘ|ǜ2tO\G;o^\ݐJO5v|K^t^cM~)䜥'{9'sEm@3| c*<-LUbrY]TӞ2ӿyZ`6^wŃ.tWH|>re#DQ5k*0qWoHu(`"C6_gU4A 6 -iJOY?w׿K̆_q3UC!u9r7&Vk-{L>usI.A>3¥"@I9^v-34ڀޮa]s!!{aXSi@ρ T*8\4, :x^'.sFV!:a$$l_ 05Z,׮r?&9 $&6qk Ny&v€aFw9 ^t 3+xsBjwP.F40QwE|Z@˷.g2&bk/}):@j wNAoy]O׬ښB6Fxךgep;[ʪf8 RxfIc/yN6ɶ+TÐȠXNt!{Wqu/E@{Y~E\W{7ҩ,g8[_PN4ݸ17orrg<Is+ݑSwGꙮCγtb%B(CVu廣K;lR쫅:v)N&*\vx z2er:@]I1J&ٵ|LOUiVAqOE}Ӡ+` ;P?z^+.̓5LNHGdfB]yD\x2*nrYKHFE֘Afe .3SZEo O9zf2ˁ!5Bء9jFҐ2lBQF x&ff5yɃd\!.i$:7WWSuR,S7FżrbPAeSU{x$SLpQ2lF[<Q8H p( c ¬P꼱=b?Y[ؑM`5<\>D+2B\Ȑ&S7ᅭO/Fmk> $+毭~fz|'}U<F "VMr{(n2O (ԨG=]U v][#}IX1ۘa_Sj4J- _spFg(Zwz@j׆D5]GfI!I2줄'D7& KPEs@΅t v{A _KQS3Ǟ3-a_g B@Ш5bWyp!+YFIշ_ՀSV^3{kgՈEXەÏT(!j[% .[z`]Dö y9Ղab@I~,>=f %dO&+܋G(.[L7E3W}U{Jb¯XAG a2[T"H:_rK$հlbEsh@]䩓 .z?Ox c[l9/~- 18RΪ>UA!3=0ҵs~NȯR3J=BNX̀!^LͶ/p!RCvaŋ =x]ߢ[ * <.Ys(wLp'P^\G9k@N=͝B>\G0p,%Dgq Z\)/$!]q*q)BlC*w8F`Toz1y 3E^ l^=MmV'9LN1 Uc1?$K;AilEl%ᗽ`L(?Ÿat70ϥoLa5cJ^ f+2ugKC ån!a_{/aŌΙ}\'H<-*m3ѝmENfהKu G9~龽la8 Ry`~#M%_ t.lɖuh+6A[ryP}gi*/3ޞָy݆Y~42A^ ,1 bLTOMDxUzl殮YIf[Sn[*7?xgf ?=S8*N [=v{9R$4?u/0Z <b3[_ [-p֟KrLkHʜ z.4f ŭPHZ\Ū 0|,KWQaDC ,knJ$krːߡư.lCwFW:bk~.܅Xãmsf:1K_= JFwr"Y1Ow}QR,IYM$U+iL!2p2{avly%NJ8\ڴ ߣZHB*pzfԔfs@%r;89 X^X3b‹2 4xtJx㛃iEX\ 5[C!d2N%JAnhX2c0!c6e+ Ma*k'qYhiAG<V;G8_FJpqWT&O%jŤl:xh[z>O*ƙ]:g(PZdY*@25lLPSzQV\i%qn%oAh9"B`q1hq6Dy JVK&ϰKjȰ=,DЋ)RG=g^sJs wݪ[Nl_ uN8*:ۇ kOG(:F/y]cam\ӈ7opb$s_VnKZV=AV+a&_Vɀz-b[YE_sO$& ݴޭJ(k5w}.~;JXgȱr[Yf*TvwLV|)kwR]4V&l~s`^#ZlݟNQ+඄+Tuh5{S] oQ]B* v^ ͅAl.z;0Wh%~V07as$O g͘mE+À1p!Uflmٜ?+6R/ 5b!+ `Fˆu6h7n DdRL\#-꧘!D~_M>? ~U p S"&]TӪp5JO[W)k|zlabozF3“Me@;3!)K{Gaqy1 O0AB7cb2=ZXP&4%^ ؊;LdWY7<؊pchY RpoL;'e{ [hH 87׍ k zֿZd.Rp}yH /7a|$vʋ>GoE{u![R0p// #)Ne3'Gid[Dq w)e~U+yu X`B^R!v_dG` Vh\c:`@ôhT>H001+ۜM-CQ_&w,>*v&HUVX YKnewaýO3jHmAF>M' u:5 z8T^CcѾoC[(E`Ԇ±}&n2|SJ OsN@bkLN(xvD6@퐙ʈF]"b"[|Jn≲P9~D2yUh9b'?Fd/=z/J+*)OtA3O"lt񞀗-^΁z] iM={Z ~7tfK[jTJ":'Fmc!D|to<*y&J9'7f= CWod߅Tnw K"? VVs%a8Xq\Ԏ`hܱv&NƆYVQ !/}{M6} m-+IF;"*>^j,ʮ}c8+0-O"~0R>4娹%U7>1nX P3m{G\k*h@kGVVˮ]MiZEٳ癠yLWgIT@_t1Ư5JzrZ[g_HfYj,hc*83̑M2$y'k/]P뚶M$S9 nHŏc8`N=eOD"h'1FЅ٨:.TocKKKgUvjM/zqF 1O}-UiovaLjn,*Ų҄yP^ !/v+KivKͳgKTQ#KIQ0zpIj_d-: * *[%_}dAn1W~/.E`gWhOc%M3ΓiM:h]_DmH peYLsuu/7粓iʺ1M Ƭq!Zc(֋a jx W'-ԲR %8ȑ;5ډ>d\n &y?Oi 7 t'dFRb5pSۍ,<>sv w:Dxb/bGmʊ<:Ҕ1}u b}LriZʁYQ֓^MdPb˭3l {ATv|z %31XҪG$_ [B@jyyMn!'F,/b^g芮{ ezT%jOy.Yt  TiԲ`. UGG|[vރL+|i *,u|O'ה51@&oF?D kDj9v$[NV=MfaZeqfCW[Z}Z$ƅ?E(72=cRR .r`({n8hxzJܞ8&SmI;[*26ӓ֏ن0ǹW+0`4O*H=W6fbom/;YЬڑzP=O;8[ᕜf%O"a,MPڴngd׸G|t6 #6pZwgL`JAPS(L>w_?SD$"&])0>nxlX &yݩz,CbiQ7}WlOK,x~fBoraU^" n+vٻյ`Chq2Ameup 7Gޢp'pb^ BG"kxcbkH@]>hVơ}n^V~[K-Yy%;VR"33٭UF(AϑQY'nB^N_#' *v~7!ه|n˯sߓhm"eNi^*.W,6Ӿb1zsRqOQzc*l[~ nBp RK6kw,Z,Л;bB\A9Tğd4&!zœmf_g/Dv=W[tw_xZN4IrVԋzvהO!W Q{1mcA쭘 H>*]QfPϹQ$s`'E󱉮Rф"b7+utl6#i}/Ҳz6].C/ _ki?5!4F۝ӊHǘ(u!+~Q_3N azjbr WOR_↑_A0G#/1?-{-RGT]{¥O7;%o!=z/.5c9dFs9ڣքG*Vzdƞ.e_|M1?Ӌi2io¬ +*YHs&|ji>%Ց_ʘzD G&rVWQE՚<}BkaWWɍtNGjPߗk %~bio`jϣNU30Y[JY t(P-J\FPRFdܳe wxr ZSjf'^W\! G'ฯ}/dNG4A0ZW )}ş)N󇙋pEr'w Ѐ5Y˃oZ/u/+Ja?3T.61 0IsҌ%Ӡ;S^)Ԃk+`Y/O}ΚewǑ!R4G)N== *5ng*tM,1{UY%^h r` AـwMbR#3f3hj[=#qhs~:D~yӞ smGzf8!/=IP<63;h'm2VۈOXXyw{G ~ %ȡn:T1e"b}cʩPG '62U U >?ϖҭɱC\d8FuK0ʕ31L5rbQƀ ȝmו hC<vWxcp "wiѯem;yaG=1Pq Dzu )ߺ4]uL׊/irWwcW#6m*Tfg{Px\xRv9-0Y4!HL7GQ6_ޥ Y/rY|,Z÷Z >]J\gڵr(PY !V.{%lȽNHY"tFH\̇P"{gNh \0$ K{/?=5W #=BwmX8[^;:Wx$䡚HL̴&Ȅ|hW:FD3L&rGҞܿkQ j(dcõTTtߗOX)pe?'Ŝދ`oU4رPq3pBbsL9zG7bfq;ef/d)D0ߗjB$  bn y꿮]ќSD9%6tw-{הb6=cPJ;tK uS\w uJ-.V#wԎ|ȠKf;ȪڎtfHlnWЗ"F/:ij%Wv5e qǶSe"7jo;ٕk-usлѴ/QR/wJtf [a_m&Ul!̵|j0ZqCmހyA=6z(LmF̈r(\cXtp ҃Mް&dӧ@YAۄCKRmN<|7(߁1KbO*ӝ'ߞRӌ!N9x3[ij+fwT]Ig- L=&˼l$ ǘ vq%csľ=@{zs퀟k@+1ܴ^4Lܫޖ/h2iÇK=~U6z $ѝoHs'Lg"!2Wl"MlU`*QvZWk_SbJ;9_0')x&ACH& {1E.wl6ٌI=sR\]^Br§p 6 bN<@sjTzKt"((Ŭ%Jj|t lE9IZHUl/~D֌F&NwT^F@-lh %-IQBn'vՄƎ3SF[6+CkqÃ_Ϳi\C;T~7ܕ4Mۛ05iW= t"]g̉FBWᠷ  )E9O?4wL..Zש^$Ha< qH+h;"l3{'[a ;'GD#+d(7XW$Zyu|?0-DEN\6(C)nn͸&х(^g7!=fwcf*$su#Da+TĄcԐBf@t:B PXw/]‹zr 3G;tLFys-T ݋x?S+i4WAQ%v>?nKھP~$ V> Uc.Jwof#y_N[+8f89]7"4@xҀ Gぉ LX]ȡ'\-`9=0xw#o!^gjݏEmr\{ӍƱW-F~_QTo`s^p^8\ݗ-  S#T`pryKcV84i`rD@CE#FO]]l6  u;:2zߠBK$gLJ=qg%w"lR+ꧢ. (L2.cuHroUCH`*C~8qs %Y7/R 9~F:r+ov! Y!L#f'O Ku}:?Їm֏}(Ol 4`%Qhoov6sGw4kUCл =D)B,q6aRQQ T@{].e9%}ke$Rksa3nt5 đ ̛ Ujͥkł+pB,m[XqS);Q.[G@ok3bZ2c`4 ϚXIAPѨH3'Q0R1 ށ!/e[)oE8e~3^' AZę졧6.yojJkAMpG{b+41@fйAgdFVtӖD -w-N2eJYY]4-VBT4;[M?y%]hXrZ.qHct%h`{ E%iE躈/hKSE0Em@+PĻ.Qq:)^8]s'i ns{^Q#sv8P|uɹ#&Fh0Т?T{ћ77)5Hդdﳵe'Xw~/T-K5RxGЩl*Su^+O:i/wTi ȑ7?-Fy vߙNgVoՅݝ+@څ_+5srKnP `tUZ?u"](Tȇ5yR!tv?luQd)Q *)J3= =ҍ8xe2OGSD%&g5EU:wew#F8"oDfKw 0LGV|rz|{BBؾb'D-\|v$+I>359S^k(Ќ(C&0^`)(Ӏ&5n`I~[ ̰FW|V@B?L[@1yA&{zӳA?OlqRnn -CЊjДuܺ z3oMxp+!0%0$X2:yQvl<נpYXUSogiP3c @Y482=.TtBKuM-!I+ 83qy2٭9Ak[zbp᪸owdEl7 7Q6vEf#xe2g$r1>riXEq1觕{z^A%Տ@6FK \k!( 0m[#]1=\DB; civdɥe:&YJSu! xxuK8`a{%zmnh4NBLEuv&i9*?s+7voܒv3y !E ; 8 `Ƚ{=C@ͫ ?i3Yawsh=zwuŤ(@!͏ƬVod,npI4iip>ZA_ 9.`OOhtj}[Z udOG1ؔDRl& v'F/̃s :9 nJim1x~K?p@K=f:ˤ=x+ˀCVx({ڗh/nxeii”> hb QJ&ǎ&a !];[jɿA/~V,CRBrkohD`N#G}jwɱML!|P<%v82ybgp/hٯ _S E>Bmgٌ7,\AŠ'UAEpX;ϛzf/ |#yH*u5Ȝ}a8ם}6A\j"a4喇w<@ɤ1IڈM+}|E%I`4Qԍaq!J? D|>UCqߤcU7hvs ] 5w7N=ɂM/!:#Hs<1@!qHǎvY[IM/Mÿ K0s3+鿺rƅu5YCA-Og-%9gOs(6lH>QO}yS5៉C1TNsрHnF[? `d|5>,9% ;d{tFIiO DdzZq""% 9 r+f)CO^^*Cƽ>R$fߕ9 4C('ݓ0}tշD<Bm UۀHmִ2i}m_.fvsHj`PuAgwyW"BFԏ鉨#6t WIWnBOYy7p-KD+9"h˿mo>}Nݐi$hڟ7OMXNs3ܖ*+Ge$FBW58Jo[h:W_I&? Wj$em8ވUXoHd4yۤwҷx UI`EZ/DkEM_! 1vۢ@3C]Д}颴o$q-Vvz{&h@oaoEv˓"{TN'"䘨& b E;t;@g]S,Kڔąx/K+ q HO!Y=Ŧ& m'0vv8HɍT/݃0 A@ +00P *`FQof“ME7PZ3*HPn@dx?PҎmuwO;uո< =|)/O\QKF;Th2$-WK)exծ@uuz4=d'Mz?q#Y9㪶R0;ڀZ̴ @cD# .![r(a6н /!ĒL\ wx\W6p['V6 +t gfh|ZJEV(L2v7%H+REk=mwb8jv(^ym!E+*ˁWA[L= i D2w'aREiOW9~CAzs5(1C\ZJ Ԟd%] k቟2@;u&KrKnM'~YǙqWF\imO1c)mޢG\3gq,Hp~waOBȶ\ 4vC?CxbAD t4>{%|l'כ3# 1t\y44j!(j]W'oGXn8}nUB= ^~\)Pї4 JPO5*$l8G^$EfYyih~~\ k˨|ZsxbÅ3RD3f6-M{Y-qME ^isi)ρPϩ 4 q4>pMFj-`bx7./YB&ufKQ1O%I?~3JnN]u21=B2{sS Xy"R@1f3q }ig^23$.#jUyE"HY{=$GDa8AM(]:@h](1e2[-9x}:R?$=bx={VwQCDQ f[1|ZʔMbF(}f/-Q]TAՑD+#v퐱Sǖ6%i,r [YXlgOhCc[q^#jb7Fh_Tgo66g/ ^SDh9`#s(Jnˇ\]6!W8֬O" rd>%}]jdij.&~6Kuox("YX~#Ts%#D2Aču^DdOF;nDŽX=z>ǃy%Q3dPYC&ql~ A.NU/~96@S#CJdtZ"No 7UvGb&`!]&s9<2(5avDJTP*/Ţ|aTH!SͅF_)qCG^v6YIQ,S<}v<(~Et>NydK_dMJOu}^]nܪ1%ȜDU#&:nMyݬ`:+v'1^|I~)%kJ+n W(/g/KJB^dBY ް[(pb@p3(Z@a̫⻁^ŒL¿z[!t~ >A Jq8uA&d8"N4SVtAh(O;hl33qC{9^t MpTӔr=KXIP Ãd:w[W]9зh~Mv2;۸ sZL0IH=!OMB)N.9CF ~~T04;;2*r$'+~(;Pws"AJo^n;gCOF0?Vφefj]E=,rAtwCAB>uXAY#ΉkХ!5p&\̠,+XZv6=g+s߇KĜ΂ X?N OCԞ>]gbmR€̬.'^.y5s`Aσ Sz27܋cٳ(UYd56]$: ) *5~Q !uVoZPDP $f^ȯz (V| ;NĜ" rbh^p%E5R(ҍa6]v0?05. f>D #ٳ/(v;!WppVAfn?qy-{AѸ\E1wIȶ\*{2s(IGO=SACsX)"htXDh} ` &Xc7]">6}c[όL.@| _[mWas1#ʽ?^8͒"8wT"e̤07 =<މŔ~m ]ŌLsUc <.x FC8}*(]q FQ" Kعr[6":k{Ve8iUWaC܀ȌV|] W]RX]YyhƁ#A)-i&]l39]&#^G-MeHN@ DMܚ=sL:R~4`, `Q՘u[opӒձߺTđ),. ivfjgVD@>UZJ0HF"z^Ƈ .NZ ]jjMQu!:gl㇩2seƿ*4%pz{ހ^)bd-ZMm$TYnRIJ(B5kĉFH;{ }H VװG@69?;^$6:ej)Э7{^9y%6m^#l%A {k'_VÌ;5#Gk\3tؠovp˞Z gYbln$dksB2 5(8]G I^Er}71fʧ2@?ox@_ қ 9c5^ !du%CPL1~ڢ}ڿDhV"*@@iz2:Rh x { r"ɑ2_ipWlr~4S 5"d&B{\ N*|D[xM& @:e>:}[}vuA(8g3!gʖ""͋8Ϭ KY_jŋe(`,HQ@$}p2ؘ%"9p#"nNh ̰*Ðp)'#s^)'\ixI '%@T2[+u%B;G԰%E99_FqdA,j`1Ba<H8lчSc›G#;_: :SRPe2Ҩ.Ou׮D6e 8YbX M-}:q]@6YIX2ZSWUx6.k\4N>=QMB ] _sܳ-tbfw>ha㸫k:79,?ՈEaK`Y5Ϸ +L>͔ z8_]Nh>ѡdb!rb$K#죶]sTnՏ4 /qV0#^hНE.Qcκܡ c3H*VGۯ+m7$.km[/*U!p'ӄϥ *Řz3vuǁH:mla$pn#:?ezs3Pm.'|7ISuJ=#8.Y클\.+-:7 | y4Yr`7YlVtzdfM(!V(5؈8Šd3X oܸv6gu oN}'gf>.c?΃$@PEZ3Lrw!SoEC<~Hm m+G'GaPђt,}<׮(J;>E~+|p%o!@zP1ɪ󠓈F ҋ]L $VPnƐ"91[Ύs%O}2kW)b0ڿGTPvha pWhcHTB'QԡjCNQlӼy^]Ycb`[;<+q/o"D>uTeÿeyh$73 ۴/;ɚo#Inc1S8@=:,:H61H8,Gl"Lo8heK/}I@*1Fr`Qt㖛o_1`6ۯ5F5_$Y)\(/o.ss>]$ZϵGډ SrlMpQ&8`sl9T;w_X#% 3-40:q0hN %PpY!ײ$BEWxJqeIm϶%n~,N8f Gh~=#EBؒ]dgAjbxOJ;ͿQA_q 3b,fmd[@6 ZzRM"NFT LrZYұ2(i\JJ'f ÈG 'vcn.ر.>%ئ%Sm=flJebyxT3cQ$x!pv o%1lF^@<]ݠNƇmܚ$-рMFfk 8<)qmw]Z:Xo];1cL\L,pvcVpIHU#]zWT0irAiAl0 =RF-t02{=t|kx Ɨ}$p0|+(bup<:U#OT'OUϩy+܇Xl4HϳqO'+9Z- B͔%E6lT)vz5rՍ#!Czo+ϣu6!^lmlmJW5Єtu8/'P.gidHb#Im'JsR-SWxW-9);ϵ?ö!N8/2}"yLT< Rj f05fX4ZIԘuIWCg1lcFV Exd\K! -|0ꪡ ; yq,qa;hRnύ JICtm}84VԒߗxզ;cesps0VV]tig<ј~p<\yr!L!W<>y NuԠ"RoUD6״|=l}RfjF#ؖ Vse)4py--ȴf?Z+ ԬSJ䅹 ߏq-+ ^;Os3gNeaW``j nEcnC+_IڳQl,0x̿zS!q%{loE2g + }W% !TYG|VI|c`;QpiUjh*~gU9=NxMْ9NX3z2ã'9L6NJ,Dm,̾47®cHm̹sj?a&LHSfkQSɔƄK/&p֭; ?n0]r 6zaړP ^6L"rdJTG2bv[Hyoc瘿$Ac\0@f,D#PIzv*~׊8-//"1nmE MB*umӿQUէ0FK/G}g6"gFn"AKͳMMY*_ .:)rHvQ#^)Y-_#ЩUW<詚)4MSRرثT4 =o)4tq`xíMSVY+~f*HOyU*k囩/+彩1CV)kex?d. =fw #;kV" U[sH!U,2agl[t.u n((ř!3m#tM%j2AYWtJq`LşSJ/fA|,4BIk~7`-y<#yppuS$6rk@1c< #s/[2܈Ώ4~9QhdF;Mm"LZO"fDBF  I7r2㑉؃ײ0om"1ާ>u0vN z*,)2ev37.D(q%zt39 [UI,H{v=gKwMBN̷t`ד]VO4lx2/g([1zOx_' ذn-&tSVyqWSW`Qq*9 -B1dt>>lħ%.·-v-[H".9&sQ G*Mшo׭ ~`a[PI){?mc @r;I^`d:6N.^y,lV,#k~O3=KUZ\'_ E(n{ψO g8^yX|9wK08>]XrbufnS]SE4nqlw[C 8H"DrjvLCTxF_ BPF:DK !.#jpA$n1|9B*9#JYèl8 gF{ǚ^4e rc/^%шafZuwV+\3$D!}_4\& 7XjY9FG6#ł͏\utyy_F/Y0!tuobOvkC̈́,M&D948AqK']Aִ{tiL?ƉIWlA:lC/dXV>8A.0qF2UIBKݿ5P&JΆ}o4~|Joçݯ{\V-Pue.o^kRɽfaeoL jHH"{˛4G0OVLޏg~nip5Un z/ oNm9/Q͞ޮNo<)CGUg$D˭}#`*WaEPL v˿w 9Q36]]K0ADp+N\u(q<. $`JB ]k2]3 f0Jti/*/ZXJਣ?h%c=O߭X Ok0I}#ڜ%26?GlWa933jz@qN$m_bg fd'7TY%'uEc ag"ZL.Ntzgϙ|z` } ^Zt0*f_Wp6XO$3u; PN|mu׍]`ɂY9qlKkag rzGR&ϩA!&7LGs 6Z_lp Sc%bѹdvdmsqO1%CV ːͶ+{- /P]kCCM<؂Hhd$;0󌄅fjvai Z*n+Zz^Dg]V/3E!]6<'iz.D?Ƭ~7:MRcRՁZK0akys\\8Sᗡ$JÚ!$SV}D< Ͳ 8&"Aᘚ3h|YRJ TsVW up]ϹŨ2STkRp{$w#=a=M,xW`oNݣC^꣱_L֪F ܬ5T끮\Z#ܨ.ˮ6Qd>68b!KI;3פJt;;UEz&T&1! :V2Eك Hh"*^i3$K==Om_w黾2X~!:TM)Qqg.u_)72n1s7Y.4R>"Юzm7Ѯ~`H[var[ZghZwxKfJ~^ܕcW@1Pqtbͱv? rT|T~Ka~SC-.h.AT*E wk'%%5헀ޗI2h@fecP(D <euKшUYЛ0a"b;E̚.OK(/MЉTU:4bsM1ں%re.34!tY#P8G U EF2xz:Bz'Lq*z MM qWO֙V_Mn@qRbpWcnݛ}߳ʑo0luM930cms!z/qADgLrl[R$#xH9gMTXŕqy h+S7Opٛ_Xq/5r3k&f)D\cClIj(ye r++a,4PN]{ δk]YfS]ԽZq2It4b+AZ'Š@n,Aa3q~=מO/ɘ":_H:juIxeU gƥc ?9x@rsL e[U/Ȧlu.B&qjɖb/`֕0GsA_-HEK/RS$9h[6엞9#6/spRl$Q*%6Ql8OYzSWԛwg+9?ߟ uS':"N  aE QNR@ Ns`0btJt#7k";s**P*W5$_=|8rv"?xis sCeulo~]W' f[C#tK7-TOK=ᤈ H6d*f5j;1" `t4YT|#Y_;<4"bGv⿞yenHr5/ iL;ğF}"f>&7Flӥx/sWNzlGƳ} `u"\qD{]=NxNAbXhXa  ׺.A!vZD.@6%EU]LsrW wS'8~.a=Ư B|KiQD"8̷;޶U|+B#ay;IvCv8(-2w. t[7;Lx]pzYsUw<h7'uZ%tQއ.cKض4Gst[8T ;}F>KLds^PzQ>6Y'LlM4- VF# V ;\֓44ӌƛDC$ mU j2V5j فrb+Rz^Emf3,w.7T\<4x훑m:׻r5p)ŕЭ= ޞuݨ2 L>-d5J`G$Vsf@='>m"p#<^۾z0YHt&C;CR0OCܱ^; DMe8;+w[Iؤ姨A_"uny.ɁaBQutz : kQ21Sr;8S$'ճU'M^@ė~>XB:>:zQ$:`ޗ0-7@{jLle7Qeaa^rWrqGGª\PTD6a6{EtyhUXJ&[B/}> &u˝̐1UPa˯X:K)9+]bUsn"J@%}:)*N7@xX叫)rn+NŢITĵ ka%ٳ(mAWCۀXw!0.JjϼU%->|R:4ǒ'bt,bB&N)-0%ͣ 읠KebG xy]$V.7S`gl-x?TQi:/HAofN`CuR@=kȗ_QϚH4HV(\vU-71r$qhuQI@QQ:-yB1Xϭzjelv@@gը?yg8;~)|vͺ4RVsR;}agfdvX"<ף8~ߢ(K #4 TaKQ{YToUZuF[`YѬ4Ngm_Y)!̤6o>U~AЫW,|nV=6d^?|au$0a9lk)d/exUbjQro0DX;9U;N(?I] @9vz|I+NiŵI̊<:oH#1P h/׋#qz6e-%ֆUhGwB-|#k x8'9~wZehe$w!VW\ :O !6xRީ6Rʃ4"^9e1Fΰ(CJSd]0Ke(][EW{.$f]N.A`Q7#%>%V3وjBĞ X8CH.}(LI,l 7&Y.x0V*M %~n v嶍4T˷n+D;|{Iÿ4-h-{DKΡ`#ʒr?a&5X0 )I(5L8r:pSpFEtqh(ߡ>~) q TA5 [)'=,*rt8)^(|Nzot5&.3 \>]'XJmOL~M{B@-bj0/:}$x_*@\ſ}Lf! !**atTk zjx2񧚬/ U5"3j9Yq6_M˔)+ Ҝ:Ę@D[DδC|EZ gze5Yy\j`ۖ}?q*n`$S̝.{ZfqG@_83#+uOul-{q1 χ SJ;k }P _8AV!/b=H6힛 mV"(S 9FRClNNb  ov0~C{0!ҼdGp<8xITG22-(H76tays"ETv}Tؿbs+8Cv6ת`vasMd"jlj[g~ AnӀ*^} #RKUj?@;6 $`2nwk$ N㕫O]s^xv6y;}LІ}j @4FA ?ڎ;#4LbRe/L a[pϲ9erTP+ GtKG5/Vf9U"a)mf1~wO_8>&u%KdHu0^MYF?^ϻZ]:kRĭ*sm =~[R\;JWH_5l0aT HL-oi9HNjJsp $v[zJQc`ܢE-NjeI՞IԼWP;hXVH[v &-D?.͍Q%IU,u°i`(idgm]qSQ=t3n 0dG(]ۇDjeҦ2mÿws'W>g$ Nኸ >۩m 4r3bCPr=ERku8WY3)0kbM+x2tJbQsA ^j]\H,& dԓjEdh1~2(*[EzGLPnN5FK>l?T(>Yy !JKc/gw tFb2BUqlzSU~‚PiV5fX}GSPSYCCEW3A͍[=2)ouTO|uɮN9T#jf-PfGk{gF 4y|4Ԭ;C {5JE#޴!4$LW>Jd8xc|oO1S"M=&3G;ATe_۶xxǶV7u۠)i^^bQ rXܠA%>œQz,:r sT$_J+p_TlmkjlUU˨j]2(SE uP7G5P!|h-9RVoB?]M/iT׷!7er̶?7%j}ӄ 3^Ы(CH)nR6O5\:WȤZkk1{) 8p I7I?l{,j Mo>;ͼj?A͘,ʎj^5ħ /k"Cq [4\M_C'#U8.)s) !56)@/f^#׊J ?;밶Z:a>̪A+FSxr.Fbi6澩PƝ#+Wk[g@hѰ⊰`Jx;i_p>{nІN4cn(rpu#[|k"B8t.=ECX6ryP (bpAY6`d" rn |Y*k(|%[+Q:m2iY^fY"}lbA[dz >u񫶴a .$ZRCr{I ;آ㙺=u.OoarIMsVy%fS -*ʋ9] KT_5eÌ+ne(p=%kۤc2h.h\=e `0{v ղEΟK)*ٳ(Mlc(55<=)OWx-1`FhD, NڇjK@Ğ@F œCXnߏ,*lw_{XA09"wMLx!$"36i/$Ducl >qF 1VGw?4\O٣éK@6xUjrl)]]CJh@7eoqːX|oZMza.Oo]>gD88qFOT722wQLNq:?퐭5p̯+d|[{u'r5~J˷w 2Lq//L5`XuG>Qϙ]8TCJޱYĤv<#-"uW)t GwBB"]\B3ШimviᒧQ!>I\tU.Q RrU=6܏U]eoyQwȃF .N(tͺ)/& V ]w.2LWN6}* ow`Bc7q9x[qk<7cQk$:KDĭQտ~[4wԟÓJ^/}:܍Uйy E͈ Oo{*t3:ٴǤm;[Ac|W_ V 4 }L9ZNݓa1mx>1}yIKK+ QʽX)ql/ p!_r٭WF8I0+8Rh_B@Z2QY//Ǧ%g%,m?eİ"35rպXq CZ{W; FhrvTFkt~Џȑ6@ʓ`6Mlu]0+)k;6Fy] 5o˾ky6fg-ڷlz(JHʜQ!CWN&vca<5hr:#l&iP{MQbI JS7tt;em{ClSmSa|OD]Xτb#pөp!? g+{]r,z=V:@k䇓q# $ Vxc;QT1SWǛ;qdi2%AкǐNƏvT 7v4)kRMk@,H߷l(ﷂ܀ž1%/_KL2LpNʯ~<<O{z@7QÚhgmqKrywLHՀ )TgI rDVWKJb۷NS>Q94Y55\_l.RtvL~W!OX1u/=cHpO)tŢʻ ~Sb X! ^|i2ߡ뺓`u+%ϟ4ǸmPc`5F/r&0xQi*7w{i[F|w+Dݾn_fU0Gq˹pУc<g1(Óp26kԤ| tjq%_I`e_UHzIŒtfS}0[;e o p1Ku?XjeحRzs(.vkHͮƯTسmt8HBQ0~+N,d}0֓f$|mN`*#1~c'K{-^=f=:>qǮc14s3E2E}q_C k/8La죪Sm=ߔD4 JҎti\ yj&N s06TV+sYRvB9x]5uikĻؔ9oXJiaGu})F? 5ߝlUڤm5uL cy&DiB+?CuK"]n_ԻVt wu)%9x|6==Й,9(Wd ~ͺX!\y򼔱TBu M_!4~Q5®|P6w %EȚ>}Ilu5?񔽎 r ;#,|ᯢgt6L=E$!LN E@f$]S8J |NiG.s[ NcnN299dB9]qԵcS^/HDQ"XVaoD[lE4ijz>QtJFuBLr=Vv Qmeb >)ᤚ.'Z!<녣o U"@}kw Tcd_˱b8*PܬK"s׽PN~J9#4-fUxL~YvfBh0\T]-ccYVt?uji|\-B&6™# lSj -❺|Th!HN?Ht<1oc9R&>%ECX?^NEAqR8& 7 ȴQ{R`H{ΞM'UgCR2L;l.[[8/n.)H؅>еù69M7"0yvyXv1XSTqGEkEĂ/pW\;|K9x\V(mӤ!4[2cֻwwwUmM,0Tֱdi~]qmS:hsZWvYϕpXTh7}Ggnb䭿Px .݀eW{*42HcT.Hdꅥ;j9xPNFn ;<1?4@\h B yEjlna Oki/%m`2b٩(Ü 1c[,݄h"c!V*S1dYcYmRh-NqSEֹ+3?Y澎ع{(4Ć6"Nv?ifL iCDO5HF]3c\{dg>nݭ,>z]!t4|玝cU&T jԗ^p O;6O軅5a'{Z8ߚ<򂎃F <"< [7hukf\#@*ݷGH<`ٗGw|M ;2K%[p@.>)>Cr+'NM 3J|Q5vb ,od*F'5-s ߅Nb:,8Bs;1nKp*9㵦"/P_L`g62eoMTV8sce5hLJ |K.C==&Q`WUs,~cfҙ@%$2Z2a~f0S {A,TE='{/1VKh_d[aߖn   ,1yTet3ǧ-j MrS>R9z)c`>ӈv (!aR'k:CWuǁۓ(%_p(ڏ_/zN)Է3: #mF5mVq%UNJkLu-Ÿ?ey|#16܀FSLih8(=lsj2|YA>9b>t# WkNݴ?ﯲ~K@v0ճ1b,cr晡 728Τau՚)ـQ UԂTg4ݢS̹ 40Y9-忤ij|5|V)ԘO=T擬la N3ݮDәjhbkY2+̫νjޒ>]nF;b3?S AƯٺd, "zjjAx7 pM3*raJ!B 視T,̫*ண-MaeHѯKܝf#(Kxt佼C$`0uXoz=pĜ9#Ŭʜ+!οA5HIm<⼘֪_spab=QG]*ܠNMB*h`lo03h6/uԑ$[|Y6-W oN$)$*rxvQ@7gɏy1" CTPT.&t>%[AB1%iM9A[x%ro+d %b*bzO9m3~17oGĎEmxյU'-/@I4m.O{ +['snRW䑖cRG戛Mi7x$R6ez 8jmm9?ieãzP" g z\'7C._榤t4?[V\,uqZnr)ƃ3m'=r$ZQ::~v̋{ 7h.?,AoEH va8Mz?V.D1I֟$ lmKQ L,{slq0y2oU"v[+eб=ri!rp-!>f _tx'eў!JJ]t] "Q*_= q4eP-@z$rToa)}el,lcV81=G͖$RfufHO$nl3Pbiz|XE>]BζWeŪt=`ԮV?={%PGqV!m*i)aGbA{!3yv{d(<_ s)@)0Zjvt:jR^W1/47seE̔#zؤd ?JH8'r* &¼BX`x^LΕv"brRU/+\?e+Z! $%MX15\%X CPaZ\3{'L&P%.;p[K]kI;fgF4e2.Cs>)BW)3ջh-H Z'<΂<_4gGN٭pֳ"kf QWi^3KZq7tmߠ "xx % }0&*a]/y#񸊤D$uqex"JC]a;|ŸT{ OV0u꺮J3Pb{ EW^&!M6J^"F\7XeQnR~#'ڗzbv˜bUw'Q0{W = о!IƦ 2J#)ݚ6);QqQxGbvJ~uVEbYȓ(Enh3^lY';\gI^7j?R`e99_>޸@\;×sfk1"@q.Du.dzP[*=u5}c0<+O2)2yZ(sNJI9:p^F4>66JzT(l'j)Kt`RP=WHԷN6Jqs5A|%\r)}f6uzv k-z5/}+Gp@uQ7\*gzf1oe9 0c1!i|f:C#"جUAEJ2a0ʡZ]?1vτWF4+UDg6ŅY7Cly4'fqSCm0%ݴ`F|߯?25w$ڷ 2#PTQHJj_V?w:˸P,<k]]7^ԎӃpv*gD㴂mf h q0GAB~}of^+ H%0k~&O¢}Z$=X3}CQ_S:2lD|ti@** SRaZ@8)<goN"i {uďy) V 3hArQ aWS v4GnbR1I Ŏp)_Z/A;T;9n5B1} r,zmf0 RsfP]_~n|>fWN(Ck;:hRix4wKpIZÐuKU9OqET?܈VJ=6sGgk$=NpCy /Cx˾'1Mǝ,+y]9x5ρ{9qiW p^ <I%O}^vva]!_isĤEKoy<[B|p>3d;)^>r=dgb`HVޯbnIZ%hzR -޼FLs^X'Կ.;= n!Dx,ib<0>gefIzU_1?Цɥ RSΆHʣNw 4}`uՁ%[QjlU⢔F~s=;ƲB6x8>{\/0F=DeƂO~+'%M3,r|&|_w#hؘ@%v}03ˤeTlZ߆w`Y&jiz֮`˵t`V[˥b5]݃\Dʌ9fA`]06G5wlzPny`Xʶ 3B/2º\pۀ6c9˄.ÕUlx`;iC6Trݜ3󏷺WHH*ϢHut [U,(߶0U-H7"qܚ\ALl1-j}xx'& - 3y^Zr'ٽ-r913~Xunɯ0zB:0_w[=ڝF{̴P:or@zhVQ_^6fq,壚#,mMe`$?\|`F!'boC݄mmp+c 5רɔRvt`_owo!"ЖU/5'[ltlM|"= @Mav']M_ffȭHf^ NWAdYǎDR6ebr?:VVG.&Z~Cē3\62{f|/wTaQ}%/mDžPHS‹xo("%f4(QFS̸~a$~LSV)I|sAEAu?XID6W'd}ӯ/\a/|ojuׅy ̫EJِi0qǰ(ȸDVKqg", Ekxk*ݯ RPޓF*הdVu`IC"ɽ~5k~Ak۶@1c%&ay²Ѻ F&9S}=zr > @x&@Z_:La ?&(I2ZM¬~QQ/Qlnu~@t5'|G^Ȁ+oJHOb*FW ; V[jU&*{ jSx{nm Pߕ6Vu ;U]>b Si(rb~]Ԝ)$"HWo,)D> O>3iu2(lsD0Mvg'hO@X2e^jVf&D10TD~`{YY4~4eC2?.Pb( Cнv\_+@z{>egQ|"{)ɷ̏پ $riok~g"4ӦZ(t^AO 4R2CWpwInMirV$}>)Vo˜O=^Ƶ}=J8TQϤF)Y@PIP9^[ UF8FBK1 ٌ%|hvtR]-[YJ!Ҽ62YdR:MQq^>(oH2W&`62 (!hCQ%h^]@o0؅7G'[.M jC2D28*-J-ac"YbXΌYMIZE-FR~bk g"P x51cOGϤ0Ock;t'cR f2L"1-%ER0X )[IJ;:k1p()*2|'o7kGeuJM'K玗kUri}=bt-^f-%RRhϩ,đpup [ߙ?&EXԪ)c%.J=xmî lG+aզw҈ ŀu]?o@Ѷqz.P[BE"Xd [uZW7Y4!E9}^C'ےP ͊ 1ɨE1bVɆר+m5[ ~" k E5{ͤ;2 x,M`w]EﮰKɷABc?jOVR6Tۣ< O}^ N`,̌k3%Gy8؍1#rJq1:4_ϕ>9 [Zw)s0N4*%57Â.<@Kz#q:}ȱ^cTb볓%?  |6ڒ.-DB%?JOh'Wn_CғXF[΀=g[,Z%ޠ|J0'5O ICfu"e`0^ŠBLTj^/܇#$reoE{G֐g8PU/S|jərt\=$ʗ}HPT TƜsc20aWxzIuW%A;k-X?xF0<;%u;|Gĸ4(Ȑdm+J|lFMB:HZSCJP5H14&@O"Z-b[ '|L }Hpܔ cqnBSǿtltT+g^µ?>P_ڇu̜#NR;e[9kW9 5XC[>87kIJíyJrk kz!ǡi.܆r1ۦaܖ# 00Z/n=3WJa_χyj|S  dSV,=7 /36fZyKZC#h#".|1B͘Xg+Ĝ[vcGr8svx2kz2(բjÓ@^!4 i$cy@&{mF# օ]2Bk1Ir_HE&H %'_UHK՘o әR;u'A?<[0W>Q 91VA(20#%$icjs8 ,,ÜFJ9Kvv?%-,".Y))v='  Nܰꘅ Ғh :5"kőC~^O\SN iak߀"q~KGڳpa}@MJl81^Ϧ &F=~_8wG9_|E!cua\J<!nҕ퇍M0*#|zeCNMs}z]LX} u?j]Xg2S6<]"͋u@.L . g=|&}5W\xŽ~/5k&rYënYuIUqW\{0UG] -x^^~Loс,UKFy򫶇Nn:zAU4Aս0A*9L'u/K*uK5Bx.U7o NQoLCv݅*?x~XMӳB&j3wB yh|E޷Y]"I+s?ㆪaE F& wgBی?'!=ůxk2XWEA:奋xQ{ baR/;𻽉\xnG¤ ²@iszR-V65NK< ٝ<>t~3:yV* DoN,\ʇV牠F4o]{PpP c| :u*y2Z+F*gb4QO'ߎ%вW5iIw#=;m'/(6#Ƅ\g< C%/T+P؃P[au|3JRlMw# ޳##:_~PV%XqaO2aa73B4=bmP5u1\*_p-Esyl=/J97ApmLvzRDnQ](]ZgTY>;qMF)N/G$V_gL28%`ZdbiM*'&0'bC6>oEܜVUګITߴx9ULē"$lj3RARLyQNpbiHm2#ԱU h @K_ N}º- X:1pN%'WꊌJew#{V=\Vz#HZIhٛa7,gV/fcxvBe"i,ۊ~V0g+f(v8X~eS!1 z5sV-˜ޑk"t&͸W2u.oyϪ]fPtzCDPR7ЇvnM U^Ft= u(Hoyw.gKu`tb0W\a.`/^;'hOTI|7?\ n۱av YFR"GqN~+8coKؼLE$' V\/zO`OIȾ:u4V)֫4Qfpme7!G턀7Օ>PIDb'MBt&@gxF/0gLuf"Zl!,\dh5fw$%eT6\74 A[QMBt 6aL ~#TviݰmIU`,ÔTӒDXAv;Ī2/I&I֦f]{g7oz=2H*>ڂa51ω?qNESB\=0:BPHUbv;g6-47t`^Fh%QrȄ<>GޢZ^6˧8wovB #$O x{Fܰ նCֈڭJ\ 6]1^HަQV,C~B81@]1EĒh4<t~ N,;=ݦdD !tkY?B mIL y|_H峿1LuZGI Ť*6??P;t=QY#6P2G ds 5i=Y֤( bR))p1T/а7?K:tWZ(RdrŸ bļ8 췌uci&8s-SRX3;@Hcݎt; tp!ֺhK/`peh/>G>ܦAb"D]zPDT1L2zo*6ave,7`3=_X3pF)U/.Pyw(ڮ.BޠJ5תf -u{LlU׆.cK7QЈgsk}HX'R" 9"`uzE\qܺ/61ZVwv:©T8q˽0gSՔ ˮ.YBE=Lv k@!]5d`Oc@v +3`?soz(~Y;{ Hlz"hR_bs3aoǀ/fJEUidS>{=0?6. Gi$=BZ/6;-O dyjcptrӫxo13lǂDKO=ЋC(}0RuNZ!GHk{cAnGCkW wdbX ?eld3$Svs(÷`p3\aӱ%HOz` uvJWH9{{GB26%Yi^Gel^94,v]I, XoZl ۪`UL龵sx\ָCWsz@7Hr'' R?eMr@V19I=eescDLKަ8J6wL'oܛD<.3]jj|gx2F]4 r2Qܺ.29jw0~jZSM x.|ځ:>)vrdW~Zw.]Xloa wˉg0q5FUɽAiL%]2.R뙦jZ[3䄺Pbܣ><.W0*%xsPgWpGRCVf|7"ff@KQ O5G9;C*u+%NHahGPq Λ9f==BhsMik0|M:FES@<#D.B~^͝d ۀ+R.ƣ:]\4/VER+L򛅻t?zX'09,H6#i*F=vb +o c$5y# 9 Vۮ|e9crt=`(L mMs`Y+5E3Om2㍢Y&|mU0PeQWi]"Aac^ӣpyH""L`'J'&ezzV>X pAr cQ(L\>z>!o>_QVc[>7$x}ZNoȒ9pKB~+; (>ܖQ.mZ'LY5TҪɻ)~ݠ-߫{C~;2dd>*ռ3z "+/D`kY׽ZP[ܑGd'른dWe׈zs%NYN0"֛1c Ly^tډZS}=iYX;6dg3 A6M~T17 e Qw=}()Q]*4ϞIbEתy@>mɾ3 bL/.g۞zhnBO,;,HĖ6 `Ԭx+e].\#qcYRS*0-#$_k@wPZoFLa ?]ٖN(e˼@š]Ky+hc4BO8фD2+؛~ĿKze#9Fh\H}q4{Z*(4gLXܴY/Yo_2&Ctu\DDJurEEn|ḿG MڏpAM|ƕXG&hDZ%D.aTΎsaŘ{Hü 3Y{ew)]|~{pd 1 ,X&\ۏ_и)m#C;8]:rqNjg$COӱt%"? AOmps ;G^yĚ+\N4u/a@]A O>{mX寴ZcfWhBD q4[3I I~*F"UL GuBWK)q~eƽwֻ|R\\3A 6IxQM^M1MɆ\I^l3Spa].*T,QΔbR唿 P!, 4ѽRB WQ ^^5riBex'2B2o7Mh 0$hߡ!23*|}:4e@cH%ΙA=?+h7뤊'8%H ED)3EnX&U[֗ EEhpM0a$jtt" j yIM̩h=ܒ}x.?kXH;],9f=?DLfHP'ذ=`&.!/qx$h^UP@+{wBi%̀fx[hC'43s5٭wfɩ@&L$NVic#fR'iD8O!YrפM[N0I\ב'<=-_J1X͕_AJΗ7gWQ3A]#&sKÀZT)2N>Ȃ-WG~˳6ZУ᡼-].gÎMU\xGg Yv$m$׊DQ zvὖUY߈!*D^7fo)Ʊ<Nx>n_) &iyomEmz?& P.yUYw;"%r`tY(alƲ#3t`+ӕo\ۖrUw#xԋi|WWVK7]y3 OG%$$b"v RY3e:Ows8?T5*aQ \QiOĠCVXWJ:l6Nx!*=U#V|^1~xںoh2TϏ/je'_isEʳͭWxMHO"{aD#s# \ʮv_Ϯ:2 鶺`j .rKVuwIq0s:4ԑyEArل;g4|ЂV2D(.*Gu>tN^amh<^V򱯹ﭚe-!/F)6=;()sm{ݧZ9a &.N.u25˰#* dj "Ɏv~1\ld6hɿ 0%iU4BiH+|'F}OcaZ9x,ŜH)$ VQJL2zTW].vlմ٭WsX5j8pyOd!c=JD)ww26ZH<2JQawE'A80Ҟ?dKi?J?y. -P "NgaR1YݲsgrNQr* E(d5G|GkRpPYA6ro]~VO&^bPQj8AJ20SDPX*iCz{)횙*)+,Q| ښ *;P"i 6t 𝂾hhD9K^I<*Xɟbߍ$ٯ6 1z>>' TKm!Z{n~$ahAo>K2dd=iW[- J~ Ib`C3 b+Rxws$kx>`l ͜ALw)>LC2vel5om^sIGa9,eUhz/Mt?#Mog5M({2HsAia-?s EcC}ojwHhʖ'txjGÛ׵aUlV< =j28;ŭuw:RY!OvNv*Cݪ-:|f4~x-gh7Bi2KX?g~CcM/,|!_Ʈ=K~W=D'r.ܧ\6!}ۀ,W=(D?q7XTxd|`-㬝Kc.&/&|opz8jv,hXÇR>5ǜt`%e?wi]cG痄rZH` d'wfx掱l]5}nj 6$.C]ٙpooCfG:.AZJͮGz. %5߮Zv3 WT в؈\za4@O4r~4 3X7 N hڕMVsq&5%w&FْAt+5xZ5SD{ ǥ4ƳRĊRz.R˂^fOs(Od6M&(@£ V]E=~r1%:Zul%Ѹ^VMr, ,F@v4+G pY ™-O\$g'S%WPT (L(Ӛ`WY0SŦc@ Ig<߶~KMӲK @Es_J3P7sP7[yZ0ђ?S\si:HFO07F Q"&NUY",yDH)?1L|q-,metIJ)0H]..e\x$Ҹ42~ԓCS3!HJZtf$kYMG߆&/ |GїIcA,1/#jaш`L2{Jl&.tIԹU˰ͽ1xa6_>~ 1A]Єi a.cm] ) *ԫ%߁$NLڡ@x4"kDR7uS$r{185]|BWbxb/ AD (iXX"pn EqSCL0@]`': ?޸g-냌f emz20u IK Ї|{Z@c(}F`C@A{sDt\xWyѢŸ~rW-1}.lJon#.T}먍0@he B0pXNr k!SnFYeBU{naR~%\ήDTSFiI )#Pb[Y9@ ٢%Y.i 꼘E.w<ب?Ψǫl<0  Ir[OtbM7 /]|P]j#VvxdCbQ6 u|mi@pq/o}|0""Qpz,xM8386n,eVXz̆g_-X+(6xѺ ? Dz Nu4k*~DE[69^H^9b|@,,uB4JG tsqrTU"<Tk#ƫ,%YU#FRvwJ_> SNI|_(d(XWsxHڃA6t/v/'! g|3J;g#nII'"߻Rf@JgĥzAm*gq=;Hi8Hd/#@ʏ&st{Y=ڀc$,i8k?h'!O'#YTaZ!)st[I~j2_\l0^ɩkfTLxz +O $Ϸ^I kAx;ϻKHKT=hnȶ6*fgh2.lj BvAXAs,;?!lv)G*Anxr at!.VV-8uoS|[Ԙ *JR}GԷV#ݜ ,O }ř~2nnC2,l w Jg 8ancW`ęB&@mp1 ,?İk-T/HŭY,]͍:uGmU'̉<.LԾS*^RRGD7|.DzJfU3KJ!}YP:uBEW@_)*"Lf=cNPǴhDGZ_vCF"#mٛhFͨ|SR >R;`%_ oԪ{ДܲZ1cHJC+PJW鏷kDȭyI ]2myг 3矱;KϜ%P(eLݒc殧-pKjرo*~]3rs )rYU)G]:fv0|B%_/ v2RjH lȨ %VrwHn-% |JR6 E Ήf9"zS3Rނ p|CMI@ujS`/ʤ^ya dǓW/G?7b=`7 \xspYXgu-S,yΣ x_tJpe#ǂ#|=S❗zEjUI(w魵3qoԂQvsZFAႭpVyV^w5b+f Cq ^F63 騁irw(^ o 0sT׈:tqSesf Cr5tėd9Pj(1]H>N&-P!IoDqa5,_c$yR4m_-~ړ#n)57T-rҕO2N!}#%G `7}-Zu 7iĂ Š;e'Ts(k0Xv LF%G+"MPCyN3Rj#_ j9MKK@iD;t`'Gs475ootMD7%PXy6ۚOp=} !gΕ]4O3wʨ`+9uWsJ9ł![?_"!clA];{L^&b䜢=sTh} uƁ?4w`ľ]GbJSIq#J&N\'jh$0N]ekb $=HMդŰ[~\ KwS7&^aD޸IU*=ͮ׶S<#I+ewI +8YDUSӵ@ĻMJ8 Z}8gipC>XPe.T&ٷpO 3>,b.~oƥ.1tX v[3ϾC?a;эƎi=R>r_ccN[{-47}mч˭R N8劋Ꙝ(t],d@t<F.2 va(dECÀc5?瘮Q6aab ;_^,3uH&;?uΣ^tU=ftIRG?%ğX-m ' z4n>rݵ#4ssja%pmi0P]V gjWT옙.Ln݄ryt<萷^P*vjZ'PWԠsdXGek%8ɼ{ŇXtxj*[2jEa%V}g,2 "=x zn.<aJI"|nזUg7-7(r>T 襉\^jhé9ߵ^"*zQ 0E ka&+q4alQrrO"U裚U|DE70p7Am EI,CUlNa*#&Da| Wy]Y9X;8[![+V[PCqcx;j}9I}Q/{;q0 rJH|&ezOx_gMM2j[ Ͳќ[S{aU]FG\7?T/y|rUYxE0Z6rf %۟E2UќrDwA(łdjM%0Lyfc>pﲨJ> 擔X}n՘uw=o=\JR *kӕ qf29p~i$MNU֤fdzebʊ"WN̔SʄA5@Hdx0zԈ] N#N4fhc[ { ó/ԲKQK OU'G!SN%9SDtDvɱ׶ r )K78Zdw7tJ&q`fjj_sAgzW#Lx.cP[C%2vyر99r!G[FudqogҶvӑc>E{:JB~b;^L8@ 5i}@_e5tGKѼմXL Yk, Nc;9i!TEW/6qbw O|TTwYͩ1Mɏjr ȾPi*Qẅ 1^1C:]8d](Z2g]S'AY]&(_"/;} v:!5&$f-jN7 #jxhƸ-&%=GϨBVyVOIf(xS*r[+Iji߼L}&v߾#7[4 $j[07j[LwSqNaa@`| R;DFp0ɪRWq6Q)[(A)=f5nU}+ػZurL2/ m>vٷIة,4 ,dp{$vpה5Z(D])klwm/r~] jWW4E+M"wL׷o>Hr,co-V>FXGg60Fx|c&0r3l'|'ߋ#2%մ'/Gn] e Z6Bٓg@&j 1ŭ '_=N5X =ׯdc=cTݎ/*6xB?iKm;7f!agՙvDX3YyqDHWyfrFVU_SԱicU脘/!-7h6Br Ck7OuCMWVO;his4xd{( }+%_pg!6'[^(Upfz\Wp FTfyJsUUʢ(sL-5>G-OԳcR&e=2tuQj-b |TFȳ&^qC4_oB"-)Bo͍feCh>|QZVC 2pˑ̒vbq@aowI\Z8ᅛCPrKcp+*&Y| ("lgnB1C=؋[4cGXQ洪QR.}Bpvޓ[&±U/-Ĉ$4.¿^MLpmpv~X+o9mMXJTQL A,~"UhIƿ-%t]LwGn;w/~/Nq+F$?ztpZDI{H9_agST瞅0x0_N))eSS4~R5iX?ľvXNc*. ~IӁzlYԣbMe4Wyzq1_3(/Jq%`sPίz̲S &3dSn#MPر`pd$Z[ ңsD;^59GKk JD dBBd y]O:Rįs0/D?Wڇ  +Uj{ƙ^ʓ>Uuf6{' " U]4`)]2/ԁR(GoK [W<ӦYV몁 d5OnFV^Mi賋" [6KA>r* 4\K*OzxB v[D&)_ YLo)v(0(\_6`H&mOdz ʠ<V0Z8#,Ad87څ9V -kZJ4IJ6`hwtbZRbաKX8⣶+ |l ߇@f@NR voƵuq:e ;S0\7O_Ni^Ϋ:d? ܘ.JmjJ/P8vGy4 iECmWUY4Bp6Le}hըQ8LZ a#V4d kl,8Ӊ'ݤ3fԏ(;A&8{j\;!I6vF`^Խ2hZS?eB"h50B"ʜҋA+{lzrYYN@ $NH j9bp!r'}#jФm* l]=ΎG7m B;j9ST~}caURn Εbl|}/^g1 h 1]5 R8-FZ7!{ꮌxS(wX~5aN &[B;BjfP>dRnG8?Z$D\Q[Y\b*XΪR8 ڰz@(yfF+(\l"m#ȘqL̶%*#pꎁI!%\M㢜 `d n8_77h~S۴X#mݟH} ppV̦^,Yeխ-}9qbjzl NV Fwy!o,!_u@j˃ +^FemBqvH dQzSq3|\;$SA{KY@nL~j 嗬I()M (~ˡ\oeT bn6L}>t x* ny2^Y1ktɏI[^|akDeZF]}5z :C ho6b.pܪ*YƶwxMR XU0c5˭iP蔠y`gGVd-rAQsUN`X'Rs!eKDXMb\8)* N\7-I7(jx ^m.v `7p:Ջ,&19£&<Ċ*՟^.15} Vh_J=_“jkծw4{R-qsŹ4fT[啗,u@bk=KF9EߝI.nRj raIQbrﰾ;W8ԕo &1wc31 viuyOв_-EٖIާrfl]B=.̥g!u5lLրzϿ~ڐÊcVߚJI$}/6ls|zElܿΜgE (~̛|X{h)@BDO&~?V~E,$3ȸi{lL TJ=}+pd\X&t5Vr >7QP||mq{B7u?K 5i0E@SSR=eN0pq]pt[o%z )~`nZfCӅNG$7%q.ZN\> !?FR%r=ed,+⍯ E[idP&!IPJp0V>{w"}?MV'Smi ,"WuKZRFk ġTH1H=>  , &r CoK|_ VӹZt ZiCᠣ^8(=~Pd:/Gi{,f37}DT Qb>|GNXʥvGKAmpWM6E8!Iz1sk< .{[ʔ\9C.g\}P{{+=šCvU9=QF:2Q"` ñYXVIĜ{<֫q+At;A![,^5B$52ƾa6sc1:a.Vm& ]apSX0lإdxW$en ln5y(!6=ތO#5M]St'h| NH0\&6kG?:ңTLXd~BI-"\.5ĸpiΪ.C|eeXtix-vnNc5C@c4VsE*y8^H>4vF!Ti pM8"vdjrfO*G\n/;wuK,q'ޔ=cbFwV$9SWk$p$adY:2|UT}z Q w+ O\'Hf\CFֺX**l[p78ֻ}<%N;9 ]? ѭ V d7/]MB^} -Ӳ`MZf4́:0N9^ ;(swmOX3<{g#@;Ab,@#!XжEe_pB! Á벓mGR1j]d_">T`iϒ`0U#ƊvqP覫owĥ1l?D$쒵(1К VsPr!) ^QDEY,>u1kgc;(l o;G[=ގw83\4iFԧl6 HPi j<5̚fYJ{:qM䫩{TScx'߮QR^aPV,Nqׁ#ɒvtpH&V0mɨ3kzb:Hdq\]H>텍#FYᕁ64#ISRAPCz'8dq (GT7!N0y C6+[~BA׍O%漝$ZhdE߳Sk ゙bH /V*EE;ίƹ贁t[ҧ/a/]%d:UdXʒ*'?oUuώ$7,̤-$IS^D |&EpP\3o=iRĭ\J;$ )#q?P&ڊ +m#<{bLW$sT(+mmrE-Q\ԕzw&O+Kv<3Ȯ?^e(u#$U xT ^mr2pzIp ,OVCf#QݰiӅ}A;x5 ,{L͗/A%9/Lt;bn|ˏa `ploW^Gnc*Tv0D&ZY?oF] uM,.7BsvS-/c:l Zq$+0w|!!Ԝmπ jf}h"AS3r{YsW Ę23bt!񘦥b8ԥ*>< J۫'$PòI3AL x޴֋Rn=&"P'ak/BSoE'-[:ZYEݟVaJ f5XUo @'҆Y?/7.A+S̰T)aXb4#)nl.$OؙEmىΎ,M_e_:H>*#Wf3PϒN߯Pn+ssGűj2@oMRgn}_@ = k)[:P:vTTwv ޻u-)X9M^ٖ&=C@׫\9)~P\cɊ=зJj%8,cJm7rBz6T 'sd x>F࣡$+ qƜtė_tQ7q WԳ8uaa7EdC4|2\O$'ps٩l* p&c+dS5|g gumwIti\wl  "f= ,O Xti?&[LQ>-jTÄSu,UU`J]{I^h}f7&X4bcO S蝳ֻcZ=Z)auAxg)EPb]f[<"4X'ZalHZ_MσdtƊ}el=hv 7"3H\F6ZV%+3c\V<:5?Byj5rK[ _8M)MŰ1ε>UG};$- ,6mX1wi=#*3\s*ƫ<96 T%6N kP'=q"gW!lNKG̊Zwqx,,6DUIcPtwG5΢\g8P%7%kv4T* Eu8$w`toZj1u d' 7qn?Vo/"N W[Ey6FlMc,?~2?\S2nK=BM}؂~~ vIfO( Q>'zis.B{cApĹKR-2~1@kR|0h9c4:; g(4J%+E3+:e4J&2F\Txu`nlKU.22nᘐu4|Jc 4(4SǡoD;u;uZlڿ;_`ݷpFY~yqZ(ZHTm[,kώp!Tȳ*b?wq&O.="*̰Q 0J,P+8gOIBÌaϥm;pMKdL)6JG %T' 7-YO]-܈/VhSJ>eNiTwc#ع?qsyC^_ݦ=$!_cW|^h.t{!`}om\nOSҩ6J58P9Ĕo &LXlM_ÞnEϹA1*Jᦃdcz RXrM`k|HqKWfJ[@! 1ApY}͎H KŁMi3}xUoyc,F~0hk۴bwFtv} 1y0x^G)TaҽBq'?oP}߁~>'=DzZML4II7v' Vg^PU .G0ؙkU. !ȇo/,vC3s/iG3x&g+m@G @Ζ#iKjn" 8\=7O A !ȝvEMvaw>71yl\2#+'w:B:M(hYxso*Lr})zeH\.%avu(uk}Â$4]cXrK]ˈobi䋦:@LsNu¿A_F[uZW$sO I'sCEGMrlҔPjdZ]>BK_MoS&1O@= }$DdAtN@{M)i5n75Q9Euӓioɽce mAC{(H,wI'Y~ϝ/E^ j_^PН[ği4NPUwVl9M(%يFN}9ZY._MCxo>MiᏨv#'bt2\^;[jE5b"]CY:^PiO{*g45CLǦCYӂr ҧ^8~kk[ }Pn{^K'珕 ǑXپ5TN@JM[@<R{~ڹvsl)Qo/>e}ij3y__x66Lynn1EY6M 2MmD`=.o aό?9؇pY:4}|#?Pl\FQdb?7wxv^?X'F,ZlʞNJ)5("{*k\z?d"C+fǿG }e_d/J|yPtC ~Sd'WwMh44f)~G^žOc[SB r.DtC鿋`$kD$}H'q/Aك(]2(ʷ*~iJ TYʪrDC'"Ԟ;vDYc>GOhm H(`Y+٥84>qDmd=QS65?JEF~!ءI?h} /5h_UQhJ{3cȉTOz߹ ZV}>-IOrZ𕠇VוQŲ/\,8C)|A JTwemV0 8-Ľ"5VjjD$?,8 rݦh6nO쭾R Y8`&_!?(Ei|uy7L6ƭHnh9/aD'}%ǟqɂ6ro"5 9U4cw5<=D#aj$}}W&;[,MP<[lidJ3#4o&.jvCn#~AU3cd>2Z[a%C!RT#$UnP90Xx8`:5IKA|$3Ob+`Gc' oZ+Y;"k65$-q3Ԫ`/8=~Ahkv@# $̥<$ J CN|sKA ܤOʎfn_ݓFG|{l%2—4qA. ~=y0WTix8| nWe|0yn]ځeY(.CnL,mKMwͥar@&&kJ(5(Ob7FN#/~AuΝfTGrL]p}.V1Kx<`d ? W;=?0T4kÜUO8Z4jVND[*Q]a %ig. ]E̡gOk<hC%z`ָ7D0: zY%y;I?fɗK ;z&_4`7e Ycݏ? B'j vS!_b ;^ة̇edk%$v`*$bR{PA yY'or_ 7 / 'g̜R?qkS1Sج㽴]l=uo[DCv3FeX%SN5JĘy)B_^w1F3^>*Wh,;vX Z,Cz୦v83"$>^?H[TPE#2ؙ~65J jk zޭ[h~wO؋dt&mz}\}`"9%xxm88pӇK e:,x3_WI z)O~NC^kqd.!K} 0 2o:M|Fx[V[K5MSb1W"D1OpR ڃC_ƻ?5FIit1 99hf\ؓ$?a˒DĺY]!{ bݔn:;\o9JrReX=A7o//BR@sI| >pK1@;Y+tտK  q,JhўVg4.OGO)َJJ? <^q0)*c82]9Nb+C~ F sn}2*4I}4S&ֆ)bnaWx [c4BV]GU< x5tؼی|-Dc,*tdv0cEV~d o!ݞIy>\"GWJ*QE_n"YpOZ^8N.NI?zx: תq,IQ>cHXV,ъddiXkxmѻ1g5&C:j7gKp'Evw3۠|Rq=MW q>bUwiޙ p$[F:2Tsx{O<rAE9D7tgV>lA;39Tyl-T-ֶ+C9&zvqw e#(ccK_=yw.a?tgfyBteBDMԏ^f^zes/τ\8 YO|~jRY^KgRXyE$E/79}*i@c̬CDݫfPkj^[eҕ_&63Ho 'l><npt:mXeG[-D$~)<| g42| 8.袊TVՌ F+ z/S'tћ6QvK/\wr8Fv_Zb=rVq -#Re]K𪕡VE|q74ʋ *?$^sH7O pA3-I/@OUL& *8;-dAeCU/ک><-ц+Ḁd(1Y{+$Q((DdF%սa&-aMm0@Q$jlQXmvE>'4Xq8I~KN[MWC}*SӝZ{YU}w ɐue"ԔƥR];FPcjAz@$ 8: KN{#15{ lI,;[@Ii<]  lhkyxD@*oMB{h_nȰuװClQkp8._q<ͳ]W"^~"!y$y]u [Y)0ͯH Q]6CH =] W;۷F3ĥ=߾ OW0O Ljy2(I <ܽnBl< ~~sƛl5a#Lwo%=b3MD9$dj(A k.4jEL/O0իL!t34F{jOI%Լ0oLI88Ȩzt{u^Eɶ 4!E=:I."ļvX\G}dAu(wAYi(1z'}sHlZ;zT%E͡7.0.-V%\Is=#i. y%UĮ8$[+i#JpMQL ri`X+/~vS;sAOSuh/TzWt=,ODVmTvo^5LP*ww.RY8~_,gؾKJoZ2{Q䒵IJ{&T¦/$)H~S9}x7_6PVv1IގɥmJm؝8Z;b J 8ma.x`dT/-c}|*dei !Ec5gmM' htK,gc`6íOSrm~ij;q ̌Zy*f|LS~*@y"F vu)ISE Z*24z뼶;*SZ k8O!Xb̰YYµM);N 2m2<kxvrJdhp*a߱ZQNA_UBY B*^oQfUMbT!to I (; ƃ]D&%nHR֜"#q&==FxdVꢂiJ䕱ou~t=^yDQikb-b47tXeWNwN F y~sLKV#q@nvpC]3c:Jn-SYiAQ^KA)7sOb(_)ON'&5+1}8l[Hqb0AM7EFJޱY c[GdU|d5g~|JZ˰V7B\XGtRnooҦYCT5ȍ-azs#h| D ~G]P.#pPGaq3UẌ́dgiH4#MK%a ֡pRv73 zP gOIAn򙱆K'k=Qł2$ !H6J7sML-%JdV`{vvND!^[h$A%̕3\rH'ze9=:)GN,gHoG6]GdB=eӨ La3MO>3f%Lyvnp?bԾue| (3 49UĚ+n]Ecyb/IwaY!pF nb{bt{!զ Tiˬ (~+49z<#APT|PڥGE;Rg9CdnW%HnMvB8r6pű]o7n$Tʰ.f!"2`AP xTi&];[YY1__uۈ2bznYšgxCZ鱱ǣ!$1䘦_hh6DlOYwʉ%ypĒ)LE gAnctH%,10m/4$DneΣ̢]!}e,nCe -Q}0|@jnOB^xI]ȬΖ !mihI,:ghG6u+ͼ {2dCC$v2 74QQB0 +RC"c GDLJ<_0Lyk#ގ rRC]gVķIUcfhHoOED]S;6=f7H:L*BTAF$Q?ZP^OT[T RTf}iYT "*ek]9<=Z&$ WiΧQOiߪ*p*ɇMCj9D e.0*7Yl"h fg~R| q r+La۽|f~I#18d- ȿo-t(p/ӌ3aq'qMX ؔ%@kXB>PYs*2Vi!~d)A %n)َ[h~ή K!,ܕ߰"tmu u$Lk/u jcN sLض7ٵ& 4H`z}ő9dAbX|LMF`Ά"_YP ~[ ˻DBy0 N:wJE)o{mzITֶ01%?sv`\xCFW6mA0]F&(K2g7IzSZxKWŊܽiY(ڗn4<'񫣦A ](Q-@_K{;[\s6dХt&ɥ| ,4,nӀ\"b۹ Az8аRÊqUf8jiJ m|}נvDZ{_:pM frj~lGȸf +'nCzίʍ іC*W(7U[e7-~gPQx.]#8Gb׀%x=qKh_y~U+Fpz8:04wbL}ڧ`}~Ux\sJ/3d.3Pzty}?BG)ǵMqYʖn 4 "% o4GSk|M,B#4*ja%СX |kjgk0^j844QVw6ϟpo<7AC46_o KJ rhIZZ̀%}#n2X?쐘pR)bsɹm3v{rs|Mk "Ge$DW%%G}EAYij[jМ&^%P>Fa}]f}g( T%u3+Z_mI$1X/]LQ,"?odtx v Fγ sd`yz}0+=9zǏj)Vʏ0brlo߬zk!{<+_M;Hi 9 $Y'N#7zhה5bm`8x;f}KzV$ z Ncq햑WEA2 L3\ ˄,D CqڷL KsEL$W3[b!ED`@4[1еjLƆ1IPZp!fBunJGZLBTJlJskORG`Z_Xecb}  sZd=7%{Sh'LO q0_]̨g:WdepL_.|7`A?ZE"#$!Њ=ZP'Sc2C_Eαt wB!%n uxy-@ѻߪPJ7~4^HbŒ@%.%D y$.}rO5s9-6N E:"[D?RyI $?];%E~n:U?f#", lߣt9a5IqSQFOW,ܢZ*F\Oߒ=^ M+ƚb<暶Z麆ɏf~Tgzy j(B(^ЀPq W ~̓"5,2%C y@Ǒ~۽$< p{4;DjIyns|2H7S&5c>׀{cˍ \e c1K~m#1yϓY'e1dy^Bf)蚚@3?5sJ8ٵ:w?J6 %_&(8ac 3|Mv)\>q쐏'2ulFxYg:N}:bJ6>C4 2I  2Sa/I}p&Z =.p8B[,! ~ bgRU n* x?o$-ːJC-Voʞ`f?HyHEi@d`8v8gcpOFk+l'ّ}ZtkMBqȗFrFz#`lzKz^ H&+FY$.tӣ0́Y,sr7u\+7f^gÞoo I ;bM&›k_7Feq? Yntt,KQ0YOb 07@_~ݭmQHDQca|5ZPew0КN&$ITTNtT ,)9OBٻ[bO:d3V5Y>F\IH;E%5I˪͒X; &ZъgU1hB]q>&G*`ΣoJX˳B*ϏĦ,9f2{1J&:/]vjiLJ, g`|IܚfyO!JQ0O7L< aE |TK<<&!`TG]3$>uH}"`g8Z> ctK< ,4 ʧy:U^)R׋AȪ8--b㲨Ù|L7&8s Dž ϓ*D`i#P/-&O+X&DA]yT&RSj'_h-s'7'0<ܢ4C/,ZN}A+իNU$jUu~'Ի$^Dg$ϗ2|ݗ_֟ET&l66.5bt:h0!pn>1:+σ* /jP(p/vYN7s\F@m4CɮUJx8A(EN~}7S"tN19W rx ې'!-~N7VElGB\q_ :4|Hh<2O 3eR>dUE(נ^իp]5O3v|R봓/γB+s?" -ƿ9&vosN:L?i\C`fn1v|<[0yy pkͮcN)dj*&7taIՎ^5ϫrh:ta08M VIҷM@_Z8$\l;?W0)3=pfSZ6T6ր=F~G6IAߕ^CҊK&w`qw7j)H+WCn3c6/xah#N"l ՟ ZQLd%ܰav)Ro9pO d\ƶj1'>sU$+zeHmx- ٸ;^ +UqE+I'6Tc}d`uRE'>>Jk=WclhUb͒ )>rVڋԀECxҖ}6i&M%q =^n}-aDvd͊voY J~$)ɐ |0E28B`4 J.&6? 1nuE̛=g(Y<4M/>EOV^TȶK'MFu2x1qDl,`_n8ӂāE5ƌFzM1j?k;JY*Ya2~^mISOgn| 8O[v+P ~7} n(F3[=~q^,cd(0iu|ң|/=5 igŰjcYK,*:"v\fUa>eS\t%/2DUwFTX:+u!y1h3U,!e9B0mjLLy4CɳTx h'9-OlHEIY&y"] Bl$t䥯4H?1@"nR4.V8_F~BU"Tyd\et[jwƐfQ h4)q2\ "_pvCJN&p3yJy0{rCIՌ|d^(AfzkxYPAіKC`8p"X4Q Di1F8a%Ip٢3GB-- gpTvD3 ]ǿ޿G#,24'?gg&OQ!3$̛<"aNܾX})ɊxdoNTNvJ~}#ݲ/@HhK3g/8#޿X- eexUC!wTJWtΒǬ7#HD;`}U[m>\Ό'AZ^'يF[E_v~Ͼ bCSs'B9m2A!8pJwԃ.A_@\UBR~e(FqT4iArSCSU_%Vjëf?b9ƤUۋh# eRǔVfiKfe㯆^+'KYɪ32s$VՎ6b1)ʔ~u#lgJ-϶ik`NfHc}ʁ.E-1WGqkm ХP=_*#-!{RĦRB:郻 /®y5^1]kCY( [rE aBQ&|UqzfmrIӥ0mesoln8 }M0mŹ%'g)- *9j. TAROΎ' q0[ -H njx ֶhgN+zl_nT2?-W4L}z ]>#t\Х+*#!V펛R>|$`2J8A5ċ{0B"(wpviu֭֜ŝUN m iV+@f,NI\aqNV\"J4 [yU'da4ߙ $$+߹+P=&ޗަ/3ϴ/p/"_=dO+9ĺR\[܉i!NκE.V3ޭS{bj$%BGH[+"k-]`#˖yh JDmΞ.r ڡ&$xj*|") _}EU` B=e껻XNDދ4Ae_ԨIa}lGhit$C /.;kg:mgci E=c6їPx7yiB$.C =SF#O6ӗ)*XA;%w \m`y98IMIjDn%s- =c< /HگZ *YY#Ww&h- k} K+ϵ؞4;XN"6t )׆Ss:x|dB5570"rnO==Z jM!b'W+NU{'t4^YQj3Z12Ԟpd,>M :Brbc936~ţUdot?bNI4ѬW)N%Ƨ1E'٬V3m2D34ߚƲ:HB pfl),\;]-@ptߦg&|3cH, gI\;`~k=Rɣ,nk2?^;zό`l~0i~1YPm¤֓H"ف]? s+c/$"Ͷ\.؂ {TĊb\Z V?^eݟ~+t9@x U4vtf?Fx7zpN._ -jm y10qP7/L?Eȱl9 2Ʌe*L=rx .iw)x4!kQF^WKTgӘ%37=9J6N v%o1 ܶStmkȺ{װ>oƞ`RœyU2i9L.].MTJ@4.Igx<(4$8``J^3{Q H-!#ƺ9lN,Y9U^ E27WpV> 9$N-6h87dE|cQE>pp$p|7` y_eƀQzRi(9iC'њ~]Q sr23p{,S9/^Kû ]k}R9<>.h"y=hP|?D%#aENlrX2e/e}W{-9bQV\_ޒ[J/|ϕzf ƅLW4A(y (w;^V-ꤝ@5[IGg9z .)毿QxfQyv܈H6`yMp. m}@RUBp3!o"f}7kj#%+;%9r6~'K@%='Z9EyT[jzO fQbJ?Т^($ Ёfm uIz^ώp<ϓ\jIZ+0 pb~%J4A+VqkP9ES '[{HYϵ޴%DKfz^*ɑ+6cPc pvL/$%MQz.1NJHn5diԍABavX50Gl 󬸐'8#P sXB^!4$0¶mBAҠkI{}A[0M'נ8pp|< 娡kU+] aJv$~2h_K.5J'%c( /glxS(`tec: *vF!Y򾃮fLrY܋g2+r@zUe(-hzj3ܱ%c4 dTԪ͊@BAҟ^GFop8\i){I'i>PY|8 u-ej$m4yK(DX d.^.9/gErcC*C`h\5vPBTv?p/=7(RKP]ub -z%PQq M6ZM:ȿU? ichY9?yq8gc!9;qY57Ⴏ*+*ڨFcU*"!L]qGmz pQ>`풃*0Ř= 7\̼W]$9e*.Qe>7&Z95&&R2`.!Bh_6l:lj[)1~RB~W؀wuDz3L8q+ReZ?ykKsmխ"m]\pW9hV>^&\/W l?hE?!Fq'R Ҏ!YE,8E)!&g}\vAl&̠> 6Wmm9Þ!hUęt± 8ž]oE:g7Mm_]Ԡ t)>̙J^JڍtN m D3%t&! Enkk8X_jA~sQk4WG#)\]1L„`Xoa{Q:%a_u.a2Q- \Z$z13iǾaHW))b"i0: fds#~#Bq̸wfPb.pj,0yQ ks;,j&.>`Y g11 5OB`!8"mL<,\8nSbɗCk$a}=|siPrHf$ t:<018{2.hϯ̝'` ,HYЪٖsAtgji_׹dw7Wpx.҆r!gĪ'|@͡btjpž&>bYQR۲u%l Ǹo.ydMxZrmܭz6j/QIqiLQp@h2PҿJ=ix :g~-R_~U:.iN67[$&QiRo2o=Ďsž#lVAA)~9T5Wp^^څ :/k%ɴMfέj/+|.vt H _3,1ǻY7%jR qRZ̭ T[+ Y7c`ab˴"eQ*!P Hs3-@#``SO.(`ܺB67ަzOol@=n(Zxd}cw7/ ,j'hqL1;]86jOzjdԤ` 6;pMt_LF`U*q'+ߎSqᲅD@[$y#9X)t4{s|d} sv\n@îcae??$fOjNH^vKڮn:2瑸U bES',6%iy)TNmj&0$sG1<7Yy7 c Sfq5&3+hCU>dhb[@HvZ~ab^7D3WCPӝ!;bܨ:4_bt0pTy&5ϾCSQXƼ`N>ϝadOGzٮO fx6߇9veEY ,?O46[QLSTqʵV@[;?Z#P-•2:7;5Op~KjN P9.'U{: [|"6.7A [.$x}fw7gEf"Tu6V kق\8i׃UJgH'4釆yUyH'Mv#TXLFÁfjŠշ|a?@:ΌznOR2aR7 lDҳL}<=KdW]xs=]6Ppr=EBȼf<# 5B'KU.T w~zveu%HށBm熰nϷD<6!RLR܂'Bӑ{L**wʾ#& 妜j7[lm!2HñYrg&C(;ߥTusIbچ͝'hwzکJep>ɼ\|1@=YUd]LP8(J?dh"eBs[OڭxMhdN'f@C]lW6*֕ x̴vb­e?X طП,#ʹ:>&-(u%06C0/SbקaCM.A؜b:nlĤp΢P~Q [)uh6qK)̻_ʅ~ZQGCM"p,Pn.祝J* ž{tL3Y+ Fif_Kzo l6#Lqx{fCKOj d p1;k z(sIe4J#70 O]ע1L$xfn%[Q`xE{4;%}q%$8kK/?79HIjdKL8 tr^8js׿]2>ۮBg;P-TԱ9{ԙwEk:%V8*Hw+_bp77-t6qT0"lIL+e1dkոRTQRE% N9Nꙵ}kt{˹]t)V c8{1e&UV˟+ޚ^gLMtF9zidu~XB€%`<l[F茀(gst ;uRf-טX(8guj;Y2vVOTD <4߱.#,-HYc_Fًr-S:9,G \i0DMWR+CfhN}щL ,H}'sxktK(5ՁL/ N%SNR M CtweJF7_,"}'" 'NJfv-D=A d*?:\AFynO5^&w͌C\m;iHg/<8q0Q1YrcK]dz\u9}3z%"o3sL5AGO!wJyQZ޳1)dWX_,͌SUZWL9(br@* Ґϭv~f2+["`YVSm00BGUbF,I%4ESׄPlVR% W$\@ uھ`5! xY%B3~}SW':h~n:?ntbqv@ #x`92D%պ1!8f<{9o1r Y<4-M@&r=`;MY)._ͼb{_x sV k\n%3ͺ"f\]c D.+_ڡr&ŀ zLhsU?\A!:sl'0YBd _`*>N4B1:/3 H(%ɡU!MPX\6HZ)!*Ql@.4&ghJab3u^dg/VBFhu v| \pwrϏXeL.:;ZauG\rk:v̽,1a 34`&ۥ]FTh3/yr |ٖ^DV7( x,4l8_kc#wW <%*l$ Cӎn4Wx17lчF+!#l;y=s cuš2*700GsQaּ!7n.| T0鳄2m4rO3,4r;+2.H(H?G:ϓۃxKC ЛO[Qy藉4&bT۹Q\ds?WpJBr74bi}V|*~m"0@E|չFm&I(G[yevfFg]cwHoA{C!^] P҇S[g64RKp,iZEi*,S]3\%ÌYD*&K3u$Qep}`mI! xHx5͖Q\FHߑ K80ewvl;)X3{fۧ:O0 k(  gyn/_`3}16|:g2f@X[EG+F݂[mLȡ;t:7}vKE .&3iIM[윦' brYWa?vm޷ &bG\z/_l9h`CD@Ā9+ 1iD3O/(J_ H sEyP;#ьj3%$^:@IiޒnA{s̘ͣe}ˉ2*"Dop@F}$[8ϚPl\uKԍoI2~]%=3 ғBK+.ڝDdr'bVׇHP5>6>S`D{M^Oݠ!^D)rĎN S ?$OG13Hf]5 k{l>]u%O:8(\fA Gi`` VҺk4'fȵypx}m}{2 (Ԥ`DUcҙYcTP_%q}xv TCxz":'`/ܭ:g187u^ݦebkB֙q&c>9 ^K00]0ЪF?*(^j\Bhg~d3z^1Xp: Wb*r->H eyϤemմd=Gdb0!nSi ߩI_PZOB!}f{ R~R1uQ:9*+҂F,@59E>y&hQ*EjI%Q\?_yc{ O[JJNp8Ҭf.Is#i[ȰHhut -wcO'w>4R(-\M4̿_Zaڽ#Hd^x Ч[__w .:Q~rX?Y'&~)8djߔ7# :M}L]i;MoIu E'1k(~l= HWxM%6c`!h !q~i,w鵕U>w1V3m`2BLl]R 5 X̅r#t!!1P S6DIG^iQX>|\ Az GKQ3a ؽzS ~HBFu!^[8?~jl+㙙257_bXB&yb}?CH` *6V#F1k.^UwO 6p|Gt<)?_,NQLNwdU454,+ԗ@fSZY|3SJH|"\6Z9f$F*בx6~r ,^$ @80? &Ca/M-X>Ya;nN"mR/7I~):pIPmp~aՂ^ :RoZt=,mƑgT?2haxhI)!kE\+r;^dvV(@B2C#[Xzs"9l+`Uv!~؛xznQQX6[K\{|}U06n̞ed50f0;M #a1H4.ĠS[S@1V IRMhf` ==chJ4 {vg= $ٵxm.r,r2Kǝr<3ʡKtҦT;b@&TmTH{/E܀g < X(N D2 A4Űn \'ĶvSBUuݢ;kBzÑ`+s. RB/B[rGژ~P;|L_(~˯iKt:<^S*80g13:VɝPZ,'҅X9%1I9)QKվ'5"W-0퀦<)QA,Ɍ?&hU&C/;ܙt{P%auo4=eb-ùF49O K݂dQMιfüuuTV5nH@ni?Nt1c/ U9ED6b`&JX7}Y2}o*ޢ=^M]qV{Q  ,)3cʺdtބ<L@ :YtE- jX?0Sr__Lօo/kj3l*452=a`#}Qh-KX[]‡@,rg &O&һ "b*O1X g4I}Xee)ȥ9}ɃS8h#>ӬHmѢz[MY6?r.c6MI<1ֱhwDX^YQ~FC\%;8*+1׈6%҃361)*8f.?$9= :tuv! fvҁhTWJz׍(GwUqlDޮ ;gH|ʓZ 輈!(u&rYS}Zx~VrB ,Tߣboa2DLjϴ볦jĬqW^Hdpi+#H_ܛPsn85dPE\tQ.Dk/^$&ݠG&oT;R+_Α^3584@v21]̵JIu[bn"U:Ԓ50t`b8Kx-&iq `dܝ_<\r k +`cs^?O*|kȓ[O}Ʊ.s ¨GQVі:X 0&qlݟc8yWէδMh!p-MH%rq=WWdjCNJBNi߄1j h)9J!)dzÕ"?Uïac0>v<(i mpյ߯ 0=^c":bਐn#^cgITqkvb#Bw)%WAkFF#򖈺/ |XHC3"^Ӥ Kj‹0GO&,8岋![v2TdzS(P;1b^(G/dԮsc:SF}AP@B3$X ܻ@5QL@4pݦr`U{Wz1@^9j@/ `>KeQ!¦LCpi7/M͑jq;4t wGߥԫ :lw댊"8V@Qp&Ea5 9!L &3 xhnpq)?KތsGd9j,aN"7o@_޿ lc*0pE3-^77oZx~F^eNCb.kIP mW`Rz%ש[_bH(czq-/NݣOzɠJ/^v|eGD?@B˴AYt䅈˪\2 jvSmb'$ˁ#)Z؀9E>~p2;Dh' fM~T}i׹FG.&bMgM "(u-$ӑt;8z~7x[|y@_K6^9,7-3sHʒpQ̧$)#D/3oZF/3^i<'xT &Y DoȣK 8~H7js:LpSnfz'jҼ)#%.!A>1DR@ 7=PP)KԸk/~mG鑟tECӁDPi]CJV=Q0{O |r(sitjDN ۇ2`k&coBu-פd"!:vɭ< F R-yp{&$K'9hq/ec  vcyl FCNYvqxjTDW;fݗHaU] S/ 6I_!N#8O h/̈́}_At35K+ ͬ»g7ȿ4@l3LvPH3hiڌ)[:y9JU/ZT>.D"+0FqINJve%I y G`f,]U8U/hJެS + X)<`.q`PXRWce+"AA\k)пPߟ$<}#*66vJ1063C WZ |6&9X XKs_~z9ߟ4l^Ԝq{sV+WFchYuFPq>Ħm isЧ'+!N c &WF%얣f")amTuq°z]X5e饓Fmbق/`/(T2&'k*tbF8p'y]sW^+Kb s,I4U͎S]#eg=}hyLBIѠ$RO{fY4$U-);VfԔ:|wQ ﴱg,#$ f? OfraP67f»iGwHVÿ$Рp`T <Ѹ]kAʩT砦nak+S*ˆγRmq1Lq/-­&Jē"/(x1686+\5S2.Ch#JbdPй j~q.Mx=2: m>BxS/>ÌO*掾-ނ{a9|s8gx4B U[g{E-N`Pў娕dr&ά @hk"&4ײ#vhu!a $~2|,WC#ҦL6plo-݃8*KF^9_zs)-ߝ~?z O2QLMz;PdrEavwR TE;0=Bd;i3#ԉ֕& Sav`%-ד(~2+k,n6pZۥL^pA Rh/uE ̥=aP'/}R$w+^+p G %h416{dӷBUzudE"~)MϏ.%dŕ[S*MK'eq@[:';j-rj1\vKu_|O|>*V2~1Šޡo{ٌh85ƄfԶ*AAwߑӋQeɐ w[m':yq ­UpA`&JKΥ H'Js6p#aWaBߙA"3y{j!S=X oAqKW5,xx0_G-`߱e(I?RXY6̽U_)υh ~(1eT(}`Z^xd|Dy\Ek(\JPZ1 z*jusH?ꢱY,d(~~q#G}=l?o㔄zvJ_/+xX tBj3xTw@bs 7{T{82u>v|x: ,붣N{&Ba+vgfl1p E޾r(B@ =R^ms_pr1,߲/b|SCSR9ds3 _ )N?ڔXLr@CoFR=;<[kDh.ѲWu4Vɺ ψgM{džm\ޗOУeX^.@7G$ZVvaZFbN]s*Ń*8iW =`TYIj6cHH?قy1 Skֲ97=ӨU4 (LXco8l4Te޷j%fTp3EPF(i؄.w!8pm7OKVw`9XQc0Cqu|&2e= v͇]* v4}PNRSg7\FD[|Fɡ9YRݥ BpIX'h(B9c~Kc 섹[oV8ڝѦn23~̷w9&]FݎJڥH̢*I_D s\س[gfǰ,F^Tԑɋؒe(p,2/r76~jl rp9̛t><=}K#PjQd @ w=4㶷bGa*)iFnن׻mކP T6o^ Uo+CeqOGa oKcA%:"4JN_]#ٽ>x ԢOq33?֣\kL2s5 l]R$t`X;76ggqkE+͗U+ؖ鰔(~Od+;/ nǒ|v%a*w ̆SۆOlv56J`XYX!2ָުG? Dq { Ng], !pͽ@kc ,?~ ! \NqOMi3v{hjDOv<':l"Jne f(ʞI͟GcY@]NԹFx8*wo? +  ARBZ!ܩ);B\p~H*,MCISc)Md$3 k}?T! C(¨[ PQ@\.qrGn&b#^qS áZEpY}{=]$e:xmLTʤ($uH'Hc76?,08nmkUw7Us5AgQ PA`x4LS f'-89O~8~'W?exf.ߘg`а5ARaʆ F8y$۪.?̴4L e%7l%Ǹ* ¨(~D3h_K8T"x6ۀ[ uq 7y3j)O9[wR~u*sMM8^HFJXlZUxԉVzV52y5ڷ*dkM軧+V *+sJr`Yr!W"N53=#6iv;ӥHM˼niZZIܝp6Y6g͵OT5G'@p=j= mE /[~\,F"[E5Y@%z uHY/0Dk򋇵ӷ4/,Kb쓀ANw@_W,rU/1^$@+co 揧@'~֗叧j*Y_jL>GZ޵k y}=icjR`+Sj=0'%[Q$f`vNhK@9aWy-o;hlSGK2 ot(avR) g=e ޓYc@}SD- cY}Ck s6gW%XD6+`CuZ#˩$F#0MLrĸ) *X[1 v'깯%+{M;`Hkd'6/ԠY03&;  }Ew2} DYBk-.@"pR{I29bC$j;sr_}}0mZ1/eݶQW`5&xuىw7Dbe{6M{!֎wE7ԃpg;Nmg tC_vm-r(%AB=eb3(hs55qYkH*<7-ʼY2Ɲ;?@٣d$ hIDhbb}foqc(jM֒T|h2~.=ͰR<2-fr%OT`3_=l_I_CtQ㡿x͎[٣}ϲ KoV) q]wfvOदΫ?!B*.-cO + &A'h_Wrnc)㶇PI%aZ?P?p "wFUDK:n$SnxA@B̹0$=L"'% qi 0DQ%E.4seqp!\Qp٦b-ov`1V&xoPH+nx{w{F'f 5]kGGJ s*c]x1᫢.T`H76XwJ_}.4U<+^|\10{tdP^pT8 X(!9#mRXnq_QŪ I\Ne>U &Y2s6:B(n)C"Vc@`DĎT4bh#0w.?x>)widUћKx`#Aot:yi#A<;Z^bWFar )ppt#lfY@6gg0ϋI| %p0,ak솿>ܧ TV<'կ֝S{dTg/MJ_so>m +Cq&vz,xpx "zv1}e]"i'Ӝ eQ\>}xbo^<}V9*0\+NqIUKl톀TK ~p96Co_&"VU3Ŀ C@Z4pCbJif{ߊKU-xfCT0@biDA `M~qӍ `cad9OU֧zUN &8)gv=12!]rOȺ;/c vk7&qҨkAU]!0Wl_XOv}erF rnAǾ)Mӕ-!ksP`KoXyge]=g] Lj!3v=\ WR ;D_cL/ۮsF4A4@B<3KUS#ptEuK ;EFm= y2)B5;Bǩ켌{h{UgPwx =78?T'6QL=ѝ,$VZ ^C+hn@9M %;W5P|qr|fɒpG%Ŭgz#(E𓓲q 4ڻ=gxd #A:#O?ma0~+^ǔhXOWQd;tcSܞBaf9Z? *.>LȿzJ(91x?޽fR`d=GJ¸fE)v >K^do+܇P43:pɈ+h^G",ɦ1@- -'FQ.UbDdc 8xgP#u^,Vq\ 0`WW:uMʁ? 6sW5tw `-8~ΟM8 9Wq*DGҡV"ۺz3o=yYr5F9U/ܝ1X `KK``_QR.A> cE5zl icκ-_YÛ^f hkX(Ȳl7g}4!cg\%,թQǍcX?^.uJSyPK"^gKc "V1+׳o۰ 3=gnwdf{zV$,jZ2ccگ 1+ɬhL Iިݣ HwOi`V Spy%!fևE55<2#=YA3(ƱpAvwm7~kW|ʮMap_0>.xziU:$kHm*:%,-6Ǚda0AB.#`vǝ 5W$D _Uju-Q#)PYxq }p/pix"Zetd#NOx m>qv1J Mȶ3IyO+Sl]6 Ey4὘g,2-<(ֲi^z"C'44ژ$}2/ ػm*@U OMn|1tF`9'4QᓤכO.jx€J2.wqpͧ|.}()?Ta2WwխTXm(*^B+6Ӱqy䮧]!u$t$ajg6y !.zۊ(YBAv!>Zyh % V3r*!v˹tBBWR\f ר wRwR E",%JBE<:8-ܳC/Uwv88b ;d$mXM],!#:Xf%.lIk0jDn66iܫoS߳ ±Ew7cĩ.ڕtafM2FSFvDZ +Ecgbs_g{n=:\af•d?a3^e|Ć8{r76\HI d>kaI+A 3UX(xxl8J`O] VWtp1Qwױ\,g͍@&9 m:Ey ue0@lk%Q֕A }%n,[L190jIV8"w- h sQ8v#cp^N ,Ò bJ'Խ'z!qT Ȱv_/Q\U@֐I׀_$JPq4ːuci`P,ĥGˡHnym]9pWsx)%DШe)ju?V E?1yyL+ #j2M`"R<*IF.VTqmrBTn:EU|<ԂV>EFr3Bs$:w:oI0ăHTxMCS1'q b͘',Ĵ-y'`ԇl )]/o|0(J=`.I7Ox0@M-!d/&z2mQ8gI~.615SGYZGȃYXʞ4rfr󲀂i+e6zbHa jy,̼g|MYke >064hֈIJ/~w&EG Uݜ;cj"_}g'#NBEy&&Eةc/2=Zӯx]j?I3^; ` dJ ?9Ls?O O McV^V {TFzJk?Py i 0!qScq!I|9z]!8cvO R\"7cwMI8 hȈ}BY*{QS qu۟Zk-$vfFj1o.P,okBrX-? BJ79U)sG,}7jԓQP9iqֽQ ]H:Ғ 4tA̓Ig%a s>m?wFyW09w"?ِdn#wS|^cn]&MQ>?9Q( :fQ<Ts_q0SӎIy&Ώ%k!^Aex"ڼ.Cܓ=NqMf` ŢX$)NrBGG3+ ˀ'\MPq&No[/zGj\m ,JۋqkyhuQ!gA@e:6Wt;R:ДE~\E[x%Y}AOkȫ3T|ޯd2Y ;( wyzk8sA&AԽ0/65@}evW&Mvwqjǰ/ߪP2BOB 5Rk^]22xH:vaニDHJ\$`B H;uiH~LӝT}P]\D 82q[" CϏ!97n?/%4rψx$Jl=ܰF_L/Go M*_?[t+X;vEۅcJe7Aiڲqguf[pk\o(_yc`h|[0$_s| `r РWY7:t kQ5΀yE $0MaזR+' ;+%% [O-A{ lF&"N/DJ7&Nl[{: όx{ȕ Zg EN)8]L*?c@dG=@3Qm{GOfT+7"-`wqxs c0*z_'6k\)SCVuu7bf0w=}~/ySL̐wNKډb1<(j&S~+mmt-HoCr>2}՟y,n;4.vjXMݱPە /.Kt+ c,LM4-K,{)ٿ4UO>pLPI\ ύ>Y·>ԶwZm"C.2 aaUuߊ+Esj!ܰ5A$S߆l@jf5+$ 23z`j:r@ipAҐf-IFv207A(\֬%NUɁ;} MS ϴ)񉊧h5fe'ҢMޮ+=L9Q[wb>+vI* 5_9gA47G 1DS )jBMxNC59%m5 )ՇՈѬ3z@Ƽyj`^=5yy'>ސT(W`pqz&0ESH:\36qX]\~ƈ=r? r_Q ăh63&!&c,ϭt**K7G9fO ߢfDp9&LH[ADb烃kȒfR? ~B\+ TOAY ט0H3 og!N Sr J#DHO[Smwp^ڝOɬ2ې`ȫ_Zp I]"AR86\ʤH0m=u$~#„ ]M1[!\8n2/%R%; wBm2щQ$P)'U$ܝfbuF@2} ̛@N"7ghEgctDtQci oʬqJ5F.&ko2Dzrd qwYx6 nt f,û  Ew6‚0r'{ V%SC ql!;2=>-Jc =~Iv>^46%8 ᡞSD}{jmy:r3mhn-zSŪCEW職yƏT2q o\/<hs$01Df/t36?L#[>%җ)3گ t>?x׍#etHmw1~4B=;cU)!35(Q(mrYJF{b~z$i(}s%E0~xd+#cmû$mkH`R kJw^4xr^ʎ:WYTTSTQ7FSG<+b}qf;yH?% $_aPE$&<Q$]svkYl2FΓ{΢o`)3%4"_l`X: Dd>he ܜT=4@&pZ\nLM <=0ת[mȝ]FaZ͋ /#Utuckef`MZKETNM,F{S~zY;, I]yvh\ 2%^py"EdU'@ڎz0lkqU^P8W,I۾K_' v oȨT+e];7g*xKZRN:}msH%<9{Aj{b- 3YC+.;]EgY%}N~&h}z\ض;> N%*GJST>b1o=7\ёXYu26r9Aଌ|u£Gϫ!@<*NI8_o]5dXTc\tYfxFeCMM,/A.ӡ=~1“pR۟ ok. įTid%DmB/:߳U`H mH@[E)!V QG\ȶ&zl'Feb e9Lނ~KBnu}z\UDĤGsu0w_u9D%em94Kޜ$Uܚ$cH ˅i#!wH:(. q+b(`V|7s [ zW&Ÿ0 EkL -bm, Rcz +olqNPd9MV Êi鍲 ZQR:9Z)<=Te} K ɜK\RaIw๽DMFw])P'}>2Poc /NԒcڡRȺ;0v"ŗ=慎\F.WX>+'NZC{CgŹuhe]un7df ]Qzmx0Z=jTD*VGe@ِF`Kߕe{s:b=)z0;I W1KM) vQ59m\)NJxBqm@_>+IJ( PTE5a-[sPEMm<$1xSc?Lfx(' SiE6-]:̔xe2>|Ws] S;՞u._cu/X76{b-XY礋ŔB2eUeI*ZʳxT|*'ޭ>/;whQIܿ1sOـ<6tSQv݅ Ab3okE_wb/u3;q2̊a2eFI^Bz] ~9RDrү9gI:ʬ훇DB=4\Cs%q7vNBi-+|W _+ tt dib"ОG}HA5*NgTY׵==>ECib?-r1&1:e6H,eMC  68y"mn5^qP*yOQߢ} ӵCqK_v3 P滗M%Ark9'B7oԄ!ݣ%K¹!>`]oU"Y ߑ>@Yb܅[vKt(ǫbqzUIXyN.2m :r.=tFC"^ٛAKϹ *4Yßa҇Ghyde-\%J`R'PNrݤXRӈf^ٸ M}3l X?V]\q]]j}"sNuDS[3%mkA7̕KJXUd@{f ic%%U+kPvQ7T+?sxx!VFD#C-wm&ƁצSǓ#r1_(~YIJq_muy9 wBմfHQ>zl*csS̓$F ^/%9C# I-5EҨkePm8=#-y{brGӤ*я3/?YadTAQl6zRS,&.2S෕ƻ}]sx'f˝d!Og%X-,| ez."۳"leN=үyU=(fI5`0VLIQY/t|lA.;wwnLE(C;@pK#fjI~JJ7k?NIKulQT{gkټϋqV؝=)6^9nD9}b5|?L ٙCu1GfrŻ7/93 }3,cЍob)]τM 듭[f0TQ _Ynk$jHW!F!;TiJ@9B2p^Fqq Qsy'! e4}Pek25$ˆD V𣼷5=oZ+w"KW =1}pk08NÌ"\ͩObHdaSS羮ųxiem228b52B$V2P1EPmP7p?zSPM~e20<%=@Fdp8LYsjw0Fn+K IJ{" G≠̙x +<\ 5'Ku= c唠̰mSMB4k,DžD4,?%}Hws\OIQFANkZ9DPq65Tyɾw野u%1EVll): ^(lpZisuT~?ȑSi#9%'=t5y?c_F^}Ach)L"`!lꢗΓ6e 4]Dd4PF7d &u\q2l"1d鬟HFV;io1nXe*jP% Yl}N?;wN4yY$(}|iM({.9o4U5Z6W [8HGY/SU9,Trd -rS@PL.7d3eI L,ywB2bmQ!w[51[k$k-DBHMV:7xXRۯ_?akַAhس+Q1KM@|L:g ⏭Cr5Eb輌p Dh{_k;"CJ" p瘬+Ё7 Ю!] 0> +`Qg!5|' 59*508NٻжО5* ʏ{sGG1 6Bڬ&߲1a }y&YvbJmY. t{o&F"Rox(s2`Z_p[sҭ`C`ӀW,8L~Mf: 3A'NJRLbb82 %~%JJjgfAaT|Hhȝ}eN['aȝN]C.'T-&K ],QE%GOl .'HK*lWjƽƛ6<5@A ,5QQ1Gb4Eyc3jÄHswѴ!;jKIkRBF)yѩ.q=[i-Bq6!0ׄˬ0RÖ"bF7dđ&-!s4p-T=lWpi ݅F(P..zxh8}aL8(a؂ p (zAۓe7`H]dIo4i/KʙeK]$hF1%Ϫ=r  MH_#[tWBEz+zG,o'R`ju#p5 H$9]Wb4_#nALPK6}d{N,`I__`ebuPbz$owlh+\2+HNUk4A9CBA0b[PRU^tK[6q#ztTRS1,tݜLNgj6ײ1Ǧn1'fsx6=߶/W#bq`ևgkP/+4WvqnT%+;ˢTҠD;vUmTy U'Y ґa*lCP$T(8 5}F!H Em.ɾbTsX9OAMsJbJ֋*7 H˸biSO۞$%K8!Wa:FyA,-ƃ>!9cd@ɝ4rTׂK.*5WND1C j3^iqO+O3:V4=ZM.]v)p9zm_8IwJ!6.M>فm#UwrUĤ#c0tNDY~VoWAipN5%αK[(ecp9kgqr44zR6 :25DK P9ނvl"˶dfz;7zI?xTy!u+i\js=s; QXyCԝjw;SnacaxǕqekQo(5/j)!kXXuBdpl(ŏr6o챔 , /ck:+d|V܄q,U ;"#/Pg}B$GOWF&jT'l¼JSVIfRTzZD9HEPBq'`mLX+/*Ae-k8 %$7XLԷwyO"W`JAd #`uh<ƞhJWϏ1vljoAkһ=4! {K3yN>WP7 5wf(iR=81 ;|V\&#K綀:v'"t3Df bVf;3HD`|ҙ񨙓ѷ]c!1Iu p^(&&BÌ ~>OE)Vؗ #م`E§Zմ[%/0nz?[1WaK1 QfUdnS(^T/"??.$l4yȝ$3މݭQ3}"Eۊ\#77c`1Q*n5( eJ_Z;M'La#*KK=o0Y5l}j #^T2 6hRUc9-T֧q0\{D;~acຨcT"t_$fA+"I5 1?Jf~os 4۳٭gcYh" ǠaidR,  I0u]!>oQ! !)|hʄ7SϤO!XRSS@g,^l_q ːΟQ=enl1 K&!z.x*%9Q.jI8tؿj^O H۵XN 9A;YT~"NfPdaɐ!띇" Bh{3ls[que4؆>Nͧ$ W0Qv"M/v ]-63S8{THXLShbR;WUwYLmw Fh:~64/t2ch{c'{h[btײzG9䃀L7P)jYoa'5q<-zgL.P/H1 ˉQ7iB%`]|פvKK/u8xS)"YJ"V#`n7O16\qPZ-aٝ?fHPTW PܘDz̙3t!];l AAgp/RD2܌n>}X HolQWD2.tCPqSFз d^ !쩚6RWkq?$(Cdj. WSY, *&D_p:K-P ggãhw]UL@ym߱˔*6!R;r-MUu{9Y&?~60KE1KEƼ+ɮ:`H5">D!1 >FsS#CI0WՒg`5Sj/S_((PqitIs{,ؾM`4 6 sF ח&~I)3:Ul!/ԳO-po>t !^O5hdMX#={ ]\ɮv}<+PXuDZ<'+IsoF[f +*m0 yڴD}ƞ% w%6"PlX~L !S:(xf7=>H(R8]HS[zIkvEj#R:C)92t;^/H Rc?'orᶹWZ Cs Z~m/$Gw$ؼD)CჵC3SȲ(5Q'4^Ax`߬ދ$Ly⏭$ . $ᔋ / 9~˃;̐G8hCJ0DSIX^R^GHa_n`C Vkm|9υaS!Io轟<ȷ*ղNNl鲯B XZQĐB=#QN=1hƔHZ]fuev^(l˳B B3 a?qe?etخl^SYإ8N So5>s^ g&KQT n6^҆) }*ʀ/K ZJ6^,^s휟E+h'v f)9Bås?np,ydz6d\=С $VcJiYi?S5U덋$%7Tdy{Z6<,^DU2Q"F稀N!X|r5]yx֞Y,"y[E(OsBz1ܕS~UZ"\ʜ?2cΧN:54ArBXAtoR]0,mΕPue)'7;tozpNԔҡ@;&RVZՊC5 PC#앗w ?5FtbUIazv-՟es5 .Ə Yy)]t?̆oD0 ޾T:t4QdFv2"LY|AUShC!ˀ &$C([֠V>>~3U,_9Z;+3_m&COy怳;t|kZBI#E`_!a}`S,kJ&mZ UOXyDcte'IӮ'e8b++5+F. f-J1ceDI_Rkqv8$`DYO

3\~HO,rrV\k[ۀl40_TJiqz1oN QLv),` 1Qm7l}+]0١r][N($Ih.jf.G# D-eFr% .6P7( _@sBpUgͻ1Eㇼ%,jRU]MV?eu:k N jHKJvJD'nNEbiZ\tK7XJz}ɇ¸#MXl7RJ 5ҋg` ~=a'dpp/3cJJR'?37 k@LmYV2*sKϚ6+(o'XTPw\K΃>Dͱ,N7Avs]Dbi) zθ!HyPDv0vzwC1E4$F,#4d/3/ɢvelxYaxNPq?8Vh vZ26?]d-1TTuXh CR:L}u?A߉|t ;'J~%_.] `,"$SC9ܻ7O},\$}KmIr$N@ƫROۧEGQ ËCqTɒ} љbHZZ u^4c.ˤu.b8Fj827&B_`"hM 7z~KB8c=\ƍܩo?+;LVս4o F]FG?Q'Nta0 t;pFb&T5dI1KYB`+SgHt`byqt_d/ r|$$.A%fDZ2ǥ\"gUv޴ʡ[*W9i _^U9z^=&Do71cN;`,*Fbj'W>ZOw"dH4<B isl}l&Oؼ-޾ĝ{5ҴkӽRK߄;U''*luRĻ/bnuokJdT44ej?e|G˾`P[aDz^DUa $|(PH-SLpyEtuNMoN 0#jGŨV6ܐ:bii HO5{P);X%fȈ 0eRp}a*ڐG%Ř?J;[H\}NY Λ~ O3N4e[zEWtqo$pZt%![Uk8x%Q9y#aKt<2Ԧ N+׈ ~H82=)6l^ =d^ ]6F{6c,jp[ w!+ װT"(.ZdL >%r,`/ߓ%6VTV "<zv(%m()c è=r7=z#Tɓ,:&0`Q7(IH_Q$.[AEʎ¾R3o1Aֶ?9;ښq[S!9ȧpBu5}#ΰxd~'qv֡D,LL`-R}m/!BrP";- tF`wi(J :JޞWy`$wG>UA :-w%Ɠ䖕cL:`)v6b߭[.\QQ!o$p){G4rQR8YCյnͱ>PGybvI-mJg`~kK(R*xL22g!JRp ߎN Vn.gJH =du2Ƞ_dʎd:>t94-:7ܠ(LLBD,} `RR;JM%7Y:in_x͍t=>62?UcKjuL-j`yt]jei8vS̯J))*r/8!v~ZdkSm5W}*Y ~„(k=Blk@g=rgzު'0ޤ"(DN]!D3T *B=̕5Cde[r+SQ^\ԨXҙxg~_PHVQoRtA{;0Y*A–H36,zZ@~[Ն:}UBCnF~/Alq6u{!SX1hyfz["K={><+qBZ6ֆ1M:TXF[#P@q)0Sn!0g(x}՞)7rmiwd@g]`aـ<(DW&wYu?Cjs.2S$5Mdc処6> <.*fnGŴs^=XiNq, yhdyG riex^FZ*7Xe6=30MQZew8+=rMuHAZ.!1-!ٺQ= deRzDycYdG<ߏ%@J)0'#).NĂ7Nyݺx~W:EnaUVv(ٴMl@S40 "ڧ;rXFiW;хRdg#C,˲727yDeW$2W_ј[Edtb[e|M'櫁>a,ⷙ3-z:82' м_o4Y =(Sb:hegShxmG]UїG,ʲwMX@& ʳhOWWm}/0f$@s#݁,_]!D[sCDHrS p4fZc Rv>YSȄY56ukj0Щ -; Rk釥|O^z x'W L_Ϙ+\v撣58ހw+_8la*7%QEMIt/* $%ɦ}\}e'ė6sr: m] vǏQVEkeg)6tt3t9kWt)r])B_BYںOJ-1|sZj_6M-}kIۼVl,8W0Xy 8Guv&'c~!],@_neEX;jc RDL4k%≅ȉ K>vo4q(`3",kfu˨!slq!)HKz*ўʖf&̇?, ^`P{G,5U~9y@A]t㕹C>ɼ45Sy,ӎV^7Y^a3ǣց@>_\xooНSDoRjb(Ε*QlO) ՑK3 kޡSfSRK!(Hx\ɩj4,j^'Q,Z'IfG|Z)Pjh%g?\ Gy# ƼM5#qn1I#j;8w3&z6T; R4dRvAxNgIs$FUzⱖGlO$VyBHfV0SY`B5(kk|$xY'968mЂ!OO?oaZ%!X*EERM-eu@S5Jˡ7+>Jn_Bm !3Sfr|}0(> eښGuu?!<CVZJᤗF](J~P$cZ|%Jr 56k_FWXz7$)nZ>៱vT\K71IMHSX^g#c VLgP'% W)+\Nm}㿲\YgtwPE5}A d/EPQ(BJY˕#!2S1~A&*DЪUO/vPh18aV|b?\9p5)F#g_x/UtDb5mr݈$qc a\|m~S26ɫ\Y,DJĦ{:7gF8L5] u\PC!pDp{`>d(}nψZѧ<È~ic$@}zd -6 ǣm Bqrl xǵ#V: ͭSӪ_5UVMڥg%=ܘpFq{U 38MY.ҬPQP(>ߒ "1l} 7bED.Cowp|!X ·iVP 7)s74Y$w C_~)u]VȞlXPXUa}_S^@0qqsT,O? cӵ ?iɁĈ]m? Ԕ%dR$OzRO׷܂$}꧰ŴH\x<:ؽƺ,북DWy6\8^.Ҁucf|&,ux^B{8dyY4@jJþyvx^+)6nffT7M( w! PJ|Y7?Do4Fw"/H#"SҬmIHۻIg,`?g(7 "$#"AMe]#kKZ-cwۣi*.^Y|ޙZ۹Fs1ǭp7Z(h~^l:y*h3QuW| ,;cR+@m#fՏh2/.(ɢ1C} xfΜD醷,joen;3pyNh/YgfQgתY$|RA `a^?ʻ^HY*"}AtDS&].⤰#|%kA52\S<.빐N>}(⃎,exKFd~y0` 2znvy*(MX)8B1558AX_$4שlk)f2ae6}WW>?6N-X5ǭ?ygߙ]&lo:2NTbGtkgæPlhK{s:N*4{CǢ?xi,#j<~ƻ{o.@"*i^yj5Xe@اL~G@IIvVc(G(UB6Wnfc"m @3FmJpC&%L=9>KĆ$Eq|Xfn\f=I a/R<7T*l'}4 HD"Oh#ATRXեL|,VEGd8l3褽bV֧VPn b#~맽 üzIJ?7Z7 nẃ8Y Pc H .ҋvIeX, m/+VUW /d֎݃F5Q([GPq;J!%֗mBݶѝSZGWYjFlb Mw2fwPD ֨yC=i5~C@Dp`RU+KtغK9ZK@F&  POb^iog~Y $u\?JȚ2<}'gM񐼚A/ܢVv=ؾJɕy\eBЌ׷@J<'B&t8RlT>ϳ2s}LxC wuŏݻ{ʶCv59ͧrMDx(6C^75`ҧPf}ٷz_LJ;pxk,c|kT9B"emIO< mlD@uT;=+r<7ERy)?QY` Zf'm.tuLC۞bU|IsM" ;՜Aia)/":Pߧ1[e%tmGQgt SsoO5d+OIEFi/]8]c{s2d1K%qM UܯG(I`pw&ԩtG\s 'UWI;|^^19Y׾9[XD4*OH{Lm0ЭD\pwnu¥<+}76uӼ/Bd(⑓: jAVl;7KRc  P4pE|$'ϡB@n:Dg: G^&*H1Sm ANCؚ(}WSmP™PZ^ qiI#gYxZ*WwM^T3 45k)~*EK7k)g8h Tbkwpw3JT܎,Q4y&x3X<~2bC7-m.XOS} 4$V…:z4曌A\:~A4?W~dMdGaCg,$z'qVa{4hN!>PW1(lu 8Eo(c,jbT \]+3')8SvhJ٢ KzWt-3} i5~wOInTc*K(B : R~ qc6Hh9_riW/3sMcVҜ;U4qW.RkMԋ&o5_o#)Mܴt䃃M;F8NM]2?IfZ0Au5J>5&`m+9)S|LeˉsBĪaDlJ= LQ|ڬI F侲/::s_|i"9:;}ͩ7_ASyIWA ǧ+%Y+a h_oF/GK._QB] l BhSM 0 R{X~sOL @+F:#RMJI)594v32P!co1}SNhs e[KI"V97H(1(pc1B6;yYrkX3ǵTrr3zH{$36?z5 VFAh́# 7xj'lo u-2С KKr:NC)駆R_Ү٬.o?k'W Gͬr"6a7M8V=6QR|b=^"uʯ<>c5z{P5*l`&$JZ# Q4OM!L'gYU.HIm əC/vӇnM(KXIĎWM;όML o1(ɡ_%_Y6vwտ frIj:j/+]*|㷜FFV]zӆkѺ|RCE  HxT|Y9=:W§I+ uFjBt:a޺tX2^f)hlj15U+n3Bն-Xu=Q,:<=㑫5? ;?o8ߟy ⛴ p۠ehR&;kPuZwhoM`Uspk\ȋ][`oo ΀RrCx`Zqy]a)](0Oj0 /ˌqA(#%9S_ZUg3B/SbdT^e?=Ɲ>2KǂLP:ogCƘ|'$MU4~7LytS'?[ڄBw cyny@k#DPR:#puyb]z b8ȷM}0\ T2l!Lxg-1oWP+ ^ ^$L)^lvܥ[h`Kk&,}m ocC[׈~oRkٝTm;oPX4@!1Z=XN~fx'Ql7_"p!,3coqƓeH3||i%O~P-e*]Cr[=%k/*v *j_8Ɣg#^W@o GQ憍V'q\1*hJk$ GhSTV\]Sׄ+"I&vE f dйETpz a%4 zEs/XO"I-JR˳Iq*օ~ {W~.-3R5=eu~j]4U5eofŞ.rK3.?w*H8V{]X`^G X>h֬[ hA nz..m%j'~i5=[R#h<[LF7}NasJ m&q?0﹗q1. R< _XUVĐӸ۝p_q!v/;āmdI9+XEVsZńnyzKۢn/y0P@&!hrp-SByTr{&do#DKk6=g7p625_ۇ VLx[KI JUl+:zɣêX'ȿ,UcC=xyLtTD!.\[ U%iݝC.O~@tOV!~aU!.årwAۋ<;[rF˛E*ΧZ<…Vj&8?x!+ vizcNwOH̲XN.ʻA:9|͜y\[lE0.?4h}b\^W30gBBb ω1V3.y!&,,i@,ܮK]>qhq:Zt-@[+L:XWhT,ӈSP JnWEY,|:NsQP:@bzUju_>D0eMWŝyDCPbgltϡ0ȨDSrRb7SүQ3T6b(ĝ N;lws@u՘k^ed -3΀#G:8Fv I8a;hȉ*4j]*Lv=xFT?BӆgŘb׋>Ӗ]Qܐqoz Y41qaGhZ;T=< Œ=Mj.w?F$p,w6D;kɉ1Tx@l| Lpu̱]|bz+0̒l=\s>\|O gJ+Ru;fj),$6*[.B}_u>ePLjRec>EdnM`Km\h[>kW8\-:Q0vIcY3Hyhhăz"3k2FS~ݗ]=x-.<S0ݯ@+9O͌O%ֹTh>(=:d\s+uEBeVNVg]Yx "[K `Ag fv/!ۯf~#Rb*X33.ǣ-D, N-VYÞ Q)dPJ3mE YŐ‡ p:+9Pk=PYǽ'\4eHF wvE(;.2N\:/貁;!^)Β:1킥 od{ی+0')(KcpߛrWOu!f.d=F1)hT Yi\/ia&|^{E8eM(Fu1~106^XEzmúe{3o@Ĵ\6vإ`D1*=^t !oYq\7w:\Y$8wzFi74 3Տ9+GqF\(v5$t@?cs?={2n} wR"WpG/nXLtxPhmbȮGr]@&UB(6w7yoCBbn]1 az. Ra:$X ;b'o$QӧQ ؙ&/*bfwtUj ny6&Mx{^hKg&s v`\u TΖYsp i*!0![5vxW U/4,RpkbX*0Ob'/ZܽoՎI-`; @3ȌPl=s 'buV^ܒD[F5]1p3LJ$A L 4ۦKCHUTUG )I}{,"?9AnXAsv66Lf 7_(& iNTqf+* |ѳD|O*4LiV ,B|.0 xp Kٷ5~=:/~KZ&S)8y+$$K$Jdun{B`Y&;vh"\Lr,R.m'TXE'Kp<1hK1xJL3\, EVG+4eOG:P Třl9j@amgIn#?漦][guHБL12f@9|i3+3*NΦEŬW9Z@!!6 Dβ '{gq ļ+1-?qd[;ӌxheEiu).J1<("I&I ԭ̈́e-|(|%gƫġl9v6$!6!+^d݌ uaT$pU. ]&1_V6%[/߅ZO<3!`6υ]ҨA&<c@N\dRvWE?l"ײ|.nmY"=]A \#ĹqqvR`fԚjY%04nFwJ\`P pyC+Xw] ".4o)+ ?Ti{G2ʏUlX08!f]?EF0}c{}P#< Lꌩ$lpX7~ e._S :TLfxcl[ L`ز%RLe Ogz[RS$Լf_d.`њsUfd8#2/RjRRR{ȭ Dp%,^0DIjRDk4OHK3&ND:_,RXnmpҒjl%-]+B;,3ϋ5X6^ "blHʀPe8p"-/1)؍]+C-uْԑ87[sEWF=zW Xt5bC[o7brr)=/> _7Z8.xW¨c%*FduoRC04Qaۍ֢t'݂֔XM8We2<0Y!#@%{9R5;i་-$#{&8g5DņYѫ+ ֥MYʃr't5K?{0DL.-'ʀ6.JGk&`)l{%Qg g^2i6zΖL 0t僗^Q% BcAqPGnx[ﯜJjwC wdd3IkhT({.J~ =egܬdd+hC%͹.Ct<Ղ)Tk5W $ZnCA/vŝGĹl4| %O.]7i'@j. iʓуDY.xe*ȸRn-gfk|hu 2KO 8LgSS$@ ' S*;'sD.ȏyP$`4¶cX2l xF'Vb\e)7ҫ*\=Whٮc_?PB؛P5>V9-TS .4[d%Sy s*m^)N3f:6 v$*'T\s@r&,rBh@uÓ#rN<g[UX szNQf.DAB+xCBpi}oKŚfpcydWz6N{m` >bAjQ57)o %;S5݌=Gtψ "S1-̊z^6 {1K3ؿ#3224anFtAGWYOU,?`HoG-ba tgM =]eבB%Ev(~jMUrd.Zu8ipi vԇ D#C q6cz$*jiNkxvb$WNԝTpyDxKY w^Dg$4sU>x jy*{7ca[Q> M "{."W$09?U!{Cq̦G Z4 J̜u=c d̗A|@ؙ7n^7rs~/ .d?][L:Xe+)iTSvʶr׺i^kor˿yR; ?d$[&l]՚#6ȪWvGv?Gtc݉s6g+GBnyzzun+ I J.Oz-)k!Nc[U@jSGbo9AJf56OeM-,E:[2f15 wA.^oMQAuo?JƮܐ.ʰ6= 'jS'È?`k=.O/[.iFt7Q2%οUܧEc"pbX{Ss^cCF.8!|;`h[^`!>%7OPQNr1oz4_#_Ose‡(ֹTDNK $)U be%m ]H (yNh:ntxUe)EY$e+^|kn)Tfe&(.ۏ^*I5)Mp] 5[ҹE9K{fcd[LGDž vvN$?d4&ٜx[O|]Ɏrqm/RVP˅1Kn;Gg06ls,(+]{_W>Ir]5J$"azAg .b̌T8b. ϖߕfO:@]Yf7Pgtu+܁pPr;y&qcBalF:4#!A|7t,El(m' 1w{vZxO' ]X@FOrXX9ٜfFGwZl8hݸmvd\J "$v[6+z;Z*>rI9@Ra6Vqfs7ZK>!z+f.~_*JA-&Wvh.3Jx٣@ܧ +X3m"2.uu+/D2IF+HqviS9fK~(% 8GPCO,rƺh(P z$CUDw~1)G~Ͳcc򙆊[lO)ә0ٛK{B Ip=!ĜcY=n|F1iFItvHd}ōvb1Fr0'H 㭈pƽ0md^Tc=JrnZ$`8䶛/7NoYGĕv-i2gu P .z@qGK<ی|)k=ZZbisT:AJ.5V4OkyN*~%ƈK\9^<8j+gwH˽tjy P^>p-_v cjƃS)fLΎeoڎ0A&:= `lhPAt*x 4ѱoW"h9Ǖc]eU0?mLup^MMݗ?@WTGaT]7m%[{;dY^7V2eYxc>)(,ooHRKƒy%?/̼,+-)_,FO(&~Qe"ΐeF:-(Dž|ۃVKܧM{Cj/bkv*!J>a(d‹Iܰ!2p<~J;9:) ؈@ixVS8rMd~ $Ub8^1>7Vf]ĿU-n{ޔ +жJ`y8fv't3խ9}6R1|z z*2zN l̥x y_݌l~nVFyYsAO&ž&YalDWe5$u.yl&x?->:,\;݅Vٓ8QW>j ij}N)s|WO= Pk" ~LȜX)zK*bK 8@D-Z ])4%ʏ]q.NE!@v =qUCM`#}e O북h U0S59lNU48'7U5;u[^_ 8æp۸~;upљC$.?Yavۮ2DqB1Cpnrjfwm(ҮW1cKl8awTWl.;0qZ ~h5lhͬ-{#z0^yXmqhSS4j$kTce@@9JErwO 8Y ˏj$@URgފI( lf ݞzAPD|}BEzcjybbm۶&0/y-ZSuj 8|kbqo~wAS䍮V8}Di=HS'{ פXuh1 W'Av1|TrNu١kT<~*8 nJz皉/lEkUC͒rlj\ې|%BB8:u|u/*XDğ6a$ph~ʏL`8W[Gl!#6c%\yw9/>F"I],h~la̾at#'׎JBM3zUcHm9zO~pÃY섫e"@v>Q+D@EklL 96ySK$J;0o-acO$%`k>0%GC遵3E023@ 1]/FKGzF74)ka+[R)9{!**mR'@ &ȡj]**`tD.C_g_,1 +J嗀\jXǍڗ_tS@cؽJ~%BAa^ l&a@dpPw֟ <9a[z-Fa7O%{(w)GQÖ)!%10范Py@3t$ .*g1v\ a#f7exI&;OP)v,^Z;Ш};$vJ[U6ۣ0IQ Ö}|a dE%kLyckS~[ykhu7ydኟTlUOJd T@ #dˠ~B'.'rEv dv]=q+p5Fj84CȻbx"=Bs4wGnie#}ȳ>rQQV/VouҵE :U0;u`j*%L f̝%OC}+VxW& oVk`4.L~,۳EeӡFojt_"2XFh!}岹^/ Iג.~kK#]0_ U[9d60GPtQQA Q\IwN y@;նDLW,,v^\B^GE4  }5){w8;+=XgΜ*יXKTDb>I &ore6l +*USO7'CWĝa%#7wq W~0eG%( =|IJ l:tŰg6ƹ?=Ӱ@w4+l;5y̮v~90 Ǡ'K_le3``p"M>ژtU\8|z;1N< ]VCLL(NR5QԂ@(eosF@A .=4v:uթ6y 1ΚHgp\\IO&jڠ%OaJ՘@6*mZV[ 9>G١!D]: ƔdF$?s- 3o2Tgwp3uS"oHbtJ;9Ag+~C`)8 $YFR"pؾy"1v,'~oNbTy A \>I 8i21K6xehf=H Iqo;Sš=D mMčW @߱Oa;{YHڛ6n @Uk'eedPwvUc(nIhQCQ? :!4#)48iF쿻^~̘BBaO(b>~RFн. X >slnqPht@Bb&TT! /bJX> k-6G?_2sA\SqF8@tW\A+w[PJy (zc㷺jXt^hpJƳϖq0]ԆQT_v+Mbr8lBn#ϦPe ٜ0È)|r!fNSbݲij;L;cStr1J}pTCQX =WP<꾃vҒS"G.FCT ~,o _" t"[Vq6|+H !Jggn~Ӝ]rWu(#-]qĹ bϙA`6]\o&Ɏtȵr^ '-rbEYalŤ#'OIeٷsѧފ$3xy)"N8XfAe2[+[DYLu$(;YkƜg'tDcrjssJgGNpҿ/ꀧ缀 Ҏ'둜Y/$A(ȡ,^$%QWbnoodU-'J<%Uv sF8AMd6b홾Y5fdJ^t'G9%*nr^ ŞrBf Dcu})o kK0w< 2 D)A o:ҿÆ@5(|TV DV[ H-ʹBuapi+ʼV4Wu'tz^ut&dbc1W8%iqZo.PbK̿ p<[QovBʁmat@B>(H9'ĕ#,vቁ_Mk` O}qeuJU˙˸d:r:S_*#e?jfe,!}sᏌ2T`HvȺr"\ԯd=Av7 "p"M몬!Z+(UBA<1etqYRIo#;ڗj ̶@ux6Ȼ(-Z*c!K|2s<$խ՟Uf'y !]{?`7@M+n9 i2勹NMx,2(PׯG6IoYzs jTGw ocT"Ӧs[ wkV m6ߎ>$U>D4>X\V!5Z7cv< oC[ma!a7$۴"kv*OQ lٓ^JٲCVB;å3R*rQ?57;L< ܇<͟Td#ͣ&K#ؖ29ꅧѲR? V / *UUN;PY6>ۂ'XLn^L7{g3jHTYHHF÷[Bj+:XN?P-YfVi'֊2/8W RIFR" c?8xњ&6@2NIn̤WKm_ZthOj br9^K.Sciqn y]O?5;!zn;YSהج>@9(&n_4Zʶ(߉ N5qU'+4r-ֶHPd6ZB;9e? 1w_rn'\ǞRn& tKet=1 ]uȇ՜civCaެ<',D+U͛ N%|^RhS)FPwqU;R O|,.saf(xTp)L[s /A_(P/ܝ[cjFmպJP8~^5-fL=Q2IN>]Q:,sލ5Ygʻ4?$hr! F*H Cmz0RSS={J/c=d$# *pn<=_ΗUvh)3UBRqʖq{1BM TAРF/^(PpmpDAi{ҘNk% ;? el=$mS)*֎@ ׳tQ0$˭LE xuIsW,7Is9Ckʏ%Y3Np;.3RmeÌor鿛ڶWV3m|^ q=N]i 5tvP?|Į !P d (fg) 7u`5#$ڥqc wե?zol!Nz;Jslu-aJ3׌6 q@`H.š1U42#(rEkXͶ"+o缰VWuRr^xk(,탄߮rǢ f|i?/!eR/;@! ؓњۂ DQ_qA-[mv'`-G D@ xJ3gz.yykuڋSQoXgAR+;agZp&NC,SiM"ϞEd6шM={ ¼-/nI7}4Ed6[4ju}fF<#u)synH{:R{[*k}#'ԅsxST,+.X LhM?b2cA B0Sm@7ɨ>dLf;~׀6@,;b zd'xDTرe: |. .?+%_5 ^Zpę"K DTr(|^BQ]LD&Jƚ%rQnԀ(ۢQY\=`5DŜ<x9wc"9|X>>clV?sF/BtFE}%侉#ϗcЦe } 0פ}g֔}H ۄz Ϝ6m.t:f6*/MW;xSɃHz1K/ƹ7Rw'Lcm">`]l+AY3m WTXm @~ Cä/dܙ*Rr JӒ7R>AX 6mdpY3 ȥ1b#5\05[XT, oyX@ 8u&Ⱦ;R4a^C3,9N5WWpM-d!°9[FYB\лyڌ0_7(^8$fI9ճ" u t~!>n-+D[q1 TedH}CBa@0'9 h`jg;̴X;C[Yz,b-6/Z>=CN-*4[)m2k:43I1BuE1C+|J ^SU "&Tp-= M襠A>jin-3lgS=sO^u =|b(URkO5'8\~^8 BQJ}_ߞU[{st7B `OzD!Lݹ.CV_?ÊlJ[x3cٛ+vi &CculenA҆qS .4-Oz jJ?2v1gBܘGmWbrYY9 ҆V8f;f*Y/lI6+1/ֹ{H= (wGڍZB> df{%/k2>vJpn?׺0jP]}j;(O(j$tJ]vDiw}XkrqؠVna,2?)`xgwa^q_)ht_slM\'?hHr;ݶ6{g#"Qq/L* 7>dǀ0cB{<}9Э"ڲZ.. bci4\$Z挒VZc@tO75ʲǂ5Mz!6rP:gS8r!@3ٝvڵ T^3@:ZVZNBx"=YG^JRouvWAP쬡wfvj2v:f &b\'\UĘj)qv_@k@ iQ=5=v@3u3#]'וz' r'Ŗ4*-tyo/ h?Ok@p޲(Ƌ zwPLNhz"ЇכrN:9HDi]Lf bSܓ.A6O#hr/8 FLM+&R}aɠ-$CP<=Eℙ6 WC,,vaDٞZo#}9<p '9BR{2dO3xmE?P=̋^(x"f%;V$JqkCUQ{a٧U"hƭ_g i_t5?5'N/.jnXzX9 7mJzP4yhU*٦(qfB}aV̕OF}uTr"Gjטy_֜UM=d,י:0aZtx5o0Sl7zJ$kLRЈpZVXzY":^kɒuU湭 7P>!:Wjs|*FuR0c6S:+@:Zc7v6NN{EO^) VMr"6(7NH+yqM'Sgiq'L1_TJm n%ހwꖽK8-V(8g%-cc^016{`x~A+;ha V3OVcU&+h.@)3=*M t%%n&5-UvO5w5v*<:M$XXҕ_LML*_:޶Qގgrt'W!=kisu hx.4vpv<ċvW"w  ,M͈2R) ڿ&SHh6ɆhJKS&c%{z1:ўAoV~a@0 xo $S|)98_GbQsbaŐ%78<8B76_%֓|6O)עY d ʼnu55.8V[)=Oij|qCF'd6'D1:YUIRt\4 Wj:L6Ge~ʾj.~щܞBڈE~v/?)%˪:a>ejYq 9Wran)i #1]m}1W@01* e. ??Dx&ݚz ejMr>Zb1^Nż5l)ueYKU *׍؄qN\V5&;CB%hj sqܡD#|Q;ufj냰33?osҌԮqP/X'IJqiT+Hv&|"}=јТքL3ܻWv_ЧʹG.NJZ6K[ 붮ِK[YUؒ-(4j`htI$?I>^qqqq́^d A9v$y/ h095S_:)6 O{HRJ e\)ˆ7)Q)p<ihNJgj n=I>/\cۿ  .085$ *3MBpta&ܚuA\l+vqQQဏt8@o0HFDm e&Ξ_)V(n$G[7+%Ժ q}M3:L.g8DSQbN j|ɤ:є#$CLjR%j_R&lt.[/(:Rc#Tt; hQ7U uk88#1nqsOb^J6&x8 'I:QhFL C"E=*G$%xS $u{ƠP5|tW :բ_? UhG&XLk>l=}dKݞ0տ?A^.`zE=q ;dB X|@0pDs˾=5Y"1j!/j>@Ƚj&ԅ2G10uXWBY*t&tTMpptoxMf?J쐭< Zƴiq:<aAP~w)~a57 )fƍDZ3lϋj1X~m=Hy'n6:}J4O2<ˉŖn4̝X_J6O`FIsGcm V>I6{ V LJa)U=?i2D!"vnIWeӚFOTZw jiyOV}_~+וS_5`@v.j][4j'<&ֵ|@P .A9{"w7MXls3cʣ<&Pl,!7GS-$cHDWֲ݃!wCޑd?9n1[d&Z B%*gӅAoAi2F_}_N &OI wEZIIڵq\H eGin =tup s} >EPJozkL-LZclk~Wі|VN<+Y8$a£)x>ιQw :zBNK*6{թj75 _NjXTwu|/Q2Qg=QuF;14dx!Q Nkݤ; En; vb #%iGi|&bv _XH|b[/b4E^cCY)|0#gV0rW.* AlԩoxE[-K"g39c'մ]ZM9.LTMy6)Fc1Y:jsd\F4r^Y.sXB.{Sg(^6 TDp%՞[u~`"։i"-[N1\Y%{of5xZ]\=KM6 s||j|̘ %v0x7P6҅)c InA`xemoA'Z ݚA禷i!n!r׳n: lli""p,&]f*r-@*&U4ۃ|DkLZ%Ȗt'bB [3' ֫Ue0m3snQ9߈&:&2BGSyM-3y:k&˜Tp'ˆtwQZ*HUWQcGT?٭D#j׷},rB,PH_k$xݷܙdusAq+g[TQXr^CũFOnWE9`#UtQGTF7zi3虓[+i %KWA4f>}.qE_,בU"Dc{(嬴$-}%)AzjÈ[\&%wFPIYvxL*V`;h*T-y7hib7Ү:}<;#t3 qa##³n"=nJ\vj p{-?W$e J.zH,03ꆉyPt?Xnʜ4!Tj}𛐁wgD2qSQ8_Ӧ9_34 ϳnO tFo&Ϭ1CagF28bdkC# d2n,֨.3>5x0>Կ*Z\Wiڣ ?Sʶz+ݘ{(Ur{ gt| qsZjabVqryNXз7'AS$JlKM$qۛDόWٟL0+Bi d_\ב ,c*$B{4ax H : ά]ضrhX }Eo *Vў&>GT9iv1D|Osڛ5^$ I#)z]Dǩ "b`6z5Āo!-Ȼ7PEht[F_??6ϬR&s Idb_TEiXb&tQ@Wڿ1̭ωwVxmBJۭ<)FʌЭJ/pZHu3 C}puFRuJ6LM VMh!@Y"{l<\&Z5\28*Q/%0T@ެEؙcl=1^&-\3/FSvN@ʬQ#uwsݤEsW-ltأGZ,9u5U}F(20d8pZ -W>AT>L1u =f<  w:SxuFCE2 @F7iLN;Wvtb@ZDѓ=J0դʗhn&d E>W@> k׿tG8UȒdG, ㆚|(Mlr7iਕ'~MV-w)aI[ҁѨ IBsq![H&qo9f5BJIFCJƋozOi`}¢_xyj+`!JɴY#*UAe@ŏHi*H'3_0۸)ylfRK{-]C1" NհJcHtW,ue^><5X#&|'o\tJGa: ?#,Lڏ?#GۀAkhGfA)tɦ'{l,O0j?dR%B޼"fiJ1,c*(ɖ,(t %8Z]eQh_-2Ϝ"A'|^bj=ܙCZsO`&RB6:cM afi5aj W-u+LB |;'yX#oTq{i 8P`R>?׋1;8[ $- b6!㦙9h;J ꌵ66+Hjh=4ˡ f™=mU1~ :Wi0⥰jDpp[hZd̈́c\Z0@H7_vdgÖ|$DEETkƀS;bd/CS1]D"$ipE*;@1b-X_u$r5lݷF$8grGG,b]D+H 4'+kj˞H⾌F?nL[EҤO/EU`V=#:2D Z}HT#B{NUd!:=YRpYfDY3YMBܮu6$LF%+C ԥ˱iztaf~RnxFABvqfS:0s]` QZğ7sr *5ܺw(9RsTq[+:v1eb~XX1Z gB"7+!Ɗ[X+Auր;zi)JVzGnȠ(NYbjtrGy{Sp+qƬ2u;B[&,88VJbgNqy /Gd"fh:]Z0'+Nw m=).rs]B`Pm([Wz!II#c@H |~T6<+*x%9Vl:bU%lr~uv@S f1ACvS4R%yu XĽS^M&WRR<}.i?P}N(P]r> >eSfB&]p71v$K6ʠ"mঢ়!ފi CLt,5# /h9p pI?~ MF]=S\Z #+-T%h󸟜~{`4܅,*rѠ3YV6Yҡ(mT&Y'Bncڇ712'D0NUBoYIHN|ݮN,"v8r^l۾ÖW)xӫ[Bʂu;VocNki)n]7@OnpD܈&QY.p?u ؗ!dټȪ`FJ|g;ؙ2׺2 뫌Pjl;{I\9Wt< wxB9aRQ þZᆮ%\AIہ~%>+hAҹl# ?6MʌB 6qLD@Ru8z5PyhD`FWJeOo-Iѳ_8dp˜h96UMC%6nX_(1D?#!G֔Κ{jOi@rLCPrlvatD;e(Nt_t\S:W v:5[{50-5XϺq7Fzh{fQdAم*CZRHE&P@:L ~(R +dśN>gEm (JD_=q/v `4^qI\+0^w: 2DsK L|JxgU gnTʦ4UF]n)0= ! ':#YEQ~x L"ITbFOVFS,a &*%oqʚž%k[ȅ>xpPFP|=~ Hk3q?Ҩ7S4f$SrjuG~x_f^ô#Pu6wrr}S.`_#˚CLz ]Ro6i9 >ߒU&?%ep`NI (CWhi[8?7lIIart9Cvy2jɷ0i,QЧR?dAL#K3vOnӵ,h+?$R %,7 W tkp?'ǡ|26Lh04O _o*݁2YwuĺEB։9\m,vyEƙLU;dQ7@ӵZ*3۩륾0Sl~ ?.SK͐=DԦSa\lAϮХү֘};I'j>j7aROSv)Ail.~)rNӨR^_ffn*`q}X 'K vgCMrN&)N6Qyeq&21rK0tqRmFtN<]XW p(ǢϕRlˢ})~$2g{:\$T[&xpt8pd  GTċZ;-~1{.YT$junK z܉B_O̤_GBZhraBem<.=2F|y=.D:` nZ Ɨ&o9O'mcxн_b B; <02 L;ӂ1PnrRzuJG0Y>=l:r6 w5ة?{hK,KZEmb$W<#>4x ņ0?sV|[|݅h+7 PpJGY Srطf=K! ucnY3ʸ_;߃O{@*qQrG{hY21Ll#(>-D[ڜSx\59`D׹=@aKXXoU,;:}HӐB? ,[;_ϯo`A FxqSł{E0P{5L*VOf)WCY ZvT8kธKxA*W͜E;P'֫F'R-lٿ8t3մ M&6>`h= \l>|1|3S*sل7Gc|72#ԇ&] Y o ymWԙNͧ, IϏ*vitfYΞdV(8XDB)Ky+N#龝FPxncK#w@K!h13=I.Ǵ2k&ĥOF oQ}5$dvɬwr͸.#4MTTHF?~*ø( jDyvG"W.W\/}_+ Gd8Y!>z4< N{q/>z )v/u<Њ8H,.0\`_-)Z-ϟ̞^ܣ-8^6sN Hck?~VQxioG[xQ{nWzweFoJBK:V9THh9%Cw Dl$ ^vAJ * oT3 u3P[WCLJiعXDt,Ctni6qm=@Z^IU.%ιr~Yt 0`+ J."?u ,t`/"BVO 5>ݯAW5a|Dӭs\W4Uq!tMN$99Nf#p$(KZAiJ_QeO>bСgÇ.57s6*?4t1zq\,|]KG"2$ϓ|Bz GCN#\|`Nrp?IM:Qr 6q5 }RGxN\us{~e5=\5}¥,&kpD%D1j5HȒs0xP!?nRm J2kW?BG,ZsVҎ$gљFM,d_Smߟ{k}.V<%`7󧠍Hl`\af3W"d$s'eEq:{'L蠈t>6xA8e[m”n9`'ecp#8YDQs1d'jOy~W%*""2Le, =TCaܸ6q \sF 03z cY5h\p+2{fձxV\Oۥ?eT:t#hmH1z2ܩPn:;ur=΅nӨDЁ#骭U%劅I ]26R9Np<1A|4?ZqFT[_ٴ+-}/:|,Q٦S5='yg*1}Os&EWL]*D5n,(Am$TIds!¼ (NWѳ0_'>\ ֈAޝ:N3[?R>!ޭdpeَoFI>j' ˨AWq*~["-#d:glQلnFv~I-Ob2!1o:d h#Kkc_ !%TYGZMAe;ǝF,: 5 0De*A{,*.*8n$By88.LŠT5ajgZ#_6#TA<]Ke~3v?` XGx ifi!X:A0%{@gE:/i7ADbdM ^2aKKeً1lαCZ*k9ߚ,A% (@ ?jr\!din;%8A~_~X =c*ˣkkHA,Z8~}lgAKq z[YVhۛ(SDHx4avLSPz6=8 $^O1Z<芍g4Xu-oΊgnsj%RXL#Nm#׹c?ʤVO$05iRsw|m&B>1&yVav}Qr{U692c*7u_1$>5'0(PY>4;x,IR@ Rf6b/|&J}w)rٸ@ _Q#t W;SТk[[V, {r'8vJ 8)zP8aDtnvJ91c%LHl0h ȫܻ'Xc_kk4c0^ 'BѸ+ bRvӊf GrMK*Ȩ*_h̞MQj)mC2"4Х?ZUkЇG@VCUADݨs1f#LWKBx{ ƅG$?m% ,sw :/LA D derP>LU;QC|S Wۨ]F'eҋCiBz_) ud'w~Bq;5R~4۟J.mv5JDU|e5 <9NO/1"a7;@6!lVBCscnv^/ڽ񘰾NxLEC yLg"aHoJs{b>SrTMGRNi: ˟tb!]0d쩌 l]RP<ݨtټZu2f;0"*жi:xG!☩%ƭkkT(&'LG!,S,L jgV' FNW>JoЛ+ogR%LhDcyYp!ZRI! eCq}js'9VeFG]:?u闍jTgaYp6b>9yvEE^Ǫ ,P|HR cocVq7X#ː/k=ʥnk"|,kߔXPJ[@ߢ^>;Ҟvb33Xw(WnoD_Si+l>ޤ,~b0ϬwlV+l"悐C:NqL~|qLYjֲ ްꢰLr,Q7oA`woꞶ;Tg#SP'K߇ Uϓ'Dr'/~_!VmO=<%ë&>iMG.VUMRY'Q2srM$7lt ݶFo9{M .35 aK:6ؤ;Lfb{=)4ugp)o$=iCrš(18*wg'8fxp ᔡ|͚ ;7s4-@sA9얠uwBU焄4R (:ؔ3PQB Q r6:H b7^lds a,zoq9pfmW&ۡP\ŵ !3 9QԈ5gTc}y9,*g9tHFTϕ[az|oP?.fUzڐ=y l k]]SjBߴ8{?g@wKE׻y6v-LvK2+:9&Gx/b?7~U6gU!a%q;>A )aj}r5K`ge[cB_(g[ǫT 7#<'GbpYW& $T:ţ'jg*cF>\,"RN%4egNj)Az ]4ӻ`/hRWy}'zgz+=[Dpzٻ>rr4Db/Jl ;Z ŜM8SIz mՌ50c:()2ݦC'`ٖZ/^AF{)8A dai'3fq><..o=[Qus4 xA5}aT .EmO^';WAb U͸v2 Id1騾 N%gz"[J}Z:\Ji-0<}Ys,B!da/2Y.41=~g^t@T&+$;_(UZ4gI ypSKϘEŠ QFqs3O  %@ ʙsq짔&462_]ΗX#\ovnKOnN8/?1& y-y2ٞ*s\+v\C1xj"Z$38@Ʉ - ̾=f#CF6e+&2"!Y-X'fp }-NFPtF=1'(%ګ ?;dw[HrY~@6B82)pSīrEX(8j&{,&&ݹ8x;"5T.3&76K_tq5iWώУ4cHN!E4_k)?<a7 Ե-=Lq0OcR`iH|/[W@(e+weF\(Q}nXhrmpV#.拭KJE/3$ ׫1㊗Zͤ$u?к9p^ZWC9 Hx=*J]dBsQ!Ơ T'5Sig(SVid)x 3A_1T M$W.#BZe(!Klj&\(%ְ! >W:4e24$ ?%$H,6 b\ V\[C@X"i8۲;f~_18V*z}n7xTx}} &(.Ʃ mQ| t 22)7N\as;z<;CظRhMN m!IRgRMbNJǘ{\X̶ޓ[f'NA$[+'6>l : k/yfcn+|~+-rwT(h(}ͿO0w9dLfFYnKXB(?;W܎>G ,3}w1NlN33];dGDЮz0w$#O@v,< VMv3Yj 苤:R8o>}qR8h_Ƽ1P[e׿*$ZXԣJPrcRK jeϞ5T'xD7t-i';fP3v `IK&f]%zPor1ЅjfNƹI^&0I݃>iccpR0٨*gMF!>=+'/`Dm皏 Gcrgp\u8m8xe_<ÄJ}#rY CO heς*D1ТDY ,A@~l-;̳$]c2i>cLPXP3f&vop$L++bI51 e ?9 %{w cNIЙÁEN(yŌ0,2PQpb>[f&ⶤY 7:;@P ;,;ITv֤o *;O( u<0ڣG5Y+vb.\, dO+,L-8W}_Q<(vSnzx|=\*&ܝYmJ^^yJA-Lw7䳶M7>ؙDUp8Ԫ_cF]_1d`(&Q*'B1%l/b:L.o$4[b^$8I˔`IaM0.v9,Nnk_?b/V vBojV Ck!RtHB1&c"?o|_$~l|fQc*Eo}[QpR^#t/l^a`maLvc"9Hb9kEI2>[{=߲; LY: xw°܋T=G;x2^ j?tj`($@82W{c6uZR0@h@tƣNBZiQmXdTٛ*8:J-eQ?( R\eO?[NX tzE+B[ưWv+p_: S{ wלo@rM%&D$-w76A_w8sx>*+ 3M&l&!xLLd)g |91ˊ{gpyii+p8 ٸ7\Wq(Vq}3gmemg!tv!1lחO^Ipr#[,4Q7u՚1c8l0ndpCpNLZNkAl(Z9%F~Moq0x8X73֕:,|ِlE|#mzJ]~31m&S*Wti?Ҝ3nJQ Wh`@]Sh~1t5jM6]ވ㚈CT˶my ~]+PYE0z4 + 5u:0`Ҍ օqA|8w6U@o* XԞ`HݖbW7*#:8mJx$BV*FE|- 市(,2OpgA4NK6cFԹrՇ浱#ȼhAIa!/7N>AjQg$;wiwhl ,9m.)k_v%Qq^jO~Q-dcs\OL\bV pOm:kM#<(1dIU  #¤%qa.@+\[3ec/stc'd? gF`y7%i[XG]Oi :VG:[u_?m&DrDcE 聎c(WAۚ1z .m޼;[2ݑٻM[ĮH֬ك//)SS&WhGL9&&xT6/n>xku*ōvEHDte,1/嗩e

z =ttCm0xa?G״Ws-R)!0_as;FcF$I8gc5dt1oA :o[;='us#J=mGќkU훀`:PJ{ OvcU_"yfO>H_1ZmI/H7lsɇ[ ?^tIлG6/CEo 38PHS67u;)=ɧ9$`ͅ_Dw,Eb䑊xK)#Fp^%\:3/0A;wd!MұaA<OF]PmXluoޅNSm]@4(VDT[ 6`\ bb8yA G<合OFLWqƼ\00{r,ԏ'}dMPydӅj<4֭)@C}H:<4G*x5 Dcӏԙ2!Ma<P]Lwn=x { (+Lx. $ ;':W揕^ݩfi9iFgsS>aZmJgXV ƄEÒ UѿF8Lz?W6ps뗅Lh,>x G 9(eۃiCx^QV`~뗤R*InW(AQyDB{aB;sGƢJ7nu\P%f;d3:;0*^yWRPgx4AS4`GZ_cU!+TMGw<лEoΆlNΏӵ%%\#s?u['.9讼!@3ͯ1 *} !6W,mvbpҋ.l)F` >Tr ߟ%x&N>q 5sA&}QU\_N y {,kdW[IS8\ecdž ߧl_֞Dom+ &Qd\Y?wq)j; ɂ˜YM|AF.5$DM 3&rm|܀ T=z_Dex$mZ$IMT5?"ISun%֬8K"3[,}-z L>/{t ̭mo4>S}*o?]ut].'x5( MO6a T f]((G)ڂtBa͔$vhĉJ8mfPCTz6w].Ȇj .}I4K$-fRod&(e$ yr+\d8FOh܏e9=d"r>jiljQ!cRǵ?d6\le‰Q=InTRK4`@WMG4 d鹎ԔXFA(D`F8ЈK7SHgs i@ZŃX Pim$KlܔJd`.H*fJUcU2&zGw) '6&ٙ;Z6ªi9LlC0_T4FC#b j^Кmzb%0~YmI q3Z>"Hs Krl}{O,IK<>-zY"Qld{FV+֜~y3܈ƕkίir ٠[*a%Ʊ8uuvX903Uc=ha |T `ʱeqbΆ=vnS+&H\j;*kKq~D]\LAcZ0x{ZhPc[jl^4L?:><hcݼC29@e9wJ|p̈t؛zmdxs#у.#WK-Fe6)p]!"+q stas u*Ta3T"}9nU[\䑥`=uO e=)?\bmOOY<_Su&d3 ~oBܵӏV(t=cR~pWb8'Y[ozt6,#=(z=0TYftL4eei3KtAJv5Ñ߈@ -. IiY҆9TmH 3.3Xccc*6kߞT'qf t '${`'i}u%MM't^6 y•"́oIj>#:kۣͳN|qɇMM GJA曃!h]Eܬ%<{{҆΢n" | b.f0]p!LhDžI/D/CA& 6urϠ0YaOԯLʑ~arqtl`Je9( kmBE/W->T ʋn(e#-XN"*(rM^KbhV4_%%$$_tщc* ︊ӭ,܅hw+cl*#T=pbl1ғ3d,n>ߧ&*Au2) IO}+CSΈߛϟPP|"3 dNe6 ܪɄ( }'wn$W(BY3vgE$2`#O< 򻔗='Xx?Ô&mɐێZÖ 'zF45kCQJp@ֻ}jp2암D%:HUrc:!}jp6tR\N&\V29Y57Ĝ)j6]oY*}LN c^lKpΊgȣ)AvGSmރ6q\{V1A1N^ÄJ˷yb5  G೹A>qtbI:\-s6.0bU[}^h!;i-Vx7(HMKh'(/^a(m"B8R汕$!UbZ?BJ)K1`y]{CaZZjeWӺ^&d 09{qRZ[(2&X!}5H]Xg kƙ*-K{ba;KJ*S^򋇫w:' Z뚯 Ě: vMtf*&_wi5k:9{O@J.'v dهCy+JP]ҿmF#xys0JOzZ6F^%{mơ٨߀=#&La?1JXꆵ̇ %0/&7oFMlVu˓7ܟ``{GH/XC@V<Ǫb!3~=}u=i;}Yeg}2)\a`?|& %mmEc$gs+t-_t G$ޕSJm g'R9HF-W;nȹS#Ns3}~n6-t $Qr:z#r,Ƥ"݁]tstk) n= R<Wݻ4L(lm2uǷ @:`gA)JhyN]~mh|Ľ 8@y$&/U2WaE-'@t`Ƿu ZhzC_Lj(ʭ&}X{/a=.V7SRva3yii˝V [+ Pz|8^GdPN¥Javp&`QO;-'33t^<[ʪuL"%xi&'cE@ BلfNz\1[hŖ|a4slM{w!֗^Ae"jXMߝJ Y$$o7o|s= A>JObȗRz/<ri& wLO/ē^G/! gpt,.߂f/[N#\ul0-3(p)';~I%;ǰ0co)H*Ny'9[zɐe3zmՂ:XQN[WK[PM]*_'f mA|vM6fϪ{0oXuJӗz42n(nH>џfnZڊcpywEvC8pəTI荒h<|#;%]h(C*AnƣL v.ùrf釙k=[[ͽT[X"-b]BGBK\$$|\ꐆKiցϗkVOlΎrcSYr!Y8c]}md SI-=>h\=@ۥiw-8H>]qK 4+5IEkw,Z}fM;Zk@CmO͟N™a%]vIޣ-E~#8K$|Fs0e3m4f*_Ц7Ri'i/ʵ ld,ۡy.SyV>G MNi3{tQ >2=!xĂi+?'jTAvb9-,@b#D=lxE=Q- JOR_Ɲzk8NkA<(axʀu~x4ל=J"=xQ"{i{#++*l{I]7+b zB/#͵ś.WQK/e;Y.!k6|aybJ5Dķ6v_]t8 _E>ݎYvJIe !*8xλ 8+UY*vb^*!3DjC}wB [Q>>2DMFԨw4f'(mY&Ah#n%\,}b7r$]@ɘB2S(WK/3h95[o@Ecģ vi&VOURݏ14(^ (se Opl-A5LfNt?`.sRuG˃_Vh02O4!8{*RP߭ڧO%?n*B"HӀϰҟ?u&ۀګȋeH f)>Uip[9x4>.:ڃYFbQ0fET'HcH⛍S.e[5>v`9E2I W۶frvZ>>nZk79}G&+n,Խaծ=WdTv5G^MxB/@5C"##ZuHeͰ-f'Iw`|U'm,&LoOo!<&T(l1rl6wfg'mJ[|0܅Ұjsalfk 4j[ccc7>wy\}::2m$b޴{ /"!v?^ޏ.x$.`ˤ!pu}=v:x#%?T W{Qx1af#ڐo9q|[vGfR`R5O߸!h-،M%D{.MELcjsAj(u8 kr8֤z_u>n_80Ux M8˔b9kX- (|$󯣿nUU}kUe+Ázh6 0xv%acQ]WzԲg1C5PHreG!}y]K֘Yfi[nYUB'ɢQø‹eH[$;_,\P~iP$wf<Gǩ ;'ğkTd!?BGX홠#4Tmۭf{ esggpF-Π~^~װq AI\0PU9Nl^wxƴb;wEtpGBŅR9 #=O|أ^Fw[XX5k" GN D 4ۛ쀮I{ . vqO4 q{Min-&)$JZ X_cAkÆٚb?XF=ӑxv-[d*yg } SҜ8I4ڕ.RK<#]`Upuu>+] /u .HM߃B%#fw<ӟ۰F!( c@KbդSB[ns3dPeu"-4N \\ KӳL [z!cMF̸˖i'`(eXjgM?dQy0|)[.qv4䨥L9Cb$;QU= _xnȺ9Aᄷkx{)|OR{%19h'/װpҪf{q /Ę%f1xn,|η<0!toP_j48R^dޞ-6 F"ݕEpz5ʧPԏܖ!>k!VtC2Ǽ"K'΁uj8S۱UrTanxf\ڸb:E&?bP_+'ήfo(6+5"J7 g9(7M#%UUK#`|idls[\TНxFߗeWWlƯ ZHRZA0:u'rm9Ao/Y [GfۥfM|iIt`c!=ԛrʵc8xf+*YSbwpH.Z :~efTO{ ՝Tp{chk>7b,ߨ%5=j~}b ͧ1~r)D$`3MG@ Lw`߱ +Y5, FZcDͱq>Pw-uxQU[B&"z͋Lgw?6\oH[MΡ,d/A;LoxvYdw|D-mj2vuBrlOa]? P$PPj.T7' 0i.<%$s'OQNhYM^)?,UNKzNDKKgd]~ &X6&)PrbK~fV?w,aeO6e=+UUεH\֑P@g` @7dj╢q#qH s-\:-J_'?[*X31Z:cM,۬'ƚ|YExhѫ6E~-י=>kn/HM'Ds{Ew|&h<~:Vi 9mhJa.r #P9:H^Pp{zYz|pг EN-[BTڃwwI;ȃD,}_r:{ܽ L!b:>F''N~@}.|<-3lAEh|062W@l3EH4 2ԺuB9Z8mRգ{ۂGvp'[ 6` qsiUX9rE,Y(`ڣ6*KBdi޼C6JSoE5|Ք存py ye3g з0)cf2Qa@^9Ƒs _Nz.dVé݋V9wQЕNK|> l@|AIl~oaJ@sjUB]p}3,Fn{+2th#X+7I=YA6E@dá6 o,Իxjg|J=od#Y Ƀ˓]7)Ik yR_eFKЬ5"(Q#%YrMY!ɝX@9.MnʹH=g@vvqO@f[#.-ܶXMץMT}!(^&G,xx8"|ܛUABrVdt'WNݦjVwbOGI؊@?\PYl/cg[@%ñ1kdÁ3v?Jxx/ QFnS4^gBһL"Hc $) J#~?~c 󫠿e٥! )dX0\kVj)jU%=O8XaBُ<0z CC%pmDyL& c Ղ] H qJMU_g3٭NVvʈpG8ւsE̲ed܈/k?} {K*V/%?Σ_ʜa(à oOBaFd Ǚ6Jj!-rá%Zҡj6^%9UӺOFpX+JZa-kYi1fK#-O$ bYX7#H@Q/W|-3b`'^CF[q/P7cfp@:IB_cZa4 /{@@t?HfYbҧiw g<@8E_$ꯟ}爅oױz?7+(=|?91+J->k3k_Ay[kz_%.uWG^Bj2I4O86ܗ׹ V(Z$ι5wmˎ;_뎔ͪ0PTB'x fmi]; 7,O[^CaFNQ)ߖea/a]k}-4{|=\ߴ[ŋ`Vh$F YlXФ8|&fO.I!Ƹr-7FѤ_K$oH =@hŎ Zu43{Kގ64=zCUUC_@^2cTLNE@~īR7ٖὧ=FIeW(%Ro&؄TJg58av)`g53LG6&3d~}MpH3}1%LWRKxKR$"XQ EWcHY/'督=1bk6MFϬLVsxk ̔<xAy۲t@ǵs!m]}jЂ?nsIr^+K*H)C^L)赦; p.6x@Ň)܆8i,{Ʒ)KUL^-hq0neۅl"Cf&߷CP .=YD%{ *__g\ٰDܟauIYT/E+iەژ ]i*GO4d,! Ǘ ax歐^Ɓ2>kj/Q׋yluAIhݮhw\*"mV$˓AqTbSI`?Ձ!dTUª%;I ] UG ']U Ɵ2n3V˕K( U 6h:ZtD!0ҙiV獱 2^.`.G,Ϋ5$ӘBޏ#JzQ=e͎s0q_b=$CWjS tb_tZ=-r8G_cIrg5pl?@SF z_"DP:潷PME5}}5ؙ &" (}>Ԏ I>Etү& y``Dn `ԅ9)NzQbG Xܪ"U?1Ubz/cvg`A;P/4j=$-0:xU s# LV54CWe\]iunNaoSQZ;*j׫OPvS& ~U\yOԅV ݽEL8.7uѨ:%a}.s-XDR(6Vg Nq~P|߃JSi#KexWdHp!Aֈ}FUf~ x Q y)&8cӁ;(8iti$avÓt2A6**>AٹY1 ;`-1XLAqѻW}D^6ʵO? ?^^<&vn6cdPp֦@RZ*0H:lcO0KiO-KC`'n7{PO66}Xi@ 鯰74kkvsS/vL)T& :e6hEOUH₨D0&KzL~XsF׊Ŷrߘ$,P$cb`g^}Q[#qߔd;hItnd{0p}\;L7YÙ]i8nj(cL` Hguʵa98Mg"M+L5G;'0F|5ybOn*U+@_p8*t3eANe_*zrg|/׀WAGt:Dww-D+4kx|K62AHMƸ6\x"Dߍ>d+Y(4.UM19HyHGTazR/oL;vsIS85y(صxw/Qs?QSJZB HǾ)#Y?QzA!vY[?F,,"cw DZ^ X9m8Sfm eSUOy' *sW$#^ afvWȴP-&HrXa(xuܺEFR?b]c: uoN[h7" IfKYMy_gu`%6BM:%dԧ0ǣz{| A24LO+4.9)^^9U_K1N.4e  AC\y1t[))4Hh ثXΏS,̊YZulC(v|Y(FsSƁgu$B2gh .f >')JB3Yǂr$,K4БS⼷OK S+<60!2OzY&QơNKu4w$]`F?X쳿J| l"pýэ,Gf }{V÷װn>޺Զ+Ig 48 [ o i^8+bJ_MR*;ӷ6lTȊQiOo$5rq*̟N3" 4(&Cݣ񥁒vЊ#jnc1G??Yڮ> d}[SKko >0{}27? 45:`jLO:´Nk_W[O;|qoOĕ[{UUB̲hE@B_`3avc Wu ((5S,񘤸J˥~/[j`E?[\ :$7˺;~cJʉ Bor]bE ;T扡X fΊ>UNίYV]; >'洫Vbt_HFը߻&IW;0j1x `0/fxQAdN̼]R8Ujd +1_+y񧓟'gV'Vb(UEт'㞠w9WI~ &:!_xmx 3/al_Tnz9mdIPWB `@E&sdp2C ~tm, 4<ba]5>M]OS>E #5?b,F7r=跗qRxsjxT1afpIMS}aŃf4yd4DB/!.*<ؔ)Lp?}jBdqUa6w- o9 5n5(IO%"C48?CVdoIIp BI3&0VU-g&鸆d}GSiGLF\'5{A7}]ajdKlʜ1hjQ%I7e  @a>l =?Y,t[9d(Nbꍧr # oBQnuhsmf1)zhh';ԩÔERK< 0.%vu;tƄ,ئuNL6XT*?EPW=a@ `!,7<,#*`톉Rnݙ;pȽz%E,#6pb%+Ҳqt} Kz@+(:+1\(\ͽy'bKޘxHv5Wr=fw^S±7&(zI42JOWR͘٥賄#msxyIR%,U[$ƍ2w-Ԍ$}S솛kf)ڒqaq׊uIM_6=z9i;c_v_+ /tpE>./k}e>bg'w2Sn={0+B\tJ RegQaI:9Uae"bF|% 7An*J*ɸ2n 3FQP4_Q>{G5( rt1>Éїgn #6cdHv2zUYϏ|*P+3EcƯ#*7SvŅ?F^ P! w 攨~=y@`6?)'% lܥg;Ec*V_cJ^Oe7B O 1qOjaƒa),9Uư7N XLV0/:Aw+ "%׺LF+5[z5,P(_;@9YNMZAՕI%={EF_Sc J\ZjҪrLd,aEہfFǞ*$kZ)w)u'7vA" ..0Kࢺ3 SB4JޞdIH-q0spՁ 3"idpj%r&*oya z{@qWz;HV~k{W_7'Wݗp$֋ 5jhNa6K?ZTl/*Iu%hk)!S=ܹ5ќ'⚬V+Vwi%(LMVoL @֟+GG$5DA_.>1+"-% 䪒iX;*}7au䥠U+H\Oy䶁:Say|NމFͨN~0J{>!5w״K\"\kry3iGxC@ڹMٷ B]t$޾XHuΫUngI~fSw+S\ZX51@Kq $a@'%Ҁ}+ m,5?>ÖҀ3w7@SNblWvs:dbau06f+h|>bzMi7>b1dI91K7%a7!A,f'Ycvm0 ~I% d`{68Z:-OrI^kT0/J )oRG8@G3eEu|ێdvX߹od6B30rKKo ؟mGf0bbm+Or-P\QO .?63KN_Цc^{;2hp&oNP01 )IC@s-#+M4K[qE.X? WBS},׻ 0y Dpb ڮH8x46OFx;uh@w,&$UjL1 -bMs5hK!_BǛL5alRe`%kf'78;.2ǎ$B{qlT/៮g|:Iiȣ,'(<X=:)EƔχOS6^ J$nglg95hIam 9^1R3=<%Ooje>Ҹۜ$`T=tְk:ڑ^:ȊrJ.>ھqrSM1 ^.g&Z)JV'"QyK!8M,+4\\2 \$0:US , (rE =$Ts|,#JjvWkgl(5;e>&a _]ά`'u{N4ŕL\U^^Q%!$+&5tE5? $4w-w3 nf}CPy%F1cBNjA=>\ۘG7uP 7>¹P@f\Ռd:Zxw%kJb~y\Qսy#DUf:YoLj4ϑy!IGe/{XSqSaP *dEbL{߹7`.WiT JJ@H13>I*^,4S]x`JR+`#>2bP -B*nĴ3D;f6S(I; ή~TY(tx%D u!pdC,\}9A[ͤCA{$bP(h=V;k4We2fgꥉC%f[_"克ʄTOJa|n;R˪]UY=bE$Y4Qx-X45c uJ X S(1m_L*_SΛ(Y+Pa'>K'\|ډTO֔HH Ǫ >FWo!ueNf/rͩ+ʅ2٨'})IZL3Z=E[(jY4dGߪvRS(a b]a*0j^8{( | yP y阚80w'iVYMOnEfgtK%kQ~ `=& )盅q] EC1ėe]5n06irx{~?뚃pX1v0V Vetlek VK _ne{U^ڌSntO[6}5~*'CS{(z[ؗfEUv6Ym~4s!' %3zXtgV<_Ű?҆Xxq ([;5ϒK)Uq!;`_KVLr5Y64;a8eFJd.O@Ȉ<8pV@GU:Wԓk! a|_AȻ QlUɾ:{ISsg<z$$[ghvG-[8rDXL9ݛ!JEyXW#sSJk^<8ԧ1v8By(堯rUnmfI|&,^L.A6X8kjHm;RxGG,9|r),U]vLN͜WSk 29xj襐[]T͗|LMprU/$[npy3LQA*ݱP, J#bF,K= .9;.МˎgMs-ߎX@#ivlwvߙ h /3[ ם esyN6t']Hf'hk ]0 -vHƍtW.YBS3FE/$ׄE7m0ODMջf[2tXU(FZm+ hV)"ZW )9ZXq>恄-ҫ~5pfkdo$bJ#)Rtnaw Fp"Q`]1QRRz24k"9SɷK ǮMϐ,ͭ+I `|JEefd0sd/Ҧwhwn%Q@erXoJ2zKkX XNS\ދ\Ӓ@S\9^_ bSz:zj=OM 0:A䛎Fs&QΏ1}X3($&?Nӳy8NR Ax/\4G y xп/mLrfuL;Jpkh UPYX'rQ[, '!Lv')-%͓~DmD[2ou{6]4:UŞPfdWMN K=a(# {2/fW6h/Fې!UkZ2SD* RHD0Nm/*1yjBޙn2oV1?uƢ?dvk񤽟p*טbxO>4ʹF/8{ /y=>6Qp@] !k` 8E lYs mu6ZOMБ@fa)PQBg#88Ⱥy!RD3 W&֫Xh?s~dʧݲG^uTnYU1 \gP,\7@'vӪm0izi+3D/:"6zpuj'mElb#LhgqH4俍foӹMR qbi)k*j^M/8]'ρ='Z) Y08EM96A]p/$FYa)ϙYx>E$xGLeю@g$|YO躓E XNPM?'l})WOTK#BJ:+r LQ{V:R COA\kމ3"΋;U&1iYjКs;Y՝6(:{s Ek2 WdFp!*1|0q: d'xM5߰˽HG`5a-וADS;<ro&0?-;˔LyO6bs x $vR0kØ^ϫ6|55AR8a!&q=DvղցS86C芪`Dk7F]sAVbhX^P)]B>2eN[`0bx!UKئjQj7G>CrP<1fݗVln_Y HBڝ# "oqXrc4v4>$P;VНf(_f>[܏vXuqMpf0Ld/m2O͎?Y^*zaL]6.@:6Ɣ')F쥌|2U~zU[㇇ Dؓ4w8q@XpF"\y݇3~/LXO#9tƤ}9f)9#cy;㱮{|vGe\5Tyt2 ͬv3A.vUGRXl9 ;L8;V= eaO{|GD+! >qW 30q_"3Xj@W`s{"Q<T~cl)5.'Cx-bZ1S{=+́dRa^}-K+ dvS@Γ:d֙l[63&[0KTV(RaKQ35tA"{ü5 =DKTpIVv0ǁ>' J<{PX%9 %TIE78h Rtt0UQzSvY\J#N]ۈ! *.VcFIY1$fI9kҍ@2 om}!\y5kv2E-źO‰YMKtS@ZM;n<(aN-6*py1@vFP:!nTm+vƘPYb ڑ:&:3kh!aTOC`B5~_OVaPXJ~)s(/lkh5 Bb)F?4L_)@p[p?Id^4IEܳ);K qT> yyV',;ܯJQ=k &#uWu,jZ~>tDLЏշ9p)AF LHфG ;3^GLf9::;1f<7,"l:o逦ok7?ה3KGOo8&Z+2IH ) )D@4<<`E3wuBh OgkB*Ļ>`n:{QM)>~WapC` `iu `" w%LvckvIi1$l.tDU3*`U_Ɂdes~.?M^vדmtP'"amYcX ɜ 2y~jCeZ~4$wnܾd穮a97ݓr)Y-O:28q{7Rt!o*e*!4ΡNT)cȿp>qnԕa C]ⵄl,|L2cs7ѝvq VcNVTǣjA7kQX ( ga% w7^y1%w(ͬoUilKfq̵4xb$Svz"":y̌D7bOeaLo`_Vޛg?KJ7пK4Ì@4kVW{}^Q%5Ks jbݤ[yKs,Ha׽7d)A0FU\D qbb-,w킻VΔiu >$\@G8pxZIItS#lZTyݪY蝋eQ]3ZWG"1v/gpb!-uXSྖl!+$m 8/^J_h )iynL_CtHRhlnEsɍpDvMI 9`8ia4 qa9fQ߰oh9,7b3'mtT +DRs #Ɉjmd 1)=*ZzBf"v0{?nR١q-O zmxW͚W }xdk5n9Ď(n'Z=5ǃ8ى*R2C;-Ɋ6gÔvou}0$kF5Cni^CDֻԉxh(!;04Y^Vqb]̳HN(Px;Y[?Pb|M;= y5B5J+gWuT4l+{FUxwqueDYm1|s6=\Rn&99N{MXeeˇ^t MeyI Ʌ8?6a|N'VڱQ:ANc~bn3rp!33966C 83 0:ګc~)Ɇ|K@+'=#3~E;7if8 Rc} oF5 fȃ*}yެ%w(A^^h:((3: @Hr:xJ a'!0sc_6=ܶҿq_{;gR<i%{LJAI|ZRUe< 3WlnOG`U9P2]:yCܡM]RL=%?A+ꔐ@Nu>6[y G_ #!tTy%Hx䝬.ES`^_ s4ԄWs[3 h\c dr0KĿ=9vhV4 c>["Yק'QExd*@0IP&XDe "[s od8(^ r 06"vɟ. poRvLh\ ZY8MG_kk*N?@ O a@eDK/Eiu1h;V#F& L^ ڌ=?jWx(NB! k*z!wԼ+Gt#JۀNzZvvs`3\| NɀƜ5[K_Ϣ LaÝ\*HVϾ5S}!, ۱>VUdst˭D{el-^tuʫfCUGk^k؁4m7,HĚJnz X$\<]bQ,ST7M!1+3E48Eb;Sܱf پ 9m^KJ HYh>lKwQ|خ2kxFԈb:_*Cs8eLbY1xty;X[jɃQLRlo@KڿtUe;m$S!4bb&4p(*ۣN#%۫[~r1_պs4n ׬|hIjAzN+&zX"5kؕMrY`Sp'4C`P\@ZzMxm<[q $ad=)H:yelaaSI(+j4]-. 6Q=v!i 1/M8@Y/sMרB&-(!o;w7 E3_r#2k`pqEq3U);P,Ow|)RHu-K͐JT2q٫9=ڴL[?^pgvG'yaI+'N^S#yh'}C3u 0TFrI砈.뻰<9>S6~sZStO=Þ"/[n:&#UuWULz"`N?ser&mLRY&(\KY=L~O{}pbaT?N{ą{Z"-Ƒ\|y 5;ks@m _'5/qd1[^@a-A-;_ORKؽB Ӛq&Rv2oJ!h1me ^/WhN?zr޳Hh-m/z)j-,׋!nmql_~D}ۏI$3ռ-vXw↟H'YHфI OoP múcP)zk}-v㡎~LjA:xm, ) {RȊztmu3\!tixm ~H^'Se<}y*2^l+Z9Ӟ[0d^SQt!"-h@kT<-UěTyҞQCɯ(lQ:1lNqZUv>*jӶz!_P.V;r>$`aX]we˜8Fdv3r./+Gk٦6tgP)^I>ޔs&bN=1731p"#J䭮3'&m4QS+RU0hؔ1i冖wjowC#_l >'JkO" h,*x=z@ 9&?p>d{:!2Mylͱd?$Hje&hz` yO sSF֭㵮%5|}DoϹa,k1m/KAlra7@N(A4+JNsϕBhjQɓF]6-x7E3D36xuqo|rDEw] wwSG,?Df\*PFݑL%G6Rj`t=3!fM(wM+@P8~,ʲ[U+hjȼ, ͧ 1M)1^wůC)}PX[Z(V$lƠo^bG=@$X&FAr`%r25kEyp *\ni4`* B;P]|0~A\ ȷ\Ze CrBvTu4ylv@he"l=})("#&D/!akitj8**['H^0 ú|ii\rTxw߃kR{z":'Wa`@h _;*mcw_9+ Ad)㕀7q=#sL9Q@ï ru<$sZa4o c%jA.>\ԵA[@+xh}BEf}(\jI  8@'BH[8ʶ X`N!=j]3JF}B7ĻHK y ZFS:tO7A]9/fU0cC^ ز} omSS섟tuBiEe-!ˆoϽWvGٓ/uʥPh@z6b  V/u.x)t~A'2U:.6bmUۤKQDܹErHn?dT!qS yנ/8;@Fܴ;Ǔ2Sd$(82z{boMvO7!pScln=eRT.Cdb pt~C ns!EJ/$o'x_y Zg]WKi2zP* [Ǿx笃O`D0!6-՞L!2I:>gg/_E+q=_} II,4ngrM"8uHV[Jj/RXBmo~7K՚Kzøp$*c$GYCX)oKo"G;m֙vᳪK >+B'!:z`a9&`TH}߹U{az7l1kq&%L8~o t7ov=u Ljd5)eU&YN6LշBp3ש%o\_> \fa¯gj@U _%nM#1Pd6>kf7Jk`u*qyxx8"O f&+ 2xc擮zmpko^4&=JbPw(( -OtoegOydǛL]# `V$=T-'/$93oe|9](pzVK \$5,K*Dq;߹;r|0} Z抄1-+q4/1)ɐ82՟4pC"h)AJPk÷٩$'-ܦ [n\N?db$TXрcj3KbV\)\p^N/VQΆB ά60ӟ;=a#`~'a8:G-Ϡ $Ƌ=[vGjM?e|I skţC:O7/qv*QwJa]S) g'(Q/ivGXZf gι[4!4 klՋ!/~ lٰ{z[D `FN7b"׃Oa,Hei.b B?I3Ew*1cj^gk/8(}EM @(1 %X+M8+GY uW̥jrΝ6sh v[wᥟpSAf_-1Wyn/.S!BƩ\d=28* lƘN>" ;Vd+*>ol3OXbYЗ ` 7 tc;Q[y|㡓T!EV",ʳK s{R*~!Ђ"k){FWg8]!2+CU /dUK~gU7"hJEl#{G 6q * ;Bw@~{Gi! L11 0M7XZc^&{@•n@<ɶ܆,'O+ W7"[9wږ4KI|f(k2 Vh߄,G S͂c 煠F hZ%:P-qZuƓ߅<@ 0(- UC/+Rk&Wܞ2BSJiLϤIk3:2o]qg y̌Fb&H7 d5K~nY?y7voi&i gYơ.g5}^+p|RDmw eɋQ#Y+ A~\3)9D%nL6snOy1k9J! @a4UdXX\< o:w&O=\e.@p+H{Q\}l4!.ӭc1:tB$&f&T3nٖVGJq1F*;߁;v;0ZnK|u =Mn8" kV ezC}{g1Uwr5, \԰6޼&cVH}GeaɭAQC͛?jDTX@Nv:zՔ:ӣT7/WzKQ{F;gy6`Bj{ +^Y\hdƽj24J|=?K ۭۊ!"ƛc |'BX5Wh2Oa͚^-1K6NfZs?4ez6֐Ц8QU %/hສ×_,}T/"^H1{KD敷l R}DN$115-;cK j|j^"X"p/lӶuN$Ӓ5 'Y`:3+L# h483Y7"Uf[Y1369xd`kK,e$!f)XZP]Z n2dHlHC{q¤K}% }gKUޫƥv9nP7\}w[Mvg %DyӖ"̱$Cx<8*۶tJ@O%)լ߰mC:[Td:x_i6n6B\,헒!괒VN* ~,Q>Z)Qf}`ߪ[`_QJʘXf%Uߓi.hۅG%` 7iJZ$#쓒l`F ׹LqBx{kdqӃ&uٜF8|Ʌ!3Ł(>4wAKPv j=D+ _HaዏPCjAu2<-`mQf|/?dcXD$SW(n6eqb'UH'H\kmrTk Vw˚O_3[=kr٥[ mEnX\Z NSg5Stj47pۅ& &󒠶|c+)tQ`y}?\IL\"WcIY Db>}z?U:Ҭ?\{ $)2SQ-"pJleC7 8?4SI~ڏ@$Txq !5~ hV֋~jY|q'8 rUDR%}e,a!QC+A2Z1;;uF[yxxxX8ą"=P\^WFuOmEJN2'pgZAS>q~;vDJШUW&ؼ$?Q4!HKk' kߕ=+!w;hAmKii7V3CK99l2/89m4 'F;@-# uOpQcdxX:Tb`fI$ , /"2JJ(. ?I +6.~>'ҳ 7w=m |XQ"tv|KG k;3fd'lNJ "i>f0O*%6h~ƧYE#xJ_cw-[@2UdE,Q<ѮJ0D&Bu'IZbD>&Nu\@maRو&̂zл.w;v\[@8T?n2&pӐqґdpmYB0.u ni[K%X }#|X*T">;7O|ۖ& ^r=d"9ׅ`^E,-+qcIܗsR=1j@:M'*<\R5&LjϤWs^P ?^ PQ5ķ 65W:#čYgŎ>w7Q~E,]Zj"f ;p͂!E:ҡ=e}mR"Z[ٽsGbọ#S߇V@;+TWhD=:O ,Y.I,Sw2kD5CPǜYp_"P͗ jq(&yԋ}f"%U-a ˯ru%knL^Hy3]+Z|Τc&$pq @8`×פp̏ڱPI{yk/ >bFQa(DeLJ>ϑF Ph"i^&HFij$` 2 ՘jMѻ*\J]= <ʷxnwS ?!x5ZgȮcXQqP@6.=~윉inC"4zC%6|dw$k7)S1Wi^̱W67a"o:{,[& *9Q m7 [%ޯ** {ađ^c߻0[?ZR*8&Ԏˌ*Ɣ-Vp L=Һ_ߠ)d~G8:Yct#*C\s%$q/[y$ߐخX% :! Wϲɣz.tV8|Fgcf2eVφ=ёAR029R}bqIcGA+XAg鿆 F^WIBȜI(ɂ!Ol4ر}:^a!R8ԋDbtҝ.wq nk.[F@渢3I0O(J-}mcskR< XKҗ} =vv~̲QK=,+Fid|i+LʩC .БNHmVVQ{-:>, *nA8Siuf.~,G+TGRX(84x17c2wj18`(tSt\־L4PpߪU2ϑJ&o`kaMf]eITw; "0P;mR C??ku#]lӕ6#y/97U DDܙIuR+IL5kPMg]dC$6I| bfi1:"&TcSm'iޝTj8,t:T. >DTƦf nLwRK`uP 9bi`M)7E)0$WȅVzF5kri:eYk席ᝄ7-W^m. `wqeP)}d=eaȎklKU*R9nWo.;A*Or$ 3ev1!  @ɖL_*U!S҄l?>~r}s "e |l>Tꐓ+[g(E#wA;2Q[!)}wp9*gpPuM~g1j1^^UYf`H#"&F{B=ג+D@~*7{϶*9M J5BY2-bYzc)#,OH^R Fh&}`[**^c?Q3.8VI(`qU3w%"5"_ V+(""9gz%%v;RM7w΀Y 5FUTPɾi(y4苳I7p e ֌}=/(&)%L ߜKEїJws=;麌̲F-T*kN!TJC`X;x.<]hc sEiJK-.b4BN|ªpe0`xtIb 0!Ȥ_F-u=en$ݷ֠- ՟a11_uDmsJe:2("B<*5{=ktrU^ uK>3'Ca9_C&oMƵaЙޓ%`bBقu2c5EAJGEYu#Ѹox!tp'Mx)fK_1d,fKCb~MZ}q?lܓ"4\DL!*X <΄#*@c]{swm cc>xo(&R  Z(>{%,KDy'J)$]w-g]x 19T}zrJr}䶟 +a 'NQ$}xO#!iHy[ P\C8N羪.ԡhnkn*qQW+a#a#.:m–jhƕw rFTJ2ԜZb.y?7M [ f[|Vlx7Nmu~13*jsO1AMPqM(s!͓ @V(d( /-Pa_ X=,pFLuVP.r!CwG<&K.Ʌ`)ht}SͰ;<IQk62J +ЌF*%We@İJ=T\g2H'^di9=Ė229JrGǤ%FwPw6,M%0:l s7qF)DJNw8m;s3E=+h!]9F>>&n3R L%#ĮZ${)_{n$v_myjO<{j`u]*h$n_W4S:Q)Sa`\UwO9?h%ⲏ}i'̀ǜWK}J,uJ`YYfcdw0|&>80@p+4=]Aej/87 ϵbUnܷN̟P\J`kW\ըL[*ML$Zict-5r4)d,%-uPG n ᓚu O裬qT<l7 t6-m>qΗ,sZV_Do]m- fP3.Dv00ZOUl?eH&-YqeLcOR3zbK5 ,+T@LEuP2WblGp⑌7A[:ׯaϦegPmAG$/NqB(H\d%LѦOܽ[~~i P1cbVNX&U􁝩j^b+۴f!u+Jtf [)]jXGf}&ǁU]B*!c=6;F H\DR)_oռd~%8?EצmI~9pkcAK1 T2\wbLH_GW(G> NjKR%3Sj# !uRW顋Q>v0Ť*hwfܱc9͋9$s0K/#SyBe䴋{А8ƌ_Q#>VN0mΧ0 zJ 7auv1+œȡ qe3{' kUJo!plZ~CCFGL.k3R|='4}>AK\K/(ެ[/kBh.NR,)LhӭB\7B֕SbXQsqi WdX#|<`>U|x8T ,7֧IQq]Ake"'ޑlH4sܮ Rz87xgDrQ`>=WRxk]\$ # ȦJ24?q}Lo֐ TPg-"!Q߳Go\J!\ጀU82?.C@gݏ^Wt(lR )x%~N=XPa'~e ̾EuR&ZvqLO Db=7zӒ|7288|` OA2)R"QeE ґ$8Nh F?fO>)oIAh6ߩ2s& Q-ی~'C?qC̎LE VqCoGycf]w|KXMl L+bDR}iSD#ԬͲ+&lCĒKoVa-s\;m.;aC{DiWj t?N{r.$xS | np;\giԅwFOBSC ah%!=r^BizيWƲ_J,uבvc,4.FUQ_"dHHo? ^m­v:ZXU8fHV3a2DGlK~MZPR$lTcQ|;ѢuKDa]f! ]c #k{rBr *":(QĬx+>@==@9H\+mAzP!{)㶴cS#k*ENGn6#GczT} \}h>q%ۓ8Z5(%|>Ն_JciE H&9*tP*8htYy}+PZXn$)hHe1E8{;ΨЍVvK}QB|?l$,vD ɖ(/8EN#rG 2$Ѵ#{Ւ[:a#`á\o:<@:&fLՋJ: !\8ttJjVhWuH}I:5Lc&qDA"aeF3U&53PgrU9vzEv(7sY y#>NFV$nZoT@,TI};7mlKqH s]WmA 2{660Ig~2R;P09xn,Q^@ >Ҧ,whǕaX|Cd>| "/{6\i|`fCq S` Yg@8߬[꾉!\RR\4}td;jabOR-;D]%& w0P.ϲ;V΋w X#5`$HC LQtped/CQAUv L):^<#6`?o;S27 \zdVQtnM%zg]摷gtR&]D!E-+͂:k@LG,qd޳EH֮^ɑŃ6F dz; -bne(w R;6(dy` OL=EpʚaQdL+##D՛Ø"X">jIp& 7_U9kgn (>1(x49OQUԷ3[RK{uJ]Wsbݣdcq6G\&H|, tж Ll9(umt˼t)vp T}\.SS{]X*J)8MX^u],zez@⊮+>~hs1/Zm\{&zY?E%>Y̯da*!sRC*S3A0&7u9Oi߳WK1^/aʕ`aRMj)-`x7gh}Y8ݧ1rY!B$ВDy |kV1(+T'hGJʹFoŒ3xg7]Kp#OfqfL;sKh tdtLx ϘyXm e;axk`?L:gdAFHI6xo)pM{q>$- -B:q6,H-5 e L-C]f)>#/2Աɼ+\tP fKsKhBds k!op5zN!qQiU^+%;Ke?3[t`L6}hX ՝ *ɇp#FIȥ>05=I;l0{SW׿{>=gLEriB3*"}AcOd$hP"oUMI$Gu9'b ZԘԮJYu_3`m&<1|dK9ߝ}2Z7z2n[up6zLѣ4Q!\#Zqc^kja4Nt4fG907B2%Ge4%g"q['`4^$$vrȹʕ;|C"&S?<ͥ;iDiH)*~4X}M;?[.mY֯=Qj:iVctNywR+gg["^6dBarK?JcPդ:0ONAs1(ZJUY0F ]ͪeȓpSC[(v(wט?h eت"6@?:&S Jdp3ᘩU.3L9i+͍vPywZGCQ3MGYD-I*lK*F|2eLj-={ʿۧ8_vu@b0?h#{a&6܁_u(-_ŗVl` r~N;) Ruc*.&2,bt*}۲0gcltJj9{+2=&|4!pfTG*7Q&21JԂ:BEx:Ug d5 [Wl .tW^94 aǏދ lQ;x:nWpYdâBANyr~M%[ǿ ]qRq> JHZXrD'WI6WGyyQu~%% *w H/ j:aƈ7Cm3l<\q57:*uִbo-5Hfw|kf֛?'Z ҵ'z+k{Th'(wM*KkyD+n{[ӷ=je+hZ?[~VnG,6Ԫ`2eALߦW8U p_~Cm^R<4Ql'& s 5&JO$8s9y&դSFɘ"'l.,49 ڭ{p}q+J]ἠ]|OteQ ay +%,5!m%2! KԇnR/>,BI"hT "Gi~>z}+[xIh|@›)K)]b98 D uZ;Jt\(a^a[ Pɇ!TJ~_TR0%M?j=rO1 ˵>^i ʍu_ȖC} eѿ?;Mn>Р8EO{3c\vo R=/du{s]T[Hs bUW| ki piU( x[i:} Xy |O"5=ֳ-T'$YpZX`R/]Py V&sU'u3UI$߄kI7"Af-Dp|CyHuDxd`Rk7hs  p]M|WbPCgcKwvWT>)}NSN~ƀ).%!3WNe!`GsYNӇ 2mw$t3. #:ӛc6KmjӠћ˞DU?֎fId! LNKStH UQjzJR˴EoZx~)$2bWzxSgQĖ+&4Vl2i [r|=p\@ᝤ'b|=Ƞ >'0tjw\7< f, u2[W#ҺU}NN/{34iyx$SDf%,IOyGV_n̄rAť4iMJ l<ك3vJujӘ@LG4ka iyAqO]9Ql_X$Ť]J$h+UQHyVh֝AῡIl6|z x\(=uHw0V[{y-Ёt۶NXV(e6ޞeo~?oC7o1HK,Trb'n_VS)zzy›^71}8T.a.PXZC>ּM#0}YPf&$X3{%!:'kZ% :OYE*zħ'@ 6/pUzJфg W&r/-ކ݄̗𦐅C4Dzݏp꫒&FKW^J0ƽ)O,5sE5:tF^ip6yS'S #u6SS?Xt0SۊF6 6+e z+j{z؄/~Ұ53lN˄1⑫Ds"l[З`/jGw@Vf=R.|AKfgy}TŃ_'YB3GUkS PKh"BYC bԯD=DnLGs .Rͪ1pCpj`>,pf 7Xd:G([m{(3 e>8?CyU0g,.Yc 4+UGn׬d B9q*/ 9\/0ԍh."TI5d;z^EA,'RJ䰤 `7|(6ÞГ Imv@m=5` 9kbU7 4e_`}:RegzEXXl:_i%@,9I6kK9%`A)HH$^D%~G>k!_/ih>O,'C8BNB8ĬCN *C% עTy=Ve$y1k(@mqXtNQݮ 10@Bv:n"ؕ.!6Bdu{u<@tÀ& ‚U7Z@69YcvtOm1v}>oǪ!YF` ¦:j71Fb- Ê|!,csГB&O0ٞUxZ8z :NdԥG}Pz{| Ga M/v$Mp84xH7u_c^+hRXo +L3aXx)ܓ/ ^8?Ņ|9 xi 65c؆]8Ȝr]b OHKп"DH,ݳAĴ-rS$dR:UOr;4[/ڒ>9ۏU0(`p3qQd}ZQWijmj_$x:aw\ГP_znCȍꧭr.bejt)<uWϛ.$nЀ8L+OdU6xS{2gRB<"CлY˄g \\6ъ808fòTmQ %߰O^pLQ@2CLc@Of:*2!Ej!NC9t$0z}{~$d@$xbpyIBir@͚-C%&jHwHLHOBx-9vL*3$jꛤK֪xͭgt3>lCX,}ю)<ltG[ίv VBxD&kCA%> dKVtBٳ5_i^ Ahx7ybi2 l~_Ymayȵޱx{@D1&>dVȩ-Uy }f>.וfX \{h5bv? V,jܗn7COh-⁽J'&a.Эpm_tK!yi$.ѱ=HwrNWtXk_oȋ^K?} ѳ rGYQ丢 !g./NM3%Դwܫ&^+QiDoS\bH)Vbzw@SCt?N~%?'`.l/=Xg"%\&Xs?DYc[SAlp& -o`3僎taGPg]6G 1Z&́.t M:vdiBPQ H\ f1?ҋ `CZ;r Bާ"hWq4b3TA] G> ;c/@,:(w>e! 8o ;$- u9EM83HA|uxAb`$h_rms}HY m9Z'7JxCU# L,/ s/~/`ҷ5(2Lz0tD Zۊw:{A)k1Y{qߩNZMVOQFcqP-\3f Ȱ%[dؑPF9dBr#wp~t`8i2r|X)%h1TxTI2$Y-Lcģ#`aϜ".f%wy^9n{NX[W-@>tPMd>Lyt(b JM W Vr̋a~a>୻ML$rS >P)h KɾnCzWq&AqOE@KO)Ŏ0K*~YYѦ8Z[x>k@4+Җr]תn4ϕ5C Og`UϜkdCVWph<]ژ_Qb2BB4R ( G\]Um<ܖuc<8z.9@)2DKZoCXa1{剮o:۲`~{]CuF>B?˰zx;NA;N#/͡O*?tT][ 4@F#%cJ:)j=Zh݇6ѕTGピXfS%@ZnQ0º0K7D+30Xd=L@"he yUX^~bQ}5CJV8My ,'Ҍȸyg/ِ+̽s8•jK  T5Bo(I& 3lɗgWQ܄k2oAUR~;ޝIPq9IiPGnVyºU˙NLW^Ӵeke D,B]5`و#d~"ld&*o<:L*byYxj<g0Y&:!<9"ȩ HH +5(|ts =ZρOLRc_(v)diēo߷Ѣ ]|52NޥN-bq q#Nscw-;,e./. Gϫ yHbWeTTm#!JZ<[\yG%K\Pk- U0&{[(rY5%Cxȑaw3.Ek4}WIf?&`CĖnةs|Q%BZ+1̎͘`A=j2 =M[VlA!ZCB #zyM ~Rngi$n-Q*"Wӂnd2cI첪(~5UG(,iUR:Fէ;-A5 l%Y-Ɂvn`8@^͗ 0Hvc8t)*D[ /\-jq!8v Fh?pb7GdK.uW$A_w(!g8;F bʼn}:q>6/DZ-u=&{Gj-]xsߥ+xM@Em`R 0$Ա3`.&ܧKnW C#}l8Oݦé.ʩ|?UHűmQjzS@ MPjg (Ꮖo\4(L㗢L3IQfy>sBO02焥ʰ(1Vbf)ډ(G[ɤFhFL vDNIT?P~vYéO$,~"qNI%4 FD @:"Ctlsl!SwSr|jm/FO32%ƾ`7Φ+ÃfwKX< r#\ĔP9Dr 9U ~'ҨR-6,yA#MV髿wŷX@)űŶ\UDrfJE?G٣/* R7f1+ln+ULi  X^}t߽R p&tbr5᪫(NҾ؏;&>pOwKC2alȣW҈l8]J&t{H6{x6LePOh3z ǰ 'e`78|W@!c)4V+~BM:dfmdl ?5CΊiX!uY`LH4דʝֹX/gpUF$Ya+\CBlўkČmC% ~ ↨b|[` k%<42"!`PDŽ%g WX2v]Q4bG]޵l(!L5&wV0%4g=bhsy"ϮS-L K>ʹQB| <!nUeO["{XK{I݇S5Rմ;zsc cR]b_ْ4?/rw> t)IZ.M:Z3`7^7Zo{7BV@7½fR2!;&}Ir/dnd./~JY vkPE9hI23]}΋v(BzlK]I;w:xE=2RyX׻?QVB|_j#>3F?g4)KF57Xx6/K!KL#+|5%H){h o2$!bT ;: 6 k9_`|JQR;̣/q6`)Ov!h,cQd`HOSf*K+W(jCkz@hI¬/ GKs)#wޕGE}s{'dak:SUX5_d-6۠d]TCJ7vGK-d1+KBۯM"# =\}콝oFH{23D_b!χF(>Q'Verep+9_bG*afmLxM.hB1{x%O|`5̼=v2Jf`[.'[%<dW͞(/$+S5H9B-HMPbI"䰙eB1,h-?\y3n@64mHaHpTOmIs^'&d;TcL,߯QU 4PE9_e\Mrb&NMRl\.&^4VP@<MkĭY|v}onVL"m:2h-0ӽZ2*9tĝ(Q&Y[ǎZC^}*+Fzeߡ~3JzC߹͇7^'K1+9x_PMEx 6Ε{I5}N*#l잔a$%;r})]p*Mr|$Hl5+ pL3= g,9!rj@ q _f $,?oW%Nם91UYשsf3oF ! ]R%9Fzv5 ;HQ-5$z*C4 ̴jZ\0CXtLE|n8zkNc V_\V^ `Spѻ{)g<ڒթXhVCSv?VL|<[F 26 y~lbIF%"PV?1;/nizgi_'ӊ:vb+sJF%TkiGi ʔR?ئ,C |d "Z\}0Ȯ,$sbY J#9=N߀S@7f.Gi4(9TW]ƼKS(󢣺!?E㨡m< aʞl;d!>"㐹n?( y9;XIӧo abD0[ -KVfd2)ZN|UbmH[5u˝Xsa-,"D2Hl,'LZM}}$l7{d]P(ijunlG`w1w[η& ř`@Wd">D]_i$~%ۙӽtZP=VۨD>rVc z,_ M1tJjӀ˯}Lp"n@"YxQQcQo!Ʃ6`s35i2UvV./ՌLe+dq:Ή\rHRSxs]uZ\ɮPJ D+Fs!\r=ǾY;xN3vF##ը6ot^8~/檉7M`UbKDt}mx\V FRW`;&v/J;f?}o{4䥞ԚXØY1 jᆃtq-ΞsOf<2`Fi+[B-2U=WOKK2m>o@ >P^H^ 4*>Y &N-l#h)T)Ԧ`я#[(={l=2ڰLڷP ˾ݭa$[֕6f6z,C B&/4Ygy\gc`{5'9Aww[W] AU)!Nf[J2E=^"Fjg(ƉT%rb%&`qX$zHKd,3K3.f_?s2f ̈́6I#d*tyADBaP*9RɆ]+wX\mH[>sM141 dU97*ΕGJVJWК?dK\:$KqP@be١sA=2ʹkXY"uB2(WS^^=LqR?QMYDw93HF!,gD={h#V`6aHuBXZ+A!`b<vAjcT]8إIۻR- @WSOqhchÒu$f݉qWO犜hFBm &. \T Yɫre x44TⶀIJoߔжBٔf6˽G/køN ogѾFv= i ־Ƚ~jSyTp^?Qaȩ.+[(v1:xL^ KFƘ"JB4 P|y+;hD\her '.FS1\]VyOToG"xe*֌3#男\S>{v2Fҭ/ rkb{O;ps/x9-hMu|؉g[*~篧B V1?g|б!L'crbs*σp>fGϰ*G{3wh>sKn>.`c9 3Tߺb t器_U < LBU%%G|)gJN٪iDf6^UYOUI{GϚ"~'ƖOԛ #ɱN1DgǨqR^O59<&R4Ha3 < R+4߲7=|oBhx. OibÕ=_ދA!~Dg˴_RrqZl+N35'㰪ЇpBjo v;oJ2P.ք;5O5juڅC9?:qVtjjcUf\yB:0FݢSrq3D:rogqwdӀ\k׋Pg2f?{ܰ}>+sx;l\FP#(pE:h5Ҷ~c-'` 2an80ZXo#%D.:te}X \ZN ^> .Wv Bf.ټ 8XJ;Q#F_lM@mu=HR)2{ex{ QTu6D;`ľ -z j X#[G]O)gf&)\ H~Sx@0JnEN3B08/\-/p!y )Ҁ=vQTP'3һ3keas%żY٠@@7BMtxCÁĞSؒwo;-JE2;H{I|ܜfTg!Z*p_TB5pՖ{rl4ҬU+&E3{:V -CRn/o݉Oz8A4O1#4PE$ֻyqz a5'Wn.zndXDj]]׎&kN$3f\`" bXӤc\ػYʅ٠c ?(|{s> P =Mh#x?M8l6\Wcqِ4_-Ӻ%8n h Fs"1A`~v <գtc' H!&$[Az1ro#%;ow9ȊcgN=Q}b@1xYq6EY4r _@J o)ו=6.iu;**(koy^]|N&Y@pkB4įe^_qG /IkķfQ7uzǢ^,R"ΧxcsM})d ~n=$!}%6KzgAn~g&}W8%_7?0}=J53;er`E/)r 1 87ζu.ïTQcݴ"h|MQ%(dYsBɌ,w ؿ 7!Sy?1)l%.7C;k#š~X'N^*fV.$Oz+6X?1ht#oG52viױNu*ZMYU!%nyݿOɫ)rq=v_^%C[)P (Võ!aυt5]}и|O mVEg A| &D ŘS"Yje`@ۛ`.ϙC0u[4ZS=Ͽ^f{ '!,S|TMTc)g^hLMTy ,*OYLcw f ^_-)"'J#ϧV0}n(bHj씏&4H.:2hGnU-y܎@χ9'q+E4NU3UMI)Y+* T4Ӣ<]Rf $ *]k, VVeNSa4! ҄s,+ ?36 \-Qel% ڥ]RZ|II\µ ["VׅA@݌f2CG$Udahiē)-Lwq8ϪG9UY0uj7koKJDžUm]wX c #e КcFi<0+YmOu֓>-~~8A5]͚R<"; ,uGhwnߵV Y2(JNg۷I8k8!E,YXЙ*.Rk֍CBAԨDz?9H4-{\5䥜Y}@>XS#&->v!]L}B`DSS¢Kd~DYXioݚ@$KnÂeHP34]-* }=wk|>]+Bujմ> P%^*K@S`CdfTfޔRչ\̝r*\t@v 8j0ǴzfNHU n]u\J(y0\c^_ D_.S% 5Fb͊+4Hj>I(,e(iou {(tFF5or4~LF {ʱћ=`lG3wx]jqXEB*uBbƧg 'n UԂ^iEgF/5AY=|tmO0\})"_]{dchol;s޳ 0SƐM9y+qHk! hY>#7ig!BQO3}}8ڒJ0DBɆXT ;Teg UXsrٮw&s> )һ]`~8I =¿Qqd tqRd -]sGZ$5q8fp)"gxcBjY,7lSx`l*dy?:%|Sz8|?6p * ɂ聛t3s>2e7h.mF@_ G'U:5.dPX/Ɛ3 HdrXҽ&kxܕեOgp&G1DBtxtE܎܇(?Sќ؜1Doʻn 4)+ pWNA>Wr@4x[S Ґ`kLDٮEQq)\r ;{tw;J_Dt8h>7_wK,HJNk:-nḰYKR>_5"DXlL8:6a٧3hw<Q$n5i't&Uo6Xnn@@yO݉{6\~@ qa튶v ዹlDwJɵYv8 -35)=NoB|}@;nm]m;ٖ#1@7QǕ0x|q5-|N@eXV(SB (v urnqn$ebeɷ7V@+WʠJc{CIr!pt.N D/d+dw]ή;E8/+j&B+""7 fuўTAZo9ϪPakLBp$M6#Ws ʐDrMHofJ$%_T5S4pcJdy4DWi ^WL/PJnޜRW1(ۗwT{ub.1~FKa蘁{+F2*G(xLTw݅k\Z;2˙u6, Cl{Av~rJuhKY(9ΟKH8L2|%dWyPh\0QaQTT, M~bjB}[t_=ثr+u,iB1Nh:O?[h#'eÌ(\GH5ԔZoߴK8?[2(Wws@dEo'F27ZPXK{3Yuɂ|CRLQ(I0[ ʹH2g-eHE"DH,~ig1j sp>sDF2|=xCԘ=,Nlw ^0 ؜{hx<~6/ţ gԇ2b²K{vLf/"pSdb ~L" ʅ lIZa F+( 2 < z5CӻJ"/ѷ~N׍rBN~ 7\VXqq?6\hg‡p"3izh؟ 쥸{;X]@f2-V|ʆؤ4 KݕK~2CXlY H1|Oc$5|7MPH511i\ۛ2j}j$៵+qK5 ;DM<෿ }<(bK?B}-t7e{*)YeEDm:,!n״Y BZɉx!n52oSae1B*zᨏgL'Q(׉xTAMYs0"A{MbЋ[v"'$euX\Z-D}weW2yvQFOW`="DMe<75xeUBEoB=( 'm Q=ىq*u>}-$f_꼺9/E:G$6^|Dg;SџgW}ªa -8N/S//lJV zʟ9DyLUr,}Y.#4qĢM/gߓwIKk#,^+gED>SKPBz!`YCų5-zLA-R“|psKy҃a;<\lh*.*kBJW s=w|mU{xJ 8S_X]G+bU*Ҟ3*!r$ p -L'hH7PnWذaX썺q6"pVkYAFJz0-$eܓa˴Ŏv౓fcn8 iX69(د55X%Ы".VdJ,agN0&N6 =`dPGT"'{[y Ga%>" iaxk:ʓgD_6cWmiKm(M9'ƫyk<ƹRb.+rTt *Et?qR,C[CM ^ż3UGl/漢xsZ;8aБ O)[&w͵ӑ%#Pk9~Ƀ%]& e<2& '8I[!Tfp Tt(DHkFm#zDT7Y"ʩ@GPb1"U56zaSǏ[6:;gy6M[[YR.6<ƫ3䁮"2B WS?x4X4T,xrQ1#&CȔ;꣕C$hx;PX{v{6 f"<˰'944inf@Lf*dnS &iM2 dv>ks]ljMzIyM)C;]0-ot/sa"G׾ qhf-0+m4̆8w@Iș=$CU_^2$G]_oFϊDOE"S5̪6ظVitgcbz".dx_)ξеn@"`aSc wa 7^m>>%$0d׎簛%gUt[ 1v]0 ɶ޸/P+[M44`Gv<~(&KrW.~;'YA(_GwGrD2rI%4ÿҶp W#G:bQdVB?vh-iajpBs\ uatÖ7ۮv#W<&ٷ꧌9EzǧgQ'pI'3@T0JK։ˉyLQ2bŰ7JQ= wϻ@eQ+竲I_G$X1rZ}uJbB,NK w7EW@ZPOC#Y 39JvbzҔpp\lI~60V7AXPQ,Ih;L3s蠥mc sUJQo6ֻp" GҮ216lMDlWuZa{Pᶗ@'bɖF^rc 5$oPM4P ;xm61<A/ ve-4"CZE8D;gCr"( uY mcp[EB.7Yի+[ɽ>q9FS%`%)j1DOG73˅( 45,"FA3W7Rht󃡉*H :? z>*\Q*vәnkeuJS3_U 5}FOD35@P&pˮw r+:y G~='hzg6 VLZ cJc+DQd"@0  }@Ոx5bur#ù[vb_X &UI'h5Y}{f J:V8(yU'j۾Sgva9-?rv pk0W>BωXbksgz>l[b/qӋVc#I^s7.x)۽eOQ?Acvk"wciW:NOݷ"\m8}U:F9R ȅB|f-hSN~xu6G1%1wLPiV ,MrPY% ZmnJq"GmG_; SE<[[AВj(Uݭ|moB7*HT qZ"^5q9>xN</O&0Ak>< )1I'R/Q%5`pxpvμ \6E_T'Gע +zh*(g=5܁Zxdӫ.˳z@gGw5` ),&>'0*U3cyp7l5_*vK*C5xv$1jFRYoho7CzH4pJxo f۲ܑ!^zYHWGep,Yy=m<<sA0y 3QYH>7r0HVszeOU㼽ntDOe֋/涊o*;)r)%vGk+H)p 2c [0o#"ԏ[S6~II>^+mǫ(S,zpF9S1naMNW`{`l'\XbkXqfl%wv[ZvseZoYt(!v['Ŷs*)#92F9[wЅp=Ԑ/|;fjǂĕgp0 _܏jۙU"`lR_~oKi:hf!\TÑzq߁/?NhpB.7kB&oYXUgr4'NŀdsTKEAp`G* *Yg՜8K.q( ~KSA QBZu83/e;{-PL X|r9j'<+ܒ CǤE"ک*v%.kIe&{`TA08Mw$&. $g.iƼ[r^^d4֒)Bs=l:Y:e_ǘfMtP 6nGLa%ƃKi<&gL3W3О̷bx2J扠́(3)|Oµ^Sd"T}q$n!ˬu+.'#:"W5*X=ڌ(HjKeO(ѽ׉^̡^!d?r^κWsrlշt_:o.`΄?Fө0|-+=”Wkz/5k^i=u,9Kw"bAP7%w禗%ic! 4F+7XK8N+ `h=؟|ɉ*b Hő!L׺;q}pPx WD񻃅pS \ S۸֜DCLJq-e^EһsDf% 2b2.E!%]~!hP鱣 yTWiG,4k Y_h7F !xqVWKEjŊF5r?%{[V- hd`N2A\q,K =Ѹ8xf( Y"Vi[?_l1*(D9Gw&^ QT!aB+ AN5sGtQnC'~8M~\ߐlXAhnX5wz]9qa{+jcEIlv|ʁMph3U 6LAbވ24j%z0FBRE$!F8=Vs1oCt nWwFY gr_FG]7_E4&VIA:Tfihtc. ҧ#2ęFo9q-LΩ*Ȩؗj4+֍E@h-mL$(kZl]׾TU:mG'n`Ԓԓ ]"^']:kZmXT-=FjS@rAţ{-gw/ؒRIYp o>]x3/g= 7,tp?QG |‹enPk&C#1~Q;c{A,mi,YM.Xm,fmȎ7r}=oz;loN31sArw<j8%%1ŋѢkVyb]y]-(!5Nv] ~ Ǣt^tS%&ۅZ>Aʹe}G ?o_}jK\Gp>a#wRS83hDEV6CG+LcL]RϗݐɥUsaG` @RQe+wM.@j5 ;?f3: k5 ;`ݰ{2;q2RSi e+wJ>6SjldZk1_^ؿehNX "Ex^˸;:#̵U4ZhᤏsX?'\ η1$膧$PUveF$nqeꄉz­, UZH`iUAl$ӊ)Z;zš)¶㎍ g ;nf&Hr,,ݪY#Hpqk4* Iۯ ,B5raΞFLS?5}ӊX׀QN 4R"!j!-*}V]JP:_y' ~s36,U^7\~l9 /%[N2Tᇍ,Cmt9TߺL#TׄIzҹR[rB4|Xnx M: P^sG &5';1f֯l@dwY..rʪrvδv?>`X;N ;#<Z _zr 0/!ś) ])qLoxw ?V6M2 [QvrSXH#j脖N'03ps)XaVhn$&&ʧQ!.-7_ysY˰rD"vGrp!U% h$Ync>:[< Wd $ R G"H£2e$z]uWBt8x hI Us<E>뭢DrsW.Z9,H]D]#vN B%^+;:U.*^ב"ֱqR[ r"HN$4J?ھ'+3= c͹rbZOxp8鳬IlJ_0iɹy"A2R:`s@h>IdEg+\Ab'9e~p UFePYaYMyL:?}t^#W(1FwX8 F#4VVSwLu Lqz3ӳIECG6?:ad >4kPy$ !;[@@%P(*rmCIbuD:޹ђH 5(w9O.Y˖@FpF>zX@OymU1,(8F|rP_X NGց! 1r2o\hze47kDRfF1C㍦x 2~uoF贐օL~TNhlRڋ^ܞ=RqB"ׯtwqgbeZkrtbq-tr$?dM.(<"Ȼ0`ցpg ~*H|s psnNQg0doSQ/]_3Yd[8ne1١?~K)|ڼ]ʣ Jm jH*`^tzU))F)FnAkXxׇ 01ńZ䲍)]ЈtT܈|5 SHbCV_,1D]rHLhݑT˯Rw%d^u*隍sg]ʲ3)-rwb p3X5+^ 15f]H_T I<5v;NAv'd3-$d],Z92"4؊ՠ8ɺoKa-JTJM8;IU:,/on ϑ{NJ*[#ܖgct4|Hl VIIT"Bc)HdkyI/]}w|Kիt((i$~;$U &N+ 1*,@$ ]I x9t꣊FGcz.pG9j?AG,Xz7GF/Q׃W 6؁C`^_W5(8j?-@e*7>$ EktaO2Ыy2- ^9>a ]Z;fuҩXNf+ %u"~a`K:ڒ% n"*h@\p [mqpw!{OuT@5z,)$ۺ@]Z&,wR=ip $*(x~[r3:c'_ Ygq:%x]B]OKr P\L߃({`Lbз0tK8)m{'m;Ar D];$gW"@{H=sG%3|y\Wd(m Yrg]+u@? 7ߕYº O&'_[Gw7oJ"B @%)['cܳA8_ݏ%"0퍯nV<7 9:8hBCa3i y&pݯ+?kl ]^t,@LJ0Ap Nu*y# &-1 $0lKxixDXXAq(Wƺ &PIL'X˺E)&7]"[Hta|8}ep)7 !ٍzsoL1)+ (ha3r5*@L U̵N_U\n彆'ZG`:}H*39$K[Qdm["ds*ҪAerT~6Ɨ!tQ*ظƴ6x3JJr%RB] ٱ^)v$3q?/XQJQƛJz$qTmJ́O@hlAKr,mjy`nh_FWP aTZ-97,fw Xj؜㕨'ciZUx%=oq[}ͽ;YsKJLk+9 GL5Z6u,-!N2ݼdn&d:!6Eݬ vYEG[ ǀo A] "xw/wvǢZ~/?29牡_dsydzoU HSt0~SF:8Iou 瀻H %Xvbnƣ 'lpLT(-*& 591A/" ~sHe m"7ğױZ\أk1Iep >aVbH˽VK~ }XOMѓ ȿ lӬU,Zx48cqXjӄg\Ik}J2`Bg2` nРin&G+O,aamZ}$A[Na1Cs袋6_TkO Nϟ$>N? p Gi]~<JT~>LT 0Zk/:{=fq;+bnS)<_%9,3W)OCToca$$I- f1"I67;2zOz_>'y-G  OThWU)ޟ_ Wm `zsSfsm>IκgV{Eɣkv/ ٹ&i::X-uAmbƏwh(lVJ@ Ip'Y5 @9TPҁ|-gw?5X;OC_dpmvXFI—'j:V,/R3irFUg5^s|eb,3f(oԾ1YUɯi̦I~:0@e/ݗ9Lnc̢ L A4n76ĨuYeH~=x .zr 2ryiqJ\2?@,q{2am1#`-t5G;ݕ^ĥ&CiH/hS> ՚v-FHXSQ` ]XK;E5q#:dd'9'O҅MV Fw=;|>/ wqZ{ O{ ){/t5`,TX@HAտGZM++dN9Ã)23rAuhIů{aH:1mlof&\UܛO8^"pJykSNc-clr(sK8%l@ٷ򪛄`^)^2f|Ȝ0K_G݈_嘩o:4,%H"4nDp}wy _vXkD*6T6̰ls/|dHwA>+q:~Zɢ U(F2 M-\s3/@3ǁ_~kS 䖿#`N_sm՛ά @>fBwm.9O~e4򂧹>&GC,VV3ׁz2_uW2}/V'bg&YbmA90n>:s*u NlP1uajE 6Cwy~R+R)>qX] 0 ]DQD`)̂<\ݜ;jWF0uλ}b YeBwEPt q/1>h\[ZB bژYcs+!2Y{|](9oK{rfCG'=,EJT=<'?%)36k5J[E.AZOt$Uah8xz[؄w GT[ݷ. hټj%v~mG %Ųi$t89;,P1HpCV;꠿Vmw(+m:pV <04BHW:8²ŕ7Y;}z+gzUZ発^&COb5H"$ D)rTJ @@$`/M"S4D,Z;Nէk*|rH,#~ӿyuqB9 IX6Y׮ G=>hq!E4"țao4ұl(E_g(e=Db(Ȃ4 ,R 3% )0纡F/.c_FxOUC-%>v?>ZjW ^Ό`3F_.75Vrro_ۆoW/,2secy"L&)〺<2$"lb:$-XE|pݚ&[>^*&D |1Q:RM7ok1f>t2\ FdE;d;`)qK6I(6hkRE>nwՋtl]UtNR\")ӝ}ӡ$meL#ӂw['(?FW u7w|6kzS6!LWy֒B\%gWA5E@K0ʃ|x;SbND`˫>Sj:xma/eh_HyL\YC}$7_^XƲ)93raD8^3NӚl644mU1y,{lH`Lݝ t鏤ҷ`nt(ׅI ӛ/wX7e*i~}O XbM{e;PT'3z8ȱU +y7yHb^p OG)vsX)FEΑPIs d]Š1bAnO!-LV `'5ʟv)o}z*_1޷}so;ff)316절Hu~I0ozI&d< |D͹Α96 %eRSM!FZ/՗?_,1}9a<-[lG8^&ezR7×V %Eܕ'DM9۬r r@3.d*C^i~qNErW?:'K]{sh疻#tx`b} *Fh?k6BRO,$%k¨NxU^sjHJRʶ1aZ%?&',)9[oV#cݥfdlGAF0‰Ek)|NWhG0?b} 'S&h9ʌOŠP/1QXInETivynxۮmϪ$DLyWU9Xz l|r`=3 Ae℅`)OFC-Sg<2(CXZrLLSSMy}tjbJo5մԷ; y",: Urhrl:zNQ_QVzgFJU@ldI+44KFuF了AM5aqm΂"6n|dV*-!Y9M?UN{`Ցf :3 FIkFK9\Lŀ%El7pAERfK5T`79[7Oإ؈O7WrU*rDaMQoYV#Cd],=qpʂ𝍌p3F.ʶS:NtF!c3oDdtl-4ChhU}͐9fC.xOz~f~/"^{*1Sdg?%asY8XP1K; ^Rt_תVۉ{j4:߀FZ|Ŷ'}A'%%h[ይi\ #-e<;[r'Z0t&bq2bÍBs68瀨Y_{. eԖBSm:O\=p,EbKų>Q1n#E6 NIGVGޛZ:MP_~tѶb\9G@UC>"c`2^hP:/h_Iu.毒O^6-mGE] d. @Y̻ӱvSFd%[Rs~gŎH 1fྺcJƉGfpЦ ź(n \B _\ޱ@{ ֗&|ՓnZU%% mY`I`ugRW[J﷼`dyIkRm4ʃqjm+=iXJ)mV Rs]_^U.#v҅nbG"VVa"Nv2*x1%IHsKXLH!Z .-UkK022s˾"dt[džx/=Nrd9z@-WeNjng l Wv-MHT=} 6]ˀl N>1UH9&ݶK>w 5 d~C 0VӺߥyR$指:7 q0 ߸2%+2׽,F1^ֽul`52bK$mAؠ|MA=UeYTҗzS&mft,h=e9lj9)$U6Vf:D)5n<H-7i'z#7x@1FɗG,8@ 3 F7Y7QIzF]G.- :N0WֹK+K~0o3(@l7 5b\9TtFM&+{v1 %`]` /VML [Z;s 4MXd00 +SO+iKtqUQP13YEb V-3Ӓ ȅg0o[i!J¢BOg<g@2͊g|dPqN2sJ$Ȼ0A=ࢠv?-Ko~*R[ kFiTUG #A]F8bs.|YJJ\o``?1>7_VLQ7lj95Jv+ƎT!U$.ɰHx[1USGyUblMrK[UKr_)Y^[Ĺi!SdAl>_W(r< +(iv=fap?K9ʫ$j32ZuVNjL{FR\}(L FU`p|w'i\[Gu{~hsh _&^eigʀgNvHs߭:[[OU.p}:q"` _#!MSv\kHMIrTaCI` y jX8l.Tx7<95mj;z7U GVXVvW v#>kν}Ux R/0vYS] h9-=R'EYP9בT^˽_o~EsƳʆ~b&Iv)jvk*X:AR徫|/ov~'ž7rRNu%oBnm{79m,:wd&/.>F27gS`?I /E `RU^)`ENihP0 ! Gy f06ך#\G>nm`+mE`t^|La:~Vj:I9~QȜ% H<^ĸ /:'ܰěW%7d7nH^W}+?NpcTl1-DSj[}gb"R0vn8|jTCOj]9iStF AȆqe`Sڦ>f p?i(T:KK{Ϙa 9Cل J+5T@du8H.Xl%qӚ8}q" UmBbL[~!4Q ?)H$>ߧw̪{ /.֍oQAĔ铝҉]<,)h%Fs0$׵[Ҟ]zi ?HAH'y Z ;_F>C=n6w6C$ìژ.E!Ma4ϸ*G2T1ҒO>6M6]68Ol+'`JdrYCW ?v 3mx:]b;~Uڮ)Ś\ -P5`b|F6)7p=8@뮺.fKKW٥#FP A %܂b_YE$OmKlX'^{i1˰3́tQtFZQ8T֒0?0qhzc^+f+p6 Z=P0XyX7zh#DQ5t"[OX~K8|pk'1xX; jGK8h$ݲ{韀LmSIIa-HPlҞy1.D+Uӕύ= +,[mo>iXU,׌>(|o5f6[LS3B.v!+>6lxt0 ^L Bu oSw(9ݘlkNmܝ[hDsݳޞWԎB٧h], YX=eOӚ7-E$mG~5!b_Lݰ{@׀Q.t9$ J(mi۠E8k"0*4RĢBH̑x@}zvH3jQ*3f`h̒&F|^Ȇ"f7q ` ~k4Tyr|W5j.(MgZ R˲Og!UJ[0Mo|7g7mJ˶| cd*zg"|*(h0gAzoC%l7f0D`RUg'v 'uuF-콣xEG>C(@c 5Pܕ:!]Y5=DZީ=,. j+ . j2eNst0wN'㌶fsq7\ɾ]AȺPV_~QMW9Xyʫ$?؅j 1NǸ 뷛zyc82z0w3.R|MGU~2bdGcgpj1P0_DD&nN~w6HBkJ6'$~WvlbBUft*Ry3$:}0{׵Y>>W9P@|,{/mͦ!v/L.B B>_| EF#md&d1F};`$'ATEB5ڛ& |ڣJ%Njirיm!< zf*#\Ƹ~A؀T4W>ƴs}\<EfՁD-E55c4kXO#ȍ=ls ;6L`M 7-> ǖ 1'I~lM~] \v\fasjK<$U7(ub;T$E2rrEO)3ݦ'a&/^mcT8n m;h<@i /z_Jl-nY@0R$xr<&6|*ƺJ񩠪4/6%oȠ?L`<9fT(9rp,c҇vFAn$1&LKPE=1w+`BWx*awtugVŠTL؏u85kJ1.e @_ (]eF}xulz8/᎔۝Lݕ[= j0yTp8ꖐ 07hG 鶧 LY6z511MgɦpKDDwn@0qEȮJ$kSIBf2O]n^Ce,Eqs"]X]ͧ- u~aN͗gavy:f0@AGpmJ VEm2$㿘>kݱ>"BfR+n,{/jX ᯷=/^Y~#MU|̭˴_@nqD\\dMz`nApʽ5+Iԁ`i`f|%Nby2atp8=M=鞂2gt/(`!<^&}ms[Zv{gr% Z F[ ;B2ʤKPeL}t}c!yzC[t_gvUN@ԍ<, =J쏡kM }%aJ|{+5[_H SCGm1LWϛN22KBgǾwo] |5Ah,n`SEMqkj ޫ LlѽKu8s?,Wt 3 bsQK̴ɤŸJru.KeϯO(Ueӡ y_8KwHX{j(KmhDK9{BxZ~MXtx ǩߍ ;|ZK [”[!<ZAE%XzvwE dnzI_*93N//q7+?_t Zn7mnG,SٕJ%oU'F6!up,#S=g;\ٜXS3+NYm?7|^^ǧeӊԲN|zy {kQ7~brvQ"sw]~vG_Q#'؛G4'͍Ϟb.hbDO2ҋ8@0kF4<2#,mݏB>hކ/SRx@)wo>j.-̕γvզ}ȃ_ JźoZGMsXaԻ3I9w[NT½ ^ɾ掦ˎ/lǬ5iiv,;Ⓠ1,+l BQ,lZNni;dy_APc+˸KP q6;_IJb"{h2 Md=Yw8񑃛cN⊼/ELsA,9]*FG{Frmv>(RB*>6gL;sc$ t)Ŝw}_)#RN0aK+pq$-.#Pʢ2P 4 gUXjh3Jٴ5Eu8P`=y ~,²N#QzM6l, wKU%bo:LQǢB&jWJMqw1 ۀ$2,+ѩM:D|u<61˞Us(gBp@;_y MS\4D~tTR(~3?٨EbʩpJ<]LLA:2ZqxWkxb3pFjH }Ls(@d?UYz\ܵ~x$虳Nƞ׾};؍0xm6)ѓJ-G1+|QmV3n| yFr9`K y 0rxPBaGBk['Fd ADA_jW,ɪO<SN#33 K(;++ GF!]I[=񲂗ZEN.a^(~hض0+/BhZ M$i۝u3/Q/xf JJ6r8{ ˙_z;Xt+mVoSFcMapkh&mO>8\lՍwS߾Ȉa "vےY\D2ęE`?n6zGZl>*טBf#RtG}rD3wshD}Ew{4m.u @d `FGF2.}r#&mcoZg1-Yfz=Fy'U%O>6[\ќMss@ 8H}. w9Ì|T.x Pؘ,o֚jy-PHyL]MD#2_㌝>sMpPOBs~. _Z8EBKtsW,1V%(ҷ9wU_M[I,HV0R"9ǢQ\EPi*~c͊C1Nj!*2UÞ~C+eY &vI.w5,?c*'"Ec+achкYXezxt{9dG;@&~dldI$h sABTtYjD^,ID5|RhL=)?l8ѪԆ9d) fo6϶]EB7CFv|DPhRG,+!e'VuY`+{.ypZZa5+ /ZFRq_GQ6gIGXd^5~wa54h0X]BIsuґDH+\&=u&QkbN8e ]8TL C6/~s_`}##N[J0-jT+4x4.HV.*RR.QԌh[u&m).{ȑ54B+_"aW8<r\B#ھ_@SIyӆ77eM G)9.?Vw>˗U&preK4L%Y3\ѻ>e(woS 4p.wcJ_zc2<~ nEܢb I'3UOvYPg鏚M-j/LV.-Xc(N8 Yu +X"|ݵT:qSMٹUf*w"><0Da7,S2|zꬹWr~mp?}\٦JZ f@RRW,;i`NwBRGľS=]-Ta嫯Fr{-ʏ /E# əfؘu/2A#Y]Nמ0Jg-,r q 39;ךX 07,d(@ěT]F5[u|L0^|7ݰ%v[//,XAvoה'$vC<o`ڐpdJ.K > 8\ZȑԍݶkK~U"{ˀ{q}q1>1L`c `wQߥY_T9AaH*tڋTSHnH=e5AGaCj.=﨟KWG ?z] yVd ė>H0lo Vd.' %Tlv{#-69 Vޛ겒;8J:I f~\r t򍆟bfH+yHNz}dČ./Id:yr^r0dHir B y)7b_fmy:6#3 o֒c Ov'~iB¸g^(AK9xuc%ʅ [bv5Q 1m,-/zrՇWMID?țLyC O$_@Ūb7AnOh5}: Ki;@%cI}4Hq(Н=WT͉4:Is澁ޝ=gx)(2\YՉk3?57`yl#\M&m,_U]MxӕdXwQXGۣB#1pGoF1g~]Uh:qhRg!_5=zWI Ǘ(UzoX]ɨYZ\AVg`ϱ;$Pfq?XE!.vqTȈ8i47Dtkk3G[pj7#WbۍmS..#u1x ) %Jxx UͫTcc=Bp/C J: qD܍k>IWr<eR=ųw( ,Ky&'G3AD< >2"WHbVd&жتȽ.hZb'XP#BCvV'8Ҽ9.=v7( ѓ \N^.A !#Hv3"٩Q/>MAWzUQ[3lWzmRjk  \)X$u#!{ nWِ>[cCy"N U$mVNDXe呧_*_m9 ؉2Zђ΃]Dj2A~.'vnk"OJؼ!~2fc^ql"ᄈ3T $'HHK嘩p;*=[(mXaJQ4;xYǘ)CUvUO|o(LM7KP%9mFަDX~+ipdȾ{AWy !u^Z.ofT< y Ǽ= ٘U}:_\Mem~ڪށb.74H'I4d8a\&,akW>堠f|1/&2{7b \u/9;(;lO3s"=\b5?W83~%RhG^uaxv:l_tB[%F9 @1/Н:AoÚ@zk*a˄[^7׿c5D ߭j"⼬9 8ѤML v,];#7SfDs' uZ9FwHgu|Ơ7ڊq,IX@Moem`U+tp-$Ʉg> 4QqCxu~oR݅MP9].P4?lfAT6A:m݀EV c 5MQN$c%΂cteȔ} Z1r3]1m$ ~,3*mb\{Y* p+@Y5nӁ 0'vjf:WNZإjhDCicsao2il26֏c;C3`{cmA?{iK<;,t$|o4/4ߚ*! ̼`g4tsdh񖘇:8w)×/t1o25gx ĥ̄*jJ?s) tƫ 7|]di7UEٌ,qtN 4j͎b&<M+|ͅ+pU'%4xq ѣ lM\&d |r^-H D̳yo~]M*kn JwJXkVpcv9U'C )p'(,o#ͣF7G1wO% M&ۊURrȗ RNNI m6xgrn|k&PX,;pe ZKXc8Qhqs_xm"lY]ZP)FIҊ薽9/H=Feп &+ 2rG[!̻{ڿ=a4Vd@D{0?'[P^uKvWV(g4 @G) nbdg= a*m~X/mT& 'ؽ6 f4 _' p;~:P~OypJOQ<G'̾o"4}gxU/#. $*/ҿ5ϾWC~G:a[R]ZBLچ{D4'\jx9k;g%$>Rv"7A]Ի2D̠i҈%"}հNRc¢r2v0wx3+p_hHRX&uM){N29cwCz_=P3Ăd'hG::hGk -b\Y/ICPfJWm<@}&ZMrhqעNMF`/V(v*PRٶ ;Y s9 tb:aO#(oMoMfCy*)<<1'M9jtn*uBhBs=v>rU'GaP90U`C̡ɫJ/S{}}K ,ڔhhj{p(cN?d hlKuf⹲/eAoS܃ nZU]i 监~oQ1SBҤ/)9ſ'~쾜Q~+9 YKxmimfF"nB-GXjb`c(9 ]ݏ !ii @|i:z>3~G"kWN|]ƷJ&N82+M6s aemW#hVTV_Em k[³>n0ΨUmM`ڬdg;+8=8:ދMcYPvV *Bh3p(QC!x2r_3ZʩWLIL&Th@$[ ʁ.rC.@|em"b f:4:+S=Ə[VЕijձ>gv%$ jlWrۀy)D͖0Y+LʆY qUbԑC1u~:_qe[,kK͌&/1,ݰ~w@ώBK3_*e$pHfA&f rfM6INL7jmaoQ-9ҽ]֊s5E{aʹt!%nBiVTPc"ImeBPoe#DSAt8.Kh&]E4I_x V?0:mUhN؝!Aį#zq DRa-wZHJf?g Sg/@P%$o: {奁äI6s!ڸ'ܯ; @`snrkzfHp,2"*Nsת0ĩuQ 뫱[jddq73T PM(5ׂa33d%NֽL۫@MgDdޘ~&5Ok(2& !P隍IG< v¶rwvKaI4<V͠Fx`eġ9~|,K _0EKxȂ:K5=-, N >$Ut'?z\5 eC5w~0wvz#{l%^NÔ< %^O湗ۺSvI lal؇)8t)Y\ߙθL]2PY3Pg$܌{7ʐyldg F&1̨ 9 f4G6>-[:{ ]t&H%ق %[zKrw]l[?.oT4\6 2=4m@~E^Q P3׾CqD"0_`-yi%'GEL5<>"u?p7oF\8Z lҒ>[`j՗qB>΃!uCUmܞL[`;wNۨEfۅ~.KkB觔 Ncjq"{9`* Ef^(_VCNPE9F51"jJ"'[H.,("ΘjxQD֩'zlbUҵ0mHC7`[-:o& 3+h(Q GA`:n&Avr)8qˌi}0]M@B("!B*~}OK:[م|VoìVqU[dpTLo8Z JH=t~単ar8$7}~/(uʫ?uJ[00ӻ*vt;Djq𴍨_pYbJ0Y./ϮXcD`1ѣG^B YwCTA.Y8"lN^,),w=,3&&$CSBr#h.;Sj_CqWЛOM,#_(AV_L4V2OƇq˞Wyw [O5N(zyK;4sƨpE>#YO/π# 4̎['ZҀypGO(T'2ÒPO`j\rPlWe Nd=|`FH_1=[p G)R[BS Ā\\똵Q!X^N\ 2.KXOlt5GGJ\Ke`ȱ"Rclۄ g; {8y,M+5xKZp_#FI&n!^˝2'&"pvNDݶb H^DIj &*nVOUawbuu-`SC {D bէ#/ Xg >nZ [ڞD}Ъ}x ]\,gtL"&%88ElI R>H{ML^Ȳ3#ם `8M@(TuQa*F{+rm= d[Bi!c-_8J+ }PI#2ߔ)()Kh)D"0Tֶ[g*X}fȲ3eppSj9,!,81Nnj(RSU ˯b NݚB*(j*R0Do K[E'Vb FJSJ*w܍]ЉThj|)gK{QQeP.ۡ4#T)qG}(BҸFثKh|^?!n`!t_҇.`iZ.ym',&XZ{?$-\M}H: /% c H9oRs iߖ:Pp fom31g`Xc|{_W@-]7oqsg[-P27C|>O L..{ љ~e/q:4NLO_ 502q~XmB6<Ѥ vV3]nw\7@<$A}FRָ/Ҩ'tAnClx/D|!A4,]WzId7 Жij=$]IV6G\+]U+@vbF,Cϐftf zexv,(~ψ00^#w~T rYgq1<_8_Ɇ4o#fBTrGqkSIݕ(KITiZS^9n} ,^?ĥZ}]e5dp/ki_UD)Pl}1KX0X :00=ˌ_c:M`Nh27^o SfWyf21<3b״j߅J=ܚI1(Z<5B-Ȁ8,@wg,O﻽lTߝFo&~+g+֬ @w6>%Cpqc~Z~G6N0m?7ݥ서\J7 x^d~:!u7=ap^0(2"eJ8co(rʼGx꠨Ыʏ_]jcCZJزu.P0>ejtѦ;zŷMiܒ}c|4ʦl0U"ޟê=.dy&qt8ɋT.7M*4?i #+'o9N^|O)hC}ς;8AQT^OȵƇM)ʂ2מDhƿ2Yn-/*d9ܹ39>!/$cs)I-hE~B#? pD<A)gha"Նg5nr3'pId;~[ Åveof; Ɨ96sږIt9&jxJبqq$;옐3 Ɂem/lnN^Ϡ+O%[%WbMM`L0+jr5Hd_Zl9*&4h/Dj d{ AV`>VvicJ,  ?!ȏ,ÿ,0*"4r~/U]5oZ >ko?;+ 9e {[ҠvcDf8_Sь)+GDIdqcN%R >x/"mo Špx{?\bQ]4x .K3) [=,dt"qV.GbRq, K>`^d :x\fLp:ϪCc6ޓDuQN٨|K/o`t },s%LQzJ07A:yE},%7,v#'>J&`t#t p,t_k|kwsCmuoqV-J:#e pm=jeXQM*`_~3?B 6Ɉg5C^^CUgDŽѧ'΁%3w4ýh"!Ӡ.k+n?'Dz{y=$i sF%\6% h" 4s)r,)LfPvh }n[,.{NXgb@ \9QsnUן65Q nZ&s#ǩȱnMadB(^P%ԈNt$t3ڪ' ǜ v4M7%!;%nSqG$nx1 zyfx q$އxƴBL!s4iPiL.q(6VܻRвujM-J/k<%s*VbA=^咻a;>f?a BN s^3S $ >A# _ )>F ] 5p3^Fw_RyP|!apyA>T_6K킬CRr OQhS8⿅}9}E)i; *X ),GTeaAU';GMDVHKJRq7+iN冕$Ķ\NIu=%Kbem5"L=8\&W$|o8FfJ ct%ÏEtW!ffx̽Bce)}Dtb}H=J?wQ6 R%(4@W)RPOlzgv}νk5Z"G*`-\|s,+lc%dC!8a 3ڒ{dEtX<(bjqJa)MxaWἣMi_TpEzrq⻓)O?RLкL&rc'~B` T+[ X"]Wƣ`+ē~S$yoby}]~y׊}᷂Uu?{{;j.`co2?W2rߥM/^b˘(4 1[kC#e@RE(凣Rnۓc,#Bˠ/YT5a$Mw$x@/_ݬaNavl +F\2%Bcpug`=&\_mhrj@+{MsE Cv$ &/&*ԻTՓsa1.{4F >A\ {`i"NV;GO|\;1RPd@LOĺ 0[>)G*5AxQ?maR}&ZE,k6&]s#K} _=oR *㎤~pܗt+E G ZdN^\a>Zs(%Uq|%ҼUZhf(H0kNtUA 61)#,n9" W0z} $ja>ɄL%+$$Fy{}?=sSu-܌BC?mS}"͆%9:^Z r SX0 +] bZ@6fqE2HeB!Ee 2mC.ŹmBx{V[?erpQ6 }vQJ£=[K4Tpڋ+MV$W`Ps;NGߛ߾gV =]݀ *2O{w㝡䥞ܠO),Q`evx1#^GR8?G!~;$` 5K)[6+e'@W4@prg6jss(,ɷ~|@/]5*d f+do$үx.֝P/O_ TfS^H'񳖡nq@Z2ijwV뒼s s̍ w2 ةy.J*q#{w3sq^o OZ`u}/NӻMI3WjC&L:=MXy͟h_N!^53+nZu^ַ׽M<KQSf/5/RG띇+cbŵPGt'% v+ n]-{%=LlgIF&`i1Ջ$$9=IKGw`YF̢OgJkwᚼ⭬,%,Wn,*IQ b!VCmpβZ2ң>[-~B!P s0zv*0Ağg*@b#1޿S0zMQ"D zL3%o@d )5$^ $z._/G(IQGRD'I˰Ka戴q"#)tI(EbU% 5Yż-\]f<yI@b J6 _>Ac,QT5mezDO[Wbݘ ȑ)>hx"\cXlA.K(P™pdz&!^p8WI= ^z;i߁/f ]*dr+Ž*]icSw/XTr]evo/N/: ?~#W9e7E TY?"˝:i:&B=Ga i2LAxοJzX`tjpItx','Ӵ, ϗ wMdm`hQ H-_.﹪]ﶷN3Ӷ Ynz$oM:;""ξ>Cg 0+ֻ#} Xyj<~񴪝3Xy !<2sZ 5v`ʟy]XY舨[9~B[:|HH9y#1^>?\~ϝ\c s#64NKaW'Fo@NO^54aZ)A|N4~cf:=$Yӂ,f݄ODEVi X =T0 ӱ08E`붖`{76s/WNqBuT_9. B>1RPc`jv1jE]BHljcB*X#`HzWʊTx2* =p2O8YV!ĎqYy(:1qEޑ\qFU9C,"ZHmhJ[\OSDY-KC[}A%G-H$_%єgcK>ze%7O;Ԋ/>1j&\ 1KgaD0pc FXxyCDK.SV.@W3~Mc‡):$3oL6fC KP_^]C߮6+]׉he JL30⣜#p 'A[fs<#D2g-4 E1_H6 ?i+N}/ W/ 5YJ(gTlq=7(0)!`,kNM? KUzŭ2;W<;(f EgؗVP!isǰhkc!Í Eƀ8(+Q:CmW8{P>"^T6B\Ҭڠg_Ԣ겍1t`[>T6rFv35Tp}p Ic%H;c{eM0%ъ}AHcM v(5c}=3o`.2sw0WD)WBamR gr,-ǰ ӡٕs`ʯ1Z>xgX@ك`@d!Ew#3qESy A@/H@Z]bޞ=94^J>*ǒK=>E͸Sfs˧`ѿ:?we*OԶv#!L^H;R T#z&/*XKY]@fm-o _M%a=8pJo3k#NãXo$581!,uoT)q_ ;Nq7|\pQ~ \\\=_v9 YQvo6vIiSjN|)}Ж'GS/AԔ)<;#QXX\g˅H>hp,vBIV`ᳰ΄A[yC1э| ) 7B Ͻ)2ep#Roo:"%kllKJ!((T֩ޱHR wֱƣE["5^5n]s|iu.#1|yll=()앯_PىқRGsyz%?AZuH|ͤ?;ssʦDT]$x  /wOCxvsߑyUuVKLTk)iQclo†*v싡FcXJ;W~rcta{d6'wUKl6)Kf$`|k5'+zpr08^Mn K75z)UЃw&NaFL yS߉XE`Pkv"=@YɔD 쩚K|tvSCČ)G%_͊_z[HoO!$@m6vhE_.X>xg_j* X{Cm*Bf, Cq->#ķ;%}#X7f3i&}_$7wi0-O=/:ڽ>jߑ0 g)7zNn}L?:PV\*ILu&K]c[/HUX^pyp!G#Ur ,j񢼯m- qv2"K`<ϥ\7d{Iy!' yPW 9,8Ѻx@W F)귲KHL؅/jľcEWc>hR%VS [FloEc~$]D?n.=qgxb$hTo(YgHGQ\L4f u,JHK/&YS|:NR3  mY2@\w`ݏr \5^@wkQgQwYpuS~V}"9LD9(,vlp.g:?4 /=mJgz+sd9"m%z82bՕ301%.jHId%-ֶSk9i8)FbI*o5?-G$$l,S߷M'$ ИetxCdBl@ف,Pz].rb309IuB&}"p pqa OĒb(y08{*ڭш PkOL-SU($R]+8-hW U\k&@bВ-Gx5:xp}^ V{n@awBrhaEJP. A.VKVUUt?rxD1ݓV9v 1f4IrˤP7FD j^Ŗ83KYqt螴iaTe-LSnD\QJ谹xH@Pou# eY۞}*j)'(Ԇ`. 6W^!vfZ;fN6a1m -Vp t”+Bu*fFEnz!/u#co R]X^m'yY1>A*!Aꊸ-9$9|AlG!e zPN,ޱ̴kzlItC*-٨=՜ٕ%W1E~ 18DyGa![MIsJlǍĤILv lbw/f-h`H5PC*˫wf0v( 4c@bNlB˱cWT;UMXTwv-눈j̡M_7=XזtX}M{meHR1gFw/d=ko۴O@ `2U譐ڟG1V`|syi,p}S7Blxm)t*RE!a@^[6˪fXʆ>ɂm/N]jxdzqx *%B[/Cr ~f8?_ۂFP4\t]y2Y~A񥱁4xPGUF bH}(znhC5Q}Fc%xm&}|JrE_7yU~bA?%X[;HR9}0Nt#lZ~%X3>˅;=۲}D0gܱ 3{OGöB>GV}~/@ݓ(1KosK!l_r%y/Ɓ#v?f]<=݈ @A5:ekR= Sm;gKV5tS2.t(l'cV iހ]6 ~ x5\7ͪ<0 AHHEX"l4βg'ЙD)3>vӸ.2` KN] o#xe7A z+n1b (I|ɓ tGPǦ5?t1qrA_ BUn湂jzkߏ~`Zi0w# GKBz|@z%ҼC͏/WHH@Fkj]Ù8-BIa)tD+@.]vg@/LQSt3[_퇸W } "z,~ (_Hl>ķ!Q,D̞ۂs̃J, Ďzu~CpA3! Vb^洷F|љU%;x,p6Ta(RE 0=LqKϋ1r *oKrJIћmUqR"& .i=fxYɏ>^]]_n Ylv"<#E5@Bh$s cp}@] 0T+ Z$P""(cFySOmG/ Z9w"6Kn\#=Χo{9~vNA?RNfQ$.D#U<)iJ?)I{vz̢;hkq3WOik![cza 2"C:6֮rhV&gfܵkc`\ֿ9|F; w6"p6- K`]YF4 b} b7ޯNE.tH)rƾh76œ1Y{AwꓖYeV3&lBZ4cCQ1%YF^He ]ӝ2w\Y\ 3c'KaZ4FO2.krwKU39YX@[#+Ys%SI򊈚eER}_^B> *7l:XEe/6WFS' W] ə?dwO~.7: -gy4G6Um`%|}|sA9$Hs`螊XD>U86j4o9ACk>NjR\W79.@ujk*jA8ځHf5T8~78HE]NjmTN;9Ua8IE]{W&ܺfwBv4D%D|dO&ѼJza+<|4SuD%oβΗkczh|s T1?Q*xNSu G}-ՓJ'1f^ 0BkС9q,GE⯲8/{bQ}TñjC|C-2ξ4h~Xe썊:鈃¦dA}Z#1r%Y0jҐs prd?~0 S!kXauE̊ Xc,hp8ZPELW,[;]A9NAd@?S?h%\HԟQVN'._H;I@YOR֞dzXH}0vD i D{Xyg]OJ -j/d&t/Wo1Ϯ7mϝ}y6J~}U~-*;yN<c.~|&khc>܈jc3ٽalmSF1=Sh?c|0KGd5ζUھVI?'bKtr}p6u%J'sn~jZ MFv6SIs}Yx&<  6gG /7v\wl--uP_ԕphxrP3/|Õ-[ PYn&5"IF֭ ~j9pcԇ0cL jGO(~"|YJ0nxk,cfa{ubǥءKPt^M5‘S*8'z&ZXDT35pθvIR+("[nwX9!>$Ypk1wA8|/4s˦u=׆%_Nb<n*p8U:ϾvILmvڏB-56Ng$}_YdOBX}_ZCD]w1o2Cʐ/Qϖ쮝l48cƗѨonȘ+&k(iw47pOW{KY*#QgS{ES1~F'H ]]?R5tP]-F-c9T8'x^ϧ,甿#Lya{WJDq9@o q8Ud"ړ|b %9 QE4_,!\)|{qLWl!lAB/+H%[BN34; Cn)|Yxs'KY"2? X@ttW0< RZ0[}3kʨɋVQZ!l3ڦ ڦ:8"9a9pTFK2jd}zllmps!Lwb_}u'Z#s$!Ϣ92UM^sJ:q?,<(;]-r)ump})(`O0Jiwfɯ4"BGC61-Lʧ9Ϝ&`L­aW"P68#Q"Ƴ'Tj5CJ:y@1뽩?׍Yq[!ėʩ:Ofk[8 g.%,qI-g[XB]:<6Fm+zWd10sHNx;'cD{ չ?K\^ՠ((B4=W,ޱGZQ_u@gn~,WL@&(<-NĀ5#%Э נivBq4Y!n)Kn6<`w$f\'v]v8%S(rZ Q}L8roEhzDn9@vݶl6s1+54_Z%?D4JI{㌍lYkhq>pJ\.ڐ497e䍏Y-UIhOg1v'9_Jbh5;[Vdv 5Gz YJj⍪XbBϕ/2{WypNK,\H,SӘ ˕tLJ\TkOi}b/+l{ySN,OW]v,g 'ϰD8#X =;ͰeY4](aųem8IU]Q<[|fmD=MZ+#ɵowvQ\f+ ] $[[:nU4Ҟ/Ad}(SY2Wђq4\*cXB-vx1#k`F ISrvLiQ UL2=@q+tPz%I¤dCql`6J"`uh0bW= 3ƭ=h^Nz=kT;Y!Es^E6Cu9xUCeҞ{S9rL̢5u#tsu5jK#{2o.=rnpE\==S{枸W۹mwxrTy!&&P DD;ۘ][ k #. ̈́\ M+>fv:異e&h:lZ-._݌ܱ:^}E(v;*Y:Q`onxjŪZ&`N0'Ⱦ'`V϶6z+ arL±rPut8V4kfӏBzY E@ƸX>D ǚnj.ZrM^ԯM4c ,қk8:))J2,ʭ.-$.Jy46==VMC(B;gtf뼔Hr܋2EXMhr4"= n7?:zD4iڪ֒&7{ʨݖE_;%dɟY\]_.&b z>RZjm[PX:-v}z2SO3ZZU ay\zVcձ=3c6[hJ}YddY"1,tIQ7tice.%hozpQ^[ce6Cڍc/cŴS ^\4OtnjT 6xrsN=}$w}]kh{PVTU)N8wU !V$d%vgSr/TUE ^Ubz9y=s"8l fllڋBkEI`&7*d; orH^.v~a8a~S҂E}q+ gDJ{a6&Id LrM#WL$}LvH)WЏ9nO-F$ldM/}Rڔgl h $D(4 s=F[K _a'ʀC9'1OxKwXD{Q3{M x|q[Jl!ŬXccy2.θ#m*Hн3@xWGTXG SQ RMqR+{=E'tO4J𥋷ڒ35ן!k[S:"c:%r[у+jnJ0($&Ԍ^ 6~;߫e:<ːJr\z3w>Z bi^;qDm5jX7wۈ/W%6۾-/lC)ugF%xhQ9GgO^zmljt1撍%NƓ/@aˑ$,gp֤$G&H}mZ>'=r&\(7iZ|X qF9.*M;fMl]$uݓ<#Q5W~Mqv@VP,BMS _>ZzЅ9_gX4odNlYdXY?RO%SFπ“W=\ wN^o Pn'^sѤP\:|  @Eh 7`%L.݊ݭbZj%?ڦun[_\tBD?ہbҖMaIAEH?=])$dּj̙St Mjs4Q>?rO9 k?=1cfWWA={-冴Յw zӯ:5/9)M..(| _Qr|(ZM{{S/}KHqᘼL=Dês"|:-|'4Ml5sG)Cbzt0 tóWWj2 #(@_*u(B)++~SHoD"!ZCL>W~|2żhI>D9Kui7%x}B=G֫,<:$ .渷 򵤶zË4HCΠe Mʹ'G;|Np!_\UZݜaIEa>40Л17cG 獁 ^Q)H>P6X7Z 5N N+diø^Q~.#jX{?{b(uHѤO xF̓_%#;~s,upGWzjFs1m݀:w1 4м9xVhtthmҕNa;-7'WW43?,cpaۢe9h0NPLŒyC :ȰߍUck[I* Y |*'G*z|b ru [ XhPG׆@V?FcI'iX;59ZPD_`"{ '&C'..6nK /J̳M=y ]#'eDBrƉvtimS1O X'jPƿPe'/B>UXb V Y;>$>/HD3|f)_b*\5w  C.lxw9922W[mYO,!8.h35c+rk [$OҟxU(|zD7z-z||q{݊@wC2/ #{Q^]ue*^QDvs"a giN*@uu~MȞg:%S](o3ٔ)2{4i%szm7›bs2Ƶδ^|s{/=F\\JA,SH>)"zecIh3\}0Ͽl's 1?:IPc<ѲU[0WjRàYbdIJ#?@ gڜLS@9Ջ,}"+S(O kD 8*QZd0ܦǓþBe/MrtM|my?q+1,'0Mx9_kk@<hd<-n40NUYr <0 _ lYbENdNrb?|-[×9h:f_-]6V:'piQbqNzUr(,h#s|=ViT8Cht)No*1 y;n۪29vH T;s ?֒Lݦv|ä _KR۽ dp\c0#-}lJ7:֠Es&fQkı.&lYU@=`' =5瀰h,'PK u]# r1kW=) *bq9u8R8a.k?!4Vc@mm!{Tfs1.E fauͺ=1+q6AոD뢸D"pQBs9]RnXt`xLyu\6% $? a)X̒g>Z'şSAYv~V։$3 O3MtFS-}*z?MC>C3 Ʊ 5$ TyE W4Fy3?iH9P |d28Gl(32u-:F(UekB҇X-=L D#(({vqjwkv$‰`W'fΝţ5-_oBfS'ExXcx]Ш,A*ϖ3o枉l*TB|rI<0OP4, .jWeCovNG7J"#>Eڠoc`mOzp5=ȝj* uyx5W 'S2r0fY6ɣ\imA @2yr8,߲-GqI8 ,P'uPQw 4-)0ǯMEP!IT yb GJqT.e9ixPGWHtNfpֽF%aG4E`gDHZw@%ڊ(JM~d}Oig'r@rlYa4cԬx;e#HJD{o=)L6-p!wBmaC d)-~O^ f)ٳ[o"h\ kg\eLʒOt~g$̭L5ܱb6{P_M1i9ҿ-& `t9 Fu!d#P^ /}yٳ /C>A\\T6ҍLm; (ЎǝUgG'(ye\S6oLŷƚmTߺ-wr(-Yhi f&| 6yURz:yS*#nn:xGpf $oR u- _e ex2wh 3_^Aj8ݥ;{n|T8f͹ƥbovR?P *jt2dcF_1 Y?&e]AG䜓L>!XshCWwbg- 9JCżN/E!~$y׆z#]xXC8Pa&wweVX~o3dA1GY~vqW>v1ô6ӃqW"t}o4X'Gq@y>}~e}5UT Ȼt'Hx$/Lm*X!:!M( 7X6SL;+5Zuw}kA W#aݩb4 @&VoZrr|ϔw uq gя->/GK'Q8OH5q|C(BMs7GhAFH\^ꅱX?7>y,F˚S# Q$Ѯ8gf d];mHc+vX687ŵ1eG%x[`_뷢6YpyW7C#jRWvnr v̡Ԛù/4@5AP'`2цlS*g&$]L@|+b)%1I񱸶d 9P dL([@fjFX݀Ụas9|߉<ߖ=_ 奋#?V3Uh8zL^` >PG992Q5r~pށz 0Ϊ k(BG㖩>]-,W)/(x7IE,1 5kvȐl7hCFa2nR4˿ՅҎ~Dї7T[PU''谪eT>_𭪣{j{ѸP0pһB *TcWڠ\,?\K!U-#f -|ŶūGŋdJ15FÛC|QmVIZ6|xeJRpfh']Z;tl_ׯI6XҏdAh_rBYhG$ڣ1"iڀ<7D97e sPRIn (V&5%Tqbԟ&"&^<Ba~*V¨"rB>Tb6>`~LNz[I)}I>%O_?H*zɚ)Ls6Qݲ3yOI]ˊkO+\6!wPpoQɢEk _?Aq*cTЫ8@9v* 4LMAOU\ko hSg IrOD9 *yReR `hfr_?.d1>ǚĠ s!S{a&r7ۏk[ƖﺭM{C:SVE)WTn-2,MY[j&9J8|-i?hTq*tp1)DavlH%$W93K>H\i t7C(j ãl4(?2ΆFq? Ξ%81ڊ.TPr(Po&I8%PlQ~%+먡u1VRCC+wN 7BP"@$bhܞwutƤhwS:.xpI<0){ UԽx_s0YB0l ŅM\%]RhENΕf{g^g.=9' ĵ2$(7)Dq!rU߶KW(ѯ'nDz^̛Bjf5]s0$C1V2r-cњKNq>1nwq;}l-jo3>2}SplVL0$0(+ dW)#;-Ɲ hiS٦eq3Cx} MF.ՅYq $HDLdY{)L %:hR=l{P1.Ox!0Ua¦HGlEBֆCD64-JЌ˚j6<v\}ӕJd!'ixܽws6@}5pNZix SZE:H*N`M6g_qu4|\!^0[,)F,M(QU  ~E/Vvw>+?,RTc-b7E]|drnjU؅3NO'>Qs(Nߪx%]@x!.VZn[h?|$iPEgjNKs7Lf-c RrcKKx _%2|mVE/aBoz rX:/ſ1#CCTZO Ý+ !'Wސ<蜇[ $mS;4 Ni [M6NSsHJ KW %:W!}(Ip ^jy\׿^^O%fq 脷&@Y+̈́~ V^Rta2FGjի/B?8O]#mn6oԇLfCu)w*x}ɾ8 PGF5}Ǒ-L9ι wT3cwDT8u v@Sۃq@~bV%: 0= N|# nu"G| OD쥪oc+܅1a"+nr?_Y:[O.zBGeaݿ]B_>_٤c*&ΞQT. *]/ OrťR091XQRH.#S g g^$] p rCʺГ~R TNY'ji1kȷRS*?뵴}<ۥA46Rt9ȹ/b%Y>QX?iS~i?,_enqBzX$m4cyʝ|a]Z*oCk80zCeěfKtMO8.dԥksL"4[5Ɔ?28 d{tIl+ }ZsJPМo G3͏Q E#T(a %;*|k9؞"Pgr$인Ӭ ޮԛ06jFW N_2t#c1kʫs0dQ[=,;6Y@\]U%z? \`s\-v u߷l5|a@_ۑklpF%a.ǣXҢNu@>*/g0g &C2ШFj۱{p$ɯ+N4s_U] *CzΟ wm2kh8FFZ&_IsMv2,%J^pL:W8;@:\wgluDwrDD1bLUܫqOֺ-b7!\dx% Pj7C)>/9w&3k mYwQ(A_]O5T (LotbǍ JM)"p/$7_ϡ~PiB$̂/U7X3 *b~W>'O@/;Ȩ!@|_``٫A IfRڊ%f8XH2/bFkߔ: 8+:?oMeـ1LݜV$,WmUh6Y_|S 1sڧV'ӃN츚_)ك=̇'GoGCHRBeԐVK(!wPo ROCZ}#O'w1An,G:ٝgUpOzߣ+5 g'mYR*kzđ@,, \B vjRTf?&&MB 1y,6?c{gᛜdy6!<^oIo0LË*!BȨV&n6{'=Є րbq3'a5yP3rW#_yW1򩣴d@c9sk To&gz{ E6,# cLY9s +]Ooݹp$=i,l-Hih #$aNAUBᢛ&OM#+!>&j6;&CoZT)D>)׬q|ZUd vKWT\Cr`)G'B~Ե%LMž(EӣjXE~J%wըG#g"oszExT1MX??)͓eR k6O, a u3RIϩ#.{BPzޓ9ڣ2X5FU)Rj^y|xv(H!Q3+G+4;'j!= ? PCwXTWJ.+pꅬj)urXq 2[d ~Lf?JPtyx5C;Z6zr9\p]JrKTn$&U$/WIR8rtBOw益ap2 hm>cm:q/h(m u#^'V'7[Ue(\SUkpR=$.;o0[7)ɥܷh<` 6B2'f BSs2&[?y50GS1X 6d7nq00F~O_l14}_6^A!iDXK?bx5~ji0WB$bܜ\7OX!aib{{s8H^KȥI?7csaW]jh,Kyl5ZOS-NjK Q|;\=Ȅ=z濢½ݲNeao-)ȤZ?)RKXi#=b,"P^,DTפl[47@OyK"ϵuǍ<Ǹ< i:4e8>QU'h\.p5e Iaj"$: ȍXGP.%|qD͞qtEyI`b,Cvz;7)[Z-IJ!9l){P[4Õ#Ў57)!=V8!`m 3'PlRT:IwZK_h3tcw|YM޲EQٕm+6B`a/a?Oш=a^˽<O¨$' w.ӏЭ_͕{Kr̟YsE(觠ԮΓ&I~?(0GD`mQ:Նlh{ʼn9LjDz(}(d2DۅScǹǬ2Y$i~.1a濯 lq*E3qQ G@7edJ`Mf1"\ 8߶_{: c0Wrx;IDrCqv'(:<6<>_X޲95c`F 7P&Ks7Fqx.9+;S膷|ǃ ݈PZ£(SCmUpcC']2ƕ2My";@OgŻv!+uk4$.yԪ3U5CA X^(T Yp`K&7p͹w67_$4hbSٰ1߽?'$tRzfEPζ/=O(p+FM3r]GG *~X48*\5ǁxM ·o.7r.C*qMd `L8YAYߡJO@/k~IfeO*eOaj2ϣ؝ HUQ)s>S(>rLDP` V]-0Nf=>o'8gJĕ 5B-{=O#M, > ڛ:5c `䩟rs뼵͝α# \^ V؎mh_E "ɯp87xV5_ʬ>Kmhd]'CX>yqDU@70ܻ#o.=XRfW-48?վ3TG⩴ObgKR/qʮ`r*̛WjpC9X[7LBɰ)b 3'oA*WA$YV Vo<C?޳Ыr"7zR&]s bvۏwvŋ/o7O,XMw-P2't_@0,7*`B7|Ĭ2hMoVm&dA.w0Ļ*yzU>1y|$po"c~Ǥw8ts6Bh?)")u&vjF\|C*LFBr4VP95*376ʪS7ӏ[r 条kIJ,YE$۾4 >jX'|@N؏ѻT:ay'j̨X"x>9|=~,| :;QԲHR Ľ(n? M +05F2"OrYczVV 6H~-*U7$9|ޚ0>v[ep-D$(9'JL @Ѭ(?&K=S}T2@3X+91@T'k B !d߆Ykw.&QqFΛdJF EXGJBh(ҢoX+uT){gwS OfV[HqyB|/54G);M'Yxfƨ,47\f[#q,UW dc UI b$sӼR]xYU%i+>$)sQ) .>B5)D%W8#{T&ZR#aRrO̻r9ї{J -` (c_m%|z Ő{{ڳ6ƸNKxܭi 3<o 4 (CC3Von:NX̧C`hF 9"sMT,qޥne6uJ?qʭH~DB{^'Tⶰf_̝Wcy)6M SΉI&f /+v8]$$|sWMCC%I(dbp J"ddy'r&Xx27`[*7{(r?Sq̜ ɥ|m4:ꀘ>ZL񤪮:6mήC,%6;Lĸ"5@p]pcS38{˫̈́U\/E2A$3xafs \x?KRuLuTNi+sG6 ]#5h0ê쵙q_}*t69L&T ehP&7ɖP6%B?Dpjo?"Wddޫz]XZy&983)=zRE# '/|0G2EuQ~<&8Xj_Og= .Ez86 If\u,$fvGWFa-Z 9axBm֓O[˝ O` o,F˶f'×ܚwdޥ*"O-Qc% r|OPMm{gZ j rٱh YTa% JkV?W"F.??P %?#uN_\Bgm1ȁJXj<~9dTi$ SB]չȬǤg4*>(R { q1CжcX4v f 8paŵ+݆uZe9awGi\jjr%&cmSPi&_- k]^KD%#- p@c#%8"Ob;S4v0[{z=KiB(`C֖^rqUY t146L!'nGhkuFDK-- 7sR6i2LUb&vÓ*}}\wcXk/Gx ޚU2Qf_޵G#|}`}S!DhY\Ec&dRmF{-"X]ՋxN' 夞s11&Cނ.eʀQ "==l,"߳8tYre(FJ xm'o:z0oKtvݦ"F⺷ Ј@F*p) Cb[K$׽a^XMT3}LEcc1 H.'D=&.'fK+p#=2BdWw@|IU`ԅkmmلJӇҧƤ/  c-Ɵ1q!#tb { Z\;(M _C_p7jذU&Kd0x2$phU]Uq&@[=ôrs+4wI%9SP+>wA\Iy%+8;7d-X ظT +g+-i o Pz7V( XD .8z;P nB>YFac4}iuur\jc^>A,;f!4vv]a2U5&4squ|NMM_[b /fұ*7I?}nb[V%o׏]tT e6-iU=-^Co{x1gٻ̜'/9J5Za)=V*,ArHWko-zʵٝni xXe< <ү=mL9Jע",h!!yWC ^buLdm%G s\cLKDO9q<؃T/6* QKPQen'EkUiWҫR(附x HqN*QM6iY)UJ^ x)N>LD.PR_$NtuRDy{BZIf*B8pw˯x+c%\#3!zt RLJUu#] Q3d η57 &Y$npGHAi?`P;+uw8[|($\ %Ue/IzppF?ӕuB{.2eN.)*hCK YTKzݣ9݀!C,$EBk^1lep.C\Y+6:=/mwPVd}`QN\ .*BJp@Cn"X(=kn拣*3K]֟pqP>fBmf x?i'ݫBP-opGsE|Xh$p4ߙV!VFE2Ji5@}H\GݲcfwQ.Aqwk?*RiCNbdpu$|0zT)ԷjL aw'˂hJ0_IG徭e]"6wza6.;X@ 1WUY\Ki M'f u*MﮡHvQ6`?";๴wX M갤`UBx- <\="0^ ҿJ`?l^,.h[=ڹS;4"={ *] nm俏!~23b^a/gg`6ӧGc]Dh:AFc#l` | &Rۋ7yܯ.^`MMd 0KГ`#}AMhrMmYbgp~Mx]#:k!cPx]0/Xd!6wiѦ^ BRG0h$ Af֦pz &9[E )ցaK.c^Æ&+lB]~Y01˓L!90>RKP%!9`,CK\Ƕ2-לϓ e$q7k3d[Cʽ@@f' KoBzkOZ( B4+ 0.\?+XS&|ՏW29L[8(AL2_yKsj=rL{u ̠A6E F 1`U"7\i}]"> -L^OF@e 6lu?::N8NerBp8a Գ:Dp]^pHBc]l\-[»訹Rv <-_߮v >(zs+go1@^?kc  Bza{Nt=\VQtwo3L7WI QPفSIj_vP7>bEsbEcoxQ#Zê;J:qm4$mTW9zSrTX_QqreV[Gb#t QV =9ui[ؠ}w] (8&l]{o'TB A8\eႡmB,4X00;$I@| eŃ6'Sچon <>`'G+y+e'Y ϠUCݑP#xFoLhMRڣ\gY|"7H(' ({Z\,Q,y]@LVkZzYJPXuCmˠo#Tz{'Nj5!#Uk&[Lֽs?שT O;Ue6)iS^>Өtq cI {L}J'W6qS/6hr9\af P9DMQ4 ^#=ٳ%~'P>0|g!s>!HۍmP0Ű(li=D|NVfqŐ׎#{7^f7J;Q}ꥋ5eZ#h@awd^%H]7+o1<9xh7BNNrPuxW.(R1*|v1x‚1gAWYH-JS]cOk5nquLma_fE(Ⱥ 8KM-g*vv22NW4 {P̘ݙ]e@+mlHRʭy(Cf@y/G?Ȭ5%0]%;Uh8 ՌUӪF\6,wy\yC_ 7w <ۮփ6Ƅ㘊C~d 2Kt̗_eD]^iJ,oc@a䦐} o AH,Pt{qTfw nӰ)b$#e Pt}ɠe5;o{p`5]oA>鿵&VE%cH.'u2r]tϜ!|G&ā*|~jų}03$8!Rӽ;c?VCME&9Qm3;zUOSJfHTR~D|$F,6"p`ޱ>* Q Xt̋Xmxhގ)6ҵi7@i8ҤNg㸅{f-V0<1A*RqΫDH IL#Ϩ}Jj1 T 7XOk.BcAmAg -hz͇ZƝmbL;i ?|"B 4,,O4R4&Pprc+ Vz# cx{8mecYԷd榯 `I8c}Du.⭝ Oɗ75i;"o}DIQ4H|B))ű&=kE|H(3ҁF0r,Gk8K#~Euc%nڎ 7L℈*^QU9HoD©锯/̚Q_5 OC~CV6Z=?-ݾI?\oTM%!͈xl4ߣ8N .^0I|V.DcH (86xU72z>[לʚ13cA=Z_),u31۱"*V/JN|h&#لpyv-@T/mzB 4Wzh E7K̹tst.>(`~Ӝ;M㝌,.#"X+FAͰA/syU;1 &^i@vr Tf#r7=OST6I^l TxbU_(` :Y' -X*Y$dg1S(V_0/̿75,Ɯ 9JO}uvh/[ @@*PSL#5%|+PyoM|#Bz 5_PBs&}ڡS¶4*cst}Dc _"s; O:Cn#sgWwk;X-vr;cW'ɔkl(>r++NKK B$urf[ZCD֐Y6: "*8f3jdN~MR ]gqomm(2>z m$` A_~?DRAE’}G=uךnx"O(,{n"w+I&9Ԓe[-Uy,]5QTi5/$v#'U?JᖦL*8"')[v`)UM~n\ #7:FڇyTְsJThJ?' /$ ntHGH2Y 3"&tM>z:KCzZX+ `hWȜ XY Ur>F3!DɅƌ-_R10. ?ΓF,2gȘP &{mttLJL,Vo%*EdG?!c(Nk],UӀMpT'~~c1jTWlf_0zF;/99uOH\՚A $a༯R)dϷW{E]xG KGrO>bZrk/Muڃr[9 B|v_)E4y蟌y4oS >Uq{z/\ (I*`$ny1ѴDU u|mZwtQD1}s3|YuKU8(nA7UO_,!&9֢=&sr[1mh CPBFgѭƒ G^Sm< ,t܊VJQR#%owa?4{Łr4Z33,Obd;F@;K&U#=p:r+  6z.c[ L򩃵{Ho(r#t>鋄p sAt O¾-"bf)NzT3pt<(8yϡy|xp4X(YۚH"_P ̝+ϖT(qͻC7uݼh=IQVOE?~2m1+/)?N}T U1  A#bk^_ i;]^B5z?"_Ll#>Nv qn[`( ;eO\tcaN &MOw@Ud rO? ue)~<3}S ۸"ܒ]u JYD%1C\8=ʌv m:۝!_ M :ac=̬. 3w1\=zbaLJ5e3"qN2vYλp%5TU Y4] BK](yK{%3/u|z# `6Wly?ub o/'Z\#j6LM8֭}ԔɊrVdEM]W{  YFϚěѣ(C*Y)%(( z~`w]<,<3nŷ,ZYU*e* ,w-`#p 哭9^0&{@ J!d!"">U 2C˪mi ΀F^SA,DBGDhFXdX.8^i- %E+< JMW'nQWu_y-Zg8ҕ6FeE?Tf~\ SJtRLjzqMX7IM*K&*ِs #Q=4Swys\'BbZ< Vh`FkPgr\V"rS q"a$9pS 5ܾ0#Iu B"#2 `Y9`ǰwuЋK/JvY&{jL$gW{/t:g?9E!vϣï̢qiǃq*6Xwt`.sxvW_*/X@f~\<'rnEXwt AF8?-Ûhd3.$b"_n3S帺{"pF@\Iđz$C*;^ߌ5jA/;W,VEN!s5g;G&Dk,la䥏orBiI,MJHWҖҜ :g!Sr&Z]s 23G4Zp鱫Tʙyler,Ţn[!ēOBD+&;(~%qZq)xA!S8* ,VrW lxyTc8:TTѭ7ӘL-*nVb\A>g:lHcgr!Kv{WVfNZKسfc-9gD>I㸮J }c1TGŃKkeh8(P[>Nn' ]F juQdC8.㱜źsVteˮ>\~D& Y;Fma$4/p)jSR5vHjc&A2!8NVWQSrL|vTQ)N&ϤËn;u@fCӪ_nb!^\$* KRn\0ic;s{B-dJfBu+Vy^;䇞'^+yƵ>.WԗzomT8uGq5c:e c&+(-Lo/sʨJbo_ķ*7m=!3L,K|bAIȉlͼCI:܏X}z.)^Ҵ۟ X7%L++eF+2SuiFRq]e(W ?RpIc\LEԬ +_9'灆d#ӎl/饸3H[=VY[k7To{%p`%CkWf$%UvǕR8MD&aơ~z7?㽍熫7g 8Ŕx%kZR9ۂټ$Egg[G}'UGK|%;'?-K"k#5gݲK_|mgF U Ӫ2 )Wou8=53ԧ8(J; 5[_KAάe.KmWN.g=#431ۈ&\6jlz-Qj|?L6vÓdu:[cOoX힧Mj_an]#S$Ʒ$B:W~Y;m6\W"@]rG5;20T_[L4>w';ӌQMksfPg=]73i_Aߵ67 g _]K2qOT؂\FɁ;I2㱺J0dڿ~盦+bBB 9\@+@;x8`b37aˢvܧq7*$>킰9 %ZaK [D4Oof# s⦖+7{}?Œ V6ifِ,6aO(bNg"v9'2uc=BBd°C>]ZHy5~6>/+]2J6኉+T%dMyxDz^*J^TP#vN6aS,S~!p& {"+AFZ[ľ7}V;':ڏ@ȟ磄'8O rrdrl vi\ ˆB^RwT=]9ݣ1>_+ d5f726z Nx>Ѐw hzG'Xv^T6 :Ȩ]BB|.h%&HxM#_;ӴiTU0c#\-[DѿɻwW^=fb8!rG6}c:1p/l6[*iEyó`~u`SB=rc($x4 .'|=WB\oO} N`'%Ns4:F !z؁`(Z=A;"%;.# &O4g됑Ʊ-xsO"Z}JaXZ\ճ#b{kkkuE%&LﳇV<-hohC7aԫaq{Z\AK|~{)AѤ83r05 ~NKV$ RlfG2`榤gMX(=$=I/Ew)O˖!z/J ^#VcQ)0KH a4k 8:ZL-0Tލ ;Ge#;eZ%}w@5wU(|`g{XG]Hx {}XܣW(kb3XBG_F>|-q =Sa{\Xg/ņge21ة&vODQݢHou8=̲&ӨXMTyx{qtRe rzm?;Zy[Zj#/f* }W}AZ^7=pk:]]3O`XeEB 9N+ڐ4STZ]֌C U ?zͬ\v)Rȩz 8mKZ +|{e/|0!uhh\aB<c,ښ@~yeYk Ju%:Z>33wx1Kmbjr=X:jy\[a]dR>T"r +Go{0oD2*1VCfv3d&!=OKc$9 F{vH{md^0WK] wr]BpWnĶ9v lXy$AA +ZDkfҥͼ$o/Z$[RfSN2 2by0ay٩],zWc"aAa+AO`bq IWl$;rK+.ԡsZ)]B٫95xXf^U9PI ?dVcʙ'ضQ X^=jA,UAZU…,31Dtf {I76y"&3ibaP fl:l61} ֟Bɗ*K=&S'v.YkLjX>Xއ0Kd9._3Uz<ws^w2-c=m7X+G)llCUk?X#kdyqHT' sjE<GD}d!4|Qg}h2U6umQj ;ZۍHEN}$>fAɖP4TI@rӔF$jx;p4b墭 BӲ9&+iWl]„\M- E@W`uN)jX$F3lh.JaM<|T=#c׶̅N&t1 sWhhWd1W65=[b¨/jUX liЬ&YͶg[b)tݠYngq?jd;~7R+>};^yQ[A N :pQb";`/bpwEK~Up.3Oip6Ĭ5pY ~$GF'Vݭ؉J! /1`_޺#C|BYn|ߋ?= –N/syQtqK|jцue9R`د\6Ǡ+ml/QC)<۬cم|<Ǥ\a% -Y~4ڕ؁uķI:!v9_NljdN]uwMQ^I`" KRY*]f3 : w1ȃ<^rk^D&Q8D~휳& ?;^_!/]I}P19u dʧn sDC\囥m^QBI$KGilp ֤S!"%)n:+uɧ|hCt4h1!x%y~x.vv npJuS'k_KYE( b!oT3I7- M󗞹_*B}3 =(=N9ի@P4X`O5+`.ϏVXJ{+`KA|U[Leڌ<)8I G0ؾ/w%ɰa9}LdXw hkv{Y&R5NZh 9ө,qOa@Dw1>J> sRjy I7 9sA9j!&k4gZeYO.P]T|%.oϺtcudl@\@_$HF_xd+j-IPASڍ"aS{sx޷tަP6_:|i3nv7$o[z\(Mc+wZ8uF0Ed&KQ\d VXswuZ@}h (#\GX(i0ɨ DTx\5*ҜEݽ?9'If Ƌ Bܛ'] nZOFY Ҟ?.puyo;lu+t i>gUzR\5#8=Az~>^H0Ixn8G0r`9H5ebY԰fVj IT,$_x.+ȜPnlB򠰈`*,UC `tQhl*_n7/<ąPA* 9W)_ @DkȊCoAxa%{4>+C̉+EOzG+Ŷ@h?C n 䉎tAq871jb{KCj 9P0%i@4OHGˏәBe.C2dYIHAF_c|;4^-%UI}7N_ ԥr#Yۼ%rJ GR%4+-O:mKVg,_Q~],B]CUTxng88o][tN1[zji}?(4:uIdجl| v&:ǾϝGL(/W߄m%!D`ր$fA8] n[a\kj;*C?DI 5(I2 Z5+EOJٖzsXmV7՞/R ,['WKwj7sT!W;H.Ch=| MF)^ڲ]/"tM2vѸy!_zZKPvW'_ Z9"xƦҬE!F Ck 59'`}fi*T>4+ΫM̦Թ, z[8_skީ=|Xs=U%##m-zLt&XVhZ*nzKQ<9,)ևavl}fxJW^y>!UAMU'"u= wqq~Ԑ98C3UJNSf90"K3\ 'քV"[rUڲ:3oxQ{IcY ui]>]Ds.}"G2_2+ DṬZ7P^7b OdRwf6+CmPBU ҳjϝ3_Tx P6Ь#GpsiǠk`7A /8ӰbŷRtL>A?&QLzh֑Q_:Qz y I';v1&լxdžWMvcUd|P}gRDT[H1KQq`sZ 0M$K>LDPhLAP"qzvH0 m;,A]W ģ $B#̍4-g:][z3tnR賹$w('ź<#Zx~&-H=wkwmpqoZZ> )زՆ2e+ Gaߏ<@tq-7* )oGyU{/=ٞd7,9Q:t[t> XdѰTf rBծh֦ ivjF4f@II[nUЗFCHu&9]C܏{~54<5-Q# B=j2k%:勴?nin6ZuxkM`e`@'0pm7E'.H[|6)o[͌=izP%&X瀝޹慽Q%g@5f(\}^pyj6OܝXb deX ix$p8\ڹlFY +VgK6`] */K38c~M; 3G.(MS k]Znp]2ρXޟP oג, Z /> '֎V!+sW| nޗ/SRd*4b'0cNϨU1w325)L̚qUiF٥ /9d7z$4e9缞2mи9i"W?vNr'kb61BȦ ac;0MКd] -#ʹV]تUvaE+8Ξ)B:6__(Q/b0\pΔl8Xt{j]zE%W9ADLwY{*# ̩x}G  BR5x6G?v3JD_[(#פ”f~EпRrh7`;aNwfd HWT) }#~K^ Q*SyR_ R ^K_G4Z^tn]Qk%n"C2TU+t1Ǝ `RdIǏ8jOvj'TNU5|a] ;oϒ.*CzHvoU&A%n] տXxaS4l `x<0pf?ho<M^O?219RG8|ma| YeN^-jE:8]'oM`-0(GKFi1JmyIZnvVtz'D4|GwUfN;A"+Αls,L_Kxu-%1q8M"J{LI%=N̋ǑNa^2×oD⨾kh"Syة"LZ'&?l͈UEFT*LO,(4})UtdžD.w(M׽ K(53 fJDrse <(ߩFCP(DŽgwRǥZNJh$w.& ]*QCFo Ģw ÌyQ;7'l]i"5[f}b M_`6{Xa~͈8*d ZCa2}*4 yq3O4Pkঝ=bj9jM25ܴch#'F_=AtCD Wۖ,SiLI D4#W^ + ׾% (#CqHtt a3/GӠ o(gä < ;JgBX*Z]KW c Jׯ!BqD0zS&Oָ#1ZI76Gz`L*jFDF2}j9-N3 ֱG];BㅬE͘Mbo08 &#PYkgm>&%ciCֿks n_'01^ pXp^#_'+9hx K30,ab`'-:qGI}R0L=2gĈ='ئ{`ju](K>>BXi'#V{j}Fq%s O{ZšuBV!,8r`)ǧ|\mݖ*Z.-O nĥA `/ yޕ2틿kzE_ᇧCĎE[iWy.fZٗCߒf4C!H`j`/FWg|x5${B=VbILyUIL&O7A󀭤.cD*ب@#]Ӝ1(tT ]~ }VX"M5&i&21\XSv6 knl339?l4Ug|| RZ%*ANl(5O(=l惠JZ3ÚxIi#8[RZx񮇞5*- ;2H3DS5[)4Ur6:xi [%7sO&UfRN,*]AnXǖϘdiAzEWXfWû@cRuyÕ+e.!mjy66s~).ޢǠ;Sr$'Lp"ġG@ʠ`=AɿN-nI3v8~ N~CᲦAt]4]%E#y#oKW-ta$zEK4=CKZfvsKM|mSUG6=n(VrZt*bm, 7xy`KT?I}WyC(:zhn&Vw?F5r_ Nп?}fU9AFYp_8,îrU\*ioQn9([idcG) ÜJXYQ#z7e8ЏOt3K] &pWPvb4m%L0%d?é5rZ,o"k /ȫa 05\_ )zQ7-W0h~z"GXP{xkbnκ1mLM.cn"]e ݗ.EQۚΑJfggJ^We8L!c|1 L Ihp<<0(M';G(W87 -5|Gɰi)EL|<ќZ(PA~B&߆Ns^4ly3 = H}FiQ4L8,ɂX6ĵZ`ϟksY.vT %۠Ͱ6~I2M m 2x~oiHiytU㒺o^Qm绬-jnc=/89ﳆ[N7|7|sz7i <0{tA[ƴWnmh,)e_1[36ø" c_5Mc)J74{Y+85 -$2Q|_& {T{)Z%y0j#ׂ0 oFg#'eYmt㘦Ki(6CuR°{w졁FX XD O)Roj8³{>©mӱaRp吂:E? C _74+mB!3åF2 `afpB&nhmIwjr+9"k!õjuG#EBAoXH/mR mk?=pvXzf;h$u{,ŝ}sUGGWk!a-Y&Qu՞'n fl] -d B}3^7c>ndZh{8(1~6 L1!S%#,iB}?)@f]sNү TXrP{ gٛQ='!o_wOޓd<}j  ?k;ء3ݑ9@_*$8Or Bzm$ȨNܦ~x״y5m&2~K@p1Ψg%}tWWyv/0A($+?Ξy7!B3-xE)G:|GV]<'D v!:БAd%TXiuxA'6bX ,Wo],nCyf|bO%5M~Ne/ Aѷ֢0S~Sp ud}7 sm0QҙPG%/)nIµ+ɖ$4R?uăPC.WSnbj(O93 ljtM;GWW`XO×}S€?U#(sךG˺hF¢lkcigu!BS5qM55I2lǩF$`P(KybYWLZ'ZՅI yÕEl(Հ@3|y. 0RkS* g5Bj/Ojz-?_3s+/).Qk pjI|Y`7{D)"C"s[J V8Yπq-Ķ@U)`;m.>v_?)R@h,js߉橵 =ա_ǫRPHWƺEIHu-(suh"PXCO (]^ghCRs/qY>J՗/ !ۏxʅ0jisP٥lFam)~o}K.K _}WE__>cpNLqazrC#_ɶ` 柌}. AX Za`HLU_1]H>TV){"L:yŜȬŢ<"- RKe]:jZ{oorXD@ɗ]F ,gU(rA ݶR.gf !W -̟)b}ɀ6aU$uE"5H x^aK^.Lاo[ Qej}amdS–zut5n4EkEt班\xu.Ȟqf]6. ]AsRqEhAzcD?Cp ==dnfc[0"Vi )%{^Hch>ꮇa h:rF9k ;$!f7iJ-l=Grm<^Q6PixT*z͒Do׻ TqP|1\[;ttoU77OEA*:l:$ЛaDlx^%.n[4 Jmm-r+B>ۇT z*w6dIx{(V-Vk@\+T8ۓ&tȒ YxmVb 6yK!#{i?96b gL8Q_m+jh@!W_dmʭcWL+m#PDL䭪'8e1 rU-at#2U>$dU+njO UX3^ȿ-\sUq8;4i(B"샩^>c(թ:FLzH\C.6iqX^1ߛG ТF8q9o>|1##4}lI^B=*i6&s2FDgAoB*^/`p 'W]PTGh&KB, Bg nO_Nv;*I3(8ή k QE瀹ɢe]Kģ`)dbGN;zyD-`s^eZjF2vx^[4B5 t[՟RS+Xޭs:8ZbtRG z;* 'cv"H8%N;wR3z}YW<~G \v׏8f໇_CM)AJA{m|q}jC7#N(-;6ƄU!-b"F/E NǗER!dd=7?3/g߶HذK-0x1 \BքD SǼڳbU-.">,qq7 J6-FC%c- hK/4^:JWW'ȚȮYs \U}xW@1nhyU)}dzZ)C6Lѻ9Thі"ۖ=V{6nD!#l}& DUA'Te`RZ;:> lJ<ީ1X=ʇ [h'HHK&&#:]ԥ9Z#ΐx?H#^hWz!)IВkHg<>>5"~IJ@x*.Wc2\z y2~Xj*"jyC Wu+dZ@xہh܏.)Blݟ5Qjaq!]=,MoC3fm"qE8bUCÉ(<ymZ2=xH}LsSi;s'<׊ˮdlF.a%h}J;>޵]bIJ%W73-+^"L-lԯL)TӀTݒPhm@(FzgIuEo+#RI󹨤ŸL(7 bُ'C0d7.HOVh,=,+h Fyn1ds*Am *#3i +0'O婽|!А2G<~Vq9"Hud.ܻ`&st]g IC7ZqzL?Tur}V#ICŨ<%_6tuYջ:D qea=0A*E~?ES_q`=ɫÈ/|OqUJe5>a(ȶq^O(@H8HvRT\w8U+¢ȁl O))Tqc=Ȏr-~0Y b*-d?阨# D0B:ѓF-.cc~xnF((gŊ"jCމR{Lڜk%}n3g gC 3`s'JVE>=h˓E‰(*Zt̆ wJ&ܰË=[&Tn)k0, d@ 55?$wRfZYFG>C BDD)`yN0.[0^~/zYub۱$%W`LjwtVH^BgUFOƏPm +2(u8{C,|ޛ6zVͩ0{}ζhK@Q' :C7\.S+!P`wqSqtRnT)dWx5S";5V;,u Yw+R>4bAR&=B !bkh 2zr>$.3B~z;Op[8bLGca#x6-ߤÔHO睠S!iH2J7"Mߺ sG< ޿FB>." 9/ )?lWJ:0RrI\  ]ByeH{z` 5XN vhRbMN?<F`BP'vRU[:z^$@7(= 3%Hw?/ɘ<5 |+O~Tѫ+em;e)(NcJgoԮxxFUjJq 0RV^. Ƽ5־~ #&(Gh6\Z{p[瞪]#\'} ;~?wg'| E\'Ͼ,TH4NqEYR\"i<8%H{IVUx?[l< ;RlZpjp{UjA\n!je,c\6XH"S\s~*LRn?d6NC)r"yj:@,›4;5DK1Ph̻ yOdaVwtGQ<\FH1}W0>g8a?_Xt L ~nPD8S651 r8h`W1} dTATz3/kQh5פֿ+'PF|cɘ3& _6X '(j|r"dMx?ɢ}lJt nz?(qx/|d{?bZu$HN~ChuP?_R6^AUD-/] V*:<˓:x[;^)P {g.LJOg4}s1X)[WѨB 4Ve^A *~eϵnVDx??XOxen6zlX4xW8q' 'xy窫^z0ɡ1ˑO-o(?3G|6jF'C䉠nT?f`ok˵xKgdz` ~1b[1FAW-ߴiI5.M\(:%Hm"3W䵦I{rj[W}S~ ((~\a ROaBdk`)}AOw0zGzW y<7rޡy[.bCǗת嚛=P%_]C6PYq:z ~uKDjMx%#q=d#7cj g_p'qǏ`|$8IWv7r>x%7ٽ*m/%Ki| >h*@:̨WC|Pz}3Ÿ݋ZVV223nhoĬrը3d%~V^'Mh:o Yf *.0(Nis%iƒ]_s6NSlIp~O5.ytҋ|3n)~#\9AU9@njt$+BM/Zu̧Sdof1}]5Cـ3ޏG9'[_,Әb@Jj2jwLW.<8#½ #oMGUs+[)Z>74_O-"m&K7ok$q/Գ%ߨ HT:p3m,\]!ՠ"F n+_ٜ%bl91$Ina\"H,~ $du 7 с١6C,h%i T[.?5湺,$hu+K#q|ެ&L,xEk U5d\h`Eqlm:fZƌ>H$XA.Dh?NH*Iͱcb~ W|fB)z"l,tt=W`ϧ.߿yh Nզ;)n#+;񐙤TU^ 74F/Sl^sOYx-2K2]s3JBǕWP 9#2#gd/o=U\Q 譄ҤoBDzHC4lk:+ S<`dx#t߼;7H[ *ȔŨ i=9~3{ :ܣT Y>op'WfYa~cI##lZOp 3 f};1̳8@udR^Do8e{6dH$To}T}J,&p"l_QYv. v^@k+ \:[r }\}N$ e(F(Af{%PN~R$1Q RGv׃1ys9Ƅ+t͠@ถHj  5۽+dc9۸"xǠ ܈FWƄ`My+izh^] jmmBTIUh֢ՉUAjS0<4 [õE[t`hz=p!DZp Rϣ&*8n[q~~tf,0` bH }*aڕO8/escȏ"Һ69 nh &>H; zHB!ÄSzXex )r 4Gq*yt[C+q< L8TF(@ٯe!Z˚Xg @ k)+0Xw1gޙDX9 0.Hnf]@:;+v`Sǚ?j_s"T,S7?L"t# jZ.M.! ض60:3eV`b䈰wΕ汼Ll lnq-M,FCq+ QͫhoBfVFЇ }_JE$힖en5 y';#lm,OCiZlbn;!{2_]դx,/[|  l?9Re ǿ׏!Sm֐aJm\x.9^6 %٪ e1 R~Aӝ>ESl 6~ԈV5 ul.AZ=H^^zv5u+ n7u/.ӥ_GhŸGPòovҸONq :̓Ss:#:nU/wAtFzU!C(&Y)M h5cW 1@y5Fek#W/+5X2(b@ ҒmnԟlvPHN͞z";eXMV>D@<;=Ep#kr^\*k'd8pOw=]3ML쀏`z@kS]%֚ NLCjSV80S{ 'G;GX!-}]vYL|aypdB@&x{_Gb"*=#J"LrSq-AYpx맑RzcP]GN:n {Ǿk&kL a *:>Xu\0iU-&Z/GCGB1>P|RR8B=mR28ֿ3? Y$t C #2[VoUC;}<"^duX3D̨/̮2(Z?Jfx3{o .UMRIHF;K_ ]m_ ͝RD@.op [N FpO5" a%pyY- 9ϲ037'٣/º xW/ZXAٴE[=Én AEX6 1eLQrsYL9Ή&,3U0iĸCz#h*`+D*-*_tb$x\]ɲAtjOcl#+m%,Ceev=n? eVRYeEw{-aN;PbDu #}Vɮ(W穭BN(s,!ΒxF[i!4%7i{E@ kkjƙw(w>^`uLg ^s-] tfrPI?ržۨnz>@3`3ΊO3WVdMœŖ/\vD*ss@? d}pٙϟrS,|ΛE'7F,b{#± jb4/4I`B[{tYiߍȾO¸! t`@BDw:Z[#7 %G:{CI_px&ή~OSt*/ꨵ#8RVyW`4WNxL\mKJTE$__1p߆ ^7WӰsʌZ4deO'[wh 5y2ad4E#4 M(F`'|c(Rp,rYwףx,9^Jgl%6dAQ#lr{<&[I9?njdi@MH+1g~, w9 ؠļ[кS"q;͞oX6bT$Rfݟ Vm$Sƨrm΢NPwv6!%h)H}!m5ďyng[P]c^5AD{*%Of0=D4A5G{ #KO[we uoqZȞlP<1B M~z(_L؇W"5*Fd)> ih;9RρTiBΟ(gx_+a~O_RN**L_N}쿏fzRjX'^)'mϲT9|ڀƠ"{ iihELDse441_IjLsӹǺô+/NH@JIwO>d ̰F' "05 uUE a@[!!VL÷sJ@*n񒤔%)f{{jo1pk2m2vHy7oVyyG ެz濧29OaK $%8DX0ƠbS[ 0u6$ᛖ{$^&vC~ k=zk-9Ao4X=Pnv ~r-GE9R6&' h; A`p*>8 x6>u xbBvkz_SB)r4/#lxڰ3$QVGZ-oE=Z^o 3/\#Y6$_hWEG%H9  E ԛ;F H&̺;yu8AlD )l:+5ftZRI~dy%bJf&e};Ge=̦a8 pn`k0f1;T{ЏŃ" Ku)y i-X6#6c䦔.Ѫm~e:3^hiư1+ltY ?\a?Ǭɘ !y }J+CڥUl,t }5\Qh^4,5Z(lEjөbU pQoR6E)ʦ虿)^00D5_doOa! gjڞEilx#sfے ˂uyFn[Gؼx[Ӓ@2rēt~ YȌ ΑW4(j3S&pwX P=%{ TJr3]h;rH VVntJ 3$ IQ 9 j(!1H ❰nc30#΀&Y]{3{B.5M%FH"#B P}Z4Ҝ/d1S䇘Xd"lsΖUA;EvY*l5'ܲ5Ĺ0f9WIJP;o-> ȁ r+Q'dIE" |=!ˬ^^5#)Nqs:2kD> H1PZo rغ nxn|qM nXG>}Y'n(nYno?Hk'Si ?wqDBYcUoM'aV)a/ҼmZiU ɣm@}0 D @>NnKlQƍ~-Z آfV ELD@<J%^muO/j<>$o 2~OЙ^V@Ey[Bñַ³iDY$:]~Õ a[M+h[bG! 1\;$.Pյ( J>ff j%fgpnC\ެDq"F爆[|=`dW-*XQ:UyvU_Pa6H-[LR8z zrz:o1>-T?\ںs2~:tn)g?RKIW U-7^{t,{w"R/N8D']JMF"P)t]!,ٽI2N1Gc~-xYOp ؈Cg#Y*ImW[FfapѨ"Է8"I>;bdT|7@Wv&i`9^1Y]Fyq~BcYlGX9{Є9nڧ#,ШS*~P;c3%'{GN^vhe:qA?Z8Mbtł3?<uޮ`\Vur)?S@wT\ A!ȑ ~".#0&#=Y%Ht9PGO}_)CKM4hm,y[Wݽs=-DZ7ؓh-Oi9g>n&{D??OC=aǻ4E.`#qD-zVL"5]ypOKqc:6 b%cKN|6ŧ*7FJ}<.Q!@Dv(RR9:]'rzSc%jxH 8Ɉ%ݼY%K Qz_k6q&+ڬ~5.KI q m{Ex^{!mE*4CVR*[\y.?;̢)A>^HnKni{eK`3w a1' S{#$yx9_vWnsڨ=Lw3(Գe]fHz-1R;]oC?y}ߴ X~C![ո>-K$峢>U,`p#Ixůh)M3y>Y~a#[[)21ɨ5SAEzcT (98Dd~\hĒ'=4F(:_m~Sn_Рljh.w0{it'XN| ;ݴ C7H\I`\# bHT.$iim qוsllŌ}~t}G@j`<3hh{$ly֐K Dvu&Zu* xT=[֫65T=Z.uPVNeEؼ 劑.e]'w,ou] x:z/5Z W?FUmjYRv'MúdINORh%#:Ư9;@ s-O| , >)U3jgY ZwbI@s<]s.ք柩~yuݐB^t\:jh15Y_7JR{>rv?{+e*8\ I'b}ɺh|h=22ҝ@Z^`;Q<D3-!JTe!x#KpS0c: 20i2Us51|$Qey5oLC["J(qWNV(9s)%`aPpIc\~#SD!܍G$v/- ęʄgB1 u1ZD?-~L[;?Ҥn1jplB㨟M $}m/S%ui 9bvixZD#ƄZíMeyUsՎ-ŅD׵\@X]jb d []hO4qkYdGsJs)I-^ {=*Pi(HhՔY` ] ,֫0-wآyJ>RB$w͍tRlnS jRrPt/"jtc<>; `!ۦLIX*s=eYp{asŜIb@0or;pǦ#[UrqqcRZ5)(59k7 NT(Z7S\H:Rb/hLu0X-&N;uC%9[٤H3PyI~MAD\:B3M)o^3u8dn b 4ߞf$- ;,m_`]ytE>;pu}AI+ oq5ҽq}bt#=*8gt>%^JJBAޜ f=dxnh{+0A; 㫽!err=r^Y;lKȏ]lĊ|3ŞYto~֏P/t=u&umE.wc+'{kV<)n/҆a^Y[]ћT,c9qz#Q%+A=8CǍŶBtS [B44èNd+|^\Q@=č\*c%!5I=F2Dt#늛rbzԻ|MUpӁ<J1폪TN ے,5>MJ[&|R fe`?(yzph;e[zN1b}.Op>4)XP2DP-OnqTp/E?$_#*Пs1ׅ^DŽ* )E:ϬUۑ4+vsI/9*~^X-oM!8!/UyWӗjʕgYOJ\+`飒L xKZ7`KjboF5Psx]T`bVY+" W?'SRfૠ,]I reesR,_ (Ҧq 2<gW4Oh 1}+¾Al+*%VIY/~>aȖ^mue`*yOst")jdz{KFVՐ6S4Gdi;{A*Xd}&HB aI:`syw\}]KјoL,kOtؖ M }t,YofE@C; 042T]OW/#'쌸ƤVUݱФ,( P@c 7fبF8C &jϝ%Ol@}R1EwC A5!mAj,c@h.TFNF"0^> D"6RDzq>V`aCnkc_1C4qQHuV AMi{%N5XZ< wu%PSGMORu5h%:X0z(2T?KI{Z>2͸Sb@b9~{lOj vL<)5tscRڗhx"'yP<&VTJ%M]q: 8JSE%dwJDٛcc 7[Pe=1Y2~i]E,TNu7@xWtqg0]gtR"[$d *Oon~[AŜYG;-޷B"W'Ẹy8v x Oe-!T>1\?oI@x+yi@oJ$-73}Ͷl[k#=9}U/A/d"x!p q/^>;BWB(UOSLWh^32W "oYR*(zv Zuׇ Y#% Pgh0)}FI7cP= XS+7uz$]pѭ7vDtMe%πʲ}2S3 9QSxq.0dra/╧ u;5H Q/5,KV '!0}$rEyt lƒ&|JQ8 lqU,=_*XY"^naJU x8k׈ 1Nlnx ]j9&JYxtE\);ENI^#|PVɟnIQ} 2nM4#hFE_uԃSqPq`%p/z܀`I2#v쭂*i<"Yj[#1YO[Ni dtIk~~f?F&DtHa%fO=+Fg/ϮſbmkPJX!,Yps՞2QaeE^`W=nxwm@ӾLo-p:mhKhA+~}W%#8>/} z@HTuwz+$}7UF4RLJug=mgLfjŏr[p:Y(vgHg=МfRF +τkL:bVO/tQeܟdƇ嶏UK/| w,D~i_,;\N IU37̅Έi!!cq2S;X\f7=S=WJPt@Qdv9vJxd|2 dp~ݍO&SEhN]PDXaPr+*m{o^#D&޺ @jZlQ<}h xb@O_DtxNzSb7V9' ?Ff8tJB9DQD`wŞF ɾ(Lo! ;;AgoL5}aSy,-%taLbE*w'0/V lV'㑾н:y jxJb Z&CdFzU f-繌gA@Ph\Dz4`9F] Γ[Ր6#,>Ԩms"z#AB XV0r1H_}Dzr 0֟A9y\C!9f\5EWIA-`}'鯐TxE8;=ûExj:LN3ױ0Ot]eTJ[@XHDހDҜ X=!œmL3.ZFz Y-%Y$;G[mٗ'G Qs!40Y"ڪc CݿH+m}v(=6U%CeG\]J 찮)a5O ^ Yl/Ќ`C5jdrУ\ 9&6A[v懏?ӐY8|ܸH[nm^;^~Q! 6B^}؅)%CgJ9:& P&%5B<ͥLLkt@]Hb}vu!땤jHY'KS>;W c-A5P 2 coRzr?WHn]1փuUJS'$z-I Ju'\P@Gy a!"/g:%UCbҾ 7%44͇)Wq2Yj{6A[c3͞fdN:#!]_N[Ws)rX({?g&@\+S2p74zz|&7,9bMv[=W> fʐtR5{wf\`Tb9CWA,KxvoJZ*T17)V! >[VRH~j4U`i |#B(\I(m$"u-%yqxvhk2Fg}W3yzw .CpmVLګ%E8^h8B$ɜb8_ L94K̊n#? ܇K%v=M|~h&I_k~5WlӸ+t&2=G aN3 igg3 5k9UI-mC a.] nR(h;j;6C5˓%D#;oȯd(%&!=a5! ˥CW$ ZŴJmqo -*&us#% b䭖#r3r'yJYd[SCv=|p ҽ錕^ DVz&*^F{YW#j~e+wl/C Vy^MQsTuߞH;B(@qrC?u ӛeyAcfXu >QEdN6r=@67Ĵ PNKW {N$ :"TCքe::zi8CByDr^]{Ϥ:Xr"st kd楥!\#eFSFmElzbPitvNۡśtVHv1trTL&8,h :6v2+&$$ڝLo^ wb<I]O,4i^J;m߸y2}ի/B>!.DS9o8uEYVg웪2Sd)p5 L+4E:Ot#K 3vf5`n9d|y =a9؏wD3cZuur 0ayA3΢\m)k?5shq|n/Uy~%bOv78vO)vS)ef13[Wx:CdgMne&;įƝg cH]4~{fz-as.Bxnw>o&Wí,ba,{"9v?^a6z̾{FRE?`(5VaYLhGmǐȌJ?j$~rnEN,~PDߦ9b3H9!ph6YXw. ;H,lC@_rjؑxUџB*'ӓC?\y;nHVBl>B.jXo3m3|$^0Wd'A: /r($"F,V#riXL͓QY5dxU3'XS^+%wMH"AƵew J̐ǵv(lpƭ'L-\H2ӱf t`ɑ3K/zLpb+OY[uȮ22/E u#*hSZ %jnm ;Vhv%I=+E&_Hmic4u۶5ٵH!2O5DK}h, sx$,aف/-E)Zx_Z&,k4F^N}R(lV5*E!|{P$0/dcOg : .}ӑAh(j X\itd*Ţ"Jp]uꮦǶC噼 ҪF$"n:!V-ъZ3xąP+tH(ٱ$J|5w7M瑶3R~\h|tyHXL09=T7G.9 b'Lbcn7`n>cx  H/yxzY S$ǡ=GbT` ^/|qyDk$=w*:^ߛLrGMQ>;/»bpj>I*yY}zaK6I Ec-ezlҘE}UBwuMڹY^E=g`C0^mհ%Fty^{5헤x&u0flҤCG3kf0sھ1SXXFM)feA3uysud6M=l~UlؒK4BCXp?=Ys [`M xѺs=Y澽s"tm34(KO6ͮL^F^%BPd0b;-t*R,僧'w0brvcV\_9rl =?(&vF4}=)C){h%К"إ:y(S@W6;ȩS3 Bdͫ~\IJq@@{k<@-Q4#U|R6d~xd_~LvV) lHRH3xSŽsyQ[+4"Uef}>mѕԻVY`1R9v,G֡%dj1yp{MhQ[z n [E=M(v$5n9*PC# JQg%C[Vۈ/jR)Bu=TSR5Y'RW;]+b']#uWo> "dɫZzP)먒_;ֱ-66T,C7) | z EJor\]3w*﬉wD1Upi})[=-s|||g4@v47R]U~wnFR`Ʈra' NXe>C"ۄ)=S8w;E #?Y"qe}OH37 ȚwwGaK7~c|zx EBDo$zqt^t55ߤWMK*ɘo|HqAo0vP3t)R 24*t4F\xSwuimӡؓ骏nsi"ny#Q<@X$|Qh'2_<~8 6hXHrcɽovc&SW~sM B,dL(!=1$syl+đgT8HI&TGEZIMb(pJhgwkus8Ajެ#k%RgBlG"q O OZ![3j-u`,^TMD87};P'wTfFR.v.vi^őUT\^:*%q*\YqKO_׶͓VW_YY4$fWF@J3\l@~Imk52> mJ#HXR;AW̜/gໂ"?T^'.U\Ƀ-`W`P\eA#pVSra|PhBnLbcxCQKv1ˇ%ve ~a3{Ρ4Zg^2F۠E~z%#+JQAf.yz/>m";H&J_yc@_Eӗn'ELhn(ASR?RG;6;Y[ݱ> S+6}*I"?ZI.d{ۍWRxSϒQl$LB&g5V{G8i|- <Z?>ʻUX%2e7ޮ8՞g2C2."_ xt!KiƁEH`ԉx^I.mM|u5_I\ FnG]2O|'*;[ʄ\/ܢC'grJ$B샆:-GaNǂR{WxA ]fabwF=Jp8'6OcgqpN8N\aHx_6b}HIy~ #`ߪu[ QPz%qňSP9<ah[ǁ9+HAol\y_2(o `k N)#P/kFe٤ϗ9OMvp`A{kQw3#絃ˠ[ /-~.o^t,޺#bݻ`zucH7@_GT'ꁪIf;E4f TEj.iϛ8Japf5d}:CĬaz=L&qYO1%OU"XX5jyU'_wE5|YJ$O(TTh).wI<`5i{@)NJtKK!YU%9QTi{Ϭm`e è9j' ~?anscgd͔@ZqBPTp^Vr-GH5Yk{Npm>(z ,_cG_SW?`4B5usuw`EOjsSb^A%m+hC?agY&z2f'uO|do0TD2T#~C}^Jdݦ{3FAIH!ohGSv 1;~F*6z ռ̨_fj104_p:TiQF9w@ȓ|֛_qfk\m# Gھ$D|qonzzQ+Q#V3?6I7Ҝ;.mI ~Q{|>Z~2u,]Jط7ramJ=a[=taK'Irh!AZa_Aƍ<PP-Ra kznDz,cmq~a.hz m[Wē(yVƜZ퐖4EW?9Y锂wȸ3p]h2Hg'Ac%'7jv|`VhMB,Qx Ŀh]bQV&hP _{4!)Z^7a Z)r%z>dcRl0m:sњtSU]YyB pm? \7Ugq12̉1̲Ye>S~ڃؒ ±Zax?߳'dFhGtjj9 Gپ\TdJ^gѝ!Y/7eƺW-k1VC)Z׸qp?GuPހ6͏.T1$ J[CǡYC h*[@ꜨYvF ?E5꭫35L9!w4I;jJ &qpC9ؼ`,$X&HRHW#þMY-Tu{V>ױ}Co"pn~||6p3{ rMI&KLO_~>4kQG[&X`z` 8d31aK/kVҤ8x|w$2unA?W+&2^OTmԝB8?˼fSecplVp6|SyU9ޔK(}4q.Ce@ӧ\;Xe8c3 qhI8A($qyD$IWמ[Kg%գ9.%Jx= !`B&pp"lzIHgp%xT3ۥ+|,Ep1WeggQ| nTVyq$84:?oD( =bUA0kͼ󠪦54ə"N\~kLFiC77np%ӀbZVQQ @#_ޓ!4V~WʘH*"7L)z9gv݄k.>lKP^@ |bƒ~yfy`|l異"AcQeG^vCAa&ષr_"V[1j >@8B%f-v)391T}'5'Fc ݬ t%JY1Ij4i$5<_KKfC~Fb-E8c:rG]/o82ьO)ӝ˖Ǽ{g)\y/_ Ac-3IL Z*>9hc%>IKiO{zl4ŏ*UEw:cKQsJ#g@g¢p qzB;DklQaB*1FhYջ~ᖶ0: p?g)FzU):]Ss73nstuxl756P-{?yWԞ6%sʛzNf|'@px0ZMBWӅl.- okENaItqg/˒,ձW4^`\33VZ^Ɉ&ӋY ۖ ˔J*fKCĚ(0tz5N=>k{Tu:m`dtri"|a\PP̟3mCz[r"5Imjq `8E*M:ǝ,R'uR8>BLQ`xTʭY=pHPȪzy5`M6o&_cem0FMKbzG`73Lˀ|uwgZ$jaׄfJ@wj!.UNb&fìJ;K&A}~b*(>TiD|`ODF˜ ꟁ<0L[:>^c1Ofeۺ%K_A!@(ځR$/n_IŘf]^+`!8+'i?oӲm;)oP QA`16pbsPHλ`͙ۃ"t 3^E}f oy`yl %[>՞#)Oԍ=a{ I0`sΨ}<b7C }bef.oJԍECٞSBs`҉{)%kP>4"x7e^H3-kMg+lJ@ՑMșk=xN0&' p ^?1~jgf(2kúj!wQG4ߢ?;퀛{>mu&\.LtUuMpz@ }~%xtsz͑cXn< ȷ ] ˏ63=:<:m_v$J|L2x3;@`z!t!Y h86DR!z֚v x(`BŇB;eJBpr=Aapeo <9}\[}~-w ߺLē:9D T0جW>/aYmpФxh†a0?Dqf՗@ > >Cp5Gau`0hJWN:Pt$2 §f῞0'nknW{8MVz(ʲ؋G2:Z򉴰̟j*@6 }Q_Xk/uRpDbile=b(Hu9 *#7ͧқB.@kR`:kL5+3tCd{jK4 sNzq*]t g4SoHGH"GAQ[T5ipmwN/]uQer<Px l|l+SWu hMS)!tWC+'*xaD5.W|zݚ\ȓtU$\B|Ne5R*МE"Fju0|׮ %wc-9[cj 0b#yU%Yy%EQ8,##6/5a$EɰUAkTY`PS4SHE]ݱb! c9>FsmdceGJJ}7sU0g (ޞy΅{}xTI?˥c;C'f e>b0=<7۠Ĝ BZU_Q*}}zk0(>I؝7dZ<L ս6#%g #t9 3>4ӵW5Ex1߆h)Ycj3d3kmK&rx"v]Xu8| /P~Bi(ٺrDޖGE^r{ք8TFUzƅK,@ƽzaO+$+P6@В^?[)ftfizkQ ޒA-[Žͱ;?Zs@V@!suŹTx)NƷ"EbqX6ǎ=f)`1hJt6,F0@/dV +ȫ#bIL?* !?"Ê9<58 DJ1Z9oo hç~=O¨::Jp:K܄i.>][Pe=|v[@=R`Xؿ \ׄvl6-y My(HI׌:2T%LDwhahkkx`4,hayƓZ,֨`Ir6qȤ~AmnfFY9FQ9DG؎ 3pb!apÙeBcxXԪ G3'UW"tPN~R~}7 Y]J.a/ @X0h:ozP6\7־\af`}}ں@E-Bᷞrrt FI @sÏ5AN ,fQ\Ǧ]ϯs)a>1Fga2:Y7*cq+2q!V90vOM (~oƺCT_lNqW!?%LD)5$4NeFf-ko5L}XBXt9FKVD9 9@UWD_ km7,~O ?v 熛+_oU"M{U|4 3k>WV~! ^abT)_9 'Kqܣ"{vlٿްB[߬v=˗9f.'mZ))H$Cptv0K7U߱Q\VA51$ fRj F$aKZ)PAWwkɏI4Bj0cW2~ĵX>1ed? om<ځOtFt[,<1xz2R ˍNhi^*TFcT^C4'lLIi.ETOXIj3T ӻ耠7]P88t˥7~tvi㉌ujF5pHQf͡1"`ڑ)r=U|[V`(W4_vb֛_T3q3^򔚡%ֹ̋%ŵ\Z+w\, fUZz "\-(h{QdpEQPKIw1и]mFϤɤ;yѶA&G?Zs`6x+B89?w3Uk9nR@ddZ\+-]z6ޯ-?G=fB٤b?Y!81|*'hq#ߞ'C%%yYvJ֔g㥩1<^׆cpC(j̝Ŵ$3kBwy(=;|afX[7OAUPV(PllƂjmqu27V+#C*hU@`z*QIcR처ne$)`lG\~b++b, u Bf'Igm1Z’wK?59SOϣR 8|%-:1'}=v 91+?]Ynz_^k~_ygVj0e`4Iw̯6z\*6NVK1%aڮsoGV:ͣ;3+0une|ٕh5pʓϪE,M4`T*=(0zU=1J) ԋLdsSӊ)^RnʖƍSyF-4ׁ= ­`n%<Ȃ>3w3}m(Q3$H0 AnQNy&сhNIRXlDV-p#CC"|&E+o[^,)0N} l?rG5꯻nA<"/*ip~;J?@+Mc"V %aԠah+<`r h{,ӹQ'g+"I ֩{| 353t2ŦeAqiᾬ_?"UVBB^sXFzM]">^G aH hQ]o!ܳ`uN|?/6wR#*`2r$̊0Bn-=Fe%Ozv܁j.HZ#.AXi3h!y%(L.yKьgJ咔@ӥJ>`2LiPW[f+3rHAG)a>gkD2PĤ~?bB;#Y-g`4<̇X\vL-cO3cxF!LJ.4Ohol}oeJHgmov6i R/V$|#n1O|Z&-] zSԵ7MSapfs41Ho4;&FMHk<-> Kό2χ;js8AX\+SZReVӓb{+lrɼ":sVU$azw$E!7oЭSUf7vf!K xT6 'Ъ~sKv}x"pOղs>y^|2-kLaGY8ŅNU#;B@ V}Ǒ): 5qR Fd+~|,wtOɺ;Z/\DL83|Ey|URw*i?~]MBwO7&> ? v@NFjxJR{SاN]X6켢)IQ So@8]%xm039kLsC)4 | %) ! e 麾 '?X_L&8)٥>61I/NMő+ꤲw-*8_TRfꃈvmu Id@ ?OJ'̩ f>,sӂUH_(,=lU^M9q0g xaQ>^*rf)JxlK_صڗ1gwR#xG ՓKYʦMPE2 \^( [$\[.ZQrz[|ugZ}aTvwKb.n1Bq/\-l~1VHZ%vN:Re]g8bc+C&"Y"X1BѤo`}W(]xvAK4cHt`-3ELFu8PljnU9kƶ]fF+*yh|w~n`2y9FىyT!@l4uE~\ S:=!?oTF:? ;ߛ7~iȩ4*:CMתopB!ʜo!+^@t*2l 6 \0WZ&Y7!{eIH6E]Ħ!$8S`v(zr;:- z-ҩaPC`$;*mmp7h1%/ \`4zZ _2El:k4mCP {JW^%CQ ۀpz%z+(c7}ɜ$pR& *+_2 E宿!>['KH.`~ᖦr eݱ([H[m c̓_pdCg=Yeb O8=9rҹ"QɷtV?`t8 1~'zj_Vv_2s兄ү%T([A麨!krlcWwQ ϔ+ix5<.'|끝` ><w%BŐGذM{Ehu  `v cjS%b,M5iLBb I&~xAByWKœx[Ia;ow '.V*z$,R8Z^Sv;|TCDZ02~ғ׺u SF'@ɤ$]̴k'xT2Z w. 'oYL*:fhK~0Q:wJ2dn({ V\xYgy_!Noˆ{Ǜ=qwki&G561aߊer 3<O֙9q[1ׯZ|pAIс"Tj0K q4<pҨQ`1%'-s3%"Iq洞kR@M; Ԅ_fw/bd!y2²X 7CaT-M ,Kv dJ ?M{kKP5UTt;~!i7J؃'Rȅ]&U ^&55?juMn dp-aA6@A;#a (g]rpo-޹mkx+:mgW#{)ssWk/myJ0f8)`t`rѧ*i?쨟Ï+.m\bkk(cR_u}01ނFXr3Uz?lOc_㨬{oX]}lilZNטM(9ӦUSa׶^aD!^<R7p?rir^2kfv@u+N{bQ8펠}xlt .5=hƅ.ñllҚڸ8h81 0t'\%Ic6sMִ OZS#=ily^tB* Ǧ@ƒU JyM!+zb@Hw0Bu]RDaC%sy9 t #c~0bR-.Z?vQ\zOq@7$uUu<&TD}0F;.7G*Ya0z}Yb e< ~A]5&&)@ )%[)yn=LMѷ9N(Rژi&;{&7ZqܚUjju9fnک#0pRl+RҳUPz٠hBuJߌ%˳ ռ"!&r$*E@QQJBͫ-UOɪPN+{ܰOvwk-4'gؼ˹gH_^.GOQ}"qT!%*heQ]LNj/%` @xRDP͖ 2-fUh)bY+47O_qM0ߢ2Oɺ}V>sMH82V.:gbz죥A\XI=/6S Ф#d.4_S eaE9jJCo5?>EVLŽ8u0 re,N'V\2 ǕΘ'I7vтaé2/>R#*vudG^ex yB=@,k1C|nswsq:]rp-*+bPbBoŸnuswXaŴVYU%8Q ~h['4c ֺd8ԍDĝ SU3 "},ZEG'()8HKּ}0|ǹRD[O 5;OӪu*U,ʞM7,׆> 5[~Ѿҧ%͗duD[-|ӌTX8IEi>,c9XAQ~/ T ƭl|n١D~MT9U$(A$V[.Eb$RTvf tD׃Z>OKuF\,;S r'?m,1:'Sw_ a-VqsMKo@fdHpHϴ9Bn+xIVr-0G?dns?t5xaH-&1Z. LJlKX10/OwQ>ߋ_G I|Aʋ6{Ǐ[m %VQfpѯ{ ׈Q䱐~E#M (E_ Pˁ^* ~Vod;@_ɗdRW;6c{0(oȴ]B"B.zrbqq#G+Qf;jK`e@;MBb"{׍wڱOhTH=|bvLLO ox%ke^L;Pr^IpW*)@O4"RN ω:"_72PrQ@(m%aqreWx/X'Dws ?"IZiZm'p1Qfjb*}dSa @'LmpY1_t:nۑAb`衃 Z @5twvI[DmUzG YaŤ?Pvk(0*MeUD$b~m7i+)Ogw1K pCc _`)Mn] Ev]G ϞF/ BBX!Q|=<&y{7d)&>Ǿ!Ͳ9SNi>*."$Ӥ1 & & aLE&ڠw{g") @JK*嫴`+ɰzA,#O$"UkuT O[U7[e2&\!ǗΖ4N"w='\OVXUyo-4h4S@PFCvR+oA(Y`|̴˯|= %zh-YޱR-4b_]ћWh"Y-Kj&RqRsX(sAb H0|3xhvyZ>S T.mI^Ac//LRv| R 7PBp=v'x+8B~E|_Х{8˻3G"Ö^Aٗ[J[٣f*n Ow9TB|NsȤaNdo&ȊZ`]^-YG6K/]\۹]yJ46t Vi@xwژĐ>APtO9ݎ9EIJkHn(!YjLCaº*aUQAc?)V#L@ 8מ;ཧKw kq )q M* =2kĞWv",*n>O>K-iYsUV mL <(L?:`D^]):E )gKwyٸiZiٗ+i/Zv>ek$U$^,[^/&_brlpox.C]A%TCTU/*A E!c콥$P{:v?Uz.ʶf$me@Z7Qe2!N: ^HM<0@_!@Ibt!BMWɑM_Iˤ/f壴sw2LJ $-ˮ9HjӃmq#M7bό MֿzpL/&N%vw|Nhu7M[tǜ)#bcR$rz#Cޏ->cw5U50Q >Fi=d\xz##kmc^yƷ~n.uϻ;K3/ɋk(l0&"-[3N޿Mpya#v̗d߿"lԿ'RW1x?rY[̷JIzT~7V܀4C>iP;d Jݠ('P gX P cXY$rvpuZUkv X8S`m|_ib9{HƐ@`-5ЮCʮ~ @ kX/ުST8`|Y 6 :^)p!m n')9y>p\4F[B}dOpn(cZ^lN6#SMv]rL\DDniG7;nqҵNa(!*03jAP)J|20d3)ܲT*sZ Oa\O޹HPSJ 59Gj%sLr^WUc9-O k4c.ahDMAgfHV'z?'Uԕ`s2U*W2z._?l>ߋxr$:mHPF36Fp_$ܶެ[QeTEU9 j6DAm GMHٿq_pw?JʷOP>t +O%>%i~|9q$fmt4tEzxYQ6E .k@BjQ*gQ A)#  G㰫Zyѱoc2RnEEVR2''|Hp" ,ywNB RȠܑw(!šzn]A3´fz{~y<;9JU )7[Ot/b{%cGOj]bLՐd9N񌮮9J KHNh04mm'3\^RE>c @&4xh٩C/ԽY.x>JAǰ_c] ÚXa3buw} 90" [2cеaהg&cGvnL]tDb'H3yN #!ԭc&^9h2S7qQgs AGwȚ\=6&X鈜%5ʫثSR1vܦ0`Ʈc։wޣԳ T>' ~JW1|ʂ}Ξ 'Bսe]>)wiQv VTrq" 2?UIvJU\(4f;?ʕ 9W^d,CZqErMH&R7H[ Ae>G)QK(JN,%Bjߵi;:0ߠeȾ8w+,Bo1v*})<7|Ǭ4}p ~䩮+Aj"08[p$Z ,}&gu j] Fw{SŇ}#a!V;X\\yߙ&{LD V䴂*_ Y3™&~+xsPVNizzRd"fdGw'OwH1gH~Sw+|utLƒR^2b%៞)\I.,WࡄiVKzQsfQsMh'+F[m= 93M0^Vb@÷hRF"2]/ TdFx^22emZ*g )v,_<%pBSh~Ou$jMB+ X&YmEi,Ӓ~10Jc5K4n n'iBIAޅZV$S %(%˰X15 fR`P1i*w(+Jd|aeb5Y7F.7ãNc mN MbR.l}۞T[up?"0C;JC#ӕfS&E1'ؒgx8HmSM@ă3}Qsq"٥+ W'I/±[%u iV o(C$=/UArѹ('8㜳~yw8? &ȿ+/Ki[7SJMZk&Qv6лA%bV3}\tWqr5Km^p[3e+ÌB&`>9ֆ"P{݈#@Cru  ٓKz?QT3cW0{0ZV5eUjDLأlT~yL6D}\K  K2ۀsɓ%[U*4;E)e7=R u5e:^^w,U۩Sv ˾PH%>) )819Ut7/DvdTM kkqN6+@Y}Wؿzl:gG4=qDkY!aK\|FxPG\_!wG[.ӈ9cHC}X|hˉ{ra4P`y{gIyh#چW!Wdŷ9:вy#:(Tl@S$U?H%uTĒ+]wBaƶ#ew]-TAWڕUjf2*lf]uDSmnkZnWGnPnM_)J_`H#ELrNjTJY ,MP~L5-v䛀ȢO6x !-wQFJ(@rNN7“{k (&}x}=@CeR2SILRwo$њ7šδDdQm="SM=vfA\y&ZEln~F+Rx~?(*;h^$= {Q@} Dz*׹qE]ްXXqL*\ 43b.8TK䣰tZq*$: ljAyzi"i5AE޳ğmࡆt`AeWV.<>l]stnHciW~=m5^{t;ѿD6,@m/z۲Ӑ5؈l7DPgƞ569v\Ș)NB>z!`}63!93̊#Ŷ&x6vdήb zgDI,^+9,xJI^z俫۹ly#D~'uiaQ.M%/ӆE!'[M cl^"|QT?)qsp5rw<,fP겕'ّEMm rB%&u VĢ pkK^i^W|='ȃX "HYhIm;ENC>ͳsT 0eCvdR$eKXB`:kdߠڌ(Cgd4;ﳪ`Ώ 1H$ KHWVZ5H9@l^J@982=K~@qʹxX6slzWvYD q(b2X#yАLPTTѪA?lrfL,di<ПS-K]z82oŚ1쮱<4X0Wwj!J!\Mj MI%fϛNn{+}&lmXbՉ0`~n}>o2gȮԻMyCo.qΔ3[50ʃD+ּEL4~QuGnW*.+PC,㥈]Zw)ȴ\JHQmJzM"Dٗ` MH?rNp$^7 )zMY1IN.e_Lk]@E1M{z feA$}mI7Q7DW&ܴ >UX |ˉrnOuSeL,\${5*LV!2OH+YouRܜʏOh(=ݳ%dOGB' y 䲄>E $Ń%efJX #jpV<&g{E%3escjm}K1 J֣/:" +){1ĚTI} N&8dx~՚;*{gD8Wà ޫ><(9]Bm-ݦ(D IzKjf=! Metr*$6\,3 º7v˱Jj*kd1V%Oъ:ᅂ.PefDssC˓r-x#э[S2ׯ(muv#n8{5Ռ͈+Y}nW̮nK~OsX{tJrTAns LVUXh6-Cq1Z PS\"0\1 Ō"~0ɮ]Wbᱨϡ G{8]X2 upr~H0dT{klf7$?k$Bsck J[3X)sEE*lA|mN;zz;B#,;]V" <ӥی*o_^myAgj#:ƢZ^y{9N<:926E*K;y<괼yH`V?RºU]A3j5S1-ȏc!7 UeQ0!e|E&є= 4s-sΚS6r}h邅;u{*e%\ >^ki;UHtTpyA ZEUOf)h.Նtl/ ȑ5:wƖK?iN4 mRwnW|*]|灐&3<M~ʄZG9JԐv90MUVSEQS)1fKq!6- aBb c[̻cp.qW)w.B|0uՌ<1rhGYaN65zNTxfAΐ\Oξ@O[qdfto,YӴ;R { Q'c}=.0C:m. yT *&Gp/L~;0ozGN1NmWL΢ )|f~նwg gQ֒gcXtA=.Dl&[AJp W$zo82p)3 lF'~{Ĝ^1-nˮvcOށd~2~, ;f^d@LY`Y/wk(Q5: s*zECR PxK` 5M?ezXVEib֒fvc ^zF$hTZ}®g70S9S9ƶ5\N]-HB1;.uO?Q (eqx aTvE)75޿{hS`˖"-=>EYsMQ+MSIEycqtgeOp"Iowad2FA5g.6H 'PLA/.e*Sx@HJ@X'񴑌EnMOHʛIvh)>HMAMPZF]"˷hWy_WC%9 &27'*]xdhƇ3,B|2gC(MjM55 ,[c]W Xs*ȩE*s~ Zh͌ls\<'LYne|'; {kkd)OU41Fi$",T5*^{m>_^tGOrkg X={*[^xZk0X(VN.cE+RWg)RC͂9r `"/|ws^'03$(eH>P:u/fЖC{s:U/J@,o~2BmYuJxRSt?hV)==Bׁ/}G>Y yˮ=^ E?9"=la+,[Vzm)S~@Z6P0tT n_*&XG\B$kŧpP~bVU_q<+?Y;h!N+L.g-fMj)g;F=@e?/ (5iz c_~t3hptvcaW ca5ng Na: hvP8 vĦ ]ɛl@}ed*@;c[S%*vtY"l0Qi҆mY&,aBK'\v'7_Y?*\i:Jm-E)v"Q ptPV u`Vmg&II*5eGz^fµQxYM(f HWAыr l+rߔ?CSa~>}pY-Qؖ*]6n0KU0B;( HWO}QرIMvXN2[= (NfEr&I6 )\Kg3x;QNǤlۣK◬ jPHAWyl-ʺ:ڌH} \F#|n?VpbZ2"nKQ;*Lu[a۹g a'\ˁ3 ͥk5u#ƒ>ɮ}c}'mnU֞B37_jv+0x z\Q0&u($f!psE,׫H  $J-{/xC9vWq]z 1]&_\ˉ [5;WDp)S R!$8Fh5%|oڄ92|Bގ$@ "C5)Y6">_Dv45tl蹌4=fOcf vzDG3jI6PC-ho . Ք{ߒ/!&,y # H++>wb=a<-S(a"wtrx<7R*. B/-5Cb"$K v{gsI\`ٷ"w}zĹ 3,\lj$^2@upF}ho+x%`>hXnH}fY_wTp ֔ u띻Lq*m$B Cq쌝zzSUH/ %5>FTv{)Ng> c}ύ5\.SI%T뷘26׊HOyId!y?4e[Ss]:azbc }3w۝=`vV,u7UmӸ 4*X4=Ȋ ϊ623BtUy$gnš>(0-Oxܣ{#fГT5T۞.0!l&aY` q\沌=ʈA>(ZN;WEXdMElcĖ \ʀ9bϤ"M-+(`>qfFR[#`MH}鹿g]ì{2Tt|(fq TSkOV/uhAQ!d^G|\Ŏ(#{־A@V4#Ґ.K~AZKQТՎr=F;#1on(iPB¨e"w3F'T6}v+H&$ԨQ|}ܠ $Kɷ6/%3Oa;)&W6G3uwWii;sfԳOb]We3a)j-a$Җyd}2^!6N#_n^Ʊ9 ֨p2-uͭuWX"3ƛ[t.i]uzLf MJlV Ry8doWM?NeO[ *ab &Z开Z'iQH#B!pe=yޏw)wlC, X"RN}Ȃ ]r٢z_T-O{\<Ǡ#*»o3"8z**v"6u4)Eo6 XK! E]n;xϰ ^ QKs fuM:ZO%v?5pX9*%H&xcbVۜ?D̤THQ(tl\o!P/`_ڃJ [n_ 'Xc(9m[CG0 *}@59&.;дֹPW|Ȑ׼5/Px%/^\ 0rG6hF*Bn$YPB&83V rdj`|%!,D S᧫](/51_h_n*yQ9IĆ?ܺ-utsogjdަpH1EXUUǺ8FutPV迈dtp)؎[2^QQVu`)b KT{s@\T s4]aҥ1 :Y\/m;kK@nԊ ?3|XH%̬d $L ^EG . 8DGU(4$5m%iL;N? rv}/.Ѿ=uVAw5`)VZXeB {WB]"bf6γzmy9V#+>E+D(*·>pmy:= \[ `'IgRE $\QNqy&P{HL5Sz>a}6{p&QΘBêfon=)/\?zy{r6Mzh=yOե4d|=2Xb`=>FdS=p t eN idCh &(xnC!ۻꙐ٩<:!UT`vKZ"r[ hRRrG:]?DMNy9%J,2]#6*f.ŭi4odNݠxnYYˠ5Si76nUSޖȃ6A+ѡy#Ü#Tr;NBC?E9L5IvRU]{ԼFrkdtKV ng3HA[ 9#f؄tЧU"i)UF`ʫYi_ő^] nb韸L~~ kPJ]G+zL2U̲V[H?nzO'a\~e3vTnJ&9]>UP;`T[mD̏ZcPfLxZaŹt%'6AFZ!A;>87Z'%EѢ=PT5܊\ĉn3Jl41.`E%`՛((iqaI=> \̠@L0<01sI4o Hɓ~9e} `BFqUCE O*Fs-xGFaR.G9NJ^& Aûw( w4sf4xuO3a^ ;ϛ|G*0fJS^ʌ[4 "ȡ'1#iC%6Bcܽ c̙׌A<鎔.`&Wܤ71‰aT%o%w.˰@}/(^u~G1*bHZ(t}FMѷZe0t]=}3 JVDQ&XYM[wxBj77VȓYO(bz*c o#|f,5oJL^Q|jnUζ-H/1 mc=Q`IM( ҉CMߋe;-@{@]&,5aN,8+w2R#G[' )?֪b:TgOn(Vsz;6xLjb=oAhukxO1g"OgS W<Hu#qVȌ.a L Bh?ق?!-NSt2+Yw8pI]'ŲJ5/'!`ɬdrc&g]*ξ87~Dm1q?C#@jPZR5GI:uuO%2~Yy}WM8r3uok@d Tt^R#I/OסUvn1u},(J, x~Ǚs$ћ)sh=﹢hp0\2!Qs,ovWA`|ǗPn SQACČjO~Oʛ+I&**GSEk5bu)Y.wW1yJxxDĜȹ.&iXbJ8 {=}bHWgB!-hlƟEP@@hFAAX"w3eșHR ]CUtgQ=X|yPdi">57H8tyDde=t*O\4\{+㣦9%mH,s`'P`)P;.HG 3y9CX"qdACvpiwA8hׯBmD=Fؿ bq TSR\t[?@u'KhP55o۝01;v?L6gڔ3 3;1^ df\mc~_7Sfemi;v/I9ߺS⚋lh)~ecX PBDm:f@hKNnuJct|c|K>Z ain`[ x&OOTSb '۸lI' l߰v4;d/1d'xmdT=sW .fDJo >U?|d˫Qazbn;y:k4t> tN*_|2r斱?$zwl0v jntCzv8ΔSTSi?4%7kz#|b_= Mo\Y(*«9LC_0w+ao{/`UwV p'I%cRH#Y NQbvdr6P;f(0@߇0NH!p <[1;SL2/IaDUgaI_r;hf %d@ |uZF+Wؗ[ثa7>R,a`D Z^uu:y9]Qߍݸ*1Zlhؓc@2c'gofFIPp)#R7>w~FaYiӣu7 m`>Z iv/҃wIҒN򾳉wg8S*)}JBa* 8q oT&E~4aWbS hΨnUi8`Dsܽ jسy- *q:կ33SL(> $? &dPu+ɠR &b6ati{i'¢Kq21FD)ڏ7n+P5DMjBgqL~ RZbh-=_ŒpjF;)^raC͹e]:rxÃzaqNn{$nPp%U8 daNmÀ gx'g=3ܡwHUCQAz6 GȠ`%73G_ (&ԫ ljpc ,W?yɠGWi ~ mcwJS?\X4n\/5<ڿ:.;@&d`:֤C)GOlV<\QHJ_;74IV`- C7^dtp1m䱎.%xM,0[ Z [;",.8 3滞 :cףC0]mO,9DEdj1s--fXeKDo_8߄1W*B{^:Ϻɱ`oZBZ~tW[񯱎i6u铌/8|;L!x=s@#^V}%tc6 " ^O7b??f۱e# CGi+I]5$̖XDOa=2욑]( '%{ƜoEOv!:u ̓h]t?(2j y،(4"BF-$"$ (E7k۞W) Bis '霦5-"]\s)W;3)tZ\_;f<4R-</bSk2UB!G BJmWNƉ݊XCx]N쿴aqhH$zXw>M#,W&BF]-dݝ]LK- +?-t(jtb HAʯaA^G*u&ȟ ~TERsXn[V9DhL`S丽g6S-3}nQJ&հwbHW x(^'07["a=2`x˭7zxϊ-D{NWo/}kilo/omEsYxF ,?o%/U [&2$ Ϲ3(2`w-t"#ޤh h_dU/8$ʃ>ygd"YXoXxVά|OMǦՌEa ~FsIx<N*umGqn(Zi8x$N̹m}B+gWC#){/,4E-35Z*w|sFM{;-Q h|;q9y#C'psd5$vS%Pu&2aELq P9ϴAmP\y,9Ljx2nyuAqouYj%^ ;|| G&T` y s圩]@F}4RG0tJvf/mpN?J@Be$'lαJ3p&.*1ls !$^1ťFn{1urW76eqf$IR﹵d$yhZ'  3Ƃ M ®)Ȼb䤎I4^:{׾}N%PVD>'I+l~Xe&c ,1ZWY:&(ʕkP@&WVï3_O}F# x H/ +fFv& KW8kn9VnYL66m]ڼM+KcW A]-ӓR yڗ,y%t g z r2~`R;{wˮótְ FAx%˦l(?[]w4¬|`bI`" 0H>K2KǀEQQ6V>O`JRfvlTVXi/ͫ~W "kK518b,ڝG &Cq vǔ`$#%uTrEcn+_HKb}a[֔wl{',~zldnԣo3w]ci5E MĵMPϏ!ey ʱ`:3 WuQ,)= Ό4M^ƷwcW0y({T{_ڷz$܎/ʃʙ,ڴf{~ʭ(If箓k&~f~²ZL Ӑ]@ ^!!8P\6 2J8P }QӦIN`٫לRU/;0p*›;9U(Zs-\S W5>),p/Mjo) cg.u>=? h"XYA}tLIs-p;&9~5ut`MlX,"e^MdZֳVd)c(ǐ.Gwkq6\dp{9m-l2N/aìh=nSXfRAzQ"wsQD )+=gT[ʴ;ۨZIxyDS$.o_31&y9Gye /Y+ -+vG>'5+~#&ڝ-lGR;g<{Vp YBlZ`~R\=ޒX?$6 O{Z70}NwtpZH5j4T!߲wL=en8Ď$%abՄ=rM#f_W+b}j)|Ǭc$#G◖Aё >8" 6x>E\ tjv-AD~W#=c~u1*5>c R_eΖҠtqq]>0 X5lRDT'Dџ'|m}1 ~ #1Hl3>'I 5kg _hȔJ^ld4F.?>{RKp\gի&UC\[B.W9B4Ot꬏jx{C~ybwp Fw.*,1w\A!g*oᇭTO1>Tr; r,hEʠU^Yo!Lj5i Y4OA´aUr=kNX$L`>WFmf 4!=>CX-W0PqProM FZ!n3&Dʄ<1Fx;G+Npb"϶5qzDPp/k_S"hԻZ ȮIJsS#қVW{ɶhp72jTُ ,'Ao߬Ifg QF݀f< 2eK&澙P.5ݡڂPٔOxZB!e Fs>ә <ڕl&pl=f M #ɾ2K7 +6!cmNy'ݥ;x/v$|([F٘XQ^<\JñpAM ^+f>+4e<A铈G"Nd\ܪNgHϢbi,߾]ד#uuuscoD^5O@oUG8.֟K;pQu8R`k҃Ա6V*:?*\MޫyJ>;NI"{>m@S5`0[ r)jy1?M?''51J1}h,sbuK]1 o[jӱnRs*5/Hdʈ \T?Ff3{|aUV)U~hpTͶ ڑ=h>rAvC{9UOB/W+R{;Iު^F$92,N9gߧ-i@2%M6`Q5]vN`a D ? Xd,fͅt\Cg YQ49\\֐4է#@9ae^g|=NEf }Y^Rx&A~ ]5+%%uRHY]ʚ~+c]:{T%As_6+@cF+& /ynE#ڒ;8gAxuD87r;J*+@`ʫڨFW齠0=5tGFj+e[vդ` Pd/DWI>7|>=tzb_$ܑvǽ ; O E*ejtF銵FBuj%Fz5[Te$x(H%7.O.öĹjCweoRo>2J+A@?l-3F8@x|f bç;frôp83Pa{NH$|hZ z6Y(#Z X見rMY8g '*P-3"]~Tso +hCb@zHch xG4'jR ̠<)PKGn7rjhO`sy8*/ߛņqelYuzaGhxŘs \ϏyHI[ Xb:3Hlx0Ay/KBxǏI&~VGkjJqiA+r6,j*S2nDP(2 NݮFMqC..ˉ6$hć׌` x.ӥRwJv n-e`*wȯq@Glun{ɩ^ߡr”1lBZ!3Op6[ؓs#d {_]:ťiu6V |vN^0k?m2Ѧ.oks'WVޕ늤SDrv2-Dxϸ2?*r?2<[a#qwD1 ťh{w>r`*3{;3g8C(!lln$rKT4g"J:dml%_8̝?M,v=ZﮕS1omT & ,`@$ JEtȁPEWtYR0:vl9C7\~H^W1Č.MfAF^)*lE/9ım1Գ "s+>?zԨq/H<^6[^." -5>X,(>F6?= &!!6Nbwq)mмOw 9UvY~zp'=3-r:̎ vI{z"B|7Rp) g?Vka PpY7p ;p룦-*+dm E:ZS ԯ4D)#mP1nmu֤aY<&$`9ĊVv6ۂ~lrn 2.=ϕ6y| ~5,A1ЮZ><\1z1"B5nõ6F5(5vӬ!5m$$nK,$Yػ+!/v<0ߣyh+w0 gIwO=>9QJx1a~6(Jf|g^T|Wi,nJwl:?YOe $opAH6YxQjUD ^3FyhZeJ9KŔ< cͤ P\gzXF{i@Ib]gN!n4yb})Pzq6iJ W '8 aUo%!AhI`3Q5,qxB[DX,NۧRbL kx2\ޟ\'&hHY'/~ል-8C4SUW/ZUaE~~TAZI.zDpt;'FυJAaŇ %8A2SR=Tg`4X"Ch|IF/ g v,Nn1NBdoWKRUxja[&uZhK?s ;<0|e`Jq$x`sM^Y3+Ma)Jbf%ɦc@"a H9dU[`##7rwMM Inر8<?}%Fħ"X3ܑ2  uS\S~Ȑƫyk|[e'21=l3VnE]6]RG[O83Nh륭myscyA_:DQkُ$e+lJtK=>g@.;%9}cCS (mX&#;@!DuuJ%H6XNq{f\wihD=<#'&P@61NY^w|2Z# wQd1[];lxR.ϫ 0_+P4u } ް`Eb#"s\ (((yc2gm4'T0}K?' (R"bͭ Z_2}ИH+U-LrE5yu1ڞ.l8+N.uˈo(J: Z1.*e{+oe;<[D5w@#k&hˇNẖ dv_X":.}ވor&'K+`f+ѾWrV˱zrBfS&&u3gnղgJ#}/K)COTx6Y)Ÿ^ QL힩'MS* (Ҽr ߗW]ZI :\nx7b[H&_IN]}Ъ7 UVVFvdyk~wψ[簚~ȶKQ} ~f ^ A:D6fHKE\$ R> Q 3NX^"~ FZ(֒6_Eר褁z0ʯzSJ4DŽ3:O׹dp;;wɬ`am6L]Ypz9BQ蟚Ǘe6)Ċ,i|@ Wf@=Pۉ(NJ)%/o a)[CܗŸ;qds?,bk[To{ ӿ~Z]t '^1^*Ŵ?QϒGMSAC0g' iׂnٻ$Ь[4li!n% n9E?G-ne0H#!ZRWѻ'9x~{Wo.dT`-NN};W~Y(NI{=瀐3m:q K"d۴[и\ܜUtBRt~Di$FBUfŽq6ȅwIW1*W&' urhq 1?|{ J 3-UVHJ`Y vk̛6z`7C1:v|{ү#I6"3r0`gZ`жkNh2RQGK_'Cޗ?[¼&ols<搑fsi"%V gGRZe14Lɢ%S>Ԏ&K@)(0lÉ *x0}(#Q.^vFAhy i,%ZG*ƨjݹց"\W|->27m WԴK6Ƣ6}nv5bG1ZiK0"t\$ɾۋ8Df?z TJ)JY*f9،R1{6VŇO+|Zg r=xݢXt{.'8 ې(TߥhY7z#rqo 2[$7`=j8y9pE'~Ȓm&\k&gߑ2}ƕ/;D|j1;CBH(Ǹ "xk2'E 3opcV)wk$)=x m;IcD-{Y<7;ƒ n=W/T9A3)iPwBJB`RD\&]Fۚ\[לN2.mvE,'+ܽblzRJM6dwlꏶO/!gwBfWލطs:*ڥ&>hr鬔d҄o:>U%APjK9Wi'+$dbC?ݼHߑͨtoG I\[!:V--ƥ1x8r~ [HĺwQ9{uQaZY? qϐ CFg@*=臘9N$ 8uyix! gwr&]Ytt\`ܧ:AWuz!2 aӡՖ(;X<doa1Ecիigڅ{)쿧pG3{>cSRoBPo/ar炡xkUKqAMǔӐ5F>:J"7ѹJ?FA(qΣl X`t}05D ,Ӂ(p@yUNU%gÕ.p:b>Wۑ]Obu g&kL<DL]#!siz&H)Vq!{jȉ$ԭPkk9i(cԔn7sRw#D(Q0[ԟmÆ5V5> ldžiꁪnE8I=䲸K Nr7,J}zGF.76ӼA6Vi)%'H&y}{crQ[NW8aVma,^$!UHpyy<F]SUN,z9WIBp*(}vdUsm_Ǐ4k!o1!xa 1σWtMCNd_ˆSŹ-E 6؆g0@y%n!87*bMlNߩ4q߸60da `EgTtw7Y^pKs7ǒde#3/L7NAJq(l;Y'G|ͪ1(bѐ{tdxhD+$wcTzGV˧Ԙ_< V[\{ jX)v0y:d͐Cqݒ[ ˒ Iמ_g d|!?\+ sS6R BqPV_+\*n3 NtύɐYtBNa߱M(lX^f`,"]$G Vxx#1&7%-L:J8Hݛ3Lh\1"Bpbw'y9(o %d$9o1̨댦t1Y]LoejBIcw TMj`˓*=0^AZnn ƀ򖥦Q /8G@ŇCG&3">w; j$'aE,fMe>&Pi?+aLY *3ؚ_98Hۥoc\P2^9*'}(;vK8sFN#U̓9jC7<+bǶs;`eOV(ƻi]="[(ïY1uÀLj-'vQ^x(y#TP ).x>lQ梀jY4IUhxg(Dv./υI@xW%<䛪Îʃ‹2KWk%4-8HBC}֗[~4xfSdM,hvp-gq*~:j3QѼi$H"Ɗ1ߑUevns8Q:0rFB9a G*p]/  #n#L^Pum\6e +4^ݪG/6gh H2)Q-Po\|'K Pc80Xj,Ig]EgX惝 QTE޽u`֣p4̲;8Nan7}-yB/@hMU.O#> D$ˏ?_zuz{Z,5jS KRrBQJB@{& 0lOwȼ|a3 K,>Pۉ[G/4VX(DLu0e3-gb(3OJ7ZWsֻ7Vx U^'_Z{OdaǼE[5V_@4apr14"6,E\)xFkeu 0s%QK%#Tc1ypCB{^UP{ J]H8n-O4g~-!pU݈9|:OɅӥ0Lh2N-uqNYP p] ?>E z0OupTLAZ C6'9BQ[:۬]Q@>YHbPYHv.M`@ǒ˕J{:`fm?;Lq~>.,FiSx/K%WH6dp{Xʵtj!B3+E$;1(D9p|;Ċq{[U1F=RP](6>UEo"Yt'&c.M P iD '%?5}ϖG6ЫRxKfF%aj@+]y[jYO%A֟v9>x$(tZA؋`d?zqJ2A˫htEn|AD9x.o&%ȠX+=v `xoC kPpU5b_M?#S.Ջ999 ]$_t刽kߌFmkOK.G?4wJ~*==."ǹ`a,u Y(P,}@)s5DAm>y7k~0qu͐LtG-_gaRr*&َД6z97[_=s#oJb #u;1ZMQ.Gڥ/^/QwWt"۔"RUiB ;JΏl`qcU;;DBd# >>hD񴨌:z}8Itp+KMU\E| {uMIeyl쁳(&IK_źMY+%Ip#;7mUtyEvs Npi9frx& I\N6Ţ!_AB}65h@v Ub ¦I&%)ߔ\5ϮI#TlԄ.؆׫A1sF[a=jeMǽ /g7΂+t5biP<4"B?}e m 2!\s6Z:'~oԢ0yy輲mTt]:uWyS=6/ݸs`u;c< 2;#E@` ^;NPqp&SBܡwvpMOظ@[a!(7EEjeƛH*yϳ~C[nvSsͯZ,WJ;j=1ߞSǿ aj50\{]mXpݑZޱdk-^y\CRR9%?\W i~IhtR 5=ff܃Z?Nʹ誳<[v`sf͆7-LvaMDo*Oot6kiEDdrpiKE+)A;Wݔl^Kܠ2T6>@=-8r% Q|M 3N~FgCNKl$gx$Ws e0ÎFi營]k|5a^ˑ0ELW Ej!#O!x(Z1yׂ9ʹB@Ag>2}kLwL>j`V٭!YFƷ|O;>@?o ]Sݥ_a0T֖sRGjv: )n)8iH?;RhH$LʔAlLJ-Xvƀ cݻJ`ŏVvCWX_P#E.~УicVir9xFyXyb' ٸAL͚ JcԩI5Z܇6CIIĐ[Ѷ^S 桦7'wB5y3ܑ͑Ȗ p; o1]N]^ɣD8GY$܊H ձ[ổ;Ko@'((] !ǟ&x8PEPE^ 5OIhzJ/g:MK7ނY0}[rw?)`݊jFVeF9Y@O,6;$v!֜Ct~6b-CD+>|CU*SQ@ևci4 ϑ+n~s; ܱ^/:+[k#ԭ ]%9gI'HP#&⫊hbW.0zE{q"+M^ȄWC{k)iĞXX3@@O|lIn J02܌KHZ1)U׻c 2eYF/3Xg a=F+j#o=MpƖ.U |d<볻O`ه l0X;_5k?KM{6 6*n-iSZ6p{ i&teGZJׅsz { &T7sn@|}|tL8y,t%uғw/2.S/b (tPv!Pz Պ^ieF6r518P|cz{,lϺZ_7z-rJ qa$uk4 mWdk39NΎz~g,D•uҸ3*e" = F$,IxȽOҸ7`&i{u@RUrx7lTZݩ-j?rx.D *s{4BQ%0,R !6(RKO%0cM*7"Md3v@l1>촑Ak1>J [&ڸӿS$HEVlϊdyam*X7MJ܂\a݉% 9JOz;E}={~.:~#)>?,a(%gm ywJVa>x|[-9\Q.b3Qp$ Cۧ4E܍Y%l.؀gps g +m*:833fddo^d;,8^%߬9K"f*> ?&00J tl5] TC!JXlծ)"&L;cJ[kDQO!ZS .۩@ludC+'pZ3ZkD\5ܳy+ `+F+NQͩY.Pq6]1*ʇ_umhc%4r|C&\Ϻl62G׺+ d{rԊS{夣%QbYV''{AA[i5@YiWd7kɦi{2f1w-[C+#FC+ݨE<~mN=6y1(\C* FnGT*BӚcߪl,kA$ x-ƓS 6Z{6˯_qsŷV\Uo_ ԱxA72t!STc޸~ǵ>N}]I-7=9@&_6B],.!%MA?H!hݡNB=l1a't<eC]ew}rz*JBRסʄĒB-!0 ( WdUZݗ,Y̘>A\eC``Ceo7^W:(P6[,L_IRp&~ e-ְ`~m3 IJe `(pjN(|<ƙz).LlRiҝs`d@ZzrTbd]BU_PjGK4WEۢs͏fdWeiNj>^Q:vqt6 6裁5BOu\Gul|Oz< V_nɎ(R3nf&Erd$5:̇ ɽni }oZwpvgѷ'x!+ $O[b4 R #i}ɝ65=1i3C‰PP~^|>\B a8;bj\Jgˉ;m(G =iP|Ok!di|ꔴ VPy _%wT#NZ\I{uyq 48NF9 ΃. * 7N {K# mz%G^N迌&aasبZI$eCqfkJ[`dtܡJ븞=U orPsId/;cH۾YF K`geq9D74[A:'duDT~䔃 XT`Ț#pt=Q,Iz hX/ )s gks5|fPU.Ŵ$ kqиC9>8ylJi@ ufc\S;EY|"\0o7TC8TnS~( {}C!w] tF'`wPJ9͗'6Jc-^sr$Tj~z { |`Yd Ӱ)dyVb6NK.Ax^-t@<_.{wH2; ۱Bϲ _A KV,YJt\s)hcʰΘ ސ_Vם,a ҂*f[> #"xg0݆eDUACUª'mϑ)"}0gW9)Yn dlRoLUTHoNtsUC'pU$ڵcB;47Lqq.c#w w5.{nbl30l: [ X4ͷڣp2} I_a$/9%K|Dn;uyA` SS.N!C3ӡF[Յp0``<"!plCHF%SJ5ѻfsoY0؆~֘>,삘qSdbA:"I#~WKK `ƃ@jwRPRsY8 =~ 6ǑK\WΕyK&?_Z08ttu8^%+Yؕ Jy]45Cp&ZGT}:7*Y8!Q&@wà,pK>Op+z\/(K5S)w58ge CwUG7 d))*3zR Oopf?pMZn Uw*"rgd[IF1Le:sLI.Q?F[JQG|ƭa APԉ'mrom aB7!ͬhH XEJ7!UWvU鴩HυOZGOd^}l|G|0N( âgOd·Ka6L?ԦѱX/yvf ]M3d}ٜ#&vfݴ5P88vD`zŐmr_ $rA\nNp } C-<`+[T/@Iq+_0 d3>_֯dʧY)բyCY}K  kG$rEFh.?1늈,YJjuᤜt)ų[)~^^^qX \s-կDf)1S_Wt}$'@\R?reY1N䪇q2ru@8}Rk4I0MH=イ q%)o&Gv /'ƹrjf/ wZowI?ƱǵpP[F:E"ˑ\ޖL#C~$|(9NUD|"1F?IG̳#Hה$wDWQK/׷H=X\ %IW\;Vlc&ZܓRf_,Pet;&JNi\U ZdorIT|PtYm fRVg IM>x(=WDݷ_♏ W4B0KSվCW1|Xiy?! Ҏ^hx_xw5=FԸP*>K[%v_f܈  G#JXXGHp5{_OC<5JW*Nk'# bs'I'Fr0=C`ݍNۦUEe -lp@R^ALtmdr _ ٱ#VQK;G uI/vͽPgdz|HЀ3 %>9b62%FMD'pCA㨟@ѼzgfcR{Lqn|`ZuB=csͧ^cS25(ciP?Q!LUoKN՛ |bc bC)aG|e7\pWDnnѬX7|}Ɵ ?'tA% ;nK\Гd"Yi[KQuDTjbMEğF [VtgX:\~dITGvW58tD}$)Im/]XXyQ>!#`hqf>|Pkf(ڥ5}hc4?:$H Db6[Bc?ܾy7B SbOڸm_(|>3*0%)/ϋ񨒫W,^8fϐKz[\Uk -Ql xJ_o;0WhM"|EQU9EvP̀5W.9[1կ ]:&,!vED?5 cA:}S8&Ae ^މXۿ G)I ,Ư;hIE>=(sq4W[^28kbDn&;?wBk.F>rLhSpoM` v!IJpV6f%Sk׀cSA5!.o4fa,?6n>>@p&&kblsMvx!*T9kzbk$:Be̗x8dvnKe(r͏>e6c+L5욧2hzw.[+agr6&Ř|w3Jm56+/@\Ӆ@)Kѹ"kx]V|ѥWl8SȔ?荦agMOnV9l oۭQf>_JQ)FҐ.F6^Lw Hbɇ7pip#? wY+6vps+l;]ّZ !egU}@CyG )T7S+1h],8(u.q@%wP2Њ F$5;W[z)Ʋ|Y i͎ X?"d#D|'6#sP+}T;ѰI_Ȗ(2k&:= = %'G`i#W/5Z8E/[=.?߸"5l.tkzڞ=D,T\a *o;:sLU [u_ǜdC5gw@Fp6GL <[ 3ysmY6,Cm$[- d=.0C.)_OxiMql[˨Pz7!zmT4=ny;Jym*s6{#0l'$(7N:pm'dudU+\O(hNa2<(T:`2n#wN9vfm3oA+:+؊1I?e+6ܤ5׺p߉4biE1"S/;/YU?t8ᐹOَG'4&ku@+,S㺄wK*%W8hHʄC!@ sV'hIcCY ݎeE %-9qml1P Lm siM!{ެ>^ݞaӖvݴ!Rjs\k(,2?p$,`4SeAB.| [ӊ:CP;_\XF΂mWV'H!z{VEAYC=i2CL˻ ZY"fps3ȅg -SlZSᄻ-te+ΒVfo5 ƯJ& KĠ=QtzP<>O1m&C7h`ޝҼ'hƮ`uq3l=(wy_wRv)DKIq]8m*7X #s6wQ\nl-arrKҢS2Xh6H_U!#7ϕPR0ĚΗd"dڭD8%1JDch$тn:X´?HW@ V1 hNq @bߢF c|LX$0BjHL!lEwG/ I,c`Fgo+1fFzHA˓/;&M,}9y'!caP:C@}4ҘcƤNLɮtDHfvwpo`ps,!"-s0 =O,UtGe2SF!)`I6#rn9Õx *R5ÓHHWe+N|]1!@aҾƝ`w-kpD.țb*˝܉D "Qm-8D.}@7_!՜Ƣ* <}];O}rw,p8gڜۏ#u!c:A}b%S"de8<A]܎&e7I4CXQV٧]ea~Raأd .4}>'HA@T݁ VR71/o/܅6Sjt B62j\[[bh=G>`"f@Rac}HTN2@S)d4Rx~LMn;#$ AVjpdBBA2ϡbobYk|)KTEvQM| @xjt]۸,1ɪN RWDU`n?\A]`7Q 0O5Wl0ٍIuI_ua0~ӈOYOrփGm257!(P>1>ѠS]y\+LpM^PޝFtCE܂)5,:Dz 3N_@ey%~@#Pgvg;brZ, Y`*Cm^ X4ȁ{#{eIdAhfiO{\JZ# P՝]su[J5RRsY֥˳2NQWٝ~Rx05*!3pطn٠i5>kP&BXo@%5[0{<L'y0L2@YKǩE5 n'qWaܯ) @g|;m9CM_ Ey_L}+N8kl/De,wԄX;T C íK{ yƣx6Y'2iv2c_U{dy}U{JG LM3NZ(E[nFzKO? ME naKXrۘ40rY+i'=a+B:2q;Lӹ|\?kФL=C Il ">b=\a9IsƧXG'/~n۸o/=;V`>-!aS!`,?lG`R8-nmI5pl@,XoܴP7EѯXD^X$Sч!Oɚs%fv}B5ojy " e4KRuNNsČjߝ`КN.+VVWs+lbyyKф7NU/=62FTQ^an<쟲Q3w!;m8#)_hgAZ)R"չ=E.Jê5V}{t4 ^j*jdnިCJĆvx.TT@{j(|FE{+dL.n?TnĔ2R+$(RQ *Wj\g6Ej'Ais9{'fwryX ٱi!m%fc\lM^k_vF 0 QmSIHaW*.!OuOn#l}ђxsh0Wrd`<3=;:Vsv-Kn+%b eNӝ̂jUy"yM)Om 饌|B(U4p|UMr+Ѱ tMp%~/ډC@HK:d4"Uz6 0^~bKCtr喬,D;F%3vugqVfDWڛ|W(EG RR>/ ~i A.]9wy{ >/u+gA^$wHL ~RWFWa߸ B N9|[el{[(@ n1gPZJٶJֱY1LPSF3 B&&ޭE摒tm$^緉/O|Mъc!n]K&ʧ+)?TDT3xEf%/C]BtXZEE^8b]xƁYG8B_dUk97%?]ڑ2IBW!VkJ;)FeC/ 0=?GUf)ɦ‡var9]/"U#Z 9.` g]aBPe1=Ho6wΦ0gfYؓ;CmwiBU9 @2P>Lr4|Ob~rUPBoz\Ȥ˸ݷb'jdrAݾ_98不z+]g"xjFը S#ZjőJ^GHtJ4-g@LU$k,6l'aFXutk0rԎ_K-PKFZx)R5g!ۻyh0(g uTUP?pbT?FEk&Wg^|{-Z$'7_-3,0C%i9VU S ڈzҽ4ϥU浭[S߾37$^Έuy8SvT* `pOicmN]-bJDL6DrVУó8Ef6m>WǓ,ghQSτE7Y.yPG2 _3BVqFX|%a^_ZӼo &׫uFKU*<5A 6,6{}/M86,}B}P Fl>TYaL+v@ )G0躳Z[^VrU~<[j3*p {XeȹxMP\6Tg7p>B~50'H1<ߠ羖ʭhWͰ9ls"HO25xpV.q{dI>L?5SSps)~Ild M'u|<(!f2 _,B~%[RAEN8pĊb0LUB]oʂ%lOZjǔANI`hZcU~LP+om`o%IKJ A yH  YWWZ3DV]jnƒO~bWE5WTЫ@(o|NUhtb nV'o* rv;xkI>bBEQ]s PKqTh Z=YQ$]s@& Ngg}whd;Xgh앇03\h Xn. #F G,fvaPYC(@$/f47dsv'z8 SaVJ濩H7=Z}b^+̖_i$Re3=i$ 'd_hSU)s}[Zr{ d|5L%N*4.*(#&=)wQɽIVN? f$-+p>b>@v7c!J?)DJ ~YaW%l$$GθzM;#SDŽ@Nz~ހ'%q0$*q;St8RCȓoN|~g-y76rCa68?DPÈhv`h*DafnpGv1(tRu{ ~ߑcnփԷM`&V?ԶWtÓkKd=GFҝ~P߱(=,A]a֏艇*(01>OX7q3枚*%_<]_L~;Yb\;"J!Ox`\nk?(gLTsTȡ!x: KB "$r$@ʹjOp-k~]P%`ޠTd:PhL 6DJɶ/ʇmCS D& ۶&8Hng_ގBC;rhWkW6CROɪ;| $;OIz&Z} ]%PcqVUY>r<7VE6񯄣tOt!n_T K%ՖHf qUB~H;= gΗ&:[.Wwy]~s#g%PUՓ;J{1>d4 0&Fb Tx^_!Gx {0}Ar`^g1Ljj(h:G_4goR Q c#t)k yf`yas'^ڥ LXH2؅Vo9rq^sҟHh%V{0ͩ. DCDK0 EN@r̸gLg̲4"{}'sDĮ:!q?`_W,_ ^4'r7;֌f,r{Kb?%z\_;Dn)UFfc/A_t{)vFj Xk4 *p8}4eg#*`y .`x}{`IYzGZ0=&{)xvۚ)D` Gi.)q,&wZ!ؽ@O<5.4MP|:_ OA@bTSU mv2/ۈA[}"*XZC`]AL#wz^llʰtw"v(kAkK>\1-E*2~t(Gma0}wݗr1ʋx_CW78Mr$ZǏ_:8(f֚FKvTU:ƂoVZ$"LjX@JKj?pnرߧFR̶vkI &z]GU!)SQߩ+´ql2{'Hfw'郒kUH_)B58j VPՠl_2x_ -GPFB'~A&TD1edRkuT%(B'$ ݼyU?Ok{<;Bg+ pUaSolv6G$GM;!3,õ%)םpOPeKhiN{[sU2B1u\P>ӛdDW(:%Ul.l0Y;p&rY)qrdg1)YQ`/ڗF ?AjYݘ:[t6*b/YqA8˥"sYEtx([uFD"x0 6<ɳ}`v&Կ0hPM n3Q~b%z>Wۋ 5Czi`/O%yh6/lωBC=p1APer@2+QMTߴx 6f{t»v9E굲c3jT>lZ^t<7ޟ}dP-םhYT$ڨc ?TIB[ʀn?6LV,Q/YxrSU_~PE|5[UZl XLS+pviR;=5(ktp(&\m:} YSYV= .`坺x6NQPvjoŽůۮҎH~|TPEc)k|\,jK0nCEѯس;A]hϘmτn/@A< *(@Y]>ϡ=>Fl&$Q*\dֿ!ND ajW/ pjf;#VbI38 +ìd4*J'5<%$&nRh+7o&n,(R{}1DO9gX$3ȸtǑ`vɲLGDsް_$TԦ_@/ >}$%V |03pZL Oyqw\|+O$v z?,Q4HJ rb;1>pL g'\άw[̏ٺLh]_),M_5[Ǣנ1Oٲl{Ű_ pVg~HTFnT%} #[̹5qEk-R f_QV./B `ӵQ){M&Q 1 5RMHj6Mb)! >Le|]`v2r7%ZVcC6sL?tORՈ[|_(0,gr3ԘsK ͒E{1z6ʾԆVE/])Լj Iso޹w2L 5]?ŜGoKp!TjI3)_B(ڔR DmWOcN|A&(X`J:^9)ǶWbniaaSL,_^eLx}%f%7H&iUHë" h<\%A,;.yI{3&'c/Lq!mIr PXea,"悞W~hjZX%BR ƃ; ʠl~X.^fh-F^C Z/rs}u dפ2Ka5&>l0TGhAFmƪF\ 0?J3ͥiS`ƱKI3wx\ bZ& #X ̏s;akl:~$޽UʯkqKe2%u993ݤݺIҒy"F3(Yan>Ɵr|%9KvR&ǥY> |6x N\b&7Z 1@WT2 T8fE\ E` P("vPye 9s'Ag t0"?ͭr99l]g^0x_rZyƺG8"_^"YBۡȂO8hOEF@6D4 C) $3imGGoGex{b" 7UL_QR*ߊ36e_7PtZ p? 7?儤 `] ѹg-nyj[Q a.ZSo[&78ğ^?b\C͠JBNUt2Ix%@1UOP\J(_/-OD*lWRZwwr+ME/Vb b1j7 .oCzeBËoPk7N'} V %">B/.B@cQ}:z"ӵ\7usVO >6YPIWTw7@.,2ZP"0iZd1j jJ/ƓLZ<7aQ!8,!4zcDy7Rkm0LH˺~6ikGô^ r60/wl 37@R% ᣟ9̘{o;>]s|alݍ*3(!R<ҎW` "hE%~+=G=*K HmqP@7>PԐD˜8;V=Pb=9CӱsBP /t0 P=PA3 ƕ/m7's-Oԇa3,Œgܚ$o*ߎМ&RTڀ~^"&,g~6LVJ{BZM-`h5f.\dcua|J䎌"1[Ùw=SُԲky3xt6t~p3~,hhxa%0l,~7{Xr%45P0'Oc _s⃔_,ml*ˣHu{x'q+ Ap3o?ÇM G!hQ4rw~=rMDqHtĶ*L/n|B#l# L{D0 ^큜݊zQ**L 8ܵcUYc1'5olҀŀ;TxUI)rOG0e"Ɂ{GvTVDN[`Jq4@">ޙq)߼0 jGeu@Lڬ`rПUHS+Ǝ 䙏'\B? 1VͿ7oe ,M-Vp 9ȷ)ܱ{F'z u0yiAH,f83TA:ݒ{cAoC v~,Gݒ"a\뗔IkE34ܢ˰L]}4c?#,Ql- dGsv?B. Q'TE sw eNI[j!Q9 3ҍvZ^8ץST >G>]st˷WU_!ULjhg̣ˮ1|E@1nc a9ïĢ("z_?^պx~Lڬ ґ]f7 JfME{[dt Xcy(&E^Y1 qZz (Y,)|0k=ļ)mS)dT56~ PYQ0h  ={85' Hw;l4OdmcĽ &*1L( _°fjUP^%]҃pqfϿ2vƂ]1(-l {zT(BWxj/_x+哾ڽ!?(س) &|ܪh2ʠ…voD?7zI>|!Ǭ.Wky|`D4etN[D+ԾʓnwIPB %lʸV6~Zy!>Ϸz 蛚מ,#Dt%̙g&mȼZ_ Jxn1mɨ O,p2ډ!>WƴV^Skm];eBΔWy⣌^uwSӧT4kθәhwfJa-&ǶIS迠'Y®cM&q>zDy;`&K!-d>rQ>Z ^ PH*ߵjԄ=Z#,$A-GHڑFmxbRLIrXP9,ėa)eq_̏͂Aa(|Ow]~rRs,\O6+U2M۳~[PNRuv2#*gҒ߽ꦀ v\y+kVf$()/qEևVpEZj{LЬ8Qk-:mWΊ8Ut?d!pe1 ϡs)2#*wWR@Ǵ^QF`K6tcmf6'3>l^>'Faoܢ%F>Tcwiirʤ }J[\MjI7~_@xatC1tOЫ?ZnFPՎH6𥭏Pe)BeXDdAr?L(D;b SVxs,(gmoKT&!ph#"z=a[O`tٔ]n3 d꼄-y.꧒Y|lma?o45WK:B[Ӟc9S /z>IR̙g'`pmQfQ}j=gٺWN_¹9A3y4*X-A٫SS+sot\\' +f% S= Xn;]TO4L$ddό%i W7S`tj"5fcS5Q`r{>kDt5ϜS~K3{q|/O[5Ql'/׺sZ[@LQ<7$df'ȴ\L, KgTwۊ:x`N/},aNôc*%ϼ߆+7YVI- P#ɓf|~A q9iԉjrj*-QlCVˎiL~\s$a@ݽl|3 θdJ,UQM9Չ6"ʔ5jñ+lmVb4 U :q 6SRb歫LՔ8`P$6O]aŴI)S %ת'+6$KeP2 %jdJ󧻳ܬG\[} in},@{DD>D.Cgխ*8V/0dvsBOc<8Jnl emS.Qεer UrьcΒyV[k4uIy;T=&;kTDط̘1[>OS e/lFFE;F}׈M3$5֮ b$Q nr3޻x%{D:a!=wGwj Pi~b悱1?M*hRV " 'AGR&1wMq OX LDi5RpFIYf12%,}RF1t|dAY^qʦ-Vv̔jJi^-Lp r 82D߃ὀϫti7J=i>x4X ы)>5A%Aag4[=ctgNC<+ ؼnft;Ěa\AĶv>!\_VLt3,hCnJW~=kUcI(l|'hVJJj5dyl8vNe &A4Qˑ٧KpGc՜}6:z2Y61bպ^OZOt)H-u>kIy*,͋ǀd,;RSW\OߞZsL⦍5ug+f,!,CB0E 3"FPqId?돴<7No2ĝu:5 ,E?Phj}ڧckQUFl1 ,URos%R@)߮K:l:%rTBDC"G ARfXdv^'k Yl b-_ϓwב턥'pڻaXN lBC6IMk45_ TwJ.⦆g & _orEIe;tvzqfdY 3)Q'hMMaF$E)`-9ff1l NCq'cGMx }qR}l)5Zg "6mCcXg+lcR? nymc ͫo+c'8F.y[ "_ p0p?3 ~AoQ7zgP҆^u2=o)t `ۘ ϟlt'0) ;T u]}}i1!u%sL_Aͮw~A[|)]6(;͛`>)j: :=Qte q]&"IR=_Iԅb/-KrL?\^3ŸX9\32ŠN )XOX@ #5Ve 9U]|z̟y%-n\XT^ Dh 'fJs˗uҽq栬r7"I(-Zh!f9f5)sn>:MM _nj#,Hҥ0#>жS! OЭIXjsZ-cٵ{R$h0ze5; |XQ0'l 'EwY rjw T34%iiEdn7w+=&cnahEש1/;Ӝ^SJqTSϓ]A5IXVm˜ -vH0+H(9Zwǜgp/FQsL3&,ʓt ̔LXka͚/:Yb1{[n`FWFr-g;;:Tr+҃+H&3kM?P& %;yasi!@Urv¿{QqxR>,wrNj#0r %\+S mNU8۶F27d>B%|"R=+z|UWv|"Z9* :l)dd[`_1eFi[5r<,\}%f8P5 ,=IKYG-4kj8yNz\p|)8_&YÍ;\Jۜ }~/B^f]았lqgSt 4C4V?\D:Y<%4.ڱn5~DbZzppS_VWN҄|D~'ؾ o@ NaLo{'829"\ 7z]#/EA )`ITfZpC, BL\_2*g,yR\8)9ML{>k 8ҬĖpI+tQY)+JvAm|'`^gFB/xG@CM/L#[;#S4p$7=MSQ~Eirx&rB)©xįI 8COoF|h^D%o ڸߒwPW\G'RzuLh5!c+Nd+(bPn"IZ3˺v_vڊz=8!a:"v]aD"}v^O?72dyѨx2QCWn4l{!w`١`.70?!CÑَx?Kjs[Xvs0bmk%9ebMy%Bݛ JPU*<+QRRq FYdҙ I8! @gfAhOZ.QƊZ7"$ x#3{:LjIg<<@܌0YB_Sl3G$9:YuT˓G%4Ԕjtp4IB? *(UKN9DVE^z.ik??ѱn$\D"},4"KK2Еd.Ws1I[bGLn+ȚNו c)&)생RkLv۱˶`tRTJk>>y>yqyA["~XyE[[Y1}e"oFDŽ)=u \Ci$&sLo (@gv߳U<]ssY\AVo)h~eHoj ܷA;l\cӘ s+Iꬄwv;. rĽ-۱UYK;H5{AQ ИsB߯v\l6^MԣL3(' n5a/oRʞ L*՚hu`~.}_g>@ozo#Cq?$˝$8w]U"~m ew|՝?@6Q^ܔ]ioֵp-U,Yl-ߗLt COv4J/20#98}-@Fҋja"n&D7Q=ºѺ‹b-2ΥS NYsP8-X-ɤ&Aܕ 6z*p_39I瘫 LzMHhڛ$X@=5$NW fCu&cl% Huі\ &_gD0m9sᑏ ;2@6jfIi0@) KS :j1^ mu ؂שO껋t^ Uus%E09EacwYBXHo47dbHFځ@ I .}O Tfvn IQpߥ$ E3|_s>9z}p]eHm =@Qq}:.7A RfsNVa[ gDC.IZVc8YT]M\ˊ"18m OCV63ƎU%26qFON ;a9焔]|_cz.ا(tĩG0B:' |:͉4*̵1AN䫿DzBtpW1t/䵒/i΁юXƉ@]=& _A%Gx׺bIe[ý܆XQ i kgdm)%]/XKzPBG*va2p³#dXtߣ56G rp*`BVV$* }1t’T~mz.6Qq Tg(f; ?&NRn%!a A1&\r՜l:u O_ }ab\?{и=9h!b]Dի1J!=W/3089! 3„,H7m5~RrbbU&EQSU˞\xv.m8 Tem8)@؄}Nf2c٥{AzȚZWx|CD?~ 0rQ?GSvt^22 PN_S~ZCDEןvL+, JۺqYIJD楲0hG/L'5L2;pNg=1ӉUeT8OC}#V8x܉͏7pъǺ6S!.ne-ׂlgx%8)c^LO20;{ޖT©7vBH%2UV¡;V>j:'>ZWjѥ̉YsggX1>C9˦s0cMT fo1bSSx2zH2G%+̘oiƭ,=JA i]%aŪ?q>y^rT uizud n;٧3*b*` er,KjnzޒT:=@P7%?oflq6 ;V3S0e &&25C0 cR# 抌D:|YEv**6EUzJ۷cՇތv[*?PGx 2okZ +j|``'~ r)B?O.!?3>?T^?C7YPiFRFP_Mn^{,i?Eث>w5].(E+ŽZ'鉿/[=K-dvl+V= ){+FJ#nv8q0kt"XB;AN}G(8=ԏᄌAUJӒwH10ug9Lyw'@֘2\B?`Nu8j?ZcBC6H]KIHV 7~{g`?247ˤ9)^&-͌z3l]jkWR2_,oà5@ͥ9rvGtt{bn8t3t8͉>8IcA8`ϺhjԈ(0}=װ)΁͡RЫt w }*ΰ#ԏ^5\Ő& P yBzoJ@!ý4汶 e*Gr L΂^VKH9 Z Y"Vj`Պ;B"kX*y+];if!&sh_nL^KQ.o-I f芾biS((A~tmS0ȥM6HIJsS/?C" MYChܜTAo5H2z1' TQ܌lWY/mRJ߼Z5(lJܤ)n&*];2Nq$`Ǩ] Ζ#e;㽉ykJJL ޒIN2tp/̕BRHƁY(%p( G}Lq &=^x.VTЅIpg~Zؖ ==ui/0TZ93JxQifRs Mtp3ij^r^{1$ltMw愋[ؤI2ɺc#k` җhD,XbkdضTQ[앸>c4:pR&p/v&A݇ ^ԇ<0#x>rZGO(34F# lD?"/)%"ڗw&3vyl6"C (]Rz$ta-$^;Or\% { vQ}ܲLqCf /.\\6@B4v82k9,:p\q\֍z fNi|Ė0[xYN-e&9<`Sc_gf̍`WnO1=s(>%Q`_C n{0yg \ھR:pk`/jJ#cٝ`Yŋ&@lz.{3)Ks/;CٱFnyENjH0Y+_=aR%bw ^rzd˾, H PHuEBeg˕N$4bH4jZq<)5uڛbqmS뀌;:CG1XITfr M\"3j/\^)|,VRk s2:@Q8pX7T:  P"Ҹ$3G!noYH;Du($]W.MB)f7n?8;9ĝVSEQKx/^8Ĥ΢WBQEʐZw=W vO[ig- qzc\u`ׯ PeJ}a}(x'WZ5VH >zxLNԓ4"6va~R5!; 9x'm2P~ZG.{&!zE  Cҿ|7 +OlpS&n%ݤ?_cҗMS ֱ7 V=V(ʉ-w3)d h/2Y@BiJZA&(׃'z*I@%1wݗܵ~on~Ӊv(? ' {@cE^d:QZE& 3u6W -}=KE҂bL4^sCY^2AjH;O1y,&nPOOri;sf+1$m!ndDfQhLx?_-*~%u )T!@Vs IO{Z1}q&[=nJ勞9ƭFh磅%?-D&솛Oi0^/ tʆv_?_:x&o$3B !jGkK%O  NV"Yaː0&`lnHrfz0lUgǑO)#!|:aNJ%Ƒr.{]CMW"Y+xH9Y4'bj!"165G 6BoIZkܱG;b<95㭚9T4RFdxZOG1qJ]{G\zSk2\~\+PRo#8_,mąuna5T'/ ky e3<&PЬ,\2SkWKZayrjY\HU <5ֶ43Y%H0 <^u{zN<R 7e] Gnx_qIF(m kpJz,=*%Þg?Le!oZd)"FƤ$Rڤ(Hj3׍FͮN mۜU3Ƒ?kH3&\B :e3‚+_ WȍLd5I{SLSKD[R 4+\0nɺὼMg4䋓,Ӯ~GCJIoC^I.?P:7 O,1-V69$-Zȃ19UXs3!@TA`qhszy>SzP<#dfЭ/IQvJU+[]1XL4!N5pRdO ?J9G[<_3Gi_L0n",A %:N-"|X⸱ r짚G0oP%Ď2'cܳPFwNk e=sl>ܔ,<' Àw S<;chjJM2<*XTzM%Nrs"ة :9q>$: jBޭZ1oЁ ?114ъ|ز#,sa,,e?`XDgٞ+OH*|:{؞H4@|9zgQk$Hip%ŴdNAc,C*kLa pJ0` qrGyV:~Ϛ#k/`,FVb.3e2V'qG[TV6_Gj5}c/ 8q9Bt,XtJWA0JXa"kv;] bDǥ1RS7 LO֢{"[y҇ȇ=h Y(Nj7`/)i\_6ϰe{AMcbk]6drcbʧؐB=5G^լ'F=@k #5]%MROڇe)WqpF`aSTt_݇jcs*) ѥ6O|`]/9ODXDŽ#]Y[uK -*'Ѐ L{0C!VŃFGRC:`.f+6̧ɡuhWr?Tk7m q[l^f\hS"Ԍr=GW힚"l}SOKgJʿjG-Z*Nڿg27?iI\^e;`o77a6\o H(j rЯl353KH{^QGJYЩ5H]]mDt2AiA|a%$[M||kDN|RPvBMP[|2}.ZމN%ȁRbK<$$&A/o_`Ba2/9AlGX6es!>.|pmP|%\v&n M@v kJ~}cSYH_ztj{_$^DQưJMC<&&ßZhTb Q/Ss-ց < +6ّl3iYmkP`V0RHMR'с([x+%㛩E qc/pe(@ y!tx !Gr;<:KM?+-ZS6fbJ\m1i9 ҬQ)Rw`,,wTSTFxRfȞ MrZI.~1|E(0-:zʠ-kYVPRXw5эj47uN`nP.Zhx6Ncx E++d\Fxqo:{iVM&ML^$(XΦ0$Yߧ+%RY_֯{eNu'D{,#x/J."JD(Hc]Gm씥݂/GI—gIg;ь#(S1w̥s`Igړ 늈`ϠuU{V? kUoS bT&^Yuo3(,|h%Tlewjk\͖2Zv1:YN_Fy*Lf7Bw%>,Qhw8Ū]G'"j)o? >~$_*m&s 5~9C+jr!+K,_M)ޡ'!=W]m0籩׬%PPB@mjJV5\:* _oE6bL2}"۸_IޤtsФ?yKo}osޖoPh;n갫)8AGzTIńJ7ѡC\~I>jZTOJrlwse NxSӢl5C(W[;%B0'sϘ_ K)Zu1WJDN[is´4'H 2Oe0N!]^;߼p=Q H4Ջi#Pn*jVøP|\ezm$>ቷuHZ67H}{gezSZnutj~Ō#\򁏍aτPÇMaߠ^_fω K_bnU)n3Ao3(=b [|~ZeBO:ڟ Nrԍaقs[8um9$2kuR5sۂGK%-LV["HoY}AG1N&э=~sqrTҐ/\x0GxuĻW{܂?w?4^?ɺѪ6 ( Np% 8S|K?on 8.04&19'?3ۆ(,?j6|Eěuz*ZU[-{$PC=Cs0P2ȍq3gtP 4h՝N1qbFVzo%orTWkj,]?yAC07-G1Z —Fji9@Q&w&qάu/?&W9&;e\/D^ɓ /f~heٜg`37= 1!Fk3Y8_m&~5jq 0EkѻNTO܊7Ac:j{0{UbSbH :0m/phG0 Uru 3]ZOH.e/HO"7Z"YUtWBtW(׀r4[c\'?5%l`1yzO5 r,'$u'A&0AB >G$Q9}RRkTds f$՞}K{8[:@|.>ݨ{ ,rDNB# "uӼY~%(ج 6mcН9Hǭ63MXB,50Fa{LeM=2.!^k*){㐗XMkd 6sL=t#g5Έ+僙lx+O ڝBgTϳDIQ5W`?Kz. (XBcj]跫J\3,y'-e99Gxp_$FiL2"{ҰoAQ< c SjVW6%4?N2e_ݬD>=L~ycW yjR$F]>#:ܱt+|zD-mKƦR]0KizMmx?<&]Q7j]9kPUmN'27d]@cCt&S/6o&EGM 'njFg[]_g]è-B>OkXY`"ީ<"G.uޓC:ϲ/jHH_38ǵ_yRfD3LX8l; Ã1?% *k ʏ1 <Uvx. q>4֜+&W5,U*'m^.h 䘑&(@\=&11YhuGV ՘;`4 ։Gl)̆yApր\&T=M/Yv8x#I5VWtH_0~cc/H׼d , hP;:W1wঘ2 ~S#F6rYqQ Xqn'{P0x8eΧ~ox^lW9d-XX 9Z&W${ 0fd¹ __{:8".97'$Dh }A ,Ck̯tX[tfZ왢q*r_n_ c|?Q!Z78>o*]ި9=4ח@)<>sw!ڢ}}i"LzM+Zӵ·0r5BaJ< XL+,&o[k4NH&v}ذ)7.Gf~Y}Lbp^v柽qke[L~FWC KIkZj=+uep;a*b^Ǹnv s)@RNhLX:M ^ʹja%7=) TYp퇤$7,:^j7|#/XgOc[$yEo1Wӭe+/!HXH 3ƛ];V+F3YpE_*.eG_B韻N 5 }hVl=6GN5qP Ziqfe$;&ٯsI^xэ}J[eBHmz3L< HD,'DhxtauV~J^gb'-C*6lRSΕ-j|Z%u.׮5'O jΪ L֥U% HD`J}on}Npw!Iqky "*}d05x?u7.zPE enژ7*nOm+؄41?j !W@hS:`c5J>M;'is=⥮*n{^#7iF$ 1q]6Qn+QvTdfVs$%sw ڮ=po&*| 8N̈́ʃP>;1m -|+>k>؆c:O XM]$%(T-B¬`y13^pZ5NIs8la;_ma@' U=zV 8lSfh6ue_WtZ*{~%sT5)ElC"HG^^̈ZSl(0] C~=G˧[K$mU=%qkBTG}Ұgp:f6zf7_!OCI1yk7򘆴}" \Erl1(\г]@pE:ԝ/QI+gID0>ln{h{}jO^:ɕqbٝ  f?b#gQ=MG'Az$$>EvSBUUZqH7PPRVLɋc4.*"3]bmjT($xi>q>LJ0 jC?:ϣ_J=Zrӥӈ5P}{iZ ,/NXD'`>KMǪsU2r}(^[<2_"0$ _xoVKOyy%5ٴ>-?'O_w itKD  u.o>SO?w/VBue tSr߈{m^?[H`Dv6''s @B]tiFC=(%=\k+AcClY$p{- -+}Rdm/{x#ޓ_LE<x*d^5qKwxk ik-EFgTw|#3ۙ"%V۟GHA#Q /VE p61˝@Uz1bS@2I鷧d3=#q ӟ\}f8kCB3k5R&aE!jbLQՕ@L\<ȓϬf| \B٪^nn߈&"Rym؈}܈{-qo].;\ai YuyaR•wTy?o|*+fom7Fk S_\ь;VqSf2Ayug(tcQiIaBQ \{\}<^s搊lURt4> 6kW57n+7rxJڋ?&mIB}pC9_ zsx'W99@.z[> ȷ;=<k%s[jl$69V>4ɪFW!UٛPHH U"K=ˍ1d0pPrγ9y+x m Gs" ų M]w+b9nl.4O/WhJa#oƈ@x{-jxvq ӳoWN|V\ªNZG#5@#]lrSLu.%;3':N&?Ia.E`1܊_aȝ El7I\epp46E%̳b4X#1v*.?D qr|4cR֔\u65ɃmƹTII`A_N)MGnobUKkQ`>'uƢAPmZ6Θ@8l4oоEʼWۍmn_α>gF3"yHN"96@»dڦVzk Y߬T {O_$< nk iH(<[lXmTFJCǫ6MŌ SjZ_7M&;38zLJ F_ 3xO&bܥm% A)4>= 48V \5Y0ωxfU!FR 3  V?_j[!Y}`A 7Ggf6儋#*3O,7Y\4G>-5zKQIJ)LS?.G} V65zzm0Pk#9mVx9$ĹټS W9wW:`@FF+EQTIed tceTgYM7]\3790,UPcD#3b,.hJHV&7FadcC%rڢXlRl:H?5v!A7%nmz<#̉Gs}$0*<24UNYDHf?)`]gY_z6 nJ4@Ϙ/8F %)U kp1'rΪ,tb;oم0So=DOD!i*R6X[aL)ɗ*?JhpzJp"XDD(S`mE6#{. u>+mCj4ĘJ)h59cQ:E5v$|晈HSUMt1e7jzt!D.& u%%J77_.C{5VrBbz5威^UYzk%MҔbDw{CLz3rtָq; ;1MkH/1V9+s9[0-;%n ņLW* C}*'o/TWsl^@GG+ӠеGiIśr}EϺ'`tnsJEeT 6P"<-(9`mn{prugk# 8 ܣv1,O.RQƓX9m.*9~a&B8l@ B\,Fʂyq"PLpE77}em LfD7" 5tĂID`z )$H'J!҂(ZDЋ0{FF{v#" >Gq?slYCȟ#bWƁ%{sh ÐǤLTzYMѡT?=\ CE@sliJvGY4FkEҫď<=|Frr |a#UG&$q=!Ge-)uygdk Ut;~jCn[|!4Y\80(LJ G@OR,-3*X/'d/ W]'۴ 0ʤ~$߭./fD!x7a 4z]+sa{w" 4L[^fY ^|#=Itsן 6%\F :=zeP;?$Ҙ>XB"߾jp5TWkE'"FQ>]==!42aMy&(,w1l5JZsxmO%bI\JKz#{ AjB1:j r:%J2W bG7;h 7$˔S^rԌ55x:G٠7F]R#>ez,;o#%N#䢇o5߁"mlHAi7v~k gFrc 3N@zT$( Y @)-ǿH0||#Lշws؇!SӇGa:z-)с'RViLf |fZ@!{eSYDۂnQgP 5&/ yҽwԀ9Pʛ.oхEVt%mb;l;qIj8B!S6$WutEH`/d!^3!uY+[;hF`MWC O-k_esIf*Bj?&%,o M}z~jL1by<.pF?:K#.l" .jMNj|VE@;zNem9 kkN6|ؤ]F |QcF12.mh u4,l:”ű.hNUs1iՊŠ[Wk4f@!)5s%V3VKxDKwiQAvcyeS.h{PD_IHc:.JkE,)C%-Z| lIlQ󔈂d{c&W"#XoCZmrcO^so)#Vqi LHh(.?JظYp&AG\Yv"B閃1 en.:nfH%e5$1B8C)ȿ(|-}G}2ZΔPby.%p(1qbȭV2uX7. ^J O>*pęC4/iyc%b0hrb5C'fmkQ+n&Qb-ÛӮN\hJF@A eZv"?ڡnפJBvр=vXޡ{u7\ҥf(]< ]3j^os:wgqT׼t@URnRnr^-dT3Fk :>ySgv"AyR9c MɡkȮ؄9Q rZ {=W"N&qTHͽA@Z8koj!m^[ˍK~ܷx[+.ͽwp}Nh7CQ`w9b FQӽJڷaュlc*8O^·!(>&(ҷٌ%0ok!Tn9h[HAG9t-[D~?`:R `%1v*eI}[lGrRKӠ M9m()ivqdq줸,ks#ږP$-[#q$)7'VS ,Ѡ3{@YhRKkl2hI-As0P2N|&7x~mDE55/lkʹWXZ5$s#;\9{)^^ibقPP<7)W !v&W*R)M%ܜY"pgnj-Oq7>kT"5|ʸwO|{rSvANY!:8 q&SQ:jCꪮzVr`gi.ā[yP{cHy}'NDޓ, V!;`W7Y°Rq95Tr)ոԯ)l:J]3Ċz3/*z,`tBE/ӝ6ki@#leh+iGib" B^1M'.@ *3HbRc#;O*=b/$~"Crv}EebgJ ng=rBgaBHE22ԷR8_UHhCntFlw; H~APPFo&,$,!4=qMd{A &2D(ӘC!zOEJ`\"qA A9OJo]%| O]2wOܕ@v3pM#`ڜ͜.i%ukE$h'62951%^V Vt|AΡ6Y^~ E$ы*s!S :3zX`μԾ+q,G 뜺5?,묁s72P~UC0u?&U3rJ;y,Pۿ}ǘ*)oԞs&^cx[a66&9 4|7h1O l;} 5EW!x+v;)+y ce@(h 0):P׸n^D!t4߹E\pZxmyA9B,ÉiMDICz8?<=*t~^Lt!>twǪ;lcBM8ƚ ;x[2,@8hȌͫVl *m˶aqzX/̌zsJ K[j _*CsTEĜ *Lv L׷axqZ[3[w VRMx?2mO3q09DDd4BӅ:-`DPaxkR`r & ]},Àk n_Um57Hy28Gq|D5Ei n:M/ԦWcwX2ғ 9wP7t^F==n*am ?w!]zJnK#]Ӣ;hG/| b~e_,.5E5ߎf#d2kcB!Ѧܽi)Y[3\E.k%G-M{J8a]RqYdtzQ+>Yͨt/Mspa3sw/^K&5?uYs᪰9MEe/\W-ڱaG F^9%**͡qE+w~Tx/Djd2z,y5W*z K,!Z\vkXfBse+AҤ,:a>ɣ-^X5x\HBlZKz*7WxQ6S'F uiB5b4m.V>|==&5cBם*O\8^I~|>9 ʞcjaqe]hɾ)/kTnIjRyht QL$&-!ƹS4 00vSF\#0?|C촑j|[[.9Lس#X=O/?-QSU EVUzE{ =ѹt=w}u*5(.e-=H,:d cP-֖cFp¤jpuXɃgC63yMOk=9`di 3Y>XP;3存}STW`7I+v;H ?A^J=y,Nϖ΢)b16ksc4ڢN / G}Űsv+k | POOہ1ely50ˑ4VK`ۥCf!7|^"os:D'U> &89a4dSUa쭱&"RHԒo$ 5Y>.Dnwfp6 Ȑx*flCoWwu{Re[$KGnC!w,?嚲y.dӞ?B7EL%08 %ƯK}wj>!pۛ:E<$霓~lKI|$ɸm*]ôlu@q'pq8Cchd=VG~1Ow+5^mK?1YMٛ|sG@8%1d!2ԘU.(a_#]7Owޞ 1瓘Oj"L0k;ibguDRɭ&[e:9u82\g}@I7\\3__2Y,R8:#}WعlT`M35ͷf1=a jiSQaOÝLȊ5$nHFq+OZ =ӓ乳;EC0g@mp"7 v/>Pk@l3awk&_A>!Bxܸh :euPR}Iݯ*DTؗ񮀡$wb}H.TPGR0jJiK2x0IJ>4ʬ e'w=%&`NNzY3A6)&Awf8vQ´:r=~]g{54GH &jF{n쬭[ ocV̝̖ػZK#4|Pdf'"%F'%f#m45m !߱Ң7{Lo5> TinǒU2TSݔWג:0vc~G{ܩJN#AIvE2,2A֐JHAj)oK=6ޞaXeTZoUZ/K/\.7.1 ܒO&}SŜzap}=Pwq uじ>V8.VrVg4wRY[[-E1[LS7PQ\gK#zIÕz,[p;Wzƈ¥?Rٯn`O<>5%xW0Pʭ?[n(6AR֎ac+$ձr4AQBf+Ku hO*r'6sݓ{C=.ؤCf1iSH)/pUe"o9.Ri,itTp0{9 A ֑΁ӝE!O?]q>H]͘Zsf\U{/8ӆ ~ut5B~ XM<_ 쎶"(Q0q;yǶK6JVRY`?kkrI9^m0_Tx⛒rIe ҙ2ƹ̋kM5ECb+p?_?"#{Yv<.  7Ft&rwTʨ~3!*hXdfLR^axC.jbA'ʡ=VN4{E5(I7oV޹6?FJe%M84E&*2[xS"/#Jnr0__^Hj22VZ"ΌAĒ (2;Z@bځUlWw#ԽlP8^Bi~Z0Vioy9k/n4&v1JUTa*T BLe:놁VIu+\ YGPRrf9<9M(΂ѳQwG%pcL wנ`$ދ.P˚`Q2뒨L I߷ڻTw!a\R 37 $ڞ<4"~e&s%z? ")iF<𒐤U7w\D JH:}=\uR}nOZV㗅UE=g][$^$ӑ cP*hl`Tz*.u>rQ Y*,LL#:Eے^ Q]a6R: Ǭ}!$0s}56>o WGѡ{hM;{b̠# ## {ZerJpXQo}آɜi1h'Y!lɍs@OKNQdDJm\pWucDM;oo!9/0~ne45{Ǻ^\Rؚì% r"A^n~QA,[5OGӻbY}e;+K"eyt.4:,=˱Y11 >xڂTKo?(\{)GWM>8/أxky ^G֟9ς𥳐n#bA8/k6fΒ!jĚTBC\piqTs7;Vd ,5AP:פKLげtڊTi yL6: bb; |qu:pI)sLBsxAP>CB#UidLC'乐71"@֕v_upEBcn`ՊӨ..}c*LY6,Ԣh{d Q}SI4xb$l8Rס H OT/;75dՓA?\XA|([8u4!<8Aqlw5Swn{G21 c^5%{ߨ6 !)RKd:$o2r al>bC}Qu=C&ml(ě xCJIZHOt ŵ=HPvܤԣx;ﮰxQ%$7S|wSC]m<.j@ĴEp]; ωlQ, %,H7Nhێbs:^52ղjB% nix( T_S+-p7t?op[IQ#V3g~Z(bcߢf( A BiIN]25"k0(=H+3B{Cq߶'(o!>EFMj9ʈlu'ޖfBbxz"9eCrFi3G|x 3>`,M>U|R4/wz}Vb0]/Q"y]hU@)ne7f m >#H5&k|{{rMųC [_{ ױhA"oj͌}4QJ<4Xq,f@@Va{rQݿ!M1msq `p:ӡS)m.4hQ0큼JEj*y҄G._s4{w-֝ZjE v)bPe=!O n= V~wj3/\fi5{nck:%db̀?UA0k]dZљn%JNkMj-Hq:wƧڴLz8J*FGk9R~U97RκJ^C[pվ+Ϝw|fѱKp{j)s{]+בRn-Vplv Ɨ4wASYiPTuZxe?Ɍ4kYJnlذ0p3 kI6h5bf%-| /NO£3,}RPaWaB,$7x!3`hAJ:d%c [7DW蟲⟗>Μ%|qO̙@feTݾeSV`M^Yv,/#y%3_L7'>:nj%N<#('L'7'tQY'>E]<侐[ UK8 ɑ$sGY =̽R|k+0 a0@peoE*@XELt 28Fzɔ>!orR`GAq0;21¢fTR QK2tN1%]B3F!Kzg0ZG}7g<;Ԕ$ ?Wi`k,2NUӯO3?—H[ IL6zP`VT%+ s{+@]Ԉ[9{zB#'awYCAY+aP4#xط:Cpw:Rx"un-"6d|9_-駱 =r( 7la <䭶SaVŔ[k~ⱶ/2bW+-/^P*DZwFγE ƅ?HzUw_A]w艆]7@L;#Y}e!W%I.9Ir1<^hN'ٴ?#wleiԵ < eiNLEOzfcrlaA{/՝U@@c&6̀= ,BM2W/>[fS"9T }ډ xo3E2b9ODsOUy*$s Z[P9*~(zpU\>x-&`~XHiQ$ۍs/ I{&g!ҍnl@CpYxE&JrtMVv1QDJZVpq]cCxSm]  iT3}CL7仦 #w#l ԋ#'ƅ<ˏ39,JLyt?4Sg y E:m~K<,[}"7ԫn|6~iHQ89P3ȯd9tEҷ6! xZ*JQ?4p ޡJB; >&ܽ2@qUׂUGmO\[hK f.JcI"*{:0Z34X`( u5v] -+* LP]i-ryeء0GǽpTlg g>ӞiV=\ w7FsmnPArCڱ#ש yQI>+Z}͵0~8+ױPg*ઘ!W)1Cald텂cG4!d>\J; RYL)1* C$x~BtuR)} s]fwA1#f7zuԠKA@4gGhf&^P1+4]\'KmHpMӥl!:`,@}l1 xV)\gM# S ]cQU;DFR&#{p:}TtF"5j"ĺJaN&`%' `dm6qsGtQ{_8ŠǠǿ ,C} F-MJ!篗Ϊ{u9X4+t{ Y<1AᵰLHL_z&8) *Ȉxz="i\PT{ѩXg?OXl:>Ѱi?ULNsGZŃ(D n>IDR8u2v(/\ jvZC껼yPg؃w%Шy_)Aovww9NUAV_!f&-<up{FufXϜ+PoiavcjC-=mW$C o!ڃaͩL<4DyZ t]vC-]Y&)ui6@1' 4ԋ)NjvqlJ}$K+FF,T59":WYs#UiO$;[! o@~lu#RUmȩKtʁ "&TtUR;=ѧ~6TŰ֟`ݯ)xi8o`Xx* 2 &B(sBt Z ە|h|YiL$kQz7Ӊ]"(O '? OI ށeෞ^+\Ch%>,xsZ1eg πc&vԮssDDë]eJ' wIoʂ;N:kzRhJb 7EМW]? r63>ƚu ?ܣ`+y[4)2յY|!oƯHO&ef><tpWI',:i. Qem"S(>۸h4,P۾#dұ}+1 `8#%^;ptjA2OǓe5c Ҏ{zw- A>V38;>|w͠$p#^,V췏nci`ei~CA^uj@'nzà>[U•=|T~s+mKWatZ<0ސo14ԱήyJX`H]63c[01-0:;].@s[7g "¬4R?KMK6!fzHՔJ >J]6rR)0ߐٞS9̏ 40aqzn]aA(</G!8>׼oɉ]$`VyX~+Wdy@x)ɭ鲃lcf&XzY5gPI Dy'kީ>۔|rY%u]6ȍN4]qedX+oH}]ਪ6$ٺ Mdȇ9i=w9ҕ)vkf"(pַ7iNIq$f] YB6uӤ&VmwŚmjȯTM~<=΅h[<>*N;+IK:+c"Bk+Trɓso|(i<G<[;:LiY{BqO3|k>'*(-qwqCŶy.V~9sBX u7@}"]S<CK zS^o%mɴLc@0XN)0xbR\R8i1HـiDحvS.I҉w @eN_#)~3^9gF{aȒ:3a)TuE}VRaa[ǘE7O^a2ْ)͉uw{zXY{`j)T=:ڕw!)͏,0g %Qvvh{kG?&ɸ+@{5!jC&>i4rtյ$5Sv; 2CޯLEr>WΎˌ}(}Acf":w|\yP)חo&  =w4X߱gXRͦ:NEq=ukZ>kn04lkK,7v^) @  5+HʗhoMۢf>e2,jK}U҅s^.xKb:S?]NҔhr㚣XW*MA]c ͒ jCx8aA.zSD  ~''¯m_MWr"[sJDrF\pqu#DʠͶ EG"a\C iiϴ]\+twL TAbf2os uMDe_vA ,Lhɋvsul^- W #Pr_&z} ­b( A6|NUm婮Xwbn3 ?/4R+"*OtT ކL(HvES,egasx-P=P]v?B:p+<} +5Em2`Q897=Y:}lJށ)NvAЂ6r,J2 u=r֧MqM0VH]K4\[ITFOˣ7x"kwۜ9}H9~H#.W$nۿӥUY5VzX>]RڌNo >!Ƽ+AgwhclC&PkR%bhtpvK}έ͆r*eq*ʘۄXw#?ep-(F6eK!C44D[SΉ]=||*+,^߬,j_4qZ<$j+U)J= \*+[x.lj,$W$Bj{Dp->m- GxT nucRc+(Qd'bxHYACߪƄnV.f ʿY>kKs+Du"=&g)_ aIYL.-^⻐:zYK}foRO<7ZGhXh3Mցř4ڥ|=uwM,RUvK@fy)fymb$6ʦ2L]c~IJC W9(\&$=@e%mعJr&5YAb D6yf_.g ܹ&Etr-(l '6\MN@-0k25!(y G;نYcCш˺9W{p>/nCF&{+p0pIHikc']ivtmtg!8-㦯D\_>]I0LVĢOYО|01pe㔅p^,bXeIi<7-پ Uu}Z7>G &6޼eجVo}yn ـ< g 4P|\L4\&xӴC!z~,YL!>oy:N:Rfu) {dskԟȼg ;XKzvB@WD3@\} Tcn&T? Q>> 1/ao{LTT-ޣHAJ}YЮb0PRFa-eW6A{|H kbp2cgMF(*3UuVv:i/3EL&l2#Sb__z< 13& Q#~YF> NqQ _\Sw>r]V$6n|nMEΩAp),&,@M& ?-|T90DNipR (LQPӟӝ >XQ ]1"%kN-h@A?&p!WG ۹:1VB|0`9ğ9FGAXGIJh0録Wnr営7 P #%D<5Q>^rѝ`|B@zpͮ 74-a|024Y%֮mfȣv{4=C&8CVa5Tq֬=nNm1Rp TmAm<~`h؍wVQ>:?/#ZS v[I0 Џ?R

XnRV{PNh͑īQċ^̬ll 0LPiSݚN>y# ߿1:KI|P\!U-Fܒkp~)N*l9fle-GXhf)ŠMC(/Q+~rNI|cw-eqɱ: 4lN!3b(p A@BqN[T/jwqobA l U,|I_!׃whiEi /q /`=9"40pnJWdlW%sW9''|N¹ ksB & C+OL,?1F( 7)+F{4`0-%ӼJ'{1 Pk+qo2. ûZ&AXdf^fURW|12S՛>r>6E9?2q9Yfa}lHQGw1*  /bNNUb'Mg2yΑ16X֞Lyp49obBq΁A <"x /fw NYd6ŧp:Ԛ][hrzD}g,f]T(K,6'.i"_C s-AYΚ:,قM+b̄ڔA(} ܑhrYzFUtB+Wl`8eX=ҞЊ=̩,aLL+t]0xw%~{?wfD6\ńHme xc~-2G5b$HNϻWR:Iyc\A9}W}L++6h@:Gx$5e[C^', ~|y)Rb|ʺMWb"B !\ZaO.6&1Q K;;^:D[$gS\5WոÒ!Emji"Jٯ < G͵/>e"QTD>OF%\;?D:CX0. M*9е)%3E ɦ21~źEz&oNkp2 E?쟰0PfՄ .Jt&(R2>V{( rٽeUI/)+rFjs~ Kѧ-GlҀuH*Ei!e;g 5[sϞSCMP/ѯ0W>wiQ(U7Osa|$:+Y Pe'u<%X2rJkJ"a l 0CCTZ}U ^:J2|¡({]D@5] 4Z żDV:n x^(PVX46oM^ g vdOQB'd*rD9h{:{xŴVy6 *&uy9!1 v[vV]]EȆ0hF+kɕt\o5zIclEtVM{82:`u@稩G"5Q|(mZ"NNC6@D1xj-pe$MTB\8TL[YM}JI>Ξw:oMD&%рD;NY cs ]'As1}=2ʁZ~nzB?F}NˈBl&,1@P?s5|ʅ :R KkgnaI]HC17ѭ ^(\(Il,r0Le6&G!٬w˞iC}$n&*g^Oʶx1зs Z6&8@4$(.P) j_hɍbMmbKH[EWYtt4&271rK#9 `USSG\Kl\rWa3_xy!pscZ hOž<%h^9 gm2M^:Bz/*c3;s#f_x'CNy=qb} K'HAKYHϮkMڶD&]FuewZSEQ[Jo~C"z3]PӦSF1t#2Q-;H@KsJ_ :t`3THr#~o>!"qd88x@v.蝡{4$(އ$eljrꚑ4q507Bԃ釡P(x|BQi;qaNGE+ImuX s/lj]PCm@/^0Lw3N7^*ۻxlqha:'N1}zNȪ(SރOUuBq.UzFATJ [@lϺuBd{>%?a{]fcsqpa{ >&R^iP-1~ f|5ػÜCA6)/b B@)cd9 ҮO&\pXEK Zi `P+?xX{ 雌3ѓC߄Y UCFCFrWނʲEoNf4e񏚥sUڭrmRyhZTE}l8M.t' QM'(` z@j|~W*W/ؾ$@:W.sd%}$LgHZs㽁-(~)cm%|ҟH,-:L.5 B:+ߐB#aQ֒ 9'XUA0!Ʃ: ,̂Js>YE!dq'^l .C5M>uspL f* Yq> "

,X6&QoԅM!Q![֔?$=="eKu!&7q5 ̖4yAKl6[_dYxfNsSH銅[[B1l=ToCS:cY -]Z6{e*~+~{1/&w ҙ^]{31 ƉhAQ"hI 㑒_ nE:^ັ9ց;?C=g$M֙U [ƥ>1EUku\O(u^ϼA7́)]M19v _֖>_{b=wWЫ\FM;s yλFwJ:ལ" ]tF76Sgrs&a~/=s6Y}1bT6>懡W%Jns4 k_9EuWUz-N9ȓh$ۉ;T͆Qw<ح.$z2 POuQ>duPF’Sk#RMF*NJ4xN꾶%Qs9|g0g_,"ja%y~3NNVo(2YZm{a Eff&Ӿ6o(( 80?S gT؃^HsznсSm Lb :giϤpüW][ԧnR%h_v0}Vy.bä=,;PL=6&n-PZsJþUŠM2Y $%~Iw.Mzyڝߩ2cpGy{!es\1- ȸkRyY" cy}W6KeIx2ݚed5rw& s Y*r'WJ*RoBq`?y]XuTW]l NOhs~X.M'잉ۦMe6Y&' hʟxw쓆Q2vyk\`2 }O *g_TJRcJVjpxNj)skVHt ցA62SnQQ* R*ϛ9:sT.*w(j++n<WkoU"zb.hh U~tk]O/M\ ]%fPռIg]l }Na>hT/ :ziJdɴYsaѺZ&s gEo,_z?OT_*{us`>Ya9EA3ฦ6u!C_pOs-fYQF ()b:u/8D8 AĞ~ =v:YLhYXqrz ƫT؜? с 2gKIpyԯ "i˽p 73 , !p O.dhg0C5bONgC*omU6:Rڥ)ޚh;%E|B-א;/QgP&)SdtӴE}HSnTY͘??KI_'A9:ern-ʪYq,bL\'egLPvyAN}a> ־RD^/zNru2؀ US5 lE,YxIkO١55֐?$ḙlڈߪfHl*J4^;%i8a'O][yy`PISGTALKT!_-.\hP?{ߍ*3XBNQE1ZLiHr7mF+ 賦uQ4c)3hpn ҁ謯Vm X[%^#/,~RP*P%ړ˲kf>={~,:d3Go:/A7-3NpRD;ĿJ N7z{go 3PA=sN*fEMl<ț*L`h,HZD/N80^Ic?)fPGfrJ#in{aX젇 3?|Bg7 n,O]2(AB# p=Z/;{U9Kg-`Td8iQFOIihR,tFWWјY<+L&(Q%ryQu!yNJ ;w1dv:|cY t1;#0&.wWVxm1b_iGJ+}G zVH!c4MSS]u&P!?_$Wϣ4Յ} sBy؂ M@k]pspaK_-Yq%ZFCdgĺ5_|r >ekju ElPf평j9Y'T96UBl.Q8ͨwdef{'MlxyK-ZPCKN]mxigyw_6ezdW!J#߸b~t]+sӠ1,'?VZ u\0xU6VpQQ-`p9-08j\5%7Cuk<dFq\K?rj=8핫 ny]^فt9_a`Ѝc3\_=4-7+.Ƶx?UH2:@EGFBʆ+c9I?Q+IxZz|hP ]&AP>(J2qq7hΙ;yhM|n^Mz\FߥԇSbN9Zŋ:KG'i 0b*]#^nӯlw^X#tgK%={f:BCD&O-)8mwkUy/L;Y4t~q2$T/wvMg q-~! ڋ?p^,y,u1Ȼ)uo##M!-?OA\pߗJbv,d" Fx{b"DwCɳ,4%'|pO‘Ufj0'O(?bX<")!rv۫P;UN DIBmsDIcW!ﯮdv{F I&;~#k .4OlYU;2QBR$]A%N>ޡ~~9)KTyN,R= Dzdh11@|~bnuJ>Z"&9ra]L1H~^Ū8\j.l,.ikx08$=c@;Ie,wl))[?nNJٲF=V/4?Ӽ n3m`[A[m?:2Ϩ=*߭Hׅ CmSAetjS;wLW  -\p7X"޽YY SIDy>-g9DYe"ݎ#[ueJSv "G—_Kۢz lFn\ǯ 4k|=6AøVx-ֿNL28 [!uZ?_U7RdeӬl=K{h=]hMMa A/ UVWL5->ߞ<~+/"풆!9 Laט~A>&_EUmhA9 9s[;AwioZj+"ĒntXNhwK><X9;w~Mɧ6b82RJa?- -O9_O+]F:cˆ -8Ö_Z5EeL X<-6DQu*->xX6%2bA&BAB5!ce[d"ac}_GzYHc#'EMJv3dOK,@s*oHF%]GR=ȜΝ[q& J ޫ٤ޛ⟮ {f!<9u=5NoAu\PN_093 pQ<߁GD<݉D=&V.Ad䛌Ҁ LQd8fsUruʷJB(cL &AwnȽf->* H:΅$އ{No5nMD5SX85PB>ӳ{ߴ&ԕ=&k0&"?myҠyKf(S] ّ^^jDы.'uy#_#Cj#).. @*gVtLXmE ~yG3Z 3>YF8 mBWOMldA)_/B4cBkx^7͵)=x B4+=L: 0ODQD~ `% (s a\KpYHHeyw5 Q"fQI +CA\iY@~%1 '_<w HV[1('hD' mhO'fo[m.bμ5ïoI&7QTN0%U_5ؽW)?'0ȭ Yȁ8-x&U vͣiH_8TkQ0kx\`BF14*]-saxZ iwۼ]lJ5A@ 2kqChTj-n1.mzY A=[> [uhˤ}˾'eLg.JwcKa8.]=haN)&\]Ĺ&Ϟ!:re2MB GrktjjB#&v& xԪ8Y ԩY+d($@V6O}&T5G؈`Fȅ&Һ9 =%^ AW٢hPc.+"&Qn3AM?09ߘҥ;^ н_Z{Eh2 ʃQ7. g/j |?%6Lz&sGd.[͗smǫ9}`u}q%;@^5W]'v4 ǸMh +뵮<hFlk.dCД_;k.!W=cvw} A $*Qb"Ŕ1Fd7֑E H${ wQ{ys善m1^!Gzzi{USyoX$ 0cӥ@'ϝ&׺^*d.I%%I!E Ι?2yQ/%Id4H:'h5Gۆ5S#K1SşFvbb'u‡٣c2&'nz-,,;`RpB}$?@V2ߥ뒜\ сsXP#a%6 ؘ 氃hrpŇpQnxk)CeM Qj خ?^HO1f6aZDDrMyME'T[݀y #Y7y ^ XXdf {q$Ez;^=lXh?FB s1GkyN+ڰ(X)!eP,N5|4b\lOk;wsZPbnΕdHac7;'iKk,9s$(q`]E3L650ӽ(p4ҶSP$4|k+k'(4dgj$;|bW讎~pfjϡU}{ l6ԌseKo?W v0(HH '|]4ɏR2##֟;3_-|Yn^6vOm/R"%jqӞ j.0&KSQ^Ci1]HI*WZ>.b*{zw!jRW.j0>wj @*4g(Ed0d!#?Z"`Xq3kp׊yvSXMz@} sk4f;Ĵ.UJ{S!R¸z}?zg)XSӮıgw@:*2U`%q"qԇlߨ|w"Qm}j[}AYl^"]w楹^TwJ&#|\ak5BjWzć@ -P"ЀϣDP Uc[{hTJ=и[\$Ln/ CfvPpT7"2CPJM5(L{ 22:\Ċ'l1 z==#I~ cJ l:9š{ӈ#GKC~7l% OEer[__nNƊ,[rK}#AhQmV1P@9#+.6{TK9K NUַ^; cq}o#Ώ=p!mb5'SHUIz;vPbD^ &B%uX(T0#JSbD\sA~U#b1Xtʽf>X|Z\~Ul{ӽɐ%2"1cQ|je:=53Kҫ?)J\7M]˾ՎLB}mXxs9!rk^ޭNŶ \v9^a!0R[YTiG6No.妟~@K6k.4LDXkfr\_DEQDꗙJSޠuMxxf >Trͣw]}_*4%e!ۻHf#Vr1r/*R&e6oTZeIY?_?S]AL&2k{qطߔa0xP.`p&YJZ!_=,yyjgLh5[4m12]7@VQˎGOD r]%3=0q@@ft~68GM@3bԅ]Z蘙#vF͉ *_򂨀.>d@FjMGkGRdy+hdcڸV`Q-?S`ЊiUl.qDq]93)OFեK7ne1b_kE~wh`x(wC9 0pל[v,dEGL>B,kWi'wh2 R1\j;ތDiF?Giy}(R3N颛3>)6:/g4'h{ew$N?\[K3qh!D-YimBWln*v!i};%D[+ɍ_Լ!$]*C g0sNaD˹Ś9v/T= Mv Om|d=7mejپ΍ ȚmշUp}_2I~J)FLڳoF# n.'ThgQa]}G;?:l%qXFdb)*٥l`3qiyẌ́T=[Vw8}9b1eg-?+1|V>n28g1Iu1L;⹨ƃ.B,q|Ԃo ]'n-٩ț%O;/ x5 l[26/d)g2 :sfNc~] \W&+e4R'OVl(Z2-k4ߖf!P:e"D3cQ uVk8S2 hGO]1R.Nd$b ^ю@HMM9/]qأ]Ki-'Dเ:N 1e3+0M.?q߳(k;#RiZڂ݈%jP. &@OV jE$2>_v I/o?KxKttjV\ц(yfR*DlH6z` œQ?N/PpQA`Y}ZJl7#׍R"@k%SLO8!yl?H14&<! ;\þq(uP.cRṕSY'D"HG!5dz?v7H$GW*ᐯ:> ƜD"~ ?L Jp={!ڶG>|7 z}ՉO ed&QÐw!.&`oYneVyA ĬzH\s6ߟɽyM2x;ݺ2J&+MZj^=q$˘\pRg磄Qn(lDNKuu]Cn6/Lz1~&]GOmyz,vt ]=^ZO!gar2(.4!i vIj*l7R5)}-Eei:cLdA[4H^wZ~H_ $S)p'oRHoNޚ'h:E r;$e2B xޮn]Z+5nzw2*GsQ:i4/7Ry;yI'K8x!sa\frtkM;|Fz!#k96/"C'J\m$88\NRzU&FTɝX.4z ^:lfw_ 3mVYN$:glhe6T!S VZ1אՏ(phEijy|:k|ғ/.FOB|diI ;J`a jO}7Yu*J rs3X1^an̖+rݚ} o>?]N `8Jy"{tbcka;ˡ SaJ2pUubjOoR'Tq* Vcb2DkW rSWsEj;[StAf.7XQ_m3#8OSS\yk0>{@2 q*e7az <0Q|胿Z ^\DL4%4.Բ8<k+{n_EP-y{-c5j-j(U.>4HދYsrʑ^'0p_AhmAv۸Zxj&["Xv޽?)gZTEHn?iJ?nRH*<Ū~T2? ' $ԍyWd46`עf0[l_@/+qC?LvRci*ڕ˝Ƙ3 㦧 zlgIwV3-m& V12ߵn! ROѐ1'=8L ,MqXqÞ)O]^8ƽˉ9?XQFM`ʈjPյ:_j]7I?yps Li_bƧ6N;E΀DP9^mř]Z+(~Ԥ|b4g_[i6O慄riVJzmq"]X17 viωx+P)[{]%\!bAQ}$Qodž{f p?*^?ٚrn,;ѻ`k25 5=^c* xdXu5?*DKKCI0a5@|ZNڦ,Fmbƞ>-"pppgIcϭE$]K?i?7I8~amsĥ ۫UOZLOTcy1nf$J핀?V~ Y HQTVly8PxUw /EL ]f Z޸Q@+CE*KȥDvÒUtQ0#1Tv,z$[#vf9ƢHitCZAQ4ǮͥfpՂ{̫.0_ըx!siFҘr“W~8@$zOR lN+Hϝ w.˙tWyގZ>r!r$A@ KFXiAl!Ȇ܀O@ jz S])k U=g\~"ĺyKQ4.=m gDD1̀-ő&j^5z<զf;i"n M]/7-gsC==صEǛd7S ITcJؗ~eOLY#iI/r2N_#%aӋL;ԯzU[6O2 X FO9ylKP RIA]0uJXrͱxًJt+^ߍ(+' mO@#FA|/<&S_neJZbr.R˳u6W\xt,pk>R}/OwCQ#{Qнp^k{&1aMNfxyV-V!RQ<]fJ-uOrL.7d( NȍD?t[\64&S_#H/3]8'  d#v=+E{t>ß QoРȉ1B6Ǩ2?tf r򘌐R4/2F?˫5H`R@s :s1Oeg[]=p]tUxk߷l{ t`vㆮ~\dt7쟲vHPUVvIPf*6zR$`0m^zauA]_Ѭq>Ѡg^tjk(Ğ% @b5|`O}Qӛ@ٞ#zã{l dhZ(ZP ¼n|Jh"-!ݸ Vnf#uAg[Fmwb˿Q;ڪV+C :bׅѺ8oZWL`>kƥR,:|fU!߈t#GO]wTԤIdTszPJZc&'x| ԯXf.M#/Tb!{ьKb2g=]+ȿkۖ,}rzJA4 j8t8u2h`0h7u"wr6 hýUr`[a4Hvbd1<ǒY 2{:u(Iu %zPu_cI,m ٢_(*rmZ%7Ms6X{V&M/-4)yc5h j!CN;˛;LBr`0Uti?jõg +$7$!0 (/ܚ4il,ikM0R"[4"KW5Et5|>лV T^ r=VЀ9>Adמ :VNdX}@7;!㤳PC[wÚ[dhv^{܁obZϱN2A F9xGw>]>nVI%\mporNB*1<\8eJ~+YbɯlH̊[4XCZ1lydޝX\ @7!U ՊB O;Is3B#|Dck'>t/{>) C^"1GRlV`{b#țϠdtpȔh2xj@O%<~)^8vK'<_8:uwA,#ocD+زI1 S>7$.Q6iGy(M>#+wmЉ.FTpo_]f'Jg<çNɭ{d9gj)Ɏ+6j4aX9G g-XyԻ0Tw03yҴ$DD gN:ݕ7 Oɿ^אy.m~1%\l"4%OjQJqwύ:W@P6ԩW07ᡭ:m1C;sJBBP\]&WTf5^/6!Xni2\4LUTY:|,Dܥ>EqRLH2*ꈖ|soѲoR*f>H^.pB9ǞP yV{"] "R}w~iɚQe# G8%](Q S\H+_H&zߝK2&5b2H]Dg4gڞ1sscOf Ҕpjb5li˂#PX%}J ~H?쌍qvg7 lv y~@ a*&,5 WPcM5ܶ#Zn1VjQd_eϳ9\ ݯ׍4=ǃYt]ĩih=kc Ҧ `ڤ)?rC ́00OB<9pzSa@-!Zuf1@2[fT-[]EJ!2bMwKmԝ揟Di#,RUA_;ޏ36yP@;ؑz [JbH:wz5yjKR"?[FOCj|x{:4^W=Ɲey[U5t?_F=ƃ7)qOjRSeG|㚄0Τ7UM2{T%]N-s4}4c!r8o{q%U__5ȉ[/. gus@Nֻl ,E6 ~Qz.m85;nVY;u2?aͅ~# Y$5E 0ljt'6j$B7\D6[5kp .0_js&wJ-n+T &w{WCKt ٛ*W}-ů*{SN"s2 ө+<)"Ä<)4;E.nͻd"r^ yOy ^l]UZ%}#AUoKx˖?\❸U3|U=3+۸gcݩZZ"0g~ҸUVp!$W0 Ќ«Dd*η"zD}xñCR{I9 ^Rw| tQp D¯q8*s/Zʆ8@INĐR}ԿB_PRhL< Fp~i;t֞˸NGZ6 jCG6sӮIVf9|~Φ3飃 /=vyC!1$VadF4X\񀗌vxTaZE 4( :%ݳn!&W9)WdEM9}q'n6s#Il,]vEݥnS%M,r-Ji0V " skLt ݧ0 7C[\+ !J?Z|q w8e֊^;|l+;~X>蠐S(}͏BLA3 "j4ܤiOoXB_ڸ֝]϶' S Ǽ 5WIJ/of+9i]S#GPG\ Ĺ^HzI5 {`)}xe\MdM[Eߜ6e^5XM~#'~9 &SMGeWjH\J}>7T/?!*&極'~,1!NٓOG 3wQ8xqV=O#ZM}-Hld?U3B2]\e{`QE%I5+Uf&xȗ7*(˄E ) ޣ)<_$m[7K L3};1aƪ'wu疈YPv!r)dp 厽r,u#J`IP<].eZs;2Gƌa냨#F5P۩& N 6^jRA0W#r#yѻγDD(NvpS0*ʇt#m"e/(lOn)%%oLxUgN]q J)hbzyLG77U+~=-^+!hӌ)=XϺ=`jh(ʍ1*ga'-6HW};dM$ހAU#n?x?=6#6gMS%x Za7gE l ޼zkM4 d(c琉 $X%= Ѫ)*.mM%sz1"XeM_^Y~ȑGe 0j %bk d!< n'n[4WO /ޙ[^WoNΈG' x`pTEJ&^M xˤ?^+*DZaǃ<4U)hC8{%GAmu& '!Oh1ry!GjYcK--b k82w! v6l@L8bv l.ƸCM[o)8`jaf#Ҫc5tl{x3 JJ At9a]16^ +KYn H#T6"ECꩂoщ}fGEagRrcTeyf#zGB%2)& 6QҬ\?ծV ]hvvJolmٖSiGJ)̮v"QZۘ=@ZI \hlFܲw^!%G5m`?a %eXLkfi異L=o}udFy4p/S_8|qɆϖPy`nv|xbu;L8 Z҉" O)hO!RXg*8 'u2٥;/O; }v OCyvjB jOVNlHzwΧ ^h"LBn@0T@s*D{Z b(hZ 0\D\[e`Pf n7,SK.l^YMmͦFJN|X X8(=PtX uW]_oG6%{ !hoO&Mk"0a&V.*[az yj:mZ;a&@ߡNI͘9 䲀Mb;7H>jLHsf _Wl>gcԐ4gQlK3f| e⦊om/J@E~Wc߇4ظ*Gޔ@726=]i!"NO+>!26ёy? $Rqw &hՌ1ޛ~xCY佨F-0oFcTKZ]j zx36W]~ѻØdZD]7K.914ЎF0o14j>ߕtMLu"1:TvM0K8MCY'=ihsgtngέtr#/4 i-|੃'Ƃ([d wo5efs i?͂s <  dD82i-jeuHDAyhYAlN_Sq6⛈z,ok-m&EV\C '$Kr~EM(O12T$dpn=/iuoizn0(%ei? ,Z\B G #ڤ>+F Cn9<+hkܛ9gKgq= t0(k3fsGMvnb|\Gگ<<p2#UD+mLk G\"]- QSB1XivlӖ/M:ZlÃe 1 _c#Ihhmg|z'55ڲu"}^=B"Q,3woQj.:h]%{EӨ? kQs  [;<N|xJZіQh1˽ LbTH-Ԑd{b IŸE9Y% 4| ݭ6~4yY,S&۷[!{x4ӊfx¿+/-޽]ۀB#Q ŧĪKbh|ڬZ)sFʣUq{_I%IZýv7r ^lr@H_ܐ; Wi0}zg?ȺT=AFP!b_#B42b{m0Pey~`2;Y0O?5uz#bnnđ9C՘ola1z ɼjh 6&CEs:/~'c٥q4mLߪ9AH;NalL'Tܕ*XB\©ɇ} 0s{/UK7w78804SNIhh|;gI޹OܶK0Z>)5No<9P֚/Ҡ4:ӏ9=n~N Ih$ylE_W;HfH-ˉ"0&kS*u:jvM[/W呾0=E!L]?wǪS`n,ZsznOUQuFȾUPvcSEK R~<|ɂg2 ~*.4H˖ nr Jnvv4Cmx߽:rZ\iG_r )!APV,B}|Ԫ,Iv5 X )jXڗ_}=j-MѯP^Kg:XUNT37q}"KQfl$Э/N<"mL|E|O:zc3򕰭 ?t_g#/Sw5G\MLm. L -EE Z%xQ"9A0i7Q~x]%:}5mn폐1XCV*$fF`BnX)9oܻB˅_\-DnY-NgǻgF^*iQ-+W|Xg;6l55F#v˦*%bjH~\F@8HXZPx.MSOgiЛR r|#R㗪Uyi} у_-&$o穉 6l _*y2JHi_ya=UI!(p[bEv(Pqe.N ~h^HeX\ \sy ̷OM9^D0:ZrʶXYؑ_)xĸ/r :L] -ԶLQj6ρ.2+ސ!|ad vL؋+U~8}(vw& WY?F:SJ} U#7"o.ap[f's҂ikX'cGrm!,S,.c ˮ1K=sigԇ<5D;tay!5.g}|3z^=\q{f!L+_\IJN;tU_ ;VQ|=w+o5Uk9c?:N,Rgr@ !cؠ~N/L&v1:y  1CQ$uP  @Z_$syvQQ3##G+<~`2$ ttDf6riir]jv<~0bkGzpuo "1Os;0C&v,uttr'<@TǵnM R&D:<Ǒj~rAa6`|4)x2*p9R7!B^":'<#Y栎 MewV nPHjs:C k'~-sy{BfM]ʹ݅l&S[C^Q,Y9(9rq.֦f^Q!1}ZCE1h!kY2h 7M:n2D0ܓ au V- -PL|}dRiYn^v¼zOe=&zZ:$ E$z Fj|+?ĸ6՞XIeE&fQ2]U -Rz(ES)%sU d*6!1 s !~ oQ HyXǵ 'g1ADyY]nd C껅UsFk)GFW ,X +Z* ·lSfb1K*ٙTjhmqP f!}pE,3{ɗ6oP̲tќ^q˻ȋZMn>I\*I>xY %`޶!D{DQ<6?#\Cq<4GKrt_IWhB_|dN,]˶D .Q:5i@:_ɀ+,Ĥ$ H:>􄍴 :!c䁈Ccwgz5!5&|JZan*JKB)}Ӌ<54 5bjYtY3 сѲ\څX xR͋/8Kkqi9=(x:3}^g_+צ.d㫢Jv y1ol, MR. w-4+w rs Cc[=Sֈ,O* J=߅wZc0q}](A rh|'NCTGĞpNF,?_;ޘehy9s䚖›,P*ͯ˨@̀o6u]Ijƒ|J BCE*Zl%HpFK8];KDh3)|Nܴ XֈBjU_vaC(!QUH׻un zΥ;?H rru͍ %3U(4~ڵBZmLN0|Ý,X$O I-abƲu+]tpݚ >j珔'Z̓a,6*YwK#9&hdt;,ůVpgSQ$@PiG߷2Db~T#Ae7#K4~OfIUqx0Y<[uwءmUⰝWkIM&Mw6H8MŊսC6X.c5%Rq$OßiP|r-ccA4C k f"<[^_ *[DJ*>̉G=HXQJݯhb r^6.*r|8z~k@D/LwG;: +z%vId8,am0PV7CRX>}P4X۷-칢_Wcȡ?㊞VAI(,6Ɏ`xc (ߕw" 7jϖǶ&:_g|X{AvhgGyN/Liqj&"wNs(G  CQD lcB[j(2r3Ϡq*je1o0?֛d\Θ'{Ԗ-0h23~cv [ruEpv3XGi0{(u`A3]΀,9GBWiA)Bh#`&(ž@#NdX`jޛ#sm- QQZ~Ӂ[$REi="AavMdݦ p2lL0?'t{I2 ,V&šk4?S1 [ŊsN ?\?WG>1>ebʜ~՞J'{^zO;Ux_8Kl}O0//Rׯ~P$x 3Z{7 u[$3 zU'ךQ;$XNzM=NZ Rq*I=!*'NŔT\CsiP5z&hX >T cQՀMߎJ" ٙȷ5Lp!(>[gצּ{6r;I%xt0mޏ ϳ>@ urĭ!cDg[5pݖT9ĮKu͔"5aV4aռϛmeܶ >[ ֜iqMU%]@cf#SIL ƠR4%ԇ},i2?4-s'TϿMla* jQk#5Q/NC44.Cɪ1++ s`9ÚR/ РM!ra*47]lXr?,W!!o0$׌N{wƵ߻Y}xx$b8HO]aMKZbT/ "GB~yoIY}4e\G &;2YulrƞD POXM*Fh/+K;}-0m2݆~Яߩi;5E)WmDc&B= ; >l>`~"j|8@1gy`g;lr|K"fnߛj$ X0xJ0p]?f'NfZ!Zxs&sdC/hĪ4+zωRa$9ߌCcpzc `$V"f!"ls2, s{ɋiJ h#-!LQ姌UԼ=y<SZh)M)W1{D^FG^qvSdG]rl*_#[2__ nLaEXU̳k.ѥUIȔ,~=شF[2iF+ulHi#fK1=ljV)Fd0轲_#g+޷.D"+ ^L\2b!N,<&x:%Fp, YP"^;g?}L~!F‡ƉChj׽^)A%ZǴ3 LF:"m1ZeKI0>!'\>kXTUߗB2M-&pffaS7S_5d#A5#+zVsqqu)%]V&SbC#J:6G6ȡ- ]K,rSDQyًUm=]2 ʒPn)V-&WB96T$ [;P$<7_qcN3N(6'8%= G_PdSi=!*Re~]Nh ꪴ굤b_l' W>|w] Q:i<=ff? 1&`[l(p0DigȀ#yEdHA 궭s* QÀ]! }Z{8gbiq:xUIWNw.{ rc%YZVm){)'7Jɢx 2jʼK1Ht0u:#m!]'}њ)YU/ EMn@TIK NꔶA%nB,ӔB6f~׿VDTB vUs4r+@kvhK:xe&wHd~aqÆo ǁf& *I`N"(ʫ6ih? :\% LM#лW%NL]t[_Fߏ=sU+GO%;|A`ܹX .ZEt76>:;d"TK{gSE!G8(:)Z?.2</]/p40QXٴ,:fЗ zW鈈6 /ICP)Ep4*Q3 я//udpr_|8R۩#8 贸̆ !!!,}$0{%)ogb=+ PyݡſO2$ mVlT>dYɓnS7K=9XHL|ZxV{=mim&-\6M@~-w +oJk<+[gW><2\ɞ+1(ڹRB>i1$QΫVjSzOkvdڪ?reO oR 4f7뙛W?-r/>U7T-ҕS 'Lmз7M8 *=h/\ѫ(Aj.}Ċ YRّ3ڕvSץ݆X]Hi#8I ;TuaKbLY%#*(`>!݄S~omI~S0 Q Jv-kuFAUK<ѴbJvK_ԶmujkBZCRw茖l7]9~2u2-ZjS7[bM z+!W!XeD zo*Uf[<`I(;%J9%C<وpb3M!TpMnTF(yQ&JC YqiEMܠK>C7: Z ? c. "Kl[CIJIJ߼6 MÚ3`kO]GܦzxY^ |@5y>K|MQ.0Klݞ\O?J`V+S,Tɚ2oEM FR`jO@~.΃k1&^:r0#tv* sU7OC).;+uq!3^/-񚶁Qa^<IJSrEa/H(㻂\AׅU$R7T8Z؝zbU g ˕wXuN|<̾(~ Gz"ȱ_RBˣƾ+{JhL=WֆYʍe;ZVjG|e<#GPoHyscG59r dIk^I$PiO/Qx'ɤm8+3'Fؕ~E58ɘqڙA\miĚ;7XҊI;̨(=LSZevkU f:4)r4gܑzRdbZKΟxL6hs2{T">lMSCP!ބoFNuj['"GvNȑ2b6.3nF_NJZZu9-848+H ˕:xtf2kbO?<ʰ1I^( z.1Q$BqyHH1$0 :s 9ݬPE3$c:Gܩpv xϑ"Hyn>?VTg|t ʒ쓠G d56ߐE&VQҖlhɱ nL/bȵ XKvPfS?˛Iqu M!i9Nq' #A wFmu;[q˥kPQt?&|A1Pb' Kc0(`#|!?/8yв0=;lv-,c촭.k5jMCqY?Ekn.k,sC5m+L0&\htیJR>!| wďG !ApHwu}1 98┭+Ykw/- [xbC\ΐf_vwUt{rV ǡv< ;#hO F4 ͙,&.Aj9^|r$f%FVƛ\-:]0ԟQWQOdLVixޔ81Ք(%%xaZm4 IBމ阼h=n!- ՞)P`d|@LSo} \dρ5 9/ra aYf 'I7~ZoOн?'H[ t H":x90n-}Y%te>V815Χr\3ea -dĊ8C"5LFu*<ˇ\ّt l`L;qLFuD>B.ؤ99QDU>`"%*tǸRX j8QD$*A:aqTtVUsIH G(6JZn+`x^'xj$x CZYP]ý"-nAdHqvv'm8jKX3EM!rE> y#.oŹv_f<(QL)"ߵx_Qeu);jN"P[n]`ݒ֮gI}"7VUk`IOXJA-L=hfQQx-x8lN4H#"z9coiY>3u .tgŗC(ĊlT4a{mn aIX n3?1t?r>)dZˣlpc觿mGP5j/U^Y)c}0Ho(DKo l5M6 霋 "Ydd|P7>๐Ht"}]fN*-XUdG݌|JM)VZ5FdjmYUJDh++w PvRk2z T "vsj\sP0?K0cc j#Q8]fd5gkIG -&St2Y|Tޓ`~hy@m]gۖVհ%TmQ:^-*?n}; &";vv*!AnA\h7lgVvd xQo53nU|l]A[aeeoKW(U4./~`1q»Y*g=w)+I!$OΖ~I\VD؇u7j</B&p(gV6q&k4|@Үzn^ҳ0py^JW)g}1k`|>tUBV+_`n3# L2lefh6M/#1x^Rr*^l]}W[ɑzA6j̑ ?&uXd}[Gzi(4rv.?"87nv :JV0Q1f&<* tXlf~6ȌsHՏ}ӿV]vt ,1nqm>37#$GPm^h JD| d`gA߰K8 pZX+wz) kZ_H>@k5Otubܩ$Dy Ρ?m`@'R>#)Y!٫XR;N%.*^ 7Xxv^p_|Z[|1nbR-,#Ht.0U7܁ˊAdnOm$x+3Rmk0rb -1[rBBPH$AZJ~)] N|Xh]-fBt&$8E ȗ0F`Fg32"Ǥ~1;(;)S:&t#AO،URU$X$*s;ݣpZ$՛{P$5eCE+|_$@5H/N3Bq2>svpHbݼFizg0e҆]4ix=i(hLx[_%4}OYKT\.ՙ] V/]e>sePWwKoeHUi^-70wm4ODzs;sOI2Dkp@;<_^ÓW^a5tEFN9uW5 euxUTpH;TDl`ih69b>2` 韫fK6lNo*3ylK̭`;זNyfc^V9#\ේ UfgO3o {E<#51e_P:WDkJk"Fg;#>iҤ dٰ|ӊ%'H8urSMQ-vv.vڹ3L¾ X!޽ " yV6柂f!mKܢGAILG-^if ٧0AD ˢl7"pIK^:(dͩ~ʞB"@PD^g..9x!5`:uPNT}@_WEZ4 3 >s@8J'a-Y $nX*!&{\1X?(^Ŷ&5fB;'Rr pǴw|IQAs_ML+B\P%)c u}Ծ2/uSF?@}X&zjsQaV [kKHHփ-Y)J)i5#%h&ɹQ3@pϖqg+3BJ,Ő6LF'8nHq:A={!X>[('I(sUaO%/L|S# [eBb`FsD߮pio xf4Q ZcJc{r`M}*$3w91+<  sKD1g xh{@*3ッn~2$0 9vNl|}WjQ( Zg>p|ٽ4V0D^ =bq4P0;@m>c"~GBN"!0ЁFUӂtba`8:KDL#费՚62X| _pf3^t)-t)yw m,5uv@SY(TGYi_E v2x wL G5ZZzto! Eʷ((T<G.|,!N7YL!~sW!13`~< g{(to!$=.u.ly,O#Ɋ lUcNHS3G#ϵ7 ad=Xx\O e eXçm 'yfN-c.n|$Xs;LA@&2^v9iHwg4ϥB<\M|pK\6[ Pi8%BS"L[%1wNH]5go0q%(F3 ݎS\A%@H9,֌͵SKWj$uY ^bD 33`NN >NƼ4Ρ 5{;Kਿiޢ~X/":os„O2%~?@םRu#+%|Hw'ă$J2Kd#r3a`X;@19N#IrEtw~@n2;L;k&}.hv-@1r•|h4Bs n83c֣Mئ`#¢xh򓵄 ;FeA5œJ#?H]7$2znX?R j:  BmY<}wAzϒRK~s'(Rg ۮ>!\6,jݤm('@8+-l[3V?lBȡ8ZQBySa {g39 t0j5Ls0O46V%>˲&4ohftVy(N )A{3s@H=ق) u9'Q]hsYsGBdž'iu=jC%ű%O 5~ t wYBN"?+ Ӈ3,Lċ$N6)BP]TEF߆״2ﰒ2qi2\kZ=9RbmjuDTDA@GpZJrK&:\5ˣ KG Ax g C_ E x_p׃߿p[{s!GcıXzwC$@/8o"Q[WJ%F"ɦB$rN7j 0&b0ikӗCz!_LkHԽ[ʋٓT wUՅmq E/9#_j#C(` ^'p !f|.|;!nkUc悝yY;G(rGz޸e$z"",-aҾ?aA^MK:z(~8;"Ƨ}b݊ YK F=XS]"-oN6*T2#C xQ ؈u:oLj4(Xv| 9nzsa@N@r$ҋ 6ד<#SF|gv46pWQa)|p?#u2K-tCre"7,.`Cbհd+~38΁}9ⁿPZ_0zs t!?N5Ycl2= Ag @Kruh\V_g:U`ځ6A@zq_-+F|M7d=3;52XWW*N|m5'1)_$|āBS]8OJh2ӏ!E3m^e#WVPQ,&>Jտ2pH.7::3NZ^еj2ϱ7 ̫%}+ݬ#]A7"a&4yO뻍}@7yò0Gmhy([G[d9VCHo}v a(vgV3 @]yZ# q )y`HtO<;O)?Gt'D_:2O ZFG2Њ'ŮО#0d;D^b0#̈́'. QA)U]F@C qQf?q\IK_RuK =7/}ʠNѕT}H!gK*qnJ +-HbSr3 ZTmF_6 9ƫ5-Vxڨ7اrc5"irqװB*: r519ȍ [937/|PnHPCQ}4dz4G?FM!2S}Qz@q &祉VW3I'KƓ鞴@E-+d9PS-~Q1U}^I6\ďf cmk8zd#~vP`=\ѓ7SmUR oirܓ\UqrעyC3npXyhGu>#ː,ޏOD) I [ ɪlDlxќz@Z$!s'?*P85ռ|_ӵ\;>5{0Y{` %]I7jK#w3v'wq>;iZO-1V \%DpP, PVSNiK<,&`O8P*w}zv~;z$O6HK 17STHl0-,?*{5y3eb*Vc}^y SI)/MrY:!.Qy(4K*t e3"-":7Paz7^᧯޽;#a]͏N 3J8XA]o5pq_B64J=Y]JiMaDhZX:`Aeu)ZJdX4]9FWƞKel(1adR{=r݌ rgB[%^)1^C4U4u݉uGުjm#E'pԸ&Bզ̋cG/%$dS8 ,bM `.D^|#zJӘ:[1 aTޞeql]7Վo1ʴv ^^I ]e*L~ =#L}Knāy @OCܽ;+L_HPUfYHmBت<0&p3hrP8^dqje<ZrݱE%w TH#$Tm{\,ĶX~i9/ Ƀ΅\cE1Ƭ16YGlkf8=BhoK6h~yh:ց޴^sũ E&N +4nuٚ-dY}m4k .'&pnbY][2\4i\)loo!?=2H,x?i?LqDLhz;`_Uq R  l]ҵPpoaM^2!CѪDBem4TqdnG#硹yyqd lj!W2^[gT-sQEDamB*uJ.Bc츝WqZX$Ǐ2QQD]}f~UhvvNzAhA D7f'scݾNd^MUlhkcУlR̠0Χ25FFN%y-+H=6 !)8dYF"SU?a1=sASϸdL\o"?O/K? b2͸Q b+4+ J)IhJcֹ暯 F;./-UҌ_Óc?:tYX8aIlLF$9a miabz.ԓ6h.lXږ&Ogd- ad $Py HaG:Q3?MD\mt{&\hrrXapA9+Yݽ2|aMxE*.>hɜPOb,KŽ~ᛸѬmȈV  ?"}p(.>ubnzz owЇpPd">uIwOF3&^Y,_HK ʇRB0ED'(!罠jES87 cM]N_u0{o jWsw%TۻS fށGKCwul7Ѱ-Sx]?|4~íiL=8j\!KY`zZb^YX}֮AasLcx0(lS"X'9G>S%)/ +s$ U'H~qE5!>r7wcHr[?a`5mHц BYA5@Y֙[PJWAsVe{]KPjk2n+qnֱZ9@γe?>9i&D6׈PI6ѩ;{'t<4tApU+^Y/ljٺtP9!/ω *ZRӌY?8/6t:vG)؜b4aYs >Ya)KHHw*5i62(p y^0BpS]IHXqθWI+ .WPѪC,ۈQůͭR/{A̮ 6,(ƀʐ-PbR7Ktln~-V>QD8f 9E5{1.4'O{OF4|t-m(}B1'q o#i-l^p?d,4xT%Kn ]iN݀R5 f̕&STb.SG7KfgpXE69cֈv2Unru/n o VXdRl yFg3,E ;lp)c! 0,ܕ(Jg]{yA!l:eDY&g2䛀n^^lh͛ q3nk0-;vYC j𫺭ˁՍC7UgzMYwj]G<'_IH1a7(mMNDTyVAhMX*u 7O Nտъ_q:L8)1c0_5k(~p׳PDyՒ>o3o]%/R#g&Yzl> t89,r9oa.*$yG\דw9V236 Sѧ=6Vm@K:Q:^-i j)Υ5G,p'G?j~x|O_bpvf2!@oU2)˃V+aIsZ3xz\kHүO6s´j5O3=]Vh&a#tZ#h3~‰ccs۴Լ:CݖA ^[V*36 K}b. Q=NIH2RdQLjkDl&ܐH>4/'Wì0+ 9$cK.u/A־q-nk"Zw {G®븒.j 0.;Q5 |L|~FxH?MU9 ҅kFQוd~qRw Y4#r*%ݞ@`IV ţSI1pwa,pmΒ2 8I$vs!还l &KTv֬G2|qV$3[2Ź/ Qck'/.4$6v ؋(,wv~\ϼokWYl~Nbr-E-2\Yyv 8lM^f8e(냡Zm̯3dQ߼>KϷHʻlN8fˊGRfE*#k>MWy\!;;ĬZQb_LC,2 T6 e+n2ЂWޓ;zg<'0gU6+V 54@DGVh὏2$:qN.47fKG,'hF"zK*ħRG-C:lKYY۩y{N违#F/j$ g<0}_(u?!!`xrlQ,}2X<' B hZ*8RJ^; Jl-$R8[jAX̍wuWn0-E.=xN@/c6*ǔPf u9JVȮFe N4%]8q:g$,[1\s]"Rf$lЊgOWaڦP\oGx4}ܿzJS8w((T^0z3|3G8𽙂\ERb߶)ډ<,̗׶[ Ef F50m9-ήߢ6,݋, ^JI@c% ;NObHBj[feJW9Zd-pWkIL&8pf" ^!<{ÑcKooU#ODG.:yI]o"Y0J)B1r\aNvb=y4L"iYۘ<[RQ*K@Xޭr!o)Ag"d e@HuKqRa +s,4dCS) fy&r{!&rXG{dKq (KZ8}4 |Z:9nm%dBpk6bݞ*VD)ЪV LyGqˈ2_a8nW혇ݦw憎6hh8L{0uѰe!~wX/R;hcV*!^r> H/4h&ֻ7"[8iDv&b7] N}9{1,8fG7ˋN@`[%G7~5ڔ eNg(&ݤG*L*~/tr8ƙT;',c+ v؅ڞ)CH_uEJL!9+gzʚiDc/qdSZ,1kcڼy(Jj; ?$_ #;1%MESnbΕ܁+ܺiV*R<ݕ}> ^dJcC?$6OWR:.g۠4|{PrS"qcWviK_&92<0GlDx{;pժxFzLODٰKO[d,L}z([RHruH&I N4LIfݰa(W&]eM֠*w]7Vћ}3.;,߁*OX I+H\|,y5  ¼M#p6,b1 ;7gZ9*2{gƯPi48m0 VR-ƹ^M)ȩb(CwӒmFg[enջf~X=Mfa`!M=m+/#ىGy:\Wch!f/5!t$ `!%iEᗾ~d=}W[cGQ-y]eUb-ڞyK>=) Rm5$c񕷷E84slKݤG9ʁ`[:j\'qSFb]dMwQec4d.pJ2䋇8H &KW;-l@Pl|$dZ_ld>7#`Qz kălo〾e @ϧTW2 (-Ph_Y'zDtZ?PH;L8QNaؽ/?  =" ,SEzpS7XhU ]1jfu <޷$ g|CҭD }m#F(8`Hxbe'Cupa4:f„C "$*vԧ>:tJnAȽ0)-!wwjث&rLۍ- k.֌3MwRP͋u\T%`0@3~Mz@ULh$z $V7X$& `8k#Pkwga4^ SGiG4_c}Z ]+]OBkx! K#\uΡ@% _}p[ϣhFfxy/#1}Һ۴ cU̖Mzᶞ J:R׼g5ޠ>8yhކ4kYD夝+C.>aVG&[Y 10MZJݩT]EYU?TNV9]闩>b2AaGv]3׭֊io!͘7YNOBTk[P#ٖu(&>~b|[ fߩ=%x%GQlE; أÞ5a%bKt%.}kz~b8nN{XuO@'ih5a|ć230O( )&? O5@<`{8FБ#3!oXB= b\ opfOo'__2a| $1*ks`d3,uV4.!Lۏ|,G$r'M Ʋ߈dFu!J aghx1$43Vic֢35>'MY\rTb𢬽"a̤R6IC(]8us^m2\H9+JO$r^r$ی.(#£*nBYtn XD0-~R{7}벳 EDkBr-*t6qIc'愁h@EJ GiqԔZyHd.פƈNsh(j[;zc; 2[|` E{ {i[UH"Bͩ?re3ud"5>Y2ݼZ0c_Sޯ"&]t)Nz(|3%^=ֻSJ~,Mi4VF~ˑ-v8a$}/=ߙm* ȁE ѣ^YXu14SJzk*η5y{VlIbJ`Kyr !%kjT#qѐdmR/fzR\FJ#g7".;\i>K%qPpHI3]!og)p{AdiUiK{l9u7_t\Cl \\[iBip{R0N-d [d/q*CGO7 ~UNټ \OvL6YRSN׉9-ƃ\NޞTn HEAf>D̝͆a?o0Bb¿@A}i;v\y(޽ڔJF5ey֦7~a׭Bi S#ЦX F"hS65%@şTU $Ge3@9k.ah!%KJ$6\TOBK/YZ-mN*5*KQ.,7>ӶR:/DGA| "IM+¡ӮHD1j5b[5*:o"5>ûDk CDJ R6*w]Ь sե7Z6م1o*×=ֻKqœM@|KbW3fUmUq |g|ǚ{i1Hwԋ+>e)lGT 4Qk0HgK*ߨ?;#zXK:0Co"XuςnZ}j41la ׃ [U0+Cr`B黾:]bPڏrPŪ=W/"$ڀjH?H}Aer8moP^^ưl^7q?a.,xFߢkG=F$0] 7yeJJ+Dꁽ:\qpy)yɝ؜?pQKvP(nfO4r ncu Pvnȼ-8Sʱ/M"῭G#.D78q ^}#3 m{u,- T*:D~ #u0әUةı";DcrzxW.xPG7Ql՗<\Z *[ÿfϋ2",sZY*H*E^%L;W|AIՅbn{/?z4 gNj).HFԹk`31BW+X҅jv{|PWRlz׍\cqsY#w\k6{44#TLMNn]͉&uyK]yf3^tPM/,1;BpWB.Gu5]xCECh|כD2o\xS r5P]o XfUs`AwXrrd ~C'$T &xfQUz p誈&{Nybzi1F/WMb3@ۂƒveO,?i xj#5cQ'hy)!A5./+:Q l;;Y}_D!j')e-HC `yD%$Mq;17sDR^VTi$԰"˒p^g*ֵA8uu \T1db8 o8*6YSeӜ_JX[lI;=[3_̩5U ]ā7NO@&ek 8V:rs$>VOvA,"\Vț>kgy~_mSwS⃿)chp<3)N4)[uHGQ-۴ۓJ7?ы30r^)QY@C]95& #CAH~P"i GD~=rp[_֒iW2FAb煂W],SuKX;/ԫB0*s؟䅍}5W04%H t&T^%\U(*oV+?1}NTnU6!ѹR0ۉo٠"Qwx>~1*Wq_'>_Ƌk;~:#bvȫGi>I}mb``:jD1:.xVxJr9i9@3y**iy!h8*- X6_{FuMWw*Y,O.{$GCxJ%e6{O=g@aѺ_CW8!WЭ%b!>ͮ`+F˶B`u\׍o^8DPD0*[[ {gݖ!msBˊ?84f[`ٙPd+wB&C.cP ZTE;!4<+Y?at[ uk<0dmfa&d /JN;vTx?=oۍ ^i' T>H#ɘy$O.\kȀķÃ2тGpzKy}Yn<t$rJ)wNm%\/rtt05Y CJq&;+d;'ELTbRA@p/`t^% %ݳ"ȩFsa7^Xe+؅^^Fx˥OŇp߆Els(ٓWB _~&)ZUwd+96Ssr߳4>=.b}\-ܲT$0I5{GEtnn):ct+TI3gzP`#Z_G쾄=%ga,š91Q\@_g2h-E-*EQV I׺jnb.`yd-D-*&R '\vsŰa|ͱ&fhs$Gt<Κ \`əld4oS2"> ]T>U(bjPjef_I W m0dзVj}WTM[s_x`i޶ш,a2r&T*FdU7y4hE9&],Л̫L6osH!,ŵ=|3fBfwjXqZC60HU(E o$@'Nmgn#_.eZ 'sd7܍MEa&'i9`G g$[2Cׅ92Dٗ]qF{,AkZY$7s + %޸ʇ6fc#agi&FV-`t7 f= qb43%dn__Q̎}-uW$VL[ 5 wqåĞ0{V3N~8rypZz,{buC9 9ήI`vj~y eZۍϩ<,7J]۬{Y0wܠ 1Z9> _zB<@ \s#AsX$p-^2AGwFQ#G .:ޅRgC{v#Fәn()WbNL ZLwga$H{_B|l±TYڮ^ $wahOY;Vu#PUD4' bhᛘO̳ Wqyc΀i/p>4sGi֓6ocX*GsYS&yU@n˗p5Mb7=.wF+d_C5F͠r^>#֬,a1dt]Eptb>a_SFaufl`Nl|=͵Sxn+,( n`Iij43BQ§|w=LՍDq}8G,+ c;"?;8r(mj=p >K"lpyh7Kx>^V`BR r`MvUe j׈<1CCpL>W@N<*z yL!=Vkm ֊'N[Fg t `.n?^DgLޮW1wtIGHl.ꙛѳv顢V$|Ew棬^ 0|l&CLQNY*b_pJhԩ7vŒ6z?G|1Fnv%S1C[\:&&Wj]0A4%A1*U{մ91x +VhSDV\g~VS}/[VZ5-`vz~DEW<,j_lqhblQFLKܩ*=$!Ɓ_Ngp_ΪƨX}bK_\ȲPxRW}e9n"*dYgyMkBg]DϵZv8pu;@1f>: N+ة颜1̅dSbPM7ItsaP{>UיiYI\q-Vo 2VsGs>}HX8éSm/~ F ݮ-zg3Gp`bO, ȏ&*\QW3Gq}0,$pah,6j- $ZQ hYun^s>H 9qif3+j'Fl*_9!e0Wi Yea)^u3\<6%4u5B 'bc'ņizL~[2,p-`梀7Ʉw[z" ,Ph!{JQ9㢼nUuqC  jtSIR=deF*ö'B/l0bQsn7ߗ[њɮ = qwrCvci&%ZP#Hg F1:; \8\5ۋ2bag%nōw$x+``vGs$myaxJL+y@F;r(]l+_9+)A0QeJw2/Po& ՙyyctX<[W Po%>"PYg"A4oH-btQ?DsWW{)A8˙I8"e .!¸>C5jjC'C:5Rt@EX$ӇZM [Wi6D`n TCM|}Y,6#J %|^?,,Z 4,IȲWU΅%R]$jgnEI]W{s2'%Ϋ**2XH̠;OGr95wf^gC9SK}xUAy9<_(=7DT Tù-F}B,?U|Lk41{G:.JwGVݥJ5p8oӿ\ aL(LBT\2\*+,d0lQdgt=$2_;z㠥g 50o4c lG; gI -ڰ;KKk " ~:uEQԴr86妐LzRG&Z3 <\],{'_"Ζ${Xz4.<`RCަ4 @<*ΰpxe}ee<* [TIf_ y_?$|t8ە G>IJ؜\E(։{['k.2n6%bш$HlX=ˊᚅ99Ϩ$8Z>eW?v'B<+Ii4[QfOKtZg ?^ Go4R;-F.e4["+nA U커{ q%_x[q[J/0<א)X׽ ZG,KO9^l3cd,A{LA|u>j13.2mv[m}6鈜-vRZRM𦷗jTFQ_~M2׮хq8$b8y2cwwVɂ ч"p$CE_wI) \ kDQz0!R0ө'4_#>5w"kak$ U-SpdTtTF^=}-,&+;? Y}CN .5W*VeEmc -)ϽqMr~HЋ.8qn^+͎݊HxⓡJ㞟4;PNQ' 5(!1\so?;">i8_RxR$ذi2'C$M-rw˼y}_K۴6Qo@qE'y\+)dZq/FNP Uu3С,a00F^Q|::MY'(S$f]IKb<hLB/r8 ~;W',P{9T!nf9jC:qvEclb,kQ# %q^dlLD \N Q|ZY>}s<{jHjrJư:"QiY.c̢RH+\4N`jx-&<0Z]_ y@M ΐDZ#i /m HU!!W 6ߎ8Kzf_V3%B'Ub̖?5Dw*~͌8⩇f<+K3L&8gyBacDӾp}7^T(+Ԯ'eͺ8HՆЧ kW Vmd5T+`Qx)nbK'$#gJ^Mrk K}Dz\ 3pY9ѕga%-D5dAk `J]GĖL Um*0X̄&2+$Y{O7V:Zuj.a.ٶ|6+Y nt|-2}J`c&N;c59f4ݜ?SLquŪ AK`gT?蓾H:6*5Ft򌴛5\ (4sUGQŃ)FљX/C%#?|RlFiѥ+أ79K0Zfi6z.`T1P6UT<{ TNGC3Ћ*cCS}`j|]%NOC:Ybnr]a]2Ӫ!BE}c&:7[P)xbDl򹉆I+ qFUyZe F<fᓎK:P3 3}9GJTgTmN3vV|~T]91/q*M\jx“ğ :w;9Kn~)pW5n&I 5L`b x=tGL7)G=6O kH$dX¥ %Ÿ6XQܔW(xQFmމ$nűВ|JKȁRÐԲ0C8m]冉"0ʁ[h_Q/< rJPUrLz%H<=fqvK- |)OQk,&X+e==aD7ʈ}qpLI2$sOd۫P>0>%WmC;-1$9J]村&yeicnşV^K@?%w{ rrO8;B7m``rnN(,Í|mz j8? »kkTG=?UOZ7ɽʅ)jvsPG:I':C\lR2bil;?sB̝|Ұ*5 gyrבƶ"Vt 8T3W=ؤ1(bX=:gƔ}m\ԥu9; BWV) {:x #/5G:x^>iM=΀puX&ODLqo75TxXuZ) Axy*( djt㪀1Rnw9V /vÝ'$ûsQhOg;Y2?O, iumNi:wk"ʭG5M1ߓ_OG ty|+s;ϭpP"x~AZFY^ä jZ~1C{h+5b}8bI/LBtݷs7 kiX[{KG ;+lX + z:zN697o/| jGj~HkSɗQQBx*+c,)izW1ڐ!DՀHNtZ{GJ)݈ofne _I3vDm;)`t.,ϲ6W@ r] 0 So7&ə7PI53d̳unZ%8J¯-K$}5xэ!ZMjob`vU2N @T6IQ|QٯLJ~uٚGy[[./'s>g:q.+EtY;vg`mmᇲ7 afN-ߧ]WVG*<ŶIa=|y{!:$(U|Glס@iqu~O)̦!?{  :(./^,9~Ѯ֫SbU2$PןQA]fs{d)Zs"T ӭl竦K.)O n@M8^(&*1Ūz/ԒZ%qp:bKnÆ)fK/u(T"Z 52o]4Ԕڮ9l[Uz&qk7ՍoHKZOt3vi4ktBҊ*ܘ3Tb"mj,8)=9zI0?HzbD=V*fȶp&FA Xc6ݙLmG)IBU(gR,g$SNm0-|P?>C0069y^@$͛ؑdnːm3t^ު1@gsIdP*vzƠ;H6+ kHg {Goңr)YIʸ GP}E! E\sli͏w 7TI_(_7W|_L:OBZa{ ˆt{đП6{א ȟd}R!Z@ܺ`$ɾ CjjIr ͝%gT:iyd䖞 /t, 3f[p8iƜ=Εy/j|ivϔ}<>$2}љMAô6wT4JC\ Xö`̇!XZc껂f ŽL7D畮F^PMǦQ wձ6stЮDkRŬ1i*d˚Kօ?ZJa$?y.dSKl4]90.d|cQgDZv ~~5iOޔ][zC^8±jnvlS#:j(b'u@kMkEH͚dI)L Q{ 򚥯'm*cv2cdm[~ 헇<&&aIJc}=wO.~;nGNkDCB KXl1TܻklKUf}I)n. Z27K%(H{ߔ(4#^!AHT%a><}yd_4gk0?x=+ ~eԴyzj̎U7(%kL$!=c}0`ǚ㟽XvE u񃢱a~$@MWcGM=}!Ė(࿌vkg5|MbE۽tb=ykA~QlkuT̈JҨ0ZL̓j')c!0U=%ӰU:l;@8d`Qr; +a=V:l,^m-FYs̫i>FJTxh0,+}L HAȻvԶ5y>L1d`e&6NI-m1eY¥-|G "; Oۄ-ChҜ= pB3qӂfqJ1ttQc-MZ"j>-bo-# Y?LG4EOqPH\fuVz>LP-y"56 ⋶켆ҚHQ\QB&bmeTvuq`h#Z rY[L,hf{B$k= ANҫن⯪fwi'0XZ()i Efq̿R596m 5)O9?*s9?w%R>x?h!W;69ħwvPh:{W?D(ܧΚU\ѿ{l&j $s?ʘ^ @&M'ib+ONYם鞠Xҁt7`r]r!6@$!mB"O'İ[E ]v9*ty&E=ZpWtkINHգEا(,/#N>xfz5_vsuؘwsUrpߋ=MO$26HmBBc:S}O>KU'!3pjvZ^τLm?[1w΍mAZ=ܱЬK[?s/ Cs_^"&HGa$mx0L%5LD<u B9e\j=P-,i.IN܉(i1J8*C $8&@n4?x:ce8?ƪ8sTd:I2 i:? pe:اh 5L9+Sa1Sm>08/D\fC?r,"RѫВ {Pss3K c>A  h,5}}8Gdf4VzĜӤ\>[Y!3Av5^q$y rP]Xgng;f9龜̞4|/b}d2p/6()}W5{ﱋ|HR3? o,?Dx6pGf狱uP4~.ل Ei4]|dj-ة0o*KcWVq\=;SWsVaiEтMEP) P#HyK7tMoYCNf}]#ΤmC ("eiٿy@)juRX VnQ?Lanm15 rWmP0V>(wc=FV_u&{QHK;w|^È;*^*:tM@<$#^3,O'GJbXŪH?~f]GwZ-~,Trcbͥު:1Teai=rx܉d`-ov@\SG6L)i3Xy@G^8ݹsدes]>+p SPg׺?tŭĊڈȆ 5IRPqQSm(CI[ S l@<Ae 7 jÔJgTÛ#F؀MD7s,E~ sk Q٦ɢ[(4Wr7PE)bN|p\Jp3,7_X`7wM<4zpyEw j.|ۙ3]H Jnz68BM3ł}*At0TVyL+Iyn^mFdo(& sk"qd" *mhOIܱe>m]iDN%,;(f{U?"Loʾrw<NwUN75QآǜjȈ%08q&HlJ[h 9.Ur ,, ,B=uz"h63*T,bۗ0U*}ZQ>s<ùƈ7w$gAl?\pW94͐a8-^+Q^H6$4PÁFǞamޓFl>[#_U>m Lqw8 {&}I-U47h[Sw#il$[OxQ9'Aƹf&6T9D%<({%Heɇpw+jc;#n(rGr̖#bTbe͔^f7.,s]<ȍ4)nI*FXNFy*?% y^檤Yl%F0 5j yދ+Rh2!vBv&!!S|<tZ`P [\ȿM9UX  Gۮn-t %&C[*|;)'WJeZ'2>Ty7~K#L7qT焵mJotqs9.pQ*Y^k>²*(jdZ}X;)^;c7z" d ސʖ4EAzZ4gx0 ЌΩU_ R[2NSFq'X\k(bXXKȺpGK1;~+ⓨ& L:R0ZK~ 1pѥ?XʏrS ݵ[U,qMZ1m$S1 a@ i[bnyPd~FSN'zwX"V[QI<~X,OgI+NCm} -0,fgL_]_7.&=|8##f:]XD-Z;@ˇoU)dŭhPeoJ8Q֒e.Vznp3h@/oeW~mL sHX8r:5L5S=4B.XNX}I0pn6>.b.O:xƃc^+M$l97<ڄ"Iz;ȫ c.aFFn@4&s ţ N?05C)8b4 k;t8j6i xrp=J-B|guJ2& ƫ^_QAͽA+}}YU-Ɛisۤ>-VLz.^ZC_1AS4s쐦WY ph?>qL@T0nS5ٸ>s 2ђ2"Vdް$g0g2 b諴l~oYh%YH`Mk'otɐ_¡?KvR]uA1% ,?I , +@\HARSgs%9\`#ЏebuFo׵ Ɂy'(V~Abcŝ12֎&vх4b+3:BWaErEP@3{.z!\ffnQ9ϛ"q)eҬxѯUޗbz{KG>ծ+Kjb-ar{XoT;E ^r(BPp⣹=Xrx_y%rDJiҙ&FrZ.myv٬MᾣaN^r?Kx)Ddhb8dԫ C{4 LNW 7.Yϗ6C&Ŵpv nN7)3`4VoNU7) -boH6vPTWK> \0?W6 7Xz_UvKTg_'$OlCS_pPY"Y(O8_jKS ,ʛՑ1P?J -\,^;@gQ6DP_h+Hͽ]Y[ lUsƎVW)jbF1sD1UlXثpw?rޱYӂqm'1'Y**%0T^LR~t,jQyأg6di.v,CR!?ovDt>XDOX *\ٰ2UF`TY> }MS ƭ}J#^!A:'mb !ڶ2?úοG˿m&6RkV3Z@E־(b:` UPˊf[tM1U.CD+ o˘ȼӧJb`)mO3">ɢuw@X8Z 23 !j#tAi z t5m|^f*nx"w`}p;tkd#سL F92ly.oN q)Xn^MϺi%(CQ:U9|:~eS ]sMإaAըK-NK?|cRr/B#d Av=.dl׈PH)c˘(Yj{HtmLo@4-"dy,$Ը]"[ff{A7aѪ)C<pHslF}N()a mk,#ST|gNLO\v仫hcjg5ҫ^mF^l=0QLXڋs4SF?ct(]ZNZ%p'n!6֞$zY +N/3}F]py{iH&@]1E>1WiPd%RѥE0.h9=NJQ)efRu?"͈5H3B!r, [} 0op'ʞ*´>=ʢyI A/oJi X쉑CZqF-PCd &|>UU7|]f7 x"# YM`lNh,[O F  Uhiy#I95Ni5*ޅ}mF`mV@s ` A_3e{K)~)֪ztQa2ǏY8b̲ Cj#Xp;CGD-\KGn|f gm݃Ia~͉AэF&Mп NyR?r_eW>%={ʑ0lk(tS;.1c4-l2ю@ֱ%/P8B}](0:y`o3F>=I#ʴD%ƭM(g#Q Vm5EROшKקuw(czƈxqwU.TpNwIAi:,H9wQ@Yr<9mRE)MFJl`+3@yj* YN{bw @N-BDlT<%dq)ח)_q$Kx߄9;n _oVS`HhF1 ʥ<V &Qȟ"oiܓl^fxQf `ƍ>?.\e(MpK V=yq?&EFE\}Izdqc?)˙ DWw "UXC10J]> 硷I-򖝈QP33.bmRon - :lM(TIm7 $gQc (X;2hwGIWƑ(Ir=J9 GJFJȨ=z'Y9!D短t, *} yx]Bl\ ]ۂ7B%gD8lH,1-sV_T_Ԉ\v(}bZLw IefZ=;L5ڌFEƌ=HuE:::AZ8}2tgWNUU YUEgKh ׯDqx1'5)+wvvƱTG?JgXڥWklF AWǿ/`vvXI-I<l .k/RO18ukVE8`2a,9?,C@I0ޗ+MLOZt| 7˔3"zT*hpZ#W/ 2YR̓>e/|[\K*fGH@݂w, y33B١a0A-H}X)%kI3C{~N/6B18Ҍ#/f:,e3vC]w/* T+HAJc3)zJ Dc (1!JY15o8MSJom%+>@GF*+{z#3@nn%9 eǜw2a2 ׈-l8?ڤ5~+phV8#;LnD#FW{E5١!i 2\C2b LgҙbX6Wn'Q`"~.1>8^L+$)E[i/C0Kf=[+̼\ 6Fclrvs% ̣rULQQ̞|ӗ8 ݼtӇJBTgeW}PQUK-H& KXWhE1c4P@oupϊDjzymWE[SƏQHJtF̽˸cB;g)] 啶ohO,0Y2(i82JQ*_O4{yS@'ARo"y(Q+jOg^1ebA۫N:{Y b@.frg0 Ӈ_ lK]r@W+d^Xe%iO98e9vwFhme%ߌh\yP~VRV8-/ld7vK6en]݆RHtmWGr0%9ֹĕK䬄@=2/E.hzzY{y1DYyL9PIM+MUd6;N1SR&&|K$i.fkvh9@y|Y H@Vt/B+ xo>&e#PZ"uLT 5@B̥F7ͮQ+JNyon{7VeaOl$fH:PM1:AR([ }5q":Fy`$|fi" >՗6'o]Xm[}`k{C Vø+A)|ˌ݆-n ldd3q%&-O좭䟡}ށo@7uՑwzڹ0ҹ~k-SB^10!?´uCqK=t,9&"}[nd^ 陉 6pdX'WMb0kDbv'hvrqi1 ךs z d \8;hr9. &)HgSGP)V&IeD2o\IJr,>U?È5=YM?JȠvLRFt?V;77b'~G|\v)XTBB+9J0!K0AP4~|NY cD xsQ}ݙ-I-< =p(íPE;j&֭:<3,C#۠OH^Po, %fEz/dXqYzvBPK:L+=QV|SR5qRYxEISUa͏ͻ281_-U#l!pܹH5^W>vo/-58 '%/ۛKkh%B`a`l9M“h_Iq`&)JɞL#;UÁ#uHE2g&.Һf`*81۸,Iibh2O-U7у]AUY'ܢg iOV^!sU t !/6!̓%RIΡR )=hVѪb8?)+G\vzn/)fMFӡ@%bRq'yQMlVwZ`-9Sc9Etdۥ-EGlG#92cּ]i1]p8yQɏy3pï3t'Rm91< wu>צ4YΤK)cfdU[UoLR t٧*|١z{JO53#i}gW߼SԭUR|Ͻ/ 7{hqtqP, p 6DfqVMz&N/+"K5o_YS7#8u'Rf8k -"욋i՞5Kt)/_(J8Q=6c P?5& BC=-^|Ϟ_[cZ Q*g;t*rf.th&6|)rW!. ӰbMl4*z8pQ ws$Gi؈}Y1P(k?[E5'ۂ; ʑ‘JɡF~W6]!A]{oMnB݋ʽlx$ђ7g*W~ؿ\7y- v(&t}RvѠbٵB3:ncs)xW D0 ɉNeCzVE}>j>VΗ vU ʹǥ?V|6NES.6A&@]Iؚ8E'T/. G4fjꭷ\Qރ_u \ޱvx+dNx5IO')sYN6ZV;X(d]~_<cgܡq2%lHH<|ZMO0kxcλ"`"m }qq0D>.~A;v| UymO1:|0L*j p[|^vV'=HNvi`|=c/)Ci_ 41VYEԺRiya;ETqQyhHW)rϔLH|=uZ))ϺM0HL?К>.vd%~)4p’yrV+ip^ᄼ5\D^.h]De1l4#ƈ Xfh5ե8IuiĜtĿ9",CLuga$1t+'9KFaX'yпSLJ{Tx5o&@yPyԬFp4{ HxL^y ;p;"7I$:CU<,A [hB*9qdp_EzRd}tƏgT<(TnΟ[b6`]Xwn.%UdE|RMOΌgw&ZX}LpѹH/댵WF/r˜ʼ{biJYmFz6b [C ?%}JH=Յ~7+k?*DǸpC\cg쨓;]j_B&Gfg5gvXi;5ج0rDX 8T&d1*/Z}9:=JXN-U\k:Sx|Hpp#JF1+>!$֡%ŹAFFPY: S:=BÄ&ĕ6[yHS;Im/RM/3%P&<^ W}E@*3f o rD(rz@=-E<|/mH#^wB 59ꦴ)3rYX} [|6{̷le2V^#4$諊<D.&^~Mk׫u;)/#( -\tes>J˛U#]:Bc1g Ә*=nk6KV涨ή -Vxf-_@/V4R[!PmoǐXnwWQ,lq P 4>"lO!7IGX{i2-ࡅ)+w[t_wщ!Ad(Ii+S}N!̽J@w$VwYa (PnAѕ4^/mS*hG˦AnsfϤ?rw]S >/ڋD$zaj*lI#ꍺI6m|lO0q ݈U ZܔeF &g0bXD(+r]k);:~mnI}W=ile?z1!Ֆij{.hA9=4,{=SM84]nUíS4h1W*KBcw~쪂3#[$%"`DBSDba8$[SE m(MD'hSLLPu! `ͷśjֽj ڿ/y I=Ч8wţ, ;Y5܊@e&v{FQN*]yN='s7Ze@4TaiQmvY{ kCMT]s$THx\$ х[QS[Yji=o0M`wT M̰Liϯ#XXkK,L yC(1wѮp_mϿ UڑjzNC,JbbfIT1Jhg|Ld.lx^.ÅeWs?W8nHUZeP0'rt{zh3]P-/-D!U!=Qgsu!d[޲'U0n U:-@R-r~"  ,8Ȅ??o@z\H0 zU`1啰.LO4yi(_ϲ5/Nup`:Nt5ޢTI_{kbLd/Th Bڹgz1`'5+7LB6nV'c'R3_V^v3e/7Vض[o!O:UR,2$~sL:plőm*oš=Pp%1C΍3]8yT,㰯+4W`,oDq$$2G $d݀;|(E5bVqEÚ_*U 30$X+SȈ]v;`lhUŜr9;Uw0}_:m3ѱ~c2M$qsw&S+Ph(@S6QUXhmRIʱ9qfbs=j7Pck"lXiK~U:>GA,,3RXc6736r,oosVwJ)؇@nN祡k Ià@(xw&_p]Ky1V "G$f|țo.("6֎sBg&9}Gp|BL-;%4$pr P] OP~GBa?4i ʹX0tf4=Tjjd &d&/Q7T?Ot<AaN-8QI`}yY*yA*q XaNAy5>.pQF%OTr@6RhJNs@[t;:+_+ڞY9DO8IG3`=p֜y$n 3xN߁s7"~MU+wPX:PMs/F=\"XduIGs62y= dU \TònհRn(N@W<`K'i;qx *!\&$դl>Z~k}Σ!zT箮as0wh0CEΝTVt\AwT8eB,')_f_`V]7}C6".-AN _XN -ɏKJL"pYɽMlܠ@g1Ìb;l@rBMW1z',4*>Erv0Ly4 MqFua_RƧpd%W GU}"<hCӷ,ZE=4-W92!a6gr8fȨ鎜Po$lO!h2< yVq< c;+-)tt`KBʽ$ [BRǔA2NtoYؗN()k=gG=4Q>M;h_@Td=wf+҈x[v1tç6_wJko w6hhV /@ J1k`i!Vq{W-&$r `̹kԂ,:uGޢ~Z *UѮ|aа]5EZ[n뚲a'aMoF { [$Њ}W72}{E%ElϤ4yY"XcÕ*q("> tiΨ$O!P QQ'xawm˳r"u;c!djAk;;eP%ʁII%nK4Sa@+VEl+L to? v"{+ˌX7 _0{φ}B{&UqG g١mXS=8iC[ΒwY+}Q3%@ҿ8|HJxXw56g_qx, A|hh1R"qH^[or9 ,LPÖVqED$B֚ͧ7<Ξ|od4Iu+cWk=k&"0Jm!Uȁapޮ1hzVX,1b.'6qC2֔>M6f@ar+=Ċ3ɿ.=8a>2[يaN{=\3k3u澡nõN;y1N iG Ƌ290 mdeag;'$ORn%sVTBE{0 fͳ$NVs(6[{*͑:+\BR7pߢ멓(PzMNҴ+.HV}mEg]W֠Kf{^~IZфE>-& |1h>drD'sۿL\;rmd'7ېŢK ="0O|'#o[ kqe)?g$/P&/‒܆%SC I [r_q"QW/缠jBɡ Sl!I_]I:gV>cw^.N%RċitĂh)|/ yGwGI),GI0ڱ@ ]+OgTob4ɢ Ckyoځo|2rKp x9 a~up"k4.+OkYA'>X7|+ʼ2Vw/y֝'T<ӿRd?@ë 2.^N,78.E$!aK|`}UfA}9~-nSm7p BC ,:>hWOlדP%hwX3J7Qql ɞ0|ʸɥ]w.L),%2Ii8X㛸ؚ hN_WN{RM*Fx_{PcN;`;gTGW]qpbʠ >! ,SmCD 5+48l~CHe ml[grSjt3ZS&ĩىc=~6#a`{R zTep]ms""3U\ "kNW~zCg{yEb굶(4Kp(W-/`ې#&9s+ϵ4VR;~ҹ#US*n\TA)XJ]URI1h=4qq\!(_A}mh'dg̹̋7Whz GS&88 A\)Ȥ{b<=|f?&B`R10Ȫ죲?  ᤮ߦ@2%˩)ʌ琇㝷̻P[p6Igv.4LE" 7ƀ"^I u1#sV}GV2E:=SgGA]V:؝]&7›8$UR 1ʦ6UO;R}Gs{\܌`'fymGV5sKOzH2W1m@l+{z}ʎZRh花C 6f8J=j۹c%XJ$K1WNrESLkbs2LO37 6 ɬ!)zS3C'>|vb-<ՆvS,;/➔ ~dʬ Cin<\bK~E0~ZɂyM9r ! n7yؕ$%\u~EH*K$ k>KC=,5vM?Q%0L%VlFREoBg@謶MIC7Y E椽Z31%Tpeй*qA2&2?' u *2 aoym͋cT,_ce$`1ѯD6tGُ.=q3S97(| ϪxCJsaίVm!Xy`MtM%zr9;iDL-w!P{_+b=c7D}*|֬nq᧒u]x+SMjҢO#aB=`H9!Ǡyayhu4m3D!KF,=D_F{iZBtOqU)/Z^wlHH40G!s*qp%a6U"Xp 4,~tEǑy#tBf!6afso:mcV/eYayAxJn $ 0S ⸵jЍi1pFm4d%}hiH¹`2B tmII-$E/'=gR]d46jWܟK5k %xD7ĭ@ t$r *, .kfj lw]pCSnД4/3]&|fs `wvB_bx90` =.ʓpj9Y!`s'Gh*r\=g1sri R6*. Mr6Bz!9cѥ1/ P9[K?g 7V1q0AڥUȴ<jaKe I2c[%q3peAn,85`ZrKAPvW\FB+Km^k>-E"t^^Efsj?es7w&L F5JARmv5;a[ZY+>l(gd: nf't;0l|%kw_fx?Ȧ9|YhFͦ!њ,3dO1 Vgo g_8C5#>=I}gߎCZP E]r+sE:,'B#AW$ v"MkBhu[NGRq`ܖB}Wqkdb8nj@\!;loov㮦 ~Hdl?Q8ZHߨoSzXh3[vp%iM X[3ϣ)%cˆ&S5f{BA_U=rװly}ܧj04 ̄(rwnޕ ,\d;$f90ǖdSVB6 tp8bC+řo1 f1ᖶuJD8cJsR}Pb2sgPy%p{a@v'5SU(.,nr@TvH\&g6Tj_7UleЀQ1RYL#ۺ}PҶ|G[ bra0]\ok;}_K: zkLY084?2F|{q-so=!J[["er /zݧY݊ogmxQ얩4켙绰8., t1U͉הI\)N1Бu[i8>?YKz? #8ʳfnzȂIqzyo Թ 땆C޵حm*d;1:(E;Wdkc%:Mo 6rbSY/bt~QlyD~`,(C XY0U U92`u/sh `]AԓZg#f<&'!,@_9pą߃uNٻ%q#h]y/1Bc#D=$ӏ`^b YBKߜ)ٞhN}`hPp')ڜN.ߜvL}3M&C?;$hJ1 oA:ȳwlDc{D΄ v5g Bn}/sF"xNKp$֬>_faӑ]î6Q8f'N5CH0!3XY@ tXgR!)i&ygQ"#T> )̣7VޖB9's|T?w w\ (jƧbZ wʤ-.sw2z,ƲF#QzWmAjLIE%3 |ܬo7pRK5[#Eȥʽ)㾕d# šz0=p#u-,tNв.$`_pr恘>s'F䴸٨h$H\R M*eFmFaO[ň wY*ˍCЗe\tIsŶ>eRSAEt;(`8~a2jLh[J/0y3+(ScW߮8KuB0AvRNH8JGvWu~iGsV ƤҸn(U]E'dWeMH\852cC SE,(k\AU[OimK_tI>v5)xPK~:Z!gJhSwQvOop@&|:c rg1n@k>?NIm "y<֪f{\6 d]o92ϵ0 X5@}Kb8+nC*]ZhjnNI,%Cg<@m.ȼX ^7jW&Lk3)cl-E/zsA=6ֻa)7~]~8?f9g) <~v Ϟ*\Y 3-g=U4*RIfŖ~L`N<@y5$ڰ4P"H98*7n6܉}҄7us56%( PÎ)}O<;M4[KT=nu hC+\[$+l`ezpfG[2Վ֥ #lLQ m`AZ Y-螺eaօ*7@Uw!aS; Z+(m_]jZxZRsj>魎eX7}25PPT-Ȼ{_sUq W Ɠ|)i%Չ.IA*5zȇlyOCzavJe2y75EĆV+dՖ3T8\Co wd+oZi7,oQ0lcがR$ȮS&j{x%)Mwkzo(։,(?8ý<-0.yT -G'|zJ#U^ȿ92P>&&_"D|U/7nf(jCm6Av3KuK ldtrց| !' GL$k'`~S$Ztg 7* &*7%ӍxOє]vq6:n6֮ۯ5r4HL%.q5ތA7 8JryM-<џ0s%2H2:(׹z !3a paz^!<>__^ ܅"cWU3LhvH}m+ QyʻGu{͂jc ԍܫ)C՚ fOTNʵVrMuC!).^fqiŽyQZ@Ti@zHԗEfBIz1u{E:"hDn9*rYA9aQgDqtVZ{ܡF!s&LI[:H l$.}YmjAኛ$VO=EZ&\ X]\A1n@}F;$)ӑӠpSnKڗjdo}Ӧlrp ,|E#Wq.& }$X.}u11Ox'#PJC dq5Tef|QcSuC6(pIQ8ǿ_;(T4t;&jbn8 8f-Ƿm9GsvޱXDRQLg[- \jGYp@'|զ`-Yc1 7/ wK:|&¶ޓ)VCUY˜䬡k^f wGSKgGq&_}s%߅-ܬᅵIM K$In)MþJ#y$_0rIJz:hh-`Fskp 遈k)9@ؐr7aO=QTq ,+XbPL\57گ9&b+el?3AhdVhh Tuq[D>l$1n`@3؛f?]ͳ.Qf|*]s?1 M젮 h9vs7Aj4@5S_]=Qa}ߝ%)X;pF1qſ9,aRƭoZqgg6R?B-U&Lmh(*IjUزf>e Q/p4yvxJ7QLpv+ʞ9udKgͤHd_nw2lRdh|.s-oZQU3vAN7ʳVv,~v9,B5dz%e7zVa,Y)>h~Z]9vw/N/_(BEE2򫔕cW<ϵ\WX6^Jӣj{ri՚}foS@eXa#"B%SL%ul@ U8p =ِ@PSg{#3=eC9grQf63Us,"HI&.{A2kNRZ,ҫxI|\:X,{:['D h^YޓLК ;mVϔ瘨҅6Qֹ1Je`ySffxjb̍K2:҇؃bR<:؀0 HoՏ14P9fu;TL_Ǖ9 K tҴ+0T`OT%"5Q>1u\r宅!t#Fg$0 ؛3pU3VI.k ArO1R٨ozbFӑ8)WL9m@0}Am KRRn;D'Iixe2crBOs;u!3Gfkq X9A $M ALiG˱ V2jJ-*W]js0SH}Ć4B ӱ?\jo)`yd^϶lsC=A:r='ܫ*NW]-xc4k5UwՋd'Yi(p%{,j]6i_\)Yt*Cm$"#oZX&}O>76E%|uaQ+$@9Ԡ\BB,O?%|-d勞x]/ gnQ,„tLAܠ`kuʿ]G¡t#_ȮC_\G[>\~ " ^^M{Zc[- ~ <ēa4#~Mu.oK'9|, d *%ӜIHR7G2:Rl\+[ru; C]vڇ8]ɨne ;1swԐ,] R{%Ġ$|g*Nu3s6$+e}-{7SG#Zp x$D,u fݻ&x}dCT:* J v!qf=[C1o\}JK\hޙ:޽SG9s#PJV<ʝ3>ªXH{O_ \j}, xR 51v`&s]E2LX{DozPt1JM4}EBT$uXZn{{@~Iώ>B1d˵H 3 ϠuX4 |UD4I_(y(@0ܟ$>Vݣ| +ޯfI>ES/qwc) !p2|[k0sl?A?Z 0¹0~LRS!;4a$g^@xr6 hXn"wn/NLW+[_Ux\C Ф\{.kzxh{ ;a 0ev1k_S H]OAl܅_\9ݷ{/K+e{ST:TvӠ. Nu$[<5˭POῐn~ ff䰲\/GpB\>b| > T4Y{SIE f^>ái|YQF f;J2VCo7U0_|S/R\'?d-ZU*an6@(= 3†F?N6(Sz_᪇-AIcP)!dlj, 4X ,B@rk+?ޡ:TTZ\պl\]R3;5s9LƔC*u>Ng(6Ytd{:v(+!MէžOv̗[7(7}1dFE-~҉- ž%[Z%,#l 07=>GWRvյ'VMCڬ="oB.rZ[NI(t͘r$U@1s%){vtZ@))_ Dx(QN%%f_fyOA5/$SJP䈧L45 #KjV=ٌN]pC΂1^bažnł2jyS1@F(Ae"PFL><8Xb"2ٳYsk0OOvgf,h ,z`UwW}jEҕJ9.Em`5r"ex_CHYɦO!#zOύNMJ0˧il0m.T1[ Ehoc|5Q6Pi'M}ȁA@k n_@*q$;C@KݒzKr'q86_t4eQU %hD֗z@w$W&#_d&(mj46~]cVj ') XSGqW4[5 ŚX~]LHҏуEVw\GXt4CO0` Nykn~Y[j˘l!a84CQbh}c+CꔅYV_P*r q,:q?Jy9w{O!mvQwQ~ehSw阯Scyخdb&X@HYݓ`ʆ m}L(ז&_qWBeV*c@?l-/}eg%HEU|I 1L\Jfh̝gDZY2gݯҤmޒGiN>C ~+a"XУfñ<ʴKM~gCx_Aǟ'rKMLi8Q{u٩~rU7#sDˡDS؜XŗN ;`vWW]S5vwÀw6| 6# ^s-c\aABtЂ ےhGGeʏ*sfۉƠG-Kwj ;rڮR3$yc* tɠSAꃬnJUbqF{׼pTm_)Y7;6ݭf*VOQt/T(tI!hq LiUK>bG3tW>66hL+܋=%L`n6}1D+³RJYPa-q{?հ06<1I2g˓EOڬR7{- n;8LĮ`:vDe?6GSQF5<șW 1kb mO[#s_XM%HCAن4 ܊t|%?J{t٘ݲp܍| b'?]Lu/}Qa1Wf)-[ H"~0ybG@C8 N}xMY 'nYe4I%kk^׮ŪY׹lWO֫/l9ujJu3k^!\u$Ox0G GJD17 pOL&Էq\+wbY=&ck@9^m9^ euc\Yn->_kאSZվ͊?Jocɢu"]"9SOC1׼>3D\YX~nYdx ŏ :Y[LA-fjJ{H {X- iӲC.N\ѓg{5 ;%mt=0i۾rWz[/cH37odB͌X1A?=酄yZ;>eЂ{,8wգ唌'dd ZBסAG9\UQ&4HE?\_Cyn(0"q8aJCJ܇9Ieǎ3 +u蕏?>ZEҘ 5N.24ʐlbߋ0}2੟:,uXt:  !ݷT zC}OǼ\ҕqON.WEȀ%_4=WJ{"~~INa֫#&蟍xT\y_uK^B>.ߖ\fgl'}ux1">;pkT&lJ1 W*ӑv6`m߾uS Ƞ4@V0V^%RiBN"GapP}Y1M㎘'NyYMe<xzTX~`μ78֛EOa)E?oiٺH}'CؓMU U}u׍?"l(e ;]Q qBDzbyΘR.)|ZJjiWAH,lA/yIS*WDx2%Xmб[PPO.W;\+2{"d_sW y Tt͊+5O&r  EwxtHr) v޹6kchpw0[uaCYIGlv&XM_zNQE^Y4ZU>cWy@>OK쫂iB9u"jK#[PZpQvscpY!7^ שYDvGEn@HN@Ӹ\$2nCO_d58ByCcDoV:Ue5\E',j@5F_OSuB%V #U{(ϮDgUvRxlFעfO$Kl$?}ﳉ GDd2'n5͸0t6XqIdM˿҅=)٪/2A?OV+4c)sD(ÅV䔛qa 6ZEH,)Eg[.y"l̋*1}S,I @Ɉ?uXlؙ=LLSckLneSirA {m[ۼZilch)\{{wÒяP5,{HG l m=򰙢L?>1V3/ll mG[7MŘWYA-xz4 V2yٌP zupx&DY]|P"  /QV%K/'yu"|e\~:+4)Ҟ2l/ _\뚗/^ˋIWw2tƨ_y$|޹!%JlZ)e\yJi郿dj?G(Vv<9Cv-~ǁLdrRGhs 6RAV+;V1Z"Vb'l kmc ,oNt W~z .:.d<勈 j[]`7|Ygِ0W-&2aN +R 4JK)5Fآ|( )&,/0BiJBj. .2.K9zjеgOb|BjPw&V]ĩ9N=-5on%9P>dR&thZ{6.z :T}i|Z/X6[eDy(u!s7rD,m 1`8G' 6鱿0uu},d3%Ħ M-ucs ^2IIXZı%/0,K"T$T\OH'`1ސc"?}B wToN7tK'W٩p#* q`4&h~UvC`,qۏ}dh-w^iVf.(ԛם}NLD&0)!uޅRH$N:¹!"Jo(~-hY|EV9CoN|keDy䳓` -%iN N{ qex c!x_7_D W+(?d!tDMGu#/rāKr~^[m ~%%Ṡ<_^64iȀ* @pC>:{SC:ch`;NoqF:nd`N?ATZ{3O$x֙V { {n.$aCWer5=X̕Ea_t)ASӽ#%L…tԳzN(pܴ; :J^y`J#Fd\?02 B a*sB?HLLĞA~w֏ CU[(qQH2:j 6 Tx2cQ]`:z{7@ ǐaF谨Eag7V3/ϤyA60U(ƙ@PP#7`%pĂy=z'vwS+T*æ*qVUyǞ.!NsZf [G]Cs&-b@r(27bX+g.}=/F)%g,B"2=Tr߉ rڊ(dŘnE1Ol8hWF;CCԘ&@Ԉ~Xo<dfjp~ub΍:r(d8ܦJy9_ma_+\p r'd|$)-Zة2(yKF&uѷ;IwЛH9ȀmϢ_(d:ӺxyR?I0;ЛW~ka|d%rxړ8: kA~6m%lӆnH~9 <'J$Rx3B/Nש{^71!B![rPɡQpsu)h@]ZSTRPe*)yN;gWCX>ѧ]uTk;%Fjjm]nS w=8L)vV$tnQ+`xJ{3#@6>:/-;mb)*B˺M م5.Og(r\Q%Ukz+ `v`P%pG&Sעߖ } ?afx31>˰cnZ3oF#0̨7&!1x㦭AJEJS2 )pOR5뾊1j>omN`\틶a쮋Z|x%}h2`'2߷ŀuK *%xB}8㻖"b`G$Z$ >?1 EO{N7%~8~y#.6+b;/~H5,pKIY4RCCI)afrwgjx$`Z'+>B?L!H!`INO]7UD%?}S71n޲hh;ht: [ZA>R<-oտ&!|*K$VLɒF |C8)U!A&ZP[vMP-Z2kZ`CT~=>h ˔TGq_u[U|V#Tz&W[e/MQ|{O[iՈ(sJ;D`JLFtGc`'{Ve6}]CL1W !lREo}TydZc/Q> FԷVَI9~}=\5>ΎDH^317e$0%.8c3邴 g.+_V7@sBX?/G>G|w|QwC0%q9v4">ri ɽ zO\Ă*K .R$U8aj%dzA,A%< h85}Rvi k$һFI^4^;.5g4nssɄP[OW(gC :n_r16Q=l/.W!Fhܟ=Q{!%pD>lUfCy8k/C ca)u i`(Ώi`W RZ6 (^k7^NK`C]'{/ ke|r}=gZ2@JȅCC6v>mr7]P=?K"~ܰev_,:ʟԣf4KSζc2Q7WW)k1v*K1BB*tN#Ѓa;K5H[5y.HKpÆRWŭM'x%GbVr6.Mo \PL-U6jcn,S:\(Ena5yZ-r3'H"a]ƪ5~]k㌢NjE$GBTMI]gꄃ)QE,*M<"k/ɝ`u'ܝ⡄d=kZٛ\,ʣ75=h¿I+Fyo1=1o n=t;ъ9Z Ȟ"LL*unAl}EgE$=:#DoH:CO(+T`4|3U̮Dt;9^A.RS9kBϗ|`v &Ea "VF5;zp5WiVi|<RLdm^يĨy^phnqIpRCy[ )c W;9Zs] #\ [t~2)Ҩ5žf+uRȒ)FҪ7bqshKEѨvYd+AD+9h%Y]:AxsE,;ﶕ0J^{*_qݗ ČHI>cӆؑ?~ޙ~幤jF2MzC[Lvb'4K5_E5b-G㙸(S zaC0:ӕ F{+ԿxTpupJxiÍ)^gB z!]Y4VJF\bLPw"dqOODfE Vۙ)T&?n8+e("}%&= +]SVoO&!~]w, c8hkbcd3ѭэKaԍ->u)<>gm%l˯tgǏrHbiyyYy\$?nI c/^ T=$ Gw'EԱZεbM)l6[1{Gd/ߐgZ|:+q{T J0cW`ޤI|+L(w]4n$RI輼H{3#ƞ8ۿgsEi"hf ^LF YO0SBdTcKYa^>̜I! O^#ϴZ_Axђe{zY wu 05@'P`O^YfCդrC!,uJdLN(yp^.pۯ젫ʓeOhXu֭!Sυ~:95~QU-^7*wt- %&OdIA pj[ 'or-I匮O4^gGouIu"οxlw/5Pp{,FԵP|ZDֽ v[Wl{fҠl{;VITPn Uϱ< GY'`7l<[& h$7h㑣 5v sk., 9O~y3:X4>>',YAS״i{EC=HeYZ B:,XhK.LP&o0P iW}@)+.ˎhlO1twk&-s\Oȏuһ|񿠓iwZy2 QATPw`>;4*p#RmAyͭoJA$ ؍ZgWcV@w3"})P<ڽwՃUe E ZSE ߾ %M= F9xiWo2B :틀C= _ڔ]>i8},!T^F,˽@}`fMfmF?6>d~S1SqnwvVvxgX,!pw58o! OɶN2CY'ZJ6Rղ55(?jY} ŠuZcsd|P_F#.B0W`ؼK? Uz4;J6@{uT&VN>>1O|ʲvc5=xY(;+L~{s TO?~3sVbG߈0v+Z6@>rǖ*rG]uY8 wўߗ{?0 zG{M&oZNH䮷&ajr˿B(U&Ǩe|Lhe"`]`FZOd8ɲlS^KebB$;-?^BCBQ x8y?ai7U-.\M&FZaJT-虯]]dh8L yi'.Wtݍ݌E@tfml?Bn x ^[>8a$*UCmD\e (3ӾlYJO6m82gjuF|-gk8tkd&( e`!m_Bu_X9oMs $Yj>zHtt{) K"R0ZACBqj n EkHٙNYUȳNP!`X%[Ox]SӜtDZ6"JMAR(&^^2rք?lˎq2sHfVmH2C(8=dd[&Y@(acM0*Y(ͩpӎ0MВՠ̡ĕLz #ZO‚c_@&0xR/)SPlϐi1q%pB4$MR%ռCxw9T)ai2=_EL$RtBo`4%Fb6w}WYsW Vcm1`c*!|w%E6b}h![ߺHXa,5̦չst`FM#<#q^:Blq7%VRT (L¼j#AyIzYHc E](dFoTWv# 羗}!^9ޅK-mNlTRv!mֽٗ2y] ` Ь.8|9f#i4hbkc o_$oJŚ.((׵oRZJcl\ҌKˇ<byW(q N -M2x[فmbE:KPa;9YJ?Fˀ@&;0xjL"~ʡEϸh*PZBb ߵP9V;q= LE(i={ )eU@̊&3Mrwx)RD<łdz=z: {>}+N{asgP<\I+mskA~nfWnhf-&MCf!xq&K=^")e$PDfKpZSMS;FM!f7#he)#=ga8Hxߧ]4\eY3>i0B̏jA֐H`VYЖ{OG$!(TS^RE&scbz1v#8B"hbV0>6Hn\[.-CBL#ŰԠHoj(,d mChz97#S-2mTA"V^(Ԭ<Q&ڹQv%fXJNfN xo"wd|z=_Tʹ"f}։7P*@59#ۊ.> U{ myȟf Y.# Rj~(ijFف 8;:(3GfFRC(!K7vz)|2/̜$BN/ӽר6ͼ>(~u?(X\ABd{C"$Rәo^U-ϓ6!5^s#Lޙ-کi13zP 'i@3tCN^!6W$eb.U: fcf 2Ӑ̳qA_QuVJ^u %lBP8u׷GҹIpE|] h\`B~5jj,K{lr/j:WV2(R}uא[:3z(v-(HӮLߞOX\2QTJrK3j0,IB/i-7PڰB{%tg~kHhdWc(Q!1᦮;qjElDb`t@YĠW5/P{:m_ mn NUX(ቀG*DW79flʠ1F{ 3l{3 >m 5q9Q.\W'dO~3G&2A``K~n %۷ eTQ9tԁ_Џ5 ߂(tm0} .(=`Rp{+Pt{Tu6Hj5 ٱ l?, \L~Fsj=J@2V-UQ(~aꦧ"!CX_#(&`\4x։HAJ*b̧Te%>"bM;gV i GEN,̷ueMzh{ݱP:SO1pbELAPa`,\F .Q!YȤ&;yAV5 |;CpjnqIid7S$Cϼyq/G;+h $;zGojD* ,n6E/QV?)~-c`XJ yP3.Ȉ?p؀neἽIǥ)72j`w`BK.$|6naHzo{7гo9p/h;זAΏ)B] OQ5>[l-^Mћ&o9m"_&],.@  ;OZaQ̛AupǡI#_92jjQЈ<~2BTh\577n/k$_Jq(})e]<0%R;|V9ߛ|"Onۓ,i%(&{{#Z_ @ 㦕MBx 8+:NOpso*T>.^RR%\O65$x Hme^pYӍS XF&Z}{,0WT7(&YII nǹ 88EWoI E2ʃQ8P?6rCRЃbG}ࢶz&zM$1$ؔNGj颣(kwkao@,;7 ?{wt຦jNO'#_"V3lrWO~jNSgyڥS-Q -3;yr!䮧 .T%Ok_p]zJ hd{1J$T4ȕO,D1gY -tt*g5Cp)Z듈'2$6K"vag+d!W >W7Rō7:7-ET }UVDa60l|? ,!?cAšFR`99J6G |R>Yw&ElB}!ͣk8\4F4^cZ$J{@7Oe1~@[+ezU@bS+G߮+MCbT/wܞD!R6d7pkP&S,z ɋoΥLl@,+ )]VPuo"!Ɋ#*4Qao29HdAXxY`BpRoldm(GrdoFZm~%^ 2lC^g9Yo1c"cw\ fB9? 9Pvw3#vTЕ4ּi4o?>ͺ1%౰NZ8{a<;‰Ǘ K&mD-Lۙo{Tuw#}b`JA&p)~EIx23EŠ]c*t3,B0`HKwI4 sN722fbH?: xkbYSkU%7Z4FDx*Y2KZ2Orc؇4g(>3bEs@X+BRؐfBqA ŌzWMs-V(X^ Cpz֪}-›KW@i^Rńx*^]%ĀɲQh1{Ź?UTwe$^8{č u7JZ6v5YAɐ>KAƖ}&b:F%ݶ M:ȈCժV" [BgLvAȟ>JPKDxAC|wFS٘չFn_2uJ>! *=gF/GJZ e ّ돡`ǖ'iNAH&R8+Q/gG \L2ؗhٍ 4u)hbRm Zhk.(Q5=hQEɮ8ApiT5 בȟz%k'NfZYyTA$Tvmx'uY9F7pDo)':?qR1 ?skD׍eE(eIRϮlKM;s=>+@N[3R?IFQދhbn'vUfՅT쏅7u!N*i9+4o@~ }þ0 l'pݗ(ϴPGCޗ RfuduBJkPg*qֱp9ƲO@dZK]d'Y=ʝOԓ, ,#3Iv$ITNXt,Ņ$9-5rNƜ]b6~>0Mh4I'sZqe(G_3TJl〪|ڟ̮J)N*(k>99 B"J>E-Vsb9ѻ[uњ&VgЦʭؔ5["X(**eKzm@|J.ɁrOE.Ryąh6RcrHfe'l'F D? Evn^7ɭb}ln ̯,@*cgd8chfky釬J`|pБK^?uHz C_,W<#(M&RuBf I*c/x{x7քQaʴYٟ-rsAT~Fj;'ϠG &h9fđr߿cX Ņ!B4<Qi @a%U@yeMBO\xRkoUd?t8'nn Ɗ`k+ o<#!MCd]Y lk[ VjZ3s#gKhkYiIѲg8ВYYd|i^"'vhZk8Q>aYEMWcקi5uz%W ?O =6DM"85"pU4ai0 ˻bl,|`st^? ˑGL ܇i|"F%AO/lAS4 ɿMN|85:">:^QgzJ]"+&+ʶ- =1)FuAN=8 60D٭+±EVXç#k4{gF2D#,j O =NA@c``By +?,I74+a245y~<Σ~k0Hn9w[fהyS|܋D\_dĸZPEò4U5~' '1*F 8TȼkR8"Ig;bn1Y9{¯%30q <׎:~7wN&G0lW PKNEB z9zL 䆠Y68WS ̩iنT/ i;I8 }^XS+@bJ3&}>qEYi{Aoo6'trEIۋ ̤Z4l"H* 3]2IAS[=>KA%Ɖy湒5U ĨBY@@R?nf<7I[kM-9jBC'2:FU+5žȯ>"f `' zLu˄|H*S|~K<*KkbGBI2.PSSr3uEM/*)W|/WDCz$:I 5)ssu Lиs3)2\4Qm$J5bܖTlG Nɡcc=}pd(@ hBֿd2)M婽!wL(јKTsJ%inW=c/2*b+aFy-㫀G"v iա*d3.vtjjid]Dx簝͸%Kd+yP򱁾3h1fƉ*EgʭY<. ";HbIM0,C}ZQXaSzzr{ i}S0ɶ0΃+DO}hl\pfhv Gyop@DzeJg,aާ͒S+J2@B4@eĽ+қ?cZ!|7G}ҵtcN@ G)l9Jԁ_rƯƛ%c>R`iDTl.HO:4e4CF?1CwGGNRd|`'td|-2uK7l6G ΫYNa-"b--Tc @lPZ*/< FOObMiŖؾFA2Ṍ6\佯?ՄY;'?F~u;Zcdn+⿄&i}ѡ8Lo pǓhnBwvku q߄n4UWחrWp7UWl!tWeAHS íM+tM_u׶h6.zBjDZҌZj!yܥ$@[(fW*Rȯ4M̄U#ZQV#S)-q?Kv1uR` >yt*9h}d +UW|Ay[n!W51"KzRФ8P\,Cz7@ ^Oa|6o@J3\ ;. f*}%tFطǓ2d6.勿8 M9_y.wG~V..cF1 2b䊿2kq'Q@]6 Lj#VZ%R|ZۗmOd-Ζ Sg&Gmg\^ddxn4.N d<L®Ɖ >LNH%^)!R S"1yDdſ~ݖfȖ+p&S'ٲh FCKn6g!j\[M ͑[L2N9/2 _pDww:h6}CCs`9;+yY_K,ٜAdũ8Z.O,ݎp:vrq$"jo9]Bσ2©i\R/+;/Mm#=ψOWeuck ?^RdC`$AruEl-6:h-qK*P5n"W{M兡s!oFmN01Ux9 X]ݾb2'%`eM2 `r-x>%n%_pTeҰѠi^C[i.M2} VX1ILqA^+َ_ΗdWs:d<6@LV~Y9s[Nn.K)5.DeiF+ ىʂ}NZhbz?#|͎9Ho٢JNG<^N>] @=]^IbkJB' (PjTF\0amh꾲f&0wh~Sn^An;-t\l r13F&*tTE2m- D [g?0Y>sen85:l,|$ WynS+D/t8M@X0Edv#S`"HwյNJRI/S>*~Ԑpaz9$, ^#bb9({njp5BxbӲ1UEK{2q?ͲN_z.b|yy*>l;uAwUM%!Ҝ(b;:ϬѸSUMp-8 q!ɠZTCl8NW^#=7(F!}?9 *@3.3g%e=vsNuݯ>Q>cY&U|pU?'l@.vCmK.Av4Hҝ7^Y$rpeR)܃%w"mD퇰 ޜhAפwXS^ qiNeٰ9Vr9.|l6j_JAQ I*!`[agԾKA!6m@[,߶:_$ׁrMC8$Pt1l%M*7o^2\pUg '5r ej4q ;إUxX&] ;}Ȍ\'def4Ŝ,Qy 687N0f $J%!p+5RtG,hm=7SeD Gތñz]U 9O=Ğ3MDT4Jh cq,徹&֮xw~e屭;M&eE.k]Y>Z3-*k;/BK;qyo.j"ZձC:ݜl&O]1ƒfDpE .oy5:8P>b(~wygkoV˩|Ўc iGu53Ta'6}oy^d\"`B&yY`7Lw mZm]/ȤU|Ջ׀Tn]r]|ZETNV /+A[#{$kk"!x :MJ{;j|w KvfIW TKUlQڦm.%]mRpәh~lIu,5$9nmdjI6{ ñϾIrg+" zX[_3DN(v<5GhIn'FC6uM|526P@!{Y&KO3$R%7y-lzXcj~r+M+@}KD9840ck?")dm@ V aw#p7Րt23IƼg 5]q_+RPYjPֳC76)AǯUCӼ,&kND?tаC qbcv"E82 {O_.[x7^~rj / ̔U# x٫lt ]<8@V9Px-=/mʊB!5 aB3QHQ2LѦA~<*X+.x?o,&x Jr)AـDEU$E I|mU9d-Iݾgc{%E-֎]aPi3"pXǘ6[:{^&GѮEBiy4lRlT5agJ!a`,--$M~ۚuk2_Ig6JXa-g̕k@,#~CЉk<]ů`Xw&2֒v.C8B̵5-A% j4N<ȒBʛu 4ȜWʖIt&U F`P~#X +춝I+'= M-* `1}\!9eԡQd⸚^2ezxN#{ҫ}/ty)s+S p}R'l:`ɵ^_t @=7^@q]ʚ/y|Nvj4'm6~D-~в]ٟў}N +)zOیpH%X LʄS >Gy*ۻYKs{]?s͆ Ka>"oQ3+=꣜,nvNpxK3n0OۤZ|g6/˖ FWCKm#Sa5ChaIfd{4&_p|hW2gYWYZjPoGhLpL}'/NWC|[=UԛZ Ro%5ɋqws[8^!N6k&,YS1jsgEˌM!9Q{) mUs*b#WlƵu )QrB]|آ9.xp3iU7  ]=" rYofkxm~gPZRA7|R.8ԷvNA(Rh7gie;;uuӈר! 0SUu]YbOΌĀJHU?p{nїBG#`:c(Vx(&^PI.#=J4 ",ݡV'9a4=ns25&{kz5݅c[&K f~wc,Kl}=(jo:~ ŵ, -[Ɨ95|n߼ϥྏoFֳ DBmNҭu,u& ,21uSԷ# ,*- uЫ@VʻQ';\  O[]uD}{ZORA@ @Z+"MȊ\i:b#QͳNMXZ\e tD-@I!d@&:E6`;K#2^dai -r ncwzE 4tܛC~Nu)&<<<Ȅ,tP<6/oy;h@Į$oɬnꊊҍѸK\9!yor$ZY `JA%Otl&$52LphYfUqhzDP̱4ґ=1O H_=OCt jC$gAOQr>i̵k5'`ef[9<bfH 6̸26%&Uedz hmB_8RŎ3F1kllV̌EsYME꽾哜= ]郜Art 1qVmӟG䀛%z@5DЫy!1꧒]:][,qL3DÏkPp`G 񈋂m]@0>ٕP.rNL@1݋Ty77&HhSz>C9ơX|Ғ}ՍZ:q(]niA?bppK64! *#4ډW}uUak 'f`۰U!7ɓiA4 10x@廇WddXoDWĎnIvLbF8N:~y]\1}ѡ t!:$7,Z5?Tys Lp/3kDgb83 y9P|/UoXHAqu,d(Zg-+BBN[%˻QY[TL.,n]r+=2jq匠7/~%|xXux~lrK" AX׷6E7$sq>2cZdh.C\9*A]Lh째<3;n0[{H(حSW )$GGC' zhӮ< C? \.q(E,a*D+p]2a躇cVbw-]#pՙ6Er;HdW#eJ=7r[xo\>q` ;( g qI2XkYhw{%ĕlc+͛kC͗' )Z1|YӋЇMȤˈW{B#"Io1k)"#TQFkʴ QLQ@  q&Ū}Gl.;PH0ǚWWBh &[)[|d G7ETBtN>o}IpٰRe<9}]ߌ5 h/̞gp5rOQ-Zx)z\"|yTF-p]9 OB)>cN.{}H?Z ƆgI(us7񻩺 Ijw m62g4Jƞ:e&+{+FtyʤQ?!(V dj%]eP/oxM7mK k‚Y[{ۦOû A/\-cuՀeX3H\]scj!SZ;=slo<&H28$ rV)!蘿Y|4_1 A8$=܇8W h &h L2Ľ%ӯDĮ' X3EEHKnńfC$˫&lH!_)3sg:={x9xȺ5g0O+N<1 .9ӜOW9tdBݫ ザωz;GOX0Itb1qvAyztV Ynܔe@úiYyy :wMmkp0(?]Ax;|~Vb53l\S~O#4 VR:H`X!.Z6a쪖Z W=f=>8L!lcdŦX.L~Te ǂ>% zA11ER?3 8x!@bq{|O%Ck\ >YH B&#P[YʊP!##VYeKšanTa:{g/=SĻhXDH~}9~tVh7>VX\\iJR-TaKƱsCEЙ.AgI=_>1>Hx)F3W-~ RAWr R51 PJ6 7+o'Z"P9x&B#(#It=EPQ'8[)HSK ^&*{o؟H% w ,cXlZ[8mJ_Cբz]>ІYԡG~?s^+ߘYWK-r'SK1bn!\d8|Dvt/~_*7=XuBr~AyrM1-7MX h-Az7Nq5A*1*Ef?y}Eʴܼou=c[.e!9 i8%f_S7jlU'`GFyK@~Ab#{Pݼ h2 k,+̐$%ѩ#@iƅv.~riƗuO dc: חnIH1] 00Q'g0Wa]Ե!?/+)h6h滑xjxMnR3QΫs`)EФ/R]YY]Je_$Ȏa&vL#f%E-0,ttC$~@AS_KUD;өS@@,\(L'[k<.FX$*XTI )<.+ d-Ÿ 6ƣg`B>%}]bvmp1E%bx5 JJ7M(b .3`A"KeQbه.c.|$oo|A[ w tt\ :oO( Dž')5?F} C81 3%iy$+hٚqF6v]qQfCk'QŁZa~>9w3O{} fBֆLlz8y]ܬ*6$):ɬfq$le?sI? HܗoE6)nSXh4k|ʤ1g#_?>[C^+5z9Wq.b[؂dk i&]b"_ݼ6غ kBQP$R$TC%53I'Y΁mkFM ïjK{Rִ咮SCV[O{rzWw?BNxi 9ָ_Q.kp?}Pե΄^/ϝvQFRG*t4؄FgNwPφsD|9oL6mb(PQcr\ژU Ή7m5 1xи6| ^1UeHm]jUx_a Wk'lm?a J۲?dxw;3Q}RY.|ݨvdH9!USe[2IKDI'!Q+ʪ:855>{S?^(@"M(C}]ka¦w~ \I1nuٍÿ!J,ZDM0b c_t1PˠD{E>?ePſ]3c$)gE^BPg U÷/SwymY+9>T@UyjYV>7}ŝ/d-8 ~t2ղ!wKVgJXrΦ[N3Ld@2_$bujvR0!O %m;GuiZ%vn^}m\Tn?Ols׼pm |Hb"Eu?9M>g+'u@Ll <]g3yм]+2 ZpcPGdܶ])D9wn9?t=ޞsy)xzGR$9_WI 'Κh|xR:F(y^zg6vM8ǛU#Ꟍt ]H,\oP܆WN N6Gsְ'{[>ڏެ+[ KZ~?CrnH5c77焸nnnP;j735.VCD&-RS尰kd'=JPyExįL^hi-L=ul,X|ŀ&z9˩{gߧWgz“~iEy$7Wy1[fs_. 1˯W9,>3-U$6u"+\(βwмqԐ$oFa^_?*+Z>W Bq گ^Kvz9 ais#ڊmkGo*Fs^w&0IeHb83c\kCidoƎEaU2v]wC`߷Non Mw(Җ&uR*> &K0೟{ho/^!ˍ[QX颛{OKQ0!Hfi(Vym1QʶD[9zoӏ0$e: |NaԕTyw0</4ULC?!dD$>ě31.~"N!OIkL*h(qLXq#]nf1miꋪhˋЖ#ׄ'?n:4jT`QBQV[6mlByrpi;z"CZz}vBUy[ߨÅT.krY/;BsG{`ÖT ֱ#Sxv5׊RFS/QoRi,2`X8JȄ}KƶILpz!s c.YmR+u>RT8atjӸ+=&2'Pqo=~Fj<%c˛ޡe@pT$hƞoΝ9Gb۵d/XԘ ,c6<KmM&lGΠM6fbzwhZç>S"9BcvUiV:ŗؘ'jۦx6KLj|Liq,;XS}vNzZswԇ`;^54= YmUΣYIv+u9MYa,:`;G]2[#m1~ĥ~UO nDq$i\8{'9q{p,4IYqj#v'mLm2GQqZ&d_t2P) emr7qNr:Pt VWTHwӭi 0 m?c4F.HD6[K8k7^UIA"tʹ'Λj(=ʷy ș,fAՂݷs6]ЮfzcrQI=i?bHT J[ !aZԳd`!Nϊ +)zC3WiY1no!>x~Jf vYkel ּ,6ᓣ΂ACsc&~a\PM(T13=8Chz#rBFB'½ 0[d^#vaOj+tbaO5YT7Ģ !Yxz䯄aDH!l@Us*67#gO?fkx$ dҗ(Idt^B+ N5`']Mm=3*%'nQnZIk[+ćY݁ǔ6d=yEBm(&&mzFYî*!Wk(5WݿHjo4nB_{]j, [&XnYbX~hEs~E*5AWaot23Ãԝ(L,h[Ϲ sLmY{BhzLTup_|Tx뽤2 U| +}[i씲7g1{PՖ2A/ʫT GLRūS1wq%o[) t!:Rb_5f:k4_yO^󏔝nF2D"M;rj G\(^πXYc+G9'&+hi7"_|K1K"|GM M݅ 8hZfjj|KIs)BO(ĎŭsȝN qrՀRF*9G1" ^Vd#,Hq(ЍAщJʤ, qrI5 fm ӡ ~wx i^gDukH[.z>=YɹqaS/MG5̫t18eи4eۍ pSk~<.Kmc{X3 D6SR!ڍ31(7Yw!w:ymTY+4%Y*@]t!J>b%k Qo3ujΑ !%ؖ-&Ȗ*Eʹ)k&D] @I-(g3Ow5cxkGwW'K&hZXxog*(X<cPE§ (a[s}GLh[dMej-2UZ ^mg6:y|^TݧB!yLHO&]!j,.,$!P J@YzeZkM:Xns ʋ g `h}! =a!w3Dи𑕑؜j?#W>(ۈ@] r eBåúz/ mj뗽C_ijr.xBPoai `:PXNb)nP2O`k?ﺜjG/P9 i(o9T~5{$BVd_Z}cfO$账[b Z&zUmaIGHbD פ< <$@8Z+cuN1^ 9:2`ti@}ѧM9x͠E|cﱅzpa{SĿ~>xQvhfMzXŵ Ho); r=Rjd /iL44H&ߵg&l /lK"о6Ն)̨<~g!@QO3:/?cJ^[y#wX6WF Wi[4 4]_ρӞ}@$q!{͞tD_Tnb蔈1M04x_)n!K75 5 &8ؘX_<ԀNS OP"j"Yi'= +"fގIJ(Ж_y_C~KAųeQ'GgԠѥK7K]:a\}q:YmYz*PE৬ 88w2svr,.!~%,=&" c1@IwCߺZ`9EȁyLYVYoy%MeN|JXstv7keE7hṼh&λ?߉IznfqK; tkaቺ2WoCBt W GV7rٓ,uӺ(CL87"TznzEΞyb1/2߬t4ѹY7{4QKЍ .%].N|aԈ<ܬ^a,ׯjvM|@.:?mz.T6~s2ziy@Ot: (ڎBo0yrLCUgX8]P*,n;w9,Rw (EQ LAy$B"yő6{8!aktӂdZf1Øޟ'+}! fΡgW@<6n::$ c ʟBt ȸlT=5յiѽ0xQlZY=-s!fE48Òpx+vϴEŢCD3\}̕"k@Ύ$ F5j4^_W܎^d0_''҈JӼAjT_zA"q$źlo .ޯԔVgr($5LuSO똄:6:+]Ձ=ANn#]'Z 8DŽ=ueWBR5rh@|pGL-sY'HV9Dk&>nVv[}&I. Pb亀_4W#|g'R**كy-n+U{-*Ioij#lb6Dݗ \e>g4lڟ;K: iG,doAՀ!X|+G&N*I"ZjVQvaݑ~zs0vc4+UeX$oG^22]2 Rԟ^-܏tTDsϙjd=>TlBźRZ^d'f̒GyL3 *d֞ #*a^}}x<͸l\EclyI#MG8ڧxoqnqyF@fJ>_!% >_uL cK \úAiT_rERw"&c18@jb/,}9''qH>q% ΄>a&wןz`*[:g4[5Xt)eot,4d Q>/= /T#2`G u}?jݡʈ_wAqvâ+nW~II*τ+R9gxɈҤNWq\}TDcyric^P8( `P:;əsޥ~KN!$2.dZ51.NҰ yrSn{@5sMͽ\JWu } .B ^VJ?RessL7lQq-E fD,FT7̚H;(JpxŌ2!(;"9$]-V_#fjW"3Ks% [l=@?So *rP D']LpoVjJ5r en_kƺ*VTV@e 炌D@ Lr$!P+eNccMe|su% R$I 0JRjX!-ԷI5M_}]n"DI%wa6*.f̊^Ior+2'q%'L5KP;P4ߛAx eZ=wQxk[ niZYz^^O`4P4ʇAE38֒PK\$3!G弳C[mtL'ε' x Z"^usˈȤ̈́!,pQfGc^M`)gI?X)w! iCRovcI0bĄ_L]67aKE7RchOz0e1r*}g7ne&43?a݀=Kqk/ov_hM"dڇ2}c{(E~9LKxu{Fn`&GvӉTVhi)3AmWwa;9W*ұUvB6փ"Vq%K+{c O<ӌ'l׾}ć p-vK.[~S%_3PǞ'}Jr ÂPMݞАx0&ZP0|ݾgGTܐ}[Sܛ*x*d]O98li}}{@B'\ -x\ZU\{?ZBI^8%sY|dL06ac`ԒK}d(U֦sA2$W%@ i#fzj?s)oݼ5+42Z Ί ’c<D@|ᳬZ2|Vy1uooVc {H9sqڬlAIqppZ LvB䀹Lǯ<) Rzk|~6jMZ9vW?%*P^\(d w) ?bUP,W+}Ⱦ dP_a6V+0jUnӝefc]l>YJ22!vOWLT늚Vڀgt){Ovk(eZ>ɯ>q B`Kh6zn@XE,4hF,@-c"Qh;%Ԓ>a )Ӓ"y y8(ߧ3}Q%%nޅOj~݆HwK6S ;ɵESTVˤҼ4"Ts2ʭGD'eq貾ZZ%( E \Hu A" Ծ`ǁe"h S14ErFfAz//NDpĮm"Gs4.TZgt?}+qcTEjQvtK5MȝdCm׻/BFVk@B}!mGlVș\0d'6W1yuV z=( DoSnQ*A$Dx{s22'15v̿W^| rX)$|TM?d5N1M1//\|f(^e!kI`t7f/}sMLOZl#$yxp)xo:>@vM)jFEK C<$7JԨE)|NKuhAK,k1|cu[o \d @: U xwV'xSH{1.Hxq7mֺL^7Q1Q42F-%dw(Phq\נY/.4B-7>DR \F /-ݶX`LMdhuzˈZ̄jmԈx BeB۔Rn2&D(RMRI7`F4hoUJ;UNsti1zgo`y&+XjS$!zp%K{J1gQ ۛ|&E|hQۭt{]w@i&{3A.K4'] axD/[.A*vP+^,oΝ{Cpbzә"d7 s0cdru-:'w}bsؘ;%ހMJ↯`. 9% ނ<ȁm\_o:B=9xԻ`%9*4b~rzձݦydNaq :diwG z K+B͇aoZSX:֩/4H,jC*4ˮ=νHL_&  P5L$+  ;! g ;хgi-)HU`mj/nG iq1󜗤#3 7\fخJQACZm\F/QčY\yv1MMR}v 943{ʞnt*\9tdN?yX,\' t],GFe`%wV0bog6CtIc En_l΢E6PY},P%?\Spwg/CS5=Cs(GA%Jl|$m1GIkcHSEP3}WOU($iZZlQ3vB\7 /)5M iQ0 @wη7fϝ+E-vBfa)Gz|fs<m\-z5^ƟǤ(E_ OuQA1Ψ2Sr E%/GgEy'\q; #w͹ߓ~EGecJfO8U3/rP[&=WeIvQVjMm;3!W.eh 3WbNH+iZ* TX|r9'{jA"|ADvE)N'u9j\8F{&Yr@{; I xذܸщ_Fߕ'zKuy 5fsH[}׮8h~"{n_ L=hG0LrKBE .@DeF.6\ \JrP(ÀǀٮʿmosO"S6$btjSqnW?g-P- xy(<ѩVp->lc{-%H›e(Ttk<#WoIY xȈyl$254c4ĮgY<KI)9VNgԉ.QL -H)WFg(O0!(JysnU (ѐ>t.([X[$&ae[N9]-OπPDY}ʌŷGkا N-ӨFc[e#<⹅|#ޘV8K/zz&P+XE:%HfKOɼKE fkPw~}h%azD)(_\κFEg\$SΝrS(k@YJ]6ANVͱ~+NnC_M F=:!J>,_lv1,?m{RT1p*\`HEg{gcI- إ΋O>NOql;%(&j=f`u1ok8C{գJH8|f:Ml~:=9!/@㙊q>$nԝliYeQ>]_{G?&\Lxʫ2%C 2_5$G(%z/KcxA \5:fdUU\mHAmb B(i;nj u1~FE̠FWB hcmxsH6ќ`Xkn$}"on?b}I S0lp΀1ą L(m8`,PN3fD>=ĞD`^UHy F耍lP2&=1[p؃<m2NOɐm(jBt1)?31SZJW2*`;fBEo+879Ysbkp` \RP"?Z]-cCՔg@Ve!gƩ}_(h 7Tu֎^Z[6ҝi u9s*"]oe?9ρnAfo~JHrvzwϮ(W66ݿ9$&SWVۇ,088p%.gr`zH$>X*M( MۨǦJf`9yu1lB8 ye`EՏlȮ RWnk * 908 -ؑ~v7lkAOQCeF.;淠# {MTZ̃g[P >(ӂj%VGbR> yxU;zn;ƶ9}an w(T'\-d ɼt1אŻ~f^k-)?wcpw?DL ?|MVK0Q$Q4_We0ǻ)zoĮ#8dD`7b kFO uEa”'P XWzv}`xZL2iƎuܫ/vvO6ar_T! SQVR[338 #YdܴGa Wy易YT.sĽCtt;,M<-o-n8zA=+>h3G*@up&7Ϟ^]G L-3)͘յT6bᚆ4S }8l.乆z7<Hc4',MZ\.住V~t/'SULzY5Q?:Rp NkqctI2õ!—3ey%ҎS01b<^eOg6+Ӄ8/nQǰ&ZNzJMFnjpNɸ'ͨ,.4*KGlR~g;C~T-TXUƖ˻(rGZ$9 al]]m24FQ䭠܃pÕD(|~nt>_%YTP_ָPZ{r?iSF_uРmaHnK<Ec'2FVz]a0}w? woP:?Sat1['O4Bz7`݊:Umh$٘,o9*rP%`ib{\Q)(17y+J&"| dO_E?&$-\/ }2Cun%qXv6Rh3936#$["8h{?ʿ;%b!u *ƁyWy\x#h=~&^ 0͚T^cAv>V32>xX;i}"u/xئ:ȑ#4ضj dP#!-Laෘ:dGH%QFj@&AU3H::aSc`7*7eK'o%NpZu3F v8uu J@ə9H쏈CjiMr/]9Ei_xk\(n[}cȱjM{g+"d0ToL JfJ&wn)dBwu1Oj՝'1ACbxTVh<ʀ@**)׀I< v!-F$_&ȓ8  =P.BdC3҂t;D{l.{,^t SgH +[R#_jdp,zUɟ>Z^W^#*YݍhF[O)[_jE(ޱX`#a*/)K ~r@x"/ |޸Hl4Ac 2\St$ "?xӍ$ЬI )dk!Z&=Jʚw1jG^ٿBk\$Q@D @Ut%V;pqw$ggd-El_+uHOD(cUO)TԀ;4''UbejY;!λ-^jf@݋pIV%ƴv渿JV 3h(QCNKJB%II{'M''SWF[I*WD< 4k)fIU vD $}b`!$xZy1b[nNHF"ʰp1HH1or!) 8?llV:']և8bǯ% P L4fomRa-4‘Phzxu:g^Fp}rJ(N%&t H6"7z@p[,t[|N CB\P y\|ӈke9U9xO$syrO*俗1~6Zճ8é"(Z56~꘰c0Նz}S۲ ']ìNj 0+gGɖ ]N,Ƭ{g}Q.;@*v$3 p'0RplDTE21} 7DnEYQw$<%v`M,08^i|Zꬹ.Ʃ/0/ݞJtۂnv 1ynK:Px a`9(t!Yq/@.ald Y\aj/g4_4"ɯG9N--fSǘw,A#iu-`Hv0-.+6~+^8s5Xs:=$'SoAHUˎ)l02͝4 *,;끘b! œ.\ W*IodJ^2\]Gnv/VB~<~G .]ZY^2E/:8CV徕ii*+> RANdMy쌡5 -g7&ãME0y 8|v8p"[?E~˂Jz#h?.byw^ ܔE!>0:cwUdj/-(_EkM?9A.adIXfL5ŭs3ypݖuLɐ_b4`}*filXFMm8~(_]\bbNUQMݓgI>'T0TR&IkFϡ;}"'U󖜬^GƶɁ|no7n0;06DU5U<-cNY4 veLm[裉8BuU: ;~gM"9-'o=1Э ѝbA0:$6 *;~Ϋ5 ΨP5Ċ-sBTahr o.#IPQjVVhf[ ]#E-i?`82Pc-]|@tύ݉*>Ye)f |FT8Cՠǜğ3m cN"ѩ$LDH3YG %Ip?+3waFhPx +;ζ#H\Ukշ4'wQF9%Dbh>,63::o2;SAGcL?Bɒ_p~Ax&nK.v2"x$4p[.m>nϾdQXb }Ox9l؝=*0"$y{.W3ݜN/ܫVD_%4Xe .bRq'4,pF*w>~Z]ؤL[FڕgD^M9=Qz7i,A#p^5KvfNdYIw¡lw)Z-h FfM+S#{&2Ko*42OJdJrmZz*!u-FZj+i$B, bq vKБZu C2teSJhf$96RfJc43 =\q*6ˊpF~QӚ.t8}-FB,{4ά3< h+< \u~>U*y,%AS`>p3kGksb |N]hf(庋+Z̵$G6<(hJ]񬹐C:7džzc 򋨑6 Qcd^[MNgG.&dK.jNK(?1zI0 j1$JmJn0lGN"0H$a?PT3ց3ßʋ3Hk!Dԥdͳ.ps$cC+߻iV%)]?Mb|/iZ6UvT-r`mh"ՈYSz@΃k?Z'<: f;+s0^ 2NB2x2 8R#4p-&/PT'MJlG_YK y$ItۥDH<?II~t(ӏ𦋁Uy,v).- 7'`npvmPJ$P\C XgYO k@Y瀾4yhG?v qllK x 6z6`TiG I!l#]侾}VܽB5֒@ԭ nĶm'Eމ1 O#&کϽR-sUe7ŜcNVD@" m e$UOl[!I$< :QlW(QUlK{)fGc"-qM2zX!ב?x*6AUGɟHnzNٍ 7\S]YMYTx ryesNJc rKNirwEj#< ]VIè֖DH,x/QY=uznD$~4DO%婼"V~8kԨteTsBЖG˴vއiΜqiU h ;pH 9=zJ/g@tH{뚑)SٍgS .,Qo 7HWx2F=*TW^b"bdsO̸",?x_o'*"CV]-'0O*FbV3@1}oHpYFiFb zQ!& }9=7 g)nU|5`S)"I~"Ȍ֥`B炋,Ch{tMdN~[1}CKL'0J*͉@:ܢs@*ObG|>ޔ!(A}쯴 !XMyX1cF;d}O̅tR9ہ=\}Hm`†I,d,pd}G)Ô 7mgXȐZucZzQ ި8. b9V 1T9ڡC M +?\)yw؈T^ѠDdD-d3:|Z*8mg=`Hd~|,R#^5_:.&). }1ô5 P^T{o!ε}G D 2P.9Rq5U,$+D:vM꿯ᕜ0Cٯ́A `qG (Rl%R n9$˔89h?Y0 4^dtݷ1jL$Uʍ?YYXD`eS*wU G’U5a 3 UQkh4ĐVI,1?iDfo{C=d8eYw}^V}o~5-2Svܑ\يxniջ@ / Zuatw\ơF8j1tb4C0YN$j$o`yKVyYk呸 1;4c~~ c(*c,ڜЛ F;Pפ7Z">,KOjٗ~#,W4#-ԛEHk::6ZA^0Lde4Mmt*a ii$O`ꇬ]qn1%yfM:0_t^LӷH$fwgQgք+ nMהּj͔=S)Y{!Tmm03{aptx"ΠT±OC.B |=r-On _0ht2^lԫM-m ^{l`i9{*Dq7ygt  :W-uP("{ -VUIq3SwZI5DjJf>}ִg}{ZFBf pJ/Fs\﷎6@.䛃b5T" W4fg/)_(=H! .38T!!zRP(R5d5BM}큢?0?3COγd8 RN>-D9 o5|eTpb,Y%)}nW:g%ҩFNG>a5.QVMeUXao" h2rꡜY+C~? %8-}sro`ll@F&y/*f, $\ qy$dVG 5\S͸QPp)Qo0[ KMq¹BdlŰ`]T&`ݐ L! 1/y,kO)T&AD|/:١}!{M~ tuBi0?{Cȅ.P2+1㩘"x أ`s8m(c/VsBqݻpFHMୃ$سejפLJnkp0g.lRp -P!s!ˤؔBd#Cg[zq=CĬ*ٲ4lVr}K~X_y3[e$FN<Ƀ 2a4Si]Vc&.Y/TVPuJ|pMl4?[b`9?|uhz8mƶv;fR͓eܽBqJ؟&3 ;|4 =ITJ k̸ix~NٲrHkPR% Fx_]8*rqeNZwNѝ9 ohuUtwg:ZpP+l.PUf&{uևT6/* .:'OЁk~ko"<αmst?<.-A/?j=W륃u7[9[w`SgbRl)X8ۨ @3%/W{YS6r#;Ý5c8L#SMVCח̭e`?T(JSkKW릊*Nk1xL~!ndoaѓw aSff>Sl.0k& sFK# [ 9=bԷŵHw=V$YY9ꑫlW_MÛ_Z(G˟.:%@3͍L^iNЭuwdžeDj@}H //߁ӌέ߸Ԍeǝ&HR6r[~a,pNp }UG;“<Ah rx֙iuƌ  S˘1j#L! OQ``z<ӖVϒ ^U\ 69yѕB΃J,ػaڜ囁Wy{mZ mȤ} q m)p_1GhŵAoFڣvƟ32?(L pO/"[6֒=8D䇸 Telk/09k oW30`~J7 6wR 竆O8@`NlE Žݬ!@%|^Rc/u6P$dŘ(- ݚY WbW{zo ƍIS' 7G/#Q'(J_84~c.Mi%ݫJ>>yPUӟry7XZ9~Y|!ܙBİ3pmp!x^p%[Fqp2q@mV&rQ+ReqMLID'੒>{P|:4!g2puv8O Cu +nd=tq.MJ4K%{V<[]KZ+NL"RlKW LMia#?'gounǠQ>QHC.vzIz_\@찔j%κolu; ~-O|GxG~"Cg6RHs pU\_؟gAcR]E7m'f@Ϋ1F_X6iG"HӇU)nf>ʧls󮥲aa~=4$Njdը 3d/).T`d&/(L8TgJ-7o= zHL${}7% ;3bmd0.@Osykg4ӡNQ'9BA}wo؁3Dqe,v0G*/E Kՠx*g||"_ƓF(lFs jw ߲U3O D:כFA Hs5v6E]oFdp\BD>RIuS!y SI|WIo^ h2r] /fmu9e\Ԕ]AjHnaOΙ]1T kAƟzoJݨAjJBgʓs(Y &]Mad40-KsdN6=#h GѻE*ڴ CD/8|4,C2Ѧ"n +zZ6k&sL g4;oRm5=P}(`r7).+}':j"79,zawncyPɁwE#U:VzVTG&_Ʊ"^5NZ%redr"^'p;:-'/,lbӻoF+LlnPbMy^?$57pl8FYYzXV+pÅsP]ݩEU^InAXK~>F?}NVg%@ynKTn.͐-_ Ȇ#ȳ&X2Ug$4ȕپ2 _Кw> Bu_8s}4oKh >a0'( #1M~Oh`fiP=*zu(Jm~3ר0Np7bT_u13 5(ᝥu{9D21(LRq,S&]Εpd?PCN;а,7R Zd/{\a:׆|H)/D5ʛ9o&1Z1j* 4^r6?8%7(x ({ :SJƶ]O;E0E/ϧ`]2N?lAbh|a{$b3v]"n48@]g?xHjcne&+8]ּ^|٬ $DV\]4"ͯavAJ$ :b:Cm.$ E8'NN)2 q;PHu&C] X7 m(((0e`B $Y/ЙB}6oj7lFFzrx4>mi^5[4B_EgS]vjq`yxkOF"w8E7|<8C%4w!E@_[rg"=ܫaͣ6DVwj8Jq911r**l%&˽FJ TRy7Xmbk@xuoQAC/j[vG_kVg>{>uM_Iz饉)ymdUxZ@CAvV$/ؖ8QokE~Nrx4 :P':vIxIJ @[[cqpҰk -=2rxnIB:Tt&.4E'LҐ#W+P/ /;-!%!*JͣCx̜] [{m`S)lmޏaY#61(+Aw&[L5D, z~ T\A+}(J2:{-U^[")eEz0:׽ՍV!Ry*Wbf~63;5D"E)t\D]U_*%,E\b;6˷ [~=*Od}H` 9:KnC2PJ=|v0N,bݚ;' 'b44TN!Ϯ@Z1!eu7~bɒd_ lKqBܹ5t2: wowjV53-z:@>>!pV%Xsu;;UiPW UqN3}6!l6b4+-2Gyi lyR0G)z[թC/O *5RR3!=l%pw{ k޸ $/}#jF۟3qF~Xpg03Co;7㖣hG<1FzzfALM5DH?\F^- ~.x!joƟqQ+z] NY}$/A~6Z,N3S=;CK+.\R.ds;2f _H¢B5|7RoL5_1VaHOv|k㔤 w$QYXW(CAuD\pRV: sN5ݞ2lT~v:C+)[=/O& %D\,;ײp&QNDn*XЇԑt⩾{͖n(a249e|KAi v? DS#KM+ sm>Ps;S, ))>zS{=YyIx,-U<]jʬrutʿ|J!pX:,ɾ-ph`ՙ5z/I ߬UJSnJ4h6jikj~_z˭ W iHQ. eOj>n7FzN J6G`5PGDԓgUGgeAsXhR`.%QGh`A'G^M-ޔ0=|u+RZ:P-*A6ڨۈsE>׭%\a}|BnENڪP:,M9ږOnyr^+eb-DJQ룠<ꈬő >P!lKDF{dJ'BQ^[p[( }L0qˠ C "3&At?*1A߾@1ҜSDĻ&* !} a#+O*_+:0qPh\pͲ'xa-.},#*St J^QA:{x\/PJPǂ}R.+Mk]mܳt~?L Pp[mijN/Md k]m(ϓ׳cmUtIMO!rݥ.esh]" 'q[7qx2(Tx%:&-6:oD:~1%O;gq6&p6-PEt+?UbPUVgvRc',Njc;{.דV&1QEUITNk2t caR z6(Ws@QYEpx2!#0SKT+AK$b?yjJ, ``)>P6*ٜIY6c6kz ՙ޳pܝ\f]hyY GKi+f.km ̘֘3(g/sv*UrnTns9.9Kqk;RBCȍłz׋1HTK` 5,!d;2 l"hc{`7ԅB4><6,j) I?>P.{ ǞNZ4~;xO`15PrC j*F&C ?`.Ҿ @Ī'gdi?.[}Lڛzn:9<#½oR6t[O!KO}BЮ&w<_ c^\[!}b@kf=9''Lt~Qe@#ј4\xgwÔvvJ t[6Q?ixoH jI>[(gZ 3EOcύ5:OiSpIC`THdIW{tټ3Ǹf\zŨɢ^H9άf ,NU9="ꌼ,Bn)܍SU˦Z+6@Z9]מeZy [L/,9;CZZ^ihy6`.|)i"nqk Avq !j6Qk0_P8:W)+o3󯊈j&+怲oWAoGBSc Qͦu2ZJlC+wd;J@3S=`v,q,B#"E): dHN~(|cH}I++VM° ֳTRsH90~$?G fwWP|OA"JF,ׅ]_~EwPe(tHD.&>}ɱS\+޶h,›ǒkN4CCppH%ȎA=ܚ,C(ы?LE.S<2&- $ evS-; ,)ɸO!@ !D W\vU4YqAT7~ Z]t>Tc^V2G%plX6i!@&#ޙ"|%e35k蜔T/c62 hҙ}2ǶچF}=mEG6 e0y o;bZG\>H|b1wN{F *et,DNW DsjoAsHҨ)bO= (`}"Yo mޭa*m }%Q^r\3Ruga һQZi*+*.2~gpgoYf1Q~6U`-zjzfWlVlq5CThi~ׅ8gEӊI*6#(/9̫ס Hs.|մ]ZGG$ZM/%]skRLQWLt.#'6۫']e`[z YFo)vj90H ޷ET[ԶjĎӅXk`/t=)2_1.pWfAFJ`~z+3QRxMM<3z^P ?̖7,NoЈ MmkyleE}|g5,޼V6GCRH< Z7` ƁӲYm. q).w[N.sUa.x gy{muɓ.9sQ߇PTe 3a$Y<  W$EI(gjE:7kjo|VJ8~˩5_Tdzf{H9ݺAW @(8&gf'eo:~0b+{Q^n:H2W*cr+HqWR1\ Z)4HUފ)(1Cu58x?S$[pFn]:}Tϊ,FvWk<֔\7d*<٣yn_,@+KQfUHÂ|~TrAd^& lG`@2M@U:&sf!ЍYgMhOӱop~.^$b(/lǼѩ1>UIq;$Wr82}T>16L7Ur}Sߴ'9RνML`Da{)O"o Mzw1;X?Z$ DJ4骮`W51ٰ@rTifrGHZ1\v=tFO Ls`jW'~oQа˪cWP; O=_y=r: #tP…6TbFOe3 Y ޒu@--¥r˙"Ccެ)9L_,i1fgv-sV$ۥЋ-T8R{}M1֢_' O=_B3CisF[f.xd;ω(RSRR fZS}_ XkyQdn _jvE=Ok-~">!3s@1UC8 H !HJtrT=y͏ػn ``QvNޓ~—22rO{ VGNB;8)IrthqT,*} !{Z&~\g'݆&1]߹ @? ο {/^%PZQ*QxL8ZP$57GƁQ,zNP~dt$Зxvh5Gą#Õ&jwk]`b"|@h>- =3srՠ@[hh$=#!MmPm\}RAR7@?`T|=^!nҗ"Kx)_A[\Lp ~ .B?oӨG]m aLԐ oQ@rP~_ o`u쵵pq>NXޚ3YJZ=u 6t^|;YMnSezr%&x.Fch}:"cyr1IˁYgU`csCf }d"G蹷ôE!tyX5C Y.<.1wVkⲖk,j`͵ӓMV65֔9sɖ" 3&C C(hH C#6;x]/KJM6}w :k]_oX{ʬ\Zq;ȗKW_ >He k&@ħKw;d1_Mq=x'ڕcZ ~xe u M=XlB4MJ(7zsz)pudVbZ)L9Z?Oœ` *HǺ/ ^tFY~hUȨ5Г^UMx?Xn?-}iIU&jwNVYc@ M!nEj7]^Kft.8% Bwf}atE4JޣB{q/$e4@Oj=)/(nezc]uWZ;tf2E8xAWoLCҮwj5& `N MTG~ajY~}~Zw%eEg<ʾpL5./Q}?"60!P?b~QPũbcEW1'7Hmk>_@[BfH?ٝh>3E9 4p'C`mLK_}~,/!yi:~GNPhQNi7M8aRjO⪂ߖ3"WɟB_"Mˬy.R5~&DMkc9 H*NFATn\:(Xބ4yеx A Qw*z_.bw=(vz!f2皙sb8+_~J!<(VB2Rkԏ>& RAD37$˥7-fg錛ʹ7<⠦ > <&_6xNW6sl|?Բz0 ^" L"Br>{}'L39[M]ueG/ dVwY[a2o\nr*7N2D1^-8R4a}jQUyнw*~IgBuA5R #/~j|) a:)nUu0qg#8 '%&&tm9\R G'K:KrlVog (H` &ߢ _U^v.DK;Ngy*Zwu0=a9*tOrZtBh'+p1e PָSVزMSiR_a#&E$dHjmL y 'OaޅX@D'x`],MwpL8&Vz/k[ݡ,enûda``b{#߇?5Cy-)+` Nlj2wa0S,+>5ޅ 6L dRӁ:!2 V ??\hW 2ό0FzTZ~0]C|MY;9;.gkd\gۖ,m?_j!T||"J͔e=d8E$qt!`J뤊.b>F7 }ϽdbM>T1>26 Lĝ{O0_3 ,}wn;.xPGlꇊ9};hVݛq{Y3Xs?8~&I!x;SuW~^ʏt/TCyUY/ AY'$)]Hړ!UHzJ[0x K$- =ÿ \}.BQ?Cs0)d#!TՑFVh |N5%ν"s>q(: +-H'ѳ'WE3^٣[}dO~ 7-Mȥ5h3]_0 d;PE#? &;i+װ#QķkS~b xfH2r>}P&'uʬ_ :ZuKKiD;)UHf7aIYVjfGXG&郿'Y8H*$ޠ)ˡ!ZDj4eo6Xqv^3J?3h 9C)E6=>V;cϒ> {t̓2Űgx8XZ *,|>]n+pIFc כr ! ٣TEF@"ࡷLwҟb@(E7UiQ/n)h-@Hʮٳ|g/H91qLPF|c(WF=QmHbĦCaT~~Zcʳe)ۘnHFJI7ԴY&%9p &^户t=en߮S XGؿȂ Oo~77ˇ N@BBiBv%@`К{)Xy\I[UËT_sudX37?  DI:!>=̱&ȯ6jWƴPqf=@DoA]MV~飛;U r|̴}pj(lD++<1JYyLl\{@ӪYw_`Ar;x%CCul`n19[`*ckR`|`9 xal$hQ]}Q(K6% Zip2C=* GOۿG{늜՝MfcڄJšB\J [οaďc"BP.s"+Ȓ TA_nKa!BJݍ;(1)  34nEDk@so nh[\Q}/g'sNnc:/jХaLHR)+ƞ:br4mciܳEn6*/pb73F@BÐmA|9-<.|N Cj[Hr<`)+&ũĉ6;%Н͟!~$,9P "D==\OMrF%+d7C F\WdJ(^դx{By*OU dM SQie h}Q u#=O{1`sՒgpbNY<64wKVgGVXx UxTx x}_Mi.M@R M1 i svPP6(OL70&$A䳣 ,Q h@^3 N̶% jbw\Xg-iOSGfu'/-:Di\Z<{Ի知emȱxLcˈ'|f7-#u˓J]A~RCDRf̈́lXo{ג8t!.ڱ/$'[vw~2i>='N2Q0z@g4ME[} F(^i-i8oֳ6Ԭee4>&Et'c$"S-inpёPihe@p@DYv1$7~]9J'VZj zkߦ oc; P@@$vW}"PZ5,.] MW/YU ؐW%ZD =ic\*bc,G)yƐ;qDKYrcuy_!>ItDktxMx$,cL;N\{ca3!3kWE] )ZC5B& t*c4׮ [q~hKQ--H#LHznJf yˈLWOZKwCq!]/4B7vCdMR͹J*}Ԟ^uq?`y6͎#8:a[6;Ұ-v ӹoAG/BW?-mDzֶofC;.MyP+8ݼ$}bd >G&\0W[yq.oE!XL_P>6ƎG{i`' EaS<7HG~B{q{F U`@iZR ajfy5`kzX`@y#yCuڵ[ &|vD^3~Юl᥺uܯ'L̕A=Wƛ ݳQ4J3`CH +rghrV)6R+z $ӕaEZ4 '&QunP j;ߨVknܘ+f;]7KI /ίI^Z0ih^WSI@V+gm))~ d?NҚx[߫\6N+eqVʓK7AJtr;H L)6cnHwMKԒxIO 8Z9ݗCr6w"8dž%{ Iw(Ti;%]wְU0m7ǘB\+][?u ZXz/%L"^~([MbF~ܙG5״uS^䩩hjhfEX44F6fO.3oZJc`XFHݢ8%ͮt^t rmuhY_Fm.TYCQ8J'W~o݂Uu`HΙ[*=bP0|B_d!|bNJO'6Gq:$=`oH:I zylo@*EX @[e"݂B\dAK`ɐEK"^P8Xa ;Nl=̭w({rl,ˆozS)Iw:,QSBS*ڂ_3#b$Tj<Eܚ 3Xq[znb_5SGXMKuHG7ALp{[qJZ.ŽD6 L xCSO-"K|V6 ;p yDtTnh8{sO=qW~%=~i ZJ(zEJ?cֽ?8>0JSu3^smgh9ջ夞pJ7aᄄiV,i3`?\+.{*x_30م߷mDƤ K_BfO:UFxИij lƵj >. rA-\'zE58.AT1">]m?+q ?#X q|%/}xak@esn>mIOfͯ? e`;/AhJҴWSW|ߦQ AX%Mc&X7lxHgeK/$Z9QC')$VN[3,"3吐!-ȒTω [/$- "RF ^tT\g\yYI\<j12PӀwd!/3g^F;%5vT**[@9=]ruiPcO NgѰl\=3*QI?"!M vQzU4hfN,8ëQi/`JӜv% {67VA_}臀,`G),21ϗ#+ra"VtEx B_̡Ag]b{U3:EaA0w/FuGو<%`RZ. 4ÄW-wU]9fy_!\[)gAհjǟDz4e=h ~t@zo^DֲSOX`H Z'/ـ)J>x7cSvVPq)7ݠ\IOQZb6vؓ KHynfT@=8`{k-s•Ⱥk1C@wU8+TPjEr9}mغ};\L逐Z+ g-_`\ `/ r .XY[~~_˒{%|A(jϱt. bxxٰ@0qhjb'mh*} HQ/o}AqbETĆ">iLY% GXI~^5jd2S[."GrS\X]fTl->∋ΐGp0|<96/G*tJ`։IFF#v}J~ɇ I`S,";&+Is^;'J*p.z~o,}ē򔍧PkBAձs r|7ע7l5oW7ھ=MsuNa=X]ۢ| dh9KtK\5afzɍݞ(rl£1dmr{yGC<1YE|Ǵ'!D)DRcAC2\phdNytw;URST{l? c2(pO73aɟS1֘-3yvEaң#7 @}{POQPC+PQ'6zYf[IjH>7)A~>ȉ"^>Z/?hbjAN7bӓN¢n2pꗍGZl(iw&&չeld6%D ,7aG|oPJ*XȢ`o hkvW9FGc.K+_sG #*C5IMM7!019Gȝ A+0axHBU?RZ|**`@v{xJ-J9BC nz (:<Vl{G{D.p N%]*d|q|!ej ?- *ڥF_ yrHAw2y3^?p,ǧAȀ諀|ND$;p~$~G"ͥ<-+aKF5\X/}>~/,I1̛F`غwVZ{Bagw_0`L;46X jYՁAO ahduM`x V øؕf7.Hl^ Jҹvp:MB<~^T43$/h˗fBv|G$U{OO CRvJw7'ʩ*]P)BNQ5780ξ#Qv-Xɶ#lU͢E))]Fhcx&O;xD0,[tB}q@bK_շIoClCOX'4@LlGmw%)%鴪ʯ$}8>L@ c0S<ɏ!H |5W~~Tr|I&LW7g&}J;љ4pdg}z$R g)?z!)׌gYAlSKd>ɭw{tٚ|Wq0o 1]S䄽2$ya? ZER[:ei-[j3XzEe/ (+T[m2hdsZTL  e8cN Ed#)Gɪ3EǍAa P8yX#H:d g<h.#K*] XQ[R h. r0v˷ePpgt(nU@Y,4%=e fia sCNA+5 H3Dl04 ؋u8'KHxUFSX PKKҰ'yqhQ4/r"ק_iIy5"?@ ^^U:/ YGMcw!S"QWe.pηJJkh7pj6a>v<|n|VH'V"42uEn_ͽ kQ:9D]ұH{RQՠm!3 L!ւU6M'c'Iء[2 VQH$pz틜qf?ϸ9d`xR`5k@0| D7V愬Rc=0<#yrw))MTkП6>!,(cP_^Cm0Yͥu헣ѩP@ :d1x#eUECR>Td<'}ғ$1XNp d;\pS<67_ߚ@}'jxW WFn:,X \x~jyTV_Ԙ2hr6}Tؿ?Q¿i9Qa - _\?t7&;c'H0XfRDVcs?l9<-9Ḵ1]#NJf!1| I4 Jcp`st5a6iIܩ-EhE0e P^!뛧8z@TS̨$\'s]<;B8;gn}t~zCupD3`6%#hZ\/CdҀv# <:x ^f?h*vZk< H"Fܚt:&_& d8xătMLEs0u,QDruDp{9vغ/;WQ^c5_pY0pkܰK*{Rt6 lhE*`һܦU. q&ęZ17D6Sσ)>:L'61B?7¿?؈Oɉ ;VoP7+"BDMx4Ov+ˌ^c07U IQs J;}rØxVJ ތjD9B<౽sl۲P|T|b>rc,-opSR\I6Ԉ4CwEݳHg΃igCt>yTLa 8ܧHv]sn!B,+;=?QAFK87OgwH' U'70H:.uymnI0pbZ]fi10rț%]䉜L|)̑Tus_GNPXCf]lQ*?f_J" 3d1UkW@/&5&[RZ}ІwC;Lll 4Ҩfe}^*_XSmZ0Uaϔ^IqZuj*XbN]SHW+]P%*,"/ɺ?v' {-KF Ḑe/;8=E-XvM &5 c%aev'Hf&$ђeI2]Bŕ09 M_JhiB~1 [ʱK$*e|6[UqjUS$UD&:|k,0zA9$: bօ¾17)hޏ Q+r֍0=TgqF?OW:/VVխ{suMdoLh+E-  ]C*%(s! v;^ 1{Lܮ_ZL_|2|1oV G`֔Ԥ3wܿR;{@ܺˎtHa2+VD1:;'J'UZOgޤqDEÀ0<o~ $הs <ۧJGP$!5^k`; pqc0=C [\(G|': !ROUHؿI;QԒ0z_6s0͏ス!Api%㰓F Qa3Jb+?|L5pCߡb$ gi>/3جdGhI%Krj'xZtu&1I5Yy5P^ &#fVLfptn[*Zf%zF\=!.H/Fp/BO;fRFصK*|VΑlǒzPbNؒg|P.y5-h"1eSVr m<9=X wP N䷕#mosa1~B YՇ-ItG bYڭw3.yYM+BӍbeyX͈$F+li?~қ9C"a[)^B'TdLwƙ3Naډc8|1\?#i2x3dY0GvsO{ўPoد"GׁH 嶘 t٤m0 HZQ:׈Te;Y5#Pҭ85Oߗ;!aՁvO'qGc{c:gj0pN\5v*ݵ*2,s_& v@kսل@_2*>yax6/R)xn9!r'Lٻ@Lګ ](>Z ٿ,ʧtX=2_ [9IпPt~myM EϊA >DxS K*4jkv/ԚŔ:&yR6U݉s`;:yܺMGZ~'=I]~b/SsyYv8LX iᢺl+,sS+8#^)vԚϢM= NQ!—3th /g恤mHt {X~*@Wk06 _o$E#eE;uaIa~|KӰ)kSnʢUbXRVZp;̋ 8Fyҽ#y/b A;fb{[Uqf *ςi.regvnJG\;s֗QJX$+N|LKFsN4II`nrb7I p@3]ߚeH|~S|ŸJKҫ-Mv'LRmy[xAA5_q>\";zWkv=Jhއa`;ifQ[aSГs9Ni!(ds@v8SaĥwF"JE_#yOWz%YhwKɫ\-&d[3fp7^|uui.ܜ&1b(j4i3!o%Bm/cגI35oΖL,|<ͼAy啨+G"FVMz =!soG+ży:2(-򁎀+^jz<_-_I̭XؑI<ڮh7&Z 6㺕CRJ*xY kQkR+ j x[rLanTWbWm ʧ^"Cg2q=hzsnQAEÞia%e;oGrksu$GY#Z0XKKYi?6ԨcNJV5R1v2^%)-UsDO#ZP'p̡ Y+VJ+׹(<= "ߙR3 ڭe& X9{aJVRBwJEF8ȭ0`1; H'FZopST~V_^mD՚GaTo "_{YjhK'?h3&c;*b@$?DnLGoű$x݂|1d4CPK hb>=F/]Z$pe11y Y[CTrn5CWڼF/Xďha&skT֥X:Wp AưVqo&f{99{UΞk|C hRAaK8H'}Ny&H?`S-VS~l9]BHNʜȟ)Nze)YJtbF@m ;)bc^[fY+w?e0aeGдNL޾g1%ǙTHl#O=r9n$3NE%S(WNi i.Ƕqkr0]4p}7s S{e0 5}q%?kH.QA"#)Gٿ7FNp8zTڦxnnmg_@дGEa}peKm !VGCqqGړ[8V<^>q4Nu:*ȗ$ηksy0%?Xima^vZ,:Fo[Z) d3yz$"?F-Sp1wo?;PGQI_hxvąf|5>qVd^z= T K{^`EΡYvhH Tεk>$5vHN Sşg>xUIR>T,>m}ry", %G|S(5_0?6ŋέ )Bɻ8W?" חszM4Y>ӽLKTb#I,i(WUG'9jmoSl1Fk6bn"nޝٍM]`+û2 F&i`GSL{Q[.v_y.6Kh-.UFbuSc?Rct5'Mo lg'_2\5LX=">AR&X9@ 6*<8彑k ](h{wCc}QM$}Nq ?WK)\^,w(n,lE9l&a=Y+W"OMkVBG$SAe2~yId/'v"+A$ |Nif*d́R!>RZCo2X\6k;[rn,,ҍ| k(ZsX[2V)yJ:Ul@а|E /ZnzdSz:E?ghQ#=k? 1Fŗx [/@F[' c< [\GU H敇:?љYZ־/h:I CIBnd`ILTo,'Iܰ& QǸGKJ'^:mW` NDPw=mdWOW)gsI /#0/=ލPZӹ;}Up wzR큊^F WS(2\C ^52DK8쎆&Z 9]FSe#%5f981 gY1K;"in  eYG= !X&4HؤR5#lwwD3,k~u9Tc?Fop c%d.z"P(2lo|oO뵊w+sCy1]iC4zCICYȘ]/%4hh$HV6pMPzf$6fc/mMA^]'sZ{1p6\oƚS ~!*"i< ȹ/?8}T_qt;Fh+?'h"3}3뉱 u%51|u~{)_^s+$4Daw&oIV ndnuac0ʲWt-E}g^'73%CFf)(2M!嫺{I)mι\R!DoO؋8n{&3lX _[Ǿ3b{jUMdG/Je]!i^@Tj+?/`^jѠm2 OO⹙{ڮNp- 8>{kj-~!h X1JV\G'G&- S@5\kp͵2$Ao۴VF BlN@3כ˹|iNؙ/f˜1)`zyL C] 4wL,9zDm@ڼSAeSv*%XgY,) WtnOxv+L&?sM kUuV3:`5k7٘|WCu?' K"͸!ȩ f*_S}EK,8T? u)bSHRPA [=[RJBpܿ _;?0PJ`M7\9G%)_"z4qČx9ĝ0]D|*I$z ͚/`N]p ;.ռ:%-b?))>;,NW jë?s4U(SXJ6L77#. Fx);[o~ D&`׹n+ *f=v<>Fv՞e>ʫQm%&%MfjpV㿍4;_ Cm xAy0VLTdZzdˬQkbeDy0xfB  9݊<*#3ttq w1r7;a\};y=H4 8QuGPm u:g,{8e fm}R`֛IX4-=jWSml3P{vlYX(޹83 2UoJMbqcH_b Bҏ~h:`o\Gгȼ ec~u<9rv,}!RwF46 @۹(߁Ѩʃ/2E.TiqLy2A1:9Et$𪬦--R75hNh1[{PZ5{B`Aeʷ4/ijstLGRVoŘ y Եr>O94ƛ',2MVS} `Twiq=h (7+IRbhΑmoaLEQM0N0 %Æ!#ut]{zKP՗&VQw qu62G@cGm$}CZ B $DSox ?b}i7&͜#CsնT.Ch%̍R#,$|?UPؑpD[.a33g0]q !Zmsu{dRtShz#!6̃ DA~ b]f\fԾm^›e^+1NX̆T*_ߊ$! .8.C9-|!:By}R(uY{?J04~C u{8ۼ[3i:bYhp fT\Iӟ\0 kJS 3JYh8k=q3g89פ\B1g,K )TwڊyϘ/T2rB]#K'WA}{/ǹ{=ߘEBWqMUGвNc%-}7XTHBרQplj`J5C*u84}?B:ֹL+eDQ6?"Prΐ(EjJSiE+#G X7L"&y;U--2'b@=]Ӻ&|B6I~ki@'w=Fr!P=Ybٜ鞻r;F5_9>1d2,.}=yʿ!H}8i87UW'~Tf4|WIY~1:R('$&OK5j_7@ J^U!%vYp?bUEHG6,NsIg=et.I!hk9wb]e B/+)!<"{03i\MMOԅt y=Uq-`F[! #U]yey] 5! p3yƲw$2ςGy.ŏkֆQ4ol>h'&b|/:.%זblD++]*eCc2]0pik..x]@;8Tzˎ&!)5ڞvlFZ6N[0H~yŊzΛ0wEGo}hHL0еuȻ=)Pmef 7sLB )|_ςIE|d.6Y)6/ ^64I/nZ'ø040tҭI ?! Y27lhL6rO3WrY/]$RQu2!jVV XG9Cߧ3m_~1 :*LިY6J|P5U*K:5m.<˯1 W? klCO7d@ mxrbpK@u2y@n6f'g|3X\j~9U\;$3$ָM<P֠73kgt]&VSZu/1qgv( <r׈` Dic7߳uyҀ1KFSdLƸwEU 1y")5lxGF}sbX¶룩p,K$#} }} = f3 {):an&N1IF6.Ӽ\/qre)@gfca\ ܅iTd 2 BnFCn l͎\u.YXT3<[}i^CL ǏwbUZz,9Q⽿Ӗ?ZZ_!h5C"$܅JDX;/Z6'|j$Uk ݓ 5Jk"FpCj mZ8m^VBݜ[g-`᰿Qe9C+ ދ9%2O;*.hȤ8y дL݊9bܽ)C0eB9;89#^r d#X3*wUyqOPH ̓H\!k;\n򌗅9%wa*bZY`?-;̀'+"Tҕs=HǞ[.ߎLB ?)+9߀><,9Q+$@4O@_s-$Kt+ BUr76'Vuc?v9[Bx1 f{?~BD=9gzr$f)UO4qWQۆs>hd*͸۳iHAƲN*2JkBxDPl.g[3 wa֬ICX*l| E KIVXS~4_ǧhi8+sYX\bi?Ŵ+<ҶSxjlK79v]VYZLdm0V{٧ 4 UB 4paVZ~5O~k]3&*d=>JJ) } qр3>D_K\[ gJ,gճ44s@׻aFOaX^cZ N'}7Vx i }Md@kk?lɺKykˬ)>ʣ]2iDQ%nV"4yaj[ya$L4|$jX=7kOt6hU`( Ώ,&VPEŋA)#̏2+ ,V@ }u&?ҖR@>=POH5tV@m: CڥKyLOhj@T:}dag]T <ԉf.`XG&#WFUin,k!7,]'o>vSzv}6@In*?1qDgG"jQ(*݇"dmF3#~i*9ͫWZZgA&4IBimK!'Ij+DPo[|~te\o s,C%.Ss*4tcGߡfqk'c\R ~]HVp@4 S2BiN # ]q4m} c;Y[_gDI Qy꼋4'QQp_Of/M_4 ~[]b+QD qDcxϘ:Hݐ6 kPv I0y@c6r4 M,::w 4Kf={@ =l[ z,*NthRsXr6@渁J>%Mk_״r?x+We0`Ja"]+$ħ\Κ,;6= ]s 9?2.,it1h=GH 9QTɐq)}Q9&2AjuYOg.D*0Xv o< S75ko]uGǩs!25t9b`";H׏=~ u9}okQz4C$ګ5Tޔj@=-d[~kHjߪOx1[7Ꚓp#$Ƹxµ=fCvkp}X?=dHiu/nZLI9 m8t=TZ"Dٲ))̔WRW/bO\ Dd<~Ix=I3:9H7? 썩 jUU 湏-Y0ۇlN%b<[䧗·)᷻44=w`Hw(ʿbQ)vAlKhNJ܁RMqcW7$R)qTVKaV~1miCe'<ȟӛ5)#,;[ H @=5E؝^HV*HG8XJiD'A/wNo5La"zF%[ H@SOT($SpA:cEY&w? S`K6%vlxNŮaa\ *q߉jg%V*S_G'<$ ?"FhjPPQ]4oX}yị.ZEф+R@-g o= C6vヲGo{ a)BSE}ؽ_eL.rIV1җ:VDD?0rCjA/ASh(f.MPD AK ɺ}d5wy#:t86zR,PG4(}(=Ns6P_%bt &.pN$$nEPsbU>렪:.kDJ0x7]9s!dnL:U F>dQQDᒲ|=.)M\X(hYZ73gH8=] ^8 gtˈAB7L1M#S d뀺Ij:IUƲ]@@=̛ڎTlCSkD\й.h@4&%9wc1*S r|i"; hCF3cԶzg_y7$H=t 8UH&)$UEQ)8p)s~7ZkNRۖnN":@J_E }o f&dg+M+Vz;"-S4YN֪R[ltF JY2C gL8Y'#0vx@*l!y"lFASd2Qh6O/g/)KjSO%guH&VT 0!KFf+0a3vƸ~*،g؛ i߁}K!ԯ Nbc:Y&$_W^ 3' "/0SҗV#q\/7ٟ5f|sn {{oL& JR~!mIDeG2Ğɩ[!+& 6TJl .PDGJg@n>ǃg=${<ډeObmD5Tmmӈ =ffSWmT\KIu*i mȄ_h]ym6v@ЏHvN>>ƑNZz3y}%K[d֋"zO\%SC.LWOC2h oϾ )4L~$g Oй_Uע×9UEиAuɧRo#_%@8'_yo[AFbdPUa iΫ z-fܡ֩0E°B!cώ/zSᵳR@t V2@>J2?*pmɳP q>7lp*}ߟo`M3*U}E$N4kcMg>R?";gP+uݕ/E3b-J]!xм@!U&E@rǰe^J^oh_FkԮڕ;9 4PoQ|: 1?Ac dlVq!H}ݕys&L`;c8(s%3kzywv= *Y*5|sY͎],~-˙E`^c5 N::H{TKKBGJs÷nCt!qܳG|xe-|.ޗf#;aG/SrX9 dJhc^Dj^\ zlam}!i*kA*!:f X`FuDr<%{zwIL7XVxpdX)}).'6<+(CՄJe>Kk6:1/cظ"ǽEu9t#cǎT,URObzfFd}}z} =KoTRGKzZ*<[U򳈝-c i88ccXb9(~'cQF2:%ttZ  ?O6&l|v]'e )EuE?JXPGl_NPk5KN3)Kw܍5Ή}`kbQ'M90 BOJF?v`^P tFsT>Nu(vL։?zܫ.cTTޔe`3)&j,UF՟1Ơ ]4'aR3+,Ŷd4)%4[H %hOO0hNr@4 zEFαg6cumx `?M&AfO(i$C$^!6}c[2A,t5!-*:a>G_!/0Y )݌& =%72HfYq¹}q9FztE0쌋g,ZWa!!I-,c*>'ӁĶMD?ڡtV-ɳr8zӬR˂'\ࣀT :* k~klӌ8=Q?O%R5 {fŠ ǂ]DjdXNP{۪ofY; dB kKcV)UzC MSrvvҕ⏷ҷ Ec\xC T3{34zT@t]DkJ/y5FV9wˌS+o{n|n̞wag9&lOv,l79/3JOWLը:5Xe[M^/#ԇ_6 #k'-,tpU_7LwoUb-V d2ff mx Щ')3Bp]CL[C o$]7KAf)eN泻ިkIS{$gؤ`RgÓAuyvcudȑm>I1`@F'i/<*&&]+woo8Fn}@$gM/xk4jY!gޓn鼃t@3؏ɚe=X1EVlx_p ŷzۜgjV[֓Uv5#hSr{2;Qc"s_Bno+$2kDN#;QR">AQ7mf0U-Ǝ)7 )~4C2P36Ig!F7P͋/"+UЈW~yukt_EMnD&>@np *6P/ghTz\2h-;< (LZkГ3O\LҶa`K2Д[ (sL+?X'(01łAqA&|)G7[H9b6Of5)D=gcw*MeR-N, QwOS@ A;kYwKf p0^wI;# }6RpRYwK^h|ظjmIԀ `7Wokdnq 3{H.k0M)Sf2kwAm\>R׹ڨ*hˆ?9Ϯ, KO^xRfȢ_ص 7Jf+4gh;(ZX~s6̯8n{:hbǪu?1:VCg!1j+ `jjp8zEc"JWUGܰl>C=#1ܪ}DB')lj ߽?xނĭ |ʱ$Y[1VB{ΓPcCR@܏fB U46yegG]:uXS1SDBB |'~ Tӫ],9PJE2Ubg$Z!&Y2P[ϖB!<7FKr$ٰ~&% S,xwD7y.[k 7\UBiزiƋ:$ lb+Fo7肯_$ul,¦Tސ-̑Vq/e{ߖdiiZF9q3vtaqܮv;K-LVOH+Քs@/v uzdb ڻWGN u#;5 _5Yq.b\##s~â'Q;7.=TnqoC;+g2QōB:&m*so~ m/nLa Bڕ>szn,jΒ`!cGA:]{/ye;<gEvG'zx5][O?4?mG٫)4F mur_}!o=jd]_Ȇ=I^uIl G~@=|6m]di~h/)TmׅU u:J_sF}D}R cMv=vt0e\ ^xNL%ֻd22`O6kuy,] za<8 5Lf@AufR{͊QigTq ({#V9UXor$gfZ?ϨA<`Θ|X -qlMK9\zAudǓ,SKNK]>>xU,JMB4ޡ~a˖T/Sw@߇KHzd,i"ڼ;:(/ա>fܭ'3&G{8J)^[bo7SjLf"Atdht@um4@gX\Κ 79,(tZA>R xHKyrݙq$5FR UuFn u'6v(?Ai11(tW%΂Z%Tau_ܡaJ2X-k3ϐEGGJc-0_m롔lTԆЏ,G"WY~Ҿ;.*$ bJX4kO5z$kY7ՠ:n 8`hT; {bHnry[eiȳl=X:#ÿ;G$ܔYuLKat]:yt0_<$bΰ'0S?e+u5\Izm'ж6w T\/=203GJÆ_P{U_Zo]Q e}AT bLH{Kl d޼,ڠw3:{V!6-֙gqN ^+Cm Jߡ;hpX)>&RrBNy3vhS(s[%-!  yWC2d`˳`]}yVS)ӀoWGv Hy$j}ˉqo+Vs2^Dv$ ] +-w6I.hRkGВYcr g꜏x[@TO"syMfg茀D:F+'%7n~\NjB2Lj$_6Jdy߈Kzi/Rd$B5ϛHA -W 487^QRٿ!|gGHoԖ7SZr30[`'h'ù1B4&B!8s$( ad&J&b*&1 |t`٣vJ 0EFz[;3ʺ>05+p ]_qX\vQ3ia9;b7&" aAʣ#W=$"2fjAZŔv,iU*e]z _57rHI| >96_صZGhQWZ[imkX]T[}MWƒ(*ŽqH<3=ɕHy?^Cf p]zlJ2;GESL;n!u0NHX{6l!4.R6U{^~ f"cDt3m1)ҳO?@StWc N1([V@󯢶p#ܵF$-^Mq] C>]G7Ņ ĥ_f(nW`^-^4~XE_Sޱq^oޅ~Ctj0~܀ u(ջ~i9m'ҙigӇػx`[]/џ~ ⥞̴[zڄW?ZK9Teavߚ˨JpzodΒ h覷jxw&-}{:~WX#SU~@GI L~Zw7G_aMOnT*|1/Ft0Y/47lEfݟLa-N_`&=Te1y)W!/#i2)2]pjx6)^Hr bIaX<(D}6s?t7^L`6>lN,;hnݴ&rrq-b޼7:H. ^.e$o( kO0?-g͓UCҏpQ`vqENDYXnkcN"HOg;5[^$9{u^&}yQˑyasj<x^[93 YeL0u9?˯5Bi"2K]F^4nZ ,9ZLt$~Mn?f[Ea 3; R;7Ӡ Ba^Ej׾_,f)I`F #3E:tj(*o[){i;Hi=_C,mkVm{=ץoLm68sQc,BNyo9mAiu:n"[US#9l?OB_s 6|hJH]’X^+w8]bfq!n29ͳfCg:=:D1pvlMF@_e=?ߍ5 ΐ/G, Vxޞoj]mD,wm/!vBe]IJh]*r{S4p?N(DX޸n yyKM!eęN;s ^ԝtY_"st d-ٝsDHf9MN(o$bڠF/!z]ٽ4.KA[/aLШ;u&}A=mGuO)>,Kd9"B׊ٳ)߉MnלZjφ(uM"RǞaF]6UBsIK׍)o!Q*r/qqk[2gz"AyI⪬ئ_Vęk(*b׼R |6WhpM + Uxyf Ug|\USAz$gеZʘ(s iVTQQzO C<"#z]WL#!Q.Q9:ײV*ŕxgC#] 6ܫIBu5M lŴSc{[u!oA]P1#*HVO"+vLn*/yb&mxWיQk([<= nRoaLi_ .z=}>%"z&|O-lb>-v58'1/hB"xJi}zETBie:46gpȯ=ھ Fnr'hALKI;׋屮P@amE=Onb0_BgYɄ,s %qSF1{:]s,ӰPJy^*m|vZugv{곍SSp{~Gzظ:BeQPA_جu/QӽB@|=b[+Ub CYp(oeNC.@yH~Oiv|'Z9־ʑ8h-w<|(ȹD3i4B۪^< ,ߏ10S(/-&)oH6{w8'm# XmyUVa212ˡ穸)~/o(EK;"xb.WNVnD5 ; Yj C.z5K0ӛZ|yT!}Q j'_O՝N ,QJ TH2!\{C_Z)Eqǟ!.c)c 8GĜ؜~\_ W<@k~;+EaɛQJ܊rXs4iX.e.[2[6RtÒo>8Oq*UC v,Nt) :®Q0AZ~: BC5C[MLğL#2X]?mng3B?ux _R"`m,J;KνeD5dB<(0FJ^GLMR$J?'bwT0 x0"+GR3 mT6?^ 0>QMD9o0q@ԋ]hvu/O[/"!U;dTsNcbwHwV&,aOfNP)sL<92/*jo=%_ݚOpo^9Arմv鴙xYS\^߻l=ט } ϟ ֽ jJU Ć'rS(o"y`q1( ήXC|eF24SMhpU=KI)eIqLu&'xV}ˉY|y.A >;^%ft>\ȇ:%c?aϟ?/x08?:E qIPZ2Ƨ8 _C;eWs-lK~'5.#l}'n<_%fQ5hjDﻤy ٢b7 {8٢#9p~A@kֶ(Ky&ϦV桿m]qˇZg% ;!\0"3b/o4KW zJ~ 8V軥Ĩ<yu²$u\U9g Z Rp~jcKԊy1uہ`5gp:KcCA?Ð" g(-d2]U3J_֩W&%Lް^C Z0QB&.ka_I)qc,E>!u=3rB}=Af7ߟx2 wP  $lFfԻg>7}oZܬ\[6N[zMd2{rW3KzL$ Te2Ty3"3qW6- 7c)`GI΃tը)<9䏍([㗢6Ïq*Q-'֔b87[h("0{|In|ya9/^/MpIP= Φ,(E@@Cv1.Lk v#۹gN0}<.{Ş^-;ܺnk;;QBY4e:?j"2\s=cɭxV-Y[0gRѷ_ W*!`ikC{I/خI+H3`K+41o8g&#C"%bc; z* ;/a%'HAq{{/͒ *,\ |}A"qo2_vCB>_lNNiZd @WLw~?G-y{DܾљND^c/eYwY\WHy R4ٌ,d$2.jTw8V4O;7`./%P&ZwRO玐RskT(A7i#=Fqg4'{ACr~KE6PkSHtmƗVΑ' Gt ʠCb&~rAx'8IyÄ[0pyiˬ .M^ @1cАI3,x#edsZ|^l|IcA>jYhY4 Z'(P1Gw UtF$bjkpJxmJ0!rFWAeVV@LD`W8a}T!Z~#B=msM)c%`S:{X9"N Ӹbm =W?NmmH4KE3 }?f 2 ߔ(l\?K".A/g[ͩӻ[?Q翆|t.altQp))fd+0hިE]C6 -SHIJ0?Zg~ơ ̻}Fzh P៿=.ڤeVǁkoX1Tc~8(z>/<rJMru| WIjq 6"V#Hżً\mO&ѮQ@YhQ6G|fCt+d7iyj 4RK*yԃl6*x@Kwzyð6 _ h0Yɼ*jՌ~}GT d_vА1I $ ΑX|ͽ1¦SrW|-ASwiO Ʋ "_/OPli^c $]1S AOH)&Y~k6X0Y:1?^'- ,߱#{M0qa#$$Խ68@aS;B6pf@o Th 7rGN/u zPBQQ '>$s2hvT@JWL}ʣIA=)Җ˪sHE}( 68*z@ņȈ+/pKh*BJ𤻆 CF3SF0ZW&K& 9'┦S<|%jղU:Z$?,dK@Ι yg-'Ӧ~$_; )r[w#':8%4%Bfuӓ= tr,ao0qb8-~t`sxP¦ΐ8N)C`obv!XaNY4 ^V8nM? spK1.%^KU%0WAUKHgCs5 Q.EyB\P< 20 )3q{Zwyq/7R"wXXo\]*C2qb<`s)9iT7ۑWyPO+$^6:Sn-A\ 慀s!-T1⪹XU5F>n[^<"okX RAdsՀ}Ruޒ83S ;SzfF1GLxnjGI["Vx8Xތ j1"f˴,XΕ1a쎰{8%J?K- #\ w(]Qe$\Ko+#缱A]kE4AAS d4 z#pvDb`H'FA̓|${&rn!`׌癔X4+GH,3wZ^?G )Lq͜rQ6给ptX b} u3m#r(7I ߻'`K&ỿ RЮxߕs(xθ?4B_C Eꀁ uVA ¦g;Px}!c\uAV1V] Nw&J|lxFgT2E,5=D̳ BYlxwwt 1?]d&ܲە3t 7P7H_|N^@V=p/ aəg/jЙ T Q mD`ٓBV 9^1S]=1?7,{.& &?UZ)yCڊ@ y6B'!`W9~tV̊]xMD*r*E$~<&ey@\?Ů~JYH6xjZ_ǖݽ\ nnK. mЪKNYSRs[ʶ8KI8AfNr{}bf&Wў7`XVoq jpEBx.+: *fVmmcވ 5ąԹB"km?W!bئ|3Zq b#| l& c(,q״ P E_0r Ҁnm.̞*.6uAZmm/3u ZTuv+> 9U[޿K !wV36g@qը.Z', HeOYo x5Ihsuł|7 SKer@P$Bb0{p#/4 嫗SJVFY0b&^F#`a"Uj+>7L".V̂q^ 򏷈n$7J.HNumb<i+p4¿X MUx؆bx<,OtAİ_ KVcOsq9y) Ҷ[UkWak^IDZ7Q72oxRӬLl;V^S1ŅN@fe i8@-q &50P6Keh²! B &Lvj =;_֪OI= R%"kBVr(f{^G= ,D4a/,D}t my#jFE::8}|֩/:.N|'5ZyrPQI~0/D!q O{Zڃ1Dϩ_1Qt߫ NE0U:Mh7lk"Q³|o2ߵaAYg#*f6+g,d4SF_]3?"%3թ'\xq Ez0^r}?X>=0y Ly7!g .Lɘ-"\!g@361;O]v"91q4-?ƪzkZg NdX~y rk$m[, \0`|,at2D,iΙ'T_^`;dbriSi< v eVY0祋vʗA+zPǚR# _I:pŏ΢WxA5J9,{"ʦ:V|K%r~o[촔vqs?DiA`َKD/ گZ)'¯LX(R 8z3%zq\ ['-61h=,,5 ;- MtiĹ/ܯIߨcq݃͆&I17C;A. $ެP>Um,*еdn2$BZB6VFpX[ss2 ךd@w0Ec[]*a#*rZĆRdIXF )uU \YGX"/-/ȡ >XJjӍV/ vkX׺;D01mB";;}_a,J Y )M=>c][JNа Q>w}5:(':41@&L}Pe-[Ef(梗*Yi&/SZ'B^4f"˼)>w9JNay3Ag-ʋGmCה X=:PX0, lM43蹝M>r>5<0j+yr7x[bI˲@vewUΪ&-t"Nbe&)^G0Cz@ ^!C+p8=Y]LL|2lZiuBm{'ceB?=~f&xm}#JytT=ȈRZW o kҭGa7&"/NuC>b,q_.;ؼ25'һEX9! ǜ0t~ dG: i]M/br;%Hl;7(CTv(B;4dDx) &zD!K99c`'߀W8mHhKT3wG>~q̩G7Ԛ4jpM } _,b%M3X{5/{""L=ֽdQ0c߼q٦tisUEaq~q„j}9P6@npm{J 5v$ܺi9CPx S}R(-F8ai+>H=L9r>G#΂V\ xbej,+J@[˿rkc8$̀w7uTW&_1dLX0<<Z*#;]Pצd=Syx ̉hjuNQ~3_-_660 Cr^Bfq>P&7z)Ib;IZ+ft6=Ň/^g|9X1Hbdg_a{kط"'t$vף RT/~SP4H}ܒ\0mcz }Iu9!m#r\.Vl 7DSgVw(߭~\fSdԔNXF4Ih=̞u϶x4σ(%[.J.1%_+UZ-)Ex.kjXu,?hQ?&H [Y-ui 7CՓ^΋GB{xِܮJ8|69U+um Zx׶qɓ2kbt2o OnԮ&Ӷ{/a-dZg`31Z@d=gւ}HvҼaL?1'=[=͌k;?%/ǣvq E!=^N&5LXy˳h+YОD^鴇kR,-E0MmVw,#9(12=¬!xrDGH0g? dk3 Ln{RH6i&t%ydiiW었qo? V5_bުp>$|V i~܍Is/(Ǹj`u5P~qͰZ`pgH5Q[Rp}R#Pmxtq*F{œc}FTp)Ű˴w Krd}~ t騋M%dC_(/q f~?9I:)8Z_|0ZZXi[純2?aJ-oJQM%Vŀv,N)2Ux[i7PKK)EQ蓕$;cDHY>zRpTe'Pq/1^4"ЩAJbRdg J'TǠuӇ॥(ޫc {Y[5k (.#N387Z}%8#xu-߇Tvtюݭd4TR;ԁpĚQEG/)+QTųnyJ}ialx(i8j][I+=.)h?&&`=K`thtq N{S-!5 !?i^?F1uq$2i*'ʰ?20zdnȆdZh ԫL~By JNJvgE2-kL5C:(rZ&Ui.Lye_M̦gs1?o!K}0Kɾ.OpR5a,@#Ts(#CivPYwڹ>&l Du[>L%pLYtsNU]i'tbds:bݱ1Ǯw抦:BLh7-aAx}I$,#ZN"l7w hHfEuAD"_0O5b"`P"Gn藺 uF_)[pX-gaG<12$`MeYU EZW'Kz׽U$~,]ߑa ^JISioP?=LMC- 3錎٦sbJrh_5[&&=[rݰ+M0@ 91H_|NS.c D?T9Z)Ҧr@]X=KPhE,sL'Al&zkrGKo9\"-{cxK\6^ TX@T2=0wUA֎SN} 0d}k@-0% AuWMhCם.5Il5o!.k[N-134P/JW޾ }ߌ5EQnH]Y烧-q^*Ѭ6~e(ƾ$}T#QU"҈SK*=6y#?4ܲ]ؙk;Fŭ}-?:#=$4(NIe PV#$@!sE* ϩ]Ҝ%6LrcHDT\oΘ`=3 X6O v-˒]#J+Xbds%n:'YZ֐yΛdQ20k`.ٵ)G;9s~)!{[IsM9i #̆Ϳ q!OW)xvb?_݄$^G{Z /n'aUl$ؖw:*o_5*d?._ԜNunxWS{' ךYHpt4x;(*@޻ޔAG=˺IӘ^X2a;zT5 Za-?ʬUВ.I7=>io഑d[9L@kK(Ha<#~Dk!{E=c37k=$Ѧ/?+K$p^~~4P#z]Jgi "on|mw5~K5=~S|z2J Ni2Ё(pr +&p=^ /ji-ƚꢔlb>}c f`ƅiN=!X;>{kAA2 Dl!롨VO' ANc,5y?/R+DTWՔx7OG7Fުc} h+v?d6ʽ˵Nw*.U(ыNB FX}3]'Bu-9VyP*qyN#| X3{+o^O_*] qva8Ǜآ=fYPB+GG+ 7:bvT3xS&0CDt(=+2 u@.">hp#.hagu@N+y,K̸BiYB`$)]YXwU]+C쭲7n\OPx...|X1 D1nL`D4DekR.F5c\W8Ő A7d gP%R|_UcZ9ɷzLn'WI{-1/tiGgoyIoIrwӲ,xմ <;Ǡx2:XAr kBpo)] ?Hmk)[iao@#/1.og:?$9E]}ɸ+M2qׯT/\!^`Bs7GXz 2w,|.P8gUhm0aLS;:JuOl[kCs+Gzxr؃;D~1^{|^%۝uFN>4׵_-k.Nx.-Z]`^+;3 +!|cl\@^M(Xf)\KJBAz8Eyj?nvnCJzd/ NuϺn`e,vUndjM$U[f61t|1—/ORɐxyU\&$'WŠF!b \-iT96Y?j`@Z6ͣb|k3,KD"B\Ӵ46Aa蹣mn ~kѬ6,'AeGeZpe]/]):h[Tս-<}s8&Sk?ۼy LC ?5N7Cqf̉1l `ϩT.mۯsWߝ}Z^ ؜AS1tXu9.sYF9{%C3B)SǂM n"oTu ;os1aĄVKAQ"^jGl9Ql1%{<1VU{$rHo 9=p3%IDR~wRo=Z)g_WՕ_i<~:͘D6TX-@d2# ꑢqV:g_Нm$f鉥ۼ &b 4CU~ҵ5Ab}6% WA(OoqZ_>1BۼyIL6ick-Q 7zȬO3d=Ă&&x5 6. ]+,ɮ^L70`X4);.t@O 'z@RDTyGA)'D-'iPfzg4tL=Lr)&o/ JEh/ˆe擖AS:_t:bwgyp"3yx _a&Q嵆}E_.F!_yt\"H RJdi\Gtw[&SG[bQTԛM/,B}-)ʙerָխ;ȶ\w8lKz.l)0P5Е_tg52]oA$8%ᚰ$epAX Ю3BX9P;G:K|-Z"#0T'JS t m9 thCdqs Ok~i4 |QN&#sv؎XN 's?i5j7sߌzߣkl'-E{R=.@I@"s8%sT qy|4<Sh{X~UZ)hf77h?Wtע7d}Mǰ &zoX5=& a-DrP[pMfm`+&UyճcGG0N^>A%+~\w5}+Fhb^|T-HC 2"3x$άK"_{Vd_oF :}G.ZsW)a 6Q,+O+I8 XVHOD-YD4et!/wdL65DwIJ&<[8@>JgKL=nMeGgS෿a g+O@ F!l:Vý8!ƀª8W*t7 i U7@Q7$+;Z583ؔD6`7HrfW)5盗@<&?ʍQDF\MAg|j%~41VqpR4o9@: @n.aLx9Gi4qjŁ&oJL qԪ]Q2 ~9nJ8Td-:,YOoO}l^]f K!rOS'Ş'5]#@e.nM9`qVtа/Q#~k7;#IO)94u) nO"P}ݧ.l̈똳$H>]15MkQ\-r kD#'X]KfeH L̢_#Znܖ+Wno (, EDUpe{E1Ta?O' fYw0ػ>2ls,;Cc(tQ wFk#8xnK@w[:_:2q5 *"\1% ߐWknIp/MxNi O%qȒ}$5&l;slr4/=j2k4KƍAU`¨AIʐmN1*?筣i$Ā6ē)ݫ!(tpD\6cɐ=ii_[Lъϯr (8R,mQ\גy! c^q4"_7l>dcHZNN`d-c 0tZy6TDM}jag);l_#k+趟9U#Bԝ5&qFRTcZUp_;d+Ss6B7N0l& VT `ѷt3MNkC"OE39tuUbD ע }=yT,Q _0+^)27Yǫݩ ⭵l;nA?+ɗ-,9elaB :&PQ,#N4ϧ88Z^o ۼ73ZXd[hY.UNZ?x_H:KceTt\(OA/ Toe[[ nj/=1f BM*Eք=݌&:uMI=\f£-{Y)qXƀ;q'cV'\?/Rɦ0mfbDQUF%b SVivlO3T}vjkԑCqJà]]|>P6d_Mke9vpGjJBqa(əИ֜96ōrsv{~O~%)dHg|@Ჵ-zlܛ쉧kWR<](,TF 7YBA:RV }џl)50| %(Ss4ctnP>DIFy6vG?h\p{`7eHFC>6xS: fwAԁʪ#7[ ƀ`+eMZCo8zSW]Z#OB6f{>9pM#N&]3#f^@y$צDQ\`*! V1& wlŎ`韐zjDJ"hBBt֪.],A/Ο\\cHP+69tn\~tUf|튘1ALfF=ȄԘelRYI-\uR6HxjjoQvi$DJ-xԁή7B"bbP`dm̙` Ayc,;|mz-4rNؠ$ϴy/?l ;> Xȑ="f/`9 ^ !u5 tJ[Oh%zTjy:qu^W!eryf&-\ow g#3-t7IGFkI#x2Tm8C t6bJᅶ:xs  K{UO.Qx1 >(pc4X}N$>LkCOmD7\K|(_C$9{H[{Ŧ"wq/lW_2xNCKH}`e[z[=*YY2Ⱦo.6r՟BFg*>:YAG$v8t?ZNXdQ\G~,f{v1 `r/fdQ7%9>'s?:ƨ(q#w='{#:>?eEQ|Fc`l%vh1~rpY쑶uGMCwk\^l ^Zev8[U)>5-g*(|CDcݷ%;ʃh@&),b(6h #[y&+ʇ(hӗSK{Ɯbp7~+fN e(FZGPv;&AӛAKhvo cbTn$,n} _Ġi̯,qv4DZnO-aSΤَCi΢h=z*IS"zTiuo ;[F>sEipo\ uY/_mՆӰD/+"&Q'էʵa:mf¶O'AA1Tu<| Ux/fѩ"n\\κJN-he/UAaqɠ&Ig)$@K8'/@ljv(={68:zw1ςj 2Wq•w Y!:wqs7C6+>JW% 9Je N@FE$PЀJ yqzLEFFuJڤJy)C$w2j.ѯ+[\*8.g V?$s1ŏĬ<.34ͽ%o=ջ,t/Ga1h,dxE_27N0"FS+DHܹ_1C C@L!iM:epwb&w791.,6{D}(=zB]sqG }?r l6Y+P1 lRU d8赙rRvD>cHlGtV?D &=LԷIGe>ŻhF3 u)[8; .k=_t~Lafx.g΢cVdô0\_IqnhZ|tmf'R\EQPu:Rxwhd媖@Ѳv֌ea;/xmSꬶ ^[s-h2ۧE^?I*7[Ȳ (_xH'-X lkPlzdlDIPOI~Tt[ &.IXf2)LCjdNo;mqJ&B$ŋ7IR#t?WqO[DapU^K@lvmN YII@'#Z2GpNME{}FA3ae.)lYw~n1 'ߎwDֽmdJKi932>v;͛#-Y"Ab}j60oVw|٥l'Tk:l4x} A,Y|yzq^{?)p&K|B_X1c7a_s 7IQv\wi_fvr Ez F^s ClpMi*/"YCM[3=G`xnT%TP+Zx!"8k%gŀчbb t4ed֠| 6F| {Q' p&H8ܙa@";j"`(|mD)D^GMJpu> enG * s8&Oy]@2쐋 aNqՈ|MSG79Ĩ/Zb{IˏޕD1beNCquw:_UPCf^re]{qM׌UtpQ?ѥ< c0))iKd2ŰI~Zy^aG*/]a:z.I>̭&ca\b} RRU=ZE/J-=+sU L{ 4弯6g/-3WLq2\(ms.FZT{aac#:sʫ"y}볝PҎ⚗55"?,Gc{ lV*Y]ƹ߮%5)Ԍt" ` 4rύ(s5a +;D=.%!a_ z (@`$y  Ӝ )6$u1.bv0RI!M}= @<,Ni^Zu+6`ZĄ4"0aП4=g!Gtnv~B򈪡éz{Hz_K^!kvGכ31f+ "s/8Qɠ5:ؕfqroA>KV؍-Ȭ 6 /WPGي'"P~!ENs $j̱bâOg䘷wJ&>kUWml|qo\ `NnXYdGD #04:4JsR*`[\8#sPfzX^T.)3_0um u@5@곟[gzq}_Z:k-᭖TfnZYъ7% 4:Vez j4#и%DsA[^LmȖ rF%1X(«8żVtT-"N:6׫{15$dG9ױW9,BGHbjc Eh"k_o9ٳ4"Pv}e-Ü4T* SgdoۅS:QnV|`*YH.IO+vW 6?e0v2;#V:<ҰZd% HDΤb.̐+ )4*-.Fu݃=ks*V o 0Ŝ&bx.OQP^cdi= .+qĽʡ .UrՅXAckVA 0*gO18|ۃt+vuVŌ92!#]W|&"5f"AX m 4P`,TIpv94_ltd[OmT} h"'KlnsEYD;O|)Z%rz&JӲo+9}%7~-1F%NZebEL聣o]YbԹy^5D\ >pf=B1]vYǗ+ X_K=Vg;DX=A"٭k,v9Ju9,}ZS^%;N9EfռR} rVNDѾ !K{YR^__^/}N"#s;j=%>kAtw]X]RW)6.';nHk:NEV0b&ōYb'K8ډ*x{u..VO&< x Xѝ2t0S`|$TAἭR@5Ե+(k˼!9vHPw ߋg8MYQk2ǜۨ{DWqs_r[2:jb5ks ?Jq<M5CU&[!e>iUH z 0yMrOQVȷЎE"ċmW9S<,ʡc%QN #`| NbW3Ѵ6GJ=j<]sW)X9ُ6~B?0= z#-}$@Mȃ+}Bu"NBB~;!3w'éa w$CAI6eZDJ\`asma;׾>|h4=KP85!6*) S%R[XsleNzLI~nSֻ5$N&j%pQL>du]˜~L0P= ^SUpNS+x~L ߔY:*~[GxE(7&Ӽ+ҞۤxA([|,:~{)Q`ң`>3 B!RQGք' kxѰNIUKɚ6hu~A!"j~ _z?lAnyXfMl—o˘oC?8G9.`Uu[?,`c2/PƧ;6τI>mx4]+pn4ф j\R|eOUsڧ,zzM1ՐA-+آm "gma<85͍&v /q?h0SXUctKF@WzY5H.m/+iDwҎAG(;l}$%!kvԉf;]RށDoq&̈́ݷOˠC1簒Qw 2ܚ!/X9X)@n y\qъ@YT!x|B \TmkaٟetF^eyw U@8S ~]R D9QҔp yHocx< ^hBx9|Րhj;AHcQɛBkmI*usyeRвPN,])aod%.ѪPrQ!~éP'+0*>VMSNBXb+tGkT?ʸ2%<ʴA>4e}5XJү =uT9W2jcw9VV-Jk"hA0zTG``s\'lKP8HթI^F% [KۊXxQz E0,${?E3%v?gvs£c(Xƫ8ܺZTt#H0$?0,5`@!Bo6>h} rgj {QF:UP p2 .,zq*L ";R3#Ǝ1AzBwvW8(JS]$MpfYcg[9}!\*K KONJbr4bQ\k/r[Lә,QێB񎏒c/^S+WZ.Fx'E2^ nİ=& hHmN)d3*q^q,x8 W?˚i[xڌ";XTGZzDWqf) sNLt=?ol\V &>*^>u(-:ںtkpO=lxQL @++*rƻI[bz2cC(Lm B-Q6pUO-%~l[p$>a,yyHB9+L h8Jz۟8w&v8f Mb5ruҒ(F@ţ]ϡ~}NZ $9PVd'Lu0Q K*AP>mڔޅ4xgNXL1gyaV8`oLM fn]WTOmhH=6p-8CɬGb9o,^u_0bqiT0b{ƴ?B1Ȅx.fW2F'o"ILw6EU8jEToQج^)GB`*Ѥi,rpd^c)ĶC HE_[H<)gh](ҸfcG]/ȃ֌Gf^,7Ut\.{o.ZN$U(ηYUkL)+m&dПMMOEL+`ꎾN&rGmYPpnJ}>>%ǩqbAs"E6C?QsIݼlZ ~qU*fq5Q[Zo",}pэvE$k&36ehɗ}7jBUR:q+⫟7E Ӛ,p^1bI=TUlZ&q5\x%nY8o1Uۋ`%brA8˅%yI)6dg%/J^`>Ep-65ڄ&gDNů5Zx%E ', 'q̇"ޭ`T xH/޹ N-\+XF6J%$W95h np 6᰿_M #@yP!!nud:8l⻌塺"uG|t8^V "@=bv5zp yfQ35 k ưf~v]WAkR+4֧eћC̈isX$n&%]x w욂xq~t}) T/B;hO(y ez̗% H7v&Esm_:9kK2}XCWLV&71=PR قoe~U\ Vo{>s 8H3.wꝂ!\.2Q, LuӵMLֻXPL">d,gOIUz}8Vi=NUQ v2K/1k3ư},C5$SC'&e 6Noq#/Fe|k2αǗY FM1bā=k :EdLJ+\M$(s^B!(#V;Id(H"%!γi k'،0ūjULA %6BCwUXaYՂ1A` q cc.Pȫ䋇TUbRlY#.|6KIӒq>}.E{Yo뚯`k)ɱV7EؕVUюrURI$hC͇~Lcql)U*S=7ž/"S}ao|ΌȔ\:'"՝66$W~[/P%YH>O` p u|l꯭XNS y]& rq eBĽ3}댓'$]MiEnnaݮ+aӼϤ!_]oދpAJ;"+2Pbw.| l}HSH/~ݿ,@GΓ X)j)m ūrAoVJR/ wUxCK< V ىbd M.*Psb1Ӑ=v,J?϶0@+ߌ~Nѫq彩$aI k\:"aTn)Mx~;Gj&JLz\{\o4aW4oU_m2uOʪ4 !'DW# g A=9{sU8_L]}8OP9L%Iɮ>5vpQ@,5w l{%oFx,VR T35򾐤 0ݩV ~?;."uVΥ DDy릴:s=G"NC{כ;5(Uu0s@tu>#y䳲F OQDHU;Ҧ"7s=#8QޫLvSd_3]>[f42Tx9GX1$sS{LVYv1RK H8+_2™})Oi63rSgYg,5Α2,%6Kj~חewSE>K`͝)β{ N;!2ӹP::]T/ &G7ź~>}1%3lڟ5V#z ͪBU':SQ#u?d)V"9e7tACU);(ru33툶$>\^E "!B@nm/Ĵ2(ω S0 [vWi㽮~Fe8*6x#ϒc?$a۩vG5]s`A@4Σuo8@῍~nct`Z×[5Q]PM{ ᯋҭ=$J,1fM_96Lߙu JsOØ08$ vOAr30kcmSLؐBA c7r캱ā$ЊɂQاHӟ0)9:=vvp{qC9[q"4{|tdL<;Ir4mM 4}C45<1G7VU'c;x#tVdcM";sP+&M }hBJUtV,>*ֱ'G%" . Ix Q۩Io8SJEU/ *Qd!@7^"yB#M\wMGNxT ߪܭ0vQ_ij 1-nƦ[ĈVQ`o. PP:B|s-C8'_h5--'HUe#0dG̥>6|}[$ 4[q6~^AI1 |~,X_IԍP GZTt>yxg߼ԞyEfRA'2zWn^D}_h1$ lȣKGU'"٠UZ \.: T=|a)y:hKEA 6Tqtzjյͽ@-D'p:q8+`eNxIzԩ]{ ODXtJLU, AjqΥzf!btdc%P ݗ#?+޷2cVQ, `d2/*S\kS`X'0Gr d4+|ġ$ Q[ƭ/ {o[ǁ}X3FHLp̨4Luj5V<"D<;{g/Ό ˋ+Rl1^fzlVq*y0]%kīpʺÚ^]0{lqUʕsⷫ?!-V̠Uvk'$v,6cORfӉ@JTn7T'քRӴ}/n`݃B25׎V?'F'cmv.Hg^iڳ4#2.Wޝ}"`>,;G,tϕ&8)ʷC P/b u33B H^wbȍbNK9 mӦ8~ryKcm+ xFēӟt)!ɎJ =nnߘVR1kkR5Ǵ~>Kӈ,PvxQʠBT=B{#0!oYz=8w%ܕ#畺Az1*?pWi3vҏ!|ˆoN}#=A$0~|n G,GN1G(MX"'F,oɀ1ygpǂf˼Vm_--*fC ؄1AId@HKٴFL&>E%uT^T6:@:{F^4 U4X>垱CɀUpSxϸ+E1 Io#3y͔1jy1O+<6snD ҈싲KFRcоg k;t9~H3SpVk:yGxUӶ(][u-XKڗK*{nr4>`J ~mܕ`)= F8@oi몹x8-2F5߿R'/)ʒq2p^~f}CW#s'mb9 ߬E#_++{.!S*oDY1W=0ab"V:ƙX3"m gfֆgKu6&G^5pձqY# Bڦ9d o_GϖE䬸JE_8`!i؇~1^MㅥCoSEz8}2f秓__$սM9Y{5ZbZʘm i&%.Xud4*rϐE4."UY(vLv'qF֙W>T SĈK#F1KećCGa٦0 Y 4st WTٲ Ai@P ^&ixT#m-=?QբoQa[_V3IX+sT33^AN7Ff ;tFՈsܡ6I&g~P bR tQsgD-m1/J\wTGYo&i!h9u.]G)4Bp |^NFx|Ypp;`lDKVd:H:A[$2@N<bqlt4̡EI] T5[r#fm\{NԲK\)T(a*/0;NX GٴLyJlF\Eyal^ WPv/1,@ا>!$LNRf,0Rv<=н#yAM%p{ QJ`I`P ǜ+4 [LɈH+L%BiqӼ#-5.W^ ^fT-kf]yi76ve>p3=uynQPXh#iLLByH^j6̼[e%r]/C09x _́fR{#HY9 pws,x<40zv͕[i yXFUGBqm⫹ `߳-܂M<2^)C4,bŗʉG =Vc6Ęχv(C~nl;Ɵk2RRE9-Yf˛{ey~|ǜLh:Vb9W:LWn[EE q?q ]H :{6r# zdx店{0 Tlк7iB K܀~Q; By(#_szO [5&ܽsEHq8F?v dSL2i>_Bq>ut\P'ѭ&Š |c;zr2\Oz Wņ tld:LbIxmrȠKMnu5MbS:l1C!!~=$v=_ T'[kn=֠;l%2qk*h䥾&AcFp)Ynm˪ -`0n۲0g9Md@㠇a߯p-+V*4;ٰ/Ceh={CKU-9T;" i exͽޣ7jzڸjfY#rXv@=Ym1af|Kx9C5ȥArSE%Xmـ}nt=[^o9G":4L: AG< ߣvr}E%F>0ɰP Z&gNGypfe$|J8 n[+L"g!'e~_q =$6|7 Me &libeHIA[ v^ԂIEE\_vYGG/0FV<,\g Wo0wm!XRˌ~ү@w\ C J߼~ڦ|l};e$BED&3C7_ ې" M_W`m?5u3Te4+M1ۘ-LW8V'GSoC3iXtM"K(o`n Q9h4+V'lFԷ3Y ޽ކ"+r_9B?.$T@"VJJ*XE WxPV+ixZ{fFod ,9ee|X/DSs{u`DӘeDŽ&XL(dZOagxN/D rڔE!AQM"`co+vd{f! -Ny`鎪*ג4QZI^ݛ.abgVUrEfX.GJe+=, @p oJ|U!EWcv/`{-j&> jW?GE$F_DmW o>dfe#1O~wLgԁtB@|2;[a1upԱ 2#cDDZ/[olCrp}L]NՙYѥLYa9`}"[XW` 9cY}Y]IuL7S\7V/ŭV?c.ؗea@Fw4;wBJQ!SR V%* Pn}t򕛜1y Sg<[шs n46~F鿯n} S:'~x1Mg2S5~aK4 Z7Prr ]^)f&p6oKS}1pd[dʆf(ן KB" mמESJ @z lM{\l6u(sWbxvMM 4x!ӵE_2J3mQ?\FfEvə8Pґ_;`hxM njh!P ؈%>cܩOc'&%~x"I9;G? Y˱MhZDz1"y ![ᳲ#F.AahL+0xR6,f.@xmpA]x48%EdyJWJ\PdZR`(b&~'Ӹ]BnuɡKVu`.oR:Tl C*k"1[_\yh`!Lxc ^oU{|J{ʐB !Q7yWbNdA>eK嘬Dz|ߺ@gx^^\lKfZv{&(k8|$0eeO2DJì-8aa2bwd#k"Wu[/!= bLb['n}l-4{;H//%|t T%/>Vdx+R! s@ C37l2_u:!@V>1?|`suWZMwhsd7,RE##p9֨*3:XC0%{N >݁mw컙rWCi#E|TVk:%u8 fZ 'JQ)Oo˹Q.,Cc4v>`}o8Kv)u|eqn/Ε݆V_*KO6=/ H\qiLUA96nd9ğyK nnzA-ݒ|av6# ̉y1Kߧs_¿\gt X7p>j+POԈau2eJ-|'+:pU{;8NP6RcGKthZŜPqP&oƹV~ޖ3wk3Ato#|ϻ. m!{As#YQb3:'j7&/$F/=4rhUk43]! Sxp>gJlQp}y>ĝ.¹@8o^J]x-uBe?ύlQ@u'zn*6/>3@ɦHb#X]8ZFGz=v R[0X"]rGζV- N_"v} 4X(?ڕ(Dyj9ӈ+|.Njq8e tPO\\{(tbHSbC\ یzقږgB˓iEx6zU('H\{'ӋYs_0^IaLWpTqG 0;CΩMw- 㟍7ĘHGG*OV iU'<뼅N1 tE:Ҡ11QM>qed=sssAnEQgR.p9]|7Bjg%ΕKܾW+:[Li >;!D0p"Zf@iXܯ#*y=㬦Z>*4|n'j`:s*3&WF޺mPǔ(_\}bX2C=0~3}AExUi}z<]jAJf%IVNxͫ8kNN;yZ Xߊwҥ*U}r/Cړn6-͉)6>L4w83G`gl- ~̦%g^Јuh&->.Ɖ(֠:+d gк-orr€%sI4:`/kI2 "lnrmT{T<&>x8'!O`3%d-Z4x)^JF* C7`#۬h ܽ ,=, Iխy/⫈>}MlaN.e`7Rߧ?7qeM=q-ƖY3/!60 Uȥq})Rs9i J1R,V4Bmɽ3% )sXҀ!9Ў)i+gF}uCwD]yq!=bDL32 KhEVE8$"[ea>[ڕ5If:r NvWߚ/Z܌RQkk*r <{W պM%|C?Iy9| X[p|+}WMooͥVQ.-*#j,uWyA&a'BIm㙊c6Ba0yYZ~n iK3Hib~½ZGJê/klW &f3~@jiuR*\iᓁN-) GďƓ;su0JZc{1x,Y*TfKm6BU`f% ,/ t?aWn9(<5@i 1:~ƊI-:'z+p)2ibO"7"fNaǴfövѠhޡFT{ p(fCcvg~mFY^̃'kf*&Z54/;0pfsvQ m=7),*͈g:%l jo67h22ϖ@TWd b~u ˛g95y:I^U bZh)Y#`GBh/ X.>D~<ë 0)G+&arm_M>!r9G½;J8Hyҩf:x /I ]_@tJ~ݲ?:*g 'jXle'jL:mH;yIvW@<~7,XCpIr4>EET稞 Cs/X9 L;lnZ"P| UFZ LYE/HgC~.!`%J 3$Eⴢ~MTaJzognwKFuw)-.hFYQ+qxn*ÓZ-k $͏1 =_'jFW{#'ߠU+g 1‹Ky-KH ˠqK CP3_ZM&u`O~E`!rNjTIջO9|̵OZ@lF~$hXU]"hS 8!uOhf⛒WGET[eV$Eʒj|uo9;s>-E f1(;RgO %.l?bq#7TxYpH^csVjVҩt+8])` @E0v!x{dJȐwhop' !A-0xVȞziҎ?eLn ?`Oul LWgg!GAE;+spMy|AXRf]#|Q"4Fu ᚑcEқVWM@>%Dk:,~e\ $z#$0q_nYrhډ9:{hȿ]ۀdę"OW#eaD/"T6ڸK/aHSx2QذmHQzR}1r61|)4{k 2LcH9ѕ1J }S½NR\;ȇkZ_%`kC+2Hi ެُz -;]!-K$o[KnmIJތ㑙I0rZb O= a[Ȏ ͹sPWVo350ten']c&fy*Q*f'FЩp9%{S3i<V<*iX$MBY$8G 7 ,:zߒF ~viC}72K񠷆 Icc6&Yn{ƃI3-W8kԴat89Ic<8ƫ |'fHAy$7 zM(4BQ8\@۳%~y;umdž0^+4|*4Y+5fEH08 гRwTZK스c$~p;dǪ$UOfxrs8BTi㧢MK5#gma#$Eqm#Ѳ%)52:ٴ 0 mF[ QSxxeE܆OweuCoV@N:DG>  =Zh |Rv OhQnuH% Oo8FФ a:JTWR%4}V΃$tQDpk=:|{fpVCOEF&98g VQ@^?{gΛK -X (3 ÂpAg2z+մYl)`$g/̸ccD5 #٧]V|* ħ!ql@e >Q CF+<ސ%sej% Q9o|Ќ\8JJU݂#Gi5[hm x %Tɢt&.p*' B|S+?[i/C%QU-ֹ#5iX_cɹ60.ʽ<ĂzYI1/& D USFWssu;^i¬JKqӷQ +mq\٬,AO9{C[MMUp @˸f*?2'~[RX͸vVbJvs$Mܬ Gy{v5 G(pS"赸&c4`qVpȚ$Ĉf}I- Z0DGޞz.pkܰ5ZYnwQaWwwDGc2k!\(+b @O?Ai Cӝlt kn%+ҶAߚ' ?ü T̘1%v<$XzUkz&IW:Ȼ;Pk@2O$cIq)k"wuG6& LrwCg|OUJZ ˣzX|* iLx|p,adԊ8z.UmLxէR*x4@n5Cw\>vL|Q{']ԏm>|ρH-I*n&8@lQSTcߕ`~աjT'?*֊TEF*mjx6,7_TU-|鷛?7 \  S:Mr$:wXAԨ;~2Y<>Eɔn) D9\ovϵ/^ԾE>GzS;Jk@m-ύW/ē#!%ü|4W W$]H;ɌUc}@WڭS料Iԗ"[^AZ .=fʮ-N:r㲵PXsgl9~xGJ(OMP6 Z=wԋ1C7Տ;%&>ysz/^f`e.GfZ\=h-KHW%lwt,r T!<5pol0,LZYfnm5Y^A}^!}@I.걊Du8)Ѭ^w %-X?SxʔUʫf4>QVJLnӊT\ƿ[6ōDN7| =xmHfo>Vʢ m&ycُgeat&e{MȳpmUj!qq%U֡~` }$lBSajh:W9LiU8ㅕF9oA@CZ {K*N}p6?!94A&Vho#QC[h'#3=U)q$Tޜ$aNk/,{3QOMxШ|'ak8 d,^m<^@E/JHYa j"檡of$_̬Q}* F'|{,o4U5!G_)&Uʴ$9(|vG+ I;Xj)Uvx=Ѭpdh)Rmci+X Œ)Vm>hjRg.i^{8^,vWvG8}مv|u4K+zQ $ vy^B.ŜfT aȝ#H=;" ¶f,]DE vlw a8nemBD~+HC Ʒ. nOuz3F1G-p=19ѣԬG=mc|m>ي))h%1{*zF\hg&nA"@A{bT:3'[囑*=b^6yÊWSHt5 wɛi4g€D"]j+ʐp ]4prkqs8}|9 X`2O>슆2oL!ZIEt}X.NQOԪėy[+h-,4r :OL}]!(N VzbzpG(W&|9u66E̍qHCt:  9( Hd> ]'sYBЩNU?.™Po\kU+CJ׉e 0KZr"YmC٩{ado-TlH䶱1Q y#=jy^0myBPmMJQڔZ&C:;3 d0/?&jszy)iHEϻ_`#)l2 Yc7 MpB6p!*.BtCN*zqi%EZEbOJL(4 sqZ>֖yR~^=dTXu.)0d7bOL[,}0NzcF!5sa.uVqwr @ǮDaշ$ x] [z0 Ys`WV)gH4%9Muq!6dqpa7~q2~ތ' U!Wߢn||Qxw>wV2EL~G| xf.OMG1R8[AرI6 *WmNklsTecQ%W<kn4/ZHV,̢%z 'ϔpVOoEE> - 3/sL=tgR= [9ʬ I^x/&AsYؗ9r߆F"5M>7S,<_!3.T?_[rvy}ß 9F;"v~;x6v/nƹˬ,K)ٷ9Pg&E5`.z5|V]\EkD8 ~_S8WB:*59@lnW7 9NQvȓIF9>%NY+KX >k⧧?u;)|*<@3?qip7[ew !k?v:帬 ^O9C7_@Xo{b,Mu ~E8T2w04ݑV؇ZvbP##H{ -S:gojA&|^܅(IK-6ii*+'RA.C9xq,2k-v:$=~콥 ŕOf3}qP~V O-QKPorq0˩ HQwBp|UQ\A!|ϪTZ4^7C:Y,Wֳ:Yߺ픒64L^o/Gx2'׹.ppeWMjgA\SL﮵{\|uS?PoQ=m1B%>5 "=zY?p`p==R@CwbilhaC H};x;\z0 k`}f̅zsO')PƕwXԇi.w<ٯ\R w KXǞԉ2 mDP=3+ٜ%˜.7 W#bp 1W8պ̜vꤤr5"ZRztW hi~OOV_ F(ŏ*z_FmǬ|ZohX2+{#ή+i il`#g=ֺU>SgcTMؐU`E:8rڛc¢}-,4L SvdB)U% ԋuߠO}0KFDV0PnԲHNB()QF98r'jgaO]OY D4'cG{Ơ4Tڗس1wn';6Zd *͋Z[UCZb]ﺒ@ @pKX 6LÂC!'iO@ .Bb3L)9P w㩧f8=ע =>yRNB k4} K-H% l_WEUp{Q66Z\ wWf\*lEEjNeu"broґ xRsz݊ 8 CKaq<8NE+tlP@O\L_:惼6@#*E ?,RQ[T"R]u?~@ f0nr*/~#\=lM5Bip-`CO hf2A㖍ISZ F#eW.bim'2HRfu^W0j8BZ9FB@"o( Ó̸]|xy7`;-uYPr|XOv6?mmtӠJYoTJǶ Rrx&F|2wbx,Ӽ}1ڪ{& Ɩ; Es\D `kʦ Z9 $U(DǨ4{~v`QV\MbyJ\{Fv XVm4ΚҞkp\Ku)`Dj:}l^u1_ zWTOŶ'īpyuȆu>^5BŬO]^4&$Tl"7;u49;@H5'U,rFW=gБ[ϓ!QwBh9!C[ 2*uu$6bb:2[n' le8]6k%#fR1H{ۚWIn .#.gS(pm@Xx9;C )abTC&fsS}D/0qG؉Jeո4PVVAGqw=s< &u*-h L+~eZi'FASQKh_"fJ 5<'43A_*gOkquWCOZJW|,SYn.NK4߇Ư8>r6y"Kyhv?F2tEB4\!4 :/CI0d&X*Gp"GoTϾq ~]n'zqǖ zKN淊 R(~J,?mD@GaĖr3p ka:yoJ H0K('˃Ƞ>JLLYRJd7Y뫉{)yy \uțG/ o^ssYAء`x!^TxS@#wlc>}Ek2>`Ȣ)/ 狆KVocwPxAN쉢&!62dQ1<aqF"wP2N/be%H(z>;fE_;NW݅۫bŞA\hNF҇ $wۊF-KL\%Md+2΍Ԡ֊1^g]2w̗({>*Yٍ0*9gn74\cP;gۚ*/Ӈ[rB9:EB]Rz1+{>ġ =ctUCw7%Ckl͡n [_iJ>GHCN' y%,J0,BdLsG2ZN*iuɱBkY~ >j 7  kBꁏ l,j3| fR$̂AId\v1맂1Fq&O+P5̹vsDVd\v`t1H E m"_rc @[|Iv0%Gc{×UY]r]&}!e☺t1TG^ȹ]!ǧ{GJ$q訒N՘[R7!F<ө9| NMCM;6~ZrUYI}09kQD7C&j}V0GdXx>J;.ɜVofF5( nڙ 㘳7y}@kh*ǷȺ*qN9F VzfuOx-9/v i$Pu}$Ϸ*p@$Tg@&ܩh?fM-Ll n5J$(uTˆ՜j!X6{ؖ$\k-Rˌ~MIl:#G{Zn<>pѱ Ћ5pCL،ɕHXSJeRpY yiФ\ öa; .\>4 Sl>/h/v " k}KUqڬA%%i4rg[^5(hsipCR{ JARipQMP=8^ʥBq;Ȉu>I,o?gGsY s::>V?!unڪ.ۨn~朚/A4t"x=*9"-Qpo#ި.O $i4h2XSثq/Qɟ{HBYb$e 8e󀵌BI>B/ C|gNqEMl4?ȑ'O--қ[BmSLsOl5nՊuD3a8W5E6I<8_5`"S`X`N0VG&I|Ev> \aԢ[kp o))6˳۶=9-zxXP{SEhM?JCjfpoh# 絪A}=ixj^dL h]tvQK@:28i8H4*{A)pG$ĉ&uGHBME gtstwG'2`v`rqQ1߅P}Ml5F1wYڄ1x8N'*܌|k}u0fLm?y< u|^^Gu {܂klxB:U)ṛgF}m7U@BW1w>P6|?iiMɋTk58XEtNfΌK1 IaOvk1d]i/䇭2gdҕpZ'9\F]eSzLep`J T-i;l0` mSLͳ 9D ~zVKTNחu`U^y tcK̙š $ *\ 01;ŠTi O6y(?:k`z+AŎ+ LFWR+sC*8DW.%~)swxų]Bվd4. =Gc?uEAQ~xֶX"S73HT_+i R1ݖG aB<)jz>ap -2RcZd$ft['Dd0m7%6 .0W o(ʡL|Ψ|cKrPC$#v~_W1.hͤ<ҀW*V՜hze<Ҝ> Z_ÌWBy ý5A5,C@KbmV^Lbsdޟl֔3F$r,tJ0߈C6/oM<ܨz`[ )]]\Ac"r=cUs[к #uMb~d㌝25P StK1rTqsFLKвֳ׵LNSk)Nag i2z]1{:5d횺vpbL^|9 =R hɧI(ҴE+~HƂҠf98QN[Ns6RGS,۠)} n'0qxFʗ;lt'=tqgWs^s 9W6%BS\%\=;U(s Vg4|Muϩ'G9*״:\ \kSds/ !|Ƀz3>UT{]_q!Im׌L:}Cu$W^~h},{3b;kQһ6Z@ =PE}3 0\ !ZͫGw_͸ϮD{=WЂ6Zwɞ_eVceuDW_sTO>f4}=z% n/H4>7tvt÷覅DV<;,˜u|Uy)`.'?r3W1 > l#ӈ`o]`;L V2'ȁ~dfNQKuPcxT % JS"䔲8l=SvH~wZi:ݷϝqVK$ydS CF ӉKhG8M})Itإws脬uGQ`(<[Tݥ~yt9}?Mݗ~X> b՛.n0Aeue!f\4HU^wc({>"\h15]~\Nj3Td@ :k.?e'," WmvŸ 擤.,nh&dta5?iͧڔǹMߪ%OAr nr.6 72~66wJa^~k߽-,2L- gkdݚT>, QAZ:SxYToQf9n?*MKVQc+$]9 p[w9m !-g-)uUY(޲b*|f!; wl -,m)- |*YPp%NqTSq_/{+As617O9 ') iU$Ti8`<ť!C& n 7cL< p~1SIXv>w*Tmʻ> 6r7q;Ȍ/%NT͌+NIӐMhM%Pjq% BӮzpK7H"8<]8jR8h)_s4TVHI0a>ܩVkZm }Jݞ>^W.… LCvNg &˗n|:.>l ǐsn[aڇpdhG~+pN=uo4"'Ρ)]y1f,MA;kGrww] F|"CߌS( "<+jKƙ%dfZ!5l04cLHy+ԮYvKa6p3S=+^!d]W)T'D)AW.MԳ*Mr'pvC=P-UEdo c|ħumuD y>34_Bv(>i%(a:lꦝ׿VjynY `LNE}3[qǟsR]!̣AUww!zHVKcDy sT~)Zm0N-¨Y QWt$`t y:8f zesB..< dEs|~h[{CbX" l wS\sb9mppgR`p/];[eB/xE>@Ɩ$j61͂Ծ* :FH3B]jذ>衪.&S&퇪wɚ*4)}N_`(Lxn$!2}Q~|Fo C;?e}&itȠq6vFvkSǑ?Aũ&@\Md6W?c 3eCKIԵ* ަ6ֺzxt$<ź@ʲ5@Ėm%裹!ȹWAJH.2(̙%nÇ;o_y x+=۲m+`0u53^ [d*/V3`|*>V3oq-OuBoe=OB Q#XFO}I֣ݧiBe.#Dc^|3)%X$q5Qa۳av܃;~MQPy. 8z Sc\fhb.)\c0c?p;BU(i¥h5 6]LH,|#Hd~3HN:"wx%<zYljAQp .&ٚzsT9=E=h#%R Hb*ieQ_P/^ IɏH =D=r ‘-!>i.٤*/'|jRe^Ux:f,d7Zj=:;b;a&vC\ MRJi9^+%@Aa{i8wڂ FY23l]QvtH2ʙm}{~$^z_Cx" 55,8鞸<=g67DC1X3ۢRYQW3 3q5=j*1'csYEr `{F ʫV[ZB1FpHRn]kC@U1i׵MSЅSӄ}/.0CY6|"D- *KM8/ސJeGah>`\%i GK"ʏ'$ ݓ(<Էe6#x6J?,=`˖Uųi*(|򳱵$*c\gǹhh맲I@N]L;7 3xk$&`3[4)=5kvA" ,t_Uqh[ArK.utqC6Q>PtY72Rn2Bg37MRZA:u!42=G=dX:qNzdCҐ41< 4?ZEx}P[c-ds&b2dI[fVӧ1Z?7>$8^& ?m~!BLpI0֞<''jd#`2T]-K&|h ʫ"+YBBXfK鲩HP3OKƇ N./=Az /z(:>f[tL !i`ᵷmWzC!d21QaE+ǃc#I6/ꂯ[OT xT|Zj孲ʈ2gwdj`>~О5L~7G/@ڐ8$oQu,5I3j49;] 2L~||&GEpy6'Je bk PG 5^njN6|iyH֗mh~7\ѐ ~U;}^>H<7mJ"Uu g'9ڂl-txZƪהN(5|^`{SavK ذk M4S.mI&?yte1Xp4EZ-EBhF<#o}_flBnu7 x&$ "aP!WP.L0љzm&"q,7%AP(Y-B%>+ǕNrI fV U+OW&/T{nF[ƻlfi/;ij#>°|W̿;ꅕ[*Lʦ&{O|;&$Pq wA\F~-Z [E =qPG^a稏oq@(qqth 7륑Mݼ`psg߬P!^$IUM*B9b+ԧl(nϋeOk:%^B>,O0汻%>[G E DԐf[g"gPssB{K"y>m)Ex$fU_0ǛC}ܴP܂bE+>~J 57_2jT 3# oy,"(-5[*i0Xg1pb~+oaqeaT/mF٨e+a$,&j Ab,?I5b C> ^OLÄEx@|լ8Wk$xESǹF tË<hxܷ01eufd#c̓˧h` z2 wxQ.a Q-u_"-Nv!x[hRɘY­GLtֳ 3c{ ǒ\7`gבgt- 5Y VWI??U>ɸq qD.j,V$upb ˶ejVuQP(*˗]tx\ ~ 3n(9cJ!s(3+i1lƆ1 氧;:sބvS9!!TzrJݧ~[WⱦaGWy ˪@ )ɂRf⵨w>`s {y^gwcɯfGvQ6KC4=ecZ̗_cNz*6/&Ua\S2Ht52eړPQ6涫CZm4= lj+b]c# }x͞'iy7WqrP~:L͢]@\(aWPϸ4?]'`ь&^hgc;fڏd1nףf כn Գ0 uȑ#wFy`~oچJ Th7 /~QК:;ncE9Zj< FE? jkq|GݑjъIh ܏҉|[aeMRl'|AFF25myl'(ظ]~x {pR(LSz!ZwC`jY/B a,)<|wmJW{$Un?E6X/:bk/*_FN1T!1~Lv)Sq ”о/\p\p*, PK) níB NM40ء[^SiU/cSeOƖlOxq߶AatGBa/ʍ2[ŰDb sJ\'pVU[ t>.йCLs*:iYwj#;MR?&œ4 Ta[njL/y' _TMznłbj.kp:B= vБG;i.}i$R!ܔmu*ѝlU8VZ&r=l̕@n,:!%W:!Ν;_JUk=.>n8g",?:6rˡ85R6u'|K{Ϟvo\EɶkD`[ r0B@`H*Z^]94$H4pTDGAˎ8^ft=0.xNNzcۑ{'7sȵ[*@s@/xJoC-Oz v׼ݘ:!zv%71z`Ӹ}u=%u栗Hnr^׈񳼜qa0$\mL*:FkwnK//9@y/-yN]2㯆E΁`lJ%PB`֤cu)v^H; WgHSՑ|ZP wOSnZ$(Kk3t`{N)X+>+ⶏ8;q O,$fVWkڕ;)"g(u5&mZ"Gj_ v(ًǘa vj''ߪ~fVP l$-d &KImTwMGAV? :3\r4dυ8 90l߽CZO$v35!c~YjQwQ\Sl !_z gjZ\?[3i§)>L m?fe[̈́hC׋r}`k=mыFj@=+ ,X V]*E4[({1W{hh'ݔ˺YZ$6XzWLDof[Ns(G#NlGGKwa1Ts)@5(QWRH/( =d?3Kѿ _Ⴂ]ьQ,! K )3EHt6b2F„YنKn91F:.,}c6g7im!h`L T۶",>c ݗVZJwR Z0oYr[*Z/+N]y+lm9SooLj+՟0~P I߾ih0c/M@qi1srgXvgf01D{nas@wl+0\&);`Q{Ėx5f[K(0VDEd>|#$mv6i2^:4a~@Ӗ )$q e,CW[Y)sK+ H.CTB6>JkBaVQ9,z 6)|NF?)k$w&hsXc`<jZ4B_pQXhvA`~vqqk#[wX2km'8 ((aIAM@8! !xS>[[J kΙo:*#BZeE( WsRk]r݇DRsKN^:&HT@?*}Th_^C*O[&SղhI+> mu?ϗ#<<9T1uS"֘lyѹkM=!Ty?A~tTjZ!|=yde9B&^f'_-q=`ܧD{]o^WX~(6" =HE+pk66pVW5J<HҝdhmbT|AiFҧ -:m_G\<_ B.8]زh5$l~eŜfN4e@U:"f([f%⦤(S6B 7'X&낻+*(&ٱzK;b>W۷: k}UY/ <+1JzkWߔW"0mϑ!(oն⽐@ҥCW.z(ԱmG S;xH"xs܍UŶEM( =pgdOTv}3p }jomjӅSD*Fa{@Zi Ifo׆;? Ջܯg7W23-m(~9;+ bE3k 8]p*Bb9|okKG)]MIT} g)1&K#bBx%yNu9:ԙ [E)y( GH~b cv f:ĥY]fg&$mTMUeϮ5yоg|̻{>Ҧ>V?snHGFd-*Cu\օƗ/Rkl/|KjSSX45A>A!`omcWXǪ,8FO!ʉF>&jwKwͽ{ [T3kcIebӨb?6ەc[=ܢ=z5'!mAky5p_)^d)Q$h/G2= pml~_,[XԝBg+`53ƞhuJ ;E s)kS2]ZQ.ܖ`X=y0,ǰ.PvF1284W}TP[##ʠ¡7ІvD0QLo?GA x9K/_p ?)@daeE,sv'$ef 5̹9nqhOo_j$^9|nCz<+]:vB!~M#Ұ u!u=${/9[Rz9t{d:B$+Psq"}ŋq -V+wEu!`JkiIqt-} r2Yf1Iq'.qwpTW<0EG8^Ώw귱 = p~TCgN~ɹ"v*W |vܬ v\TFU%{6dbq~ոXc5^==COcboJ¡$AӋ]<'lK_z0uLiT 5:D]EO^.)C0"LV=*^XuMQS1yHT/UAu)1߫u/- T(6р'_TSMf-8K\vd$Gg=y)R`BwGIC`73(םKo-D2=?1jᎃ4f8KF M%AP0'"yR 8$͌>gNssTFfsN]"賵y=jw``iCk}fB>ʷƨ,)]\iKg Tڂ~#7/XH_j8sJüW2 x5T*?}|}W( d]srZN~Gܣd tU0Qoʒ.:Mo!>0@ %*^Mxkâr8Bsɕ#Pjy_/ G Z^h)m6N;Mda,q4p'/Q6(es˼ Sq0Ge|CW;IgML_) " ״Jn"_PI|VưKY9{yj@ ˬ&@v*XLa a7&i}ǫ^ꯢ횺T!p{& %HssY B] ep㵪Xh~B0>#1rz|V<|R&+#,8=~((ٺH_S~t=8ޮ(E aqh{55SxVZxk)ss9F8^Ĕ)x*T_H 0Y)ZJ9<Qk75rAWSSxg>m^xvAnkE| R fmd˕3+Pk_ :iгA&&vvD*u^\(cl[Z+$;f1;͆fwpork& y 1B>w 4v4E0;b(L.œ@'ʇ@nV st  B&*Iw'bޙKtZH?If$E).5upo&Z?7,DdUM ~e x֋|sr dUrQrXETRΙny2\e=9IFtL.k 2H*sktvfӟ|toMb*F/?_m# e@DžY9oϙbUz_W7T纾J>Qj!x3 bGё)k'E ^%/˰gˇdB+L1B\;*e촜 t'ՁmeKkMFj1Y4%,'$澹z05vs!'qآfQd)i׹΃RpQt;FLClN <:Xʩ

pƫRLxvw͐#fML,bCY/85ǦvNQ\Έ dsN`;oQhDQ62l2x*$(!(. yƳE4~)<!Qzm: tSw6s|FVZ[{]܀10wTvfr2ڌZ\>>{t#8fA Sptk, +QksI,eyq$7jV#;1`hk5UN;2N [>ńՇ^ jhj1.WMDVG_pNo-=,]Lԫ}7gf MեQlS5?|IDoLe}s/]2e*<+ht܄V+5bBlU E\@'-)gnW#@ 4:%ٰ8DK ]:8+)y/XXt ]_10ķn쁤,=Ò/4Yt$k8{m+xR'a9s?SK~+幮8Z(vak8t?Je-|N2[7VVZ@BrYOt=P7䎲P"wQR 5>U:}L1 H7nͮfSF+<6eM翗{l3`Gs2D1g w 9++.xOD)4Z[/^p~wl:K9Vz;(Jg<Ց{ Bx7 PѦ+k[oÁrgPZq)4Ze] 5a+zx!yU#(ľ_itj2*or2 {f>Yn6q톖O -b3цV:{4. S1HD+&Q|N+T˲IG gחLGLGowPDJCJw8(0r΢gu8 -p| }4hvi~Ѝ8 |FޥE~yZƁ&|ybRy+3TLRЖ{#m;AI~4PQZ"wϢý(|a3Wz2 2p]淋RG#ϓݻ%AtZ"2WxGgsUu,CF[WHa2/z= A/9.8o(E *WTMfb3KO`IRڷkO`*ś2Oi:Coʫמ9G8&F\%C!t1|`Lf(\i}U\u0,ǎuz3~M@ZG]RAu+4gT.񈆶M|U0Ь[W5 9Te;K,`AǍVap8WmnO.5z->WLe3Y.hL4i>ONXo E2YzU?z@[\iqE^L~FD0{L8Js@?DCG57,k5@5S Tk/wѿ+DU/NY(WtiގnǷ(/iՓlݷu@ ڐfg]ȼw6_ hŏ2KEO}&CJpGʙ>hYxDҍOYcvGBsC!)O03&!Tʉwg9NqZlre0/T {:la" R@*S*, c 7QEz^'h]nA,C:a 594Ow2g]<}CsOln*N::zS*V.{=-bqb_h0gի0LvАħ4N8j獶g퀹X:-S[9:@ނt:b 8īi_4chqcG,9mq9$+x@ő,Y>M]O4GP+wnoA ۊqmmGAŠ}CQ 3HhT9GBir"FJ9D_ЫA15~M@$q ! cQ1 FIv&o?e9K("GwyGln+q8bqzƄ:~*Q^WKpFB+`2ZF,pE^ۘf5:PD_ia>XJGYn9UDF?E_pacn޼h *Pu9614O?UP^+"uVabŬ^QeQ+:* d̂h+k^TE_OGU[6 2e6=Oxq9i/`o [0T5Λ2&wܙ|Zii@͇ldQp`He[h4ժIS`ejU1|KwѸgmѧMn_ #׹}&)&|%XHw٘=#>o #(a$U#D^ј{;o0 6ԮEFi& _fWcg8ζ$yW|< Jț0>޺4 7,^EToORB`R+:|KܢyK0R#%9YTy$So]i@u@S|N3`(?h/H1_ |/wZ- GM~;c  *Rn;3"Psx?hpUayϭ뜤y!XD ܑQ$wZ,(c Yf8ޢPj7@8Ss A38.[@#"4a{xi(&"̋w,%۞'ɪS+< 8'w]xDRk yW;Bo1 &eU-6G=*w9BJCmCA  wb9 $2<72(h|5#& =k"8pPUPUSm ݣ1)H[FPNW` {WJ/ t6؜ {d 4qZ}ՂjUer\&9Guq`Tߺ@6G^ OZȉ{kqHNʷͧw[E=&vX>VGk9ZvSC#vpOǰ`b뾹*(mE2[セD@ lj'0mfN$W^gCv7-2v9Zbo)[+(1q?/;!G#2q 6q`gd P2'S *}N\gǡ.y3>҅z7lj7-+;aC oX~" c aM-==5ƍDCހ7B^U1ᦿ}8?aԇ> {®}$7F_: blm7P |''!k1Pj& c>5b5c2' lOfrQ[=2Xbg:[σA,&N߃jۻ~7KlF U!6F Be5w^45hJ.~((pFrp!r`DZ * E Y/ )%Cѻ =ExG5WmUhwZ:@6rSNfn7  qV T}blq7&0e๥6(oc:Y85tՎmc7 bHqC2O/ 'IL\ ɍ(BWm?ӎZZvټ+1q;} t#6Qh ebgձm$[J^7gTnB+*Ҏ \h_rn&/@௯$:YO7|P xE@tAR7p֘ZEy7<J%xJGPQhUA7"Mޮòvai<ƒ;ķ1Ak7`NEbFY4IFwyʍleug>dqT}a}`5 ufCOtbybqeF5l&u8k1Wc5,(ˇ0A/84DRsLh S?Oi9wH?%(?"s 0;k tONhuаTxS:jBU %ܮ5%Io~#Po;唿>'){e Gk{cb7x7L}YbIb}xILbGr#l+Ik n}˜8vl5/]^8ž[*xf ?kSx?sGlBa [Oeb:k K0̡V2u9v 0I!F]7~wl,S3㎪r|l  6V A7 ƈZ}=q;;H(~SUWL~=?Nw}3乨ւG*GUdC|2ɺޙ?9>*<_:'}JP5uDtpQRB c$&9 3J!"9LUgS z\^eO$A00¬gtVg_9:VoY:πP6!O="%zA+Ē6%ل%0."/fꋣT,cܺO[̣eآ H$#;Leq=kgP-h|Q쀵}"Xe`/w^㙸B,S;ZyoS|ҹF˟6VM2V sD4=lT( gK/6_ยuoxI|=g%0㾞ٕɊ< IR9WVM4bwUDy7(s_U6fGspn> ]m8"ǎ- x@!E'?ٷ@u v1-5F֕]Aݞ&’ =JHM QCS<<$YɂqR{$foS=3 _+C0vkb^n}5DQU @]yFZwUӇCFCn>gNW*)+^@EBG?X]YyC ^Qҏ ]#5(ՓtE %pnGx_jƿCm4D4:؇fbÐOubW~Fi0sN4;2_2=t`[;O%,;-ᙣLƑ:s;)&L$9Ma1N::i&N&H)0*؁9w<zgP:O F[夳|EV.}vL}QHnY$"o+2@0lmu䘨\ɓfl@G>CHc0|Y}v$.m-txU`~{G|""8)*JW?˯?<, $wJD`puaPf-!%Qy;[e8(lgT1T}豗֮::ƥ\FћUZqU§lu&1:mÀbߠQ9Ke5 N^:A{F"ɕ\"N,;_d#}]!nRZYPKgTX@qj~f#0bz'+uInl O{)}VѮ kZ&L';w4QraEoYS/] Y.$^yJZ]AXYi>9׹4T pjBzAnXPlf~%,W6nTtM;#f [iN? Ҕ#$0o<F0[9ꡂ&9iYko1Ì,?_)˝ oXE)E+`.edu;=in?!V,Wfϻawkd$*!/5iGEac PXdQ&K&=ڤ+mnN4W#]Axx!>)M琪ZT]HyF8ڬv:{Kߥt~o5r^VS`NЀ2M"yMm T,3Q4D{YyrdD|CF+d$0  ]MMFs5V'@1C$A=#_4QlYPa1-зBfmb(KL,vwMRZPֲ-eg_+#3ÚQ|TYDT9W 陣0T^"oZt؆r Q(֡+Sc'D"z]WUY;ޣv#bCY "uxʫ]_ J30A`[tHOЇe'fv_x'\a`!vB˸'&Ģ*E0kRPPnvUֲ.\N>0Eф!5% ^hΥh$7 _4k=VϼT[dwA&67ӝb!%Wmʕȳ;@&\/4cHsUw:bVn|9re&֚Ί1w[L~BCɩ2v](?w'Z'}M3uR1Ow1 <)<:5^d׽7@E-M*]uW>{Um?,lCxT-o{HYnh*pp 1_) qnJߑsKd@cλK, zŁU2^ b cMƷz{3M280Gv<&Z Z̳#t[P- ۅB ǦM%w)_-IKĺ43Œ=,7'Ϯ]iQT<.(澽[jIjeqUq%4$k| -gedeJ,_*JL=9md|}Yh:OO}N4JWzY']Q{{{wP_xJ: OrR"dƻWKP✡{qꂽb]"#WFI_xcReRGoiA!" f#ѿ5a'|δjUu7"}AE;^R =hb$NVvp ?HpTDhV Eu]LI9dϩ &}@kj t i5ĩe0ÁMR ɧy*-P@(Mr._sh.? { hNg/(v_Xn?bh )񉞉{ZtëL739Dە׬6Ag'BٕVl4q\MVIFX':ݠ`PgCn\cy2)!n\'0B&_he#{{Ut䷠u!wuxA1a4r OA´)(\9ETbw[!en 6$J5eF28 æpnaO*B‹N߹,Dz&@ +O  \2swm]>!xš~b~q>I\>4N `vO9{s5y2MkDx!>$_:aVI2w_ǛkMOA`ވv5QPLbIj'?M׀-_KZ<12CJCH熍Mh{0'n=@J,LƊ V-//~^򵍜vj AXF~(F:~-I^Ht%|isGTݻWྀ8T k*~ "՟y2-:;̒$Ryh+K&9Toި8,)+zZ>:}'0q&6c&we /A7\Oe d L[haTǕ9M+Pln2Y["K$jPq;M>WĚ8-SY`;7rLNQjT6!Xf1QGf5Եǩ;0ȝ+ُR &5)z97rQK!ܮR“7؎>ac g2)ԙ&硌 kS!or˓NHT jKNƱjs1qyz_A^SoAy#7_Z60O^sՇ<+TDY{oy HM_E e˛6@q8W`r@0 /7[EPZ;Q2{PVh *e,^ۥMyn G*QR}lX9r5yj0A Ŏcu߰/+2rzt2Ss'!,qz@6ˆ)t $QY'6?/o"a0^3/R-5R(jTdQ[!skR9=<=+# >(PuKUjԊ`+2:ͬGsٕ*($LkV#;l#I% }ʢQȅscC#0q:?] O*-Pm8]SY_rkcާiwb>fE=^rKAZ|<$%6%θv{'k(M`dYho0aSI9vVǩ*Z_(kR.1}ɽWC <3-eI{ݦ__)9N.O]oh-a[a\D⵿.i0+KW7U{י>?\͔”O>yn3myhWMR8vWǗ8 &=I6Ie՝Vs%1}w!:#-2J HW2S/~4n_,2UΕR F̟VhsLoѧw[FT{Q;_XeWiAM]$)6r]/*}u$fgzG!I~="ֹUQU绪ɺbO!#.qtr趫$pnsCΤu~sfϕK{Ua;h;] J䕃G,K+J+rzw.fqBU$.OoH5ɋR6JuM_R=D|-,v.xFQa{YM%K>3&MZʶ*m~AAo- q#5ÓIl~jVᑉI%s _#!zKyZ m8p~a@8{2_+gc+D!^xu/ίy^>.?$ίCBv=̹{TAN Aa֤S0;&R?omQ;N0,֯XLPM@+׫]f]&{ҟx^s Acރ^-XG7vm0Vt팵Pd(VGonQ[!ܰܬX*{ khU> L9BwQ6-8R C.Hr0cgL# 2>*`tkJkcʛ@(h@:j~@m|J,xX|^7dy #4Au0|㩌By} Y(TƠ˓/ V)FÍmZ|yF&r6`"xCƃRUH=1{`{-kځ wU$F=w5W:y,3붋`7IǣOw maN]$u3+:KFݟRL\d֔MÊa(^*JeU5.%_fJf1_A:H32tozI[IleG$d1BO1e3/ԷL\}5ё/2Xl<=7F%g&B12~ɎKP8c[ rN.=_LKP l~(AagpQ NC..?;.7=X ;!d- WDtԧ15&_WieHb~K_Vz+uB0g]ޛ6PNR4:c gyjYd[1bKf8f7Yl~0e7ӧנ)5ˌtWFa&Of6˟K_O쪌8cy=d^EHڬ3ٮYǣ'e1gqH,ߏ5MʪpNqNE^H//ws*X+<&-5CCms.(ʖ<I񄤻ʐ) "S\ أn|_|CLPop0 vV,5> /r6b1[r@M:rWK|ýWRh88Ee{3/l'xf@PdNGކ3h8>D6"tB<~pvcypc۸%̞Ń xID2 s9Q ;e>|&ހ- ,lu5AJ0x$*ݻ@7/Cڃ wJtgmO۟gvrhe>gI[P. f\J` /^rQZ[b؊ZEbFfy?g.UFB8: |z`Pz f'B1@zq ~Ҫt3Lڮ`\.GE˛91wEuAɾZ=@}lEA)j tro6Jv=`YNq5$;`eKķǂg7;bmSHkeTR%d (rDV!I^WĿ_s!x̕qKGa{L8;*mͧEpxIByY,9AeVkʚVֆZ^B96"ó1+?ܵ*t nׇu5=,б4kóc.Z/L] 1'x!AcVZ^dחf`F䞵64 3VPfQ?SNx .~{߂{Ku\5wRefv'.j]?*aqČTR,+a\q̢eaSj 3;?֞zwIźkm0UJm6W&w DTy]]rt-y; O5Ų_ MԞ){cm՟~Pxr ۠P$o$s@LRh]Яhp]o|o_wyF6ePz){ӼX֊v"BWhڀB[cR^iTs2@~}L*5UV'@՜*& nx]f+y=R$o&w %ݸ%G4y?Eptܹuc[cm"3^ 5N7+T*}L2N$Jo} sHD"X^l8F6MtO%wOd+~:4vFk#ˢ%,Z[D*Io^IWW+cG1gw*hѭ6^fWMTCnp0N\=sg\vú:{.׫⽦-٪UHLF@r-1'|q6ш.'Lâ|BKM9z &FLB䈷@cf`A("mMDZV\p'5IQ\,{"ʤ@_Ė&}'q>_Z4r4$v Ur,4E-hP4;D^>5OhlD,*Ȫl*z24dIv\cӧuKʥx`sSS/Z!XѮ0d7K'nkJa\V89}T7owt4 iV~GnE/rF`Yy18+6{40DsH̿GjܐY Pxfr"EgğM674qbBp3ms19zāikRv1zɼU| jn7s *T2a5[bgBB+{Kkp{PN}L̒OuU"IIaݗ,eSE?\ҷ1D|dnh1j?ƹ['"&Ā-޺oWA]yxV0ez p+29v a#Sy74)grɖlqpcDR`Ğjc|,b"xD} jJHx]*S:R KFgt 3-P.HC0ݐԮ'9~U2싦ڥF=:㴾^n%fC4I䷂A'c+]EaӧrUɠN}zWU+ 08¦a[6'̡&h]qRqiƦv8q۬8HO%)]dG_}>Ofuk]4˓ȽR`^Ėy|6 h#ـ^?$Gs\@diBЗø#POT{ F42qTx)poz^wJ||~IG&\."۱6,+ E$a?k_KG1@t0$_9֯lJJdCpyDv]QETs'X҅ۖM>+|*:d o-P.W d,k]eI?TcRAn@@>@vwql܉UcV0 4BܩAۊm"`AlT2sb3%tV?u8䘍b9vGUw5)1ָ%0C T!:em)F yI0KU84qrʺhH_{i.m-:?X6o=E{(T' 'dr",[ܜ^cVUE܏jABKZEO5ΒCq@\rj}"ಠ3 ۡd]_yJshJϜgĜ\Jok4r2PI#~ab~rcpOn=u>|Gm~R 0,yF3-hy9Rr]Dsރ#ŜuI:cpQv/X.sPSi"kc02>^[Gyۭ0 p_;Z,sG,,b8;BW1ӊer"!ȝ/մ;{^uRL|j1 PG\tje4 #Sr]%~7f7EJ%;ex+4S/WRYsy@L^!4S'L\qN!XRELdjn>vC`M|X5n7!-Pߺ.!UAxSe@ܗ:gcC&3 J:?T2lŨ`h6=_b ["w0T+K:kRcu'!A!" 5[Szq4S\:!w>5!H ꒒tD.?z:;*Mײ4;_QmOF*ahQvHmW~∣(Og*6![.:6`(1'Ađ&uh>4arȃu8< Mb[E930}0^J˒DgSGKhnݮognÄ/LAf+OnmL-쳙Ar$#?ez (%&2p ;%&dreW7UůOxu?.6BH8I)I淞!#fAmH[ܴWcPony;[* Z|%CI%=j-(LX?Xd0=~׶[@ju ktf "Ir^X/NYt<yrv:kPz;e[sk41sS|%gij'HH>=F!HW4Sa}Ap5XM=t˂XF&ΆٜvԲՒ%u1Hbǰ:ûxYTad ) z z\)TNcq}n xDh+?3Y}sKiBܫ>0%1e0K _-C)o(p lH.+CM1rƆ D׊9p`I%9:Δ娥Sğ$jIr}z3<&P\i|N.q',7J Jdj,3Á#N܇Zog~7KXzℴϬK1񰇵V14?A<ׁ?i.L:nU^I~otu6hS01ELjgis* xa*S;}mu-fY@*I'Ҕ&F\j- E|Ђ슖*О2ŰEn1ÉjpöGC˟v1MHXm;uofU"$4d,YO]= *-)n){zJ 0|ӘIϘ{sSv}wZR0;[-*z(bTӬCnAXn uCdie*15UJ-6Uw+(1Qd%t4+ϼ,G2شfRa wm`'&Z 6aSTE^.`K7!߃@=«xuDO=@)A rlnj2n.'O8EORLEM/Zb%okwk خ+4?6 #z\@}i't7zs4 V1H,} 3 tJUB+E-CRq^! ^>tO .0ȡ 7SNz;k< ~RX1jNR4kwV8UBⴊZSGktFD0xm18I$FVDfEe۹V¶Gs:SֿTJ%Т!txw쥷?3?DW hjv*#~'Hjj,>36Ocg)>_BTkT[,h(bF~0/.}"R(uPj"ߕ^D< w$]S9_{{I~ׄhy%ʃf&Fpҋ,$"g}skp oqd>o{ӂEwK}1I`Ef,Ep&nɹw `fWk.̠SlJP؄V=’?O7o5/^j`E %(ILG4E myF+'PϗD,[ؚAkis vS)BK 4kL & OȡKE5{/-\&ivЉ5(~4w_hS?u8' vzLB 'n4ӮQjO!9&nl/497 ul/F0Ep)f-,iގ =6IgWHj>HM4q'5BEirGٰ!I`sg1SÁ3q#fwEfnfD7krEަ!(&_ŅXng_8sݳ: b] ;{ 2?@] 0nc  B54qcaQH.E'ͰwPlϩ R>kr_0@L{ώ ړ3EޠZٰ%k+F;J\ao>A('Ή0MJ&"5^8IMJ2"-B`XSxfxktЪ<ؖCB(cf@d>/W^fY6j93q@H.'3o.E,0uGWEXE0X؁JQ]ԣ)(Co20o*G嫴oPNH[\nZ!4gջ Nܣt7jc${/8a]s83?YaӫNOgW5'l[I%ڿs wGnI7n*U@~ERh ;k04)_:ܢiifMWܤL, ;(7tFbTk^f2#4C'zIiʉ;xMb )q9+LJܞjoz[J3ADZ(w El_xA! X(prz m0 .WpV>w8[6T9R"5Au1褟gY履{B8~OY'7%} % DB}F$ZeO*MjukI5l$D;E-jzǿ+.jG;xڌOR9,o`._R %0<$ܥDu~( "=[U*=,{dyZ|6N&(GŹouepۂr%Pi=6y}Y `d?Ǫ]QM()׷{N1? b=^1$QN~TH,F#GX |qGLEՊɾ a-8 m xk *ڽSTT3N5T7- #BS#a|ȸ ?  \q6Wy# BGY.M.&&٢.z=ЛѺx6^U1ծ&w^]JjL~!th58#zH7~:.>XQǻBEyLH^\ |.֣ƴdhHXݩ~δn`e7F.BhX\T ' Ⱦ[_ti]l η*Mvšo6Kq̛χT_7Owq(UJ}=<L­PQhЮ6Ϲ^jZ3aïU}mb_L9jD wIz@Hdye3g6(*~(j[\?EN0 m'a8/ +6YNNJjVaST.y^!3GH/$(2Medd;AHQ dZ q7ʹ6L"$uϐA??##ܲ!=F3ݲOJ8"2t]Ԟm:Øt<;eT>Ӄnd)60i] [A`KHʰ 59)G(}cPnjWЮpP)^x'y56ݤ #ovh\N#I㯞b<)tTo2n9it(7-plm,SרNq؍Az[2>5:hcˏ&O܃+ukŭyFB~iݭH}/y`hbFsgc}0\fLK/s  Hwe8rLRN6I.YlZ=weQ;# $_c8@„d"QiՐ ڂQK1??FtnuaXuߥ ,$K{M*  !Ӝs<­rT7 C'{@YZlEˤv ZeƏ<aM}y?nxN$YSbp\,/#*5}~}Yt'd5^h)$F[3B㠠W2+$n\mɋ1k Ӿ}ed#BGa+]>Q&H⼏Mkn6O̓˿vf]Ãoodei$\Y73gu;c&8#3gSA)X&4"qQb+?&J4W#,ܯ]]ZC^JTINNni TTu׬;",[=KY^Ʈt=D i;1ݠШd p%tҊ*B󿰾oॺ6S@fG{olg v@&!@(2Κ57kjPy.F+jƢW#Z&:pf;L3AKu)cQ9ٔ94Fb ^[&O 7ˁnԳHy:BnagR~8;+hɛ@"HKeÚiq10-KZej7߁Ot&mcf @iS$uDxʶec1н]L_s+cj[MJmTyVY!K J§$ݰF5nJt񙐷Xq,2[aѤYr*+q !DWHH~Mӝw~vh]24c5ZtȠ[VZwṵT^`s;y-W@- #$v^vCl\U3I;MW3DVsrKm~cLY){0ESmH y0g&iQX&2'("J̨dDs,=]mͷa ]@;p_7g2?t \@ކ4ӂ䦚]^w)J؟z|D(*ofdcm]FօH)[e{)B[a3\ئ94A:>B䬚 JE`Φ|5BSO&l"Y=jx{졥dM%CN΄?Njwfz\{fai<`ׂ# ˂~Q`Rc9 3҈L"#zY.ͳ J'n]2x.K3S2laS'_lʸXGV;(yxkǪ%%J4t .<jd 9sϰy1=eR%"CxEiAYUȴE٫.c-ư;wPOQ YFAnڴy4{ -7\HPD&_[tE_$izTFQJ0MHזh+*\*^R>O1bBؿ)WZ?aN>6ܥ5'TrHr] K\n*/-'әB+ d;K";v'@fAcJZǍ/B^`DݗlpW{y ~0fE9{GSRw,-`4W$}'*wIYR;WUr0c" EY_nͥo2c:"4q&TCMvUKgkh>=i'Uϗv]n>|Rv&(^JЫJګcl3حN8UCfSҊco Lq}:_jo頖C>Q>l m^{΀LK!&b\5 ܆UYxL)sRrcX)CSL(]?"]DTׅ8[ (, S@qչw@| XQL,k_YfO؇R8 W۴R)1;Cd_EgV)-h`Iɡ;j)u%Ԣb#a}>*z;rO%"AW٧/Kݲ1Y ƞs)S|rэmYx"[qYG^t0f!4ު?-h/urk((S@=xb AmHCXHIC(Z\ByCLъ}ׅYg%T%Q}*76N<rۙ0jC^`#OĶMˊҰ!+elIUC؁&ƙ/~[|-"RνΡm糥 +S jf>fۨ==F ŷmU{"l~7K(gݹXo<_'RSuz'Pw&,c2Fr4=jMZBTY?sDRTZX~-ΘI}s;,:~Użh>Pw<6i9o!^ٵw% *Ń'E-6`/꾬 + uճK"k6,0B.8Ꮯ=,h2ΎqPU'4ֻ3]8?& 1m;UZu.vY2l*MdD[s/a14$[xI]jtu P)oe$y-dB@ӱ'HW56>h`~Nܷu͏ sU@2E0#NJA5 LA#aͳʜT]tV;{[s5c^I0~pSKKxye05##=}.VDoʼo?Kw__|>̀⴯~nձɍM#,oVkL" ni2Nݽd"-QmM üc'TAO#VyH,X΄ ^&~pc2%7”@| 7}Mo1MgGlK1+sUy0"W@]yt-Szƽqj/yS|y$aT73T\OK]{'4B7(d܋L4+dn7k@~0}0'tP=\/D-Y砩1چ'$$WOzZ&h:0A0T &+F/t^{9k"EdL3=}#a.RnupO ;g@f[:E9mQBBל-hW$Q|Vgw^Xd)L-э}{'Ix٭@Ea}*@ţIS=+RI܍ʞUXD +H4BA~Tj_= 0u؞ݹ SBE~%p,𚋃\K㶆-<$Ļ0YhKsݒye?؛D6jB*F B$3*@I38*_;c,0و.wJ(TWij>mk`nQ̔F#U[Os*$EKc'i1PۢEਡĢj_m;?Ĩn%L8ɜ{Fʗ_Cr0(Iek"TV荪r"ؘj1"={}Ehx lײc.|xfas/c^hɏ}rwpўF!Ԟd ŝ][{ .ܬa+]3n?ㅸKm2 e.bQ?%GԐ!/(ނF>~wQ+8gDoB޷ZJexuljD]4 K'ڸL.0AwFfXᑅHA󣕦q&Kʫ_7hY확eLj>]8 ZP@1`&*wmeS_P`b8xy:(z΃(cd8ZY۶B @]7Zf*u4^×:ֽ;F0L͒:xe<$l,A-LOq=tU7@ n {V?$)t%4:72 gC9g P$Z}Nð#cmկ^Vrh5 Vhq?C`|7TwLu$ g?PA^ W spF}d7 qrЙ Ze{~*C{Z[/q]@U{4|?±CsADY3ssJ Zm чWX<ޙ͸awA 3D^QmRlśd_: op#:"s͗]vpsFS&z*d_i♸(V] 5 D^X N*S~4|܌݅Vj2k;&xBwjx1,( eUd ^7Z(GhWkR9_A".-mx:CF^,6XL_?\ҿ[O7GajVB[(:TVmtE4QnoVn[*)gֿL[<^u;>'5S>݂Z'ZV{7/:B4 X+0s2>AL,u>v@X8C58hEZ3jJjџ7x"ks2ehφ1h,᫅خ+P,l 9ga DWn`"xE#3^XmKb?FgcP2(us_u6~PG\e]l~A.2~1iC+f ÝUE>P[uV#^OU.$,/ة5}qxExCIk8Nd3&ڐn)yC'7H%{y\i 6̻1E`TCzQᩘмN|S="aIꫠ dpKX| K6}Ӡi{hu%Xm#ZV Tr:`=gna^记.m =E2$,!e29ܠiY2  !g ,3U_OL%wmwe* h$7Hi_co~ acquAQ>Lcvu,v 8O,ӨV@kh%O M pMSiMʭMe &sŶJTBc2+Q!q7ab Pz3aȿjAeɎ',?ȟR[POpp~ZY_9CTtOk|$1;3ы}`W*P,$Xx`kJEX-9G'JwzCX9(c#%PT#ؐuM.zVvt#`mZVm,Pvd+l N?V݃_(B)P<0#MQbACNצSo8ėEG90%'* iGWuI&o&$H]e0>V?nmB(:yb<(M 2H ;2*ړNpmhCqPq`ng&;Lt#&nEc' t :'&XFUF,P ŗسBCP3x8:pumDj 'İdeɆĬwã)lWۃ Nv_/J.ci`|C(K{(bXNZXTxco3 E2":̌|lRk`i#,C a+h0>YΖ EWL4V]tоܷlTwP{[<=2l0y-8C "G\/jw&!sV + )p[H٭Ve $*`ܞגk0l1)bw'OrU6^gV\{+vD5C6k4Cj^"+|0;tH?4 '6 ښjH渃3ͬ@r|4M[U4lL98N{[rnЬ7H6$^55Z&(1;5z4|j[v)&#{q49g,cWHZ!jw0g¬(Sit͕K0s:5=M8fx>t tHy1D`l[WXv$ : vt78,bg'JڝS[F8F/~ ~g 86س[_췼 TGuT]ht F&UHcc3Z_YH'Z'n"|0 0^)33{(`ΎHj;byh(HFb9keð !mJcr~;E{ vGzޚ7tmomF6zN"D92ٖ`e}o4E X>,G4pS5FH9 o:XYɿThzǺZE b+15 W1xBZP-k`g}9p"a|K fEPwV|o(km}03|]PH?7ϬuhgK:vS@9^7Mb#{ٯvVX9. U}1?,PΕnzu\n=#_wAu(}WdʹVa^3T|—R{u( >Z09Ħe˚x EFS$pFKxbyH߱f0 rC 6]Rf>>Ct;y俶cXfk>*úHv8 ^@U9'EN&E=@8A8c ߽W,/z`EKl]Fq # ˦gHk22wc0Yxm.vQ-H'g]Sаh50CIxjRXM[ZO*!0K"ߍ)QnQia2J؂b#N2?~IAZ)w|fon%iKGSJR͛xфɿuHe"*c>f1`wƫ2P?oϗ^Cݩ[ >:[Bc{0u ]kMPPi,iQx}~NBKvQ4NV]ݾ ;̣OrXleF+=8".]pJ߂FTsP4&IrCFL6?#Hb5{I_'f6߅'cÛTo"wP4۴ Zg0/`Gn)#q),pB$a*/`>5!\}^HPO WE $[򞛹BG QK2-eõN8]e4Ơ0E(6$mߦE)?O,orʜNJ7ć-A ]p幒=^bNZϟ3|IV/ƀx~'BՂk+oGA&m\Rr@Ɍ"O,{dąbw~., J){ӤPE:E襁\1YA )9<0$쯹t]}DUތ^|Z&D#)0SI 8׵P vd'*b/,ޔKJ̙ Si)*uxi֑/NIa#ȉȫCK׏:.u%p' t(oMU)¿ξ3f 9y|46+DP :X4EDh)2 0qvnZ۰/|9 #{WU]0eY~zWGdn2&;4  *V ZFA>k4,&[STSpzM}st7&(/"G flk~Ǵ蟯RgE6/ ]9Ed{"}w9zݔ\-8TdhHnr`ANcr :Η˵:@ e$5ݚuW GGHT=uށic$jeӑ)դ.pZŸXq:$+7,oWS/R1`զ<87nl x-孒>$b}RP?K^*vKPU3ȳe-2ENaDkuP0*]Vp'y`m#ZCZ&JXX*Px9Wd(I:  64M7·퐸lͭWgm7;uP*>_X޹Hr?BX@+ P椾RmݏgW{m3>K%Tb[mvk嶦5 CjaIJ '~+4e\-bt;-tE)1[%4"kd}7vO ,frIKK})Ya LFEȇgvt)zPpwFǔ y}އӊ 3,y;TjPoSZ(AmwEJĦB  s~\Sfk9w4Df@3\9aq +7eW@MG8*ܪ|X cHjaCQŭeexiZ$&i/dz6R*ET{d+$I;0Wlv U AOhP0;l0s[+H5 E 't╃xlzP7OQ0@%[MhECI? 0}b:HNt7kHɒ.j$Rr8ƈIΈzv59O$3'Wfö(}_Τ, x-׎ә5f|@7vq)k$?Ho$=]iNnos$p(m g)~/RSE!N_K'R y;Ns)o :?6ILrPZ܌k(ߖsW1׍W&&V JL:Gx6I#! ѽ"okǛgCE)ǝs> q5V0hXsr[ho'01#J[:*m`wk1P +1?5CV:iog y֍/rW w;pd\? .߷gEιɃŅJ.2KSseq%"2ugue?{W9hw`8̈́gFu 31?`דDKS08 ͬ] cF׫KR 7&֮OJ]vVR5yMw9>{`ZLS!zFAe$ME p+ S@ Ov6!:NbHVPF ]_}2-Yw?Ez05eK=qDx|O_zj^sI'V]v·ksH)6 k[eM!>KCee UŎf!7fN{06CNyD~_`dsܹ'BX6+› -Vi28%1%bgyh=ߊG ]{@`> F?i=:$ZGI@[^/@f}B+؋o_M' RmqW[('fm2k9s2:>߼@VkruE8+ʹ; G7࡞xsj目K\J T; -Kr~[T On i5Y-=#|ZNj=6c4V3tr gU% 5(c`MO2:|Bz~2jMψ*㋶"MZ{z wBgjx֑o>VkZGS7H]2~+)AZd JhEH6h,̴҄*5`z9X&Nե'jt=+1v~Ea/ӼL!ɗQz-];V湿HzKw&%5 8V#X;Βzo[w ]p m Yr~ !/k&gQIZ;/+Z q†h/}l.0N΢0jx>4t#%pe"wTM+ M4 i x*@BZoh'h' ݁+HEV>p_م\òR;$0O7vs^!Jvk¼ᦦkڸ 5 Ai?qH4 8k_Uusz+GX]@_>W^\gǛͬYA:v /؇f$#H OۜlN(F Du[jpRcO@xly*LfJlnM% B"u|~C{ee ۩ Y)`T+dS~{8tRG|^mtsGG eirY٪:A~[an'}rCa7ǂ&a!#-YdBђ$.i kT qxjٹc Cg\BKyL2cKxC0SJb!xUMPkXD=Q# WӞ,7 4$uNmѱ[/S"ZGf- ꅁ P/ԅjV?\U|g9MuG,ڴA?*Bm*7R/,m[jᠮl}>Hc2loi-ܯ|@ d=~#R:f.9lZybnԞ2IP 4_*-Zu``=Xī/ %:AP qA7z͝8G$rGշ禳Gn/M[C$WS7,"P:0LT|;7ZWr%7Ø ْ ʧvԑ߂ 7N$Q|TCIB$!HF&zk&·qP4WӒS5(y0;^PZS)g10_T/<1X)f3K|TM_n{5u*zHL'sԬZtM52 牙ʛ!fgFEHkP(B Y\Ibl h1!v5Mo-K\j_[̰)n {LY{jrҦ|Wws=YYY#}MMdѲn¼ip4/)~7t֮.-Pw0Q\jQ>s1!ALTg߿F:B` z[ςZLKl\^j]6:򧭽 9p8A[+݁do|`e~Z7vκt`8J47 Uwd #Mrj(kf`%S.uT#VV?X!~bF㑕˺vx#`Ou&=*24x Tck}a4ڳ~"μP:ͱ:Cls'%s}~e%"!ѾҒuZOaneS( w.J@N e@=:d3 =rxˌ [RH /$ HslzaԹtYq%7KwJB uSC WPchtechwn{8x1(nAW,:9hYsJ4IB 9)ZJ: DGAD\]QAO}%{̖~8Df/MT]?[\hUS8on$ّ yyR 1 +V}k[W e_d c@\ܶDF/TkZ=V@15{avB߃Ӿ5C'CRx]g4~{]ER" .ǏIM6eUyxMWfһJd\eYk9[Cz ~aGB`w3sӰ~Ȳ犸nJqWxZ=KwWP[?R9Fɓ۩l=P1ArɮQECNoHE[r[xJ%_Ul*;a!]>͌TI?q̮u+z0L0L%AP E~+spbp0V{_/G7 v^ k'Ki!WNiaP֨0>=SH1\`ZIb' Kɚe.Jq5f FQoR4RA2@Id"xkwP;o@G:5տ(?#ga*'~ZVd4\ 6zJ00ȡkx˘T$w4et^ò2{oـ>٩S֌qNy6L؛Xq_?&z/΁'!n- q~B`D6_AƖ֞d9ϛ$hЗ{"ùbXXMoPe0ǃ 2m']iöJ RhܲcL:!eHܩZKN ^^'\P†( ԴO9\h,kxTDJ lH#!b%& &,HP~c@<N0>=2}8L@̿ tV5 'NT~TtQwR ag]* xht/{ܑsv7VT.9ybݧ @r&3@.Av`1݈QWCڈw.{6Hȕ(;4 Xth3YV _(ku"ӣ3L6jCQ!Qg?4o}y'Ȝ}J9#y݂E#֬7HYE$/ӔYS߄p2- AƗ9*i_Ԯ%zf0uا]w+IF+@eܸ\ /fhgR~yFXVlpZ;]hk܎efCS^k@`h5Iܩ9Ԫ8Jl4O zoBA(ou刭X?~NcϪC5dS)\_uA>@opU$z zOĺ01~z_6< (>D}Hc8C`n=Po9ZVJ Dqr] [p]Pmo\f[q"^]Zcv=P5(_0yG-mqV?j^jn9 ٛzbqZ$Yĺ "L g\ga7G,s#lRt|2;m4GYIC!H7]Ŝd<{n%iY>,IxG8tG~f"xuZJ o] l#`,ڮwܡD0>g;8B6N i0y^5Vpͬ F W>AbU8lot<'Oε34* 9Z8 _h6];Jd N<$&N6Dk/DN; ρ#R%Oo}݉<͓m/9l }DfLoG?&t6oo;}mS|HJxj+iWM11qʼnMy$+4luկwsSa:kGϩ%+ɪM*`0]bTvsZv畯\Jb*sn΄3}5X+x.;EeϏMԓ$&DUxiq2<:y_Ya<_A *I'yBf`x:\v ˻h+dPCJďf/z$g=@cwgWolʇu`>@E{C9|-w >}]H81S 7)7+[o 2"^Hmt5q)֙֐ ]+?XޤF=;$DPhiΛ~yfXR)[^)̜jEI@pg \C͘C.$gw@1O|EDw[rAR"?a+ozW:Ov.a *g_oRUbԊ0gH+) O8+ ^D`ZceB.yUTFoצxͺf=q5p"ʒ4]rZyS@&,U=Hm3Op5}b֛v*)e/+ ;LȀHMG&}GVkaW'jv58-h ^Ln/ݿnInނX!X>5+4Or.v " k3 7yRh^;c~Qp Ռ4ah~\6 ?eZ[PUxN&D7 e1leGaϩ7DN$ٛ<T^+b'!Kdz. !:Znh9a0a\Ƴ3,X6$^ߘIJ P 22+.c"4v*檖{қ`7i"XHTgcJ3o.=3[CV A hAU+PwA>I+?/ı TL ~1,DH)" l dPc|=.jO[0x;N0]#X%:p:}#H; Í&Vjh~/??At ѳ`0Y#Yغ|7yIXaˆ\Xx! LSc]sD Yeecu$ZWKFrnl^d6X#!Ys`qj! oN3oVк3cY&U } Ⱥ H‚H[6Ma FjbcE?tڛ:4|wD2uG|U|k`hdeLtceR]0i2Q}5Ry;RFnf+v$FzvnxFI$ |P# Z C7Ez) =iY#&hZM6b 17̾0$dQn = ;sKPdxK_@dӇw[]!-*|۸^]ъrO[)m;Gs5LHiqԟ?-͔;VʪMjO4q[U}s syݑX-呿 ev,ߝ9Nh0}PL13@ L1P={f HuOd)]W> ,Y 5+yJOY*v4F?zi@&aDZ>o%j-c<`xHbI.N7:lƨ)0Ɗ\Y$zvvRf3F$!aߪj[HSA^xV7+ }~'BwяdTIs9g!B37`#;3*YPZ͉s=y}͏S(r4FAER:6n ==o7ZinǃW7AR6#~{oO+N`'Ey [i(>fHҁūhPҦ>0-Ǣf: *-rzK|㯈esCufUF%vUe^,&?L#cC2 Rڔ!ie'y|ɦZjJ19H5̟y ňԓ>4[6oöAFֶ[̩ZRȷ]wʭ,Tly!i,:3}vk(UBY.CEga-SM{U[oCjvrǸI ~1rW@MPU{L_+3y6’WNA2>eQHfV1Ug[R'YI_ r10郍.^ݵlH>0~tQ$( I6sA5P15e9`P.< `bGqX_I7|-;kإ⅙#D_=.jm豄4޿ 1 c^}W $]!,9WI١*-LZ0`cg>L)|&/Rd'.ufX=%~;̒ lԣ͊C!{{fsL|Cʰ#+H+Ҹ8mګ"yDδ,6 y.pjp4,tϹ9 +,`T5_MxItDj %U*v)S4.ʕUß1ΰK28w$wpe .YT_;\ۀK6Nz=Q*5,sy˚^҂Y^嶽l1ѭ zj$ uY3BI4pi#QQ/CBkwt74pe'mS¡-h O&ZV+${h\ߗTYaeq}H'}"`DFX"r4ZD>gE/%k Bί#/*tDZ\Ia7}>]ʴ]䛶5,+*J-*j;&u5~oigQz01D}7iRGW9I;'yi-XXI'7)PsW,qvI k+?ْ)6*i$xJ[,7t;n3fA2v)Sָ<.;N~r4}Nw^*z`Twu?S_+NJq=ke)t~N  L3+gSSʴZ+{ 3G5>LlNCW _On:E!% 3cp'qM"'y~@6bŪ|⫎y MڻêOHwgsrCvbW**;`+i?6R4EJ=O QAH*,]?/X\W8]%> #u8woAlږ4.pd0m<%U\5i܋ӓH$&*!̐n'VII0$^83l x~Dt 7vu^QVF2}I&B)M]v&/=3f3/8݇*U X3o]^ڨ}u9,3@Kly[6/W@ :bÛZB;n>ZQD| S~T!$<0 yT*bdukAX%OGj~/c S :d*(!U99VI) {Wvf ԪFQ=k•VޚTSAf41 D [{DfR#*ܢJX]uNY1wu wMg7+<,uy\fɦJ([@Ez:X[L:)YW*lJq=#ƒpFv֪ZoP6Ҝ㌐bW,F 3Ln] W^SFUDODwYCDI+'[D Fz5c֝#0gRxD *kb kXA^'5喍Itc[:Wh>$Ii>o| aHs|f"n,ӞxE5e?"Xd[uG$&]_q BeqJpԵZ@O PIy qnڧ\]|L:Ѻ)QB_[FUF럩0rd$gq>8 yC>}=,<@awrv^22A_$Mbd2L&Uأ}2ԛф疨 u`ES\t_2w:2z{OV[o5֡Clam|mݧ a'@M-0ǣx/`1ͥ$\lʁywV zO]D5o;#/RZl lpkO/aB.j2+/fFNy"qox <`l*F4 >,p>I;5$[0dc&w;_0deZx*B!eX_fwr&16=\ c@cG 38yIP'a Oq #ԷI}v(H&{OS2 "j,s'v,uu lvbPĪspsɗ7Z; ӈLW4ڈTY\#Jl](} ,4}g8[\KF9z|96jĻeBr\ORN;|=$!aaZ3թRGҤ Vs#e:]-7 /Q!DvrQGX1Q$N{Oc KkvhGgR SNdVOhOV^o_讱54~y~ʍt7gVQ3= &n7~%b)1 CaEkTcdy/]3}⧶'v=č$WN) a4?."/:RJĩz& [[Mp&onkMhٶ~z)1-|Б쪇sb,c-'z;1ZmH<m}1i*4e. V`n} u XmߋRĐ^ l֚-x60$Tu<(r98 M19K, p v#z[xQZgnL7L{'zm{ȶ%)uzg4FZëUPIp#U!-_V Rjywr:* -p149B:DbU|.852Nq= 9DK!KV=/6@"YM5dzj.pYf]v/]鴆cihQHa@\3<-yc^]&Ua4$fWCg$`B[rxa66Ҡ A[9J zۈ9 O͍"FJf7O 뫪-+/'sgaf}plŲT(@V!h1>I~`"#6ODa{*a VB'qI;0hӚ{dC<8 酬f"N8ھC"(D).%O>2$ / 5箪Foski+=MN9p) 402nK|_~H6zS.V+a58\WzU;?2lx֎" ᄑr$cKdwn,97ԩ'd>&ʨaLF&rɬShPE!yx/y,gN 5'd]0czjxˤ[BZ.cTgqO 0i'է~|M# ͝3>DmIP rH_Ӝ -Wӱ`Ʀ(sbQ]\obr˜\f5=3?h(̐?DI ~hw pVv|Lսf ^b  ph'+H>'EKC>@+Ƅ!wvTx:;w ÷.÷vP(H= a+ pwQxvK卐V01ڦ7?]f*5 s0BC (U9rO}|0G\x#JQǙm<T5OL`ZVD-Y.(kS$+ >b^ z'gYOT< xϷC ]ܝsl=`FfsL#'E^3 [شs7.Fu1Lq^tyç.^H~@,.9WЃjͧWPRPNoxY7q>tiB_\HmK9 HS{.+c)U y|B:MQ E1kN)s^t؍};vO];,n+1n* }WG"[p*Y*ǙYyvMH b6N&&j6d<X}g ZCLZ3my񮲹4^BR :k%ðԭ,N"qg@z״[8{X@aⴋ1VᲜ^kz`V-޻اxI_NȎOI̭aPD Hl- ? Harχo$mE S7Mq(1v} !;5wܨ9r:ҡ~L }?h[sFHnk:tS4~Ч9 ΨjE Xwֳ"N0S7tI^F|aA.Y~' ẍH<p3L2^g &zTn Y"򺚱IHRQ>Vr;-H9K[Ԙ֗Idž  wu|c.hFB3Co("5}"w'R3@= Tǰ^cNta9 S"xm' vWxTjĵiC}5 f'+ ~sucd</#x-{>0C983%9"(B ~U,HM*PUvEFA ־}пk%GZꀿLS`WYGZLg\nK~EԢG,@:0M;^%beEznyX TM_O$9@HbAGL[f70Ճ|xXw}vR+{tͪz9_\*Q8a+}q7!ݖPW{Lx"70"VbP>xcbtk4L^!Ƀv- [Id1~M\cQcmJä,{xj.Ղ1[ei̹V$ %eP_"I:c|ã zYZ1JktWgW ~4Ea1q3΅SusB⧯cjҨMS\H.TH2| tڅB4԰|^IVEb)N"KvdMc}n"gl?$,[2s|߫  2뢜SA9>Oe&W㰶[n ܇¥V@!m Dª NrTuBΜJT$|bRpgMJ5ab YiS .IVlWxb8?>9z-LdtV$>kDj1هPfv LL@zN`ybьyUzֱ>+DhztB+B^5%{3[% AS՛i HN8BnjC?tz;.-_EƐOwp(}݆36+Vc!=ose1XÿCeM_% Q#<W-nlb*r7 Q\M$CGO5'Չx0!Q@UR氬)OeOU T( kmǡx3 Ɍ-})fj%xRt߈8`-m^$Xtb[W /tD(%vTR4Ƽؽ7FbkDB]* ԦJ-J;U' 4&MŪ0q,T`f[d6: uC@]).GUe꿟^ H/vW+͎s;_6 Y,O6cZQi[B+9$ ޛ\ }( Q|D&=lzb17=Zϑ T8ct(#@_սnbi x?"!َb1/j h p5Zc/QjΫzF갤g[L6W[3;V)+~9N9%VCXDm`9 Ivl9{3WG/PH3/ewW4ؾZ񟬖c&pᐐj">;CyiaQX-$0WٱļR W=dF@;gy\ƙ=vS󊲨f0d Y!d~hHw^y~Ɗ:8A-] 'k'W!W$ocJTĮ`@a+zx#Ճ>UUj?6E@"N)im3)\n=Ϳ5\YL\7_/9z͑խ-ۏQ.Jo4/}hx%nvOɶRA+Jqo6S ,NX1KBS̟a4'aQ Ci hEi P ) @ԥߟX\.un.Hb "AYug@\rΞLGRݔ0$+ksZHUdRRHU~!;LŎDByw}TBn .`1P< ZύAY/"oI$'.HZ?gqر%R-?oȶG:(2=bz!UֱT)f m0DړCWf)DJ)CW6/Ykߎ MFwap "c[}XLDySK?VCLړ˚. $/:E4U75FG`o-LdhV+rpU1ȃ,>!+42z}i{K`SVX&ua*zsIڞ;jq:oJQ$@2ij.d"$Qj#4\ثBj̒ϿUP?گ;XSCw8‘t?ޒY wx.=)!+_%+ٜneǙ˜1myܟJ'0-ң9 Z >v(J2ly?~ ;X0v( 5[h \<5dVZJ=^Eܮ>Kl`ÊwfxRrtTm1׼2Bְ\Pc2 TȫKd |8'wex'b<@oN*O(=(8ߺuz}x5}E^J\.n`Km6zv{qi03{(+^dIDkβÔl[DD(e]v`0V7 Rj>}Q#M$L1ox9x >烾h܆L6oȊrusm2QIr7%{B5V=4.t,eZБ~ B%:9L%&,eDwq.ғVQ >L~ȍ]m!%-K.^@"NS[z*)ABd/s[at&yFĮpe8_[4ஒ@wY1S&{|jߛn'7V!",@'飛-u mfJ yN%G8X@:F=yIث%w#1JX²I[jM4Bm4ˀSk@zru:0$<0aWX^ZwbS%';lo˨([7D 'U."{M\rscCԉFhpd$L鶬<@h6q:(fEPJb,y( P֎<٬"T 9Co@/)x PЊLt:M %GSge\'V/3,]9^ 8`*28rEvX[뜧ֳXӖQKVXkNGJhFA0K}ZxOk=>^+@@dN5~3|M2;B->v$ ~4=b .P;g+bP 0O[DK.]@,̫I$'N[lM7!Y,St|eȘ@ۅ?~ESg9FޙoR=BUOf~FSOv!Sӂ'Q瘑0@|AkM-W B '(ʂwլ^5Wo<'J;rW@3\/g˼y { >[<D-(*&^xDŽ=lJsQ*CrDh/ 7 -t78tGzʑTbt?a!q qo5 ʃmP ;KP42%Rn~.|.Ks8'o脅Bt@RӸjbȅ^Xf"KgvKx DR|V,f8P!ZPb!@ L00<Nn;R|Rf L5KKs\%>dJO›s(odd:d""S"X9O\4/bH2DEP XySYW*نO1^GMؿ(L>(5}c3GN%/ܕ3sʅs\@o<7 α9Xb6JHz y&9I[@噎evgudE_ h]Ks8h(1I_Ź(}&ܖa *lAF?ܽ*o<ls w۴ļ[' /jl- dBv-Y'uĿF %tDcR~M+[MUkhF8-Z18CڑZI`yа70yT1lLgBpSV 5/A ፲؉WH!1i)7 M1w2ǭh t_g*E(iCp>ccgp+ AOL@F2ҷ$ە?R'!1PfOK7~:寊j \O;<&Z {N/1~O&YmCJquc lcXx} 2Hu^U?Lȇ7W+][OݵTf=TA&vSߺɮkR{F;/K7m&Rݽ[' ~Um9͇yP#ϊй7ܫb'~321"p] 3WIJqMMJ 8 iE @0x+1halG>Z.' 7$Wmuh^f>lD*'d xXi~Mw*Xrj 螿fw ձ'bwuAPYlRV*ewH{ȲĀj {=[G "9[D #)|~OD8-Ec*h>|Aso˄>{ 6wV1/Q*ϑ&{kSu8&GAkF(aɌe( ZNDZC"Xn?D"}3|n04b˪ Cϊ)7 ?aW=QXTfT}ȥm o)'I~qvtSE<u*˔ `/Xf%7Y;; >q_ХQ?)n`K\޻7j:z~u+}!_VVrmyKͻ;ʨTNʽؔyr×}>xpC12X!DjQH pѿ7j7bh ) .*a铪Q\h;me>GuZmb-l:َ+ρx㫳< uL^щJHČYK nXR -AN:EȓvΟ eցKx&c+>U0%yRB] '̊:W1i;ꝥxv^ #e-U.QwE2Da^s$硎 dcྷ=)TX={V[ՊFo'.(V]%4*x6ރyi>OzO>̫8'$V(D;Fav&_~Ԍe68!2,ܮy=㭫Xv r:*d ]=ŰI,lfDB@jD . lB)ۘ;w;] vksݶK0r3v۱hP'iX1Q*[;a[^2qzfB+9 BkQ[ŀ7Dnd$s3 /<-LG"tkGk r3vzpiL  V$G.9;J..u o)8t'Ejtvp*D^+yCvT 4mm"^(2 0w]uBò*pXNQSJ˼_H?/;'ݝ ~8E#/JȘbϵ!L?6!B&`9`,WMSAgiB:^x0(#o{-)6I3̵xaqDD׳%[]IUө\7"nDKUhZh؝R!1LS2LJd)J+js]4fd+kl]Di2VϥŚ^LkSދv !]ߪWDTMcD tU}hGOqZSoCHH:4x)ʄmYhpAqͤH0d}+yAXF#֠k1DM G\R+TptU ZOz:7jA̚W #7ZcnDz;t8AhnC"[;/hԲ*xw8ԣQ-њBe؋kkS&@շpI[[`qw/hT{A>ؠ qp0sZ![rƠM\ίK||`7*qMO%;~r2Yhx& ad%͉.z5-lRb55xlXpd|"oZ52qHS_ڧ'#R}"\*.p%ȹ8˔9-&ˏdSˢK1B^EO E'jQQ61ޱ|ã Tٯ& NABmh <}9 * qDTBnP3JB9ZhMGᎀZċ'ԓwdfk8 KZ 6 ,T,ف.qc0N\k@0m0l]k !Yw8VVx=&nffp׾_|ԛM$ͺΘ6؁4+&Vx+^鍏U-aS,d]¶JhDDcy>=jY-ϱ8Q<׌G[-ER'Q)`CTr[qe$0AtAW'ݚzI=:&SfDbl q:t5 0uS$e4?C[ntj*.!ō@ Cn]D`8*Cx"Oq8Œc|@pBEz1f8k [ʀg`}V{ldIM^kL>KF6^*2sWGd#E&z[ϱ3aiAh72R0`sJsC]h3 %R˕ha0A Sv薶zy}MvMz8`pW-'y"{VĽu`%Ÿ"| ojh?M Uj%C:(Ž@JNN 7 S9G 3pP/E‚v'CU!Ħ;P$I/B=ƪxy.2T1}(?_?@aӼA%cͦc4khI6m( /7 {% <dg`;9q>,持6ibu}!qZ]w$n^/ lњ"ϴȶ7MeM#b/@,jzik悜X P ͐*CɀC^1ƨa2աӎ=,vFy dP1 šVӾ8SY0_` 3Ll7Sǡ0/ @TL0!I'oҘžiw !^\L,Ռ cVHu6& S{]E,X͜hd,pI\O.,}} I';_qi\ bíӓ8 2fӑǍIF+g'ms-fk.c/L" fJ#]5s]V6~bȿn@ʆE@S-pVSZ0ds CF>/(ѽ]*q[K9@i‚j-LC轜ˣ-HClÀZPǛ-k1 IfT5'4gci*QCh ⵿y__~rX&/ъnWg{)[B^Z/C/8 jq |Zo6t0M,(TfCz><g }<傲Ât@tј55Zj'pN{RlTr0AŲ/ z1䑝odZQ7˞a>7bZN5Y Uz>ijds}*W>M2!`x^qPwk*D!:`TlACnw{m@l$ҥqR%0 8!юocAt8R>Fe؛}Mn '3d.~nuӆH~ZC?kE,.yiZ 2u]Ή6k^rZ糂p})ܲcSL&GYn~%-v5>?IX\v\c`mBNۅ/PIYOv7ahU7j5حC+g|P*#::,bhrp9O.,v/=Yܥ!^==ؙ\γՆU2m#lSR_kaسZxxtΔɍ3!Go).]ZmuɅ5 ћ!!U =ߠ(adہso[JqLcp4@y9: طj8P׌(u[I p(;jWݍsE9-zShF{{bT޸hj#l (㯘~*d%0k,I <*o<_3@ }zsS*i0 vDdr@+ 73j#X䱀p~t[춟xK Ň1>s b^y<1H^"@\O$$:8aTf['7||O23< 6ɥA8ils[Iw ϴ "LȐYmg:\C;Y,`Ny8%O\ cpȢaMD:SъE G զV1:|D <w"a#>C-ί \I@H.6b\V'RD yB'HG5~fl b{wо c9q 62AUtYo2ttN܉0K|N{ʼb?Xm,Rd!Z%Z5 m02{o(j ̚O+ l_uyGa,`hԷffzsU#=ٚXXӏMTO .ڴ*dlU3-&JPl7u.Mr2"9@u$]< xoahwЇ82+jbf-g-R|pUe+-Ldr0;V߇t7S.TVRGjC#bwk*VZamQă?mS.^@Ǜ$mGQ/׏Ed|ߐ=RϻXr:"x.J~C-^9M0= uj#}ߒ{ ߊnA륡7/m_bJcˊvǃeHN,:Nsפ\ omsE%/LO V5 ( a7>+? 6xXlv>hV*=p߭pfV[meC}j] Y_ DV` X m}F\![^gG!t!µ(,V)dK- JEJC4К"x&kt[GiSb=&ge |7*``$H];B(FE#G@蘓۲DX>&_MXkZlQbL[`bsȳ  1Pw>)9yXGW|&Ogp{$еzܔ%;1FYty^v#$_Xb}y+74 FW<3(`k pMYlc6>8ŪO'Hu,I@؄хaOwh11;ȽXY]|CJκy쌲Y\#*&W>-ۚA4%rAcKnanzHʆ i%j%V"!n;,j/K$)A x%ů,2n"eCG r<;zroo8lwܶh'Z Y`c h2@d/#M6w* J^/r콗*Ɂy_>YZ2*z T 0%%9@?2?iHQj;*m 3-rKF eV9PDS2#0I8Gt`_sx¤5e"Uo T ?7<;<;nzPԍ㑘Y8I؛&9{ooԗ=jwl7BAolǁ>,  Pq& =qUAVNNڭEǚ "ܿExrD#b$r/m(exJ)bz.#UC"l`\}yzOds|ЫڪQTgV 55Ti1,\tj Fu=bbFNb%?^Bs\ԟ:8rUo ѻ(8!MR}NGV}Pt SdP)5ʱ8!}-Q' m$yX@8WL@ެLZCn 5E n0me'jy3p +{NZ%u*)rc{'I%=b$%nEGcr5(D mKV szey ȭ֊ R7phM.d*nZ(6;0ʠ[Vwv,q+j9%:pJ[4 RO0<:s#fvh6B~v|FQčAr">"~V*B [|xC?&ۓ 7-n4X_ )K/ R̄<4$;RПr%aB{S<[WarulwYmc󦤅iBi-5UfKW&܉=kEr .2:)j/1n"u>E FѲrBZntTU$_^%ƶ7Z8Rd^rn,m e3$-D8r-n0MrtC91@g:=0ʫ7v|:%]X~7*> $tKCF.Nmwc!<=X$h%ʺ("&^کjs|quy(VV ^zUK rgUo7H^}1d/>ڊ&Q+՟$'s4SӛP"+Θ'-SŽ0{ /z˻lj7xXc: ms(Z qk_o1 ݼiHp#IEJlҪ-Ƽ{c76~d{s2@ǎX'˶&u+]7*H~mNk0TWg6sqn཰k9q)'i`=kƦۏ"X%g848ShB~={`k4a#kJFE~{1%DBx`#t41M{Ua,RZg>fpiZin3Wւ \6+}5>>}i|(}1xT}`-+`Ef*4fL2UMuݱJ"#O z837dp5) hτso#FbE R\>|(N oWfsvrU|5&>l1W='^<|ɢC9]w%rH#(`>2:xPJqhoV[$0"/w*9aO]pm{ы+2X:@|qbq=|@Ak>]nݗ>cTX Y4;aAP*K3}s֨~LoKTDړ{ֶۈꦸ߮iByGo>Iix)_;LE wS!B [Ps_O U&ڗt z2~R_RAF?VfM`y}]#8 9 a6~^l¢t`Y7Y&HƢ#>Gvm8 z B;Y<"xI9ĭ҂VM]0nJ.@1k$ZWMXJXA:z%RЩC]++Rw@,bh2UO_>\8Cwmxǒ"tFu ְ̘Ɖ72+AN{C\85xsa Ɩ4 8ǂ|0,㳈WCJhPJRn[՜l{[ҩ G^aB>*{.Py17"8L! 92sDa$w'‹9\X!-[-{ᝢެ` T##"7.-͈]7(9wFR!MD@мGb@L52`*Eڅ1T//65PfŃF(ߕhJ{P#'Gl? x%FJV--W޼TX4gKAU[&"Gxh5x {jծxaC!+*K7:q_π[5'Mo`3X0 Ӌ:)xl *n5#Lcؒi Qz Z$ йfžO={<΀ep33˜b/ڜ{T|xBMJLHVvɭ#޺*Y*d-ݚq/6x"pF8$w"[q@e>KfEe+Ժ9zu;uDaa'Qd tׯXp}܊JO<NC6W{g"Jc-',j"2vlxg"t2P{԰7EF*,G +PJ0~4Z5 8P~z+LAgnosHV&5hbyr$j'O۝ 6TjTf5(R %zW 'Q6}-Ȝ84DzyjX|~ 1pa b1CUCd rClQLvWj+9 5d[V\͡gEgo_=l~TkQ5Zu;J^@)Rd\̙s0bƙxpc]1Ȓ%⨝WJZڊT1v ц8SߕjzQ_$Y֓ %vYIk4zoǸ,4O}4"04LË4 [6fB0+&̷:`['JO^yAyXOCx-$.PF]%TCwUC>Bgݑz]^RK-*Uhb:#+y+4iF+x*鄛\, %h,iG5?y . T`W'pvp\G˅gb'_a]`8ϬS Z S" = U#Wuy ^@ "?dI6L:Ƣ93DF gmng&moќ'6, *(15g_ 0xyk`<5*6#u @bT/h\~3Н^?:`t(lyis8pC ,o lP$2!,Qer3Hc9qje\GJ[ƔDPۥpn}:E>u.تw+[0pΞsʶ;U -pK73NO4[Z{tx}G,dqGÀ,5hx1?kp=X^qxqSƂP(E[lc(:WTm:XDcq,~`y]4T~YkĆx0g: Ջ:Gu6ߜ+F+um`[FxE` 7oAQްж9^d yO^tPL)Jqg.EE9b:VoPWev, ~IVaC? Vftm|ŀ”^mv2̆?!t^ލM{<^T*d&zMaP}g!M.f\  WMk#Zf9 :~Zhj'whI gMړA(3sҿExYfS ?i~zZCNTy2;삇RPg: .ځ&4RVF<"o&QSˮڴRD @'BELo@s^vQfeAk|MqjK;"KHYg!fLP`p@ƗP^ 8%<J,Y#9\FFh6e找)gFJ3R:࿨߆J[RGR!K@+ ""^.8(_u7̽\]F'3B3AN>OFdzywfzf] \م6Kfy@ǕATrAy c[=_hhFvQ- 52K1:Lzb*9 l+ТLՂ0lk5GT)C7 3[Eur49y󦻙yI5 k' 3gMN R4|D|fbP?i ?b ctR7okeE58Y!3n~bZOl}hԗٔQ|N\_o>OĜ-}D> l& eE!("ZQꏑYݫ4u'AK<'mL=i訏tlkY"//#KsFg:OF؆CބXM/#߭r.*>2yߤ:nH+CDT<rts{:>HJAdsF(N!+@CƯNa H(V(rT3Bd~];+@PLT[+ ;X8֨ GEV0:5ZDoy+wAs T-f{滄5sڲ "Xos+ <ќf^Lun[C'/y/V׾o"[0~EZb&3=nz%' ɸ+ůmwdWUfwF+[èJ.mR.7k=F+N N 5m7lB"9c<ъdMP}GCmMUSgY d-A2o+TM8bkhFs$5Ogk/̼6`YΈ:yGtzia*aRDuc¤;W"W\( h_|zӉe >kJ\FX;MnN4V5С\b~e%$Uu/n]i3ٛSE{H9Alf;]m@ŐL8\la7!`u㋁>~2)t`hZH2gU-']Mú>QYU^,q^)RIb;w+tZJ7+K3+NgGBz"zb* oCK_a8wPzFb;`*_/-CS@] /Fթx+"l%7*@H8r}pF~Ҝ_{QX%[f. zشeò{3LK:V8F8EM)"9<Ș ~AiA?]86\,11]Zdb,iE 'qmh=s?źg{^|HMêAZ&P;tTd#6<.}u?Q#楆 BzfjY>%Mn% *.rz>GǩXAԳد'XYJXR^|=*% `&:%e-3O@K={ERgքe39)c'߫1: վiT_} &9;ߖ mR܌9Ybi;8IąO3Sކp8x~q${2/m@] ?tRS(H&Y'Rc]Q}Ot1\6e$:)#d"nf/,hȨC.<,A*bK 6 0E[-)QF{P텨1eXR"3J-զ`eh uF#8 gnX;0N%i9 n(>Y48`'Fe[]$iuc_tkpi#ϬL.$ja(ld]mA LEisǙ˕ԐHQD8+BWl98a@R?@#qh1Kvwjsn<+D 9ckԢ%E!tydT/YޖwjZ zX݉֌4uzq_~9t(oM$C]Z s Ĕ/ zW&+1kC.pup~BaBy P؄]m]N1֡LS Y7$UZ0oK뾉Gtg>^tA2@ߝ$Lr{m e/0weGi}2w(P~eiɢ3C'c$Evo_U[YA__J =xUݸ }S=!3"pԭ`8pK_۬$؞q>}Ŗ”7+ LtۧaH}1ܪ w;O2h8yIa]ܒfTL'1uW<Jׄ 7],vx/})s9%i~9؇CEN?&Z$RBfǼ*{88஡U #,pIC< kpQjԇ7 N8ez t) bjY(jmJŤ?ܰ0*`25JPˑynCF'vU`L9_ġ&ل4.\{5T榭nmTŽh\MSIjMv oB?% *y.s[=}7<C@۱qVY@ ִƀY:Vg b԰ozr~cX[-6i- lqo r+ۘsm8ڼeϑ_F̏+koh~ )+&q:Q-̌[ydxP:$6& `7|eR^\~.-¥ #>BM1 i5҆*\NV g*s߷E"\rI~p#62SăxjO¶p.0vFN&> T+ZwZ 4t ԶN5d"z&jv8Ű6vՒ$LoQIXwdԳUSHS%0i?dLoN{&}}eD0&0+xn+v Qd:ܝpZ% dkؑ4ŠAUw].&{P-n>7jxutHn}&iIfbwzhH&sr tԋ:xYpSЋl߄3e vtO?=-ޥy9'Z%&1mŠFD#xcGУ\@}͈Xnao4ygW:IkFޭ_d٤댬{L^Ts1L׻߭ "834˃a培3>νT N56PL[-szمH̔ ypXgt)|]jI$˥stךT;_ >HEhl$MwmTAU4ݸcg1'zXm̑2,"n}V?JO 95>DK> gOat7P#B%~Ў}Al"N脒^$XzA/}"ؠ\uBR!`0k/Fs|I]KSԯ-S۠h`gC.SQ^RAu`|N}:غ) J'HI&t2!|p/ ~hl-17!4`{ѭgfJCgQ 3S9$p 4uhϝ {!} )[4®,Up͵t B2“ ##C炣c}~ S=+[W@:l[fYj EdH%4-fFںO[jwk` 7&a~wF6O|9k*򏣩zө-^ʨ<9eŒcl@ÄcoJr^q(YhbtӮ,sGv3_l)f¼rfvh?Q |hѨPs e/;B-`ą'mIJv;~Caiws֒!Ji cD`|;٬Jӱ6$W)cE˨Llut[Map36Eꍫ:S0)9KzS/|QR2G.ۢtX ^!"R((«)$̝ܟ#BX+|?wJnĄb®*=[s۠h(GVYlot5u!7A2l$gB'=#_Tfn%_Th<q榾:~cAN#uKמ%~q-EF6z OBK;;@Z2EPgX3l'L_&hy Z8x%,)K\2'I&40o `}}J^0/)Nx@*`T\reNC\[&eot޽0*KdёGl2YXƥ@ 䞥FDW~oVž-^fF 'tTSL,DWd6I*1x@yk#$VJ[LT'B,k ucO GG,;ќO'zM@)&5ׁkД*z1ӥ7K[Js',t۷UYE H"Sa<1ϋ|ծϸ ĕI Z+i*W~ tn<9]~ćp߹Y2j1'ߪs>SJ_DWRm5QжDHMv Y!־{%i|( '{_Tѐ~?ce"& P(ٱ!%2'RO;bOn3\G3Oد} GdVPl K0v& ,ʽ'Ğ $); 4JJ}ߐN&!Vģt SZ(IA0zNoȺ}. V Dٓ0hIUA{ [NNJɆ_Xļsi]!IR;=R_j4ٍ<9c /Kq[Fwcϼ!RK( p.E`~XxߛɯE2XT>}I-@kwq <')!Eq_: x Ki%w{'"t(_ŧC!6.;6&b;?۳uWn%F *mm›cTD!F}Y g?:j/]9@x)H5tRvamj M;X` "{k0fWO>ʝ9By*h/>6_px҂X^>mAaQbru8 "8U"KRIa^ȱ&ײFBM'zrD2zu/;>q>)<׾%.(MGz7dUn4A-aG;DxE(\N|$?6̄i'1T9>ƞ`Yhyo yd6ɈJq]jS?z2925,u܊[F_e2\=xT*=.Gy`HÐ۶/X5?ܧoMճzbpKjV3MU;֋EKa\)yz\3lohWѫoWFřK3YB@DA 4+Y|2|ƎE4 Xc.)]Y}G GĂ"|!#I_cbegjm:W5֒( Z\sSqy9'?Hxx%%@2+㡁'4볍5r8_ǟu{S%ƒ b*o #ſ{I[L&9,̝dRG@:=iUBEs˚…$ #K @9ʭ03X,Ylߦ~UO ZzyZqo Gʟ ?W<3:`s bEiI8p21B^V MC/7%_t2 ;yײZ:l]hF<:bD~K襈o$^akQW|㌁ 7ɯK ͖}cp@Յ  gq7FR$KT%EQ GR8ʞB=:R ymFՕ0ɞ]I˲X"tJ@E."yj;kQ**ե4Cc MGF(m% u#/ID|ާpT*Nƀ! 7hN/$CܝS G=apR)%G^irҁQK8T1s*3V98&,@K")1wƨH2"k=j*}V[cT4 fpV"a}F4Ii yT*! ͑la8!\M|+\Q+hF(#KkĜ: zԦڕ[~"mާɬSRU=\0MSĄISB ,Eʫ}ii`g^`BD"șmHz~AP6o=(8_cW8?[l.ŨP@߽6U!Aϋ6=Ib,(c!;́}!(+)Ў=H4JU;;D+9.4%v+ zccy&nκ|4ԓ".rEL3븭DֶQ%bnM*F+R `['Cx('~  TIqM5gHmT.., ei`%1BJm@2t@GeWo HZH"5DNLk|l&=aĕfB0I*QtOȺm)iOCtVnlחL~XBK?Nj/ fip}&W'*~ŷ\:MX8QgQhDڛh)vETٽ6AT~ա.gJa9- |X86( "eCvO7[eՆ?a9ʲ." _?C+ց.qaoܯYYC<{Dms Y"Ϸ; 7f@g-!4")+] W=sJ`}ћ50ΆR2py4Hrr륶yLwE㕘jXĹU*рJgҲ(YtC-)-A;8jX=73`;QݣK(-/Cbmi(qs01:Ya*E3\@O7F򥇕 0Hc!奛iva, J7ssx1fo+*Z#*_@O;ߺd<#J8x+>$yR1P>Dcr[؞]s!pŪ'iT*RIy3@nG3CId +eqr7*Sa+,*gpKӻ¹ޫxzI4g5$FDi#x?e]?+&h }xH-2v! JC@³ 76li>e+v3w 66bIzM:v^ c?j s‰l+g I`AREO{A &gCY/f7SBBg]6!4X:S #`EȉJZ)S)M=h4Q%꛷֩skL) )emJb{κKecZDmϝyƃGLlU@ ?bت<<.EKk:$<#U&j!5-/Hq4:vz,ZkfDBlSp<^ځq5%$l\;88Л9~']3vd]^ԤAVa3aIGϔGv[[[:OL&/eir9Y"5~ξm6qBF~"^OB -F{,vDsâ'4#ídA؂Qj-xP_5esPx]O.g"AT2쬁g&)Ҙ\MyD`YQV+}=eR|t̫gCe+Ae@4d(!JNf.G-WD+e(M?jav9Z0oT- 4ť <؃_+Z}馨Jr-͔Ɠ$-ue{?%yxG)yU Ppbj3%:g E xQ{מʃ7Ol[OEᝯ0&7O.0j!Y=*UsD|,TyU|ó9wע|`o૒])z`1%7=R !'i 餙|Ks1ٟ"2'4{_бLW^ioY n KS 7 ݚ9LKG.vJ(t#ؓSM{9~SO5 d0x=6QϤ] S8q;3.:m^wWv}ƉTLZSt2'kVLH,$x'mREEƝ3U!(k\1wz u$ӑv&FwC|3Yϵ4z" sX#yB0s%MhjIÈf:PD `h { i85'fgs.OD6/ۢj_^l1lE`UEcA3iD* +)bG}j 3+$J-@tLmAw aK+֧_~x w.Oa`\7)2dehnγd9ҜJj S'` Sc6M}b?K<7SIڝ-sP;7e{t^11V&ڔY=WPgni&_įalh $!yDkpΨKCJ%T/6ʋ,'z=@HZSG 0;+&?#q5/7zPtJ5O@B;1ًq y*x\Q+5^i\I&ʊ+ЅQ'E|SA` >W%-$~o|KHc018A2S"aK+\h|b>_LnO<|cߗ9!BdGW,\<DO*gfI}k Pe,L@PBhٔPhfZ݊ la7Qn/gu6gv5:vQlyu}=S' Lϼ6Kd%ѲNbgb<.w28^9HtL31G)_rE9y|es@6Yi@ŷ~TY8qL\V0 =.^̍E'cRyf }E}<Yy1Y`\qszK-𾖞ZA=9dtdA|8>@oKq( }P@+2 CR@47 Sݮmy=tVQBB'L͢Nb` zn: u`^e1vSmqn=՝ &ńDF4HfMC%cu h oT4;0)A%LJ5͕άo2,al\ (_ҿ_GAbۈ  ғ~dɐJ+<{ %"~|"s)ft>?x?̞"/ K"utp/-\wH!?Y#q0OlO~|Fy?J5o~а]%5 ;\>r#GD-1wwu鍃ݒPBa lLٱJ.{ЋYOuO˔j5P4'ԝtJ3cy<Ϭn\)]X٨mdž>xz զ\fLJܬL:G &&&YPUAPݿ0`yvi>@$O?yDȊpB;HOlzZhTߨUo|:\[VQ`o}=rMدtAf'ݕNq@" 9ߵp*nҚH-uw{˜܄豗<%Ie?` ,-;ğR'w9gH_dzC(zmwٗf"OB߉@tdAX]韃u ,*7@ryPZ"` [&wpsF i6ڌ$#BB)Nr*ưBHo\7ژI9.$덄c,&g؂#4ko\;O9B.Q1#AM3P.GJ+%ƵihdF`//39TxV[v"c18w,h![*|m=jDRQ^ @Y>H Wmz^\}:]`2䂚,KU;:mvwo"$S02P aEdA9M ~w3# Jxs n3APdz:d 2qDpc$럴*[x/vxHc?m@A|pXsHe rFq_ U<$kP;_{}sxMcuA|s $2"`(D!g 3 vG{a]$~v6ywE#}26=if Vm{:qCO-S^8ef-B[AI<׾t4tT=<@Q]t&wՋ^2?{:BwŠA"+tAzi.[lٌŨ']Bo|\Gtʺ 3db#) b!Hab_Hp_/RU0Ob'j3w1 ^7\R~k_6 Bq): t&]w+)7 r g4$-c.r1R.͍d=)& v5 (+.nJ[1= }6ʓm! ȡ|Muy {. F*k7V'QeCxB)4 fq`G ~VnLЛ)(x) #xdKxf_.p jB>KgթzKx`6*KZ;h2m>?|ò>7|ף! }~ijs jX8\50`eKabVP`&@P X"XcIo#.I޿k v.,܇IYVigJa8EAiH0?&C3v-1I&ٵ AEt \dn;Q)ǸLS/iÍ9t'Gt4A \.ciyV0j=p9`\cxFmBqUx{8c]Ƶ%)geS# BE\s7/CX3<*2x/V| BXb Dc%,pt;.p9 ZgIՀtلkX,4FqUg&N \hR,1kg] lh RrH4k{iˤg1 -ʹ%/ ;V[-~*ꁂ XA/!cd;nz||Yi;em ?Y蹋㓦V]ܳ}GY=ʂ. gƒ! d$dyz_幷bAg0"$tٲ6 ԙ;EܨBs)#1Lox-gxQs3\Ukܾ)5n/`n ?A QR~<6Kzi!T7U:xh]qz&]_n)ja6چv+̀*(OIC)+` rX?2u<`jY,Wo\^l۫<ԎF;B)W)q_h=a-s9vTG.ͶgQy,Xb-qC| (EO/40fߖ)2 YbBPMHr1ۄqIռfF0=~G(ş--VKm0Sb'^w4j-=VхzGپSÊ,y%p7! Tbo,nJzv8Mx}%"ġ;77tW̖YF|-K[I'f(nfGC( lWN9;B`nȚ*g*^ZS:8jdBKm j`7X{DRH'U:Ô+esYA w&,W &G&SEikbMhC.j$'"lS]ᴥW/q}+dG,_ow!|WL[%! ;vk{;ZԜ8 ɼj-$Al3L&Ҟ5w1n'1(pw嗧:JLņ%ۭPWb]romF8hCͰ2. e= Y$@OxLJl`ddOvIZ@!_mMa]òPih;f߈YiX̄҆domI+}􌡕Tt9D$t4c"ozGԯdɔk4r>8{ˢZ'T>g`[d?܂Bw|Yv<=SX9dQjLOS&CfQv6)-[Gg/RYRT$^U?R7yBwWnnI֪Ca [u!Vqqlߐݭ{l2764~D@cԲ59D' cGu"::Es^UX 9;phe@rr qA#fCͫeIg)<]I Ʈ(E7Cn-/JcdTᅞ뫜V' rYJ7B>Ú%AٜFlWxHgK~hyg5[~:W))rrwUe5i~4??'p|[TU>(eC Vױש6Yw/@ųv쥌7xMwX!v [b_bzn~S4,1pO8 7oM ?|Xj "c;MVZUx[ ,dXED?/Lݻ\-GOqui殉Cv)>~]$cRoJ~i0$L_^26ɳ]$4y^Ra*ݐѭʜ 11B3(rPsȫ}DޢxWN8 dXԞ۾{/k+͗\1oɢ,_+qeuAq>iҶ<rkuG⻢OSnKʒ2׮Q= Lș .^$㌯蓊8!H hŹfA5p؋L>)aCWxs~GE nn5 m?e ߙ(pゎ߈JA X5?QI y}fjU)Z \ )W,pTĜywľKхnna[|(ZӤhoN>~旗BJ|9٣YǺl~V,ko5ؓ?ӹ߈ Bi&닩葅q_b}g/$f鰌rdD ޚXב!i1e+z|L' da[-x `xV8H{ !|~92x;Cjex=b> iK Mp o3O]:n9ܹ e-]~3qJxD06?59-b;nNd[DjHH0*|tot͓4 r}t2?725$0jvׯmf+(]HS9%d-A-cV Z:$ I[&Ip  !fhO+ϏYzClYz xm808}LYp5?0UzrV̿ r*HY$Y>NJ+ Arֺɑ=U5vSR$a$P]=/n'{AҒR+kb^ƷWb٤-gxfBt8FS&[lnjlHw[L-ݢ[DO܎I&fꅘ! 1ª~6O%N0,EG8vl43\-3ާv21E&ݾ#_zVBF<i>*¯xp5[;,;lCBET{cS6ʒ'N>)KLuv]|P5]|Mou%Qk n#Xݦ&) :۱]68C93]X?_P*7>] ]X js*d\@/(6r2a%g~݈믢)Z-xN6bKThpBGgEқګf,܉,yVFC" BXq ,%#L7  :cy&ئ]~67\oD\Uְ H맙7U1kT֑w-Th$bNߥycs _6QkZ@Pݒ;Yѵœ@mNʱhpOD00D0nVؐF 6 D:r}GDOpB+(ͿY{+հuʯΉO0c{:Us>lMx=.lr٩tlhGG,N;J"FQd;]5cb @l"mG~]7@* Ҥ(?zL$mm#.=ni:[!dRA3+:J>+ $;&|MRc\{+ߕE{sPeCHeh,v~Ԙw  ҕB41UoRTT%0qUq{L/Ӫ <D=>ajF,h 1kVܝvS6hQDi$ IV?mpG5cnor5 h5j.JYwD+ܪԎӈ>|BF=t]Mn&'m  NyE儘齨˦?opO?Q*^/Bq&*&h򝦊b%) oss))tM%XZ'S8B>Xo'@1_#M}YOwn`!wRN:ucIVÇgIwRn&qIPe D^JEY"N p~\q9VQŜ[+;v~K!^Pڤo>v*I6k=5&}a-SR$r?Wg@l3E!}%]Ž-=DA)#~`KB#]lp>f3ed]X4I,[[!/zא#hL?k4Dv>qy3,AS=M> FԡV̓s.D% a3qj/w2֞0I*'<miNy׽FǕޝ+Az[R)d=tfg.Tfg=R -Pt;dbLP}X2u4ik|Fř_<1>]eϙIOf>)5rD$ټ8xp;"]|(-y*<\.(8jk Ī!2UdMruɸ?01 ^]_͓~9x=} M㰇NG>h+$g&,X\Вho47^,3`,Crw3Bƒ.yx8RWCokL'G9Nމ&Ι Oܒy&Ҝ ){RsT#3|d( r;};:q5Lz UFO>CՓyK qqJ*h >vuu2JLEI{i{ E')~Ӂm_ǚ֍=ezيəG"׆"B, Զ;DxTj*trkG1>ɑi6M\1f@ޢY^  Q$sN$&v"Z%݌|Ql_0>{/`֚CZT6 9i-C?HUȊ0ο)%i`s"^ܟi1ϓS f.Bqfg۴nmpTl Ԓ^ %QMG񣥆 +:Z?HŧevsЕs'scw _fQî;c;H^GZIt.qZJqނNF DM lelEhۖ KD]s-;8evYvJVĈ!bԂrÉI%a#41|EpN/1I4DsOւ7p^»crh`=qXk*z¨DC{S`ZrMm 2q>w}Wr[YJ^5iHe+^n hUˮw 7P)j X4;#hKI83-h*eϚCw^v Ëdtry4;k?M  G ޛ'!T\Yb%ge[h%I3I(TmレHoG (13V\. &߼ZĹGm5*H؍`_63\b r)|T'm 2?mB+ӑ,<}Ap &cOWG~35ӯӓZIgX~wH5lKλ_bѫbBK/V-.d^r{nu0fMD!k-xh2ܹ r]k>(q.f–RЉ 7qFb6 01> TJ}\QyL $Iu]amvN`Vu%+zdƖk).$J8<{Rh,gXAa/pd-p$z6c\bg(k)1{&Q.,D9E7vb6*?U}$O5ƠXv0}^7zSQI :|%\kxVQuMLNZ8//bP"14ΚE}I'bBL|2="VJuGkb*PG㡽%PPZrgN\s.A߷gkMU^|2) H%-.6IPrbm7=v )(}Np,#=,{ƀ]׵aTn(La!TIְ#5#_|q7j5E et=c7R/-KA9}y\ky\>%'5dzZ.W #G(pq+C?A=~oqVN?\UbCXoʈbaoz#-VC7rh?A"Hj)oȓ%Nž* orp*] $f~[d+W1(deMmS4@$zRȒdOIRȠHnV5KgAl<Z$_KO\=Q  S5L `3o+ $eA)qްlʏ[5HUPb^JWZ'GUe)M2տ4&I2$ ~S,1k@ZUC&}7$3[ɍ&hhoRs)IK0> qq0TMw-M. m VU AK ?\[:4EIy/}8Hk1=W }.b ݷ;S.ګ.ZэBj؃ke+sƯ{%g h($w,2;øpOtTJȋ6hID_Q˴CJ>XVKrP{LxzyxbqaŲ&"(hߚ2f_44dKB6=T({%V>ld=@W!@?Dy|5#_U-'s¥0= c+{FzfK_u(g0NE9Xe3혲훟uմ^4L=G@<`6~l_܎j'*3cxޝ:W^ {53t\TX24Fio] |N,GSD6 $CE-3]7 k*ucNCC,0`p*H{0'6Y=Ƀ\Q1Dx;Ļ(6H/tFC4l/0]Q"݂ {UųrxmJ۩rd҄t-)Q}+!R?/Ɗ!(H)=/>uBC8~>_,q1Ӻi*+Vނ;8;`|{2<_E^JkWKD =/ {b9-{7SX)ьc\n+v&A`6mr0eҠK/!vpU.G f#(j4.;c޵+j}׽W[Zij%uԕpG~ByzC/b $$6Xl5#]?YeZHlAqJknȄw3;c[둙qHki]ZG*Ye X7TmX{ٮV%.~l@)S9P|*]4*H֝>gEm]9_+1OՎgj$}1S^1=!ؔ]6֧{{~ubRgdc1.J/fw8^ P'@_uEFuĠS?YY[?vOXSfmYRĢ(sdXCk`7d 5`wi{_$vUd- [i s޻HRbAP\n),\P8=K {:x3~v(7r~y]2vPBiFiU(JtQ}21$yQUJ͞XŌRƇOpF "N>H,}|#~ƾqYaF}l$U{cXo9on٤Bc>{A%w7'ńl4 zPy+ y0Ig86CtbX׍5Af ~ j]PT("*:k4ݖ;[؛8%_1|TD T0N>>lϏcL7ɥ|2F(q_o&w~FI,N8GS]NgOj; t0ma\huO];Wh7|z̡> Ş[o`JZPc}JKwUUτp)qCzDeO_J~(Ԉm7nmɄvz17 9qYXU ]40a*#QMR?MUdSd-&@sV5n;\ =qϓ?]30|֤_/2TwW\h])T] P*$s00>kGGl{ \Vw˺_Mo 6Œ]A I~/[[WV7s5AJt>@5^cUER,PrީsaF{ ] i.>+[K;!a_yITe5 IT5*էqRHaR+g>e|3\;[G=e*O~ Vq+鈔B o9&LvFy)Jj9GW=vN1E>~Ll&,ԉ"7!R\EǑ]^ݯfCvUە;k(/%\M,2Zɍ5RkmGVVhPiW=0j[pU{I>.RMn&Z.ihQ7ISvƕ5 #6yqfY -gXeai^MYPh m>)\hH]\H^zBj'WՄbd9ugHxb31DߟnZ-ů,KV"m~ KmCo13GJVt1!]$E|o2twKE璏@h; :1>iƏI4O4Ux?>}rE LB: &ݩ7dmG!-x=߽b8q&#Z,+4G WQvfr)D˛C_)}4jje/4[xˤ~\Ej 8L2)7EUuSSܘ R迤ALk~QYoЯ8-Wv"ξ]Irx S|Lg:gtGf_;y` ڢvsZJ {Yip]W-m%if__DZD/AoS{]J9Ǥx6wP8&6߾YQR)/ U|RZR4-B.rM5NA;wҼ+zOFIrAͩ,G&ޕsmՈp`Hud64Mfc`t6@#`W$Ij@ ud>'HZ v^adIkB`rvD ;0TE[.ۀtp/䢫>(Y f.gB,mTMgv SX2C/uTn֏\ͶfvEFzDF e5L~`\ϫN;pUs*% 3FHm#_ZadXɁ(@  -&<;A1s 7H5XNETJUUVc3p-XC4+@[r[XI @KݫJA)ϢGBhA\1 nq<ˋ !;N:}:;/F]4$3+sW,JjyYO#י}0rp4yfeVwP5Z0d'gĖYaǗ[T%ѵ掍35fDoWd'`,,SB}ZNTfZNvaU=rr)9woZ0fRj=E;ׇ x{o3`\Zf[`,?|-,QS0 ׌a\- ȃǁ{d#YUyl 8Iv83Hhu.Wq\N 6HۃtQZ)kϔ!Uz eAuI7?rd *oYAsrUhm!:_x}R!om:(rl5J#]]&տ-bOH+_ 4фu.B+BǗp8x֜Jvno@LS L+tw౫o7r$JWذ!.$Hht ʚ4A",iXh}0%~}3:c{-o9qO <(.oqoO-f 1*Gc퇺䴪}EoYK Ω  }6?@-9İvlC?"3%Ov+o ߮(K ]XKU&"%˔[8?%?E80]PɡQN!QQgV_fR!PP k$nFvuSFOa; ˯*yVYgh/ӓ|;q/? AϓX  ٘Z] -ߖ;,dљ݂>+^V?ZO5<1F#TSTӥihsXGq *űz#et`/0?},/Xfj)G[0tt Q+ZFaTۦx)SA2}ښ|BzĶ/?f'G%~]?FPĚm*pYuVD1"jFπbBKX uI\, o]w@1adtS}=N&rU=S[]FXp [\|nq8A BM:q=3TzİEPxP ~=Z(1Z FleU4V[_jM31pU!T \ݴ}G-4hyDդ+YҤ@$m/zyLopaCCe xH|-*m+y11}šATS\1?,bٖD~B sYt!z}D[-I k*6-̣+]BI3D7-ێC`vZd1AHϧ#Uw\+DM[JAg r%bR74k-jҟ ]ƍSK JҰ]MYkqJ 3Skh2ǃsC{ɖDg#AH@aÜVMzY&)\0Oi =XFma(BrX􈻀麲3ܚjpP0To{5'L:Ne=mTqh;\JcJf$^xVTYic\/!Bm dJ !qcR,Z8$0|ӕm q!֨H$Fv aeAvgAG0tp-E 0} #qp?)k.TƄ(#A6^yC#)q+gTtQ\ n8`<)x-\.tpKLd {.|Y 57G}_4. T3ɞ;KqMKW^=IiSX%M-9K^YN3k嵇3N-nF íX:a#*&b8'䵩Epì.c1o;cbR:1dXϹQQ %CC\G[k[-H)\%P!W6֜&\ .mJMHv ߪPQBs e:EBF]F5, )&u^p8^eku$2o,-G BdA%T?p |ZLwZim* N>8sbc EYQ :Dhd:s.&4۸V,@[gmh$+Ҟ9!  ?ۃP 5SHiL:%uy{Lh?۩r-Ԙ#ñ"2! l^\C@Z(_ׯE?pgBKhN fzLygۺ l7#D 8"w52XZ8QӍ5i{(QDkbj-YvwSnKl2e̍ۉMJzUħ2s n0/ilݷ&0WV_k&<"@2%S)'|U)WU ^e;:h"?+B9룈X xg'Z; ÀS,N*%6*)Q߬zŊd_dYTR70c>qd5OZh8!=7B}ρٲ$tnSq21Yh5@pPiAnyXAvH4P!W(H݉ xEgE$6#OTS*UOF}?Γ2ŷk.[b*Wdrԫ'/#64iC>/TQYW%L<3/m@m&=\i_ܴe,̋`^WS@Yܼ+JF& ^mR p62 =LzأtԼE $SY1eۣ ~32l⯩SNݵL&޶b #};8j%2˰ 7s36rSt5 -;nCXloJX q=/zA;` [ENAecE]-COw0Е^ОRWAU48ULfHlB9 ~v/g$<`l4<< z NvEp˵sx\F5+h523 F=$ymEn7V6VY缈1tC;q br$wNm7$VB0r#ck T5mrY3([Hb6? b) hhHYHhnD T ߞ>y v~/Kk=j?|-7}s䵥8[jؘ\B'l4p{1?|g:F88Ӹ7[E ez/} )x<؝{5B_8˞qrྴeG(mak3tXW@bRN#"w4jYZ%!hVW՜wk!O3?M b My[R3=/l+_ An[Νq=%5؈CB4Q E?J'Q a~v/@&6R?MN9M[7 | w'Mg SHv=C8}XY31-eg֩X+b]DKI+"E(%Adzt*|c+P-@̌U EZ/suҮwzȽ2b|h)4ʛ&u1J\< *vev-u蜢$t&gdGKBu06c5H4 cAb*f^r6egLC\(82᫄AvURΞz8s֬xh* v7?E2B>\"! /k5Vhhv-~m׳s/(m@1*mZ<#T4xukȉiM9Hd"g=Sف0z(Me?i*Д#l}arS3nmN FT,NXx84E.R/.rM07 C#^X=x:5f7$䄓KV^rwL zdʈ JR/R Q/?Xl zZ3.U GEJwꛑVdtM/¸DkxѓrE @Hg-'o2v;&k[\ÇWIFKi2 ZoUbso-Q9qunB1)% u2 I.s_#ߣ&ww쒝5l)ȨkqcgDK"3RsK}٠|y3_ׄu1B %}t)R*U0 Aֈk:ch4l &'~ؽP\N8aE:Nh -oH\;H­"gHo6}w8ydQfzEZ=jz*#9v~"vVԉ~,fyKH6E:0 Oِ5 7Ģ~qEVV`y+PE] 53$bd[o *c58(Dy7 l*P 5lxy# gϺ|([٪)8A];j"Y#j\P{xn(+EYREkc40 k77;>Vɢշo\hvs29C7r8.F͞!J/=:nUϏfN#ަE'Wϴ&PfBpR >VR˓y PS_fbOb&c vW$<@MML|ī:Gk) |T׈`Dɐs>">*2>Y﷉R ¸Kv̊A,jH5ZILHaP&chVUUޚ_fvєb%Gk쉯>3FB[n!/L'{ȴjZvMJ[g]NӺ=(c 2Z_Dެ|6y8́uBZ5jth\la/˟1OCmvb/X/,Z $u;=Q찒BPۤ溹|*n*>.9rBrn]<)e߯ou1 !$BH%+75ʭDj4<(LƘi RuE869Zfmgg2`TUCؾa*qisjhcVcY˕!^X3gRGe$N\l_ RWo~Jlf7L > ;phcO$Lf,l% $VJZОG2ZDV7xK,-}k9Ɩ@!Yg6/ sUAg_;cs:M|d$؜/9YIBt%bخm\Dq@!F7[=uNx k3]ˈUZ4B][R{o(9~ğtҡ2ws[`&g)nԴ Zg&RoJ8>؍)+ɋW:b:{<#x WW@ی $L4춑u''TbٺƵwVm#mҳ90zĮ-tM$4Q2A =>T(7J-,;JjBF^ O*GWUuv"/rl蛦"K.[W9P7r[/k3i.Њf[hɡ|y(CI踾Oށ6yjƩsngLj!L8lq4{&ĪN_4o07)osPC)+$d#n҈ x0t939IدL-O.~35k<#_|b#WH"..M"v9cNs^ɈiT<=Qd)bAoQ3$/ɺC'uV'>1:FnHWe!j@<[0j)9ޤj #[֋%-<*P%ً@'޸ÄVl6^~O|bZYO*G=p-T2K0Eh82S N$cA^ }݆4K:2Wң"t LyK~r 怜-P}nF2.)́MeQ&2 y(o9U;O$/cBA{l.L@kv8`9AI&/4~62|6SWS`TJ><송>kvނO@UA`^)çpqqQ٣`7qhŶ.KϠ`F)Xw-dy0~mꞳ0%a_zXͬa -*xz23 64xcSĮZ/W 4#n["\A +Q+ =gA Ż̒cX,ׄbdcѰQ"qKyҪ!V7և #*м)P\^\tG+)s|J#=3+:9[Tf̞5bX45J2qtp:KxkD'~K+;)2%3朾/C`ijt#fn[*?kX'F!^ٶsF~NK`6\^HclDr 6q~#$7!'cL+lZp8^B D{bik۰'⭢@RZԳ\UsY+=#vH(Y>SnᲤ@Sw-p T[ʹrk.٧g|3 g)Zhv{V3!܏|1##`Q },ooqG"s/JQa& !p gQi޽Κ㑓qKy=|Li b2,U8Rzgy8{ |xDz䍌J 8Դk/yP+_|lѫU0`U8(BC[2xG Z r 7~=/}z[kkV$5Dr>QE>B>J11w3.8؍x:`Xs8dڍҽ-;[Pr?'Yk~ ywQ-6+'|0ʳ\~8‹vƅ zph vnJ8̹,Vx97Iz" jR"Z U;69;LR+_LhĜ-S'݊j;W?-rI6'/UP-(~cgf)gXQipOmThʶ2~nʜ!IX]d9\P#[umNL|*m$U8Av^F8qZc+v(m}|Nx*aT=5.i|ZD -]Lp+D;'==o:9<ȷ=m3Ƃ~k $iUM&mW[Ն Z$Q<7߇Mr6jDT*UL $apGY8yьܭ2sĜdUA/ J\!tSJ߉MeG-V~TsV}1iqd'&'Wm tE,Keb#kn#m׸;r! 3"IOl.̅bJXdIRn/&G`v22; 9 [be74j7?Pn잕r;C휅 JM?T~bEʣ̺Qvlrߡ<[\!p\p7$A_ y Eޠ+#g_a r7IN4Q46@px.DVHfAra&U=v[2'=I:oG4+~=xoʋkd#T/ )f448׳׿.q,` ն-(RJop>-_Z_$3aJʈȥd{ ">ޣf0g00kL@gժ퉗uW}2)_JSv#H*:x⟠2r8F36BWؤbKnWH\@6AL~)>[L&!Wϲz{`0@+[kOlj#רHB~yW~2qVdTؤc.Kk?gǼ/T\i(6/:8_(S @UY"Vu%8vY|, *CMHsKޗA'_meZbIha ꮏ|?Ɖscg|_ziH0:v)P~Nr,$ BV%("':ɘ !5^#tdK:X ?P; D:ʀw,PKXf9輢$1a)Q2|u-_qa/p7Kp""W'/oqmXW=Lb|u ~޾ xfPFeWY}l`&pA$]N_I9 NL;7}:X65@`inQWbk Jɭ1;vڋ^y+8ǢI k 弼oS7MsTj5aBD&·1;zqiRD4n}'N9H$B-QCm>lUFfT9nPP?Qd*@ND*$r e5ͶIuŲO;57O//"ί'-ȼS`ǣLq7|}Fȫ&mTnUꓼ7Gh?fc`mꆧZbb^[uǽ -ǚ̎rIaN2GʪqERC Mfؔm hx`g;47~^pBњPS11h a4g&EuuzyOk{s= l⛓RN%D6I4, Q7`+>f禐6G̐0G+ +}fx a[Nײl+PkTゕK6?e)nq xd/}BQ͌V+Ү|.DNp+N +Nr[K`3yGy$: #{[*,S$1+~~NqP*UYx677vE,Ȼrl٨Tbm e{͹41@M "I "Շ ٮE"f2mbl@zK*wy_3߃}o"Wj-1ԟwMiq`:ɉ 9[cLڹ]:&^mmt? 4hOO.Dm-FcSxnc[_+][Z0hYě]Y%ͩ&kCzО;_v$gw1m^ޤ,$?0:~Wa WVts jk铄ܳi9w~#.f?{ !"4GAt)^}M `b|4z{⫱||bipZ&%Ba'2#v%e ry邳^eLsc0a ;v)v-pf7w9қ5couE3~ϳ~ &q\DW`PDD:GwL2ŀT߃*ő2] PY`OEE~ "|QBUֹRR,bjT~ j]LCS#t'Ů""{E:]H/5̐WEhddFQ&LHxh%BH}nkzQU LiK樤 la1+TP^>$| l NP[7<$O!I7R)aqD̻59gRȦc3u[eQ_#_[)5*:O̯"FvsY{ zQCe4fw+(Oʸf*+ɞ}l2i97 _a&Y*wNͶi:X)ZB[^!Si=Xd;+{;crN6cjyIkK0@L)ް6'C$,UG V8 =z?d (Dg !m.Z&NKa__`'R[Ҩ=PLl|dz-B\: Ti;^c`N7u~S_z;Ek!w2 #io 3A(D̜ Tc%.h[bi%-tMtPњ[V @Dqp&T)sd淾Q50+k2 'oE[pޣ0FLgil1^;cG䝃)@KvrQY{$(''r$ZTNn[&fo|~kH ̘K_!x+9PRka0טi/̫-H+r=mzG1wE}{BU5t*[3&vB82Q>Ѧ^ABC9;Ҹ:fZkȭk,W$>ޱry%;; R2;@ N>Nq[[\U[`#-;6I~3{9^4ʺ-7m{ B+ZIEEfW\!v ɢYߧh+-&|E?B%b ЕC\gk=T.q #d^Ha*5ə@-38,<={zEJV.IàT{\6~{gDbl(::>hj`g]U {J1>zN|x rэ>,?J 걞1͹V!c>ɪh{Q?FuCDfn~W6鶩zw`"oy7 N~h8F^^q !^e-Dx]sw`d9ݿHs@eķr w+߆>r,6(MD>Y)CFHeZĵb{Ub7hkѰ!f~k̦Հu8󿆿Q{h`\`5hx k}r[5<#N78|PTQ48 q"]Іn`(O9rݦg/,KۃWỺL% (O=fu>MX 4V aJz-i b9Mg;,{%(!@O q zx~Yqz7&%t:m*#IH9l$u8r8Qєd2Gmib ?Jt6Ȍ!)`wp2H=@ `엃9')\RTb776eǿyH,+!Ӛ$dK2GX#BiV{`PXhٰfܒvJ"_?|5`9HOp6Eyt.]z8T 4)K *b&J6=t'׹GK +Rw)`P/c47s㇅QY%lgg8n7zWn*79jO߸aH5扟\+F4SE(KbDs0c('Z ylFcGغMƒ _r>[YEٝ(vj*y{ c p گw4 t]NtJ+8^b2/|qs8? y8tvߊW=? ~$w1~q =OIh\ʻxTAY痍,vMwን`SVkGIR׋ n.>1>r<W9 \d-$~oҪ25~ej%pη{/8UI6Iվj QCNBNp& ;LŠL` 2mEʧ;i–k,ՃD M-j{&0UH-oq|g1"'l:ӮmtbQq8酞H1Z\+q)y#URE.68g:WޛRg"ί_5KsEX0qšPN=f!+K ۗDX:7Rafzˇ+n% Pnw Z H) 'S(&}{n}̠hQʥP汋'x1tAh geGֲtе(Ę I;18ҹ2e)y%`>Pw+ZPHnGv#'@_ȸ+_C GZUE/Hb~Hne[Q%_H:~|&oD<<% >3\غ`jph7'(SͪqJQtAfYMGVƕ&nձ+JU ~cmWq;V[? fTX[0k/ȆPu+q=GVdn-a|!rgC3ܾ"}JKd\ qR[ à':OɔbŸPPvn"ˎ2?S%UԄ!EUVdOS Zso4'M3& 9!j}?jGnaT7/[OL $.Cq >mŤmqT5~xa]c]{{h{iShy\v؜%cN$҃d#%r1-_a8_s׬/v֑\̠K^ziSc'b\j ;q+g+1aw~yDx֞]~:މmo|3Դlק/T hIDY;%N6NOC!/6&SzITlNB!!IDIyKB >au_AGy3@hP&!QĜc맑j!s>KK6 9Hq)X}IdۄR^jLjɪy.T4{@aw`- :ibVr 4fQ+M5o;VH?{"^̐E_P93Un%뻖KJ)iު1.Xʭ8zi2o d|T䷪XYݴpL3T}yf'Pɺ8Y閕MѶVdQ-_\[&sQRYZ !&( _Vh< 0|+O j&aj'z&EVXvX%wAlsnfAc}4SvLƱAOBLk~1(mߙH2x- Ȉe+y&/::=|QlLe ߱[s&^CHVY3R'k;”Ɣ:"stGLE6AP&f?_&xuMGoO>s& 50L7D.j4'lH_`+Kl洸Q]?$}A7LFz1/ Cq`o3AةOL+[U<'`zM *ٻ3OhϦKb-Asbde/q&9$%aAˢ8r?LۈVPѲ<^]8{ptq?H\{v<|^T `'U $0>g0{9z١wdgC} cGΟ/DppW(rQ`ItEQ1ײg>{oE6znj+Y5V+aFE}SD/vK8W1!Ir`+P܆/Å2)_BCjXz=U O`Vm`Axm;.>hmݺBE2Y-njDml27?bؑ$4`L#Ϙ)H,D;jL|3sȼ5;sbE1rI;mQ1j\\75j pEAԌ_C53@P'٪J t"|Ü-;K@4DU{B+68x #d<ޫMIjH8ϩ +)jd"#V#.̧-w0Ÿaer5SR_[r7Me e6GFlȢfn;{z$PF/BR, $!Nj!&.+Q C#S?PqbEZ⒛e:T(?:qL)?>?EO6YYuֈ ̶zA=w^Et|YZ)El^ȂWOT9I\ F%׫) J0?V ^m\r'^ZPhVlCY/x@B˗{s;Fw?&Y(OɽwۮPL wM̥p(=( e)i**:;ϻ靃&f>cw!RQZ4j62Ҽtkأ=jшx08L#9A5\- XQ;mؚ{a0pUq}-cnjwY2F"UdF*tG)RWeN.E߹1q̃O.Bk6:65X*0_h(ӀB2CY#*6#d6ޫxPN[0,MկrhIf;u↵n[fhO,>"duz#* Kb-jGot XэKScD1]gc5ݷ^\ M{C 5OOAgV*sRrJt&bzHjIJ!VL!ƸzbZf9[0Lt9Fuv:@DZ]M]U/թaQO6#qZE (C)vMTM9 ԍpF*HmxY~/q~5frx~(}8VP/ւ bKrC7Kh椦AH6,s[ϾD@yƤŧ%c_!^'7O DhP-9eMԅw~9K-wV4>aOahrB 6VHVu(^R'cLsSJ 6@BbR,a6L1!-9&|z~.}sCgжؕډkb/AMM51"83)HK>m}.ߵf"ЧPk IINh8x1B(MAԙW/ q"@bJrBwA}6dz51^Sd}?#S݀Ǎk;l&g\ScLPǒaz*q 1$0?xޟ*`!2eU=K}l(X EVFXnb{aUFE&/,y}Tb]YwܿpbCoCAi7 b7> 7jc)+]%?W;Ee⬞EYe|@Z$վ f1r<@,FgoHFs+ƙ&Ka0=ҁ]5&a>9> cD#@tZ~3D'`F,X.vROz/+wH!Sm@.x:,0*uI7Ӹh1?3r}Qh#RNO.!Ùí\lS7Ll['r/(vRŒf˓8(աr-,K&iF%#PRA@5i(֩N_X%bG@8;t2YK0k}DLn>P`CX pSG$wXX@vt9C m>rUrMӍghCxM#9Hit)tf5rP˄7wO'")K:eBH}2 0 1Fl+J\xB7I?*9MaFCs-H (j%3^mhzHR+Q4E"zeE\[PeRᑷz.@V(fҍK;wȴ![]w4.|i !ѡE;)Nh9 <'w&UDŽ"nmZ6Pݔ o͙kYfi_iva F!}z qvhǶ<"O8ͼNyUDKh} Ǹ^'Ner5.+7k{w|buٞ}>z=ҎEyK c`1}ϧc檩 [(;2Ľ QwT6KCUUe+J6+F@AhQRPeGGD@LNUoJ%ՎbH 946K"1YP+bbB^b+m}uk{FܦMPbNq0L(0|soA(ylsY9O~z`nP%o8`G? UK\w>Hς T! 깣?{q2&`$D+*^Gl>f٣-'쥭q~nXXLv+UW\NDSz 2{?4aPíKK8wu;hrUjئ>58 qϡ9s ys;U7ۧ:*fǬxm u?6_l teyS$l ¥\Bsy'~)o r?G 1\0Z')!K s#+pC̠Zr-Uʃi:=Pܗ̐mCfJn]1AMٟA$3TZЭ&iGz:pH"1ezraO>NF<ˡxaף f㧔Fl9PE"fOKƱ}@a6hvYx]7բAY(U,p0J v`uLqaL.fChucY-K9xs#f 1`x[lXy*80ʫ{DDs:/Lۆh݅uwsLfm \Ps{qVY9kSw4sh'yN1Mj6ln/j<3u]4\Y⤤gZ;/矯7B's! r1w QV?U5۞qqේ8Si}GO9áX~HF ̘\96l cwB 6xbμg:?V~PQ<)`6_Y@t h~WJ1BW:kCuYcUs7X9T?۾L2fcɌ65Neq.?a5̉ot7}_3ywx'NLC<2CM6MΈ+εͅdDkrP(K??e5vg~4e/%W*r8xFfU~}ZR@H[c?."0vΨǫXHez4^ O^z bw=={Q'-Ĵ-CSAi&yVJ P9TdP .ƞs@4fԴcKiÐJ2cv;aPjv[PSl^WV {lg͛8@u=X"mf]^2x \AgB$K 獟 Uށ{#xT'gWR_A{ǺݼV LFP}xp 8żM+>2;7 Z9dhr}׶ҿ~?KC4@gf[nĉsθ郙aJPTƟA`vuݤ\^E ߺ^ ʛUbªGG[OX>)LZ{~]=j~]m8֓r)D^yIW.|0>=oC,%LjNٚ*L%Q1)'Bñ#,oj2tYsje++ФG#MH1Hіo,LrpxmiƦۙt(4?9nVjO~L譥nizR&nV⁋Sdy ȸXXz}S]~+?B;Ѿ| -F} ꛰vWbX> =Vp߯ܓ,|V.AC[jxqGcf%:o4kfI&&zNJMAۨYiM<\MBMv7{LoSrk&.÷#Wc'$K*,1AOd N(8 HgY[oE58s:F{۰T[dXi[JVݖ]Hl)Lfp$'kQ-Dx1z$zDEsdw~*}Pى]Wu9"Y>*Rnh-s▨yhR H$,} {99=x6NRUJp;kA߀ g 5t-aڀ3UC3FuyԪo/8jVHr/@A-m EιGzQrbmxīˠ$eomc+QO¹Xyib_4q n:A#8N;$BC j IDty &E bo0(QH)]uEJ(K7.|".۪mJ*Ȗv}!:`ၙ^NJ4>xr_Jnc.6kp=/;tjAd.9^$CRПCPgbqa#~L)˥#zDXڑv9")+KWP6CHɚbpR8w~ cc 7{,O9˵Qqp\)/jV ЌuHs*/TE&u,Ky"n`wjx ε`NcC 0DgI)6N/\iPͰo+Y-lR dNXm##(4Z5g$Z'§ aLƹR\6Z zQPղp  9ܡMMbLy8IdF <'6TGx,:`MBӜ׎M[U5Př>e{gݯ3%CpKLJjs&ꏉͿ݋k7OluV~2eQ į;ZV4sFĉIm~%Tk~8lкF׋0=b<\_n{wܲ'j/hW5xF NlDZHvHB\kdޡG\ƓK]]S+o+;6ay`vPֶtȘGvڅVOG #t9'}~D;Gxoo*1S z?kf.PaBI0`1\ #b8&xQ55)N㚓Th;S ١ }ot7u(|xWgR5iޕ˱$ Hϑ rˬ<-4 =mWo{[Q"lYMsu&3|LHv&>k dOQi f}}L579]nslE76VPo1`i@ΐeUiFeqc,U?`W"̀,nLG x8BFqBRR|(=5cJ/}~ĉ`jim ^tsB"6Yu9<.83wɔv~ }Έ3iYinZ_z>pY(Υ"GZyD]#X[cV`Ah 7\?nAE']vH)hPѦLxbHFYSmt _h,OQ18A B^z+ԑ mf6*J~צ@U~ $D nĕ]m]KNCF(\8w4 c!~|@c_cUZN|kYBɘ^b`sI_kj~?Ӥm<@8tms=ҕ/0;J'Pe.N5IU&X|1Z4_1p"cfwٌf%Aǀ (,v0{Qü~;IЈ0~OT%2$Yvcb s40k *A{ZεML,ȑ 2Qߪg[(v:no)rW3 OV`1t -!xY -f7>Ebẃq#Ĉl%*,e-[<Ӣ,3BqZ-|&{qSaRu,(Ulu_Y)ƚW4_{-O;Ob=;2i<j"I#%R yrH8>?,BWN`Jag*gf &)2뎯| Bl ͷ=yAqmtT 6!L:qIf,Vdο )(YN#2(pR7a$&LO,zCޱI{'Vs?m@" G8!U}%wշ̰cJ`CS ;KfD WbH ׯi ˻>/ ]:>fipH|G9{壎|Xn"xvI(o1ڕeLb b;N;'D} <)geͮj=q2=P_A<AdKfeeD^"[GX8/㙧i 6SD'ʄMz ;; = 򔿣݃& Y074ʉ5wi3d[&0#ȒoyIsRd4A#:5~\O #gtvG\+B7f2 P׭m2h#;y~lg<'MYXB~%|7&qr_.~ݺA 6vb˅;kUǩ뒽$jG&{[B`3#BB!,4gH<\}3迩ܐ.y L0A{*bdhbG\!"i}~VyAIJv[%uDBukQ`}Xn8KK&۝X q篨mCbaٔYP_9\A d zdV|gUϓk*M, pRf%'v,| qZ \KGiEPmӈηRl|$K4XY!wUp%`AooI}%:b̸&+^ dhaңLf ީ0gzڎxIޑ?  t5>OfTyov`{Y'2T'KH!yv[ 6\~vϯPȏ?ҚآHE}a.v.5Y>EKӦ0wˢ\gA30榕U*S5 "g]VNH\ھѴnQ{8'"r|P \O[d3a+ x½bXT&=cZ%GE0L>+JO)@=+4662ߢ;G1i.܉bg Vήftaj4#a^&a!ExQ|=_1o?随I 7AI@w =.E`Qw@{C:D_}n 8 ^G2CYm97v0`>H W:BS Wȃ\b@=?3=ҥT[,|܏AT(dz˂\l8|Wy2nm[$;M%ʎLT^U ++ܡ4IE橫SSv,zJaI.u)L u_5GFkWUL gY2I#?Im O۫UL4v|k`q]'Y?T]D*,Q;a۩$_--109qP@SD _Y_tLa=ӂk!  SHCf|6)c%MVOG ,+凘_Tj\yPD޳.d& P <iiQbl0 !d2?#eR^M!toja *Yxxrx%6)~: @\*s® Qq)Cu4EH,)la7%s n0x"|Ö\Px@awLdTޢ}Uɯ Y H_ BjPM8`e۽IpWblq œ9\BvP--qD * {$]t_Zb^wrOԪ17kjȩtІ'!^-_!%?Rs+0ۮli !m>5ES˕o`d !'YvuT50YE#he x|,W\* a"6Ρ_75|vS 'he'}EytGh@i_Ohsz{2iYD;ﶕeKCGh>וێ@]Q9TO͆PiH *ȢΑX+m"{,E+Lo~3Cl@TP D"VWH8m:# nx/VMky-dŘT ѥ6sp?R}**2^KDC&kưv<brs-v<\Pb%P~&CJd}CdxHȺ5X`^nW, U ibҧs.Dm)ZxVm+j*m pQd 6FH3"γVmxUlO@ U)kl`D_|"vFPfGs0'4X"~K*9 =8ӖFp1kt*,Ĕ([խ}`o`$;\qN:A<F8Qm;bY۰kO 5`paKD׾.%q4>l6Bg.=~꘬ Z ~¸J1 6a-he\/?򂃑gF%C/6k=ncD傱xYSܺAv'.Sq_cPH0'mQJ];>g(uign 06甛BṞt2~{-:X=r,?k߁6dQ+=`^w}e}SkCn-JźzWg-X6=ԝvb=K{=^DC"u$8Ma/?RW6$dvouf>?lVfZ7c\;_Vِ2O-L<.۴9$6`υpK}a>spA77ٚMB"vEw`Ck|-(ck!KUS%)w,j5h`>uh܇) HKws]Ҡ*z{X΁t꓾ -84#]Jڈ"yts0؛ I YQ[To:5_9L\53.a'qƉ} XxH,V ʹh֞|܏.)"rk.Pp6q{gW)Xz[s~8/ Xˑ V q=lqF>%8-MMU|V _ ^q^ wTK[CGZ;f*mg+R0EmpY"12= l%uEn+T[_v|:s"07/:,.-cS}赝U ^jz4Rp)-I7o}_׻z(-AB٢5uOC2q BOnj skhsϺ| 7ű?nßPSoI2z/EMeegzy'U#^u0.8AT c8ȬfO OeН!S2&%-6Vij bp+)N.#D $%-}b 6O-KWh;KK[ֈ}mA0v+/N0'jabrQ($ͬɔg{aw]Qۊ̓$-Lٗ4v.C̭eÆkzPr}O2i2N4eCaUFT$ƶ70N󽭮a<šW@2Yi6T.ʬ 'A{fN䑛͘3 KI;ɽ2Y^Pɶ'-^21CAq~~XQjf sȮB3y9!X OЩ T)dʉJ |"rTn6Qqˡ;fm)/hb+?G\hxvV>lԒ:BVnd?N+zȳA0ŮZOf0vbb=2Q [WREڏ>пVmDnʁ`B1 Qm9`5~PyIcFQm:7p1B+Ar _a,2ǒc(߭Uy~R$ROf+Юsq ; X}q`Сǹ7m;\ Xwoi.2뒾3^sIQ4Nwkh۷ F,%T+AmWml% vmJPGT z؜ӂjlRFAOa]UCWlWHs8i jQYKUphLiU}`=։J 7wLpj4uI޵N70}GaBi+ fjExye6fFPW_2zԄd{%S, 5K`;| `´ҐW8ءp& h)$]r%)a_Z{՝\a#if2|'Cg3Ow93oܩ]"տ_5] |-%I; T+{z^c)ξWgfM{ =3f7=1f/@l GGS97{ߏ^&7floc1bPH@SMjھ?UxRё֘aEb(;t@An28p.3Wޙsi8"rJX `> YB%yņ.M9>F]0 /X6AVm֫= i3An_PݒmzN 2M1ȥ~ixĿ@EY"|m)"Al 5+U-> Q5f0k7v7d70ZH0VVdXG(h?AѲgffvzÆ=Amר-2 lHtݔS|~Z}񯄍 'v=ux-(ZwXow$??7;<^1 @MS ]c<͉:cʦȴ"·I!Wwb=yE\^*(6')rs67~SR#[|,R$ {,DiA-Õ@ܥesfs[gd%.q)ׅ5K{GOb쐐7 ]P5+O <%>=f13E<-I6om~ 87hB"2BQ3ٻv\R^׭Vel5KƚjR>bg$y겵f䞑J_(47[B>LZ%[qw)z[ݫo͘BӃHHnO:鐬J}U~;xU]W*bw A2~ I 9Dnˆ]܍K'a_j["@dTx;PŘ{A83nVՎ۹ IT{+8̇3_DoN_&#rsXIm۬T,ŧO/J{N} }z]8Hl=0j:4텭^{R1W| 4߹#tSMMd>'d=NGh+A7=dw1 6ԁƅЍ?0-WªoIs >za ,x @OϲCrL5p7}5PR $OJ0(*0)u#^% w)w[Z d<_l`=8hiKL'X׳#sU҃O_lU\^n [Z,R{u!UhWxg)$?ņ&t RY:T8_,f {0g%L`(r0o_Τ"Qf؝f :?H5Zc%T>|'Di}(Պ^{Qg3񸣪))c)Jc ;<ԎLgAdZ|}d-;nM9=̉!tD E&:ϗӃǔw^e0o睗AU-U ˣ;4E:hL]ORu"+i /ϙ#x%x 2]}h}- %&i@K39C/%Ye%km7W6G"PЋ  Կ\;\*$lKz,~r?[!u~<8X(Xϫ`3ݖRjVeN-b'Ok{SծyBh,Hvmimы༈goy8&HWcC,βHbH5jϪ' W !:69wVkP9࿴7 ]{}_9ȏlZftp o\6G.Ԁϔ&X\yᖒKCtx"/a`$hKS*}p>œKҚ&o4D]y,]7ѧN};Fs;IQٹ[vE=6|{NtC_=rݕy Յr5rR&wȠG[s 'gc3wˑ 1;hz-䜧2lS`rGIW:d2F^eIdK:WUT"T {WL&lpU0Z ?J&h)[a/<Jj]OhxeRc R@,)<)nW?pt PyF`Ry8a s3 Z1pyG&!WC@-JXP"rKq|,1GUǶ,^XR=߅@V'Х፨&)9Qזˈ@Y`hr›&הF{xpRb*{X;=wC/^UKp &ɵdxb"9|ԟ4BuO @ J >='ZmN/bC +uj FhT鏄Pg/>1*]=PEl {D\/?dj\,^}d6%fBg>mYI蝷G4; ,ljvtF)\r59)k Nx%lCQa(u =X(!`zʌ>ӌjwjuKT*YA/pŸWCAw2#h1W̸tӝ\ͶI\Hz D2dߙ*V:p/AZ}CC2fQDn#P{~)U63P-"{薖oBϽ54֝ z(] #ذ : ':G1"pVV yYL2;ȣZ@L]\ PF`@ Hڶ@Mz2w&_Hc͎?DTVMC!6ʃU'MchQ!xʋ%s%oaJe6%rJ2Xz@1YM Ya$$ 1Z&`*#Zo]B*V pP̸U<`ky8Oh4inVÌi fP109FkH@*)>DF= xڽ6h H?EwtƤdfB荎p>UFpzpwĎnR>{V7B5QO#5[xMteY9Ky29: k)g> VTqA jr&kr?~)Y}I ](ׄTRIתnۭ|l7 g[43{2\͊s{?z5)>֣.b!"d.,:b Q~^L8Z6'@_{UAZ#vdk %ʕxXQ_#1\鐃 AalB޵x2>P]ǕkPϖ+CZRm!(^8R6c$ g wHj ˭x=X.V]luZ!MaMM`H}zl %jb (I7*'@*oȳT5MlfcBc:/Vl/.!7#?B3vRJfQ[{Vrgls?|2ia[ȩ+Z# 跰s!zy,_V':pEJ#4/(eWiE]SѶW1vFVrZ),AķSYo5<#E?-zqxoU+SN0M #S䥛 ! ^H^_Hd v_ 0;9JPsϠS|t*ҤD{R0ќ &AO W ־ vr/\;FcM-c/Q®{gG` BM6{vi0ZL->)$Xryz8z[D}?n@?Ц%dKe6&Vud7谟ũ({"S 3ç;s|ïr! 1њAN˻ 4(Og3B.a_p}(?_ DR㨊Fɼ\;qѓua11`B鿉ʳ;ZU'ɤ {L`Ǎ_&=ʟ$}7*93RBىLո?d4f"o& @'3؋pmv8;-@ebB3]Hz񼴕g2^sn\^__c& jw豒-0ZsW](U`qPPyْFohƀ)i0w05ZbYM :~]&槂eby8ڼi6pn J18("Fx8zg?8 YD`v4JңXnV].1J[m&;%c@v ږށoс>zr^ 7*J%t`YR2i2wZIvDVk~0WFKԩ5l焇V8WG͒)XxCNu98 iV8`0EgLcE&RN.xwȘuPLW ߕ 5qjA++3 D:/}bCؒ,f6?uFv*6%, /%=*D)V>R Px**Dvӂڬe@w ZLa^ #sZQ.0O\<&E#Lsnfn[M+j=6Yl7y7}X-bpHy>~u21Rr}aNEXfS}3Xx(lS|,@GY [sM[^ѡa|7O~h;?36"G_0gև}~N0d }>f=U7}^0 *,?E㨫k[m,w<\*Lm!R^@Ȩ@C20bv` `)qܐBI0[f0*$|k gƌ8̮]̾yMQ hEhNf|NY/YSYtU䪸d.!̨pu'jY e gOEgNE3/g+5^wQͣ!8u bGr^Z,j;\g f0q :֎@55+QT~dxcƳF.LP- =쩼,F tLz0i20>O8ۨ{*I"8c*R9[1/6c+ޗȧR3h3}BsqUJao)Ky ԫ" Eۺaz#;ViĢ6{OkR><\>3u SvkTzCx½xFIOj %,߽CQr5zk1t/ݐ!_sY?0TC3@>3KZ P&CIշ{ZuHKi7"5n @{b-BT8IuxŎ#Yq`hНT>~[&q,vPl[YCG-]-*V{=SF⇢< 8fO=<`pQR+ânTYtU- 23|<@B1KRsU~'Fas ./eߘ #(l`-TO%gpD,u!Tjy6~txPP BdBqTWN+C}PY.zC?4笮ry #H jЁWf d^(!O=uѾ^ԏ<惼aB("CoUʿs0.3 Tq& OP._VQ>_22첰nW0! Ʊ'k?p]3`ՑG~HvlfiՖʮfp0L/7Ii]Zj M?GQP67ƖY?>EIVŤc9Ҍ?I7ChFN6 PieЀ7[*!T~9AYøy[~r_vOtP#MہJ}o>&p~4(֙2"{"qBa|'+A UK w尊Ik'9M*J&e,U-%!wR bt@VR$$Nd>oPߑpWeYLZ<Ȫ 7Pi4p{O (8_gNN$QxV=N$813צ;A>5={h^FM넮BB֠% ǡ%j>\s[5#~ j쇁f@H;/!O- P;?tty2'K[8Yu&_ab(##jYwoXc |`8gGg›MYL`0m.#3ዹ\ER4pzd-Zj< (o׻ө'x>c*ztwxo C/_M9)>ΖߵWN&ЄTܺ9>f5JoBeEpFis}崸m5^p>!DZ䘆.FVR,T LHfR-5Z\ܾ4et'uKEmF"h}l\mEn%@}] ʁQྜྷQD ]IJlv{: l@6x1 _1,BYr IqK$ \'7`RmanGH;RK⼒ݱҾ*;A!&{b"fZK+]M-%Q]4WC _2%97w cf;vjꉯH]]b3,GT52LOΫ`>Y̚A3O~w |7- )il@ZϚ%K)dݒa fɛ ?> %I~UFF1Dx_KCϮC0XkpA:pT}Tt}5%rO&pdΘ. :|_Wmro `!5^Is(υ1L ,5bɪhO| "`C2:F}Jf&ח=7m~kU_`u|~ô2\,=a-?UgtCTlZ~:+4pezgNBFϷ@B_Z cT9DD1}>=jd?uCԂPI7f՗&4q?*FX.Y&Cn+"ibVhA0MAde97lT'=?Wwb!5elIU&0qYpbP:mZDí-R‹I7SܹηYJђ)R9ك[R]֢K4Pe+8/|F+OSszϗƞ9"t7_:?- v2B‰ Zvx,Q 98"-_iDk&m|`tNija);+M˻m~ߓIm&HG<,*Urt\i(-ޣpk_ aU7_ /d=(R;;( O -LA foRTL߄zs =A2! }}B WEmG1pyI/sh܌:f7cX8Wi"ʺ0F,zVPUԤý* UOt2>N=o}%<I`J9?V[I"dFUY)RRl\쒬G?LBA78NJ~:4 šxmrgYq80{~dv?_mO椃J|eum= (؝ _G6e„Cnǽ9CKjwšľ-\wb} Z e'&F*o/d*Aϒecgt?Kwo˄" Dt׋*e"˜xC$_A0,W'ftݑl_+w!q9_ȬY8,iM3ǭԺU|+78E6c Vjøx6`вb)MOnYzuxEr,8M wh"mѸvVDzC5ڷ}E`KD>z+S+9\@$=E~ u| rvn$ }l>X_)\eP!6?`%zp΃u;(B>y#MVs}p₼hδ8 Ӯ ;GP9]jqN2޷lDYC,?@|Q}"=Ep(7 Vm";`͵}jt4$sOAHw6תy_U9-n?n%ˡ54>hPfs\ZoZ } v{솝dĐN8U6R:Dj/Dc"nM9-o,k@!*0\NVXEiFy0xLFd %8-v;I M-1 |vbJ,[`׹{h<.+UZ+ ;}e g\C=ntR .mB 'd=,S߱Ϛ:aP!ޔfE)✕'IRb"J\`W<(c1V&Y o~|5l04'#j?u3~^ baBQŃЋ*4$kT~^ŽKU;Uo#,@lP|S48Y@kD0^{j+T?=+% 0LsdoUX uO oLfǪ}T$nsxa =2wߩ{DxXZ~Еi쐘,P52"4&ZB#Jm{$Ef!4Ntؐ7X70Зs9EX:( L1Qv]hjT>ِ̄v0մYlH@峌l ?:13燡سp"*l/m ě?Ĥ|lYzұRK'T9spP)~k,ຖ yƸZDCH[y:%lTe.;VԈj'*\~l0[#(T9 Q=@~k1dr5A\{*AԢy~vcQ2.@[ Cb7Tǽ 8A_Ǒ%߼ 4ԗr4C Ϝ}y Mt-u\[gWcȇ{U]}l}f9RO+ {W ,O{UFHJklS»FCҝ$t#^OGCL;DRzH7tƂ%ů;9X8؍eE\oɦ}ucĜV(͙ʾ;j#.Sd;P5=Aϛ[SH0AP5C2[JbN;L [^n {UWz8nu mad{#6ݭfTgC&b`VΐgvO?c8?6B 9`"6eֻc"<6UH~5Yu%q5M!5弤y?tfLݺpjtb҉&yX幆 s:.I%5YXLb~q9~Ń]*j,-YGrSxq{ QPk1xezK?oHآ!LRe.A;t'(EW#趫ˑ~6q}T\Aq=MQȖC&bqg1zW0 >̾@5ĴM}%҇`,U-be<]^eO}p?.|7'y[J*WV 8 rVfCj.-C\YNmj Ǎג́o/d6tU@O يL#5[,f.3 VqX!ЌHґ \fzvt Ez __/E)3Cu NTS} y @Ԅd]}fa_0n;!5Ulٮ2Sb3p;fu(΃5}gv+V[ ̖N[W=OP,fQ$/op'a܏v3"PvJK+~&Ƚ)=Dh@`vZ=O#-0ywq޺Qb5]#pv0i, 3K; RXXiˡmZ*=!UɰT}}K;ږ5%YxҦdD| ľ859용pIȡm^u=Eu[؞P0P1N%=$HInI{7/@wG?3`TiXŚ.7)*U2~;?*PD,l0ZRn2?l= Ğ7jmʒ;XJs5If''K/[/pz%J0#Wyk7-j'ds!_atx6pˏ HE ՟rXve-:\xG ܮXgc[Φ4^:UNIC(%6=bz)`jO!˔=S5hr6օ,bOZ {S{W>UaUUkGnJvX?էO^@n+PH؍Uob>#)덷hkAOH!%sѓ`SI' ?s&>C9ͅV7I; >Hw3 !D֔hƒݱ L4+M7|0 Yy)űTt@:g wVInI9adհ (G e-p Cj2m!DMvHeTk5m{U ȝHr9cNzǑ[ 5UGkcY^%qwܯ!"t .esx4opgYNYEObfX#~wb,=YN|^7:eiS(_;üǼbajA1emB!˓r#OMGYbǓ11 utJ0c^l4"IB!}.Iӷnߕ+(EpMhI iCv>km8R:23QSR82&eW@A-Vz'ue" h >N͢h& ě09|3͘?n|%.C< j]#,TtUBΤɬh͢hn-Qb߽nbݷ%YsciF̷3ѦюP h!L?3kz'oZxI-lTmYCVtz f; J+9ȜGQ2VԪJukէJĬQ͉UVk䭾&^dHZTL.5>0|gGkgͱ#z߀h%p1IN4mQNowyNß7,k_'[V SA|mćAB8w5(`iw2 Q޽x?4eN>(q C jE6pq}0t>WV2u (2u@w`t$6U dds'P4l r.D`TikI<X-TmՈ#(.߉$@9Lns]rDhҸDW嬖 /4+E8 / GTJh~^>4p?puE~4e͔GT7v]wFm4UaL4aBrxZv3 D+%u@k61$|iT>1 vU翀+oGv6icْ k6^9ҹ]4eSS]"Hs~N72ZduSb8 _mQQڀ%6{lu*j5OK/i!HOkHDLV?o˽᝶?7J݈xۘ Q}4V [#]T '>/d8z9aU |Zp_K5ʾ%5J H"#B~S =M`+yJ?Fr% ꑋ;~8`B5OeX*v-<Ц-bgy:UEuz>Q]BTxNpH~Yɖ1yN>KjլL r8ؤѼTս ίIYOl4xǐ)U:q`17HhdOK1%9;__"J,(Abi#tmY$xdjmnK5i y^VA$sj\ {.7-~Jx 6IڠVa'GҤ߀C۟ˉqU-Er:%4w~oSiS&+TP~v#BY| 솭nzOJd?Qڐvg2T$4ȍke+>Q\bfR$)*uLfާbaÌeMd6\%Tvž +]F j<Y jhB>䗰q[(AzHyfg{䯎:BO)N[p@H/>aV?.:y"jK5oMLǭ, 6[< _^nq@r:.bE!k=dSҞQ9Х/߉Dվ΢LΛ?2T5V?j"¸3Iڷ-.=łcȇx  [}P1tBwz`E)X Ʊ/U9Q v]0\,"! nYSCŝN$$\buoh &;V;6@|ʫpfwAdzUHƍ3N߱QjZ<]Y;ப)bƸK<ᶔʀȬ* ȱdO=>ށPZS$`ݙqyW&ހ 6tJO4C)H3 #1{|<*a]0 N-1EzC#p(T6G1g-v>`E!4`!k:uSP~4AhXs$$Rj(cbo ft)HiU#'7 fLfB4A?:Yu,Ohᾠ*1h ɉw{yws7K&B8Kշ36&F"N)5vcd1")hhUK bl-CO5lME^("r9W Uǥ(e4Ȼh` gsVesvy@pꋰ 'fa PSH$Hɇ-,yCI~,Y;+~P傛-tz.wp J! NytH#Dq̧&}Z>;4 `⹵K%TZC.I}獄q2 Y&;g3R)Ix/FU=Q|/ -A'cSc3vPwƇ)yfeuFόD\Td7 3QMLYUs}2'+[ԹEqא #iRjN3{̩t3ޒnk'2VVmIhD&˄!eޮUP|ܘܰ{Q _+DޔסUxՌܭ$uC,h\E4寏UeP^Ə_AK!2ā\"o{3v%pcFX7+7 cԉǥP1Śfi\J '7K = Xݗ양qa44CZf3Мa5CaTmMפԖ8큤xz< k_Hҳt?vS*niy9hQcU4@w$Z"ڡnNh="W~L7']@GEmѤ1!_¿\T{CX[NwO|@wcF7od"ƅ|Ol~Th[e/ggǭRڲb su($S|*lhry(TwB>h{З XlD#|Ԯ&m @<3Zv(R|^+#P pK}Jd@x 3ɫ3zH0mrCo^P6!`x]. ο0M*;ȩq Ҩ.~ cHD}=ݥNNaZ# 0yV,h1S9m4 Z׾]ՙ40ŵeYG##u" ȀX\p_ȈQ҂׋avNMfġܲS8/ЋfaAY,<|KoŲm4\j> Eu\dʇ=ǘxs {bPQ}@@okd/ꭴġrB2HbQFoNFt\R2MTSQ߅ڑ=z Q&#E2jR4"5e꿧[{:'.{1{Q6>Sy,ϫyr3rd7jRwl[}MDMICK~O-VuL]b,Gz3=`0p6Q/jܦCʯ Fd@ ; &1A,xZGUQͻ+~n~kdRdA/X<. Ajm ¶[ ~+hWabtUIoC qx>%0-twQ?w?ۊdtUS19F}Yr3E.؂cBj:0DIYųy'$2z 5e `gt* AVИ3P= HPsv@E`q?I]2w4RE]$Jh׎}5r';u50|ZQa!2|r Oc\UJTsqgfՃ&5+Xa}p+?5bWy/_!U9ݫXdlE?NioT5_:2A>8Y۬2.\ߩj$cP*i:04EF[ӀGX%K,=et8†6!֞Oo8(,9j]Ori:e +Z(Z<=D`;D&5/Y߲GOR $Ƕ3+&+(kz|GAb1 R%Qqn: V +Y0cMt|WM`)N)76PicNu#zڠܘ"" V.Tr+{Sن֑u Ω2! YƌvkwEbyM)3JR?KEf^9 ",u❦5\b8n= m*c?aAԖ"]܅'@/yʊeꌯk0RΕ^ŋ6-=he61$W!#r;2S FYSnoåڪƳ3 b@/&"/"&ſ٬h(/AY[<>BI1Zo^T6.r )~B@(2h,OǚZ mE:`5)mųZOC-)VC (5XϙTdrgo(=%8 Kdzl.oDs~s2P6yϨ0D*T+}bQhuv{}̂=Wߎn:h㺣luBu d?e֑5ҋg[ ~-J>P`'"wA|Xy hq#Yšf ^>yo%q6QxD= )J"Nb1@KoLۢ猱Q<Uq޺_Y%oP'^\\ iێ+6<`T=Nac ̧@T\9M4a6R8(pZ$w&=3^54ww#$}􁾡V򡣭9o(}3Yw\|f)R/E!{lw5K"eqȷG`… 8%Z)]ՙAX>e}nAGWl]z{ᣅ-cD* ;  zQalMFjO^Fm dTb6,.xx U0R7ݽ`i;e0yNanMdwxʌ<\+;o aPMj꟨=P\3#ƃTn'B`^ա GiϧȪ(܊f%@~Uˈ V8CM&r3;x}3rO~ »^a^FX~\Ӎ |uU3?VT\Di06r珏ᭅaB /%*'1|?*l+uc]!Z쐯Hr}XJG4.Oa5}*r8N uBҒ%>×CYShFVjDp cF=FX{-$'-lБNH:I e= GS2Uؕ!2/J /Nț!OUg#v܆9nbvhw|oKS+%qyx~40߳[rmA}u\#lg}ܺ;*RJ.GN\k_la@~RP`qC̀K% rN !/^5*~΃2D_l^: bL=q^$)wwV"{ϱh'dΉsصV]3 )іSZ 0< (:rj/ ϗ#<F2(Gٵ}̬ANΖZ!gID (plp;$M6J5$dPZT1\^w R$-KBp@\{,c8EzZ0:~0*] e֝T9Z]Gp Kmxp6ٵ߫+3gC$M?^x Ҙz~YMa<|Pvp >5jJLkqS<i1zxv@.3и\;#U3ݱ{Ca"1o|Z= Z-ZuKٙZPH/%sDpV ISVmfMT{iEd' Dƨ,h^?o^ֳYGG6AE2$VDg?@{riTdcU-=mVf^m_98+-ڢ GsbeV-9 3Spׯߦk14ׁ&wt.qj땣XgQ}',|FE:>_v.qZv: JYSlkP'IT h"775x'^D׮Z`5 #laUDgg?(=V~hN30Yr}l"Jrvsa sOOh z[72ˍCnB<l)^C_fD{TpOx՜ =wrDY@h (H̖Rj0kv Ӏ `tyv~D=eK;6W[ h[r! ~HJ'/{\FKTÕPϖ_Ba,S*u= fyLq2Bl\uPsrR{cMiD}nCWNkז@4M5 }S)c$*4pv,&N`^[ѼS{5=mI>vTtu+\iQGlM'l!+:ĝ; C FR%fd1Vq q(@gLW-GaE/qԘH>R&b.?)fG~g2,7:;3W2?((Wystխ|F#IuLC<%v{__!Lhș/Vr6VbΎF!TcF~1٠N'g3'hD䉢4BVyxך$a':cm3k."DyOC|NBk8 0% ?K#З袕یvD>ύM N#kXa PtV0t[g4T^h%[oCr爊 ;К6my#Ę³7\& yEh-̙Ǝ@6 ӒůyvZ|АLðB\58AbEot=]3Voe)Y>e^-FV4]9b Jiнkigor&q`. ] dڞ2qd<eNe^8 pϜ=jJnȻN{*/hiY#x)l{[ZdI/sE_f缬"f>n/;diVm] ([5^C>pyc$!oI;gC`U)3f;j}8j/sE] P`5:x#xXw*b^[[k5t)E&Z1D+~儏0+:YнJyN\䤇 @;xh|y_D+$H{6/>RVA&Jl +WMS:̚.+={-_ )ֳA"ݏ":Ώ۬g`$3O6N|:P̥TL{!,IttD"M0^Tq$bW=F~0l%y= \/6E;q\gwqT*vJ}gh@`cwB}yN.=#/S&By4QbUk$PQl9-E0`!hm8ieE_"aԚe`FFEZt|cU=hEqaCM9jpyL3=d4DL -&<*(05!_:npK ]e@P/,fSw6>Zlڤ!>xve$;Ynا9Ѯi 8Q4œ&-0>GY]["=/L쁁Nͽ\yW1a\/bYͅ9qsеMs6rAHޔ4(gnZm1Ia֯Nue~iՅ)g,&$^6=m|& {dzՄRjq4p^ sz~ MNi/w3i:{')1{OMcT͎ bܣysm77-rF#m/ŏ|s" c)2  1)וD!.#s9p`:9ɟOf`F1]s {Oχs<(⏫c8< 7Mv~|3Y,oP qVlora0SWu#%';[! 5IFä-6 jÀ3RtF|%`€d ]SpiMf0+j*x$|lYLxcMB  !G4/P;7m<|IB#Nuo 6͵[ub [-l7eXC_d]V$P_ϭMmȀA`M%>L\OKp=Fzے^iXئ;cY=`5zр}"&KŸv 広QSAAd.;TPnxLcJ`v+钸tȲt6K /2?j ۋEBu8E؋I#t²־}-E䏼;fAz͈_䃊t ϱ\Io)p"<#ж_kjQώ"!S=Vzt%݀!Vͽ)B ׎W`/M} |i2BI> ~0oO: X:Ƞoka)|H=lc-7za;'cg H֓q ] jjO#$_|!!lՃP83#%r5:zCKC)ȝrIHgzGR4%K:>4e]; 8 hwӚСXm$V,߃L?ܜF& BO rkRmJ~ vzU:/ܲ4,%Mb-VdŐ?,7UX7#_MDaTC46e-׹/W+pd4h:o5!/cӇ}Yj)N4yTj9ݾ mCxlpz{*d(l^1dmrʨa#K߸xf>a^"MT,,h"m]~g P{"BƭaBwUpzV^ i=ɫiOZ[GTB/xG>›a~ {&axre5ѐn5V1 ?;3h΍5jĺ38%2F~JlD$|+ 35P,vSLU?`xCLjy8alͬy)B[" p^DFс*<;3fv>u4|"i2rNCH!X9E%AaabT݁yL:ALU&r02ngM M+v 2 D@rc>V@B\E87Xi=0s hO*L@MW؇C֖.cOk=Yx vBYBEcu-~s NiJC՛ob./^__@B2 nlں]OOn]ɼh-b( ⅳӝW:q#2W-s:md:M?㲇eg'{DF~hV8_XEkUʰ2yuE9^ŷ)~>_$nE $0"YS!􄊢FD~]rh*{>WIn0B;LN\d8瀑+3,жâ7Ol]2}DwCd.a؟$SXXJF+a‘0 hA||2eٖNcCu$#9L;}dZ+ h@C;f>нIit' xzΨ$:\SYL㍙Jh#)@wg`r$h:M6|Dztzm1 WPq;~v'eH7,򳜨`&|Ф.q"e3*쿃?P)}O5`@7 D2Y:hdR cr:ϑF Zw67{Y~+-sBQBҞ536MZ.;Bi0(r_si$D%!u(=յ@z'MY)Z@Zh#Q0x`{L>O5fQif7Xजyc8AQ-ՠ:ea(RI\bu,St ?<Ȟ}dLB };&G)XВE,cS>lv>TWV* [kὯꠜUDv bxaP$ihtCҦz[v?(Km`_8F.]@Rk+eiW,58}}$3MM6[XF%-ʶC GAp#-Vw*"t<:c^iςa-'$ uӪy2y3||gdb"ztpe~ mLD E)͹9%sNeG֧158$yqˎ2:w Nqd?*voYؚ8EN5_īO+#_}A^tgJ~(@Ξ/n1{:h\Th7ʓ 7ˋ̗|D!6ny:$,/6suRi;l1Pﮄ ij%jKcA h_?C77(*[,]Y}Kh ž]e |uȨ [nֱNg8uSF/ qzX/awShl(N+@wYc!~aYs 7]egg\02'nlL6g{rU|{l [ RQocd. -7[ɝݲ 8U R0UN7fcVJjpiPI3 pǠEl{X0Us$݈:S[JuH.|ME't@ )& t/+h:rԁM,q?L@15I% pXZ$b ߋ~]8HI-\V"<=U(]Ϙআ[`'u A7&JEѸC+THeKQ0%$׹Lzw!eߵ]UL_~Z--SoM?Iᇔt~rezR# %=)kDp򆎙K&&T1W|Md4@TJ rLfؙ Q z\bXCe!GJ }8䯊ϧYh6<$L*-@Al2{_/SpZ@i_9Lj&}#eHW gYdMseVW)ٽ/Y[PԃV5FF!,9卓_ഠaEy.,vjGuLuiȫMQXDIF*#Fc#ğ8~4ON m7!JjI]P;*Zϔa:*? RV۫ ]#ݠ`}+aMZՂbuou !IޜVK˔nᆧ_kȃgJA7nqX3& VH8Y0'z\cyrmU)L/:=ӷ?0PSm%Jg]Ti޵jCD$e.l]1Ӱ[h1A![,#fl(oTy^* TcZoG>Z1u#OKpplyNk8B9$8̷ 8ڟ6r>/PrAxnB~Inm̤Q x=qPO𵘊S+6˗a,su6}z6Xrv**D)$|>]D_._s0Rp& 'cT&V4ŔMs/=+4_-P) M= V zDz4瘭\jƶυdG t['^M2%=A'~0rXYНHrw^L[/p t ;j^lXGY`k`8z b3\)7]y۷aZ>yCMϡ'YU!!Ū[EU;951%pFns4m>i؈Y~R۹:$4!c7߰t2`qO2!/ Q 8ǮZt 0!+Ĭ  T]v+7`+#H9FIӽnl3OGp(ؓX*Tȍav cxW&=8ZYaF訕?ԼIKh~˥V-%`r^g. Lc C\VP6Ev~#Cy6أ&,fe3Q׶o.:m]Utpq?Nʁ%9cTK gՌ#L&w)]s(UNjR=nU+=NP|Wk294*F4JZ)01 CZS纰r|LbbpI])\W8peRgKV*;@a6aׯiбUI_K錪P" N]M peHvt{7 ?,/PNe#'*9}MtS,ApW}8 mN8VՓP@Z{ێ&?{)qix0ҤX9y#x?ɻӘD3(hQ۞Dr0J}M*yzD֏"R}Nv~G f`Oe[Ygg2u !֍#Wm՘l Ma HԠvvJ*[lE؉", ?3D4F"ކ #>|gpt qzG٫߳eyΓ;i]/%]0N:ԕW 0-bj$8J45nx&|z;9Hɺ7.mTȐ@C'ٕh<#ߖ%<+lq?,ȪQ>e~CM-$l=vEVR1p-9giҫ´r1#f^IB٫M_R\jEX]NU0&apg昿0˴cɯzQoH%eqbBiZ z[Bfg MwHKaβY}D^˩#V[0ĂD (hJы i};GQJifs%#E p`x0%c!xF{y5Ih.; u #QLwCXGj+} U] *0iJNgb2&<UbyJ٭mE("Ew]PbxWT`!U$'2L=);n!u'|Ն3\@[m1vI ԐXƸ֨pEbb<=4o70RkYl?G>8ߒc1׈jC=̫\Ds;Ʉ!~γ'9|kFm8Ԏa'rCI γ7M .B3ݚ [ Ck[ #6{ =`UH *Baul͑b`tmlVܧa=8$8u-q`5ސ\-[S+#8nbFԖ'x|*>CJ/]£Lb&a%CoF}^ZcLs5ˁ/Msmp9}'^3'X t;Q磰w1"yV@l=F;0(>Ol"G` {t{ k``N W۞,gJSewD~͛G6Z{KJv2NkrbR`f_)*Y E2{LZQ`;Z*ߨԂ&bc5q!㼙{ZeYW:2Yu&i)3 .2xreȗDxK@exH6^:Z˒-2L$—Ә|K cahސǶG.>1?L¶V#Is2.tjs'9wqOZfH٣\3V YK'45>)xX"F YU")pC$3δE R`~1pdDVޟ#u!3)Cs9bN>VO׽P.vՁ8#mx fn N\:H~~h;p ![ 2xΓ8`  >?VFջ^& UV V<lo5'fmfZk|vX ^.sGqu3ne rCޙo+9H};?1o٬E^Z<`/ 0dv9W= ڂ@Q 1slfr+w Uen"7: {SwE=YE 'G{%rI2{rȂP&h?yrBlO%X;+īu&7e7ƀ5LxCpq 8ʥ0<Y cG$+O^Pw*.<];t XZLp3q=q `[ErA`2V7N٘r}.C$er!'50=IsB%FZSPs4"&|s g$zL'TN,)JA:Z]X˞Ե K87C, l:87 8r/5={prDTE7rpv:+) 'v@v fFI&tN:hƾ:t8tosVvz[#,kRi9az#+dN*wơ@8LPAPԀ8.,2Y*5=>џmJkk :&]UL7.]94tE9@@Hsq )8@9$|dFB0u>@|J֡&{á2GmK&]+zO5:8brqntL>!rZEUEt(Td4!AzG*c?'wt>ʙwU8 pHORL<%QfrCjG'm=C^fZ6LuUs?Gy-:kM_Y9M-Bs BD&Ld OIRvKF=&uk}+={E`o }E G0ֲe/\m5sSiWݎ"uILh>Ʌ7~Ӊ)*dVvz IG9!gr=m/zGGKS-{@gh4k(!pc7 jq-'lH 1$oAF/[vڙc®/ErRK bwɾ'" )Err Of~Ԡ@y{tZYݾtby"g87]KHlg"P5\"^SXΈuRZ+YiYO=590pc7f$ s8/b4$a6:^ּs:J>`ݻumf+JX#W 3|Z"Xb_EQkLm3+ ' bnC@R@Lr@iTaB5ckBifsUJ@=,- 2e1@i* :mҤ8$ !,jz :g|2- `Քkqs;\`36IXĥU0̉o~-̻OM4@O#=hK>gBHM~5WUf]YE:Bk-䦺}˃za1ܑkvz#^)c@Uz]%u&~Kݘ ފ|4!GuBqn k\(".ԙEVMu_|a\ x(޿|R9d`=;\`&%}0sav$TUru}:N8-6?G]o%j Kr*Jw?.\}. ywׯ+m O!~h; 0K^X}F Alԧ`S1joWDݼqH}.0;>La= <0I JR^ d#S/Ôe$O=M0z"NT_ULcQ$]HRUɊt:GQ! Hef`]Uݶ& >k7ezWoמ6 t^?Z4[> J(D['fU&wH=?n MrOQP@8oZ;,opDyomNe_L R&ɥte{gt.: ѧؑ'w Kocx1+Aڶ6na/XS˜hQIW[Vc9,{jruI c7 ߲ȹys T<ÿ>,x"I&g2a$`AZD[T9@SG/Θ$Z,V0OQܶPTo]stk<1^ԹC$_*fT+tw( Ҧ^IT ]yY$3a31osLoYe }y6p0fڸ' ?;HH#gN?N͂Ut L 3w ]WQҀ@m5*O*As:u !qHH}zlΪ59>U]obzbPor(8kiU(WYn("P ]j4JJe _6u*\+"LJ&Wf;Ⱦ8觳0Gq.J;⯍Xk|g@c2dȱ2 8-a 9tfiO_pTc8,,ӓb@|Lۘf(2^1MUE=%0V8 -;rf%ju\A#xdImVJ^b-0aJR{xĆqqwrX/MӚ6VC2':Wց(-=v~XM|Lv)j!-ڱFD݄%>`2m&pJSҼl(?s;oSNZiBas> Q3 Q7,` =A* ӕ$4nM}b_6GW'_vN8cn$Wb4 PmD!~RAZo[ly aP&g_#+i}eSPei5ݴj'^]Y衰{cC/%&#X]h#KT0*#%C pbIgy o \Cr&d6OX.&ˎI@XҬWK"CIcAmJ&&KwX9M'S-Ro5@u)jvnѣ}-#ZؖD!,ՑCV1cJGLy7%nYWZ$p$Բ1Lzd,<bc} HfOQJ8ѝdJC( XLãrVpICA\?eR7sr) ]!5fi귭ky2t>곏zXhgX3֓7;ýf~`Qq8𠶑v5םl, D?I|CZpnI@PL,"Bֈ-AQ7h`RAj.Fހ] aK"L  /5IWOO[w/>>[\[&{'hMZOA;Pls^&*>ܗI70T`\_ziQ/]ηxd: ^ oPiv8ZeYf﹗H|*<(dzc)n,ICw % v8.5;0.mH'@ҍQ-0>Wy3$LJG6ovR|oسb&b^Eq {ethztT?bp!4{,68qǟG6awVLco`i=&|tɌ剠Ѥ 0`Q)8أ$Ys0{~UNc~u3ʬӞ(bfF!j9)k`ǵk|:YִUMk\!#bNKؘB>/,B`$bJm&wP{`iӞFq(g|B!.jR;Cv C&G ;8HϏ HX1:*ր.^-駥dx}a)5xB֐"kl 1F&}PʼMpvık*ټ(I F/X,V\UÙ%%˅O;Kytu蔩 V8p S5&k_tFz# -y2#nNDd߹MnVOaCqS_Zut?DOS˜KuW&KR`ԉOC\Iq*G6 ^K= G:_a siT P|U)ƣBNW!ELFfsOԾ!2^`tN!Ss//@E4b-^ l?>7B38S7q~Zt{G%rJ_I,b6imAOT+Oσy^Ґ]&d1_1@0,x@>c쟨b09Ǵ|{#]1!\(fC`1< dAܪ?=P[Nw; X@vk;Ë3s_/`|ԼFO|oGL}̷`ݘyX\5`.<ʧTK x~ȣ\l k/y6\a Hyt;L`5O:{ Su#Lt-c_~z5mmnY>S8Q>yյX^X0i%s+H83..Ko-,{ Q4^^S!^tcT+:hA윘]DHJ16ǜ3eYKH(@ezU=C8t.4,RM:Z)0"mb,v}ysO7"uih#T9ޢV¸0=kfJ]e7Fɂ7c+R] ;Ls/tb.FI',܊MHL"^rԡ̈Wmc71˃)Y_dqd-o[) TAV&.:Bj6= (loA^Wb{_rA z;i^v(QKc}dU/ɘsRz3(goj6d& :i>vZ<|24UMX~хҺ]>VvKهD^Ֆ֍꼢OƂ"PD(ar.?*$\,(<" g d?-0KXB-= J,/FTxq%~JJ8e@iQA,`vh ~r91aӊ)iNN\zм*3+}`K〓AnCEyg.K<~|ZH6݂xM*O [s1\*0bgi1||A)O dLATRD)\i*὚sQm[<, SW)J< O8j[C%ArO,h]P NMHky&urDj8Ê. WtvۗHRI5 F7աHӓ;`' IR׺_yFwZ9V?=TUPW\R8:yEr.,ap,t}*v1bTVT.J5]bj 8Gq׀r͑m-Vhi-O rOmԲ5TEFցpm(bIY?EMgSf~/h&hV/йCթttZER9b8O֦pS:,]|)|vQЮp:v?~DG"8(ֽ8ȟ*$X#5Zm=#G%Eٓk176+k0$˲U1~S<^`{njX5^P!wa]GzB=Pf.,spQ{CUC:ܷB1[ԋ#ӆ3Mokv8x/ &p/&<._2{L@q"BKb iPUO#f&ka\xnָs1v(2dUI"Q$p3S!>;䷼Nl9I~[ vee>~7AT+?86%kMl5 [ j|=>zm/*[IN]oq:“v]H]|d f WΞ+g-+|>ֺ'5G;)ytScDXF>4𗣰jH؀>^c>l;.rkn[Z\5xtߨbYۻ1I^H6qNn$烍'71T].aiwM_hh zwjԪzb5?&W1s˗⅒;,ɓ]t+W30s>N BW3q?ܫp$TvL$jv'3e-IDES | QcT{F|F/vYcŝWflAmZBpAGl`m(TS)A9hZlTM3"S7RLdvs5̐ƍ17U#p6pt{1 W"J+wB_\gdcx{RO5t*"~cShxHRDe>p3=AQ,͆n34@gqp{ 8@zu`LA+> mnm[.9dH7Rfw$%Vi?uPDDMBBT gY%ewӁnp)2Yb@*UPu5⨎걥{WvQs6h__Z3(Ǩ Ђ+[2/AC`؄3̄m9`$vܱ] )U[&&{,D߇19~gmrhl2c -D A!B:(~ CZ;JRD-YAO/~V\j5Dqmwz9o\BeVtxXtڀ&{l(@~KV*wx ՓQ vrFeeڃoM#fFMݢp2DFap!}s\(~uݵ(-$2 '%9UNE`D6æO?0kõJ/N:Zu˹U݌#n2dk*3$]o@B-؛DN2ژ g 4͈n<'.,J̮7E}-NQn UH"z<9@Ru9IF}r1u.ZaΨغsx?|5W^2\xwFddžRȤmpy {X= Xp+{Um@_na)vmD[Zq0ʢL6V}o@q).`cm};D1KLpe#VjDeя[A<س'[hX"_ F(.E"9w$)[qYja6.f <N7}8"#=Brrț#ih@)׏q8lz87\ H~o%sMinmH]x+!Z;hg# _[y\)Pw<ؕ'+8'Bf  fn#  ))qyX.um}^f+XlO%|J<ːkho^w+ƭXL'|qdfRaLpdLx:bkp1s} $" Jyz}RLغwpyz9͈t^ 2< AaDI0b`C#+&%ແ|Xi;[UGF}ǛDo͸ (Nފw6oM"hb^vzblm*F|6. Ә^MA~(u.B+:a)tP};'0٘}(Hte c_/?)|73|x}ok>_xtNI _YTe=GD`tuCE7 踉:ÿ a6 N, )~9yT)7AZypXZps|~Btwx闫.k}A ʎ6xTXӣ:GGĢ}=t^ߢƐ=kXttSV ztc^!ksM'5{c^˚'~qoѯz 2~+;=wq3"9@ Wx )NV9- M= /EqB@noH8C7kOeyf efHۂb%@WTV#KPC%W 8_l#=ܑ(gF2Lb\ػYѷsx-x I5\}xS?zz8sUAa( qq[I_`Eji"81T'*åP+P1YL19{-_&YѸB!P j38v?$YiʙF%*?ERۓ?꒐{LΥ+u| m)194e0$P`/|vNjޖcFU>Z\se)%@ȁ4?N6=o7˜IҾ;H_TAөT3eS:Lhy$@3֩Q𬞃f~l&j3&.Xzvezb*HVJ:o[Q#\zNοMHL?Rˆ!']Anux v(H!}l)qds/Wi64_DYgaBBP쫄&ޛmyLd-fiJ쀎">Cb-뢷eTѓG Ya*`&4$$IS/C0 ܷ]<8ZE=qJBȖ_KP]r[myf*Cm28g'^Yq<8r 4F_J6@I 2_}@,C`;Q-.=s;$ =$`wL6~d%gޒaabW__lB9shuzo sAw-Sz0ܹ*b[RS8+^ 5ԩ$'<.B6'Ϳ4H&0+ZԻ9C CCK42-3dd@n\5.Z)t-4U=w#~nbtg %iA$,ľ?Kd_vb@@H;hXKvm]RFL9+I|4[9Ȝ-!&V`?Bapzȫ\w|b5SI˖l/qՅaS-Zy}@IA O`ްߔA<8oKL"3jk!  ̹x4fTnX>h `_T8-PO?O'hkI]J"\X "T3l~-Mb kdPVSCT7~~%QՁ`+}&U6rp4 3t AjF~uuq+20zOe>em* n< )kGK'} dîOEToTVH|T0Q̨aZ1=)!]!i.?v͂o'dUs}TT'CU^0Ӡ2giw͊P򔦃B́ S.,ES&|,f`Yp'pǔ΋ n$)O\p!w^;j%$Ao(hڭ0r~/ӳ2`JUbtEcg+$I&8s('Sm&Cl,HIFF9 *)xj,&lm;9:4֍wj'dTbya{0uiyOzG:]eLm(#{cwNs%$ڟT зF(JTc*:-; 9$Α4P33 cʞMb,eN`;G"c3JХ"&wy Np;Up#?v@(dƵ33(FXHyv|+o*K&8\-HTtQSoVC&" ι%\61 l!!'1rkGcݟl?J"R*A1M[ߟUO:J"D]if?̒rvjx{df^ѧݙrI,^]\w X_NHܖJŗ =0э@"9jƛ^7w \/Updz]9j֦nHʢ *1ce`^>kM&f¬90Rʨv"(j;J92MhUo% )MmN$tLCc>lH9Ť|]3֑<CUy5AsdV`t,{ʹ~•\Fɴ רsE>߇ Q "o+wc!"C) O-d菖8Rm<ܘ+XsӠŸK1о{49M"BÞ9gIղa!#_|Zo8"*mޑւ_Anwm|gY̷m[tZ>g(fAF _N\C-uQI`^ 2I"%Oxo<8`q]ìg=d4AeJ:pVOhˡۧA~ V'S" /'&]B#ZTM5^}J`\zF)ZJṴBְ̠ q𗬒{%j vWa0UbNx{[8#^&S2NvG7{! uEh:!#Nd~FVygJ¤أ7C0P|ۚ Ly*F3 0)\1@}\5vN&ǗFk'ާ:DaǼ`z k(\bC(4")jjaNB#uE3YT/Z!J6\Wd^Бv*\ʙ4\ojK[!R}aPeD3p,)%FrVxS(#%/ `]'DCڏ ⏎}ALZ+ogXxz)0avpRt&[QMlC'.`9~BH{v;TIh"e$;ߞ ró]u(>2T=PRnK*~Xc'7g/N"gN'CKbyhFr#%-C?'\~V{zF'p:GhX'[(ִcm4x/1T%=?Z1/MI sj:S&N| [jɇiE`>^363>3a^Pd5NьQ}lzS$[_Ph5 9nehD>*3}3xRP0C>.k{5KѽݙkǛxsOmҼX^ӎ-9L\p3(fDѸ{xӍvߞF}f2?M7A#҇/ǕRD)-idf (i*4m€ 9ʹmը-h: ӊ,ɷuȪd6?pՃry=(Yv8r=j.rkH.3Ą70ט95"y51SwWJ*k̪#O Zs ogߊ˥Z nj^7MQdEz ŜC S[<2#Jdܢ]k7?7K>l]OwJ=t6|mpoN嫬Ed'}Y128Jo1>1i7'asT,t|ѝ5!}֫.)~/J?ImX3p jE1IhRmmvFP}kGq,72Sr<~r;T_@P f/](;NGx\~&qA(61 `˨.)f{zܵJ9 B6C_xH%}$݌ęXlizdD[V(!"XK%Kɰ#65`H&RSӀs)m:S*G <$BƓeg%隩J߄ [~r1ᘑ(FQ%jmdf Uwr"q_\SVH/gI5MIȏ@{Sxb==&e;?U&3hk;f3(Tl&uDR,djJ' uAsSwsy]2V!*zztS3z;IݴW:6l.>C@^70.<_}T/\0.&xuB+(t it/qb:K2n_Pkm_"m,Ol'aA\>ٝNiEPDˍ_5miֈn>g3PZ.+q H)jްc;F٣xOT L;,Dt(w*])+8 ǗkZUǢc?<'e'}[s 1'*w')l^3pcD 9 ۩6r+vY@Gh0g/s~Z w$.U#9RZҢ{qD yfCig߀wCISz^}Pd&'^`{dffPT>4\Drt?Y3(=2[>>Ӑ} 6Qv?:⬄5\9 }a ,pw/byܽU} X7Ȉvr oBas$PV,޹.28TJzuZKC1ANw>f|ի-ͬ@ M]G JF9r'O0.<hL m;A) ZI URӓ _v9V%ot"V#c[!Wj Ʉ*mI:5^h(Zy πݑbV[%YIUA_I4"7~ ʿ/Ʒ|I lX۽:[eg}:֣F:3"H+,}v@մ*;Ȇ )xF"T3!ys e<'<,6F |Ib<*ktV*al@EBPJ8+P,r `A6Z(W:;$ [_xALvji.b5B'(Hk#ܬx;͂j(Ú*:4|PZhd*,.Whc#X'kye숱J.p&('HLA}8$:vb#jj ͣ?Q\gĻw:0n o3pBt8H:3Rqv=eoF3~wczTt̀8 - %Q``OH-3ӭ;NҀ=Sww*nlciׯxx堖Jj'tPr$KX_.Ps.W} 0\fpnZjr"W}stAAҺ7ɨ][s) 8#욠~(EtII(U"Ts:ho6^;Brۃos=$c$%?*qW^zA {$`}/}M Te $+X!uk7{ ̥~sg p0P;9sYw ^-145@M lI"*X XOg%@ۜ H; AI[_ehږFgȌ08LҎHfߺz$Ï@C/}FLCI@39(8zkĨ}Fnx"m ݸw@bgtzw8}I=ل`! *א&ҳ˗g.G\J.Uxݹ]KAQEU @-kwiF^v|_c%}t|*47 T@D$>muԗ+&n2L*įz -xxKb.+\y ֏9% mO3g%lJ*RYa܏n~Sn9݁6U 1r+eD~M"}Jmxl10ra5'Q@;8v]ȯĞD:0^OSfvn-;|_duP~2nh)y|)vWܷ.0HnkK?L4G> ^V"56P]rR꫒h:Tu&d}ZZ_"۲u5ڂ҉g$% qԍ4+D$: Bu/bĀn?(tck[ +Q#["e\#v( `ev.^Ћ-ýu%oL&IH;}@3/`tW/LWBx=* b^/==< JI' ͽ JidͰnSx+\S`;kO$vҢְKxW/j|*Igt UlJIrNTa %o_Z 9cbCpeXY-a(BZԡ*_{WX= Oy57~bVe FO)Kl}ĚH*{A$^si*t PpK2mq'\'f*A 2P/@hO:M<MCxL> 5 ؿ˃Xu$<F6|VdT;VwW$ Y %6C E枅K՞ގ bmmMqBO~p;s &mȟpG;qsɌzs/~ *C-k@9oI$9Y|<[gwC`5e1Y /GޠxJ@e[x GOUVGWm;oX~Ts~Cv t1BNi$ݜovwSF.Ҫ97Ҵſ5(MhKF?)7A_21K2`7j_+U_>=YoZK%1"M*& %3h_mF,wY,g*%QמuJ45[2.ᜨM kRG&yӈF^Y8㮟ɢ.&j0fLI-ΎSP@$5 k ^@r"ӴR]K[@4єkat-cPWZ}̆WG>XTPgrն Lr? %X"uJ> m$zs h?ۥF/Yek:f$=.b8 s\St<[Ԕ,gVP@Y:.[ ׃23[i+[7ͥET@ ACbޟT{v.>y?tt1^pS ~q$F%KxkF 7dڶ`-Ei8͉mɞSw+j,HP'xZ4uO> [󵗸a *.ƛ,i:;Arfg_6;Ryuìjd}uԙYv ?tW>P~E[wn#la]WUuKwί'%.CpL.$}y6u@ ɟzL ^InE)>ܾJn $k(/mr!mx鉃Z3H*7äF;|wyrG~Kt" 5 *bx#t5Rf9` 3.^cA뙞Nxx,+D7n (YKUPfB4%[8eU%p7PeƠH@G<(JUƢ<t`{?sZ䯁|%[]$M8FEWWbr.~3_|brZrSz$#Xo9—GAB`Tp9 ;]mATG"NI#>T 3_3\?lf/YQd @8SקS˃jZMa7*p@1ELHߢLu4q pfr75 JNx?*3`V1dAq@ęH]=&.߇'P; 񰮿60omgě,gB'Vǘq<Y[-%ҏ=€-w>+o@ť.bwN77DޝC:!?lLBb`Rސ|Bg ?BA d:傳ū!ʹ }ኌ^2"鄭WB~@?ہ'jMz3[GjS!|q6M'?S}Y2 :KF,mqC(yFBLj)rf!Lֹ'4r`_պ1Nm4 MM 3p'={۹?G߄ _uUPjPAR7?*/BL2N聁)2޶1 Sn(N }S4 Wh. Œ5\Yvj2 =u]cMn!n4%(~Kk,jtRjAA~4o}*@lI6@3U d*<1)$CRG>=ϖg4m4X8zmWQUe\" "#+Ӓ%9X\ ώ t`6Pj3JFCDuJ5YbZvgw\<(qK?V=`?;i@:|j7}P:P;FY~du'lf @ƃ NHC+[ijH%2z2<@KZuIukUmNJK?w$w։$sBlr58D%Q21}T2ChEѣ9VnuGHFVh@2ŧC nٰP;"uwٖ) ^е+n˧9d)tzQbl b?q<ձk,`%_}e]Kr#Ry Kdd:HM7ޟ0/+pIGoG]oy!]KdQBP5{;tí 75Ht}n,-whz:[*ZQc1^̧_>rS3INO  M]o`X~G_1[akTKyCd>PN*۾SY܏HН-YuI->:B3щ9+W-+{,t69"gҦdxELl=5 1}O`Y hM۪M z]]E1`@|b=b?zq%֬@MI (5rO#ȡu]'Rp:ؠc(1qTn@G,/LV$M+v d NbyXC+tVZ$v`:"hh3D _ b8f]?e&OC.A0h^c 0/['NlX-a4B+,^ fw{$|:zbtiMu/^ӭbFHESl܌ LqQu&՘ ~vjcqT,Ʈǚu$h9-&͏ M xp=rx| ?ߜ:j~k}|iã}RmE# 6ZAX=d$ýImL7;;\/\UCDV $ L}r2%1w#RJ﷾3sj.˨1 ?'pR繉B7/.\DlZUȚQL{&†]ngA{~0)=?f KEI(nTQP}.^kÍ2Ztij5"үs/ ^< RA(tƀƚzOɒ:DGv1M5WRQ/v ˘$Ʈ'yUU>uJ \q$wUNJ~OB:Mơã% B;ƝRek!|!_ 8GeP%F [=D@ XX&2|JQʹU3:2rQ' f"׎Ry,_Hsk/b5tq͵@q4dR,N76SZy֍gs3QEMVaaʝTۗ#<Z">&d [>V!=xnXVI;dUd"j1,/WrTl2~)KMɛ-%\  ʑ4E`}f'@5 4⋻GOu{Q(u#;U {EYȁ_xc@\ ^4~!;&!9{A x=auATp~`7&fؒo\Jjbx*&'=NL+hQ>!jE`L|F/? cs~ tqi4Cz&(ޓ g*073et/]Cp`h-vZ :C Dhg$9߹YrF`zJ`iA*/`ku)]_E0S[%0 WS_5WZHسKp3fP2m8M8Mc{ UR~^6V,cJ37 vhtwK'1s! +VV;4kUI_]<ώo 6k 0e%MޓT m_N+*!C[ TMŏidA1xWa9#R6> &IʈVH+fꅙ1^.qmIBՃqf [ } "8Ɔ jO;Qݕ4vI; hxJdv$ÎqkfϔZߘWt%x?iYiŬ BZ1- \Cuzo% hŸdF[p"S^.:c)AֺcJwi2 J?M?'[=t'o/^UI¸Ɋ$+wft/'d[EWKEˀ0a8Ne1ӛ4.]nր , 3j:ui~f;8i)aHW74# ;|^Sm;?D!bwӖȆ Y^ׂOS>/&塀ꋥ)u/fGLcf)G~N"0v_ƫSm?3x)k XIuXd%7nPܑM称7PKJ,fZs^}M/a?x)v$c> җPZ%{ڞ@}]d;}I|O,r  ʕ3K|@CA#]f_CYx-Oˊ=_)|BM2i'5 ?&=S\y׮?IWjbښUh{!錡/Ys:}ʯ5{]=ˁB*H7++/P?3LxRKgLBȑ{j_I<ңF{S8G$ I&9*qP3<"ƷI5x_ DfGq>H荵4򏉽/oaE?J(: g̥eJ1-,(b#6aԝQ0ʕ2p=eӤL 8B)"9>ªk|F.8hE6d#]ŏ8mDEL A> IM" wo4H՗0!XmXvw֨l3SlBZW_ #:bxMehL#អ=kǻMFƹvG<ӌBȄuJpV?w>̛ay<<9x=+zJ޾4+Π\җI>=3%P~|"O& [GxbJz3T>]k:$"-YbF렢*ĕ<)nIm'(zJ8 ]%f + 9/G)P! L bɆ6#),'ހ_lJ7}2z~Ϛ8ld u-OMe- {K9Vx\JBse{yQC>D(ePg^ הx,햳dk,K#i1+0N ,%FX0YUs^;KZ6=sgyFi5C5G|7⤃}&¨j0$q-Eq1܃KzoPiBO):UzOXۣ ~Q]"? fE.( T4s9~]vrM%spy*t\5bRO8N5RDZq~I*v74 "p,NZ.8gTNϜX= UzF!-r(~<3KyM΁X>M~qȗ0~^/Qj}"+(ݛ }r"BYeaB.I'fqLK wP`b[L,R9 joT9zF!n\.TG7=ʹ;]%dHHH wHx0ѺgIVrABT\̬\K@e D1v >Hm{%&1Z_)$h .:[;l٪{*}b2‘=q qRJL/`(VݍM O$WGi4eQtq:xR!SovKpyM m2B942[Uo7>pGΫx0'~pa_dR*0 'r-6Jk \金MOOWyP9F n1"xVgkɻ@-xy+c>Bz̎xCCrNؖԛIW$]*Wd/ 2e*V'vWRmE{=krā]3wj\Ɉ޼_"̞-U-IF# ["9azXRc@0| y +s|w"ҏ"% !E=>]f,"Šwkc1dDO4;✃Pf)}A= 0oHƎ%/!}?}scAN;TEǜANRqȟrLG/lt pˑ4$_@)!zZ!g((ݺ㼥qEX dE,i~4r9wk4 #ɪjd$޻:~ն`,|c6k jkJ<i?o-"S"}/͇RDs)gpyV `Gl̺zc1%b>vtzxբ7/΋9Tn4Dg hI%F\bbWB}ݬZpv=RJdz(\C4ol)09^aX2ˈ/\`HIMq?}zf5xUж} ` em,o˸3WMNZe9+>{g۞$iA—xE?e;IY/tܑ;SVCwd1|_D^SX3j}OTG3Y[KvdPGkj8&5QxQ1ߕ-笨bD.t_c}{׮1ښ߻Ye,۾Rɖ+gR>[.нE_y]2.'yni V½]Yαȶ֚`JyQ$oO:V;D? \u+&~rY EYb+w$,zP 7tK!o> ~,:dLGzIn猕A{^foY/J|K[3 LMH?&tȐӡ< `ᒓf:ڤw'LP6JkkJ/_J";2 ?`O-eb>`ޢ=z>2FS^Ro"_)i,HӴmfm0$(҂1]n4Rż'ywE^L1}5t"As;VהNvՇE^?#oj.: ;SF{ ?l׃;܎B9aM[#0YYX T!-2o,X*&EttOZ=?S "4luVn&A @UF;Hc^n->B(6ʶll0re*]9{`ׁ*ɛF+ԋc8SC_.NFmsXM!1*:ݏ#VdJc}cc-]V/Ii}BN@]htjq!r=U6Mp^Y@yXUz+iOח} qw)b ƚPNdt3ZEW19\d]}]Yխ xޕf6Vf찋F'LBģTFv"-: ]NU]Q+2ۛG5uukqHGJi:#T>sA:ovņL:'bª+߮q.~zpXIlq.T \z]p ` }P/H<lx? tg|3cNӳP+T?"7\%xו8u7kc7'ÙhS&ҊU:M9oFZV@H N* 9bXMi,_HZ˦z$ځwrwHR#Pz)&-'[㊾k!fPnxA"}#sԦ z/(XH3m4@-IbI=0 J%oT λyZ_l.J4lqPB;E#c (^2hssfQ\[XS@Z[d!gqP5gq 熮TN_Wozg}=Lov骚k)4>aU{\巌ا,:R .ňQJij|)Ο|ϜVd04槻.aAX׆^(*Ol39z>xfo5!~#^e2057>7ٵH }h'U.GȋgzÍՋm*4F|\ hZåHC: 5dJ~ZO3f7R?K}g JPdMtkG7lLOg|OEbڄ͜pQ嵴X1ܪf5 2LӎJlNDʙLkNL8!@Fꅥ]cvp@6Lm,'9gd8HBF.[3βעe%`.w⒁R;Xm)=);zV%䋑u&yϥr\'%:R~~qg=rj.?\Aѽ)A_Uy?l^-W B- As@n8V79oe]ጁ?F ZEu Ҹ伫"UOauL[ioΚ a!S Hb]qĔ+E CDN^8öɫH=? i:Ch!8#yH'%RV1L 5!qj{eK[ ȥ#;YZI fH }J+e>b^+n `6 @EрZP,"wkodc%,~t\.Ѫ)o?PԆם ~΃Ԧ #j)fVЪ?,\i嗱ux TAev6>?b'h\+гCҠ Se^,6-[CH)hRzZtrxyqҊiRׂ,׶ 9?#*U}5ܗyǤ63ߚ~C&s4|y޽f׈;Bjg_x}2.|[D ⩪DԱdž+Bef3)s˿'e?LEP8z9Ib&8ZV?&w;i ej~EZ#+Nk˟7 _} zj``Ib+gw0z]]T&@HGL !mϷm0L~.J71KcHrY/n"45 HFV ᐸQx~~-"y@N+fp",c 2.hDa9TƦchB\oKqb<o+r_#Ю @Aq&%8A6C/TET0Hl(F({tCduw@@8p[xMC @{"u9q*EGJ=ޏ} @h}Qɚ7WPW|/"Ǫ*fp;f=CHxV㊵kO"Qil)^?w6mDBsM6%*#lG44A- u@o:b 2yKJ'2~m !h_~d:m%{wMv#p=C= 1O0-  Q>>? }A *:.$-!bqjqYviołмƅ3JEU<z2u0N$&-f6Cu“~e#Y!.ט*c&0|>+D~őNZ)gRI}~Nv{@Vql$e'ǙIqOi5إ^!Tw6͕]`.S"e+.qF&˧Y{l+9\s!-.VmA3:G~୦eЧxO]3}װZ?#6fKB,nK@Kv`D:hnݧ A3OM 7pMކT֦ SdyLkK|T;ӄ`hR\O^jfHR/Zw|Bb"`"Şmwǻ#dC ]99ZB-_oZ*>ElIܲx*m-1\2fI :Ѡ&*ݧv6j^y<%-x*dgb+!쉂=ji$k@!KݜN<&'#+aͣf(dx9RT?' C>=T$rLoM˷$H9:R:q`Yuv42L(Ak+z8o-;෈]# O1$G`@n }0ߠjtgtk`q>A lK?xEO/:w%)"Ed^,ZfA[5Dkikh6=v[ת60eq֣K?>ǜĦ& {?gNKOXT>AQV$Dwt:Hqp5!?_EE@FbkWu o`Cv/6`[>Q<[܈*LzBDdXD|.b‚=gr.gv@A yX kX[榐%@$6rG ˵!64O ܑ"|#O8[] R'ANDDqk8a=cDj9ߋCU!Cp4Bqu ̱^5Ո}* | (ܙ={$zܑ&\}A=#6R/to,QxLoy#Hֲ3UB[v y^VsL.!<&F5|7Dg $+ . E\mۧ^\Yo\VSFX,%t9 Ɍ(ExoYvy6]伆,ӡ)^Yehߴ1uT#{%)/3A3Snx />qOJFMN1yL,,z)C05ҚmxC} `tT,w>y7+.pSdiaM- _FqKU`d j+Y }K~G2ԣeI߹j[8!mmk2}&FRAvo!#K))' \dˆKA]P<:iLIAʶ::d6A A(*r 6jV:CZK.(3BuG`5My.Ҝ`ҕUGub|) bS ͬՈ`, C\v^~2`#[4 ~@ްY/[ztJuXcO-RM<炝o)=aʮ`k(\Ntj5 W'K̄pȞ#ӳ\K eJę tS ΁?AӃG;A/\]ĝxe'VLhU&n9QƔC![ǂIY.[8OXs =pd*[OoImzVwؚe\C0ge)GdDj〣Ԩ%+33*\ ]+PeO")CȞ>'kqv.aYƹ m$򃥽;a= t[w~*)7'kHs8 dc̳Bx0n8h|&TMT9`c6nn*@)ˁvK^:ƁZo{@ y~"CI&2ʦKyv!(%[[)`YߠB'g=BN#;LSc˕u!1Qn9#nC7$Jg1 ]ci .hrbɴ\6YelLaA%#z dKU };q..k]8za>9.x4]w9Vv 9\.ʝjP:()A:N,4̱[ FA@xslB}qtQ]˨A/,FKAZjsMÌz1 Ɲ4`5TSuE+D2_ZQ "=#y} /DHHe؄r[ YMk>TS?2lhA$?IŮ=6/[-8:$Tgx\ Y9@ Urno+3;B'8B!A͗ybIF*"3٠8bAWt @B?3[9CP(6*lb |N/>Q{NP =/01(::<{Y;bpK4~4[1zd, ͚dvyOE"):.<|D/JߺqHQXtH|pTVA|*[]d5 3n}AU`A#-5pD1:ЊTvU4BsN6[L* DssQDثT?0ԿU.;AhlvgҸ_GfރΌIO}Z0Q{_5dڵ:Z6K-d)(^aGMQ{s+gY]4EQK|(Gd';_ c@>mZH"V>ajYHw#rdt%^5䃧&=!7-k#QfGvmKùhN) =u*p:Ӎ&s`X@e162:Rh+S%"c}4*)qdgp8`rٽ]b\x2O %o"Q;6fES&~z3hC>h*oݗWP|˛ٙl1͗3'JcRo-@ ~&oLłX4't#c6]GA<<b0q(i0p Wvv2ZΩ tsDv 2apPO/]Hvq#{fHy7Xѳh1B%l n{.CQi9nuΙ`!QQ(*{p?Ww#V@DxfQ[wh^P>v\C,o5Zdu{*BaK_1!T Qr' J/6@/1~Lvt!DmGWӼ;ZwʎDu֖26} H{l1)}D0C'UaՖ0e?ͰWW ĐϙW3L#}W5C'Sиz79ԏM֛ S%CTtXNCΔw[v< Uk`VzШζuNx;\L]= K{qd-D#[_4lFcmmb}d !"p'(d[yE Տ Jqb[\Cݿ_e.qA8r❠2IƘؿ}$*K(1.#d[0?M7'8K}(T2bHb,Y=kܽ#]s&r0`okn lOyA":4 h~NXln7.*ƾ|ӵR Ttc7cp5e(=nQ (}Dӳ+]5yB OνE:luaL]P|Q1xG_%l[6(giMMS5LӢ3j;`p)XbFڲe꡿VV1{#-H:R"oi7ӎn1N08{jB !:4(惜k X$a+b&8|cd3GId>)qC7.faə`>e2YV3)oE7v霛^&s.YgU$VN L| a~<$bdPEX58Co($D9Z=nLMJHɍ@;ge) J; Sj*gT$>C z7@Ȋ]/(faj1G W4BG|qq 'xණiA [( d]N6vq4Օ`3=M3ӼɅ'ݭ9 0ci]+w:N4tD> dUS*>^g}+u M&k\RuY-՚P&*{EZ^`c kP06b뻤^n\9T%CvkDnT)TZ쪇#L'߯cJBbxk!LoWx-V,~Fu5E/>l≠mV_m8pjU,F^OI,kk.N0l6elofUt)>b&ʙO A@~?Eܤj;/Kzes} re}%jTJ 5r}@ۼ)jJQl/rh2)~/?:Ŋ_ nn9!#%N c?5}a*" 6m~d~*+9Bgh;`2{z+χBc)R1JWx29wǭYQhxl^,kR'Ĵ*J]؈o򙞌ɛZe% B^D޲h60W"'<^3g YR!dfwUe{Iz(Q7* Z{CS2:'$xs] *\Hu@.hսw$c1J/>-_/y&Pj pcm#t-TX68Tu34aawb T1[nڠ]oL3K3Vc_:KFo֓u _ׇj5p ~]U'e~rDJ؝u.A~Dȅ.'2vSrvx;Nao ->˚>]-<V5hs*P'G6( z*iI2$9 eOc3O:V/ߖU޼7"*: 8YDD&|M x ,"66Ǧ &A(עp~u'zfe8;bDxnpɁǸXm^K?=F?@So=& <ǁ7q 5~-xs4,(a"2Q5!}ҶsJ ZslKT^{CRI7{yʻ]xx,n}}X cb *Uf;82,WI4uB꫍`{鲚G0^} T1bB1\e YI=mGӺA<9\3?LDKk=Xgq_J:M8JOPebhJ:y1 ֩l ` 'gV֗f7?>@1hrs;7Ls M3q=K"h4-UIjFQT3Fv̸p.aW8!MMM„w RfK=3|Dd,@-g5G{O\B35Y\§nGcj:͇ _lv3]DP{庱`p[&dt^q {v@O Z-&J͉p H0?VouιmDz27`PXe"DGfZCgR$rR7x򹖲Xﻨޫ@1^ˌ } hGzE{XaWy(.9 GH}/Ԇ|nC|"X!qslj>=ܜW8c*;?NP,+$mO4utu|4Y~^>Lf|3cķ3YTߛ犆OqѴOS2瘟,4f^<֨ QEf)1jNx;3@G'2lyѠ\^:Õ Ew^yϗ/#8D>SXНla]8q/EewNOT{ 81^i9no1x0,RPX >&Bd C1٘6dܢۡR>x9!V$K>ndKe-l .FzWy}+}ґˮFh,pi;w1=W['Q"HS^Xb̢䢓DӬCf B3q>F8d/-f~*k:k%lHYӷ];_VNjM>%t`VʞMt;s1EFp׼fZoDg.xMBHg{=R$)^1=\] "+>L1K'~\:ʿBT =- tPC9Pp3#R9 :Ž_z02RJZn|0-[b{5,vn\rMc*7M-}-n']3 SО#o?kJ|>kPkuq&=vu2,F(`T\f7NN:kTܮ3/_}5x_=AB|Xz3 _3ӆlJ|.Aw:%u) CQVgQe>Ǯf "U߽4 ω5 [ނtm|e> n;,JTV)Mc:K0ת2 pR& mPs5WI!jh^#QF?/˅M-Xs*RojI 29TUYwl}.X\y"Os\tjg@ˆ\QY*DR8b/6VY *;m4_(LYCFv~=[{BC%yK'j+s@]%Ad7 $>&*0s+O53Y\ *@㊲2ŕ!޺f(&e:m.ejGk3Oʞ3`!-+P|efp1@bbj/<.om \<;WaJumBaKpQ9/lѷE_᪡cghC;hp쁌aTIщlMn)rUFku+"G|,ʉ_^hGnU=&Et=׹o,(xNPNH#4/fIƠD EWTgS-L;vkLA*j՛a5" T:ʟӥ.r ufG]\d:ˊ} u* w ZC,3CT齠e΅v͌M+CӘ=45T0%WX.4jwFatQ. iy2$\Wb:C6+;C$a`d{_yS{>y3Mhg3l v AZD%6^rS$zm%>d/xzr5 !7]~`dTY5,'yk2)kɰJ|΀ZnKhљHܸ*|0t<]ݦ`݀>u6U0?AjX/w^As W{ǹXaBE_X٢`4PmvL:"s+y U{& Ma𶅑nW@[ Z,E'|9jVA,GTV劉\z.jDbxYvܵǼll<.gHHY m#]8# *M|j: d8u}TtQ*.`)㽠0"Up& UQ_FHPJ۴f:}(T-"w:BSyޝ r夛Qȥ@FW?u M/:(` v]M)8ƽCf[Cq,lbsKkwԻ8p+f aIхr^B{("o١RhtTv!! 7 0`x $5ޕeb}D+So?Mc M͚P={1΢N^@i(wvayj4 #g0^|P'/jea fs'H]73SR!}x_@yaO\+ 94"r+<,x5.ɍg qJǥB\$! r]\Lujh.I Mff`Mj}a>0"zP h`@}=H|!-zsd ;x-ogCd l#?+ #`OG!':1O Έ,,iIϥ_ 10CiBs9V(FkiƗ)/Ot2e] 2[Jڑ/v"5:*䋽mjᒭ}K+P /0Q / }n?]v^@&25 uL\NT6ǰ>:v,ezImMOԗu;7gcd `_cZMi֞00RF4:=!߽>^w9YWZ$ŬVJpm*}^k@G6d/kbŬ,%&q+Hؕ$ruB.db!}rf TȺ~٠+z|L]Ķ ŒNyNօS=U^UXo|-%cw@J/jX 74km sЁ ZEa^YvǜEE/)"6n`u=oQ/**=t_s Dx%JV %$`PDw!S󢾷SDoS)ي$ZTL4*i)Cm>k2zO2$Mfft)4ƘYpEʂ95@@OinNSŗWߖz@Mj4A'@abx{炤<8E%EG??2NȄҬNHo/^ l(4;{,!!A>cKd{_2! ChH}+gN 4eNb J4|[Kف"O^TJq81زbٸ<|?ƚo #sAׄML|Z"2yLϚ ~Q#%DvveDL6Q߭ɒӾU[yNcflSV,ϕ@4[dy`2NELuf= e~9`VHd_0a"gw1^s,4}KDǒl;C-@J]nqʤSA[x[e58b Q5V 8wܡkb]22i,A0MQ^cQyB6Eu.*_ h|~Iw8O%%m#R-Ҵܭ fOxBۅO.CK'R2QVˍmoD\E0w{a8Kh3j ֮HCpxqœג~T!nN`>jEχ>Vk.,Uv Y? \ IHc4'T)Q؛J7Z$s | 'A͈KRƌr?- FRi,C*n nނ:jEĪEj U% kepI  D`_ Vdnz&V2J$h@G Ot&CC.ZPX8mx JzB>{:ă郴9\97dR;n _ԈY홗=C:)T2\`aK!*쳿~-0yHC'҉JW6S>GCH,y~n4L>՘1< FZdrs.!ͩpRKvxn3%N:JKs@0k$jvᅣY< * YijT61US5[ӳ^ Z' idN98 9R4 uVQ w~ڗߜs#a.q_4!^Y.csc*aL؅%M+i:]j0(պjO -9m=~`ԅmu:8K'vUocV0{pm=GӫPw̎/sk%:oՎ`q$^SeUS@Uftg #%sxTGT'.FֺYrhs5xKCA[jK)8 `Xn` Sv Y4 ~8 ~=mɞ߮S> ˜mQ`018F"V"7({G 2ӧ?rB@=9ivEb#v2n2pmAOd'帰h 8w1(lZfld"JN -XF0K" \[D495+eځd%}*HcLLt2VhVMi}ƾwM(v;0SyQo+=Cbl!N$u`\2fvI++*RQ`Q c^riըk#m#RbgP)ܑX%.}"&i݊wT`D-gZ),YQi:tpQpkP`ҡ#PFE!Uʞo[ [NÐF RqY>RᐦbiWHzǫpp OU\r@,1xPb{WAKA,Z^YwMOKp6tmM 7|im;LR)(GVV{*}}$RyǑx ѹ~N]m}Mӟ5CD94ʆc:AbA5 A#vL' 3ҥwo<ei (ئTO2/)`Gznz2o_,(A1m $H~ze_zx]ĝV_trMCJg&I5BQw uh3 [I/E&/2&mg<F ukV@EZ0zj5YFI.IQ]y6Z_;OSUHW xXO!=e^) ϴfA~eh!*?Djliň l[Hn7{FfYl *OFDkZR{Wl}U{ܷ|ɽ=gjTG}l7sEuǚMSMUf#j82n&(R_w$^fEpE6MSN9*rmE\@ʅ-D.{T=ѨN<}*? &9*Rp/@R+kS]Q#r +.-$ Y1oݷ˛R `ˑۢ7D2[٠R#iZ%AF B(G!RR6B=[_QXw?t60P``?Nuild}|_-r ~i7.&U. 4{Umv/2P@17 P< 7{USoeU;II xfo3d ώlxceu7@:_RΚUw3Mm\ަO!Q[/zKXeKpJ=t$dCP˝B;e9Nm3}mﭥI+tGL]ʪ@VR3dkQ>Geɦ#Ixb~w#Vqu9h_O/~+ysy:`']e q+|M znfVMؼ<&0pv+;^ '_b d܍lQ; $ $Z7 iv$J:=?ִ{8ZRK/.(uk@QzTC>J,Ų6֢DV8k:$࿳tՓrYIzRRO8G%,5eGV6J]z&B$D(0ۏQgdFaYL#ʀQ9xloa O>ok˵)rhێfrLU@ uDϐtת}v7g[a Aƈd6 DWs@lilQ=҈n^K9xr'.DB&(("!#ȝ 5#$\$T({fXF*Zq҅-ya㥔~im' M'ϋDKexj"u = Kj`nD^.-WG?(kyɦ0!Rj ُv^hW]M\5AڋP~OAKmqIkנUf&-*/T1,-H^}Mor1Y`"I" xݙGjjkع~F7i^Oxm" FYJtH(P%7*T])YיX_QtS%n=K^ YulX9v6ĝɻ#/ҽ*:@<ԏl O q 7svk=B7b:* zJ']aOda]z1o)cѮH8 =iN00EҼ? Mi?(SSUfQϞUȊF2BNLi$n&Y'*UwP5mlFp_H2H;˩CҪ;xC!zMԟJ^1MU4yZue%-\>k#ɀw z΁J7]SpJr.7\YQ05ϗ?]5;褪-.b?JîZ9wJ+i'ƞXN/咤`]b𛏐 KG^M=Zq&N(>S}&al/J@pb98u0X GӜO;%hvݷbd&+䥖4dO+y[[L ZZ1i&۵Wx('*չK,t l/07"TӅ?ƹ]8H,5[C_D-)Ex*b>#Cwpv# κe ^$JkH Zw7dw W DW1OoPg@>;G@?d/Yu\̝nGrS"=L2RK Q2IkV\TԖY*BI%x&oqo$s*)/ oY0)Lƍ mE+Et--w惣ÁIXc;K7_ OM"A0 T_D7+jbul‘>TnJu;dkVɶ%voҶճm3FBesN`~tѩ0?KD Fob[}!h3g8HR$-IR+, ͠:KO >-Y`U?IwQjC7;ޑ%nj"ʌ "u@^/g= ޒ>mD- `]KIT xϴ;W'5L9 {kZCm@K๨4`~eD҈;\ b/`k S?Au49,R3 lz{Fm}Tbw?$ma1=LTSl&%\:aFG ug`8L?q &ȊojZ1R7"wIϓ`$bP@@Etp̦-r Փ0[Yž>`Nl͎4lJ]G,8A_ULʀ]ধ z}]0v }#J M{1 a+51FF'?x@ HpF}vgZ|b+w>(HRs=IlϦe?Cel"OEع*rz8J)?zmQ w@7C}ЋXb-;~5/{42f[޻a'.;xܭm$y@yXe%Hdñ}ȷܶ fPRd|~bdG$N~E\#Ыs/Tnxq%O+܄H$C^O"}7! hp]pK}aiTu(`}6BL{}sKvA" $4$?$s*~lK?#tc+A-]dCsyPOW1^:YKٔnxdV"H@l B^̕ :Է 󲧆C2\i*3Db7aҥm豁(bgLwfŠHRg rO<71D whZuhr͢ L/}Z eU(J YG_gT9Q1q!ш"{ʵ. bL7Eld%wZ-B+^zy4%K\Bj򻢈N`C3W|DK$ ?]W}j cꪁJQ5z1XZtb bҝT֞Wni$BB_Ňl\E6-0Kk5/ A_h{4$ӌP> =3mLp=/90zv9ٓB-|-0%"am-RboE:EÍp~>C%Q>*CR?Gg:;BZ+d-++9pi!60o r\QBa$m)C.Wn@?ki "P%4nҋ=Enn0&N0-, n,(IW4u9fC2:4pmo&ՒU3 'r^}C q<ɎU6(|7~ؽe`#՝)phjNjr|P`*52zSA=t~HBTv:p4P?V[gixznGx蜁t7p۴](|8+wJv:ɠ:me5IلDko6nh; xز mpPgqwuC@|@ ۱R:(l.?E-JvmydM'oR7f D 0prv;o-zeGcO#ʐk>(_s,%/x55<'Zqik? En[~W_V3vsYly-" 6&U^%vr a:]V7JPp+@:׬Vʁo/  dNJc3j*j x-G=s9z^1_wsTQ(Xxιc* ԂgJoȑEpM6p߽^I|)'͡C^>L[0^׫75tF=:Ҡu~]&s:YP]rkcϹW0H !bE x>w%yl)TٲE /7t_ ->ćˍy//I wK)khHjb8E'A^G"wqs4fqB:?v͛JՠfP/~*>ֈr Oh<%5%W,(hשp6Hy+ٌ̹W#)ؕ@E_I<ɰWMe /u8DJ뺴\ [%D53Kl\ѴlFM%}#UYE@0:v,ힻP2]ʟYXLb>1+8/ֲ>6G>Gs\SЩ˶ݰG2,Ƶ$g?ju3 -r}D>] z oy"t)"'iÄ@?n1'{T6\"N4|VGe{ZPR5}Zw=v l ]j!TwD=0i%r45Y[BOֲiS CdO` U9RqܗWw_-]#׳L8,"DO]^5?NX߬ uxdڊ%5"dp`&v\RB6G;Gdɀ<m7;I4r Ȧ6Ħ"֩P!{Uh)-ffg{3|90iس_l*ovq:Ư/N#YΡ;h֟e9ZaѼ:^~G>[0C$Ե4O̔^3e?DlB8"hfr s_ZoӥӔ"<ifD;%YN =¡OgQp88L0͇H.}r )RnKO5VὸuwT`NHH3_NWPo)-AZfEQSW:CMAY=F/,Vd#܉lsVtcpS.Cquώj[Aud]!PIbIOMC覉ED6 (`vcbj_U{)Σvq'sS☀'Q1lMMuCc.Iʳ 2YmLEfx.g4WRP.5M(и?|19nvϰ#S~?;&#NBͮ+(!E8sGg!~ʿIqlwcEf?W'|TӪ76FJ#I/1.38 /٦=V>@QX^gtZH3fn$ Jo$( `.Mt%Fr DT x5\t U: PZ=&?YhnP6~ ^SGPލBf{0j#l8Ʊ6bq~m@Ã? dew=(\B\dJT7$#u^A+sf%`t-aXwP#.XHHx_.vkWvn8[(Tw@m\y4mF~_ { 4* a߈7甇l\:#~Ͳ xt˜ޢI(&R0uBS5HRDҧ} z:%py\|"v^RzhXҩpmw7g0T,qĺBO@(Qq5͋F;i~iL BZt(hPV TH_D4Z^G?w?lz MϵtuI#&LYIl )ΝdH8c`[FgJwn#vÏ>eQFҶ͍ 7Qz]5fΤ ]+jZm׭6ZpJgDx]qU+r^HZ(`3TnoU~!zI3RCu7. FAh,; 0ͦ伂> ҔNZ(6&x"md c1h_u?|3Zw*Yf@턓/,-1WT0Ç,qsRJiO e֜ynAG!@ZݨKITrfG")oKDEVۙ5Ж)HG] {WB'$ &<#V$"iՅCn\АY)05>4'| Չ ;ݎ0;꫈aYUKY6y -d.3P0a*gy_e[hZe~y~yY#M#gN„\6o<ɹ@ T-j/zQE@c/0a^2~=zN8FY8oW'=e𩩁Ii%B !UH#ė(K_:)GVa,+RYw6zv ;AyԱ hFm͓R:%E*]/<1f?H.:$"YfǸhu*![gPl FK߲ 2`= YMTTB~(ݽYNvقR̖֘<h&1Yf13 WۥdrRLF~Zh+OcIhW߈j*(Lº"*8#r**>QT_W~#r)8~oxtiT\мmha؋ Gy)tK [$ |Nøu|]yl:#**) "ר=`A6<]~=3!ܴXsRxW8 IMbcZ|K>bsmTz2Ώϳ#72VQ7q{DTg.ůjCU+_\GWFk!}4]%a<^I`I<@x,UWF1* {bކOm4EA#*9ԡdub>l Y*K ;jo9"h1[&UPLt,сΊ`HD(9[Ǯ9njdbe?& !@Qi~Ϛ|jH.'i~}%=z֮ }5Ǭ+cWp5} %zup̔/Y;u{X7`&bgmΙ~B<2xXwH4*u̖vxVi:sknb+_j]X 4D_|.ioKlBe;(rn.7S8ia7xWf5ܘ{]즒e zZBͧƬN1Mo_-N Cŵjyl> {ut#}-- m;3 )6"9Vtmwt`-1Xdw#Vo `R6mDJw~#9pwj`Â81{( ^Q)!oА-;u>+CbǻNם=f7\$ƥ8y(0CGv|Q9k:]K+n%sUϬ4H6V&7X&&iq$R]j8MOkJ8{g;;ZR<d\  Ȣ"J+Q,=væ]Rt1$gLu9I#DhQz4[J3{:nFޞ[ʖR.%T;+qD;_;P-.i `6EO[ +y˯hQ#;DQq=PFrk#I-~Uu{H6;RWL{wmƨZןY]RD~z:Bp!Lww: ɻE4)3""_ Bӭy)V1??~V odp T[1<8jj$0AS8HTofY\ ܫVeIʐp|`\bC@Qk9}Y>SBp1mqKM|7*n=4DD&ͱ]r6#!B1B^7Z.V-vS#Tg7c@830J(YBgt ^»f¶G(?W9`%V)A(;/ghɓN7jX-\6389$L vۂBdT#(I}Br! ?\ % ,"kboX>GsZ)O;^\;~{缁|3x@|?dq F6%(%ה5 jQoEv=njrW%ɰv5$GWeFVM{ܒ%ĺ[' Yul߭&pz4.WK6FаʌY!ŚfYB7DJ~ mBtLA&,r) >ͼ5곌|D#kl%+zfsrG2_ٖ MPU nNq.r #,a_O]nT,y'O~(_(uB8u J70׽V$ Ty6ab72F-^`M]J*({TnТf'`,⿵^q'mn^E2'9 ǹcC#R1/omDNX# (<_Z;-pWN5t WT̉ݶӆK%_] ])na pm^*l5W$\;h3:f~l5 D)*ZN,`kzW}przhZ9ǻK'1?XW $;%Vu,K.W4uӰlmu?=n,jT.6{s`.8Fc7W!I1>PP$gIso-h5D+l< -&Lt! yO$ٙգmmR}}u,;a NH[kqQIj)avQ)M?%'8*Pb'$3Zh`+.)6xwM(yRqftZT{X僞~' օɃ _>[;@\-/ #d1DˁCFFqrnYCܯei)_ea˯$^Ah~ҵqpb'Li. @={5pqDߊAfsr(wCp-NX~!@W//&I5C`)ũ 0qPǞF[vxdXRTfVnZ/,W;ul5\Joo'+bI!.^$Pie+󊜄 Xh9-wgp C{Jj\k$O#1]PXFWuM ]C 8wjwr|\Asە?ÜEᚢg͐ׄ}-%1Crs嵾}paEHW)ޑ+Z؛Wt[Y8m7J\se -44"ͦ#<\?^3x@y^ #s1F:x~KOU{},T&O͏);N]nӈ؂捘c:Xwa]gYP &1O/E o>^[M0FDSR|npqR^19V귻gd}+6}b[y176򔃷^ԕ P#S0"1Ne韒nqSza):yqhl&=-1?*V@϶AdC@-V%8(GdnAh~r] Jg ]M4)?)_ne,x˲FM"5vp8MD56+3ܲC }&'86GhB|*2 3h =v9岅Ǟ[:^ w)! " q,+n*>^Wo8^ވ5. qcql"1-'Ye>[һsz"}3gpQF:6϶kW}p!dbEٯl C' ¯Ў>LwL>*)<LLïv0`q}~~M25LJw.V\#X;5\|ckŢ: 6!h-$[%դHwд%xw]z<$WtM BcZ]]q%ƴX^e'tb Z9k\O҉$g*>q#CR>pBY#ԦTRV\L'n?ץ#HVcǻ24 u 2 eZmQɴLwB)DA7*z[xB,>_?yiH4;тݔ2E=2,zL<,ZFž<L{f_qgUPgI>/H%IrJ+g2%JyVJ)+9?>Dxn~BZz ɉj?}DᐽPZ (m`2Ei]p4Ā8DP+'LR> d,5?D]M ΔnrNN:MlU ֘d]a;"$>|W|ʻ ˍ3YhbަM5,݊] 1T8e\uLy9~=řQY[7#ܣKJ9ZuL`QㇺD"0ijk:>qABs@bl7x7kd Pu84]{q7hQq;&h$<ôu^_6~ pb X+gP7#R4؍_$ ܍zzrġ,rkt'HTc֗3/ o #/XC'5ܣ J#${qw+9\,'kAtQcǾjN">Yc@ L v@.Rڗ6N7A|RdbQ#tA}Ew8q5,CC;fYT-HTt$V(a.`+j!c ol ,^G'XLmDC̒w@AQ U^K3Ƶ|Tob92* Dﳞ!THo/f=޿s}p:+ DS1kwPEzT)mh#Ʃ&G_%{Rpn"Nlv5C<briգ_!)-1UƯ][p ae}Al/Q+|I^B$\8Wp`D%l,` !#]j$ RIIrU$<}Fnonۜ UA ׿R`3ϥr9Z5LJnAPƔ/-J6)jm2~FFqkM5{ _j/ݟb=~˛j_XOl<?zxs{uH97ZU\viޓW ̅M/ՏHL0 I01iI+p5Cz0Ek"gr aUFʇXaY*.?ܲ%r)me>š$n9|pRw+Y2 G)|M#cEFbU/x]*9i @H=bgLx}%!RܻeI?;(0cSI+X$*J#Lmhx?4|&YOrO->0ṉ]&l"t*"* e3 HrK9AMYP:-y՚հYsE#P,DT67`+ryAJΌGOw ,5'v阞[fO15rcP\x.0Z5*`~$Bis:|R/0R:If'T<#)}t Ԭ,xBp:od2҆SQTuTEl*]޸Ң0Hm 7%GVytOz1^B5u6{JuxFL;#!e4=C2"tQv"g֎hzז qUlpVvs^Shk=*N\i_XǐOӑ.B=^Co[Y{ y#(dP$O2YihӳB2-Zgʠ=lH-NE xMۏ[?Fwe0ί$=p 4I4t0ibq4<8H0o0G?:Dxv]Pz=[ZUq׹P7F_n:Qڃ'Pڨ#i*tSrdK_E#5OY}/`n ۳ Tꔸ[WM I0ipQ^ۥ]YR|Y`Aߗɩ9(={ZrUY#wmiQVhA$ʪ z o 6 +*(# h{'^3ON<>7ߵipWWv\`ҮdNR(E֪"+HeJ'sQ C\+:I2)G͔!Ual3@lonu5m#r|Qy@pu5~ u7eceLngauNl{Wds1RS'M)EqBN:ͼAqm>/CZZ4;&a S?p0T>P Ʊ:ulY3̂*$:z 7n=D\ [n4O \z}M-Sf^Zp.u]Ezq@YD 'nԹje G|}ʝ&Z;\p (W +NH#*WPPE"zi",L4P,)W`g%5^|pQ ;e>{` =n˺k#x#tGaߺEN;'B+cKSٯ_WB}@l)E77⑷ ZJ@?R1m e[YV?*4Ô[/x;'c!5 rc*U2Hb;rPx/eژnN'ux>Zp ֖#h`o")])e ^[g&tvnkꌫ+A=j΅@9Pt=+O@ ݌5_VtJe3Z*Oe nfa>qDZ#rG1[l7-@6fl1Io9h0SžiQn^ 'MoDMPDDAh~*'FŊ>E@(긋oiU¶ g+,o%iRh؅$sXf\jfjq.(t ?해Ck/]o)+'Zq68!s?g!2AC}s-֖sHE U*oЌKQeaIb2\%/,< :Z1 8dMBJx%Hs|W94G 8mx?1[cf,@Ā(8! [}0`\̺ Uܨj؎Ob^|+ڈZ# sZuX {UT{'a]76+9Ҭl@BLuQhBĿR> 4яhcfT2numJ>ޚiW(nYYsXF1hp uViO IB< }* iy=O̊(\ IoJDѲYl_fTaŇ:7@g_к[B|BfFfҶFo#vhd=&`)Ϻ ɀ~qFQf,'S|޾Ȝ#q>\i/jZ>hm[hC[{+3O,{ljE)|4o'Amb*r Pܭ/ 9e3nA㷧hS:İw•~:Dz5Sh,H&MT'f9V'pa Un69<wypx,gzvz.v uJ%LWց&NբS[P8'#>I"DJi)uew RoIϳ?m͝( i~&otl}[ }(1QG+1)"PTWO.Gf:9JzlVG5U6կjX9@S&GQv,9+",N}2ƃR8lWlv2.0G)A!$YZ`[D$N>V-?H,h7Ƞ*V=5Ys“SybG,FJbc,ibeol*#/,Tmlgy,[|Ag^\yŒhVz!wj@=xbfg3_R ܷt%?t&5`'wZ~\j͖G sCI5d->f7MsgO]%edu+g"9O zW t2N _Q&%U!8n~Em_yb|G=?+}WCAI<UP:94Qe6PK90#Ů@͕a+onqrp1rNZXD IgpEfwMjGbx%|zeںH\F#3 (^rZmk2{xKG_Ǟr;=wߪ!c $GAԛ5׸ GjԬ\ߢ#좄TJR.!:U ?x/<0*uJDOIfe #p5)[RНllIo=/[tK|9*$/t `!0<ΨOK@}f@AU)Bp{SKIvHTm!\`Z4Zyb&uk=vGeOY|[U˹Y2cm9&p[<ⱶk,|ɵzM{|u͟50')H7e/.Zu ^KT&rQ%cuˑL|AgjB/iaMWζ榋I4V@LFt5 w| 3FCGI]A|z_o F_k _aYzwn[~ Stcb>-yemMAȹr4;P) ZWqK/^*F`,v2 ^sg,k(s':]*4 !!#J(L{lhŬhC\/QIQٍ^jsrۋTh4mٕ{8 `v/oqs^ hRwG?ʪ B˪ggCS}`̄+{6oՠT~#4;@9T@J={_a\eڊl\JᮏVP @iGQ"@4H4OtQ^-59)k~vVL,xr"_* TRx`8"srOUrkE QW@PzUI+9,qqkq6W%uX-`sjւ6P4%zR[eo֋$;RN>J~1I Jihf-MK qTPܭ,e亐 Oʖ%Txt 5Z8Ʋs5b! I̬ RZ?tFɼ琉qjCg&l4hޝWH0{MS z}nGdt tcWުY8R]yc &1kT*Ml(5$V'IBh piѶHha&bd!9T ʄ$:?"ߴҥ]1SꁻsgC0y +Gvll7_Z"Jl1#habuQtc5!vh5E9U+bn;r4 yR؀Z5]t!UWZ/&+ΚŎi,RZJ;.NN@ۚv L<'4"鶩Ի)@^@O+K be5 qV1̪DGk0Z?gz3cATPri!^@!HM 3~m#̵pUZ \!T͙8&KesNcO0ZKɧ~ù>y?^Ld<>(>| Yϩ/w\u(߮I厈yeJdiW wN9[ڲwOSLT`+E-\v Z*;=} !QUI( &x4@d:ag%-nza3w.yfejK􁳍矾&?Z%+>DY p1TePϦ*1C ]͕{ytM!>LM1u'9 Ee= nvY[^rfe AI;,oHl͊?[τ5 W֫wO@m({Jz#æI,xzߞbx$( X%a+ y֊f:.ܹ0]ʓb1dj,FVX}NcOOBj@\k;Fq_w/+y): 8Ug A2jڠSZmթD"Qbᾌ.#Σ~qW7O-蔷{u]4:fw$̖w:Zճ%1>bm۹J8^'/dE tUpbIC`IdJ%#&9c{"{.q-3-zņ4- ]k JJ交N3{GDz+򤌬+>tk :}<Yȶ3 #["Ed|rұE\|A |] 8TI%qm26l|d;j+#tϳӻz;4'$g!z`6o8A\k H:wuk,~!7‡<0Pid/jB˽P+N|-ȸwV]k 󗆵rW .>SD|^'1Q{วN٧LF")x:qP(j'I?B: 5ڙfy~8GJ+>[#Unߓ¾?e|. $+,1ľb^%᠁z.Àwp.6-/@@k)',,o7"ջ_~wU,Ɨ.SYY>rtIٜmJqM BQb,%tA>MKߣimH톼Ϭx"n0>Nd-:.~]'Wk2I?eO]_EY紂iѼ n}+Aֺ Ī2 :D݆;gN 2v\EsT}_B@7JѼ!*tqPրMg\s5""pB*K|Oo )CCAyy?^C8?q#J,N,Ê9I*~?nyTRrF\PXgV&n~8Jp> yjtk Xԩ2I N,?gz/} -צH4ޣ,q-PP]Z+=zG=둴n$YqATo,:0M=o +e#mѡ33&D: i~sW pI*f?5GlsqJ59=bۂ^l 7Õ\Bk}W7Zpw}3KAPG6]JDjmf"Z3AJ hM!.s(116O^W5U:WqXq' ,52LA&_9 m`LEaSjaҠc1(=1폁c^$ q/qFP9{5>ҳ4'O/`Ipe@#/^I8ںXrlz9PWL6j8OEW؀g$Вy Ij뮯?XLvvX)bSn|@;(" CKpo<Ÿ],^>Chm2")WǗtLs IHwdkõ #kˆU~u^$;Ex}/% 4l;0H(bNX[/'b\foK}r\Mnamot( St˄r~6^\)Ŷ/@CeE+0(L3K2]-y H쮆Yb( W'?EХ3@Z24 J7ڌBKt`7MMJI$B7*?֑3\WzKB\l\qkSVSuҟsiTcY.o<_b&QMeӲ-=?$ߴӑf׷;8gO0T;Jv8*;N1:pg4i2׃oK[uX 7),Vmt?Q zG3گ@\ar,LMTPQ+ +vޡ}!(iYA`#Z#-!WjǷ15g+,%02yʽ '!qb$\ꆞx4z)c{tl [OBo)29"h&҇g% )=U$WLJ4v.ʂTog%n8,V1;4s*^ULױj/xf9ݳ xţN܋\] c/ eDXqg8*\MPմy @O!'4(0y_!B@5a@xWH|x)Q&0J67UO(z~⥰`7r@V.B5_T% M:]TtIjˉ(c!-O*e=-Q Ǿcq@Vr௮L {z*"LO\ԙoij۹p+g:B}2TD7Bݨ.t @2S ضȠX$PaJfMKrΟj@ה [,WH \Ja'=ݭ`_!yU0DDZ5h[M Tm+y9(FrЪi`DCui c @q3(xT1bgY ٦Q^)bv i;:N}P)\V l /Uhվҽ6Tp҆ġENvv[ivTsb ^d95/ܯ^褥|<D/9T6Z:iu`s1% PZ46Iv'YiW0s@fظmU]t2e}M` Wc'dEU\#2nNuj@gN8 Zgyx Lؗ2YaTq>$JRʣY]N"`:A!h mcŌ))2͌4y2'L¶.V3ݕ7SN ]b Nj6,'{#|cN1Rb3X|$ EM,Q?IRnݠP#{ͮNU1|/^ ]2JcuwNbisF6 a:@úq"鬾e+w,d GCm>J:p6q.*(+5VP=͚k{-:ahsBGv{SήHFn=$[=HK~?aX&ʟ09Þ(mp8mR„D]F@b^i7GWMӁ/R1IZL,-%|)uאqf*0ZlƤ ;L' NMN\c.m;E?| x~ S1t;)d ?lEiJpש ݪ6-'?PTJݢȉpaQ@8*o>`혶\Ei?M!9-ĺIX Û"ׁIᆩ#6D!ώTiAQBح!GA]-X)Y&W%25o{EL3d }::Fb!'SnR8^8M7’bcfKh_d&%^u?VѪ?>k\>r [{8u'_7f/~J0j` R$5>{ч> #A(>"m/yBwA#~ 2R%hgb,- aNꗾUyPvG'FgQDRhJ4Mo Fd*A`}ǿ~v<sb[̦=yk!Adc -s J\jŧˮ {f+~JnMvb̙:T#Ro$;hh^"Y+~}8( ; ~t;"t.UUpMmzHڰOEsl푣IKdT?%#HDk<=A n{?˖ZզA&K)A:<5eEL4gsn!t+ ,DKlV/I]_U1^噹.ܔ2SZF_v17!7¹3ݡȅ}ä9hr<: >XԐ )ZPd8P8nhtWX-XX.9[xdD#j!Fh " Ǹ ful"O5w'u[6ycϣ`&xmH|;mMK;3,A gK|rė)@'qO|SȢpx+" q@ר.0eA,ʀo;33 ݨq6v!Zj@Rd&2D#:Ɣr'Rokui 9%[ Ww0)!Þ/? qпjF9с.e4B@N>iYvIϨQQs5a'N3{"`XjX~jK$>*N dO/گfP}M[e^"p <`/ ]KoӀDKcVUo~FVH 52w !㵪$8,9>A1`MݺNЈtQ҃M})PIyՋ .և6̈́Twr9k#d]2~voB3y;`}J_?2뾗CEH $6>(N\^SZ[Hcm|, ^Y}D, $NkĎ yJ=%. *ɗa8eY-(.VG:fa%v v.}Yc?J#Qr50^ C|Au:Ѷ1؂"@"\ƚ:'dXJ^Ԝw x bKܑLiܪ):B={ceBEѴb.wT"koG}]^?"=R:?Z 5NS9.˥sUlG*FC8^FUFʿUXIhȣXmdP{`s(UE-š > !Izpդ|Ut3욪Ml)-wA24b!y`i DžDhSֆ;ķ"l8de?/[1se&l /01IlQԙSN7ߒrq 6ۦqs¸$BMգw'l lӪZDS-.[ɔ!pq宒1=MlYC}(5=4F8:G) G׺3Fg:L?i֠ *ǎtٯ Cu1paI|C&[U7Lh }jXQXp!$WIn)fln"$,DӵyU+B#].C;+UE7(:ҏ}symG WN|F󝛩;9pik | ^1C鱬<#{med+"I,(%( <R,%xz!Dm5Я1ʺ[> %h<Cd2߳(ɢDg"K%ədu-_Ue2XIU ˉK$q0*m|{Xtnh%:|_wixM5YpTvV06D4#+5l%ϲ.D"{N-B^*U:- \' ^ް# ~Ps~iԅF0ƌZ|kg(z3%!P!CL ROV;@<ѝk֡a>ټΉѫ'HaIlr {iη\ѲNs g)$^N?Ti=S\P!w \66dw9H8Ī O3Hp4*C,AYO&2ptNps(!@/,8uN I3)CBx؆ JՇ+,"VW99w h+)M D%-*9AU='٪k9 ụiP(OiUq[pt`6[\7\oI ay>&;]$ 3 W7$ef!1B*lዚ Ń : Oi>W<&cˢ^?gJViYJ5MMp@rX=3$`(l וJdtчD$zڲޱzj&33VF,LC"P%JyOzOeF \o{ |5 |\0C&m1ڼf6MjpKi׮2rl(;KRM»KejBKxX1[qwqO#Wr3\ z(nlEfEc\TLQuZјy&.>J-݂0ja=0,/GO鲏/M1"Цk u9O G T*ߧ$"szUGanG%nc%- \f&Jzm̻O6Ζ}!a0a` U&Aۀv m')z-jy<~_vt%xZƸpGI nΠ!6cKs=E j' OT|vUSBq*4F)[ M8^ <ޑxiTRDւ" `gw`  &XCz.Umڈ%> YK`s4|6DnyN8!:G._A_ yM4| NKRLgpy~q_t^4>B%<{뚤%"qacI[z .6˂ַOz{~Huԩ `ۍj>j9aT(I(dͬ&|o5եJeSoBcJI% Z`@g-/"XLy>54]ʗuٞ!p؈դ{˺VWԕyǎ2<6cs!\u~{agR1%rwxW+R-=k=T@S> N=,UԼ7p5dDmG8un[b U.:-] £){QVo̖[,$_~KETY?Rw,Q&yQ]:PFtVŠ~nO#R7Lf ]v'fz怮E~!6d;CS0 /J/H Kl_Gl.X Vʺ-T}}HƮ a.#^4t*Q%|kaJD{Q(9/2M"j L,b0f"9e;v COp2 !̴`dj86X$놀 c*3 SӾM"c` ndKdˋCf$H>(!.)/ov # >{Xe\p^i(EeKC&1aMOGbtkho)Hk^{&gW=.2vEê^mrl/hoRU )qM7 nI1+ސڨ<  žȓtQ7qq_^{q^{ 2GF9hK/{wQS,G7 |gAυV4 dkOXFMV\4CAkDWB ?V~+aÃ`ǿE,K^0Kye1CT탮`w.) 3#A.6hCPbơ࠼&t4) -0~kC\ {48k%M?m^^4528^y6Cw[<}ʼF+oBr!KtUd_Aj˛bz6bx$1tje̯R&} ~c[jef(R{,0@zf񃦞bb3@@S,T8 ?EzZqܾ X߃㫪V( gpGh·1@{]=Ľ˼? :[Dӝ:ɑ_I cKv3^g)AL^!(|kn߹7~fp,|5#KQ۴a}IqEfX,g\DD@t'3*ut[)MIE : _!;%-?5FD„^y $Xa5 ZqM@}>ή쥔CgSjO5v,lj qJ=?e;G4Zܑ5bnTfv-ćy>uL6wgs G]#ḼLBa҅/=(A@ڡz9EDb# h_-ӈd@mm^d7CEzE 4]̥0T@O-,|jY>t'd47/ySR V#ƦpVa81#*R.;k7L_SLgݍ\ӱ+tT)F |IyPD6Zݰw Fna *[9} }YU 6O&ʄsXLz8(>g#@Q|ɫ u,F [<]PЩO,;յGߘ MA8nی4d;Z?j[\/L Էy~=Ŏr$KPkt~Nb$^"B0Am!N{X$M(\b ˥F5C#m_Rz9m{eINyt%DX|PЄj[6`y!FHQ.'J%<ZZzکE;"ֽ/xwK𴔦D٥o{/}JdȝHoԣTBbq s.X-vKW9M~BSGQ㎜uRap$,U"ZJ&/` qi&_LhEgOJIU`: ;J> MPC~ˆ#_n';O(D#~LrJ8HHpvvwc^I٦9% K|豺1{Nًcuəe sW%?IA: Bʿ珸p7}E:6S5\fn=TwYFLJlқib y$m`h vi ZX#"i}^aY[kf3I#v6z*0\$GoR8`~y>3||BI&IW8]u#y `dNLuV]5U4rǑͅOe 'Z`z'ڃ CgNӲGkڕlY+w d-L0n$|8-5EO%FXIP9Bq}@9L_ӐhHyMwѮ!5o2cjΤt21Brު!6&T"%pS^H._)xqͦ!G$(3{eBwCMYіw;3V=BIE$RO!G RX&J4Ngpl ѩl%Ӓ$tpM^eӰjQSQᓟC3c'~Gxk:V|uxq+æNֆp!jUrՌ%%Y,!nK)ql}މwE,#J)RCt\gX@drrlG qNjZ;0GyLtqCیAU8ց,W1JF:^J/S=%ZTuhWg%hy#=Y O[7/ qOH~% `p]%Ȧ |b,I=}SBt*2J'r ,yo(>XDR߸𮱤a IT@F愗 FnF v:q {UZ5-'It$Q; {dLz_\\:i7`տ ΘG^QoVЍ8M;rj] ,:t7!+[+m[@z#* ,4Y{S6_'=(鲧B12FwAH b4~s?B/XK cԖ q n+: deyGc/{^aLK&gXౙU;mLw!rk YnV̅Iycc_Y]HY"UB"sQ;&̦:NLXEd/MiXc/ SexKrF$.$ &)ȏm _(k?#gFyX#W,xv'Y_f Z!^@^[y˺yV&.(Z_3+-&23oq,EAN\ 6q.^o$!$pc"ڒ5G]hr hPWZxZ`+[}8czv.z3yc QU->NmAK&,/c3^U.\3oF}NcH+I<)T`Fڳ7r0,,+{/QO+,-$>=EJq]Ghv&3 yC/f5PF#g}Wߧ=qlxq|s,a~,ex[yK1;YjkJ @aY&cCBGCOT%ɋ6ä$>MUqOU7 s@4 6ȄK3IC\RIFl^uqX$9,a̡9jTA==R]^zҴY%p /gەrc 8]M+WqӪ .,4ٔ&;਍>)$b%{W_zV!pFJZ GSQ2lBK.x;pCdX7Vg銵aL89;i}ffvAZEԽ'!Y%"P͂\ȝ8zK  ? a-( oj[i-۱BisIڭ"(A8uon J9ӯh9aİe} V2uҡy&`Μj;5iH{!V2ܫAc{':#>gvqQW4܏w'KNˢK5$tW`Tۆ8g&vo*Ɔ$٣B9(>i2<4\_(8ϸB7FGmIOMWAJqьW tϿ2rR)/dxB/iUKB@^fa/糓O"Q7/PN  tJ_3u%6f Z’K?G'?MmJP.D2ج_بtz43,4w=bַ Ң鮇H#X*ڄ t:/(=!a"EV(őlĄ&,4=."|u)#n'ߺꝖp~h(yM0 `BGV$kX@(aB^4vT Fyz*!ΏPj[a7d~kWsܳ8a4>Me"n`'q_C1c&㐝7DݻJ8 Aw@j#Ͳ'\i:gSZvf1v #WU8ˈC2;$kuv(gaϱYC<4iLky)JUf/+[ m* {"b-23ڰ,\"ei v8{mUG]F@Y#ӴʯX^jX뇎#ZPIx3NÆn{.U v/"m4fSg|={9AG,?*}z-.&K!y䂲:`~o Uno 4^wH~YҽW> aM9LBHejF:c^ gHN$bYB(u(%k. ( h'ZwhI:)܍Ã& w\tx0HX*"7z~mSb޳؇we3Ǯ"qtAP$%xSQ3 h܈o=g 'sWVǔwIai!F7OumZrte]CկX#ȑT=oDW&-SvYFE7[azTp#>G՜LX{wXg['+7C,t;wE2a=%Jb!! xa_kD!srVFir5@mv}) e " B 4_՚)d/&(TMzj "[?FfH54Uj8D #29X5vZK}c-tTi(B }4Ɲ Z>zPxg8 i_0>ΑCw }ߴkx6!b(@y,lIsrTTNV,sء9J"z3K`}E;CO-JK[}>nkE8<>`d4_o{V HG_PݔX; j~/r do@rVἺvlӥNf m w PJ4\I@*bR(n{m\v}qJ Nu uHSDF|BvPrPm*y=8 LZp:F׌C8|v2 wjcx.(D-pM~u_Ȅ\yތ=|;X]JV<|y+}-BuN>X%+yf^k ae%D <=VMN 5ЄDKkB$aY TzVuRTyE6Hӄj%aUZU%jiٝUkN kkK`MA\N{4[En[@ ^) ]~BT)BRC~=zQE_]Qb) =&OFaYs۪wt$Qp)&PT1Xf+=͡)N֍x']QsLOehO}tM,h\ԤºW Zr ')P5]O{3U<$cNc>>CNӟwqB\nxk1Wc6+~N^ïv]m̴;7N1bh#.P)Ct&k S߄Xoq8~]tl'G55bwB%l6766 @b(&:3(ŌIZ]fkr^T,TmJTA XS}y椷3TOObݫzA8jMvbc)hr(mO{Ir봰xP?A>{z_Tw*a21O~=X8楶KaT %/Ee@aPA[)8J;d#JΗDAh>e`HϐڶŤh͂LMQUUb_0I1 gYq!~.dw|@sX<b*cXFX4Z)Zk8~EY" 4gI 7?#3C, } I5'`4y 9%5ĸ٩MHj70__[Ϡ]z˕GwP"O2<+}G:"W f^3r-eSabOM %un3q‹g(_pc3u%oҿ٭\;O$=^BC V/9J+n!> \,#xKfF֗&c:cP:EX;7up2}V}ZL AX?SF9'zx'f/lX.oRvQ],DO*-yk1r^oE ZVʎͅN<ղ TS5:hMꑴe͢cZ@[FFJ0kSs_#bB޲و3zAPpGf!+U蝣b՞;u6=(2V|s!HP>GWh;"&_L?{;ͥ1/kEPNA k&"<:_Di'gZZ d*/;F±RdtMKC{*O9^؅Ѐek)pk))E KE̢uʻep(`w֜d)>Iq ҞZNd~M9zl qJ4uP*{UYX/VSgeh:_ԁ >?*B5?N"FkA D Z<𸛢7Y67a۾38jE<lGGQGt1p\2؎0!xܐO2q[U(%6M͌ h|n.48?ڇuz6mPW $QGxE}Z15@Z0zTy]aQJlOnQ=3YmQoŴ=@=uQn]3Ӌj0xQo; 16&0yeep,ʈ"7ݞmUܸ8>Gb1H!zvJ&fB7WӉCS}g>!3l KH☟a!{Tcȶ6a]]NO 梊8Ⴌ"Fxt9COd#t# Zb Iފ>aPhi8}W) P,uHIKGʍU ?A <8 P&7- XMV"ϐIѡ+Ӏ~T`ˌR 8R]ӊ FRd[|Pgkr@|9u>z#*38/%ZZp) tD Uxt dS lx1m@8Ţ!ߩ"E3tӺ7]-n~RPrj L?s:dR3Ҟ $szHr v(8 0N?;} $;Tm.Gp٥/wip&ȦR֜l?'׬NMƢeOΫ|Foל)k)4Ю (iq G[󻪗 Z}5u~RAoG)ū:֪OR&Fj,k ݰ?#&CZFs=L5zc/S†0}"(y);rŮg'BC XǛbzwJ\n b<\Oٝ-υۋ,;+0xy>XNG'KﳣA㹟[\OEqrW6d-ܽOJ|roWC$S0AZtv~,*@+ ;1dd+-Ѝw<JKi4Okx30Y#a!%ˇe5tEFs`}=p27֕H3y.;Apꮒ0Uz#Sw"]QۓiRzZs2TbwZ,3-y4=@*ŭðʨE[OV]+,%׵J]-w5ē0JaINGm=G&[ظ`=p}zz5mN_$D%vCV[GQ__w$mO SPo.GÕ'b#j=0j<Kr!F.[Fn16Dh$vzDBlrV-W{qe'LSSYɉ`Lw)S0L+XO"}#'C1x׀GM:HXr&<2T"f)nXK3#lhT .SfHZW5W@z#\^rgZLnjlL`p H.2{Lx N p|HM,r _@R<֟ c@M,MLdONʘ9rZL%j\?Cb-?U}VSr<#£(=Q.c3P= -l qn\{XA-9C_Ti ƬO $,V4-`]grfCU^#,AC"Up.N~IoІSqtY\c>k-VIHE7OoJa3צ Ěꕻs*'o>s0L x[y.`%SJ!+}{L]X֍Pኲңޛ԰uۺaX=Im$bc3"HPuϕqG DVʹ*j$In*o~8G“K y!T,zD.q6ʄBw]B\:xYۥeIj+(> ؁O ϗzgyZi_u'Yj!Kb~O~zB<%Kh`-;k{RfZ?858c=y,R9946…Ԏ*s$rv]VTύ\8CCM$>SnF: 6k4>{?+C/. m"UA ˟CZASDkFGyS%6K#5Y;뗉N0r-z]t.B,R$k-/V"' {5}sשr<- s.z3}Jjg&rO'P諥?ʼn֊xV ?4~BgT\ٜz3ݒ&<켿AlXSK4m7XO [_@ހ2c=o D˥ؑ彆R9u۸sXO/1Mr:!~.]3g2Iz+@6?k,Sڬ =xU½+)Xz!tIU$bÜlL_. N_V$Kt9O1&PD/ŗi(JDa|AV5WޯTI݃q}nEU`sRب7E/UY;|v8BI!OF/I8z?[ Mb0T>d`RI^8i_w语>)CJp9/Z?=žmahm2,A3S4htg#!6B~PBc$];KxTy;s[w`3_ʹDE<141.[`z;oXeو<+Jţ:Ǝ޻(p\䍃e%FSv?J"bM!vg3#\X,w'qMo,&l~o5\W W#TU[XcGq> ;zMnթmA{e-] yc/X0pl|jwM--a [?CwKt&B[NB[E]fZW\$26Z n'|A9r~ &.HD`<{Xjb{Ǒ@ y^U+nB5S?}~kk7oWGETGiץ[[ hs,+D_g>jn슳 ?|Ea= :I |" 7.gn~dݕXHYVT(b솉:\9ѝ٢7dd&wUihI0D:`PM1i]#t=ޢEi0K`sR`EZ9lq P7Vy"~EUwŋ$.-O΄ۊ86[sAlJϼ68N0.YP!@|X2E@XnAAcEPP܋ɴTq4Mpnc_]6̑-uTE{yһ죴v'ԶPNԂBw}4;*K" ?B/ҿ<5$^"E1ގ!GZ +&֕# MR@ح(mOg~ Q%G;_e1aP,y|IO2A/ #xCTnyU,Lc\ǐrV_:^ZaV_mLfa Ǒ=]˪AeZ@mi{e,G<0ߘWҍc(aQA}wBfxĐMDB&>7)˿B?5[ qS:\p8Ɇ؈/i}n-+MbTq FKKt1-]4`h}Z d;w'x)7 tpKL--`]ĸXGK1%v+=N/sқ<7ӂ ƪB| C~e>(~۵a5,kuE9Cly|tUF`ڱDpAZNiorU _#{'3difExR2>pϲap\(F)I0a*] glZ>$ IX3X17$͔O0#e!ƢlBm*. "[~%2`@[!JH4w"F}toZ-ndSv1̢_%ؽNvߗHy'5˶*0ʾ/hb//wsG;s:FZdAriƧLͽuDy%'#sFhzd YP]IJr$z;O$z#x_"ff3pIӧ8u~d_c9cZ6+CYd+$,W]_^6*5n1uJ_N-sd$-/Qq(&~('ݗc}!-ܾ:?AA緎PznG NٻwoZT{^ӕTW72]!Ile䝥SɹX ~=` *o lf\D m&EMlPJ45)jôЋOE{\·sx'R"j0q^Ȧ$ P4ʘh$zl+ی90#Vk iя<{|>MA|*'t^d1b-IWȕג-O[9}Gúxϯ Na5q謲+k4hŽPM4l6^;=$KzJX S*JP -k'XҳnSgԪI" Z`"_a[Yd@k߿Fh'jYzS"`1Wk+CDw!֓CvGfvk(h= ^g~~ _Τݬ$>4 ,՗'$\b"֋Yh+^D6K3vPPHGP%Qdꬶ5@ώl<ނB.y[ՑyӪI4l׷GAֱV\SQX@~߂@ +JFɬgw7 us^M}jqq߰iۃat YT)b4\,mT|/kNcB6p u t1~V"T~ʟ( i_P'!Xl&"AyTz60d2NGpC|#.L-4d/^ F`+7l*iVt~GA$^x'ͣI-ꅓCBDb3[X+`b&p0ޗKRSBԛLoiunG+Aw$ΖT²o<;e`&m-wo1Sʝ3<_~E!3>s[y0X :ﲴa#o?}ګ9aBD \W>A*0}<WvJ~C.YHlҔoeRjˮ^ S\.T j!dx1pkMpB'zRBewgJ`cLM5qS cVJs{iY&xaUskfLˊ Dg9]@ƎINjƔivмꚬ%[ #@x g}$Gd/P˗@2Yp."o,([ _:|&˟lu#gs-WI"SJER*K 8=N3;zN:+~L Ոnxv޷dbDZ`R;Drkkd6[(j/{+fHso0*K ,$[hsSN-38&ak954dY˒Dv%T<\R E-5o3^!ɧq+@ N.^I\'$Гm&U`yюB%*E"A_WlBA(H^UW՘z红ס KmyFziq.̀*L<A9Uϕu%\co7Y@@vۭLO1t gb?6~ApU<bH_3BM!:) ڱbI ;1V(.@DTI6Cp 7>Jk.R2@49|M$ G5*SQggxҵ-~&!rZ.—h}(5姿 =Ϙ/ Vno6i&XD G]{T3GEKѐIaȓ\w?˜*OA*⹐~RqV{F?p8/({١VXY%_q*XK%@UxAPF}Ht}ᓰ t7L8.qO㞷sx,ּuPҦ*̉z,2Қ8,%RqZb9Sr&WϝR}?X x1Z%aNycVeA Uiie-hԚ r gC}=%QߌgؕdnXW vSYgC<HbL G#2+)V,/MtJ/o>%<#yǎQGn*#).0V&ɜg;ȶj'R{pY6c<^JWN*@19cZ;hhĔ0#rMUs/ >IFBf]N^F9gp΄6oEAV]= 9lY r[H)3~1d2[IxHb!ǡ[8eת^Jy5XhG \ Au^>bQM1BH+V>g*6C åG4m&r0IB[ %5ͻ\Sݠrƒ:_25\pwX+}>`PYNfX'w҇4k({Sj1d)^/TI4B.C2xMMc"7^}fRr|s!qC2̋C2ltᚫġKքr^H;$򗰸$_C['lҩ[+U@1}OMnׂ0^`.g)if|3kr]$ Ymk2#[ BiIώ"moTKV 3TZZwU|uf!Z`ϡkT_ oՔ8=͠|I.Ӛ㜮D tϡGdA1jMw:*XbnKoL̋?K[eK1:vo_InR K -^Y߬QU|VJj=̒c${@V7L:"gOZÕXjr3$G9.]ss!3x~O=asGeQ{~nj̐;@3( K1Ԝe딵BGyH IM Y>3_[HѡyUR0ۺpV9;.W_kь,_x?Hit/#o`tNR7o.$Jv!zO hoؓ$R׆O}3[_UcX[]6b>J4֢K\\H p2lnE֪5NolP@-7p5 h, pձ:`[ Wp^M2vÑ^/vҭG&onU*hS,to9$| :De.滢VvE<@+NTAו C6* yy $ fÇ_m?7r?RQiҘ.ƜL+MM=HYk|".-ѷ%} TV@r\BEz0G4b0Y:'Zm_N[C0ʆkhsZ~aݕ-|љm.e`g"QaGlLDuu.PeW4yItqTWvyeSxj"tAQƶJ~{\wz }"J k #=I`Ep.'L9h2PL52~&:4~/15O2z=Y>$ÜTJA7|&!{WRZ?H }`t?ޕHYH"D8Z-Uz<К~_px^x  ]!. C$< |IԮ>#ep ދI!~h ;uU `=AO7H,a^ݝ^ əHCƁ'~%KW[_Y=)ĭDzqʥ6>Aڲߤ$pl:[G꟟!61wj`~ nZP@JT-f MpF(R)@}]< H޵PD;"lr|^vx`U،ث&'7c9C7SXPeLuk-*$oyIqv+^m 6-]%ZGؕA + 2ʴ`JW.90Y}eZ^TDaw1@epf$s1 R_ق|jVH&޹ؐ@8Cٓ *{~fb1p^e16m{"g#Eέ0`y"u" i Qt̰+U~ ?MZ}\֯yi"?'VumR|=& UW9w&׼YMG@ zD O'MҒ1Yu{ˀy(e^bfL^[OWvLR^*Z- U?.{QL6iۖ1|:$1fljFpr0Q c>{AO/_vQ* G? g}`@a9 bxRnhMU-C]rInt}N}@ZBcnRhAqNr*9T/=-ytouѐh_*h2nug =mSk\k,ܶ^кZ3"HXGv +،(@Ʃ (g;9duY%҅N "4sh :ty2C;)pBQJчBdPL,"~)15\bIye15%V)T$ `+$N߻R4UPt|2zPlVޛ-ŷ.?m\w!)V3N?vUS:LC Pu =pxNpdkhU9xmګ=51@%. 1paŭ:p#9Lj˲d'gq;!dj`IrzElms'(c3ZQ3|%/P1"I<0I(uJpf#11aWrdρ/"m/3F$7jTSfEnJ Yy O\әTHԥC4P?I؎ցo+Nyy4_6ˆ<Xv>kC Wmۊ!13R8gj Hmgx>?;3Pb_d[nL$ &԰7ywOm@e F-g؅#V+S7ꆩ.^]"m2Mp+b]7p|SQ5%1Z?P+<A%k-Ak[NݜF;V |$-, jXA:Us$4Ķcr lI" {~运99(5,u ٷc^@ S ٨iGA&̳JTt9n.#(7=Q~TX)YQbYGSqcA@BEbd&V2}S[) y*q6F'hmܸXɓh3J"/Uy1W`veȚwR`aw=٤$ X;[k܅BuNj$}`ʪj |$EPo*Z˄En'a0Bt8 `w1$^l'$IӖvEf%0dESBvJH$t푥M5"(wVn*U|5ztLlZ]Ƞl R_ T 4=}v}z%l])iVi'lm (im A6VqqރbBDϾkȪɭ) 7\ 7bJ?U'BPto_҄}J DP+ +jJ#bx~ SشLVoGх ,3riLR;a!CeKڅ!cԴS΄x0/ @,c;luB=fbBr k E*Q-mWbQBՊ}XZJ@GfzdpO^7j`]hƟیM ڋ7#8±P}8"Yjݠz1bnsny . bИhF(FI]Ȱ(R[vV=5 - {fq/v6>H1嬃?1O(y`2s]~QXO/y :S5FMxVIO6$fj3($b6rzLbDS $l+@fzy'Q[!\٫%vS['z.끔Yr_NL5d/(i>:35>RdiX(+ݎ`x"@蹹1&#zclSq?vN`P9nߛM}eyxDv:h~DJX޼؎ݷONީ & 45zH7TQt*[ 6b>{fOnc٭MI;q{st y1UqYryTfX.؟474}+MCkpxH eb)sہXwvW*ȇg0QЭb(XL0IhS1 MJAga<e:O7ugD)vOϷp\cdHo90~Kw2y6kxƤQd$# MT <}9G9= ~ b2}Ȑ="_6-ׂ 5(^>7kmZҋ),uE P-AQnE}ҏd`Φt.L9r6LGMUX&;m5i*ޤ/;!Y) 8b !#Ǔ{ ]:fR3ZIuoЫ_y2)T?8?-UOwuh:ߺZ!bEsR``5&IH|8V8;u}PM?YH tWm |<`p.㳆$FUȡ"ew_y1_^Q֖&y$8dWI7VZA[bY sKeܽ_@ 1\n_]lқTN.Nj.+YA.)7j!z˽|K yxC3=|kCWRa[IQʲt "C)_PlQ_c-X]NKm_ 嘟|c_4j jx}s7w8t>k:p*'a)3Gt 52BW$"wa:H_g5qY(GV$c3-޵k@_NoZ?[2̗ =i|Tp"1]V^T$aŭe rg ]6z =5C iH莫ncftAȅߟSS%]%߻nEMD+!B"W,3uTs8y}m7ҏwc۝*Op0Mgr 4}Or|_Ƥi=WP&R ^%SyJ.˴Ҏ KA!t&dQRPtb0^N"h,[NCL|" īIT&"KV _ZIu c'4EFn7,̴x늄WNL.AԢȸB c>_2'V.+Z*y{^5T*5@kJ0ޡL3H,֮<51K %bm=w!mJ3}$^r$rx4nF`SZ/RIKCAmC)͈;ώm=B\iw~uCYu^r2FS&AeD}FCJU:wd(+E|]bO^"uS^zac%A;+( &1޲E/ǴHHgYy9\w/?Uf,ޏ݆P+2D@gӛJjZaSRߐJ bp99gHs3gmt##k o_/WO'8=˝O oNe,yL2oSJ  i^@>Qh1zFz/YQBbԣ-b`"t_#g\aΐEaLuk@&w`ŒR5>C``V*oŴJp&Z3W\65U-n+bZ :baV uRg_Ă[:Mf569-lCjNnRaЈ~PbžkCgIyd*ށ+.KrД WHSf==8sXBj ed8098:Ä3٪oAjs挚J̻n iǤJ!śIQؔjĨ`2jxAH`Գ*\6Toi T^ W2j. G{5t{vZ\lLA9eSK\.nͅ\c܃8u!?պ1 "ffIiyS)(ΡbL̈́|qij1@2y9',Cu)0Z+2`CP_?$spe4G, G$Ge{f$F^g}){@Bey,}-@S1&UV[fn˫RHR>̬=aPuʄWkqf?muKu^E;uab ˡ)og '~>ضCF u%5+({U6g٫I7)ks7Xa'@(ˬX;s]{c7I$FPb ɶg:#h³-2ò>c^򛚳.(*r2 (*NGGGZhDFF (.}yT긤oJVZS9[hw6{;s.Q') /Wq*W\' /A N* 4[Mx 1shSSc]8*PGؕLdFe4U,rtt[ Q0tS뉀ݝX{~oB;T`VϚd;RC]Iv9i>ܥ+)V"=,w/sͰJ,^B8KS)cNMiF|;7}"M?\39yJz6liUi2,muʟ"hr:s^,Dg ۉ8vz32?ϾZ5Rf7]~^bYEf_;@?ҴD,ipwV2>F4WM:סrL6/! !RE=r߅%p'2V3Ѐ]{\WHSd p9N:buJ5`Q@r/>?: MBDDO͹A+垮U)U9&hط0wr 귗 .o!E(l|rRc"66 ~ q[ 2;a/1!S#߉އ>}3I*f.JÇ}. F6ic N= Nˈw Es%V:ۋS~02ۍͅQ T9]E  4CEEwessJ'el̮9䮡 VY0UuKh- -C'`/;΃pOTl 4Oc_pW6ׂ Q,f)WEz纃r%!iαWe2Ǽ`ΓYͱ&8MBdՈ11xs-¢+7 C!Mg YO㨃D<ԲTך|& ǤPR$7h=gMyq{c/D7C}svz0%ΪO s,W4JgoCKU"|5}D%-.='TSe(3֩,86h#y0hw_"Y&#*1 ~WrR1}0/%~\7jpv`bH'9Xא.Ά^(-T^*8Z_-߰r_89;vՏ>J*bSt^< gq">mo{9Jo'zt1`Ms?y 9i,$!;_ :cu~]?_9?E!ʱ+ \EnrhhMe +,:i%݇ayL<*W}cL1K\.$ ,boCW]H$7'XIB}b~1YtyFu!tu|f[.moFDQrAa1#50?jQQ#0CK̙/|dy6830  <ՁWUϧ [4܈cv՘Z6XFyj5R̀>Ja )b9WW˥MF!O;%;Oa{,YF:wysR>[x/$L 6I޲w,w`HJmNJQf^< TS_moCf=@TdL<1PpC Va4gO_MF6/?Z> uCu䲓u˽V(+ kڴFy߈ĜEoԑ?eg4Gз8:s:c(bl % p7Hnܖ Ky˘z/zF>ԦO7LH]գP8m^z~k^.&}$hh.I܃IeD .ȟvL7 i͏,5&@jmYKPcL`Qa~M;I=,%Sj3E/l!0OZDLqv]cp/fZ*!iz uNkg=4Z ӊpKpR3Fi/IMHTcmQWxծ3B RB<-hBaGA45+={?~;)SS V/ՍN~;yҔxsc:3aQTxiT8 5[![jOj1* ,}alXіzCd9oF$LmxO b@Y-}Q$WyWbo]3bu2թ>`M)'ks߈1 J=% ]^aUy8_ f9g1;߼X yvPvauX[˘Wٖ;h=rySnTb@Za6WQ#ܘ`3il3^pmŒC!\VZzxBq#lvr:^쭶'W.ut-j[o3WL żLp9]]FӲ0LGFN~SI @)ϙYǂjl-@ =fWg \ch+PU$ {=h<"nw ^ɱ7q뉢Tt >`AX瓷%ɨY5ۊ`N}Цq/+y9"kGj}}!?ʧDRLHa<(`G6r4]ۉψǝm%^ ʊiPǚeաh"[B;I& ![!'ē h ~ԛt!J珈+=oI CE2J)!M"^0Uʺ~DSIki[MO#: m.SUPL7_p+D7;ԃ:lR=}P+3a3-:L|o34QA3%+zWvzϓA1 =ѩ^,[{DQ&[b{*KN+0<2{\nf6~[ro_Cp+vgez` ͖l}#~$ Kz?u9>0R'HpOlwJԯg!ߣyj}zU_7a@Wٔʷ )[UÔdHympԒnѫڇ~kaA7׏{7]YeD}<=I``Zwӯ n,?mɦKC,K8rlFBImnYf2kt!S k_keG1Hň^ ZmͿܐ{[|aa/L9A6א_;FMF+u0借5T{FA_1fgiߏ/|>ԓ7n5k@FBL`蓴c:V$IO ,& xczi!ф߮I !n6}E!}y猖`]|<cae:r /x2 Afz~*i@*eWǬ0ie7 $_te_OɺkQXm?##ITtw5|X]['}G&^dّpd̑x{0enmDO &l][|J1->԰^yz7R],ܓb*BXԓu7 6; 1WneK'>$p!6'uC¥_~6-jYz7cqO1x>:H-z?X{c\qiȞr'7[;EpE-Yښ (^PvשqPs=;j:(GgD߭)(*ԞXZPҊW.GОذQ M8 ЦhRh>ght\HV n;4L!Lp j;G)ZEIUΊ ˾V]QC݌[XYD-#a{ijڲծJ^mI0CeQ?~?M0?xDe{jNΡi.AxV /=TVg7Cap(#.q3Ljw!9KK/%*[ w.x}Bb`\Ag^WnTa*ElƑ|Gr =AR/TnuB`.| WgI2EU,MHO=ueoÿp'FJ)uکL70^7 6i(TcTo|w6Jw\% hny=cX(A͞!z@ %(.n; W6˻!N'^P ?h'.Q1`k?lC˟(AZ:FfT`k `CY`~ q~4"p(w&2oB*Y~$]$>{ G ;dsa[(7SY|1􍛨ZZZAhx:BSs')+VV'L}NZ%(g}YUB#sQщy>Sz"Nrlap~8+ ;rIw]J k'&-i2x(okbKti6녇pjʋIBIt/DVopJ5# jIےdfޑp ]k=c2Nr@wPC6jlȞF;8B#,8{ (ӏERԽUo \h4]/o ԲVˑǾkcrX#Do`:m.~T&h&_d] y'M<ZX:Cq63Fkx]-JsgC29;"|dB6H)MK6YKJ-X\Y'C¼Vx1H@Fa@CwL^&p%Mu@~2א$cȔ|qɠ;tw=;]8"Y#h% Lmjr.4%iCl 0Aә&Bh.Y\B?C3*_#^%{Š4dLn֍~bl7cvEAF^2QX$T@h䥜$9U w5֌aLz+-(%P.+"Pd2Ho ;7Њ2a|'hȧ&I+pB* :z[ⓗX Q3MsK uP c>/ Q(,AEGqT?*"K#T% qNΠ +#i 3X~*ǣڽc!}!oz @S~ĭ=k8cڤ)c:&S$lT+%" "(-VIx؄Gc=(p0Ja>sGͦ{?RJckͮ[ 2T T\J.h]#uc9ʲq:X_~lcY3>N&6v+&?V SmxAdpKLBmu.>A:wG#n(%n h ul +h%Ҿf."KP::-TgÊ7d_D+s@7a@UL]6]Ry[k}l/ '2<\r'՚[\jQߛ])t]PAx)-ibU:fm[=zuChAU3 D,&eTC.8v XOWhvw4BNHţ`_a:&:òKd TCY 6铇 {?:fkNRl4~Bwej }8n}9hp7nHȍޭcPkݒN5;y'Mm5 o(mpߝBsPRn{j9iE";v>o׊YӼz'$0IC/oMF=X!>(#|בиrJvݢ4L|۽,xA>m̈́Jt9Z|7&-)&n~{{O&RoS#hp5ZQU ~ H =h?M787QSBWN$5Q ȥ5j5h-VdJ%I ?ËJeo1);1/yH (rz#cㄮгGeu:~TIh1]p4̺) g@ gI!(7sj-5Gáh@ht[~9T/ McsIy MxH-sP*{ʷJ+i`)Δ\yR]q&6 Yp * X!O^m = 6ڞL> }==8sK5Yr 1q[Tc]<5ۃ?d it#Լ< "3DݷM3Ht1F7?^悎LgXBBEߋQc o;%gދt3`m~HWj G0{?mr !'Y:{OIٞլSZ. IɶLoꘄ%䳆r,:~4ԗ3-CU e D)ur>Gxtl,+1@ үAe,6PAb!TOx ^۾NuF#gP@s)ƏTiG{\W!' !,=1_Hy~5r5rcdPߛ]6Um]QqRܲ(?r*b=PΗvM|KWN04/|r݁{*Uܱ,yf/ϕQ(T3K,\Nk6QwE/e(KH6ƟBYtT0n Q ;`9ǭOẅ́VxBu7oOS leQFMFje6Ѕ<6.gqlw)}7ǭmDEai@zZ뮣9\sOk #|yٖkO+RDV%>Z4=8˵$]DYY"v5stf$dDSj%:T} 5e6lRUm3o r}m9oUrpQv AA@I[- R0ܶ>MuvrT G(G*Rc/ gpp`=la.D#"8F6i;{q ]V\H&!`ὼ_UU\9IrڇqTkȪ*`L> c`2.Je(ϙf2/L0*RR08WEȓE0D22蜬Sob[Cҋ27p!#o$R!^l;]hKyv)3 1 ҍ̢[lPshBb'X柅Z~ۯXRǎ.nBKM6'"ь8Ĵiso8( RX [az#_t BʗX1e` ~m C۞r(hďlM&bky 9 %a=+Mڤ! ME))vE yWp$!T=Lۏ2{OyܬOqVDP >x3 -A6JR֔OrZ)m*uNbj5nV8V:?<իWa@8v "Pl9g5eN_ U_\ۻifTĘq+gkL?lTHYKڸ~8}il:$vŽs:mW]V Nsg #RBx<)iѽ0WpBmyG &X'$ޜQ0AoCΣ5KN&)\A͐wZKC9ȷpzҁB:5~5Pgн:ԛ3( 9qs7CI~sZ *Q;r%HئN)qeY.i)yԶVp7.s@%m$Os墓,QsX lw;5l c/>*~{P#CM9vL߂B}KhrFؘ(A`Sdk`@fQmN.ɛy}R* Bq"ڞMzII6tP_H1AP o(:~ 00fa:XX_HL`miShUŏNigH11S/ޛ $%`f nt/@MD- :}Oth=: 垠)xU~41/}ɭ+QK3,7nro bV)r|J`iXm;{;2]еfeOm4%LlDDU$$@`H=a-k,\;1ꇩK[!` hRrz6KSK}*rOgKmZheͽٜ%(v2PY 57;iPFX)Ǻ/qJR:)_l2QDkcHL 6ka9CPDe8O2}gD0-9 h6Ls0jQ`%Jzc?< nC 41 $rAc2@e( JhR9Yls`ⰗtCT*:}H2`i!.oTr)OdNr՚Rr2t3RqfHz=)/ZKc ]xa^MkPph~`Rb35<` M oU~Ӽ_~/*r"J{un ѥk p9; @TDpӖ5H5N@G"2֗J;EL5?]kN ^n$J"$7P?|~"oZpD#+)Ú>\#ܯc>L`pMR _1aZoctVq43D:NI؟*i2-6gn+#zĬpVO^RG_O΋]CkJZyCrq4p_Q4~3Jvҩhbkټx.MrָI$70A^H]:zwhXԑĿ3FA($ZTگa@BxN~D&Irag8V|A!C,*c pFױtJ! 6 hkPmD則'>{ĝ(07u@DKp8o޳;h [~mՊev?s٢٘(ě/l5]޸FA0a=gJI"XpGAIP`rkkڍ )%'yGaz0w>OFNR@NzMn-S/(7r eB86 $gXpiƳhyJXHE}ɭCx39<$jBG$ L1VYi7)dXAޕm t?1^=AΓl E>a uJrGׯ[uilW6fځ&+"^|UpP&yH"8^xt>~ _S j z$4zk.^>k Wc5ka3=GcWӀ ]zU~hKt~D˕&6jϡ;ײB,A>]Q<}n_^Ic%*p u24 =i@H$[x)*D#~ˀY7mKC`,^BaHWH2l-'a`-cT/N^brͻLC5IZ'\g8u_[N{te,_ˌon&_F޶|eU,yiM]UL5{Eq*:>LũLzLGJt渧<[#h]^*;Dt] <9S фB"@hOY “^ZI+8zcDYN[AC'꘢ J[ B lx\m;^ ffq[kAx& ل3g|-fnbB@!(]wV1Q4}ip[sϕتBz0J==7DlLkT" 4ؾ2OlUE82z;sB_YVΜ7![]U~;0y7(e`|]M;E-̏5M`Mj3ByT)[jsa-op xyBmĎ|ؑ_5=$+ghU8tǣjSrR;[~q)UZ94:0)k0R'૚+JWz`ճ͝?1:5SGwvK>ŗc ɱk^cg  o#EkP :Ͽ%Ku]eY cz ]?4\}d3=11+cĊVU@p YzRU%7,OcW9j}=R SLѹ$hEY<]I*7AW0=FB{42$c-fb$vlbp!3KoN*e[k;\YB߳#OӲˆ{W+djե=%d ק>@Dg`5ohkvN9!y ՙĬ9|*qX<<JO =dSqWͥBoEc;Mq:"`Pcxs1CV =/Ok:/Vgc!L?dsRVC e?+$ݚn`%:MCՌ@ӚmkK3nJ,er"]꺏_<*Ÿ)1b_tkVm< +Sx2:{*P61S*UEM2FaNGS<ǑgUBBOݹ&0l6ƍxg+H wjݟb"zYFzHj4ͼbdshzJm"[ɓVgM6™0Xs{*nWYH,|ml%0B3$py9U g{9;&Nv,NMj̇#P XOǘ!)$!*&QzjeqjI14|bJJ`}?;D0"=>;D/W6+zbJ8Le]W~{'j\N:tKB}TSv<܍z'q짽3_/7oN`B9 _u9͸RW|A.hXTCj cT:Pyy^ovUA- MJn5ݓP۰cSWWyvI? u0 2_I%[vNcDiaD ֍įO&Kә ώo:-;JOyc 6%0gIY1g.i=(G[?JF`kaVd , l>=?i .PB@=f$#{* ݩ1]o&Dž^ff̞?d!3 l͙)Ga/O RO)@;.inOr XOo?O_9-1?OԵAƦre,"zѥT,yj TI_zj*JT;-r g!#aJK+]s nGa2.z'Q"`WSaZ#1vAq;yO_ "7)e" yOFhϏ$FJo{Hv.RRKP򂥔-\YGY /ŏ̳5Fa40HVc|vyP%N(R9MƁOQ7rt[ f` nŰ9vޙ3<-גe_]#ξ:lF_!Vn+ ; 9X޸ @H 0s+Iy w ْL%+`mWƷvk\:NO K΃0ܸO&":üAi:"gw6,O wou)z ǰxe[k+ g;rs448k)XPHwm8gbKz&]HMww1܌BЛ LbiYK-UDuoG 2E-M|OČ~* 1(1<*꽧aؙ: X΃&A!Q=`H '[L{fX1v:wU1 6{#5㤗!=| ;X5MQks]?I #.^!1?e֚elX#/)HеZ<X/;RZ sOE[3EhA<^Gf e(W^O fm[KѻhS$Ici_ :M L=MV uJ8%"obš%=(wma.2Qklrsin ɼ[*㹂 lnɖW Z#5d2˲ 3HD|  roWaPߦY`*e $A+p?E"΅jEYELFISy\AdU[Q{MZ86o8F+ԑ1"'6L/#DֵCM7w4hn-T"1tq4~^}4XCusp>BJ( d@^G;Nh]m"Sz]cg?A,Eo;Q4(e*Ry`aJ_yȹ \{8,Ԁ.=@i)D: VbvɾLD'Y%5OܢF|IVxF+ccwBYmv1'fx/'Ƥ=Sujg;J)-0}W0;%@ƿ> $)duΈD'WJVSg'?QZ}3;z67Byؕ /ub"-9_FnцqTF:6]aojuPc}|/@MY%mΪղeMi(xdATғ(Xf$u|J&Z<{ZOF^$]75.k)y֏L~[nqDiSg\|W[fMEեIҗy'7yAܝgӛ8([ H@uasemdHow$oj6[Ue+1R (4`S R11; e9hC@^ĉOGi/h%RQzGv-=yw/iπ%Y#񊂂,y J OnK[ n*\ B/ZSG\)^mU`Xo3msM%$| 纵K7;nXUhH@%J Sg5:lym|%s /~O+kGnʅZOKŐ^7iod)87#iM @L5l~}{37rxbAЯW'OA|,H"FA!%کy;r7k긣8n4V$R$:˚ h6=A⡥3'n. QaET@uW-6+إj[w6"EV 3*mMm {&uG7swёrϟԾ2>&I,DkE#*Za"JT`NAU''nJ/\zұIz w`څ8 ߽\йlո. 5Z$ I"G`T114JIPT6 GGǬ&irJMNyT>r y:V= Ll|LT@?4dUWJ fT+/߭zPLY$ٚF{,q3?E MA`;IDq_{s ,gy49۹_ǷE?;݁)Yt?kl5{Axr"ZMjef+EٮdR"6)(H& sM \&b&^D'/?p(L̰whM#a̱,1<;:bwR!4,Ϗ-;{_Vy؅ЩZd%dg/]!6{9PBr4gU@WeRz{|f_t5*e?J8q5 e$༢?B-*"}' +cZT~izuB,SkTI\̚zMo D 26.?j m@uS-v-B Ě-֓;Hg\jWTɃGM}>E.E)j7M\ c >2x.ǍJbr[:{{mլT65mYQ )zE/MVRy/oTGݸ1dk 8n 1njlZ|`L?f.gg 3 zEn݆VO3M)bHD0M +/kÀRcR] sLfm̴yA>0P!. g?]]_`?+?dxy4Hra1[[ab>+  ½ڪ$ .>n$g\TaP0 X#=ž9kro` 7@l]*$Iܢ`z.f76%]YI9%!@O6E? f*L p!)|̰0 Ջ(%U/W0xlBsrb%Ui>\cq:: "$KziA#̓a3p!MEUdRLTՖLll d%pNJ 7Ν̜O=׫CvXBս0q6)TZrX+{d<5LM*i3mĄQN&yUI fSRl{5YZ[%j0ȟ@Ia0ƕw8.rF.T 5>#?Qe2{?n%䧮IlUg`^-̮&_]%$q.CFoc$;-@,$㳇+XoZ_sW79<3cq1$kKF]U˩&"&.)9ꂇPZ(oJ~I AC77Nu?! / 8 F)P}CgWeFЂɿ*8CF蚍S9K=%/L12_xL1Lv񄊼5T3}ǚ "^8pb̰]ł?"x /,FbmT3 a R*2ŪR I5ّy9m.7 UW} PC[$VkDxW̌ۆ&X)$ [3oe0p?r@Ъ2B+؎'-ڔ^iGG|*CfD1Z &}6v 9щj0a".JQF sa;[ȵs\Ι8:n!tǟ7i]*MzwfjdH[RU<B^$[dBDi%a9[qUj0:WW# qx^ƳzUE{:Y22!9:bvtn~ "|Ńkǣ>η>c^dzv%!z{a@!rA(dz;-b <w9j"R@ER،\Us"r,.۔TYR=V()K4`ORݕXߢx[$p @mlb]ނ|"G2o&I`{Ry9>1Cڽb“Zʶ뎎A <,`A^1:@)(CQH|H <3`9yfw718wJ0Gh /\}]j"lFB|G"L`h$ͱA L(#~/[tq_^ē"o c|&;4cT6 p ޮ0Ӎ֊KK m/%D okH~ߜw)\3$Ȏ%:__A ρ$4]cB_;BINK_s il5s`8*in_jы=#bQ'a~J/ƒ p>RtM:Iv\6937~+'[>F2UR/{ϱX/@Y8W5i h@%wX@O6j Bo,w>KGP>l9 Yy'hWHT EPأY^diaHbBi(YψuB"`bMFh3shfCTcJ]8]'PNf "uZ,/14G ,76e^yxOp>cX(`xSE@a`aVa(mav7~2ëIDdkFE|ޭ㐠[ 4'Hi^ޱU{u*lsL{(_+["IJˌg̳ oGːLL$g16 8:2Dcl[EwT_"Uџ#.o̚TDNlwܱp`>@j EC=V'cn}}c:;ݒT!.&uNd`E_:xqTƑ!pgP[z]!L0K9C5%5 _7O,;Q\gdAr.A/fzAv(Wh6F}AOk%imq!X[cgH̥M3/sl^Y.[/P]`rgTRsO-#DD3m'|0W½F$B|4VF]>6Hz5~FޙGFjG3R@18,FUW` #~WȜX B)*[ޓrF9'h0~V/pw]Amaf=΂l&JG h H;+"$T:e^{L<tu%^UyŸRc߷\RdA_ܘ޺bfVCf g[wGz^"rڙYbyiLMf/pH`&D`DvO6XƘ=x;:;KL6R XiF1@XV/k1_鹜/x:*–OXHuT{YiD3ijRdHqmhe-n]>bE['`ooZB[DZN{ ZTLO&:mNPOY9'xyi84SөXNVP{<ɇk9.y^@6 VQo}ſDBzayYj 4 RG7}c L;4+gт}K7y9m@&/) *Jwb vw+XI8\^Dʭf6fx }I\I0rɵǠ Sg8ǖڿ`$G2L&_D2xܖjӡM0 ;қt,|IBjhp=!TEb^~<e7"U9w鍢zPl&=ITs&:@AFv~ˊz:=Zm#!;ǑYP?lK/gϾ̭ Sǩiyv/Y4"03EGFmlR$ރo|x@x-C>Jl^.efNks%iT{ϼbЯspDGTB \I(1XZ/yBa'>b]ȾcFAA`@몮 n0#a{򆩠hSdf8v SxP {{M]P6=jgWݎSRm{i?0Ӿ&!kI vz7 Ǥ)f7'q{ x{<=r_=\jf3\T)$I¥ؠr#͟͝p>_Z9,-PU >ߞ81 _ ITW)IPז}/\eCɷ5rWH,9 7TH K˵Vf@}{K!?9,+嵾kLDSqӐݻp&$GB;JrepwtQ'J]h~QX1 CZ}1 slEn'Ib幭?@J~ӦXRޟ{HP# JZoa#lf~qo4+GF睥`vI(ׅ/#kGZƀ@Q1[o? Bz0%=3 o> BMC>|3s3Z#E'7տueb NѡC!s&*!C~w막yWHҰU^kHKPHX=_+K\6Ђ:`(!8+,xg t -vH- ΤqqBd:QOdk0)kWdW:5p __?MnVS|LPĪ$wwz822&R/5 9SNn66 6a$0!/caUڟ QsE4uZ{uJ/wiF̍w@ua#dFNkl"}BdeКv)Y?n4 M aHhmE飤QQC:8~xHϖͯ΀)DЯyO_Jp .yu **vƯ@k_W9LEk %E0HfK hGE5|FX>g 3DDFLD]՝+I +:R:Dܐqhm^c@J z| oz(wo¿4h.޽)Ni+ 𣁉ph g35sy<XOzE /mZ%'II=jg &^KVظԋU'i5ob@4 !֭Z\%ac؇e?fc GՋںe \Rcسh5#Eu7``I/p($$WS׆>;E+/Zq_qw qGԻ*ߩ|JD!1=-0plfKZmzeyEۭl|㩻h[ 坂Y L;ja Z"ݡ4AYZ (tMXR+V7kVŃNJ/l;`BsA9DWcuг9-/pGp($_~kty#la;([_lLMpBo\CT5+$Sq8f񏛖 I")rB@,2d(>2XN=3/WUJb@y }Z+HW#^ۀ8UJ{ P1>7 .őHd] ɢ3.Wp 1~IOl[ȭ0`e27^NKR ^I KW=UP33R0kŖfgU=2ۘ]zrdZFȘfɳ)v;ks~ʢַ] YkpbzJӔ, ` ABU('BCwcZmmcc P}Ո˖xǝNr>^;YfW_i\Cs j"4nocTmcsXbƮvὄe^-sѵLoF$ _Aٗ~ğ4&4[NzZAzsOF Tj? x{ Ǚ " T|V bІY,xІoksFU9cyRj@6ӽQn65}0/+<\vp-@Q8!ۧ$Pα:nMj~dsKÄԈx~HX-<d߯$'Jψ%@ #*I*rg{4tb=#ߞ$ђ6.E}[1 rw*3Z0:ԲT#[ӾBd{DC r*Zt";Y.%Pu].yw,>]ܜ|gF0(v$AwK@Xa%M?<2Y)#oT*vn+a^uR]czjIWBϤ9IOB6 g`>GҬG:\bmMYf(H^Ϋ1T&ܰD4a }cQ N,-7p2}D)Ɏ@1ݲni-ηmnD0 ast6(3Hn_ ٚO82Ϳxܢ9Wi))lpi#:iJt]!ÁLM s>$vKDiLX!/{V"}J5V)_E(糥b&T+^afLlQ@TW<\-έ{xxoW+I$gȯAb $hBTC@73=F3Hٮ8VW7RU3jDu7vjGBcބndԃ(A㵁OtPXIknV,)G %Ο5>aZjlm .S+hf l6Q9Ixg"w"y[CwgWeǢ 5JGBtְX0)5sdBp1ʨT1W'br5qM*=<a_Gn0X8Nxo3vܽs}8 Ny_:qF3΃/:ç wSKwfה4ŗOwLUx \#d YW`TܐߗEޅRq`G wKЮQsi'Nj({:ԩA;ӥMiIf='?c!݁:Z#y}0}j}Bg9*y TI?xQUvJ.[kWCGēioWqKHtaBA7WݭBvghgB+A/FT#c:& XjSLx<]6ME4oYUK71?4.m O8*,"D~!SNTuhfV03w\Ny./ 9{;F[06̝&CDBQA0W(RfAkSU<QPq+jDtm`ڻ=LR!nGZSuj9j8n)JdKl؁?D@Yt?؀\lƳ_ѥ |Dبekp^wfC]zEI7CH 3}D z(閦Y?c8T6Y*luiH |C` 1~Ufpo 觸}Nk-FZ9VYYLImr0/f@P͟O']ѿu*؞+ypT\Cˮ<֠G#$D2;g ɰAiʎ3htwT d-BG0d$b?Eeb|f}@1#y"Xφ(`}Fp&Wl>XOLѵ"gS8LRěy !_ntKA9]Pלq1 P-ty7R/h8PV/GvS:v1#B\㫍 8ĀX-#NvvֆD{2vgA߁*`_ja!#S} %zkH]o˓4f.iM)vwt#~E%<5dپiy^D:'[c´ zv2?_GkoQ2$?ޏIYC_1 3$ܔw}6d_qʸjcnz[aT%_E4=J |B| c=X"ov"CH\`bIӵPMGn5L cE5cS 8S/i 5 c ~Y(GȖb "`b} Mho~zu2ηޠ[ cvT\lP4yS \z5$buY͹<ndp, .T}0(&-L.wMzm H'JrvAWp,_6#2?%KLzS&)Tf]*\CfѼP-x@-^$/ݚۏ"[,BWD99(e>›e9~elNxq2$o1?O3Q SX&3|7ki)Špx׸,xh '6a8O,@+`9h,JYS9-:ǽ{ΚOe wQ,&1nKp^WPo$D)5n?J+m ~s<:NY([ y w6ŧL`ͧ*x=>-f1螐eaRDZjTuݮH6eBO* eFn!XUW; k _Bk^e-ԳĚʝ9Ж_? ,ĴʣZl;d& ZL>g#I/ӎ|䕴;cb+z2Xz9g 1wM>W\#9,LB Bx:$&tnŤv$7n ҫg.DpUɇi/k{2$J YC\xfѿwV8ˊS!$)} oHo\oΜ aQ|ҳU9vdi a o 't#-X4JRGv\UD"Il0<>6bצmHדq'4C1t4C*حQcA4OVP=e` 7ҠS2*3U!v I>ͫR(s#R(|^ƣ݉{kaY/}Pᳯa@MviWUu`!2bJ#]o=*`zn(yilH.YM:aʢ Oɥc(Jg^܅`5m'@걘Hsg67 3= KcwT|G]ISK&{75US[ [/Xǒ5qrWcQ-|,d0_ a!۰K:h?BUZo?))j6K4&йw1  tԖa .[pNoӎ z)}Bd}BA^ erTY': 8щI3Փ t#Z YPYwa:EBz 4ÜzJzA߸WCj^63N ڋ<ß]>WHd{rX., L4oVTj=ٕHI%c1_&!>SNL Gur P YHS<4sA$LJQG ɕfSTIqt,!nښJx2˒K2;ɈH> ?~mWȉhzQ*tD ,VT5Ll~_hBCy 0[l ,̛.~wu̓y'2C'T."|";Z 24<^J|-LpMuN6Cp]EdNr# (%<,#A(ǹ>@?WmZ5S8cvXԓw'aSVWx)f熳秇/o̥ C5nfG&jd`GjաlVեt/vB YJLMֿ ( WH (rbIwIgٜj)4pj̀XMv{S83Sv~>.烌Q`ML~MRQ>;*Z ָDZeG;ٴg#!n)H(қD0wu@˞{ߒ<\opgm[+nuv&F$v_ @1}zEU;s\~LyRAzL#2/( $1ͱJR8^d7::6t͠ b_ s2k1 @dh+0C\C,o'_168 91^,>Y\l^@t)\pwOԘ*?KQ)l F^8d9 "HP罦 tK+Cm#_h/Teb0[+UyC dxYy0P sԧsv?9fUpw&8D E1i\l5ằ '3]aEjtJt܁QlUMW#@9um53[ ^.4݌<‵$jN{9g{3K-4+ tmЦdfNMG{pzy)=t]Y4dT.xwr-}־@7IhD k:UV(2N|ΤN)_X]Zq|%v;E=x.nX<^+ o7.b[F={lPVEflU*Z5(4`" up՛JL#"AR?*{ %X0z5Qo'HMk, { 5\<!^eN] ,\}BJ_kwN1-}X<_g46c?G7 ' f싽0f*Wt"H"`h[l -8A;3`k~U(+b_lguSy|ɠ\RbAErewx|BVc+}Ї2熧ْr>E2K]lI=/"cR'(՞ P)NJ,sH(q" $#ܙngS mF+nw^A |ҙP%B9ӷt~ѣ(V(&/ {q&p,ϻk=!~A \r\[7ݻ3ʝN> 1<Y$YNa!Y~l<.Yg5~<:~cnsIqS<>uET4mg ܕةyɲA (aߜ8ݱJ8MOA`nHaD?`I_x8zpO qݭ*/wEEWUl?%dzZAsPBC?V6Y:I_=~1iC'Ύ8;NQQqm.9CM jٜIƯUvb;WoU/(tk6Y%ބӕU> 8-ũ3qv܍[ N0h«QW^#DPG8ǒ, ,mjp Akf3=w%zWv)S2"P'*TPNxc`o(|@_[]cOޖm5|`af 3YTid-fx!*_]\g,cumn-=Vɴ/Np*bȟpخmXkt;9`3XpP[Dlnj5 ڮK܉uf@\z wFiZ x3Yca;acNMFhI)yDg^y{ߟݠlkF^pqdXA#Ô/Osקѵ3Zǥ&|ev!;.3U7 H0%KM i[A O`kZ܇k}k@$epgeڗI߻g䋪*P9$u&ܟH1(uȂ{HБ$.B[^Z1دaa񙾍"Qc +]M'f'%3gb:|6>m%eBbzsc''U],~Д׵MmmQ).^DtD/~Cd [t}`y Z? '̡ ^BG]ek.Kqjs+5.|wl4:&KoA"@%2J~q,qqNq %h0N|9orOb⮶dtE&sX2D7[z> K0PL}^R2n4R~Md$U),<$f`u$Ӧ;NŨ.3^SJч;||Q_E;f[ *ίZ$V+pr< \Lw1mRukd%"!JppiFb2y7UM'wۉcmA15}R/PVYkס#&?r5x:J@v}t܂G'~ uַʗR g$6I u_G؎8lz`c3^ӌ~"~DJ)iǰp iMoRKe0*?>z1ҹOWrhNb5KL*@jQQ#R~pQߙ޾ Nx k.ܲ)I_vݝmmG+`{_`׉хԕY#]6G v>x@1}Vrz$t$;\`f_wl˒߶a+iu<8$>]En'C5\6</L~>_Js( YC$)q ͧ:?[R@/Yâ#Dm׼d$ GHe^!CD#zS<:Xo ARIY,ScfDC\@s7JSof8V!ltiiZ<-\~ H AΞ2KC7' 40X41Q g%U'Q+kRR ʤƽ$^TP0HYokʧndlg{vqi~.er?4&[~%bxsftN5C{ؠ6t $巈7[(mV9rq*hR 94Xb[\%RwR'Gm#'5$;~9&@$$ulG; [v/Uɢm].S u 'ftIϏULN0w*'_uF '|HOCq/W[- H=VK In.] gv7h}-Z}ٵR0Ν,6O&dT9&$|.i53nbA ;8)սGWT~ GdyIQ]*mZ l5%FHVR ~#"w婪9ze# ޿t j ?}rV)K?RF]t jH ##m=2l!&NN$7V@LgY/\v$Q\7!zoKDTx:i$Mf}XsW!`" icsȉņr HZ@+%G].%Ʀ?lnķf얛@)q;;[͍MLy$ &*J$[}шX4C&Ӯ[ݨ#s԰#:L-HGV#@~+QHM$,2gX;I"V:+by?Cٰif4{,Y.P>ô.KK65vZJ Q j ZFi0R٘qB_;lʃ} F!yWF_ͳn v:/R0$C4 @bL*4gpoUYWSv-q$bכR~ˏ<EO F${=* ȺY8G]ӝx=u!'Lإ M7%;"g>R/Xa@gvJCMH%HsǕ}/_*I%d0Npwp^]E6jN @sYm]^RkAy_m1Z| UAo-#lo b9FBݞjo 3>_f xò@6հkHbɤBG%GAoGsEM| sJ(޸:aTv>TVѩ^Me/.ɧ1ZJj{Dm-&5 .]?h4S#Vmm: 7wт𔶸dY[*v+JġeD>:jOZ?:J܇PW шJxmVְ`[+g lKE*nv"aT2P?bI2Q'u{diNG`"첫OG؄v"Kz"݅sFy۶_ B~XMӒlUͩL+@T| n?7">xI]D65[:y[ iȲ4ꖘc Iݿ* W?416p[-汁$]-6mJ1$pZ!{Qt,I>sxxNbP1+u{i: u|n0BF[ \|r*G\nH+ai_n0at 9~i*K#Sˤn_ܧǀ,b=/l }3R@y~bM9fmؠ[<%n\ }.O:mBf9~GgL z3{̡u #bp `dGw7NUcZ{+ 㜱\DFo8 e \C2IU;Q ɗzl =B}Wdyg:ډ;w6Ǎ͈I_B9[`.#.OD#3_d2J=-9Sqwƕ"6iPML w ܩԣ$}TNCM#%2xU~68_'Aclicn Dm>>ig62ԋ7߷)yd?uפY S+evKTDO9dV?i% =9 7qկg vV!'-CTHy {oLuQkkr]16ǀCMS`GhU ڵ=#5lx\Kl M' !SL)0&@GuټG_YQC,ƈp"0P 1H!QM)o='Y2;I὏:BN8?In﷽°[޶A*YI6l ]1t6ΐ#8s5cIe!VI0 \YT?ۢ+h$v ,F$r eGvVÇZ{>~]\99rOv؀\sx_茈SE Jr<]׭7|^m4Ylꡜ!g&0 wK?6$&p%2ps[ NV`>)<RpEkk&KcD[&:b+VFە4&;")͙'֎Bgqf,4h5=B bBp_R-A?'!Lkn+*_OX~< |JTP+=ƱLu尘 D Toe Zl^堮mqث#_#?]'

DfX0?Irp\|4OWodUܦ$^$.v#kcY{/{A&ͳϾ{<1W֘mr(0yM:10"Tڀ羫HPݡN +?.ҏ`Ax5U`C퍫Uf=cz:"+~v @_\ #`x˘J7 vcVy; eF}1y{8-؇ irF`\Ҧ0^WB;ffG -Mu}&_=88uwY'V$׌Us0slabs%v6rɠc$=+7U ݊ۡZ&i쌉#mzV b͇(mKvdĉ= )\{wJU?DuR,5JiEs/78gA>"caSzPb Rxz:bOtF3,nf"m&Phr.!H]~=NN ڎF?brx9S]U-MX n X&&1#㗦Y>mupوpx լaǘTj. K_& 2fso=ae0*Z/|0mz򫓞XB~3( >A.\r('-$`I !qzwp>3#4Z $WWuw˗ $d呝~lӭK$1D5XKEJ:WщÄvuS .C<D=jmʼ, X.#md]+;O8HcӗI ڇdk'1B{ZySY|Ɛ5(w7]:oHonJW轗Kq)Il {DY9-O,6!L |!_1;-q۸J6796\yC7؄jl.v(~klU7Rr AX0/%ȎX w0W.² N.~Awr"Nm@؞1+EXƲix+010[&m']fSUci"%χvf<,Pfd&n{Vk${fVů5Ϻ_ro|5IС¢8#o7 ZmE .KٳҲ?ٖBX.u\%eB /)VR= E_fO_J'38`XQidb n,?"b`D܈qϔs98C㏜:.w[OVy͘&R4YOkKpDCr.*T*;CnpR~hј64_q2>|dV&ʰ 5xہHEa{@RN!J݃"4KdK"0Jzq`~ ՟"?BݰcJ0ؙf,7~ ,+7ADP <rKy#[5uoC낚%G0H윶,25\KFuW>FqC;E3*nկ=SgG^_- %oN@5<H%"AJos]ς X#ҢCV'*.#qTHWI~*x{fDWvz$OTEdrfJ4yRﭴ2S|8;4컇7Zq f7 ޕK#*:] ,O``wxܧ@iRss sJD8\"4?_GdєL|aa2f<2 Qa&QBHuDFEpJ5˧ɺ?%TQocXVIXe[-@I_ %A&p% g&1;`fb/5V pWz~EֲmS9P([f^ "Fe6^ٲNJ]ʪ% LPO89dN~Ԡ-OgBԇlh"<9]>[p{;99? }(I ూ&A 0bǙqX{}/v-btxZdv٨4:;4{!&0 -owS=+rÄ&6l0΃brXX//3PWRhYT"qݪr槅lovEj6x7?C`=r1"bH·Ҳ\^[`Vc-:I.wRp+KNT!$7^|$.s<]@f6|N_{ 9(03T[tP 7a^RM5uL)6ɞKNL 8lVlʚbs9ZF{k?q(ZF@ jpWdvCUA,$AWDZIMbN$K<юcJ_bnӳqܠ*%(~(Bu,rbpg f*Q;O^@Hk\ba /FGv[繭_;[%hFI7}Ծk Ck# jمhHN-4V#9FerZ$fH/^AfPtBw;jnK )7ת&6f_HO#5g]4]qW1Ũ~| Fmb !Njx]5t#3D,.9FpC;#6r-qPI]0ِ)o]kلĿ?JnX䦋ԁm8Tr %;Z7Ÿ.:K,֖Aa$չLrbll—0I2҂'\kN2S^CZg rM$A1`F#pz49ZPO= LH^Wfд" ,S2v@zP *z1fִ^}Df z[W{9B|N`IWHD>}ɷ)f(qA0!nZ/&R^\XRZutf ٚ2\_#S-?I.ͷH[FO0'lc82ɫS]h͜^ SMΡr.SPQ^%Z 'K[IS@\'!p==[\+:[mϔH W.btXvz]hKKXd340J|HPcK2&/Jf{$>+޾0ȋr1cila[3d~Q%ο a [HgIlM[ULAIbB*R+jme{&~N7;=s!~#p xQ8ۗ) gܟ,y?8 $);ރP)XC d,/.N=ֽV:~.e0ЕZd4'h< anFPH JXn*C)`N =RQb Q5=|˼Fi~`qFׯPG_/Q m~deap/g8v7[3j5#y\,Xi]Xע9QO]Ӧlx4 ڻĆ^+aFKmNJ x,>ŭF" )0rZex~XK!w@~|ډLqPY r_ĠZV]DVB *rU2CGLŤtwk- h{8g Gsc^@ߦUʭ :wBkGCKDRAcx1b֓E1 =Y(0ӱD=g %jIAS6M3Po:R~MdHhEyǬO` l~kƮDq z[չT = P*C%J|WgD 1dF(-_BJ kOZ^,]1YDe5ۤH->I%xoll 9%6` 6ls]ʗ7Gog5醇eY fdyTFZM:n;֮ɱ?\FT;::~#õX:F}XDW tʙѯ5 2iF'p=$@LE*)#<.ljٿEQ̘WFtgOVO],ij\K.~;[wTHH.^ŖY (@9fIUd  ^]4f8̬d2%X-2'R"Jz%%L$jzk~g+gl-8kV1̹[kJoL7g{y;2 hq@iQN+/:k :3 3_T6P˘ܲmr=胘 S$b޶2Y? 3ԧWIJ1ԥ2ҝ#PqӔQau-?IΫ|nG^9ohx$!|ZsLYo災-ɥtv]ܰȆҺ-X0kЏ\n&,a#֓䫆rHG*P-״}QaQUgp 誹 `o|%K6HXtLIGl=0EʭIOvg~eЮ#I$H7j䐱b=c]Ș+D=C2hɰP25nln3.Cᫌs "tWRؔ$,!wɱę q~㔯Wў+"XҎCqE'V 4ۡty^Ⱥpi<=>cV7-0Ru_[t_+PLx5 {#= Ad " ΡSCi-,i/*yh۫T2f%){ 6(SQוbjyx)n3E.6V7dF['vC,-Ƭr ]Ѹ{ktv}?9kzȥ9wHF. 9z?-~'or&]C Le"jt߷NuB|$Wm' J@V8K0;,nOї.yVO-kMc QX֏%AU/!)dFlv\y rT{Bg=FI1x oII/ amZ`JNsT gY1te׸}g.' DcdXQ)<j?_L^[ޡ q2qC0 {8֊MO`(Y#˩w.<=qY A)&U&a(wtG2.1N*DL] N[(MI[u @hHG%l΋J!xR[GHc*pmZ2 Whwf2F;ư4*g]i2uzU4) $nשּׁǻY@ x4go<J@44S3_ucA We?KPc!/U1',#V# H{]&|7\ ],yPX[:3tcquAXO.ȷra[(M#0 ilsREC`cˍnL)*5V˕N3 ع pQ܈ >py @ #) Րx\?e4AG~qM΍eI‚(gV ]6cq5".~,S*x,MTr.X ߓ. ,.1)QvXB)| "nI~eE0TS2$ ^Ϫ/.i ;{;657a S>PvvK액֢ګ+ޥ /j6>/sjݕ +v`tb~U7̖{kueqSLL$Xӌ~Ľz'Af]wߢ0ds0b}~v^cUx] H*D4$쭇ϘkuB(5$─k*=ُYN 'a|m4>{j~$^@fOOY3]:/؇)/&t:A7sjDt4)) QziBTƿC(8J:`OӰy:x*Y8`<ttqS gt9w o QwOo YKUkD@, ~,rU@G2[sAvI,o 7g\>IgҒhH{i?{ho wDހޞ_xN*ED6J9-iPbSu6K!*,ԡ us[ Y>RP{ цtòܥ`6i]- '3#كDC,}ti`b(0y0!ﵣJZף5d zvy+=@͂ʯG^.E "Y_3 gLFdמ?8E]a+Xn 2ǽKJe{ /`-B" EK~Mb%Щ>5`d% ,E;߉n^}`k#d Ψ&y;(Mk.2[+ӌZm"GQ2}y.t$@TO+c@fP-uJz Z T|p}*{fCkf׬)8r6W &}j/D*#bftj$\i]c0Hsjg H8uW M>S@hNC6β+I<;:|޾^ǑR@%JksY͎L0l^mS+#f9/Lovw4~@H5+t1NDzyt/g1,?%VHeoz{NcZ~;`z׵ `ma#*/>f\rFM7ùWPUc>¢c[YdsҞk@_ŁZ:`Ggm1Cp-a`[p(> KbLav8x/F1ߏJ˩iꅘ>;Xjo_:lwoWG𪻎/IuveTԧ1)*Ӑ?҆ŞC' @xȔʖn3D kU ĕ2CrDxХh]m&ӜB Њ<2wd2P^(+5ڤ?bIq6AuT½9`jgoX],3G'4Qq(s퇋r+kU92 |cLq^J/䜁׶s+R:"s׶!L6 S7{<{s`:Zކ859dzKY͑PŵU_ Es0u @x- y v8ݢ9g4^!HƯ>0em!4fweIKw]wSJ\M7VV!*~o[~uU+A#S~mU9!fݡX `Xs ^x9kiRF@X<"[mZA}SA)=Y>c4vO*€kP%bWHDcv 9"g*?™t'7@ D,Mu &CLٶ{eS+2ƅn>w9g0k5,7 mS?ߌwSRM|s 8GVߛ{[հ)q3K'E"5Nҗ+12fr69y,x睒!Ew5?6)!'Ի9،).ٷzH]SŨƁ]^]Ľ%LβKW=V/4I<Ҟ.bT02qWqy?W&z%rwP1F~rS%͟YS}1tִ𙰍6iu*l~=;-8].CEItG[hYᚗlɻt'M<08l$ zESj @ਢٹ~s#{ι< ŷY ` :r{$#P>0dx>3ln%ξ:ʛ'mlk.oNX"QpBT9(hQ;Ҝl~@ĶX8RM?sF6>'y7/r*#0DI~߆l㒾e+fyAz-բPc]G8(jnYsIo?)nw犌?uPU_vLXtik[_{'C-1>6'̵duFEC+Gw$c\鲸=֮> ǟPEe8mV{YL+fr3T{ D0[)lG&mQ~ũόNNXOQu8{z★/G-ysWP{>(?TQ_(}uYeoD%"*_95gmW`!V*fw!yfd,uϭCLߕne\~5}wL JG}BۇuNEqlgSA+HxOŖ% Q&ŧX^)) W "7v39~1)NIo&Xw[;^AYPMC"[1G*M|FZyR튡4/PA in; 2[wP 'N`cuhBHa5s*<)3Tװ{N}Siz%&ŠsҲPD2@ L1(D",U]~1RiK.͍BjXMW5^1(«4p`p& 5|b\d|[:fLF&*nĴiX:w;lz|ɫB[ ´ץEhh?6CR!]xkhSAOPJ9QHj65O`w0 W:@ @ii t29Cf a.1y\ KC2ɭJ-U8NspIjn˪$7RCGЃ931  1x-RRp"T" 9RF2P@AbŌfM}w^ T`n3j(UNC0A/,oHV)=/O&DXW++a~\{vi! Ebb !bh'\fE?wP{"KecM[]Nz?C*VrW/i}2|~tD(5Y ~o1@zv`P]PhT0vKBh`@W]!ƙNP:yjQ>)(oړL!0PpɃJ88e#t.]#~HL8XZe(r_B+Ez7ӡu\X+9J^_%ZXΕh˛"UY#xS&qm}f x39ݪT|\#땊`-=߾lݨĵ\ {O@pg:l =jPkFly>]9gl9΃.Gyc&pruLQB}7frX &<(1z6߭_ nr=]nD*^nSVDbGmGG4P tN6ۜjJUZQ Dif*18x_`&bZdD%-=ߊgkޜA~7w6eE7JޒUNQp t!_4_(SJqC=6Qwo&\oV]SJiوw(/f&V.E]A(~)͘4uRscd-wG&%ǍwNUhՒ]A뤚7Szԣ2jfG9/ժT󓶺W,,7 +,cKLuF'2kicƣ2-z b &Zf=es&?hإe]/f{#|?Er{ȴ?.MzyΗ}зĠXOjnF]IÖ,i+ Ő,LPu#C~#!axSfjR̨@ e]v@,kTJa? # v4o10}VOe15 "hTcU ٸOAwSRf|Hx!b+!-{7Sh>[>Dݯn*_4:-%̃+hgσpdQ$`Yw_$H p;n<# \6$z># ȓF *qEV5EZod#u[|;H+ NAE산" m(&g_Φe+ ی /DUdt!^;o1%+J ~ڗd޶ STOx{)? uj橚Gk>5j!g3ȸgՙ6qS_J譱Cx: I#I=DFOshht@-Jz '-(@3Mȉs}Wދ >&:Cim0>+{RW_Ȫ/yŋ Ut<F<~:"vlkM\X+aDL{{ƍw*Ȃ3#vvW!}p9m3hL-H晼H(*#0R-*`5 ws|gy,@1Y_ia?hCFNV׳38 7@+P&\Y#FX6C~MPܴaEr[L?V72Ml f}8@M3;8afI'1kQnt_6:C̢w?|]哊d$7xŘSQowhe*3KSFg[Fn f^i/5֡! :L+,ƙ$vqWOڸej:"/GELNM`AAuz^*͜A`F% Ҏ?MD,ge1գh.n%ks3dm1^=/JQ'H /=6M<*RGE QmkjH UBG<^ÞqBcƑՂr>*N. z.@1!IVJ5HPw)HS:rQl4;vy4x@_\1GwX+0yByaqoOExcrե,-4:8%Ò"/DJ9Yx&$#!mAIKX[_o. f^D[*Fnl *E9<.z+y;:0ekY h^)Umgpl;PU@R^$eo!i%tw)h`%ʐm(u[&0X1e|*;e8i]sM"؂UcH# o܀[2*49-:D/̓Xn bHjK |Ap d:XɫXt4^J*n†V`jS/Ef+LLcZ=2Z zYX,D0Ŭ؇$w ~D :(oEu4H0o oj\q[KOcX۬gjYmUYeq.vdߣ\nl qJxʩ`8.i w[}wYX+L:Z/<x̯]u` Uٯn4w&-EnuqYWcK@Aq&Zeo!+]yI௎˼.(<M'\#x 4V(#'!n K.FEA^76}VM$.m9֥& $M݇m 슗nǭQ- *yiӥ7C{jG~sr-mBEC\1!9)~$di—M.n( OHEn)n%,9"ҰBVJeȁ,`Ye {"K CT`D)ޝkQh]z 4ѓ:퉍*X,q^=z0ΖuUURK ]Fiwq8k""U_[E.,dOqdA||ש~~?MPe_}fM>_|=#Z%` e$q?;e կz4ɾ~dJ7-2<8Y;;FֵTFz|ň1PgA85#., Q?7#-(5[46@'* yn4m#]~6;Ė4'FE[!#Puv[M/' sl0\Y[so+Q^aq-$5gFK 6#T4_оzgפ4K9Ge Ss|Y_)N^Seu⯏]fAO뼠]9і陿 eFmNL( OERѝY-c͚''͘Hh Z< 9\Gkj3A2~6w!An.﷝XY ΃"5%}ͨGhVxSd?φ8j ^UFWC6b'QbGkY?W. Ƕ[JMElm1[7NAM)pIC3j@F*A 7PD;Ս϶T;RV.)^ƞ6Rϰoԏ/m0S{Q?8];33#/2TӾ\ @MJΈi#). #7(Uȋjp~(2Z/Pruk;>1io€\WR%#"," r6!(Bm:Z)G8\]AU_kINo$0VW WY"I:!p06u'GnI",jXGgkn-3rMiQT_vhH`[Dw{9$.$*?WdzW74J=)^"'z*WY#Zz(:~.nD؊GI6K{ 3<\L3οb` jτ)H/g G>YjyU?V$؆kXǦ R>Ew,<3j\Ɛn{aU#H,]sPV+Ͷ 9zo*G~R[ jeի p:,&Ę lV8%P <Y!5yѸ"Sa/"N7QK'v}/X&ѡ6Yxr?Pi)3C9= YERmgL0`p5|/wn'hBR8_$O_D K7 ,HXCiK< n S$Ul7sZG!lt+,\WLZ DvBBc`3$L 3 'ôq EpSGt  vu^aUai󃟗OIIbQL2B YݬG3N}ܨ }KnwOʟ k8{-8?컃Tgu &fCDh at" kip%9OC)<"be C;r;IN0UȞNă8¡OSq:(teps6$B[2lVg pv9g֥)oc~s.E(_a14fO$||>U}Lw XSR;=H__Sԛ 7 nnÐ.WLC134 *̼zw' *%־p H^!PMBXMTCo 2R-0IN3g{^; yowMꝎB_?OvBS`:_@k f~=46|b#,\`-9o+s+48>z/r2Q'7K3)ZVF8jwl)bԹ"2Of,ZCptm@ &?'Gf0\E %:/ g4pq3sI)e26fJUx ~X>3bA\3&C"_z/7Jrޑs$"Z`L$-O^D!;@yl|1; 3ʙ >ͣ\@MY3̮ZHx# ՂKb!ΨwϢQ!Kw ^Fl̩WG͋:ZY+g R73]c>(CV{9Y}k: T>LT˴i ʋnɘ! ]j`W3R-5fBCJ;ƪxh:o{sBO+M}A0*&Pc0G V%?K0ɚv̳Rwt2r*D 'ʱ :\1dZ1D5왒ɯVw , yUJ VkYYh;J>C~%}T6[z/?&f.cx،|G߇@ gQOWoQLK;@ho&L; .5xB`aXEހ:wǞu Jf-kYC;?7/Zv_)4$NEN )~"ܒ2Ct9CR`G=BhatY8qiFJ*\@7 P_E3 òo>ٸ+ލi\XTJW,ҘE.i2xeg$vpν䗆I>8eiܫfc|?!vY7GeNZ|`I"<;l5vƇm Uݮ5OgHˬBCgךDW>^vbWQ2?(-'t\B.44ϭǕ[8@zJr0eٳwzpXr1s v*K*;.D3{JcS6&=UzYJ72BS -$U*zoP\7}WQ&)q\?>!x #]FrpVqkA$9N͠ Un2oAU3Jf.oDPi-Pء`9xoRL"ɰ-9-y 5A;m{͔'o$Î}Wj ~?HSxqp(fZ2fPkҼ=箑w B`_{8sE"#*=d s|&NWi]TЫڀWYMJcPpJt|I).ˑy.g/WSHm4y!;2'o1wXjx G[Om,KCлIҊ 3~O($ tYO2i jvs~u\'Cj9(}_ ӛfmAxP_*p:p;Ft1޷8qӭCEVktbX/*w0 {2RBu_p !_]"2{T`u~Sc7^ЙqX[qX[УOPZ+'r;o!3l..C҉הg35yR2c/"G/Q!յnLḂ<V}E#μv຺f]El8Fǣ1HutrZT2$ TuJ;º4v?{7_ AM*&7sLe7Ov=io^xY\QܰM)I@M~wҾ ;G IEi2b,R=zEk k ?SZK |Rik796Z0 h>h|)&z(oq¤\ꦡy[V0]a+&s`s6eOҾR3c=Z`z]z-?iq&:ij@#de-̄NIHMSffU,n'X=0 %ϚO\hR]xFwD^%aꖷw#T8I۰{B];X(BA:%=J Ni/s4q(lWF\Y ZMeHǃ7C&ϻ/ݾjPkH͹) tv6EO\K{d02 $y=#EBʌS٧BuSV?<-u}wXcQ_k.[I9ф0,{(]Kq&ڋn/"үu;uK<A\G*ȶl{EHtJE7ML #4\/FR4 龇DeC^ޮ2U0AzH&9+~zݽmX;Sk?Z.*DA ^_f4 ]x Z- ƸJ[uO)A`BH  ?;valOwqɿb9qT=ju+D OW zMD f*̻סOKT*ҝ>]ab'lxfԿ_TF#HNEe-7w]Ə<⤪Ј1`d E4NraDk2](ϤN|p[x_adרj!Jߕ-MUDqFU/!Xz6 ))G}@EFAyw, f8,9Xd/YV$>Vxޞg m;%A RF)}l03 H A-qeT܄dyM'>P".0yuǍX* 4mHɎ#fW&(ת,˩gmdĄgvyy, cgTK>Ԭɫ"/o5ϫ8osvwLlgPKBo UI>გez,o w -}9g/@vp9!4Mr%Bpk,M.$(x X{ Z@ QzvRx]z.mL'iRg$Ŝ*zw '0{Y-,HY%U E)5O.3Ő#d 6Uk+Cq"+,oBRs{A)N,gr0HɓGtonuTQޘ)$v{,,ƈ6:S6c u)>e%|W0뻥"."Cuspn2d*%ZοZ?梞Եu_3{Ͷ%cr0x{Ft!T@\!nʪZ8{l3(ijrc瑼r|syCHe$j3ْy+i wfʷx k\_kZmGj"⩱?_>Bh^=颲$Iaޯ3YA62=nkz!YMG8l8y% @a;o딇ȯ\T&#W/#:9ϲAM02bD?ٝ#@D!TUIӖPiG( Nj\\Nh|%OO )e"7:j9?pr YK2\)R s柦pBZQ}cZ5›:3JĆRyՃ| nXli8u%e(Q>WLa5= M>fO7fʔ2Z,:)Q7YkOEfrI sl|BgnD3OD$c oػduCIG}M^>}*Izj(=0SK _h Uz?fWzQQL{Uw[n#Dۉkۇ z(OU 5K8;w7>:rF*T% D%<+Tl|(Kwd ]ԽOOԌȋ+zd-!WPE3dbsxcU@G/S'{wOsп(ł_lbB%nơ._:`^4vg$̓MI F>y q:*+::~ƣ 3KQ Pv)C7< Ln\[8]4:<$Sb@|iPCB q"<[ X^B64o_6vyEvkÉ+ #nD`{=4NHY^Kf'xCM& zRV9˴no\䙬t# Y@kB.6Zm+m<&{ Po!2m *2UY4FBzah'@Es=P߯?I#"juTIr> dkj~ixAMK4Y/'92^%5HtЈN\!&cܴ5x ,GhIsq}]!ϰJŎ֐T(]N^yNMR}<䞵LlTv^],̬TEғat$vY㞫}.`% Kmȶ"0 2POC͇۵ICWoĹ " +=8%J`U%+4Jՠ&BCNY(?3ʮTC!K =; ,߀;ljо̧cOE JP2Mp<%#aČ= G VΟI -@< Ͷ4i cD)u s0܎]v1Ⱦ[ `6Ks/:}VIbiyTYÜy/~Ɔ^θ/nScP^ɭY3gz~ =T SO26)㱟aGCE殦ynܓrT΢['-~+D|#(%ro3f4lfԓ[c;a@)>90o#>JN!ڶ+3yʼn=9{"QG?O. "/(]?0=lޑ].s?\J4VVd Zw`f4޼З݌O`_㖸C] TZ<Z n"~fߍwW?vpoy.)lmr{(NIKjAi S sb@C׎[Q+)v(SC$o|0ԗ4XJP8))U[BAczϵڛ+ A#'© Wr-kJԄګ[ ɡX%G=q)L}N0|ww*-`XLF ۥ=+'(RW{(ki**qF q_۽0_M Ҽ RZQF.0iMD Fhok{#e9I檮 ;@0,.bt(L"RLn^v7ŒӎWsln ,w#¾}P0w(eCD>}o N lD4?? 6`=3P!5V\~Δp'=YƱZ* 6'E$ ZAMfQA6=c!Ȯk5ek-͋Hj& Ewl*̄N!?Sb䤿;hoˁ@֑Z+/0iɠֺBPz4Sx@$$"Pw !HGmmS[n6PِԈ iQUٰM`x H(~Ƣ3U4j˶;$V".NlB3nt2űSOeE-#T[xnU=4Zly0l 2c*Eƻ +WVfv~`c)T%NH0)U-xaOqxhK-e#?1n} ´#K!31 "&s]EwKra;YnD:lMbN-qH*dP ?UHZPrpE#!D}I3Q,!b#k}NZg2f*) F-r!DާRw$% 0 u"λes`9p2vr) d\M9{T8~eYż!+]ܘxQ c5#W:{x0 Gs_X.95w y +@da򧣷_wÔX71LH[DL Jm۬:C::31wE$<æ(jZ:X]yA< ʈ_XsjZwhg_6lT }%F+O`Е 58 -qLJȓX:> xrR7us6?x(d? /DZ HVEnҘM8~7 RV3U!Z}=Q̳jYA81, ƤDma*t=\-9;Yd=SdOuJΛ|TKA"܄ٟz]U{${iz=t"Y>2rpr xZO4Qſm]}z*Cp^zJn~iˊ\QR59^Mn=^7Pd--ʠkc z(:ݞjћp(t r묈Rv&gj:)l;j"G@~MN~ҝC߂3kݠycHG^Y)S E<|ɸY]jM7\duK85@c.De$HC`6a$czΟ \GS_A晨]}i?"`{<>^}YwS6Cw6k<(a[Bu 212:5Us:Yiֆ@dM_ `*'S],~feF w(ْV{B810`@{NMìhKIxN:2u~//¢Ax!wV/l`Ey~ɑRd*^M:?5/Z'C6 x89=gy}y>[%?.qHV6c: LbXK P!N_WN.1gWEDUA=+Bc͑@هVoc0vР[:>+hy[*_ ~ps}{ƫ*%i[P䝰IJaP?uAnp8#%!E.#hʰaK(Eݚl1COAUU$`L.|ƁS݈! (iO,WY&Z @jBS %|*^W!.#28."Nj 5m) \*7BO2%)F*j;Xor +]/ :`2'élo~`A*Wˆe;6KƢu;`u5.RQ*F"T]4ק:ЕδAbC@qߴ$ *b:.sRmn7`]!>{q=`br* u m4va19,}ئ(Rr# }0&e+w"7 C`Q 1{E2UKAQ6$Cx}jyca JWY#V@P M> T~HѪR {eMR9B8C`p(.&[pg&ѯJH m Q휹F ѳ*|k:O絽5 a#hn̴()'ylwY|{ }y#VFZK} *ًvQA~OƜK 9V6=d7yVS:\Jdn_ Դ"wÍ9Ʌ _Y ݡ]^m.]Xj|gL'r`]+NIco6}2@߁C=|"õAdˈ `%@p78;k d#VT{q8|B wN&9Z%;AGnQ:fF[EkhU1FJɓoklXE"\[5ųwgd.m8!Nc9y!D2`iJNZrCBtb ]9 l:(W/sq>b٢], X1( ̑aqS៊_,:kVEfQ 5~苾?Eu׃6SXTy(zK"\gNݸ]:H;/L%ᗳM.T7Ru^4IP:u[!C$ݷmߚ8j_A%'c>ffÙjxW {*>u+oѠh{ [3tAQS?oyۇMX`\߼͆=~ 8n]9Of)lʥCl gC=Aw Csy'x׀r^.GL€tH#f)dyoQ9 ;d$KQzO`cFkp@Nuv>y>w06oN,+~K>|*S.(qxsor4yKtQK1uo~|ATcw&-\vx+.V^o7L3DpX,6Jϙ9P/;wE#gMaxo]B#l*BSNK( Kl7EsƸ`L=9(U fsUC̤ YC|l^I^:f>HdvhR%0;({CF]i?F`{撰jD@![7cAQ#7rĞp?,ڝ3GgI˝+^$u dCqDmg̅?չYc-B" h5̟$঑bbwU,h-v័n Grd36P.ɤE[F:D9EiS# ;@tAUE=hw.aEi8(JѰ1e,Dd? :z;XԮqI8v9Zi4 Z?caTwn0[\UnQ!^͇c\կ/*N-/O RxbgI 4Ҟb}sUYձH to{Yf CĝC|]1e\jñz:4`)"0r+o FW&j09t^R=Eۺ4"jlG9~|]J-E9nh[ƃ9~5BTZ)DC~1+Ձ)o?TlAwّ!.(6VhdNvgd܎y[P7T#oynv^5H⯭0aKV8,,F-xym&a0+K@c###N(/r{ ]ȇ-MUJ{Q?:,bSQC!TM>,Tg`/N~3Ս"h --N+ْADA?iLQWX֯_)ނ8&y!$YY yGwvϜXO $@*0.6qf*K[~0Q$(ѧ-O"U.5!J/`L/y=j=#,ްrlj|s ZH 1inWC9BKĔ9cwQgֽMFtKWzKWL@CFC5:xff5h12>|d'·Ғ{P'w73XC!2HkӾjtƥo@ݯŪOuJ/&dƌx}UG_=^"k ON8IIACo bZq2)>PSF Mb̲N91BdY2n'P@^9U XVb|[oe~/,j څ!XC:BIPi )?15I|-Ljm͗*\ӾaUK y$y:'l۽wITB-äosjJ;^au,mr]?˄~5qA.) PQNB-:4?—T#,ok8qH[~>cl"K߼*<FIdIkQ=MYS5v^N4B.<ԑŋ7tIIaHc~~m,.TC{~X< YNZ/bqMҹxE.pZ9E2fMɫw'ri#v:_<^%bkZw*)'fTaOZ RN oJn(YT\ԟXu30Xs{҄]7݌ƍI,L5l5Xx*Fr8O+q'SZV!rIh8nO9 f1CΠ>Q}T>Vƕ./šh^.+KslP[&Aѧ A='zELX9r9{oRI>1Ҥb #+䕔X~@qsyr̝ D}'a)H =5P"@f"kI~:8ԥC쟬-=MhBW`Ya-Cuߙ4$@GUTvtw"]%|yxy3yKa1sSJt&#}Y*  z `HZtgdqĸ-|cA|r! B@2F&z5&"g Oj#%x6iP͵\_Ti`Fzۼ_ oO]E{1ָc#y}$+FK~ K5 ꬔ4p:?8v$Õ s+4C>+4}ͼ^/PP'g`Z 8cV),S 18ˮ h®,!ͿJTM<ߎ@Ɵ2{MF*SSKt@y!s'~cG=C z!5/khzO;tcs!Lb 0k$Z Xxe@CĎUvx/6%>|V'fQu@C'n[,&lCmN#v˄@#r|3ďcH51|4gZZz?ĖU,P|9M_Ío K`}!6*6N_d3[ Pr@˰4D:qJNGaF:{` M$?D˴ >\[Vsjg=aÛ1ڳ ¶Ś; Zw`;vk[kWð*YY/kaWZf![/6[Y2P0;zJ+SQ}OQykZ-|(o\`heYu:*f.){wѷ9QV[RfpQ*Ppkd+RN|kFl~Dc.rkhkIe3%$-~ VァȏcnxuNy#NDV_ݠ ^;G]JF|qiCR@sGh2r!IȽMϋNc3Bp!iG{-6 fa/9h ;x6ҋy+!Fbr&q< ϿY\r(ց/ep0zX뵄0JAo2몛.YcuM<5uoO lᅎlU@dYgJ!5'%&7*q0Lcck&r[9:T唸\:)Bu͞ ];. 'B%t3a }amܑ&ɖ܈gxM:-snִ1~gHg9r͢S:MQ+^nE%OU;'o=9E5c)]B*͖6uyY(cxZ1kz)GB Qo!K"ÙЗ!Wn rd!4T}N#8[;ջA܋l+|y0=D*\oj|n4,=HWdp5?28ϩ8'+;[-&/: V{C~Cfӯ@t .lF[aaRN}/KɊW?{RP1n\(Ԡel]P͡"Nd ?ʚ:n{WT̚Ol4 Ff2NqERSقڼKJK*-q '۞&x<}cga 4o3u˹͡;K|'x3`xS?/l@Ϳ#E(ps]>)d,h+Y",&,Ƈ7&;e/ ?@ j8REKvCeÂac& ʞg,"L+t8nU3xxyB)) o= ?k4ppj E:N}R[\* zY5fLplE%<P.҄Bd6Z6I9H`,Bf9x)fUFUftTKr,# Nz~FE"4LY5d7%?>Mc9FB>lQTݥ0j9 ȜU^2(W\c*[Ͽ>Ujۭ'. ލ\"#,z[#~3P` 2XCY/=)Bq!_n+ unQVkz80HU$r+.+㸼N:ͽ T&Pq1r1zDeLP]~ƣ#F$mx{N|sWi4ư6n|tSwH7i}A)e|oy%8%:nW'F:x)P|]D  QS=A0.0\a@rvd[r4=v"KVP(E-!L+ KWn}yf]L0{(ؚjr|&L'ڻVJ24zt +P <+bC CK`H33R(Յ˝/|ZRr&a@1-2aI^9imMЯByBP&350@9}xڈfDi޵Q%˷~$% c}P_}|r% {h|:S]\Dw5{/J$Y:6r6)ʤ QœΛM,1i7|f&q6nv5Ojy׌}"mK|SJt%:Sr* /V 9V -s,i)SEƇ$1bI{od< 2.FSspSl)^[ NjCK%S"aBYURBUFi(%VyؘBz?< &fk~sW12D@lR0R.;VL,wk ;M={I$ss/L7nB-yrK6©ΈZe R YO!PQCΩl&?K [QOmDN#M2]|7aT$إeCjr]{; Y/+DM[;\nPQf[hmY5=U(rV++ğ\8mg_WnpSŶpFP =/(J-p,(n0 cRQ6# آD/ 3ʃs\`(HKέK=SB:ms?pck͋1prVv 21K )8WFp6q*+Wާ-v,Xh $( 1CNNEA7ۊ`'Ҵa\*W.:b` 43̴娨Bcyd%>8:BԖg`,c햼ڕ_f ZȂBQ{[3Fj%hT@Ip VVvD僋qljn!3 ʆq'11jvnJ BCp(4`T36j\~ "J,TTų`>[ba f^v4kg5gD! +LvrN] !*yX|b$rU8ۺһXpےH:۴2DέЮ-J?HlP#Ԭ!%fc9P>LW=b/* G(Y0Z\}[r7%I($y)qk;FB=$eE6%yJ1m=mqHe>Hָܛ T `L}F\U& I6){ܤ֚Wdpg nN[4랑Old49l{.1#$;r;8 Ci|30c"R#n[z'kLu+rbNĆ)q hfX{BMX 9un[21Qu)]|دʂ/$~z:Ğ D_p HVFJk,fT7k1'O1#4Ipa!1V]nF3}4_ v.JC,PsV`TQ95kbԫ]ovI+[cΜ#Ԉ#Up8Cb[hPPE n\,&݁Q<R|_]U,Kfao=Hf~.;#6B=v ibײps;>\iEeꂸ;nX&ۚCj\#KхW ,~M7;3Iz(Oo&np=3,<)٪1t&Kh^^/ZS'[gºa84L=^5G t갍r_:T&0STRtPk0j'ZHmlɜƏt2j;,Qmkbg|)H :JTԬ Tn7zӵvBYu0vt1463zHtj:%Hy*'_^YLu%:(^D6 $ҥ !nflU%AZ'DHE'"T5QF!2Q/bWB8AC-{ҹ%i1'Z-8r Vg GO5z 2!o&U\*? Ry[`64>fPj2۬6汪\f|`1C̚%Yp%9>ߟqFl@'doɰ@]}vowb>F4K7Wu?;;N'(֤ _`/8C4K5ܱmꎰ61e!k}C-)|Hl d#NgTŒ?mStV /$qq?ͪ'N ؏x>9~R﷚WŨb89 wa<?HpyUZIzu}~/lYkҖkf`f@*lvbP̙R%=\!oe)¡Cn6=ev@pl⇟34ֱL T1*V(J46hR |dzt#*M[9b;VBa&~逡|p$ Yb;Bge1(2@lS0.oNQ&!krY5^(Zunᢔfn}gm8.L?ұXnqzt}D{xp)l=uiS莧ЍpVK>հ/yMU6ⱪ!<>/=~zƕtcS'H|܉)$|v\<Z-.(8QΑ#z0I`- nfx68n:q*dy]Ev,"3"2^&A2_ ۙيުQ;ÿibN[y:68{ w1N]]+ܬ=HDBsӫy^tʾY4;BvQ㠛L]BHUʝ)zr?,ygi|#;oBVyz{]$+#E2K11 hGsZ{BMi| sZɾ,|s|rGAn 8.NK6`IqQn/aVf[.ci:|Fvl}cK.Xf0p7/9|:=0=gWv!mbs>STAٲMjIN>d+qV8xYɚjT aɀ3dWJf OzOPR{ ;{4P#Rx.ݦMl`N$_@2%v^՞x%vhl~ k=j K_݀ p^]9K{dQ+t$fs56)Hޛ m蜤B Nĺ uJu%Ӥ&eZskȆ\yK돂ijcB'F:<\aIaV!8%XpY 5mk у]3;U? ñ>oyT_O[>Fߩ#z;NgB%.6:='>d&rP`w9L74aKP2KQ3'arG! ghkM գk̳ǭɘ&ݫ\u4%TbYamLzca'dRal(753=.NuLUQWB_## Lw1 ᘨ(.'AsUczkEh]%O!'y'u70Mfcb EmH0JmjNPšaz 48g{Dl!ge\2H) =Qw[ ~WT*ד\K" soF Ἱ!aDÊ]f7;i7&{N\պZF붂䫙Ddb ELĠg|?sT8ئh~Nć1HNA>7m n&BRy$,m*9 ^^{AX͎? KbA=ZFg Km4/̯Β{F KFQrpd(~N*T7& n=ս7;pIFז٩ZjQ/x%0΂]Hs\)lJN~y tl{:5OF1vD<6Fzb2y;q: *}B霑Ax1m;SZv^ 3K(H6ޘx \~OORȠMߧs)ӈwG* og e‚NaAxց>n(W#k?$dL7&x[IFb62['rc̃}c\ڪro##aTcZqbtY$*ӰZ {M Vc\sRY?Y?1bi}wef> .0ʁRyG?\̨a!upO9=_Ncf iL7MI.m3f:N ?.&{6o&$r zΐ#Rhi`Y;ZUwme33T\[6rS $.MeG~B1tm{1>5JztUΕV^T fJIneN>+cٹↃI6wUee0sOخགྷ3WZݼ&'J` Pgn/ffJ]TZ1X{qr(ͼsbo( RCUV=qI &n;hM+a<0$+l .ͼY3p u{? F&\y+z]XFKvӋr+EvDz\,pm-`jdFxkM!j1KZԤfs2A%7U;`ossY5VA&2;K~Q w)Tkh"MsGjS$fPo> \:]9t}̹Rv(/F<)JS+i)nHLR}ejET_G lV?XDݍ5V(;= R%(HĚfw|{&SCVBLm!h8G NR+8 .1F ^g q 20zn5EKk^M0"~[:pO\!c ґe~!9 I E"FUO-o%:orzs#p>ѡr(6ڞsE^Lod>f/eSzF"A#"irP?Ep >)m-Ziê[;4S61'3%i:Pt3?.7>P:{V 7'h wdq PXgAW5_~Qe&#u|Exb eUjCy[o}h|l(BGrV64ǁ8s4;s:,OV$&[Ƙ4;b' oLı_TCis􅇮CxXse5~Wg,J<61e@-IWP{nv '>ޡ4(`DQ: @"ʾ>>ow80N{8'_kvJ]9 (sCJЏN7ޭy+𘞥NqUϘ&;S/S)oy#ʺΩX7JtzP0Vۑ+@x8}_.*^q⪝9!#{.Sii"e\ o.É>iqN*TI4 KdSb f8x۱ULdjCheȒ"(V鰡Tv A7T̾({nNOu;]`&$ZʧVgt1]+zP+Hn t1 yFaXKkuf {qv"`L}LJ¿1 %gW@)HrJ {VC%G:ZIpj൝n$^˜vleIq#Px{1ĄF]`\[Hc*d1;XgKu -kw7uk&)Vu,T^~{jrM8Jj/IkL uь-cnK+x/vAei,@cuJ%! sX{25Ҡ*&7Nas~4R;Z< V.Wy9@ލОMÏO'sVOVԜL51q 7ǰBf=($u|D 3U_.%h@z'G8)G a6j ptC"{\Ne`G|MmP-|^葻lhc?.HZlhoZH{t);s!(p*q*Be0N|i}m#\h&~O}) KP3mI JpۂYkA4YJGaipp9=vѪ9ۮ0cm z8G9h>`pu֨6mcZvNШPCbs2=0݄I<"sӝO:&%^,gV Z -ҏSDR*_K[U!5~EH'+ε&wp6\&kqHYK Xj`f%'P<= .HÖI`ƫ?0x̤,FXһ.TɱPKS!衩3NTKjV8!PlOk3 s@p,*搣y'\gĎ]5RD%&`:H"/LP݋55`넉;/o)Ki+]/$Zv\9xQ3L;IiO3JeZyXᮾ܈)rL'خW{s,ӌxZWucj)rNQ9N(i ٍ8g̷R5H'Ύ? Z ,˄u8W'} ['堪>3yZr]z۞E!\ +ck;Xtu2+? խ#5#/pyX շ1<kLUٿ@yޕ+~_4Co=d&Ke{ϯVw0l4 m j5VH\G7Ls;p gQFTnJ  ۂ CZ;J۞}mYSщ \ʹbcgS񊮻:$gqSC`z쒮\=tN%Ǚ<tHe'շ:שg!wqbɑ[$hh1t wpM/er6~1K–z6B0ߧ<;I|'dpjz "椉(sWLȽŊm(XϦ+gHYp8ШҲP6*o6=)nL%|Z\TSbMHc Ƞ@$T,(ž̪6. O6yw/q4[]6W_=L i :'}1VŘPnGyB{W}: 8,þ= wʂ;0yEC-{(FCjE: E|f#C@Fxr|mw+uh4S!髝B2#p,(|2@ LR%1><5:濸S&%+q˓M ubI]@=&2U`,ڣ[ V7Pw?p<S~றqIxe< 򾰎av  fQBІ@3%2o$?#rA]l`&ۥH6౜8]@q.*Mvj\Җ %LfU r9a~j[ C9lw:rg扐C7S"`ܺK2C'$S@K{ Jz])0B*z8aY!w_|;MC=(8F&;MwR_ $p`ObUd#f$BSP1"haGye0Pl{.s˖uyVy~810a h]ڱ{\hU1it6Ofg!\+оNz:"ЛzJn;P\tD&U#Dvq՜EE%LM)$GI6{.EzfBynqm '&sU GN̵ P+uY1mKÅJi;RB0inȚqMK{>%"Bb~l((Ez6K@;]F,Q%+@1cMz-{p҉rV־+Ƙ36'6T^Y0/*<u"izj }d 4>si Aa߽vfD\J9UqCd6.WuAfl\}m8垐ÿxe͝+j#n1 qT/t쿹Ym\U*1ZOUpe7B3t Czq9^ץI#}go[ÑY(=,/O!VDo(k >;ͦ[CǶucT6zs 2M*ٚ@6q8\鵎Ȏ9Bܹ"\SuN$VQ wWhㆯ Yu'VG/Oh Pͣ8.AI `aCF/Oc\wASIy[^0KB]͛}?R4/ZcG5B?:B9)? ۑ˷Λ- GDi Wt|gН7=Xh-V!5˽&i?F/ : b X4 ƚN,)-o |X_زDD՛/a"b{&-Ո . pD9|ʡ*wlߧ J 1j+CZ/}٫ک}.xZq\,QV& !Y:ڃ//' #ȝp9`YK~ԩf70:^ݡ޿GS^ޒęBj=wc˰8KѴQ,;\q5k[c$+xEHZ,F®Ԧ?u1F'}j7 Mt{>OOOѓi3)#S$U8Baˑ4*C)KL}mgU`fa(Dѵj&[F8M.׾&PU9iġr/c uتn:Trb6| /LaM?F'F2mv?&k(Lglo4izy+(q{nr9aY/Qi=H(mI) fd叉IkbJd]C6uL5)d;]IgcС*[\+ 3_r[.{!U)b݆ TB+˙p!FHr߰|N-3ꓓsx>PѥH{"-4Y{`|RU A#C0R۝A-d't1 R=W({E:g4]dv tO]%'Ulغ#%Vw)7`24raҲ{v1DPI ZA'\+(l۞4uY4qNn_0D 07`3^J0Mf(bVdճKꩲ] r_i@%IԹ6"EAOafE`O$ +mTg,i9D~ r,ҷaN'%I1ˮ±(ӑ@Cٷ%g;D(#)tD![NԩS0  D"7ƿRun{Z٭dY/7OE_S@?OX)/ҊT$,̕Y)%|UPK8/hD&HǺѐ'e>&MT1N:/P'2d)5jl@hFLυH/ ZfL!ӯB¶%mJl䘫9_ zlj8\Q3"!OhzqUmsAGjP(%[Iui?$ocSa*i(º"-JWpz9{^#3#2 XT+x!bd\G )QMM2M Y,&Y7L7^##>jmyFu&rv&fTCp# C4y.GztN<3-VOu\y5%ÉChACj]9(2Q{Ňo @.ghf @HR_$zNbzv|'ʣs%ĺHG~Nf4|Xa`('"ā\Z1]W˫@v jy {F8j JMaX^Y_VȘ 9BL!Г&";pioc򙬑 2~K5$Qcfϱ#FA ݤDXxK FaAQ s+(&|$ W{3rZ 6Q(iֳx=ɺNp$7]94he, dOWx)Gx' -E*upeDXc/1t}c4d }*cJd/@2֩[I'nPOc~Nh5)P!3[qoI7ǀS΅-yPHu_&6l@xuL3ijD|P:0f!kICgzعY&juoQhX736O*ik.n=k:O{QI.-O|}1hiޓdFâ.0R %+omrSS?< |x*:ȂZ\#c[_ZN8 ){T܍WZ]P ` P[|5ƆqnD ;@l$F|-`ۘH 5P_`b=V3$/Кh|>Hee*_vW$럇=Dxت f&X.(/og\Qa$.οR#~̶6ë$Iz"fr Rb0?sEUBP%yBMG"v$k쁶G|J E :kM~|Tp"rc=AӘY}jm&Tb#mcaJVyH K ˽\j2p2Lr2WwhXn'@_TD`~0RND5$oL\i3( rYPrlz?TTQ}t%h<~ǙJǻyV2~ Z0{\8#}θ- `&ɐ *>WAjjZj=N ACc Ics>t}pZ,an ʴdBRzk 3Fl8o:|E^L[#CzyI7c ,9FyEcvkfϥci޹$ ( H?=zSZ^~o6rT Ł5dx; w]W7>Q*gD>hj=DL$ܶ۸7Xϖy2?̳_\̩ZlaSf+|LrU;0}5s.+͡& wT)[/~!GIq &[π>|{t\zD'29mYvq{B l֙~iσ soNMp}iqD; )H3Soj.V#c{XSs1E +>6ڲ62Po ,=0jx-Fs՛rn6WvTDK1Ot%,%OQ[eG. K+.zA4vP Dl/ .H_=#ӮN!5_&^A |SPSKS}0) i` IReM\ۡfzϿtFM$=|q=OۮYCēC&8ye(@h]x"ZV-gtKMt3Kpðb_E2ʷ{7qnҬ.UFx@M]KՔ^E'q4yQm3s3Tr拰'?8o!oFS_ިiВ.;!\hjbzhL%Qȼp,Yr+Nҟ95 ;ɟ C< ?رT|~*фrt- H߾ GZo/0@4o(8QrjH'*oo8}\ 0Rj3}t:Y٥XjCC7vF;CuV늇1-5~RN[!F_ b7h O|濠_w0Dw_-Lsoqj<#xۇ2}$=jbRtnV D.#2ͪ!#$D"36m[M!͢;Nja!`_uv^ :߉3Ťt^ T,Y'sbQN)_u Ĕb@jsSRE}XuLoEڀ|y+>&\ߤ쨢1}wu[VXeXUDݑ rY&gvCPtrHj5K882%% &Z-Y3ǰ4iW+Q|{،HR91KPnjiIt+vͱ2< <T N@l4|4?rû{-8~C/3 Ϗ좩ްr.=;ħ:w `\NfDba]{,$зv@r'G,c>3;ڝу ?7-r&o!4i"`֎/uwDKkTƞM!K4 d6@ĵF "7OL@u 6H9@H^'+5Wg@4/\O 6LЏs3Q[+ȹSqjmsOeۄ-Q'"3xe68*M?, wِ$%NMБ]iARI$0Vy,zDA`B ʞo޷_ >H6C!#ΫkhCU$h"N w=tmE s{jc,jYđC;".9}j+I:{҆_4ׯVhᄡH2fH`絁,Z|lh{&ۿ|PڒRc_ڙ%3 vol CS?hIA_*xRH(1Ymj F3jI{,R)+QZC?g uђu8⢢Ԣ7eb#㙄 αV}\pX:gCBpM{1PKhA2SmcyUC'HuTށt)l1ČW35peF,6NO9>R Hyx՚tz"qAzL g c"r<~Lu_TӇ*KF7Y:˹ƹa]zN^+:纜?;澼/B͖[Ң,vg14g9sDǫF8;yvB% P<$!~ݜG-.BFfЃ[٘8T'Ǯ!WHvrr.l8 J;%v?y-,_ $Mx{7-5`䔎kSHݲ+A ,)o4<&UaJz ?kiϹ(!F#ê3zMǻASyLXjO|Y_:IJp,I{ htAՙ N.mS(6:{%":b5uضq)"w4%|4qEd&/Or!mL ZJi4rT':_)l6wϬ0(ۙGǛ87\|Wtz#)OnDF?eIb>|نHkٯ]0g}=X+))_d &Krs.R`-juJ0)> (@Ha3` x:7i<  d:5No}CS]$ jl2YQ鸉D'3iy= [ rT{ײ8,l40nȨb.;u^-]ݴ2EܓE"5,PB9TV3:[Y $/C3Ju2yK|pGi9 N_sf S'5mVITR?qKٗRXюOC+D*-k<oC%`*1wpMq>Tw `f]BԚjuk9sa͔$'uTǏ4hUZ7cj| _N6-Fv+0j׬ KIY;roP9W+ Y D |zuS>^pH,]vYU 8Jӷ7ITGrݍaeOJt ȿ) CvkK> nG恉L_*]G_ә2蒭㸞0 kK)l52̤eSWY/R[X }?=7:q JwOKx+d-9l܂zVPO@ч aI'W:‘1WDPCQnD Q=H$g,L ϶8uh}0tyj譧^T([R+PdNryEc4n~j9D\PN ʤR=$L{ D3ɕۈyW=|#muTqY&A'ή$*;&!&99a*W{MFem|XQ yԀxJ!D46 U-n!^ 6X0а+oGl#2[c#v|TV%NeD=7T<.67#hWB" Qa-QfaCl{V}= ,bsq@IRҚu"Ow1M #Std3nfs3a(܇BЫ3nE,3<פ]a☻|bIonp(ҔcsYeR -nh*1,Y, "oճ֘>s)p_ToZL ]&=cxpm @z%KC zQ%jb^ h*4|BBFz* -N26LNǵ$vҚjy{g#^λAiTKP]o2X/ר AоGXQva X/2~p9:p!A-wUXnUPna\HHotnwBH@Q:0NJ79~ՁB{%hŔee2G;h,-'9?.>*a1?r'y*lbC293 Qy -J0OB.2$JlT3Z=p݈> fTI?Y\ +Ҵ0P\UJ ) rq6/ LP:fC r4/5%`):U:T-k"2 vm"W* 7E=Vb4NtYRst~g{8oYނfCzrBѢfSh toȭ /czP_9x,{jt%AI^:k<ڡ&jm}H:W,ꓝ61֞Ӣ|4Ǝi3qGM(jVVqm.zGA[UƔOĺ9IcT s#)L6sϪ̏MY&MڹLxBE4TCU|yzR׵@٧r~*An sJa?d҉-\=V#{BgAB ӳe('.Qg>tj+=v Zs?uYCۢ6.5z! A޼X<@6L"fw#8J`B*c^>b)&x^iYt gn`@$aLf(-8ص.^O_Y8thf| I8A1EBW-u Xf CI,BVj/y+wʵrǥ>emj26x~F4](1 sw뼻 _1{8h!X[_Ѹ3SBjޓ0!5eȍ?m@/H1rV\w%-;B0;kL_.a=yi|U|腧l/BUu]/fi,;Ɵw35 ZVW?{>k4~՝6‡}|x#FHl`5ҥ |ה[ؼ_>w}-2Qg08ܤWrMC"b$9WwU9qNm\!&vdf]Y= P0upNurwXGr=+}H\l@9̞qj:ifI]Da3Q lGvmiPb?MdƴOjnm4]E[#^#v$SeLEfsU|ќT}1% w[>1yzͿ(| ~yOKgV#Ǧe߁l;_i9@XSIV3ye7X!\/շ&*5d%e+k'1qxXѣRk)81@KYzcnfTOQ^xzcsdLz)X lE4Lm}3N|&=gb<dQU4x.bb^dl6?*&vMh OkԇA?_\&;=n=?98*t!AP HO@I׭ x.}ʥC . gvIcIoU'tCۃQ \T>CodfX&+K3tu^82P*F \fڶ>㏔׏5eM@ϟ=pݕ-C"cDBML']zelڤBA=oZݕTObEec7Ja^Q6 eBK/rA틏RG $ U`'ųHcW~n@ݙk!"ȓ"sj}"ܗ4pJ{> 0 BL,;ÝF|>Ɣ$5a'^\sVU?N2kKR2'Q:Y[3L=bțn\ZऍJ%U2Өm$u/Ae zdL6mBy} v^a}| Xq!O[RwpޟSḊi'\f" yS^7PV"Gm( ol^N/4?JR,8kYgXcs%}),K>Ѡ*aO!Ws''gCxaYt6κ'zĚ\C1ٙ1Med^qvDS;y :!?Gi- vWITuE0r?m|xT[I84 ͋&-[7YKw3)3+S*J9pf|#_A8\uI670ަ]6ٜH]`trӵm'H=^>U͞Wg)h9@"P-U:׬:c?^Y=,]-P,Q1X@ܮjBH9I_qgdsr/γvGUt aޜV@Nah -Pa}o`;7G΍w"xVҴĴY$" ӳ/7*(֮F6)ӒS+\ 4pSO YZ\b%`#<;wͲ̋пծ*حP=Ԍ cހC$SnK4oI9{w f%Ze$t3[ Z >i%&*Y ]k&! #,#39ٹ3hvj̠˹kdUfNSIl jZ6޶`U9F5ˬ!{Pɺ,'[ؘأ"sMU#82&\8y&&n׏?g.Žż@4sٚTZF&xo]u+hQ9@=FGZZ}vTD wVm/!d@k]ˣs.څv-mђ0cT [dEAly:dʆ\BW#o.ρLy\wn>5(oelV Ao{q%s: Q ):='lKSpgҮqLq$}*)e}70RN\a|?8n M#.o7^?d`U]D@xX BX0i~vD눗=^*f~ @(@g).kIZe5 O×>?b4jP`5&7gw- M+z?@4Xj‘dDzO8Zi$.$y|[v8 uO-!C "vpS8~ٿ9~K8_6GUkN-l2jltj!3×~tMp6φ<J۹$*5%!ݥaNOeX-y5^а O;mGbW4MtȲ7LDr N m f<<`IGev3ijѷ` @Rͭ.D\yg;gt ꖄAaUvA6 @33G'zK*67="x)_1֋zPx>'} dQxgPsU#pBs`]rĠg;M/I]P<,ޟ(d'$zξm~_|D;QJC%7[.֎%0*ZEH1.K\ m ]csooQ BD/zaXh2 5>f A4)NLm/ ^)|pEp94I^+NT҈0c%"z@-볚Q}Fvgylވ1$:T؉E^ *3y:p#%|b7zvxH716ba'{|bOtj+z= /jrW(ἝԳDxpdI!g3]{oex1`hFN2 4 HHHm+ TJEmyjasᴲuK;VoRSMnbo!}߯oowk-FS83 u ؟zYgIJwpqdhPwۘrv?g>3UG=屝 DF -uD֐wg.dq 'ų [58hƴ9 \p}-򀰖rDQ6*ѵbdz"?i]5m(C ;(Oѽ06 TRg]s@89x6oR)xڱ'u{ʡQu+G1%2d-rյMV5:eJ4%>#l[=tc+bfG]U2gN] *`o`fR |Z޾e@Ne;n*}m 3 .@7UD!Ͳ,IMj$^0v։Hr)+nl5k o ;6CLP ZGRv>q 44\VZvC^};gz;r2;Gq Q.+\ߐF&!!ATAPU4=];% QR4<܇'3KGՒM σv? |xm/0oeH^+M"] U1k+%NRua2;߇.N|<v(+'V2m&6} 3caU\]Sg1+8W(QG\ Kavq623G$ɅJ{Qٸ^1`"ᾢȁ8xXq$ݯ.dfcdo)T(q= [,8oInkGN}{,$wNg}NdR 1m#3Ϊ>.$E_?6med7@=G7lW>z_.^)Tɞn-mp (c`񨻆`QĥD$yS #{kIP~8cgqHq_,yU ra;AMAf{-qhC"РPﰝz3\N̉{ 5LJ'L [Ifv vN+6B ;{#rI0*gWȃD4k/L̇r yug ix39nKpt^Q}#% %EܠerzG|}~1-37G)^*wpmQL- Q֕4Nʱ]zO8ZRne )qY9-.$mgw&B|?b Peا*!qIJ;U3;'՜=F#xvUA:H*`FzPCo<(Ѓ5rcSB:vS8Hrj\m'zA)ˑ&ioRVA BɕyXu2 Ka>(t*5N]n<'q5 ,Ѷn~Z9)ǙS1>fl5L<im!^lvWi4.R^ ~$w=:@)uas؄Bc Py;y1un;KVٗCbժӳ o#%wөEs s7pގ޷OU`j:2ZUA_1k:[Vn [,Ck7c0/]v5s$?ߝbnGyxrUpJ+F/[(/!ވF:9/ߔ* ݄#4v>akot푁zL."\7;9 ɳ5{RY|;g³+z $`o@a{K3 UOn*j֣[d 7Q[0yuؾ,J8*>ka/ۀZ̩z6v*NlئPL.C"IP\tJZJw=(إ3;P+V}a2KP-<,^.к/)?QSHKm{0N[ka456:q( cCntD@)Q٣:DՀz;(/geh4ji Q=Th&zT+C"rF[{2f _BҎv Ԑ*ׯ|K bHu-Yjd>N\Ebr+kG4 O%ԄlSM0 J!TdSܿd+>\M'{̕Uzl!'֊ k 3Mc 1J  ZP} NB/o {Ry4@]qFjlm^zr@{sm6J<3Pӹk#z޼ uuXLDX・5f8 0svI\G54!s4<2qh^ZqE-cQPmpȌ>xzoRY +PUR˓9 R4qs @wR\"0q쯦p 2L¨EOiTgȣQ)=zFcp1-ׇMHN'Ip{>'hE,nz]#x k@W=yxb JEFFx'ȯZxVYl~鈣~^qhȧދb IS )-/*J⚿IxFй)GupP(D/7)҂͌ fGw+}`'aeL4NCT;[`6(F诛|(Iȫ{+a/d)ә qٴ< v$fu~R2Qil_dFtdA!֋Ik0@im]k>?4J8c!h˧63@C",1bnGȭdVOr"BhoԮ2ݩg{g8.ooɓn)@%u}Xqa-xj9LlDlL7dQn%N^*uwɉ3qVDƧ)j]+BDM1 V'*:@1AoOJ鰙sϷb˛eiUۿxafg3C;}n[*luz5'vr+ F_qNmms!9ps(-Y1}y7'cVyEأDs'hn0(& "K;Ta6BC's,]Ybk 띀%^UsfF:Š/"ר6mg2Jrcb[B82rQpr o*lqj/7{[XeEbݖMf{kOjӸgC!O|r3p ٬axQWh~Xi:` 8M?E/'{hUl/URKGC:Q:;H(6tq_Py&{0ʬ.k2 ?!(h E#R BB:S=_ ͷqJ\Tf3Zm}^1y >D~UI"D %7M*7a&ZC aM aC5j,՗*'^Y7$CEC B‚] jn>v|yBTo@Y2S.w0NU2؁\1@IiRG:xIMzA`uO4hVm7j֔}F/(H;;]XsC5^LrMR+*$|8gܶv*oOZ~ ݺ֡gTjAO<.be7%?ByRysj_ ( ,]CU1z*4]03M SAdv!j9 :&J, ,o|[q,$X _T՝; Oޒn,W];52 vjSV `Zq~8u.ilN|qde(Q֘?dY+fC_%!k,ΐDzsU o1ԒFRRV:Tg cST`џ;QȣjiNCE҅T[_Xx0s;n0Qu>Qvl7 K _VP8l.r xy!On >=#Nԓ0X9'$$NەϰK^))m]A&)2[|;xuKzomEp4¼4^C~;Zd"`iaR&=XҾ̹"**GqT`_;y2[8MzM!?ryiR?̊;Hzbad{&6b||8k6<aqGRP@krko{%BLU:od9=pvp(UܠmEO@RA/Г;/: q򏱖DCZ=d|g(ba¸`XJ2=毠;_Jڤ}0*}wH&5uctmn mi>>7{Ɨ9ݸ_$LӠF+96`԰1AZ,|HiDoh*)(.[,ҌөfR^+Ш1Skkp==Ë|ԯgԼڑpa!s bì1{bw=O^5/^d썇@"y|s<y$tBe)b?Ы3&"."[ÃEjb `sܳu'M,dpD=Qf2& "ZnJ\z\u}_ZW |UA>sIf?~-ؘ`:nkYziDŽ}CYv\D 8+p+;J 5Z^:H1,-cKQ;KkM-]O"ػ?[;wD)J[4{h Yڪ_ۍ = <3& `ya6Oy#V=`7kg2'zKD{9{D-K g6֕0+R'*|ȫXM wMOj8FcӾ%yWkэhEPQ˒λˮplZj__O\ʎ.Ih)~ri-doqDԹ{4' #,jJ gnWHIpdE`4m!f3 XX X{lh=00n$:]UM; 1_D]Rr?kفHE>{1 \5.БkleE# +pdmmi³yfIPN:AS^LC؛V4B}Qf]^+EZ4ąXR u^|ZRk)gUi5$#6_Yc,Hz> șKV4qT+->Ou~/E9ϕA!6u-;ݒ{W,80]羭Hr+ѠgE[<ֶFX]Zb`Lj޴sҍy>qc ߩOh}7>0a3ǟ2ʡ<|3n7)i>2Rwl$:},~9U]ӡYMIg6W["ܗmϖػ8bU#4B&[$j4^%knfN}TTB&t:a͵,ݖ\p^0fP * oKVF>,<}P`w|5c(@&<Q[V6xĝ͜J[`|J)L~hY} ]2[«%_j~X0wŖ"v:0sG$l"l @n $f/Էr_YEr$k&{<׶$[V%I.8il]ۆGL3}SG<S\Gf.Rx ٔ}^<77lޚ&Bp@0!<K|'r z5%wx1a!z9Fa-a > C\ldLZk|$OwbIγTTOĶyB2Z\hDStE<BUXߗ@qW ܫ7ٔ>5ߥĴy )עXB_o̖EZ Xv¿ټg}K;|2/JZHiuw=O=7p]F &E%m n0V`-=yfu`rʝb1ɦ{ζ7}m>aEl'p˒\~ZfOI!p[ k8D!TQ@M+uvȖ -m=w;"X/@Y}%~!L_w ,t ؈za|TtKbF%J'VS0MuʕƱw?{ rxlWxXq*%f"݁ݚQX2̄ sf[yDUD>}%MUj4\~>Hv48~$c⟨P<[_7zn[` B~zyY&X*X*KjP墷SpЗr#FGF!}#ʉP>,{6Wr~dd+rV?/IGlV$'(C2E8CE"Jسm5`GܴP%873$1`*t)T$x툃@9j؋LFHAYEhOb.ή4<Waxνb$5qW<~M"f޽Gon\JT&<1#s*iԊ>e96`C*.>n%i+)v$7%e1R 8kʊ`@F)gCrI.~ 򰳠3\c9.5NeۀE!g[BA$% EwLC mK>TYpXI M)ZERP6,jF+[ė^̀P꼒Gj3j7;/ }wyLxzE<8b 6qj, á k^"]d Lv~60~`,8 h[#1*y! |m8% Vޜg*w '@+ A,3B(;!{_t#Y%Qka7t1xU~a5;RY Աǩ,.J硗o*bl{m{;ѭsk|1.Ev^曲uG+v Ze^ fxXEᷠ Q$o<,?w\󐸂8mMT-X*gD"'`˶:?zy:h&Xl5uL*4-KmvQ3+j:F5v X="JX'PwvL]luY-1<4^Z eIZetQw^ѐٶJT!?q Z ^{5A3 ~5KmN SQ%̭{[Ea")M7?$IᱴQ`f5hOz ̓34u[fC';Un{J _#Q*}\;Ħy#\/Ej`Gs[c70ͩMB WyTƛ(.Jځ@~&qw+ 齫 "=tAXQ5Ֆ`._H9Jکɴc߸ iv'z}0X:-&DQA>113ic  JPI*$- :DŽYM sѿ+*27ƽ6YwFVjp2x"# x*g3;'P9=GSW HNi?a,1">rM%T9LEݕ!%"n9({hhK5yGf3H=Pu໶B)h3XѰv=KVfZ;F23''Xh\{z(y5&tv-)F1lE7Ƃ !qǨGY;>]p.7޺QWM K'%r:R2׃K. =LQUMFfR7V)waAg&z+߽HMM咠'_}^ަޘX]$ pZ$кfc9vT@ZHW ]?)uPNqg2C `:ČEtz+-% ŧT([?ߟm|dr%з&xiɋJѦg2v(ݕ{$E/.& )o! /`bX)&%yuk:,0U#P\fE|zʎNP#WRZ3&! m irio)~]*1G%y::MfZbio"X[h8(a;YcF)"`[jz>IGX]@Kߟai]͒u\9cXrE>Os|_2>FgCsv~)E8UD Bҏ(Fº6=P3)CP^ݴWߧnXl{{;Q:` ^'Nr_J0# >Fߜkiѣvo@%b;b||YGRscaQ،&r0zFF5PJ*{ٞ(-W#J95j5s6 %if$rz(jʟ%2+nbmcf-8iPz+u*OM mxC+Ӑ(eXA%ԮX^:T"!f.ugh .kkmuujknD{*c^xwne|!MDE_OyGۂ$P[[DB$BlOA4_š_ "r 2%*`DX7D~o$>BN~V4(SQ dZw +\Orވ> ?&?ƄQ o貢!a/Gfx{u~Dވ1EХ2VTWJy̝sUSÞ>-0s62x^,V{DdFt;{pPPԘaw۠u9PiX *eH޻,7|H|Jy]ݨ4m.WH7>hy261Bv~ROD kbϻ2#ln}-z5y`\.+#PžXE1@m_QKuGJr_W븛XghE%jDV}Q|xPѦ\8=e*urqZ\5k RKu/4IԷ 58#8#T9Ԩ6沤hIU-zܣAU zwk nײ_=E wڣ-+x.[y~YgĤoQj:5$DʹoD?qm>'/ *x"Yu>u33Lj?FFi+vzh+0rNv=c60/~\ުF'cD[]c&b˳R!&lG@~9_<z#!k2qnn,>%_:ğ3v j3"7 2pI-W<\0y='Cf*F@dF(̣3:sϺ!M`W*@=O>:lMvHl:AHȖb "YG+j#EvC8 V/"7߸^;HbyڳK,6Za+3SOgU')~ߚ tO{?DLyS̷C5 IA-(Dz`zޔP*W`%)t-C|'^]AW#kbn:|u1aJ{{[xaJ[aS5ȇKE`PimUKHa˕7y+#6W[BafGnBhgoӿ 7~ at.E/C(̝4;Y&,hЉsFWfvޝI9 Ȯh ֦=wy LѬ$R-LyN 㲝i#_=^IM;Xr֯XM#b9\= ЮWQ@ S3ndpc< ^C84n{i_3 uM7m Vf8A ?-k eT|s"ʻţow an;*܍y耡O^ Bg Pk,+YHq(kczDmJ""rQ=X`wb Ig0p]Wn6c/ C%/8SbusC:@mA:cN ILv.$|-O[}sR)^7mt@"vb7gX G\d. &UXkljyFIpyeVwGly):3` `S[Ft'y:y$ nS>G }C YwCtW qoѡL'K{줋_  6:י zdfqИtZ/v;O_L[9R~VRNjUHg12{^[:fAR g~0-(v[(6 Gyx%,_υ+Χ,r>)VgP DɳxD;^V"-d$I|efx [\l-GٟTj)UcơPgcas÷ o;As93~0_nf`Z'; ׵zgh`'pP!ΙO?d?!vu[/9X91Y|gI`dMk[oIi"`zk9rC7| r|2R1qkL \(y,iaI3Euhd,1fßu-|4[j)ۦY[&yt1Ya'Rx ݾ )SmIr=S08'QWhr%w;üͰ6Xo\rYZmֈ“y :,ԛag^e4e.h@ Jl( T+SԿ5ܯΎj$`,h-J Ur,*E_2?hC(trRXx_Çf~2Ut~"m@y19|Yk5lӓF 0l&g{\]O&?ݥs:ͿGZ=dd6F T0ϙ?dS3fl(</zMS=@o;.:We3D1ЭiI.4# kp[=*2/:ZpKz2ْvG*&"OxfbZ)G 1]ΚLQ T(o/'j$ ~O tܑ'β5VHoU2` DHpHb26߫=juC!u9>ɼ8ѥWeIm3 Bsj$-4 D.@k&${;Fa~JcM ^C6l8,_NQpHLL!y} r|7Pl X0H,oƧ޾68KQf]Q&SLƼ*2W'ZYlj5~)/ɲqn*5˼0=DtgPC9 ˍžXQH,ͪmDZW}5T]]{"X?./늤ŧ".hG! hAv;X~1 Uw|{;%{ىܬp#A g@WhAA>?fsYO+}*1+V=(~$ՙg2i„vy"#⯨ BnR-f6=$ÞaVEuud8MW6 XܚUqf]@.#zu:A򄴕߳Ǥ& VGFxm(Γ$l #P DPY|7^:':q<:U<^VY$cR:):rbZi6I"Hw%1QQߙ$!b+૱\U 8 cB5zi3mYƃVa0`q«_n@X~NF'י@ @,#9y"(R= 4XXee\ZLc(FL6S~7$i(Δv̆qznE(~ΰb}\?RoXZ<R=ɍHS<#\_h@tH͸y&ZX==v+;~%bYX|;ٍ sbKe2ýg`s^!pi"DݧQ YhD Zp(<6Vq㙈!LuD{0°4ŷx{||rYbP?н 1gGq0j&OM;e=~;j$vv}ڵQDu*l ?g ,&N婝yѪqa]CbJ¬i˳rxH.i" i u*":J\*\/_漡7 [sտ@i;YiZF(BTBs=8a$ߩ->:jy;({(C§_ur T1`1Jؚ I_LR2¼'¿~UBeuO._+ֶEw׌0lt ?Kvpos2ifE5Iu!|eD!_ OZکMbJ %vnÿ`K-6%6;A_YYF*#42HC-߀5wBgZٍHO08 ;Ԍ5Ilݜj2|P@Y`&lՈY]_jKquF*|lUj&ơoU*gt<|bO hLdQd;] uII3M6ifjhd<(al6hI}}\p\rcyM25n. }!]8`н (8[y}6Mo.4d7ah C#dKvO;ȩmHVe%X5uN|2b"5soRyo?_Z hu7KR[FYj#S$C^ЀfuE>h%NKA.}5/?gb5Rw7'œU%j!K.hAe=~% |O3.V3RoUg!X9 *OzJiUw#w 'AU?$++2JVG(yha$Ǿ\5BX"i#p"۪ea1(ѹNnݝ&vĵ=z,4O(+\rc"?qmmzp]z؉{G5j򭨼c$Cbdiţ3# TPZix&vc|'-4m̟&HY fz$>QgߘHvKy&y y"I,uvEO>٢:,wg܄0tg!뎐/Ax-AG*H q ,W7MR εB@gqުa \ӺuYťЙ mG/H32b"P L_f"ku)mcMňK`F`#]Q$0T҉:c-@(%i* AsO}0d?@M sxT""]8kS Pn֋D~) D&! ea+:& h,>aծ=(xBz1v}?ciĉf\995#f.,& OTIt 4P Q5VNm]lKwBS sjdP*7s0jX5XXKɱSed#8l/ jKa!JXM d |}b ӾF$ -2 4A#:|8+.@dC>?OID)2oaYr(#ZA5er?ySG= ߇xg{DJÌ:2phmmYɊ{dyZ lcz)K?u ,)8q9=z6D^V0zs֘hN0-@$㑞~JB3F0T1OZC)܊\ ;fUWro"Pq27|w+̓T3PFZm{(.YY}ȼ'$/da ֟]7m_*Gj"G} YwSXx*,B~@RLɹ8A AɰlǑD"~}ݿ"ަ?}X4!>}T]JXK k+`=8hw70@x3rοV2+C!R>$f_C<}cu8)9^s 2b=a:FM])zizZ1HoIt\Sljn&."֗ GUzt*%ZA_@ Y+C\@ Tx)6v:WW*N0Ŧ#D]݆mD#A>T_Fg.{F ] %˕+akt2{*~p9)wgjb4I,ב8'Q'P*˞х^جLL8-ܠ|9jpESxꌃaVS+ -{-6?7j Gj@MϠ.d E+1ti.+X ~(=6vEs `ܣ,]P 7fh٪N@}Nхjb04'm>[t.Xcw?{R(BD2Nkًva@+8%`htI),_tIЂPCTӐl17 KMZ3 ֝X,'ՎtX7Mm(qÙt)3n|a?c "sX@d6ei1s{왣q%n *ٝY >͇t cB"a;d[}s)}vZkK1u6Pm$b߿~d"Ħ-BagSݍmΔPD@ 1fr Ի\^,?wr|0HLH])"c);:⍿jϾ<^kJ  Gô'p7>| BI*{TTUh0'g5Xǀc'׵OpmAk.6BAbWTϱtP8y ֋i3r&cV# _lhAsJʟ(iZ/^x]rlZSNמe8/\!W5num0eONSQo^TL}91ܐA-5I)珅!0$-,,ݨܚog>diKHx9>hoDXe}^wňObn%[TtFt҈8*ڥfPTԑ2!t}t:Q ]qw9^L$PxDljz~Tfnз9TBuHfГU8F-V!匠^(vwL's>ݲ*j-3T[ FZf o;@ @+YSY&nykO\UN\^Jq'<֌"m9)s !ϳ+5ΔDd+;gUaƠ?w| '~p}<pౙ50!8+DaJR)I1][cy$i"M2E.*bS)kB:,]8ĸ8ĕ5幽-fRPUuSWd6> wRB;R cA14~G•UaH+O/ZG$e9n$EHXee []dϧ>o˚d #bT~\]8~!s,Ia[=gY"ʬէ¯aӊve k*pϼ?Eڨ#l$1uËr[UKA`l;x'4io|gP]S6߲גaMa(WI )'\v;)7zY04qO&:^vO9sy,~:R1@x_[#J+rlumǽ_xY1uz־_ mÐ0K+}EG (qfA ;FF\ \5*C_{9eFL X`/QoʩjbI<ͼLFITV#l,C,92mMߐ0y CeZ0#/Q\^b4Rllrom3*%#-6-^2p4vRi4aF`a^>s%V6!Ϲ+ B$ω+ Ah:gE>W=̐$7G{X_G]= ܴ/Ohi|f-L SX'FE×5nX*^W$Kn$j)zZ'Ő/4E 4Oa1hȠS$!׳DMu {nPt$`¨w}KoqΣ*e3<`kiĠF:8n¬i/(y}eA\xYhwp,Y8 Y\rа&gVE,oM$v9̘ܿD5蛦C,;@^K彍XTgk|f*em2_2!٦ux?O },^B#a+Fwp3"FeVvdR. !#*o bjb3i믗9$FTŗEK?F[|]>, (Ђ`}:\Y55ltSW w#ETqT繟D~ꬴR,oC^~0æ+2%Gp~/2cM`[*xg݇E,ͻ~8_O Uݎ\c-BZҗ4ågcOzz]틃 -9Ry@%偗|*{r)Z|Jph!'ߍGtc[/pB* }TMIR"S ˠ^|QD  i|4K9zl… zsK;k7B+?n0)gT2 zDOO*YQj9 a4RO_^g]wYʐrMB WnB_a`h,Eor1 ̠?Dzk*J-"f@_;h g~2/NY介vvh 8ؑWvNċm@:#ˇM]~)JXj89Lyy1s8(ɗ鋭K'P[#,XwƷ9uT#x.W6) '/ owc~%%/1=g f$d%騜eb\G3;#h3G2kux i焈?P>%,uNha|IpCtideyFi~y4VbɏE*t^u#@.4L3r0+݃כٹtN}9.C IzPވۦ?FT- =)dSEq3pS$DiyE+6@V$AK% NCZ3jEp1B5Y~G<ڥt;Y*IK35j DչGͽ8/b{NxXߨaꤓ cQr֪}KPhE ͂^A&-T5]F?y (A MIp8f!kqa6OIO|[ߞT%E; Ֆ޶ٵDa}.y`'3A1H |uPV@w@ݍj{F`SK- K+cn#NFzKk@FGs-D=Cg =Y$fT`=wZcź~Ě^Ll6(mamK֪)&7n6R=l5%A| S6č̈)x+TjK .q8q:v!Js%r⓿eM[H@[k[4k D Sz~ W3!ÆJlsTgJEQ>gE6_!pĵU BЀѓnH2yLwh7EUM86o}Iu1?ÜYLxXnG`8Q4 Sҩ { ?$9"{VrX +Dt: ?@nf"L՝l9@^عz-~g[_7o+bigj ջ7UC[Gk﫚2XU%z3C"j{/[< c1`5DќIS`ֆ6ԮxB쓭~s|N"7JK')y.(t N]:yxNF6&7kp"pH|cGsm(BUp,Λ Cd:>s$a^o$3?Dw4ory*Om>QmPGaۡ17?| 3lqp}Haxzr iutAiXFXs( "g&M~2XZ Ѧ~ ҍΰF>/2> e6X̌F'jTtiz@h YMF#,zvVA[Ԁ( j&sŷ[4Ay6 MPt.3ܻJ;Ir@;_uK!n*&=;q%1% l\˛L]=fjڭBsTRHcHŽ9ߕ.:4Nj(Sg/}j% RŧxC_'b%T)% :UD#Rwm<h2rMTfdPP65wRrtbb ͷ/_nք]*yrZS)tON1<5!18$U`lfR%nu 3D>ApH_uv{YŁoH۷a1''4MC._/*-OCX)wbSD(0>CyY:|y'K<߀I"2ŻJ?MC0CDV܅]xIauS#S{'0~RiX>)MI6Them>Gl3|z()վœYkJ"m'Oq.6NZzkE39J4}t0`^D1 J I4^an%r3"IN |)ZnבB7&.39M`Q%Oq"y|+? 4T\Llʵ#uDe^=3|]JOo-RYÇ3fz={'|hƏOa*r_&)u/ϕcQeKmOA XZd7*p臶+1cO'4CʼfҳHȁ:#Rg"W[m),9۳m/O@;kOQ6+3dDx썘0µwzSkY%E&CsM2YwʡKn"`jĺ~$'G9mYEe)d7v߬t$h?C &Rw:TZt)o0wn G=-{P}}%R+ÑL7 #Ròz: = KpH3?R>F_VXs"fH>FZƄf!3xwЩI}Y]%Du#Ʊ_5ap49@Zt1^械<ɹCdzaVENfJntF*͒.=UY4wCLª[1X8O3Yü7rMՕiGnHxasK76Em"wK)R^}.Ȫq|%tu.b? qyМ Y RBU8!|)|&@ZRxukΒGbxChD*̹C+۟=;7Յ :y"M1Ů=gǎHDM%TDȘ*n OAN$>^1F\Bi{ZÉ]hdpබBD;:`k.Ji3;i<2 5"ϛK bT7Csfڃԗс[ w}]r\_%]oR]O '"C|O!!.i=1coM2o./AHʶ5 }opmsto|Q'N"ه5FTnOI=7859Feԭ%4/&uU80yҢqL(o_ɂٚUPNqբЊI}(CMCvaӻ3<z#]DGʆ%#9w#%IфkDH MuHd -hmDZD}i1-E1HmԜ$|Z[CEUIH&IlzgA"4;)1n="=1(z$zan_ԯlŮ̱%JiM~zс%#X/]/S摻C%U% \pLjD2 WYr֯iȺTCtDTQ3fjf؟좩:P'iվKQi`P pLҽz#q-FY1䟉ܰL2a!|䤻p5o1J;S@[0,^b2[p Ƴɮ&b/!9WvDԨ$YϽs\?NT"+kǦMh[J o!-BUQh`o}g w 1^vn4 IU4ś]fO KZ)P{PjB[R#ʰɷ^㊅2T+ ssC`(lI.IOUu*Xꘋ&^^_/g,F Cgϋ Y~+w{D lQs liTR%궇ruڳ<xY/J a*]-hy )TћGw򕱨p|&{ m8yMJ ?݉~QpMtIC>Д f,2>\a^.wk03HJw, T\PrաT- `q'툏˄9 )PTQ>imN0bHw,.tI,uцܯJ:Zeu1K/@$N܌$墘_F-ə1{hԷ}(Dz'XVbEO[I /Χ=#b[Wٱ7U"-#igM6ckڄet0ORdq0Ű#Hƞ#sR`q!D nmgD ֐-16 18dž,\RihPK`KMӊjzY-^1c)AƟ5NMEvs;;sot NSԽ *tߎtogS8] ^$ Z5E9\srEncJa+dNs#Qp6=B[ܱM<),>S#x<61`5:{X $PhN>0 PO|ۦkp4]ys/ɲ6]x;<,mw_3U5HHffM,r;-D]g3[Ej#IłRkg S@e' .?M4ފy#붬?0}lQ5N/^72voF&3==#'EbBGZD&Z ̫C*8<-lGOf5*AVw) lj{54X?*7_bdzat4-$O?`r͎*IݫS^Dž0wnߎ[Hz"V]Qʆh,n?lX!/ķ"4;x&:}\sD;QlF8sldhqdGio嫷'xx>fRkeԋcc*u)jL$g:mgPhL#u)iM. gɲ(V[[u>r& (6jNkSk8jrrAJ W&1VZ\~ipAbbKnI'N+)1ֽl`18Q$vM%%S8fF|.8OSBe!f|0Y[̀ãmFk]E`X*\Mt)^6b=Ii #+fF84B+oJ5܈SLD_eEbL4WP8J}VQ$A iP퐫rmS =\?P!kވezo],ٙ;C2 ̚yoǥ *4{*ӯ ځ C![vnrA"lfuxϼ;Ѯ&lE>~a!/lY<þFe9@k+f"?h8y 3@f)9/V(Dmf}ˑO?4b68݀; tcnZ |Pk!,|2n s<22:ͭfssw$xŖv &h#`Hw!؏0߿aoU$`3HLCAa`s>jpH(NȪoSӘsݕYLHPI 1)ule긔 #|bRN" \4N'0i{k;jFϬ&3BM{^ iדsSӡ(X1;Jꅎ]l]Fmm_ BiA\:P4*܃7mlَ (4ӠœpuN5q =I :jBsУ1|~Pw j57lGx502k2z'D7b$8@{F"$jp$XAO-#nx@́YqMλ:%i!kHR\ScgNL*" ZAF|c~A f Ky2ku}|` r)KI2="=z'ߵM8Iw&BP;kҁV )t!%0ѵoR7\O\d>RF˄oy;pPM{HMV(P1ow :6-8qLs^(A}D'܏4x,V|$h[|śjhƼjY NwpoH^+afr{׽p+++DB_%!$ȩq$J1[*\-g:܅QQيov cYC>`NHkS(U&g#WHS[O~JO'_I ."\ugz l\_Yc|w8 g-qz>oU)mmОƦɴ0yFL?$D/"5MbVx\,jJ4Űk8dPs8'2d?EMpIL*%WNW ]G\ h(d}s." Y? vNFJ&᭟\ZN;񾆀ڴ%܅L?awr~mTdҤ,_#kPeVZl@? EKd/KEt8J2x㉼9k)&I_ r_D'k{zaxjȧ$t%{Co_99TP LOh! Zȱ~^*j6H]d}rpJ\7#WPFlsq1ޜBO F8^:XzGSkz,q];ѽ!g[B7P/.L=@ UAP$Й|ܑAXXQ*,!VhlFRT 1/t2?k|rJMѫ%i'KJhƪXa}IQ2Ӵ\Of8S ILJWF!a,A &-}ĵ*#Ôi؏l~Qkzu*CJIS ad#&Ix`|*mbyHogCKimʉoAۍNMIOng-#M MS!:2@4>%vGS? `R'>zg9fF*DQO˜4$">ˠʀ,s@u]Z }y1h c (83:X䢓<ۋ::DE@Vc.nJD8ī6hUɁsG7pgyEIڵAm^sD})[4/!Fvqtlnu٘))eY?o\7/K:gMMGA%^93;YlUM钯TAIOκ:v?fAGVh7W5,h$}a?b iON<0AEqK1Qz. [ HsN?6h 9?8 {~! FP~1#mݙUC?k/w=e>4!C[ϯ,xr fgU%ɗ}F=pF>c6{¦Ks!eǠ؄9C3]UsC-B. oڮ4(e1%T5.֚ЁDNͶ3PdpuJ_yEY3c[wR eb5b;M"/dNϤq, tgBڍ0$3<:vƕm~ML]G*34Q%y@gW,.*א!S 5C7RIy'mf*= A@t-lh%ʨdmq h3,ٓ澼,߲nҵt@ڼg9QΤdC@XƮ7Mt3/N@{IȓϺd@{!LXf,&4U3J_$ LV$/V݆TyVsLA'e@5㏪nP%YIp;jK&vKzd/X /a1ە脊qœkY >0_k[N-,1sw*ljt<( $RoزO%} kڅTa}<D=1kq] & Z||!ʼn; G JWaX»7䙹#\z(vcd%ht԰2kwe[ТFT]_<-t SyK(MV/&%%)4(8BG]$}: >W[ɝW;XC s<]aMS DQD hWKEm*^,̈́G)Z!8i&'9Sw4 RCƒ}&Y[ ڎD UHQ*im~KHqH_kMĺ36.T?`lXYIl"a2fU Rj͖ievHLO~KDhQiQC,N.1-ڸ L8p~*7 e^v32-oe8mBH"_Roe2})GP,t3}3eo/ik=Bw*`jfU.'(ɷR).;_QFߌILڼ>>ް=Π[%ѓL˔EJSmׂld6IEY~V wFTs x=i5hXõ/ǒH+ހ 7`]LAۇPpLpCA _Lys _61E/zRO<5i)mQ(ϒnotܰv ݔTecD_0C_;~crQ!0YF ޡ~&.?Eu,κ}CRxNͥ";EڏޗFi?]oET=Ai?"!YN\W3DM f6-8˩XrgF4'ŃrXFO0$Mw 28_ha<-ѓ*?2|Q)t0L5+J%jÓE9-uWGPW32yh %op0>^_, ׇJ{oY-w-X4~{cH=]RK"  558j7Jg]_mhQh Idy5iDwCk aSi1Pr fe*` T"SuC)ƜE#)"'?y&CMtAʂvSC._R) v(&| oxJF{s!0-Yn<>nEH]ۣ>fĶYjv#u .3[R 1480M_=IT oHglwм׮ 1V1PmPJ^6 гv-KjeK7ɵLF͎1gbh#Aׁww_.T:K|MDE@%8tigPAD~8[Kҥ @xI.7I#L%-63f(ܼ%zB_YngB(C.O,f3?5mݘK&G +Di&VOĸO]"od Nr@34dalܒ-фÅb9-[)S!/xPc3b,yo .[iۤf-ט}0 ŚGی 'orjJqƾ# G[_Xjmؠm+/#A29!3;#6'w;y=Fj'XLb+bj} N(Y4,S^O۶SǠî]\_A(ԛb+u:&|(hhI^H.cO7`nkI0(KG.xpXsh 36H@v&%ҧi/:Sm^y(lfGk0ׯA猒ό+9k;/>cIrї1Ⱦ5^YN1&#u f PA -w?] b]3WAXa_-*ߨ|t;'>8!c6V6<\5 S%6#LuŮn3k#PnӀ+MxA&Fr-V9zM$oK+Fco tH1&湯Bt}143 bU"ǁ ̽>xRs ~:N4p_I.}Us "#9E*Q>](<,KɁy _i!.sq ۠ЏumqBUWǾdfZ\QonVC|& Rqf7Y9T]%PXyǼ;FAǗMC+V^ IVp.צK֬!Fy /KZ=5Z]*x!aT҂7aTy W?Oc5iRϫK*{4a-ΝS{H5e4݊rSHB\OӼ, -acnMR~΋) ]V#`XRA\VT$g(I]I3;ժa)-uHeF۸:B :Uȡ/]a&F@(6<'WͰ9,,ܳtD{LA/F ݧ %\g[a>HObO w#&#ܹ a)PM ދ>A? ~2Yc㙗Acl)` q0+"1}ESzW53R:'m8i8RZX2t~mzֲKN!I4@iL DpnG |K14 4Q]i5ٞZHheoPΆ;ssz˸7"tfֵ* {=gNQk? IƑaʼG(Y6jE_H"QXEjQYg 'Ԯ!>τl (p`<"9 C\zO v0^i,t:kP% 4V- p-?m(*:<Ӷ,.񨇊y'Jsem%vX`<ߙ"Hoǧ 0DCϘ= Q/9 RcA4cς}TFPȁ׸>FbbQOhu؝RwU ڈHmbsLaO/L$6UT)A=q) k;Ԏ`/lk|ׇ~ :Z:QZn<,y73AnxsT6UWLkRnpzɻ&X #^ZVhH[w'ZBce`F$;L#L`cN˜I~_G\=h_A%Yslev]!} QƧ{X.1{/ ۊT}|0Znp;k-5v٤' >DO^2n1 skd'Tӄ0>`fNp ԖV5 HyGY#ѹȏX 9UNuĈJAA+ǎ[ /: zOܬpr{n4I~ $^dIeWmhSvyO<5ӱ$Q; ׌@&D~vf%haf0Ἂ1#߷}KX),U{[{7-gZn\8&ʔ* AlE )w cw("􌦎C`*+c/2+w"mΘ j[7s x9Q{-:PJ`PQ=H`$fF6 oc$vˮ0k*~K/AbcH\ ?۰XlV~W,Z5h~CJ N- ]']Bl:d|FeC$*9VԷasH*PjCO*Rwˑi 6 ≞\i']S h&rfx@$Ɯa*.PR FӧWdv> ^r X(#9!RaVzVT'||{4}iR .ܮML]TUi ⬆lGAB(e{^.[[譋l4c^A`/{tc'B?]}4<%uCal6MncYD,|3KhaAsћ`ytB'Ҿ.^gm{/FV-­}1qDh#ڜ#c(v/5 Px$Ԝ_e *3ձT>t}35:@dv'>".3BHiˡcA #j!ܔھ!`ۭ [څZw#şWܦIB=Z:f9q58P߬G5+_eEDjyA"E[j]nе P5 / 췝MG+W0Rcn}a6nV>CH2q5MwZ ZsxM$9yй`km'p M2[`u(s;ߑ{W#YNw7ԖG67Z !1L9c_z@9u5+h ="z>IfZ5Z8 U~:ҰLQN6E#Xz " /]y b^f6 -3WqlFĩC::@7mv&K4'K#JYB[cC^L0#:-ggpWD^*N}tiJś,lrzF2fUߑH2k x~n\0hN_aspBԎ=ǁ7ou"C(^ "4HhB3G<ɾTcsj4ϲ2}e>>L Km"IbM}êI(LM;9d3|c?]N&ʖR,HlQM67v=8Z;mU0ghcmrd[e$i_y9K~e{rĺP gN(EnTsW+bCZV6mJ( ̩3A[|4;h?ki'B7'CJu8//XsvBeXW|BťR'9F:镋j]‘O+&Fnd#,"@ľ\P^b Dw݌ͱ M%~ēr^u.fRWXuE{Lzؙ',#yNo\"dC٘]K%Ɵ 86bϳq˴TX'N2>߮{%ȺGq Ŷaꠋzkֺ$DY\ch.`{̀BLwxEfU=H73P!PwD-p:faLi:5}丳D/Ő/Iy9y8hzcZ43ofCj#z5!O(Aa/\v)Ҋ7N2ܗ2L2pU, L #ȎG";%:۰; ԧs[̤\XfljҿE@a5{_4mTr}?8uM_;6o_KTg >dO~24$a+ӔEO?~n_2,.HG&)D.\HM"ͩgpռNYv%o>ȣ/ּ;99fWĄ~o^08b70J5L}&{p+=<32ϟgOk2J̿xHz0,Ȥ%) GnJ0 ^k"KOB,[U!:ڑj=dbXp)cGE[  AT4 ]̖1A5Agd$S ?Y:4]m *xq0qoD.F NCo4ݶ'uJNO-rjHSq^G(#ԁ.GjajlVQI|Qp@`!M"otU⠐W}VBL 1Vb2Urgl cՏ'*ud`b)g_,Gjs}UWd;?C@"H^=V2[+\\A`kNʛm{=>A8e3I"Ǝ`=OV-G@e—Ň,qndIS2Bz[nZ_ _ [ [g ܟTN"u:$;m' I6&It1'@?(?i45=1Oq 8Z{(aepcF(R@brl.0m\)+2stqΤg4GAUjc%v9Ep #ߖst /Mi Zj<4Xѡy4 /3$u38B.~nX_Q#ӎUV)❉ys ?Ṿm`g7U)E†UO3ڃ  ]3l98w3DΨO36\uf*gSv`P@UQˮu?'߸^fϋp} -֙6?~; 8H9z&mdeO'4:uJ=0n$t814l~!Jw#\y +igpɇHح`_ i!8iuhby(7PPMEM}drwrѷGLcgH7Ԛ$'=x}⇠B֑Pܴ̫lO] dņO,уxd6C!iTU2V~3ykZu.B8SULqTނ.HWao!C\GC=Nf_Z jd$۵&p"+㟗fN!;(\oIW$ AAqtM9K pM'TWP}U;2lgçf 6#_2g ̑?o Y+Mk;}0u0 ã)+M*H3B\.stdXNMzj&?rsr7e:L8m]'EdG6-s| {8Byvu!kt^z]J4Xfh)Ѱ!HߘJ.AKo 8%8HᑷmM5..MVɵőx61n 8{a4G#Rs k =7K)+I t/_U$$aO*cI9@,H߷ĩȺ3!pRaC~v7 @1vkk'~t8!Ź\\%J ֽ/d 8KrbErxp3fp{5-Cg7a]helZ瓩)7 _ =".=v=n@[k @@kn홺&O|xM;N|niU;Po<G[eSi>=ӆw\2mۻ#o~j 䅥a4U 1YN]}+,.6T i(l#cywAy:axaI,[=* sy"pzB=mWԿ(S{|#"4Ռ:~ Ū14*bÒCY1=`FR5r9–why|L T]8`Ł%SMy̺tPjd-ۑ\-0%Ir<[=Z;7nuP=t-°*Yc@.VXXb}Z˓t `w9&ә8΂7J(ۿw/cKOvim>S++n%>v h`J*[кA4\P#ڹ"2 7@y[({d7V꾄!C-7[)v=K]CY|- 7{je"7cLv4Z0Y#k6|_{VJ M^IZ01_zS)7^WlQ R %6`v6(,ke/4ӯ)ͶI$b>LKwBm&]q^"^d\kNrJI+Dw· #^z /8*O&^zV36+J0cqTP#ŤaS{&bjBcLlALi]l7=_cc@T%%.SU"vѣ@"|/;ءW}m'@2t/\5ˁ@߹|p_.g*z+}䶅4-$%wDdrWG>fm/!aw9)"k*H+ѵγkx4{hDG"׳2*q66,f62(&itgu5k=YG" igitF@ׂJ>0 0+:s: 4@-[j"6Ƴ#,ʘjaN{C! ӆ<ګ >֝,^N?,%gDˡ8>k$w0:3Ґ51^ڸ6vfWeQ5r1kF}l\wQЈ5U>/" ` <^v)pM{az#l~~RBy[l~e@5PP sqr%j0bliO^7Jfƿh>U{$tc:)TzYHQj*⡃Y=HMT˫"0jC9bdUkP[s!߻O%{Т@o͏X@k"zjOSR}&jW[lg޶7{|^WA#ru]l4vL8"P&l7mZ6[D5)$\OYX GTV Q"/"nMcCy:ۥ?U߀DQ2s /בy#./Vs CSkx}7''>r$'nobgkXZj:(:< ݗ펷"ZoVw1 9:FBqt>~8vMߪ %F da=?FN+W~v2y'# {21dDb1p[W,l#91=lD,? )JV{D70I+rw%"z&n[Ĵ;06!y5Pbؓ7) %@4A0?h1q.cNn#6n­b/+Et>B5C&ɴql[1붘 G^OT54nM^YJft9 [*`pzx̡h= ; w Ry.;#8%yn߽6]7x/JUnm'gqQiV/`ę֣y8X_$i Кޒ67*t4\_P K+#5b=S9`) 0/JLt)$ Sld˅Uk:ìیIWyM Y$#r[; 97%z MYWI&\G!Vn;Pg'?wʽ-,(\tiH^DG)-RGMP&`7WEq[jr?DM*^5x?>A[@ffw,BR ,n}p'lUi1$}$DPS {u#9uiw~8tJǘH]fIB U@R '7]lOUxWr!z*dJY!_Gw7JmKoJR!nekE7pjBk\Ԧ$a+,ת$& %ĉ5*M4~Z@=  5]zZbm/gyh$<.c6Eo:HJ{=2~Ok 0G$mn#ut]Nk$(t?-OEڙE_6rP{%u37DJV Gv S|~~``[vQPԶksyRջ5$yP_.Xթl(8nPyU@JrOz|#C&mҲ-jv"Ց|B]DOeTwlk[c4_,\7؃)ǧH>mxxZ$=猄gVc.!E *%SM-hi+]*2ZJD;)۸y:v>P% ƤpEJ/ fNgk%$6'ROp#V|ۅ{7}K ;oWf3\G%QBI{;vl8xqtN1bZI|G gQ\<]XM_ًמ-dy^![=>VcW0a3jkpXx!qC7n݉1d+gIYDfxMN0ߑ@ޛ_[>LAR%WK`u_U% *#ow)ذ:hRGZBE cM!9\(D .ݳzv{7<yER+q<  Y5s?w'EBOxX0TbXțU1`npg66K}WbE? Eۤ_QDNUGM3ZSCZ# ŖGn53p#WacQccA͞z&ҳznn@A\Pٖ3(o?&g Vx䰗j7޽|#}̸B t6zn`os(>h:9O$@av[LvwMI9mO6>0Y?LQ)E0a6~{. Sfh/7:od/T\|BAg,c@g=c}W<ňh,f-i߳Gf Kꥥ-YE?l39=?o s=/2=w^c[.,ԖN3u&'\Ϩ~8x(d8(y {[fu;`615nfE̠ȵؒ G(ժt #{ɦy13Y5O‚E0ߍ*C&,R0LX55~q⏷2f?`.EAG_^˶^Mw|%5A{B9qnlBؚ[v ݳxcf{S$8O7Zx!g  K'%SžOpd\ +;*ꯧ 8z/5σJcjlwNf+R9~䵰b}JlBcn8a{VЫH1k toQxĴ3( B)Ne6S7v # eVMz}UV<%]S$8{)#w#!/ (tYhZO~M<ظGM0ۑkg璹(XČ^7b_rm]%ַ~kTV#J&IGE1>wb2)6K==hLky]ypުkM@mN|%J!Ctez,*@ SF ~T_Ca4$__tM .& [ͪ0;w55A$N&kS~[>kS4˶Ͽ|` 6w`qA,NJ.9ǹ}w41SoM6DcX9`tz$%;&,%+:']o/Sd.&Lf-A_)x/̲WYtT|ͪ%<ظ9Cu2Q9?!LˉȷπSer#(u<ЭUoW^O'&F\#B,%]DmgqNgNj)wgsf40"kn24_oYdE"pl අw<1*D(R;WG+я<^d&e=yO]WL v軰#m/65:Ð6We6c`Lxy"KEG)h}Y&>9 o) a.n-'ٴ<ؔշSjC&܉Wqt2(Ap "ʩ%Mb29t(1B5xERkci: 0sbN&=](S,{} x;aiu=`/esa=8 j@}N(^ٮd9/Y!n]LɩeϊmUXV|0 -$ M9Ք`+%^淛]%pd)`JCL1`o \{' au Othvm8Ң`%a(',+;Q8z f]vl>.!sYCgGFw2yݜRORd3D0.Ki.Eɑ\kkM`p'yg-C ~g"i_x[Q Qp:jq SOFv/z?Bn}*X,L9tEzߏyk=2AZBDL;ERU$(Hʚ7)HyUͼñV/^ćv$ǧ$>|WBp#{NGNbʆ;>脣/iN!ĝP[x^.2A8#]|տ]dk\U2eV.%*4R!.(n\*d5Ke[ Q-VZ)Q 4RæWz-[H4W5"SfjUv7cR¢BSp}{PVTƓ@QGF[c *C F JI6H*q5xd! ]!J $&&jQ9R#b+o`>\ N$ fpG?_$r-.3Ok i%kEFSy)ŏOI$nrOYM OHYq' MypӳuA2鈠YI+4UkGiT $+o"vǢp⪼u]7=˟Tm ~SYʘWcгK?pMmnK tQvBuV0lkꄩA1Z?{d,}9#UaW LzEi=sH77OMFޤ>ƩUb}PeeKŨ9Nk\K)$4V׃Rh{ՂHpdH&,gEaI[ ǟ A^ Բ Q=\F-o.#k.K{Va@m%-ˈG'b; 2-p=%ͥIW3OyfsA$F`L0nUa\%7 wҫWAvda>9K5N!5dL3 "C闾d~ľCCŽI+gmiZ.h/b)nd o..K3cGk5p Xhl@ĵm҈,tm`k(8JӤOi|TD3aL%1VԫjZ'%3@[hTgh=]%}-k&1! I Peci f ĀgCʥrig5=Z*JDAGy-n` NxH]~n\Q TFd"rXs #FiAUe7#IZlhZ% rsTe&1~ e@߽|w8\ ƪ;͙VَW_|D|4n:~^8|Kf3B%-i):^5j*O6K0l ۮIJY;5W *9lIz0=_*z`HW*K B^ɧ.Ұ(iX12k=*YγɌs mx0|l!T6Xl~N6A8vT"r8D=4 YQO):w!A׍ û^lJ#U \X AEjUZU2-"+$.O<[ %7./h9)ay ʏ)` =J$CUX4 gņ Xg>=3ĹV{*cA.{s_ÎֲC7q2r_‹a7, OXY;g&ӻ]ԡ2jQxto)VQ3 }5u},Gm9tJG,K1~0m+yjdNЙmy\ǣ IƝVe$iw/Ve2䝁Z_5=kc}A]&qVs2:i ;փ3vGaEoD=SS25"h"UE>/֣="Ĩ]^ؾݬ1fn$QEQe϶0[i-T廢'! r2kxOdb? GpӊPse[hP } SSO0sŮBk(jlL$PVq__Vv՝bߏP1MFxo.J1Go`;'єZUQViajAk7}jM v:h"Ĕn2 ͭ*H.~iHQvRr4m_._VzWj^'QBI!i_20YۓO':(IX)'eʇX͎-wuЁE&qß+uȉsErYGi)YT"w2|h-̓B/zɁ]A{S7ufUA|b4yTߖ.6cϪ*;#Dڼ;_}GD\|nDY7a04h ll-NfLXzch8E !;+bAׄkQQ }6a_NG!r&(7FTgT)O~NiҶ^t/$:Bk_W KA-Ľk4W$MFɮy_*U)߽ej8im pߜ5{yS/DP>DKM,HjA6z/ tn] _o-r>ȗc$:TR"11WK<<>ЩҙHMk.I|bHpX PJ9;MFflcK[XEat}L, ~Ql0]2E9^6ܸ0="n*މ)1ЅxR:]r(="sQdF LS^[vp]3};>fìp !JciM: 趙| $d>x7,vQ:Ȣ|J ]d=dN1xrW%a'sUηap4ue{]kz19pbAh+AVa2DO}#z2-HWQ$/p Ow8*[ԘzUam;+F]f]7O<|xJybadc?a_,XC| C[ShgZ*?,cփ6-`.q#4\ UׄF5'Gp8 ҵ q5AIuHU׉긊j~njWD&,2ob-Vս;rW`;Ϛ&X@D2cmY\3D2@Jasr%XrbD{:km;@ Oy?rث?7fPTV|kյI+dڈkzT#r5 N Y7 v02~P}E E@7Ô])7:X5 K>}5wEGVە ȼ$匉fZ7W~FrĪɋflsYE,b*N(] H1ۭ>6!C{4~C*^>|#ɜwEX2̐y]b%EZW ܶ#A4UUڧ؀o!Je޷U[*l"!b},"_1SA^~BgJx/}z O_!iT'e(P"7nGB<.}B+z>ҁ>ETOQL&u2FpvxhM[ }p\Q| [Ш3b @}α} ʛ_IJ[jJJF@TۄXQoD-sF*ALt{MZq6͸s9M4!zg1/]9]_cKvΨno}JHQ? NZ}+걹@). tq$Su{p"/nYT_=\,km}Q`^i$o%yfT[ #C7@ˬ!ыr"`:'t^ClJW;ν6(8k N;ݡVb`6b+1+1gZI' *y}̀#oUe_edlבHPX\ɔs5`v"H-tmd&aaN/hA6Q9 Ѹ\jǴ[9fnVHu゚֝h~˖ڟ3MWQcSZh?Ԙh=l?cxnBRs\Vc|&3_8H!:jphOdYml4 bgNNB=NسR4Vn6.ʀ%0m_C,~en/x qVF+v̊<,CFlDJAX ~?Ge>m< ꂜQ5JdM?O}!|"+El:Hyl67_(U@:@UEHKڎSRdwep{`egsެlL@/")Zio2N5Ue ˲V1򋆌5[ ? GX6  + 8G[GP] }onDx]5oRŬBI'Xֲss/lAXu G|(GqL r.v[Ѹ2Ŭ tU{#VNa/0*ܡ桚da_ޢ4.Tm~۠Z4prnq-e`q[E~DXpnaە`7v҂njbQQ(WOY"}Yp0n<4S<ی.A\),9 R @ &P !,m=0r) =i T9_S,da:=Q87G"!b-Ï\vBT#W"٘I+YcnQ,N7>^!o0Xi3cщC:q=' N;asF"jR܈!v kj\!wG^]CX}303 3z(^O3[=6eNP#| ZK3>^*y@{(%m;V5"W,Rfpu+aŌz晲r2$xkI@9{WC&Yvŏt7@S ~΀-/7䴵-مDQ+ba+ oP@V`Tlz7zG7eCQyb*Cgݻ4$*q[f%t,qV N:A | s*rl/F;|_={i#& B!7ښZIJ3@8Ág_&CB!6Ph&+"V#5ԅ.t%W~zҸ燖ۇɭE\1EJ$TTVWpRV$"8ckcI+OM%D7A"a0do-y"6w@KS !pNڹ4RN] W=rfKA|Oe@)m )i} "-P Ʀ>E:wzzyɪ~\Wʸ{@z I1#VEZ*Vg4Ob}Foy?5a@R.EZ-Ie:"!CqP"vq˭lޥY`X{dY}P]A:L2>=W1l'6vsǴ-v( o]`ŒD};)=)r-!8GԼ OoB$ ˺v|cu-^G+]PiFZ+B/ѫfl:;DrPk _fJc2;7?v9Sqfd o[ 'b]`Zݿ8H<746w1a##{F†ե`PQ ]e31 F Z:#B^ş0ÕGic{Sw[:^<*|jdVjnpVΖ64ݥXMJȨ~XnhH{ƉÿpݡNH~NLüMR? 2mC1tϑI^oTjh9E R ί O/=S gF~Cڱ*e ?8AhH.CMZ#ds>VSTRj1}휟 %;IocpyҍGzs|S %wU)wƵ 6+R1ZrsRpO|}mS!Є8i )tfAN)@Kt녺 7{]?A`oTQg3cTw!2n>S)~de_3X?6v._m+I*bVŦ)fnRX_ &шg U m `3݊CҴUXu -.&0]e8:u6}PퟻQδxa{%bQxҶ^@A_/zIZ-ƅ3&Eaқ7(*֊c?8wky6#ؼYc.@W.7*XUt;=0r}vPzþ7]L,v{y-͢c V/l%])ŬXghMg>e'T.2jʗ7RmlUz$|ƙĴRzW2`cxY ]<9T0$nuK5 6)hkE?)+o]=x8qal%^Xj!t,QV2 x0TK ًiJs填QCe] f跩6&p=w0f[j.SRRO<^<#[iXߛdT",d3_!ox8^hC17|<#M4{\@HvkT(pCzI\ F\)8`^w!fwC^!ё7++=)՜Y9Ț@z6.awqɭR}cDn HiYj)_5Lgf^`ZfΒsE[Um;>}$@F%W L^`ǖRc%ɡ3MLғ>[Whq) v %^]MB.:<+D"Ju{ʠYV؞ឈ MC] ^eH{4пGx D_Iq$/5,f/[v;BpZfϬ%V9j uou0拓Zq>7oV~75N:TA)aQC-Oa٤i]$8a5A.,iR"y!*e} ڟydaa \ʼfvgjAo<:.o :{ ,vb)l'>z)8 xH;uޣ؎(H-.=1SY}ڽU減.5f02W{T )Sӆs˺8C'@34|t{Əm'Ja5R=d/(C)֙-BGIlC䟡 JdDfx!ǙwDA[mpv[aǘU:(d(wS>38n0&UڷεCج/,_2z*-A,-L(kd֡M}Vf3,Ȱ~Fޞj24c ٳUJ>DsJ*̼);޵PnⅎZ:*l`lXZG1}l܅¡JvHk@kao|:,W"jD|c&5eWޤWH9C&rEŚ4إ1tVa8p y$vf< ?\&l-wM[ G`SĔnO2+_RBC-Px$ɫ+b"Ин5&QY=xL](ckyZn6<=aE|)Ԡ(Z?NuV _?}r+TS*n[TUOzl;w*ȡ=iF),!aUB,@S_T:Cs l^c:5_y"2 "ų8OķgG%σpff%q봵OAlC-|vpx8bv֯5lqq;˨ơ~<7efV.ݲp\:TZ3;Ym:+%x,5_Yznz|q),LcJ#P <r{A;0!)0%Ʌxv9YS㌦Q"xMLpZ6QN Ҭ,;¼i87jL#!y~񈪼'PerUE|5_*D:W̴&O9`,UrϢh\FLm QG e'0pSh uZK9i/MZCք5b{~Eu0p{|je BK](s94e=@AP &_SȝWe1fLHe|u]:H0:'/p^UA/)|&L^j ?JzK_̛{o"lgw.x[_l S"X®g#e5ٵi(FJ N1nw<>4dȝz[oBeMa:~~þc:} FU3v " }t /_)3ݥv0Od&>fɸɚb ^#uj½Pt%Ԉ1;_!N\K?Kr6#%!I[g!z>M.iGCGR%:EUP2k/U:ڈFc^G%!6g\ v&.Gej4ɱ9m~L ^SZIa VΉTI[VYǝV.J3+Wa"'PR*MQcK7wsas=TG[v䠸ˆa*v%ff9fxPzfŪq5*PNOwYSx5O@v FHN-1h -3.-OXH} R3h|h6Ylk^QS{o0Q@`-5$=؋](Iqn aJɛڷ& 7w&:yy{3NjfZ4FM߬+t\vug7iy@)+P9JPAT?9MC5 We(4炙\WKp5R_JsΊdWў+U2bx][E()H C"JtqjRX&ܛ.C4p3.\ 9 \wGtTn$;U\#}?-,{"" +745#χMıD+ vg T{TآY-c'E㜋 /eCJ\JR7pT7uOت֡M_3 dGBq1"4$I̵#RC|2go*5%$jA)MqhKÁэj,%QŋiD˽הmJ3(1.; uOzȑP] +/JcVLgNn'?Z@UC+,}ϢsꫂPxD98eudA(<$9= Dy꡶a*[י#ROsmQ<KU8@m)%+R~/'[St GX;3DS':*#Yx/wn]# W~c)c?Psq:e^[r\s;4,akze7jc#`Wl)H,HBg7 *p}qZ? cڗA753]&֛Z@ @6(RU_J\2CMYA^%QpldJ3X uB\$!tGvKՌS;-/b)I&#!I#ո#.V2 qIЄj Jc,@)FBn !p[&]KHMmDc| _BR)0]d3 qMW{خ+P4P9}R E-_wۀ \??#eH>+q>?rU:鶋)%&>eᬌbrA⪨++auH͒pn`i@u[P;͔Z˖u2zL ^BG) kZ;^r$ \\>|[9$1E g.x8d%}Rpx<iܪÆ)܎~eM iY*`^DKC!HnwslRLe/oN4&7tv Ȩ1$bs~C1 PNC%էA z  h@ ZO"x5Baf*p1=hO=EEYc:_ ePgejTC_%;8De%U}Z1GY|;X$;GI%$v050ėNY~ҳ2~(U#1c>U00@3uzS/# +;^l**SH')OLLңb,G*fB)b N $z,k`'TE*I(S6{tNJWv:_, \[pn ۧk?,ؤ-,{`#Ԁ8 NN昼dhmƋШ+ ץI?_ucZJ3Z9_6za~MNa=w)ps4x {ȰWINb\14!)4dK#tZ^[> @)C5]M.0|rUɼ1]S :%UА*hh3P#-xab̥&`T*τ 7 (7!PV7TgaS_o`ȖvH5eg:T.KQ?imZ 2mn4)q)`OiSBRPצڵwrC3Z|GKKhhj_UQJX[@$ ":ih 9h3He.D~kVRd.`>^Pux}[nOJt\=D(7n9pXҶedd7^2gqECzEfa)}0jS6bzu9*J~A 3}W"-M|q7u FZƳR:͵ *DRz d#hk Rf2`Eu;~DsIc& MyAWR3`mﱋJs'%6ٽÈ2, vJb@1Ly+y{d' Єg$X$ȊZ&2/Y֌"=eG&7ۣ7bcS4K՘ 8&%1t) 9>j6XMK\ITaMd JjU4EM3Z&4YHd0= i $9ݰ%do|Шp|MZFE0ddfQ&FsVV2 CTRSދ* U3V;$Py)aK4x p"a˝r+Uw`7mJ^Y[YCjeBv;{OBNP YxzMnS"N}V d[|z6كV \ \KUJۡpȋ g=Ӥ G%ꥯ/o;hݺT\F ڧ54@wݨjn*}=9Z63 4hgv|`\W5c.#g]O<5 ɰâj_UA:NcqW=Hbq\p;q<nd0M;l &IibM`# KZRH?I~#p2 fh4!R.z5@%z]ݤX6 J[rt@6,⋍%4s`m4L&k[96 NjPBDP9aB !`Ai|334"c)/.n)DeMwKL|.l. njBQ᣷2\j ;{9)IaI{M+ Ry$Z&*|1:է!xb˾3%+Dw0m: & =QܣIE*בRCe ߎ% dP$sEN582}+ʞ+=E)yuﮟ~]Ȣwn `$O'C,#fKt𪔹y^M %Rģ 4Ȑ7P e^mq)ZAQ7ZSz<׉.Yy~L9=YčWT$0~o@DwK,Zcxk/2n+qm3W4&FcbI) $zD~Ή}Y= A'S_1Z) K)nSVϜC0b(#C'IqѴۗ%2ajY8gnv'LW/= rA|Yq@$LRRa8K% e` H>%?P H_mf [Y2}qٯ)DuCšh^jγiPF,M.sj\Yp}Q>O;lqK_(GT74)OWΰĚQ5`;Fܖ@D`J1Ns*`+X[U U 2¢)XQl)z鐚6 c&_ΠZI}n %|cPMesMpHFr`3%yg!<~qinHkI橎ٿ''pPpNj{_{#Jo~tFP#Lpa23GyGQA+5jd79`mqҤav|]Ph\Y"<+25Ɇ0CvawoCfA)aG۟ء.ߢ Ћ,bYQ49[ 6A xz 꺅ٓ"52;lee AK}t|c{K4J=Y $4xz(?*4_V.5 4nPAK݁m[_! <7W[dhnF˿W?YOIFCZC8+׽ -!}J8^PDOg4vH)U&IξpcWW?zgAArU ⠻n˗\ˠ,>I&r{nKhO_`CYnЗXmw}Σԣ]2b= KdĢ@.}'ST6$TNŘ7Eó eByv=ky 6;+ntCК%eU?VܔfT7Ox{Xǯ [8Hv_,Wɜ1*!7fݨC=M"H\-eƵ1Qo)`%ꛧ!_n7S;veNy%(TZbtwR ֞~F!z 9Kӱjx}mxNzT׎KdaOثFܽɳUzQX ͆{, IRYe}-Tރ:صW.d+z&1 PXi%z`_r!(->µѢL΅'3g8R zcC諭Myw9oGZQވYAr4@@PK٤B2y2@,C0(nF1a~ sp./-"޶ |r@^$3e/B[?tS!7Ž%ٷ{UFrQo8K2ƒ'h;/}s3q9n6Bt6`*gBP#Z ,q9|3xWԘ-ϻ};%1/tUߘ.GBd,JΡ۠+GjK`x# r+Hq/rkLu+;_h^aGt c=Jչ7'tz/ (Exߌ>Q"6[-;m.1\mCϷmx)Yn^kԭ`FF-Јي}gY|.#+)<\}RZ.`kt">*s,ɮ>- arr|t^w&rt)NE9S-4nf_D[4{o 9u< J %ܳ*o2jt#@ |!T͹ }y8ѵ g[q׼nub\svNzQ'{7H Fv9~Ɠ;=k,j7g&j,LLEJ+(MÀVa]Pzo&\$˚1 t<%mQvU@3Ak[riOƊŠHXdqR|x/~ҩ?hEHfsd a]ڶL:^t3t/uE7RJ9^Nc@6b~MYcǏ9m+o&Bl1h~s6еķtTZ( 6"rH+Suײr1}Qh]5fYT# ٛP_uJTWs_ٝNCt csm@^HhqAɼnH7/%g5ye e]@"FT,'5juX b(:%`%J6Gj:+п#kVty z#Uvww:P3slwc1 a3%A\ND(M9`5d>GS+*GpNcϋ qHţh4e`P^>5mvL*/ # ǪB([D1ڂ-) &/V=i;aTKG8m;_9/b2mAǬQ,֛ۃn³"1 3*+fx)W c~DFdmU|ƇOy+N!g5_Vג&$]kHep/rn=nMgr +Ch T,@$CQW4ϟ/#1 %BR!Z3w}n 5禸7z'a[BHoBྜྷ~%壳o,ՆX S̚ȸ _6h_6#._Rh#r$-DZO7hПKp5 G};{?tw(l4bf[=#P;M }6Γ4\rDy7#JD0yGwun d6_SRG?&7f0VIWc %AWM-TDA9M=㢗 ƻLO@!i~L>L^A~.oΎ 8(Q*u{=1H/J5$e>WTtqP!w#HŇ,Xl6-l5N鷔l< Ƿrlj|? deJHZC\.QPhPtIϘ \ȬЁCl`)rjd >_3ǔ2zS0v}S{WSs{ m Tpom (G|ZO:8 f^UhVI)mMW,jmj;$.8 r}c4kݑm)3ĈagU >'Fje/mP΅\*fhad8Ha ؙ-q>FG;<Ѓ|GlG'Is ^B,BcsJKN@8I V^fIϺ*Si˗Q',2+M$1YNڴ@&rR!0XCžPtk*>M '쇉y:#ۗ Q Ӑ]X:Q @i L3a)t8< BTѽ1߼RpFSuhì&:R-8]E}]eb-DX~[7͒b䓓h&nʸ7bڲ9|uH@t!RW/V&-Ye(؉{!W41Gk\wsVf4b] G[;dΙv~t:6?ނVp ^N2(\̤  \+8|I[wgV N/2<ԫ8HEƉ$őʯ(>c@-"ˮ\rQpT=ITW^>4U~W|T<'?#PDej<]%wU;%r 1c9sC dm ~1+M>+n"gWւ %Rz<Ԗ1 1gXjFREĐLz|Vf_'xNJH@nHr&AEu1;~qgߑ3tjKf>zadYnE oɈ ͆-yb!'bΉ;9c ]ZźˌriW1W4ւhy6g/%n'(GӠsϔM-B| ^B#&>WI O^~Ax{50QUمk=URrܳb>?hUƲ}[ PH,O=s5-˻G&"Pxڴ]#9.Kv#B+X(;[qWREbgwn4t9 M0%pJnw35 2/XQ1w{J'2Q sʵV|ZldQ=dtZ;rNR2dvc{'IEb> GZnhc[0JDn$'aBfL.ڝXa4"2iQL޴, ?4E!46و1NN=3 N4ci_z1<^ۣ/1](8|E!թj(f[oY6]ޚ6 u J=Eh)gʌtY+pbz?;V~ns2֤ =5iblEhSQFHrW-חb`纍]'9z$P$SwZt,zHI-#B#;}V $}1 p,"tCxJJG= j(yoHMi!%h5v;he+@\"/3'πzl?dNUMPOYx6k@m"ڳ К4~j[{-KRs ft'qW'鐶ֵ*tMjvrDմ*s:CFXO sFN$7.OYy+|7]?0_ 9y/M.2KZ;)sf=VɅ8p!]UvmCY#'͆ej׽ir1aw}ư{yN!#I TN8\N\&;2i(^D嗹`?t=F~}05gY?F[o7HDgKϩx X:$y\sz|;Ҝa[弐7o*[7uPZhS,g~ 8@Y|"2hr>8Nm tU$O]i1 w6v%T- ,-L>CjP8y3x)R5e8L7~38ܿ3[SH\2@kmdX8DB#U1BkIƼ[t(ޥ,**fHJE&I D *RPèX20dR߈tt9a#vؔulzbRE!)N[e]j A<݇-r}֦uj8ljGn­𵉋`p? οɲ vC5kU`?fKQǺL^dA'4SɀF"ĘJt_fդe9D9}c*QҞ'-kg_KgNy@vju^^QQ.x|Z@7: lߗ%Fc~sy v=?f!9PkYêӕ7Y^#&`fr&S5ekg|[ 8AƃIn`0gY++:49{WD~}nB6Nvr(ܐtH]}+oΦ[tI58jYkk%DLDY)sS‚2 RNǂykحK= =DJ)a dOV8Ӛp|h6_&<\mC%쁠tM&r߾L(jІdaI}$0aTg>mDP[>jKT&z&}b6]"'P]h6-f_oUQh<.&ح$\lG) Rt3nnEH QA`u IH<شY]3Bo]Xwm=1%۲ ??$eZRbI|K K8q_YL|ޫgb?>Tql:rܱxs&2oN-xw/t08n"N,mę">$Io5A`oZ O'( @GBn% ɤLx?Q+?t㞚¬zm7-aӬ]xC/q.$DT@tjm7}FX+rs\B+oϛ0v1j;4Gs\5v{4n7j "6XMfZ ­8 ;!.-0izKo})~/R@*Ǫyqoï_9xZ /У!)o eٙ\OO34̨h!>_6( ovt:>8B/q"hZK'|躜pa:|54zw<̥DZ)5wIP"'ElƏtXRh %֕<b"iջʈy*0ޱ:Ty B͍.J7 Y(= ѧ'-0KC|=˱e\߃{sڻay,g{lAix4__ @dK%o練. AZiY{o^5"h͓4E"zcz{Js%)ZwD/j󏀺 ֎Lwk} K", ERB4T EER^7_&hV6]Ͽ>),ф F~=hFJ8?AjH?8u@Z9jsTRZaK>lP|5 &_>n_|ry%P@J] *vWgvM6 vF_ڠqrPn(#يGSQCPCʶ@$M!·tO)\y`qeF\mmٵEGUw)E CZrP–-Ĵ=w'q]EY0%fm&`2HwM5䬵rqѝw.2dufxXm?^8 vGƀرç4u!P݈nP2;)\^)@;R[)aΆ͒/AR}o`B5Q(YV]@ n,2hGBEJ]E=BmVx$-E>$ym.9ޏTg.^N;uako=X!"|/_= vh,Wԧj2fL^0A׾mI/4rē(|`8,OrW||EMQ3[z's:&9 Z$.-L^Q"AȺn|:NCuXijf3+kCa恾73L D\*0Q~: \7W ) Y愆mZ (Ĺ=y/Ŗ  b!C߆..d *B0KEsGFIJgmrf*!vt-d*;w_ M~ nVF @:iP78DDsNG6ͶJX;g~z@T3ǀ>7c34S Z/Y>YE\ڎ8efs$5 쮤+/=#6r.OQaH*0o2|^ V(KwcWZS:]ַ4wohJ^K%j j nCJ rжrr4g+nF)]VILe`j, jt 1XCXb)CL̰l*4t O^2l[ }7Y`bDxl`_9+㟹;زr/'17Ql>$F8nJ _Ǣ[qT箔%LqrM9[V"EK(S?rno8n˜W5鉶8WQ @!KmiDEeEwdnSuL&Ĝ`Fu`,׫?q""7F듧V(]YNžM B:5='ʪ"c\/7O='P# Ͽ__lbIk4\Ii}pS =֑ x5a*8Jj_YFY#h?sRAn Hڑf'n77Y^l?rs]̺ (FFiWOCCh7O7.sDKOmmdktdrQUaMlav6-M'q{ Q7^)r):n=?@l=;n50ϫz͢W=BC/4&w<,<4|޳M?*F &nx,Y6ũ%>8SF?Xw{3W)RcPa枕՗zAa:h[83ETϿxtTvA+8w1 X2 $efsldz:оȉf N0e䚜8bXT<+RbG5t{E2~=pZiw#B~sh?f{N1&zP3bNsȑM k<JBag$\WY &b6>Ru c::JsC0_;GNXQw)" 9QK)'-k ~S5%,ΎUw, ()۔T;WCr<%9Y*gc푙hJxugveXу".ЪNn P;Q{ ~8ncs/6=-aD.&N5=.E/JN0·6/e©;"!!׍Dw6{AUr ՜jg5D[`W\]q4V5gnhmZ`Ny>-_1KJsǨ5zCBF{y\ZC}~.V&?bp2-xP'l瑪4MWZ;ٝs_h?o9E¯t@& n{I/wN})Ke" >RFsja~<ӞWj98wtn_'It"s9 aYd(5 {37VdP]܍vDi#aexL-i[ɐٹ^o> ϤM z(U)xN90A_ ԥГۋQj#0 3L'ats $ VgGO# p@l4q7Ւ9ׇֺ^rJ8am+f75pиue)MT܏Mg(] 3_cԡS߂t4PLe QLٮaO 1=?+\$՞s~EC=$=23;A$G:m+JG_/ԅ u'o{{PjJu> y>켯@|J>dZa}o;U}Cn<*@"f/>h}-k9O+G`MC\S-8RD@.Ddre3%0T2ͨ (ہMo AgnOkgaP_z" =L˘\jaT CڗXy垚8H8,Ƶ$OUjaX8G݀#ض>8 r?`m%> sI 7ly3iQ&bn!<(њ wޣ?X5|vRQwQҹ|u0d=fdЉ} L9SDU5Pp"{' te59`̆_k[i@`$51dyB@ I1yl%*t[/n兆z.DvZU`nXxKN[}{K}_$|YjKr1MPuYVEvoϽ:*^fQrxoQ..#;5.Ēra9zn\ >5ZCzvXF-sd8 .l4.btʝzeid7БD%reGW(1TK&yQ楣\#Y2bGfQN~vײ7k!cՏl*A(6|aKsEZb7y~|GC,tJ GV׳ sF8Q.b6xqGYŽYPY)bl|pɯ 1m,C"*P۱@Xv^ܳ;.Q8\ =Q0SȺ7/H[Iȧ5 *$@֋V[6p(1ލ?[@J1Ih&(k0(ۄHhD;!ɖ^Kl$;@$l9nTѨ7٘CHqMq.P_.gcA9||=$0"q{ ݝ1H.xFw&,FΖyy3D .j_LY6qKYenf6lآ|A!:c%(4{> za]ren6YX~mp/`/bod5J. ]NLmǎKjRzـ oWLG#)q@.?M+խgIH/r[9|2tΡ4GnW+vdrT[tL,wSVExakW>/o5|~{wb 1;`y~C(SX2<ΘUiLf"Zʢu N;QD]Ξ)plEm#Б)T:Z*D(T69J||Œ{0~(bKA8tjB-- $0[mkfrSZH-!N.J.4}dObǹ>ߌ[0\85sh8 0{"wǐ ooμ͢gM%Bs1pmP vfaXTjiiʱ iZ(Kx'bIo05.lj+j{B,Cu6z>߻ 0L8s.0,~]+愕i; @%ҽg^./{ J{7uفܳ4۪)olZQamÝOdJ)NQ9fۨ4@c[p׺%J.K?00uha%h~8NC4;)'DWL0hɚ VR5sFUc;HTMvIç sE q=}ߌ@ 3MuuֳWR4LP̌kSچt@gwQ01Pwtllwiփ p_O`*κq}ٱxNvt6Z|`sp*SC8S 9}8zqy-g@RHZ4Gu,98M{?<*5Kl "k[D{dFKq A@eK oC5.׶Т}WrH u J`x4:#[I+ŒM5ʖ~dj(k!4K;Hq:=cЏ4ͽ`ydz ՏFRT<z=ķ t!Zq0)gr93ڡ o6ȴkݢ:8SE JM&RJ,&p+*bťYlգ^|f+-\>s˓jB H `ZQ|]d {j M 1EũVX[SFt:AJѠQ>fUT~F,qG?+*ַm+2K~1 7v.&tƀu?@s/!_,uuU4#JDui1.PZfpo{S]Ǎ\'R?_/p1JX^vi+Q9GF<TUЬ8pv74%.9"xEw z,ڴH6T-o/Vݣ 8 ,̪wPy͓Ĉ=\B6g 3&P@hjSgHFm[Kj˫ 7d' UXhP"'&WS@êF%ggQ/1S:l/ =CNfT3-d\Ql!5U+f9_fOc%w_e9ľarY8:3R sJr^xPj 3,M^K쑐 G mDrNþW2I|>뻙Gl0u%m"mC)- ^LE#Q:Nuz* Pܒ3aJ-@DN9i[XhLm n2URƋŔX2z*et1Hw2 #?A[ jcR^#+rUmI%:ge|Xkfi>b3I#p$2MT4.1:Qz`8Et=5Q9e'\w\ f7%AM_d0r!K4K57$/'ƒ3g<ˤNQO7hsj_uvn.fr^6'ޭКEt!+/YHCHNXi%W/ڠ@MZaD͵gyy!aP Oz&&jFDI8I1k8I^U D?VM&#:y{}f9]*FL]Wn pր/ [u oNUixvPH8 ft芸oi |VFOS12(CЬnL-ӌJX+WFƢF߱.n/Hʔs0 +2RB7:In#p%%,?v{F^c(l3f/,iFDͲ/-,tHCؙ6އ^Gsۛ%%1Hܛˁk$ߑ)&w،m>jxHɆb]Xb^3.` GƦH}|Y#:PnC(Bj @ԗ%X!r+ݱne{gyרOsJ"1Z>rZ7Ʃ4l} GXH@??_-֧ғ/@~M ,`1~N]a\{)>fjw{!bh"=Vq 1@cVZ] p?MMDx͇pRHCTn^0(TӠ -+ae'@E2h%()1Gn"7fk3JIpk[DLdŬ Z=kjESj *a@bDR #"%zV,NyY|u L5b`Ά EzF[(׆H32w.^4F[A+44TeӦX,^G&x-ܮw9(nI,|<)&ȯ1~Uq/]1wlȶE֦ѭX=7J1exb;ĤH ZKj%Y*HՕ6( %9j ۘ98o*nEZ@m)PtU) B 7y>r4MkңSB92nT-W8;IvIm)okhi\0&G"%2qxb*-  JPۤ9nqE/ôai3OB HԔzq0X\؃ #9i>Hݯ%kfq1ޟ k;v:"`qxxg^# A,&@Ƌ b B^͘[ h_;ۃ&HڨM}Ze܂Qgn]I'J!HMK9o>1|7{N|L(W P.E@{4N ʲ#4-/iK8)QzM>bc}D\F^tt@jO:$@1yJa̺*ڿ r WOP&@JW MRt݈l ,Ox[ *>%n%a݋QZ_w6T5Ә,+9H&ݾ0>f!YY< 0x rSUGļ4u|\Ҿ"xJQn {T eH&v^[C$ÈJ׍&$ :kPA 8CDO~Aa )[B+3eI /`t+4~, Ztz{o%n.#>pF tWu'$TB/NħN]Rye=hoW풲TQ$i'\ vt4r !nĈH[Q^'JEfK@t֌}dO6w`hz2~`wk L_#>.[s\;r Þ/"[X>gb宯D+2#K=M%JxP޹N(NdN2gRC,Fvj~/z%xautěbdmؔS ZP$13b.1Fx4޹w{ g> CE>RYk[檯ig|],|lqR3XU҈ÒT{>,cS|{T;e# T@.j Cmns ο%Z!xl&.pr% Љ4J :`!;T [ yW~S'v^m#H]~mkODFΘ'i!Vc~,LBFXSu;p* Mj`;th W7XSHYO`gohs,)S\gT Xɽ'Y,D\OG j9G~W&[>0\NwU3t%u1uyো]SP_3NTC7R*l v=;h)$D]r2r-Iy[S8td.7}U3;t(_dr^DZaud jP! @MPmkYjbpm:̛4W(܏ \Xc!T@0\ tp;޳GGB,YbZF73h.)2,cIĵ"a^!'.,qۃ(s +,Vy1 a6>516oAx3XZX=aNؕcj_pbL-j'dt.cޓf4y֫)D|#D )t< ޠ"ΕM*,GD+] 7DAL9L` ǮdY ۙx=a[::z(H@p%TYY"w.‚]ŰkEhչR0Cxm Cb r5j!G^Qx_y)h؅8;hw&ƒVa쒮TE٥-U2qWyTC)y[2hszn/fX$)5J?snFYQEŭFYU93|w0H=LtC|C޷3KgBϕosD'XlCO΍ nB֫;q~&و5"I{dq+S;w!̗GKb˜&ҷ!sP E^F se,aZH\j"y ɚ]v>簗IlyjXe6W]7LƑV6L)\Pba'r/ەF۝x7(/vd]hwNS:3 lir/=4#w/ywmcM{mњ&0M`?J .{b"DXRN_Y`K \bB5-)=CLd @vL{~ }Tx%Bg[2Qy{\?||" Hx͋…PL$1`t`f}.{"կ0r `ѥ'|>!df D`JfvɁ`Kd*G > ʐҾBB";Ms3%owBspyYZm%{Ic/ G Ku^ALEEH@uz~޳FI2.5vmɿby6+9`O7|O.'9}W~6Ԭ&ኍ]&eg^1 1M+P/o}I~|y-Q F蔢)#3U#e zQqn:$QRd*^8&> &y0h}1*la1gy†Ϋ戂w1[hzL?D49tuY4:YO#Hy,C(&ϳ!E$Rh$LQ8M~Tc R0IhNqpT .K{Eђߦpps!5MZ"{E@2| {6OS-2r@,#&]2lFgW5_+k_lpūQxä)q.j\fkA?0&j GRPZm&&VhUB Ҋ!ԙ0"U7ш@_Gl 9W-D;HnQbɧV\GS=d >*40#ï=(I@j2z'̝02xEapx\d6I Z?Zr=p$2/mX6$t }3|}9C}_8*'ičSGШRyN6 t0gɿeX ,!|4ʫ z[eiT1G0f7; 5. H` .mD] C DA)5 Bؗ!z \IP ^LL]oǟS"`8+3 ?Rſo§l.A3QNO^Veo5"^*ȗRXOZI =]i/^);' c먕C#Rax܇%,WgMi8Q֙.2ZXEc\ì1R[rJ;"Oû/?8MLKј0",!{9PH8#,t9-Yl&۱_*ձ`a4][M_!Wfyng0B͝~S0+WMFz dsf2+(q[HlUɵ[1]AbRg Wˏ㼆I tyQ1y"aBv 9;I,kb<TRV:^m #7<<l==%z}=~ܚ ,=%/6 vzM-hh\572梽;B5I~p {@MAŅL/zD3>K&w,|ءX:xh!2V@?`hd:,B)0+8Gy(4ˍ6;sD̪j9_*AA'V(jX3 K {o({uʎT>[FH[^ÊX "u9 G1Y+_ɛ3V/$C'y[Vo\z9M3oJջNoD-7MƏ<Ѥf< ֎TЙԠhUM]AV$f{n_YS"xv`/fo%,rHv.VϐӼsL1HCA $IkB ?zt5bThs\.0ݒjJ/<0Žէf?s~dG)P\fƄ G!$V Ĕ0dLald%c]7HpK0Jr:&'+Gb(GyO T/㴁4Bdsf&w9..&`i/J[_Dޫ]j :;Y),ؖ4Ȅʈ^.p6)_|YèHMvtǸ"P0Ep.j-|Ect́`7mi\IW1R`MBj& m= Νn<6u6؈JcD"~F}oIy_&p𒴶H*H1:R\">,2퍖{dT[^K>]N"/To>=S5uZqbzK{\[ r8OZkJn d22BG8eo?k*c,~sU_'|ԗpcADR<^QٸE"Hί6`3J?8x+HN/Ī U'}{0PD ~3,ñ< iE.OTT;_Op[H,CVSX/.΃m2D1wh70˸"eUPNF<]T=eM/dN+)f@{ ~?/nuqvZuSOÈ]qU4oJZۏі -^i] fjs"'}WU2;=W-~V㬭ȒneN1+74r!xxBoW[܈ToHoݻi0/(PE\(I ^d?L3,JN hÜvIRkK*XbhRޘ#c B^ ecjhJd-A9tW:I!]ƝJL|o|lAH9q4%޳<ޙ J VB# nΐF9 '!<%l]ri(Nf/ogL-fpbF' \aX,H? 6a%]𺀊,-y [,~͒MgbDeh̫eata NPm7A%X #1&G6z^\F ;6.x ߵ.0j0A߫w<WVk s5&zS=0&< ~6Rpzi.f]yGΒ$,;N 񴄓]E^VhLCn1}9hlG$E,d:$-YQ_i95ˣ:10d^ ;]NS1;}և]$zRW^^8!5~^d^Ki|{jL#U-X:d|`"HgDb¡_N3 pAW (;')#zUZH. |,8t /IQǦ Î_1` %bGO,Fdqi@ ؠ &F-phJquf4/Ю!-wS{[VZOeA }t*xȠ|+pq_gW7 ?)33DME'PSa#HoLГeOPֲKapG әFsU>mA = /I!a;ڔ> ۆڪ٤B~;@ep˙>yz]`k {V8bbԊyqUSjGabjy"s V-e#>N;ap0Ku7ii+9Qv`}T)DxUO3!a[ޖT[g|yrr'ͣH4Yp!ѡ4]K\RI(rcH٫ۆ&K^X* /#>o/`(Iֈu8epɉKE@g㶖T)RD$[%c't6~z;dMϬBcu~eEpۦOWG <9lOWScw6ȹK#&p\v%,!H5';Hlw-}FcەvO+6qW"K -arW9i@*YmkJ|ϫȚzȿsB{>Z"DžؒY]/mU5<^ iH滵$T߃؇Dz4X]7<#UL >J_WnaNJ3ѝ ouަ.A &dqHĊF\x&*qwC?tN j a>EYD\5ֶ8c<_0nS jɥϲЮ[F须rF)Bpp;촄OUx0R{o"M \(={-uܪLb[ToqQP$'Eu5o|Rݟ^S$<f ?Jg~=WƘk|vr\ΐG|CkcDXCFy]w(7LL>KeHJ>C:1%P_ dG%8 ЩUNYxIʊ0Crʹ Zܒ%Vʖ5r5v!vN+_L E#T0 0 y@|nQZ@fyni3)@y-vES4p5hw=SUrCK 2Z>;(Vj# $wuG:9(/g~GB#3^A[x,q]'d;FLʞw,h4:="V6n휘?bdϋUswa#ZaUqveϔЉeVs|~m.:d' !~$I;RڡB~38}3fS^`SsN <($[mG6,ށ@o~esRZ(x,l $^caZ.Uӗu"Q bRfJ2;6|^OIwo #PgD1,hјC(7M'Wi{)wk?mdKt "/dˡ9D !ȷ1j32&G]GT1A(_ .g=ZqX?]/3*0QD-f($ʷV0}Ɍ1XtwS b$:"q \ rcJhngz\L:HX@ pr0__ c>˜°5SUH?3_G,Gj3g4wCh#Ta1S={ O۪WBA{6z/N] :{i6dAk&)ݼM&ai"{A34rJ[ʹ ha.^ŽUGp5Dpw %H>.(xbVJf8 "@z-46ppyOl\~EWy. ?5,bSS&{,Mindy &o&h_MV׽.K=y*F`wo׌ g!Ux(E*6r w2A~|Du^7ZYt^>}#ڸZ_so])\I/s|բV-ad0\ŗd)61gY!0_8W "ߢSa3(K@K; epy !1Y>9qb9^3oD|bhRp-a}1")Lzg20'lAy˹c Mo|Ekkm7SH%DFa_e O{kUp^о)vmz""Ʋ^i%8Dl֜ QM7&bl)`db+ w$̕! >-JO}T{s-P%T> *oDZ`[N=MOP֔Ois>KY|J;Ӛx>t|30˹>Zui7Ү ?⏘l6Mc%w[%\K{ V%oIhL͹Ӥ!fWD4k/Oܓδߜrp۔o4-y&OWfLwn I+Eh@7.- s崗  .!ERWI!lN߀h7f}_bñ"8ޣP7vЋM֤KGr3A$q<)a7E[Gy ARK[%#gVGu+NY We˪TN,A >Rߵ@cwIh^`ƻ$p:!`rk5W t뺌.iZ2>޿ϹZ] ւhGY\kfa&Jc+K(EsB 6$zY.3}d ~L,=A`;E1|1kV%w]6r[>]0ͧ9bf>}cmJB:'<\9Ù;5,ڈ-#-KyGnMLD@He/"#Ciome0F~K=tFKns4Fg_=>oSUf> >%;(N c"˽\Å>U-| R:%n="6:=r7 %牥4]1:(Mē[rz=B;';V;?E ^ֈ?:+=mSBma!Uy &UB6t]hVl+_MiеX2>FPAILM' C/vzj򋙽jlGi(tzMwsy=Rr* [r[MV3L1ʓ Eָ7]kwBjp7K"sZ TDs%tҪW`uls}M*Ȱ?͈"%b<"Hf|֟ Bw{'1,$]Wk.hS a.-a DLKشtT~)]yG\+; s!1hX8*2Bb-t"j܈- NycR ;L7$19pEHSY"$b}eb^Ǜs TVVyX&y" H\ nHw R%jːz0z0<٫ jLw8o7ol$7s-0{ ޺gs7qn\\ 5ol@-+N^TύS|3;4S:KEp2 {>I4~T3q \N톡n4 9rHOisMztWn?6dΜQw'q滕"b_@kJCRʻkY5[&^u3߽s'(rQKPToxFJ  P>5Xݓ7y{GH;~`R/@Շ=_]8[0gԖ wD_ 6}F# Q$&M(L'P0q k{-.j=DȇsGق CJ'|uVLۼx.2D:ffTy-pW*zaC|+V>!Ig;3,EQ ܮ6tG[Ki_onV^8sO n"'8lw>(<9dE7etUA gEcx^(W o{'Jɧkя82_6۲\;x'LkSnXq@@!c+-SSR}Ȭ(gz3 O5&xߔxR诳r"g6*NCy7V@l$뵐SSԍu@JEx^icdWTfiRpٓOWwa6?rtVVqgUɔʹl˹~s`#ch I8c ҫp;{rFaJQA4~gM9X7/=ONrQ)V-Wsru6:rK֯EJ0 $;\:8\%hL=TF,.^}j7a*Dʊ4@I>(|x&3*@i: gBvyU^ӫ^J$3pi}fO"GK_z]?-YRC$||`vM9 6{Li6 o2#K:~ @|"X; v($2NC8F<lmӨBJB}1 xLq%w:~1њ}i!-.ʽ l|}[;BF4D Ņ kmKj#QcZL8V2:#myQ֤?"5 =WtfHЂ]r<N@ (c1Wq)3t:qXNe N }C?.4c'_ZBM:?K3<-Z-#ۜnB~`BQv:?# 4+cN1L1<d spس5+ Y ڏaU$P*T$yǨU)rLLz0{{}ڶSy צ-` u.QņY^yg6Vp_j37DѢ8y^wb-7MYcLf??zv&2/խkqanhԒy>Ne%3vr@+(4a?`O u[hCJ]|Т+ԯ ,8+I$xS-2^UIvAd;#S"~s)"iDA:ꄉAM9kKnt}ӊp ԛL bW]1qLF渰cq2a#ad.0,y'/_2BzT:-mE-J_%G@$! &]VSyU9 ikޠI{QMfhTr ֜q-47 $r:. h Ak\ׯkmN~{Rp:;D.ׄe^Hm%P\r6ϯxF辸 ARAo=ō7AyGly:SuV]kTkl@j@+Oia#AA-{6m!)G>k}m\ޙisvn( RJOa8'}H̚hHv(٬%09et /$K[BΒ%zc,pݓ˰uQÍ'{KGngv_2WG#сt߽qѯvZo5@c) vIZ\xnڴ Fr:i=wnXǢP Lc?7叆 93 2ʡ݀?ޥǣRʦJ8}R 8yg_=js3GL4{af,qrU3#WǶI<ߘPͳ1:xZ-qf}I0ZFԌϛUyzV$mc{uGbgvk@%AJJEiKw>#+m "x;y_gN⤮7=LnVp#'n=C dkxZ'&YDcAm`N݉ƫ? 3MRh<$"-D \$yx̕4jAaWqCZ}xӉ镘zyح]%gFԡ!uK_L^N18֣F:"K`S7Eг:9X] Rv h8ҺY6GjZ֙*eﮧde9iqϝ!lj.d;P3'߱bFf9(ARʾd=<64miyN9]2czu9+ `BMrmC}u$ ,i!Vi7PL(T$B(?rAˌ= H8 Z)a~b:W^A?cd؉"߫lЊ< P#T7C^J89%8=M'!ulUHľwb\G._ ~=bi_*AAtK/iŮrխEBn7ť AƭkS%*qfk/QW8{Edi'>?pdfL^?M:x`%MϰZrHY^_kO+{@HS.ZAHDJSVҠD.4SE#X`zouwŖ)R> ¸h%PƟ%?&poqǯhg5'O>j0 Vye`X!.$8 ++!kv5XvFd զ*F) x)c,*ZliTAGdL-[[nΗhss|aivE Rhpx@k@ \ܴ/>+HYHr4UPhO~;71_lϔV jBH>2 a c@5O,{ly 4=~`ɽ]˻|ch^)C֬Q6NpAs')dHlZ=5HY46a ,Q3;!,oV ljZ2d92W,%+$3OTy2g;bʭ5׏(tEVX~'YQ#[W V6M;.J&j}A.B=@&ԐÝ(QIυcKԮGyh4daRPeb C _tOxHb6ɗ̀V[8P$)akUGk,ࢱy)Oگ{vaKuO\!8`/`s'o/dF'qZ6{a9'ۙ6Kbxƥ  &(G9"}q]]Y2߹BUIf]z?Ƀ %oWܶB^UX.c!πCyMYJIVl5~n KPB6Ն ysWaCKn#  s#DB3kO_IɬGeNۀ9$F\;xg؁E,R fE{vp W61D3e&plA~HYޔV0{GD8ϸ1}).*ZF/ 0f5,%A<gkpU(;5àE]-Ps;RxIa/ gF{3w0k<[ћR4*өSO(!`z:6g>vT{ ;¢pcSL3w O|Uaԩ Ȳ´ A@~W<[`.>O= RCJ I ȭFTt@>-pXcܱmf0 & |WH|42 ͕Cp91I8征x(X I39m!j՞@gE1])AtdQDž(*ȠT}F\ju',CB?OZslJD(XܓKD?TjmQZ5 .iTY1IqC%i- 7~`nDV& ׎/!H=zmo$ KS; FNFQ&v+6FI?dbr/,_EyJ1(۶' 3яļ^qm* ŀ S!cfed]C݋q~;<5FI 4E\pBaWvEܜQzS9,5E5xt܎mGMv 3 J3^ jaYsvٗЋJg "ݛ"c^ q.y,ᴧrZGTq}c # TL$SMaLJ2V2JߒFql}=h#ŅO H/=C&z*40 *xJ{q:^{:NHa@7ַLz؟̢6CY87u!l}Llm m^5XmN:L{_yjgJDINJ‚)`m率ڪ5"0w#~tK BdU?Џ" *74* ho$+YKn#v&x<*f.8TG42pov2ZvIg"H.Tbi4]Pl=>A|paR Yur Į Ӑ<&* |pOå gVZW l ](n+UX#D\( ŵlbwսs4:h3탷6+_LQ\[99jS  l(n*)hHD fn:^7f,Svi"&|@U3Hާ4/W;v]2ټExA7YiD{{P{ 3 8ԥ0?2aQ?ĠW+1e6D4l{< vI^5R|z ԄA5جA78osP¦P8'z # K D"1cMƧg7=[rh>;]ۂ,–(kmt$CI0p;c-ߑ.;ǙլL{lmnw4ƎRp!E[+sxƂy( ;z>ݛmg\R&}OˁsмI5ӟ?g,.J6ZxP>̖B*cTy<_l ?TvtYJ-σR(: %VІk<CI@pQ`54+lp܂BZm>SܷxfqT{9)io^5S}ńV ٚ4!T(vLerDls<*Z` [#kf㎯yt0ۋwDgND[<=;[1Q9Cȵݤ6c^^o,+bg{~p-1[n^g^,hڌ&6 Ms%MP-<[ %\E~ۘ6VE?2&YYOЩHo)(D]4 6ʄpLBVUW=>E~~Хu1ZqE/sRculiȸ*E&xl8ƈqQCN}q[hFcXjZ(ft30X,Kۃ#GW$wop#N9#;VSqO9գ{L+GMxgSnk:'U/91R- NTv_x@JQ(8vM E#Mo| {גԉ\`Tq\Yɿ+ljuO!%R+K 5׿<:v1[uw8^e=o|Gepy "֤b#~s]c1!.Zvle`Fg1 MW6iu9je6`b"ifLT9;_ cD8&R<&cQݡ?ӗmsUc!• +*jzxnj0y!&iq8ʠ s c6bj'ShǦ9<V%NVJ_*.cK č w*M?J-0F?~Hq~{@YXF?%.6oNXi;w끕rIt%"b$+[؟h3Y&w,]E!!rǔ;.r;٭7Psm0VYJT̯91m}, <\l q_RK6eêQD5ڳ_ZWƽot>8[ ^oa^:lB(I!wu{+p'Ɍ5epsj,k:cU] Lo7BPDnD[|4apr;xr5 )Rw4]Sky*4 $䲢dwnRZw*be- >.Cml\_ٲW?X6qJ߷(oϫm-צd@d|śmײ/% J(_PMjO'UDkQIOf;08i9.Zjv[@tn?t9hFˣaO?yS|I{ '.(>ꅸG\|۸S؅63adUKDj1 ud [RXgX32PDl6j7Ŧ$혘MB:[@|ZN>Z|K MIT4g:cRBe ~Mx_$:"? &dB  0&Ez$"dAB R:L#~78D8j#mMR*ϬK;q*ϴͺt jكw;f_@DV!Ib6d*(jv<72pj]ߨ\S{Ar^C4W"#VCKtHE3R`k8#Ev~0M[!4o +t0@&1<ژ XM+P8Aa}o%oؠIv`#Նs]UYxqZ\tfVwu#+C{eY-Ya}'EX Np6x $:VwXs=:4Sc~ZU[?F@>AQ}R;Gk!%stO6e^+ m.|^;K#FqpE Y 'Pn,.,F**$MUQeG},lqZ[z uM6y3P`T:D%Y!4K-rlSkL}8Z|AkIJ!} x+1JF@IzᅤBMlz3W`? 1[ *a2!u&wWq\ 5NӕkBw}KG[bZkrp$ks8W o#X=M HbshLtE$ck2e[l0_aiOîi:(Djv1nmP߬2W:6Wkj6űA>.^XA]wDžOQ8ni[0vII@ouj}=(DzuX}Ť|aNFir娶`xd$~;S`OwKU-h{0n`v?y񟑈2u5-AP{@Jƻ~ig*v]jsPG{6ؽҊD'. o\tLJL)kqm< Wq4 Nmg>S\MmiE?n,RrֲÈ4 e'`-P*Dsq%}lY: xMbP~Bgk)2ʁ+٥i򈏫4t*OAO( JH%(.g;>҃sϳDk bK B؃{>y>ꞟgiփKmQ[\,>~68 o$ӂy u|# 4 t ~j I7F w ~])w8Jy ~T9ܘҵ$,!:Y=Mc['UW_Lؖ`qY0>y5C^X>Q}F*5꒩tiptiĒ10A,Lc{6iZtrn%,|!~5d5WXZJ@9aV⠸ ޅ,̻6.ЖfjN=$rU'5 Y+5`%)iY1x(z C,qB]W_Gt% `tcJ}|TNbYyPyCUx_ <ٗym f-1H=J\`bt d(KXv{֨.8 KDm}  @&f U_B5#twCo][-OEY,(\wK*BJʖo 2|)yP܌,=e9y;Axi\7MTNĆemsfjcvf (D/Bj$RK'Ũ:XLNX #,쌮{5?+hVnyh_6qPzei;+E CzHQwo\UqQ R!\gF옽@evvMVi Cl&qbmzmu, 7Tsrc[x\Z SxɟM>{4ޜα fSHէ([vsMWk,/9crV?},;:\źAmn;.>o1lw9 "Qc*cQG V^Bd]pYF6~8HLzP;PX>c,Ff{b/MJ$5pm<6 ?{]~hQ/fI -Jn "&sX B" {1LnLcb57~8 #d[-IǗe'şo / e>̼V0XÔ 0]pE`csR["w(Q{3fY+鍟 "Rt_L8FBW?fpl 3+2$EYV- >lIJ:9UCScq.сڮMi7M\1ށ$@(싔 @F:l,|ݯt0y^J3Dv{#]zm3L 6_} kϡr4CvPy`;EݧE+'\p7WZVBo2Szd1"lVӢd @fI$#DdJ,N{0O2YOd,0{VftX}!1;V\?i jM (/z̦VV(5AG]O ƒ,-w@t舅\Rw.tIDǹ'7ep"Sb SgBkp囎<4Ø%K Vdu2(;d LM5ft+ZWEC~cC}a^B|D`du6=1VWndӮK*T2{$f0m Y! R W>+q{'8*n1,)Y;%PB\5"?5 J^gNKf1G~YO`f DcM95ϘF΋ ؒ[!); ,1d:#ZBSpT9ITm^Cde6_Ĥ`u5{AĤNF+%F kxc :|4Ƿ\J b9`Β E:-zReѦ;%=SJ4lDrBkhQBk` k 8PW]JuSחk8)C 7Gm`yƆ1y4N Bs;\soXx7_(mtq/wʆX$HVϢhxj^ }0MK>PV54PTpz(UX>l7zs$~*ӑ\q_5EיHYO8$DiwlqhZđ P37i]hOM.:BJ8ˁ@o"7&:֮/zCT Nuy눒k\LJܮkx` '¢HC ߸$hg Mtg%Jg$Fal2p"\W(}zc]a* sRʆmZՆLpץ= '\<>TryC 7!o8VW\q>yy-I9,k.<q`vP[n˪}&PDG M,;)Ih a)X6~\ E8l[Lv!eծMm ha!:Jr dcw?Ą[:BzXd %R󁉢sYCk;JtD"lFŽ.}٫ 'TnUKg, qP \<XtTG&8tS;sg "&J/֮gݛB'r a0geAI  ۖ$?j<@}tV²de&'zR*=(b=#!, nyap(+BɈPHr ]S[T2Y2wșj2P{ jY$Q >ՙ xi7t"~u{}[b$R_y qw.bc 8*w 5K$fk\T` . dxظ)OLf? ^-Gv!1҆Z\"hfOĬJD@Y$x a4wvS_ѝ4^[aR%ʨȃPl >~r 9rxxuYz $*E!4<1lCS8lNY c 5 Ff$2ͩ/R>Yܞc Eؕ"[<[DY!GFpd+GXpt#FpFyi;lHd܉W/m4cb018LUtsX$B"~11MŘ|Di S'~+ȰSU~8%Ɏ~.]^m%H`*=\Id`2\%ݑy2$rpY=mpr-j .3Sw^[&2ʗlK$\VSԈo a DS^I!|y{HmYȮ b(ޣ z QԙOO|/2 QUϻUehY R.OaLoو4PBdTo.79}(5??H 9.)Pb +L}'N,<(Ctssn"fT\3i RsR N^S?;YsPov$\v{,Rw!YA4PTUݧI!=- :)u1Z rܤ*~mj' <Л;-dhF& Ok{!;_$ZևRN$U(XFI;M/rPyD\mAÓC.nsӷ>V0SDPp^gBP8@+1墇ܴ\z (|$zrgune'MO :ɴ}w܃{zmK!(4Y#:U& (ot:G2y.`k3ڠM >wD^WcBn@*;cg32U3*uQar2$)TX<%և7Ƿcբ E 0ZE31{ Ş^ċa؝elS*K9Fz;z Tye짥d7 m$9FD$-X0Re*Uz mi .c_[.rr "ls %v[WlZ9>QԲ̗#CuT j%Yx<ϐ<8-^B̟ShtģfVX붮I@VĬd-$lAxug9E ScF>ysJJXFXGc$4`Sz-foV36j=gN1~ [?Ӵ(#2"fSFrHϵUUvU#=GхXnzN)yoYf7R/A@\VXe"[m<߈\Xr o嚓T{W@睵n+"oHXhMz qnKק%kp9]q#Rv '@X?P"dem 1HQ-Dۉ={ͮջl^%B- ~o+ֳ@EN*oYT)/kF0 z[](SCǏ8R!\xLu$HPwp2f`zA~la`Z*;g%~\{*F^@yR_q6B"*xO˳/iN2;=TVon8 'Y (l ]ߛHR tnl[]Nֻ5;D>#\ ϽǜV_fplk;Tc;/5;\D{25Ԝ{8R(4 Ƿ7|s &];BiU0V? u}Fma>|hxVruX0itۮUZsg;{c<"%S5N8&r0nAd@'v:t3`9pɮ#obbRVJM/<*,tPk57獢96ep蛛]WXߕeihPIrW_Kl|}nݒO^; 9G. MhIpBг`hC RCu10gpyѡ-N1RGh3A`4.B2>RhoMH|d|/OY]5ςx3ߋY W@(5}{6lV/$A@1JH2º\g$ˈ?˜I?z ս<9MW V\wZb>į 9ua~_01SMJ|]|O<DZI| %; <*tMp1Ufmiq Vh` ao@j0t*Pl4&WYE<9}+& &g7:N~}nVc B?bnѵA~HBPc|o&ìʕZpw$ h Qc~5CX{&)Q!yT4,Ә-0j 5a]TIX2x!^7lma[=m+[v"AlBsa 3k>^QQkj˖7dq=bqC`ԋ:yzȥ'Y $U%u#R6WDm۫RD ^=>%#-Sm?%EjMt%jiy<,t68O5Jel;u4&;MM-싗\ oj$KYnac!gp|aEd># mrt։O,([E/~Sm1\4kQsatm4Я^Kfc@YPRtݥ󑼅)Hƺ9dD6]W Ex Y+OVe({B+ S\~u4t&8;pLY 'e:I;z&͜C%!5r7jJg߯2e^ zBsWK .FϏWv@HGX{}P( 2U)(g\& 8)-%6g}ՇЄh$Ae ir Q-@T5F{`:3Bc`>YV:R|N7Pu[7pw9Ȳx@,XĿ4|"E"kfhxƸb:>Ci0tD$HwRU WR{ +ojLy {۳8\ X"!Km|V_"mY |C&tufW$OdN&GH父h#9DAL|Y}vj.MIA89 U)9W03_\h`Mۉ q)UՐ]JȀmx*RtNsyWT$ REW1m:9gC">V _S'$G@B9nq5 ŞƁvsffE)sa^rmMRDfOҌPA-]XA!!ǥ{Qm:6u @ߤTlƐ(M+;Yӊ|3!G4C{9Y֎Ƕ #öm]Rm%h`VØS>0Ȱ 򖮏 G9מ^`@Ɇ\kBUM*QKp:%e4uZMvFw 5Z=?Fx{ɽ!D ŧ3*׾? bi.젤V[^nFJqt?!UH xn๡(?aJ#}L K{{Љ:UvHbR|W׃du;d5dZCA@Ө%{꣬IYz_LVL4^DDwީ9nYnARCQ]'y~I^%v 61G`5i`<<-nbIg**ծ(gJj' ?QrvCQDD+-uaX?J^7o**SI%nJW\& |92}P.Tt<9L+Ю' )cOgif\Ε)nQۑ/3Ög4M\̎,c T+LA6lRO(YWAS-9q2ּ%0-LEi}.x<"ܥ2_˯m1\+tp RZw#l"62EA!$n;nxDb?N=T~0{(%)C4=l{Zf@=c!R[o-12`OXqY?0RhDSoF>8P؂33 e)qTj_t)7#o C4g$axSL=qH\y|ohm(wcK?A˪׹|߆,cy;;Yڼ~- CBz,J1(X4NmNC;C͋c^7DVs)/U& FS@jƀڴ`q] W6bh†Ev(ڶ#݋жfsp 8lٰ҆y\WDq,ih?ITuN5\.7牫 Ie=I}"{T+} TKp_(?$! ]I ߺwJw>n/7tq5#3qT$5s4}FP9~;|JsFqr7"l{~G & lddt}B`.Ř4,'I1KfbNP"hÈƻBsi 3e"M1Zq1Zy>RRC vk9)D"R،ȷ0D7vLSţøxJC1rm6e A,gUw 'e-*E|& 6vŀK+)es$>0V6@פ [s7p%mPzIN&/z& %԰H з81F}) =vfiؽ-1`|ی4F#&7J UpES ْ;ԝ2ZJ&FGfn/SW|!Xr7iѹD8XJ4-=E_Sbʹ(Se%m#{dEgKAsH3 B@o~o^GW$L 9KjG~Xw^` l*wk-6FݖWy9mQr\,#|Nٲ&MuƯ9 + c ?MT*%`qCj@} qїۀSj\HUUXf_z78闀B2Dea0vBVMyjѸ+|c>Xو~?=6ճ>#ϗӷR ˕a( KOh@zkd/eYg }r]%{TZH䐇/-87KYGd@5 =*h {_eT /o ( 0ӂRiz'ؗsף䛛I92Fy@뼅uj ?{ m aqCAh6+!o6Hi&q%#F- ;Zi.Y%>֍kt t.Nbzsڀ8gj|1"}!W5fbJh8)?x9nzFlø"؃;{{+Y F0B! Q9J,Uil1}(̊ęVJ~UNťƓmCf ~t(foݘ1gzR *dWn^)Gӻv1Բ&ܯm߾{1  qG6۽zQ5U+ũNL+XC,_U+r<,.,hh?9t$½X㰀f2=Jóy8Qu*OӮ4X@* )Ԣ:zю4FZe`v?dz=AOQ;?:"!s4Vz/Pһ}^Om4Nsb|۴0S9`5E?#äk!c b[o$ xm)g j5RR\sA=rtzzɏw>M۱ 9X=޼-{5lxRu2܌4MwH&-փ[.1G'|q Jdfҋgl  =&#Dβ)bTKfX gӘ~lڏۆ:>އ%v&њG;>5%,"ѩ:v^lEb{ي OA!_Q\\@c1RpHFwٵ .΅G.fd)Y( іފU;h+F˹'؍ڴ'kD]*\s W˩ZFecVNs0xE +k^-WxVV^%?B Q筡?v]xs!jKj-bɧ#ļ9LgMS EG !-'lU(qD Jx$tw7JbX8n&ɹmRn3Grrn(dA p97REǃ.Դ"VcGh&< ccqq?2z]k{!4}XpK׉@2.5 xF;q OU@3zw*;u=šd!QKJN[YF}R_[HB(\.[&!}B5` x<, + UWDŽT}W(MD˚ }hK B5EN'0s4wJb;p5`&al3 uq*?^I7Jٳ-hi*bL<=]E⚖[)bkqIp0?f\Z [x+l{w$=H︳C 0+ )G%!3$ˎ]Pפ&rm֢f+0^r8';$nmXi)LsT1mC.K6ufkw3A>'M$%o\4|rĉVpmT8\nfNJߩ\W- H:f AO*F#ݽxᲜOw *Slfa-aiE%Ke#:n %KLP^яTWo|5۞ jzŅDdUa4 'tT)*QE >ʡޏg OZ{-G,Nvmd+B %b̹jނCݤd%_\G\*Xΐ`_$˗aNwI?dB;_bEɜh׈"]'V@Dm7 FB41VUTAv?5! ;D0BϚ-ş,PZXs-s&b0r&P$[s hY9M D\.('x!:P 8OǠ<ky>A[,x$]3+v I.|κe%n@N6;PzX/NC0GaBbW:CgW#!U]͙g]є|fqܜ0Rfl԰e)@.3CPU;JQYUhY:7Ƥf-'XˍaLrVoÛv{{eDfb' _VޙLI䖼kxW mpLc=:387;-7o`U M۳]̬rrP:=&@":E@@5Te~E|<"Nڳ:d><t?v۾ &Ĵ Q@n394kXʪ:xQ2&8%,9oCw"@_(ku^%Ѳ* }fV$ ҏ,&( i+ZOΚRk5SX^eT?'˞映k8q(Y[/IY6do""*z%>7d?S qw `|4bJEF^Z.s#4)1f9a2|Yj&.cVsK(TٴV¸rM$P#NI[mH~&\W,yZFm,5'C&Z ˛dv ' [1zAUu=JPHq:dcnB;TeHLKO;zoۿuC0pf2ߪԻ2sUIh5K)cqq< Mz}.4W}(,z oK1T'E7u͹G&v38Wg# [0LR{a~SFC&!p{e\d-?OOLh|0/v1%:䐓P ][_\vQ uXBjnEGt73~ܯO8̴*șHa {YiNJLG!. 7Ƕ}MkyϏDF_zFߛ=ۤ$MHXf>RD b0gFiQ&AJI{Vyl~,XP 7JTy }Ts9l^W~FJ<㘗X#^+زS@F(J(;> LBttUFe[e7 Ee `_? j}yX'|;e=R K/S]p h"$_p1"C{\ A|֤%{43_(yh 0AGD/#)ox/ ANJE}WS6TkEI49os]~inZC!xwJ?D{bBQd1J*Bc&򢠑 :F+ҙ,f+F(!QAyK\/j̬Zvڳ ؙ4,O[~ӎkty'\ S16ZTn/ :k",ȈI|T.kMvӛm'#]_O}v.jK?˩+gm}U+3PLO|wSVi=ԗ.G3|Iz]r8$ޓm@Hy3%*a 8W&^b(ǒ:ev #≾&+S1Ly[Z°IhF8M@3G vT'q]/2-F+B>TZ縠 j'PdpGSv`_S2.o(svnwK?E25 *}8a]Túɘ `4`m»^1^ax*VG֠Bs)\=/+bNg[zg )|cmwpMaL۰>MYYTC+<#NyJ&%"%vzf"wB?O (ѕBAoyi֯oD_Cwg1dX'!SC"aAҟUhP[<|"-6hs0eltd`R akZVgln05detҳ}XeF+RjʮAo)8#T?*|e^يG5e9x^5.ڞMg# :7jZɵ4V fDyKڟ PV*X]K*ez-9fX8$|oh{X)>=c͵Qx@ Q4Gm X"[*`dh7!W4YbA?DD&zG|[؆͗'#]-=Q4z Lxi&. V]f!Nt')e\-C@A\Od2MziA㭼}8fؒ5IAKz:X}YQ^xvxy]n 3sRpD)klsAD&o䯓:3*V̸H$ZN[#tOq6$IhQU6DF(7Fx? ̆.Fhk>ev[x0-f]J_85y D9Q X %-XoΘ׽e>`1S/DS= &,x iSPN.?`ڎM/P=E4L|2dI{xuQSPP3gz~p&0dyjsNـ0=`}{pSIH:B:*²2‚[R$Qx/.Ur"!6T_V;5&26C8Z~’I|[=bպ >է >pf[D8jeAHrN s(udف;hmR[ g#kK,oS/k쎜'@hOk,Ʊr+b7xqf? XRyMt6wޟ']9q"lXQ* hEDu+p@G7kCɥ=(VM/?>㮁] %ug\3RRB:ʗ#{hwO#(V@I7DMN,rdžP3/tauթÄ.jI5$<ݗ|DFOd]ZG#,SO]NiƁԬ%,ӽ 7ʹ%! U+9ZY'SU? :"ɺBQ1>\S1 Bz+pYj"vڅd_ Ma*g!zi2,pfOގiJ:i(ڪg,Dvi왫V<#V ~`cσXcNCGy S};y=J-o$"JO`ޢY@GRn*/܃>zS.@FDa MַO^Lp[ żB*s~HECd 4!d@:[#t[smMXJ./V1 Qmc5Yt9!^W Vk%uʹ#VncJC{=NIOg<0V謭7Bu/iiUÛc3T~Nnr/z>iŅ/L/zqXfJ7DU:I;zxAwn誔֩>}UlHH}O.en> A*Z8{ȱK8J q()!3S{k4ʋoÎ}J,,;9+C\%A3*?Gn9_DRků5?sDZ:ꮩK[ qZFe+=h#e1Z,[~QXJH #q^ȄgǍ|~OjE_1)So#hlqP*k."]k伿Np3 =_,s?'gW ~J,Mo<@ojk ܈+v(=gD*Xf*GEbqoSM2kа7JS^/,QKri1IjHU//=jV W78bE ycŀZ욀#9)gGBzS 4U1t*7{!Ƃ%'B1%FYkQr }|#~Z糍Zt[/5ܲ#!j-"sl*A(O')dR lIۋdFnNPVK}o]>e s#A&Oش{YhL9TB%h{+%_JFws F1ab2Xatu%'P,-];MS%W|Np@e|QEr PX8Ԝ8zvo7nRvWR(lf]&?tb f!~M %i?kH!d(x쪹7OЧ;r˝nuФ01Meտ-ovK]oRhT_IojMcA1siil:p q<8:tamA6zMRbMҥv cۼ[+*vv+U?ӿӶXig^qZvaGR8˙nWBK4oX]^#" *!˨%h=ӊoeaVclpBHU|$α7J ih<:$H*ƀWYb Y7 m9(QGe9Е٨f(xXhv5WvnuL PMU1x P3H#.)t >̶Ca;&QͩzMp4U[y*o..E+EtW.{&TblͪHt\RX`k*4i#zytJٜ])C{r7GCb=m"ciCow\]Y'׬y!;ltKyUrp(#.ゼg,BȒ{ׯ| `CS2Uh(~5e&@] W5gإpi^^ûT^9}^{gu02ڷfd_ ^8(2?_Sƀӷ"~xϠVLa6"d7bRy6jFlڤKt`>@.b-CT$ٕE"}wACޭ\|#_UUSN3-i<[6h۵,8ȯ!M&󾑴#O\ͺ}Ρ5Muk42!u^e&Z "P[<&9e[t-WDuS&(VI A|*%%^|y; <ъ r;&q2@C.).tth@Ä́"$?fYO~a)9lQZKFZ"V z m^:#4fJXeN1ʄ-ʊ9T3C ̗Qx553 28a$v*gtV>KԂ+vp⇪Q>}PK Vay=P{v6G&ogҸ]J%v0KTȷn@+>`}4H[W' Ä ~r!~jo~u 9cDmS~!e3S%BdLx~ @-P/ٴBd;ϷHعڗ;gt1Vv-)E|FbН2 on.jE=Z4X악=vj0yd1eگ,o"(Kc<"o>n?v߳T|7MHBDƵM/2;H} pVi\!ȤưHiJ+ |wcS[}M0gzOX&CLNЙV(0DD;r}̅\J/^1-\|CsǚLPi;6I):30X Ja]zPlKzw$*~KJQ3vXgأgs{i5T>= I fR^6o6Gv ^~' %_$ E\{OH<dԱ5dC޴o$޷aqqD Z9qE>m<1~*Bu'l@VXIn^ ,*6?ȘlcPr(SpY=bJF1zPK(ҝ^_ҿ5skA0gY.85P8BqxHr/Cc)YHr~r$2mi 7fcbN6KzkL@ɜLOAU_&u KaDg+Sj,j]xxwR96wz$;Q$XZIv]}6eEtLRYp&,[Fw".VRJL8JiX.ɜi=BݳW +r$25>xg7 !y?@k!f4E)&5hᅃGqFK>HGLHCJC>{*/Zq}k33CDɨ@N_C$}ǣ3M%4pxMZ924+'30hː M8COG)t wY:߽U{hD+]RToRVgŬe"pH1:֣T#^esN:IsJޟՌ7nӎ H8!JZt3ӥ` oB"p‰hPl YX! Pul2!9=g F1]y)H;Ոji7sGVw{̶'q^cCɧBEִ&8 о1C1om$L"k;Lە-QDJƣ gmiեɾ VtGOξzbv;0 O\\ ԤQ}.L3I۬y8^ܡA_xv$v4¬\U"1rJ[_[WΎ%tVN=hM#G PtE ҆F-EXih9(xťQQ `,UT1CxB[)Ia&J1hɱ8PǜRHM\ke43aWl>jre*.oR#0WTVjb3cKRR-}:-=Dž@z!m'B,othi8O)U/OPF̓" nYT2ep$qaW8 I؁˖4܉ք7{FBuJZqaJE+_ pV,CTő bGB499QtqsGDiSQ v Z=&#"C6Q:]s?:K0N>pbl2+G | josl-O<[y5͚\~?4SY 6ޖO8sa GL7jU{B D9 ѻ$ N]OM+0ǓU ,mS~Q[u8Ox;H˞%B^F61M(/]r _}6E߸ ݥ.YpР~;\%?83]1RFou9$<ԭ:dEmP Gگ8,n(NG400iGK}ZܶOq7n2#ڱEIT>NxC}%r>噫Dߥkb"(_b?Ѐᚰ)g8gI@FXeY I*cK1\L+06b!&1v&Ag06{V9Mw7e{ 'Vs[A?qvx¥AL^[22,f ?TX :#zor􂜎xY1HBXKO|fΦ#A0ses9 Ӡn쇊'FkX^r` q.8#<>J*9MQ sqAq/Uu'[tR;({ll8ƽa73R>FbyIԚ 232}r-X>u, R6P vC~y?ZrYU5 XXx;e"Ȝ)ɠ(,(J\ I$4M,~ 0x*mQdY.Û=mAcjAax>F21g>餋 ԼfΎǃw${f5$FD:8/o֒rr-ʪh'k"qS R)M%\ xG3 c8ݰ5oAțZ8EW3mLkρsq5 N{HnޥEGeQ՛ِ]V]# ;Tgٲp<.$q,}nj>j46f*c:7rr) -ӹcp1.z坤m'ӻ`; +=rk O:@g\dx8]2UTiKG]cj5/I6\ U&YiNߍ6sŧOM!o-(dN$]^g@tadJtsh#9EѮB4~[WҤ4%-"s_أ#u"؇q%4 -,@ނ _RYΌ33,2ƁX@gK6}+ommLsVH*ڌ,vf#xSFFKv|1ؠ fpq@,jzA46 ڗvN՚qd:9Ws pF̊RCz኶}:mN⌀<]@AĩE HRw ]tm.X 3ZL.wu&2A͕uP#jrz{8a=C,%WNkg@B(ܒ[ uX]eYk' gPPN<=5m}ćX#fhްгO`GgJ |"( vS @XcrgxBu/]Xw_*ApY I0 |\.%C&]@M nHn[ScA5 P+[EPٻ/syf2 SWEܢ0 SʪT6]~mKa=4 ёG%+`۳1SA"nATʫo .[| }}J ~6 ?8b:ܼ録~xza߷7w*FP,11l57~D7.e:$JENJwB `zT;D_ Q`kZ-'́G"e~~@myo\>^ r3Z:-xбoj?c!:@2ȉDLVY%G? |݉- $;> t#dz`)1"`;),V]MX{E˜G6{@@ҩfW^!-f.z0Q֐hkˆgڹ󼁵,ED:Ya4n0D ? WG/Dmqľ-YK;ziH"Ssxo&i12-A\n({ B/a*NɜKL`n=YX`G0\H7iOqj|oK,k'in֏ܥ^7A87d[Up宆Q%OJ/v_nstK\}NJ57Nt%#OiW1P>⟦FO2NǚJ/)V47)^M btNSng-}So P:cP#hzp<:N_gxBV`cG=~>erNhCi_}sb"(ПN,tK48(zZDGU04*\kYkBuZdU=ǜ@\yub+Ip5_lz$PVUNW底;ZB m!iԉ Dv: ;8Bp:n&ro DmiC\VGзlN4/ȄA!4t` mhz)4GEhl|?_S1D#GGʭA7b17 D0s;)g_4aTc`hFiSQX@xBpwG ۇ/[q{tP[FGfX6 wÌUX/7,sL`'!&?ݶ;/),3 `1Z?h^ O24lN?jߵƳbDĊ4DKӹßБ*M=jat`\;H)dV16S}t㳤\Vxu}IT(m>\ s#G M'͵N *Pp neFC8xJb-:q'RE23NAg,8 7]Ĥl}=-xf ZqOFU]K8f+Q qC|p;( O®,pNƂayP~6,VLMѴъIW~/dv`} ?.n kCUvZkIWtS̾%@&ḯ6HRS?PhX݄0spiNįWӑXVp9rT(z5Y_9'ϞRS*HZ!ji-5熛 DǎV*.~w4_*Ő哱PQ(Ɇ&%_! (Rز]ų4%đ$(Cmgea0%H(gdHxa/ ZǐC{1Q1Fr?rhtP" ;XS>p1ڿ%}_QuwWITrbnOqW"Q jQ*no?fg)Hxcg*Åf+X)*h4r@qٖ{|ûMoZj~\7y"?bɣ=E뜨&+TYY<^Kn ]Ɔru D2y'= DUZUXU-#ltG,_T4rD@LU2cߔ餯ѱ٘ Rk0wyxTBkc7+wW5أ\;=x :;Ɨ@']vd)E?R:BC9xtEbdajFQlGFx4RZ>A1%m/&qpG OZP$wQd/ _\d`7$"D`T1*Yb%QHJ<7=းݟH6]ۖ?RPAԏɼjTcā߱Ot-b5sT~GMiL ͥ4s{CPJQ<2~&gX6~Kfg|uǗCN).jVUIT8N W+*|-@pRniK$W*Zx$H=;kuaVtOM~˃ #87` u΀~e¶[+ˎF ve<:bgB۱")ϷfS8:Lz̡Ep.:+Ư'բ`a y&= 3 7N6bwRRqXVږ >f~p׆;JW?dxZ0xG`X w'*8OiT?)Kydݰ}p!o pqSsSY+ު|tPJGIvXYXߩQ@%[ehvAٷ,P,SN];W4u5?+V#O.;K{DM@ {6 .h²U`3E`i5@" Ї;FU9ݭӥUp=R;O?fhVk&š./\5&\.Pу3:oN2JV'h؜ <*{]{A U+HUk^ʼn׉.0RR>]N|vo H$o> @,[)-)-](3qejWv{_V}QfU7*ʟ CeAiv!]MO/LM rF(N䝗Kw4ƀe4]a:qŧFi?4NqH`KKmȔpz}BD\m˥ =sX]BӥG$WzKj@h7BoV3@m 61 1 BᐧGӸ|w sNvq./oIJRwM* *O鯋({CXDO=鿏̪f -ß5¢*=T h>G˺`c4jCoB'e8F'1 ~Sgn/zN xupcǴZ!R$K ]h"z{p5y8yx{wK6-#gsπKa%{(L{{uY՟㧲i BZ0=ZÛ^$0͒ŗC'Rp U1"tcGwU++;-,hx@]~Bl$w8;/ec~u LrJ6` #~Ag2њ-[7yMP˜v3П!ϥQyغQ M[MxDTUj~ 3A~;МurЁرh<%dD4AReD"~IW@=Yju*LJMuC4orl[LڃiiXqlnA)M&}8~勭͢D2. ,^iH1UC{ߩ}:[b򣠄 /'>܂ ';P=o@pG?U\䱬:n(t3I8qm풐6>"W͋ήb]~ i> n [J4b mA-$i˵7.o ʁ v9 t1G'2O߃]WʏjG\E/+H Ka,!fH!$>UF$MRlɩiY#J>kA}UKN֮!| @썓GM^ FlSz]-{~~ikkhk%c:2_E2<, %yqI->Yt]Vo_hysZVr~,?A=&vOϛ-UCNba{D7".S+5k zIcw} N|y-3gDfQv3kE 0]:ԓ眞aR`,ͮA yX#Ty@)<)OD2Ap|-B// NJɢ].?bP_M|};c#.YN+ݲ }Po,Am[kIZnEOUǯfZХ,Z=H׾M44\ CbB(p0Gtq&g=TZf{03z>WV _ -&Xu ^*|^߉N/9-/*+gDui) a v`DC϶ >a}OϏK qhvV"HL]WQRUݬ;a*:-$U7}Pk)ʩd_OŽi{ii28XpJlO{.L5Bx]D8[d܃1Qͣ:#ĺ~_|ޟo%LxJ۩h[rDB1+?ڄ$;~HR~NEĔU*BRUBԟVBYt.0qλ(wMD$]gv]%zbʚhcNHb^AY|G&{gi_^iv+!Rr25^+EI9ie(~0)eh؃9$+lwc^Sb  r؜~9eg7&Rcg8摐+a Z@ NR u'VO}[÷ކ)$=85,wn7ѰGĆtY[ӨPE GVFIӊ-80\b=Ia.lC^N@֥GP:M% % XE24=}P?^jT]$I&BHJNtB2A`M.Jt\h)^>ř*%1&#Plu9ڋG["|+.SA~HO9lp4T| V0FN.Nܚ }*yK.r_ʛ?Nϲ[[ezΗŪ&?UbS?V+U+ϥGfs]߄7?}|g!8^Chp;P5Hr",@Ō,R:~"Plm78ܻ>(?hj#%fkOd[V \˂3`'pW}T^ZtQnGU%!N^vsXspXsvֻaG !DO_<eL;iN`&O CwD;j aB.UjF }eOMI;I"Gr6L?2klt 3vn%4u@?U~HoH}JS8t;Aݞퟞz۲1S>P짵 ~uya)NÙS䆽Ÿooʐ;47%dcF"~ {û*jv~ e8R~> -ɜ] D[^+MNK&hV 70vs:떤9/"V,S(yrν5Ҝ5 P5+2-SFiV@{*"铵r[1z@ma9jՂEv!@Q6Wly[>KP BM @vbIGHW#6")T][(yź$Z!;N&M%*n8S)fjPg}G^-Ik4㦜dõ}y?}ALA;oy f&gB#.6{O-Z4G+LΓ0G op]#*PgN@qX Y}?""`R.@4A=5,{\zެq[' C|; lA޹W9XQqk~(-F )v* 9W ^1c $ӽ-pU++YclAޭ(@__Rؼku)iT{SrlO e L|'tyD42ܦay ԏ06xRޯ6YځI3IqrU5 wE*>pՕP7p c@r`HVLu)z|9#i1ODx++$XMۋx-m&XQ0^N~9Z ڿ fho~hf `]8==˙N) ipE8WP_E/-#`W!j5l/&HfhD߉|&-g]zPM$PPrVtIhU! %{7te2|]cn|tX_#ibr&PHjY$%v/`i2}0Mh, ?b. ͉mt_9{>d#-!`=x@: oSRYAHJQ&# Tgc<Ѡºb:(oq^תǁ·](u)j/h}ugb} Ka ;M9Nر~%7U3&6O(cdJjAڵxwm[u>sd?\\S14u|BQ8L#mb&ޘs;}4vIic0g^w)\wl+>?ox5M eWnǂAZ.RRL"*W=DIL^FۆR]<4=ٙ9-R^Yw"Ka"RY(]BJS^8H緈GEptpHpꑸlWz5Tp׸?,5_S,I]OxNrY6yaI2HڍD kKfq^a{:p֓cjUsψr3f\JYbI[vu,^}@1R[ZP/0@'pAʶ s`#y+r_ˑLK5mW_l1a)8FYlTNpO/ٵh&^\z(09՝Aeсlg]M@Ւ+V#},gޤ3;?3pRdG [/{AOSm1 HW7|J m@l rX >[XL݌!s,0{G s领ҚQ^2ۅ)F0ShۏCmn>_BD֫tY-g77.NGßSm˦T)%*XR=yJԓ)Veu#P}zJtU !B>Vڣ02Zl/=va~|qZb3(zMP y[|eQ>D|#NZ.X -@6|q.Fv&Y';@ZDBӅiLǒG~?%Yk OGS_Vu*ҕ'N_"̞q|tʁy'f@;o/"ҳ˳xs³KbYI ^9566!z2x0C!\ynǶ#Kv/zn’hGfcxY̷M$Xs9;NtR6W|uy T1.+[d62@R(JUĵn(U2̓wMƑJG94¶!yIq!n,M).$2m}^ Aٙq17rͭWDotwdL-hZR F^pk vfaMBBXЩp-U^ TI{ЂhAL`)nS//8ifl(TLSi=fN7H IjMo~,lX˦\nlzK,84B?K4C2CwFdrcU"0"ŠJ#YaKudii+I& *z r\!ĕ[ܲѶ~rOw\ԺX7է I!Dh3Q0~5׭듰5Xq4ث #lǝ$ ׹:$ )◞wU& W,ٱ\^QF0N-޹_0('lYWlܷr,Ami1577'xX)B߶=G~ƛH: EɇÐ Vo}݁@e%ӳpr \[ % ir*jH?/ED֍[jZتqmw4=NfOX4ƴ`5fw/g`v̀6k֧.G>ǽuՌk[zۣh@*geY\ʹ3|DO$txy VC3 FVAl:P%_¥]3TXE|]]oO IoL2o%'!7c˪yF,J!A9ZI:rƉ$!0϶\Ar\?wo&K:lN`~ m]1^&gObn* Փ*(|}kIDr2|N^ݼ8I9wI_V!nYyz`=F# /(Ź% M/Z ўx2z6X9n Չb#o\$ 㣖XAdf_t0 | ?|pCj%٭NS$g)AhI+K*Fgc_\|d:#0xjJ& +vܪFK-X4tZ@ ٢ , ˔HўCTF#Y\'Pg~~mI71t J 367 HʹBG4)--z -}WFˣ ظ.FQ-Dm tHa?cBҕ!hXPύEӏ0,xJ tVyE4.VN˒vV_3Wc I:~"`~#^}[+|O&ǩ~G^IC//:y,u_Jat|H]YcRy\C_ & !SZaV3T lFR滗mDKM1ݽ,0\)+0*`QZ3;auc9 nc .Vl"6=/KU΍pR Py;Ep7,1P;8iN4Iؔy&nYFPnDϙ0bԛ :Wcj:0dn9g!nJf D^_BDT64}t!m2;jp1 C`\äSN˟4Fe/`:&uRuu:k uIԡ|=Uf  ^TL2uDyDp~VnyK?/ӂ8M8EMlo$*+3} QH52~6=ud xDo~=ki[R-ͰJN ,)%Wy*$u/M&(Y=䑋jsXq=h4вN)6ȍ;}y%}'#$hp,VJB*ȫ5NIf aI".G In?K@0U3r;=+4gXl܆lv=_B Tn<^v-οBLPS)oœ11aϾGs@Ų~\MYuݭ@.N]rU[U$/u@P?nL;d(poD="m[N=QC6vMt+ix:ywAT3CE*]*u ?"PVF|+*~K+ c)II{վ,g4 j]B%YFn*˕J:cuKs /0iφKB:*[e3s(&Kɹo",mafțɘTQUjxN t_ Թ=j0$h`mp0o,3o`|>}kRv`iYC[2 !Eg&Juғp}oPj |=]S k42E& tȉ+8,j?O#~* 5fV7]b| /a,'O.kTyfi+9^_v/Ug,A/e0K.RlCQE'o%8thiSkcoX֤>,}4qBÃ]0xgޢ"U㵚1V+4j K߱MӜe_uFDeT>RDU>uT!icMlA-$߻@Y~֔"u|f<lەZԐdߖD WyƟ0EcwGXc!Dd1 g=iҖ'0!sfF8kq FRS~?*z贂oBqUޠ'C"ӅFbɮ6TTog(`GA8†ݸHHn?OE ٞnƔg\r?\\H*x2p6ntx^11ƴ)lfs E>y銷)8h4f1u.7p6Ń~G馢|yuB|9K MA[~h9"lU);Tx2nCJyc Xu,E OH/Q9uDnc\OU8!z!cyD>y ,"(x6U<ꮙ7o1q-427C;2*e^:G]00j"EGbILbH*%SmD*D_rLJɴ`>nEf\Lb /Y`eݘ*jLGY$bN{N y@ \ǥ&䵒g:T=N! ȬROqF8)|rkLX99لZ>"NԽ ClKj􊓂IXH(SZJ4bTb0fg71˷oX _& ^o}P`| omg|i1vWdx !JKJMƎx0m~D<*g(N⅑8'u,2F8MNټzFhO" #nTCO;ǁqlcvt@1 0hX"KGq b7?mP܍7' K#.Y5}ƧE=[A1aٱ{&γx   Oi` :(i 5x)ǟ͓c1\׶Aʎ_Wk@?a|rܡx Hἵ[wjT&/r8YVYaIq16Tq]0i e*;`Em!TֻT0&q:4e"Ť6 Ќ-7c7"w[=p7BaRY^XY!Eàa(g-YCNDci> mhhR_(\KcZԆ)Ƶ"I/Z\n;'WY%,` ѦU !ƘN];X(/a{{DWX<&.SkABL r a/taծHdrYl᭞bXQc"u5s1EјAq4TȠV|rZHT7!g8#GWiRX p&.! |VⱏL >|k1B#CT8v(oՔєMF.}pBʕ.,9FIbvF-Ϡٞ=/S)}'DmI,oAtS1VxaN j8f+BM'A%b2/,r9{$v[og݊_-msN13J%#ӓR(fZ"fZthl ec=>iVVD^[q}ol杹W(Ě"\Y I2y*ItbA; FI~G]W5ea[\OΑёzbDpӭa|0 ,/s2jvAPوЯ^l ?κȥ`?"%o= YD!O 8dy' JIZZ 륐`a{"ELLy`Fe%npG48G` caiI[gB k^:qh\}9xf0ف(Kf"Q"LJrvj6SmfGBu~SRG MjK{&Xi=竻 zq' U{,\C*܇4f1=Mz{Y  o(T f՚聻].I޳OW|%$RCQI\  ?5Ⱪ78k`876R*ء L""ԿYG6!ee2c)B)ߒLM;͂qs:9Md(Lӣxw*NwZL"Iʦg( ZJTHhY hzq@9/}BZަ25Cڍ2\'s]Bիh dbKrH⺩8zWiïJy\H0܄3`^6 ʔK%C2nȬ=HjyAIU"t~ۜ?r"u1ǩo(rTeP@h8 ImF$x /mXVwl)JM#R_0eo@݇-kȦH^L ˀ,E3cf*\V$ 6Bq JhḠejqA[k3 G/D>\T읍v 3iq||Zws}*9j1'LNb܍50g*w.&/F;~ Yn*d2 33rRK4 j~d`j!p-7x(dlX} st%-EH6>5Pf.%a,:@\odni>RN{>ݰ7JMO>,.8oxjf J97 KycGW/ӫ?KHͦA-\XlmՖ07rTgYX_E* a {pϩZZl{ zk&TZ4Ts~:@/B;#` DKK?OwnXg~TQٻ2PV Y2I{D'K$Tb4 \hjZ%3CߒYl V<(Q55snܤ#tўdf"tGPBрł J h{geN>qMb6({ZWqe_Aame}jY\.}M(zVnf`>jʹkn`"1l߹4%g"Uh; MJ 9lkϨ p' u'T*RxoL]7HYx#>gB9eOP ;oFͲL\Y"ETxs5Ha}t\-f$@D6oXv/y0q gXh'1/#,d"!+un8sjTxK@Fp1ixDgX*Lnd Z]ڇw7\a *箅Ocnvz > rr^+*תi$40 \eJMd*v+e)!1z?3Q>=Rښ0!ҞҐ+`ԷDcBZͱ;w*UbE`98^4VH 'w`0SK&OEFsT0g I&?&tN\Fh"CS_*c$~WCǺϒD`u'5HWo+}J MF\ . \v-+g2`.L{+&e/LzrI ^PPBC~{մK)[ifn6AڭDr8?q398XS)'ϰ]mf@C=/g8 ڎyu*PV|aݑEHD(< t ꀏEcUO?X:CnB+fB*Q{dD2x$IiQccɱZ57x(VFK8( =Y-eNER߿{h}LscǶ &:Hm+F=~0JBٗ]&8頓^!sr 1x~YfT565g2l|VFBz' ͡sBڸծ=?D>?]1G>ZZHiŔ~/Ӹ~ h"Q`C̀-Q[u D^EVKM}J% ?Fezu搟'RP0jV CA/<,)7 -:xA,)vƉ?_GDGa1=YXi ^Npjc7 Ĭ-+rT"--V̿+irpe .֜RYloໂ{D,l5hs/, z1pZJ7>: b0O^5:˸Vֻ)=`kܑzBK>ތpsgv{qf Ed~05&CP [KB ^La(J*PgB2{*9 tu-̮|h2>wz6j֭6GAa<^m<Uw@`,F;"  H羽6 -:FwTȵeȽMgO)yA)Ղӫr3UXqⳀ}/$hE㌨+<9jV`ŠjO]bɎYU`'<+[Kg08u؂GM{+p+Z ./|翢,!wY} U̽ 1)|SJ"䜭Sƻl0M8Q``l,kZm;Um܄O`.te&:b"c`JjD Rd>&vTE&`Ca ٴcCW11ZA:䒮BK yORtλ\e:- .טqw+,InHQK8UD9->L+! 8B8OE_@׍3e c ȬG"誙*IFbá ~AMqD)H4vyV$w,&$n[S7sep`fyyo]ǔAt7\=zib(Ü o|ƩIw /08\?+$^-]2U]a~!x趚U}WEط7I{`0=|oP!֝AqCxל݌U~zcS@c t/ Pנ '#4F;L c^^^[:'gBDED^u %5!kʰ B]B(}Y(isUlF[@ͶQm@;QR/quͿ$FU:YJ5/H4|E-}Gn ?ѿ#0_sVZ2 GÛ M j0'*{bpe֤d. y)+vNr:aPݽ`1ADhP 0ȁ?SAMpZQﲪ$/,̾2| 1r~rR?K&ྌւ8(3e!3DRg רb?tZyl4)N=TVDmұѧB \^?z 3% oix/ ʷn8{KwF f*KiĐ_!/hkRubs?n.8.!/t,U)PMC@:ĸ/A`ÈswTI_o) ,.XEYz5}%<.?!FxVMfAHcn$)E|UeRE+Ƚ*ҶU]~sUZ.{~ HQ?¤c'Ӕ޷MȜObr1H=a7k;D߇m0&_:o[3#6V-뀋#-Jr}3%D˝m[Nc)ZƖ1MN(cuKL?J[~w߉Ze#@.%/sݡU6_:$-@mig+#KDjʊ90N$Vdv" +} Y>#r0ٲ 0煏W Zm~,Ds?PɲX+Ŭp$F6O3u; B3.`c٭R,,.az úY(X`Mp!٧Bۿ~K@t ݟO:hB6MD;  ש7},!?^oz%,q3O6"# )'iUXyA@I+Q8ΞB(t,79L$]~ @8] RRԔ-VUh"ܘ*k*oWRـ*(㋊,) k+0FFQ -'br;S9O`7'ѩ%,;eVv%J3P9)GD'!<:}ZkzK77 k;nQ7ޑ!I ,)z(;TuI#nؼPpI%L)m<&-Vt}ʹ-G֚|m~uyLnq9]iX@F#j$BZX_֗EgWR@E#P,{#C]ykIԲDPc%h48P&1+S=,Z~@ڶ)`%; FU?lQ6ִ"5S+.BxFRX׎_OclTQLe 6&ڒ֨R#Uh/lʔ@i1 (>x|l{:FH?{1#]7Wr~-649ZZ^G~ >Ϻ ſ9dp*<<›&Lw4]73fr![:~A eTqi-Uv ӡh1E`O%W)^ Z5йxN qQ-~2Hl5{]UKpst(!F%dU*C)XQM[!t5x'>b U0{.N^"e{6S]J&V^īsb}gg3 }Yٲ} d kWw$_cD_׆FFT:wlfVcڊSvυ$#A+]UKhgIU)DŽ-DdRc,ĹxrR㹟>iԾ];}G8q w_ *IC/nř n2+N^r N s[~ƯmoI9%D|ƇX |ݙ7E0+`gR*ԟQ1'$K]rmpUϨVӫUcMќ2}Ep~X>PWx?Dq1<ӶpfUՅ [_j}Ը؜f[K{ WTf*W DS. '|CaIgrރoO$ CpdTI;30z5/Z!ڽ#5KɥNu+eҎHu4*텃Y/olY ;M,cXKadpXo iUSjsP&5/x]tuHu1$(@xPb/)$J 񯡇auHmy#rvlgcPRKaVvHEI3#Z4a'>:3`2ծ4v^YwXȵO~o9d{ . .~c24(D,R&4 A)(q~iFu. .ddLid_)1PF Qzg-u:4 ѯۂ#C\ d(QHV~}G!.2.[lj;DڏQIlO)y{4l\&HqF.Bd- :^(]0FqIJ A큷^1bE#\տ%GiqpmZ堅l77{t`-di2Ssx*n'feܷYd5c4.KQ:#;y\1{%pr4ăfI''C(ԭN}! L]XtkUv߂"4@d(N~X%w 2sh 3f Enj2_y,6,y7f=@Q] 8$ I%@VZbl-Fenrrm='@f:;WrgkKo|@#_9(Cɢ-bwjЯ${[~b><ëjޏtVRoW}u r,|m}wҁ.Պ~*BtEzlrfrZr"1UuއLڶR֚@v4LcW^јổT-g"auY wAVRWI3uCIm,vSRu?z >AFoTJj){|ڠ4'u/D[ ѾOBd kGli(_H^&ď-?W1VN#&FD j?hlk1HW^b0!LT᲌߀_b|H΍3<6Rc/n*w0H DJ&&dz?Ac:un)o F{C;J'ϣ:(j.Ggux"0⨆t w&;LwTsa$Xs'{(KV}wSʹP7UBiGD)MR`:;fw['V/}wnY =fnύ.|5ZSm<7,vjK? `h*o}/(^g E;6u]DZ1CHP@0LIL<+4y!4^?e#K ߓ\Ie:rh`MnLa^=NLo/kj1z:Lp+Vh`DYujP7 MTB|e4aW ?!:tbЉ+F,v QbGpw0*;[%)C&$m|LpC/ne'"`<&B'eu~0[69J1!ǩ~&qglR 3z%vtjY+H1Dz^!kikXT#*^qMg /ߵP;w葠cc0ћmMdFځDLڈ "-Lp.61|!OoQ̵B\s|IYj6[`y磎jMTfB'P|-Ke%b `%a~pɋ(FbKŒzQCC UEp M ̌ jO纐9hY\ ?*G:F=WsgL%\'nA RKa1Pv>J''oxlϞ^`5Y6@"my!{Δ6$ V#Ei9ϕPCfdMӲ@RQ`U;~]Z#i0 ej^f."u5Vv"_jC3Z{,YHhL̆Z>N{rED 5h[`S2=pP"NwPLl Kz,N8}I$2`tRTFuef5ïpqdY[RꢹfԬY ڋtAOougttgQyKEg3w6oFA.3+ڢl }n_b յn+\RHvAR 0m 6SWW :sFj@arđYY䀤eXϷN.!*ɂ|Ԉ 2H*T+,_ dYfcآZK[dB;.9 Ɣ:eo8Ujo>P?o6764:)j>1Q% J9Vrs1z~_ we^<#ڀ>\?pyž'J3-gN\tBu mh:qhNM q/nZ1Z8%}u2M }Gvynuj׻(ْ{$I՛0,ɓzݒjmn=7g0+HI0]U*b~2 T\G:alh h&XN4/nf3JSu53"FozF_RdjMoX:ѲNuOkZKH~ a&Ԕs{K{MԓV`y//GNB(?.2 Q?syGr/踽|pȌ?Q3+(MP>14(⇝-?Lz nedJGwM?n@_\Q 'oXfeTӀ7<~5)Ir ͐dGZ>èq#nr{Βa',gp7wAj|Ş!CR,c."AUZ~EFuyu(S~ GmG=zP+O[]WGIUnTQFu}|( 7{jW' .i`Aj&_q4KX 3])&i Ωc LH7-v=?.Ox?`߮@?Z!rQp0SI$ܮޙ[h'j;8#9>C;o*덿ǜzaFZE 8 8"_Bss f=Fꋋ}֏b,[ҊqzVdJ^˫m2!!R./tyT7[yΆHe]O((<L R 76=m#-A-fhKNlN?fۦQCF xBJX&$\ߤBu^<:AS2㰞Mk22X3m3NAe Lq] mAv˂??oIv_ezCċO{f ZS24aa zȠlB6?1F¯ Ծ5(L~ct;'Ns5p:EZ jaR4@a]6Qe] w}/|,J3`^t>8}|0nR H!@5h[q-nww{*)!%PɎoi@snm~3Zm(PE:aQLE20"!D0['Va#8" L-ЂXZae0 CL5ā[~1tbܩ kdPZP\S[||,L wPe2ٝ~neXUd}H}pҦ#-%].%k01 w̳qz;zS΅_є˃wMd>#ӳbeQh\ fN5bL9 > L@|1qS&{LI!ÈڿdkX8hqGwd @^[sMٵ}qps8^e$$'7d<%B)]^7ǫ4WrL2K|M}NKɎnpڽ%lbg$:?>隽0ӒG 4yI'AԶ FOh2AIjy_Ϻ:\8"OtMrzI iN,@TK_'mԲ>6Je{9DTtJpl0}8pw]z$5|M1tM5&_1D}4uAO_2Gai(rKvWQ=z'2m 1]h^}b_RZrFQKr#7yw|waů._y%G &Z!<\чOPU'VKA3WOΛ607Ĥvvds=krH4U݈=)\q%>QmR3IV?!59'jDqH[Rk>B A[PIW>{A5΂O/)SCN*m!?PXWb$*2sXPzѣk9TTΰA痾&td-sb7%v&Vͥs?{mD2_dȝ|w}n2o]8F]{ =0WFk'kgLl {ª()Ic_a#FNw %"bː]ZU5A V@1`GxOl]oWpOuS˗^{J` t-5f seG 2)3$:aLqt(>@>y,GldCj sx)Gs Di|X@?hS  8A0ɥei(h  [8 Bw‚\7Țw 渝<(iKƉg޵˸WqϿ{G]"Y{s7U@:ha%8R 7JG8p^ZH! <Re7sOFS=_6+[Se=‘trm(Q@U9;C Gd`.KIđpR bTr>5j@(z5ldUuÅ-m3ʶtdIzE21Z[%a]{yq!j^QzI/F픒%1T95R1I&ޖ#'zƨvv3 }n`i.{K[1-ʭEid׶Z{&}YȁId|v\D}OVCчtop5 b)C+Alqdߠwx  42[*Ƕ؛2t߷~HۅˤSQ+hZ:$l Φ(?N=޵tSA3Q SNptj >'59_ϿjɥzR۴Mԛh+/]!R8 ١&N낆67Ǜ~VW:oܚv3'wӌ\/K0Ֆ1-Ef50vp $ʴn yB#m{lb'28u!q\f$R$+[;!,zPAN+,d7H׃2DYْt.,W"Ɇ+]~}]DB0zpG~d.|ty#(4D0N%:윛 ;ݔ /51yݡhbKRAg/gO}p٧ "eNifnAy׭|]1߳_:~~#96i [<[q1îR [ ҘupW1,.dB@XB2yf%& Mլݐ'.fK"pY6-z^jMQ|t@8hZb-*JE wp(PHcOc@׬N0VIU,MJζVHǖgY3 zaiH4?ۦO5|Rg`u|m|~^$ 9A7ҿ1)pȞ~%fe1̤]ş&UH5tvp0+Ys55FӋu+].=V<>?yPHHM$ֳd<_uUL܃ZR֕k"̍}?K ?v).Z^5# Hһ0;x@!bVD=Wې A+ cWA^9}6Azr?Hakq .Z\bWK2/MH3S*ߢs'} Y=xs+IbRnfk%EM'σ ݚM؉`C&ө6\sWLؘm^lݫҧf !Kv{ݵ#PŝGո|pNA7# st{->9%-ZRlq;$dzY^=z3fۇ2ԟѝSC. -nx*DLL -*M5p4h8 MM:\rUXH:Zq \7~`K>—5f8ww, usM @2Cqڸ5B'ܤdg4`T1pvIf/6TWubΑ3.etTg`C̕Rr[ݍvyT:VM˷M BBY=dKã[#e O8?wm>6xl "V=őz2=$ EݟY/ۇ>eJB!m|2-n"?8a5Qv 6@8޹cvw2qXY^)S ?qơ@t`eo2kԭр<M1T@G+|x_i#u @jh`K :0 *eUtw0|j &E2,-OoԼo"(# ^4čK kQIbPvN۬^8>)ᄱ"wa(a=]4;5U޺LL7xqA> 0u-CJG5Re8,Q,u{;ޡ qEX9$%R"_(Wa Vٺ.6:ɞ ŗ~@-+̶N'LdVuD8?{]3PI ):Y}wUS]48TW╀"nlj[c\JIˬw[4É`BoEC H⏢jQIb2ڰiH?R1}o:3;C,re0t͟D u97Sr6=MS1;:~?6}4"Lk xtv+an!$O-$8@uwG|E X2_y#@CwF@PTLAHK kQkJpOZ{^ $0:oa>@78@7<h?u/4W<+6/`&3UJTf y˞MC%ސT@b]ȯA+Nh ?9:SZRI': ae^WvYb*w96Wy^j P6FhԷz~@QN[_f,oVy/=ߛㄎN/y!b}ٙ ryb|YiFG ldﷅ07 '=^/S jQFOMIVjm yĸ >e\/T (NrY(EqNJY1' @S!}h,Er^ǚEYlJBW괥{? ^v0<^EkoiЩӴ~ |bP!!ztmV Hs_#?_{]v$6'o@ZS !G|#;߆S ,_uWC Mz1-)Ԑk_Mq=w8~>2dGAcoz@^4 =l]7ҍ~Ur[v"CT< \I'ٱNdĜ/@~6, ӯꍎJ#㐱\#12Mc۲^=jvCX¨)Sj܊rH=qy e\=6ρ<@h뺋\ 2GZrAFhgvˀ2H6vaeq$x#q^'CYls "6_7O%&)_s>*h|_0/PU]~&w׀.)$HFhXT*S"; űeCp<aa#Ýs@Nάn !/HP~,gHum SQYtp좄xb  ܂Yb]+`|9Em0^(ǚrF(NY:|nΎ GXA/Bد d% XQ`.tM/=՞[0jMN6OTA/KVrM..,^p UxBQxc॑ tXy`G֒zT˞/ x2MRʅ6 982鎓RÎ\z0, <`/-v8A@mU}c eȽw\*U%B[|RPx4L0 Y@e3E2Z;y9)LH+G0Ż֝_~yb!f|fxf +uivѠZUG mZ"Q (ыZ/O^Qm΁rS?f {ʧ7}|wn2C;:`ߢF6tj% 7j: 8b#KLb`ʹ!!x?+^ ɧBן; ?h ڲ؂XOS *hI>]Z3K%D< 5,ފ/z8wr &,B3S?\P֢!i)lfzz1h.Re KR8Ws] H<6X|,< ̢űvvϿ(rm-i-ՇF>h1Q#0aLo ?,f}-`<"GUFɾҏ RZZ"KC8L L9FXh4l쵦 Iq >_N_,`ox gZcPݿ\gC{$ `#.'9faDЦEsR›8v5uȭK&Qya/N˴:jzyHA@aC!hue{w*,oTXs;Ѓݐ.uNjN}NF"[Rƒ( MgXŅ(,>lfz1D~O3wbe'N؏ΪvN_dR]XZ2|vxMGM[K&jnpbx>C^Tf3ʅ~_^)/yd.kO4 W~c 4kq=g)j(Gѥ0.FFb #w7aRu4gpK44԰cݽSAID[8Xa,lF9!8_NUAHiޜXAϽχWpSjHcށqɒ# > @_6x}rBC8DUżLY<ͶN; V9?g>(guEY0s9&Njrѯx߯9Et'jqLKs$ # NKN i/f0;0fhZ5W]G<ܛ:T8H 5]]iUpL_3UlN9 H8`'y*31J45p˒Vx~\`az:S-O1}=YNa6$R]q:򂦪cc3֌.c #Yn,PՈmi/6ŵo !IV2d*͛`2ɾ]\a}lΣߓG8z wʜ! ^~C4Nٱѻ́뾰<'Mo-E= =}O?WT Bd^ŰY( 5+3Su3,Hn$mFQjDl(皩զ|Ԛ1h_RoתZ^kEa|AL (s7){Pf-fpcj;'Vq "*O/1)@đchQon)4ՒҁJY ^1[!İqH}b"V xH*EK42AF&%zxf3pYk)#xn]L [v_5n7_?. yj=#ES0X+ %B=+b"gx@PS3z]^j! ,Lh#¬`Hp_2lG!Sm ~gzۈtb"'<)R;p 7'b(֥:ggK̚e'j2p "F?|4=iIDv9B>-u~e|QY5{k ysJ|>ѸxC]Q쳵Y-N.B97_%Űꂿ?`$BxV %5ņ}ޟRŖc8S@1:,/>'|H3#|vx:&V S9#<"ֈ%N,& Bq8YRh\> JIPzFW^;]BF" "|%FjĝB)}k3)@9AiM pt i[MJ_rupLRB3&kjӨ4dqQ$/ RZ@+1V;FjK&fJ5 `/tF7ѻBmgX&FƆD݂ }fwD0 d\ M+iyv 3}4EV2$XͫsPeg~\R{AYU.vWŸGT?c <5.E+0~^‚G|w׎#=ٞ^ bMWDZ䁑$wQҽ]C:wh̬{9š\θZ}.ΕNZyd^9`n9hvN7#YM/?giMQ_[8`aR+-GkZ?}LtRQquSL'"&#`l/3LTq*HTUJ!Pj,gIW̶O;םL9PmHJtzQuak_.ޒq 7uʄ!r' p!4Ar{8xe*|m\DlZNFk\nWvz7^2o@j^ d1nK_ąnE3nG篤f]3c]/~.g'3psjj' qL~͹>!3,#wOOEhtȓdA?U,z@AcYLI;(x4lJO^&ɷ.Ӻ,hb9S0*$*S^ /QEN8$1iN* l..oXq\ md4H:qA[Zov~<䌰 vE##4ϯXpx޶0[%~t4$9QO 㴆 |;!P0GMuVC&{ZM fDm JP " epv>oxݪẹqX>uk Mf'u0 g_Am[/5DFT)2I'G9ՙ-xuƶx&w=C>U'ɭ$q 0F̠{-7YYf8fҕ{a) ^6|>/\Lh0 YHlN%H5tlyWcԉfrwbب9ˎoLucocO5U7YW6rajIaH>FDž_DtB9k8x7+;b~M\D7~Wi%P"FƝU>rMgMr NĘoG[}h!fQfԩqmCfnP+.lˈ$M $n0Gs_{ّV*Yq>)VWc~ě"tݷ t* tj=8!+FE^yE}n >ՌվDVur迷K/ {;ǵU<G&?ruyHn5R kMa)Jc:5ßE>DK{+o{y *6 xV>cĂb`0 kփ]ݤV? d6 c!p V->ut;cqI U{"P:m<Ү"on=NhE ":\$;o*yjo9ukus.@Zؕs U/H27,W6|o~F-.6f':ek ?mKPpq0^F ;T2.[myv=oABguwPDTTrq9|LEǘJVU0g]OF+X;[Jǩbg`Tb "W}<;(1~{)}hV%kX/1塐zwU.S>؎Xd;5u~` Q>=AmYve[R1Ex@1@LͪӗV {XN\4uB u8CFBJǰG>d;lB^7koT;n! gw"=&7U[Y埵b,BJiiS *oJ̲s.βkuo"ԒfA u1Z8t! `e4Ѯ @0n+a/;@Hv;̟Zɧ ֞ Kڊr#?XhYdMhg.e kȸQE( .xPk#AQAIw. [r.t{P$%r"Lop6En̾dW}؋GHJhKW0W50գ>j- LyעF+'M0))9#ըTLf9IMkyVArk=\G_\cD@PQ[1]#< tm^5şfD<>myk2<Tyɻ(Wj,v@'>&ýLcB%:NJ,;CX! rqG ez@2YQc}g6O8Rbhxp\$?@W)C׿ :)NKQz ʅOO/ֳAYM%]ӧטM8U A2;C xU3qQɏ -cM In1͉F8ao"`)4h5kQ8 ]D=^.)zA*}ŮipZ "eo9 'JL WZQOl@ M-ZWnmWq g } 'y"*~3zBhYnNxdyYL%-ԭI"J:6λ cάYqNA= YNŅOG8VR(wIqv1olȲDzw) J-#3|PhM?@]yg3:LA+RF " b>JK]ڰz.*J;F]u0`6lSDOgT+͵5ʋ.#z|ʓUAؤο#1;谥fyy:jV[$ӛ,>.8@oCۘ&!! *"_Ԫ Cׁ")67ܰ#mMZ}y"|l+DT,nH6Q>2ST!6۫ qSQ̜2SX#cu;MX  Apmם1ntbl>v(ȱCpH2D\tёA_~l@y-Ȭ6;,_EdUxʝ^0+dz]ጌ@&\M>#V H\Os2-QC zI,Zvo %^#^) t$/֎w<1hJx7,>Ejds$ǙT>/)W*@ 4EeՒ. t\x+aVӜ(i?i2 ,/iTq2tS?sш6H8C-U:Wzu^?jO+I"9+^.;{X`MůD\h^2ՈCIzzt31(G2Ï^vkkAzww ǂՆ2b(8 &  9dh?[;줳?dAz$ez D Ѐ씊CF&iP8WZ+%\ v4P uv8(XlWxP-c<`X%ʮl3Tc8-ҖY,9aUh 9QœU&]zf S@Ӌ(YtiS1-/Kw2zʑ4?H/*<fS 8?MV0F$"W0FQ^zHl^X1_ aH0$07Spa쀞G`%f2p&Lg+zL6 PϏ* vDJaG'9:= & UkiU+#_HĨENBYѨ7N{s9,C Bl:P|ozO\ 8&^D.:ECsoq{b"܏+LtJ`9'llɋC;B ֎=t%`8UMsMHw}btP3g`߃tuȯ,Xk͹:'XB7A4ޭ55le`\%GE!%݅ +h8ymEL^w1!%Vi]!)j;"^!Y)_zie9LX&0gvO0r>sDiseN!h# |XvE S5qq&uїPJ(t;~lg. ÏG3h^?Ӓd]CB[1ʓZC<_&< -VNX0 '}6bDZߝ! $/%J2+e@ m&ڥn/T&{>/3٨+Ae!s au!R!"zD l^{t4j*t(VQй0# J_jT |Ȭd785<ߛ!ZM {1Wәj=3WQX(DDg3I{ x֣?rzesQEt `"d䩿 .?fyCk x!S_DNŠ8Av Ѕh=)@kqaAJ=;E$L3%fAsiͅ?`Xrw3: \k%kBȈTf~AI!( EzU@8 16hώ͔T~>b#1LL ~jdNSV 0D lt2E,5WT6`}VB;skT2_&=aӘt,-Mp)a^'_eZ#3rbl[qX3 RԮ&+հ4 f,[{"JDٽc?y?B'XSZN9HrT d`1Ovh>}l@V#iJ?+s;' Ul_/%6M }8vQ!A>d7zd^W'0ܲYj&@:<كMWGAȝ K9߅؄ z&0 A 30"8Wl紬Ñ^S9n2lJޞHUֽ,"hYm `>()P6D> # j]GZOkGpBYO5pVeoۥBGD_pzG:Ho@J3X JG+W rԇ|_W1} F qƔ 50= ^hQ<*¹unoA\qFWx-m_\G[5zd2XUcJTa'ΙQ3|%^*]'6o48uR/:,`}`y!@_-&Khث]CkmxtPUoV$m C@3=ÑOTVi콝IN"fnSH`^͙mfUFF9!$0Rݍ(FmGʏt.fj9NSPceTyvlC^0%nI6f햧L{U:~/P5x8ɱhׄx"f.Xs֫ы~ՙU'<q4%*8Jp'B>` La.р]vEbRu*Pl@L.9/TL̋'/y7b}1_./ 5IV G[0I&bHk)wnLnmr`X|[\e& ҁ|l5[8!w.%Gc~ż$9D?c4@MDZFQ,[󼨀W3c!n/7* }ѐ:>P\1(D%4=QȥL5oq"Fvy?&9L'.i.g[U f$:Gwp qCѦdeϾR*jԎP I$[:?aAXfL?yM-K?ƶh6'ZļGy evb>W۝z0Gx5M ȣHSb7~H *g[=c%.U !Q8(@ᅊx Sb ,! " ،V#jA>^\ VXHƞGHr,+ ~;P٪q tR L^g Rv́t %1G) 47kpw*KQJC63[Ni!`p.-+[v !=!;Rkiy "\I_ }|y̏몫(`ù{g k꭯f*٨m c &{ӹ֒kv*Jo 8[~Ju>4w)/hDlw).߉VX?ڊl^1!s)} ѫ{Ȱےsgwt 5,JkLnx 8ؖLO+{Y-@#t{ C[:?%j"8?YMYM˹qg;nt]%ըfIDA7rLbSldMA~R imgsS"Y82 JaDug /pqz72ㄜvdQCوiQ`PX З,W\#A1hEQ::N0ʁYm1GyjAﵿmLB/8o'qf' Lr̩F0p+g^'. $t̒i:uZ9LP9s>%|Piu 7YQlD" d=wۺY:yP92f鲈#"/LPl3hU jXyKuEVO?e_+eU+0Vd`//dY"*3VT bq$Gd/216fsMpSz%t; 2 YWcC}_%(ƛ(@U-8+'n i|$& [v$4i J d;g=eH`s͉4+[COB' c" c*k3IĻj _ LJoH  I^ƭ0}5DCV9?,B;({Z4PvϏ{R{ 0(%0䒝c$HC`t16{8ʸ a LP9[o L&&G*=kgqRͬ0d^/^YS(4Zv߰Y6E6c%=Xt?+P^ѸDe,UT!<:òީ veWx2@46l<)W"a Lou A]D)X. Ur^GdR@U<`$46oXD|-:⻆M{eXܿ\^1֦,ciDYtDkG}p@є@} wH=ؖ|O>Lu i6zJ~wh!'ܐť֎b20Ysh^pgZs^h8afƯUTmyMUSȄ*Le=gJ<hdB^t ߮SW[{ۯmao  "G{Z^ys( CFgR^?Xq[e9 Ո'WBsqB)VnS>tC[J%[{@#=)N`/:1CFH4B;Z0yU6.rC,Lg  Mp[?= CC g2h5*I0<.A)iU4HC#SAu+EBV6wh k&7cz"}DHv-*fp$!I<Ϸ|*y _*:<L.Z[]yXD];(ʼ9|LF4CG7)/Wt9OF&6Fq݃]ΰs+܈$' _n#݀9UBOQ% oxQ7o 7귘)"4 E\K-|l2Эȱu}(@6yj|~bmOzMs[}zn7'- x< 9EKl WǺEl]Aې_ ח:lIpPE$rڞgeּ;vCud Xus,n5-Kb!Vg&896@:d6?,֨٪!|V%;v][Z6\1 8Hjz:4&AW{s PӘZ\6KX_ QP.dvJéYf'Wrh򲭉x^:8i3̳8RD\sryl x%*Ks҇Mp%W=MrF0-ˮ]6TgLРL`( n] o |HwOYCWԣj?N¶10zN=kSjSHBHM_LS:K|CЛ Bmrl)1I[4-uUQlI]ާLsݍkW9)ʙ

fg0Rz|Vnb 04p$t[vyC9iqW CT$/_vZŸ:P64lT/F:0uy>w>o/"(3`BfoUT.I˗>x)??*a-'$qY8em >b(ݔ_% >vb B#1Z& }Hh`l`׽w'ܡ.Y"6B$@x'h>˘Cz8d+bnKtp #*>FJ]~lC$ߔw=:iiMeZtL®3i,CK"m+Z::{=9bTd+[[2V[U-P'49X f~G@ĕZj0Y:%2qJ6B]nR}gk2V˅ptj+:>/V?uЊ$%7")p2Ƀ\cGߪ?|OunA滿6[ocz6 +VT;d0R BPh\>ݠ1)ߟpBec,^hqDy=X7;˨+V)ݪQ3 2WSZ&{w,,`3Ay7q-i =BMhܧYn  Rɞ[62hUb|h&=_tE? bɑNe` `?BW;+0X͊li;cH}bqi!s ^{#PEGOpHbz K3|̛`T>u雔0+]yXn$ZC/=GLn#A#; `o|/k;JQA.;ߏa#mEc p/y;_~Yb̏,׉]՛ `M0\DP Sm1l&?cDV ڦO=$e)3f–R.߳; ־T(v%E~k5Xy ' 7b@b :?ч*^ibrȊ-*}%oWOg,G`4HTPSjaZyL^J"":Nj*]Yҏl>ԃ4=8K Ս]4e<'3t?K@&ƙa=uh|Z5YB .6["XU.Aη=ӯ@#^ A'+\p$|JV,n@5O%Z"vĞ)*iW\B ׋w+5ۭP1VvoRևGk{EC)T+(xa*.d'=/F&fxU[2eNܚr=[=5թ82*Eb7o > %\O3Ko.!PPAnEY5JJ-7|892|s3 oU\F[:Dcd9S6p#MpN!|U+̒D]xn0 },{¤ O+y鏯uʟ{by51tþ*o }INovE`{5]USN* l7vWKwy$ oQKխ5 9W^" h/L)HN~='Cs5Gע4vͤMaSun@TPśՊ 4&Uѱ%TW8 + Tl$}eҍDFܹ &stQ{[`/NհKZ I݅~ױߍަ yv}qCl(i~x݁̇x<41$7D  )RLL,!jj ~9-r(+?5 ޛ`Q诵իC $.WU"?rQXXߞCkt3U;!{7$s*Rn O]@9cdcW|^ڇ.0YuY#,=b̪9;ԞihmrU4DnB1G+ [ ?vG%@ Vi9ܤ|+r/ ?f8{kXcrR* eΞ7 G aA8o'KBW-UlL+)=(s$m~̉bFuCu&YdBCNJ2yW)t06 )We8Y ֙TV~3(mb5{Kڼ6H\Eo6N$!=W,~٫E-(2KǐKV]fe_UDg^d }%OD̟hQ@AYJf~#|NЏ\gxX#eNhI:|9W:Jʁ17~^g[΢?IvTX4e &V0Pݕ }:]ypy2V[yك7T-:Irgzk#.42Er ]a[37-D&><=fql2p7V';t9ÑS;} NO/.to,dzZn8_ɣ2㬵;\l(A7"Dn}:1q{ˢ0C8_{^yB(<Xe͵#l9Dr p"|dLK~.[Ʉ~ER#'a嬗h[ǪEt*`W/ i#6L!w 4BԲ ]DLr]w!-Jz+?{b &QI2ʸs9ap-UiWщ-_:14Ma>uy"L>id .V:~_'3G<yZ"=l?7z6ӷ(f\6蟟O:b25Z0ܔQC.@)㏛ž}ν#whNlbE8MΠR(CJRե' D!DAoړ0nN;iշJAydtmɔq1XTïw3=abEɓiz|.x䧢!T|7F oઉWɴ@me݅Qq #rPU!0p&݀41i>kZ:cOOedE3eN- Ӥ^ qZz7ǩ{լXEr}'CU!|U?"K!8H33[ BCmnczĘ&c,bSls~HtBs環UoMCLsR9wNVTTd}2_X,K uFaq쎢[u3W.Cb/>O&b) ]@EGE)lr|Ge(A~!e#b ~P_Tk{\Yp㫅KM+:wڹw)ؼж/J9b</ٹ(JDC߸OOr7q ؙ )]B]$oI%4TD,诽AXkIvlrc$9:u]l# |g,6 5|f[K;5egnîzO- &׫hNcOK B| &=E%⁛a?t(0v# {j&OJq[_3t/-5'ၮ-BJI5 Tj7v.m\ Gjq:;LT>DLqY y9*\;Ԟ{uRK?K [k25Ck9}/kLj;eagj] @aM-ȣLG=ʋbc_< j*n0TQ߸jo`IXqE mHUeא͓QMC#0*0pQ;Z<_hj?8V$_*`Rs18F {M'J/B;ӭ( |e'O1rMEz{ΚprU% %0U[K~v'8t$o<6k۲UBU;ԻEctt9a3Y Ad)uÌɴ{pM$w%b²CD I=v{Lo(, nYV[rijd[2lVqQmb( 3?D/^;9A9"<8VBII-` Ⰰ&3cclF @d*2΅0pE%ϫ5 kр599Q/bDޘAJ-x4<[RWI $:h?YQgBYm_^]=LJ14Է}МH:hn#@.o}XQ}¶tF~$B 82"G]F']Ĺt2bBW_ ܭ|cB09PeZ Tc)Ka~vPېLwՑ%('eGѠ-4orv K܀ I·o֥X a91+k>۝]AڧX]G'р? Lnd  JAIBwJc,=s<յ0`{yqo *M{>d- !dsM"m! ֹqij=Ղr+݃wtuEZ*؃/~Qda Q)Ugc,L g#vXȇ l }Z9?dm&z94]xIŭ䒇?og8rts5zh'y 6 Ite9Œ : 5‹Z=RYDvoIl`WH(> NL?X:5z;U;( SF0T~ET$wWd])AOo5!WM,"q@O͞Ԏ0ii2 wNc:F暚._^G8f'CtKu B yD5mQTWZgsgds Kj:*]Q }u/#/vpĵ)6Sj)2R2mW`MbLϨ:R,o;dHHp+qlſ` IhRV0a$u\IF~$BU{)9]t8V*T(*jv-suPMhm?xukoя;$8cAC5͕VμtSz-#™EA4GcF;W@ZF~U9ѯB IQ/b2L[^_qf*9/gY9{ BĆ7{\tbj@IOWUOTK%3V) .%n["~NC~ -\$92!~)lH}&Cex<&M;t'UƏ4$5B}OAM$7 \x-~Swz{pU4l؊̻ 5lWAǑLtP=b_q I7x6m"%ꟸ= ohаѺ>榮=HlyT-DFv7k`~'Lxe/h%kisL=RDX#8٥!tNqDž$u3(19ԌiCaDv#a"wRd~FllBd0ɘd[6Xwh(=i%5Nߝ_TujqcMhZ =mL}eA9¤/{;@Zp##'JnSIS [<<9K5az{]?"!ruHrUVU<8KdYC+:ӱ7z@rPH36^kކKwT'^θ'{êFE6Tx ަuT4>P>I|`' p s{PY4Kexu`#U8W+ד)-?h_l6xB|Zm,яCfn]{QK#ME{e~泓 @q<(}]9eȩ '!+ԁ$ۃͱHԗ(0wWc*Ϫ fYFVE!Q)Fttߒ#gv3GgAD>&ڦ~v4YB8mF`Ol}(.դ=,J͘n)/y!̗H/@labE|8/R26|LĎKpS -W}fW}I51 1Y YDN!C]-zN器(+eIOjO\[ꆫŜ)";^BiX#Ԑij~S@1 l*ķ`+hӣ5Fw; L8G,$&jaѹ<˓ /]b7:\[' ŋV?^ı~ m>eW02Ź\2˸~ dwJ༃#jOHn4x/WT︲bP$D ~UO ˽Q~5LJ-Ć VwªPfl`^ ?_Xo.͔ra-ӿT8)sfdi,dw%){]2^Yj0oqOT+JzOp!HV]`; ߏDj@V[hG(R&Z$-{+O6W0JURΓԨ&I(^۠fsKA2Ǿ`ϕ][ݾIqR`?^ŀkCo>lqw~J*7R4wFug[[۪T`aa$#|um< i snb2V|`:^rQ3g{=|Z*yJ{ăl@f,cYlIJtlUKNjO<|yͤ$직G옕A>K]I 7'\W[+{$Q8i{ƪzF.r VU:84jK<9l/U ͊2;SG,;u M^T[Ut|UE۲/3,{Zٝښu%$D%UaA`c xjiF'{%:ZM 66FwT:6F+$wUbTu҂P71+%W{g(hIy[ (@8*? N܌󺷱QFa0br}7yGW]| R@H=cZi+3FNMa9EuAp?wݐ檜T#wG_E˪f܇7B=/l+5tri婲Q<^O#DuqkN 7h2 G&%a_N2.!DadjاVGV/^ΰcG*BV!\gђ޶Xaꃏv$ewK=>,NeX MZݣ{EC24Zp턥~ӑs źn][L,`R? TTML#=>phc 9(|4Ӛi'yu-k`v0Y;s#L]4 +JAC"nJ }h0(lQk5 W圚F;".`m l;=msMfdotC0}yluY'%Rcd- >Zf5Z`6;pq{)j94PCŌ#\Z뎟  E~<^1lM#Enw)T4ES Ҭz ^7 pUnvKk[?0{qFG+Ԡd4C:oY룍PGI߃}@iLюXn0;bn)l6J#<8e\)/p/AebdFD sc 8TWD# Y:Q\v5IĄ aKj [LތzH8$V㟦 ".l-yEL}q-C,#f;i;F.}f@6j *ͶlYlCc1X2xO݃VtesB}HughգY[Se(&9,z.qҁK':{LX 7B+&Aogt}ymx'_g>.J֘l}{f`aS1&q2g!,ŠUڜhI/yh~[ ˪ϝN /}B_`fK୸Z榈KA?([;xeo~*eyVR<}Ƕ8uI)$7%Q+, {7eQҒH]!)JDpy8ss dǁ'<< t)>شz(K"fׯyѶ ɾ%8=p>aJcE[FvSx9~xYi>LSHKTk8k^!ʏ%=U`2v.u=cOʺEĩkg`Z[ٚ9ڕh9F22u~5=W"+IhPLF8<MX ( л(uc嵒Ds*S#COs7~tO-E0Eв@X\aT:ua( "F J:t!T S1_NrQ'G}o: ұeaf&ˌt{YC͖J^m;ܤIyU1ɺ+M?6@?3lB[fY> Xki= m-XrygrFsH'mHlYh-4+)ucoo9-jd@ HCR_`V3l6˛ZPd 1W[:ͻ9RLTޚ !CoT_WTHWtJt '9g3sUJ8GJ8+Bd\+]XK;w}i<@r7ᡐܢܖ/K9f/8!N߃X:f'9g|шQ]`t\V },<|ylHd3s?SկeOhnw6Ep bZ{s g@JT!,\JR 95GEZLF__~QYsl^4+]]1GlXMK |?D#G^7.֎*0tG[a-KGWqmTeFͪX}r.1M`نg-4e'rZ葮>aZ;R7PXcS5nz yT-+^csd2S[57n[FA|rMKC%؃ZHQ/3UP)aHIPu@j%р VIf^j(V < .?}ru l7i<ɻpn3[{J;ŝYUYJdxcS.Z ڝ.>uQ3q$)72 KjjeR-5Qj SHde*g,ֆv`w>itF,; `G^AlewN齧w\uv퍒60ڕ #oCy;s[Kiׇ*le)uK(+m }KF Dol7MUL_2"u*q{&O]o^_"K401* 7"28eޝ:ZG4eoh_~Zk%SS&QαF`=M4z t2CrS%_?HJ i3 {E{ y$T)Ѫޤbn =+'W9,gSmMyc/[{GV)Z+M=B!W֛[ʕ`.^_r3yk/ 8ml}v0D>EczI'T"Qbu7F8y4zXhq89VBt-6),zDjNՃaBwfgA&.Z*d=Yjd4p:7 )%ѓE@lei< I,f*_`ecVz-lIܴ{+B~ި]_M}uϺdybl,_;V}p1·q'izw e8٫Ud3xcQR:x^ :0`y6!ً}TXh1*j:B~8/-Y #$#,#;hXRfd_c@?ֽ:P"^mnCw3~ *{Tk̾;wU"KN4 k,Eϩ'ka-6H<&Vc1>83٨T{ؽchMʊBZfh|ƺ^UhpDbXͬr e0VPdbjBe"S; +0dEI¿񕴂 dvgBìOR|$%r-̯뛗 .-WNg ,t6 ~56M ڹʗr4DNGS5D=8 h'`psBއml(@I:+{3"~.9.J[@ Fi_h[?]dҌ[ wbWzqi~}Kbsx҄pJO*ddTGA4b_q%֧/,yErj>Ԯ_|{e1Qr&6;HmxpLnYY>>k5lk_D.^܇V ßT67M*9odP|Iitя*S#/xl@xì:TMMFj]{ p\-ؓ+Āh~Vݏ_LM [I銑shd|ug> iRM9l&5SNu~eNcf7=*0H!bɔz,BNöѠ2r?wRk9A+`)ߣFq{X}s,"g^V..e&?P*྆ˆ,ڠp>g%ZԱV7c2G&iQ*?%q{qkbP`2;ʟ th>F=wҟk;h)]BҋxX`$jeúFAÑy5r*edC?RxqRp dEtA#ڭB`KbG-c)IiNN'-hK ,&r% Z<ǪLAĊޑCN>0+OF,o XQ$W~' ❃F1]֎aՔuvKAEH1AsڠTe.! h̀Y"vŇikzjP>A̹:\{lKd֕,Z$lZOYEqg(F6aj";7Ab % t4u۔*Ss"!zQē+,%^// FLas<'lCw"Ma59 llK.9QvLj{ZS݆=ص;q:o7I&^G52Xr33u+Bh"hˆiG8G9whl0-8m/ҕOL傤38ښf$D㱀7 "X-F6|h5^{'pOO%KFƯac*zcra }Y"@EQX߽;p 8Y J딂v]rͳ-ˤ32 (KŹ@/-0zȓdE;*(M@">Ƣ$]u] g7kML]6q织 L"ܒK *' XBo"5!a]̎;PKM1=aOY .쟢l;侺uCs#uCyi ZLaU&?$IGp-*"ӎa>(pH(/"eZTb{Cz0K3?[%R5U,Ɨ64UH3,׬My~b,ͽ_ H|;0Soͅ!G`a`Pm%>&oAWA ءg|Uty s5Cf7ƣ-{7 Yrf<Ɔzh7J?{;ْ֕MO۵ #LJޚԇ1nIJ\ŬuUdwϜ:PY撍9N;;k^yF+UZdz]f:>5}Bcd25BMi an0DyxtwA8"8'7{XA#Sn?ʧJڏ%fd@&ìpU螦!|[Ŕh.GkZt AxJMV7  nPb c: \[2O(:T X8bem]:h(.ӭgkCƭV: ,[ $s\U`?mbIN<O8r?lg-Z5 o"K6J@S|I23،ªɧRs用܇&NP.kb"y`TrVBXX[ ,;=+|1SBd<9R푺 ݯt٪+Z'!!M}j%ϊIOt O"~r_Jv/d8pF^KŦFJ2dPc5ő[,%Fl$YU'Wٛ!C՝Tp^`|y{5țJfMA!7(BWdAl}m. $&%FD"V}g f !AwҹZH902ěY gLKwB~53s (C1|Y\ v!~gJaұl0̑2 XqV?g*kdP'w*#G[Qi.x8ZHh|_WdY{0K-lpa (1/8*wKJԒ vs7=lm:Kss!?m8YO?QX_w0x"u|h$Yxi;Jp5I|ƿ2eݑ;=wmGZ0'a[voh_BB?`KI>Jjܽ6{EP؀= @ܮbPgH#H3 B|徐=osN04ܗݔ|=x 'HQ㋉> -M  jOM>㷘4}J\>͌L:S)`9XCxizW9L9-s P"p,dۅҏJ= :ĽQe&!?~C^wW88YySTȱ =1m sugdL\YmEb5\rH$Dy'ެE`,P婟M_98+4OBnQ}k'a^YG?) ݻrb%g܆=ϠZ2,JG)T E:v~=$%Ki ?@07\@o%Bvg~[$۪Ffmnu(@beKiPR-NS4q[|.$x[ʇPpd=dQq*{}uugh[3ðK{X5IC3*J_M,"5hˬ8 BZy)Џ;"N 6=Om_n0m"Z㡱qHLO5uTE>UzFEs֜;M$\05c?cDtdנiCq͒,nGUq ̮JFŜk`bD;$ 0G"X7j9fo,<PMs|_N݉=p֯<'nmF\&R< hC}7;x0x}:Z7A']SiFŊ$ Rt]mָ uծ6#$w2إ?FR#7 q'm)R&ѣ Bi%,P 3Q|IuZpiVgqkogA=tϡ鎽@'O ,3{]=AN 8 Lgeٍ~Sx$X}jА8 w(9$PPd͹!Aօ-@CiSxuN^gߚrp.ZcjYʒyvxU"4 חsOLGՇHI9S5!J,Zi̥Ƣ?MU>~j&[%p6_8i HL!kI>9PgCCtAfTkxySE吵ov<ϵ_n;kIvm|V i^@ʏN2XGZoB?UMS 4B"\Ow$plRd[+A ẼzKuI5VXarG&Q E E X&!ۯV瀅0#\"ފ4a+Z)D3Wl{5 YYׅ#҆sBAXk{.*H^%E j1&"Yv џI+6^jI1{]r :h1 }E[f=G3fM6 /Y F:6Uk/)ie#4 xLn>٠S4q݊ NE@KU,f$R+r+4zi T45hWT:%P_ufA.Nk)Wju(F=f:  תQPaHq.wf[rIqۡ'2ZC0%*9fKmyYu¥rA $62 Լ3PYogH(\UcI{in|ҩIWKL[lBBGyy ԇHapNgCnD#ʶdtRi'1{^S5H1:T.{ֱ1ĆFݽ|hL Z%Ƹҿ. ]lS1˽+6  9o@Ei?9uk(r1X&p$AaB螦B Oep\u1tT4,n8 <qp:72 ; {9kri& >w߿CY:BT.Pׁh+syӜbl9ȏq+&S_ Wv$x矫LaD-Qْ4Ӻ? f'u6o;Yf6Oi\Vd2gg'}!48 ԷJI&#W,M W @7}nZA5Ǜx:;g15Lk8jvVXUʅֺjQ mswn;FjtY{2St OWWr>k[pn g`BS 'P킖2~W RT?B "JYcM0HI4V_h֝[p*@W&X@7rٙ['vTA mЖ.F6__ǜ'èDCDbK8]:ӢD,!YKR N*CQyӰfrRGxP7ㅯOlR޽yf 0'>٬ @qٔW?eHCz::w+,9 A f˲93TZyKpӱ)RsPyz|fؽ#劝MFͩ~Ff:rs lOfⵒ6sqja3 ߠD0Fp\vK(3%'v*pܕk 2Cz}Y}ZrrehusC 5ĦY(L}a Mܴ4;r1{:xwm̯?׆MZ4o@nlW yĘ:ɇ+iu&g>k[7Pਥ8Լ^pU^4jϹ:\Z!pY𥳐WDdfq>f=EOv2VѪ69eS p۶r9yvPvU}U>0-KؙryRR.$-*$,!]m٫ Ra #Y2wbuU-W|qĠ%B.|^=N*~T`@夿d9K|"VܦP5-l8eW Hp5.+S, LuG&͑Q13g->Ϲ=x6 t(p FۨMg$KQ|1 R20b^RVG+fяuYɝ*GH1ʟaf꠰eT贞I]'t\WB(+&M{.# n-ܩIa8dT ~!1{8mj7QfK3ŘlԊ_OofM!V.$Zc/(1hj1|Qq otSVhTM%g' {ZR}aɶQ6)&L@>46' #erR Yyjg΃*f^<Ъ 2'@M^9mwiNY3Bc]){p0ox]4(O? y 3kC2}Wʘ+bC7#Y:;Rn32'+3>Qc d|.(NY`m2ѥ3F/bJTA3=>N2LT$^J +ݻ:$P4+YneMf%lvS RTIdaWOޘQIC\_8Q]W8jMw }bgٵvޔB٣z ryfG:'D7v\ ݶ\*t"_۰=o5Cg=`vE(8BqZ;e)Wo6ȍ܈ƚqSVke(X;`cԈ,Z;1%Djj 4f2 2LÛꙝaF p?ƗJ^GEmAy%p-t0l.uuToThH™VEJ,l ䷱7!9h_7_G^1*=X}W"e'nS kPolZ15ڳmA͒.F!i۵\uoc4i58};] U`:1SԶsQ3Nx1biڍsvϵt$Iď/lRK>ÿ 'TY~]]k81W5o 0CEWuH[q}&=Q~mچo7h.F!5{\|`N;F&t[Y\jɲ! ߧCR_jOY>3!S]}$ m"WlE![,Ң)Mw>U%M>V6=f )mT)K:<ݢ? Kc0>9@}e1/nqo8'9l87g0LK:[XZ碽E :X{/"|7r_n󦂄L Kϖ$)_jct{M=m&2*_*F{sBHG Z3 DxRo\LUSq"_.#y`)X$gzS\xi=^sjW^wj@R2G*4J>fF 5J:!z.a({vϓSi0ӈl${ͥW5X^ߍ٤V(ZZ`K%䮘!_Vvj4q~~Ѽə>;OtL"h 1h(q6~" <ͱ <L{Ȅ8' +[w?O/v2`cmFp#7-@OqV 80j([Anc"FYpR$Z5w-fihI9bYxsL\HZ, }֫R  d3UQyU*l~2"_q{Oиɷ.5r:TI,Tu塱3]ŁLT)W_lg b9ĩd8>ADo#+3PVf¸K]#BYf+ VomGL&ְ'~Z1 GbOUv< 8HtW\\Cc}9f GBUA׉.SXgT&5b@$q"(,Dt{+)yL^| ZfzLqakOq"hh/-eFy 쑔y.T.J2^d8c; .(VBU=^ai\OT cPhv:&Klc̒ -KFKVS9uxlU$U Gm)>@Eּ1UZl| Av77$z{g'F ,uRK]!2&/w:Q;}-a@'5v$MT,LT2Rơ;I'z@!z/n'}2C70eP *\k}R[p (K嫲`oPBo/fknO lñV Vu4d_?WpPPA@x V@?[CGo.F! f""OBU{H#Wi~\^e.7x"ή1~T*H)}@\"&' ˪ċ >#kںMl~+ənI:>Ù$;6ލ?պKOYS~A:TykڜT6ז氏]_ \GxWz?_4inaPDVPWAA95"dvZ ٴpШ%R]ZE) A2~T{`T\2N+A~c#;@0h)7]`/THj %ϝ[Gv"HqT6\Aе~pvnB֐둴qZpEtK=YI)10)U.k\} wǠ [K̴]YHD\Tuݱ:k3\ɏ٤C4W5Nsn Jt?eu 69~~Spr#%4֣$:ktۦOIA04+c];I>Xep"ٝ 99Qyp˦E4C?Us,Z _>v$:a$\[ &-vck jSx_rw?__+@ǎ\r5 +keEe>Z翢^0đgSpo4čO6u]>8ŵɳL—^5Xpyb!iKO@|)&2`_kW"g舦),x~iOdH>MMMRߎn2 , .]Iu(/N_Lh*ZLg^X)$hN:[2u-EqH\١­塐Ymoc 0L@QB, AސLlslI߬ WS/1ر *M39!*Qy HM#yt0deMj* |+^j>&:=fi[V3JsݫdhW9bg(a1ls8(2)'a6Y}$,L&<XTJsL2q7+/o"l?:Oai$xw_=貝}LA(ma}.Ladmv/|[u倨f\ҏmWF&lS ":XǼ;wO+P[!#Bux?)X234խЙmEQ+]ۈN_g,, 9TsS=r'7jPa5A.{Dι_Nh⪆gtPX$95z`B7i`0ʋ͹mO4]y]2ݭE(]TdAmP8?"p5}3l߽X>N'SwO&X}sB6g&suB`2'54)F6̮sZIrt?bXys8DRItun$l6g_-^7\71GZ* 4v@S q ]M~5Q'?~`{1]3;#ZwI=*([P!VH_IN|1[`:zYy xMi៻wO*9܃ڏMEnN,LROIVԝyPst-i"~`V͉Lι Il(ۤ5X&M˵˚zzBEF,zUhYmbsӌ3Wnl{F+PtFXӴ1:QNbv˛4 aZeT1y|:q*Q{OwIkY}U U;Jg2 )́ tW)TqPHmX;u4O]@z̒15:#yR:36Dh$jNF娤Q{(ixAy0 ©5s8[Bp>Y]uuP`@85ʷ;Qpu߷/a^&Єs8Pg`#lJ]uږKOyeRV$£v &4ytKVV*m`YwՕs@K'gJy7J 2Ud2F"9d~`bADA3ʰ>/U|*4ңP4w ҊN8ր)LLM't[UmkXYk]1 av,Na"5pW EP }a˃,5Bz\R a!qm^fVȋN NX9]qb3)3_mdY(BOW%S43\nYg^WUaB&Mp J.MSxy%O*2<@}sg9"s[XpϜ=橀6sͮ1*MrEDקom:&w,i(Ku[ȥ;;Yq+"M5{EUZ~tjT b gIMSC1{vi>8"1bU^]+BY<t"OЙP{n+q"I|:P sDeb CG#9To7lZoϡyBL=pf_?ɛW?Y.G[d w`%= yr6îFsPX%e'Տ0%,ƣƳ"}#0Nc-x-a"C,<}D.iW섄| Xls>: v-ۤ8f ލ6L/};ctSOTNMW񴶥N99dfv-uD֧c1X,zIXweN4uaoaKr}5ՃJbl̡{0+G|fṔXM\5"YZ[MmJ "(N\>>玊D?Z`cB Q-Eٟk BZ[e185k~2{2 DɎIޡq χFݢ1if[X"U9JKO=ˀB=mmqZ ~ `v>B† c&*TW_Q| Xryeqdv&JӰŵurB\LÖ Fv_x,s6@rnzf/l/a~J9EVBxʺ_huz:.1ɸ1 flap~SرxzUӑ(:v];[eK-7[U%va9\@[_gŎƤDEdqHP_g9f VuZQymMap %Fh:B 㣽߶2yÄG+]L7{D>'۽4,dA1A.vrXlpӡď6o)LUዊxgZmF!뫏xu7^s{OS`Rhzh68$fj3[>&  kĎcg|",:faIl۠TNTю3t O9(,M:()+V-b9^4~y<IN<犌Z*v56A] x##ssHXA/rYwywYy|ju20;rd/ J"4qo G>/#(EV7g6jAFa/_ޜvnߡ e<_fs_)jnN  ;m9OPYhh)bT6:ʧl9{Ny>mXVk裕Ԓ" yi XҜC62_`•ߠ]*H+FlJT!,Qv  * fh+uX_ሧn-P/>c?-!~W)ĸ镋aOX>Ѱ.~Ak)j$9Ri"jBU̧dW5hԟS eR Km㪿rDJ0_wsI .c]U>`(gmv"2P82S'V&9܄k!eHNk˽]sg^Mp^FMUThEzjݾ5.3bgc᫬vFls us,}cJ儕P2iON[:šߒ)V Zwg f(ccEU3?zabOX3ZYgZc},*,S7#|[uIMRF9&ZKٻd}{FBFJ,SGfA /_Hla(|\VjQ(Y5q caÞYX밃ӄw#k]iJ[Z KH6LB!5Z&/Kf=dRh8$ Ŝ[FC;Bg,6 + q>y;tµe`ׂdz$D춪b~s&/""lNg䄕AhA{A{ɥçݲnu@jo:ȷZ `%h'$88œ21)F@8r ךP-oDM^$d임à^fa\`_ۺ< 6-\4HTNRȭq[3JS4ۼs}M8ˍLtwNpe~Sib(jO_kxT` ݜKSATQGT|MCCЁ:JHEyzK-dd7 %? >lΰԟyaTU51_u^ BЋ-":. ^h8=.7։J*kOO:0#p]+7|izC-d'eX!-EFao-:VUHLg> 2+x@ЫGJlF%]@,yh:T&[4#"doOғp3U8r㜛ZPaP2f9 %U^ B &w馏P]L" j",;U_L.sZJy)9 5y|z]R4"%)zw -&fT8*=;ouz}n)x4b4"~J$u ߳wԱ>M0TPtT޺ kSEnٻ0GHKXaC80,zg*Nr2mTت,AN/*<82f_HNBNHJˏiB*}@9K۸\YEj%KWR_љ)[7>;a`]p^M`!6 i{?ml1rj2K= mo?K[T8(tȄ&$Ekya9FvOu4C ;,}#85z>" 1ÿy͜:ޑ$U\;tRX(6kbqČq湴μlBO;-D-5xW8a˔ GDV/S̓7PN-P DUGI()N;.$pTnL n!F?alIh)+k[1qϺ?ƞ0)6گPĒ/1T#Cg#d1DX+<N7哷+vБ}kh ID:l3oJQWp5+$wR2wB}%AL-aoFZS|M3yj$+%*;혠*eUA'D>b}C"$TKKT]TQPG* 2@АGm-* @?*U+G`Ρq|9|qr y-G_6wT樥E(0mGP ?(ϑc`C;m69lI{|P!dG }m@!_f `5&kWl ) fYSDpI.^A (e4,\O@FCrM5pbr FVR2)( WߠQO4 MN"V&xfLr=B `kNRQ^g'/@\?j%4`M5EKgpr+5bPD瓻&vɀJu3rK72`sjXh*;[)xЅ5*ivP NS3MG^I+A)v<+rG78v8H޲eTR19x !\NcŅ{ e|lp5 ;U6rgsT]/*ip\TF& (@Aٝ)EosmBQ % и Fz}ٔ] (.ZAb O.yl։4IQġX%gHoL#@Au$IfL#4*-=K-w)[?5t62ˆ>k6v@ >?A;J5("j1G(sÎ2Z*JARDt { ?C}{Zq>mw`;-?ܾ-A.uq%Sœeܮ5$p6j2"%WƢ)∝F9 E41vC (9!t dyfZDPHT-f?e r(KG!oT ^ӝ;A*DDCDV2r{~"F)in8+3. {pBOolv?DZa*׉]#};#K#bG9D<2U<|3_d,:tD:שmXwzPUQȀU(~(Yk˒cDVqD"/KJ#F솜Y:ó-9 o G=N 5ݷ8|;:|r>"]Fv ?O~=,;nh^(x?YPbKCHavy`@]d?mW q8F?xԲsL=~&2 dY94g^}Ja8|/TyɿRY ">!: y:LzkF]sBHBw 5qb/n &OCKk%ujs7}U祽?hBD? 䔐ET+Uc8=6^dy_t>I7D#&^ݨ C$ P_GgHa9}͍]5Kev;H4J̙|BτG 'IDS:C5%y^lQsB0l* p9d@j^0xÞP0kJI2HT?b" vX.3,x' }1^˒ET*gj JEr:sPD΀`L;D+W8wS +I{< Y;U+#xbJnĪ.2e*us RZ7[KgT<]mB!tVٓqmc64{FWwl^CI" {bf%uW:9kxAKrM=@ 9`F+Rˈ ]ⓂA2T$:/!Sw]*fRB09NT^^J[+*O&J|%"]E5I֙]smJQ!8lDc-?܇ 6 2'ι4ƝﶣT$IYoB+ܘ,z@vs+cn-ӱZUz—YOQmT6ϭ:x1kk{6,dMÊGK5ω(): ,q˹9[TZn~FƯ \nR-j6Cw셪mzFbl|mȮ?W!8uNL &Œ`ʾm_4/H\Us5Sj: AQ]UB4LTyxJ&f$Ehbd(yo$USᖙ^ |Bb=\nXQ׽y(J祐U}+p[ v :B I }[_k3D7sб^lL ñ\ݮUk 7=ҰDJ~T^X6|j8Pj{5:Ums)oo#7*Uڿqw0ߟYy2G(;H\腚 J y|عm٦_;;M}z#"T{]=)/tt{x^w[pEqeml\3.mʖ/4Ȣ@6bhIG%w_#qU2+ZޞrEH w*#j{SC$AcyKjl|z3+h7k85&=@$4Z)n ?C:cyU9pҜLJm տ6}7 imr$5L;-Т54h(T= ;ZLpdIٞ ZItwS gh&%V}wD3MpY(L-| rpf]jPįF:i\SDfÇ^L{"HN$NՔ=OjpxK{N%ZVYr^D~=~ o4yJ+FekilДy*nqh4sT.3a#"nїR,43pre!wj(IS!1eEQ3mEX1+Y&lG8L '(@ ?a)B.ړ|yIGv)HWl~D!:]jQ[dkI9E /KJh8!,J%mʵ (:mI((6un ]O^o]($dA?ӛqH~M&U[0#pv*~3!{c⺴mQZl?k?`{ gCO{U63#T0a(%n}|q)Nq6g JYgoMC3paQC4vdaMp3hSyP%ENy>-n*Q(x+AC  ,= =f& .GV'lbVN[ tBĽJSE`ih7t)!j$mQV r;BODԟ78 cZʏLNvznq"da'$ظ ⽷pO80"hf(jH{lNnk7M.Q9*Fr|xUMFb4K-H@NeIg!$}ai&wYWGL -4;0 JC+#SLJs2zNIĎ.R)r#YYLJF$BY+CTĦ g,+jbڅȆF5YِAںUϷj(.siKE)w=]ځ Rⳇ ֦VZc\oKlN>iS.\^c) `♽ȓ WsP))ftBZ̔Zb$( 14łBF@ 4KW-YKڣS Lwx4mZ1bB*vrģ> FzHʡ'In3cb#>b nsՑ*54҃_9 z]mxĬ,3-5\ b.æ˗UCΛP2VdNRSSwoWOS~]3 :7PF,:^M1ވ %kygwe^fhJQ'9%%9O)"cqtzlJ8-JOR`0ԩu| =pMw湪n⪱O7,&EDi1]1ZC>ٱ> P)YU*}-Ezk-ճ6m-JyE fZɎG,dMsQm)2%݌)f08k\wZ陞Z>'h>7! 78 L7pPT  h t?ǯU jM u*7yC^EM0ķki\OiW00zFms[N|`F#<ܙU[A p{Vy 8$UY0Ј>0YrjIWa,.p`D8T)Z+e2+B\r F8/NBu^"Кc~)b۩q]f} +!;_#gg -ܗ R|1cwK3e Eqa_|E,4N/ɈW`1/SviY8@L>Uf֋tvjMr%$ͥoADy(>^'&lЁ͡sA&+}n֮<"vռu8AJgǡϵH&<`4.p k"Q;h+5,g?k XsaAToQ!")+gVnG4V (yGswH"n Ao]ZtxuT!lS)ZLl̟%w[L-tFqƈ[(Cf۶;jGSX B,g|3 WL󰐒{w|A(Hj'sxu;}d 4gYqN!n kun°qjJK"f Ū+tvwUt:"w<4&ӊNEpV|$ث_v:k-Dq3iޯ@$Z @ap,Ɇ-y`44ycw"(NKeH0%Zëz,A99hDz;cGYZ;ltB*}4-X٣Z'S9Ce j,PXR3{xNc_(̅_Ǘ ڋNR~ dRO6A4.E5 )z3l,&˵MyʈJ6< CꖱC! %4^Cͣi m24VK'Jm$j`ҊK긤<{0L|6[y~X"L\oS9~K#_#7؏T$(Ǥڋ,ur(vc&.Gm]&="c&,7)-$|ɴJUK<"Nیl On1s+ܦoT0<zpNyi 7*L{7Qquw$޴B Rl##H7 )Oiʉ8YᖁҲګ^h[uK0LSn\JX9+I ^ ⭡ P:#[?+%0c(+6۰=5`1Zu"leLb cFyx-AL}MP0!bnѩI1#[A~yKK}3v!+`3?I& ?XuF+pJn n=! Biu@Xg>h}4q Sd&eؖڶ{ӌPcQ// &E-U#gE`3< p-JB?;n;ķ*| N8 n Ԯ3WMxSN$mˌ*R]lȑB ;jB}i#"X?ejHY.̖0Cq;pr@H,6Д7$P0zj:OZjD:P'>銔.u(,(^&c 82<-d:B]v2aQ(`lɩeVr؂V.AlpX?n*xQv,^U=Lhkmr+hI9(m,R-|Fal2O܏1,)CDxjSws31OEj6mۨ˜q \G?r~隫P}򵋹Uf"n_%(Jzr%㓓1)4)3 %$Cl2WxgZ(ͬ~<\$!Y@no$jpժǯJq2v@S[@HO Dv-ӭ>4>:\ [h[h@(K5j 3!&t,d ĭl']Gpb)萓X 4|Q G{nJ1ъl>;.%뢚D2`D w>qL˶lڲn+=E%rv\v_Xh{|3d|tDﴌA;YŵR"n`Pt=.@CTK39d>\dLCtdX?>ؙw1;t' ^CH5+ v%D[(MVJb8 ̾QrI\VK@"RAVHq{BxIS cFߞAڶN]qA(;XMtLkT煣Ju}R\ߦ:_TXM8Q`Y S ZKn^hU&U{ :zs5K#V2&[FRy~zpV1BFo (nbN{pnsDħ~=`{e_SH6wӨĸ?fA2iȋ޺?-d8+"۬Zyw%:wR.HR"ZЯ%"њo2 S` %My喘9cv^s Hf?.V 7zbρ!Ccp"^W:O/V􃿉壦 #TFWкH( ~8rQ0ѳG>=!_>/a :Od+acf4|Z8)>'4Zԥ#w[LH3 6 g:WEٍ2gWT(QGzɀ'=wWD45^j F+۟r[ŸW}A,0n-׋so`,{f%zLz! :p:hW8)zuYs^MEM J"-i,f^rVV.l* ~ PW xIj >ll(yzr\0;hbl1{i/ʗ?&t)$C҇Lݞo-Qxaz])BeB?v-쟜>J.i&Tݑ̥p"/`jXw/(\bR]@?4FgV2EV[|yTo/DWD2֛}- ěwm֪iVל܇٠!A3Vh!IzZV&Hs?ƍՌ3Tz}jFYmX_7Ъ7;'Oӆ 8rp+μ_Ɣ?d _PVx[dV :%S0 ! fO\KQ8XcFbQj#]-T9>AT 72/>~ ~Ph^FEҴE|g[ycS5.wljb -祌e?0dnK!Fۀ`k#x+-ܾm "rvAXrQ7flGQuƘ 4Rqd@3[s_az}x`tz E2U!'rؿ. !Εql0w$)Zfnq%pYϪL` GM=>NϘeEf;{j͋p0. /3%R;{h9L@>&>`SjZ;UO͜?Ы(Ѣ̷vLTﰮL="=:V#C1҃9Bglk/6NdTŹ$ ڀJED?rxpP%B8#l]ңMTk00jud¦V@()6 ]+ޒM`^*tkti߹oyǖ"Kc7ŵ,_C //m(V={9joe:R\ L^[Qf0b6syu4lK-og!!w^ɦȫ%F̈́6.}d@Ew-vEi m͢Ef׾Bo]s2+_iַ"f!9鿿2UÕ.>r%sk vwsۧRo\r%ngv03eQLUO^QhxϝkLӄ;*A_E҄kWsMؾ Os99πq YݶOZ\w#gYJ!8[2 a2ı%r^VLڵ?vSwC08E (W}71o/?_# IˢKN|RX*tQOpvUXv ' Y?Hys }ld).Tܞ3];XR hl`Ʈ/8PV*[ bGAHV5^5UE3 Wh] ASo6O+u_[hV*[Ad7;HuPˏ/a@[b0ŏ-}7Vޏ9M+tBoZEFtTJ`֮ <,F2fBcqjt㱐9]_?gh]`t"a95J xm4 }G*ɨ²`8ɚ;a z*o@\a _kxDlSFNzt|.0Buv9= ڿIP'gYj &0j!fuKL;Gng n"n,JJc#v1( 4hcD|שMo1xU YУB'h7i7a,{.W|p':,CɞNV>ԢNvoN%=kOw / ':U ;ͳ J$s{@;K6-i/RTòo]\H39ol]Ů#v{inhq8^ L tQvY&@]/rk8!h](&ז[p^վ04)vYwc͏Qbj{Ш,dO9Ѭ!1-5l~KF(_.~}wz;VΉRcAB+_K]d (@x]A-+R5rH25K372KI[1.UW53 b*Ŗ4pj/As#xt}dTP6o CX. n Aa-v]fv6*;)i4M-d'jmE~bqRyϡ:X.[iI9+TLxi0s;B ^DT{~#R_qA#%c #EdԵ9'Lp4Mw9-ABKs؝'ŒŐJh] nCڡK&\-\`(@L{t3]v2jz H_u7DY*5gWa*PbIXtp(Nh;)?^ay684 њFqM(&9p&jWUb,!*rDbG?=7E7L7+h4b%bIզ4{$@ٗ/"SCRw)$I!p]߄3tqb|CEE`Dw }znRp?T/q d}qy7'Hywe1 %x4RPSĪNU)i(hl(/:m~=9QǑPaRpw%)M%}!zV+ԚO=MJIBiue=xMkb-[:]ϵ0| iPk-uF%t-\Zr)g`VwB֖V=lRrap8ɐj]s.uPt|"@bRQ Ț^_(v0 =KYeBݛ} [+M4vV[y'6x@Dųaw(w잊|練8G#I;X A!DRqpr"ݽ2 4s$o|Y'!T(k"=ًϾUNV@"wʡ#=I'IL'ףKlSIK~Nf/'~ʞTg5 jN<=*BdˑPUUJ5f\>A wШ6E ^߳N1)@0?9lwB-߳'*; ufw\ 3{ͫ~zAoWFڒ Mxx)[HxG=t2DT}`'5 4 U5슔^Qȿ{;4+|[#i)QXh\A.'+Mο(}PȪ z#C4OfCZdu53ޤT(ĞIdt9$rbC[<ƼlA3GÄu>yPۙXWj󋧠{wl}gJ?}`) H%Q*7@p]Ĩ:UvR=ρF f1>m7_m8QnIUNTK(P5q+ʸFs[c7 tAu/֟mސugu)C`ԇoIIt3W3sf2]TBœ e)~;Z Z}ucX@ $c/veRŨ᤾NjӟV p&SH(7~\ʌvJc|£"3vmL lPz~3|QحA]^-ͅAU~wVs6@mT)#y-L4gE[y%M+L_t AxCd ɢ>0EC{føӂm?ra&>~y?ZC>IK :+w/Q\T-h|t><2F`Kx9i:|Wo]~4# 8 >$`?aFJHȰdД~YC)aiKa>yv_n[ '>C5#{o8&6PŢ0.P ?f uP9vXۂ"pJS^?Mw>}7 f6n IZ!ouMҷDѤ}&"7sFmh@⪦G=[v +"`쿋BAT$1[_^jm gSFmrCœ<7mv[B&<8/alqOM' 8dk7iNS_X5J6\5~z fq}9p `sgL8Ϝz̧t_ދՕ#x>w+Hq wq cQYl)zKfuhq)պ'5(h쀦AH?~zL- x TG^/B'DAom2_XFo%aد6K_1w\‘*;(=p HĈCc C1Lks\uv]C-5n60E x'xtKmײldΜ̷#phk\f?M|cUl󽜚}(?heB_?eښ0)V םU +ubhr_d0cx K/@NʀNょ#J(H6{@BIӴi,#(邊30TlIBe< Dl:j^~ĞQ6uh "%GeM%.ɗu3}+PeZh[UW D;?~s&L K.ei1l%v6e#kٹ 51[5`}?x "As.}VQ_mnOrf<;+Mkk$MbИ52JegF)Wڵ?`"hWgWԽI@VO差pjnǀg%nJQ2V䡈?iF"(K4V̌v˿sf'^%i /s̹|O锂 P Cᬞt3tBH,1ek5]NRŬA{q[.H?(}a0TYG/pbcQjuI=ݿ>@0UkFTBZ늴~.imߤdA8K2J;&-4- #w#NfQ{V`4EỎ$c&+"ͯm8WVܴ9?+dnn3OAJ[iS$+X<r ̻ѡ_Ghȋ\Mʈ#_|8X?C{ ugM:0Du,HDޯ )iEUۊ4IUf57,p F89 ~$,!-^>RqyD><$m+O@-c@'"q}`dVZ voT0fc|0۵uH&VspJRx Yd^Y$nyE[&C]p7mICߐ&3XJ:g{3%H4̠j(ǖW0>[$x%Ku<1KkoAEՇ_ vu x Vʷr"kCZ9:p|C`|D$/PJ7ccLdh'7Lg3d_@݂3`j& ̹vK.,Po&D28GlձX[#n#@]5c~bHOjcm0_fkpAr= *VLTUm4\vdFǕYZ7\x9*Qr-J8[cȨYKjy]/?$2qi~wk-@ s %Ν+P;*mi^ō:tz,ɂ"HY~9lƨq+ZfB7AgA=dn*$+'^lK{mg..Ò!ħ 3bu?3`^='TV W3^u^`ej@hDx dT[ M, e?o  ]W lCl Ey2lkq M4WjY:AIc9R|p>c{7Uj/ʋ)ԍ63ċ(c5mAԲ=x8O>AQ$B=_)COFQ}zɉf*sa[}iEFV,c>yJ>Ŕ>.UȚsSqh{vQoiF_o⡟=#HlOt`Jv3jgkR־H IMM|/TO О#]PAjvᎱQn@B%uqJ ڠшq*hCK/+7jghJ;-h.!m gx1ю퉛dM|1)bv2DTf7LAtc0vC_NzE@IcaKғY:yJW~Q%T粼VF޲P_DiR~;͗Q?"tb@)a*Xhvyq ;oGol3獧Ah VESl|sD ۺ*6x`84o%XËpfsk rDȘEg"/B9"rV+dτ9gk.tk)ršk.#>hG~+ ک7r8>o['h2ubdY'$@R :KhǴbnB`&>xY &ueB$V-tۉ-#| ˓!*aZא7b^>A//Cׂ[(Cxhl# :|9P0}D|p1|-,x@ Ap[$]>\Sr{H =FM~ו$ hÂ,ڷ@p^l'u(LB=2#G8q3뮼LǨUH}m5Ycǔf8 d殆#)y/"A)E√ACy8=/  =Jup~]Ԡ |䫽o-.w%PSj] lC[O+K&_6аWJ%Zh\vzI&ծ WXKo!?jJܧ#LjWLpdI䚥l02p~ZBJ^]mLcQ`ebW6SgɟfVpDS}\vT* 2˔dF}J"T̙rРl]- |C T~@0@T,/᪠k)rB# Eblօ$ krsv"*AMgo:0`b(3Yf/PH٤?X(#BP<: W^m'{(#\ºa.d_5m ލ=Ҩ@Ǖ.%L\~bn!g9"y\ V_G "HBRp'k Y~tt ݝ6@TSSHUL3j ©]@;GG,_>Mݑ.iƒoƸ/{MH >\WC҇CN8wfWZ}y?`wT~{\:C~فN( AP1|/Dt.Nd <4lOtBb3^|z0#7q$5C3dYXtn;{E $'?́v-Qi]-lYe3[ֱ/V3?gR 7aE"_#\XţW]咮qR6ZpJ*-ƿ\[\cnaَ2g(=,ƣAz"DK@$6{Nfe("_i+U} ld&`G@ aQgLJ }? j 1%p1q0TDCE J+WJ@3H z,8!דDX&pJBw Z[ۖc; qw뽪ffgk⯰IQH{?F.%uG܏Kt`&F,ѼYYL8d4C{csC!:%&;Pz|ׅsd!pSҨg>{"DkfѣZ\׉?YvG{mstY[~I3 sd2#3SڳPڂw.8J٢X{j]AViTI}E@؍ /̚P0\FeWg=Ǯ,vbd&)+LJUtAČ>>6J(:&)wX*Li X1߽ͅ{@ci̗Lg>PULYX #iUs2[ m}ՠ3N'2wXxX,wGP 6l& ˇhۄϱ[ʔwa2$!(9U$/mб^% h=076C7J@nC;\!aH54iMo̧u('P3&]|RR[xy.̤hE|MNiMM"$%3Q9CV>봓fU̸q|D4|ssU- 4Zba n'  eJT²wCӿɾYnс-a]MhF+oڤ7sq%җ_reO6F͛zx 3mmOh?⍌{!9ƑPII@~ܘbǷoL)={s+wÌz0jNSl-IDRoJWA`2cNN̡K762BA-OH6}ۄ /c@8/cp]m‹hIA`rIqtWg3dFr@ <'D-N frqtБ\~jUȌ(iCR=6tyLK(vi4AJC"]QG-sYk=Vl+~:\kY£&TRͣ=HCM~D<v˸.'wn>AK&ۿlc]˘(g#`1E W%U,pv%މ.uAniND5#o^QS=_M&x!- >y0hIkX]Tqx\TI[Ï '- .뛅^mؽpA5cJ *rW>ZP^hd]3!_vʙK:x86 :"( vs'-|-r}濡#-SV@yWaӡN1԰ơ5(uC:"r21=n'\Xʼ$un}#M  a0AK})ܳbPX[sOuA8QykX'5̫x!A6Nߘ @1"7kTMTdi-A{ e,>z=&O s.8_Q\KLϽRs캋Z:x'idn%uVlă"n7t`jofz{#Kkh Uh_҉yv3;=g79r[yF@ mr^IΥ|lLH3o쎋PZFƃa>ՑRxJ 4ES-~4@mbK 0åt8 u l z\o%rsFsln%Yde'yjrp"%',ne Q=* Q=*95aΙ_HK$P7,l׺ƣ$ hBa 7gϙcl臵|MH$!]RZ6qfgοqu5AgծR<zPCqf;Dί.= t"H+WZpzw{n~OmF[Ǵ%j8F-UtdrGleDg?BL qK TT?tBx99m4M!02bsB$Ɓq7eTA*6Gݤ&TE2Xwe q2)/0 l3ɼAbfGΙKqL(\gEƍ'_&_h0e:'r`j$6Cm7;=u㖦-"SY ^# yRhDS/ +yg!(Z<^úÏFvwNrm #ak@~Kzr檶-n[^؊8aZ4$ł+s]ٟM nEKؠVF|\iJ*MmZZ z>yG!B0lQPɯ3/.3U%"TJPG{ y DOpt%Q0]3> )mKrsеX}Bdw+<UeǠG.`Z騏)qnn82EC8{'(5t9s~ed Z‹l 'ɴ!i¤RBoh3)1`AR ,|̑ \U. J4Ya͊0d \A1H+_0N~T,-r:*]6[B1qG8s. &6>Æ]9%mE0?Y\OF,O sv}8ZZW{1Ѿ~ms_,?0es.D_ (jQdh`4< X̡ZVy1l=vL29C)\>0IvqVTiHɡ`>FKxBafI1I^"M6dy`cE#L2wSݘ:X"BM?bܽ#ZhkLh۬e P'04HdiS#|ect$Gv@@uϰSlggDO.bucUxǗ59/h9@V)2 Mpo"X ZjƱ4ٰhxh aL.Lo 90xM餸'wR[65eۡ.K}B<Nji夷| ^였Q$ n|[ŐeSпv}++U9dx`]]ѫ?sZ7>W%BL7u2 ŧ̈xýS/޼V볊;YBn߫ S1, .reCVwh.q[0bּeڿMdx/4b4ȎOKȬl5.eZ@1Ы=?AK&F+<-8%f^;U"@N@y X reU=%6V<"RI'T~'㯇g~uӜ4YilteLDQة[m’ u.͢~,;Ӿ(rh}ߋKEA!oC;e2Aq㋰n%i~ gjv+\-B{#G끀+qܗPZ.celU[i./}C|؆ow "zM{d}ɀɏiNjdBuRSe#t[v|+*ցXo1tXfD`a;L[\7NB9=4\4{"ofG`j1pPRn^o)4ʞ ?2͘oZD8]f$Fv"]I]Uu06_Zݰ_{5 7m6>NN IfS~Z -P'3$*#p}~eЍmtezBk mOaB6ĊųrUp4ʓE annO_ΠQMsF'M688fӮ~1>$Hf"yث,~q :ϝ` 9JPaCc /Nј7χv(:,sz^~8rU8aY&V>~ai:rW;TSyb~607dlbCUEݮV_8;Řc R;6CY^UkTrKg'=2@XS<=ȧ QJ4PDk| >~P3r?CA%־v*\ Cߖj7(Y-0OK0ߍݢUផ7Sb˅@̾v)WGfHɯ\{z [$ڈ ޿x4f 2M7'ӱVe]z17.rEꁸJ,V_I@Ī1F##x({HԺF0+<^ D7߆[c33* TU=:0 3 +ū-0d7)+Z''-HkYIl֨˛̒}i|W\Z\CG1ų}q`]0roxڝƞZ?^ q^B?s޴ fā+g 8]tkgˠpHϢ\ u\ԹM=yXcid[D>9יˍuB  %e:jN^"P&$# jRaDYc .W(&Y J@=IhKq-&D!;n5+PW1z)r . Ϊmdf5oD :5GhnBWQ楏a t:+z6(J:' v1.HEC86޺muxEJ|xXh,/ju6lKNC]_媆i|[1G=,~f3̐E TXt// dgtҼbOfo8B2 z{.qw?5ћoJ_wǍOtslyUI%i .5~~QMhk#9h5lO/~YoqψhJ-07? ,(!cZ(fkC<#i;NgFlrC!'|5mr]aɪ_^3M R\.S+}w X,90Qv< 0X3 񋵕x49 c(2=;*i`!wijȀ&&/9n Z﨣Y<_ծ8wl<:*&FYIƞpk4X(4$dnX\{~AdBhP?mYZ2sAusfh7c^g-pkSdOB<|0&W1$Y<p-̑֋Ye*sFVQ-ڽ У\xFlZ.yj%Д83YrJ?2\(A޾h%]WX̛Kԝ:WSv vY0ϳRA0OF7^r˿H`-S 3?-;YBj]/]5VzdW9buIa7 yv`ħ}u}sp3|{ϓx+.'=LymvuH{UA `&CNlxH!32PΊy3Cv2H@i8O]uCִ&(UۓCpiCt߂HQulTj_?PD-F֬HS;noB֯Lde*d;)z ƠYI12eC*iJ\}YYm d̈́&Z00W1.][k<<2ab DYZ- P M&2'ODgW0%εjeCb!LEr)F| J#;m dzH_PDN:nybFdȆm}QD+'x!dj2ul gHVh0c#.##3vDѓsC:bLrxCv ?K( )0/\S\?cz_jkQBS*t܂AA+*\Vԉ4Gyu#`e0Ir%Ɛ=#^tx\p6E ×#Zi)p_E^P!k͙ j0͠Հjj r迊o~-Fk&rXa2KnZ`(({%}jmV (`ހ+8:(ygdz!piR ].)GQteB}bVtZicHx׺R=`wem`p>wf>з{Gj- 1/ZprrA)K>WBQҿX&jPdgWV^鋄L |!MsՅTb8}L +D旐o4C X Y~p$'X63y7#fܙju| Km%E/p?BP~]W` Vu8U y5$[FG'[#{ي_yE.*sB =CIzzcVʦǏ!bZʑHuR߳NeEMͪؖ.gq8_5JXRQCǦfQq#{Y͡ }ER\=}ݥ?)khmٮG SeCC|wU g(X=8$1+=c]!ʝYxyٔkӰs^ȝfyڼsVkXȧde$2:-(ў)ago!jYȋDlDJ׎aP6Qi?cnS1>oRì=PY~V ]AUKU@  콺9) E U ).;?q %Dke^Mʻ>$mh!,RgW 4P@/;~rY6@2Y -I꦳E%D*ݰ`' KX IBhR1ʾ؍V)^6$0Uv6KM]YMs.v|*<# . #7Vag['Vdty2u|xC"@ޛ>9 *O8ɻM7iXПeSXuq@ҽ9Hֿg^ZB@h#kVcZ"!]~ä%+çv`0Xi_YT}J0v} 7ʼ~r"uEᤷ** m= MFbWA 2/X֚-9GũȒPvjDn0Cf" +7P>Ϣc#`W)r.?2#Н4:U6FN˦[8^񥲪qF) Wj),A#NQTbO']Sڭ)(ZGK^Ɩ(R[s"hˇkcLޛ@5"0͖ȸD];jq'SkDZ^Χ R(C'!̤"b$H}:9Lb;td$ >WΧ )iȓedrV;$Ҳ%̂ 9v;q,̆ -!248vKu7p}OiDWTq$ԟ26 Q!&&9+It>5DP̾2, 3Tհ"US,8h3{x86Ӏf >d!]7NPx)D-XUJ4oɝw;k(;TZ|| \VFLnl=i].g2?O@.mŖб,Xm|FI K|AߕʫvZ;!]10ڃ'E ;f0 FY#@T*ܤTH=1z 1z+u,^S8~F64Y!;:QIN m>{0A2?t`nx5Q4 \mt`uJq<ѳ M=3&*ù;eu)y5/`iy&.m? _Ձ5|gFF[vc\?> '%Kp ;fmh?ϛ,#9%0ŻTQ0G苈ytL@=o [vIyƵÂ= HUv4C,a&"Z|C][<.PQĉL7⺊FM"Fa<@a(c \( FҦ*KͅV=? ?e Qړ!!C_uXZV?!1"KӞѳ=희 Mއ6"&>,]30$gQ 9  9K gGsy6%ҳ^bsw߇}2\=q}.S@Y|F{$/)vn6@h9 HG=dj*@-YhCv̜l;z&֞B, zgW4/K CCE)~Th[䃨N׻:L, Ô{4оȄ\%4 c]n,N7l74Tә vF3Y RΉxAuKxlQ:d3.kuiD%X"tNꃢM+RtT%;h<3ݚB&#敂D7HS#'kwYrɧrr@`ߝ '7C;ː] %GW{*է w"Ox^<4L.}Z=Abz\f 6] AR[)H܃6A9cfrxK8bt#̸H#|,I4|AnqU O!#"xBr A~#AElp?\}+˰FEZ ݃7Ng}5mfQ+_n =$PpvܞUNqCZKTm\La*<~d!)XUY>i0/cSĒ_hq_4iGCKR}vuuG!{4Pv1#nFu713#EBՏu׿?m bwT$OWjE0*wl!s˟';Wc8oaJ-sO%; l9;3U)ln}@]$HFt`s2ٌKHav]+.(bk]IԀ~jCNgԗ>ɮ/{K=$فZdу7xh4ot=VՋ#֊w4q JTA DZvZA&nQ4FRCE9\K[g0ijmɐu:۔qSRSL_B}~0H%R~ 8t 'XG|"LPh$$Vlm{\CW*H!$'8ޣM^ ǠK\kmgKadhkgϖe Y"}a!48;v׎q,?R8E_F(ȹ2s$!{dvk{0͘8|fJ۹v~"wKCy Juqo6)Ȧt(N#Kj8P-!ꚫsrtJXN*&J-,i4ͱ)ĘMߧq[.MmNshb `KM!Ľc#Mf/sB;~[{(S;vG, ]wE w:A;"|Xqg{6BDpki:nfyJ4搁O GΖD*օ=N:=oJkg,ȈL=} ˕4^OqZX ?QutZ&Rb8%,̖^L@BCn2Tkx'jNP%o! xHݕmK #M\ ݡdëk)@ &5Rn,yNAŬbÐHI9 3b;5&\8|3[JKp+zQ`DQnBbTW=8w7np pඓwaQ-ٽ^;?m ޥo&|8I?(&@ޜTz\eE:`TO]ͼ-`?D-1C8Я*N""6|k{^d$TUѻ@e'| * >JwCjQfhpFŰ8Q0U>GQ5* Q1Vj2 Nrh7C@z=e!ߐJGC 깰Ư*O]'scN)iҝ'+eVKsj83qwtP#ߗHݽW⸮YPصxNk[S*i52>/@~gk7?mb]rZaxR'!SGt~v݁fϵX#|avmD a-f+1)PV<ٖwfۓ?UOQhBnmm[iLGN~L:pԃL O?0=NRnPG@ɗ(t&?ԓQ{SȔx~пX\D :Wݵ½o+}Xi-grsltgfPLd:edKvN=!2fBUF6bh!کD_ !,1;d;ڪ5F^qoA4kcO5ZReݨr(\z {K_k,`𽭯N5( Ћ= \Am4_.dqTow=%}D@qf"C<1X WzM L؉YGdg0gǣ@z}@1oT/3Fe(وD~X: .4NF&~4yF՛~iir^tl$=Tv S !r7Rjr`@Mܷ tqJ7֫H{c'no%w:٠41}jU#Ża A7`9|jÍGʧA@F~"3^Kު? cF:siͣY+]wxbI 16<~K e<_%m_u\3aor>%>#*nԛ%ƤQ_aoǭ!f^zATǷ|g<= [V{JɼVajam|&([`*N&"Z W3C`L˲2r`Yl}큏?2{O Un3fJ˽y(SLnl߶;bHNqia"jq;(=X:<u)qa6ʀU+;W({NGăCA>|>ޅ' s, <A?~9BՈP[NY{;c`]-Ωq^4 ^",w0C[DK|V[j/́CqGB˘g:AY5gQ$6Bv)ޚHr:J5xج)h-¶FV hF= gͱ3ܙJ~}Yh~6;DH6IȔK1X\h ,LY4?^b;%zLC5D-5֮9ܐtwy?{Q޼{S-Q5F;k)4[>]nf47gg]L =3ǥL\ho8/нb}C 7Z.,JuɄa١e[P 3,a9Lch U1X0W[u ՞$nS?>Jl{VZqr*@T '9=eˏ9HGVsZA &\_4N(. =)t )CdsIkգ\B9XXUD7+{spg sࡕ\%#8Qmi޺%׍Tv!6'XO!q,NUd)6FnXK{hTY}uPEFZ* MCfݜK~{[CkiȋygARywc$A{^AHN?Ӹ`_Ť{灻)r'Љ2۾(>څ,֚d]i]vZUs `33d9Չݑʆi*]I7. [u1˽eƼ|cqVݵjEC[b6B~<쟤mIKrJYwK[Wtv<ûH_mM DŽ.~5ᝍh96D |V- (y|hbEqKgyoAN\trʲ /Q-̓, b@80'$9#cе骩[C#-DV}8<藏 |q+c$4 n)g,cU@֥zJo7#9u])v%R0Rzj#쇨PckIP5GUMDvݭGZ4,U*+PZ3Q9aqQØT2b1ki@$l.~nC O *6Mc-x֢ %X]1hD k>˘f8H}_e;aMB('D*ywc㙴F@8g"blG/7C[[UU?##⤞yo+rX߽۪q]JY̸m9{ד?q(z o]̃ư`U MIy]ɤcΥ{;]%c4C]SX|w#sڃQωmmfPg 6׽S3g 0P@3Ё\Fpi73_>roB˝ѹ-FܱX`/]!E0(M@\ MQv],Wˡ*Kd3 maũcxbX9vlS 5I ҁDr8ƆjpЋKAp=:TVSFTI3PID }Yq8 cv%80['#fpq 7? |0$n ݢ%\M([O(tX +P}?䘶N3i9;O38,rEe) I@5cn76?l/I)Mw"+l=uצ\DDo3Rђ!eaZlR~Ii u*-^SoYt ¶7CL]Z!yWLC#/k1% bĘ6U9oMei-w@T5e͢h[0.r[ӥ(Q^ɼZT .S> *tO2ɎEM5>Տ*hLX>(65cqc{} Hd]~gˀyy$ VA%)&)S\^))96{:g(529ݬ$+ L1s!/XA0]~R *-yB|(/^jܜU(?v|)r]-ExKzY+Zl{xIl]34 Uk5(_7>Dp(~ 3^{O6'ź |jtp9˾qUm~>"s(:jg|i)^A7q=**"{8X65Iмܵ, D1 նdQ&4\H9r5÷Y.BRFxfOUi#c+-0l]|AZg''**bz" bЃ")yl6W~9<2>1>X$EԲ}R 9~J Pjy7q P/t4QgsׅDBJ5A?m#c)9^Kf:X`-޷cg=q׭}﹗\+*!57Ͳﮡr&#1X Xڕp*xfY`v%-1\c[;&-`q|e<՘ȑ2ո1(lW؂/2qC63AoQٙ WRƺj,^c 5~`.|E#Q"nߤu_ h QryuiSۯ:cBStOL"8Z'ǖqW ^ObTGe6ةT9B8]⭗),r[hc vrwkw|B5^,}\~yzɈFrDaK.sq%s!"Ȼ*_,J1,5=Uiy$ iڴhLG;wϡBl!dWyDA/;Yi ~"YU 3?on5- 9SIeIM}&_kM)\ȏcܰPs۸S sZJŇG HRa 8Uyw8IH8j$_n?W>S.dd\$+as?D枯_[2T]wJ7՜jSwa b$;om >^9n9sAToO毝|8O"2Kr C[tϚ.++e:ǥ"៬Y3:CB}8`@!4NɃ+Ğ],ej f}~,pd\,ӔL)3vuigRF#K{{nе^y0Z<[Q ?c5:߰&c|F_2CD_XVTo}XhBۻPꨩ1uQEtW> pqZWMkVFu2Ylt5tTNLMvlj6ڨ ִ"(#Y`o#*<]bT^ \lwy%%ylo(>hCǐwI>cwMOyVEF䝲к n#AXPJk(4A7FSAe#| mMi|]SdDDNfR!\&;3H:NR@0 "I%oVt`#h}*u"a+vMmM&iXkWTKLۉܧ8c'/+,37ӏ[JH]҅L!9kԡxdʸN)q_kJqYSsK¯r;dk߸[֋9>q{`\d>[aÖpbٗd\TJVVҌ _Jğka,wre$9ۜrb2u03g噎@" sC~s|bWM̵6>maыƋ_06_WT״#ݵ(Ņ?؂[($cņF߮7LgYy.ZU +YwbNBSmjgQ-ĴiiD9F`}?\s.B54iPՇ+pAJ}L]Fb 4vQmw`_O e}Wc0.Tby}5 iJ}p꿡H'; rNVreHp_ѼCuWBnjCc=)%7YTU;on/}Gz IOw,:R\L^&N;9xSSIַ[4e݈H gHs|÷0!P)ĉ]y iqV!qCR!zF8`v ?[ЙGŤ3(NBV߫PcA7eX_Qd0;r6e=ns,b$e~I[?o=f/ 98eCo/u#zm<jQWw ( C'776F`ƭPD_\]`{\ɠ67S4 AMKik$ۥ}={0ew{Og-,cOOF*Psy`-YNl>A#F@zZi?X|g)q܍|07s0`hpoܐ_d\h2JG0L8Q%)_Lҫ2ұ.K\کџҲ2p"b5`MaPHi%ɱpjoSy-q5YV}]5 E%5sHy.Ttx?8d޴eƘMB(K/! EKY 5N$:u >a)mWuBwy)JO5v`5!])RRD}^Ly=`h|1Ld'ܿ:/>#J Zak!/Gv} o3=A^Ee1@Z v{B3S:Λ 2>oǥ0Hvjj-&D[# E[3^MD"i0"}w*-W^PN:Mi_C+̖rU&?mJp[܇|m+ATU.y7iNwڃi>=9%lZ0`GdъR*qMYϝ=\2`F-Y'GU'jAG/L5 rS{EB udY(d9V&8o8NX' 9 ݪ ;R#7xEJq2Qu.JxBEcuK+3k#Dq*}|'pݵ\=e0umܔ(ڭE%٠5eG㽃q*wIS2ebT=wʵ5g[,-\fikH'XۓO6bZUmAbt9('g.8>Y ָ_7y ($"L0,%)nKk|?#ua{"/bq}@SUs.OA#bW:H:}q5C-N6#5_IZ4Bq Vy뫸Ԣ4kvVkuv`Egl ш}\݄5wK/O& zGPdDe3egA,WCyp%dZBJqScQ=aQ sYO+AvVH}nV0E< be, ͩl#ƎI|s4pH>Vh˰WzA٪N1Mޛ0MFU1JCmjeDל*C?8DI~+:#f,Ǜ|d }kJvE"^KduQA^$ՓCnXUpe꺾u8Zi, nlM | u (3UZ2)B?HU\N酸!+ⷭ3˜S5ASFArЏgr` Z×*ϝC~H< 4I[2;AO8^~v9x KC? x0}T@AG-@+Ϣ[5?$Wsi ҿxHY4<=Bh^hWuUR/fiDov0B-0@m82%J{qtɵ†m^.JN ;?B5, ;BI'2*͚_!/eƺB :!uZ>D]p@򔷧5~+M,з{.X:dЧ B !V_%;3 nϪ-ջU zxݟfUה 6 h\HyΎ-gtPr ~ ԀNbvp.dڌ:`~61,A.ãYyGzQ}"z9[%Qwt ƹ31)~*S*B#jXld|yC8Pa{|Ao摡a^ٞ5gAX}g enX_|^b֞[Ӵ]|NPOn('gWeBKɿq)Obꈥryf"}i nLQS!sajS`r αHêfⅥF+{u~1^U[wڽ r]ޞV(%Gd@zOhE+dxBSuzU+1Ns nG(W>Z"kMY$d-,B,ߢ'~7DTmhlwRo, Av?3Yiktݾ!Q `bovQL ci+E+ѹH\D\R;x#SzVXCѳI +nv/ :RTg)~?K, BZ rf3ÔMȗauT^_n߰채a@1CDsm7 KrkBJ' Вe6y PSSJʞ9 ZLe~ڬջ˥ 7t ָt3 q nAl69/+Q,,Dtક sml~X\K lGц;9mH ]P?A-L)D~~jMS"/-{OSɭ񒿟iuşMH>n|T$u2,DM: ˿sj3Yxj;O , &(愶ZyQ}4bd~ }בk7Cvk ,jU)B AvD#srZxgbX?rL p} ,LN_Һ[5.>!Qϼ($y@&NWa&q/GrV e#tܷc._FJeH,t?WSDoDxO'` 'rٗwJ*۳iSt* 7]K=TdnߦǦ % DA 0*S$J2*KF: AΌɗ;Nl}^kE('|HKl[?2=XyG7[K:d2 obp3A;g$@ qmJ rx!VMCͼ+η?ͻ]xy+LnO=3C_ ;leE氋y'jh1β6¹m'ahp_:[Ȟ\Λu35-<6p2@ʟB+[ *ZW^f2~E8Ϯ=]]/akE/3JEoz0jyZ9CT:obϻ8DZbImb,~PNZ͈=)sNV$P b4dW"k˛h όb%տBlf4WIajpZQvz.G$#?P (Kء1F$>KқVGzɄ_Dn%^Rw=+Gϥx<$V儐ů l?\m[N!!ַaYͭ.G/'M%> c65) T^ PC;Ǐ4(t0(rVܼQlQhᘯ})NG0 *ONKL% |̾T !mK},Z 6V?XUg,NU5p QS*LCG=t=}o9<@_HOb 128+fO;DV[3 Eґ\ƈ;(-!9l6* Rvؽ5:L3wv\R)f~Gk8ʐqăYžFi(o m(lڭRDB\lr' |s|pt s\!3k(kta޴P -+t}7Ѯ[v[ oo=5u7I&x\VBVUwh=%nZay۬hK4AO4i/>6fxθS%;Ӓ5s Yj)s2+x8%R}'+o.\?JԔaT۷h;u*omG:&B':5f<5p˂% 6p#ɭ3sd_:V*'luH~ƐV8{YDn+@`wivq̹ kΒ!j` o)8 ۑx{w-e' m?,=0zߩ\ P'4(n}+fW|u}K03ѥc@-5PwG3x4H7jw4"9TZ<cy/L_cS j>Y 8lXFU,r ,[A崜 *%*jg=vJj5dd$cZ穃/IngmCC]N po0JƁ0 _]}a!]RP阛&N g?ŝ쯞\K߭άY&>OzoXCەocC-2;R9{>@&R+ň|X2!TR1eʈ7YgB,,+_t,<Q=n^g5K_B"^j6ѩт0,Ny~[+9 tcؾ A(h &oU3x(}cj>+ɍFvirQ6fgڂo=١0냾 h5 #| K)Hc)'l'&rv#6sj@i&e*vйճ 1lY9##n\ ,BP9NJN6eJLLAH?r򩗹Ԥ_B 6Fi/J-s# :G{bK94뼪B; o[,Ed%7g^gO 9uSp,VB@鎅yYl?Z0^PWFDJ 6E,}6Wry#'Lpϲѕ?~QϨ⯂gv5a!&{BeeADte&x336EWV x'sqJ>x&'1r#{q²>ƼTiY{e{$}ܢu-Uzf:8j?ҴI j8`}\ .}LO%Y!n7|_oKBPZ) HKvꉊ̽pVT`WK술Ϻ++FeJWs"FEݞJYK7dh}謅v*"g Cň_cEqg\K?w:LOjĮcZdq_ lM7BY9.#]4^b1W/> U}=HS Kњ$٣'B>5}CNaqj+.?iasbO+&iK8){d b,gVqq0Fm x$67)]5}ͅ~~km'ޡ |H)~c#_20Bn[VpgD';p0k?r`}Њ >A7р- ( gݲ/;J=x*Ԑ\}*T<ϠiVTrI`^RtFe/Xr$^tTWC4˛ Ŷ-sr!3nӡg7Mݬ+:#+>˦cXv+z%CA."ϱ1Gc*;}^RKs宻k6 :;zЃl^ӓ{9AȂa1ו^u!ddIRkcyrDpX uDJg[`TL~J`;I*1ycGر< 捵Є6yoVQln\4*El3"+vVliSҮ1^?%E& ?I 뉈%J>,+qAAM;5ض:R3JY>͠si ЧPo0v?l^I8:ASc¿o@%|[E!48Y?ng^YarőPqn %X5O;&dl3mgr2z/a$nMbxBV $_ dΗ`fPmRb"kCY!1bk>ƤڷI՞ gs)g#'h==9#7l=`QFz|{QQQ2yH|ǗEܺ`4WǪ y\?@FaAK1:xLxDat#i+}I g5DǣY@4xjc|Hb[LK0peU0Fo&9IZ% _v.D%oNw) T2_9&~6z<C 6 iHD#_ˬ6Jy1`]9=1`d5qc O.Ovٚ17OpL 6ړ l;jЋCxGwdO5&y3WOjpAb5@J.廍d90a] <> 351xX|/&.~6p g(섳:#Y>J);E;ѳMuA}1ޯ5ɂmd5ه5xnj })mEXGD1ubԥ;EnM|JXn]CoTqS%hCaמ _v@ǶXV,@XQL*4*!٥BFNf 5KiRs֢&1 ]#M48* V*)$ m> ;;\|;)BnT@HRQȶ ,},'+c0g̴zpߠav];Z Bv*J|4*]+0)2$7mf mI-u=T}Z!HU4ȿkX]U:=`[T[a`ՙ96B7c4kt y9c酙Y )8YM>1uJό9MxD\D;INXS7ʤORAzB #Zr/`=T3("^j6bIfZ&npi.DF:֫Zt6:{q?Rkq5,fUbr$='B gNoac˸{\#gX`/^Iv25揕.GU濭3@**AUOzI-E/`H` Zؚ=p@@qhe'\H#azgK 297! K8~ VsTE`չ"Z"_կjA _KaM=X[F94.]z42&UmLN9pjABhjOKŌ°CV (<|%m0ACDV362>ofeW|JK}丂yK/6Tx oJ4&2|{bGrÐ Eˡ@+JVƲaWVDfl#U2/gYrTD$!FOir\Y4:dwc.YrnοA Opxb`?hrpnN4հjǻm乎*H{Y?]nTWtь'+겶|[1; +/C$N`>B,?m)ȶY7v~SoǾiN>"gj^Ն%/G|&l9&hR1]e"1j0n_OwvNT@nqRC E0B#pZ S#j(XG/,)t;s ʚkH{p [<9*' 34meljp;D*gN<M}z7SAQYF~@̮2;R?"j @4^'DF5}D +`ZlSĩ ̬؊ s;+76d[cZtpUt0$XC)Li]#?uX=SXU16Qǰl.1 “E7nmyNX%3AExw,o_9 t3&ݟ R5bqrN+p~e㬥l ['8Uʦ^/A9ZØa`э-NYlHS`x l c!g҃c6Zف5Uqz"\>,|t: AϢӢ-(7()~< vsHP%EJ{6dCҜ"S%lQk'٘,xid2?|&Mz:Vzefw{*z5V89&Ǔyj>7͵ "aѮ|+h$$|p@ZF(0BU~k<[$,ytPT6=ʔT#ȄkqCW^y9jZg&ITEEI%=%UQdV)d'd.0p`U}toL|suS.ȧqO1ڀ̥r#g;o3Z Atsp|C )Ҥ&OuyoIE (8Y߫A'W"PYfFphNur/EFw^&ޕ(a گ&%kܪXH% EGgTRr'IFӭ O ݶnq6/7C?F&w>lr [Pm I\~0"1劑?N@C6!KT_C{4!Wx7^XQ]mm|9$g~k@K䖕 K{ht=לqdD!Yw"Ft m]r6G ٿI;rYxN2"u$ qGw57x"H渔KrZhR4 7i/@ĽXoz(ΊaGqnKzozV74MeY qF3!_8()H`Ρ"O֬׆~?y Ssa:pND^l1s]^|2AR$%}AX+ IG8ӘeR#=; \[QH8ؒΉ1"3#3u9ܤv\v3e-1 1a ompLQ6\yS;#-]*LϨzd⏮c'Ln.@劳։"* ٬3g#)HdOtUus?-[9Ծ0RM T3I=@;@:Sa}^ (W[\z_0)#g7B^?%m^33>ո qnX#3NUg!gˌ1wht* oN5y]N3$>h+, [mǠ'D)p+ MFL![%UpnJ*ϮG/i(xi m갎cE3f;WՉ ff `p+祭hgIK֝|i}vk]i.:fX偙O<4@l>`{8̈qJCh$,xgmϐLlGc^AmEGvXۖ .ރ,m+7SG/;!%M>;(QG=iWZ1cܭTr_u]߯\B8XA!!% j,D}E]J z%o B"SS_=c5MU5 ׭ mġCw% 몄`bX}Dg8 z-G?E` KD_wD51ɐqئgcV'Y8w~Ц  |Uu{OaQ3m@!PE`xFZ&bE)QO /T,F5TPˋ0H0y ^ ȾݜӠ$KYdc?swSN|Hj_ld˕}R~qgcSb*0r9+MlsѰQ;w*PQޖf"w笾*7=nuGpj6}XA@p#Ag.M\;Kڠ xYMli =dyq/,+Ty{zE".M8U\᝾wi;(#m璣AK VLeɠCrG xBOJs@*|ngKU3PR)jo0<߄ êSbKnclz6Vn̂V+nr3Fzr|rffH.t,۲#p x5KdBd{V0bA/ aE\'' .VhϪ E]ZxISG?6z$0]I Vow:=PP_!+x)-M빁"M} ;cT3,i*VG*6 ά&mZN57΢^_t0<ۺ˒q8Xqvbz+IBϦ[p_4FX,U*EåP:uiTl"n 9` ݡN8Gۏz@S ?,`w+.dJm[bǜ_U[XDv9g0{1=aPTӵȵoUJuhOue<.[318e qU([0z~1Vk/m$zD]XDXW9)!Hl~u1/gGrQ !IC?HLFHfG\&@@C.ђ=\ VĻn @;F %X xpѰW؏bHyэ8TzsIK~LA7`Nӓ<[PlO(唰R!p[P`Kd1U[<D`H1Kq>q1XV,ZN@Y$ +#搇2Ey(NLS7_%%f "\rT6*R@T wx%阕iB mui.51BB:ȴ(}<LniJ%+ahXҧ`Y8 >N;'=r9"M[IFM#bzB taEZWv%/Y蹿[TKi;MoB{t(.~birM0^]'zٟ+6$|-@")ӫOqMB?X&=A&e v#65d</ H,i[)1!B;rx?BCivZNB#VPp"ZP'uSBalͺ~TȬǸ>N"g,kݒJ.(;mV̑sކSUh%σ&= /0ۀ7m"OI7RtFTAϒDLWXy( #U!>H_8vpNɟµDG3 -d!0S g ύίP+fTWƒo}G^^fPHwFIKMXC.9+T+x?>tXՓpF=my9x"yGVGy{Jr-FgIVcU] p=4zNU0㶱~VH@pPxd ?|Ňc3Ph!m@\OS)·uW?#vxi>('uowx'QB>P*V@6rybu(7?׳OeUo"`A[7]aS5᏷)@ҁ?Fgt`EyoXN`lh:x1j(8`hU-,% Aq®7ԽL`kZ]jO C x,rg5ńLpMIc[vG62+6/RH^ Xa::uzVhBei k\&:!bCJkg <895x-DpH~XGq"!fəڊR|~}:m-{[|8^GW7rr":VvCf`iGugiT?#( Gk8)q*|   H",нr.BQl¯)Ӂ=Nܴ*x[ UOSUp_ϥ%sv1 ZZ5ّUaUNnXYtNR+*~oz.`O+9(EȤWlKDN;IvZ"-"hSr.ih;lb)[g ,%Hk oUySO=JG3` ;\5TU" C<7PO41j$*qR؎F5H36u^˖EvN E"wD jB:SOT#4lyjD 37ͺȃp>%y h_BgOY&J;WjсP%ģ_xёQg8ڥ؞PIzr"qobasjؙ ,5D7c@Rט8`ߩ UA#DUG99 twߵ;BwY^T4T#Kh|WkTñR2eաI(wo-q!0OMIh{eݜ\'l& W˜zXBLJ wL'0n>e~]E 3d{9dAXkۈ߉(xqQX.'Ül2լVL$?K}hr6!'|N.'8"ڸ3q/f%wxa7u`cms[۔Vi /&Jv`"'@`DT) mXQL)r+׾4uꃪ'$g =3? @;q%G ;=YxnR0ܺnv Xr&*|Na6p; ~. ñ!,s x^K< ##2%X#ꕱ;>2+Vu5Z s~4'g#Rh; WVkEڎ=_5cJapQyAI@Sj@8N~to#qp[ 殎<4 4椺 *;1⌘1uUyљJ\w[s8 EMTOy|JAzas `kWl=KAأqmug&6Z[XVY iQslJDޏb8tÇĽ`d.;/bOu|"`(k8l3^Tx:.߬jm©K BHdb%i(Cԋ*B H?55F0*/̒Sm(ٕ"ݺgYr-Y Znb8.Ko$Bmyp<`y(r2VDU?hڅ*6!EkJlt4W\y'CV5x$*)[^RfEoZ~蔜 q?xD R5.hE~4%L'.,ty6YDWet])=<؀q8Pv myDOE ^Fhi,k `^n@5n.,l._&F95GV# =U lxnDkwG&հ,SưIs G/QZVPG[LA[RGj5#qrLL$U! jbM1?pa\7֘H?r! -0eZxGk,h%nh"-5iّ224AʮK')_\0]FKDlB:U֩5&Y~:hi" qhot9v"^$Tdv#9=_Zea[C&r w pKUM.cbOYE`ۂ݂QEV[ըuE2dJ ۨE?Bh)9Ԡ2T2@ ِ+,SӷWE[yB)L>_P+bd8[^i16juHѡ$͹ib@dO{3-_@T ^AķOA"aC791Oy%]ZLٗ_\_*J:RI?nllo>7D "?R ofCV#X kg]Ց2jYYzE2e!6Ռ~WEسc8w f Ϡe/ # >3xeTj_sѥQ\ q6" /KME>V^̪y=INǬ׫r WZ:k?%(8]9E~NO9F'rPN^(iU`} s9* U"~"^X5pך8J 3k@ )3r VWt;ld2yD\\`5ZUYXw=y&m&WM V&GYFBgdlA# hsy =F%5ЉLFC{%U9>BC:?.Z,Mh dioO `7/ODѰ~)b?Ң~dO\o_^q^p DzZ8N ONEp @h_wYw0Ĕ#f=hFL#=YL˙yGK_pA%QlHljTڃ >~B`5T0YpSF~3U8?*VYw DE1M,9a^;U춣?*npTv5cRP6X.D%lzo!Dl@@ hgU3 z B:=3#9t:O<?̯a A h6U$…Zk.ؒQoluqNm_2uYR5}[m7Ƃ߹p݆vb "<_fβwR_>skd>1Z:<[.UC0IoFU-Sv/}EqK`(rK[}$! y_Kpj)Ox*gh4KEЛ|G.K }VU%=?BMc%1Pqq4_xOCrZ>U;D2i!4ID!`2xl5vg-mnh؛6W9Y6whfEߋdx`"0)_3n|hub\ĘX nOnzc-ُ>0lPv i E -ine$E0[E'v}QKFOWT554#@kՉ˺ᆝ,'ԩn(0GM?%q  q򒑁Ɇ'UH~|d1wAN:pujb"C:Z(!f7p͠^CDf-1@ˋ↱6Li(%YJ3'jX¡=!e myŽxkoPQPk`RxQs ˨h,5dK ;?S;'22#:']KXnnk}Spg!l:΀6 ,iHPvR"h]a6nKfJ|A{]Ɓ?B7֦btc/>DKp?dXr*+m!\smdB) \n*L VO>!S|. x0OgŠv\a3 z*\룑}coN|)yJ $pgAt'xKA` 6>aQXdBU0"~(?U T^Bj HnVҼTknJp B/x:O,ךg@mnRgeau5}v'䇷’£*=nay<uSh=[K}ȹJ S ]PcsB]^Hc7\PNQ >5XeKv1pd]M)6L]i,fo=&W;!!*i|09t8d}H"J %c~o|LԡzG!DW4O!KpmbSH֒mu"* }$&9~{a=N&Bԭ"6H<5,==G| M>1:դjnI EGTKENJw):!%C F?6abrƇn VViq<SU|M>,屢]n\҇icY(8i[%y~r:;ag%r!&h-X?As >ڵ|uXpԸ-a-V\|9K] @%mGKKd^w*yZsZE)ܤL¥izE҃xuI}@ P_3@@Z"UoK KXʖ# R̄cp}$ׁpq`]er-AZ^cG?ڰHy/kVqI ^g07`X)[k$Kpt[?`ʦ&@Z,j8:@6{*#|U |LmG,̫ӧEX_ݧT#PxMPq?Ilb"~'@B-xvԄXXfio^17#F{7[YBjJk ,^[2݉L5bLG\-g8{ ,v]gGR`:-rK `.h<djJ??oވE lcvV-0tG}O$^sp+bNW3+[$F%2);9RϨpc@a%Pn.\zNY.+)<'RaGfDcd׍xmg%$|Sucm5grrivDA##tqV |0 '3T_ϖAr-(O$)FnZp!Sqgk3dI ZܼT4?kӻ[vk%Әg8]1fp`aq3u&rjpc|2 @aymi;`]$:ԓB9{EmaA5l-vhKb0۬2Z_nXb:"KD%:xOG3ڳl) 2 k8 ri 7Qi21=a>Dyni !V;e rmqQv*q%gTN{u\b.9!5 <4V& ǼDXؿ:C ErzDD٥^5vV_\V7'g-u @qٳ܂i=_j'wdp<bRLma F=Iz98gziX#GŃ8)?M]#A,zs4-/-#=?s2oe0j*sIFTu+?FzOI7 UMȌd OpL6 j K \追ƹЬ1p1dg ?xʾȍϩښ?q"}d퍼ue.wv73X"%w1_˾?yaИ$d<ՠS5<[:eA+xxH0 \>2hB_WU_88=OrH }<JxLȊTGD~.-/쏦u+:gҺ4$n[E̵X9Z>vgL"zoqe&L|khK./vsxUKc/'AWBkj!./L;(&1ʸ[(kJ`RN8}Y4'V)3"?I*bu/FI#kvxYPvuo8A|((kՈ4v0E9J) |nc:c zųǠ{V? ,BZCd @JzMVl>p~& lb,e}1qnRHuW |l5'Hq u?"+ϐ@K@SwٵgŞ),f@tBzhlueBK[_:ٿ 5mz)c sQւuXJSDy Ӻfýc鱍]< [Ae}TCj g DWV]Exc/KJlQa<y^'YZ8[28w-gDg`Fďz3~M j}ds])}P +'OD\=9N&&v>L EnG]^>r >sO$YחumA1E4[T1F! A$MO9Hv s?L0Lk$+EjvT+$=_NS]11qrM/. N%u_}$8JEMYfG"ć<,Ce='ia'`Wk^J!H!/~đ͙yqﭙ&)ր^\j8r+LeaW`s)H]<}9ԈsRK+/\SqA{@;Vb !4'_}3b^ijKiſ[\s&}$eMd䞎FDƞ%}GZXϖ ߷^]즵"[E'?a8R.fh57޴ |_* `>{zJoz葟+4XL/2Jbnt~snuX- (p;/@9|Wse9 &,lZ7b:j@ =B!;lX^DU_r'87Zףv(Z ݾA/wXv p{uc8~,X $rx Do׾ܚa(H pzw<, LNu&W̌ Rzz&092U5UT;?x1lu\>QmV4::qj +}X?mT'c_bE\R3.P?\VWI0]yM[zA#`Uyf0R ^M%~e]p{D5˜oBw'}o; ՇT@y[YJa^jjIoAc]"oFy+9ŭ(c3i,j|r Dœ3iw1~w_C(~r\&4R;%/ Ero?# Q}?'j9r :hmE뼳N,p?¤6#N%.\ފLSe ݖj/k齭`!=diF>%hpk(vŒhK8칾#WB kJ~] F#$? jAQN*`R\Hb1@Q$vk>Pd]@q5:4KȇՕxufۍJkM'u4GN<E6·QndZUW%/ =Lfҹ: ȷ0Ԕ'6łN#ŠP/CGVe 7PN++s!8҂-9_eYύqcwri ( X@cI^`tvT[YC``|\uɺў/>9RKOW n7=*KQw3Utcx1-jEguEQ=䂗S$hZ}`cw$iniqaZʬC춴 GtSEvXjCܿ#`B{h^n&&x6>Qolru`Ⱛ-A]^r1Oۚ Y 1;M[V;,_V` NQyUMPj kWpXyc&ԯ9z& 8}ʁG;7YQk l; L;2yI;IeBBf_L0"N/"˧qu٩lW&0I۳}zmgɗ׸c-hK|tu1CJ-l Z 0&|`qu6Ҁ;ZL6ݎ,W"~x<駟tzs]'-^Tq'沝 @${W>A; M)3gd, Yh]Cfr3T7X!B)iE3y?v}F >,%ZAmgO*;LԖ'pĄmBH_y2O/tg `dPnK_^]jFLږxdqILkw?H!Ϲ>V=vNd D% %k$%@sU="ߓ\ܺ WF5&*_\C%6(7Z\{^Y( !9((fԬr:§hgn:>xLad7 "t=[2H/ԋݴdWؕk%5뵊6]Pm7[)I'JsUo9. C_^>>\kF;4;\ -]?:p9Ț,٬;KEm#_,y߫xr_qU z!Z: = 8q3<:PPi!%z"پFI"6Hi9apƲ% 2yQgbԹt[2 %lD.,{g `d7l]4g@{<%%=i("xr Ѿף f1k1r`je##wƪU*5|mIĴ)vUߝaU&<NR7fZ]٪j$ "]dvfz6ROX-hpeIdH$xr<ǽ=d|;]ӗS`T}OhNRGUtdF%xwؒgq9o)&ƘI]߀sK?}P`ї;m ̽Z1Ludgl.ޫX)j?w$XKْEP5 >H@H4 X&4|o?M)rvzX Ce̷ӷ &r*B W浧:U32 `+ k?I[[,CgH,:2x U:D ֦PPekKOd+&[-"\_z<3kg|.iO-Hn#=tمvMAv/ND1X5T|)yu( _ܠdQ֬dkuydttGXX/Hؤ&O1p5Z6upJPeQ,T?4nΒGhQȂQ]C&t!n&E0o.jnh uATp57UlnSZmP)Cd)xPw\p=P7fps)t =AK@; 3Dz^BX_zK2rD%cO>"ӭwsԋ㥫'|)wօxa<ڤXNSDRso(Y>tGz|Y*ՏyV#SMV@F{Ě5K- ש 9bɻ/W<&sUP9䰸ZlЎܤ3i*0s:ݏ}T~xHȃt+ì {d$uUKU=dS`fCrʣoŴWiDo29{;[?[h֛HJ%?7>_N ųe]ELsϻI/3=<F+;1OHGU ZWF/bH ׹`⟲kK$1Y.lY +.FOh ͏l!9ړMla.%]0l_s<[㐜~w-I7'Kjnh $X)i܁Nw1/b(' 'LJxp sһ]r#e;]T4 !IJ(Y &[ΦoMnNW028RY6r < f_fƏq&<cѧVsSId}ij"*2IyIAp#,9O} % xhY ˌcqGJn b&t綸bW0Ļm ƴT/7g \ja$/sxQv (kɏr@A!9;׫׬k")0ߐ=U0yt>Jlc X#`V$־9fpS ~ĝ2o^st*VKze)["Z}35k~D\Ax\g[mT/oNfAn[ԿwcCAS^a5<{e'wUޕ}i7@@v]x;jg/H7&QYos\1d"hmTGTȱm H%Lo;7VEt]F/} v $C؛-U}ՙa]^ dF)ȋl3 77վXʷF|z %KfHۇ28^[WP7H5A&'?R{mV~bu_ݻ3"d<=!=|)xMQK)x G+dFнjG&XUQ]w_Sai8VoRB}q}vs5co[W]ODI㰞H\0PXgYD2v&RC}ǀRn ^|3wr Qg`md_gC =,Q:%lry[~pNl 0⽞E f=Xoޛ,'ZSȑyzzHD4֤R)Td{FH `5J\QR􋨲Pξkbp#>h!&,[\9Ur!t6R${L'}A0y8`rr? K+<9Vw, N=(;\9P ]ΝFǝ55M]R٤cn;o1SQ%x15a lAǣq/f'?`m'A4;ccvrQ obvo6 mۉ !YY1#iUȋ'5%]>z6#_(a4Xӣ"zn"M!|Bd@ߓI2 W5x g!}E->P4x#rSHxjxr>4P_LE@q31!,aw m? ̀wb"n̐F9}0)j|$?DGĿĥZ[םs'Iط-_9`Td Cֻv!oGJy( @3;p> D?UZZbv wMɅa^ gPh{QwC 'E!7,opZE9"wgR9}N\<bX-GP RSdo~ɲn i8ih4 U߈A&b72{E G]{;K0x=_G];=|+[_~iֈC5f[`δ~D]>kkKE1ȅ%$nax7E2. )C+',Uj$qNs'`,29"Zd[S-"6I.' FK͇/—TM>oسbi|`z,zxLJG [li*,Uvt|'yfēYʰg uZ?Rkc#!nP#qȡ+OgwJ צ%/ՆN: !NɳP!]]4̖.P {MmF=^TU+LȪ @fbw {и{*cNشB2*DBw AݗuH'3Xͣ\_=:^96j){YP%m @#Ǜ¾M'f$GA ݤo¬bȘ?ki'tZfY͒e7ۓ QQg;+ >jWp :N_T߮C\J}F(WS^ |QKz.3Xa#Լl iÐה(uW '/YD)Pj*U݂hvx!wMkƩ)԰4 _K=u'nFT6ܾx7ɵྒྷ2krWvˬ7)"VzW׫BVJI]R^k:V|ᇪY!ݧh&^tRp0 WJ*)!=i(@Z{T%$"Z`6buϼAA_ иŌ/3ހ`GȓHFܚ:U4Xo]ݱX$PSx_F. >ۇ+ Nc!P^K?MI`KyvxUp/l:忬IhB-qGN,t8co~-*+zRBZ&_ɾchAۗ&{Adl+y(83zPjRk6A& Il^M0H܃$|OD9pQt2m!jDxE쩔 '->1G$ɹCk_1 4BzYץb/rvtpDves-Xl U'SsɅ{Fe^Cd>X jF?QᕌjA*  ` /Xx> m@u$y+djDg&Cn)a~cp<2V0_P-0Y5Ikv!FC2EÐbAjb;ґF̺kۄWodAPj6uw}9kmB[e-pvDMx{G V MwܠA#Ix܄Ѽ$%ȫ_f/d~p}N~@Qmfsk p '?A%q9gϚp2$(S=ۉKІ s2&!2c> 7?$OW5\l_#TBE\l%VGCV@U Y -kfd@BȃkNӒjKW2h5e jT.;8p&j|굇VnK5Y`΋U3~DU[4?ԙ axUS!;H$N />Y2;aoηoYI\pi Su3ZN|AQ ⯪rxc~Њ.>eŶfٸg iJ!e[fd~҄љe44Qגk (hn(\h~kuӳ Ȯb,xU-sǺ8OvQda='m6Gab UJ[_ lI42=XBhgɾbT:ֹl|<Fqu9-#c5<2rl}nh\ 6M#'T4J#7ڢ_im˸K$v' %iǹP:sv쩫)9.|Te M9AcFڕ@17%f%7or&,V"(u BcD8PW! 7yHh|+lJM(Ȱ 0Ōɼb:[󵗱]ů>}@ Ƚr\wrZ'M-t\E5z6Fw,)ޛy@,e9pv́XфR(ZQ'.M|(98G-̌?SHa[@^pQIZSnQhhQ@ Nf ~PG) qM XצhJ5b͜QC̋UD[{4>puHK ɏ(!_rH dLUebyʁ%QU-:+jeI'@V*ŠD:uÚa˗x49lUL}(OaͫW$0N)fI)@ y\%/[eYUT-wLl330vF twm@:IifDΗ9D?{>k7[o& l<5WUT VX4M.gWGX Јar`[l+4nd,/saKlA:6f)Ey.m3)+2qLL™ X򷉕;lP Co~e<(-8y 12ubpţhlUǮ=/"ixP1$6)K yyg[zhڇ4wW tu`5{6Ch'1J}d=tNp嬃yJ.e$4y\dvE"(_3m:]/SPM4t!̎ObXFi_](S d(<|{ rKjJ 3Ģg$2eEtMT!uD-AHv;#nlJ€Fڐ5d$m7ԦfOj7 ΡJiw)$^}]0ϋETh5ӿ^z zxCg,` @6hh+lβB3/kӠZVJ*63*S @[I꩒IEK |pmW/t\k ?O*~rO< rׂѓGoaHay6^&)2OClJR-;+6I2=R|4\fnU'I.A?V*8ZSJL /$*噙v 1_ OT̰/=@,Ô/e5Q weRmCtZ; v:'FNO:v{{BgZ:n\:V2za'IQ}tLg?/>g?yDϸ*Hb83#42-B#54YT yS߱WhE= W/[&JVl`$N |c-,ziUU;L혦hN9&Goz?@B ge"NqKU(M;.O`Ε0sc:<P[ݺQ42`+*R(1q0VYg}:< #ƺln؞fN Aj7)4Q|ZR6CUu05ppIͯW?!NreYr~?P皳lZf<n! x2IrG"@קi 󜼩苻q}N3H4d`]3ǯ1jE\oSy})Wm)a1^EP8Db0&sjxW T/ r$1 0H`avvj5>[ɫFx/>ңhg.++{ O"XT)a9)= sxMbKW&`X-824\~l>h>D- 8`SDyV:*>lNkR h/8VQHLp QV-zTs"G|{P褫G%G7Uv2;; vzyGEރ *=0RPm3M6 h%dxπtqY*QZ$kM 3zc = hZ:Rm2y뱹"W_Jsto Ժ)sWm[lHr8i3N44b}Rqpʢcid;:NY}ȷn)뿽o"0^?h'ݹg2l,.tQDQ,牲, (;eU^ RZ׋U|gX~pMŧʙW:GL &g M8keԀTr#T'mx0s$;Bʚz>'lך'\jf($s \f_~oHԣ~L2dEZNE\x CZ(M#Ʉ֯l+7AQPwuK~MO J@-5*#oLFOrzOC@{#^Fp{Â)6 7G @Oɝ1}1KYL~IzW ap\I 08ld8ˌ ES^z} {ds`X5%$!JtʍٟKz-Q =>)ksħwOu%AljK=(] Qcچa[y@0/[BtDѽoEX!^>qMWf4@ y%Rb%PKru,xs!RvW+0yaf.4Vp'WhGTR Ys֡R:lY}=Áaf {\JXG{~䱑>3l7>_eILP.aKHDwm#!6]ZΡ@w$as969OP] H<ʻ Dqt#g{jm5Vc=׊- ώ l"oPX\HzJ:IT kKSmgIp C® ȏU:OW58tuǔ&}m]w%IgTNJ jxY(}P޵ENG'2M1Ttڛ[8 `ZC$zXˑ\J<ҶbnM YNnCȒXhͶ6-g:Y!mJXG}'7/wi:ܾ73sFpL/i![v>8&ظ-G\>OB3 #sFm?&e}d3vyYN>l-AR/ SB7\iLStӶ |,ݗQb36:z'}w56'1̐o 5(r#j.ldbr@ף\f.?@k&20t0K+)c9o-2ῚB®?tQ:L6 oŲ+L|۔1 F=i+ Ƹo&4xqvJwM ?0d/CTط4\T*и.XAUJT::*Α%~(h3=B*>k;SQ0v+7˶I셁UE3eB ?HiL gfWPd1~p2Ǒ+9 `iXTt/쉐۳ɨgR0.b籺 /C8b10$;Wq>9O&jn^{imSye5s]!P N-+ѢI1aU+yOkBS--3d?UQ, 5}yLP:Əuecr8s(h+KK}eEťLGB]o tt qO8O#HX,0l?kZ'd@Ӌ\I_N׸q6KTd)3塚Rz[k8ֲHF\?:KYK/ Vځݯl?9yPմpd T(c=bMN:, C)`N3WE2KE/~X`n2@5 aRhQ =w,~ ?!v2S%?sX $ X(aP~D9YГ 2M2~= BV):F lБVU@m@|ߒj)%npJ@/E1B'^ mr9 ^w+淁BWo!1B9&DuൎnW:ɰ;& &yJ/dDY72e w]h fBsZ0?8/?^/sQk`m)-+.dD*֔k!R O82!V?2jy(Vjo ]ѭ|JGoJCMf64y@3gY*dҰV"C @'r";>aHj;r}. R\&I榆G] %x`],s0I9Gǃh7+Z#,7KU&tc<y8vpFc#|Nٔ+MK"YN;{Vr=TjZ'5BMbq9xed PI)Mtp H9 (JTԭk^VS~pSGoXᗤ"ey7Ecm~Hͳ Hy<}"zLdQ,<\6R=UNS876LmBbB8_^*?.k@G'~,Ӄ* 0::v %Z7VsDra5vyNR956>yr@ds{G'z)>Gn:37bdHjq8ۄ6a ^2UEYmyh_x?`jD;,TcPmʖ2M|q^ өHO"\Gfݗ!KZ"Aq5LYl[yAJ׮N{ Lw,o?~ g*Z]s{-"kPLH&SB5Q( F%Pu j\I >b;A]RZA 'uwkk.c ژT]tI@~`윈޶t%ɵ5TeN-T%Ӟrd;>4-?~v>d6Gc@d0H{l+֯j!IId`Ts~Cb`@qFDrp÷DS5ApXj=3G+'_CB˧z,itnxGi~*:ϛ'XICBɢldMKr w@pL,?ctY2v<ʚhK2$_W-~"A9Rs-~;k& =2ͻni '6ֱ%8o8"*(34TZ>@$ T5^ ӱg 65Y0 " ƣ8eݛ1m1 :4I_^ǎỶO0O]Y-J\CX$XY {ؓ0rP/=)@9w تL\ꗷQ`m+篧y[i7 ;E!)֑!(2$P#E\'I}tߠa>*µJ]'fxx d~wX|dOYg>3yխ; k *bYezr[7BQpCI[Gd'j텻'o# OנT'sf G1n)DUO y_8}D&kvogH T< J?fID1y>UB7A,#)8د8JIx),[!Fi!e :T5Jix*bEZMOw `%1X $wGbܥ%Fs JZC Ҽ4` ȇR+Nr\ebeЊN?xmy MASBPͷASʂSKpa{7VdWI ؎ dx0~"X#KJvi?駢$?AOq$w{7E64z 6K.|ޕi_QA s0':#Fsi&j\eLqR R9GD(\S]r (+;^8f 9bZ'-IM˦BM.oH82;:{-81o `.D)~ EVD!+[_j#r<3o4!wN~2_qB iT`<`Ag"o΢-$)N}?zwRDɢM/ % 7zĂxqi ~Td:DM SVcV0oկTc2B71W:x䥳+Elݺ~TrTa,S,OO8y/u=UbK3ٶrJTZ9kw !Ih.$)xmʼ  BhVX@R ~x{3}_X/f҃c qCG֜vjY]a:d5O2*9zSf(4\iqIz.A1N5INc^|htjІq{88XRW;мsF#;};p"F@2&% "Si*ꘗMq` {!:\L`R5C 8'g<#oFFOH! {>J`w)3<.b\g=|Y5&5+SQ.8ll3{B=c۹RYr8q(Vl+NFۤ4 j#e0]_oǶmös5>ތ$gEBas^: Ѐ:B%!L"'_[iK"ֵ10[K0 S ]l)µҝOk#>$V[>yPXv=k.ˋGaw|wID4f4: ;1gb[w(8SRFv)5ySW&V0״-cuehW*x*jo-6ҁ؏=pJQ- S=-k~gM_L@T6Җ)&¯!$^d6C:{VhdW{ޒO{δpȞ$s.I d\-,"a}@“3o.SqM}RsF HqDI]&H>ҋ-4OwV@0t 6rJ~s޷hE gj$Wȧ8Ue:GJ B!3͔GpJn)tZ#BVэ9쫤620괣 1ڶL$Պ6kT6vtu?TWXQ1}e=w̍̏3}1b`q:&r/a8TYkΐ&n%92LxD"Dm8hiQRGci^䄏:zxGHVl/0u'GlNYXUM[ Rv\塗ɛf,Ti/p4¡S"?g}{F7`Gp2*3ʴQ⠱H6묡-=4wEo(( /0׷JFj7.9xm8^QG@bkM{a`1pR. l9gĠhxHݗ +&zśUh{'ˑFSz4>M;CVZm^hNȎC>{! rňbVm5銖 ]-S(Y1H#2Eg9 V.Ymcu4pH}„g m_I)'N(عyЋ0NH--s7˙n !{eGԐ~gR^AE}zŴ \.>}B,9{5ak'®CDH-dv9xG*9 F^0qMh}OH!ķu#l\,?. Im1L!V8PFfLCcֈ κOϪCb@g7-f Xe|S&snc>˧fCpME8 K[$P/nt@̆y?ǚ0iMe\t 4.3e",ᨽ1 YmՇ` =m@OHdjr$힦= R + v m)`\]gaO8^XIZŮZWX L^;Z `:UTMs^#OZlpeV\]*b H)h! ó~yC}ވRg"k[U+~"Uu,d"g戌k+vvfbmrѾ b''0;ɀK U`A"Ndfj34*/=]>w1D CB;t CDH6!1fմYT5HR~cp4w?- {S>PAШtP1|]I~- ;#hS(8u ~DKtRr@7TN]*(4VϹ`jD)RV  `p)]1HUn pr(IDx+֫lzɺ:mtm#к{ 4Mrrr?S38lQ,m8W{ǯtj#~O_G.:^x%A}*7/Wx@U!"7SmvP,ORݥ}5+qXX#qsa"Zv?O\ Y'ZIe蓳@vcm-\y~9lM*kѥ^ q/pOJ#<ĽRhΜɛ1L<6 uK$Z m$0X+R#;^I)uJj[j \F˦O!9`Q fla"bcVvB(GKl!1lGUos jՁʥpޯʼՀO#SZr,<`jH!*NjB@5(h/‘f` 5bwdoEȄܰY $ CQe$Tv 4#5vVzQ-\ :s&b2X;?|D(xMł ጠ ~2>mOsȚ|UDio նWYT]j$#2Gت*YFC(_C5xd [禙 蠜 % ޳yk䯤P) sNodHi//3^!4d5ֵ::-'0HeE5}jo'fOTC ,]7`r\7&u萳 )V/5를8O d@↩|'_#;L\>܂Np~xgE(P-HVԕ끅N(;wQ,ܡ$H 词L>w2t4 y`$ #OiR~*gk ߿R%/DkWINQsg&kAlmL4޼1H 蠯$t0.pv"p`itK&H(Q5ь6q/+ A'IOu@n~$vpԻi,#h,}A(w? xnU)l80֚K-)L>F}S/zYܰ[SH;T,Փ .{2w/wQ-bhTT6?  ]+SE\s9Lv|PpKlouX).OoOz@Ft8aVvz-3kϊ6d,f<#ɚuz'W`IhL),E/K$H=/ A׫,gU`N!\ Ӈ6v? i=:ׯ/{po| BxA9-5.DԭX& ad t9ӌaf;Ԡg/K+f]{&vHWnqxɿrpw/{y=.sqE~I.'ٿVѓ({=ܠ}AUy`+>XZ`{"7~?PX3A߂)?xٱ&!k#/UQ'`҇QWf4&Y7Ұw/@npiMM߲ue0Q1u} N&$|OK' 禎?Cw4.81^[=_2098en{x7'3yktDaD2@>`j,'ک[0kYx24?` mSbBIu3˹,߆jV 3`Xgd^ Qńu:"hub$ k{KcwvTCc:.'rkq9ҩ'kۥ4p1$g>kѕ$*H za}]Ukq59ݓb{>{|&fխop/:ՍBG<Ϙoq^sTdJgq&<`A_AKxC?+e0گZɛ44GJ\7-6[h߹gA -)PJTx҆{@IaRr|3׽&cȃ4[@9e;l? +GQ/^x/faDC.0t¹UVYJ dxǬ@Uqu>ۆGpdfʬc)> UšJQȲeRD1D_YI1WV^E=E֟y7ߛ7 35ȏC8\+Zx(\7Rm`5!RFK1JuuK-W7yd@MD*ޒCyMwm>x{EXqjN绳ZXH]gc zS栛UCVv;bgՅ+4AAJ,;hr z*86L3!OޏtF Xj Rsp}'9}22vPdDc 2^m\;IUYד1_gF/A\"cSztL|(ЌP4| ĐD_3b|s 1. c@|%fw,!3{ҘIf(1.Yf%yz4; |~NZy"쵧AԪTne O`̸^:"w("ݤrG˯O/wGƶUk◜?&O%CDoNkX0TC6HlպK5=^<\GBZv/p-S`8$߆,߉ee5Md曦 x1y'NtavfCRAFjXnp`?ߎ!ZXlpe-:-Yz̷<)LC0q<D$<8u:*ܡ' jk>S\h14,Ty]A'ɧ(2_@|j5pt8R7k̳QBL?N%JeRW9VO 7ZS[TPߙ[ 3j`ue=AvxJdh[7u^nڥ#uPV2HisHSw&WK]5T`ۛx%t~BAۣAw+X/b;۶Vmo3Poxbv*7P8[Dd] )P&Spc6HoRX& )>PPI;Pfb!@8pSř%~_ek+p"|UB\3(xC B,FPMkQby'P?qbʽd1?ap=ژgcV5035q?\tQ%O8]l=ق fHuHJًoSs{.Ay!9'b3×(R9yԆ gh32߫{MnJ"G4n? #E<30BwTъO 1ն!CWDZ(% |?TNQ:plU>>LIMV,CRm} /@(fi}F|ɔ$f(Kq|L#.}Upw^zrA/<%Cѫc /O`=Q OzQ),ױ?TPypl\XJ`D0Lu{{vopmƏ4u_t91t܆[F`8ğcZ9 s\Zv?^'=AC O&+م2Ara$޹Ѡ<1 n/NrR]wf)IJ'Y2`]##Ah#{${ & [ @$@h{ZֳAR0 t^^W5&;Y") {adi3q tB"6 'nUsc.r{$ x4B[JN+!o)J+K0J /KbLbV>棜 > !yMbLYY% g? )M/Sxül$ce=gfI{Ic̺@ab]ު6UF:z v: KhGIսL‚tKxU";r}NM;~J;lזPc@8xm8—m?@f;&G%ŇCBqhVc04?^;g6ciMf*C}/z* UwpVYU4]>/1= %!8YLYʖ3O&"l߹|wjbҤUvMSxY_Z)UnKaޏb2O]lUAt tKzZp(p̖WDXv M^KX/xA*ID { bh }5ҮBv9Rk_Xb<8ĭȾOӥׂc^?Mη}{j ?Jt^K%H)!%~ (*r`n=JzBW3\#a~%t`"IxiGHW{(΀xzh,b,Zb߂xxZc,+1Zs@뎲/э*Wn+&5 w08z^8"vEih %F=~MiH^!$PH:o̅~lyדޙC{w'{o I=kϟ:kpU]JK|mJM?9:LҖT8F?ݪn5YW#%\d# VRzL`iZ"D+gy]F nTXt#Nk \:Ko;>fzK dm E[8"u dO$,}sAK ?sWxV*Hd(A`L, PG0DtM@fpy?xEƛhxMxvoJPי ;F1L,r[{0XT0ԁdg&N@cǒz@ʩP)KW_MQ)?uMg {M,-8;lfM55\" ^d<%2).C)-i*=O=@sxQV2$D)õg'?¨- 6EԖ) #)䣅>~m5yulS0)<~3ܾPrҭwH$xܐK~2tPJv8'pm}Dj?mkK =3JZ1j/{@jeds󂬑{H5BUWF B6#-1$BJQ`5p3Y8*73#i yLUWW<T(F;d4w3YY~N4Lm7OX2g; |q +Zr^^}c%4GiM&|(Xaz %32'74Βb<=A1Gf݅'O`_<zSTոh ;)6yσA϶ϒM.yv{)_E7&y#QhL1õ(FB&ydl2hQ`eWIEF/@/mǚ__pFl>s9BӜAV 7q)`XEϔ@O pl[aFw6P5֤!9C)[E8"R-R}]L7ǥ  ۍU=ӽs4Tb~![@G*Q[o9Cǝ#?\r$r_ @ocr+lLVaއUO@C9KTcӼEK$eBfy1"m ef͓-R \'L&bC6<(|6 kGieG;zE?˙ BpreWWd&bYLbWPmdC""M fکӏH{)Naߓ M.Fs8xDpon"KD[iNSјAЉ˾@` k3'hzEl|nh!X\fBay0t/g-l,>5Z?tPi2:ٴ ;2:)|PjnfNFB4UN0f*WET0T- 6I|9YҌ1A1"Ñ To4p)Z bM&a{DTMRb5s0*B|!w$`'1)UnwrI)|߆yæ xXh԰-DuprycVq2Rd6QY5Q,4;\KDV3Ig #5sTI:^'Fw0k5Ybdֶjt'yJ)W1Le Zn}y8Jql.OrQeδsXZ<=8laot^б }X3a㸵 1h]E7-fv^` PE桭kNuCu%朌ht]ъߠȲGhg>ag0|DY`oU}EEJCX{-;YF++ Ob 'wR7NGFNlxJ]xXv=.ѓ#BtEI89o9[+ר\`M>h2׼! ۜs;PIM.jט8h\} Z|Gb/UCL]%E l*%dx0dRxaS^67ԛĥ*}SM-AM4cZ1BEb&ڬg*Ɲ rD>`}f [lW]:}"0惈Q0u24i^Dt%Q(c +Mg:mrz=1&$kPuH4w-SzoA~6m: [[j, x=g7n)MŁmBY(128l`$4k1|GeaY [&`k%9f(1s_[N6$N24+r <V"Y(gxFw%傮kF~%&9 `VVݯش"$\x1T+oW,> e ٔoO1" &%?'h!:C K]( ="=. Wi0"؍)%5$Gk_zf5:JCH8~h;X3<%[o&ЫX_܂_P;Gm~XpmgIkgæ %AJFt# d6Ρ V٥DYrMRm !v>ikDŽT)Q{AX.IROigԛRy&5MaN$X`F&t/pn#b&CdI+gʥ#OP&ZG̿$GMt_W  I(Bi:W~-@t=n g [0 R {,z^8S}@SZao^ @#Y/$V(hvI\4w}JI5F={}SJ>7ǹM} P?UxzK }&6#Ҭ/R܅ 8ޤiPl3Wmر)Bfg`Ãm "?>:1U3Br6N OבYhڲ #.䄥IMSaژErjrHƕق}!64ua6vmܪNj^{Z4`as+[*FzD_y(Z t† 9L33:F.N:>L E2%xvF*&n[j@%r$K\&[ϛ'1bPC4da A ?`m#ݧnjpw>d)^N1g_ճJq)"0T3l2T̍N<trs!<۝?_,O $ #”k1F Ao WClEps}X;;gd "4i/6t y `V#8C %J- u՗Ut Tgh 83Gii}Or"e|p 5Yo˰0OZДpoFPREZw((8+hbi˲ `|KmQ]QGzƧ?+<))(&uM8'؉~ gE#rȈ 73a-)Ma L{>>,~b ȩ;vk 䤐͈f&J W,PJۯ^:fJ{ [%b'ބ6GZ/lXοFi)2ʑu#K aI=ZZW0٢Jeӄ頒F9ײ_LU#Q"Mk"=4lĒ+\7ljϠ?B)^Z XnM&_?>DeہrDkn*8=6%Dd#-Spqd AüeDP~l6bɢ=uinFڣYRDXeBFy$Q fY Onx"r1Wb$sgG_dZݦ=;pRظ`]m̎'zmHW:*|K3X_*PXEqæm mUS5Dwfem{7c:\ۼA& 9W gy6.cwVǪ?ȫM9E=? B)í9{x>z CE("aϥ!uY}%tVv]lHjk-JNK>cv61 | \ ! }L[Ķ$ ]xqJN/;)[-lI׆'}!]wꭟ"u}^Y,t53 {1fUhfqus`)qD:N*xC8pzqԊv5kJIY:\\}O]1t1^FCԫ>+Uٴ5_\Eݣg H2P@/#*N25Ote4b=KڣBCcr/mts8$ӘI- qYL>O;{*cjva{Z4cpZ=b 8f|<Ȋr;47h.y!{Eͦ&~KiQ0T"e&sUfKv\.eDm"q%5ְ13͈V/^=Ccye =Cg(i[ݸdcj /R z"f˛HNqYrLV[  U]/aA6y]@,GX#P+ rIa=/}r j0A7s{-opj5Eeo_J|m@'eC 6>Qʄf8 X%%bUH O,8 ANGԎv;& <45o 3$-NL˝U}7.PH6qdCb" hnѕӲtqPRgj=;6Iygn)Qم+}QVwgy0(4 EdMfрIU5m;0ʠ>A!'="VSKw/,?%ضc?@=6Y8G< '28n],fnw]8qckajJ!P1;tc:[›3N25;.!Z3_llG掝)DzKJSOt!sv=JǨcbhK*7Z)"td6^E "Dj9P(| {S2?,,$ɩ 3up#U|梅)ĝ4JwŖ,uCN50!CB_7 $cv8aYo_iJwmq{L$ 9ܙ<kg#^^)dLgOVxo$ΪZ!2`t2"ޯS')r2$ KNjmI"hWfKbX?e8ܻU#Ӆ=@宫[g- VX>.8?OSWdZr7ԅok#L?2K}RsފCcguȥotpG(Ǚ2!l&~mMPҒPk뼉sNM_}Q2-F#xu2 =c݉O CPW D$>iK1k<)1T{C3^!]ؗc!s[& V7j:K!AERWS|\J0RX'F\L*,&^:EBU{>H"b'9Y~Bʶ}$P%c^+K2d)mDUxʌ'UE)6t"h MSf Vɾ w6SKGO"cUC?Z:#\{#5fgd($?7s2Xwt'V,&%jyU:n,x0u_/^_R mCW8̶ j9%Q{×0E^o$ @FJ!գ >?KXV9A*3Å8+-wn[W||]%Q~&t:f ʫUPc/yGI9. !^pSޙTf%: 0Lft~#ն'it+FÜ}y/S.FpK4`jYSb X w\g3LyG.c1=U^bIÉbq ?bs]騲ɄASd3O2AOTm9# `3a+~cmnLdIZu< M-nn&m88>3HhGOͪ*ԪMw5Eo} qNZ+wJ/ARSl\> jatt5{b4z4%I/6uF}}7O  ̇f ) F`Cfpet캓ΑE;96O)ҖEu}ҌHA[XU_u4w`44>[(3Kaw 7nObM%-~ OK;_c<΀[Z?D3tE6[x~f`I J?O*Rh裕.cc X囝|VCq@|&ʍ㶇^d nqᵮ˧I6%5(w69dK֙I?1sO!ڞ ab=ITZW@;42&7;ǚ/mB{10W|ثH:#ou3Vk!p`N.`$rѭ,PT5l= ץd"(|_qTln"^cj=(砬.XTGKt'mvEf.Km}I~*(1TBfKăe #E*VKĮAf̬fb??3߭Lل:i\.{R*4tx>YP&Oջ$+}Mu=@h\  ;xm_!zn(4u%L 1=e{fpz[OQ^y/h$ZS [ݯT[#WnOlt ئx d*//Et軆V-\lf- = a \ӭo 9ok!ԚKBWqTo4 L?;o 0&i4-z]9ݐmHB|VtԺ6B vMBܶ!=ܒ:Z3'C<'9Z-'@']NgI|Gzo ?st}l`k *IҼoH 0bim*ɘ)ذv]0U-NE~QBѻ}|WM$;'g9%=RM8R/1 l`xBBr @ωa+* ?kuAιYs"Y$r/:xFr#O{MzSG@y+ge5EOz+(RI"B:'τזּD/s_LNPQP)1:iꢌ?KF,(̢8QJ ҈iIMNPUn.1 ;:kR7Dψmfiw t4r-kAĨ@D[oEf'NUb3֨ZTvoKԫ>T:Q4/jAictSwdMFm\Ӏ},{HcI"F3&uk6˜wHDK0IT B'_N0^w>/g"+]ңq v`9 |k5|RzƇRtcmDMh"␼!Usvh|LZ6&MܲIdAxpav-6)cz#wX:_V=|/G 3U&Vn1R'#WTAꆂ35m SY){EBJ6{k%=Λ"k\(d֌Uu Y+|Z7ٿS)Uu6X:[[B=^E_QsuRr#ت=μp)Aof Z<-KX[ބ%6)XGfm0);/5 wA]$\Uk^YL3ׯ/{mّW'K?acXS~=VK(ҧ^X߭fUype#c5=l]B.c}uݺ Nъ+C~\u-L,f1{c =Pqo:'ѓ8yl,^?x{^9^H$TLr4V ={fϯdN5&Oo*ŗ:6<<JZxPAиײ46ہ[O"!ZoљX>).ba[oi&U~MJr?V [_=Ƒу+ӍRJ͚Us,b) d- ~~Y0,Q`MPDe{WƢs~x:v e{Y ![UuVMj}fwƨȔhzƢ,]ils] 's>ff,o0jɍnJ`S˱+Q TE|uSۇsȌSN8f1#5Ng9 ?60r [R4A܇QK8]rM~_<<ы2Z]|Z _ s"5Kӄ95 xZiRq*vMD|9 !#*O X.ࠫAO*?- Pss[ɳ)/nRHJy,14ѶF{"@al.Nmɻ"eQ7B;0A8ΝCtxf$&"cy" H\nS(*Z~8z9 u-Iy!r:At8Q?%{wvaNH hB4/JyOJݦWIVT1ܱ"KOwݒ!ޘ"@ q:Dar\NͪXt0&Nsv ƉR BR|P:r%Fu-8-#S$`-f;@u g~АNhoUeѰ?bKqqL(⏠ֶ آIƅ;rH..no~ N25%\ߍsm8;{IFIAa,""ωi@蘳 ves+-h6Gɛw .VW8rw qh]oӺ5=sN$O0i#=ӫYk3gW2H,v, uV #p_ L*EN& W$ɋ>XUs[$sj|y;RhH1G,?:57E-">"nTGУʁNpu IȖBkDzwuO^%e69m\&(D"_H5Ukͳ-YBvՓR܉H=[32u#|HkiәX^pf)XQ:qí*HϰPbB>$ĨJ|ߘ-Uwkf?ۘ.ʦu5}Hv>E_zx< CQ NU3iNg m2`3>-H7}}r-['R X\F#{G>?P.r_\Zܒc^f"=)*ΐmjژD}oʬzljZm L྽a`o{bsFS%wk9lo-K*?6/&d&;Du@i(M~Q%&:NRh$:+2@EwbyNN,DpyP]4+йI H觢岂!ߵt?p*zUY Ytx~c0} klqAꩨҗG@S79]kXVBSCG 1v}"j@shQHszqP88PJQu fx$:`lC0K㣐c_ Y*_yӦ4M&d`LqvRv> M8t>mCO_J%Jm@K Vh/,f.; ^MbRiƘ"ɵAhiOO DžVT&#`_2GBlOi+ѥ۩,0U\7ιA-/78Kp\FFNymj<=375B`N IEU?ƽǾgVY3xw$?!WEL#;4v3  HAZOJhn VPh3a0vW= P M 0TsP<ârݢ 8{T2tB#T`Nyar"EM?T;@+.Y4P'"y~}*̠p~[tpOsn6;0fp.n:'ԩcAUSh?^8 ;Fվ`|H1D/pbt|g9"zS᭾q+ƀ{FMHJUטm`)@=]o/ilˤ=, p)OC*j ,ߑA;F^ie.aKmՙ'JL>J}2bf(3濩+濴 ERעNaб؁ζhs#-WtzMo,eU/O]j/}(0T {޼8jBGu%L,"@wzH`nZFd`X[x]B}c osjr4ǧDzD~!ctClJؘܳt]xdAWֻd*tӋmf)&^7}XN:xM^sdǢ]D/Q c2^ y&)&G|3NNPEyU)r(BaPp;7a t럄@!Cw9CuE6np}-:y2;4;$?m) z16 5yqwi2S8>vtt4-]YSEjm`=Öt$Ǵ1l~Aea+dymIwlV&Rz4"x_D =fsk$rئ}zۆG@'V$Y C(<WN`ڹ3^lao[Cm n/ ,kv!WE3"[\ c^ RT0 eEpY?rAԷ= Cp"P|ȇKS_ޅKu-aE\|A[eaÜ2bfO~Qm 83_$E3Ggj9]/j-Y3b8G[xhZ֏r9hkhZܠfJ@+*/v>~}TvR"mk.'~? w6VLaS\վZӈՋ\mBCBͿ .׺k@6-qIAR]2$aŦk`2:U6A@AfMӟ~!>HI m%2Y.=cB읬:B{>MWX( E~[xzaS.&bhTo.iKݹ6F5TaU8 \`"Ojyu{KsiXy%!-F]<%?4O%\0}WZv(hk}Xi͠7-74R9*eC}bҙD|H}zq`_Hrq=}ty^{2X9,&+ %ZZBj,Pw7k,AX,qU" c@&B>8$O17S<8HdXO$vɜe4cxō~ʈluHhJT|)ȕs" ٚ2_aTǽGbdν7ypSi5Z-, wALb"IBw{tAމ{OJ@ BpbAŘks`襳Ok Eۤ:q-vƛA!쒶<[܀@PT$q)v'07B/V~2-omGCMkࠁP W{.=T-jz5E4=՛VkCu+ @YLMkKWᳶj&wNRElN$&YyA@N#bcS 0[~I^!AdgQ@W7)v5A(W!#0rǣYL/x;sJt&{f֘؏4{]5\_#KP_ ZeT_r1BMlZaߣD*?d46#wC# }uU`xt6Om+tJ7Q6a1'G&1?}{#`4ǍM*tbx'FMZD"@N_RMSs9Fh .pXv$+ܣp<##FIC4Z1rx c+VZqfypd9~-GjK X\Nj{b[e)^/ %Jg4o^nB?;s [ voӂ঩*wG?$| ,.јJRa"ϱ(,ޝ8Y βF|3|YCgi#IґD#ytĘ/B-wp"4Oj,%>e}!ʪ}ͽ m@'Κ/._qܒC$F:ևjLkCJMD0cGa0X``4)T=GJ7Rfz5G -ݝ6ՠ9 Cz@&q{?OM2RvQ4 m#*wkEL#(ԓ,"LW{2h7aeh0_ :aHSEVn1 g##[K7*\VwaA- UҴ:V!;q>1B vG=yTP^M+}pٜD踙_PWAh  *T@jl쟨#\V)^x/\ZT {]z˷J8ʌ:LJ*!T&Hgm] çEts>Oj?!gD' >oY0d6olF:0֠e&XZG>D2W;L+VPwbi2"- 6V+ġe/UKL| +:>|b4>m4:n IՈyDKA:tEyH|̞eޜePI@dL]3Fi:eԂKc`/0cwSVJu2gb;\#|FDm\AF"K6S"'^ˑ\q7{ -fB/ [8ߢI{ H) }dL"5řΨ%=IBXpbeTW#aOC.as:t*'/t^{>")"]+ ʠJd?b,hC琡It!0 gk[CrVdH`%k>[/ֵl?R\8_.g(dit/x!rX Z]()"nK PNm[Sj.l*py uM7^Z6YfAfAc/E1 k ʲ) LL̑8I5)bK@a] \oI]T[LlQ_MO_EGŪ*j*4U$3 I>E=a1'Cv5)x6>u5Zl,wv /PU"y@Ҕ zȯy"ҘҎ1ܚM F+ԌݽQj.x[|D=8tOJ^.܌anݖ zATY]ç)`hlB6xp<:Gw{ƐĪ3'$w~Uw1OC&rg~$bjGvOt1L{79*3dk X\(dMex7!vV'1HsfaMo(vp@t њ~Y ?Tj`t glSE >2S5M;-y[6 ]^zwê}×}eao#o52$cVዟ!ꐎ򹞽}:M~A,%%Ȅ]<پox}ܥ;x؄Diw4rp0]@xZUڋ>-gqqj=M%5O,Og"gnpz|_pBL 6uz"=mP9v2?+{F?҄cK7HkH=_"EѮ3w|\/\mw紪:yS:ViU+[Co";B[T2niRr=ںdYsfeSC'9|(V&NMG5yf9Im0HlRcfQ|(33YsW0*%N \4' #U <U&ww#:0PHV) Ǻ2c+pSHh [B)SQ'DRjawoEzχI͵R;E+ ߡPq䝳]eȠ=Xoug,D/DI?du҉/@yOn8,4kV8__cуnsyMB)š){'4nnSu8id=`U@>}BB7~ʞ$)/ zҟ[' N묂WpA ,L[2dC;eGoRS8A<99o)$(4s923M2jQ0AiPX ; 2͙st}biD`r-7cM7bҊ4B\|x9Ch%_B1Mģlғe G!P.cj.9T npaO[ZBy̠[F`:f智)͟نG9sp-ScuOy!%l!V|)+/&"{ĵq,0vfIoٱ2t|żuXlQi& ;J#Gd]/2[YmS |5.=@ҫ<ޮa|5XD@wrJ:O*%ѥ G߈&d,+ j^a +_ωo8܏GH<߲'~qOme&Re@ Xkq"5l}M+L&qDU&>Н$'C! N>Dא^~Z ӵ(>f І]sk0ȒU.N.ua?Ռ|C@a@0SaW6{.EU9jFREDW4|GGO0o{<+7j7|4rx[d\,BPA1j)ڸF:z8s5?>}HEmr?T,Egj$XoOA(:\RGeNJIg:Qqi9\|'Z+He0TނQ4(a&JjҢtz(RS9^|ZORd.w^8<طD!)%K4 aK{ VBo*n"#1kq/`cCL:v`s).+ 툇40CcwZlN2oֺ]F]%8AG4:a=wu!,W .dc0G.eꎢ/#HCQfqnI '4n ~Dwú߆د# |=cl -3梈I2M-l 2cн2͐8ī҉/51<NRHPӻԗPeAboR/&;NF- ~0H/ ~6s`qZOM-3C9$xĮ2'}c&5 -:%Ne)|݃)¦G~~t6nCGf3wX1b>78Larx% 2)8R^lŴN=)Pa C0,V;"d7w>>96Ja W1Sf6>B,!3~q;8lv~sqȋ K|T%TB hIJS;z̶Is(u}!}X| >bukj8BGtlGvf W$fΌ7y75I`N~CuI6qy׻g9^sBN+#Q1=/"_MF Hҝ6ē>U0-lܮi Q~ 3EMc/LUجgg:?*OЀU:ʂ`_,wLqzf@ȼ+61}6@rO;& 11qP};EiߢmPP>˽&v{KAs!]PH褂wǟsoalTU+L6(F+w.b$:*.|zh OC?ck@ƅ Pf_`A:ަ֞ҡU\6gx@;% zqhjxKwVdۑZ:NIpAAN'lՋ^?X9r31}3z#YaA ;fF<Ē/g`kYN\y_tuOo!U,hb$LFwvV]zCҞx \u`f] #GNѪ{pFĺ#-޽ ptu_r: 0-OEg[Q}> `j Wښ9ճ^($1+ 2ڲSbIv8q$EWguǡ8`~FHQ^kK`1n&uBG݈d7d|2@& %KTei=7)8 bL"b(  ߊ JHMw%d!}8+_toOzE*X{5r^.xCB:Zg" X|AETiY8%X fiagZ{M"$f8vS`&w/EK# P "9FR9Cl%nL,w'[k:-Ta635!:>audCjqj0|?fRbbA=Dž sZgtEXY?u,JС] OǜkX,^Ԍh*20 UTHN`ӻ&!i)Fӛ nN'%+b~u^ U  2I@T,LS:Wʺu9R ͘a^3Pc x*uj0oTEb嘼JPI`xm C|):CUa\h>,jX].޹P_nTOxX960I랺Wم$hlYDi{`Y%(O۪g>%F5hơ"揢u!H!J"d%$^tJ8xL>iȵ1MnWI_0ѭʓqI`.'*|)ȟTH%Q&jx̞Ʃv\ K(`^쪖W}kH?T"{q2+{3MyWNm߆Epd'buI't蕬OMH ].E2K#@bYPzkYC>[ƛH33^2boWJέ..U7\m o":zm-̉Ǎ7'v+l4s9BetV(P}:<ɐ\ۛwͭ/0b%Fr Q!SHUr^`y~llECFG{= ^hO4U~nTnVcE#IvK K.ޣ+C&b U]qX'w Z`$ [FKYT~B{ 3ۥ{m hL騤GIWxXS,ΐ!z @HJGB\JFO%F&g?hF eǥ1|pee{ZOj}_3S6&xoލyN.W BX낑m,2Z*R+tcIq-ⰓjגQBthZ6p &gP]xW\R!$#l]-C[]%Y-nLbbسLX]apWGLq&KZQ6cԗ?w0)|++Br/ن,lxH}|NfE"IrPF)L(.'Fk_\sX 5̷Juk>im)_$jt5F{? k<_d?xJ\+\q07PT/GoZ|bKAiMgSCqik;f5HVT 0}GcA12I$S g]$߱aʋqh@co.Lb,5%kgzJ[ޤ4 O0!< "{LPt8v=<% ,T?sH9MRWF [}ɆOMnÊ5 ,ڙz"fZK4B\Esٽ~R?帵!80J|ϴp2,-c!RL6Yah9Pz7/Φ54yPrm8~Խ}ސnO©YYovr}7/gb=FUyeM]G$)S^ ĮiX,GCvFkMb[a )-/[4W Ɯ bk*%4B1i'14RWPIY2 Ӫ#G}Gq(L̾#U'YUz9O°=D1oDˎƖ{ԲYH`O{!B8OgW@Tu ah;Gx xj4Ei|N9h0NlFNnhn'{qH䱥DS Nn gGݼ;[ ViJUfЅU=C'Hr^ii6T0U.`7Tc_jJ[#`0 18򇊂Y/_s*}XΠ9LjsO!%re̐vI>7_!Σ(:3aR\{RR-; nRX,ډQFtGE.vwGp?6a7'T&Ȋ]Lyfk$8jy/KA^r {[hgгL٣oXӷ<^kKah pu7>'gYI0SryC2Fh/>],1DLK֮҆a鍽R @&̝4p8`tIx%cy=[3`}{{~ #lYx^gwg({Z&SAV5OMԜ"` 68P4+9R-Zsl\~OWrtٖ6fhv5HAIymԷ浍῍&xj91 ]6 3 9+1Ks۝ ዲ -$2DU}Q̖Ny_nS&$3Řk(u+s# 7 Z)4 [#q vHZ5̮\Ɵ6 @֩ !XiٌHIZВB<)KhgB{2;ro_UJW )(fQNz@79,؇Df|WgzʰX6ܣʷuo盧,_Ei ELY\el@irYH6sFNۼgӡ6vPQ^'2ڕ f:Mڟ(.#ɔՕz/x`|KwNI`>R |ڶOF5+-h-j #pAAHφu*Ok˜&>5ĥ#R5EXw5K7qx;>~s;"ĢIWrJ2i}oCɋņ[v"g5'(qAAOW!2nO_~O^K-Bc҂ܗ:D]iLBܖmEW. C1ߞ/뽶ue4nj'TVD L7pRԥ$7F&i*ڻ00ʋM(b/?V=KfN6p(RͣX[-XRzAs 6BK<8`U9 ۷FF̭o !..)y\gfx B Yg;~JqMdsϞU[ğW93{ "la{ѓո% 9/25>/f+Ӑgm.ho teM7BπCYǬ# 1("d*Q}4-TڤI2 Jh^`T"tCZyaAy9ˤHt rr>GŤ8ry[a3SgD?)lh0Z2P͛\qWb ǧmÊl>|R(.s|> 8]Q ۷]q6nT=zc-m=rF:nM= W ՌiAH1EOlJ(ԭRwLcdEFOq$)Xz<k<`;TA GoD ~1-`՜_z?'^Y1ow|$>g#EZ^whBV7$抿4{800?y>qr% vG⃩q\&nFշU5nɯ"be,Nσ,K0Q ^?H-y 5ܼ)-$MljdvW^QT^:6twZ [c'3(:K32P,tJ7 HP|]w)ձMq/)Nڞx\nI~9,ᾼ7,ZHsݼ ٸguu׵y'P`Jf@Z~co n*G#16J5~CTDrzJ%ܙP^6E4ܶFՃ Vճ3"կK`cC{`xVKW(u,'eF.ӎTg-ǹj]WuB tҔPӡ}v\5J x8˥a('L׳TˬJfʐJ$ ,?P`Xf7NAk$f'A鹜LvcReU]*.8iGF;a5 vf #Lkl*?C75 ciB|0rhΌyx`+Ū%"iz|X/|dn'fɴGuJtJ"xyxJ`7ik,+.,mpb6bz;+ PPz%4 .f!oAǔQիgKyJӬ*ob:,d=*4X\I&*PgO!ngǝ"Y0!r㾋) WY0 {\f:ml6d1LAXQ#d1[;|ERθ1[IQd`2(38TkH38z΢ |2kԈ3~kbVb358vg+Jppc~h`H9.Nlvv4h q\Pҗ@L2܁)ҥ88g#>XjxJ8u9_R|_ X%0= *k>gr7bU>ˆ_E<9*hu06h"wZsYg4[/\(ɦ{<'1SUN[Z3,Y2AK8#iY0z_X/"2G?qHt:r+ȿ5ÝV4g- =Y(>9pROO[*z %ryzpiOuj5Cle9{^\j9Tk:2㿩9?ƌUlfxB|o =m׌2>:mwjPڞq|C(,|z5ysr!ᇡy/f?uU'H9&G&QD!]]c=Bf;GBGszη{7PVb^30}O`N+PtYMʵ=?^/@=H,)LqT w@ï96 ~ H{k+ҝwz Alxl?A<ܟq$.:VyevtV[J\ȯ~vj5@edfOcb"A<ʫLx(BH5O[!Gitn;s'# (v6|مTIsS?l_[Z%)TT}G 'dzڣ"r$3uʕ 颡h~tMu;a=k>Y8AxV*!\٢OCײ1G‡t:tPPeRe?{kArW ྭD"WS+|)<2' 8[h]Ua'K<2ՅgjLH*ə{,;/bmc+-౉e=oBZh%ET<r -}*<-,NmqAKYKf$(ji52'{9Q xf|ٜ>\!'u'\g[avZ0,?d_] ^0d"was;b$AYnk?L/k>YcDyCgN('vñ}p;lY\P_|ډB~FUljC/kx 5v<*(QR!ŪDl jBH[Z6k/TtPr?8yцQf#Dz a@ʞcV%B#lqU@ǸCaObWݰg$4i&z*/ "\ո6F/Ei߸ߨ;LB1"ͣ-;nxS(8 o5!Ca2A^&lY?) ̉:4p?I$~ސAa*<ɫnToE%%(i:9v: 0F8p/K\v|j%% ?!{z+עpE\܀J'Z;Do?2:0}$g5Ib |X<(n7/7(5y)Sa`FXx)e~rC78b^һ$x0=FN7#`hZ0򧷫8oU4rp :@(J52NXS$T>8,;aPP1B>[ϰNzيj/@of?{J%r˞Q'}8NX&8*b>JW3zJ)R*W[v8 ȑWg& MFDZԖP0Z bm%J/64xP\16yGJ6!+ojsV- xD3Ò޸X% [ ˟SC%Cw a+r n2ϩ9&!{PO#v4Rl$ibsоٔNQxiR2g~_{ΠgT J>0a*r-AO6;BiY5/H8 sQ?5_|bӷyi/9UaoVx5 4"gktz00Ɣ+jPIWYMegE-”U˙"p(u { ƣ 2uG-Q0YqiC0)Ī 9!)άydȪ8 1.X3LPRP0IBgdjUx#Jr[Rñ 4sA^pIhs-6?Z_"t=D(%߷u?D'.i! _,Xz DPN W: Qgo[;;mY, {SKG =?BM}g<6y%+Bp釢:qMQz&KƛPn ] )py$ G Ӈn3=14;ge7$cϴc)?n/dK`o˼!"îo>:`|8*֧YR9sNU-dLZrۣylOn;ҨXv> ]~Щx-^- 01,i ˚D5xHPiN0}ʁbf[͏φa?Ǧ4AG%5tLk?<^i 8%`ByL["jWfԋ-_-AxڸF-m%#Ў k|'_̍+mn1fܔ 2uR{t9qZƃ;^t6=BزgfZB%QzYW us៼ZR$gu5?o>ϴЏz~},7jե83QzsDNKu '` M&5.*TN;[|.y |Kz=[dx 8zu¨m0, ? b#{N@;mf.o(㉆ò \eȈUQ+^`.hKMS!X0:h`:J pAk+}W?aT6kZ?8ND|Im㺹ı< {*ɟ VnKc?2aCUqIQ1Әe5s}]?dLy4W ƥ$z\/:!Eb4QYZ Y3'Q)?DeԌ/ULsBg3؎d8ڿO9yFC;|J0bmB$**i|]R[izbp|:: )pHp,Y\$ )f[ CnX-thgQ9hr9 oV$U'E8uɼ0O~'*N R^˂a!h c 1v#o <}4%-bGʀ_6o# P_09O=Uʵ4_͌p&O:8 XȝIg 9\bYzdf3 `3gRE-(2@gҬ@_R+fo­ Nl~3}:WaB5Q X 1ď ֡|-,$!:&Zͣ {{fqק/W|Rmy#H&y vi\V.}>kKW#rΗx89;:.RRG8XK#)ugg%v˲ErZ1 *j*_D-O-llb-ՐXsZv)!AU⩔4'`~Mlݮh|;urfӒض8}B8B`//= ?Q1_G&KWb=y ͙jn3qǦTLoFԉϗ&(8ݤ~iMkh8BG3gVTEB?5AM v2ݵG<e<< &%kk7W ܭ֎`9XåDӟ7ͨ9򘏿Q#9_.5r/-N4fU*U@'$缞a>mF<e['~>ё Ⱥi_lVXUkG=(]CeZoC'@FZDX^J2 yvsË!z yz.砃~I#TP5rg~/lqt60:oT[|"c촴xʒtlwHSOh5M@Ok'W+#?1-\a$7U/h|EX#jy ƓK/=Ƒ6"-H;i{D:!9u.);5{4ڸ!pISX`!C+ c:\b `l*7[7G)1yOgtDnVeVPmWFw(qp磋;ojؙ! D8&(%Ub .e2g_W{OcNH`B󌑤F-piL4!:]ȿB* ׭,19ID!jVa1Z 5%{%[ [sGoeigg:=~4A}o'K;̶R{)LXJk @MQۧ9H%Z,uOӛʟ?k~xLNK鱵~~zZ*c% 9!6H>]+|v9xl$뚉@YM_͠WFY\39&ӰNuu=)j;-xb[q@ ʋ pef[EPuUٟ! Σ.47].e*fKOThz=Ć/?.zظxxJp wgۘe$7Ö9P;޶|UK̆1AG`lisYf95a~ut9woxP*0ί,嶻u|1=F@4پ2&Q6 hkp:* &DK@k'ڼas=AjȐf8/3A0VIEh߯A+BvluIhIu>#aFjGN49"=ݝm^zBH$hOM$n βՙץ^#=0k!G51K*M!L3`)iMa~\gD#{0ZrÑ\X+Qּjh F5)y)id'Sz /r_ݑV`f )@R&(\RsV|-`%XnE _lÂ4gxaR)aqVoWvA( ;UKjKG'}Mb6D Fo_=eQ&a^ub `LD%#V ]: g57,i~:ͬFc{ᑮ!wlj f}|v^3嶈\[ *yK*g#rKre: a>R\Aq3;64(?}()#c'CTIXS)d1y$<!^UGT\q.̴FINgIg# <XS#HRFO_ql~f|*dr):/ũC!OU~Tv Kcj\- *V=-AwV=~/G@̌{C}ϖM CȫO}϶Fw?\*_OL.dGhB9rr*JwP:1.rVgR0,?pp;+RCr9$e^/Omn0j`7f:_ !_'`hVI;%B9+H(cWhVD2·:v]|FYւn:Ka;tTS7ƀ;=#O MϧRmgDEd$TyK2MiiXHV(#3ۼgB>{~ן%sYW9A@Oe MAwAZ|)+e<ڇ[V {_Dx0#50bY NVe6+Γn4S{H$ rP#kc}gǖNS7wIQ3qwǍ<4{c`&L$@8]9w W/Ni~ɖe^X(Ӽ-n?H!;idẜ~R3uHZu@@; FVRz MFӴU1;f؃9tĒHM"όN\F~ΗOᆬMrOZJbvkTaG(* 0J 9! `1t=I@xBBUy:LOI\u lT Oi = >N*Óe4#fB'@`JE> Aih/`y=h#ޮ0pE}̴//r)?puۻH9?9 B\51"i\j3F{(rzU:0V2o|27@~KoJ׺z&Z¤ycBVjFt=6daDv*h- ;F}q]ڍv!*u(BPb`禒48:sZ$jp"̰֫t+.y!Oox]i+ 45AFq I s5^LȊҵU8 x>zHo; ==q#H% yw׭u#o٣SD0+Z^NEpp #<’gr#TӦ?ѣݣUh 0DĴ␐`94<(zIH#/oO4Yo+ 1yRĈm{(r@ 4wT) w"Y[ŭ\Dsi2Z?QnƖTW̯̉MBh}83>8alfqtsN1@Cdjٺ&b*S#du^}ä GJ垨`Wmu᝙׻1 lH AwEJwVo Q2Ne.^o;YJx?۫.+PpշkݗWtiK UX o c AEgfNk2]Sw!)MA/n;ûa{ؑ J 8? #_(') kUQA$鮯_[p3O;d.J)+7U 4ea,'Ɋ٢P' ;J'CPuI1b`vi[2BR7OS*DG=$mBok)[qvgeêȯ,$r[( {foyٯ9/°JqTIOshU@cOOeH(bxq+٢X"(( 1QM5l^!*A.;+2B,պN0 Waܦm婊HN?h#^AmdP%A}x Ԛq Fpvvp\@TmީK3pv|KrT" QS 2>$\.VDEJ a]3TRNt 2H"]0vccO-wlYA"t `SSkEŕ0 98#d'ʡxV{=9e㳪:y\T]~T &*(R+k̶jzΌQB#2jf5j,0ȍ|8NL>9e`Ꮚ?HVHzͣۯ[ϿxDO};JH!C1}h:,4c:AFe VLKܑXmT:]_k͑4JC?Jv=?a3T4x{_0;TWjhbNҷ>ݶ)\9\ װ(V{V=Xi}< wTp"nT>T SBD|.n Ao:A1 r>:惈/7rբɉM2.)͖`TŨShU7i%:ٱ Nqgy"#$╶ \ٳ9~WaSe/HFJ\2]Rg!+P1d}QbI`5f`4ިP2J Mc #n9w w1'Z?=~&r!*qbk+3;寺kT\gQ?zn X{~iqkc`I _x+mJҘ%*C"(jd+~ÝW0d+&2&[:cY R\.2(J̨u\:\w3 (1ΝQ^"Zv %O~H;̦2!}f!6 0KiNd h{¶"tAMUjJPOf>̜{a{mл;ǝ)i4\ݤ!ԵCŌ\7j04Ŗz×DbV+wϻrMyRѶE=z\D?k,5d͔^ׇZtμ.vT)oA.HoQqrb2qzvV&YWULm!Y2Ex4A1cuRRsEgrbuJc߷_.\fs= xuzZ#;7]sE Iќz$K2pdO)pS#&@b(}8o{/{g0Yt2Zfږc^]{isKN56 Qe?k%tL#=„I>H*{=4dHzVH984$9IRDNvc膠er\QL\xf晢ؘI_5 =_jG׃Zik uX3PfIMˋx|5XoS"Pw9ޞAT,lgp׭#V,{[*0jR!X$`= ]X^7[ p1G:! q6G~:s&@:v1p׳q-&s2kx6>Q;%;bpbT>+]|4Ci[j]-vLp,_ ).*d|RG[Omou^؆Yher]A)!G+ocRdXK.TD>JƩH/ilih >7ט6Bee@?5qtbkZ @v"xw^ݿ;;EG|CtLC_ԬYiV8wU\2Hk.[)diJ!ޗ+NV EL s[+SQ/]aY6:)v'dNza"@.XjT wP9or@HJ'MsT=wGm)yO6Yn: D'.\K2筶PW9议;JBڏ ad3Eyv…M'~kN ϑ; ed%% aJ>6JfHê`a`A^HRNƳLqif =Iqu7tH\YޙFXkH0N2"]ZBۨ\.i3LK$&]8mi×hf06'( p Y"::#ӓtG#W25QM_pg qgWO4;<|jCY* rXEv#acPnCQo-QX-tŪ_s hՎ&/Q)YN}1ao$WNRd2F]MyXմҁL4nHZ`[K;4琨+UOjՅݤL%)#*݄ZT۟nuaS@O`P"H䔗#5\27ѷOkKa"_-"b;%da]q-hh\l \ Dzʪ vcW.)QTׇXSF n媣۹26 0NRM!fc:iVkd@p`V`K6,M hԲ*b,jYM`]KR-q-o!DF,uKUF% ħQ3^]G"c^sD&e(|`bw]A8spb]{M#>k86 [ r:%EjP{S+Z/)MıfQfnodk'E{LyPdXC$}=tqVd-ߙ,,vU]NgQbgXqġrTބ[|z3\&b\ԋVswĐ7(Glt⊿(4Eǚ*xY"8 kd:]50o"c4N %oQę$Mg2#ά{pd|gV!oBI[ʛ~J\)f5[njf@3V1Pn:$ˣk+eL${Y2;5 “7M} {'gH]61C1%Y )җaV>١`;|tF' !G''D[a:(B_uVeTj!E`SE{/Bp(?VdSLhޏ*ʒT %_ ZXIR59ZMz^UBu2cyGtyW7ܗ0M @1q*G]X"i!H?XTTxsud}LW`}W Yz?|anltR jF7A1ƅ.qc !B-wG7֥(x'7ceDWIr.r7TO3t\eK%*|L|*,m MIOn]?_ glǿk_ S2Y1}6НkLVf, vM2!Doj{.,"nR?Z#umlǧ,[60bpDkMPmP'*rIz&s`XAr:# w0"_# `. w!'4鉝)yibMf ZNzu*szMPU+IdH%Lej,b4Qg4; %~[GUp $uLO-[r,8-h-ɳjyyWӮ)CP K@ĸ.ܦRzw;6rcڳ~PhrC`?J ~>A"E]X$ϑ[Ho@2EQ+s$x4;kѹ';֮;C)I:Yk]7C+7O / yg(x`;.6uKk'ھ)ɞ3fLE^vdCKx`n@ÅaۚQƻwPĕd>Fff`~<& $299Sx ^yu"Ufe3g[7muZ+d W 18\Uv" GALSBQ_z7Rcm7A;]_>9ڙkjy(Rk^=Wk֞z*gՌ8i_jl~w@W1oDjWXF(M.1^Xؘͦb#pŠޘgXݱqf{;׿WZg3 ^w5SkMF!B@BO}ݱ6-c/QkOHXFFZq2ÒXd[凚Q[ > m!X$<5hlgRy#-#pG፾@\YcOx*\K"̭c>M 櫜"SbREwÂF-}! (OɇF^q>f6m(;n"dxNӦ}r %p&\eqЫ?@>~{z)<}y x oFEzRq)[Q~ z(m56: MrE7.~KKL@8SY._ZieĘәr1`SY MwDXPcENODHY|h_fli3{%x,Nebҕ71w6+sgTئPe:9%CEL::P#zj Em+Z1(J>EwυC;!Uw?]CGM!/$:ۗ৏яjPI!'c/4sg/()V k4*>]`&]#Yb[Z?NRKQ =S,ߖW9Y: '%~UTLGwC9z 7ː̗ǶDtPEo}9ٰ~\n/$oֻ*j79@+jZ^h]D}\Z5ʾ5riY K9̭ .f @:\bd kܓZ VqQ@'eG(BE]hAsBUYFZB1lm_r#e\z=wT( Pi\M-J$*PI\YH{-m=P!=%#, ʳ\9i0ߐ1wO_3H5}l1>[h[ԝƀ:|:c̯+7HwH(L?p+u\g$9ʥ`w\!Ђ"5LT"!N T&BA " 9.gHӶ N5P/|b LǛmvtPUwҸX̿;?:NNC-k {QVjǗFE'[i%&Y`{:lrtJbN ž =[v=q G)u?K6P3WRU{SNq<3RVBQv|K|Q[?wucc|On9LOh/NJo-N8R.PVi:~ 7fΙr.Jw]rDdí7ғ'A8^B3k]JM>YzHr;ՅENr <]ef/zI .,XuX?PVQ'(6]3/M| \9 AY[%[|ʽA[*,E* \f *."[h8P֏]ݽSF]+NGjJN#^1huX_>5`M:b ' oC 7?wGdH+xυJݛ0%/DL󵧯h>ʱP¨Z˧di՛ΥQ8:<,ԅ3GD>,x!Y[($g€%D*VJ&7Xq@.tA9REY4|)T% k9?rpKo L+*Go!E=\҄m5oL>}:6`R! P\rkpʇfPE۵{ {97s[Z_:w4q[nM*IlZ}@Ֆ6jݰ]4?k"4VE\WGqկJeVr~,/>J`TF@=~C( 5ܾft)LXv=7 Us<u|[flX|T0I |T~̀B^,WKQJ[2 $-z y@Zjh}'s^̓0U/Q~`K\e~m_1 J#U#s“">~Ɣ a•EkrbI^:%%)T>HZaA ԍ/$.+,Y1(s[^(JghvS yѠc]SVn[qS9rc F EȤmҊ_iH[o H/+;.^n\ǴUSH|q|= XKo#Pd!K@IkbƊtV<XcFggEwr'3>pζ$4àQA͔őmWD2l;wEsofBnE9t :RR\ hawxvx4P1(58+^4m$HÁ~ohw.`<\MSVYPK'gG9C]Oщ]Z kn@I>srCL2 ?Z om.-;FGZ9 s]{e4͈8TvI'wDŽr_b*͓恊<.ʚW]!Lüw>tgddinv$wnPjEnAAS*1kX.fBdr|"#{ʕ%r/XfG0c 3 f{ >FY%~`?;@o)xbG*$@^U$;" stfiG`d忸0hgO- (O>\ʀn%Y s])55L,*O%PzkiXj#@,\ړlhwDڙDȵڷQ𪋠zr7 JKO5crNxO&~l潥K ^4#K~Mx}SDs`#l𕵯ESւtK; 𛙓xN*YRJ ѣy] m{F 5 oN_}{7{(Z P<@9)jLo[d zt*&U}cm,E2g ^ # C}#x )R R\ bO? j1yɸG&%;81Me[N~ؤara k27#^S6ESăCmv^pOnP63.I=ϛG^~D9}OwBA(bpc̈Rq-3WsRgK>Q!)dpX :.$EN@G4-4^мˍsV~"&T{hg08zg8#af>pS+fx?/v B[%vu*n.P_T O.&1,HF6Tol?t]$scA9#[hO&u}+A]E7 "J߀ύfFWN}2!jHa{_\lMLA۴4DŽ FGPso܅Y}xmUms;MfԐ#1 賉rΗ{>'T8 v X¢/UlO`0BtpU 4U,Kw±YK~$Zsm*x<-jϢ ;U\1[h7hP1j_5i*QtFp9xP%!î_P)|ٍ`D6jkp唲$n&ڭTGr{V9)_Tα)<]+KwU?F~ShO7Hv,Y"W室Kbd4H}wKI7瀢쵺/=iΉ8M+m-ԩ.S_ F}euTί7ra:;gw!6"v ƛ吹DߧlXǫ{WKqV{ύB8 #?Lkyt⧻l1z |^%& g)# .Ѳ$5 YC~LDgŖ 7N?[KB)LV;d+Wᥴ!9CKx k-hWŔYgR. qŭnQw_ɶHM$Ӝ@V>6{pKcn}CNum9j ^{XGIHgcqǗ%Eua{f gX5D| 11UO-+ƺ|c<؆~oy䢲ra}\i4jEV\ɏZǎaЖXcV p zd+Š1`WI.ضM4Ue"оL |lzx ">gxХ+ I =aDNü§I nKaE#% k꽷#@ T L_] ZOkeېۗ\mPm9S6t )RӐ.MaMZMZӰ;)3O3ƒ.OgXmϔdzcҠjTHgXs>9B7ԓL vR8;zw;GLC*}!ؘAUIs330nT<5U#;Q'$~5LcJ.̭yž)yzQ _ W镐ߨ~ܗhfxӁH^jB́lOA5{2,A* `r#]M|}‡D~GKߓIFp^pЗ7JDL`YfΫ. fa](qDk{2ҏ"n3[$AשMɅSZV ߶|-[gY3u*9%/ &t[R@2 i7]=ḪDa U:%oP Pe39)&-*#ɑ< {9ʨwt.yҦ[3059 ; N|^3Aԝpc!Vʉ05_ϐk#ڮ'wc6yj#TRtW$D>tt}t ݜ4Pv =iSlyEtлW ^_\5%W"] ` jm8%Z웳L Nw9)xRWU]W.Qt/ j y#gˏtQǤތ8]4#_v rOex9r O8<(Ds W([h&0=Oh*~bfL@^ orDɷiH)X>g[5to7XNE0 jRTJYwcU0~Z2H 2 a'kYс4= 9 FE_Ϫ2wXu3вݵGI}j CL|:'vvQ*><n6ՂgΖ 3NxJ[ÅQD6ǎ/(LjDtߡw*)޼JTiD8ʹy6e fk Qo :P˅!CSg퍭&UKIǨ%,.9wi*Pݩgu лmakVu'?O罣FҒ]ܱKEo 4(6~Z=UU r~;q16ȹ'sHѡ0֨+0ڿƯ5NfHAR05H4,G#zucZl{E4:XwQ٨ NσLGn&X2Psd%pQ\Y߀Μ]声׭< "s \+SPX;yԋ#'iK@f&%ؕt:$(?]j*k,A=>"f2lwG>0ݕ6P?8Uu ?sf+}PCXzii ҔjoX;gR/~Ld;#ݹyv\$ZF5{ɰnW4FEqk"8}8ڙt1s:aʓf@,Z @˃Z`z%)$$Z 2~T׶JoY^,k ΁Q7`'D1ʻT_J7>HSfqpfipOa@]D|@ ?2s|;AX`'qre4ڽ ?ݜHlH"G؂R8^d$>)J. "&hk?F=wZc&" >w^E$L8ٙzvp`j,'3#zWj!7_Ù͋ڭva^ Ydpo[glYu%gOqBzS4;7};5$h\psҝ UQؘN iZ-q)vce"x6y=*Gj\-_Q*?RNW)#S 1IEbYT|?Vo^61N*޲_z.y/+|#+ɲ P0wңL7V"QӱB'b\7.G#k;SctG5NVᄃ7+#Zn"ɏh!~n] 0SVc`s"ղʼ0kv$_OR9g*hm f݊ uڂEw6PvIx8y/Izch B=t^|ccW('ât#Q %N<4n8m Jfj#hE:ô,Q4}W'VjUJ@5BQdjb)Bx"M twq 瓈C`5)myK屒񗙀y Rÿ8fG)]4VJv=V|%H^DZ붜aҕѿtP]+F3үuĎY ~UHtI= ff&B4ѺzFذ_t{f;W̷eWV$ rUSc=ef~A='ͱ* -w z\^d@v+a>eP-E/9Zt|z2FGc L:w éy`r/5?>YL\gEH<Ͳe…ᦤّw"xo ҿFC1* ,>AVi(j*LMk#N?2+jT@]'Fǯr˭+FU<рHya =MXk! EKD+rꕶvoएinz-=՝=yWsy`[#pQ,LtuP{Pۻ'X,IDhXZ1gz_8yIS\ ~94n:Ao8fj鰶͹\I]0NNR?gSF_V,,~*]qV=R&vƤ|]pugEUҕ5юQ3J*c"1y!F(T]ZnRfM ix$A?sZ}G pFT8-&&0{KnWOͫ4fzǸFJCZdӌCt>+*r< LV餦Lk0 Aޔm5n9t+ת5j}ߐ]ǪH˅iNΙe47e"^i# ~?D0u[5il,EBEPP7'09Rw"ĸ(RʶETukGqOhy6na7|Pny)Z{7O;oyzwtC ~]Do}YMj:T.rTt3ڑTg&Y!8hILHɡ*]T2b9ː56ډLVD!V[f娭J^LoDEW,4 h"O]@@. 6yz,]pL9_IQ 3JLT[CP=p KDv$1W U܄WC+Xk2=JvaQ!68^,Y \)*>T@oUˆHס3`;h0Z^6S#9SE;PjSڞO?|v碘P][(`$"L!V l-N|V+"rvbȚvͪӲ&iטU^I={e4B )>e3Du="- z:ϑfbcӹ|,N.:-fJFnXp* 0#t)lpwN!&YuR~Ѷj|8qa;InTٙyd-p._-pQTcvf#sڿX{PJ,Ҕ@ y!'膋#]\;מ D 熜֥LOKx 42/!T/`!Q-Y{1b?6eftDžޔ"'EF 睇j֊eܱ(wy'i^a2)J85wZڰ8 Rq7lvf44f{}bcMo{ J ;+W_i:ok6Z2~"SsiXT_<|`'jj6b}J\62R{'@迴ZѤ̩\܊ <%+ zY 3>iP+7UXyR狉8%x_kNvOB17GW1ZX?ؙq`qiH]LyOxV<vgZ x:"o&:\XkҸT_)U<\כx"鴔81ĈWy&R6Q4ugT{+Dm|) w.ҁmjXWt.4/j+z3T[1vzM[K0scSXh+OcrRICΓ8"t_syWN3 r2ۊ3yxa3T%|+ܠO?9@ 7--5GňnBPA򢢓FB'saȨjಗݸ 5W1k+}Ԅir'U5W LD;F8k7DH_l #|B+J]cKb׋Nf8) YG-d~7[{WGQ{Pʬ[6v$ Y"Y%{)3< Wʞv sV Gyo s3$ pr+AN, NP]BKqI$)~ t;:_^ Ƽ"Ƒ{P+u*eb,"5Q&2\=%dTtTw1vy:Z7]>lk(y |\[~kˏ[ݛlqDkE  "Ǖva`O$WOQ1pa?K2x@88R؊ _s Ιp=)2K~%@ $`1h ~U%xד,r&20DctBc;.3 CG{C4)P-nWͿ"Eb.X wj*bO˽ RKnH0Yo*r. ;XiKGPcj:f bnְ2X>EIl=e#UEPgl_9Q)5.cb=x\]kBYFpiq)L&/Vj^{ %>.A9,=J\dQ2`awivx6];~Ɛӕ ®L,2Ý\ >,%{A"kBMzvf1Lpx(A3/[ +#ꂺ=! z'Y=mVؙdatjj4*M>DfUF&˜'KCv>䧯wO͟+f׭KcmN5=}G7u#) KqP|%iS5;u &oLgs;MzTj҉5'%|zkܔ@@RCT~mPMCԤZԘvL!w.wq̈l\Q "ЦsY=-@:J9 >.rFu/pԡߐ<>~DK~30g;> I10˙cfn>EA"qb/\̘c8/hL Zoƍw^y~~t!̂a؊Mh oY$p?)7àO~?/iDŽp=ry {޽ מv058PWufy떳ɣb"]IeI^/'oL쿿Qg ߞZ@Iܵep⋭a'8Dx3kOb8 dt.`. Z I%I4i]VtpJz7c&a0*;Z.x oș+9ui4 h7aԡ6.5/S(/]7F6m1(`A>ؖF6OC?t:{!? :v +8g3bEuŅ/І,E V,/pSgeP|Z MU!tD0pуL`_L RhT_8ҰM e[| qYCn9Gu/SѧbzY_נJo;XT0ЉڏC-`2vjd@A˒xiˆ0OyV yO^+ wA~g]ebX\03 1, m*()&k2NJEvN*LM+nP?Dx-\]ܚTg嚝iU846_fؤb5&_65i1mͮ,R U/cԹBPJ#BIF{B?[(.)G[{Ip_ ~F=r Re` wL*"Q 3=fX#Y.cp{]JQ (qHZMX ڄ6j:K/J8_x$0Ht u] l!hslq<_W;#u( QhT1,:|%o_04 oVQM)J?UiY_0dUйJ}k {j 9TW<I;lh%bOnO(dT>2Cn*5N@>NÔբxE5ma1T!&:Z$&(d)6e -K"M\%9UHAvfȠ]e9z#4'HQӑGVu/J»$a[j5&AՕx {Ž5qr- UEr c\ny@>9p./$N\C@Y3.G'ҝ@`ߋj7ŢYs[._I_El< 'Blܠe'=Ṳ}}m*hbOGUϲo,_aX^:rEB^m+!F$/]:@Qb^-Sr˳d&n@\kT7mF?"êbK8t\+%AJB][mFX{{:X?Ag][_7A5O=i`f( A*>%K$C\  ?T bS_ųp.0,E=W5C^/.{=L1t~g"!`'}4YE)`q,OHc;{VTG.> k-)Tv>!KɎdԜ&EüET Tb~JAW"&RJ!s$C,/9.ǟX!%gL8(nctj{mv4ǡ{Dgz)'A -kk2r\ߔ_*' X"㵁lWӼ ɎJZ}+U9yxIBm,a8dBaD Rp;BT(=z.Ύ4`ZQ埛"ҳnEɓOڜHd/Qv7>wS,0:kKZF]sNQijG0.̪Ү5[UgiCaê (oPot[XrO07f1uTS˭X0(Ɋۀ͘4SLͱj-,MULݺc(P౿ MJ- x߼A=}/"Vt&m:]T`k"G5 M3 oz'YoU%56 ^d.I*TAۤn5dȩKg4 ;s% -4fA-V@(":2&=s%<\!yxQVaBWyh^2.B -<=ءUOjh_ 1ʪL<_&pNWaE,ۮ>91`ҕLܡm!FD_)Ę):d.(K|ֻϭp6POHJR;FZwBFyQCw(QhN:UzF҅ ˪X MNugҔ[%>v&/fʰ1HN D]!'(R2C`>C dp,2xulˤ FdF'~pz@>#@PR D[;^A( !nc]*gfrI&!y N݅EgPOFE*cjAolKGLoĴP^1D#K"(&k7^azcI\R;DJ9pj۪fVX<-nRL,*3턴VjIM=8"U?߷O%zFtXx]e GΊ9ArT-d݄ƌx5W |$UCJ/Kuff#J@h{b]1K؇%/,I-ul5lPuӵԔЗ޿Ƈ%ҪB̴9Q̲ -w::R$4`>?8F*<aKt\9nK_E[/gѥ ^o s/ ~)ȻOμ8PŪ5-X!͕Q BߧTlT`E2L>2$0SSn 7tPm8|RZl=߮v4lK%S8]v.Z0_e kDvF_%"kê mL=[#4< |SY'+9eN<=Jҷ~i)_4z8Κ" ѳա@©I=kE2C\`F\3iAªB[LXpo"mm,-z7IYݎ8tka!Ik>v?r.`l_q5G@}Mt,ڊyԟ~9p ~Cba]|ebi!x(vg@':gu@ +8T0oy)O K%H!&@5C4i"9Um] OZWwi/:w#+%liw(3)gkIHYnK9O'4#v?@7WC )<.mXn8u=*' dجޟ01qr&ggP4˭Coqa>"  ʁ-?pWuEJфHDף\S+ |5iu?6lL xjݦ~ncĕ;[`nqCKtaaA`sCӧ? Q\(T*AF̉n3UkP_uꗤbKO8R0T#k\&8QO3}@ å7&QiQh9nS@kZV+ͿŶ{@)xuQF-߬ TPlԒyrЄM5'Żu =ՌA0C̔~AbjjXm70iߊ]i0+4`( d}a ԝa]?z]38.|Pbܝ, -1h'48MLP4<0Os$9h !2rE %) }ӗX5ۜoOr4`Eq!Ä U&wY3 zVY'}GW5 Mڎ>) }CRmHβɳIb]f^MA0 #ř|nj.a5`FzøEUQwb(G SF 7bd ̉oYٹr2FCZiYHXü!Go kBM1uu/;,>]»u`N,Zzc_d&rR\#r,Kߤ MTWf uQ<Ԣ fJ(o8=YU|STC7Q[oL5xSd2G:ܶ25;Cـz I4bu3ShRvJנYlx" _fG&_,|ϻMWEm5>vc~ܕ._nGQf\ɦJ$N\[1' ۟U$Tv"992TIT+Ǩ::'q ˫8'LH2[9Nhyij6p&/u[~N*DD:N8΋%imf6\vm/8dg RIA֋uLb] 3,$1Z1xNX٭h$˲^t 4srMҰU Yש613dX([ѱ1-qs׿F)moY pZ_@1r -鮾Vx ˰-*eR]e #(*.uq^;k s&-ؿ,IM0VBɏhՓ[kro2C[ޢJs1GTyomؙO8@e-B'mzD-_*du o><7 @%9+4Ӱң!"T~' }j^=mk53Cystj݃oyQ{y _JRAdl_Wm\{0z8s)_+{Ҽ#^.QFt1n+_3rVEuEG}@](1HhaT1:˽a{s k {uì[yŋZJc:EZ(A ˛pt!&޷Фn ^~I}F k^zI+x;*@0 j_# iȼDoo)a5RևaeM}YBƦ/aN8@+I_19~\Q_͉袔~ϭlkU | uvxס̘g9." FD ?4iMHN;6d @73d4L9dTr(&Zڭ=dH;mU@+wd t*4ΟI%-տnbNJ~{G rq/'辰&L%-\y" F|vWVE+؀0@O̷/D0S[Af=bY>ӡ+9D ,$V=g4<0PfڈtWbJCRO  R>~ryӏ *`Swr^126x$.׍I wԐʅrk/r+K-<]qsw,ˀ\EeV'> gړj}^9BL}ȖD½:]WSO>? u18{a!s SqN{{U)&Ѧ0{`Pݦvd}8KAG}3Yeэ*/ TyJuWݓ[׮VJ}F&rfpj`, `C`CB*G >jhE bNViXHcGMÕC-8#ր?Bӻ"r`Q>րT~W)s$rpjtH .fz5a“j+I((9 zT.id0.%~% N˪Aqb T}`t RGSݷ[27FYs*t:dYbϐ;%^rwc-WA%ka$_liao.'ةL֟ͅpZ, ]k)lAT_jd(LfPO6-L>>P'읲`IMJ9m ;3d`X)eت ^҄}9r,і!`x +헭/]Fr#$Xr=q-< 5]'H "iqߴoΒJ( 1[-Nӛ'[rF /ym,MgW>CgoRi>}3uz7• ķmn޽ G5zg@OJɵ/À Db z_1 8iZ׿@N̗lZ&!sgz \YztRe{H+nm6G$D+N^"=i8xL6F:VD=P35lBoMAPY$*Q`|XGHսZ74d\stN΋`i?!3Bn(fQyk%[=hбCHvCBܮ!&V6N_&SГiVtN}+Pa|X!*ʆِWSܵZX-~\%!Ha{ܫ^-[?+"S `0,>}7nqx[8 qB@C_+vЪ=pU&ŏ_#/08*P:M.} .ͫ55nqAm]BkNj񥰿䘠B]ejU%]qR(QPP٤:q5 %o-vp~۴X+pC ;~?tEvAh(V؛  ZTW^Y]lVI IȺb\䅝:N}s$U靿hAde 桂-hԺ0ڇoy?,Ox;Ύ ЦW?K"3е?Ёz9~`,r]ݡʐGnvom&٘f2L5"gvJ/QYgԂiȅ#{1pyQqLe'!z$ rT&B0ch#q0D?.GYoȶ[055_U*1nj)w`\?RgI50@@%bW o2a"M\ҽ7/ zэN= %@ʅVxÞ\hsXH̟Lz-T5He8mn-mW0e"ml:e8NpC^}2bTPv/* 1?gX. gC)*yG'oaRԅcNmm'/IʉF\Y[W; SW^U#.WlYL;6BNǿ7)f{Guǝb6[S;KtTAhQѥkוc eEy_& ƏW~4Д݅EmoNdM,4NKuVa~xKG)I>DLb, 'w' W1W*#H$6BQw)`#Z #Cdd򗧷,N!8GV>o ;w \%\(pdh#O6CjOi!yPJ˻L9`@LZ49 >Ӌ'gj,'g[jJ1@New* -ɛ}6&;G',N,& RrYFa?#Ahm0*/(ΫKjsJs+[z[BAN d=K%&i=v!JU/ 1r*>Ypr@l /ϒ 2q”NO'nS]aqp`5g^bjIaIMaӊ_;(}IGo7Uj0"+UY;&;#sI4u`4fk[V^XkRԹ Ebrw:yHU0M$n[Pteӝgd)B @hT+&FTJoh!O4 N7 ,"g B>Ĩ^7T&A)G&vmHw'Go#Duhc֣Sqy -ӽO^(+ ~5UP%) 4=љdFF5xg|D }5F+k{ ~"#PDV=Ï  ֯:`,p`X@zy?ADOF Nׂ|J\A3zo?%+Wuf;VuM$^FwܒV? ̦wmX#|waSSɱTܓ'SLkbsJXfSc_<)ˍսZCO.[}8x9XI}qc-zH[_A"L|ʡ/PX.8/d;ީ;^V_0ZmكKL,DG|tN$ׄg=S˶N.W@p*lq@$pI4}rHzwtqU͋PYDBR3ǣ.yQOlVE7 W9)Mq4jiuc0$Ѧ+0D?vZBCbY )>}Ov-̢p*Jw7BSǯ%Ogt6N!l}%Sn3>74 qc=J)SQBr@lRdA^r))EUmI))¾iP=dŽN_W00k_h]- z^vTCA'LmQx m-D[`jM74b®^_X, x<JtҺMhlj܈w"OdkXn|yOFiF)]4/U~$Pm/$,RU}1۴u\V NH;r@B$2Fx>d \A+/ b.vLR2o*-XjJBx "SX!ׄfZ-vVM]ؾL=2DWix zH#&sWXEרFǹ V `=@u>a,N9*-`3M\n'حv3CͫnngWn_DGi9Ytsڦ]84=<(3jXNSFLdjŶrg9/MD fa#t 0lCrRXo"mS_Z ܼ`0WܯGg r؏KZrlG,ښ]r/JjRD vMwEg w )Ccu"oQ׌qMabUsۋ$ѝquatWjoV.ߦŧl|\ 3ѐ.ܲT8@PE kHRKDoE0NF`@m+mTXy4Ĺf}/ж-g(lvQJ`M1[Oȉ@rv[^_XJ2H:{p{N*1Nsa%;T+fs$N.^S9$~4h %D=3dл,27O:$ɂkyB)yB-2fX|Zؗw- NWh2|aM4C!-my$X-}dh}`/u|7EiqګJ !#`CU|Cۣ.؇v:ˍȚQg+U{x6؛ԦCI99t"UuJs|="7%EJqnepy )L /UuKcnO#}>xwC\G9Y/ɉe03卞0? t=2Ԅ.TKCMS9d`~4~pƣ-I30ymB:Ξ)h2fz-"OwkKz%F$ 94`W2C }bG7wŸNYk?Y> ޙ CW Ŵ5"!G5J#P)wu?%74ʤ_yFBVRNڬ j`"wpKOrwC[EAr?%N0&S[y0s F]NpjqbEOӏn]3,mU7}m4f~l,"bwJr\ԶnBGl*yf}A:Kҭh5gLTf8!L6Jt_\>oE60 Sgh (3ia> |4%a@ܣyO7с7tGyɕ:&xԴS 7Ur%2a`^_M\MB}c'כL؍U&Ja6]9hLA"g5B ۞ uuN.$Vϗm4S`HGՃ5DP@nLFƼЍnK-p X)?(/ p-@$z'{ w0} S+pgs6E* 7JMbӶ1 r>0VM@X0ƈ (]LN%2iFĺ0_Y7ȸؙ}" _ (>u"`L׭z\r24nیacb7^P3'$t,bdkF8 ,np5C^'gy2k8nfƅ&~5Y!zWTmnbDú3폓*:K*&&ZmRI2#;,|Z56qt/< f^o";]g"^ۓ7]p//e`sekCr+('#fZ1ݰ2 g,xk)zŪ7>b4ɖ31XQ=cbV؊ɀG'Z|o<̚$II*ʘQfjC/5tOq|UQeT'\@ 5[~U?%@3NϰuefWIIThi_dCRp߾LwFyN6GMϳ%K$a2B4* ѫc7?iz޶M}?Ĵ:E&^6{^| Q_ ibZXƖ5T"qze= $z7ҙʅ5r9|1jK, OUS0'q7A;ʚ2k.¾9 Mܥ_z _NвT4\wydfj#-P 9ӉIrަB^|EJS3w V햘^,)?*0.)׍aQ&Mw4J8[4;k8 ıqZL>]  NfXkSVg󇟣Xd=CA/oR+ ܠ嚆F #}̷&{xdoՍC朕8:Uڃqw+wm}R*;ŵI cUi0W.޴C@ X.tXkxDz)kx Ekuܡǥfmƒ:Ehns$8v(cd1C&?R/x\^"tkdD; >Ղ¢bsUqfD0`7-e=,k4OQ^EϞ8HNW!#1UspiiҷR!hD9_`/Y'2>)hΛȊ,)iJ%Մ?}̬RӍ= ]ޡ@ I@YE=&?E[&jHzv{ *&ֻ$y \0ʅ j=d4 b)⚣zbNrzx(͢MLs O3,fo o ]T|в< *Z'x4S@E^=l7y8%^~,RQre:@Į1ƈge{m]RvG&AYg׽1?l0"2,NoC 01W|]ӌ Tc'aMY+yOhGLpփ|oA!,|"!Xl  zp$M&D *(CE/ :͇(1|KUTo ZBwg~NVӀdRѰ$v?0'-/i%"~w)!BbY oATe꓅C7*=lkܲ½{OvY$F7 sڶ͜T3G j:0;TZ>ylur"MtӏWx]ԓsaNMۑ}B _O Pc2zAq9en|`|ڌ'dMʤ0L&jx-&(}'я#FIV倔|?yTZ|n_Db֩`X8e c6Ԁ\w7 *GN:%!/ٯTH\gVS3\&X?,h@ ܂# 5VQ̇½&d8ux1@IO;?q 6S{*6ic]VWE3.A|n޹{d(QL7S}ϨiPR9:Q'qWギ,^B㿯풖ϭz16Ni^؃Uja흋&V]~q=_rIaP_߶J.va~ƛgyߊR{<,s|&2E+4u#omk+J2}޶2[_ 'K`t5̒wy+Ҟ#)(J[ay+MQ~*RP+D _+-J).z wnfQɚC"oS+/Q+9|fi-o۾G{ZĐ3k.oن-W?5AmH0[I\ {ed%cDy= 5"Zj4Ce{ZG%=l MGa.a$%/Vx-)J$ʙmbs[=H-`ρ|VLIEWiV= Hzr.0Ѓ1?{wxt MG"7Lj~dpciu M\)JzH~i  gC-ؤ0xz:ta/Tl綬Ehk< {>S[p}4@j#Roj!$˵.!HM>^Hߝ\_+R6Y!߼q>]W4@^LW@TMrDT06?heZMiJ2h;Hk*&UpɇUN!\<3̱n5$ D15W5FzR89J`AGmd*uZ#O=/Uaϯtu'z2O1MǔKl*0S=%ZoӍP>0 )Ii/r_SmW1 {f,<@3Le2ۋ&8AN8 B?+D ;eOd"m(19m+pxـ/8zU pyדoW2?=ck<:N+Y(% DF _rp'd7D{^qCɁykŴ?- &tn4f-)?솱P2_{SVM;RbVChƁ}w|:7 ^bS}N]acå>jskdױlr;ȍ٘⁏Bfc &.Yf}+U&mB-UaG\i,펖4HSpHʺ?)Cڨ$mptWY69H&[78*zIifK j~Ym7LWJs.3oqARRCÿV TȽh}j6ഠ2-=imѪNI@D;jUM%oj#%bs`Cڥ\&Xh?6pPʊWTڀ?`n^:N8A" }SOyԕFڅPgӠ R:Dr8Je Ch 8|;n! ojM/TC dY$RW[떜L$}r`A0R#XR,fOz[O6>?1;{<6p{5z>Ahp+ 9`]GMEA>3/ʯ'gx8=]ibHa|:냆vbyugtQVf4W!8a R9}ڗD`:8L CU½ڹg7m+@=*oCoR1UA./+G/D}t+f_gu\uu[ a I]SVVn$ #7/5)/(o"SlsE?a-`.A̳LTh35x3v=A1pZ# ^kJmIJ#l\Ʈ&Ψ!ܝcșB>t29thOK,03ْU|iǯ,/]u1O:5d)o3V <)\U'aFYO&$A?sh\O8jV%2+zYsb5[aCʯz$˝;ݐ6#IF>b P[c2U3ׁ:z|%y/v wuWZ)HzcQ"ȾORZc5!o0ȝr"*.3޾ zJo.qK1l>u7:j@%HS"REud,H9Y2+ζ}:eJ:cҽuFkHM}s߆r5/|0Oŀo$ޭXxkZ>lox$Fib*X*6 6m7شyJ~QhOuj0>2`-K" 냃R}#@9LH ExSZIP f+̓x.%2JVBtw_dU?}-aFC274we&UK[fqivn3Oz-$y'݌YHR[ P/ ,U,q)0+BL O :b"}I=Ӽ@Sa o P~)iYR; k# q:s$ qLN N] ]VO _di+:}_6k薆@dhY% rƮH"T](_. !bb<u컭'3)gb2ZAV$/d90h͍&26qK3Qf2:㜾 kx=}u!J_]// {h eR}1WI]]#a<9%&%j)>\^P+$atܮ5Si[})lͻ7/P׿%@‘k4b[ghe`w"W "rI>{ɻhrEeW`=vѓ}]t,#ZLrF$,L@a, _>jM Uw 'pNYe9C O\?떷W7.D3urZjKu{bc!h]L܏+)UvZJs{ۅ>K{aHdʐW`Z;R0쓮O =ONR(\E&*g6=;JPjgF&nx=8iFۗQK+kSޚ]ڽZi%ʛ|[Gx4^kOWA]ra}.1Z-ȉv=̬)9z58=,v+F%RI+QATMŪ)YJӾB}HX4X&:a\-m7P4Kuʎ޳&;W@yƏrSi&!в_Oܮp(B '7/H >_@n^|Q+1 Y\=Ou/5h2fz.#jy~ٮV|4Pzvo|[$OJPiv[H2ٶ3S"vQPhPSXFW.Pe <=aW;kaTZkK@r By,Od ٗj+[dmϫN8UV.ƓVu&JO@VOxRiF߀&fiPdRDYӮ yO?3}S9Ĩ47}e->i);8)ȴId=[[!ORH''C5+5:oZg!| ~`ϧƖS|>:z0ބL[{}jm)t"v{AgyT]tTT3᠐bQSʐɍΦF!Frf)i ^s-TCA3Wԛgc1MBۈ; fHT+?.tbo-RfߨԬr~AwlJ376E2/ju'Yo9c;+MIňt3YNck$=3۾"64~ sxq'S6 )!r{2f/ސBǟ +FɹeKFn$ҥθU:OnEk/Kd1^&oB *j~ vdaD;h$DH7C<\\Ss' !mi( `9Nkg_H0a:076SЬs9Tfj & QMʕ~WstU ܇6_ װ>d5\WdIg[+t6_qG>%c٬vs0@C9z`bO>΁=gkBM崠 *dB ӌ!D9Dճx:Vsě&/chh`§|J;wꎺF:VH4'u+~I#귀#% la=];+uA;{2Єtw{Ydyߙ/ Wj sMWrp c-g#Wx(!82!DDrrܺ=AVb B΍ʭvI=8he€Ja~Wjqq'dYw1Z|R||xUEDEOps#K&:W߼6H f퍶-% C 5c3E,TF9 _\N)!c}rarCwd$+Xhw5N"vSQ)6o49 'JGNvY.P?;IJq"?r0haɍݹ€&xͣ0}# tڠ^{ʒ@[*aQ.oiiH5ZxfپCDˍAQ C[,޶L"f’e/|.,cC5-h2U`LԠYb"u`aKm9\^S/ ?; # WMƠj DZ{2@`~3UoMm\ƻQP ]h!bzqSCZu?+x{[N ,IƺEg*{xr@%Ix=DPb+˔O}dYsS q-X3Euב9`\q@;geQw 3;猶r<3. Xa*P4޳*6#{,s,CVȟ%.֨VJ~FDRE\A=L[I6r *kM BPqcd\4ϻj\:(3@E< *-Wˊ ֧XAίnͥx%C ;Yl>MݠbBn7]OrĜ25G$ 6Gԣ NjH|8Ňĸ~ڲ~˗O$|^,zzO}}h(;%! >&}<)L 580=!b2LmfR zo]T:^%ӭ?c>(@ <%hGKc.[о^. -aޞ'jʮPҒ<-ߍpy5^!«d!R\ʼ˪`\qH^n?3 8ɭ"MtƎq=w4 jXAŜocn` sl/]]QkhqaG!D!g Q`dBg31bp˄ V)q/mrh%SJ\%x_dpp g^`Ҫa=^9( ɲ1_BucpZk^)S`$S * SY'MqڊT3 f(]way|݁n.jO6ƒv'T_uAL.xmٚ1'Pe[hN"YrWnG]ǡP0׮aNe9m/_P+p<|tIWFR[ׇlQuNazVǓ+y{-OkدyF!CF,`-S0ϗz. TD\BqGKaֈu_Y 䓙#dMBn^wq >Dy}6}Y_k;)WSCypkF?e P1vU#"F{{=j92F!;]D^4 +MBM|[)aPԽ(%:|]2*n$0xC;y8-jaȽ-4f c9>hښ1;GwX:X7w,9'm 5 >ʰ-4hc\buǨ&r}ݣYwE$C'`_Ff̜bFxR,Fw]YsYԪkFH} D7lVm]Mi^1xȾj+Sa"dx>=+K i~%?tfRѫD,)/ĺ[ūnY Wz"eA!|{ ,Z fKN%f͑6zjٸBSeMfdfޞθ}u& o /l2-DRoI+x$&ZqZ孑DSvVrA{]ܜkh}2k1Z,Q%39lRM_cPImEޟIPS;EOi][P8릗"30 mSl|z]+?D_B߶e~783hmA^jXKPL@/,@l-]2ȬK+ ayiJu7Q6 Ie2N? KIs+K$gO/P4I$.l#U 5nF;_tj᷋ǨO֌W^E}7Aӭeqgvb&J!{,F£c\w,DDlzgSdžn ,ZyRvj$~.Ḇ)X\hZx"hp.xTќѳ]QMf=s%8i`,B/hI-P }A^ (忺4Mq?i+9ŗX@͗W|t58'~FSۊ`_ei/،jdPzNYN8մ(ЍjoGuu;Q_N^'+bo}-fN!Dqori#F}/ !nM`%}%R!:Jt"f1@T`]^<]Z0HM>I\ywXH~: lRDjQ&*hspM]K+əE4%DH =OASo=؁bhIY)D҆m H-kP1UJ$x_ np!1.lHKͶ W|4q\i$zh,x}r*i+?4rGK!~%VilarյCJ4O+ofܫMo5V\JBI4R;0ufVa'& Ojedg-f,u| jD~ׯw~܀3b!y7q햻_.ۣUKnuYv3>P/ "Ix,Od8\C?fLK|j}j't]ж9Z=}}ru MHthAdtGoFм[zKѸ=<ć^?d@obfrKo.AOJOp%2$]PN jt,%ᙂT z3:udqCDe-p)+M5袈 ~frF`кCO[Z)l?/ĵ+k6um:h$H$ASe+~7PxS嘸~!RE9dkٽ2,yJ (;馩H|#XgRO+K*V@.d0{Z/l6>Bcwq7̗/HfrJymɯK ErXxU%RmXvn0(@ޘgd*Dc?K? 3~UsEVo^7Tq+^ ,b>٢ yCYŗThσWHpFIdk'>}LJ>ɰB;IZD<9L ϞGO1pDc6x/_E&oj]A}{8 weޣXkGx=RMƲ%P謥^U9ҤJG.)㩗:Z/zӄX3vZ7Ȥ͒a>dVLEgj0vY3e2p֎23A33oKe~\]rZޚY7Y=Tf7y ~ [UN]"atUX P`bS=w"]K-?qd$t=ֹ{ [<^{㉤NJ&;RqLktDl36XSc ^`;n}zbRaoZB15N,,;&gj^6s~G\˶ܵ]GˈS'`);5^deԬvr)v̅-&s)'޵!=ꠙ1C&ךl$Lh\3k]wMQ=M-gRk%K"'/X>k5@ڃ@OJ ,ΪSت7Ml1A]MO&  @3Hi!kՁQ7~z&LtB'|^jw5ax[rɷYxUKww˙MH@:5?=pti8H-rdWR*ƅ]>w_oH^5&^mjw|XX(}iO eʠ`uI#4 }JcdCXC5Jcgv%ç0W3H6TxwT_/hȗ Ϊحnh K=)/Qև:OAǀVre%,) mv1Þ&S&*d?=%ơݷ@Rxe߶bq6d%LDdLsc(7k|gS?>ߵM̽?z>*dyTj; gOTJn,Ѕ4Ҭ~K3Ǯ)4ƒI(3dgȯSnSLN"d3B9Pv^oc*Y %8VxW`TR~N=jĞ8n4}U>M/ 7S4տh{;pL\g\/  CK16 6>Xc!nR[x,3c3jS"]ɋDk/, 2˵F.. %'ed0Ke<>mN垙0؆/3QLj^tx>F샶>L.xKɖpBsog"6@Ų S--.*I?C,4s`$-֪" 6c;\?28GL2 U'}i0ݠYo p%]w밧TMۥYtK*F-;g cћ T=.vy*T!-tnLVގ"xr9$%~)Q/P^ޔ2 К\ka>8[ 鈮%Hم4Y v;ZL"W&T YXY(\9OR,6a'UO2\g.c`1γF^:(\Gٿ8,ʡc+ Y#vLpsJݫ jF5r)veiUߩY|8]g#2SQ]o1MEo6Ӛ)+ @R̙/Zh'МJ(ڴ*},X?C6_GKˮiqI,)W OXk)]uS9êvV&*@V>.0Ɔ饩]ӌnSy2Hӽ)b2@8-֌t7ּ큼EAWQs #rb/Of _qFu]zXifq"U\^S4ڕ0zW*/6btSD=ُ27Zx+l ܏ϯhos N-KI]QloAi\m}&BҡˤfbX@}WyjTr[o݀ >wcBZT#7%V֨$1E7:%┙|j0""AӚ 3f bcRڛ^|Kߠd"R4쁃 hpHǙ2p ?TO#>`6rYBG^:‘z5F#o:[oPA˦(6?t;?͍ݍ@>6발m#%adٲQ(# Z=G˂4ewm)q ,vz_)QSaj gn0^^si>/_MXz:?4x.TRMюѠqQhm5Qf9X<lC6B<~ŪIǸl)|}ի6cxh(Pʱ&4 i{ץ>0)h|KU{dwNVB@6R=6nVs-a.[[nfFpie v+ш<~sG2? O8ƝVQj1x_:61>V=7LR'h!0Jf"xc{>%gնMmrX&2eԄNDlmtBh ~D='תhAPHIlAnhg- ec;,nsU<\^c.FQ0'8S7LQ)R dmEVZjz}zrY'՘eKܥ9,f p5e"3?KXpyf?D JRΫe/Yc7bOSR̼NU7PLi/k?x)'50NM3r8 ;>_ \4^E@Mfn" \t7y ,gz {yވ@ CSV )8'0qZ`_ $_qa0\ |P/ )ž /eq؆~垟L)kЈyJFh*@ay0(JӴV\5B~)g Jq0ڌfHy*cbwXX.|)5s ڰz+{`O(׵KAseR :e,OPD>0}IB27m˒:Ww<:XCWoLE˞'UC/6NS7ݔJ;v_Yfu;Uxt1QBA%Svd}~}qj* .6a> XeŃh"۬ ݶ6,!N$HZ\Vc?pӪvԨnvcosl*T_XiyŁc3 P_7q"PM{-[]_Bd4(LJ3-iA=-F{}1nr.~X wg~ Ce^f&$?XvȰMpG&uPg1y6KGPO/E̩q.ȡw =K,Zi Q HON=fRKG0}/Rʣqjy*]Ta\dHpq{,puum-ŅEzid>nulݻO0ӔȍnE{2@Z;=Y'hM_4X>M}<''K a%yU6`cEjTh 1bvP./r \0<,ɁM<37kn5@ҹz;D6~*.!GC1]ާ J(" 3֝Qm0W~xszx(fAsde{{/=&zUzqШّ"~"Jm:=Nщ.溜5D^U~&sC+Gzn'Jd9vRRn}j.j&Woۛ3t*B°u~94XRp f^nJCVz!} z ĝǡS2Z WOr0jKW+$uoCӷAJEeǙ?# V  SB-N*iXVRӐuE61JΏH(Q z{ogti.V ;N3@XSlže}{[`QOi eoH}`( O~aQW§ 1lMޥ"ee($Z\;}[tjL,J+v8]τ!>6%kA>7VRXBBlAܪ3s,>;wvГ^L.XܻFȤh#lg^ps_ dl+JH/y3V0hP>N|jbWL-y/-R8읏laNDe;\VQu# uU C" &~E0QI,Dl"=x¼$B|@?R|OTGÀ:?P}mA◐Uy!pQ{Fu)9ǧC5!.hP):M𑬹JDؿQ%k' wZG=2NJM8t9ƅqcsg5 IN(y힚`0<&l6^> OFFtgE5+rT)| tJޔ8wVYqP>F \oɏџտ Ee­)u:GV3npݮ&{(8D)2èMґFcNJ\kiR8jLq4 UQMy%.u^iܸWE3Se#mݹ,_KKc|IuR_Ba c" )-Z`|BJYLPǫ8V2y+a*|z<@(hא:^_ɍ=.^ 0#G )-n:O[P]5-8֎?Y8^4` 좺h'p砟} Ѧ`wXNc8D|.6{]&1+4(j8ǹҎ} _,*71蠹=q@~Kw! !16$QC KQUaĐf{ Y] 3MBWZ.\ҕ0ڦ_a$X.>7j;~G5jsysFPR 6ݧ)/)TCa0w&Y)ۏX3BSeSyDYj{dsG~qA:uQmBF1I42@drT0xI[XCA͎'#% kvJ/.ɟQ#=&Ot\iP I!g<;'ncSeJx:3;] (-I?cF(5R5@oQ }6Ҍs#Rl&%6+IoxѶYm޺rU`H8!TTU,9y^%ʪ5U9\Ńucnb髜C@:|#sDFgTeXvW.jԅZ]NpTdSD+5"1u<"=OJjY5evkIô5כ#·>@e&O[rC|ppO$hD]۩k{6L!{ܢX8s0=W^X.Pf hߞ rS{An)Q`NTE'+?Kʾ >qZnAFѩ\݅4mXD?%aQ6)[c4 *B栺i6&z^_elCLvL}Y.T%1u&{ [ڴǟ>3 0 "O4Z۟C-×lj{}: jfPЌ/ %e`D7ѺMDt}D*5-N~g@:+Mğ/ +ZRbQ4%9<flJbϭaJ, em1)ڂD^?l_:cŢ.P ^+.3bzrm/lj\ 8m.=L. Uz|/ΤU%?D7|q<PF-'E:+䠓}y*خ߄-g_QeyUҰ1[ z=}ؚIo4s6 FZPF"hX|x~{wHxV8Z'J1m+?Iƒp7QД 8/ᘳG5cRhSMZROīer*[Mqu'σR^ޖu(.MDT2Rb5A%avE|w&d.>J̳CmQ \׫B@gђuTlJ"z/2XQpϜ>L»y]))c<ƧT(Oxcyߙ"Ӊpd޿ˉy#spnnȍyJβo"?IAKZ=_'kc4'萊7J^n}4 Kom4\#4V$"sm2R f-qj+r,uJFH`oZuZE9U9 }]YYh]CJ@*I6j+%ol2'➘B&1ji"k\<]r4dEKtA-ߗ& rǤh@60HJv6cy,{3d2 [QA ,W(jT@x8U .VO(_-7|ҡfeΊۧ{ʡD԰I@.խʻ@*vŝo6 ȅ0kG>QKF~d \wf9؀*6[fqLiE'˥uJ'7 $@=yc Qs6doWG97 H"RQTa0 7s,{>1B~3Z hI*9R2BYjUPTf+,3+^7HM>^ot;_ "vr'8oZv[S}&Y/kZX_p Ȝ aQ,⧵>Ɍ_#= `r/wݏs^hZXw(b=oh.B澕4i
,;C#Z@'FOU; ~W>k4,bEpKs'͈#1~[2܃fQH&}2Ҷ@;]< SoRs R4PnV(nBңE=`PzyH<H:f_F(%2lG9MB:9f`=ϐ[-k-BN}|Yj-i\bbbSy[&I;2y!ࣕ4/FC*9V.͹446N'V5G=~2^UsW0bu`xq@Zr@f Gn"ɝ`ҧnDyC[3+})JWDC%S~t _Jqu 84|cnCVOB 7 ɒ)}f ^8@A{du%mFܖ1z}"|I) mEU]J;*KĢG e]Toܜrcaa[jGqzk: MjNh&ETF ρD-ɔA'v*[`94|MhŅ>-gDve_6WBS[Y{<|b8bdZN8jH Oc~#Oe|IgO_:eN6Fey~q@PM,]r-t# !+:O^Jx6a /80UQIP-"ͧ ;/$ _+et24~Uv0|F@9ȃ& =ƭЎ{ jINC2ڀkx/-O`ܿ-˗2BDkioe@ZH!kOԷ\S dWq${x;Nc-hJk:<6,g =3/yld<(r%cA5[V6UL7%R ʃяR ;9JpZ@LԴG>"Q}ؙ35!{SJXҤ @Hl=YTaiuʦh>#H o32$P%wHw& j/Qi5p-1 ZP{P  bOhx;G [ pG=]MLCd$GE[ls\X} Dob$˜9~ ۫efCav}na;wǥ,kqJyԮ0tmK5KOELAw%g>h%F'؏x{lv}gwÀ qvguB>Å6 ;nPB?ma.دS(zJ<$l!;۲w#F4v׋o|?ԫ˄u[ˑ唔LyO96bto"rAvIX鞪%:]T߅>p,t.h* 04K"#P@~zg>.8/oǿ/0Қf)7ԏx+Ͼ1t+ApWV;s['Ԕ``6(SDKq&t7[[MWɌB`$QOt.0CK`H 'Z$J=Y̓tAȻLVwggd3\UNQР5.[^ ~\bԬ,_!N6u dž9YB}-u5K-5\X4ncؚ;RBO?dә2:pm9+^Jw$FT @m_U<^Re0ڰ#^\fQ42uCP敶 U A;OM%{ z*nկ]nD:Qe$];'"|Mo9Sayw'˿L tgD`2!9ǹZK6sm> ]Νs%(sԨ@nFpsGb-k񪰔}> Po-m dwj]͐|އk LLshezxe%l^2- 崷0 t [8b6֠Sm]a]jF; N]ex ^ Ff!I҅!_;"уpJg[ҽ;9̚$ay mM2_ЕWSR\EǸJePsfm/zý:nyC`G>4 HHH P܀uVCߚtT|D$ϓM`M[Ț9ڵ8jv$LnC?a?A IL6c$vΥ |A;m'xX(b侏x;^*u}oL RS.{y _;&, j)} xq)2Ⱥ ouV-vEs%x>T=Hi)n1njYڶ-1M*U%ϰ ѣ^%CbZUrHa*ůivN]?X 2埔f -#3^r ~s)Kdx}k8A yelHܗ*.^EFF" 1yPԘ3ju ڦyEnu+!hŵ^H =c/u|J&lz[rEo5"3E!}Lt5c1Ϫ,䬷?3TY(rmF`N~Yd%l)y%s!28&I&Pڥ|d:*oaAlQV[$QO`Nc XN+CMPdk1y=ҸP QYxfh׸ԩ@Lz݂eFy%bg6s7M@P.bUEX1*loJedxÜۗC3 ӧFEtZ&_ZUJ]qw;{Hd$RRUlqG 1ocnCU pf-/[j K$GwY\ I.790R h50²B]N_3|]>Ms =f|Z-VYӘCҙ+BY` fv?"I tbU,@~jN*fG])e\Xvg+iSJf x 4ѦLbb٬هB+_RLJ&O ىu|R,w@UÊ{G(4Aʅ zԟ?LM:*"ZnYaЇ! ]}e5JM pX} MA\T[}__hφft mZӒf't" [fzj('J6~=W:EwT\dpy>@v}̌fzY@vactهN@9r G!H5\dc#t*G-2/1j6k9aѺHo &jՔ.A }H)lEige~quu0)'n+@>%AQ÷_/|"Yq|ONO|'{\l9qЅ~o@]N=:Κ铵KXV-Yiػ!:G"J {QN `9;gرIR=2 /UK{xꉁ գ 9 ~z x8ÒuVd碒o|~?=ؓ!L<ZosPZRk&\RP U )<%y+%[n}Y86&>򆇽w5jcoEòYkSK~kd3+Tb ^o& hk LM`=NIJJlyHJ5D3Qg|V8<B? 4V"ِ[L/DB_93s4iIϾ h @Y(HffCi"W8VKMA)Fr_B3]uɜO97:hGJnC8W;]+1ꏊj͝B@2w'WԋU*yhaTp5ޢ 檤Cx8pJźw|. DXzz|t$RҌ| puif9;fk9Ye!:vZהuX SW#sOtK`v5k@)Su_:uS&fіq$v/gc,C 1mwnGm_6pIm0Y.7R$Y˪Eť]GF*v=T>kw'23]oD}uV.9]Yq7ɇ Xtk{̿7̸#2吔N q1???}J.bt$s? W JҮT1;'DnP[9Xv:1F>[O!߿y@NfgaہgcfaGAVErf|4m4 Gs?A[Opm?2g.w < cqmP*Z+i; 7^krdg>?/61܏(ݿ _ғ)pc?-:l꜍ǨCr$zཬSַTW=+V*}à \PK]1`)r_$ tVTCW $dψwb].307[/~ڟaɖλCQ>-(s6`gLO]m.:MrZtJ'ddJ׼v߄d9+[8WkйbGe_eT"bq>0` l![V/:`t"6Y4em# "jD_uG36\].Eo-s5o:qVux{gC+vG q fyQyrd5^zr%Aw aPcamݸeaM2y еЊYlbX+ /Fs~0n|Ѡ|FS\[7'VcD29ñ:]8I"Z+ԡ ӹYUG D އ"|Ц1K#02ȣiS?Yu!0РٺBY_nPNɾd#z ܋LP/\ճ\fgshVH(RSqp]B1VIJ¹dp\$~rSinF7Phyd"+9G7ayz{UH3&^M*cxx^MUc[cMԶ$E3{y@eX^>֡nTkvW tk2@DLjwa('7[D]4ڝg-ضj?^iW"ݫ{+W"3t}?9(m#tF6m?",&/{^D}yսlYvզƅ DD4d8L9Ppl2UVߵy" {gvAf/?ZY4Ŵ[RrrٿaW~VCP03[׸r=p7EPNr >*6j9xztw,AQǺ3W= vb%4d6x:V4 G+_{KSϊ?P{ZNI:(>/j.zTYÄ嫲J8s}Q6ZBpX^8OݛXW]_J9\UI[X7g)1xn|$x}Rnhdh鎝MC46.G0)%TUP)~$x8:iR}S2v]BWUm`RqB"[^Q# 6ՈuQmݽ):faGU+iVN#>yM n7Zw2˖J7^nmRP Y0mTvH[wY[K0p)pewCPK\9ֺ}z@KS2C\a K6M2iTC~nIƯ/FOhG〓({b5-#qņ9Z[R")РQhjX05<Ј=Ail@Vz34~=M a#Uc 4ʋPS.I'm[x@8f{hjM{JwlU*^m]lp7﹄le(j8|GR4WGPgQR2\cR^~4}ۂ R`'Vxw2ɪjpU-Z}(F8JS2G]ēv箂 !Ƚq!tyֱg ܗԊ );^h`Upwoō} !O|vFH$vb` ѕPF /rW#ߦ]|Ѱ0X.k=>f]y6S"-<(xc! 8Ԁ3\"*ltOӰ{8"}/Ki UQϞhJʽE~ubhtig”f}LJk>0Ersyw$}ʹjOZ[|(Hid0ˮ_~mOќ"j3Sa)l/r)WwVh%AHusY/ˋ/ +u6L5j j[UU皰dxVޗ]Ė'F{=}#E1y) &] _ZM`kf U lqcs[KYʖ9#pbg  yc3/C3Xx< biNA&Oi #]M"0 :.dtCرx#{_JYסhR9 O7ZHd>ShYؼ .e}LP)7X|"鼽l/ +X7狕t&d] IiP%흏AƦ0ڒxE$[iSL%f=IVۻBjbN Z |“k'L^}i"v9jqL u+ܢq)nv6 ǕP|NeTMe H e(FyUJfu3rV:&?uD"_vq IU`ŏGfHmznp. 5Iy)t;f9v&ʵ?ާ3(w+bdB!W{/)%sV]=_cMfā8$ o4^ @dS(z ަM騫@v FɆ%;ߐ0OsvZ8{ =X^0"g%ިNVW ~&"Ruh:J pyaA"|s+^_=茏's7'sjFEPjj}EEaѿ ~A"3fmQ 84DڀT*Mh $ȒΈSH ><4M:aa2dv([õJuVAt<77])9VP!6jdoM/^<'xи #)&ш"Zw0р?ӽ~pS##SH[:S G[1L7xVvB6a.R8Q;_dSYOv 7/ /AcSNc?@ *6?`_\Q[7a_k=<0̭a+|~OR `(.TfLTS6ic-@ٸxPf:!l&_DLȁl,Y9C;m٢nz[.'>%{FN(fŖH`7r( +Sv?F&^7s͍{ mR.q@@vP!ޖJS5/#fA#WO4w}j{CC7m:ppܙwPr: loBCV AhʩĴ_ƐB]5KzgۭĨƝ CHs3 ZAvkut6puY_zVuK0XT {{sn?; &f.g,0pO*wؖA4۔I_XJ^D,F.m?aioTmsLx h/\Tdhr*uc'|gvndtκW>_pjf؞_ah 'kbr;1? yC_̓s;ŗ2hQa]*#[H٦}r&doh[~9%e_q!woEd,KȂpg"LbJLLq t `ТKL:j) eet<2[?%@1NV+bA՘2jZ6vF59kJOf҇+-*}rsݟ Q UlFz8_Nǧ;'YOSvX'J!8r{BerX 0(kۊ vXJlPdV+CS_nj&c66DQeE1[14[9!|5%KDz.V; Yм3[6Ϳ?HzzD M1Yw1eTˮX,d\yҴWV+"Zm0FⳲan(=M(%?2(ҖE(F0{1Q >Y㶴6r /]1Mz`ExbjEQ3cܱa?ưcOSË*C0&+~Og,-zz}AhWGb`Jܨp(I0hAy*馂ԯY%G/$L!1Rz?d_LU4LcdyW;:D].eoz$`Z/jZ]ASoB|XʐjzKTP^֫a!F8 & wMI2 l)D9FUvgmE`\V56AO"[~2GBR-g q3+B$auRnD5AW)kP6GRgIUez7\jܗ*5 "q_6:33:o~5Sޠd;d7B^3rh7>.9r$>Z vb3k@ = Iܺ{"$"L.)#uCuA|NXfW#es5>7R3z r(y0? NSl*A ݢRy[\/t!%/\zʬZ&&\ٱ="PH@~^'5W`*KڦX,>=>z7ا֭E//ݲ㛑On ?D 35s4N)Wl\ 2~mKE3̑㽊 GO_I·n?oJ粜FJ6.=L+J+0ʘj<,u(NRaVwU-{7f:gLZ{)ᙂfI=˃cRset0|<8cLgGoQZ"NK?ߩԼ78 zQfn@tz{K%gN? ʯW/!|f*Ƽ!jZv 8J~@#4;zFI7u?Eg[,ŻO7a> *`Rf5K |- Dv-^7&{-9p_' Rf7/ 9 D8\UذE :C̣-/cB^wb}|t(|F0@RC`omVQ Ϗ$!2oq%ߒGl[rm:|BOU=O&Zi>q.6Cآ(ddj$< 9G>sX(04yYS! S楼"̲ƍ&1oAlQKf3YsIIGVI{o D Yipk|n۽uomZA"Xvh-d`]qZGDHqIa\zN}W5KvrwʴG]tkU}@)4g̹/1U6xJ212N`{ӭ:zB( D2s,#"dv%33:]\T%%Ͷo[)[T^[>1_ 8`2RŶ0JV./N+kPa׀mjF٬q>Y!dxIn& 6ٳfk~]'pnmϬGK y$hcGe#ŻK4>Ü%D&$vPtء,l1"XvnR{'tHF,PALRбB|d}f Hwc`bE~)xZˬeʢgQ > vr޵O'0}VWޙ(jT@7 w2VќM|<6 ,X!?b;/Mʼn6/-:Ykjخ|6!HIlTs KhpEq@Nh#GໆxLtJew춚 yQ߲)mFQ'%R[2AB 16ATߓ28sdx(`O$кlzP\qԓ2[1D,sKCE^\}c l>BD[Nрeє85Ei|%#CF:bq#r?ҖL$NΝac2W׋:ضd]"m9ܜÌ]ih*h$S_4(퀑!N%>Y.ށpҦ-^lhM]qPe/~EU=5mXǰ{Z{ZK٭ؒDݛȖAHϰ. s34ò-KqtA?cI@6Cr%ǙR֙+ a^}y" pS)]+gm[@8zac':u\Vt9f0Md&yuVs:$ɷLܥr?8e T˝.R WD1X["1*ZBս 6]FuNz.Q&pΊ#֕+k܂ 8a !PDt/ EUg1Hʮ]`cazC',e @OVeA"?mH1LyM 7gfy|77&Mu &JV2=Ykcwai)Pd!Wls'׾zPifrذUm- bɇz޽QAZ߅,6ّF$ZPaQo)(y"Qi[DcBxs}wEV^ыla7TsN*rC7 X6wH!m)l wE3nH?ݧ [CB^ a'(PKAcA0ގB?~5ˆx_p j0a_XO}q3xNbyH08.E51ǨFz+R~1u"vy@iEd,1:fmV X ?_+?EAc S)ί;p%!-)uz ;TؽF q3B,9:!}#;GH%5C߱)A/4R. ha*!ߖA6s4Ooa޳ U5g8-4t <(!Cme!O}ƞ]Bٿzt(=Gpj$K)!a,GH9NwעԀxWBN`Q*# #2^ZǜPU1Ǎjl9ɛID 6!z #-{AY6h;MՔ4I7Iܭye=bܥk!6!LXfkLۖNh`B ս ظ*3*T^-|I>Y"4?x4*Vr!A!Pf)Efgs~0,O:Xsp./]N-~|eㆂ [g:U7*- h~jɂi*ohL^V!hTS46} ^[z'ys<+SXI eFR4GFjRwp(h}RNICE|6y4.e]e+.Ug&^X%6d+ئj>uQYſ"y mN-a}t@\(Um+&+<TyG922MՕqK Jڽpt*-A o~ʥu]\\66QNZ~&{1.ȋ &] {xQ jS%)TS-!= 7 O V:>càø1[{/Kg (*Z :Ε೘54^^#I8Op˒h|7l'.}/e|y;>}Лꘝ/*2B܁FZ;Wc|iA ,nZ JC4 c] hMdm4NjHf+ x(꯿.ŸsKSg:e$3azOD۔(k#+;#8֧ʱp]\t/oe \M*'Am[an`3B';:J|5U6wY_840^1L5l =ۿv8sn͚ ?zAsٳpgO. U=>g3SFaVuBg9Wh}2Ju5o.u.uhaڞ2*q{L/ 2K ?fKB W.i Dm:<-_%ӌm%7 =ߩj~扵Үo{Di_Gvw)[DR "q ӣ'R=i~_ƧCh/,DYD?Dw e<29(^Uks^Ƨ/82BsЙv5D;U 7/(}/T/"^E#wsO "鈈&qZ((y-jġL:ͲKQ=;;: KᲐ^pqNs]65 -m>O@Yi~!ߖMk-ix3NT Nx.X*>"S8N {K޼3 ܥC!D914χ xu5R3-Ԧ)Z&=~#~e<+'a[%o I'A2(HY<̿ǻ</yNH˟S߆9ڦ3ZR<e0͛e^q/+5SV}wH6}+NS~'F9E}B ٬,&c’ȄHTkbA,2M =NL$+Pr /"|s6W6?鐁La9tuKTG_ Lwoi8)xqjfa[|Os&S$``b4N(To!UXF-Yeɨb 8!=_3ͬJ' ,JEzo_t>2?nOMp07mvtK FuSj>K'}96"ă G+CidE_q 곥鉚ESp} E5 Wކ(/>;e;oRzZIsHTR'NwBHM b Knߟǥ$z'ԒgnI]kN4#ODUf*<5dIްyghV^jZv ]O( qr/Ɲt+lE/)Biv=,Ƈxv7v>a 0Zuox$c󕙷͎Щ%UIkb6+g/ :S OMDK9Ŵ JKݳ*|gqmAÞV45N J {XXT&z"GI>-6wX8J7d"]ZZoN? H,5vT&q !\w-}{i5P8 ׽S^0ͨE)hԋeufO9ӛ4 A(:G?sRý{,@wA,K#W+U}Q mf%9vkXk$z!JeOX9$lT0A\& 8m'(f+g4z X̘_5ɡ&Oމ/ݔGo;m&sDl|x*~T)'&,LswZ9C6#>Q;kd\/PM~=Z0x',-{W,7FYfz-V$"2_%ofwi?320> ʁ2mp3J#Oajm5SW 6OO,MMjR#W~cOƘiXA;`&66V8v08w44< X acrD5sEGNz`e"wS_ xY8wd+}^;+쒁v2N-iй2!뾤T3%HٔC׾rt_ab,Bo)%8KfgNVĄC\nB_]V;Aǵ85C)ޕ@ᏹ]V Tatn h-ɧp1v^9s$~zE[â95>b֗9b]ǭwۋb t @n*B <{psXlvFR_tw{7D}EXbk$Rjj;5LD̔b{_8:U\V퓈E3r^SI;lU_lĪVcvy&ZQ/$ FHxe)Ԑ vz7Byڟ_⌁lS5j&24)9 >̧b9[{^x* TNEĹS@ؤ#N,WU ~_k&Z"?nNmdš݃JY33sRWgؾb%Ր5,JgWp o*[9IJxl̛%GcPJK)\r1Q8Rzq}kyH[DV84E}ňi:M2rS_Ljg^ec^$h).le7!Fc>ÔAU3 ff[ 6"&}skϹ%c%J*nB'g+%-C!%;(BṴ̀]W96y<8^:261 i 1rҙXs. h7ajfqt<wR:(Da*:#-ҫq $6(||Ҍ͝?Nuюrj{U1x(+yhβ*W? ɲFd oԟd1>ϭ%ZrQ.5f<33 ;_$?&.%OxY-#F59ZE*ܸeX pëmȵ۰΢C_]]ڣoi˦MzJpgHU%)v ]i. S12%31P+DgVAg8 ,_Wh\3]h[$!`eTGz/L0t7FQɺi5ʇ[ɬ)=yȃT4d2VzoJ.sS- pBB r VyLR}nHG'q"h%ԪP =7 ;47ݼܘr?hn7u^d׊h+ Ph<:l:H):8k-gj<th2= YlfyCf@Q9붅Y92L?5+zF9jKryL֥劳c [;m':YV1Q6rIh3%A,-.aMu[?ʰ/o3 @%'KӃYQ0gvm6dv>k Y:Pj͎>_ӸH o{Cv4R/(9H[ ږֺ)VbtE?6kV+X[uc^$xԸs W^?Jx040I@+Xx*4CEbi gTLw *I+K;/k10zhPT`I |dZK t65 fK矈[Ru@h<8t {MvKrkDot򝇉S9SI&!yL98^i,>. hUdhtA1HٱH̴m#-HnМn<,)nO˙qk7@}*ݰqiE}D} !'̸O,Ɋ\Ja0ޮwƛ_kORAA+KJ:"e3>1Sbb.0~KzIģ%"g Z[]WēK)H2iv1g $9]ѓ?_YEؿ sR>~“J@pZ\*tbV2kR:fE$uMBW9>e }Xc~#e_6Ʀ_D1WT<3 Ӡr5E7xԊft' |ȣ.@< W*WZ&JlhėD#>;i.Sz5 ĶZ=x'o,uM0轸}3D!-l3vIHmӊbτ<"bY}p:w,+v)DL"$4` Z,;^6|T(ѨՖnϹD}FG϶11dzB} K${ed?ȇ;C;yRZ'TdUFyk%Ɋ+ޒhƩ' nԢj'2ƒz=iBb/w{˫HudQ22GTiaol_ C~z~AR]BW3sDA"ӆ/ LYXynmf[N5~qPj$`@gUeE%}2eQpc)ݩMwqíB-B* ,Zw8W?QL3~$]w hÊ \YA :F`tPXTv4OoO,(Ua'ȝ 6Mh]ՔLx}$j"W)o|q9aԣ%Sy4AEq->e/-A e>=1k%%z1hc&ZS܋_ZJy ") OO!z46\KgYjzYhM:=]x44=8j)aeSKK(RᫌnO0LrɴpIı' ,`xazަRsu@SGDӤjZh)I!SȢ=D孤K.%b-6%7; !q=5BתVDQĘÐ 2x#/+xsU25ډx1ʆ=nT-{Qs(DVÁo pZ%~u꣗ĺ C<4-Ca/:? ?# Ȧa3S0+T4NJ]Dn!{ d9[cu =FB?+{vI?ts\r"Ʃw9"-G4i49כ"6MvjL*]RtWk{8q} LaW̸3^~_z&lk3C3a'2w-6ѿfSs2T༃ioK~mNRLYlPy1}zӑe໪o@ jЖ7W%`Ia' Sn?NBAvg *ڍ3_ GdR)m+JJ%w~n7"Xz!l,5]r|z[6x4OQND ermcݙv9IB".dIsW+,}x?F,;HH`&D*_daβQlE?_I6Tgm\. 9h*u zDb^a4d@̴Ȕ-VzqŗtFCkCUNo iKHzgiQ@ӝw#i)4+^QwKc  r ۯ@k lT;`(4CAWV-5x"4d1:,U=+fTг?i*(5q NS\Tf=Ӏ^ԯ<84.VW}dnLMAt [%,;(2V;ڛc KRV" vgj&9<|` CNP}rފ2b#'D%^"?V?`Yqz*7.¾ qANy z)x]jYռc7X8/[|uV4Z:PGԪ>!b3' ʩn]_|%A%ZԌ-Kjހn9z$:H,F4@S%(bayM=&j64H-~z _ʠ427GTZX-- s(O?=]ZS]E]( 5H Q jrj #ia `~RJ!&3!Qd@>]B%‹q:ij2O[@%sbZe@tKU{+~0ZpXQΊNc1xT=$sQCZ'Lp JP~]t?nEVI9θܣW4F8@!iR|Jv[ǯ7h'g> v37e-!G.ig<å\9|o&ױi%zf۾F]ջn&&<}ͅs45+AWt.x~CRdWւ+~A bFo +@\dZRCIC_c^rJۀĖ{\Xn!]!vq1ICa:T='MuYƻd8е?>ךZVªT'[ԉֵ(yfބ 4y u C.: ǞtwF\מ(лÄmy݇E5k(,LX6 ~Aˠڅ]#'s`wdzGv6/(LQѯKPʋotvaY+>V˟N Q)9*bhdWQ٩A{E7\ǞU*l1%)"雛v8x[G)n+=  9Dz!jԫFVILU:u֖9t9aDB'SvzIf:hoťD(0\MR#bbaa2 {H!N6#b>r> Dm}0 x)Y:4hbHsା{A|P GkyجnAb6I!<ƍ<ۙr|õRgy8NsꕙRS27eTU%zreXi|=j˼=ŵ,D2Nĵ˜Aޕ<]_3(Q: ekрLbڒHDۮ6 HFDq|Svn&|Rn^ivXHpT`̮چ{IWM/.Oc3yai(%``)bŋQRd6D_[>He%D 0F=2Lmٵt?||Uvn"i-\X_9jЮN<4SbniCpIYt8fn"C3Pʠ~zdk֏y[)$z4òԛAbiަ'(N..2hkZ~:!3iq \ohy]8qew/ E\vn?+hȑ@Dw1K*ڲMɎYo&N%BweOb|J"g]KbzX%':LI OJ(kTxKcxuI*c)(EMBh7z,3w]yfmAesFB;D_]L 8E.u yG{b%S%0l&Z:@;첹eQ9?@b΋>5H)gu<'W))-ht_Zy< +1wWޫD /l8Rj<3Z0[b,0τ*ؠDGZ 8x#n)[b* {")By8N%ټrGAڿ2vlQQ?ZQ-6EFv5?fEt?[3 vDz#99Ƞp4{ݻ\~z'K܀NJ_}lbP^YE^Ue~*k&Lc BRLd-?; |5Ǜ0yc G($c8h 0];[ʈ6G*A^dx^%h^VPc94j!Y#: yPf FsYz5V_f-ڠGoO]Pu'dF_ ̑%P:^>< [nQNE􉖸4ӕM7(~di2#wqe諘:CO j8jpiDN4hz> y/,<,8$^43u"3yĞr.ǩ0na:45}-!*.-},٪L$c+G21Rd컣K o`O]#MHtud?%b RaIN|VYaM)=e E|>kwJdQف,Ά˶F0M4t3-leT$ ]9&Aghة_aZ'4&^w֍5po˱-isKh5ӟPȔڅ,a- fDHA)"*pD/F(tTIEV1NAA*<hD{rq}5շ@ڍ/`љPs 1g@"P;t[e30@XoE;k0 }.$`Z[2Ybp|U(Rc7+BcPa?[$;8&X 6̊1-םtLgNl‡T¸Ղ)e̜XKS )7vLw ARrep+`1┧þU"3KGVS~1sD Ǫ6<6:U;|\G~2jB5u]uc[M.ZijWքŧE9^M!\ ٌ=vF ۉ(kSI^Nqfj%ViN2*s d/Xg%Tt*ɶwU[^=uP9>M4ubTJqqǷԚ#!zS0bvX»0b hu@RB`dwyʖ,%a8\-I/ScQ`6F[39_ogߤeT #};q 6LAQعX2"C/gpu|['DŽa37"їhhءğO^ p5a.X߷Ei 2lpၴm*ZDip$kć ;)\ݻ@rOx (|a=Xέ1K&@s|i,"UU{/3ϲ+C{nE? @~Yc[׺w*gm2`Œ5vH1@%žvPZ{ȠG\$#^ 9"1b)?s9"%[3|I9fj(ޑ.]XF vY+o-Fs^R~ҝ96͏6*68f(p3NM(Zj Ì3俩-́\aYDΊ/{dgZ3V;| OA~ɹY,4<]Oh>1̜jH[#{X6$6t?݆Y09ӫQ8d찶|ї}_Ӯr\,5Uy{n;F V}kہ,N֚ZEƨr0 xmlxTD 32Ē/zO!X#@ZTWg:BbgpF)HQι$U̚P5jȁc_<w/Yr%pVm17I N_Mӫ4<;!]Q.VʂI6'wr/L|Ђ)֋Vnӽ/:iݘc<~(.&P?3Ct͌]5]2NqF$}2#+ڽhOyK?}Rk <#dl#J[,{;惓)Pe0#FySB~S dR/[LQ#s^*b]f訾# \ -4C{M>;bbȾXikw3F`B;38! mϟh~ fr{lM  ѨRM=XQj3&Rg0@-nhE 5V׌$(co7]ZS]DFe 1m֙FcixUU ;$P; ohME8݀{% P$wsۯaTPxZj0|EXPi>1݁/A%m5/=L\zsxt=OTz(Dzt u/}ęav*d%,9~]3^n>ઢ"Xf#;ߨjQݏec"YcKMK{[Jl@BsZ!?>8hXثDRZp4V~q7Fl Pz`t{> ,|c(xd IOvlϛE+mЎgg>dkẂȫi@:5ۊxH !"9)xp\ .Pڦ!˔ԡoq2'ZECb2?6#wm¨k#>viTVr'O9\~+H>%:7a fSq %gjh @Ty4HْEc3Y >I8N(!,!D|K >!a&:53''2=3 {g 2VA43)o*B.p}|? Ƨ1LieٗBzD!2ݐD~!_^GـKƻr| $ 82]B1AȎf 3x# D"Ml'&GDrP@l8[\ "}*}ڣ^'6&}5<`04.ErQ=};# ʁ}joП7k#]~H@ѫf~V Z`-Vj2mRi {z\`A-J`)('3! IL|5CrA$lE!iWr/"tq,I Sâ/HYaq%]4(7htS)3ъyrDe*ggkXOFwtI-'Ճ^1K!ִċDD%A{71rDrD%v-S8KcDTt0N7|tRo\gJ}r3.䮿B6sI#Fb-EɴX xp̜[}T2İ3o$N5DWz4@B^xpP-E8 x0IUAC}}S.v[׏7l԰r 6xYJwTch"pX߂N %w(tΦ,gcyqDP]f[C]gY+j)xZl!$k]3u8RVtUoO;N&/h`&4p1 [X>9!Dc=eƳv;SV zjg_ԅev?Ҥ!w6a([#Ӂs4#tP$rըe#!'t0~ ;vO&.eA?{uzǠ?HQtlxa9fA穑yR.l3st`-EXv$helK :3+h: 嶚z,\Wru쑸b̛ͩI1\v^=lZ9C NNz`6L<6W\ȞchQSjM'v`u4jvShr͸ /qҬ+5,7A)/ 'ΈAv3K 0=-F*H 0QPx=ӟ\Nz3,K:YtiA3 Hc`& \V}ȸ.[ 'YVYt/SC,B%> q K+N[M2A=o Z9P *q!7{^ ^&-`9Cx+ngr< zUJUoC!ObԴj3'#;b;R<_@M[u<:KD iTO r6Bqchɱ{|d/68C_G[mSxohYQQRyLKNP&h+Y~p;@8s$|п3O\Ķx-8tW"å4#ؼⲴxE9^Ti OӞ`VjX-=w6|ej,qirpjm'3#7r@^,Gץ4pEA9n_8/e[jm ,4-Rn4KEQ7&!H$tK6%\_\C^Xo=NŶ! [r4H> G _=q#jpe;HjIh@CYGmAF} o}0Rҟ"_!M߻AJg:.)D;A99%G<'J˪2P5bH2I2Ũ-Gk;YݔA/e(:Ty/  VD 1;1A.'N&$ ԙa` M> x M43ް:t6~?*b$?ưj7qEh`!!Zou3HĊtLo/MW廘F؄h `S;4VF: ) ڮQ3C}#oƇIkEcm'<]Y_"L1݃}XSMhۗꗖb0z`%̢Fs^wu <[psƾRH%m*~yC-0TfM_?wh( \rCxU`/?<o($<^LIP-ul@)I5䥦j~B3AC[Ҽ=}3wٍp\&]n1j=’K;"y(B*' Eԁ tO5lj3NU}o` {^P+}ϱzT8=7Dk|ܰ6+@))bRy'/ž{_ӍT1$ۊ`rP?Czgk^=x25dDw_7 n#S}{%PM7E/' ]<ƛP ].az{P/yE\,=ax Q*wӘ] àAj[M ؑqfop}狙bP xi][V~µ?]sd6']| v=_F<,a Qx'#]{d|K4"|K[y ݊{"qE,`MhV0 +{>rwI꓋?^c>X&NMCQ;-> 暿( 9 yar`'ti SéHxRЈ+EںNA*5qc INze?4UH i$S',ůwOPHBš2KcrkPq> A#5=4)7[gQ=0R/&Ц<E!l'j:w~WfcPߋ!J;O|C1b~Ln7KZDfӧV:\0ٱobs#@Χ^'E|t~:@/nAsdm9SFԆ3:pufofcY:}ZI8VMWJ\ !诨fBi>cu&.[ǸeEb`](C8c5g3>-Iz,Iû/FfV?3lڱN[4ңy| ˖ T(e+g?>)#THG?pLzAͧfmH@Y\#z+סV@R^`,aRlF4hUό}`d:o1Tt< i?t/1у:b vyQئ?b IQ'5BePrB'S܀Ys@ݻ"IAb%7hj8*@n$!Ex ~ [SV~$ ^&xgy8E}ʱmM=H@lbD{I4?N}IP<>JR}:Xt]^tʕf[π62α-;=fXt12||5r5U ݸE[t Cw\x,[ tD4c9mZxog[mBe.`+xUD'j kp`h]:dž d-@c\ o▩II(B2x:{ꃗҒ=$ *PorZ4p4=r 3aѬG8Q>f&^ѓ4t0'|>l ȝjrou:\ܥ7pߥZk)Зxw[ /^f!IUհ|Ws- 6ܷ:":DxlX7XNe82mvy_ĵH}M6XL9Rx4*VϳМr3 *^5oMs?ߺx\#)\/9Ay"'32vm׹SqPS`z+pqwI,,ʶ[(&J=l"z˔+qyy>s߽OA%Nm\XÆ87L^ց][:k9UZB%<=2.x]hҙaW.<6~+\@U% Ov@O%%AR*JUlO‹ ݡ8sgd❔0 ?KHi|~aӡ&ry*Xe(L@1sS`&?M,ce ?cE1mbd/ͺ1rxuqa'Wn:ydN}_ >1U*mX@}5oҖXNxuÌ\0,Ϙ8\$N >i?l pCK_jnrrb80ļp*9`fv:"\FoXDLM;ʰv0S8? 8by& I+0U!_·88+0tߤxe9ۘP}Nt8NEפȬ *fzʋb.G1)苑6qZsJ- [I[.9gIntHw w?]0)ӮB%D<ve3$zE~mX;YSh'=ҼQnJ~j+t?/4:ۨNcmL d4y9l5, pjn#9uhQ }QV2*gE¾(ᆈ)9̔#fz9Y]|R!aPJ3娸E!mP| nEZZ~t}W3\0kjS\K/ۢ'  *G+?R[*m7l]%|P& ml0KV(:k☃(*mGz"/VeE2*w:)t*ϿFeIL#6kpS|/wS|*Q@5gdoǫp8h .IDVq{v*t0Z^LflfX8@冂yQϫa!=tVD!@nZK6a攐c;[e$\fiaڍDmpuwi (FN NW,~lDT<% .Xlgձ4l)!GyY/Ro?% wbGA;6=v/9{5ؑ 1\ vB '5GvUTNdH$6}`~D998 8me)%94x:c2r6 $k)}cqF="p\LQV֒ئE 2*FdHyof1aySrbϦFGx/QYs|0 a=Ts*֥u(kcl ع[ǯN-FxeȏrgH0VD^ 3A2 xQ̺% Zpƌh I%G\w`= x#+6lM2Yy$pے>r6h?Ke{p (O֎/Pl~i`)EG>p:ed!mpM%WKwǴ/ B/T]:^dogF^.uϓE~5a2ނw-HIR}N+$`MB>SE@qE; ]&ZFiȣrɄpY-XkH|?`ɸJ*xվ3SI:F,kř035U{LO=~&j b&b uK hNzh( K'С0ˍIߴ4.R#O!oݑRÐGyʽY5Gb6I;U9`Kb*̩x;xp8$u'4YJ4PE/TT(s"fY!>qƦ!bw ~bK|[L>q!qĝ)Q*P iڨX;5+Tyr>{XhieYERװ's+˘qʣW$Ēң(eDPSф N:+incnidzZbP,#J҃/+\ڭX0y>eĺDUgx3_p33C6, boK c W >8 <ȈVg1M .:-5zK3WGÎ-\XUxyQe@YjYyѲ)$eB:)Ul\ T w6!vpm0e:.|dCgy8*NX{ݝH-b5$`$n yf)b230"Fhx^)n n!5Z"zشYOBqj,E|~@*<Һ85y&z29 XW>'d6I3sQ8΂e ؤ,xcƒ c7` =[1sē(?6_pe[HDqloio6q508g@yS.&=[h REzuWhnAv=cApI'*iaANKB/܂T)KG*[e'|Ɔ!EXf?*/`B]XbF۪c)+|*`~>HΥ|JMVt&jlk ɹ}%sM~E)Ugr L'0y8g?/H[3C+m560aJ,FNԽon! >P:jls#X*okEJa^Ɇ)Q"mHIT=/J-/ w/5iP5#x[ pKB3(FDߒ\8S^KH3;WH:Wv^U;CGOy9AX8/~9؁5hU˶KQ%R6/L^ĐPSl07 9Fi]V@ C. f!M28jA`z7|QZPP'dP&rXEE'aOk8kn%YovNL(/}_N+$`Dt,߰Ktt:q9\!.h0@?`fH.*]B+DЂ/4=^:,5&{U %E=dcNu\~<%v Mu-\}>eA ηV@%էsSp{9@ܶ% [X8[V_Ūi pmJQe/W2E }r@sR:hc3?@Z9CsިJ<ȱ|G|2wر3m-@[9ƳZzDMr0_cכHAhѪqc<>\=5 _)c?u? |5Ц^ _cM2烃bvwlJFtNQ&)N dзLWG}{{]vElS2^[s mfQɀ Ԥq%Y!*}FȺW(UVIWߔM ajŦQ <1EAIQlpPz\2:^eû6o>8P )ao>ujaX{lp޾EH+mCP,Al]RtVX}]|nvL7M-QY^SJtWVyǼ3zDI‹cH&Mtu EG$ݷΗɠM7|Gsw~s.<!ntԷǗ3ԯ[}'E/UTvʱhΒո NzTծ.VZo D uPk2/%1ߵL鑤М},|/?䕋-̊ʼP Վ|gP ܓ1w+%IRI",qaG^. zq \}*yV?!d+?B~RUg>_2X-滬SI-&fGy*,1c.Sv pL@[sZFRG+N^5粙C O1BiDC`IVYvޭ ?i~ROƢOu^*B,iv򖯇HXQzZdog _NS隩a Xwi_WJ$»V^'/Tc{ض>8uٸWI~^YU(mΤeu'R Z5߷e_(VPM~6 l٨(|Xd z!> JX7^@ݙJKm݄͍nb8j h]WA䁎@JG"2t >C? l:*:.` (˽rn [aQׄ4P&.M vAbe.t/m YH%WɷF^>3E*-f䵦{ zIeNtkyG>e; o'unZ2ѿ`=_.wx|Rԅm^PFN5Í'еLEOMJ=FS϶*znyoM0(%n;7KQTHhRv'"#L- ߰V`{&'OkV㍺(yLa[ؖN,pg6%6woezAK \s:)5P>A(JUrx3` fc{IG / ڠ~pqbΒkѾR3 h+1 AdZe!5?+db9U~@170o, EE S9=iH)f[? 95kvqi8ܭp0g;!e e;XF BS%#b _Ӕ?ɱv1EFow {hy0J,C%9hrզ\yLq Ꝺ>Ri[emeBUIK{@Cy/eȁDW-䛪Kdm]5Cė~;iN[Mbojp)h)FHOP\y2!$mVOOL|^^\V̾&W}0AVRKŇ;hQ]uD鸹K7smf =KM% Z%~M?!`¶.Ҹa &LC8vT)JکSOEpV:89+䬤 >M;yN c4ea*Ԥl,e&uV0b:g,܎RzaG2d WSOvQgJ)s FB\nrJ۟gVl zl; S.3Yt0p\js^?X&] /0#7?-25IzROWf=Wr,1;Owɮmiꂿd\<eOl}/ qt%1([ɓ%ᣐJ' 5FyK^'!8dla輆O'* f {uE"QץVK˳+l 81#r5bN4"-+t\/KM㳌1`jj njقӲ|H%d[GJ]%u|v ҃ N\~&R(2)?=fHyj7Rwg -$Eon]wƃL൤]9Il.A=wЂ%q?Bs6bICb)q "E,0#+wjlDr+?' zKй b^&,k\& Vg!2D8*HFEc+2b.8zwsC +%WM y. v;mlnLn|&-›XЂcJaK(Z-=wc!s#搐IDqR D"#okqEVfR=4 GOUBv L݋tkW~ߟY }/&vh>%Dpf|R1<6p"*ǯM pr'/7ɔZb頟&GJR3 e9m ,egX+}˓\!lq;Zs٭[]G&8lBLQ&))Lg|=zӻَmAd-)uw4i4P,x -yr z) |P0R~ -[+T")=Ү:1xs$?t-MdvO1[{y|0j]""XQ8`zx66Lg(޾}dypB[ٸX"-lV> V_+M+C%ݙR{ N, o2Ql@H9]ɹ@rLik*8_YP*LyÓzRE#AT]#j&yf I<rRzO0器v$ZfB` S<5&+C6"͋If |t(sS8щX+@8.ďuVpS@c#F&A]iO[$Eƭ(<b_i\HZ#z/.'弊3RW$TGv.x$5x]YتV^d f%Z /gh-\+~H-Id,;B2r.@%mXLLF "7_m=~=L/jj,=†F:Lgz8CϩBO ct/V "DnWF /7ED ~!ڧb⃌5߭ [y+?e$ܰ#V&GHi4-}{sqfC${#C~;c{Zt6䊔 el\<9v–G{Rx8,QrU.UKv/V}ȸ:]n0Y ޺+|z+=7j֤Rs*͢"O4N/Pt8*`TU*UIDݩft- Fe_]2C^P;ybC9jSOly_uLjMZ4c[?p ץαy HR0O|wG8]b؅݊~$oyQJkΞی`+srFǛXuZX}#@V::\dKcIaTG4oj,ftZVDEYnȍ jwAb]K]0gjrZNugHLaM !@1z6.GUi2Hp~.b]VR~"S:@6ig\B},< Y A@ ĉog 0(ӓD`98cKݯX7\5څC~_Z#C#!ֲ=xSfkDM $<􂗮@ $v(ɕWh{S[=eQB9+eq>(iT>:^y :!trJ7"ʪ4B]nbo6sܬmc9ȸ³dAe{62vOIJm'%$o^GOnHPɈ<{eb+٣A?+go7#WZJ x^IEtYX߮f9L\ja soľ&JZ-p?]6NWfy}͈|G9u4/ HXv6{ARJ0EeP>UFuủtxڎ3`Q^LGdr[ }Kdr.+ɾ|mz5A\N~ fΐP 2*`2 NT;GQhd%5y]Z{2D PCjV"Zf4Տ)vX{ ؋8 o gCCc$-()FqlC9^Ia;ErQVW,Lk#Mx [ |:e)%aeM8{Tcx,Ln LsaFH0n0޶z#e uK0CF݊_ (alYʿ7qn}@s!Bt00 +TOusY-=uc7ق Mm w|'\ߍm+y ̸1kkܡJZ4Og>k5xe=$/IhiOS`*=fI1":N<:?//E4^$㙵(#Rǩ:ĵ1ʦH4ʓ,fВ=ˊy-n/ >bDcuw/vIGEj?NiY40$ hǐ ii EP G꼲%r4w.EJP0Ĺg\P`!>CqihvcX2vީ|sP ^A@>yWm-auKK\2 6kPe;mwjAY-r`w8tU+ VǜG$["BWukyʢ5ۥo_[1J97S6Dž+&0% ?4s%Ats"j&4&*;#A}={坝\#UU3"Ŧ{m1ڳEƂ ݎ7̓2v x2ܞ[ï1iC)^$"Xj你 jPP]C&L6_8V"0=|1djt\\ry*SfD&98VU0TI*ykA4KvOYY3\l,1z!JP#wFOYI-7)FȮi[B]OL=ß̀7 CHiFcG+ #uJYU:g9VOBl_*Wg8/dZWԤ۠ aduKY#4+}8l}knYekUUĶ/$>Wk0S&}@@4E!9']c$}Lhk=` l.WA:7oUE$_ojBXCͳaڤT X GNgM |xL≗*\wáq{O6Rt ?(k^ ,pAScNB0!a8EOv-v&-f䔙rn.Pő[^wl3!MO֋J_ꑓ֥U`F TC~1l*˾naV%s'9pk4]\- qۡP$ ZJkOϵ!iX&]* 9'9dE)ɏ_EExYP]% K>C)Dwt07hlB>FZ]{cMr`*n4sBdL,rWr]!A"f| 0sSjAOVmK Vdc؇cK2aS124aSuԋY׆wQ@ݘ>K5?b5@[Vq&DO1Fy_+*TDZ5- ޚ=_N{e({>v}y﭂k]xufMg?md냴=}U|7㡝3vm-S&2J34l5chs E|?[#7#k^_CjtKq/-@ն] Ȉp!x-0J [/ZjV翩QoQȔUQmN*X/t*d9LDf~΋F  Z>grR8M3],nk]5 d:Wش(nOɴl>Nn?EhhjJg)WK\3fyyb,OtD pa"DWm/_߾ qa4?HIqZDɯ4жmUE-MZ9!=~_>Tv%o˙r>&%E.2E.ҼoݲYPhQk{DvH^j^}VV,b+!u.k}Kj|l%ios![щk=Xg*ZE_._kZ=4/U5- ʪ%O ^h }QlG*-lgJ03[^[&=aP. 6'h N)ct L}rNѓQ9SM o^]{gyh煖XP F;eҲtdEe>K_@!_avclruMPr-*4ԄЂV~Q̰>;^N;r"R5Fd8؇G;4 #f;0EbsҵO?0l5ygp M䪜+KO p6^8w\RkLVLXJT&4Y V?h=x%.!yQwYfm?11m!ϣ@{i⭹63mwc4->YJ%/Kב-:Q\x]%p@v"ϋ5 Ѵ!ޢ*ng]2X{'1@G^ş Fl-܅rݟuGXa=j67,#YvBXrӵR!xq P椵֧ltAo `j#M !}>0qI" ,!z[{@ =@+Êj̯(U4UUGhyҚONIL`T"v]rֹ0p )3`4ўLi52})[&AԊi vI4?EtY H'7QR*G? ښ:2 J".!힥!%K/ 'DC@]zIz)PFv`<ˢ .nxD˝gXm!=롥Ki<-xHe,_]HwSlӊ Y*THQ,uúu5?7 o2Hoܽ(P)( 1q?āc^dt!sSl($U2:`[KσM)=NÏkXQP ^ڵ&zJP(g0g6ϷdBk~ 0Ӟ:ֹ T*0rZYGUmMw󌠾U+wZ@zllSC XaE\ow '<܉` m#Rs̷eǓ>kWe$eX^jMo֛Mp\]^&3U~t,EfVyRul`10eo޷j &QSK+,) *J}`Qzի jί=99't!nd" { [vC q^abrڰ#|h\VB~P$sduć9eLݶ46-ox$5ĈcM4v&&N"mE'ݱYkKcЕz 7FS#DN*zYHNZ'nmQv?oo، ?w*ޗ>)4[1$??8L>:U )%S^,b)q&g;s-5ËꀙU7fC"J9fDW壊pCFe){cKBB7CWj0ai8?!ACgBwUG9Ϳdk׏lJ[s[=YxY$$_1~>7eH͗jC`9?#%#d]  nh/1w`Q{ FPL==n'Wߕc~j։hcLH +ֺ`Z!: ~·SyX;V: SKrSL'up 1*+ lzf6禒9lXwdA\}oXe{EtDŽ鎢 %C '-Z+C լ*f%B֎Ph4a~u"Ee{<|?̃.vSN'A,+PWKR&=-y;47)O֍tCw3^bbjŷ1E>{R>[ Vs;R%3Bua50Q_)(0ӶlLsjz}\ qɟZ:|«[9lCrߣ;Ǚڅ2pHKM;l/^wcnrP M[+cCu4g!ʊj knݬ(eIkؚ!,ԂdJ cƖH_;m _)@G -Ļ'ʠ[$GQۖ*gtIm'`#wzW UAvjtNhpԇY''DM*lRI+Slenz_Qwb [BNv+Jх].Q0W6L7opv8Ι%d`Js %cm5*!1?UwIAT"ذ}KrnvhxWޑo ZDOomhLL˭b)(JK`6ap &}Aj X93zHVcN0]f C'nd˕C+Q lߺA*'V@IwS=Va V%1<i=|3;XoҨ QQ4 (\++X((CbHg$͇lj&C~DSmrUOjXhk(ύzR]TZaY]+=\qwo7S^.X1Aֵc%b`4%O+~'k T2f>-E81y2yOYi'*G)xT?_1=G]Bk5q!s@oS&TJ>;+ѥ M'9T64Dv|HMmeȓT|Lb^0YE~cj?ǡO fDVO"@ Ļ rSg w͖gD3OPY^m6KNwwcuM v&ɪ$7Qݩ@ seѬtWxRVP0&M>Sr:΢7~eNɫ[`[i Q@NNgY_eЄzwE } h(eh<צȖW/AOnhz pSW+͝~PIp r_}޲ӥIYDG&{DJSӎ+b) /NjrK.6;%x'4 nٙ^m68 TCS6AWkb?BHؕQkenLq&%F. ou-RL} U 'DNp=C؉fo&NG Wr|;$A6ۮ:$aIVY_N #=2&v0eMk}F"QOg@܆Mp -EWØj6  xt/^u+o1^g7} 'go: ~,L&|ed>_4$]kW/4$gTƎsX*RZ/~è#A/1 Wa9_gr^N*? zh`* B6s=ʊаAJ."QMq`$CeCrw XvſΣȨ%-Fk; DZJ_!rlvҦpYQiކ\Yio9.Ø57>ءW $~4\3y$4}TaqDgp3RSTj?3*NȚϝxk.{a5c׸qNP֏3jcpU0b1ѴRɂ%>ߎ;t19ڽ]NcV?A|,0=KA"64+!S7OAMޜ9ġD E3bh|)75J!@pVxH(ao?1zO~vt wsVx'gC%7mJR곗b{ikBZU"CiѤ:{)#Xvz3L}]`X h1.]5-k3Aw=1Cxw蠅 yMOb 7^p o]@8̑#V~8u(JχVmkOa GU膪/dewtN?;l gjW8lrH@~x)GDJbUEy%vK XPtZ7Y{ʿg>>(Eq|X)eSjej#'^Er L̙̞uɹIq,EP֫ww*XҫhKh]t$~D`7D+:G'Oh7 H K]KDl8ieح/4}9S!65Iu GYB2/?.h(u#zIbbHغ)k%x^c|'Y e6r+W0 1,^b[eb^UlJ7p៦lcE#;'yA(m_zsxJQ^mmupTs X24^v51{wV$SfԏFX8Nn0QA$|x{y|ww(# N#%ZIwњzkTݴ0M>L;Z*4 .7 :Y$oX򭂌2m0?䨽 hC&_B,˚{O#rP^u&QbQ׾üapk>6Q8f)he6_]V"8c:&NzlpB8eqC.k?;xؓ QeRE76ӀJHݧYC2eReY[H)z~+s҃(KJXַ<S{|[`tjQrI!"iB3ՎG!r3d6 4wſE7gf  ~he$M^pBv+n o5XwɍG:  eqèd}A~չ& m hOuCBG IvO^+L%uJU\x-/Yo|x??\gBvlޒd 毌!GХA!9j1\U{.XJHjq0w,x6# Aw WY\RӲdkV!Yx(μK%r>2(]/1W2諴CLjɃ9ߏ߇PWjX2 xuܣ< 喙N N|`7=+>U;)ud0CJ8H4`ڼ%4{ 8}W.lR-@hPcl\\;ӿ E Zփ|Tꕯ 5$ܘē*za,ro_VN aoEt *9b|46xbWM ^U$ْF*Jj)ӆ#>=)=Ǡ Eh]Bxemmk=xn ~G]\!Sc~xWoVȨUOh1gu֮3Eq΍֏Ke#fLs~I.(pZqOs Gv XBѧ滕 |nY63"#d淌7x*#SWtğ&it&WkFtA6s9ta.Wl7t|"6Ogqa*'dI YOZxo U>q-T4U?ܩHS\e͂FiADǑ@mBdE* h Yszݥ?}~gMZmTtT0$b{/k"} 7KBWD>1,1T!l}tWc8* qM('_Cs{hz">T^RO>hGBɁ㘰M`>& wyJ5!il}~]\= >FTx 8Z੄YdԌK".}1 k(]# *Dm(ې7E-W,F_a.PT"!-A}sSo\20FK}Cu5d;N|8hqθ=&je X$еC6= =FWa%T[@DE,vւ13: ڱ/|ˠ IsV=Oc&`A\n͙!9e+3Vn)q<#P 5ʄgAz W,kHAkm%uKnM`fVLuL&G1s^%aۧBVxvm L^Ιɓ,>3g)M,|ԃa^!mByS ֘팦Yt- (zz7Nl.MD?"1 z= dh S j˜gb>}<^Ez9اJ[2@" UiVPd9FҭbJF̹:FF)(H㡊-Ma턓@~L9%xgG{_Y^ ޗFm5X|]4Y^@F2ԺjS VOJz.1Q]`j6QA_'n`{lQtKk#g鬍H0*F9xvd^]X3ya  /4#3e<&P@gOuwhPt.)SW bgg {-e :HQ_(ClFрˇ&DɔDͷH)ޥaݧӥZ/jL8Z ɻƃ\HP?`E">2S'QmKrAnsKf#*RRڅZ^B sTqB6j,qZE3=vտpc68< EO*2cR 2_wbh; +Zvѷw fzFRu` OHnҺݖN(4JP^8X|޳)7@0q .07xV =p<˘ 䥭$a(ܔIFw!fT'K ;$ޖՄagW,G>1Z}p$gW 4B.tݜqEI{*vJ; 2Oڏ$, 2}4W}%&“j`f8Oq}yT)B 15J*-X\zE"vL yvTUxmfQyа hB#v/W1){gnn2($H6&cZ'@B-@[yhtB~qϬơ>ulE,Ebnò@]T#%pFD=iACx ˷#D(A#e8R(\qR]#fÉFJ_"ʬ/ġ[mͱJ2%b[rbʋop0g2Q4A!+iNOK+ Tt4 q!& C Qjgچ͞CCz xao8: O0/5 lz.IOLp`o\&:un["8:=| dk*dڴ;k$h/a2e#lS;ն:AD.3.B䮶߃U,珅汍f+g3pgX}pZ%K {vpIr r`@5Oq1r4 t5/y8A *vzqi'ep?~lpY+`¨b44xs*b0s2Kw[BqYbócNbA A6^tx:RmFh.(  Hױ|w/Q p(-McmC 9FՑR^|$HwS9-ϸI=AE5Ý_3=Dݶb};WzŹwKs# k&p28Dwnz_ۨũ mG`m rXJ>?J{OퟔKm9y[wѧ iޠB5/#cDfo=Rv;V+_PdL"rBz ΁{_ &bhSbvLAd:qm"V #9xНkքJ;T=-WvJH]0%YnQMX6k¢ҳt(VMn h @wfU: iB245©ڧbl٤ iH 7a0\3"%`g.!އ}$;]K?Ct >}L"nN7֬Hx5S/ ؼ"QZ k𹝅VD&)\hp]ASQj[Y(03rLف+q?$PLz㊕yWyoǞ#(ə2"ڙ%}aI]_R8'æX&<'AQ3ք lcSLwՍ 5)7)'8)@Ά @ T,K( b>"i\$b߄l/9|85›'T{G{щ<ҙ)؁"gD⠕Ȇ"PuG$ȅG"fu8za􈬌8bܽUeF 3NoGAP~:isx!TV\>7{v`pTr Ғ}ڹ}WUwʫ.S ܠ^bQ"u "`M2Rb'n6wfv,iF'ﭮkUS+|W aqe՚mLUR~7}8΃FVL#]!}9&WJ1*: o ctDͤ拄m oN'zbTaF,K~Fl}̓|B'̐PS>25;6ZȝC{xd@"Zb2}kAAzv*BXy#=Q"sz)Vx 5&;>q7]TOqg7q$>LӸ]. oAu+ z v"]onl̔UZ@zJC9'Yu2 r>QXg Cx&{fH9/I'`.HG}ۢ-wÉ[K#t_yK+^e[CΥ%T7FvLOl[Pf&I+4)Xt~VEONQt2Ȉ?%%$質;lx=; wd/(6'2ʥQ>%WqVZ;+>gs;^^2[ԋgP}S+43"^}Gsu !:5^2w⮤.m*&vԘN3'&iJ&dnjldP|Ŧ[5nE:D h>e?_ft %đ݅z,;=,tM*^ЕLƁLT+MWIoXźHͤU8V%"0Q O^ o6D] ZH;s)/FXT53O~,\|UR[~y"RYIAuN#?V^͆j]?0@.&L7 $>Y(gU_1zWZ0:诩!.߰[F^+򠓸ˌQhJ߁:E:Urc}(Pr'r._z[w"jJ4f_* KKT.,ZS9Qݐ5wft2WQ%6rہd|9U]p` KO`0uVgcv߭z4%nNu\$-Sk{ȶ XWnd";2:8ԷUwc--7 T]M&-Jr2UŒ یԆ:ĸ76DqB[ZЇ`5\ޕw.DDzŃ5LܗÍxɃhfKeqݏ/UyKB#[ܔ+&Bdʧ )̓{x<)T]xr | ?J/->rm06#iON6 :hbXUwYyL%y Wj_eg@999 slM .&^Vf|փ"/e rAO0F>K#%<0;0%%~Vlk$DT%B,PZoyN޲m lTP!7p cTU9FYy M訄D}.[%eH[Ofqà"2DӼhVy&,Ov[؋RXRݧ!8qSV lPxmAR<Z0%w$"O"7dD)S3j{4G>q [WUXCqB֮"kFAb.W?2Sн_=.Q&:u߸[uH/˭%_K)%ZX\rtxwqbbkpuTYN4bjw=͒ |e߁p [ЇU.T€`1knZ&],:姟!+t4"qF^q`”;3=؃ 0waVA>WBвuwx0Bb[ו=ADHROO&YZJVۅ3?ٳˢX\̰܊YLyq{>'?wb(%co6/¿l@.%%) p726D,YpСЭ2M.˘W69^aEsV/a{QgQ?80AF܇̗1ZQ^fCFĦ}.'p<]ћ(T]2پ~F{OY*72(Ɉ5r{fXL6_0P1֬ݘ앴+b2* 3i* fy?*{褀k#D *ѶyRsS^~E:# Vu_tAeMz?akboz2+Aofz* Q~" +N%o?3b[zPLJC,Sm QNqc;5,CQ C2UZ7ЬTaӍ2wCI֮_oaj{(L"5;u5ʺpͬE\?*C>}b .=yY8.=UPwF]Lbt*U"ߠ 7l |ExJmvEŃ&[@ /OB%,4Iێg2zzDlUĺ6LC JyH Yfd^gN%4rh¿ )XOF56OEC@ `J/b4-sG!ЏiZNp`}`2Bł5̷)ߠ9kfUڅMGTNFuO/f6 [J( tCOx3jVDYb z7ң_OXLr-j̩V t_jzCOr4pBHu"lj#u(UW$ s5л UðiERތJDi,2M9pU%?!`c4-&ٽW@S!ٶBt˹f5w͕?v#eժgqOz18.%֝24ƏR#rUVmIK;aKkаD){mw]*r_RVdNN;[ dyu,^$10j8ZJR >R'D'-A|Qk`Uz#hr髫' `^cOSE|·AGKD)V*5z&K ^|)6@rXLi(CAXEo4p!pAx! uBsQ콛ю6j'PODwgVȌp y?U!-GfMVHԳ}vhr//^6݅G *{kэx\[NQNي 5#c?ɘF hr {zܼ@m- #KԵ[FPЌsWP&xXd{mwͤ]RݷU+N<,?BN8&h9БJ@ZJ3gg,/%}R2?&3@ޯg]B7:prH;⢸b~ː79FT-y\TY xc1K :ݠA~"}]Z4S@޵EKhv)SD}vݍ!hM{]C(ms O 0V ?lcf$nkK E*?:xtu,T>Kl:ע"/m-&qw ܁jqtWWCotw@Jǟ!o-Yi椡SGSM-z'W _'YiuAf,0! m;5}b^u $idYVaG,$JB3Rs|7l:kȾd $TbZm@!wY\V-FҌ0ŹaҪlJa ̡y.~RZց[;_(lq.?vL \`uxR!z{T0Ϝ=z$xPXrPZx9rR>%;1f^1O:f2u1Lƻi+tf  <ӎorӳEpQPD^$mҮ n_7Q_Rvf9nOcX BZ-U킃mi# N s}$ɸiFŕJ&Kھ*dgS Ḳ o-/$U_#jڿHF0#/!е&ẋ,Wen`iҋy$֍^;7 Jr}jiʹBK3W>'־y ,+e)/T0n>tjVJ{tIJvx(9-OO61 'foLL: s`Hl0((8 Hu/kt &=h㎟N8b(chqNVb4'PcQH>}辔7uWCg/!ڱ ɿWοJOzV=+zCs I!^^2N۞^B3/;jcam9q>=%iYb3GX(t*P" lmmV Ț._@h/ IY>݂.K7u3/OW`, 6:TT܂EW:ipD|^ vf3VJW5JǹxԒ8&QYyTQK&cLmY_X/xHO=pkv:(eŭxXu)2*׈ GQM갣G㏸5S7LÑCY$0 b{B}j,:wb`諱Pe[F%`cV*`zTBNoGT{˂ ;h,x}ՊhWhR8+>3 vԛ< s%hc)o! wXX8Kb1{]tSwTwb ,uH=K2+HwR647C|5)6\2ZLF3ǏvՂPlq;-5 8 U+cηmN!}K1hmS^8nYF搥IKbۨA"xB` fHij`_bUhvP+/<~nU!yą C!vhpd%?wc]Fuڤ4`l=t]KUuOh=ƽ1"*a*zЦ`g٤$n{f2oGC4%K"w Mh1*/ ѸvJ\)%9T^{m/w+1ssDd|c03nn~%ĸ,{=l%%LZi0eiLfNuEv]ECЕW'Lj"+-$1ӛeZS2];Z}(*I?C&k$V`ǻAr/ȯ7YAX<L5 ۥY7Hᇿ‡2b;&dz ޻fԊMh[&.2-R\ޟ|Eg܈y}~',j35Fɦ՜WKߛD A"-!~c5np#W-J`% ϯJ|Ѳe·U7L1e(h(lnyaYo#3S鮰mc0NpR'/]ڑoʬHUc9T?MlРV|5X_)_BOMi:qȒ-9f#L`:#7zm>ΎWFtyqTs!pq^+fT@܃4˹% <}q dvJ,gMܓk A>b_QlhS1^vTcYTQ?«% [8!nŚz̒J/VDY旧ѲbW fG 5QRQ O "M`+}@ƭ`jS^[j2lN;N1L9T{t."]fS'TUw*Ry@qTMQ=\4xfN PfSe垏s w}&TGh:'K_ކڴQ/ZF5oEC X;7q ']ڶ4u<!"T-w7C0Ta0D#%pUfy"G(19%$lZ'"I^ڤ,OӉcEⷓe#Tl0Mrw݌쪄5u X' 0:clr«֘Vn֕>Gj~e'uƮd GܡĸhE%~yx/k)W\o&"VՌ~WQ\DhkdoUkLqqISi1`dNQ@@ݨ6˲aHl7V.e3vdpy d-l2v3I6p~_#w?*ij`wa%pg7]0#W6ofXqݫOPTd&?r- zxĆ:mAg7epa´:qQ6LMM~ pB7} +&U,øI /z'z`X+؃\_qjb?LMgp>eEyc@Qxn\Ferqe$p,̛j‚Rg'CvϳKvI-Vk|E>~$d(0N|L 9ڻM˔* ~\<Ru#&"ӃwFkڥBx|DJU\v `V,M} P?43ĩQ/U}e>Gė/;EL u2s`7J1X'"BG 1}d\rȸɉ19&5B5d&Bz/ot 6h8X%IyfAo KH&s! ۺZCq\>. њm?EXq+)|Mu5ՁA\驸"5\o(-䚀]%sLn\ZbljgcUV1(nSimuxkx %@ߚjWUDu*%|*uѼ3F)I8VG1uJr7RKH]62E@4'Qy)2`bgIzɊZY(]4da0K(g_y8َ#šGN3vmވi-mq˰' jw+29z64DQYWt5;^=A+ R ؤj#ƣ 7ceMnWSQ]ԌUj#- Kۀ=gͅ+A4tc :: 8uܛaThI3eRKClC5ճs''K1"wˊCunFUͼ7\܎FR#lIZrrQM<2{¶yQO}\"rpJb)Gb8YJir3?^)M0~7ݚtX~E wi:.^vg@ 4'>`V\9fL  ck*A e %IwbqvEB89o&썠IH[ta=@F\L<< P?,fi:3RRSA7$c*6O|P7bk:Μ9) SL.bFWh nz9Wv+Dm _}/l+T&a3>u~a@վJ_j]a<ַύMDF&Nw]Աal=w`!`E%_c@(=d !1G 6W"7o 釓|e1ǒ` a޶‘@VŇ"84$཈S'0(܉J~@ig2")%wp2DQV ̘2E`0MBWE_wҀr閙b :1,cA29Tռ]cVv0A3RSn%P$7ۉ^MV߾:ɍ-FUD_g٢߇[sBz4^=hCu"/[}<mh=!S}yZj8uQ.1c"N gND@%Iliyn: ny<^0~ZtN5yQIVi [XkI$r9FO/S)dTWӐcʊrc*E?F%p!J>'/LqXn qhy'|vkc=^d[jWI$xh噦-\n^$٣_漫;a5Y|Fm˶ ̼ BPUC~yi1nJD ό{"DdzAPpcG[ REȲߪ 22듇sNx4C3Q]7ՄY+1Ξ+A_on.xL$>e4JґӼk8'?~!t ݁4էT Q50x'w򅍩 Tl4;̑hX= @>y]iaurl 43N5-Dq)#3 nДM_3/aSyt>/ht?b}2 36;`C7+Hߝ8p|b$.EMey:$a̭]@KzO_@9+X YJ[U{2[Э% ։O'}ȁzB? XTѐ%v>T܌(J B/OfA 7!9}`AedՏ"^ui$5>cpp抩YJbcըT4C^!\x(N/KzwRJ⊊K>yPٖ_8owA-\߀j;0xKu,Rk,xA s1- _lȔ͡G-c I8uzm|Rcd1檧؝%sCI8J}MpsLFqlU+l9̈v3B濎-\{F[ @L{\HiE%S4бs:]FcwQN [a.f(%Tk0("iZ\7Ӡ'Y>3z\p,/rՠ%?(r^(t2O H$:īAB.UdLuC|҆X&)5n8ys EÏ8j]_ީtED^[tAkpI#GN,~_ 쭋2 ؏;z)bC"HeXERW|:BO<:3)WSY4e|RUQ)tN4o ިo7.J.)q0Ęrf9/*4ljUi`vWs2h8mq]cݧJjqqUى[NtRMj3^L {1/L`E@06uЌP|r? t(ZIT/8>G~llcd01iէ]ZUgȊVu3F^Qpz> GOx|n+qsWXвڨc eLeS+< 9Zy z`O'~8;q+ZF- F#~E4#$|]7A+ e{ieR ܨ,.pܴˮy,`'׿G$3) ^~ԉ7UYw]KX[1-Z Mb q\[BP <Ȗvښ7@YWNsm`rS ʃsȱec`o_q зE 2z> f!>D| W))$jT]ѸN2tAVZ e+/: H Y9m#vsR󻚡ЛCupbR"!XQ䃥6B#]H9pk$oFd`s$߽C DDuy!3$_m-.?$HIⅤNe&$1:.x4Z[!#w!#C;$.9\eYO>x<Bs[M֝F^|\ n ؊'/_@dRuayM6#mgZV.I+lP}s"qΓ}ЙѠXsmϷ zBPcoX/\B{B%Wb,dS ,NiZ{6LѮ iRfpJE_?"wőg ch8'sL DwG½*O>f{`fNeN+I/' wu%S(Uр>QYmHc ĕg3};sq4GF]Nxa"-y,WQ>]W΁a pZBXpݐ!C-1 ce7xVdҸ"U7ŕ]uU ]_(l>ȗUL'3(i";H^Nj &vtIe3z 1A7:dO(eJTx;"i|&̅J+˾#9h3@4`mz%4Hg_B>@A\7 &ϋNHya#F`Mn'Qr'u' U,MG/Ťx|șX쮥!+94÷k " |>f uhT0*Cr-Z;ry\<;WecOTծ!,x- ӥ;=Jεyʢ]apWNe:ss(d%Su9.krYQ.85P2~ne[1>b}9A4 ժe y8q-'&1y3͖H }TpT&t!v.ۃ*NM9J>ҩ )A>9ů3.񋵠)ή Q 0 u}B͔ApaN|:WT`InC"p4 WXд 0pC". :;1Fd}|A9A&j<×`v¦v{ kT#7?肱%VBAeǢ29?|88[hdI,Q] >YQ֥U;{|l>"As`oLK<>ڠ_No䟙VLU%Jc%cT6JwR'rܡ"a٣Yȼ)[(ho[nffؒmb@<=wIl?$Ϩc76tA[p[?B~SBݾ轟uoKVU' ~2-kGu:c&^nPfQĉLAkڽT}cp 6b:zmæ]Av$ hEtɠyj%nWaF?CÌ{X$ _p1TFm6QJdu'Pv`̡. A+כ[;! dVU%: ~p+1&Ϊ oK:2Ń /ah٭7SD@-i"cg){ yB>o7f§Ļx9xӶ:3+3+p[sE[XƑ{8S*쬴ASЙSÃI,@?\_u V3VYNhfTR s_^{mB't=8N ˋR;8L7yݔ{bV{ G6J[8wLJ!r_\Odfp(fX6Y$y\Y_ 0V-uHt''7ϞKw(*|~.Uՠ ߪfz!v(s\!Y3__h.gI%)n";.ډBPsI3tM/S #6/E8yp/ 6we׺֍m ΌG"m@'/A6m,\ʫjj}(m-n;D^fh Ý x';Ղ}-W1˗KvCz˥vAcӟ/(5zeay""ޚY:}tt@v@3CLKD%VvayL˜l l"5 w9pтR3|TS-spfוHr*ڤ{G&H eASXEhw}% A*NRB|vUvIj߆͉T+nD4# kTzbÐ8LCK3Zb66:dXK@]R'OXS!O%Gi_w .&{T~ 3"Ay921q9 DX+ QO/F6q#1ĭ'hkLJT(-q9h/跙8 ^-`^aWx?Uf+xUqKgXj̗ӳX`y֠$(-s 0/&x5~ϢBmmgKu&8PX(or (09aW)VD^9EBϸ,ƣޝ- |SAv^;Oi HiVYH0SXXgSƩZU R(BJ7iE0pOb#\.BN ;d8pJX`UsW| OkL2}N">ٵ!* Ttm0W~CW+s Br7T`)f/v2G`GچXo] i 0PYc4. Ĕ L-jf? ].|Ehe2Kʬz,E"ǿ鱷]Lп"G?M)AmkI/*vRm^ c^~2Y t[ǻ&X" {ԧ#WVj('ZΘ>]1P(}q 13{l36A[xf56W-Fz5b{jGʉ!M2 >&skweॗ~Pe'< IG@$EwH!՟*,;_h6,[F6 GdMۅfLX[N Vf$(`@XM)br\cJ( Ag90x7!i~U@U3L $kB֡wRlLR[I[u7b=NBT*pGV;ot@@>Z)8398>-/ϑ1ҝ~IT,Fyh%=S܎[{8 z՟ܾdךh/"3JFjD|֔c | agJKUC~ Ϥ˱0 ~ #uu=ZFM0rxW$PvfЊTwd̪۟HC(.gVlL&/?Ӛpd*LĬZ<'ژ}WqOġL7>XS%GsYmFڙ[vyڿJ'bumn_uO78\~5֭#/{%N~8w bȎ-S!' EHs[>Fwq,yp 'W{DEWspx1HwRbZr _3 U?&%:;x_ *+9ekIج=Z(l;tA_U9^g-ٓ]]iSRZRN?2V(D君޳?V7$C>tS_"1ʝ7(ui8`y) 'av3GVi aF!7݄ ۰X_znuU,3|8- {[iFj_|#J|?ʿ?m5:w\e_ieI!zCgv"~ؿyϋEC"+o3RxQV೗(,ԓzzWmY*F.u }&$hKlyAi%uw8l=޵T祐$rhGit4l BU+mPhIns>kZ)E?5$&5"ZdT()yϳRMO Pƪ8Ddsʤt7Njjd6MUzkN02)~,ABo#@}:Vɕ2>X;5@Kh OTgTuʊu'~A#!vޔ<"kPSmZKhxvB{SopJ,K[P2Tf> LZrvlX"ۢyD|m d* 4? 3DRycA|ߣeij[pw~'Aj "}컙XtGkcb/i5!j|޿ čtw ͝t^^W&`cL_dIjW_V3dh F 3~`JN9c~W~ ,)aO xuâAɲ:$*KnJqx`0O/5A宭Ulɢub.vU stMHh;":7AgxA2qʭ*l/4fO[.(hJt{t 1tKpڿPωAB { ܮ(̰4g˜e2A)fG*[qVѺ±\ zzhq q \EܸmNGљ+ vPlOhGO- kF/PGqSҔ1Ή۪7lD.L0Hb՛j^pTwO’-DHy;vaBU3Իq رJJqПipHz~Tz_CX55 cuW 8m82 {/`iw]fw1b^ Ƥ9[ZƗG爂aS1VV>s/щMcB>b 9K<6T8cgr-frk*w5]}MDǸG4H'o?6 b^N%:&:q6z$ /|ɯ,H'HT_z [TE4@FWӛa܅[TؙmY *Teqm:*mHa{ y܎bY #z> !<1aTQ$O*kCta[,`)b&1كŘ_Mh1*6A<-޸_/kd4xN9j`ޠ ["GR(svJ^‚ܖy 6,m &˶q<Ʃ 4]@ $ޖ6[SU)Aˋ4u36B!r7h>b*YyG/2:xp0[os**N^BgY;LAsiB 0x0gm8%DKΔ$5L"bṔ 0Qϐ)IӸErp+Ӕ.HD6fU|^:Dyi$F4׹ej-EJA[нH*ĉT4$G=85[lHòo.?e AW?Ȗ., 8d>%3uRSQix0G?PL7\ by2bj¯ ot{ڋ2rkSuJBƶ, H+RF7J=}8:=WVc6uC.&cV儇jG,Nk K׮] :V@$iw\(?йh(@݋^*B@D[Hrj9RgAXva;RD+>;w1W1"OÄn KIIJ| <X3 z>kYP.~]T۹>XC TGWcZ VDCj`0Y{[~=dy/GP;pգ& " J_p4mKL#ٔøJ:1M{ &WtL(KV,e\R8ޝ3R*.QVVʽ.f ,B[J1?FHMM{<ɕg@])dr0T+=snڭ8Wey -zNTN79c=^&@]XET NYNQh4d&χR@/>b39.pPE+j)$6]D'biVM;nNjAvJrR.TT6bN㌘`EgI{ q8 dawuQ$^ e aDHB6U@2E;$I̐yhG8SsQE?1ܘk'u~L$M.&*Li]P{ 1+;^&Zi['s2<<\z/N{Gz Y閳,ծ|[ oXm/(kl2O&,w:NsCUTBxle|{qPP\tBWH3j\ȴv>PW+&s@;"w!f{=۳ʼLA!Ns*r!/p4+?C# flH|1'a>g!#-@I.BjֹUk)}'G;+1芧R]S" .^i쟓Pݘ"U_w5y4jIdf T9CDz*_=WY%(c__. ^rm!ձ~(6k&}pY;r%߶\[Jȝ $vFJ:~F{+\d#EWѷ >;[YRtXNw.nK:A.9D\#,W `LZ.'2N)ar&GM'%k9z&2t0˰e. G"T2G212|C Lϭv顙U")؍S񼽕@Mh_YG?;汈ȈO)#?[~,hl'B)v7'Y苁߳|a00Հjܖo'pV5S7cN 2;fZ_h$!0ٖZDFN?,6BAh@¨Ůc<HAChsYT!jP-nABveRƣx`pd1g9fmji)XQMW[efR` )@adP_ڟu/à!)l51L:TgHJnnf}$ R^IGc`$/%c .PWNv 7|5\uWfM Kad1h +$bμ9P# OӶg%1$=Q>yYɡ'N!LJs=퀧YLhРOyI?7D[9!ɽ <5y"ӚNLO >.8%zfß~M:8kH4K(كV_}~(Y ^\+:.ӽӉ`™}d}NUIsA&pp,뚡‰](X1C]h‘áiȀ^^BZj$Yz.Cay;V?}Mq!Ž/U}e3?lYd3l _7`J"hɳ\*Df},SyUrEU"4X'{1>KBfWp˾l ɀF2}ag](sqXS2$V=RfJ?V81-GgNx9[$`&WW|~!?+C'}N(Ggٱ("RR*X-Rw: 1'e tgx3r2 9ס=RزCaCr0 |`1!=a2 q5 %aT1[0@&sPꋑb˳&8bֱe$h6llMonq2rއlV\@R  g?' ސsJ;3s1iq6yOR}X lԵ+𙓦[Y sdҩ+L3V4c܄WƹܸCI1Ȝ-ZPmŁ{7f4B|`܍|K+{ԜASϙ%rn S _C@$픝eE~ÜP'#Z (t2(5ȒUwŇ$|%%]E7ѭ@g2IMhk< 9B)8f+NHpff7;t5̓m g b}¦Www*aؘ GD ~-7L$P4ܵP "kyYf~ ^MV9Ő 'O>6 7D]a=$6(C kh?T;ޤ0v (fgWH? hlk{TԴڛCu' AP SǞ凂va*o9 PUUZ\n<]9AFB)LGj>=eZْ%z@݅昌ޓn]UCDH]%:ByÖ?^0xyݝcNf_ow W|B:>QpPvtQ]GkJeYrPjcdz~ҁG.vh;`۽vͪc2 !8 OplP ~tßnSYa\= z'T׻ώ0. [_7ކPFg#nSV?5* 3d  (?$l~:@)4A b: :pŵK]U'1rN=V&,Y;[(Rȭrx/p:+·jmu}HZ-Rqwe{j]9~}6 XO()J1P!/yDu;qJ/FK0?@FpsW9q3Kd2d, Ԋĺ_ft VnEݵym~8"{ԜC]_A7c۹:%* d{Ɓ09_CU9<0itpCp5?,*gC+N[MCۖѲ:iڜ-pίZ4ޞ4NI Z!SL,PyT~NIXƥozii(HР5~V|C `.$n%1A)}A/KOS%!# ۆ |kv /&ݙ@X3pi뉝i؟߄ESk7cQQKlͱ[v_g*|eRiҋN(Q3Q֦rHoʴ!1p]ξpeI* M6ݒG(nFV4^'J=U/u;:-3Aj{pȇw²=K,tM5" Rv!wֳ$J/zGĆnSBfo T∹9d'uBw|yίYxIS8՝Ǡ2.|Mmp5ZCB2-^)|SYʄgMk8q՗tߓPy\!>iܣs=2Z׭X[Ͷ|B 5"7h-h0ar{X"1_QQ2f7q,Av1{]o%F>+3iL+Т$ e$*AvCnD=5E>]Cx]G$ /c]Eyn{2#^_T|y֖}pEtNRh<$ يkϿm T]fLiI΅D)MJ@_}pчP!jKOGo]t}I~1Ho}b(̡DZv=tvv" T7(*0 Z:S(B{YS:XPNDqo9 N nbhK&v' BG*3ttc)A8gŰ֘[F;Fq_`K<,cH<8rYwȮ^`664W ˟) ]ƒ/./^vض hCث|{ Xm-{iEb;(?gkɊ Ƅax!(sow( <YW2Yl0\!\ d QBYX~?<Zx)TM?yeriGsf͔+$YdOILmrV1H\̒o6D^ 8~OŬHĚ|`A5-m2\i;+v#hlK ͥ>0Ibv91TZsv!+՘]x2;v%Di%hMeWO"md 0\5-t1mw9lǐz mLj@GӰ49S g_EKMZԨ dVƎ桹IiBunX_YmDPJb2=O:+eu6)^mlnѳ+/b4r`[g,vR=2iq~FNi! 6Qb\UN+~xW&@"sj庾Kuk)Vi}YBh%cJA*"ruvQ8ҍ<-8'}g+``Є>O+*WĒԙ@ \N yB.~a4o wL3hՅYgmR2q?9͟}UZN0oL'Y-#;Y猪}=s2BּJ:3S>>]p[N,tw7kTZ͠'JG A8}A %O'J1 (@_gOc7ǣX |b`+1Y~&1$V0-N~kG}+4BjJ.)Be° Wq7AP\f,0 l,oŠP^9IZ`C1vNo#lY~1,F>õ%0cZ<<Ӕ84w IJpϽɑ)2ʼǥt}'?9#G ֔yŗJ'Hj [X'쥰~)u '̥oRjYKJwV^PF؝؎ XSWUr"rLPnVBoXay4.E[|2//,dcԴFh/6A^m4m j̣9MECJ/x9rzMW)|IPlPV_][EF%FfHwNi'ĜqawnC3όjXirš ǗkWDJPWc@"Ja.@xyC !9ISF:%}RbԠ<@Ҁj ,0gB+|l$򜹡|%WP޹@B+~f8y@c;& 0}%,R*l+#B3.d7_؂\CthGEr1[WHnBF0GNUige$< j_1{K!l5a? U%ǁG(c䧏iL;uMTIZL׵ 6=b$Is '۶`<͝xAx+4Mv2 zjW.s9xTZM$WW ,HkY0h9Gx|;Q?B89^i6@r#;_Awi""E VYm3`~XggRkB?0`-Md'!y}lf 펟\m\1f;$5ħWձJHz} GW2Ho1TKqE;Uۥ&1ۅuA"X=/:roWUj¾V (=2Yh .cq|X)$̲E`"RZaWMu @Ӟ)pUJXw!`?kf.xy356ýnH,Wq_ɺFAV/)st֤ B$ QAvnPw(e'צD2eT_VU:oFkB޵\Խ R1%`{{qMy[vUЁYi4Ggaj|׭vGcࢯI,}igн7堥LMstw 1{Y=_/\ p n -kpR.}@-DۧP_iѬ{ښ,Ӫ3CA3|[ㅠqq$"SIUg7D\Wo(vK>].?]2DY䳷X!4sXBۨ4|F!l[B uL=/[=+_>9d|)l|)XF2M֓* FS죟yS3Xn':Dy0G@6gzWbPP==pQ飱GS]=wT2>\̃O5ⶥK8ȑB)ݗrwil>]gzu~/%ƻ1YA"<2@Y'9xe/ ,J{ ԣGj\#zڵ8V8.bJV+d Y~":'[~@x9ټjCgCU_P{`i& IGy:")ćgS1IAIMwr٠j*64ny\=+;5^?35}r1Ap`Ⱦ~9'I\ lO Ӂ79#SW'c81+I JEj?]ƱH:zANWc d,ѡZn}AƲ6٦sr7Aȳ`m>.:qN6%x ͅ4#@O E_i3ܰ״I84k1lKsechD(iƿ'YqT!w ³E NfR#v1 1pL!Ee :Lx@Ty#t\L2?AP#R˞ Ж)XSFrӈaZB+c)21l`:Yvzآ82=|:!rx=#9~/f|QK.kn ڈädϓAGa:9zmӗ3#}Vg>8o`I 8()PI '&P>}] /I>6~Èx)j#;,:6UʍѶD mei 󦑊LuUKGF:31`(I- $X] }Tc">ԔAlrMH M~ajC$IzqP&CSdLe>q@p <\EGb `d/yFiT[(;H\rtuG#%_ZK#oUb ķs2ٔ섦v],rGH,_/?5(t r&6)`rFbgl]ю2 2Mo ԣ=Q[Ew =";eYB [[k\gs0l?!(!6B:R}3FkH-G#M}%ŸU!o֜Κߔ`fu׉u]`˄px '_MB2Y p0&(_ xv:E\;)c?ŕbS!CLBl/o5xꍬATmgR`$AqMG?>&Hk9P$Z_*Bibw%0RZʳWetI9)0l m?)# Mon`79S^ZėW?)sk2Jw-$Śl38?aqz,|j7}]KDQpk<噄%gղnyϝ bfɝU.ݿXBM[~+יvoቡ(5J&!:7<,by`?HWCQ/|cN~aIpK5g37?l]g\ .ˆ,.CrF 4Txin?-T02|v|]]v׼ 0:dP23qv)Z"_M >BzSzy/i,D"@ipt|sOo1m; z*k~~ 4PА%xR tYv_̀J4m+v^sWړ b_oBXI^4_ŒdPȊYg%i W'nIn'*!mޱXS(gw($O7\%Pv+En/=cد77bEP"kG>s&gOb`#!򒮦+8q,`p`gЦA 9>/B᤼OpՏ<!@@NFc~g.Ojјv%ݟZLk %pb!ձ'B&g'<|bBF<ȼ4jg:u:j, et0@0)7Yaw*}5B+h#c#PxNh Y Mi?A3G Z/ K+: .՜ƧZ#}J7p K;GN2of{> īoFqi`^ȣ|n0sZ|x/%M^ꁹfr@oT` !|YL`՟堄Dlf /Ca):LoKR֏m~r÷ϸ4-YjV胓}^t7s$'In 7KEj ynړ,i,N If˰dR;fT@@Wa|gYM(LqQreNzwFeHgqk%jH3yj4𼌆 Oc6kCŭyo$Ndh\V[3:$.Bl(GIz1jFg{[.d ''߂ٍ x/)*6ڻ<Ό/NTG C2Om$]%dd@ZKiU RiZE7@`<<+b QPTr> S q mͷȸ@Zs EI+]e8ѹemTFU|բꞪRs? X6z:XiMҗ uz& H̿(?MSSJӔZZѰA)y!#B+M{H7&RJJlkI2оR$I2Y@H.ٴaJ&&rTN&l(X4:[x=xW։he9D9 魃OzT#- y֏3ȮcU@Ry+1̏1 FfwֿGՍg,'bxO PR =T%U羡z3iXԳ4?S8eb:nԔ?AEM ,!BZD x>r'XoElW$sySԙ| C\|)}֢aɭ_|7t[nl'Po2t ߃2]쇶D9GWNo[,Ƚ&0.C.ŻW/IR ќ^s">CRQ%0QP6yTuDNm'[}6D/[M;s1} TR<96l5xq-9Bʸt {][|=x;#wq>\/IkB^DL`vl(4bB(Z acC ZpG./gZ,q//ItYF;Pbû %^J[eSԾșjd&`;yW]&&I`*Oŷ{R֏5E;wV/\zkeׯXuzMf:@͚ԛX wluT~9OdҥCx艅G$<k =mN8>6WAf+S6mM?N@FﳞCT3  qb-~`̟Ӭ.,wn `5|ˡq:qc d ch]X\=J'3q?:bJSD-([B^IbPao0 : )gF9A`2Lp[8c1O~+ !vR VgYеiH)94m>zGZU-&XviBG' {:'סa0:USvv0ܡkk 2|C /jayI1)ȕ)$uGS藺֬+)a+61bT8oaQI(j!rq<uLuz}MZyu~.?! P]YLL]`#u@t8)K8><*s3a^D[u:BpȚaa3 Ira$>/sm LpQ usO 3Pw©gWHƣ \qxWGVn xto(h*$*|gpF`NsDTBEx#}=6HGMD[wF0 ?'&7*Q<= ,"GǼ㕠\bD66w[B@aВ&ǟ. 7ds^+rҔlx̱=XaQ+jp /aꛏN1d$\}{d]|gsXePn.r/o]x2|1 Hrm g]\H3Ŭ^F YDo|53b! JQr!A%m%s# b> {)I66m''RER'?5R"XD2ҟeTW eL =JRQЛ&fo"Y5lyAxH Wa$Vw԰CmySQ_KSXG1Z:\x%L醴*u]^mbAd Ͷm+#M+Яp圧epE\RlntUm8vD }7B2m~[؁DԮMGsy#Jvĕ7ju D0@SZ!˸-*DsBd6/U,%w߶vg87`D9!}$*@9Vazbw`U%M} aוq6ΩJ ky>5 ^(*X E[H $d;V}8 J XJJxc9>a2PP$r3r<[^)q 8{.$;yu(' -)sbIC>k{WߓarĆ T?FK[ }v?&nƷQ-pʛFM?Nu9 U^zd[›ڰ]&a- 'XȔeT^d]QNTX~U-A)N/`׸ɝ'4⁀ŮBM~g HVer)kPAȘԱe ?z 맗w `Vhc-s0CmvSsvn"/JJs>`Jx,Vn&KK| pL}Yi,$nrupV%@tBHDjrEyɒPhjmǯ< C iolYuϷPe3%ZKeFOƝO{e %AQg-:s8$>GӭpW1R'Ǟ8g\#~XLv D N?es]Etdl?jb;zird%kN i\/C$W{@$}_%!0u3]dO5c@m24/* @;4L ^")X#f˨ȋ 97`cP4 д9?tU:LPЃPz| Fv֧*$NKh> r]HSefiaY607T;lⴠwN@dL6WX6xn:#GMyh>(6t}KhEygV-"GǥްPjaxAymG3LA][\`ATyDT}^3e \CgF Nz%r9h&Q8jyFX(=KjC.U//t\{paQm5/E^%=ٖ֕'e{qwnIߜ"4VWt)\_"/d8uύ"--ρ:<]zxBkoԭW=$Hl'nF8zgL ؜e&vavja(1yG=Cn%* 1Oe߰ZC@p ϦK(ݻ#G/l y]}2}壨,C(RDױ|^crƒRzhUDǥ,*_}i# y@(1U?06;x1rז(! :UM$ Li{F3 [Zp}5d-,a0+D;FmY xSt_9dS%. cGKTAf?g[lYMS⫟  Ft.f{*eJ qıg"gW ʟY iIB1?psR-ZKnVE+x֕Eo+kX} )##Kv)! a;v` r2#f&3K䘏^ឧtQor]f.ZOo'`"Oڪ6*\JV'znOk\v4.&49W'Yb8h홋PUսH E/O&I0fvC7b#YrK_wt ~1~[=*ăqNvj,AB}Ҁ>X@/s :W*y7$ҞU>1; -k31֐dm9̱NijMk! 7֢}A R-Z@[zY2Л#߄q3n`zBy(?xTJZ-]k_~M%B6[kN´ IpW^VLť'u5yEd>曥J (C̳I6n|mv5ȘJQ:Rni΂K H{2\H$Ub|"T6-75ӱ Me1TC*d&isjiIF&l5 n}AÌCvݲ5L1ͧ@8ju[%텮Dx"Z%q|#^+ {j<CIkH&; ՆL {RI|Ē9!bsYF QIVlZJz؃ܠnV"] zZޑc) BaU*tT;@3󉗒Ìsx\pZe s=Yk{C+e'5̵A>/l, >ə>Z18496m+jx%oTxS8LOvK-.&St'ջ\X4ka:-u/Ȗe~I !j_ZsKCI;pR3qP*jBaحD_yWAAW?P|_3kA}nW"t3U<H8/ϧTumu/^TOg-p` IsnH^ sv:eEQ .LzE>2o/%?p lSJ kDΆ S(Ox~)[ʙm͏ܸ_#0R;a2gZ=(0op#~jxrx*XةtA&Bhib& >:S#Φb_Ӂ %v\J#Ii7dAQz,juM=' nd:z#3_2=ً]iOn# u6vBBRU# \衤:Թ2@0˝z[Ƨi )jOuf 69C&7)g6$9:9h<`CkU›qK(c6ɣZz Qd֎wu`w|(7U$Չg.giI\5΁ 3:t(UCmX6Fd z)ѕp3ɬfޕV90;u>VBٍc sr(̤ ?syЊ6G p7:mB2pԲ+E(T;db}̹+or]-} z9B0%?xY^z "os8d$;O"`,T=jy1]) ^XSo)I!9%uFF v9J^`nGX'zGRڂAV=ri)/bKc0`Ȥ"Ӈj\^,d"/ȹǗS:2K镮HayaBd\]XY'w5h# ' \ ^e#ܐh{Mɧ:mrq#z:AO.ԐQ7!wdQ;a#>#^y +k{9ehy8#,\.q r?i/> y>14F QދSwhוc/V9:%zfɩ2Q%ޣ$P[y_THx=\hhwZkpԫZgH>/"Gf 5p8a Zh,Y]xRKĤɤT:bn v+Z mq7FB6t–"Y|Je+źakJ|׹'NVM^=HD:iz3[4<߃pw@E#h厓@&;aqtMk5zm2jbp#0*'W߽; 8PH@1#2M*y Nn; M"w껫5TcʓrC/ dH9N7$ڢ SBO Nd8~eA'da#8ѦЙ;}4v- ~JZhmy8C:4=3)jZSFE@ً w-|T5Y̨RA]}[q<Q[0w>33ĬFBK^KK(Cxu˂ͻm@Qz{4rIJ03Sx!uv"q(q9c|xmG-aIsz΃9 5QQA #`4pk[wA.Z)_^]-m ۰mjL<*NلjTTœmիt+Y'~;EK~Ķ@i‚4si[u%WMx]]hV2#G^twڞ\1f>~ ֨k**6G";eq)bA `P<BQ::Ӵt&J\4{4ImYu62If @)`bЧ& \j;p_q=?؆hf40Ne7z@P+~!GM\eЭgo}7o}0k0RxΗS+9rE8?*3"_Enr1;ffL`uOl+/rtafl&{m9ĬcǰO8\`Od{>Yz?nXi`s,*5Tqډ|N^æyEm"pK` ?U5;T;sx@FpVe7&o?/"A.%w*5<`8 tRrx"UF\>..ː%=[u<(VXY>'t] ~`J.'1H=%ҝ.F),[r a#Pʽv*[~.b5PF_B .ַXvV;=7xf'5l歉: 85}XqhoԊOVD8Ҩυo^un,ӰW&_orx!qf4*0}6ߜ$-Ěq1#Fwu5IѷJZ/w\KjTkT2#5TDl6eIDvgk؋׼!'Oqm}):d0.u_ (Ԕ`Ab鶠]̗a24'G0.&(%5,_P7RP:; }"l ȭu Joح'fpJ0=ߘNy[=>Z.4,9O/r4Co6j@#q[ x{ǨR'MxeetYaAZ -3Ih)tB$.5`C&=jϴH?f+K%AaO}|%UfKuM_".@zS/Ee>MWy`ظ}`Ir NCtWFM p<79iQ r#AL'Vv괖qh"ηJH9»uZ"jP^7 e h8*"TCL=~kSDgy}ƕBn~ӊ0ūz"FI x jY˷Nhp#%RֆsxxXljwN+ `D MɅ7<pi,|$a)j*V m6Ֆa sY<¼e.!z,b *cc}Kqo@R|pcmrygi >B3 S 2K oKMow`CK5_y2ޗ>PTapbȼ G]4EK73F|*tq!i={BiaH? 8Hy /Lk?yڗuaPCuTeMo[ Xbca聊e"JE [!=V%[b؜qgc۫W]<$6 UcIq&LͺD`Z1%Dq1}ob=]-<\ECrl c̔QM@:xeP7cbf.e.Ї. #SSAZ&gف[R?C[NoITgB֐TI0ӯCL-Gn+۩ҁ5=Mo뾠Dslϭ﻽Yv}eer6nSi`ܡ ^AcTpyCGo'67q2,O,,e`$]'2Os3GfDkwZOE+OC83l]Ff[s:cg}c?W Am>MGHd†'$H󔩉ϰL']:Mz^NGiæ:$Ǫ@`VY?VYki~,%0 f(dl'xP -ʵES1%5`Z/͠C4@tVAO5x[P[_ `mXv8tk! j<"ԟGV[2!XҍPA 7Nn{vr!%҂<+S%ȕCLNr8%09 rN$34%7oƳ3)P}+ֹWDNU.wx4K**3n2}&ؿ>"R$i^fGz3Yݴ 8˖(,ݬz&fWl8d+`хڼ(UkO଴M? &PS"vt0ۚ"eI24W7^3Bk:k,;Nt0K^=eUcv}ivk1pn)b0 pWǩT)LDџ&tvnVT.nGE ' ;"ѼvUX0L[3DRʕghO=`eB/-z *8 aScCX$( fߤ#{_1s> e8I5)nCjo#LW>`G {1Of,cS 6I߼x1{4C ךM)[ufᅹ_e 6!֜r~}}!`E7V3,A铸EK҇g]o{ub"Tt{ncxg.h-3y)JJG:bE=S$FZP&C#6e7"مK]>.GsVSj` 0)m+Zb5Y ;mܧ^-k1^31zKsXOiW5Lf/hUV:8\Q V6,#͂|R>k uHʃ]}Q ]_² `obx.נTSsP*MFQG+Jm@$Ϟ\4}m1W=6rY#q;"0E3V\jHo&l^Q/drp؛\ܫogy)=ӧXjm2瓲]Br:5! Wu(f|wutrrA@駒p ą`7gE>nAh+=HLq$o29~!4^/"#$#( >=:Huk41Թ,1;avwI{aHt$WGy6FΔ,Y 2j뷌C*F(W_a!pTM2p*6|Y1l" ;EuY:Ǭ(WJ-XXIg:W B`?kN7yK-Au~ |1P6:JNP۪ IUSqR3x[DdL/rz^>n)JBE&at~r;JArcaeۓ&̪Hl#'@'`tYIb.󱗎H^UQI1k`NڟgFy0IqQg߈'<Cr3T=rWx>d+`_DpQDo2?p6P d-9NBr%x#eȇ%ػ¤ `FWp2mEu[1H?"@yg{@ /5Ղ9٦KseFRK`KFtm(cM *Ӵ)kOF=<|BF#/S 3m^׍oزJ)2;nER![%Awpo,ia[(^*Y]Vw4hx·'DhY&|/R:Ϟwt# :5"uꊷ+;u"פPb5~v#X9KASO@hB#y etAXcNN7L H\Toy:!+~PSRKv#zЖaH=O@e;k$叛 TKy:{Qh3%sڧqPi 6'h5I&i4X/^J 3Sv4-lN.> 0=$*\<ÃMXXY*)v3[t~5) s[1Z(yNz |+x$Y(?X h9ӆh;uVjYI|A!쾳Ѫ'`D#%>eW۵e$s?O l NbF~ n9lAy/}+!\e:-8lʔ$Aj!o2 j-'+и Iv*` ѷrTQK>B[ޫ+~g_\*-(K~h*(K5vPtJC_>Geu.\ER =j\P'l >3ƾ|f'Il$+C|`K "\bRVkpm_olq_SW#zkɩ" H + nާ4lKU9MPVI@""2>)犴AH`RhĘey 'ҭ:ڒ` xE|V_ =&QeRձX;XaeEZP^V@\qhxhMC7#0*^(k@eDlVQWD:]ZhVWRQ)r/l>'gƃ=Ͷf.a79C&= +\ t<mLTmmx^ ~ 3*ehY/CUd0M=7d"yn3q҄'=\w1ѥ`Au]pY~B+ u֒)j:$-o9luZe}W:ݺc.J7bͷ@9O{@ɰi1^Yjc0<}cJ" `S.0}]:ChR!?M4Rdi,d%ǣl~qS Ԏ%:4ͫsp E?ڀ8rvW>];8TD;`):B]&FӌZsF+zV|!5 l4 @ $8L{a?V !~+s:Ŭ,NC {12%%j<ޢ y{|Q;j PR,#%$v IuOw2pT}2M| 5ZaD=* 9KBpVžwi' >>=ŚW>dPaH$4ᮒS8iJjӒ r67x!B`ځ")ʗ~?G!$mpYJ$"0k4R)'}!<{j*;$ /p=4w+AsXxOyos?(uv\}s ~98NS~\D)Sj7=Jڎ8 K.vq1_1lF,+a|jgOI>Kf/Yi6Ŋ/ H-)fTYA.A[Y*.vDdgDa>#$vfsa1PIW9:9ϱr:7)勗o8F!-&EzEɋug?^Q鐏S: QPQ}hr#S\!̀O*_tm6~ܛ i Q@ G?k'ʯ~| ͮYYxxϐ Ǐ,=(uj}/h^lYX7s>@ BF!MqEEI;ԗYb &G(`{I0nP3Ҍof _q_(ڟby)%Y;dDRwDpҥ&r2%u px/<8u]VBcaᝆ g69m|12e -mJc;,űԁ)K~g^cv}Хv2_I%\o:% Pkb*>F:,ݔa,ҷzݦBCϥ.fb#7CICmw?ʌ_X܄pemwǿOVFIڛRm65B@bE%t(0GG튏FJ1_{#  >-%/ T84Y_^OKpxX@iwԫ7s¶,)ZO粣ZAJ@`MaRGgpzn$#F Bv><,uip^;yi fsGܷKZ =[*d w_MFy-)bG5~BwC%ˡ` prU|-*)(D&tQ,`S|?U#1zJ-HtOTX&'AAީ0& ECl2So1p6R b"4::AK+vI,'E>D韤tG ^ݎkr*0!/G rG`6,ErKT\3iHto)/Q8d0;OYjRk7 >i܋p6̙ʕZKdCl)^A HqWG0'`)r'-I ñONbOZQF""ի1‚C#avл~ $oyh)j5'mP~)LhqL,3385Ɣ(LM_<2c1=+yV0nz"h?վIѽ|{FYӆ%Z͡X~)?_ +]',G*3;sd.o%z-^Ra$wڲK9ΐĩtشS`<}/xߖk d'?5!?qH(Fer:PsKM3.,"wy0$ ȍ'[nHklWGvxPXϽr .XG1^=cXXMݟJoB ۃ55kPIȲ^'$.!%!]aى(p~pY1UXqdRdXy$ڰ{ɭ}jHO|[?xNTkOc G,p  J!{ 9bR|mX`!'FuqJ̬sW/LAdƳoS]9^!ß QZxZpSd0 ~ԫ+IcF`vU1˫@ە`u n?EB׵C_A©bnIL3/Hv#ᮕ&3Qݨ@up2Gb4,{__$WAA# C~mrn<6||o87w.fD!xw-Jl[93DBɊicŃhϔ^l[D#P&mѩrG 8w.H*WYs4 EMKW.{BVS즼m8[5(lloGb8xrvq@n73wPȟg }kT)PQZ&4anǂaI [-f֤JCs ]hV $;pɬM{6쵱Ĭu9rz,[|H͌ƺVoĔJ5O 0f5L>ۇ2qpK+<48I%Sw4*b}w,&Y; 7C}c1'RH&jb qMYD&tR}hVᙟS-Z,ΊlmE@ 9vdP'ì8hGB%j@Z9{7q{:j_rmvo ;76"^ G<#j^LEgӌ̟ņ<^-ݑmQZ,%xFxicCnBSXҷF,`rϩɒeJvNr<$,#gmҒL3DJGNN'Ys%ԮLkIJ'N<k;>Vo [  ef48UNiglIomO&:ib/__hv,Eccw?d?\n,h]آ;)>Ϲ69$.%8ot]M2}gqTiݦij=jApWy)eG,+oG[4z - .\ýMCwL V)j0+މ=RW۵?`卪]>k0l{2BlʋaV@oi{Icɥ~gf:)y%ll~hȺzONHO0}iU_UEp%GK};Q#mgϚD{ YnCm&[}YLG:Wн^;aeb?ڢǩ$`Asi2!{4tIJ0n3/]|5+AJڇop?t4R<~9"mߨ8Ђ$%0& /D$Psd*3Jd=hvIk(MQ]}%ߚc8h]ZTJyD78 sAL! ѿܭ` %66U>+|=Zh| iypgl~~$ c9+M --=0W4rU{])RĬ i: B&rYq:BG_R .. O K;j|n@2ItNܿZ[{B8R>6s; Ӭv}xG? 6MxHkmPw'jgl2D'le$1_ψl3CC݀?8!a/΃H;wXJR*PmQ|.8@%REᜌ[ɤ7Wv)[Lc _&kRS"t0S}NbP.̏ hۊt*p hp=R(!$]6E7HнEc4 w2%{**fxҿp`Yư慛^뗊QmnƝy 8/=)QOYegOW.s(+oFbKE%wEurG} w ؘ'ҵ1PiIVXB+joW\JF ҔGc0_L6QlCi'nC|f^D<^s~'T׊oOꋕny6}>kEiē(v2T[.`6ɡO<[~Obc6!u}V?o1Ύl z |RV"^i83g~,ypͿіߟ;_!9ODS;/ N,LDbq2>f>xXo$|Zz`\CᔭjZF0Nj53!tNrk-ZU0xSvlD4yi*,A4P$#=ExJ:Q0={{)MV\ۼa rwk qeU-m۹vАp .ꑅG;fXG-f,ҷ _=/?1Ffg8yQםeTK׫ֺ(A 7.YLJe)6GKerl`EA,`"yܰHGYmU)`N9RbtNKPHբ:♼!)1q@di1;bX%=o4%}4ENer|kd4*m %礑KE_ 46Y4|sIX'5ci26i)Qz&VmB"TxGD\6ן2Qk4"47/0NY @sv=YUZ,7w8[`wCླྀrY5U*L _ =BaTQFis$n%:g ђa߈iq7U+ɰu=Aءc+X.B_-;t/`YjŅ2g2 {UlnbC3kX(ʾۇ9dY$/M KyJ48_9 CPsXx%?s8pe/t2E~kw9UQfATƛ.*#;lk}}Ni3]( j)j)uKeR/ykK"n#2qeߞ4|'^鷆p^͙SKh;F~ةe5UkjsB!޵z~Ń_OVir]1ta~MP郈$+5prke GRklN7~sI`S9`?k;2GUrN5Kh2Lp+vs_+ ! 9Wt[ݱJdPa88^UtnFrt-2IY՗=et@|auk%H:JtV! sl[*ls` ~./0^Yzr\ (]mh/a@ J" ;sW<\wESVXNDZ92i(@kʴw,d?+?,b~JF&fbZ e4KM6 xzX1,We'X{4 p.\(w")0;zz6!tYؼ[_,YS+C£:cqbT"H9홄E7xK{~E`=3/ "|Yr.Fe9̱vqJF9.x㤜v蛖u{LuQ؏G_ߩz_e}v[ dtrKL4v:b.YB8OL z721$HXmR-'򡿄lā@Q1G[ɞfqgn q ǔؽ)σv ?T~!) |JR WnyHSA<;qL UF0v$N^_6&h*s[>U+^dŃ>'t5 dɁ /9E/υXAí W?ے`X(8Dǧȭu׸+!dvKmmU)GO F)0qSmLWq6=LERr 1IdZ15k?ni(J,& r hDսl4u;"lj&[ Hʭ\A3(S ekGz{ڥ\c9G f5;7j*&Tq`w\d[2U)^z1춈w;y }6UhbzT٨;L3JqYx7ӵP늫j1΋m1?8bNd&BqGg+_4Drj;>#>th+lx[ J}0ve)ə(@["nԑC4)1XSіܤ2PY>V+$lCP8~xׂ`|4{q9*5Rw=O_:[ht}1r/Ho%DvObu7Ǯy!ۇ/9&]|Zjsް) 6sń*A]:Cfz*D0GSrݤ=|#Vv ]ъ7_M_ӓCuߊjy~ƆYNC%W;9g9\`n|R0FKPow늿nCņTl{C\ GвL<~tg#0;f_검oo C7rʺL m>SAs5qL&Zq00ҷ(~֕r_!\lyȐ|m iG}QtшcIcfUvC֯0_?H,钣 89{uDI+!KSj4߫+ȂJ0kqCҀeX@m #ƤPJXin%IZ|<ֻ@t+(]TmoAuy}D3}}%_} QV&KfHTs!l RE3jF3&lV:^_PGߙz0nCߍ\s_͸4Q8y67AX+̓@oJ'樛 ō@Fh1 ]5Nr1J?-W)CV-D\p(+w Y1Lѹz_8JSyI(wm-tA_Mώ_o&w)"jl bKۜܺ4j]Gmv0~jL D!Vd\oƟҤslݸM\<ԇ[`M N Cg$C#ؚ75s=&b!dG*aA+ea(WtzY~Z(C\ӳkl[_k[@}w b;ˣ~cZ%s[~4oxPv#/T*Hj< 2@dRuNW썤Qmѡ9 aQ Nv@7[vSkEuuDS~$3N S>6{ ~W[)d~/=fuJ:3:6lV,.İVGXc/;bVi D zq訣U|o!Lsh'3I%$JO V|(8+Qc47ܞ( ̢ypkl ^ {{DߵLscv9%~ +1d`!;VW L1Kt<|ݪ~t(aG<ȫyt嵷JC0V٪ Ϲc3^kWfsaxO`>7zJH ӜE%sh45@oU%2 =E/-N~x٘@ h'̡΃|dOS-u7fRu>Kb5ue#|oͩB@+ﱀVH=±B^|88nTID#҇J8cցn~L=+(ƂojTvVGēՈ{y3{DEXbc??/@ˊ!$αU^6U5pec4~F5)|uzk9-؅{N377`'$/ ڋa \Ya ⯟gX&B%WmA$SjroɁC =Uj@de Q$T/c<{ԫ۞OsaF1GzÅܔ;>:CÙ-hm0)\Q;V9l*& Ɓzq76JRퟻov/ +HBY;j=B ~sfwcM6{*_{'W-ZSn2 f'hSI< p[~abLIF )qu9|  P)PQw khDWee_FV-l]]20NW%ëCdœf$g[27؞s,qScY`CmE9-nTLC=NHh,Hפ^G7A4 : J)8k=otjC]ahHDWDOi4k$J=%t2+Gd"R&=KnoH#2p'.vý̘r0uFai:P@Rry3nFutڨK#tnH}N?q 9['d2"e{68k*lYoW%e^vf tXܜ)c^rYX"bw>H; " %QP؏ɕg7!ꄅ~L WYӢX< =~<͏q;" 1\Ku/?NLPa ζk\ /L<)*49SH)TO |&{*#LMӘ£ןU&3$QVxi.p?Mm֬)k ᒛdn@`d(ݥygUY^y0O.?/&%Q0Lz$lwcb&8uzLrgDxBXeI(U/y[8YxWXbpw/ .m~r777e(E@#-uj`ؠ913 ~qH2wګ8)D4+'?Ks hO W 81!|#Wu"2hOP`bn)F{8>װL&(igND.O%Ëkc$[El42ҽbIaFpIs! d9-:ۃE'DK\ґlMt[GPW!j|,>CRt_}^Х羚&cE'] .rh؋N6.V%%7 LZMyuxO;f$%x`oƎ>Lܙ,L 8H2%$C[@tZD`83: ]OkůaMk)_ :.bZ/XʚàSu$ .Lun@>G tD0 5 P$)Iof‱?ۗ ./Mi"k4J'NC\Mm&0$X1K"¨(K 紑 E/rW̩=a v òGM%1:fݿ9އ$ܻ|nni"`@ q pgf'N0]ۣ52QWI?;Ԅ5ꃍh4Vo&j`cj/f8#oXêo~T  ' gE.έ >_no@ HIqI`LَJ!& PH$W]t? >*3tLˣ Ћ( #zps̶Urt-H_*CέJEo6cc`h 5gKT5n bE#;jf| ?N~jGڐg+-҉iy!ɼ:Y2OPMZ=+BI(Լ4`͸+h6ʛԛQ10)s)S!*M,`Z=esKZ|*i+n+ xjR>t66:`p{,P A6_l UGi<ͪ*@c,T1zb/ ~5)KR ]ݤ dy|FS}IS79cMhݽr AD_\VVBRkr$CW޼br͉l4ܯ]ǿ֪ò)5RO, 2wQBCՌ]._,DXwRl2'R׭;{C[+lbh(/WIXDz#(l"q6ܫ5V)謠T?2or=5=e-Gb4,TeNbIфEEVfHP&'qT3$>n:#䰔D~tW̢2Q#WFe3a;{6~cGTMɥiy!RiKW *3N^&Ieq?ߠ#<.(1.B8tw;q WZ׿@5Qė`ǾWmBcWW5.s('ک5wѶFHPSv[ߤ!9uŷYO\%w ; X{NJ\euX>i5q1}4ѿTyz+MΦ*UOPzk'MĈp[C,15´-s=\;;CΛM;/xˬ/{qd$ko]Fo Ϣa!9w + _W+lB_V gj*-lL*}u~UgJcqrq{*%mqs$;qV2\qq_nles4dO|RB\tF M'CMV.S)^[5 KqF"{ps질Dfw hqGE5rӇeH#,%ʼn8:G? FΎ ʼzvYp !e7"~3ɜ `I&oI hwzjd9UaGgG"m\oPRpՃ';ww B/ ϗI?hE>!LȫzQabfK%t,*%iAD)#=Sc%+Uw5Gh%tt j .`ũÑ掆qשFfެc#;% 7Hioi%(VDɶgQ5jhUa6xK7CrvՠT9'?[-t\eD;}rcxwM#b60<HG}:rq`tnU)RqkTԭa7}40<)/J7X[ui6Y /$Qh:::)['|Hu&fѧ@/EIG{n\dffO-T]JNg3`@8 U1ZnZbPxj2K0Hej̰ӭ@Oz.kWcd Z'׸Η%RXcnYJhu]Oû7^e1is {\Ţۉbܨ :m)U(g0w83SRjSa/&`9.IoQ=&uhљq[tE jH%7ڗ1ֈǒ`Ufc+WͮRLuGNtJu Ȃ#)dNWQcjM&8XSu-uEv8FDAF.tc& ߗ49C-1jFrmĊ,CŽ;fCsҹVYԹʻ㳲@Z%Ra~ۮn<Fc~(bKe-Xg*:*\ VYV̏:/FsLGVD!H|.`L\lrM/cH齽Rh=*Ik :9p3yIk\*y@]=^!!Yy+sތ[G6kQ(Y2 p. CVȵj0Kwnk0*MCU|FN0U7?٤$Cu⣯8)7%UCɌMw1z7&1C:=r: z)ղpVr>rü=qlց@?o$IZa2w2)Ad MO r}JfO"Ps}n8.rDI9d2NYIi od 2'4^az'<1u,~9$?+|\~5Tγ02?)|zw!.ثKQ8XQ)h=֗]M]7g2# s~*JQ@89q ٢obMV/3/2;nQcm+6|ǒ\aH]dA5Ad2)=GaOfS)dw*dc_˟[D˷^0v1qA3N@d-S'?_\{Fuư{ Ҩb𚧟KkxvBwY !JF(fTdžI0<]!a(ʬϩ>rr5y[%c=rܡ`\Pу12 M,zƤGh/箋@ /  :NQ{םV򥫖s vT9U7#LT s)| ̛.Lȸ!;C8m0K<ŏ@D1 )6?e~8>Zv=EqQXWZjg֐d#[#4#$Jr`6͹K !oIk RGp/e`BhK+%|N4:Ph*|jKڹp&yͼga#06&'u [jRq f-jE_IⵉWc[}oIA^YPa@n}護7=umP˺!<6GqZEl8wXdLgKlK_9]x.P!QXm_v.t@Dy SHyW4dMDa5o8ϴJw wi{ƾ{j5,>Vkc\oKX$ 3ꙻt(rP#L{}`v%fRFc I<3|7LM"8x0N8NRL)dćxS8R$8Y VRwF0rCi?+kidSDǢ Ssq@SY?i_JD)oϚv$LħВJ v1g*L'Et7儙CюXIeI<]B͂R1 4Pe= TRV{WˑN(>+&TubIY"j8|h!:J^"K!jY1W:$=Ԕreg\hPEp ;cs+,-u1qg~ڛ2ޣ^[CT6&8(&t2h r*dv歟KapqU|ep{,k#ݝ;YBk7 Dٿ"{KLɃ>#ܹ=}>U>sZZC&nvX.hڲq${.`zʓpŪu_kբ_ DE}(* ` u'qg׬nxna>%9M9d#ԣ*??Lgk!ivX9KOz>r6sD4 $Tg{+b^,}WDqyz!b"0)Bv^޿ #F8+\`I}-ak {< eMӷD"ВPVX@*SRWK vKgLQNm俟 ;e#O/b ZݷPʧ걤DD$McD 0CB负UKnpVBA~8;ӣNAYMz^r9A0nhQu:K"ߺUЮ&qO%x ?4.hD5T5%{Z^3B>nuԒVkjde9T*zPxj<)1 F%?yx e܈\'):L {je/b(\y標M';'h{&譇'8e`85Q_**, 8V*w+L8Sgf|6L2_EvwR $uR?d4x#5kd=׮ Dq2D3F2<3SAOP"ոq:,4 ;χ d̹Z [r0Ǎٷ zs^,!-s,S*?*\O-pvvw[fn)N'm=V_ɹ$>趿,!Uv&)`~VGG͢B>֡1ځ =W2W9c91֞z|5y45s!H%뎺JwL9yyt>S+mˊ%Bnpof]gk &SE)>MW/wN60 2#W:ګuсfdǖ}YĨ`asehF|C%sk/,RPxCrJ>Ɋ+Z Pb`-:2堬x(AZu2&xd ?I;&ʬM\/KW pZKqD:eeBNvQg]o$Ν4C.e 8N7fEO =|3aj,1"V-%ȠNh!qLn'vc[Q]W Kn9E|W8f/ڈVe@GUZjUB (c6˼o6컠C%wTDB:` PIDYUT16墑vsnc")(+zkqa}Q\5]A!ՔTߏ.?a,tBÇQv:'@{L7X^$ 3oH}2#2y;;YQ71Y$pMc0Q,{-6pTA JD]oE-ߍfPE`KgNJyIE>@D䲷ct`Q㔅麽hB:_;!0sAbυ飗ߌg#x K˕a te.o[5ThI`ơ [ $L> YMHCJcn )]Cqa ̪˪z5o\>2`@zܽ9[NΞU٫T]*>$$MO>g="v) eͰūiX d5IggA p_u{|v˰(áur=/7'Bbƚ5cd*,<حt3^ʮ7O+m>c ^|Ց/7TwjE_-]p OՇD> 6MD"˭+I[Ϛ 9NaSwD,'V'fXR0fA(UDL;uJTq 8J v2>bMbJ/໠"nV%$'C (5qÇf{1°8͇=w V,."Ҏuf F" :Ip9&z["DK1rf5MR(;oC|v ^m.3b4e;+Z$W˥t׀Jx̿ @Qt1/r.NR8rPCdB?\9Nd11+$/(Rθ*X^mJ~o/O{{(6gИ"C/3 q ,X#ƚϜ+Idۥt숛 c!<#1Ɯ ^R-/xԠk={ yl"sdd)1ȟ*~ɗ O6=Ubtb6(KFӯC'y&l2"D_ ۜNRqIO<ě~k4uS8%R wEAmhz4Ngg~`h<d?ZMuxl*l`4f#}{ oww)6\?v'2h i. e-\9WŹC;_7FQ/9^.&aV<Ki Ool{a]V;Bbw-1F &DfȂiM00‰^@rYRv9\S"&^\n!D¯dHDnB#qSY-ho~6,3~Q֓VT1ҩqc]WLaTNi'ﶷUz~ooIܼ-j2n%rM6&L.{׾OTtU[Z;V^ Ar9ngi9F{I0X GWC%E2[0ǝkIx)y4+ouqV~'a;S|a"F]jH/GA [Y{w{탓Wv*,0'\*CZwÌLKH_r0":6T@O>mR?(>⸻p臇p㨻o# vw/f }~1)!ȒULK~-`%u7](801W޵E$\$u>`ߏhWzVuQ_uj9̔ќZhր\v/rg*@Qߵ)k\hGaL['GkBBGNsLR^=iV(o[1+S֑K2xTvkjlZ\%! \U<Fba`ti]۩ p0/NXrI/*MÌ7~oytov $5fH@!ۚaVK7N(h`K{_W?']Kѹue-[7v~/$oH< B=w8o@xxRkvmmo qٯ.<*`f1 ±&LVi}})hde)W/E]JK!1/̰ كhy/*Vq=CL3zԝ >YfCk^F$( b21~߶.0 ÝE%O^h ]H)g 5E=!@ r)g<U{`p#X;xNhњs@U%x}ţʹް\E%[*W κ7+]7|QfQ6Q Gp3ݫq"GKQPNw39-O⸬"J,Ú6߽_3!|lz˄"1 EuLFեĈ~x&v$|0FH &_%PCA7t Μ.X ȓpsye| gxWx F趕з 8뿉nnV9AѰK^^K|jX;B `Ge31;9w&IHsE\: ̪y; EM:ρc0iq|xO3%<dCz֫d?SqMCD~=#jn˕a2֪) ] !\M #0OP5-K#VmF1Kp{yًZJ"ʖѨ-?O1aBW_A[,_0@0𱯀'ImW9ACGR1ߜM]bd MsIryq!C==gΑwr!D"5< S%qHo s\_!%qUX`NK.f9 Btsy/@V" CĠ,aQ%KHR)>j{PvaTe)]Yh@R&$J13g\u@f$?՞ՕmEԒU[imD6VHewы喛cOR){?s{*VE(˿ (gi5@/<CA))zsq( OC[vM=aD"E9! 0.H8eT[H6s7};li(DhׄIBږUݭ]5 ߷q{\çZ` 5\QʃeeXDW%t4_녕h4ޕOEk/!D։&b5<5 쐋<<48/|Bi ,YpXO,dr?kE7Y8?tؠ/7)9t~.qӴڛ%`7q%CALԨ׉޽!CƯa "R(c9J %u;>Ɩ,eÆu;Ga8.'$f\j5 lSf- u": n K2& WSm)8P:,_tV\ם?1֢̟|LEޙgK>XWzk5A#gf#t)XB.8˨L]DG;,tNzB b{|F#ܒb GuO_(So@NGTqH3˸uѿP֛]3 (NM0hE|Mw&&kyJ`Cadxd&ņi|IJ=_W#ToanqYZ>b4FHVyf׾=]Bp0}B9^[Ü2o^`cu].C9\1e988xzI]!-@Ao$j!Lwñ(ҁQ쀑BwpsX =i*'jزx8q ℩ Kp>~1w<_">_1-Ԅoz꿬!vđ=%.>U0翕HlǠ6dN/缽vd`Nr>pbDͨ-~7sg>_> Q=(jZ=i:n)9s,Ķ0+[RjHeHo~ԄG3~3懄B"oş H#YˋpH tAeY+}p.U,X^mP, Këfo+/8q>%F]k?33zF?f4~gA`nɀLoZ!(E^dE=%D-)2¿„,auύ" mqL+Y"pJ$`p+@f?Q{T+ ehl9=J6SC{ϧeDG@2L' YyPpal<J? &{/vb!DK 8cNLJ)~3g']avK46h,,މ;)@K-sHJ%TYIp0"! ods[vr>6U QSc|Up_ƠW$"QN"ش+Ka;*4Ixxl\T#QGT>U D~p[ %tpOo6>Ap-q*j2Rt&Vc]Yb mSjDsmёCk7 o/_(3Z@QGpm@ d ޑwj sJdH:yg<LЌ,SX\_KHo -()G~+$X=%ä́jAfD@1uyID~:x2g >؁*jڃcm4qnh Z zaoktoo(DI?%;yfQ _W8LH-|c-Q@"qo1Zϼ2EsŀJY-`ʙz)Ǩ\Esan- CfԎ;1.$Rڱ X7h{.9k1R&KNJZFֆKstW5 ʚ..IQ;J2`0д;EI8u$͂JcO,G?pf$afmeI>_7?kοKD r1p>TB}bfmԮ#d6L)xY4be͕ 5:q^ oBC_* `Ii)V_J9{ 핂" <1YiQ?B9]3Q=e,oȈQiiصq |EDoiFǓF{MwhJ4-N}WBa![q[ssJ{Jz4Y~ ){)o3G KyCAzS9=h3/!E|0M=!ħ~PY#kT?`)o>xћ}iU=:} qk)X(Ki"(aL=>jf> Gtll| [݅$-CH)z,WZ \!=I`yo¶i9Ix&35-Cj (r{)> qtcL9(vӞ+GJJx$_i5HHK|-ȎmryX>ZJs袃e\7@Vjդ@ݡ2GZ!+5ۃ!R)\dD|~tl[ VHRLz%N{}hN"豰Z[n;^jᝄUS3V~i>$C;oeEmp;B.K`[l6PEt#y4nΡ+ȼ޽`q5n~"JPdڰ)-^I ߬s Q$e\oJu+B  | )L>MbлϡI~z\}/:Wi'BS"GV#w84I&wtv{Þ sV^ekm{"O ;K qkW!DMwJN Uz[`y-Hlq[7YG2 aV+pK`s(a0l#G.(p; 1JRgZ^˂$jc­q0 wW3N%zQaQYמostj4RyDm+oڬ3'yRqFm5͒7Utua+>9:dOk.Xm~V;{v2qx+B*(&Lh%twz}7qFdh2*ܔr liJ#xu ۬ }r/pIr6MjB:8s(hAW@|}~UJĄ͙Hp&m;t9T=a>ٶ1烛JOe\bԎiH@1eI="GjC f'&k/ȗ-Z ̿ nҴ.́ܫ+pŕ*r4  QgMZGƀzT7t>1?}#`G%'S_ #A6 TB4wavL뻗U *yƃQ' 1._ń+C,Q -ky;5Abm$WS*#:.15ͽm9Оc#;t4eAr#{g wX9\u2nglڱUJ$~_h3ϛеs*1*5F;tK=B-eccc@%GjGԃ̱1Rf/ӈy7f"HL>ETz$cy-(J?pFYK^mcêA 5:FNBl\pC/~}(| ,C`-Hn+n,=kt"SԐSjbMޱc  3KG$֢*/ttՌ#BIj#_QSKD.AӈJˆ:

eLz8A઩s-i'$~NC^WE ΰQufYM3wSxY%3S[%L R$ jK]'6g)jU@j?U"zAeQR\Rxwb`Pqڝ48_&捎 qb8.߂O1-F(;e#I/B>vw,5lk0nbSqgrQg?V| Rs,yBߖ~Fe,Eža_{(ז~l^hV0[?$/ @w^VFM#_V`1Gt$ ߷-![q'ɭQ3`LZ}CSNDҾ3(nWKdK'^L'j Z̄ŧg zh7X3,}ECg Ջ YPJט6۪O:D T#Ov1aFٲ5bpdGf0a l!+x,=ː({JqUso7hpuZTSb4[3DDfcG9R݃c¸h]ޤ\0ltzU$&VidT ޔO*z1P ]yu u5Ko爒TkSB\c"\HYr,E|x, o$Hi 8.D܉­N?BtC+qIԧ#BveyF6fBTyM醴~&L3ѳG*{HI;p &8gs3QNDlf=6Xv~B#u4>zqdAk6i: cG3r!X`xt7[߬ gYY7 SO&2{ ]AĮ*ŰOɌn0OD~Ő^*6rB1`TKLĂoSn{" k7C>(Wc-M]I zEwJ04<,dbS^pj\>8@E3 FiY-HZ'>RpeUH>k[|2fW ݮkdz^ŷ+];-j(!ΑU NG4֯uLlz8oM$ZG2V4%A5?Zc0D\ f {t;ʹ;XjB< +e84 UC^l5[omB{b[OpgUxk :oLa]ly*pW.+X5&?&M`d$1#Ծ{݂OuVd!Ql4vQMUb]{*mpcxio(0Nd*}4!h_tR;εsxPU:D3M y;~ l0io[.O\b@k2,3?(b7]T9>壞Ur(9@*b\-[ZQ2YMM lZ=_+GX0P5־{ }?N?e醐|י>r'DV-8_N8LN'1`&d}́?.kD ?:; TNbI0Z` T%.dN.'ǛXY9ͬ'"%T!E`=ji@!\(F,18udi0W/MI#mVzmgy߸ō>ƴwkcVy4bYA]L{u$p jY15U,.Eoxޮ;S Jָ+a@PPnYgL zjju_b h7 Ьo"߀ǧd%p#)Yf@4k&}SzS .׸D{Dž"[bDu>޻MA͂w@(x*k浦]g,utPK lUlS$Q`~ƈ&]-o^HQƢ_;m:,84ݼ3EO5`lpO~ѳ.N琧xdRLKa{K`ZWxA}߼K O>Hq"@'F%Vlq w{(K//+ܯ/ϱFx@Jb4"ȫ$Fd;# ?S~5ؼf_tO}p'0`،>; ==C+in$b;azq}o]GNsy~G6jsa|rnzAdwsE6TM| <1b4fJ6b&m[`>MwHcIZ0h5߳,CdU1 \*g`]N \:G0}EZHJnzڧW:;}4>RW$,n Q}2{i'uOXW>m7 fd$5&gx|{n3 Okǝ*V/\p[e$wvaNKaz>ztE^!P9(8ς'|T\~;uT[X/C?~4 d?J5 'sك=kL{D7h8.'kn"eQ%}spP*kT?, vH'娵FOsē2&h0lU3ViB"B PC[p=m,*\1A(w[NLϐ*fYGU1k6laU`xЬlLyށKʿ-$2 VkuŪ$50vs}rbcɃMN(Ki}#tx&p#'5t 6u0{6v%˚ܕ9b UnP F@,-CbP!͇tG zW=噎ǽ-ܕz Eu8֡lGBAa`_Nוf9;2i}(G݄zvh zB"/8`)Z`:)k )uR++:n"5Pbla:$eL,/SYC* }O{LͅČb!(5ZM9K/3voa$=,n &I:ڔ$:\& T%xs`451_{q_F?q- G$zQ;R:7:=zL[h*Iks1d BqNAf"[3,K[ELNO1* !T%TTc0Y]e米9@gc6MZt3'i*TBB>S;Dc#g ҳ!t38c@cURzXowh+[d}^Xn[>[;}p~;ǕL fFQ:˻`V3 MN"ޘ)CnV~UcDk"Δ)G~fO#'P8#/ מ.d""{t5O*`r~(~,q\3άCˢe.֣7>fVZ_*'dyKO 5$(;v58ݱn&;,NqNzMϢxmm%󭞝Ү[!1W]*Ԥ〻 w_UT!%{Dβ#'h 82b'(qmir۠αIp9gdlNP5Wó0IeKAbf#+$GO@V%s&:B#-p4̸R iGe-j4vd"|cuuݦMNWX\yjO33(>yV꜐ϋB^ ][\bQ"_Uq@ܸ!4$@Th"B1x HL xEcK&*MUR$$D(*|Pf  ^uD/ym8aʌz5&Nfݗ3d٬BmMҖW^„SN*d.I*rLXCSf-p|`HҬG&EsWq.kZ^eTݿ>od㧮)  6^YyC@ dOp巌x 4` [ W}usTlþynS ZRx 6>OM R5[z$@ȱ1{Y(1\ܯ_Ӝ`S,Ao%гlh xtLN, G; jX_B[If.adSBo#xFTaֲWWDm_cFi Gb;'agNdQ`r-6YMli6\y*f^aPtg=8C-BrxadT1~uu, #5 E_q.L* 9>.]xnI/+OO37YRFsCAͦHH-.H>*A%k@i5AY{;'qBJ>Bp(tHk]c/G3G)M›EFWЊA5<~1d-F ]`._>2{! cd hn5tgH,Q i[ r>f#Dyπ 4\jq"mMM#&hų1̎h̎ Lo:F_P-&`)!#$g8w n0 U:{zaGxAGt*h{3ג43E?3IY!]~r.(!D8l6hjM #kŘ=Bi PWNrF,-Q` Uu[ۈH |Fsd,$T5Y z]EIb+_44:tgWB?a$Xejl 9WM8rBōs7Bk8Xp ¦eY#^ù`tՙ!穎4ȖS/RW1Q==c{JwN]u ӳn>䋷-ΉTY=F꼹31'D A(U={+M23&A}/|9P_^͂k3Q!=5W;y;Xa 0-kЅIoBPP{"G^M;a(q 84wd@Byty[D7y0玅Pɿo"\MB*P2KHdӘli/NWڄTpd=s% IHH'}FkB7Q`lP9TdM!.Tfg"5}vty]{M5s8$F=@u"M9BErڃ 7L OO-- :^pA`dI1H? 5Fl c EoI_GnQ̄ZSh{HAU|G l>=H؁DfI 1ۋhS2N&OJ,!%A㜱QW Q4o7+;u.1Ť9a#rUߡ|Ʉoٍl Ks wi[%yOۅ.ܩi* wu@h*XL!n1q/C;_eRl%P-+̯u2hΕԌV0ڥ^d |xoGj/?vu:h ZԚT4EJrfA4r(gKD#W ٖj\03ќř,52ke7(ɬkqU bP O*Lo~A kDgrpqK:|JzM,ms>uy v-*𿬜|V}oT_ꡍRyFAdϰRS-[ڴly* 9xF#ajLFW2 "i4QG^ j-(CGBE¼6zyTKK@R:nRlmKk,ZO%W3hU[F&.?89hN*vz0ӓbdEO)̆O;[GEC-GAL`d{J~ShZ| 2%^·sfg/ȪsBMgq)+o.ѵ:M7_yhlwΞ\o| 5]!D﮻nJuiW^<-ٝU` 37l/~;%|Ծ0۝y>QBhd@ƻxU{٨#~8sfk,HKvkc ,nMV$`N ݝe#lms>:()?swV D*I2;+o&"Qh޳ `rI0,ɺj/XA[7L-TQ4q<3L7ܲo-b h{+=RksbrG˼G'~gfZM(MW P,/ɌB%a (kj/1 H"ڸQsSy7De҄Up}xX9wՅqVu3g0"цį 9Qej# VTqf8BdD|U׭65QiXBv`f'Kg3CS^x m)ȑX{2#Wes>yT9.A-c<'Wʪ2}޹ن] #jZT!s^cۺ"^zgÖS,*IYDOڛÇA31%`TD6ePwmiȠ;@1Х>1$<-{bh .'Mz'UY(4(\`/UWԸIq͋j_6Vx$8%Ca{tt "ް)Bv[lw+5 %hp|WVŁv)w'RN#=nu((!B+- $+xd(AMcQ f 9ee6\NFRE慌w#]? ;; Oo BY%q(Y'hj|4rJ/aH^ VHbaI"%9}=W"zm,(GlɴWP`KprYEwR=oV?Do8= 9SW G} Br~wagw-:~w^H8N:7ߧF:|*pc~DhZ_unD0*I]/3gyK,ͨ:e[Y,BK<&j_DY g"sZKlP#M:~ ͕Bl[/樝fb>:5w-+0!۟ 5ݞC7}xd75 .[l J;SnN}O.DYi! zP|sNY\5=G; c(oߕY{K]1b=Ìd7=#嬒i0iUTٳ܉8l=*W4sݘDl EUiܑ5$"zս5GH:=kwe_ JT5D9 ~4:' GbxTH |7)пFH>zC w]k7 cJ4s>WV*iGȹӐ*d?tK{7DVk@((#kwf$xӐ6'F-O~~X 5ROLjD(5vϻBli_2rNO_-Թ@t/kWG]z9xZ,ފњ\eQW9;?.]ǥk3j݈{qn94b(-Ҏ ׹m Y1/#uB$YJdu?zO\*w*r EVg#eH3ÝJz>_:U[\Q (M[qW uSjgKh0;CWtA*s 2!&VtcQE07Z6ir?|ѳĈ7g2.nz9~.;D\^P *5F^ruE" XC̚7ߢ%[egy%Q^^.G|Зm˂$Sۊ З*M"AM-* i<1 l8Tܮ*ֿ6kT3דp֛'gK@iFq nrW?F '/yIRvr}r&Bjy *%LBxt-32OX.TPZ%ּLfМ[.Wg8>A{[iMQ睏[?kM6tZ-ˣ%fzS!8R"?¸_vxU$]9 fL*6XwYX׶̈ڲt:/G6L_8AO >cMjBDŽa7ΊQ9\ Vf~|Pan׉%16mJȧ7ܷ0|nS6&5ZYڃ[{nUpH+ s("-𘾧 ]@v~FHaGs5Ņ-Se~ QZ+IمG;>S:LQE9 q-)U+W]0 {YQ3zi: DwL./?g.roH89ߐ4)jRџ. VqT 5₰'dJߗ  9* ;zƗFРr1^u^vUw[{m̊ 1.deA6ΥɅWXTy䧂'/D\ԖIr|9d9 (1=ķ@T Hޑ+ƄfZޭO =82I$h ѫ+tΧ6mB]G G .o?Mr\^5a3 N'\p| |((s{ zXr$uXY ;ۮ: =Ǵh3O Ap+'L)OQƅ)F[G3ު[?ު^uHvڌM-L HI7OWz{2znɌ@;fD?+X,xsNy Kya8q*|!q:ݕ֣WB}y+LT5G̈́K$ -)?EB 08B1T 22%FÃ@CuG3P [Z|QjgdQs|bͶ%`p5Ŝ|{AHk3;~e<wMmW?mp|g[FC /8aNlMّUow/4ne*9#81&xYADQE8,~ weXЯ#1`'A`aW)C-Ԕ~rgTd{q**6Um+,H_Q XĞ>NmR=b?hpr~U"ϱۂ8riCu4fƐm"04ٙmV/yjEɕ,(x9׵Xgu:,4]eqU.R;R2T Ў}(dtN9|' q;]b YTZ[!14T]jkD6&% ^YUf,_r& BqfstGĂ@]P^+x(Ňw ^sBcV+ cMah+}TAVa oenR@Kd,Xk94`5\UDGReF6oxFU)RQDH ,u^ OAD)p)CO&c3؎+HKk(8!9,";/Gk?#xmCcKeG=uDt VЖa|<\oBed_?1ko utRSiPNF.&1b P?̓t? OsZrtae+IE)ZZ~ۛiZh`C@v9ݮ?Չ:jHiPO:,%?hj ƉO51:z҉T2_c\U*q/ZlpG6 B9n5v=PҐm5Q?U i%rBmW6g)mcW;UjzW+A\Dܤzr&+jI:/e1p!j} \u 0LF*J~TAϕ=KL98|^}zmB,fAyX:o`v; 5ˋT7r6 ]ߏQ4AP[ި-tmz[+Y9+hG \J-L %["[.ԙ<뵳w, loiE*DE`ojӺ?t0IRNSuU2̣(/@ϢܨVÀR.3H81t!{kD:| fӘGdU!^?,z_a@a \֡Zа)] W|"RYkv>n9ZDEܬ7XT?3\FsWތg2X);[\PH'em2{B ?XI(`u [F>d 8P{/j;yZ a-euWA6꼌\w|)J%1ɜUys3*G9x1/=\C3gr i}FВor.!|U/E_@ow\TO qD1R xlCh9é ˇǴ`0ia3ʚn(>q0~m\-'m:W9(JaG,xww-659mbԓ"|$mD-=s !-{/hY0(%K`KfÑeaׯY bWŀϑ.dcVڶq(ѴnYܽ-:0HNyA6}rߤjF! uzo0Tg^Xy]l1 Hڄ'!$|O{&IFh{TZ~V>6,N aNep9 =VxV9a83a-U&b9:PFe@ӻ@?}ΥR xV69<]G2iۨc[qN{X髄'\('Ly+L{S#s?Y @B70\ufS 9<+|gt0CoS GM v/i5duY| gseɶ%z^W+Xb<67Z&F\g%[#/m36HyMED<݆%%rbpjƈztmzU[M,T9qݛwэ[Ase_ǀ)X[TŨ<6$ e"Jt;Hi3PZE{)'"*o ZtEB#a+ڑl~56F9WyU5Hr%oj8ˍ02j>uKmʒz1Dس#Bh8kVPѐf56KM͵ViD.1? In Es96VmT 󆴤i#Q=ba^_QسۋNB…IʺvtJ㱥_9#*4M9J,%hknJBJVra´S,gZ;kԀcH>z'1`'Wv(:m'Y-D d[\J\8 n@*}񑳾H"֒=^%; Ι#fdDA2fa(xau%h\6bMm2c1 K1ď_@b0Qb鼦Mc [Im{:7׳ *]~f,;=\sIChO{*mFFrξyʏdF54!Y]"G2wYr tLU*mXK߈k+k~bB{)*#~D!r,+kČJBsBcf" k3 q>hE'ZB^-mm""_Z"Ri+xڌ&ūf -ji>;7 ;6c&>k1V-+hh(3覥Wnc&9[_s1d=YnfPtc{}ʼYwOKt(6З&rɭbS۲e42 k\ՒoNe7K3 3Q!/*|uDa0#S+^gk OOB&GNi;L{,V%O`3h&"PըEEkF/wVYI;='b|0'oEܮSo(=ծs?l=d8՘k o39bLJH6)R95sc{gu|eV qvDR x|3 (A@4S0똅LIl w+d\m BZ׈ܼoĆ"4wêp{MrBL0Jы5e K_\n1K[CMtP>zb/*R< X ia)C>v/h0(Qr TAg y;0ۻ@fݽ'IB%2mn=hPiup$.!ׂ)(?VN҃S"h`уy$ebOƜ5({ON\_1yY?".]O7|aZ "۾|EZDY } U#ÃZM7+LW9!2u.zSWO1a<)GzDn%Yҡd% A6*A_g mkɥ'R%7~sʹw j @׋CĽ[H ЍSR*DGex)X&(e^ |X3@ߪyPf&-Dþs:=o):? BEaZN{:'`/ K 6 Obڔ!:,ZҁSI;mP 8 TwXCߗG4<jVxwZ0bܚEZj3_l/+b&x,>-i#k Z'ms?o\'Wو`Y&yV2mF}&(k#üƞcZח~>9ip_j2,㛁_׽^lWCIن(W_< *B($*B+0Ww̸iBJ<=&q_MD:x 1<S=Tsri[A]imd7/i>?T.^Lӯܣw4+W4<jf<֤BM'6ejc!/ɌXvK8[rnfކ̾Q@;B AO~* 67+ࡡ*D8Ӹ)v"-]V@`fnO>n\q;OvSלBi3>-pC훛ϟh>ha=dk|o(TɾTmAhb,y4W?\ HVua!@L12[B錎32 d-QVݝbHrJlP^=B[?kkt3O KI>%6z; 0x'[imJC_H$5E&'9k0rv^=sgqTr.^pJh`IN}""|T{f2C63%#gux`@'.mKnآ6[]WN3Ɏzeɱ= 8ڏ!"tNVѻmX6^e#-)0V(pXΘ<=O,gtX#uiٜ-qm5f3jTJۃ :s, L~;- 9EWwg.&Mˆxf#!8z$l,WS(3l>E WwU  թV_iQrqy˞޵+Qꡇ3Nvǚ6D7䏖{d E ԔfCA.Lhw;7>zQ5s×6۠duzM ^B@6yX,@:H:h,W^u?Mo%V%4Bw3+?{*;gyj;cl &"~1tJ];*{i1˅Ǽu"=/HMGTv}u8)˃Fcz((<&hWk/ u.a.q4aG!H3>I.sXqfh#0zk7^IE?#ѐrBPaݭAlmȳ+jC4&\Q_ tMZ>iN:^qaa0qjb7 ED05)4h7諓f(Ԥ_:f+#Jm$/sO[2l%_4]T}A\-4N7V5Ri<]1VE=']Z ;G#CbMu Ǔ Eκ~~qfћkw[`ksJalNEKqv ƷJl!Ai= lsYxHZ2o+2ix> _g%\A6ķLO2=ϛrjX%g-mu/U)ڛ6v~]k2ǔulki͠ *3mrtHV{&nlu2T۔HFLZZ<!}l]"{S h $mSDHRvqJ *9'R,tЙk2%ʒǂWC^;ɭ"IE#vGBSƄGUnnuu[a{)!!Q^-&k'9arԪt6iu:qNm8~]Qp|K:~)Hdd(aXX7k桴OR b˾sJ=pվ^4ʰxu?k&G*ɫ-JyhJ2=CQHP?D_W:C}>̟Ec_e0wcQ6o 'Eҽ9Sl˟3MKEKT'ɕ\OSsdp]Q˷H|yVԁԃ 9q_q%\_v8'äWn=8 a'I鏚)t>/KQk ~O6Rfh0sF{h=жm`"y% \5) /P9uZC:3%ѣOS@yאC`E!HO%]c,$sM0 eKxLE2M9@?i%Bdd/Ȁ|3>RrFVP4i_ReElJZN}"ezdHv%,0X4^X$3O ﮗ2Tv/[״p3oWdH[yȴZ}: 9r,A xfir_#R$6͈?%opP@OPX&+Ձ8F\>VJVSʚϽ/5".IVJd̰|'`V`󶇃*&'F w:֫mTT\Tr1MK&BJ?*c8Ү?Ouȕd- P,Uʻ<䒥r]T K ;ǘGGŽ)fN>TI @ۯ7zEDIg&tцa^'}~aLvJ+}Y)V2?ğ)TVN'I7FftBHD򹝴G Ke7sXXL}m"J͗ q%̓ v$O=2y6.ÝǠb%"zC0YX]n P[?RO u{S0qd\-,ЊTz5:p >46~v͇&w&x1} kz~7"_C?&j>zfg.bXOz.rr(SO,uxȺaS.y ع8Fl. aZB;H7NLsTtd39\r:{jz2u^)-N& ʎ;6~2aD<=YA"Ȉxah+6+x3xoN:o vQ7FRWQTwd eB`"q QLpwGVvlg&r^*Ah K<;r^pxvN ؾa8.^&ҘUgu j*h._TlOL1C(Ī=Q69{w$`AJ ]U J/V}c7v8F75S~*0Кtemm* yklS/pL@s,[΃"8*f~sd٪c&oh4qJe!LwJ.y_{DR,CTtz98WFSll xP}_ K/;|YSAno{Q僜I1?syWş&4Rr*jWXft"a lȧH6mf9ة毽 M ^.x8~{ӽ^%2JUCnw62ϩSRA <PC< @bA D]WxCS2( I? b'87מ9?m$]3\Xy.e52{7Q>zĻȄu )^n`Pm8D̹}cT3?o|"#C~vsѤ#h̠x a6zL\;?-Q.}? KeqR`8Q6r9 eFV 1}`I~޳>4 @rOKܹVWou^=&W4RC"6C jt%BDjzcB^M䁪`yAp-`E(>3#PޡKdBbU͈]Z°? JAO}j Fnr o$vG{}@C/JP`'^.QBial˔aL i_nܺ;!zQqe`+rڪD~UO/B(}iޡ"͜.䗉^JL#q ^#rV\-ڂ>(ϟ84ѧ(`1pߒ^|]f6谮8a]jM/uAΊ Q7@]x/ &Nz} v q}~qggA撏"ڊ:Y0/ ֣&FUZw;5ŎxcLDDD҇2 +[%3.Tjס2&/V2T$ȼw!.=4ت;5k=ʽJr]1Lt$Ҫ;V<1]@{Tfapxgbq8B׮ZBMy@ .(fr`^TtCW(E)p$ qg__ !1Mq9Ϝ}٥m,wEV9CDW,ڀ3MJњHE 0<'_i& kEJ4υ Z[1oIFrα>%u ofš=!.۠968 Gi&a90_Gwbhl,<[̈z x:߅{3O\PJ.uݓ@֏j7- .|,c}|Kv<鲅OG0{ y2V0박yQ9L1xXH+p FP tASI/Zc^ mEˠ,  L,=4nO`Qr]dw?yߜEBR8 nP0{oh_@D|˸~h "6Č.v%ZlVѵڡ!nnז~b0rR QP\zdk.u֔&n/0H\zɡqQ4cxE~\Ha0};x Yl>XY(:͜*]Qaɱ%oܡ d?P\&B)ze(":LYmf ;U/T|Y;I( mRzCQEB$|-ǃ&?ەiH=C)gܣ*mW2>5)`3'(FCTF|/N6LS}@y[羧ᱮ1\\V6ͨӀF\SS&̹~m=Y[9K/D}GCʘMnմ *-X&tdպ& K| ;ͺġzցt=MȂgkg# s3cS\?a9KSpɋ8>ᓘ|G&"}Npea] $R@Zܳk0c62S["z7 __X2t0`pi46-Ql_N_0 j "Mmh|.V>Oi5>T5*UVW،vYpY*R~4܋N b¨ ougSNEA Sܩ-Ai<_lACMg㢑D}N:y'UcSvB# Q P /' WP̵cIT91DZI@@:GnæUON̳\ xI{~椺4M@SbkC%kLz؀0ZRJRƎc zw7.f)&pFG·TNaw&<*QEÇۤnj[Ⅳ(F^ ߾̞n58~j\$o\V@cxnM c H9HQ71̤|g4z;=dcyR6—!Rxy&'Q/A71Ai:̄ČPh'}Ϥ"Cu Y_2%w遵C8‚lV{twR!5Csz' oG킬FmZ=Q! h81-NX^L`y^vR& ,\i,OwBEmY؋YhvI2(>|l֯HڤFſ>}H8@%K(wy`%*lGGyF@bƭE=Qew?,&jU}*pސ;'%э!u`kYvܖGa*Yzjy-;4ruϚ`-G jt*)豐->1j1];nt`)j9ks O5z/ud~厪n.U󖪾Dρ wi52j󕉾T '`}<{ifxveo#.e9a-1EFĿm>xԮ(dP&Kq θF}yr%l> vVl7F&u~H͞LjUL;Ro^\7ݦSۗ#߾zVo:)@,Y=aaRe)OmmTTe.J/"" L$Uzjh,ToLn**r9֛J5 9[ W:Q+%+ [p] =źM!#Ԭ7L}M US]iLIp+hX$ܤϙ?04@`䎟qi bizܚ)$5t Wo$EJbnd㰘i} p8`lk|AqCYUߘxyI~24_|@RJyzhnq|1[AGŅ[B/0MHeR\;:xo ~p{_֑oD@=U?+ K75x^TM5Nzy&sFk`3 m*D[M1 TdejFyԳg#b8nj 6hZIbvDF\B]*> )>ҺFRBݹp!5뾁1G3{)?C3ǤM9 %$)4y ,B.Ժwxwȝzg.3 B`,[ Vgd?ZKzO9h}hQvIv;FL]й'vhPJ)Pbe;C2x4v}sϗ5݉T w;c8qc/6gu<;ޔ"Bw$/ѳz؉f&Qb*wj{zGuOBh1]|J2V'ϣQt GyrxumԪⰶ(QGm0Gan~ .ӛx v)ŁH䭔Ӊom*19ZBr|NhQW+Xwu ތo}H𡂧hnJ<ȏ|/bu`E6z_ gE擊׵zQ$UsgOġƠ&B~>{69owt=9EQlu=R%K*Lѷĵ ڼ8TJ7us˜1Gݲ7W u4 Zw[7rDJ (~agQ4 .[^\@rz+{ m2"*փҵlR>l X*3,Wh (y=|(8.rc dȧD r3M>ˏTP|QBXXqv2R³Kx<&0l{׏ CάCq BW{%?DW DݳTp!Z\\Ib$&$ h{C[Mόd⣍%,mԍ>CCW~(TBg.XGf\8{ML:0+q=/ ʛ?g/E@eaHgxf҂\rP ĝGZEs.nP# Fsv"z\BMa[/f*~S$QrO V'r ZLd%o[rNe>QCj7يXՑԂvٶXԩ,|&յ Okƹf18q/WS zɓ 떣%&Ǯ#5aAerfKP.!uG>14 ԗ~1n)]c,Vf-CԧB8wf!SasMͤ=T- b,ؓn!'RgRkÝhЊpAUʘW!W-ڍi.T[ؿ!ۍ0,~y,P>%A="'U އWߎStey&;#ly|q.aHqC 6ZaS9^edIE5T.8=KmwI7?aa8h8`G#cw'*E^4b R˔:%e6Z*FΔnp1^ۼvN^[Z wX¯tr>-Ҍh+wWyaeo\#ñrXIܙHbtr,GlDf)j5_o@/MCe&=Z@n vQ\ ,Pv2QGPϊ? ܋fUP`̤Q})#YvhS*g#K >d%Ą x<)vK]ܫ.aCM|JXF^X7;!'XnJr0L=m ~O3Ҩ%ҵ.,\s1kf% U 6$\0:|t+0(UҕmYC=i7gXk䀕DW`WB$vFBMrzX(cp`DLz6`݁Z߭j;%SKXUb0һ#[.#c !~ 3X4j}N1Ơyt캘~iP0A:-ߠP.c̛AC:e 4?FEA4݃g̘~JT$kgm6"Z>KUL=,|8{7t&'0=qDž"C>)`HKy`+:$prCzs ] iil/b읉^npu'@U,!c#b_ ;ylC' &ɚ=.ɾ! ~|-ҽOwx|4)}Qm:n@8y΁w5>T t @|Ö)pvTqxU#֤f is?knj- M9f\~n]>L4*1  jvI" q@\^=>~ґh-[8sti¼ Mɵl$P%1ΉCV?ЛfٛŖ҃1m]Z ƕ4fP,$x5;˱[Է{y/jh2 k"J iKHJ8Zv⣤bML8ܼJ-Qi2s&Gq6Hv"ǯM٣:elsb@ش0Rcv\6l,s-F5T*@|a[_bQTav>5f+b\y!OJjIMF-pl' *Rhw.!XX؄o k7J_zHT:Z}"Uaj 60{( *Ym`8Fi72AjjYʂRYoqN6 [ ,. E^Q)wֽ@z; $k㰠ʆT7Z`|nfpaτeYԡص?W!#Nബhhj=ѽ)u^_?i `J=b2#(U495,;Ut}ўR@|}_GVpDZ6)k/Jf$sQSgy{*y"O{"F!^X`7ԠZP:ԯ ǸJSN9HmjUyS2QtJx 0D<6&&۫Q!XE$ q%#iRfp:䏊N'//V @MC<[T,!كIyKik0:OX) :ýE֍s ~sHD$:#CG,'+Qce~N@^;8n,l`9Vp̘$Ge oiI#n)zbBB0qh{Δ|>`2"0Jݙ3~.Z)2⠌s,]Zz^#KlX #$±|HH e£8'ݼ2Z(6IiO!J x%[pmkX3^)ax A cj**Is=}AL;~1(IvcK+W%.K wq4r,ٹ ( dʑ0:dfJBյm)( y3߿\rinMзl2:{3*fz#s\Fu0T7.2B 9>6ϦvtsBw$A:Y}+19wa ˪7l9o]o7K/H{k#‘vH=x貣B\lMeKkV#='wM3Rrt9я }%c?a ٶ`"րoӇ̝6[FKm|xI;FhY'&Y Ar #lߥɐ.ȏ od=7QUoDu)Y<ہa\W*mBk/푴yJiL5Oϛ&`K8n5Ehsٗzl5o# L.vRXCWy6mzocH[az"Qq]㬓{`Iꁧ0vHL-gp*x!dT`eʿp^Z\2䭂x(5Sc`lwWR*b||,Yl#M}`:I0#_R `]j~E.6F<Bl BjP74ɰFi2X?Im; E U[Rdb n51Igf(Ӻ+I0Eиg "m$_m5N҅zAdNiKաT+6/ bhT#dkz&gN,x{yf$V DT^x` Bm+ UԨw;2T0I;lh,9.R'ҀG|/Q{s\_m )7(/\8avwKƃfm YgO|r{"^~i>!īQ[[4를UC[׭d-$[lgVf"z:F2 V,0`l^[|.fҤYfϽŵLr}L6'$7wvkyL$+[w}'Bl]^&ROX|V2`+6- Q.aQũ3AtqH#̴AqFW qI-5L=+>fIڋE(KF}5r9޵6A!pFXF {5zкR/ۙMwU"4 !u<&$KMc|χBj+5惍0=f{l!qpڄvG"u]HcAyj2J_Ao1; W MZ5llfr@tN"8M::OBNaih{bjõV͜} O{ǞUi[ad⫐SF:-:>}j `8e'Ro%_ItJ%DFnڪ(M3?E(՜KrytjxUu54IDW}=S#mv#w *6[Q6|׭57?>OB$Xz|.J#V rA3b܍uak .'ROxH dZgwJf̖h)2K:*Du(fp7q[]'RX_{Dht W^>U~T ϳCOZߎj|N_MxqO?C ,={!Ȁ{ t?~|zet>WuE#3B#Kx/?\3Y9a b.Vk~1$U3i LEcHťPجW۲c*l?؎7aP(LU'Kޓmޓ1 =dJycr$Z8n#?.h$׭f&5第NpϝOKMzEqOa-$YwATUYsU= !-(83B%gMVs*e:{K!1 t_v.`srtapx}@WK|C +~(4Xld KouC%G0GrZ48Ese((6yy7d|6pܙ ;GT!ѮسO, 1MÏypN-BLr,IJS‚tQLf4"P&z\RdtDe2zci NsI_otNʭեQ!nIQ5MfDIs ƕ $ˑDbyFʑ.ac&F+" AavEZ< e->N @N:^/pBD{GwT;̮syXz2n tO0=vWѬdE,HC֑@N ~ӈm{V_W\׸~'fBW>x5*`Ut|%|?WTTSQ !]X9fB1ڧh{A]1\8Z V.Jm\,#!D5qatY 'YoB{-@ta).\Ė`$G`Ю𓅢[^CZ^E(sP#?`9; 8kKTnvBe.wV|*{T1NL>[A%VJ'cl}TM?#'c?bqyP_|ie?aYnJhO ڍ8СΤ~v@;HA*k.<cإ3']$8h-JuO(g+*PA{ыEV{0fGYm56!1Hiwwjfj*)ǥ#BI[r<$+MUr% b,-!t% <9ϔE.D{2X}cbΨ7-IFܓ ci3C#thJӛӁ3ЉHǩ?J:cE-" s}WLZAM#?" ;m® ժsnLS؍bB4l !d$#)A]߉3\L-4^Z]ہ7ObM/nŘ{'# W.H)j HvNܤRqٮ,/] w)}NT<rmD7W# 6t5e|ijգ%юNRά.MԯyLBu&0ڤ䰩J*+ONC)[S臊*A}'<;kACYb>r}Ȩ!R6[Q;y?[֢U՞/ #7N&,Ey׋irU@grJq`ԶΰљIIH RVsJ٣RXrXKط)('Bϕpy M}Mch4S$ݶu9.bs"nhp;o0~|Mw^qVEX~4P7f\^$Va1dPExnz#XPSKG̰fQhx_8=s,XW,Z>M=ΩHh˜40SYL0M+TQИAiqD&Ibc|skB?fY.ݙG+OyY-B- g/aZKHNAcIIo79H~qϮ#]WAŴ9h.\A!̟gk&8>a3x g'$qo9WA+yh:`§ΘIô8:bXk$tS=1B8aUW8j$^f<#Y*TWq*W |r-'sY9%'IA`My%/%҆dzBthXBW7|= )pmהּ԰]&Y>u2Qlșwfs4-4!1!6MFf`RϷN&$F'lSʒfEmWj#$Ʉ۽CAߘ vh)S6m 0=c7je n.Q_B1t$l C@hNz63N;&jȩP7_l?Yz*XRBmU;NW֒\Iݒ&eҷ.XX/ٮ}1|m2m]߸HI>,.4Pxv?]t|qX]Aj >=ctK!9.$0fsk+X/6$5ZFjQ3ܚ=DH4#]2fE,r\e73tÈrEq8 Iq{-Y:s_4r9f1ڳs8&$C7nH 8 Me?_FXҎޝtsխw."Z60(XaYV2;XS!3:ZMwA2]Gp2R#ƍ`pg(e<#Sd*ػ;ɸ䢀//lrqU GV-MM~?:;jk$m2Fj o&̞)$PK7T+FqtT jLG)g0:v2wNk2FTeiiR l__ٟSLgZ1Vpl~[{1u`rLg,WqQ.REXo{lj]ɝcj!s[=T! ZڭiJHf\KƠ 3?;=v~.I_H6s4ȫd,^Gɾ}=UduUJNZZx3ϞW6+خy02:@xGJ ,؍f?rDU KX@c6a=kֳ{ 1h\%zܢφ6.I4 C {Yn3Э}C#]m_Z5"A+3Jw/na, njC]wBvbV-V`Ztyǥh/f3#&~ Yn̊{q(D?L\.+Cb^2ˌعK|['bAy$6&#}R Nx^e 8am~:ُ7! Wq^fl1Q,{>!m y7$~KV'!O@ /dnj(8$+ ]K^jRӍQ?(Z\J`Vwep|czU.:t]5?Kj-SIQ,yJo՛g7RF+g >r3Eo[.ׇƶesi=o =2"#M"%rmI0T>UF9=W:Jgy`st0ħU;\ܾ ݉qi/2o l9Qb?xq9!)Qjѭkoe2:s!á{Von30 5V^,G=?;IĠ+vf\K`U9sRJ{1ؓBg߽~_*6I|RIH񋲭Ӟ˩F|!#9^dwD8[E/#LiVx tx/KU$TODИ>:xu] "wu˥A!$kɓC*k$w۩8=6ul~ /cu]Ûm9ooDFUUGb)'|N(`{tr լ5U0]s `] #OWi屙\+  =JA7JZ rE8IΡcF@g9o ,Tеdb/tiLDTJyoXJ"SMHQ|YH%ޖz0}85[O]Eq@ԹFsō%m) t--+jggh?ڨR^;V#:&Ѥ:̈́kmz5ʵٟ4uWLT]e6 j=^]եAy>-*cѠ;;/8BeB~idP[wuQyx-Ce \ף;-F/g$xp̻@>/ v .eWI~ _գj< C yLͫ6B{b IDE\pҊ' ʬ^l$!1 ؄hև:^ǡkO5'y!uIêr[I1|K*0f3[*mnz%zdpwW5yOtyEq4CS{mAqU_l2T13%mn~i5#9t^tl~GTx `>8wIJpW_7p]HOCjZƼ]w~8cV Z=/'o?:U[`_}Gaq^`ֶLoIvHp-Fj4sgd#SY7ԋti"!sc]EUߒ]qY/'L3%0 vJ6 ɹ?bf/=o+)xz\e2^3%{`z _σ?tfmDyi[u >w`?rHEnkToZ9\1^6re/TMxƘxg\/_6`3ix9z@GKR@XIPn?%9 :TH`] 9ZnLyV^rzXu~Q3k_J¶‡KTY~AX"g@.U {O 6m-QQ"(~`.dW)o<=5[PAqߑPCr?,hnVNN I`k{Ghs |xM#J1l}l3 Ż֍G[K[࿪Ϫu}@lg4lܦҥ 5+A.]=8F^16Uq.Vw?JZ5=8VwEZ8Pak&v-.,{Cz-eu zk Dg:;;@F$Y0E6ӚJx޴+ " n؂smP%p,A7g <{m5Ԓ_,(iQΝ5U67(,"d$eIɴÙo.j,gN3 K鐐8ʢǡִ^)}hfiؓwt,9"?7 p iDZPLekF >[`7 #N8\GT 4-Q*ԟ޲`hQ1:Du`&kLaѯ]C2UhXlndjlIhTP/كv1j fbX9oF!~Ku }w|\&3bY6AwB"L19zV[&\]8lseٝc s`_2Ka ?e)6p= yfTRb8v0H+S'L]RuhajⰠ7D=e2ե)9|lw4p!C. !J;Rm 7 ZUocR 7o@͌hYAS*y_[c }(.ư!q%2 c{LRf9BHPYḡ;:vRa@d. R}%8>{!9@JhlZlLtr;MJ%x7f6޺DCc!VX8.B/FL( sSNzwbccKCXV@9ɪr{FީV]x"GUy&iIgBުdnh?66+TT~ut/WN9&FR2Ihgsyz*؃Kc8Eؼc5sbWDfZhWQ#a-B~mI GiW %eQ &&ΓU'I٥l ^W9?βjH,6٭Z{ZQp2:Ȅb[x'n7ȸold%v‰M|ON]ȝʫ:T/ 4ә=[6  y I}.]RxpK8_'n CX?PH dCs)?޻MY>Q]Olis=W \[n [*;tr䐹]b 3g&V| j4pL{s4Ce5U$bL"dm,Y>'0ƀ>=YZ@b`ՓX6^c 53zX:ny>qgȽ()  0W=}mi5v2UGv ),6otN.0. K޼6[1ij55g  y001[`(%aNKk#*i^ܟc $Kɩ|JGxJeZ)* T½o-Ԡl5Ha]WV j[/ 9x 0QSʑvuKhZ̓st=5*LՒ6M[ qCtC$`!1}ن)Zy\Jv^ ܰI-¿ CrnjHҵRCvJWe2rd)=s^oI98's=28|`!trQ T4Y2%yIk竌F_A|? ~j|#Hm íN:).![NHWKz wy}тtb+,9e _yx(;T$ͼE{T8|FIȮllF>3JsіOGꕷ{w.3 ߳ FuW8}X`C9)2/"#k{yL#S&]I$"ݽ(z9ʮiRl#X+CG|OvU][VƮ\P< TXܳh~# 7ebNJ0 6iQʅw ꓮ]u15F=YyN<[WaX`eD/=` VSAQS!lȱ8ʏyh9MU3tA+ZuCϜj)ŃGE8;y"OI퉆on-2^υX E@VͤI;y[nbaa%H`gW"\Ixʾ/.~J¢hʧK<*Pc/fŤ1IG njX,i_oF"Yʾ"e(ORq_W3`u 䒅@>>5Z}f׉_%pXzx 0U.͇ l)z;'D ྲྀ?.pux2^!ĿRB7d/4x BY4]Cx!kIN87qT2+9ZY+#fXH~aNXIi&N܃a's "L~\wSM2ew`6%8k~ژ|ʛ̆kS []zL:LpghQt'II[HF VSN_$s!mNJ2 =XDbHtC&۬қ`Nئwq9w6c*Өekw>OR\ p)^; :EdL3.ny%d1]T%%_"(z|a!N}jxLiڏML^"gFJfwb1x-DyI|$'NZUSմw-"˥q//XXРpc HYrs+ 1Zjw {(#k: Xi >H{uy؝4mn{JzͿ\ad28J6䷻M+Y}1loZvDtiq@ؘ40OSOwl?ǚͤ `)Ȧq"CC//5,qy ϶f 1MlY!W!N5HeG@E#܇x9*0^2^+ 8HڙZ@nzGKW<ş![.b Vn픶[,`1kk /P8~DaHjh>Χm,DWR 7լkˬnNMغGf,[3sPf.z Lf/Jx8mDfrHF P%7o?mgܢ%|̒*?cRR^JhӸcvT"S10j|#[C^.\7|\][?}#Q!'\IXjt)55 k!Z# iGIqD-U:H)6<30ƾJ7Jj*i&MҶ7`9¥O!&3:JG :I⎔'^$g,i<'j?3۰OKIq̬,7/y/aB(!N-ÚKX585=6yoާK>(c`uoퟍZ'#v^9&[:w,4uGe纬֩|E (-Tq_PWt`瀅넸l7D fɒAeuٯ wmiC0J ,|&W4]o݁hj`BCFbk-VS[jg akhia2]}[wgC%(#c?khCtY'pj+ ]3 ^׭ =xP2ιvN d744tnm!2%acK1%; ޅk[^<.UlŘ*i.| UtI1EBo2 dv϶izxl |@{QUUoǠjUG[^l"*"Hu['{qM8A6[;] :jy@٭nJ.=/*SZ:N0v#oyLpL~(Gd}Ѿn.]3IoSIni527,ۧx&ݲ6A̲K{74SfÆ(;8woy Aisgz:`݊ naR+u?"NYο0 aM;;`(-U9v:7b2gijNֻq12H"C+Z `~<A.gI=_- wH&{ yNk,_!wM='ɏZ!AI%$ U *Kwΰ_f0'2_H\Y@eN@YvHCn@sHdrϻ)P LLhN{ rg37( "`c^d-$P{Z[y1iHK*RPLUo,p.0>.']U0jM t5* N i;"8C6GFv:Xii;ܬ2 f5N0CCz[q9͙,ЁQ! 9E \zkMXXBTh p2}D|'5*˚yYYMitܖ~Hy f<N7h jIRA6ӓ[ĩ;f]./ hy(N)Fbd; }&c4|uӛŻq ǃ\hQfk''mUjb@V W>p"osq%]-DTLsrRR !;e7ܕ>GW $P&EqzRfiwK5D:nTw:$i'OG.ce?  ih(sրJ&ي/G0sIj7X+^\UsKͻjkKFH(0QX2_ Eq!-S e% Z29Ɍ'}oiTbJS['Lo s -}o4 t5/?2Ϟc6{Q~fm,Gh-P%ݜ&#ʄ»1@2Ų̻6kEL'9)d}Wjg! l|ibqdmg~Pfi=7 C5 ݘgMւ}دBE;97,H3ZQH-  gD_4#8J>/9nٻ:]Mg' Yϻa}oON ΄%;< ZyHILO@S$ k|}NzK*pU %u=څ3h7 W\%kjH ·m鮅t)r5scHZ_#l{f H1GCɻ@W> ?JUl\R8 M`EX΁V}xq}*#L MŃ ':; /!Klʄ2Q_5$AGrN7hdJt7J ߚB`dRnt_j"3=,;n= |(T™*qY QYFFn02ۭM`4KcG騈˓VP⅋1/.SZ lSh68:hKݏme?ʸ#jM[ )f)kJ_n*?!.Tז =nr/I.i. VXʩ2J oқ61QXiC!+/5[NHj 3ũr3Om\ fP+\s韙hsEʉTסj̐|e7 rn0zI:+/c|oG]O9i3/xboflH=FoI=3, n.bR7SYyXC|[-͡T{@AD3֮h0ӶQ`< g`0!jomָX9H*GnpR߾B8tN` )ԏ!tKP9oͪاIS1ԹRpj uHeKeʀTM )GLS./\uudI~3H^-/RJA;2!{45YKX{>&FSq=i=IAFl. :HV KgN5J/-}9hs{Pḭ`Fx''ʴp:ָ| KMOs z<-gj}jTBD]pt^3?}:[ep^*:jḫІL -%cPiyF#|wpS i*1V;W=Fj8JYd6!V*N SLOt[:g?Tcl_GrUO؈ "JǡZt6u~A$%ĞA?3moۭ$uHR—xXb3đbhF+q# 8&dҕ$$WihhF?MS# XIQ%[kUͰsG²`8;#?E>OhhHU$ÙIu{c}*A"yF306\ab$Zj̻yj͈u|>#lE`C#0jQzi vnևR~cI^ߪc>ǹ`b W`YRQUX(ߍF[źR'<|j۷iap(:@`wP4cR=!s {9)7.;:PV*G&jlgӮx}ie1g}ʗfqmN\:-q}yabd&Μ/qةH7GZŪo,Dtp<)r y3If|mޜcuW.-,!?&"MV^ѵ}p k< !Cg7^ 7 7M6H4.mQZ)/̥✒Ţl)g/ɟF !5HO\: X5 Ł7(7j.D"I^Gt=}Mf`zCq:1mEp2&ԳzZX)k2= LD5* :j _/wKtyy^>JB89 Z48$Pr,W0= #(1o'fv;O})#\ۍ_GRPDk, 'M%$CF-eCxv}l9 sˣ ah0:Yb n%I-V'Gt/fL%BB]ILr >?6 b|?OUX] EmJQRA9^kva= rt#l6gND0yOHl;h_e:miR}ONϺbJ,! VQ&e(Ͷ"`(?. 2KzqͶfqP{Ui5P :;a~x}MPȇ^K`7C9䢓L`q$8&c.5 2]:`rK+RW G=ZS3jKk>v|oE~.DH'X0}+״ U@hg*j"?H̒ iXp D`;?pqC,@ A%n)d&QN9& &B*UD -@x4*wԘ:{rvk4ᐽ\Dq'yj; )ŏT%%K#Zd 빖 fڞLL C/zj,#[6CD,?4NcX$OPxQsڅUϯlO$*.}7a핕gf?S9bvkfTTn TlOSUlO! ነroĆ0*=ݼ%5,t0ѮiL|!:nLS%&/*mlr$ OEyeT%b0-;Ne|&տu@>Ogul0!Md]JO`@ kْߟXVJ=p_״T˼-g1!g4KAXz0Rc QŇĿ;eꕟsI.&;mYYzS2:".}VVԪ ~]@f$):(n3dit&n/o)wbQMifG٩&A?Aqֿ6Spr"7)±ϰL5Un;%!a}Wb~O"| ~̐[}"3F. +tc3B»g`2ԩ*ҴpS1Ԏ죳\,71S6ZIe5 K7uA=wۍCXZqdBp۴%ʶ3 h]ZyIq(PjvMƍ 3Zꬒkuj{e27>b>Yd=\ =Ю@w )c)1(!/^3&?EވȦd&QI2!8(9ېByP5t!?^۷К5oEu`D9lAksnŕ8ױNr k7?+IZUjfDoQgzUHڪ:{NK% (kVIs 9QLO_`dImX0O){*;LB۠STwқ w<ĉh*~(W-߿gW#@d]a̹tvRiy%>2AI3t{=Ϥ%gU߅'4QŒ%,1gn 'dcjc i:}A 6&dVبhZx¶'!y(1FӄXq762-l;o*4`F1doG;.`Ⱥpsyhނ\1}KPMy W g%kWJPQ\TP Up"3/qWrBW,k҃~>Ż^q%{+|^q]E @ ͂#?V+1ݐ  ~Q2;R=96gyb&g/U"(|ӀB`кɯahKc44YF!rPqgٗȯﲇL')xA8J$\\ȝg%)M D.gttM扵 ߭83Cׯ L!Ȗe,.2߭uNլTǓjA(ȁ3{]CQi%ĆRb"L d sg gq$bًX[El1ѥ@$r67#}nEIdH ö;:F#U) N#pX }/zZsA4t]t !{4&J Q-^O@5v/'4~Ň}Eli?[%cJ1?rj:kvJov#A~z"tT]"7uH;XY9֭hIA·I[5*N1!kE~1ſ<Ři4)EU?XFu, ^½3gS<.W̯+Qu˰G{m-T %|^l+uW 9uy {eE2C||}{>Dz70WI Nk4}% s<`;;6T$T߲T,۳o*R*fy3pMz(|l  5@ym;Jq ;D->r:Ggl@$>pÅ7W=P 1ǻT+^}ɱ1v/mʋmN(+$:[oqa®w'ӧ0v|~,IMA I<ʩy:c/Vv*u5ٶOCH^kĿ34#O{5O;q€ GP,K ovl΋~Qʳu#TV2>-hk{L4c҂*H7^^,5z.pf {oItg߰/8 ےi`z@ V92Y YSg^dYJ-Cîu]&y8 ٣@UҾE4'0@Ϲšq\B}Rˉ԰EEGGJKr`\8B/nH,ظ֚e{5/9=NjjZ˕KB!p1nfdi<DۻMGa݀bרzcxsףz |aLQG1|׀]ufRf+'1J&c^(R#esKbb 1jSGvK^e](4"`Y3x}7KfGbQ5Ppnwp 7h7Ti~Pf0!-i4? )9tAC*عfٱڸ0ǶPz0 S;ؐ͢5+E " CE)HX1V 60c< &W蝷PQzPE M~=y-/G?gu(u ml(!&;Ӂݡ\Nw h-M3ToCYؚeFra^Sy@k3@*bbxǭ[][qc}.ιLETarAr' Uk9w/HOZ\[ב #Vak2߶Tף .G{搜ڢ Dbt)0 :aʮIsD|@#ˋ79=cz(dh] km']9D #9!HoEdF>Cɩ-Qz/O܆c 14yoE6SxS[N4cEH ,'NHt%F.X6mYp߶LI^=~(h'xtZZ dT$D: HYWp6Ic\0~nu 5M+Dڑ>V.Rv /ilo,[T|QNss5PU["3ltF騜em"Za}HvjĂ. EPU ϥY+qZc;S]/JQ{9=|7br p T{J]iUim= nO=rݞb$^0AP JdR_V֋g| S빛(Iw:Ώ_V;FNw3ҩu$/hS3">Na7BDw$EޱTAjvOlz3/W"Y O;O'J˾);'?ZaZbVD^$D/H"鰙K7j'Bj{^1r`6I֟V7Wɍ-P"*~nwMbR7w7:u :R+dd<0T9N|V;BXi7xx|9F:@FKA0;0ݏס_O#ѣny"7tiWwT$@>Lbnd5UÉ]^cug|f 27My;P0i$A:0AtnZ ;" }mvv|3zص1wFC.?ւ ۠n?< RZ<%]$%6n˰x|h>Ӥ4GpktHO\/6ڭlbF%x\Ā2 K3_N=鏋4TܖZQY Dї ҰN&U.#5W?( qo+=Efُ<tQRo;혠\=T@ø7%PESݯL ]*Τr*S ?X`3x\\taq>},?o77](w)S& ݇[#-Jd9ڬ*RG|w'ˁNtr& Ț͋!L?ﲼJ }_msJJ?_ShʏTEZ!RX{"@,,AM =燏Gǩf4YYe6=7ԥKsTXҲ~_ *PΘEQi%ۓ%sĨ8TOMj-[ִr uH'mTڝey8> Stf5?+DrE(URP t.7Idlgӵx hcģ6yMI0O+ҙf_`n$ 2˗`]?ؽwNv,CrίiaImWѱ;=韘A@|8 %[Bfű Web0U Cr}d)+7h[r  ~^ס.Lu'NWj۵Ks;d==d;+tsL['qA&H'!>|o6`ʑ%|}_C*Eބkfdő/QX8QZEb3S?DW5 We{k!%6 3A=ڳqa.KSq',\DbiK}&M|Ӽ5T!?^B3j Bby1y}c?Cݖ˨ ho:>RPǥBd$s4݅x`@eOhλhG0ﶪϒ#rœHQW`ظG4X. 2cWr+iFvk 9u -N:t8ovb.)9r_KT o@ cqɫbX20>7/NuJ+_6FC DW?wKObx9D/w ̫GԌPf7ir: KUk~()!\Q*[~S{bk7C؆LJlvK,9 ]{} ݀\DۊPG-#~M'%=⊚`عuIk8B64Isdʋ?}4 MZ2[X9խ%9 0sVKh0wqL},UP\|[?2,4;7B[^:Td79!+kE=2%[VjNxQ0FLP(z"ifNƕ=tSIgܶF4!E{gA?v9#q'lzũ e2\5;ނ;xC祜!(#J"SrIM:s @Orm(Ι}8OTt0=)xH_dѵL넴(s-14ηL%poyxZ̹@GG;W­Ebe AG?ĭE;Co6t[ܫ4aW}^N?S' Ty0J4B 7ɐۡߨEZ&q̖i1$#-fɎqїiS'}[oF; ԍq@ D.Aݾ. (ъ=Ak] kCFoꖮg``7(5=Eg> W@ItQ~Ar#7}ӒNxOSPRFQ"ϢiZ!iڙ&즮hL)h* EiӋ/=̰\ T3ybxXLkO@O4ҿeEӇ0M'`1t2=SZNTHX#3?%I EYKE0'>eJ(r*8eP6DZǜ" h cp:z,ľl%i6M"1ORPs6PH瞾X((:BDr_drr9=%+2]7Z>,QU u3sԀA*#V%}etts{`Lr_,* :1Z.ϩm%B}$k,߮u*q=D=)Xb'>cٝM} Es6*w1`oa)ο @ţD<{ĩ0xޭ+`Z ܂]>R_B8Cx#V]"^Ɏnjxh*Pws/ Jr~ݙ/v@}^+K +kZ _W +*5ƻBE/,/}h|Doy_Av[e(ܾ Kh T[@%S#lb)PZǘoLF$*JVk9w\;N((^*DU[f;qBhEm:$S쬰5ajwVѩel3Q;YR QC ]) =0禢B;kH96}C65Ӓ<8e[Gڴc/`C [wUSFdPU]<@ir+䞏R YoMˍhEt]$~`Rt!y8~tl[䬞(y*v)eBt{?|b 45}*Mtz@<1vPJ3dTaCۙc/@uB$L5Dt_Qhp&LÈaO>e%{lJ۰ 0̢tPor--t;_~ >quS% L>m1b_SUz1vpGvZڗgu56kl}xNl# Ћ꠯کu,o~7=f.\[:WغCQ[_5}NCN,DbZs>?̎D)OYb$uD . =E6Y1ڀ콹v 7_`Ĺ蟀;d0L|HDOE6 D5lڶW*;ÿ7wwV݆)5x'I2S?5|,'^2l#HdGt;!wkT P7aY+< ZQ*SUNܩj^oXBWo|+lm1ηHOI|qDG~ͥP94>֓a1bp 8u}ndO~qcd -}|iFھ6c#%++Jr:E .xUwW?.t"`=&ZŽk5O"epZ궦KIcw6DJ\i*j7W;^LC}|lPC}['J rt!JwU? KS8盉mZx,rSQx%׃@ 5죞?F%zAiHNf=_rDCU u oBVfm[ LS5Nx9h!zg& s{(Ef ^^I-APvЫY=@=|;0q(IAQ+DCK7JG.> v2_ml+ < %H$FXì> <<+8%Izn CAoyŃq3"]y5>6ls8X$Z4Yy\cO,%5'q TشtE֭D޸}Ԅ%m< ?/KrӝbH# ލ~Oq^G\ُ3G f}hXj ~ґ=zH4+ pz&\zB`FZX$(oθk1ܾK1)$l]Ap?١V(MD>h2:F-&SzHL>+nў|){~r/ pI #~r*Y>H$ X֧ꪹXc,N]l]}yEq Kz7y^ˑJRӰS귒3YU@a4&6=ȁ'ى2uOt n*)Ƥ 1%4𾚻F4s:g= /<) M" 1c~_m#Q(.it&! =!p0K[c9R śĥ_9RTnwpF2U{+zΓmkͨw*;#L9xa"b^Uz+ k .|fpj@ X裏gK/S`U9COO^tc:zA8Impapt.3  /*R\lAw !a5iS?jFZ/U+Eɼ}r$u<ɟEqPA8Y-7jG*2I6uS>W3* &~l;Cqz=bmXV}#rntK@{1U_C!> c/g%a.<"Cː"W޳:N}~8ne@>C JFً8D?E8^D\ΤV֣w]׸l+ml2hּ265Wj}==i~M$yngG{>e9`-ZrJx= YQ,y&.ⴝ݉ijFEL@*4gIͰ5/G{SlPmx ǼMjŹ+Tc/UrY_zui7u{ rI;5Do.Ȓ$M7XC"REƠ[W;a[AV!]0qM3Ymqqzp>:Y$M]aBR%H0ѡk\%V톄iI+2rq.|ޥ~iϡIvWPG@,`f`MMU$,/|q3~׼QN5݈iZ62%w7p 'yCY߿Cb[sOm"$8g'6ˍ%\]*G(`7e(eeunłdիKNe3L\3=I:)Vf[,R$e]&ƛ4/[}6t5TfzpI@ƐRCDCk*kzCSm@0QMk-_I2daj=m/oT@$$à 9-[W'$(*.u F[r^@dkQ}g`&Xn.3 чtkbʔ*zN"Z"WRZ⹉՜G` '`*W'$ZH)#4 [n 7i&e?>m}KAc=W6Ǯ(N+T* ,BS՗YEQ/+FE+@#. |G;i\K^dҰS8>C!8),VQϧ^,U &Vk -=uzn %PO4W5P^3%X8O'^Db*/z2OHe8hR5 THzc&2ah D&+3= cٍ|Uy+U76#4;l)UNP 35'։警r1\J&\\jyptU½lВ`^3&)^E&҇1~_'k#r.YcG ȞͿPr/ S'0fa+de1<ɝc3pKkAͧlȞ {[tE@!1D|*V6R3Ipԍ_G"ۆ~7z^ë AqOXC^*2y/&GÖmQA>No>rܥlz+ Ncumq=[Ldn79'`G hjVe}nsv0\9E>o>O;*PN=4]q|PM~ 7"w XîK (>כֿwuaeJmή|kдo*/\"rtµ b룯,/VKY$PuSdy~G Q%O ɯ[Ge~CBqbB >:P0LVZ'I&y-MMHm,3>]wq]YFB39iI]=?AyhζMξ%h8b 8+qUEd80{:Tk\%_z;,d"BoCGE;6zj7C2QPqQ ڸal0Pt%ӜB7#Xe;MP;O[T|*d+׸s j1?8_QS;v XG2UNiv ̆J\T beMQp q#IZ\H<9qVbyv̓w.3|R}]5;OQﳋ>qT;_+vx/]vps i`}}:kI1ac=t+[nPEHo#(1];JA#*ӑUQ|2FVy!?d<>+?wQmibT}`76/ a/ޔ8`rYp2-} uVgbϚVXL#1Tjt ]W(AG2]#}&G`Ls9( v@c Z_N:} !UX5 5/X^qjH".g@vӏ ҟv}4ât/f/8!K2L.&7cTqu -Cm,* up'ud R37LEaJV>U&:{Bbjnğ`}Cb V0dA\bgU۹Oa{Lnq`Gaf)spE3:T0o\ZZ x\~*Sޗ#N@d|v')`%9')δ3D;sG̋acX`;/NsP B*!UqLބ~3 =8&bԏ%g#ˆȅ)%\C}ʆHL[LV i?2P>2\ՙ^4fвck7!&ը0[vaCeMٕ# |Q_,}(]/DKNQrb봳1bSPl2nR?!]}ŝY/bR|o\PЅ.#5aA0!fDHP{g`!K  fBYF}s~L[5:1lmG Ȧ21 jH |f+B0wEqՐY Jз"(SwU&_ &jE \s 1p"8% [{&V lcponfhH ` 3I,1`;+o%Kɋ_By~enY-cou?MHR<ŘhO*Qv pY X%PZ$ފ(1|AUruD*N?ڥۮ;m&&6!/m`BiO_OzXt?:⨄:bjW|J!87S=qc["}HT#! -#͇Y0-ltOjR&hJ)ddž<e'z}i!JK93%+ΠV? /> Dnse-DԱ唬Qd;};5i=0P)fh`׿ogS̻.Sru@ ,l=]0856a,7~(VsqhfrV)*oKTu7#H&=j De5"5: pT0!XеOm/D"Et7i٠B0'u]ե3H c"ȕ"dF@A je#< k_&T h.o@X@dZtR,uE\ЃsrۇہdG0J8F`T@,KQ(DH٘ĭ_3V 4Ձ !gQS\T&P;SzӨʯSIۮ{֫ IDb\\xX>Q<.CH^Sx Ǡz1ɓDj<ѿ_Rr ޑo6LޡLjvdD'1 ltl%[ʀ<׆n~s-tQy5-v!.Wg<\ #l ȷ'I.xr'SFBF00iy]  R8E>n[3D;ԋn2v@VPozf/iBTSL;j*쵖rnNuFT\qI0t(u:g-xٞ#, [֌ՇCA:&zoNxνUW:=@3FD߸=RPޘuD "X8&`ZZ!!_A]hz6O, E2~&g g:Yp-`lZ\Y'vU5ڕnV |,z,r** knhFBYaWEDaSBd5$^Y_˸ fHgQ^ ~?ml3|PJ E <Ӛ$Q!FŖ!bPsTLh O=kD P U5{)+ R&ʚ2'o"h0##쟅#i ck i>ϫ=w}]қЦya u1&@NXEXyX??tKXH1V|ȅ8´ v4_];YeHJ0ϫK":8 KJ{Ω@0 qǣQj-rﰏ-WeɁ֑ Fj)Xb\vK@DGXL)cS$?s`6;-YPcP͍lC"%ߣפ.ɟ:*CO6T IEJ]'ϐy2Ǟ:?ڋ)˳b"0@tB"b L J~54Ycp b&\BrR]@v}&wAdf&n<.í D].~xh;P+9{={a$Y CnC ff;`ijrx{@ aa[e@Uͻ]yb3` ~Dv$y pO.foz /bj5Ԭ|n](uWc.6Xx|s#gd琧K9R߾ #^=v/+P]yPܯwMb 8M w$̍tL)1c#qd ҔەXNGbqʂ)=lc~Z3If1Hc9)s.~|~ӟKKRTz)P=)||{1O av;_4U"UfU!_*S~Tulu v+Cy{uY! Aq+}"C6ҟ2mάXir;_^N9?rki227c)+dT`$L"^fз e:cA ˃?q*:n;@k|=E 쿀!O[Ő`D"=N70TvXZ FĨ;"4D5K})nNcXm^ 3XYJ*A"z_Eq [Ƶp| ~!I 6ܜo_n''N6r!QcLŴG`}np}ґ>8.g,7upY fٶeZ<;@13,Ur(צS띊5+r xbQu,u49uFtrju?wIHߡl?.QY`h:9*!L ɴlk6T{% ݹ0qngRd*.s 41/B0}  n!4vX,݉eG>='_CF+BSG~ovz/0h*펒Y 1>҅pӈ.*7 '3Qۂǡ/  !PةoAcre`k:msDZ!!]ؗ%^z}mm9Q)ApU)G7MBuvP+bv)$^"3*/3qJYxuUqt8ol$CStSai5t b'2:_Ł: lITKWb u@9eJ1Toߵ^ɶ~Hvx*ZdC_'5F\mnIdNAv#\;0dgmu XqT~[9E.qZ˰IB Q+%2:$}J.z(tP\đLVmlrb1ndMߎQD8XS,$1jm\NcZ}84}cs ..#z 07Le{G7#"  "UxNA߹@akۋSdUjB!{] %bݚ!N5Vwy/kӕA|aG”I`7 +} #?A@>Ls'vӍj˜€J;6B:ybJ*2I{:35v|w IyMUir%m'@-`N'-\ҹ(.ŌZP%pCEMSo(6яЃ)g3H9iPVH'N{LTm:߶F6Eca@3+P [^ p-e4[x,};eu R2cslA#tǏZ@̻<CG ڰjJx]6 p eC}B$.,tܦK>{YE WŐf_cYa6ؿN;_\,IĤbmKbdv0G q\#$mXPC/ d.{~_<@RK!d8C@6ZYfAv̓Wd5 *x &/06!Ȩ%\_+_fls)`‡NXieJ^U!CmWh !}fSldՁ`.4 &L(afo/eLaN'N@;Qqo1m[9 hve^7W~oEbLXV1L' m4 x+rP,/m3׌_9D\"בDhJo{cvH&X#yAF^$GҲaAe˴<Amij|&k-)/Td&m)2q1>" #C?Y 29/7x3.v;n:1ԎiJbZL?]QJ c{+*+OϖK妻{ޅQ?9F%AW` "jt:ײ(ƭ }p6ǜ@ ↦.7^򓐟 OOP[K|,1Vd`- `:T|\# XE;r!5I=mFzsڲJsx%AbM)S0do.vC& SO=\~Ɩ2$Up#](]ҔK|BH*]x:}}VbgED;?"|o~nt;3VNNg%/B_+?x $tdeq^vѱS6 R$ri! :[. (HU ,q6mOQ}P=!/ UxOK)d\HG TD2̚!탴$(h4YMaCF̣Yc5 G2s\y{1liT7!yeo4c[J][5!۬zAOxbcBֽ"U☻K-SEj9~ҎJ6R%];AS91Ǽx[H gP&SU3 ";,JKu.V6  yxFSjQ0y|Zq(oH}Id^^I]ӵ`ϸ,,=3p8$ui6Ml%l|{B@ք|mߏhH gpjMa3<ƝvUwͣ߼gb{פ7``kTxJ#VLR HX%3PTsn'kF5*/|+ws\T(J3W8:*R,ACcC?[57+K=䖭#Tl7ξHڸ?8;8{IyF7S+[xI)z*iᕵM٬[сqrhox7AOƛ͏v^g)|Rkl 5%V'L(E*ok zvf)L&^+ԣ8huaA}peOqvڈ .c^b no {XnlvP0<7 a<n&0e""`MkK.[hsO["ܣ?ov-@d<9[ՒT͏li `'1 GZEm46z7gXܘ Zv{P@Ikvb:U,p&!.FA{ě':eahJ:Ws͠[;%a}TU/aN HW~']Cn]*3eQ'KgӅ>-CF*Npw(e;1ڿ^Jz?3Tq=Sq׌09D&O+) @n>ֹ5W^ƊKt+< y|%Z+F>vՎ_]lԻJ,tbڜS J#390槱&OW:M'1`b Rfxzg}P3ȘZL=N2+LA>U˥.`܊!u+8b>G #%@:LS[fyѹQj m*0 QP.KDCP]s^C6q5VD\\&,ʒ%[q#}5 |&t4.iD{*H`L(a^g'1>Pd[,GY/9BSaiyjg5] =m_+`r{CS:cTc=cDT%wVBL YK1!<,MrĘغA-PswSf0 rF.{ :YTA24فz'Oh^k`Yb1(|giT7骈\!`xDԥ"l*`-59+#^WwHrORA=G̍@P^yJfwD0[e?29 xv0ǹ,'ռ @EלsZ.-ʳ`QueȰ_w&gC6ޣŸNbnͫm7RȜ>W{/;uL^Dɷ-ܤ$;8 9HH0(%\^nMd|oux{;J!zS;5Av"*4P;8TЄĸo>O%e?:(SO*vaE[%lC%6+?Y(#4F'xD(PSNCdŖn(9`^f}FaHeZ6&WVB\3.#_jm#TM* Hh?㶍 GBX`pNd5b<#Y a; @ι'}Y 7mya͛_14g[OQ@h'Iا,:.Rbm5GtZ`/$Wr΀pI .mszұPVbE2.}F 'AaCMy/=cq}X%Ix>fp$ J_;O)1mXu #{Y܅{<{ ; uL/9eBjwAdkB#҈%SPTghE@rH rN>,ï%Gw23&~eA>ԛ L4 < v^ܘ_AxU ]?*uaV7z}?d{wٳ s][5W#ү/Z>XPNb|lk]kȵ_)F^;>j| ٟ̐,l{XVF߈:kѹ14okJpj {v_j1]uF`%Bub+}36JSۅT ZlZ@ >P꒔$ F͊ ҸXUڷx-`k,'=OqfJuj!1AP*Jk ʎϸ-`F,ўRu"WvbICm\so&]' 5%&GOsFU &'GF?O?k9|rd)7{?>[9 ܻUff&񋔁G:h(ht}sL9MۄMTxi7;OcϪ:"G"i+'6(ԟ |pmv)D$dx[hYݿ(H[YEywnwO̞U9?oO>X<4Xjuqq\R#w/~ }O54VueYC4(=7eNJ&6HA#{4 .|Δ`+83'j?(0'h;s$) Ʒ0f[ԌV+GCGU]Lw B?x]89~1h45[mF$87eʇ=]//"&h"~(Ӭ#xŸl.ʶ9NVsTymzd,6mV IDleu ýl`@*_J\Ҝ f{'uu,!?nxxpo.)]zasrt5zC(QxW)K+{G<`a5ܕLWKq0JYLO!S̙P~p@\nwflY\/ ;]W cB`SQtuKo\1,m(o$0VBN3HqC_J'$ z MuɸBga|h,&Ppg3 گf<7cn`,p4n616Eyߺqފ^_Ƥ(($V;ERa<cs9iv=^m]"$hj]UTcJ"(cnChV"OPk+)+Jw:Rgh O8&ޚ=ј{/@dU]@hŞ <࿿hJʂ^I*tc.1г"xP=umE3)`s$7z*w2a*OF*$vVߦ71%^ޅ D߰wLLq嘃̕ISuV𻻀4™ wX:y~Y~Gwg>|k+p\0QHt.ΤѻS3?'A b|ܦ;|P;X4up9+ @'=1eSexƥEȗܥ':,+<ĪF'[vxZ 9h_킫Rg Hf|5 %I5m-?$bӲE$lE A koCU׼ӲX-7腏x8g^٢+)&bWTkGח#ȨY3[A *jpzzF427Ҭ'+J6EPɡ-/6BINãk e͜ї`m6?-(0ݍ}JKt"X= sR̵͓u) bU)LEKu Ov13PV<)]D:=2"|<gP{K.U-YrNLHeu4[ӅN&.Ѷ> 9'$kR,9Rh~Eww~[LJu-GA*ՄD]9tu1{vඹNBcy-EiThNd=1 !3?n5?^pt/hatbBiI&ƦhEKyFs*X7F!sk  g/Pݠ)FnxHoEa\J2BxZp5YצH" r(VTؤZV-+x`˕o+,m;ecp:hcNXl'Wǣߺў>I<+l=xgCzYV$>g>6fiH©'MgJS'E+ek”ɂ l]S{oAG9j~uB'c"K8|7k|<6p HYQկ&.I#9l(:|p9h<:^'c^rF ~ARhXf953X$=. g ͑7mRf~`FDOUGZI탪w@K q{S0t)ldhGUcǖ^  |L7G=U"`c;f63|;W5ѶZq(d3uc|Ė!4Zt:@5"ph'e JtuLC8щ羐 W~NS$_W_:!,WTcO5}Rҁ3DB2x]\e_}b'2t@5Ҙuϴ 2/G|.!QF.[w㙛Zs#~Tٴ?Mvu |yas}Ŋ2.9,:e%+^(HhlJ?Y~m'OKȍ۝vɃ%OQ,h!#}8G$tj\Gq;Jʈ{O2Wtok;Oc.͖M.5 #lG&Wˣ 6R zb@_M!WHSn4!_D-YFedy8˖1쀢aNyŷhdZ=\0XC<01žkFmdX,̇,`*r2F>Cq[ڄܞ9tG6=8gU uKm5q.̂ BҘRB8j-~l:)i'>>A UQiB)I+P5'N-R1gbtoH-]?fG =/1h5rUVrqХA&y2Fi%t@"*YA _N]n }>|nj UImG;2خ`!,m)J["j=N\tَ/Q_bFS hʿcb/!1Ͼa d) ⩸W[,.[Ւ ^WOqJb{r-N/c -U*W;cKW;]RǸ[J:ά{M1Q4*;{Kف޿ʚ;8yB(`#oY[1j RTy?!ߩu |rBJEZo͡ {xFk]j^_[m/7Te ]()8TD!ֻL̔:gb%YMbUvLXRJ(7/MVlMY!>/i&ݹ_pt,RƯSF TSwQ1(6iA/ ROdH3Q(tفnچ%]E NgfYh &iLh"pv) S@\(E]PA*' TMA^я09.U3kjk`@aEm(n2՝5(oVB(1/]Vfڑ)~0#MqFŋ<4&<{قݱ  x2g;/y/jgêJ1?E%嵎 CDfg%5aBd)LmAԴG'Q=s#)-J̒h>+ ߍs1B%5^Mt|=d*gvq) Ҍe| q;.J <9 %dVfTiU aOBSTgD\z)g{"ȫX]ٚ ~ !)RouDVkeFa \ǩs4iB[B;2Uqh[uݗr12L//_ۡ?>ӘХOH72 qN\dR(Ln{Ȱ|DbĆyy}PS`!o9٤DHzVӰaT>RdӳeK Mpjғ>İt<.ź# vh 6 4AbJx\ =O;ҕxxHELiJJJ?ۄ<}w8 e{㲇4GiK sQ`Hlݕ~1"k؄tQulNeSo n$>F>='fg%s:Qi8ӽ!vլT{, ɹAH[Sg֓^%jʅZ:^ӞJyRR:m7Aq%9ZjcE/#TV`VAFOoK?&gHia2dȁn/ ;k2?jt]pg]$zsF3^w-,q*"rXd݃:me5a<*l+Վ8I;8 :"S)&ǖaَ |Iqcep3@ߊ1^bjL=n˲!X_KȏB`8xj@ !w1qd]MΠ^ISTwK0Lwh[;ʛ375ep'H7?>ٮz)N|OaVdz 48 2z- ߔhP/yBçH.G:Z)ʾmF]"a7%kN YIC8 ItvGHIV Ŗear X/Ni+mO/͛7.12|>9y=l;^g߳q:3ɜee[t!ΣfyBq~+oeO׉ZK@':й^$ָ[,$gݺ;VKXEbCr}*~ z؇%t0(zPp_ U%Gɾ,<* )v34Ķfm'LSg`VjIc Bfmus Znʢ z{Ȇ՟@UL]%Ӈ3\&E܅`ktey6 =Zq  mY^ƈ dFogg"(&؞N orڱvJ29âc^\凬ױCF {|$S=<}f\pI3^-n:c0G`)W ;,ZòJ՜u8VMg[+IZ-b >?Sa,g0' 3! ,OMt]5x/~#咷#Inꞇ5c X+"uTWL4/9^|0$gyV2%cj;' xG=SV(G,iFs01*}_ErBm:xY?$c4(f׎BBE]UʪVˊ]11(%@Uj}.PХ q᝜GdB ho—#{pyLa3ۄ4NL8y\9ў e{X%:by#k!} [#OW-%C^KMe#E[ۄZd<_L,doTONWxPNdd3q $:Z^++l'|\AOc&xȸp9kߊ鴇F;X |4 StO=W[(. A UMBӡvz$W,kH!gDb)vtn#/: 13fR7*|w^Lago;7!j]b:i6T ,.jl. 1)|.ƭkB|乬`ծSUp F׿Qz줴Mi"춰HT{4+zU8}m6U-U6&r99e'mn;I{e=)(æK9^:\%,C^#4*ax'ȂD{マ<(.<~ Jn[ƘmnnY #Eݼ`6bt&fyBdpzGy^NQY`׊IUP@nR,q]gi8 rІh F5* sZOʝ 9=W)hrQS^o\T.\`ccxVsq7|w~jJ gǞ4eXj*<ɐwb?4mߨ-vkk"?턨sQ6ek͎g5;|)?96*oh`KPm4cdƪ[pW(PT Ր/)6 \Qmr&̍@%%=;lKΩB~ɽ*C঩:*-L)f GCI>lKaaE# yJD)|6)wB{PfX:#@Նb)7aMX[b^"iMUa9T EP7ȝlz7-@,Ep9mLh12>=vNb謽])w_%WBS =2H=TQ{KmY"[ςb_{P.ܛ at1֡j׍ݑ1ƇT0u}B/78pժK(-QF:[EM3heܸ2\1 Wn{o%n>4Akݴk&yn$I\(`蕁>:\J'2Qc;ѳb3&se>ȭNi,脆r׶2Chkͣ *7Qbۈ/Ճ'XdĐk=$ 9IN{"8iÄm7srpڭm71 1RUrWfeae(:Rnّ׳9 P&'K 4 ܺ -veABK#`K&j@ Hubzrqk눶Tȃ_^ҽܾn58ۀtO[Cږ&=Yua"AޡNUР̄0DA5VAQp*Q" B}|Q>1wx,؅T*!2"{,7!e@{4٩ >P!pw`XIxQ}?H|dxtlVBI6G)˫\6,_ 9s? ZV+"BeG֝/zwz>PO]m  r4kِG~wu $/f.yw!,vY2¯qZ7wnp^:n tQ'uL@IjOՏ;uʆ(v]Mٖ~G^zKHYFE.DBšaD\^%;85kŗr`0]ˮ@Qo*+vESB(Epg]/A~bMJ%̋`:j鏚~ohO*2!ˎ@jmH;o:6%QPzL҂ hAeaxݒl-'gp瑌,,3\u _F6ڼ(B1tV5au 1,q%cQe!g.8?_#/F~A_X|HH#}>(e\.ьKyk-Q=PWvMɚexִ`_$@k- )~_vm7fWTmX| ^CKEsEG Qyj Ք0`WY;[q ^? E O\ 0'^s^JD8 ܍ѷ˳nxZޑğoXC=]Urr_C{0U)ݘׁluP~+*rD̅ѪXy6=POY0M$Ev; lMD;L>RƆ*Q0]Re[)MV@D[Ǐ^TI>a:m]Z`1 ؓwj.*[:S0ey4Џ&g--xe9kܓ_y{))6mY 4!d[-KB2uHujк^2e⤑yR"/ք\#;j"N+$_+vt6R &x$ IsuyTN s1u aH㆜r\O&":sʾd L Wz \>ɓ$j]i}8#;T_͵rЃ#ZfDΠDP\˴ƒLV+Zр&qf'0s~sQ"4/}^PN;9)i ?JW|y%}=1Z;'Xh&=`2Y пPm׆NIjfE3@Ku%hXw8[`c i[{RU9%>%†W$( IwHF;Jމ9G$d'Hdžb'N /D)Q`=^wI-֝egyԣ})B}{s,<1!3gRRP*_q%]@ VzP0O^ t/ylQ#XՔ}p@DёtNIz rCy֖;yE$:}ɞ^"E=}5V?3V³t;t߬=xW]/y]}-oc=b(c5Tj_ ;&)BDUDYM UxW_$(MyZ|bj|C@a=ɣ"9bj^@khfd\6L@+v|L;˼%j̵̻hJB8F:0NITxǡ 6Ju‹R>=J1QrF}NߋAHpt7vv@SDH?'(Pz겉%zŒlɲ<^."3Y|swй(ސ=" ޓ~7 !Kp\s\iBq.;n2BR kV[[.ҡO$9&F-*Ĕ<F9Sx4̍ˢ=yZdu:n^.F|uxwNMxU!@\z t2dVFk6sN96}WOưQG7_ְ,$ T<*$3:*4 NyAǨE RF֤ mis'2*oEYܘ/?BQT'`"σ8}b|mLNY^6fFrGA)^ x@||ifEE!̈t:> r+- 1jžU[BD/ C*]#'I|2{;AI2j˟]*@DN!Yu:9*>i#V1(6rwd K7oN+D|ē_\ֳfaCon*[M~أ[tӖ5q`ޥIHxrtdq=% r|zfYW Nx*"o8Hd[IPHl(O,\riկ֓FXG-$Z|^-ܷfk̈́"a}!>jEOg_?^wVޥ^c9 6㷿؊dRhX~9߁H1W=I5fwy9<`S!X?ҽ?JfeFs*_\m%2!1F* WcؐuRy;&HQ?lyqKt/Ja6H;(Wuc0M%8~2 :V Cb;~0]Tp />ٴ-%JjO+A]#nDp1 ]i6HmL7ƭ3wГs#QL}`Td=mDњAɳ.c?Ƀ @ES89 1wlIQo &o(߯.M POV>_d)Ar4<̿#&^\*-] wjfJSFloxH@PI-baxX jE#핷z01lMaL#.!"+47XR*.f yAW1s fbWjv\ϺԳ쯔l/m7/_$w#Vz7*:#!2yo!≴Vsu@u~*'[y+[p.ZFusá!mFj҃~c6~k!{ݥ𽡺.B#ū /N ȼtrD@ .f|"1h l#28M%i}1,Kn_CaL7G+XAzx 9c3{AbADiLt`"@ھ 7?!^YyC se=@ 7\R+Gb5^J9gR3k֨(`$_C/ŕbSLc^Trn'emL|CZ!G,-0UHzkގ6c,mdCz|5n9"7TtmhwJѽ'J$ W6ڄ0]2FTg1N[5gF׹ Rs$se7!oۮ'lR3U5 ̱tAwiF2iP ֎J}ӧuCR3$ kn)ş״8Hodx QEuܤ)l.s@B}lY,KG4ڤ?>1 [ć0ZaE,RXP~"6{Abs2H!sUymSP3ҽ,>!;F%c{6ovI sJm[8/9R fҒP5jst]>$Eܰ cn2c=8F L|lg&[s,sۆI1평H \ j%L'$3!̠Z]RiYDEUՙ,(1~"<FM>\ 6ΐv+6ͬ?,N[6&1*]s1'Lj*ZbO>MSxYOQk04$@ȟQx G] XƉs)omDz\.ޮtgިxá[~)9ˤV7=>28zqͿhXKЄ1oAhɛ٢܀VA6cs,H!_<)g%AY'Hspk|:)]_3qz@SҗC00wݷ)"=-h0uTIz.6`DJP,f` ']sFi ̗䎿W^[&ȡT}bgoYWve7HemN Ёo{u9A'J;:ya6G\XPy}Fqb ϳg ̕BԼMWn˴Ԑ j/'+Gxkl[ k_;fkK84,vVLԠJY/qU^t=VȊ~B?π9O{6iSV {-H^_#B̿ݴZyzl{L^(:̈́Zxft8;,89r4røPRe8y~ WOTzjB:`cek=.Ck&)+e0\F㱥ٙ?}w[D;`7E-#>ρ*9}1?ߞTP'RDi.bc0#*+tՇ|ݪ9_7L9[C'uP%l2V[Ppәsaߵp'جD6ݱ>X4R/O)sZmx?y i7p{]<\E_؜u;\MHv@x`aɨ3zm$uȢ_?c7:ZBXJc-u֦W山kIk"H*ݷ!}L^ɩ'}jЭmڎHKʃ%=:rc{Va5iQirfH uV=V!bǽa ,#ĉWf`Zx1JAMޔx[  #I}ԯ*."M1!~1WU<yba ?tȦ6G^JOf#1FH@?!di49:yM-;eһ5 G)+ !ae]} MWˌGNvo;XUK2jR#.h(nѣ +5Ųjo={* C@zu-c%Z3 "f7ts+W!_B.G`uc[tzsru|c`sYcNr,Xe!)7#>Qr^(PDž?{DGQ/ӈ~NX 8%W軀H7uWWvc`Ve`J<`Ph?t* jKզǸ":E&?(.fTZ7B,dٞμMUh;.'CVƗ=V-sj-IH6.>>]sgd2\^s}%cJ%bHmrU)ܷ8E6X3$J8DQ7 ݋KVwDuUHׅQOǼ+UYhsُ6\Z2>`ed$w]JNnmV\[::+&8^7= wx 60HϨmi~&y'aM5PrmS_]f -Lp쟲bɈz58q)0P(h%5߄fJ#M' pDPoN; 3p㔴i0i>`6sF*Vk[Lbγ'Rem]q2=M1ō ݮ51c_!̵gLk8 tE?M9[ ˚d32VO+^*ϔchl1 ̻sϰꕷڊ ?+XY벯;~ѦJ'rM͖6E~;McX81u_,a~~)fT4uõqum]ܚ-ӻkHNHO Ԑ aBXzZ~eR5g'fl* A%6=rg@ۘ&;D)T<J oT9_%X +yWFs?roǻy歴'+>6X:'fbeD*WǞ&H5"7U*h @:i*mykgDFN$&S7 : ԑvM_p))/HX4yLn,;hԧ;9Hqǵ}odyh)$0x6Bξ89 "Y˜[] F6$//{\zHD:胁ȣ/bpXRS8mf{1Oc}'V1ք#nJ*0!I8ީ SLkQGBDY(F}HkHqb 'I]K0EV;Jޕx:0T1i/N~*)0#>0߹Xc 1&湦+?K9E(o@ً1_$p7¹m+~x'8QmK:8Hxd_/97F0D'=(m i]6 MUԞKBسr0'q JOKq1 . 5b& .[|d`Y'"KW_FvG6 SVlԐX]| $*@ÕtUw6Ԅl_DR~'Lh-Ɨ)x*9O z3X2cs ooN83}TYP(WEϯOyu6ܱY%[h?ğ~Jܺb)r*-{l $H1_:_GSo߰@\ ^'4I DhL'YRII a{c'~3}c]4uS6,=)8/n,>o4iw#"GPJ4Q0_Mo1Dv1N2BQt~u9̎A=[`Cben*_1))IBOHKRP#ls*0HCbZTGz 5M'1!PSRz؎QB?}յiom̂C9iBdQ@ \e<ycn`S?iPݳZNJ\wɂO b'1JM01%JNT3 . 8Yxm71dx> 7wq;ɗŽ~g첅B!̤@/u2'ڍYx"U/p+;Uk&NP/no)bU'MPT>Ңæh'iEiE SdTU>Z~ ;cyt̃#a'"IHڹ1A_[wI]n'{ۓEwqȌ^ @ Y]9ٍ\G‹Ji<_Ԁe@AQz1c`^b`QD5آ |]Ai|=9O4XVa4כ>$̃'hk1p俜^'1[jِ"܏U>&,O[mBاY愣inbfS6idc4{DߠyqB)]h*&UQ87]ghsli.n#1иW;O*jDIZKE-FN*v$ 2[j~/]nw.YPro- ܼ]j.ŒSDT8P]:#䚂h]Y:XC[AX`Ń0bdղ6'8. |bx+dU%3dX8J^9g܎E" cw`U;a*ӌ>;5AɖYGXʓ*O:F`뼝{ g 4/sʣ]* l~0t J,Aa-&x:u' [QV`Ұ1^4\0*S95L-/@2Ɠ2x NM8ȶpQyh(N2Ȟ5Q]-ዾ1uѿ1Yhw$ ޴T,JMIUHC[㛣i`!㓸. \;|2nl6\IR-2j-_3ŋ'Fr!q1֟M\F<~5G1f'UOQEtS$~vTQϲSP`~"7ⶉ̗ )xS ʖBRm@d™@G)Xu 8Buv<==Z QRAc ބX∣KM+Ѕc.DAC,Ѷ]_]=(]2vF /Mѿ$vƆ.ݶ28 v 9Ä8 (W {^0$,_޼9D|j fk]~,G`uvHjͻ1kc+'J]<3@Yd {} =ȭEA2΅K)R$TL'9RK󉍋9UF{K=JpVK5U@')na^EyY]qLn?Y$AP U'j{pxEzFQ3<,BφJa_R`\9B;?Qhe(=STyII"'GF8i,rZ9HI;hhxK|~C! pz Y쬴AmSyZk #$[ґBBA-plWDG_iiޅ}ޜCr%֌YZ0لrt\#IfEl[ dcr3ӏna5CsFWDt@q;A#޿# G~eW9pHKͫ1]s[fF*$)<\!Ӑ(nk(`uq@̈́Q3зLm6RMĩ2 Ŀ1vlbJ,[~FC ͜Ձ%W5`"Ckux0a[FlЗ u@&Ǘ-6ccDkΣo}!|AN;*43&X n=:׿j 5eMDLVM>y{fz) Mo@sdRL| {8 0%܇ŅLZJ3DyKh5Ujcj'4,bG`{~Oof 2'y>D>i0R~a CG"ŝSEz,[<tį?_t((m6]f y8TnUD[qr/1 V^˺F mT럅@YA#tòu~cOV ]-%; m7 Yw)4A*yN$Gw(o *eݑ{zabЎR?9bݍGau҈p@O*JD 6kKL )ac ވ}UWRs1t2S2s6Mݬ!gey'C/0JpZυ\_q؉-0P#FؚQ]Eq{MHe E5%je v)[;C,+!)Ϲ#:׸j$@$]ny`@N# &_!ſ+ yp0Hi2\єr-J2ݑ?q%X;u*dW0D5ɅXLI:¿!aߠ4?(w S979mG !99NWCHЫ5^_Oʕ tfNJ*nCz?Pu,Bq5huSmiJZ6A,WL"ו./YBB." C?`6`IA8z5 >o&հ8 VSi yPC6A|JAH>xHAe}`1ybl_q/ԇlzko:E< }oT[nɢšڰ~a_0b^X8ls$F>d|fsnm85OP; ]t&NöUDFbP;DO$7eэgxdfg}DCC܄,!30F$siwq&a0n.;80Ri5Α[}uz+,_g`˕+\Dq %J]*GWh |ut,3P 6ȻZg^Z.g_ XߤRm>3m+QC}&z@qP4xgC= 6*:XLͣ'COYu^z@G4^S{B{a]b2E :7m'1#[(=k0B7gWiT0Z4-AI~ׯQtXoUTEZTPr)7*ڲ[&uF0%('|xtniB;jyyU<$ݓఋP9IiY >.$u] HN "މ7 M̖ݻRDP,Ԍ9 4)E+WJAy'$1d#Q=71?(#QaNۚiĒl%+Q e\B*_ _/Ų ]2vn^ɦ fO am OW`n^NM&= U/6 1eCST;^mD l}6#$A1jx-ȯRw* *7zmn"?1S=`ւ &>DV-\ NKv(9媴b}8ފ+ wkdo0{d#yJz8<̌ߖ 1#BwU.h:YGY  #(bZmԧ\6W%+ǼEV#vaW Jd7zGstiFY!$@o}U&^b(ڍ˚67gPொ9bHy n w9dWƯݙp_'-$72EΎU!%N8nv7E@6DG/[]CV頰;~8/@5@|7s[Y 0]*#i씼_&QX߽ CݲBF{7Zq@LGB[ sx_i+ TG{f4? j"fm4UfGucYh'rI]U)S(^u,kՉIٸ86V?lFo+;D.GGR$u\Ģt j*;RԻ&rPU`QX)Fy$׮2<q`Sz}M+2u=c WduiZ#'26%qUm"rӯo8-Ƴ\١o g%3 ]kUgի!f((g[JId%<2ns [xc| y47۵WvM4T&Cqb_w .-ш6K;="gE\?ȥ`Y #o¼ Xaht7[ DxVK4X>mVK͐7T{t#^"!RUVdDƬr&-K $EZP%r&{tfhLgء_Ι}cw[YbGyNg jG'~3#BڋT̀N ?|6!UꮗKqXe#}up?`vHEeQgƝl;gS @vGbn93KZS2({V'KS̕SQv-mPipduND$ cE296(0 W2uYDjvGzWHoT= ^Vses0_^^M>:D5*ba~O31|t{-:_Ю{Q(/٤cU8iѾF )SAp_0^p#^ gʐt -L/ԼA*4ē?Z f(L#Wntq'u-+;z~ -oX$k"[:}  W 4-0=L3@)t~́^nQ<M(4RF1KD,>)Q#e jBU"(NHZY=>*@s;.O<ͷvCF兵>T=q\8g)3Zfrx.Tn?d̟_3MĽ)(pEQ[e93pǛ`3 0 M+m8mEq9on[bUB6'Ȩ0/̧3Pwlq 5Xhj^)+K$tC,^{`j΍^0(( g| ZiE2w͵Q֢Y=̷3=Ph-ntT?&A7pnB%+v2kͿx[dyN]3H͆g) +mV(rS*{eiM>'cU]EºG+ڰ"?A%ad<&YK]Bj&ZIP0&Pos#Ab^tvG/*ykrEkB럡Yjk@:ꂕzJW+y)zY1vI pvTz GD WNPϢ0SY]=c)<y`)=%o>x[K ]tp;p=t;.b=m )5?\(ѡ* ,]kBFh!3fgov"{tU0DyK?"G=3SyKWj~uRʺB8a?sct-7t5 Z+ P!b!S5a,Gfo[УKHBj+ >^S\9'Tx480$bk/~,l 8SO4!5ADOhI"򏤼Pt Œxf#-w~ i@kµ<|vm {n"K© hHB}0tgH"1ꯤ@@R}\gW.4E2s0hӪug7C0=ۡ7PN%;m _lPMr^k/~hSᔞ*kyKA6@eĿ 'ZҲj9W0TvRDǶ*I -=9JFh(o!ǣqJMӹ2FJt+aW:8!FcMI[V\/s%ahw[HH-^jk[R:ctKl3 ~LUٗ]X#HocXk b@Yn~Nʐ5q`$rJ[dc|"DT@Z)@v+ D0cڳU \RяdR&h<34ֿ>\S O=Q] +J`CuKDv}8]baZoPyy\8bu3"-,^Ծ c(%vUsH\jF=O;~f7p>S$"*:x"ѢԹG} r'VuZFf3oJY^ AthMJ[2ܲ:4`4d$jJ[̔h&SYQE7Q<쨋#glAo^b]|[lG(ܿ0j^;{ϚQ)*Ŋ Yuf9՜jZ3D?·<L+'ZzﷄDZ|67VRb);[>C߆IS.+D2iH*tIw(4OEjwEd+6xVqnbM :?I<3@k(j tz?'ۤoHq6#0x*J2#8#:LַȺv])9GS!6~u6Kr"+qQ&PJE-Uae N;j;n5V'%d<UB5 Tm<5㒑YCp*w$ּulA9cv0. pΝkn7@3Yg1fk?R.#QY1Jp($ܻklXh2sܺ_2R%e3DzHhIM!Ԅ`♓WU2]p2I LC.jN0ݺ d dcb18J#ڬZqp#tS?]#mcj YbqjW+r?I!wakp d/KǢJ.4uj2yfTn.JAw"Rr*B׽Sa P{Vf>]#n-a %Dl&Qkqjm}bij^jFU $WԷ`!%Ud, RI>Ȧw9z 9@t *⺵zK&^ XB7@gho1bbd%*.=I(GdvQMKJQplxBлGgϕfdDK|ԬÝ1W+g읇U& ЏHu_|j_]vP 1A(4gq@ﵞ[&^(ȁuՕ U5 =k)7 8pf Y wwAiKF:CچW)X6xFcm~T z(Qj- vՆ!b}C4+Zoۚɲ Ȗ۽`< c7y鑹 +QbhU".KLywv (0)o$=>q~/2%HKk4[3gpbr/w`{yàKk:fCM' eJ<:ͣBB} 5*5gzT'F.ZE?&EW&KkNTKx#oiIQhޡ$c\nd.ڼbW~ǘS_~U;ԽCrr I+ήԸKv݆ b`\ӛ5M˩8@斡6ҘwSKxTɚJ( ʓ'h*Y0;U-+Zm0,0P_Xă)!wn*ըCW:uI[UYӾ(者hHrqm7q,SΘهR麌miJo^\b/!XJyfz;3BABhuc7[Şvϯ׃9PC@rjTwnb}4.5` V;c :+nϷH-A*YH6X:3(=Fw9ݡ'ELX mݎYgO'OfeUBk&B.`n7=LE+~5Z>F*{pZ/_퐯p)NT*5$4r-P!ƹ E;?hakv;PJTS}jnԙwnݖ\fowW>YY%'#װ6_}R(QlN60|? u_6S=1ڼ3FǕZHCPM sѪ#ԕoSC` [Wn-s?9sB&_Q7kA* Lۧ4tnȒ^5kGk}&%+8 gO/oGv/Pq-yH> ɇ(l ͉)j.]y~g#˄OW^[ijaF ށܤcryG}21 TA V߬a3> ٌ ޏЏpɣ/Cwρ)bQMŏ JV=-ףrnza e 4;?!.s73e8Chwq:{`@B?}+u|mز#Ƹ%fxD>2JJ )h"F־b̊2^%( 5M:dZpǡ>\YqOz)q )~aT%炰AǶgOfCe646aوhOip/pdj"8";EAڬ{6q_FU}K{n@yO4nk )31[ƹmtJr֋,`ȝq#\.Ƙ;{颂pRzP Xl]=#RjI&S9?*ta <%įΠM4aFnVVQ#M 3l.fW! D-cvj3%<Hw n: }&o \*sg@wra65!ؾ@oFljG ?$^& "? ϛ^B93 0P1&qQ4IގfqwPֻ˾$.D`wV{}ߘ 4#jjG}>/YH#j&c r1[lN"#cׅ.PӔ6O$j%LQx/F^,iZˀlrDަy۾i#%=lrLZ2=on&L9]AsM/PK}Z4.[>62ڛ\U=H.x}A*V\ɜƠ68N|~e#4[Q^d D`ob+x8yp=(^a mZ4s IMjjuy#;O}@iYmXk2̡QaS𘟱W̳֦)ܕ=Ǭ3Mbn/4AH]gճX NҭCy6"r33^5(1X vA3r^>wcBЀ},ӵwJt 5WOk-ª|tB695&Z"g_DTfI$[U2Hr"`S̀xׇ{$w>J3Apa%KA]So%`<`_Eᬲ5 56}Bէ+w!#сV"YXY,OfdŶ} fǜt1mu]h$gD{pU.Oں fsMuɉ~)gqH iaҪBX3UKXh_2 CSCJ>yv,H"Z-I^O;yg8 StWlǽ 5?bSb6$DC6Df͗'Ы*i<0ړЭJU9WeѮu uIFt3g-xwBtۇ G1@:-I!*圱3-I;~`$ƵST.6jIRU*S}]3 U\UK>LlSvc:6|C|68a?, *b`п>%jVv ~GT7LL##0N—,e=mX&P#;QcKpELGm7NZS\B3&<0oq?m 95&H3N=$Ւ cvپ *ZS/W}ъ䎹O.CnF>0dh$IJc$@4+o\c^~버U\׸BV/r&t_~W&kM[k̪3IKɍsg' v%hHzRH֏ds?v㇇;.áfO^H(ޑHI+A0$v]ΈjlnKLʘ y ]uCK3x\= W`+X; +'uD+s%ȦVgB\ [I~ȪYY? *g̈́ϛPa&&&&y6#X_"Nj@ ?(-Y*6. Q 7}&C%t쩼<9h̡'Q2H$JEt'PgkiWP:Yݎm݂+$}hmq& /}+&/?_o ׫/J~bU ؍m 筼`ۻĬXIMY㴦R#GtB=Ӹ30YߴpR;/ʌȜש5oCsF"HL )zw6ʏ^KOxf(%=T')Seы\HP̲ 2L= ҺqI'z}D?25"R',"ts+Qw'oΙvdZ%{o5>l5%T<ܑAԱeSXKZ꣐c+x)s$ *-Kɹ^(]7BPƋ;1G"sn;[ʣ / \"=eRuej#|{9Ъ- ch&98<('Vي3獔 asX`1ι*ș".Z n0[YF8c`e4L:Pth GICe!}&[t8ׂEDb}+pbCȨqbuX]^wRGs߻UL;cIQ5Q C?Te2OP2Ԭ\zbP-W:d Ц1-x4$ A=~բ(&;ơ03 dToZsɢ"\ RR'7s8|ydo͏TdYC3dw׃`1ka}X*1#~ֻs57 ⣱R\msT۽Ky R3PLc!g.E՚!R9OpwPl!<%MM"*{,,JYCp HNy!(4ī|[* ٿ i~Skwd~B)'ީHO 5WEiMQ詹!  t#A[2.] }nllN6rXsNDlaXWGϓ؎gtFO ]x„iǎ0 s$dPDUQ). ~t]xq]^@l}rݐW?:?As.'z.*5Dl]z%Pv੠LV +7<5lB~Eˮ Ms_ϳh`@؜eZ^'?r`}cyEq˂KE[KxgRPc3NU_CGF|`B<pF }P &풸PZz:/R_iJyv(〙7M<4Q|;Wjzv,b[)i]tE5| Z1aGOeMa'?!9#P*i$q9 󊶒kHIGA 0K8DZ?{hTR"2*:wZ U4"N躧 $oj9tR,#4'HWE ~5I=@F;~) vd*o.{F֑`+ܹw.0'U/BEUmʝ?WuG()"WNfcӎ`g؄v~OÅ[a.{{l$fXȴ;]FXZ;4S t{6%[UΩbSA|,O~p ӰÁjWcX}b|ԔYr0*@x#[TBXT,{q+)MƳRbCTzdbgyCl|ap|?owcO$кJp[ۉyOH0DE6_հ .2"k<:ĻdGQiiN־,}u@f\vݖw`_#EƊ0Pǃ@CmuA&T WGo^_*mbh!DmiJx$آjRpE2HLv֐Y!}04r2A$LaU]ba*[vQE Lbֺ.* h{PB),z?OO3np} ]!~]b&T$ޡD|>|>[Be\0XqwyFt?E0%ў`h`A&2 LpC uۯU&eEA;"u;p˝T\$,vۭ\%O c8&x!e5wh= I @8xr˧`ΉK(B BkCʼ,N9;D1@igjx4Q0`VR9% Q3 27JF⚉t$9?&22namd;rARǶMsќ*< ߅>^#n:!fDeRq7YxL|6m|BѠgm&ufݓεuÓMif檋*wA-:q"߄3Bs!:#K?\cF-:_7KؾSn#"#Z)řU}UoS? ;;el&oiKX2G >js]>`%&[k7͔PZ ˍ![Ӥ2!3pԮOKڮ-&CPXw,BdY׶CLق 4ϭa#2gnژ|j,Qm& x:9MML̹Ⱦ5vH׻LyjL\ K&r߯ i)9}Q,A̜TPv&Dh׳5\'wUg"qCj"6+sO"]&T1:n UTdȤ3&ʻ>@MR.L&t K_@Mm(^{fF&-o3sM+S7p4,tW sǯ~*"A/xxzLf#m2n_N #B[ [OWJ*`Oqw;C*zr#o #ĶIl˛HGCDm bѧ&Ϭb~{(u Szl;LA(j!nK-` A{r_\$[=Ld9ѓtC/(@*`42*mB/vBr+GWG2Î~$klM}4C_ޱ sr?Y0p 3i[B v&΂f|Nn^, vՕZ08\QS7(i"G_1} Smώ΢fAǤ/b9BKYuWim pI!~ `FFR=9RDX?ʒTEy[i"B-K}44Oo̩$8]7ԡK :g\ }sWQk϶R$jVM!DZƺu[uj rn&e!m\G:nD*-V0pxKO(HmK7Mp$@e6tlG|K3ED"h0܄^]5/4b<9'ӯP=ϝW* >Xxc*pȀ,מZ8`g e.7ࡎ{hdx YU$aJJ=VnzG 7sS "\<H5e9,BG G`w2m`NSa ?=KR2]E~HL>&I)yXlAC0YڮNO`yAg1\P:( *AFAA-g}.Eq5X/1idj ] $;$DY, mAhG ,7X`*d4Ea+ɭZB'g;v|`M%SYx9Gn]Z:$@t8Ū";@t=&/pGN)pGL5 8ۄ~ lN2;үg Zu^ Ae5*Q[Sp-ZgLF F' z|g5_͋ 9^뻪xf ^4m?bBa?G)_ >ڀCN?N*;7`i)aXjuL#n%Ҿ6ͥ ye\Ә>[ԥDg6&\* I0'Mz|d֬80խRI:{ e8* oB)_I_,A\>,쵓%[ UeUC\ɘ%oNB98u\MӾ]̒z;#CfUGdѩ!B:zbꆵ%pqv`f\%HKỞ% +'VK~kb<7AU yp+awEpIG \^J+t}e2̝XeMeJm v0$t#Fp:G^O'"~F42JVY[qҍ T:O:uª2͒~Ũ{#-y$>Ne[m&)ꌀ [n?zBWo_|w B~e͝Sc{G[k:3;c!~cPAii![8c (XQyah!8]t;dt㮺*IL7qj'R{owI=o]n 3&!+{6sK^#tض^*[Db†gsQ /qv eTMn̻iUDz-dR|췜)ʽ 'a5eotHb|~$Νg+ k&I;tY^5&kЩUmF+qX 2PD\ծ'MlN6/-2M͛/ ]!&lD9]DB:6QΓ۪P㽩P6Qh嘇n6a\%YC#LUbPGiCXSoF+KB^Gz@p\k_ , -wSE8=!VqYm\[wܭj} bAcJ2~Wс J 6;&4֮渴qynuժpZ?{¸+ i]ւ O[zvP|T=̝Rm~|2^qt=$315T -skoTj}'R"si센R7nGM/Y|9~џR ;*l_0ex ֱ%ǶJeeϤ U6#)[yؘLF40iw0\>kR澭k*ͅ0PZD{3fDu<*xRP6LDfddÏ/~H8~+\Oq[&FSŬy\z ȺsX̾6g$ &K i.<|5 伀"f&R\j2 !C{jnjtpڵ`"mnm4uHfI?t #CjYX$;y܌; kgHЇ]foie0W]Ŧ0'ia?=D3~ZӑZjkC]6ۄwO*I3+m)CHt:`)AɮO\DM!;u eY܊=a"VOP$u -zKƍ:UN-|^F˝i6 CP3R OyG-vߪ}̮=vjy_FhYBTOY T.eיLK CDZAu-\us6-cbVŇg кfQjY`hglTgdyan<%iE8GT^Л^\0h~A}\x7o˜O-ҷ=!eh>BGI$ENFl7j6Fa͈h:aIa$قL?s;܂i~;B3/%\os^JC}leReFDN)DGofƮb1PGT+uaIvL\1jC^Qg*rv4zc:[f(J[>d * hbRNf$G(萤?vfQY/ȞS2_)aFEl>͓"9\ݭ@,SJvJ ֋#w|3ڒ!: ^U!a /JsXXoG D 2h(R T!j5o],Ϯ$q˄~fQ]=]1KktWIp*զ~jHdsz)M >hen-N٥uQI/M{Wze45&+'b',!DK@ CC]5:uNƃ2^  `Xw;]>H\ᅥz Pl6]\ؠ{39J{D!!9/((32TCZ; /)[OKQiOO%a<4#S %nʯ^9I#L\!NuZ|yS@B!uTL{F%[!8OtRiaȈ:XvǠ4f%M@VJ|pC'~ ѳUonDԷ9v LbY9ޏӏ*8{<[!D(쒣HvQxr|A-R.';ШFJ\k.vMG!M+0J `^^IO.B{,7r)m6c6n.8SD0Olg6<]x0{C'-'d)%ˬ4r'w ӕ̽)>"SMqd&p\U22m -?q>/Bkp!(5cK8LBnJTL% s\ .Vd9?(sX!*4߷M/Q6e= 0fҤr9k+$*kU7+Q֣:Zl @Ipo01GnG'/5O: xVjjEVg0 }J9O _oD H01v  ̀OW]\;&%zgqD__糓B6x;,Ăإ%F̆|1Αaynet.1ZIqA_M&?7OQ' +"<ћ,}XV=:THwۜl*?:+×V֤&vX˴=DY T-*QW[8cÐQODŽ:=YL@ͤ@0M-AŽ9VNS{ȡֈHEovrgl,R0L3-D >*LwIg iIMdzaDa5? )|dlN2Wp _xJBvӡ6n `3R?Qt4j+ zŗYL\ᕿ>4ׁ@زdžR➑%иΘy@E>z U[An)UOWQͤ2ڃ!GmfYRZYi_i4a?c0I8G!sOG'qʰX.cLމ)1G$Cunm[%EB^kOKˈ oWX6TMZYMžz:0EBplpog8Y#Vr >,׎_r|JCcˈ 5~:OhZ@H䯓 QhLǬ4]vY5a5~Lop=L*of}%0NἭɊ{ 3ߞ-3NJhRϗ j% 'jx5 M,S[-5]hoV62'z'IZPkb{_j tp:PS2#DTgP% > "1i5XF߄c`\0U(2cE " H/%4Cc!ڽky[cSOy`S[ ?:ujm"j 2v[ZԪd9ÈMċgq2"5*i NhI@M*A.TzR HSZ ޅjM;chw92|*.NB#"@ `L.v?t!R{cv(4t*㬺[ i .zRC61k +)oV!_$M]KVM.F7wN >O9DSO@s ~=2/3%5$3SmLƕ-,U݋4_HWvA|6tIiOÓ-=2VU֐!]{fUWF\ )vL4 E5n)Vq!*6z砯‘ nV~9:˱K@{ `6-ݐz̰v ݀N"c1{'ڌ|֨/ڍ%bI%~k^oD/:}Zt.=[٦ק./ݑ4eW 9?Ж!D4RJDe 80TYcQh&mJ i!l`dvqLL*O#OtU[=0<~)Ǩa5Hjf7囙}u= Ks=MSN3RPWM~Ro^b/o/)/:*zrvxtW7Pcqea&{+DoEV%vɹto`nIZpʡʉV&Uح |Ge)o6_F07+qKk.S~DEx*P}npH;Đ1w!=]fr/LׂtH؃HVJgxsbtVU@E1ԻB6@ 詝^ݿ>UMKMO 8;n-q- Y P.n<^ǟ:sveCDs3H|ϫu5# ygIY4MgDѵ% Ud NYEjPrqY']G2pe vw}j[E~0acdwsaIg f^EW/vT>/a.P1]Y1yEB-d^wRо 7 ֑wE2/Nb/&W~)$ XDWӼYgܵ:^B̛OD~#{*x8kCi$r.v*3ǫ$űeK 7 dp5Kx.PJr2߁"h6e_N2+ouP izbȀ[]k ˴Iy!P{JW#.Q0^\7} ,aT.Ot&r6:pfb;xU`An. ǔtH LD25w/41'͜/o@*jN Тj|{ekf)n,`_Tf'ŃVv S˂562svA`>z">"Uں [21ÁܿU=/ǖS@O`jmJrDg>tL@.4p3 ~<?r]݆D.tEf(h$b0+@+V>|8 9]QPe*KC-Í:g-4 u=!;BLx?Nȏ DS݅~(!6P(љ;t0˭`p-Qf,X#|O k7x/`VèU{><X*! uOJ #\j!E$C"wx#)D~TdykI)ZqmrZ̳bUHߵ*+ ys~Qݣ)}R|j`uZoktϩ*!6:5+tnVKoOh@&{gc> |냏ϝl$ЅA?Lñ)%Ԏ)Gs (UF_vS M2K͛w 4)"? 1%+~.%f_wB HR PBKZiX;]>ˉTa7T,A 'WmЉH^]p>ÙQwU{V*/< ϣ׻nTG7[wl 4T5N:R<hz`>Tܼ=`4~\Ap8LТs i ͎s  hJmR6&HkrR%+w'dMNWBc,!gG.GxfG\Gk~mRfZc"ixV{O.i]+a[wqX,fUo \Kr|PDWz<_qQh ) k].*;dy9BBƜkf"{mȧG<ô9%  [bXO [_L(Vc,OFI{$մ:%{-i9Y>M+^NjT6KR Q#I5'1!MZ+册oN3[TֿtFֵW:;ywT)!Rjmmsi.b.'>r\뱂՛CZYSj;j#1U`m-+zQ-U[;)i JADuW .I5CK.3nŤ/SIƫ3Q~ l@A)._l] ;DoзdQ C+&0uy4p6 -pe{Oг/JdlJ .%-h$F&I2f)(t0J&GE95< گFz+ D>f6>Xܗܡ7n.Xl:1O&F.PG-e7`Qj]yk&bHnd&0ϦwOψ5c (DHsGԙ3W@ou.xw$N+)¦np; kV_d V6ZpL}af?B5^F㹕y@n%1}u, gAa*O[bS[kY#Xٛ,b{`XCXWgZ6 Rᣃ 7YzƩcR!jw,eR&lн!\(~#)磀>igzmOٙ98]r 0#IּvyE`8|"jǍrS2C*~Rّ,&u$sCc7KA_bDV2vN+]yIG?K][s,{ޟ\OkyIހ:,h^@4Du-PQLȉ|Ɇ1kDž _x0uYl U٤v5ۯ@`_)xOPY &'X(Rrv!7C/J!e-ʆ}=5'-+UM 0m$9Mz 4yغX&alQ[!rh :^צn ={ r` $h)2 ҹ|#F=BT_ 6E gǵcئ[DM !o"¢y%H;vR-s!Ȏہ%m6t *brۤtz^ͽ 0{^‰cyl&{pMW7'Y'Л&ML#jd>j?&k/gx_ʂB/U}JXK]Pֻ¡#?W.XӨGf{))%ЩX& .D$/(>im8J45#8LK=ǤޛubUvIs,e鴪TÁrO' 70bw՝d:RtB9/^fjI~+3VUn1;$C VJ? eFT-H^b]%9ۨX@!5ҷ.Hġ="[1 ?*P4bf*fkZMGQFM{ yͩ@V K$٨ A_PisjZK݇2٨ј|X%o1,oCHoóc WjF2@ 17Vzw .@~ލ'rTSkL3d@O鐷>n>e[ 4$h!1Ł6R+û#zA5][bG%&g#yqlhW ?~wO}x2O4C%c2й@uANlw=$z eE6`{m)yö &'pѡ<$#{_uǁp&prY5\~$Չ xNu^e}סPgn5QuJ屸o{Tu4⛅@s{zyEBR>NG+ s-X bW;zFllK+/F2zhrG C`RD$~DZiǏYݶHU괹nٮCsv/혰v[ṚRh)Zt|3pd|UTi%߀?]_=jM7r2A}Ҵz0f<Ę^TOQv"08XMTcNbO1A9#G4ef^Q~SF:56BÕt)_otiކwnGP&7:Sst. 罴* w,j{X ,<@ƘJGKt8AfqTar6t ."4 x0Ɂ:= *ybck^`=o8DE7(NM]l֧R< :2>[=Ѵe{^U` U\9ɯ*#؂@H4QG[aT%ڰwm `A jk9-L)d,d&q%χ\4#nM) "If*c2$w"/r{v1˖K&'~4TO |:2@4A7ަbrvB1eÿ*`'ݪmDO+:R' _6bHK8Bʴ`*LD1|!Я>6=Xf4|t%E=}z"fK('qKVm2D+6-299$ʻ*$y٠G#k=U | Ζ0, .H'@@QC\մmogm"kd ҬiTtALޘ> d)/÷Tt%)ȯ u7)JAmjy9&!O *>V^bhE!ؾ!Tᶍ%VatrsB"iB٣(5&8:N'|:,eigW qV&=QK{,w9bq;jXh_ȱUSԙtfs96k Q.&%u+ǻ7,;BM~:>neZo<8xqu"X$.)LHQ3WTɬj=Xq p;%z%̵DZ0*uTqssHؑeiPF] g=UV*[}\ -SQռOx3x-2kd94/[ȖBM=;:zE{d>ǐ܎.$f`So5(hOo>8UdC+ɩ_4De󼾶Vӆ T퍪 {&U>/64I 󊽕o43\f+վk/ L1aFkqnr5jP,Bg#*_dCu=e5I{ ]Ⱦ"0kFS*ufquDmp,UEr8)cmjY.x%O7.>j4nͩ@v I~sI_B S̀/>^rz빕4ϵbn9btcԇ2<7.呾 $5`x!+\o8.<2%*㸞E\F8 ͫzJS1*1ݨ ΎΏ!gP<:8|ktZX4@Y r> 8Yf?L%5h՟>l"4GgU#|[)ܤA\6[*gR΅HIH;bb]t iHHj@Cv?3Փ ӅW=oL%̩Dd>XՂ۞i^ 7\G9l'ȂbN ǔ=7#OE چX--R%ivx[BX#ua~C\$ 6y\ 'L6JvϵPRetJT6Վbos~.v;p=4`4~oz@!c8u@p6cևKo#I̍NVp _Y)pÆSWgm sn&j?OCsOӊspɾ8'd4{n<ֵp%_Ջs!َͥP P /vϡyQ^C?ùڝBۿ^1NTcR~2-HMΠ|8gi+z^ɮ ՆA +?:nðȁEK.os3FLQT#\H2?ȆN'3drDIbɂ$Ύz#[ւ|Ѱ|O`a-6`ƭ2c?U>s=a:־Y@kmK<78A1, |XLr^[2.knbCJ U>/%GdJe]n@ցFt=k8촯AΉy>f\]X_gYV~AcѶn fo .bBw^ϳ8@j-h+uK85bu%CSclCQZRc61'}t-@،Ɩ"Zm~}f2A8/6Rt~bk"_",-t$??6~pzVrrVaQǟYž]sVӀSӅ){,Ý )g|q4FҾVL0!k(ǿ=n"皧+QF)^' vHhwe96kD\g(~.|Zk0hSwye•PT^ڼY$R[ME5SP+zې11HSh\:18uZ yK[bw[/+h1ћFf~>x_8< Fu( HR?<茏AXWRZ*lSlH 8a$Ն&z;'T^= 6R14Z7TZ?la ٱG/nd!w }1:#\ڴ'Qj1!Ջo2K,LD+ʬU17 ´ L %LkUiO>k]&96oݑ *%5F E3!T;S:1VT>V˫+h™IS%+{;>ҹ^ٚȐre˸E7hlC WHBK[$1AE2㯰rLbzjn&8ԢGqjV@0VIjmlmrqWF#f>jq/`)FeIG NVeW_R Xp"P/UfZ; GE0(]VĘ`Nr߶Sjǧ ekx`,֖CɥK1*TAbNkA\#E+}EP=Hjۨ_#`Yc% j,NSn3yUt0x9V))%v& RQ|!lfV^D4E_-m ƐK\ʙVM \ݢ2g(9yyA vA@(-T޺-LlX 7k+sQHc%A00&zr^;cycs}2KITwj Ai8]y`MtؠFEtN=ҝ əHbǸ'wg6MH蹥C͂kU*#K$2aP&۰8mR/10C%7߯Ruhr¥f9 .z$l҉.Ƞo4{TUUnLhh7>wwK340_&H)q. 8T&o,xc]bFl@"3, (HFurX+Xa>)Nc{\ o 573Ҋ`}evEB ςj8I{*}umrNUJ]SĚ\ h榰f4'sŠ[bd1N<Ƴ=^x!x@f8u\Xpn͈krV%<'.RPVCldl-!=G="%cAR~<_p&Qďx:."#E5pPZ5{D-<^*"l0[\:xxf Puܱԅ7ksBtu ?eK$i_?P6ƍ۹ .t,#kVÆQh^Y "#h P_3ˎ\RT1a J ؟Au~SRs;!S$Ee >()&GІ k: 96f|%Sn a£<CQwB|Kty}O,1wú{8载{_;ޏRld ] 'Gcvg+J[r`nvlO/xD<{d:lr$C#xjE$GTu:vnx[U&Pc HQ-`|gBxQ6σZW`@sL}E\!L3dW|(5"e@H\c0̷JTǠUʹΉw`GBɑ6qgC=]Kh#vGi6}pE4b9A)d:i}{[w7vts-P}e˲\,jr%'핆5cD,ȗ[ܜ3 "{ /"bK.B[ +SeCw3KtTYu.yP׻5$ xYxPu#Z.J4n.JσC[U#IHwjŘ 5WV 㮡͵\8czYL)0 *SvPz'@:]{l5 ?-ͽO4␹1SX|ɏ?GT9'jZt#;+ 2ލá5X18z{I}v֤[ ܾL3 rg@z(e9B"OA6q*@N/,x叁AI2NOG" 7GQQY3d| ߫0I>H m2{"B؟)q/sQ{YeIav;W~tMP;7fpA@ȳpaiaX3[G]\݌d݇`enFmӺo}7/WNUpវL{ ̒Zrٷ#sq8P%Ajd8$4J-YYhe+(c/qɷ&לDđXfѱ?ۮ}ٔy|. 'ao~uAf\#8{ac.d=~1l2qE05i}MU"klO•oޔz5/]T6aiqHb!i#1RQgT_xUKgv$)n#_ӕ eg~rV} az?ҋY- ~RvbA $PIfN4`},ZʉRDj1B hㆥ>Fj _ < Q0?rmz6&2(' b"@w"=\w.}NgXx}#T+{GRB!xh#osT~7>h{SXrWJI]u;?.[2ډ2k#)UM,bCeA3Qfc*GҤp!w-NeY qrLv^'XNBC 0v#oñg ()ɤreIuۛwl':Sd5v nHXDrPPfTMœ.o[-<r2pytA5? m_?\"ggucxhxce?P A^J_C$X6h6&<0sکI{".`X*6&ۀP Q/՗78(^4=X%]t!  nt2Nۆ݇^|utI:})yIE5)GUHY Zx͙C5Bv1۱<s\wȵj1ƼI33qsu.r3\B\ '1!8*&Vh F٤0Ė>Nϓrh Eߦ.M/{e2!:+!/fh44J^cNyhrZ@+U^{y*zf.lN櫋T.!C|mc:ak@:!zPˁJ*km gu<<_Z+KݫKu3pGm$2=gȑ3dǜ/6j'i&jϿ`w3&J~ך ,F,"Kz8uUHTݹA-dmfq: 4I՜tWgK+G *qФd hbD!Xd (jݿzgE}58b/x,S"fߖ kp0.! j)"iW\{Qw W~)_kLˎ:b7!_֞S@B:EYkB^"62e! [J1B#c.Ƈ(V wN# Cۋ,a]fϵkG "iJaMLel3P4XN1Yd3%j%s'?;xe.ʼnC`=]kp Lj{v5L$OTyiPڝ9@ > G*eaota V(9 nS%Kha|| yl87@tOﵯWFiE/>$dYꇫuA464CORd0?:ZJl+I+CWxWF:7Bn@D.!!dƪ?"}*TKՔ d|ޡ J{dPF; ܪh:  ܤ\~S/\R} iGTCbFKE@JM1%#DžMP`_?|uFwHF9 B$leC$RF/Sg G'eCӺ =T?Ԙ%0ϰW[mUNA}TUr0dG"%ʯɃNdcoBMըԚZ 2 @奈lK՗6EC샕?v2;3Gx_Wf|f>ŵszBJi .k<_X>Xԛ:+u/8(J̣cJ y! ws"Oz`!.5 fMx!/vK+bbYNGO%L8n Ãu;6g”ݟͼ,&U~cx ѵqu-(S%ΐnAa'ptC5^ =6?Ye̴{\6h e<^,wFHeJ)5:ڰ|T1~H~}joWэb|)bС"` ӌl!=](d} >à X.r!kԳT B`:l­YW&RA%,9K݊=f:s\ۂ֡ n;YC_z)8BK_Z:Sv$ g5`OaΉ/K3B\,@ߙA_7?$ MTʦ ,`B]уuHntR[~=܂Tg;'(,r&  jd1 EraG-to3an#1ܠgػ]|\ fg44X<ެ P q-/^ua])xV˫TXOj|k4sLv>mU=0eGL9Q`ϒgCEmDd|aPkwtNS4(YYPh0\X'd v1L"6C]!aQQXxBY03]KG'^ %qkJްY^b/X WG6t+p(IMʚN>: 0dc&0H_Y 75s`e0,. H6'Tx I]M(wȅg3:&3QM)y⟅-{h!y}wnv)Ǫމ^R-BF@{G)<"-{m;osAo#w}=@h9td(P! \mRH`1Ʉ!?n0F?*Jve\%Cs+Ԅ uO[`<V)<ʕ6LȟV2/|E]Y߿ _&Qa ŋ[c.WnPRGkhE v"*Ί'>1݆Q6O#?Z|cjo>i=k(bL:X$X>^S /o0TY<GR[]O Yh%6եM/}^v/eb7$6 Gx6JM X{-Sw7;c.쫾tnY°4!lʧC , F:p>]ZvysR⦖*P[泒Chٌg&G/&r8o) L`geFD7wGТW0]kkؔΩCURy"_+$$]F*:[CӢI9p na8Sx4K xg9, ju m R/G aba#ͳ}/Wql\y~q`qVm^#T>,YLktq`_ȑrb,FiO}m)_ġ)n: Ko?aAd]A#3= %I~O. )3eL~q=k]q4֘#& 9d/L&圩Lw> *, D|h9Z/n 'V|?Q˿@ėJ6ΐ|ЫTzO։sa\9͠;>5@1NHx~+s|H EcRg5~?V.l_=Dp|1,,c 9\>˪57jXu~ ty4=΀1.Yׄ}S !y-]V-n!2) >cr( +^A{L.`I<'.f%ԙo+xZMW|;52Ow0Feg;H󔣘'1J'~۳tмFz+w;k1%K܏w~rr9RC1} V!8BDx*Ae|4L K$+|In G#I"/t`ϥD} U3sy5/Yu}@$$~3WME+_@^"#D9n孔[;ܘ;^_kt'Mur\@`-Qj<7P/DNC EiK^wtf}0F wPpR5D%tbybk>֩m^Z|, C^0g@'w3Kuoo(\.N;`1&e,X1(o 2s:obM)t3%$lr4!jI3eLkKy#ۜa1.?'075h!KQj|4s`,lC5wL-T |nd$0lEC&1=(a云帾,$n-ҥP" 5\3_&X V{,xVḿf^1LFPGX@h1(m$W!ӹs)叆\rv78)Z=dBN>iI7!*`3]˪۳ /)lpMwW ]mfk*ic!-nK ф&ޛP}8pMS8+KrA-Do3g{ qvΗkʚ]2{$Jlgh] ,)Vm_w i!3a)#y:2ڧ\bftE2${^f FIc45"$֋]kA8S3:[!$LR}WZl_)Xi;Nҹmײ4bl-@_&i!j-ؕaQHV|W[xw[t-+I/SVn5h\xv72M\S0m *)A"Oja(a*`+rx;Er`pMpVte Y3FjL(Jеj4pr z4qa-?**;"`?sK%i KGӶj3~bt.\BiьIy?TH6=e-GK0R.Lz==y8_vׯFV3-B >x.-T:x#@2 pf6S{o=1{SԲTDg!T@DZYߨng%V#<{C*Er.)-<pN]2aq؁ŒOR,?A_)g ߩ\*%m*3D}:&h  *tdBa=5SO} OӇ&2%otYbعoG]Tt 0DNi)HBG`Vί Pu8h1}=D8p!OדfLź}3m4`U =tf oDkIe/sY#n@b?&#񼎟Y5`9Ef,|KX%s#KM!of;,ploHdN`7njx*V-'K(b~N

K f: f60ρX.;KBU~mrs:SڔW 3,Q#, VJiL3}4 \W\- ҥkQp9|ax~Υ2앉 {I|U{s [r ;Ajs  9&d6KR=os%7 h[܇f je} 'Ih@Zkrr " //Q!}5 gKnU$A6ӫe#cwCDCȄrQ=zϥ><00`[|HB nU;"옰1s\}?-b4Gp <+^.MnӈZra0AȤL1S0,#GoΔ jr.\q?Sya4XXc~A0ΈAE_4J^.(\AJE)* , Rjc H;3P!> N!cʧD7`Lu{$|~J)#yݻ<.6@-tAПqIPD-?v0K{)pEe bi }~;R|]Pce1Taw AρQvOL 06RtTMif$Հ$p^ K]myFuiXpPX3aŃ#þ׈nQqQn/qEqm# n$b=>2oGLD[zs+j zܲ6Xx$B. <q}N]hZz\t:(}!G4b"+j*yմDΕ "h L\ ]l8rB!8]Y2^ 5T(聼C'b]5xN9_RQ}`G6,OLg2W(偦*QAYM@+ UG=x( ;ܭzh-Ba XLhsSU/$»>dɣ*QH^nX[x?G؞ nvBl~Jxk;^6#2}׿JX(c!u_~;BpTe]g^cL>Ѻcg3N;c>LR\0%:{k9eC_w튭s#R~RbX|u޿ȲYHXZ:&d16+rU|nǧFٯuu:ҙg9B9Qt& [;(VV\9>xٓo޲0KCUx2ۥ|nM*[~Ku$DZ݉IW&iZH"M6Xf,ouTz?.lVُr~TH+gX>nq#cP~֌?Hx=l]oyUuQh)q-4^D0qQ`+uvմI,N_SHJHK+d"AA[J6ݹ[RcA5lCImI%/1pq>-r5E,50;=vfF\{Jꍹ=N]|eU3˦80d{I"X8;Q.%;%!+qz7̜! ;EtTI;vWl.I*e-Uξ,Lfَt%bAF`kM4̇(+vAE I_fv'09b#+!29Qw7a3iKdԡ@RW;ln?*KFBW3KCCgk>fETOfL~s$kR~y31s,+x _| 9(7T ̱ 2;Ó a>)' 4?b6ȚJM9%>]D?AI^B00&RۍBbnMO3UbKUڹAjA- Q>oc67N0;zBiiH$'ăhc2aBs#|iN6w#gv+'Р/nLؙ9$k)FmH훏HFH4ʤ$h<@f4~ lӄZG-5.* 2`Ieud,*Bx+r+* ѻzO"Y6{sm$(1mD[ZGF5oNtR6DR=$g<:B2{%q A?bF`EoM)ܣ00v9\|GGY?&lx%dg&a-w!IN+ʸ}D )j ,̂"l6CwWo1uj|;(Eݕ,ENN`Hy;R kf=9H&g҅&trA!XIQq/t6֮ԫ^?4-2[)h0mgdUdpNJw*3S5 Nkz=Xg"(fw=ħ' 9ĹIo$YcWwƍH42YH3}ψxNovqTMǷ1ʶr !SA#7Xb}?]Š)4։bTܛ雺jcR>-^[Ǣ&F>'xq$-G QZ{0c=66:=y{]1'seëU&n,8os4ZDKRuU?UF yQD\N{ pĠ^wqGr \w2f*-+5aŨ| ^lާ ۥFܥ(.j՘o/* ` |e\!6K%>H.O$63N6cUhF ,BU Dc 15sOWFrC=q~9`)g 㲵rqg*>Wj|Xk5P,+i("vE 5Y{~jp]D1Ɇr'x ><ѷPXbD $qO8͟|ӍwUX%4n ץ9_8,xQ⼵hi֞.[PMFN'n*i ;m/~NE.UCzvzkOPV<EUMA"m./ 2<L괗  wm^۱xsI\c!p{װ/tyJi E9\ھLniB9w6F6fl#f;p ~O%+ 81NH6? JyFV;v٢<2LycS!+=ʠ'1TL`DM^j=BCz+) ?O]oEj&ܹՌRf H;FdpA.tRH|(mb]:~`M7 wZc̎ A BiC3{*;P+1GD" ǰKlc4$>i}2ԫ!g0z[D_d-Q[LE y٤/%=zPQLV$T#n4) (3WQa  ޳z<iA iE#ˏA $hU__/) H|SC˱L[12I:mK|֎îaPzE&Uu N`LM3`k6 "%b="= ]rπo{jgZߘZ,$nGƺ"QF<7ݏKo` )ca$Z6g} PdWslu&r kl PaӉ$vZ:rD|NCӉǦ3[=Qp Cr RLjբdU,t!7|Ht(44!jn}{ o@Y<{¥3#Nd'ΑUSRH7 "(K0^KO@'Ukdw=Xn˚FȮ Kz9@noGC`_0s cPٹ. }-֫PP/4gNF^L6ڏtlŞ4ֲWD0QT-jNX] ~ySZM͊`^A6;?4Q{Z/-?eYzJ(5& 7\iǖ{PaV\Z9Vzɿ\f㺝]:PnK jdnCz~Z@5Zp</qfBveitJE _ LL\`|:Јo38̽ڝnQ-?_ԺԿ[<{6 +[,Sqhc  Ź%Fix\Ƽw R6WO::~ @5[|=4RBFB?·0XlRPz0#oOOܞ\?y(6cfi/[wj*xF@hIơz'>Kɬ&QܔC"'N3H"5Er!1( ʀˢv8/]܀ u%nS&N嵬VPj U:3,M#Ȗa wWRmp7? :F<1Si+\ m)mК}4oqһ=7L׺ҭɤ@UIRgXL8zi5̐_ը"=bzPڮ>>eۦkG7= } y-+7JVUx'j ~ZA.spjXMި@Y=# H(f8<^ .F+Iv$ N 8u[ɞ7ޭ֟qԙY uua D,AKۜͦ䄧0&&5hCrd(&,֮R8Dc $&:"J'h%)*wyQ5sH Ci*wBm[rrl !\(l`$s8ޛFX kc8jx$=n1niqB*ΫP0M-VڮW2vAI-&fM%T{)/o2b5񈟷3`&Z&ѽ 7)j7̶)ǥi\ABJbriX7oXX-*iHpm*)Ϭzwg*ƯaB{ %'/ fIa`P"bY-FQy 2c-=4d1=*QV0bT4wn٥pn.wI%tfbceYĐBThu;CܴBj$Ac9f*ӆߢ^]ݑA@|@)8˨LzDSΎk#ŤiD=%Tm]3udE}U/µLڥ)!hpR5k#bpO mb4gJy (IZV̒,+5ְӰk1OHT,t}'l y\+UL[_H"ՇTmw M"^rbD njzi*Z$0@٥u`pt@ *iOvc滢[R$U9+/7A#91G5nód8X$D̐!}# kD'hdrP(: OmSQ(\CNolCk Vg#70tW~Z#uq ]Mh:܆ROGSp0l! s'$2b\>0<@z.>1G9$zN)׊y># IƳU1#; .ڻ0 ΣT楘:"ϨB%z@sFi}O0SZ;CښǍy];I@a}d$g*T\l#~Ow{}A-_fg ,eY@4 #ː[RI\6՞F*TS e\n5]^gwϖ1`"=#BfQ_ZRF_al۱=zwOOi:Tq\O) dMerLI§Pk|$:UiHЧU1ӷ= '~ <^P!/e /.N 6>eq`r#{~X&U's D.Y#7e~;M??LZѮeWrVg "1hm1^x _XQ߹*ٷwnpt'GKI)TU k/q--T|}G,un `,h֧eMVBdwwI;g51258j ٛ4=\z׷=w1f?JT7MVp9y0PX҈. 2;!.Ϝ'޵<= -_[DzȺaXtb^V:Bs 眜4˧ц\ -QN:yj޳0`K1MhBS߷^b.POS%Bj'ž3xsЦ*GMPǖa :'5vۄs@^{m# ϝD)2S=5p'I멿S4f;vG@oy`IΛcp ҊN_IHe<-_FZaֳ#bƣY8jU d1x!\xjoZP,]Xrt)jjC uZ_*FG;=93h作b0g tP'_i-q z}&BIw=j!v4IGWel4`8ovRHTZv8CG<% ,w c5Þ>ka?1Ob] Nܐ俿u%ӑݬldDe,>Vɵ`]{'!A~Y[u=n81qJ45tSN,kAO.'J@b.MftuE8Cګ ReɌ.5V^Zk nԜrː3M׈/;J9'IB>&dL\m>+ $t),DsKteK{骩g/mܓDa`&Ԕ %+ql6m>cIgPqLIcZg]Mpn U:/[x כR>mL= ژ!{ԾyH"ǎc)p%@C'B4?awK[EL(t-Zo ehV a\[@bށR_ `ȃB5SKz-oC9uEb(2lYqC$:/yFo|ȏvo%WFsnm`6*I D5c R! G@q߉Jj0${c7o).dm)eE׭R1BBHkW pwg zݑhrc VՔ[J7$,m؆s8}\c-%//- 'mONK߽L8̍9HAP5Q7P0,B[EBRw1sT=6=M1ԫ>lҝDŽp<{avpXF[V$`]KJThD<ǒD^T1cu՟ucP+_mq>r,(9gYPu|'a4Ժ I8|C +:ӾgE]fhI1;iHд"ԗtt{qX5xRAp W2k? Sq PE?EUc!_Yhiiə5H6ڭeG3$T,֡ 3|Ud D .= {6jvr"fVU= w;%"1drvSKqBA nVF.r'ټqJ]!=8ZEAeb;-s%3pIⷆn8M8dY!ufEk[),&fK؄MDFZ5<8[C~TZKUGHN:EF0nf15[z3otk[bԖS+g.8K~ ͥ6+>;ELwY.ksPk*8=mWJv@1j|~(7GSh24z_NIl,`IA7+o1#<5vhPJV<*z\!P){{uB?,MX*xr'@߬ô Wc'A-dG.#)G>ɸ^V)\"G*c ɒ/tpm|1z!jb~Ǹ$'W^j/%tNMff'z´%5Q6%S0#]xZ3 VtB`Hw<-y{5yT .<)cSk/6&X4#*. 6B`۹~=^xeH(1 THy(&z%_w{n"O`-!E*mĆY9օxȣ[ߘKm<pO +U wОWګWc| ޢ ~0gȌy AaR͉8(f)A",NUk_~`%"mOzA}8.L /؎10!ސy\--,Z^u@Xicb|M^{jtc4yͻsA^1+'xMM"tfTuy>:ꍬ 1ʎH=Ŏ+CFnx5q#wL'kTp}/׬F#iu1(L-:ch`BkC"[a`RO XɘKZe)/UNq9[۾N`aQR ԃ>-lx!PLϑhcN>V~o*xxZfTԈpr/wҭ9[D2Ź܁)boR^PnHA'=Z~u0uO3PV,.s FG:DAPQj4`8-0`6צdmziyчQbE7U1Bd~uBÄIR& E$~ ?g2mg|*9\wz(4sN @~ 6_'2/*Vɬ/P59f9x@K#}uV+\6L r8o@r*^zɼyiEK'OĠ 2. \Y)z?9<yNN_乕긏:Z8|etګ@!_H3'msTpUű:"@t!bǯ݁z욆*,ց?dLs c\|!qoc%5y/96v,xޗ ](n986,v:iѨֿOf&[e?Hh`Y ]MLͮpZ"L(Q%1kijh/ sEL퇓ÚQ (Ƿ?]_(.&˽ yIj3ԡ[=fL+a'uEFr3gUEE52΢߷ w<|ԔY!"KTt%ƧlW7էGpW7$lƳve,Et%A=? 7cQ뱊`ݒ# :\89cJsʶNo'h8ԴxJ$f();'du_Ur)7!od ,I= ˵l[ /SZE\m}IQEM*JY#2ʲ4 *q:i~, OrݷĀ)ţѭnZkvRy#f9Gb]VBߟ0_,g;Wn4vb}}ϸQ+ޕ&z0 iFU~!ܩKEvQd@:Jӹ1"wq>{awh\k^jH9ǮIO6{tf-qN0\dtW}\f̢,kHQyAiQe[5Qu]kT`lKcZx'|׃=5#̘cBx8QVY?%=M ذuPqbDUn dnz7GmU<aX: ގY1t"/\+ jr*PE឵yM!>6 (gd )XȔ8#Zsp{8`oFƳ Uۜ‡e\Fn34I۔N Mb(!_tR Ny.eTOƉ+\zԭ{O<+_é֯Ӗ uiزBWu*h#1@5U|ew <J,;QPY k9k?] S2pyq *j\"%3OpWl\꛽Z3N]6y*^_#y`V(BEѦd9#2XU(*=s]eE z $8Bv WTHtp.,ܠZЇ tTWno2=U#V%!>ዛ">gyF4އLpeqN^A3o %g@r'撿*]ǔڛHuzrCes<+JVRD>zR qoИNyOFAfWu=pvWٞښ='{J;+hjܹ|2X+QP"u%^y Dz3.߰fQP_9ܰL%-o-!aڕjLw2C{44,pڸ%\Xow,~|Y VjT~_eӜolmD|ݬiϢ0.oxWB^{%/9Sї:2Tw so> x4͢GbR7٘4kMy`w.Xr$|Mjv Px`IIWrYi^g/FL@m=MT|]W)1V^syBD.Kaޖ`W ~o1VNWO> s|~ ĊȗޘUMhO^BQtE˻Rif9sz$Tm\4C'{,K=u#Fk{͝qV-rJ  @)X"Ƃ_RwlB=Rv %\>4QAIkk #۞׆Q2t Q:Gӷ&KNVڥomW;n:f|sX)ave4egov+eywFUWi[R4;B߇ crkPa 3pμ2apG_,Ox+ EaI~etؐ"c564:Di^vaFC1̸?0Tqvb]&%=AH]o{kՎXBOï&Дو`j<ɘSgʜ.IO,2iRg]!S|{Ռ׷ᬼh DR\i4Uv~F #$|ђqBG3/=L1 bS9|e0OI!4 J5yJ!ZF3؎v3Q|{h'FU?I3B ʴDMOطUAF"X*^oq_]Jd,WS-3dqNSOs{eDOAi 8 C}[@6DbT7*6ZEX)˶c kÍb}Ri#a1$z^G@qٵڄB/F. \zA VkjUWEpY8{'TF֔KB7ߩFh7t㫝$ҫt¦@1p Qn3́k;Q Q5gQD5 R:rVd{|(2TL[PQ.tRJ)Ӵ}ֆ ௝lzj^%cU.ɒT6O gmʫեLV{@qY\d69lsR[ȉ#lC/npxk{D6'e&I`=?A J54{?bG-odD<˄?ą3ɖMU8>xK#mΒ{7nYA9C OoPʖQ'}@"Yipۏ, :%~^eU#s@UzdgXjbREڱX䞁Yc/5ωFl)E}A\%)P (uV3q#{B#!"۠C@]Vٸr]V{2}kI+qZw0_X.:`FjT _֌4(Z& u1H9Eo FsmzsYHZrx|qs:rK'U2sZk&9=Q/"wa \ۤ/T X-%񞑿`od5I~/s= }2w՟4zbKchCf8gj3̍1_ ``NdkaفꭻJL^(,?8qpy1*偮# j`Y;>pX9hh(xK$<)a=Q /ŚHrQ[?z#<~a7""j M$\qGtBU}{|GAp@V9N;GM䛦hL*'=u;0~fozEng8*J6 g9$ޙ֢yHOu6}^߁auy~8<( :"@d7n2i?^]N's|r(d[YL|NP 54;ZC1#'ψZZ-fjTі :"$.=2]gJeHȐU_IBϸ6Et_ڱMI_|Ls-iQ/iDʾTXDh^wO˼xZ;;!Fg=m<\:SDzne,&NY-Ь&%Qe\aV6Wft^W!/&m:'ϺOA?Ib VIp;w)Z8&uNfn4/6}Lq@؎Cb<;kJ̢3կƝw4{T{^aQg!)v9YR?AF]K2 Bb1 %ٓGsVP"){I.2٨8ԁTM<2+\b t^Ĝ~ Š^/mꨤnQ#7t)(_KkDA 뫦9hГAY^^X"ND|- oD REԠ?H^@Ï3v]X E}yx+1OfEk)pm+ٸsBTTCLX' dA(uY?T]qeF^1ݍo!2&ŘQ!EL| 9y}]]Nh0Z=퓇ێpRnl妻!5ع+SFjk~xYu%A{'<'(R꨸VyH=;=*cJei3ƈK&iE/Ų;PuUY1tG8o)| buZBդ&e 3mk+BU^_~Ⱦ: bfʹiY?½ffK>cDFKS@eF*L ^فvx4ɛdCU[ʒDBW*\nfI?$D|Ru~r澪l3SM͓S}/:!CeEez+PRT*F)۴aR_E-GaXz{*ƞ .~jsÌ Ȼ?<(#wХC}/'M +t C>Ef zHΊ{(mܬbHcs΁n=Q)yZX*e* 2^y7tDq{위do(}4k}%ʋ jg -dbPvƴw-<~$X}746mkяsjw[`nGW Cl>aVВ ܷ@k2vVQ?kQ`i s6O#9HtRÄK$ +Q0"횠lc]ctRWO#hx`U4ka9+,7CYQz<l;#ZPJ12u8fQ"Н)Pɰ Udl%ȝv,|7Dƻ9D&U׊Rj͟*geܸ@b a;OHTI<@$r=sc<)oҽBڑcmf٭k\%e9.<#AH}>ldI!#XWAO R VYr6i#*dw+;[KXo12[":;ۑ-vGHDdC)x2f'7M>.fmdPk,yFiAV ي@ _V?%[+ Z@o3 ;sP`Y_ݤ2݊>qDE>2rO* AqΫSmB= ЈT4?Z};12& cQuE1Qܤ\[IhuNeE]K|z䆒 +ZCk86nj-}j.gr܁"M5 dSR)QʷG?N eV ROkL_:N$:Ѝ|0\i(bn. jb,1d[0q°CZ{|(r)-ŧ;N`$f''2*_IX7|g$|YaxVBbxV2_u(AZhSg)> N™P̥ppɈFբ,K0vN>q.BD[pf`k+CZ6pTcYJSoITu훂q l~ZjRs_owos8x=0G`YRRsH$d矨~6)pB@I;ʺx2F '$$sU$j[ ?^ b[fb!٫vCaAa V()$NM97l]^ȃلH m(]dddx$(<+.]tJϠoXױc{VL_j^S8.'H!c=`yRBh ɗk&}@+Mز.VmĦc5'TBV cҳ;Fi|YTjpYCvdúF{B<#qdDzU*!_oqdի e3aV!?G :'Sz9`Ѷ{?ݻ.o`/_㰁F;c>%7;)lƎv  a+ĨЩ O*8N̕7_P /&dΩv5qicKVx"DrhaPJ b! Jwt|iatf9*YN0yU(b,";?Qw5 S8,5A%H.@>~䱚J;T\9N5`c }&PVfF.ZB۸"+( ϺeR\?i5"03z?qe;&bSmo4Oykl䖧q { <ʟ<],,]/%C ?wiDt|L7L^t9DQ(}*E5&+aݛvr-%P.pcj<&QLA'h"Qg}g9)sd@dӼ+zoYD.^jTViƃY *+fJulIeaC @}4C@/=m4= t gq`NDGi,+l4jZl|'nf4= ) ^A1k8g݌+v4?~69<lPUrL=&)Bc10v{lyeYHesG iACy+TyB`YaYٍ7\>-_g_$S8hd5cE(Կ'2=>4Qy|Wf\Ӄ1܃J-:/פIZJ:hE=8`][:OptdSSidD$zn IEu IW`>wׯްXoޒvkX/z:}NBjk as>[ ;OO6e09[КrsKuS9)lW ?g}QCob1ׂ?cJ٘6z.Iu0 %vܟOFoQ 7Ut+Hp#;|$͔mG v?aG;1ps+A"m { 0=^V+^/2YX^ŸƋ' 7?ݘvRQzY>2YPǠb,(5⎚p ec$i댣Mwr"?Vf Evo]h>|sx@MJ3;=֊8Kː9z:yN+пBu B}9g>"RA5pI_f~Id3l7$9}O+ldBnB'B㙄e=\7ȆS]QK;a'槆R0X^f]p PuAr3S&,` @+ɽJ5)6/L֊(y$a8kmFDך%8HCZb 18 t)yLnzʉuJU mw~|kN-ADvY B'Fp+bzٸް917_oڴE-I%f'>}L7.{6,Q{rew`dIr[x'hy[x4 ӆitƜȥdfJ[.GYdX؁LU:&~jm5G1MϔȒP=kqxQY wHAJ}`B,L,Ic3YƷRB+DQFIiO t\՚Oi)#/wd$-ry<`A_z3W-IR, 7Gb~%*|Dz듵 UX_6)h RN;LA{#mA> TgYR$^.C", ;+a,H̞jx$zWu2Lo*kKmKs 7^k+2p r(‡Wu>8Ti=u- 8!f8*tnr6uɲT'{ܯ ʖSgj׻dfWzb1fwݰ&G/x@-Q?m ,EKIPqWokNfX%<(!H6c ṣ:CAg /ye:t'Ю]/]k q6Ho{ rd $-4|T| voFS2-xxke59hVt=ʫ#c%ho͢b|!fBnr:n]:<% n(SO8{h/*9N\]RQGWQ~ Jښ޷s} B}sx{qØԐ]vbqh m8  yjUh{xkftk }bU;{*&af&D3qYL-]@I*ӑo zr9hX?_P RK.38A37U}b$`,-[e9z.jUqrTEX:Q꼙^hV~M/$&,PBx1~L/|g>0GJye:WYaNs= Dt+k*z5X~19z rMtC~q7*\)CWEo%Ë_B~ :* ajsfcKl{~ *=y;cY| #Ng/ѯl >\|n?"~IYL; T"$nOS߹V9yg[/]+{Q  oPBnV(̝vٮX@\VeE*?NӲ-!W عA59q6̙DoIe%nMTz$7pȒxgWLd-u-&J#PڠZjO_P$qO=\nc )"#P&gs'<]ʹU[ e;čɥIhGi+^BApwG{qO9,L$2^#^ܚDZ[MJUcD] ~0!8>itDfe ͱVpC Q蛘+N:nĚsD*L]7&*2x;!>57>3jKuGI=\ 6O>Gp"%osㆩ1'Ex ,TO+v iKP5'*'^kGYK7h8ZliRukOգx/~ߵ!u\[eH$B,\b]\)PxqI#o#@‘za/4}CgvB![vLyE]'Z~ZTmҜ?8O0ϳFI߽r4oRRܑKylRǾ= vnwZ:` {!рA_{=?<_ ^qRMAC>HvOhwuz>7NAWݩ6atm4G7.&p$$*# cz8N6q0(c1SP 8 E~U)8ޱQuPLq‰HviJ׎:E.2uh@Ӄ#IK,z|,p:yz sI%,\ PĆ(=GHs-4۲Z*:@ ub;wWz[N)B dyKw?2H7J7 nF&)\R7RԴP̨ \D<&dĔ.iwYߑgqPxjABSUfS;FsW(ZGsgIXmeÄ"ԇ'r6%Ppfu`KZ OGʭp<,>kn1ǂJmy22uCaµ "oשmMxI4tuǺ1>vO) |fblr-,Y+ ^ *Wd6X##k2 N[b9ϝܛNK@V^fi?/cڜ\+#98KZpȯI@#d#AL2_+D"?G /G]hX$m;E`i܌ËԬ*Ϻn G @Ī;[^Yʳ[H\1%gnJ01T+ /։z @jsOC6ǘ'M @me):?%'37}$处ASZ)1zXu-qBS~MtU5wgFg:gkZ'aZn}|Α6JQ7}E~7 >(v v0TH OUo:3I`.Z"1N/F媦2e]["i;Xuhctbde iHnW).ۻ!Zm9bX}2wqk>⾅8yKVRnu6{ax[56[w;\/쬺%@ # VPkU&-yPVy#+U7ү)un:J,%pS *9+tu]-R@.D=G69 tP5KА\f ̒ӎҪ#I3\ldjwdR.@i_Q Xџ+8;5O*^(XH?Ԁ>eB 1z֊QENMsuw|TGzx?OW^)%+OZe 嵾>ӬO[f7w%5 C>41(Oo I~]l^dޓQiZ篫@f:-OK8| G2l-ڐ{Xʍt0y8lK`,082;5=Y&IGMtְ(f/7uDT*f]6Q'^ft9 V[xlc/1-\܁8շ!";f2Jq]󅳀3XLyʴAl:'%mѤ-.\_>SO|%`fHض4|eZ۝Yo\!C^[&bL><Rqoo"Kjwʼ^WKw.RkSr= hŦYˤ{qK'2+`}iWIe n"{)?TAM!V;3#I?:UVdDJϵavY>~KɦQ(YKFNznqpKk\Z'dnKzbrfe?MUadU\*Aʨ#ʦ4o;׭9YFzy(v&) a |9tØ$bwcP{p{lx4t2$ՊRk)VIfܦEW(P]Ϡq 2*97{_A$5!:i]z=z3ij*c;c~YyO~hƅ@e@e%}bf"tزNB\9'n< =ÿЪĉ!Y\\O{hv!>rvևxԵ#h`y_4Wu r0Mdr)`0+  xJFStglS(ONMU:TexA/hUmt4IEjw6 1$EaÕ*GHk_Y"uI[))Pmdlƕy ҏ )uff1O˧_3i{06v_)ԑe _8);ԟ:icL} 5+z)XR 'p&Z|@1Z$8m:bZKvڶp?kMۄTAJn+7~E؝([ep0AQ"9Fd`lC%jFf]SH!jL~x ¦ڪMY=ڪs^9*g%gdAƒqk+m%H 1V$n-!`hN@edP2N"cDxMf-/LQ$⇌'RI V\7=@KӞ$I}Bs ͬ%6ʭgs#>f6IHf ]s>~'NHB_ﯖFqgz ϗ3Ҫi+b *xDqgT8+okk@^ҽ)ƹ@t<%H8p)Vwlʵ5>i!YuDk~j!1 ֿx_4Npܚu>?|0K SWA g)4/. E)|aDj۔rќ@[oG_ +p<ȻF @ui eGs?##"j1s%97k?:\zɞ6k0.7)n B)zP)i]HCͫZTu+\}Es,.zz|^DP=_ס@_m\bsǕmv'&W(5t]FٰK If~Ȧۈu!2ۮg%Dn/YC?D͊BCs ?n%z!"y8Inn35 ΍rw V8=:벜%٧K)4jk{?`4Vy10u5cىBL7^"rq&pe. v$A!̈>P0b>R )RDRbR{d&3m \0zE?d ' Scz I.Mso&jqmj YafI-?CK Ũ (_)57 k{bJ*L&j0ɤL`5|}rtvF"G"gVf}/!|H8hY]zѸ*`yX- #R :ne}6;l~:Ȏ%ծ[H_*j+'W~W_/o0Q;ŕw{=`O Yd[6͚kHG'zq=T6 `G> Ab7KP7x=}rƧ Vu NTo]n+}$ l`^SuC>,4ԫb"mRd[$kTxu h:<1H!ϖt9CЄ%Mu:Q'n"5۩:o1a"r7O+&[sZKj`eF")xso%ς%_ \ ^5jy xn5*Պo7|ݿZd5`Jx\3P3Wޜ5Tid73ܸq_-O~Cz(; @̸jK> ܕm֡iUPhGVBmd#FBg>$zaM6u (JZlBpUQO7VP(}$&fzD' Ttm3cpn4w,c"tn. ԅo]HŧYҰ@s7jsLcAKd8x BB Jq`90?3E=#Gsv.ҙ简C/~䡹d<$ӈ(+ó>!2y&CEXZ+>s{D/ΥG3RIZ 6v0rd9pOSn-( AIg?ծ!:~2LqeyU󭇁;q,q\'ƔGbXdKxsd7i hw6$^bnx^BTA\]\L\mZz1x)梕zn,l{80@؝fS^l~Xi8`Md;h・X$DQR*tE,|t\@JcnXZ֫C<[Ean#ȋQWPfI=ڏa␗/l-j0{ܒӬ w⦅7y3, kp RĮ*1'Ifo+u?^V< -9B j!o4FHEc(,vᔫsw!(uuW;CZp@' &ѪvL/\.FvrΝ>jb6Qz4)sd2?-/I)籔3sj*Nl08wJQ2Ճsi6_Lm vKuH5rr+'gza|=H SJo* fM*N'4S JQ/X&)\CT/]Ԩ6EGHi."C3<չ2 #]cyӺJrJ< bR& fN+(ŲGl3+'2$ [lsi BbF|Gs$;|s.E숓c_t^jmNuXH$]:J[ĊpCD*;1VVw:rx4+NodۀJ1IڋT;:diG1@@&)4Q3lP$!\Y86#LMdA-4@sh(s+%ſgOEΘ3cppY_P 2D3~Vɀ 33 Q8¼_\R?=d79.xF5YԚϏ#*jX.Ht追X+FyG@~@7_nϣX$g{?,Cf!Y 4IR۟ ޔ<]mW9[k><ܦt9.f"3ו x4;Uw"(O#ytGXtYa޶d/M?C7H?p.4+ewܝUhMD{U1&-H7 <1l%ԋkųD?^Tvn8,kq[u ?H/-4~ תJJ8l*u-,hEL[V۱f^yx<#ѥTNjlH[}Cx~ Z:%[C,E#o& 1"D/~gGIEqbΌ3 u65|R Kڇ!&_42;$X.4.1 {P ຸb c􎹞}=?pr8V4 (=Ä}[6\\Nu_Pɛ>rKν/ 9xr:`亚w!fu_IahBe]Ҏnk{BC2Ba-1>sofmh1:(}[ns Mx 7"\&جuii?AO #ϼMAؕQmbmK"{ w$5"GiYFVBK<E畟zx=UЫZ.Pa\"=vXd'-{#"]O;SŐz.zr r\,Ḉg]0*Q}Xcz yUJ+އdNaE qW^1soj!>ݮE:"iBV //j'SƝެ"LV썏E,Q!\Fpŷq8q^}'C#;u&:M=ţh\V5ga7UG](8QIuKcjV$ok3g/+IP&jzITOnބG/>5a0 ;b5:'G \IC2;àrlӚvZV;8sCэd0 b)C"FVUnnRjpYcCG cHًAͭ4]';\ܛGL9ƶ=(Hvyd:2x^@eֱU@U!J?ӹ,{b>e7 ob1~. 7ZAU.;~_JˈrTm*5R^އ+"t 4jqh$(ø#I,Fƒz7SF<kWXDW {8Uf)P;YgЉ $P&rqiˮzBkJӌ+)!խx(WuEI3YiIat>zZ#I/G7M4}g[6޿HdMZ3UToW1PBΐ9WIR3_4] 2"7%RVF_q>);s޺?H}D;y\.6r=UVI$(Qk,` 8Y=yYI$ b*>V+chɲf`n2֬[ ҆dXt$H(ݸpD*BR*|>ɟ26AlEjJ׃udK1$x-62=&]6j[p$vQ[/B$95LN!Q/8 IZ!O1 _7`3D+tK2va)ίp!ΞLa3=iy>Ěx՛gy ;mшD'~L&t&+Q;Ydh8߂&~YW1{rIcs=R8lZ QU D0XS֞b }/FX}%n(e.U䠥4D0-_0:@Ы)Y#jhүR0^]P}ER.J' ri(Ӊt ,=I]"*L L=^9s>kBy QQA눥:>mgXoNڌw6j9P'zt +T_]$&c[ɤb4>{ov|jC"u_hl'"l ֋]t+'`%H0`Myfe|oyе19$wI:\gUј.%):X\ۓvk}sqş@]p>3vh+}ZkjVh~FK?fNLOJ+l(p%eg?ְG}ڋ6 FVA2=xiFMù/z}>IoObZS+5 m2i_U aY7&$E*erAbK=Vїm}Ww[صE~n4HTn9@si.эG(z?0#կAu-W pspg$Z=0I]"JfU_K ? h):&HGZ00KBe{LOS# *r O '/ئ$t厷U,`J"uߙ&[~b_jp{~!BrRB YF[98N|HRr0S7[f~o$O*xdӱ@ak7tAMݵNO!Zf>^]';$`7t|,b• JL>{`Di6i#Iq?~Z=Qbv{83j,gDh,SO^*:CSx;%sm&$ toRy5taZ u2ʑ?`#yM|rF3F-R(,v&{Cl, n=q3kAA/Jo\.ޙO>&M  봿7?!%KNw-H옰6hj ~e;!Bku8>uĭ\:Z; 8<6`sGg$y{vXRE9^}dN\0̞dݵ=Wxz\t&X7Ύɨt9RT6qw 5&!0ajDv(bp}i?*kU@Ӈ5 ȟ͔}ew5lLW$BLjw4}!kzS= Ȳ zhn3Q}lwiAI$-ɿ|,RgU+g%znB p\J*&'I6^;@ʨ\[6OH=yf&Y{]y淡ތ/燎 /(" 7³|AĥFc@<%wE(+z+"ŏu2`Sat17A+ED;e"tU^ 8mrՇ2d@jVA>o=ME0hX߬/3Lԉ!Шoya{K=)+s#%\uNmd1Mj=־XIS<{ "N'WB\;9mR(hҖ K]EVה< UF+2]xK,wfyԲc6*Pf]S 摼$)QԱatJF{7zC/%Fa E hu kSA^HЇSSuy(MQQovSʵI4fF'>/:Jս[>L&9tBl82t4?9)&\4a%&ׁP :vF|FusX jQfzQbΛy:#+/~nIYD"4tz7jiҢs+F:D3KL|ǚT`K*i"h ¯$Z0!l!hT[GԲ꘣JϬG|yLzYBE|["KAifQ5╚ku!M>Ay9`Ee)s9pA>y#G>{~YclTا-+ڍ RǯҚWnrC8M[Nx!y>{خi)tD(zO|ȷ]t+xIUQdc5K+th] @-\WQHդ߯{'@Һ]j:ߚg?bnF=1xOæ:ѡo]o]<#QIVJ%ڥ6{S8 [5mæ&Yy^q \FDWy%y~jO[5 V:8:3] m @/EU۲JGLFW($_`Xg] S bK4qh{QHWQo80[`%q~si ?䤄!ۆ("%:64nj+Cz.K-Ѳwa16ciU8Y,M;vbHfƟ%>7 <"3m Yz\٨"yv7ޮ ξ\dLg EI#+vJË/Op>[9x0d7H%2Rk{l1җх_`capC~r4|ie1mw7Hrpo))EFqK rYf܆ݶGr5Dj[69wbp )I7kmzPG{uF aBy8Fl 8/[58|MYvHL?ֲeCd5W;;NP^d-dO2EsȽC?IJ8u#"!Nl Cn=wakU{+VL$j^6~Aear&3*vw_q$V0Ս Q:*r9Iwmȑ&kY>Ob \GA9ˍ؞­&Rn/<,iN@P@9l8B*1LK޿ĚXӟ";{ߊ޳HrfG_h{q;ɯSppblJ.%;HOy5d a.'gp=NPw8%Vq <6 DxUCbYc; hd${bItfAȵ/0$'JOyƁFgrލ |Hb,{1~YCYW+X< l7%/kFOY1pr\<΅mxFYcX |}3ODComYg&(d"JngN0!Bl^xb#i ߼'णiweUm3 ؅J !U9aS3]q)NV<5k )pϫlKŕ_BEUq)\N瑵JdkY jĴnCYTNFeIodNBow0_ 9SM)IO &Jw&DC*ۏK$!k3xnoьmً BZY1@q`A4gA$bkQ BP T_n1P+*m1Qj.KT+LODJEr^SD1l W;`aSÒД[X₍{ etJ0eq0lg(%-oq3 ݄vRO2~0`*U)m/@!t""֡g Υ}w} | h6\B7yċR_ns@AAGo8!z*+)/Ϊj/j?62XHN1c}发]wĥM4뽙1U-K R$ KR^_cn-󱢳YRmt6ͳwA%ol%,d0 5 i$G3m𗣗$Ц_)hw?%F)v.gzZHoBI;\v):-h _[ؾ2R!v z:M-Se 6B@pI,86 F.:CGB+lj5#`T` ,s~p8*#cGW͛q8P^!ʃXH2;%N`b=ЏlK5AQ6 4x\1hݙmaM( !Yv}+gK 1s[ 94>g:TSkŁ떂|pՁ:~J?5tngϱ ,nRi/ˀ*{_'z,SrtZ9ڽ[X4)4;xuSWt*65{)9($`e5 0/,PwhS&S7c#MӮ4?"I I?tŮgvK0xKr:;Ej8B˫OB ςSi@$w5J,wOŬexv5jӛ8S?ṨL5]n fx?r=X9IC"vZ>Q~&p bYJצ/{a̼L1ЖKʹZ󪄅U >/|bVS:]ppg`W%\1;wݗv!E!%L9Os]cxI:r{Ȋa_ʹq$LE<>-(J.\_W&2%v(!} )塪Z7=zgWY6CJ63CNVz j+GЯaFsZY5br |7.: wCz,[*I*5k~&R);,SpIbp%;ɻ^H;wnRkAnӨ疚d2;2 hvn68H ;௸7tb=g]7je:rFs|iw,8+ Pm0Yf(GQgN+GZ_JM ><(աҖMy=?^6ؐ 5 \ *~ 1Bno@F^%/].Q}9ΠPh}1j=%͛BZtPа4`TP[V:U;]T^A=d;bdR[qMč눆M6'Լ~@2Z|lF1gēЈ`p\ٜM̏u3f2\v#IWztQELU[Qkق@h:8ϡXc+˸j0gAZD*($j-n3Rz-B \@TzI 3(ːma!ھ1_E=9b@_(KDlg4}`$:*]#| Y ZԜ**ԙVt*6ѷ|OqoV W2@NɄVuv E ;F`Hn`#=R9PLgFD2ESG M:N7xY_C名sZέb\`Dؙ̛K BG41_e 2>n ANxHr֒"bٱk{xA0EK/-P k2%rR8i$c/UX{"6a%6B?\K ܭȔmbbã*Co}"]4j]4ݞaʲj (,mi;rQCgEQ(}Oݟ歫a}.=% nlK{grݏK^0w>ΚE֥LHƁ*|r&}lmJzBdČ5+#NkPO`)Q$Ƨ"ZE?xm:om[U۴%AVKw_r"HsT@/(C8b}Ox5u {."A+,[xJ hHI;]/e2Yu6 XHnīWjҖE( <\a&C}[˧ƌ|)Hީff\ tlnM̚ zo6>NJW#$ߥl kj.2ĥϲ򒇔6{Z?Җj>b !Ǣ WCRmmv]̀,3?R>bn@'K^r_&1wN)ni8WF]zW{ݜ'xmIΗ;qay.ΪZWy"ckFdTz,Nw$-ybU5CyKg0c'ԝYqӶP)HH4*Օ,ґyѐ`*fsvf=s r‚O9r5yV3 R<\e0zZZ.2uJ 3ncmj) [fsQC/O A iK6ܑ ÛF`E̴u:oF&{;=DR*5%w+_9$*DnkKy52B.(M~ j"-,g}SJr'(ֿ11BMy/;> Ů -O~r^söP-u|К<âh)@BQHR8 >zd; ' G -L)5 &ic޴tLW%P/ݸ{kqޫ!ȷnV98z.f0@#S5Z'w>ϵiIE%zn DF4(=*A`: %,~\Dem:挪 va 7Ls8 j㫫@υ+kJhۯ(>% BȚdjQed&'H1^eu&8.BݲlͿ=h k$Qw.2]Tх-; ֡Z#:xhd_:ȣʉ+ln^ EKEH,[:|)=q󯶥'1I'OrtBNbW*u{aR^_X> מ; %o>$hDr܌3Bj1_c.twe 107qHpK{~V)/3(|R pRC.09s9=ޔⷙeZ2(XxCL\MhYì$$LjjvDTQ|/8ʙ@[&߆.>bV7G,5[)zN 1v?fJͫTWț8٩8:"ޚҶs"asMs3洩@yDUHFN1`h&6Oͦ% R ɵX|ъ O ~A0Z/~70rN6Nu{ͿdMdH¡m 'ws1g8{abG&)K E287B%phԝ^PüP@, mT5(/%_W\έ~Bn5#uƈȘeq' A ꡁoS1'9,U) z(eE-"}i"Ax@sAْoyӡP3;Bv 5}7ՍT.=9SZ?7.rpʓHRK+ŶGRw-BX\vK6(˼hҪ90B{j Gr$8p)kR'$Q8Btx ʦjAN̪?l7Ïl%e嶛&5Ǭ33WN_'989( F`.,sǓ)Jf8т3S P[]m r*`S.C,Rm}.6ՊiJ᥸9yޣ D,U7֬<uP*Gy>#WxQ@?)Xd㢚roM%) ߛK>0h1)מ8 ?0, qr?پe'ӗ3BB4 ͷ]N9l`e6tFA^GPs?IQ%㦄aHי@.NiP `@͕"Xp[h^p04S &FmDv*:aq Պbg FV]Ηʂѡ~&*Z`i2D5Qs,CvJd=ax۝tswQҩh|gF.;;A'$]~3"^=\ge\(pe=I(<8% /_AI( m1qϡ2vU^hr24,TH̆]y$UjO9ա0B4!Jg7 ff 8 Kɥ~ WBҜjʾQWgDjyiSJ7 A&xfj+B% KWқwjA}ԔrmD$nlj(αYD1!)="QGW~,$yʆm!7.KrRUmsa&y26VidõZ=Srރق5 o&P|Yyg1z:`G)2Я Z6GK+E?ڽ}^HGaQQ-K 7#2<ޜ*bv)p&KpXx&΍QY9ZHc97qS-F5(rbjCq,0SVG&7h؜*8@ѵ9'#Yh`X )],A[vV<ԕ>J/lݷ};#~(UBODT2b l8* ٕ0=:o[GYY$c`qxs`.D;s/}I iGCFŭirXv|v711] :\ob!E@]9ի9}:i,UB$浝m$PnO?B0F/ֲ~a 8y}/cz1 j?~A KR?ae@XNTh:k1+~\.(!^"Z x)tP?h"`l~ΓbβKwv%PR*LˍD;hڨF>vۜ#D~ ߑKoW^ܞ! QK7:5$Ljb\z2]e?ͬ;lm/K4{ {@\x;HT58$L Cx ]NR?S[ssR&/INj$h>yf)+uصA.B0ql]N.1XVCHŔ'aDªӨ<&R-#EH ׆zWa3agWƦ,f¨eB%Lddv4)kWY=IfOzp!8K1<{Ǻ|ij C秎ÒәѵG꣋W:;fcv=*sMDW?o t(~>.21޾r{V*dS( ~T*]R@_*@ y;e,`+4s΂Z[HMoЕرflB[TP! D਺'}>Ћ嶖|l;L\A!Ye>:&WVD|6S2Y@ 26@\oN+ǀ.՚S:x"5ldOPV#Phn[LE5ro욡ܙU_<)6jK{{˜QYC 9x G|rƅ+ɹnp\^`/EZjb:HŽRFki9FD$ҝDtیҏ Gl-~*}@]/yL> S#Cҷ+gI_憁C=KW@hZI*sY(':(vSe똚)tqJ? 7]U&e3͊?\ZТ~)9ik;NϓbCafj{>@H:O@`⤾Js hX6ҪlpiK(#)gg n^ueՂxiE;]qlVw?Jn-rQx~oJz1(fhzxn*W6s񳬺B.Lcb!@ ;RfYjM|o˸JGxǿD@\ Td>I b|YҢl,tbXiԬ@8L_O"8IKU>JKQzkhlc[!=sƭJdՂa)py0ۥx#F%S<{ ^I]օ#Q:Jz8gΫoꠣYH6 S()Fʝ֎PALXSb~a 3q\ tM3CUAz5 ؆p lpyFg8 cSgӺ*P̘}fqv'r%d "-xu]:.l- bڗ_.[^jS yA@O{,cdsfEcZ&qDy<1+myp\a\I8ڐ'oaǨ%Ai뛑73YyraoF>-ʕC W&7Q&pc>otiM1qj| pe^ޮqUR;LrxTwrfLXvUGڷ;`$aZfW,*K yә_b`4iYC.E|v\σL 7б` =)8{ctvFF%Kh2Y,I90Ng#`UCD LmۆZYKyüyuճO)Tgqqv\;Q(Ha*2JU@JQ<"dIJ # 4SzOETrk@XdrW/'RQaởzAEBI$!q_GIU=їC꼅ix*!益?V r\. V?|l[wePaˉ!abf'c+8I9g`E^KƇ2ke{_Yb-z9tܗx?P.O}l^;P -;ڗS)P~9Wlv6%0o ^s5$x)@]IJ՛o+VÞ? n3 u֮ldjo1 1dUs' [^N& ţbz#|}!Rېᯋi \$aed˃%\H,1<|l;,f-flo8t_xhH،rq3@ q:D-Y\d-"T\=~XF+HpFKI2x6LB$;y-+A$jp,ڗ:Lf7KE#t M@i-gc .Ͼ7(ZbR}20k^Dʠ%i<0R$˅1 lyX,o,!AC>3d kJR l=л͵6Un,,xA.С=5C+s0 =Q.B.c+tt9Y6F6Xlj%]p]kŚw(h*R]/7? "sTק*7EU؅BUi6~E Tb OmKOJ7[@KwgMSk04wij2oؤ5ܦFsPإC_A.bof :iVtU$%#x0)Hw=$w4~I~%#{hi0f88)461n^B7Ha;`/ <8Iq)=5x'>6|-Ȧ]Mc2UFH:Jo@<ܼ xFYPj^?j XR7`>,H@Є7m?bCjq#>i*2 $($>ݠV97!?N`-*i'=~=emP/p0ƍ-[ף ),9(M%UվOZ{K`pTL дe)DZک:m5c;=x"$|~%~<`oLꦾݼ5w6];,ڰX,W4;h$]7,oX[87=/G~ue@D'!䜣dY07"6{#>WQKFj).VJChuީԈe;L0Esyǒ[Y3~1YI/qɂaҵbv<W 3Т/Hp1B@>ņ8#7H -:aeg6 H%q%60_%uL(: %27 1 Y)Prs,6=ۙw)!AH͆%$uxgxeYK@jH_4e˰\G2 .MHVvl_Xrz4?#sLgoL0vԓxZSvoes[TNMe?馅yH$E@yp "=Z:]}O\GoW:os!( ?N:!Â\qƗEUG3oibi@%nka )HZKjqSfJ32dth Juw4I^m 즹" Pޛ0qGD'y*2M?3[? 7{'xU35՜_}.# c?1SSVZJ\ye̗\=8)F?׎>0$>W{]8T6vΌrw1ѐR!nт" Y@@m%'ڳvJJ  ի)Q^l26h* 4q !esԍAK%PFo" )RуnAϏȪ Rme5v#<[Sj[g(O%s,dh# T[1L=&R48z,ad904Vm׹:,7e|OW2E1IyD9N'Ƚ#6mmoo%{E"eGH+z;ZAP >f U חnpኯX#<饍.uraps DH~8̸Viw)Z*{OC>z()@1>wn$s% P|8ëmF%MUVFVp 0bq"EJKcJy+ l#njqVAIEl%֞xCq`]<zGʾk3C7^2?-h{uޜBVN]h7Fry,bU.$~A9WP h^HX*c$0Jc==!gB=dV?W] c<)@ ZW9îf%N* ="S-6PUV[$J dVQ!ehp(Qb v2!1p'*NmZѸ4cYd}h[5}H>әR]j+>FMPmgXA*k>A# !<\ڤz, "j2 rۏ։PuE iWujwX:q}v xޮ ΁ͲP6u|_KfEX\h5*h;Zjy XU._P#q\Gelfz7m)^>AO&O"6UR[DgE!M~et)ASWmq.?Òˣr}ܩX?]bz\t&1rB. r8}3(xmOqE_L'LM5Y@OոmKca[+"}1 TAi l\Q4Z_ ?݄0R8)?} <@XY>kLAT{?dN(BBbD82Iw+N1ТGJˍETMtjB R ޾`8|j'<0}X]/فF?0mܲZR SWn@J߹ d#1 z#랒䞦Gm~I dr.(ᤡN0.Q L'f|%hH3w|om9zr&y\*ؘ7˾1C1U6o Jkv(FYsԄEAʭa$m \8Oz.*p|OSZ6p&iVHs@(i 4I gcY}4F}In2D#EڅP{Fyb]_A>X,X ]-,5?s PJٳ}r,W63ab32);F5nFb? pC~œpq r5n J Y-%+_8whMP3擖?t]'}%heyfbJ9)1QqKZuH@^~N` ȁzHb\D d$I口!vn`xX4%Jnw)低l8yC(ۏΔ,,݅aOYwX@zx]@t#jf(Ww;mFE6E+Qb0BWp Q$:6s@XG5RO柁y)_W`%ub%P* 8c(tk8~1qKjŨמ|ÖC['!Ҭ8)s-)|P3!sK(ĠZU?-9%9aQ^aӑ uTt@iMeYo!R۳E hxowwj"*I0% Bm8iWړb-e?cp˽qu?dxZϝ N^O䖀b]sv[,.ﻩPqcgw/?/W4̋1Og"'zZaȱY5nњ=UPpL[Gf l‰1#+<^>?`elJ!^2GK_Hxfٓ<4:RRig,*T8>Ihģ[ $~z&9FǕH7n;[@93qFl': f# Orw0N -&ll0-؜dL2+=EoctYbJA{9j ߱xÂ*tb<̵OҔNJv7%,:0wn+OV#J 8:m0˰I.Kt o97Ԇ{&\7wPcKMA&`4NAp8Bk :6+H!(R n 9+A[ j@$rMVHڈkEave%ȝW%/$øQG!j`4b gCcI-x2[[r0<9c͝q(S:8&tf %aYFs..=OB+yǤL"($TC)h,&3F%e&g!-+HEUEG-vˁέ2mU?`_uJro Qs8``ZAv݃_7|o־ 4@#z;W7TNm kEUvcepֈ|'@_@? I@YyL=ryz@:X4kT+T2ō j'w3]fc!Os]~MyUQA߀)..T48N)"rFu28V$Yu9?jE0yk86}-Jdժm%C7/ڛn\O*GIyLWُ*I>lr59@r$@)f w7}VDa^?[Ko7+#u `0cB MgxƖ&'r~.$<O3[7UKMy1.a(,ar#HlCF%5DܖYS}ecPyUA!A~i|ꃯ&^O: eH)nZOF(~|b+ /]['JPe0dDo㛻xgM v|c$:3 @z{9geJn8Ry4+k3rP,/ 2Sb$-#+8j`57'FLzNHcwk*:jکnvGHspg@f9,m0)G7Wۆi&( 'LW-р?aUG"~ jVdwszF[0.>`joI:vXhnۄu/ϔXw/n)bWtb_l@8]SU..jC ߖ;ݝyR"K9Hzy\ HJ:S&cER/qvONO;8"n,Ί' K=)mE)r" \Plij.q'&aڮ4O3"v lݰrkdk.h_-&M[T 1Dalr͏lϸ-.Mǘب(=yA;S{(Ï@ʽ4<҇<=돎9]'O1xSƵSo6yc`$!~16lSƜӼSԑ Y WT*[uW\t#oq8mw~˪HӞ e`hネػH@D-3v00(  T盘LHYR; #PId6P=Z$vM+<7QUjx[k-^&+822eΜ?o>RH%^X6 ~`e`{8|WPrk/:v鰦[,n4wbPs̀xiI4yiHɷA g ~D8S/+_1=2ƥ5Wo$r>5X%cm܆_ʷ~/LD6NFWBiؚU\Ws`iA¼R~Wan&w&v~SV;Ko@{X_s(ة8u%JunU ?s?U34}R6K(*M7S%׮A<q;67gY:T=.gڣZBG ?aw& SQvPq+?riFE]2v9o{w\HJP0jXv*^RʢN=0;fA}: "exHw6X]b'uڗ(T9SPOJlڏ2F,L;]pe#БHխ@ )oZe+mGNVCf:\0b: ؅$}:A'n6jƉruCYtn{!cR5·]dm.5ӖSon0J1l/$VAAo|M*s?$P,%CPxppk @ 07E{sw4q794xZpGky8 G0 g/fcgkKB %Rm8yDF80`Z, m5\_f#F >NQP>VjXPG| KH35F U" 1'7 keB S(ɦ#jkqCnyaBZ8 C2-A 7DYI i7DKgq+ЄK*i탗[^ܢkh3k7'p+^V* ؿdTd9/˝&Y`+mC1'b*"F !`9΋h8hp-W_+C(+-GW۝Ċ>[?F*>rYիC"wXjdvw^3<+ ?lLz_$aP2*ᱳwc߰U}%(57^^㋅/tѻLI) 49:M$Di/RJ#H[,TZo>KQ,RRG0LL_tssl=G &1WbnQy=̤vcqZW^fP3mz'P38NhFFicmydDlV e71+[Ă0Cņj(7:xp{4;~=b^1E庅e2+׶(rC n=)1L9A;4W İLEeϚak)Z#5'wk,*+H2gyxϜۗD5ƔK(x$5~3'D7x6FOg#Œ.xćM-HnX{D:`ġ#rم;3}[f'-*a1a g 71ܯ -9c]'Hp3\. y_cvũ|k_dRWCui]Sm,>|{pfQ)(H;B]iK+Q;~.qwȿ/ 1 QNKsѢi5vz? MA>QSbl%cw敟 et-SI0ʤ_:{\ e8_sZucn<@s74 "I@7DcrL%nE]\B5rw!&7ƨTiFT9fͮňQ `nxK;^j(^:g̿L$=3 91 [HRpT1=Gj]x{k޴t7WHWS= )P!u 8'o,P䧙<;٭ɀ?0}s>of.qp,v!^؁ŧJА?n䏣Cs*) +W^/!aIpigrOdq~WO{8G{) % :x+(Rw{]f5-56 ,y%tݻ|H Œޜ1cAJp"Y[h>u3)x?~kΚJn8~0=[o HG}%G6Z[`h;brAF ٨2 [o˰,E`FP'WXRvJl[< X?W(9[4d1GZ5@[^s]?FENqvީדwߜFIU:sAX=x. nJWȄn%\h#Dv nEzܼZՅ6XU%~-kn)?@/JޟS$v,3y}gM3:%sO.$$ (A1Z(i{;:&{Y' #{%t T(JME>A̞!;hYܶ=t{_E~Bjs—:j>|CB})\м#g qekRj.5K\g4cpCѠ*-0(=%4(4)=+kiNz[8>5Ht]O/7&nь&^p>+SPޮ<ؤZ-&x͂y4agNOiS=5[6D}[2'Z{n6R7~޵"߱(}3ʏLcp# ǞFUYo~ӟɈ ӫZW(5ڻ,k(bE.Ccw3m6&azE/>lTK[P%µ[Ps4f0By YV!!2{#)_cjQs=Cl? Qb1S5z_B$O){'}BBy*x_9_P9td:erbHʧA0 l&F @͍q'0]+w:".:$EF 1/׋erStNKGqvf 򐆰좦 brp*ouQLWq %]?H Q0>䙅=F3OO2Nt|wfaUEXp[NT֪f3xTފÕ*%P5^S5b=*NKBSw OEU8Dp#{lc.EoY=쌛oeQ Mμ3Σ8X¦Aƿ3t6i6U"2ܼKV-v +Q-'Ox"5*ju>$𙠛s3[  iL?_cX"Hnd0^DU<ޮðX#7@ț"^ѶgP72-5kWH}/ӰV|XQi"X+f߶5Hu[,'ly}z\>iDc5lN&Fs&ey'!"bshpDaW+ ל=-W)pqp4 b]@OȪ\Ȁ+z癓qrBGo=g,L8 rִX',IǸj3B.K iOQ1̺(Ĭ' wšE`DXzIk-f¤~ uQgtWo]Y$;|SPnoU"dM] _K軙BYKuט&vIk6Y)6i Q^LH7X fxB޷d hQ,;\L]}d/^qJ;/Yͪq#yN6,UJV+Z55lΖEk` vo- ycz O1 u JŲH@t:-\vG̈́fgwNH7jVo ;ËPYmW8(ψ]Ãuؔel9Gym=CN>&ָcj`50_4SNXj>1K% U4(V}wX@i^n<ϻgDq=XDO>G&sE)p%CQzJ.Br>1˺M؟XUI0}EM~ҲV$]˪dCg+6"\سQEKw$ eHc[5w?]/QЈ C_m:z6n$~iS Ƥj۴p`8#olm*|r] 6hEI|y!אƨѢYf-txp_cY.9]v/-V:VND,QKŠ1H7|+Ҷ= ?[x`-sȠuo[9MoJ J۶951hODp3K̄l ^8= Seqv>]"7ͦ+s1/"Hͤ$g^3wUJ6`;>+A}/JpIC'NXtW hio)cAPr䞥J=RFW~TN-.[5siQOs׷vT3wGbܕG?2"d#~.O>xFrJ|I 3.Qp̀ @tYZӌ$(5MAH%+[݅`H+JP 0̍m24GN>NM[~sb%: +ěpN3/y;EǠ!ܘ'-Ԁ0.+JRoC=8-'_U0y- p͠WڹO9jx Aȼ6!ݢئ^ck+v/ˋvpM uʕ1)y$Xȡz D&Y#YBDunŀ#XU!7бV@ , .VwwTE/jS{R'(aWOc`Ҩlߨq+\ #U&ނVϠ2=ӹmdSa/B'n`4d!;3Žl;b.3YTvjO. 3"qj,PN0咹ח@ָ,nL#zFE:źUZ”~~Μd'v3=9L܅ilGeaxz2QC,i#YjBOFLzɲi kA^e!j$` T]A*"oQԫ,u"ZSTAxfRP"/Ht0X'/гw΅:§:=5^e*[!!qċwA *b RՉb@;p*U=ᔧ^k(GJ5nxE7N:kz,?Ƌ|7X7 mHtO vCS_daw<8I笱]s͂jʹဪq$XK~H[y.氿1cR'?bKb|%stS%M& %Új 0uԒ)r/xtb崻IJJ.Iȴbw ~5FXE շdRx\g:1[uKlO= Gnȸ{ MCȧw>{W&K~*s<.օ}+->ꄉ9l^uA8\a Ϫ)SvD]CY}A8iV*?M@ީ+w* 26 n"{؎O=vG,b.6[uo)RB“X;^{);vQ͈M҇%$w@#(rG(f׆Ia.JXR+fy1%+}`XE\qrEzR ;#97IwA.}_*cD4䢒$6  3~ =\DO+s?.m :z$cL_E`i* %u<(1KKU&D:er%%ǘ:ZҁY9q }Xۤn2.LP(]ĤEۗ!|a )0۾X;H\, "5)Gg_vh5{.F(4M);:,  !P@R8bdrFRv5y|+jqtp"| ᨣзG@?U}"E4[U "1Շg bWRQǂ= NqRx {BU9^9YUVs.vAz%Ɔ C=I=(hLTDfxV j5عXCY x\pAF tk66r+xT L08Oናdj2@ S}ߤsnyM5nfCZ1 7q|gPVj!]1l;l.Y'sw]~xgTJ#6:SAjb>*>K,^a]'em}7\-M SϬIɑͥ>ddTB[U[obzj+Z "#.t9²M V#\[g{6&Aݓ\Y. zU(hoOWo.On)A5l!|?XHQR1>AP ȑjVUI{@? @I-뽻ɮ{up1ꂻ W/U8 2Q5XnbC /m~CNPё F-ҿs&72qJ`$/g &yuCH4qJ$um=ܐM 1ͪI);?#-;lkՍ+7~Recq!/"LĴe91\J:vyo>(@l/I»12Y߬Jmfu>If bF xc BW2v #I#*:YsvÙ o(urȽ!49;2C6pl OȰ-m7!{9& zC)(PLVG/l=S(u`sm?1azTUs4k"Rʙs+o2{8I_Ug&_!*[5:L>o~ N,";E !Jp"Fl20JB)hpS! 1vqe aZHS8 ˣfIMvRU`.ܷt}嘗^R|{scsS1VGP³H¸~2Q5:U/.jqq&8ݼd@č|H,9}{%TFMYko- iq!0]έf};vF0ٴ+ߖ,ltޱUŕX,u3u{;_1+% L.|=c"݀ևy3%@j*SFN[I~_3XE 5ئ&zMfT[Y$-5g3TdE4bj6㑈6yw1:>M GbQsypz\N!iqyK%& ҝ3AIe~.ZYգbfRԑ_G+jzD㬌*8!j/0'~iOyi$3/ʬa?&(i/F+ 9~h?#Vb2)ǒ\Le`gɫh/kP3qwC^S<9 dKd:j-RR-sK22hO(797!I08Th悚4{<5v:===oچoT.91Kc!*͗a+fE7" ohozALsm.+k&mFA gl>8[2]?v /eȼ+pw Iވ,:o`%(XtU)g4 : 3sBieM^Qw^#*TVi3 !H{}*OkSDZAz 71Z ̺8ܡ}3r)‰`o[2n{OKh况HRӋ|kWATgsiuϫ)brի[RC%(/<)P!ϊX3_ ,%3ơYddՍ Ujv&཭tr̂>X &pZdh,yߞ<F{c\B)]1)0-3u˜Qk;GܙQc޸, [HT(@A ZT6VTUt#hnxs9>?hlXFMȑ@ >B)erj6 {q@LB\[_ɅbL I/("=\ӵ_C+PŠөQ7KfOCԳc6>Ln |*\J$55`Cay9@ (^}ҬHHaRq=wN*rDXap S q@P%_e[C0H?4X V0pdǼG(~~k*xW-̈́)B DzӉuy)n+6M.H^83[/KRut7W}(1ƁkRYQ)CyTCiNQFLdZl_ëz`a b}"NO-qϻa|d!:}Dp*ӹ{odWt<`6Bը4pxk !E?Ń˖vK-`߭V E}ۋ;ld1*oܺL yHYnB RzZξֹ 8Vh wYƋ,ڟ"3w]h k}Q{ Iki`[RD> O@OF#rG„ʙkHvʱ/߭c5!3S^%\FNPf_ԎWbNc>[զyiz38:C.fc(&;'N7M\Bz!lP&>H2z˽\ۋ}E}Xk*u ȑƀ8NݑV}}\Kw0sYB;e܎fn'E1MM_U@ q_o@s*L^Iy~w:vU. > 왣;Bk݋rd"jl㘭ߐ 4b N#Y'JiîJv dp-xVwo&<~t%76Rjg]S?B3m)0} /zfZ ?e4l C$g=r+] U|q C j+EfQV\  Zlo Ip$T6p݅&Tg! 0ii4hvNiό\ťsq=0S RWvި">X+ZhE븈q&O swjrp9Q w4y][ߌ{骻>ŅO6MF-DIC*?;w&G~K8mXgnJpL|J5va0:JޝK\v/su j.ayq'NF\A .],u]aTB< 2+Ya0 r>1m# {Lt^׳Ofng^@tWΘ4rlђw/0Xa/>) D#Pw0o, / q--(T LOXcw#\QT{]ESc6mY& Jf{WOIgU"vD m.ZNEhsk:KN0N=4/:E<<*̘"2+VoMxI VLx+k*4 Sm]woxSMIT{z@3k/s),tzj+SfIw(H'1 -׹>{B=E 0ּ. K Sʐ !8{94l7 =*w )d67h_Pɇ6w8Ec!W3-P];Rj%vA-yB E%갨GQL ڊqVg{u~'{:u ȀuǺ3+N)NG"vlg6m?JA_y[k y5|_7]0}BKro\w#Q@ M2l+TTmq@NeNI[π dh:,̺ڶH%{ k{W]{:e4k3GÚ>kx{1@fbaown"/~)ր2z 6] 5?BS8tPx6;5l|-TH$3|Nm,wKg]BsWdDH{B#*c7.k|jvfegMۏ =Ҍգs;z굀KVf؞̃-&9NET #+{FH;oEkZAs iPhnBSErI!08U%t$0?K$*5[C9gCٔk=jC"8-H'zֶr\y*Ԣ$7[վ"%ĸ P6~–<#N"@^)BEYA¼z]R+YMaQBhҙBG_kpu6ӑ\rm2[۴ES"w.zy8ԦTx*>+zow뛗w<ϗCY=F}d]:wpq5,<t/SFVmgGNgd1xn_DEx9P%l ߽)\j ;e]9$ ’[Gv-y?3Q$@O/XS>cE%<"KYɳVggyhP?F},:N;3cPuvEWbs}gtqzۡ֨J0eT ]da|hXB]#1"Ȫo_u^~:䡉N3?Yb΂^fU4Z@{OH6@^x\(BEe\yֆH\P}ww;*&^oe%32|` Ou6߲BicA X[UW:v'(cUK"TLsU"ؤ '71]`$R =L*MyK{~Z:7]o;QhU?M6K8X"bX0 ܃Ǚ#z{ʜi¤$Cҡ Sw;KMhFj$=h="}y>ؾxO/ԛ[^hCGpx N`RX/V=ٽ(M4Koz;;/n7tWvJ 8~D-JWX󢋅ʸUa1}=I"{zw1hdBLSF<^ WmU馞_5C-8 DCErMM3əRs(~ӭ p.Q]:mKaYgdg&ʗBw4}wc`*XChaq|h> &g.ZY `q-$zZ   f wT24]eGcr-DŒj@ e,Ug$rXq8-J{ CvX;Om*;\; Ԫ^_vļR}?[ ؛qC؋.!n;|X%ΘJqN/]-KZcdë<=8l`rQEbE$Q7S /@jt޼ WNLrKJ>)|5e=m~@åsKlA9֞pvW=7{IE3&pG W&}IуB;yhpZ{25MZ2Rux\=]:6r~oѥ9$6Q4w7BGK;oj1a"wVKA=z>$ R+g1ӈְ0c8J|c.hji@O7b]~]*ե8$Ũ9p4\;"xyl"l6Y}WPVsL8駠-*k2}F7d;|x#oG;r gHJl%1Kcfͨ0:!a .7A9vkdN|l!л% @vR d֞1w!0N8dJ' ro+%zdu&Kx$ #'2<, _@,H/Z5&pK({NCldBlIz"mSD ֣ڥy6%D=y=֍MKlCXV=R*@lb뿾u0T&X(;H :3:WwI,ݞ4#3|LAqkq-g{-C1@I!a4HC5 < `'bY0"oRu 6 yvY N7)50c@BwĞ7k^%PNou9% #PKI{|̌#ߏm:w߾aKZde#2S/&,.o&rO^a-cIx4M&hSEđ$ hs͙I ڻ 8Ac@ p?0;)CGl9a;ȴ)*g:nVj@rܤߠTj6Wǀ7h[-*j|f)'lԲC 15FaiJ@V16ϼBYA77M k"?~1 ~i U {JBs!e:6ӧ?Hّ&8E~N30A9 j,?gx jA2n"(Zwԟ~,!e+KKsjhhWwPB#iSJ|xx"K҂0!w- qlsN7݇=&t,="5#O(TH-McWTk]_hݙ Yq=<].k0{ȨR7!5 PYл~RXvMG-y 7VDhUtoNҦ]Oe8]Վ7=Leə}k\V%I̋ֆ0/z+.0#L:]]s_hi~bk)F-@:.݀hU) Hs/aG  T_#g(LA4z c {E0M o!?ACV%8:lE WU}7g,RxWxJZo_wI} ήˆӿpm"pv/Pf(ZB@s63>Mq+ᕢ@ɄROiY{h,-L0M4G-RџtI| ;cì%6 Qth` R–Zג@9啼w>vH@ӛ{aoT8lc4\  !,QD4º3o_d?d̊1.rlUFsQ 3 ŕZ!?{MF\P [?mrrJwޥ\ah0 >eܐk) Cx)eu,ne!>[tرW8rN܇ dC Y jN4O cV&DX2OTzgv  Hc93+p@NG {=ߟd#y \i"7!yG3='|)>@(r.neS+5떞<%Sfm~}Y`ŋ֯9$_ ttby27 U Ӟ+:iR::piX\dH^+mVx2=׬-}ߏ=aWJ`ۃ=XʍD̫E6˼}jZ!NOїR@$1:m_09k0g0ӗ\G 7:OzR-? U"MUNJ8c/7 ݊ Mj !7-+~}E9nUT!bz掋~IYٗGUs1k^V~}Y;Kl[i ݅{×FCv"׮z&}%۳d1S1Gҵ0] i>Mҍύ/MJi+3:;'5~-п]k]Hԏ-Ȥ؝MkO1O\C2o~U IVAfx4e:_ۉ0qb#.76܌/niZ'<(JjX;wRA=xS&N%Q~X=E`>}>K}n{ay/۸sKW4Me X h6Lwh([B (n1D@ᰶ-tF30'n%"c8yz|vF8o> [%6O 8dkN>?]Hh>@ W3Mģp걥]]өddKc!m&FN ''cz w6_j/ro+Y"ꯦۮY#C>ڟb=P]{xSԯTA!F?B-H]X*Cj {Ѯ*q9Ӝ9y/Da`낉BZPn;|OJEؤ~pM s4xcEH(K@&xv xa5 h.8W̦8]|/Ok'YjM%ž&=Z ٴ \1CrYݙ1 !":8 ;dW~xNuMxeɤOqBqQB|u6K$l&Fp' nSa*].NH57Z= &BLk=䄆$~B ~nZ i@MKStO>q{@|<sI'&MtNYs7-Dv|-%'~4Ix-f"sD1drJ Q_J>^NH-yx@x +2\7Yku1vv9|iƷS]?M^$['677=c/FğG >5̺/ܤk#uRtVA%@aHӯjyVWԠ"T"@g30} 3ƲI` kx~` .*iGdpe7;`Lǀ'>滇Xgb֙mHX'3ol۰Bi[L?A\Uie28~жxq0(KaT58384-g+mp\|6^V.&Fz0̡KvqAPEMH @~.>HП'0I7RDIՅ6# hTIF2;ɍ3f/e mb\-"FaenWVYE{ @.LΕjG,i'p'<~C?8ԟ5$::ڢs|J0B*4o).dr{y>J(CpH!br |lc {@s e=TQ׻>O B~@c" $nKfwuۻO7b ӓpj5ΠApV4qt?ܚ*z)vMD-hDS~{dP2Q?˹"T1:~7,1&Ѯʹ?/1w7R0ZWEC8[La[%ЇK˅Ys~9H?Nџ-K K"j>${aA;K5*\:ek u ZLD1 7ZAtT;=2f9-;gB#hy s3xN;^ʜ{Rv:at!vojޘ|HnIw(U]P νl \xP§sR)I}L+m- t$pK( "ZTäoy>[{kpB|-$Y&2ML>O=`[Ts=[:nў,FnNJLLa$ьLP8H9ĈhCaz>W|]B՛;V,ɸ4,xA3?q& ΢zs=7E3^/ӶZ~@B]sB}4ځ?,$R').`[/,Bk8CXg~uV9"%BqSk-WH$]i9RQ"̊S +ԍpZ5f*H*љpҒMZJ2n(u#OA@!LC?̗]F,1H$4;,*пiTnK<(ԍTtWֻHM$- XqP'a7'ar-aDl6I" aRзEDۘ#Y1ql*WyT]Qt磖{y/6_xGd9o0uE d(ſWhfjqw)ʾ ]Ox*vɯ{67qbG$a ZG/ go6"_ql5ػucn)]K+qɐl-T :ttePq^G߬ K_-Ҫnp* `_II18 yT"LnՌ%ƹFHdRQEAs{C3iv—=d *flh̪UЕz˼Yr(|aOI)+W'wo q"4!Ja*7w[) nZs.!eS1mԦ{O785^(xxMub#i$0D7j[Y)8ٮxb5.7ቡ{PyaF%>0b?IM 9ٴl8YT ߟG wyC\ Y3QnZ9jE_~ *?%AǫpA^YD+Q/YB (Rw VL*x7e'7q u+X#mYw[-z=u2zT= $wA1d?n%&vH,g 7.bn-<z- ~'MGp{t|gHYc*U¨J2$ A؂]!hg9bfPN 8>'=>WeGXe_}mۤkR΁!Iʡ/u PŘ%mx89g%R3t\/.8&\湀˜WQp&vBm!;zMOTި86?cfdIgt ɼ7~)ĥ|c4? ͞_o4 2ܮk_cK/xdԼ_tfX晻y,W: %ZO-Z%%I0OS,N%lмjHa,#L5cY[ZZAV?viՕ\{JT-_QH㫥7>w9.llFO}<? fI|eLklKi]Ч$(>튃W(~/v`EN=I .Cs܌.$'G-C]DoK)(KY <Ü4*ˁx_-Wc21Y1R,.WwMTzME0; kkHaʠI0`=fROby8l_wnP)9VuW[xבQg$J\Dʦt,Op p(w*x|mQ'`5N2xg^ji4wm?Ypq}9^J ȴ+F>QaWWF+1!U0,4(b|;-GL',PzF [o_9Q'2LWzU-{ym9K(4g`dWQj9[|hz u CкB^س {dl~ iF<_8K'+P{RdEg+reH,Iu3xCdTӊ=p}_WeAe%v+U7+'kH{ht/&fsГ%$Ctgӫn48մoԦ[:R+_xMlUe:m,bМIh]a Hhǯs[d_#\%YV9:?m.]}҄ttMqF[8y4F% m;erIM˨FYجS1q"0?Sގ{>1!-1 MIO(,cXiMOy&Nʶ'ޭ1x=UEbB\AՄ0Ev]']j LTOշ- r9Rk!W}V=ÀJ[Yb3%/[u$-T VV4Hb/OR?F|~s&`P_BLiث(]3lp9b6s)Č suoal7b?܁4QG-A~wZznnVb #Q N7!@CنYH#[Sg'ɀn ܼ3x$I*7;wkx9}t,վӥs"/=]RS`H߀mI.q:>]eCˏuWú8ml_[Irt=meN=UgDǬ9`g)oP' bX*f'YE'y(V'E.T8QdI>rjnlFb:m"P;iT=g<ؙͅf25ΔɶÄQeʯ' p 5[El:p@GLJ&)cUQzrTly/Q{@'ssy\kXh(\Vf䫉+$+0~AD:LX#;} l@ רгt7bC,V/%*-<Hfz& {#E!j&[27?,j~acc'jʫ%D f hh$vIݷ&D,4߼%tHV[5ڪPlkLJ"ozNwaer3a]`s 'd,g#µg7ޛ_^ 6+,; TWo9PŃM< +}\$s$uՉ:9x 5=;jr1|f"b&?*KL1' `zVQOnb@\Pc'ݨI+6MAQեTsMeq.MMXܠB ܙ\DL6-1F‣?EEؼ# ۛ4IrKm̓uu'#!Uot*숢DDF_@@B'? 7Ip`/%YPc!cxvRmPI@/MLw $X W [`x[c{rS7萻74"iw0jS& 3KKg4KكԙFKOu{8ߴW {rDFUg:L1.x7' 90?U8 (Y9B !y0m ‘ԯ$ׅxؑ X'yV!l T3ͩ5Ʉy9(1`! Zgݰ <MG{Nդ a^3ߎ9d?VYY1P. H9aVhKÁ@nl:t?sUدĮY+lsݛ${'ȓ01yg K.nbZbtѸ]j8l݃&J C+ڔd3}fNDe®2#\H=kVP:.GN\H)V>LxK׺}|ȈJC=0T~O%ԭku8 "0rz~ GF 3:WwD =NO]jѹG=:%mH@&3Z]Fʝw} ! ysO9QqWӊت>85>׎lp<"IvTrK`'Śo~v)c4U%JKe__+t',mn0/q|ŷMY@ejEoG X~T1ȯ T:}&#o*&x˙gq_'Iٕ%<̱*AH}𘩂B ՝^ `B yT3Iut԰]P2a|h. YוɩxњCY˜"fMlV ]aeJ`~t2O6>~$cW ! &u5F6sxC]uL: >hp7XEHZ/lLXT :t)4ƫn{f*rNS?뀵yzmLLwW&~^BW~QttD9 Is_:9o"qQ$*ݖOQ :ZCydje ywNm}7~dY}Rn9G OJ8 N<&=Y碢8|MMqyDGHwX H{mJR$b(0Cߓts_%A9`#}3f;]mE+YSbiČHEgS/.O%`iO(d;@ȃZO;ܔ=XS:,C{sX"Y*!K<]L^A(W2 5Quk,sS8QB^e|.Jko_H0>xf[G԰j-C34K+~(xr e_UP't $Ozv{!t"-ӪY=jD  -BgZPGӀmUYV)y&Ho$.3R>oqiUpM,TV:K.o֧C\+©B>lf2; jղV.R%cMsM9[&JBH\Iij8VwU̍卉r.K V3!-NERd&Vs oËCK(>%7G^607 <[Dn SziF UA1Ɩ7)գ'7K]BYd077gDZ\?zĴ!62{_qa"!%wi}TGxs{"X+ZaX 9h )!nn.Z{%DLt s4{KUꎦ MR<c?:d #`^?#Nvhy*\,sߪ~HqXJP=M?VDu_ ʜ fho=̓ U AD|ȅ+wSp$ĸNՇAFCp嫋|nrH|et M:vbo6rf^0fF 6\;zUxĴqƢP9NB p9\})j#_xM^@3 ;>o*})r|5*u9p ԁۙCwLSe0MC^d%cEA WsWk_?}eL/vBN*)oG2O^}=-popBؑyLk>~*kDحZw>@hj30Z+ol)M1Tj$ ͤzr\ǮC=.t/h^ &dZ2ptz?kH na8@Z="m"䫵GHK`׭whJY#hH8/aX.:nGIu_^6V`U8暭Nuݴ/Q֥ a:|Ԕ!J5׬q#5-v$SK:}cKV>{qV1 ,my1o{=K/>k~Y97 ߊ^>3J}aXZPh[Ճ `o_,*7DN1ϸmm]Qnq[*`EזQZfu:t}ejx ,9|hև zF'b˱gS4Qs){1tiRH2iS^}0P_&W[vكYYB]NyҐ*S0rRK/z&q{w%׉[p T<~SP҉.plLb||Y-GF./&DC}g)iV!k_߫8TTw,:L2!7'/GўhM8WfqiYȘ 91B\NܣpY,+᠂&&2W ~ "'`1W&"׾nj0c-`Ś3ޫ:'}\LS0Z)L8i;6A Ѫ@q^&?[Z'\Q6 8q T(E[5y x'5FiMr~Q@]^A-+EgW‚(9\1:uU8 f7d2~CjK ZPg-pJ*9߁Gct5v0݄ଽpf[֛ T($Jpz9܁H0 K[kjω2H&u?&D֐>B-آR^٭, ܌o.ӈ *4԰%N\G?_/=0UT2>(=O"nFxwv i0! }LT(#ON֜2Qੲk]M^kV0*7 $BpM2` MÛFA0kW@+ *O!w.&&a3p\t%P/=Ļo:|-=[zZuJތfNM.3`5 .ם&Nh=ޢq1,C}̻E7ė)b.t{y/fl+ek3TE"bJi >U{Xlt4S1"C'뉚܄.7$N*1@^EeYQ1$8xBWu׻/恔gUy-.:._4'%ISܜfP0BңIǤr=舫Vj c5>~6?y{زsd$?HXO|gf$Ln6x5E6y9k -YS6tnvaK*7&L{}ZԯGog,JJXx6IayVFg|[V˸,H;Շ)tcQq,m7 HC?B!JTB`caYIԩa lqA:*?(1THz7?r3[2#2rqdZhx铃d6Rg*/,hZiE,;R2&ݸ&3[` DQVTI$S횘d I!Pr' 70}:y;|wXsݣ>W踻Hi-9.ʘB|JHjOqu,ju 8v|E:t B-TuDS}r}fOXPc܀T\S^MGVmdM=* ͣxD:{y+U>&Ύh:90ɨ\%>&!(rB ѐ'ނO s!:Bh8K?}*QgxF*X~> `0]m 5b5I,E[0`4+n|ΞpP.okY I(#N]8S2{Kw,&'W}:{ްҬbdMٓ%C vPȎ˝ǟaPp_ihܒWĎ13{HK*;>ksiD g0U}>M\oh=p5DZ?Aḃ tw*V gO* 㴄ʣl?ǼzT$+?@T>-=x{&X2#%ּ~$ alX ǩ$Qmj(ڑ tM! $ٻ#fRE.>s0hrX eu;ҟD $rQs/TSxYw:>VBs6ƍILǙS& z8G_ACLCo@%&ꦎjt [EQg mk |B<̴ ,EDtl%< q&4YE;;blvFU<6[0FUSg #ozp @yUΐ C EOG 4l^a5C'Fp0Q]jFXNN$ Ix%>t}r-9)m3⻻ZbG' -{C 2~ՓezE(ZԱ)咲HG3B#0F!#9sDaXh\K( {݆/`{9"m2jB8wnuk1+aL8 Cv&޻$h3Lt9o+0,N&UeCSLe)rLaH E5ibxddڌ"TCt[7~;H,[ E>o#PJƹhdֱnؓgZ1X|aU F3Mo<PG*1h>_i 9*H:V7-ޠɅzӜJEaGFlv\t7dz̙>fBLemTS F-{TN4RuL,SKZ"OQ5kQumw\w%+|~Mj̜(/aF!:_zz Bm†a 7="Δ,Vb[4~%;eoKmB7*KI/dݸa:`Ovhc u‹xw Y,1*K{(y;Q~g#@Z0Vjd"W=qcʮ'~NSIcPsPjk} Ni2~Ǚg渂աlgܯR-Ypc߭\P؁ Ȯ [F 7g_ gߪl&4njjUy^ U|&zvpll tl]LJP.u/zD)x9f{9i5a|}!c/=X(Zgbh^}6Ij:;1-' X,M4X{G݃UhAux.¢P+L4 -~i9Gi*hQ3!ʲNn4ngY8b+,q NQ"6]R,$Ye}SrE\ڪt<@]c)Y 0kDr-*gP* [aaҔVclQpeUV@Ik'>Zj$,zrTYq \$_vY;la|σH݄31%hH*\ .h{T!%3XfwC&29SsԭZ6:̘MË04t.5lA^p=CcpXHQ-=/*o|^} ƿ |2+[䕙yXi .9{/E[O)UNKyffK<Q%SC M4ƾL{ߦT/R)yX6ϐK`,3gj#/MEׯ"Oy} ; 켺^Suz߾:C=Z d(9Z?v3JӒua1$Ãe%7EᲭ[a7E37ʩ4_L~3*R6['Y7ujKc!/lMM߿"#(; x÷}WS-$q$Æ Xkt5ݹm `cW2pgZ$Wd+ ,qRT ށ-\Wzkݾs[:8֞L*&i>Ƶ~!ىy&MQT +yAid>2<ѐR7 dRq'!-G/h&‚) Rr(d-{ZOpZi~q% tgq<-c\vg Ro ~\G0)Xr]q^]iԆ=SJg)w Pf8V" f򡱿J ޭ +x2n {[WB.'Q1cȏ:{v5׸w!~,@I[LٸH#37Ȋszi$6mRZ>xxUs&:]7"WZUWFӉ <*b=oy@{t!!7ʎCg۫0Ϫ#/䱤<"mt[*# {赉D .A/.MƉXD>zmA̾Ze5oM4#z9$?a&_{ K 4\4|)em>riV3`q/٪V(19݊kֶTʳ/<tV׎jOrs{hn|]vFGu7$>󐀮sޭ|G/&!Պ mV&*M{f0MLd{NDiXRۦD~V3,Uw:fqۿGݖħh^#7 1`wi *'&9v`63O[0hJfʫ(Cv>:x,+_ZR5$p2 ĮV]ۓCmwW >wf!;?Jua4sY> Fˤ+rzqzfW8oU ܺ0%o#C!zF+v'  JYMkp-Ǘ+Rnt*%,@l>xxiTzs vMDKARyi4w 6Q&3Sd5&_Dg9^ tEТV+.D bt /6nN",|r[-.jvQc`01=߬CogÝ.ip;s#&.UC'7ze߄Qg$s%74vs`'Ho`B;F4tS!jXWA!"kƏ^#aT2IiQ)dw\F:0]g#J܋:u,=@w䒸JEy_WP 3'LORTtsZ5?AIY羢0|~%H + wB]:G_qS삸t`[aEk>D9͇#m6\+!T_ؑŗo3Q dĖZ\|jw>oY2tlUSX)yߟi[M(9GyJn2ݓZs=p`M'R,t1X~ŅPvHqڼQJizܔe" \p հ/AKKX  f0I7{@E%?L t)-:2Ve^HD|l ysO%  ۹ tRGƅA򆌵TSH~R!6b=6)R慻 |Z($6`"x|YFJwS{T5@J(Ź8h 3ުƪ<$bZqDg;s+,ﶤhw8<53~w,r՘Z l5 N_.I2F&R, ootjᢷӳv[[,q=i7DeJo_޾ِFpLI.=;6.)*c J ;j:Ujʻ \rN@ |ao,zj,4 6ꁚflfO@N)'Az`bηŷ#Q`d2hBq.Ϟ"ӤʱERu|n+iק$]MFtRG,@ಠK_tjݦРi!Z #Bo)Vq/s8)y'@ݴd#X{k8|JG/1C7:+ET& (P<%;: a$ps 4<ًAW#qE 9 EիB*=V{sټpSo._+DVWcub MED}>{y?/)5 |mn/|J abBYe #탁KvżA0;`Ry]o :*;z'4/ɭvuǯH^ʎ'Ff:%t*![ BLjI02PwA,zp޵$DXڻ) vǑCՙc5JeR(R2dߏj8$Θ+1,Gn(`%'*H];}jە/sZ=٬ @ QM0Wd:𹭸ދZx88~'ԥc##Fo%nDyo#[1VRu#oKt{m d6MVLY; {CGv &j`{ ҶYp1`>P@)HiIm>hǿN(\ipwH،Oւ2[ܠ#,Wi>J_D#JaɪpN`q1hZWKb ,E8Y0ugQ|;Ev$xş۪u<\݋"Zved`l@P_"%,J]־$A23-_JJxEAg>f d1Rħт{e_mhvg^|b'~b8j oY^0.Z=V":k!GU4 hi,L.?Tj[2T7d*l? p+ź6GPA\e'DB:RL*#-&?9"+y'y0NzO[M-{T?(WBO"~xY|Kt6]gg2hm6]땹Ķ 2(3kf.1E5P3'lw?^i\ʅG_ QYQ *SkFʹc?Z1;cTB9l5p!˯&9'yAo23Z:̓y,6>tSS_e]O3TlkS6u[ ظQRB>P~Y6tī|qXwb܁eoBQIZP/)aBdJ ZSơEiq80k!<U_J" dS\id _XjW8=x+5^R$ ~v.f>;rM˱'[8vf3}6>;KϛfMaD#34Y"j} ZOU:unάsgpQ?ew$V%i1"\#Y''ɀiwI0xfǝ;rKySV9\^+?{"BC RGuCe߻K |-ܶBy,9]W4zgQzt &z74jvmd E4m9QCsB ů7L"N Ffi7sҎy'D`?ZTPƫ97ȅ&e1)2#̿YrMI~/jtyЮ{뉧P&%,kNWkvwZbPX!vڐE7cc03Dq:ƝMR 4X'H/Hv*%+ۊa6-=izk^뒂o`xE شB G|I$,ho=LO1+^PU9%Đt0[ cW]ze͆গ9XI.-XMyDkz)HO),㣐 F7AOJbt[/%5}Be4 NOrRA`S^Wp~U1O&v da>opUlOSϴ٘1>@6aɴiv`pRiH'T8S?d~Ca%܅67%ufѴVZdXm$JDؾgN¯:ad0[Րц&xAiќ:zM>꽂<\[o񎬦,9CU1ALjc`Oj) 4nKtڼ$;2yzWZX[>ov ? b/Z+Vw΀|e|w=-"+7gۂك o|@W,Պ^C[nAeE)ˠC1-z|@9Y~S9j WRsŲ``J :d_ٜd_,YȮt 9El [d)6! F9Gh%g£_3\ul'J䰠\hi栍#ژ,dP:"EhF^= NZq,?Uk[5~`RPfx pt=$H[q/]U)~q]+yPFDlkW OZk?.y& [)xɫÄS<ףOTnsE?_hx3sMUX(e& Q+,B<)x`mB>OW܂u8j*APkXoyĚ$M|$W(ͣ 9OeP ٻIQ3x [3 k 8@R>M eq4BdPl,b=:cn\.o7綆b"/]Ɖ/{IBVf T4fu޾{6XyC Uh^y&+ #']%i{K p:SrG/4v_+HpiAcPXE_'}hW'֎i%Mͬ a{{"3L ߄\OJ1VmFV?aL ځ???`}J@*-q!V:++="\?ςK)E6*2GڧT6Dt>U Wb3@Lt,`6@mkTL}LLGvԍ&6ګe ѕJb\)Q2 ueiǕ  DpcH*LϔSz%Nq. ocTC_<^p ca ZOvCo??m3+:/IZ]i.?Hf7oٔr2#2 %~M ֿJ*Q LHq m9GZf-o7:BABV zUTrz9p3a"ф& S|`D|3D[Ő 1oqAB0T}4L-CPާ芩^{?V$B4/Ci%ً]o\P%O#N(B?a8k ~Fm6v|P6ZRE[r?Mٍg|D0)3I?gDc7+`h_e?jkqEflAp ɓ5 0|1'P^ ^7Wv-La@)fdm\ĕey7Sk8#RЇk6+ E{fJ9G S6yN ,>_,RaP]5|">"!9e. R#BE8XD@E´-_ԷFSgT5\.,9vgMpGdܱ\+pPGB %nJC7UcVBٍpC/nxAnEY tqĕ,V,?aiV@"/![R Q S)ڴ Yj-$Ѳt%Q3yY )fW͐=w냪De &7lW# Gyƈ ֣ g?-AT7 CJ5:RhmO*PN \+]׉ W.&.@A ft!CRcLD$}3puLx#ZÔf D܄yeϞ L 'ĕgű<o h&:kmi t5 I+}7!Or8⫯~}zPL6Y* x2!hA44Y݈Ĩ+;I`;-PmvͶh~n]F{zـy,n!M"Q&bKq 8ꀓ@R55WJ|ұ*P,oEx:I~`'a=j_ trde~w m2K.FP3;=]Pq(;*f;oY3,ZΕ/yt'g'/r=3Msz~-+::ފ91v7tGzL0ŞK"T?p|`a vEzV_Q$8>P N׀@\rt;obrř+6\[o6iXʵn"`!ʧLwt-JtZL 44Uhd1ŕgG*~NNK;V%}K yd5dh:b`˜K1}( x%ݡYgJw{OC5j LmOoɐϬ|7޶~2[vQJTTDy<1 N6g?be1ƖH;\yBuP_uj'gLI'b(Gu/}2u>R ouy11q;4UQjŀm|NՓrjãmeMtύӱjWe`s{c#ݸO&K+0DCo C9A[κ?Q_fImgŲM|4銟B~Ɵ2-d i zb @({6Y쩀J)nҩB S/K?g6@vM <Pe&-Ҹ_λRVr^NNk"4y:̆w3$X'5I:Zޠ9" =xiBhpb/nm e0E@kJzZ S&B?Uk/YgOF90Q&_Q"3|u#v3-a1xdS?_3SL{US6 E(Ǿ/K( vjm2Ȭ^m֪y~W)EY5llAaqsɌUv8\2PN {lT. M`|5,A "-j:kB:8I*I`fwX5D$T:&e/cnaM,(n59MWhlv[r?\8EY D@!L.,H9[Iά%ޱ6 %[q oG)#(N`F8´u2~kΪ?@N2z>'9XIDAr MP+/֕sk5Hw^3+2F#kAEY|:8uLz:@XYl/Ϥ`x<b^}ol˥\}Df4; ?șvE Fպ"'\$T9(xրsw\O{ChMZψg Wm`+i)ҳ5Sd?ELoKr.}{ c#f;ɜ _V5_ʔϊ}iHYDmM=<;lh0p!'O /ȖWtQ4<7͏F!Vx 0pNޅg-Yt$`?8T[򤷉 oOL,s!{'`4 DZtrFl@❢YX.|6Έæ70gAJz6Zi5>O;.uDt\pJT!车& #Lp]m]ߧٚnIH$<ӝMZmd,Boh:)s@'Xs+57c0q=麎W4.ħ47K ʬi%kְـ$ ӝ<r]*=&" .TVMAҮ:4DAI0L2E[ /oM嘿Y˱6sSnB?;jW\]s[Wx(_4UY1 2wϋ;Urnx˙4d7pQxZ sA`83-V<{~"PHcWrWRNO&LAv@U|PE{Ҝ{a} 1~p u9pt>rI!A=no{MIIHRe \O6GHS.6WId{eDy 8 ė2Wm](F7P@uɼ70Nh4!w6|B A#0UQRu񅚑duxRi3y!3@9/C`3}oE筇MXZUfRW71'*nQr D-OI0-Y5ay(;Ax#xW$zJ)٩aa1Ȥm eo(>x)>h`X4{Jт}spNXvkv/OdfAUg-(-~kӞ}+xHQ짤;;u>)ex=TҾ}0?oS }S:7Dɇ/%Qb'7X6LΠ*Ŧbg>2&~}(<٤q'uW !~o^܁a mYrpb n>%uO7ͰA- /88b\A{P|8$^fEeIǘ__z5UE`zim)/2L'x07$,U׳G .Û/5IuuTkٿn=O{0m}t5 _D~%c_-TdoK6թ B&  )>B 0AR(L}j{Xj-{ѾPI`d|ITWOjW4k64ؖh,z#3\rZI}X&lx %>[(Ӫ<>J$me+,"z Ptsp5N*z\`NlN?}c* T"ށZ@ߧ! +"oҢ֘斡ioĀ gM֎ w1wi$`AV@07 %}7-L92}21z/%AƴaBgEjۥ z,;!XgzP#XGt8}KZЏCPPN9 cs lْEg7^VOotJ&5skWHooHq.ԲYP - n^1t.$?+#S әK(i"jwGg® gŞ3,Ȝb2& Ym-c|{R'ҨKAUrp?Oq#R ]8Gj%zBK,%T[@^ek3uSoʄ9l41C4/:Q&|f2yJ]!! )NV>1Y&J#)vQT-G֕g 6B6ϱm+ $k8G/HLM~܇pd)eH719G=(/[Ǻpgj7pwc i뙫'0HDح`7m%gbvxia?lHc+E jսEC|FV%vCR*MW|g 88Rʿ5~@NHv̚o' ;׼wy*M"%cU8Wg1%CĜ!䌺 M5բҸK,{D3ƚ@0$oFg~ӛl>eْq.Nv_c`Qx ,f t_ zhco՜^䄯|a%:ɾl^.&έR%#Um禫:VOEY#s[z/"m9# 87tżPh5bZgd8}*@Pit?KˏOu@[l'EIu2e9)pmavƨb1CjƼމ;;|&j[]hw v3Nx;B%3yupNa1'd<3=CP g'NEP&ڎ0#:R42uB ( +[t\LPT6 f?U^Ֆ찣RM<)![Y'F!Jٲ/LôiKbfB;։Ж I\DRv~ f]– 0`g(g8y0Dsu-w` u cB1̬x]o9Vybaj@54FY92 xcF"w&7~JwNb.:qCf }FET-T()舘GZGH %7zBJkA?Q9l0pxfX7tBBjO{@)I_꼛A7E a@@rϊfKYIB`. >hO=rZgeKغ8NJ NyO*LIx Y-SpFQW$W-S#W5gO[gƽ̘BL$k 1 ,i8NfԴ"_h~8qZO-f6l3P4-Cv}HW[VwR)$p _J|INr/CKpYSݥtvFT]4-ZTGyAX YϞ֘n%CK8 8|b%RisٿdOzm~DP+XԐnu>>n>QՍO3>hGdrj[zb:- ͊T-X"Ѓ,ӡayeOEJx}gь@%,jVqڋ@uqG -r%y:&ozlH6"ٰ[p4=]"|Y?+,.fap:V-BYBgl~JaTJ C?v%eh#Rae̪p?/YZ x&|}Z%!(>&^n"DuBo)9'!±8uBŨ2 '䙹-DWAJ\9i㜺z&BepoH6>BǏ"Pqމk߱=VL4LD EЂs45\AZ_vNqoէ]Uhb|LOGfYoPhhM$f"4vBE>Pƴ06"5 g|Gq#^ȹny) 6__@썕;+[8Bz"fD2;F_zHUޕeŧP72ږ+Zk1Z FI;}]&y8y 0@zd ;+7zi5&&y}R^˒$_z#nv˴(%),[rǀ` SE\0"Af`d7G'* }`vڳFCV棇:] "CtR;Az.KୂJm]-C.|&?(IcGv*M~ihʫsTJ:͉hck^ ZXNABq (F(|m++XB}7Xg:kp lS'? YpӓĤ}A4QIύ6I%gմ((6.T3etj-)%tKGax wQ 9>&4Y1GAgE_ŒX OvE~uVYa%enk_H-f]'ob/E $BC*>9 Q .<+T׽0ehn+0ez3wgg~#ΰqPۇIQUIH/dd ;%Dբu rC> ?IDzH{q8xA\,bU:lGkaD@ ?lzx#"%̳}ƍFjp;ip\{hӮRB/T[ U q V%Z{qa!(&2ufK97c]=orc+&^% "(YV<5mW3G <%= qMdX%_& iԥϡ7|a])S\(4aiT0:ҳUҞğ;}<2`Rxn8rp᛾+m{W3rz/;/_xa)+% ÈMpۤHXZ~^\0߮С#/ BQ7lC@k >`RDL*TVD EJԮ'͞Z($,5p?"[eD9wxkkmKT:% "=,IXO_f3z msMż-%.O}49iWϨf$Ʒq:4GZ GL}~xN^sPXm;ThZ'XMgZH&񄭌:S(b6G!sh}ψpZuP{]s_)L.Dݺ#O~ŗN)zq򂐱}) C0[JN]eE&E6=Nn :]%(2]#~2O#N%PnU+7 ʲRa rg~;9E)%XЧ&'@z^d4K(V\kk(l&Vbוls>휒(;iX HST6CEk0DLloUD$7]w 0. =cYح0})M1*aE̗/zTͦpe-$6O(è=߸ țGW鰭$ 0(ىw> mXBj'j*i9.(z tai” #H]}5ـr`IH`B)}$!Jcg^dɹPυ6XeֳsA#e"|&$TuDfv{ڹ$;,WTj^{n}0 X &RL>.aI% V%/x5"yr2La.n*v4Rl<IkI]XvTfk-c#5fSpnbݎ]`fΜK.`!͜L(O!VqL:,u}dD؎7"VU_O# ʰ | =}x~uS+{D(Ύ~q'c]Io^HPwVm jA;Zn ^K|mBڈ+}8pf&Y oa@Mp eVXx4AtfĦ祈HK(k\5mցv|+Lg1Tʉs|3tVEϜe1@Y_=0^R)q,Z$2]?(iN)lPWe/1 *ee~jQ_.ȰZ#34qsT:`;UE~,qlB&W6kʭzHQ]vq o=_ٌv躸,N ;GbIL+aXc`B3к-&qH,+?$~P915!iߺв!VF-chp_Wwa >&)i/jM=@YjW85*E:G; V>A7]iJe6afYPq|_ɫԀaI F'"BgKR+*W acN;dpK{R{ިقCb3)rnf@OLYLy,+f,q|Q KL|X,+*o_sh ;ZYr&t% >=mgwʓ]a(0eh_G<_7"Mƙ6U4y m?Yut'2x~ 4}Hѹ!$x`+6`{oY~~~/;T+qJd4݆caE6c+&M ]/ŻYو˓yF͎zWMsV5DmA'j5&lL+irct#QѽdJgS6ҹg,@Gg<-CQOjJ1%}bwٲh|蠵Tt,;}ϜѸ4t\lDxICfp~p'/1fS!?e͈*]ӫ섗̥FN61 !e@@TOer"bRm⦑qj4Rl#C<2> m.,?g?044q4n/kl |\ {½W)T|I>~? +V/fC^O!íu*)oifg❆VXt޵ΟܨSRkĺpQ('*i_aWd*7աiзJXM"P|/yB͙3# |((!|+U{^ggE@"EѤ(7Ui]yCQRA+6plK6ք>#Wh$NTUI4uS 4WcJ&sOFdjPyH.Ԯ,0x@{VGA=}$@aCd;eG0q1qeaA{1F6BT2(X`j@/ٳ?gAaoC3{ku~ncdS / 69U2 ' +u^HĬ߈xPXo`FQ.℆/^垺W2_^0&qe xKMt;P$k<@;.ѫt&c +SƒV-'c>Ym v08~jM-h$L֡-y%\=IRZ-*gBcf\#賤\Vt?hsQ*I!+[J 96Z5@xc 4~d -M\0Oeu|^YM +af kyirVV] jLSk֫_KEYFeܿ,ڱ[pg 2u5l*5BفZܖN3(ת9!E=[CEOA/Y;Ά,CҜ|i<,G8q">6rG@<$+M;(-A!SܶnXt+tf_ kڙK0 ݲJbbN,4ghlyIsժ!OQCaeŻF,Wz0gx2Kl/ RcX)9p^=oY/]QX<Ǒoѿ{nTp +,@H@c|.'IIOܒ7~VyY\"zRXzR/xStbRľyZlI!&0)DQuHZ_p'} 5\M$\ ۬>!ֵlUT*Lr>*㬖_ '7c[@!@K8 }Mk2F \o%ܤY3 jʻ&BOŋLC/G?ԝ7ap?OE nfiN/_pUbMPk`R#_zKlhT;SC](v pɃ`.z]/<4; $ARUnuC H [wQɬM9 EFؒх]Z=Pe:D_L2g4?Qs1%OSC]֒WFJ`e 6̓ W} _[vCB5V2Ν0x$AW~Z8hy$FېFb{!JY-)ʝxO) @*L-Aѯ vW6۵~f`^TD[UEL^l%h% QD]=.RS-t={%[cU4esXYLťetqӮ*1]:B>*mQ8E+^Z(3>o0JM`uӚ̱Zkˌˍ_t+tsÃ,0`1l,GIqƽGpax܂Q%^~*U7>׉ *cMGr=,7zVm>/']ϻ$0B|6pKjTi$z@0-y df~<$CA2>Xu:$Ut{`N]0t<)kE1)3jYK<^׬L,X>~yڀ㠨^U= /א{>LN 6VxD@"W}L~Ym]H2MM;B v Q%= hb ÖWg{cǫ#BH%aA3+(0 V0>)^Gl]lBQ" E=\FU^̟eŚͳнt1ٝ=~ڑ|^Gչ>>)O{Z'x+-hÕCP3}JTt.RAqrC:r(rӠd jW 46uDxD0`3ɥY]imՇ cV`8}\w?Z]]»0r Μ=bwr [1v-=x69я40{(Q/ aǾ{vN;5e edeh^p)ܱL6 G{ HnAւةbE={N0(&UŅLuY&lǻzycqu*CȃHM@S 5cϷռiˑ kq6^0igԩSnqގ"mq?kt !wTa!aliٹq]ʙqrũߕ l*p#ε!!BD"{I\W|{ro%n,#0Uutoؽk$Sp1Vdn0Tܫ?w *&+D zmPH'H8DJ5²2x'k9g5<|"65UR~o" KGɠL :Y=.- ?L?ňE,C%)L [\0v;ͫNM$Ul!'d9*R5 %ăht~@5ʌS8q֥їT6k]3DVj6ZhO;2/egӸM B'ݙϪeBp}}hvI!fh^*t:0vm{YH/F۞1KFD&XљzD(nkd-c5"%SFhڥ e2ᾰ$j=O*E Kt*f.J@t,[Jv&/l=0B{4eA#/QuF^Z)mPn4s3&2?!S Za0stYwf8ak農Կ]mEBs2@D>ۘftτH[BZKjL(ݤb7nV= lŲjՊJqW-+v堪lo*7x#%kǾlL;L3w~~ðKGR{EsZVNHb# +4nI]u%w#yp̎9omFV &X;q(;{x-馨TP`Pkq_OòA?Ê8Ae-)i`p%?3j1)9*Rv;gf6;Ad]w^tdaVZ86E|GWZ(>3*6# m*ܫD;J,򫓆qcEUff"(0fAsUP:fq) <fbuaP|h>!BwTi1q?;TvFy r5iR*2p < $O h]T; o\ >,*&cg^e3# k+Ɋ\4hՑLlDr،S|F3S, er##D3t=C,_BJUx;'Ȧ,GקQ_2RN>HbFqe Z?ryU{7Ͼǣi0=;>gc5QQ|IP'UB>+5ȕhϦfjB.4Kb͞g0tlo^>ּoڸxuC`lԨ'.\O~-+֣|ʀ JtԐfu*$\Lp5cxD'ɄIg=/Rc|־tq"dg{)xoy{up G~]72n]>":6`1f!M\Z! lI'S+f e2 05X&Zץ/ABXñ\xCz5(9eG'%ޥJɠDN5| D·ּ,Ͽ۴}-PD~gAfWJL6BEHF[cXG]UX 3e('aac>ifHcoHm*SߘUIB%2:c>LQREmNG7L[j(տTN^yG;. Wk`ڇV?W$WF ]/9w U8#ځ|RIK1o4N%-f7J7JqY KF&$8'xf4|YbX軸ף%v!A2%Pf_^ x/b={)2I8FZθ0t}27tÐi~/ХX4#{t--֦vwc"7Z@ mhLh,-V.ȧutꝒpnJwX@OiLe6 Ob}+ɥVz3i>P$fdBO*ć׾) ;,ђZnuo k&%_#&>72ʒg:2On6Kb2_[;DDt7Ł`]F88{e0| 򼷟LQv.X}t욬1?cR'ldn ǨH6B~@ZEDBA=pw xyVt{^vהkKwC]^% g@EhTYZv_:U2t.A1s`h{5]XMC,x@K5RFXU^a=PgD+#*b5yFEA!LK:ˆj}k"aG5rq_.p1?EOp)5Q&Qg8[!J*'i< ^0q#ɔ]w%Т-y.7}nRO6N9es @>|cD~Hs*$ 6rH$medX>JL.N/pw0@qe4ۨ5%&%L r܀u#7(,aN*ϬnYt+ЫeuO)"1fџt`A?욯Q42ԥ-wajw9kޟ ! NTP.hLn;*E:*`nHYCFie~'iϸ%N?.]OVf(9eGm }PQ04`%_ $=z:*zk › d ;O|AL.nCU>qlٯWޏbwɡ]5˒Pjɞ1;mB[w:G71WʎcL2ý!mKjsv:P 65ȟdzP%"I\ĸ6{|aBdRAgYpm ^&mF 0$AjQڿtU} wX@eYi(G>19 Hr^ВoJK=^#!Z2[˵v?H͆V>] yDC!D9y?HXJ~0XD|͇Yl<|1bg`>Lғc%]xgLw=TX.nSG{T ߇sOA|R3sNjvCNueX= fS'J=_.){U᪜28od΂(0+OQs$jib]TIa\lVN}&ƳmX04nVM.l _!JqP 3+[,FKƉ>iɤ8ouJw/ !+#'歽z" C hfl`,?:Q :i- YLJb\Ny,͖V akj#gQ6 rtoTΐ\nHSaEJW6=5E<ϫMX۲1;_ʐ\b|.]" Xy`73WºZ( hOZ~!ml$Xnm9@ ̺fIŒPFo99&C43S2ɒ#_FCNr'>Xpz@Nf>_;}2 FW4Sr6=WhAH h~ϚX1GJypNSZq?y:̯4OOSH-ij-,2>aL兑,9s_`DW;#$KW|^Mb=x6OŁ˂(ջj"PTn&)1hnpgLSa oViF|ZK;YF#ߌQXѯw yD yFي}DLs)b&YZtu(ߧ2v*P$ a}Zߘ)GKЕmVr=~ʹI?]-nf%d(ťPy3,`ϙ)GБ&68b><= 4°APKNڔV۱y2Ofc`~Cn0:=ur5sX 8;ED65jbnqۍֻNsm/U2GP$ɧ_B20; \4Ao@_a1PU0J:A_=NM0xWwb5\sU"qL9Cc'\8NjRNOhv}*7K~'~?lx}GgLqn02Ef":hZf(>/iO2 zxCeI_t`/9$]$eܿ?,&T~yK6s PF9$Y2z %yJ|$uàCciIC:*pyڎ'*&ݓ^&B',W=yO'Uh^Z};'4,4oE֪ZS 7j[sf~iI|~^cxdЌD5MuX :Xƞfi97|~w[ߡ:)i/H _\OhJl$q+ &D5K7DZGrÍΟR|Hym` ƴ'eXV^5$;8fsG[QkƧMZ­kV^chSB;&W !{d&^A?o߸M_%u3:J0 {XNhC#I0ÜGP%̲cVu|tҥD1@x U)8סks1*JA@wEg_V`2WT`{xI+\]!xC\s@Ȉ",foe3`;a$]Dž/ o]\1Y_58O% D+%^\gw ~ &a $νLH aMx[$fZrDH$ĕvq]"B?Zid~,@4ՆwܩNj^Vj(cN1k4hub4NJmRJR!M-a8_srRQ`g  o Juѯ_3{O Bzcb5=nfT #d&6?߇ymEx񂟎ƶذM12ŨQ&!n }kBwy|h=/Ƴ WG(Ƥ}] nY^vNoA{ƗSl[M5u~]e[N& H /r|RۘMeWH8[T(NX-Sχ8=qP~gDDHX-&W# (\,QN%^gz [:N5MREzѬ &iGGWy&D|P&cә/{,!qLjuX'Su{{̴D=wAn+xx[l*]5ck[6uz)J"GZzǙ| M׿H5U/^h5=T`5:tJί8Sqs3$5 AF:<⾹M f!@["At&t{KD$If2^U,-g1E3Q-դ8A)zW.F=LNx`j>&.yKK-` zoSs.>Uq}8C|.s zMnVMF(Qmz0ymbF>|'.1ZLڝauPJ;ɥ?m80NƬQsD%իmN\)2w~LdXI VYZͣ&w[g|']( &6 E0LD:P$f}C6C: I "޳*Z O/U~1n؋@(> ʊ*4[,zיY ZB#njBCG0rcދQ vio:I'? 8J&73[dz;;fcƋT/x4BMlE}k?c\RGj?.4zg H'=}uqpH]Տܘ^y]JN8$#.HA.\Gj ݜZ}.aȭB/4d9 РNR1O#K @vR7\Jl'qo)\Eݙ*^KAELwǎ@*_Y<:.K1;eHlp>CyH@+"8~сLD 94YsM(<7IϴW)·U% $&a/1"Ѭ˜ ںdYǨD/~y|~4EhZu妅;_!䁪_2Hl?/:[HF=8OGCU`k5&:(Q FL4 {t(ˑ2rdwOszS&In^bru-|o`=]hbt-#{JE=SО(cՍ~G{>hvR_@mfBE5$)ﬢIdW?<Jގ ՠB 2U4_ ˣ dw i5*JX>)="X7p'7\NKQDK 4|πJ1-luYYE x#Pg^L"Stx.4M/Lg%}RFH1lʺ<(ʨTHFQM?Dt!^Qa\>-; $`"ѠyzD@Ѫ7`lI- hJ87q$TkL ӓ'W}hAԏ]ٻRrHp$ aID(%cmrk |v+{f>+82^ӀAeP2s8) JTae%GzVZ+ :wCcn*O-)'ٲ ]op/x?UvcGH,ycr -wŦ JWgAj_~]Wgrտ-$iUFWdR뤼?փLrP $rL.9v=Ez e8`+Jh=P<:H6W#!ڷUЌ3(l+;y$zB;Q"?"faӍ!eL)|:,ߤψk,NV48=(ROLdޔ8~iH1$WFH~Vߺ^U[S 1JDmbD0(lЗR'[ o;AdsPIQ9ud՘U̬S7evN͸%w``)z 3h]ݙ[ >nŝUMj+[ϷDN 6}=H>#'P%z*E{ [_!Pj S${\Ak)lX$e+Tk Mq^Cu )_n傯OQ)YG;m]O}1vCKbs9^JeuL䅈 b)I?s'@D4LkeE؂Ur5=ck=8մe:Q{&ANN sBўM0>\`3Ϥ;+(kȠCjpjPHpR+gTBJMoxaNrIm҃D#߁hlFZ[1-.>˯_rhSKt\-i'`O*,_zof]q9b7޿Ɏ1mmt@gnmP\MHo:z+q ŚC>Ϻ~4 Fǔ2]뻉ODD˗8']vMZY\.JV~VA'zJ Cb3AYŊI pZߠ|tW) q.WNբq"wPԾAk jdZ$PDyŎ=I"?y|МdiJ-n\bxϟ (ugld$J0)Vȶc6!4A eW)  w[i|a^ЗK (ד oX;jR G j5,=-`LnS5 d?$,Tѓ吴[*dD/h<ҝS;kCn7}M)tf᱀:6ƕ Eg5uu%7JIt& 11c|`3wGٵRLchI+6z\J y Pg%('u?%%uYKAAytOԈ2v68|<4h:_4vkSQ_ Nmד?^G~ܡ&lCdtv֒cr 9OJ:J Y~m9e,`=,%\ɇzQp~{5yemg%''7Fc>l#WRk 8i/fN:l9$@dmp1 oT"qYfgs.J}\7*@Մ&|%{ǞoھJg${SVҾ=LRKif9G,M+{;aY\gSTeEOz7-XbAhx !qCȸ}]y:ͪQ6;le IUg]Ժ >Lpśٺ5 C 8eb_1ˇv@\佽e1b@bc`PkךFƧ]X_J״]䀮߶l6xT( eH؞0|/ Y3\Oh&6? Sp>bƒ 6Jњo|6;o&3R`p;Sܓ/_U&EW'VF_f n'RջɁ2,]heQ&Zd $ža|6&Gf YIbbT$>/ڊJˆd2?v,\H/uB$4Kz `wW=}L Hp* HJ5FdJ"]j7IuN;Z)k]H͡_@x MjPVY:aXP29 1j;: e})_bae(s3xdN{q$wKK҄T }LJָKk X0~kl6IDB(5䲣s2[O&Y̍R-L&|Ft_9q=6ߐ2Qv}syCI=(htH$`cv?oKXbWvUF !7 GkG[Ʀv)|ddN >>rFʑp[MKIm {zPlmzg'R3%jܒl[}j>4q:AUYv)2nJ{;^F>\*0 c"$jA)¹/o!H\ƚ7pj!7.TkJ+Ew1 lL8FT$P 2m;Z މP_ j` Dt?7~#>?$$:H`^WIvrn\-ۓゐئ d՛z z.O~Cz!T9++M`sژV\ۿpVQJAo`Oz٫cJfI,WhNm8i62${Llmj9 K^, ]b"k _tʖݣNTBT:n%sPfrCf'yis^/޼-2-C(B~vo>YZ% -TF_vzƐY6-b4uȭQ}j]qQ Tq]LyN+^Ό.@H_5MP_<FH_LT%;o3I/΀~;Ƣs^ OCmUctjzWd$=i fE'W3Y6W\jàC_ޟ$p+C4ъԼMbV 1{hCϮ @bu/P2* Zӿ][/g4`lׂ~{aBͫ᳃N]RĴUm kWj۸IRԂ3;$n`Tgbh&ÌCGwvY2^'AGUI؆Vj7l5v)VkL^١bpгU~JYXU_tH! 8bƯ~rKBNX[ *%zL&~B?Qa;mr8)?Xr5~关h?4+j v Z= K.K:Nzs^X^\ K:p_F!t9@4`@>v͸[ X$l>rI#}0'S)E]%^V_o*!#Yb^7ҀJJ\ hm Sp{H.V!PG$ږ\X%ÿZ(ӂjD~D"S1rаb?8!E#[/asK/*716Kv @Kpq#SKQxVA%U7XL7薖{6shDgޛsmĂ#h %(MȗT"Qڝ!hC2n@M3Hd#Ҽ_TKg5j(us^' }aF2|fe`Mf@`]Oy$@Ic]XsDeLۧ>J"٦Et5G_5jF[5(Q1|m$$&ů "w\"#wĖ ݞY7Uӧ92 >!4h"Ĕ$Nb;HNBJ4>⛲N2P{eq wTx0nRi_w(Pނ/kCs|t#}Yw*Kg0|Gvw1CwTU$Q1&%?G+{zk(B 0zm:fIͪv꫗^kQj ڐ$w`z;#ֈ)9c݊=eGˇIֱQx*Ǖ(/&4zUFs1Z`4O~D(4<*yd1`{v9͚qjhJn|!8p 85ycy$m_; U۔.X[ӊh8/\ 29]w5hvcg7pTˍmbuVW$XLfn*3$Öȃ kZfFQ8J Ur~MdS @OXlu_M,$ 4ޏ}KFHZE1)i0/)b9Hd6*jWӌBNIBiVQ~*GG. (-`u}7%⬫dɮl0NNo h/f- ;gp\}1%P'K]sJ;t\u: &vrSptq9؀䓄3 КתBO5^-/ƹ@x 0h *!֒"=Ǵ]_"d'"BVx`nU58#0U҈Z|UAsa O۔"(OMz1T%shk jpjR6Sp @ћ\!g\;pFA-l#~e.yB_R'o>ؔ.0Tގ0ɣ@.Y7D k5}t_[񴯙1GbD'*'(S@h5HsʝkOuLlx"1.]GACesNF*"䣐IswUz&#+}}iT4C#S.19)X߆"eۑH_=Pъ+?s8 ly J_fy`Ԏ%]v{nu!:F@8Y9g,4h8| @iOBؓ}3E|%k6e ޝ.!UG[ xXn1bhswލxc2/=T*K "iP\)eYƊ9 Gy:8u=w;>G/s mu`ZNx@)mz/DQ˘b&D˲ pwyP@M+QKG-ȲU\ 4k)f~k@K{8LAplBnKzg+6c䂜wEБ^!~}TozGzggr;ڵD"< {I3;+ 74j::onR-& ف{Fa6BP7$ SHc  ʙަ +C%$^<>=;MT˝|B8׬I$+ Na ^s .&Yׂtl' A~E\Ez9J@N|( ]Z|WD-ʗ뵌"TBqBi מALZ oSSG51sUFe6 ~{zr.!͇_Sf@INL'Fy6~:"o,,;}vqS<${\X `f\]F#8sA p:!|0jhJajhED\Gq#趠gzYmtP]8=Koi9JqF FA|ő^Rf;X+ˢ QN&$x5`fB9RыuM]bp'hpgٱxLUc׌D;J< u5jsQ7=T?Ej㋪_ki=x&3ɊmIix\tq(ӧ1 7/79_FH*Y8wᓯ*?7=ap6I٪y`P(I׉_5ۑqwЁɸ9"3GE51|sw . 4mb@yz݋}4=eMA<[٫+kKAcQꦒ0rYP#Qqy2r|u()Iqd]Tv]U;ꬾHqWnkù\`TYOS:L 1P-'~HN.ͻn67:ᐛ.w5:4`&W_x`bd?;tѿ>+fn}Oo6xg"^I*p`bٵ+vgSzXkQ> "61)+tm<]s/`O:t7vJJN2j;o `GOIGmyRbʀ8ijg7GGwTp N9BrGDRz *OA=M,lEl L:dj93<&{F=>}vltr`8X u=A63}Y 21 /RWd?uS־);Jo]#GA:TpcNyNuD"3[aUj{]0۝WKIi?UԖ?c =/u\g$tVRs2gZ lKlzXt0Jc d hbjc!}*u )nbWoW_`d*c}l-< Yhe<M-iECY,g.T ѐ|!YjCOMj4/́0:;J-H>[TZiO^ "G<@q]"~Oӓ5( 8򪒒b1{FBc7?/X"!󛂏;Ɩر @dV9Ճ=ZSt-B㛦6Ef/<;$!a*==(`Uf%>Cn{gJm0 ^ ͼ4p@c'z(TP6`FWʝc54`Xsh)E4^0v!0ul%a-xEK(1A4dȿ j AiFOzf2ח]_ZVY.l mDm J`mP5Stz/}5#L X&х-\~~CPҠUJ &&QxHL0%RUDoGKj;Kظc6;e,YC*nt/j%־mf~/3-}ktc4/$f'SR)RYvPu4kDhI6LZJ{47w ᷺ BQsˀVM@ͣ7s v?B5Jb̬f3D: 1*.A6W3wLg q)ŷmHFQESjf.xO [ߣԍ΄ԉ}:7*j9RSdrn<[#gTyҞ|YGgz͊6pt [=s+:(SeF}ne5Ugb]֮b|jfEXH8}lhV&U a[@;Y'?? pRi(Ҍ9Wv4w+vS2KBrdXL)Mz[n. "g-YÆD |D ܉̌z夐?^&6$hZv~Dմ.JۿխJ8l w1hP{  ' e*EzebO>N@=T5#ś;V[%3{1;:"H8";o_tߓlN|N!:kΫ#*\$>$Zm9oa}7J5*;[KRXx =,,nqQ(~xPXi}kLԢQDe/K]BCcPTBgs ܀Di>{FYd/'qӮ59#b㤧ݙ>`?9\3 41|P{=17l^V22ǛJ~sۤϊhRפ{@.üL[3rFزAR3=%'u H^vB iGiAEl9g9@8K@v6CӸ8(Z^./XGo_YE\pM9E, ]RoD -fM}tBm@P`eq2n8`,}ѫS-fFї6E<щmW{p?/,íCj,+21梉deIl?18jSǏuQI0n.?S_VXj{٧1X4 `g-;siU7p=9D?BݔKR2n=Iv2..T(^&9Jl`J0M> Wqk%/ZAZ}%b{/`m DYԁ|:*bP9ǍR+yw;zu/…b5WM3l G ܂vuPOIk뀜h" (ฦOGGNgr /% Y-naN 8O/gb>`Sv;&]D\ѧ4!n|ڥ*>pNZ!v#kG~&Ԏ1u)+.Ε cB  n3sqo G5ݠoN9/~fdu$fW)(P 11U5:ַ)S?UC&Uc*y/KۍɠHx+O'Znƣ |26(Y֯iڝBonUخۗH$ziD=e)D1}K@F c*o?ؾi (KE/p_;QLq˪K]G_z X7$80hn1>ngban~/GK y4hˌ\'Jx(Ɩu)#O(M[ݔҲ a)xeœIw|x4ikfuKQ%']CVP%]}D8ͻ֪d3ʢlP_$d81~Xo[5Y\ ƷE@ tgɱZ֬a"ʾEkD3hRT-7!ÞOXi6ju[2/3׏Aݿ S[pJUsunFB^~z-iT\}N -h.a^۳Fo#uspQ!-'kK'|])^o0GUJB=p`V*Q1let_9|ɝScCeJtF s:OyөRwYC`Oọk:T}c nPvD>iM K VglgNNW9٥ڼ,$Vj孫xpDA0UtEe9ĀFSfvV燗Q=#1RvIN:7̾NjCʯXBCRchB8ڋe(eO1ݶtY-\z_GI pz;-(C%efF#x,=:~gHD!Ef6D|1;t-^d}v2rT]CƂNj?סn9Z3=ˆmؚL҄F;CZق})`zӠMO0-C D{^Rvo c: FJBBڷ€cL/~nK"BA>YTN<ZX_j!JϋF:C\[/sPhQ {Ql謞{>UE߂jh!OJ*'<|nBfQ \!1x !VDqoi·, ucaP$5sϭx⹾y~xqxghsLyyf o<0Z MDi9 DOGs9ź /X=:Pl߻$˗! :/ !@ N%iA&T|eR;%aߍ@j 4󟼜]ɛ`QtP-]#ctTRPpvxOF:nqGL!>*$>*Hj!kcZPe˔`jx#y`m!ānnu ك"6X]>&j?<^ߑvUCbYsN-d bdiÆƠqڤ \A`d}DmIz<)`$wm)1NMOV0.wCE)~*drsOjT]­r)Mtm-]a~6DxXse<>1r 2!G>w,` ``!8ZQHն9pC 溿KY uñt:> .D=]|,'"='G( y0ߔ\2=~8pٴ>gVƯC0 \)4gOm  XIQc`@rx_$:gC@ZD*si\fP|fʽm#A5!`]*E0w.TN9&Yi.GcX臿u_O̶B<^,:YI2biz"+a, LS&<7eV/xVhovR>'ȫ$09FZm5_ CMnp-7yK)=iD4"5]U ~1Vns|*plԠVq!"ڎ,E=\Z;$^&ɔr/X0UQ[ osaWJuc$H=,y)QlĪkO9w} C,LެC.pŭL~O~ASkj\^LtY[R?>76*tjl.:jMtGʏk% hyid6%1?[CEl\E5M 5 @6!K/|yDߴ N]~?l_iNyk%5ޕzKS y"~+bDbhמrU/*8wۮWSʈڻ~x"D{TF{NV۽GEV`EAg\sG yFF^\XHld%Su`Bò\Eo]> sAlg37h1֬ʛ)q6w خP$y܀v`3,7m^eÒPk.?1B8ґ1L9 ;?`c:y* mq6g$O e'B wD#N_\tL{& {Ak28|S;`s˅PMnPBN# i\ŝq1X4E'ŒơzZ)z"y%|=tuZ#dT>ėzސZ♈XUx5n8yv7IX;Э1X{G*ݪ=h\Y"\w!hèFrte2|O9fE@@xfC7s "1muoXB< Mtw(ZbUJrڱ UeyYS>,% f/7h\X|8!'ۻ2h@Rk#sIj0V E;~kFp]A?_p>wGϋD櫀h \1 <;fez5Sڇ7՜[fy>IԎԨ@B,[|3'33%| ˒j[GoL7Hi6wo3jlY픤GIXV(*f8tc↫]?IT"Mگ8?Yql{ǂޜ!X*@3mL&.%@ أY,n`lö%I]%oiT-.aDj=\I mFƑ=G2w4nșa[,dQDW>|Of^4~d[_9iFy{%+xEo aP~SȬU@.N,ǹwWlF&q 1 V] ( P7NB@A* ^O[Oq샬aFE~^rszj|ڮOyׄ$}\k"Ĉ ȖXNcR EXb cfNa&k? 2^HS`a )B t$vƷ',<~<>ZBADž?Dp_W{f1 !8y¶>+r֢U*Hnh˅\e_dz4OuD 9\mZQ]eCp?SvwWYRJ>q 3-̀۴K]\S`;\@$FM<*c D^[$DP.T7M`\*tLc^c]ۻVny,'%iR' @{[ta rVQm"qr3s^m? dMh"J7wDȎ1[X| _%hWޑ8ȴ0eLe!5~QɆr2MroSFq^w->3M ~S3\F[rW̯Uq" ֙c[)+ (]KCe "9ҭ1ɝ`gF#Վwr ʔ ]<=@+-"p6vxM4 {5G6eA ~ԔoH ñҘM,]aVh{izBkc[k-)we?$N,.I_ aad? .Fv >jaɊ䖸+sBAvhD%G5ؓxp ,:LVlt`hg^qN |_0V x;}h@&öcz3P|wQD3x6Q9Y8NZȘ` X3U[ٚPzvMǂ7T<:U{-χiZ^_KϨCN8(Ϫ6, @tdB[=eMvA{j7!,=k†gQ]J1(RNC"۽9y5!{}\먚d`&pRXOpu'e%r5 ͸n4%hJhP}sX ӵ9~k5FzH|V"DD욂+PvFk&kLcINŨhf%G+"*mA jLx !>ꩃ@-xxd?:C4ufНhY' hw#LϨ1둶V=K 5nI,:I.(HYmĻ`OI=ECٜ0*# ǻ 04Q(9)^V -v&0]O뱵rJRh>GZ 'XWi.f<@~k`􅞥EKROEJ"<8)@XL.2QPӄl?ǿ' f2wIDʠiL}[C5JK^Oz&{o^nShz]/#K\Cpc*WnYNNJ8:-S{I/pۙryWًzYcMW[p,f^0^Ij0tuC%oB|=ހQ3(|)e9K^13-5![c8 s6hUަcN gN^LzCŋt9ě_*EpQCB+;:iG"ͩ*?lH xGM 슠i%twClV @* +iTC1=L)|q-xkg(: AcRu.j¡1..L A`X\z -!ԥ{ǟ1l[WD:DSO~cĪ)+SMs"HLJ2z 6BWr87YuBg#nUJCN|h(享S 4bȣ*iFͼGP׭֘к) ?<.ڶߢ7v6}b,E axcB+ө=$+d8jRAm{ذ i&d2U׌eԋuHB[`cd8_BJؙ)}ht 3][=Rc8:i46i[i` :%֏$&^GRw˚;~4B`: .,"O䌋۵Q"„Ҡޮ(x@)&J&M$BS]hQ6 b4}Ψ?X=Gπ~,O37*OOG/$@lT 3>)OͦVށٚIj5Pjܬ^U繨 U C_WN0gQv ȅ\B$Y%Tڣ3&Mvp*W04U5*P0r!`q"Ǔ#KtEKnD&K7'| rLW?{vAzySu+kR pen[̦awf*0ZPK@#; -0Tc p1iZvR?4ޗ+VA_d^ e'IK(\#\<2$خ}!TexuW#n4S[} ayO>C % yۍaxnv2>rs,F/;cj&$:(=ыSBư} Z uXǮ]wd̘n|3w nݵ\_'Ė!GPٿi^oc&ιvI*4FEo3l c=K7h2 r0pX@@Ȗ[$͊̄TOLմlW#Q^Wї*+pt*fɕ$r9%GJ?Ө; 2]_|j Wc#6<l>dS`eP@ٍ̢'NLsdk'/ca8:ߜ|'Z#/*™qu|_b`#a紪 'ovtqCȻ,aMԜ=m K2`oVԛI6ia5e86yURE<thL>e E=$6Rybj Bdؒc5h:a"'LkxkX,djɟ$s"[> ]Ԫy/IVYsL |0_l7\~3V稷QhaZY7mtP&oY 1 E blF7REMɫ 3')(30C^Ŕ݈Ӊ|,ɲH.}b/^vIv|ΒQ>Ge3qjj5OK#e+`L(O#:]ü*^2뛖CaԀp q,sq=)H6U3aiw(tEQk5II|֤ .,RXDR +w/q1eHl)^(! tɸVt,M$٭vTbS%{V(Mll*9R0ާY &k4ʉ&׌NDzsJ)R43b:_rX[qR&5Z ($S/ eOmdHvqal_zAz ΖbWMB}KmI mwcͲ3H;uBGWkg pٟg֔0kɐc*0 P~^V˪2ˉ.a+XrTfS$9{Ŕn1Q%.]ȂX!ٻ_&u w 3|7#G=2MFtQy0 ۱r:u("_ #px9fe=;e :F % 3-˳N9˼r. | $oJ"ϯ8k_Ajqҕ)7C V^ K+|S"-00$j'y1{˿d޲ƪ4/`[ϢY}. z@Sg9OW#B Թ 6o]YÉ@]Eu.PVnҲ İՆEQhǟ,H=;#8Cr}wXqhcp$w-DЊSzb3`RO?PApm3T :BJ%r>?" eKl`Ow9itQavtN#(NŢI1P^q(P<[M˵!iu#{=p vBv}~R5t?H~D_n/\D..XDL d3^ɍnNJ 9?P$H`ZYyW8{EpIf69mDB`=H,#ewe[5/M[*h6]Ct rҀdCPj!Uk!om f3VO <*ޚnׂnM5hBv\]؆R{z@:Ύ!-?[a=~⇸= @JFNj`S}z1*:|vWR<>. kט}4kNu=kV˭uX׼KEig?↪'T fYm!tJJq(+W?Y.u:/FSЍChR=/XL"NfCx2;(:HLlBH%/?kjWX-@rqTA)zH3@dZWlQ͆F ( 2;+|x^v {jҷU3zkP1@ o *$:Ic 3'ϿF0 Gkyiƿ(fD9_{/FW@ܱ h>zy7`?%8?Rya=mi#,q9ss#BȨ ^4Eaܾ~"x90)F$# u2jX{w˼Z-u9Qmqj~r xu*AX fp 嵛\7>iYFmn_BϴYa?c .<Ѩ4AaEmgTu9yv܃B-R<[m"f]Q쇴Ԧ2܅D,znY!\(x&ah7 в*ϸ7qNwSbdAҦ %(*9dog3ĂEA0tY'ҶҰŮE&2!&ʿvq7v]LHDqkHA }P [Z9.&1C4'YcAqSz<̳w~B3>Z(/n Ѕd6L/GV<=ZsrTcReq mt K Äm:ȽB 0}{l Bn_%D<W kh7|ѵ&AD!p[Qx/iH]?Y h~DFǡj[K}ͻ9HXM;dTТgsfV}xUѣ'ӮHKn(hp̲(-Slc&(6=ېB퉴o ɺYDo@eRuJ;evy5v|Ki??FroߘU͑:I%arr9; zUY IRoBFn.ae 8inTM,\ Op9n;L^tP E D^r9F?c'Y}A!1:2yTq#PfVKDӤR@  f*ٗY̘x%)YRry ^6fD<$W r[[UJjZi]R^18!`x'/8OiS=lV~#-ltTޕҰ+j?fu!_uU] H?(:6\l m8^p 5O/\ZX J{"7H2­\JeR5R)~[}bk Ej2UfQmʚ9n/ml5NRlf%L.%< 9{kt}) S'cЧ6b|G8t܎csu;jOGc!|@[Q $ x#ѷS@d'r)$g#g@ಜn!{{[C9d׹ sZ&W>2Ь3nSC%JH]L.0ןC V! !(N݉+YmӔ;vX&10YCzxib6g-mɮc6G0q2*Qr:?ФB6.!\55 Lir4md}g`M 9Z,ǁ&Gaꗭ[+)lQ?ؠCwi&M#@xd!{Fg4."fj:Womz' jfl$JƬD>/r~p)vpMqWL[lV0p;?=MwWk)lC C.&T:GWl-K0 q%+MA L-ODmsYH/ -{DcbWW~IȊ+mF]ݣ H,#isMX&;WR891jdF4u [連Lۥ6 z5}2жEc-mVDCdII&~$EZ߅= Ҙ.fX(8Djmr'5]yme#{\a.}c{nAM#n}ÈrJh^wLNW#4K#^`R˕3mmO 5ʼA͛ԙfv:^F @ŵui: ?>\x|*d ٞ tG5'j7"d IJw;[_ m R[q!]KO6 Ƿg[r̓h^> 'Jݴa( H;(L^wk"\ *0:gvT3S8ڎxIRϾa1daE\h MoJŻT*lHyrT︡rfO}td -%))]ckPJ:|T&mpzJ}?w.E>k{ ΊK QD~vU\Z:-x-Dzhoe[K:KԌ}铷}c].)RQ/abqlț-}~_Uæ+W_U"g2j ^a ;D1@A%k-rG$׉BSAO 7/9,(<5VQ"bgݣTq3zv4+dhmq%G?q8UjW\4̖XFo2`uKB-H1DXF9?_\eN.Cww)z-eKcw-hG<9J@rGR5UޟL F@E$aY/A^MZꨐ~[e(?xc( %sM4"? )ٞ0dmmx4qVvyYmt\Ȇ2,VWOۣ aXVYOALOd.XCKFq CJ7r˧&'송^cXh`/Ɗ bq/w@PSc,Z(TwY{&;zQ lSJ~?1!y$~fo9(@unx!%aԳ6Bx'9b0Dfz^`0r_UOMFrHׂ:lytE,Q3-Lj-P_s1jjOp޿F\Ըy4P4n3\?ldW/Լ5rO[?s"JS LtKґc.oꡋ a([?%s2-|ؘCBZ)2wMWg:1cY4N0 0d=cr`2A+-LP: UJK$8P`spŎz Әi&#'m!yVw ؏>;!8W KSh3x=٤F~Dh-`-kndڻ-p<2еiF#6tTD ]MWrOr\[aqtȯ?fPbR)7 D6Sd#1Ѓ){TTekr!h{en9i :v1Vqe'+CC|M{K]\-r4rտq# F86l?RI[ONgr|bǿ|0z6iS?g+H|?Ǜ=MZE?ly4CWU+![i<-ᰣg?c5ʦF?$5ھu(Cc^d9(HP|wN5 \\n^TL*eN} 5K=IT)2xְ]jxr%AQSc2/n]ouDL0>!e OoZaD+4S7<0`ZBދ3SȈlJ$Π> %1jʹQW PNc`ԹGl䞫ުQ} ngc!- NQZ5?D"k1-^NZL`(\JC{Ƚ`)$:.e>I Á8e?NٰPj1\6ur;d5ҤBdmEn>b4ൢeKHc*Dfi~WtCJY1Q}6*6w P%B{0 v.7t **!!ȯ沐 9(w5D Ma% P  bGtFnCs#Mby]ƱrݫеDzjyK^-mnfB)wF5:~Ǩ]j|ee|Ep b}U*Y*1^&0]<eW|mY!U}fx %32RϺp^81UՄn"LBWs܁T:i2sTn6R DI +5C~6͖ Ҽ:Jxj8Tsr 1:~['i(>|Z_]?!]ZBS$2_{j 4W,eStcF<`|q&ZyX* M`LTQ=gЛD vvtE6Ц]jzXUDf`ڇw P"P^ǖ# 3E[.X"c!؛E]-0r8^[*'EtעR[|ߵq_SϿap/}^"8e<ӽe.t\wV%Y7JYk) uB+Sc2$ge{SdDҕkgnJ&!vՕf:_73RlDwL#?i qԿ 4@J$|+Z<9 "nLoTu-[~a=u<6ŊËbgyȠc-P=!nT#Eb@c,o $,'ps|xi|O XZ:Z\D6VD%hk28&j9 GB:Ő5s~G5@:3T(H٨߈ߪ^3U,&9P{˷Њ[tBM9`O `y~ԧr@WB@XO@A$̟B߸|H x1TtHvQ##l M.;O$bշ_jRjaf_ȹ.=GRHQ uPů. EZ8d0j9r&a'#?et2n:iy.{4r4J 49pY +> 4^ R~T lU}qIl߅+Wփz'C1 = q#i -XμD7ĚЯΕ}(l߲ܶݱ#i&9>x' :va0W=?>!m7"/Srhry\D ^N1"mE݋rnrЖ%}!*D|āuS$(=ThN\}LfA>.!ۤb7XJ8jxiޫ@?"X]C(؞6c32o{[ѧ;Ir35[5!-j^p뀳{Pw{<;#լqBrkm1:!k }h*ٟz niU0 3i&AZ8]i'h}赬 a [lny.w+ڌ䲮Cb50Ȁd{{laLY~(NuCO;v u!"آ8IiWl}}dxkMP"H8n؀KU.4ȅ3 l>vYn_UdN4mp"KF6=Ӟu 2fa?z$PC d4Müىr*BoplȁE&Ҡ) 3m6a++^,- ox8pZ# QFH# DG]j8KNC@Ϧ Л)a#EU|h9 Z$skv#a5Çl+hܫ֑؊!&9/txx /{36V<+49ߏq* ^!Rf -~ s+YUA?^4 ?ԪGFf*:!Vȧ;aib& w@u֐9Zqow!,Fٮ!z#u0}BܪYI 7 O3ceXH`SED (?t2@-"3/*Ior{vc-{0\!约s jv`Eۃ#FlOTTEOZmJ##:0b fJe `o<]- =/^a;!΍bM{m?xNŸK]OCt&3鵨b40;o9TR*PxkLU<ضj8bd&j=(w: qGDntQ_܆{ә׍N+@@]3uA56Rc2^ԇroƢXeE;.W|Vng^d>7J;t\-[,6k'Xm+p1(@rٔ\R&~)>3FNxEk΅!Ql }cYy:`p?U%B飅]Ȫ-`f j'T\_ӓoIDj`c32Y+0]o@0}~nȞS,ֿӇf߬:Z\BSWTGu,jxo>F|_LW}u#\Ay nP RN]`}LrC5*.7k33+8XR鑉%kf>Xd4ş= x:WIc 䰠]I93$@{Ao9Yacauv%0~tSTI"P ^WBUe#!WA[8|w $Q ȚRj谰M:ſh *̷.ZÏBj⓸{o56Ww3` AP։}MeBkz 12=WCZcFEt,n"elߑ^~B(r>rTJEgH {# gm5#!MY[EFj wy,°s@[sPy⭸Mbc4Q.E343ۡ9^fMjEQQ! M1Ň<Fv?ǭ?|=|=p`Le,@$bځx{gwq9j:*?|f-~?ʧ=BYMliHhZi׬ǭ[x]z&fO""L'RK6L Y0EO 7>W=epioFЧۑvhtnN]|.+.EKn|Ĕ%aI@y'`'MNVEX@Ċ_^7ЏVL=9*G-{Fuk)| _%TFϤ[IWg(_jwt_0r0Fj/ Ym3~o%cyԳ] Ȥat_Ьg,ᙋ:+0CO <u=%y:kp3iQ7lOZ( 8d=]DS]Cj .c_fg%т/E! -SN2(ZԛS% `tIgnt4W3げƘ鎆-,۰gNyLUPWR} Ӡp}B_za^裿{NN;~nY?X~@D:n/_ԚyнUu2@T5zm,u\ǿ 9W20 ȺPP"XŒgJkjJ46jhђ~ː&?h43PEE j۪RȻ5ߡDHT#{ѓ!J (@_lDI7K~D'vt<s7h^V>lcKvjFARGW5i_Qgd^l2Ul) v⑤|sޑiR"gg6ފ_bThӰ ]xcud_ TA؈E^clڀi[,@OiWPFHؒN-+$Q~fqN8h/2707!K5 p`ф>KXgruɵM3L$%ܬͶ@(rK49|_X~szK/@RʃΊ2)lg B`#lWUns WZ5 מtaū(U\߸!]+: ab6ܹG1%ѠXm߆`Cb*+>EG g__ V:ćq} $b -|;7/l,$F#Ձ.ᖵR~hud8,E 5ϸn2zz᫢ E)O8%Aк\5Om93-HF_guy[#;qouyV:15#r%|*76hi S0BiޒYCR9$Ĕ-{ ee R^0ԃ+Nv9êRb]9-<ԌJщ8rE`*W܊8竍 5W3aOHZ(j.)N0u{Ug'9ҝ̫9 ycQWӫgJ ndIIX'c쳎~ڥ Wp9+j~.(Z,7ްXj'0R3kǂf|K񒋿sVՌY(C Ve7þbHJ &)b{xDwU1S#aky 49hR=wEL%_x#qk,ޤNo9|yhO&:d3\R ogTPE)Z"\ YCP@zm՘]^ٽEOrbݦtH ٲsxP  Ll:QX\ e2-Pv@ [xngnn(!-%A8EsjnRxT(A-l/f ^#$S|%ݹdjN=,.4b6]HS Vgܬ>iQ,fAP>$"`bMZr YJ,{Q@*b4GzjE5d~ipH{@}"=pOG#QIHl;Upv ׭ծMvܗ~'c:nҍw%eST۴?[Zܾr~bߖ|v#h-y=0=;ʾ"L(ʾ)tYx0J@@xv(o$PH]&';cD[ܱ1xen y`dܳ~Όtw1h2wY}]K? u2kD2c4, #où}=|Qv˲{4`Q7=[܀Ew7P TDq / &s}VF,ExXCW*#S+m.~>Nv>{jY4 SGi2^6C62\ w 1VE)7iēK0J V2U `?{}")z?v^"nj,ӑڸ#-_!hp;;v/#r/S# aE3|eHnDwnsf9OQ,$j^wj'q!=SƾzƂ.1Qija:AqEW7#)TlnYG e}4qg꘵foVzτ\RR2DhJaLޛY/7EHwlNh 3Vg}5|7ߛ! c*7Vr@*7tY(434|WmtK+ZA B5Eם*`b4`0urz*#z\MgrmX_#^*dƱBZIFqq+/n֪kl9>w KD@f@P 5@DLiICl-KdDBUGTs ^K  V\/ݰMM0sQMo PXG{( 5 U*!"|.:v[erg£FE~.R%%(.zvAH)\[VLWn7[dw@u';mlT JNDEz2#AS_= !:y暱~=̆FRX-]:X}op GR *?f [gt+ Wfƙg(ڰA`p *>]B\3PB>=]bx¼ʩ0q^kX`ϮD\:E[H~\pmK׊GؚᰚG굉'.px\!FUGuf[Sɺ`/0ߖəjUٚdUHOǷ'"@'5bZzBoٛYH4u $ړL|-/L|xa4hIL:w8]iwLiݼ}$QG(jǁnϏ3ɫ;F(lKۓ636= 3cȂ0GF,{T<$ ) )g" tfrnԅ ZX(GБA g`F5At0+ Lz83ǃBIY4ntm& sc35ϏCG"su68>IQtO{`~oc/]}7Ξ92Z5z+}jz ",gKD}nWqP+cy4v@ ZOdzZ>PJΦp Zzo+ ?-Rc4X NdJr}<q+EiRlݨ-$ˠ$KɩޒDM1j:m>r`r4D-R:H-`:{nKdP%Ш>,ܿ5&wLxxG6Od$ hX<4M%@Tk:ZvDPaDC*HV^+yiC۾͊//q4-[há!Y|"g01LiY[z]]hVOg10O^&T<-"% [hh\idkjaGʶP|.5Opn>ŠO ;jd@TG^<q\t]u8藹_ycTQpxPAF652p!ALd`ɸbk2%UƈmE5El5<1$D:̵Ȯk`":tߏQ?|ʆ嫣_#us:m  n}A Z{A"@c[3.҆wXuNY_Xw"CSv!@ N:$6Z@+lࢊ)s3vg4CDuD?l8ZEg3'Yo4X {[#Ȟ`P[C c!Mv#cʫ/u'ޥ~/t8QetMT LوF{7`$\WIV_=|H64ci3A!@rO/ޟ|JhۙAAHhd/EnR2˧GFJO_KC>-bRa]Ad(\:4! ]]wXT)4^"^͛";bӳ$X҂m_vȥ{tX7'\|DQ(ap E8d}T֨x$nn2T:}O $/sTp^  ydEe.fE/W?*:6e;RSBG & rz/Dž׷=.U V޳jDç%w &?&" |AvHsvd:D*W.CY}M@PsX*0tH=.9{ËUj!2nR 6+}@<}m$MBi)cE`_kf݅3J[jr6~C lEǨX٫- 摸#oX"6a$yߦ* 6e2rthܞľ]-} HYSF x)N] 亼Z j8tjieKZ:%e b vE=Q cd 09`kMHdŷm0aG爘 ]t儥Z 1p=YLQiKSTjdKp2cG*"pjMx$r* N/y:P_[8A& lr`ýoY/NV!waS\sY1ru[ +-lxEn (/S\K/]i=$Kj宼TT}XL[{>|R AV 7r/9S Ig|12<ǭsz )-Hb 8aAxQC MvAĸE2 vVx5y{JRX.5l2/AFyZ(l_oa\lݍD.9ӧJj WP&NPNL!,:\6",@vXq;)8N߈kg9>;D8]WtU%=$驽ϲ+aSE2HF댵,^g~#k팥K2EVKϣO F/E .T芜B+|š;;LJGAJow|hBq8QZK3F1d ?ӹfN=dITL^iq's@"!"we9/{/>^S ?+?P,K#g8vm#H%8/Mk^?*ioe([G*R0)nenSz]4Tg1E#E6󂛐 KeY+nMr2tĹuACȐ^z DWD?GeΥ U"MۯalrWgSE;](+Fo 94B*<~|$ fjv%A@~&ZMʬe-I#v6j,Cp 9m涓H@|6p/ ,O DmAɋ| DiSM9!ˊx8Mfoi!Q̩ }H:"iI.oMjl!PܲDRm'Z0Y"ن?nIɶ`;Ȫ+pV݇`K ڗ z{P;$[v:OYϧ#nYq =g3i̢ݶӄ#ñ[ Yx=Xψ'8gҐP+RR"͠!eX1ww4|4TS}pl^?L3=6,Ֆ`\=G@V(߾:9=: PF.G(êb\@5ggv38Fho͒$Zeg-B&8eAS2* oնC;TIA)(4'ùb|= jAC <6Sk|kmЙJ|m(]#fRC7&UǕ34'̍SwkS>;EH#^hp[:ck/L&uDF1:lZzI #q١#t9T~3f`(qqVG MVu1R'Ts~۝uwGɌp-f!,<{a8H y۫qxP~֬ƛ~n-G|52֐1/jǖUvz㗎zdǀrJ |[|$g붗F-Wtp߸dW,j2لW .sOܢV+{Ri W 9yf ;?P,;A 6!jj.li n[+o^KR9sNV./H9|nY#dJRGns#RA:Wb!3J*-=lݪ}0*f@|XemKwUuEh7 Z|+pְ8c.#rhRc@wڗ5MfOh*6mtNJ;xn6h7ADJ&uJ`r܄|0FWIE4v5| MI8i'.blE70l(1/I0e%5 =4A/Evw8LoP7?R.F[_2X9# |0 cuŜ<8U%!ߞ윃)9964K$yB`C\:\V׺䭿.D]Ykơ6Z¶_j7*]Bx1NH@R>l;Թt=2\FIg(6ߊ!9rZ#_=KN\Nh'ֽ0g=铝ɆHl*nzS)?AV&Vѭ0 s6z4]wg7U_0׌~kIB;.Uvwd"hs&$M$L!{x:i},ٖ~\a!i.CTL!_ N/ĥB+TpD,i3۩z(m]o҃L@C?c;ktޙ(H![G`xtOlKXeӛݎ1MVjǘ=MqcfY' ";\i 9VϲD TiyBKu5oQ!hzAI I+o>:WUL%0}cV5-Mmc8 OqvU~c?3nk)I¶l8aB:*?Ak;~½@xvV5D!ݙX@CF7Y{ɅlHP/L|ٲB4 iæg9Hӹ$gcd;S[AHEj2 rLjq|ub>EbهYh#N?> o /H[c&"{b~Ai$z@;L, X`ڇ<`5;TFL-L4 P9Rpc/;\WdjHg D&Mm3XIn"sLq^|{YGl4smM3ncHeeNֈ,d28˰] 5tX Wyuj-v5~^kV:?s/T-Sbf'ţ5[g[k.~k0(ͭSRl[%N_DnVW:KZ X6AېPӁz&Xïkx_H/w+݌}@Y9BQM5U'¿49<8i@Eވ.6vb3Nq#5 ;~SژE\$9q嚶c(mvUy).1;IS'T5YsZ\~;'jbRiRg F +}t3 ,K(h|؝ M{=y":{e#z-?4)Wq -w c{yV0f-?6c7O^lX8/ !MbE?8O;pvگ+yg/>+NDscْV -1m؏lQ*A~7gYI(( ,&0n3Cu L4"N1I'وf+K:tAS8ZRpqRjpeibn+'<KC8| zaٍxH haGj՞n$d:UA.(aji_(ӻ˛]Ԥa)Ⱚ\H]kI=& bO<^ٮ'QW>xY)+Rӎ5- rVyY]iOi[zx-:j z-e#iÇ`ׁ^RpAB|,*gxd?nWX8NrPEڝsTh=uDAV?ChcJvWoő bWP5f9` ϳ2nXIqy6&>EtN7]@K @ :4GfV /l6>2%^apԞ\h}Ź" Cת)̺|Bm $7KzZOzS(Iq;|bQuSё8.ֲtT#`:qkc }) ÅnF` Kj>UcGr,<U2J\=^LuA<-ɖܘ"jC"vb2Kov]tCd]5}a_,5LZԣe[h5՘X0J2kdRyH+q6z.6TW7}雀-@]s X݄.7䶋 38yva*9 ŤA+`a㪬@F!&}y!?ȴ3?5ޟ(tasߚI5 m%'8ux+}M 5E5+Qt;}Qd v V+=eן~2JQLCGC@?GܡAg>${  5TUsJlPv"96\d} a-[vCpsrr,ݽ :}ͨlu|Ʊrtٺ9{E/x5Σ1 $6Px?RvnjߪG_2] XOyϦd-Diy NE9%/ )3- _atT9 .^f"~/.CE/ &.ٴQkyuyvQv8O mm vBdnbݬU `W0uo\G.] YXy)BRf`6,tu`_ K}hɚ13F7)7/ uw#k\9ςV̝iY Tz"$ۮ`SkC0QWKҰ bh8{ &Ƴn0 ^7~fkDsPG'֛ 98`'0 șwyHxkhRKU")+4aO,< 1z7݁P<%SB#_b#SkZwW/ʪ.X8f=^,׀F.ݢeINj + +sx|FCLataPBҠ>9NE8s&~QUoZ.֝7Vgxc7WëfAM录ՠXP\<#ˠa]Fn?` a5KmD=zLcNsɅ]D/ՍdAJYax!]Ct}vģF:K3F 薒W.& !rtC`0L[vI0(]=`!~[+b+;l_A::ftUWC'sj9oAAfE8Wa&;?KPy{ C=hhLPo`f줼N%V4m5h|Cu0eӖt  +Ujc *U/H\ vqxpPCK⃂^;\ugEb<2SA~bTob4!pUn4D .@݉١UAAEFw(]@ )a{15'̯e4IhH@ήDZw-MFInaLX!cw(Ȑ߬툋$' _#1/0}:*ʇđ:%'H3 C+tBy4"nP(41{{_SS'U1:k /QCQP~)YTk/) QXWǒ?kL { E= Qege-N%/g:&9ձLj<9Vs9U)j)=b4p΁հ-ʠ;A_6$ҋ8r鯗'QkCڡNRK$SӆX 3$@݃  .^Ű\VE2%[n dNaHD6.:t%1Q+ Z|?o'IT:ײF"?6y:I q`2]zN|"Xt*ڷN)AaFBS <&.y8~[T |t 91\gA;XWE[\ >83J;qb~J6[I7&8> UʘqB56ڹlқMhӹ%AT14$Ta%G_/ZjV bM0?ګ- ')=sHuHZ~5pBZøo8JBwXm I{g1J7'_9*@l!~Q*qIbsAY|~}wΌFEM[^S̴$;Jr, 2Pgꎘ]Ɠ]tB]g05/NQs[3N I=qW9b8ܽkJ yAdM ݲ{۽wºf~"zZ({]0sA;ܣ&M%ށ؟HѬBi]KNG:χ5e\K!rZ%lj< i]Ypf]40Rd 7]])C\_~T81Sj V`trNHǼ(#G"Pmj.!`Cuf<- iu!d@#bP'y8Y%MЙڥH_0uG P"W-}g<\0._JXju˿z#C`u}UUKϟ B|p91ca. $b"\ %#I]Swr"", +ooj}vHzW]4 'Zڍ&qUW6~om;[}',0XGx|1ȢB͠d7쐻Mk#OqNbq^K9b,F'x>0vI7{ %r1:@uJ^pBv"r"ԕ8;j}v>Zu rF"qs XLy+/jj? ێ@ ɻ:X)RqȰXf(\GrU t9U`O> Ks4K+c< 6Z~ aʱVMM b#'!3 2zoSi= i_nTq5zw9BHbpNc[[̰vaXpC44 1TP SI#sn.TXڏ7>4 SUaDlKi!6Wf5m[W&d+hqG f.Ϫ 9ܑ!z/UYN؜XJ1c"TSCdPaA 5"1(Ke$a^W&d3^μy`[sFy㣮}SKo&븳f*ߨsN_ 8Cyk?jth_z{)UL^Dk: !LjLHug|+ #Qf~Ljk`v%| (2wQJ m>%@hp';Ha|{4;ԉ:;V*α*h+AB4 0=E=xdwT9Bĉ힖 h׈^nyR6b,+x}-IVN/t8x|nI ;hIۥUne ~ ]8nd9m`zA$3W}^p<ے[fq )ֆO P9e;2΁Y\!=hT %JMQ~L_)ki:gl堖Eo" "Q%^Ydt!E4Ea5~/gGPہX壨Q#c4fá4nk"{?Jsoe"!Sn ICV<;c=|JhM+pZ!Pxc|0A5ʐUD㷿J{P 8Ny 2W*)+uH$(! 9SfiЇ|](j8ן;r& 8d2RFܣ*6pf_y.;1?=`5LݦDCmk؃4?v X?I^&KgKfNb{z'YЇSgpI ~vUG.|%$ݳxv[?8)^%kNn'!bڰO􉒶[L{ vׇF<]406F|l϶W>6`d|hk:UnKdZ~<6BVEA'ʖ2N{~Jn=U)Hl#C!'&L-]RHpHjG0 M{`>LK%nDe+>&z-v+ M:9F@gFZ@Бoo"@A(pZya|rPC()1bD"Y*a$yzKRit3l40,"i2^t xal8ɕ js1GV*# 6Dq#wZ;*5-6}PS.aU/HZ)((Mjyr);k0c8Pc?{,v7UyfNDWa[ s˼:tvd&H&/r B& 6I?~Ġf[nuHi.xכ v/؟0>)#º)'92ζŸq⻭%x]#T[Q:snɧ7g_C`ls“+1mZ=4vH&[nߛgBe!yIR=HovR*!|p {V 89;f8 #wCt{a^[ž- bmعtag?tL nnм@m >_{X ww*Yljbu\ATSw{0"Dw1=Pqפ7Z]㠅'sthD}Rl?w!wlH;!(7AA x~kvIhTsh4t\S<$ϛ!Ԩ#ɟPFI3(sӠZf\sS 1*Ď 6;|%e`xExmw]KxV4:ԃ:jiD*\@RT ڬ052_$~7ͨd;AKLAyc`EegOЯтڣjJm#T]Vz"m>_@~ sEiAgnn^vyWhUpžR)&I|Vʱ7l5s†dwq 0,LD 'V)vz0Ѓ]6%3ӾK @_`Q '˓o.׸fgG]qSi 67䁂V./g'[Z1ƒ+HhǸS>y -ˉj U"\R, S{"BXmb>ͦQիt'JEyjt*Qo:zYIJ*9K(l2{AtN0\/JӾM1[=#`!˞ *:b78+z{Xc|ZUV}uf[W >\$>6wGʭae@cTSɟZFi |1NVB#nAlIY.uOLm8uQhG0ͳ29ZMGVJhQ-60gzeh;  tfNKy0+[xUɊRU7N7T(aOX2& R bC#."1s:D 0|Y 3jR, N8(?Itx5NǢʼtxGaY;Q:oM,hBt2.@ݴҴ|~Dϩ㕞&;9=C̶]]vPe QW!E됈}s39 <{hx/")4tt7qI'q=xCϜ㡜gԗT &58 ywgH]%%eB˽R :‰ÅI,kXU7sW͠15Y jQKy{b+脲eCŨ|9aqط^:XMp:T=6O MhV9@18lPءo!DH#g\DGl|7(q 螙3B4t, Ҝ2Eb ?V7?ߧ-Gk&xʟہ*s,C@V{b>JgxT ^ȡK*s}? YvE>hI;0d5*cl26bR#uZ4 k_W^gWdIh.)Ʃ)@^5˳qQhB[8~d{ H3"DHqpzfGPjk"ȓW'c o+Nt!WsCV]BdBf+nY |ƈF_1R{AceS,zrms .^@'08.w.$נqKLece/S9&\486T!>oy1J@ ZLJC+;`c65=ڛ(L@^?l^tN TTvoLl278 雋:\!b gx78De.S0Ћru AmvO?ےe;^X D4]>5Kpb%DV}.9]{Thh47Qy-k2u'.g<2Ez"{2;V%<퇪;,@L5訋 #pX&WlƨdR+Qn3bxσ\*=뻇TF|v2]h N?,?d-9N72'a͇PVpM7fڮUDr5Ĉn+f(6!8{EXf8du6cmWŹY<~u}:˴6Fi&,}ͬ&ANMȴQgZx9zqPF{ͼC";MtgyT/!d1A!-vTm5;!(|~BDtO\CpObs%]tt7%6 :͈sF7)cI%G-+J(YzhhkoW.Xh:{ߚQFj "qe<*#)phO ~ӿ~<-,ܚu*4/H޸I\mXM#a"Awƒ&0PjKIG7q.o 2Ch픞U mNtEڤc4KufYxKG)RimӗWC¶"m8@#!e櫲:jz2nΞ5ɦLdxI@+rRTj|AaTwUz[aJL2F3$[mmTZ 3AmF S\F!>ssK7k2&Ҟ8Ad,W8%R64oY5:a=âOPYyTjc#ل7/w+3ưywAY8.8'Ӥ/dirֵCSPsbQ1@DHQا12y5`LBlizC3tmW'Ӯ**ǂdh٣oWl 7-G !UBp|bR77^*yYxEz\~L%y .e>-} _رmTyXY7h^{B).^'WurM+}?bC4X`5ΉN`bSd : 밑n`QHQ׳ ycśW (+1HK)KL)3;8q3a|Zm(n}`pYCC=#y)Κ)*jM3ӼCng4"UOށM72+|`?iDw{v~gkTq|4 S QU!_QIܗ!`+$=޳2~m!dm@aP՟"LW֑}Hqr>^BҫC$sJ27ar+sYqT\&i1;9/TD\]a,%0DjPs̆[gV. _BTpgffmN~l"]|&]d;ALZRRSjIA#"3~g]םfp˝66ExҼ/=d^kL~=-pcpP|hmAf[EizZB6"7[24\# o!KY(ZXȗm@b۫"MWt\4vK#qw.Xr7U-\6q8F!rd IiTʮDaS#Zbn~ЍԄt&MC;:<-깸"EbW6,=RO˃2sݭ~Q[\ij[-9.տR23# :Y* Ǘ5ܥC"!Q!O]dmzM`{Tok(l>XJ!߸ڷ6 3SJv˗7LoҖm4/e1s7GSތ?;5+H0BCL)(ɝ?翚AM|fvjOdVp3FLnP/mmab-l>Jg>zL-d~y:fQ4(JRdx4jGKJؐ.ty`lҎ;d$ZSE9:ͩtl[(fSPS`8U gҷ2o}8oloVvVlu_<聁" c"Q} t_ qʒHJDZO(:* ޚVրY"huWvY[/3$Lv/E@94|eUHsj{:J!ܮ/ o~]gcgkx]0\k5t1E?+ݡb+x))ղ+LG\H|Ma8<`({i_J(E@g4;UښQtr+q4≝jDwVh.1~բG&sVڄ#£ +$|*Ӣn#k˞qF2>b(ǘ?F$gYxݔ@Ά =~m\^91i'Ŗ 6Ru 'wu.lʪ um}̖ҐZI)G5T'1g6OD<Ֆsjfơ+}>e4qLٿd,ѓݸDhb9D/b#?H,u. AS{Kp6 ||lCA'vRXgq\+)8 \6R:<XA\U tW!-fV`"u)Ƨ=SdA@6_ax3F4GDE Ag%-E:)[;cWDČm0:OtGXiӱU 9ioRmW+%ȳG &Աc -Q1˖A `*uu)ˮ:ٍaϊؿ<'wk [FY9STÆ)Ċ/5[&ed*:r5E!i42DKRXJ`xWÕ^y8wzZ߳ϒW|z-zUy'i'HJM T,ua;L g+1W$:Mz.t4+`SYW(Oxjqk6y;QBhS mOZ9YKJXE9,Xv oQۤ@嗸µ'clvp\M6/C3G Nr2e9G=Nd+M;pK| b˒8"y:;!C:%B4_>ߋR2{@H;&iw*RPߎY?YD+t#h O{X|Ύ1i$:#{zWش;6>u?/FȟO XXG:LSa7voapյO(x+c0=>!hn^ǥ֞MCy*hS{#VZ) K!|Ey&8$qӻ˙[dk$ *q˔sҐlu*"zυ%%&=AԪA9:.1f b[*Bj"ތ#j0_vLR:nPpiGm*E RďeZ{VnDF䟽;'b- `!a*xZ?;5ݨInRAG~26Sw#foAP?L2"ɌẮe Teū ZRB>m#!Iȋ;vث7$.뮻.?*tc|\x(j#xTayg}b.0$םD@+2vTbSY \HO~E nF0n16Y5 vE=kGǘ4m2%]gftBH#Gy9"`^hޟXj0g ԬDJұ7)DΜDWE!FauYwn^Xq 3g:'P#G9\5jڎZCcPAAQJH]%$T`by(/bm F pCdY<4@J&^{VTPVö`۳dmv1t|@ǽCʨVf bEZVZ@g+dwxtqspY3ҿH. {Q8%>k2*7z vq(|O`-5\HsH߇=gBgůĎ`d 2+׵_[ZLR`}Q݇1<lf]DS=zc[Y\6V9ŭ *Uz\J=FQb6=KGXՋk~Ldz=lB3?|Y̩94wDޣBsq ~|%)ռ?V,?3YXE ~i/B9%et]RN񞢢0:,|B8źUA0"g|7|+O r0MNFmqj,jBh D:W[nE/N,ڒlP-TS_竴dY}\1b086rje9cgQ7 N$_9Βޠ( OULl9',sno&^,='h^mWXRG 2:褼 yt4o65/̃X)1x}?Q\HM^*D'ٻX2Šo8uFΫҫiB/sڢSvz͇>R8WېQP?>uo MN0/0IĆ7V8߇L?l7O]-ul)#[ɐ#ujBr7Xk8!YAWRPKVڤenΝM߅>h!]){ !f曧=Oq`(x!mn/moK>}3{ 5AijEl K>9<1~T!dQ;*E/# a - Y({uQuNQ[ĸBXndgrɐ,e/-7\@.˳)D+*{#PcC1dJS{%&ҪWY8FO}Xg|Gy;8i! zxAfq8NMv$5 keVW])fEO^kseO gYzK<-fTYhqM; mcXvN$O*r3W#OT4Ty 4#[ggP^x^ ɄY}P|f2'VF8sloFf9J:gs߁rA'.t7K8  KyG+2E;mfM#ZAۚB.43^WIcό9!ClCؔw{iTMn2*C@%N 8\۬A7BHӧި ?9B F_:D өgQzvahXws,b4m/Ss9B`GYdjeZȠJl;&؏6GAۏlBH0nm@ lf 1Q+ @[ؕ*VI;5:俙cFQl%>X;$999 P.g}M :̓W- IπoIJ‹kը/Zd{bM@mXC:lzsv7= YLuyLp3qyHMљ>G?^zH՟vS@V(PֱVK/o<*Pn§e2nRG؉dulP7rρ{gߕiKV[XOqw`d\]e* ڧ_}SD|UsCm"lhK ϢZPORVn"2(LB-3YGHO2"4.węy׏ .Y jnp{'~P؇D*)· gWl/ JʷBh^ov سmHz Do}AX995@c 웶7]CC|K0cR}:r1YU-4*@X2H3n CsijdzZ|f$BQ[5^k%e^a]2A0/*as]*:2~#+DEl5$P黡'&!?יte$~VW 6_8~ĕL F:li1JM}|'c:n"UЁRBշ@q'Obc42vdlJ.o\DwboΝ|pwh}5<?gYRx蹻㗅ncLA彳|}ƙ>kv"5*mX7y$>OΙY8GJwbX*a NL~%#PB Xmz1Ü\ʂo9@3ӎ"25뉲̱bh?(u\$u\\3ͳ>XL̡:Io_[JY3e~X%k(7³S32ix@yX䖤5h%=˽L H!UMz< WD2Br !f̛I 7=[9̫dݾT9D&'Kj~+Mb/ IޱT:gnsmG_$,6b'_V9?U/F)( yu @s>f1{3ef@;ʍ$Ɨ7N|Ṳ #.e6*dd4XQUvvu!p=?5ݫJzcmhYʴN*a#08&iuWϺ)s7l l!j GR7bf"łNlkZbjCWP =i\*{3} 5+9;Fucأ87,MlpԳT+**:܁ i)B]YP] W F=(yG$p8 j|4WhI {D~xyeJ҇E5H?8z׷6eT箖1ʻ0iO>惜]q@.aCS{L9^#C\CP<*SBܭN&Ln54z"u,LV"DY>IAD̈BթjvD?#ƚ+Mzܲ0f6OK:tGu_)G،!M<ɂR`!T@`r m[ڻb,{KAGgUe v俳d$IKvpbb&4:X g3˷4g"~U5>]2|d%~@.VP(!%/ziUGgk:ԉ".\olmCb'KzBB }I[ȦC&ޱZv"ƴ/w=a+rePk m~~F9.:K>DZ? 6X 3;Žp[_ʲb-ZWrdB16Cs 69 6g &~GQ-WXlKSs[sȰnk5A0̈́L5eeB{LR0uՁpͮFxu1fSnk>3R9= 9SAq&B&xJ{>4a2d.9>zj%z31<;l*`O ' tb2 z{#iUEKT|52u-lMVprJ`j$s#Xi}yi j:5P Pxg^ʮ7`~P) tƴGe:𛧀~D (6z满~&0|瞀 N(1] 41;bP .~ BsfjPF`խRz9oEE2z9k{CzFY<`|R]%̮W81 /sFc7n(^,-b;=j'PZvODć[N9y^à*4*t 6}i jFWhݔx1ij%fSo.JHn gwLOgF-ubDW %ӆԤzx$vVB='i7+*|TKe;oN`-+ `Q"7'^~0)^Y1, YD"e˗ [zJ gWr3vB:Bff*Yr Fz_Ӑ+,~glE"M9,F ^f"8\ ,ኤ.߾spp S[m'e-!GDKB zF* H\p#z$M#z}x97DE-X =c$G fC0@|DiSݠwǪĒf8nduRfЛ︦lD`39D,f] EψP+睦uv)vlȍɔS.Yѭi, _A$z>3˯VIi`YNPʺ`:XLrkrR|m?R5j3j J:TLN]Xqh^U'bVb:̼G4BF>-&DrH啓Gq˾l# p4Rz{ܨ`YR܅PY&>5EOȯge,[55OdmFWͫCob]WY'Nׅh dϨc3DWln9}=;.v~#DdgkNj E:OSՃr[3ސɢ;#s)%מļ|ŪM9am* )g/X(dq[ ֳațQ'kI-"4T]f4ؠtNOF=tX>P&OhVYzJ;^b 5fd+ٛ[@UG&K* SiМg){) oUn)5&s#+!Ew] S˖J#z fsZrZ4An&֙(b[F u 2[-:oC =q=j._}ܽjx((ӁመS}Gj>҄6\Rٶs .A;Y.UgP50o&MϬ5 +4k6 _vS.d0&LkB5R7ECwt5kݼq91 {671z>"vmfVI \8fgx J:48 }$~=ӯCR$bcDƘ|!&)FS{Ak6J<6J9g򥆶;9K`kk3 opyއ JUh<dV;jN]%H61={ķ% #бN@擞N(JEZ l,JA 7-7ΒK" .qr/c˜ʜchl 3͸N B|u#yP@HR+ 1[t2 hU Ndg-{2#BwMo;.Tnc[:GאۡidBN7&^kTiQq8iL 0$GicJVI P'RcckhD@@TOUvZY 9tZj]ƧPen =r)`WdPY<yJcHLK/RI_' Y` 8˞Md(;8&HKֺSC)_"ڪF{ ['#EQhbQQ2qLdvwxgY~{'V3Y ӯv}CGQzpMnfc|gTW:TUݥkh~)g]z4[0 ^ t(GH!{= + u" ݿY(E4IKVo1C0VbB$7K-l$m @rf"l6ZTd1U@"17t]}LOe}z)p`{/PvP2ӜF\CO@`ĹC8G 6Ɛ]w %G}|'z֣h2۹1FFU`ݱ]z 6 漑? Z=H'p8EJ2][ݍ,˖@[:*.= i@' 8yl3nͺl@E_v?p9/<+Or\)P boNMą(-#E R&\jn`ô.~ܝ̀ bb' ?)ndX wX@- \UniτV7H杓ZV4{\"!+d4 f61Mraw_jY- {3J SdIpSV[;ƾ61e8Y뾐a-Üi;T_eW;SAM)ֆMR77GL_| V=-X%|2S> H;Jq,O"aW?qJ [9":b瀦mvÙoտHyпWÙ~ki8JR|kln[OQOcr*G)yy=q6V3.[.rIOSc'SةT62ݙ#ٻ663\Gz87--k>YǶaM}i||*4,֦]:,2ae^LI֛߹w x7dԻLlwi͊-mm?W@MnWPrɦ[YVKX+D!s\,=qS'kTV:g9T{TH؜A͚n=bL6`L >FCEן\1-D*}G[%CFhHyю= TG$Cab%؟k1ΐm_l)Z@`eK7: zX߄D!a~mQh9frњSմqWr_J1[h=];Qy/M~4'\ٕhTP ٸc6uĶO,K_Dy:-v4̵M{z_tMd3J3_ܛ,?K;ϨHMp.^՜5҅b^i$ ^ύ?{jwOK5gE;  I)@NG\3#BzR&.A"ިpNNT2Bۇ@r:FKfC75r&U:nCi⟴-N4rZ*Y.Aw `J"qr4L5GlX[ G:@ QU*j烠&o",)th51½w~WɖHǂQe%eWƠH|dZ;Ĺn{Jņz>} /PӢ% ` u11$G;VzQ" K c>aەKݓ1( "wky*'o2=vMVS"/#*ݶi(,g ߾Q::%dܜD J"%p&b"TvJ3إK!K"NĦ,,G|[#:6МGHչeV[?fbdWC4$ 87|(WpG qX*x+haL;8Wimkk73ܣǴk g?c ng/Lcc;T=݁TLdzDPg1 *@2bV_U˨fTW0Y7u(GU;nۛMq.M&U fF˗ 遷tMö%uI| õlzY-ʟ/v p UoU&Cbæ~ezo$"Oڙ[#I* q6S\:\ ,K O僿(;hDzUu^4N)O:ǖьCen"|{B\@,O'@cMR <9O:Jzg}z3uG3 [/uis(: [2&/$%RMddvw4Lq=.#5K'NEӄML&-vRSNqé "],Ƞ5YzWB,`pu52T_ n| o3ϥ,WY &Ĝs"?)]=ቀet`?mLcT%ttC*}Ո(lHNf~}h+ @Euw[&.:1 *zG;u1` (Qp`I+[aLZ D}}>g~ > <-3GD)Y+#5:`V]x/z͵`}ʰ&B6$}:<8u֊\$!"Geo}zXB FV|oS-PסbDzQ؞VY HgTɎ(^iXʈKx_X{8m0EWc&a4!b!^P>'ÂIpTFېHRǨ ^;34by.0o0YK-rbnmVG7Av Gc ߌ%@$.2c_yiA}h@6*aɊsI:Uh-?A(;@Gm.]׵py7O.zk. @}e TS01 * @e?O??+ioOЮ)Q*_,mW+sOr>ڎ| A. 6;q\W 5_k2bm;|bn#U,4: E|Ut>gcA+LD Ru Pv&WJPS1WbŌPcdtzܯ\lwڍPqTfߢxmH$ ŕ3jU1[\m:(IKhg1Xc P\j m(@y5tOBl@1\ɂ Yե-[~+pZ.(dj} ھ0D@|_!) = $WOP|'GP2F7٤bv*&+1Joǃl'v61JOZE"C_ 9>]`*= 0$egjN`T9c4ξLeN]=59B9#;mK:|2%l2>I@6*T :EJIQ\nCig*%mxOFfir\b<L->q_g~PB0tG|6N=˿&%1\g M>&RHљh4qVʶA !ܐ =1][%R@;_+p} K͵n6IP 5>I_,N$o5"@HO?Eo9s]w7YD6`"Z53_(|,U>Z F@%n.T"1Ͼ#/ ":"h}FPG:c(__'m#tiO|g QCmbW1^$YW`ݑP@g*Q7=1;RͿYXcO"7_4 p1Vv j"lc[9MU\<1ĪD[*HXqbs:7j ~%| _wJ#^he"Jc䋯,rH~3@!B͆ ⥑͐\D3[xOnڴ0~t'B̆67M\P~Xڻ 0G Bl O VUvN;\^:<8;&3"hW̩&=@*?Cn+JG;27՚ 4p1(vYEvm *yNlՊ`>~)y{*E[<'@l^cO=˅NΖ3x$glV@TSck2,-GkYt@~p%bb8GkV 괌19f["ZƸ$yqxOk*j/2`gmƗXLqJzN?ى :O}l77U`PokA|X:$a>h=.zJ#/N4,ޥU6x؂EV{ \P!~몁{//18ZFa|)j:d7bUM)k:CceIQ%;$,4{2X19D+*N",[k۽p#Ғ-i2PMD/J. y2A^_HЙYV߻n B}yf?JE]̱z"!sBO}(]hvh靭 ђ˦/+OI9`|{S/qH`Q.#ZL1ϩej:`'1-&AENPګu\3v^)tvƒn}sѽD)dLVh&7!:*bpL^I+/ Da:Xmd1#5c ]T c̈́FW"ʎ;ÝU/+o|N}PQd^Pk4TE N= qpf̷y4uzFm2r8eG| 'Xv $Djc l*ۋQ1-U֨)L-/IV^8DA#FK5rYs#/|5V{Z5{1T>Ty)@A͒:u߱Ch -XF̲3G$Z53ȦkRiSG#H 2?s?\Pz()>O*349WZe홰)ֆfg䝅[cTي@-vFpV_si!RqkZJhE *їƟȅ +;ಣcua)ii-,5$-@CxD6^hG:٢KPX @HƭFf=>`2G16mkq֗ǺXYA* ;ۮen.=[o%0}܎\_Uvb'H4J]l_7P9Y I[DdB7 6{BO&%5R.t߹Uj=ժ/AϹI4AԎc i 2ȹH* 5t$3P.$n}žY0{/XKnj1Z" [0\##ʷuKm2&8EoLO$$!b6:@7D=3{<pPOINVx &Awz^f+7UWm6GaI7C˼[sgiZ ނ"s0ۢDw3H/ H]@Yt$M.PDQJpĐ,LFf:XO,sThG5#m" c#eJKYÇ*}/So9iLLp=xA4}m6F!Inm%;bxݥȅ<9$vIrܠޤ%>&JEejth*MBmL[ @>UN%9pfJ&7 ~VWBP oz=,SM}"RMJGM xm_?R*.:YDu'J({qk':iKO;ѸvZMWhH &jiu cTWAsJ@=; NsJ9gr>W\Ձ|Aʏld돂l G_EKW6qwTZaz}ׯR,^V ɕ| .5U ㊫|Tx6d3ss1ߩhi'\kȥ>TER]Gx![f9]<HFy Nle$Y\O]9!bp9Krj&M4/w{'[:xbaԴ%O5/r"hzorHOn#TNz `5.eIJ13z~lϖ$%h<©A~>vq6$$ㄿޣ\G@EEP)#srȅ"hn=ɢ6&pRy_PpH'Jt! XСk$ug#4"*X q@+:EEH-BRdS2H.CuT2%95?aR3MK԰גwEwHr{B\-Go`g+k[y iP'Z +F1ˉI bĆݰQ@LQ(x?!ɭLxM˧ͧߤ2{+.s.'iKaݮk! 8T1.-lQ FcIvT=["|pxHX짹`czvBtw-lAD]#R-UQu7jHLbgNrerz܉ZWa!q฽k8 <[eɆ6za]?hr-VcfsЅF[ ٮ6=5~B3~b_p1Nr+Ze6sTǡygvﵴB8H?ξli\.:Dku^/'{˦Gĵm=kZ`2 pBW. 6ҘB0܇?K%Vb1m+4+o2.SۆE(h ]OD[[b+OF?t)q)8EK+HHCX{JJiD tRd!˂~ŘEDuq]Mǿ?*WIb7W=6r3~ zzHhwVzSNKeNQިJ>v;);ZN+¥,'H93%;A~@c/U(n ܊3㏀3>]͋_j2(A2q23^L)4Se}9-7i*?ʿ/<|\‰=2NBxNʋ]ChjþDuN4ҮphAPV],WMl_ znv %V}2AK8=#H̩e&`xĬP+Hk'x6[An#v3̪D)z\8JO Uώcy7[)cUu,"n41MasLp]GdRo5LiX t,&<s?Ѣ#2+saAd/}lJSSO/5cdsPU? = _2^?LN#zp;7}k WAM?d"H}e(+( >u5]ȼG22;̫RՈVA(.HV M'Mn7ƅۥ}O}[=j t SNzؑPXT3P$2`cS_]*8(]Y$69U Z%&͕m7ljteN~t|yt@s/l ܩ3 ²?Vmkٯ˝%) 584vFwK hYY_Kv"l4ʱqjDgH >ӺL"D=7PK]q5UiĿKdy:[-_S{9&zaF/DWA{xE _vLؔ >aH[lW!/PԼp\^O1im0Ͼ@U,)qџO$sWJHt?Cլi2gHyY|D5$KE4rH&%8vc`rGS-ɔS>8Yo9Co R rSMct@l=kFة|N@ْ٪qX{ӷFp"ݩH; N Ӷn7pd '+BI~/QK5~jfuPB>MjGԅ,KdHKiqq ƛ<^ݓn5Q*KuhʾxE.vp_fwp"B=-ɉe&qĻa|Rc'5nA-D$q*:}ٻ)40zrGSʠ/wcbl׾5l0 Kպ- /fs^FWKp-oFmnC.' L޵Ϸ]6.-Ň} -tO04 Xx#Wn$gMn ΝĻj`z[ @[a@7z 8G-QJ=he/TMTݩ<\*/#~xrgc-փK8gN#]{q RT)ICOx/\G{6 Hc=֏uTFub3cTb#]^+NI`lw8)"xl.lhD2ν>3EvXf5GPîYٶ<^K,ȩ/f_[h7ێR9 zs^I]lm%wAMhEC $GUf\˨\}+lu|Z7 |d8g~j 7vsK/J-3#LLX8qRu+w b5اbløTUtع[>T%ہ&Fh&MI &{ z,fΦ09FhrXjf=46iflaq8I:ѱDZ~Jc5UtE"B<6{lr~7. oAJ'͑)HWԶĜ+ !#{c%Ƈ ,)Y_a^Eٴ915wW{&Hr.]kuRamW% c$q63E'(j?^Cb-{,1qGM6[Ao$=ORHE/yknFfjnTӊJXDYi+SUޛpE?4\7s[id"["/JUq-wt<="yp\׈11a 0r`ӡJ("4^2a9rnTL7LvEai*` nyl1ZNTt˝gdrϩgѩ.h)ͷXEI%U*~zdתju`TQVb[ aղ;Ǟp;bA1V3TW9jhDUn\Ce&YEA,m\T]UH)s ->i&iX R.Pw9}ڿXv5="?YtE?a8VoH-ӵsA2Z$+8ޙLlFAX?1؝ZVxIW *4>*N RJ>s c*Js8^hu]2k EL(*F.AR)}VPP~A6M[R>Xc% !o.a]Qӫ^݆J[^d1qLfJ5S$5z!H)./u9^x-D>(R[jl80w:'U;b3ߏLҧR.TP 'D:H`XkNN/K ׁL5z@#>$#*Br\ugh(SmPB#=ǻ񰲎p-g}7nt%d̈XWGs9CiFF׿;AץQ Фȃ٩3%̒HuRoIAmp\qJ ΢[lj:2Rj5 `gn8K0 Tc FVWPOM(z"yҠxSȗ6p3Mh]2\ATאC0rDoYu7nC g#TM@ޒ8М'`$Rn"@uVL8m=߰umc2M+%DMWWκkVz =7Q8v$wS2UXmzg8ۃ]R_`y TL2A< ̦҅Lxdx3ȟґvڏ $ $HLɋ NzNvƷT,zi0hBnNv@cCI׆ϑ5"ZmL~<@r+k?N4ywx1/c9)7iʥ#vK}*C0eɌA6ݑ ^MVwņCZycx:_=)usŁCz+'~+}C#h4n(}w=Z +.8c>IL$['F'ܯ h ̭,rF8 hJ۲["KI%FrԨ M7==ڑ~Rٯ":\!e!GOj"Cx@b/y [SdڰC10KL6L8k>8 //PƉ1,VL *)iꢊT1IǮV¬wSG**I1sp bGWńZzꈔ06IUZyD^pd**68.>aTW TՐW(:ݣ * bz&6 sb/5pS\7a\mG_z:2\UFJWH3wC GޘԂ:w~+WWn=;b1r(  2wO$cZ>tֆ[=R1>EGX iv$qV R`~;Rkfp/agRo&ҭ!c Rp[9S%!82Nէ_]Ӑ]C=gJ@&mg)<5ig > 题ˆ 8->ITZf 4XE-qp"iJ!)-@6,(;l㬈B^phcthCr 2@[B3Zgϝ"ƅ/@\7L2*zh 1ᑒ~"܄gVf-@Kdɩt,N6Ρ7>bӛ3:cO>zVEE>EY?B¤|n;h&g =\ėꁾ\y@ћiS;43ĩ=2ꜻ! t)6NlC5 G@kla5X8{q S+IiGPq>_/0C G۱ks$vgjqn{71$16>Hb3-L 0>hˊ}msݔޒOE׳s #'g7.|9Y8,;X]Ӫ㍪JIcI2cxKc7%&L+.Šڃ{L8ܱI/f6QIhMo>?M'ޅ?WY[|Ih˹Sav0ZS:^ ʻU Auσ![]DS,{F" -;<#_3'nd:}Љ'v8yY6t{_7>'5OjBDsd&Eߋٛa4fGv #WhtoțONQ EqT_H6@gΥH#aė[fVycT_iu5RjS_s_5,b deZlj9КIg-zզ5"/ W@ 4&@8KfjGԒ_@@rImt%L.(+q ̋7p$ SAټʕ^|{=:OX[g^`nHr)|`IiѺkGEm},hi1T4p*[ fEhHTgo (f(mdK>EXXgr(eT j ʕέNg>f&=Y f^1}#ә.No.I MkF 5 )]j8!m-UbuvzQ}"&>N"utr$H;X:N;K@,ޱ,?FX.P*2b?25PQifȝ Dz^~2eӋw*d aӏg%ߥ&" ^v3z@!/@ ϖ8L:DoМu&^A-#+q b<*P0fz㪚 iB|{p&gUQr%v4y>3}_nY ЍS;I/&vR/MNyNz@J56IC7Բ=yWQŞ>c3A"}ZȇUu<>oJo~+XT*jjN';Ksel*⚶PQTAu3E_VT QOcތblbs;Q-X&1Cұ w5"qt>RP=0 黓.crN|Gm}̺),IwVzeA}X/4,nVˍ49{oߗop$p8ifZ}E!!n"NMKt% 'Q >A׆4ƴnz RZ c qe< Fd ~|r%`nOa;V@Dn ?KdvM0zTWfI#|nEsaR_*&_ʊ<[R O&yH\@{|S(V?9O o-0 ]U8袙 2QtdC_^oƻ5O G,99!ϲK$^0iV.& wUf[Ԩ`JO;F[P|L/r4o͕7fߟs5JNɚENRFwhp'{;| ^pv%g;FI՘ҼE[cS bJPP1* W^&ʍGh?F<$v^Ԏn݇Hg&џ/bD %7:R("/ܰ'%yc]DžiA9zO//#+`I%ȅIȭzQֱU992z[r^a:nW]9ݚ^eʟю2۹\Kn:C\E䞁WOZzNn'zͪfbHcüYJ}Le{re TL_j(9zvU Y a[(ƥ MhC:2)>-R}` Y8P=TJ-yʧ\W@nQElL9㤱"Rhs[hL .둠gI iEyr]j}Z!ѳ:OJख़ؼ&ynI)XoGF<`撏y%m aF_%fYx\*ۀ̎+;jQ=&Br("Ksp Sm4VaBh0k]99ƪ#a2].i!(,dU?ǂʹ# #+;,[z'd.\Wap 2{JB^i6٨1K[ ^NVGd`Mj  Brۀkhn-%DXgX6!)Kx4 A[R \d O883NŨ djϙ8! 5"H3ٻj39&`u8"T>sGD8d7i]\!Dڦ1v%g"U^_֭~oq}5+&,}V O솹\ }e2ߘPK"lJ n;4y>}L* P6v$j<3=Ȝ'q~>V[R̵1ׇYDf߾gdto>@J^k]?n`q`uD: h)@ߛI+BS\u8'Up5s{gFƍVl,|8̔{0%aۼ`ShtYx%~'q"k)al8]ns')0ہK9!H,; NE[?nr <$wݍη{#xʤWUm?/zp2:.qN|ݠƈڴ -b:\XaRQiʘlNN6^9^GWU]&OjH!`;ZwOndr Y ;pw.eOO6c:*.V߯P.M0T -wFDnҸFqk ;J a+U2i&-|T:0zf!'{,\IITB;1@:0cgz|9uM:/yjL̗Q תgu3ܺod(Rxd<51[ܘնé0y6>DedΩ+|f_9ٛ s؀B 9u(@gd4Oi c)r/W>ʌ V'oQ|}K*)1b8>JY-)z);#57 S l&sQ~U)9a,-PWƙd^SWڷYaS.@ >s׽hUHSb8ӼIiA$޾pbW ;R>~>!+ n ' `P?!z%RO_8S^;0@J8R4Kp'I4h>6Tv(apåq2sB3(3UVdv6?(0Wډ| :̫pT#T+юc~Cg9=6oGL9tP$e:E?Z LE%-S ELQ6p=&R; ꯔN9RR}qyI!KƢIW?$j78 f̩GHn2g}iv|#ݲt%ḛz>,`|&ntQX#֌9#]U|tޚ. I(Bew>Ƿ m I670s9p+ZW@[ECwwNq ޾_3Nm6dֶuՀy]rRg=jl KR b0S<֖J9r 2{ _H(/-Xe؃zn~E`aQ6Xܰw@+Oío-[n}WOC>ZhaH$A?u1pk!M]ՎY @|aVՕf{;,ŝh]Ohs-WקܤJ2XW@u*=e>SE=L%DC0ޠS740KW=xlyEg]ɨϚP4%.z,^$CTo"&,FLy6Xxpo+vmuF<49;/n#poGR krFT)B8VA![\ fʳЕ?(~{KR9d09jX(|x*F%m]F[qZqrs[/8V;g~c@T\. D??uX;uFS[E5x^., !9ܐK ڤۤlN>O?̆YX/%+a o/u{LɁwJ(ix#\7yKu#Ѝ?˽&2)gvBu@-v%Vtզ&- 3P?R*{e- ُ w }+<1!*d>K{K vRQaE`.D*ϊiHd WcHfT[#׮!L9uR$d3mVQVdMMm:5d{3 !|N|a?pzxa,'zt>8?Ix.l'eQݎX7mv@bƷh>Fu%хF.͇2MZy.2 碶<{m~ӣܦ*3\&`TiBpS׌ͻ$ `Ritӊہ1ޕv:氵 oy !nۭꜺ4P1Rjt3,X'{l ܛ+4CXIX!RSb[CAVDzZR cywRuOV2<̄KDtă;-3c;  -7K_*bL} bz *¼XME|Hh (݂>'B7`eu(8<ȋtAi]0㧭q L%Nq"G 9\,q~ /p5iIΦ"aBnH9K $%O6Ovt®͉Hj\Oi{ -~@qRɸ<`OEorCsoq/,E0E᳻ ,ML[/)Bj`>J%_f܀'Y8>;Tx߃]Sп 3E˓ĭF Q. 2\,L`,AaxeH*? ق֤DfZ5WTRk;FLAxrGU+R2}A3!?$:bX T+Nt{j̚})7 +}r:*9Py=ζ+Wg1@bY}6ZEcw'EArBSkaOޜ(6»*!VćeRny< 4[M9K"pD?< 5òbDJy&mѠ9Ƚ7y) ʤ儴`W%}Y8y1&Fq"r3Νd|ۏI[86.c|ov>olCzCTQ1LzM$ C}4pP~q,>2mU/nIsFN|~!bnqEC,h 3s#Lb*B^2>BiMD{o haq(o!g*oz PWnh?O,V3llvP (}fu tܺH鶢)@Ҹ@#K]3s:8 Rb XLz%3} l+#n]#! ˼\(;3Bn(gcuR{%MK)1RS9!#mZ EsJĴz84ȖH&**eT_fh^;3w,(P{3a5~+< gs/'`ԑN "j~Mb(x !Vo \ }7H| 2?r͊UnHZ+ q^?>&G#Ksabmۨ_gF ZЂ$~epڼXLc\IMNN*@ەCqa/%@)t\@λ?@QHm9Kl՛OX0=1Δ4' ƢZLwU-#ӝuUHvpAܹ5C4}̴Hhkl.Y*KU!gh9Q>PͿLAss!:W{H*ET16dt͗f Ć3汽=iMfC쎸Us5b0C2*\!kQ#tB L!g7+ẔY>ix*{t%XfTcTpL-.'cdְ?gP Z: FdoFEeὶf-w:7 Jga՗#g_D+tӬaoyKx'|s]َ߿>7mU I@dYo#&łVXoS0׆op}&/a{=S *yaUyc:hg(3~IH;,bXqx&&0ffGA:9Y\o%OX\S'N0˹̧9_*g+cPskHhq)-(NaMДfF&Jνh&ð.(hWuok.sP#g)QF){x hav,0*D Y۵c˺c]398+mZWR&{`O8ˬI JvOG- t΃!3] YJV8s) ?byߪq V pszd䙅_>0GaT /2/Wj5Oro)ҮrkT𗲗K R,wĺTWf'כHFv0aj|1>OqAL;F={xR7-umKP`CIZ "U3k#QIF:^WyWIS'ؘ9pB>I7sUGٗ]*Gk?6LOM sIb\^0 1J᱃b>_e_ '@.L%*e""2-^:̖k+_sexQnt/^1NѺaPf, xR]KLDl{oެAF_bnJ7=.+ŃDgN]9bI^ ľdqS0\ƁM郕UrS՜cD>I,#SuYbS{5cs/GeHQ tNnrR@.+E~^bk{v خ4ܕClJuS`'ܧ)v/8Wo)Zs `X'oNO,zK xEwy`۬6"s*:ΰMsXL[T=a&3'E!x,c;K}Ow~DxYB߄^Sֺ25TQX" ㉘j `|pdA6cܰU5 b-HMKUPchƆxCu9M]yTB0f0< aЕOèsabݱ0%b C Y#/Jwq!~e:D-M:9uQ_˜s\SBwtNqgy BnJJҕY$ȧv,yƵ?ilXUח}_ $ {ʢas}F0]砀~g.zX(O&CP;И#'-fTzh[k9)g͓Oi7z[ } G&S Zt/*މbpcܳ)[pHOˆ7C4CInxs5y8vU/B^.*pk |L\^W$p 5Y=jN<8"7pXZv~}NknTNpvC.1?焸vvE+-qSBi2 F7ZQ@Mf)7 ' Z[}内`5NHPR{ `5%pQ0ܬ7 hȘ wg/Y:g0 t\vf `;T=JgnZCD`c:t!S# HgO t ϔ#P|yv "mW6(%~^X OB֫-k {Rh6<ɯS3 ՛WC}ľi@*3kๆ[048}c-E,mn +KckXg=g,4lAt)r3 ̜6_ 1(6P=y;yvL=[b(<OWf sgH 6%tylF$fv,4y6rRf-ֶQi!Q ѢܲĘ.Ԉ}hz#oXki=h$0"[p'0b@9g ۋp0T!ji}nr++wR|mnY De wZjl<wR/ X8dxER+L ZOՐ*6 dhȗ[d,w&C5#uG]9uu(^8M:k$AN+e6!fY%,clʿ!%ڒzf8hE"@BT |rBްWkO0U]!}|;tWG]$$ډIkA[\kl"a1Laf9vqqρRVAc͟7V|Ey" ,GaWJσ#Ƕ*5P,7"S%vK\{󈋮%,@b6>tb4ˈ<>pCQCWw\eg{;@9,fS fdzaW=J(R>g<7[b*G4+_OCehh-Û[ҏ(%-3K]SHo#ECja.7V"rL(yVIx$2;P4Z}NQYDtE.5+m 4_x2Bn1=$(%Jq׀鄌uN, Qr?0_|'V:\rJkL'g^Xtz2l߹Mis0 UbFqu&HJ&1#KwB6U A`;jpmcm6W3}a(dMly[&ap߮}%u7Zz]/ZH0_V`pv7R%ZL??qq6:̶~آ|w{=a%DxlCҖFe}`D"~ i6]642dqIW~k%/?[;5_CAH1J/;3uHERF|lד8n4.dZVu<J8+Iy9Gj˗4d7EpJr AgxzxeQpKXَo)S;.lxnWR_jl.sOx92.QO(+۷w*]Eދ/h'\֏([,r W\]pYپJ1O@bQkx1Kx5e-[eަ-Y左zq`#H{KJQ&\^NNm7)ޘEhNDyFx?`A Y[ֱz*lB'GBJZlJYHփb"uČ?< aD> 2؛jZ5![Ȥ X3A-KKg״Ε4k1 )8wS;rM#8S\&ejUԅ,^4BaB[yV'/Jt.rxSg"2(Œx ,;(n~Q_]SyOǣCCcY#xo0f{Xº*"׊iѻƜ~3[DyrڭB+o*I%ݿIeF5AdPESwm/ciKx4\%,4D3M1xy#E89DF/Z`ƦdbJ5R^4i'1 #v/5S;7pvܛ!JB%Pę{*`NCYYY$yɼYWqǝ7VYt4P53㕰QaJzBMKco \. EN]sEtI^Ng%\ꚏG)xl\65WPYiJt ZR5Dhs![,wsYEPJrבXe*ň[5otF86U9R YIHc%32&ؕ :oμ1drX:ie]ilC-V%B^>lVB#ig*7ЛuDO`9RMC/wzEL4Ω/K^n'pmͫu$;.|}wP:ձC͸xr2tdUAv4e: roI# }ޮrmͲC2̩ JW8 UԔJȊWg4CJ*=`ґDw2UKNC) (koMOzl7 2eZtbk|w`TmxxEΖ߅O7CnExA蛛@X2,P 0g3QJ/7H&] $/=f xE%澓nWܖOIJk[r띮|fqM<תC`rRWĴ]iYDbR5g~bq\>rEb,DyY= 1yX;2$;\ѬIxAU3~2nyPhw(}dk`cu3@BetORe3]< w4fǬbxM^G "w$nUG:0v(6O*5"B)11'v ۏ\-6M^c;hBG*s1 %+aVTKOKtZb0 6 XI:> C+~ݺ(p,i~ _o`yIBP(l6( d֥)D}t֑ǰ)_m]=ƍQ,)lg  59=7)#I [$_isͨ3B)j$eONsF1Ax\3&W ƌN^@'PfR0IgyW{ċjrmuI'lG[DX|m6g:j zX$9l;7/ĉ@T.B"݋YpRY&R+>_& o%vϓw;a3,T9 pZRViG^RqV[bv RW@qTq?ς/5cv6?R%iGƒowspeS@]d{QO4ϼR},3+zPDT( :}xE>׺Zelc ͅWyXz*aV)E40 L߻}8KXwÝ #2P0TD|cSXSA>Z=$ڝyԘ_ x\]U.Z p5rHfTVᮾYtĔ`"$"n*<K:'!qHJ[HB(襋$-J-V*+D(f!Ĕ7^5:xo0ELf#|LR|ޠڣrXgj0.:P!Wa&k:+w9"F5) fG:GEA䊛EV"E8ͦȆVHVmUmBwʜTl G2 -8?NCw6rX5)Ok ^RܕR1H"3^MeGk1=s`;=%uI gpPb)3w6mC9R1JڳXC@_ٛs_Me}䌒 iThUw 3rJW( 6΢9#bM_;J3xMglſ_'ȅ ?¨(32Pd('t>('IyJ ]2 IkΛ?I5cbq#U_ضqВ<\tR2 +H!7c>BRleĒի=ڙ^K5QN{Uu5.>l )n2{% .,߶`GmS–BzoM+Ua[-od p!v:,ϼlLcNC+ICm{aNٯwq~k...w9q^܀o%Ag6N2 &w-4 IcŸ pځ "o]oPW~2@WZo>Txe4K] p{1BFmZ3IA+]DxhJ`uśW8N҉߳-p+ B`0MuBu 1LI4LrzNNT YA' ?GuGs]CPS7W2[; @WG蔦1<}Qzwx%sB +J@_kuX Be+& S2!.dm2~vyeh/B~ǪMd*q댘a~wݖ̓)~=jJQ'-"/`%\ (ۥE?H:]ෑTf>2$1-3ρ\{h85%_w/fGBeybR . ԏc$E?hrk6b 9|G1Z;0&3=*^P(FlK; K3I#D( v^?yǤmcb PJ:\=!K,FK%dQYan_A.e O\ ''ų̒*KJרb|z^ J|\I3rz -nV2^18/ʭM23*Ŗl~4^i2xcVYd6 ab]mq&[8^2= trmmqgF;E(\#;G[]B2E>'X S]xf'6BR[+lW.$|kbl/*bz;N=.u/$}YdXjWO#M`[[wo:.󀲼/a$S Ձmz' .h-}cxK! 4T"WFGHWv-U4-,T֨]!3MZ Z^ kxFE81ݡ'yI7WdŃlSc~r[gAw*/ aU\ Ǹ-G*t#Z;Cx @:8eořfܢB8\$sd(a;oTm?snx$F!ė[ +އw mQ(CA)4jzӥ \XiA.wχvi98rr{G`i=.LGq?KyDfo,)Dz]3$|n^(M2pӿ-8fʫtK1*f^Y#]*S8DvK YRÄ^KX"ٞĆyˈ{0ln5n74؊`35@&ҽpCd_B,Ս,Մ"Z=h'dT~֌ v'^&1O#Ӵ+ȇ숣@j0жxum8FdI)7fI7WQ$zcחV SDZzzjFq9`X%@rFPq}Zq[B7ZXz4 yIgd#M2m)L >/t}m@} .6jS42W{X ژw^NI?L3ڭ2#`nyge9KЯ@RȪ$_ߍ>|a #V\߄X+OeqF+,B3e`HwO( 9#TO 6>`7,@:Az8% rD_>Œj_8v:`2_ _)ymIOc>B'.1?7$ aGw1+)avF6u0jv~KPqU0>?<)^l\J ~#NaaO Z(nɂ.Z$tJ8iwU +NΓ?LDO "4h!"wӨ%k4C&6DH&c_ $S6v=M7`-yo vK gE*Ϋez.<-UgwCz0~==@yHnQ[}O=?\ O$G$}Kչh̶g C>f;UZɭ"s|V ƺE?l-Tٶ{Љ<UjGMf xc?BgTcHZJ;Cl"!+JX?]3.6S ݀%y*N758xLl&Q4 Q6 ˥/aI@6CU4^mnZWs* w@nݲn4}s-&ZuP' k.PB\M?-HJ!I_X0lKɴT $%mYO\Y!0ҌԖ%o  (.u\3YHXYѝpؠ1+o~T_$:! #[OR-Qg0V Y&A@;<b,)lEDyf|FYͬm~2}I-C< x-Mо4Fӣ*s%;hx=P ϢCU.7a.ۄ ˏ/Ez͐XYPJz]=ȻʎO Kz+fNί+v/Ci%!$$nSw֟;,h;pU#k`OzagT1rsp=8§S0Qtxlʰ cTHKnRPHsՇaGG.iBVKQ"O}zDixDkߓYtQ=b4ic6vJ^q"ki{#6r:A;M"B۲O,9/.__!*u0DLVqXMשgӽI}f"2(cO?֢55'9L{*Yj>c _J ~I|Y8ו1"5x*Iq[TB29va\vl>FO%}vOw=J0+(u!|)̡&PF1bK"=ق̬7`Lѓ-5~ VQBV!.wjހR)eu!qY*cFέy퓼Y9:Z., m.3B+#՘k,'k&۰rzΕF#/t!9JN"Ћ,g UDlo I]u5S^#@XkFaBwaAE}SDI ~T:~: ]e3$>^[wy rti;#t2}CF8_=ԗ@P0nkf  Yd0c#yk_2臸|_fo އGnɜ>Z's4ɚ\j6ܥºuKsV[U'GVf̧6j;yV gid$0b֠8%B0wݗ!Oz+٪$.1+t$֓nvXNѹyJjO|BX ,CN~EH$vU;5wZaڈ$ShpOur\=D6OyTp䗣] \8C!`K$\a)Rۚ)0 WزIWУ[\Iy#Et[*qMoWaX.pdɿߞ!n1Jg/`y@t۾`K(F3k75,c(]FizYY<Լ8%g"?( c! pV!|I2G)Eʸw3ڿA@xB횲%֒L?Z ]2Ԁ{;0w@Vw VsĨT8c9oP<>bY%OBA ZᵱS.6ٖwA {ůe@f+ϋ%39fB7Y~3 1 E͉5I%ʾNVgZJ`75!IFZjyE NUV@ٽAQ{ma+nv+ɑ/a9r[@P}][ \%u{6#ݙ +Y4"C^*( ̲ϖ24Lx< @yU1'۶1&7:N4pH_>ȱ'N]ku㪒2ZonA2ez,V!A /!t}6ۅJo ך=j|EhgRT!=t5$nZ}%|\p/k ϗiIj!`x<66v>qgc&ݤ{GA$9 *Jz\q% EG1OIWqx0񗼎ͫ^1xDb,z! ,I H9N9}zΊyg:cс5#&ukbW(A<:;qTza2NsR]1CSz"0j!ѭsֿ տ="Pn9f5g%3ZWt9+xԐUGKɬ^s) |**E_<ߟyفQv;AѠ|9J:Tm_ 5gS5#B,DuMC"N8qPPVCmZF'K= {[-n}$ڕu,O^oH%;v<mRV`FL.^)K`-x Xۂ:.O`CtIEolj`J>~Hl:r釱>d8nĿo+@vϞ,ޑFoRJ>Qo%\~5H3I%pALɋ+n|&/T3w4F|Qam'nf>a>#lt޻ EeM0:TT,,!=R?lb!pKp~072{( Vwln?cVx X4L.o[Cjsb7&ͻ_d( bh'c=៏Dbſ(~V4ÈF$ G^Nw֣q>Ǩ({[bְݵf÷ 4H5@w<"H/- >ԙfGГF%Z2b(>q>Ol{wr3-lB!}6.'GDX-څkǝO>Dct qT%.8Gd&4eofkTsUijYRR5.~Ir[]En֐7NQw^LKvɘ ĈZv" ֗A)ƽ 9t<15.}52sY?mN ]?2ՋȖm nwt0x'hf5"cGy~cgWTm8P.vFMWc&m$3Z[ۼn@bZq.t~nu>DzHaOuv-ѳ8C2 d[Q'dueR`[O8*_gu2@ݤGZǓ _2tmsI:>؊S0K?Op\U8Cu`Nq_+wNsE>^ʝ׈ <,8K@Y*Ł``m9F!Z|GXFt0WS$V9)o0opӐUA@yi.I^V4(Vc]~dJsJ{] t{ ,PI,k,an9IaoJ"7m jj0_xڵ@ ;Ħ!$:~_`R8oXC^_qLIQù3ˢSZ>NPBp24bԭ蝿yT$U8*K8['tZH3db0dhbRxugR_j04R|?/^k#ԡ"%gL=Sr%>F?ČR&pJ  F ~+OWc4v;s+V ԰͛fܺw*ڶƉmKmrmDڴ+f߶*bZ$v+$Wu#E~I.<\:",Ȍ'u}|ʝ}_ǓQq$)@Oʋj3u~ z&?r lC: BRbÿN9Qcfy(&DNoi υ; k:B_љtDZ p_4F18J"LVs.h"U3E @W%o<._@eSw4H1Ka37gU'v5\C'U+ױA sN3$">tW5În': &WyNZ z jr[zh'Wk@ b2<?#@[@n:u" IozD}r{9+sTFA@;N{>dZcz$SyVm8҆~V#Tfy"*]Os 'kBY86aS *IܺD),J{KLbY23jrR9bCr躮ʬX>(# h Vmc҃jb)YGwG,yf\~mm@OZ1z#v·kDC=eDŽX@S49/׽v#`>" > 8b%ljvM:AɤPf Q_$PٯΪ/e(&{&\}Bm/sYUln{>/Fm6fcD!i=/XMYl<%OlѣPvk/Vd Xp #vr 9>'{ 3(8u+ DA$Cds44궠|P6Y@z>KGY0uj#ٲxAR7'1֨<1 )WG:-?i1!9<Lj~j8.s?)0w3=Qi_? r;3pXP¥BJPvnPۉqx#Byg"|޴ic쑫8QR/ښgyӨUqGc{[2ԭȭnXzjOϼTASx6MIZ\^>+U ݣtGab2߆*[/)Y3^|4~6W?fWFwII/)4#4Qޫ-j} s8N8Ls/G *x?8pOZkk$qCU! 7ryCz9G" CILeO?]S+Q^<\iF]?Nd:T_)\qLKgG ' Lx4J>7sh"p` )۱xŭD:U]M][]CBwr$@B Ѫ@yPq㩗f󌾖;+%KBFɆ*3m5:L 㻓tL^b,Bw,7 2XAv2R ,mnÇ hc _0^$?v_LeܽFgP=E6/SVc Vn o 8UK/ Dufm-G B.Nҍ8ޖ!%(4u*9'cN`7sW SB,F)麏Кk_^lY ת< ~a !{G4:9 Rh/j=LodXd!quP~ 5Iv7s V GG 7la\̡ /"y{~<.KƵlfjkk<¶ؽ"2dnBjpʆ8&_EYVqzFHSKzrx:n(Үz ŸLƆ<)&tG_& Tم)u߳B󼗳]7k'cdp\ ]Gy%̼9GtH|qsZ$e[[P<Džz)L o9r'vFM/yekXFx`٬,q֪ZdmfҷI(4,mT>@!w1X0.=5MLetR@'KÉ-\3^ےnINFB1'k:XH>bDrJq߻w2O~bCF2Gu}gޏjqI] kp砡PPd*m.vWID*6u ltq ?Ru2p㾒\'&4yS"Bc^ȅDTsUi,ouzJ>rJTxJqul]P*U?ـgubwWMGsfEJ M;yoV9lV{^\b|d 7 N_ѵ)OH9&j*WA \$9=ou)XgX99u^2 6 2åeb7;R@0d/`-c'%>>Nq%t/_Y c)1q2:M*q@Wğ0\mY?7ps^6ʭnw[f6dx땗˾msA_GiWAnI&*b# k15Ј-@rC]ң!8v!@O!?Gn:xOuT;oyV&7:\ڑq6B{Y.9VWR'`o~!Pу B=G1 18D_%FyAiVJQ~=E X6X©zh32YMT|`p6`l|MGE\GQ8h .h21#B$5"Ÿ3x@"R ײ lx1;, ^ǔ6qkAPLcv}us59+#ի`s l@w?:\ jpiH(~nzkjp!ާb <e4|_Zd8ߑVlZdbujsZ*6~-=(u+ oM [ɚ=H= xY$?;`])˰4ek]̛ģ9ЫvTRLs 0e,($ BjCץ1˭^h:*&1 t)׳Vj?:)xM`OC*IY J{\b[ *%1zWAq1L˽9.O@|j{яgfO"ŭtq]MBc4@7{07nCfJ6pzƲFH|URCJi-{;s×o .[1g+*[ }\˯YV\h [d>DҗjQi$y/^As~ұ`tw #Q6SiC@%rܲRؗ0f%[mCp=`Dn]79y9h\ `'_巾ʜa,B)ͳmk-GӀō~5ºK52mH5i=|kAl`Q=7#IE#"Xߗ }KYH/&@fW6T1lCKzNҺ\MS EV^ yTm]Ȋtdո2_Q+YiHrBg(֥V'Py9 xҨxA">dkWK`ui.jjۓ3Z(Kᢘ!;-);4X&Rg/GI}1)#Cvưs|޿ùhZiiB sLeg:Dc 0o:JdaFsb \E/Y3k Džck#t-sj=  sMK4Ӛ|`Jcf|.;VJgi_ )BxO^52T,k/V]\~J#}&IS\T9Ż~-D(IWJ\/m>)|&bGA(B־[&2_> Ɯ`m<߶S5 +KoR :Q&0T"(,?@. -hAύOnW48K`?Z7s"äHs|)rw38!B;p:$_\YRwp|^?˰ԇ#pΘ3M؊e57NEؔ߾hag 8iYhE>`y?A@.UHnml-F%/iw H[zn,kbMnΪu9n ]J*eoea__[T> fٛ sݝZ6F!)*UuUƛCsrB0i7QqYSk]Em+]O'9GSh(J4Wm:<`q){C3#ʿv[0;ž8.K VTm岽A&TJ PNaP٬\V~`Lu!d!:26F_4,1薤D#n ݥT7;o>(cN{kd=-Ln 417˲{,\ IE Tj ~3wDk  ݠ E4nG!@{`|ydB31`e'Z|I[oǠ)_|hTA|4f"$a]y`穞Yg*N*.O ei)uJ{H JOhŬ@OL,ҝBnݵ%4D6C󄸷5%d7)X TޕߏYSEm)  as{V].`ROQAGi^e JH̆0ASg1O:pi(X"dZ !V銫X31 ׶pu hK{΅y-pSd&p+ޟsi↖ϕA1؂'VpO+:EUZ| BrJZWVb@fj:ظRjJ<1KzXU J ˖D>[IwمWp&J><7G-Fxb"CQf"m)`Z8B(oݧs@B_ad/D7m1EˢZḞS5K%)Ί(ЃD.?/N.t%Dc4Խ;]ϖOP"m[oK8?ώRsX|>1k%GF1BV2,{Z8S4^է_fHQwJ2|#SQ<g>/f">ZS9uf41 A{7--Dp8'T9%GmrIIw]wl#Ţ?5 q׃\~G?hoBے@1tgژ!nȆ5E@K׽~sM K웹N,&UHTZА.x)o%'N<PhVeSLQ}P>׌QZ}y@1ʯ:B#Ӹԋ>SoRO}|C./f0 &c9,P3qF^yICr&"ݳw`Q,OItfb~kBc./'MD >>xGLÅ;o*-, Q8\[ hB!Qvzb(o7U/5y71NCE'=vzwd㡣X}}oVwd<ewj[])&fi71K!@fʹ*PS]Fma_KL|{Ϭ:v:F֡Ua$#HQGn{쯂L#){h XY%#TQ:BJi BYDcݙZ篸)uQHQ!vXeO5G";u"#g)LbD]agJԑNŏ}ヱM729!}5JagM?Ifi݃umeT<~eeϛ\dDuk_  +M $I:'ܲkC,݈r4AX!npk㎝xj ܊oL Xd,8Zd9ksll5 eMg8LDe0-ÌnN$Yx"!ɟ;065`{y/Ќwu= lOvd?UI ZyiwR."97cWHhEGЮQ8+sRt[MxU(ASj݀j?U2ѱX,M S ZMrםp04䭲T<A0FRrwbr yӭlxQń$Ġ(k$[lڡTLЅ7%& D߀еȹ^YGc@ûU"xkp܏#.k#ƱۖW=.e&ݢ'Q8mgw_Yج`<)4`O9h͘Qk|ڵ?1/~0ii ڽ4$-4H't3JaʿJon) (.#1mԙW,EQ7/ì 쑈&Wo^tCN ?D 1 }v{w;A ֟b^j hScgf qE?,74So~cX% 㩁_ITl)nS?̮iaCVdۥzdNq*J 0$#J:Y Է,Yp~7ya@ ~` Tg'H q5e6y`ZB zMIE1UFl- ^%mw} /jZVJ{?I9[NJAMRjlRU(W*RqL O`fDYE|ALα"3OG-vC$|!{~Bij}m5Qߐ笠4i`28EH#W}fB:^˚6fV xE?1E!">'.>r6`ŵcB9o3Ρ3xhv 9B&DPsfNBfP 3aP.)ĂߵTzB1EƈL4Z !xPA/{ejyv: ?]|Eҵ LzXtr+{‚RԀgO.m;B%FENBnKsou* UY]QJWE 2a׽أYJhq 9:P -*I]I\PrjڣBKHfxV LmC&'(6Ϋ9=/J~D́Fj_DIa2K6ëBìsnk$?JjMUD8rFf1Z*S0qSSM0S)M3R':=>mvn1{,SLNIT9Þ40=e D 0K(#5?+;R7a IB+P<}w2|[T[ɤ,)1Ǽٽj;vFqP4gM.p h籽[ Ѯ1>>|3UUw% z 1ItbPh-F=@2Cqjcz TXu!L8fq8x\m`2yiB EwodQ#A5%R0їV%<b且#އ=vs+Ch'FyVH!{"ip]`pd*T)\=IJ Q]XyޚPz n/}y$cΘo=t$E]\jc~`fLSR)` @WqItԪUkDW>R$ Ǽx'_e zR[R CisަLDQIl^V@!ZQϖfMGt= +On`{3: O hnVcKr7z53i߅}[ 5ﰴ7 2 /a îkz" zeo(!}`wn12xݕ= GYϤN a D;%""Ȥ"42OR8扭G606!8gtr2<ٸ0rJ2'!Epk&-Q:a 8~{`Oj[n=GƫC2Ρ*RX}_RFg%У otFyg5$N"qp! b`#ӣ]R$6V/vUgPσ"Gpo+x:J +ň1<-S՘cQʮC^#*LtUtKMLhэ .# X%q)_~Ɖ^t3<Vsj+sP%u칺 èeߡ 7k7ާ'Ѷ|}M2u2ٝ]yE!o.?NG➂1fHO(OM a&Ɂ/ʢ?.U:% |^}8(ಁ-IsӪ֍  T_Cnt;&-MiՊa h]u+gO=NM}:ϫvցHKhF.d,5qz#bQ^6gY CĦ?/]--X&q B]Ӱȧr65- ~ْSHVig v",[XvA[?doй7|;[8dzM:E4 O PI*~2p{@' Yxp5c'B91]oY7%7 /l$hhB!w٩Ug9 .bi Ĵi1#878lJ.oԌxe:!NB&`K4S( G3m嚣%ծ%=%3NfG7A]]#U``,^2{׍x |KD!Ȩ[=">NuਏP@?<0BlggEHT]Q vܜ!ꚞ*5W͘6kRAB}䇈52J$tkcU`P5=9"( mP!0LnDIfV4 sfgI^fKOUƼ/4NbYfl ݩy'ba5\U5:|ڱ;-nkhJ}Vdy7-j=,T=$JENLI1/@eoN7ᐘ25bf<|=evr-W=TM%N-54|›64Zɢ'b )@=}R=| "f-oϰ[/O\CXNǷJ ڡ܉nbrV Jsd>&c!Yf"?]Q#]h8^?`t{Y2kFM3/>3OC gDQtxN@3W LdFMk2FӬָ&3$lMjg%VLCLu>(@}mLPB9(}QUţ8aa ϥ꜉,abU)'ܡ#0l¿nz>Z7G'C2%jYFXBbNcY $:Iw孆幷|9DY5٣nbuP$;I;SZTZl+,i8 ;^n5y:SJGPW%6)lv@DY)k@ǰNw}UEamM />VD`5p3Qw [e6m u$7f)TJD`~QNͿ[me?[rF_iA&vG:6Sx#o0@3o\==%ȥpK/uquI`8 K Um!etoQ AY}dͣ;̄ovF:?32_G© Pv=n,4[.]ަǰFik~6ZU\;{ Lu}g~'rq$y+k+Zl$u! Z4?ܫW\7 Vp搟}uW3*0W_ c+XX!>(J!i#lvX[Q α{O٥IM;cj;L yOȖuчu4/' u1V{ZVj-% *&WW_Or{SGWo<]iA}:Zv 6+4[lP>2sZ|B=+YYH՟}szdGQ2j~d|S q`Ct9汉s/z5JS)k2\܂w_6^^NUXeIlH/cAz"5UO-g_8RGf,C6Kf[[C_CHhK1C(.~HC'\6+c Λxi/M0z{W!~?0*,5_LJwBD )߁=L^?vcQDhucȜ- lSBF[^wF8>1IJ]υyGIf]H&#G",#go3pmv 9nVS |a2_sAۗL=,]I sJU>Qs\G7b/#wBrQ _}};(KJ`h _/:w>Izulĕ,Jc4 4 vFtenٸD@/ ƿDyԃSpW{57U8'9mİy sۈ(F@ Z޶U IGbUoS>=ny~u{|V.s~ F"P99W-ɝ0$h6%~?9W6f?8U9*(ɖ=]١& Y#iˆI9.$.,kx E>)=(E!ѐnycRI!{$y4m^b2~܀^Uac^;ۧˉ*]JS81=6K9{a^L{c"Qc\<]QϤ<—߶OŸ+;ޢ%l漭́} ʓLBE)/$z2ᔒw!Ҵ` *9lO;C:2%ӻ=bH0W_Y0}(Zu%sd8|{5>VPeCm* I"X}n9#Y-@T0]㫃aIzwxUHnxj椙ӣ8La}#!Ź#$yR?ky6&g y mYF&+\M]V /!s&G@Mj ϖ 4³jGSaON7<O O$~ӎ`vμW4~p讒j L!۴QZ ɘ{8%%D=JD m@@je##ݐ6qM)@ 0ފ!#`HsԚڟSYgm|ec on".ʉ_Ӣ0I@Ӭ/SC8H?+\|oEexp מ^JvLɖTn.)4XX^R!*ҼGO8 ߽;<7P.? #G?{'(+1* R1%9E"G?rӕV|d!dLB< ;YB(ص(޾TAU% Tc}.9^ 㑋 sRN UZG ~Cv!p{:1pIAa<vď[5PU|_&sLL]RT`ղj-A;b)`좂/ф9F}eiF=SVI?4D/_Thi[A`wn|Ц._hDp7Dֱ4'/(LiCڗ>FΐLW8,c}̷Uؚd:>{.BZoR+ŜFlh XEkRjhO;:4F:-)zWX jPs/R~"ԥƪ\QBq%v'1C5L".wa k✛^/NJ92jk݁|ӥѻ0"iQ҅Hg1ZWxtݽ?N|&uU {j^F}煼l~*J!)xgV7ϞhuK=naG#]Tg@\p; m&vSYe`pj]zȾm:emxAΧ$B Mg>B>"!<ɒyB݁-Yoy,a?~OXe.vJY ޖ0x]4xRkH|3K5*wJ0Ĩ|κ;1HR:V}L@On`R(-[F0~bd|^j[3ϯ)nsblM-$Bw.*r͔\ɻʦWǘjtyJr??v~]IF#2",R?y՛pxF>x1F>h>ܠ$hvq=Orr҆Dj;aUh&~ @ݥg c4Պ̈́}TϨw,a"x+>v-rUQf,VMfK`t=[*,ŋ+# E>ܭ$K QhF?q| u;2#f߈/CCG_Ƣ;親9Wm;[(㑐#Dںnʑɀ˫4h W׶L?'~_%F`w|b;.j-M{="4HMlޜTٱ",J4Y W.GD+{8M:?qL^&FrZ2Vm}!;YC|}O7En*"BAUR]~&x1F5+)4l6+۔6VfϹGщ=KтZ/Z_5?,r)NN +2(+],L7OĶ7~)"}Ӎ^- \}8iRx G5fs8}VCՃ3xlnSe? twui1Tܬe\Xq ĚV)k1"-SvF{cAޢp[CvK㢁 c}n3JOF'76K#²v̈guV[_ t-*f, Uc ]R3я,|k/ x8+MƷ1? ֈ5KxKai;!oU9@>CWbd*ЮD.-_%O_I%̷+ [xPq)OB4fhGJ'8IKu^כ&&bʷkiyN C|u\WpL}BOC}Ȍ*V)d[3(K=7lvSWZѮe #:`KlES@9߯G|LaR0ӥf- ,dphCFf 2Fv{w~LnDj}i,M2duL9-*9c6Ws,6Ӷ;l^3ol6U?_L,]J`q#LfXѱX -ƃs[⒭dJ#z ~E MsI$WK(g]q ezHLaahe9״=ʘ}dy[3WRU<vw|Wq T/Iqʗ,O[;uSp(f*r^?Qډ;^=oȩ t59Ζ/3DS[dGF? \o~ewKǚ\M4f;J]]J@Z(t$-AVO!tsҵv9SxtߦpIG!^I 1Qtp]i{CN3k\ú`lp+Ff(7ۑY4[h1g(_Xk"~F3Q0] ԫ/(89qΦw6!ͤoJ([]2X@Oc`/M~6KB :|-|e $x(F]1A-,u(:B*c˟j(*wk sT_#8lі$spjʕ+zCofu4`_tDO16{aB[̤Bïqv Jm-YlG&=ۚ+(Ld՜tͻð!j>Eˈ|mOE" |cw@w]x4Fʳ饆uwD| 31MF̰VJl0k݌*DxC16[̫5&孩<ĩ1OǜekH*rmF!C K!B =iA7^:j8\^z0}iTzVg.8*cע4 DL<[jcy[f㩕eZu6WnsI 㗮xN{ug*3w+יB*f Ur\Wbqvae3EfmOsƏl g|UÂU'ASVnȉBkttt:cs^,1{kRn#WAeЁqoE<jÜL8|xak $9?fIYnHCmIMi v^xgD||$K! J6u໒jG)|rej7P*S˚S,:wW|Xt N b;U|Ёe3Gv[WbR]BCȩ~g1aL#6R!VV$Ӵ PUvR!=22:"@F58U (ޭ8yj5ƒDL^t=4$JҾV ä>byz}4VL{d:gU a| &6IS$$,P)%N!,򿄽[qKmL@D<KDu~*e'ͮd* ^q\p܌/Lnӭr}P&_x[+=%k29AP##q`=gd %HzI9ho ;·>dmo6RI9e/ڧ˛7/ .sñca\IhXO"Ocwp]6L̯;Rv_S{G5fG\[R3fVz>'ʜ;xm8Yl ϧxɵjB29}Vշ8oxޝXc372tOk:ErFqf0tа(Ut=)p|q %H>! &G4!5AXO4ðxۓ`7Ba]hvz9^cK˅Pv){,pe g@8Lo˺&z%3fГ @̛d]t}:4r&0 H^^Z^'v y~z|rG^'O@0מp$Fr WtYㄅ\Ǭܖ_jEpo bn(\`鏒Id] ~Gc;2$ۙ|`@aʩ]*XZ}9qb+&[͝Tjh,]%b0&Pv>-쇦pl_ՂU3س}ծBrKAmD 9z%IT5+4(@;ڎs٤R^ٝ|3pu ]YJ#̕ҿ~KG`6Xe?эZn*[%$ ʐ 0E½p\]$S&O)bS Hg: *S*\ N^-~uC7#ъei]> ΪwGjHlIC*yy^xvh׶v~hIJiG622Vu !}g˄?C ;sA:6xYri%,5d-a.P,XYʎɮT Y/AK "u9Zx^\-o ;;ŽFPecFL8Z«%3iF0|17Hf6%fv t5a"4 L+GJ(̷r;Za9&YqGD,)r ߖ: be;+kٚ]4غ5poC jqI(PʡeZf @ڡ66 `K4 Rv 6ִB *9w S)oνLVöܛ滶eO[32ɠL |NMCʪx= ӁObVuh!iDhW"LV<̫O  NQB 9D ] zUbM> vdFxsf:`4%gPx_jt԰SNd|=@V E=dFB393Xo׫ĝv$L-n"ON(N-WF$-br*Te|Ty`Ju=|m _ԟQ^5ʠ1ϱ c Yr2[So3~)&8jGQ;AP?}^l :E!A]~>ef[~솩1u#Ѳ҆ڣ &z'&3<ѳ6ֿ++7_"' nQ ǘb<ɗS( |[kQJ ˬn8p^SmL@o ?> _+~[=$Pڈ2w 1R{4A5fҀځ/Lƞ)"_e.yBzW4ORIi8T!۞\xy+ز~[*#(u BB<3:M=/Ģ~DV9 Td9~<܄9C6zK 0Ls?-1Ѻ# v{AN+ %C(ǬbHLWMF鰊?p4y4T{3?:^$)nIɵFp{Ic5l@x;@<7rQh̪U 7_+A!8X^vhSg-TW1a4$pxa]cEu2.J_H{6wM1/hiG|;{qi e 9,/ ()g|qhSY>O6ۭ1V߲!=N \Q>u877zr;U8N$f/e8p9'?GiW!=7\T}-(j_\Ιt4@zZY")M GH>; <-Wp]4m7{J@FpwDh`WaY߳H!rOٗd]BAWMxjSm gx\1,iv_Y_=fyt _8Enk:>$Q'1AV ʠ5 &J_;%eCY'-qZKM{vA۬˸y%p:UR9K<§ JeE *ɮo'(uTL^"D(mĺV՟VcQt0x@qטsr]T\zӔ&ڈDvFȓQbiPrж$@Q/t8$8e<qN: X!Aʪ~,7RZ1[v ][%uԤ%bGXuR>_pȄ$Ӡ_7w'ٵ5+S 0?S_:@Y"M 6{޾|F @ `⌹s&k5J⟃iaJ,(ET|ᭁs .9E _·_-+69|!˩R4N؃9K#?5ߒ&,AR@QZyUƖ>KAS9Ř'%Ԋ$ouݫ.!b̓<%Wۗ׋I PJ'zO,SH3GbO:9'߆6`4RTC s6$À&0~<ZDt8zIî*XD$tâ7E!?Vf*ߑloT<-냀Ahj nI!$ M3}{pQ-gHcuҭCg7N?;&_  ^)ԹT ނ[C5 JKfw<}{ħfcA0aMߖ_c`lƖ*b].ܧôWTD f|SF:@?[Ыvc 1pq2%(|*[ɍEy+@΢sz%q y݄Pŕ@ڦ:BM`>yZO58/<6K>&+Vf4sCpŖZhR&OLt0N&]䐋 *}.'$ԐJC 3mwb 'U OIe: It7Ɲ}#,n6*G' aj0ԐrRCTAzc}z@)?,u쎞߷iFBUJty;; uϕiV߁QNWA{ ߮~ҿ1 G)CנC7a|z$rUImL<,9B /9(yl+ +t.# 0#NƺKNJu冯4spaIactVZy:H Xvi,<~oŚNsr J>$KʆYLٰP<-ϏFXko*6Cs4BZY6mM>,Ns\",Qz5s:UR>,1qrįx,Qn*%(|bӼ*>>1*v"hDy |\rZG*{. K1OG׹1ɕ?\vJGIh]Pii=mʮm ;_20Oy2}3,+z@4"l<0GI ּ̈E+G4[$kULYa$Eo&Ԝ-6{ugPRpKBYy2M}}6b%f̕R1a+qT.ۀ%\`Oqָ֤dʏD> l vT&Q9ZuSm5uDsqNp@TsիE~$_B%p|V{ӊnwr}1,805͉ƨ>xϲ&WO4DI$ʙ`!k!:`{Zf:귦]ujPzu2Ⱥg*D4lF-$[ݰ nKx}~5~HH\~}s2hCn)mHVVPX5^ TGb{}XXAJ7G fI[x/˭E*`Ukw59?tO& 5Mt9}e󳆱iRo Zr8ScذQ2(Z9 \D(#eaB m쀥BZVqA]Douw8mSDIoTOIDŁ$yIyVe\=R"p5Xv*y +8rw >_˽z}4VǯBoaGࡀ&!:bqfZޜ:&fR 5F?x)1~F&`㽚Z", kd=Yicnkl/ ШH\ێСA։Zsȥ p]^sدb1M,0z](V&"褨rϾZAv v4IzX&z%wST9!S hUC{g*?fK>yAਦ|*) o%!p|8:Qm'" nmkѿ8ưy̦ڤ(ϹiGQR>{M3orvP jðeo$z!=At ?iYBy; 7S [Æ>1R# ( keҪ(Fץ;~Ṗ De% -(K9Z<_M7ds00PS:\?L`P]_z[;T\xA<zs.a[?ؠz- }"@*|Q/Te 'r\1CM0m;v` p\*N:B؎sT0DmfU <%F44&9,/.k*wc;~f=8V߮&" ` PcK=&:graMܓPuGj462I|kˑ[M},Sy\ *x ]{~Ɣa'Cmڅ˯E\ҟ_ 5alB9ꔛXgxvRL"#X x1cFut`)FB4://l>)`{VPvRa_X^W9odB6 y6]-m]|?ˤDJbv$v%pпr ÔW`a79V:o dݠRraNaf!$z/ n >4Fy>,> {u U]i44v! Sy@U>GZo`—MRZ~) _̥&1WWw nn;IDRcc :Mdgui!"|`P&5_$|UyQrz o]Ih~B97F,<.|wVc/s+ K[Į*v7UiwHٕ E1C͔~-4 !xFDMKݓ r`J7IQYП3.9ͱqG"p`O#)H os+=""H;(g~* (<6ZWq2O=TG fѝpƒ a. Bҡ,hD|lz)3g12dwֱ9=8f!sb]xߟ%] _KY+ok׾lٱtGZ8$tv-DU` &J&6Sǀk u|Dq3m ~unQ"<->ISiQ2IBV 1S1+fZ΂H$]Ku҈u*V {.1ؗϾ(]AxjB E!1;c4 ȁwxRWY5Z Pzƒ<ӌ8ZF ˶i%f LQNz ŏSg某Q[;\{mi}AYZ| wrCeL;cbeƨWZ.=گ"_n+ {]A _ X!rSH~ V6GmV_']^I۫nu(ݍ] r!$sQTRe. {4؈M#:%whLyʆ7XuQyFN5oCc=rMhQl\Y3$ڿc*)>vʐm#Ah@Bkxs"p[4Osx2-' 5hlWc^&)MvDZ8Iķ&fp?Ȟ7XI?wr H7׽R.g0~aL %Dގ7U ?/qz ̮RӕʛPdixC܁$FYVG!a;@;A,tL?pmJ=ɛy2,:DlfӲy* "& M[f"b^'x= zIZ@@"=uL]&@5sÖQ@  Q_hgNRNheTu"u)9s! ;[gwJx+5#LcOKL KL7S:LVʎrF3b]; !`l=Dru?<+{>#z \">%BMw>$(0zPFoJ-?m,&}`ׅn8 IƢV "lkGTnM QL`Ef 3bw t]iy-L#i%6Lw>CvK_5UPaWe$}hbԲ5Qk!-nbXqaـ:рQ4<oT.h@@/DTvOJYU]AĬGU|;u7B)(nU#Bs xd&i՟FY*H,k[}In/&joM9}G~#;^m;GF4LѨU HZn̴14$$ ,,j^ hw%k0|PLEtUG$mor'qQ"(xehYZ)5 Y|Ck!:Є7aN>TIO.DW* 9[T>H#q)bN Hs) ծs h7sȅluEsCqx( G?O:<<v%u8U6CS>WнGWpW0ĸ1Mx,xsMr $:*5 ýї LO8(ћaz%@#)rw$~4}QA5(Orn8t摑l7=$@m?!oUhƌ Ҫ^.:]a: ۠'ntU08A  B'ўl >>'#z<ҍqZ/9l i0iMF|87TiZ+G|={4(nZ|Q;U(i\w0;qBG|U/,saDԺ<(UĢs]-?W +h`&Hu*1Q)@A]2t'UZD_-,'wj\&,cLs .&,4ϬsQ`3$\&VO VK&{jb{ L/F9r ۤYBsgd}J^{=A5PRu k^(7APU;x^m#ҴA!y~:klխ7MV,1& ^|Db9<}XxJ-#^8v[$U-wAЦҊ)/k"6Gubނ}QI*S>Pyn|X:vxhukM4!u~uJw59h<^6(<WYH+M9 ڷ>+(* %(-/l+eFoEN3#ɑh%-;N-B|z@Hއ_&7>-;MCZRhUZ`vk̈́ijk%{*'\ιڅI #'jVXSЌ>L+-^vHw[x>D)7:+G)qqSHs=º'ʬҧNƎNT%&_,3ko -0bbDWzآ47h;"9DKg.s0HGIORITV~\j{e6%o7܁,!CNGM7\: -- m&#Hp~`aX'x"Ʋ0WkGoŗ&_^z O~-./Hrr~|ĸE?ꀼ~fW(\w6f+Ge غnnږ)clX,ɱgȖ &g>uЬB G{@ȱ[f:7QC%mxY-f.9}Re׎' p-K~3< k\ Op WI-o᭮凣ZQ:SѼ )D ㋪Y%w}[F*I WI_χ^m tN }8WfAx\"`RtH +Hԣ3{1)e}NV[ hJDId9w"ٝ^ $'Y㤝&+mt[fԠ(5 G(qZ= ;lWFIb>aVa /" UV[GTW%۷޸˄`F`ܨSzglNA]ݱADȣy$DF]/HV9/Q,Vz'$kK}›ip,FUif*Т&9),s(ݏrR'v⁥I;*g;=#82Xn볚OzZy&gAT z2^?/RGg\12ew{z;c wנz{hv?b}0PsvO/l7sbF7H4pwgkE/&x2TvX5g(5^O]|v!sG;H)3;j v80tu_r:@;-#MQx sB1gTd(9|5=d1<*7r2I9֜353R2Q@"[*őCgWCMBw*c| hAhnJT=Ư`,|ϽHG61y9×=#J-*L>n6ynXC< >% W\ 0Q1|eT3SsR ɮܼ[}с「씼g>PTgԏS\pݫǡ!@#I=OrZa}5U6VKPaye06㢭mG#7)FA>q *oGѷj$fs{Ef!vѰBۨ hxa][UßuGig';@ u'dZwDwv/A8#qDhq(s'JXK_ fq0#``6G  s#B;Xlѣ?<ҰN*g}qIjGst@ӓ9Qoo7_אjB}y|ĕ#FN-4M'^ꈈ0ܛcjkG-ݳ9h04.ʨ/aå|K?*j#1Bf;M܀aïyML^WF.Tivϻa*ij{BW HpH܆QIVN3zBjGn XՉѨk !y;U~B8̆zX+&gӸ>z3l_m`q:呲i.3=NejlgRX,ʋ4: htNbPS#ص-<+OA"Z$W7sF} nv6|Iگ 7]Z֓YRP%m^:̬J"6tq'F_z醟=XV=l7C >WC~ӏݴS]$OH%G7_o>tWr ]Mڙʧ ᅒ9h&l[fxRl_pb"91K,бE.~Y42" Q€_fv]ܥVζdunBq?IZSS !7q:]? QjD}LXigo2,k.|0jZP9x4d2gQwnh|Ħիs廓tRϠњQB.Pԧ73QL'<FPbp)֪f0]C[}Mƨ\v>Xc5AӠko1Hq WXEFW$2uδye/W%"6&t&V֠:;X9bi} fY#LQXh^h[Ϝ͇&T!VǢ13wuXSѮʃЋa#{I73][6H^w f c=r>'%e-c~4y fj SA_t*DlYç㉫@1L `xy_ f%tvLȜeHR7!o{hn Ym=V 3K℆ye4zW2]|uL6F@VldXIeahimniේ]L u?&3 >uH}n(mZ+l|`Nմv6_8Q<~:u̱@+'"v{ܨtX׃vOgbqY08 1䑱`O TxFi+SpVQ H:,v,U;2m3!Y~q0,ȅnSO{z!!]$Z֌Ի@U率D .p ܮE BIF8[FnƓ凣dhەLA'+bbduMЁ^4v ´3Gq~euZSAMNw1B piAܱ|"(w~, ?/R ZD3jKkڻYfQjA#14RaxL.5 tdO݄b}-c@$Aͱ)nUi]U+)0Ӛ vGvwVO<6/YޯEw\ M^Kg8ؠD`!_lx91O§o]&$\=%צxzFLV"ĿN‚dH)TJ En4Xa5R( 6KXWtQj_ND2a[5yzxV4t%8<6*=v$i:D]Ɨ,>`fJ(dGT c,uv{&oYˡOwLƼ k^"ά>jIQ\]2~̥c: "Ġ* E(LLNN^_^H5F"P?K/ɣXo 7IzM@n0uIOOQ$L*x—nYۈ_h"6+ocĶMa⡕xP7~}=цuV%(DiU;@yɿ1΍_9 w];5EnEɾH6ܛ %}WM]0y[hF=";ZbVc`ݼ;)Ԟ.vh!;?k~Gxp iQz [dmD/='x[8?ďRL8KtBȴJ޻N~#~R{]?ў - ߟ;;S!|hKth,;DL65$f~\sbZcb>ciFhS,znF37l,s?XQinVSnp;^ # ?E PtC 32xC,D 2]Ú%^VHctXr(@ikTOyD\$/-N(FLC DԁNHt>!(O=IWb8~Ge)_mXVIM\s9q84!Y8_Wk԰H*59A'~A{(ɹH͉-[ˍ"! <:p[1W[6CX)Q'EO3D3693|hJiP|bAFTd&`,>6^KF}~WzF5~"{H+B 45 r-a?'1DqI(mX/a*-7$&Wo$90D cAJdlX͑7:Xݙz>G'3~qGQ3|kZPhjˉA:r秜oSkL9-VXn ɩ;ح-|iC/{:Jli%8a`ަ]k/E@_T h4ID'+?jPM=x我Iu^FkNIIu՗*BѤw ꧻ̓'(]t*VZ8oZƫO%_f * #=S3.?ab.bBI$K9K dSUCV 0uEuxr?dC9b6/~\ƓcpRLIm_6篫7f_fUpvڰno];f|3bCT//tVg^ɚlA4WMi[<*D*Mqs\)ȣԭ|?g4r0 ! a5 <{,i>Jcmh|PΙ7Q.|+cL[|nB_P~=C5R1GM;{WIq]Pm5Bs1ՊZ-xkpOj !&]-@]J5-> HSl(D4>TP+>b{w_ń6M4>{3DO:Kvc@Ks }P]k<_[mЮm4TK Ov~|twHu ﵠ$k @?!!u}i.g."m4ysD>5a\Ȇ+LVs)P ze3 DD<' o|%Mա,O|'ucE@$ `{(Soe(4?sɀ@iG5Mծez(H2p.]u I1p4X^Ro - ٿ(a~8ÞqQbllO[cПwjm=Z2}sy (06ZJͧ@8COEgxYg#=/y2AmDsr-+G[ܳFмBm,`X-k4qsgFq\#b=F_F=a(:ĕ!@>y2;}$iW~ǀRthRExA/Nd`07g 9Sy$.c/6屟)!Zw3*%ꑕSh*U}䘲X M)n=qz8(O&02E{8S^7"K@5Wb{ Ic8y2#,FI4.E%ױ茣#m5Fz@#?*,(@j?g\(Kt(v#vRPV5#Ëޘ}T arJa@ '2üfFy2X&3W fNw8%ݘ4MI>nWdf<,ћ1)[ \eM`ځv #4ZB5_ jnN/]ۻ%}ڞ8dk~FSOn0d]sgVOK*X5 y@rABO26+y1IpWG{C E/etF@s27蘰&? ~4xٰ.Q_A-_)hL %'|o2ɴjDÃuHM3N 8Px,.Պv{4U:<`v?䒸䟂ؾ fxg %irw~S̅В}P Ǝ#F¥T VpxHT E#@W)"}Xgw:=}d X7k!Y[WWD5t .Ѡ~RPu۱+ʅg&uAF2?hlT; Q )e3.O~ø7=RC)»E(%\ p RGNK& b{Uc c( qvAL]WXB6ŨJpW/ t-?OWWc\Zkk}~!LKbB"vފbb\kޡNTK6+6=QNu5 ?mwَ}B\`%;nA41B0,> ڜ,Ų!a] W{7aI]P(e7XcńqyrΊq#7צnLqCLIIEI>1ić cmR,Ȅ[N0nk{)fQ;s=tg=PJR< 8R!n`Sپ0Me0\FIˌEmXվ\RoZm|/z1"xIא\$j{XKD+TV gX;ueLCQD﹬arShgX_=c(% Tj?Ls,v}e;u+[Sm4\5}R_#%qn~cK&F1gN)&AVP``@!Aǚ9Suȼ(PqlhP:zc>хo&G hSBp#3= 3wT뎵 $} 6(C^2uR)6]jꁶʔFg+ph&XCmuqW!gɏOn5 Q2މ<%i|RKo`f4 ] 'kAAMe wQ*$ `z4ۻv,]K05ׯIl&D u|čSzM=/8UI]IHuwHcvdh=>UW"[כq2" X܆M 򉨤 ogd HT:Ti0}\H`*Fd_>$%?VYr4w*v|sBQ1{t9N=k oT qm82,:o52=gR}BdGRxQ \s)|'G& zoзyi-"q̑鰚[O]M3)dvJRH܎rFulIFF]jC~8K9DR$\#/Q-41UOs]0=ZMl@r]"eD/=["Ux~_u+@_?GnHt{LwQz3a&s ԕDҸrZ'njD͏Y3=m*y d%uE؁n's8\3Iʸ~%m-Hֲv'C)j : 8z?`DYr|toګ=39   k{) bLJtÝ3~dwy|%H̱U3$g>0 $=pmy$<;iمĎ뵁DSNf;]DY+v-0-~KBϢݿ BnxV E=hF&OdS*PDEPKfkUE uUUOT'E,2@j/Mz›IcGX46-hYJ%uL#uxc L3pve/ۖTa6$)_ŞE7s͘g,H/elkpF0oʛjM 7LF.t)~WGZpEΥL~d~ {@,pgtuGҠGn%Σ7yx}NW QU  8WهO)\e0$fu(B"l5t")J,xi.esw]ta}kTMRH`n͹Wդm-2;b {|T݇@|n;'ަгqo?{~ ڰ mՏީB>ETHɮN'xķ5uZ,/L'cLէEaƈ*^JY:$r<)9.m(g2C\: 4OȀf#'W71PUT~&R9ĈU VuP0LV]F,vZ5@UUgo`=Iе9{&2\"Ui=T+E^C#fQ8@GS,'qE|-7 S)[g,'{8cVo\BH: ̚ǖ_T[WtrZB $&t=;Iے *P"p*MGy'Yy:mu^_{Hbg_' |؈HUR/CObd4O}&#hP76 ʹWc n;O6 ˄I|Ey޹KՒU3jrM İ:_'- n |1C)~O双u5iZsśU^m*p}Q b `تC ;iO]`+ry.٠)-IZ,?4 pnF Y﹧Rʛ_N"r˴9؇!S8ՠ)h٬0-6Y|Jfiu7ID$Q:5]q WkmOfլI#Y(yedA%W 顆OC9*5[%`h`?.Ys҇Arc46E P&n`3dQWǸK~{R)& )4so@w&Snx`jQ+R9qb}[Mɇ ~0bJ6mh~%8&Qα^:1ei[5]VueaٙFj\4ߒ4o䦠^'V mjm@jSmАv ׵HpCa%q_JUA#ɗ~ş8Ou]ud%`c#r!.[Z>wis(ç &GZK R3Laڌ,v`o }mgǘxV1$ {iR;wzY>NI&/";Vjٺ7Fo∃1M3%`^~t+_JOp <&d3:W?)l޷d5iUP,9&.r*XJife(PF0gK>|%'V8Yy3 t`j~/W>`{ k>jmEΉxLp\5#@K}tirj־Y`~j청D܍d!HvEaJ0l@ .~eB 2ëF ڟ7,fm=+- Fk,Pe:U˴Iz(jʯh齯M>׬qL1ŌoF._%sA%|ؖFiֈu&sT -MAdCB#Gvf"s:[{:O0{ j%6fzM<{±pw0<*p/*!'˄צ}8&*W-< iI K@Y:M(MD 'MQ״Peg=G2kP1n3=qyҘWQ w& S7=TLa~PP f f\D(7{fGNӝ6Th #Z SnN-9Cӑnq䷦c~Lg0$?sZ.NV@!SGɜɈ֪*RԡzF1`45 Hq>Z e@{e~/9dqo S?Cn4<ꯥFIJd؊# pKq͠UPQ#fB*`Dk`B!7~QΜ#Lf3`@ǮwTy ?fO7"V[HTRyL cJqYdߣIakTE:'VCs+K2ZǧE̗,Pz垏]zHռ95ϠH^I;I(*/NuX@6} }6mA<[,W8 v,h}!mcx} L8g!nI,wqpZcҥ`1T)uP伅\ ,W.4i{𒵪C}g'4).G({p)zh[7zf.#AnIT÷'G)Dz u}ShHBRqJ8iC ܳy?BrR5TCeZ+ y䀊nL5wfvqq3rJI׵S%4Ԥ<g461ǣ4aDvB";1tboA;#U*`a$wmW<lvAo,K v1i+J8!*X`ӡ#R:p@=f[{޺QRƒl^o8Ddz;U1sLX*%L7!3*l'C&gV6t!'fV =;]SDef{y:ς|ە3I$Մsˉ99q p7sIO;/v1EzZб p%vܯaᯖΌGD@80^1oHfv"t@ɮϏ=_?.MDo8N1ٮ;eXG;0,&":;[Wӽ]0PLo?^Ԟ/"h঩ťk> ~m4[qk]lyMM\NfxA@<chP-N;d⫾I`:#@wh4n,k *>fW1q4ۑeWv*}цbHԐ1?BLL^u$*J$A+gZIXcƛTpX_s#GQ{ïq_%S1i)?1.Sk [%Spg [1l3rձ1VRLj< qh\1 lУkҐG2([brvC#Ts[jgzYZfWR<ƖLIX,yCRbAZO#?3+”E<8>wqbxAL`QJNC!5 n0\B- q~U>Kk$.b Ti6@}_ X5/w~#:a&A,G3y=±QZ :=vdP._?_X}XMuϐQACA)Qv/Udl0V!qfdX5 "5L˦ίҿQcښ1G՞{b@w̸ϔ{Αw(_\arq®&m \,:@0YTn :U U?+IS֊h7.QYuFD-mߗڿ{ۣ]*JnѼ8l;$މ‘'svd4Q+L:e[=( քVA;0 wOzK Z[8sۿ2@I;/ˇB}񼜔ZV`Bp2q1 4" Gg0=?;$0(*v'BHE Oǹ0͵CW>Ow7S"<.@󗈬5rWoȜTqwYirʘ0R˪Wse L>)Q,Eι-c(sX"i5oPATD0^NcjG⇝(p^6 O ,s & m V1 =[`e?qe @qf$rIAk~]a'S [؍͘<bByzrۍg00|ߍ=*d^QWБ]KNh6&*.Ct# 1U'* 81xND0UDN%',T[LhX7·DբoRlTc6#[:V943[=S_THwh }g R8'x&;CZd Oua]簃8◼;OD10_+t]WdUwGUp߬;?3JT?&;Z臘l"$NcCbϔk546ᰢ*u¨Il"Dawv[[ST hQ=^^bCY e;yjN_O}kM5B^> LIjL 6D{Df  0mO@+i,irꟅa٠>23(Ŧ)6H.v -L,U7 *r[ {ծE +c5CI՛)#$[2;=AWRP+Qߢeʣ-#]RJM^}0<<):2 KJO*vRpsY:zܑzl>e]T:#A%:qkir'<R PJD?n_ vUEeBy]޸q"4jv\%4J>1%ࡥ⍃?<:(Ѱ] J{Itc.Q@QNѝ c=Jrg^㻧"4D$$ZCdj'Dty%^v )O;JnGh8Ÿd[S Ɓ`YGI.L:ϧ9L3}g\ʦ.7$JZ";ϷmhnO%1۰զ R*B@J\*EY(~mÎ:(9*x.tSel.y[ր2Uܖ񓗯ˑ3c8ׇ sʽz#ha@nHc1rM> |[#f !ΪsjLEԄr 2W]3#$?y2n\`ʐE"N`.X4U!_pg^=c,{JXl„ <HFO>'")c`)sU\P}m9cMeoN 8Asy Aj%YVLj5Ʊr]O(RpȊoR%Wy%af. 7W'cIN] m3wO3PZ!%6uH$ I1(~$3r.g0&S +"KS@Ģuߎ>E6wK_V*Plwc%v8:fQ/o{lM40 v >r' ?y" 9Y  j8J}ϿU>nJh^LvV>d@cjq~88s5<Q2"L=uO,Y6:V՜K`W!P619rG<5,Vо"L;g&šyR*5(Z;l9l4pֳЁyRgы2ʸ5٩QO&łL9ǣrX#C:d6Y0Yr?+P#&Ϯsc< 8w&ױ8Sqז>,샽 _-qvՕ|qFdl6Im(- &:@|ypZ=.8wKf5CL̩%q&LRT<0xzk Ä1hN }t˅BHڑiDcݨZMt7(d->TPRձ5ɱ)rQb'8 48k4,'_v;-b]UM B  1$p'Y>nl/'!w |K{f}O r\z&{FMP2 p3֘X= tc?i =flN?>>j::H&#N Q3g4Pr)תski 4(=PHd'!E5=5ziV{irX\{K+!kxϭ+=%Po"hc>$_{$!%ZPeS.95Ǎm#Հ M:_79ꜗF-B_,siN綢_k:<NJk1;{Ps ӄoc(>^Y'x;zdX?_H u訦ҜN{t~JInyP9;HU&/Po r\G͆x/hp'hoHQ5\}T93qMCz%!K[x:q935==';g,3';JPDȫK!Gl`AX86_16kb@w#bЭ;%9f=B1uܶQXt j{1Vv7r@Mq",bA]n#7d ,p-r!;1DnDY /yTFW/pŲT!T4gױpꁄϖ.^ZK~d-mlT`}=jkTrf n]L$g4*fc&m7pfQ'L&G\r-+9Cgܩux(丸,7|{nlB}F$~e\ ;[#;4_r3lww!*W&B&(ڙ;=E}"ϊ7vN63 H0=;xGTIx0U"ȋgTߎ䞔~N7A~KVk)fqv:y,pt惺lz HZ Qr%Aܷ6IZF_m@^ѐa;pLIMuM$\anHvX|womq-q)%r$Z T}\mf9ۥҢY:549ViPDMo:6!6㔦Txlv)vvgxm),0MyiCx<6`Il]AE.7Fqo(ZI92g/fgi 5ʐxNSw=qxPȒ:0DJ,g>w␖$XSut5yC&1+l8퓗/EzC=;LMU =((b `]~Ѹ\MRV輊/} ȲV܊`2u*).1<`=簗Ҝ]c֓L3V~x1ѧ1ۈ "t4YKnJ֩j\98^C-]T#¢"ˆ; C@=={!&WiفuECHYUmg6e.eR"h@Ka1P@'l3EL#5<&!%wou/-ՑcP M< (p1 5* *HT[l @ht4wš#w?PFy?sX{Zd2*N=:İ:TEC<qURuc i:㵛y <{冪+$>m:c.NW=&XKE'YD $EAxB;vxHaۍ43I^'j⎅} dW(`;G|~w dNm~vxҸ{2 FJ½Dk|X\6W`  -@ݸo:+3 e%+v+{!:L=KsI]T$*=6|[&ݱ|Q EMaj ˖YpǑy`Eoe.lSjl7>iL9ⷾc)XȈ<Ŀ ?p;p vU9D{6jzn8Ewr\2h.V:}'BVK^o$@"G鴕%RSc,GDQɂ,c\egE/9 v U՞:PYeD='7dEQ7VK/c* n 7xyJz9!%:5a%. DaHJ{>2Wt:%_/ 3HSk\^$@83 M[u' .?E6r?/KUkй Ƭ{Oj`o,)QVˁѕY.Md{"vz>Edy'A l-?CUY)mgvjޕ:{D,j:av(6/f]fKS8,2>YV_D;kB7iUIta[FQ4z%Mm(7;+^`:s2^%v8`с}ȑm>lG6m?@ӄs"FrÜ ,Ȼc6Gio*+/ۋzYbiF347 k,C!M¤8~Ǜi!{8b6 @-Fܑ Hm@ΧQ6C ا آ|:4ajV@߀Dk)Ĥ ~bwmȨ>&8ѥ4iflXڛϧFؕ";oM¨}?{V 4;&&}2R +[cB2#-(3L7tǸJH.*0j)kw8K{̽L_ͣoTF>o( *_Z%jK+dNՓW jS ah[/M~ٻA5JܿVLoܘ1ʍ(S,(jn\_~ {am؟Wgw-ICKw{q, A0̪̼zV=efZn.l@rot9_2 UJT攛c)ƕ/{shlf+ܪ"ގ; =WLfup/^? \Co$Q8+B}ʤ{r*f^G:97""ILZV^t8׀>dY(r/~ qő4{Ax"˦,bѷmy⺿hװbP 9f[(H||.S*Ba9<ÌPW (Mhw=lU$jV1߉? r%^#{Q;pc$%E61\ƄjpdD\^ucF1.L)?([@pnO(O%̆e"|QQ-14XB&`7mN&I =c훪% /h8MRqLB;0:^=lGeSOh躎œDyQH=Q;l84f+Y7aLۓ@lQtBZ`o]tkpQ`Ms7AO,{A1d/-Y} ;ds/Tvzi~K9s#Ȩ&f:y#,\b?;$3q{AXa|KWɔ@RYоwUL)a*|*\A!PeehtVb70],˞R^9]QGPã [yZL٦xH`$!:F| guT]ݽ-#RLs1uԪɤ'~K;>}j{t 2S g=4:t܊%K1z5)Ѹ迊ߑ~FʹXm>9q+jp.-#AJna>!Yz wnθJ7BoRs2,䑱EHƾ%鶫Ԥfʛ?c߳U"L)E8ӔyrDœ*$XǹlcKήγ^|1{*4AK)VV3[%K,<39 AYO-x?0M`tYjO5TBK{pW 7a21S/ue8~f3kyIGZ,HT)2t^‚(}0|zb-aA?DOf-v_M+9O02j県b wH|--L/"vQ? ~=K\E[GL?~ m~BErAr̡K xcȲcA}y2NM3UV'Gi Nx.Y"Bub^_anV^5G/)ZZ*`?;X1GHvMj%"jt]?xӶ8[80E5J,ZlGy7o8<׽`!Vj:hI\x}3[ǛH6-S]K5p ov"QeR'u4H& ֫cթpn!N6k=fJ֑~zG^jWN<+z5j}(IH?@ Sܾgᶢ)pd,Ęfv1S%2`OAyGzAv<,%YgXVāɀ wFxeב+JJS !62ϼ(7eD/ުΙ ZmqTEnK<i ܫ?}_Uٴc֜4[tI-$8['H␙aas"c$G-bKP<u+Wpɼ $d7YΜ6LGL8"u@RE qcd,{"! k[H}@sj1{ b X:P'U_Pκm/u ?z_zZw ӮH/ҕTNNxnG;eG-9_ⳒL9+9f ,sX [/ yNF[Uo#1A[wdI9]C A@Rd!#g PIR:1j?TJ]̀Ƃ"} Λ -j$ ¶& ~qH6PɅ+߭h\AѲрJAهWj;jff.ٱڿc{`0{RDwE=q,Rf\(;TM@t ;.ˤBiZW,}vɱCoիFn Ēfw5v$T@6W"L8K>o)\r| L M.#zz-{3dMҍ>R^R͎c-}sB&$m%?mgBZ51kP ;_.p.Չ7$tT?:C7`"^$pK+.my yGL(up0*l.=߉YoHza`o6e%1$כּ-Хw0zBL kJd!*ZbmŒpUnQFair~&kȐmhr#i kh;+?N_Cyb$4Kfp(I\Gl|Le تD UaZI)2!1V`u ΄\3AC99-~ƙj'I<t=Jb :TU'RE{:Te1CK̃Qͱ\si85)n7l\uyo|0VQ25_Fn27^Zۊ\C"LI^Xf:?q?љϓo% mcx@Oכ,u*"&4 DkuevrpOSl>?#a})WSLȨKf=%yC>b gFG_Y50bL<1L|n=U 9ڨB|x <D‹XᴂNE/rOQ H23*6ƧLH&kMlnK VfWEq`k@Zn5$N|P˞*.LS}󆔼["ZÑ옆5"xb$ݪP`,Kk{IoO|5 &#@hIcQpQG.?@ܤAaQ-eo?I =2ani9?>1cWU$Or6dz.KE]i!=8bN󭳬樹CfV:r UFǒ|[;m'NA3^I_K>n{MCB5̩=Duw2U0g ,bLũ%-[_Q\N(=!TMm;|SRHVq3ifv:Vktəi,?կh>:c ^<w½;8 |y4[DǰHXY˪<kbRh3$w^n>~c/kN|oȣ(;M8pBRGjV:m|?|Nw8 '&ۉuJf~EjX79sT2+#zik;z3N3e,Oʬ] $KPa ,Xq(T{IfF]n3]0vFFY$1hpYTMK+s_u#{ʜz tN}M8KC0$4-n3ӥ:dLy ,,G![wLaݦcZ/W۵~z%>.12\@o2^Jd{X e\́ݹhV;;") bX x6b?%wP\^Gp2L5LXF˭CCp||̮]>Kw?q(Bj/CRt*\6C8`sZ6d4v^`BU!;Y$ 1aLt.9QA S_3:$NZ #\z%SMax&;"C?j Xn ˬy3SТ<\sA(l-SJ5d>WXMkLjHsšM$+N{@QLEN}m7l>n _rTvup E ``U]/Q?Iv[IT8|rz#$[t\^%ߤ YDJ~\qD;c%ɐ)" "jYtm0gg[yM"/^ )3o47iZ"< 3"l֜@9J'\$ ]Wרˀ3GC̕$KTbź0UކOص+@#&(spNuS9QK #aJ~Mڐ+Jfy67_}嬁OѡloP2 :I.F~a6lFm8hn 4UKzږ ю aS'of>[.ñkl!Wo!Q =|&)t w.V[/ ||qT#]Eκ ߴsV-E|@.ܜg<6˸BHޘ1x&))8t*bC)q͂=\:|$"HcuB;Չ肎owv߻5NNr5$^eq-EQO{Sļu~qZCHFy[ ,m`>Öis?H䓎EĿTp!82ML=2ќ6;$I7͋B-]&G¤|W敗_nvYW }ځEa[^ 8&ݶLx%{k|1M|6Qq04b{?PUzn%;=(anqm2S3|@Sx17w e? ".؆kn ͕oW"1{s(^/ * Rp@ⶬBM(H?<+5߅Č+ŁD&u]&:yN7wqXSP<1^,vz+RKq5,^EJF.myRň 1R1{xr8fl/(ZiUSF彔c(4*F=%SP92m;zڏWz-Q9-9B[^vt+3 50ƤYL2FJ pmhrY[]}  ZG29 *;c~-o˃dӃ1/ +mR'C :jm9>0)fHMd\Sj6JPɿ]%y]}D޷^adI.U_APLh"66 }y\5"HI~ ')'2{N:--mw@qobހPtw xҫ#r+l=!}lr+T(|,D-NE@Z%,6RLM'Z H|;BVx}ag^|,YFBIBqz'l9pfn tCEZ=d g{ "ks0Dq1$d̨ûojǂ/'<>ˆs]ˈ/qnA rq?2è}!Ct8GJO9=#wz^;Dx>~Nj3eN[>!nd=^œFZ̉",ma*F11F4?:,Tߎ\I$1s%iW!'ЧA+w?$З]m@~]mM/"L}Y|[2_R S` 0G)-j ,Hws74z}+hBGk'בtl"!)(2bM7M鱹$ 1] \%i|و(7omD!zV"`p5e9BP0Hɉ:kfٵ(Ioq 3Qc0K78GLgvGN"Wa`z 5-w{壽~] 7[#Qt1՚%Km3V:o\̂_p޽aq@!^I^T*Gc?M 5HR3x*{*tjr.ПO:6q"PRa|$ʕɱ6H!"JNd|xS Vگ/#*`fhwL?i% B-)_ Ua=0>GK_{(dL eN_ή%t,!%F_!z V[HAA*X)E~ m$=?BuDDˀ},ȄN)֞C:|_`:?: ORf >0!V^ cd06"]|iU ߼x ^OW|"Y] Y׋Mx yڅ+u'hSiojWhSzoF%Cq:M=]EJޝH}=26ˇcD1q',vQ0 FC)Jd^B+@dk[4^-%sN>0Q(R_Fo֗y6kz }UQ/TBxX HtPaFZ f g@6(@\.c]?:}jۚ<xC%5OE\A7!2̀K'4d߼Kc̝H`NFr*3J7A\>xlYt&Gsb$߰K5Pƒ6?Sݛ t=ERmt 8h=rc0]?I6Jr?#\k8-C ZG{y:`YE IeðJZiы8f?Kko@nqǶy :LgK>'r"KbՖJ^Lf<@ 5 QugI/2:ZBh5ׄ#g5\]Tt3B_錬py-Vk:"P"js^9o6w됊 ;L}Sz6xTfa-0dN" Yf 8UPDŽ)?Yq)qu-uB6Auf_KLY}@B\$0 HrM!|# JK[GµS-H[1m84H.0vN!̭*DOV(wuQE,2htq$9%5}?O]\SjO]љA[Ի ç{ {7U3VO91Q;Pۨi- _#\A+~.F|?6K;QXCo Y b5/ǫ'_tJ@HӬ3c>?i[p9uʱ-G4yBhf֝Znpfe?%g&wARNxlHQzAVV:Xe/:a&T k..H^\k]x(<; B7f_0EE'>>p.13(C (WnQwe:<kk=tSIm'== lfXiOUt2q(gmN2ߖZTXP n?ZgP~`}KJ8W4^/=x.d2Ma !<[lBçރE;|:s|]EA(j´zROo~p$S)Gu*rB}P1?=( ӳdmS  NuE&Z2J%` NPlɢUF|T񅑬0^v}hx5LZ-OyoC/1R 8]MGeUl"Ě_T#͍E_'~;Zb_f˸DVS'I>/X>]Żx *Y3*?>hP~-8wBriMgXv$JU>ޘ._m7}x⃘rCv08AQ /٫hFIj¯(|*<Q5ǝlƂ:^ <&TQW)riLdzɆwvf2}2UvvYo^A6'oэl6/h7Z\6j U8+@Nmxtm]71p)FJ %"[,+Ǟ-_, R&xxJ iLCLak|; ș-*)ǟ^rdaF5 +&>!¤/G=\zw3*mAvr̤VA֞*+c|@c1Ӈs6f4.֚{P`Yt]7{+/&oX߂'ʄ}ɪ4 n eN\Aó;yEP껮wb$Gk8{oq]nwnN."s % MM֡p k@y\õ#c6YYž}*L6E@bO [6 9c$SZq"}pNwB0u(s{| "CRN{& LkLH@vB3L;ZoomJ0uaqKluP$grw@WLxP7 `Ѱ\ B~!^'y# #{̸Ħ BBb:N7>Tq~rƄOGt?aBCʙk:Zv7ڍsk״Q"khd2Fn wKSd6΂|hpcF'=jp}Ϫ|$0zTaoU!33NqH,H;Dݙ: 8>/t*([5u;Ruz:Ǯo#B(trT>JyRAkmʶIp{x84-83S[I׳{h *DqO3W"H喌ViF -MHYz޴bG6(̜x.İ8p>l*^/% ⡕T @s].2cDv'ݙ;[L22;*RCv̶7dZk/HL1bTӿhkWe7?78dZe~m*Yg0}k|ONrXf3AdoIO(`DDcƞ ݻ;z@o7Y1pE8]#0!zUvurŜ^,9m$/53Mb >R(Jb.naxo$NPlB*c9P_06 |&u،-}|9 ]'巚UFȀmؐ-B$5/fP0&=sڰ#XӅKxXba6f0{.ˡ!V+A1iYרr~,_ SdX~4n=85Wig[m{%'W[$cI9+al s/d~"5 izSB?i3@]ih|u`{B;py|G1!3i"Enq81v]c*%0)84[wƷ"cb[V:9uZpx6-3vG9ZeJ?p>US~ FkXoWpF(: ޾9N U@ ɮM͢3M}.`-LqiLڨEI)ocU^j?{;#+99;;:% YHԼ 3!ߘ[Yk4?`9-4*'Tnvf!9 Ѓbm?Ew*֕\)X3>{o~I}ʂ̒oa\>,&Sq ܕDS![) )m@o,+Yy`c9/ys6>be㽅~%j<H[c`Jiǔi]}ioQq!LvlZK_܋2ǁ% .h wt@[+R d-*V\!!Xj3F l@M|(FfXGBk`s!`:{3}?Y ?N@7Z:Zv6!,u./"M%DCBVVjfb"&!i?ذ!"5:Sh}1r<L .jW;GFQ&ųC2Ll>DXm+';^#u !"P›׸~;?X$yE"Zg'ɟt`b " <ŒWc]G6L1+H`n.+=@m8Әer&~Mc(TUK#i}a iz(=ƙ&|B]߅u4;Ey6>wWs詊{KM"G rbj*kn;*T덇)f 6GՀd@X͂{ЀFú-lkH:B͓EBm';iiK2UA횿C6m0տ@`f`~>/Kj;>BݡFYg}cvI3NEJ:AuyktR+nU"_?>e ݙF)F q}̷RtqyvimvkbJF>59P($pO\o Z? (jN}TRf 'cn:Kl KhZc1М@@sD7N:$5|^ݹ:pZX%l Ah´%Wb8I'怳>iuX |Ĝ+&x`$acPKPf^D;Cm_r?T"9˟LŕkQ|?dBvLc:w{ .!zO{{PAn^6ڒgbwHc+"V)3&[lfX{(:Gt9^^ N΃me-ΡzuBL{q+tPsik|ſ}Ԕ8VM+Ť*̖vv(r})el?#lwO$ů+Mxe8>N=ZU]AKGU"E~{Qd8|hiZbOZID? 73 2jW55P1[]xPϺ?k0Kƞr` F8*(5]*r) )eJ i{I=>"EW?Aȉ]/JA -g8'$( Ԇ1aŴ7ag`aRvDN~|4'6C=3r}jK:HĤ/*{|:l,_s5ָqe  Y c)% ^8kQ.b\gEdz0oO8@lRch&mgyv"I UXUB,U"n&d$0+N}ϊ j1{ "F4q|ϞN;I]3hFrOimQB&|A H@X2}2qS+}/*T X`j|ϋD@szyJ¢*<0M^'>3JmIoUYo]x5!/ZѠb~n~{Ĉ-W+M~iN1]#ROHDQڽ?9$B3eb%c9M&+t:T+Lj<2sK#f2/]>di3\:_+.d@t ކ:!z;[L-w#f-3z 2 X~ő.#(4f|]O[579<q6U*N'ޜoz}ة;O C#"s(Om5{G.Ox'W [-\ Y@x촤%,leXަrpe*vk"g)kH. i!Q._p!-)mJxGr*n/~L_"h&5arڅ]7w]Lnʙy}T -85cy<|y/v'~"ya\Bs騛֕na>j^7&hi혋‴OTQ2CM57 A"Ǟ6 f+iAH Wlv 3kISvϊB'U,lcP6oS:W wVB]vZ=D+t!GI9NH|qtfcWBtj̉/ˊNi1YC#^Qlꮯ-D 6KiЁ!e jfs7&A`:Gьh["6A%$hcAXv+#k}hIZۗ[ni ۯؙutFh<{ ,FFS؜ԽXs{pj_|-ܐ;fN؟9GjZp<<%?<"q͡Xi g9կ4J|aS_s/@Ӊ V C1:~qϴxS&j2 E5Ҍϻ&kjoycOZzL7GGk Z 5.qYo{6`C7eK ESdF( PpsK{I^u5G?BX$2"/dazSAobTzcuw)7 icf>; +k^\zs17īoh-"ߔQGlp _)(23w ۽:@w&W)BlnK*ݳ{5:lU4fqfoOi[>JbڧprEI|Wm>єgowkԮ5G*k9*hVN 04j,8 fYCSfY5J'+|P%}%$"| 'I,zlXeχpl)V-W-{S_Ʀvx,RxAN˙߱PV:C^9*H)odG:D8n1_0ޟ ͱ~Ab"] Mɚ'V֐-M6(GǴ={;蛡5xi)J0ǒaFݴD%˝'M Ajw+lSSY}R0Ӆݿ)̽~QH,*yMMy3U cc4(w ԥ!WY*6H^I@@Qr |Y |:/Y~9gXI9upN.eZi@h\[n*=McOKRٍIgUU $3Y?a~ .!Y-!l墴:Ydy fD{Rm& 0pU+24^ARcK˾-#a\ @úI^fX4$G6jQ1=w11~IKErduE A^;[34S@6tlTMawyXw^#4<۠\V~0 R~vJY#4׫ơ%%ۙeYr5IB Ix[L?2;6);t9<Lմ}Gp CSMvZ" Ftg)Z$91?Og[d)K+R{0wKlPHvm(M[m3r`m9Daǃ$|97> z@opq.yKY Έ2Z S{gPϸT$L_Λ =_:RΐJ8G?qm].>|w Hf`u hy<lCd/_lgݖ/G1 }\5l Q'Fu(%1K@O67w; &"][hR^ hB-#bOUHdse\!z] $ E6#7k&tڲ1E͑A/ WlG*n̎rB/u* I`F$橐ɪVG ׳zHG+a>MRҫD9xu@!I-X̝j+ |ˤM K iH!HZp4)ٺK 0,UOaADm`0Y8=K'Yb Ec-\ULMcs{Fף0Fhȵ>ϛ Uɩ1Gpƛ[nmsN@ d3O Ok&0W]VVBG:~`^h9CDc&*<M*`.[`Oo2oF['Q,Sa(c Mi>^YBRi(j  U}f{߽Ga1 ڢp׳܋`!d?kē+_? n) |t4]3iNFiWaZ:2?ҷ'a}^J{ \*&14̕ĪL3oG1oZlM$kZ5ut qwF@\p7{+/^HV  85;X, qb.ڳCkAa~6 _H3.̤=F|c)weto_GtCOkE"!Yn0!j(*/Q*U ck C9|)_X9k<Υ٠]>sN<b4F1IVw9lϫF!佬QaZŎGtwY[J#aŀ?(ݐbVue{P4]=H1cjqiɮ!b<_pH ^*o5+U/nga0OmBG$8,rĊewC;Z}~l%f'ӤY4o.R .Ůj.8u[󋹁uR.U3$!"_tŸDF)(ӅjU .  Ɯ6b"0N[! kyM񣣧O<@}w/绸2ym32:{> 싉J?YC1ojuW} wfFpǎui ǥimdDJ;J6cG12~[ K.8FhgVtEy[0 ôTO@~M@p)g/c[S<|S/?yb^Sx>Y+9n?jINP+wC)2)2N20_I}tRv"PAoLSE $Lϝ+qQr,<<U<<" w α?C>AThGL$+ׯE5A`sڏ[S =vA,(J"Flno+>'}];/ߠ#c+k'NOѴ uѼqr=tq?zQ U$9m5lC4Ҏզ3)Y?a Qy& >>5ߝj0Ƴ oyWRHsk7(C4oUZs-u+mNXcfhԜ,{ _:xKq$+)#/ʿ S/kXGqg_&tX{ G /MX(מᐛrC#"r\Y*#$.>ǺvJ`mӊvus3,Ak2i $?|o3ívPib!Rv4^ d?)l#IY Jo0q8DrCapHo[dH%~7b&LqbSB1|-ZndH+x "Y4%)?9[ +[C6oQ) DͶȅ62zoAau"mYŐw bD9߰dɁ# Kq/5ӈ.]$Khu֫wl?jͥLev\m-ߘEz}D SФ<N$J7ʯP[ *ѤC7a#_/ _T4ܧ>mmeQ=LCzh4\~9P[ G*62yz,.1PV/MZJS{nlJR*, B ܅ڔ'@AIL[o+{+>wN\;\x"HeX^"ߏɔAh Cst6\%e w{N,$E\IWErV.k\ َy _r4ޤj@Oj3 u)BmK,C!ytԘV8岼i) njW"ɑ~C0apqYԫ)W:}XUZgWt\e-gF<;~aE_v/r&a֐F؀؋݌Ɇ!d[ , y+tݽCYޤOHc~r&Gسwa p!@!NƈKc ֗&ۄWFBGp>i@0A}u Tw-0t=ON [S772Dƶ\)cgȒ8%)=9 ʓx2d[~[gy\D\ hpA}CT}Ef ol e!/ȶXGzPrQ3V%޷Dwk!vG-bPL'$8qvwh[g(_ۣaAP>6/9zQ6;b2=W XilV7Ր;h?iLXlJN۸G8 Wy3VN4L w[dq$ߍ0Q^AM{i0d`C=Q]j ˴[8ٺii"sx`ٞ'sOTw8}{q,;r28򇭝KbV$8)` ek](-k?-Cy2eN?=LxD~#ARw5 Q 5wS\ OLg 62ޮͰCs =O@jFѲGx0C Ͷ');̲1ӆ|ԨvboU32tc|ao#xY*cw!ԴZ%i-T >D3s$މWF^4`M^]x^- V "">~qu)mܭ# Db}K o}*]"~fXh7~*x MAi}s} ioZDzu$G猩 CHn?1D>#ap9v첻!܎ pLefbi/8Mf!v;u nY jl ,4]!WWU/LE<qS$L`U%ϝ~KPhql'WoI8e4uV 0ɫuF@ܨ==,wwcBAwsމϖTգ~Ȱy?3TcĕrS Hl6?ِIǪF?L+ZDC}So $GF̯t1Yr~Cpo>[(v EӞ!eczvm9I}#ؕ~ ?OȮqBaw2I|rFOLlZX aj%s^2pɌci70/|-ds7u)*d,Z\JrSK5vHMDq}&[f3OrwM 5/7@x,Lh6a) ALaG"'p)I[]Y/z KXy@˚Z˹k)yrpjljB+ 6/yerβxI+zX^m)DICAr&t ,}]cխ$/$rWʿZ>c{a4Qo*QQ?27vu cj^lWk #tƦ3|aj\ G– `I ?Tc՗1M"Uʚ"۴R|8J9Q-S@Aq9ᐔWi:rd[& 2 5Eq'_.$e24V ,vY_H%"cI0Qڎf^Vy㻒bޠM%cA$+!jay޾UW %gЖ{_\k-Td-xLhV:)V4(y%wZRpwhE9 >2<&zLֳt.[%#L>g |˻ U=@ͭ^˟S 7&OIb `Z^: y뀵^gG$Z 1&FAgqA9#"tLBS@&6\D8 #oC=|WvH=f ?>]mfcyW8O$n{'`Ps'|dA tMY ؕ&z+{Eo>4dȓo?Dњp*:hE[n9Ov$^Pʜ՞:y2C/Z zy<#7S2]#y;ޜu#D߫ I Qe|/F>ĢG ʞc{̛ip)U7F8sW@[&@}6ɻC h٤kP*ŰN2>Q(nd~PN 3N! 'rcyQ!EgB@#όˀ*AQLOl%9etrd=7(僧,}՝O*#`׵V ̖ iUmtFOzrɣ+۪^wA#c<~- ;q!FWh}xxK^Eh7LDk! >_;1yFE0[[ 'e7& .ػ^uP|{ncW~t 6V3cSd5zʙa9(aݜh`MS`cIRoJvuy;5ԛ_# xw5|HdgbQ/G#A:Ճ!,AcUEX3>*($o#HǾJwk5A|šA`j!V%pAVro$GD,2 9 Cw~g/xk^+#-o8m{I:5CD-7E|PKf56֨´>.L/,Nn!(nj~$F0 6Q55jITZUS}$C1}hhwwLi=hdچY*cG? w~]A1jgȎӠĜ]~RP2tF7 wSk^ܥ250;,u9xʔsޏͬt?cs\6!(;ޫH&kJMs54f3R||3P$ P@):+J7c v*<R/6ʸ@23Xf"68_4b-Ss/TnVs\lԑh̤S)/("IP|Oy`zm%MQDPD~yr\DDK+R1D[$5kǂ K{%-r~7=2O%7J'fI4s$nX\xF.@7p3M(i CY 9TA6WRS3w8BBrB3N* KysLGX$s*%4huY F=7J*ܷu!š0{bcX- kHɛ: ujs)ngW Bv\ܞ>a'}@w%L<(ճw=r!_uCgkຄ\m?up [n4eH@҆nzҨRXs+ۄƏ@%-1(ܫxFNxϵ8X-U}K"-p||x΍G%6'u r${GlH:, ؏ڸ?wR/DZ ӱ2#5>3wit73dHŕ.U.N0=98 V>|D ^.s6G9D'oWc Y> i8*MqhakĬGn uADܐWNK;`.3{`3BNy u]/49=ĩJ=:̫⍺q/V|7mZ t4 *-[ibpԉ)l:&Tyxy10 5tI¶ 2Ryi4op:j1HڙL95RD 0BD!~PZeO(>3\BU^-uX1@zvQ.h%,yVA'e%xT |DFeIH?0~3KFL@)6 Ϫ֬s{ MHznҒ60M A2.YVO3 #خ/]6B4paUbf1\OU6qwnpgOY\}1m)q9Src )b!- ȰMOj>63/;'蒼/ܖ5ej!lTYdlm",i.(XDiG\!B%T4.aLQ[j7 n ةi~]%V*L*)& l{jh6*y[eX~*/ʢTCC=2/N=߱<"(N6~*w1LQH td!ғbMp| " ejaA<:^ oӃ]~BoCExSiI"Ƅd:qYIQAK?nL-A;u7b]kx4W:2T<5@1"Zyy&r-'toJ{f v;:ņ&3c0*eؕ_<0TՔﺁaz Ӹb'EI="+NWqI*}{"0h VF/!g`rxL <2^Ufv zWhY a ݄J"`zj l 5=ĸ-KEB{$04ip=AQLjq:v!dU yŗ;^몎m`w$ (n4Q#g{&9OR?3N@-e]vͱwӦ5SQ3#M9k8?.AFAbh(66ebLb$t4H A`R:yԡ.6k>ø?ءNr^yH;gIÈ\T00P3JXly6R'5 /uqg }dicsnlи D8ʰ݃*o-C7eL'Ԅ5IGVcI]P#Y Ρ AcoBh=]!3_a?4NTxVmcWC] 0Laa({zD}?ÉǯlO[Jyz1.=ڊ긡کc+ne2Pg[tr6c"u_єh{=:YtPmJ7@-1?lŋ Lr7&I!52Vcfg)_kD$m >X X{H_[GܮB3J{ ^ Hrp~2kcW?љLAY 3 ˇ7ZS$-0=0-(Ax<ٛ\x0ڰ=[9N+z+Ͻ&`84 (QltN1H\RV%]0< :!#Aj q(ޜ 1H\w;r{ dh"vK˟ŘTnqŜ |r[>9zelpa웖6,)Dl'?FnV_KŢK{z@| $\SfD}إ|tbȧCɈNl=R PMG=vձ}v|Tq{VRtvOoHCf1YҐ_NqiFd(x:yܢ}^3L5ۮ5,(%= ,?--7Cއ圹A\95{.[6ՅR|"%[t(yPˣP߃b9Qa!tZl] * Xt'%k@V6DH+jCdC`0 Ub 浶31O Ԟq]Û4=.{;@9Ll7w\Ju wiNkN\&ɸC$+^)ǰC(_ũl_)OWQ"E+ _%grd8! }^]%רŐx~rD~ zbΌ$w*1 Cd*JQZ$ ڭfW3sT]enj(x'޲Pqǔ1T?vC/kFUA]Ô1J/VNKX NpԷyM1SJ-~wXʈv"Q`&( 50Wᰊ͇~9E Džc3T_i8N'o7,XӤݑu[ :~ +5oʊHJ`HB<{_M ,@BqH↾dds&`t{E<=ՏxȢt^+)rb&'eX7ЯHzwv8'gk,tmrſ힭f70I]t\jOJN`gYg"@]YaCh*5'AMbd6gvd܌VG6fk`hoTqnuiorIm8G&5Z#$y } . ]SjЍ3y|6=6l l{%[IB?,6 6Sf{oxʯ}, Fk*MF͚C#Y14TSRm8J<-FaIx_UTURo'"aE;N'xwsmPa[`\F\[?>n:t7wyۖYB*r%uuD'G'*)mo_@ Kζ_<=:<֮M8}w .X倯\U\C~[e[`6aDzK ?Xd jeq+|ӎ+oY|1)CtẇOAP]hv=Οѐk>xf&iTFʫxM6 sא/ZE{(.f.#%n52 E<g˦fRH1w`QE-{ԉ4k=yM^ ЛL4~s Ǭ;ecҝ3sEd@J ٣g#iֶ!9RNŻ\R9+&1{)2%ifAJQy^KnidRUʞv{U-B z,m$I`i!㭼v=X(*,[ BGQ=WsOE>a2y-?ܞ/Qma{Nũ!%-%$aY/C, _WQ/iւ/k6:3CQ~!P?HKĘ]I_@oceRUX QU:WLkuZ\WUq:3N D9 ?NHJ>by7Ę sr4&*fyf(m%{=_ X@Tǎgl`mض[[<6>O?^rF<Ev[zTUz`$%=,XzY.NВhB0 ,S;xWn, [!|c;Tp~TyQ]>ξf D jT}}6\|[?w|^wg5Y&\/xXVcV؊ɾ=&/LZXf'AߺJL[N oru^\uEԇ2 ƂR-hgJB ltNc<IqyxTH\{L-Y QJJ!AJoA%u@ |P{vElfG 7y2? ,p`s/I׊36 eVGe;VnZ:-嫅9ktxl@:נk56Z?奍opZ@t2Yșr+BrM?K-(gZWAg?-p|?Os.jkYNbGAg\tcb #{q7BMRSl]L|A%B /i3RW9q•`6 ŬkwaFQ|ӌzwZ皪o> ePS4mz /"W]]mBdx1-fy#]0:==<9&ېy~2գl}yZh&;dzN T~sP")e.?wu SzXK4ۙx.798~6SyiU̵koLS7) %ł^UмǢp\Cr&-j2^)˜]v^ӵ}4ʃF\ Wጃ2~_&vHsXg'#hXOآQWHOU4LEo( urh]M3܏X<[M_|U Pd̕+h=kF4ݞyͧE=\oXiSƜ9*bꈠAAp ;w聬nq".JC*6 pSR}bw^o>q?w54a֖]p] >3]䐽ki&ӀR[A]g~uEвUOe,mzYP #dI{rLO`SVF?iGv3$0AD޽.oqwg %$1$f3b΁@Y*Nwk`eBPi^RٺqħVoһ dK^Ż$8,MȘ·ObX>ܭvI{['ύBHyAitWfv kxm S(HAssNy{!\ߓ(p*` !u55y$FF:Zr]?<t notpT7.lf0G"ZOU_7ٕK%)eM M2)\y5=!/_y"rIc&sˋJ~=Y>7QG{c,& Zc PuJ3.xFQrM6){*.v^Ty dbҒj?iN%F뢵&@D%a8#'ST?K~\uPJs9j,z:S)QMR8Y wN~2,JۙqbFRl I-fYT.GWptⰘ\j]┦s~@ls`k²h ?hJ5?zӆsY#L`a^MSA>:\m`#^V߁x=Q@rq2@["k:iO9uД=}i۾Xb.y4V צ fqw4o,e&Q` Q-br _AlThA2pa2ߗۻ9X|8A](,H{=:|[gmgj^0&#6nkgZH 3!$yj;2ǹjl{f"&,ZFP(*֑ O0bh O&]rǺp̅(XzUFk Maoz[^e?0KBt5jS|d qY=,^ȄhT<"';v5V {]할 Fm<Bٍc^NpO"lnYzj--&~ɾ/el:l9XmAڼqnMá4C}uF(n 8tM\ қM 8sBW#ϒ9^$4G vlZ5$,a*F*``֢>v'veQ17bg7rʣ2|Jƍʽ?'lz]Kñ se!yͱp++Y9oUar7D!lG3R&("$Rb{F9kK[4Xe\+I`8E6O@YA8*bϡ~O+)t5vhAşCGUfvFhQQ r.-|A]hta`^9 UšzUGD^}'fD~)$ޢX"*Jmd-O!vP(SQ2_J`?ļpSrͩ 毸O8FmwO~Am{^?@`.{rvsnX|B,;ǧNz 9ҵ2c;j#&SYp[KuHU'r8FR҈1kLWPCTDMk{ |Ti")#JOӝ[+хII%M^v;1S(bIihH>1ֳH0Yu5{mUx%T SL]!z@Tܠ}|Gc=9su`9cNyGzW~MZ\c涰7/;|nfblHBqYD /z<[o*gN+ 2H"l"mH& 5;Ce{XuWG篡3 Q,8Vn}' accAl Km3)`=VA+AuNnh7F?iRz#7>W{#H:#9ژ<;.%x"K-3WdZcp:B\I`Nz0dRB/!qN oZgf܉Y[ȻDQ1^F_?]=Xg$6VP> Q׽"J:}|1b龳r (+Tw"䐵7IV@L=oHozu"'ð@)7a[A ,s7J๘3lZ7>l,hK;L0y\1,w*&s\+ԉՂ Kcċ(:Uc7bcTVAH~qS,꺨$ uEQ 3&w>GGkK#^n 4O\jsP%18g ,,wow v]e쫣 0sVwBUDH sLgz,9qá-21f<]HgI|/RJYSK0E' ~j+5 050NI+Q"4DN`GMĪݞh;˕#J$[c&@ki 6$75Yf܈MXɝRrJ5,)0eyu$+*Jx.9I%ŠHl%{@s>+n76~qTIc cƕ٣OG|Һ]ctVOHġp`Pk(ݲ3=ITm I,]^@eEJnۥ6eOc;!K_a@G.8y:!+vYO6B?`߇'n;rZw{mwxo[s42[ct3!@YɝS6O_ ej4%9|-B/' T_&Jr[F9{P˵}` Xwn؝#!L)kzffMLfjOI~̾k0K:]<+k2zX{kJ\CλQs*?.S%J*b@NzLNK@|06H-kE;$}sm١ؔ3 {G*s]D[G˞*6yJ Khʮy{jU=nYbOT|٭/ql`+"Z ˑmm$m켞y1-/vyx[ |^ _qGfݹ0lU qMwQ98f@*%eP:聊 Ps%!IX$g7FZX½֒CF|#J28.ƏU^eղ-3\T ')W NK %QKaP_X Y<-xd]Mn!TKFQa^6r2W)%h<~O1jD|\x f&2OiF;r =q{n=(}υ \iM%! (XV?<'%8PZ~!T yD ~Udݗ˃F) j H=TVsm8lw!`*0 ^PT gȩ~^p-cM8N%\EXq-I!W0&IA1nX.| ԧ !3<Kau "J@\&l Y"Le-PWN%=8q#W?>|]?y;]z= UusTPdE}LȔ tBQДd^f\:_sIZX?Oc&@77 =ȫh=ti[t`+Wt :YnMs[[:G]q[h_iospNgߙ\\sÈzmu? +4c#MRhD^>=,吢Į\` e1xTAYkUWu␝/k+LnJVlu.u \NZPjS搉":X?aYm.LgmI%u+h$9 0^px:ŴbBH*7nJ7BX!3;:x~P^m5h;e#:%bDiʒB IK̹kb/:#ݠ | Eۓ^y T|[l|<!L3 atuW)8 et_%G\ WN#Z=M36V`*ԡ7y"~n8y,(v<.ڔAC]ZDL0&%?=q} ER؟R-5yV8:#;&O^.d9o57hl.\eZ."#ʋ4%mE-:U: fK79lV,l-@]3jZϵWDׄSIT[a[̤!&oy("C M#D8킀ś`Ǯfmܚ2kӂGwMN) % mxB7?Wiw6̈/WQ᭻s$H{v{hƷ"hc|llFG8*4PjXyatBNt2;Xw)gFfZzC&W-̏_+q}BJHwv <1n< pqoThSRD4qNS`å䓨Dz(O($bO'H?Xiz&X HO/kbCppS c~@wcgq]4WS hYA(YRmUNJ:"L*W6*LLB-^Q|5b !Ezܒ3 7%s]59T$,ړݥSЉӚ~ć}c+ Ra4ySeO5=I|d{^I8k@*{@[%}u \5|@^VyJZ"ĸL0VU'd)U$dgA@$%iC龢s~ju7XkH,=f(<|hAX!Ck;̋4-0Ax\,82C%5zEG;y:׍qJ()4ȒxAA7 tށ j=-<,zoxJ~,` 7>s"U˨nG s8+_cl3XiUfZ!KtNu1eVНYJ3 ^nuC1 bJXNLt~uX.p{Ͷke>:G0l;4砇?Ex`K`z48=D p%N2QY,;BB!.uӫWGB*9"Þqh1ܪJ9[T:r9c& #M>? cƜV0RN_i{' "F\jIw)6w$p6o(Rw(s63т\9jCb}6o]B v]`dIݝ%/Z6+p7apiNDdߔcmߟY?O)d˦*CU~ 4oWΣ|h̶ЩZJ)[zڝ[Lm]`hgWi2f``{ 9d f:'SlD 3b 'տ w:ZhY9yj;i [fBskrd>_O!: *x@siLJrHֈ1mD 2~0 ԈlLpytU1R 3B>oCj~D*+h.~=u9 @MU-'۟I$v[x^EgrUHd?ȿ/$;eUc *4mx!b;翦lY{گʲsE)]PѸ܉UQlTgp*43[ :Ư̰ťx2rnm;n`B{ػn+wJ51 !Kuޭ>7(S ܺE):`\=V hpn.6`+"|t?&tI? p:=u?qQyE )\t) c\}n"󅀆%/riuQQDj˜v}[qj+ hj?)eRR:?ʈsb%e8Ms!-wDB M`"^hh>-Rtp ֿ_J*oaҒL`8QI +\AK鬨T4(iaW_&rBY4c Ѳ(%_F@("*(uEK|yoS8\Oix4 F7Ė_S S@4F+*OA\b>l_8Aix,_KOmSO=Xᶩ  ==miqYWe6-7^7FW;V㐽 >t#Ia-=GΐhCD,=>vUz =rd!$"וpr=U) Xq1,5^Et3tڃFX\+M  %Z>JmǦjq IAOYKW_82{v!dtzKX0.j&e۪))p 0w3Y3-) 下Һ:m,^rx,iъz\ (S0GccWeJS^Uh(W4CFe&ܱ;&y,bGXe~trR<)`u'Sb\)y$%q/`[_=ͿD}=D2,o4E3j<?83 Jr+e̾;RR 9>ԩ)O/u恏qVd&]3ɪ/h#8>@ЖaꖱsoS0qrjT&(';> k#7Fr,ZZʏ{Tff)ۊ~/3ӡ%y9^\kXY& pkDB4?k3eL|g?D~N,wեjGN!д,HnC1v͡#@y} Dž5^C&E-U^RKe)Ue#Gqy{Lo(qƬk"Hv"L"/etF DE6"[X; SkKG&$ AJLRC58捦9#[':F{F b`)V6JMjQ5ɰ-, plH`1M젼ye/Փ};Ie4d=hìVE :8'H d0݅մĀ 0(Thr^vohFR xTL0 I$bԥ_cFpwaL!wcB]qx&g<NE,bk`KE9EjЁš?AdN3ǭZ\ Ցui9) ~ݔ4l٨6eOy&NC.[W{Kblja>tvdN<ȳj._U*trwJABc̎ NGe-5h4_v0[Xư썇҈0ex Zs!wz!SjGSW:W2EU%qgXYY(]t-7aXUA:2UU߹d2 D}PH n^7+㉙o4Lc}1I $·7Qc X)}AfԚk Ee[z,*w~P485Ǘg҃\Ȭre6aW{\xѝt8 r?O> 0Q6$ިCW]wdNREzixr|n" &/݄4fGmb8@HYU=O%7NwVSW6V4FǐDs/),a:Y>ԩx5ј fo~։ԚLdx wH<7L ߱S;){tuyC=ﵿN0F?g'- 8Np5֕*oX8 0f׽^#/ e ٯF)>zc~> wTi wzfX\JW\)ÛDsR8[|L[H/.]tNZZָ#<;r9tQ,=@eg imWV ui6>,r-&ht'$#{w1\gՁ-;"ň{ٹz)3>4Ÿ$6&Qiu7f 2I"qdK^U")dQ'I77g)~[y!!vhz89 k3ڭz_0T8`T(b$gc} !FVՒ z%u¦Gk#0+VGqg%G} Sx|w,3 v)]{9POqX Ft49&a{˵5~Ny({ڳɫIϠ>ܨS;?;~["^C_v~+)b$lbW]T<?>N?z{dHo]`.w=H>W-~"ƾC '9~?qnҍ% |8}0,@(J9hNn݃,ka ׃g a-ǚaS5zoψ(zS ySƪNVw!*x5/ /|lB&0]^wk]|fհ[~#2]H>$!K쮋Vܧ׈ 9xWz't]= =:^TaDkW/#jrkk}BŒ]p_cĉLx+ X \^`1 (_cDOɝˣ*nFQ66ɚKzGy_YtS`ǥ$7QLm, +C)wKH '"Pݨ@wVEC>'?붺yOlu1x?FQ->!3^/20x^YYxg6(I-0\ik#Ǹ}M$6tpյ1`qܨ󝥐WgU$˱\u18p+6 YZΗfX Fۚπ!l2,~?)t!cyGa&屁y/U*0_F!YOh1qb+^-2 TQz=je 3kYajK|{骪ӊ;SKĠSHXT ">v"Qe+xX>kgrp"y^NU8q']Њ16ǡg _2.іMgqt"Xүc)ʤ»I?Rw]32:vPѼn;dz.wV رޝ ڼ!uk!=:T) o7 )M"64ȞH؉,z .L^R J@o]yΙ|0\6Gs'x tÿl\+)Rި`; qsw\P:4icp@dvX(z"}0/pu  |x-+'P< eBIcw`)-5p2mm7ʔ=@fI'e$S DI#fnjL}OE)EޑR]<Ȉ"qwSOR Y I,+ U㠇= GCQgmu LS2{ URJQ7mis sRUjf4,˄QC?RYV@eUUڈASE}uGW/T\;J,̀쮀2 Ĭ#8NJde-QUSR2Re}OY $ ˗{{=\!AMqs4m!Ix Nyİ .bB C ߈dk  C%=ѹgs`mR[wt~K/?2o%#3o?5BQOSntv,Q <,!8'JDx‡iVYihR J~Ս}gZI.@Y sP""pd]1OQ͋-E(ZRnz/[ m8] _e.sCKc(3Eӯ~n+ϛd<_w\C5 k5ii^> !D[n{ud>6ʥ8ްV=~ysePD#>nh/F^ψ:BmX5~/} JbS%#}2sj |b{ﱙ8$9L_/VT&e)me2P^P& 2.DF^̦ }tL C5x]+t\@cb5b7duI/`W/,+F1]&Vg0J,/#+EX}}~U3-`Y*} uE@;l7?851YH:dǵ=UL7GZ5UM, .kdGV3ChX.;GqEqkWT䧆 1LG!?Ai2ׄ4KX)b=LZǣv4{bY]@\X8_ 1|*B3b8 Ҁ V S( Ob&:i$B83%G-ds,xM=N^f涿SNB(a_5 H'}s@~|)t c\q",ZWIS^& dw˃ Q^b`L:H$G )Ԥ.&|r7S`i"MZSM^5;\^%5Ҙ}Sj~aP&<rb G|5%I8tLrD`{"V6i*7 Z'>I!<7:<r#eNW@n&>mo+g^ٵ#.KC[HGl8q#BHRx[$(2,Y)[>R[n@s&lE,@Y~&^M"uq[H^i y@|*ġkB#;M(>âiT#h9>%yDKӺV%tܚs̼}-^ ^'M\OAhPJjI$͑h)e*KCW 9w^G%.k 9_9p|л#eUk >T?k.#\;~6 FѬ;Ir|y14!^Z*PzgkhM\X8jpMG]*|FSBX7 GRZ!BHɶ@Ψ,׋~*Մ8n(a!ƨ '_MsKhs6 =GGʣG9} OpLG_Q=Y Xc,fC|ZExEأKXloW6^#3T{yM }\:bM׿NB+_1+"]w757AoY׾k_KMn#J)'Hw:|kVlO4} 8B`ʨ)-78'ҡ5!-}CxR5X z*Zmd >Dpn09KX9KL߭r`E| (̐*T3AYdPQ_mo-Iy:W/zzzTJjXks5Clr}⠅mJOi3zV<]r˕rr jD.+V|'⏳3v31k6B*x͠T1 nEE:YBؤ`N0L(}mݘQ]1YΎų9y]E*Ms.>B)dT(\ dCQ#UT1 >.Xò1Jq=RVf}foI34o?g=G}LA Tm|N9utBI9Qo=F?@'#]x.um,_L9M\Pi=bbf kK3l{Pgk=.Lz-0?"_>5dC`Ko: J.؟c WNܿEz]4>P[]_R@igBTN$o5/>6`H7[*S1OaM?3)CilP4W4 a ź x^I{0]A&PF<7͍7V;ˆgUtT}O0%aQEH1?++ث%pU]"0g\1z 1>=gSre]-9<+ __X΅7Clkk}*@+D6"m OPRo`ϛܫ˃/D5$[<4.Q c=ύVe TK>oʼn]ZK9a^~觥x=3Z@/] "x%*ֈG]f"!Z2d=9t$"̷-iF"$:EI %t0S7ho27~zgVS3 HF7zV#K ?7tQ KpX?$VrqLA n'J},PѾ1a?p~[K?5nmHx%Y]`ORqi7J4үzs@Xn6O>zC/ WwSZ FUZ ͱqAAc߀dkS(PI)#'۟<!!~7"Kk~o\x%$~ { %xL+"|Je,t庸]áXɟǠX!{I0A[kZ/|V; SHė@/>+us=z]&(pC* 삈o8E.5yǸO3:7>-Q} H'2V7-kt(@M*H<Mw ^ƩXUb }*?%;>c+ȉh_^BWw%5]eی, 3w?Vb uG^O)fv0בJN y5lMT;[~nfn|h6yV0 7o6e_9̬|!;zMW-F)FK !׾}gA\BJ!)tơgc)gRx[dȨ[E;P6TnmțG"e2R̭UFaig(+ӺJ u~G o昕eiq= 21!;=&ߘzPW(kJÎu11>kiOؤϦ4-Q:eQ$`[|*~%F!zq'10@um_zĩ7XEG]2K +&ĥ1 qH" Nw#lɨþ3]qUz51݇tXu%K'7Zڼ~ WiŸ8vrEpJayJ=DO/K4]|nPk ugl/XBoOu4(0'x1qAڋ G*6" )#o]B]*'u|'L*ďd}>vMN5uZ*>P͊RͦdipO/VU24cjiXڛ]&}fp>v@#Bp6$ sSTwhw~F3/_XAc~ZRȪCN8OSM&~ `JVK^Yvj*%geFlr8͢Л(_oꓬYe>2|@APkVHy >Mr4 2ץVbes`\A$Hgv/fT;autdGC^BBe7ȕԢ.|ۙܒn道4zd.S X7с& BN^#߅k!"j8 rw(5~y\)wb7*nw-Nbr倽`3# I+FJ pA3 zesu["=Ǡr  㸴[Ֆ6݂m*OҼ/rݖhܹޙ1ܮgDn=!6 K( 7B4vldNXQM3JbDI3I9QP+b=bA%~3)rl{; lRWU.ݴ87(bN"S(=YGFb?{+ 7S[X[a4&"cK,p3_^)钂gBx{(7`k /X8(GNKN3, `m2m4RtCQ$Z̾dtfZWya&t`ƒ}R`ܹYRbRȬJ/)O]Wiհ hs`C~غeqF(̀pD' ∰e4dӁ W` #s2z⥽#xoQemP}DHǀPckYYr wwd[k:>/+G"wyvƶ&K)W1g!v="K~듵ـL@[/o0']'&4$KQSǁ(/@<QKMSҨ)]_CjiA2$ZfEҁ4WF VQNs+dG@£{*GsI41UsÑMy7k 7?!G4jE%*Lv_3zw\7~:0$d8' 'E9~=pXԂmɠbvldFPDo]I>ϕq0JȐOf;7?s'g6ۂc8]6ڗ] *Cט_*ݝAC*Iz<4q+WOö13_X) Rt$hqo3aR3yTQ4>' rG% ɡ&yðKY 4ր=ϊE!7HE<8n>*vu8J@vu9͍n%gd6I9HR Ց2EXI>K\E/GyqtQ7[KUM֓]$G{-X1WТ@,+ibgn;JƳn~BY(:ZDVqdKdQ4#-re&E,k[) ':W:u"K?*9Q2 jW^*&P_re}8s±ݰk sMH7܈l'1(poٜy@u:JQ\wSE8 3%Q]twE_#P4NMtJ_@)85aL] .]l5]-A$7MQ}hcǽс P*_l$TҹL[$?saycڹ SM L)aeG&B Xn ;*Htv̮R1/qr&?o|aArxs-o)?{B2B9c`PBM@BZ؛.VAyqAk@fxp\.s%lU$riI^#֜co /Dho8s%Ks"Bt2,('Z,U.'{b"%.^nets|w:ePEukQh^7n+N3ׇܵnoB4rSLJn.#aJJBx|aw;YKE0y÷.*σ.oβȽ(f@>6rpYwUxAZȓ8Od+h/OB?HD$y5O!uхXbC-&K u&Q_?@ YsX3YLDb(E\7ps {?`\A"cbzyfIg`vP$+ Kb=a(y8lejHB@ui鱯mY㸌gN8=y|-d/~uBs,=$?$vaw06]X|:2I If8RP]/nD1'Cse0Vrq=Ӌ+AHx:C!u.Cf3bdׯ tp|W|}0.130&b]ZPǵeT\+ 7)Y;RV7uDUI}bzVYhRuӮze|CyU"8g8_ 57fǿ%e0 GDxyIβC|'_.OQapNVW,zweO(R v9VVD8Z\yO&g@]ېIզ8l/6?IIVL}?TRoI3ӧS‡V.C3c GqQ,ѕ3<0bm۪2uő#9 ""Lw4Ǟ 58:tΏ?5ECۏ6&zFo?lvJVܿkRo6Ku]ov0 m=#~E+N~VlqӯL7qќe|]l,w2rṯ!A[чڮS^: 3aL?6ׁL,Q1 %G |˜w\[{HE$EB f.Bi 8|+k~R)s!["dGh|I2|Άw1JU~$5+A:wU`ԜJl+Z:C 0MM])Ut&p= N_khC`񫃼8_2^VW\Mfۅ(Sp#P&| (è*`T=b͍ԕD7PN]@_sfܳ [\A}41JKA^8"*1.k'UP1^F9\}oYZQG%PGbrϥ֨\d;dʑXDTRnjW)j?)FY}DOFPr`/Gn p=Y L{q4ly:;Ztm2\+ {f׉$ ؉CElI:+Li&0å0ulj l/^~ZTLӠǸ q7It-V"]FTM\p)FK#e݆|2Fªڭ~ :Q-2?#aGX>ݡ X$]ErnB)*E֧nFզ螗AWI/Jk5KWC>e3ɤ>?m:#7Vnq[Fu$r 48ymפް. i:q52WFPyxCO,~?Vx<Μ'"I/nę;͋1h_XvԀJm]p mJgYB4!j-6q+B3Rm)y4I&1\0~Ă|怿9Uf)97Ei6y t4\m=m;˹\0f$k4Ecu#3qxjlЂ!<O4~a;7bP|xv2JIdDNIF; R]C7E!3&F ="vl%2}J7|)߇i5mt|Z |vfTw'cb d L2@KX\ ȋZN4ڰTK5jϤjJg%';!T!x~cW8yQ*G3kY̜1 ϚIèP͒ B|3Pٰ~L:W9esO^d7tr(#@G~,jc }}Νs1,X(/n.rʣE4 2!Y ЪlݲP-**{+&~IY@!^Aru};FDMfS =#^S$m.k;mtԐ::/2-C"VXIѭAYljG֮KL! +ؠSnYT`:Kn =FU>sghRa j}o+Ă rm_&4g[TOWp`Ym)OJuV".ryca¶oa/@Do5, iYx5[B3Gȏ{‰s*^OGjrB  WF ז[:dJ >,UDW*WrbgD̏s3Bo\JT+a,|wJ`)S|sGj(w0e981|٫ goBBdz:( |}܈+*k.vd'ĢYɨT*9 PHJTɮvt Eұ+6*0ca.iOF%)Hha,7b&Ƣ}`6ee^\VmKg~\>U_o8l̷P6g%)߮Սı"a& Ѐ"m YOT<ڒDjJB&3؃1nS:lV?$*a~0>V)f7,x6緰zuA5FH.vѧ^k3(br?cu0v7X9:7+Hw%f)jRšCR3@%%&iRѲN7ob]w#"V9G뙳6dmwIOot{}jm2QZKL̀xHa<z ]Niq mFczdᢔY vװְ"tyljDJ7h :hI2üp }e?3 BTz\˞M?ɒ/z-[AS0T?__cTS.3GSs1~Le1;͗Ouv҇jjc+Zpm"hO6VǨW/R!1r&vX'pQXM5[kʌP\eπ;7!WU'6c!lKd5'oWG[hf6möT%$ﶹ8E0_<^[j- {ply;F8O8l6U~~V5& ;̑A7 j8YIaIGv4!q|@#MK'5G FQ[< :r2|g9ڤ ]"SgLl-V ܎!xdu+zK U&!ຣtMU~>Uk|AKh2"zz3]ZQjXzIѸC,PbJZf3EhuiV= _Se|ۓ=>]\;P8jbN{Xٿ_Hq;*tUBLML)v!RHe!w+[TLMذigF>}⡟kL:'[D3]"_u@sej2Tۙ{Q*cQԂi_<%A yZ' !ߘGfĔ?P^.P>=^%ZqІv+lx;NSd _ZOE 4WPPx$wayж`u)0cRRhR潩,gKKWiτ:YN֩]K>p T}%EOK͢em&Y!c"%aIW0^tm*K}z#iO.EW܉Y0ģL%ĘpmbAɺm ? V9s+e4V|u]C7Y[ձ=|pyQr/>Å3h8T伔^7 6="220޵j/ZLmHţa7S46" w:Cꋬeh< ڶ}u;򂼺(fghs l&G"5;?Ĵ;vb"=sp@? dD *ֹwLC lʶV!Yn-f܎KyB B&$0 }gƷՌIAZ+;ժoʇD@u ѫs7\-;0P/UTa4%Eq *QNn銑s&.Qt֒eILp9[SHA4F;+:kH΅-4Y4I卋Wox[a7u:_gsS+~2Joҍ>^@#=(VR]\ը[(}ֶ@U  OAk@;Bl~q7\ZBjDeGŲ!s9 '74-Q=fYI};"<5OSU*|@|k2%Y~J9| *^JN7$ႽA\f6Q-ԭ'6gYcay eZD€~cHA s} "#&wG!"Di0kɲ$)s[ Cm@U(Mv<. -z~(td;R;\yvobLx"#AFCVx_ :6`LP4UB]5n1F˜r'T~I.' IUFvtE֛GH6 5^cZ&oԡ=<5ޅ=74hGi4΋`N7/hMςu}=fIsM@뀻6pV!!" u䡜bȬFM/rD3/^qqW ]$B|%Q_rOqa7X7( Erswg<7-|q;[TBH1 X% &Cͩ''!v+n v>8S< t 0NCrw"gGFۃπW5m~w ]-'kJܡx 윮K٥t/Il`!! m^'Wo=+,\lz_Q >R:ni' [S˭\1\96|!:yar1'd~eF 'Y. q 3VڱW0Vr$e4|e.X:?J9WU 6&9ǤR5x#;fنuBbK0@sqHz);1%9 &*!ߜdڴc=4-+mIxY΍o2F֯O :$pk Z^ E{z='<.y?21TIrdwFaY2S\sR`%D$}`zO?︠5]vtIF<Ѱ)\w9W|zj g`wk(bLGX+g;I1N`𼼯|H;`;1Q2EsCɟ>&˿{)U6TWZ`|wQ?zh,ؼqؠ[ /;z;[kN\d\Zi2]%Q 0 mFL0EIɣk= HF (ɜ$p7۟p*!;,]s*G Nފ8ճUm<>L(A?aKDWmQ`Ń.AM.劂mK"'#cґ¯#SrX=JNΜۉZu˲^d͘D9Ols8FrLFcE0:$uWR QحiG_VQ&Sܼs)2d%~~䌭X+3x3 5@mxCa"V*0Ҳٽ6zI<d!C7߲):9ᜊfeم3ԛq<WGu qM AZf'>3%V%"Q$X< !#D>&eqho%xg7p_̴cqLLg1 ɶK%d36Ut?ke4cnLJw8vŀ2*N :9jZֹ{N .fd?ZX {Ζ 9*B={5Q<vJs8b[y*ؓX,c 簇az"cl5/#7?[a#sQOT&%.UM.QpMiT@vVhl L*\?+vN͵ؚˬQDJw2$-;7/ 3 !g5魱rpvF&_B=BZ̥oM)h]T=MNPHʩHq91E?|kO.A5>Q|@Ca(ݚ 4>0qg2&蝉x5U#JtzU<9 $ZFѦ.AaFAw|ej`;Pr)#=dD40 jcgъQg쾨X5C`=ݷt*ieX|c$CJuױBcД'\`0Ynx&U#1z_=?(j D4ʡ,_P#ȃ4 D<~xː>pj`:-\93/|3&&tn bc}1]AOѧͶ2q@e_#=oL͕wD Rm  6Pfh|t.{OY}nW5(JWzYBI `v[0*8y+V}יID9kTz'p0b[5jDD/&](Q,r,hPƒe+lwF5$b\wRkt2i&!vƂ,0^q{l>m@ s'G,Tq/Nj_AfpA."ރ|pۋ绛$/<>i'E,}I0uV?RJ`dZ3MW T؄zx^)?/'aUf ]~]̜zoj+C ԔZ z7\kژ3w/%׆L9R"с \|nF( !(0%;TB?͟xCG }5h E2xȌ[f9e H, lV1tIjH`F$4e~6#SVsq#Wh.92NSMj2VY$V;и1WsƘ{ڋNI}vg%Tcfy47V۵d+r:9~U-ˊ*J:QO^{:|*dNs)KXwEPvU7?@>ޑRT-b꩹xSU"gb[*ѼJ1]՞;$-Ģ4/ Tu˺rP@&@J(5;+'xe?$q.,o O4汮&jX$1&.RgjS ݁R4Jh}}t?˟ 6nB^\Pĉ\_{-ǀZu;Ẅ́ϫCs/ #)/ă̈́l `Ǿ,_uԙ(bxY+inQ~s_ER!D\1A{IFɨsD*gB^-T؆hDRx;zm{UR7(Kh-̧lJ07ۆUc;Ƚ0 Rŀ=|vŷ-^ f^-,4Wv}|0@]H(_짙ys{Hef*6tbH8~HСŀv2dxI^NW@a&s{lmNܒYw<-)glk8:›͚E` **HӀ.͊BpQ~NPO47wWukc5S!1s{npу6cV_5Ð>X@kv#ױ^z@"|}y7A56DrXе R]s짱 3hj\ 932ȴʟ.Azsp/=n$0`ֈ˭抧*nfĥx{ h7|ѷ}wq/Iܸc/1#8Um:$zB|H'gE;*)]M'.x0 #K@t_w$YPZL.-!RX]'~tݹލ5P-ExfrxpH;Q3xii\'N_9;xv2e-YD63gPuVJQ@;&*Ge~@ /X?m[Ӱajiq~G/M*>ӐIh#UGZ[FT~@F/>=9]1*Tj6D< oلo'B?ib5 #&Z='7hiI>[ͼt cx) "jm}|bshϦ ܪ-g+Nzy]!ٝ | 5(fy.rh'.a y"i_ʗ\JC9;0&yqYûC\}iL~lʠ;%% YIXKM@]cF>!JT,Z u/ O,(|躂A#fH8J^ c3[eBP 8}֩۰\:c2o*lBSlXY*>_nOiw0:OT~?cOG"~QYei|PРHFjj=gkyNu(Ӌ Y3) iY+mlsV=X3ͣ>F][qY_8 YaZM1^"qxZ h: #Qv/z \W_Hqaϳ)?f:`}BFneVF33ib:c*/ uRsDpzAZDpjN1RQ$]t@Q/Ğk$|v`Yl yHôTۑ>s9 vt_$3H{0s8XTv19z q qRNR#6꫰[}fXc%b-Fݼ*8'_DSZdSD2qTjrzYeyCCLJ$wގzVl(T}?[J0D $(/tV,Y!ΰz|c?}1Aȅ2޶MpK*v~&uJӶ= @wYy4~x# 6agcC`L%G tk&JlaeL2BKֳBK2bɰNt2S7tqg8]eP1nXv.tnx)K̮F뽟a-Z djAE޿ZԡžOюYW}^G~Ɠzj=Ȫ+*" 'F3EC =MO}R}.d67[U]Jœ6&q^PlV\< E'G{\q{t:r2CRD@3aئ=tBhdSȃߚ2Nd|Xh.]mPLװ,bUi=jb δN!lcVas!-Gm\ =T~Zݛ#Ab 螟kj8!oQ>Hw㱱oʳSE4*"ʰI(É#(p#V{3Q8Y)eYw{ C]ZTQX urXk򀾫ƞ 0/6}΂6\Eh{ nOL'l]!>YJB[M%` Qs6ٓ}vjSf_(To\kG" c  >r_LXtnV[_TTpߌ8n xFs5݇ALaX8@5s.<6MQاOR4vP iȭb$o"͸r WwZo#0eQ ]|b0|$T -,2JuJL:CP vFWZ!"7c8]N_8Οt!r+`?"vI92 6O x/uYExdnX' ֢i+6YuH!YT?=QFp= Y= .^5ȟ>}Q*Ppc7G}MuƓIY$Yb\>i$&so96ޜs4D]ot3e >T< #q]LkPfCl[Rw񅚈LgSEdZ_0@ע܉vAP " Gs~ߌRNړ2QHW?y{{X[@뉕tzjꦞ~0U d@2(FY=+B VԚC99Yt8$mgJl90۪[M3U꾀_kMmqwfXy5H4;fa{2I F| YjЅ?LW 0q=jcF1jNbxZ2PGɉ:{Ğaq5$ r=Ja%$lB `T,'/w`lÙ^żBW)(4MzGխs2xznxἶ;{3\xsL+;_lUEv,yI4oʂڝSleTD(_7n! 斸&]?W l!!{ݧի*Ht U>/Iu㻂f˃ǀW"I%@aͭa2__4?{55V^m/p<+P}9T=ԙk ]x"o-ɊY*L -dX'"6ElJf"P@jca:gԨL6n&taE/@Y uؒeޯL3FF؏ A:C.u YpPQXVŹ0+]:BAI>˩&N$@Yβ㧏·nҚ" ރ 9p 2.%P*P+?{:Ԧ,}q)WE5|g0AU:DIĀA2lg n&09S^H#[: =,ovv9\|npRiKoxHeE|n:Sj]QʚB yPksдId.DᮑxIZ`!?z_"nk{7H( -E8<(E4KQLe^b #wJA LĬT.D6ߘֿg'!|C̐% e=D\:vTAԎKjMTR{;!@gp~bXӄ gQHKl>52F~ )H4} ujA)# E yEz1N tMekp6ls(6B_8 eI :r0}+`SՒgBe I@hZ"@?MKUvf%AwF ٍ3-#7P*174Ώ>5XYհh#g U^CKLFu7ŨIJv4}F9U[)wAGH Aj=êѴ /lڠY2ƴO}fNfN{MeGgFw3N2DWeNbb3 :ȏ^_:^m=U=avm7֯{=\zSEh~PO g1slGy8z [*y8TGl]u.ο%_*U=ǥ8ѳBe$I]@LCW܈<[u'8ISr*Ϙ~%B fb}Z3P>s.};bd&&A<¥G8)cM#z_|}?g)m"ǖcg>#jA#ٷHS?AP5ϊY7YHŲ\n)ŽC#=OϢ!!et{>g\-ҭJ z",=IpGF@р:@(0iPˠf`^R"ˑx^`=ոh_lC5]>/5 b;zjKI2dxkY>-Ihm:d҆Vf|GGzRiCNi .P |5X4D/o4+>U˩W{, F⒌Hͷ*B *s%.U"kDvxt)oR uC`ŋԡp?]hX=Fp·a;V'IDӞTC{4ۓ6uEhձQd[34 U|'$Ȕ٪7GB/(Gy:AV%٭i2GkKMǰ}}ZD0;hQmI0ץ\sx+>sN9 >ngP/%3̩)p-I(N5Kճ" 4>_o#3؆20%5M& uz,Βet5*oA:ZoY[0Np!r[B UinT6k&K03@3Z l*vq{zG5+伃 ~˫8PH3`@(t~ˍ4]h샮bM(UkX=^i;RS\s>ϊg0ڍƘ 71WzFU:|nJ6\ PL9wGӄ1zE$Q9վtwiAKoG78?;[?eڈ,JF!܈>Fr|g]P2<[4- Խ1n,xr?a̰w?Ek';J&Spt\`~]sLH*vow940%9Xkq?[hDZl 2ٺVZŠWh۲Ʈ:|Wج-^.θ}Oc X$L$d6kbouGEaG)2.5 Br5@gnq&.;1r| {~/B\vߦV0\9X Ŋ0 Yױ@3脷>Cku)rAf'g7˘*o:,ܿ/ [~E`q`Ct̸p=P覞1$K1-0UAp4XLeŀdeBwd0 gA%zꪜ:WB'DXS8vƁ1 X &.b \C,VkrwfgzuFGzfQP'\n`za.!#thD 5Bօ'L}8p8<ΎVƴX-m7tKs^hV´> :dӧ`8Y۔[w<:wdm4y!T=wbr1?Π~mqn3=܍d__r gY _3go%YN~4GCo)kB٩w֧M0>ZX`5+/C[>Tgp~yqHV4"pyck!?*/4DQf´A[ f"OS;P{tEFl8~ēbăO4A't7e_L900・΁WO%~AEO8XDor(>S1W9>YFSJ!Q {[]cE΃nWOy`ךiOS][hZwXfpE&1 ]ʚY `2G/x!6fX,$5MSilw|=2w)X=JwzȡJ|2O""3Mgp㊄1DjW&%?,/+%zڭ/ȸ{yv-vCQ vЯO WGiv/4zT׉n5^Cbh= l(2,Ga/wbM @!ƻi ,l!xhUAuSǏf*I\ L6|K4Kak#XrԏiN!gMM|Q,Q:i᣼?}E+XnD+o'Bn٨^o";_'HJ3MMWW;Rv{,~ԏ>xM?zJ3a-{,48yӍ㩂s̋F+ߩ:Є9oyNZjHȭQv,O3$>f@6"Yҫ,M&LxE r]Ңz)Q2k?IFLXW2auVɁzȿ boЂ|k큮Ŕ>@=Qz(kf*=ԝX8HNIU]C %sDO[aQuש|0gheHNBgl&@!y}Pҷ@d[zhaJl\$U#FLaAϝ0N}1 @rI Pj+dK94I oNoTo%p`71]dJf0a6·.1#WaA5T"F;BIU/yƹDd'% S:eRr9ViC ?A?Կ96 mim$\x-8li<5~1K&.պwxU=2=Al#nJumzBvXwgkq[<@ YhO@/c4GI]o>F]8Lqvή/ gG6W_`zqS6F fxR 96><=vSm:6Gl$9&wyl&#+ WTUpEٮ`kc Z~U\hW=CA \Wͪ'Bjb7,V&7% z$Kmߔ}'*qVˑ}_0I ?*g)m:_bV(.`1n,>@f ň\ ٙ@#vW.+q< 57zRO12B[3+ey9j=ulRêi=Ft,Q2w| anW^[ 0ylO< '+m3w13$8PZ-~'([+*@!:܃Z.vA!u*(,_՗{Y3!+)5DkcX%H}HۦL6.NouV;=+єt#XC}43ПYB JTb_v -B6 ݯ>ZG+!D8_c)R~ss?j*yyxziE6&)lu;Ebq xQ@俑?f:0uMIA<@oyEr@Uzo~ȟv ,Y%^dJU1eE}JZw!p5ѭ^:iʛқI#?-hQ!QDm}&?/Dm!)gC/ٞu,4⛙2C;jl|'hMW%$y臆^ VWB^. X2e:0|JZc5//Jh~1!w(K@SS2A5.~tIZd#Ku֢i{q$Α{m{WJo9; ؖڨHE<_W/Ή0WgbSfR8SZg?[zVnz0Ӥצ9f\**Y X x*P4sxe'É>=,G|7\a+ĺ9=PޖfK7t`N<רЃ15_13nȷ/'hg,8#PN5LY}ɱ".e_ cc?FzqZLHJsrZd:^m_1ݨyZ֠'](aׯ߱s^0I L{̖FXF=4B,p/[ ;c WY-DW#GǕ 3w҆V]L7&XTI9=!/pu?D2uǞs(k(M!IlvIV8xԨJ9Ͽ%F&=i ;]#߫am>Ԧb>S܋[zUcr,Y.bJl޸B,XKG NxD'2G!>4]k];bpnr;|{1LB L7wa "  _V:Ph\kµ&3$GQZ# i}Ȫz곔Y<ˁXjTvt_Pļc4R7mGYRyV*BS[?ULs4s9^5qeB[v5KW﹖FȂn4;pgSZ+VẸoTGC a'xy1dϧ/˵F]tW-.!1⬆8Vquk_BNdoV34E^= "6""_9\} SCO/DTpz s G9ڥ7tgBDd^T '8&OY3o\Q-Hnpu DdLfphŵD-J8 0L𙋟K07(%Pؤ7Yf` rVNW h',׃8`U=# ?m;(8{;". *&/کc=  I +ezC.c K^x&Q܋3șΥQ~䡍 ,Bx0e՞Ǭq޺ !AgLpLO#٢7jO(2 ,%~.Er氝7Ѫ9. ' D 4urHlsF~QS+mZvq:ko:z CHFv{LM- T?F1h+#6^h'#jh3˚ ]KN>?q{p,ƙDDy `lӯ{زFiI*"V!!AK &Lw=yAɚ2#ޱ"ktc!ӷRF } xҌr%7Omfz7ĴCk|Li<"S@( 0ZW/Ý]ۍUD:ԽhςkWnSq&Zϣ,k6+NgDI::s)uQ;_/ tihO;,!L+Pޕwr{ZE V-t)mʤ~t.w2Y_-ѽ1?]mڻ'}J9Ax;S%q^e1 ҄'~9]_ VRyB!ŋBV M3[,F .QC0.v<<<:؍G ?(0,^fLxy$Hܩ`27I樣.d8,3cjK;a|J)LD;2^Br`rmO-3TL90QxE3TYOHAj&$-_0UOxcCktuI@^%NCN X4v2NJ:Q :Y{ڲY|d Ȇy[[lKM2lB :ZEt&SΈ5(rw"WN ^pR4v APr߀?mIQg0p"vq0կKմnf]܊J)qσ3RmTgr%@o+|ӼVA5F-Em tx|>v oog~?gvuU1^sPIۃFIE,U*,>'>+ݯ5kE QQsnILHlYĝWNl1đ?[=q!бtU/]1ܒ߷  2rѸMv95= k7neZ9̂`ؘ|@ *^`idj- n,? yёH X֪ I{gP_-A7/Ii_c0ꯘ^ up[(&:4 vU c^U ACֺN#= QӢ gsgLCkZؓ=qB HTwaeHw g䆌*cF3EVg/aAYi{ U42ƃO&yrB1mFµ<x3{;=谞M(;W:%vRCL`S m%[R|Yw5'p+';ʿtso}By&6]1%w1ݰ Ax+LCoyْ+jS$9k=L. jen8E E [M *K*ׇl`7,x(ݮwbGsfh"^Ōt4qHYm㦸y L}crNOd7h{5iJzfpERxXX}$nm!7NbV([,npۇ\Ir7А?)d?p*n ԴX}Hn\QF4-%6 b0ظ@"q~8(el3,<ԗLj{%T<yKD`A)4S' Ԟc5+"M!0 )JOF+@b7–7=gV OhԬ7=x4 Ou>g_ؤz ?„9*M監$Ri+]Dj%yvA8U뤤XARW&HyA!ua~m$ CAgÝ ?pJx4 R!Y3 -JX*BHڎ"\~ \2"ura$Ɍ(G:\s44ÿV'Hn#yPѫ]#N)HUtphϽէ3{e܏h%ş >es;h2P?e2`@ "1H .BJri[2{cVjƨo0r~%(C?=Q^T {0c:' @<̤ӖjzkKXk&b)<(z7M^ް0i|&HA5ִAq.i $T+Z6y vJuD6v_j[;Fd}ۃ_eojvheUW:U!ӂbYAJtोODcm .;GUUfp)r s!|_#*t P|8YG.s /J p̀xCPMZ#Y@+68DÐRCQF@}ע0kH mB,jZQ75|WIs|Һʻ96kj4ڟ) .*]RO7ӈBL wV"j@iНfiS 2ۊ"zI$]1Ox ݲEtŠ¶^JY-#(Vw7!FAe{hacJ1"Wv?ˢ[de9VG*EVeMJgi_'ʫv&W.SB}[`C02#}9ҬFOIaDL|ɼc[OT WBx y Ws y ۡJB?K^NaKE).H je.2$$ -}p1ʀ]/ґt ԹU\aMA%O񼦀O,`^BIAMA\#8>.c>B(^o.}6w>R=SmgR$+*goԹJqMNؽ :lH,{s<1?>gZY(m6?c\!`KH]PKmdOrv,ئ~iӖ[.0I#yhښoR8k)j;AW:d^%c\$6vê&?̘]+%FWyȞD`ߧHMÞMܤL2d$T Bc@hIh`w38=ƍLG̞Z?P2PJmM99oLBp*&?auՃW=.1[1b~NUKy-ꂉJ1؋)RǓ |!EGLxYg9Ʃ;D-`^[yvJS%k|Ϭj8c 3#m m GbDŽRYs: ?s#0OGR&VX}ޠ-J4 */uZ Bg[`ads_/FV)]\s0?af,]'a᥹H4ܶƼ.Xg ~]77"p]/;J^POzaGGq8K+pE(-NfFɎGdܚlAbzY9߮5H o1!Xĩ?z @Us]!h;tu_UFF:K./t§\~)v~XhC\ Wx+ 6A2)<[#~LST@) }#Prb!NbMB%X0NdGUJo$'g߶y>֕⚾$(}*BB'>ȴvU&mtF" OVn[Q]Cja+K~e ܾ^aTt'F)4vj]D^ LeѢ4}!5h"NpC)T(8ag d{*gEr$8N+6GTx;QX65;Ѝ,O衄JwIi SZ,LxRlROu0;610>kAꮝ?8r| P:7i?˴D];(cnSoсS 7-1pD sӝ+ n|8[D~k  EdA]ڼh,0/fCmՓD&)eq-x|"NmioB<1E:eP7Q%snQwHc==@1R %o_`ԫ(q8I7"ǜi'5 9O=T̀ !~x: |1e)ي* Ⱦ7لN`"[A4*0v9I^۾3k|xl*.;znoJ+T&3`RYUfZ@aZ& Pp~h7!C*i$:A4!W^q{rrt>֗r5tAȜÎ"yY_ձٟLVgdeQE}}鞃oױ$үy0nHb }.sHrtIr/R)07ۤ}x+R"nbʖpmDp"% vT[!g'2צ~[TTLNχҝ|ҳkE^Q\h+x'X4 D&L<Ӑ;$a@MF !dBںƁ ;Ep7]nԋ9?w_EHLPbrRa/}Ұr4as*87$νe_jsRפ/K~'}8}ϐo m%7k %|,$iE>g: s> x[= 32wn8)BgC UCGW\g>)U &eJH<THqҍm"Q77Wׇbi EElF9Bkd>XA`ϧ3}P5\o' #NR: @2*7 '><4j<]8-~N 0!rivopiZiȽNLs}*utN*hSz= FB e9P,n$J|<3fWG1XyP[:3d,zD[9N/s8)S&YZ*PEe(8!Ρk ǟ̈́]Fg_2,꿼 `$E2B YUSASj" GrTU0Eq6t> 5 1M$1bp4p0klHA$mNe!,9FȎYd\K r|,N~KMV_`(0=|&VGOOab2.zɞ)B)H<5LOGIYl;X/kr|c'ڠg<F1qeQy #2HY FNiCDH*v9R^_DV?k\kr[f 'NVJ&ﯶP0&_(_.LYYc!:?xF:Gӛ=`fFS1|7=:b}ҴlGi&UçM-2Vഎn&;_zD廣Vh]poBQj gP/HE#(mF;2z"}}wLw¿cܒ,.&X!Q&~HC`̹X<zĽw#NX@F=(.Q^k%Y-[B)xn0-vXhFY;Qq =U"bwn}fӑϟ/ȅsrIH}8m+ 6=z0H1 j vͼ|=K0-W/.ۘ\(w71Ek㨣e7Y_J=/]I(re_OGv9|n>m꒻Iuq|&uxaɛݥgm'$y + Z?ȂZܜl+,Y{XN(xSaY$ncG?E,caA6x)otZ*Zʧ4 ; 1w5۬(F厙C.XSs|_쉂aB@nS7GٝOzJqFo x$;xkx5Ra&zeA\oSeY/@MP>|A2B4shAN?)Z !n[=銚a햩 j ISRQٖ:;p3Zbяyf$˞SRmBͩ^>)W|pJ83 O[$=2嚼ҀsBpH%k'뺹uL$N|J|(+Z{{WGfv $ RS:X]_U<\<$ue1$ ]H? IEm P!ӆw ȡd٬IIY hn,J;(c?ʇiByʇAX\hJzW~nJ&fʴTF*BGMJpKu6hqQ ݈@Qtʅ̒{(K04;jYۀxy}#-͠BϞp,~r\1*V!M,8JDڰ;\KI|yk<'EZP|'s7,aj]H=DQC`yMB:_$_5>֪,ٲ?^NRōOqND6_FjJ 'W z@IQ}teDVpDp@ѭ o:H<$8lcXӺ;T# X<;1=CaVa&IZq? pPL'E^oHA '7p@Z {s>U&gƭRr05"H $sRzW2p1-:<{z|D{vIEW7[& qC]m|]_b"YߥFr3}[[XG6CÑ(#tslu_@"_3CWBV-dj0?98q(H*}1cLG Z:4BW荭zG_btR&v\'!pD2o-^/(K@,tKZAleMͯDʖ({kaYW[Tx U#{m|N+ڗ'~b4o*iIj*XS'W }L2m #[+n̂ǦtQ;T5 kDk|I[^jƎ1TO5xEZI1Eƣ-qbF|iKn9Sx2r+pfJƐnJ؎&\rK֪k͇]'M\Qy6B_g!` pJ)u=,v}?ռ:YNfΔT)3}('Krs2d jhXcIig?`L`Opݺ6*5XVzJ<@1ccrxaAن(6U#C\ZmURhaUmԺsefН]t}TΛz7WWKKH(N yye1\ tŝs'x=1f~?C$RSl\SlNP1S|S#4AshQ\)(Rpi8SpRz-$KJVݸh@*_&;ֶ`о-;;vF^.zqqH+l  ҟghi+x;lf,|d8iE!ľq]4Lʴ>ɸ-J1+ͯ qXeGm1+1P)R;|N4NRқ}ڂP{x_yr2;6tMڱŒ?t?/sY]&$isw෤B2I8Q%4Ix}/)FYFUnj\R`Co ܓyې2Dĭ6c3\O ͧS׻#geWyCG̓z2r{ RRh {UNlRFL0ߋuγgͦ~B챠LrEkJW jz;VosmQZ-3"eHn:8Yf3x0'^rsCp̬*HH kTXICJAklI*I|O20RP(𧞮`k~ I<=wIKHqlJQZI>e4F~9\JaKE9k{^E7=A/S>"!tP/8u3k%OcŰljE)01}FehE@D];БC_gsŕziUH"lGt1wS/ѣ ,p6{#+X8&`~|44ѺbgҏQ-ezy5.Pr=M̼tE`eЫx|)UhL꾅4mۯT̒uZ94`C`QZ.lF:sњQnσ>F]OLG֔c֤E/5wy'[۳2_VTv yOYkD &O.yb`Jb4]5td3$*ee8 ,G8^gXHm)UJ /ПX _i+|="p֦k0nXanΡހ–sp?}N~i?O9/a?.ve0Y6l?tֈ,.cs3}p2-R-#$yOUm%ĿRx zP7E&0-!K>p8 D>\Ms-ZJLr:=dVyٚn*:ڹ;;, 2HEx XWKc3|͎qR3nBQTFp;3)%Iq#,Je^]q\eRWoklaIW0C., ]8@.'*(uföVLI,n73ٝb]A.>5. ϲَ.±d_E6+ m1И`-j:2pLL]"JR-'!P#Bٽp>5 M-+f'Zvm|8< D#T3h"Em'?iCRZ&7BleBdvIaXqI{R.ށ&q#^S%х 8wGxWyr,Vߗ˛S# 3+‹q8U@6q朽]ktc8W&l/)U2HLDAk E[M1vMj!ɧuw-!Mo$-ȀnwՌٟ *Ϙg,ѬVKg&Ei;D v)zG8~O *s vUJٸgA}jX KFT\r$p:̛ND(|ͶNS 8N&ʓ`nQC@#VؙoCKG&kk͚jxsHhO<`:.wlk?'Tr^!ȣ|h٘N{ 'EF֕O*EАi589QE,vYHD.5.7]5J`nnoS1b$ʪ#*'c\q- '֍񑮴zGB-;+N/e v+jQ "Ri~?jأ>X2ю+? ^M K%l//}o 0"Nh=f|>u7tsUѣ! >6?PjdRe"2!/& iTףitf FR-'ZIɵyn۟p>y.&3fn|W*+KC!kE|5#d FSωmpFj$LX},g.,nƿR*2޾5gէٯ!&{Xbs a=P@ dt*LR56ݢ|!ݫ[O߼ 3H$s'8GMOJev|zfR츕q{3Щ(̍|hCoͩ]kGW]kubR`&ϑ`:0qt}ey"r /Rqqd @xUΐ.X;e^x\mNSalԵD kRg KQ\nPݚ|:nfK.1 m-۽AX;!h+Cn8j?YԨ6eD8Y7^H #C8xQ?K &c5a*Lc=V"e:י>.&& g*aÉ=.P)4k,ݾnR⳨[!A7:P 'wL-}qIʝa$S ~T6Ջ:꽹b|!n]z&Ϫ PA5jߙ"04ITD _|SK@.To5j)SXGfRJ5r~Aҫ,f!Z_FXYhϾ CVI@q H¯wIzcomlݓueӌ%J, .sJc 1nR"<&<]*$)Ơ&y?;͢qhSq 6am {\|"8j-<+[\8E[)8ɀfCBeR ~{}0mE2T#ys%xxcLs2Ꚗ oXFCۚTHj9&#cCjo: {4ZHݜN-Bڦ] Cr帄}I8{z 1,/΁k/pڱjcDON#%{*3|$nY^P*˻+'u,)M[*3Ц6k $N%aic!3vWEy螬G1ϓV=Nrib"=ut4;yw-#ɓ+M|!GC,yLؘx 5ƌt +6Qcb na S/;*EH7Lo_bհ}6bmDvFcΪp@\(r3:Fv;a|Bw[ԳTkw~Ϭ[ 2` ݮ1X a C&[z}lz YQo-eGt Rў (yS5 تFjӃ%)R%t $KWi+z 0B`0Wͻ, d~Jya9al:C3vk*{z(]nuܴ g +|{XCK h=+ɗ+up̮vPB2zKMεUrFT]ӆ3#j:m>cQr 'a]P˹iAcZU9rzcPӄ!ܳ, :IZq~r6Fw",=ƢPX5#'6@/ACVxeԾk߾NDFPf(Mv\GCX_䓺J=45q)#-߼G7H$WDb:fc";x.K0f.]c_(/&gSTe(ΣɯET,0DMj)jOnahOm" bdԳ-&GXx ~d5Y9l f?~a{:Pf,/mem"kdN(nuEZtJ)0SY %}LE+]YI/[gmm@XeDZ ޾InFox܂\Q9̀-8rm@/n:SY}lWK47ϜKsL`)v);oJt& /x4_W3BtZ|GHt(wRK<&Ȇ]'@AD&Xtecސ f%mQ ۞Y8#S|P(aoޜtUXDLPc3l !FN(_J'BY%cFBُ|?RnhUtx P o\q -ά3&·#':FNr*AnG 7f))4ٕ7&)yNit4juWcRn1z/K" BN6?d.<]2"6z7Bhifm. ֪Zˎ*GLB7"ix!:&þҳ3yd<&Is2?6gnY-P[TдTWgȏ ,z~T?j> @lȣ\n RJ:BkT|>,4qC">_zT~DEpְ##vC b tSm$]@O k~ 1d Eadvqkћ $n坫9bmS4?B.m&NqGH)w83j>/C#wd gBȆVBeԌgwtc;EP }jqN {$JuՉ뱳NWףfkP"pFe̱>5g?Gkؒ.q!{ϒ}"9t>*}X/ϢnYV_8TEeՄU\HD(8{6_,S&5IsЈfkpQBK:'+P`~{LH7%VGmΫ\FsRqRg"w.n bj7C-ڔ'`R{8l$AFKsswY"rT1 Vs`8sݽ;NBXԶ:,bS,pSJb셺ŷqF06+L:TuuYYSwž3 ׂwIyr@GUyִ<8>IDp]:S[6nZ(8^lUX SVa\pgGӢd9#mOFhl+Ѐ =$.Q5Fiu&m3f*{l[QVEb-c#@q\ (N.k ]G.Ifx Vm4҆ǧSx$MV""U^]<9}T1ojv'haunc֥tz$>W=8 g osUReZ(R0~3HL 7(vLAlZ{ɆuLӲ4@VXġ.JPx3ԃ:-yßQEhxE[?Dg&̈vf4!&~HŒХDD`6EOYM7ڗ]+UT҈@BXB_<*WY%pmD'@QV76bҫ8 sac ]O+&C{rZNq[| gt/2 BH0YGW6g_VJﻔ U`f9S~b1M. pIc?;yS# jρL?tq$XI GMUu5cT@'W^w&bSb摩Jv_V1Be,p$Ĝjkkbše]ϬDuaXx܅ٍfѹ(f NG.*h5<+@eKߊ@y_qzw2u.KeKՙ hتCE4g*ŕ9RK"jr@c+9q=iyB>r71+MyOFA 9Zq3m"²͗~?}o&+GHl]*,:*oP]O'|(%7$+튑4Z2U5Ër$:&вuƎ"7!h+=bUzŪ8yN_hEuz5az?d[Eg8}j:> jF{!뵆}Wy 4Y)IHt O g &.%E腯v+ A 9WrkǑhw;͆A1'Y/%K5vvbO4ȳ%3ϗ.9BϏX+#[iTB[$ ; 6[(uՠB;i[c)sgzx.4l]>KU5ixOeށYdJim@_%q@" (^> s)0I;#Rw 'm`T"7_!^y.r!c[j'A,S|˛R/|.fꔍ Z1ԓk=ߖ%odV!KO`4rwڞ nJ@WҎ. 82`xAhST[馒at:eHw^ |,uH&@]TćqoH$=HCX {;%4BE K;JvN71ow.c&]ZO^_Н3} `FWb!8q 0.%+ a(^vfHF0vL~z5ZeSGW,^BpHskZ8"kş>ZЙquRCC;.u|3yflj@lWqeD,MN<}sƂM)sP?JԚS]q)jq_vynF!?L]ğ|齕/P\Jbj RTwкW =:+*? NWG\ U:; ;lE~+ܤ!b*vAa1CѪ]kopUgoCnQϘ H~| *lL?ʎ(RWwys*fjB3~MȭR m7v4s5QrHr\ FTOIz tJǓ?գe'҉&n|d1o(gɭN'E8?iN>w'jL &I $?Zإ6@#~C21BZ)S6OƖ1%WPl(PA *7ķ?(H@Xs5" ܖz ϒԌ|6>u" f;`к*l]/=ssU-{(jLegt$OpO^j1Jblqq ?ʶÇB4_tRGDÔ~4iP_ \.-J#>Ӈ|JFYٕi(iL[2$+ MlF)zwv׬*1^[:VE!ߜqS55/`7i䑗śt[`gץԻ$u#B6`;3cO'*|H)C*8_GcKͨ@dN(β'^ڞKQOl"5Yi%J"xYx M x&@9?2i7yJOyL-۔=ͧI$2+cj*-kĒH5PCs cU,#KaJru]7$mry//Q{JWr.}Gc<bˎ2`ňEHly)+gRz+ſ8]NHr4x/GBu;6-@ )@M˦vQMCY$2tk :(Bnr,ou N?ŋfm'}@脡J4v@s%KMq`s0eF9>@#"56Qm"`Ne9\O 'O5ƨȭ 0bZ:z?~b(r9/EF~: $FQثbP^XaDlČ&|Y(am(h>4i)bRi(]6vNj3 2bO@bf-o/ھH` GtMC5SAٖدoQ,k\՗7@VCʟ5C¦nkL'6iR7X}oG4wNM ?["csw4L JR(C|YϹ!A񞚬>Пd*D] ATtG+\a~ g03/L29vX\jB8jKy>tc ^>-7oEj U((U~d>D7X7 >`c0RxoIo *h,"bF")q:U8<4gc][7]md.x U4CǴ4M!1i}`CO V4Ө߹ UPJxW.Y[.Ɗ=!2v>p9;8^a(儢XPfVcdx2GյAǹv=sw>k*̩l'<0"sr!N!*4T,BpƊHM2JzV朧3'e2N٬Q[ dC]֨eAf3 a V*G%!z8+K׍yВg g!@ >6H,wIM<+;LYkF%œvj_UB,*J~7bw`_C$ ~T969îUS"<̼@/9T5S)R1nU ֋@d8&xI= *lv3]1TkCSQ29ÃDzc Δ~;/)#˃ S=Vb@bVXٞ}1~51uϨٳ*gXrj͓}M+AWA9mI[m}8a xx_J L} fU(Tq;cYX`[Y7c'0B}:'7OK%Hr J;)$z) ->i*IͮV} O?W_6~o"C!H8}/4[S4 !y+ǺI5(l㿪kG77!r?q=RZ?I:N!Vy ' yQ8& v>YpD~b|!l}O{nU_|"c#DO`wīM|{%)HYݖWٱ[-0lDAd ڨxyf >/-Ak=W2~K˪{M%B\zcª۬ˍN tU̇:&ߍPϾhy,1lL``r RqknQIA[ӜvNg v &F i#l.lՖrlX.pfk>u7^L% -hCEhRad?ty6*I,0UW!1|vՐa$^!U%,l/;-n) /ZtʁMɄ_ 'LxKCwܬ#XL ~#^c\}F+MքA~)l-IZ!{viǦJ&]r4v"I+?~#Xwo9I#5Xm kV̿FS7+wƪrR+CӬviRzl 4֝G.Lf#$ EɨOU-yxNyP'xZE ~Wu.}$iȂ Aߚn捆7㔈 <0;Ycwq1m!CnO.粉A{2)o bg>){Lѱz õK ]J5E4?l][F\}NNw*˶Rg%d-SeD-v5H*q/J-#yYI7)e;jymiBFM %ɖ-kHiBөQv̟'7nT癓D[uh1m;`2k"h+`KI~?SJEdD/Vw562BW U(mlzpenl?ޢk!Nk)ŷ>"94 $l$<3))ʴأrmE,XSI(2Ns~ޑ^ A^De|rkם뼄pU)Iͥ"BJOmfA  (STw8=6YyQm${e g0lUOdROdՎccsҏ&$O'o ]1 ?,u︋@6<,/Da> -q8 gB=`0_只Ÿ`ձ;A]:LlgARNIVVI5CZk5\\ᰥlKw)i@[yp!vuiC4mDL\G> RE"ڶ3G_l bHbv"%])rmܸ֔m;C=ۑ\ \V"O"ymjWf ~im~@Q Fܚ b&^Չ\vG(m}6yLl9I{gCZle 8zRRT`%՟.t?Y:łf%({+ gɃp,˓7=],88sm K _ m߃/G6d)(VvShhF/=gNr}~&LGR 9&Q?6v&79?}o*7 >씍 :A>F<+'' \B:fB%D4εGW[U;>?_0_Y#c7U'PNp70} w9UFOw'"ߎ,j^˫"S7B&̓NՓشv;tiʴ s@FTaEרaP8vؐR%sIt?)c{PDǴ=↔.O X}À*|xokk0݂zP^} MbXm*@YרQj#(Z(n2I}5͎5`/~Ev .7M1C7aO$B _=:&̰K%wr@ Tщwxnt 8+ Q?BSBA}S;ɵn2m ~N(Th/')%Ǖb6FKfr#[j3Qȑr0mj;5}!C=E}_V"M[dThg x%toW1v< Jt{**/߮2`CA ;VV^#uGpYР}J?&0 ɍ #|.7Q蠉x_!b Q-G,`gjwa=cK4τl J^d6&syBk\ӯkP L?TL!N,r BcK"s{S% /ա @< )kn,gȼ'cU"<W G^ u,"b,-Z9%cS%J,ge1._E), s##O/k~5KTJ.EUU&[;퇧xU;U@\{Y`""/`=W1!:ޗfYX&bke(>o\~|VRsulf32#Q 7v F5p;5A0©1lVr0S앙if d`"dD}Kf \vخ͒wF.nn̽}Rw&MMS,߹ (`$fH&]/|tyAQTL=0>%}Rdc\]Vh$~#,4A86_c xn`݌sDUɤ<2Z.}0}xS|4´J|İ,!HוlHQɊ璿&/۪jeS$eCy{hHs Zώѻ:")XٲZH;']8누L<lnR-%8J~Yi#ņ1BxϭnY :Z.R>{j,s]2o_y NnW Xd}a} *2:QpW8:BuvI;8+A߬Nui9ׄPC#g*+͡כK f7Pv\]sr} v ,q{v`:aHGb4Z"S>zur*-W|,O íHK򃊵MIϑa HQ~(*A + hEh2 ^5m4sf)RץKnY <q -_Q /m͝$P)^Al)@4{X :I V oDdkbe_  Oc0u'ܱTCB=5sDD9/V'.6^HxD̲$/).KX40s #ͫ%8*K$ܢVY0b&h~p D~jƩƞFPIGl+3:4Da-&ph##6R+5K쉝MebT@t<4ߣ!(5 Bbm[.ʒ`la=FM`~r4iz^lQĭ;:d F F`Yf(v&8>>k;%!-code+&A'0l}ZHKͅ3 XWr3~kR.{C~:k_)&:lKܠg Yվ>ǧD>qu72` _ՄoKKJ w`n{1jk<*=uwepd!/mh. 㺐qeDNof;92(%OsA~/i׏(JO~tѠӂS-+Xu1A^Pw&j[R 5FOW&kcy?H׸S~|D`TF%ggz>9qڭe-E1w#+RWڃ#X(VĩYi6~LdUA7:9cÑ}[=+9ш? ⷲC;F'kOPA;8whXslT+ p<ƼU_Z9afr'8e"]M}caUj+IJl ?:{h_&Drt)^ϓ /:JN)l,*lIS))TJqazgǟäJk@Zo`!N1hdڙ HӺH>GFOV1ڮNXSwp<%Cٚ *MɣW(QkZL0aq˔"SߺB䆨1IvO|ݣ@٪rzh e繬|ۆIas k 35s^F /M%"`0hRW3JRL:O\d*ͅV54^ۖ = ~;[ֆe vڏ&)a о()Zhs64թ6n8w'["801@R7DIngv vImE9#G䭺62ک`4ߩR_49ˊdw-Ym/BM,{*ZXfL{0b:|N7׏=UQ͋`zh$$I50n?86hr<kFZ&?8v(FA0YlSJQ&cA"ބBM$R~gx._y#zvoyl&QwzÙ>(i+f}=J@g;836&Kd yE1=S)(A7e`vqN|(XZT}tۑaX#· 5wBSs} mW;x(E74q?x9ˆ:Z>rGM螲QjAߖ/0>=%*`*Hoi,88HG݇ӳ0Z&b5dvȱ["JwQ,Jޖ`BRuT,+ 0+ 2e3%#L| ErL  LlK10 MWh? %ޗQ곣"KHsP_(0]A xXڗ4 AM~rD,"PңcU@dΒ>Ҧ1r ^3~>S1mX WZGDJ@zwͧGKr&)"W|"JU4S3wf o jOIAFwC.C_ҸX(fwǧw)돣,D+:xy{QhW~w4DONcpy{;D4씻b_˖cXg}¿7I~o(X d@!((b]?鬣y޴!0FR[zG90Qsvͪъd+5&ԿJib%pcڰWokqs$@bNa9 M9Mt iW+ngl؉Ċ<1Ο!֦Y0'n2氧x`vvE?Z\&1%K+("`8W{֨Q'^ elJIAh4w֕lV43y}*SFRAKc vFMFq x8ݵ] ? `{JĥH%{̊YGxHSK9i˺_g)PaiD1Y;e=_)v%?|0ln_ pM,pqXJbKVB 5 (B?o_Tc5޹Gik4fdHa<'0“OS1(Y_ojuؗrtGVR3zrΆu3! fL]Gyj&:2cw8,M #O==(Y QH] 1;2<`캖3# fܱ6\D9/DcUw`P]K -{$q; G[խñE'?0(L[ Q1dKfՐNr_S5#,`.0TUatytt[Ի-R3x (rʡNSxح` s#[&K2CQYaskn:qxr3aEu1}A2VÛPw!KhJEpB[3ہ}(v^ߵ΁\SUטbu$][DԴĩaߕ1_RlXX-_lZ 4^pۑqz A%/0ݣ.$&y~\D rõbu-}GڽyxRoHtu +KQ ZAIgOتi[F-YYRߧb~ ~chFIsIp=#]Eբ+Pi#2oJX_-]9dt :Z8F9rJ"<,vBj*K揽zWn[ЮC*G\1YRGg,E^6p@yDሚѯa>b[K:E&@ k.?0C 6=%9oNG-}|e(N"&NRzm% Ł[졵z"݌ ڊjӁ6yw2G\Qڎد"rUE>`I(i?نęz],|me;CO`(huC 7tR"%A:C)eg`7P}镅|Hկd=o9 e^ۆW ;:m闝0Şy~Qr%dn#d8nq حrK(nmh9q"c f111w#AFm,'bs|2)&2b_721Km~J/(Uon8gͤVo@//Nc58yTGs;s1fĝ7x,"&t%B7,oW|0FQNbA;4]cCpsqf7V٠ i)¯z4ci||7ľM%[@UZSt5(r/[ 9HNmգkHz^>!nc Bp8Z]R(Ti-KۛB0%ً"'IkX:QA Y-$i?&# RyYqT5: ;Hh`AMG%+Td}I%;JlJ-eHYEͻjuez/XGe6y0–NB=[[ 3Xb~`)(^IkaÖ~ƒSB?'붰BZfq amXVcV̻{F%U)lLMէ9\~z.dBT|,Aƙ']U<{zl9rN7[i0"0/'ym.4U#]ϳ4uMf8c('y$@8#I+EPb,Vy}~lԏ$C-=> W?v o1ݏԲ_-FN3YXz+)X ۇ .ܩK\AO{(ت lAZ?A{G,Ë#{^v9KL(~J:3c#h~wAn=T2 x7/@3V^'o= o9a[Oi;c=`L]Ο;rRdF$r3z*a[9攀opwMn)dD|W-E!^WrduwdX~ܶ!5B! Zf_f,gtY|$ܕMCl*ϔ( Aa'=تz)tT @Zy>IA[r_TzȒU]l/P6ám߳+;tCNC$ЊhV10<{̎*Zӳdh}|(} R 碴o[̾&?`lzK”x976z1qSF"8h/ jNۭM8 \Eխ=lt N 8ۺ`d@U a"7A{mn<:ZڿZT\=ޛ=o[gidU [a0;VקHhʘb.;%R%'m[f9ሁ?e#&'3WCrp5ǔN9KR2cA5fT `c튺B!i}7 9^gJ-:3uvU+9BĈm* Cj*[hөu%{!AC- UwSbjj<$І[//c952GI`ѴL͉g+ӛK d.&+B)9ֆKUWWڀ]t 0So`Q1 }`kP'hKᑽGÛ%}ցRgxu(O=Xz_G`<*`è}%dj(,ή46y`ܰ7ddL0:->H"+Y;1}׌>QWsԸi6AA!I0lzRCu- ?_igƕ͇e%9J-|,2 F)^kf-*z51z6p8UB"9Su aMĉZ!Hɼe>sG " gnRCE ܑ h1e +e="}T*4lMn0qM/xu/h#o'*Np@S&|9 A;~\u yLble$Isˋv$:4o 15:kXm+pFڎy>+r; WwIvI,q{t[ >8q\شP <_C;3d%j2 8q9rC+k`ս`j4k0)Է.TƟ-SId*ȏmM-t9 C}a-PDyCtmg !O,'y3ťpnO2C (:!H(/.Źt;@f֐+6t8ܚ}J3x$s LPZ Ak@i'}ڹrh1(0u#ecI&%n# Aic/Ӳc2cζ9', bj ;`SrU!uѳmLe4nzL% 0XWP7ąi{s:6%6\Xa,~9j!]nj&]!>a/| @1vsq TE$%YپIA{e(oa(s4ufxj |TFw}!6Bν]a;f[&DgzO-k݈VW|&w`|Y+o*MܸsS|EBc[ GZg®Z-oE`*COqlB̵Th_jПgi vrw.Zxǻ^Hb$G5k (\'x'ZP"֦zo)oT=YhihdNuGXRA*dj6qBf7Y뻂:˩<ȟu =< > Zhj\ ^ -E:}!r&j?}4F0$ 2 uC :oCuNږT+(g;8F$bIul"jKQ8\;` ~qiM'._=uS߆䏴/)9 ćĸĬR!MMP 6a3K 6]J}+ܚ_Ig*sB8\!'+ۼ8JrL %d9b&>ކO x;^Zxm 7b۠VIo._RWݮdލߐ>^ vX(-OZnŠ#B)-#M. 6CZoj"SśZ)$xP/lH}Ў ~!@0յrPS*wj.XD-3?N" #w: -f kx}2Lol s9Ш#7nY9S#.tا3Я25z@P!|YJ,l%%/ EEؤ[FȀݨ Z+FNС0,*W*RN 9釙KK1DMF'61iT Qm`@Ŝ읨C8O%"dF gptg -_kUh>ۯTrSZk‘D` RuдlғW ~o=wщ; }0\'qsZղ{ 񕕈P>Dg-XC-$nʯgkbӂ'5Xc-t5kȺP(4 I4jlZ9⿈neDo{ fX@w\ogj$z¿%$}Zrͨ #f'2rs4YǢ'#N1h {]oOXrD*0Ó?]X 7z V'rdnlƥT8ĵ:aR}K O/HMkQOٯ]$NQnIR'L1-58J@Lb+j6"J % O$.ө,E.?50AM\0jyKCK pMc5ފړ-Qbe\W0"ƎO|L3̇|Q1M?yۋ#"R:Bs4o+J84CSbEYq *Rwup6XO~K G5~DIFBSjSǞ%W~şE3Bk˲s }jL%_ QYދMA5 R]?pOS)^%o%|/^#g(D_Vo`NR2{a ʾ]Mλq/YPrYY8w9,&PN_18tlޘ{P&R jt9{JIȧVPނJb71wO+_͉4Q_5ҧW3^NjI](fn IP/D7WnQc༜ZWdr"l+ϒ^`6XFX:3I6UlhBK>R-[E$Gj;`"Z@}#͒ c6>S2L9b=Ml&PruiN-_aj#"C>[Ou)R tQ',r4'K{r 73X dHC=)bpޅ(+цWQd˿=߃ :Bw!L+yN(:}/t2J{xX>DدՂ4vS:",ZY+ZoY  ˿sQ &'ɲ ,IR_4o#ܿ [,p,qΏD]gX U1`R~&_/eyR BzwNu㌪IJ7c\~$nE/=)cfd5n_. QÏ",֜z lrƉo6\YtE.(9c-eqQ"k `y _W|H˭8,r1wZ>*ܮ)_Wכo:b>?| O{X+0vN70)Chqw]BT5ݼKB rN31a`nέ4;R~[IGm1Bavk|#o1U Ȗr$ Fؑ%b5I515P]}ǫj>w q5Yǽy"$v\ծ;zqMKBX5()1[ҿajhξXq~ _82a -kY^6'ȍKךNC=f9p>`>;ZKÂ/٣g26G+#WdVM:4n_JRZ6[!](],}6F=r;B^Ri/~?m(޽l 9Q^6|O:mR74+PXLK7?pƵr UR9+Xn!I<3t}K#&ˁT6 4)U*>X(.qg3d`AkiCweM3oN .d_wҀu. sK%ZAMww"?I8*P8$ҥS ѝrܮ)U&9įr.PN@m,Fm"̰eNAӋg=`'"W8W_a<-gLjdh[}~J _3krhlpf0\X.4lWHXuy܋o6{p',byPIVyӸ*rExDAxH8\Sϧ#h])JZMքSx[*@aMBZʤDu#j.x cw1Zł9 ƺ(kT63RVw`qtuގJW#/]/Pk-J>MRx?w].۫Ze=GsԾib$H4qB2o*!iO.ح/y7"(\J5UHgnNq%?v}> +Gˉ)I~> Y.XóuyM~p`;8~9L%e!U3S^oMnLS\Rnl,E-7Uq\,h,Vda͸'"k7u"GX*FN5wtڦBR,E&4D(nr`'F.rK'`|揵=JbKc/1K=Do̽=zHuU](`i^[euC잓r,1_W]1A6i]y#gg^Y,(@ 'NnMe^h;mg>=`ȥyot9+`qۗɗuA%5)"(&5+>`֊pO vEU7KCx/w&('ӅnR=VAMăX1%НHT{ph5JJMJ(ȼ~hd]2$tzac_) Yl8.8&WdDn և~\-{9Āل5Yg_G={>}]$Dv*t[cvuHX Mpq|&ƙhbg=9 4ρ3dCHRidysb9@" .-g a0Äx:<=kM 7.;}[nn%1wҜ',hKjuJzD;^pݎHIG3Z!A qN/HbDJ+ /0]@ %$MǷMT,~2Z\ mcY"uSd:"id|0x~k*WM^dt'+3b\sܲ'`=j_-7l̵Af8\mPgv-T # TpՉ2>)91IcǶ[Qxڛ~pz~EG>A7 fnsUkfƜ.SS pM ]UxVcB#fkLjkJd~(` &f 3BzK AR7aIƜ}tŐ騽G8al4z fiA RGUC5^f~:_ZeV#-TEZW-yuz;LuT5=;)[<MFCiB芙 éR DzV[ βR#[rz۰J8zʩB*2 ]„ @%_(;^cB¾67v8Ǩ/k;50jAߗVz~Sxłק"vo̫1 O$0Ibu7H[.}OKQVynfx ¢l^YU+eB eTʽ-n9pJ.z6C-A1 kev*7_adfCI $O$)X:&,}G`my oPh&@ab\ng„#/@S_E{<^bWa9lM^9P%P0P3*ustDj5 &VNO(nDs_į~qB982Pcǰ?^woeF˰dW#ѭIم@8dz*_6H3uBA1>Fh;ߟxk5]9NK1 k^h KlmoԶSXՑqj xtb#7{;d$"D{C+ҹ) O{n6{xհ,> M^J7,Mԉ&/3:bs>t]пGt&ZD>fԵȫ*]lv7;JzoF?ݬpgJ' ߭#gA /ݮiG[͑'cDK~kJ:(8uI'=W6EF7& DP?N4;mx=ϣ]Z^Hu=Ԭ kU+-ؖ{01_݊|MGeO;7,swhTxiֶ HZX:sCUUui.Q`?<$MYN\}{0>H.\ZYp_,qHVduװE(aF$ D 9wDdrk99:[;3YL9~aI>*0?#0]q$8*!*ZunG vR&۩Ͳ*j4s9bL6 瑷 0*g֢'UQ?%O.ʁ#Hh>Ĉko(|`Xyۢh=x+QiAt4ӱ 8;n 1`Թ.(d81*G݉9ᖠܓWdE_uxvpKkt<\z)I,7bȬ똯`wݸ͔pnl@ąHBz$f4&_Pٚ[T걀D_^^Dn>-['| lՑ7M3s3<;f wa??!CCAaﺈ`[+*]ioN$؊))-;.Vّc(a0CqT5, o!ܓrcXhO{,x[.:jkAςX> r뢮DGDӘߥ2:uN; YAքN??f667@cƦ`QC /.amP?CXu ܗEl!U̯{@9gO17DD푐^@/B Sũ\j"/fӻhˮIڧXakX0_rQs]ИW^ \L0ZKy$h!l[6&rRtJ %EFxD+T}wLz ?3tH ^Á~e`d%;߉N*7lE hc^ ^ިDa "]y]N7_ ʘ*g9+j Rx:$! FV^*>I f$[_2`EE^!CԵaN)!JY,#Kjp١p Co;>Pb yDVE]Ь*EobcJӎ964Fua2K^x, z'$cK)Aj1QAfۤbؙ*bU2[&{#͕H`bL-D~"LHK1>b٢`Q6LkR9vQ2ū`J; .#o 9fXN pt rp\l򀦫Qgې;[SDVJ-}(d^E'Kx?d+#m 8-V:~_Iʔj?\mDRF*L3 ixJEJ?fS=BlZȖ߭ غϬ\թI*oiYT wf G@`_Ds7òl>b¹Eۛ'[q)xk.J SqY6BuKj#@ y69|,8k)kC&>Gq=1b_=8Ljw(wqm:lA>f#ΝFP`kl^%6rhL(!r4䩜–i'@ҁo}sspQB96z7+O_R10Id}kѲ}W97NB?E(QEf-:t曳d'=ohv^51R(8b03"wۗgY0 !^a4!A{H0|6/6,D@9-XA2T]W9f:ge|S8c2'כ׫J3M-OdE}i@v kᑃ swgiJ櫓 r}刨=ʼa'[o2&Kb/ ;mܓn>~?\zV(|h4+BO;K,;WIjh9(7vF= GI Mk#a+ 8p }ݢFT1⍫`M9ʓ @ߩ'v[5徂F!I;'jh$ݿ9D_WҜ}- 3 Yih4)/)GT1fܰ-ƃloM8mn6ibp̣cre+9 ?X 7`;H9I6ڟ埧4mJ9V FmX|e?i\ >?lߐL. *l 'Ar@ݭ:yU %C~є{xpO)=Jtpێ)1c2vB P72|/{;҉tZ%Y ^a_D8VU& V#41@;?U@_BgZ!pfb (ɪN>q$)vDM²oM~,,&!f<&mahL}>eMނ\Ս|g&w ]vSm`ef\S&*rvKƱ <kw?{,8NچdUN$ [Ď{.&Ym>ezvu{\ъ81>J\?5v}0_1Pi>;Ěz,RҤzљ$^ 6K)xgTB7ng5ۦӫ;FPkbI*mw30x넮 TꇬL*FDƒhAB/?ZN?9${ewbݿ_<S Tq4Fh1-H-n3{G͹<5u1r<;J+}kt5dDe6$Z]ᦫʞjCri_)5⥗N )ۗ- !?K^Ns{y9h8Q3S{rӘCbA誃b#nhÛgtY̏ 2= X%7 "R\:=Ԃ4@ z+RF'ߋ$yj'xڏHi gu;+" G!x+x|WHÜZO(O`F0J檹onEM@#fQXeVg#/]AfK8かKN J|FLtO]ZhgY9:* Dt#z$_ޡQQGpRJLi*Lgk&kAKEJK[$MU;y9C\OBT .dcQf%yDo!Cbtfғ+C(0pd%[Vxn"TM/R/LZ~9Ax* |qk&Q s+J˭-WMҟH'3N$%H~jPymΟ<6}WP " W -M?̲MpP<~M@ A"%W*oqv<=$v;w>OHRūpƓoz{"`A"`+Vd -6'ޫ1u5OkzUa"8*M*pf#Gy4v}aNKZ/tdZĄAכ,̎@\c˧u='} -$À.5;|'BF ) xy$֗K c 1^0! v;AwpW#\'tnޜUBɑ &h쮓WԽ9<4Qw fŃ@BQړۣ3~#tG''O_3~&WRGE;l2$E]FBKz1sh(2Yd?V)vk:LcX9=*B)'WHfPyeA\:RUJƗ;U$|`n!9VCC̟T6MvtƋ?H *{=~89xVA/0ʞlS?Mt&R &Qտ=[" c̩a7Yo@ܾ'^>"5Gw&v0;=Jϙ~/5YvPOT_>Y^zTϞ|~Hjl\qJ dXP.GқLү<1#l I,߲3P([]#͠:m" ff![J˔2RMp*b>+e~\(v<OF68D%MoqTQm*/L#$=K]~#â]iJp^Pd;j}>,e/+ô ;EmGX{̍ |=jCi7PeuE 9RlpH+`uN?<G)ϡK& (Udm.:+-i}o Gfd jNEYſqLol ]ϛPa7usFjqk2D`ZI…,xt5w[\%IOr23q1Tv-v2Y½e@(PgI8v!pʬb27@lU&1M;ve1rqe=Jn8iT|G\WiX HM)6H3Ĵd'blxO\?tkPRyjX_L8czܚvV8P_Z$Q O"P,w@}k5nV3M%wݲ~Ͳ<A*L^7vgXvBuhZj}'*zfdQ*}OkaCڃr]?7TTh8d~(̶XBRc'~j|M2c.䒎:R&yeB^;C Y7믧 HҔ;l u5ZvX\_(| ~PgPfضpXQ{HPs"wfߘ eF./sŬ.wjC\|f>*ZICŞ$2)sn~=:< Qu%jg|08 P)WâM q`}3*`6:wI ˬ=&?MVP zq+]\P;=HVPuMq.~kL$tL0oN|Yl{YB̝%!Geȋ<%`EPbaf0vKaR a 1" ޗ`3H:ҁ4,ئC);g:P?8JZL'I;*g XVfmDN3{^<$CʻpxiaݯyQ#4CvzZfhc<_>C{CmL3 RmG@xaf44jC 1,9|[_#7}r͔IlMD&*FC;\?,@x}p8 'Q1EdA٬VӮɁUYHGZיk[>C W(gE74Q`g^9B[^PI9-6!DVUdc.qCs2F r\aGx ؝N⤟vQN]=5n^1Ir#Of%j>(IDUe$0C^$g·&Ah}%yJ&vn@φ+hy/U13j)g<)/XSsУ!$fʶ q![IJ[ZP].`lZ-}MJ г5o8>}S304i+ Kd&߭,=^_&R؄ C[dEH+sSlz~rݠT!fgnoX<3Wˋ,=t 6RO*ig[㳃m &YݩX KgI_B"m_VW'jMČ~qk}Z" [ي><\e]3s`LimRPar[zze=ၒ,n?\OVIsY&,O%B1 Mt±JBm,i=\sgs)ti ?K'C:5İ ^7#+%;F9>_O * ,·S1U-~^UƝZ[̿We㫸aXO,b->P{ aмxbNo%1"m(⢩U69&B2TO^?Q2sNjxż=#Gݿ?6doގ$MZ `Y&Gz9Vɭ#!dG)qN1+ a~ZJ@i͝5 Xyq݊l=PH| ܭKz567:qZLޚ8Y4򌂞H ۣDޞNv2|..RtI|n:odq2F"' ah;M>n=h5'$7XT(%_Xx-\-m^bH!0r@tF7p`h 24–n_sq,{h.Xe K~U-_PȀڔ'qW#IEL UPh=-R)\b%y3?A-Ա0ڳ̀3<]m~xncҨr8@vVF렉:T͹p4j2dBk*m˧As T.v8|5+[k2y SŢ%bʵ N(5oQ& js*v) D\[{cD`8 ҋal @`nQ q^"h>0^[szv1ZK43{Ő)d@B-\ r 4XDwIAW-~P'_*!c*JHX)!6xCCUu>LFIzKFNDӼWĄ3p@AKܾ.jl#fdcKKԦx9P + |\)-֖ilpKlġ)./;xW6@qtو%~}h3$6*>uPT3YU;|IWˇqlO΀FdA27\<6K ({']OH 7eϝ_x"l)Te}3Ii3ڶͮB >#R]tj+(^>^tn6ŹfЕ|@eϳr>eoy{20#T '\ ,cpNa?BY RG&nܩ14߂,7'Æ0NKs]]KK`\ӿ*,5pS̛W`W:uzu3Z߆paᐞv`ƶpE=c28tŅܽp 0%k^saݽP4"\B1{ÅO}du F_nfLG./Ea[0ڔ2Gr ĸtůsKf@ LtYexvzl# :'¬MDB,*2&1uu=(p, < )ug]Xj:wMÆw MbNP3'"J2.S_'ֲV3i>nE}rVTN6`p- 4^oFcv̰:o)1V .5We{'[w@b4ǘ#5t>a󄆂Ulw *iЊg#$3a \lz%q D>WqAP-b=v;Q4wpOhK}8Z 0F(i(I( ܻӈxof#R r%r7$o fĐ3z+)X0"' 3|Jҡ95NI VKPs|ҰmGE0XY! Jd&0V`a˛avM=98a$FaVrp%:WB9,f#elSon`^]ױ< ĭwX{6'2 i mX{#qVJM1_H^l}O[w&''btJJՉ}<Ȕ݋|[QռwM]_UTv 7Ē~$YY~{T>q` ow҅ܤ\ 7CY=3BQqToM ]yV0_ifƖ;23I҂Q5la8+"ܱ3+ϥɝ4@ƶݭ$Mӎ9GEE 7.[Rz 3#<;+q]N}us"eha>D[w壐<6BDSĆ|txny]*Cawa{#(MU`KӛJCt9҇\BGŸT4,I^}yrzLb'xkRer41ՇH^uU`[Xڒwа(ɉN[0wU `S YFFe3XsIQ:FxXb.:$/Z1~f6`[4ŀjC̿0z:,WIj*КuĞfv̭ E跞1,9Cȃ"4JOĽ f7f G']RYͲ^%#Sںkh.jzb8HsM`$$ɣwБxt"t@7{ 4z>0Kt+kf`uE5L 2+U\Mi'W*BWE<*!by^@lJwpF!mww$X>%0ctIeMsǍlp>&&"a7;AJigX>XhT~ {B3UQ9B,0;1xXdq%b$GMW)$H z$ZOAiv Y2|e*(Zƽ !jӨ䕽,3Ҋ<Ԍ9WtVN$~鶥R]uV23"G Qx;8M,5yQ m%ÜP6ؓK[růRhQS}%Lژcj',_(Y'|'}] M۹KH39` †Y-K{QyL;X띩WAn%$ '96hm0[!y5Ljd-|}X6ϓ#)5e)j8t/&qGZ[sFɜiBM'FMVu/cƬ:>.Zkuek jٚcTa[M f "{p|6H=!Eס>ϣzICS8STeF?ܨqŧ)b+yVL])R r`Ld}hYǹNIEkAٸXrtCĹ ;Du)BlC 2Tɱtkh, ny&Bj%/ȯ79.RWf VM<>f:=ZYhjb u:UQAaLeNxs{b1v:?os@KռD壢ynOk&+ɺ&Z-9I,lNιPO%MXD(+ ٢QUIj&IDRv Dbo@u8lD.nHZmmezo}i̗3X4l8B=\rڤ#Xܐ_uGصءPa:HrUa3Xv蹥o(]>38Veխ=~[zyi>E IM ?, 2N9ODrw2/?1|Muޣy7>͟\\FF!7=M~k?L'KTss%Ivsa+ٍy=Lc@c^o3!o0fT5TLϊwBu@ycWFF[=\y?Heխ>v# LGX FJCidgb}"]5 ]2PQۢ EU,bx/rtYUNed_1ԳfyR>~&x{Ds;;t.HDqD4!viL5tA v3rZڨ*D׃&FU4 5 1:M?9i~ʂF:A8K:p?4^VĠTqѴI|(!Lg7j;L;4'ܰ[p@Cx_0([pOt2hVu.27GN4 3J[5MrylOU1x3.!8cz7 $J}?1qS觻T?H4)dPR5`Nqq#Tsµ^in]AS4~≔ o,sg *洵UWN~~S*&x"7K^{l(+Gz?R1ĉw:s2&=5~T;To53uJkq4_ov70ΟlFy4Cdi_TG=fW}8 m{7j1|EYCf ~Eo>cHv ݻW(~S #6@!Z\x)~`D9ӵtJpwjЪok,|wtghNWW,4R3ݫ\ {e@Z5p4ujv ՜ |\3YPxKphCMj)OE ^饆)86v;b& L,])8%>![μǀP;---b1,7ս^ ]Bq n'xmpdEfj|=&2x5*7@k"N3|lT֨D~x9~)^Ԑqaւ1V0dMY ct;O~Msp> {?n4! QǸP&V`+EBCԥ\9k(#5儋Y.׭5Ni)EU\Y8\_*Nt n7H^VьܣfGI ^HJBTބ{oI#KY>EF?/vzܰ9UrCn "8#jOٔkWb3">h@g~_CT ,.{wM]hӱ/w`t"+Ærxlk!5F=V??/9oLݳF>]-'چ$lVsΪHzsٖ炢\,oyiTXքF1ċ+7vS]ӛ Z #`h=v2%s g!eptfWRRl 84A$Hy32jCn2Sۼ OE-E|<՗mra_hskvh!QCMCՎb :x0P:a#(j+`>[Ƒ#Z6&)P176 HMoMvemFğB_eyX{Kmncj 7? w5;rw[p+]Ӑ&5 33 µQQw q҈YٝzЇO,RGV'NPO1CC2lo Gj"7"9ђV}12  &h]Pƕ$3sx1x&8kj)ziwOW %fnwɄĈmʔ@%j*[j6ѕM|oلe,vױ6;SGX6BYxƿO:j0(Uӗōm4TMZ}y j;`QۿgL֤0;;:5R %v ъRԠg\Udc ;~ޫIR9P Tz++{5] FK.D1>0Ӿ:/гxV#noaH~+s-K OHuDqU\o)pڨ\E.Z;so5Ґ+ZT3@44%?kaK^'X噁~T/bo']p+\0peӟx/F;ԶiU"]`Ei,Gx;|ͣ|!5툝ۧiwa[䏟WG=xܢp=CBjD?\(L]OZw`3C'J7!k&w+`w%7a߯Beeo]?J˞#JXeYgLj(!Vٸ;3MڂфcsP;ڸmYH.BLg针Q /iHFyG4gLU:9Ϛ}G& Ȝ#_Y s{KN~~?h iv3t)TQcc~yDp{bpK9 #˾HLb};#}ٿvԫdO+ bc O hVP.1MMxpci1U!aWoe2Ug;bXcS “*<̈| #8R yWvr/e71'҇aykԔuYBZĜba株9S2zOem&FYL -aqsV~ʻq<}yhĕ8~dľnGb5 4GQUޕBB 5?p ϗy>q5̑eɂ Sǣr d 2:G=Azty nxe*j 8S~g)p FewGskRM⺱.90)JKҗai6uv^\kvb3V_/BO2o:)sܺ~e,i8<Jb|^9c4CM SR7a^MO]rvx0ͻUOa|jRš Dt(͢`q6.$]3:qJ/2L~{߯egohxG#(&rdH`-Z@1Gqлmiу$#:<;%<˜t+i%y4wS A` Q; iҵ|s|$E(KXD?< i3Otf$fr?qtL57k<G\"uxƖ$Q8iLŕG^ 7gPA3W|){SQͱx8o?K7+0e9 X^Zdz"Vwʛ (X|״H7J.LOȳ !HʼnWڶM:W g  8}RgԧB_>z1 L t݈xM"|wT?9i p@y+߶Hפt/ue̢؜>=Mu t``BCyeQ ,c}Gw̛tyS~GO)8IZPf~̞ͨ\ׯT+;pSը_ێV"!tG90(g>>P.CʚQy{EA"o{$'[7(VͬZ$^WI :$1LڃyL{rB8ךsAmS0hHҨ^TgUΟ~唷Zl}zÅ9H]L\NCWگ"?8țr-'_ i9Szƥ(YZ@pD?B>)̐ ?Bcfp]" gىU)yg8L,36Uh/L Bf{o,6&[ح=&YǞHЪB$lSi024*:mLD^:QHh#`C]hF,4r&vAld܎#ycQoQ]Š4Ge,C")83(&RXצϤAtLetĿ~fُ]P$HVIDXbϕȉF Hh9T{|mpرgx6Q*Y*l}zP#Ld y4;|q{ju$+wf?ogn29G-˴RX'0FJ!s(6cp G{Hj&|LDN&?7ϚXÆ=u1ְaW'Ve`ģG(z-eMC}.9U%-0nzv'tF]ػhjjfd,n_V?Cg'GW$7:pjU PxG+9ȴ}oL%.!E.\ou vhMW NxN0iMa@T8z rg/q3gm#A>(CAd#=QDI{o@S?5/, ;7a_ P D 8& hP:(˷7{%0RtRS;C'9TyNC&>lP+ Bw>juǀU[Mb/abhxBLƙr= 1*'N%2t0 SVŠ+Bqp\ht%3-=6Gx)!c>f2N:ת_d)} YK%q`'+f(sf  Oyb* coO ¹Tc9ӌundA<4/nܹ9 bV*HWsV 7/-"Mio˧H%lE)н?a<3FBN+cK'˶htJUz`DŽ%jh}DŽdxT+V :'$ UJp ]~t1[4j`B0^g̿8sdT" NyqE5v,md~"Iyݭs-dCU9%l ؠ7kRܞH8 FR w82J C-gË/M8i= [B姮uGTݲ/IVԖZ0;:n" b]u*ZXA.+W|nb""ר~ $FgnE 9 `B|Ko6iÕN)49Ȭ'"Dƀk'R\,UVڇ}bmiO]Y@7h<".oJ[-ҬYK2>;`q`ul+s}'y" yÒG٤hiɏo=&_~*:6jtYD35iڷT._}nte+$//}J2&X҉(E)|,j-Lg VwlN .OMM|fLX@lӄ %O'Sub@˚~i]xWE2j?߃ rTXO?}Q{2!M>40ޠ5d9R!eN9%XP %;-nܦ'\Zi߭T&pڗfiT\OF QヷC#T/nM1m(,0D/pISdd`\ۃg*F .I7D~(s&|qN'}gRM'52]Mꭗ/̛ak|`}~pȍ*uK4 Oemy@4{zBE;aUVBH)4xiSCii|AFҸCeXa: ~X>1=և=-;  ;".^. AigocPk!o@q] rк&X9UpU~HKvpNmy4axҚ9|g\)Dٴf3?WT4Gmrr0Eo'tTY6pl><ʉa6d-uV5@XTJV10+uezcNm\W t^ t1/A}Y\9m&ci0abgc/xL<@ |')DÇac~08s hiYgpɎ&itUͲfl\/4C?_226kc "{pIN=g͹:ӣ4 Mmep; rKpX(E  `='/4jQ;Ur إNx/a=y ZیSs{'w2Қ2#uؓ8 `cMiM#kرFVQPRSɖF3B0[ ~+ݢܭnnb0MePSdž9s3X>3A6%h lmZ"Tp$s /g[ExxwN+f%6b02m_g1@ɐ-Y,BwM dKQ*LgcZ>Q=H S8B$6Hi5 Yޔ*N}?C~y+{R0\1҆|^j32^A*!?Z&h+.;x.ƨpzFގ:*+".ƯA.𮷵o>l#De97WUx` n{~\0Шߜ#:BZKю*dCjN#?0}?& ?heBՎ.C8C ?Fa<9ŀR&R* l.T;nf?|R5JmUѽU,d5k.]Z#x i1 X{?UxGu3aZ ޝ4cI[$x6Af-'vcM'm}ꀆenkVAH\nZvmpHʠL& ՛pl,FB*q%F+wS:g/~].ܲxgpnNj1mo%{.xd9B?۞ﺅsjL^Yą( Rf &gA+aPP|s#;IhiÀ~J. { V+\PRX uW}sJme_`N <›MZD]N+&sa|0ӄގOدʀ{b\|%.ЛkEvS֘;l:LCߜ ;q#~7.Zd,-7c&A"W=!a˞ֿA˜ iU7a%Mn}>z)0+`3Monp l/`ƁN{}6ކIr__H!ו@R*jJ5I 9Fisь6rfM^ "A~g7V $4˔hfGx(hL\5|Y0lQuAw{-Ͻ~ǟJ֡^:y`wPx2V;,0MjM'!rwbfgkR8%(= M#*S?m̓%4|/xLA.§sSZ2iW? Ȗv8rGՊO 5Z\}9=);H|c_.M%D9Zwaِa$^kAo@HI)"Yxޢ} EfI!^Ջ1\`{y[;n[.\I]À?**3i<~s]^t#"$}ǏKK?\ݏpZaQsp6zmMFw刎mrߋ D"@mWT f!- ܩW\%f^ֺV q!2qtW^H,h߮o.^yw3.c<* ܕU$ƸL]FYc$l 0BBȆNE|@. Wak/ARm ŠuQD{vAv!9ЪJ(-§ nuakސC Dmtu|>AۙTx6qEfUjVvN8L'gr1͉fX$ cqB)?g qv9QRݐ X[F0ϥe֍(GF0Gmj>six! ahΎ!Ce'@W.Z6R `#刷LZQV 㛃[%݌bLaj GbOqlvg=y2t*_)?D:=!HQ>P/4xAM+ i68 B>e\botpY֝0;)# (HXN}A <2OLHL[јA y;3A ȦY|As|`YgG2rU9 DNB 3wv6w1y'N`,F[: X0~gs!8 &A*'~ l_'Lo4qH)ǥ4C@|PQ @f)#~!AHXدA$GE#{"O/m7I3ݤi "Q%lF9;ߕԍmQ$ cmͬ;YԆrB鹋`䇛5~ZαEc_s%N>3a:H=,q|1h 4މD }zkqvR(bGY2pA DptZq*&^ V>OGgyO} wTx+@%HrgPGĔ`ԇ{N q:FvB8B6GS PF`T|՜= z`\nEÁ:9eSz3GӰȡ,w`,kk~y_Ax@+kiR MP)c!T8`wW戣or:'ˮxfv'/~dd)09[ATJvU-/e<4cQhWi;>2sq\ClrziqE Z[1S|smkq<< Y7$rF^fMRy~fH=VH9@Ff>aQkDv4x?K*e^m]J{Va7W<|ibܩH27NEFu u挶GXX62QwU$YCtC 'wyYȠT PDK-qO8Dfce ^{yQ6ouáI(ݕq|*& B*UZ(4b`D} #8'k;akY?76>btLQfnxa$k u5mhbV 3ݢ?'l%V?b[ JfɥV&6L?ťܗ"3xI<.$~+,UX~x$T3/r{φz t>X7`OM >lJl: $SViF* D]kf4l!B&sfLDfI;^X;!o慨`7Y5,:Oi./Ԧ3" kqbʵR^з/B8EÅp/rBaQw.{3ܹ(#)$,2iOMȳoCżoEIm0H0b2S`(8L+ K$.IDe UG4C<&$N)Dߪr-u/nh%䀱B׵bwR|}fP[2"akdi Թ1Mg?u)r]dXt.y1~UnU=6tG3i1 $}Jb>|t}{}I=wƕBPWD~1%)MR)%tdL'4uN VmV*2~R(;nCmܶd(2ڢ$|ˆHYY-m4͹׸3IE_S96 b2fǏ"tOͽ9Ǔ|=pGNX0a@fp6Gi9.a\pŔ| 9Uu"qa6B A`]^C q2rg/! yѳ%D5_e:>TVqTL ֎u[g./~LnK䵟q7~JTR|Ij7FjD~J+OkE4-Xg^.̻e%oA~c  (b5SUI>y3X$?Q6I1}׃P nI!,%PVg d:}X>`n$Ԝ(w[K֝e_N;m׍<$i)cM`$ungOk: X7Lce73lc+PN8XtyEj%LZ(:ʥ^M%۫FXZMle8[B 0#Cd>]֓FP<~y 5u1DuISޤ$!VR48 ,;C-~_}L݈,,`Aݑ;3!5nj+X;%6U'0p9|dv6NPPjԹ}V id@@,x vPlCFF}+is=)@Г tH.q7 N"!oZJdKx2d6aeZ?ĥp:gtHdD&1=ՐPWO!yniVg߸eʕ899-[RyA$TŴcԂK2C(ۢpa&|wxY G GKZ4lI~eaךz_By8+m$d[_}tWI[6iic5{?B#ea[•NڻC7 APr!@yp5j_up (v,CRf/soa5ҙp2yv9ݫ+ft02@Lw4y X|LJȫt<8)]^z`ҷd0 +n;h.k\{9eQl;z&>ePAk\Zح)NdpGU?>ł6$bY?QB*GF×L d9~KTZ]a:zQTОKv>R[3,ȿay2mKשvC3>qGUSz!cDC3a6%5k!9>I|lYtVYxm0@`;Tr͵^A 6QT^Khj&|Za I1ևƣY[Є CFfuЪ]UDYo$qE!KpX<j~ l(h\Z[_8r _}4d| "zI .[<Wв@ qP\Y=ɅnepJ҈Ɵ&h!G1ͅ DĀ ]t"Z>7zqJY*s?7N6 m:kHfKi$ơ;x-"[=ooCHi=O` - Ю곮)tT6@`YJ,o--d{yK2 =zy,b7Gk򺇊 3G]r 'Ah VJ&d+~kƌgٟ;^Y!!QΊm4!v yLҒ3d-O %gxIbUp&y4PmU s^A+֯joDflŨ=6+ QR/*-TLHn$u0]hjK,yGm ǀpޓI gR:-rz$o\oKfi.`I c( k@)&%jg6kK Um'CL-6csiͅ!TuZ,(fQ]N4^ƃϝRE˪:=Gb kl'Xs^C=ŕwAJ b=}ʡ>-%-YfO.YEeӟV{%/Ocp4XQ#aG~v/"npo%e4O0vСE/ySr|:JGbcJJDDƁnRSΤI}1+܀6dL{~rNR@9[͢GI}E2 0ÅϪf(k~[fF='bU)Dԩ<9ڋߤçE7kt3Ww=&)kNrRd>]zXrmo_Pv&l @]-jqe>CIHs/C<79bd u3ۦƀsw^-ВZI)v޴Enu}lBW R.EO': &e5Z4`]VQWV<R+~/l@<2dI S't҅ P=._R9 :yDx*Xz螑YK{7JøhqiSpC75J{VGOBCIdЭ nI[Yd  A?71ΫL+fbMs"])Յ$)+f ǹBU2:h= t;Y`Ol=z"t=@VȦ}mp!a_ dKK?\ 9N{kAh3hwr|ǒMwH\II>Ԥ苽 @Uyoh%<ڽTSoEeDk(xUQ@K{;?ZiX7P$A@q@ '89y0]lN} f*vLLo\ gGE؂_oݟ,<=-.[ۢ'UL0%:g޻~aΆ0q93em=҇a2XE䫿4R,D> XT?^\1;w-)>`d2r25AZVw~i28%$O폻*vZd8\Q\u0;{z>*B(vIl >%Grb❑@IӔSqG 3 n`#zwpqÈ~)zx\jbx|̡P, oS쩥[.A*⚞6sћ#}n):y]9yD>X%wLvK ÅWJ,T)M<5gV VZ 6cȟ2GID &YlAm}pіʞ'`-DMil%fK} L% ޕ3Ӹ^j6i18! WCyҗI6L~u+0FtY8g˖`czWNv_* ڐ߽qQ ) 1iĒaV{~uj|$#R7ujX^'5.{t[hn~_!_.Gcٰ@)\QE|πnڕƍd,2?uAoճT\g+*;oqR힢_vs'[.!i Үk(~E`m2Rp-~DLBHTpSrfG$5,c,trXδW{9M**d u1 :#8vWqESYaሚYor*bd} G[ce>("CDF&:vWJ u?BmЅoD„ev'9ONlB,`TՄxH/_4=r64'Ncwoܿݛb<V =zD%zDepW3b8*TPL*,<4*"l5ꤩRi H=Pǰѯ T o((i~ zY:+f A 3؛LKpfXwSO5`׹Q&w;'}zDo E0/%؎YC˄ɺ.&u*8<ħAHCLY  y'¼Ww7nkˣ[癣p7H]_C8ߞ5z`b /YcEVs,<uAzĐd֛7 sb*eQzj>WݽwBǫA w=g}w3H(X% 4~ 4|_r~2sN׬0$CJ; agN͌\"TV1lC;H~:`So3@i9щ1 w_φ]:fΧ ה5ʠK]3U[ZZ^l#SD%IKWmd mI 5(xNF@ؖ@Z3?92i>pPҒ 4?& ;zOrXJ`]Af$Dzl1d-d]31O qw*Ӱ\Z3U]/)O?G$k^nÒd}d|uG(=W 9knnnOG!/e_lA& PS\k7*.6/ƞY`6jW-Q$-D>Nk:dnsOˇ^kQtǰf, jMWY C7̔^ @3Ϟ~t+iFHIH~;y^vҕEOM[ǂv- !8a+/2ӛȹ: 9HY9\2[.O8W H3C֘FšhK(]uY.d뎥-LLTrڲ7Z5m .7bwc;aЛ4+~Ax~ɐ\T1?2X>[!<#w!,Μ;k<2 AH B?F; Ҳӥ33CJWvDW݉ЎEg͎ۈU1) d8 P׽*^Ay,I\,E/Xu;oCGTvF_yOX c!Q̀r=a p >#t_\?Cz+xd3y q[˄vR 􁫿znݛTXUE P[0`#[ï&xl7j1g$)U`~c>x n5{ѡYz]p0to7d)SMqndL)mpW>_"}nw!D߶S2C!^B,? !]uia7KXyC)HUER!$9cc5SS%^ 6i̭CKmc RݾI`d`C_,NOcCI;-i [R0khQ y}ŗhɈ|8 љ78|57fxK;ׅOԼʕ/2 ]o-fwqdm"0dSYNKhrՋlNW)XAruPzUGbH-1>c# ؊$- ~Xz1Tǹg]d hâE'kd#T1!%8C/1{M VMP'por}K\1~|PCff&[Ҩ_rَ;@tiΊrDgL%`sa3\cR  .C W*ס[aVR濪s&ʪֲ\ʕ+jpBNbJq9W8]~ կO8ׇvv쮡٥o~wU[t:Q~J9(/ߣ~HM`~_=Q+K -aޱ@dC%\V*qN63)Fy0yNSK":j>W\نM?mu@ms8z5͆$Yf(DyI.bX#@L.DVÿaРt YTQ{ 4lɾ 5:O{T`ЏJgmOMa[© N39Fs|ԍ&‘5G~j-;w1Y}Nz57j+.pS4ccYV 'q]1DU 8GX&RHjNݞlH^EETs*#pGJs@Ý gvȅػשuq?`5Ap?5 {"u2j- u.?]. O>iK!ߒey kl4,>9+ڝH ͤB1tzWr0돡j uX:] c U^ d_rPִ9e|, ;Ak ܴVoL-(z7:1v|IFzlCt3!K#sܸ)+q6s^%k>U;!.T1"VVx樥%L'3< I(Gڈ%N':!=em&Wsg@J-Umi..nn9L 7~R#R3Q(K>hk`M<MS܊v0GB")Flc(oJz @s& !*^ў|OMpu?GPަx=n({uS1\}% x"̓wx׼_Tsϊa־G9l  Үv5wf'$J !y׏ƚYJ c^ky/RDh ֡ r-NF H1v5=_r]ȚEAfBۇZ ud6\2Ԅ`[;`;e(o"0=B?Xe 6&Bt nrYC5 rvA(CZKoMN꤉xpnIh/mD3VuYÙ%R°۰gb⟶zS.؟' Y=Нkr𢰹FiFqKm)e"}t;N!S#Я\ay @ <(4C?PP] k2d.b~oCSpJmV+U*oNQěF,C[)}iz. v*CDao;ܑ_sȹwujϑנ)k)47arjb!XXb[?l]r Ar*+ARJ2l,@d! ->6Z |1݃d0YfQ6եS nǕDh|/އ~a̓ Kh{9]:ߵg5uGɲ9'R(<*ky 3&XVNRk­7 ^Z- %zơ%% qR2M%*hC1xHn1jǨJL+Bh̽vTЂ'߇߄K7~/nK .0tFm|ZTiKlm9_ i*@zO:13heDJtaX픚 KusRKЋUNB^퇫72!'My_\l:3imՃTܯ.zDjC~[fX?4!A2f єTBxĂ'ꀉk`zB*eka~3t8oޡgxG}=%yMqWe A8; 0 dG1;a%TcR=^/Fo~:yFo |Ox#+342 2r=_RYϷ<ﱟ rjsv$xzal15y y(I +zC`1D1Cxw?3 ( ׏؁U|.S>TTGϫQjD+`˜_`TW7VUYogV2tCxdcϨ?{_jTiC2"E1i+]ٳ&V", %JjL4}Iw9a' ?JWM>qO_Wc*cOEUxHZrqpĴ$6R'0zoN9GTR a 8eQeտ|B*ꑮȬzTq#NSְTDEx҉j`(w=gC $}2, ]ٱ ppu>VbyHHu]K0ЛeZg|eqv`$ᵪ(&HV<dj.?p^r5շπNwˌ3$$'i0[O1$=9=R&H@&@{{PA쏀ubWm)7(0@ $"y$t ,z r<2yf@w|f^O=xr)ǒz8}9̿^u3u[]-~Iq%ǩ^woLzxe{B״Sib "[qܘ"Thؙ:)#]LN+li!&A_Ep堸&dwJȆ!C 5kE:ITۍ~=xlkaz8["ՙ3o =R+` [c0eGw* _j*`oZp? O^PyAPC_u /v$M R2Sm%7D{x$dݭd `T+hEc1JDžt! {'='Q7 `wԻ͐FOzg2_,M{hsgɽ=*a}D&x3"W CkyKy/j; Z)mh*m(r4Hv&IrKGsӂ=†*>3>!fP!)ʢӧ Q0\`K"<+il>^^A4{ߏA~=3r+ [iAE~<@mJ0n 4iۭ iV馂6 7I\ˢ (7@RL'R{/Iě{v3,1iqp_H]s!kᐤ-zc۸p;2pkBf6n .fP$ Nᨣ)jZBdª:`<4%+zFP쇥Lj8=,s lU4b\lo<HK!W]W.)$t56q`#S~ _=P7oVп$ "@HBWZ] -* ."ξCuQA UOʃgYM7MLYB󟖁8%~* QSqr]S#IxB ݀:0.ƣY;;=ɫ_nCGuh`,'c[Z3'0"mti\xL*S ]#Lq=iY2`eb's@UV:.&)/v5\uR4No}/qToko( d+ˀ^l ( cH_nD.Y.JO-b^0貛_RD@-حVI\a?@?"qwAJYӮa",t3P,:e9di \0J0ǞVV<v x+IϻX\G̡7N3C銄 $w$EgEB3e&?qh_pS/Lf%t?\,Dj_/c}FXuƑ,zE7cCLpdB yUb}_#J B Ud +a̞Qu|L*2{Xz?@B,j -yTAUO5<-!ۃ i]qP/&ir8c-jskݰa̠DӾ:h峚"7<\#РʲQ@cvmTXD;0|E?VM;`d5$6Ue#b<×9rV҉ԠF:gY.6S/8q[e,g.}̟_=p:ep@]Gh=)q^]1(je'O8AbǶxr0iuH^aChZIr$ƨ;j lZ0ֻP+E MD>M=\Y3G}r6iS Q7cAHe?s}4YT_TE{L>S=pڤTv9f"L_X*SbLz|sDDGluc{2楬Aͣ}mWEv@LMEV  N!UEs^Sͩ{v!U^qhR[#`ڿfϔL{]T Ft.>CCsV,x|hff @Ymy6pz湕Z*z9|\R[0d_R } 5֖9˥aJDxKRJ \񕳺%?63J'q/U;>C䠵)٪1WQ!v?;:Mc3iWҡA.i$r%ްȝbWyTJZ]C3YgdmTfjK}&~ X>ƻzwhR&܈]GeP,:]|N$Gfּ.5e"lP^$aeG buWU|#˜7' Kv#;Y&j>k#+]Ij<~Xv##cS_p@()/N]et`QYˑ+E}oKkÌ_Xʚn.l9 J)̀/;qik_q$B%'vt{iҖo6r>MoG$RL̡?AQ^ݍ41dύ٢5<0+?r[.ZS^_5 чdɓ>hbfS6L 9G)#/ԇ^;wJ&AƳb}EmSq8ƀ(ۗz L|?RUekrx o[0leaf°<(ݿIZZ [;PYZD+AO\jS ">9eY!*m'oZ=^|fH)/b`g eM`c[̭75RX%bq8C}@8%ϯxy!.@W.ʉessq7wg;?؍[ChK(~ +C| ٴAt~X56z+Z-t@XiUUەy6D6gW jrce hS:wqsA޼"' ToN5GiC!DliPTb >׳C5D#c]"$yO#Xk dߚꤼH.zjR봖iW1kVtzȑ&-WfSU/}WV@XOGm\VQ)۬áS0.O02MY]$(Ƃ\*QQڗi9°+_޶S1 gϑ 175Ti<By Oc>㟣!z~i{``jNVfgݮ&" w۞{f!G0H.;cB0yj^%:CLl>Hڋp%g|Q}YsP0&8Bô ̢D=eAoRz{KǨt!+x2!o6ckY|S Tka|֬CbL35P<LHLCKĉd (!gGCNOd!_;Kϋe#8rg{+d](m - Q֜)yWvGw n.53#zX$g<'|F z!Zx8@ B6I qk rۻHȔl~ssf^#OIӺoLuO/M :[P2;qS1;=u4^ |G 8ydZFZx ̰rM TJ=H T&1 `ÄDs=3_5ĪiQj(qRW(X1/\J=S!}rqYCvE5,XC@RHI zJR,evK!-<,p(?D{֋ 'd8io3S yN`4ј1m3b &\k]Sݪjm,k]q&G(&cD(3<*wK\ydPwxBXE]/P𘰕:Vޑ0 dn GK=;4M ,)d5[>baα\?`èq5Iމ])x\K^iS;'dbG+IhAWỏfz%F(-~Ůn Pr2<\}7NX,ގF:BcXSZSs oܫ*th}̈~Y$ЀLg$83FC v mWڭF8OL޵)_0lb'`Ad=Tq쌐(VU"qeA8cK\flĐ?iS_$+1jS^g: P6kȷTh8?79F"jG4 %'fˎIƔI.pjŶ[<5 P¬[y1Ms^vm4䖄9XExU͎O8xT7 PKVn KϜ]5>6c$U[Dqڀ鑴"Oro KhEUЅʍGO=Zz _4g1aQaܡq}HāV 5(CqCB,=7eLfNI,y:>]^:.#mxqrE*N,N+En1xa8ϻv m7`Y-U~v\>WlWvrc?ZЗ0 =.Dqڭt$6"7 Ox -ǣ>[7{l]r'bq6ԊkuN{n+zHe1e} J6/ nDnMcf\1{Z iL'݌6QX,8t[y*x7IzqpRG&'WsM0 5bm,V}#b ۂC ;ŀ>%W!T4bj8Vf 57<P^}spIYZr(2@w^(ZA ^oE+iղbW]av)xK͇pqBp~FLcHO [LK RLw{ m2~s dq(I)}KGIDřUK*?B1y\os7 L+ Fw;eWj$1g# W |ѭ=/` \~e-*ę?W($qyDd3IM%R/Ġl(#`o,W]7th.oŹ:{Et`f%&54e/a6bNF|p@&X݊ ^Hңb!/D-r)f+$H0% Zxa)$1gN~''j I_]EU!v[;VW1 ت,FO I Y$YiGs.FmoKy @= œ1 Ba DwBmWBuAG0hQnF2ll=wϜ#|:<@oeTzH<*զy3aby?X,xGt2!L'm- ]/H΁(,[9t#ھE)M[rm^KPlE^y@XD,UhUvj-I@ WJBzZ۾%(|j6ޫH$ou=#)]FwV#Kf0q3G5q5;r!_TXwvg '-Y ufq`8Ze; E|rl8$9O0D)ak yv0Ǡj I7Zx7D vb:Y˵iɁm]~`buKD1W˵0uꞤ7@Q"0KYA " ri̓;$+ d?(Kv'k &ZNh8vR0vnJ IpQ0wΥ~J`0B3;4OIZ%8ЎPO [i]* cRC|oQwmq7/b9YLǀD 뾕r-tј'𩊮EFkɣ1+V~5:_JަDca^sxsu9tJHln-4pə1aT6R1gU0n=KtOCÖ3 ew-L˝PK1!s;lW™=J2YArf6Q"^MɌ%M@RYe#ANw:a+ފ~hjs& 근vF趖h-- ~eoe#uIV.Ƣ`sIHZhF|̷iabڅ$|$FGqlF:yx凲p< !DBdGnGf+*;1*Q]3-ٱNgC404>'R!N R 2zc]+x݋Ul%٤=riFDfBH1dG֒m]?u\-K)c]n6J ԐwX"|x~ ޑ^'_e-A&4ߍ?A€PSODK9=6C<"F{I">Ǧzd)1H(Ҡ8~-@nWM]q6s/3&FoqܶV븧?M[#u4å@Ёo*vMZ r}o|98"K G uar!m?% ɢ>#Vͽ7ކOCiFte>KG!N1g_]؁ `J?T(zNmP7lŪ h>-]9x Dh+tGu>$CrQ _{h`W0Y* w֑T7ס\8ӮSM@i6ni*ivh$ITt԰,X\d G ?2lF%ΑuEH"J!L1YlzRXz"` *B; /tL97drkl$რVÍ2_^[7t>9> $e/LUŰwxʾ&3gyEПuIUSbT=0׼!@ax)ރ>k̠#0d!ʪ&#C(g-rXayn{gsZuK;0iCx-I\zkduTc@.o{!Y*{XH;'%#e%E'/5W/)8|?#*߹z ZpW$)WaITAG^0I%C#JBՉ5f^,S<oDOj`fe(1,Bva8Wl~ۇWIFfs-h;C;,[cA+\GZ|FIj5 ~;VL N([ 8|//mZƧ| oxhs?֬u? ۄdiS 5upYP0wR'{_j/HhbnI*J;/'Y>? 53ɻdAn|;,G7&m%q1c 죮m|]V3l vГ lTD0X$23t&E<4E5Ӏ6]x-&-`&%(20 ˷KYp?؛ f`hh zU$9]Cć|k@i'ɞG2"SUjʵ hf%ܥWrN$%1iS r0Ev=W+5#7 gj˧qnYu%Ƥs-2uƠ[W=o ηz|t`xd "7|F1ӷ6 qsY?b~W^VVf"d T>~ZNIo/{AVُ%:c ѧ]1ȤX5=uF[/[_;>Izypy*B–i!uXlqCpHudp]}{8_p NRƙYT<؈v̪y{*[B4P $ƺc8UoQc*'* WOc[M_K(۞,՘Hp~+DcnC+u8.V Ȋ㿶G7r=)چWmUV/PdCthz zE߉|1 jJ<+E ?OV֘tNt' Y$` tg z.Zyp%m3_KO9_Xy ]8t'Vkh1nٵWג b-DaFȈ1RhoNٝSetc=w)T=ޭ\ ֨s8J* X*OK894gDekߟU4M(bmݢyQHMG7ONs_TX7"zƥI~Ƹڼ';mNWV^~DXX`J۾Yb\}91;SVWu<r [ޚP ȓrفͰ@Dt8܁j5JZkD*=ܚ]h ٭ԓqD8di24hס$Ϧh+n@mBQ լKv֮R?#G6#OB+n A <[Szl22ծ CR Rx;xzнtz ` bukCݢb&`箕ߛZtMLĩF?DsSPMy;y>#/-TMpY]uW-[c19fͼcGmm#2PC$ @:J`M 5oŒ(ŠyI*q"&(չjCN*wt F+'|ҏsʹ)eů !N)'Cgƶ~!Gt\ã8B]5)GΌ5{tg˙!ĜzVb|trg(խRo$ލ;N|,OfoΞG!Rt6U R0 Աvu04Ь#%@=mJS5- |=ZVt<3"A rMEl9Oyg.toDo(C90"zb6"c@\㤀hF>!wF-X&%9Z\-:{IrIb?xlS4KO W$':%8/$_g͞k-JC { gY*axw\6nnJXj p]E'nq03d+3G4Zj❕[2*O<)Z?u,[H0xg~UDje ;Ua0)/&vW 1T=[܄vA٢Ps`1˶# F`>r6'5⌜E!HԔ)Zoo` +A$&qV,%CdH+c3=:oc,9lNB`fDao;f墟(6(N|Zkmx8e-|}pTQkhakU`rX1{ik{%zq;9zl9 =i[zvmi| w@[(5`͜Vӡh{ OcxdvU|=۳/Gdi6࿳6bm?4^2 nvK<ޡ@^N-OY5!c6DZ!-z黑AxK;KA+8h9CDʠ"Rkf$b|kَw9]9#g>աǷ_[N-$^{52K TI:v`z5>c%>|{}>X~8(RҴr$ )!YF҆ *OC ?Yw6~FzڈkYL]ԃ<4vod<Y?zMoF Mo I2]㿨P~c$ -I)0}4iclbk[ ~Zvs5090@?YyyJw 9?=磉=c;`|O$8wc X(\"[W#=H{\󩥗,&dhW3~43 C>w0U/]G'USy}8х*ɴx3~;,uV'̀gq_Z~þႰ%$:BʵJ(錫BDL1"ongd wLy~Xt`>O {_6gFy*/`O`T[/ѩb3-vX-eJzL[ʕ/½r/ޞjxZW _VΏXY(˭݅3i^8kT2N6KZGlw6`%Zk*`bRL7`'c^ЙS77=|q9/zJ/?u尜P'$-2^:%n)?SmM_ob ,; s*KǢ)t0ςi]?T ?>eWyx60٠aE߫0Azj& %''>j|8"LNruY$y JvɅ2bQ.G&G U8AKwhI(lŀq L':ܼ ?)j NK!8CFi ILbWnY^o V!A^^碚!݀E@C-ֹ !w]c ED 3 [#>Xr 6fWŐxzW6qw.4lΞf㟜j}R|Q# Y*VLTuRLv'$ٰz!%噂n I=r!uϝ;YT)đ eU ZW3_!:}κ==Ŧ/EUבtInAJNF[a-ЊJ^B>$iVr\d )L@;_ Xr@g''4'][Q<7,OO] wC ܵ^#4z38Imr7A_Jۭ3B^ד*_ Z6"=3%fNe V-)xi~M??mVN>`}G۝?m^:enX2 秴g-:=;%<=#'3̴"ҧ~1\2=N؊!Ҥ[qR?zAdybc©CU'#U8<ˡwNcSEw'3SlqA? vfx$νx9yb2ߢ "cZeT)!e/=Af 7ieC\Dn]auI?3i: 5x">/X!;qKƊ8Ygta fW J~eϬQzbDi~KWDqznS,J@2SIҋz .4)/vZ!leK]\P~m?&yk7b%8 "_w|>2>JL+XM*Nٷ^>F+he06(2K| <_Z3D9ΌVbvamC&נ-K[ԵeG> C ?p@* 3e9:5#Bw]3&*Vh Ü,KǼI.߿Sp0Wt˴B&]V,m'ET}UDbb3 >b/ ˁ-Ů)wПt€ahet9H"8-Z< Q&e#a;a]ٸOmr^ p] ^q⟿qآd2i{d:$x &|.-4Z~oie˘h%lV ccJp5e`ؽrvi?ওSO*QHfr`^ӧ :9=#Xg18w= QaBg ڦ$&j`^"Yc }[z^X:pWM՛jc4CŀHcJf$kn_}%oڦ6ukUzAvZv_~'ⷃYv㢐mA6"gM-.q^s#O66C{ 6JI(x(-M {=OڮN7DMV`9uI1rّ_mI^B!#' t= bKj$7^-WٹGNR{]V7U*ꆺ zSLx*E:Y9w툵)<4[ ^e<{PT)Vgo#O!JaXk^P  ̻M)slZKM?݂)RĞHV̘;ĶH.pBp$(B\ i-0|^==΋SMc EPy:%~Lscƒ Ȟ\mR/@l+pi7=2(EC&r;W߈KJ/ia Y响0,)\p!KN2ng`p~(v*؛_|:Z[pt^fYxegk8( lj+ )w>}eE&1ߘ+|ƫm:AS 4&eEF{u%NqeeOqOo plB_rEt/Ƃ{EuܽzhiטSUʙ5R_k(>?{\:D=ҀآKRD!|TC8\wڍnDŽ1#Lۼ7=k='HaQՅoVoÑsȬ6Jxua0|&?𪎾Ui~wx*4ttYQKC>911ȑcm \_zEIU(1yWb/ R3G6o[/}~ B6p^W#>,$8#ަ;d`wxWK(tom/!֖wݕS+4{5U ;V4YVvoOM 9+܃?W+',גM@;8DDgظXbWPn`P z"/i7zA~g"&ci|~̴ @Si 7 .<4~V a&nGBЛ^(q1vfՙMio!(Od3Wot(7 zupN&…Y]|>l9# ⦉81zW0f7TIm*\ش"Ck &r1V)w}GxN6b.ci>k jFA!7{CpW;M^h(-(YVl#')Q\$RDsbӌsXb׵OWJhz1xMD@Gnlĉ;HZOfgDҚk6v0-3M1< zXz%Dԗ_A?Q( kPthv_ߗa8{!h6o&NǦrê*#MY+]p\!aMBf_My>ib u!3 4 96[\ٙwj6p*yѐOy*7a 5ت`ԓ4̹['?P0 P n*iQ,IH X)e6rAm#ɡ=y#թn2# ~*X C>\^*:{'j)5{ڱH#r)ZJ1/=v͘&'mN N4TVU{u),[tCFY+eO/'pFzOpzyP^?,wb-JVKVZm *-R1NX4O$hi¤ԈUxojקtvwXcwíaJ5kP.Re&IH27xs0Tu'b7cF!Rx=0XMUqzR@U.bJ+rV+ t/Ղ?PF{:2aaZ]S.AErdM%X&G+PhG}eH ͬ')צ7mtrMCWFl$g,QEYY1_XK_}TaۣYIx$cwѹ5?Xة9(꼪aII|j# uWøgJŚ̴c9%b"2> /q{PvJ0mbKiO)֓$eǿ0 ꏽlRlIM`S,3a߾Wp<V|(gMmok:v\5Yl7JzI*U[C7f֤(0b Ywȇ+#KH# wU(cw63ǻwi :kHƒU*<Ź΢ݩoӛ eS8#䵇Ao`4yR51'jI)ϝ0Ka2 5\j8֍?ef*J::t[AG|Hfޜj>k{D6ƑB9uoL4mv̘kNz&[u,;@e{Z"p%lLPZ$}uI`ϏŧT!?k~Bh.Xu6{z@[ooOKIr7H@!;Dl,aM  Wd'Ku%gFO-nY3? ^cCN)첊-'}rV9!jYmlKW1gLX WkAoxʣyhi dWlv Ad|)D#X\ĭ}KG|`v$bGW&hLaqEB.'m5! {Cʀ`D+2+ +s @׹0܂^Z&NqŞEuo2j W ÛFd$%KU@8l1g|S;/oY_c^v+C&0ޮ|׆87 $"L'G (h)(`H&[]~̐E(q"dKbچ<#_Re3'!<(cO쥼Gu<gJ\ˋߛr'lJsWA4'%D;=วB&nώ/}Rt, -<1Of3TmF^h|ySCDOBF1?xa.KlwԮJWćr j .X7CI~[h4FcyDP ;ނ?P5tWeھ+z  1yl@Yv[ɛ@GCbBqUO" }ڿg $ u_E2;E +K3VΌ b1y |~JY%1 ÷Yҋ(B7=Dp3:8sE8v0̹=N=Ќ6 Jofov7(㑉9?DiD0Bj.VL®vK` sLi2#!IOB%1UqQ18+x3dt!b{ޣX"%{;m%|"ʻ>hKq='l1R'ciP:Cbh1Z%l&,a |rW;uf>[vlSTs l&bdT& lqF<y`E:>?tԔ3hz@zч1JܒIQT\\-(,jh5smgx!<)LhTĨ@Qo8[vƒ,;Hed =HJX7Jl#ZڸWկtb;Fb ywoZ~-BtVW >#_9n׋׺TTq=>GQVl8O"aefGíE8\[ӷЙ3P0>|}XRa}GH6i a }U)RF><ݘө2Ud f2pA"[c mr$FaSBD ؇X@qN1TCsY43g{khV5!B\#|FCk8b&״V{L8V:Q8pr :bz>G{ɸjEFyH ǡl^Skʆ 09V F![" p@.`,tO$_4 Qäfn lܝ]sTK8[}s;e=a&z ֌0Dt3OU~M {,qP(B#f[@o"V5#dO}S篰 = CM_29odn2'r['ȺRkTIxÃj(s*J/SN Jy+Ҵ#CZ!7|P-Dy寄tȹN:RF" e63Bx\4*S%Aӏ,7 GmKfނ#uxʞ0#* vgB"zh,*n5P dCcv4h"wi+dK/[6.;;.,%.βa0F^V=Ys uZXB&`UA{.y$W:Քå)g{"^hwq+q[_q99 yeG4[)?$iGuVr.STnF Dpo*kEt FM쒀tÐ0M=a"p4hFv!K7p&`x`%8m|+CYv{X"^v_II{d)x/0((ƙDoE- M^륈9Iy?IZ^[0̻3^zk We/Q= ڿd#b"8ClQGx O%j3 C}1GG]A Hfg4j~?B{r}Q.O~;\>t*U?6%PA4F409Z}&#T)))'5WH8Ag Ur"_+s! _C=* ht~%@wjgm4/}J’0gHmlǢ$ nR7+)]nrzÅyk^4fT?*vTWčQ2x۵`.cK i_$ 9eq^d7̢ve69D^fC 7NR㌂#mDZ:(P,UeS9"x*s  >;^LR{g^ &!R3Koͱ:`]AOP~#hn<I?ѹ ;2~ܥnr+n2֘XA4H9k?lNڢOs w~ c*)Dȣ.*6XX̤7L/]azQ~%rGHOW_qD2uWrԎxlG1OOx4T*ۉ>wVlH8rEF{Ba+n=(y(f 4+2C?)Wl|Χ;ߣ>45#]D0)6vAϔ-},"2\ۀpM$\*O (W˾SȞMxG.MUS96/,;/1V{v2 OvEz&zabb ςkyeZ\Xmf{<Ol۷#n7zUvDso֮SBb90m)8%!*fqZߢch&r=I! ucrHQh4U6(L΋fA7K@jú5s6la`쮝c7 ,y/Rs my/A9^ϩr%JB%2Gm9-龮x.E0\1gm&'(Z*x+zͣ7bU}Cl ܔ]/t[|S!ru!unVW)IO .ÙKh^ e>cr{jFGO?#fܥOwܶ#5#\܊~SVD3n[}248F{*DVZj Uaz^'l)`6 + Ő2+!h,<:T .>q}:kad_} {1@Ѕ?i5^Z'ٳ!D/w ^2K L'nnyNp ]DǚaTs!gnR/Eo1i|>U٨ eS,^jO{\,sNGJI⚵=)Wa ~d=Pwb ]iݏ1vt|B!}`Ġ>gH rk"ߖ_m^Urˍa3mWUm+, ܂]?j@9;r xfkv兩ا{?/Y4Ԁ\t4/N9:/FPeVWl* ]uutRХt;I /AAِ-*cg'Yт6& @Eu9ۭzh`2Ѹ![\+ ۸Rv0?  +#(}$;E ^y!CLW=@lM2yaDZ), %B:Q)/WbYI*tdBPPa2aeF%-؝UH|O+>TNpNdC'6]!46(@CMn/|q?4g[D"W$}HN~ mCp ;T)1J+ R>y(02ȯJiԢpj:L(ac h'~WB(@~LןMVdU3j^u=oEXăl62&hW]u`\D+e0_Vڥy&+56YollR&Yn嫾S>WYc,.:aŒ:-o+d钦H 0Ւ=l1N Ng+@+-[:~2hVL2AlBC'fԲ{?|XXh!&QԪ] UX䒒O PkSq QY4| cs! ce)yL lswC=Dkv>"LI'5;k8W,|:R+ k>U?9̯bc&k7q3iYe[=۞+Sd$Ua/H ߿6-#w-|~JCʗZ ȯMdӍ$0&]zT4Mu]ǧbX' [뉘i*}a60p7p뾃vb :i2 JHVD(Fq>% ;JDXYگ jRi}j{2@QʰYg/e;PZ09'#X$ja#,,gfM%3óBQ嗭XΔ^wfby~ hFpkL69tN_5$ʋ\utLD\jO ')}-MD(F$Cްw_o$.&!fx'ziVlJ[MbޜP@ ~p'FK.싔Na|>u~%'֧G- uqg%i` b!\j)ﳚnw5,@>׿z<}>JΚ6PZNtU(/+2_9y^Oj'[hpk«88`lU֙r8kHJ/ ONnUoyltvuԱO|l7Wc'uxv}%m񕋓!)~cb?yW7W{3pdVAaQC4<6lKZ v@'zhwW{S(ɕfiG4[FMeFv:bfԬi!YWhh*׼:.g2]EwNwa7y# mRndlwPzyJ"H~#f#|䘒jD=g%g.J+Nڃ ;8q+ 8ȭqJ[_Bz%-!r&V5 R;/ %y&m$,~ yݏA]&yWGi!#8&_0a3}Poe9vnP:Q3X.]eTwEƾ%e _S˪hb^ZJ+.*GKF04&ETxBM NHVh-„R{r-mFDRnwNj= `@A|)rJc8:,l/锞TeBN*ZAUK2֊^/RyldlՂ(8Ȳ'ƖVxG?mZ]edaÒB3 4n?>M!-k` BFf2ULM A}%QR'߷tµDZm}:/nm?*AscqBSm7fuYuP.=2ooMky2֏]WW*K%1'sFv tT`T ]Z5my KWf 7O0 ,b׀$;h<\Xsk)!KZ9].4jQ㠐` Ja/WݛU=iq7׺4 W8Àt@Nlj/p\zMMɀΒpIY09YuDM ĢGMxwIշKB펄fGK?-vʋa#yUy%Gs30"];oX(R AGZ]o(@U DNOOՄ*sJ^w{Lw+sx]2'B"K+ݓKM;%GPߨpOBGW'kg?72y8Yt^"DzX$uj> d5*l|?A:=B';{^WGnn@'\U `j^f]74z <+tዿý[ʭ~צ|Č8ĖH j2fr09R"c/@f@r~㞽: jt=Pzʌ6*bM(PaƺM!Lr8hmw"b8hU]qWXk1•'aHͿ>䳋QA;* c.Y¤{K+cndwyGX[Lp~l1஼"ʮ X[-u! :7MKK׫+BG30m#wo#zޝM$VE.Y9|Tοez4ަU鲲>9/~ T6h HU+kz}P+s\R!kSd,uMT`refsxD~h/9ggs:QEL.j))C6K^EhIo3H`gU3Y*qnYa1Eށڶ~?4'K[~}Q!y[j zPU<ۂP/ZmOXq8v(-p9p8 /;:+1Xԋ݋.7u*ƂՓgA3c+pk.ĠT^pTz'JlT/{vT;xa>X^wR֖g>s ~83pHI&V\ >صj0iEx蹓&(@"1;*t&dz9QiX9Xjd_LP/;ITk5"G[Bj`]^\iន>۫Ih߫8Em1ORxҢf#9yLiA")/cx,T5xQlOݒbE:g$cei؅^'R7BK:6Hk/?ˋ}鯥pOcPjJ$( Dz9B$Uh3p Lk YaA?JLti?n)J^?;Z}݈:?Kc0pxRIZSCEl 3:Rw:|A4 Jժ͍a?f iceR [ / u` >%+ *^XuX+-F`8p9u n8:5#9v$= HE<2 @iTixCN_.]V'zBj8A@K[01PΗH6?$D2?;;c0`;E_g;rtXc5.z&uM}kJBg`g#`ҋ7djnH)S&64T9iX :| BG~~Cȓc9$SLB]d$~[cFOIێ/jxDD v[F~^LdXIoHhk.ۖSlĽd uT]4{ɏ}*&m+1h{4/!\z͙H`,OxB!a ?(# dR;)P]?z6$3tֶ:Y*mG7K7nRFQg\Dp`%MQHKz,Unܢ157'  dEv2:p  Bό=h9w ݕP& t$FGutazT[.>Lj{-.-oS%'(ύuSMiT3l"Ú2h/]x1iw%;HQjrMHD¡fKRԔ?4eNHk-wo4g?ek#aJj8x6 4xo4~1eKMd)oN 8qDF_-*'fen=Bk."k^pR ?,,&%/X48r͊X ڄ.HICxF;.=0G  %!Eb~xlY?1M9GqVBx%@1"_qnď HF:me ͨi!dŰZ_׷}rAı2cc^;RBEKi9*STN[HMR@:s@җj@>oQ}Q7o/W]Kgu.߂S݊Ny+ e"!qVLU?k$7w,ar-y `uU73LK86֪S^;߄vrp5+ W?ER<[jՉ4#8E{N}]  '^kS./2 3 ZǞX{:#FٷgPiBl ݠ 3- O-܊q v ˄BBGh*Kqy̚ >d=RqXJvs2JBt&)1WgV扱7F{x/|h6OGԈ.nbh6G.W_h"4AYXu ^FuKʯ'TO2hZ(3f^JWŪ_$mi+wzÐ#>p]gJ4N1 1i3٣-lMW^ۥ5hym Ok,(ߦVQ߭IyvZ&CqYW7اyy:X6OxT8F[ ll逨n J雉gh gR4>]\H/pSRϳ6[Ian;"҅(KV&k-1Qt Ķ$H%!*:Ctɻ@f97* x: L#d wHz_ PBz8 2_a1w$7H- D7h" .&_n؊0^u!VrUe׹&)bhEb̕դ#`Nr{qh9 FOLPu#kk4<nR(~ 9/Q@;1rN_E 3 E)cUzjzr҅7d$ٳF/?vɹGW~4υͭ dhJ(#sk ߲/vCo  yC{;A{I) g -Ʈ2ť'lz4%E}E>0 1@ny,yN$#2*U;-.Ϊ˦QZ[<e.;uTEXO&C|HA~SNĜzVqokhz%eJ _Z+7-1PsfB.[t;U~ZC_-?3k]6woJ[ZALCTVʄ %Ըy)thbEUI/\vvdl_(VꎁF3~ \pΛV 4zȲ# Q2Rs'MAxtsomܙʞ%|fa&Qj^:=J9wOh7ڗ>KS; TLAa?)Z(5zLldq/2ӂ%߅]#ֱlu~j 7TN(^6ÑG}Sk+zC4LОހsh=5Ymsv %:.<+HdUR/C>h VY}bn;UlYr+u~~_Q92gIT}T3]︔Jۗb/J7V #7{%T_8Zu)Reŗ$$\l6ّ-:(,o`hf:.p9:Ƒ ]V8Vgٱ h˳-YiMnxpܙ!I*ԫ.?"@ x\[ LMZֆ%Q{YSgUfg6ubq׽r3_ v/z](րs#,5Uu| E4_4Yv-,bӠu9AA)')Jy$VZ5!6, akYd>;pt.U#3~<8sSǂ$C]gS5TR=6nonDh(a]LG2N .8U!uӌԉ e[WbBènA#6weҬ斣6,HEj`I9i=8iη6y(m'ү(k~b<u]JD%Q=v>=ٽXJ֭KQ'=o%ӛ/Wa[SaW px둼3⏢8bmz,OHc;znn<M%Epy޹`_ U;5&EZr$bb&I4y$>qa[s %"PؿSg`΀ b{`7 f i⇮T(z^IV+5zTp~Ry/U3<-ibzd@㳟^+tDц Zsc0Fdp-J\Fsw GQ Ѝnڌ|9G1bϥVj'^5ѣd2."r*A{A?j /} ~6W#B45\#,{޽@qYyJ CiIoNum%?dox% }7i||3[ q{ݯl],l[eÃ1ەl,68I¥'>A2 )}$7΢-z ICKq1JH"ֆ/ VMʋu:ڠЦ4 $Gp .ъ.xw/bUV.ٹ\*:e q(C ƈH "C5st ;#m)8#S`gTfZ܀:4J3e (R Hi7 (a4C,yhАj9VSqدJgW& Bgt$/Uv*q,!ǘ~?uYZE |h\R/H?"F _]:asV(&9]b꬈81EfqU}u s)?Yu[w,;IRRf{ƟanqhlX}rd9ru# ~!9feiɢ354u/H xy;[ 44mPe,aꄴSǙcu[Lcjwfbl,B}Qx*R-XFK9ּY6;WER1g$W_ "M|[u!@]Pz:Bn7(9^D8ܱtj-QXDZ}NOϡ܀Zl6NNrڇ`R$0m`h.ƧʒKLց ]RFd~At$ ͏WSCabuaĆ*HLۭw#`1n$Zٰ|]3AB!ŷۇKD9dLr軄V﬍[jI(6dtc-ߘH*6FʙtJ. !z>'jSJG=^>RYwdYN[. AxmJL]J1׃=m+ aAxψ*?S-"gFlKXQE~A4ZSK>nc:{wÛ| .gx(SW1`|tWx.`+VBD0kqc6FITzs+,8Kt%zZ?պR򫅌Il 77$ldp:YzރS !mȤ-'>S!wjlbˣ=>.KV]≪g"VV1[8ݖM?F_*K;Qaߖt2o4zoO)Rћdɦo?ЦzHùWCr5&;(PBftw؛wzBaH`jUR y^4v?IE}Ev1t>pcmRr* _r1O&؍D,(Ebkk#:\(r-&"Oӟb԰u36i݃:C1Q :ҦIcSkτo&>g]Ds9oL`>{3Gw}!Wrn`i]#]Qu}| GfcWjݣj+rtVHbz1N/ ?U43I9w\;̰hXW}xCT"Jo*Kv 0c n(&7\XϿ؛Y0s4Ѡ&3N\'!OVD5f`տ\ȇ?HQ)t'P>{^" [E9ei7dÆ Cނ@lleS~%bU>uݔ -dtz njKleAC |9)DOմ((yT 4ӎIƈQ \Z C bjUp124vJ voЮTf浸ZOh8;%%8?U = ںC = (g yI74f܆[b.ɂ䭷2׻:˔Ml5v= 30xYÏ&ۖU| 5p\o >H6d,SaqJ\e Fl_^7t྅.d#/_joIꄉ洝x:NC"[ 0T)~ϰE80( M(s-|d殝6PFF-p``zȍ P[& ,X )v cD}&]@*yJcܬD#]ll6\ ;jփr+CXejS\"K.\7/PDo27E(cvg Qe_ 0e1M757=(?=Uwߝ.S`tB3߾;dQO$'i7.lG_`ʫ<_ݑG3Sm^[eUv7w8?@"l[.jk0в%'Hs}8@讲ZohN_{'vw2brC&|Dj45#>\U1 ؼȘaZiDdx gly 7$}!{%d(p"(diw0]}CêG˞x?-k|Wc1 tkh%xScLzSx1.hġ{l(^NXtj{(v)Fc@ _(VsrȌ}f)F)j/__q򃸛To9VFzzLV4o&|aBz:f!VRp}')<6Oh}^8 2ءDep3HX"Io`x63:>Fi0yxh@BCëH>81Z*JsDT[ #`8DbQ\0|"1aOEWgqgwe4zYcΉdhEWN5])<틞 ~-qX_M M{xZl䄙 ǥ,tiR}6yױYZv!Dϕk2_͢G=کRZJF166Myu€;,~KR,z42Yf5–*/пgGQFdCaO&AkM q5|ASz^GkS{Bf,yC0>^8=^_@bZ3=naj٤ Kƛ8:+yVPBlk՝y&;[+6B4Zl"ꆡ3[g1j >[z;E{vqf&zQ"V(jUnރ=Xs#ܼK}ҷE5ro@W{K/֜Pm1љ;&`w5l~嘕59S@1Ht|Wh6W|7ϸq@KK~qiX,?/W8._#ԄFL&w$fFo(K 8ϵQ+tm t|c=nIsv< @aBdlC)&0,s`)w;MHޖl*sWZBzSuP':5'; !]}i b0`mH?6ΡYMG.wQZCDAd0p!*\GLRS9,e f:VX+| 0]f<-\oofхۏŶpTVȥ]բX[썩: oQ4Z+?mU/ L Y7 frlKai)k Ab.2+ m]OPƃC3<]\%+ă"p޷17+ #܇+g[a=m IG, dSlӂͦZ(t cMzW3ķ<ԑ;J?eSϪwUpxf A83#]2>2u#^q68Xv^Q頱!x!tD!ִ;?`p!xAa0>bĚ}D(6AJx8J^eds+G7gО*. ʛOtǝH$xj$i!ٔ&X[!.W~ rFu9.>L^M y BbSR_qvٓu1ќ @w䝗Dw)!5rzv9[ щtfxk5P^Jk/seԜIge=6b=AR]bJ 9t U."Ӆ4Wɬ]l N*Ho {nzqDYG`{$ '@?IC]tK J/ikU$'i}`(*BQqRCwò _,uQMmвVE[YAsU H I/щ EÚ׉h1Ώų $V`,#.ޓX.f{kDPj6.\m$凞"[eڮ%M >`%ޗи߁ػ!>\xkFbi[fARg,2 9kUa+Fs]ڜ Oĥ0 )`gYuYR0n3C>}k!2㏺ADK|ߞ*OއkA.{զشwfo(e(n'Tl*:c{zF" (_ KE *m5Wsi+zF < ]Qr}[9 ?Q870)q"1B7bAe Z#iG oN?!)1`lփ?jץ^(.2҄&"=;LJA=0ZJO T[L>wlYVp-/va)~3@.VٱdAQ 9N9b /?Xͼu'Jn EtXRB?6jFYn\Mo{>☱X K;?c%zXGvh^79n@k`DoSg:N1aͬw{j5H@b su4zVbZ$,l79iDBKZE/}'hN)zHf3yo *2NLF9n jʂO5ed(?{pW&')8RC^h[yM4OӅ@r*^@ x\ppKP.VV^ƶaTB xE#ISDqɫM{ǖW]߼~M_Uv.x0TQJmeM71rQ{4x_ k~|H%dq2%m& 9IcϿUﭑ`Z!úƂ$R!rk~"f4c\Dkg txfD! ČbOg=K3F"rkK};Fe%Jx86m-媳77ӶTo"Ict /\i<+S>op m7`o/솅e`_Qˎ\̷R9~UZEcO fU'K$Y=֒p*إ.lٗvu7(ӓ|Y %%i] $ퟯsm5TtU?@fD6zzNաӻi=0/[YzXXb?gcI4>/X_0seDW3 .Yrx!T,_&EK@;NYFSI20CgmC> O~Ί+ VxX;׃jrAu/`3'"M̐@hqF8Pum`f[ߡ$5M $2:IM/kʃxso4_d^' ͖na]O6X0cۧtZ] ONbNG^Savg}*7# o[`.km0|C j_0IFzlC&s!8錄88rS(p?ȓ){ڮOYgr€k.2n{wG5ZQ3 ?s{&QmMI. X$z(֌ŌZ{ET:*>Ps?p("586AV{s&0WW0*Rw%|lFZy&csw_60|,3GA6n?Sm6@7^R4v3mMsc?ʾZi3{;r[CJ{0*3`' 74C J/)FOw}(}kU*xn@1PyڨDf V(*_凁œ~'O-u7t+ۻ#I)Бٛ=)](pdCipdI/gMHɵXw!(T=9hI󵔦Oi;%ЏU:ORD{&nYoF g8>Q$|h60I;rI2Vu?#QKs*g綄۟vk %Qi5N}Me]˓3O Fbx.9w7+/EkrE|k#MA8~K >mbi,( #살33ݲoXq5(F H/av{Gkٓآt\2ipGFfQ& ςO=斡5Liin,Tc5lrs*}ujf*Er_4L[1 IڙvnM]]%FVj]yx̔3/DNT~z2'\Q7( #lGS yVhzq `T5D׀;E:LNvfxuG5Up[:TʹKw>F[ow{"e}M*gi~,^xqgMOU p_s ƇKtoJ^%3v!HQ!Tc=ݸ/zœD|WYU譚%'ϭxMI7 jVz/ Jm`τ]P,A,D7F޵6 9=. eg3b-TkJv&%Aߜy.Ֆ-QiQ:_*ұ7#ašw! ~٤Ln?Z) DXNsŝsh)0bЄm۲7˒q#ttn$m< eYhdI2<^<5/2܀1<2%@|qd{YӞW~%M׮?=( 7u]ZΜMf3p2w;p4fYWg]<%GoGЙ1I $;(-8Fr)up0+(jz"ۗYҩ$h|8muViL$̬桼pm$,~QԎMX-SVZ8,BiӍy\ȥ1#u8*&04b9'G[w'J>d&>uI^h F,8_ [:;Pq&:*~I.5&Tb$/(04W<,'^d\;*qhM\/ψ#w )󧇄n5Jp6:"yVLA"EW sSC^f8W/y@eySC+B P_^<"!t3xM$0"ohrR3 T„zxb9P5*PSj7"w1Vd?[.& i>Ad{YT4Ԇ"s3F =4P8\oI9zb>om1$ mBjh #y PT(1+pܡ\Ql&^ Xk^ Ld]{q^qK+l՜s[+ؘKƂ~C^'8))B O.O{4}2B+y͏Vj1E"K^O}2 m`Q–%IwErq~9N^O?<^ akigg_Z@Q-A|j*-8 mĉK[c!Ny'r8"'^a7c< x}`Ai!y&:;0BQS[xAO \*åKwlk>_h6K *vn_خixtJhZ^p2IqCAD^#`2(]ʆϑHiܮO'HO8+v}2\zPpw$MWQcb^{w)BNƋg8$R1[~ÎolЗ~ٰ%C XIU<5W~(ۄ\<(f(IJZUS|2Q桚>6pwUǘY~MmPE%CSl̵d|g__s*·}z"H]*4{a_yHHjL=Mh$!kd-x\:.ya`eyL̛f9G5$>sK写 3t uO߼P;Z[i٬M[L܈S L$n=m_O:6W??͕?}0K LQ!-VV"%PJ/ 71"2T,&7/ba9wNyeE ol*j;Yn*6ݬ%tR61uµё ylP(_zkL&Z( zIMW]K3>Li;@y`FyT]☵O#r%yόdטT 5ijjQ{ O a+\Ţ7&v?w]\N4O5׵OߙQKۘ.S]VdӶ#q_!y.ɿZ?r`/^+TnOzwׅ#w盾!ZtVY.)'_85Wk2W L&0sf%=XaOK0jU_9Mr,VNzkA_ iq/2(>tqǀ-e-| ZOBZc& 'r쌵uY·2=}ї*mICQ٦w vЛPjFV | z}N+yX@p9Dx];Ƥϟ5!A%+KAc}/X~ZU"b'E=nșHJM/'KjK=W32wb"zYZaa(6 ;i[.NITniVۍ?#ybx5aذL0x,)8Ǫcjy]?VW15 , ~OUP89L]:rv87gl;5M9/BҭDgm Mʲd~8'l`.n)^WH^) RxN[Va)lnc+>gdԢ(3)B(F~ L[xZqw*F,]>[ٵI/tP JAH[:8BMoe\V(સ"8jVTxeBA`վN,*AQ4EFV:bS] IO1dۑCsxk$nF4fq1 KH}Icd l{?*.Y=¥"C/$sܬGTm X8*gTj:U0ax :\o0΄7_a] }V ҋ-˚"R[G_9e)g"U*x`" ԋBn|Kk=˺Ur[gEi#N+9w6z5 #cP~|AuWSseٲNe)v sϠ06BR'K,m,O{A w+s~ȹ/)K:z۫y`+^aS5z35ieMYRWZɪ,a IlºڀnB,#7cE^rbyNG|c?؄`-AC<\Iu%&I$l^4$v EVP6b j7"C4>,$xrAh #Viyٽ=WqAp/H#f(L',=߬Ht{y (QIa5xгuB(*n{Z_ Iݨ^F;+(`ΜFHKeHg?g\&Q"hV1W ayݎI|3A&z>]Rë(5]S24W2 &!w5\x?;F&H'oe`6SVdY).jpQ/Q'3U[K[j:GvB2TNpmؗms YXPc)ҭS8RWЍ33p#AOg\< 4 q=m+tUI^_ Z߽AirR'||9r t/^eM>&=8bdjdm%(C.ԃB7rY^ ތ ubQhM=8_޸.[")LAK8ȾV&c!h/~mMZ9N `'u)\v\Cdc!d>ܒp1Y߼(YK]Hf:XdOCXK -Y*b8ԗ"!} 9#o~v >ڡ֌@odB AW9LNr7 ƴ`XbѷQN@IR66[?^٩,7hYBZ9 %^!9/mB{?X@ bVݢQiQ'D1$F #_o1E8:'#`>2@+d4:Ƀ2g"ͫkɈvEk)=YX31Z|Îng9K ZUnr+_w"#f>.z\2ȳ;)l6N;_c2s;-30twhv}oaV$|lu &էnș4?ȥڐ.QA>q}f>\e3;6r,<7?~8,<膙Hdw+q6Ťv"YBOeTY"ixx1vH䆄5]gluar839A!KڂMvU"_T9u_LtOp/G4ښH(a :ثW=-à>6hN۩o!bG 6:]Ćp,贖)Bw~sH&`ô7JՎ } aکsqFhjc4/׉.nQ~/$лfyXE-=8<(Y:8:FP>ߌUC&' =J 'o ֹ%h CɯNIFl'R%t7$` (,μ]})DEjLf^ߟ|u u( A #A/8-x/hPpA#/5g033O.!{ r3]% .l6d7lsun: `%Vn#=[-Pa}BK/Q9$v٪ 4Juӕ}HNyH3sHN>bc{^¶DkItBU.cw'fR,NLe\+ps O@hXS1k9NFG^`R%zmݚVώO@A.go-[ݙGT)k¬o -v>  2E ho(ťT)Ue2n&~QY FYY/PScCwjB_3s[͠Lܯð6:ޙJ>9o4'-rmRƺ? zLALGOW>$>K;62>?_N4 Y,3*WZ!Fgi͸CJWx%1ʏ& om4{mCzFOF%Mr׊qzە2ꦨt&=WY~Ёnƻ^|L, Oc+dG]?-Sz%b#o`="k$Lh]"Z(: U:ybJ=w~J/yꍓ5+C1Ggki"ǿ]X喊~9]+sͰgβ~fלn )Cnz~os.G S $.M8ϱ|t jaD;DIt\n ,Ay>!:P ')|I)FcWio,Q$PJW^K!`#ioL.紟F`#)}K[sZjՄF$cb+h)@ѸEA/-.zyE=|{1pGn  "YRFDg0M.7ò0?9 쬪SڟIX[𝲝/{Oe-7T!)Y9A.YB*M2_i3vd=PX-3%gŊI0-3[>d=Y곇J/'Пօm셺@r Ⱦ"/-% /P1U/h%wP|%Z1M e"W֧_ ٍ:gO툈4[͑jARvߙݡԱ:/_86XӍ'V==;ݫKƓB]8+T>7o\N(E{]tp4UO3Ęw<#S|`U"=586VϘ̹!&P~9"81ߪJoV9Í, hRNJTR0>1؋>60+ tTCl o `&]\_@>Ћ RQp*m𔭝48/05@yx >Ӥx K"8;IMv +D[oZE#a\[wϿ-M=sRʩD ]:/ &WmBW;>@-CgPu Ih0v^eL!߽&!VfLUkP{r'< zVKGIQ^pT:M@x_r:?*0B)45Y3wC6ǝ[_Pw߀#ĵ2UȘp3K{fǿ*jjT̹gD@@>iۤOvp^lL=V[wiQIQn+bHN9e7 $"ǢN e(Jߡ'tc2Rp~5z/Vãi1H2gV"i({Q@K8 u͹qlχzx҆])E |ޭ|C]KkweD 4J&Ŕ~0G0Oމ"QBh k]DL@'ݩe1Tv#Ig0f%?$,F?Rd !:RjM Fc~8 i<ɜt f^x?=jw[s#`t؟S76.㗠*҂\o?ouS;cT q׫q׺G9b& o9{̈Wտ!. nS*?Fnul]35>Fj%-{6xBQgj?_CD#_cв8WEaPpBJ6<KK QF(\elnUېɻhFq^ CeWSmxs_5[Z磂PXoB'[)z_B& -ew07@_ N1SmUw>/Òofn2:,/c~uW w/ bk^?'^XD"pv`qMS_jHM7@'Odٶ*w2htVeW1J35cx4%WA.CGʫvx@6HܱW?Tn*"aj-K56 xu9<&fisLͣRtY%}6˹hd0v+șKMcnEf7y]9`j x2ib!_c>g;,DAn 9gRy6LVm\**nJ5b_eJqdT&ruzD+ H5VGV+z|JO_fX6ʼn =^ismEjK>>6dLSDNrDkQ>԰s 0Ċqv x֡ePj3rX6ETg!p`}Kx%Z6́.Nj'K!wK`<ΈZ| 8`7G rp'3= *uT`}Z(TYߚ-[ۜ*I cf:ú0 @_U0m_2֪ptr>' H?c{Ñ۪Nm){4|G5/Rvʀ.bd"MV1>ukp6nXԭu=|YqA%hUto5>P.I+6QkcGrAMNțZ/U" Z{5i9)hGy5N[lrkY1L?gzV  eWJj"%˙߼8.et`:mG|QCRƈyt'egV̖NɨʺLZb!DI ug|'I (WO>)\M;!P y^ | zyŗB۵9Cۊ.Qۍ|8vP xٞib !w}tI&_ {& b]1:`)<|{B̅X{@5eăPzQ:OV8`dln)c^ ZA>Œ0!f8hj1u{kp.תDbWlQjZQFh* s l:d+J&^oJ=~m D*nb9ixjosF2?+W _(_/.ֳiY# =dj9&*;)jyiR7b=l\aSe%k%B ]0 +I[g n@^g]W@ iK]z[RG2K.b|$we8--$k`֍]h>a8U„uwJ \W(:kt2?g|G:&aV$YAZ r)el^L{'W \cTVp(n6\ԓ\:ԠͷŹ_wx㋃z8, r8^UVy8*F3ч]Ql>ƍvϟ!`B.~kĵz'UrmAa2ǵuƋ4 u-*mX*]l0LvJðjtϤoĬ5 nBbi<,j&$Ɠ5?Xstid.Q>pmoD>nd+y ,}eZ&^l"up.Ѓ6<77aYlQG?ZkfGn&k;g /CIƊ}^'8qg]]}];G`:}:0v 3O+JFkdrm#Q\ۧ7~t!P,*e8Dmos$HV>'rja;`i}I\+tڈFhDD<.LDúlGzO?oS"18n=T88>:j=O.VŴY&FNV1I)dF/]sId\L$8IFA0c!2"6qިp`zddL*eG)_ޙ2Tſ.^H**ojF5l)'&`ozy~!D~QLX e =y1rb35e[$DcbMcFcnV) 1T@Z x f/$?99 fW兎"K~gؼIwEcG:dHf|ݵ8wl+ԭ Q }c!:A$HlgcWxk*O޲"wdbEKʑտEb%.xH31kH?-֯{]M¤~ 2!*D >L, , 9 )%޸\e+}#;3MZ.9%RsMpA/$jBk"fy>a(YuDdlY#.>Ym6}/D[9қ{(:P6sP:Qx5(V+d?XWz0,vALgakޚi,jcoq-T.y1ils0*dP \O|NyEO0(Ӣ}eiK<ƺ\roq; Rk]9u Ї!)0`'p(a I|D"g2~öBLW%DwelZfoIC7лC#,n1 ЫyK "!|}{X8LeF0b(vʺd(xOԚ"DP\{L ED`uvߣ:R X)4,θ1XҦT}?Ez YQb_$[LrCrqnc#' w ᦑWA)E}M&##hjv-g÷9+Nf:ˈǗ*Ts(u"?7?_KtLؾ$N=ȢL,㻣e%MZ+CMC6[CE*nhR0W$i J0^TsH:y:~n>J p{ԯ4?!] Eft[uY?:Z v.W7LN$QÖbΓwam[*gFOTeX3 ٖyeT`Xr螎(as/!27p՜Qb'Ӡ3##|"?+aJ as1^pьrwuǴ% 96vs`.`"Z;_=yJKjcy*JG\:\Q~=U s{&`_mxΖ`0 CbH<|c7Ƶu@BCs;iEcYK$| 4R_Q8MTf9/*{~UsK;E͡;:L-5c>I|) i`H{,7-f 5"? ăfvyB;gZԊJ@tNT}[,3؟ۚ4gV1DZ\c WC#PS&Zrٓ?,oAw+ Gwg/Yq@6˼.47Kus"WꑕH2,vB{Ksc޽P܂a1VP{*&T #lL=< 8d@ Y6 n:<4wz-f$ܞg`֊GIAR}UM ݋zX.j0P+dv|@s#*;d9Qkkð`Ua(qErCuS%P]r.0ՐňЊ(-G½W'iDWQ.M>:EGىKETݝO_QJׁEPuCK[Ѯ0t%9c^?In7 inףFվnn5{UE~Z{UV|MMЊ'%V_ /oM^k $|8y>m7G46bMLQυuZjQBd3jjD:CA&f[߹&1xV'8b1;ċ-S'L HNٴKbL{W^ i?=3ݵZk(0@s|y6 [IXVvVFK^1DFi_& dow9J<5IKw"&Ԟ֑Us/w7Ysenqv+e bfïHk8^ۺN)&ՉkF0lwNals,$ Qwmr1ߝsy]YtՔO%Gʖ Ո~gӤSKɷ`3/WK9~Bz^)q%?46qvb~&ϟYUl9{MEdW<78-$a9CBD<hdBH:GY$SȢCױ4.##m, Z"2@(AjA6zzy^װ],7;Ai|M49OzLHϧsN w}\zQeUV9 p>J`9 kV)z9zx]BRNnuCQRT"fn}±@eYDL?uf2l.˷16I/ٓ7GdžIi/j10?z—a~m.)QRP=eIC9t=ZAE8簆%: ?IY@O{).L[mb?"lru}Go|AS.]k} b:fލF('<#~LlN LKF>,uM+ f1S4N9j6G}r1*d@>%LFD4ed㷄EnhPƺ9J\ݒpұ Dl!@Au,pRqu(av[:_x'Fء~f?m,ȲJ~7?ji-k(TNA7=C'E߆/[L]Z34$7v8.Q|5e5Ѻ`$,0u; V~"\@`bo\驐\NKDd_jzak!nK?SxԲEmwb!aߐ)[rnT=ж)PǕfmnC+' i({ݐ 6ioGpmO+N"O3ofkita&Q[DEn0vVe8)RKY>޺V1q`1o(@J`fyi2ª#悭V(ǥw)l"<髥#dunDB7"{)$a};sƀ>+s}Z;RO˜+y-VmYhhkCzg4G/6f|3 q)#crךar>\@uS[oc&<>lKV͌m@kdOOi6_?˜ Y06vhLϋqޖ^n cL6GƿQWLzWFm^nΧd's2OS%Kz*QeVN}CNDw Ɋ'2C)W2&`@ޥԏ*'}m 6B&d9pa9/1ٛ}giʎJ */2 ɻl<-+aCf?ѨlP AW{N[Ǽ4jEŗcw7|_C5'e~GPaO;!=4*Dj?{^j19oEU~v Ua̿LP6u,Ah=pP :Jf/|ECiJ(!`o pJ.R^>Fm`PFE'n o}\iA§hvM-ПH9>䫥Ȝ$Y{i l_Up2[T>TjKII OpB9+aϫ;tV/*W=hd@ش6LFo_T!)Z9>øbY IE:qQ F 7$f!f83/ZȂDmmP2̝̯y"#i6ϽuꌔتQK ^SlD R.(/p'0m+PM@'\BTi%ȮaZ5/4mzxͪdIR̅62$T3Ӳ >u߳SD,Yޤ! / fl`BBvql^EzZ>"@?%ǀQ'~Rj.,]k@g vUŌ p䴣x;W}i=4vmbq:ʈ]@e9~7T@4p>t_ 9kBUN?FW{֢A٩HtTm\WwRuܴWf~*J{*B,¯n6 u3.7,6Ɍ)u.Gl 5*l٬x\V+>8˳a>7Pc  =|G)O]^d)G4@"Cd|fL˻\s*x GġaS)bny\ضIGY@ɲq?(5 <8eTB;qsT˛ф:EBՉS)0^C<0_Vu}V[=nA`Qڠmް)l\:sj5@9^&l'XP\U:ku!4%-L=_0?k- L6k֜EA\?c^;.u(Nތ!t&T[eIӲ8CT$m"{. 9ej u,X^Ɛ/~o6Pq,馦WתRz ks*'l?DdYbҕA#TA)N[Ȩ49KIpV ´#~]}>.z*t@CSF8w5_v IJL/(C@ZE8py ~_ތdo0t5Dmb~_-ɰg1 jޮx\m>x < 7[ TQ{l ƨ9uY7` ֔H+-8"<^prY`G&c$ V|ܘ0ë۴C#8߂P@r2 )"A{,J}GJ$ZR^IMỔ(N.6Q[P!8pd+ 9 ϲ8}2zx qe@P16c&ԭ-@,%иJ"d@Oޏ^Yf_!, ֓K1)؄\@k/8KT睧;W]aQEԲݿu%ꂼ:nP6S!tE2NWuJ|{!$q5!3U-]䖞7YސYP64\l{gK&1TX/rQ_QǑla &޲C0hnG8xk]Mj[ ͉n8#6eePL6d $@Ǒ6ہ7"qHW˅hT[+;an60~'_M#K8 &>:sfǕ1"(<5l0"*2mХĆC5@1m@NBD>Z«1Փ%sFv: 7@fܾ]=X `sV.MePb "̗K!KH(sp@ylNq{t4MLMoE_=q0Jŏ4.PvLŸ3ٗ`hЃ# Yq~_6L!h˅؎ _g,lZԳT @ ާxEt~x< AeuS$tF9ѫ-AC|)=ױ+yNҽY=7h*OGJPw ԫ^ hSN l(d1Md(ԐpPVS.6n q~YE4x\h_+&cr޲ &V `'9} 0+ Fm1WG0Fc9C%4#-s_XΡy1X,ayr-eO%Ak}." W;n*`>gYK ML`g?3G17WSt}*"ӑS2gIx^Y*qJj;L/mYg^&{9Ğ-q:"#TsS?eTqL< WYKfXӡC:FazvC?Bg S0Q v菳znk)C94:pD6[X Nh&n]2Ie~Qcbd=HKDL뤂|R}p/4\8*I |mt_Vt]`ql/!d/%xpƇADdHqs;`f".]ά(,e{ Ήudrrxv f8S6jU)ų'Ȥ3VL}r,`1<J.=}[ma 9ن+@a&M[0''$J'Y.gOIG $!yD_bh jf.1=|L9?X(A.Vmk873ȴ c~3H@.?Ć Y,Müzhz_@Ip/gSfdzr&w:.(j/6Vn;t.l7`}̝tqsB;ZTfR(C*H0g!.n 5 _ߘ2xR'>T<"p&A=3)<4 M0ԘnUz&`of G1!]vi=ƽN:[PYBh_ǖ:h7^05=m{@VݏNJS$4]\HmC1opul׮X+?oqCb-˧)1NS."?f?&ciH^~ L*(Z zЗ} A&*!@;6wH_J&ŘVkvV *{I± 'IA7<3:'in@|ˑ(KR0Vfk䡳s7z SmvoI FpT? o4N+oD^.i!+8ǮPgpz(i1^CnD_赈H믏\rS 8'OTaݦr] Or Vt`) 1]T1Vx/.Ktߦ<اQrWWS`Бy5 E9{$S~G#}iU/CAN26M@" i:%gsdlbFR4<‚&fنX,~23W% ״;t1HjQI>zAw!, Qo3%F'_#?ݩV`Q+;=:m`Qh%"Q3zp%Qp]8?f-Os+JRĴL~hOOtGGCV4xlVerσgc}](<ưT!nlܒ eÊHe+ "M\+lz}_J#=k`!~xt8HssO5$QT ZK\, ʤuOd[aV2\MaE*Y0o=tVx"8Nbrboum{R,ўD@oXn– $cВӱܡ7=Y녉Nd 4FĪq3i7wZkn(w,'Ț[S~m #řh.ˀUٲ-lp4 RE1CL$T}-si GHnJAֽdž9\ \UV*n~>LןIAv m569Do:lVkjP. %qJu Bt45ƕlJ,@0zhxr;UV|8}OCJ)GO4%O]v EbNk !/K4+VQA-[v.`2.g:C%Y#U"@_>4RPr;.SSyrڨtd!ZDͦVa,W<+jħzJȝ dտC>zWt_UV\.jyc$s[1w6vxyDVg}~lyJSsI4$_ ,}) ?'Cgc haixFvvqe H!hQΑ4H˅zeg~F%qi~3(܁hXp"ںY&qA}ʪE3bdہn? Kkҭ|p4:YDJz,hk&" ~1#! }x=~"r$̊ao/4Q2ԅ٥D큗~shQoufH~q> `4iFcxw }$7B|DY@w?~vnC[ .hww@ ;Kשnp$F-*'6ΒbCM\M y<|v0V#ۗR[Jָ%rjܱ{=R*w@41u0Aux[% (t s:&tMnHL~>FA,dCGc[+E/Znn94-:T'ia]D`aqD~ 0oPQYxƶ+]g!.aƫ&HSw݇;-1`,R.W-ogB `'FQ1p\ , (q.EB[Bĭ `0lwEZF '4)=^jYۊ~-*K3o;@=$@gУJkbX N/%oh욅@mgCW(N5ΟQR>tڒ?Ƨ*E}JFY!186J9[鍎u2'WHB/K;fwR&FRI5!>'r;}_*EZXǼ3U6 JJD[ma<+`teS0=j4y 00%v]&vcsTsUEJ,W1d!t+C(VN6_=EJ0& G1;\~L|@w׃,7QZM=Hs Qk'Be=)PQ3 {?EE a c'jr`BGX$Ykmi[G-VpA*9t7޽RE/v<"^H"7qht4r7Cq}{8L,Vԏ;Ȧz=S/Kه#u=[|[PrrF~*AVܸDd3fa}`Dc3Rw"zZN4q=YH*9LIYnc`DzB8ɾ|8As1iNr@Y՘>X'@ky4b!:,ig{_lDA-= Tzaq17y*.OaC f{RA+?ij#D$VA&6S&mPfa(:`xD'x-JcU }ש/a$UAXN &u4Vb E P1瓨S.K2E˗%Cx+8Koy2s0TH9kB3FWYj֞=DhC"goJya [9Z5gc -t:̤6dkB@;3 h>.bj4FQn쿟>ɶF\ﺖq#:M# ?"$@5,! ۷'LAq F>^R~I/ҟ}!tZa]\ww`U8u$Ѿqm<+Q(f÷ĭ+v؞F`%9j+MD[T̵Rj RKmz/I?{eF ~_MV`y/Mu75^S3`Ҧ_KX}<6غ%D]OJ>?*91+A;hu@p%ٚğݗ>udY"OP`Ķ}'RtB[%4$z`dHu~衁(?sjakXA} R01d(YyX?%n VYXzuw 3[ؘ1r(bZ=7x(n gTbC>'[' Lp8i1,Q`[3~%"ѭ,m,C="eԆa]'ۯ _r l "!^#Jv覸$Jq~_ȯ|e&[&MŌQV@HoEO9bmƭ1>2`IF.lKrI|gvS.}xyL Lڣ=dQ TOU"Xj.{Yuַ 4]_(9:[_r9L {B?(D$Ш=XOs*'3覆tiSa{AT(Ridt~JX~{dXӤIJ`D!Z~-q@6jQ6jxA?52 @~`^n9"B&Fz<2y?7Vh76 umUҡeل''Ic?[h2t \в-mWs ~yTF_5J3}Mj?XDFᙆْO-]DpJu"LZmufa>2Q^t$Osc3<P& X,`LW66 &o'wZ /K*t ԌX+V|)(BȑrzZq ),رزu-˚$Č K](W-(m<2UlVcRj bobAp&qRJ4J4 Âv"0QolTOqW3]-S,\pN!!v }[z'w9A;7R!Nkqw*ps&2Iq|I{qMʥT]j}\sv*9.z;t_#!FKP( ٥er 8$] f =/g()JUi 't0n?hgymeoO|hHEe'cyQI6ƟsgP7R_hicjxdJV brΝkW#1 H|! %{4)ӶU.| 8{$t!Ҿ㚥s[B-BhW[N[hyqsb^@@˓d[B+olݵ譬Bι7޺9޾,w~s֑A]O,1ATz$0ޅyTޒ?yF{E  ҕ})",׹jۡZZ5 ۄqEm;yed;A^t9Q#gs* n]Qۤޞer#Fr>O9!(?acaBD9~"J&4*zׂpG7 0 cIidvw#!uI3(*IW{[dU G0o^6v'Q'mD[Vu} -O1O9ěN%-]-ʶw2|C܅k|n.ؿWʎ:e\ڨr姱8>eZO x\%>Gh|H5_XI;<:('(#Hg;|;(2}L  ➓5Fb%qکG.V8a#{~mBڜ/ToKOPf{ )mǯp5C)\*wlwoJ0so\KG++]O 0 I 0=״3DP9wfǼHaeOI0+ d?rjL8_L3鈡b_za)Z935'J /BB`ǟ/o}<~,:@1!&o,bxhc:]{kFzʧ0^6Td1uDѦm d|\}Vb$P -3^3Zysk":9t'ȅ/?X/3:t<"GSˤECʖ$(ojzE_ ljp㺖 K;}_vcOd|!rPSh~ՂEHm!3GSe awĮ_[CG&ea[5fJ!ͶsuTFBą]L}%:Ng2ΔZDdRuA֯cH| L 6%e|g}W77_Ȝ"Z-Y6Aˇ<1U{oyw~Rkz!@(\P4&'wȳOFH~ǕSpP}O׽P$>8 I4lٕΨ0/b/_M,7٨xA%73Pn_.Gm+<$J6ZN"SHkyc1_{y7Ր0twL\R3fD@OxO 2Ǧ2] f)Fp3_C_`3ZX$ݹ? gHW@$.vF:z%ir- q*ЍMdS?k+SVnf uMZu0Bՙ9f(+[_TJΨ CAdi&ިS22 b[A*rYYEwOJ6UZЖs-XB^/{w6"Q9}.Qka[EQeݾ^o ދOV£2Ϡ2:,#6M`oYId1;EkeRruE.*%"=e48a!ar ˳t'pS&Vc.vNJWz]ENoA i؞:&(Y؎>ItIY,dҧ&ʞtC$]|1H ]Aofnn)Ҝ*}%_;am.MEhNZ™>p%ʃGFY&ip5IkHC&8í#FdhQQ Z^!.BgEp&z&i43%=j6ڪco?ۗ)icyN'RC{}|LzvfX,_ Pzd2B i\IxCAiV1Glx?LTEB^]tg#^(E!lG7_7XKV}`B'*XF0&Uxt)ɲ+wYĚl:>P:T~HNgp&G 2jD (]$i2L &T+@e*L+Q]E v` {6|'2)c9`;]>t,ܶ0taEapʁ"6F Idɹ2QIP?XZp{vsp4~V ͆SOd)6 lND-(&k@%N֏:au^Gꮮ6l@1 3K,;B0UaVÝlT] c+jCGHMtvC.ARjZ V1EόB0* 1KgwWKb<kXG\% I}['!Շ[& {eq 5&MX/~!ُ< I;`9Y$yן!@h͓X~"ڢԶ@ԞY8n-h9L@͇F% KHP!jZjzT}4Ј߱3S0a (|!x7{OV[ҦϨRxɝ8)BUOS!myeWP04MoJGm_V{saZCͷ 0/AVht%ԎgSwJepUl;y^rt|x;-m1 "'3!C29#I96I"cSK۝1mVX1^ϲ/CTm+ɊdY%mc:q2͏F[IBZ4۷Ĭh7N@caKͥ(FDڟ[Ms<( N>`GmBU=(8_hj!v6D{YLG]y?܎hUAu!)Bq!jk7|^H4Tr[ՑzD˒ԆsgRሁkAd7HY' I\Rh1 xU]l}nc EZM/5(:V'+G޵ 7oO'BDa#Zu/-|#1EZq،P`A]๰u 18]C:5OFQz؄,jj aɲ^LFzXžcN`d]b23$O]_):tݷ4|\Gh}d胵|i{IlPf :,vfDçn}z |1;"XS)$l=R0?2RhJm` ­ES8خ7rýöaJ /F#&wo71W-aFb)r+3ZH8{;ǥ_+iPO)m㤏IRZvˬ- 7h1yH`\MZ7%j!G/Cd2:uݱX5`1xXAp}76p9 ILd\YDB7qWzT0ֳV 鿘B 7Dj_-[mšSLN]*ooUŝDj#B y/hF[Nk0erz νL12bluѯsX՜5q1C`^/H[$  /+٘g=ZDŇ@ETGme͐, ǍD;`[-ֹ$k,-< pc!VI)Q=0y~,i *Ŋ"| K,T\856bL3RG%1q4tfӲ-83Rg{B^o6u__͏bADz\\Ց~ƃktizxz\>W׶S+!6ߟjz v=hb2;O`jw}ek%6ET5#w%@ܯIގBָ9L=oA^%O)\cHZ y}#.YT%dǤ9I(NAwa4JUehΟ7`N@9xՅ]1MBv/!)!MK4+ :;'R";Kg3/V:ܦbS$zHb fJӦ*M ^$)1ʋwx[LRC&{!K )EwkeǻZ{A^y}9WF&cfyX 1CB#d(]ڜ@UH辀=h^…r@J]Qku4 PuЙElqdۉ. vMe:O>bs 5&-ck#\Y~Wbʣ *%3"Tn/o\b ˷K;)Fss]vձb:YZ큇E S&0,7 6h>^7,C`-}nfq2-лw)y 1=7Ѭp _a[3-*+Z^y&4E.Oakto=g?An;WNJK3%UbAice1 2\Y>e dN<\9 v  8!$l{+cFF#Mp|Bc_ #\ݮS_lN#RbVˀх.@-OGwj(q] <>V)#-\KluK8޸(jVj,˽MۡgB2N魕v}Iq}Wc.iC5IUf惽!= ,~}Wz$?V Wovx:ƂKÜeuk ,zcj+X$*a!e#צs/qRQ~o"/ދnT.hqٱ&j`xﺱ?E|+ %S޸LPɺ^XynN*Zg2-Xˤӄ`oyŔV{+)1AVҐ:gL#ebpO:Z~1qƵ&;m^'y{nmգi,ÎMʕK1[5?yG`lwZϓ*Papҥlʩ$tl K5N ؋#fJ`GGR͵#D^G P(C vBae<,wUꥷtKr 9ҝdz+*1%@Vq/N.T\֪yP,U?Ծ6 [dGMfj@%hKE xtY;+9 DL-~%Bw6 ,.dX8YQ̧8.lP(fBk_*,{:&Q6=|aK,W1Ԝ6&qmsFK=_o4IGc V%h XNw5I^fxLF_wf(Xc(d[:@~C6j5*nIvBR&ەpn 1o-4M.qKiv7B\);^KF4cZ-5I$u%Խ&[.YങpJT`8ocz7fP`X!}'cF 2A gdӬF OzkR{\CKC'wVK?C-ZOaj/X^ُTS9}c pc<đ= t[]Ve-jY[sZN=dy:wuqUnDvl$/ I5Rڃ%f 'oxH h`J7p IJ ɮ^m%6R]Y,o=)ʫ{3P0M 廼Vk.?m g4BMn^gk_SL(nR[Ҥ>OcMrEtr+.mV4Λ1|Mp3æXDuڔ#G$XOڴN6Zd81CKF/|/ ɯctj/ /Q*㸤lY6X>Hx k9\)I@@\"j>L ҟp2] [ 5ÜFB懖n6ʢfQ]@(,q|?=Y5OʰډsLWe7dO.8{}p!ߜ:S"-CmD~ EjHLN'rي~*+ǿ!= 8Zi2\$G="Eu]?[ pF 7/]6_@ /1ߥPB), 2D>Q!II8[~F^l6뷆g{ÀXkd-GȘrO".#),&Uj f-" j]01][[S$*)k]L)dlл2Uo'Ob|֙@,^/ǿUDjE1`+fzBO/*:!b&gubk!_4nT$;]f^Jo* bLेcez*.֠h"?12&yw!ٔm'Co.nJ.Lb/$W83eH[%HR}6R0j5ÆkIXb95#8|UDvG:*J,k"D'FP#ӕx>GM"'RW^ڐ]'cCE=?nQp/5 cp{P jNbUFj[T@y{P(`$JX(E)ټUNHÊmwb}p<նyٷ1y0, ,^COT|3wnA'|F3Q N]*r^ fjK'vc_WKzGזo7:0qu@ IyP]6-mxڼ|y:8JKkj|z)n.?vvUGTd|?/r]b! 9}9虔Z.wzu"WoaT])7(փU"lC?P|f/)t '6CgȽIٜZ =7;>~%p״FWDv\ɪ<<9p]`9s?5buSz;I|IE/4xJ E䡉CVqC2*2`L>*gS}gQ|[`17AY@nb/t* W|{6b-wk+TnsO'YT%N2Ȍx4RB51%Ne8N*@W*Z_:b qhg*g~Rje L[_aFO5 Y}.^)8K]Fó||*dLmcܑYd{~5B%܎?ڿxE2%623\[HD3Ծ\ٓJzkl ~+U@&{gVՔ$m5B tcmc- S i'0ۍg^#9/%ao ޳,ob i_@ѱt 1FA0 9p'2q婚;s.Pq$mJ੝?Ie ,>Gm!KB:$4^P,e]HYяOH{ܿFMzu(V 6eF5S[}/I --tHhF]NYsL-39Lnj 6=q9~8StI+ [i 9+Ψp7 O l|,U Y8#Z ߁F^-pK 1Ҍ^x]#<J(eOnE}0Ͻhs[Q$Kݰ3`FZ1)RTlB-@rdd6CݪŗZ6T&tr`:.Qa>xɍG]1,IDT.u3f~9[$l_ t+PCms=z`|ܚxǣ2=Y n /geq3>]G G=%k9=9@y9 3M?"~J(|GZϜ9PJC^[=ຮ[!-ݲ\3kxrn@ȋ2\!hܧWƂn 줽Tw>J TM=4aR팅ىgHdTPQw >02A*:T<} >lũ r%C;m^Hf`cm,nV+'N ELߊCsP>r;0Ⲇ@˳u<>0Ӝ+5 NTĵ[Tŏ[Vk|0sގx&%4>P7qQm Cj_2 ac;FFCtW 1˜Q0:ǵ2;JxWx%6>:dAi$HEtz}W]^"Tz}[8>U:ׂXhDGXͷvS0''/D[D>ynŗW=wqٌq_(shc28i=q2 6u:* kJ!~Xs6\G; E}]0*Zس;45d C*6jZɘ S`a->ٶ.s} Ms]i؉B|%Q%SCOS)-ׄ}K[їh Kﷸ/ӟ"0]z Zbeݷj#O ΤZh@,'[ܗEpx O¼ Mf NMbq)ƝgpCme' }a'Gk?w-zj%kYʙ&wYq=b^Wh.HD4c9K XΆ&jp]y ̻T;Qʹ:Wj&?AKӤ5E#`uv3Y,AA-o(NU8b2ᗇkوin*僆W8^XGy [;|D^y)zPǷD^|ޢ>spc.UmHWmȔxuY]׈ι@eAwh-?+0^{TKEk{bGq3FPt闩^k^g3`cV 43),"p+xzl\P|`Ph#5sEy]p6H1`3ѝpFnA|VU5)=$I'}s7/vA\[%DdHxU3U ZiFX`v`Kpw),t/ojBrzG<wŒ7>:ɼ˱_Se>% jMM.;o^ @}h?ӵX0UHq8"e_ux_(N|6%Y oM[V&ėA]_ iW&Y J&؞NY 9OȻƛyqTB=A'`"O %s7me]Cɥ@WNk)Yv\H߼,bZU $_rO ʹንA=LQLӆdW 1:H RW9s\HOCsb;O +~Eprpo+.+ X{y3\T!tk K5ޝ ̮6}.m{z[ IHȏլOEd'' q",C8!<ȡ}[pv_+ K6!eӲ)%5] b )*=/ ͐D pZѡꆯC A8 C-wPGKJYySu-j EWn2i>ԹziK++6>DNxQ^k` 6(4C?G!j7j {&Mb}P)&Pi GbsE~#q-#i!73Ev-@lL0'cA vw_tEVaR溋d,ۯ϶k@=1d6bUf "KMA@g4gf›̏^%KZyoN.1F}{@|wA} Hv'v.-h+G)xنȹ6-5sCv|^1N 9iIwӕRۿaz-I^34aw`D#<q*ʧdMF=qժLwDĞ˼+\E sYH հ0fhIs{$ʲLuPH+ɒw-($k-8R0 Zfe^]فŘ2=My.*?jvZ=Z(EWАLwKTP9 i2WmB!n.{(lq?e]ODK:Iʷ gn1swS`'G¦K: bѯ]{0jﴈrsSw"QS3עaiuo*ᎡܻSR}.Qhj si>X:n:c< xwI%&,V3¡cZAAgq!.XeA 3;lgʉ?jY D Yjd{hMEMu2qR5=+0]kܳ‰C`/r&f^ρ*۴(Ca\l>xI *)Rӣꤘvfo4,7x@"LRiO 2vGU q ]Cdcy~6R*ˑ52n:1z`C[8~@yA):Ѡ:(b}yY mNxЖw-Аf>QvZa[{#ڵ 93)?b_x w,Txj`8Īp`|0w텆9uzvv'A,V¾] ڬn09*ۖ8Hva.϶aT`o_bXFTLbp2`2U>I; Η>EdOgR ,t%0 @ }3C+Ŕt oK^2Jv1T&3z r#) H'G_Nx> &mZ2{Ρ;vG#V! AϾ,S#GM!ME9tT EOldÃN>{v0L mnmk :#ec7P1r]\jjЍ[\'8<`e&4 gr8TL1 r*k3l帓Zsǂ _w͉atMeXY3 reqL$ߡ46 ksݸ?^v@42ixt: ATS44V 6 Qd?ie}Q20C@/0Gg.; Jxec.(*2us?1mbG'%":}'8- eQ,9#CZ_ mIи@ H*c_)w%]gũp+F3m{t%eIK[Vz](YZƵܮT*}?^ԼIcdK[ ϼU/\R1B3`EEn27SX}yv]6Df!T:%(B~4Rk<8(Gl~7jlK1Ч`4^Fisg4d3Ճ T -YP)0C9 WRx?WΖslIɀ#x#qϴA ɬtbG< {%mNjތ ",5:Gp.& aCsJL fy˄3A&W~Q(%q9Y :<)  \A04/ЫwpB%0MTtl 7ڤ7wfPpʮsȰԺnD5q8(}XTE%hr`*b `R:K<Ro&a6M ёGKP1Z 2][o)WVϚ52G)}Xuw F|JgұVfi)ΗO@#blSY}01Ak_f,F^ uNy:? C \QLAL2(pdaԪ?R;e0Mh Rx"0P#@!3@j 4H\n#G֑o?!tG,S'?FqMU -Ч凋 r깏ٌHpX ZKvh#W# K >JءKRΒ?QgY/ OF.bj$4 rg 5o Kv>z:/W$%U+yNϖgyG" ׾ PŞQ)[TRg3: ]QF)g*{k,V. ry)>1{o&GŦo88F\MsHnq (oPh6Ru;yS1]say tha%+{! I/C~-v?uSj.ˮMDJj/zHlfQ1\c r\E!։fnQ<3*+|p[Zx/G(_( Zzb#kò'gRA_Mnp=>׍ZvP1>SȦ"c*A ЄF|1X˗"!0=|8Ї?S1 84VM՚xնG^gQTlIRPa4mmEk>ptU4ē<-vs#jjQshYBkt(k z^uA7Z>+ڎUo/Qx*khv%CI-tφ51B KpƦ#խ~:zGXG)sPM$@V&%v{t,¯G7Og1/ITi[ol, LnW|L)Bɇ]PFڮdpPŬq2a\-){|s%ãLXéSk j&?W2?Rd7XI8"2֣@&<)ﶢ*id{V ӝ3 vBད%PJ,.8iUesMƕ1S!"SQ׷'ɭ i&+LXE=K'ҭo}Lh6DAq CBhթjo䚓ˮ԰=T ;q*OGUqL̄> O'O# ̆vӭpf ZAc9Һ/?T+wq)&;+=r93́0 G޻*0k*Xa'Gtσ!زUMW 3#͠xDvv_7=ՇVi7~&-?0!)xupҪý$u"GUӗE5۸fo㮴"6b|ˉT%j`0W?'r,Q^OS?4+ITEᓕO6,@y1(JgI#ŕx?AaIH7a*gUQ"G @4i\øc bnӍ#`YB֧.CŨʤڀh |&] ٞ1x""g{UDīgTT~>[)Ϯ7 5Ӵ1!$,xIsk!% t#^\˴Ğm z L3p R;!/T'?ѷQ]Ԁ}/y[ =Қ'"xEe6RЧRERAɍtjdBxKrƎ=JsRl "MO>")PH< ->jXT;C8q6K` cPLjXۗq$ 35ngt|H1paq$kI U,soo,h*UtW_Gx*c;u|S{6R"֦c1pgӳTY$8"Ӆ(D|xWP*d O%H, 7rd;׼J'jƷqTʈvYnW]ӣcϝ@'!|m^:uC0FumA†J9, h<|p8ɲȻ3Ҵ'=ƗڊD/Op"kxDlRaGBٛYQvC ĵ 6fJM1Y%Vat$aNS /!a!uyЊ#~|4-f|L/" r0;1G.Ŵyֵ圛$n?/S0c MȳF0$Fi><}u36nSR\c79Z+2[P^hjŐ(bR~~#] ?鈚)&U?6n׶^+`Tu.ΩTGKY@V UW#s' N^gDl+X2IaއWrGleQ5m_zR5SJK|AV__8S[C_2Gv  f޳.)lLƿ7X>q-lt@P*3 {L 1E֨  :Y'UJ^SAsxQE#^JOyyQ±g[-QxmNQ[_]!&vxOLu^--]AKF)ODVa9`Sis=rӞB$SYk$Qlǿ,F=ZfFPzz1;wm&}twqΔժ6Bc]q5`6zߞC4f3^aF q -lgX$qЯ}IdAw*N1輳<iTC}VN n鸽\#26ѿd}:CWq՝#y~ʎ\/`Xy'l"of;FP鲇#7I*ѱt굆5hZjQ?pRC2=2d]ljY1vC=;/ivM@/&ԶsY)yE'CY/JQw2Cp_Yno3!j!yWC@ 5*:rQA򛏙K !$s,e+xU#386]hϲa]p;;n7[I{H\VE gDl"tj^3}u}̰&"{]89;~v }hŗ̗%uw`!cd=:wq.p[ GrZ4u\=]G@z\)mDp7Ώ-A|]M[n#Ӎ[! &͠ >݇HPFv>cxm!}S: U?U-lXC)ٰavֵқUΡRJ:7,ϭ ug# 5C?+LX_%6.9- / EHlޖ:FXdgltYr7ގa+̣Iטś6A9K`jL$ $L GBy+usڎ,U[t6 T7JgR`>EaR:7=rw6ɽbqQp康z1%Üp@{hcY4d/r9vܑFHFO'C49q[ {=dRLsTkhI-|=$#3gDO{p7lERT{ڬu*+_TO8Bw% J g3ݑSؔ[})N2/勤X& N.5j{#uy@#{V7^#Pu:?B\LIҋ;F 0 t'av A*1A KbG݊:sJUA!WW3~\ rNH>/;=qr 1;v@B!RK` _f̶2?(O;"&0l Z+ PFUc8oArej̾Kja&/8}p m6S3ջ1ASO᫦2xw=<Wް\v$Sێlf\-A`WD `sWD.LxS\MG}U#kat3X+;A:P>ϵGOUc-˝prtHBgfBz((^ܼ>6=}(x5Oe*GsQ"Ȍt^|SZudʛ:vHva5HZ#Jr4m8d&U挌$R:]Ia=4;OzE5QwOE˸ } ʠHp(" c-˷oBN*+4i)+ JAu'kv>.UWKE~^1Q3<=a[ѮܚG>4ϣDMg!HlpsEIKݾ}Z{qJauM.ȊlӮL> hxp<֗+`B] /0^vO塉P㫹cXF7̃ܢCl@a*HZ 3_Z4ej֝V9/'$T<' 5}`CV\DaW-u0^k-CE>{yNf!oM%̉ kϝ*yaRߪ |Pu`NN%3 !k֢ Uk>QWi7aW{neY$Gl\C+Ts͏s_9M,^W-/58±3=#g4s+i}}x&y/$w]fýL? >7cfR#L,\ [s+#;' ߌδ. 8 q\rYF8x< %"Bl¶',$NŤ+o!wu=p3O;pC(%W]G l}CI[QȥHBO8CE[PUCj1kfhG#yِ􎞯Z(ꥯ$@|{JMpuJzs(NlqЈ78fc;[$ydz~7Zvzx  6O)eG3_L;d|Hk乛Hu pUb |Jg~/*ZT⍡@Ru[NwZ hRƜN(d)d yAw%/J zT,gåzF̑: c K(.$Y~%<@\' $~5 P&3>JiT7;T7i~?r _tiwu"|2g{M(IٮWۯ/cީܠd&Vt磞7"w<㾡γc4iXaּngyB7":'t{(Z0Wh b[j FAib!"ۆLo2<5B$" ]rPa}#+dj"Y\\K5(?A*6RJʗ`K5LߴH#7͞a)2,1 3ej[VȊLOg/6kPj* gBEMzAL`~ gGò$b}]:$SM/b؉\r vv%N߫Dc:$kud%|Wݯ856 $apF_&O)B dH9bE ṟaQ*bwاS19aSֻ:AZ8R (Ċ I*@&خF?< vmFD޲oxv8= :̪|C $݈#5 v81$ V?J,..OUNShM]\xf'K6n9`J %{ΣT鄗Ngaq-ŖdBߑ#~7zej2մ3} WKz yHe_~AH*+O %9~qq"&b?-@{d5Dy4K_ ohz!UρF*AD~g@}(J'+ATt1=WOIi4kc^  Sn*:(]ŏr&a1rHk}6TqLpN9ceT%f)n&j892|}[.;NH_;ІDžm5k;ᬼ F!C83VEr#Z j 'TZ/}"3IqT: @_[y#m BJ11nGGa)$)6|x;V,:؜(!-=>* b$zW-&oGYdR DZnQ{T`U8MhAfIP@*XhN^ˆ,L!Oc*7r^6DLv.RpŪ'>Kʷ3WNث'n(^ٲeiA77a`@ tym8l82!5Kls{Vʼnϋ|8NUoBdn<[~d݈*nH2x6r ߲4>BΖ2o~KW-i.3Sx@kvTuĦ%_o5Lf:ZnA2>,!w tJx* I6=.6&96 |S.Yv >r/4RcIKc6سF%p%!>#oz4x즠iT;؛?=?:E`vd#+,Su~٤>\P#MN5b6lzp=cچ"z2{W- t@1Yo~S अ6=yLy&XT("6.\d$}NI GSiFzg} "]N%5ZZ~BSjd7S-Jydr.1N/c$!evj=Gn2'ᮑd0Gy^1[=>( 4 d8:uw ʳ"1M!?~ƒW Ko`I}N/鉂7ީ_% ן~gEQbxpL=Y #_` Œ#?UɪYِ ְTl/Ywe#IosG 1Wbv0껮Av/L&>mde&W/ϐ!\˳4:ksߛ϶|9p(r^[9*F}W^ҝ-$M,iκ0I3"~fkDMCv /;$V4̃ Q=2r[fM%U2:0I /2ksç=/ӊ[&a,CWX!*NVgyѲ3;Xmςʭ|WtY@+_ڝ#.8<.9\Q/ٶ)ft||r,:E)b\z 2y/7vQc&)r?Ŕt3Adc=tkೝ.ie~B4m޵FQSd,);0dZ6^}wG)33ϕG;Z'%:t54h<.LNШuuŝnO`2wV=dVXLD‹$H0#~/2[x:ԏ2X:xlDl6j)U)Zî u'QTZ}4CQ-vi ]GK3S}2ecJ,W}r%cw%GFRy%wx =+0ݓ"64Ii$Q֭7#VT@0N-%+M:NxUC~Ntgѩ$׋0] Q2Nyj1 c*-> 鴀-)xؿ!hW݀;F%"Rgmj㼦?t9a cy'H$pd &}mugUE((8~IC%+zRz.~Ca K+B`^9BveZQn<DYVk`)g i,Y~R|u4k Mtc' 8>1y1(Q# ěrm_ #<%1n0.?& 0m65 [L|*QےB ug?2|5[*`=b5Zq. N2%ҺAN ,KG,GU-K bpm3LU;jJQv}ea5'AIl g"C_yHZԥEK4J"ր&VVXr&Mrb$#Gɻ!*i)Om%`g!t2 Q(1hu,GϵgS8tU6o0荖<57Oth5YyGg$ZlE%II'qܫK['JI/='k5C9 #Hv`A54zck- #Ҹ@!ͼhm:ߚey>ZAPdKګD|*ޤ-KPYOR)HG`rH'-ÄV$$t# /#X9uaaN>VJvqk+5`./S`v0o\mr'+5޼x۠$ %D'FezsK ?*BģfP_@A7 ;HԥZ$6iL-^mmu{/;Aђ?әccN_;!{ "hߺrGSY%}_;96!5Z>5jda&@"ܭxT2.m5'm|l(gď+X鮒s(1t'Q#'?k.nhH$ 'ix)0UW9mMz$'lyVL4ԇ>!X,׍t )j\ۼ#QYtF:e 3+wgTrst?Z&;!lBFU9i0xPvXGFv+NӠA ⱑ15aR :OpwI(%ԗ Tfs |֟ .!ũsApx4Š!2NTʌHE}dUŨBCi5cS J-m^;XNG ™XbG3 *w\lyH50qt(N,H2nJ9aƴE RFtOm/.lRsPD4"ʨW9]D?X`kT0֎`: ꭙl-{|Yj?Nգf5ipLyl&7m I4ґ3G YO4{yhngכKQСsYt)iݚPxI[ZZKoܪ7TyLKE(^c꣘IT]kAdO.NsC9Twr;\T (vTQ)14S֛V-'8ƫP*=$uԕ8;?tuG y({Q#`5tNm2aj\m=8.GO3^(kiv6&8M>!)eG_p6{ȼ!*3crKO2uMo&L)TNDL7yKp. 8u&y(_@P:l?r$@ Vlݜ.:njjB'H1^ B ZXliMĺJ/ ;TAo;pE-)Xi@iwE_V5zfj J鐺?5wȋѼInq<(C>;8ם^TuR?7e\ȳqW# H%Nv$P!m*Vmu~ޤY@8bM| uU8*2*dqeOJ%WޖbӽiRW)/4maV+BEg;@VJpl7CjlӒY< c iy݆ϊ%l0 1?`1WY \bT +kc74MNmgt NYΔ A>2Al>Īš00|Vx^'G{}sA/[|Yk=6"94:֊O⁰tŷDqս6}Hc@z+t9UoyO~t`q "Uի'IxJɽw&Fx\ozͭŋ R:>FI7]ܳKKzU#Pŝec(J˧=[v(4){>V6gT1$EF7m!A":jMx>N6dwvMR>6l:$}4//]x]Q[>H_4|`ג; ,|ldZWr~#g/ĭuk*0d.г e2VI)0w#KHj/uk7. B̂Iᆏ 8" Eq-$#TpNnu6mGU,]0YԕH1Ȗ*;w fhI] Mqɳ;jg8v~.d7yf u*d. okJ2T3 ?&>`JomPDQ|cfo 7a4pvfR=i_t1ȏXdǟ0-u_7Rvdn7T/ұЧ=罴RZ|sny<*3&gIߓb*(DbկXr6awoxIvTI12; +_}~y$)),-amh.{-lمaW 8ɱ _k +.ܤ C1# -u-Iq0RYitk s5,<0=1ʂ8qi?FaIf' *oP.P"BYF^CدzBJme:#훰H*Fct\,x #ֿ調)7`|Jabf;f’l/ؾ9&PXBȌه@YZ$3DbܓK9^y!Q-鮹UibQ'ȔDêQ僿~Q9|{mkZEH)AO;FUS9d.NYF١RP(Lx: =,wHYvqҠgkV_Ǵ!`I9lVz֠RvKzd;M`fAZ5>Fgu2ѬKn^Cup-Cr`ڟ5i%~OW4c`h-i3Ijݤc?z$ 7 L[U`'A@/ט[Sj o [18ÄnF0:xRk>K;>p>QЍ+ WV_2ګHi)iNr@)!ȭj\JN$O4>Yz탦Mc%s{F}gs<"tksaIiCG1(rgs yvJhD@-ѤB}W|]{/gy >74n†//f{?$Hu gCloNc"X^ZTIjpjmޅ%U% ߘmMءz?@#+i ^OaoZ!l-L_s˳ QA JczL"U;xaWp2Ĩps%yOcҭR~yED%!1J?XO>zaC}Lxc3 nKQYkymI^@n18V)) f[%J ҡWș\˄2Sz?ݩ4A0Br`U?$ i 3z{Hſ= 33mgo 2DFsyd~͘xLLFn8@O')_xgAY6ĂE$mu=+H'P@2MyFg67&ws 4fϱw܁>e//vWYay]sVz@?pz;?I`2c0?HM])>9r։!LJ{j-[tfd67`~BbF<)_Qƒ n> jS [EXA#&s/TS.(3$dS li5t1FqdK|9?T agl6~Τ4b`l* 9aA ]N0.ErjxM`AdsNQv7-;YR^s[9fYN7Sy$)l >%b'ۿN(}쿖=]¶^7#;urLF̫͊@0D36nK:Ep?uyemVϻGdҹi@- Ag7^S/و,'RpVk΀`{QTٻ9Xbb\5 v?',7.e+\!8hXtbzEugn]1F/94"1s OݐR `Kڍ_=5wdn]δ4_nڶ9dzc@J2n,Yyl ("c/;N2c܏ d6ѡ_ ҵH$Gh❮r4ϩcjW06הnɨ@: C?D|(]* RD(d~!%O\aC`ƹ "փǨޕq*#JN`L/롿ۧӨk'˝t@>`.xTs}Dh*/4(Z|KN 'w7r57P}c6^ łÃG\ klLs_~ۜ=0yR* +ӣ 2hu44|tdS ~CƮj/ p˖A0S0SLO2VOܐRIu }NƔt -՟7ь0՚"xVW`:pnxPeވoRc;:/!ycW~52~ԊwpGlEPmFy0OsL~2kmiEV={wOtlLsXۤg-6М`V!N}zƒS-:b= (cPfW Ѥ?Sc\QsV+pgŀjbGU%mr x)N7G-AĤ[~wƞVěbAm$bOj2D}*2 58$hB1Fa1'Sk7ӆҳx,!2q+IYv[ǩ݇B`;; [Z7Ըtwb=v~?4em.Sdےɾk&doӏP鱀$錎Lx(810.K@MönttvyJ*]jRQ+;qE iٕ`U2Пx//Qv/Y4!&yڕϯ1op֩]ot 8޵Yl d'b+$><w2:wU'gdrǒW'LxncZPٷ[j ZBHbjZm_nNAQUeYl-9;U[|V#2Jf-BŚ gLpɘrnEVק3q<: Y8cf$5)4k[fAj]g\i)o`ۈv3'{ݠnǑ)VL:¨}HÞLHC /6~r^LFX mYcKiDWxb#qcPkZ -?G}Vf3zĮ:B\NRAI(80gb8-[ U!6Gl"hZa2/MU:2WTs67j$KD+-4ˤdԮw08!P__6@@$6%J7pd $ y)@C0$M  hsI(9^+#val8cp@17G!D+#ma3\m> _DIMX,}Сp6nX/ QdQZjen<^6+yn')"yN/$ 6Xsli3 66mnyGڎ`crҧ&W\Ly*koS!̖xzxwZ!t:C>dF6ub~Jδ@m/J HC듩< ^."?i#^`"`RaơIM]l|>=''@EcǺ+lr1CZW#X]X֎'%J MF,>k?υGǼ uwxaE`0w#N}0sWY1䓯V} UObuTGըtz>z o3#_ZU @ ƛ`kDF3:‡ &݊)CȟRU@8YXm6efR> Xl@anN˻ngm'ɖ1^,uTf>G&Ioz* mӱzft"!cNT HA00N%z0yr<0z 2\cTѕFj~mRpMͬx~Q@JYKI|p6/] ibXH4zZ%H5|Ii9"{O\%@خ ۑr҄`YC<I&oV4G;hJ%s1Gg JkWJkmŧQMƻcq6$1D%wuՒ[6ojI!y♓7p';u{6= VI3Rz ځ]^29$@x5@+(^{JSUids` ܍xpP!+|!K$b e B^/VY `DO8 k7 qr44*(Gjr~Tu#5VB!J3"v3 ӉhXZedWzAfqr52(mE&1+\C S9}m^@I`I*y?sCY +~8/ȡ4f(Yr"AES4eKw4M=iQAA{ =8vuRʟo$:NZԏG/18h6p ?:>`sBSvRfd8N6:;VP]|kx+ϔdt=EP C wgUe>;J -\Yʐ PvIbrQ!U!I;SO \ *ml+ &F > !&`16>iD7R)0Gqi jACF)>:C{W(;pldu0݆`PW5HSv"w'0kv/aAƶ偌̱C]k(qZ{t6<\I_vp+2]V2?GV!A+7w*k&mHgݮjw%u *Ǐ` PFĜ9gzd^oQ6Èfs6K4"3,-$8\䗩"`@o)dDS^5UA/oJx,RolkmA'r cѥ!: jyaM`&\ o:|j,q)=(>gUҎι~U^Qs|G6XR穤V F_m(2w|vѶ)< ߀ߘmH'.ȫ`p9Ru@vuȉkSG eNۀp &%{Pi:8o+(tBY\$SWYMlp,R]uGːdvSY|#E=S@TٔaVwvS/_\V^㗱Aa䍙K~%4l# ;J?XK 6Gbn3@D6fs8v|bͪԦIe/EXG)GZ_^p g@@\Y3ɨLRCaCR/^,[($Ok|vLqL19( _:|_,M37{vf"r9H7|d"va *8CuaQaѳaҬƒgU~AX3gube~z,ZKoJcY[$F Wn]y-Ru.mvI2ɝ}K4Ki@#k5 B8nг&ݷe MKG)fBBy4ztDRv 3{N[VHWpFnǨj-J$E}#%5e9_KŨG&usmjp,r)Yd㚟fu;Hd־ۨlާ1, lE̺``_ĵYWYz.EkhUDWN"]:WƁ 7{?tGN{k2 Yʋ5M/6FԷh!s3 A)Rq1g^h'E^Ά8Ĉf߂e^APhxD&Vp+V{^@\* DFňOZ(gxisgy+"@ ?EǢ<Ki2HlqZf~M.yʛ?nაg5П6/eEo.vuxlIdwNdغo߳LdvmQmǟ}ʯWe^N>X™{)i!>yX)qsi?"/ޥrؠׇqI#z8%DinÐ^cufuz O34,!YPl\OqmA:M?/aԩ7S:n [fX aiw~Ļ*h׆X=b_#!Q.%KAvB^38h4PDS@XrA7m \1[I{YתpT2?mBG'F Hiidv*fz׌?fW2X͇4dN#[ugMN]x+/ g(VxvXaw92eĽ &j'Ii셪9AKY|ŒhPn >`+l껮ggAkSI=7oRCwmŵ?4!WU7#qr}_ D/x]刺36xlh-ka޻*,x8է^05ǭ"[Ɂm2i/X,VECa=fC6uKFǡx-Հ-)>@9nPK, mKAdtzl t^ޛB/R#} ĮQYtݤw}S5ͅ䦻du~F>BOjR>3pDkg$ RFE1A 6@xBGrqp,v FV@*Q?αI4]|Uk%0 .8XG}?2M2!f$jxؿwGaEZP˗cH8k` bq?)| pX`a喳^tNQݝu}*&{iz]*fG]䣓q# M?*e4;wG7B'׎rk\+@>X" ih='dHq&2*;,>|b1;.V:TU|J]KtGd:~7wnpFY dpF5jgL$5v|W2j`ZgO;p־DAq*+\> ̮KaIdy쥛]WvAz/]Y)>MLy S "-`YBFp;'Nmȝ/X(pJ*כY ScyI V"$@r:E Ɏ &* k^rc-4$[A#Vzbck;Gq$7G](]Xgۣ1|Suǁ $ ?BOy-Im䡂j{ȁ&MAp#LOI~6%Wn y+V*ue]fbKdd?"d)wj4z_gYzg&2 LGncyM:dR >G-o9ńC)d-Ap9 {2+WM{ĵ),MjĻr}E.+%l,U@272p;Do~^RHbъjړzJLv+vwnm!Q=.&1[@n)p&(&qdF+l`P'1LJeIY!Qwf/; 8O HtTUYX5!3 < S{"wi}WXr[Z4UҧeRsyL*M(Y5I v\ w@/ZڬD/w8-}eaJ""ċLbx(:oP!PjC'I6dV=":T[+/LT4G$!y:kh9X˙fdsq@.~Γ uo,yra2H/;egB͓m1!ęB"|v.ז+wN1CMdKƀzbg˒zh!2T£k'4d9qDJ덥l/d4#Azc {뻀3/Ǘ  '6HLuo7(7Ŝ,!MWQg?HmEҏ% y7 Q Ð\ )pJzyB94i[@MhNH]2 ;,g)4i*vT!0~Kd;E P`*$gm4ׄ smrXѽ51; `iG:r F_7K`g›n}"12|W&#+f"?G]*=Й/GgI7|З1fORjPk#K/9x ۾)J4P̣׍//h#Tj!7.^s|Im[,p:{WQ BSš,Eе4x& Sy{~( ,Fnp ] 0-@S%,3DIT@wΠH'@(*$r,]zo DA f DUa3 }d} ޴{>OpgĦSU.Ѥg4i<3 Q !*A43?sOۃB! jCW8SPYnf4#{Y[n,K2,] L R3"Q8KN .CQ;N ZWԌx$FF,}@wP~ic!Ŷ *Sȍ}˻Tw9OݍݏZmAy8PK,x B_˛Sɸ#U},a >f&Eh-:[f 7]noQ_3R GޣbS)Kʾs8DuhfqpQwQ;|. 쑎DoAN4߇m^n +ڵkJcytRh0 OT14QL4D}jcӄLY+!uÚTo.B [tp˹, Ъ:>dVz:fRԜ%ٙ$~56[XɝxzjYnZ<5W>B6)CQ~`d̃a_FL)SsI;2{VOgy{NbXS%;:`] @Փ]{.׺toQ glE^be^F>'˔Hwx\?fn yYv9~MZQ1ɑp!3jae{\fbB^~5Ja p~H >NwoV2x(PSF*EVsnkc %zZL,4qhhDɩU#of3!9˓kRw)nCB%pub]/IC4DJF!@675 JMCg&5%1-XFSa Zy5ZO TBSՅMZlf Fį8:_|eexL:WQ0@&ktỤ{՞vH(غb*X{7@bs^2Q~ 1?V(;NYdJ)v~=1mRw,#ՔiaqOHZ7D-}"c%~RwpfR,uΑ'XXM&JoHY-gP}&ܙs &#J6+ Y2w4.8wI|cX(OMI#{vbqM6H|T R+uBoljVrOji5:g)iᜥY0$~S)+кl;~Ċ+m]t ҩ?ǛN,+*7LDi nϛ+rԸ^NY~TQ/LQ?&w(Tn%fvћl{W2g- nua1vԞ^pGӾouCyq܆)š6]iZ04H:;R9/;]ʵIld9* )遚lQ^+}UnƣK l0Lmf쀞{V^qbP\ՑU+lxmүms:qe[.?~i<#RW){} qBdxt Vi6Cv΀,m61;f}4$$cq=;ki2EV(B^ M ~^EcO?Xή~a>GQ-rZ / |:<^}:7;^|!i.MJgy/ɦ+;>y:rO[w#_U$-rN>/4&}][9 |096-zo k(PpPe7F0nQ+an*4V|H0 ͉.D̤ zfЫ8p5C?Pd /WXXEuV9zluFYG7/0|j/SGMh~v <:s ߝci$5hɯT~`|+DQO&Tvǎ+ 7B 4KnZA1(H%*'Nۢб7m#`R6^ߨVX:PCe@w\+*Դ(aX94P zJvхfw"cB5eڿܨ&OO?ok!Sr3!Q^w[ˍc!b:Wý unᓴ]8s=rӈF,'Zr嬇_tw:[N(5*,tR<$/@C>㸏ò535x,Z!Z.Y2>!Gq,xYĤۣoн޹PQ(&RsGig~Qb-3EY/9=-*kN:-[|OlH(̛pnY5r" (~Lk:J74𜿷IB\Vw? 9m˧6";%CS+Xՠ7%=HՕ \K֓}?5q2%s5p?r|ZOlh`K"`o|rd,r..SbGN8tx3:c(NELgR7RNze&t`LJ8> mA(Uj491E.F#Jx‘ Yo?뺥Z*(vNqXns6o[&~ar[8ؙƶS WCӺ# #( *|@yMȐiв[&+gt81v L;5#uu8pI_4CmO׈Wzw7.wF~)%Gۏ(["[=S4V8:0AW VoZa +Lpd_洐Xl/'KvD`SWNtx RwYǵ{e# ^p5t!k Q[5צ^&nVGHcS6`~@8[,fw&v`XϵxyXY֦ͫd:Oaw ۹laE2"fkg5A*>ʘ8"./) d]5;lw(U'; vVn [P΃˗UZ;H6;)=׌@4+t,KY6d| *̆q?`'Ǽ.țbt2z+^{32h:Z;?iFv>k eEg-4vцeVygs #ŻXK|Gl9^Aa_AEGitZI=x~ pr𖂮-D,טˎވMo׆xlL9/O8jvM1G)qDD2NlIL}z" ^oǐ%?@WW)}+KYm'\b6}~A$.S=).L ]Y{F!2 f;F`O[ks v6Ƞ!cEhfVsY0{M h/Gj ,ULK8o:4*&m ǁRP2VL@n;|A]T&QyVK RbR(v믭h$"\ %{8 *vZjaqd4b{)C2WY7ѤQ _ү%'ͮ9;^7]Q~xa.藴S0oR^㱰B|gzyT6IuY57?@fOAj܉av!"%nS0y &&ZZzvG^9X7K$R>B *t-G!&v@Y|b( E+ݙ2Yks*{nrz#wICTMF= pLgp mQllCܛl$Q?xdr}U= b@ +C~B"lQCD7m#8R8HX!-Y"' e^<܉gt@{?Ѕ^h)FZ9QDͩT @EwxhB|e2/gPTvEGс9yfx@vݨ]G>uGnv+sI!c^`$.xiq 8A>=z?&d7nLd31OTր'tW H%XR U*X=ΰD1OKnj U! Ht ;6l;ȓzAu "Sjh暫T"vvw ߻۵cFg BK'Rb2DWIIG+ fe$\1(%3~A Q_;̬:.7tqn7kݐ ^6sl5 nV /?!BBTEWJ\:G#;r"snLH[m6 u;RDG޴|eAUBS'xrX56}U5F&XA3^s;&e# S}ϯSh>`Ͽi!utg j8!0n]?X``9]ǤÖR#f1M& #N@s&pdXRuDH(aN3z3d UǬkwlN/bE,8!Q G"k^^qC{zP#ɞӊ.$qggA8_ߗV]efD!I:RGÝ(5_s>bр[!u|#ggi|xe}4 Y-@xIJbhN^爺ă'KVkoUbJ꧴sϣIp7m%87и@+ 'V.AR1apvoxdChmcIN_{b_PEP\Z' EMs:oE] $q{^r紮bM1JH d iO5>zuzgۇ%}Xպ3>T/oUOxZ9P@Ud1$yuH>R2{K%@#PB(XǨߡBj4yԓ`9IjԓD-07Mb { a.Wͽ`L3ATc WWwG][Z\\uAb~-FbXyP/D*keL=d"E}8Z*v:DPW[B)jɢ^WxU̧V~IM\ߟ",t{5`orU bgk~Ur#qFMuFLh ?O7@ (ug9r;Ɋ7] a^P?`\֊r_G|2qYWܗzvؠw;,#~RMj2OWqgq.ΤRp\{{{_&sj\JlWr9r/<~osbۅ[ALÙdhNЀޑ$DlQ_DN'y%Q>f  6xzőSd)zJMX=6^!*_jM#0<(GoT}IӉe 2t`j,%~_>Rh6OfEdldG1.K* ڶ#rfJ=A䳖/wdCy|5HvҀ/Ȟ*n1 i#g10dΣ/CSC ͵Qgf/\ԼY4O< ܦd% {Y pP5p7vc0 glu`vLGMemR8[m}c C8t -F; >:F6qxd¹0d}u7rvL3X_;;~Ⱥs/HM*@+zc^yq 5`bmJJ)p&d32@&$ td~Kl '@{*p_Ъh~"do+0(y9+_Fb!@ϡXzwJ+Z_oWJag$@%! gʁ*YG_>./hn㷌"/ ,* {.#^,Rp/os #RY՜e|3t֧dok[;Pb#A]q1C2n-H0aX%rb@B E `V?NW/< dU*. n@)3uɭSsJ.xCjjTb)"Iܻ^KzCSb^:I6p_T2qU\ TCw*HgJ,qXN,8gj:[n̲), \6YZȻAw>yh6$,* fd$ D 3ѫ { xL8hmh Hs~Vᱥ ,2Ik/R>ƼƎ0yG`uqL牜jص[ o@xc$}jݺη֩xઍ硿+Nیa妡ĔiEM9GxzA )[gL L!"t"fKC7p"sVF3蠣o/Dj~TN?xyZDe?H%:/&taC\<Y~>V 9Ӟ&1g6[7f wKш!#4,Hr s0Rӌ9nRlMn,)j_4Cyzq^J'I3^Hɠ}he:gg `7!afo&X/;?rֲh |#]JYO]%DUQ{{2iiXwW_x&do(-^{iǘbZBӭ!ǶTf7ٚ^9AeDAA Ü 6b1xRA,eXF W V9^!^G/ciO5 g&/SlxW]{,Y.1 b?/p{/lmYA0$,DwX6SR{m*-o_2ʳB%R\eoR =揃 i+ct{'py\p(j=Nե-*+f큕C =Vb;>hX;> }TNZZ}7{p+F%菔 +iT9e!]qPޏQsp>-qߦBXyMd628 zR7*Z+EgXWd/ :W^N>WI..a8IV2ݧMt0A El馑' yuX2%Ԛl$^ZO:7b ];^:݈cӜ@ŕ*uUuZo$ųi/A>E^i$<l[9y$PsPD?*N7 kU s)˫:&\Cni(bvb7- 3=J Br91ٕ.\YWtIfԄM_j_ז7oV5Q?g*RN5%=iN,YgC=='G>ᮖta $b-B.^%2N3r3:au~}H;GLLPPK$viXaFH`޷;n瀴̫dj=1Q [` abVnI^fLRj-:E0 [ G̼LZ(eRA^&,΃& -3|O0廁 {~ul?>@_JW̅tbnްf<%IP0O^,`4~p>#@ 3B%e%kδtsXjI}'4}LtԂ!dSd]Dn@N 8Q"' GOG|ԤLƟcБ”ItA ~}=Y?J]7YyP(C=CQ߅$3c*#W2߈ТSZ]݉7,bSJiz%Bk{?t[4£V#[-Mt  he̎6\\{Ta_Pfc s 3(<.*OoS QTFtjw#E9.Fh܏3LpSw4/]Qw!2k߅pu DB,Y`G~xQ5[|c RJy ~Z=,Y br*BnN0Ng9 ->HZ0t`  q6g]qBΨ)Jj1|}TL,eI{y)te> QQ&h%+z0i8QIupPfbk%-SEn kX2a!LeIdy1tݹ:m1GPZBr#W`n@N]qnF ̢JiN׊lq:T_(V ncS氖36jGdB6q1Prx&R ɵhc@7``-(ؓZ((unk|s5S%XHB8+ɺL,5S u'H oӱ,> ^Am_掿7@H͙/vpՙv|љd0X ] fbKG' 0̣|bf50c7pb;L!ɣmV iEd8[c4J|M^_*!4px58?U,:{n&?m|Kٺr~IZť"N;V&Ȼ4IiY<;T)FkF殏F8vI[ K{Oqٶ)!@h+t=·b0jk( NA*gL'OCjaU ýBFBѺ\^mjJ-A /j!} nF*s _1P7od#R*v"qM~kz!2jE~Wͭ(lRRLzFylm'ǥ*" \=wh@'= Q2Dy+@ f> (>OP}[lAAdި|LI޻{uek&4ad  k_Mj4yyU(˰/=%g6 7䳫 FѪaNDգam͓ uotbY4Tb}wBɏٿ T9?$Qc38Jxg~ jeJyh~U-Jt9ϧ{ 4 ͬx'dm\69E@*{wqQ<uf{EڷN*OMwߩxZ2Q&s! bxwP`0}A6f=4U^Ȼzl%`e߯L5n[NxCzЎWq\eOma(3}AVgK \BW .qS\ԠZGHkOGqcd6ȯ與z^@~[Z>JJ9idb i?:93 KGfCzm'?Lrzv؟M5~!YwK(*}|?p(VYIYtt]`ݍ0Y^߈lLѧQ=FQ )F'XG1 qJCS%\9pɴtgZEkأcٸ i6IKdʜ# 3AkruhpЂ|*. Zݽ]vȏxWْ`Z2d.MlF`C3iwo*sk$Qx^1%p6,$b ;uZqo!"b\c@wW>nDM6VoZ1g*>Gdt7lT5M"Ue 3/KQ1_b$4c1C0 &P >QKlo52ZQEڈo[yĮ¹Ax [W2}%ufP}u0:3zI*\rr/wGU>~&@3 40Is%0ftxHn SJâQvuF'Wc˖{a9 ~2&N}sNx _<ўH4MqӮ䓬^` L`vTFJP^@ELqF|7T삯IuSVf!&}'8R`ٓDD";xn;tM]?-vBQզKP B,'yRjį 'V ^u )u&ptgEn|>3 ۈ :|Ϥ`O+؝Е/lug EZHR.h3$-yrWب'Qms)F ҶYx0lZFmc@Z5Ú>d3){{("xVgzZ1-]_`%7x' 3 0\t!g*~~䱜${ sX>TrE!KRE { (-,jW2+y s r9 FU؈pgL[m)$oe]t9>n Zmۅ}%54XL"@S"s P"xngPI 5 #a#hT[G_F=[,^4WΪ:!U2wL.Uُ c.M>K )Zʈ<ծHښE+COl }>`J#'[]%/_n8pP"|Yb 6sUyP+\y->Ƈ˩VDT5`4 e ?j?Eӷi &?/g.3/:CLyy#p-%IB *F1o&kNiH,7qL17gp/88$v[.˼)3WGMu+ͿɻN?d,n*`y`9~7YE"a=Xi?NJ^ƀ_B+^Pq 2zw|X!lrb!qNP\FtbQJSJ"<;Wv:{Z#;Uy>-)3ɓ?AB_aӻutDSχx SW&x6Lܵs@L&oD3Te v{FtOKhJU M ;.+ȳj9Gִ+q$4>fKԠ i걢IijXG>_xdg Z0Cu㶒j6*vRv/OGXغ.Ht *6FB&o*U@/7E,RRƥ=GVG3!bnh¤ĤTɻYi IJ%ʈcZR\)5`&. +#`YЕYrl0_g\0KepNj]]vcZ-{.:{i6R0lMg='9]3zH0}:BxZQgWb\;VI vKjO g3Q\ff!J)hyj˛]p8GwJ3p> ~|(:tJ/7mEE?ܭ#@ ]Hե.ϑW/4ȕ|aD,u!I❤z%2 yu0%|z6.O.m)P<gQN_eW=te:Yqa EsPk/s<1hK\|R—׺fI|qQ"ʫ? ӊbJN#|z\Fb/lr߰@m71^y \ j\Y[ ^aB?"l*427rK %tR^x^iYvCSo"yl|u.!X<[@g~IHƁe ,t8g)W4?srȕ!ǥR<]r~?:̞&H{TskkhU~1O1J"x(wwA[hRIEM`PPzQɔwg=Վ;Z#knQ F#Z>K}v͑A1i1""k$s|HN/tti0Ca_zH}GgfN heVix~k4/ulR=Ǖ|ߛ^ 3txEq8]Ml,u 0[=bEaB'EK`6911 x15 OS2 ]c4rs%( ($5\@ke3:>Jjuق>m/.@y nR[3XB=Kh9x3q尼ƫB#q/Q OU(ôshj7^ 9x)r/-Cؠa5pTfK {ƌ 9yYؐ[ѿzgu:]":Vv|Eh"-E3bg<ODԾ'-vX۝4z+BKɤ}3ԯqsMFKRULA7K!7U'4]iRp1-e+<|Lc4!ޝG2)~{ЫiPK.q8҄2 · gPxnd8`ь"J!B4^[`1QkeMHXy+Bj 8nAV+"ѱV.f ݈K@tڊIס 關⬐7z0hsoU p|9,xԺfR1T23^+)ka{D#Eܳ{ӭ {}ٛdxc#1_5:ڪ?\ghU~E9.XC7`,L{Vok*Yp:atvSy:q'OQ˻~(8W]åNM@7cRŗams$&:4k 며kYDGf}~ZIx>. $ fWJ\D-|#}MJ|&/VWc[)J {B9oZng|y_7t AE hX,ɠƆ{$.̝ҥD$/WhiJVj _b6jې|k+Z-#jDؽ/X;~0D؜_4o =^}dx9^ŊR=%I{޾ĵBn9wVLEP*«*c&KL}bZ a+}~BR7$CM̐EAU CA"O(0B'!! ^_;oah"QWxOsx,!R BOIvz z;,2w{M2傗ʞ? :Q0z5s]NQi,@&KIX,k5dxcVab`Mf,է1Z8/p>&|sy~ t jXꅳ\Eߤ`e}JO-stngs,練,opűBQtq T"ϲY ~Ҹ]1PUg_޾d)R! y2gY/hsKۗ&l郲O?f)+6Z4w҆bLOSpU&[rn:ae`ll M<Njԡx;0{_ԫiZ#X P>ʹw̲1 f4^[ xid?3%Za2nZv|O7Icb) &<&$|)5%'(XE d=H?:ނ㠤1KP'vG *ΖM3р F I1W*vEzĄ\>R5*Pu\ RcH D}/KUR$TgO;1MEK.Jܳ"^ &$QC|bfLaK3fk`R{A[w6~on" 3T?FJLĄ*i 0TUZ]+w~bRndX[XZ"' ҖݙsK1[9[a[{8Gei!tx4#;OMJ~}¹i``.}E; QSAUxn<8o{T]K#޻G8mr\{+& *(D+垟JDȓzrDOEɬ$!%bk皭{b4~gbsU[گΕ֛^HegT8$ϡL sf2bK!f=_+Y!ڇQ|o=G}]'8g1^^**P/Ҟ hi?DK~oO)-w:y|3O8WL@vl@TqvxъXqؤүm/u#BW(vbSi,dDwCȃRl }ܘra>*{YٻN2hbXY}xбEy}e9(۵Ggcq8Ue5[p*Yr9;O =ڞ]Z**:X슷}GhuD:b)"KQDa9L,jݚE)1%+Kyr(hRJNMɑ*0TJqѥʇ5^rp3Š wnNxLHW=Aũ?FYc93$lPCcobWT21 7Q3ʢL|]N+Sϛ\APx=xDE륒ukB>=Xw.sEI5fd3%Ì\D"voF;+۔&z6lco PnZĤ.Ob-Θ"# 7-7)m\sIx:^>1e'Up*g8D~ܮW]t4Y^'b[K]D*?Fw/Ŋ[iLґ^HR1yRpoX<ēpVs$KbΛt6siKа͢^G0r=V*淜qsWM1 7ҎSN|ixt-a':]?#p}XO`z%Yj:${J7 $zo|\z7S]Nξ+J|`Bev{P{rmlf\qmr8&r+8a /y5Qc6ϰGj&S>Qeκ:B5aBn q92i!/>8e_J/}Nm)` T!Xw`kΒyQeXח/^NQz2}[aÎ06|4%!s_7~\@tJlu6VUˆ.jNd?,^͗CS/[nYdzSK1A:CGBl GːH"sG u6_Ul$P YJ F`o,3Oy=+.כ8W. 4?*vRܲQ' ^!PBTdel3G l(n9H= VFؒw  @J$⫱0l )6th byQ]D`+gEiغx?qd!^@c3?r8v8lQ;ZYz2WHxKЃF:.|]͓sMS$cDrY$vD&̌gS6?ZY&a7KF,v6$QhU8mhLuIzIMQO!}"3Vupԁ\~Y5ln|I:!{n56Wհf9K@ /dS"Y O.˒I>J<FJ@a5X3z,{Dn-+K mxX/GB[{C1C UD#yXf`^/@X>^rRp^w{Uy/-&*PB8>3QCp˪Yp]PPe:PbOlzgd偊LpUHa\ uӦk=i-X+Ch/d,P|{31KY]%Q}Uc5JTd?w]N4cFDOݼ7"Ec/Z ]i5U|Zeٱ{V"ྏvҠb-(bҚ?j7~vYLެ}8]j\ZXŷ\Ry/Dڂհ:L\sU{¡kkc,71NnEER>gEC̘jsF.vO2߰KYPugVd2?Rԣx#!z9*:*h5DPCLI$PF[124(NY/bջN-67̼yK`m4mq 4]9{~k`e&=fuPrl>Hٿ=r7;8}ܺgq9'\wB~1!K^Zr"0I*vhy6km2z4q'@ƃr/8hmp|^A\G(Yك^)%j&]l t7hyddTB=_X咹'AML$gcQNT `@K~$łS W9EO9W; iNWJ]qgt7bu ;& Zs~ٖ)LQri)tOV5^C¨ldrmLUoUQ#_01H%7.?x?Nd|<_Q-jߛǿa'O& hyU}c xU$sӇwU ׃3gyM[:?NYWp|2ۚ1 h` Үrxd$FtcXu|2jW{r(?KhP4PP9 -z`xΝLW啈r꼍ˑb`n605pi KZo{㻛Cd{^R;yj>mvxTξMej*n"va;JR9{m*0N># RKisjpXn>\vԹj#l_>]>|W! qڇ[yy!d~1Cg_bRD6D벪0_8o3{DPfjV >x!t*ȩEmﯰ= *A +eK) xKc Hv5U:ZqFEv\()5ɿ]b'\l>ΰcZx X pj@ s&u MgYZ 7e@OWg;MP,A)g 4ݐW-$b j"8'OMJA'4  Ce[<\H=6n8MV 6=\ ^{Š$6=>0D;a >wޱ$B6*!> xzثia\'U G3HCQNIV|qL/ˉ0|_YK_òZSq2՚e ?5?~7?ަìtxW:!%.-#{ӀYK/+Elj?<.}8L}:XBUHM#vŗX}-amIM(g6(6PKFKEzMZv}~L5ue墘0IBio-K[?yqu>6m0'L(fӎ5tͰ̽CM p[-̪?9U0}$27m7{%eUƆUM~X($WaiwǺAngmR1INv٠0=*rsE;e%\x+#T[ 9ضqcU9PlѬ!g̚Ő h6n\^՜0ڳ.\ðk v.cQ|tPQ4|a\B@mY&4NO> TI܅/" fڣwQ49=wrhKTZdAsfAW'?'r):HCgg;]kBKS3>4U1SCPm-gBײyc1IL<ŽBpXuKO s`!eZZcN ٨Ow!o'?o2qJr5 b^=ľ 5M__rġQs [(wVrKTKx [O$l1H 10w~aHE~Id=[dS3H)q?wY:gjӦ✩}^N|eZ2䀕),HM =qrI?O;m`XgfZ_'r,O+cmO.iɫBas(g}m_uu wgD2ACGx6(dw3[ux'S\6^,Y'=%(Ulz}8(O^jcv݉rݛs0B߶BY7 Ç0aDfZ>@L "w'ڪVZU"b./ f0J}|c\׈ٌ(5Cxf% -dv^l.r'E|*C'Xݵ$T;iL&c!9qj-,yIX⃣>qs %m鏠 :܎hcsLi=kARA"7ZHT.P악V-ܳge qrj?Rs/a_7J8c+ѹ␷cP*k5WY>K}g=OYLz\KicSl !Mih&ᗙw9:]l֫Lf0"Y,vOP1<9^ ^D;bfZ.:ԶO?Ho:N,]p׃q GGFqxɌ1aZN]UqPJ w6ӆ.Z\H?!9΂֤SۧC";2"b5)0~ moؖ X(>ezDs!~16UQkѹ\֝–cP֮K%̋cS9ao{ǖuXjK"|n,A *AWxERYTL#1C}Ncri֫k+5wvK^LP]qb/mm/*ΡV:1ǯB@{tNELѹexgq;UahDw G5WDAHD*>i͗}7T#챵@ ¸peH 6%:@ATN4ԟKBG"⏢ R\\=|Ε`qh$xO6 \٧<h(OD-_y-X;,}#MώqE8T Oi1/]Yއ¤ utd# !$o_~E혅 9|0iq,&F߼ݩok5)fr[ͫc+#P;H et%a,nH:V!h}\W|ݹcFjE:@'v\{TI7.4[K{D[C#utImFɕϽ[)Te6ڈbނؽ%Yچ%ӃbOāGf~k-ɰO!3ͥxŶc/N3[Y  ,ЮQ3tt9°ۉ ٝzhY:\ %|;r!hT6[|5F~)m,KZFu' LUd !O.N:1L_+`rOu'!=c. i%.2h9D*,D׌@̻,x5Mqލ } 0$= b<$BA[&}8'D 0JLJȪYwXCB 6`~n{̹)"v~0r;5z^wSNNNxfڄJ^'\YO*6, vucgмX ,>J.4XH 5{,d8V7R8n0?R;s1bLWRiT?o?ԁ~.Jo?7BQyjM -o˒6-tjVY#%Q:OVrl䷨yC;3{I'|Z.G(N,7Xcz5q|i{>APeXOuR2[`Fdn`lqg*PbGEdz0DڣX yc[c-ϷƂJyJuMxNkHGs6T+ Z@mMb֪Ȼo2oE69lY~^'Rg`b;A6uy7%plgc[XkY -:B1i-I7- !'lFS EhC26Lk-Sݝ^D M 1GA\ }qϸptxEʜP{=O߫;8ik Q7Y |ئϪȃ _'f#7LDl %Fk)j[yz!4NlfӆY#F{D >0ƭb#[$M!>vQ5H8/fEE:xC6+R⴨[Vm1`n8 G$R-ꕙ)#6fOٯcs#kD~>Uoqs¡ZxP_+{>;[YEa˕1$wX3y'Ap\0Ғ|`~ԶuNf }΀ %Hn' yC%i/ ;Amq.'6?sP9PvsQVD`FXH6_ne @8jꞴ[_C<ݬ$Yb2LS(sNs,+pGm͚j%f6UΨKNP, 'ELȓ[H>*郤Nqљg7b Lwe ۥn -|54$%%IgSڒ<jSt=195(<9|+ 䖋CZ*k/MV {e4&l٠/9ڨdJO9QT\ *}.n+q)wYdVe;ī/(O;hU?tRZ"KF4O3[ j>PYm6--D9rJb-_]IQeb/W2' 5a ]y=K9&W uH7I!!ZXFE\$+nuN)\JI8_yF^jqs' +v(=~9dm%$Yiߗt>WpiWwVZfZާ6Apj4}ky`bt_zc`-}ȞEK/6bE>v3,-gZOq*AV#xjq܁zj 3nrm( fz/ySb4rOW(4yO<|Gz;f5*} &(ABҋH]JG('V dUw䣙H?S~r(DzHc#J9%vęSʟgO׋˶Q;oS1#$&Ji~fL\tTɧK:cc꧎=n4eJ#S7Ĩ(BJ%2\?3V8`S~kN !ƵE2@P"ίaE{Fs2}!~\ϒጎs:| @v6Уp;$|o+A",] {RSl *IBVU*Ը 䋊L~?Bb[[a}+@(Hç0& w}y=ɼB0 w7<**Iovk Ȫ)qt$e!@I_q8T gU!08FT$\ct'4TV~Θ܀æiJ.8TENw_+g?J7O-;5_i&7bB`w C7X],{§n~3\hXš1ɽrnWU*I&׹x[A.`6)lbȮ5dẬy! V($j ^a">X P.q͚B&#K恫l qJ9ī+lA\9֢ml̝3mbJt& VSc&j;Uta/RtUD:n~Rͺ[]Yʪ"ѷn_-|Z.r9vu}JD$ -%59ps'HpIng<,N㡯YnhtCp%(Y <"=T_{;Ou䟽l|l*,U=46B]@ K` |43Ey$xE*v򬯨Q/ijcENx,Rp49\0j0?Wxao^gu?Lj$3P9Pql(ޚLM߽`/EfiEjg(Xksaf ؽ͓x gr6+I*Ciۙ2NF:{IȍX5uz=tCJ.kƥT,YvEMS"Q`3 *K DD\H;&)7=)@/|V3 )fk+_Da/!|p*H-ԙ؂q ^p~]3WSoԑ4=cdѲTeIJK̉]UpYGyQ ǻЋ'Pu #v^؏E!^1D٢O=P[>j^{s.Kߓ>P+ pK7e(bmTWtl![/xb>#3reX:WR~]`T!W_.q֣LP~]>'pB aN{g|"mfE0"G5xaYőݙ5בh`N~dKpq~ƅ{!%Z44B$kVLzWߢţ#cxW t؛m/ E;ɔ^}lg=Q|&/g}en8wnU@MHmdЙ M<@5`yv0qLMgTڑdLTݰuS?+\Q2 ysZ%GwX@hAX 7T$Ph1'0#8wG,<̈k 3+0ZD-`?rߵl[mēyqw ]q['q<PE歨X̟GOg\8BM5XjSO%+} yxA*B4'dWa_UiHڴ=\tr -1>u4ܫdvM|= ? MдxtM[#\o,\_R~@_ L"gA0ЉVߓǾqZ1,(ԜNj"EޕFZm%wl]aT/d1D NYwm1cY7܀ 4>9P'P/ۮޟȗ i!ǭB+5N˻(Қg4&!sG}B#ztF \FQ>F _ @ ״qۡ'wG"nm9h}|TDY"-.)Rűbwgq@M' @RC/`]N]%$A <[o^|\чu=*Ozj½Mfj0ܪ5GOϐ?'KDQCa!{`Udkf 7. B66=(&Ujq(Q~|_mL?"VTqZi55x_Jۉ5e&TɃygH/|<`-t˚4*ěP=Uqq:.aڍDRf_qbjz"&\^.)aP_y,or %܍V}.qwbGnEZ䄎0y 4^z1\nQZCnNYGg*kBaǩut.nݛ9$pV@zfC+ԫPD&߰N% څTpLxdf2yNRb+5q8 W_I|͆;oŦ=<0sY\(ߨZE/V`QH/@Prʇ}Fytod*؋oFL%å sd`VG ߠi\%@m4 %s=LII#N*E?= /%i*,>xzi!V'{akkg;u߉>xX/Eoɀr u]^{w"!zLJGX̠-X-O]$ o, aȁAdR V)?ͅϥ3X2˼¿@fo򈗭 cw{qFDzVŽYTs1|0Mԯ}| @SD`|C `c#}@6ŪPi9dVOW,!KĬ#dпmx y˭f~qQ%iK=)\U_w`PQ 1!]O2CkŶfX[pM2ʹ4a'7Ջ4|ԣ#iV!9:9+hίup?v(_̾!Rm%1@Mpyli>׸`Mp-$?#j%Fyd361oS (' з K.QGME UDdT؟^ƻU3oriQO6<]N}T LmeT6䍐94OZY>Σ:]*ڿt(yD:Z:iz\TQ޶5zL"0kx-E*)K.Vk.Ö54 PR R12/sRjM_kYRu p"bS2ڙ 2Ċyn&&oI10Oک՜/bGJ|0{2h8](70*" w/!% WdSx9ޘ~!)] diCg"l+(*uR蛾ew$}d\ԖW?-WE;z\SEI+PVpϣ #s 1iBqɡܴ(VlM}tEN=HpQ`DR?>2P9%J)3ZG̫"Ya,BJFu[^~Ό nBnH>} 8 fk^aWoq#U(oZvNCJh7niGq@6 .QVؼ&OF xug^:+Tqs*v!Ѱ!paj[kϊ孵A*M}M#Rȓ(>rs.$aZ͝d&aN^93{}%7Ǵ#|>Y4pX.8qR;Ҥɪ [^s)[a @25IDUZ}{f[ɰ 4+C*^5!aTm4Q$c"fډGQ҃ڬ! u*cѽ)? #ZqNҬI)F*NTG_:T_[<,{ڋ#7bSU9\yv s D+G/l?A~6Z "45(؂F„iWObU r㇧)`hHWqP--?RY4/*҆ؒ10*h_42[PM TY|b^xܬ5t X(s=_]3GԽΊl2sQZ(CZUљȈ TNN B}d*&jSn/ m&0-1HZe 3gA"7켼ZN ;cL  S%Yeõ6)YFIDX~H3wdhv/B ׈EhUo\*IAsvp@ጭ`L-ޖխmH.q.~`[ӳwQYr) /UwbrdVR PXO"!m]p h{@H;꘼ im-GC|πZ8@sc?|=} O>)Оfʠ,B WF#t2+HGN.;@  X Ɯho$ 9WjH>`~D";w߾ Oh\Ho?B@EZD_DI#vplʠ usU#RXZ;ѹ0jSWHASS ٩ iVjwMG?GUo PRקixơ0CQ4:" }!ƿ ^wS]eoN8a!CW[;F!~$/KPLl3SSyq䗊E[8_|x#^EK%HSEq -NϝXfh{"9w(rnvqV[ v`;g;d/]>%޾ocIZ'zx"TN|hE)pA>.OEFDx*Ϯ^Mr-r{_bt"}mcL$ A'h* 2PrpŰ Ct+6JLzG])lp>X5@?F xȭq&⌀6L[JA[L H)Rêlj]=J| =K{s5{LH -݃y%R =%I[#'3^ʸȭO5i忾ab$15}jtxF|LNq lqn{TBE@=^U'GZ+ܩfq<:كZ5C&^nQo]hgn#*HE[]aVy+4ttJ ~Z}rH$k5%"}gKk_n ޸WSCB! f9ʅUIay*LDvn" ne"BHw}Rwˠ38\0m=k3n>{wmX|:7. s:+(=G0ݸL憌&-ϱ/}vi^->al I(h3pC\"Άs(M~|Jc^ kX2$ҭ5+ O8cøC%$e \R7O?̀lBDZ 1T.L]E_ M![UƑEF?Tժ=ba}yvem5va'q-weJձjMiIpGGUu6ڢ WK-@3sCIExo2ۿ{ c 7/?ҬNEzƓЏILezmt^ $ڙ\'b"lDߵ1 иrI!%O0]]x*)}};)i]Bezن^X섴~+}z977R_u 00(ǀI )HF㺢 (-IRi?I x;e!js2j~kbn`h NL{!3:ět.v)! T,Ήz>y("0TGlإHץmh &fZU&F-]^P%8Zn}w?0>pC<P;٤ϥ3+K}vګxҖEm0.b 6D\<թb_B@o:d?P7? ֓rݐAWYv0D8!c8Ľfm7Q'%($tW1u'&_.8IjeWѯNȵi$[(NA~Κ;>!p?uD|ul#m@^iq):ONu:WƒX\Au" lO"8 Oa/r5c\Ցi'6d> rH,2*7'{ DMpęjmd_,1xac>+;@0 4=|3sq{)/ 931 W%:X~۳Ml0tdcoPc6o/nHZKHKӳ?=^ޘ#eB_e[Y]<`4B=*@;뇸4zz6{F\+;Jr'(O|U:c`Ȋ&;Wc%pc:⧯4JC$#g<>)xR~ZSoR +3Xtړx 죛uHuVn]Q}>H|}`%=Ǎ^HU JBq Q^O9?P Xe/{'ymMn;] Z0Ƅ|DB\9>؀QċfǢ>` U؄3K_QJ5Xr1ֆz+8`G8MĴi|: SU=LwVe* w8&g-V} 7N~p,`68CoS*isYε%/F>zn,} Mhm:Wlղ\t&\dU`)K)IHNswfUEx6ZiYW\Ww>5Ƴ)U:V0WAjZBs?),P+l58{㜈BfmU5zdSwӧ;߳^ 5$tZv5\/yn)] Ҽ"V)@sQd^%˅$'`f-IWp H(< `Jvy<29eIt9F=U wfD9,Cؒ,8P6u(&IVO v^wQ—a7L4zQCBA$VqLbEڊaip۟a1a4В\f-TY2Ɵ-z$Kyop`,[j,PO0 RhwBֈ\b̭˄v v.hEqwkTw4kD2L$*~Ble!Pq\ghIN Fre) v~QoeT\EF319t.d]]c.Tx(Ge$/*6$taqf\{`F%F5Ο=y® Z/Qtvr݄L& 7.N=. 9\zQ1ҜIX-gU J/QlfdoѷZ%auA&6.,5]Tq9}qz4e#XQd9Iwo-ՃUQk0 UetRcpc~<{f˟ٹk;ɹs+k$|+:}6bⲏl Tr`0NO#ڊ7I*ywstᙖdNG,Yc#4`$:ibX},'Tc}wUk{U} $́j~4H$3ey3߮jtx8;1oc{ڍ9T<85ϒM07CD4кO*#SHaS1vPƃ@?w=5OB$q2]$0eS좯 ~w fXTΦS.SJ4hfT=۷zF%ա;4{ EF1%Y^!JlyzI^EQ{hJ,wcLww#Z-ܸыbD"4y4ܨSHڽUpuX|8?`L:Ònʘ_vadXm˖1.l}wnAz$5O ;iHF[TYT91?W -t y4 {7UFM!|9%/P@s_)6`NqH (u($ )8ūfh Y=蔟M:Dl>=V0-|I"UXO5[:cfO^9mȾeIQjV,AmL<{7 o"*5= oֲŎpRj>3g| LL#qV^cťd3VYW a; (1iX"%-d1W{ryp^P"_j !F0kªP: gG{bMg7ZqtUT "'^-Z ͝yZ󸭂̖w2|yх \]P 0 @n}iB SZE[>v^eH4Ao+i6xǶe@N6ϣݶecT SxQ޾2+jU W_=ǧjG/YHH5Mz0ZP"HG,8ygEYt.LSү]*}iF1.hA(>ߋz> !kvR*} blqm{09lL|=7("V\Ԁ-'KK?l(D<_;:;2Tu@'<$uq7~՝}.qM$q4jI8H6~z{299ZT&KDL|+j< 7dTh^xwv-DʇCڞJݴX1X5=iK(Hǝ[0픑 "](g[}[YN74iHުUIԐ^6J b"/ b+ވ'R%OhgBS0v2uN|0oSJuZ:17֑M֬3 RcD=8Y ֭6]Oy2 H8KLjѸcGd>R]Oo:+Pl*cIuNW|IEM-'r:Qe/}~$)v]>qYX&v!3)--_:q~;zE/4G_o/_zWtď0yŠP3ӎr+ƽ S7M9;uWtJxr".t3.W.x4_GY~d L'k[Wð޿sHZF?vH<࠿vN-y=M%Q}&ւueYROMf#ciA㫿;/Zح܏k=$!nlPky'A2pK8aaGWCܑ,{Da 0ә &ItnW!Jd莰<&G䘁S;?vjztwg enӐ@"w}BUePIds `<>paf۸o6ɔXDt;f Y>_>)!F|w*o^Dqa"l,, ֝6/JU4zٙ8&TQpn * TbQ.m1cxX#ey[M8U5= BpP"b;7QjĒ%7=+gs*csW݉ˬGd9J! O*%͹!oG@BMͨ%} FCrt!>=ݩPIcZ!W?Jd 1<*B5Dw#Aw%5qX&e]u,{*\lœ"B/|dߔ)p ⥶":@RTdqzk&aYTxu8]$`{EGJtτ/'BMV0Jb٢4Z̘߳ ğʺW&yƂ C#QdlnjPkd,wzjoѪm]tRm8}A%9ӪlT A@%0P):Hk]7ߊnJOoxK%Z_Si@u^$ָYZ"Ebǂ8(@*26a8XF BJ޺n9Huw4J9K(dJ )HC;uJu ղ>-ڴ'P%9nKN=\S=ˤZorw21jiDp1>X`#dnLΉQ`$dsv  i*U|Of )˫{Yya-UIB$ a4~'7W%z|=Jg4T!$bpXX,ɱbudXA*oID;v2?M"oXȅpQX^}ז3`~$[)^&xǼ]Ilsx]˝ɩnv\o r'}lBߙjl-|ZRe-벇Yq8 ?s9P ^FF\]>j RdǸƑ3#iX*{Ek. foącA~t8ZTP#m 1v0 6՘0l>.-X~)gԱ7LCӁ _?ċ'%mQ`ܱw; z#C򻲖pKf,ܻ69@(6?hOڗ<)iɮF0+Q.lYH_Nj4u9">|uϊK4ĺB.(HR X&'.5pc'gpkpC겴=II@P]@Da)ZՒ auDH$;򶏀plլbbp?~F_p-EРD2}:;HlC8ZПs|Ygk@#%;ϝ4EaKٕp"Pto(e"}ȴ~ɏlk%)1N5h0*.ĝVl `hY+0\ omTIƬdVt h7\%Pɧ;X8' ?T;Ѵ43k97A>u洣Q_tʸ]8j ^ +P!jDH/{cljd*bDϞRL<̑0E^jI# !tN ;z6 遠0Q<%첬Aü 8k;%Kt"7962aYl(4~gl1 іvZo@pƳԡzք#FEnYcYVᬠs³ /(;h":Ǭ$*&i8qxjT;aC.Sﮑ"B߭]lUMj,dC}0 QDfY$/KBכO?uǒpxf%0o~\7?(>@@\7 jJ vhš@dd@b1Bu‡WKdIqw+k̪8iH/ S\F"Vc 9|o{gf\n|uAp7K&ae\HM>I8YkьpC5OyAb_sDA g=z&YL m鉦I9Bs^?^v"W|DsmAAR_re44W@ U'Z3ۏ/dÂ#6fmZJP aV3}+2&Ly?=5JŖ5Cb sEo:}@Y=iJhּCHrn2 s葊{?+qAk#l'e.CK,HUkRIqr{XQZ D6q3cص~ Z=+ۈUhbhZj%fGM}] 3Ҭ}./L!2b(8*`[I~.JO%ZFrT$+Ril} gS_ύ9c c=Yl,?#KÐM `l3L2J\=D(\T lTqݻNf͞1]=:Q@B:X(Ŧ/',g8# jh; WjكVbYMkAZF8gΐՇSbsp\H& /A-E _cO>#q9Hߊ&v$`:lGl/POM.-)/BF X/LOQ8ǝ|ǹgcGΚ8NuN<na㢾ΥИ9iskLcDٞt v1ǿnjFrwW*f,Wconx%r#FkV ح!5Ʉ&د<&d?#aa7/C^+}LDHL&*\9Iе;k%h1r4ڤ}_tˁeVx ,N;Uܕ$gsZg?G)oOnտ NHC/g]kTBX+ mQ}ŃMM<ЋPf9 _X80ĒZĢ;6k9#Kgt9}9שns 6}#yT/(t#HуyzW3sE0 ~9 &Zu!YBF*YI4Z#W7tKǓfnxr쑞G_ٵwQ,P|YƳa I]eS%R@:IV=D6qϨMT믢<{U>I;|ib;478eHՐP $ H,Z'$hiiA AN#r=C{"!f~ZuG4[WW֭.JC7:a@ҜnηR LCS֫G(:Gv֊\9g$a ЪWpr7yз-NWE8F~@h}Fez_q[aHվPTӒ|K(SUDcUoܛAa +QzMS?H,oDH|:'(p>qmj0IgN=%|B67xRG5!@i4]%X(X=1΃"-k>TV( fHAK>Yve&.aQcV _.hҷ*^e2*OU ]P2 ھ LKسΝx>4K=P"+vl /2KvFTȤW+R׫3' d# #̔( D^-u yWi&n gr-܆)`Vi%.Q=/FK*.È=8ܠ"_25g7vt򆨝eD<<-wtO@8Z.P0RnނA$f|ϕH~*.%+B10=cp-%=m"'tQfI!ڥ$~q;d潤`"'@V@ {O~ F)oZ 5'?dvK+BI&fhHZ#cك Q8sYg@ &[VZ+A_p-sYr#9܏Ȝn=Ʈv![aO^\i3*%fLz^__Ҽ7R;atn*߳ȃvpJ-h,c UkU|-B)z+OT\(BL3 <:RX`o \.k",CMg_U,t_'+0t=& Y >wɡNQ3e{t'P;/X|1%%$3R'z 2')>*CKS@7c*1x8Bv%(W6qb:x4uQ Ht_~6!?29 F&R~Xn 0w=\b̈*kzDƋ3f 6&ES# Vq ṺY=߷{h+ NMܿ1ɲ)x2i"񃞇 :F 5.|bEmC${K>.-+Lf|MWޑQOZYTW!V9 QttQ-:uQxCl =䗼 O"akО==T3<7U Ms=-^GZUE(b O# &! DDw 7zk@y; {Csc "#TS?HAP ռ\>Em.~t'=Q\_*x,o#nlvw0'SAt3`aG6IACƝ Qu[ /ϭĵ[άof vxo~185- `ybOַ$\IPi'!R:ꗿm@٘=?jcGjh`jaFgßFE3!$cf9ۧ 6dqV9uvDWeY5o9佫_2AZn 89Z1tX`:IMx+4N!_$QH]qx{p$O ^l"BV{?b=th-8:".F h}f!{?\D,ꤹ+)K_IzcqAK ]s뗧@L\lmnCa [O$A`{ ۤ"ǺOU ,&3ue[h6![j`a]#3SG3\3`kmV?S 0m[jixSlJߕyQUsi@& }/2#I^<(RA%nDQ3z x)- zL7BM?^KD<%O߬?yN|-%R\JQ+X~fZZ},}0_ Q+EvMߐ83v/^UfCw$cYa器W jɒhKe4~Xz1)) G 3A5ejM(зF SF#\YsH!0.Nr/=E%SlKՐ*x)prdď8Na[\H1yCԻI( x0M/۾fI(ܙq(PVO ~}.fqZzd*-ջR,Ռwp`4[ӱ8 ĻhB1e|n '2چbL O(H0\8嫼T/B d>0~0tg =.cj,s6&tT@T13=nRqFR37BqtSmtQ(G,TМvXōfb[*3^-o%  r@.O=)}8$jf@gi+D0Ax\!(6bn``dI&UJEN盈H@)Y%,Զ3Y bsՀr=`<=s ,HLm38~ >uK-^zū'NRe4炀wXnA/t;yk4 Nܽ4#% ƊqGfkWbyԏ̏c9^wOSfi l5 n8g5po0f3ۆ*M _i_[[ @䁐(f]GEV)wBrh2zwO>frq`Nڢ;釛&!P[mo΂ܲ wtxP3k@\"Л]OLg%Q:O >E\y[/9OW T|}fBcAjkލօKI7a2RfiW.5YN|grjOZZ2^J 6dQjP&ا8VHHn/ uogoճާzL%Oe KabYmhú#AF}-~ɓE .šR7in?-Z&B!MMo(ٰ)o`c-3z?:L8.Y b 2ʰѢƬ0Cu(W+zU ޔpNHz>c-rːiI)ح=?hnřYլKM)q[4qFHZ@ __Oe<U:GZPT-F%! u8zLߏ;ퟖYԟr&>mW^HrPCcj `: \ -ڀ/!h2|={@'nO-=Hnǽ)RԿܪd;N ݑ)be_Y)m^Uht<~OاS .;?a14*4S)+QTjRԠ /oSG8F:(g 鱯.ڡc4 %`w` ኃԵ^]6sDQzm-OĭJaI*`=\w-{5kF$n%- w%xe~yVM# I\0ϷgaX ɰM'XS;n2}P.Qoeg= Ia*uHCPjA1tʚ<.y2xu;u#}5>W,rUC @GHlo ^X28r(޵7<1$Umoz,y2#sB}f h;7xa1G(o'5F<bX/?/]$₆>&f{VNO.j?IyuagŤ=mpåޅ7&7ɹ]V[4z̓½g}n0dM"o +(5Ĭq2(s# ¶jEugo4 T! bϠPuSz\ ,P9 rLo/fJ4X1YUEcsw9 iQJ;]i<>Y=Wtˇ>㿞;/jA趗e.VZ>&Ww$ ; b,-D 4RvHIefBB@q)`ho+]&,iZhS)^z=gXw4W2wK6"+?EkyxYm lO?IgQk\-FLJ_6G Vc_7Ӊq"C:MCq垠Eb 3\>O.`8{<<"OIo*o{TYZR:OhM_ ea@0b 5͝+-DY$S(LZNdRmg͡'. I#%<~O0"ʎa[G+} u2#Ro-Q[U%U n-iY>J ƟTJ۩ʧnklbFͶQ?C`'N"Xœ4sMhk=u;ýE{5HhDb"- pS!ƅv=Iq ~-LdIŦ-DfgcYWR4iݙ7Gw5XKyY昧doi7Hє<.A?S1ކHo>o, xTFg`wyji qriL/>1e}&!/x8Įǫ:10gat's  mom'(mM$z\3e1 9# ^/9`), u:N];OxC(3šDO ^\tihMDXlͯF ;2 -ҁt؆,WHo*Th cҟK6hkN6 qWF) g,eB+Sy]9_٥߲VMEٽTʓ=GnU[c}S ^7C]H+Ւ[4* :3 E99L۶Lg$GC_zHvI-ouvzQw~Ob?X}Mcq[H~f1G4ȌqI1'՚{z񵮄ϔ,kj#SǡxRgK^GjT{Rڥ2N;Z)!ZQ V2^GA[>XJ@&_!v(^htÃF1b(JvZtϩJ+]CiqMUg"\vls( NBck4{7z]Sf,v'fS uϔ3Ҥ\qCY}q7Tj~3t4KO[-螴hah#[d) 0iU?伅|F\HS#HTbEU3Ub21|غX vf 9٠/Ys7$MxУbbg:HqL<J% "g]cdpvzrn j7e_"eEPrEa=3O ·:cHAh &.y9[t:"@ Uh{Dߨ.)tHԉgIo3 pЧ[D_>?y"t<~R/5n@9Qqm~~gy*R%`W$W*`N)iIӦܯy';u.[GeaeH^8 ]3G{Hn\? :3CYbl}j/*t<}SA%g"8%]dĩo\nG ^ilȇӆbJǹϹv(w{+I7>k4^ =87Q 4Kl52 ݠH~rsj%N8S$VB3Ea*#b4ep( zdՅ&.~!q!2+HsT/*)iЊG@[5wpcuHB~s 6U'Z= efbk*I(SYfu(B,;4Z̹kWli٩CsM{#Mfi0Nu7ƿcYa Б^aՊ3E̝x4_WlY:.fk 1#6)"~$й38`u 1 tӋRKo.Qxa CԼwaܛwϛ}`_~M=Ӓ+[lI0񟠶pD"W0%x?Z>2$= Ͳh)(G  oR8 wX)LOo)g (69BJアOuDsՍE3샢ʖ Oa>cĹym<#xrˉoAk>4=͕CvT}gL 2*EO ?, \FäPrW*_0B.Z-ċq+RWu:ԂiXu~ϖÔӢfo $knaii A֤P[3F{\oRjg)S&nUjZZU`&w}e\DF\WC0 gu#)9L2̞tnL]BCgd >f^݄|N:0s : D>'~UL_pU06> /;`;I;3_([beFR{eUHt&T-z<9+?K=vs0$Wήn>WlRV ʘpdÐ!4n{Hmң:_? nq"bDHh6/ ٹsR G@87ֵ o%nksP (eå!nmș|rȷ(2KYafB%(fD.roFUE@73˾y:=q  y jC^czS%F>^#с>MEg^P). 0!XX3z#ܥ[J0^cJH^SH~%Cx(:ebgQ%.G}q-f-Zaˢ` KmRtǹڡRN F6@e/-T1*CEIlWa6U}!8|{R/.7x^Ӭ1o(sbfր=hO \ tjs~ z*pqåyvDH9]qIq+fGB0(sTe]rk8u|֝S=:e6f=o`2gs`!5~kNhgˆdC$u sRFPiÍ4|Jnʬ]K6'O vwk$r?/>tPLia҉ZRF(iVYt+^wB˵MIБ6Z#zkYD3Qn!ywiE:vgx4cFkX3E'p~F cۊx,[녏(*;V8XUzCkD2ubN D.6vfu3YVE9$>5ga o肥7iTv'hjA;H4䟩9SrX3_$q^pL|Rv_^=F Y7Qs _Fbu⾌K=,7҆]wCmA,hm!jaqoXl.œT-+ CJx_AT ?F>xߕf, M5&DS+)-8~uw w Á0*&|x4L#>ظv`^VR;5kb68M_lQgz2Xxە"JRt@q~alu)4B !?}v]JL3p80t+BJUI :3X aUNxw]FVv3K2G̵2c"=/PrĔLI<>|Qa7ngIш`v%p(9Kƾ"rK2jXcޤo,ʄ(݈Q }k* EJ {1E펙 Cl)/?URt#wЧaWR F5aۯ+ϣ Mq@16z&PO}4ӷë93s#oj%#q#+2'Gt5 og|@ĝ4WJbMCbs*hi:3ׂ͐sv7e@𻧨Nɴp*= v=)(A|4RLAi!dLAWw w= )/T#bB_n8hXZl>г5/*K5LgK4W:\˸27,T!I 1%YNΛ-/n {(lӟZqԦ8ϐVWJ{n/o} t&3ʒL3VS->E o !C%V?L"Z6Vs? W2H^bA=}ET ?n8MÝ<ϔ*}K†TBuXӖX PՔk>tJ~ČG`t6u9j`@D٧?c=5lffX-AŒbst,1rϫ+On&Es*Y)ef#KK~9ek]k#`Rr;Lݧ~nݜL-OK Ri[`&`dBRfL8q5cn} VFxv`4=Foډ|!g *opDܦyc/ nz*k M7=AGo0y8N*@v{:*o zӵyd@7ٓ+B2jr MK{7MI|+ꆡnkber#u M_LނDX2':SI[XΖ.>7dz7~}a>XW8f9_Cf 6DTاX>cނk?dl)_5Hu56^匭)oxa߮M%}*M񲯈_jVTc\/sv4qԹ-xQ͛]Y+|kK)sXiIYNTц#nS)އcZ- ob)Jaaohe3|Um+\qY9dN^?<|M*(VWu5dؕQ񤨆d/K=Ĭy6I `G 2$ADB?@dcW'PJhp9bO$¥`̜8 L֤vG? rmvQ"^#@eɿcm93T~hm"~ܽ(,岾CXKϡ܌U~gj^#00ka'Y4}F}?6,9y{_ⷄ.i7Q,]Șa κhY@3d:+4f1f=2x^:aKfDϞ6 -qaՉ[#.Ff|LghXsޥ}O%uS& +W;LB܏p9ɘnk:([AJjGG9Ff͗Յ<]z%vx:A ؠls+{+Rj/IZOGn "ˎ)Ү58eD$iCG| U-SӒYhj ෾Fy@(vfGl5RBgXsZ< 8|Tq⏝+bh4 `E;j,x}V|#Gr\nb:3s*AfX̌ot!{w]H-"lT6jү&s_Z"c\ ?$d66PbXgHG/6H] N|rgeezeF̓C2䃕"^U;5 ,}C!¢u59%k&XzN8s`* cNWTTAR_ }Tgëa ;BC-Cyh7ί5RkConzu-'(m}S EC8$7KB8f<6sлi#- uΰI@f;A:yTQߺnS@@tJԂP"tM 6mŽ@:O2~$R @i tMtyv}$aC _M<6FkDK.'z&U S_z vt ?D߬(I nzhifLԳoj)qV\|x*rȓ?fD ˥!{OeKagkjFmcI^;+qvƚs")Lf6\D{)G}&$Ҟ֊9}L yjXnS y>^jPՆzn72z[%;Q/p☜D ӓewdVf atV$= hPyP|y8 ֐p7$b HRh.>E'ytFQ 5mfUfRuM"rOHȎ#]>ψ깹zhH/>T4׏$.kPu*#a `vG5ܰʤ*@K?0Sֶ5aȇwմf29߶SPTJS>ģYt`fm4ltQ4;^-',:K]z~b8cɖN:-hch4_pɜUh}x4xiNdvcˆ9\cQcQ^lCRLH[M"JxN!xzR}/0ɖ.ul6~ D#Cz/&&fp.A/GqHH{h,Mkþ 64v!;`eA rbX![t_)=hʹ%J/\v77q ;TyT?ρ+3J cіsgTYbm1NBastf|+ΓB㿵)#DT%"3M~PxoO6Z^Kx8Ǹ"!{)[xJh%R hV1r |z6vU4Sdv!`S3ԛ$}q.k΀:ح|;W'3dq^#d4`g^ fj85: UMGr诤dWFI9sM~3ݣs7oGT%=+Y@!Wv.۸f,/:f{1^M%K|hoXSR uE#S;i)6ݶd8FCREAM h`\әNFNAW\#DTN`.p78|,*+j%LEh{yZszA#QZAvuC9po^v#*6gxžO9nY;sҼ-wLiy?",៨sTwCNO(1]M VKlx*u%%\W3u.(<Ȼ mj/gU2#{-ܵ*D]Y69(aHw!K|[R n1>M̠VLT}ԢJ.)b%q6sB+NcZz5UEؠ&~E6lghXjr@U]ohe'51bQFB[?VBԘT M}1*ɾWQRDc8o}.򰱙rƹo7Bmt+!O}9~}m7?%G5\pw?h&%ψ ,k W]?9H|ʷǭ+"=S5 ;(+y!%F><`K,2#Mw h8 s~¼TpB"٦u1ܠ lA"s+E,ȖE@SmֆЋ&!7pXcN{Omkle;K=az&!Q SDw CWN'p1[sE,Xௐtw5ҡ(`1sIBkQ`$d _$&.? o8À'u2GV}Tr]J+3t׳z\L\9s.j/V}4\'h{.v:G#UxE$i v 3-'ꊙ-Ņ]zV]]Q$8o'1]]z*]]3S^zBl㖾6д9ŊJ BRZ'Rc`OF~^\ Gz* o[ Y{SAw:;>&ߪWMlcĻaQmv_NvuwlSi?c#z 1$-̯kY;Իfz{ ?$چ{_i>DĐBJfCdFoܛ 5!zt' A}@`Js 5o'8\,WRMQ pA8nK#s5b)M)OߝW~[Fx˘9Oc1fR;%@޲`g|0 v6 }xCy_U9{]p ٻ><߹B;1o] "A" IU\Avǒ"âŤݧӸ>.$v7hg=K}mޟ@;r7x/mp4ÑGdd=œW5Q`rv"ȶpg;3F~gZ^:5e&kۀlaXp' 8`0KzԘhjV|e,qAO x^xk6E?T0:pK- CҁQ>G^‚TXN4m{Lzּ/̨ JflPXKqXV [rJ6x~%NDY?Eʞ)cBʦcܝG(O5Kp?DFd'LF@3y?1BnYnOsm[?=;nhBpqO{Rgdrݝqː%!D@n+eh<Ĉ3i eX)?OXxTGM_ 9.mȽ%BEgo)__GzG7]v5/L23K]~Wc!yV3Yc+!V A3`u'#%|G+Tgo7N<6Gea.";'dG6 ]o3'Cr%5騟c-h[LtĬ^k&}Y?N@1T!: E~e@Ǯfȷ4B~dC<&Wi#~;o]-OX//ED2Cx+9,TL t~lykC4lY>[O #Ϩ`#-\ZLKLW%8B-zw)?6{@;KH\fHA.E[lj !_pG‰[ Sqdym:$:RGcX4XX>SE5@G]WC9M;ނB|I J7AjoK3ch=ŵ jM1'#٥l<['ɯy eke.P8K}U6>k*Q+B1dqwA2мUÍUs`]i;Ul-[S[0ҍ44bwAV 'D dk>K2%qFdjK? ,G4 *q&e y6LtVe藋Xw1It1T)ҊB^.RĦHڒ1ŊrN<`Z v-;7"en\'*u@imBT^6Ruʲ?Xud6PHLUkr<&҅xRԟrIdhUQ + ܒcY~`:gnB.I[݅c=&]>cI+:MV60/{c{ Yc{kKVi/32G3ɞ?T t/5/+]3>'.hj10Dhy2/þʜoU.Ng'ʯzo0 Gjr {f+|!r $mUc!F6{@u HӪw:4ՉBtp']O{+Z4:oy`emrZK>sRjRm/&BW+{CC#psTg}yWcP~e;#LWU~ύuBDNm7Q"˘ b2 g9d`l1ZY 38KSmMƄ>YcGS3XvTdN(.dimNY] b_J{ 1RcLO G=2ܤ|^@":eZM%I=c._ D03ZH'`J_٧*_`דF{$ ^x&mwv-EnP8D%$^"# $qI6p,F.Tk35TQFgo6^Avh>%c2{@2)l43)0"U^dwQ*o羯JOIEi vE IB,PA>T8bLRWNoo¿7Y E#DO?I:QGy*(dѾH} {ER.:t` bU8ؔ|#~3mؖ C(a&!ڪNTrT0~Q {g`".%h_a!X"Y ͱEƸ1OGH~Vhƨt,Gj^ku!'hkU<=[yb 4 )DK|n/lz)vcM9fc=W!␴=9pz2àEvk-u[識0ӳs>UbҠlTaBQC4JSJ7Lk+اIu s1PpҤT&Qxe0F_~@5 N]J}B+|Ei0 $ UR7`j pP<]tyT3aZ" x5Lth~:t.KʥHKDGѥIC. @ e–{0vτw1Wkbp1F sATwbFz,}.aOip&>6~2 fѱƓr &eMC&`ᴜ'Hz0J 1f%CK[0d^*e{7t@ ©5$.7OJtiv#Ц|R7|=Co#jXvJ@x%UMN'WN@kXڧQXEzbH5(ܵ;kO4R-i@;hvŦexy4\ UYR#bLQ%N޳z^ ^kav➭Z.<)MWjǵ,W{ Q\ugAjӼH${Fy! *Il(ك>VEv24m`aꢴ~Z 9$:ڀֻܱ !BRyl^aTBM_,b]-?TvD]C+4x _]\rǁm=Li]A^ P0+wV wH("Wqjfs7}c,&v\J{.rV\>ɴAr'P|=z`fK ƢA>Gf5H8v">z}Wc! W 6ft τ hMio{d G`e.2ZF:巯֨y33C?+;EH/[js.B_agw^witB{Nxme We1NLM`[4d;1paG0$$vGRllW%Br=:6L[Β|@ex~`ko6 .=3B4]A;"WocQtפx\$5hths9vdu` /Tl['@nQ@%sC}IJs9_d$D'Oșk 5S!OOe.‘wr;&䤯=B!EsBwNd4پ4yCbǟP V#;hōĠK-Nc|'+@Ovσ!;_:[w,F)q Q#'vYͅ%R0̀ѡaYwʫd|ȃūn[6E!>1TDŽhԫG<]S#SC7?֙'\h\f(~pm"CO5:Oo /܊LC^M7WY,mZ ut!ma<]Vjj\0]dQ^,1젆 lk;]7D\[Iwˁ*7WoBgW_Qާk)|n `FP;q׋̌0lnT6#5LY+ڂx S2 .] .SI:1M$.1j3e=kv,Z} yJic|tEc.it$4ykQut!<*Cyr kd.W$,w0([ܯ JOCag@QNYc1 M"׽7d aҾjǢ8|Y`%j{ csnוw!v[vٖEQZM'h^|!jo %%ՏFIa/ 7VG Dm:5Hn [`sӔ50?|X4wu\ߐlO460Zo l״K.\;,f1!T./#+Ur5 R}nV9쑐]JP&˗^yp*vtavU8<嗭jʎYPPHLt{=ME+ AR%H.GS1 5D| $rg1NoE%pklw ͬ⣊n/{D*|a4+P-%gz ѵ Ihf e dlU*Z$bc*0y:k+vT<7E6XcPj"IY$rѺ!(DEe;GT͐=b}0TF\4mX?U@'/]T63܀JrxV9S<1NU3 =[WF)Z(iz WkaCJ F3m;׶-*%%nmBrChɆ.V $-/*=}; 1|qCQSHWh%Yi`uvۊC#P7A%FBcvHʖ%0TeQ?o5&5ҏ>P`D A*.,qU67:49s'!cBF!o=S7O¬)8Ɣ%TbvO3^ Hs#R _E p \ 6m6eg)5ُ,UkbFWŸ(ْߏu!9wpQUNu]9oWt".ƽ5bZcOXj$4G<(>#,K 9427+#DOnvش:)Ҧ2:yjhN'9+|# Gm/D6N!kiQe)$+_ۮ@>π㶍 \<*a1 $3RpRS7ɨvlytZ_zD|_/7&t̤~E1{׉w)RW8N*o D٥ >g4=ݺ;wqr#R-*"$РSzMCe-Y>m5'5 xŃ?KW'YJCܫ_PA{#NsoKD,ѵϭKֹCMc1wJGq}4…DEȂnbl*4Q$& +g94<] T6Bx|r#sʻSLOMx25 >W" XԻH{pD ̾ 1!z\E &XQif|WfJ6&$*p|٠= - bYRC9ܰkI~[`d9=qj Z "AqMӷ.fd%7Ҿn]6ABlMw 7棿{WI񲷾qEaIHߥ1),WßnQT]%ˑP<E[xy^BeR 4SSǩ,5KK9$RPMןk.6=[Kvc-.^&JzvR\yۣe j>(2FˇQˤʄ's%:I&Ⱦ`* L %k{r~4t~!ưփ[]&ZxC<@BT\}hNuEӼRq\X6cZ(\cB;MjO }dYgaMa>&2̮;k1j)h}8yGY(6u'܆ VQw=8/5"D68i}%J=j@{] 4#xwؾ . xNdĵb,82}p{ Ȅpcnlʣ}mTPz6CHvCtGsumζ^rm2JjR 1L߰H!2RH`z_9Wf]e/⻳N#Ïl]Q{.]DQȈRjƳeB H fG9H&%+5ol[krԿ%kTAWvFYf=5sS!f;XbYʶmohxfxڹH0n&>zl}>?V(cxa yQkHJOe8ZMc.Ol}a\5ȴ r]~͂d>ZAןI_ޯYZ5H) 裪}4FߊiOo8kP\(nj'\~GG\KR6}\ rP>M^ϩ"rچf/mHSb|-ŬC<z  UD4#tœvs2Bf<=^=xO~u=ٓ3O3EC𷳿pHmVڝ@/Py@EeKh)~+ӵꮜ#H]}+0# &i·9 h|;yKs.A|SmLKEHiщY+%r)7]y>3dcE//8c": %"%'lI#d׹ E9xHD(z6זf+ V8::^=c_`zx3!lb$Ps0CAЯ_M$9l{G!nV5w(OgZRr ;Gȡ"`?>!X9['2uL15x÷54D"-ɝ YTYRkb\ﺮ5قꅇj6"P- MsrꮖIli7ܩ2;WK3ߠDo^iu8S:%)yD~d:P{.ޔ)kqQT[y~(MJIt[CP‘Jܪ9ҀQ{,dBD,ccѩc^K,T҇tbئVmA%@wd^<ʔ~e$^{eNSbVJr/rj!A;u.8orKBzįODz߉Χul( NOAYOM9YgZ%D:_"֡9toJdUe&Xoda*f$ M"1"+iY\r㖄.ϱ넪kw`L͎ٜ4kX91Fi ZS/*iߓ4o0T]/0JL.y%<<^B-Z)%a(QyIS}#(;a2M5tEL{ӤZ*ִP (bYv}"e;4 -we*$-zeٰQ`|\Bbcy|**fkvXdr {9WU\x`C™> vչQlSrϹ ~ wo-f ncM 3hsGl(3D;/F2q9"QT.' , w%>E/ڥkH<ٛ 2(>R;l=ZܛDې T%lq7oG<|3Ɠ8Ǯ rh{FVTd8,H~N~vw˽`!uߏ$hsJA9/M u&*)P(5Ȯ0bX3 v`2Yzakq2G'` gIoۇ̀&v_ 7"/k ٳKڠ9l8]a򡐬*nOҸA;$~'tKIѐsx%(sjY8PԍEdW,ll32΅2.0<"ErA]d7$5ODnbfgjy"4y {s"#AāE2zFx}  O*łR,bdL=\W d.o&Bys]4xc{箿+zV{g5H0 6*V0LYWњ)2/q85V[h5`p+5B8w3ΆKaS.Ӫ *X1M,r|Ղ!Ȋ9ًId#|Y]{_FN e,ͼ_:P`&+RV+ p5ʈ5R mVޕ Z>hݷ|uk<5Jd".-.ͅa!M?9.J.oҡn\H\gx_>}JHTHNTg+3QuZٺ'rR.})7gWV1` Rd Μ5Sf"w!zBesr S|)3)h>R2O"| )0gc5C^)f ~tJf54-}$X۪6⠴A:Z[b1 rY^h<뾚-怎@4wi #= ˘~W1'9F)d(S8;gsIS! pՉҤ:v$PZ I76ĥmWze̅-tۄ-Dr L+?,kV]f8HWۥ@IU7t. Pt(_ژd/1 xaӋףnGd/$gY]j6=W=IQ'Jj!k/ [~[./CGq! qW>Z?:ׂgZt& B"xh9R #GiyS ,=<VV8vi,G.Q/Hnii OVf;"ːM\ QZ#ᐇo+6+ؠƖW\#rǛfQĜemzhq2)5'$F".an9-iIB^scA) f. 33v̇LJsぎuP;(eBHh(S5tR_dq )U]: x٢<{$C@D$N،~B֌wj cug/%h˨hBP`|c*Ljl\pI}OayG=M9cF}^g^aZ`xGB|Z@NI9pؤGnaϦju| tE uT_*f`10VцKY> PApFPP7 rv'd40-~P䄡4!O^ȌfY]x_v>?XT }Gz`TIu/l.lKqVƔ *^|FW,NG*ׂp{]2vϡ 5}G'n-jb O`vc\J[rr l)n!@$R#/]|C}xXKfQcwͩy+E*WiIh齃*%(:bJx&ɛfj1S -!P5 .tW"z B[|V:|G'3sC}5 0np9)U)l; &wzv=+\gЀI>56G!G޸D6:Vw[RD Ư"L| {Ի!s7IK#Ua'emXEm~Jl D2._D8M#0O8e|9!m }~ D#~1-ш7A}Tvef`m>d|WEj %9y7A_I5-RPɿ_|N/hy_L4 ˳A $ (k{0~NV\ ={CK{cNzn&HgÕP%x `GYe~"*%uw giJ3 =U<2>Fun< ZS9Xs0zx:u#&];:Ziu"u}nO$f( bVYD| ࿃o s^wx%mA6iAz}~V [TQE="Ut16ƥClRb3HGH\ Oe7WȠi16+(l}y "+VR'q?g,$H?R~^Q=(h9#sA 4*эhy1i5?:usɪ-cQYizc\h/c@!`x;>3'*6EWVˆ M7ƂGą;۔+lw=t!vܤxYX1Xj+9wm9\),+K)Ss~"UFx7a[-Ș,9>+mHHn/{NMd(}$!)=ODfo뵽/4%{+e'p+mvD[Lo$J5amMS^ܢ$r`8 *wx8o-k%( ~Dnm5\hOV__(陖oɂ=<lj |X׊[^¡tXc.Lf᜴7$,'UI妃cy. SѲ& yR4dЗ@q:ϏHBxxZ:f7! 0ZxٔrBӸJ8T}_4U,7K;jԉ=ȿa9>Nb1`Yxo95qK\WHxptORdp#`~^C\xBŴ3> ^8 8 B:kоt3VfhE34Jsk SŵG>7=,%2zU]x#c dm|Qrb"T(l=59y, 55/=|e3wM@J | ݖT9HZ+yf|wٹK~qǁ;(I̺XB08a;냌^*QԳ1|QzzH9>j9%=*_Vkؓdl )ƿ8Oa< !3T:vч%.'ϧ)`Թ>*Uֵw;?Ejiˆ7eYd9r}pF#\1ryhO(oOY!G@<>Ra`9r0XXS7C,ȷY';'u3*\͏#@2h6*QNₐ6> xycfw3nl/[8aY#'jq/{+ƓB$] 2.`y x\ P^ _Gk/p8^/?8LQMۭSHvAmWa4.a>\h\'$"dܙ7os?(0hj6o'ղRVX 0h}}R S..gы'#S)>t;U1DCkfEܖq2|[=^LQOɟQ:$4W&e|Qb6q-a܊ xf<D/=3-m+x$IM{zN@}7`J~yF@5~K0 jmnl OVZ#7$~RAyRp5sb1PZi@!z %m.b*K{~vσfi`RK3ˠ=iibrt+k-Olr @%9՝g3D2qsW+H+S._S zl ZuX{)gE&>199H^/L_ LVqͫQZr^ NX%$73$a.HbMv# Pg)'eB"2â>7+6 b޸R;3-XSai.7HQ$Mٝ)H}ТqL|6=STL(D LIdx܄J73| u'hL^~09v\@k ?W5H<1l`F's< vh7-*}?r~&!7Vlt0@DXMM .ŒDpKqߐbʉ4XOП=tbn_O5@X%viţwa*NqSޔ뽙~me ~d`ZK1*t,u*dt"K{UҨp@~/4hRH~`;ܨb Dݭi'B+YqeڹR n w,ŮRdr3}`bʖ8[Ĥw{1ܼ$J'+&;ᄷw-)7XWTq3zY> X܇@ՌhxZ7>%:%`b^]sI*tH ]+8d7'Xhs+l"7xVc[Ds^:_W? ZdX%?4|1BPބ/w82/^ΌVe8^~sg^KQ,9x#Z7~Kai \(,+wd_1=pNE޴821ڞAXgӧ:3C7I|ye=`0ήNB٬b6 rK(пQ}v @UZ朰_ CmʼBS_jUcWB/-?SM9x⸱OodQWBBsfn}vA1Id쑭&1\i-8wW! 淺fɦ :?dMg+ b p];HJDaRs*C?W^\'8 b:yx2gGfG-+ޣ`Y 6U%^>@F̳X~ ]ΪP mT0<.[:{-i@5X7_ ͵z5Y*.&hǼv\)wpW$Wc(W%O96lۍ$"LYEtnfIqXZJZmK#:+E:rQAȟR.~(0-Śȷt?4)ۡ0>@!p#,(lhL1T(nsbypҧ|߃N3jwOf˝<|"oq_) ,鏁܄q>-k!>dLoxI,x+alї|]W7s ^4k߅@y6T7Ͷ%Knmg1` \a"2(]^NJ8d3Tjh^teV>m:zrz%`؊S1RJ 4nEߌ[?Sȡ zj/3`b1`cߡ[2|.|?u{t|u_mj9i&9=0%Ӷ5}/Y'p$T ڥ&]٬$=EߑnoU`aAže ytP!νFUrzQ#,(g;Ћ*SIbFi,&_Hyy`NS#S, LiJik? <%Ҽ8^*wTq1 ao@ǚ wQמ (]tYlAˢpØe;V(_IINAS1~x\N?X |1Rlܤ6{wK¤:NaBJ}3HuWGZao+`nQa11KPNt\:M.YEA# 4S?ɐMTzF[dA̝Us("Y y!-uȠ)zM,uk5M &E 31(ki.L{<\"0(v`F1o3@E/ĞS fR ea^z'&+FnDM4~8a/Vy`%d.4]۞[;8;J[v<0&&RWc&BL-f:@~Ay+f#$ѼU0ۨbݖv,Ce% Q0%H8.VGŒB!\]=@D*rO:$2Rv:BazCΰEzNM toSPc&K,Ӆh*_GVw 8vܥ]Ot_ Z 4=Cy3Ja LUIм&ʝR(cK}-m 1@S6a(T%F/tCBN ػuEne%zg drXj_Zm@p) Z ۃ65]LBZbKz-lN0:8ڷ}rcO¦ 2k,5@RF0^AGr:lZd.m[yEYyۍ=!OG+\)ƊPQ6484k>ر &̗E\`j1}ЦMg3p4wcoZ֚0 ?65-]}!'sY6!IMoI0;v!m4FCATjx|(_ 'yW^O]#dn(q> <} N-<Ճ7WB̼ۖcvوĬ[=" @2vZʎ)S5ғg 19df)j.UDeB 43y#i1sI 7Wcx#kz/ \xhÒA³6t6aº)yE!K_LսphH Y:m!Id@7g^y{>C4*6VPŚC[Y.a8Hi0*&Eg+㍇~u-+]6Z`bRﵛ "s )qWpt$zvUHV+Z6\Z%I/Tkj2!ftzO mh$W J7KY9>i[hr ɐ|lȖ(V;.샢M/nsGq/FN:HZ&rZ\T@:~^G{G~*3ht %+V!Hi~ߔ"ԘQsZ7*rp&@bb?vceaj4Ze~D3ݤ w)S!SUú1KW-wjЎ5:]V%g0#*u;ׯZ%{!6af2ecBj~Jrŋ$=! ư>AC3#czd>%4d3ɥƘlAZPS&4u0ч1<}SYX">zt+Ƃt&o+Hأfk_GVbWGT D2a[:5sȽh;Va2t<.}p &nH/ ˺F?>GEGcQ5_V=5^?+L}gqXڙJ$Ȯ*喼pUI5Jl(&͵Lj'n/"YhI-eE/YVS:W!cO'\ W+ھ.2Ai6_6Jq30g`<{c_ۅVgްBIp]{;fjHǞ|'+|16P'z^DS _a#*Z-ef}mJ&q_^ҌsZy+:~t?:0f1[XK X ޺>뻇Z?&Y:yaaP ٬pĬ˰PBwsK`*S @'\FZuQ^NLo׫$HB2#!c]o}4ܖuN|U`0nڐs0OBVЦ ɾfφ79A@CPkU<-=Ns7ߪ#_MT1])N!N_vYk9M(〤!?eck6QnW[ k&\QHh_1˶@g፰طSWu|mPB8sPSTρx)%倀*]|yj"t i(i*U@>S[Zĸ/wTB ON3I ẏ""'EwV-鷪r^GΌtŊR ,[>N붬!]ukrIDj`Ae 3z 7D[ezak٫GRfo2YvT̬'ίP1%9%㶱5 hAEky`8g"N/sNVo3@5٪WX?[BfQ0}K/h!~YP_P h EhtG#d#a,seFS=[*\01dttp% BaꆷK25Si)yY=x('ʳƀ>ʻ7l4Xu3*O0ؘ']K"&~_s VF é!vwuu,pzq<JZ5Z퍩!kGdveCz=3]]$*f}SH e(#̊C2h2`+(Ml|A0 fhSSNTP򧽮&k.w?=_z0nϾkHs%Th/pRvJԍ]4&kW,Ō@NB6-Ȫ!r΄2r*3Ls7byY2ve5k7^0*ɚb:*ılV̝MnGr@!Ui$yw ,Xi. <:iZ1 Qr",9h7֘,"Lra8l?2ɧ،8˩E>. ѡ_+̱ˁN 7mꊟwkؗ.k+:[C(1]<H zO@d-`^04+ U&Kk5UWQ 7~Af8(`3"'%* .S!uӔ Vvh4V$og(IRr:41aD9j38]L"敛t_v[{bdQcBԄhSC6NZ`6>2uX]g$S|0+L? xM(d{+L[\?jl ю|( ۛciSoz9WFeoj^>fbwI,E0OE. LSE9"[7uHXX9Pl~ g׽:(ޕ9+)g7ܝX}MvZU@w7LT{7C_ ,RtDbGBV1%,PuL_!{^; Ǜc 'Y^/ #cV[xb62uX65~4RñtLQ.𿶐F5ft#W&W9SwԯL~)~Ny'³xT2aBWҕt7%YMXGCMT :|m2Av =ovi^ևKP-,N"D`m\,%sOSIY\pC a4s=Zˤ z (xy:wHKJw~٭޼(ȫt=bEZxNrH%K/&YpBىogb6K<6H_J- T^cXWs(([/vRc !5Z/j|o2qghgkqmG[z!)QCģ=a;. mS9? ƣvN{ې剓ܫ**@ pRl4JɢXT3XEW,CZ{o$_ ^@ۚ%puО,'wTS=W&[sLc~@+*&=ϲ Tġ$1'f'/dٮ=d79HX+_O?0r)g(>l1c n FI d7o[裃b.]9k,n1)N(Js<7fEdN*\y|_|vbQ5, lA`Bujf·d 5_QI@↸)x*ufzzm&&gO)Sa=WWY"yFӎ:ID;X.~UKXeh/{r#P@RYIp!4) rA0%ښ't3=sڠ{wh(+~˒9 H_(ՆX-TOJ@VyHt `\ekPG;X<-G:*tδa }*r m˴N5U;ѰIPY[vimOZ"a/OifsycVec>yzlzk` 3 BIk XmKwW_z/x>6@.;Y`CrV~l&t~>QPהU%ZqPE F|.@Q Pkrn0ԲHu(ZEዝxuj% exy,*$ M<.@de`H9~^.3 I5׌۫(DñR U/`Uщc|"'fu?gw,N2e,}A*a<dTyGl<蟕?A @kafD\dBIap^z9 3, =<^a޺' IuuXXu| `};Y E$dWFJAL)m#n5i{=/w#JR$Kd+&Xbxiڴ E>0xl*t5GI\XDpؓ9]q  : È歑9rPu5"Z  Jy7T/!s"0 5*yxŁdjVrI;n͔h<驔}kB&!!1*p:T=!ϟV(ņ_r#s:4&>?,1È/ ,{f5'`Y`ٍg(FuNjU T1FweRQF>JKrm aOtVᣰTU@FQ{.JMlH aC ն-2FGJJ<~r~@Ee-$dCDD gDXtM |EI-0IC^QJlKSÝcDI>vy^低6{ 0U3M24C#ZMN܈Ŭ[~VN#Q" G~ppJSQ{n%-*GGb9,%/yF-<Myu7_#@sfF R‡cZ-fe_'0z Lu&YȽ0.!bRύ0lPq1BvɝT~GNraȿ2FFM3 3 ^Jbdőe|u\|ؘKZ7wWIA)f@#1s{9lNNB^Eъ>NsA|.eOS';Q#D^֗v 4ƣ]16qx׺9 hzy 1@B#r !1RC)훎7'U }]$zJ'Ỷ :,,([ $cuQݎʌWHTPT5SLrr`t!\vSGn|3t_ՇSZ-P V?D}cv0&쾾?uVz>i8ۛ bC8w7; v>pBBb#7L+Jh_J$06hCv=~ESgz@~%H}YffN]'S `4Ԧ;lqwd~`"P&XTѲ2 fWQ+r^^Eجԥ ;9ˡBsEqܞ9߂U IܝOE6@UY/BY^BGpVe->{Iiu{|E:|?Ao\sjˆ..%/е'1X%&= [ۜT%}u]AxTj5 í˛r #TҪ>H)kg I`3 ӮmROCOUtfgkNGE@8d` ?Sa nԎ}RIhR,4 G=Zƨf$;QuȢvt C{HX`=ndZ.chxĬkK> }E4ǨZ\H"۪\ dTĻ&2ɹ fp̱ډ1 r,%N -'k}貄av1p迌bCmWUٻ7CurB3ֻdik3=±rGw/,-avN@Z0M9JrcE,eqU'@Ks ;" MrcK- Z|NJG7P 3q(c fbN9\if.la,P;X;chb묀cWF DZ[+'e/_AwHk( U\!A,S wSN}]%gxT\ /ePu7 tX`|YmCE }p"<p56EI\q/@JnXĥ# x~mGqHB! ߶ ;YeYQo=8ӮDcXr͓ǚ֋\xvDj:))R&c!9^ fRoDkQiC͐t$NEbMΟxў{a6#gc ޒcP`'[3-w4,o/,RX3M@܅.)EoZkJ 0{mk6аiFdFYY&aɻX´(_wE4]u4]Zy,9_f13 K+llBԲJgfxFx F‡Egtz7vf+;Ef #("b:c{riDT$/k&:mPK],.Z',gJu{ƥ\Ii~ve|ݎ_%J |>6͘n oc]VY(zһ}'Ҕ?yN4Ui{ ĦX5dE(QWtntMX#l!-NP\JGb$UJnsOA{ܤ-D]Ry-ft_ĕk'ݫEELjL%zxyJG~,v #QO-N]`̴LW,=[ K`OZST8'bTKsF,'Z0).Zhʣ+]oK>@7GSAZ(N5byOFHHm?|c6Bz**D.тf+I޻g00AV0ْ<л[.32R՞bpoudRoxƉ61@ұ(ѽ+"64N^֖4hD?盦C |E@Pnb<ՅNٍǖY8#<:FxS4C{}iYVBkW7߈@+P!e$q[)3%to)t9ܟlh+[YRH3Y} r%zP tl {]p|wOkOgQ5NFd u`Jh+d)ʣa{l!ThX]& 5*HIqZ6O yyX.FBʬ;_DJ))4[WKDS~݄ @F($G%Ox$ @LfI>󉝇<*^u޸A_p 1t׮e$M :SG Y`WmZ iRTΟ̡AD:4>`ThExPpAHiBN >0ޗR1ArnW^ӍEJ7:ʊxP?P4P71,7>{縫{: ד8PK5Zl^'Roӓ,FϪN~bUI|bisc帽;5o$vW.):}D`["z+K0aSav.CnpE@jEKO"βòGnz? _*쫌GTwޕ0S>8^jD$Mp>T̲,ǭcCz?qʄwx&5WA S"<]ʏ2P逳OD|5N%kL2=a JM7Ap}|ϓS"Z  Sa!PPFm3%hX!X i=49=hs¥RLbNW<#x(HP'f `Cڲ+Wsu|[zSpU2l쓷a{7ؘHb񄮄jlQs=2v3WǨ*Oz%agT4|p.ЊlxG %֗!J)V<;˽T,􇽏ybBѡ߾0 X*_ (28ۃ& 5#Gf9i%;;=>ۯs}yQ8/ϣ3mjKvT/56|+P&Ҧ1$ TlNVTm3:s|2p>1pE)UŽ}_h4ǽ(cJ R94/byxZۻF| ž}:.Q蔬fPu3oVCof>3Bڲ[3NWcoЍi%= VԌ m-ୀ"q{zîZQ, ,! _pDAtV 43nXA\:UJVJ8vQ9Ia .j Z [ `xD,R;B}Ġ#Av&\* WXCaIn7 K2?YRDh_^՚v˰E7Swǰ2ʏE8={VM]89I,œahwpa+ Uq7 I}(Ǿ?)"A i G)_lkE8\8H QZF u3x搝^~2}^i|ΨLf$sy D' |vUL}ݡcK!Qs58NpOR<Ŭ#l9Np2sq|L&zzzVNk^HS J ,wkGY؂䜎\i8'DNa jDﺩJ7t ES)HNi?jDWb,l*̩cU)ޅ `w'.pp;W.XF aʣ9% g8I'SaYڶk<ھ? ݇ň$YsXw@=P: E g U#ٙT$r`{cM:<TlH͏azT:-*G_V4sqo1Z+}gO0d]O=7{Yi(L.hL180RcGV ?w;nY=< (| #>SJ4?uI"ᄆ1޴\ck@-k5+NɞXM.Y@A xG".jFMgۮWWHqθ88$<7I1Tg@ˌ( 6"| k{!8OC )Q,c;ʰ3&Ѕ8FQ*ˇc)Aip5H:Ҁ ԘКi@+Oy dMKVN$ׄ~N^ bs)7>Wa'׵>7T'#~fWROmurl:X]CkYXl [S6 wycrY=s9IIbdrub'kjd߿.\B{4_|}piJF/F0KuV{s E24"KŲaJ$4YR߫I{vRÃ*EBZb5bCce.n`h[j˂ciӺ%o,_=_[RcvwxsZ`^Ք] ^ȕ񮔛\VOS4i;E+P?0tՓ_a)"a2_Mg9enuj0EhF&ZL1Yqz$q]˪\n ~ Mּ1X+1R2iߓqq٤@gzC*ГϏ)qBLIBT~"%clO3X~NֹWIMs}*v݈%tp?>!AF֖kWjNt/ bl;$% $FE]:RRRb]@qJFH"gxwUb6먳DzB'"v`0*lS}bPVfPNe F[MumCpǵC),[ӳ&i(zI6зXCFNqqУJ\RWg2`þ^E'COp iٖΫYT& λhW/IU̘zgF.,?k6MR'`^lLjR(oMl8=&;Љ PT1l~;{SDv#v?D|ӛT4ybdomn|,<{Y9f縊'0GGyF%D)KY?Έ -_ &CC]Ry iI0&A=:t8zakhaJcG {j:{O df)Q9u2>?աg DGoZn @KV.קgvAIaSF;Ae9>ɅӖvE*r[I1^iasp@l)(9VUMϔ km4S҇ڰs!-aTys(=|Ye2ۊRViZkD3BG /oP㿒)gVUG¸V~0c1lo2<>%C"{\N̓+CMM׾A^1qse,VF#79,ޮWӎmo T{Ķ}8Q{( W+lgcϼ(4υ3=7&T\y2W~cpp/hpW!R{;uƳ$i mw= ,0\V0r. 6ޤUg2q@,Ǫ@j\umS҈Н́\ ގ0hr۬8CY>9.b.I_NbD% !\c" {))lsRİ $[Ze6F;S񖚆tadfu'աc >7<2|`@`q2k!2*p-IQ}NSfiI!t0=؇KE!)h5@Ɖe!j;!_׆"q6,jB u;?2"Cm#k,Aqjhv !^Y_x]xҧ2 T˘pTì LeFS]et4} ݼP@ 3+U:0Q~7_}f>.2 @ y\ÆHFUEӒ`D%%Op--fmҦC~jr+W_Ob߈(xߘKDm8cڋz׏y tMJiGuYGLҽx% i(~>MVe`evQ*Atz(Pblv|O-ݿJ3JY׽ZGLCĔp1M5m\ɥjI$)?HhLɘrV-2u9tm<q?Bd-0o"hg':,2e[UeRcx6AunmR|hWL|u~CWd%$dr>R?!Fa*%%֭\RAc0_/4'.gFб8ҳaMIf|1v{J"hPM)T[wS$jd4s:MWDZWU_z: g~ :CcXGaQx`Ƿ .)"J VP`'ghꗌ"2ToqۇpM"!=\4ѼBu7Qa f~]Xr7&I d…C;iy{mv2m ' 074]oib ڞ:bksfYc`| &{'Ǫ#]TIᛲj2 ?ȳ PKQYW4X^-E]CB.WcC8ɒ_ҥ[ƮwB;*!Wplv,2HͫT G"<ۨ2>A]ɲP .*rϙ>*N+(Y;ش  \wpѠt ȊR#!8_EUD5>֗u XzV.Ts4@&xuDߠ~.Re?mW H&y$4}nT߂^jiLSUUIedIֽC~(x]pޗtV};AQhji:399?7e[PNV/Um%뮛o\؁-Sxg-»0Hſ8 o' jq.q=|BPsf|uF$ͦqFq>10O<[?!%Q]ڋU0]@${QRIJf'́e-ۯ|"0d"LrCt5XiR96^x'2R|(kI1QၻQPQpn"c)]hSdP )Eü;уOMM!fߓEbW7v38ڗhnpLd3 oq%0Am@Z5xBK򀣵N&,y[:gJem=i~'j{)u}3f#xll/iIWlljdd'Xu]~CJK><"{?]m˦']7jͫt@)Y, 9mJTL|+u_~A_4H9i2^ 5qDqܔy8OMhQUDƢ7E?vͺLy`@u`#q0/I0K FTe*[I|ӺRKЁjJz) 2x_̚!аhb\ m7E@'ThT]c@iŚI@!Xcd6lEWrcX2w{|nb&%txK io%p=KLu? _/3'ؓ#';ң1ݡ MK[PQX"oT K?h2d';ݟ*DykNYPظ 1N:!f Ib^j3UtrM[$d//_a;_a-uF-ټ}˱g8(6yyO@˹ҼT3[;l_&[sQ~ރX'WZ.]rMy? =3k%@<. hhrQ_a[SRA$~u]2'B8AN3Gr#m(ZuĂ-z!>ڬ?<Q,"{MB5_P܏ Nd0>m7&mL bt܇`Dx--ֈzP+9A CjO2MJ=2?vxQJ^glՁ[,aYz^;Ngɏ1CG 1z kM3WwmIWX1.q]U@}\%WR@,5W%/[|̠! ǂL>r dZ(&' 84j{ۆ9\^f\0fb$QnK+Yͳ=+QS* (1x"3CGLO v.6B`ΰLۋf0l*j1ٸhxfǵ:]<=߆$ ]'ˡKzbmeF43V~>%ӫ۰ \Cv\=ŗ GU5H/9r;HV\H1)yQ- 0}[4D}FͿrE 3SPZOuT3ދ\Ki& ƨCY Ub?@/ /;QI<]Q!)""FHղW޶Nݑs{fCKx.[E!{u +]CD5 I/W CP^%d <͹d3CWKG+Ol ZQ=yTU|< ? ֽ.W 9AEds:v Z44".Jӳ8!A9?f'#zF.fC]jI7X3ecqVZ4䕳6eo-AAOU eR-ݍ779NiqUzbTçr '1e5Ȼ,4ؒGs12eYtW.B6xWV$5_ n"??;&^'u=fZn)d$xq(̤EN?qV-YlwӾƸJj vgwN]M `)xqH35k}&Ӭzߺ'|$ѷQmC`Ae d˯ %E~E:O= 4W-PޛQXn1"ØWgCMvSVpzdS[#6y{MVx8u 6߁KrEhx%^mG~~=dv5btT{4mV?E1%֮2dXP{a&46.>\=3wAp'Դ槾7[}1iB7ڟHښō&;d|1jẉۗbDmԢ4hhLjnbA<-Iۈe꘵<Prw otPm :|rek_?+H$ƟI(u&"JGLf 6TmKa )Q g`>2zee*qB-OgE O'5gWNضTX鐠ڢ"#y'# 0JJ|ŭ­I??\ewaE@H)@3@''N8|Zf3%BL]%[bbMBmʛ8/ř\[IpD_][7[+8լ%9% \Ky}T9̨ZA+|E:}ihgmdr,Rdٸ@]XXVM8ЬU{9-V-V_@-E(kٗM(&IrZC8wp}3gX',(kr+LݰSxQ*Y@>:.YrˤՃM| X\㖔+7 .CZ<&K[0/ft"Xz&^V<M:Z|r%y]~5Ϗ;G RɽW eNgw"gl?91cKۀ-B_/ё-F7ObR\ת3Ĺ^Iyt}N j)i6KٴY#K@0J\Ty[[A׸X܄8kQ dǬ ^ qikҍM\}271+5yl'݌ҲAg鞍e{!EL'՚?-* ig$Ņ6ܨG fs5-Z?J[ޛݺ36ޅ2 ]mr0 /׈#՜+^j'Ѥat]o`uM._TqD&=On>ozwe"@D"/U/lҚvmXkIXFG'ܽ ҌMi^m¡m9{,YE,'ř3yK&Yp/8~P@ɣIЍ lQ(A@u N~y d@k_GG.u N\8avAmw)OY։[*|ғ׮u *-|8^xqXJպ;IÙ¬_A.Yp\.aiN/>R@zx=Knoہ-hXLto +TEYf^<)vF`;(= cq`Et4ry8 P<`Yk*٤æP5vIƳZ%Ӥ+cCX-4}gzJXl*eSt Cr9R]86i W} A!-e b5.6BC>ȭb 0DWFԟ!e:u}`]m+ U[ MDS;HBϰld"125(Qh={c6!65?-yhwi c@KG:72: 8CZvt(c^cTE {ovghfOT%tSgxIr5a:ԥ ܛw5 E+uۨ+&N9$g5eT-eP_ݍea7; i_aNcu[3WARU|:ނhNӕ1X{P;G!a"|ѢIwG?-4 Na#vFrFc#{/ˬ⟏ʝC:c˽K  =Õja R_u FV0=Cm_s\rM R{ V oʧ W3sKglDv5kx]~%XI?F*E~DB@c׋?j#;fܿnڻk^pTED7cfƌi;5*9[.~ׄdMbϤҝ9xbgjcܹ?$y԰SeMjml\< |0I۝|@[i3Wʙ!2$bSHnecNnwҲ+S#v 2v!Xvdw*B'#Ui 5qN]R#4KA5 o6]:=6N:XPI(Ar282`^ҧŌ)^=a$ixoԥG<|e^\-jb?Nx%#_>wuv:Eɗ?Y!uW50aV=,H=F[h*_`ټ<ˣ֡TxVf@ҭWM~EyjO_0Hi|t V1aPoRfg:F"ݱoܬБm{f}k[~umX@_PCׂ#J ~ Sp@"ayѵĐ>wUR,g)Bt-c0`}Cg1bo-w_mncW/J/ ÀF=SWT;h+$ Cm`5 ׭ 7 yuM0eUXܗn#0z"sg3៧V|CAg9K7%PX8CIiު" qIUνyìFnpQԉc' 3bڃԭwswwo@ AA<I\ V+cnlWM͍_$r.'Db=22 ^ @OqRˑ(ܬ\RLՅN5[{hw,^|}?@ B6wq%bGy\yϱHYܓ {vFU6#ee[l6QQ='6蓛Q͓MQȕeш)e5kW>(N/.[l5j({ˁƜ9{cq tkp%{ʡpLcy$#^O"??q)!I@Rr@{2T0S ٗg&3u5*W)ao45+mcǐTNn.^_)s`Əq,#% ;9̏NJj9e^Az8\Fl{RZ7ׇıu'Ru ϲP akOxdžbڳe:t2BW QGԹV)&Zps׭9:ywHjV|mԧG1yH <Ӂč5}93Nq'*X2=\wL o *`ڑom\1h"aJrpP%6ۣ֧۬Gf'dae ?ݼSŅpGc#Jb8b)zflʄ9(]/Y>r}t*!>&W$ҫ,M_D6?Dcrwxd Y>;/q0aS,l$roYѺ$j]cZq~vK޶n/T4h>Q=ؘ!+*Qi]JryS;n/K0:u꘩PʇθoLXf6zN+v>C7L+1&IQ+_Lz̢hǿRyl밉X6QbG"(lb9? zW?OC_ ԛlh/J)U6:$/3tƙcR RZuOI z+:K\܏ .|%*Q4z`rܰm&p&b: K sO<["Q ZqxVWd>! :;k{fkYGg-`RyUKъ ǥzl߬ PqV;( t)̽kog)tuJl7Ps1U:0sGX SN RMi 'hn~q@^/Q'r{,0g)eT2_A#,rdL0 ⠚jSDў@`VNG;}o0#,~C[mфQ2.eD!Tn;uUCXtڙzc/CFiyJ4A_YxogDT"y_a3r2J77:Ȭ>՞ _VR \#BfJǪ`P& v >5$e:[=G,BW.-?ԩHL8` >#, V(:=8c~пd|AS |([^d0Q8tC/;2R8UJ}| ̰Sr/<1y /{Q.2b,}1q>P> c‹Y1g!G+cŤ&cXP,ssqlxI^pYD</)/Bz_% M-qblкydg+,oLVj XCf @Ã`C'&bE$\"sB9kZn.y-[W)O'ǗQuO pZނݎ%Ẍ́Ϡkqs JlϪQQ;F̧6-zAc/׵?4~;}L~am]9o/`K00WV꭮Vzr@?, J[Gt ~t\Ku "/rM!n^5@ӟ д0} M㤴@g d*# NѼ&N;2b4m+QO/o?T_ ;?v1ρuh`|klyŏ$ݘapࣉ$WIaZd++VO#K=Q$n L?ooN?/i43줻x%4mL)*G.41wL 7s_P*I:T.oP6P{'$J(W[nFcsQ=+.^VONAʂgP'O(fH *xUwN͕ʺGR:GK> en WQ8-!$V[}$9s,K[%K2*GRgq{5(q U-WH% Y[Eub4'TI~AHz^ӍuܐN 5Gԣ*|NWnқ$X Z'=VF@?R'-Ê9Ou&4Z>Dk45otP=Yr/B9~XQQퟷ1>*~obHga.t 7?"Ll`"4We,Yin)V[nrf6~ } ޡ6r@0ãL9.q$B<;Pm_O< IOF$u΂T*.};=>R`ɞ82k}F%iYκ`C=:ȩf,qi a^/#+ y;M?Gufy}'q=ʧttÐ|Z v]"CY6.H`eͭ2ϗEbpFu{{}\Y'ͰgT=+Ox)m%{PE.H.{q089%ꖵJ 옷w@`=9g2;L*/Eߘ΅ytMSYtZ[f,edZI ͅ@:Tu|l崙 tCtV#&3-vs<ٻR*K-i4XGzeϡZ9 4^m>G?,tuxc>h̢"wV!@i.Ǐ8&2xMd ߠ0HD Uy8d}|8rS3D&jy=>#s" IA]ŶKRerbwbTR@d!sg0sLOo:嗚bv`F zy6kt,,9[Ҽk)!\B\yoy(d=4'"`$]5 O=#B1#HLgɲu&ZA\1Itb1cğfpsg5%3zz+Yc\sfB Is×tjh4ɓo5v # hY" ,Qa :!ַWA€{?4瓝޳ xԩ "D nǎ,S~dCz&l@l(JXMeӬ]s}@]P+Ek6Ӽ`Y[qK> F|PL@% юu}L̳I'-E mU_)Of)<#)L)M70E&Vrs bkI1 !`UIN8f,\YAò.-P =L,+&e/uVK=9 5uצ1֦Je.KS#1 Q0a{U h:|o$bFrs :KLv{= ;.4SWc*jdW4aC!S9Nuzff.C[c>A#mMw{W;&&lǵr kPh7bGaE~o'i,ؿZ1ޑWy,>>G#adz\J8PC$AS8M)TV=RI)C:wzf(7>_>)=ޥ⌯~JpJ;ҝ^CsAu׫DMyoNBje"= }(5x3kk4ǻae}˪diSfS+l yY$cC9YUwjXL>AUkC;Ww8:ŷRM[\ ˑ"MCW) xÏ:w#3b35!| Y?l8’;٪Brw V{ d6MKVlU/ 1qB?mY<'-9kBqn;3/I*x>=Rbgd8ij`jL4 >uzgm u d։*6Ƚ6>(E&}\j#@͜WVK\lFk]eOu 8fUmoI~&M lJ uWJh !*B |whk-A)M#LS+ҧsw΄*W&!HjoˣN,=%7/p* 9# 4 h VHz9k; O>*>Ө[]3iѿ%b.bpZ+#;+r1|Z!]y\[xnL[_qA-*dwI|0[)/ $hn0?G}ȻbiQ,"6ux >IϡTuUz.ЪF`~^M R#TǠPItlN&@`ˉJ>~d^*v" Z]<_kJ[ܟ@y{װ'Ab7LWT2#3y#RsZ7&苘KUg֡yMON(s?m,[ }^3ˋ~n۞3rn DO=묪I)1 #"N(2w1dl4ݒhm0)Cb Ѥr.$r'M"ÛANo)$ 7N]MWW6xoT톾tIӟv0aSMm~F5w?D:p O/U2*gUv~Ahu@׭r+TG\bbԁTv̒e356a6]z )"N ~2\!UOV%o A ~ېse޴ vcA~eSԕ4&J=֯Y9>vDaK Aڊ>7XnsAJGQ|U/QA5ǞRÓ9RZY8.(whpP8YBm J;49oj{Ɩ+.mcu=BcxRUv Lyࠑ!qu Q#Ƭ96g;ԇONL_2=8PhIS/A*%(Ç+ .$_@ A xTwcfy4u?WKe+(hU A}!3gh:P[:<ܚ$Ht'a$TTS威rk2߫X$W\rZ:bZvˍ )Mnyjގ/@QOw"]7 4ƯVT=i=ܩqLq{W`4G}-xjr袎aA{ZQ9)^#K!tzƃHs5 )m|9D6˷C1ϝ'sg.x"d@Fa)Rv Y0)ծ[K(GOuW%[+72_EcߓP} &wE0L TCnJZ9:R/D i:N=*R(()94SWq,\W1c9J@8?$9L,8z6 *ȳ88R$nOȔ+gyR0!) *dvMX(̵cj&/@H桡j_sZj~g>7y&S/P<޳%4ieݮ:9E}@f~[Z0{{]2#o+h?Ҿd{sFElCj(.A'V,\ㅐQBR>O6~`MPg =Bh>!d8P|QSY%׹"167x)S-?Jt> ViDb>uD8cI> jU~f1-ZEΦ]ڢKx!$q e8o?wj,1Llkt͸İ!^736vʝ1ZᳮgmӪ5k{q\|*t%3"JEjD%JԪ*|I_`MI~\\Wɰm6m8/ٌ*-hNolH߿T yYdvHPgqzXcjSޕTnZ+A <, ZȲkih >k "t\۹^֨^egyp!BdJϝ ?)oAƿX3F ]rk7Ӂɪei0Wm%*|Nm},lӰ}A{͸q@+0 W" u/ TUבN&@V%ݎ`w6d_r~,\1"KM/V5w̿:8uEIvGif.~(Y<Aul\=c  ?oo+<Frh sifQqؘjNER*5$ Z6Մx>y9 2@ f@ܽY1u92Ti}x3]8QFH&槢`zUnsAْaê4QvXu6F  f|ۜ{9X!,/ - *F=9iZ^O~0+v=o2" GNDQam^2Zr'?Daq|Pͱg!.3 6]y0YnM*}Oĝ|Ta8)Oo)s\V &}dߛUNQIk-o}r^ĔS oeBo8H8!TFWܫ?޵OWn[;5ij,ym F[PE^S15t@J_ـ$j4:!ΊN(  3g| Hjhm%ٺ?Ш׳/h !!  a9r-wmMe=EaPܔc=|G>0TEkCN9xn<M<:U`fsu x莒9/)a\?m_xd 1⇅`p8:C%Ʒco V}cdV=ucԡZr oXᏄEMK_lV_f#{`ǭG>ED1U?ʾ|FPV-:?Pjv#0Nw agxRJ1@|=| yh/p[O/~陛ɳ!LBˢ0YCJyYFUyMÚNOZG1?ުݴXUUϚKL[ B%6k]6Ve\hlRL(k2 | RK#<1WpUΐk@M>9p_ewjbOMF)zduY;p}ec8ݏF]Zk4|Z4Y m}m=tR_ }lETϢ9Yȕ ϏQ2v&ᢅ= IP(p۹xCuku{y!ZUB,{iuӈ¥lz*{$xfO^I-0{\1%MRCBu}U4'K,bxr@˞ZD$lj`W"h;*#*6[͙Md5tOJ͙Wi1Ek7YM|&m^&7<`x\`Ժ9a߸6>q 2 2XOKFp?qtJU8\ol/l{`GV,nF"QV-~c|16[G:Gpy#Ϩ7ݰsCxjOh_򚡵Z\= =C|(C I>́Q{hK2^PF!9bzzq"9ed~S`?fL$nRPac:JvV5*tx?k OX(wl_b팡cNp),v"؀ykHT&>=J]F'A(}&{-7W {#?ZM,Kz`^5[UΞ.`\Xat0-jh+ }PpnMQcQ9 g,6#P,yWjk. ‡8 k}~ #&6EUN(@%VT;@ABS.T6&gRG N߱ϕ}٤S DZʞ\#K!1Ɛ"I܁Z3*K.0_-ͻ|3?U|L6AxqCꨋ1'}_RC٫{D{ǧmE)2- IEiXUi+|_dC!b$ߏ?DǭvdqpBdG~Mk{J`ôF/P. x?n}t՟ɕ@-)[8v5/8UI*o2V@xB(VMPLVe!4TK996wd*o!MoaHROYڒ-[*KI; @[ @m%:HP+sP`nBu;uͥC(~W^B:xv[ȴ(" r3.z0DR{1} S-):?VS]z#i8$ŵԝDړ[b Hx!^/m$o^ beɳRСX۵Cgе4pڼ`W Ed@/d  @HwBWA{psܬXn︎e)Q/+1jq =UPy}@o\[[qD_H5^"=#OzLeTÀEotD1e%[UiPq+q[  ]>m2}$l8~Z}SnDۙ)74N  c <ruX@ԉN SqQS,&ʣs2/6nwl{OY[ rgpg4&guSHb+*7OBȞǼJR3딝Jlxpt$Cʍsmgn0Eӹ%*e#:`?#` ɸxzK33_ t qQTA|r忀(Z(;QPZpAZmn6/V@C'HjP1+dRȵ\FVr!>`:P{NzMaTS/vj%nS;ZW;RaT=`DPUQA/ԍ R#A՚̄edT6`Ķ%8ZME7vt}Ӯ jD"؆ˍ(J\.6bxR]Bny KB}.:1 1 B ᒍVlo}eow]dne-o2qDuko4T )_9yShv{ܒ.'G)qFaP.Vl=,GP>SZ-\cJ_ODZ~ZTd#bjc4NĔA m.Hޤ.WW]H՝uL0 f:/=tȅKIÈ3^ -Kf0WIϜ0PJѧa+YnV#K2N\ 䫈&*@h<÷0N5H;0miz8҃Q94=1Hm3 ̢"^w,גɷP=-$o '(dӿlk>fS!6Ik>Q3w fC[B5d1mel˝Jb~ M1ج,wVyԴ˂?F%^4L؍0 &R(l9e]&l(*`BEʝv^=;8<%|%}$K|_q?+QpݴTv{Ua%OJfb¼P*/]~BhȺTXHDYwA٩#J<ψjGOO}a[&}/Jxk Z2-PFqO0b r!eQ2;yzyw!ȇ<]n‰wf;,ǸFg ߺ1MzQ2`]eUTUm $_{>TJ1yC^< 3y|Лv[uk..*nlAqsmِv,?Ժvbkk)C{oPm> U\X1Jos)8Tof7kIB*G :Av]lz3cfWaXMʱJ ZYJ+Xn4g 勎 މ$N5Z!G+āeNB+Z4H3~l@nRHI<{Q?%(wRXckv,H}co!V&B(* C|+'fT߱VS:b%t̤3L$CcnLHE@wnƥA+~BZT.x\iqlZ~b8~X4zDjar%z]xPp5>)ryMoU{% ox[$E^t;5^YP\{u4`af[ڄ;قƽJ)lV$Qv9fE@ܠP-1Ab~޵7W ]hH~`7hFa ph7\ەq21okV]lnc ^@n[H; C+*E:,fpĤCF5,ΠU.^o^%4>`pu !jV gޫWYk}X| R-C^wB%^UDqc4C5!S,tW;mF#ܹE`Q(w =)jdjMu 7U>1:a`UuLUާm3Y6^nN1O13*0sGBsl }s.t[ͳY(v?O|򸟟0i=ڏ.=o|Eӈzl+HH-{g*epz6_`#Xv#7B @|B #]@|p{Gp6դI5Km$a )]|^N%t^5c@;.eFlxNf0v܅). ÀU&J>P& t9ހ@ ֐-9PrG.6^%ݸ' J\ UM=~w~#!޼6`%6txQ @gBpWIZd |mh$Jdz]9%bLJ::\CBX}qQt"jgGyYRbQ=5(8o*ä1G˂&qFTc={}=$VNAJ å :Ը @̪$M0]yZl33Ro9Gx[x1$*pJX²iXyƿ3`Ll|?ĉO1W2Q;h r,8K8:k!Mt AO>[B/}]|oYM9f wܱe )~A ͭ7R,HG{tK bm͙;9|#eΘ]=|^r+&ܣqTWRrƊ%EǠ5(y pmz;?vj%Xo},?}r^Pmiܢ:3'\k\tiDzז0BsTjJO4_ss~ME%R\#6L|']g9oS!T-_8`~K" =3dԞ}w\PB3!c%'Pww"dk\]`YZ(@轥lMz)U]dtsl0Xi4٨ģ+S'5&c >݋|ayLdYꪟ<}>>{Co1$?ƆMWzJڣ* @w6gnѠPo;>P6گCucHy7CA>HQ`Nӓa7=Q1b/G~2vqyKe􋙊ҹ]UFD:53w:$:؄ 45q EdP>-o].zCz3Mv}L?]0+ե&K 2T_2UOݬ;|clI͹9{1̛rO{+wx%K߃E7%4R]P-Ò8WM`֞)(bI[ZDE;H5þ[ZMN"7B5Ѿ:2Z!_} 4cCG4W[gk+x/[GwPr:16_GwPZ[eOv1 XVkH;*9} E7dc~7l}ŕx8 l@Mt2@T|ɩ*5өQ|*S݄8NP5r8\m:AD) Ow⡃F@J; wh(tZTtCgS{[Gu K *V$t9ыB3ǀI[ /o 0I?3+ ~3WƲN ,p'ɯ x xZ+?fREp1˶ȃ|%(%H7:S{W8$^a|/z(2YӰ@B\(mX)$Kh۩c'G9jGN@oP͇u˼ocxۜnv/ٲTI ԤӧO/Nt/} %]2" FMv1רo@?(2ɽO]wPR}>(Wu!b$6j3= GDJ_fBQ}029Zq|N|c*cX`$2OpmFK7]~(KҳϺ5}/c;g)!{Fr VvA2Jp Uy^ղ Amt*(,cwb(;+|_ҙT?i-1_m~*G x)bߍsx\iRT{%Sz`D^'`cC1K Aɵ:>eY/~T)3cL>,*e0@r8]V}_00 ׊}*P./X|}df)B tt+_/[BƵ\GdpE\4`+IC1 G7$d&CuIyZ_32TDSU4xNB7r/^y.OW\[5fshPmo}!jl8MԴ!l]2I%,VtQR2MhNH%,a[^ጨub[^jtn<,7NZ2!`-h2LXoTa ҭ!l%#˖8)nZ]Gv٠һ%yXTXH OCh{mlY!Vo>:?tʓ|Q?P30bȂ(RW;.*z&i[6=*m EqX^y"3!&B3lA!)RcۂmN,8WχAǟeIVCm\Ll?;U&R V}K'+ҿEHx)۽1:J\ h#%DYviJZX+547?4^-'#J즔cfcY^SJ.c=n"wzCZAP P(D~ ;[Pe3 ~Jp<>3<}ɻ뜨d̶qp׻QQ晢-۞Z֟LXIX=eA9i@LVf7YR?P̕ѿolFs2l/XRUBSm)I'MNW]*Iá+ue|"VwU9Y:G( $=fBQ7=_?& y 1H'6q<59'-Hoz+nm<"4,T # . skʰġv+C٤']$s dJ@mv2RMgYΥ+16^ RU?:Ƀs牠k`s%\TqnAb_o:vnr;'G;<: Iu))v‘Msr =6J{̓w0ŬzPaJ>[SEmC귂Fw] GTѤBgYuV[;qU>֘jK I%QO~[2<[74A2JD14W=gKQ$_jjRIkq7RϜ*EZ%(%I:2>^Uׂ#Z{ s^9rk#ѻ1+eK!1vFCtһk $`a2fjTY7L27WJ1QcG|)6fS?durk?P xP8`lВ9u(H}FVfnx {`[&kd%+ FB!0dY7E:x2T iۈ:&MGu;^5O"/ȅ?M.r7=;-da3{ vp5kYQiELpaIPh:vGH$MLAÌ}2+pUH=+xW\=sBɬC;~e*` )8xT@r=\˟`.hޅcR'PYH㢸6tEh8L{5]sHYqlnQsoyka1?27F=ʈ\3& h|пϳA錤Rإb߸IվLJCOWuŌ]⾘-N }>" MelJE+*}\,XfHA Ҿڿ"Zgm$rId`铦xPUyU_f:נbQ8Ag+Ns2fpv'5RP96I|>Ơ@ <µ-uQ]0全+'~UcGn 6'O1sH3槗?B b^4kGOr^TTOP`e7c0#nFn|S0믬ꀳk+t$Z.M0o }'P}_'so(^W E)%J]\f'USϱ޻S RF|߀ ){ zZk!%~Kv*'e@y71Mv 7{ckT3?iǍltW%[tH4]mfj@U(v2@$z fG8RzT.xz7z˼h"yjه?GῶϪd7ܟEX%6;hqZ+״C9~'\ ^3㇄6=mKޏ 4CrX*4-qToKqjt_W-  >M}kػ~C[g1ls!C}~qC$_fjIӕ )s7iG43mGT!RKP2wio. dka417ЪVq1*N|OSGKJ0jDd ΆMOop˚#\4_?Pe`8HnW{0Qd AQ@a`z1_M|/Sk=ęe9םJ#ƜN-޴-:Vy rMv\-zAڐ@W{.,'^ʋ;KOJEZ8Om.6\Mf]&tƨqxZn@DUϵ@v`@FWO} <)VK[~N ,vor;QǵlYMZ}6k0 C>yXy9)5U'O?Xw0e_}TpO·|hM ۪І\GRBO<ǎN!-M-Y<E˸"X$M'cIz؆L]Oq.GXF `:0%/J `L^礉irj52cכ7R,!XŞ;7 2Vmv\3E.7u&G7d bV=i>,x}bCw E? u֑),toERg j~rNźrV=1<;M!Qm M=2;JdJ[^`WT)KEli Phgf)Ḁ0z{<ſw ۃe(vdдL"gQζ_ϼB v̜9&&hGe̤8_[HBAr A,}PX`˿P"])jb>NUaOI>6?kϺXnt?& 9^7Fu*&"98з,|L5rR~.s*+ܯ|m,un؈,?Q7er8;<%E(,NᔫyY-w||;k][!du(]os WkNjwΐ '/8^AL}n.>1o} ´%ɚ`@gm d ڌ8,b0pׅ.Q5Ցqom@:UŜ +FO|1C<#uuɶ$Z0'tUг6N)-R _sl(:\gdDK(.,5%zwj S罧&R!ԍ5ªaT.Ņ:%1ǚo c.( c-~@ǣK\ 2O S?b~2-=g@q:F\*EIG)wؓGɰqF*[E]^$w07D)սU@KٕC'*%}s7q!Ĩv=az.pbY-k+\zK"jmVjΜ: C{ڻP^7T3Nl̑K&:8Sy ؀<ϧq\=3޽Qԧ5j](N-[g5esO㲻;I^!4Mf %ܡ&86Ҋ`r%a[YJoQ#[kQv/>?2l=sN|2 /E䳑mn㩞#B9cmUB̉֐PYMvd~j){P#m w?wDo-a!R)lǒ(Ud)TqE@|5Eot+VmrxWPŇwZ0Dp.,eVۏy n3B勁VճXkb`1*q•(̂' =UuA $l6PZ$"O MBph/X-8/c)L١f nTfA9kD3.8*z㵴'iM嘛x@,hL}d.:.ε0 Tc _toVS؎0CٗPoT1ýB۴E[Q +rYQFaQ BVO_)S#8}MO&ԉŽӧD ge,.4֑3D)ԚH,snd-Rbb0+'Xй=\g wQdH&sSWFB~ԟP~=7F\[7z@ϫAtgQP!U)<[0 4S.uˁ4VzdO@k~M:guѭsvX9kN37h5z*~ftĦ?Dh6C$/|D+dFBv׮r öu2wCȌJZ[!( pw'.{x1 ֌[Ԯ3{qD}X}~ܬeȜ :j^^YczuH Szd47i;/-ebPyAyfBވ%?V_˺DxҪ"i呭Q39T;bZg٤soٌ7qb7zxeRe`mlvH,<KP_?8 HнE$ `l+zp?8x5Gr(eKS^QqFP8L,RvS6O{k3Y}"?N$(/9sD)В}CU$Gpm:% -Zc\+ƤzO`b%YHf @"|хޙ)w+K[Iu1Jw9Bm؛%a`yΙF0\w`n\莽Wwa2TBFg fexp},D֧$ n:?7mdCgym\d0ĢwA>I`1I0;c騾 v[ysq Pܼ7OeR}6$A%&V_ZOPLjѓ,rAmcXpɫA!YEV @_Po(lzD%<2> ;ZUo2kȩ`@k[Q.y묉~I1rö5}2QxJgb bss^AEm)KS)&BoosK[R#S4t YJ(^n@_BLz>6Wژw٤䧢;Ah19AXA1mf,sanVG]qN\ P eӈE^`}XU&@{,&@|# H}S:udSp>0eY=o1Q6ey]~1cy)šaY,VHӥN .~ߔt (Pjo\ސ]m4f7AjsϱSTUT1q|m KRIx5rA.dMqidUi׬\ԚьR}ăQUL{#9/b+jV|uZ}& ob@N`l  X4:ˌ<0^2"MO#e08ۥozVUΨ]+tږǼ)P.+U}Ϙ`Og] +][[t4gr~ʭ(sO8}U|NNʥB%?D$k'>-2kHkQ6bTjg6E>Taɚс4K3k> '7u63IXB`H!)i#PNw/<Mo@lg֫y[wv@ukߙ82ቼ#ֵk74PKFW~ Ǽj009"y4i2NA)Άo嚈WB{HoXêLصvsH~XԊ*:BH_0xyЗN xGc{hZްm~Øqr!y"< ˘MBr Yeamn"Uݖ&7|{(B;*r|ՍΦjH kX,zQQŽw*v _~U\$lD]㉭`52 >\hiSN3A#Á/ Q殸$@Y1`XeVHL@4]躮Cל3{6FvS>V 7OT}C1W):h61SȜ1 t|;<ۨ%WطÏ5{#;B1hW@{s@iYa4H5~[xW%waD_Y/7<+!geؿca ծUl6w%iEyh4j fE4H~ℂ|nj?N/X\SlP̈́lU[wl*UO/RˏU .1T,!5w,ܮmyNIz*1d)lo#.A:ŵ0׼uJr33vJ}c$p bCg/Fr/O:7xq`co$6vxY&·5&Qz@fQw? `ZުGE:XLJJ.,y W/P60' `pyIzIn Oun/ k,OEt WU2 O1`dX딩AQBqGP7gh$&]ۣKM0J& q\0 ųyFB`ܼwa R*0ZLXƷoCI.z Ʃa׵HLWiuoy }&q:l`| 3pь3.dǤ5$*B\ qk^پm^FShٲ D[|ž:Jj}- ( 2RCK myկbIj,H0 FS9Gx}nuA`qֆMZ 4=H!@tCjwo0[A?3"2T$v- NjΓZQ!6hܥPDqU$hDYNy} Ntzbd́[ҭZ [Fz$M.M`;¹"^[4DʏD(8?UD\o(fC؏ ŧۛ-UX&VَJE" ޼B6nbx_m,jbqzp` $,BMۄ 4Ni_!;crJԲ_4.D0%+>Hx^W I8LlHSUkqDG0Q@(gwtBe9R8wO@FBm!AaXJEU +bͰRtd:}ui 4i)nb?}c)7Tf1M/JVE}fԕ}/׍v sBN8cf!#Q".=h"~;rG$yv`wuk wh1.Mhh-+7&a 1Ӗ2O;kRNnր-4 -LlNDRc11c3r12tב(\tbXɟUu?}">O˃$VI&0KFH 0O'*UP4W10FtNÀT:iJwqGNTJ_P`$瀵[IށB9|2=qgsBקkGI}1ld0}OKĠ0*##K4 |uwxN~BP4ETg{l2/ Q#5ifrve/ W\ҝy7Նq2{O}2+Ӎ"12НZH?&q//Y6Xw_`惶zfv' Qn&.RBQ{G}v_5~7OЪ=1K%Chx,DT:`L P|>i3T-Oo.(t\6e&gz81 >>GaŜ4}w5{(d2 j|o݆ _xی%g@)cuy4` ߬#yv:"Q 5)dϽ=IE_n2=WN}ѹPC&g1$iO"Nո ,b~e;PiG'zȱL,J4%d(Sr B}EPմuR7BO\7]waX 퀲Q?~@"C8%& h Idt#;Ȓo*Enk]VY<I;U_pX \a0TL+gJRs4߷/:M]IT,P:Lw]7= ^(pO +iG"U[ r5p:*(,Hj YQE[,fH2* NT$qC"94Qagݨ60CIGciU-hDDmۡbc3z]) GqS}T=;;=nf.+}#v0rߛ=:ЮFur+V j $j_bV=t[p(G3BV\& [PƵBxWZzy=ډ͏%?$ YY}߲WUʵy]Q>ҷ pKunSL (jfU'/='DaC[-ؒo^r4ў?;|6dw|*ڼ-8UчĽB}Pnjݴ[ [uKoB<A腰%u{),^eꜱ,MbT |1`xq9 81f`Xv}0گ*@s>9.&u?8D%a*^%a%S*0" kq.2wf@9"xoPG EQlwnk¿HpCܠ#WЋ`PŒĘe{iU^}/~z"tn$2%B`TZ˸ݓd.D2AP)ix7w̯Z%V HSQ̞`@ ЩY6wyW68u[[H 7k洳%ys7:$,is?ٜX6ZbQ›w&r^DV@*h_yT1,I85eTMZ'3zVU߹QB;F8'4XxD,v+D̆J^dӶz9@i@ӧt& dtǔيn%'|A"^y[D.%~(e?rŖC@GJ:9-9Q0iyzAF~EԦlOx# [UQX>o%e }eCK \N/~aQ^}66?pf6r nx!s4YNt'RyK@J.C-@ܹizn΄>iqSdEVF%뙌SH)geT m=QL/,ODKnao }t|+GpgUwQόkپ_tڜDs NU_F2N@w= _ G2ޚ]gdwCzvP%[J捥t>A l'Ւ ~{m7  ٛd$I+]-OwwF0J)Դ qK*| 544En9o\bOZL0N}ƙ߾~Tdwn:FMɬD6rN~=QP,[wsƌԱzHkFaj3+ּeݞz˾[3$qVm96I|Uo+RAa;r{;(4 ޵b٧FxG*''ڳ7W@/eK$7QuP*VR''#YPRyRj!CH%:}qI tY:났SgU1"HՓS J9tJఈ`z#%ZX&&:53ƹFY@T!n #M̻l:A Li'{J柶|ʬ2\E\,[ ϬWYL: aM0CFfVWbRdb4RRchlZRQ$T{JzhZ)\7zsV_S؅[NIAY*:!31NV5iZ1d(V rSģnK32 O-^Ge5?^E^&5S1)6 %SPЭr,!*ѣ%遣V#V Aq!uݕKN_I%Mffyh2'w Nl;̉Θ, ?_+ОVmf%줸X;t"z2F,]g*sGQ&B_6z^,(5$__ (.n\ߎTT(ML,#P1f*P; Mxl<^}?͹HY]0,+=r$ŨG:m`{jur*/K707׈m0͔ j$WroPZՒje0I1,<Ȓp 38tR}W]ό#i~_50 dbfeYyN~iEaHi5Ǹ.ydb^Lsbj ͩGu64ȿ?gh-Ge!S;㠥T1{KiY^"y[JTN4`rtnO.s(!>ˢ].Ao@:xўJ"oEW|JZ:>.'/عOP_ 02QrD Γ?GL/-ojQb"Fv}+ى:Vt6P ߀Z|wVgb4Fw`48!oq3]#=ݒ(ɷKwF4 7CW#.a(xH3 To grwe%p^k (ֻS =Fm@HKYtPF:44 # 0.T|qE`䊟9x@F#>{z;Z/ >v&ZK$ш6՗E't3D@]済+=9`[O@2n4^#/o[VhM?QG_pοzm[sj!4逾^Rgebza?s7/^&oJulۯu>CAW=~B(R [idaaP#FIk_'X`6ph))p-)W⊖bc"l9ѹvf"r\jQlmχc `¦YHvUa;Fʈ4V'& $ZmiWa -әGGEZv,{eXnxO)Wˏ袖 wyn ܷ/ a27 jn0E"A_ۮ'C _t;\^K(w%u|trQ_eR` w 4Vզ`CQ}=@L].t[}8k$DLʨ+S^"A 񅻃ĆObi ahe޾z151{\aQWHP-sÛx0v+x׊3)6~䦫5^Ud1ܺa1$,m2Y޾d52E#Ơ~(H%%ё5,xcfAI L8Y@-hso8*b4J)tĺ8D539ۺ?}>n܎0s #ͤM/WT=WEHzs#5_A3 y~NA4㖋HQ=E'c/_v{)xYxtݒq@aōWe/wÜդeqJQuYBV-xw".j[#-fq_Ҽ՜56yfSNq̝H];It|I_fp\3wut@wg~lw,=RzdLayҘ0u|S @fލ;E5vF^0lM&'== D/!U] ܽʹ6vW M__CӬ[-HNNBa/\*VNz%n'(75+lǫJTnj]Ά xuɄ̷6‡uACt^`S9z!o,Gv5MRL$ zo6`8A=46M=@ X R:[  \͟r5A3‚9[$ȠP,jk]r(QV~uE8`,|^ULg>cʪY6 g=k1ug8BFE͆ﰥ:9TzI+eZ'fQWpEzQ  1;"$Ayk;RCI[* tV aӊGy'l[MS,r z 7}:RThkcl.xD!_O"HӸ ߩ+.'97SGN7 JX3 [m|VYI5[TDjMP(X\i{5,=p޶pUd% >2-6?p<3leʴd1Y 58Owv޽U=mpփ|Ђi×T,6gavΜcjS]LFRA"n턈+Ej݉rARw(r@f_[&CltmU,%Y+ɷ,xNP),O\TzQF恜 9)'/߫܇hÈ!7 6/W`a߮=ۯN%3$(/ՉKA Q8B FI8~Q~h~&f=myA%mT;r9;MtzERYȥix}ls1ch8}Q/Ⱦ(\6̣-)A"C lOݑӡ/Ŗ >̎RPɝ;z32p5PlIZoiF!, G RIjaAȬRMQ J3;sy('dBPPӦ<.R'2XHc ZnH[ecS@@@S T.9w!AzyI!Me߃şV<kh?8vc@yA 0lv h 8`;ޏm1]f';]MM I/DtƅxZ<9۶FcrEj7]-x1 " QYJ 餌.fAxȝ}/L> Î2< ?R&}0sLo!1sCx؈y? ڨRXF6~0){C"$s"lE?[*[S_ФrӠ߰.|IkABfCkY\nE*ٵ}` pGrALbw{~N".š;d[B/[]PDX#.߾0H/Mr\TN؅"O El>WjG|mMaIgo8/ɞVouW0BsǴJ&*Og&=0-r7(\8G2eVƸC˳KYX'QA7vb ⒃0-(lȚ"FA敼dKYQJu]HŭPhvuY8>KF7m:xb>B?0Pݠcs4_6!'_|lg\BB"Z=9AWZie"8 7@P'q}+47s%=i̋ G+%:λHnKAŕِ̈3pJqU֟j):νeHɍ"IbߛEf<{ýb!h9w/]u`]n-X&:N,\[W? D&/B9x`OӞ$(6#8Jc"}^ŁH$ZILL 7<]A!aYeDpK`QW_`$ωcS><`caZ~{~3/4\i58hCm7)FTJ0үvꤸ65O]b]?k`ݪ3CGϹĘvT[?ְ~>jS20fA2y7Ψ-1cG#kxPw@T HQ'+a5Q3Bn(F/RفkPO%XfϟSqD`on: 8[xΒ=/2J>zT5#* %s宾1!aM>^QCO#%/y ; NNO=Kv ljAX"䇛_X"k_%mzKȎ>4 꽺u4Vֵ$) gLWmr;54'1FQYuHC ?ήf 6A]{0~ rTTL Mz2wSDe={zq+t_I La=6XnDGC1?Z̿azr$`Rc?˘&Rp ?eJrv^J3D[=p")r_e" WN1WI@qRxQ6^-U֑YaH>]Oi>sОɞc@n_i"qzՒdJI?gIԠ_b L.߻ݼUo}$*ѡ}zkHݒ2+8eLH$<^#u!T>A94r澊^JLlpr7f%f(_&@+'F74>rtg5Ȁ{8~7l^? \|<8n)H5,SJW&j4d{1ʙ[?8yÁ}9ލD!e͠('T}uAxakgB9<ȏՠ+c«liM m&:R7biT)ׯ\ :+`{2|R:1̳T&j`g&%: {Ca:͐,NQpi'MRNYG[ B[~di5֊}hf0}B Po:qȼb?6=`DL"ZdRߤ3]rL!>'`Mtxr7*<^- "-(oy9)Ir,*{ʷ{;vJi3Bwd*(P9 W?`)qPxNuTUJ6uHP+SXKfy2NfO+:T-ʒ.mT]i įt!fm=(M!:qh UTaS 3?&Pȧi6چ]GQ+eO}ԁ50ߌI @Ӳ qevbz:&KN9!Qؽ:S;vv{+T*"i0B.-γhzBfGr!G\..•.bf){q=-ӆbIx6lN%6V@R|"%-7*r*;v@Q|Š=;nX ^_s\9TDk>H,E5oKj(US//;!`-B:. uVNvxJfЅ<.+H {}{;c "FVi-N3q621q`J8=M.bsRSpK:BDkU gf+b/ьD6M _s˚R܉B{ڷʐvnp֊$aA:!~]}!lzuy7&fJ#&2V5; ]$$MMqiMQ>C2@u}1p:Qj 9=VEГc|{1Fm5"ՠ&2gwkTvKL*:P>To:פfd5P7+6=#8z_Q.*(SN i#-kX#s,]W=%!6Q݄R4TGN G(dpONZO', <*_cV2C)Uh<N렡"~*Iy"swn[+z|ާEX -pgS=8=eTPJҼ\*ݞulk|2 *'i`i9\̐pgvDSq Ia ϽF;7zy:YQGIpePcxZ0Q-=Eys p=rQU 3jH8xjuqJGzT*կRZ἖nC&v!N|e=Qwi1z$NlJa5\2q  5CUDa-41.'cV7BV" );ZFThğFy.5,V [&16 LI]f\hWpK3evp6s_/deZ< ˍB }U(MQ* Lؕ2)VXg."9걡&p vM.V)Z9m~YYOABWlդE1/"i<'`Ӎ{}İq]P6A@l[Y~f4۵ũl)O|<_mgFmְUCoQ41A?kבNC. SM BMC1.?T`S펤-UmM-oDrtzx#'Fz<;Z<屇b"-1Nߍ葶oZzN{̗~`"^5pI \M47i' X3jz-ߎ5YOK!mnC_.._2%1p!sϧ-ښ7.I[GHbߖ F,"8mp#899U֞|je-OD"l5l"s;F_z+y$IZXd<ݻ\?RשhCh=?.D+,UۅRT:j`Eo҄J¬ 'n7К]$v6.Ƙ@ ԷwiW$Y O|0^y*`@K`$J~.oe%_ mB W "J8dqn(L7gUmha μ~ɢyeujeٛvkW!ަLY撔O28\ "1j 4rH4FY T/ehB[g@ FoX7/FCD8 .&H19?%K|_eJ׹bUG}/St(t5B>压>?9AfPWZR;XOl9}8!s1̩k8J}8|ɝhfy[v'ć  *:%KYf;d8 j!0-p$`, XEGP c-t xW*k؋c^EJ66A{;eJ#՞Co描ut>vS.,e:cB, C!s}E6 o?~p67;(cթQ։pWkb^+9:گHk!dVIs5]зޖiM[3>Ƹ+mAjKDLqP1)T1P|.L"H;|a<1)߻狋z%~iBZ!x%QAO_k!:RѼ %^c;?p.fӧ"2>di"e_- sݣIٳﹾ<Ɍ,26P^TZg!݉w3Mi6ބli4N#DC 0. 5 ]쪏ʃ^ҐٮmSD:=C:ix,wo_.ݪS[efV+_ v 잁eCn` ' G+u8xotj>_<E܊l'h9w>f׊ۢ6Gjd1E`9b.ߢz.H-$Zx"y_zlwwbiiͭXFY+JJ۩zrnF)ۑr7'P* 3WEZ3xE~Su$LWu^8$=9y;ۊCkW 3#=ݨ58ƒD0 yw^NE{,7`i jj nznJr%mc)wYC*ߚTf^&(ֺ4q>H;. ;4nO܂\аX"%2P?c7?~cC` RV_Rbu ץU\1WL;זaEXwMYv 2\7:lܩ*z4Ʋ:0*剦 cמHj` NA#t5^O_RNTqэ|o8BY vak!Ta 㩒6'K`naxuOc 3Bsif"Re-SmWO roLUIVi^98uI@6bAA^u$XcyFVTlErUWo>A}2Yjh4Ft.<+_{ 4qkwO2f1 ks~U,!>\$jB qC ĻI]q\j`Qn`wx=2%B%}H9Y\SLP+Sú6= y<jVNN@%Lh&FQC͇?a{dﳎd&hF+?_W`P\m>3 X`0X/@ ՉSdԁ3kQ6A0'˯}W!0k^mXxFpLpLm܍޴kūqv9ŲiHvM?9AGFXÌoZg!7)ؔmIS95$\kOK/ I $eۊ0Ju+Sb^TvE% $,&A/$$\54bVgL8tbsg;}ך<[0_LDO<5ڊаZi5GК64↷W Gď>fj$b!wu68>/N΅4A1-! .2/q]g -%E=y _76CՔ+8q9̓c,.cÁ9,s bm^nL|z fAaOl Xtxz~hi,&p_ a hwRT*;D .YR,XIP-enC+bS`NOY *>gyI^knTmH׺MAW9 j5%6"䟰XH@Ep5J]tM3q$+L+kW8<C7(1CߩD¡_@}<%e Xiqɽ GT7nq,6W]KFRhK,YtIz ܁gK\`;30Rpu 2G9:,LfgrF6:G3}ʳF xA(N.&!lC :؏'yZR`Dǵv;U֓Py,56˰'7n(op'k2IzŨPuMΠv1Bcy?2fS.'N& ,Vm%3u9TX"{1I䱷z1`$UDUƴ2ޜ݉D]{|TfN@xS2X@;6G›6c梨W o#XFEl9zz{daHfDp}#O}X~c&ji|<nP$XF^GW9*?bqc_'Uiq"8m:_{7+øVM]er \2&g΋ᯁHr@Fo!?5w_]y8NLH8^u)RaLz諾Gژ~TYtR9cL_.b>0[\cXŔTtgH(%C#H q&Ui_Ezu4e2". B~0 Bt~on|΄k0`AXE0[xk f7{Zy!ofC},%_K+9]Y A@4wߍAorgL76Kˋ 9 \]X\ /R. WyѽR?ju讀KhPsS6di:İKsE`2պMv*.44:̱4L:p&ؑN=$'֣ Afӥ^= @r8uؓP\[X Aw "jA]w|)d73$ yO(`5of|Wdžn mnu6\e#s9e3'h:x{#$yiѱF7{#;SzFK3˧"/AwNSjUK2[~͢( ól ܊vj~$M#-yN};{eSc$E4EebW@Q7%cUEdd* BPNХJu f2%JsqKΗM#j.8Q坪G='pLHԭ?I}+ 4'40Kh.{B55%/{+BG7aT>\b!,N 1QnR‡0(QSef=s}ĽcYz&"aVWT>pՂ)>\-Pˀ\ɽnLK V҃MBɈ JqW̦ED!W0$H1bK:3:T'ljpuO_"^YoB7ԫ$cm"n;cWpb f,=Ր\?N?<&D$@:F,)֍ @*g}=ld-'bST#7E(}2XcM 2 sHE8> G%~]8A.RGOQјK\C8oߔQ5 bǁYݢT;,ց|d"R԰{ ;hu:P;ÅF6ü_~X^y.p"8oV\ygxVgEy^rҀG!Z~ѷ7mr*=\oM9VήD5ZQvAp[rC.]MS{y?^'2Lw>kpiFx dr Z-w9A)}^,p NWY6C8d{2{j_gLogu@}QAIp BgcuCb4U tADG8ڸpĆ (}Hhy{P,w 'Jt,'72~  5å۫%2g O;6@٧G,hߣ'7fV*"Un\wh~ZNs JsӍAT9(XO:>;rtwnNePǽvBwR2LtUhueQi9T"]mkVzJ>|Z4>8J"(bp,HrAgDs.7PœJ`H}zedG)=IdT^lsvGy&3k 66xwj~BPޕ'&e{y1<'wBHnT|) Z u bg5M} o5/=LFn-smL#(`O:F-O? d% ,~i9E; UOz *t\[¾q2͆pu2T/Zg<5j1(.Dh3rXLGrF֊~8qUÿ,"-Lۘ ܻ'?<6جY(D>TzS6)[n0:ځyv~_ E)/ץ4"Dž/5"M{JRٌȎ:֤B.X[G;kXfc~DBK 68.ɸ罉YO}yķ"^ ؏iY; )/db[3^^Y)Zkb{ph>("ڳ$\dWuMI0ȟא>sZuScO_}j(-X4iy OU#3ȝ=S؟nni@r 7I_BU-ݣTQ?GIN(xi`~60MѦ6Lj'!{ZcPi#>l urP!<szS[r|aX(l(KlrJMyRN`v@Ru=Z%0p^Zhx|JakMcT&2PQgk's&si[*' EBp*qgZ$7q pEc4 E̘䃃7Iz8F67n3U"0۵n44gVB֬f̲s=;.L3E %XkN)-:車rE$6x0s@ >e}r.塕t%aEMNnY⥇8 :SjG1)`zL>e>ydp%pK*lI ( !M[f]nDtN{`Ītϊ}F!G/Gs,(Ԗ OzeAB M0oTAhmI91|R _4Z"-|bugȩXKٲw1K|bˠkēfq 5j^PX?ҐK_`slA"6Q.OǍXo#/DII$X0fϟx۴?1ړ" olG}̹!(Y!_!&S}%KRI<&Ȓmo !ן,9V;%Cįo5G;FCt23j4+ܰjq*OlW_k1Y 4j21HP3wP;-k)fk#䮽;2~RoJv-;%:R8Q)M8ڃi_Jվ/ UGzd$+>H5b,_O#?Ro[vjGz=p3< `䂝j \J7rE+Ägq*0]&/4DR!%juw_eJ38SHT9S/q1kxwCnŎ8oDvCi1vיdkڵ~AZPt# IDՆ+6FR.Jӷ5nDZ-(Gg)Tr@E@y_N.BZn=nD Qt/d\ 4q1K+ŎIe;z@h32xD}b! X dRѵ2dij0!YbLQ@ ,%kl%._'J#iϒAǺd`!nyg &1sרa㸰܅.loaK W\7aQEu>?v#6B)^Q _xTH.9>]`)mf-OP g9e&R(t7_xxj_bZV7nȦgw4mGXl>Uu>&mKsTpBehFi[^d(뗯P{&)o%hi4((T 0@}VkW>-hWUv9af3}ɽРdnXJM둲%oS=%XPLBQV ..V>:.DEٻߢ0@*u| \k|W چNxj*I^HFlmA_(})@̰JsI{Ud<7_0q.ٶKrH=JH%!CwC |tXЖFz:~)dQ/"OV|XWK4ZJqxo5z\Hr5[䱙LpJN}Y,+ `xX 4y$; fțoEK@Pwة{_?5(~igU堄zFz}+Xa[-~hm&{Z.p!Pdv媡Y\xs,˗vopF(JYqZ#){{tl}Fq>u.MzκXN י't(pGWp_`LZLܐ$ a\DG_T%Ɇ @9uQ𬟠ǦB159<l>ܒ&B33Y vadR~y~-m3}vuIbDb2}N>X$Lb; pPVӽ,Z!8MY&SiOp߹5QYE/ MbK[mf SiLrË~ /A,BIvX$0W97dBq5<)8D.'q/W0|4+SIj0NU˭uC8 {Yb0~wEDܞb^@1,D3yll'>bc;3Mȷwl1w>[m}iātbCzr\i44Vcΰ-2eĢRQ`a v ^qH X'E\.)/g!qhFPב`yp"})=k`$ vwQcB _xm|rѩc#f:}ԞڲݷbcV+bb߱.+^ZVȝl2J!2ݎ@(5>^%Ħ/0'Ti3NNYbK\YۦqRe-V7KE\n@8r~Zj$T>_ٿ21<y;BZJ^B6 A]mޔ”W Vq`IԵ3U[QX*)),m:H"%7@&,~e[if[S^Ӻ) "\R]Ȍd*H/7CP.ijz;[?tϪQͱ} }wYVS-귬~,iڦ7{8qd&r}Hi:i8 U×?}kLTH,ݜlsq(Yj2ۼ"F{yphq f(2iN"jZ)K,̆!Nt.2>XL>lYp$wkwpq_4Np92w}=PǕ/~ t>*c~fJQ?(@:nx';vULoRةpLչ1S>\:kޥ|5\^o^\/+__6^2ʑc s"zq"gOmDxkZU6'#Bti5&Zs(Qs/^dO\[/,0*3YDpI.aU:y ]ɟT !i/Y=QgsZͼUku ߣpVU{ qu_p5"Ow-SH' [^iBkS:>0^{)s5/~?_E^:bg?̅KؐȳW} UꞅLWfNPRuX҆7fkoC{<290ȺpҖr X/i=Qr^Sj{>6vC${1VL uP2Ҡp6aܳ [S|?zcp~\`^a:WΣG"brzO%+Tg&[+A?5zibiHhmCGeAmhNBt,a 0r~ACϙXj*ԳmLb,&&j ,Ϣx6쥆#H>OZSV鬼9<U ?~o{cXqx%0[0=KN]%:Yx{Y$Ůi=ssʪNH8~ ø̴ (*,oygs'c}MAWY˽7-nyjFOw0oV@/\A"h2:Ϥa=9΢)vgu P V]& =C+^^F&~W`N .\Nm=S\MqpY*½\h?҂p/[.%Li^)5!T.0V[\-gX&tK_Ϳb7 dpO&> Lx0[EgyT-r{Y0O9%U78[0+{qr=EVMEYSȄrjUb"63J#!=ܒ)gdrUd]*muod.9@ķ٘ Zp.2s)AՎ_zKc$ l]vE:,pz:M\A ߘwNlܚ*GoU  Eu^sb-/޸.R2jd@GNiKNqth}mOIveZDrUh (} bT :&""6lˍ)AyI>į&X3&->K?(KZFbP*٘u6(zen:JC{; ~k6 ;FCd߂Mv9 Ct !,#QAR}{:WZC5Ձt1{gIM.z냇 Ӣ28@=353Ԣѧ᪊4噄I ˕ёN^X{,/k!Ksz>9((;͎6Wn>(߁߯R32c0ݣP$.x%V5fc]RY_^qqowNd8qiO>;oӯC /+f%3a(R3k}#"x_z{t=B-,&{-pCV\j}#Y0Ѡ6-6%"YṚp4P G.6tC}M~b?T$!xg5#UjxӨ7Ϳ*d>W}^9LO {)fvK;VW-TQ89 |Tt`ԙ0q[,4Ec$eכ]MJVO1*Lw7~1|+*4'=e~w 0 єu^<9LM*ˉ,XGʚ _;+=fFJNUu2z vC=<㞜((um=[Ba 4m0Q(&(}+9DI^1=1粂OWIwSoF絅X0@RG,bw;x=Cmx*ӛ{ ءJ~VRXD'6y.p4/2sωt~З֞]\_z… _J0%^`\O4× 3K!O=L4u~؉҄ {RƓh:xw<~kSnk2 z" 9zYl֏ ]_F!&1Rg.\zCF[V~ giak ץOJEjX/s`2y)42S0R9N]I(^ \!p $H p Ƚ<^boKYV/Ѻa-Ldas`wTboj0&om`zDTFovJ]-cV±o11]ă#FuwaJ%@Mb-4WzPe{{S@~tn҈tK$Vu\KV̓9NOX-u =kˍS&J(M5*'xάw ?͹ Ń!z$ӓA喳eBd@MnJv ys+:~FLwk'nuo4744kUw(~:NV ڟ2CZh؅s&bh05\Oh;D̽y,~ϕ a^5sԺEjHpoЬ 6^|x~ԄvG%WfZ?)nymu3}y'%넮}x(sRKCo.ҎX,-g#ԖSt3QG>^#r㏓0(WkT'5k&GZ䳘=-(7=(/82Η"7&Xs,+G!L] {;57Och0$(R&8ŪJWiy|ۦ|(Wإ4^X ¸I?],e4{$\ DB |[ )Q[Z5Sc6Og΁;~:SMը%x2 CvE_^].7{?=gwv\{k֜vZBO1S :¤<$l0øMA;<4`=VD-Տr=JލQT@e:[wKſq %a14{ ,ے/**D*\S;s:+19ϫ6>;X;1)>h."ːQ41;A8C A /ˆ[eӎ̮b*Z^LJRz\i;4'aeۺ9N4)4{MR\W' 7yxopHϒW xeJb`wb*4<|D6dv_tب䗥?!d!dI@[%&x؃&Y+!V/n&gmuN^Xo G۩tddO+pr\[[2-3?tNyˀϏN,kJ"OYU7~EA#OE Q(~a]˱gFfJxΕxT/;)`nXƢoC- d td@ATRxyI[.a)7N+/;cF谧Gz$?ō݀]~G+{φ򸜣vjQ5*%reIA !QWG|M d1n\8M&=G83$1YQaE`YQ+ïSi^ IC5\Ok cu5Xy\8ZaQ$GyY c[*F4j7+-g'c؃sZ*=l@]~‚0ՋR04,E|>ݖJ4l]9Dey1-Qj"o~)řaJ.$!qN92\Nep[ oU]mH;G7GJL4ƈpbAyW8,?\eyw+9n@w")\[_Ct,]]=*BWj Vs!"bVL{ZOP=x|-=z7{qV pǂNDo $˙/GfP rХ{Ӿs]pfքl5Y\\gYXW~m. &6[<('VΝ: \^busF&(E}]-i*KT!|I;␊tgV8.k1hreZڎ$Kiy6d_<@VCWOqP#i&wL#d.!8!ĉ۸ E$e:>F|COhpJ n=I:M{>nڥҧ T} #]/½U]QM-#lHA%'?xUoZŃV{끥jy^e *1Ε3x;٥0`bfB0 ""ب~Z5F3҃(' 9UWԪGMtP~ů+ f]NJK 1SO>+#WU~c֍ŀ \cHCvQ} _+ |₱^Hh)e|M.dwXp~&X {wOͷrx)q{p:Px3cYN3`NJʴyoL e!RE#a` M$G#Lm d/(UhHtutYr{u[_ |%|E?"R`{/"w*uq(K7+ki`u^:nOi4RqS}׿O}>Vb(FݣK~'jDb5Pf!\u cWDn]-k H7\>$"!F6909:nUf t n\`=/|I6$~H/3/u5H '%jb~uzFs:7JV_'|6كa43Mm\Rn(OGJ9Hֱ@f=Tt}KjDn+sUDrH7[Q?VQ(䶀ch(zb|N0H,H߮n3♹+mՂ9a}R]G9f 9R:wL@7TpOkayյ:X r`[0YjTmVV0M#n pUOmg3cY{0Gׇ@Dh&77$2QC8i= CT2}? DȺmϏx!ٯeI~u3G߷`U|o0y? :*N?L2 RB{ ,v2JeG()=z&`!Uf5]U׸-*R3@`7s,c(.,_զ"W(_ڈlc3cL]t1%LX_CPRxG]a(KNCVX#G(1=?jy(\'7gH>шi83fV۪Cc3WTs@{z%T(>S6Mc; @kM1M1=yyGzSIc$cSZoң#6ڜ,;7uVʟIGOluFӂJ5^0+J0@Fh n&LtMn~rYHˋifhR'ܓ6üd( mppoQA)&ߎC:O2>x96܌E Kt =’bRLqJ_zy f0Eg06-2t@tJ>AkQ|h@|H(`4?iC/͖sBiH>UĄ}>bf~pgA67'g&]$VSh m ԛ|w;IS>Ht8Z= ˉ<4u-t/Nל:;A]5.f#"y*l=W$+"HC#sL)FaAi h%DdԬ䜦$ x5)ʑKXKhc w@ؼ:5h_Gt?.3݀7~9v= t W"oӰn8gܓۨTލ<:pާ;#b]ςr0b: VA]tF;BkSxJ[u_gt!k~Stj;`MSXB N@XQS;C$%H4룕 h)'LŻ3lh :0B6o)h2'זpY2]EmR [PBԠ~F)}|sv{J.}M,FJy"w.R!0|Q|<)8Qjvn}Uhp@|avzXh. !S"diP7*"l:/➳NwI٘2!'WGPЇY>7 _C6Gh;hTM|rMV\hr22qE Mb;ZILcr H`#MqOl#ʧt1ĸڏv2V=fvt[ Y8nw/5Yf?2!8ynb}ۺK+{R7x2uӝvnIvE[Zua~=-y@~w|i&[LkK(C]x9#e#Q2f]w_X|'/ת*k[ }QΘs/('7oL_+Tg5žӻ-RsOi'8(;anΖb0Io"Pqir4Fts^c9nWC%t*G(؀h+,EٹjoخI=7`tC}R\PS#Kޱ7~.^(Z676Hzd;{j`raj(\Px~%UuDuA]oͤf 1 ɇP)\lFJk06PimR_B 0"18IU| f|-XhM`*|B;]"^<- ` ύqX pj]Gō`X$!&Dm[2(rda9y)1* hyX:/J!XByJ/fe/oHs-s }Ot6s;m ĎxySw.䄷hf#vL* l. 󴻤r8 hH 'h[3se6]I㓖|f3fVX3:cE]5]m6rAb>mNN"TwY6P+Թ5AK׾4g#׌?EVz_4_䃾ˀ=Z "%Z)cS6EOKL 98" XnX} Cuy١;r'%Sc3?:R9ho`Hb砂jw2Yaƴ8*OmtEb9&n{J,6WƹֽGcw%u@yGAX\@ƅ !ыq Ytz9LH59 ˃ +>8ƺx1T3oޱ^ @ sjyTx]h3_ dup-˴Ia]aq%0pB4#y`OBߎ#ZXBG"흈 Soi]GC-痌4P(o03yj,B9HXpf5CnM g=eqMV<{xg #ۯK?/p#!|"-YH֗ow7 xld'龔,7;Ctwg%u;<`-~ٜU d dwSL#IbnX` q?\!~wPU\Sl`GMarsT;Ї<^B@CmӐB psfC,4],b\$B WxQqi7B>']<ցŨ=*"b0EQY*ֽk=9POt]kHZnI`#0i"/`eh><3^\O_+{'7?;/4+eҢ\j_ݜE%˔/˜\㈿sAkzp{VhFL*"Q&(|\y٣}wAU.n̶7[6d!rTQ6HHaJy @~,,#!(qCN=VϹҎ'ZəȶRD`[MͼfiGض=S70(+s2*7V2IDXn%;,l:DA02d^(hw:! YB>I픎)2< %S ꂻHoZ/Ç`RM^:()//\U`' I[joŒ-Ȍ$@Qa]\u"n3d:~I|ϰ O C3{Vn͑u$xϳxɔ.-y,M2l<ԡ϶υKAvÜN=̉ad+ՈZT~ FÖܤAC.wD&mZRg n߄G*>'o rוNoqwHZ{~e7mrPZ4auË U[T$72Mj4}7ֳU; |4mjt2=THIJ[M0,sR٤\z]  }+5l}4aZl mo`Rrȧ/TYlCvZ\1,[(1&um̢:6s0To.r+0I̩4Vޖ<AҘlz#x7KFԎ?p?l6R8Z|\3S߹Ӂ5߀j*@|iU"1"DB]5jC[4_ǤK^ s@kOIj[~{`3N8ojRI16^ -$*<uUMp/2gXr@¸Gw;|j@+Ys_]ϤJd~DȖTqXo#̞2#6jGv7wsuX79Pƶg24>)f%dlyw>/@trŊi[ﱣ{o-Tu+/j$[<&QIj.#ȸj`oЉ0̥Tvǹ|gM< RE3&eʹxƅ]􉢀aS7qN 7W>BHq*k!P1`ToQ@O%"eyѯt/$2"v tFQUd {FRk9?je^cq)<Ȉ\|Խ4A柀j&C{mu!S,amdk3.\Z5KZjLAߪ/gldCTur|׵h ^]JH4+Ґ;G[،Hygcs:nEF#܉iqݶ Ǟ0TʉlMLчXHT?a,cllm=`T\gJeWr(f(T7Ԍ-+io 3Axjt8X`;Da~{2i6Yf%∫f꺳lȜf4'k+ݬ reiԔ ×$},w5'AH=nCȟJoگ-PZ=n]gwt?G"5R)ZwKd!c v~:Agw'7AȔov!Lw[P9;sH)rvWnD`tTnR1X5cKK5ry?~gGi&FR3;Gwr_@ ME"6S =MBٟ,%=nݡB)M^<{ G2_9<#L8Pֳ^>hV-j=$CB3Й9x&PP·s Տ}̾kUB/p}A_=,p+.FHA&8G\zFˋɗ]+A,|D5s!yBL)@2TN>ȟ,_߫1񾮺=1iW/ ˙yl0oot!DʚyPP$%R4ɷM6RiL V=>hxTXmc&")\ ܆ I21F[!:D4LwU}ʧLSvɜlBv5X`fDv2S\`6 m~.[Z".dNjd_sގ@4y0v9piO~:v%cڂӵ7$\cS{kZo r~RKimA ^L vhz@ʗ};5BZn( b{^h2$46@,":!iG( I\`+Txؖ`[ld+xʀpVV_*pJ.OilisVcl4Mdt>  S/KWJ|G.m~.,mːH택 m 5xEߊJGE"c߫}+y!w+~5}PF՘o8,8.;:49BƺݿjN uaf0Lrâjpt,ؒo8z'v>)QN5NBfU!<]H{U~ FjxQl{NW4[--'-A̘ HtȗJiH0)߇Ul7b=ڵV4GҶf .)'f45SJ v`HY&%/(1ȯ3\{<anS%ir ;@.F=,&1-}V 5d TuIdWJB$y\CQ4}QL>V+n{EC6"l:mJyP0?>g$.Ts!uhטb `0x%طSV$A-s2h%;ڽrm*Sj7GPmU뀝Ֆ۲:\h5YľЭpd & J{(/bƸ݅$4*).m]A˸*`Bff{l_1p[8'1K눾tɏ32,]O )\hp#? 7';U]rH&|vc0z:/.eS\ZkyyUDmHȝ!F7&[2UW-lg"jhCu旯Z3]RAO+ @ ; Cgm#sVOۄvUoT&=Y}ŷVJwsyxB?4"Wyg~Ȓr )@D+$y2e [Bk?DTlaM`Q#4יY<:=$ :{CaHDCP솭.T}Gc /Q'NnB,'إБ%Źb0X@<% *f|3N v>ν4䷱kQyE_G (4EF|7gJgQ/-̌gj?upMa3"T}+]Z 1Ez˻6UUX O]R\R6JH35Ŀ\mP';[c/}mKHOl-FU? wSz,q-_'|qI!@̑wŵc_oZ(4B»\zO.K w\?W?@9YMxG; F](Vjf-KعӖSj)-m6r@'otu X"x.4N->ÙsxS@pD5$e:f8S%0d >CU*z kfn,rZиUT.zb)&[O>ZX_;LNW[<ya 5-ojRY뫛3m@h6lw~p1Clj ܨLL P#(DM(TKG=}Σdp0vz3VWlW #}'Mps[x16DnՇ,ؤVefW $NW@R̖Ul㌸(*$?^=b~նeg؝{HVG GU[ tN1xVSWc~|8.  ji1#|BǷtSqS:)]"nS`>- eM3j@MTX`AJ|%}>Mԁ@>>6o\ j&ϑsq8Hot5կ!ί0wi0 187B뉜*uٞX FLjQ\$g_Y65|"x/!BѧT{˘a,INUs]oد+yme?5 'cZhG;^he yh$;PSn!oY·YoQsNucwsN;U "*Ԏim!ϳE'!%N=uXӂX,:>@Yq>wW8@JV@MjZ$:D Mƥf'|u]/yk(&W|gr5A8_nN5 L~.RN |-E%4]L:b([tК\Yah pu._} VG?>FֽOtA&gEPU2ӕdHaKE C&6c 7gmOs Q[6(fCoج|Fۚ9}+Z}v2cMXiݙ1orCV-im:۴_eDvc ݆)[ó zwMm~{**!Ai|a[Ĉ2}DcgSMLy~79`©n"ϒ vfAp%Ll (fZI.cq҂M"4Vc /b 3R8()͇ʩп?Nڎ&@m7uİ0dcP(- NF\OvVIJɗ(隭{`!%NC'p]? ǐ9pq7. $_"p^W,9g%Ak%s?P!PT-sepٺ}K_92I>J|sjl(,o=qq8ImAuv'k8I8tb!4c 䊟l -Ѫ" NziаeA7lHZB<\<м_܄KO~SrmjTJl6$/1rfl~rd?y.<}=?YOpLB[@ϲ4B@ZՔA矮8wAf< N"&_`Y7y>_Pj-Չ&ċWڽULwtw}@ի}w#Co0~f*Mq5,wp%yz |(g׍mV&9g?WB)av >eB.1.т!cb5 ?ky.,?ކ1L, MSݛbяA9ѕ5es}3zGb͊*p)43b Bv_q QpS m8[eӏȂZ=]h՞p9ݰc3Sl 7z8į&Ο[BȚv&D!]BntJuH3![S'Nkv5cН/MGVWh n(1{v"7N'iJ %ĬaQu[sՋT̑XD6/]&xNJ4s>ғw7yYA@ǫcs |uue+93WK/)QpQ> |7Ꞌ$r0ſ\bPVNrkDaV3 B5wJ9meW4Yw+`EG :layY9;$셤 z8ѫGSC@%]",3Bz*9eUO[dk:;V1*h\p(IȨ,C^7(Ax:=O}nhBՇn7 aT닽_ v8Re8$&Zty Q.#9}S S-H;sBA(ke*A?'TtHgw Bn}9!.'@\Y3"U&aS1u"huDfL3SG{ eauMR:$]P"'꾫{u3ZAl}G^ Opu)sf{z:S$Y梜c[EHW iDݝT()S&~KG_ϴR3 G,ʱ6bw9|RTFtn'V/> rO71b?'^.*R?|oU]BojTpH69nZJy:Ou /[%0#NHEҡGsp yO✰옋n{?aAN^3ݥvL卯\^A%5i>~3KKX=a1$m *ZVH371mf^=elMکaԧGyy" _sbxNkMGx@cL# J*s]s@N1ʣuM+"I n6wSI:!ɦʑT6J\S/<Ƭ%]}ܾpJdf@j/}GdG@|_VؼlX7SQ';uU<\I:*DA֤66(i[頍)IҜ qRI^p P;e0<$dLeZB1((Vo7IpVS#.we${~b6?mBd v>h&XaBnuN HW+ > ,npހᚸˮ"_6[ ꆜPEk`-(Ci #u&D*c7sF dZ~BJ" IlV"dDB j H4?!ף3@H`֍EkxXfU& UFia='Yy>Sƾ|AI0SJ1rRG+}c޳~,dڵ ÍE3b, 4TnҤ/v+lgBշ|sm|]HP~>97b"OmHѮ>w#nw!TkeG~D/ZNTd&TBOӷ>:(qbA;b[zliM|2 4x>aLƕpш;Dn9O/>~uƳ_9h3ASTj!&u>zWkLD}HDa;:AvfхnFag,qVBF믝I`q\gB~2;OJ]*afƖDq4pO=o\2KPREk"cΦ.KѰ2N퍸PwslBd-5=Amq+z,t{<)`3(:A1qsSgW7`"޻U<X &˷({>蹂4'>y^{'raczI$6g_I ,q)rm^qz&yz,!Yww]8+H[Kj@dhG PsΈ%l2T@D6UDUew䝎ʙttC}݈6&x\qRD R/! )4tq1QS?ŭ_"vOr$yR+-f Bs zEhfSԜ^PԒ4%d}mtsܻ?,й9jLҹGuZ,TiKi0k}R5RBFNSzıdq)' 6E/0Xi?4Sƨ1 Z<ɌELӒ840p?.U*J*5JqzaHs{ɗ]mXf(/5lwR.=IMM !.̧J9LVER{.U|'>F>~KUcS΍s9)e4!]^c T$;:`Gގ2򚙧_I]DÞvdo2_iDsMqҰb476ۜ:KaĬLc->ؤz2 8 6~,gF-[aŽڼㅗ2H"db 4[?PmhI5Ոkkhd^gا=buWox6CR/+;4/(cbHsAS . F&Ny=>, rueKN w󏖒R앦$D)voW=g!NGbcﻰXU!=m<˒͖%Kp}2mةU#2IpccDL?6UY~G3C8oAs8#M)mhsOrTC[_:\}I 2k% ٵ7m$'{/Yg;^Ɠ7 +}A_hhn?s? 'zP%)q&H Rʸ,ȡΜܞgNִS4+@<%*`UHqi /e ffL0" QT~ 4SB ْq.nUm/G3cq]~}T1c濝lLe%BztʄCD)pC8}a#1Y;$s,|PM5Z/F>\3EULjiw 2@iH/)OFJxSЅCDčw MwQ1!8"~4 j 7XQ8AӞ*!n٣#_*n+,oo7bb2dvl^kΨ3116b p!`]mfC8.,2_R"cہߚ%vy{skZ q#wu.hiz( 5ȴ*=TP{xи|SY ƋA ȝ1&b!kժ0aR@` !4#>A2 =|RvY-˩aRT# ?AOn knDA EE= ⽠!WQ2p[G!;r }>cmٲ]Êh&}\W~FPbPX^w]V(a=4jR(*KĻ: GT*5Y;(L92Bȋ F|[ΤY;H)ZQ6$g8~=x^`à߈t<]$~zSBK:B Nޣu? C= tJ#A@+Іh~su*W_?;#3|\8o862׵`DTqZ#;F&S/|2]L8k*?"aEd;VIxx o(ASs TF>̻ʰtiE@R+IjLoPV W޾B揑v72" 0LhcoNm@2g1i CC2hEm ">cjj]$UڅjbFhvF{{cm.z5+թ>_3^_grfq/qC?NĖm ̤ %tnj]mzv玥rS4㡻7AA 1s+{si ὝAȞ8|VtP-=҉c½P'ЩMr߷#uiЇ)stح2iep~+\k-UG*گ{99.&To˨ܥ`F |QY{MNCTcm'E ӒXtTa$ch;-DrҿZ֮;i̡]Щ#˔h29N)^kNJPS,@?E9W$ +veIZҩ)cc̤byI\Zև|Ai+( >-F7'^WeaU*zyE$ bN-Z*v^Vc X겢K@6Za+П;pk,B}a/NEOis<Ôw$bd9XP%4mGL!Lt/C .[9[g(7[%U &U?/ߣ%SK5W0{Bj#@0T;^2•0A.E^tWplm7ݦ{$xwc 5X 9p/Ί(8ѻ;_SBzF>5wbg $j,a:^!9"ɣ's\<R3tgXm6l ]Q.[ui8 R6r+t@7qґGNf3ߖƎzQ59HfWx9xY NrPb ̹}hj^qR .' h+hL vG0;!MY| !tG>n`d'a1|&lPkqwl!==Hw8R*0̎e/f*zg +PagfSэe#c$a+|ƇnT;N++'&=a0 riy:գzLF. yEa!\7*YgvS?2v4$u5U?:$=@ù<R~ztBj3ִ ]9dN:8O KRr0u%;$k[8X3)y? i cJ ˎLvE5F%˵ߝs2G\*$0RMŤ3+I.ᐎE9]'N8Gl'4ڽ[C@WZi nUh+=g[rIZlO+xLOeσ\ -CrfrAswAy$gG)r KEf)vw6wf)h7OYS.;Ba_EԎ@0m+i#%5G6d$^˔DA(+lYUHrt ,s!(ɥH CG1]=ߩ̪թv7q3j/PVa_KzquOC82Yn[cH =[M_ly!4; },d8Šs;̾h t@`O5e$낅~HW(5(塵eH푂ꁘE[F+3W2dSBxqe dMR ߄5&[ɤd:daA } pͲ.JR<n4Y:=7 ǺEKz"2!@KGz;(^O~7rM]PSG!]GK% e(Uz># G!Kg맨xI >4d ,T5^R)p\@q>H䶍#ͺ{Z]@xJW d?j?v R** RQEIfEd歀灸n龸HY *o$=\9]' ^yRs*`6߁|>j TּY'tA߱I {ysďv [&>dX\5J OԫE偕P"^TF@NѪTLa{}:du]KS9yEJ1+a@S숓 TB>N-'x㙩@\$ /f:E∬Ɇ-(^hA4!rͭJܕ{Sk"U*Zd$v =?FrwpwBOce"^9fb0, T_l`?@J2o8UPޥ+x ,ʝ{B\Q O@ d mKGfP漥 tzoH xN:)X :AI_zuu6ozg[/s`e D9G!WXUcqN~^OLt *8Sh{swkd)?ruP,TQx?18UłY]?Oݻh6$O[58o/稾.%H]fdH&<SF[O"{ܗk2 WKȢ@8>}_h3M%M8<}D3ൃp .ZrGڮr2+pp5}zW^q/וy7[(%OxaQmP=䰊<Yg,UaG jgNFB݄ʈK2`ߧ%uFK;q=:ٳJ§|- )d4oAs"2윸k~ai ]E}t%S1vb̶&|4:8lLg{ ŚP| ͻe@vT%Vb-{$<ZJv G$~m %*OuO4hiz"c XQ\;a0Î o~̽rОy∩ApH7)-p 1cӛ &5k3{nx[-&.=h riXB L,&VXc P*D'> ẘ~=odىA(LVFZ " e/X\m> 񝚨yZY棉i󦓪7; ⾇$i<1 )T~IWUgM4 EA O#ȿ[LolAzw0?bjpc?K4W!,UR5 3;`Qvᅱ}fLܳ]λJiϽ `\N)ż][{%N&bdϜ҇=O.i]+e;qj6GIuC))ge5EIo#vJ!F?02jo!k@=A47k%`^ MFK` E6Zhy= &>j*S 䱪 &-pQ ߹Q}Q%P" 3W Fds]VGuG]$n Th[+JӡߋebPbqHy(54*!s Hj , ti.K ƶ/ g!MJ[+*/!#*UL1K=:1 SEד"' ɴѡ4݉3O dfˏzSkj%7eXT7#ԋdtH[-lHɞ8wM'MzU3Las20PZ8mX|uKO'V 03nt?Arhhl'3;~  +Ro,'Ӵv[4ʫu >>/œJA[oؔ^AؗG'%̑y`P6QLNUq]ե84זU8p I CiBC޹ISnٸ.^z ?v%HOeA@Ԛ/߱}wG[ˏ,\| @Mh6kq` Z-C9뜔6^ q׷[3J܌(&_Ġ@GzS ԡ#-ߞچ+2sL ,|2a%l[Up96g =‰~xACr%; 4gup/~se䛢 ΏӮ{e PU'sUIJ^^a_!XoKMOִ"n*<[wH!:quwZ@z*Þ=RTVPF.[!w䜣)Y!]Q$1/cC* \dn GB~<9R%hs5A>I!:0&9BzdN+k4|;\ $ Dګ?#UoG3yF%,̄hmzБzET|5S0Y!}<ÇFǟ_̰#ɖ^@ʑ!^2Ѳ?m l&࡬Ș'&F SA H&tmbCBŖjY1%c~ D=.bQO=N5Q:t"J&0*ݥ1 -N|X*c6 96 XP˚!<:A~٣gޏ1|&ֶ/ǮZbU6@aMkG Z f6RZITF6%DaZĮ&󣍙ɂ*rrہGquzhcŖ\T |j:wh+ӎz&*~J08+{@MRI' +D@7&z"l1fő*K:&HlĤ"b.lX8?o5ԗGT7;\PwcNڴa^kwiC2 2]<0<&b_俏/כ pOJ~q150yKARh'OID-^)$J=(k0д1 [(CdHD=JYvkz rC_k3)Qh'wY|ӶbP8% a1P_g#DY5-Rv,4̣½C;]FSڞ_Ȱm.Z RHSB&'>D9PEg6?ye7 gE/W 6GlfL;G] zEhV2?P!bVd(y!x0#ڷ&PF`~_єJ|g^}Tyf\h_8,L ٠I=g cN?$Ö]8Pr2a$bA>bJ4P@Z7>4ٗEE\ჩ^S+Zn.A h}B[ Ju'"R|W'Ud$^NG\k8#~ ;L k=N ϵ s!orPWlVMEX<5 Ue:j`j%T7HPқ|mX\ve+{2ʡg>= ΣU!QGW̱ WS4X? 9V9~U#hd VQ2F+ZJ~  8*A8ުNO1b [U؉'T89-yʞH`,'q[s$:KVj E'_\ɘY`XPIX,r22|zFWX{Kb+MocR3+ѻ>Q$9  b5XgY/h(ja޾$9+s#"Zmj)6jg.kG]]n?x' ۏL0膕8n$L3zK|9@DKZv=v,ibZ9|َ亍BN2'z2ytfn$wlzlt/KD0?m7 ʀy]}3_{0%ͧpXO Bs˷sgoM#pQk|C$9B̆G.RLiVojWqP;< qt[CEuyWX^ovUV-xWk2_:FʗPɦI|Mo777oQ(' !&8ےjܮxZK˟f/}˅FBz r }u#)kFkBOf<յO Y*ɱ/3c {grvئ dk6}m_ 怀eze'!^^ _+9E4Tc(] .BN`xH\{=r7?Ae9B"]Ӈq`q kƻ 7i7 [ѯ[Uk C`TSJ]TO{$EAjk!J5$ E IllFuQX$RZ0La4 ͘ϼel6 ibd ZGg{w0g^M^dLiΔǾٻ6&?sEkPK6xo{<$t#:4tf^ c6 vm}S}7bYń1ziruVxo&O{yh? ,Ke/5̺hX'HHc aHo# TB{r`>ƺudƈe~mA|*Bъ@mMN+$wp$6KT[#/ =b VPSB h;aJ4>{fVLUCxXJVHZш6)`q<驽Ծ?Xm`Q0+NKMtf3d/.54хdm)z}/ᚠ7sT&17d0Q i}!"`Hb}+bR*\8ZuEm"Q=MGՠ4jmo)^d?.0dhwʔgD]tyu2'Ͽ%Ih E%G {ۧ5`޻~\)uNԮkWBW -J~`4}ԺL[Yh{⹕HW~A+TpJ5yJOVo2jEgg]]ln-:E!gLc `Rsd'•TSBjIDGYq5DUbs9 AJ:{veO D|T8|I1 Mc^[6lO ĺY,|ɐM+OgLB5oȡ-$e.;ƘzJM.um&-/-(lRSobXs{%HrE,0~ <{!Ȏ{lGp r,4!:wo1ڮ[ r5Q)A{Ӎ\gU%`\>U(&FJK!9,kkq_#g#v􌿴CӐlͧM,5}rH"^q0 tɤ"lCWnÙG,R rN7x_ԿS$dBo^utfTcr WNA@y\6!6.sһ;w(zϷ8f\`(i=1R@d[f9$@.<2,?@@Ł'EEM^󷠦1!9w!lTfSF \u UpZ!d04KAF҅[C.0zNIV c#\~gHl&vӭ0ܮfb $MJqr~<M9` d1lٜ,I~ `R mt>4lB: cV'>u[#`΍ ٚO⵹%bnOx7e:J f$Bpk{.Win&] }`{Ǻfͱ"xp\ 람cn6D3oac1 re1bش7}H h*DN^ y` KO WxЁ)2d H, mm"CҩOu\uj fpcY㢞g6Ls8O0lMȧF@GPKk"o];D;ô>5TOs|!1u &xgKϽAqxXf4 /bU.t`YvRNC"oPYh$٣]szѻA*T%7* ^;2s`_3|qT ?-;aN;oS؆B ~zF.᩺.Bp8|/OJWPv@|_RL-E1N1Džlz+WӜ!8r4#lJOmmߖ&OqǠǡX93F|2kՃB$?nC#dc _*adj/Nr0&'.ƍE(r)m %MtYI/,`-0Jړ!;ܛs'NY3 7%lDmtd^`_jq9VB3\f*Fkc ķ|Y7 &EY#q{|J2Nu!Ҫ'."庤[(W+ҌeEbAj}2|<}( ڰz~BشE3A~asPg7IŬO1#ࣲ UPX8#=OV%BgbJ6x,yP/v\~  3ҍ2ETF{δZP#. N/v,YBTb\+wܕT#]CuH3 N34 m*6J@ЖFs|I1lP[w FU<Uy%y꜠nUózo7zfco0»3̞;2wA= ,LAmGAe#X(IpxCa*^$,LYþ_2  K^1DgѮo-HX}Lٯ@OqzLK~ץsWCc=caθPyZ otFhZw=UG 7"P,BMp| ܛaɤ !~8mlg޿XR-_U^vUIٟVb--u-TfR^.tV 4;LUo}:+4G{zULD'~s;#LwT=;ʺڒS{G#st{(R:Y3GaTO*cs=aOxXUwC^wԋoukwEɼc䔧t),'C40'zs_ag=rtZަhVAt`v&GZ>PМ|ip>^S1ɋ&M#[Q;qSf׻#+e 1(16\ӟy7 ~5Q9UM{ 4օ\g#?(6!L:D4S0Lbvs*˗/J>v2\Hu*s D r{ cHЁrtHkIjK%T(517+YJmy vnj(J~)0}.0D93z'yֻp, Qλeh#N6,cݔS}'3go<5ECRA"8r-˥SmWr_⌦Mw ([ xʰǮ.: Ҵ8+ 1}vĐ> ˾wOP=yDSg^ ٦v_]},l?G&m5WC2+VJ.}6llHeI@Nm !TsXJW)WDJn!Tg,3$O aPʐ*Xi@x=V-0B[r!g0:mVםKA`A㖒pY fDd3p(qX8szhB LJԖ6Zr{d G0#huتC[_ҹ/_d s~X m%%ۼ@?m ,)yt7߲Zd ^7k` `XJ Z{(O f O'MP{9[˴bQa!#X'̷Q|.1w[̐B.HlCL3?($bQ\/p j$྘ef݅oɓyUٲ>$Z$AUY 1 Us8t+d\1#GnվLi.8>!@UegX }mfgiMwn^S5_:n^<ɼCBI P܆l MEIk%ׅ2e/!Ζ_2@Մ4Ė`ɹ4ذ%0"3z {_)~}ʦh_eL:]^'| llj;VOg3(-5Ę?ؙVȨe$VR9MBBj !\/p$ =lV ~ iG"p T4Q|w]nQXLq=#bKQh}Z㻒Qh#bn9;[ (8=Y`NZjw9S͢딉Ⱦ׫#>'HK&tG)AweF)\Ɍ˻} ښ# ;J˪%zkcXf' F6Ä릥%uӤ0ɤ iRWT}Q'ܵw#&] 3{.7.gA?l. TZS'vnS, l2W;`w5sXZ§QˑLPo [ CrMPT;ڍh/GS"gƦ5éupQ#!;BU<(#`L[f<,P.*Á,ϣ>q/=4f-^ɚk`} C" 'Ӱ. #?_@!!©qfp\<$ߏni%S] R; kLCppSm=_7nB\Oޗ=m%פ|F|&늕adUT}E['/6;x/bS00_P6!+۸W'74qNۋ?Nu5jM-J~0s#W0`eqXf^ٞ[;uGs1F3i: {8 30EB]NItduV q AX4p8q7_N1Z?0$$%BEDŽ[([dԮaLxo!8]?'܈4Q܄}iבQ* J5ԑgD| 0W N `!xBίӆ*.Lb.)݋j\R̃ޘ!2F/|}q:*%?9+F m؁wiPo)MLuJV _T0(ZxbmϺg:4syl4ۉ?3#`pf*~7[yOЛƊ͏47P 9TR\i+I|x #zȟqC'DyXhZ<#U*NE4gg5'Ԯv5i=ez:N¹fogyyXf? KˑCf>8mB@`Vo`tY`nb,zHlx'{H7>^׼E9To' 6]Y4WnǰZ}+U]oBں2%^B"Y^0ۦP\^W_^ܷ.Pnzkhߣ>$*hVMNsG ^,%cUx9y^WXٴgVkG&^xPeeEJ $ mځ,vqe?zb:)FCtzf-S4hx4^:!0ط~s'?줸𒎚 .,$:Q\X}I[ FkDDm f$"cecL9  ![Hdҵ;LBq("Ijq'BaLtʧ[=Бo0=>glޟnJWܡ2gÑ?W6u̢]y =@z2$TGـwMZLVyA KU/1q[:Aۗc։[R|k[Tbt _lt(GRӡ~b3鼕\2mK.֧Ľfu!:x]dz'$Ph L>-Z85,aȈݒj u5r]a%t |ͥDp.X"C#]Roj;;ʝ6bna;f4wNL1%HEB0]&TjF +8PH%7%f[ yo,G1(F-:bgWҘ)Eſs?\ܕF,6q&B_4 + Sragܶ5ǙY3ړ/NL!7pKy IYZ̴jnCjFq<(~8ɓI:ۅ"#Zid`t^#qnVkm&ˌF,/s}%npIhJw:#I@ݯm:\PyraZ4[>@9RjHGjsr+h8 =d}I@7hOޠ[*'l^h:e85'l{I'ij-v'i{ņП\c}]m< KzPUEk'p]b)yQ5ζzd{JhKk{֤r7u;6-{;N  WkC],"lw} VqmZFWhpCݓ х~,D 6yG)u/ÝUrRUd?4= ӓ6OYР Uo:_eCD 6SGV-Y#d7]Oݟ%2_A>ug)3wӝˏI?7; `E`{b$v쵕Dܯ@ wʪmEEK_@9{܋[W>˒'_睮^ΝJ $;Mdom~j!NXEx҂zxm2a)h&{-eNa/vo.dϛÏX.ЂgߓRJpk!&$YtP^g*ID*5C5]΢"%C~gs,es-ތz~Ex/;JA7' kٌgiXfY'a+/'$y4_5]l&MW6E"ıqeepm+}DI%=9oh Q/sxi`||Tb`j[nɱTl)$T n?=0C7M*Kse(f zvP&4lD̫$ƭPy9MxR7ęq%Fڎ8'ЪD/VԻ:$DBO!5/> wI aN3fIǖ.o?U."3vrpIHq׺oY6dawm z 7-ac!а9{]XÒb}Vt+Ҋ0AK?wF?@Vq\jIry>SO z#}%+r'hzZs,eɠ2]!Q @4NQBH o7IqVąόr--bGiHj!ƲNYӎ)T|/.ǂjtdgRs!Tt :r%l3@#ۢv9 QޥNv`_ y@)$veV#;%#Dז#v% :f3wT]5"tCV+3c}^NG ,XR :K2y'uJ\oͲΉzu˨ S7s)VS]?-6\)/f~E<,5eI?H]ڬs|է=f;>ЫxƸwk8$y_o"־MU[#U!KNJFÿ¨fB %:Qu5.\ܾ/aI| +mol8И4,­ߑe(w[rlqH]eEl̡PBSĻ6VztC㖫;bbMH`K1-F=ElW*܀t4Mv2ZAk 5\2uxы\X*waSHp#+oM/YF{/< =ډ>KMF6N7)X,k"::+UGd@?nnT^J)_I!@Pjsr?c*&Fϻ?Ti8:[#pu-麹cya7q[fIl!lh; 'yJ%WfǰyԃviUsAbs1؊!Jg[=lrԗ$6BYo9'[l!~sLI)+desU+I/ ͺv)ڮ$af2!{ D;%߬&y"k1i6Jhҁ'})ѭJW<Ri;j \2ctuV~7GPƤp[S;RsDnHÊb-G{Z1rE"ƭ{|J LEE4)i16ԛ9a_0[`^6嘯97x kax#. `EyA ݁j97 ۗ3W=j\₀U)˩C% Ik02= <ŠGxq_2NR+jjϋke?wQ oDj]m(/I K& I7^i$~ԙ p0$TRdG7l6eB1.̮h,bnYkXKk-6Y7zI ׂ>nRh\S2ДBj1*2p~oS҅+hEtF2Dr?: i.yK!CQw.']dM`}ER{p*=h؉0͟f#Ay뮯"=jbf@毈 (fpp AghʶUh˜ntC42us(=9ld>8 8LM#V8k#:$A$K>z].8! ?DQ=d#O]ұTL.A^TuNbZR GEW l1$Uo3k"L37cfS|^ TtZ"\+EBO-F^kcz̓=_s#,˗zZs6j䠧JW!C';c 89'ƴ?kpGW"Pø wFtmnKgM2tbhdZFyF#<(BOx(/Zz+Wd*xl{Gvk:@^z-^<]yQ0;{I_߱=}*y3ԡDxCMep]01]%Xz%9g=崑fsWk޹gAu#:D[:l" 2oizwCM(Kn3W4ij㭧fZ5`iJ|UI@!-/f]XKC"x=0J ZES:!A3Q_ enWKv݄lFՌa{F 3X`C^z ._fKJfR=a{4"xrDž4Yc6r"GxC̸\DWZHXnn zȯ^&RN%a)iIk-Q)NnװʁԆB,Od^ N(P:ս葉KLj~^Q^ o '~B@vOf|Aj|6ȋ._rA-:?q1, +}OI7d]tϵqa w.NرDE)ȸU#<gDe*BD]@7\ v?oK`7;,֙f;_vߗ? u 苧U@AR4ЭnⰙpko+ɱǔ+LzVk|? \i+ X^<)!Bz塺sLGIo# #;k4/ ZUr:c& Qڝ-,7u:Bp)r3o!*;]`9ڂ,;%2<1 DkA;B_o#\0}m.y״aFV/ƉGL7Xa/̫8w"plRh=@Kol+ǣ᪈cŠpܔVO9]E.cЕDTAUn#-OTv:L-I 6h=,f%Db[x\]'^[xÈfLlدMw>ߺom@6J|duYm/[@PVR;xxE8 ?rX[Rfj8kx=i;CԿQi\4 &*6G1һ|:|96uT|զؚH +?m .[ AMqeB&}KD ML<$s8kY.t}$켐EW1Z;A;InX- ѝMxcҚ-^mxLxan{7pW =~pzsjx:Aſ u0r #~;vǿ8P,J U ?Q=a2W/ppuDXZZ_L2ӬӶdYrt@ܯ0k5re͓3ԧ5.\Q{>vz:?9>uoz_>LaX8~MANt[̴8tx#~@]4Dj|rNY81)˓7Q e[O]j;'K isOa $W&I.2acw9/D?Eb#iгrWa[t 下ױoEJlvVJw^|:9Nz_5a@EVZNE. 5\N =t1ҺFg9HgM5OM CQ0} c*$o+[ j?&۶³ySf.''<.,_?auzZ5l>?hz"@$pu\CI1N@%!K%'y0H {DPl|o婊|WwD(z1=!v# ZkMZdUe9q|.g]^ϻd0̦6v1&uzC5w5OndhN !5?q4#ݧnbksB6cW-eoh]_+ tqlJs'yP|ff.LFrr]wKZR( 0ߨR[#5}8sfvqV 3\> AB" 5Hod1JG)!ȟx=RĉJ > U|)<Ý/~lNڛVBm(9D^ZtڼԧB%&QGɨ xg^2O? QJ%T7 G w9_^#@h<Rro@Shw6&dF&T WdknԂ9i=Xd)QقHnz2 8Bʳ<'K Ԉ%mPuSVzej_-SٕWE e_ء)QپޘOCkXAG~ j7|zY =x bX5[q(L2i?AChK*}umZQ)cCq$g;Xy ĀY>qC|lP\ToaBiVDCI$<["]YCB#Ƞ;6Sj!LcKb_ѭ|/5pVcGB~%h]J%U!*G??>C木@q>[R}OF I`ų"0kȆwL3SNP+ ?*beů3/"Zrr53Ƌ;L2a-8#*7+i <,iJ- w Vd^#8(g]-1]̝0ķl8`Е`= od û>'ەam­:P89>dU .9Rj1 U@1 -tO1ދt}^:_m SW0&gAKͭzA.A#0Qܲ5c< C}jdæwd'w:‚ 'Ճ7+y KMݓ٢5x==vT K lm%g/쵷l[R`Y(y?(%o6!z h+O,* YQ41YDx@rٽ&Յhlw-W_2,yztNdóW9@=,O~BϏLR Z ;>:K?t!O 2BMhGNAD?zwZ!Tcˎy5r}ZItZIamV,C692HusvnfG}څ X?x/^Ā * i[RCAr`Y&HQY)7hlP{ViL?;_JwKlPk˞-(hh"pQm(#>͵Oű Jal{R /RJ68%wn!$4-:RK?4UXsxXIVԦR;\xyZb%%~W"ʾN]:4.MgZjK uq"g=⣴:/Z4g{)kc(UYu hsBQ&䶥[fEuX]'#I)sҮ39 AP"SDw9UKҜ$: T ɈQ2FDX$M;>R澽kY*$pѕ^7/P^&Bp~bNZ〱O\.{ɗK>e% YYx;N{8eg*^j$cc+ 7sξ WfmnMRAǵ- vZ׺ }"#jLJ 4D^w/]eG`?kmQ!"K-t皪W=?lZ@#ʩy>0:3 9yY|lK4so"],Jy ?r73R\PAjj2T?;8U8""$.dUxRN@qKQAP v^ ޗ%Ag1ȯ3TSk[d%';R%SjDJ*N[nf.S c|` t8[>IJ [8-E_r9Ƙm"vɤo-C D]L.] &ݪW(ߖ/vު0YJJ[n}:eh]zI@_v. EC6r,Lѫ%>x3>c':L~TYAӉ 򧁻.P`~`%qic <|O `bEI0/nfgD?A(ƺC$wu-ip> %kb. Б5+L<d[F@?8ӕE<.QHbw?3J`#ǡ2x| +)rAP44ln# ԼA4"B DDbuҌ ;MG%>e mCt5c+`@ x^Y2qExW\.C nkE'C<ꊔ;'1d%ā,>׳K "b0B܁&7,u2bК$`<(@o&Z'*>۬Vkƥ9 k)i B5f41!v&7עPctqbg.:,֠2vEX%lvmԇB0MK`VnXhbb̈ع衻ذ=7`gO^*Ұ_zލ`};j $k9$RPZ/U^.=>6V٭' Up+p33Xv#R7R|ic?+p~D?#Q>2xS6N)rی|E弈z$N,]׫6cl%G8gC(ۣPoz]tn+m- I CGL6q[oY y~)'x]iV>Ssg;PSbK)-]ze 37|BbQZsHG+*nFSc$`.k uDqΌu,k$z$ >%4Ot)p~۶Oش )_%p- knS &nl/Si'B ~Ug€ :t}d fCFF kB2f@>\+nem|(d̀h)'MJ @K46U'nD2wYq>MR-EEr4 AN`>Em> ɂt,sJ*~ֹ ]Iwg0rtw"Y;s 6xj Eq/5aDgd&>|-U.0)CU?Hoz`SsiMXfѱ$0I7;LFCk{e",| 1Mp;MCP脕IzE .It} k͋?XU!P0;^q°*WőU߷=w)N#ѿcB7\3(S|p/2P:ޫ"N6UףA=mHgybT_sDe:)z}MZH[.A\6wR\Ce -᫓8fg?Rr Ɛk#q=!N|lk,#t;O3n(U\*Ќa@*ƁW9BeS\te ņ/ Vؓ%LEE~vo,B)̓l`:m/3tllxw"*W=aY}{rŠ5b`\C*˜D/:$/ )-ȟ6SCOD\ǴǡG eY@]iX9}AB0GeU.>FkeC,5#ƼZ&FqsĹLП8"-IS%JnQޱTTgK2= OؚWxNGOa2tu>G뗬3x].M!K>x4 U<n+'l#zT0,ʋǤxͮw>Q`G*򔣿[\~r75#BaSU֍ R7{y|-kC/O&ߣ$ %9 IarrޞJ\OF/~ cy8Jh2\Bw | UMٰLF=J.+'w7ǝX\5Q_@$ãPj"B ԥit7$65C3j2dhN&ݪXR<9u ߻PPGZ4XHS fNN~*D$^wpާPHE#yɷ(%;ɕ&4r}u?]xӔֿ'פ%3mzUP)πx4a)o[WYT4v›ucj\G\;w5*5?oS1I/O'?M\dAB#QRTq>s瓒Xr32nE`-Y^OM w!o7>|!kLI(E̐njL",_ ӑp(ϸeK dpw\r9 r4t , G$OM+'r_4Drrc\' u.C?-ܘM{Yxf%qȲI5c&uDĞ=MH |Jq: 0ʸDzr{>h[Fo2_7$? N("^0;5|8֫{98LO7 W%r.1He,sOYÆt$^վ6I*fCnY mBB!\V9^F5dՋ耳ˏ&qF7gCYG5ksSH8z9b>V7AqiUaA 1>|A%}n =Sȩ=aVJTg6"h`rcfٹ4Hg,Pp@r9X-ff=ԒsUuQ"C .I (1D^ /o5݅&\MCrOf=<V邖hEwr\6gX@  ͤ%qgeaPFY#<\"8$6;ƃӛ1]t[^!} NEĪ眴C4t Ra ꫛLeU ɔ>1bٝ>$NNP|iLVv kV~thhQ]fUbrD9Y{-v:E[^X1uJuBU$L$Bߴi*{ǼH+ȑfuөSQQlAFg<&;ob_4 fx)MQQ=S/!a#xǒB!C8tF4?R_2GCXZ9.O#֋(KwI[A;#@h8“,TM)V} Vlۥ%~X9}^?iW2U^NmYlo\UDȾb< ΄NOsȗw7# DZ `\*~4W#|[AFUcOCCYt]BX<~Xq 7AqC&TΗ!DPbyJcL2)FxW,L|yn(؍#O^Ѫ!Bb#`uRI,Ndw BHqYS_z>LjOD,em}؎9l1ޛ+H'Z ͪG4Xh/Tǫٌ`yp#AhD %OEsퟫ㒱0T{л]F 'Y`'z?dSlv.:ww뙞f1Z4<8|IyyI*fvƒ( DG5ՠ@ z.4eSО${A(\tz.]c0z\'۔Z!yo?rTq5#6l['u(aBaN <'>4MJU6HFPϢ4VCg6B\{ne˲7斌#b4n[* Tr(HQO}:Z^V*Sa^Lr[nƠN9XTP~,i;aןBGC qVt(S6t͏ C͚4j";$H͊;^;PAM3{eiȈyaؼ\fG5vofvc^-XJnȆD8D[9 MF%T$ݦgh6 mLuZ3ܶ [?dZmONz1;2Uڏ)Vzdo3kt!ka^9i:=(RI˹$K{:bi{1݌K(A+i R #؏V@H(#6m +I Qs>zD d| } ^ ׿a!-h9);cz(8`nG/̓gxEWcrr?*>YrD&s*nC5,I ިR yV#wZq5'}!Yj*ȗMQqca߻BX\,L`4f5e$O{ $!X\J!ACВ@,`A|*=q{k=Ey(o(GI=[K7b JTRzSp>BԽ)#87ի #/"g) sϧ/ULq7%ɪf'H2Hla.2/zut_ AձV)&z+3yQ'H 0Jp ;ۿ= [L-s\~6=# =23y5LƉM@/-pG#u =Fz.$>Y~T nito b}EGIQPF]C%H{iaKuD+]vFit$G |Zf"QwOF('zkk03i$e'чi0 d8iYv~QKZLE/iyLzN J^T!L\سQn3yչ m+]͕gW<K6btDeҷ' AᄆiI] >[έ,5w 2'= potbFw6*Fk])gZ-%ڶ?0 UPҢar 0>&FG+Q[5VZEiT3vܝ6Ef`W8X1~=Ւ P{5D.Ήe b谠 8'_vlX4yp뤈vy] XGkH^rǏB\ c֡|8#0t+HMUh 9Axim0&vcSW xk+Tpr60D'r h]ZwSUwoeS%P][c* ׏K"{9pC EoQR8vWܒaoϰΔyfo`2-XDkE>-na 0Zl1zYuT${ Tď2bqX!GJ$rg 6ӆm!6&!㽔odƴHB/M o:D:`gPNƭKo\&̮IK&27@>}daڅT*k-şmkrΙ岕~&UIO;jFEOFy,۴^7C*t:ބeAn*-nA&}Sbos ~{@2UL t!FJ*J~3ۄ)ЏOx@& yy$OkGќfZT@PB4WςdؙΞ0=Tn':ɧ6zLg=d`|٭qńZdf$Ҩ^@L5Kb+>#$¾ޑqGϴ?Gl406w]\!iU}8wxc9߶,LcP~%Pݛ1gVB"R\Hv{|[fʮ)&Mg>qEd8҂O*u˵ qfm%$$=()ky67z;j YJA\]o[ݨnD&b6 ;L_qBmPV]Bs[f^h*4o9sVޙux#/äYK12(Xz6_*d$ KEg}3k3R~ o<g6oM4t9X;ߜOc{& |۪cg]Hxgak0:$l@@Q6Q}/qS]oK~唟ej/ETZ3{n&6?w/(8rDA0J6ڡ #-;_y2Ȝґ= ?omG 9FX~ /J3B}Lޙ6?:9kcZP/:7׬  1w/ɢ+G=>Q0P> JZIv.3ߪ:g 'Xh;A^PhvsD5b9svDghUax' dyoqCU쑠ўMIdhsV$D#,~Ll{I̒Ow$3%}+T]|#+E0Z={<1c )5?1n{T7@m_P/c(`jkͼ{Í2D\͊EI$բ/.AՔ\$uwˌ(%v,28(uFcpfIX.Ֆ2~.wsͪ xB|kBom&X89@! x?qZJoI(/"m!4 *K|]v?Ixٜ}oSIj,}r=o` Rj|>|"]~_~8q g{푣oQjtS?&V Neꍫ6Z;e w\e:VǖU8+\K r]F.B5s0 d#ĂkN` ǧbPnVF-nQ폯F5.Y桊$ö{˼xf :iDK6gW8Fb{ cZLHSDJY@ ٪U,.?rI4X@dszyS xyL@3x^< :ɰ{ePG!ҵMզzo1,ƼVR czrq<'NkA}"#S{c,oؐpWw*:p]-A[MB+Ir]gg [K[Sxt[xD8MH8>k`sˆ(3VX@s ME#2!̒6(/| [љ\01p#~+:TyPuMSxA5Sw`Qp i]>F7d\ubdVE[YVX˜Tj],T&q:1.,#U:wV51E s]'(NixӍqwLʺ6bWT'vU㗍GڥI3*N@Rï*]t~yBF-]rP>CN0hR@:y;.]rHŻ(psK𿋹0CB5gG+u^-YZ4+ym'F;q~ǁ$e7ǫ>ݽA(գ'A PnMP K/i_LhM;~m{L^ͲbT XXwe]bahUO9j38j ޭq(u `-)Ƚ(Jf؍orvsjfsȫoEʺFK9NwѮ<=˄ܙϵW޿Hj}(ktr eݺIn^"͌nM'isͬ1I͔P9CyUfqn$Z o53&d\%tA|4|h[~GN!Uq˽{RhCfp>U_#@("vQ\TZke ^4!h_Tq{[tu*9YC;O̫#-B7׵zvd"P T5O~ެ0LwgDh6ꈚ<)PĚ9DtRg&f XX^4.s˫dمhN/GX<|%b)`FopDK7KIy-Gj\bC;M^*/pZ[B,n\FOTK`_Y oJvzˌÈMI_,<08ФJ^u}Z@5YXz% Z64,dGJe3,ԓ5jJmqr0}w|6:hg>-^zڬ쨫BTN^6+$6F={7fch>S8M:y>Q{N_$hO!Y(axv>w> #BAPeWbKWp6w[_5P|M@ pe[G .[-"htMlZC@kƔ#RicGCV|ƫ-3ץ,ޜV3 ݰ4Z?3%Z< TdK3kXX"')^ EB(f+`MֲlE {\1$үw_` o$^`D p8EjJ>\K 6_Y \ T[ kMXNdX:d}E@2%܆T  V1TNϣ>tgdt+mE]#/zRJD'hP` E|?d& 2z&n[kmP)EF{XqQ{q%ڴ|qԤCnT H#Q8O1jM O3&X7o&ȑ~nGCCIOƒ4em+G{##%2'.¾hXPq߻` ¯"b^HF$X8 ]lUD$B*=,f-o6_(AVCތ \SRۧGcPdCN` v}PkP~MӜ`({ms nM%&˷pDBZnH3.dc E^d.̓0Ӻv .VuAL пB^e n}U)TP,'&UIZc Z,w,$Vz4DQ-p52SY ohi]$O#f]U)blËTRtb6_|Qժ 4z+۪U9ņ k>Ky`-^MS@dHȃ{. ÒtFFuBV4G=#zc>ʨR?ICgn--?Jb`(u[p9H{QN/YUqQ)o*p5n Sme?OѰɋ}$8dzZ)| s§5gz1ʉf̈́_$mlDG8M/ԙ7TgloJ{E`h\L>L%`6mQ_T.I⦺F2 sć3᫁V,RMAUr+q27192!O,S =T=Xby`E7~!Skm]A9j,DZɑy:vv+'J!>W7PovA3b-g=& yUO!=,]-%%&ԵAG 4'sWnx|[ڙ;*6)r]bnSnܩh$7NTcvkI#I[(4W)#ӥ'Eja`'l,|P.NBS'/>ƾĴ<"NwJzNFyGAzV D=|>_'xQ+^#tI0Ǖ dX\߅g߱ v#o6 6:$䱫^D \]AqN@EL$1#/E`m[Ȏڃ7XeR7ݑK+u-{b^_ T`WSۡnZB)5)7"6HRI+SSpt93r7qyFM®جD,mߢ<ʬ >nµv4jLy"⍀# \w].9:`S1 fBf_ov*T uMK`uyXghƯ8&oa%̛t.͎P*]%57Din򘞼ч&xD軠< .!ހnv 5M^$U|K,~#64z$9ŋN^@6(;"^Ttg'邠ob2 ̐qS DUN]r;n&eS;µ[FƫEiE 8^L^Q6g׭Oer;3|] \A4;7[<S'ThS: -6cfunU˄԰=TЦ -d*5/#Figrq{VŵQ\Ȩ誡FT#>]C 6\ŒqUT^$ #7pN6"5݆sp{ըW5d!mZ: ygM5D.`؜~a@JI Zw~2 Q*5?~ 3R[or"p W6cjkHc fћ5$IUn 1NVk86ǿ78MrRzHU-X~" <ۑg #q:z%^MB")VƧʐ*)c 7-vضAA@ΐJ|-}5 0֗@9#)*Ҏm/䉔&w_C V #35rh~xExb u "":܋VFQSi֔dnJqU<Q&:0-UC't?\T9lE`!ȭcyLj d]ҕ*EW{e[m+Uzp+} LQbLn6=]̗t->{QG*Q G] '^=h"Y tj:k [*ڀ7nf1c3$Xtc`<ߙH1ɮثIUd.Ee <'@R?j<3*W"7 ⢉ !б;oeW94sC7sDl-~Bdv G]6HHKK4z7RtIBo'Ĥץ ɐ)VR2`(~۩ p}c*v9kER]7{K1$, 7v) {?Eg;j~!WIaѸj0&`W-grR,r)O*`wɼ\rgTgkņ0!zc==u+^ô-at ɔ6昆e M&57YG6/|y^^W1%G-23Њ#wG;2u >NX n7 ;_[ fTüfB̷vrVAGdVkLhˆ;zz+ |WQ51|r<'^giB3g6Y(7m)O'nz wwOդq&5T IڡNCa-jFpgxXL*)`43U8Z Xt,`.xX=IP1NY:xpSf=I<$9{T)(SEC`Zs S4}9f,@ s'ƀj@t{7!Aa*e.c9} f݉ۮӝ7XvJMMm@n١]TV5R-|ɜ_{2"GME]7$eSڅ^}{Qu_ϚMZsy6GbέO.c\a1\泉[嫇rp%!߳9Gkn>[:S}dO.ܧF@Wz^z.^UYG2|$|]~T ^chQC0s ư&tČKű>A#"{lP!_CFK|}󻊯6frճ|$&E+'Pn̸6v:axY!(Zj$k[o17NT,LO@SY8!“Ph=wvWf(deս虱xU>.m=T}<K'qW!`c2fdaw-I皜 " rj p#|;F'ng$PLX[qNH/A5`3UǑ:!3%}9ٱRLnC'P4C/Vz0HwBnp6Z}3tUQg@*j{>]0lX 7Jo@wpmp~v $\TwIpu" S+O)CYPsEt^7~6ACv%X'ނ )hHypO)9 n1Ul;K)G̀+v֚OLANV[cU>zB6ߤɉca@"e_]Xg̊a *kdٗ6Ta<$ǛcN\"EΗ/h3cW~_£厳 <=ms8j7G΄t*4X~Rv쪫0L.cψnC3 įJ${G^^SH//vsѯCl`4!МaߍGmVQd 3ѷަfZJYk.H7R]qsXfiz\*P7N.ʀ)qf2ү>G!;*|rϿ6> Ḍm}up6dSM'S$lBu١['2jR*eA+f@$,:&.ݑ:4CUsׇpB(,r TWBf8[& -β'1=TIOKvSd?s7ĝd}[OpB ]Gȯ`ӉO}4Ew,{Q6XELJ ѠQ]5n(ws./S? E12?+%]ZR r0T-=#ދ+x%rݜNC u܃[6Ozu 5=a5J:6.b K@;)vDk $Q]8k1}:V,@Cy9a1n?N|JrX_&;{ccLcۅI.FֿaOj#~.7-+)\Qq)+Uc!φRjDsl,Yn7ݓLr-$?*MͩLpȏ38`;H-,qqWj`lZ~XyȹS:LgM疒ளe6~yd4RZ KJN_b8 `ԒK7cbh8~,7<} uh?_4YH6ڜd쭣q@OQbمGa Ux{`SI*z~9fgþ9a6x1*HZlzG˧spdHiTɡ4j a%jBAa\)oβs[~-@_1CҢ}oHoXc }`H1ҹJĞ@tn 4!pO dŗayQF~4SC#КIOѥD$qO=lvAUoXCv;ӕyXkWWߪJ~سj#Mw.}kX`uPLKL{ITy@ >${wNQA A!^'y -7& v8z?KPqr= Pg_hЉTah 2>cO_hͷx'"IA!to2p34MWvuEV7?ÒQ,5hfvzEmZAI=FC%BZr2t/%nn|ATF_EfBgvnMa]a 2OMB9dv9q| uYpuҋ INy_¤ iWx{![+͋A,[ӒgXByٰfb |8w}Iш}4ҕJea_ v0 aH!^!@`YC ?DiN/p6㋛TF B!@ٌ٠ޠ&-cV0dh ?w2:ngBǫB:vB*a\:wU  \6HZ||s* u&Ɗ[3kE WNÈͿ/&SlI)馍@"ܺ07g`;kFK6T1W,5Drl'r0*$B OMH u%U 1cP!گ@h\*v~cH.j cտ oK;FbCw0ۍj hk/+D/6MIs U̽q$};$2 shiwa3q[yZ1.TB&Pud膘JPa3Tу5{4YW/CG)Pa9gw͖bu%29FigZJ]_nȒ 443L<5W)jAEgp9u F=mX<)<,4&5"viy{>ݣA8b`XYR+Wߎ̭s;= L~{c EWo3 "+eű+3T9y$[aa/W7)rCue~j B;':hrZTX(muC&Gw<^HB6ɲFh+pl Խ6l˲ƂzNH<;Un_e&ݱ? 0J-7+Ix}EAq4N,*XGE+*xĔ!;~jNa]yV?*Z e n\DgN ݄:7gd~ PYs G !qRLݺI9Y1{ U72WuQU ̇r׋DlNd ͠~Y܆ 3c b)>ĵ9XmЪ u-kaED*띴|{vgN]` [A/ j)fa{B̙a%J<~}ѯSI!$nYS_Tσ>qat8TyqPE2C@c)Zh!}bMUX؆6~r](KAvnኵDڼ1,ڵ0ԆkQC)MÁ[WfE}e-.>-Aj`*BC++Mp2q5gld-ߏ64Xv+cG:7:@qT뷧UXiͳXsLdzt@b5i6y(_b<H.hA cC//(T6l>VnL8D3?ޛWpbϢ[h[i+L:K>8MT#CtnV[GG|d^͆v/4c Ą.?˓Z|˝v99(ڞ'ٌ(5J4fr_nFH{S.^ltfydWQXSZ 9[3Hk`8"› @®GaF#6XO'ӨE35(Ԏ}z@8Gԡ^C5{¦#Ry;y0\~}# _¿-tnyp$*JIsH!LPKܭßeGPiBo| kvDe=A~B\E>ݳoH2̆1VdBkLT޳H/M^Q.ghp7ϐCDM`?&c^WAM)H+J*g#b}5lR4`YZ0 } xb.|siqXloN i(M[,;.[DgF񉧏$t,2P P|M@]Hd sZ>2JN!Nl0Mxeg.n\T'F<2[xld & ;͒[4 !ܫ:'ďX_oӶ09ͰL~#i|v^ڌUw=[:".AHV8]ӥ =IX^s]%D"g:'O^ -i'twѴIh|?C ~hNfeX J&bG@9$NLa:d2#%5N *:Uڬ2,Ql1x_coEk|[bneg* ud>cI~ jw:xc OTim7՜P}</[{(ʘ~K3$D#l Ö.o*g*h?`:xWZL,>1@v/n䚠*ZdzIzo6UzTzWN+Dt-_-'lpˉ9*yP}5Gmՙv\7\iβ[ x}&wl[0$מd痀o$>8A۽#Y"(ӭ5a4#^aH!^+_pa'*Cnr&)W`KU^W6-̈́"\ q*5$G:~FkڱL>$$9={muOqmpZ8}C]\>Λ 0ES5MT,CsdEeM]Pu P9]o@rjXֈGc z FQW=%j6+p*6L7P-4]7,X`̀6lOW[aS43+`نa"} PS9SV{e%ZlFbgjjÓ(jQaeCBC&bdl+BcB3VJ%ŀƍ^+TaGI${:~$J p6TOy@Zn12ҵ(^S= ">v,ꄯ+;bD.*+F6:F<ĔFr LgY\_IrDZKg'jCe5m)Fhexs~IjziSm#̋XPuК[V<-bbh4.n0A+ܻxdWB=]$4}pY>yoԆ}ޥ$Ң67W ʲw۷hUq"=4 H^yEt!f$J^gz~ WO?6 r_qn;5ґxW8Ѝ.PcqnK$Wm)hR"ۥ+mU.*)5(Gt s>,H*̹Hy B&ZlC>g"pe}=}:K_#>Pʟ&}eٱ͔ĔMh?9qd!*2@YeYDiOӰ-#uoN$g 7= Dc\0^>38輁YaM Y8d9-NL/vYݕWk™&F!Փ!\n,44r=ۼWhy5?nt_vo5tb7A[i5M{HĖWL puRς:@t B2]9퀇|4Q,M%u79=̗Мkϯ'HAqUq]Wx)z((_?Y쿇my1[8 Bf~2 2l*iS7Bo(^ L6n1b? 6Of5PorMЊI(JxC6XXvL|x:R[pjP#y,CfɢpAYfڸi!).ypebKD̮A-§wS( T28fÊGh8l2Kevrgʔ|*>Y,ACErFKp9C0LNx|l}ɢ(о,¿tZ@|ڛR;_$^t<7RrrE%2,#@`V=6 "0 NO#|`'צS6O0+Z_Ҝ8vG/U(9)Q)WHEJG;4>Z\0I2[- БxHY ׯ'[eb82EBQH-uHQq!X$x]}*&kL`M+U7jST?e(_Zg#`hšsLNez6^uf< Nk"֡_D zA&4v `va T華4 OkLoH{|"&\ؚTrt rekSȄ;OgGNX0G 0+TthA^-tb?LXȭY41'oޣO9r(G= BONZI!$kzsoq%pW1K3u$sN|bMP8 eZ}Uxgz2,LW?'#krpCs)~"8&yp3O${E=فn(}* >"*cpE (s9eQƃTYG6LnXky+G΅q"ݘ@ӴYA^pij7C kX3JIo);)=d*k!G=\o$.qU U,ͦ6^KV,SXfʎ$ZBv{s8e4w1(n .,*\[/^\%:(V1;5ށ+y,OsUh=0 RdMgM`ncի1x\B]@L;a3.BRL[0y8ʨfڝX4}9%"󶨓Irn'ue3Y(+`]HEn7͠y^K" ;Ge5 >Cø%^A2%4C#b9ZOʶYLID)!`XJއo "NrݾDpW(#wR{_ >|Cd`saSwڍ!lĀGH*;6AL9:A1@;cJA{qX\Ǚޛ эCY)2uؽU|Uy9,L_l? x;F z !t6:[*Zu$dEG{eg7]ۊ|9R!Q{Cb^Ixb=Xo\GVげpL!a ;Vg..|+LEJA,|zp I>:ʒ¼lRZHxЬaQ4#^cU\&Ad_nYȂ/Iį_,;%"MoFI$Hc"v>i]6"RcA mNY%3(cxչ je^^ʚߑAowٿίh!#BO('6OR-,i]mKF᳤;;go\h_O~`wo:_VS6v- v nG0tiC?T9vk~+gX2)]ݓP)Qv osVQ4 a]g;_G^i*+U_W@ѡH}qwUXqKu-N'1!OACe`]MAqӕ@uR$N[O.8'CA#)/@| KBi/ BzdI!"Gi‚W8,qP6IYRYN]-h<7>nU 2^ 5&!~o7r͎/˜WL(eqgE%{OLn׳ fv6:l?'h3?ySt$]ƯuVsͭvLD2=zP>L9U)q $JXIxڟ{ZJQ& ֟btQY>T}`9Q ̄R$:̸?$pH 5OM7&8s?@#jJ69mvۥLx,AX}=fBqVZ}w*DŠf ~hfΥ:NɉB8l+}ۨC+/* _'ZVQ_u'b/Y}ݗf$ch^BxwK~bLCwaW5F+N 9:BU4St9G WrI4(n Ҧ3i,J=YVAI85ԯŤRB6;hDjS5FEϮ j.3KY]MH㴥[JD/OYȿ 8ї'K۠I\&۩2cn\bwXY():?a{۠+`XF"|F[O ?zL .E}7v] BYs0u -#&M5Qdő ' yͻ ԛ8co%vu$7le< #taYB<&ʻkcaðz( p_EBV'Z=H VR_(QꀯcNR`ii,*Rx̦ Ѹ&:$c\Lo L itmRTT\]Ĥ i^-^vt^EiMU8j7G[6j G+޷x}!v*\П/4@w0(OS`㲔V Ib8oPr {S*gE6a/y(ʵlC:EŵNzb KBC{k3^Ta2(s;\v%*9R]9*IW'WR'r,P8+]gV@.%'S"Α~R݁0XC%P̤l6Vγ=P-X'Ig2T4,9?\ Oz EBKw|Md*0ˎ. {TVXbO(3 YnByD'iIo݋n\1vw \-6aU);?Ir>>Z$ g[{\hQl& c`gp ˝`>fyI}[(/ n`u[ڛULVfAؑ9'ԳŨwM^$tGYzK 1:s> >ҢX?tR)'L($z*ȴ@028qd?Q۩CT_]iqЧ, mw8 O5GƢ^" +q:Z؞- iTQ8D`40/ <7ihiALDR}1`{NQb[ @Žxq5ƶڤ9e?UfQ;O8=ސ#05&&3:x D;LNjsHib1ގk#[ɨVKk'ݠM1P#[DmU(ɪLe1"F-q'E,2Ԗ86B|S)@~cJy-VKnޔw׋/dqn]:g} ͡}$ 4 nDi8o9ǞC[){]g+;C@p 92Y&ܷ"mUIse]y,.ja3SoF;/[,D+Oc}^So0ڌnG6͖i Nʼnx(D¦#ON4k˜WW85/q +w9Jg"<żw\d/Yx 842) UWOn_ GG vuZ-eHDPhV}Jborx(Ʒ'L9 c҄E5dO(\@(>g`*5=qʝٶ/,.E gNu#CM6W`ˡL/&Gb͔lM8.$TN'4ղƐ4Sn?Eo+Bg@2 B>~*PI76FU\4W -H"B=!$YZU<Cv鹀=i6I"=i.MbKGIj[2sShK KH಼ FEf#)(OP"į;{X Ϸ}X~_} >N (6?'=`竚%WX nոcn5=Za=G&ۜtLBu(Ƌ.H Hmf=5ΈT33Dm!X3x#'9]qH ¡=9Ǒ[N_8prJBLO: N%c8TzXpg /,f`khD47D18V<]\A`rx{BGVtGd,8⿉U/^#ǖl3N9cE /r8%p 4t785EANFAg"S?+7Qj}E/#+';JjK~{5Nf#x7S/Rא{ؼһN(~(16Ko2ЁX*}_dQXBmܡϝTlhʒ/CB#k\%wv6Pt"L>d n~$Y)?܀RvvT>6ZzE(aF2}ר z*pLE:k"ţi(R KxJ b(bG_ξrd=yVD9Zi]dWhą͟J1$n{=宊6P JbrUb%=b#^Ŝ>t+(Cb75qY۩Dϊ15l׻%b !h;+( +!5poy[ڠ S Z^A50ɲLu2OT55B{2?&1_TkAYoKY#JY=(m?i/L7唪Qg?xUe9UF9Qkt m!\-rV*^<+VI;w4kZM3Cގk0k#{eI!LPCo~^08ܮ G;8uOv1 ݄thX曝Hٺ9\ʹ48L[)$Y*D|#Ϊ̔fEcpvØ` %%Lo1G;Jr$8Drj30r H%i{嬣r;]kдr]_*IE.B͟WJkew5UƧwFm&O!xy(Yh' }瑌 ֵvpK>/ Ny/uX bК:S#R=<ݎ /9,mB@)CNW ͘i^w? ڏ=jUd -;$yr†gV2CH>5^*)/ҙ=> bرPU?mu'9jZe7]V_v xnDJ$2y bniWIh=rKWQ4Qυ^r1:0wcW0c<'i(yI/P$Tz~mC:fExb.Dg\yFחȣZ M\il"@mt'>əp Ԯ9ZOz%BԐ>QV1v07fL%< T} O]⓹Ɇ Ai\Mw.vCfmnj#d򳪃/%lW$+/N'D8J>h7RIo.7%=YWƭzhj&fnBѷ5"K'! >g\̠V}o[9<}Gϡ0:{[!cc |J|Uh."MlN=!x(Jh25ЛgO3T V?kٲ#ټij9:fe[kWbjIeE#,BѧRܤƕV#=:~SwpּTU[Wuz}7 ;7ՆĶ}bj0A¨ؿ+˪SbZGB9,unQ͝,z| bN X#֨h!p8I[ƅw-m4'!c-48GI`_>ߟ{0!R8`ȇ_('S2kVTwvYA%nXzޑ& , q $Aݪd(ŋn`݇.m{Fr:qPY/NLSvI=Hjo 3:v&J7GÔ/, X MXal.MG~9W-r֠hӤk?> ]Մ4Ό;/7$-[Ц&e&pmagʈ=\l5]]N'A?a~ &90bƿ^hZ p0 "7Ws5n5Ӭ p,#?tYߦ$x+2Gy..Su$a+5R{GW^Ñ(Y,"s2ډ<.DD vx`T^dQ+'`#!c$3?CVdUfI" f܀}җ%IҦD{7/4a'ېNu,R¤gj:PRmNe譇Ub??xQF>hn.ϰߌSFG ?UfX{kpa; 03KqՆ(XvLF ,. s7a鵵X:Fqi %c! 9IYדgsKpl}дlýAL!qm=a>|RV,:(iM0S8"}ߖfjQxRǎ0KCҧFR7n;}nJ/rYTXcl.ڱ[גpv>ʣy]`NzS@f0:T,]b <1EA"dZgO/$;Yt]'cAcO0׌x9DE -.c V6G/6`Ѣ{cQ({"9m93TJ4=wBf'%$L,ZMaN&6b msTE'j bYVfhR3s4ۣ͌~^Z8O@K}aGߗA2 npkVX nm;)6|352-iR {)-G Rn܏⨪ }d?aBI&-#Q^}ė0j5sQSj:5,h<1g_w甿 r؇>znVY K4B",Q 7->t cvp'7~#L 8AUC޷5`&^L$C08Ne шSAlM QTlvidҾIw1UʬL0:ItɓެۄXedƄ9o,aӉA*!{ؒF=Si:К^u)HJp&%1ƭ?]r#o'򬍋!{-/yAB엡ԝ0,T_I-w- ]*KZnC0n E+4O2]b@l!/P#Q҉IRta8[>er_Scx"/Y/8t*̰3 2d^y#8,$-PwlVG/V!qs"]:7lhkHVb $,(wKgKg.V՚;5n0ej' 2{*Ha)*t@/^/RJ܅<ٿV .` #MθKi?3X:cj_ *KڤRRQFvOdĝ,淆gZV͗ Ԁ" m}u{J؞XH7{qAx 80yXnbvp* )zhGOs<>^7v4.d96*ky% '0"ўlhqNPCwV ou~"#f}+- ֠hކiSdQsnW]H*&Z PҨFf2 ԇo$i57 v]uamʅ&4{J S ґ%X݂M @px}g&,XϔKY)\ZTu SjPFOBQ I>Rp*.<%=[fy1e~I 3VnӸC.sN"VIt"ܞ!c^!?Ru_d 0Zĸs[IP`/vpEutCLiCkVSRI o{.'t,,t~ȱ zn$Ì9XH6o qmt9X i^k Pn/D{(XS?ẹ?ڦ$ż?VNTMkDH 2+*V |wStI, JV1({@ U?^>4(,ԗ][,J8Md.?kn˭A=^N翸*/S/@KIWLvmOg_l{j\Ղcd md-> NcIoңpOYJKDp]Y<[D**!N)OZ:=nϼ;6^]Y . @,:vm9ퟬVv?JHJ_(!lm 2:GE=?d5>(JT9 ㆻv ͓FLKg@O (w\@=%KFqqxwKu 7| M.RWb;'rtT'Eɒ|PA^Z6c3w``SUY!"{$HXr.nrW}+o{"E ɸ bs`FR;|Ǿம''K-Ӥ.6B?9 C@)S=h7%PyX^1ӝėټQx#jY(K|erQlP2`jomm53Ycr_"4y/I1>w˨a3[}N^k#c;P]5вJ_BSϘ;]GWu:${RSbjK ϟZZ[gK4g*w.0c<:,P SPjS[8!^si\j.]1R**.b/ Xϻ*)yZ3][P(ëHȝR)tBgC4!b;T"w y#qPMY7+lPU-{ g ab/UL#rMW-W+.@/yq@ɕ}*CPMl9抃@WD3w3c{/舎 L0,-2:cQVo~obP1m{u \?+UI:|5Pg9~nQKׄ囫44e%hJˮzNNpۇoign&CyQ̗-eoLLRYaFaHaG˫*4Zd:^dPo mԌf_@Wy9i[9ҍR! v {%0:3%Èiq|&T"Eev T- 6{;HL\svH;㳤@4o~DP?hY͙7$@I;zR@ED @z'y J[-l67\U.\lm>RM+!@{hrc[pM敆Wts_jnX U|w/d9~㶅]9ܲ;SeA9פWRB})=#TwGtyZl-CP[1遊Y\Z*GMjӰBi]֬_۾{A%)>P$^1Mک&{rQ5 +Xuzxx&x3FQ 3^BL2-K÷i 53ψw¥,6G ĮYCT>/S.ˇv' tqkTiOM.<~De2_ ?'3|Х_AP5n;KDž{ZLzDv Spԋ_ !5ugf$A|wٳiUs]7[.φ,4ȕ0BnkLQB:]0H1b94xG-~9Ues27q_-ծ%Xw9n~CMX1->vaO?ˊo>,7%i,.ZR`Z녿f,8t_-VaXܺgϲ,ץ-K5vY8IH)uIEf(0FצqF"M78gy?!vwJ? #覄/ uO7q=)F8yA 嚡Ռ.0}-jiBE(DON~ ib_VIןH١SW_ *]|5˙J TQA2X-jDZA7ZvcAA-3* d6Y uu[2z\pZzFFUMu#nk_X,ћR| /f W1eW VŨ+LYBӰZ )! ~%xM lʃ ruO En!& =5C7O8V'}C@Vn/$3-'R7$*&$( !=*'0L<4YX*:^(e N@@ ߒ NiUSH X݇j=?խ'}*- ܣ1,ԡ?s bgTׄ)2ɿApVBq*f+|á0wVżm7!l6O&Mz 諮UoQHSIMzN2"XXkX hOgz a5)>06ſI2C NlK,ËMRmNY4 QL8kȯR н{~7Xb<'- xHib%,_ro5y]Yb:r]V%zCp/TKH)^3@­Xwht>^a:1`!;1SFfUȜ!i s}U\~^epӡqU4yA NL.dEh/13 ($ Djɝ]okfUuy_:dyg:9JH21I}7ΚPآ{Gb8C 5wMJQUQ-fahZqk !*(~hZ\J߽/R|>>Zo`atvy]a?b%zj8ݕ=̻XY= *Pr>C-Rge = @‹5ǜ8l@@-쮨rV||bh6}>pnTi)&3PSeLg`&κ4W iDHuy{a#&XO NK ~~#UkӍHQJҔh➬Fd`RK: ²U'׊b`f S?vz$ɠ+ RAC G2xϐW1I5qrVgK.rlNLXU5V9d? Ȋ\EU=a T`?JRvQQ^ :h 9$[gտb6Ϙm#G߷S^ 4?Nu Ґrt:?ty֙Q'.UR'`ذsh >(AZcA،Lp;G/ӕ^ A_km.o\ %?S`dRжEh9xȹzgV VvUw*$ S;Oׁ:r'?y;J1.71GXSƦ?=[n\\;0m큮M[egΉ^2`&kO]ף q.V]Mg62m?˾פh ə2 q&vTמY\SMYLv|Na+ȏ "ߔcݻH%c`ؼ 4DMec݌K#$`h;i`P5΃&[1B|\sG C? -ƴ^}4*\\-bPˬ7/Ge?(qM:*wm:(ݺ-4L"yB*?$cG;44 Xz^?OP\6,sc#ҤQxQME"r欶Ƨsp3ߔVVONHqxjCG-ĈG5RbQ<0uA: <:@ g!H!Uӛ34_![VgD;HZPE[ZkyH>1EZ+I r/ Qu;N~pMѶ לbH6]&.. >_ZCUL:t5çٛ[G l=gs/N& 4,iFāp}v{=o5,}wB8LDEX86?C˖c.Y'EK8 ێqb5&F  sXE5J$T!S)M2˓Ŗu) jp;y 1ᦂ":u La[)縸n9hU-f-h q8y L)ױ{UoR?v3lkKf :kAT`wEc Aacu}yîlW"@}5&x'ͭiēцSVlO'/dK;E^?rY fo7`)2~K4)czqy|잍qKE,3g8桯ł QV ~ M9 X7If9Kԝ }tR[1HChRI"n~>3=ײn-HJ?q:yBlF 0TOɠ6.3)!htqtYn)U<3*e8g%Is(~^;X'_;+ cs(ZHFP Bܑ"`FwY^J׵=0CMo\bl&# iUܶcD5fn& 5H#Jo p=F{|Am[p(:e}Hq_SήH-7NXJ\2Ft\'x%hH)J ?%v~Gm]/651zw#.))?μs R7qv󊖀AN< ,Vtu*~({S$7^SDR.iTΠ.zhfnH?.EiX!qmLCY9qjōD ʡC͛VmUr!IysJ@JlBۥ5x.֙)[e@I"J''~%`*0V[q7" 1c߂9kɏ߼V -7o,v_ir.p(|@ej%I 7~1KǞ,7iüED.?e/K& 9rŨSк-6pLd)իۙzA.e45BZ֜=ݡNl:&'{A6:D+U?b1?" mPt`xXQa>ʍOg$df9#8d40< Ԓ\ȩCޘhM OkP<8$pBʢgT=MimO Кmx%NIjIaQh=15_̎^hm|N`}B\7L6/=Jw"Ϗ@cfEb`W/W*hW`-9T@ˉ`F '?v`Hһc~>ί |{#L)X0{aXo2FT9Psz8vrǵ:?+T …i>7I MLwaJAZ$M'a륉^79vsI!`FV;j&Sn~Po dV@E7ayս].+WMA&)K..(s2i+.AVF>DS ܟdUm*9|y6&Oy}DZe#!NCgqsI༧tv,7&$"0 _92nt" 6o_?Z Y궗$8HڶQK*%H|Mfnv8gNZUOǂ<{[^ 7k0hmcheɯ1BP@n,= &hF}aٸc>OCErC!ĝ0WC1녭hNX${CwgPмzҘeV mZaP;gU>+?] q}qXV8 ^Mfnkh6$ oo#Ί `ט.^J V,@يCzX,-ka;8E}@D"=\n끽ڣPݩP=ͬEwFž8RsI]-83^JLii,@YJy\.Kqv#dENyX:t7u[@&ŷYSO0g(ɷ"\&1/0Vi W]='Bl'_5[Zv׳Ú~h@||?8r}6霞ߖqHa#oZk+j<2fD%ۂR1o<*QZKfvR-^~krMm-pK '6M'A Sk ,6G:a!׿j9uqmpWRuTϼB*Tˌe9&.t<};9`;WVx(rҹW .s h3!){*e xl>qL!{Fi}BO]1f=r"-"g`))$e-4)KӶNˑRF?XD9׸BW!Ąƪ4:50l>@xWB:}&(1؎r&VB17cbg&CJ%z.;Z;+y*+޳;Cp7WqocySo/@ud1󶀮]o1IH[Q\0~qW "T{w=I>{eEvlЉqBhTb&L"AKYdHoq.F#)Ӎ!)B{]XQ~ʎ P'z鞆@nFCl 7]5\[;@V!ȼКvN bn3-S`Nܙ@UV"oL ;/Ø"c7z猚 )~|oeM32̞ȾxjdhuZ\7f՞P.'^[Um)"71v;H5ɁT[e$J$Dq@n.ĵWP' m8.9`?h&oE ؈a\;왓N[,=Yeo*Eu$XXJYX7\YxFն isDuy~wF; F5l\ܓK(].mf.{ %(=MĖwH|x4=޷$-~&T=GqiKK߻(`eAajz,9[NB?Rzwud Û^ dTev–uqrQ1}߳5aߟ16o飋+O[8.xNʿ˅iQsMz \(p5R~ qIЖӗBYo) [/߹gu 9J zfSHoӊd7F]DC8HhjJ-:9 . ":oI1SPq_m]ʫkYC"g ]oMOvA[*ռ`uC"y4IJ,>L9xe [Q/!y>XqN=uB(Vd%^Ne#B"SZ6kh4*qS{!uk7Q+}6A}{WM7öXM9#k_\`2 b{)<3T]Ma/gaU%iQ4GřNh8x?pO_Feu$v[ͥߵ< ~z(5ᑈSR³u!"yUǠimBT G@Oj3s#I(e鞀AJO09O]leNWI)EVC7Bp¥6o1L}*[I0 ~ZfaE\"Kd& eS5X9*N$kô!$qTP:A@WhNNCa '%f}S] ɬ8_JT"}\Wݥx-"$s~*#`׵]Lal=15!Towcb&$"^,oP{%_tI aȍLHmPְ>pz\FLHF<".f՗;OZ:I "FTyD<ޜG$3K0WΙ.W 4 [-DY`x[eAp]y96PZL´.pdl-"iʸd52 xCvEWMt`.e-&$ ܨ7SPZa(ew4z$ @6wM'4 [E^Gʙ3ȵÒ8VE>LcV1̃lxl;+O]@;? 65>ex-[JrXpa񹾽V$n',#5s}Lٻ +%{ZaL87rhzly2,VϞL"oLC@2ǶO]XpuO:uWR>>T=:xtiWF9z>tW٘Qdvd@GHD|.!;dxF"8![Tʊ uxʺ@'ARuKsV~dxFW-_l$+YGJBμ>z8wkҹ$?\%SZ&ޱqvX]nK{DƙV {ui;t0smF˗hgc}ea8HsO1Mc_x1v &G.G8D7lxgGB,ë޴iM^%mb>0/,,@|]ڠ*ӹ\S݁L(rFu^3<>gGgK+|y9ε)-e8,]{`o˙~y hBGl,Op&ne&SڗYgl:ހcij#Ԯ֛`r|}$XIdiQ.``OZ rNb$Xz靈YP m_ 4~j?G8ګGr;U3_M2^"yLMp.}B8K/Ÿ eVE%3fJ #AUQ, >\qKp裊&C1 4@6DXAmv:|ڻ9' Ư'w<VD9pGQ{Èl`CXq>0/Ԅ BTD_WWA~=4:‰|Ps:ȸRh7fx3IPuJP`!u4p3a 93v$ x㧂#<C0X/ճ;X|w !vCTJ@*FUf 4ƴk,|Oc v\`'TIz_0K8[AdO*AO n3a2Wϻˎ6zZwǸƒy q2 z#ABȵSlKe騀x`BNO!9:nbHD#[:;%yh̥ Ds*D{u\)1omW@J@8v~?IX@'#:DvsCwpGrm^_e,^y_؆LLg\K:VЀDJ q-leykxi1A%}\<%F\QP Wˇ0cñ&#rETvAJ O­mc* )k6;D@8w:XȾK݈Ƥ4Qi> A4>E~hs20 D#7eCB}vtʖJc&ՋкҩO:-zhp‘X~"u+ahcK(hgZ|{*|*:}]}qH;-ӱJid]'(5=dwO̵y=O9@i!hBmK%p3#~%0huLuZnzmo@u  j}q1z[:j}ʠDjGYK>A;stϰ"VCRW_Vs-,~6|D(LmC2Lft̠E|6{~O'N͂Jğ=ukh/a'BtH{gjÎ8B_֊ iH:*|`% ,ccݸA6G` 7xAȜ6 c74ajQj=ss_cpi?h²g1.0a$Y&elO?Ƅ.Fl6AzF RH/.I4>{VpKi84 ` YrZGd>tsּ@Yi}o8+h?e>NRdg,-6F􆔊@KEPL_V~v㙮˲2ofK<6$])>Xq&Sܗht8HEbFYU7K-V\=-kjB{Vd9JpXOnX;JyӀGmY{od3v̶}eTJZى6z L7Q@%kB٦lV˵jN'pB~At"thAk/qB;N &M& s:nmaTAjp5e`}T^Kh5I&`Tݚ98pt oht-g.(XD3kEwS;B xM.@>΋X=n$TjHT GѡFҍvGTJZ1#LӅ )GfN+ǃ_>0 W^W3u7.Q=^li:]2Lځ5KXHvFxn=T8I"4s-ɏcEӜ.'$ 3:+=pOaV)˂@+]E>p6R=c1P817'_oGLSLx[N06*ɲbro|l7,ڙ oF ?dYm~_t~g 9@eLMu72IN=2\&hJ#8wҼZ25KJzQD~9뵟S'Y|8_?;[u:ZLJH*e\f*%<%pL#C\+xC$\l1ERWwQw4q8bJeOSJ#1Î#}#ϴ3RlZ!_ǻ֩[G>"P+sz~Y`]hwk>k;;n]֏/SW5NX Ap; CtKg{7DgyZ*7xB9|+[]'ާn^\q\|x&veV ,`ڒDX% qD"3ܤU;׾g?ȨYIMI歳L@S_>T ?*ߢ,]Mt; #@>(7nmR#Շ.:HAAEANL /q& &LyDm[W5m7{i> Uql11s_ kV[1,4o߮whIsQ]ZTڋdO %ku4/˰N#̦ a% I4Q^SfVJȇBB2.3 {|1kL| F;7-T.&гnȶ1g_ < v/ЩئiipcG1zs@0X,=c Ay],uN1b aAr"&g~CK260*A]j0&x8G<ǎ_-bp?XA aXPy sBh4"(/n=& >M\Ƈ1Ie/dvLdLR59FZm-&~éKIJǥG7%$ѤB##P]:462`鑹x1zeB5'Oa=4- dO@'rpHt hλ1]c#;;20As4p̢N߶-q|0pمfaI58Knz)k;s|'4 my8zyYf! |T~%[אXm""=..`IFYc`dO#1gXhI@Iq:eʛ[2[ $ SAi| _ZT S$h//#.A&ڮ?;y[Qقw\/%"[IgZok.+yVo'-:3)Sv譪΂2+)o740U"%kGw]6}ȹ`(R@ܷpŚfIZrUHuyIa#`.bwmt\JBr`?qωK!)B3c-jAI|a➽AgZvăS![?=Eve/v׬IprAxJTK݈1X_M `D2ԍ|ߵYB:+QE}ΓLvk,6J\t&JTqDrZk/|Ydr>EH*k7C8i+֘c$S;Ԓ}@$b"1"tԄñۃLɋfȳ`X7\ڳF(}_3#DE4IÉaOTNPlӞv uԝ%.cޯ'RaOK11J#d=i#׻p=w0ވ=t5w6NFF1~Q I'GCy 8};Zox8q8krcͥ%6~cBJm wG&%|owh|I& N⦼)XHT.s?~=:teDxNiب Rwc,3ԓ|>Iܖس5$=DBpܻMPI\aj5/ y#lY Ms 7<.tSn[KƣR[BvqȂf6yjNqHMi2%MF~|'Q 87wk&?̪agKѼTH$ƜŁk ܊t{#YiKofIH\I zB"r6ð6C!JkGNd h ZiZzC]- s@>z0گ$dsî׈9Ӻ,6>ڰ`**aIrGʫc l,ↇq-UB[-CE d ͗{ !TSd%iۄo#CŒڎw,?uBUt<Pp`m;£΂gze5im8kyT *1P}/vi+AQ ΧkC7j,M{P(:<7K0/UsDb{Gx}✝_ 1ޓШ)P$Z ZxZz 2bz*Vx/}zfd _w^!O§ro}4?2!E hG (D/z;t;f xf-tPL{C@q?EXxAG㟏Z$d| B]ze)Z~ͦ'reOd;zw^VMM-ϐ_xoN EGV٢GFvR0°WV]!%"gv6!Bd4.2j[Z`\wз*s]=aʓŒNGM*O:%]ܨ#P9[0ū+V84AGA"`>m-z D1tYӀ;D$THx7t=kӿ)=#F(*Uc0Sr1E$ބЌ F-#{ \٤g0*#v:u!j~0BtXIzH|hmgTYo&W#RK5]k(ihR <>p(h';ߑTa!6[0Ubd?V$(vqVn&ꥤ([>T!" *w4vi}4Z ˊژiqiCf4aCMqe7QG4zV" K+eca;&qθoup m< ZHа6ަ_x$gY޹#^Ό`RIax[, LX}V'%q.ֈIX(q{7''=9%1B2͡w nꟊ긥E@ a((/|l湣'=8h%wzwc>͍]QLn(CQm)MCe bwR!성8?;$1?S0LU&\}kbs>@cVo%A<|Fm'߱ʮ2w:3y`0P/fĞV\΀Gp+ b֖ -k*Fu󍺤-(1G/ bS\BPzrb_aH3 - (0J DEZqvjrДW+( CrC$y| FGOI)AZf $I8~ O ]OVf F#Q5K@V'^/V) K'JL>PLZ/KyEIO0m.~A̵ Flo,ٳ ^) ׀$nU9;QP(1-XMpjt78Ș)ה$Xs\L䝪 $Rx>QPD(:nTÆ 1qDEgJ 1-RlfOk|n<eן-.d'c6WAze)ɸUZ%~X튄jzez.c&Fu=A~ȷ`KaZ{4޺$P M2JI\R^@?;U͡Mh6APM6ӖjNG`:<Ɣ-$vYIg,q g]Հ6DZ_|ki!^}E1rwB[Ęq\@9F0 bqTz(kc/.ZY4x}ǣ{ +6;yj TkM.i LPRy)1-+Tb `Pa8,BSihꒆԺfǘAZ$Bj3jkփ9\?ȏ. ާ_pwF F@5GH8uhAIoDtrnߪvR} yMpw\QlsM5i& dft}0yDQ֞c: Y6J w,<_/X;2RE#T A$=<@P?8wl'av0^ LL4 |iExq UlK#glg~YD3+#FsapC/jHx+?ccJ<<2/"˿M=􇌌zU#{Y4-D%US<+ϕ&~63`>}FZ3gLquIX:rA/PoL p Φo>wS1 ["4Xo}(zH=},A27.KQNouY}}=?8%we$jjIRuK g-d_67b1Ӹ;T+Ct?iXDϲLڣ!pCLˠKHYو"YSRMHsn8=D<\:*!"Dx E5ٰ V)!_'WgnͣJM XFqZ|Kw㄰X|٦ڍ XGiZ#EX|2O b& *~ .G@~)[WmE[-{=cfJSM1&?>0]P<-]V{g{qHCTx~L \jI=zYkE0qH 0FĖ WiK"2\: ݹ~s#90\:e$e`>u"#!j1ADZs(g$؅cDOtx_NOM$)m RrW[P?b?F|ʄ b7C9T/̦<|PWKP&ȓK!߼6?L`|Sk*T:QBòR/Lj|j!Ɲ{-5B#N膎A)Ps|~x1){g8Ӵ7]4\@}B{S okPf?= K]Ceێs?}h9gS?vl{2ztaX, Yb'@X~5';]=r,a ab|ޞaە[Z?4 M܋nsm&B3v“b|XxYLdos7* a;&˫vIۖoɕD94Dsiz^MheO$Uͺg9H?Nvc<,"%€\BĈir~$?N@=Ӯ3dNby)<-?֛54痵~?kPU5 N<&Ya#\^jRՌh%ƊQ,i] $2W/@O%.c@䝇ڈm FP!{M/ocb`W8T o\j=)j:ɗ) ۂ&D>ڽqT/0 fӗXl\ J Dg 6d24 S'i|JR~0?Fֱݚ<6j4Ǔ5ydI?H7Aڸ|<pS14o^/Rt bp iyitϬqXj h?%gZJ2dϔ1;)g\ Z+ׂ&0,;{+ {@NS^owahdX4ĿƤ9 ?;.Ǻ)Q}Fai`p6pܴ\)ϳqN?E=n zX& W#~oQlKt>E`wv`6f?@%q9O#?mL(08ľ͡oyNc`4g6sh`CADXZnOT,oM- @zLJQ|"3DŽx@oP#h9,jY\7uPmя3m-Gmx-;DE{͈8!%Rns.l抪e '*8*R:z?nƙGrK{ͽB-2HV+$#Y.[ D*C& 6B[U'G+ڥ_aZVioEd~pŞ4LְYD7,`Yو2$;t$2gBP癣C$#N)V4q[Ohklϡ~Cz\wMTKg8Q8+%퉀(GfEd\k/#$;$Gܵe+rBNup6`(L&IVOD^p18U .q9ϢC;rl}-k$6$uz?졶-ęzfbLj'ȴ42fċ [KĝgO鿋 TSlhRLS,U "Yp9hk-Mj恋(M+ٚsW epTЄ2nII=cPhEyC·_Q&N9 WdxW>urb ޤ%!ߛ[_Ya%eZĢ੯_3Y<3<6WR}w 5@h{Ji.vvPS* ZM]G>"_:tu^UOQ4eYE?<_nZl =}(RndrϋX A_T¯eLkZ8ź S*y* F`k@\-֍@/3Oz9I>QrbskA;Yɱ*4<_7 _C^Lq850;En,3y84 |"L]V;4*I[@;|U#0}Ic-+ O?W'=51ޝilQ54SA6؊𼹹E<`~}U/A?$422VYoY|a˨nzn$"'d?I]cfǾU%nߥbh }gp~f_tET񗟛t2rkv#= Wyх4~/]ҝ{M|<<%CQ htIf!I),$z{-  y$ZߕȒ몼*|thY-},2U_$,p{yl)RXHkA2Shgw6*OڨLP\j S4k|peBe*h$.q[̳ڂFPi 'l{ηd 6(]@M?וũ5~g*uC.z|KzJWsĨ3^NHQn,1_(a%Tÿjike)褻FGO ]yY#>PEr0"eN|E}wrݚ|GDn37UU,UY`H CX ҈e wX0 '^9-ԭ/k.ωN%6S=ms?jIX6 .^+)Bt0mVMSf7mH'PH퇀!&PmOR++B|0pMҾ:RҀ7X";_4MgdN,}kpߥ)r'xB$cr'wMwI/#D8.X4 &DJMb l{k6W`iIe-CG2B9W7C**VL]7ߞ T=4<.r_dZaV>[dW?=Q! LDq&bck5D9']~GU7o ?- ^2 ;\f'Y@W  5UE9`ʲ MpRI S9ʄWyWf+t>w9o_8~k+@g?mzJS|\W'P,~ec0%'N5:b,$/NG`*Uۘv4]B}EvҴ/_^yY hAvk9c\ٿ fs!hT8 $5g=VBuRV"' 8KI'$"]U"lRmc=+Fl?)Wa5( ȴGBG ?.C10k8Țp4m7qjry5(P{0{IU]Qa-#gwLv{xu:OŚMAd7[NW$u+x)`9~~ 2Wy"'BMD9;K>7cTE.}75J/ [<`iQro(-Tb(g}ou|&2 MҸ|#DV8 d0ȭm&85@YW i;B/Owǡ3Q WptK.VyW@܂Br\^R)8-@{h!TrWOWO'Д#pf1Ғ{!m' +\Vu ğ =D΂ks31f ?" V8w)};IBn3gVqMK:r n E J-@9z@{d'$:!SCDn$(4K0HY F 7=pbs`U>Ȳ -9T''F%VPEK@pԀsR1sleqH<(){NSef9*zWT {-8v<4+O揯w8kƒPB!3ݧix.G ):6M._GYj:i.7>T\-O$ 8IbV*@!VUzЪ߽Jk`htf"5+V 4Q>1y$~G++/ ǚa**n9],Js ~ߣ6ȃ{%oωwyr*$+C!SZ&Hq?"'>ͅ.Vfy:i ,Fq>@w:9,6\B`%}c9şFe Lb4B/0F#xAop-C2͑bąl^ .@| ߓUu6+czj Dik݃EY)E<צ{8)XF L$-];$%]p=P\<ӧ<ϱ6M>qO6TSY#xyNpjq> &FPXHc[foA!Ha Y& e5# I0XghKRr Lݟި~()<x}|*i6q"B2e/9M7T -dip&U8, ̳9U}tqڵבTm= a SyJq/xum'!xwBzhl= G|{;@ɡiTd#al0mZ$0~xaG>:NևH}r i0UmG4)Mwo`HHS. / ˔Hfwi! ҽIbi6,&9HhU|,FWː!5"2lk nElWMZ9^|UCFJ9p`ZƴQcN |;y棲 <{!`R=I}B}~ayrll%SgR@FJ슣NSP3}9o$$:J%>7Cɺj L)x19tĝbԀ7$eaD&@2$xDxCIR6|hI"U Ylf%NO EaɡL t =XbϓFZ&TYyG]>%1T$! A,;o)k@mXgcyՁ>PE%+ K<aW}~^:y"0E(>{tmwcx`y@ G!uIY4~$v祯 {V{iY_uDkSAĜkG"}#࿁0 %0* Tհ7mӆQ߹c+PrsL%^8CTAG$[eb4B[̛] a5Sz98 4b/Я V"Bf]mW71^lWi TOM?ېacГgEֵVhk$)jI(eE^`z% 7J*Y/A;ʼnaDVLJ%?.iazAHR袥| M.0&csSai$uЎ"U"KjĶ{ r~B& 2zdULհ7m#ThzXujYuz+ B1aTGZHd=~8+Yf=-'hG:.& əWa,!(~j!13vMo }%2!mkۿ pV-rc# `nft{ `j9903%_8i ?Q%20r4iAB}\t9` اN 8H[c$K !3᩽klsM π ׄU[CiG;~7^,#<셼BdGxIʴd:G*FBĵ^p^{]fi~t5 H,fk9=yhXˑ'J3,+x0\}ϫ՘dnN͵Ri:$GTx،B\8T@; cN-gJxI9 $AsP\8p S.X_7",vRa|//ZFV#Do`slװGySwuLI̙XOè2r!UlliV`RZN 81V%ԻIFL>(助:T`2ì@`bo,m}u23;sXpfMw3t`@K֯&XE>wr:}V4Čnwyt]_֍惵K2@eFOA= 9z 3&^la-:ghX8.₏WAԊo[zsh^2W+HMS*N<ĝv0=-=\BI;=hl4`jrb8=TEݏMTon4KP̬PBiپl܃JU]9i|Yg9[hzS|auWr"&(o#%[VG=mbJ,yB֛A-1`aDZE s)]xi lN9QUgdFpj~܃ p %KRQ6W0ebwuT a;C xd+uQimaLFyJ2zr:$&:R{a}-KP.П+WL]îw b,8H/܆,JC\ieN*:Kϒwj͎6UFDӗMP9a!l[UŘ.NhN?ɣVaQ vwUݖ^ US:1km~,f_kjDIS ꫫjΥݘ>ZJ8&V)aB#M`rwI ug)3jo "x=.Bd{%_m_ ;-նy*F.4#>q,[X2N7D:GyG%3.*6JB9=1WE$!&,vCf >I-7ʬs]h[ڹ9 hnJR0֋:u{ N%#m>y4c"i45&[w3ՓX0^/ AG*5՝&Y6ӚF[!U~}[|#Gi,<%em2{i.&X㖃syPXaYFbA^@ɯ+?} 53|"p,Of2}w~i<*`R]O4vdMS2U3TF,GӶ[[#U-_B"<5pP)' F\CoFF9f˞Ku8qxfZ8դ6m2{O&a3%Ut?JKĻT|_!{CJoK d A,k_m]BJ؝VZX"h1V1;݀-K\ Hj9 f>AEAԘYK%FZQqO6";#.7Sy0b4 ſC2Y7r1T3ӧjlvu!NCK6DbSTn"Xzi9g_Zf2^RQ? urO3H4Jk ,cr]h]+]-ud^7SA" +w|kGOσQƂ w|3DW wVs{sa䦎1d*| `Z\kΒY!YQh}$IY*,Ȟ{?%T.:WxW8k#vq  ɐ8yrMJ%kHy-(jFUR i#yp4I~\0Uq!ǿ(GAn~=lnG`Fu6uU^zS-ٴmaLFKd5Z6Ӛ ?Vg{$أ1a&xuǤ/S}jqdyb\JC#[ElI2 qꊌ<|DگĨJT`^<>&%Lx1ܦVo2ڬhM:GaJb!D_I B;5Fy݅K#qQU̻~y L>SV|w\&3!Zr~n.y"t^C,9&Mk^I^ 3bή;fEjx %?uCOgi*\<㠗l$kC=n芰T7Y :+XN7qX>"=;GQ޸qܖzf]zzB؅V$̓P .@}Qʡyדfk7kkJM$l-,Yy߿y~gV/j;LD Oc^:1_E=]6{G8:ǑYs4 OV3:ɍ6Î4-'>v64A,oQA*(@J{;e[6Q4I[!Y:Oafuvvzy6}X-RСgo̗8]xtRҿyY$SY8 rsJx Q(oˆ\:胓 zLQjȬ+m ʸLu[_Pi[Uʇ(2b躘5bQ鵫EEFtsFsRB/`qi#-R P `yv|}l^jYS$ `R[T0mmک!͉!?WhSm/?]&7˻zf9* =G_Сbё,x|kE{SP-_L<@'M& hn28r|K\WPC `l1E>'$&[f@ I9dŐ}i~s|VaMܴ:41W2r >g´V:=%뛒qp|B)t\bӐ6PA )auX@PkD2JrqZ (ʛȝ,ש^$HEiǭF."_Xb wK'J2y.3>.ŷ]7A^hcg H%:۬`2!0Uzh^p6.2.uiiDdQsV6R4$gMjYodүVIGrs|t')jm@E<:~M$Ƃ߸xMc@:D!O(2ozXAa p +B)nP1MTo6p&M98óFd#QȥjuXub`XV!GGhF>M?Pʹ^!4rf=W _)GUk& "قS}2 9a]~F T3)'1c)J;D>scTv3P+_<5a(D$m=5,-9 eʞTSD]OAe$>a_އj+Wj5a4:Ez>].>@?Ln Byɖ9ߜ6ٯPh.lS5+nPEwg q |hZ߭07juuƽ·=YܬW<8DD3%JzZbXeyr%Ά:sT=2¦׊BI/OGQwb'>h8;')DxԒoU~8-Oχ]}H8B\(3BJuGs#ftt*a .D(y_$7=0I #df$hO*7-7MAok}׎%`k{ 2ğm#dz\L -~x EQ2+֌2BF+ & u֓Ɖi?)DH(%1"M|V,&^zh:o'{j3+<>A5՜=*4+B;;_]?i;w3+&i0w o͗3I#u53nәn[:|iChFr#Z_z Jg Pܜxb6uޝCZ`_8rNu5od7jaΰ:^#\C=9\5|ħd5(Y?icZ@7], ;y8݃'Z<=Yn7b eƱ퀭2Y|X # rPx>ͬٶ_KG<'<5zx@hFq+ڶV*yAh.#E:pl,xeבqC;$S@>/7b[J~B341QjPT; ŖyVٍÏ72Rh2E'LAsWA4@~@sbbsswVw )>FHvZ,4 U/yPx1?B P^b!wo@!HSQOS\b}{@Sf,ŽdYtϴ[Ȃ PZ#˚4/o/i _љ~h\!$T"y BXEGq Ex7BwnL u,ѝFy5|zZyy! + "s Xo*No-gT.eFEa[}ZL*~=dsZPn7M%f4o[Fq3F8s Ri~PUOVi 2>6$r WUFPKY"UI1UeH1U1{;1!Z:XtJ;[/{#Zu8 9N40q7u`nyQz`RNqV½7K\TuC:Z,/b.j|i vkh0_u r,3s90z|=pKr85rK_X@)uHLj?_$'A\€l@ p#]5M0 ggAmk-'ݽdUY„JhiHq=Kx4P`TxY 5/h=B<׼:P Q5NA8X΅J ݭV%$P3Yd! 33HUA3jA/ f\cANj^xH&8@_}]N!Ɠwq֟߻`㑂향\/*sۦiRAS'*YZQ{>))y}f(t p!MQ/HAKsCp*VbPT_(eeuov=jq+ 7/栵ePy^1n)92).zEkߏGi/1 *|Ȟ䦭pNv'g(B[t8eDjp-NNzfӅ?fz}8*!S@b_gz}F=u%M83=w! kM.2/t-95 9WBXY:QH06>1(D ġ.¯`3V<8rLyg59CYBgKFM0&ƚg (--EӚkdݣB~KUkw%T~j9kdWPQ+ mU,ys0Az8G5Iy>[),<&K,esS󿐕Ʉz96Z+L H:-YgЃ!V,p6gKe O$݄>}AsThMYVM51yAp]ϷEM(L2\IZ קb$ &$FTl/K qD^] }MqE0ߣ=TXx Q|ldyψ'f.'SvG?"j&( KwПߎa4>UKh֛ؐ/c3Je-f`N> 8ק3ָ֦بY潁,z|xЇ8.K]|G`*Ɯg1x#FE~L[UDTlsm(g?Actd7GXf-V}gVd}帳bvxPf@i<~_SP+5.SP?D(Q U?9D:=N'SO$g)Ͷoj,/@>4>($7%ȝJtadHik} ӈYW|hϩ֑B{W6IuKw[C5uk~Fm{x`7~`T?n0n-|zPyH`}_k!b12v1UI=3G%сSkJ;?şeclaiaalӥ9KKވ{@ YA:kжe(#N(hz;Dħ+Ҥh!d$gܔ20>>U͏Dtehi+zzOKl1%FЧ ^^,185"2ۜtjG#4{>' e%M qfש<&J纂Vha/´irN\: x 4Llj8}cnI8k+1& UʊfԩK|r[aՃՇR_WY~_$uٟ+ĂjG$,X3~BA;@ e0NPrMQ$65wDGKGA/vyݳ͜1Է-~zL?3x}#Q|>Jpx^qL%]m!U=tu1}9 ^ R^3%"h$|ԏ~mG| hN<SrϞNe?3 "Z1p 2e5VMք ~Cwi^% j\+eM<eA/_6ٟN<gwTנhusEVn 86, uC|A޽ᵯ 1%1rj">s+z02n\Uc= }T{m3 1~Ydl 5$ZbT`M7"&~g\HwR+&0zoS~D{r $_GU֭j26f#wh7R~x5C {, oK^~j ذN͓)43q1wԺj'76qcҗrQm]951԰e( UjsoD'|\647543Z)ڦOo`x!i9F}٥L/ƥ r?D,QLbXHKchl\;4eF|ih ˜^\M Q%`9h68֫14-p*ڥ&Bk=4"r ]PQs2eb~qGSo6}D^7?1_c:ӛGPCa9z+1`zcV=rhPdx9֓ ayzoyLEf~C"hVq{^cDYw"7K~Lk&AdvRNǃdheYz?Zf' odsdtо` HA=/`u[2{jۏ̡RӺUeR/s *A.圞V6yOysH]౳PK 99f \CRfd{sB0v-jFOc@nPj K2bL~| f}4{&I^Y {n|ZRLAV8HRukHDs,r63{y`g6/xS )'gy`\i L?NBMNA74Y oDa`b9]^IJH NQ#jڎ? u ҠdLσ# 4%̩P)%ۥ`붅k<}`ICD$ kNF$ n$<mZI2I"U}\ $U aV]M=R e iY\ mrArXu*JBF5PUHjS9g*HDglpzI@8T`SPƌ>UhRn e;K0TsM)]i̟IUR: ۜV0WNkN ziV%x{kdF8!#׻rYBX[(ޞ{n.vm8*w4z -}WJv{8r8)mu:'Knuph=)&F0{ad^G6X ,FY;OAK+P6"+|c&oj3"yGڞ3;.OD TYݬ2Xs)]dOG̟ik|D5=}~|FN>ټh^-9YRlg/-]qQGQ9(fy6y-~iS.ⓙlٻWm㭒(+I8JL!;HbJ n"VQxV6RK:fQ-FLkiBYRzߒU[W@ƶ/Sf|(SvEG"q`=v}!Pt>adxJ'Nj |aɉ؀9`Gw ~Wzhӆk0apN98?_.[ωIwjHaPK'pCS]F(Q (0{9^>ckV1ux$Ct}Qco/PI3c I>ߛ{Rܥ+w[W}i/o=Rg<N%@Ճ< jmܐ'j3{6\hNOE`K㊸P,VQ%JSOц[sD| axhH햿W.k6&KΖ#OgKsGi cS4n+ 1VgՑҾ A{ 5=<:{=#N'b6fQDZqbexYaἓ1ػXT\'3Mc۵$A{W GWwP?ov0\b0qv>L'Fgjgv>rV3/3'ֱ>+FV^ys1/Srrt7qv>w?yp[sjڦ+O9aOIr qnqxc~THH! ʡ]dK;X^-]9/ 9UV*OV énc4yjDūAiҥӗŭ"c9ɾIc#N{[F!LoeIHÌYAʔП8jøp&v{罕>TzAkxT]%Ԋ-JKmwPp-8@frCf[;ʎkvpF+<@r[-@("!M.uBHCzj0c;ufnjUae-giGC|[ӃZ0COwI(>D)A4;-} }\&9%vq;Y"OD:%[}Gk7ѕPqٔSm%z zCJ^F] -g\ucyߤ/5E&EY%E ,oRd*3C@;o9Ћ4 :8լ.KNӹTzT6{P&П "!$0dsd&sK'XˏWb3XO[.G<$BoOd6xTh {'(;ѣ*Ό,pg^YVmR u,V[D`'wiEKVImY Sv<3~11GV ̠ȑ"~;7u\  `9ɬ}ݜQ?Z[7 __ʙJH| O Oĭu)h\ ;y lTz̲q"x>d̳/?I&T^dfH8r}'Tnm{T7t3>:U-Yyl- /in]Eqmi_SrI -_k T[;WM\e>hÄ_M<Vr7,,;w"}Iý%;paak˸c_=!Ȫd\f!afΠ}h%}hRZ`IH&]w@MZ=-߬\yntHJVչ_/l>%u=NqWC'&Xr#%8Ey-.ӈM/O U_Utdzo+F4 *e1uEɠ#E/pRYUw/k4;>.?'ljx3۷s-g_};I;`K ."LN6cK&nhz_" H8%4l9a9 v DCrFH晡>6xba̅6*f;}bezLWϜ~63 !bɫ2OpCxS&ӿ Y*3; 2}ՂqAd5A ۰hf,|D&ORu4E*[zZ^| l㠒2dY<{.ـjV;mW *uA22seCʚU An\2JVOw:;D"5Mt=؋4iaLl!bxagJ'OXm+l D5Yfh@ ۓL5={ۆ[k˒-Iu>55FCC3_"4#7g{[HKh])o _Hyblp{ }||.$W !_wFCϷR?pۦk*έSp;zl8ECw!+])o۷ Ӡ.tx]KEwsןyr_os!84O -œ*^k ŕ3xWwMw.F$9nP&lQ+ D!ߺmW>, 0lGgFh(+(~|BZIګ1PDGiEtd94J Ny8ϐ)'4`3f[^c4 0*m]EbN'nR ގ¾-k{'&"Ndb"%~AVP鈖^ig\=\^#" z|w1UOj'i&%aLaiސ܇'A".hqY8X3QVB&!ly .g+kr֋ryt \zC!xddrK̥j wb4dTSLy}@U(>Rp8 + CdgIa KW5bɝUd|7/)- k=Ե!)+kBJ+O"W..9EO|i;k=D86my3ag\JߞJYq@s[h Yf'pyW6$a93\ZZmm4I*]e -I@6o_<ض93E3*[iFт>JSFZǷSބ85=\6)]6"S*rh[ B$jt91W&5(HUw=G]OXx}wen~wQ JkͭGp0(u5݋_ĺzVd(`֎3 ^i>Vw(q&} b?ԥ0t^ CpdM|N e&^xan{f}R F|+ΔuuZpO-G1$XN;oBolt0U^uR;:YBU s M~M>a} $=CJ| ,x uߘw`>@5o[ k :U @ptksEOUNC {}[Y$ 0[&xU2xeBB> ik&?t ^ڥ< ޯy{6kç;(}'ڜ,pJɞ^3$ql}oL'` #jdP`f߈RO# 2ySw2< 6UWÛNBonoɣX# eBZngKyund4^]b;q нUM '~n, =<9'FӀNxƷc%Z&QwJE4o$HY*曆&l.2Qr1Y28~b[F8keN͛qvQxEfPk5P淀HſeƔrĒ˒9߅PCڵiTr7Sh٠$dZ;ĉIN[/z7\.<2Ws+^5!nsÆ>|p~)!OatT&]ϝrƻفEL~fsݮ}|eq&q3` j 96D61"R-̊#)U~Hrpo]*.I&;Qpl޾$?7g-fEg3tmܑ~L$'edyBXt`\K坆 ')C~s Wd,aI߰fv]+@p oK4?E/x5mo =]'h.L otN1}ȀNcPT%k`% zD3X֡N^l*p9CMH!hM#B.3 'il+rj97V*]k23,SBĢ0kZ)؉ H31~ӭ}4Ʈd1 PI!, g",t™zٖNifū]*DT5VD| 1c/f-&pI#3Odͮ&̖?nٸ+3Z3w|zJ:sl N`I[di=eBLWӨChut>X {J4+wPuprJ= ЩtOpAmt ;E39f19%?ҫDIK^ .Lٗ7aĦsgUzZI 3|NGyoFM%ut`[KcCl9.$A]5,,Af;|3KB{~*&AFw4{ Vnt'f~9J :i;(ʯ :ntKw{16\0Hu%t4޳#*EL|D[!fI l`ćAٙRVȿȩ'- 8KKɘ-m|im޼VF[\svmo&?]IVwJצ5 3oBvB["XA SC qqPou,q嶢;Yc>FWP=]oH $@b:(iӈ_4*.[:6?5ڬQp~Dŝ'x/: ϨW&Z4:Ÿ׷28{hW&5w&%Hb[R \H0됳q5jn` ݷ.V)šwbl" J5 4yhHxGMzW8c(|鸵ҙQ/#X({3cGm#ge5 0Uԥfz'v܌<pgk,Txgqt J0dIpV2FpD&2!B~REoH^q좛jW2Vx9hɚ]ҎzQٰ쾬gVȿ_œW3WO-NujFJ;g\fJw5ֈ!Ztҁ }Q]褒L+&c!/C/:kKi@3v-IiSG.=c.:d]NŐZgbmAxxܴY<- OHPs&!RkV X_W $][/V,3n}lꌳu(]u]Mi5VȦnF^}jI IsQ,]Tj ~ٔGݡNO WrJ*2U7QJ`#`ȑ%A4A*VA_op5 t"|,[IgN] f5 *+#|W(ذ44䕥)˚J;S b PX+2̡ësz:P [rXгɴ]<y-B[;y?%@ a+MfZldc Z ``AbFa6u9;q.|Yl>V`kϰrMh*WsYr9vu#ǾH*"yٲ_+RcL9PÞwZu&!++mζ݁>P,8XU*O"jӳ{R BW5-FeONX׵>"Dժe=#&_Ғ+v0$Wp`@2RzDg_!yx\)W*?w=bz8W!Aۍk0W\/\h1%x/tB7[1c04-]aP)2`C3܊u7ֿ:y hkF yX.K)) "yFvIёYKV O D>mb!Rq6b5Ҟ>\ڥQ7Y|봣Ϫ-;@u):lFtEkDa·6zBF+̋~ 8&ZP7efۨc&2gwHh'sɔ$QV$kmV}*>Vј鑓U1{6CESMm@y))^p5#u7PfߗV{ ooTkWa>iL\G&E&~olo aGgz p_qk =nʚY홥5p˧FMYWzx YMd=iXI~|x%#m@gfVJ{E؜Z[썲=n濢|͢SG\WVz dA#|aZ[E'5P!sE>Q!²oňRh6ŬBCԣ4CnJ79R΢3'T#(1j _Jk sC b")o~}`:X3Z"BbsOP9:XI>F(aⴀ p;hsY=<jc>%&c+XHD}ld|-}/sпeZ)Nq]x=" &M#x6A(t<ml F@ 45YX$DnCd2WO)[(ҿ"9w覒Ϣj_uc'iABA8tm` MP8"wrdܞ6~ W,0A=0c%qOs@4+,} j5lLأց^RRfN )C"fKOvd+=XZ%18l Ŷ*&L?;V߂|$/A-RIf.p nߠVՓbZHʹc^_w+ \vV)Y9G07y$#q1-Uc%̰P &5?v< %< .bs,8r?aj*SrJgg} ŕ{E7\>\A?vj ψ㱆.eYs;ÿh"<ۘ vhhxb"*tՅ,A\ g7ѷ[>D;e9V()P&Tg.jؤ%C eA4eѪC!^57/`KtuQHitf~Bu'X6# vq#ytƓGrЗVyH/w-i[5T앐L7WX8@N jf G)Ud\u+]gicBsH۶ ͓V >\z$Q6{ YzB2R-↵^I XEof^OcHN D2";8+j O ?Z+MBSjNQ7IC2G^CTEd 5U'jk}R0揻ǎ^-]LBչr@Q 2ѶS7JpԡӝIUV>$In%^b]M񂍅xT8]pN!fG%(b*2{W9EYkQG7V;i´^-4i⎝qpmgLo,Ɖg1If){_;B\ʼN7u?iTa>RR~yG<*{qqB9=@|HKxEbe:\ʪEdB)!YA_$JCfHb/ئR"y'5?f7N^YlX?=`Ƅz5C L{+(Zԧ*K zdE-/F%CA6.̾?N, _Ȳ:dhcF9(sN^ |lwKP+pA*.?06{9"!<i`N/1F6 !uCK P/敯*ֵ2hc@M+o p9m0hN[#u|/Lz;sS"Y$|c]l}dt={V~Y!\sk"d觰#}Z4Py9qtw]Dx>y\7}Q=0<]6`+:$}민s!]twrp 𻞕:x+ހbIMv$[Omwh[m}gH&\y W+ XB|nJYĒ߻!L!zъy;'2GCxK HjsNl `g{T+`uJcAvkf&h&- +{'ctāBPs5xP\/}cJoUH8:/Qw]m-=C2"&XcnmDGi ;F1Y7l{"}è*U!o+2aD$*\ٰU@rM RuOxx$JH}=U:̷S짠ׅ\Y<`2ػ c 9{?vs)N)]Z_]JlP- ay1HѴfC_[4"MaeN _"ٚDv0M/|(q*RV܃i-A'XK~$ۀs\PNPC& DhU 8LA |ƩA?C,o$c܆VMUyNӑӿyz06?[uᅩ0hhc=o`>;5y+-3IxС` m0e^ x1Ǭ^ؑiџQlAι\pa٨X jG_<'Fc`-;hTV@8G+[," VhgڈZ]ZdDʓ@~w]8 }U N󴾎ewT7[%@<}o:X=9٨}PB` @UO?G|~_E9LE'ik+DgigtmhV]3h=Yfc?+d+{6aQf.c2Ҽ MXPlE%S1ڪ{*Iɧ&*,2R??G0@Mas+8R{ԪzÒ3\J?wcx$b+L+e?& qb5mBCvAP.8A΍ns 2-DOlg-2!m$WĦY8cI ĮrM\鬂p=0r^罢k`OR~m3H;^a27w1-uMSclhAAc{؅SA\\_J >"4TG8'6pH /% 3=0Z#DZTx&rU&fN=;F |< ݳQ(QC_8̀Dd2*4݂B@Nֆύ)nQF%#ɪ/Ԙb''- i' bPqQf#Li1 zѭfnhLI@)mxdՎg1Bh}W#9.#M!C8%8!deqAD=lؾ ꌲɸE7p\?e4f R˪uu2%bϞPNs't:P҇p sv'lZ#m]_/w8B_(Z#]E7y4WkU# ]t^W}:TXb3ቘYRMFߓs}b"=\EY:҈>B_HC{|ml#s7f010h70#ʊ1o&tA4L1кM~8:U1Ml+'b׏8}h #l|&ZN1~G!0#:Yׂwz3C&樤٣{zMk̪dPifoU-Ii-HiZ7M NLs-O()9,pOWK4*c9iG=^gLq(nՇrAވ LJ=4ɟ8:D]T C ƯSl-os Ѩ#lIsy6 iI1t @ζ;>zYH3AM$`؁ y$.:3+H Pi~8GĎ5]H';p CU{;G %'G l/C |֬1s5WVWn w省i5G/rt,{5OKmWjt@9aқbc8d MlC c C cEQ!'xXTy ]'z|wD 0BPOaCDKω:lO2h6wEZ誮T'ph#WB3 Y5NVÕbrh<˧Fe=Toe@-m ly}g/|>; #] =e lJWu`:<"g@J_Tz-7)x"I5 uą\ e o"s:ɉ qGgz?V,3KTyv]KdO U&,tu[ ̄R)"gezK;ߛ,j2Q@dv2މM|Z]^~2ӝ7`>? ơ]`P_#"D-t̓;@J*A)3]53@1c&_׷G WTu9|Yw1QnWևlg3 -iHvdw4W"Ֆ& W\kUԎ4s%& hJ]0Sr7aP#x61+H5srS^m^>RB{<,r+T~c<6T%}}ڷaSL[,0/W-h,vU_lvc^W2fTX&=MSE{On,n<{zϷ0j-@K:< "K[t{\JpI' VIvm@&̯f *n _ڽIS| CIu4'an{X5dNǎh:hvc34 Su|;qPj-}ŒdJ 6}@ڊ2̸J6KBOBxęж_IB#M 0R5A?*4: '1Wi_E$Ng^V3j&5fiJu:ʉ²_@T '=];ZVN1ErҸTu%*đ)&6%wiXrm֞K~idt#=$}4V-]Ll [N)jA\1&HT0e"t\+0l%fg遥Gn QׂܡNEYf˼Q#!*-/QpPd<6N˭㕨 '>dhas-G'2*B*ΙiHb yc|_ʽm9hнPCl4%MwMYn%{r|}M7#7A 8q}[,s?ZOxd^qAQ0]f U hŸ@u 8ZcCyJo`%b/-ˏguz\ b /ZTs$ C*7!ֱɟXY}Zi3^̒Xw+SCJ45BǪM.(m^m[CI|@P˴fְ !@dohvl+Sѣ/u 5<~?o= Svz\FX0OwSٌE~ 2Stmzs)];)J6E}ŵa<*̶s˵}ePU2\oXlN:AP/QjerM_1&ajzŞ`/OT&j0D@ v7Io$-pkMMzAS&"Ǘ@󾽰V!B*)CUܞqU;x&7: ˊx]0s)ȮeiTgȹlSVlWI\]?Fp\=׍Um~@y_ hwrn&],SFeb(|}+}lf[N{QLѕ,񃹆M}+MWb.6Bcsej|%Ń5zz\z0* k/⌉Leڧ|? ˴KӆFPU{+Iʴ\#>-wRa`uB"O ;msфwA[^&ǚ։>R>?v8Po<+ ODI 8p,56)r@W®&s_P\D9"D>a窩?cqU q[iѤ_ƗKqܤtUO塲\&6Z+iC)~k;v~WP6ZLfk6LBtqMJiW'FMNX԰E(C|ox5sP@ hQJL}Qna娞1@?yְQa_s<85^LL\^в9[gTޢY6+zMɯ475A{%'rmwf`IāiVPreƩTN.%{䶚ȊJ>&a#N1V[n’h$ۆժE_|Z`~5-^4zȾT27p<#.741 *v?)%IS:{ \Tvmpe:2eEoϮb_*Σ%5Gc*.2f(ɥp~?xl]}~5\lFРG ^c!h#c:HҽF#&z_2Aj,C`Zv}?̪p%Y_rD$h=y^g*pkƷ! "Jde;X]:5U)V̷ɬ1s}x/" J Fpm7gKN~%!Qz-uw.Ekȸd`i pܮzW+雈\r4b0fVOd\LqAM7jF[ދՌR+Ż&6#}1[iž*&1wZ ScC @; EA"7ԋ6V֐Ae?FA~\YreO+by9-.ED`JX0JNͱ[l{+D0w *oVqv ~5pL\{[\ 9k'Wqׂ:k?ͫؖH*U.ýn!mB*\>*J=)d^\.s2>g`tUe' *),ʰɺn'#xlϥXv陕mHsfcZ.c"C"%-OBz2FrjA&䉗0~`M@IoDhPEnWP`JNB"Z`i {a4fs 3l:I&m@'ȵ%3l*bw#ZϸP*WGd솑|ZA{+ȶOsUnՉhv(M^\uIvW13FeC0*u -gd$Mc9(.(Hq5:lkY9f~jsՕI5FE#LE>޽u3Frت;̫l)ëinIQpd5ҡ2衺˹CsHX+X _M 'Vn{n*l^: of#yoEKSb-n^Ăs=id<\w=cfM6no_S|ØH,,RaHm l^7>1dt+fS^x*~* xY⃄"V53PmaGY+||򁺼:xD_zx{c7:PYӾÜ#EΒ5"*_ 惲TYQdn pIoؒ3zD٠7&$8*Q2Ḫ))5r?WOu 3:+F~ (vVY%7dS]1zYVxPbn/8i`kC$uHpֆ(?;<5uxʐ>|\ewnϤpoΏ˻JxRK$4;'DH ZՙUgVPmY&pKӟZYn%dӥ84bjL}5}>~Hw*C]5ٮp!2*xw-0lZcZЋ JNO>y敼\fa`^Yq(qr[)$d.I{`^ =}zɈ?|44L`J& {͟=m$W/KL63NcKrM54]KQtP~G}[~jP(H9 ,Jqtk9 "$oMWEW>*} c(b?~/u6O7;Miu}]4U(F䏙_1Ǎ_VHVz.<J$d6 lc2:}V5#ب~3" oOb#EhHҟCWsz ?vaOkƘ}xZ@xpߐf{38 PL+P>~(6fI{JHj֠3o4k)b$d0\=;o/ub!I2ٴ":yTL8P0\I1F4&R9A  } T)_VsEW*zALy_\AB&wB 1>ͫo=.rZCYBxR7JF+J{[+'*ǰi9F+_m/2g˾Zw/ YHcȲq0BzL@GBU1E%H2WiQ!:liZ6$ePl2zI\/p20-ӷDDe"TQxl 1>Fvz l.˙w?}Jчok8مmpG=^mD iB!Rwq=>R4v;@ e ~Pc2Nh/f/k[nR 95y]}$6oTvdPl)0tDk.xsmJ`h|~F9_ނU- |SS*0d-HV3.rU_\(dޗhk`5k``o99hsx5Udڠy{9׉_E ɧAm'{(IcԨk_XL-d^0,e:+6 ~LYKh̅k0՚MG0" Y@P@EuLS{"f˯Swqesd qwz&@D4mBr.ý%^WJ͐dt]+ߐP74 f8QLzDy2.x|ڭtXĖd7אT77WM)Vs5H@]Pmz?gn٫UM? O$'cyk4qa`ʷjr9̒p. é֭~]h :Aު<~fnjd4Qm&|-A٦F/*\j}B*gkY9/a.-@[ڊ"v*p =veo%$oy١x(|ZJ*Ì Fc*N{yJXrNz3ppg*%?+[by%nyfbff@ j1A 1Ǹ-\nQ,뉹[V |H=)^ṟ*2ʕCgD&Rpo}c1 9hX_F`CS6.jLkGHr׼rC['e-)zJd€,CqX@:h>ABQʅI}\dOYlAkp<㍢amy4 0N?o_-@-Z$7)/ݜ"|H :'tUތsYb9?cII\hr6[)z4fl*rwI)Ι-=F;dR=G9kfKe{X$f{K;ӰA0ܺDؠ} n\t]hv1h{=1̭ynemxG%ʀ[Xfse~d&}LJ-8z!^6O|hBr& uKt:i/b{QQNmO/Rb?;)3ZuCPoMƬO9oϴ^oi7lyS3 p\P*DM cwi)! >I!͖4vH#m>趫x[~jQ#jG G~Ϳ _|gQ]`p'&gMt1l|I2:΋)ZW}6Gﳢ!phI gw/f+aRBI!ILrݞFKsrAL"Z)rviŅ#yQI납iaj7EN>1Y瘷y&E M&?~ZPIv\|c>Nvw (HTAYcywd9WeTz `[@~-C [XDy"H:g]VMےqϐ_&hT|w2h#nK J؝~n⒡*;W1z  gJt=kF[ IhG=jJ*N'-'R^{rsv QO~rCK_X5^ʂJ[Ye"p01^E?X]R,nWwG)spcnLMS2D!7e^ R`8WseI !^lVרf;[z*[;(t!3gZH҅/R]oSA=C3]e!=3jQhR,=˭\168uuDJ6أU?.4hN|;ڄhOF9TLLO=t OrI}s0NHM-Os3z9pͨ@B{&kZ,o<뼗)#1*&&dImH|TAqLJP0`_o6 cXwHG;' DR/tdȕѨY`yw%U14P;r3(A+._zTr "h[>?!92:֠DݕRaӑ-Pa=s78i5vy?$,DT%G%@M֍@U1!#Ըa`Z(I^ -bl:4`=:ŨzC#-黺_#Vz8> Oͫ΄U4[IlLj<7b>pK,t-2ZXͪ$QFvf-{9Fѝ"9P0G{E+OS,*ЏN^S݈ٶT'=s*Z7K8ˍ%2c]HZ펾s n~){:(͆`C*Mް$VFcϝ y3{gy.XL޺zkI)%<{ |lbbpypP~sd;Dh>PIÔ/*RT4&C@'㙙hDLms;hWs a Υ)_ 柖#DJ>a+Fu G N &9O$@O wD3eݐ,D@ ]^\7ӮI"ntP E8i#'uA@ទ-V3C,C'{Az3DIA,⒋s& lȨO}*:qpc6ó:ا@]*1iwUs8dwA櫃~F/6r^$Y8ں/h3rjok#X'uV}^`d4Etܦ9("|+$mkIlJR-;ZN?/U),CL3ufU0vے-kRt3x+x(a]Zvij,@+L7W,dr𴱈3x ߔ+PMZ\h\%݌/+9p^/w§ `XC7~}`ws+('?) F!D%*LXԕ}R1ʞ="*]h`-O3{ru0P@rҮΩStN:f96Ҷa&kkIC21 xhlj~ n_-r!8E)ڭA6qKE"]!eIA\! crPvi7ŪXh4 1t(Lky#@?nz! SœNg3{"~|[2n_JXх G&8ျD %כNG ^ӵX{a/h 'vn~0MB .6>Db}vnPS5P.Gz],"P|LU'A5?{>Uν5bƶKWPrr{aHUcct8XB%i [e#1Zޛ2cR?hi;eԹZ6Ca]沬mӳ96:hqoqEgOY̓$V<_\-,9R܋:n,1uK6jD5X *zw{"m_Deif5CkfY$(-ŕ#(݃4?Q˗T-;lpBt87e@BCqkOvx),Ug$3.3(*uи)ޘ'n(}E|-|Bmn쿼jKTp3X}- jc[reޤ"އ G=7<>S#'ӑޝɾ荫95|`!e 1%u#L/Mo3[qizy eTy(tx(iqǤFQ+7qq(-DZOTI'kẋQ6[}dzk,{pELAxHhn^X֡sxBG ;P(q6<1$ E/)v@ϥYg~8{*YR[<2̸!)t_fN)[ZXs𔙉oAR/:qxm F([|'!m[ltT5}(ȋBcc.]&g0;hYwԄ8[o/SP *bvgL_vܗW.x0Bb6fuX#E*5//Y 2W,,땰݁0n*2K3(z¡plSX"_=\l?c|W 25:Jq^W紘!(@d_L%[cщx2I .DvMGtُޗk :`Xl2qΘn_1m|vM-<ҢAbW\Fd@թVzsV xOz@;T;?o~٣߰trEVbf6izP30 5^Mϥs=\?Ư\K 1d&cJ݅}{Wׄ!!&1^`l;͈̙܆m{F l 5D,yYn`NJ.5Q߻$BUyUm불Pw<5"ݝ4>1- ҉js=`9:kpFhZ AvsOLXCn@JU0P.7S.:Z@SPG2wr;,`U>sS liu#>3WőMtWcj9mu!oY|"RMwl5?68^M-[n)K> \dlUY8. ׿ *㝡QLּ!],>~Y%Wy7h~P4a@!Mݐ/WF#kgmqdn ~W ~>vw$8%V® mEtqZ#$/]'sӄЍe0{X#z+FS99bUyR[j$&H՞(1e QhQ4|/.)*z$}}KIm'GҸ uiН W]8X~e9MVH7ˆQ=oѭjj\zWye,0y;N@G]P`ߪD L=8f8X}y3%$qpAly⿂mhV@m8IPuf)%F' _!*=YHUECl*7=A )~$yBuvtu|ot:&0Q\u'`gk_Kc"o Ϸ3V3dČ>$pres1 >MI,m 2% ?Cv߽3sg˫sYم$4lCp_o0;N,{ *VMyw4xؕ힍r_9L&?km!RCOAv15d)lPj/n9v%2)Qbl;_@K g@}_e+;]raC, bc|!b4;9M[KӜ)n>q.UFyYU#x_r6xŗb 6= z?tR*G9=Pr}D[Ҧҫ3f vQ]#H82 m/~S|'1FH~7%p ^c߁4$6_XReʼS7U/pm?=*g>kTа[Gt-NM@{LbBK9@.4T,фåf5Y #q\ hwkkDA(#MkMsM?n7|mXja(H#q`(y,s7QtЬ`5c *)O;T3pFBa9 $*=BȤdE>L3"@އ"26ɻ]H#lc(@,+l.P^βx~/+qrRmx1.W]TG-Q~aLɕޒ:.x^ЍKs'm3/=]]MtxwmU}rs2O~)T4%JH낤J-18:-FZ*lSd6 b%dJrȓ#=1rqU;Iy5X0xZ!A#ө<ԇzfۏLPN1%0 F^1Ei50tg9۩~8(SQ#+B_DD_r:[RC2|VTU sN{瑱^8,{%eIבuX<*o ANqQ80 vF'g>ԫKi]L˗7YU?]/y!xZT)!N DP7dVTiDyDUpA~-8\EBz_Էaz8lgGYfGw6 ' *2I\kޏ`&^qeH>MӈʔP*f %W;jT_wlQ8NW’4njDRN e!d0TYX)kS9 W7a&=&i)*J~yΈ$TC~SS-׹fjhyݾ_6d\b3tA>7_W]6%~&L^n@PE=yB4fF^R:_v3yxb^MAeY@* g:\XIZtrdcqۅDH}B,K3&V2ph8`/AX"*M.{u;%Xx0Yoo64bY|6%Df,-Ab_,4:g1Qz¥:Vt31y&wTwUq$kމ;1B9M "|{HUn~`3`tr `Xu^-c Lܴ7 ;>ŒB -ԏq9 %%#n6t|YdwB(@P̉϶fdLޔ.g> mb.,_mqzVҀShwF[i ųu`?U9:#GƬb͛Qԇ.%;9~Gw<$y*Kvw=CLh6"|!2(`"_TGC7-Mܗdo6;i krw]L3_ wBxycVe7HՀTJH+MJK#uqH Mn'JUkKᛂ&NR"] ;Ky`_ 6a|TB$зn}gL\3IU!'cwK9OɟPpG=W=pFbll1qboB2ы~g @7ϻ]_c8MeQw)j 3ʯes{Yb-+_ۺz"ֆ+W˱ǣBGoAPY)X U*l!Tse\xA{8]+ln j(bqD>ey*Fb b9Ί^;&r"lX$oY${+-=ʖRf랠đSEk@&$wʰ95=f"F)ݍ)Y K+ g{](iOXe&)/s~j:@q`W=u(! S:LTs/X2~%l;>hZ]&d?HU^ p-;&#{`/ěCGhZ6[0T73pggz`i@9@z/At櫃swteʕUʫPl3+Żд:j/f^P{n8w\gTႋ,U5C9qo,*>ݍ{rv RzxT`: !,?n*r}m0ͳkgYte{3 =,H"#6B / xB^6Ĭϧ:zDd~0o [t-~{ #ڗ8 he2OFi롑:N;Ö&^$77+R9Şꑚmik*ǾC⠐wgta]yZ &`B/ _=ԎϖnF%"<wŎAhys-Ƀ#h~:1-Nwȵj` Q Y\ijXvgYxWFچ߷%sg^ҏ Yji9p4Q(V}&6Gw$Pw?xo8}BwM1ǣ'\wo3Md=Xtu*6K3,/\պ #zW3wȖQ YqkfRe3*f ri5?ܬfA57d5>dTכ7cvE@?9oau˱X"A pqJcJGa^oBѩ+lLgs͑qpg?HoigV5]v8=fTkQ{)N423n [;e;\LR7=DɠJZ 734UTWT )>%Ř/C tzpɃ<ۻͶCuʅ2v 5i+AqYg' h,eEC Bz Xe Il?b_Ux$g_XXZ읜EIp]V1,gA6C0 '&ks1n?'"痘F% T_A oM hv l-d~5*(^iʡ=q~(+,Z4ӷcVx;s?=2cZ Xćt [V \kJXB#@^֫$/ >rП%H 8ػ0"q;JP|d84R-/ ,ʸC0paCHD#:Ά)哪i3ҝT5x1{z"Ru2"X:ᴡFDB]SiҨZ7G`sKdiA[0. iq~ 7%N{9}oK~%"uI $t]^TzSNi=~+uR;J O#kN ӆo4K[(!#3r=:| vlj*o9c8&lkz/\ru_d|R9Q P>^ڣh6NBVɮ{͙!:X8).IYqڹi^Mţ DSYwl F[jTcv,xN4y㸔, ЌeM#(xnS[`ca%+yJC&Ɉr2^zBr T-e}J#h: ߈~%8O+n!yL37֏Y3H?WV1Q⬎xZDkž$oL0\8E (anb&3~zC5W&{Tu"^>pqaRv?ڎSidCF3ؕJ@ q^p:%xuHdbӂG\~ ]C81Ɣ6{P߶T 3q徢q{2le_d,>xsh_R7Y"lE`O^}#Gf l= x d#?-:xg {٦q/aO6pl3{Eu%0~1r-nR\ >b٘u?>Ix,|=Lbcԯ%*4ncJsSgTT{*޲C_b>UhhU;СV"41/i˺oL<+:sǖ; ,s/dD*xg(㏸LHV֊L?3r^d$96LJZ6tڗgckSܽh o2{}E>8KdCNC^DŽrcyyS*KU8$ѦG0K?X~ŹK|˦~MF> etjg dKBTd(k6e&Dx%6υ3ɜFO[r`ˎ*H J9FЎk"%5̲3o{ Բb{[bEG,LD7w_೒AT~:VqE&$9|)=.\-pac83~+zy$9 Kʥn@("54V`u K'&xUL6:2umhDn;%!XUʴ4d\6%`P&k?ֻr`/zwt#o2pvu~<޸M\Pb9ٕu3[^g9*eA^@WLs׶\ʫ "m[kh|.TMXqCɹ{jܹ4zwHS)nr٭ 4L(EUp1{沣I}Dm'F7悮͗씷6:GH߫N!N*#@Uˀ!0ꊝV֓V>DyE sm?/{aqRz~e`o ! V`H{9?׿-X5<\^U v2!FBqXXӅͥvMj ;\d.3VUC %5W)+'PBD{1ZX D1]V+,)]z";60~ё;Nz^\$Lr?̻"՗v:G%Bd2_/0iD5V< zNcgo4X}Oum]`iNJT 1CTAOOp\dTp6^.v-wNicEYMMs@ 9qužLvqV_2[3M68x qBf`B9Eg= #j gS->3r 4' U(\.L::| E0ZHW7j؎s; t~ߊ 1[!mdo6Ɉ-PWg~'ݣC-!v<垞;ʧ6B L8m]dQ;Ǘy0C(sv|sor/D&Ҥ+AzMSމLOC#;N=jLn'r C{A.Qݚe<+t--AFB+oy@y±~:!z@2sbfL7feIX]T7ǡ"8X9lIIS5pGOZDǬ(nD^܆]6`Os. 1JMܥ _}V{G`Qp_ͥʲ^8>?dǖZgڣL&W2]_BU, H0TObmfZHih2kQ/HiF$l1+f7!`NfߝlgGW!abDZ>#$ Ӑ(ǟ.77 Pumn/RJ|~Xvpy$LDnt&k0)vԖhCڦ-CEofkZy~aܧp @ G . :b2|3xQ({uB ohň?^ڃ/y)`S\YL_##& z szi;L)~?P 4*vzfd O0^$+&* IssNƇ3D{5$ 1UA˦q1]7hC,yBҔtv G4DRLY?8#^JE3,RƞQGT UOkiS@\Sgh;n`ϟ7جr{CݭOoGfY_ Qi "r'j\^X1 ī)#-бe-S|;6rJrc ,Q3SksI3@h+ΛяĐ9HZc%ь?I&'!X},7xL'iE@R#e?$/e S,C?Z8pԼq_DԘ{e?4G '}]&S/ߤm!', mTW6AbQRQi <ļJNjgtgi |ԲzAƐAbrLlS~3#\yvCFjI?dD&hn&d!jĮ@ڊ(`GxxuZZJSsx̉ 6P0p5\YHȓ 1 ڸX9)llڀ:P  o=ghK;\q4{luv7<B>, љ7p^(9*xPShoZZVcQ? hiO"Z&ֈ<5OwƢVEJ#7^Ӽ>pض'6'`:'Q0|.ٻ fhS|p;ݱHsNx\v<bdG\֦ qpaw տT[8—XXjVqɐYNgx5oG^cP;=/45Ó{_Zv0fa|i}.?iOcJF '*HyRi++@mAJϕBxIQ=EoNxƻ )&?t8Ҡ!>Bgllܗ Xg=8w`7t. *nq/ MNM'QpiŽE{U3V2)}yQ [Klاyw:ڲ hhO$ .da -;2C!Q#]YW, T q~_KY& Rvmi}), nH ޙtY"jً)s;.ޤ #tx[ "><; R\` 's|jʯ .V wD;C'c!/<kTUAvc hZ nUBzb'ETs/‡iq+!\B Vkgڟ\dtJicTV'.*_' ?_N5p7Bt%F;Wd7afEN[Z,j̤l:R8Wz1;ŖV[W)u+GGgptQ>$H-}l\E70=.pɪ-PWʨg;h]}KxnW ANMzmDhG(9i:0T{ #e]HBr*ἳ"Ho-QfZOtǕҴT T>8 q4mɥjvpwCUb$?:sz Yo*rI,N FΝ7pAiKnZܓd&8ZWƒ.:b$sUrJh=a$ P|fA{ vߞ,5r`c Db60W;zO !+8e5EN-rMg.tU$oSDPMA6h"k%xz /ҧa=}R (m>.ʊrje(=_;wHlw {OQ)Cq TID nXr2Sh/8ב*r;!mydp=[!oWng^Ė8ע v;}b{XK(ieP!a^$a?.(K|m3߇?yZd(Q:F㶻IӭN)CKY*R!p1Ay}Hi&l^ /xskXCH*/"!_'3i bbKp3qU'ӣ/ &ZؽRхaugm48r8a/pپ$\}$K%e8P}2i?rÌS5ō7d-3=Y·$Q@~pKǠ s(tyYzo9]~vaB8|eN3cma  pPR!q0; 1gbLp|IGΒr0ɡvK$jz]!/M^qm%s݊si>e[&XYFT1]T| 5HqV>Vi'T OG6KS.tYr~]PB G;-оZm6Yx? ƝFWeX[,N2qy.;+-G~5TLy."<MAM0ngf\]JGˣsԂۥ cwv-ZpYO$AiU=H?=|3v;i'2A8porBaP+ ҟ [ aa^*JXU~t`&r85e_Q {pK@U:#;tC|=v|dISؔI[%xeٻؒM%0K_! kG%|=ߏ#)"go?;Yً,.C2 %cy*n ["4[Zt# lH^e($b_4*D.,ϗ項xĆ :x[~FNAZv ʭ~ף`Cb.aWF.{Z|z(A'r7tX(ļ P׿τ!X!CP4mm$OdzP4J%MM4D7%c ux|o}cԪ5Fu^/Sק74jECuf2޵o*j|&j.دO9DX>_4P58 gҿz"dMUkVoB)g r`f}\ )(ǀKL#~ o h >B$_=#W諰 :Nrd#Vv. )ٷK[$Y>0j aRv4V{{ش ]tL(2AWT ~yc}i>b] e>S ʖ@) <^tt--xi8mH#3BPy[\w)G }d0h-~+,aHK4Xo|+޿2~%o-Ci٧'Z 1T:5G(37[.9yGhZ1%K!(yC V2H jM%D2 Ԅ}$&&DbkOx+dq v|bEolk('4J1)>m,d7?/[嗜e 2SSyg94+r9S#J{{S=8l?BGSAXVf )(]Bw )/&`B l/ !g-ƴ ~SԫO&g %1'mA PT`䐥m QuGu ttҭckn-^""):km8(@.څwNzU+^5L@ sts :XLąϘ)O{kQ!} Y s>Vyʣ62iôLG2U3"` ܵQOeUZ%5\+'j~fei7cC CqJ;? ,ʢ_90Wj^C7CX "iѻ0-NF@Qv6YbNJAlh3 jސ 87&4(wc󪁩]&C01BS;K ,rBa,Zb8 I~sBD&` ૦J^7a#,7|X "Z敺Q qpTPi"0 rL$es3Ⰴ-%TDZ=$$S2V?s.|2\m~'zqdMNX,!xR0PjLCnz(!m弾)k?f`irDI.]?h Wkc5d*G7DM"_v!!aȬ9D=btNэl}ZG}H~{&=Jt,)=QWYPDl,7 8ePvϘz")) _ 4NGNKoNk\4yuE~lxiReW!'w$FU7\M:`"}D *<2`<;=oҊHF2)T⒁MWLJZ_!LRE=Ƭɠ>‘w]ar+ de1r|I^"=łȒ蝡Y9Ia4Tf'Ն6<袂[qFbb^+2!\"?_v>~]a}~k'MHTHJ/Z5;}pcs1'N`ssRoIdE#ŏ@;A]a&jp;,Aazyy5>/O^Kp\m2vY|VXS1j|c`͉pFwࢯ].좾a 66d.· hg0d@g"vS$bycBĢ}*esS?gvVc׃'w͂lY[zjI c'0-$٫C!QLAԓ;BC^(xq޽z3 @h&˽cTT`|}|jv,VuD8,1@0D]PiTxӐF ݅zl9CyGAr-/D,)./3LۨEKouha'91x^ caڠL\8<Ļ*(\Zw~? ͿNR/{ғԕ/jGKK"ErDLs%]l~>>%8KdE8$;7o@ ES~N8]^"2FͫEa;~._szZ#8fL٭mon+82@ ˵/\⨑ RC(/%Y;ޑ9 oHO1VJW+L-OZbrZ"a=T\O0!iQd_g4Qv;͠^&It)!1k`|{PR#!->xH-̢Z\c0n. d g "%:[22Dp <û.͹" 4y'X"[zj;:>mQ*4xf- JﳋNmnjӎ?Pa p#Y 4L/5bv;,EWR C Aӹ*LFO&R9@7T;#Tf1DJ`|tu'bXG?WIAo1 D&{F?BhUL}`m!k#fj7xI+{nNP?*QZ&{bcTTob9 h;&fH͞RR#flPcy (̹kۧfAQ˭ذuGX> =Cۀv[*Ԩu.qSwO#!Jph8eI4`T:ڏUNx*ck(jux]nC%/Ui!l8k0MG"qgN~k3m1N\9hC~ph[e>QI&p|"?+Oem$ Q038d߫A ho+@*dYਥ^Tc ԡ 5`EI eW☇\5-k|\GٽGR3tivBHNZ RvHQ7^UFjvcI+L̂qm/t=OG]-g"'Cu]5m/"J:1-Ӫ t;ˍA-+AּD6qEn Y3eV{7y24RrE)ByR'(,{C9څuKzʓ2ϾOX֎pWV {< u/ŝs\aWSw!K)T)MT~-xX9l)-~XUmE9wc>ލBÆR%b#cJ;m2x'd3߀4ƃYן^.q)Zf{ ̱_VY";@?)H%K*ۤ *kg#RVGF_"WY;~޸d):CHE$|2!Z14rfn£k&٢ʑ ȆIО&?EĚ8^9̘% %.hd>, !;y!)8"_g2}dS:r5&%U0 H'v^ꂗfMWW'-J:jho7w\2uBO嘨:n& =3%upܲ\\LUg9 ]tecl2_Mȋ ۼb64~n6n1{97DfIP'/"gDa/z/==ջB,$!78f$ƺo`fin9Xw/ 6 SgV5AgNqHIM׸gNr L;tL_z %P0cWԀZsC'5L7_ ~'j}R|F ,'\&QɨA(CpӧZÓ`F\{wh$Q ѓ+'z_HҚ׿ ySl)GHw2 dt*6Gjdcly=J? ن^|W42wd]e]Z70p;OVRttd+qk( _~ ٰLP?32 *C&}}'qe;GpE n7F㸞_ϸ @I^wD R4թ]NCm~C]vc~CQ!4W"Y ,fzrz4]"QG?{=EVwKݡǽm%U)/|4.%腭RRK;sh$0lLOc}&N [t0HXet .-hϳPq~"{U[n/WBMaRE7jɻƜ"l(Żw s~ԼY#6"'P[&8lLU*Oj{g'^=ֺlsʂJ²͐j-z:ED.@-2ed#Ze]ƒ`OJsOLC{ASPF,Gوα<{`| ,7Gc' `!*v;D#ڠקN/SrG*k(_D"UX-:W)ګ9Rto$݄Z=)uW3WmzICs{SE̍.=k[-ʒ&oPG?,)+ C_byL&N%(K A\|Y K {ךVk-GQY$䌘k"֌?dMVNsp;̙`w8cOpq)҉\s0#tO^ !)A! DdA2!jփ*i(V-Eʦko/r8?3 3AVG@fƀz>ሤBG Y8<%~SL<"~Uw>:hǢtbryf*Vb K1<0U` [8}DeT7wg}%,Pyg\ W&w ;:!NT6y3!A~,3=g2An>lpGrՖL&C4j~/ ZhB2Ou E{%zP3Y>Pu2FNK4 r%^)bb~WBl.E_-Ë;-ꉌ>f jvC05#w*ɕMQ4&ߜM0HDӽP)2MKZsA]mdzQ6p [.t%Zfrډ` m$" ,ir̢XQ 2sܤ$=KdsuQK(Ȩ圷#ƲXlj4L_ :b40?T4V\ܹ1C<~IrR`l8k%:}pcH_i4( m#E2uP${h+ w_J`(*$cs ,K![n'M8ex32K<}t֚+bsORy5P|TAn~ [E?\YS 7wT!ji0JBض7 ]Ӳ2N@j <ɶQ^ D /hg=9Sl 4LFW}'Iʱ:/t^<۹(ՇwC3:U|9wL}&v%yzb!,Qqh@s#axK)h_r=ΈPkNGHPGDDs7"'_>*E!}WǑ8=uZ.8c:F43uuuHD8 ~)aAR)#.fL Cjmߡ$0]zRH'DDao]"a+52{rQ#ޥV0IjptNh>wTӲ=Ǹ Aڣ^7ƩB`h:cM\]LcO ?TdmV}UEif*hۉ)f-|c*+,3..&#o k*;%!LPMPQEْ[\k )ѩݚi.`6fs@255 ŷ[[jτE%mrsDL 12BWγ7J9;];)hD>+V  6z2Dn0 v<%EĸЀ ؜E YSQO+񌺿D# i=\n%]!i{9c_1x?RqC VH)X7H3٬Fi^Qz$嚠kom.hlX4|DEH @Plg3r07I͘:ֺWyz9x ,>㟠:j=rkVsJW|8F?S4E۔-S͓آ@d&wB}+i!L&ךD9Qr6'쀳'KYo|^vK|LSf?mi~Y aoQ)JÉvc:"W^1x;o̙UΪjEUAU^]6@U]+ֵ ʆ*},k2nNr_U,'“waJ8(С91,- 3 h"*a> &F-xQnH/ztbJ4 O Av-cD󺼴:C+qF{ƺY:$vqhbŞxn$`AK͵ݰ|h6%߅T,|4[a17+72?pJZ-,NKyWn1e *$!eWx~`Hs zAx cˑnƼ<]`D>d&8ͩjwve}}Ή|Z "}Fh婞񾰷ZZ@IRz0 ɟTi3 $3y\seW'oo 6.,81tx,f/S(Jv9CAܞ~|2vt6>Tm wMܿ'(ᴱ>jc-›uh{wOfv37I`c%dlʿR <6k1~'^Y⿴9TJHusbxvC( o̸$Tu$]Yk,Գp_c`fxĸy1}=$ԾmhbYIApHlo|!Kc\lzS_{<ڄZ{/Hx"¾[|CK_xH -*PƚN_PqLzLG/Ȏ 9a *m`C}v'q9(e`Χ]xh`]RHˁ@hiHφ,!m`tgbO,>v-F6YQa3d}C kP k5'o۵ի0LXfO Kp!)!_4L٨n";C8ʙ{f0imyj/ɌUf^%^Qg'>Tbr qQwJpVDg?8;@;;CفךR%X.+S)&3F63Sȵ-JF ߪRT|+/KƆ"=ؓĤ65¯\qo@.,;MZuOYD08ٵSnqG=ɮ|B9z:A8,˵I?"[OIwL+"~ŨIU_f1$}QAPq}sIq'U_5;yCF\ z ړk'iʘ붏%BĞI{CP;*I#&OzZ'Ƥ ,5|*NҵՊvmU׳{eMg h}̔w@Ec-)_?ˊc;yI65t(i*Xu@ixx@Nh~ 4@I~lZr̵U{׿$9esLVUG"C/bg[6![ \UM[HhI\WZE=<_?d f5QwLlMoTCVe9 B>'2K8p?TS>aWEZ;#N5o~a=r~7|Yg͉mܶt@KA_3}\9[$v|k1@cC"@WܽBPRmEL2'.r#g"9 fm}$G}}~@z'*YNݚGu@:e{63@|\?Q<"-e YaH??Zxx'V"߲2niW8sk_REDw4@[>rnPm@[_2 }^ zǍ W/0);`-D3]}s7OXZ-n9l#H>[Jc}K%GDo# ؽ3tL@ " ,ueP\'҃IcnE 2O t3!T}! I:bjҧ޿3JFBz=-c1 il)l?h=4H 7:vOw1n!$ K4(e|=_fkk}d)\X‰)fxm:ebxP X  G`7ܴj&O~(έ=r 7~6|VTF?˨85U ^(ۉr2G 1d^Ȧq*fL7f)vש;=@[}[n|F$ Y[&YڳXl+-=` ƳsëY %&yC<sKؽvy/ <\µy1E"JpPۊILThAhpasgDdtKHP6iiX>IArOulw~2{SO!TGr78GTr?{yo*X #[Cl8~ n)0˚\]zфd;Akai~aH9ú~8ϓs@Iq#9=|.|sjL_=WfJڼ' |{ E+&#Qq<#ˎM*n=\ȓx/q'{La`ƲÊáW!I|k/i]P[/I8X-2Œ͖U'A7qjT.!G@W0 jĞ/^|[!cR'RBȖU>gM)l| `}zeٹDn;;^I/G-O0ɤ>6򝱦,3iL`p_Lek|AB]7H $̮(08:zFR)k֩if?~ *O8yN=dٻH@Vc-hcGM7@*8R6_y#Jer>2~Ȫl:T}_GsưZJhsѝ:%/Af*lj4بj *dh+ʞzss}cD63fO( OyגyfDҊǟg 9@/BA*NϻsZ#^`I@QvuͧLdp[?UszX\`+<~[:2,]ըD-3ы\3'=4>3 Gq|pI(/8 Z*%'T)Ωi$OXUJM'*gg5ѨhMX"TGG;!FIhS? 3ھr~T{pR&sNcB 6+ӟ^ }BFYB03^ä0 ۿ񤝑r0h-/EfF\|,~텿@Y6,T:Vv}X B .FAbu܎CE.P9`i)ϒ D)0Z{k c~.GFM48~HY á r2WizW-J2pz o~JM@&O̎jk4bu>LB{֣˶@7x&&g俇zR'ν 3͓'ou t?'M{#~ܯT?$?p71 '`q~F,|R%N{syyھ /۠N@>u浨g|t&{ GSwWЏA0=|ME 7.M8WF'Nԍo_8 Ou-솱BD'H  Na3GU yi2"_-o4-j7|Dd;%F10Pt!X*u6KpÎV d2d@HRm+>).Ů v9r m#L;wHzJ9'EbX>Z-w'0<ԾGMi;&,:yq8"Q?hD)ifqc" Rͳ$Uh<C)J'J_h!yߠ Z=d,.M[R|- mL./-8 yzO z񕈧HS_t'3`Kޢ `1V(7BU)djPT("(d0PSf鿕dn [~αC+4(xh%>?%/~("DdSrY{,2IIe]`A]_qM!7)@c ~Ri?mwΨN~8n%{ɸI%%g/4'sZۻha(>tbRCv p^ͧSrTEڎ&CWq#_\6L ۓ"K2p'D?)&eUwޓ32W܀ ?;@>b%;fP жd/8yICYͽ&ʩ.1 RGTghO' a[hB;~|^Xz(B-8ì`9 eL-NtzYiN6U:)N9Kk(>omo֢w Mh}nd> ?O  y&5>Q?~Ox|Ca}^6MU<ـpEF`ͮM?XQf*O; `,G\IvY9bm(x]&\fd۝A[=v}u[β U̷,c]FyX `#l y:UfwE,JƸrK::Ր.*\ CHɡ*o}#-njQf:Nu}o,68(C#8,8ܷ3Q#/ ȫ#f [G%C󎊾D ̐`Q\T( EmpO nD13$gA8DJ_Js 0D%D|}4FJH; L&6wya8@stش|W: @p@8ݖ]zVrd0:^U۽e7z_>ը I4U;+ּ}L 5;-X^tB%Ỵ^$kE7)?T(ݓ#g;؞(ygKUMfkUeA )~dEEPv 4_흝kdJ;_C= V* ‚ :]% ?ZU(7="ɽF #¢!:qA }ؖ"OcP)lԙ+6XWF}8$=5wSY |*C{cb˗jH*PHTq͖WgLؓ']o<[xXvĞhPQȮ|ftגC|q2#AoL&?SNlM2.֯5IGZUcY(Wjt[uӉG;޳CW]F+rTrɧ@m8 B30Ç[KӒv20 ?Feb]C륄t:B>Ԙ$^g kʷhCaNp̡*X)ېx;y';߯%i1+\M8bW??ŐU9wev̤^ :Wv&sEL t <(+<|<~slj"OI?rFc{=do9,3Q^\ ;cT$x"Y5umhh4Ҩunq?ӖrĪ-U߸^"l'Y θoyI̮†_C|):\w*R!G/=w&W\CIhMtZ<MP'G W[ Z^f6^P0X+ei3/_Rv9׽Bjsɘp ApReTUTmVȢ~ZD*yl{J0dc onU|\!k) )hUTSd1cI^Z : ȑrqrЋy"'VZ6] Nh9g8Z_ʂrи\yMelU`My_hV 4o tvB$$br7TwnR_f瓄Y)vIT7c[yъS,"4D:Ҙ`Xxs7%NPqԅsm|5{[9߯i.n93L_-tl@'iq :Q\sΛ ECd&3&ۥg(vPl/r-`q8!9*X`|>~ԻkTZ*: ~=`ao16Jl?xWq0Tb&@9w;i_ %!xpt$Ey %-uG=#f*4k1(O9yCenWIn@QHNo Fn%(ϛl\i.Bz2%d SFlp'tg4CjS2 ?/o"oL}ҧ5aWRɂtm? ?鈭gq5i{h檿E'澭".(fl&[4RN篓s D\wiB +$U~R{(F+@529۫EH,ԋ@ͻ uPt:5h^:IPS9-?#C8BܦbsbUvmO2~eA;x~f~<=::B_SQSAsYLf[bmkŬ} pQ*RbJ;%v9 V$RVJ{hp|\"-3 /@9J^nXs핰Z֦iXb(}?d-$DuBiZ-AWoؓ$/eD!GCze`^M)»&*iy8,& L=7刡:EJngj/צGҕɭ1rTUR-d2aH٤dR"!k {RD/ & Qw<FR͛UbK*MA 6-oQwnL΂ɔY1<QͰalB̔';xln"XihM>52!k>~^k0f;*',v*4[xmí,㳰 %㺳VawMWܒj8RCF@iz](VtܜMWʂL)_ȓZ;Roܛi)RtQMAxh[H'v-x!~͠* NyA8u\Y" >푴Ty g銸ڣ6Esg2İ5p,iAL"l`IBls/ne@Zzo^m6ZbfIv 'ݰo2A7qFy|v4ZSd^Xo䙏 0>9asCj(6 l aշ]5+ BlOf, zɁ8' @4T.ZҦ0.w<4Op !P'AꆭT@s&7p :UZ( H.!;{CݸjzLCX?G̒ l#\̟EJyԿ4 0h9qoQ7Ԝ a5HM밆a̦0"hqbU ♞#N(6sK_^wJ moB&(i8c7i;CA9맂ROBOCyv܇Pɯ@tZy%4sMOG\XN;+ǃ61H5-l(_Q3g|kC9Z$0Qg#y[wmt͎h~7Uowhy'~)`I~ V`.n 83i mbLĠqƒ]O:C3EHO6;'(T:, 䬗n,lXBq7 /RecvtFI6>i MJiJgZT599.Fn36 ZFji4=g3.0W)eD7 1˨p߄Q pdj=M)ACwyY4xNzk٨Q^UErX?!L-(W}bT3g>iHUVьL$W+A=N߻=yfh5Հrd؈P};ɣ=~]Pw g7+7`[ 4m˾x R .w2>P۔sIza ZO D-v :As0$x/ʹxǕo"d RIb=_>lc~hYUhjW x{F=8b^1APhg֗*iU\]IY(܇}ﳑՑzLHÈ8M3 VA㵵$V~dq M;EaU.q IʧZW=*&j$pVZ42CG@H'\;%hGe!3^pkfV3\pތ [` ,a/~ ?s'ĞۛR-L(DKW򱜏JTҚr m0] UХm_"w5ηU KgBfCF,d1j{XQPr{Pgsw +Pp(u!Y-I?p$qkmsFMT@[#J=A̰WŋQ9~ZSMctgt,Ezd-J eɰM?kY^e8Z߬UJbh!IӁ1~ $έbC9{Dq5lֹ/zSۏc(tAv~>_ɋ@wYײ?=z?wok{&mD?B,è @ +yo`qƷmņ81 QwJqE@7> AKYG+Ay)!<ǢkẺY)vlc U]b`4*Qqg8dL/vImvl>\CĽ",fv4 mGϿq3uk=݆˳ (o 7">J3_z)Ug1%[o $]ե q0. |5f!t#}y5~-I O;>Ļ&}K&^8ʒ}@PQ"\͠nѪ@zQqLxt= racՍg ⱔP@(Xѩ7Gh{~Nt4Mʤ؝)Og)u/ H"ΖJ-shu݌K~%-,V?S;DfxC"arP ?SP `Cvi#f泒ql{]Ţ9wWcXLmHTeuq!0{T]!h_ Om7*c&}))|U!z_"F x97mO.Qr|]*ҡ_vW,MV\?B1jwI$(Fl.6R )H.BpVZJ[*dl1 rYM, 4>[7!JbleIeΞO0}j-[Ƴխ`666,I :+=yn]$GvL6`>Y  jCuMFصƍpx&yvd͌8)I\b^Nb<÷b"G;Bptb ~'19y ґȰRU}XRu%?˷B ?ߝ%[jMhk\"!V#b8;YZ&uxر| ;(<%UeͺIJ,]mtL^W.so!L%ĂuVs4vg}F6k:b;pQiz?a07ZKٜFua.,3RF v>#V``rk d0%M Ƨ$:]k03czG<>c@4G!=5& *JCQ_{v|6cWy48 T{ yo..3IMը"(:)(vNܤ,5 L6)9(n0! 2jt/Sv ͸x>-sx&1žuuwET'n&Obb}UŊ$Oyuߎ?Ֆb>6A%$" 릯7*RAfB5F4qaTқ|1 Ԉ9<#\7Ǜ.GH4 ;'O}x`2)QSG e0?civu}P{ 5 ۘ[B%|1F ð%;N_SxHxM"%Z~YSn#agZQ32Y,$bqK&s ,`œ}KrA½fik"cYv?OHg4u l52 a|CS4B4$]lISbM]&nc=ЂI!fs蛟z|=Ϫev-{bY'u^X~ΆK^P])>c=y />Z"o n9:ܭpGY<-_ry"ǩ"Iڸ$2낇Cz&~yB(LAǩ&~z VqPY6օ r<o\I=ROg[ ުX՞_A͜i2(#!^,=4fB ^[z%ܜⱣ-ؾd2~U {m¥|D׮LE,M"TT߂SB^ddwqqz/쇄XևlLv{.Bsp`=Cvse;ZuqXyԖ}[Noԅw,rޒj&8*gDPu[?ZckFGBi&D轓 cbY{qq _,+r*l(FibxDWJ}cC!w )bHg<~qǾtUHg=S&;9л*oDZf{3&@* t B)s'cVc!MEʕu1x7 $aLZ08jdE]oA"9,*j3.O> boY6өP]-,%!"ۘ{ӷa%+bœn+@$ŗY領vfW=UN ʀdz"3]mL9Àʐ?.1OWNX>( ĺ9M6∁y-4?p@XjS(0&V1 `tдFo1 AYpø7ai0s;ᲲJ*3GDqҝp8G#q3g.ã(sNRmF0:oФ7SV[E^ݫ7fw߰(2/ڬn\ u$":j)o/#됎%&I:n Tsp̻0eÞ4nE$PG>)Jit{3`Ȩ__??е٠ wQ<۲(?7O:a,Ŧjlnrw,b|%A{Ia {!-%w@*yFlÖ_1>ӵzS=*S?bc`v&1C̯M[_KMN f5Vt _ v ~qJOS}d'm6fǍi+;BzP'eH[].h@Bf$#r )-Y)Am/\);^ 怛vr'%_[ׅGyͭ (݌8W]Z~^r/,4l;HkJ(W<@A!yW*}^ z7t+̣F@}7&/n.v^ǂ]dQC;YϖQjeL8wM"܎Qa :@oxHTEm`yWĈ=#4$<] msLm+@d&wI2;/*8IyR.TJ_~!kUUgn<> ^-#ExzIlҦgIWӋL!H<FнC `xR9^ sUGG`k%0i60@lXLȘFO9g5)]_ChIe!<U/$6-OMYpX6i?_@Φ*dfVg׀]O!']Bfʈ:|`|h KȌJ%dRI!–,851Q6q=ГO#B理yBUk }2sǛid#{`!;{L>]к|Q#߆u!eg_dӍB{i1aQ@#g[;H_Ns~-@q(4uʪ*K|R\a`b-]&WX2-?Dޱץ6DiU#Ҿ\SZүkNq 8PͼEc_=&'HUT=٨Z8:3G 聝q'[߱$=6Wd1C`}vpߐђin+", 瓇2"k4Ă$8 #PzME NXb䯃vˈQJ4F"st]BIRz#OIΏOL.-w ^~ٳAySS<=SOΦ`q>ғW#Yl=}G#[NQSIB@~jjDM 1<1r h5s_-74\\z`sAD'aWE'Qt<F _A:1~ 2vx+f;6Dpb~-jzGWuƌtM_f*o:`}z5#,^~]m҅~`=2ױ %fDG)UzFeu3@C vPJk{%Czmnˀk/ E9Q:ipcǓN?jͿDzwOȕ;Pnkd zh[KkoܖuMK*x>O?@UcznTe25,Щ ڣ,e, f>V w`HB%Dk$[V.qf)?Hq7|U=rgO @C7~6LYS戉q?N? S=}l4/JYjs'*=7M8ip[Ab,3x gA@5;6%m.B" e lrEA<}s4.7%gd0b$6y` ^W$'_@9 L!>ui-./nZl)m1XeXyVDUSkY焕 DLWdyjk!EAIw/ xfӻlƪ*kpQZ"%VFHBv\3&L-YxڡZۼydۛGn&v%5&>rdN?쫆n : Xj=l"oѮ05-{E>N,s6ir"V4Gn~2b ?0yE*/3顲{qvLnԌWt|zCdv COqC_4i0EtAc Z>%9-`p +-3EFj--j$jHO2nLo9k67cI y zj!`ί4"2'c H77+"2\(M}rݫ u  |櫃eW8&y\xyEgDQ`U@p['<+W60rfXw/Wcϊ0T)T oGYM`y HK=[ iGlk_Rd Vh( Fy'3@ՊNgxtTR` )fy)0GGw\J{_NRCӊC$}Ǝ"yb 66ס08T "rMFnMPc)9ѽ)tmv\C |Wnw=ɥA9,&%4iۈ?^d3eBۡ;oR 0J7a ?;ܙ;KG?S6 EU:qPeu#bݖBݐNfOz VNnzB-IdH%a7^T^؞/30R8!@gE{FSJ(v'n!eCEFLJ2aMTb ںîXĜR e{d(R<1x^U,Kog^󺴷C> $VJ¦LW,Wĭlg _Hvn{5>b|dd6k 1"$~=hgn'ia/ ](L VXuvu:DrkQLb>~LC!=tCI(Q>ŷ^xDeP&IM'N l^ƃv:Gݘ/e4XgEˁ{*ruФi`m@cly^f=}Gl AW!8!&_rJޝfm8h.= ~ k:lý.Ԝӳ1YN9q|A8h22O]Jj;v5V 1k&ƚ9u.ڙ%o '>Cn>!@T$Uhy|ٯÈ ܟ5eqޮ!]3ڥNXN0}t>WOב˩32:paN>jhjRn3d4 -݃Dh) ]jw&>IܧX4 hЦŠua0BP$,q8 Z⤥^aPʼy2n-]]sd#e9\7X'65fHaPd]LEoUBMṼ~!`أl8 J}zkRZΖ~5M Fvہ=U*KzFxfj|";"B=ݨ͑&`g|TBq5~ (N/⿶VnW9G,[丢kl"g%wP3m;kvkkN+Z]$(n}ZL]{s |g$2nb+H.sez8ڷ~*x/Mi_\SݣdL-ct ͗Cri%13E({oLZ?{ ~]hp:*jk2Ѵ=H۫icGUZ-HbURgo*BVN>$t"ӹ:SwkM!ՉszaVm \$~ba YA.6hL`c8!)wԩEȝ ̱׈lURcVe5\m]A1h=s|zPesbA6EvcIXPNt nIΟNd ,5Bb),t&N Z-,ef.iTEcsMW7NA氯0` N|@Gtf?ju9pHG ġO$#]4]3yܯZ<+ wO쐸T^J_ q2-PM1C2gWsNcuȄ_Aս[bP8knqrH>l8~Q2 ϬvPC\9V3Hq;Q^43:ghfDI80 ?܊#Vng(E\IQ;A8Z:IuB}!(comCz~}J7U^ɩ9T%HtP՝$r)#@&kXz.$): ,O6m { ]u , {9/Ο{xa5Ҧw-͚nRwW]pbN7ǖ.0(Yc aɕ0"/=]"@=-*!YCSE1=qYguX J-8 `n:z5Q]\}Vݯ QU<>2&9#uuvٷhRKu \M}p]:ͼ,yd m 5b/J.JNLp{dZ{x1)@ Q{PޝlӷvRQev#="O*-9@g~X]uj-oȆ滗5/Ʀ # \&rqi&<oDD퉢Szn(#"v>cC}c>P]S|OtcZf'3De'hpR$Ƴ.x)R3򠃗` P  1PԿ׾D7AiFpz_TޚoM=c\cDJ7b)4lSh Ob.{(W 8YU =en2ߥ/C#aK~+Rurv|X =*QUM Ubh[ y[+<ZuCe1.psNdzUrM6M R厳ߙlԌ{ 3sݽꇸXUWg]9oIxD˦eIKEVGs@ϱXo*M9W?0Zۋݬ qj෿㔽wgGQl<0_vJ+Ve[4[޽Md~( 2~} ,)QUcME- %ΫWܩ 03Ke1+dG- .-wqmͧ'Q 1_t 3qDdz-Sx]9v3jL6^ol8W~+TcW-%3px6g'N:G44_>*D2łCÔW$&B9dف6L铵eLc$$2!3^A!8{BE 8Ew| )%,1gX].dV]]4; S7T f ӷ kxQ2+Ypal2b{r̽Ƥ 6V704J+كNa64NRv0Jc62Dhc ~.-zR.u qcU[:'G؈NgНoylBQ >35~!ɪX)8t{f`MvQ`\ˇ@IW'>n"@Je.pBg1W[*tͯhwۚzGAETBxnQT0NŇՏs;蹵1a|QYٜ4ٍ^)ˍDa-R冇1Qy{6?re:q>!'o;0Ni\pGoȫߪǰ16[mЂ~iTAGpBİE=v|X͝NC&6B_iDM0fqOίbvi$chc⸊h mv5!SMfSMe^ŮN ,4ectÕabO.y2 ,h#13RJ8@A at`wD-Rdگ\_}s$,bf5#|&ᄢh].qz&y2rgJN i1n_ %șiJ'P>b!SQZj=`& q_DD7Ȏ P p _32Q<&pmJ`|/oE*SʸK"Xw[y жoC)1fƗFQսȜOx}6O<ܳ҈5KDW,xol4&frWKı#A.™ֽ_+D?%ϼ=b'Lzj{/.7+zR1e4 #?oν>QJM%]<: }LXf#"c4;m\N]E:oY˵ʔ jBGf::-&+)m/X9KwΌ6 ۶} ٫Cr{W=/4 Ko8)~ҕ#vx/ޛ鏛xM'FwU^k{ERqG kzHHn~k$aؚx#6qlO`A>v 3Z=2~`/N`qAC_6/~&ngM&' ST]t+$ZN:9mhkS~tFېh L>JOTAPZVAd:)DjwGC2Zӓnun¿6xS^ʰoC:q c gԴbs{)gD ~\MoE,kg=2)``ħn`Y apzM<46K޲maBݍ^uN:?!ś"su(-YDec}$B@xd ,;zufj2|y `@bqH,#zrpLvQiN_— VL2 ~ w. [j9YNgMm.(/bB,ְ@UGwA" ̏̀S2dDq)S8|* H5HȘ5t4tC5YST:TE:'J`;\XIGajǁ &D0͓TՊD˲D|HzF dںfC; z W7ףqb!NCr <=F{l_şލM=4eq*ڞhJaiX I_=욲u|i.r5OrDH &l}kd}e4`.R⍺8?m`'%uYHɦm>st9Yh~ckt`siO%`̓XI2]_k  n!N0D<<7kuMr3ZŴAT84+_:K:<M-!1}{\7L~ HؽG9B8y9Ro|,W9%/[_ӆPPA)ayN1Fμ"3c(0?# FM) [Z v<#ç^*WuƐ['td vՂ4axY\)ٍ7@$)Inȗ7z>$fe8 \'B3R[?OL<9\(Snώ^XgOg_qI&\8#3>%`}Mb[S r.g҃h p|$hAC }w瞪 Ǩ3i-{CdpDGϚ'b r@ZQm䱥R6W[$o0_n'8at&[-Ԏz 6umnɈ9A@$zV%`)aOǑS4z P(mFQ.*&,AԶ_{Uj29p{9`jrKLW*t*6cEKY8 qgCM9՟2N!"rPM8=Zxqx"-\lQuo³oNrwT5'@eezi>f0*@eޔgղUcUyaWc)%)h~:5LnqfzˣGtm4Kd2)H7BG|`(?~EK x (;Ԛg*0볶Գ6PBES̘bnjwPlA&[aoAdzAF7:ŻETY"\k>Lƌ caRt݀˒}T*'J0Yn?B֖JJX?JoS#9i j0um1pv|iuϴʡYE&V斘#_PnU9G , KS}.~f9q„?|2FpZ}]~DV.2|̓JW>%I IlW' 8}lYz+hfk[5Q"e HV`}>*Jo%~ 6(O,5P"$æm&g>l&,Wx5@fs$8.S(H"0ԜF+)ft5Q b,冁't JbU=DkFKMgX;E-#ݚ6c>W7KYM\w@9 &x;8M?xp1)ec/E_tJQ)ڿ tG |jXjNj}f׽'Js]bWR vPY/TJT$]O2q,b= nk1i\U9C%"6MB 2qԊ >RuU#[54PG*G3HQ_b,A=~7>5;CYYZS–m ]CԼ`B6+ώRp*cR~8#_Z<MH5∣xko@1T@iڀҐ٨dm;F*JIEl,esw7WoKIF@p%avyW#kђhJ+ɖ^o#W5V\ p- 5 xݔĜUQDycYu'2 [ju&:QbG_9m7ğv[(1:DGإoY88nEN+_/+̄u]$! #`9)Hɤl]1T.r/h؊T#&PZφ-c*gș4I6wV*H 1%+Ƽ,E!; YdKdg4=s)<2?2;Sx;,139L'K6{`H[q(AM 9j}@in BS+&=ԉ# H{LLPA?1H&VmZ؃L@tLS%Ő_yjg놮ݥ\e#Rwj>ItB]V~*S Ct^V̱"?f ; 'äY" lG8tl~ҭu+4U_^AX,dݕhͼn|8~K ǽ?'`2IwHaM57 ǤIF{'ԢpM ۩fџӼ6=mQlMj϶}ՈZeKT7!-]ɥG-G%e^g7-JTH\ az^{U,^;p乷!3~ok,.x|` \ՉxMLePtwadžz qo;k,%M^"1}y!N~;׃#6Z9su*k iSRKĹ眿;['Qg^@mlւj,TcڑH>&'uS-u8I~E&GݢLQ'ۈUBW7D |lzȟԢNE'ґz}D0Tu/``%Guq* #a4?/5rӐ>遏n"͆_VW҃|mÍ!?.D 9g`<kFhQhXt/h|\Or94ܹ;|#'*qKց] θpXE6P-N%I OLݬvT]9P&d,9|F2G}q]0r|kTyimBvCմ~;haw]a|o1z U #uT:N4$&/?4N_ +)kbumU%0Nh24]Dfs|*G|&#F.kW%,R^]d1^q6!ǹ] 0 ,dᓒoP]p> (uNs̈́)-E1:{ erǘ<SOG:hY#.KkV"zƊP+z9g P$ih|u܃p ^+cT{DL2TB ">IT-6֭4r~MT=La&uIo\b`oX&ԪYbLu^'߆lqXOT1p,V.\pŽ^.Lftk]8:=+w]4{T> P"^'~t|*XJpER'?a ubgx R`*fZ t ѩ*cD$U&$WGY`1ecϜsK{]-;0 苂*m'-%3h}Qw&rJnD2”~T-ZSLKD ü- uJc ;쮕_3Y(nQ.sw2NgäYO k X#hmQc#糦{̜`zXYu"cηSIכnilZP@"'Vڀ3/epm5Ⱦ]cǽ@fK}QtʼnOB+|ӰeL4nUCmi ި.u|MeB= ȳ65yVdd 6I?6{vMC@itXQ^d%n9vu(R`aéc!UT<נ&6j@Ad pJ&\=t >,oҭ)(e>aߜCV{x'J_^BLYW4TrIUôa?HOf7GDUWKe}m^jٞwK-/vq cV pPM0xhzsۀP]Vp&ی*2Dq ;W~YNIKmG3/CH63 Bb6Uk2Ʀǒ:b%FeЮ'yG7Hc?1ahYz細`2Rf[&?M NϺ3am^Te0H:Tʂ|> :ymD2n+Hկ ҵ1彽J%Z&]6e둄";ca F 4=[2nб~mնk1Ľ$%ž*n5Aʦb L3SƏ:Wxi«YC =gJwRE7`lZ`,j TIEFy.QRaRסtc X>+z+]|=,\䴏b1@?)]bMR# Xh<]*C7 ^<̂2dDf5cpK95cY$l f!<hI%T*Kʯ{0mj֋`h>PVLT˱lW]˿I(p>guWhM  B4XnJ20؊'3$mT|/fE ~v-Vy&o9H8xV a8euL%2kຓl$4&C9lYQZ.PDԕG(g+Q3C|yqHP:Z7~Ct{2e<{X(%ClAK9a)h74Eߗ(69u6)ւg"mLYn'H-\?EG#ji1(A ]%?1%3q ]zh85J0#y/Ha]3[EMPWjgL~\ M)2kyOxϘz0 蠪 {ذN'493Mro4j՗`FjfdrphiEˈS0sfa]Z|&}zSVvֳL4ťGSz)*R9$,S_0_yԩ#)$;软kx8u u> ]Jc$z.Ŀ (q4* ײwǖX1:0oH^:rS~#2Щn*L%hkk/zG+o_b T 2zO|dMiTp|0N\WΙc-CR7z/ψhd .Ϟz^m J$1*:fӘ0JB H{l-.ٌ1FyA.PZQG^K2Z:-VYp!%:͟V ndJ`mY?pt@pul?mZޞfsT\h́IeC%IvãfIa+3"K5\=Qp/l񮩆4'cj x Mhq_w,[bCZMHL'y9K>H n_{$gw[&*3QRJ`{,@Đ þmil1(NKGsVB-}᪯oTQ`H;D'A;3ycP뛖BL}Xuk\X++œ8- q ^R2 ]~tVG)o.uÛ}fmːUk/Ѱ gϕ^9p΍̷/ HQ9ni6[;c=rcj[gl89Aɝ݂ֆr S7~tēn\Lj|7~9[7//tdVfe7g6PJl.+VW y3V% @2G18r&1qԟkn"&'7 B9@^`6XQz~uuw$ro0C3lm9DՁg~y›[patPX5 l(|_Y"@eP&UBCJwI0~ =i蒧L ۇi^lx}-ފQ԰nosvl\B;?r"}ч:@4MXZzV£0 (285o߲;c9u (}P@b- *%[[Xd2i(lWg75$;br4r.2Exu)Wz!zi"D%g-I)pO6!BZ2Oj>@k͈? tb]ΒpKf@ϗ1iɂƹ 8`KTy Xcs|)f*LB fW3&wIhkR0cZ蓰4zrs`JK +tdA~GHOń){q#ONK6 E+nG@N*KR+ӹnxbTmV2d% 駓\ܣ_5ʌI>R݂?T߲f:K2uaU܉$۟r_ N=ΰ(3)ܤ$J1KU_('cRXpWlΑ-Vɱ)+{+L;NMx 3Ķ&Q|t?@gʄ b *F2e??LcYUQB$)9S` Kɍlv` 05b,_r2&r`QD"jya`wFI[|>u`1goړ- ߰7i.~) &}|\U^E~%x)a]bwC(fLP+Q0o6qf^(xx of :s-/8Yz=I3fUm0JC{nwAˇȿ'Ď[˄ \XlxTp~TƔ`jEpP"+95:8{ŐWb0CٛTwƜ gjou:uPn_sEEDA@/%f*%;a]91aKcT_G<y%6aT7͞#:sPAqc ̻i.W(T `8KM"+XSY#o]c>StvTÏHȹkvAO`#hx{ XFDs1ȼx}Bv[*."Jy'@TJ:`85 ՖClM׺PJ{'hc%3Aǎ0D\׉WA0Qӂu&iZQYZ: >jQOq>2JpvGQ狤 ) ޲3ܹ I*%@zG@ RHuN7%W ʛ) & p?Qi):N|ttP7vVıJ Djo^$ Y"-p Y{SZxj"/ǚ⶷eoJ,].d^_P^C0ҺZ.JS|F\q.vRj_cڤ!ԥT|ʝJܓptoA'"|5n y4y@;rڻX??)NUQ퍌@mD["H$8wo_'oKL jK@h 0{1 ҇{fDWl[5-_T[kBeےu(d1nQAYģI'E'|is*4*x! ]GǭlX$uY?] ?~JωR5(PW1 Zzv J:e;T n?;aVIJ%f9m=/UѮ0Km5`Ǣ@$Sr0OҐ=$V۩'m{b{B%~ ].J4Dm+bf=XH5z)F+VHw?\Q &%O>߰OaD/ 2iC*%~XJZo):.9sFa_:3XRav9W`QOGDc* w NUO7KzAt}V?1σ[ `$MIbomڋBaQ]֖?Eϕ]ckcݖ&0Zל0b@ ax]Vn@tmiqR$d=!btm7~{D3mXubdgxqaZ{C5 KB:!JVN;1Y+tȓٶ|pc͑r`]5 oVT*:TVA >ew'/5OIm!mP1ǐy@Y ֹEFk{l\n aMa? ; u*2(t%6iv$L~DÑI}$)֞aS:}=QHNIr{OX0~ԫw,O}ywI$ ;=G} [}Y\Hq6SRV"&O'rPY MeuygsG s?Bſ OFat2+2 Fӑhj#J,$ii*S78o,BNRnsZ.FY 0L8)*n&6r\J5KmyL{ î歯@@!Y 8-ns`鯰誒V즣7`pM;Y%dQ!ysʗh# CK{ga2 *)UFC3#;0bCs,`Y,zKAy.f.mmsPbFh, Rcnur+2?9Uɿ^|%1zES!n,WfTs8'˰,)9qKLuV{@(ӏ.#2qMʅ8cˌr wmv_uQMl޷pl+Χ9^%I+MXgH OBԓ(%Ph#PU p|ϮafՖ?1%-:^C|H3̺dJ}v3$2?͟uTfPIXfЌ;,O:zXIfnƙD Mtc;l|'Ș0[t;+"d4`rQ25rP  n"ɨ#|ęh= {ΡWkO+‹@gة;`VOj /_urJu_JJqC׍ESDuB4{"Lye#zO*G«:1&ۣK8u /.V֞HCPcLSpa'O;VZw1{G'G9\)1Pb#ak?>Q~[B0=ʘ\3<G5?(D9 :`᫸Fh3طǼ#RC)>ȯeiirPשOO@7ߓ_M`D1/#JY&X W'8L1_RĿ#(V' ^T(9RB3.)]׀(r/l?%OjIzOp!<keC(%.tv9Pa(`˄dQ>u ~>ir_k83O>T2g uV$s ao؂lz;'yU+Eݼհ=`g *xv\ܚ/7Y''% bqFQ򷃅7]azW^,5e6Ū8elU[oR?}9Faz:z0ެ,Ɲ0/GOU1FM6}67A:&.ѡ0S|:w+ud9UC٠*m8%jo!Cv!r $kx&{Y|rcw>otHj4sB~L!}wb)ESB񜃌~hJ7kv)N~M kӌtLÃǁ 1]>&U-v@  %2=iB#ˠG {B߭i,[,.`]ѽ͏ĥY$;1M^ߧˡ(@u?7o)/Nz 5gV)]wa>b.a7pW ׆f)'P.LI4e6\<L)ci Cb K);O1js[.̘Yi|M[$kLRm ;G]I풇]?9!Bm7GRM9(AӅ͎0@M$ٹUNw]`dbG@AiEտިґguKpSx*mP4;Y2 :JTu?d.:v`zôWftӟɥk& ,7G92Q,k?L1,ǔtݡ8u-d<(~b+`W9wm Sd|5BI"rL娯򔅎52Æ&Z  cF+uD<]T:*)GhS~$((\P5|1:7)s}& C>=6$2R_8e\J[/\3նݭ8g!O2,,bBpT-=&۸S8r$%p,j?' ƽ!YDUM.u'ERy0:bYPx 7 nSbgc z쐺h@7*@.;)稕^40́8*.>px~X? œ"T,JWF5x9LHS~~{ 2<~,b򅖲I6Me}O1H4[3aR(tWp1lDN_~55 7xާ[L"TSYBőX(~lq9r&e>5+K*2%{yDEbBK=+@Kz34ǰiCѬ5V(sV\޹q>HIi&Zy̸\8 oװs$=OjFFOӧjmx7[[q,#7`ؙ>7jxi:?sFNUJ|zg}Vu[uj/: KQۑʦ"EGfN}E`^'AA7 vX5B+V xׄ_#u9m\Uohw3%7n zVzp<:B瓡ϜQ2"Xo uҳc+ fqPW[a`Ol/C~j6@ O1ZKbT̼aY1|bG(cm $äP^veAV+'10qG E%HRS~!/Jof%8Sk q 8GiTb9JGr H-3/WVFRkqxəUv驶 |* C^LgAN,ZʨwejVѽbx6+`x,#9:/ P-{zOt &#n˒Mm(L"j# w2m(}!ς%(Y+K+{CB}yԎOmJіm)n5?c0 I9郯@['|0uD*<{Elj1q'Fv+ҋm'khwl0'Ju 5-Yl 5#, ul f|eݝR<=߂$T4/IkYk"["R`[e8cuPF(AvRCN f/_GwR-}&PCbxu_F]}jMwP"Ln' C7D'07a$?$?xد +uQH/QoÂu&|Wa Xib=YD~c: UmG>z2$݇+ vZL1跱e`8g@ sP_AY8'Iݨ;R"f>Z+IW^ڪ;B{ u&jIr=d_Kk[S,V'yY]6q7>38K$4֋˃W qyHܯ{< "RO@*6;tN|h_ lNsm-C,-^RBhy/lwMVrMuЮ M@עZ{oQ3>G@T/'S{KdB6 N4zJ[ni[@ q /S;a~ɸ:C]kڟ},y{+}Pr6:-J{0J.P1΅&]ΣO#dZ;'qaeuuAE47`h ?i1#C `:U_8`8[ K/MIu֜خDudyKteh(gIw[k􍵚 jQ_ 6?-N`B"g0Z7= !NbBPIRV?26`9>|9ploM5p|E2{rUkփ#д_g]Åh|ha Ijl ?/ 1"A Hd4of DO86Yȋ6'x˩;IL](!pjshsI ڧtm9akz0 26b)w' (B7,,|+9WdiLFt+'2~Go>Ӳ8,~OpM>9Jz?>em9s!N@K۾ l502+2SS !)Aj0KBPf%5~b^Y dN ׼S4nxgD3TʍFi 륋ץbk/1n1>_C~$ ǡc}!Ls𘟅h)x2=ܱn^T@}1B.ܜ')I"Zcx<@+j*d U&%F+^T7Ң:\%Fä_u%/{|&aBH4e.h&lWWgL,k:.a4Zk̅zo?`o>_p{V8c|U-هkI8lt,]9x~--d};a0ep%kA5P[1&[U jI"PH~ U&OAq$#Y3Ž\WޞP,.&'LP_ TāBx@B4^3Ȟtp"24GzpKo5X oOL c^eO`QW%wa_[Ɛ:C 4INS(j4pnz&E47ezP*ivȑLD "a5; ʞs$*nwp_ջM\|&?{ziuGkkhڃH["μ5F}hR#+MpqEb&elFhgAf'䡂@O-$^`'eu@eIY 2ߜ++c8 ĕoL4Fh]Rb >|&3>3&xf Ay0n Yճ#xQ4L юPw0 zSs8UH&JV轳:<4?<q`_|>!&If)n&4O {2Y \Ʋ G _Gˁ\f\3؍?~"y5}"`usA_d2jϚ1 LCIPYm858:.^ G5H[>?8䇦U2A]C\mĪsn"Nm 1%_XloNئ&LЄmZ)9i-6k,+Zh9`ϖ%_ѽ`إl^v 5\}'|"=}]a嘄Pnh/SJI+ӕ-^|TvOV{RbҖTp8_;i#3O=t&ݨHR2x{NB[ks;UayRĩDc<<=$>cz1O m )0ł4*cەDMЧA-r ȄnTHeCMX BuEXaɁ/A0m5"Rrc锕=Sn#(fDhEg@+Zy݀DSyRS;]YpleI J%M00Ȅg m7PH6R3ًT%@h ]M;QFM,ȫx@o',zdNoYj_R'qYa_ŔXsOwȢl&)A ߴ)֥1r R!orƫ6/ULȕ{8tf~%5ݼCoY-|;n.,,C,nQ~WQqUzw$AR8TwDC/nB+^eUD L ްR 0],eEagbnbero/kDkN ?tUf3C z`?-,~93$B 6[EKĩ:m$VtbW (SS΋=c:/Cٝ<-V_yv")IӬS02mD3L&8v;3P9}[:Iay="A}vQ(Td2 oI[C: .~tS9!^8Xx[Iao rQmm&Djx|gE ٤VuB+db d)K\c7DoPwֵ ^u0B*+BS<v2C\ -)c61o!BkjLǒluA$gsRw>8GWIk>*ӂ6f(V ^LIOZ[㋫MAi9֜=AgQt6x#|Yj1CmƆ^T]p /2۾z[8ОMW$2}gpHb@]Px}"yk2hJ@M[6cP`!OQoY[/]'!Y|sfuIy^=3%J29 )p(6 uO@U*fBe˒g_T M'qƼp % bJ[17DKj)+xkn_ f@Y/|W&9g\ FB]6qB%Mp+5kgw%kWxì!.}H{<|동'#,n.6Œ1F+$kŐ[=v@3R+X9f7̉5on*(, $&(^QuY2p8wNi/ 6?;Q!^#=~|-ĝ~J}{߳v+X,&v9v674-K@!o0P(YїgLShMP~ZW7KbY%ĚtI$͈tS ИH\;{ :1ڏ#us1{m V +*DNeoZTL!G&?`4"'(?x)4]Z xmćn'n<Ƙm3*~8poğ1-;뛩 +bhM XBlZY+ޥ#|},h6dz>iwZPwLPW$D..lw7 36ͻfT2-?ZAjGbTedB(8HGԠ{n^MxQ?pA=B26q |Kz""W>t*\G{iV, [؄h.p@+6r8\"Ӑȭl`cu:N$*Ӝ2qSb:}CbfK–1x?%Xwo?c$2i6xsЙ#-t荞'VBiT-=n[8+j"@QoNT>uh~ޅך"5T? wY 6_2-ʭc|kG:o^Y`)@ZTTgu-="=0nt ,"3,?OTߝ.Q{1ªf"Kx; $QI%f/v^v&?&N^c 3ՀF STr1ՂC_vU GҚg$>MomxREr$= -auzC*@X;;F z1_ x儂(w{r=YѾ_2a C_l ٶ~ |>m%E:*, hBL|h@<% c^f=aG]>EhbR N<<( @ؼ:ɳ0rh_L|Jc">K6ȕy[^ T>|L-E, ͟C_p* Z#soY } }{CX7n|U#wci,&$Q61L*J!#78KjkKm pZ([M?"Kg& PK6k2:.VPMAϹcʘ*Y)6 ,Hr5֑2 n8N5De3FQȢ[sw(apjJtefRGُ?6_T3 ٱ;ϾG>SK]7ή?xĻ$ Ĵ0:ql: J.x& lЯ8rR,ɵJcww[W;K)4:~m$ٶF̏Dt8>R _;U4UUZ\L (LA .D.Cgߟsω_論;59ILF&Dt˺F;-?*xzH ]TB  G*ciBcmy4'tR#C$ѲiB y"7zD@u“p\ne F'mK׺g}\l["0bI{[t.݃@׾Dy\\^Z*g6Z%}<(so2"oqC]סdEe.=_MQLQd߾eNr[iu ;}- 8+נ~u.,Q/`CqHo=O8R}=pת]߫~oML_v~3{lLARi+NȜ{Om}G=& 10?jKD@SccD.QFv~C$6ȍ 8ߥcS+rXФ=&25~Hx$9hF;8_3A*rÌTj7|^Lp.4 yR?(”qbib'%1Ա\&RIǧ*G5[Z$9OEVs{@0t5a&f>+]5q}<~QU3 `@OCb`t?!6gSA[w!7@.[ꙑ Қ [WuO銩vը<8Zq ;cQ8y'iamS8=[8_SX۞ #9>6#𴻱$0;c}ÍE~xȏ ‚͏ݽ{pӏt:jĵbG-#rq{ͻݪ L~e[BZUȵyU<5a RZ 慊ˇZ:zy81;s\LL? |G4-w1NkE MQuqpWnf8IjBlϳT 8i6b~e*}d!|އ"kaX4f9 efdCFCk" MϞ"hr'˿gΞnk `6.N8WmƖ1&[#ujG & uQГaޑx |e xK9o_,mJ%2ڭjIŚ}}>Sy L?2$#6C?$+tY'3ʼnm 5H_0^OYF?:la]ZgD'CEhU(ytQ^N`qugձ ~)Q})#+gztgҽ𢠫e)y q  :y/f^ ^$ͨN$cl=3=Mx(r38&R5bAE 181\w ʘ9ќM79VFН|Y ^L"ɢ~=N10F62)l_ԢBDDB6n4NbVo _Z)mpOӝϫxQ6kX1BSМ6hN,ZZ 7cB{{ U~Be&[GF8ӑ0̬l3!!GV @ƩLhfnW߼<~DbBW󿻮Ay~ehw3%c%oo6I(}6*y(owLW=gW`RA \˥q^c#խ>eRH-QܨC3Z@֌ u\ky~J11BX6\tH^\sAĤ1_pzov6-\D>LNh9R{zg{]uҨWà ÿ!Mӝ 89B+~BAɬ?P=W1h/J^n9=XTˋTTig xt\/B`7N &U#)x il֚JuٵG*p6ЛE` E[3^9hc&󹈐M:_P #)* a^CVDn˚o,Ϩ;$VWhSgd_L:μ6XB6R]ֳRD">6P9mK1 >oPҊb%zQ¦A@ ھmHQr&_?N ѣBd$F֚tmHS5.[XMzxGˀN(F)mB4GN4d4S8,y@0"ٌr:W~&ӛ|r)q߰Qb-CE^68  Y꓋7Ncq, ^^[$Tx0/YfaA^ZN.%?>X#Wnک'} u IK p ܵ *h 1x&[ 1 72s5>1DJ|7尙 nPW]cM5̠%-ܣ>Zp&Y ǾCŒ:8aҝ]'C]([ltiY(Fm`Ȕ A۷Itry ޼ TE(ɓ]I|f=;VczK. ɕi&(d'#2$"tK/]j_I{c=nu atxrdҲqN1 b)ln衇4>"4=ψ; tce  -gJ 00]2WQLEX^{H]CTɛ/Ru cNP"p0r`vR8U&̧&;D;xR1'y! bL>ǂx Li%da#阶if);T@)@xhlAjmߛ-Mú1xp;2%7c2I[WE0nϘO+/ $!.ɅWD6ۉgKkC+HQF_1H9eRk@UKCxL\3| *S*&kMo01x'|wƥ'U5ܐQB%2W,` 0BBe>ڠ\}"T?>kY0)dlQ*g9;`]fKTr9yVih _5!xU)*eG+-GZ1DDѿJ6(%t +9qEE5. _PtnlZ =N[K !`o $7iA0nӏ]Eb79I }ޗ/B}2";jE)KND=c 6&B0׮"5U.<5B;W2z&?ĺu&ׁ$Z%85*(/0^O[B/kTV"7ݱ⬇#IfcuGwJ$S3/ K9 Ma팲H @wt/ʼ9Ͷt*$;LeQ2UeU! |ihC(7=r$EXaS0)SåT*Bg֛}^ڡE%ee,g-R2hW[ q[  5J0K={c(+(ʒ`#2%,0l&~ߛ%h*}.I|6VN(]2xE8[l;aZoGس|]nJ`o^oIQ9wT0 |yr0`F2X$oOC3yVtK NQ 5nLWd( .Di(N¨Ape?Lm S12WϏ͗Wj0 sT!7nIw.e3JƟ6%]-]zIoE-b!-IjУ AC0̎Ţ$f#[Yd 2i|>jWmE;?bx9jV&>mmrrP >' vqUD֑=3mD:991SIeZոbU[XB%P!3Mdw;y9t,0j9/W*ŝkk}R$6j_Zceh5 )pl3 jaYZ7 ߄j"eܠ%>aYE|kjԜJV,O$S|y2619SBȝrٕhJ ?W.-w(֦_gUMcLѝU`^8\e}"R\y|!-lO<4jM>i' LH8y0B%oKs[ L{n4,<I[_#~܈4GK @,x󪞯L on'9\MP=('vzt@2Y0-z ,92tȟ%[ufj;= ֆiv"3]/RX 7:;tPDĪo1xXp!}JAԟk\(vb+C;|(pw*5r VNxfdFq ` }Oe<,ژr:Vqǿ6Fsz.xBGM3z|.~3QxG~xk r ]tٕb s74wъ\"%`2)is*$4S"+߅E_ɾ\%0b3uMM轂{ܥ7g+Ki; HpEp[= PKڄGĵa8TzT)Wq_MFC_Lq{B{DKU^:t#wтt}k'=8#k=>h2hb%uPg0SI4T{2bLU0- ZLࡎ^|d2-[lܜAfZvf)W^1;oXmt%{]@o*ʞ%L} 6nB0g' l^k7I:pk/DX::xkmH.I{2z#/IݢޗDdVm,OEoHgyQaWON2no{B2W!ěDu'7-LB(e>α$tK9f[#_Ϗ@2j|gc']~ڌ!Uj8f=;Ba~Mڦ-~"\3 aw ||roci}Ro<jRy'6=:,8m:fÐEmO.S1?%v*1t:`NP)2LW4nqKBo--= FG,X`QXk1?C6MuO?Y/` O2>;,Ͱuvtws]Z2[Q@0c뉱YtZ$>^S[B#vĨR$,SNS|7jb!?#j| t$CпI0T jBЖk?33|8i즈^hǏaoO1`:wk[yK(邯')n!pL}A?uCw@>ZF͟p fDc 2Rab"=˙BWc?3#]ϟ+!ކN7] ۣ>" ֳڳFwȀ OG@v 1bWǹMc Rm4T!.*fIK[{UJ.MDKQ$n WV kɊjePHL i3[Xbo7 2ka! {~inJ'ـAw;Xɯ"tjƂ\EV]:I^qVͦtj+ SaA䵥*[Eܼ\ SEO# 7ڠo̍8a7FR HS{;ҌiբZb"M+Z.T]'Q}i)FPq踁֒Bf?sEUZ~T֤ΐ=/˿bH\@v4 Wݣ$Z\N4aTy50 dZ,Ib h2tI`S ec%;~뾕|#vFO;5|K;W;s+EEƁңHEg>W^ש[q]vMJPPt x g[`0 &`Hku#se*%8{:(%yjoYge 8Fה_2~RM-6,whb3BVYkZb*%VhK ~i0Apc̤ '1~!~" 3[&QftW AZij#WiTr{ma'0U[_O[b9%\ W9CjV`Uо3h0,^s\TV0ܜID?.8no(o_ =Cg0Bf9 G]̠Qkω^^.Fvۀx]?$yPd$K?'aċB!I,"Ĺ8HM Dw<]F-T3w ͗DC PN$Q*| `| W>|tnQy2?#J\Mzg.{V^f`=O3##9.{8vO7{İ]4uy8`CmUM`I#rcߘ)N`XkHz~_`NJj#Ǚ~:u,9~D8AO@0x2]@,g8Bӣ~[ zVOg^nE ;- C rߜfQO(M#qN95q] <,afޝx) vj@; 7[H{^W94MRnMOrVOz9sd)C $M\ m5yyn sq(0*{r\*Ģr o~W79sCTǓ?XZ o]f.?\`!F*>ld}!臧wj UD3d2>2cH-!$5Mo4Z6iD1> V>d h8'ANdr NR^M@Hkܜ~{̡{T`&"l|͝#۴H]*uc8`Buq9rfzVXPC\ pkꓢ ICTՃ6P{Ӳ($!(+C8{"FPUa܃@az@(yVg%Mw_a>дb#!+ 0_wY& r7 #֎ UkJh8T"egsO3 9пw{ci[[=o WJ{Ռ3VdVOOԎe=HWK XiMҔi?ɖ^=@/8b*=Oԟ:51Y'(XkxzͅrHƻ)/1jc獑zds_/fXljSäU^Eh1MEVFѹN!TOsdC[Q!rIvۆa["T]L{[VWh>*sUG_91uDjoZC N Ѐ aUωMXDZ۱ Am R@GBAao8T) 4P$٠rf>XGj>>ןxF9\ W/*Pf}|QĆOeXp b`=ce#Թk'^Xlm M!5O؍Y .Fq"e*Sϭv!mHFzFw%K)Hu E4IT#GQ^76icZ=zT0"M*l_d ˤj+cVs f1VWE"EӫPE&&M{ӠQCv׆u=Lv":R!2) M^R}:?[g'0hUځ:,}Xr}_9s`sY4ICԥ/ѩzRn i!d5F3D@Zms0`exylH vŇW{9Yq.Vhiok{-"qr)}ɯgb M^WlvGf񼾺 _WgFyzufECLF`$w*C<1M.x)_‡t(qMZUwdBr%L}L/u x:Iei(El(K.HB8O gX7Ajb\IRGh95mrqhbNCG&(2_+cVZʼnDxM^"XtD| %2p>V9`=^ ~'qH>!^$T1=!e #//mPx_6Yi\J1az\Ј@q5;aAUsU "Ljox ~#4ҐpO+Ui)cժGy˾J4m77 w C _*۴(}#LۆdGr9K:K%EbF@l34c"\: .a`W6|]%n a'W*Y#眢BXX}#\#B6Sə%. ~` H=fY.q$I(ZWL$ZGC1})Ab/`u|\#7WN&4"Mۖ[@S_:GEZi!g9KEEFs*P[-~Jd26Jyџ-y۳9T`nЫGhscF̦4dn$ n[E f~YGr:'O$N0Y BmxxS&Ц/(Τ(%nU8*~*3,Y+{+a{-N )f{=q6rBO]vJ7L$CΠy\,ٚ0ty>?רw)?@!JSz ;U~!"nuqPJ}@SfI B)quv̄. /R"N > j>p2OEid? [a ߚ]82x!^:nI5)Td&#+F^lsv[R|YYh&nv2 y@9VrQ37!Nr$RKhhL$ 3l5# 2I8Wh21gdakX a#'j#`˖ƾ[- "~,G:$g5s >ȰĨeP0;S-dJ@$z#&yנoFqC'dyG~ʨ"ڇۮCoe%VW< a&΍ug-9ixKBY=J)Y#E3xWex o >h,qKŦC.AWUYi%N("g m*d !7E2EBX*dz]aG˜Es9*{erB:pyI)͟FC^s=;7|YĘ}lO+֣)A !Bñ'!$R'_h _%B0NCw53RQئc./AD$+ZŒpv劉Gnu 1|}LWvj ~.͎W1vQ v$鱑D=rvMA:ͽ;hDDB{0uq Ť%qWcbGؿ&OP_ulʛfQ{@?* _*cnr#6[IY',ԐGDݚ@qq(=aV:'^N?0Zڜ?vQ͈3p6lC^m4~xf=wFQ3"́4 GӏhQM.k.+7Q)eqpi"h5 #)m\&3D1{/؄J+RD'uCM\Pv& &jw>̓o= b> -`lymŶ8ZʧEh#$%C) lkd!8 ʱ1dϱ1L)}j)7zzַtoB}OU [+?n &g!l9ZTQ !GJU[N҄=KU)mTyǞǻMO8nӝ Fн`H˱5$GtRB^,êPشU>Q} )G ˀA)6:ogF8kCBCB9M=uP M^}YDLD.[IXHDV_ni}nѰI37vSX1_=xf\6YBg7`ω 9P^?iZ9igCHƽ >Mo:j;l/ Bl!BMscwYo$fxp$Mc҂= #_&Eyt9HnoU7AC0Š/ʘ H~ /]:Y3 18sGS&JeϴDŽW5*N_.Bs/o%^pح{z,ֈÃ-=چ2]LmNZ.ؔr +bm4NKIPol1o2"mA܉Bת9cW'] R؎r}n&\-_T۔+*ǫl>QĚƾe0pu7fQ՘3o&̀O>>)ߏǕy%TaMB-#~ʪ >=Rqꗑ*^!O>{@wAv!DiVL(/a%D. 8ݱ8ClDaͲ`VWuR<5L"[{O ɽN5 g ՜ C~5X*ƅ%l4Kзcş@ x`%kD8Ioj5%w'a8ĘXmyƚ";7ڛ,?v3YVhpf2uޒVQ=*律%^OX'JI~79Se `2YjL|pPњw#Đs>a}BQ GBJE8ԃN\ G*RZTu3|!Qd4Z}p2+ab\Ǚ{%ϱs![m|ptGg tQ 奷x|zwm;``_\u۸Z8μ M8u2H{cj gWmGYV<x cv4k*͋AvjkYDPfPaՙXGȈQ3aȩ6Nܷ!&\2Ozf43㙧ul )3ryÝ4G}k w@d[>;q\."]2Fy,y;\inc6 L.@N6r;Oố2P;V>?Rj[$ޤleW vY!pe *yZR}6MO,Lk/9f⠑ދ4S9LxwV*\/TGY!k ɝM$Qv 8a FZ^vxAx&>2AYj]8SH=-G32&)5UВpB&}ckPÈј6޷2a葾C)/Ojsh>.9r2_6K a;TV끮n~#~m/,bG4Yi`:5-|fDeL%"W+CV+[sA$DX4oџ߯qo ѯvLTbjE>ibL0o4@+f/jHjΜ:SDS6=S1Rj42dHX4^տF2ђ="iGyt-n$aQ0asi. <$cq=vm-<(<6 H Eئ}VFu3Ə¨a U Jm9ti01*ʯ(&竡r*|"{iQB8Q5PjU 32Ұq \`P*7mF:hQ.+ۤ dܧff0i/#-%!e֙teͫ՞K!eʰa3 c!óK-V7nBcQeKU#_Ql1\ˆJb hqJC=s+7{NY/b-Vk#Jfvir"S>@pQ5ѹt+7K46zExFzr9$ C2d;Hκh^rbJ=<▲rDPIheqJ7i | "TLg,~}3H*RؘK 2  | Ia :Y UQjv*-!N*|oOa`<أ5hZIJ^,q"!-ʁ2 ѓ4 tirg.~Yپ -wuXCuP'_Ϙ>%7c)w /:xtg(oYYƮ?bEMpZe.B%3ƶ~WS^tLԗ9=;'w[8B7<(fBBk+J9:(> JT|1\@+Vƌ^ cR6iJ'O`HOv_'O:y| qN2I|P)@uZ]#9,r1lo82;<e-Ko#x6Bt%#?|)H0G/c⦁' 'eˆraܻl#E5wwD̒("Xa~P`(~Wf^}brcՌ8^!ݨr6]$|RՍv(1-EN4Ay|cS!3vg';!:G}_fLHrF@䇶ꞻ-PUc4r8Eф^51=4`a7,P)硲hUǫmXO[B\KcI!BN~F6{Fe`@Yvt}$C)Db<7 ڈN3_Z4-(s@2^&K PiO ]:j0۬wE3jfjeUONwj96JVb%dV8I`/:\ sKCcKa)ύT ɔ)`h&4d\<ɶm>ys?}>Np4>JyQo7;h'$R>$k;[XL>} LB8Mqsc4Mߨ5YiF͢e`?:9T7"G- 0g=:0YI|q rN\QXx v#`яpM齃qꨆ X.s_$%jTnvalOX0Zدqw336Y\@'.CElϏh3gd/)OG%FBrRu75bb> PQK]-\C@f3Q+ְqfU8Y - ;cn7*&tDꓟi'9kddW7Nw>p 0ƅG"ހ+o"n?JC+JgLZG4id3YhE׏MAD: C!>~¬ҭK\i/! RuV?eb2VN[-9H|y#•Ae=JXHd0QL9!֡%TGY?0a,xI6:_)4n{PDJ jeyeAؔW<:pLZ}yd$YdLN$*},(1YnemF~/^| ߝ만kvf8Hj4>7s [<Ua[j-\W x\׌Gn]Imr,u'섀-MXje zWևԫg-'p[>]z@lM{#]WF,YU\CUW(jP+- Q.[$7#Ci0Ca4e1P1XOt[|Ȼ`D&Ң+NVB%j̮@ybҶ]aJ\ΝQ1:T`2n,@ ~vGX4|"RG_M M];Ŏ6~yƍwcĨiUp4> JiP)8 @c,Sߒ*j#,&c}hƌTpjVu/5(ܳOyu]Amnp ~&qF:Ȑպ4l⌂S_#G=uw ,/G - ,Qy fףH|z4}7c2߀]i֤n5VbR nzD{d|f|Di;}+mMf uU$ґ:V*BtY 9?isKW#enuPE#m؞ȏz1kh݆էp@ U %:8hC0۟!M*A rj^X<-m#1Jl#!IM*hqfa~ȃ<ռs29_#?Lጄsy)Z9pL%1( <~292RId[خ˪o%ov?=( T E+ߞ G W+g)@֩A4f#ְ_-$x7〲q@1e3&g`F6 1Bs*oˀg ؒLYʪKxGF`˙5tX|`VpgVc}I!a]25O+ld/F [.g &nD~ɶ0ƺ0<$,-oЎnlN Z畔[+TPLH,2NSA@0 a\qzzh7z>!-/levyuMSk.kAskg{1Nu`WrL6a骰lCJICJ$P`ݝ&AG5}P\fTe_0y?bUZFψ?^ 0gon{"}k5|V0yH@K)/q?5f|𩪉Jmm@N^WxpdjݤcQU<EK#D}@RIW4{VJ*UrȖY7ڏEVWIvg Oɷc+ԁOR =s^2%ڤsjahceIwmm# 1,Qaۗ];FaC)J7N=#Mo]@ub 2`E<4z"x'An 13keGG>I$>B(23 EvN 8_< X"&ᶾ2ԷHEAq>ڿ&z>E Z|+a4KDrp:ѳA7$oa.uhqZ| 0S&Gr]ŔhO mb ;.w*VKK~FS9":%D ;9R3|c`Di>\H;&2 y!|L!K8w(}ԐYq| M;`'qDteJγ{&:RC֓aGEsv޳Sr⻜80孇rD s#`8EM8;VaSK:;;dM\4=Y+CUcǣ ߥDLz^P<Ɖ`5o_f!cd}qAٟ[ ZK'󋼓PY||0"+A[*,H˾#xs7p9iSI'ܐ+e̽R(/CXhzE2{̕GF ".%r"Qk&Ci+NrBq\B'`?owh;;t胄A-)ѿ@Б)z\^ˌ7v( .V7qp;v^~]U !fJeHOFݣ"^_,Q>ʘ=DlKN_e"L*OДj 3B*X KqX{a<\a%ԻF7* /?+Ϙ9v;.BӬ"(*H>isp_N׃3wQ+.{$Y-Ne?zx"RNC^չ7ES/7hTQ;Z>=mu|E]NLDSwdu* 8op2#M&1\V8$yRn [U\k_WNvl @1<ӵRNCtJ‰-'Z}W1mUb,~[8Fiǣ$[tzCo1gOI>.+~C#R"pʭBR =ǀ")?&q?0/P؜;O}]oЇ_ؚJO@%5~Gx/lk R# ldfU\ON(ђeKXʰ!1Hx^ώ op6\b8?=kM*yxƇՔ@ Us5R*./y@nJ.ECr֤`T2vVVo7:6ivZw{r7՜hF&'j(8g}ῷ.E`in``X]c{^{2/AW1~p=%w'xG lɘ+͙/Q5r ?[z*u `H]LId=HHל3J;Ʊ==6tlk}ƪ :Aa)Rf"V+KA_hU?:9 ?74bĥx] `< %~%b%([h)wxGo [D&7. gtcSُWW@#*hĬ "yV:gTڤԪnOT?O{2]3ZShr,C[8xJՇA.4wQ!"*֤ ' a XUHzp ,y Tëı! /\|1-D1%B^-| m) '0ӬEE–Ѱ/mHfG6W'0PB+IE/l jV MMX-;qɱOҒW7I 7>7Ҳ-2#.ge9nal`nt, I?3==}/u}窥 ^K"C!ۂm+8BNB$DU>IGi5t)G4&T{ StV͸"d ,*&Fv"'3Ӧ5Y[Wozܳ޼ևi8< `lnK% xSz.+Zֺ贑II)ekĉ'X靜0.:elǻ˳RjO'Vw\8-Y:eK%7[}JS|.+dL-GL ]–&(kf9V3gS0_< zcV ^lrd2;ja{J2#!J؍pn4X&ڿVm}ҵ ?8G6():vG#ghS:)hEӿ 6 LYђҿ6x5v>iLchwTmYE`OؖC&#!8`fb)$Ë5cL"!;m3Ց:z&exӚ4OD8#J6T2kW0^AL>~=9"@{fVX!N+ܙCWnB(^[:x"eQtDL VLm^HA ~ӔFf^|֤O^ f^7@cJ'1W,gcri#}mQFe;~= K_%%M7QTۜá9:?Iw$4ϫ̻KFjb*:@ '" IVLU[ToX! *6f{ٲYwKFXl%;NX^-^,GyR4 2؊0xf/{f玣kRwOԭsT!HMx:[#,ŻVG`:'-W'*CFEՀOеJpoSB.G´Db 5aplh@"xHBOqL;F>. x:\Ez񰌓sE4iAKʬ[:MC2@'b(ѿr_S8Zɬ8ۢPn&dݢ<2;YX3Nm'++VCPd/g̙I$RZILL/Syf44< Rw!+>SN{ymIe'yÖ6ԉrzY]Ƨ<)}GE{7ht"B58y[|s۝cy\2;L~N3oJ庋W`q \չ>r&6*-^r?nI a#c>+X=_j"Zm3X\oɉK3tػp~܂B8{e!] ?=#rG.p[I2tWWὭ_ف¯qHOO`OEZl:0P! ["(}z5!NMd0fckOi TI8:HQW6͚3N!GfgF UÙ<"UNA p;x~"4b)6AN~7CY_D?2ZLwbFy&xoJzOL\DFXO sw@jY"+eBfL^_8Fѕ" al"w59=FƋ";<6'io 6 O\8r3Y\XʖUʿjh:Vu3Xۃ9g&?Z@E>NѝAxա8ad;LZ$jz%5bo/\h❅t#M^Kx#-Dx[zAC_ Ɲ¦d?6jV3)<^7xb+ aETxU-UdQzvPO7\1iϖf"R=oDo TBBIѪoBnTޤMጂ\{?D8Г? "RX1jH*qⰾk:8.i}9@ZJ@ڬ{j/1da6l*F;L> Xs: uSx"KIY 5O\!}_x4=y<`6|@m `t#2J:;57ɶRP3>HA:gZr':q-}ٝj4OT'¤yl!Z*P"J#54C LkkDN. 7DAo'1b-iaM)MKvp}}F`E %CZOVA|lMUg\{>ԣSͬSs-?¿/jw@RW3X|cL?¯BUʘvOnNə^q{\1xnvN~;O5(ejXMQmJ,G?((渶̍YC/?ov x,9$WZv<ֵRTcar8vE(F&W=j;Jma $W)j?OBY%B8NZHSo > Ih.zfs_auv$!|E)ȜFKZpj&]?$ظI@`M$zjZNlN$>y4 avQY]3!ȁ4`(D~Pq ݦ,2z|9٢;/yce+r'BPYT:Q0gT@BɹSN3Qu 5.#Jb3Uw 7{PJ7)jaà׼c/Pg` 9mVBTf:Fl2L7G\'D0ww=bPDQQvAs5xnk-I!+>_!}K#'aʉ/.ǯORQG@0ujʝX<$RZg 0j(^$AN|')6bO0dI߻fR[@9JTţ5=rlIiu;f:z0V@%'RY1y:XLJ QkEfǎL_6LODɯpd91d,b!R6Z64L1B-u7 gGJJn+({9PEgWLJ:\fN[BMdjI:|%>uϷ _, WU~swES=-(4~ԕ&- EUs{v;wo8VTnsNOuĞ jɨ %K8Y%?<+~(4kָ PΣzoIa.\`8jސ*%0gs^n|4 D1һؗa/AOpMS'q绪2cqE÷X` sȩI.hg{t T.8"5#{˒)!VhfLa+H%ƽ(5Hn^'bT4uۍ[ $ݹy7Ɠy\ S0. ,ʋۛXI.}BEn2?:D ycfM' p:U 5VNjPTj$(n byJ%~Z`í"۾4/pP/Z de'-qfqhzBm5=Ȏ*6廮я+<'ѐ)LjP[5!(Af^̫GEN0>lς3'*X+=0D|a t/Z~{/ 4R o~Ox+}9!&0ԗq:"&ll&ãI}Ck2cIZwp~ʛ|Ai$Dx#zUY+ T@5x!^lE&݋W [cK4ߋ{w<v-Y!x9|[H?Ak=0'2OAY3֑Kl 9~(3,{UA,P«^mZ6op_5eZy%9);G鍓0.y~Lݳ h,fl-.& Y$1i[Q+_:7q ԽӖ˛96ujJ͞)pETB#~/|[M$ 3313zXy$ƿ@|^seKd?:4Rps;w:v{1!dPXgFNb_rA.^2<@]%=v#Q-, @0_'ە G@۔.%Y^߲p$QL$m}ݼUZ!=A֯^D v_Bl5d@Ms5ӂ$NLz 8 w]Fj<((@OHQ0Fl-jqFco|cvtLd#+-ߩv@6ɒq>(dQ񠓗'GjaPαU@ E /C4t2碙(HW&?MsWO+&Rp1(,4cȭFpJůjVӬ"=2*[$At-^ћ@[yELʮ )OkvCB9ZXyL4rG p` uDFQ -o7 !u=8Zk]og_NJ 0^jǚ)MT-5XZ51br` 60/譆kߔ3uۍ~ @Kbl^,IH z@z:^dv/4g#h~xig/ٲ+HR˔& gA lfLZªэQa w4Yy˟Uc*4 Ԋ!*`Hq8IK{Y|sOb+.J,%:ګ[/̔ˬ(q38|&Z7L!huu%mGbΘN'([M<wi8D$샠-&VjEqx٥M7}tVz-D:}+^+RU$c*_ZJӚ*֞߬Fe8XX:ҸfTH4=ce.7kgw hqXM+cL5nV?Z-E̅^mRC;df"Be! --mKλ>OOoWshÓ|A@=+n7|2i (H~^bϾuX[# `( sS*d({0l 94[91d ? ucNy=CS͆1VKMQqgioEʧ*8hEsת_NɋA>09сW|he|j5n"Y "iO :$u7f1MZ}t84c)gs@LSm!Q5])zO0wrz`9'ЈQjuV#Gכ? cCrX>CX2q?6AD w!@Ofvţ뺤H˩-xPU|Iw)֒YJJ;kfLHF9 MPDSSD(DwϴYCǰ{PGtӼ.#Okѵ S6}ֈY{{㲚vK[e5NJ;F J/]^9poK&ev͛qC>y>[0Oy,6x5qB'@?_B=&AHx._o)?Dh0EQq`vMˑ$Rl&Yv[x䣦 g~}faB !K+r1@3&%M<5<# $X@psqC$}zM9bTIBpxV >_{hLpOV/`1p0V0#X_/2fBdFKSJoz Î%+ tquʎR<9„X_VbN%7/5BFi|:C]%}N},]WqVJ$`j*bEJT\A6˴Q"tdؕZstR{UMD_#=he!(\lÇmR:@^RH1t,l,cruʝ\ջ}$ z2 X,oS&N=` 8(E;[Lljn5z[LLhDb.-*kDa9?M*EݸSwR8I-KnjR6(I 9o;o{2&Lfln;y5}3#™;NZ{~ SuR$cmF$R sݚIdg]2# zzN1M!' Q|i$EȖK"tCJ&qLwuR51 23rk(}`Y۟WF}N2Ì䅷ɗE}a~7fi+* Y[^-?EbKNERD0 ys#lSSi(W<<͎]l#U@[ n ЖوBgvR c)-Nͩg6Y-+KyV1De5l3Q6D~RRbI4}o.lEΥd4T-k|IF2]8.n,Uͮ WcSJXfK`t~U+x_*AY_CiFLݫuhOYXǖóܕEZacBxQsT 6@l7Ȥ/zz^|R,53XoOGi5bpw;jy?NW/gRYYxſ_ff"lk(hY6QzGU9DHdrl>P,,+@<58˅N$>''$bS{Ph[']AծOf1`eli J9+s5땲@s[r@:mtU曣:@Ξ;balⲆnDRkzlLڼ[~00G0EkԔ' $DRd:OͲ߲0 U4z'.͍(~xOPptlO{:'1ͻ#ŋf;:9|Ү-b-#ܓ1s!`PP46Ѿ%BlLGo.Rԧd@k@Fdn?A"060˟%qx"ҥ85LZBr:bI0 c2{zXKOf2?4t );U3UdvH56p\^PecR=!\OS"@:BfQG,R{ՔbLUu[Cd~ߟ"uM1}#}$ O:Q@-77P!NN=0n<* [&#PS"iԏm&& pn v ˧ɬz!~Oy&s q49bO2Yp (RP-oSl>oI#!7"`)`C e4A X/ t^2\,ڡ U[cjt޲.uy) k P}or7r߉d-j&-< HCb n1-勳Ѧroߎb[`lհp{Z\a2_vjY3 k<Þ 695tw$V#,2 Af* ?l5ҬL7Vv}GغBtkPR947(t'b_FGj A7g&Zvu<ۋwCyZ{_(hEX}GRfgQpE#Bs XmSN~y x4{ś0$hhO+ڤq]R>rdކ>ަb2L˫?#O.$Sc-޿фM R$'kKkVco$~GJQb(7k\f S1B aZ=G(`Y{U[=EBB/C>zQ٣mnP)EPy5( ei^c~?ETKgN* i)KHS'jOX 8uLjaNLŋ˛k9 o7HT@V UNS(yؠ?wy(38 sxWW:HHW¡g#?6xl PKy і҇KYdf<YLg+5D~?T ^A[3LŘN Sp z]~aI$j˘F$ 잤wJ߲ 䡆'-Jq9?UĈ*GuC!7aZh"TwU>?ߙOպ\ZRsjM!Ro4+]vHX2Nŵ W*ۚЁ܆pXmn@@N;wkyX(8-]<&|[D 1'M Sn8 wm޶%$f/+Ǧ ^_Xb3—vcu9!Օ_y(T q{P1Kt [$wS =o0x!R难iS](1C>e?IRnr(te5v3 ZS|xObk4eg$z[l 95wii"ɖ) a6*V ,&z\Zߓ`Irj ^eE|wY fvb$[cJI>>STht}6zPK=rA?$UJg Br@)GL q L =6KU/!C9"0YW F0b~o 9fɅDM$P_1x4UhCqa}8eʇ'([he ʐԖcP<&[U^䐶Ir7iPX$ d+褩lu,:YGY f!=6ç01--ABKPl(<66P"ZaJJGnZe H ,\7ߝ}yHko- '-PmlY>sKcSg/!)s[jQ"ymXZ&*zwwm^]f2s(f+EUhm*d\WTQ|L^E?6&{o8 ,_ՏŲ20i!@F?hqjۋq;,Ձ$1zAW"R)gz:H]g oQ5DzK?2NMntEjG?cKt{UʥeC\Z*} :X~L`Ii̘ͣq;Ï.zP_] u}ayY( 8¯FZ>Db`Sݲ6' Eо5ONZ(" .9%KA#d =Hiڨx#k<Z'd]鑁U`¸Xo5bGykٍ qP|x*jvIɢ\cz_ "Ft{.+kIPCЗ7٢߇7nѤ'-3l2u޽<ZOP ]2?!,>xLK|/?-(i~Md^B+Nh)[ Јh6։?XS2GKMsO޸ӊ`̑@J6 賑0 P%I'[rΧڢ2_7C$3477ip>[*K7d kN.ۺF/6J[S _[?rqXғLGHSV691ŰDjkdMk2JчI{Z(i,~\6>¬V *Y',ATLŝt;iV` #y>8WPq-eW]s/OdYiɠ0p?{7@PPdbO}芊)_E>%׷rddG|C$ZEHRȠ/1l v`8?Nbh+LLb5P2ZD(T 0Ak=izIT]iO@U~0A6QP=F-Zz iU&;b:Nx0&"=२n+P6hgC͝pȦfW,,{ͻF=}vRuI*;K(˩s.ȃ=6&AQ:hp9xvi.GWY-jYsOq.t3Q{P~6|8p6/:P! &{Tw08MYoUdBH+ f Dt[Q`MN0zgH9Pu8[;iB[*qAIp#j0{gPBAu1jD;;]װZ;ɣTD26*kqKSsE3YhRtu7rV,IC> 4E?|?#PN{;;vnMZe#m7 &I.aU`yڕ=-;>zC{a6ĩuRU1`4[, /ON_BV2skEoRΆ7|C[{ʸIct*@hn}6Gz7{'"IAX**;P>%|7FhYo4QPv}xYBץ-rM@Mj: =Ľ Ӧ9 ra!;,5=#Ke"S}p((Fdm[(VŜ]=E/Y)<e'1mßoćOu6S{/sp<'dH~ L⎮,􁜱% &A" ^Rf` Oplɺl2ZIDMƣ %B=YO+C=#2/ DrEa\ 4x8@h#P0zu}2΅1R_ͣ;A"EO,).!Umĺ!]ú*>Ri.Rg|MDF`'J#- ~C)KNZ%QgZ\:0P?L!{uoJ/; O~f|}/8:CyI~= Gd fvTgEQNQ)tnAl戅6Nt5TO(GY8@ F(KAñSl 5O,)fn|ZKrP!DCՄ@A<*&%v'><0ڭ1ky)$o-q&iu@> bUk:,5#! ަjiRZd~.YkI_ԅ@0fi &QFncP;=Aq`_`}.Zq~j4:Tx7 œzA6e{M=ǀ\OoE'$uon*~ ,s u1d4# ax+wyؑqüb 2 ڟĀN;/2HM&iC[R 2Ua[NuiHHE9ܹOGF^ϨV7&M0=/{`% c';کNk96kS1z*[[k^_ 6A(7  4ZqVa&X aaqsQ˧9Ɵ4;c5KRy֗V^Ҙ*rϽ_Oyy`˲H$;V[8᧬*s eג*06磃,BJ@SZ312BvպG&6Lu[f[b2gC4~˞6}d5?&w_-gPNjGUx~m{k  ^G/iaWM *$ {q2B+520z0IZpx 3ϰn* hoY,7mjxkprQWBx/Kh蟗þIG+~lE6Qh)GvwXY{=qqy{NDǜ^s$N2C1ʳPI1ָMuY&uNQ/|PAY}MBmfx\B $B7Ѵt k/'z40J4bK4 2pH^cÕh{SF܆i껺@FtܖyU0ynp4n}@MNDFlÙ;@/V=B.@7o $>}/_[sfBנ>b^:F wB\7R窺6loym"Q*>]n5LoO9ߢ&H€Zyu_ܼO & GKM8m:AdX5<䥷 8-NG,V"}w Yf%dE6X6wzD?pHƄ&2:dS:JK5 fQOOZQz=!)77/>׏@37H(+"(OF[Qe?ӡ4WNx3|P˰Cu9;`it] BW.H\~~. i.rADnT(mRޢ§޸bj:w8:&E:,9 x+!"P3 S߸wؖ)11V1=FApLlH;iSgRSq 3.C'v|]P=^GFќ]~֤(5,B]' 8|(o7ݷ2{/L ㅶ+oa?G9 n58v^hVPѬr4ͩ5D 'W#Q.eL[zJ*_5P4'4>_M N x0g8H)O |fRGٸ;G^jfՓ#) )|de<&$ h']hRT]"&4c+01 _w~9=|n_HV$%ԊzN (-V+ad`a ,OyTK1HJ빹?ӑB5?։W_d {YJt{c*w8CYp{CN q3QcsqiYv |ZV d T"AB$F x{ "ݾmU' v%ȺTxC(QRs\2Z8mpDCrӝ8HCt]=qlW.߯ql1_ W.wzN+JqRy _,$w^4ݥ-sr PjUFc^/`nԊ,4O$'Mg! v[I|D,Ȳ@Œw 7մ=a4''Rы 3s~2GW-Eth{ގ ɨ`MbkٟYf .J!>VKJ;sHj{ؽ3T)_J6֌>Bk#7!}3W6/x;|Ht`?)bx*ЫkIoޱ/2Qr $@ ڃ2qP >]&CixB69WTIN8z-k+(5Q[qLSsqՀCdzqf#6xyɇ!<\02Uty/8j"Zbd@Ґ(x7wz\> P__yې:]׭6M9>+9m!^,@ )oY7XzRZ3=LXzNxsM@|g ɔHsx ެ"-d񴵵hpJR?q;gxVDJB;Ll]ft4,u&bg%0P]_,,\ *4)c|xo]yidNg])|mBIْJjjP⌢B¾N[c _>^ a;0zit`JiZr9t3̓t-Pt+uvn1ظuEՓ>l{:?*>c>u$w[׀΄G[emC9=*2م$i"+#Ϊ KWsU85-=I; (r}kpw+0B7Z'^ڮ &VAڂwcijB>PXvvyۓ2Ih߹JťO~eA-lnu9}Kd{,Es8Q8t@x؊@T˫Q4U?Wo!-@!;K~ݐ}+ JFN;o#y'>. \^"qS7Fk~¸N`=+Y@O 2\L{5 cn SLCց9͜ʙȘ7|G6$N /th&˚&oڲ"#c6 miy Њ+bPgV.(EA6;~n1ɜ j[StXi+md7o 9Y| iPe|"C<C3?'\tcu*~ܐ\s}N[T‡&o1z ܬab4ĐFȼ(~P* OAZXޖi@7"2z ߓ `!iPA&c**ItYnՑ?]x3Zɖ@*6jqpy]A0dn_@)t?ZPB ۲ "xfcQk%5mVp%@.,/QZbܳT%SJ`4 UjyKBI.{,}pk\}'U6X3MYw{}fXovUHԑ~^/߃%Umaᝥ6aHZ,h.elQ<)iXIm'1_fJ<,"3g-!H"Kaw 9*".gZ(o%,vYW x-|kH[iq(bKY+cG 6]%y If5%k$8@Ug|SESZDSra*/ԯ: WC߲Ճqf^(e+4!=[tRtɼ"{*NQ㾪XC ňy[.aO]CHDh_8aQd5 TBBljILz"v`a*Ib^Mlw IӁd0r~d=\ n*ZPǢu6%f1oݬ=ӜIut@T⟺zdrɀ7{gG, nߏUR?8fj3rC U9.C\Ӭ"9NAadee Ҝbvmч)'y8)F,F}]܍hPƄ dQſ፱oM bĝr*B$H$) P v,;MWhYXCBIf-ԺVdrӛSS=Gjc4`p>|?74yvd"eɴUW&M>[B?@iA=DF{q|uhx[ڍ 1W*Z#cF8.S!B, -73ϲV _rt}0HqVԼ#mk.'iHB:RJ|cX͙si*Eb=0Zi.[l;,1Fl gjb ^ѱ,XavڽlpZVN^]"'k m|)ycqkare{h#& agtjQ/= cY(x<}=s#<ɛ51Uu1U`L[&M3K\6'Z2b iuC;ͳy_Ռ= DcTԤhӕIvq]ҽe{ͧttGIpCq WŖ$Źv?[)6ָԠݷ N/e-7jZGK쭞z [,Gы48rl!)V؃;ܧ%kGS;~O OP;OY`N_T3b)ʩg7|mo1:Er^ mC{ 9bkE⫠Il:^8^?d#s?Pӂ1| ;zxXVwINT.St0@^*dK ׻)oIadێp`Cgsf.#2cكԎW#ȺD!D;BnJ/.QG !'?.xG0N88gJgy*buMi`P'jZ> wɋzV'JJkuK4y?L"^i,Hh2dÙ۬?¿)_ Hf7+-i*#i&(dxVOCKQW ];ћF5KgsA,9(PZfD`sY4s8SO-i(u}s[WIL!d\S#WFc(.΍XɗhU[8 >lk|3GRA1(?㲰>ULWBM? <)ht-”&g*N;/# bHr z̀,j 3+-[O$[w=TVSh[AJBe$$ X7^hs,Bhl=0*'$}B$!F&!.W^-L̨kUVɪ A0\dϡLEei3R`Q>!;rp ,.xvj%)xEΧf[liV|rCiR n w9Y`fL'$s^zqJj^] UR؛K<坝%0eka9%n+y N`(`< N%Hb?Ivģ7ƪFJ ),`n<`bL~Ih,Sia@*uh:-ó~RfV0," @^C4, ݛNϹcP"@].cMFm8P_a^9u džDX*zV6zlb$ݻ]Ɩ.M3o$eH^Q3IhcR }\*\ VF'/~ܰ5sPy8> kfu܀B6Z'Jڗ JbѴcJ6==X;-ݹi5D}ٶH^v)ԔUIe=|8K3I%J{lm40ɯ{Pk&/؞OΛG s~T GGVmlVBem)xEok簚 C:(+~ $"°zU|bIz^HHຌ}7iΙD9P爃mo%<[Hu%`[q{ed61nBҨ~HߟE&(T_-@s{J0D_:W&׭UZUp'!2!SY4t1w嬑z8M[(*H:2B䳪oƢWo8>cRc $) - t~:xT6UwZ ^V}mJ.o,$^VDNOasb;X]0;B۠=mbM{tpۙU_E dz4*~5G,`J98 ICfyM9RMӗ5U<(&~ %_IU'4q9cc^/ݢ܈AbQ!_eZN{R'*1&׳/25nr+DL IդP~‡Ð5~7tmUʯ^!gk oENtjZrXƋ{xNgB/L%!ߴA:sYmfPj|cVŧ3`(*HH ~ڑ7P[2?w*򘋬wXdA8*VXKկ`YdÑr6;T!ZAhػs*?x{I;x r4c2s@+E@ dHԱ ݁E^H^A?7\;BOe` \g‰lnZѫ'g< _4mnl1Ye0hLfQ%s_Yۣm,T&4z*I_ o0z|ЮC>jc+ LDe)]󳘇ASCmi'QYxn&qQ.iv 347J]v4LAPҳډ 鞆% .MT8eRd+zTwHqV*ނ|Qix~/C"%/.jOJS%J3mzpL TۄE^pF9 OV{!Q]GrԦ !BM՗ ~;o@LhWd (-:KόqwaJuSڏzW8sG;]!#ۚYB-׃iҺ֘^+/t1>xew1 'JRu"onB);}rK9}7ydzQ&-e+]0YFA}9s(yeI_c nd?FU)H[$Z/D9匏/ʯ(u ȩ(󆻉)^W_E\D!O{ 饃K7LQqO^ FV]R-ޣ]=+<%q Q .t?첕 UJ naۆ >x&l=oS dnF3 wܜPC3T޹h9kMsWY DMIS%|jDpL2oxs;зr3f3,a+ R$ثӖu  !THbӒ?l;w+bi`B.(Ԝ~_}m^/%/a b@ s{,tfxeja<|&č% 'ݎف^PCւ,ޔ!\5n0+S"Nm[65'xՋ$Gbg,BwIQ(?G*3MRV !(Þ=ŢsTs&h/;}5ytjN2]I7r-@>ݬGtݎ T\)0nCmtL['YHPTqXv!j'E\"8h^b(9=w&<0xeX̠<~:[ ӂ63}KW u@gFiQ@M͎r{Ulm{UrK=m.Dȳ֘ՐBS:Z}#m R\(ZI(\vr숩`ʩ$`Y;l t5.^6$H__w8H>T jng v:cVhS2ܔNqQx L%Ah2 meD]ØϋeK7-R 'Wo-@%ꌆC#d\JUT;l2!"s `(#ʪi 1\ &{qP8; }ˇʐB"r?+0UXl[d|s_G"Q>&Ro)$nIVݭݷIhm3m31OoJŷ}dQy/"5zx!4+ϵ>Az8t҈rJIf"o[c`V0'еJ0SR _>rY㶎迭S@Z ~OzߨV1ܕf2v2}ŊgwZs(+[όqDPZzszɒ=-'(!tNq334#H_b8hsy1Ů7ՉW9o:o 8k>hDCjεZf4WDkR*.[Il-*)S۸@,X-" 1H, kr2Rp۱EYHzcz2rX9PUΪyPFQ&VF09-֢ޢG2ʏmo ρ ! Ngs^jX#BFҽ$֨5d^d[jAwkFoH8z Vke&pď/|UBCєdlA蒶8?W`7=Ns2>P`|qê=WEԋkOm:emJrH$*BR) }DHu5dA !Z(J ϤJR+-m%ƕqh߰Ĵ+ ̊&=266k/7y`ϡ 43]NsLxk3:dx]S Ec]^\`w)S>צ4Dd{Fx{,/P53a#|E! `ɱ4fGEdf"0Lv!mZEkkxa1a;>*fS l[#.|E7; r&[yL"{cfJ<? uF p\͂,E|KLjA&Gȶ k ϫOgen ӉvL"Ƥ_$ns5sjŰ#o/e( 6z<>4ƕ"u9?"sW~LM=exE$,"\2ouB0)G{li֬RIrM{׋tFV9<"q@ S&j[E%܏UghG"`W=.*i 3?UaZe7җ ;&J[~uGj (O/ LAзJE#g1 x<4w%ފoM$FIb;cr7GٌR ֦"p/_kc4 $ aǫz N{6簢 yc@( ,`Fkϟ~{oL0 -CVjIKt&ԑ J.b/ opƷ_x 7B&{+%+Onl{@u0?s49 d6?^)dkyOFs"yNb<=?(46+pf.(}JYy:"]bo2|7#\^.IBИ~۔ z;3-Stn!SrKӽ6:cxu`o;'N|jEG֎YvD28[Ai﵌Y`r~6_1mrx\[ PaMop(%f-HE'-b5[W|sԦɥ#%,w-cp~cZ&Zo@}dMc)KSN0$j 򢳲[Z0BE{F\AGHT<>f'uDeŃ\jboٓ%}ZB>]3G Z?옱{VQa`yºm6%LXef Oرߡ+)r}JCW%$pBϔMyb6ir~2}K,|*lN{k/CPNV/n2&SSӑKc+AYPĆ'oʡ ୉R9l2hS=y\zw^޹q XE4[P5T}Cd 6`XYqPwkDC';{c}5T}qfAHK=C')_mJO .Jw^|6v5zAmnגǃêP_A_u,OAH<~yܜIDS2u^FPAY3ܵJdZ HUe\4CKR}4ѧ+Zs[ڜhoSЄ+r<"n'] ųT'r`.QkI)&.P7V&I{;z *wMz5,4ےYՌ_d ~ [C6۳in0X߆Yb^_Lu`nfJ lC$8W9&xfE0Rg(8ghFj<)z{iPWLm(H 37 ~\+ŝ+4{G; 6~Y hjjV,TCjk7VF[:rSƚBJ6].H KgqVE?#*+vX7n #u[anvU4FFIN <!h9l]yc:Ì$`Y7t/ <,LPǺ )DxJ'j7^5zk0kkb&R;p .nUY;;p"Eg *4O@@o1L xPI '٥ڞ ǎOf mL10ж cˠ =4{|kd%9j7dNgdtva˽Q+6:"Fҕ XaX| Qɍ?{,X?n3#{z%"#U%.%Tl%_ڇD3I-vQN2PᩉC\# :>R.P]#qs'q\DXƗiM}͹.PA@.Sl4#|(]z#!qHC!_jsyi@<C~O@?V“N BiKLDzV"džPGݮ^XˮHLPhpݸ־ [*]w ̍#\+.}; vs4[&]-)Ӱ G>eGx|Qe|FZuAN|G֋ Ú!o<3 vDJqxɋV%-<# t<0ZʘLGdba$iɊ 9z# 'gˑ& [b$%)*,M&+5f)vkljL 9|6@AJkQWڏʗ O0.M[H6 KO flKV!]1$3(LxZ$RH%])8@<"B{p$WǺ]-fEd]\hI y΂xR|9~n3&Qm^ŷ,ke>UEViU[0?Op 0>(L@jF>ʮ]\~!,aVX#1'? -jgT}v?dQ'ҘMjڋe;#d6ϼpd3 7\-~|qW<ܿڥwRyۀ)A2|j%4z4s`|#\`3 [!t2-XݦMA-Mz~B1vOm?j%mD|8;ĸ~Mxvٖ:'5+ е2~=csumťqWqi^ z4 ",Rf2 ! $2 kEÄ=KYרm`,sJǚ7=jE.ԺJw DCK7Z>[|V CN_>r;[C6"4( / V;?j7:: vo_ɼ;k.oZ#W^5/0zMҽ?/HxԆ5W-@&xBhpv (Ċ;QCn&g[@!Mwׯǫ*zؕc:sQKims;}lzШ̓OlܕGPOFH땝0:vMة7 م^=B'=-%jO &RP8zQ4]^xhAPs(}dz+Bd61ž";;H0{3Z L9+|q]_|%s e:8ǖ"$x4h+~r@5;Ey5_QHO Ab 0>w>=˴kҊEGXց؃)nfvI| gxHihoSV ?]2wY<"OOT4883pE0HD4ݗh9|Cwr79I\/&ЌӪ7 bMl2^ e.a={uL cJL 'wrgĚFKyBD!XbG4N@֦V2y18zm\C4Pz-rsMW# 7Jdɴ yP &1|}aUbyϟw)NA3`ɠ['-ȋul=Cc,dBIZ(LSLJLQ&z˞Cox,豃9UF{Ai09;O];j7 & :#KN3v\H>*[{mfܸq1/ ՗JޓXbэU_u7 ֆ̇Y>%L0]0HgU G"mQv ,ޑWw``U wI03 " NvΠhr/S™ōaFgCے? =H^{H˭2dC.ߒHvá݋ x# _F*HaPUn'/#?KG< E.yJ6 :GXR Yx r'@R) :l4YK钬^v2i{ʈGZXd\l4>Pz= 2u&:7ctF&h)~WzՌ#76߂LC6kAԯ']As?1}du΢L1s$/6К#s7/rb5)9ogHM'IYB~lCStsdR1up gf;?Y g>?+@E,Ou6QǥѨ{vS}H/:>YKb=툛P>,@H81%7ceʂu@;I"xdwE9:a"P5Ʃ8[pK/dPs+;3'D{E] @ij~$~13A>s e28N幤BGb-A9~-F3Hs/"&]jj?R-@'% )9]4V}rg܅?G8t,s\pbd<an ,FeTk꾀 p'@5[9ȑiylH&Oeģ{yq][X[=eƛ%U#Q IJB =P=#cFȃlVeUEUsvZBof&}jWYiٰ=Y|B'IJժ04 ]7Tfl;ĪobMoZAX®o߆Ȣ㰧=Q?n@P8g!_ݍ}h4񏰔ҶVA YфAor99"QڹaWj-UzIxʡMCZx{/0GǀY1B2@B=)ި<)Jq_߮4bg-~q`Lvr[6=`۫Q$>3i76~k у(DQdޙN'U&iu2FRcuх(EyWo Fb}6e~2E@+삑䱯QIC&3~'XAwݽ~NaaLVy{4K~0k]lz - @:ƺM2;\46m%0O+jwGDV0oasS>G?-އQ/㞯7#[K&a%ࢹwJ$ D;uT?''HT2%-̞^R\OZ>kֿ}7}c#>)S4#ط|ؒV3|#"&},y3|J&Vd۾l)RoDZ?>`?}ppNdvjs)HBnV䮄rK$с!rO*|psr.#ٸx5V'} VPe5U=ѣ9{q*+9|~ 1zGԢYRڦؠ6y3.^O}nm82'c+}Dž&$W:B6(wCpG@o_9r8XSh+>Lip]r|%Ʌ}PeFyYB"yOE9*"t4'.Z8d3XdNޱ<>:i:;ʃ E bؙǿuԪpFV,I*?lÚ|K^.›b&Qgk\T6^hŭ#m+Sk#S Zd֧gh ծ-zlM\GH𩟡AJ췆ߚ7\8`"U])nk6Nu1D&@սPz2Ъu<0feo=@@LJ4v.źhԯEh(κ] a`=jI7i3mDÈ 1靶 @h#pA|K-W2hL;z°ژ͕Gl_J &"  6cxXۛVF/ Qpuh$Vh@ CpլH 2 Ꮏ/YIFHw^d1zS $SZI*2uY(k.4ç sQW?VX ~}ڝ}&XB]&3 yuvǜd1Ûݪ.D0kK 3W񻻙u+/g*l6%".$J,Ɠo @xj9_m6N8z@uM^WtW*mjnK~Я.q7q@{:2 QF!kHwa ` =]nS9]Vo 9/c=uMSƃ~ELn[驓A*[h9pCqj@7SuK*F c)vyE9})]'v+@e2+b%0=z2D gtVI=3Vx7Q7$0p[gA"Vo]:(mM9}hhc 8vOwj<̜^1*yxlxė7JiET@oÉIv`]Wfon6:M1SPƕ-30xhqH>tbA:`L`e١g dKGl ~!|O>?}l•t4ΝD @d{Z6+)6DڒR$ <%v8FW̅u񖸼~G߼Aƶվ X=(l*u<݆ c6 h(5l,•j<> >ZGN>+]ID5pV=mg|/]=`gd wiٝG3. 4"Nn}%si3Y0""T#<%EXI^gRP"KJ3NUܨ _nRΘgDŽCc6ݵ-ɇq Aby!xQ%֩|cc[lc>Vq- ~,gP.M8Kw"+QȁPm9c"qgFé[diƲ+:=:4m{s\!zDvMk aAeu8WvVw^ۺ6Aϐ%4LjmJ)c>4>GVDl[;dXbRU7rЍJJ;R_ZNǒn)Tbf@Z3:d;@׫ ٣9?hezݳgRúfb (?-"Q"@(듶\QBs\ޒ>q >+G84S޾ OXh5i7yl4}eVp۷[l<@zOt/7)tϩT@2 75zcFVC_H4-mN +w'?7gdž݋]LM =Jf]۷4Nc%3w 9{d)u3Rjfkho 6< W<#`>M壺xq,cWnk4jYL}ݹGKgN4:wh;@[SCװgz{4x&`۞Z-L7SA(˦ɆBiД+^1zi)8>L㙯)5 T!?mУ >:+ս0~ R| &@\J.Tp1%  gal6IۢxjhX=k-xWsܭ`B8Qt(]$)0[ 27T`̝Hon.Dkbm2*{|1K1xf+ݙM^qnHgXG7jUrkUZvܽ&4>`usYz/MWm/zmw̾ zv!5sӄֶtu7+34oD72z+uvy8(5}pyKu G[[tQi '(䧝Œ> g$0qOm(ݘrr0~e#[Ў|,m2iOj# *w q? æra$% KPpLwWV*#)NM1i^TH,>yFqt(W!?E{:=a XXTЙp;ӏCmGwMhҏ{rmtNۯhiO϶Y4ͦ+{,yf9%2q2B /#gwBþI-5cpUf ,YU=VRЍ*ہ=xIG}Ar,3Va3zU.=@Q3-ZOI`:{`K"kjF"Ek.Z _S*Cyu2.mk F{vgEw0Aw4@N1+nAQ`cZ+9{)U튇<ܑ5،(:+bC_B}U$'Iv2tY#Id|-'%"*͘$|3;ݯd_3*Ytƹ{( GܑfAL_HAtGP\Vrtrlͩ!z􎯣i>0%4Sp]AKL0_ lvYrS2&IId};$4yHcv'v<;C\ov8]% t >-EjY 0Q P0,%)q6ws1JYO'i*2\J %*7yv5"h.4:ҏ?_sj8nΈ@ʝ*WAΪĠut,2J&} >WJߥFhtؓPbQzYaH筻+ OXX#)["Yf4#ĭa 33C<n_ku̅~b#p '6 h8 !9slZ֊ᜲ6=P.2Gj=tv SdK<$`lx@c4/xNBض5)D H志&#.˴wc{g_hZFUUR7? 8i.bQ8s,V{KEe;f5lw!E Htܖ[@ ,a6cg;28k"y wʀӾD-6tT+NT-1`OPy2מK#F9~T#뱕.7dddUa3fsmnT)ed;e FAcHaPK R(4ZQ8(;d%wLJjG~ /`Zr n$62H'g -MFNe}\|h6v˨3&`]%@FzIxM™9@Ô!]V =G ,7pHi2Ulr() 9YYq6\TPçM8<3z`Ǿݛ и ƤkG#`"?񴴫n-J$Qu@3=0,\cngf>B;RBD4T {2 Sd*$?t:&IVoR‘ku4$f Ȼm=KS S&nR6W$9|mm%K!ɨ"}TD)ᾛP%>}sn!o;O%f [lRJTg[xV@N? C|Y/6^2Ō3X@_ ^ ן<"~Ga2VD1xd07? YwaUDt`*[>N54*.p|j +ULUCpA%~IrȝxH)R0RDO[ Mnڏe>n!ke.j_MhH " /$x}Ҥqu cPP=]ٿ`O;.'ouV/`jށYE\ىk0NdzN96Mt8O.r!k k4Kv)qu ئ˚G/~G&o0ȟz#їbG .UPՕvŠ_T]f8TAUb0bql64]e^ءH&ͧD=>QH +|+s|ѳU6raU F8瑃#3a6ݣ&́Γ8Qe/Jzk똞NRA+/j6-dnZ%a<{}"rX} BpQ¨0Fȸ v8plp-d PLq±i֭j@MMl4VCo:4C`m'l{oȲQ):wƜ\[Ab*$I*4Yot촵׋ 7|*6Y 暧0ZX_zY"lE}fC. *|CϘ/l_$5jOڍ]u߸a'a˱V۾aJ go>] %msgH `'f?-OOvTo^J 9]0#-[-Bsa2 bC"a)v#WGrX0T9]n 5p4BTH5Ƶ@̻49htšѴ!F=YO 2aiLdzKv6M#{㫈)Hgљػ8X%1NbW T'$ U܅WG(+щL=ȜvȷĎ#MG^In%Vۼi1ِ.};33diIGЧH0L}:S:"AOC>S'&^ѿ<ݜLj(1Ob6\?C'e'-5\O+Y+2K(s X\~aXZ UE~$[tx1:*Q69Vu1Br5k!O?"6 L, X=4F\1t$ YkQ%b,ܦ].d4|z;!͹ sh+<>}%#ɰiDC1ˠ.Eۃ [9Kr7ҫZ6O"Pzl4>x9uB5dtúZ ԻgM!2 esL ̣}a]lkiCm>splgYQ4#+hX+t %p<"ބPC%;{cluʊ =Xjs'Gu@4:Q#[-C Dvv #cT c`jXqCśMљ3I4q`:+:Y58mmX>7Ǚc!$~wlm`B;CcP?Iq5k+f‘qs MtǨ$ @8/&;X/vvuzJ߆Xiw?xrez.H$@lb6 MXz hcZnӼ%uU)Zxg oO{Hy Or@VN1Bں4 T*N鿖Sm6ahl; ck; Wkx\C־f_.оD9zD[ОYqe74Nk/PF! {"ޢx(Ѣ44!Tr4$L3lf5jB6KkB~ǣ#uFͻ4S {~|HC￳s҈HyvD}őBF.ޕmS?Bk̆hmSa]bj 콌6:Eg(K+Sn.. L6{H`!@͎)AesS26ݘZYOPh: xNt/ ^LO|Iz.2(% :wah ~ͺtf(Uf|nj\B~It]/͞=r:G)D;rlIfl_Y:nrSw2*x\ ta~  K^af|?oK}cD,v V{2ʩj;r Ɉ<| %>GJjR?Jfu6/XAEX`u1] ȼn2k-pp;~X4E+r Y꼖rnvEK\5DlUx i]ok(A j?DQ8nt9XGM^?xA^EX^uK 'i*a GY'#fa8נ4 GkX߷{y ݭ~|t]#H\YBYO83 sdʖ^x},EWkyt~~I7~ NʼnImI`j ? 21Kv'Y.T9 }o"0%,2^ed pUIe{X|0YU=C Yh ]S4hɱ([i  L8aH'0?GN!yLjLVOH: r?W=PlޅSvHk~VsrL?/5 Z`IZkNJ)hq:pJz"jlɵr#V5 jOpyԳ>Úk˦ Q MXy$f״ @<(gķQ:$u!U靤d.#펏)\:׃Jo½ي3^@tB'\ParQqP)_ojҪQm'6$b7ILJSSޒoW?s 29DLSmj긦$nԤ҇;.&'Y7H}];%P k OǃOtfTL8vQ}~EP\+Jr=dFf0 ҡx=bc<Ȭ z ^Gm!ΜR )&^}~I ,ąu- q ӱ߅V`+i U*:fUikH¾EWfK~{"}ds/?U2Sjo7cs2\`:&4n(.>,vvkrO;/ +#̧Q/j7t8zlcM;"\$ k8×NV $XkR|c j {WJE".I}PUL ZϗPSRAYDHބ w*]K> d3BLxU/kP 0JIд)}?ꋹ ;}dqM7jw{TI_C`픍Q4n@ s11,ku-.3Ǜ#ioN`csHGǠ0`[3,\5RCwjWP'M4P=i˝qPpPW],09-sl~"uE;'V&0=51d)Pϣ2qL5,)g (]ތdp SVml>8 JBf 6Ǵ uw3f+37Ip@r0hBܼ tVsuoQ[ 9.A8GmG_ir'g /\sy6S%5/PS#8ϹIxIS>G!|䀸b,m⚂WcZV&0L91ok^Oxcj_yBDKtdaOۨ٫>h_.,_:"L郲cQA7%!sVmT=U]#B&At`|';IN[o`m{oR F2~|a`7 4*UO( 4K]XP~8(50cS8|y)J2ro&0 ?Z%UEBpl%_C3﫦T9+] V-k5Ӊ㶩?pw>o_}f|X߇3 "J0r9!(øm`:89`sUB}kAm} Tc+ˊSU9(4̅xwFo{@/hOXA3o\5v:mfi#!nrPZ7=Mȕ~eO3ŁDQg`6 $0[ԭ|'nP5PI?y(ݧ׵RgcjfZMa Lz!>d'x }9$Ba&V{ vprLa)Z:.bwgv/,~IO\U#u; AehZ#A4MU6\1׃I[`^%$da1tMhҒT4MH|׎@?0DHww%nOp5z"|q껱 $rj$BԁPN\ Π8U>7교4I8!2Bvf LTRIb>yZ0Xu$z{2,/.AO/ !! w=,i.85t!UELFfYV0Ćcv;݊ɛeX<[)C|\S~FpՌ&{n)$LeQޜ[3~%bJl/`yvbqgp n0Nvv]P QI|H8Unn`T_-b`!ɡ{4)>1e(llEȈc\Yʁqi^N+iQCChQٯW O{AFPS̎bWj5g Lʑy^=ԝy6fQz}{Žͽc[|ăzk't#IHdWȏAXh]N%fxg#DJ_b1PLuVd&Ddj2MϱoD}c ,K?h$ ŒIER}M0 }=D"T{,-(IhM8 $zT]t0#^Gn^=xЭT36ZZ)f ׈_WGg: $yP*J0M-ͭwC:1s7f1n]DA\ p 7Dj2MC1 ӛb8HN oF`Q0VKWM@%JsWPg<7k|儞KVqʈpgQf 7sAQw@ɜK9WMbmPfzeI8|^RD g ڬEx7t'Nm8yzдȝb:p!u~xٍ1~فq*" KY! ,TQE $Fe#Oe6L'W: -М.jFYmfq}M=:AV;J&GҰl`)W,}5-lXNOiw_;[%=li: ȽS̥z;Pãy檳bR[nX |R/gۉ m&#f#lPU*~ur#rLP c-!HÅąBL0n(GiLOs7Lh/^h0Cߍ,||ątWcq4bCk9EIeJH0X:JHI lږԷ{1|KbU; F`{4,+k`G{2,PS;VƭC.=γL_3%',rKETp¶kE,zM- jCqfݵOEGxlȠt.4}m/c[y'rȉ& F^QKDv0Ey7r^ R=7?1Ow =u-5oeXwChL%87t+Ӿ][ (9=.hk0h311SCZ@]b(%s\2"ÉEI$Bv8LpK>;z ůEmHRAyl_m燷8 E\C e^uXPym$Ŝd4Rv-h^aP7=/^ A_:ZV=QC12&)YK/PlxPI#2jǷQ8Q"iJG@+*n!+hڮ)ŗx,PMJa@}Qg?( B#2dN5lod9@D"=3w^iğR>kQ7g) SBK +PT۝4w6TV2˴o npB,%q>͔f =- pgɢ"ADb++.ǴeDzO?sdzc[ZlԆN Mo FDWl((j*nhAjϓI񌽖Vg-b޹25bH%1 * o >)s4|h+Do kQ4HAS5eso‘i=_ןum$( )驚lst}M/gs/1 ik -zOUXZvԲPCl,6 d!zsddsNLe%ss`B\ U#2lI"ulDĩA8ju? >7IS Đly#銔9yܩCa)<TɏK&;]˒"Y@X|wob.XŶkS9p#XMػ~ϊ S}u/HR뫸k |E'*%I:_=󂧖iq/bJK.!*wl1g*?0WfPWgEL[ϧK(AJGQy0fŐQO{ouWtݰYD>TnF_JR%j*<;T 7atu? lZ&KK>T |Hnpڻ/٬u&Ioۻ̨J\jQX'[OOUr?8$o9U [wp,NװlCØ^]!$w`#{s!5$ƼmT/Ow[38<LɡHY Т뭥ݷW҇Βz9%`ͺ`ڔO7!7j]w/ ^gu %*4Jwz@KGiCph"RR+{L%޳\~Jcnh4ǴMD4?Rs)Y9Ie%,k"6phq1yp_r=ƺuc_9qruؔ"H;~iϨ+@Z2ajc֗ܫ3Suo?x %M17/sO+GZm.Ǣ;7c)װ_f"0MJ]KH %U f!PL4½."'Q;u(#A(ȇg5\޵'B ?JMڇ fC50HԤfI+Wx5JYQd #2GGXl'-ְt{l?8au`ml N'#f)+Ae?3k.M{IB?ܝɢ׭= Ub`Xr(&Ngw[pTO9 S'@f:\?.J#5ͮz;{/973<{z"`gSE{"B,#_ҚKRQHJzyZvK=X48¥xrvx' 8ۚ MUn#εQhrM]s7N\Iny=33k<{vL֘Wڠ^CZ{mmHѰ(UBK!']F T?(0)\L^ ۠MZwg{ m&̥㪥%gd~Jy, Fwĥ) ?oy&'uhlmK޺$~9hvsE1בD2@1fVsZzO ҍH0YV\>8W'D8+K4%OL h&SӅĨ4RF,Nϔ ^zQ珚LDΪAs L:\B~Ga!afk sqNfYBp-J&^C+./ʃS$X[_)V3.1TCFOGI/kdǷϺSY;V}㪬E( DV'^#/$Vq-` Uo(۱@o{Ņ-saB#@0B&e8s y_e+"c(6űm}L_}22Xt['cCq!L/||޽36[Q%·>+̈%ˬ7 eTn Y'+ӯp g\\v4_8בڑǚ+Wuƃ ! M2 4>l:. @(&QVr;"LIĺѐ]jZxXDuk$v< XnUgZ@?߿O~+)#}QZE~elr2Jz*W_6Orr'L ewMZ3VStMilxv/bc'[3?c6kF11k ګNI{))ɫ)Ld]2N#]ʁ8ag ƽ Hi̟yADVY_hEJ8 #L76zFM}7?ۿGUnqV&ޟmf[#"LPKpJzaJ ]?5Bs=6?ϼfp;Gp}lq"Wnj'Fj k ΢_yXqwwdope 霍ra %Ɗ!; {YXǾ<-{/_QPuۺ&@SjTYkEn[!cv-C(Ge->ޯeqhSǍ#q\V6uE a.ijLB"n|6߸'S~FD>R8seqpNeCTxc]@<*x~yS?{Η=9Z^*.)U&^ORj)jfk#:N_f,~^P<~Jy[ETNrqHi{~Fq[pt܉t,T[3k*߮`{+-~%h;V%gJ|-Ҟ[k Yoܽ AO|>HCѷ~RE)nCge,9\VrLwA4 %xs%nsc6XS-Lc sr i7#Z дs3򧈢XAɖᴡLG 2%jǰhuXTEkfb,]̌ٓEԙF;PpQhYABh,"0b>8dy\rl@QZ8v7l #d..\ii$2!٬؉1o\ X?Y.:$yٝ~6x\YU̻hJT\ts ǻZ:.u6zhiu|PqԸ|\a\ILA2X(͉tY$JЍw`&,cAɓT.;bVe0tlCf4رOy!sZRb;oqB́LSzŁ;Q;vCX;X[R CԊlD"U9dj*?/#Rwfᇍ9pj;Ȩ$MyQkU/eHJoU* h<{}P:uǢ|nTHdˊ_A@x-hpEIo6IV}$}p[7={s}uWy̒RAM4vtN(Q'm_ ˷qݫ|[}10S%v>]]mNSď`ąW65w8spҽfej΍zݴ,\0G̉7׻ 2:)H9OAIx$qzXgU3>CG(#L7~D@TRHlޭ뜦fANua 2)6M~,lkzVd8dG:(qU3Uk,?'ga_yr_{GD]jO/pR6 ӶAFvB_%&apAjc,M\9R#Ť9Tx ϑq}J4X@J;w5JO?鵦j#iPf[BXiv^X?QtC_Η^OO&mȀOOaU*lI 7FQw=W5 GQO϶w2LJh%H*xCu?hT/JʑMq(xfn%HlPB~^49kw/ h"}aLٱ=-,ƞ#x91t_;;lj\f0{0H/|IL_P-޽B[G.Lggeg}NBBYg0W'~% "ml#P: TK=2ZOG՚ ͒ϲGI\J&>/fXezȗڣ~@gCky!Md'j@RM&X t. vkߐ Yx })MXNF w0e{w}mWtɾviBwRIYJ@' *u#9\lwZ+"vШݡ*pI)!,c Dg h,R |'p =KF%4xGkw{C!" Fx[JR39k留0iOH‹x+jVjH#>or:ZZ.aQGT:!i (W`$SۢmzS)5JdYG|q-;SJrt@+ɔmxXQ3D_d,x*a6Cjwc& ᄖ@ IQz}{'>TDFhM$Xϓr 6tf#[#YI6H׫R'"<}ω#aG d}~1:H7@I( <!j. bwQf2ܦSۡæ]3F^-@t&4ͨQ vl$BEk~:E> |B?㈛Zj}u ` kT%Bӻ摰C.- kG1.j%LyOyø8+`/烴aLjI Ug&r{ 5k=m[P7fypzK^s+89Nx!u`O$-}z0wҬ! 9LGg 4 gdQtSU '&c= 58+R&_sKY.,r Oh5*n FBmtNjSih"Wu(K@u-l;H)">g WK[ʠB/ҸPj ][Vz/?و(HEʲd{z͚#i$4wٗ2)=بe.*S{sk^3A%#`Lm]mg0{ɾIoJlb0AoDNjlu 8$N=J0#&+(YHF^Bd[h9gT2R0D!m@#|x($85Pn[JLB尝'+qަk帷?4>$ (S ol V -Hjn 51+c*4^+ <b hV: ՙK eE\yX8|!.Ȉp@1~ L`H g@.)Y=\;Iyt8J8- B;>4-`\>@Lu|cۗmMc'$6J=]&N񇎱i%PIi69 QZۓy"d6w-)ZoAh')0_ i;~F2;Ϛ?ڒHC?n7T= T& .KBiLU b痾ψOȥm7Qh?LxyLAQY/S="W%o`h꓃S52QZ^Ad!dRKgTkz^gE"cR6܎kҊȜN jgwL{eZpXYRYۑ%: M9 gqv֏W/D[Mހt؀Ҵ5޾(dۅr ]4ᡝ(ieɠ_këbLQCpx_|h!tRCc< ]qOI:-ܶܢH)_Eaa2-OՃJD@UOt/;$ۍϟq2rġCR&}[{CI? ;ݕPFHyb{`^'QrY%ް8l$˧9mo4,!frҕy^˙N Gd{x=0/*M.#襌@ljdAzVJKǼ\N M $x0EY̬xMZ -_U=ڡH7)!T@A)Vφh!&v~ڋb(ygr/Zr~!̯S19v J8њCn2fUFf!Ys>v}Oe>z 2`Ž ,fAix l6y2N?;*D&3VQ9\M?X:!ũw Ɉy<ϰCX)x4;l YyV,c- 9GXܣl~+ԗ0v{Ϊ7G9V[TH/TNL%eMUeS]/w@4egM 𑷡{Ŭ@GLj 3ɚ \J7JթS#xWUe>}NstZF3%ؕw%P*`M &G{.-gבH5&.>,3rr~j &(vZ`l׭ӋMFvE)kbx;aNԆ ;hF'Pc8w_KV ks7BH2tC p_;U_Š,'ɾR_4?u' .b]w]{af1>W8Tψ"6/{s_,\txR qD6qШUZ"> ۯڂۊ1 $S ̘I6ؐq:4[ PuwC)6efw t7s"fw9ʜ\"{}TF- ٦!bk"2>!’5/ԂUVU3}gzfJ~ʘsˇsˬxmݾ᳋4֚U׎3 5!a}N ?`;!%mڣ)PA; -DCvѹS[Ddm_J .ӼOZ <)DxX*K4MG'Aɗ{r]k ہh{gԾ4JdZ|`AH3mjwAҩ?^ЍH<,Zu7u멫iIS0Tn2cD }H5V~RΈC;"sϢ, iK$ΙJ2* xj>3c;"ȅ@gXU׭՛OGa\dGKU<{!c)pipA9eVme^5# !7fTnclHP}KkWm2D% VF=] ;_6Yx~JhPR 3m*5RSU?f!.n,%yeY2+ B[6^x}v4Q9шI|! sWq͛7[نլ'E{ ΅yԖ4Wi\H]+"B;nZ*x?ΨϓeES,6;V+*t뾝Dĸֆm /r(L(t[ d;l<. 8^ȱ MڷW!5F^| ,Zi:#k%6ۜToʢ8vlxњ].ѭB8ZcĩSѥcYfLfrmn s^4/"D۪7 Bʺv1$c-VEIr~"RhPi3'ZɬJe"]ODH銇9mZkޣ t# h],)Lns#U0 {W㇧èX3Yf[Gc82 R^nQI.zDHGN? ,##Y_j^~zauK6)͌@L(~6a$GlwQjj5Rh 'vdž,N5N=][+RY?5o鬲{Rs/H}h6Aj'24(.yG4t-Y:jƗBrW[`ӆNKĉ8tGAQ(f&n! Ysqf d6+QZ[+磼0HFF@#Zjp{JX#'᳜[xԣV<-63SП ܷ`$x_ޗT!V/Y$p =xquwmfήLNې7={kS{K>lKo?/V5N&SB< {Sg:3\2ژ#nȒf d2O ,X:{HJ7,<~%8ާ¶Tϑ_%+6"^#ТAR2`P"`DPiׯ:<1ͧhkLy",F""a-}#S2I)` ,V-$l/ ~.B8Xvt5ny:ܯQcU34\tx&,Xŗ2r|c+kGbm`_3/`K:YG$~6s%tQ])l\襶OeHRz&hО,C c0G /$ƾ{lZaSV? n5a-L8Su^~DNV Mmy]X Ib&8/lzgkG`SvR9&%fRWd SM+6ϪvؓQ ۤԖndh9JVE'Ѿn$w5ƹQlG rs|tN.~DPّ^HOԇa7^rHiynut70Ŕ[.c+<Оա.z̖x)x&% paSp>B#vad4x%-} l #1!קFBiǃ bB)1GUĚU lI Lj<31e/ )|imIZ alđZz))$pŏ!:Y hkNeܒ3՛zG) 'өb>cH'NR9-uBS˽?у sc. cv<${["/&u"8Lj!Zկ\>DDf;un'Dhx6c҅Z`:mY…@Gܷ5Pz/*f3ZR'PRT5Ҩ?9.HNE̗;N/_~gnqPJRT R=Lo-a۳dnmu 3EнҜfMiQasv% KQYhk P볁*YgЂC?W[yA<)1]6d0~j;ϐ%˜: >-geAS_XOj)Z TгK᳠r^K j M/gxzOKA< !.)ϲu{nt-h' Ydy![KASr1ؗڨU++.p<>(I[,kNKHEUx/A Ť8^W@n]/c1eo"wus2aaU=gRn`íEv : UTl:2}bU%`hSP7EjH2$ )+>O&\##Ao^~̆Ohjij/olU n!>n"Qkm ۖ*-b%SQ[\PL+E٤IwtBR㰚M͝,JZBhäK1~D<"6/matK|b1~u$,)hd>z6tK?H $YV\L>BӢ6d"34&O 66H>UCs] Sfh)_zt)]AoUTiŕ"BтzFx/sX̑JCg-?Wm c(vE-Vy/M6 9ھmSP֮!V\Ո-Mhrw.8ɪ"5Ay #dĬ,b0 OsdڜuװV>hRr`QPn7O/OrO>\!BR iCJ#\jjlw]^hA)yQ睜wgDyil*Ug=컓ذv!dҢyYk6> r" &hxb:$@v" cWh?luФ5஺Ͼ[Zу5EQ2m\dYH[ L}N)|K;.m%CAiٿYvd]pshRvvL["v{&6#ըzf-x>rdSp,5sWЛ0x% /1Xe"(c^v)3T"2)𦼫q F֧m׿Մ mԡIaCYP8Dx=O= GH{i +3vqwA6aj0|hOȑ-$QA :_/zӗ_Lf8 +b8_LR.Hd?P/m\{B cBc- kJ.h AP0U#4t:m~RJ"j`k${6q- \tx*j(J&|\=#񉈊xўHN~dM{d pZ_SoJHOLfw%:?{ߕϯNOVwpIvO:>us YmD{f2)uM.} QvanDxzyqo n;@{2aJt$muU_P~']D3gD!Z+q`KS&ި#::0jg4^1'7']Eԏp^b.Ceҫsc,dNqqvY =[N`AYF[ȋU<ƭDbjBB9}{\w $Z>0U6XbF 5}ۗ7&Ug`"T63>&& 9T˹k6pv iT[ѶLMlٝ&1Ⴠu;uBEpf@$rh9j Ց8'tϐt=̜ȟKW[*L{:nuڿ45pbAS,^xИPRdK`BkbgDMTAd:g#|i˃"N:qo\z#^.fP Sk|Qf䏋! P9vGh@3zºRBOB2# *<*V2K-C2gg6^&|F"l@[B9*dm3x:@Fh`o%.803Z$iC>CX9X{e srbs<@ScZ&+xz^m #ZPTk7ֹfzmfO(ӣ$)9%}8C}`?(nf~4H7 '"v톬~dP^9ۿ㕇=.!S3ø^ 8ggoW?R+/2 ,IiMX mvA/ft9+ FQ~f!-8%Q`Ϛ[-I,GՀIt ґɉeE ?7D*R'2kQVgO</.ҐnكadYz{rON.m)-#Qʝl"oyI!Vڮ" )rr{nYhz;:mgaߘ^T@tN[ gsmahV[9L;jp v{wAg#&lb/^#wMQ|A"e"BAG${F":Z÷3XNDKɺ¾y֦\e;>|"-߼S%T_ @=ֽm-5@;ļXҰ[^贘-O0=L#;lG=R*֏@= /ֺHِnDktl2ҞʹvQާDGBx2Y92c$P9k6͌;&[vepAכ>ΧB[7k ز{ V=gEF'ܾ{#'j.%ıZw"LM U1ݬ Kh]nBe6 ޺߸PNQ/$~LWyk\}sF,+EOAxbkV#EmE'ƃZDWRI'c} ,>^jf wO?X&y~= U;ǁz;xN7n7B*'q7M8Kp^_駱4w_44-04#Mob:&QU 9Wz)/*5C+(.NE>rok28(Ywˢ`<T0e蛳Luqhuz6ԁfy`v$!אc ,bbmvQRl"ۇ,eCt,@ûN@7Z_RucfL+`wJH'wǬ5's1>q5$ :4Uǎ"66cs> ilkaQ,Qf}6"Z!ЄgN-XPDYPE8G 6#l= ZXpZ࣮dOHnkBlL /U_÷=:$I.fru0E37I2a ! 7y޽jePw E[MQ o7V{-'?S44Nxgb:pɗY5H0xlSp@~Ȉ`k?H DZiflȱغ4^苼I28@뻹ڗN.qV\CSCyzI) (X~^hϲ_kvbײt"xddI'w ,_VPrQ}?8c7 %LK|*.LD@1:ljG],ȎRPR| 23~R| d 8_ll(Rk@T0WRiVebIl ;z:>q|JlE6`"\xED=mEy*TjV8c_u C[85;3]&AM)Hz;YNOړэȮGApFXBZ4A;y=XOh/A+HEs֎ %0+tG/r KYq ɭ^ϻI0mL.YSAL卸eAQ4₶x3D*<*j8 s-:N$ǑWi5Nמ-ѱ>S%.=xvR5qE^f0ͻ?/G',ɹz);v?;=0Y"F dAɿ5`ZA6)Ra&.|'l dKDbբ,K Zu2;u?Wm!.bbAP^өYDm1~4>-Ȭ#苶XXDZWcGrfp>=`0BtIvJ̖i<E96@q RELZ|W(X-mK~+p%𘪖!p[Ȫ`RF x0lҊ ܔ,c> _3MpɏWiۄk)M1I_"iJArRő$B뫡*|s O>$RfbU4.3!fQlYbCUtX/%11Y  peۮ3 5Xm=Z?Aϗ:jAFD+:x߃H,S{p`b-ih˳@X8@E;#`e $qYb >Kp; Vr7°z| 2'_~*G;G@( /vG1%4'"qdg@%oݳ2)ItP@_q6r$^3=lSuC.i󦡏_ߞL9{G!!:9w+2 l㳋][b _dӎ:Ar3JGŷ|-8a:@qܿ}\`7*@BHyRG_Z 03Y"?EtRZ析D2wl(#\: [ک9My"4>[grh _~H~M с#ZJD{cz~W5491Oh0ݚv Jy͗JK>4T[P`3f 3V>0*uqx`}A]…PIFHoxŁk:K]R9:J=@FHU\>:t^=?v324?t2c0_R?pևs#璠xbqdOPպ?W[Eg{-o8oaw{D= =b. !.JbrX&2il-j?qN|mdل/\<תZi(?wp`~)"Ooܩn`]q8ֿ/&IN >CL?ϕ&w~qس#1g-1Hy,r2I:}6U3sXe|]th4g{ͽKѼS|6ʞߌ d䮮r2{W.[J9zd{ 5sUb* Vh)ogMKvbb` :\%eT)ܶhg' -9=_r2JF7")SD 臋yӬMx]_y+!<'MT$ɏk񋾶FIk#O]%%1+F] (sՀb'j Z~(ҼPfkm<6/@1|X A;ij$2 @8G闡hvnPZ嘊Sm)ː*u93s JGBFZ-,',(y+X"M&&]j}E] o@0Ul FփZFhޜߚ^gQ k!(W>D㟹[FJĬGs pcr:@!Ax;K>4H pbG;mh {-XoeP8JQBiX#K};#%2Q=z]svYU/$(p>@aZ{peqoM9~L3ŻvnRcǜa*_71RmƟWњ-}BH `mWs"o;Zuh!;}4Z}h'^ ')F'-M\2^dƗ_,Ad vUFXۅjO5' Dl$1A>2Ubz13ٌH;3 c^0q&G7BI=e#Z' a-9ճ7y] 7K7|^ʹ#ѕwv>xbo<]biTTMmZ'k1Լk6 Y:6V3Mn9"eC2PıY|޻:TJk B S@IzB5n2(yI8r֕"+BQ~(!g}co~h hYѦ)Ű嚾ى@Ǖ|LP9Ͷ_sTv_VJ4u3}ZT[.LvQ "H}gŝbbc%Ha kԩst-( SԨS;Y혵؏(b pn|x@%垽b\}W}xQ<KW͂&߬GbTcVlTJ P&!N5)dL?(ȆEjEsD+ο_K /"KMN:/7~NVh צkB''6, / GvbV%Wm/1?O[QIkdRTC`3o>)*Ih3N?ԇr W>#imG5Fm_`]$. ۂ' ܊@?콦}D#璊~*mc}xj$ Y'3VD&zr^7%>}]?%>;aZq]̛W/z9td⸘h:E}7zfx02$AW!hҵO;r;w ede]RwcBpн;yU Ddv3E8?-z'RX[bP1y;ޜt,]M͘r%!`m]!+&q. ?=)Ix"(7D +>jaksa{s#A~BX޿ Cxs 9bHa/~0U:YI|Ngm@D3-G;\y|A9U@Vzk.f' GMjI,P(Ѧjң-Eũ8*2#УDtLqE)Np3锊|io<37_عy<-kWpm3R6qԦlY! `QA򵴝98G/W?Q'RY=c*+̺{.Ozq.cb{ATNs0z&$o@KC cŘ{ >hM.cZz8p 5\~>eD3Wvqc6gycn} IlX+XK-m==S|/ʰDkw[m>I"d?-.H͗:ꨰm |Z1uO{KrvF`u/1Anő-oӡ˸uh< ̡:0Lq-) ~IRcUKM) n&O @yOvPHlԓ vs"mKbiQz^z:cX[d KW9̟1r`~id~B]n)ʰ \ia Šz}V77KS3rLiJamW6Qz?@ЎOYvtdb/i}Ѳĥ ډQ'*$ل=EaPkNx8t.X؞& SC֗Jxo+opqI"^S)z}_8qe)Ak'_,f)G,~BI!9֢d @jN Y;tȳMM T ix5ۣ"EPN}'gT.XmT`qu]8袢Ȝ ,?' \J}ۓTY h3G_gv|V>%>mÀFB(w( ֒ Oi,(H>sGJ+J=)՜T,ݯ{VT;W8++{sP^Im9 sɿIP#  d[8eR{a ArұyF`[rswy\L+A_zveWC_BsXضJؿ]Un")[YS^h~YiK ,۠li(e囎nMJ}}|$x%InKcv@Xxa4bwzaښRs%+ $ ͻ%hiXR@cXR/7Bo giIi!ׄ7Ԟsx#\MT\cZAuiJq@"(icR%q{c%? V|&s([R؁Ň8).m'-&/p皚L*axGrgC*YStTЀ*oX9HIIh'MM}(؋}=s,J{]xdat W b|gab=ɍ@c;;kq_jѯ9/aD0 {˪-4 eEa3?0ڗAXq'uq; qOr$Q.\s34,]%T,YB[.XM&] Sd'$@/6.43cϴ:dž#Lf ^b־,/fP^ZQHk} -U2aWmBN>me0n<㸇l &k9/+E~M%G0T|Tdk#?wVK_h4-GRgDҰjV=6Lƺ7-ĺe||:J/{ytv9 :ygQڳ)0*dh]WsHDH l2J]P!x'S\Uj4耱;a;,܏Z$vVkkvi 0]sҗgۼe^s668vW2AIlRz6zW^/P0:P0 0Izj¿uO>\сK l7 fH"Y5?i/{-PVxZldTR 1$._TWgUr0v,rxR#V hڲDGIFy3UP+3*omfN6L\| 'fH#nDB+!3SػzD#l!>i"BdNN<(R9i!GV)Ynn~H'.[cOCH I8dlyyۥZu[ZuBDUF @kQqdo8q׸G$nd>Pװ;N;PJeooS5ZJr`R & \)7i2[_VCO7UU]b~Q$><} bWGRف~fzh煴_ait稬$e:!e*tXlZ: J:Y:\ES1Ba@ӄ/c6q&Ԓ@ثXaNk.l3&ԊNuC0ӉӦC6%$W b'SlEõK(V6>5+.UuHSIh4gwzbqf)QWxM R1}XS]T;k'Q2K!Ob t U+4 "t:31Xߍ <*gQ蕀 h;eN?y>'w9wtlj;m~&o@/(9U˫ i~Ec<붗5d?;cISj:7 N3Q'5z?Ỏ.}x`LechTn{|%t] )[a gbq7aN<_Sr3%tY'@޿=|bn/1ff#;Uc5w %$gծ,xXeQܒKA/y6%]Ca5jb'zPgx&PWz>CA¿H݅MΚ,9ОsڌҫDAx727_{ ,-ؚvATKspFj3<1 ?NҷcI #&Bg__]S$>EWK*5ԆrפPNe2W,ur{oR^-xOFn# Ԥ>ts!(ByO1XMHxly,R7G\x`B03ܫG+4s!u*0Et \l LHNf6NfӐ|m&0tzY!wSӛX!HW sQ-'('/%{3枼IY4N*ʙj8]m6h\|FkZka"ɶ߀Pd*P5fF0 Lc|r3f~uz}::0A60p{Z Hz+<#Gܽ|-롈@'] /b^+dxJb 8otU16NPT}vX '˘eK/2%+gys6=96th=!3G܀i YQޓsE` ݾ)qv ZvLse!C 7kTfƯr ޻"XϼXw|\͟\ ,naRn zt_$Bsu?CNQW5$d4#.vd۰;]8hMY?ێ4ʲ%+S43{s@/j/ޏ^(ӞqLs2MT=Ec{|<|y(a,vzf&*:d1} ߅[+qZLzYxk)Yo|v*"m"e[32utϒ+x%XAzcK~C~КΣJiXںcODª"H™EB]P>dVMV fFw6ėLyË?|{5wzSTؕc~Os纼DА~?J.8,w(!`5>FfdyNɼ;G"Z1`~5)D%J=6r_U%{6p@vSqb^kkP·h'Oܙ=ᄵ:d7,r{H".֭j$B4ѯ}* b N:[ _{֠"b#Nƣ7M$w=FVH Q]SJ,+97voPmhJ2J`Br|/yˑ"Tk KT^6=Η)O4mqgqcwOb, ,\gEF!J[ѻܥxLA`]ǧڲNvAqG?#.۔͋#fc?gYˤT 䗛Ll}R?V4nȊ 7j7x` bhmsi* ] ݼ.d|ͣ7~El)\41oI/D+1֪zN %Dꅪ1.jH|0[jVuFղ>̓Ջ:WA >s!TڡZ}1IpD>@X@k5,iVw Tpp>#^6=CNo`*x#@#T\VAB r%AkA]XX\. G2&?&]27w@t?(:Xu?oغ ,ڜ syE[3e!ÄO7;-M5xKRk~gM|꾌ĦHbg.fF92 iSlx?'&t&ql)%o SVJ1_%rEybH&\?ױNU[[SoŒe E;ӍD'RR ; TkQj,, leJ x@+K1ͯUBV*ktϰzQxtg[S/+TNOYWm1>?MT Q|dS^%8gO}\/ٺ":/2X+uXk@FW;:* .5$J${:;XN&i Mu2b]Fhn|ĻIl69\K%=xUʏPX=xO\ ?olݲ ƎBiȀ% mzHN1;Od՝Oiz.X٣GHB"Vc ^ɢ0D(x7uh qn@LfrD:'!ePN8QeI [PSXr#p6JMCnq `]w4 61Qh~^!T"zl,@{iLŴ([P\۸F09 WIvi邜8=7g4r I*S:`+.$TUQgVVOXM 8ȼO晊6@qm՛J>Y-'m";n\aDҹdLvY^6ޣY3Y3'L&l^z4d#a+P,ތ+"*巆Z3`j˵e78).tXhX}~3mɾՏ_?Ir$TZ׮n`ib#7Dԟ/=_m-Ź5<&ϙBjjAJeUԹ*?P^]x9*8e+y'U uNlEsT^ l?m)q*c mm7񖔊E7:%Ωk5l sJTb.e"AhY* g༃.8(x+?y=?M-b9QCJ'5BC<~7!^ E",m,aArl%@O| j7 SqxKNN@oH{/- DŽ`32.2b*SrFx saݑk_+a $ih0D E%ucΩ5i=s$߮V|= FGh۽EaM.T@ Pœ[ Kܩ?NvI3c3ÝwfZb%neQC0%׭DJlw]@tH2$.(Fe9މ0%sQ|qS) =ӳx#=k7_#/:^4KQ5ƤHUѧ㰽q}Ho~z|9 f-yIMV2q̝>Oxw!dF(S}џaw/L\Y.4># h<WvyDD/GL&̲VL`7? %3qAbu54:yL'xŜv%LJGk}XQvRc Eէ@ 1FmX20Iľƺ D +f|zl@'-u5b& sУq!_gwM 6嶨_يsb=mݘxm"H,6p]N@2-rp}f''LzK̤b=H֡D" .ٮ(j3>g*7Fǜ8qQH==r} ;=mGP]h c7 rPJ抮y<22Xţi~H_i,jk/"}']J_|j=.c =AWTU1"kymY`VpДT68=EoB l|d'V*Qal ]i s [{t8*h t~~'D ?F_ pXѴ#'3~'PH2bQvhK?T<;?ͪ"!7ɭpw#Yj.}) .4lJۀ"ǾprYuCH{w(`$=7lBM ^&HߘM];U%)\ ۷ܟ k*~4:3vp+l֞"ul8In:VCmZjor؅'R]</vz"O&d{)_ _nJmpPr>{1<{\X:#,-0:l?ń>Vw~/ KnN jWd{~3\R&"ɔ4”k1?1CVAQG|]r '%X4Պjf JƯ7MJ09O6>fd',3T􋐷|g2ef~FL=߬e٦"Ū}F`,RY ]~I}~8$ibjgg?=V2|X;(M9JP˄};x6 Ύ},T<$ @?Mx{S:k"l Bi*<]¡D=5jU n<(C_L-!_Z^K2JB/f2;ܤKumXټY@> TK..c挋j)a, *rбf%7ߣ#7{N֚kW(0Db/[BGDs+f5tfɫZ7S~)3^weĒ7dH.bej>#F6Ino$+Gt 1h>iL`sѲ*\8eGU8cdm?cn_zU)u5'g^7O4`?7dc&Vk\尒d~a% [KP1@37Lr !R:~{+)oyJb|e>},w"[g.{Q= I~uqHl *sq]wR0ז1MY":QP)ء&`#D ' UZ0U)u RȐԨDmNB#ӕ>07CH/k'R|*nwߋΆ u+/7-`Gh3:5s+ұΏ2 ߳@m>YmY3;]!!nR=,SePvTW >̭滅mDb^]2z״;'C0p- ;{>;QWq`S&R[Chƽ)qHHVW^1~ :uqvȣbR\ +`fQ,e٣8U&A(3] vKs X1)9ONZ(3eo/GRh!^RkOYx̀AҁnfH Bh}1GBfA=]eOD)Pp,dC4z~0 /v%2hYAAEP<H,M$T|Ǣ[g®Y\\ۃ{.qސl;SWP{:?/8l$8+$>s H_UЂdR1U[`a@c7wsT0EZ\㑺*#} 1}eHIQTVkOh פq-ill3n{g@{:ޙgr]g@C/;![Jqpv~6)i|֙^F(^-sSB@?E< !`tY7UF0 ^1;=9 DsRaWȦQF堓 ŸV?ąN\zFh'H|h4 46$}H](yg*dS "y^}ALT&* nA~пϫV6u= 7$I(=D rė$/m7իHK:Tt& vg?tUNxa/BaNnt)p 䘯Xc*.ŶjqI.2 務mk8O$`)T)9>KXk@(ڮaY~79%i9YDU`l{q3&17JM2I:`ѓqm۠-,8zlڤ߆>U*y{T_,rH_'z0O5Me;~}/x}+-\ f/- s;|%:WCLY 鱛6HX8 c=mGh9Ckyx #Q#,½: 7'R9`mQE e0s)eZrBr<[+9P7\0'i~Bcqh#0:5:709B-C3պ#cIW.)KOGk)pMcaܑ_y3w/&_𧧱,4yFNk?t^f˔p%]NΉa^D iņ%Z \//W;kcOww?-(ߺTdm?l.Bdf6}.Ra{r#74CIoQlojdxVO/d^蘿xS%š#/. ؉ p&/52[ Dk\bLyTWg.g\F~%?dOYF@^ O$#ʼn_Oxw!~['d(IJ6"B]NC2e E%b!g rV—>F[ur`7c23W"E0or"-8+ɇ`\(܅=5|m] S'p7͹yrZƞCs.RT/Y S8ܾxwU><+nI0Jy:DZ7UHMU^/nL7fvA޾̊K5 dc8'e}$bXqqǠzx>{mFYwc]/ X d ─ԏS7O!g kQ\G{tVOr%^fzu4?i=YC:du7q aj>=G׽,$܄u6{1~7k;ij-r3*ًr+N/#g,8x)&ېf4?^C_kM8:bzaaY5,rǢlbjr]'>/`RЃi󃉼ayb> KRQlfbd& tTVHp0|**Nd9n3@c0Mc/b3FJ|ۡў\2ƠB YVpGdګ:O73%WKE6K& %?t4.߰wg8Ss4Cun}BT!iM"*Ao~hӯ&AIcly5bmLGpn&sBz8TJiwu=P C PU"(i{mı*Ek7& j`#v…H|i "IIk(*Y4 }1/J'Ü?|$p%5x :"qX‰;GFZtNbZ T03T.] RZq _s< ۓs8m2UkKn+: I8ݾYGoA` Mp'PG4hk[r.vt(_@i92Qn9MF~_TtH5 3u:ROK]_9]9%%XT|nRut&B$oKqY771us9tŤlɻ迂 zw vT.[ &K`l-PGIoтϑe~,5ߡ׳lIi$So1 &d=閩}UY,zMgU`YHcnf#;8b],]uRֆU:Y^E)(AA; ԐuW63U[]?Ʃ{k5lhHKp/ 製ǹj!&ev$*ůߋı'њ.|{=&^Lأ뮯8JEmy,迓8LYi9-C@Be!wdjkEJ> ? +K r_<.Ÿ-Ag Y|I™%,=rj٥V f$ƞBLT+N@&/aBڧ*bվњ'sك ZK3'2uz#LZt{`B=G@Л[s"2HEw3t3-& sm 6 mZ*0nP\2"}(ibQpxjct +vHST.[kN q~G @1gq~iL_WlYˆf9]7=^̘LݧoQP'>Pm*o~sV=biUr9P 8fu>ͬ&'B&S_n𵲶scYR⼅|u:?5Cafv6U"ZpVF-Oк<{g.y!C80PZMM[l͝Q@mz(EcGvը&8kyԼ1ieK~[U3]Xb)v36h~L㩼*݊+dl' m!Bga ΜR%6ƫzL&+Heİ're2-%3O(bS(p{%G~׷Z6yM"\o^k`ArPc?<:o7ŬRz:v̬Yt<òc8Sd5F9j/zbINxxt*[C]b7U y6IgO/"V6g*K[N" _WT 2_1Q(7RT(9\H_H*ێ)e~vHRyoJ%l@C\ە-yӔQRK VNhtD@w02m^ctȟ0K;UҲQ߼];,߹JIQ/pgJxvΔNڙ!b)yIx ҍ, myE1"'5Q6(3bm)V\N(1ĝз 8o Yq}vw:X0aorXp1J&FcKЯ}5L4wUJ*1;.,繌|3b`?A00tP .Jw*6 q#}Ɣ/ νIcA#!x܌ȥeaaqG6 lFwFńUK+LfD*4sMY,sA7 &'jb{Gō:]6|mzEVUAM*h|0]s!:s[ {lZꑙ{E%R0#-=O_ %nn}XÅFE^ ļf[lnm- QL ?MD!c͡DQo}OH RBT )cncCJC30]6IT~X=.[V΋v;5`m.c˭$Ǩdb+!/vȑ"oXz~\nH>9ARwC. $@zg9 72SNIBva^8E_vul1JfkmZ-#^!{AfYoy(7s8oQOH@<]To]K̮w)']hf3HUb^yW  ?VH,' QCK{]ҫEp93{45A{poJS_ʧqx  ̇Jjn9);Wf<qKzl(xF8g,@I)4>~nlt} 6G爸c"T\m~wOSP4y5̀ 0B8u>XRj# OU]BtM SnXxV uQ$jWL4Jb[]&9xKcdY8\LEcb4,LI@?*yEq|vy-01I" =6cӪTŒA$*}IA[oѾ6,7ɴZޕKy= zClQIJzM:nz@q9c׽8-;yG BLkFohɢeڴh v,uH+-eqt2`Z-,~8UXURn{Jz6 #X=ϔm"CfO& A1H:*#IVΌr0;90]n l}6gqzQrB:ڸQWg:Vj0aO6Pv&l>b0ԹmAZl?g}qΨp{ҫjPÞ";blTSҾN,ek"Hl؈OF7M4Tn3u >['`ώYօkk|U \Clú65tIb$3/Q#+iQ@XfR兡? hsLk b pGk]mE'qUF 4aќBf Q1gFy XD8" @Kk.\znn\ߞ.`^ˇ˖j$%sATs >Ԥ|HPƜz]\4Y޺ $tAZE.,.o˓흽a!z>r#Bf| |ms#+MT}Jupd&Et>=V,S mkFK MZωX92N-Ng>I~bHKR3ձc!Hй=`O,GoO|{ gtq0L_#чz>;C3$9q1d sK[N%;P~~ g4 /cRU:"5>|cP$:(=dTsOC[k,.NPWjO/-r֭mħ&* Vu&f˅+0JйWLjsɃ~rL=0y6F8AMˏY|7l1痧~k A“}hZ(zx9DZYD?)0MZޤXy ,pEBMlH")IbG W|ѹ)^>$'c iQdeRm0K-j o Z)i'P1`G 6k"Œz[J("~"SW4tɀ"+4->;' _ܝLw.[UW3{U+cq2 =֯<:jcFY3T05&syb2[_ܕ9XPHEī&d0a2itnt!,ƃH~y>q6rxbw#)w4fWDZ: &ctJAzryDR;kā.U[Ƥ_nd9q`AC-OO] %wи܂TN45@>k ;TVORmJ`NLF#М=TbD0{j n)e&usȟM'_\/LUVA\Mx/M #A64cųPp 0[]䑌W~oV;B"j|7;x Di^lb1wOQz` r#Ҽp3PhFlHCQO2>w$>X&{hL}FS>eWtĺZzο$IA1=ۡ·v[9}ztlwI(%Hܴڰ}\ױ}~Sx}1M2L># #z!a#u14nAIerLKhm|d34֋]_ˌV ʂ5VNԄKt$9|V_\ZYu:ѥY\waV q ;!C9B5o5TJ/|'yP$ޭ$ YJآ}פ0\eud-sۮm x)LZ'ӛW9+d+;zzC0vAHO j] tĸӰd6Y铧?nد:"kZx-RIps⛬'22|_{Ɗuzg2iTcHlOm12ceqJA6.8;ig/킔6px7x-$gYE,Xfw-|Ht+5s*V<7`>k!d{Ό[).^1*_lT+GXֽ^%[.O2wZY;? -Av&]< F03D-8x ׈l TCju]}A%}P؁O*p2XOP65r WLR&q |NW&$ p-m (܋(6u >D7cv]VT $iGT)nWJ`@1]^17nc __E4l!/>.5xIZFp5ÇO:LSYձoQ:.%sգZJ/vR#-2GI5> ~dxSG9}tmQ ƙ1gsE)7=}>H+bJ9YWaxC0nGrD !s/%5ՠ-[l4,H0#:2 ie 0wO\C@ٕ^~lDTj) ㅒ"<䎫L\+wQ0=X9_"W C'SuvA4]=h G:/Ế4 L6#0wh62aӢ"Kt-o8~jWݙbԥ7Vp7_PƱ{c\V5#\W8nWV*Z`\SbHc>^%"3VEOxP9NUc E.mtxMF˅s̋D(Z_^٥FTj<|')U a+h>DXvoU"I޴SjpnMMW_׻dx } ? ITQJu VgT_cs,(TA;d_11xo h6~k+ NeCjeR)_, L9\fxMѦ\xrgl!4rs [>~OuYc4qn[$%qqd7jkJUL(1(1HNzߒUMn: O zq*sCx Z.-bXP!{e'˟an"0#ކnf:waDU]'2ˠqS:qGG)crķvG!0heyKLfmַfB^9'ɏYs sl>Ӱaς :<<fn` b< 5^n`P~+oe)^V#ER$.3 W= ߔ`l!Kyʰ{szy_SmʐuZhiEVȩs g}0цhҵ †P5Tʒ#8}60i***ZuuFiHILL^6|&}7vWFS9TM|[i&[QNܚcoI%7m=":ޢ? ] ]XuGUaJvp5I\k0DX7odv ٨Š4;_[y.Zn b~G~<`D@㪄3ʊ*Jh-"d"܋!35JB%B^yPZhukb)a1ZB!^D"BrUfx*Q[uă 5=FZ]WBo1 eB8kwv tEb5K`Ji!: K*^ 6,*: Xɚ *>䏆&ށdE]Յ`jgxQp./ҝ!`2KW?)9ֶTtޜ/:VD̈́(зp>Y^ȹq>'w@YnZb x1C/8A\.ɩHWΒMw<F*qWsۀ?c]K^OvKH.LyO'>WC$ Tp"\ rQ_VBޕAffNlStCJB@•^r 6$) 7e#jޯqfDaUuatllY,yaĸ)S[jP̔/jݙxݤ_Pr3Tl<@wm71ږ.CR_)H% Hɞ.} RD8X&|e y.Xt3ʏv0CWM]_pǝ$N?:x[EOLR 1#+'5e;S`c Uvhɐޭ.W :-!bT"[ReAOΔKm_h+{ORm$̈́GKTg.~bwvt󑥥4aa#e)Q]{TRǏAI3gedqZ&=3;R&2hA;{0%hԉ )3h+8ق[cш@WE$[Ee6/`~3J;{$K7<$tCDlRMqDzKcJ4uI6[5}݌$c[qA D̶ͳ(4{_s콁^4Д\*;Q܀Guh$D $%$@ﳞch7ۭ*?FU;edɲt([kBz;:M0)\ ML5Y%+P35ȩk8~z,S]8}-1T?+k cm#~Z5H V9x48JGbWuhm\CS(/a@^: fA P>Ê9XfR{g_$՛"tP_:^G4ܣ`OHfflZwj}|=d7*YxlPl092(V*Z"f snp[mdYjܴfD}L0X6?{ҭgIM蝹\΂'(ocI=e\[mVLj!YD G%=:,$²sb&ySD:| \`8Wi:~ I_9.žw*8 qGաd3K?DNjQ,9aX/^-t8-D+Pܝ'Tx8ɀLiR#:bb$^"@Q ~xԬ6OP_'^'hh7z6EdR@1H=NO K̘P\7psFQcE F/$иW?Ep' ٛ8_?4QeDέ Y '7TLoeztio6 Tj3MpWе<ٻw9!|(\ ]Hk<C?~X7Sb;LɈK@ŪH7YRZ )ƩF11=:YFL3K2I:ـ>\Mn@8\c?*Rt+'e/N=ۙ4K QnySLF%Qb_89,ˬ} YrJ^wm&]qe~Ue)5߳gj8 ){c#,ԗD>̖Ұ`$AəfO׋ƒr1a@ x &_JԟxHS5`-ogtӷ%3flfUU bகa^"I 읍sY( +ty5\`N2$}mp_<3^iqN/?}}9 [#WGB͗˰^0IR/#o&RBQ 9IU(1 ͚^ DL(R)S}ZCΘNlTܭs{i!61Sd)d("?l$80q[!ic , 7Kj iGvEX8Gxx`N "9` . wSQ2 o^ MjDTҞCAY#wZ X"M%EXlgw <ւh=1B$s; m_! s3録t#SV$P>Loӂ24}爋bC_2.KՅF&AŏBbPp\(}]WzcϪ~Pp-B/ 6"1]$-cIkqJD)> p~2}1=ް?5g6zߟp\cvH b/55&~fWI7/]u/8<:*[< )~Gr:&VZ2~Pyi/p)6:)@!j4eŽ嚲 6"'KRȭ_:_хN|h7aZ2j% VhJ Q.?s s+2:ؕ4RtJ>=©Y`.֜x9z9:pva%]tרnj= \<#$~I Qrp*ut߅ YK"eߵY9{{}c}gbM㍤޺ *؉g7n|dY7_kh' K05V;4!l-ȲxƭqZ`uª3v[2ʦ\w Rc q&b\Zn:FPݬ\Q#1) [VPV b?4o{-K3n.Ko)(rɡIG¦n'i{а|\^XY`:un%{L$aռnJy0IZU͌(v_$TW^M0o *mK_B[o@P";6^4G&4ոλnDŽK|K5jʬ-E쨥E(72AEN#'ߵASjpPw3t_~7ZK)83*Gz'12h$A tNl5jy]bJS):fq< mX @~qk3,oYN_e \% ,{ {f2k%:"!DKpBZZh Dך|]J@S,h[N֎/gfo3$ Uv@TS*WP8GVA4e%塐KOЬϡ(<Ԍ$C=<]d8evH} eq* 3SB!:G'o=y~o-^@ű/TV4n4\6{Pe)Bݽn09{y.<9J;C)d̸~9Ėx%:z]%z\o-M2Jn=]mMCANB}Z7A㨥UܓVɚJHʱtڪ}Z c8Ǹg01MO03U*V}+]!o&\D9fⰰJ0 -:tno~,xP$!֐p,NR!\jjs*1;.frHm58ζI=t+P'*1Xd8uU'(#l>(!ƔPu2*<q ›b`'_hZB꣓C5Hv&.̬\24_nwϲhkJJdGWz>1 ZL j@:=-g`uT A*ꘁ5.!褐cZS\Z(F/~]qnU׎JQ& @tSWBLU[O(~ꂪ4Ų$'a%‹.: JM}qt*7}:K8ZbR`s~@;t"'bT/ ҔУ $hQI8N[Z6`YD0}k*ݤ|%_=O:dAr@шTJ@C`q 5=-)#tF?/g Wq-)` V&4Y$ȗfOwOs:ȶBg=I"@ߣHZv5Ts5*ƹm}Vܪ,؟JvQ,Nf +j)ysgxu@u ]7)!mU7Ju%, d1Õ=D/#~u֌.8ׄh{5Z,‹A_$Ǩ_i^<Öihn?847 lHم}l =,BH1,oW b0Yk7ky@AZCL%CGS}yNmJ@alMbGwJ%=iPcQkʉc qBy[m@<}@g mw~&^Mc[Mn %Xn>uf  d̀IhSU?)LW`(yeg#@րⳟ(4hۧpБK 941\K!m~^`a<I+:TvAd;m?y+JB8!Yd`%ou m/W >O$09?䚩٢6Nf l{bbƘBXoqzϊHGN+kZ­LKzΉ{:'[Zh4 \5AF)YEh  6j!gEWrڡ&^Kע&sǙg#|oVSggi ?]tj}8nîޖDcn'"%@ $._Ɲ\"՛~] 73Odْ],3maյHq F(qf|RI Hȶ an)Y5@2k >Üu#- >fuwA A/9P\5jL'˱H,>l7ދh%҄S@8Ƥ c/bohfp۝y:FT&*P 2j=DaTw pI9]ŘoU U$GVR,} D'1<“dU!u-ٰa6H$=`38rmOQ^Z [u#2uP^1&,DVNl>eZ; ,p%DD.n/DH1*bQ{kE3+[ m+82ZpGqNU Q4V3tv{37kDǪk񑙬98|_40[wE#o*(QT'2FG3xF݁;ޖd!EmQudE,5Yq" 4)_)fGHRg _:^_3ĄZ(8Hp1M]WurI!zgG߄Mj5h&.+ *[@qI|sqrEsPU"P;cM baok+t{5pkn+NU?M cLe™ 5c9| UR@$:`PS[gVQ=l9.'O/YmI c[SU9Eo~hЀ+LS-iqL+]w S@ D-&ThuώB2 GgIie8@u.ȥgG41cDSDPL ֫:R#-(⚵2Ql. ?C`%VYZ:<3c} ތOc5BR wbfv[ЮBs͇:p;; ! P65N_1uEZ&[qn;&N`u.flfA4NB?gC7ppZPŔ(a(wV4Zk>CyPryud0|ܬW<XD{iT|+c@u~5O%xc᭪Su`!y8*Ђי!݈_qt?%'(q>/ߠ(}o*!.V-'xM:Kyч II޺?pͱJ틔fb3] z_l!#sXCrU!+3(M> 5MNU^es>؂ Kp2_JH PbaHM}VOv, ]-jmNne3M_c1Ԅaբ7S0fS.-/SZtNlD!Lo~37ݤP4،w Z ߞF-àrнP-f FM*aɤ2.= 4ڦ[:kPu+gRD4| YXWH" s$,McOٟ5ܓXľ}PRȯ-8r2rPI0iܙwajM.RLeШA6Gܙ^#c j'}J(Z@?\kyϓa3Ik;;PsSY<ջiW+"eW}=ߢDIOʝ=o6Φ!T[*S]XajT{r=.\8a(FG4N)W`1m%7i ]kI1^3vB1/5uG.nӟs)A'U d=&!{Hwv,!!JDdr7t UlXI7#n%.Og^ R|bO^btF 5pa%="BX6@(ъR؋@NJ|ZtxX'b`^%oXz1[miB۰{u _05^wpP~ߪ(EМ~0 U@3P":z0u\͡U[1.慈 =]\]1Xr+PmYfjRZ`R<ǐMw@F&O,zqj:pˍ zsLH)}3:Mwa~Ӟ(^^k~2ӛKMݑ ƀ/=8*n4nx䗖Lpb^/=Y7coMQPn{0W|ktEo1dsY\^5 eMi b#_4]Ѕ~NHDn!`xRcGޞ;Y;Dƚ(W# 7L?ܺ7+mFHByzvxb$F #:ElEA6_YC#1/ϕr@PO P2yLVwurp=P,C^ Ơ Xw=~)>URznWsU ǡz.+@ eoD5/\&:5,(Yfw>ʩ+//2Oc.9jё=SLvPrz2&8M׺+O}qM^3W*oifN;B3{M( .ڪJ$BamQbXk Z٬Iu #f"7Ğu`|}.4+n T\gWV0_f }O԰wFO2|`]iTB֛k-=B,lɜUĨLp燁N5>&ee$tbg!]I")Aldks{aϩG IMP\v?Ns}s0#401>LFicbr7xӜrϏн-y9d(]qO:ٷM:Ccp#*,>TeNYSda%?EhCxZعW5;CM"Nߩ}%6|L<7zpn~ ^d8Q&NA ƒM[{$Ҥ*1w?}܋Tng{ >gxH_ng'_V>tM=[]SWN {??5mXaPn~a }d!j FL;x||6RW:mD;o4ɸZV#~&* bu9B,=ϒ? Q/];`z&[YFP#,a=#1YlSZ$Lfpګws)Mc026b%%kW/!p3|{ hZ\Xz[p T;NJC+} 0 tٳ7wDD'u?JP@CiR׳+ IIldfkGȗ=|RtB sǭUmAPlmA| !qhcEmykpS{=hƁ|IGI-RXDA5ZVGn&caݯ.h#};e+/[Ik sǫyJVϒqBmr3ȳ"Xm#ڗs+=)bRwAu54qm"sdfB [͞YTx9V}[#?I1Ah6Fw6 xg{"Fn!G: R.qfcxewsD,=t2^A&0x+\hOlL+@z.٫w' F$Z1B7֖e159)!HD_A"0ŘEM{nёRY@Bb]"b8v Tcß ͼv7z6jbrYV}|E&M.L^7~_ ):?jSrIW_]W$̖pQk\zׯOmS)8f`dyrC`kVD =pK-+U?@7= P&r@E&.GDn6gQ{W MtR:]|n@N.P0׍ jMr[VE};Lz޸X_=7xErSЇySyf1`bw?]=;xm8bv#C/WԄ4uHZwHPgfV7%ܞiC+7" PjRG99RA=P60duFv3#^&ɐz*qMBMّCpнoG >3=X a)t*6.{Ib@1O> ;MaVUbEU4 2_ϧÑ KG@y@KP=ӌ Z,ot["]J" oA4 '(lδKJ$G._]6'M(ԀKʚC F&(M"}r(R`#T6Op~ XrLș܉g{5 QYaRlSƀ(e $7GSt̬EUW.[ئ@gN.T^b1ZtuA:k݀& ՕvG.subC h% %Rcs) $㷅UeA{H*d^K ;KeP__y0+58GD~hq 2,<$, yY)ݠ ͭb)S19pM A nzi'ՇߺquO @F0j}*޿Lğ^y]v3{juq򴼶o*_2AT>w >a-88FdW"DR]L{I,8Wo:h& Pz 3UL"n6oO/oPLK9jg;5f1zNJ,W^EaM/P5FXł\],֘>]jFF٭qjR)hJėt4@ϟ؅KKƖt"ULv-)clm?Spd&+tk]@l n}+ZuPTehJu1.;i:YXܨ^&aRTU"SqP47uHpD4 XB4v nPI3!f(F%qXAYTَuamp9Tj =;axbk(kr+Y¨` <An6DKb#G0k*ĤAzU0ńY܉{Q;y382E1r;Y nUF##>^w>xsAꊁ'n N˜{|Ǻ`隍฽5h1G >0NFA_Þy.39B> SKQU@ON->=wQDY > -xr>j\aIs1Qd(%Sw3]au94jGȓ(+%`qCjm*(+{ˌ[ ʝP֗i ZW3,SY( VXaY V\RdH 3&qxMD)<ƨ-f˓qT(ȝRg3r&ܟ( 9Da>KTԶ5ٙCKI& |nXغ~C l4-&^DE wcoWطQ sJ|41^ctK+MJ:;E=hTc 4p 9Iq7T\XpjO͘:j4Lb{@ ٣_PƢOj?mpP{&mHQ f\W]2f:Y|4&Mc.Q2;MRŀje7RKxjNJ=ň.*HY޶C.}:-6󽷰}NMMŀ\6.X6.-CQ7ˬR2B@ ,4.kb򆦌v4!fN/W aW!8ߺB8P]w-iXG&>f'T (ml Bɭ-R.+taj.rk\,I=xɣÝ"-ǕytĆN/B)n7ա7o1`-@ډ<. G>Kjb KԏH$¢:>VäQs--ۇ{،)4ٕRGE|0ሠ*rkʱ>|/3F l{O*Z{?O !}WаQ,38x3@aQ^IbDmPYdΙWr7n$[~x Wk7u~?ڟc?`Ĺrt䢓SpP "4TPZkcӟYӲ[J>=v/,gOnM.ҧwȃ5` h W$'\hppG҂20DSrioB*^?7{ݶY>42o0uAnS[-o̕t{Sruy`lo"q%+%|gٶZ;xSv>aqkylp1 ;AgղGʯޝQؓP/|7 H{߁mkD C 3Cx-Mva=Ȳ}ykIޒj߄+eTXY?iD0{Q ""Ltlyq+ !Jtbd AǶF;_ s!zo v A2*p`6΃3 QB+ KX9Ò_ZN2iݬGE]5my*۴5Q5/wWtkhIDxzy'~ơZj 73v:+3{W+GSo\k29>H'j"̚T4Up *nb e%xVd#62Ke.Q}l8`.TڅC8T?7I4ŕE! gYShֻ q[DjZkl؟ "or'n<;@[ΫOq+'#A.IiXC \.Qf*$͹7BT8b鎮րc*:diSSڵX2hݖ@b 闹.a:պ8#KxLO̦ VwM>_L.u- q z6ڎG ц"wP{{c){{ sDSrL#>7'n1!3Fw&/=2vaQ,B-Go@7W8clJLLpC*˚)?@CmE^9<8RcFGkh=gjd-ϕ?J6Iw^O8T]Iui6"c , 7?udr7z_hϺdPOlcn#(L!zqEfoIvHGšO#`>_0~[n8ϛ0jOMw֡=e)GCU˨Ic^w 9@1=Tl3(MymVp[lL|51d*@n _4R)*ݒlƌ? ReЀ\;$ȝs_|[}Xݶ \zy@P,~ř, Ę3MvpW%j9)Mo&'%,[_4:8Hm_j0uj!V);FE% Y!{5^Й1f"v}-"+>:"!QFj57NFRgq7𤋮 Mku<9Aں|U ZbHzoxh|K i@"JV<= >P𫚀%LfM-=i 䪌T]_[Ӵ,:mvWTF>_W 彋IQb%Ԍ RX ~UU %vD;wԺIw(KV\3Aa0yFA2Ae lsuXzihR ~ __$iczNN󱷵 yCoT1s~#SjN)^Л1Hd}/9`L<) &0IAx/ aѧl*[d$"wUbsrx-[kG:5KBmdK8Ѩ[1W%}QD8H/_41P&C;-~ ҟs\}Cxܢ\G4"PEdC4g-Q\m؂yfce}plETq[\5.ext:% a"O@ξ(# 6f9YH >UȇLOӜ݀Q5 Ɓox(sPlim]f8Q4ı2XF<+7#d4.o- ^(f Kztpc-Y@4ԼvdCR`4I eE u-7VIbEQ92<.\CM#/ 3JJnly|nKWV!:Q I`kdw;Ӳ)ݫP<+ \Ծa ]Yg=.s{iH6n̏􏝯sޒ+D]J|8\$2}SO(Vf&Hw㑾Ԑ6ޔhQn׏^u͢\6S- k31;+J\Jp—sYw<\I<̦D.xbBWKV>xϼt M u7BK }{, `&Ћ^vzK GflC2lqo첼ch\ty ?mcRh'<}knyK0ck*bZ:H 8Q:p7B -+>T:6҉48mr0<8]D%' P6cGPh4W}[>Yc "'<$ela 7/uly>w@9P+%Sa.<Ε4Hїl{ecF\`߈~5@н| Z]8K̰uwL^;NghRFj&2z&)_(E1mޟWMk-i8*y0X6i5x"3E"ĿDqZ1$y 'MP38=*}cԲ]imPlFѾp hFz1#Wc. c9ԜoiE3?f0`fzho7$(g_ yVwpb/i/%  3Geܳ5n;i9<(sz6`LIIJ R9#i.u:ғ22<KhQ|s̋EDj)\4Bkb0\;t/x~Y0016󳔏FTh" Sgh@z>m) ]z|qʼn#8rKF|yeoV&vzc]L?bĊwD "?#a%1gRl(hgMGxxbm}ϝA"qC^ZKzt*jXL,؁Ͼ*M'oVSv&9 MOB&!皨گSLef?T/:hwA|Nܨ *2XewZ4p#z};*.pVA7KJ 0#|#c8\縄 5f4= }'fRPU4&Zª$pH>d73>z#ʺH56xk=e=b_6L˱, \@]R>T& BpA*ÐF!ӍX14 zaaʅ싊vǜjte,T[+Eov$̚ 1˵5i| I-N1-6W~;4òczʝEe& 9ab׏XWv+dD6џ/.i]4N{xE]Z/DݽY9rXǮbTrڽTv uqhܸ g^sUhGgۀɞ~cZ>k(%^kށ%yo>{,m &eH GsՕ)\W4d$Z-;H߁m>^Izʬ:`tq_kGWOh@ޟmzǒ8Zs7h%CŻf4255O/^~%4'2XcU-uBlamnZ2a(*k2Þ=HU\hA?YR;f&#&;.\l6gW8;fq:'?r'z #zPN11m"$Jfz8ºyĴjej<3ܻYx HK;4#a-1;ˑΗK8R[tcǜ$g,{N(Կ: Y=n._.*C30ǙQK"'U p>z2jXSӛWo Iikb.bx 'd^rx捃k|bI ZyBM + nx 3)ܾEH%`d~PqFKyDrʠ٩8=P8Ka[ESy򃐞pRDR^N&L;Yn-q9*$Ģ|CӁLS/E$U"i/1F@({Zދ`ZMKB~cOXE /vfaJ8035xvy \[(1a޾P083kՈ).EJ|OyI{jP/9vÄLBI79FO]< Jgm%- .w7+_sEk 4v{@̀ڜ%G)-QbVAr| T0̓#ʹ`x^`*---M9[hmuagveѪ^Ww&>_t8U38be~~BKaQzd:GM D e6;WIƳ1g@\ʲ`F'R5Nٍ[@VᱹU@ZDL_VV#4r?ۋ!1"~UE*V|?-y <*2V g;XFIb>WdXr(|4>ϯ~qܡSDa:uvwJ/ Q4nOuH 4ć\*!̍&< 3Bv+}GPV_/l4=+U q-{p SFNL5boABp{jLeA*GD , ^?6BF;0JĹ3|3F22M7ċ!+̂F4Ek~8?:Q R3%F.>rP`$/_+;x<_XYbϧ bB}NxcS>"&])?[S`3i~wcvI^RM +$N͇\>opZQ}2#d&e_S{֟S1O:;0(wWVչH,S!#R/+Kp,4b)c=$BƋ܇4w5Ń%bJ2o&JQiN%=T)f Z B9.H[A@fB&C7 8t8( ̟ \CJ( 6f֡H ZB,"!BHZM;uI:g6uOѬ!r>/'Ϝ>t6_Y]$H>=9LqgeivdsӗTI~*΄Ï`!A~ dtARIo{T{y,>R6 bi):JJZ`@;ߟ=\4~ູ,ȜےqEvayq}CG-OdlكLz-3ib#^oy%`Xl傚鱺@\R)kXq;FГ[1Ln /|z,)n 4cػn73óZ2"us#0&\k&)t$DQ>MFÛ]:Y |K@,[wes|(my7Ӟ MN}aBKHӃ|~8YvfIźvb9( Q0`2'Gm/ I̻6R+8J^Z.K[t. ¸BÅ +_8ƷBb-'RQxnc<~ En_~~s"X(@& 51MkX rwȧq%xlȴtȡ.ʷ]05n"Z hYi?[ߕ@=AO ahg(Z QDt0;a@/@*_Bl{|r\Gz$מGt!bF'YKgVOfCҸI!r/uTѾ1OQΒ^tC*~jge,D/Dc&z(`WeU%VU*>*^sVm!8{jOݦ"&މv%ѹFi[ nM4W>XݸG \@>QWIꚱrR—,CG3~t:OHآ+3!H9Nt/&=<Ėi κFL!xyz@{r{|NF ὲt5LKb!ŌQ|#B9^+tcF JJ_Gu?L)ZN$N7ˀK*.f}7M ^)u`} 楼7_$ `?{SBh~xĨ* 񮤁/#c2e۴sגsx;Y- Zn?k ^j7wSaz*zTw@t"qMΩ/ 30NTp)w{HKXHF蜖1mqؾ*lߧ49f/TK0.S$Zᆻ@=S D`V`.S`g)W <X SaD|)U4IWK:=1Uw*t}*6S4u'&|j $'ɎXna2R4&;-ڬ^9}ۇ&Us~ ^ԩ8̿iHhAu1<6i$NItA):w5jvx+lzBχ CC$F̊H (V&` H;;g\Ѻ jG sĸ⯥+[hեԆ%nA~lMW۩ZZV0ְ/qR2*tÎvgNm$;fsPӬgWK*uUIz5<6uS1 ΣeY_ϙ^Ks@(] ݛ_m@eXع@{v2i K,*c<9ٻ9H'XV/2`.#֣ǘyKA)Nҵ 5Sɽc|;63>2%,/ .Ze zSz SiX(og^=&Z{ jPQȀI*愨EgBHa-t7(¥OWlKl Li;oCecŬ̬w[WFDTKlE~i^mA`auQr$G7r72>+z!ƚ Jي׈L8{Pc:Vf|ز/ e:B=ep`Ϛ_{Fi\9u ?{!8ӱȪ"V^{.M/"Mmkyq|{Іz/z}hw)^E&ㄷZ4_)g( Ih [XC %@Xvaw 1l>%`)o1 OSjV 89l}n_M[gai? N ȂnI___Ɇqb=yF !p{i qu2 g/`-n"q6e*`}7Fy6q]2#*{^1 yԾ~}o/ܖ74f.}0QcH i=ʀ5(D'z|k $qSnRl?_sMJVSGI6I]yVP=ʉ iEyw50YVecړi%u7ŖȲ<+\D~K2P=F{@'H.I<~6RI߂߹B>SSP*P?q+ ѹy{ر &;[6ډ (lxACe5;!O+;OG2 ?x'%: ylRɂF761h{x' @p`~xwO{5;EBVz[\sɒܪdc䝑J+^rf u@/LFMאQg>"[8Ç[E'' ȗ<v§in[\i^X1-Hƣmz0kD  /OwtB7Og  iM"s>bȆc=cX"'K33 In܀Ԋ^/RK1 b.O]>d?C<9BknKq%md  ~FMVk`=5E{*Orca%>qov1 '<8XV^e܁ԸVHflm;6DO:+-5{zî^3vy?;ey?AcKRHA9l(cEӴ vxj2g1į; )T9R$8Ԟ!7!_ͷ6Zwo&B6~=:"XcbgЍM"|3k{ٶFP$ˑ2>sI `!")+M l_ _%tpJ1w@hzko3//ˊbzfxQSu螯:lꋣOso̴+]@S֦jc\hVKh,"k%"~C2CwĊ(.%X'@Y"%.w+,<=jiK\eaJHm=u㓤(<#tpcv4aeqpkGR[dfK9{ ; Ztor 9nfpFWS-t'5FXy*I7#ML ]6.GT"L]Iꂔ 4Bbrw sFE|_o8$T$1vPspR]@ s1}by5鳬2s37[kZ%̄)t^l $t?tn7?O&RJLli)YÁu(>[ԵT꧸$|iqH-2n'Nu\c?P8k%`"͜5?-^D'Z':|nǯ,8<%A$6l0"Q"R Y \;|*"  ;0FVwKGoǨ4BW&8L|^d/}pYZ_ÏLQ( A\1]LCG"B03ݜ+ i\ 3RnuZTF@~ k*46լ|oݺMiK:*ܠ\ ןU\'j6`?mNWrj̈́ڐr>8:?e"` }߁d(+"0sBO k ƭ׆Vgyo(%$@ f;mE?kZqW/;c5+]d7(U~][&,B#A W-ͷxUivEѴ3Ut@/Y0S__.߇9ma;@zup/h92kF6(=TҟTO3sd ';ܛ9ŠT˱$Ui0h'}嶷@ޯ}B"'%^\"#$)G@=>#aO^ߪuFܧ[/rTdvVRXQjað@-hOeYy}G'j|/h=``gg+]~UO|ҐљjiT?׀Qvœ}0KeNtFVI=~&˸X'3Z$sZ)"Cw.델ͪ#K&W`([}+L0*2b2('-<@nKn$U|"̢"MNT,@ԻwF)7Z?l~'Aq֬봈=(륶EyW.b'\.I GaWZ{7CepK! BmO)R3Gd|Rǣ>ݔ}c&.Im)iqQR&T0f)Ϫtp-Ihgg /e8aZF ~Hy V v5.l n=#σ#u+5BOXN/2_*vIKJ."MϪQyuLk<,- P! 4 hoe|0c!1 yxiIoU!tZZih t(']UHχU|9eL(xDR)Z=uWu-J"HPlL`#Ϸ['% DGx9MY,Y1 %fyl5RQZbڍׯ\;HtǽR4L XOUh%xSS@\7$+%=.WpApnZŰ1808v 2"@>t-@?X T y{s:VKZR~,?SNAc 9N7mЅ >,Ucr'sb^=:b4}ՔS9c4}s~q5`B.Fw@\< VO] "^.񛽽OnI_*wX+E=ga<Z4?Ƃ=-ڶvWB6ȅ^cY`d'8m\ fD0g?9WlVP2]48, 7>Q~/íw|؆ &嶝|3-{y`;3'|nJ9eWq5+-O_jzwSRxC$1b%r :l1 ~bF>| >bn3i  @`eѲOXvFo?wl [F 4. uPql=aqtrO,fnk حXnľy6ZsT`!sҋn+g@`63ڑ6.QG^9kg٪CKzǙPdg-[x&3p+F*.jJ*;^s)u}5nzrnR|z5 `K= qQCCHVn+;^vHy]&[Dhq})~)|֎&zRVv66HFXuSlTYT\/a֟= ?Vq$].PI>kbFQe 9Opĉ)(`9:\~Ȣ6kXS7 "D[Gn8qH7*zmR=?zq6>qyv:Anޥ`baͱz{j&[6>ϧ#b 鄻Wz9g2c2G*Z2z3NH^:zNdIՐ ˖ϗn lLė' aVqYG"_Ns*O>UA'uTo^UAkY۷z*5Dbkdals(S~@<ˀ4{2M4il# ;{|# vF㖘[ÉIZvpMS)Q^^S)*[µf@2>&eƹ-?V(!zԬuyV+.b鷜WPt愻 rQs^Ѧq3Mt:|!17mRÁ&-̍3tu>ts G!@v*YQQGu9?|0Uad:\ fs1PgzBHoiJ  Uk'wFꂁSu'%]5A2k񞼣Is{/XdCl+t&ڼj<6UC:mR8j|8RaQg,9YQq3eO׎w1M  WO*EdSW*oTô|!^gزFrv>G7Z|.<£DtcqEc~LveVy/j0:-J=lB_V0wdߘ,:h㝋Ͷok' Mx{ǮzqKC+Ӭ/OͺEyp7p멯|6k[V5Ʋx(z6d3;W9 >I^-C[W“ g\0HQ L%fZIE4٘gXߋ:~j˴;#oFPr22$>Ϣa8f&`(Hxm(?۠#VG@ ?Z: 7iōpὕ{ܔ?`^ "5j\#Lgle?R&ݱ>R^iA}-}әBuquM .}cPPҖhXN6}RųG  !̲Y8vdm yB Om[͊teB`aL]Yf;Ys̸j:M!~`+X= S_MaҘ8| && P9{:Ggl4I#y4,ywrm̴Pqb~R1`bY#Nځߣ1=iF諁A{#_6%`{yp&/[TA8!05Vc<%DR+h@ΘS% FD$&{vJ"BK sԴ~ ٮ c~SEE&OoW*90 NK)O!o /6U XāYoH cK{~jG`ɫ;ӷd`60NJ7/N%ho%Tڧjy -,T$IIO sz08)DJ(>y%(z-8S{Lc)V$1I?YWs $pg#Zٚϼ@p&p Vuedb`wlbԝH=N}*!t?؀װ/z+}I?\-՛N EiŊ11 j@W 6Ff~%wXhn70I$|:):ӡA:/:oR>~h88mZgNT D*7Ȁm?^p>x^oH)x/,yDhga={5yªTt"O"pЁ 0-U{z{aAocV9@jb *7aI:7.NI0Ԋa>aAک⍹3R5!(#"☧VFXtH(r+կ{C oKW^|l9Y?MYxd[/( Z4+}TNh<\vM#Pw5ƥ|S|b\m"Ӿ%ˋ3U:#,S1mQ΅ q &y$zyCB̠ymOUEւ3OepC&aaœ_u3׍σ'fUOp*7OIWжЖcO2"cXk-W&;+ 맂HmA2{"|0a]cQO}5Aq/AD lE\P|YT&$PSIB)o0 E_Zz)c5Ą֟Z -r^{Z,QN_~}Sc|YRJ: zLa_?X;!`U,&U-satRϞ4/uPȟa[^(gN4w*5Bm%zD Wv|8SR:ʨ&>lFM'2`az T{O5x]'4ucxdnM(ĜF\C8>`e_`o dJ)H@+/4ĜB@ jMefתGhO!k2Bu(?_E&(RJE G[]wĂ 7qdłsD˽/CZvβ4=չ"5~ Or\UHӠcHh-.~Έa,e`b4 cu1<1qدf+`xtI=֙TmŽX@O{_ArO4f_Hݡz QPET,jTv=_ܨ$1t(vNũ6G @lj n Q~9,.;&Z)l`j ]ڜ&Du ^+dǚO‹ XgᦐEU on=,NW1K ]ytvI=ߡGQxp(5l|\vkJ7j^&BXxe!}S e7Mֲ#@N^gB滌G0".MxydLhgO,J.=[zΞ YYQ[8Zv;08A4]H'*- ?έ} WOG҉,)bOH:MJh/f^Z | ƒd}_KW 4LˣG݂ H<GBmi%cHPRc6 Nx GoKq~z3$gpO"*V[;( ;u'L;+v ]m|]Zdĉr!sxo&D%_F<@@;;u:FNh辝C Jfݺhs"}'6΃!MB ȎDǪly5bJ3(_"zQ+!+JX@ۣ)=,DH3ʶt+oFS\J:-U6̘-#(nKی=Hei+m̳\B+6C1I[f|:ɌRv3VhJ+6y)x>~{^SZXf>Sox'o#jMlPn2DAEזYreOh E@sB]%ӻ*[ g8 V#8Я35"h:bPFBYGj9@cosm`Ѓ_ zي+r5nfJx#Z[ʹ:T ཌxwX&*-_k AY\0$kx ]myۗS ;ag:K"]'3kJ(TpUtq9 +펻q7}0-JH磬Xg&NJ7+KtӾfvߪjA5ZiiKB-u2+ƾNS/wiEGj c`HOd.?a\r^S~1q5k5+سL7pL eezwdl(x4x5}k.x&`I#tۍ!uMUvc^Jv%YKOMd9$W&AgSATl"=P , HU" kPxDBY _&/ I zQpصʗsLoZ},EK-q)pVZBP^]+4Xx@3Kv 7{[V?~CkOLӾE%4?JE 4 $[`dC۠;`ikp WLH7'I-߭{4A UpkT"1{>0Y´y&z8 V@n uޠX/:nv@v 7֍QaH:ONv8K"pFu߽ q҃ȼ<9涯$B"p׹0䕆b Xl[L΃!8>:Ӷ(6D:MhKqo-}3~UL97E"( SLo(}U7hzmrHE"֊jEqhWYNW>=K-pqU˜Y Sv\1}6t.V1ByEbf"oy G^$q s5H-x! xiN1aƛ?'#M+ΑC>= |JұnBKDg tcRDr/󎸡%uړL|kLn' T0`N~/q?;0J.T^C}2} ˭9qrM|P}3|iX:P+~2fr' ٨>f%fr,F@mI##oYB`Ž@dIgL"II ]^WhCa!8)|X9?pN"F2 ˢ:p2)-Un2jNAlp+pq*P(o5* Y.*2φn= wnB2' nq4q?|[gwUY>+62,:UujXjƖ[P[aP2yNKuZB%aBM̫8|&IN;Q!ǘ&Tb)65|>)4*J˫:Lsmh@R%g;Iu&o<!0^kW5@XqPK$qyMhn{+$mݚsJ:\[P~pVhKyP@O0m&v1lnx#i!rxRHiV{X7ۢMicI|:R(¾4X~`m@Pi̲sAiM*Vޖ3?+hw5n_ᘝ z7%aŧt2T͉˓jv~E&$ѕ} tXsɂA}Wa8w#F8BZWEb}t׃95>ȓS8[;8;M@R)=D5]ef=&dMu.dJF(GArpB8>1-&2,tE3I+N?ɩ! ID\f6]N*W;RRwߣ=/kM|hmx, !o5TɎ^˅MtndzoӽXx֐"?E*AAzOZ.M{&7P4W N$D%AD#`\dz&܀>L&˺.ok0uvet@S钍EOrѧ c4i ,mYQdfGՙsb"ߙ˻5S9uV@n%k:ua+[B$pD iB*rѓY8'MH%̟۱!6u'غ Q2[0!\bH_bLb|S%cM݄=8WR\Ny*P'٧R}]-GJ-;pV9&QˆR2GQJ>|YP/Q4ws3*=ȝx4FSܢNYvT#"M텽*BkqSޟA47ɟE,# a;^v7Hi~c9Tn}!Ѭw6: S7)9yg9M1"i ozd0kGb㥘j*'Q<{lҦ[姖㝽{5l^V# -]2mՎV+ǡ|};5}dďC@޸y&͢;ٲR#ϼlhܒ=_呾'C؆yjjɚ$w{+4+0I]JjX9J 4\f/u| <+?zH=S=l2 wPڣh%rvpPWP8XElz!64$Tf(NCAwʅ[n4f CJ sJ[3 JBv>hjnДh]?)r>zM ,#ZdGA^C!{Z0j{YDRĊl_8(4.mL['hCz9Milf-n24H %`YXQ3M/9},r6֎qvW|($=CTpX_cW*!"({<B$qQ)F!k˝=xtpت(.5H[n/x'?SFD@K,G.Z ؝ɓcԞYax,Qz*d̾&Bbz6 #4`2UQ^gz#A>r-!BMكJ?q 5 ]'G`ڃѮkO8*=  ئÈbѳ$"BY^hlg=*3J0Ϡ$QEk4ĥ CeN eq"yX\}XiġvMa$)"AOIY֯gRT28݉2{&g(rAKc~q߫ U%'iSc)}8<Tn"p-"nw(% .59;H !q [I {MʨHk|T q(R`y~~⫃;}xмZ|4s% ? V]x~8 e=nC7sOKO/ /EYI1gJդ9ɲ|xtρEο2Tc")YgY0LS!bInPkvZcj[wQys-LТɅbptlM>>i(c .k3.paљѳG^]uQNqӳc;Ѕv[[?@ʽ4hzTDhu)nClm@gymʪ%6fyxSSMlWB M~ pl0-Qkp.`+d3Y Rn%Tة1& {~M r%~h_QKЮ~>﯃fFjimfoH[`:꒓]%D>k0@E+}>+& +[̯}yJ7(+|6 F 2rG4deu_Ep+48( MqPV1vx_.}"@Hh 0{ȼPR8<Jrɢ`n #Zd,.7cgkmGc dĆq;BԾ'mI'Ќo\)ƋMQ Mk$(S(s<WE`YzӒ%6 vYPIAVgbcBI p+[й¹Rx8eOѐE~4 MEui1G䀯Z2f2Bۙ"bB@-V) Wwz;CLc* K5>?:5kf n[ T$W tv;! vEnC pBԱ8o$~ľM P$J` `M**{T?Ƶ뮧uxeKسopvX 6O~M`Q2""t("8= +u?\9+%Y)AJktL Tc.lX$dS,tz:9O'/hj#i#k1~!n 1^S`džI:XEHJi(|#z*m: I^}Pj#lGQm?M×MO֡8-ǛDw45/ c5'T<OvC2i٧.)1tG)u@VKlD?=g*[c| lb$XjړTyz6n*[=Titzt8{3?,͈/r!DHȨrsY6u d2dTXm-ͻ/=L.|1{7ax6qh.)NheԽ F58wfɜBHy~IMՈ1Xh95iRgu~*3Lk!EG5I?,#-y3CP+2fL=)4ȳI_::} }JUH#/)+`*GW5* gVMih7Oi.3V+Xȟ{C0ZSpTNM+Ӱkj|Dsb >+ eθiH 1hײYìr_YHxm1X]Sl_,1QITB̿'kL[e%&O\_Х0g|d6>^H@g(ϒ@ "]?=!+UAˇP9Sy&&>a>E[29 rwn"{s>) bYHUȌ mg;,iN- 8XI8Z9[5*Sd6_p){x#Ԣ3HX;Ds\G ~;YД+0| %\ZdHf]1RPA8gK;؊2> rc oWXO%%E,zY\ _͌goD葭s0 pҿv"5&55)ӴL7%)%%{J[rZ+fչo;qxH>uNFTf)$'% wLzDnS6U뭋&.p7Ke*V({Z"Ëeb`uiWNxz60K3\8vV@ ЃҝSG xPP?Y\}ji_eBwȰmĄ0J *QNOX}ϳƵgR#-$idnq'˰r1FR?,TVl@$ψ5UQs9]: d/ø]BǯH(X5@)& YEjܴ!zlId]./}jf)R19f.˩=-)E2z L}\}t!)śה_i+Ux:\UFG1cǎ>! p8:]Qĸk{ X"dINJӍH`ӅDC༁EʵGtl1 4we@o^6V+-PBXd9G (܀$ϴF~ LoL/gbח^OP[C,Z~S_V<0<375 .IgY`qU3Z (udΤ,O֝ܬ4b1&HOm\?\ x9$.Þ9EC(JL|! K  2aC>6;|U rjLl5O ^ (¯r4V,3M|z:O%F@݅ ;"D E +SFQYj2'6ԾmpI,+Aq2b+jQԯ(wO[jӓ|:֐%h>r3"Z-\bN:fyDHVD6{~Ϋ$ד˩,eQIH/=zɔ3e&R$2(I">D@ZA28V륵cOщKj-p (/ N-Vl8Nԩ1Cšs#aZp{<5-h7CR!р: oMyYxT4X,F 2LyUݸs5urQ@i {?n z[hq+R<3FAܯB[DV:ԕnBO[k\Kw` дd@δJ[^(S H7Ɯ &9@Mf#M2gF*&iJdTAqP&A8Ο6ÏD<d;spaM|/cNL@"p{5nbڢJJb8 +j kYOҭW''aCm)Ai9TM4pKͳr0GIK%@0g 87-'Jy|6 'bTE3ܷA` &.mݹJ_ľpb댏:vejC*[َͺ[ x]U^}"٥tyn!]u_@ [d2%p) BrJnbkrFS' A;[o Kbԥ54۸:3=ey_VclPuPI'8_ I\jFfՏ^tr5,Q)Aʴ!S1P+P>ތ7@[f-PN0z$28AS}S0mxq槖㇗5Cȑ)<Df.< `Q ?bk3u][? DU7񸷑 &BMEF nAeXJt: Z3s8Ѥ+(5;&ܽrK_c>+?iY&1[lӇ7_fZ_R(L6ԙRhS\h&%;S*ZVIzo\q-ʛ #~g􅫸3B`؃Q{S<ԓyKpgRc2!8>YBF'Mfpp9\j ,,l:"_N8Q df'H/愅9$KMOB\/v F_ɚ]üD-|l QolsJ{HG6NQ3ԡ2]bJ0l쯶[XX N"zN jm'((e ;E$vvV-g\Okml/NYlAu8[H`7Bu$ A;3n4(m=F.:T2{Hox~(CX=-I?w:JՀ tBh(eoci_8=BY$ CKFΆ%j6g7jZQŵ/K^_ǾwgZOECإǝEr 1Sq d`x =56R>;7 jg{\,ƃ4<=)NYTvIjT uk%:[-:<Z*39"~GcjU4VǚHhb/?N4U&uEcWʫы_b 쨸9;uS[bg)tM[[w.Ћ2#=ۊW&ۢAbUWi3t*`Z"}ߒdLFip_8/f"~ǁS&Tʶc [+ލOqF>E$ GCJQ`4?gUAR(ڤ2|"_}gs5V)_Ԭ#*L #aձK~Z$EE \NCCie+2Weh=N\[o?K’q)ZVΌxy3= ZG|É%Hrϸa߲9y /fk Km rOt5doj9_OޕP1E֧ %|vdat~ibNqG_kz3zOFj{Ioc>uz7ܔ#v~zѱ*ui237ӲmyU/!n۬$WaQnm:;g?: ܌h@U X(p(@jp08G< g=h"P#lw,/ _?, A8&4,M\tힽxf}՗]/Oek]0Z" ;3DQw(* |U!k;|ze̛T}|,W TUq5`$w. Е3qSGPRf G|)I,Mg=0//e ]aCZYϗ54pnF:%ok@ p †m1df\;}N vg /aLo;GT[G#mtnˤ%?dC9ѓЕBC:r9Z4ZIL|{8z49ɑXtjdw]ޭ4q v =ќw.KZO3H?^1u"t_sMXu-ӛ3%Msz1XjjFail@iG .oŮۼFz:a>A>'|=Ia 3x ?[\pT^bOq˘^ B#Oqz~0}:W?.UhB|4;NgpF<7QR q2N)%jWm\{;ׯAwwn'ttCt-ײ]nEJ&y9!F 1=8L /z*1B j ʁGbV*TO~iȑW~K/ u;O#)߀zÿ4BfBzs^9k^cS뜝.PPOhLAzS^?8c&"n Hci.?LB5,9^.5p~t3qr 8 u78tiMEPϐdŽyPFE]TDdM %~$iAK%L+]&<2\ e}ClRÞLDK`t:[cUAwv3O)Xmo5-ChW+`\@ЇQg蒧QS;t 9¦0غ~!ogC(OM4]VFYˑT4!vUZ Ce6;fhM4-ᒂ[(֘4Pz3ml~7Ld.͆gt~rfq][uo.ޙ'KC\E։ifds1'+Qf"u\Xe4je*7pjGtj!q9v<;I q#sA 3B'В+L\ )?馨CP,ٰU?vûӓ{lY3=oUᾩhRb F'2꘥s1UN c-G @v_t݂|p]{:|'>gz}6Zϒ`Mȁ9hE4:2 ӣ ^)! 0x$%@ Cå;o%\3*<ǑX4F`Azߣ;4»ҹ $1hd1l5~kVgWhVr0j7s :lL Y@&R˵D8;Vֆ+d1=&{0PB71n蝛('$Y0g(v?c s/CJ29PB7/,qM3O5[zL\aUzYC77Axf瞭sz]݊9w g0()C&IJKdZ!] ބx@1i=0q>Eɑ\kAv3z/"xTӢLm,D.JZg#WXWO_ʋ7cpH-9י΋Dq5]xD4)㌋Sک R@. Ml OS'JMO^666ѕݥ B]4+'܈x<= gٖVDü5վ욵~yL.U)InLɦ_D6LIbWl>OJ[_û\ZrixBaU&˒3*nۺI نX5rcG=[BcļuȾasf|ʦ &cGx(IP58eex@[/}Pl7,JOJ0(tA4b 3ͯMMm( ĵF,}} ׮*˵I#?8QtDtEVw٭t9Y3_-Le/B- 1r_P/',SX(?ϥyw#"M1S[fv)$T0a2ې d^v6,G Tf\- ؋{DU;,\zǭDDI8U3, 2" /)cn5^)OWu#+]3܄\ބ-L2#CR#+-:&LH~ 017oJi9R}[. u+usR͛. XfϱTC⋪ؖb{ej?q+eB6aEHiɏ8ү'#qW[E˯+f;(UAT_ X>%x]-\lnO*i6-[ZuTkr 8K [ 4Ⱦ6^MrQtrDbE{bҳP:9ݩxYeg 0vhp=9wӻ*h5: =q,F nZfь_}̻~?Hx\r!hn&Q6<4<[K5?KFٟbp_)V7hq mႹ7-E ~1^N&S4Jzq\u29%ּ,5M.S Jo:hHS.kK!4U90,C Fofq|bHFFZ|MASOy[r4m|j<\ZJ?5ײ׳7r+%}R SUZ L?k.fe>!"Jyk $Mug/ȝbUgd?x 3N'KN$.hoIh qJ7SנW!1Oy1bX.,C< ARmWفu[cc.7$.ŧ-㧗.MlPvl쭎 /f|R ЬDmx|FSҒh6"9-KV^v ie/ІC;UNj=O!E#LD#uY%]JE4fDU2@:)*eͮ./NuL=43ݣʠ|PdyG>L;ƃG@/mZY@< lrpaЦ X&XU e*?U>wu-1Q⛯0lXxwP'!O}!2Mv7'M8RĿQ3=&xpN0MZkOj0U٣m #[%-xhx NBweuZvOn)E+ P Nz.2'qRb-k=4pX7^+ڗfA}7YT=["4:}m,rVO6@d9 z bO _V0L&LSagle1`D1'9Lϛu v,g^B^7keo{8TyqpLF^7pò;/' D{tNVf7c&6 ?в6J*tkGn(s)T[0I?NVf\tI*q Z,Nx{8s>Us1(SrEHmekl9+ 4gI& JO-PkO<ܣaҰ0N"5LQz@_Ǫ7OPMB;K.a?ZX/x -)I&mT4}ߞ۠z=ldە  ? ѝm ".ǣr7nC|7_+jqKXnKGD +/ ]^w7(B9)lhoZQ_kmnͱxp/ʀ-s]wnڵЭ| G7hټxyIV:{ vhfe{QjX Aɼ=$rj'n~GR65ғwҠh~DwO]_/n%3mh8f#8`?g8-N @W.Sv営=yرq*NBDFb*}Lu0FlIkfxĠN0\K2pAq r;TcA/!}AY{7 cnNJ sa0k^zc\@S䦝Ê8ާ B>! MhQ&ӱ*ю6~lH gιW,Wx68eu)LMNV8ZC!yg^ e Ḿ-s2!L j43}}X~-{(JgO&C&\ D<&[W܁N5LT^bdL~Ei)W?\y?,/15e9`D0~x.TS5%E ٟWGJ]Y=8i^Ɗ?>F@jR|0;q!ߓkM| d4죑Xk Mta$,#I,h ĉ5 A8ǃOHb_PƘ2SܣJPeb >/1l|ݲIEBcMjdܘ3G+,̧C3(R!\}P.K'N"9; VCVɩ\iqhc!DQe%/ ;~!i3@dHi+VChټu:Rh|ˆ+NىAKN=6 W*$Zt&d|&^'5es41mVE8_$cI+sc"fIwR3W I(lY9nK^)mf;4坞Vm!Rfm4M.T "qeM$}Tn@TWsw8@#bi>ŹlmI. *59v=M?+z,ݖ,x7GF.K=͎..CǓ4 [bf*ײzAS=..wj\E^`p=HeFN#{+JgaZ^B պ{sK_(/ݕYJW/H :WFɵlF'N<#A[g$ƴv]Q?kM5ЋcX9Pg iPKC^E]~ m͘yڟnf>-qVimp=Fnf?tu b$}ã{^5 5.=Cˏg1#6:i?vW !crGnKɄ='DZa= u2qE#a>L3._]3G^n(C8ᎈVH}KŸihʢWiS+ & S(ꍙlh@Or:_29RD>q7 3ɓD4HihiJ`E2* xr\tuv5 oA-P)3u[MHLe)Z$bAS2|ήnIrm:n ҆CTiVZ|΢Ahw$`{`sUՑ0h2W{#*,@n0'A*E9M)2ѺlVb1A\k2;-q:6gµ䩳q4FB%i_.f%XyC\Lhȼ&o*+^Yp |ygoog.E2hc:~OB%-Y/TodI&|5HYԸ!VpI|+fXEdR6oA,s:C*{.Gh_.M7y&?GXk!nxiR܀,%G3RԖ>t9e± X$q ;Lc/L0q0|!]}+p$\t?6K00=^ 9{޹CD)P7 Xw=8\1k‹GE; je_\̾eBAZ䏉JҧryʂdL*CD'=n#</i?*.1̈́Es^ y&8V1"{~S>WSqSd,m@׻+cQޒLAv5ۙa0"> xQ<315ĝ_ݷΤ'4j,<{+ Ul?eɝKR,Ktԣ?\r;C}kZ,K Ngzθ\*W.P °9:{NWv urwDsV1"А y}{s.\I3tE;[QK_JQu]S>r ) H!5tϤ V^T1l b)\13-a|_fGM,AG2J:S7U!~~iWhŤ|dޛ١]M7Vsxy (-1w/^#cd202;wߗ52:^*O"0g:`$6GMBFY6+wCx>qX;7S "uAC`Q"a9AQR?iP%yjy]&| T:l:UDwnezh<aW|)3"'V{ZeSɤS+t -䠄Hfqfq\c2ш;o9b~\؞Y1/ `" x G-:M+ĽV́c`49?2 gNFn.Hh ;Y}r%3`^WMc# /wLE&HBE2# +9hڶȬPu5Z*hs{|zj#.~a<;4y {"D}OhbraxmH,PE` vHSux5oX1i'&*/ˢB0oaAE8D%lEiŔs:V8j4Qs%l҅ݠb{ad<[^J.$.pboSgtZGx#j-ͪްL#iӉ@gJ(7F<;6\xLRsyL34mK%J~qp(r]LK c?Y<;2, XK?>WMxkS,<$@.<mGTDP3a^pМ1iJ||ݿo~FXPTF! ƙT␚DQ2(4} q)A mdQZT׫ ِ|ՄЙ`9^MJ2$ 6TN FqRW"Mo]T9a+6@YzrQkEP$46öuj=͙'Q43-A&Dsd30.3!su(ٽՎz GhJ5|mh6v|ʖ&w֝vξIgMdRt4%7LJreě.U62#Ypf*B13um5 iF Mab~doKDQ2l)s%@,X1%^ 1uԑ_ :)w'"-e0YTvl/^8W$iE}Nmf0_/KP_|{`) L gQ:^O콎Ĕrr ?LHY>tME9$] `ꡘT x_Kl@Bk_M'*<[sbIZ;>0.z;n͡T#ka,+|f%ןDZj'Pp$ƛ %Ì|l?SCJ`vQS |zDŽ!:~DD+zWHʹ.J =!3FEn~@îg<,oCL _$*"Vq4FbNnJU- R,ͧ}G޴:PfJ: qiM<1.`g`ҝ3ƶ_$·S;MƢ{u=XT Yhsk:ې 0.iShZDݽ1pz8J!IvxV%Ч@scwdYMXBA[ 88}΀,O WuU!@!Gh~pGB[o>/F Wu{Ce-i6:7oʘndU$ *d-{IMוb;1²8юQ&|[_D`̺}Չ9Elb˥|՜(?~ r?v c$@;Lfzʴ9LS6])i(-f d8aʇ?'a9=q šy^|<n1Z"-y+GX_*dK_p!b57o@314͗)&$ Ow.@]j59Ĺ?Zb3ʬTlDuY!(i_ {&K {ATC($S|ZBW=:u-H ;WU.RJ: P^7/ưeե-w_&XIW ٓҺL> /_Hu\ "&zgNDpmD? î*/AVa/d)( ¢#<\b/,e3öj %wҏ,n1Q\pS}&d ^]nH3/gSFӹxC륥v,`W#(xP:zAp87oOL.@\4! dac>yV˟0Co{c2BwTZsbc3UNڱ!S95`[tӢ҉ imŭzpSmo|}f) *@#7c cKSlڧ`uk,[ FP.U}讻j!I}+n逢<|k0HSVK.{-ϋKv ^;ƫ/6YçA(ңHWo+e%q׭;bʂ‰ё+W (/žF)9vJ.okctE$)zRf$uҊBT_؁0 %jqIr{?UWvrH9QG Qо%9;p "n1h,<]&i@Ҧ2I>S'b(I-z$ zHɾS˓N+e7ZRV 0tͷVS OKkrxĒ`,x|Q8P _p=snG_89v1 jntAMʋ0uPf]Ҍ3Wf;XIӆN+{xRj_7#m]) m h6rTn;9RuɸK'l1mYIn*m\[|sd3`<[rC i@V"[[Pf*/`w1(=[YO(S 344E,8δ6owTi+#$&0VV$'IA{Qj>?c{a PIM䧀K.L3J 9_GЗAӯ!Ǚ, ugG+g~APiq hpNV䝙cKi[o7F$=LXZi|jSgmkA `XԦ2$pe"T0I݊<8]r=% /"? qܕ9՞0MApSS$G_DF]ƴM31:]#L͈ ?yÓ`\53's=#Uk x+YR>AO[c+ =IզO: s[@@#׀Xfj"muOiX𶋴Y|ȿʯzDQ& \qSf4z7£{[|zTr;cm*>'$Euč "4T ʅGXnP歩=/Vs!gωNn(c|?h .#3{7)wJq4 ]cX9G6} lNBtrJ~;P,(k:4^ YXOR ?T=YTCi%5|f0K -o?FJ21yQcwVXyD83 1&PǏ!uxbt&,7fmol*QknTInT`ﱔpxc#s* F5TC"9/ЕSTٜ`@Ӯ.MF`2,{{Pg5baC[}ޒEF'oFqiG)'EtTt܄Uėê/K^j3 "ǐiIhAڏͯ\~/̿:U$gbAlic8mp 8̾޹)PY,u%[P~;PӸT:̊(hb\qlR-f7[Pi|&ǿ'~UNos־~G>c˴FCyޖqL"˔bFě+U鱧)UF8wZGI׿]ߣ|E3SB? <O-9%gpм$s*oݽp,@hfDX1bNYBMJZjnۖ%d6Ì7w A)eϒn8H|< [z0~"V4z&*\H]M:J>G?v̏rGvڂvEx+xCdULxqL[m ^ Vt$O ώtB3ʈY׻ zW h (7m v b8]Ǻi[f6L:{6ŘH%c8qbR( /VUAZwe0%1/caν{{a?ZFK4c> 5Ѥ Z VלP~rY,-h|Ě865$7D9YiYYVEq7db&3-):bҾnAY7Ȼ=B"u'Vd6}۟k 6r9o`7#,Ǒ^HBQ14TWYSϴ.v<6{)pPm26aA7f$I9B0[v[W`VVgp2:fBelY ;et  ]=~zDe40٫t1)Xnѧl;6L%,۰!h7]?q|i4%N卛*(֙tho6АZ~ g 2?tvTvLΫdL aK);? gi QUtК'boy>w45!30!81mٿ;f?d8^hz~hbu4 zD\)Fyv>Vٝ"%:sF:Z-[nBk0wj60pc-=k2Ɂ?K :a55ftBs sJ{:y |SMu7&z4f ͘BmWS*H%c^7XS,ug*-C![C`uha|S[lRrng&ML"nj{(BmRaWxHIE51Aŀ?xh o!F5>(\0et]&4y]?&Oɓ;ŏ16he!YN\4n-kJ* s{ z4)܏؊>3ɠx(ĨJ?E(_6`BD4%Wj0Q j[P$ӌ,T.*ҴF@C<ڄ%$"9Kd9gALw&!ȡz adAQk*'AK̾w(%K}c(z*xOq>9-O s~5z^%7vJtԸCtw_8 ~L-JK]DKx۽lxOxz!x,u]nl|'-,غhsen:4<}Kx>R^MaY޻dw+D%a"t 8;]7~-%:VpA4&:r 6l1R֧^ ",YEsI?~bZa ,b.(uk$r8]9$ٙ!=|zlb FGݻueܖB+ty=A<3j5Gӆ$6̐ltN lXhU0}jse(Q;`|mzȸ0A{~U1.?A44g٨J2E 5GWccs;@{|-<}Ѩ \1lz kfp1Q9,zN9?MJytR+%5,PhRqB/MǺIui?"ڱ 47x:Ě\:lˢWE@S1W9QE}YLC XDw> -S)CΡ.<]ƒh(}埝p=m]%6@f]o8߀kun ԼMMesqs[me}C2d> |u[vxz iOXe$7á I"M,E8T=R3т ؕJ_m^ouxw.?RlχsI[sڼ4z %,T S)z+COh*Z32E`CZ<]9ՇT`ܬ3Xg t=g!V4NbU#L`<,ў8/G1u&b<v;qЬƆF{1J|Y:=$  lhr-Oc7:6ϲQro+ 0Xh5;[~>yU x>05 |j<1%}Ðm "TFLSlQJZa;DRwmu^$M7*KIqqFMX(S/:W/%.i^Eɏm74 sW_w%uk]mPQ2guO;!F -V,aĤ4u1\({Qsjp+U2>M/ЙVk[ m8Ѣ텕}aJL^xQ{M"ַYtڐ#FDDp%WTOOlWj g-'"]K`zoik+mYW*W|:}UCa3aμ *h(k&9!5 8VlE`̒ɲU:R[E^;Dy?8y>!˧9=l|^] +ܽPGNz]޵Oa Y}3 tʼBܼO1c:7y7 9@cm 8fȣ)8{|^?ƴP$i&^r1CUe>lKyl|88[ 3f^DQ fE^gȪKlvI9)yLfW0S"G7J3_'tqP §yee/^PD2FY Frfs-?^nrաh3֛un$.kķu$X<.KU=&/os,Fq˵OC a*\sS*5 \8h4}p$8YBpZKX)74^Ļ^R49J\$<lEAi1 %ɶQlDx P+F c{mu^ 9%g%ŅUΕ]G8@;ٙb !x.pl$W1J!UI[P3,'*Sڼ];`Xu@ʋR Ԉ~y+,txhp/NH- [{9٭ZyqY'E#$VMw:^}r(bWy_oX[IF@ ֖eLǜ S?H{/[ =yj0]9h™NdrmS,:^%~Qlc5hS/It $dՏK g6=^\T&ޖ+ Kx +I ,Vk6\) ZgYKOWWOZ^nêxYt)D_-?L54][pm ̛0&D^b!j^u6+ #ũ1[M?* “(Χ+n F YXiTˇ 'A$ͷv5#z0bJ*)ɡi@ O`C(rzW9"hD_dIP4oz}sQfB?7&qNDHAH4htF2ѡK9 $=BxƘ zST93ӗR,f yůB1lR0DQeqCg95Ny3>H6$/sNPrdFU:9a\ѕ&l󹑧yREm2 =8ˁDPpy$ kl;ZFE}QeTe$̏h Q *߁)R_ZLJ̷ctQzZo;Ve,4!+v8%zs?V?;ar<&cpw"z%#UtKRAg2grATl{sJmH+>~|JAk#05HRάhX\A3SPjrx]'OXMX-(|Z,]:eMaMs|h RָAo%޳PL[ZL'ԢSR]?j%l.&qL.]֜N8]Oya$lLL/N99y%eK(bxlbKrs &)Sz_CcZ/S+;NHA;BZe/a#RjqX2 s$!<~w)Э!6@VߌPup.w>lp% JijӚ[196cb g?7-(:%خ \*зL1rh^A9ɿ@J.M)#=́Zvy:%h`zhw|Ψw:\ANK>VӸh`mZ+B `br"|T&髽 {$Nd?^lSikUڌHw {E7V7x^3+B8#x^XAمeNJ&<'AjH!Cx OQ6QW;j*zMLzL?. p̫rI@O`5]F/9B8;*N^L3HMk\?‚q L0 6K~8ҤK_wZB"!~” }DȧuwմFzS;bh:*>;(WezYq5"֐Vhrbeų܏7 ,?T#y Ӑ~(|왇ԃY\gw濚(U>'*G)ca{[uW9Rzgً =%2K}K\]~&wPY#7[M!bYGwۯq .գZz*VX7z,[;e{ǿ|GpCNBq[Z*,p.8yKS\*߿GbQ_cbfpw']ǣ dt`50&+dŹ*>(x8!I镟6b79%9o] MIMQϝ"uT84{ =bx%EFL?uѫz-V[)ĪL'Uhҷ}hrsoO}OlJ¬\\%Ogf(F sWc>q?O1Ƒ,߈-45̚F<0Nx ,^u boi,R7W11TݱG5C;#&$_b.1*(\Gf<> B:"s e?{\$+s^ΎQ@W3v>`%-=y~e.){z8i0ܜW^YIey{K!G6K!i m:DMvg_ _otG.|~7c)mC}Y)n:0S5KTaՄkr`R˜HLl4︚S j{ IP@s.F!|Ln(GQỎn-rAwĩR[W+HhgP; *4kO/%jެZA% o-N$Ʃ8Kktx15twwstޚ|8>ݞ,67!$G u$[5\ʧ=atxee%'m &d)KN9C孵)*V@x=e-hzZH/z=ȼTb -gC><7YjL-(\8{Ca۔ OIdqH7Q%"А>n*4nNn Nr%UtR\U+-׫+4HD/ڬZKeʻZ\}aٔϑ[(`%0u%IDGTd0`Hʎ!;YBsO0lI*)dVimsh^˭~:}t9Qs-  # :KNgpTV j -Qn n-B{/LJj&;rb#]V^/|xLG2\-Dn];DQ 9qZQT10rK- ,ݼD_4O53KGCe5ڛ1>+ uP s&LoZdWO>@EUne0ԭQ`VxM4=@Ԃ%vtF 8`X^Pܹ96L g'-d i"n7-=iw o¿7A qnBYr.'Ĥ蚰q8?51y R&z1@ !"bïsk-WYFnPOM>ƫ́rH%DJ]yWtmJ?$#jghofi܇?Hx KDTn1q)\_֟f ,EXgI3'' fm8]D_XIW0^F'D0|՛+me*6'd+7H~‡H80$b^1+* kbR "1Z賋x CB9sS}kmd'qzX ӭnSLRŷÛvqxWSPgWc(Wl;۾An>D|.૮<ЙO򋫐gT`ˡĆ%bRìO{+ -iշ(GLCN#CqjBm-n"N>QwZfK 7u:5qIy0LWJ@Ivɥ9E(Zϒ3>$Rt>?0۸$;g8w}!Qߩڝe.w 4m:Cn!'|Zވ60:W+ּpI[FJSTfpuvvVk\vQn'aȪOJYdu`h q]j)["2inR<=d&MIfJV@? {qtHY㽯) B6r#A:"8T0ڕAV['[ߞvaak銾a1р0N++N}B qS슯}"O.Ʒ8Uz)fN~RfpZ;gC-k89hfϕQG)`ʲl'4]w$;r*4 m7b]3miGB~Mu}`dh<~l7ˑWѕ(Loc΢EE QW1DO+:~d- ϸÄިڍ 3fPp% 6;&:CbTSk0$(ļM1|Ԫ1@!|CG,rs= ci ֙nEqdOgA߀B&É9E4FB̾hHy. y{?y!|EDPí!' uJ=B8گJx{G%(m҈yط!ȋn5"+GU ődq= k_#5!GPϔa_Ir=xw!(]J 0yfoYS-|uC ♣1sv8gZcm}'?aI,TJѸ#S Y9ȸ dNf6?Tܗ`딈e9m`c>&eaSԣv8M(qBSpA)Uobll.;()ѹ֐rrh_(bSG!1wo bnM!s-R>/ake粟oB TٱMP0~>vac^l 5WHi̚y+Iy\ӄگX6ė2# fUǘf[7ӽAmTSۅ^ZlyHJPG)G/QU'0Y㿨\O.:1wNM$sMTZ&Ћ oO{p@~?%Jڴ+# +_m[Jdgk%Zb(Gp6:ُ<;xS<0&J</RZ9:)KGH4Pߛc3 Sż<5sjv;Bۊ#SY(C&k5['ⷽ-%oTNt$,}U#U,Y8254^2B*Pv<Fh$)LZvdj Pa፰>+ci¨)lfO̥LFKsd;*uEo8suWK&M-=_<ô$N`ꔹ[Oi>jxEUMwyg" p,\3; >,cxQv)-P,(lYɊqf^$a\T#0_yVU?7I87*f"QY E-7n'A#l o ?{"-{ہAW.owAAX/Ԥ0:.%ΰ?l$|H=SD q9-AiܿU.MP'qu@4F&zYq j{X1-vgبNfPX`c#S6qm*{&b:d5!7ՒqkLr-hLy9ICWo'SE(ȴM 4AZz0# ENmO0X b)D_' Ϝt$$9) kt5]YhWL=4b4zS;u .0kjtC8L^?bg-VC& A`>{9T3>uˆRfW_!7Ch_O"0OU+{6B&ޠ h*БևB׃S㱆uʃ'2_t Ѿ묹q}'"*Tz}:$d(JxQVPPN)_#mg:nJs; qapn`4W|ɀţcip}v e8 Gy4XeQ\)W}rO`$P' vj *{OK"wp_7&N3<(%SzpGaE _C#Zo69|]G ,C Ú U]"A GR..NcpU$ P;eM uh(XIϸfVldt./7}_?~AesuM*278S>S~7b1~Cr +. ZТ𦇒0!#MP*>+AD 3 \1ۋxCWnEP+hmҘ젼@;*i[U p'PbkQHqZWgzNdH9Hy|B5e~S[⾒B|d*a/\?fV %ý{wb`ϵ?4B ²9mjGçIО"0 Aq/ .a +:KBP;VKz]#鮶Nj$.8aޣqRjg'[/mH]htc+#a$رmӍn^lp "20m[vZ渰7r F))`Q0xq-i}PO*m}JS[r<[`(d-qSɕ ^}G}^8ޗe!(J?>Ƨv*[-1ɭq^"vFB qdr%&7oJh8v4нO39KkY 5h0P# Q[|I4g/cB%7[cz)DAD7U^HE ygEˆoDS3-K4rgǢ*Fjb͌[d/ FwEضͲܰ/ j<e0yrɳ!t emoruȒ rug$bDF߯!ͿlOmux4z=P3;ːdk=P|jyBlMӒQbQ0Rޤ380Y,|)iRA?뇪59pd1^@ .-L8DNc$-$/+ ^{X@Nfai {Cc!\G 6 p| #ɟ0xd4naM=]8'[VJ8I>P2yu?|2p_ΙTj^sb}{ENJ5a Ц :D-^~zYj=E|KRFowmzqWr4ԏz#`_oe,X[1L+U:P,__B+֤4:, ZjWuDXΙd^gOs{^OS\+hTryl8.n